diff --git a/nuttx/qemu.log b/nuttx/qemu.log index 92d8840c9..7aa189bfe 100644 --- a/nuttx/qemu.log +++ b/nuttx/qemu.log @@ -708,7 +708,7 @@ elf_dumploadinfo: textsize: 0 elf_dumploadinfo: datasize: 0 elf_dumploadinfo: textalign: 0 elf_dumploadinfo: dataalign: 0 -elf_dumploadinfo: filelen: 4077432 +elf_dumploadinfo: filelen: 4078904 elf_dumploadinfo: symtabidx: 0 elf_dumploadinfo: strtabidx: 0 elf_dumploadinfo: ELF Header: @@ -718,7 +718,7 @@ elf_dumploadinfo: e_machine: 00f3 elf_dumploadinfo: e_version: 00000001 elf_dumploadinfo: e_entry: c000339e elf_dumploadinfo: e_phoff: 64 -elf_dumploadinfo: e_shoff: 4074808 +elf_dumploadinfo: e_shoff: 4076280 elf_dumploadinfo: e_flags: 00000005 elf_dumploadinfo: e_ehsize: 64 elf_dumploadinfo: e_phentsize: 56 @@ -730,53 +730,53 @@ elf_load: loadinfo: 0x80209a38 mm_malloc: Allocated 0x802089d0, size 128 elf_read: Read 112 bytes from offset 64 mm_malloc: Allocated 0x8020a810, size 2640 -elf_read: Read 2624 bytes from offset 4074808 +elf_read: Read 2624 bytes from offset 4076280 mm_malloc: Allocated 0x80208a50, size 128 elf_loadfile: Loaded sections: -elf_read: Read 360812 bytes from offset 4096 +elf_read: Read 361276 bytes from offset 4096 elf_loadfile: 1. c0000000->c0000000 -elf_read: Read 116240 bytes from offset 364912 -elf_loadfile: 2. c0058170->c0058170 -elf_read: Read 488 bytes from offset 481152 -elf_loadfile: 3. c0074780->c0074780 -elf_read: Read 4 bytes from offset 481640 -elf_loadfile: 4. c0074968->c0074968 -elf_read: Read 4 bytes from offset 481648 -elf_loadfile: 5. c0074970->c0074970 -elf_read: Read 4 bytes from offset 481656 -elf_loadfile: 6. c0074978->c0074978 -elf_read: Read 8 bytes from offset 481664 -elf_loadfile: 7. c0074980->c0074980 -elf_read: Read 6 bytes from offset 481672 -elf_loadfile: 8. c0074988->c0074988 -elf_read: Read 6 bytes from offset 481680 -elf_loadfile: 9. c0074990->c0074990 -elf_read: Read 5 bytes from offset 481688 -elf_loadfile: 10. c0074998->c0074998 -elf_read: Read 4 bytes from offset 481696 -elf_loadfile: 11. c00749a0->c00749a0 -elf_read: Read 5 bytes from offset 481704 -elf_loadfile: 12. c00749a8->c00749a8 -elf_read: Read 4 bytes from offset 481712 -elf_loadfile: 13. c00749b0->c00749b0 -elf_read: Read 4 bytes from offset 481720 -elf_loadfile: 14. c00749b8->c00749b8 -elf_read: Read 4 bytes from offset 481728 -elf_loadfile: 15. c00749c0->c00749c0 -elf_read: Read 4 bytes from offset 481736 -elf_loadfile: 16. c00749c8->c00749c8 -elf_read: Read 5 bytes from offset 481744 -elf_loadfile: 17. c00749d0->c00749d0 -elf_read: Read 8 bytes from offset 481752 -elf_loadfile: 18. c00749d8->c00749d8 -elf_read: Read 7 bytes from offset 481760 -elf_loadfile: 19. c00749e0->c00749e0 -elf_read: Read 3 bytes from offset 481768 -elf_loadfile: 20. c00749e8->c00749e8 -elf_read: Read 6 bytes from offset 481776 -elf_loadfile: 21. c00749f0->c00749f0 -elf_read: Read 108 bytes from offset 481784 -elf_loadfile: 22. c00749f8->c00749f8 +elf_read: Read 116384 bytes from offset 365376 +elf_loadfile: 2. c0058340->c0058340 +elf_read: Read 488 bytes from offset 481760 +elf_loadfile: 3. c00749e0->c00749e0 +elf_read: Read 4 bytes from offset 482248 +elf_loadfile: 4. c0074bc8->c0074bc8 +elf_read: Read 4 bytes from offset 482256 +elf_loadfile: 5. c0074bd0->c0074bd0 +elf_read: Read 4 bytes from offset 482264 +elf_loadfile: 6. c0074bd8->c0074bd8 +elf_read: Read 8 bytes from offset 482272 +elf_loadfile: 7. c0074be0->c0074be0 +elf_read: Read 6 bytes from offset 482280 +elf_loadfile: 8. c0074be8->c0074be8 +elf_read: Read 6 bytes from offset 482288 +elf_loadfile: 9. c0074bf0->c0074bf0 +elf_read: Read 5 bytes from offset 482296 +elf_loadfile: 10. c0074bf8->c0074bf8 +elf_read: Read 4 bytes from offset 482304 +elf_loadfile: 11. c0074c00->c0074c00 +elf_read: Read 5 bytes from offset 482312 +elf_loadfile: 12. c0074c08->c0074c08 +elf_read: Read 4 bytes from offset 482320 +elf_loadfile: 13. c0074c10->c0074c10 +elf_read: Read 4 bytes from offset 482328 +elf_loadfile: 14. c0074c18->c0074c18 +elf_read: Read 4 bytes from offset 482336 +elf_loadfile: 15. c0074c20->c0074c20 +elf_read: Read 4 bytes from offset 482344 +elf_loadfile: 16. c0074c28->c0074c28 +elf_read: Read 5 bytes from offset 482352 +elf_loadfile: 17. c0074c30->c0074c30 +elf_read: Read 8 bytes from offset 482360 +elf_loadfile: 18. c0074c38->c0074c38 +elf_read: Read 7 bytes from offset 482368 +elf_loadfile: 19. c0074c40->c0074c40 +elf_read: Read 3 bytes from offset 482376 +elf_loadfile: 20. c0074c48->c0074c48 +elf_read: Read 6 bytes from offset 482384 +elf_loadfile: 21. c0074c50->c0074c50 +elf_read: Read 108 bytes from offset 482392 +elf_loadfile: 22. c0074c58->c0074c58 elf_read: Read 152 bytes from offset 483328 elf_loadfile: 23. c0101000->c0101000 elf_read: Read 4 bytes from offset 483480 @@ -789,11 +789,11 @@ elf_loadfile: 27. c01010b0->c01010b0 elf_dumploadinfo: LOAD_INFO: elf_dumploadinfo: textalloc: c0000000 elf_dumploadinfo: dataalloc: c0101000 -elf_dumploadinfo: textsize: 477796 +elf_dumploadinfo: textsize: 478404 elf_dumploadinfo: datasize: 296 elf_dumploadinfo: textalign: 16 elf_dumploadinfo: dataalign: 8 -elf_dumploadinfo: filelen: 4077432 +elf_dumploadinfo: filelen: 4078904 elf_dumploadinfo: symtabidx: 0 elf_dumploadinfo: strtabidx: 0 elf_dumploadinfo: ELF Header: @@ -803,7 +803,7 @@ elf_dumploadinfo: e_machine: 00f3 elf_dumploadinfo: e_version: 00000001 elf_dumploadinfo: e_entry: c000339e elf_dumploadinfo: e_phoff: 64 -elf_dumploadinfo: e_shoff: 4074808 +elf_dumploadinfo: e_shoff: 4076280 elf_dumploadinfo: e_flags: 00000005 elf_dumploadinfo: e_ehsize: 64 elf_dumploadinfo: e_phentsize: 56 @@ -816,8 +816,8 @@ elf_dumploadinfo: p_type: 00000001 elf_dumploadinfo: p_offset: 00001000 elf_dumploadinfo: p_vaddr: c0000000 elf_dumploadinfo: p_paddr: c0000000 -elf_dumploadinfo: p_filesz: 00074a64 -elf_dumploadinfo: p_memsz: 00074a64 +elf_dumploadinfo: p_filesz: 00074cc4 +elf_dumploadinfo: p_memsz: 00074cc4 elf_dumploadinfo: p_flags: 00000005 elf_dumploadinfo: p_align: 00001000 elf_dumploadinfo: Programs 1: @@ -846,7 +846,7 @@ elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000006 elf_dumploadinfo: sh_addr: c0000000 elf_dumploadinfo: sh_offset: 4096 -elf_dumploadinfo: sh_size: 360812 +elf_dumploadinfo: sh_size: 361276 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 2 @@ -855,9 +855,9 @@ elf_dumploadinfo: Sections 2: elf_dumploadinfo: sh_name: 00000021 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0058170 -elf_dumploadinfo: sh_offset: 364912 -elf_dumploadinfo: sh_size: 116240 +elf_dumploadinfo: sh_addr: c0058340 +elf_dumploadinfo: sh_offset: 365376 +elf_dumploadinfo: sh_size: 116384 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 16 @@ -866,8 +866,8 @@ elf_dumploadinfo: Sections 3: elf_dumploadinfo: sh_name: 00000029 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000012 -elf_dumploadinfo: sh_addr: c0074780 -elf_dumploadinfo: sh_offset: 481152 +elf_dumploadinfo: sh_addr: c00749e0 +elf_dumploadinfo: sh_offset: 481760 elf_dumploadinfo: sh_size: 488 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -877,8 +877,8 @@ elf_dumploadinfo: Sections 4: elf_dumploadinfo: sh_name: 00000037 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074968 -elf_dumploadinfo: sh_offset: 481640 +elf_dumploadinfo: sh_addr: c0074bc8 +elf_dumploadinfo: sh_offset: 482248 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -888,8 +888,8 @@ elf_dumploadinfo: Sections 5: elf_dumploadinfo: sh_name: 0000004f elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074970 -elf_dumploadinfo: sh_offset: 481648 +elf_dumploadinfo: sh_addr: c0074bd0 +elf_dumploadinfo: sh_offset: 482256 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -899,8 +899,8 @@ elf_dumploadinfo: Sections 6: elf_dumploadinfo: sh_name: 00000064 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074978 -elf_dumploadinfo: sh_offset: 481656 +elf_dumploadinfo: sh_addr: c0074bd8 +elf_dumploadinfo: sh_offset: 482264 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -910,8 +910,8 @@ elf_dumploadinfo: Sections 7: elf_dumploadinfo: sh_name: 00000079 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074980 -elf_dumploadinfo: sh_offset: 481664 +elf_dumploadinfo: sh_addr: c0074be0 +elf_dumploadinfo: sh_offset: 482272 elf_dumploadinfo: sh_size: 8 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -921,8 +921,8 @@ elf_dumploadinfo: Sections 8: elf_dumploadinfo: sh_name: 00000098 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074988 -elf_dumploadinfo: sh_offset: 481672 +elf_dumploadinfo: sh_addr: c0074be8 +elf_dumploadinfo: sh_offset: 482280 elf_dumploadinfo: sh_size: 6 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -932,8 +932,8 @@ elf_dumploadinfo: Sections 9: elf_dumploadinfo: sh_name: 000000ba elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074990 -elf_dumploadinfo: sh_offset: 481680 +elf_dumploadinfo: sh_addr: c0074bf0 +elf_dumploadinfo: sh_offset: 482288 elf_dumploadinfo: sh_size: 6 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -943,8 +943,8 @@ elf_dumploadinfo: Sections 10: elf_dumploadinfo: sh_name: 000000d0 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c0074998 -elf_dumploadinfo: sh_offset: 481688 +elf_dumploadinfo: sh_addr: c0074bf8 +elf_dumploadinfo: sh_offset: 482296 elf_dumploadinfo: sh_size: 5 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -954,8 +954,8 @@ elf_dumploadinfo: Sections 11: elf_dumploadinfo: sh_name: 000000fc elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749a0 -elf_dumploadinfo: sh_offset: 481696 +elf_dumploadinfo: sh_addr: c0074c00 +elf_dumploadinfo: sh_offset: 482304 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -965,8 +965,8 @@ elf_dumploadinfo: Sections 12: elf_dumploadinfo: sh_name: 00000127 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749a8 -elf_dumploadinfo: sh_offset: 481704 +elf_dumploadinfo: sh_addr: c0074c08 +elf_dumploadinfo: sh_offset: 482312 elf_dumploadinfo: sh_size: 5 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -976,8 +976,8 @@ elf_dumploadinfo: Sections 13: elf_dumploadinfo: sh_name: 00000157 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749b0 -elf_dumploadinfo: sh_offset: 481712 +elf_dumploadinfo: sh_addr: c0074c10 +elf_dumploadinfo: sh_offset: 482320 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -987,8 +987,8 @@ elf_dumploadinfo: Sections 14: elf_dumploadinfo: sh_name: 00000188 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749b8 -elf_dumploadinfo: sh_offset: 481720 +elf_dumploadinfo: sh_addr: c0074c18 +elf_dumploadinfo: sh_offset: 482328 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -998,8 +998,8 @@ elf_dumploadinfo: Sections 15: elf_dumploadinfo: sh_name: 000001b1 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749c0 -elf_dumploadinfo: sh_offset: 481728 +elf_dumploadinfo: sh_addr: c0074c20 +elf_dumploadinfo: sh_offset: 482336 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1009,8 +1009,8 @@ elf_dumploadinfo: Sections 16: elf_dumploadinfo: sh_name: 000001e0 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749c8 -elf_dumploadinfo: sh_offset: 481736 +elf_dumploadinfo: sh_addr: c0074c28 +elf_dumploadinfo: sh_offset: 482344 elf_dumploadinfo: sh_size: 4 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1020,8 +1020,8 @@ elf_dumploadinfo: Sections 17: elf_dumploadinfo: sh_name: 000001ff elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749d0 -elf_dumploadinfo: sh_offset: 481744 +elf_dumploadinfo: sh_addr: c0074c30 +elf_dumploadinfo: sh_offset: 482352 elf_dumploadinfo: sh_size: 5 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1031,8 +1031,8 @@ elf_dumploadinfo: Sections 18: elf_dumploadinfo: sh_name: 0000021d elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749d8 -elf_dumploadinfo: sh_offset: 481752 +elf_dumploadinfo: sh_addr: c0074c38 +elf_dumploadinfo: sh_offset: 482360 elf_dumploadinfo: sh_size: 8 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1042,8 +1042,8 @@ elf_dumploadinfo: Sections 19: elf_dumploadinfo: sh_name: 00000235 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749e0 -elf_dumploadinfo: sh_offset: 481760 +elf_dumploadinfo: sh_addr: c0074c40 +elf_dumploadinfo: sh_offset: 482368 elf_dumploadinfo: sh_size: 7 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1053,8 +1053,8 @@ elf_dumploadinfo: Sections 20: elf_dumploadinfo: sh_name: 0000024b elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749e8 -elf_dumploadinfo: sh_offset: 481768 +elf_dumploadinfo: sh_addr: c0074c48 +elf_dumploadinfo: sh_offset: 482376 elf_dumploadinfo: sh_size: 3 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1064,8 +1064,8 @@ elf_dumploadinfo: Sections 21: elf_dumploadinfo: sh_name: 0000025e elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749f0 -elf_dumploadinfo: sh_offset: 481776 +elf_dumploadinfo: sh_addr: c0074c50 +elf_dumploadinfo: sh_offset: 482384 elf_dumploadinfo: sh_size: 6 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1075,8 +1075,8 @@ elf_dumploadinfo: Sections 22: elf_dumploadinfo: sh_name: 00000271 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000002 -elf_dumploadinfo: sh_addr: c00749f8 -elf_dumploadinfo: sh_offset: 481784 +elf_dumploadinfo: sh_addr: c0074c58 +elf_dumploadinfo: sh_offset: 482392 elf_dumploadinfo: sh_size: 108 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1176,7 +1176,7 @@ elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 elf_dumploadinfo: sh_offset: 560367 -elf_dumploadinfo: sh_size: 960537 +elf_dumploadinfo: sh_size: 961626 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 1 @@ -1186,8 +1186,8 @@ elf_dumploadinfo: sh_name: 000002fd elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 1520904 -elf_dumploadinfo: sh_size: 928815 +elf_dumploadinfo: sh_offset: 1521993 +elf_dumploadinfo: sh_size: 929145 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 1 @@ -1197,7 +1197,7 @@ elf_dumploadinfo: sh_name: 00000309 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 2449719 +elf_dumploadinfo: sh_offset: 2451138 elf_dumploadinfo: sh_size: 36112 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1208,8 +1208,8 @@ elf_dumploadinfo: sh_name: 00000318 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 2485831 -elf_dumploadinfo: sh_size: 1153159 +elf_dumploadinfo: sh_offset: 2487250 +elf_dumploadinfo: sh_size: 1153192 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 1 @@ -1219,7 +1219,7 @@ elf_dumploadinfo: sh_name: 00000323 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 3638990 +elf_dumploadinfo: sh_offset: 3640442 elf_dumploadinfo: sh_size: 155360 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1230,7 +1230,7 @@ elf_dumploadinfo: sh_name: 00000331 elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000030 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 3794350 +elf_dumploadinfo: sh_offset: 3795802 elf_dumploadinfo: sh_size: 94913 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1241,8 +1241,8 @@ elf_dumploadinfo: sh_name: 0000033c elf_dumploadinfo: sh_type: 00000001 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 3889264 -elf_dumploadinfo: sh_size: 92496 +elf_dumploadinfo: sh_offset: 3890720 +elf_dumploadinfo: sh_size: 92512 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 elf_dumploadinfo: sh_addralign: 8 @@ -1252,7 +1252,7 @@ elf_dumploadinfo: sh_name: 00000001 elf_dumploadinfo: sh_type: 00000002 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 3981760 +elf_dumploadinfo: sh_offset: 3983232 elf_dumploadinfo: sh_size: 54696 elf_dumploadinfo: sh_link: 39 elf_dumploadinfo: sh_info: 1551 @@ -1263,7 +1263,7 @@ elf_dumploadinfo: sh_name: 00000009 elf_dumploadinfo: sh_type: 00000003 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 4036456 +elf_dumploadinfo: sh_offset: 4037928 elf_dumploadinfo: sh_size: 37511 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1274,7 +1274,7 @@ elf_dumploadinfo: sh_name: 00000011 elf_dumploadinfo: sh_type: 00000003 elf_dumploadinfo: sh_flags: 00000000 elf_dumploadinfo: sh_addr: 00000000 -elf_dumploadinfo: sh_offset: 4073967 +elf_dumploadinfo: sh_offset: 4075439 elf_dumploadinfo: sh_size: 841 elf_dumploadinfo: sh_link: 0 elf_dumploadinfo: sh_info: 0 @@ -1316,229 +1316,1113 @@ mm_free: Freeing 0x80208820 mm_free: Freeing 0x80208990 main: expr=console.log(123) main: expr2=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02004b0, size 592 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200700, size 1040 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200b10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200b30, size 1696 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02011d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02011f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201210, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201230, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201250, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201270, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201290, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02012b0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02012d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02012f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201310, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201330, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201350, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201370, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02013a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02013c0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02013e0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201400, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201420, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201450, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201470, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201490, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02014b0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02014d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02014f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201510, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201530, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201560, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201590, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02015b0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02015d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02015f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201610, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201630, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201650, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201670, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201690, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02016c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02016f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201710, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201730, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201750, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201780, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02017a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02017c0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02017e0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201800, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201820, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201840, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201870, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02018a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02018c0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02018e0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201900, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201920, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201940, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201970, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02019a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02019c0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02019e0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201a10, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201a40, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201a70, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201aa0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201ad0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201af0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201b10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201b30, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201b50, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201b80, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201bb0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201bd0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201bf0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201c10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201c30, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201c50, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201c70, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201c90, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201cc0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201ce0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201d00, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201d20, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201d40, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201d60, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201d90, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201db0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201de0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201e00, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201e20, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201e40, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201e70, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201e90, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201eb0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201ed0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201ef0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201f20, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201f50, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201f80, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201fb0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201fe0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202810, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202840, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202870, size 64 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02028b0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02028d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02028f0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202910, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202930, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202950, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202970, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202990, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02029b0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02029d0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02029f0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202a20, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202a50, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202a80, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ab0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ae0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202b10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202b30, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202b60, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202b80, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ba0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202bc0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202bf0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202c10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202c30, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202c50, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202c70, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202c90, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202cb0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202cd0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202cf0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202d10, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202d30, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202d50, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202d70, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202d90, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202db0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202de0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202e00, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202e30, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202e60, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202e80, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ea0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ec0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ee0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202f00, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202f20, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202f40, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202f60, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202f80, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202fb0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202fd0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0202ff0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203010, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203040, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203070, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02030a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02030c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02030f0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203120, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203150, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203180, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02031b0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02031e0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203210, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203240, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203270, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02032a0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02032d0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203300, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203330, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203360, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203380, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02033a0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02033c0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02033e0, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203400, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203430, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203460, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203490, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02034c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02034f0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203520, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203540, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203560, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203590, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02035c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02035f0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203620, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203650, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203680, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02036b0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02036e0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203710, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203740, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203770, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02037a0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02037d0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203800, size 32 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203820, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203850, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203880, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02038b0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02038e0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203910, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203940, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0203970, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02039a0, size 64 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) mm_malloc: Allocated 0xc02039e0, size 2544 mm_free: Freeing 0xc0200b30 +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200b30, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200b60, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200b90, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200bc0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02043d0, size 2176 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200bf0, size 144 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) main: expr3=console.log(123) main: expr4=console.log(123) main: expr5=console.log(123) @@ -1547,15 +2431,30 @@ main: expr7=console.log(123) mm_malloc: Allocated 0xc0200c80, size 96 main: expr8=console.log(123) JS_NewCustomContext: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200ce0, size 464 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0204c50, size 880 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) JS_NewObjectProtoClass: a=console.log(123) JS_NewObjectProtoClass: b=console.log(123) JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200eb0, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1565,8 +2464,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200f20, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200f70, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) JS_NewCFunction3: 0=console.log(123) JS_NewObjectProtoClass: a=console.log(123) JS_NewObjectProtoClass: b=console.log(123) @@ -1574,7 +2487,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0200fa0, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1584,8 +2504,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201010, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201060, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) JS_NewCFunction3: 1=console.log(123) JS_NewCFunction3: 2=console.log(123) JS_NewCFunction3: 3=console.log(123) @@ -1605,7 +2539,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201090, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1615,12 +2556,33 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201100, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201150, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: toString __JS_FindAtom: name __JS_FindAtom: message +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0204fc0, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) mm_free: Freeing 0xc0201090 JS_NewObjectProtoClass: a=console.log(123) JS_NewObjectProtoClass: b=console.log(123) @@ -1628,7 +2590,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201090, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1638,8 +2607,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205030, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0201190, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: EvalError JS_DefineProperty: a JS_CreateProperty: a @@ -1651,7 +2634,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1661,8 +2651,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02050f0, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205140, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: RangeError JS_DefineProperty: a JS_CreateProperty: a @@ -1675,7 +2679,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1685,8 +2696,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205170, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02051c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: ReferenceError JS_DefineProperty: a JS_CreateProperty: a @@ -1699,7 +2724,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1709,8 +2741,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02051f0, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205240, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: SyntaxError JS_DefineProperty: a JS_CreateProperty: a @@ -1723,7 +2769,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1733,8 +2786,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205270, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02052c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: TypeError JS_DefineProperty: a JS_CreateProperty: a @@ -1747,7 +2814,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1757,8 +2831,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02052f0, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205340, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: URIError JS_DefineProperty: a JS_CreateProperty: a @@ -1771,7 +2859,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1781,8 +2876,22 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205370, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02053c0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: InternalError JS_DefineProperty: a JS_CreateProperty: a @@ -1795,7 +2904,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1805,10 +2921,28 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02053f0, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205440, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) __JS_FindAtom: AggregateError +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205470, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a @@ -1820,7 +2954,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205080, size 112 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1830,11 +2971,32 @@ js_new_shape2: h=console.log(123) js_new_shape2: i=console.log(123) JS_NewObjectProtoClass: g=console.log(123) JS_NewObjectProtoClass: h=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02054a0, size 80 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc02054f0, size 48 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205520, size 96 +js_def_malloc: c=console.log(123) +js_def_malloc: d=console.log(123) +js_malloc: b=console.log(123) +js_malloc: d=console.log(123) js_new_shape2: c=console.log(123) js_new_shape2: d=console.log(123) js_new_shape2: e=console.log(123) @@ -1851,7 +3013,14 @@ JS_NewObjectProtoClass: c=console.log(123) JS_NewObjectProtoClass: f=console.log(123) js_new_shape2: a=console.log(123) js_new_shape2: b=console.log(123) +js_malloc: a=console.log(123) +js_def_malloc: a=console.log(123) +js_def_malloc: b=console.log(123) mm_malloc: Allocated 0xc0205580, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -1861,8 +3030,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02055f0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205640, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -1884,7 +3067,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205670, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -1894,8 +3084,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02056e0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205730, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -1915,16 +3119,44 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0205670, size 64 mm_free: Freeing 0xc0201060 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205760, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0200fa0 JS_AddIntrinsicBaseObjects: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205760 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02056c0, size 32 -JS_DefineProperty: a +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +JS_DefineProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205760, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_DefineProperty: a mm_free: Freeing 0xc02056c0 JS_NewObjectProtoClass: a= @@ -1933,7 +3165,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200fa0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -1943,26 +3182,65 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205850, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0201060, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: d= JS_NewObjectProtoClass: e= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02058a0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02058f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205920, size 272 +js_def_malloc: c=ÿ +js_def_malloc: d=ÿ mm_free: Freeing 0xc0200bf0 -js_new_shape2: b= +js_new_shape2: b=ÿ +js_malloc: a=ÿ +js_def_malloc: a=ÿ +js_def_malloc: b=ÿ mm_malloc: Allocated 0xc0200bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -1972,8 +3250,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205a30, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205a80, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -1993,96 +3285,287 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ac0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0200bf0 JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: create +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200c60, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0205b30, size 80 mm_free: Freeing 0xc0205a80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205b80, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205ac0 __JS_FindAtom: getPrototypeOf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205a80, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205c00, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205b80 __JS_FindAtom: setPrototypeOf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ab0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: defineProperty +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ca0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205c00 __JS_FindAtom: defineProperties +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205b80, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getOwnPropertyNames +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205bb0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getOwnPropertySymbols +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205be0, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0205d70, size 224 mm_free: Freeing 0xc0205ae0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205e50, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205ca0 __JS_FindAtom: groupBy +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02056c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: keys +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ae0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: values __JS_FindAtom: entries +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205b00, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205f40, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205e50 __JS_FindAtom: isExtensible +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205b20, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: preventExtensions +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205b50, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getOwnPropertyDescriptor __JS_FindAtom: getOwnPropertyDescriptors +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205e50, size 64 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: is +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205e90, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: assign +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205eb0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02060a0, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205f40 __JS_FindAtom: seal +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205c10, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: freeze +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205c30, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: isSealed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205c50, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: isFrozen +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ed0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: __getClass +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205f00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: fromEntries +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205f30, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: hasOwn +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205f60, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toString __JS_FindAtom: toLocaleString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205f80, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0205fb0, size 64 mm_free: Freeing 0xc0200f70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205ff0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0200bf0 __JS_FindAtom: valueOf mm_malloc: Allocated 0xc0200bf0, size 80 mm_free: Freeing 0xc0205fb0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206250, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205ff0 __JS_FindAtom: hasOwnProperty +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200f70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205fb0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206250 __JS_FindAtom: isPrototypeOf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206050, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: propertyIsEnumerable +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206250, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0206280, size 160 mm_free: Freeing 0xc0200bf0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206320, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205fb0 __JS_FindAtom: __proto__ JS_NewCFunction3: 0= @@ -2092,7 +3575,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2102,15 +3592,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205fb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206000, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get __proto__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02063f0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -2126,7 +3634,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2136,15 +3651,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206420, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206470, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: set __proto__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02064a0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -2156,30 +3689,79 @@ JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: __defineGetter__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200bf0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: __defineSetter__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200c20, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02064d0, size 224 mm_free: Freeing 0xc0206280 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02065b0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206320 __JS_FindAtom: __lookupGetter__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206280, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: __lookupSetter__ +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02062b0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: call +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206030, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02062e0, size 112 mm_free: Freeing 0xc0205670 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206350, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02057d0 __JS_FindAtom: apply +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206080, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: bind +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205670, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02066a0, size 160 mm_free: Freeing 0xc02062e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206740, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206350 __JS_FindAtom: toString __JS_FindAtom: fileName @@ -2190,7 +3772,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2200,15 +3789,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02062e0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205690, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get fileName +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206330, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -2221,7 +3828,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0206810, size 224 mm_free: Freeing 0xc02066a0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02068f0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206740 __JS_FindAtom: lineNumber JS_NewCFunction3: 0= @@ -2231,7 +3845,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2241,15 +3862,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206360, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02063b0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get lineNumber +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02066a0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -2267,7 +3906,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2277,8 +3923,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02066d0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206720, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2298,8 +3958,22 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206760, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02057d0 JS_DefineProperty: a JS_CreateProperty: a @@ -2310,7 +3984,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02057d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2320,8 +4001,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02069e0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02067d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2341,7 +4036,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc02057d0, size 64 mm_free: Freeing 0xc0201060 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206a30, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0200fa0 JS_DefineProperty: a JS_CreateProperty: a @@ -2349,7 +4051,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0200fa0, size 80 mm_free: Freeing 0xc0201150 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206aa0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0204fc0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -2358,7 +4067,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204fc0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2368,8 +4084,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206b20, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0201060, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2386,18 +4116,46 @@ JS_NewCFunction3: d= __JS_FindAtom: EvalError JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206b70, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206a30 JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0201150, size 64 mm_free: Freeing 0xc0201060 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206a30, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0204fc0 JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204fc0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206bf0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0204fc0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -2406,7 +4164,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204fc0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2416,8 +4181,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206c60, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0201060, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2434,7 +4213,14 @@ JS_NewCFunction3: d= __JS_FindAtom: RangeError JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206cb0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206b70 JS_DefineProperty: a JS_CreateProperty: a @@ -2452,7 +4238,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204fc0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2462,8 +4255,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206d50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205140, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2496,7 +4303,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206de0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2506,8 +4320,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206e50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02051c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2526,7 +4354,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0206ea0, size 160 mm_free: Freeing 0xc02057d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206f40, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206cb0 JS_DefineProperty: a JS_CreateProperty: a @@ -2544,7 +4379,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206de0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2554,8 +4396,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206cb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205240, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2588,7 +4444,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207010, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2598,8 +4461,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207080, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02052c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2632,7 +4509,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207110, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2642,8 +4526,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207180, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205340, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2662,7 +4560,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc02071d0, size 224 mm_free: Freeing 0xc0206ea0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02072b0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0206f40 JS_DefineProperty: a JS_CreateProperty: a @@ -2680,7 +4585,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206ee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2690,8 +4602,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206f50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02053c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2724,7 +4650,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0201060, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2734,99 +4667,297 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02073a0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02010d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: at +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0200ff0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: with mm_malloc: Allocated 0xc02073f0, size 64 mm_free: Freeing 0xc02054f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207430, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0205080 __JS_FindAtom: concat +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02054f0, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0205080, size 80 mm_free: Freeing 0xc02073f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02074a0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207430 __JS_FindAtom: every +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02050d0, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02073f0, size 112 mm_free: Freeing 0xc0205080 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207520, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02074a0 __JS_FindAtom: some +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205440, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: forEach +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206f20, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02075c0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207520 __JS_FindAtom: map +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02053c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: filter +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206fe0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: reduce +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207150, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02074d0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02075c0 __JS_FindAtom: reduceRight +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205340, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: fill +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207050, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: find +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02052c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: findIndex +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0206e20, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02075c0, size 320 mm_free: Freeing 0xc02073f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207700, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02074d0 __JS_FindAtom: findLast +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205240, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: findLastIndex +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02051c0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: indexOf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205000, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: lastIndexOf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205140, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: includes +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205080, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: join +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02050b0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207860, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207700 __JS_FindAtom: toString __JS_FindAtom: toLocaleString __JS_FindAtom: pop +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02073f0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: push +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207410, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: shift +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207430, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: unshift +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207450, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: reverse +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207470, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toReversed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207490, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sort +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02074c0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207a10, size 672 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207860 __JS_FindAtom: toSorted +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207790, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: slice +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02077c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: splice +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02077e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toSpliced +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207800, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: copyWithin +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207830, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: flatMap +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207860, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: flat +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207880, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: values __JS_FindAtom: values JS_NewCFunction3: 0= @@ -2836,7 +4967,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02078a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2846,8 +4984,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207910, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207960, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2873,7 +5025,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02078a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2883,8 +5042,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207990, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02079e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -2909,12 +5082,37 @@ mm_free: Freeing 0xc02079e0 JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: isArray +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02079e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207cb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207d20, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207cb0 __JS_FindAtom: from +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207da0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207d20 __JS_FindAtom: of JS_NewCFunction3: 0= @@ -2924,7 +5122,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207cb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -2934,15 +5139,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207d20, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207d70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get [Symbol.species] +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207e40, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -2955,7 +5178,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0207e70, size 160 mm_free: Freeing 0xc02078a0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207f10, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207da0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -2963,29 +5193,71 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: d= JS_NewObjectProtoClass: e= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02078a0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207cb0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: copyWithin JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207da0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: entries JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: fill JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207fe0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207da0 __JS_FindAtom: find JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207da0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207fe0 __JS_FindAtom: findIndex JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207fe0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207da0 __JS_FindAtom: findLast JS_DefineProperty: a @@ -2995,7 +5267,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0207da0, size 160 mm_free: Freeing 0xc0207cb0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208080, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0207fe0 __JS_FindAtom: flat JS_DefineProperty: a @@ -3008,7 +5287,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0208150, size 224 mm_free: Freeing 0xc0207da0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208230, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208080 __JS_FindAtom: keys JS_DefineProperty: a @@ -3022,7 +5308,14 @@ JS_CreateProperty: a __JS_FindAtom: toSpliced JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208320, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208230 __JS_FindAtom: values JS_DefineProperty: a @@ -3035,7 +5328,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207cb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3045,43 +5345,119 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207da0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207df0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next __JS_FindAtom: parseInt +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208230, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: parseFloat +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208260, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc0208480, size 320 mm_free: Freeing 0xc02071d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02085c0, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02072b0 __JS_FindAtom: isNaN +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207e20, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: isFinite +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208290, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: decodeURI +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02082c0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: decodeURIComponent +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02082f0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: encodeURI +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207fe0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: encodeURIComponent +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208010, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02071d0, size 464 mm_free: Freeing 0xc0208480 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208720, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02085c0 __JS_FindAtom: escape +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02078f0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: unescape +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208040, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: Infinity +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208070, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: NaN +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02080a0, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: undefined @@ -3093,7 +5469,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208480, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3103,25 +5486,72 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02084f0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02080c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: toExponential +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208540, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toFixed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208570, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toPrecision +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208590, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02085c0, size 64 mm_free: Freeing 0xc02080c0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208600, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208480 __JS_FindAtom: toString mm_malloc: Allocated 0xc0208480, size 80 mm_free: Freeing 0xc02085c0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208670, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208600 __JS_FindAtom: toLocaleString +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02085c0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208670 __JS_FindAtom: valueOf JS_NewCFunction3: 0= @@ -3130,10 +5560,21 @@ JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02088d0, size 528 +js_def_malloc: c=ÿ +js_def_malloc: d=ÿ mm_free: Freeing 0xc0205920 -js_new_shape2: b= +js_new_shape2: b=ÿ +js_malloc: a=ÿ +js_def_malloc: a=ÿ +js_def_malloc: b=ÿ mm_malloc: Allocated 0xc0208670, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3143,8 +5584,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205920, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02080c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3170,7 +5625,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0205970, size 160 mm_free: Freeing 0xc0208480 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208ae0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02085c0 __JS_FindAtom: parseInt __JS_FindAtom: parseInt @@ -3181,7 +5643,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208480, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3191,8 +5660,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02086b0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02080c0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3209,8 +5692,22 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208480, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02085c0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208480 __JS_FindAtom: parseFloat __JS_FindAtom: parseFloat @@ -3221,7 +5718,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208480, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3231,8 +5735,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208bb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208c00, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3249,51 +5767,115 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208c30, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02085c0 __JS_FindAtom: isNaN __JS_FindAtom: isFinite +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208cd0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208c30 __JS_FindAtom: isInteger +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02085c0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: isSafeInteger +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208480, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: MAX_VALUE +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02084b0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0208da0, size 224 mm_free: Freeing 0xc0208610 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208e80, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208cd0 __JS_FindAtom: MIN_VALUE +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02085f0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: NaN JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: NEGATIVE_INFINITY +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208620, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: POSITIVE_INFINITY +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208650, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208f70, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208e80 __JS_FindAtom: EPSILON +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208700, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: MAX_SAFE_INTEGER +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208680, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: MIN_SAFE_INTEGER +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208e80, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a JS_NewObjectProtoClass: a= @@ -3302,7 +5884,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208eb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3312,8 +5901,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208f20, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208c30, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: toString __JS_FindAtom: valueOf JS_NewCFunction3: 0= @@ -3323,7 +5926,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208c60, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3333,8 +5943,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208cd0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02090d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3356,7 +5980,14 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209110, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208eb0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -3364,7 +5995,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208eb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3374,8 +6012,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208c70, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209180, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -3383,7 +6035,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02091b0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3393,8 +6052,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209220, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209270, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3419,19 +6092,52 @@ JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: fromCharCode +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02091b0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02092b0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_malloc: Allocated 0xc0209320, size 80 mm_free: Freeing 0xc0209270 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209370, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02092b0 __JS_FindAtom: fromCodePoint +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02091e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02093f0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0209370 __JS_FindAtom: raw __JS_FindAtom: length +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208d20, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a @@ -3439,75 +6145,208 @@ JS_CreateProperty: a __JS_FindAtom: at mm_malloc: Allocated 0xc0209370, size 64 mm_free: Freeing 0xc0209180 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209270, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208eb0 __JS_FindAtom: charCodeAt +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209180, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209490, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0209270 __JS_FindAtom: charAt +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0205a10, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209510, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0209490 __JS_FindAtom: concat __JS_FindAtom: codePointAt +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208eb0, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02095b0, size 3808 mm_free: Freeing 0xc02039e0 mm_malloc: Allocated 0xc02039e0, size 160 mm_free: Freeing 0xc0209370 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203a80, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0209510 __JS_FindAtom: isWellFormed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208ee0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toWellFormed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209370, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: indexOf mm_malloc: Allocated 0xc0209490, size 224 mm_free: Freeing 0xc02039e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203b50, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0203a80 __JS_FindAtom: lastIndexOf __JS_FindAtom: includes __JS_FindAtom: endsWith +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209570, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: startsWith +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02093a0, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02039e0, size 320 mm_free: Freeing 0xc0209490 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203c40, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0203b50 __JS_FindAtom: match +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02093d0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: matchAll +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209270, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: search +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02092a0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: split +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02092c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: substring +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209490, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: substr +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02092e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203da0, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0203c40 __JS_FindAtom: slice __JS_FindAtom: repeat +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02094c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: replace +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02094e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: replaceAll +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209500, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: padEnd +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209530, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: padStart +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203bb0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trim +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0209550, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trimEnd +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203be0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trimRight +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203c00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trimEnd JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -3516,7 +6355,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203c30, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3526,8 +6372,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203ca0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203cf0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3548,12 +6408,27 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0203f50, size 688 mm_free: Freeing 0xc02039e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a490, size 672 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0203da0 __JS_FindAtom: trimStart +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203c30, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trimLeft +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203c60, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: trimStart JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -3562,7 +6437,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02039e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3572,8 +6454,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203a50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203aa0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3595,52 +6491,142 @@ JS_CreateProperty: a __JS_FindAtom: toString __JS_FindAtom: valueOf __JS_FindAtom: __quote +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02039e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: localeCompare +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203a00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toLowerCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203ad0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toUpperCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203b00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toLocaleLowerCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203b30, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toLocaleUpperCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203b60, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: anchor +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203b90, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: big +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203a30, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: blink +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204200, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a730, size 832 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020a490 __JS_FindAtom: bold +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203d20, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: fixed +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203d40, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: fontcolor +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203d60, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: fontsize +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203d90, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: italics +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203dc0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: link +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0203de0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: small +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204220, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: strike +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204240, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sub +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204260, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sup +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204280, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02042a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3650,24 +6636,56 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204310, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204360, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next mm_free: Freeing 0xc02042a0 __JS_FindAtom: Math mm_malloc: Allocated 0xc020aa70, size 688 mm_free: Freeing 0xc02071d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a490, size 672 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208720 __JS_FindAtom: Reflect +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0204390, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02042a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3677,18 +6695,50 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208720, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208770, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: toString __JS_FindAtom: valueOf +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02087b0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02042a0 mm_malloc: Allocated 0xc02042a0, size 80 mm_free: Freeing 0xc0208770 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208820, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02087b0 __JS_FindAtom: description +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02088a0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -3696,7 +6746,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208770, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3706,15 +6763,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02071d0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02087e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get description +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207220, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -3725,7 +6800,14 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207250, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc0208820 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -3734,7 +6816,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208770, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3744,8 +6833,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208820, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208870, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3770,26 +6873,66 @@ mm_free: Freeing 0xc0208870 JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: for +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02072f0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad20, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02072f0 __JS_FindAtom: keyFor +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02087c0, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc02072f0, size 112 mm_free: Freeing 0xc0208770 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ada0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ad20 __JS_FindAtom: toPrimitive +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208870, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: iterator +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207360, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc020ae40, size 160 mm_free: Freeing 0xc02072f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020aee0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ada0 __JS_FindAtom: match JS_DefineProperty: a @@ -3800,7 +6943,14 @@ JS_CreateProperty: a __JS_FindAtom: replace JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020afb0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020aee0 __JS_FindAtom: search JS_DefineProperty: a @@ -3809,29 +6959,60 @@ __JS_FindAtom: split JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: toStringTag +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208770, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: isConcatSpreadable +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02072f0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b0a0, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020afb0 __JS_FindAtom: hasInstance +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0207320, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: species +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02087a0, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: unscopables +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad20, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: asyncIterator +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad50, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a JS_NewObjectProtoClass: a= @@ -3840,7 +7021,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad80, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3850,16 +7038,49 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af40, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af90, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next __JS_FindAtom: return +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02043b0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: throw +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020afd0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ad80 mm_malloc: Allocated 0xc020b040, size 80 mm_free: Freeing 0xc020af90 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad80, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020afd0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -3867,7 +7088,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3877,8 +7105,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b200, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b000, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -3886,8 +7128,22 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: d= JS_NewObjectProtoClass: e= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b250, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b2a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -3897,7 +7153,14 @@ __JS_FindAtom: GeneratorFunction JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b2d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_DefineProperty: a JS_CreateProperty: a mm_free: Freeing 0xc020b2d0 @@ -3909,7 +7172,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc020b2d0, size 112 mm_free: Freeing 0xc020b040 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b340, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ad80 JS_DefineProperty: a JS_CreateProperty: a @@ -3917,7 +7187,14 @@ mm_malloc: Allocated 0xc020b040, size 64 mm_free: Freeing 0xc020b2a0 JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad80, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020af90 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -3926,7 +7203,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3936,15 +7220,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b3e0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b2a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: eval +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b080, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -3964,7 +7266,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -3974,20 +7283,56 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b430, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b480, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: valueOf __JS_FindAtom: toString +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b4c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020af90 __JS_FindAtom: toUTCString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020af90, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020b530, size 80 mm_free: Freeing 0xc020b480 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b580, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b4c0 __JS_FindAtom: toGMTString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020afc0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toUTCString JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -3996,7 +7341,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b480, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4006,8 +7358,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b600, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b4f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4026,107 +7392,316 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc020b480, size 112 mm_free: Freeing 0xc020b530 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b650, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b580 __JS_FindAtom: toISOString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b530, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toDateString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b560, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020b6f0, size 160 mm_free: Freeing 0xc020b480 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b790, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b650 __JS_FindAtom: toTimeString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b480, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toLocaleString __JS_FindAtom: toLocaleDateString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b4b0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b860, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b790 __JS_FindAtom: toLocaleTimeString +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b650, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getTimezoneOffset +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b680, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getTime -mm_malloc: Allocated 0xc02043b0, size 32 -__JS_FindAtom: getYear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b590, size 32 +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: getYear +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b5b0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b950, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b860 __JS_FindAtom: getFullYear -mm_malloc: Allocated 0xc020b5b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b5d0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCFullYear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b7f0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getMonth +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b820, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCMonth +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b850, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getDate -mm_malloc: Allocated 0xc020b5e0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b880, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCDate -mm_malloc: Allocated 0xc020b880, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b8a0, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020bab0, size 464 mm_free: Freeing 0xc020b6b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bc80, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020b950 __JS_FindAtom: getHours +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b6b0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCHours +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b6e0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getMinutes +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b710, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCMinutes +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b740, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getSeconds +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b770, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCSeconds +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b7a0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getMilliseconds -mm_malloc: Allocated 0xc020b8b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b8d0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUTCMilliseconds -mm_malloc: Allocated 0xc020b8e0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b900, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getDay +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b7d0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020be30, size 672 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020bc80 __JS_FindAtom: getUTCDay -mm_malloc: Allocated 0xc020b910, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b930, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setTime -mm_malloc: Allocated 0xc020b940, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b960, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setMilliseconds -mm_malloc: Allocated 0xc020b960, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b980, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUTCMilliseconds -mm_malloc: Allocated 0xc020b990, size 48 -__JS_FindAtom: setSeconds +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bc80, size 48 -__JS_FindAtom: setUTCSeconds +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setSeconds +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bcb0, size 48 -__JS_FindAtom: setMinutes +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setUTCSeconds +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bce0, size 48 -__JS_FindAtom: setUTCMinutes +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setMinutes +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bd10, size 48 -__JS_FindAtom: setHours +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setUTCMinutes +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bd40, size 48 -__JS_FindAtom: setUTCHours +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setHours +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bd70, size 48 +js_def_malloc: c= +js_def_malloc: d= +__JS_FindAtom: setUTCHours +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020bda0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setDate -mm_malloc: Allocated 0xc020bda0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020b9b0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUTCDate -mm_malloc: Allocated 0xc020bdc0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020bdd0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setMonth -mm_malloc: Allocated 0xc020bdf0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020be00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUTCMonth +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c0d0, size 48 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020c100, size 1024 mm_free: Freeing 0xc020b9d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c500, size 832 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020be30 __JS_FindAtom: setYear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020be30, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setFullYear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020be50, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUTCFullYear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020be80, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toJSON JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -4135,7 +7710,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020beb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4145,8 +7727,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bf20, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bf70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4169,29 +7765,73 @@ JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: now +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020beb0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bfb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_malloc: Allocated 0xc020bed0, size 80 mm_free: Freeing 0xc020bf70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c020, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020bfb0 __JS_FindAtom: parse +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c0a0, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020bf70, size 112 mm_free: Freeing 0xc020bed0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020b9d0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020c020 __JS_FindAtom: UTC +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bed0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: normalize +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bef0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bfe0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4201,8 +7841,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c050, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ba70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: flags JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -4211,7 +7865,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020baa0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4221,15 +7882,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bb10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bb60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get flags +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bb90, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4248,7 +7927,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020baa0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4258,15 +7944,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bbc0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bc10, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get source +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bc40, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4285,7 +7989,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020baa0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4295,15 +8006,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c840, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c890, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get global +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c8c0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4314,10 +8043,21 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c8f0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020bfe0 __JS_FindAtom: ignoreCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bab0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4325,7 +8065,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bfe0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4335,15 +8082,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c960, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bae0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get ignoreCase +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9b0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4356,10 +8121,21 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc020bfe0, size 80 mm_free: Freeing 0xc020ba70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020c8f0 __JS_FindAtom: multiline +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ba70, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4367,7 +8143,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c8f0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4377,15 +8160,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ca60, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cab0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get multiline +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cae0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4396,10 +8197,21 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cb10, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020c9e0 __JS_FindAtom: dotAll +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c8f0, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4407,7 +8219,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4417,15 +8236,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c910, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cbb0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get dotAll +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cbe0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4444,7 +8281,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4454,15 +8298,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cc10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cc60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get unicode +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cc90, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4475,10 +8337,21 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc020ccc0, size 160 mm_free: Freeing 0xc020bfe0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cd60, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020cb10 __JS_FindAtom: sticky +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020bfe0, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4486,7 +8359,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4496,15 +8376,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c000, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cb10, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get sticky +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cb40, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4516,7 +8414,11 @@ JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: hasIndices +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cb70, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4524,7 +8426,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4534,15 +8443,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ce30, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ce80, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get hasIndices +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ceb0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -4556,16 +8483,38 @@ JS_CreateProperty: a __JS_FindAtom: exec mm_malloc: Allocated 0xc020cee0, size 224 mm_free: Freeing 0xc020ccc0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cfc0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020cd60 __JS_FindAtom: compile +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020c9e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: test +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ca00, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: toString mm_malloc: Allocated 0xc020ccc0, size 320 mm_free: Freeing 0xc020cee0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d0b0, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020cfc0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -4574,7 +8523,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4584,8 +8540,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cf50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ce00, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4616,7 +8586,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4626,8 +8603,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cfa0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ce00, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4644,10 +8635,24 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_malloc: Allocated 0xc020cff0, size 80 mm_free: Freeing 0xc020ca20 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d210, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020cee0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4655,7 +8660,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4665,8 +8677,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d040, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ca20, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next mm_free: Freeing 0xc020cee0 __JS_FindAtom: JSON @@ -4677,7 +8703,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4687,8 +8720,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d290, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d2e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4704,11 +8751,29 @@ mm_free: Freeing 0xc020cee0 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: revocable +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020cee0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d310, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_malloc: Allocated 0xc020cf10, size 64 mm_free: Freeing 0xc020d2e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d380, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020d310 __JS_FindAtom: Proxy JS_DefineProperty: a @@ -4719,7 +8784,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d2e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4729,29 +8801,81 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d3f0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d350, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: set +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d090, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: get __JS_FindAtom: has -mm_malloc: Allocated 0xc020d090, size 32 -mm_malloc: Allocated 0xc020d440, size 64 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d440, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc020d460, size 64 mm_free: Freeing 0xc020d350 -mm_malloc: Allocated 0xc020d480, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d4a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020d2e0 __JS_FindAtom: delete mm_malloc: Allocated 0xc020d2e0, size 80 -mm_free: Freeing 0xc020d440 -mm_malloc: Allocated 0xc020d4f0, size 128 -mm_free: Freeing 0xc020d480 +mm_free: Freeing 0xc020d460 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d510, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d4a0 __JS_FindAtom: clear +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d330, size 32 -mm_malloc: Allocated 0xc020d440, size 112 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc020d460, size 112 mm_free: Freeing 0xc020d2e0 -mm_malloc: Allocated 0xc020d570, size 160 -mm_free: Freeing 0xc020d4f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d590, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d510 __JS_FindAtom: size +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d350, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4759,7 +8883,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d4b0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d4d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4769,33 +8900,65 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d520, size 80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d540, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d2e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get size -mm_malloc: Allocated 0xc020d610, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d630, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d4b0 +mm_free: Freeing 0xc020d4d0 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: forEach -mm_malloc: Allocated 0xc020d640, size 208 -mm_free: Freeing 0xc020d570 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d660, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d590 __JS_FindAtom: values __JS_FindAtom: keys __JS_FindAtom: entries -mm_malloc: Allocated 0xc020d710, size 240 -mm_free: Freeing 0xc020d640 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d730, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d660 __JS_FindAtom: entries JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -4804,7 +8967,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d570, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d590, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4814,8 +8984,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d640, size 80 -mm_malloc: Allocated 0xc020d5e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d660, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d600, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4827,7 +9011,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d570 +mm_free: Freeing 0xc020d590 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a @@ -4839,7 +9023,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d570, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d590, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4849,8 +9040,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d690, size 80 -mm_malloc: Allocated 0xc020d6e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d6b0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d700, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4862,15 +9067,29 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d570 +mm_free: Freeing 0xc020d590 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: groupBy -mm_malloc: Allocated 0xc020d570, size 112 -mm_malloc: Allocated 0xc020d800, size 64 -mm_free: Freeing 0xc020d6e0 -mm_malloc: Allocated 0xc020d840, size 112 -mm_free: Freeing 0xc020d570 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d590, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_malloc: Allocated 0xc020d820, size 64 +mm_free: Freeing 0xc020d700 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d860, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d590 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -4878,7 +9097,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d570, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d590, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4888,8 +9114,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d8b0, size 80 -mm_malloc: Allocated 0xc020d6e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d8d0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d700, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4901,22 +9141,36 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d570 +mm_free: Freeing 0xc020d590 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020d570, size 80 -mm_free: Freeing 0xc020d800 -mm_malloc: Allocated 0xc020d900, size 128 -mm_free: Freeing 0xc020d840 +mm_malloc: Allocated 0xc020d590, size 80 +mm_free: Freeing 0xc020d820 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d860 __JS_FindAtom: Map JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020d800, size 160 -mm_free: Freeing 0xc020d900 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d820, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d920 JS_DefineProperty: a JS_CreateProperty: a JS_NewObjectProtoClass: a= @@ -4925,7 +9179,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d900, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4935,18 +9196,46 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d970, size 80 -mm_malloc: Allocated 0xc020d9c0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d990, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d9e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: add __JS_FindAtom: has __JS_FindAtom: delete -mm_malloc: Allocated 0xc020da00, size 112 -mm_free: Freeing 0xc020d900 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020da20, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d920 __JS_FindAtom: clear -mm_malloc: Allocated 0xc020d900, size 80 -mm_free: Freeing 0xc020d9c0 -mm_malloc: Allocated 0xc020da70, size 128 -mm_free: Freeing 0xc020da00 +mm_malloc: Allocated 0xc020d920, size 80 +mm_free: Freeing 0xc020d9e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020da90, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020da20 __JS_FindAtom: size JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -4955,7 +9244,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d9c0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d9e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -4965,8 +9261,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020daf0, size 80 -mm_malloc: Allocated 0xc020da30, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020db10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020da50, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -4978,19 +9288,33 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d9c0 +mm_free: Freeing 0xc020d9e0 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020db40, size 160 -mm_free: Freeing 0xc020da70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020db60, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020da90 __JS_FindAtom: forEach __JS_FindAtom: values -mm_malloc: Allocated 0xc020dbe0, size 160 -mm_free: Freeing 0xc020d900 -mm_malloc: Allocated 0xc020dc80, size 208 -mm_free: Freeing 0xc020db40 +mm_malloc: Allocated 0xc020dc00, size 160 +mm_free: Freeing 0xc020d920 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dca0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020db60 __JS_FindAtom: keys __JS_FindAtom: values JS_NewCFunction3: 0= @@ -5000,7 +9324,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d900, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5010,8 +9341,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020d9c0, size 80 -mm_malloc: Allocated 0xc020da70, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d9e0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020da90, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5023,7 +9368,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d900 +mm_free: Freeing 0xc020d920 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a @@ -5032,8 +9377,15 @@ __JS_FindAtom: values JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: entries -mm_malloc: Allocated 0xc020dd50, size 240 -mm_free: Freeing 0xc020dc80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dd70, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020dca0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5041,7 +9393,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d900, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5051,8 +9410,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020daa0, size 80 -mm_malloc: Allocated 0xc020db40, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dac0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020db60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5064,13 +9437,27 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d900 +mm_free: Freeing 0xc020d920 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: groupBy -mm_malloc: Allocated 0xc020d900, size 112 -mm_malloc: Allocated 0xc020dc80, size 112 -mm_free: Freeing 0xc020d900 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dca0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d920 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5078,7 +9465,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d900, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5088,8 +9482,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020dcf0, size 80 -mm_malloc: Allocated 0xc020de40, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dd10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020de60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5101,21 +9509,28 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020d900 +mm_free: Freeing 0xc020d920 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020de70, size 128 -mm_free: Freeing 0xc020dc80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020de90, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020dca0 __JS_FindAtom: Set JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020dc80, size 112 -mm_free: Freeing 0xc020db40 -mm_free: Freeing 0xc020de70 +mm_malloc: Allocated 0xc020dca0, size 112 +mm_free: Freeing 0xc020db60 +mm_free: Freeing 0xc020de90 JS_DefineProperty: a JS_CreateProperty: a JS_NewObjectProtoClass: a= @@ -5124,7 +9539,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020d900, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020d920, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5134,20 +9556,55 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020db40, size 80 -mm_malloc: Allocated 0xc020de70, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020db60, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020de90, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: set __JS_FindAtom: get __JS_FindAtom: has -mm_malloc: Allocated 0xc020deb0, size 112 -mm_free: Freeing 0xc020d900 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ded0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020d920 __JS_FindAtom: delete -mm_malloc: Allocated 0xc020d900, size 80 -mm_free: Freeing 0xc020de70 -mm_malloc: Allocated 0xc020df20, size 128 -mm_free: Freeing 0xc020deb0 -mm_malloc: Allocated 0xc020de70, size 160 -mm_free: Freeing 0xc020df20 +mm_malloc: Allocated 0xc020d920, size 80 +mm_free: Freeing 0xc020de90 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020df40, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020ded0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020de90, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020df40 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5155,7 +9612,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020df20, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020df40, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5165,8 +9629,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020df90, size 80 -mm_malloc: Allocated 0xc020dfe0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020dfb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e000, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5178,7 +9656,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020df20 +mm_free: Freeing 0xc020df40 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: WeakMap @@ -5194,7 +9672,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020df20, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020df40, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5204,17 +9689,45 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e020, size 80 -mm_malloc: Allocated 0xc020e070, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e040, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: add __JS_FindAtom: has __JS_FindAtom: delete -mm_malloc: Allocated 0xc020e0b0, size 112 -mm_free: Freeing 0xc020df20 -mm_malloc: Allocated 0xc020df20, size 80 -mm_free: Freeing 0xc020e070 -mm_malloc: Allocated 0xc020e120, size 128 -mm_free: Freeing 0xc020e0b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e0d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020df40 +mm_malloc: Allocated 0xc020df40, size 80 +mm_free: Freeing 0xc020e090 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e140, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e0d0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5222,7 +9735,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5232,8 +9752,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e1a0, size 80 -mm_malloc: Allocated 0xc020e0e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e1c0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e100, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5245,7 +9779,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020e070 +mm_free: Freeing 0xc020e090 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: WeakSet @@ -5255,15 +9789,29 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020e1f0, size 160 -mm_free: Freeing 0xc020e120 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e210, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e140 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5273,17 +9821,38 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e120, size 80 -mm_malloc: Allocated 0xc020e170, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e140, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e190, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next -mm_free: Freeing 0xc020e070 +mm_free: Freeing 0xc020e090 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5293,17 +9862,38 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e290, size 80 -mm_malloc: Allocated 0xc020e2e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e2b0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e300, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next -mm_free: Freeing 0xc020e070 +mm_free: Freeing 0xc020e090 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5313,10 +9903,28 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e310, size 80 -mm_malloc: Allocated 0xc020e360, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e330, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e380, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: byteLength -mm_malloc: Allocated 0xc020e390, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e3b0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5324,7 +9932,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e3c0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e3e0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5334,30 +9949,55 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e430, size 80 -mm_malloc: Allocated 0xc020e480, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e450, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e4a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get byteLength -mm_malloc: Allocated 0xc020e4b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e4d0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020e3c0 +mm_free: Freeing 0xc020e3e0 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: slice -mm_malloc: Allocated 0xc020e3c0, size 64 -mm_free: Freeing 0xc020e360 -mm_malloc: Allocated 0xc020e4e0, size 112 -mm_free: Freeing 0xc020e070 +mm_malloc: Allocated 0xc020e3e0, size 64 +mm_free: Freeing 0xc020e380 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e090 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5365,7 +10005,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5375,8 +10022,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e550, size 80 -mm_malloc: Allocated 0xc020e360, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e570, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e380, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5388,7 +10049,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020e070 +mm_free: Freeing 0xc020e090 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: ArrayBuffer @@ -5396,17 +10057,42 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020e070, size 64 -mm_free: Freeing 0xc020e360 +mm_malloc: Allocated 0xc020e090, size 64 +mm_free: Freeing 0xc020e380 JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020e5a0, size 128 -mm_free: Freeing 0xc020e4e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e5c0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e500 __JS_FindAtom: isView -mm_malloc: Allocated 0xc020e410, size 32 -mm_malloc: Allocated 0xc020e4e0, size 112 -mm_malloc: Allocated 0xc020e620, size 128 -mm_free: Freeing 0xc020e4e0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e430, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e640, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e500 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5414,7 +10100,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e4e0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5424,8 +10117,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e6a0, size 80 -mm_malloc: Allocated 0xc020e360, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e6c0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e380, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5437,20 +10144,34 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020e4e0 +mm_free: Freeing 0xc020e500 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020e6f0, size 160 -mm_free: Freeing 0xc020e620 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e710, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e640 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e4e0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5460,8 +10181,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e620, size 80 -mm_malloc: Allocated 0xc020e670, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e640, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e690, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: byteLength JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -5469,10 +10204,21 @@ JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= -mm_malloc: Allocated 0xc020e790, size 1040 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e7b0, size 1040 +js_def_malloc: c= +js_def_malloc: d= mm_free: Freeing 0xc02088d0 js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02088d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5482,8 +10228,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208940, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208990, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5502,9 +10262,16 @@ JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: slice mm_malloc: Allocated 0xc02088d0, size 64 -mm_free: Freeing 0xc020e670 +mm_free: Freeing 0xc020e690 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 -mm_free: Freeing 0xc020e4e0 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020e500 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5512,7 +10279,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020e4e0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5522,8 +10296,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208a30, size 80 -mm_malloc: Allocated 0xc020e670, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e690, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5535,20 +10323,27 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020e4e0 +mm_free: Freeing 0xc020e500 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: SharedArrayBuffer JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020eba0, size 1024 +mm_malloc: Allocated 0xc020ebc0, size 1024 mm_free: Freeing 0xc020aa70 -mm_malloc: Allocated 0xc020efa0, size 832 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020efc0, size 832 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020a490 JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc0208a80, size 64 -mm_free: Freeing 0xc020e670 +mm_free: Freeing 0xc020e690 JS_DefineProperty: a JS_CreateProperty: a mm_free: Freeing 0xc02089c0 @@ -5559,7 +10354,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5569,8 +10371,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020e4e0, size 80 -mm_malloc: Allocated 0xc020e670, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e500, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e690, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5593,7 +10409,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5603,8 +10426,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a490, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a4e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: length JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -5613,7 +10450,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a510, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5623,15 +10467,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a580, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a5d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get length +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a600, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -5644,10 +10506,21 @@ JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: at __JS_FindAtom: with +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a630, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc02089c0 __JS_FindAtom: buffer -mm_malloc: Allocated 0xc020e530, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020e550, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5655,7 +10528,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5665,15 +10545,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a520, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a6a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get buffer +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a6d0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -5686,7 +10584,14 @@ JS_DefineProperty: a JS_CreateProperty: a mm_malloc: Allocated 0xc02089c0, size 80 mm_free: Freeing 0xc020a4e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020aa70, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020a630 __JS_FindAtom: byteLength JS_NewCFunction3: 0= @@ -5696,7 +10601,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a630, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5706,8 +10618,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020aaf0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a700, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5724,10 +10650,21 @@ JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ab40, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020aa70 __JS_FindAtom: byteOffset +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a4e0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5735,7 +10672,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a630, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5745,15 +10689,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020aa70, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020aac0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get byteOffset +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020abe0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -5767,7 +10729,14 @@ JS_CreateProperty: a __JS_FindAtom: set mm_malloc: Allocated 0xc020ac10, size 160 mm_free: Freeing 0xc02089c0 -mm_malloc: Allocated 0xc020f2e0, size 208 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f300, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ab40 __JS_FindAtom: values __JS_FindAtom: values @@ -5778,7 +10747,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5788,8 +10764,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020acb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a630, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5807,10 +10797,17 @@ JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: keys -mm_malloc: Allocated 0xc020f3b0, size 224 +mm_malloc: Allocated 0xc020f3d0, size 224 mm_free: Freeing 0xc020ac10 -mm_malloc: Allocated 0xc020f490, size 240 -mm_free: Freeing 0xc020f2e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f4b0, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f300 __JS_FindAtom: entries JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -5819,7 +10816,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5829,15 +10833,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ac10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020a660, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: get [Symbol.toStringTag] +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ac60, size 64 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -5850,16 +10872,30 @@ JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: copyWithin __JS_FindAtom: every -mm_malloc: Allocated 0xc020f580, size 352 -mm_free: Freeing 0xc020f490 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f5a0, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f4b0 __JS_FindAtom: some __JS_FindAtom: forEach __JS_FindAtom: map __JS_FindAtom: filter __JS_FindAtom: reduce __JS_FindAtom: reduceRight -mm_malloc: Allocated 0xc020f6e0, size 432 -mm_free: Freeing 0xc020f580 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f700, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f5a0 __JS_FindAtom: fill __JS_FindAtom: find __JS_FindAtom: findIndex @@ -5869,9 +10905,20 @@ __JS_FindAtom: reverse __JS_FindAtom: toReversed __JS_FindAtom: slice __JS_FindAtom: subarray +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089c0, size 48 -mm_malloc: Allocated 0xc020f890, size 672 -mm_free: Freeing 0xc020f6e0 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f8b0, size 672 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f700 __JS_FindAtom: sort __JS_FindAtom: toSorted __JS_FindAtom: join @@ -5886,7 +10933,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ab40, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5896,8 +10950,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020f590, size 80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f5b0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020abb0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5921,7 +10989,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ab40, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5931,15 +11006,33 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020f5e0, size 80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f600, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: TypedArray -mm_malloc: Allocated 0xc020f630, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f650, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a @@ -5949,15 +11042,40 @@ mm_free: Freeing 0xc020ab40 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: from +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ab40, size 112 -mm_malloc: Allocated 0xc020f660, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f680, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= mm_free: Freeing 0xc020ab40 __JS_FindAtom: of +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020ad00, size 32 +js_def_malloc: c= +js_def_malloc: d= mm_malloc: Allocated 0xc020ab40, size 80 mm_free: Freeing 0xc02089f0 -mm_malloc: Allocated 0xc020f6d0, size 128 -mm_free: Freeing 0xc020f660 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f6f0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f680 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -5965,7 +11083,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020f660, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f680, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -5975,8 +11100,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020f750, size 80 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f770, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc02089f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -5988,13 +11127,20 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020f660 +mm_free: Freeing 0xc020f680 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020f7a0, size 160 -mm_free: Freeing 0xc020f6d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f7c0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020f6f0 JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a @@ -6005,7 +11151,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020f660, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f680, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6015,10 +11168,28 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020f840, size 80 -mm_malloc: Allocated 0xc020f6d0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f860, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f6f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT -mm_malloc: Allocated 0xc020f700, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f720, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_DefineProperty: a JS_CreateProperty: a JS_NewCFunction3: 0= @@ -6028,7 +11199,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fb30, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fb50, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6038,8 +11216,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020fba0, size 80 -mm_malloc: Allocated 0xc020fbf0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fbc0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fc10, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6058,24 +11250,45 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fc30, size 112 -mm_free: Freeing 0xc020fb30 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fc50, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020fb50 JS_DefineProperty: a JS_CreateProperty: a __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fb30, size 80 -mm_free: Freeing 0xc020fbf0 -mm_malloc: Allocated 0xc020fca0, size 128 -mm_free: Freeing 0xc020fc30 +mm_malloc: Allocated 0xc020fb50, size 80 +mm_free: Freeing 0xc020fc10 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fcc0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020fc50 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fbf0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fc10, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6085,8 +11298,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020fd20, size 80 -mm_malloc: Allocated 0xc020fc60, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fd40, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fc80, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6097,7 +11324,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fd70, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fd90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6107,8 +11341,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020fde0, size 80 -mm_malloc: Allocated 0xc020fe30, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fe00, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fe50, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6127,24 +11375,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fe70, size 112 -mm_free: Freeing 0xc020fd70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fe90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020fd90 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020fbf0 +mm_free: Freeing 0xc020fc10 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fbf0, size 80 -mm_free: Freeing 0xc020fe30 -mm_free: Freeing 0xc020fe70 +mm_malloc: Allocated 0xc020fc10, size 80 +mm_free: Freeing 0xc020fe50 +mm_free: Freeing 0xc020fe90 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fd70, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fd90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6154,8 +11416,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020fe30, size 80 -mm_malloc: Allocated 0xc020fe80, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fe50, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fea0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6166,7 +11442,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020feb0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fed0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6176,8 +11459,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020ff20, size 80 -mm_malloc: Allocated 0xc020ff70, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ff40, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ff90, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6196,24 +11493,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020ffb0, size 112 -mm_free: Freeing 0xc020feb0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ffd0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc020fed0 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020fd70 +mm_free: Freeing 0xc020fd90 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fd70, size 80 -mm_free: Freeing 0xc020ff70 -mm_free: Freeing 0xc020ffb0 +mm_malloc: Allocated 0xc020fd90, size 80 +mm_free: Freeing 0xc020ff90 +mm_free: Freeing 0xc020ffd0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020feb0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fed0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6223,8 +11534,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc020ff70, size 80 -mm_malloc: Allocated 0xc020ffc0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ff90, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ffe0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6235,7 +11560,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fff0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210010, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6245,8 +11577,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210060, size 80 -mm_malloc: Allocated 0xc02100b0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210080, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02100d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6265,24 +11611,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02100f0, size 112 -mm_free: Freeing 0xc020fff0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210110, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210010 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020feb0 +mm_free: Freeing 0xc020fed0 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020feb0, size 80 -mm_free: Freeing 0xc02100b0 -mm_free: Freeing 0xc02100f0 +mm_malloc: Allocated 0xc020fed0, size 80 +mm_free: Freeing 0xc02100d0 +mm_free: Freeing 0xc0210110 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc020fff0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210010, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6292,8 +11652,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02100b0, size 80 -mm_malloc: Allocated 0xc0210100, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02100d0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210120, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6304,7 +11678,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210130, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210150, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6314,8 +11695,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02101a0, size 80 -mm_malloc: Allocated 0xc02101f0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02101c0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210210, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6334,24 +11729,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210230, size 112 -mm_free: Freeing 0xc0210130 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210250, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210150 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc020fff0 +mm_free: Freeing 0xc0210010 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc020fff0, size 80 -mm_free: Freeing 0xc02101f0 -mm_free: Freeing 0xc0210230 +mm_malloc: Allocated 0xc0210010, size 80 +mm_free: Freeing 0xc0210210 +mm_free: Freeing 0xc0210250 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210130, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210150, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6361,8 +11770,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02101f0, size 80 -mm_malloc: Allocated 0xc0210240, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210210, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210260, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6373,7 +11796,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210270, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210290, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6383,8 +11813,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02102e0, size 80 -mm_malloc: Allocated 0xc0210330, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210300, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210350, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6403,24 +11847,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210370, size 112 -mm_free: Freeing 0xc0210270 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210390, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210290 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0210130 +mm_free: Freeing 0xc0210150 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210130, size 80 -mm_free: Freeing 0xc0210330 -mm_free: Freeing 0xc0210370 +mm_malloc: Allocated 0xc0210150, size 80 +mm_free: Freeing 0xc0210350 +mm_free: Freeing 0xc0210390 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210270, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210290, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6430,8 +11888,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210330, size 80 -mm_malloc: Allocated 0xc0210380, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210350, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02103a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6442,7 +11914,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02103b0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02103d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6452,8 +11931,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210420, size 80 -mm_malloc: Allocated 0xc0210470, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210440, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210490, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6472,24 +11965,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02104b0, size 112 -mm_free: Freeing 0xc02103b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02104d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02103d0 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0210270 +mm_free: Freeing 0xc0210290 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210270, size 80 -mm_free: Freeing 0xc0210470 -mm_free: Freeing 0xc02104b0 +mm_malloc: Allocated 0xc0210290, size 80 +mm_free: Freeing 0xc0210490 +mm_free: Freeing 0xc02104d0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02103b0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02103d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6499,8 +12006,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210470, size 80 -mm_malloc: Allocated 0xc02104c0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210490, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02104e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6511,7 +12032,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02104f0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210510, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6521,8 +12049,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210560, size 80 -mm_malloc: Allocated 0xc02105b0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210580, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02105d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6541,24 +12083,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02105f0, size 112 -mm_free: Freeing 0xc02104f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210610, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210510 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc02103b0 +mm_free: Freeing 0xc02103d0 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02103b0, size 80 -mm_free: Freeing 0xc02105b0 -mm_free: Freeing 0xc02105f0 +mm_malloc: Allocated 0xc02103d0, size 80 +mm_free: Freeing 0xc02105d0 +mm_free: Freeing 0xc0210610 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02104f0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210510, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6568,8 +12124,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02105b0, size 80 -mm_malloc: Allocated 0xc0210600, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02105d0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210620, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6580,7 +12150,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210630, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210650, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6590,8 +12167,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02106a0, size 80 -mm_malloc: Allocated 0xc02106f0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02106c0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210710, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6610,24 +12201,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210730, size 112 -mm_free: Freeing 0xc0210630 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210750, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210650 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc02104f0 +mm_free: Freeing 0xc0210510 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02104f0, size 80 -mm_free: Freeing 0xc02106f0 -mm_free: Freeing 0xc0210730 +mm_malloc: Allocated 0xc0210510, size 80 +mm_free: Freeing 0xc0210710 +mm_free: Freeing 0xc0210750 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210630, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210650, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6637,8 +12242,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02106f0, size 80 -mm_malloc: Allocated 0xc0210740, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210710, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210760, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6649,7 +12268,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210770, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210790, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6659,8 +12285,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02107e0, size 80 -mm_malloc: Allocated 0xc0210830, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210800, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210850, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6679,24 +12319,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210870, size 112 -mm_free: Freeing 0xc0210770 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210890, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210790 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0210630 +mm_free: Freeing 0xc0210650 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210630, size 80 -mm_free: Freeing 0xc0210830 -mm_free: Freeing 0xc0210870 +mm_malloc: Allocated 0xc0210650, size 80 +mm_free: Freeing 0xc0210850 +mm_free: Freeing 0xc0210890 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0210770, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210790, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6706,8 +12360,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210830, size 80 -mm_malloc: Allocated 0xc0210880, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210850, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02108a0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a @@ -6718,7 +12386,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02108b0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02108d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6728,8 +12403,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210920, size 80 -mm_malloc: Allocated 0xc0210970, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210940, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210990, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6748,24 +12437,38 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc02109b0, size 112 -mm_free: Freeing 0xc02108b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02109d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02108d0 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0210770 +mm_free: Freeing 0xc0210790 __JS_FindAtom: BYTES_PER_ELEMENT JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210770, size 80 -mm_free: Freeing 0xc0210970 -mm_free: Freeing 0xc02109b0 +mm_malloc: Allocated 0xc0210790, size 80 +mm_free: Freeing 0xc0210990 +mm_free: Freeing 0xc02109d0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02108b0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02108d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6775,8 +12478,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210970, size 80 -mm_malloc: Allocated 0xc02109c0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210990, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02109e0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: buffer JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= @@ -6785,7 +12502,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02109f0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a10, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6795,8 +12519,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210a60, size 80 -mm_malloc: Allocated 0xc0210ab0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a80, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210ad0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6808,7 +12546,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc02109f0 +mm_free: Freeing 0xc0210a10 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a @@ -6821,7 +12559,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02109f0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a10, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6831,8 +12576,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210ae0, size 80 -mm_malloc: Allocated 0xc0210b30, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210b00, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210b50, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6844,7 +12603,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc02109f0 +mm_free: Freeing 0xc0210a10 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a @@ -6857,7 +12616,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02109f0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a10, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6867,8 +12633,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0210b60, size 80 -mm_malloc: Allocated 0xc0210bb0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210b80, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210bd0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6880,69 +12660,198 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc02109f0 +mm_free: Freeing 0xc0210a10 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0210be0, size 112 -mm_free: Freeing 0xc02108b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210c00, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02108d0 __JS_FindAtom: getInt8 -mm_malloc: Allocated 0xc02107c0, size 32 -mm_malloc: Allocated 0xc0210c50, size 128 -mm_free: Freeing 0xc0210be0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02107e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210c70, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210c00 __JS_FindAtom: getUint8 -mm_malloc: Allocated 0xc0210a10, size 48 -mm_malloc: Allocated 0xc0210be0, size 112 -mm_free: Freeing 0xc02109c0 -mm_malloc: Allocated 0xc0210cd0, size 160 -mm_free: Freeing 0xc0210c50 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a30, size 48 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0210c00, size 112 +mm_free: Freeing 0xc02109e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210cf0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210c70 __JS_FindAtom: getInt16 -mm_malloc: Allocated 0xc02109c0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02109e0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUint16 -mm_malloc: Allocated 0xc02108b0, size 48 -mm_malloc: Allocated 0xc0210d70, size 208 -mm_free: Freeing 0xc0210cd0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02108d0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210d90, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210cf0 __JS_FindAtom: getInt32 -mm_malloc: Allocated 0xc02108e0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210900, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getUint32 -mm_malloc: Allocated 0xc0210c80, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210ca0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getBigInt64 -mm_malloc: Allocated 0xc0210cb0, size 48 -mm_malloc: Allocated 0xc0210e40, size 224 -mm_free: Freeing 0xc0210be0 -mm_malloc: Allocated 0xc0210f20, size 240 -mm_free: Freeing 0xc0210d70 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210cd0, size 48 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0210e60, size 224 +mm_free: Freeing 0xc0210c00 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210f40, size 240 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210d90 __JS_FindAtom: getBigUint64 -mm_malloc: Allocated 0xc0210be0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210c00, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getFloat32 -mm_malloc: Allocated 0xc0210c10, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210c30, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getFloat64 -mm_malloc: Allocated 0xc0210c40, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210c60, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setInt8 -mm_malloc: Allocated 0xc02109f0, size 32 -mm_malloc: Allocated 0xc0211010, size 352 -mm_free: Freeing 0xc0210f20 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a10, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211030, size 352 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0210f40 __JS_FindAtom: setUint8 -mm_malloc: Allocated 0xc0210f20, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210f40, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setInt16 -mm_malloc: Allocated 0xc0210f50, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210f70, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUint16 -mm_malloc: Allocated 0xc0210f80, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210fa0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setInt32 -mm_malloc: Allocated 0xc0210fb0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210fd0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setUint32 -mm_malloc: Allocated 0xc0210fe0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211000, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setBigInt64 -mm_malloc: Allocated 0xc0210ce0, size 48 -mm_malloc: Allocated 0xc0211170, size 432 -mm_free: Freeing 0xc0211010 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210d00, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211190, size 432 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211030 __JS_FindAtom: setBigUint64 -mm_malloc: Allocated 0xc0210d10, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210d30, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setFloat32 -mm_malloc: Allocated 0xc0211010, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211030, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setFloat64 -mm_malloc: Allocated 0xc0211040, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211060, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -6950,7 +12859,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6960,8 +12876,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02110e0, size 80 -mm_malloc: Allocated 0xc0211130, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211100, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211150, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -6973,7 +12903,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0211070 +mm_free: Freeing 0xc0211090 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: DataView @@ -6989,7 +12919,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211070, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211090, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -6999,17 +12936,45 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211320, size 80 -mm_malloc: Allocated 0xc0211370, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211340, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211390, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: then __JS_FindAtom: catch __JS_FindAtom: finally -mm_malloc: Allocated 0xc02113b0, size 112 -mm_free: Freeing 0xc0211070 -mm_malloc: Allocated 0xc0211070, size 80 -mm_free: Freeing 0xc0211370 -mm_malloc: Allocated 0xc0211420, size 128 -mm_free: Freeing 0xc02113b0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02113d0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211090 +mm_malloc: Allocated 0xc0211090, size 80 +mm_free: Freeing 0xc0211390 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211440, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02113d0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7017,7 +12982,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211370, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211390, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7027,8 +12999,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02114a0, size 80 -mm_malloc: Allocated 0xc02113e0, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02114c0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211400, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -7040,32 +13026,89 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0211370 +mm_free: Freeing 0xc0211390 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: resolve -mm_malloc: Allocated 0xc0211370, size 112 -mm_malloc: Allocated 0xc02114f0, size 112 -mm_free: Freeing 0xc0211370 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211390, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211510, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211390 __JS_FindAtom: reject -mm_malloc: Allocated 0xc0211560, size 128 -mm_free: Freeing 0xc02114f0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211580, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211510 __JS_FindAtom: all -mm_malloc: Allocated 0xc02110c0, size 32 -mm_malloc: Allocated 0xc02115e0, size 160 -mm_free: Freeing 0xc0211560 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02110e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211600, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211580 __JS_FindAtom: allSettled -mm_malloc: Allocated 0xc0211370, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211390, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: any -mm_malloc: Allocated 0xc0210a40, size 32 -mm_malloc: Allocated 0xc02114f0, size 160 -mm_free: Freeing 0xc02113b0 -mm_malloc: Allocated 0xc0211680, size 208 -mm_free: Freeing 0xc02115e0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210a60, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0211510, size 160 +mm_free: Freeing 0xc02113d0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02116a0, size 208 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211600 __JS_FindAtom: race -mm_malloc: Allocated 0xc0210680, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02106a0, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0211770, size 5696 +mm_free: Freeing 0xc02095b0 __JS_FindAtom: withResolvers -mm_malloc: Allocated 0xc02113b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02113d0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7073,7 +13116,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211590, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02115b0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7083,8 +13133,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211600, size 80 -mm_malloc: Allocated 0xc0211650, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211620, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211670, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -7096,13 +13160,20 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0211590 +mm_free: Freeing 0xc02115b0 JS_NewCFunction3: c= JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211750, size 240 -mm_free: Freeing 0xc0211680 +js_malloc: a=ÿÕ +js_def_malloc: a=ÿÕ +js_def_malloc: b=ÿÕ +mm_malloc: Allocated 0xc02095b0, size 240 +js_def_malloc: c=ÿÕ +js_def_malloc: d=ÿÕ +js_malloc: b=ÿÕ +js_malloc: d=ÿÕ +mm_free: Freeing 0xc02116a0 __JS_FindAtom: Promise JS_DefineProperty: a JS_CreateProperty: a @@ -7110,64 +13181,120 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211680, size 112 -mm_free: Freeing 0xc0211070 -mm_malloc: Allocated 0xc0211840, size 160 -mm_free: Freeing 0xc0211420 -JS_NewObjectProtoClass: a=ÿ -JS_NewObjectProtoClass: b=ÿ -JS_NewObjectProtoClass: c=ÿ -JS_NewObjectProtoClass: f=ÿ -js_new_shape2: a=ÿ -js_new_shape2: b=ÿ -mm_malloc: Allocated 0xc02113e0, size 112 -js_new_shape2: c=ÿ -js_new_shape2: d=ÿ -js_new_shape2: e=ÿ -js_new_shape2: f=ÿ -js_new_shape2: g=ÿ -js_new_shape2: h=ÿ -js_new_shape2: i=ÿ -JS_NewObjectProtoClass: g=ÿ -JS_NewObjectProtoClass: h=ÿ -mm_malloc: Allocated 0xc0211450, size 80 -mm_malloc: Allocated 0xc02115d0, size 48 -JS_NewCFunction3: 0=ÿ -JS_NewObjectProtoClass: a=ÿ -JS_NewObjectProtoClass: b=ÿ -JS_NewObjectProtoClass: c=ÿ -JS_NewObjectProtoClass: f=ÿ -js_new_shape2: a=ÿ -js_new_shape2: b=ÿ -mm_malloc: Allocated 0xc02118e0, size 112 -js_new_shape2: c=ÿ -js_new_shape2: d=ÿ -js_new_shape2: e=ÿ -js_new_shape2: f=ÿ -js_new_shape2: g=ÿ -js_new_shape2: h=ÿ -js_new_shape2: i=ÿ -JS_NewObjectProtoClass: g=ÿ -JS_NewObjectProtoClass: h=ÿ -mm_malloc: Allocated 0xc0211070, size 80 -mm_malloc: Allocated 0xc02116f0, size 48 -JS_NewCFunction3: 1=ÿ -JS_NewCFunction3: 2=ÿ -JS_NewCFunction3: 3=ÿ -JS_NewCFunction3: 4=ÿ -JS_NewCFunction3: a=ÿ +mm_malloc: Allocated 0xc02116a0, size 112 +mm_free: Freeing 0xc0211090 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02096a0, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0211440 +JS_NewObjectProtoClass: a= +JS_NewObjectProtoClass: b= +JS_NewObjectProtoClass: c= +JS_NewObjectProtoClass: f= +js_new_shape2: a= +js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211400, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_new_shape2: c= +js_new_shape2: d= +js_new_shape2: e= +js_new_shape2: f= +js_new_shape2: g= +js_new_shape2: h= +js_new_shape2: i= +JS_NewObjectProtoClass: g= +JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211470, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02115f0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +JS_NewCFunction3: 0= +JS_NewObjectProtoClass: a= +JS_NewObjectProtoClass: b= +JS_NewObjectProtoClass: c= +JS_NewObjectProtoClass: f= +js_new_shape2: a= +js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209740, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_new_shape2: c= +js_new_shape2: d= +js_new_shape2: e= +js_new_shape2: f= +js_new_shape2: g= +js_new_shape2: h= +js_new_shape2: i= +JS_NewObjectProtoClass: g= +JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211090, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211710, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +JS_NewCFunction3: 1= +JS_NewCFunction3: 2= +JS_NewCFunction3: 3= +JS_NewCFunction3: 4= +JS_NewCFunction3: a= __JS_FindAtom: AsyncFunction -JS_NewCFunction3: b=ÿ +JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -JS_NewCFunction3: c=ÿ -JS_NewCFunction3: d=ÿ +JS_NewCFunction3: c= +JS_NewCFunction3: d= JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211950, size 112 -mm_free: Freeing 0xc02118e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02097b0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0209740 JS_DefineProperty: a JS_CreateProperty: a JS_NewObjectProtoClass: a= @@ -7176,7 +13303,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc02118e0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209740, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7186,15 +13320,36 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02119c0, size 80 -mm_malloc: Allocated 0xc0211a10, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209820, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209870, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211a40, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7204,20 +13359,48 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211ab0, size 80 -mm_malloc: Allocated 0xc0211b00, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209910, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209960, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next __JS_FindAtom: return __JS_FindAtom: throw -mm_malloc: Allocated 0xc0211b40, size 112 -mm_free: Freeing 0xc0211a40 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02099a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02098a0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211a40, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7227,22 +13410,57 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211bb0, size 80 -mm_malloc: Allocated 0xc0211c00, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209a10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209a60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: next __JS_FindAtom: return __JS_FindAtom: throw -mm_free: Freeing 0xc0211a40 -mm_malloc: Allocated 0xc0211a40, size 112 -mm_malloc: Allocated 0xc0211c50, size 128 -mm_free: Freeing 0xc0211a40 +mm_free: Freeing 0xc02098a0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209ab0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02098a0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211a40, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7252,8 +13470,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211cd0, size 80 -mm_malloc: Allocated 0xc0211d20, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209b30, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209b80, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7261,7 +13493,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211d50, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209bb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7271,8 +13510,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211dc0, size 80 -mm_malloc: Allocated 0xc0211e10, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c20, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -7290,25 +13543,39 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211e40, size 112 -mm_free: Freeing 0xc0211c00 -mm_malloc: Allocated 0xc0211eb0, size 160 -mm_free: Freeing 0xc0211c50 +mm_malloc: Allocated 0xc0209ca0, size 112 +mm_free: Freeing 0xc0209a60 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209d10, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0209ab0 JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211c00, size 64 -mm_free: Freeing 0xc0211e10 -mm_free: Freeing 0xc0211d50 +mm_malloc: Allocated 0xc0209a60, size 64 +mm_free: Freeing 0xc0209c70 +mm_free: Freeing 0xc0209bb0 JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0211a40 +mm_free: Freeing 0xc02098a0 JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211a40, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7318,14 +13585,35 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211d60, size 80 -mm_malloc: Allocated 0xc0211e10, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209bc0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: toString __JS_FindAtom: valueOf -mm_malloc: Allocated 0xc0211c40, size 64 -mm_free: Freeing 0xc0211e10 -mm_malloc: Allocated 0xc0211f50, size 112 -mm_free: Freeing 0xc0211a40 +mm_malloc: Allocated 0xc0209aa0, size 64 +mm_free: Freeing 0xc0209c70 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209db0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc02098a0 JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7333,7 +13621,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0211a40, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7343,8 +13638,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0211c80, size 80 -mm_malloc: Allocated 0xc0211e10, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209ae0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c70, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= @@ -7356,7 +13665,7 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0211a40 +mm_free: Freeing 0xc02098a0 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: BigInt @@ -7364,247 +13673,681 @@ JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211a40, size 64 -mm_free: Freeing 0xc0211e10 +mm_malloc: Allocated 0xc02098a0, size 64 +mm_free: Freeing 0xc0209c70 JS_DefineProperty: a JS_CreateProperty: a -mm_malloc: Allocated 0xc0211fc0, size 80 -mm_free: Freeing 0xc0211c40 -mm_malloc: Allocated 0xc0212010, size 128 -mm_free: Freeing 0xc0211f50 +mm_malloc: Allocated 0xc0209e20, size 80 +mm_free: Freeing 0xc0209aa0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209e70, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0209db0 __JS_FindAtom: asUintN -mm_malloc: Allocated 0xc0211730, size 32 -mm_malloc: Allocated 0xc0212090, size 5696 -mm_free: Freeing 0xc02095b0 -mm_malloc: Allocated 0xc0211f50, size 112 -mm_malloc: Allocated 0xc02095b0, size 128 -mm_free: Freeing 0xc0211f50 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0211750, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209db0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209ef0, size 128 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0209db0 __JS_FindAtom: asIntN -mm_malloc: Allocated 0xc0211a90, size 32 -mm_malloc: Allocated 0xc0211f50, size 112 -mm_free: Freeing 0xc0211a40 -mm_malloc: Allocated 0xc0209630, size 160 -mm_free: Freeing 0xc02095b0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098f0, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0209db0, size 112 +mm_free: Freeing 0xc02098a0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209f70, size 160 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +mm_free: Freeing 0xc0209ef0 JS_NewCustomContext: b= __JS_FindAtom: std -mm_malloc: Allocated 0xc0210540, size 32 -mm_malloc: Allocated 0xc02096d0, size 288 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210560, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a010, size 288 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: exit -mm_malloc: Allocated 0xc0210400, size 32 -mm_malloc: Allocated 0xc0211e10, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210420, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c70, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: gc -mm_malloc: Allocated 0xc02102c0, size 32 -mm_malloc: Allocated 0xc0211a40, size 80 -mm_free: Freeing 0xc0211e10 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02102e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc02098a0, size 80 +mm_free: Freeing 0xc0209c70 __JS_FindAtom: evalScript -mm_malloc: Allocated 0xc0211e10, size 48 -mm_malloc: Allocated 0xc02095b0, size 112 -mm_free: Freeing 0xc0211a40 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209c70, size 48 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0209ef0, size 112 +mm_free: Freeing 0xc02098a0 __JS_FindAtom: loadScript -mm_malloc: Allocated 0xc0211c40, size 48 -mm_malloc: Allocated 0xc02097f0, size 144 -mm_free: Freeing 0xc02095b0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209aa0, size 48 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc020a130, size 144 +mm_free: Freeing 0xc0209ef0 __JS_FindAtom: getenv -mm_malloc: Allocated 0xc0210180, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02101a0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setenv -mm_malloc: Allocated 0xc0210040, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0210060, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: unsetenv -mm_malloc: Allocated 0xc0211a40, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098a0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getenviron -mm_malloc: Allocated 0xc02095b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209ef0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: urlGet -mm_malloc: Allocated 0xc0211a70, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02098d0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: loadFile -mm_malloc: Allocated 0xc02095e0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209f20, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: strerror -mm_malloc: Allocated 0xc02099a0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a2e0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: parseExtJSON -mm_malloc: Allocated 0xc02099d0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a310, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: open -mm_malloc: Allocated 0xc0209610, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0209f50, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: popen -mm_malloc: Allocated 0xc020ff00, size 32 -mm_malloc: Allocated 0xc0209a00, size 624 -mm_free: Freeing 0xc02097f0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020ff20, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0212db0, size 624 +mm_free: Freeing 0xc020a130 __JS_FindAtom: fdopen -mm_malloc: Allocated 0xc020fdc0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fde0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: tmpfile -mm_malloc: Allocated 0xc020fc40, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fc60, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: puts -mm_malloc: Allocated 0xc020fb80, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020fba0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: printf -mm_malloc: Allocated 0xc020f730, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020f750, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sprintf +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc0208920, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SEEK_SET -mm_malloc: Allocated 0xc02097f0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a340, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SEEK_CUR -mm_malloc: Allocated 0xc0209820, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a370, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SEEK_END -mm_malloc: Allocated 0xc0209850, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a3a0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: Error __JS_FindAtom: in __JS_FindAtom: out -mm_malloc: Allocated 0xc020da10, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020da30, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: err +js_def_malloc: a= +js_def_malloc: b= mm_malloc: Allocated 0xc020d310, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: os -mm_malloc: Allocated 0xc0209880, size 32 -mm_malloc: Allocated 0xc0209d90, size 288 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a3d0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a130, size 288 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: open -mm_malloc: Allocated 0xc02098a0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a250, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: O_RDONLY -mm_malloc: Allocated 0xc02098d0, size 48 -mm_malloc: Allocated 0xc0209900, size 80 -mm_free: Freeing 0xc02098a0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a280, size 48 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc020a3f0, size 80 +mm_free: Freeing 0xc020a250 __JS_FindAtom: O_WRONLY -mm_malloc: Allocated 0xc02098a0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a250, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: O_RDWR -mm_malloc: Allocated 0xc0209970, size 32 -mm_malloc: Allocated 0xc0209eb0, size 144 -mm_free: Freeing 0xc0209900 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a460, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0213140, size 144 +mm_free: Freeing 0xc020a3f0 __JS_FindAtom: O_APPEND -mm_malloc: Allocated 0xc0209900, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a2b0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: O_CREAT -mm_malloc: Allocated 0xc0209930, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a3f0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: O_EXCL -mm_malloc: Allocated 0xc0209950, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a410, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: O_TRUNC -mm_malloc: Allocated 0xc0209fe0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc020a430, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: close -mm_malloc: Allocated 0xc020a000, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213270, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213290, size 2064 +js_def_malloc: c= +js_def_malloc: d= +mm_free: Freeing 0xc0200700 __JS_FindAtom: seek -mm_malloc: Allocated 0xc020a020, size 32 -mm_malloc: Allocated 0xc020a040, size 432 -mm_free: Freeing 0xc0209eb0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200700, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0200720, size 432 +mm_free: Freeing 0xc0213140 __JS_FindAtom: read -mm_malloc: Allocated 0xc0209eb0, size 32 -mm_malloc: Allocated 0xc02136d0, size 2064 -mm_free: Freeing 0xc0200700 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213140, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: write -mm_malloc: Allocated 0xc0209ed0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213160, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: isatty -mm_malloc: Allocated 0xc0209ef0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213180, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: ttyGetWinSize -mm_malloc: Allocated 0xc0209f10, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02131a0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: ttySetRaw -mm_malloc: Allocated 0xc0209f40, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02131d0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: remove -mm_malloc: Allocated 0xc0209f70, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213200, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: rename -mm_malloc: Allocated 0xc0209f90, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213220, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setReadHandler -mm_malloc: Allocated 0xc0209fb0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213240, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: setWriteHandler -mm_malloc: Allocated 0xc020a2b0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200990, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: signal -mm_malloc: Allocated 0xc020a2e0, size 32 -mm_malloc: Allocated 0xc0200700, size 912 -mm_free: Freeing 0xc020a040 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02009c0, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_malloc: Allocated 0xc0213aa0, size 912 +mm_free: Freeing 0xc0200720 __JS_FindAtom: SIGINT -mm_malloc: Allocated 0xc0200a90, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02009e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGABRT -mm_malloc: Allocated 0xc0200ab0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200a00, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGFPE -mm_malloc: Allocated 0xc0200ad0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200a20, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGILL -mm_malloc: Allocated 0xc0200af0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200a40, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGSEGV -mm_malloc: Allocated 0xc020a300, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200a60, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGTERM -mm_malloc: Allocated 0xc020a320, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200a80, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGQUIT -mm_malloc: Allocated 0xc020a340, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200aa0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGPIPE -mm_malloc: Allocated 0xc020a360, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200ac0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGALRM -mm_malloc: Allocated 0xc020a380, size 32 -mm_malloc: Allocated 0xc0213ee0, size 1360 -mm_free: Freeing 0xc0200700 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200ae0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGUSR1 -mm_malloc: Allocated 0xc020a3a0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200720, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGUSR2 -mm_malloc: Allocated 0xc020a3c0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200740, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGCHLD -mm_malloc: Allocated 0xc020a3e0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200760, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGCONT -mm_malloc: Allocated 0xc020a400, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200780, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGSTOP -mm_malloc: Allocated 0xc020a420, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02007a0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGTSTP -mm_malloc: Allocated 0xc020a440, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02007c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGTTIN -mm_malloc: Allocated 0xc020a460, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02007e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: SIGTTOU -mm_malloc: Allocated 0xc020a040, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200800, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: now __JS_FindAtom: setTimeout -mm_malloc: Allocated 0xc020a060, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200820, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: clearTimeout -mm_malloc: Allocated 0xc020a090, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200850, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sleepAsync -mm_malloc: Allocated 0xc020a0c0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200880, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: platform -mm_malloc: Allocated 0xc020a0f0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02008b0, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: getcwd -mm_malloc: Allocated 0xc020a120, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02008e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: chdir -mm_malloc: Allocated 0xc020a140, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200900, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: mkdir -mm_malloc: Allocated 0xc020a160, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200920, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: readdir -mm_malloc: Allocated 0xc020a180, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200940, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFMT -mm_malloc: Allocated 0xc020a1a0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0200960, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFIFO -mm_malloc: Allocated 0xc020a1c0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214290, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFCHR -mm_malloc: Allocated 0xc020a1e0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02142b0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFDIR -mm_malloc: Allocated 0xc020a200, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02142d0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFBLK -mm_malloc: Allocated 0xc020a220, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02142f0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFREG -mm_malloc: Allocated 0xc020a240, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214310, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFSOCK -mm_malloc: Allocated 0xc020a260, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214330, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_IFLNK -mm_malloc: Allocated 0xc020a290, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214360, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_ISGID -mm_malloc: Allocated 0xc0200700, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214380, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: S_ISUID -mm_malloc: Allocated 0xc0200720, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02143a0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: stat -mm_malloc: Allocated 0xc0200740, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02143c0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: utimes -mm_malloc: Allocated 0xc0200760, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02143e0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: sleep -mm_malloc: Allocated 0xc0200780, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214400, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: realpath -mm_malloc: Allocated 0xc02007a0, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214420, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: lstat -mm_malloc: Allocated 0xc02007d0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214450, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: symlink -mm_malloc: Allocated 0xc02007f0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214470, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: readlink -mm_malloc: Allocated 0xc0200810, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214490, size 48 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: exec +mm_malloc: Allocated 0xc02144c0, size 3024 +mm_free: Freeing 0xc0213aa0 __JS_FindAtom: getpid -mm_malloc: Allocated 0xc0200840, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213aa0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: waitpid -mm_malloc: Allocated 0xc0200860, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213ac0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: WNOHANG -mm_malloc: Allocated 0xc0200880, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213ae0, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: pipe -mm_malloc: Allocated 0xc02008a0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213b00, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: kill -mm_malloc: Allocated 0xc02008c0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213b20, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: dup -mm_malloc: Allocated 0xc02008e0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213b40, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: dup2 -mm_malloc: Allocated 0xc0200900, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213b60, size 32 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: Worker -mm_malloc: Allocated 0xc0200920, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213b80, size 32 +js_def_malloc: c= +js_def_malloc: d= main: expr9= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7612,7 +14355,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0200940, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213ba0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7622,8 +14372,22 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc02009b0, size 80 -mm_malloc: Allocated 0xc0200a00, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213c10, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213c60, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7631,7 +14395,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0214ab0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213c90, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7641,30 +14412,70 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0200a30, size 80 -mm_malloc: Allocated 0xc0214b20, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213d00, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213d50, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: log -mm_malloc: Allocated 0xc0214b50, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213d80, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0214ab0 +mm_free: Freeing 0xc0213c90 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: log __JS_FindAtom: console -mm_malloc: Allocated 0xc0214ab0, size 32 -mm_malloc: Allocated 0xc0214ad0, size 80 -mm_malloc: Allocated 0xc0214b70, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213c90, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213cb0, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213da0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= __JS_FindAtom: scriptArgs -mm_malloc: Allocated 0xc0214b90, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213dc0, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: 0= JS_NewObjectProtoClass: a= JS_NewObjectProtoClass: b= @@ -7672,7 +14483,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0214bc0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213df0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7682,21 +14500,39 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0214c30, size 80 -mm_malloc: Allocated 0xc0214c80, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e60, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213eb0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: print -mm_malloc: Allocated 0xc0214cb0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213ee0, size 32 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0214bc0 +mm_free: Freeing 0xc0213df0 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: print @@ -7707,7 +14543,14 @@ JS_NewObjectProtoClass: c= JS_NewObjectProtoClass: f= js_new_shape2: a= js_new_shape2: b= -mm_malloc: Allocated 0xc0214bc0, size 112 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213df0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= js_new_shape2: c= js_new_shape2: d= js_new_shape2: e= @@ -7717,168 +14560,163 @@ js_new_shape2: h= js_new_shape2: i= JS_NewObjectProtoClass: g= JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0214cd0, size 80 -mm_malloc: Allocated 0xc0214d20, size 48 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213f00, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213f50, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= JS_NewCFunction3: 1= JS_NewCFunction3: 2= JS_NewCFunction3: 3= JS_NewCFunction3: 4= JS_NewCFunction3: a= __JS_FindAtom: __loadScript -mm_malloc: Allocated 0xc0214d50, size 48 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213f80, size 48 +js_def_malloc: c= +js_def_malloc: d= JS_NewCFunction3: b= JS_DefineProperty: a JS_CreateProperty: a JS_DefineProperty: a JS_CreateProperty: a -mm_free: Freeing 0xc0214bc0 +mm_free: Freeing 0xc0213df0 JS_NewCFunction3: c= JS_NewCFunction3: d= __JS_FindAtom: __loadScript eval_buf: buf= JS_EvalThis: input= JS_EvalInternal: input= -mm_malloc: Allocated 0xc0214d80, size 560 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213fb0, size 560 +js_def_malloc: c= +js_def_malloc: d= __JS_FindAtom: -mm_malloc: Allocated 0xc0214bc0, size 48 -mm_malloc: Allocated 0xc0214bf0, size 32 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213df0, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e20, size 32 +js_def_malloc: c= +js_def_malloc: d= next_token: c0=0000000000000000 -mm_malloc: Allocated 0xc0214c10, size 32 -mm_malloc: Allocated 0xc0214fb0, size 32 -mm_free: Freeing 0xc0214bf0 -mm_malloc: Allocated 0xc0214bf0, size 32 -mm_malloc: Allocated 0xc0214fd0, size 32 -mm_free: Freeing 0xc0214bf0 -mm_free: Freeing 0xc0214fb0 -mm_malloc: Allocated 0xc0214fb0, size 32 -mm_malloc: Allocated 0xc0214bf0, size 32 -mm_malloc: Allocated 0xc0214ff0, size 32 -mm_free: Freeing 0xc0214ff0 -mm_free: Freeing 0xc0214bf0 -mm_free: Freeing 0xc0214fb0 -mm_malloc: Allocated 0xc0214ff0, size 160 -mm_free: Freeing 0xc0214fd0 -mm_free: Freeing 0xc0214c10 -mm_free: Freeing 0xc0214d80 -JS_NewObjectProtoClass: a= -JS_NewObjectProtoClass: b= -JS_NewObjectProtoClass: c= -JS_NewObjectProtoClass: f= -js_new_shape2: a= -js_new_shape2: b= -mm_malloc: Allocated 0xc0214d80, size 112 -js_new_shape2: c= -js_new_shape2: d= -js_new_shape2: e= -js_new_shape2: f= -js_new_shape2: g= -js_new_shape2: h= -js_new_shape2: i= -JS_NewObjectProtoClass: g= -JS_NewObjectProtoClass: h= -mm_malloc: Allocated 0xc0214df0, size 80 -mm_malloc: Allocated 0xc0214bf0, size 48 -JS_DefineProperty: a -JS_CreateProperty: a -JS_DefineProperty: a -JS_CreateProperty: a -mm_free: Freeing 0xc0214d80 -mm_free: Freeing 0xc0214bf0 -mm_free: Freeing 0xc0214df0 -mm_free: Freeing 0xc0214bc0 -mm_free: Freeing 0xc0214ff0 -mm_free: Freeing 0xc0200c80 -mm_free: Freeing 0xc0205640 -mm_free: Freeing 0xc0205760 -mm_free: Freeing 0xc0205730 -mm_free: Freeing 0xc020eba0 -mm_free: Freeing 0xc02082c0 -mm_free: Freeing 0xc02082f0 -mm_free: Freeing 0xc0207fe0 -mm_free: Freeing 0xc0208010 -mm_free: Freeing 0xc02078f0 -mm_free: Freeing 0xc0208040 -mm_free: Freeing 0xc0208070 -mm_free: Freeing 0xc0204390 -mm_free: Freeing 0xc0214ab0 -mm_free: Freeing 0xc0214b90 -mm_free: Freeing 0xc020efa0 -mm_free: Freeing 0xc02058f0 -mm_free: Freeing 0xc0200eb0 -mm_free: Freeing 0xc0205c80 -mm_free: Freeing 0xc0200c60 -mm_free: Freeing 0xc0205a80 -mm_free: Freeing 0xc0205ab0 -mm_free: Freeing 0xc0205b80 -mm_free: Freeing 0xc0205bb0 -mm_free: Freeing 0xc0205be0 -mm_free: Freeing 0xc0205b20 -mm_free: Freeing 0xc0205b50 -mm_free: Freeing 0xc0205e50 -mm_free: Freeing 0xc0205e90 -mm_free: Freeing 0xc0205eb0 -mm_free: Freeing 0xc0205c10 -mm_free: Freeing 0xc0205c30 -mm_free: Freeing 0xc0205c50 -mm_free: Freeing 0xc0205ed0 -mm_free: Freeing 0xc0205f00 -mm_free: Freeing 0xc0205f30 -mm_free: Freeing 0xc0205f60 -mm_free: Freeing 0xc02060a0 -mm_free: Freeing 0xc02063f0 -mm_free: Freeing 0xc0206000 -mm_free: Freeing 0xc02064a0 -mm_free: Freeing 0xc0206470 -mm_free: Freeing 0xc0206330 -mm_free: Freeing 0xc0205690 -mm_free: Freeing 0xc02066a0 -mm_free: Freeing 0xc02063b0 -mm_free: Freeing 0xc0201190 -mm_free: Freeing 0xc0201150 -mm_free: Freeing 0xc0206b20 -mm_free: Freeing 0xc02067d0 -mm_free: Freeing 0xc0200fa0 -mm_free: Freeing 0xc0206aa0 -mm_free: Freeing 0xc0206bb0 -mm_free: Freeing 0xc0206b70 -mm_free: Freeing 0xc0206c60 -mm_free: Freeing 0xc0204fc0 -mm_free: Freeing 0xc0206da0 -mm_free: Freeing 0xc0206d50 -mm_free: Freeing 0xc0205810 -mm_free: Freeing 0xc02057d0 -mm_free: Freeing 0xc0206e50 -mm_free: Freeing 0xc0206de0 -mm_free: Freeing 0xc0206d00 -mm_free: Freeing 0xc0206cb0 -mm_free: Freeing 0xc0207010 -mm_free: Freeing 0xc02070d0 -mm_free: Freeing 0xc0207080 -mm_free: Freeing 0xc0207110 -mm_free: Freeing 0xc0206ea0 -mm_free: Freeing 0xc0207180 -mm_free: Freeing 0xc0206ee0 -mm_free: Freeing 0xc0206bf0 -mm_free: Freeing 0xc0205470 -mm_free: Freeing 0xc0206fa0 -mm_free: Freeing 0xc0206a30 -mm_free: Freeing 0xc0206f50 -mm_free: Freeing 0xc0207960 -mm_free: Freeing 0xc02074e0 -mm_free: Freeing 0xc02073f0 -mm_free: Freeing 0xc0207410 -mm_free: Freeing 0xc0207430 -mm_free: Freeing 0xc0207450 -mm_free: Freeing 0xc02077e0 -mm_free: Freeing 0xc0207a10 -mm_free: Freeing 0xc0207e70 -mm_free: Freeing 0xc02079e0 -mm_free: Freeing 0xc0207f10 -mm_free: Freeing 0xc0207d70 -mm_free: Freeing 0xc0207d20 -mm_free: Freeing 0xc02080f0 -mm_free: Freeing 0xc0207880 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e40, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02141e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_free: Freeing 0xc0213e20 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e20, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214200, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_free: Freeing 0xc0213e20 +mm_free: Freeing 0xc02141e0 +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc02141e0, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e20, size 32 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214220, size 32 +js_def_malloc: c= +js_def_malloc: d= +mm_free: Freeing 0xc0214220 +mm_free: Freeing 0xc0213e20 +mm_free: Freeing 0xc02141e0 +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0215090, size 160 +js_def_malloc: c= +js_def_malloc: d= +mm_free: Freeing 0xc0214200 +mm_free: Freeing 0xc0213e40 +mm_free: Freeing 0xc0213fb0 +JS_NewObjectProtoClass: a= +JS_NewObjectProtoClass: b= +JS_NewObjectProtoClass: c= +JS_NewObjectProtoClass: f= +js_new_shape2: a= +js_new_shape2: b= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213fb0, size 112 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_new_shape2: c= +js_new_shape2: d= +js_new_shape2: e= +js_new_shape2: f= +js_new_shape2: g= +js_new_shape2: h= +js_new_shape2: i= +JS_NewObjectProtoClass: g= +JS_NewObjectProtoClass: h= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0214020, size 80 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +js_malloc: a= +js_def_malloc: a= +js_def_malloc: b= +mm_malloc: Allocated 0xc0213e20, size 48 +js_def_malloc: c= +js_def_malloc: d= +js_malloc: b= +js_malloc: d= +JS_DefineProperty: a +JS_CreateProperty: a +JS_DefineProperty: a +JS_CreateProperty: a +mm_free: Freeing 0xc0213fb0 +mm_free: Freeing 0xc0201d00 _assert: Current Version: NuttX 12.4.0-RC0 f8b0b06 Feb 10 2024 18:58:20 risc-v -_assert: Assertion failed : at file: quickjs.c:2959 task: qjs process: qjs 0xc000339e +_assert: Assertion failed : at file: mm_heap/mm_free.c:112 task: qjs process: qjs 0xc000339e up_dump_register: EPC: 0000000080001faa -up_du \ No newline at end of file +u \ No newline at end of file diff --git a/nuttx/qjs.S b/nuttx/qjs.S index 3bd2f6785..3171e4d75 100644 --- a/nuttx/qjs.S +++ b/nuttx/qjs.S @@ -3,27 +3,27 @@ SYMBOL TABLE: 00000000c0000000 l d .text 0000000000000000 .text -00000000c0058170 l d .rodata 0000000000000000 .rodata -00000000c0074780 l d .srodata.cst8 0000000000000000 .srodata.cst8 -00000000c0074968 l d .srodata.qjsc_repl_size 0000000000000000 .srodata.qjsc_repl_size -00000000c0074970 l d .srodata.CSWTCH.3956 0000000000000000 .srodata.CSWTCH.3956 -00000000c0074978 l d .srodata.CSWTCH.5066 0000000000000000 .srodata.CSWTCH.5066 -00000000c0074980 l d .srodata.func_kind_to_class_id 0000000000000000 .srodata.func_kind_to_class_id -00000000c0074988 l d .srodata.js_map_proto_funcs_count 0000000000000000 .srodata.js_map_proto_funcs_count -00000000c0074990 l d .srodata.char_range_d 0000000000000000 .srodata.char_range_d -00000000c0074998 l d .srodata.unicode_prop_ASCII_Hex_Digit_table 0000000000000000 .srodata.unicode_prop_ASCII_Hex_Digit_table -00000000c00749a0 l d .srodata.unicode_prop_Emoji_Modifier_table 0000000000000000 .srodata.unicode_prop_Emoji_Modifier_table -00000000c00749a8 l d .srodata.unicode_prop_IDS_Binary_Operator_table 0000000000000000 .srodata.unicode_prop_IDS_Binary_Operator_table -00000000c00749b0 l d .srodata.unicode_prop_IDS_Trinary_Operator_table 0000000000000000 .srodata.unicode_prop_IDS_Trinary_Operator_table -00000000c00749b8 l d .srodata.unicode_prop_Join_Control_table 0000000000000000 .srodata.unicode_prop_Join_Control_table -00000000c00749c0 l d .srodata.unicode_prop_Regional_Indicator_table 0000000000000000 .srodata.unicode_prop_Regional_Indicator_table -00000000c00749c8 l d .srodata.unicode_short_table.0 0000000000000000 .srodata.unicode_short_table.0 -00000000c00749d0 l d .srodata.utf8_first_code_mask 0000000000000000 .srodata.utf8_first_code_mask -00000000c00749d8 l d .srodata.__FUNCTION__.0 0000000000000000 .srodata.__FUNCTION__.0 -00000000c00749e0 l d .srodata.g_nullstring 0000000000000000 .srodata.g_nullstring -00000000c00749e8 l d .srodata.CSWTCH.70 0000000000000000 .srodata.CSWTCH.70 -00000000c00749f0 l d .srodata.CSWTCH.71 0000000000000000 .srodata.CSWTCH.71 -00000000c00749f8 l d .eh_frame 0000000000000000 .eh_frame +00000000c0058340 l d .rodata 0000000000000000 .rodata +00000000c00749e0 l d .srodata.cst8 0000000000000000 .srodata.cst8 +00000000c0074bc8 l d .srodata.qjsc_repl_size 0000000000000000 .srodata.qjsc_repl_size +00000000c0074bd0 l d .srodata.CSWTCH.3972 0000000000000000 .srodata.CSWTCH.3972 +00000000c0074bd8 l d .srodata.CSWTCH.5082 0000000000000000 .srodata.CSWTCH.5082 +00000000c0074be0 l d .srodata.func_kind_to_class_id 0000000000000000 .srodata.func_kind_to_class_id +00000000c0074be8 l d .srodata.js_map_proto_funcs_count 0000000000000000 .srodata.js_map_proto_funcs_count +00000000c0074bf0 l d .srodata.char_range_d 0000000000000000 .srodata.char_range_d +00000000c0074bf8 l d .srodata.unicode_prop_ASCII_Hex_Digit_table 0000000000000000 .srodata.unicode_prop_ASCII_Hex_Digit_table +00000000c0074c00 l d .srodata.unicode_prop_Emoji_Modifier_table 0000000000000000 .srodata.unicode_prop_Emoji_Modifier_table +00000000c0074c08 l d .srodata.unicode_prop_IDS_Binary_Operator_table 0000000000000000 .srodata.unicode_prop_IDS_Binary_Operator_table +00000000c0074c10 l d .srodata.unicode_prop_IDS_Trinary_Operator_table 0000000000000000 .srodata.unicode_prop_IDS_Trinary_Operator_table +00000000c0074c18 l d .srodata.unicode_prop_Join_Control_table 0000000000000000 .srodata.unicode_prop_Join_Control_table +00000000c0074c20 l d .srodata.unicode_prop_Regional_Indicator_table 0000000000000000 .srodata.unicode_prop_Regional_Indicator_table +00000000c0074c28 l d .srodata.unicode_short_table.0 0000000000000000 .srodata.unicode_short_table.0 +00000000c0074c30 l d .srodata.utf8_first_code_mask 0000000000000000 .srodata.utf8_first_code_mask +00000000c0074c38 l d .srodata.__FUNCTION__.0 0000000000000000 .srodata.__FUNCTION__.0 +00000000c0074c40 l d .srodata.g_nullstring 0000000000000000 .srodata.g_nullstring +00000000c0074c48 l d .srodata.CSWTCH.70 0000000000000000 .srodata.CSWTCH.70 +00000000c0074c50 l d .srodata.CSWTCH.71 0000000000000000 .srodata.CSWTCH.71 +00000000c0074c58 l d .eh_frame 0000000000000000 .eh_frame 00000000c0101000 l d .data 0000000000000000 .data 00000000c0101098 l d .sdata.js_class_id_alloc 0000000000000000 .sdata.js_class_id_alloc 00000000c01010a0 l d .sdata.__dso_handle 0000000000000000 .sdata.__dso_handle @@ -50,7 +50,7 @@ SYMBOL TABLE: 00000000c0003636 l F .text 00000000000000da eval_buf 00000000c0003710 l F .text 0000000000000076 eval_file 00000000c0003786 l F .text 0000000000000038 js_trace_free -00000000c0058a78 l O .rodata 0000000000000020 trace_mf +00000000c0058c48 l O .rodata 0000000000000020 trace_mf 0000000000000000 l df *ABS* 0000000000000000 repl.c 0000000000000000 l df *ABS* 0000000000000000 quickjs.c 00000000c0003fdc l F .text 0000000000000028 bswap32 @@ -130,1159 +130,1159 @@ SYMBOL TABLE: 00000000c0005058 l F .text 000000000000000a emit_u8 00000000c0005062 l F .text 0000000000000012 js_dbuf_init 00000000c0005074 l F .text 0000000000000236 code_match -00000000c00052aa l F .text 0000000000000048 js_def_malloc -00000000c00052f2 l F .text 0000000000000018 dbuf_put_u16 -00000000c000530a l F .text 0000000000000008 emit_u16 -00000000c0005312 l F .text 000000000000002e get_loc_or_ref -00000000c0005340 l F .text 00000000000000e8 put_short_code -00000000c0005428 l F .text 0000000000000014 dbuf_put_u32 -00000000c000543c l F .text 0000000000000054 emit_op -00000000c0005490 l F .text 00000000000000a8 set_object_name_computed -00000000c0005538 l F .text 0000000000000058 pop_scope -00000000c0005590 l F .text 0000000000000042 close_scopes -00000000c00055d2 l F .text 0000000000000008 emit_u32 -00000000c00055da l F .text 000000000000004a emit_label -00000000c0005624 l F .text 000000000000008e push_short_int -00000000c00056b2 l F .text 0000000000000046 getTimezoneOffset -00000000c00056f8 l F .text 0000000000000026 date_now -00000000c000571e l F .text 0000000000000034 js_Date_now -00000000c0005752 l F .text 0000000000000024 js_class_has_bytecode -00000000c0005776 l F .text 0000000000000030 JS_GetFunctionBytecode -00000000c00057a6 l F .text 0000000000000038 js_function_proto_lineNumber -00000000c00057de l F .text 000000000000004e gc_scan_incref_child -00000000c000582c l F .text 000000000000004a compute_jsstring_size -00000000c0005876 l F .text 0000000000000014 compute_value_size -00000000c000588a l F .text 0000000000000068 check_define_prop_flags -00000000c00058f2 l F .text 0000000000000018 tag_is_number -00000000c000590a l F .text 0000000000000032 is_var_in_arg_scope -00000000c000593c l F .text 000000000000002e string_advance_index -00000000c000596a l F .text 0000000000000066 js_string_find_invalid_codepoint.part.0 -00000000c00059d0 l F .text 000000000000005a js_get_atom_index -00000000c0005a2a l F .text 0000000000000068 gc_decref_child -00000000c0005a92 l F .text 000000000000004c update_label -00000000c0005ade l F .text 0000000000000120 find_jump_target -00000000c0005bfe l F .text 0000000000000048 time_clip -00000000c0005c46 l F .text 0000000000000018 js_def_free -00000000c0005c5e l F .text 000000000000003e js_def_realloc -00000000c0005c9c l F .text 000000000000002c lre_js_is_ident_first -00000000c0005cc8 l F .text 000000000000004c lre_js_is_ident_next -00000000c0005d14 l F .text 0000000000000244 simple_next_token -00000000c0005f58 l F .text 0000000000000014 peek_token -00000000c0005f6c l F .text 00000000000000a2 JS_WriteString -00000000c000600e l F .text 0000000000000036 set_eval_ret_undefined -00000000c0006044 l F .text 0000000000000042 js_cmp_doubles -00000000c0006086 l F .text 0000000000000006 js_TA_cmp_float64 -00000000c000608c l F .text 0000000000000012 js_TA_cmp_float32 -00000000c000609e l F .text 00000000000000a6 string_get_month -00000000c0006144 l F .text 0000000000000084 string_get_fixed_width_digits.constprop.0 -00000000c00061c8 l F .text 0000000000000034 delete_weak_ref.constprop.0 -00000000c00061fc l F .text 00000000000000da optimize_scope_make_ref.constprop.0 -00000000c00062d6 l F .text 0000000000000030 find_private_class_field.constprop.0 -00000000c0006306 l F .text 000000000000005c find_lexical_decl.constprop.0 -00000000c0006362 l F .text 0000000000000050 JS_CompactBigInt1.constprop.0 -00000000c00063b2 l F .text 0000000000000036 js_get_fast_array.constprop.0 -00000000c00063e8 l F .text 0000000000000036 copy_str16.constprop.0 -00000000c000641e l F .text 0000000000000066 js_fcvt1.constprop.0 -00000000c0006484 l F .text 00000000000000b0 js_ecvt1.constprop.0 -00000000c0006534 l F .text 0000000000000136 JS_AtomGetStrRT.constprop.0 -00000000c000666a l F .text 0000000000000004 JS_AtomGetStr.constprop.0 -00000000c000666e l F .text 000000000000001a JS_DupValue.constprop.0 -00000000c0006688 l F .text 000000000000000e js_promise_finally_value_thunk -00000000c0006696 l F .text 000000000000000a js_iterator_proto_iterator -00000000c00066a0 l F .text 000000000000000a js_get_this -00000000c00066aa l F .text 0000000000000012 bf_delete -00000000c00066bc l F .text 0000000000000070 JS_ToBigFloat -00000000c000672c l F .text 0000000000000074 js_object_has_name.constprop.0.isra.0 -00000000c00067a0 l F .text 0000000000000010 JS_NewModuleValue -00000000c00067b0 l F .text 0000000000000004 js_def_malloc_usable_size -00000000c00067b4 l F .text 000000000000006e js_bytecode_function_mark -00000000c0006822 l F .text 0000000000000014 js_typed_array_mark -00000000c0006836 l F .text 0000000000000048 find_var -00000000c000687e l F .text 0000000000000082 days_from_year -00000000c0006900 l F .text 0000000000000118 set_date_fields -00000000c0006a18 l F .text 0000000000000094 js_string_memcmp -00000000c0006aac l F .text 0000000000000058 js_string_compare.constprop.0 -00000000c0006b6a l F .text 000000000000003c js_alloc_string_rt -00000000c0006bae l F .text 00000000000000b4 JS_FreeAtomStruct -00000000c0006c62 l F .text 000000000000001e __JS_FreeAtom -00000000c0006c80 l F .text 000000000000001e js_free_string -00000000c0006c9e l F .text 0000000000000042 map_decref_record -00000000c0006ce0 l F .text 000000000000007c js_array_buffer_finalizer -00000000c0006d5c l F .text 0000000000000004 js_array_buffer_free -00000000c0006d84 l F .text 00000000000000b6 JS_ResizeAtomHash -00000000c0006e40 l F .text 0000000000000026 string_buffer_set_error -00000000c0006e66 l F .text 000000000000001c string_buffer_free -00000000c0006f62 l F .text 0000000000000034 hash_string -00000000c0006f96 l F .text 00000000000002e6 __JS_NewAtom -00000000c000727c l F .text 000000000000005a __JS_NewAtomInit -00000000c00072d6 l F .text 0000000000000042 JS_NewAtomStr -00000000c0007318 l F .text 0000000000000096 map_hash_key.constprop.0 -00000000c00073ae l F .text 000000000000011c __JS_FindAtom.constprop.0 -00000000c00074ee l F .text 000000000000001e emit_atom -00000000c000751c l F .text 0000000000000042 js_free_prop_enum -00000000c000755e l F .text 00000000000001d8 put_lvalue -00000000c0007736 l F .text 000000000000010c set_object_name -00000000c0007842 l F .text 0000000000000190 skip_dead_code -00000000c00079e0 l F .text 00000000000000a2 free_bytecode_atoms -00000000c0007b38 l F .text 0000000000000024 JS_FreeValue -00000000c0007b5c l F .text 0000000000000166 js_strict_eq2 -00000000c0007cc2 l F .text 0000000000000036 js_same_value -00000000c0007cf8 l F .text 0000000000000024 js_object_is -00000000c0007d1c l F .text 000000000000008e map_find_record -00000000c0007daa l F .text 000000000000004c js_strict_eq_slow -00000000c0007df6 l F .text 000000000000003e free_arg_list -00000000c0007e34 l F .text 0000000000000030 js_free_desc -00000000c0007e64 l F .text 00000000000000a0 JS_ToBoolFree -00000000c0007f04 l F .text 0000000000000066 js_method_set_home_object -00000000c0007f6a l F .text 0000000000000018 JS_FreeBigInt -00000000c0007f82 l F .text 0000000000000014 set_value -00000000c0008938 l F .text 0000000000000044 js_free_modules -00000000c0008716 l F .text 0000000000000098 js_free_shape -00000000c00081a6 l F .text 0000000000000014 js_c_function_finalizer -00000000c00081ba l F .text 000000000000007c free_property -00000000c00086b8 l F .text 0000000000000026 JS_FreeValueRT -00000000c00087ae l F .text 0000000000000078 free_var_ref -00000000c0008236 l F .text 000000000000022e free_gc_object -00000000c000897c l F .text 000000000000007a async_func_free_frame -00000000c0008464 l F .text 000000000000004e free_zero_refcount -00000000c00084b2 l F .text 0000000000000060 async_func_free -00000000c0008512 l F .text 0000000000000082 close_var_refs -00000000c0008594 l F .text 000000000000002a free_generator_stack_rt -00000000c00085be l F .text 0000000000000028 js_async_generator_complete -00000000c00085e6 l F .text 0000000000000014 js_async_function_resolve_finalizer -00000000c00086de l F .text 0000000000000038 promise_reaction_data_free -00000000c0008826 l F .text 0000000000000112 js_free_module_def -00000000c00089f6 l F .text 000000000000003e js_regexp_string_iterator_finalizer -00000000c0008a34 l F .text 0000000000000034 js_array_iterator_finalizer -00000000c0008a68 l F .text 0000000000000096 js_map_finalizer -00000000c0008afe l F .text 0000000000000040 js_typed_array_finalizer -00000000c0008b3e l F .text 0000000000000030 js_regexp_finalizer -00000000c0008b6e l F .text 0000000000000056 js_for_in_iterator_finalizer -00000000c0008bc4 l F .text 0000000000000054 js_bound_function_finalizer -00000000c0008c18 l F .text 0000000000000082 js_bytecode_function_finalizer -00000000c0008c9a l F .text 0000000000000024 js_object_data_finalizer -00000000c0008cbe l F .text 000000000000003a js_array_finalizer -00000000c0008cf8 l F .text 0000000000000078 map_delete_record.part.0 -00000000c0008d70 l F .text 000000000000007a js_async_generator_free -00000000c0008dea l F .text 0000000000000046 js_promise_resolve_function_finalizer -00000000c0008e30 l F .text 0000000000000050 js_map_iterator_finalizer -00000000c0008e92 l F .text 0000000000000048 value_buffer_free -00000000c0008eda l F .text 0000000000000088 free_token -00000000c0008f62 l F .text 000000000000017a js_free_function_def -00000000c00090dc l F .text 00000000000000f2 js_compare_bigfloat -00000000c00091e0 l F .text 0000000000000040 js_regexp_string_iterator_mark -00000000c0009220 l F .text 0000000000000018 js_array_iterator_mark -00000000c0009238 l F .text 0000000000000018 js_map_iterator_mark -00000000c0009250 l F .text 0000000000000064 js_map_mark -00000000c00092b4 l F .text 0000000000000012 js_for_in_iterator_mark -00000000c00092c6 l F .text 0000000000000058 js_bound_function_mark -00000000c000931e l F .text 0000000000000012 js_object_data_mark -00000000c0009330 l F .text 0000000000000044 js_array_mark -00000000c0009374 l F .text 0000000000000378 mark_children -00000000c00096ec l F .text 0000000000000018 js_promise_resolve_function_mark -00000000c0013d58 l F .text 0000000000000008 invalid_to_string -00000000c0013d38 l F .text 0000000000000020 invalid_unary_arith -00000000c0013d0a l F .text 000000000000002e invalid_binary_arith -00000000c0013d02 l F .text 0000000000000008 invalid_mul_pow10_to_float64 -00000000c0013cf2 l F .text 0000000000000010 invalid_mul_pow10 -00000000c0028b84 l F .text 000000000000026e js_call_c_function -00000000c000a8d6 l F .text 00000000000000aa js_c_function_data_call -00000000c003b8a0 l F .text 00000000000000fe js_call_bound_function -00000000c003814a l F .text 00000000000000a8 js_generator_function_call -00000000c000a6a4 l F .text 0000000000000024 js_promise_finally_thrower -00000000c000a728 l F .text 000000000000008a js_operator_typeof -00000000c000a980 l F .text 0000000000000038 js_generator_finalizer -00000000c000a9b8 l F .text 0000000000000056 js_c_function_data_mark -00000000c000aa0e l F .text 000000000000005e js_c_function_data_finalizer -00000000c000aa6c l F .text 0000000000000044 js_proxy_revoke -00000000c000aab0 l F .text 0000000000000052 js_proxy_mark -00000000c000ab02 l F .text 000000000000004e js_proxy_finalizer -00000000c000ab50 l F .text 0000000000000090 js_async_generator_mark -00000000c000abe0 l F .text 000000000000002e js_async_generator_finalizer -00000000c000ac0e l F .text 0000000000000052 js_async_from_sync_iterator_mark -00000000c000ac60 l F .text 000000000000004e js_async_from_sync_iterator_finalizer -00000000c000acae l F .text 00000000000000d4 js_promise_mark -00000000c000ad82 l F .text 0000000000000088 js_promise_finalizer -00000000c001f710 l F .text 000000000000014c js_compile_regexp -00000000c003a526 l F .text 00000000000000f6 js_new_promise_capability -00000000c000af9c l F .text 0000000000006870 JS_CallInternal -00000000c00149fa l F .text 0000000000000018 js_poll_interrupts -00000000c0029350 l F .text 000000000000012c js_closure -00000000c001f24e l F .text 00000000000002f2 build_backtrace -00000000c00285ec l F .text 00000000000000d8 JS_ToObject -00000000c00163c6 l F .text 0000000000000198 add_property -00000000c0014cc8 l F .text 00000000000000d6 get_var_ref -00000000c003829a l F .text 0000000000000156 JS_CallConstructorInternal -00000000c0039720 l F .text 00000000000000ac js_function_apply -00000000c0013ac0 l F .text 00000000000000fa JS_CheckBrand -00000000c0013978 l F .text 0000000000000010 JS_ThrowTypeErrorNotAnObject -00000000c0018b14 l F .text 000000000000005c JS_NewSymbolFromAtom.constprop.0 -00000000c00134d2 l F .text 0000000000000036 __JS_ThrowTypeErrorAtom -00000000c0013136 l F .text 0000000000000036 __JS_ThrowSyntaxErrorAtom -00000000c00148d8 l F .text 0000000000000032 JS_ThrowReferenceErrorUninitialized -00000000c0020c14 l F .text 0000000000000086 JS_EvalObject -00000000c00318ae l F .text 000000000000010a build_arg_list -00000000c00282fa l F .text 0000000000000090 js_regexp_constructor_internal -00000000c00405d2 l F .text 00000000000000b2 js_dynamic_import_job -00000000c003000a l F .text 00000000000000ee JS_SetGlobalVar -00000000c0014932 l F .text 0000000000000028 JS_ThrowReferenceErrorNotDefined -00000000c001490a l F .text 0000000000000028 JS_ThrowReferenceErrorUninitialized2.isra.0 -00000000c00305aa l F .text 00000000000003fc JS_GetOwnPropertyNamesInternal -00000000c001461e l F .text 000000000000002a JS_GetPrototypeFree -00000000c0011f04 l F .text 00000000000001da JS_GetOwnPropertyInternal -00000000c003ac06 l F .text 0000000000000070 js_for_of_start -00000000c003a932 l F .text 00000000000000ba JS_IteratorNext.constprop.0 -00000000c0011ba6 l F .text 0000000000000082 JS_IteratorGetCompleteValue -00000000c0013988 l F .text 00000000000000b8 JS_IteratorClose -00000000c001180c l F .text 0000000000000036 JS_CallFree -00000000c002fcaa l F .text 0000000000000056 JS_DefineObjectName.constprop.0 -00000000c002fd00 l F .text 0000000000000080 JS_DefineObjectNameComputed.constprop.0 -00000000c0014f58 l F .text 00000000000001c8 JS_SetPrototypeInternal -00000000c001a8ec l F .text 0000000000000076 js_get_function_name -00000000c001a80a l F .text 00000000000000e2 JS_ConcatString3 -00000000c0015e54 l F .text 00000000000000ae js_closure2 -00000000c0011ca8 l F .text 0000000000000224 JS_GetPropertyValue -00000000c0012688 l F .text 0000000000000218 JS_SetPropertyValue -00000000c0028978 l F .text 00000000000000aa js_create_array_iterator -00000000c003aa3e l F .text 00000000000001c8 JS_GetIterator -00000000c00319b8 l F .text 0000000000000166 js_array_iterator_next -00000000c001c31a l F .text 0000000000000054 js_get_length32 -00000000c003503a l F .text 0000000000000160 JS_CopyDataProperties -00000000c001e93a l F .text 00000000000001c2 js_add_slow -00000000c0019b46 l F .text 00000000000001a0 JS_ToPrimitiveFree -00000000c001a962 l F .text 0000000000000252 JS_ConcatString -00000000c001eafc l F .text 0000000000000256 js_binary_arith_slow -00000000c001ed52 l F .text 000000000000012a js_unary_arith_slow -00000000c001e930 l F .text 000000000000000a JS_ToNumericFree -00000000c001ee7c l F .text 000000000000007e js_not_slow -00000000c001eff0 l F .text 000000000000015a js_binary_logic_slow -00000000c001eefa l F .text 00000000000000f6 js_shr_slow -00000000c00204e2 l F .text 0000000000000232 js_relational_slow -00000000c0020714 l F .text 00000000000002dc js_eq_slow -00000000c001a004 l F .text 0000000000000034 js_new_string_char -00000000c0014ece l F .text 000000000000008a JS_AutoInitProperty -00000000c0021078 l F .text 0000000000000038 JS_AtomIsNumericIndex -00000000c0011c28 l F .text 0000000000000080 js_is_regexp -00000000c001d2fe l F .text 00000000000001f0 set_array_length -00000000c0013420 l F .text 0000000000000088 call_setter -00000000c001fa16 l F .text 000000000000003e JS_ToBigInt64Free -00000000c001c26a l F .text 000000000000000a JS_ToNumberFree -00000000c0013508 l F .text 0000000000000048 JS_ThrowTypeErrorReadOnly -00000000c00130c8 l F .text 0000000000000044 JS_ThrowTypeErrorOrFalse -00000000c0017582 l F .text 00000000000000ba add_fast_array_element -00000000c00210b0 l F .text 000000000000028e JS_CreateProperty -00000000c001c54c l F .text 00000000000000a2 JS_ToUint8ClampFree -00000000c001c274 l F .text 00000000000000a6 JS_ToInt32Free -00000000c001c5ee l F .text 00000000000000a0 JS_ToFloat64Free -00000000c001d1ee l F .text 0000000000000110 JS_ToArrayLengthFree -00000000c0014e42 l F .text 000000000000008c js_shape_prepare_update -00000000c00151e8 l F .text 0000000000000040 js_update_property_flags -00000000c0016fd0 l F .text 00000000000000ae convert_fast_array_to_array -00000000c0020ea0 l F .text 00000000000001d8 JS_AtomIsNumericIndex1 -00000000c001c6b6 l F .text 0000000000000062 JS_NumberIsInteger -00000000c0012ff6 l F .text 0000000000000090 JS_ThrowError2 -00000000c0013086 l F .text 0000000000000042 JS_ThrowError -00000000c001316c l F .text 0000000000000092 js_resolve_export_throw_error -00000000c00131fe l F .text 0000000000000028 bc_read_error_end -00000000c0013226 l F .text 0000000000000024 bc_get_u8 -00000000c001324a l F .text 0000000000000032 bc_get_leb128 -00000000c001327c l F .text 0000000000000026 bc_get_leb128_u16 -00000000c00132a2 l F .text 000000000000005c bc_get_u64 -00000000c00132fe l F .text 000000000000004a bc_get_buf -00000000c0013348 l F .text 000000000000006c bc_idx_to_atom -00000000c00133b4 l F .text 0000000000000042 bc_get_atom -00000000c00134a8 l F .text 000000000000002a check_function -00000000c0013550 l F .text 0000000000000028 JS_ThrowTypeErrorInvalidClass -00000000c00135ac l F .text 0000000000000078 js_map_get -00000000c0013624 l F .text 000000000000007c js_map_delete -00000000c00136a0 l F .text 0000000000000064 js_map_has -00000000c0013704 l F .text 000000000000004c js_map_get_size -00000000c0013750 l F .text 0000000000000060 js_map_clear -00000000c00137b0 l F .text 0000000000000044 js_array_buffer_get_byteLength -00000000c00137f4 l F .text 0000000000000080 JS_EvalInternal -00000000c0013906 l F .text 0000000000000072 js_promise_executor -00000000c0013a40 l F .text 0000000000000080 js_regexp_get_flag -00000000c0013bba l F .text 0000000000000118 JS_SpeciesConstructor -00000000c0013cd2 l F .text 0000000000000010 JS_ThrowTypeErrorDetachedArrayBuffer -00000000c0013ce2 l F .text 0000000000000010 JS_ThrowUnsupportedOperation -00000000c0013d60 l F .text 0000000000000080 JS_SetThisTimeValue -00000000c0013de0 l F .text 000000000000004a js_thisBigIntValue -00000000c0013e2a l F .text 0000000000000008 js_bigint_valueOf -00000000c0013e32 l F .text 000000000000004a js_symbol_keyFor -00000000c0013e7c l F .text 0000000000000048 js_thisSymbolValue -00000000c0013ec4 l F .text 0000000000000008 js_symbol_valueOf -00000000c0013ecc l F .text 000000000000004c js_string_toString -00000000c0013f18 l F .text 000000000000004a js_thisBooleanValue -00000000c0013f62 l F .text 0000000000000008 js_boolean_valueOf -00000000c0013f6a l F .text 0000000000000046 js_thisNumberValue -00000000c0013fb0 l F .text 0000000000000008 js_number_valueOf -00000000c0013fb8 l F .text 000000000000005e get_typed_array -00000000c0014016 l F .text 0000000000000034 js_typed_array_get_length_internal -00000000c001404a l F .text 00000000000000d0 js_typed_array_reverse -00000000c001411a l F .text 0000000000000058 js_typed_array_get_byteOffset -00000000c0014172 l F .text 0000000000000058 js_typed_array_get_byteLength -00000000c00141ca l F .text 000000000000002e js_typed_array_get_buffer -00000000c00141f8 l F .text 0000000000000032 validate_typed_array -00000000c001422a l F .text 000000000000002e js_typed_array_get_length -00000000c0014258 l F .text 0000000000000010 js_throw_type_error -00000000c0014268 l F .text 0000000000000046 js_function_proto_caller -00000000c00142ae l F .text 0000000000000010 js_typed_array_base_constructor -00000000c00142be l F .text 0000000000000010 JS_ThrowTypeErrorRevokedProxy.isra.0 -00000000c001433a l F .text 0000000000000030 js_array_isArray -00000000c001436a l F .text 0000000000000074 get_proxy_method -00000000c001449a l F .text 0000000000000048 js_object_isExtensible -00000000c0014648 l F .text 000000000000002e js_object_getPrototypeOf -00000000c0014738 l F .text 0000000000000082 js_object_preventExtensions -00000000c00147ba l F .text 0000000000000074 JS_GetFunctionRealm -00000000c001482e l F .text 0000000000000080 JS_SetObjectData.isra.0 -00000000c00149ae l F .text 000000000000004c __js_poll_interrupts -00000000c0014a12 l F .text 0000000000000130 JS_OrdinaryIsInstanceOf -00000000c0014be6 l F .text 0000000000000036 js_function_hasInstance -00000000c0014d9e l F .text 00000000000000a4 js_clone_shape -00000000c001512a l F .text 0000000000000038 js_reflect_setPrototypeOf -00000000c0015162 l F .text 0000000000000056 js_object_set___proto__ -00000000c00151b8 l F .text 0000000000000030 js_object_setPrototypeOf -00000000c0015228 l F .text 0000000000000078 seal_template_obj -00000000c0015326 l F .text 0000000000000142 fulfill_or_reject_promise -00000000c003a796 l F .text 00000000000000e4 promise_reaction_job -00000000c0015468 l F .text 0000000000000132 js_promise_resolve_function_call -00000000c003e04c l F .text 00000000000000cc js_promise_resolve_thenable_job -00000000c001559a l F .text 0000000000000040 JS_NewBigInt -00000000c00155da l F .text 000000000000005c js_create_module_var -00000000c0015636 l F .text 0000000000000030 add_reloc -00000000c0015666 l F .text 00000000000002be js_typed_array_sort -00000000c003f56a l F .text 00000000000000f8 js_TA_cmp_generic -00000000c0018d04 l F .text 000000000000000a js_TA_get_int64 -00000000c0018d72 l F .text 000000000000000a js_TA_get_uint64 -00000000c0015924 l F .text 0000000000000332 js_new_shape2.constprop.0 -00000000c0015c56 l F .text 0000000000000086 typed_array_init.isra.0 -00000000c0015d02 l F .text 0000000000000152 async_func_init -00000000c0015f02 l F .text 00000000000001a8 perform_promise_then -00000000c00160aa l F .text 0000000000000080 js_new_module_def -00000000c001615a l F .text 000000000000015c resize_properties -00000000c00162b6 l F .text 0000000000000110 add_shape_property -00000000c001655e l F .text 00000000000000c6 JS_DefineAutoInitProperty -00000000c0016624 l F .text 0000000000000164 JS_NewObjectFromShape -00000000c00169ea l F .text 00000000000000b2 js_create_from_ctor -00000000c0016a9c l F .text 0000000000000148 js_array_buffer_constructor3 -00000000c0016be4 l F .text 000000000000001e js_array_buffer_constructor2 -00000000c0016c02 l F .text 000000000000006e js_boolean_constructor -00000000c0016c90 l F .text 000000000000009e js_create_map_iterator -00000000c0016d98 l F .text 000000000000012a js_create_module_function -00000000c0016ec2 l F .text 00000000000000fc js_proxy_constructor -00000000c001707e l F .text 0000000000000070 ident_realloc -00000000c00170ee l F .text 0000000000000386 delete_property -00000000c00174c6 l F .text 0000000000000072 string_buffer_widen -00000000c0017538 l F .text 000000000000004a expand_fast_array -00000000c001763c l F .text 000000000000007c js_allocate_fast_array -00000000c00176b8 l F .text 0000000000000058 js_realloc_array -00000000c0017710 l F .text 000000000000000e js_resize_array -00000000c001771e l F .text 0000000000000126 get_exported_names -00000000c0017844 l F .text 0000000000000176 js_resolve_export1 -00000000c00179ba l F .text 0000000000000048 js_resolve_export -00000000c0017a02 l F .text 00000000000000fc gather_available_ancestors -00000000c0017afe l F .text 00000000000000d2 bc_atom_to_idx -00000000c0017bd0 l F .text 000000000000003c bc_put_atom.isra.0 -00000000c0017c0c l F .text 000000000000004a BC_add_object_ref1 -00000000c0017c56 l F .text 000000000000005a new_label_fd -00000000c0017cb0 l F .text 0000000000000008 new_label -00000000c0017cb8 l F .text 000000000000005c emit_goto -00000000c0017d14 l F .text 000000000000008a emit_class_field_init -00000000c0017d9e l F .text 00000000000001b8 emit_return -00000000c0017f56 l F .text 000000000000007c optional_chain_test -00000000c0017fd2 l F .text 00000000000000a6 js_emit_spread_code -00000000c0018078 l F .text 0000000000000092 var_object_test -00000000c001810a l F .text 0000000000000052 cpool_add -00000000c001815c l F .text 0000000000000076 emit_push_const -00000000c00181d2 l F .text 0000000000000058 emit_class_init_end -00000000c001822a l F .text 000000000000006c add_global_var -00000000c0018296 l F .text 0000000000000076 add_req_module_entry -00000000c001830c l F .text 0000000000000200 js_map_set -00000000c001850c l F .text 00000000000000d0 push_scope -00000000c00185dc l F .text 00000000000004f8 js_atof -00000000c0018ad4 l F .text 0000000000000040 JS_NewSymbol -00000000c0018b70 l F .text 0000000000000026 js_alloc_string -00000000c0018b96 l F .text 0000000000000038 string_buffer_init2 -00000000c0018bce l F .text 0000000000000006 string_buffer_init -00000000c0018bd4 l F .text 0000000000000042 js_new_string16 -00000000c0018c16 l F .text 0000000000000082 JS_ReadString -00000000c0018d7c l F .text 000000000000006a js_string_to_bigint -00000000c0018de6 l F .text 0000000000000042 throw_bf_exception.isra.0 -00000000c0018e28 l F .text 00000000000000be string_buffer_realloc -00000000c0018ee6 l F .text 0000000000000082 string_buffer_write8 -00000000c0018f68 l F .text 00000000000000e4 string_buffer_concat -00000000c001904c l F .text 0000000000000022 string_buffer_puts8 -00000000c001906e l F .text 0000000000000078 encodeURI_hex.isra.0 -00000000c00190e6 l F .text 0000000000000052 string_buffer_putc8 -00000000c0019138 l F .text 0000000000000080 string_buffer_putc_slow -00000000c00191b8 l F .text 000000000000003e string_buffer_putc16 -00000000c00191f6 l F .text 0000000000000050 string_buffer_putc -00000000c0019246 l F .text 000000000000004a string_buffer_fill -00000000c0019fb2 l F .text 0000000000000052 js_new_string8 -00000000c0019d0a l F .text 0000000000000096 string_buffer_end -00000000c0019460 l F .text 00000000000001a4 js_host_resolve_imported_module -00000000c00196ea l F .text 0000000000000094 find_atom -00000000c001977e l F .text 00000000000000dc js_new_function_def -00000000c001985a l F .text 00000000000000c4 emit_class_init_start -00000000c001991e l F .text 0000000000000104 parse_ident -00000000c0019a90 l F .text 00000000000000a2 __JS_AtomToValue -00000000c0019ce6 l F .text 0000000000000024 JS_ToPrimitive -00000000c0019de4 l F .text 0000000000000066 exported_names_cmp -00000000c0019e4a l F .text 000000000000006c js_symbol_get_description -00000000c0019eb6 l F .text 0000000000000034 js_boolean_toString -00000000c0019eea l F .text 0000000000000038 js_function_proto_fileName -00000000c0019f22 l F .text 0000000000000052 js_object___getClass -00000000c0019f74 l F .text 000000000000003e js_typed_array_get_toStringTag -00000000c001a038 l F .text 000000000000007a js_string_get_own_property -00000000c001a0b2 l F .text 00000000000000c6 js_string_iterator_next -00000000c001a178 l F .text 00000000000000d2 js_sub_string -00000000c001a24a l F .text 0000000000000058 JS_NewAtomInt64 -00000000c001a2a2 l F .text 00000000000003e2 js_dtoa -00000000c001a7e0 l F .text 000000000000002a JS_ToStringFree -00000000c001abb4 l F .text 0000000000000128 js_error_toString -00000000c001acdc l F .text 0000000000000086 string_buffer_concat_value_free -00000000c001ad62 l F .text 00000000000000aa js_regexp_toString -00000000c001ae0c l F .text 00000000000000a0 check_regexp_g_flag -00000000c001aeac l F .text 0000000000000020 JS_ToStringCheckObject -00000000c001aecc l F .text 000000000000017a JS_ToQuotedString -00000000c001b046 l F .text 000000000000002a JS_ToQuotedStringFree -00000000c001b070 l F .text 0000000000000008 js_string___quote -00000000c001b078 l F .text 0000000000000160 js_string_CreateHTML -00000000c001b1d8 l F .text 00000000000001be js_string_toLowerCase -00000000c001b396 l F .text 000000000000005a js_string_isWellFormed -00000000c001b3f0 l F .text 000000000000006a js_string_concat -00000000c001b45a l F .text 00000000000000fe js_string_toWellFormed -00000000c001b558 l F .text 00000000000000b0 js_string_trim -00000000c001b608 l F .text 00000000000000d0 js_string_normalize1 -00000000c001b6d8 l F .text 000000000000007c string_buffer_concat_value -00000000c001b754 l F .text 0000000000000412 js_Date_parse -00000000c001bb66 l F .text 0000000000000034 js_symbol_for -00000000c001bb9a l F .text 000000000000005e js_symbol_constructor -00000000c001bbf8 l F .text 0000000000000110 js_string_localeCompare -00000000c001bd08 l F .text 00000000000000e8 js_global_unescape -00000000c001bdf0 l F .text 00000000000000b8 js_global_escape -00000000c001c0a6 l F .text 00000000000001c4 JS_ToNumberHintFree -00000000c001c43e l F .text 0000000000000044 js_math_clz32 -00000000c001c482 l F .text 000000000000004e js_math_imul -00000000c001c4d0 l F .text 000000000000007c js_string_fromCharCode -00000000c001c718 l F .text 0000000000000030 js_number_isInteger -00000000c001c748 l F .text 0000000000000136 js_Date_UTC -00000000c001c87e l F .text 0000000000000046 JS_ThisTimeValue -00000000c001c8c4 l F .text 000000000000019a get_date_fields -00000000c001ca5e l F .text 0000000000000098 get_date_field -00000000c001caf6 l F .text 0000000000000056 js_date_getTimezoneOffset -00000000c001cb4c l F .text 000000000000004c js_date_getTime -00000000c001cb98 l F .text 000000000000010e set_date_field -00000000c001cca6 l F .text 00000000000000d4 js_date_setYear -00000000c001cd7a l F .text 0000000000000054 js_date_setTime -00000000c001cdce l F .text 00000000000000a0 js_math_hypot -00000000c001ce6e l F .text 000000000000016a js_math_min_max -00000000c001cfd8 l F .text 00000000000000c2 js_string_fromCodePoint -00000000c001d09a l F .text 000000000000008c js_number_isSafeInteger -00000000c001d126 l F .text 000000000000004e js_global_isFinite -00000000c001d174 l F .text 0000000000000022 js_number_isFinite -00000000c001d196 l F .text 0000000000000036 js_global_isNaN -00000000c001d1cc l F .text 0000000000000022 js_number_isNaN -00000000c001d4ee l F .text 0000000000000098 JS_ToInt32SatFree -00000000c001d5ae l F .text 000000000000003a js_get_radix -00000000c001d5e8 l F .text 0000000000000094 js_number_toString -00000000c001d67c l F .text 000000000000009c js_string_codePointAt -00000000c001d718 l F .text 00000000000000be js_string_charCodeAt -00000000c001d7d6 l F .text 00000000000000d0 js_string_charAt -00000000c001d8a6 l F .text 00000000000000b8 js_number_toPrecision -00000000c001d95e l F .text 00000000000000a2 js_number_toFixed -00000000c001da00 l F .text 00000000000000cc js_number_toExponential -00000000c001db2c l F .text 0000000000000360 js_typed_array_indexOf -00000000c001de8c l F .text 00000000000000f2 js_typed_array_copyWithin -00000000c001df7e l F .text 00000000000000c0 js_string_slice -00000000c001e03e l F .text 00000000000000ba js_string_substr -00000000c001e0f8 l F .text 00000000000000c8 js_string_substring -00000000c001e1c0 l F .text 000000000000009e JS_ToInt64SatFree -00000000c001e2c6 l F .text 000000000000015e js_dataview_constructor -00000000c001e424 l F .text 000000000000003e js_shared_array_buffer_constructor -00000000c001e462 l F .text 000000000000003e js_array_buffer_constructor -00000000c001e4a0 l F .text 000000000000030e js_dataview_getValue -00000000c001e80c l F .text 0000000000000032 JS_ToLengthFree -00000000c001e83e l F .text 000000000000004c js_get_length64 -00000000c001f14a l F .text 00000000000000b4 js_number_constructor -00000000c001f1fe l F .text 0000000000000010 JS_ToCString -00000000c001f540 l F .text 00000000000000aa js_resolve_module -00000000c001f61c l F .text 0000000000000052 js_parseFloat -00000000c001f66e l F .text 00000000000000a2 js_parseInt -00000000c001f85c l F .text 00000000000000da JS_StringToBigInt -00000000c001f936 l F .text 0000000000000042 JS_StringToBigIntErr -00000000c001f978 l F .text 000000000000009e JS_ToBigIntFree -00000000c001fa94 l F .text 00000000000001fa js_dataview_setValue -00000000c001fc8e l F .text 00000000000001c6 js_typed_array_fill -00000000c001fe54 l F .text 0000000000000028 JS_ToBigInt -00000000c001fe7c l F .text 000000000000012c js_bigint_asUintN -00000000c001ffa8 l F .text 000000000000022a js_binary_arith_bigint -00000000c00201d2 l F .text 000000000000012c js_unary_arith_bigint -00000000c00202fe l F .text 00000000000001e4 js_bigint_constructor -00000000c00209f0 l F .text 00000000000000c0 js_atom_concat_str -00000000c0020ab0 l F .text 0000000000000164 js_string_normalize -00000000c0020c9a l F .text 00000000000001ee js_function_constructor -00000000c0020e88 l F .text 0000000000000018 js_global_eval -00000000c002133e l F .text 000000000000017a js_string_includes -00000000c00214b8 l F .text 000000000000015a js_string_indexOf -00000000c0021694 l F .text 0000000000000098 js_date_Symbol_toPrimitive -00000000c002172c l F .text 00000000000001b8 js_regexp_get_source -00000000c00218e4 l F .text 000000000000009c js_bigint_to_string1 -00000000c0021980 l F .text 000000000000008e js_bigint_toString -00000000c0021a0e l F .text 000000000000000a js_bigint_to_string -00000000c0021a18 l F .text 000000000000030c get_date_string -00000000c0021d24 l F .text 0000000000000244 js_date_constructor -00000000c0021f68 l F .text 0000000000000086 add_var -00000000c0021fee l F .text 0000000000000052 add_scope_var -00000000c0022040 l F .text 000000000000003e add_private_class_field -00000000c002207e l F .text 000000000000002e add_var_this -00000000c00220ac l F .text 0000000000000030 add_arguments_var -00000000c00220dc l F .text 0000000000000054 add_func_var -00000000c0022130 l F .text 000000000000009a resolve_pseudo_var -00000000c00221ca l F .text 0000000000000086 add_arg -00000000c0022250 l F .text 00000000000000c2 add_closure_var -00000000c0022312 l F .text 00000000000000ae get_closure_var2 -00000000c00223c0 l F .text 00000000000000f2 resolve_scope_private_field1 -00000000c00224b2 l F .text 0000000000000a00 resolve_scope_var -00000000c0022eb2 l F .text 0000000000000c52 resolve_variables -00000000c0023b04 l F .text 0000000000000396 add_eval_variables -00000000c0023e9a l F .text 00000000000000ce ss_check -00000000c0023f68 l F .text 0000000000001c1a js_create_function -00000000c0025b82 l F .text 00000000000001d4 js_string_pad -00000000c0025d56 l F .text 0000000000000114 js_string_repeat -00000000c0025e6a l F .text 0000000000000024 js_throw_URIError -00000000c0025e8e l F .text 00000000000001f8 js_global_encodeURI -00000000c0026086 l F .text 0000000000000076 hex_decode -00000000c00260fc l F .text 00000000000001bc js_global_decodeURI -00000000c002630c l F .text 00000000000000d0 add_export_entry2 -00000000c0026470 l F .text 0000000000000288 js_parse_string -00000000c00266f8 l F .text 000000000000035c json_next_token -00000000c0026a54 l F .text 0000000000000018 json_parse_expect -00000000c0026a6c l F .text 000000000000012a js_parse_template_part -00000000c0026b96 l F .text 000000000000078e next_token -00000000c0027324 l F .text 0000000000000014 js_parse_seek_token -00000000c0027338 l F .text 000000000000012c js_parse_directives.part.0 -00000000c0027464 l F .text 0000000000000098 is_let -00000000c00274fc l F .text 00000000000001a2 js_parse_regexp -00000000c002769e l F .text 0000000000000256 js_parse_skip_parens_token -00000000c00278f4 l F .text 0000000000000036 js_parse_expect_semi -00000000c002792a l F .text 0000000000000050 js_parse_check_duplicate_parameter -00000000c002797a l F .text 0000000000000328 get_lvalue -00000000c0027ca2 l F .text 000000000000002a js_parse_error_reserved_identifier -00000000c0027ccc l F .text 0000000000000104 js_parse_function_check_names -00000000c0027dd0 l F .text 000000000000028e define_var -00000000c002805e l F .text 00000000000000b6 js_define_var -00000000c0028114 l F .text 000000000000006c js_parse_from_clause -00000000c0028180 l F .text 00000000000000e0 add_import -00000000c0028260 l F .text 0000000000000082 js_parse_destructuring_var.constprop.0 -00000000c00282e2 l F .text 0000000000000018 js_parse_expect -00000000c002838a l F .text 0000000000000262 js_regexp_constructor -00000000c00286c4 l F .text 000000000000004c js_object_get___proto__ -00000000c0028710 l F .text 00000000000000c6 js_object_isPrototypeOf -00000000c00287d6 l F .text 0000000000000008 js_object_valueOf -00000000c00287de l F .text 0000000000000042 js_object_constructor -00000000c00288fe l F .text 000000000000007a js_reflect_deleteProperty -00000000c0028a22 l F .text 000000000000003a js_create_typed_array_iterator -00000000c0028a5c l F .text 0000000000000066 js_instantiate_prototype -00000000c0028ac2 l F .text 000000000000008c js_create_iterator_result -00000000c0028b4e l F .text 0000000000000036 js_async_from_sync_iterator_unwrap -00000000c0028df2 l F .text 0000000000000046 js_function_set_properties -00000000c0028e38 l F .text 00000000000000f8 js_create_resolving_functions -00000000c0028f30 l F .text 00000000000002b6 JS_NewCFunction3 -00000000c00292ce l F .text 0000000000000082 js_async_generator_resolve_function_create.constprop.0 -00000000c003fbc4 l F .text 00000000000000da js_async_generator_resolve_function -00000000c00294e6 l F .text 0000000000000044 JS_CreateDataPropertyUint32 -00000000c002952a l F .text 0000000000000088 js_create_array -00000000c00295b2 l F .text 0000000000000122 js_map_iterator_next -00000000c00299b8 l F .text 000000000000000a js_module_ns_autoinit -00000000c00299c2 l F .text 000000000000005a JS_SetConstructor2 -00000000c0029a28 l F .text 000000000000004e JS_NewGlobalCConstructor2 -00000000c0029a76 l F .text 000000000000003e JS_NewGlobalCConstructor -00000000c0029ab4 l F .text 0000000000000040 JS_NewGlobalCConstructorOnly.constprop.0 -00000000c0029af4 l F .text 000000000000028a json_parse_value -00000000c0029e38 l F .text 00000000000000ba js_proxy_revocable -00000000c0029ef2 l F .text 000000000000005e js_aggregate_error_constructor -00000000c0029f50 l F .text 0000000000000262 js_parse_template -00000000c002d36a l F .text 0000000000000006 js_parse_expr -00000000c002a1b2 l F .text 0000000000000fb8 js_parse_postfix_expr -00000000c002cbdc l F .text 000000000000000a js_parse_function_decl.constprop.0 -00000000c002d59e l F .text 0000000000000038 js_parse_expr_paren -00000000c002b914 l F .text 00000000000008b2 js_parse_destructuring_element -00000000c002d80e l F .text 0000000000000a08 js_parse_class -00000000c002d5d6 l F .text 0000000000000006 js_parse_assign_expr -00000000c002d370 l F .text 000000000000022e js_parse_property_name -00000000c002b16a l F .text 000000000000049c js_parse_unary -00000000c002b606 l F .text 0000000000000234 js_parse_expr_binary -00000000c002b83a l F .text 00000000000000da js_parse_logical_and_or -00000000c002c1c6 l F .text 0000000000000a16 js_parse_function_decl2.constprop.0 -00000000c002f4de l F .text 0000000000000638 js_parse_source_element -00000000c002cbe6 l F .text 000000000000072a js_parse_assign_expr2 -00000000c002d310 l F .text 000000000000005a js_parse_expr2 -00000000c002d5dc l F .text 0000000000000232 js_parse_var -00000000c002e216 l F .text 00000000000012c8 js_parse_statement_or_decl -00000000c002fb16 l F .text 000000000000005a js_parse_block -00000000c002fb70 l F .text 00000000000000ea js_string_constructor -00000000c002fc5a l F .text 0000000000000050 js_symbol_toString -00000000c002fd80 l F .text 00000000000000f0 js_string_define_own_property -00000000c002fe70 l F .text 0000000000000076 js_arguments_define_own_property -00000000c002ff38 l F .text 00000000000000d2 js_object___defineGetter__ -00000000c00300f8 l F .text 0000000000000016 JS_SetProperty -00000000c003010e l F .text 000000000000015a js_regexp_compile -00000000c0030268 l F .text 00000000000000f8 js_array_constructor -00000000c00303de l F .text 00000000000000ca js_array_fill -00000000c00304f6 l F .text 00000000000000b4 js_reflect_set -00000000c0030aba l F .text 0000000000000078 js_reflect_has -00000000c0030b32 l F .text 00000000000000d2 js_object_isSealed -00000000c0030c04 l F .text 00000000000000e4 js_object___lookupGetter__ -00000000c0030ce8 l F .text 00000000000000a0 js_object_propertyIsEnumerable -00000000c0030d88 l F .text 0000000000000096 js_object_hasOwnProperty -00000000c0030e1e l F .text 000000000000009a js_object_hasOwn -00000000c0030eb8 l F .text 00000000000001e2 js_object_getOwnPropertyDescriptor -00000000c003109a l F .text 0000000000000146 js_object_getOwnPropertyDescriptors -00000000c00311e0 l F .text 000000000000015e js_object_seal -00000000c003133e l F .text 0000000000000168 js_typed_array_constructor_ta -00000000c00314a6 l F .text 000000000000007c js_typed_array_toSorted -00000000c0031522 l F .text 000000000000007c js_typed_array_toReversed -00000000c003159e l F .text 00000000000000e0 js_typed_array_with -00000000c003167e l F .text 0000000000000062 remainingElementsCount_add -00000000c00316e0 l F .text 00000000000001ce js_typed_array_set -00000000c0031b1e l F .text 00000000000002a4 js_obj_to_desc -00000000c0031dc2 l F .text 0000000000000062 JS_DefinePropertyDesc -00000000c0031e24 l F .text 00000000000000aa js_object_defineProperty -00000000c0031ece l F .text 000000000000007e JS_GetPropertyInt64 -00000000c0031f4c l F .text 0000000000000118 js_array_includes -00000000c0032064 l F .text 0000000000000082 js_typed_array_at -00000000c00320e6 l F .text 00000000000002a6 js_string___GetSubstitution.constprop.0 -00000000c003238c l F .text 0000000000000150 js_string_raw -00000000c00324dc l F .text 00000000000000d2 JS_TryGetPropertyInt64 -00000000c00325ae l F .text 00000000000000d8 js_array_lastIndexOf -00000000c0032686 l F .text 0000000000000140 js_array_indexOf -00000000c00327c6 l F .text 00000000000000c2 js_array_at -00000000c0032888 l F .text 000000000000029e js_array_toSpliced -00000000c0032b26 l F .text 0000000000000140 js_array_toReversed -00000000c0032c66 l F .text 00000000000001fc js_array_with -00000000c0032e62 l F .text 00000000000001a2 JS_CopySubArray -00000000c0033004 l F .text 00000000000000cc js_array_copyWithin -00000000c00330d0 l F .text 000000000000016a js_array_pop -00000000c003323a l F .text 0000000000000122 js_array_push -00000000c003335c l F .text 0000000000000216 js_array_sort -00000000c003ea10 l F .text 000000000000010c js_array_cmp_generic -00000000c0033572 l F .text 00000000000001d0 js_array_toSorted -00000000c0033742 l F .text 000000000000015e js_array_reverse -00000000c00338a0 l F .text 0000000000000146 js_object_toString -00000000c00339e6 l F .text 0000000000000190 js_regexp_get_flags -00000000c0033b76 l F .text 00000000000000d2 js_function_toString -00000000c0033c48 l F .text 0000000000000d94 JS_WriteObjectRec -00000000c0034b90 l F .text 00000000000001f2 JS_GetOwnPropertyNames2 -00000000c0034d82 l F .text 0000000000000012 js_object_keys -00000000c0034d94 l F .text 0000000000000022 js_reflect_ownKeys -00000000c0034db6 l F .text 0000000000000012 js_object_getOwnPropertySymbols -00000000c0034dc8 l F .text 0000000000000012 js_object_getOwnPropertyNames -00000000c0034dda l F .text 0000000000000260 js_function_bind -00000000c003519a l F .text 00000000000000d6 js_object_assign -00000000c0035270 l F .text 00000000000005a4 js_regexp_exec -00000000c0035814 l F .text 0000000000000100 JS_ObjectDefineProperties -00000000c0035914 l F .text 000000000000002c js_object_defineProperties -00000000c0035940 l F .text 0000000000000098 js_object_create -00000000c00359d8 l F .text 000000000000008c js_reflect_get -00000000c0035a64 l F .text 000000000000021c JS_InstantiateFunctionListItem.isra.0 -00000000c0035cd8 l F .text 0000000000000070 JS_InstantiateFunctionListItem2 -00000000c003cdfc l F .text 00000000000001e0 js_proxy_call -00000000c003cfdc l F .text 00000000000002f2 js_map_constructor -00000000c0036354 l F .text 000000000000002a JS_InvokeFree -00000000c003637e l F .text 0000000000000020 JS_ToLocaleStringFree -00000000c003639e l F .text 000000000000016e js_array_join -00000000c003650c l F .text 0000000000000150 js_typed_array_join -00000000c003665c l F .text 0000000000000112 js_promise_finally -00000000c003df5c l F .text 00000000000000f0 js_promise_then_finally_func -00000000c003676e l F .text 0000000000000024 js_promise_catch -00000000c0036792 l F .text 0000000000000010 js_object_toLocaleString -00000000c00367a2 l F .text 00000000000000ba JS_RegExpExec -00000000c003685c l F .text 0000000000000174 js_regexp_string_iterator_next -00000000c00369d0 l F .text 00000000000001b8 js_regexp_Symbol_search -00000000c0036b88 l F .text 00000000000002a4 js_regexp_Symbol_match -00000000c0036e2c l F .text 000000000000004c js_regexp_test -00000000c0036e78 l F .text 0000000000000182 js_proxy_set -00000000c0036ffa l F .text 000000000000013e js_proxy_get -00000000c0037138 l F .text 0000000000000104 js_proxy_has -00000000c003723c l F .text 0000000000000336 js_proxy_define_own_property -00000000c0037572 l F .text 0000000000000104 js_proxy_delete_property -00000000c0037676 l F .text 000000000000027a js_proxy_get_own_property_names -00000000c00378f0 l F .text 00000000000001aa js_proxy_get_own_property -00000000c0037a9a l F .text 00000000000000f4 js_date_toJSON -00000000c0037b8e l F .text 00000000000002a6 js_string_split -00000000c0037e34 l F .text 00000000000000a8 js_array_toString -00000000c0037edc l F .text 000000000000009e async_func_resume -00000000c0037f7a l F .text 00000000000001d0 js_generator_next -00000000c00381f2 l F .text 00000000000000a8 js_async_generator_function_call -00000000c00383fa l F .text 00000000000000ac js_reflect_construct -00000000c00384b8 l F .text 0000000000000092 js_typed_array_create -00000000c003854a l F .text 000000000000009e js_typed_array_of -00000000c00385e8 l F .text 00000000000001b8 js_array_buffer_slice -00000000c00387a0 l F .text 000000000000024e js_regexp_Symbol_matchAll -00000000c00389ee l F .text 00000000000000f0 js_array_of -00000000c0038ade l F .text 0000000000000160 JS_ArraySpeciesCreate -00000000c0038c3e l F .text 0000000000000352 js_array_slice -00000000c0038f90 l F .text 0000000000000220 js_array_concat -00000000c00391b0 l F .text 00000000000003f8 js_regexp_Symbol_split -00000000c00395a8 l F .text 000000000000015e js_string_match -00000000c00397cc l F .text 0000000000000b24 js_regexp_Symbol_replace -00000000c003a2f0 l F .text 000000000000001e js_reflect_apply -00000000c003a30e l F .text 0000000000000046 js_load_module_rejected -00000000c003a354 l F .text 000000000000008c js_load_module_fulfilled -00000000c003a3e0 l F .text 0000000000000146 js_promise_constructor -00000000c003a61c l F .text 00000000000000b8 js_promise_then -00000000c003a6d4 l F .text 00000000000000c2 js_promise_withResolvers -00000000c003a87a l F .text 00000000000000b8 JS_IteratorNext2 -00000000c003a9ec l F .text 0000000000000052 JS_GetIterator2 -00000000c003ac76 l F .text 00000000000002d0 js_error_constructor -00000000c003af46 l F .text 000000000000018a js_object_fromEntries -00000000c003b0d0 l F .text 000000000000042c js_typed_array_constructor -00000000c003b4fc l F .text 00000000000000b4 js_typed_array___speciesCreate.constprop.0 -00000000c003b5b0 l F .text 00000000000001c4 js_typed_array_slice -00000000c003b774 l F .text 000000000000012c js_typed_array_subarray -00000000c003b99e l F .text 00000000000002cc js_inner_module_linking -00000000c003bc6a l F .text 000000000000011e js_async_module_execution_rejected -00000000c003bd88 l F .text 000000000000005c js_set_module_evaluated -00000000c003bde4 l F .text 0000000000000140 js_promise_resolve -00000000c003bf24 l F .text 000000000000016a js_async_function_resume -00000000c003c08e l F .text 0000000000000070 js_async_function_resolve_call -00000000c003c0fe l F .text 000000000000015a js_json_check -00000000c003c258 l F .text 00000000000005c4 js_json_to_str.constprop.0 -00000000c003cb20 l F .text 0000000000000018 js_json_stringify -00000000c003cb38 l F .text 00000000000001be internalize_json_property -00000000c003ccf6 l F .text 0000000000000106 js_json_parse -00000000c003d2ce l F .text 00000000000002f6 js_object_groupBy -00000000c003d5c4 l F .text 000000000000011e js_map_forEach -00000000c003d6e2 l F .text 0000000000000210 js_promise_race -00000000c003d8f2 l F .text 0000000000000490 js_promise_all -00000000c003dd82 l F .text 00000000000001da js_promise_all_resolve_element -00000000c003e118 l F .text 00000000000002ec js_string_replace -00000000c003e404 l F .text 0000000000000392 js_array_from -00000000c003e796 l F .text 0000000000000178 JS_FlattenIntoArray -00000000c003e90e l F .text 0000000000000102 js_array_flatten -00000000c003eb1c l F .text 00000000000001e2 js_array_find -00000000c003ecfe l F .text 0000000000000218 js_array_reduce -00000000c003ef16 l F .text 00000000000003b0 js_array_every -00000000c003f2c6 l F .text 0000000000000022 js_function_call -00000000c003f2e8 l F .text 0000000000000282 js_typed_array_from -00000000c003f662 l F .text 0000000000000152 js_typed_array_find -00000000c003f7b4 l F .text 000000000000007a js_async_generator_resolve_or_reject.isra.0 -00000000c003f82e l F .text 000000000000004a js_async_generator_resolve -00000000c003f878 l F .text 000000000000034c js_async_generator_resume_next -00000000c003fc9e l F .text 000000000000006a js_async_function_call -00000000c003fd08 l F .text 00000000000000b4 js_execute_sync_module -00000000c003fdbc l F .text 00000000000000b6 js_execute_async_module.isra.0 -00000000c003fe72 l F .text 0000000000000156 js_async_module_execution_fulfilled -00000000c003ffc8 l F .text 000000000000024c js_inner_module_evaluation -00000000c0040214 l F .text 000000000000028e JS_EvalFunctionInternal -00000000c00404b6 l F .text 000000000000011c JS_LoadModuleInternal -00000000c0040684 l F .text 00000000000005ca __JS_EvalInternal -00000000c0040caa l F .text 0000000000000146 js_async_generator_next -00000000c0040df0 l F .text 000000000000029e js_async_from_sync_iterator_next -00000000c0041ce0 l F .text 0000000000000da4 JS_ReadObjectRec +00000000c00052aa l F .text 0000000000000136 js_def_malloc +00000000c00053e0 l F .text 0000000000000018 dbuf_put_u16 +00000000c00053f8 l F .text 0000000000000008 emit_u16 +00000000c0005400 l F .text 000000000000002e get_loc_or_ref +00000000c000542e l F .text 00000000000000e8 put_short_code +00000000c0005516 l F .text 0000000000000014 dbuf_put_u32 +00000000c000552a l F .text 0000000000000054 emit_op +00000000c000557e l F .text 00000000000000a8 set_object_name_computed +00000000c0005626 l F .text 0000000000000058 pop_scope +00000000c000567e l F .text 0000000000000042 close_scopes +00000000c00056c0 l F .text 0000000000000008 emit_u32 +00000000c00056c8 l F .text 000000000000004a emit_label +00000000c0005712 l F .text 000000000000008e push_short_int +00000000c00057a0 l F .text 0000000000000046 getTimezoneOffset +00000000c00057e6 l F .text 0000000000000026 date_now +00000000c000580c l F .text 0000000000000034 js_Date_now +00000000c0005840 l F .text 0000000000000024 js_class_has_bytecode +00000000c0005864 l F .text 0000000000000030 JS_GetFunctionBytecode +00000000c0005894 l F .text 0000000000000038 js_function_proto_lineNumber +00000000c00058cc l F .text 000000000000004e gc_scan_incref_child +00000000c000591a l F .text 000000000000004a compute_jsstring_size +00000000c0005964 l F .text 0000000000000014 compute_value_size +00000000c0005978 l F .text 0000000000000068 check_define_prop_flags +00000000c00059e0 l F .text 0000000000000018 tag_is_number +00000000c00059f8 l F .text 0000000000000032 is_var_in_arg_scope +00000000c0005a2a l F .text 000000000000002e string_advance_index +00000000c0005a58 l F .text 0000000000000066 js_string_find_invalid_codepoint.part.0 +00000000c0005abe l F .text 000000000000005a js_get_atom_index +00000000c0005b18 l F .text 0000000000000068 gc_decref_child +00000000c0005b80 l F .text 000000000000004c update_label +00000000c0005bcc l F .text 0000000000000120 find_jump_target +00000000c0005cec l F .text 0000000000000048 time_clip +00000000c0005d34 l F .text 0000000000000018 js_def_free +00000000c0005d4c l F .text 000000000000003e js_def_realloc +00000000c0005d8a l F .text 000000000000002c lre_js_is_ident_first +00000000c0005db6 l F .text 000000000000004c lre_js_is_ident_next +00000000c0005e02 l F .text 0000000000000244 simple_next_token +00000000c0006046 l F .text 0000000000000014 peek_token +00000000c000605a l F .text 00000000000000a2 JS_WriteString +00000000c00060fc l F .text 0000000000000036 set_eval_ret_undefined +00000000c0006132 l F .text 0000000000000042 js_cmp_doubles +00000000c0006174 l F .text 0000000000000006 js_TA_cmp_float64 +00000000c000617a l F .text 0000000000000012 js_TA_cmp_float32 +00000000c000618c l F .text 00000000000000a6 string_get_month +00000000c0006232 l F .text 0000000000000084 string_get_fixed_width_digits.constprop.0 +00000000c00062b6 l F .text 0000000000000034 delete_weak_ref.constprop.0 +00000000c00062ea l F .text 00000000000000da optimize_scope_make_ref.constprop.0 +00000000c00063c4 l F .text 0000000000000030 find_private_class_field.constprop.0 +00000000c00063f4 l F .text 000000000000005c find_lexical_decl.constprop.0 +00000000c0006450 l F .text 0000000000000050 JS_CompactBigInt1.constprop.0 +00000000c00064a0 l F .text 0000000000000036 js_get_fast_array.constprop.0 +00000000c00064d6 l F .text 0000000000000036 copy_str16.constprop.0 +00000000c000650c l F .text 0000000000000066 js_fcvt1.constprop.0 +00000000c0006572 l F .text 00000000000000b0 js_ecvt1.constprop.0 +00000000c0006622 l F .text 0000000000000136 JS_AtomGetStrRT.constprop.0 +00000000c0006758 l F .text 0000000000000004 JS_AtomGetStr.constprop.0 +00000000c000675c l F .text 000000000000001a JS_DupValue.constprop.0 +00000000c0006776 l F .text 000000000000000e js_promise_finally_value_thunk +00000000c0006784 l F .text 000000000000000a js_iterator_proto_iterator +00000000c000678e l F .text 000000000000000a js_get_this +00000000c0006798 l F .text 0000000000000012 bf_delete +00000000c00067aa l F .text 0000000000000070 JS_ToBigFloat +00000000c000681a l F .text 0000000000000074 js_object_has_name.constprop.0.isra.0 +00000000c000688e l F .text 0000000000000010 JS_NewModuleValue +00000000c000689e l F .text 0000000000000004 js_def_malloc_usable_size +00000000c00068a2 l F .text 000000000000006e js_bytecode_function_mark +00000000c0006910 l F .text 0000000000000014 js_typed_array_mark +00000000c0006924 l F .text 0000000000000048 find_var +00000000c000696c l F .text 0000000000000082 days_from_year +00000000c00069ee l F .text 0000000000000118 set_date_fields +00000000c0006b06 l F .text 0000000000000094 js_string_memcmp +00000000c0006b9a l F .text 0000000000000058 js_string_compare.constprop.0 +00000000c0006c58 l F .text 000000000000003c js_alloc_string_rt +00000000c0006c9c l F .text 00000000000000b4 JS_FreeAtomStruct +00000000c0006d50 l F .text 000000000000001e __JS_FreeAtom +00000000c0006d6e l F .text 000000000000001e js_free_string +00000000c0006d8c l F .text 0000000000000042 map_decref_record +00000000c0006dce l F .text 000000000000007c js_array_buffer_finalizer +00000000c0006e4a l F .text 0000000000000004 js_array_buffer_free +00000000c0006e72 l F .text 00000000000000b6 JS_ResizeAtomHash +00000000c0006f2e l F .text 0000000000000026 string_buffer_set_error +00000000c0006f54 l F .text 000000000000001c string_buffer_free +00000000c0007050 l F .text 0000000000000034 hash_string +00000000c0007084 l F .text 00000000000002e6 __JS_NewAtom +00000000c000736a l F .text 000000000000005a __JS_NewAtomInit +00000000c00073c4 l F .text 0000000000000042 JS_NewAtomStr +00000000c0007406 l F .text 0000000000000096 map_hash_key.constprop.0 +00000000c000749c l F .text 000000000000011c __JS_FindAtom.constprop.0 +00000000c00075dc l F .text 000000000000001e emit_atom +00000000c000760a l F .text 0000000000000042 js_free_prop_enum +00000000c000764c l F .text 00000000000001d8 put_lvalue +00000000c0007824 l F .text 000000000000010c set_object_name +00000000c0007930 l F .text 0000000000000190 skip_dead_code +00000000c0007ace l F .text 00000000000000a2 free_bytecode_atoms +00000000c0007c26 l F .text 0000000000000024 JS_FreeValue +00000000c0007c4a l F .text 0000000000000166 js_strict_eq2 +00000000c0007db0 l F .text 0000000000000036 js_same_value +00000000c0007de6 l F .text 0000000000000024 js_object_is +00000000c0007e0a l F .text 000000000000008e map_find_record +00000000c0007e98 l F .text 000000000000004c js_strict_eq_slow +00000000c0007ee4 l F .text 000000000000003e free_arg_list +00000000c0007f22 l F .text 0000000000000030 js_free_desc +00000000c0007f52 l F .text 00000000000000a0 JS_ToBoolFree +00000000c0007ff2 l F .text 0000000000000066 js_method_set_home_object +00000000c0008058 l F .text 0000000000000018 JS_FreeBigInt +00000000c0008070 l F .text 0000000000000014 set_value +00000000c0008a26 l F .text 0000000000000044 js_free_modules +00000000c0008804 l F .text 0000000000000098 js_free_shape +00000000c0008294 l F .text 0000000000000014 js_c_function_finalizer +00000000c00082a8 l F .text 000000000000007c free_property +00000000c00087a6 l F .text 0000000000000026 JS_FreeValueRT +00000000c000889c l F .text 0000000000000078 free_var_ref +00000000c0008324 l F .text 000000000000022e free_gc_object +00000000c0008a6a l F .text 000000000000007a async_func_free_frame +00000000c0008552 l F .text 000000000000004e free_zero_refcount +00000000c00085a0 l F .text 0000000000000060 async_func_free +00000000c0008600 l F .text 0000000000000082 close_var_refs +00000000c0008682 l F .text 000000000000002a free_generator_stack_rt +00000000c00086ac l F .text 0000000000000028 js_async_generator_complete +00000000c00086d4 l F .text 0000000000000014 js_async_function_resolve_finalizer +00000000c00087cc l F .text 0000000000000038 promise_reaction_data_free +00000000c0008914 l F .text 0000000000000112 js_free_module_def +00000000c0008ae4 l F .text 000000000000003e js_regexp_string_iterator_finalizer +00000000c0008b22 l F .text 0000000000000034 js_array_iterator_finalizer +00000000c0008b56 l F .text 0000000000000096 js_map_finalizer +00000000c0008bec l F .text 0000000000000040 js_typed_array_finalizer +00000000c0008c2c l F .text 0000000000000030 js_regexp_finalizer +00000000c0008c5c l F .text 0000000000000056 js_for_in_iterator_finalizer +00000000c0008cb2 l F .text 0000000000000054 js_bound_function_finalizer +00000000c0008d06 l F .text 0000000000000082 js_bytecode_function_finalizer +00000000c0008d88 l F .text 0000000000000024 js_object_data_finalizer +00000000c0008dac l F .text 000000000000003a js_array_finalizer +00000000c0008de6 l F .text 0000000000000078 map_delete_record.part.0 +00000000c0008e5e l F .text 000000000000007a js_async_generator_free +00000000c0008ed8 l F .text 0000000000000046 js_promise_resolve_function_finalizer +00000000c0008f1e l F .text 0000000000000050 js_map_iterator_finalizer +00000000c0008f80 l F .text 0000000000000048 value_buffer_free +00000000c0008fc8 l F .text 0000000000000088 free_token +00000000c0009050 l F .text 000000000000017a js_free_function_def +00000000c00091ca l F .text 00000000000000f2 js_compare_bigfloat +00000000c00092ce l F .text 0000000000000040 js_regexp_string_iterator_mark +00000000c000930e l F .text 0000000000000018 js_array_iterator_mark +00000000c0009326 l F .text 0000000000000018 js_map_iterator_mark +00000000c000933e l F .text 0000000000000064 js_map_mark +00000000c00093a2 l F .text 0000000000000012 js_for_in_iterator_mark +00000000c00093b4 l F .text 0000000000000058 js_bound_function_mark +00000000c000940c l F .text 0000000000000012 js_object_data_mark +00000000c000941e l F .text 0000000000000044 js_array_mark +00000000c0009462 l F .text 0000000000000378 mark_children +00000000c00097da l F .text 0000000000000018 js_promise_resolve_function_mark +00000000c0013e46 l F .text 0000000000000008 invalid_to_string +00000000c0013e26 l F .text 0000000000000020 invalid_unary_arith +00000000c0013df8 l F .text 000000000000002e invalid_binary_arith +00000000c0013df0 l F .text 0000000000000008 invalid_mul_pow10_to_float64 +00000000c0013de0 l F .text 0000000000000010 invalid_mul_pow10 +00000000c0028d54 l F .text 000000000000026e js_call_c_function +00000000c000a9c4 l F .text 00000000000000aa js_c_function_data_call +00000000c003ba70 l F .text 00000000000000fe js_call_bound_function +00000000c003831a l F .text 00000000000000a8 js_generator_function_call +00000000c000a792 l F .text 0000000000000024 js_promise_finally_thrower +00000000c000a816 l F .text 000000000000008a js_operator_typeof +00000000c000aa6e l F .text 0000000000000038 js_generator_finalizer +00000000c000aaa6 l F .text 0000000000000056 js_c_function_data_mark +00000000c000aafc l F .text 000000000000005e js_c_function_data_finalizer +00000000c000ab5a l F .text 0000000000000044 js_proxy_revoke +00000000c000ab9e l F .text 0000000000000052 js_proxy_mark +00000000c000abf0 l F .text 000000000000004e js_proxy_finalizer +00000000c000ac3e l F .text 0000000000000090 js_async_generator_mark +00000000c000acce l F .text 000000000000002e js_async_generator_finalizer +00000000c000acfc l F .text 0000000000000052 js_async_from_sync_iterator_mark +00000000c000ad4e l F .text 000000000000004e js_async_from_sync_iterator_finalizer +00000000c000ad9c l F .text 00000000000000d4 js_promise_mark +00000000c000ae70 l F .text 0000000000000088 js_promise_finalizer +00000000c001f8e0 l F .text 000000000000014c js_compile_regexp +00000000c003a6f6 l F .text 00000000000000f6 js_new_promise_capability +00000000c000b08a l F .text 0000000000006870 JS_CallInternal +00000000c0014ae8 l F .text 0000000000000018 js_poll_interrupts +00000000c0029520 l F .text 000000000000012c js_closure +00000000c001f41e l F .text 00000000000002f2 build_backtrace +00000000c00287bc l F .text 00000000000000d8 JS_ToObject +00000000c0016596 l F .text 0000000000000198 add_property +00000000c0014e98 l F .text 00000000000000d6 get_var_ref +00000000c003846a l F .text 0000000000000156 JS_CallConstructorInternal +00000000c00398f0 l F .text 00000000000000ac js_function_apply +00000000c0013bae l F .text 00000000000000fa JS_CheckBrand +00000000c0013a66 l F .text 0000000000000010 JS_ThrowTypeErrorNotAnObject +00000000c0018ce4 l F .text 000000000000005c JS_NewSymbolFromAtom.constprop.0 +00000000c00135c0 l F .text 0000000000000036 __JS_ThrowTypeErrorAtom +00000000c0013224 l F .text 0000000000000036 __JS_ThrowSyntaxErrorAtom +00000000c00149c6 l F .text 0000000000000032 JS_ThrowReferenceErrorUninitialized +00000000c0020de4 l F .text 0000000000000086 JS_EvalObject +00000000c0031a7e l F .text 000000000000010a build_arg_list +00000000c00284ca l F .text 0000000000000090 js_regexp_constructor_internal +00000000c00407a2 l F .text 00000000000000b2 js_dynamic_import_job +00000000c00301da l F .text 00000000000000ee JS_SetGlobalVar +00000000c0014a20 l F .text 0000000000000028 JS_ThrowReferenceErrorNotDefined +00000000c00149f8 l F .text 0000000000000028 JS_ThrowReferenceErrorUninitialized2.isra.0 +00000000c003077a l F .text 00000000000003fc JS_GetOwnPropertyNamesInternal +00000000c001470c l F .text 000000000000002a JS_GetPrototypeFree +00000000c0011ff2 l F .text 00000000000001da JS_GetOwnPropertyInternal +00000000c003add6 l F .text 0000000000000070 js_for_of_start +00000000c003ab02 l F .text 00000000000000ba JS_IteratorNext.constprop.0 +00000000c0011c94 l F .text 0000000000000082 JS_IteratorGetCompleteValue +00000000c0013a76 l F .text 00000000000000b8 JS_IteratorClose +00000000c00118fa l F .text 0000000000000036 JS_CallFree +00000000c002fe7a l F .text 0000000000000056 JS_DefineObjectName.constprop.0 +00000000c002fed0 l F .text 0000000000000080 JS_DefineObjectNameComputed.constprop.0 +00000000c0015128 l F .text 00000000000001c8 JS_SetPrototypeInternal +00000000c001aabc l F .text 0000000000000076 js_get_function_name +00000000c001a9da l F .text 00000000000000e2 JS_ConcatString3 +00000000c0016024 l F .text 00000000000000ae js_closure2 +00000000c0011d96 l F .text 0000000000000224 JS_GetPropertyValue +00000000c0012776 l F .text 0000000000000218 JS_SetPropertyValue +00000000c0028b48 l F .text 00000000000000aa js_create_array_iterator +00000000c003ac0e l F .text 00000000000001c8 JS_GetIterator +00000000c0031b88 l F .text 0000000000000166 js_array_iterator_next +00000000c001c4ea l F .text 0000000000000054 js_get_length32 +00000000c003520a l F .text 0000000000000160 JS_CopyDataProperties +00000000c001eb0a l F .text 00000000000001c2 js_add_slow +00000000c0019d16 l F .text 00000000000001a0 JS_ToPrimitiveFree +00000000c001ab32 l F .text 0000000000000252 JS_ConcatString +00000000c001eccc l F .text 0000000000000256 js_binary_arith_slow +00000000c001ef22 l F .text 000000000000012a js_unary_arith_slow +00000000c001eb00 l F .text 000000000000000a JS_ToNumericFree +00000000c001f04c l F .text 000000000000007e js_not_slow +00000000c001f1c0 l F .text 000000000000015a js_binary_logic_slow +00000000c001f0ca l F .text 00000000000000f6 js_shr_slow +00000000c00206b2 l F .text 0000000000000232 js_relational_slow +00000000c00208e4 l F .text 00000000000002dc js_eq_slow +00000000c001a1d4 l F .text 0000000000000034 js_new_string_char +00000000c001509e l F .text 000000000000008a JS_AutoInitProperty +00000000c0021248 l F .text 0000000000000038 JS_AtomIsNumericIndex +00000000c0011d16 l F .text 0000000000000080 js_is_regexp +00000000c001d4ce l F .text 00000000000001f0 set_array_length +00000000c001350e l F .text 0000000000000088 call_setter +00000000c001fbe6 l F .text 000000000000003e JS_ToBigInt64Free +00000000c001c43a l F .text 000000000000000a JS_ToNumberFree +00000000c00135f6 l F .text 0000000000000048 JS_ThrowTypeErrorReadOnly +00000000c00131b6 l F .text 0000000000000044 JS_ThrowTypeErrorOrFalse +00000000c0017752 l F .text 00000000000000ba add_fast_array_element +00000000c0021280 l F .text 000000000000028e JS_CreateProperty +00000000c001c71c l F .text 00000000000000a2 JS_ToUint8ClampFree +00000000c001c444 l F .text 00000000000000a6 JS_ToInt32Free +00000000c001c7be l F .text 00000000000000a0 JS_ToFloat64Free +00000000c001d3be l F .text 0000000000000110 JS_ToArrayLengthFree +00000000c0015012 l F .text 000000000000008c js_shape_prepare_update +00000000c00153b8 l F .text 0000000000000040 js_update_property_flags +00000000c00171a0 l F .text 00000000000000ae convert_fast_array_to_array +00000000c0021070 l F .text 00000000000001d8 JS_AtomIsNumericIndex1 +00000000c001c886 l F .text 0000000000000062 JS_NumberIsInteger +00000000c00130e4 l F .text 0000000000000090 JS_ThrowError2 +00000000c0013174 l F .text 0000000000000042 JS_ThrowError +00000000c001325a l F .text 0000000000000092 js_resolve_export_throw_error +00000000c00132ec l F .text 0000000000000028 bc_read_error_end +00000000c0013314 l F .text 0000000000000024 bc_get_u8 +00000000c0013338 l F .text 0000000000000032 bc_get_leb128 +00000000c001336a l F .text 0000000000000026 bc_get_leb128_u16 +00000000c0013390 l F .text 000000000000005c bc_get_u64 +00000000c00133ec l F .text 000000000000004a bc_get_buf +00000000c0013436 l F .text 000000000000006c bc_idx_to_atom +00000000c00134a2 l F .text 0000000000000042 bc_get_atom +00000000c0013596 l F .text 000000000000002a check_function +00000000c001363e l F .text 0000000000000028 JS_ThrowTypeErrorInvalidClass +00000000c001369a l F .text 0000000000000078 js_map_get +00000000c0013712 l F .text 000000000000007c js_map_delete +00000000c001378e l F .text 0000000000000064 js_map_has +00000000c00137f2 l F .text 000000000000004c js_map_get_size +00000000c001383e l F .text 0000000000000060 js_map_clear +00000000c001389e l F .text 0000000000000044 js_array_buffer_get_byteLength +00000000c00138e2 l F .text 0000000000000080 JS_EvalInternal +00000000c00139f4 l F .text 0000000000000072 js_promise_executor +00000000c0013b2e l F .text 0000000000000080 js_regexp_get_flag +00000000c0013ca8 l F .text 0000000000000118 JS_SpeciesConstructor +00000000c0013dc0 l F .text 0000000000000010 JS_ThrowTypeErrorDetachedArrayBuffer +00000000c0013dd0 l F .text 0000000000000010 JS_ThrowUnsupportedOperation +00000000c0013e4e l F .text 0000000000000080 JS_SetThisTimeValue +00000000c0013ece l F .text 000000000000004a js_thisBigIntValue +00000000c0013f18 l F .text 0000000000000008 js_bigint_valueOf +00000000c0013f20 l F .text 000000000000004a js_symbol_keyFor +00000000c0013f6a l F .text 0000000000000048 js_thisSymbolValue +00000000c0013fb2 l F .text 0000000000000008 js_symbol_valueOf +00000000c0013fba l F .text 000000000000004c js_string_toString +00000000c0014006 l F .text 000000000000004a js_thisBooleanValue +00000000c0014050 l F .text 0000000000000008 js_boolean_valueOf +00000000c0014058 l F .text 0000000000000046 js_thisNumberValue +00000000c001409e l F .text 0000000000000008 js_number_valueOf +00000000c00140a6 l F .text 000000000000005e get_typed_array +00000000c0014104 l F .text 0000000000000034 js_typed_array_get_length_internal +00000000c0014138 l F .text 00000000000000d0 js_typed_array_reverse +00000000c0014208 l F .text 0000000000000058 js_typed_array_get_byteOffset +00000000c0014260 l F .text 0000000000000058 js_typed_array_get_byteLength +00000000c00142b8 l F .text 000000000000002e js_typed_array_get_buffer +00000000c00142e6 l F .text 0000000000000032 validate_typed_array +00000000c0014318 l F .text 000000000000002e js_typed_array_get_length +00000000c0014346 l F .text 0000000000000010 js_throw_type_error +00000000c0014356 l F .text 0000000000000046 js_function_proto_caller +00000000c001439c l F .text 0000000000000010 js_typed_array_base_constructor +00000000c00143ac l F .text 0000000000000010 JS_ThrowTypeErrorRevokedProxy.isra.0 +00000000c0014428 l F .text 0000000000000030 js_array_isArray +00000000c0014458 l F .text 0000000000000074 get_proxy_method +00000000c0014588 l F .text 0000000000000048 js_object_isExtensible +00000000c0014736 l F .text 000000000000002e js_object_getPrototypeOf +00000000c0014826 l F .text 0000000000000082 js_object_preventExtensions +00000000c00148a8 l F .text 0000000000000074 JS_GetFunctionRealm +00000000c001491c l F .text 0000000000000080 JS_SetObjectData.isra.0 +00000000c0014a9c l F .text 000000000000004c __js_poll_interrupts +00000000c0014b00 l F .text 0000000000000130 JS_OrdinaryIsInstanceOf +00000000c0014cd4 l F .text 0000000000000036 js_function_hasInstance +00000000c0014f6e l F .text 00000000000000a4 js_clone_shape +00000000c00152fa l F .text 0000000000000038 js_reflect_setPrototypeOf +00000000c0015332 l F .text 0000000000000056 js_object_set___proto__ +00000000c0015388 l F .text 0000000000000030 js_object_setPrototypeOf +00000000c00153f8 l F .text 0000000000000078 seal_template_obj +00000000c00154f6 l F .text 0000000000000142 fulfill_or_reject_promise +00000000c003a966 l F .text 00000000000000e4 promise_reaction_job +00000000c0015638 l F .text 0000000000000132 js_promise_resolve_function_call +00000000c003e21c l F .text 00000000000000cc js_promise_resolve_thenable_job +00000000c001576a l F .text 0000000000000040 JS_NewBigInt +00000000c00157aa l F .text 000000000000005c js_create_module_var +00000000c0015806 l F .text 0000000000000030 add_reloc +00000000c0015836 l F .text 00000000000002be js_typed_array_sort +00000000c003f73a l F .text 00000000000000f8 js_TA_cmp_generic +00000000c0018ed4 l F .text 000000000000000a js_TA_get_int64 +00000000c0018f42 l F .text 000000000000000a js_TA_get_uint64 +00000000c0015af4 l F .text 0000000000000332 js_new_shape2.constprop.0 +00000000c0015e26 l F .text 0000000000000086 typed_array_init.isra.0 +00000000c0015ed2 l F .text 0000000000000152 async_func_init +00000000c00160d2 l F .text 00000000000001a8 perform_promise_then +00000000c001627a l F .text 0000000000000080 js_new_module_def +00000000c001632a l F .text 000000000000015c resize_properties +00000000c0016486 l F .text 0000000000000110 add_shape_property +00000000c001672e l F .text 00000000000000c6 JS_DefineAutoInitProperty +00000000c00167f4 l F .text 0000000000000164 JS_NewObjectFromShape +00000000c0016bba l F .text 00000000000000b2 js_create_from_ctor +00000000c0016c6c l F .text 0000000000000148 js_array_buffer_constructor3 +00000000c0016db4 l F .text 000000000000001e js_array_buffer_constructor2 +00000000c0016dd2 l F .text 000000000000006e js_boolean_constructor +00000000c0016e60 l F .text 000000000000009e js_create_map_iterator +00000000c0016f68 l F .text 000000000000012a js_create_module_function +00000000c0017092 l F .text 00000000000000fc js_proxy_constructor +00000000c001724e l F .text 0000000000000070 ident_realloc +00000000c00172be l F .text 0000000000000386 delete_property +00000000c0017696 l F .text 0000000000000072 string_buffer_widen +00000000c0017708 l F .text 000000000000004a expand_fast_array +00000000c001780c l F .text 000000000000007c js_allocate_fast_array +00000000c0017888 l F .text 0000000000000058 js_realloc_array +00000000c00178e0 l F .text 000000000000000e js_resize_array +00000000c00178ee l F .text 0000000000000126 get_exported_names +00000000c0017a14 l F .text 0000000000000176 js_resolve_export1 +00000000c0017b8a l F .text 0000000000000048 js_resolve_export +00000000c0017bd2 l F .text 00000000000000fc gather_available_ancestors +00000000c0017cce l F .text 00000000000000d2 bc_atom_to_idx +00000000c0017da0 l F .text 000000000000003c bc_put_atom.isra.0 +00000000c0017ddc l F .text 000000000000004a BC_add_object_ref1 +00000000c0017e26 l F .text 000000000000005a new_label_fd +00000000c0017e80 l F .text 0000000000000008 new_label +00000000c0017e88 l F .text 000000000000005c emit_goto +00000000c0017ee4 l F .text 000000000000008a emit_class_field_init +00000000c0017f6e l F .text 00000000000001b8 emit_return +00000000c0018126 l F .text 000000000000007c optional_chain_test +00000000c00181a2 l F .text 00000000000000a6 js_emit_spread_code +00000000c0018248 l F .text 0000000000000092 var_object_test +00000000c00182da l F .text 0000000000000052 cpool_add +00000000c001832c l F .text 0000000000000076 emit_push_const +00000000c00183a2 l F .text 0000000000000058 emit_class_init_end +00000000c00183fa l F .text 000000000000006c add_global_var +00000000c0018466 l F .text 0000000000000076 add_req_module_entry +00000000c00184dc l F .text 0000000000000200 js_map_set +00000000c00186dc l F .text 00000000000000d0 push_scope +00000000c00187ac l F .text 00000000000004f8 js_atof +00000000c0018ca4 l F .text 0000000000000040 JS_NewSymbol +00000000c0018d40 l F .text 0000000000000026 js_alloc_string +00000000c0018d66 l F .text 0000000000000038 string_buffer_init2 +00000000c0018d9e l F .text 0000000000000006 string_buffer_init +00000000c0018da4 l F .text 0000000000000042 js_new_string16 +00000000c0018de6 l F .text 0000000000000082 JS_ReadString +00000000c0018f4c l F .text 000000000000006a js_string_to_bigint +00000000c0018fb6 l F .text 0000000000000042 throw_bf_exception.isra.0 +00000000c0018ff8 l F .text 00000000000000be string_buffer_realloc +00000000c00190b6 l F .text 0000000000000082 string_buffer_write8 +00000000c0019138 l F .text 00000000000000e4 string_buffer_concat +00000000c001921c l F .text 0000000000000022 string_buffer_puts8 +00000000c001923e l F .text 0000000000000078 encodeURI_hex.isra.0 +00000000c00192b6 l F .text 0000000000000052 string_buffer_putc8 +00000000c0019308 l F .text 0000000000000080 string_buffer_putc_slow +00000000c0019388 l F .text 000000000000003e string_buffer_putc16 +00000000c00193c6 l F .text 0000000000000050 string_buffer_putc +00000000c0019416 l F .text 000000000000004a string_buffer_fill +00000000c001a182 l F .text 0000000000000052 js_new_string8 +00000000c0019eda l F .text 0000000000000096 string_buffer_end +00000000c0019630 l F .text 00000000000001a4 js_host_resolve_imported_module +00000000c00198ba l F .text 0000000000000094 find_atom +00000000c001994e l F .text 00000000000000dc js_new_function_def +00000000c0019a2a l F .text 00000000000000c4 emit_class_init_start +00000000c0019aee l F .text 0000000000000104 parse_ident +00000000c0019c60 l F .text 00000000000000a2 __JS_AtomToValue +00000000c0019eb6 l F .text 0000000000000024 JS_ToPrimitive +00000000c0019fb4 l F .text 0000000000000066 exported_names_cmp +00000000c001a01a l F .text 000000000000006c js_symbol_get_description +00000000c001a086 l F .text 0000000000000034 js_boolean_toString +00000000c001a0ba l F .text 0000000000000038 js_function_proto_fileName +00000000c001a0f2 l F .text 0000000000000052 js_object___getClass +00000000c001a144 l F .text 000000000000003e js_typed_array_get_toStringTag +00000000c001a208 l F .text 000000000000007a js_string_get_own_property +00000000c001a282 l F .text 00000000000000c6 js_string_iterator_next +00000000c001a348 l F .text 00000000000000d2 js_sub_string +00000000c001a41a l F .text 0000000000000058 JS_NewAtomInt64 +00000000c001a472 l F .text 00000000000003e2 js_dtoa +00000000c001a9b0 l F .text 000000000000002a JS_ToStringFree +00000000c001ad84 l F .text 0000000000000128 js_error_toString +00000000c001aeac l F .text 0000000000000086 string_buffer_concat_value_free +00000000c001af32 l F .text 00000000000000aa js_regexp_toString +00000000c001afdc l F .text 00000000000000a0 check_regexp_g_flag +00000000c001b07c l F .text 0000000000000020 JS_ToStringCheckObject +00000000c001b09c l F .text 000000000000017a JS_ToQuotedString +00000000c001b216 l F .text 000000000000002a JS_ToQuotedStringFree +00000000c001b240 l F .text 0000000000000008 js_string___quote +00000000c001b248 l F .text 0000000000000160 js_string_CreateHTML +00000000c001b3a8 l F .text 00000000000001be js_string_toLowerCase +00000000c001b566 l F .text 000000000000005a js_string_isWellFormed +00000000c001b5c0 l F .text 000000000000006a js_string_concat +00000000c001b62a l F .text 00000000000000fe js_string_toWellFormed +00000000c001b728 l F .text 00000000000000b0 js_string_trim +00000000c001b7d8 l F .text 00000000000000d0 js_string_normalize1 +00000000c001b8a8 l F .text 000000000000007c string_buffer_concat_value +00000000c001b924 l F .text 0000000000000412 js_Date_parse +00000000c001bd36 l F .text 0000000000000034 js_symbol_for +00000000c001bd6a l F .text 000000000000005e js_symbol_constructor +00000000c001bdc8 l F .text 0000000000000110 js_string_localeCompare +00000000c001bed8 l F .text 00000000000000e8 js_global_unescape +00000000c001bfc0 l F .text 00000000000000b8 js_global_escape +00000000c001c276 l F .text 00000000000001c4 JS_ToNumberHintFree +00000000c001c60e l F .text 0000000000000044 js_math_clz32 +00000000c001c652 l F .text 000000000000004e js_math_imul +00000000c001c6a0 l F .text 000000000000007c js_string_fromCharCode +00000000c001c8e8 l F .text 0000000000000030 js_number_isInteger +00000000c001c918 l F .text 0000000000000136 js_Date_UTC +00000000c001ca4e l F .text 0000000000000046 JS_ThisTimeValue +00000000c001ca94 l F .text 000000000000019a get_date_fields +00000000c001cc2e l F .text 0000000000000098 get_date_field +00000000c001ccc6 l F .text 0000000000000056 js_date_getTimezoneOffset +00000000c001cd1c l F .text 000000000000004c js_date_getTime +00000000c001cd68 l F .text 000000000000010e set_date_field +00000000c001ce76 l F .text 00000000000000d4 js_date_setYear +00000000c001cf4a l F .text 0000000000000054 js_date_setTime +00000000c001cf9e l F .text 00000000000000a0 js_math_hypot +00000000c001d03e l F .text 000000000000016a js_math_min_max +00000000c001d1a8 l F .text 00000000000000c2 js_string_fromCodePoint +00000000c001d26a l F .text 000000000000008c js_number_isSafeInteger +00000000c001d2f6 l F .text 000000000000004e js_global_isFinite +00000000c001d344 l F .text 0000000000000022 js_number_isFinite +00000000c001d366 l F .text 0000000000000036 js_global_isNaN +00000000c001d39c l F .text 0000000000000022 js_number_isNaN +00000000c001d6be l F .text 0000000000000098 JS_ToInt32SatFree +00000000c001d77e l F .text 000000000000003a js_get_radix +00000000c001d7b8 l F .text 0000000000000094 js_number_toString +00000000c001d84c l F .text 000000000000009c js_string_codePointAt +00000000c001d8e8 l F .text 00000000000000be js_string_charCodeAt +00000000c001d9a6 l F .text 00000000000000d0 js_string_charAt +00000000c001da76 l F .text 00000000000000b8 js_number_toPrecision +00000000c001db2e l F .text 00000000000000a2 js_number_toFixed +00000000c001dbd0 l F .text 00000000000000cc js_number_toExponential +00000000c001dcfc l F .text 0000000000000360 js_typed_array_indexOf +00000000c001e05c l F .text 00000000000000f2 js_typed_array_copyWithin +00000000c001e14e l F .text 00000000000000c0 js_string_slice +00000000c001e20e l F .text 00000000000000ba js_string_substr +00000000c001e2c8 l F .text 00000000000000c8 js_string_substring +00000000c001e390 l F .text 000000000000009e JS_ToInt64SatFree +00000000c001e496 l F .text 000000000000015e js_dataview_constructor +00000000c001e5f4 l F .text 000000000000003e js_shared_array_buffer_constructor +00000000c001e632 l F .text 000000000000003e js_array_buffer_constructor +00000000c001e670 l F .text 000000000000030e js_dataview_getValue +00000000c001e9dc l F .text 0000000000000032 JS_ToLengthFree +00000000c001ea0e l F .text 000000000000004c js_get_length64 +00000000c001f31a l F .text 00000000000000b4 js_number_constructor +00000000c001f3ce l F .text 0000000000000010 JS_ToCString +00000000c001f710 l F .text 00000000000000aa js_resolve_module +00000000c001f7ec l F .text 0000000000000052 js_parseFloat +00000000c001f83e l F .text 00000000000000a2 js_parseInt +00000000c001fa2c l F .text 00000000000000da JS_StringToBigInt +00000000c001fb06 l F .text 0000000000000042 JS_StringToBigIntErr +00000000c001fb48 l F .text 000000000000009e JS_ToBigIntFree +00000000c001fc64 l F .text 00000000000001fa js_dataview_setValue +00000000c001fe5e l F .text 00000000000001c6 js_typed_array_fill +00000000c0020024 l F .text 0000000000000028 JS_ToBigInt +00000000c002004c l F .text 000000000000012c js_bigint_asUintN +00000000c0020178 l F .text 000000000000022a js_binary_arith_bigint +00000000c00203a2 l F .text 000000000000012c js_unary_arith_bigint +00000000c00204ce l F .text 00000000000001e4 js_bigint_constructor +00000000c0020bc0 l F .text 00000000000000c0 js_atom_concat_str +00000000c0020c80 l F .text 0000000000000164 js_string_normalize +00000000c0020e6a l F .text 00000000000001ee js_function_constructor +00000000c0021058 l F .text 0000000000000018 js_global_eval +00000000c002150e l F .text 000000000000017a js_string_includes +00000000c0021688 l F .text 000000000000015a js_string_indexOf +00000000c0021864 l F .text 0000000000000098 js_date_Symbol_toPrimitive +00000000c00218fc l F .text 00000000000001b8 js_regexp_get_source +00000000c0021ab4 l F .text 000000000000009c js_bigint_to_string1 +00000000c0021b50 l F .text 000000000000008e js_bigint_toString +00000000c0021bde l F .text 000000000000000a js_bigint_to_string +00000000c0021be8 l F .text 000000000000030c get_date_string +00000000c0021ef4 l F .text 0000000000000244 js_date_constructor +00000000c0022138 l F .text 0000000000000086 add_var +00000000c00221be l F .text 0000000000000052 add_scope_var +00000000c0022210 l F .text 000000000000003e add_private_class_field +00000000c002224e l F .text 000000000000002e add_var_this +00000000c002227c l F .text 0000000000000030 add_arguments_var +00000000c00222ac l F .text 0000000000000054 add_func_var +00000000c0022300 l F .text 000000000000009a resolve_pseudo_var +00000000c002239a l F .text 0000000000000086 add_arg +00000000c0022420 l F .text 00000000000000c2 add_closure_var +00000000c00224e2 l F .text 00000000000000ae get_closure_var2 +00000000c0022590 l F .text 00000000000000f2 resolve_scope_private_field1 +00000000c0022682 l F .text 0000000000000a00 resolve_scope_var +00000000c0023082 l F .text 0000000000000c52 resolve_variables +00000000c0023cd4 l F .text 0000000000000396 add_eval_variables +00000000c002406a l F .text 00000000000000ce ss_check +00000000c0024138 l F .text 0000000000001c1a js_create_function +00000000c0025d52 l F .text 00000000000001d4 js_string_pad +00000000c0025f26 l F .text 0000000000000114 js_string_repeat +00000000c002603a l F .text 0000000000000024 js_throw_URIError +00000000c002605e l F .text 00000000000001f8 js_global_encodeURI +00000000c0026256 l F .text 0000000000000076 hex_decode +00000000c00262cc l F .text 00000000000001bc js_global_decodeURI +00000000c00264dc l F .text 00000000000000d0 add_export_entry2 +00000000c0026640 l F .text 0000000000000288 js_parse_string +00000000c00268c8 l F .text 000000000000035c json_next_token +00000000c0026c24 l F .text 0000000000000018 json_parse_expect +00000000c0026c3c l F .text 000000000000012a js_parse_template_part +00000000c0026d66 l F .text 000000000000078e next_token +00000000c00274f4 l F .text 0000000000000014 js_parse_seek_token +00000000c0027508 l F .text 000000000000012c js_parse_directives.part.0 +00000000c0027634 l F .text 0000000000000098 is_let +00000000c00276cc l F .text 00000000000001a2 js_parse_regexp +00000000c002786e l F .text 0000000000000256 js_parse_skip_parens_token +00000000c0027ac4 l F .text 0000000000000036 js_parse_expect_semi +00000000c0027afa l F .text 0000000000000050 js_parse_check_duplicate_parameter +00000000c0027b4a l F .text 0000000000000328 get_lvalue +00000000c0027e72 l F .text 000000000000002a js_parse_error_reserved_identifier +00000000c0027e9c l F .text 0000000000000104 js_parse_function_check_names +00000000c0027fa0 l F .text 000000000000028e define_var +00000000c002822e l F .text 00000000000000b6 js_define_var +00000000c00282e4 l F .text 000000000000006c js_parse_from_clause +00000000c0028350 l F .text 00000000000000e0 add_import +00000000c0028430 l F .text 0000000000000082 js_parse_destructuring_var.constprop.0 +00000000c00284b2 l F .text 0000000000000018 js_parse_expect +00000000c002855a l F .text 0000000000000262 js_regexp_constructor +00000000c0028894 l F .text 000000000000004c js_object_get___proto__ +00000000c00288e0 l F .text 00000000000000c6 js_object_isPrototypeOf +00000000c00289a6 l F .text 0000000000000008 js_object_valueOf +00000000c00289ae l F .text 0000000000000042 js_object_constructor +00000000c0028ace l F .text 000000000000007a js_reflect_deleteProperty +00000000c0028bf2 l F .text 000000000000003a js_create_typed_array_iterator +00000000c0028c2c l F .text 0000000000000066 js_instantiate_prototype +00000000c0028c92 l F .text 000000000000008c js_create_iterator_result +00000000c0028d1e l F .text 0000000000000036 js_async_from_sync_iterator_unwrap +00000000c0028fc2 l F .text 0000000000000046 js_function_set_properties +00000000c0029008 l F .text 00000000000000f8 js_create_resolving_functions +00000000c0029100 l F .text 00000000000002b6 JS_NewCFunction3 +00000000c002949e l F .text 0000000000000082 js_async_generator_resolve_function_create.constprop.0 +00000000c003fd94 l F .text 00000000000000da js_async_generator_resolve_function +00000000c00296b6 l F .text 0000000000000044 JS_CreateDataPropertyUint32 +00000000c00296fa l F .text 0000000000000088 js_create_array +00000000c0029782 l F .text 0000000000000122 js_map_iterator_next +00000000c0029b88 l F .text 000000000000000a js_module_ns_autoinit +00000000c0029b92 l F .text 000000000000005a JS_SetConstructor2 +00000000c0029bf8 l F .text 000000000000004e JS_NewGlobalCConstructor2 +00000000c0029c46 l F .text 000000000000003e JS_NewGlobalCConstructor +00000000c0029c84 l F .text 0000000000000040 JS_NewGlobalCConstructorOnly.constprop.0 +00000000c0029cc4 l F .text 000000000000028a json_parse_value +00000000c002a008 l F .text 00000000000000ba js_proxy_revocable +00000000c002a0c2 l F .text 000000000000005e js_aggregate_error_constructor +00000000c002a120 l F .text 0000000000000262 js_parse_template +00000000c002d53a l F .text 0000000000000006 js_parse_expr +00000000c002a382 l F .text 0000000000000fb8 js_parse_postfix_expr +00000000c002cdac l F .text 000000000000000a js_parse_function_decl.constprop.0 +00000000c002d76e l F .text 0000000000000038 js_parse_expr_paren +00000000c002bae4 l F .text 00000000000008b2 js_parse_destructuring_element +00000000c002d9de l F .text 0000000000000a08 js_parse_class +00000000c002d7a6 l F .text 0000000000000006 js_parse_assign_expr +00000000c002d540 l F .text 000000000000022e js_parse_property_name +00000000c002b33a l F .text 000000000000049c js_parse_unary +00000000c002b7d6 l F .text 0000000000000234 js_parse_expr_binary +00000000c002ba0a l F .text 00000000000000da js_parse_logical_and_or +00000000c002c396 l F .text 0000000000000a16 js_parse_function_decl2.constprop.0 +00000000c002f6ae l F .text 0000000000000638 js_parse_source_element +00000000c002cdb6 l F .text 000000000000072a js_parse_assign_expr2 +00000000c002d4e0 l F .text 000000000000005a js_parse_expr2 +00000000c002d7ac l F .text 0000000000000232 js_parse_var +00000000c002e3e6 l F .text 00000000000012c8 js_parse_statement_or_decl +00000000c002fce6 l F .text 000000000000005a js_parse_block +00000000c002fd40 l F .text 00000000000000ea js_string_constructor +00000000c002fe2a l F .text 0000000000000050 js_symbol_toString +00000000c002ff50 l F .text 00000000000000f0 js_string_define_own_property +00000000c0030040 l F .text 0000000000000076 js_arguments_define_own_property +00000000c0030108 l F .text 00000000000000d2 js_object___defineGetter__ +00000000c00302c8 l F .text 0000000000000016 JS_SetProperty +00000000c00302de l F .text 000000000000015a js_regexp_compile +00000000c0030438 l F .text 00000000000000f8 js_array_constructor +00000000c00305ae l F .text 00000000000000ca js_array_fill +00000000c00306c6 l F .text 00000000000000b4 js_reflect_set +00000000c0030c8a l F .text 0000000000000078 js_reflect_has +00000000c0030d02 l F .text 00000000000000d2 js_object_isSealed +00000000c0030dd4 l F .text 00000000000000e4 js_object___lookupGetter__ +00000000c0030eb8 l F .text 00000000000000a0 js_object_propertyIsEnumerable +00000000c0030f58 l F .text 0000000000000096 js_object_hasOwnProperty +00000000c0030fee l F .text 000000000000009a js_object_hasOwn +00000000c0031088 l F .text 00000000000001e2 js_object_getOwnPropertyDescriptor +00000000c003126a l F .text 0000000000000146 js_object_getOwnPropertyDescriptors +00000000c00313b0 l F .text 000000000000015e js_object_seal +00000000c003150e l F .text 0000000000000168 js_typed_array_constructor_ta +00000000c0031676 l F .text 000000000000007c js_typed_array_toSorted +00000000c00316f2 l F .text 000000000000007c js_typed_array_toReversed +00000000c003176e l F .text 00000000000000e0 js_typed_array_with +00000000c003184e l F .text 0000000000000062 remainingElementsCount_add +00000000c00318b0 l F .text 00000000000001ce js_typed_array_set +00000000c0031cee l F .text 00000000000002a4 js_obj_to_desc +00000000c0031f92 l F .text 0000000000000062 JS_DefinePropertyDesc +00000000c0031ff4 l F .text 00000000000000aa js_object_defineProperty +00000000c003209e l F .text 000000000000007e JS_GetPropertyInt64 +00000000c003211c l F .text 0000000000000118 js_array_includes +00000000c0032234 l F .text 0000000000000082 js_typed_array_at +00000000c00322b6 l F .text 00000000000002a6 js_string___GetSubstitution.constprop.0 +00000000c003255c l F .text 0000000000000150 js_string_raw +00000000c00326ac l F .text 00000000000000d2 JS_TryGetPropertyInt64 +00000000c003277e l F .text 00000000000000d8 js_array_lastIndexOf +00000000c0032856 l F .text 0000000000000140 js_array_indexOf +00000000c0032996 l F .text 00000000000000c2 js_array_at +00000000c0032a58 l F .text 000000000000029e js_array_toSpliced +00000000c0032cf6 l F .text 0000000000000140 js_array_toReversed +00000000c0032e36 l F .text 00000000000001fc js_array_with +00000000c0033032 l F .text 00000000000001a2 JS_CopySubArray +00000000c00331d4 l F .text 00000000000000cc js_array_copyWithin +00000000c00332a0 l F .text 000000000000016a js_array_pop +00000000c003340a l F .text 0000000000000122 js_array_push +00000000c003352c l F .text 0000000000000216 js_array_sort +00000000c003ebe0 l F .text 000000000000010c js_array_cmp_generic +00000000c0033742 l F .text 00000000000001d0 js_array_toSorted +00000000c0033912 l F .text 000000000000015e js_array_reverse +00000000c0033a70 l F .text 0000000000000146 js_object_toString +00000000c0033bb6 l F .text 0000000000000190 js_regexp_get_flags +00000000c0033d46 l F .text 00000000000000d2 js_function_toString +00000000c0033e18 l F .text 0000000000000d94 JS_WriteObjectRec +00000000c0034d60 l F .text 00000000000001f2 JS_GetOwnPropertyNames2 +00000000c0034f52 l F .text 0000000000000012 js_object_keys +00000000c0034f64 l F .text 0000000000000022 js_reflect_ownKeys +00000000c0034f86 l F .text 0000000000000012 js_object_getOwnPropertySymbols +00000000c0034f98 l F .text 0000000000000012 js_object_getOwnPropertyNames +00000000c0034faa l F .text 0000000000000260 js_function_bind +00000000c003536a l F .text 00000000000000d6 js_object_assign +00000000c0035440 l F .text 00000000000005a4 js_regexp_exec +00000000c00359e4 l F .text 0000000000000100 JS_ObjectDefineProperties +00000000c0035ae4 l F .text 000000000000002c js_object_defineProperties +00000000c0035b10 l F .text 0000000000000098 js_object_create +00000000c0035ba8 l F .text 000000000000008c js_reflect_get +00000000c0035c34 l F .text 000000000000021c JS_InstantiateFunctionListItem.isra.0 +00000000c0035ea8 l F .text 0000000000000070 JS_InstantiateFunctionListItem2 +00000000c003cfcc l F .text 00000000000001e0 js_proxy_call +00000000c003d1ac l F .text 00000000000002f2 js_map_constructor +00000000c0036524 l F .text 000000000000002a JS_InvokeFree +00000000c003654e l F .text 0000000000000020 JS_ToLocaleStringFree +00000000c003656e l F .text 000000000000016e js_array_join +00000000c00366dc l F .text 0000000000000150 js_typed_array_join +00000000c003682c l F .text 0000000000000112 js_promise_finally +00000000c003e12c l F .text 00000000000000f0 js_promise_then_finally_func +00000000c003693e l F .text 0000000000000024 js_promise_catch +00000000c0036962 l F .text 0000000000000010 js_object_toLocaleString +00000000c0036972 l F .text 00000000000000ba JS_RegExpExec +00000000c0036a2c l F .text 0000000000000174 js_regexp_string_iterator_next +00000000c0036ba0 l F .text 00000000000001b8 js_regexp_Symbol_search +00000000c0036d58 l F .text 00000000000002a4 js_regexp_Symbol_match +00000000c0036ffc l F .text 000000000000004c js_regexp_test +00000000c0037048 l F .text 0000000000000182 js_proxy_set +00000000c00371ca l F .text 000000000000013e js_proxy_get +00000000c0037308 l F .text 0000000000000104 js_proxy_has +00000000c003740c l F .text 0000000000000336 js_proxy_define_own_property +00000000c0037742 l F .text 0000000000000104 js_proxy_delete_property +00000000c0037846 l F .text 000000000000027a js_proxy_get_own_property_names +00000000c0037ac0 l F .text 00000000000001aa js_proxy_get_own_property +00000000c0037c6a l F .text 00000000000000f4 js_date_toJSON +00000000c0037d5e l F .text 00000000000002a6 js_string_split +00000000c0038004 l F .text 00000000000000a8 js_array_toString +00000000c00380ac l F .text 000000000000009e async_func_resume +00000000c003814a l F .text 00000000000001d0 js_generator_next +00000000c00383c2 l F .text 00000000000000a8 js_async_generator_function_call +00000000c00385ca l F .text 00000000000000ac js_reflect_construct +00000000c0038688 l F .text 0000000000000092 js_typed_array_create +00000000c003871a l F .text 000000000000009e js_typed_array_of +00000000c00387b8 l F .text 00000000000001b8 js_array_buffer_slice +00000000c0038970 l F .text 000000000000024e js_regexp_Symbol_matchAll +00000000c0038bbe l F .text 00000000000000f0 js_array_of +00000000c0038cae l F .text 0000000000000160 JS_ArraySpeciesCreate +00000000c0038e0e l F .text 0000000000000352 js_array_slice +00000000c0039160 l F .text 0000000000000220 js_array_concat +00000000c0039380 l F .text 00000000000003f8 js_regexp_Symbol_split +00000000c0039778 l F .text 000000000000015e js_string_match +00000000c003999c l F .text 0000000000000b24 js_regexp_Symbol_replace +00000000c003a4c0 l F .text 000000000000001e js_reflect_apply +00000000c003a4de l F .text 0000000000000046 js_load_module_rejected +00000000c003a524 l F .text 000000000000008c js_load_module_fulfilled +00000000c003a5b0 l F .text 0000000000000146 js_promise_constructor +00000000c003a7ec l F .text 00000000000000b8 js_promise_then +00000000c003a8a4 l F .text 00000000000000c2 js_promise_withResolvers +00000000c003aa4a l F .text 00000000000000b8 JS_IteratorNext2 +00000000c003abbc l F .text 0000000000000052 JS_GetIterator2 +00000000c003ae46 l F .text 00000000000002d0 js_error_constructor +00000000c003b116 l F .text 000000000000018a js_object_fromEntries +00000000c003b2a0 l F .text 000000000000042c js_typed_array_constructor +00000000c003b6cc l F .text 00000000000000b4 js_typed_array___speciesCreate.constprop.0 +00000000c003b780 l F .text 00000000000001c4 js_typed_array_slice +00000000c003b944 l F .text 000000000000012c js_typed_array_subarray +00000000c003bb6e l F .text 00000000000002cc js_inner_module_linking +00000000c003be3a l F .text 000000000000011e js_async_module_execution_rejected +00000000c003bf58 l F .text 000000000000005c js_set_module_evaluated +00000000c003bfb4 l F .text 0000000000000140 js_promise_resolve +00000000c003c0f4 l F .text 000000000000016a js_async_function_resume +00000000c003c25e l F .text 0000000000000070 js_async_function_resolve_call +00000000c003c2ce l F .text 000000000000015a js_json_check +00000000c003c428 l F .text 00000000000005c4 js_json_to_str.constprop.0 +00000000c003ccf0 l F .text 0000000000000018 js_json_stringify +00000000c003cd08 l F .text 00000000000001be internalize_json_property +00000000c003cec6 l F .text 0000000000000106 js_json_parse +00000000c003d49e l F .text 00000000000002f6 js_object_groupBy +00000000c003d794 l F .text 000000000000011e js_map_forEach +00000000c003d8b2 l F .text 0000000000000210 js_promise_race +00000000c003dac2 l F .text 0000000000000490 js_promise_all +00000000c003df52 l F .text 00000000000001da js_promise_all_resolve_element +00000000c003e2e8 l F .text 00000000000002ec js_string_replace +00000000c003e5d4 l F .text 0000000000000392 js_array_from +00000000c003e966 l F .text 0000000000000178 JS_FlattenIntoArray +00000000c003eade l F .text 0000000000000102 js_array_flatten +00000000c003ecec l F .text 00000000000001e2 js_array_find +00000000c003eece l F .text 0000000000000218 js_array_reduce +00000000c003f0e6 l F .text 00000000000003b0 js_array_every +00000000c003f496 l F .text 0000000000000022 js_function_call +00000000c003f4b8 l F .text 0000000000000282 js_typed_array_from +00000000c003f832 l F .text 0000000000000152 js_typed_array_find +00000000c003f984 l F .text 000000000000007a js_async_generator_resolve_or_reject.isra.0 +00000000c003f9fe l F .text 000000000000004a js_async_generator_resolve +00000000c003fa48 l F .text 000000000000034c js_async_generator_resume_next +00000000c003fe6e l F .text 000000000000006a js_async_function_call +00000000c003fed8 l F .text 00000000000000b4 js_execute_sync_module +00000000c003ff8c l F .text 00000000000000b6 js_execute_async_module.isra.0 +00000000c0040042 l F .text 0000000000000156 js_async_module_execution_fulfilled +00000000c0040198 l F .text 000000000000024c js_inner_module_evaluation +00000000c00403e4 l F .text 000000000000028e JS_EvalFunctionInternal +00000000c0040686 l F .text 000000000000011c JS_LoadModuleInternal +00000000c0040854 l F .text 00000000000005ca __JS_EvalInternal +00000000c0040e7a l F .text 0000000000000146 js_async_generator_next +00000000c0040fc0 l F .text 000000000000029e js_async_from_sync_iterator_next +00000000c0041eb0 l F .text 0000000000000da4 JS_ReadObjectRec 00000000c01010b0 l O .bss 0000000000000011 hex_str.4 -00000000c0062048 l O .rodata 0000000000000018 CSWTCH.4811 -00000000c0062060 l O .rodata 000000000000000c assign_opcodes.2 -00000000c0062070 l O .rodata 0000000000000016 day_names -00000000c0062088 l O .rodata 0000000000000020 def_malloc_funcs -00000000c00620a8 l O .rodata 00000000000000d0 defs.1 -00000000c0062178 l O .rodata 0000000000000038 js_arguments_exotic_methods -00000000c00621b0 l O .rodata 0000000000000040 js_array_buffer_funcs -00000000c00621f0 l O .rodata 0000000000000060 js_array_buffer_proto_funcs -00000000c0062250 l O .rodata 0000000000000080 js_array_funcs -00000000c00622d0 l O .rodata 0000000000000040 js_array_iterator_proto_funcs -00000000c0062310 l O .rodata 00000000000004e0 js_array_proto_funcs -00000000c00627f0 l O .rodata 00000000000000d8 js_async_class_def -00000000c00628c8 l O .rodata 0000000000000060 js_async_from_sync_iterator_proto_funcs -00000000c0062928 l O .rodata 0000000000000020 js_async_function_proto_funcs -00000000c0062948 l O .rodata 0000000000000020 js_async_generator_function_proto_funcs -00000000c0062968 l O .rodata 0000000000000080 js_async_generator_proto_funcs -00000000c00629e8 l O .rodata 0000000000000020 js_async_iterator_proto_funcs -00000000c0062a08 l O .rodata 00000000000007ed js_atom_init -00000000c00631f8 l O .rodata 0000000000000018 js_autoinit_func_table -00000000c0063210 l O .rodata 0000000000000040 js_bigint_funcs -00000000c0063250 l O .rodata 0000000000000060 js_bigint_proto_funcs -00000000c00632b0 l O .rodata 0000000000000040 js_boolean_proto_funcs -00000000c00632f0 l O .rodata 0000000000000300 js_dataview_proto_funcs -00000000c00635f0 l O .rodata 0000000000000060 js_date_funcs -00000000c0063650 l O .rodata 00000000000005e0 js_date_proto_funcs -00000000c0063c30 l O .rodata 0000000000000060 js_error_proto_funcs -00000000c0063c90 l O .rodata 00000000000000e0 js_function_proto_funcs -00000000c0063d70 l O .rodata 0000000000000020 js_generator_function_proto_funcs -00000000c0063d90 l O .rodata 0000000000000080 js_generator_proto_funcs -00000000c0063e10 l O .rodata 00000000000001a0 js_global_funcs -00000000c0063fb0 l O .rodata 0000000000000020 js_iterator_proto_funcs -00000000c0063fd0 l O .rodata 0000000000000060 js_json_funcs -00000000c0064030 l O .rodata 0000000000000020 js_json_obj -00000000c0064050 l O .rodata 0000000000000040 js_map_funcs -00000000c0064090 l O .rodata 0000000000000040 js_map_iterator_proto_funcs -00000000c00640d0 l O .rodata 0000000000000180 js_map_proto_funcs -00000000c0064250 l O .rodata 0000000000000030 js_map_proto_funcs_ptr -00000000c00655e8 l O .rodata 0000000000000160 js_set_proto_funcs -00000000c0066908 l O .rodata 00000000000000a0 js_weak_map_proto_funcs -00000000c00669a8 l O .rodata 0000000000000080 js_weak_set_proto_funcs -00000000c00655a8 l O .rodata 0000000000000040 js_set_iterator_proto_funcs -00000000c0064280 l O .rodata 0000000000000580 js_math_funcs -00000000c0064800 l O .rodata 0000000000000020 js_math_obj -00000000c0064820 l O .rodata 0000000000000038 js_module_ns_exotic_methods -00000000c0064858 l O .rodata 00000000000001c0 js_number_funcs -00000000c0064a18 l O .rodata 00000000000000c0 js_number_proto_funcs -00000000c0064ad8 l O .rodata 0000000000000300 js_object_funcs -00000000c0064dd8 l O .rodata 0000000000000160 js_object_proto_funcs -00000000c0064f38 l O .rodata 0000000000000100 js_promise_funcs -00000000c0065038 l O .rodata 0000000000000080 js_promise_proto_funcs -00000000c00650b8 l O .rodata 0000000000000018 js_proxy_class_def -00000000c00650d0 l O .rodata 0000000000000038 js_proxy_exotic_methods -00000000c0065108 l O .rodata 0000000000000020 js_proxy_funcs -00000000c0065128 l O .rodata 00000000000001c0 js_reflect_funcs -00000000c00652e8 l O .rodata 0000000000000020 js_reflect_obj -00000000c0065308 l O .rodata 0000000000000020 js_regexp_funcs -00000000c0065328 l O .rodata 0000000000000240 js_regexp_proto_funcs -00000000c0065568 l O .rodata 0000000000000040 js_regexp_string_iterator_proto_funcs -00000000c0065748 l O .rodata 0000000000000020 js_shared_array_buffer_funcs -00000000c0065768 l O .rodata 0000000000000060 js_shared_array_buffer_proto_funcs -00000000c00657c8 l O .rodata 0000000000000408 js_std_class_def -00000000c0065bd0 l O .rodata 0000000000000038 js_string_exotic_methods -00000000c0065c08 l O .rodata 0000000000000060 js_string_funcs -00000000c0065c68 l O .rodata 0000000000000040 js_string_iterator_proto_funcs -00000000c0065ca8 l O .rodata 0000000000000680 js_string_proto_funcs -00000000c0066328 l O .rodata 0000000000000020 js_string_proto_normalize -00000000c0066348 l O .rodata 0000000000000040 js_symbol_funcs -00000000c0066388 l O .rodata 00000000000000a0 js_symbol_proto_funcs -00000000c0066428 l O .rodata 0000000000000060 js_typed_array_base_funcs -00000000c0066488 l O .rodata 0000000000000480 js_typed_array_base_proto_funcs -00000000c0066a28 l O .rodata 0000000000000030 month_days -00000000c0066a58 l O .rodata 0000000000000025 month_names -00000000c0066a80 l O .rodata 0000000000000040 native_error_name -00000000c0066ac0 l O .rodata 0000000000000050 object_types.3 -00000000c0066b10 l O .rodata 0000000000000424 opcode_info -00000000c0066f38 l O .rodata 000000000000000b typed_array_size_log2 -00000000c0066f48 l O .rodata 0000000000000046 unescaped_chars.0 +00000000c00622a8 l O .rodata 0000000000000018 CSWTCH.4827 +00000000c00622c0 l O .rodata 000000000000000c assign_opcodes.2 +00000000c00622d0 l O .rodata 0000000000000016 day_names +00000000c00622e8 l O .rodata 0000000000000020 def_malloc_funcs +00000000c0062308 l O .rodata 00000000000000d0 defs.1 +00000000c00623d8 l O .rodata 0000000000000038 js_arguments_exotic_methods +00000000c0062410 l O .rodata 0000000000000040 js_array_buffer_funcs +00000000c0062450 l O .rodata 0000000000000060 js_array_buffer_proto_funcs +00000000c00624b0 l O .rodata 0000000000000080 js_array_funcs +00000000c0062530 l O .rodata 0000000000000040 js_array_iterator_proto_funcs +00000000c0062570 l O .rodata 00000000000004e0 js_array_proto_funcs +00000000c0062a50 l O .rodata 00000000000000d8 js_async_class_def +00000000c0062b28 l O .rodata 0000000000000060 js_async_from_sync_iterator_proto_funcs +00000000c0062b88 l O .rodata 0000000000000020 js_async_function_proto_funcs +00000000c0062ba8 l O .rodata 0000000000000020 js_async_generator_function_proto_funcs +00000000c0062bc8 l O .rodata 0000000000000080 js_async_generator_proto_funcs +00000000c0062c48 l O .rodata 0000000000000020 js_async_iterator_proto_funcs +00000000c0062c68 l O .rodata 00000000000007ed js_atom_init +00000000c0063458 l O .rodata 0000000000000018 js_autoinit_func_table +00000000c0063470 l O .rodata 0000000000000040 js_bigint_funcs +00000000c00634b0 l O .rodata 0000000000000060 js_bigint_proto_funcs +00000000c0063510 l O .rodata 0000000000000040 js_boolean_proto_funcs +00000000c0063550 l O .rodata 0000000000000300 js_dataview_proto_funcs +00000000c0063850 l O .rodata 0000000000000060 js_date_funcs +00000000c00638b0 l O .rodata 00000000000005e0 js_date_proto_funcs +00000000c0063e90 l O .rodata 0000000000000060 js_error_proto_funcs +00000000c0063ef0 l O .rodata 00000000000000e0 js_function_proto_funcs +00000000c0063fd0 l O .rodata 0000000000000020 js_generator_function_proto_funcs +00000000c0063ff0 l O .rodata 0000000000000080 js_generator_proto_funcs +00000000c0064070 l O .rodata 00000000000001a0 js_global_funcs +00000000c0064210 l O .rodata 0000000000000020 js_iterator_proto_funcs +00000000c0064230 l O .rodata 0000000000000060 js_json_funcs +00000000c0064290 l O .rodata 0000000000000020 js_json_obj +00000000c00642b0 l O .rodata 0000000000000040 js_map_funcs +00000000c00642f0 l O .rodata 0000000000000040 js_map_iterator_proto_funcs +00000000c0064330 l O .rodata 0000000000000180 js_map_proto_funcs +00000000c00644b0 l O .rodata 0000000000000030 js_map_proto_funcs_ptr +00000000c0065848 l O .rodata 0000000000000160 js_set_proto_funcs +00000000c0066b68 l O .rodata 00000000000000a0 js_weak_map_proto_funcs +00000000c0066c08 l O .rodata 0000000000000080 js_weak_set_proto_funcs +00000000c0065808 l O .rodata 0000000000000040 js_set_iterator_proto_funcs +00000000c00644e0 l O .rodata 0000000000000580 js_math_funcs +00000000c0064a60 l O .rodata 0000000000000020 js_math_obj +00000000c0064a80 l O .rodata 0000000000000038 js_module_ns_exotic_methods +00000000c0064ab8 l O .rodata 00000000000001c0 js_number_funcs +00000000c0064c78 l O .rodata 00000000000000c0 js_number_proto_funcs +00000000c0064d38 l O .rodata 0000000000000300 js_object_funcs +00000000c0065038 l O .rodata 0000000000000160 js_object_proto_funcs +00000000c0065198 l O .rodata 0000000000000100 js_promise_funcs +00000000c0065298 l O .rodata 0000000000000080 js_promise_proto_funcs +00000000c0065318 l O .rodata 0000000000000018 js_proxy_class_def +00000000c0065330 l O .rodata 0000000000000038 js_proxy_exotic_methods +00000000c0065368 l O .rodata 0000000000000020 js_proxy_funcs +00000000c0065388 l O .rodata 00000000000001c0 js_reflect_funcs +00000000c0065548 l O .rodata 0000000000000020 js_reflect_obj +00000000c0065568 l O .rodata 0000000000000020 js_regexp_funcs +00000000c0065588 l O .rodata 0000000000000240 js_regexp_proto_funcs +00000000c00657c8 l O .rodata 0000000000000040 js_regexp_string_iterator_proto_funcs +00000000c00659a8 l O .rodata 0000000000000020 js_shared_array_buffer_funcs +00000000c00659c8 l O .rodata 0000000000000060 js_shared_array_buffer_proto_funcs +00000000c0065a28 l O .rodata 0000000000000408 js_std_class_def +00000000c0065e30 l O .rodata 0000000000000038 js_string_exotic_methods +00000000c0065e68 l O .rodata 0000000000000060 js_string_funcs +00000000c0065ec8 l O .rodata 0000000000000040 js_string_iterator_proto_funcs +00000000c0065f08 l O .rodata 0000000000000680 js_string_proto_funcs +00000000c0066588 l O .rodata 0000000000000020 js_string_proto_normalize +00000000c00665a8 l O .rodata 0000000000000040 js_symbol_funcs +00000000c00665e8 l O .rodata 00000000000000a0 js_symbol_proto_funcs +00000000c0066688 l O .rodata 0000000000000060 js_typed_array_base_funcs +00000000c00666e8 l O .rodata 0000000000000480 js_typed_array_base_proto_funcs +00000000c0066c88 l O .rodata 0000000000000030 month_days +00000000c0066cb8 l O .rodata 0000000000000025 month_names +00000000c0066ce0 l O .rodata 0000000000000040 native_error_name +00000000c0066d20 l O .rodata 0000000000000050 object_types.3 +00000000c0066d70 l O .rodata 0000000000000424 opcode_info +00000000c0067198 l O .rodata 000000000000000b typed_array_size_log2 +00000000c00671a8 l O .rodata 0000000000000046 unescaped_chars.0 00000000c0101098 l O .sdata.js_class_id_alloc 0000000000000004 js_class_id_alloc -00000000c0074970 l O .srodata.CSWTCH.3956 0000000000000004 CSWTCH.3956 -00000000c0074978 l O .srodata.CSWTCH.5066 0000000000000004 CSWTCH.5066 -00000000c0074980 l O .srodata.func_kind_to_class_id 0000000000000008 func_kind_to_class_id -00000000c0074988 l O .srodata.js_map_proto_funcs_count 0000000000000006 js_map_proto_funcs_count +00000000c0074bd0 l O .srodata.CSWTCH.3972 0000000000000004 CSWTCH.3972 +00000000c0074bd8 l O .srodata.CSWTCH.5082 0000000000000004 CSWTCH.5082 +00000000c0074be0 l O .srodata.func_kind_to_class_id 0000000000000008 func_kind_to_class_id +00000000c0074be8 l O .srodata.js_map_proto_funcs_count 0000000000000006 js_map_proto_funcs_count 0000000000000000 l df *ABS* 0000000000000000 libregexp.c -00000000c004308c l F .text 0000000000000034 from_hex -00000000c00430c0 l F .text 0000000000000042 parse_digits -00000000c0043102 l F .text 000000000000002e is_unicode_char -00000000c0043130 l F .text 0000000000000026 re_emit_op_u8 -00000000c0043156 l F .text 000000000000004e dbuf_insert -00000000c00431a4 l F .text 0000000000000060 find_group_name -00000000c0043204 l F .text 00000000000000d6 push_state -00000000c00432da l F .text 000000000000002a re_parse_error -00000000c0043304 l F .text 0000000000000024 is_line_terminator -00000000c0043328 l F .text 000000000000002a is_word_char -00000000c0043352 l F .text 0000000000000be0 lre_exec_backtrack -00000000c0043f32 l F .text 000000000000001e re_parse_expect -00000000c0043f50 l F .text 0000000000000014 dbuf_put_u32.isra.0 -00000000c0043f64 l F .text 000000000000002a re_emit_goto.isra.0 -00000000c0043f8e l F .text 0000000000000030 re_emit_op_u32 -00000000c0043fbe l F .text 000000000000002e re_emit_op_u16 -00000000c0043fec l F .text 00000000000000f6 re_emit_range -00000000c00442fe l F .text 0000000000000440 get_class_atom -00000000c004473e l F .text 0000000000000188 re_parse_group_name.constprop.0 -00000000c00448c6 l F .text 00000000000000ec re_parse_captures -00000000c00449b2 l F .text 0000000000000024 re_count_captures -00000000c00449d6 l F .text 0000000000000d54 re_parse_alternative -00000000c004572a l F .text 000000000000010a re_parse_disjunction -00000000c0067478 l O .rodata 000000000000002a char_range_s -00000000c00674a8 l O .rodata 0000000000000018 char_range_table -00000000c0074990 l O .srodata.char_range_d 0000000000000006 char_range_d -00000000c00674c0 l O .rodata 0000000000000012 char_range_w -00000000c00674f8 l O .rodata 000000000000001d reopcode_info +00000000c004325c l F .text 0000000000000034 from_hex +00000000c0043290 l F .text 0000000000000042 parse_digits +00000000c00432d2 l F .text 000000000000002e is_unicode_char +00000000c0043300 l F .text 0000000000000026 re_emit_op_u8 +00000000c0043326 l F .text 000000000000004e dbuf_insert +00000000c0043374 l F .text 0000000000000060 find_group_name +00000000c00433d4 l F .text 00000000000000d6 push_state +00000000c00434aa l F .text 000000000000002a re_parse_error +00000000c00434d4 l F .text 0000000000000024 is_line_terminator +00000000c00434f8 l F .text 000000000000002a is_word_char +00000000c0043522 l F .text 0000000000000be0 lre_exec_backtrack +00000000c0044102 l F .text 000000000000001e re_parse_expect +00000000c0044120 l F .text 0000000000000014 dbuf_put_u32.isra.0 +00000000c0044134 l F .text 000000000000002a re_emit_goto.isra.0 +00000000c004415e l F .text 0000000000000030 re_emit_op_u32 +00000000c004418e l F .text 000000000000002e re_emit_op_u16 +00000000c00441bc l F .text 00000000000000f6 re_emit_range +00000000c00444ce l F .text 0000000000000440 get_class_atom +00000000c004490e l F .text 0000000000000188 re_parse_group_name.constprop.0 +00000000c0044a96 l F .text 00000000000000ec re_parse_captures +00000000c0044b82 l F .text 0000000000000024 re_count_captures +00000000c0044ba6 l F .text 0000000000000d54 re_parse_alternative +00000000c00458fa l F .text 000000000000010a re_parse_disjunction +00000000c00676d8 l O .rodata 000000000000002a char_range_s +00000000c0067708 l O .rodata 0000000000000018 char_range_table +00000000c0074bf0 l O .srodata.char_range_d 0000000000000006 char_range_d +00000000c0067720 l O .rodata 0000000000000012 char_range_w +00000000c0067758 l O .rodata 000000000000001d reopcode_info 0000000000000000 l df *ABS* 0000000000000000 libunicode.c -00000000c0045bc4 l F .text 000000000000001c get_le24 -00000000c0045be0 l F .text 000000000000006a cr_compress -00000000c0045c4a l F .text 0000000000000010 point_cmp -00000000c0045c5a l F .text 0000000000000008 cr_default_realloc -00000000c0045c62 l F .text 0000000000000070 unicode_find_name -00000000c0045cd2 l F .text 00000000000000cc get_index_pos -00000000c0045d9e l F .text 00000000000000be lre_is_in_table -00000000c0045e5c l F .text 00000000000000da unicode_get_cc -00000000c0045f36 l F .text 0000000000000032 unicode_get_short_code -00000000c0045f68 l F .text 00000000000002ec unicode_decomp_entry -00000000c0068958 l O .rodata 0000000000002481 unicode_decomp_data -00000000c0046254 l F .text 000000000000013e to_nfd_rec -00000000c006ade0 l O .rodata 0000000000000aec unicode_decomp_table1 -00000000c004640e l F .text 000000000000025e lre_case_conv_entry -00000000c004666c l F .text 0000000000000086 lre_case_folding_entry -00000000c0046854 l F .text 0000000000000056 cr_add_interval -00000000c00468aa l F .text 000000000000012c unicode_case1 -00000000c00469d6 l F .text 000000000000010c unicode_general_category1 -00000000c006c100 l O .rodata 0000000000000f6c unicode_gc_table -00000000c0046ae2 l F .text 000000000000010e unicode_prop1 -00000000c0046da4 l F .text 0000000000000214 unicode_prop_ops -00000000c006f488 l O .rodata 0000000000000946 unicode_script_name_table -00000000c006fdd0 l O .rodata 0000000000000aa0 unicode_script_table -00000000c0067658 l O .rodata 0000000000000074 case_conv_ext -00000000c00676d0 l O .rodata 00000000000005c8 case_conv_table1 -00000000c0067c98 l O .rodata 0000000000000172 case_conv_table2 -00000000c0067e10 l O .rodata 0000000000000057 unicode_cc_index -00000000c0067e68 l O .rodata 0000000000000383 unicode_cc_table -00000000c00681f0 l O .rodata 0000000000000762 unicode_comp_table -00000000c006b8d0 l O .rodata 0000000000000576 unicode_decomp_table2 -00000000c006be48 l O .rodata 0000000000000020 unicode_gc_mask_table -00000000c006be68 l O .rodata 0000000000000294 unicode_gc_name_table -00000000c006d070 l O .rodata 000000000000000a unicode_prop_Bidi_Control_table -00000000c006d080 l O .rodata 00000000000000ad unicode_prop_Bidi_Mirrored_table -00000000c006d130 l O .rodata 0000000000000045 unicode_prop_Case_Ignorable_index -00000000c006d178 l O .rodata 00000000000002e1 unicode_prop_Case_Ignorable_table -00000000c006d460 l O .rodata 0000000000000015 unicode_prop_Cased1_index -00000000c006d478 l O .rodata 00000000000000c4 unicode_prop_Cased1_table -00000000c006d540 l O .rodata 000000000000001d unicode_prop_Changes_When_Casefolded1_table -00000000c006d560 l O .rodata 00000000000001bf unicode_prop_Changes_When_NFKC_Casefolded1_table -00000000c006d720 l O .rodata 0000000000000016 unicode_prop_Changes_When_Titlecased1_table -00000000c006d738 l O .rodata 0000000000000037 unicode_prop_Dash_table -00000000c006d770 l O .rodata 0000000000000033 unicode_prop_Default_Ignorable_Code_Point_table -00000000c006d7a8 l O .rodata 0000000000000017 unicode_prop_Deprecated_table -00000000c006d7c0 l O .rodata 000000000000018f unicode_prop_Diacritic_table -00000000c006d950 l O .rodata 000000000000001c unicode_prop_Emoji_Component_table -00000000c006d970 l O .rodata 0000000000000047 unicode_prop_Emoji_Modifier_Base_table -00000000c006d9b8 l O .rodata 0000000000000091 unicode_prop_Emoji_Presentation_table -00000000c006da50 l O .rodata 00000000000000ef unicode_prop_Emoji_table -00000000c006db40 l O .rodata 000000000000009c unicode_prop_Extended_Pictographic_table -00000000c006dbe0 l O .rodata 000000000000005c unicode_prop_Extender_table -00000000c006dc40 l O .rodata 000000000000000c unicode_prop_Hex_Digit_table -00000000c006dc50 l O .rodata 000000000000001c unicode_prop_Hyphen_table -00000000c006dc70 l O .rodata 000000000000003f unicode_prop_ID_Continue1_index -00000000c006dcb0 l O .rodata 0000000000000294 unicode_prop_ID_Continue1_table -00000000c006df48 l O .rodata 0000000000000069 unicode_prop_ID_Start_index -00000000c006dfb8 l O .rodata 000000000000044c unicode_prop_ID_Start_table -00000000c006e408 l O .rodata 0000000000000045 unicode_prop_Ideographic_table -00000000c006e450 l O .rodata 000000000000000f unicode_prop_Logical_Order_Exception_table -00000000c006e460 l O .rodata 0000000000000047 unicode_prop_Noncharacter_Code_Point_table -00000000c006e4a8 l O .rodata 00000000000001ac unicode_prop_Other_Alphabetic_table -00000000c006e658 l O .rodata 0000000000000020 unicode_prop_Other_Default_Ignorable_Code_Point_table -00000000c006e678 l O .rodata 0000000000000041 unicode_prop_Other_Grapheme_Extend_table -00000000c006e6c0 l O .rodata 000000000000000c unicode_prop_Other_ID_Continue_table -00000000c006e6d0 l O .rodata 000000000000000b unicode_prop_Other_ID_Start_table -00000000c006e6e0 l O .rodata 0000000000000045 unicode_prop_Other_Lowercase_table -00000000c006e728 l O .rodata 00000000000000c8 unicode_prop_Other_Math_table -00000000c006e7f0 l O .rodata 000000000000000f unicode_prop_Other_Uppercase_table -00000000c006e800 l O .rodata 000000000000003a unicode_prop_Pattern_Syntax_table -00000000c006e840 l O .rodata 000000000000000b unicode_prop_Pattern_White_Space_table -00000000c006e850 l O .rodata 0000000000000013 unicode_prop_Prepended_Concatenation_Mark_table -00000000c006e868 l O .rodata 000000000000001f unicode_prop_Quotation_Mark_table -00000000c006e888 l O .rodata 0000000000000009 unicode_prop_Radical_table -00000000c006e898 l O .rodata 00000000000000c4 unicode_prop_Sentence_Terminal_table -00000000c006e960 l O .rodata 000000000000004f unicode_prop_Soft_Dotted_table -00000000c006e9b0 l O .rodata 00000000000000f8 unicode_prop_Terminal_Punctuation_table -00000000c006eaa8 l O .rodata 000000000000002d unicode_prop_Unified_Ideograph_table -00000000c006ead8 l O .rodata 000000000000000d unicode_prop_Variation_Selector_table -00000000c006eae8 l O .rodata 0000000000000016 unicode_prop_White_Space_table -00000000c006eb00 l O .rodata 0000000000000017 unicode_prop_XID_Continue1_table -00000000c006eb18 l O .rodata 000000000000001f unicode_prop_XID_Start1_table -00000000c006eb38 l O .rodata 0000000000000064 unicode_prop_len_table -00000000c006eba0 l O .rodata 0000000000000412 unicode_prop_name_table -00000000c006efb8 l O .rodata 0000000000000190 unicode_prop_table -00000000c0074998 l O .srodata.unicode_prop_ASCII_Hex_Digit_table 0000000000000005 unicode_prop_ASCII_Hex_Digit_table -00000000c00749a8 l O .srodata.unicode_prop_IDS_Binary_Operator_table 0000000000000005 unicode_prop_IDS_Binary_Operator_table -00000000c00749b0 l O .srodata.unicode_prop_IDS_Trinary_Operator_table 0000000000000004 unicode_prop_IDS_Trinary_Operator_table -00000000c00749b8 l O .srodata.unicode_prop_Join_Control_table 0000000000000004 unicode_prop_Join_Control_table -00000000c00749c0 l O .srodata.unicode_prop_Regional_Indicator_table 0000000000000004 unicode_prop_Regional_Indicator_table -00000000c00749a0 l O .srodata.unicode_prop_Emoji_Modifier_table 0000000000000004 unicode_prop_Emoji_Modifier_table -00000000c006f148 l O .rodata 000000000000033c unicode_script_ext_table -00000000c00749c8 l O .srodata.unicode_short_table.0 0000000000000004 unicode_short_table.0 +00000000c0045d94 l F .text 000000000000001c get_le24 +00000000c0045db0 l F .text 000000000000006a cr_compress +00000000c0045e1a l F .text 0000000000000010 point_cmp +00000000c0045e2a l F .text 0000000000000008 cr_default_realloc +00000000c0045e32 l F .text 0000000000000070 unicode_find_name +00000000c0045ea2 l F .text 00000000000000cc get_index_pos +00000000c0045f6e l F .text 00000000000000be lre_is_in_table +00000000c004602c l F .text 00000000000000da unicode_get_cc +00000000c0046106 l F .text 0000000000000032 unicode_get_short_code +00000000c0046138 l F .text 00000000000002ec unicode_decomp_entry +00000000c0068bb8 l O .rodata 0000000000002481 unicode_decomp_data +00000000c0046424 l F .text 000000000000013e to_nfd_rec +00000000c006b040 l O .rodata 0000000000000aec unicode_decomp_table1 +00000000c00465de l F .text 000000000000025e lre_case_conv_entry +00000000c004683c l F .text 0000000000000086 lre_case_folding_entry +00000000c0046a24 l F .text 0000000000000056 cr_add_interval +00000000c0046a7a l F .text 000000000000012c unicode_case1 +00000000c0046ba6 l F .text 000000000000010c unicode_general_category1 +00000000c006c360 l O .rodata 0000000000000f6c unicode_gc_table +00000000c0046cb2 l F .text 000000000000010e unicode_prop1 +00000000c0046f74 l F .text 0000000000000214 unicode_prop_ops +00000000c006f6e8 l O .rodata 0000000000000946 unicode_script_name_table +00000000c0070030 l O .rodata 0000000000000aa0 unicode_script_table +00000000c00678b8 l O .rodata 0000000000000074 case_conv_ext +00000000c0067930 l O .rodata 00000000000005c8 case_conv_table1 +00000000c0067ef8 l O .rodata 0000000000000172 case_conv_table2 +00000000c0068070 l O .rodata 0000000000000057 unicode_cc_index +00000000c00680c8 l O .rodata 0000000000000383 unicode_cc_table +00000000c0068450 l O .rodata 0000000000000762 unicode_comp_table +00000000c006bb30 l O .rodata 0000000000000576 unicode_decomp_table2 +00000000c006c0a8 l O .rodata 0000000000000020 unicode_gc_mask_table +00000000c006c0c8 l O .rodata 0000000000000294 unicode_gc_name_table +00000000c006d2d0 l O .rodata 000000000000000a unicode_prop_Bidi_Control_table +00000000c006d2e0 l O .rodata 00000000000000ad unicode_prop_Bidi_Mirrored_table +00000000c006d390 l O .rodata 0000000000000045 unicode_prop_Case_Ignorable_index +00000000c006d3d8 l O .rodata 00000000000002e1 unicode_prop_Case_Ignorable_table +00000000c006d6c0 l O .rodata 0000000000000015 unicode_prop_Cased1_index +00000000c006d6d8 l O .rodata 00000000000000c4 unicode_prop_Cased1_table +00000000c006d7a0 l O .rodata 000000000000001d unicode_prop_Changes_When_Casefolded1_table +00000000c006d7c0 l O .rodata 00000000000001bf unicode_prop_Changes_When_NFKC_Casefolded1_table +00000000c006d980 l O .rodata 0000000000000016 unicode_prop_Changes_When_Titlecased1_table +00000000c006d998 l O .rodata 0000000000000037 unicode_prop_Dash_table +00000000c006d9d0 l O .rodata 0000000000000033 unicode_prop_Default_Ignorable_Code_Point_table +00000000c006da08 l O .rodata 0000000000000017 unicode_prop_Deprecated_table +00000000c006da20 l O .rodata 000000000000018f unicode_prop_Diacritic_table +00000000c006dbb0 l O .rodata 000000000000001c unicode_prop_Emoji_Component_table +00000000c006dbd0 l O .rodata 0000000000000047 unicode_prop_Emoji_Modifier_Base_table +00000000c006dc18 l O .rodata 0000000000000091 unicode_prop_Emoji_Presentation_table +00000000c006dcb0 l O .rodata 00000000000000ef unicode_prop_Emoji_table +00000000c006dda0 l O .rodata 000000000000009c unicode_prop_Extended_Pictographic_table +00000000c006de40 l O .rodata 000000000000005c unicode_prop_Extender_table +00000000c006dea0 l O .rodata 000000000000000c unicode_prop_Hex_Digit_table +00000000c006deb0 l O .rodata 000000000000001c unicode_prop_Hyphen_table +00000000c006ded0 l O .rodata 000000000000003f unicode_prop_ID_Continue1_index +00000000c006df10 l O .rodata 0000000000000294 unicode_prop_ID_Continue1_table +00000000c006e1a8 l O .rodata 0000000000000069 unicode_prop_ID_Start_index +00000000c006e218 l O .rodata 000000000000044c unicode_prop_ID_Start_table +00000000c006e668 l O .rodata 0000000000000045 unicode_prop_Ideographic_table +00000000c006e6b0 l O .rodata 000000000000000f unicode_prop_Logical_Order_Exception_table +00000000c006e6c0 l O .rodata 0000000000000047 unicode_prop_Noncharacter_Code_Point_table +00000000c006e708 l O .rodata 00000000000001ac unicode_prop_Other_Alphabetic_table +00000000c006e8b8 l O .rodata 0000000000000020 unicode_prop_Other_Default_Ignorable_Code_Point_table +00000000c006e8d8 l O .rodata 0000000000000041 unicode_prop_Other_Grapheme_Extend_table +00000000c006e920 l O .rodata 000000000000000c unicode_prop_Other_ID_Continue_table +00000000c006e930 l O .rodata 000000000000000b unicode_prop_Other_ID_Start_table +00000000c006e940 l O .rodata 0000000000000045 unicode_prop_Other_Lowercase_table +00000000c006e988 l O .rodata 00000000000000c8 unicode_prop_Other_Math_table +00000000c006ea50 l O .rodata 000000000000000f unicode_prop_Other_Uppercase_table +00000000c006ea60 l O .rodata 000000000000003a unicode_prop_Pattern_Syntax_table +00000000c006eaa0 l O .rodata 000000000000000b unicode_prop_Pattern_White_Space_table +00000000c006eab0 l O .rodata 0000000000000013 unicode_prop_Prepended_Concatenation_Mark_table +00000000c006eac8 l O .rodata 000000000000001f unicode_prop_Quotation_Mark_table +00000000c006eae8 l O .rodata 0000000000000009 unicode_prop_Radical_table +00000000c006eaf8 l O .rodata 00000000000000c4 unicode_prop_Sentence_Terminal_table +00000000c006ebc0 l O .rodata 000000000000004f unicode_prop_Soft_Dotted_table +00000000c006ec10 l O .rodata 00000000000000f8 unicode_prop_Terminal_Punctuation_table +00000000c006ed08 l O .rodata 000000000000002d unicode_prop_Unified_Ideograph_table +00000000c006ed38 l O .rodata 000000000000000d unicode_prop_Variation_Selector_table +00000000c006ed48 l O .rodata 0000000000000016 unicode_prop_White_Space_table +00000000c006ed60 l O .rodata 0000000000000017 unicode_prop_XID_Continue1_table +00000000c006ed78 l O .rodata 000000000000001f unicode_prop_XID_Start1_table +00000000c006ed98 l O .rodata 0000000000000064 unicode_prop_len_table +00000000c006ee00 l O .rodata 0000000000000412 unicode_prop_name_table +00000000c006f218 l O .rodata 0000000000000190 unicode_prop_table +00000000c0074bf8 l O .srodata.unicode_prop_ASCII_Hex_Digit_table 0000000000000005 unicode_prop_ASCII_Hex_Digit_table +00000000c0074c08 l O .srodata.unicode_prop_IDS_Binary_Operator_table 0000000000000005 unicode_prop_IDS_Binary_Operator_table +00000000c0074c10 l O .srodata.unicode_prop_IDS_Trinary_Operator_table 0000000000000004 unicode_prop_IDS_Trinary_Operator_table +00000000c0074c18 l O .srodata.unicode_prop_Join_Control_table 0000000000000004 unicode_prop_Join_Control_table +00000000c0074c20 l O .srodata.unicode_prop_Regional_Indicator_table 0000000000000004 unicode_prop_Regional_Indicator_table +00000000c0074c00 l O .srodata.unicode_prop_Emoji_Modifier_table 0000000000000004 unicode_prop_Emoji_Modifier_table +00000000c006f3a8 l O .rodata 000000000000033c unicode_script_ext_table +00000000c0074c28 l O .srodata.unicode_short_table.0 0000000000000004 unicode_short_table.0 0000000000000000 l df *ABS* 0000000000000000 cutils.c -00000000c004799a l F .text 000000000000001e exchange_bytes -00000000c00479b8 l F .text 0000000000000012 exchange_one_byte -00000000c00479ca l F .text 0000000000000020 exchange_int16s -00000000c00479ea l F .text 0000000000000012 exchange_one_int16 -00000000c00479fc l F .text 000000000000001c exchange_int32s -00000000c0047a18 l F .text 000000000000000a exchange_one_int32 -00000000c0047a22 l F .text 000000000000001c exchange_int64s -00000000c0047a3e l F .text 000000000000000a exchange_one_int64 -00000000c0047a48 l F .text 0000000000000026 exchange_int128s -00000000c0047a6e l F .text 0000000000000012 exchange_one_int128 -00000000c0047a80 l F .text 0000000000000094 exchange_func -00000000c0047b14 l F .text 0000000000000008 dbuf_default_realloc -00000000c00708b0 l O .rodata 000000000000003e CSWTCH.71 -00000000c00708f0 l O .rodata 0000000000000014 utf8_min_code -00000000c00749d0 l O .srodata.utf8_first_code_mask 0000000000000005 utf8_first_code_mask +00000000c0047b6a l F .text 000000000000001e exchange_bytes +00000000c0047b88 l F .text 0000000000000012 exchange_one_byte +00000000c0047b9a l F .text 0000000000000020 exchange_int16s +00000000c0047bba l F .text 0000000000000012 exchange_one_int16 +00000000c0047bcc l F .text 000000000000001c exchange_int32s +00000000c0047be8 l F .text 000000000000000a exchange_one_int32 +00000000c0047bf2 l F .text 000000000000001c exchange_int64s +00000000c0047c0e l F .text 000000000000000a exchange_one_int64 +00000000c0047c18 l F .text 0000000000000026 exchange_int128s +00000000c0047c3e l F .text 0000000000000012 exchange_one_int128 +00000000c0047c50 l F .text 0000000000000094 exchange_func +00000000c0047ce4 l F .text 0000000000000008 dbuf_default_realloc +00000000c0070b10 l O .rodata 000000000000003e CSWTCH.71 +00000000c0070b50 l O .rodata 0000000000000014 utf8_min_code +00000000c0074c30 l O .srodata.utf8_first_code_mask 0000000000000005 utf8_first_code_mask 0000000000000000 l df *ABS* 0000000000000000 quickjs-libc.c -00000000c00482bc l F .text 0000000000000012 list_del -00000000c00482ce l F .text 000000000000000e interrupt_handler -00000000c00482dc l F .text 0000000000000016 os_signal_handler -00000000c00482f2 l F .text 000000000000001a js_sab_alloc -00000000c004830c l F .text 0000000000000026 JS_FreeValue -00000000c0048332 l F .text 0000000000000022 js_std_dbuf_init -00000000c0048354 l F .text 0000000000000010 JS_ToCString -00000000c0048364 l F .text 00000000000003fa js_printf_internal -00000000c004875e l F .text 000000000000000e js_std_sprintf -00000000c004876c l F .text 0000000000000024 js_std_printf -00000000c0048790 l F .text 000000000000003c js_std_file_get -00000000c00487cc l F .text 0000000000000070 js_std_file_seek -00000000c004883c l F .text 000000000000003a js_std_file_printf -00000000c0048876 l F .text 0000000000000024 js_set_error_object -00000000c004889a l F .text 0000000000000080 js_new_std_file -00000000c004891a l F .text 0000000000000064 js_std_tmpfile -00000000c004897e l F .text 00000000000000e8 js_std_open -00000000c0048a66 l F .text 00000000000000c8 js_std_fdopen -00000000c0048b2e l F .text 00000000000000e8 js_std_popen -00000000c0048c16 l F .text 000000000000003a js_std_strerror -00000000c0048c50 l F .text 0000000000000052 get_bool_option -00000000c0048ca2 l F .text 000000000000002a js_std_file_getByte -00000000c0048ccc l F .text 0000000000000092 js_std_file_getline -00000000c0048d5e l F .text 00000000000000cc js_std_getenviron -00000000c0048e2a l F .text 0000000000000038 js_std_unsetenv -00000000c0048e62 l F .text 000000000000006c js_std_setenv -00000000c0048ece l F .text 0000000000000050 js_std_getenv -00000000c0048f1e l F .text 0000000000000016 js_std_gc -00000000c0048f34 l F .text 000000000000001a js_std_exit -00000000c0048f4e l F .text 00000000000000f0 js_std_init -00000000c004903e l F .text 000000000000004e js_std_file_putByte -00000000c004908c l F .text 00000000000000a8 js_std_file_readAsString -00000000c0049134 l F .text 00000000000000ba js_std_file_read_write -00000000c00491ee l F .text 0000000000000024 js_std_file_clearerr -00000000c0049212 l F .text 000000000000002e js_std_file_error -00000000c0049240 l F .text 000000000000002a js_std_file_fileno -00000000c004926a l F .text 000000000000002e js_std_file_eof -00000000c0049298 l F .text 0000000000000064 js_std_file_tell -00000000c00492fc l F .text 0000000000000024 js_std_file_flush -00000000c0049320 l F .text 0000000000000054 js_std_file_finalizer -00000000c0049374 l F .text 0000000000000078 js_os_pipe -00000000c00493ec l F .text 0000000000000076 make_obj_error -00000000c0049462 l F .text 0000000000000020 make_string_error -00000000c0049482 l F .text 0000000000000060 js_os_realpath -00000000c00494e2 l F .text 00000000000000aa js_os_waitpid -00000000c004958c l F .text 0000000000000016 js_os_getpid -00000000c00495a2 l F .text 000000000000006c js_os_readlink -00000000c004960e l F .text 00000000000000d6 js_os_readdir -00000000c00496e4 l F .text 0000000000000034 js_os_getcwd -00000000c0049718 l F .text 0000000000000026 get_time_ms -00000000c004973e l F .text 0000000000000068 js_os_now -00000000c00497a6 l F .text 0000000000000026 JS_FreeValueRT -00000000c00497cc l F .text 000000000000002c free_timer -00000000c00497f8 l F .text 000000000000006e js_os_clearTimeout -00000000c0049866 l F .text 0000000000000036 free_rw_handler -00000000c004989c l F .text 0000000000000010 term_exit -00000000c00498ac l F .text 0000000000000092 js_os_ttySetRaw -00000000c004993e l F .text 00000000000000a2 js_os_ttyGetWinSize -00000000c00499e0 l F .text 0000000000000036 js_os_isatty -00000000c0049a16 l F .text 0000000000000090 js_os_seek -00000000c0049aa6 l F .text 0000000000000050 js_new_message_pipe -00000000c0049af6 l F .text 000000000000000e atomic_add_int -00000000c0049b04 l F .text 000000000000000a js_sab_dup -00000000c0049b0e l F .text 000000000000015a js_worker_postMessage -00000000c0049c68 l F .text 00000000000000d0 js_worker_ctor_internal -00000000c0049d38 l F .text 000000000000010a js_os_init -00000000c004c632 l F .text 0000000000000374 js_os_poll -00000000c004a476 l F .text 000000000000019a js_worker_ctor -00000000c0071380 l O .rodata 00000000000008e0 js_os_funcs -00000000c0049e42 l F .text 000000000000001c js_get_errno -00000000c0049e5e l F .text 0000000000000072 js_std_file_close -00000000c0049ed0 l F .text 0000000000000052 js_os_dup2 -00000000c0049f22 l F .text 0000000000000036 js_os_dup -00000000c0049f58 l F .text 0000000000000052 js_os_kill -00000000c0049faa l F .text 0000000000000036 js_os_close -00000000c0049fe0 l F .text 0000000000000048 js_os_chdir -00000000c004a028 l F .text 000000000000007a js_os_symlink -00000000c004a0a2 l F .text 000000000000005e js_os_sleep -00000000c004a100 l F .text 000000000000006a js_os_mkdir -00000000c004a16a l F .text 000000000000007a js_os_rename -00000000c004a1e4 l F .text 0000000000000048 js_os_remove -00000000c004a22c l F .text 00000000000000be js_os_read_write -00000000c004a2ea l F .text 0000000000000098 js_os_open -00000000c004a382 l F .text 0000000000000040 js_sab_free -00000000c004a3c2 l F .text 000000000000003e js_free_message -00000000c004a400 l F .text 0000000000000076 js_free_message_pipe -00000000c004cabe l F .text 0000000000000100 worker_func -00000000c004a610 l F .text 0000000000000032 js_free_port.part.0 -00000000c004a642 l F .text 000000000000006a js_dump_obj.constprop.0 -00000000c004a6ac l F .text 0000000000000070 js_std_dump_error1 -00000000c004a71c l F .text 00000000000006bc js_os_exec -00000000c004add8 l F .text 0000000000000054 js_worker_finalizer -00000000c004ae2c l F .text 0000000000000094 js_os_utimes -00000000c004aec0 l F .text 00000000000000de js_os_sleepAsync -00000000c004af9e l F .text 00000000000000e8 js_os_setTimeout -00000000c004b086 l F .text 0000000000000154 js_os_setReadHandler -00000000c004b1da l F .text 0000000000000180 js_os_signal -00000000c004b35a l F .text 000000000000010e js_worker_set_onmessage -00000000c004b468 l F .text 000000000000004a js_worker_get_onmessage -00000000c004b4b2 l F .text 0000000000000344 js_std_urlGet -00000000c004b7f6 l F .text 00000000000003d8 js_os_stat -00000000c004bbce l F .text 0000000000000090 js_print -00000000c004bc5e l F .text 0000000000000126 js_evalScript -00000000c004bd84 l F .text 000000000000005a js_std_parseExtJSON -00000000c004bdde l F .text 000000000000008a js_std_file_puts -00000000c004bf38 l F .text 0000000000000068 js_std_loadFile -00000000c004bfa0 l F .text 0000000000000080 js_loadScript -00000000c004c5d8 l F .text 000000000000005a call_handler +00000000c004848c l F .text 0000000000000012 list_del +00000000c004849e l F .text 000000000000000e interrupt_handler +00000000c00484ac l F .text 0000000000000016 os_signal_handler +00000000c00484c2 l F .text 000000000000001a js_sab_alloc +00000000c00484dc l F .text 0000000000000026 JS_FreeValue +00000000c0048502 l F .text 0000000000000022 js_std_dbuf_init +00000000c0048524 l F .text 0000000000000010 JS_ToCString +00000000c0048534 l F .text 00000000000003fa js_printf_internal +00000000c004892e l F .text 000000000000000e js_std_sprintf +00000000c004893c l F .text 0000000000000024 js_std_printf +00000000c0048960 l F .text 000000000000003c js_std_file_get +00000000c004899c l F .text 0000000000000070 js_std_file_seek +00000000c0048a0c l F .text 000000000000003a js_std_file_printf +00000000c0048a46 l F .text 0000000000000024 js_set_error_object +00000000c0048a6a l F .text 0000000000000080 js_new_std_file +00000000c0048aea l F .text 0000000000000064 js_std_tmpfile +00000000c0048b4e l F .text 00000000000000e8 js_std_open +00000000c0048c36 l F .text 00000000000000c8 js_std_fdopen +00000000c0048cfe l F .text 00000000000000e8 js_std_popen +00000000c0048de6 l F .text 000000000000003a js_std_strerror +00000000c0048e20 l F .text 0000000000000052 get_bool_option +00000000c0048e72 l F .text 000000000000002a js_std_file_getByte +00000000c0048e9c l F .text 0000000000000092 js_std_file_getline +00000000c0048f2e l F .text 00000000000000cc js_std_getenviron +00000000c0048ffa l F .text 0000000000000038 js_std_unsetenv +00000000c0049032 l F .text 000000000000006c js_std_setenv +00000000c004909e l F .text 0000000000000050 js_std_getenv +00000000c00490ee l F .text 0000000000000016 js_std_gc +00000000c0049104 l F .text 000000000000001a js_std_exit +00000000c004911e l F .text 00000000000000f0 js_std_init +00000000c004920e l F .text 000000000000004e js_std_file_putByte +00000000c004925c l F .text 00000000000000a8 js_std_file_readAsString +00000000c0049304 l F .text 00000000000000ba js_std_file_read_write +00000000c00493be l F .text 0000000000000024 js_std_file_clearerr +00000000c00493e2 l F .text 000000000000002e js_std_file_error +00000000c0049410 l F .text 000000000000002a js_std_file_fileno +00000000c004943a l F .text 000000000000002e js_std_file_eof +00000000c0049468 l F .text 0000000000000064 js_std_file_tell +00000000c00494cc l F .text 0000000000000024 js_std_file_flush +00000000c00494f0 l F .text 0000000000000054 js_std_file_finalizer +00000000c0049544 l F .text 0000000000000078 js_os_pipe +00000000c00495bc l F .text 0000000000000076 make_obj_error +00000000c0049632 l F .text 0000000000000020 make_string_error +00000000c0049652 l F .text 0000000000000060 js_os_realpath +00000000c00496b2 l F .text 00000000000000aa js_os_waitpid +00000000c004975c l F .text 0000000000000016 js_os_getpid +00000000c0049772 l F .text 000000000000006c js_os_readlink +00000000c00497de l F .text 00000000000000d6 js_os_readdir +00000000c00498b4 l F .text 0000000000000034 js_os_getcwd +00000000c00498e8 l F .text 0000000000000026 get_time_ms +00000000c004990e l F .text 0000000000000068 js_os_now +00000000c0049976 l F .text 0000000000000026 JS_FreeValueRT +00000000c004999c l F .text 000000000000002c free_timer +00000000c00499c8 l F .text 000000000000006e js_os_clearTimeout +00000000c0049a36 l F .text 0000000000000036 free_rw_handler +00000000c0049a6c l F .text 0000000000000010 term_exit +00000000c0049a7c l F .text 0000000000000092 js_os_ttySetRaw +00000000c0049b0e l F .text 00000000000000a2 js_os_ttyGetWinSize +00000000c0049bb0 l F .text 0000000000000036 js_os_isatty +00000000c0049be6 l F .text 0000000000000090 js_os_seek +00000000c0049c76 l F .text 0000000000000050 js_new_message_pipe +00000000c0049cc6 l F .text 000000000000000e atomic_add_int +00000000c0049cd4 l F .text 000000000000000a js_sab_dup +00000000c0049cde l F .text 000000000000015a js_worker_postMessage +00000000c0049e38 l F .text 00000000000000d0 js_worker_ctor_internal +00000000c0049f08 l F .text 000000000000010a js_os_init +00000000c004c802 l F .text 0000000000000374 js_os_poll +00000000c004a646 l F .text 000000000000019a js_worker_ctor +00000000c00715e0 l O .rodata 00000000000008e0 js_os_funcs +00000000c004a012 l F .text 000000000000001c js_get_errno +00000000c004a02e l F .text 0000000000000072 js_std_file_close +00000000c004a0a0 l F .text 0000000000000052 js_os_dup2 +00000000c004a0f2 l F .text 0000000000000036 js_os_dup +00000000c004a128 l F .text 0000000000000052 js_os_kill +00000000c004a17a l F .text 0000000000000036 js_os_close +00000000c004a1b0 l F .text 0000000000000048 js_os_chdir +00000000c004a1f8 l F .text 000000000000007a js_os_symlink +00000000c004a272 l F .text 000000000000005e js_os_sleep +00000000c004a2d0 l F .text 000000000000006a js_os_mkdir +00000000c004a33a l F .text 000000000000007a js_os_rename +00000000c004a3b4 l F .text 0000000000000048 js_os_remove +00000000c004a3fc l F .text 00000000000000be js_os_read_write +00000000c004a4ba l F .text 0000000000000098 js_os_open +00000000c004a552 l F .text 0000000000000040 js_sab_free +00000000c004a592 l F .text 000000000000003e js_free_message +00000000c004a5d0 l F .text 0000000000000076 js_free_message_pipe +00000000c004cc8e l F .text 0000000000000100 worker_func +00000000c004a7e0 l F .text 0000000000000032 js_free_port.part.0 +00000000c004a812 l F .text 000000000000006a js_dump_obj.constprop.0 +00000000c004a87c l F .text 0000000000000070 js_std_dump_error1 +00000000c004a8ec l F .text 00000000000006bc js_os_exec +00000000c004afa8 l F .text 0000000000000054 js_worker_finalizer +00000000c004affc l F .text 0000000000000094 js_os_utimes +00000000c004b090 l F .text 00000000000000de js_os_sleepAsync +00000000c004b16e l F .text 00000000000000e8 js_os_setTimeout +00000000c004b256 l F .text 0000000000000154 js_os_setReadHandler +00000000c004b3aa l F .text 0000000000000180 js_os_signal +00000000c004b52a l F .text 000000000000010e js_worker_set_onmessage +00000000c004b638 l F .text 000000000000004a js_worker_get_onmessage +00000000c004b682 l F .text 0000000000000344 js_std_urlGet +00000000c004b9c6 l F .text 00000000000003d8 js_os_stat +00000000c004bd9e l F .text 0000000000000090 js_print +00000000c004be2e l F .text 0000000000000126 js_evalScript +00000000c004bf54 l F .text 000000000000005a js_std_parseExtJSON +00000000c004bfae l F .text 000000000000008a js_std_file_puts +00000000c004c108 l F .text 0000000000000068 js_std_loadFile +00000000c004c170 l F .text 0000000000000080 js_loadScript +00000000c004c7a8 l F .text 000000000000005a call_handler 00000000c01010c8 l O .bss 0000000000000028 oldtty 00000000c0101000 l O .data 0000000000000028 js_std_file_class 00000000c0101028 l O .data 0000000000000028 js_worker_class -00000000c0071c60 l O .rodata 0000000000000160 js_std_error_props -00000000c0071dc0 l O .rodata 0000000000000220 js_std_file_proto_funcs -00000000c0071fe0 l O .rodata 00000000000002e0 js_std_funcs -00000000c00722c0 l O .rodata 0000000000000040 js_worker_proto_funcs -00000000c0072300 l O .rodata 0000000000000018 std_name.0 +00000000c0071ec0 l O .rodata 0000000000000160 js_std_error_props +00000000c0072020 l O .rodata 0000000000000220 js_std_file_proto_funcs +00000000c0072240 l O .rodata 00000000000002e0 js_std_funcs +00000000c0072520 l O .rodata 0000000000000040 js_worker_proto_funcs +00000000c0072560 l O .rodata 0000000000000018 std_name.0 00000000c01010f8 l O .bss 0000000000000004 js_std_file_class_id 00000000c01010fc l O .bss 0000000000000004 js_worker_class_id 00000000c0101100 l O .bss 0000000000000008 js_worker_new_context_func 00000000c0101108 l O .bss 0000000000000008 os_pending_signals 00000000c0101110 l O .bss 0000000000000008 os_poll_func 0000000000000000 l df *ABS* 0000000000000000 libbf.c -00000000c004cc74 l F .text 0000000000000006 bf_realloc -00000000c004cc7a l F .text 0000000000000008 bf_malloc -00000000c004cc82 l F .text 000000000000000a bf_free -00000000c004cc8c l F .text 0000000000000012 bf_delete -00000000c004cc9e l F .text 000000000000001a sat_add -00000000c004ccb8 l F .text 0000000000000014 get_limbz -00000000c004cccc l F .text 000000000000003a get_bits -00000000c004cd06 l F .text 0000000000000020 get_bit -00000000c004cd26 l F .text 0000000000000022 limb_mask -00000000c004cd48 l F .text 000000000000001c mp_scan_nz -00000000c004cd64 l F .text 000000000000004e udiv1norm -00000000c004cdb2 l F .text 00000000000000b2 mp_sqrtrem1 -00000000c004ce64 l F .text 0000000000000036 to_digit -00000000c004ce9a l F .text 0000000000000004 bf_dbuf_realloc -00000000c004ce9e l F .text 0000000000000022 ceil_log2 -00000000c004cec0 l F .text 0000000000000080 bf_add_limb -00000000c004cf40 l F .text 000000000000009e mp_mul_basecase -00000000c004d146 l F .text 00000000000000d4 bf_set_overflow -00000000c004d21a l F .text 00000000000002a6 __bf_round -00000000c004d53c l F .text 0000000000000056 bf_op2 -00000000c004d6ea l F .text 00000000000000a6 bf_ziv_rounding -00000000c004d79e l F .text 00000000000000a0 bf_const_get -00000000c004d9ce l F .text 00000000000003e0 bf_add_internal -00000000c004ddae l F .text 0000000000000006 __bf_add -00000000c004ddb4 l F .text 0000000000000006 __bf_sub -00000000c004e14c l F .text 00000000000003a6 mp_divnorm -00000000c004e4f2 l F .text 0000000000000250 mp_sqrtrem_rec -00000000c004e742 l F .text 0000000000000198 __bf_div -00000000c004ea46 l F .text 00000000000000b4 bf_pow_ui -00000000c004eafa l F .text 000000000000004c bf_pow_ui_ui -00000000c004ee02 l F .text 000000000000010e bf_integer_from_radix_rec -00000000c004ef10 l F .text 0000000000000076 bf_sqrt_sin -00000000c004ef86 l F .text 0000000000000138 bf_const_log2_rec.constprop.0 -00000000c004f0be l F .text 000000000000005c bf_add_epsilon.isra.0 -00000000c004f132 l F .text 0000000000000062 bf_const_log2_internal -00000000c004f1e6 l F .text 00000000000001d8 chud_bs.constprop.0 -00000000c004f3be l F .text 00000000000000c6 bf_const_pi_internal -00000000c004f528 l F .text 000000000000022a bf_logic_op -00000000c004f850 l F .text 0000000000000286 bf_integer_to_radix_rec -00000000c004fad6 l F .text 00000000000002b4 output_digits.constprop.0 -00000000c0050356 l F .text 00000000000000aa bf_pow_int -00000000c00505ba l F .text 00000000000004fa bf_atof_internal.constprop.0 -00000000c0050ba2 l F .text 000000000000019e bf_convert_to_radix -00000000c00512c6 l F .text 0000000000000176 bf_exp_internal -00000000c005143c l F .text 000000000000012a check_exp_underflow_overflow -00000000c0051566 l F .text 0000000000000220 bf_log_internal -00000000c005179a l F .text 0000000000000276 bf_sincos -00000000c0051a10 l F .text 000000000000000c bf_cos_internal -00000000c0051a1c l F .text 000000000000000a bf_sin_internal -00000000c0051a26 l F .text 0000000000000044 bf_tan_internal -00000000c0051a6a l F .text 0000000000000200 bf_atan_internal -00000000c0051c6a l F .text 00000000000000a0 bf_asin_internal -00000000c0051f04 l F .text 0000000000000076 bf_pow_generic -00000000c00526d4 l F .text 00000000000000de bf_atan2_internal -00000000c00723e0 l O .rodata 0000000000000023 digits_per_limb_table -00000000c0072408 l O .rodata 00000000000001a4 inv_log2_radix -00000000c00725b0 l O .rodata 0000000000000118 log2_radix -00000000c00726c8 l O .rodata 0000000000000180 sqrt_table +00000000c004ce44 l F .text 0000000000000006 bf_realloc +00000000c004ce4a l F .text 0000000000000008 bf_malloc +00000000c004ce52 l F .text 000000000000000a bf_free +00000000c004ce5c l F .text 0000000000000012 bf_delete +00000000c004ce6e l F .text 000000000000001a sat_add +00000000c004ce88 l F .text 0000000000000014 get_limbz +00000000c004ce9c l F .text 000000000000003a get_bits +00000000c004ced6 l F .text 0000000000000020 get_bit +00000000c004cef6 l F .text 0000000000000022 limb_mask +00000000c004cf18 l F .text 000000000000001c mp_scan_nz +00000000c004cf34 l F .text 000000000000004e udiv1norm +00000000c004cf82 l F .text 00000000000000b2 mp_sqrtrem1 +00000000c004d034 l F .text 0000000000000036 to_digit +00000000c004d06a l F .text 0000000000000004 bf_dbuf_realloc +00000000c004d06e l F .text 0000000000000022 ceil_log2 +00000000c004d090 l F .text 0000000000000080 bf_add_limb +00000000c004d110 l F .text 000000000000009e mp_mul_basecase +00000000c004d316 l F .text 00000000000000d4 bf_set_overflow +00000000c004d3ea l F .text 00000000000002a6 __bf_round +00000000c004d70c l F .text 0000000000000056 bf_op2 +00000000c004d8ba l F .text 00000000000000a6 bf_ziv_rounding +00000000c004d96e l F .text 00000000000000a0 bf_const_get +00000000c004db9e l F .text 00000000000003e0 bf_add_internal +00000000c004df7e l F .text 0000000000000006 __bf_add +00000000c004df84 l F .text 0000000000000006 __bf_sub +00000000c004e31c l F .text 00000000000003a6 mp_divnorm +00000000c004e6c2 l F .text 0000000000000250 mp_sqrtrem_rec +00000000c004e912 l F .text 0000000000000198 __bf_div +00000000c004ec16 l F .text 00000000000000b4 bf_pow_ui +00000000c004ecca l F .text 000000000000004c bf_pow_ui_ui +00000000c004efd2 l F .text 000000000000010e bf_integer_from_radix_rec +00000000c004f0e0 l F .text 0000000000000076 bf_sqrt_sin +00000000c004f156 l F .text 0000000000000138 bf_const_log2_rec.constprop.0 +00000000c004f28e l F .text 000000000000005c bf_add_epsilon.isra.0 +00000000c004f302 l F .text 0000000000000062 bf_const_log2_internal +00000000c004f3b6 l F .text 00000000000001d8 chud_bs.constprop.0 +00000000c004f58e l F .text 00000000000000c6 bf_const_pi_internal +00000000c004f6f8 l F .text 000000000000022a bf_logic_op +00000000c004fa20 l F .text 0000000000000286 bf_integer_to_radix_rec +00000000c004fca6 l F .text 00000000000002b4 output_digits.constprop.0 +00000000c0050526 l F .text 00000000000000aa bf_pow_int +00000000c005078a l F .text 00000000000004fa bf_atof_internal.constprop.0 +00000000c0050d72 l F .text 000000000000019e bf_convert_to_radix +00000000c0051496 l F .text 0000000000000176 bf_exp_internal +00000000c005160c l F .text 000000000000012a check_exp_underflow_overflow +00000000c0051736 l F .text 0000000000000220 bf_log_internal +00000000c005196a l F .text 0000000000000276 bf_sincos +00000000c0051be0 l F .text 000000000000000c bf_cos_internal +00000000c0051bec l F .text 000000000000000a bf_sin_internal +00000000c0051bf6 l F .text 0000000000000044 bf_tan_internal +00000000c0051c3a l F .text 0000000000000200 bf_atan_internal +00000000c0051e3a l F .text 00000000000000a0 bf_asin_internal +00000000c00520d4 l F .text 0000000000000076 bf_pow_generic +00000000c00528a4 l F .text 00000000000000de bf_atan2_internal +00000000c0072640 l O .rodata 0000000000000023 digits_per_limb_table +00000000c0072668 l O .rodata 00000000000001a4 inv_log2_radix +00000000c0072810 l O .rodata 0000000000000118 log2_radix +00000000c0072928 l O .rodata 0000000000000180 sqrt_table 0000000000000000 l df *ABS* 0000000000000000 arch_atomic.c 0000000000000000 l df *ABS* 0000000000000000 stub.c 0000000000000000 l df *ABS* 0000000000000000 umm_free.c @@ -1293,20 +1293,20 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 mm_brkaddr.c 0000000000000000 l df *ABS* 0000000000000000 mm_extend.c 0000000000000000 l df *ABS* 0000000000000000 mm_free.c -00000000c00749d8 l O .srodata.__FUNCTION__.0 0000000000000008 __FUNCTION__.0 +00000000c0074c38 l O .srodata.__FUNCTION__.0 0000000000000008 __FUNCTION__.0 0000000000000000 l df *ABS* 0000000000000000 mm_memalign.c 0000000000000000 l df *ABS* 0000000000000000 mm_realloc.c 0000000000000000 l df *ABS* 0000000000000000 mm_heapmember.c 0000000000000000 l df *ABS* 0000000000000000 umm_initialize.c 0000000000000000 l df *ABS* 0000000000000000 mm_initialize.c -00000000c0072a40 l O .rodata 000000000000000e __FUNCTION__.0 -00000000c0072a50 l O .rodata 000000000000000d __FUNCTION__.1 +00000000c0072ca0 l O .rodata 000000000000000e __FUNCTION__.0 +00000000c0072cb0 l O .rodata 000000000000000d __FUNCTION__.1 0000000000000000 l df *ABS* 0000000000000000 mm_lock.c 0000000000000000 l df *ABS* 0000000000000000 mm_addfreechunk.c 0000000000000000 l df *ABS* 0000000000000000 mm_size2ndx.c 0000000000000000 l df *ABS* 0000000000000000 mm_shrinkchunk.c 0000000000000000 l df *ABS* 0000000000000000 mm_malloc.c -00000000c0072b38 l O .rodata 000000000000000a __FUNCTION__.0 +00000000c0072d98 l O .rodata 000000000000000a __FUNCTION__.0 0000000000000000 l df *ABS* 0000000000000000 lib_assert.c 0000000000000000 l df *ABS* 0000000000000000 lib_opendir.c 0000000000000000 l df *ABS* 0000000000000000 lib_closedir.c @@ -1318,7 +1318,7 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 pthread_attr_destroy.c 0000000000000000 l df *ABS* 0000000000000000 pthread_attr_setdetachstate.c 0000000000000000 l df *ABS* 0000000000000000 pthread_create.c -00000000c0053ede l F .text 0000000000000022 pthread_startup +00000000c00540ae l F .text 0000000000000022 pthread_startup 0000000000000000 l df *ABS* 0000000000000000 pthread_exit.c 0000000000000000 l df *ABS* 0000000000000000 pthread_mutex_lock.c 0000000000000000 l df *ABS* 0000000000000000 clock_ticks2time.c @@ -1337,8 +1337,8 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 lib_putchar.c 0000000000000000 l df *ABS* 0000000000000000 lib_puts.c 0000000000000000 l df *ABS* 0000000000000000 lib_libvsprintf.c -00000000c0054358 l F .text 0000000000000992 vsprintf_internal.constprop.0 -00000000c00749e0 l O .srodata.g_nullstring 0000000000000007 g_nullstring +00000000c0054528 l F .text 0000000000000992 vsprintf_internal.constprop.0 +00000000c0074c40 l O .srodata.g_nullstring 0000000000000007 g_nullstring 0000000000000000 l df *ABS* 0000000000000000 lib_remove.c 0000000000000000 l df *ABS* 0000000000000000 lib_ultoa_invert.c 0000000000000000 l df *ABS* 0000000000000000 lib_dtoa_engine.c @@ -1375,31 +1375,31 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 lib_strtol.c 0000000000000000 l df *ABS* 0000000000000000 lib_strtoul.c 0000000000000000 l df *ABS* 0000000000000000 lib_strtold.c -00000000c0055b6c l F .text 000000000000002a ifallzero.constprop.0 -00000000c0055b96 l F .text 0000000000000068 scanexp.constprop.0 -00000000c0055bfe l F .text 000000000000077e strtox -00000000c00749e8 l O .srodata.CSWTCH.70 0000000000000003 CSWTCH.70 -00000000c00749f0 l O .srodata.CSWTCH.71 0000000000000006 CSWTCH.71 +00000000c0055d3c l F .text 000000000000002a ifallzero.constprop.0 +00000000c0055d66 l F .text 0000000000000068 scanexp.constprop.0 +00000000c0055dce l F .text 000000000000077e strtox +00000000c0074c48 l O .srodata.CSWTCH.70 0000000000000003 CSWTCH.70 +00000000c0074c50 l O .srodata.CSWTCH.71 0000000000000006 CSWTCH.71 0000000000000000 l df *ABS* 0000000000000000 lib_checkbase.c 0000000000000000 l df *ABS* 0000000000000000 lib_mkstemp.c 0000000000000000 l df *ABS* 0000000000000000 lib_atexit.c 0000000000000000 l df *ABS* 0000000000000000 lib_memoutstream.c -00000000c005646a l F .text 0000000000000056 memoutstream_puts -00000000c00564c0 l F .text 0000000000000018 memoutstream_putc +00000000c005663a l F .text 0000000000000056 memoutstream_puts +00000000c0056690 l F .text 0000000000000018 memoutstream_putc 0000000000000000 l df *ABS* 0000000000000000 lib_nulloutstream.c -00000000c0056506 l F .text 0000000000000024 nulloutstream_puts -00000000c005652a l F .text 0000000000000020 nulloutstream_putc +00000000c00566d6 l F .text 0000000000000024 nulloutstream_puts +00000000c00566fa l F .text 0000000000000020 nulloutstream_putc 0000000000000000 l df *ABS* 0000000000000000 lib_libnoflush.c 0000000000000000 l df *ABS* 0000000000000000 lib_stdoutstream.c -00000000c0056572 l F .text 0000000000000062 stdoutstream_puts -00000000c00565d4 l F .text 0000000000000058 stdoutstream_putc +00000000c0056742 l F .text 0000000000000062 stdoutstream_puts +00000000c00567a4 l F .text 0000000000000058 stdoutstream_putc 0000000000000000 l df *ABS* 0000000000000000 lib_flsl.c 0000000000000000 l df *ABS* 0000000000000000 lib_isbasedigit.c 0000000000000000 l df *ABS* 0000000000000000 lib_skipspace.c 0000000000000000 l df *ABS* 0000000000000000 lib_strcat.c 0000000000000000 l df *ABS* 0000000000000000 lib_strdup.c 0000000000000000 l df *ABS* 0000000000000000 lib_strerror.c -00000000c0073d00 l O .rodata 00000000000008b0 g_errnomap +00000000c0073f60 l O .rodata 00000000000008b0 g_errnomap 0000000000000000 l df *ABS* 0000000000000000 lib_strrchr.c 0000000000000000 l df *ABS* 0000000000000000 lib_strspn.c 0000000000000000 l df *ABS* 0000000000000000 lib_memchr.c @@ -1442,7 +1442,7 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 lib_tcflush.c 0000000000000000 l df *ABS* 0000000000000000 lib_tcdrain.c 0000000000000000 l df *ABS* 0000000000000000 lib_daysbeforemonth.c -00000000c0074610 l O .rodata 000000000000001a g_daysbeforemonth +00000000c0074870 l O .rodata 000000000000001a g_daysbeforemonth 0000000000000000 l df *ABS* 0000000000000000 lib_isleapyear.c 0000000000000000 l df *ABS* 0000000000000000 lib_dayofweek.c 0000000000000000 l df *ABS* 0000000000000000 lib_getoptvars.c @@ -1515,13 +1515,13 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 libgcc2.c 0000000000000000 l df *ABS* 0000000000000000 lib_acos.c 0000000000000000 l df *ABS* 0000000000000000 lib_asin.c -00000000c0057678 l F .text 00000000000000b2 asin_aux +00000000c0057848 l F .text 00000000000000b2 asin_aux 0000000000000000 l df *ABS* 0000000000000000 lib_atan.c 0000000000000000 l df *ABS* 0000000000000000 lib_atan2.c 0000000000000000 l df *ABS* 0000000000000000 lib_cos.c 0000000000000000 l df *ABS* 0000000000000000 lib_cosh.c 0000000000000000 l df *ABS* 0000000000000000 lib_exp.c -00000000c0074630 l O .rodata 0000000000000098 _dbl_inv_fact +00000000c0074890 l O .rodata 0000000000000098 _dbl_inv_fact 0000000000000000 l df *ABS* 0000000000000000 lib_fabs.c 0000000000000000 l df *ABS* 0000000000000000 lib_fmod.c 0000000000000000 l df *ABS* 0000000000000000 lib_log.c @@ -1530,7 +1530,7 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 lib_modf.c 0000000000000000 l df *ABS* 0000000000000000 lib_pow.c 0000000000000000 l df *ABS* 0000000000000000 lib_sin.c -00000000c00746c8 l O .rodata 0000000000000050 _dbl_inv_fact +00000000c0074928 l O .rodata 0000000000000050 _dbl_inv_fact 0000000000000000 l df *ABS* 0000000000000000 lib_sinh.c 0000000000000000 l df *ABS* 0000000000000000 lib_sqrt.c 0000000000000000 l df *ABS* 0000000000000000 lib_tan.c @@ -1540,7 +1540,7 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 lib_atanh.c 0000000000000000 l df *ABS* 0000000000000000 lib_cbrt.c 0000000000000000 l df *ABS* 0000000000000000 lib_libexpi.c -00000000c0074730 l O .rodata 0000000000000050 g_expi_square_tbl +00000000c0074990 l O .rodata 0000000000000050 g_expi_square_tbl 0000000000000000 l df *ABS* 0000000000000000 lib_libsqrtapprox.c 0000000000000000 l df *ABS* 0000000000000000 lib_expm1.c 0000000000000000 l df *ABS* 0000000000000000 lib_fmax.c @@ -1552,734 +1552,734 @@ SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 letf2.c 0000000000000000 l df *ABS* 0000000000000000 extendsftf2.c 0000000000000000 l df *ABS* 0000000000000000 umm_zalloc.c -00000000c004c9e0 g F .text 000000000000003e js_std_loop -00000000c0052988 g F .text 0000000000000006 __atomic_load_2 -00000000c0047c5e g F .text 0000000000000052 dbuf_write -00000000c00542a8 g F .text 000000000000001c putchar +00000000c004cbb0 g F .text 000000000000003e js_std_loop +00000000c0052b58 g F .text 0000000000000006 __atomic_load_2 +00000000c0047e2e g F .text 0000000000000052 dbuf_write +00000000c0054478 g F .text 000000000000001c putchar 00000000c0002cb4 g F .text 000000000000003a .hidden __floatunsitf -00000000c00572b2 g F .text 0000000000000014 clock_gettime -00000000c00574da g F .text 0000000000000016 pgalloc -00000000c004f484 g F .text 0000000000000052 bf_mul_si -00000000c0054f16 g F .text 00000000000000d4 lib_mode2oflags -00000000c0056966 g F .text 0000000000000012 strcpy -00000000c00540b8 g F .text 000000000000001c nxsem_get_value -00000000c0057434 g F .text 000000000000000e nx_pthread_exit -00000000c0057414 g F .text 0000000000000020 nx_pthread_create -00000000c005666e g F .text 0000000000000066 lib_isbasedigit -00000000c0057fae g F .text 000000000000001a expm1 -00000000c00575fe g F .text 0000000000000010 unsetenv -00000000c0015120 g F .text 000000000000000a JS_SetPrototype -00000000c005381c g F .text 00000000000000b0 mm_shrinkchunk -00000000c005792a g F .text 0000000000000010 fabs -00000000c00133f6 g F .text 000000000000002a JS_ThrowTypeError -00000000c0006e3a g F .text 0000000000000006 js_free -00000000c0057964 g F .text 00000000000000fe log -00000000c0047e06 g F .text 0000000000000026 dbuf_free -00000000c0057c30 g F .text 00000000000001b0 sqrt -00000000c0057f4c g F .text 000000000000004e lib_expi -00000000c0019a22 g F .text 0000000000000020 JS_NewString -00000000c0052c00 g F .text 000000000000000e __sync_xor_and_fetch_2 -00000000c0057882 g F .text 000000000000002a cosh -00000000c0057e30 g F .text 0000000000000056 asinh -00000000c0057514 g F .text 0000000000000014 pthread_mutex_timedlock -00000000c0057630 g F .text 0000000000000018 waitpid -00000000c005558e g F .text 000000000000001c lib_fflush -00000000c0016c70 g F .text 0000000000000016 JS_NewObjectClass +00000000c0057482 g F .text 0000000000000014 clock_gettime +00000000c00576aa g F .text 0000000000000016 pgalloc +00000000c004f654 g F .text 0000000000000052 bf_mul_si +00000000c00550e6 g F .text 00000000000000d4 lib_mode2oflags +00000000c0056b36 g F .text 0000000000000012 strcpy +00000000c0054288 g F .text 000000000000001c nxsem_get_value +00000000c0057604 g F .text 000000000000000e nx_pthread_exit +00000000c00575e4 g F .text 0000000000000020 nx_pthread_create +00000000c005683e g F .text 0000000000000066 lib_isbasedigit +00000000c005817e g F .text 000000000000001a expm1 +00000000c00577ce g F .text 0000000000000010 unsetenv +00000000c00152f0 g F .text 000000000000000a JS_SetPrototype +00000000c00539ec g F .text 00000000000000b0 mm_shrinkchunk +00000000c0057afa g F .text 0000000000000010 fabs +00000000c00134e4 g F .text 000000000000002a JS_ThrowTypeError +00000000c0006f28 g F .text 0000000000000006 js_free +00000000c0057b34 g F .text 00000000000000fe log +00000000c0047fd6 g F .text 0000000000000026 dbuf_free +00000000c0057e00 g F .text 00000000000001b0 sqrt +00000000c005811c g F .text 000000000000004e lib_expi +00000000c0019bf2 g F .text 0000000000000020 JS_NewString +00000000c0052dd0 g F .text 000000000000000e __sync_xor_and_fetch_2 +00000000c0057a52 g F .text 000000000000002a cosh +00000000c0058000 g F .text 0000000000000056 asinh +00000000c00576e4 g F .text 0000000000000014 pthread_mutex_timedlock +00000000c0057800 g F .text 0000000000000018 waitpid +00000000c005575e g F .text 000000000000001c lib_fflush +00000000c0016e40 g F .text 0000000000000016 JS_NewObjectClass 00000000c0001d84 g F .text 00000000000000a6 .hidden __getf2 -00000000c0055770 g F .text 0000000000000054 tmpfile -00000000c0036104 g F .text 00000000000000b4 JS_AddIntrinsicProxy -00000000c000750c g F .text 0000000000000010 JS_FreeAtom -00000000c0057390 g F .text 000000000000002c ioctl -00000000c004c9a6 g F .text 000000000000003a js_std_promise_rejection_tracker -00000000c0052ce4 g F .text 000000000000000c __sync_val_compare_and_swap_8 -00000000c0052cb8 g F .text 0000000000000010 __sync_val_compare_and_swap_1 -00000000c005745a g F .text 0000000000000016 nxsem_clockwait -00000000c0052b48 g F .text 000000000000000a __sync_add_and_fetch_8 -00000000c004f4d6 g F .text 0000000000000052 bf_add_si -00000000c0011842 g F .text 0000000000000364 JS_GetPropertyInternal -00000000c0052db6 g F .text 0000000000000016 popen +00000000c0055940 g F .text 0000000000000054 tmpfile +00000000c00362d4 g F .text 00000000000000b4 JS_AddIntrinsicProxy +00000000c00075fa g F .text 0000000000000010 JS_FreeAtom +00000000c0057560 g F .text 000000000000002c ioctl +00000000c004cb76 g F .text 000000000000003a js_std_promise_rejection_tracker +00000000c0052eb4 g F .text 000000000000000c __sync_val_compare_and_swap_8 +00000000c0052e88 g F .text 0000000000000010 __sync_val_compare_and_swap_1 +00000000c005762a g F .text 0000000000000016 nxsem_clockwait +00000000c0052d18 g F .text 000000000000000a __sync_add_and_fetch_8 +00000000c004f6a6 g F .text 0000000000000052 bf_add_si +00000000c0011930 g F .text 0000000000000364 JS_GetPropertyInternal +00000000c0052f86 g F .text 0000000000000016 popen 00000000c0001cf0 g F .text 0000000000000094 .hidden __eqtf2 -00000000c0057212 g F .text 0000000000000022 clock_isleapyear -00000000c005376e g F .text 0000000000000076 mm_addfreechunk -00000000c0052c0e g F .text 000000000000000a __sync_xor_and_fetch_4 -00000000c0056c7a g F .text 00000000000000c0 sysconf -00000000c005419c g F .text 0000000000000030 printf -00000000c0057572 g F .text 000000000000000c sched_lock -00000000c0016fbe g F .text 0000000000000012 JS_NewArray -00000000c004c33a g F .text 0000000000000138 js_std_add_helpers -00000000c004d50c g F .text 0000000000000030 bf_move -00000000c0006eaa g F .text 0000000000000016 JS_SetSharedArrayBufferFunctions +00000000c00573e2 g F .text 0000000000000022 clock_isleapyear +00000000c005393e g F .text 0000000000000076 mm_addfreechunk +00000000c0052dde g F .text 000000000000000a __sync_xor_and_fetch_4 +00000000c0056e4a g F .text 00000000000000c0 sysconf +00000000c005436c g F .text 0000000000000030 printf +00000000c0057742 g F .text 000000000000000c sched_lock +00000000c001718e g F .text 0000000000000012 JS_NewArray +00000000c004c50a g F .text 0000000000000138 js_std_add_helpers +00000000c004d6dc g F .text 0000000000000030 bf_move +00000000c0006f98 g F .text 0000000000000016 JS_SetSharedArrayBufferFunctions 00000000c0000e10 g F .text 0000000000000830 .hidden __addtf3 -00000000c0009704 g F .text 0000000000000174 JS_RunGC -00000000c0014984 g F .text 000000000000002a JS_ThrowInternalError -00000000c00527b2 g F .text 0000000000000012 bf_atan2 -00000000c00263dc g F .text 000000000000004a JS_AddModuleExport -00000000c00555ac g F .text 0000000000000002 putc_unlocked -00000000c0053eac g F .text 000000000000001a pthread_attr_destroy -00000000c0056c70 g F .text 000000000000000a task_get_info -00000000c004c472 g F .text 0000000000000096 js_std_init_handlers -00000000c0046c2c g F .text 00000000000000dc cr_op -00000000c0053002 g F .text 0000000000000120 mm_delayfree -00000000c005805e g F .text 000000000000008e round -00000000c0053b52 g F .text 000000000000001e nxmutex_is_locked -00000000c0052aac g F .text 000000000000000a __atomic_fetch_and_8 -00000000c0009b98 g F .text 000000000000000e JS_NewRuntime -00000000c0053f00 g F .text 0000000000000014 pthread_create -00000000c0013874 g F .text 000000000000007a JS_EvalThis +00000000c00097f2 g F .text 0000000000000174 JS_RunGC +00000000c0014a72 g F .text 000000000000002a JS_ThrowInternalError +00000000c0052982 g F .text 0000000000000012 bf_atan2 +00000000c00265ac g F .text 000000000000004a JS_AddModuleExport +00000000c005577c g F .text 0000000000000002 putc_unlocked +00000000c005407c g F .text 000000000000001a pthread_attr_destroy +00000000c0056e40 g F .text 000000000000000a task_get_info +00000000c004c642 g F .text 0000000000000096 js_std_init_handlers +00000000c0046dfc g F .text 00000000000000dc cr_op +00000000c00531d2 g F .text 0000000000000120 mm_delayfree +00000000c005822e g F .text 000000000000008e round +00000000c0053d22 g F .text 000000000000001e nxmutex_is_locked +00000000c0052c7c g F .text 000000000000000a __atomic_fetch_and_8 +00000000c0009c86 g F .text 000000000000000e JS_NewRuntime +00000000c00540d0 g F .text 0000000000000014 pthread_create +00000000c0013962 g F .text 000000000000007a JS_EvalThis 00000000c0002c5c g F .text 0000000000000058 .hidden __floatsitf 00000000c01010a9 g .sdata.g_syslog_mask 0000000000000000 _edtors -00000000c00291f6 g F .text 00000000000000d8 JS_NewCFunctionData -00000000c0018cfc g F .text 0000000000000008 JS_NewBigInt64 -00000000c0056ffe g F .text 000000000000000c sigemptyset -00000000c0047b1c g F .text 0000000000000022 pstrcpy -00000000c0056d4a g F .text 0000000000000032 utimes -00000000c005675c g F .text 0000000000000044 strerror -00000000c00309c4 g F .text 000000000000001e JS_GetOwnProperty -00000000c0006f30 g F .text 0000000000000010 JS_UpdateStackTop -00000000c0053cea g F .text 000000000000000a nxmutex_restorelock -00000000c0016d88 g F .text 0000000000000010 JS_NewObject -00000000c0053e8c g F .text 0000000000000020 pthread_attr_init -00000000c004d4c0 g F .text 000000000000004c bf_set -00000000c001f20e g F .text 0000000000000040 JS_AtomToCString -00000000c005682e g F .text 0000000000000042 memmove -00000000c0052a1e g F .text 000000000000000e __atomic_fetch_add_1 -00000000c0053f14 g F .text 0000000000000016 pthread_exit -00000000c0052d8a g F .text 0000000000000016 pclose -00000000c0054204 g F .text 000000000000003c snprintf -00000000c0029a1c g F .text 000000000000000c JS_SetConstructor -00000000c0057384 g F .text 000000000000000c gettid -00000000c005330c g F .text 0000000000000274 mm_realloc -00000000c001310c g F .text 000000000000002a JS_ThrowSyntaxError -00000000c0053e66 g F .text 0000000000000026 nxrmutex_restorelock -00000000c00527c4 g F .text 00000000000000e2 bf_asin -00000000c005297e g F .text 0000000000000004 __atomic_store_8 -00000000c00524b6 g F .text 00000000000000ec bf_tan -00000000c0052c62 g F .text 000000000000000e __sync_nand_and_fetch_8 -00000000c0007abe g F .text 0000000000000070 JS_NewClass +00000000c00293c6 g F .text 00000000000000d8 JS_NewCFunctionData +00000000c0018ecc g F .text 0000000000000008 JS_NewBigInt64 +00000000c00571ce g F .text 000000000000000c sigemptyset +00000000c0047cec g F .text 0000000000000022 pstrcpy +00000000c0056f1a g F .text 0000000000000032 utimes +00000000c005692c g F .text 0000000000000044 strerror +00000000c0030b94 g F .text 000000000000001e JS_GetOwnProperty +00000000c000701e g F .text 0000000000000010 JS_UpdateStackTop +00000000c0053eba g F .text 000000000000000a nxmutex_restorelock +00000000c0016f58 g F .text 0000000000000010 JS_NewObject +00000000c005405c g F .text 0000000000000020 pthread_attr_init +00000000c004d690 g F .text 000000000000004c bf_set +00000000c001f3de g F .text 0000000000000040 JS_AtomToCString +00000000c00569fe g F .text 0000000000000042 memmove +00000000c0052bee g F .text 000000000000000e __atomic_fetch_add_1 +00000000c00540e4 g F .text 0000000000000016 pthread_exit +00000000c0052f5a g F .text 0000000000000016 pclose +00000000c00543d4 g F .text 000000000000003c snprintf +00000000c0029bec g F .text 000000000000000c JS_SetConstructor +00000000c0057554 g F .text 000000000000000c gettid +00000000c00534dc g F .text 0000000000000274 mm_realloc +00000000c00131fa g F .text 000000000000002a JS_ThrowSyntaxError +00000000c0054036 g F .text 0000000000000026 nxrmutex_restorelock +00000000c0052994 g F .text 00000000000000e2 bf_asin +00000000c0052b4e g F .text 0000000000000004 __atomic_store_8 +00000000c0052686 g F .text 00000000000000ec bf_tan +00000000c0052e32 g F .text 000000000000000e __sync_nand_and_fetch_8 +00000000c0007bac g F .text 0000000000000070 JS_NewClass 00000000c01010a9 g .sdata.g_syslog_mask 0000000000000000 _sdtors -00000000c00566d4 g F .text 0000000000000026 lib_skipspace -00000000c00529a2 g F .text 000000000000000c __atomic_exchange_2 -00000000c0053ad4 g F .text 0000000000000016 __errno -00000000c0052964 g F .text 0000000000000004 bf_get_fft_size -00000000c001612a g F .text 0000000000000030 js_realloc -00000000c0074968 g O .srodata.qjsc_repl_size 0000000000000004 qjsc_repl_size -00000000c0042c72 g F .text 0000000000000098 JS_GetTypedArrayBuffer -00000000c005234a g F .text 0000000000000092 bf_cos -00000000c005736a g F .text 000000000000000e getenv -00000000c0057fe0 g F .text 0000000000000044 ceil -00000000c004cbbe g F .text 00000000000000b6 js_std_eval_binary -00000000c000a66a g F .text 0000000000000012 JS_GetGlobalObject -00000000c0029e2e g F .text 000000000000000a JS_ParseJSON -00000000c0058024 g F .text 000000000000003a floor -00000000c00563a4 g F .text 0000000000000006 strtold -00000000c005816c g .text 0000000000000000 _etext -00000000c00466f2 g F .text 000000000000007c lre_canonicalize +00000000c00568a4 g F .text 0000000000000026 lib_skipspace +00000000c0052b72 g F .text 000000000000000c __atomic_exchange_2 +00000000c0053ca4 g F .text 0000000000000016 __errno +00000000c0052b34 g F .text 0000000000000004 bf_get_fft_size +00000000c00162fa g F .text 0000000000000030 js_realloc +00000000c0074bc8 g O .srodata.qjsc_repl_size 0000000000000004 qjsc_repl_size +00000000c0042e42 g F .text 0000000000000098 JS_GetTypedArrayBuffer +00000000c005251a g F .text 0000000000000092 bf_cos +00000000c005753a g F .text 000000000000000e getenv +00000000c00581b0 g F .text 0000000000000044 ceil +00000000c004cd8e g F .text 00000000000000b6 js_std_eval_binary +00000000c000a758 g F .text 0000000000000012 JS_GetGlobalObject +00000000c0029ffe g F .text 000000000000000a JS_ParseJSON +00000000c00581f4 g F .text 000000000000003a floor +00000000c0056574 g F .text 0000000000000006 strtold +00000000c005833c g .text 0000000000000000 _etext +00000000c00468c2 g F .text 000000000000007c lre_canonicalize 00000000c01010b0 g .bss 0000000000000000 _sbss -00000000c00528a6 g F .text 00000000000000be bf_acos -00000000c0052d32 g F .text 0000000000000016 fesetround -00000000c0029716 g F .text 0000000000000042 JS_DefinePropertyValueInt64 -00000000c0016d2e g F .text 000000000000000a JS_NewObjectProto -00000000c0009ba6 g F .text 0000000000000022 JS_IsLiveObject -00000000c000ae96 g F .text 000000000000000e JS_SetModuleLoaderFunc -00000000c0056f32 g F .text 000000000000008c lib_getfullpath -00000000c000a7fa g F .text 0000000000000028 JS_SetConstructorBit -00000000c0018d0e g F .text 0000000000000064 JS_NewBigUint64 -00000000c0057316 g F .text 0000000000000018 execve -00000000c000af90 g F .text 000000000000000c JS_NewPromiseCapability -00000000c0052bb8 g F .text 000000000000000a __sync_or_and_fetch_8 -00000000c0014ca8 g F .text 0000000000000020 js_strdup -00000000c0057378 g F .text 000000000000000c getpid +00000000c0052a76 g F .text 00000000000000be bf_acos +00000000c0052f02 g F .text 0000000000000016 fesetround +00000000c00298e6 g F .text 0000000000000042 JS_DefinePropertyValueInt64 +00000000c0016efe g F .text 000000000000000a JS_NewObjectProto +00000000c0009c94 g F .text 0000000000000022 JS_IsLiveObject +00000000c000af84 g F .text 000000000000000e JS_SetModuleLoaderFunc +00000000c0057102 g F .text 000000000000008c lib_getfullpath +00000000c000a8e8 g F .text 0000000000000028 JS_SetConstructorBit +00000000c0018ede g F .text 0000000000000064 JS_NewBigUint64 +00000000c00574e6 g F .text 0000000000000018 execve +00000000c000b07e g F .text 000000000000000c JS_NewPromiseCapability +00000000c0052d88 g F .text 000000000000000a __sync_or_and_fetch_8 +00000000c0014e78 g F .text 0000000000000020 js_strdup +00000000c0057548 g F .text 000000000000000c getpid 00000000c0004070 g F .text 0000000000000008 js_realloc_rt -00000000c0006e86 g F .text 0000000000000006 JS_GetRuntimeOpaque -00000000c005374a g F .text 0000000000000024 mm_unlock -00000000c005558a g F .text 0000000000000004 lib_fflush_unlocked -00000000c0050198 g F .text 00000000000000c4 bf_get_int32 -00000000c0016d38 g F .text 0000000000000050 JS_GetImportMeta -00000000c0054d40 g F .text 0000000000000040 __ultoa_invert -00000000c0072b60 g O .rodata 0000000000000018 g_default_pthread_attr -00000000c005656e g F .text 0000000000000004 lib_noflush -00000000c0015cdc g F .text 0000000000000026 js_mallocz -00000000c00152a0 g F .text 0000000000000086 JS_EnqueueJob -00000000c005025c g F .text 00000000000000bc bf_get_int64 -00000000c004ebc8 g F .text 0000000000000034 bf_isqrt -00000000c0053f84 g F .text 0000000000000064 task_setcancelstate -00000000c004d63e g F .text 00000000000000ac bf_can_round -00000000c0057f9a g F .text 0000000000000014 lib_sqrtapprox -00000000c00569da g F .text 000000000000001c memcpy -00000000c0036038 g F .text 00000000000000b6 JS_AddIntrinsicRegExp -00000000c00538cc g F .text 000000000000014c mm_malloc -00000000c0052f20 g F .text 0000000000000022 mm_brkaddr -00000000c0054276 g F .text 0000000000000032 perror -00000000c0053fe8 g F .text 000000000000003a nxsem_init -00000000c0052dcc g F .text 0000000000000016 readlink -00000000c004d83e g F .text 000000000000005e mp_print_str -00000000c004d0da g F .text 0000000000000024 bf_set_si +00000000c0006f74 g F .text 0000000000000006 JS_GetRuntimeOpaque +00000000c005391a g F .text 0000000000000024 mm_unlock +00000000c005575a g F .text 0000000000000004 lib_fflush_unlocked +00000000c0050368 g F .text 00000000000000c4 bf_get_int32 +00000000c0016f08 g F .text 0000000000000050 JS_GetImportMeta +00000000c0054f10 g F .text 0000000000000040 __ultoa_invert +00000000c0072dc0 g O .rodata 0000000000000018 g_default_pthread_attr +00000000c005673e g F .text 0000000000000004 lib_noflush +00000000c0015eac g F .text 0000000000000026 js_mallocz +00000000c0015470 g F .text 0000000000000086 JS_EnqueueJob +00000000c005042c g F .text 00000000000000bc bf_get_int64 +00000000c004ed98 g F .text 0000000000000034 bf_isqrt +00000000c0054154 g F .text 0000000000000064 task_setcancelstate +00000000c004d80e g F .text 00000000000000ac bf_can_round +00000000c005816a g F .text 0000000000000014 lib_sqrtapprox +00000000c0056baa g F .text 000000000000001c memcpy +00000000c0036208 g F .text 00000000000000b6 JS_AddIntrinsicRegExp +00000000c0053a9c g F .text 000000000000014c mm_malloc +00000000c00530f0 g F .text 0000000000000022 mm_brkaddr +00000000c0054446 g F .text 0000000000000032 perror +00000000c00541b8 g F .text 000000000000003a nxsem_init +00000000c0052f9c g F .text 0000000000000016 readlink +00000000c004da0e g F .text 000000000000005e mp_print_str +00000000c004d2aa g F .text 0000000000000024 bf_set_si 00000000c0001640 g F .text 00000000000006b0 .hidden __divtf3 -00000000c00542e0 g F .text 000000000000006a puts -00000000c000a896 g F .text 000000000000000c JS_ResetUncatchableError -00000000c0057302 g F .text 0000000000000014 dup2 -00000000c00361b8 g F .text 0000000000000148 JS_AddIntrinsicMapSet -00000000c0058170 g .rodata 0000000000000000 _srodata -00000000c00571e2 g F .text 0000000000000008 tcflush -00000000c0052a94 g F .text 000000000000000e __atomic_fetch_and_2 -00000000c0042a84 g F .text 0000000000000130 JS_ReadObject -00000000c0052cd8 g F .text 000000000000000c __sync_val_compare_and_swap_4 -00000000c0007f96 g F .text 0000000000000036 JS_SetClassProto -00000000c0052c98 g F .text 0000000000000010 __sync_bool_compare_and_swap_4 -00000000c0052974 g F .text 0000000000000006 __atomic_store_2 -00000000c0055730 g F .text 0000000000000008 feof -00000000c0052a4e g F .text 0000000000000010 __atomic_fetch_sub_1 -00000000c0052e04 g F .text 0000000000000006 malloc -00000000c0040c4e g F .text 000000000000005c JS_LoadModule +00000000c00544b0 g F .text 000000000000006a puts +00000000c000a984 g F .text 000000000000000c JS_ResetUncatchableError +00000000c00574d2 g F .text 0000000000000014 dup2 +00000000c0036388 g F .text 0000000000000148 JS_AddIntrinsicMapSet +00000000c0058340 g .rodata 0000000000000000 _srodata +00000000c00573b2 g F .text 0000000000000008 tcflush +00000000c0052c64 g F .text 000000000000000e __atomic_fetch_and_2 +00000000c0042c54 g F .text 0000000000000130 JS_ReadObject +00000000c0052ea8 g F .text 000000000000000c __sync_val_compare_and_swap_4 +00000000c0008084 g F .text 0000000000000036 JS_SetClassProto +00000000c0052e68 g F .text 0000000000000010 __sync_bool_compare_and_swap_4 +00000000c0052b44 g F .text 0000000000000006 __atomic_store_2 +00000000c0055900 g F .text 0000000000000008 feof +00000000c0052c1e g F .text 0000000000000010 __atomic_fetch_sub_1 +00000000c0052fd4 g F .text 0000000000000006 malloc +00000000c0040e1e g F .text 000000000000005c JS_LoadModule 00000000c000323a g F .text 00000000000000a6 .hidden __letf2 -00000000c0026426 g F .text 000000000000004a JS_AddModuleExportList -00000000c0054d0e g F .text 0000000000000032 remove -00000000c0056a4c g F .text 0000000000000018 isatty -00000000c0055844 g F .text 0000000000000016 quick_exit -00000000c0056d7c g F .text 000000000000003a futimesat -00000000c0007a82 g F .text 000000000000001a JS_NewClassID -00000000c0057280 g F .text 0000000000000018 _assert -00000000c0051d0a g F .text 0000000000000038 bf_clear_cache -00000000c0054240 g F .text 0000000000000036 vsnprintf -00000000c004ebfc g F .text 0000000000000066 mp_sqrtrem -00000000c0050ad2 g F .text 00000000000000d0 bf_mul_log2_radix -00000000c000af1c g F .text 0000000000000004 lre_check_stack_overflow -00000000c0009878 g F .text 0000000000000110 JS_FreeRuntime -00000000c00525a2 g F .text 0000000000000132 bf_atan -00000000c00571ea g F .text 0000000000000008 tcdrain -00000000c004d94c g F .text 0000000000000082 bf_cmpu -00000000c0053cf4 g F .text 0000000000000008 nxrmutex_init -00000000c001a7d6 g F .text 000000000000000a JS_ToString -00000000c0057470 g F .text 000000000000000e nxsem_destroy -00000000c0014c72 g F .text 0000000000000036 js_strndup -00000000c004dea0 g F .text 0000000000000020 mp_add_ui -00000000c0055a76 g F .text 00000000000000f6 strtoul +00000000c00265f6 g F .text 000000000000004a JS_AddModuleExportList +00000000c0054ede g F .text 0000000000000032 remove +00000000c0056c1c g F .text 0000000000000018 isatty +00000000c0055a14 g F .text 0000000000000016 quick_exit +00000000c0056f4c g F .text 000000000000003a futimesat +00000000c0007b70 g F .text 000000000000001a JS_NewClassID +00000000c0057450 g F .text 0000000000000018 _assert +00000000c0051eda g F .text 0000000000000038 bf_clear_cache +00000000c0054410 g F .text 0000000000000036 vsnprintf +00000000c004edcc g F .text 0000000000000066 mp_sqrtrem +00000000c0050ca2 g F .text 00000000000000d0 bf_mul_log2_radix +00000000c000b00a g F .text 0000000000000004 lre_check_stack_overflow +00000000c0009966 g F .text 0000000000000110 JS_FreeRuntime +00000000c0052772 g F .text 0000000000000132 bf_atan +00000000c00573ba g F .text 0000000000000008 tcdrain +00000000c004db1c g F .text 0000000000000082 bf_cmpu +00000000c0053ec4 g F .text 0000000000000008 nxrmutex_init +00000000c001a9a6 g F .text 000000000000000a JS_ToString +00000000c0057640 g F .text 000000000000000e nxsem_destroy +00000000c0014e42 g F .text 0000000000000036 js_strndup +00000000c004e070 g F .text 0000000000000020 mp_add_ui +00000000c0055c46 g F .text 00000000000000f6 strtoul 00000000c01010a0 w O .sdata.__dso_handle 0000000000000008 __dso_handle -00000000c0053bc8 g F .text 0000000000000040 nxmutex_trylock -00000000c0057234 g F .text 0000000000000042 clock_dayoftheweek -00000000c0009988 g F .text 0000000000000210 JS_NewRuntime2 -00000000c0052a86 g F .text 000000000000000e __atomic_fetch_and_1 -00000000c0045b8a g F .text 0000000000000006 lre_get_capture_count -00000000c0052bde g F .text 000000000000000a __sync_and_and_fetch_4 -00000000c004d122 g F .text 0000000000000024 bf_set_inf -00000000c005700a g F .text 000000000000017e mktemp -00000000c004de0a g F .text 0000000000000058 bf_cmp -00000000c0051786 g F .text 0000000000000014 bf_const_pi +00000000c0053d98 g F .text 0000000000000040 nxmutex_trylock +00000000c0057404 g F .text 0000000000000042 clock_dayoftheweek +00000000c0009a76 g F .text 0000000000000210 JS_NewRuntime2 +00000000c0052c56 g F .text 000000000000000e __atomic_fetch_and_1 +00000000c0045d5a g F .text 0000000000000006 lre_get_capture_count +00000000c0052dae g F .text 000000000000000a __sync_and_and_fetch_4 +00000000c004d2f2 g F .text 0000000000000024 bf_set_inf +00000000c00571da g F .text 000000000000017e mktemp +00000000c004dfda g F .text 0000000000000058 bf_cmp +00000000c0051956 g F .text 0000000000000014 bf_const_pi 00000000c0101000 g .data 0000000000000000 _sdata -00000000c0056fbe g F .text 0000000000000024 nxsig_addset -00000000c00535ae g F .text 0000000000000036 umm_try_initialize -00000000c002fee6 g F .text 0000000000000052 JS_DefinePropertyGetSet -00000000c001bea8 g F .text 00000000000001fe JS_ToCStringLen2 -00000000c00467d0 g F .text 0000000000000016 lre_is_case_ignorable -00000000c0052b52 g F .text 0000000000000012 __sync_sub_and_fetch_1 -00000000c0053f30 g F .text 0000000000000026 clock_ticks2time -00000000c0057562 g F .text 0000000000000010 rmdir -00000000c0006d60 g F .text 0000000000000006 js_malloc_usable_size_rt -00000000c005758a g F .text 0000000000000020 select -00000000c0006e9a g F .text 000000000000000a JS_SetInterruptHandler -00000000c0053aa0 g F .text 0000000000000034 readdir -00000000c0072cb8 g O .rodata 0000000000000048 g_dtoa_scale_up -00000000c0053b70 g F .text 0000000000000058 nxmutex_lock -00000000c005757e g F .text 000000000000000c sched_unlock -00000000c0053e2c g F .text 000000000000003a nxrmutex_breaklock -00000000c0053592 g F .text 000000000000001c umm_initialize -00000000c0055744 g F .text 000000000000000c clearerr_unlocked -00000000c0056efa g F .text 0000000000000014 isspace -00000000c00296d4 g F .text 0000000000000042 JS_DefinePropertyValueUint32 -00000000c00360ee g F .text 0000000000000016 JS_AddIntrinsicJSON -00000000c004f11a g F .text 000000000000000c bf_sub -00000000c005549e g F .text 0000000000000036 fflush -00000000c000a6c8 g F .text 0000000000000014 JS_GetException -00000000c001fa54 g F .text 0000000000000028 JS_ToBigInt64 -00000000c0053b1a g F .text 000000000000001c nxmutex_destroy -00000000c00138ee g F .text 0000000000000018 JS_Eval -00000000c000ae48 g F .text 000000000000004e JS_DetectModule -00000000c0046fb8 g F .text 0000000000000018 lre_is_id_start -00000000c00142ce g F .text 000000000000006c JS_IsArray -00000000c0036024 g F .text 0000000000000014 JS_AddIntrinsicStringNormalize -00000000c0051d46 g F .text 00000000000000ec bf_exp -00000000c0055862 g F .text 000000000000017c realpath -00000000c004c14c g F .text 0000000000000132 js_module_loader +00000000c005718e g F .text 0000000000000024 nxsig_addset +00000000c005377e g F .text 0000000000000036 umm_try_initialize +00000000c00300b6 g F .text 0000000000000052 JS_DefinePropertyGetSet +00000000c001c078 g F .text 00000000000001fe JS_ToCStringLen2 +00000000c00469a0 g F .text 0000000000000016 lre_is_case_ignorable +00000000c0052d22 g F .text 0000000000000012 __sync_sub_and_fetch_1 +00000000c0054100 g F .text 0000000000000026 clock_ticks2time +00000000c0057732 g F .text 0000000000000010 rmdir +00000000c0006e4e g F .text 0000000000000006 js_malloc_usable_size_rt +00000000c005775a g F .text 0000000000000020 select +00000000c0006f88 g F .text 000000000000000a JS_SetInterruptHandler +00000000c0053c70 g F .text 0000000000000034 readdir +00000000c0072f18 g O .rodata 0000000000000048 g_dtoa_scale_up +00000000c0053d40 g F .text 0000000000000058 nxmutex_lock +00000000c005774e g F .text 000000000000000c sched_unlock +00000000c0053ffc g F .text 000000000000003a nxrmutex_breaklock +00000000c0053762 g F .text 000000000000001c umm_initialize +00000000c0055914 g F .text 000000000000000c clearerr_unlocked +00000000c00570ca g F .text 0000000000000014 isspace +00000000c00298a4 g F .text 0000000000000042 JS_DefinePropertyValueUint32 +00000000c00362be g F .text 0000000000000016 JS_AddIntrinsicJSON +00000000c004f2ea g F .text 000000000000000c bf_sub +00000000c005566e g F .text 0000000000000036 fflush +00000000c000a7b6 g F .text 0000000000000014 JS_GetException +00000000c001fc24 g F .text 0000000000000028 JS_ToBigInt64 +00000000c0053cea g F .text 000000000000001c nxmutex_destroy +00000000c00139dc g F .text 0000000000000018 JS_Eval +00000000c000af36 g F .text 000000000000004e JS_DetectModule +00000000c0047188 g F .text 0000000000000018 lre_is_id_start +00000000c00143bc g F .text 000000000000006c JS_IsArray +00000000c00361f4 g F .text 0000000000000014 JS_AddIntrinsicStringNormalize +00000000c0051f16 g F .text 00000000000000ec bf_exp +00000000c0055a32 g F .text 000000000000017c realpath +00000000c004c31c g F .text 0000000000000132 js_module_loader 00000000c01010f0 g O .bss 0000000000000008 debug_expr 00000000c0002cee g F .text 0000000000000084 .hidden __floatditf -00000000c00573d0 g F .text 0000000000000018 lseek -00000000c0056fe2 g F .text 000000000000001c sigaddset -00000000c004138e g F .text 00000000000000aa JS_AddIntrinsicBigInt -00000000c00467fe g F .text 000000000000000a cr_free -00000000c0052b86 g F .text 000000000000000c __sync_sub_and_fetch_8 -00000000c004d790 g F .text 000000000000000e bf_round -00000000c005585a g F .text 0000000000000008 _Exit -00000000c00535e4 g F .text 000000000000009e mm_addregion -00000000c0047d5a g F .text 0000000000000020 dbuf_putstr -00000000c0052cf0 g F .text 0000000000000016 dlclose -00000000c0047c06 g F .text 0000000000000008 dbuf_init -00000000c005580a g F .text 000000000000000a abort -00000000c0056f2e g F .text 0000000000000004 isxdigit_l -00000000c00148ae g F .text 000000000000002a JS_ThrowReferenceError -00000000c0072bf0 g O .rodata 0000000000000080 g_dtoa_round -00000000c0056b08 g F .text 0000000000000164 gmtime_r -00000000c0019a42 g F .text 000000000000004e JS_NewAtomUInt32 -00000000c00557ca g F .text 0000000000000006 ftrylockfile -00000000c0014676 g F .text 00000000000000c2 JS_PreventExtensions -00000000c0047cb0 g F .text 0000000000000048 dbuf_put -00000000c0053d1c g F .text 0000000000000004 nxrmutex_is_locked -00000000c0052bd0 g F .text 000000000000000e __sync_and_and_fetch_2 -00000000c0056f12 g F .text 000000000000001c isxdigit -00000000c0052af4 g F .text 000000000000000e __atomic_fetch_xor_2 -00000000c0046bf0 g F .text 000000000000003c cr_copy -00000000c00559de g F .text 0000000000000098 strtol -00000000c0053726 g F .text 0000000000000024 mm_lock -00000000c0052bf2 g F .text 000000000000000e __sync_xor_and_fetch_1 -00000000c00569c2 g F .text 0000000000000018 strnlen -00000000c0035c80 g F .text 0000000000000058 JS_SetPropertyFunctionList -00000000c0019b32 g F .text 000000000000000a JS_AtomToValue -00000000c0053580 g F .text 0000000000000012 mm_heapmember -00000000c0007b2e g F .text 000000000000000a __JS_FreeValue -00000000c000a7e0 g F .text 000000000000001a JS_IsConstructor +00000000c00575a0 g F .text 0000000000000018 lseek +00000000c00571b2 g F .text 000000000000001c sigaddset +00000000c004155e g F .text 00000000000000aa JS_AddIntrinsicBigInt +00000000c00469ce g F .text 000000000000000a cr_free +00000000c0052d56 g F .text 000000000000000c __sync_sub_and_fetch_8 +00000000c004d960 g F .text 000000000000000e bf_round +00000000c0055a2a g F .text 0000000000000008 _Exit +00000000c00537b4 g F .text 000000000000009e mm_addregion +00000000c0047f2a g F .text 0000000000000020 dbuf_putstr +00000000c0052ec0 g F .text 0000000000000016 dlclose +00000000c0047dd6 g F .text 0000000000000008 dbuf_init +00000000c00559da g F .text 000000000000000a abort +00000000c00570fe g F .text 0000000000000004 isxdigit_l +00000000c001499c g F .text 000000000000002a JS_ThrowReferenceError +00000000c0072e50 g O .rodata 0000000000000080 g_dtoa_round +00000000c0056cd8 g F .text 0000000000000164 gmtime_r +00000000c0019c12 g F .text 000000000000004e JS_NewAtomUInt32 +00000000c005599a g F .text 0000000000000006 ftrylockfile +00000000c0014764 g F .text 00000000000000c2 JS_PreventExtensions +00000000c0047e80 g F .text 0000000000000048 dbuf_put +00000000c0053eec g F .text 0000000000000004 nxrmutex_is_locked +00000000c0052da0 g F .text 000000000000000e __sync_and_and_fetch_2 +00000000c00570e2 g F .text 000000000000001c isxdigit +00000000c0052cc4 g F .text 000000000000000e __atomic_fetch_xor_2 +00000000c0046dc0 g F .text 000000000000003c cr_copy +00000000c0055bae g F .text 0000000000000098 strtol +00000000c00538f6 g F .text 0000000000000024 mm_lock +00000000c0052dc2 g F .text 000000000000000e __sync_xor_and_fetch_1 +00000000c0056b92 g F .text 0000000000000018 strnlen +00000000c0035e50 g F .text 0000000000000058 JS_SetPropertyFunctionList +00000000c0019d02 g F .text 000000000000000a JS_AtomToValue +00000000c0053750 g F .text 0000000000000012 mm_heapmember +00000000c0007c1c g F .text 000000000000000a __JS_FreeValue +00000000c000a8ce g F .text 000000000000001a JS_IsConstructor 00000000c0101126 g .bss 0000000000000000 _ebss -00000000c0029758 g F .text 000000000000004a JS_DefinePropertyValueStr -00000000c001f5ea g F .text 0000000000000032 JS_ResolveModule -00000000c005754e g F .text 0000000000000014 rename -00000000c0057442 g F .text 0000000000000018 nx_vsyslog -00000000c00440e2 g F .text 000000000000002e lre_is_space -00000000c0019b3c g F .text 000000000000000a JS_AtomToString -00000000c00567a0 g F .text 0000000000000014 strrchr -00000000c0056ae0 g F .text 0000000000000028 nanosleep -00000000c005735e g F .text 000000000000000c get_environ_ptr -00000000c00523dc g F .text 00000000000000da bf_sin -00000000c000af26 g F .text 000000000000000e JS_AddIntrinsicRegExpCompiler +00000000c0029928 g F .text 000000000000004a JS_DefinePropertyValueStr +00000000c001f7ba g F .text 0000000000000032 JS_ResolveModule +00000000c005771e g F .text 0000000000000014 rename +00000000c0057612 g F .text 0000000000000018 nx_vsyslog +00000000c00442b2 g F .text 000000000000002e lre_is_space +00000000c0019d0c g F .text 000000000000000a JS_AtomToString +00000000c0056970 g F .text 0000000000000014 strrchr +00000000c0056cb0 g F .text 0000000000000028 nanosleep +00000000c005752e g F .text 000000000000000c get_environ_ptr +00000000c00525ac g F .text 00000000000000da bf_sin +00000000c000b014 g F .text 000000000000000e JS_AddIntrinsicRegExpCompiler 00000000c0101126 g *ABS* 0000000000000000 _etbss -00000000c0056390 g F .text 0000000000000014 strtod -00000000c0047d42 g F .text 0000000000000018 dbuf_putc -00000000c0052a44 g F .text 000000000000000a __atomic_fetch_add_8 -00000000c0057648 g F .text 0000000000000016 write -00000000c0045b90 g F .text 0000000000000006 lre_get_flags -00000000c00472c4 g F .text 0000000000000218 unicode_script -00000000c005760e g F .text 000000000000000e up_fork -00000000c00556d8 g F .text 000000000000001e fprintf -00000000c0019290 g F .text 000000000000015e JS_NewStringLen -00000000c00573bc g F .text 0000000000000014 kill -00000000c0055628 g F .text 0000000000000082 fputs_unlocked -00000000c0052ba0 g F .text 000000000000000e __sync_or_and_fetch_2 -00000000c00529b6 g F .text 0000000000000008 __atomic_exchange_8 -00000000c0052d74 g F .text 0000000000000016 lrint -00000000c00566fa g F .text 0000000000000034 strcat -00000000c0053dea g F .text 0000000000000042 nxrmutex_unlock -00000000c0052c22 g F .text 0000000000000016 __sync_nand_and_fetch_1 -00000000c0041380 g F .text 000000000000000e JS_AddIntrinsicEval -00000000c005434a g F .text 000000000000000a lib_vsprintf_internal -00000000c0045834 g F .text 0000000000000266 lre_compile -00000000c0046d08 g F .text 0000000000000042 cr_union1 -00000000c0041cba g F .text 0000000000000026 JS_NewArrayBufferCopy -00000000c0056f0e g F .text 0000000000000004 isspace_l -00000000c0007a9c g F .text 0000000000000022 JS_IsRegisteredClass -00000000c001e25e g F .text 0000000000000028 JS_ToInt64Sat -00000000c0056dea g F .text 000000000000008e chdir -00000000c005296c g F .text 0000000000000002 spin_unlock_irqrestore -00000000c00552de g F .text 000000000000003c fseeko -00000000c0030360 g F .text 000000000000007e JS_SetPropertyInt64 -00000000c0042c1e g F .text 0000000000000054 JS_GetArrayBuffer -00000000c0057a96 g F .text 000000000000003e modf -00000000c0057276 g F .text 000000000000000a getoptvars -00000000c00552da g F .text 0000000000000004 fseek -00000000c0053aea g F .text 0000000000000030 nxmutex_init -00000000c0050d40 g F .text 0000000000000574 bf_ftoa -00000000c0041c96 g F .text 0000000000000024 JS_NewArrayBuffer -00000000c0052982 g F .text 0000000000000006 __atomic_load_1 -00000000c005793a g F .text 000000000000002a fmod -00000000c0057874 g F .text 000000000000000e cos -00000000c0057e0a g F .text 0000000000000026 tanh -00000000c00567e8 g F .text 000000000000001a memchr -00000000c004d89c g F .text 00000000000000b0 bf_print_str -00000000c00500f8 g F .text 00000000000000a0 bf_set_float64 -00000000c0053c66 g F .text 0000000000000050 nxmutex_unlock -00000000c004be68 g F .text 00000000000000d0 js_load_file -00000000c0036300 g F .text 0000000000000054 JS_Invoke -00000000c004f752 g F .text 000000000000000a bf_rint -00000000c0008056 g F .text 0000000000000150 JS_FreeContext -00000000c000a7b2 g F .text 000000000000002e JS_IsCFunction -00000000c0047006 g F .text 00000000000002be unicode_normalize -00000000c004e8da g F .text 000000000000016c bf_mul -00000000c0006e8c g F .text 0000000000000006 JS_SetRuntimeOpaque -00000000c0054022 g F .text 0000000000000038 sem_init -00000000c0042d0a g F .text 00000000000002ac JS_AddIntrinsicTypedArrays -00000000c004edf6 g F .text 000000000000000c bf_add +00000000c0056560 g F .text 0000000000000014 strtod +00000000c0047f12 g F .text 0000000000000018 dbuf_putc +00000000c0052c14 g F .text 000000000000000a __atomic_fetch_add_8 +00000000c0057818 g F .text 0000000000000016 write +00000000c0045d60 g F .text 0000000000000006 lre_get_flags +00000000c0047494 g F .text 0000000000000218 unicode_script +00000000c00577de g F .text 000000000000000e up_fork +00000000c00558a8 g F .text 000000000000001e fprintf +00000000c0019460 g F .text 000000000000015e JS_NewStringLen +00000000c005758c g F .text 0000000000000014 kill +00000000c00557f8 g F .text 0000000000000082 fputs_unlocked +00000000c0052d70 g F .text 000000000000000e __sync_or_and_fetch_2 +00000000c0052b86 g F .text 0000000000000008 __atomic_exchange_8 +00000000c0052f44 g F .text 0000000000000016 lrint +00000000c00568ca g F .text 0000000000000034 strcat +00000000c0053fba g F .text 0000000000000042 nxrmutex_unlock +00000000c0052df2 g F .text 0000000000000016 __sync_nand_and_fetch_1 +00000000c0041550 g F .text 000000000000000e JS_AddIntrinsicEval +00000000c005451a g F .text 000000000000000a lib_vsprintf_internal +00000000c0045a04 g F .text 0000000000000266 lre_compile +00000000c0046ed8 g F .text 0000000000000042 cr_union1 +00000000c0041e8a g F .text 0000000000000026 JS_NewArrayBufferCopy +00000000c00570de g F .text 0000000000000004 isspace_l +00000000c0007b8a g F .text 0000000000000022 JS_IsRegisteredClass +00000000c001e42e g F .text 0000000000000028 JS_ToInt64Sat +00000000c0056fba g F .text 000000000000008e chdir +00000000c0052b3c g F .text 0000000000000002 spin_unlock_irqrestore +00000000c00554ae g F .text 000000000000003c fseeko +00000000c0030530 g F .text 000000000000007e JS_SetPropertyInt64 +00000000c0042dee g F .text 0000000000000054 JS_GetArrayBuffer +00000000c0057c66 g F .text 000000000000003e modf +00000000c0057446 g F .text 000000000000000a getoptvars +00000000c00554aa g F .text 0000000000000004 fseek +00000000c0053cba g F .text 0000000000000030 nxmutex_init +00000000c0050f10 g F .text 0000000000000574 bf_ftoa +00000000c0041e66 g F .text 0000000000000024 JS_NewArrayBuffer +00000000c0052b52 g F .text 0000000000000006 __atomic_load_1 +00000000c0057b0a g F .text 000000000000002a fmod +00000000c0057a44 g F .text 000000000000000e cos +00000000c0057fda g F .text 0000000000000026 tanh +00000000c00569b8 g F .text 000000000000001a memchr +00000000c004da6c g F .text 00000000000000b0 bf_print_str +00000000c00502c8 g F .text 00000000000000a0 bf_set_float64 +00000000c0053e36 g F .text 0000000000000050 nxmutex_unlock +00000000c004c038 g F .text 00000000000000d0 js_load_file +00000000c00364d0 g F .text 0000000000000054 JS_Invoke +00000000c004f922 g F .text 000000000000000a bf_rint +00000000c0008144 g F .text 0000000000000150 JS_FreeContext +00000000c000a8a0 g F .text 000000000000002e JS_IsCFunction +00000000c00471d6 g F .text 00000000000002be unicode_normalize +00000000c004eaaa g F .text 000000000000016c bf_mul +00000000c0006f7a g F .text 0000000000000006 JS_SetRuntimeOpaque +00000000c00541f2 g F .text 0000000000000038 sem_init +00000000c0042eda g F .text 00000000000002ac JS_AddIntrinsicTypedArrays +00000000c004efc6 g F .text 000000000000000c bf_add 00000000c000339e g F .text 000000000000001c _start -00000000c00573e8 g F .text 0000000000000014 lstat -00000000c004ec62 g F .text 0000000000000194 bf_sqrt -00000000c0055738 g F .text 000000000000000c ferror -00000000c00349dc g F .text 00000000000001a8 JS_WriteObject2 -00000000c0035d48 g F .text 00000000000001dc JS_NewContextRaw -00000000c000a6dc g F .text 000000000000004c JS_IsFunction -00000000c0050042 g F .text 00000000000000b6 bf_get_float64 -00000000c0057b34 g F .text 00000000000000a2 sin -00000000c0052ae6 g F .text 000000000000000e __atomic_fetch_xor_1 -00000000c004d07c g F .text 000000000000005e bf_set_ui -00000000c0006f40 g F .text 0000000000000022 hash_string8 -00000000c0055328 g F .text 0000000000000030 ftello +00000000c00575b8 g F .text 0000000000000014 lstat +00000000c004ee32 g F .text 0000000000000194 bf_sqrt +00000000c0055908 g F .text 000000000000000c ferror +00000000c0034bac g F .text 00000000000001a8 JS_WriteObject2 +00000000c0035f18 g F .text 00000000000001dc JS_NewContextRaw +00000000c000a7ca g F .text 000000000000004c JS_IsFunction +00000000c0050212 g F .text 00000000000000b6 bf_get_float64 +00000000c0057d04 g F .text 00000000000000a2 sin +00000000c0052cb6 g F .text 000000000000000e __atomic_fetch_xor_1 +00000000c004d24c g F .text 000000000000005e bf_set_ui +00000000c000702e g F .text 0000000000000022 hash_string8 +00000000c00554f8 g F .text 0000000000000030 ftello 00000000c000323a g F .text 00000000000000a6 .hidden __lttf2 -00000000c0056dd0 g F .text 000000000000001a setgid -00000000c00577ea g F .text 000000000000008a atan2 -00000000c004eb80 g F .text 0000000000000048 bf_get_exp_min -00000000c00540fa g F .text 0000000000000084 signal -00000000c0006ea4 g F .text 0000000000000006 JS_SetCanBlock +00000000c0056fa0 g F .text 000000000000001a setgid +00000000c00579ba g F .text 000000000000008a atan2 +00000000c004ed50 g F .text 0000000000000048 bf_get_exp_min +00000000c00542ca g F .text 0000000000000084 signal +00000000c0006f92 g F .text 0000000000000006 JS_SetCanBlock 00000000c0001cf0 g F .text 0000000000000094 .hidden __netf2 -00000000c0057538 g F .text 0000000000000016 read -00000000c00564d8 g F .text 000000000000002e lib_memoutstream -00000000c00091ce g F .text 0000000000000012 JS_MarkValue -00000000c0053c08 g F .text 000000000000005e nxmutex_timedlock -00000000c00477a8 g F .text 00000000000001f2 unicode_prop -00000000c000a840 g F .text 0000000000000026 JS_IsUncatchableError -00000000c004de62 g F .text 000000000000003e mp_add -00000000c0056652 g F .text 000000000000001c flsl -00000000c0056978 g F .text 0000000000000038 strlcpy -00000000c0006ee2 g F .text 0000000000000034 JS_GetClassProto -00000000c0053682 g F .text 00000000000000a2 mm_initialize -00000000c0052d06 g F .text 0000000000000016 dlopen -00000000c0019da0 g F .text 0000000000000044 JS_NewAtomString -00000000c00529ae g F .text 0000000000000008 __atomic_exchange_4 -00000000c0057ad4 g F .text 0000000000000060 pow -00000000c0006f1e g F .text 0000000000000004 JS_GetRuntime -00000000c00575ee g F .text 0000000000000010 unlink -00000000c00575aa g F .text 0000000000000018 setenv -00000000c0057bd6 g F .text 000000000000005a sinh -00000000c0057eae g F .text 000000000000005a atanh -00000000c005747e g F .text 000000000000000e nxsem_post -00000000c004f126 g F .text 000000000000000c bf_div -00000000c0057a62 g F .text 000000000000001a log10 -00000000c00557d0 g F .text 0000000000000006 funlockfile -00000000c0014c1c g F .text 0000000000000030 JS_ThrowOutOfMemory -00000000c0045b96 g F .text 000000000000002e lre_get_groupnames -00000000c0021612 g F .text 000000000000000a JS_ToPropertyKey -00000000c0057fd4 g F .text 000000000000000c fmin -00000000c0042fb6 g F .text 00000000000000d6 JS_NewContext -00000000c0052b0c g F .text 000000000000000a __atomic_fetch_xor_8 -00000000c0052e58 g F .text 000000000000004e realloc -00000000c0056462 g F .text 0000000000000004 on_exit -00000000c005296e g F .text 0000000000000006 __atomic_store_1 -00000000c004dec0 g F .text 0000000000000040 mp_sub -00000000c0053cb6 g F .text 0000000000000034 nxmutex_breaklock -00000000c0056466 g F .text 0000000000000004 __cxa_atexit -00000000c005749a g F .text 000000000000000e nxsem_wait +00000000c0057708 g F .text 0000000000000016 read +00000000c00566a8 g F .text 000000000000002e lib_memoutstream +00000000c00092bc g F .text 0000000000000012 JS_MarkValue +00000000c0053dd8 g F .text 000000000000005e nxmutex_timedlock +00000000c0047978 g F .text 00000000000001f2 unicode_prop +00000000c000a92e g F .text 0000000000000026 JS_IsUncatchableError +00000000c004e032 g F .text 000000000000003e mp_add +00000000c0056822 g F .text 000000000000001c flsl +00000000c0056b48 g F .text 0000000000000038 strlcpy +00000000c0006fd0 g F .text 0000000000000034 JS_GetClassProto +00000000c0053852 g F .text 00000000000000a2 mm_initialize +00000000c0052ed6 g F .text 0000000000000016 dlopen +00000000c0019f70 g F .text 0000000000000044 JS_NewAtomString +00000000c0052b7e g F .text 0000000000000008 __atomic_exchange_4 +00000000c0057ca4 g F .text 0000000000000060 pow +00000000c000700c g F .text 0000000000000004 JS_GetRuntime +00000000c00577be g F .text 0000000000000010 unlink +00000000c005777a g F .text 0000000000000018 setenv +00000000c0057da6 g F .text 000000000000005a sinh +00000000c005807e g F .text 000000000000005a atanh +00000000c005764e g F .text 000000000000000e nxsem_post +00000000c004f2f6 g F .text 000000000000000c bf_div +00000000c0057c32 g F .text 000000000000001a log10 +00000000c00559a0 g F .text 0000000000000006 funlockfile +00000000c0014d0a g F .text 0000000000000030 JS_ThrowOutOfMemory +00000000c0045d66 g F .text 000000000000002e lre_get_groupnames +00000000c00217e2 g F .text 000000000000000a JS_ToPropertyKey +00000000c00581a4 g F .text 000000000000000c fmin +00000000c0043186 g F .text 00000000000000d6 JS_NewContext +00000000c0052cdc g F .text 000000000000000a __atomic_fetch_xor_8 +00000000c0053028 g F .text 000000000000004e realloc +00000000c0056632 g F .text 0000000000000004 on_exit +00000000c0052b3e g F .text 0000000000000006 __atomic_store_1 +00000000c004e090 g F .text 0000000000000040 mp_sub +00000000c0053e86 g F .text 0000000000000034 nxmutex_breaklock +00000000c0056636 g F .text 0000000000000004 __cxa_atexit +00000000c005766a g F .text 000000000000000e nxsem_wait 00000000c0101126 g *ABS* 0000000000000000 _stbss 00000000c0002d72 g F .text 00000000000000c2 .hidden __extenddftf2 -00000000c000a67c g F .text 0000000000000028 JS_Throw -00000000c0055214 g F .text 00000000000000c6 lib_fread_unlocked -00000000c0057f08 g F .text 0000000000000044 cbrt -00000000c004131e g F .text 0000000000000062 JS_AddIntrinsicDate -00000000c0054d80 g F .text 0000000000000196 __dtoa_engine -00000000c005748c g F .text 000000000000000e nxsem_trywait -00000000c005645e g F .text 0000000000000004 at_quick_exit -00000000c0056802 g F .text 000000000000002c memcmp -00000000c004fd8a g F .text 000000000000026a bf_divrem -00000000c00557e8 g F .text 0000000000000022 lib_get_stream -00000000c0052c70 g F .text 0000000000000014 __sync_bool_compare_and_swap_1 -00000000c0054fea g F .text 00000000000000b6 fdopen -00000000c00384a6 g F .text 0000000000000012 JS_CallConstructor -00000000c0056ef8 g F .text 0000000000000002 fork -00000000c0052b3c g F .text 000000000000000c __sync_add_and_fetch_4 -00000000c00144e2 g F .text 000000000000013c JS_GetPrototype -00000000c000a866 g F .text 0000000000000030 JS_SetUncatchableError -00000000c0052ac4 g F .text 000000000000000e __atomic_fetch_or_2 -00000000c005317e g F .text 000000000000018e mm_memalign -00000000c0016c86 g F .text 000000000000000a JS_NewError -00000000c00575c2 g F .text 0000000000000018 sigaction -00000000c00304a8 g F .text 000000000000004e JS_SetPropertyStr -00000000c0019440 g F .text 0000000000000020 JS_NewAtom -00000000c00074ca g F .text 0000000000000024 JS_DupAtom -00000000c0052b64 g F .text 0000000000000014 __sync_sub_and_fetch_2 -00000000c0052a5e g F .text 0000000000000010 __atomic_fetch_sub_2 -00000000c00551de g F .text 0000000000000036 fread -00000000c00529f6 g F .text 0000000000000014 __atomic_compare_exchange_4 -00000000c0054092 g F .text 0000000000000026 sem_setprotocol -00000000c0055436 g F .text 0000000000000032 lib_fwrite +00000000c000a76a g F .text 0000000000000028 JS_Throw +00000000c00553e4 g F .text 00000000000000c6 lib_fread_unlocked +00000000c00580d8 g F .text 0000000000000044 cbrt +00000000c00414ee g F .text 0000000000000062 JS_AddIntrinsicDate +00000000c0054f50 g F .text 0000000000000196 __dtoa_engine +00000000c005765c g F .text 000000000000000e nxsem_trywait +00000000c005662e g F .text 0000000000000004 at_quick_exit +00000000c00569d2 g F .text 000000000000002c memcmp +00000000c004ff5a g F .text 000000000000026a bf_divrem +00000000c00559b8 g F .text 0000000000000022 lib_get_stream +00000000c0052e40 g F .text 0000000000000014 __sync_bool_compare_and_swap_1 +00000000c00551ba g F .text 00000000000000b6 fdopen +00000000c0038676 g F .text 0000000000000012 JS_CallConstructor +00000000c00570c8 g F .text 0000000000000002 fork +00000000c0052d0c g F .text 000000000000000c __sync_add_and_fetch_4 +00000000c00145d0 g F .text 000000000000013c JS_GetPrototype +00000000c000a954 g F .text 0000000000000030 JS_SetUncatchableError +00000000c0052c94 g F .text 000000000000000e __atomic_fetch_or_2 +00000000c005334e g F .text 000000000000018e mm_memalign +00000000c0016e56 g F .text 000000000000000a JS_NewError +00000000c0057792 g F .text 0000000000000018 sigaction +00000000c0030678 g F .text 000000000000004e JS_SetPropertyStr +00000000c0019610 g F .text 0000000000000020 JS_NewAtom +00000000c00075b8 g F .text 0000000000000024 JS_DupAtom +00000000c0052d34 g F .text 0000000000000014 __sync_sub_and_fetch_2 +00000000c0052c2e g F .text 0000000000000010 __atomic_fetch_sub_2 +00000000c00553ae g F .text 0000000000000036 fread +00000000c0052bc6 g F .text 0000000000000014 __atomic_compare_exchange_4 +00000000c0054262 g F .text 0000000000000026 sem_setprotocol +00000000c0055606 g F .text 0000000000000032 lib_fwrite 00000000c0000030 g F .text 0000000000000030 .hidden __ctzdi2 -00000000c0047e2c g F .text 00000000000000ee unicode_to_utf8 -00000000c0052ea6 g F .text 000000000000007a sbrk -00000000c0052d1c g F .text 0000000000000016 dlsym -00000000c0006e96 g F .text 0000000000000004 JS_SetGCThreshold -00000000c001dacc g F .text 0000000000000060 JS_ToInt32Clamp -00000000c005672e g F .text 000000000000002e strdup -00000000c00128a0 g F .text 0000000000000042 JS_SetPropertyUint32 -00000000c0053122 g F .text 000000000000005c mm_free -00000000c0019604 g F .text 0000000000000048 JS_GetPropertyStr -00000000c00557d6 g F .text 0000000000000012 lib_get_streams -00000000c0052a3a g F .text 000000000000000a __atomic_fetch_add_4 -00000000c000a8a2 g F .text 0000000000000010 JS_SetOpaque -00000000c001e88a g F .text 00000000000000a6 JS_ToInt64 -00000000c000af16 g F .text 0000000000000006 JS_GetModuleName -00000000c0052b28 g F .text 0000000000000014 __sync_add_and_fetch_2 -00000000c0052de2 g F .text 0000000000000016 symlink -00000000c0056aa8 g F .text 0000000000000038 gettimeofday -00000000c00571f2 g F .text 0000000000000020 clock_daysbeforemonth -00000000c00550a0 g F .text 0000000000000048 fopen -00000000c0047758 g F .text 0000000000000050 unicode_general_category -00000000c0047f1a g F .text 0000000000000096 unicode_from_utf8 -00000000c0052968 g F .text 0000000000000004 spin_lock_irqsave -00000000c0006ed6 g F .text 0000000000000006 JS_GetContextOpaque -00000000c0056870 g F .text 00000000000000cc memset +00000000c0047ffc g F .text 00000000000000ee unicode_to_utf8 +00000000c0053076 g F .text 000000000000007a sbrk +00000000c0052eec g F .text 0000000000000016 dlsym +00000000c0006f84 g F .text 0000000000000004 JS_SetGCThreshold +00000000c001dc9c g F .text 0000000000000060 JS_ToInt32Clamp +00000000c00568fe g F .text 000000000000002e strdup +00000000c001298e g F .text 0000000000000042 JS_SetPropertyUint32 +00000000c00532f2 g F .text 000000000000005c mm_free +00000000c00197d4 g F .text 0000000000000048 JS_GetPropertyStr +00000000c00559a6 g F .text 0000000000000012 lib_get_streams +00000000c0052c0a g F .text 000000000000000a __atomic_fetch_add_4 +00000000c000a990 g F .text 0000000000000010 JS_SetOpaque +00000000c001ea5a g F .text 00000000000000a6 JS_ToInt64 +00000000c000b004 g F .text 0000000000000006 JS_GetModuleName +00000000c0052cf8 g F .text 0000000000000014 __sync_add_and_fetch_2 +00000000c0052fb2 g F .text 0000000000000016 symlink +00000000c0056c78 g F .text 0000000000000038 gettimeofday +00000000c00573c2 g F .text 0000000000000020 clock_daysbeforemonth +00000000c0055270 g F .text 0000000000000048 fopen +00000000c0047928 g F .text 0000000000000050 unicode_general_category +00000000c00480ea g F .text 0000000000000096 unicode_from_utf8 +00000000c0052b38 g F .text 0000000000000004 spin_lock_irqsave +00000000c0006fc4 g F .text 0000000000000006 JS_GetContextOpaque +00000000c0056a40 g F .text 00000000000000cc memset 00000000c00037d4 g F .text 0000000000000808 main 00000000c00032e0 g F .text 00000000000000a4 .hidden __extendsftf2 -00000000c00512b4 g F .text 0000000000000012 bf_const_log2 -00000000c0007fcc g F .text 000000000000008a JS_ExecutePendingJob -00000000c0053f56 g F .text 000000000000002e clock_timespec_add -00000000c0012fb6 g F .text 0000000000000040 JS_DefinePropertyValue -00000000c005531a g F .text 000000000000000e ftell -00000000c0052c50 g F .text 0000000000000012 __sync_nand_and_fetch_4 -00000000c0057188 g F .text 000000000000005a strlcat -00000000c004d00c g F .text 0000000000000016 bf_init -00000000c004d022 g F .text 000000000000003a bf_resize -00000000c004cfde g F .text 000000000000002e bf_context_init -00000000c004df3e g F .text 000000000000020e mp_recip -00000000c000ae28 g F .text 0000000000000020 JS_ToBool -00000000c0055750 g F .text 0000000000000020 clearerr -00000000c00383f0 g F .text 000000000000000a JS_CallConstructor2 -00000000c00550e8 g F .text 00000000000000ce fclose -00000000c0047bd0 g F .text 0000000000000036 dbuf_init2 -00000000c0056a64 g F .text 000000000000000a tcgetattr -00000000c0053a26 g F .text 0000000000000048 opendir -00000000c0047b90 g F .text 0000000000000040 has_suffix -00000000c0006b62 g F .text 0000000000000008 js_malloc_rt -00000000c0053b36 g F .text 000000000000001c nxmutex_is_hold -00000000c004ddba g F .text 0000000000000050 bf_cmp_full -00000000c005662c g F .text 0000000000000026 lib_stdoutstream -00000000c0052bae g F .text 000000000000000a __sync_or_and_fetch_4 -00000000c0052da0 g F .text 0000000000000016 pipe2 -00000000c002161c g F .text 0000000000000078 JS_ValueToAtom -00000000c0056a1a g F .text 000000000000001e syslog -00000000c00554d4 g F .text 0000000000000054 lib_flushall_unlocked -00000000c00578ac g F .text 000000000000007e exp -00000000c0052bc2 g F .text 000000000000000e __sync_and_and_fetch_1 -00000000c0053da4 g F .text 0000000000000046 nxrmutex_timedlock -00000000c00555aa g F .text 0000000000000002 putc -00000000c0052b02 g F .text 000000000000000a __atomic_fetch_xor_4 +00000000c0051484 g F .text 0000000000000012 bf_const_log2 +00000000c00080ba g F .text 000000000000008a JS_ExecutePendingJob +00000000c0054126 g F .text 000000000000002e clock_timespec_add +00000000c00130a4 g F .text 0000000000000040 JS_DefinePropertyValue +00000000c00554ea g F .text 000000000000000e ftell +00000000c0052e20 g F .text 0000000000000012 __sync_nand_and_fetch_4 +00000000c0057358 g F .text 000000000000005a strlcat +00000000c004d1dc g F .text 0000000000000016 bf_init +00000000c004d1f2 g F .text 000000000000003a bf_resize +00000000c004d1ae g F .text 000000000000002e bf_context_init +00000000c004e10e g F .text 000000000000020e mp_recip +00000000c000af16 g F .text 0000000000000020 JS_ToBool +00000000c0055920 g F .text 0000000000000020 clearerr +00000000c00385c0 g F .text 000000000000000a JS_CallConstructor2 +00000000c00552b8 g F .text 00000000000000ce fclose +00000000c0047da0 g F .text 0000000000000036 dbuf_init2 +00000000c0056c34 g F .text 000000000000000a tcgetattr +00000000c0053bf6 g F .text 0000000000000048 opendir +00000000c0047d60 g F .text 0000000000000040 has_suffix +00000000c0006c50 g F .text 0000000000000008 js_malloc_rt +00000000c0053d06 g F .text 000000000000001c nxmutex_is_hold +00000000c004df8a g F .text 0000000000000050 bf_cmp_full +00000000c00567fc g F .text 0000000000000026 lib_stdoutstream +00000000c0052d7e g F .text 000000000000000a __sync_or_and_fetch_4 +00000000c0052f70 g F .text 0000000000000016 pipe2 +00000000c00217ec g F .text 0000000000000078 JS_ValueToAtom +00000000c0056bea g F .text 000000000000001e syslog +00000000c00556a4 g F .text 0000000000000054 lib_flushall_unlocked +00000000c0057a7c g F .text 000000000000007e exp +00000000c0052d92 g F .text 000000000000000e __sync_and_and_fetch_1 +00000000c0053f74 g F .text 0000000000000046 nxrmutex_timedlock +00000000c005577a g F .text 0000000000000002 putc +00000000c0052cd2 g F .text 000000000000000a __atomic_fetch_xor_4 00000000c00037be g F .text 0000000000000016 help -00000000c000af58 g F .text 000000000000002e JS_PromiseResult -00000000c001495a g F .text 000000000000002a JS_ThrowRangeError -00000000c0029d7e g F .text 00000000000000b0 JS_ParseJSON2 -00000000c0013578 g F .text 0000000000000034 JS_GetOpaque2 -00000000c0046fd0 g F .text 0000000000000036 lre_is_id_continue -00000000c0006b04 g F .text 000000000000005e print_hex -00000000c005298e g F .text 0000000000000004 __atomic_load_4 -00000000c0058a98 g O .rodata 0000000000003f98 qjsc_repl -00000000c00551b6 g F .text 0000000000000028 fread_unlocked -00000000c000ae0a g F .text 000000000000001e JS_SetIsHTMLDDA -00000000c005694e g F .text 0000000000000018 strcmp -00000000c0057528 g F .text 0000000000000010 pthread_mutex_unlock -00000000c00674e8 g O .rodata 0000000000000010 lre_id_start_table_ascii -00000000c0057de0 g F .text 000000000000002a tan -00000000c00309a6 g F .text 000000000000001e JS_GetOwnPropertyNames -00000000c000a23c g F .text 000000000000042e JS_DumpMemoryUsage -00000000c00572f2 g F .text 0000000000000010 dup -00000000c0035f24 g F .text 0000000000000100 JS_SetModuleExportList -00000000c004d592 g F .text 00000000000000ac bf_normalize_and_round -00000000c004df00 g F .text 0000000000000024 mp_sub_ui +00000000c000b046 g F .text 000000000000002e JS_PromiseResult +00000000c0014a48 g F .text 000000000000002a JS_ThrowRangeError +00000000c0029f4e g F .text 00000000000000b0 JS_ParseJSON2 +00000000c0013666 g F .text 0000000000000034 JS_GetOpaque2 +00000000c00471a0 g F .text 0000000000000036 lre_is_id_continue +00000000c0006bf2 g F .text 000000000000005e print_hex +00000000c0052b5e g F .text 0000000000000004 __atomic_load_4 +00000000c0058c68 g O .rodata 0000000000003f98 qjsc_repl +00000000c0055386 g F .text 0000000000000028 fread_unlocked +00000000c000aef8 g F .text 000000000000001e JS_SetIsHTMLDDA +00000000c0056b1e g F .text 0000000000000018 strcmp +00000000c00576f8 g F .text 0000000000000010 pthread_mutex_unlock +00000000c0067748 g O .rodata 0000000000000010 lre_id_start_table_ascii +00000000c0057fb0 g F .text 000000000000002a tan +00000000c0030b76 g F .text 000000000000001e JS_GetOwnPropertyNames +00000000c000a32a g F .text 000000000000042e JS_DumpMemoryUsage +00000000c00574c2 g F .text 0000000000000010 dup +00000000c00360f4 g F .text 0000000000000100 JS_SetModuleExportList +00000000c004d762 g F .text 00000000000000ac bf_normalize_and_round +00000000c004e0d0 g F .text 0000000000000024 mp_sub_ui 00000000c0001e2a g F .text 0000000000000606 .hidden __multf3 -00000000c0051d42 g F .text 0000000000000004 bf_context_end -00000000c0056e78 g F .text 0000000000000080 getcwd -00000000c0054354 g F .text 0000000000000004 lib_vsprintf -00000000c0045a9a g F .text 00000000000000f0 lre_exec -00000000c0006f16 g F .text 0000000000000008 JS_DupContext -00000000c001c68e g F .text 0000000000000028 JS_ToFloat64 -00000000c004f194 g F .text 0000000000000052 bf_mul_ui -00000000c0052aa2 g F .text 000000000000000a __atomic_fetch_and_4 -00000000c0052ca8 g F .text 0000000000000010 __sync_bool_compare_and_swap_8 -00000000c0052a7a g F .text 000000000000000c __atomic_fetch_sub_8 -00000000c0052c18 g F .text 000000000000000a __sync_xor_and_fetch_8 -00000000c00577c2 g F .text 0000000000000028 atan -00000000c005537a g F .text 0000000000000028 fgetc -00000000c0052e0a g F .text 000000000000004e memalign -00000000c0053d20 g F .text 0000000000000042 nxrmutex_lock -00000000c00541cc g F .text 0000000000000038 sprintf -00000000c0058300 g O .rodata 0000000000000100 .hidden __clz_tab -00000000c0050030 g F .text 0000000000000006 bf_logic_or -00000000c005637c g F .text 0000000000000014 strtof -00000000c005645a g F .text 0000000000000004 atexit -00000000c0047d7a g F .text 000000000000008c dbuf_printf -00000000c0052f42 g F .text 00000000000000c0 mm_extend -00000000c005772a g F .text 0000000000000098 asin -00000000c0052992 g F .text 0000000000000004 __atomic_load_8 -00000000c00557c4 g F .text 0000000000000006 flockfile -00000000c0052a0a g F .text 0000000000000014 __atomic_compare_exchange_8 -00000000c005003c g F .text 0000000000000006 bf_logic_and -00000000c0046d4a g F .text 000000000000005a cr_invert -00000000c004eb46 g F .text 000000000000003a bf_mul_2exp -00000000c005643a g F .text 0000000000000020 mkstemp -00000000c0056a38 g F .text 0000000000000014 setlogmask -00000000c0050318 g F .text 000000000000003e bf_remquo +00000000c0051f12 g F .text 0000000000000004 bf_context_end +00000000c0057048 g F .text 0000000000000080 getcwd +00000000c0054524 g F .text 0000000000000004 lib_vsprintf +00000000c0045c6a g F .text 00000000000000f0 lre_exec +00000000c0007004 g F .text 0000000000000008 JS_DupContext +00000000c001c85e g F .text 0000000000000028 JS_ToFloat64 +00000000c004f364 g F .text 0000000000000052 bf_mul_ui +00000000c0052c72 g F .text 000000000000000a __atomic_fetch_and_4 +00000000c0052e78 g F .text 0000000000000010 __sync_bool_compare_and_swap_8 +00000000c0052c4a g F .text 000000000000000c __atomic_fetch_sub_8 +00000000c0052de8 g F .text 000000000000000a __sync_xor_and_fetch_8 +00000000c0057992 g F .text 0000000000000028 atan +00000000c005554a g F .text 0000000000000028 fgetc +00000000c0052fda g F .text 000000000000004e memalign +00000000c0053ef0 g F .text 0000000000000042 nxrmutex_lock +00000000c005439c g F .text 0000000000000038 sprintf +00000000c00584d0 g O .rodata 0000000000000100 .hidden __clz_tab +00000000c0050200 g F .text 0000000000000006 bf_logic_or +00000000c005654c g F .text 0000000000000014 strtof +00000000c005662a g F .text 0000000000000004 atexit +00000000c0047f4a g F .text 000000000000008c dbuf_printf +00000000c0053112 g F .text 00000000000000c0 mm_extend +00000000c00578fa g F .text 0000000000000098 asin +00000000c0052b62 g F .text 0000000000000004 __atomic_load_8 +00000000c0055994 g F .text 0000000000000006 flockfile +00000000c0052bda g F .text 0000000000000014 __atomic_compare_exchange_8 +00000000c005020c g F .text 0000000000000006 bf_logic_and +00000000c0046f1a g F .text 000000000000005a cr_invert +00000000c004ed16 g F .text 000000000000003a bf_mul_2exp +00000000c005660a g F .text 0000000000000020 mkstemp +00000000c0056c08 g F .text 0000000000000014 setlogmask +00000000c00504e8 g F .text 000000000000003e bf_remquo 00000000c0001d84 g F .text 00000000000000a6 .hidden __gttf2 -00000000c0011ecc g F .text 0000000000000038 JS_GetPropertyUint32 -00000000c0042bb4 g F .text 000000000000006a JS_DetachArrayBuffer -00000000c00085fa g F .text 00000000000000be __JS_FreeValueRT -00000000c00542c4 g F .text 000000000000001c putchar_unlocked -00000000c001a684 g F .text 0000000000000152 JS_ToStringInternal -00000000c0052a2c g F .text 000000000000000e __atomic_fetch_add_2 -00000000c0050ab4 g F .text 0000000000000004 bf_atof2 -00000000c0047b3e g F .text 0000000000000030 pstrcat +00000000c0011fba g F .text 0000000000000038 JS_GetPropertyUint32 +00000000c0042d84 g F .text 000000000000006a JS_DetachArrayBuffer +00000000c00086e8 g F .text 00000000000000be __JS_FreeValueRT +00000000c0054494 g F .text 000000000000001c putchar_unlocked +00000000c001a854 g F .text 0000000000000152 JS_ToStringInternal +00000000c0052bfc g F .text 000000000000000e __atomic_fetch_add_2 +00000000c0050c84 g F .text 0000000000000004 bf_atof2 +00000000c0047d0e g F .text 0000000000000030 pstrcat 00000000c0002430 g F .text 000000000000082c .hidden __subtf3 -00000000c0006f22 g F .text 000000000000000e JS_SetMaxStackSize -00000000c0052be8 g F .text 000000000000000a __sync_and_and_fetch_8 -00000000c0052cc8 g F .text 0000000000000010 __sync_val_compare_and_swap_2 -00000000c00079d2 g F .text 000000000000000e JS_FreeAtomRT -00000000c0034b84 g F .text 000000000000000c JS_WriteObject -00000000c00555fa g F .text 000000000000002e fputc -00000000c001964c g F .text 000000000000002a JS_NewCModule -00000000c0057e86 g F .text 0000000000000028 acosh +00000000c0007010 g F .text 000000000000000e JS_SetMaxStackSize +00000000c0052db8 g F .text 000000000000000a __sync_and_and_fetch_8 +00000000c0052e98 g F .text 0000000000000010 __sync_val_compare_and_swap_2 +00000000c0007ac0 g F .text 000000000000000e JS_FreeAtomRT +00000000c0034d54 g F .text 000000000000000c JS_WriteObject +00000000c00557ca g F .text 000000000000002e fputc +00000000c001981c g F .text 000000000000002a JS_NewCModule +00000000c0058056 g F .text 0000000000000028 acosh 00000000c01010a9 g .sdata.g_syslog_mask 0000000000000000 _sctors -00000000c005761c g F .text 0000000000000014 utimens -00000000c0017474 g F .text 0000000000000052 js_realloc2 -00000000c002947c g F .text 000000000000006a JS_DefinePropertyValueValue -00000000c00193ee g F .text 0000000000000052 JS_NewAtomLen -00000000c001c396 g F .text 00000000000000a8 js_string_codePointRange -00000000c004c27e g F .text 0000000000000068 js_init_module_std -00000000c001e7ae g F .text 000000000000005e JS_ToInt64Clamp -00000000c0056c6c g F .text 0000000000000004 localtime_r -00000000c0006edc g F .text 0000000000000006 JS_SetContextOpaque -00000000c004c5ae g F .text 000000000000002a js_std_dump_error -00000000c0055468 g F .text 0000000000000036 fflush_unlocked -00000000c004108e g F .text 0000000000000290 JS_AddIntrinsicPromise -00000000c0053cfc g F .text 000000000000001c nxrmutex_destroy -00000000c001c36e g F .text 0000000000000028 JS_ToInt32 -00000000c00262b8 g F .text 0000000000000054 js_parse_error -00000000c00553a2 g F .text 0000000000000028 fwrite_unlocked -00000000c00575da g F .text 0000000000000014 stat -00000000c00563aa g F .text 0000000000000090 lib_checkbase -00000000c00674d8 g O .rodata 0000000000000010 lre_id_continue_table_ascii -00000000c004fff4 g F .text 000000000000003c bf_rem -00000000c005654a g F .text 0000000000000024 lib_nulloutstream -00000000c00553ca g F .text 0000000000000036 fwrite -00000000c0052adc g F .text 000000000000000a __atomic_fetch_or_8 +00000000c00577ec g F .text 0000000000000014 utimens +00000000c0017644 g F .text 0000000000000052 js_realloc2 +00000000c002964c g F .text 000000000000006a JS_DefinePropertyValueValue +00000000c00195be g F .text 0000000000000052 JS_NewAtomLen +00000000c001c566 g F .text 00000000000000a8 js_string_codePointRange +00000000c004c44e g F .text 0000000000000068 js_init_module_std +00000000c001e97e g F .text 000000000000005e JS_ToInt64Clamp +00000000c0056e3c g F .text 0000000000000004 localtime_r +00000000c0006fca g F .text 0000000000000006 JS_SetContextOpaque +00000000c004c77e g F .text 000000000000002a js_std_dump_error +00000000c0055638 g F .text 0000000000000036 fflush_unlocked +00000000c004125e g F .text 0000000000000290 JS_AddIntrinsicPromise +00000000c0053ecc g F .text 000000000000001c nxrmutex_destroy +00000000c001c53e g F .text 0000000000000028 JS_ToInt32 +00000000c0026488 g F .text 0000000000000054 js_parse_error +00000000c0055572 g F .text 0000000000000028 fwrite_unlocked +00000000c00577aa g F .text 0000000000000014 stat +00000000c005657a g F .text 0000000000000090 lib_checkbase +00000000c0067738 g O .rodata 0000000000000010 lre_id_continue_table_ascii +00000000c00501c4 g F .text 000000000000003c bf_rem +00000000c005671a g F .text 0000000000000024 lib_nulloutstream +00000000c005559a g F .text 0000000000000036 fwrite +00000000c0052cac g F .text 000000000000000a __atomic_fetch_or_8 00000000c0000ac8 g F .text 0000000000000348 .hidden __umodti3 00000000c0101098 g .data 0000000000000000 _edata -00000000c00467e6 g F .text 0000000000000018 cr_init -00000000c0028890 g F .text 000000000000006e JS_DeletePropertyInt64 -00000000c0053d18 g F .text 0000000000000004 nxrmutex_is_hold -00000000c00529be g F .text 000000000000001c __atomic_compare_exchange_1 -00000000c001e286 g F .text 0000000000000040 JS_ToIndex -00000000c000af34 g F .text 0000000000000024 JS_PromiseState -00000000c001fa7c g F .text 0000000000000018 JS_ToInt64Ext -00000000c0052b78 g F .text 000000000000000e __sync_sub_and_fetch_4 -00000000c000af20 g F .text 0000000000000006 lre_realloc -00000000c00574f0 g F .text 0000000000000010 pthread_mutex_destroy -00000000c005814a g F .text 0000000000000022 zalloc -00000000c0051e32 g F .text 00000000000000d2 bf_log +00000000c00469b6 g F .text 0000000000000018 cr_init +00000000c0028a60 g F .text 000000000000006e JS_DeletePropertyInt64 +00000000c0053ee8 g F .text 0000000000000004 nxrmutex_is_hold +00000000c0052b8e g F .text 000000000000001c __atomic_compare_exchange_1 +00000000c001e456 g F .text 0000000000000040 JS_ToIndex +00000000c000b022 g F .text 0000000000000024 JS_PromiseState +00000000c001fc4c g F .text 0000000000000018 JS_ToInt64Ext +00000000c0052d48 g F .text 000000000000000e __sync_sub_and_fetch_4 +00000000c000b00e g F .text 0000000000000006 lre_realloc +00000000c00576c0 g F .text 0000000000000010 pthread_mutex_destroy +00000000c005831a g F .text 0000000000000022 zalloc +00000000c0052002 g F .text 00000000000000d2 bf_log 00000000c000077c g F .text 000000000000034c .hidden __udivti3 -00000000c000aea4 g F .text 0000000000000072 JS_GetScriptOrModuleName -00000000c0057fc8 g F .text 000000000000000c fmax -00000000c0055358 g F .text 0000000000000022 fgetc_unlocked -00000000c0053f2a g F .text 0000000000000006 pthread_mutex_lock +00000000c000af92 g F .text 0000000000000072 JS_GetScriptOrModuleName +00000000c0058198 g F .text 000000000000000c fmax +00000000c0055528 g F .text 0000000000000022 fgetc_unlocked +00000000c00540fa g F .text 0000000000000006 pthread_mutex_lock 00000000c00003fa g F .text 0000000000000382 .hidden __modti3 -00000000c004df24 g F .text 000000000000001a mp_mul -00000000c003c81c g F .text 0000000000000304 JS_JSONStringify -00000000c0028820 g F .text 0000000000000070 JS_DeleteProperty -00000000c00540d4 g F .text 0000000000000026 sem_getvalue -00000000c005405a g F .text 0000000000000038 nxsem_set_protocol -00000000c004d05c g F .text 0000000000000020 bf_set_nan -00000000c0047cf8 g F .text 000000000000004a dbuf_put_self -00000000c0006e92 g F .text 0000000000000004 JS_SetMemoryLimit -00000000c000a8b2 g F .text 0000000000000024 JS_GetOpaque -00000000c0053724 g F .text 0000000000000002 mm_uninitialize -00000000c0018c98 g F .text 0000000000000064 JS_NewBigInt64_1 -00000000c0009bc8 g F .text 0000000000000674 JS_ComputeMemoryUsage -00000000c0055828 g F .text 000000000000001c exit -00000000c0052ab6 g F .text 000000000000000e __atomic_fetch_or_1 -00000000c0057a7c g F .text 000000000000001a log2 -00000000c0050446 g F .text 0000000000000174 bf_mul_pow_radix -00000000c0052b16 g F .text 0000000000000012 __sync_add_and_fetch_1 -00000000c0006e82 g F .text 0000000000000004 js_malloc_usable_size -00000000c0052b92 g F .text 000000000000000e __sync_or_and_fetch_1 -00000000c0054cea g F .text 0000000000000024 lib_sprintf_internal -00000000c0050400 g F .text 0000000000000046 bf_get_uint64 -00000000c0016788 g F .text 0000000000000262 JS_NewObjectProtoClass -00000000c0056d3a g F .text 0000000000000010 getoptindp -00000000c004c2f0 g F .text 000000000000004a js_init_module_os -00000000c0052ad2 g F .text 000000000000000a __atomic_fetch_or_4 -00000000c00404a2 g F .text 0000000000000014 JS_EvalFunction +00000000c004e0f4 g F .text 000000000000001a mp_mul +00000000c003c9ec g F .text 0000000000000304 JS_JSONStringify +00000000c00289f0 g F .text 0000000000000070 JS_DeleteProperty +00000000c00542a4 g F .text 0000000000000026 sem_getvalue +00000000c005422a g F .text 0000000000000038 nxsem_set_protocol +00000000c004d22c g F .text 0000000000000020 bf_set_nan +00000000c0047ec8 g F .text 000000000000004a dbuf_put_self +00000000c0006f80 g F .text 0000000000000004 JS_SetMemoryLimit +00000000c000a9a0 g F .text 0000000000000024 JS_GetOpaque +00000000c00538f4 g F .text 0000000000000002 mm_uninitialize +00000000c0018e68 g F .text 0000000000000064 JS_NewBigInt64_1 +00000000c0009cb6 g F .text 0000000000000674 JS_ComputeMemoryUsage +00000000c00559f8 g F .text 000000000000001c exit +00000000c0052c86 g F .text 000000000000000e __atomic_fetch_or_1 +00000000c0057c4c g F .text 000000000000001a log2 +00000000c0050616 g F .text 0000000000000174 bf_mul_pow_radix +00000000c0052ce6 g F .text 0000000000000012 __sync_add_and_fetch_1 +00000000c0006f70 g F .text 0000000000000004 js_malloc_usable_size +00000000c0052d62 g F .text 000000000000000e __sync_or_and_fetch_1 +00000000c0054eba g F .text 0000000000000024 lib_sprintf_internal +00000000c00505d0 g F .text 0000000000000046 bf_get_uint64 +00000000c0016958 g F .text 0000000000000262 JS_NewObjectProtoClass +00000000c0056f0a g F .text 0000000000000010 getoptindp +00000000c004c4c0 g F .text 000000000000004a js_init_module_os +00000000c0052ca2 g F .text 000000000000000a __atomic_fetch_or_4 +00000000c0040672 g F .text 0000000000000014 JS_EvalFunction 00000000c01010a9 g .sdata.g_syslog_mask 0000000000000000 _ectors -00000000c0051f7a g F .text 00000000000003d0 bf_pow -00000000c0055814 g F .text 0000000000000014 atoi -00000000c00297a2 g F .text 0000000000000216 JS_GetModuleNamespace -00000000c00291e6 g F .text 0000000000000010 JS_NewCFunction2 -00000000c0052d5e g F .text 0000000000000016 log1p -00000000c005297a g F .text 0000000000000004 __atomic_store_4 +00000000c005214a g F .text 00000000000003d0 bf_pow +00000000c00559e4 g F .text 0000000000000014 atoi +00000000c0029972 g F .text 0000000000000216 JS_GetModuleNamespace +00000000c00293b6 g F .text 0000000000000010 JS_NewCFunction2 +00000000c0052f2e g F .text 0000000000000016 log1p +00000000c0052b4a g F .text 0000000000000004 __atomic_store_4 00000000c0101126 g *ABS* 0000000000000000 _stdata -00000000c005417e g F .text 000000000000001e fileno -00000000c00569f6 g F .text 0000000000000024 vsyslog -00000000c000af86 g F .text 000000000000000a JS_SetHostPromiseRejectionTracker -00000000c0014c4c g F .text 0000000000000026 js_malloc -00000000c0052996 g F .text 000000000000000c __atomic_exchange_1 +00000000c005434e g F .text 000000000000001e fileno +00000000c0056bc6 g F .text 0000000000000024 vsyslog +00000000c000b074 g F .text 000000000000000a JS_SetHostPromiseRejectionTracker +00000000c0014d3a g F .text 0000000000000108 js_malloc +00000000c0052b66 g F .text 000000000000000c __atomic_exchange_1 00000000c0000060 g F .text 000000000000039a .hidden __divti3 00000000c0002e34 g F .text 00000000000001da .hidden __trunctfsf2 -00000000c0008e80 g F .text 0000000000000012 JS_FreeCString -00000000c0055528 g F .text 0000000000000062 lib_flushall -00000000c0057298 g F .text 000000000000000c _exit -00000000c0006ed0 g F .text 0000000000000006 JS_SetRuntimeInfo -00000000c0014b42 g F .text 00000000000000a4 JS_IsInstanceOf -00000000c0039706 g F .text 000000000000001a JS_Call -00000000c0053d62 g F .text 0000000000000042 nxrmutex_trylock -00000000c00567b4 g F .text 0000000000000034 strspn -00000000c0057500 g F .text 0000000000000014 pthread_mutex_init -00000000c0044110 g F .text 00000000000001ee lre_parse_escape +00000000c0008f6e g F .text 0000000000000012 JS_FreeCString +00000000c00556f8 g F .text 0000000000000062 lib_flushall +00000000c0057468 g F .text 000000000000000c _exit +00000000c0006fbe g F .text 0000000000000006 JS_SetRuntimeInfo +00000000c0014c30 g F .text 00000000000000a4 JS_IsInstanceOf +00000000c00398d6 g F .text 000000000000001a JS_Call +00000000c0053f32 g F .text 0000000000000042 nxrmutex_trylock +00000000c0056984 g F .text 0000000000000034 strspn +00000000c00576d0 g F .text 0000000000000014 pthread_mutex_init +00000000c00442e0 g F .text 00000000000001ee lre_parse_escape 00000000c0000000 g .text 0000000000000000 _stext -00000000c0052c38 g F .text 0000000000000018 __sync_nand_and_fetch_2 -00000000c00529da g F .text 000000000000001c __atomic_compare_exchange_2 -00000000c00569b0 g F .text 0000000000000012 strlen -00000000c0052c84 g F .text 0000000000000014 __sync_bool_compare_and_swap_2 -00000000c0072c70 g O .rodata 0000000000000048 g_dtoa_scale_down -00000000c00574a8 g F .text 0000000000000032 open -00000000c0052a6e g F .text 000000000000000c __atomic_fetch_sub_4 -00000000c004c2e6 g F .text 000000000000000a js_std_set_worker_new_context_func -00000000c00128e2 g F .text 00000000000006d4 JS_DefineProperty -00000000c00572a4 g F .text 000000000000000e clock -00000000c0053a18 g F .text 000000000000000e __assert -00000000c0050ab8 g F .text 000000000000001a bf_atof -00000000c004d0fe g F .text 0000000000000024 bf_set_zero -00000000c00143de g F .text 00000000000000bc JS_IsExtensible -00000000c005693c g F .text 0000000000000012 strchr -00000000c004f75c g F .text 00000000000000f4 bf_sqrtrem -00000000c0006ec0 g F .text 0000000000000010 JS_IsJobPending -00000000c00556aa g F .text 000000000000002e fputs -00000000c004676e g F .text 0000000000000062 lre_is_cased -00000000c0053a6e g F .text 0000000000000032 closedir -00000000c005765e g F .text 000000000000001a acos -00000000c00309e2 g F .text 00000000000000d8 JS_HasProperty -00000000c004c508 g F .text 00000000000000a6 js_std_free_handlers +00000000c0052e08 g F .text 0000000000000018 __sync_nand_and_fetch_2 +00000000c0052baa g F .text 000000000000001c __atomic_compare_exchange_2 +00000000c0056b80 g F .text 0000000000000012 strlen +00000000c0052e54 g F .text 0000000000000014 __sync_bool_compare_and_swap_2 +00000000c0072ed0 g O .rodata 0000000000000048 g_dtoa_scale_down +00000000c0057678 g F .text 0000000000000032 open +00000000c0052c3e g F .text 000000000000000c __atomic_fetch_sub_4 +00000000c004c4b6 g F .text 000000000000000a js_std_set_worker_new_context_func +00000000c00129d0 g F .text 00000000000006d4 JS_DefineProperty +00000000c0057474 g F .text 000000000000000e clock +00000000c0053be8 g F .text 000000000000000e __assert +00000000c0050c88 g F .text 000000000000001a bf_atof +00000000c004d2ce g F .text 0000000000000024 bf_set_zero +00000000c00144cc g F .text 00000000000000bc JS_IsExtensible +00000000c0056b0c g F .text 0000000000000012 strchr +00000000c004f92c g F .text 00000000000000f4 bf_sqrtrem +00000000c0006fae g F .text 0000000000000010 JS_IsJobPending +00000000c005587a g F .text 000000000000002e fputs +00000000c004693e g F .text 0000000000000062 lre_is_cased +00000000c0053c3e g F .text 0000000000000032 closedir +00000000c005782e g F .text 000000000000001a acos +00000000c0030bb2 g F .text 00000000000000d8 JS_HasProperty +00000000c004c6d8 g F .text 00000000000000a6 js_std_free_handlers 00000000c0000000 g F .text 0000000000000030 .hidden __clzdi2 -00000000c0052d48 g F .text 0000000000000016 hypot -00000000c0055400 g F .text 0000000000000036 lib_fwrite_unlocked -00000000c0053ec6 g F .text 0000000000000018 pthread_attr_setdetachstate -00000000c00555ae g F .text 000000000000004c fputc_unlocked -00000000c001d586 g F .text 0000000000000028 JS_ToInt32Sat -00000000c004c020 g F .text 000000000000012c js_module_set_import_meta -00000000c00580ec g F .text 000000000000005e trunc -00000000c00474dc g F .text 000000000000027c cr_regexp_canonicalize -00000000c0019676 g F .text 0000000000000074 JS_SetModuleExport -00000000c005732e g F .text 0000000000000030 fcntl -00000000c0041438 g F .text 000000000000085e JS_AddIntrinsicBaseObjects -00000000c0056db6 g F .text 000000000000001a setuid -00000000c00572c6 g F .text 000000000000001c clock_nanosleep +00000000c0052f18 g F .text 0000000000000016 hypot +00000000c00555d0 g F .text 0000000000000036 lib_fwrite_unlocked +00000000c0054096 g F .text 0000000000000018 pthread_attr_setdetachstate +00000000c005577e g F .text 000000000000004c fputc_unlocked +00000000c001d756 g F .text 0000000000000028 JS_ToInt32Sat +00000000c004c1f0 g F .text 000000000000012c js_module_set_import_meta +00000000c00582bc g F .text 000000000000005e trunc +00000000c00476ac g F .text 000000000000027c cr_regexp_canonicalize +00000000c0019846 g F .text 0000000000000074 JS_SetModuleExport +00000000c00574fe g F .text 0000000000000030 fcntl +00000000c0041608 g F .text 000000000000085e JS_AddIntrinsicBaseObjects +00000000c0056f86 g F .text 000000000000001a setuid +00000000c0057496 g F .text 000000000000001c clock_nanosleep 00000000c0101126 g *ABS* 0000000000000000 _etdata -00000000c0056a6e g F .text 000000000000003a tcsetattr -00000000c00573fc g F .text 0000000000000018 mkdir -00000000c0046808 g F .text 000000000000004c cr_realloc -00000000c0006ba6 g F .text 0000000000000008 js_free_rt +00000000c0056c3e g F .text 000000000000003a tcsetattr +00000000c00575cc g F .text 0000000000000018 mkdir +00000000c00469d8 g F .text 000000000000004c cr_realloc +00000000c0006c94 g F .text 0000000000000008 js_free_rt 00000000c01010a8 g O .sdata.g_syslog_mask 0000000000000001 g_syslog_mask -00000000c00572e2 g F .text 0000000000000010 close -00000000c0006d66 g F .text 000000000000001e js_mallocz_rt -00000000c004ca1e g F .text 00000000000000a0 js_std_await -00000000c0047b6e g F .text 0000000000000022 strstart -00000000c00556f6 g F .text 000000000000003a vfprintf -00000000c0046392 g F .text 000000000000007c lre_case_conv -00000000c000a822 g F .text 000000000000001e JS_IsError +00000000c00574b2 g F .text 0000000000000010 close +00000000c0006e54 g F .text 000000000000001e js_mallocz_rt +00000000c004cbee g F .text 00000000000000a0 js_std_await +00000000c0047d3e g F .text 0000000000000022 strstart +00000000c00558c6 g F .text 000000000000003a vfprintf +00000000c0046562 g F .text 000000000000007c lre_case_conv +00000000c000a910 g F .text 000000000000001e JS_IsError 00000000c000300e g F .text 000000000000022c .hidden __trunctfdf2 -00000000c0047fb0 g F .text 000000000000030c rqsort -00000000c0050036 g F .text 0000000000000006 bf_logic_xor -00000000c00120de g F .text 00000000000005aa JS_SetPropertyInternal -00000000c0052df8 g F .text 000000000000000c free -00000000c0074780 g .rodata 0000000000000000 _erodata -00000000c00537e4 g F .text 0000000000000038 mm_size2ndx +00000000c0048180 g F .text 000000000000030c rqsort +00000000c0050206 g F .text 0000000000000006 bf_logic_xor +00000000c00121cc g F .text 00000000000005aa JS_SetPropertyInternal +00000000c0052fc8 g F .text 000000000000000c free +00000000c00749e0 g .rodata 0000000000000000 _erodata +00000000c00539b4 g F .text 0000000000000038 mm_size2ndx 00000000c0101070 g O .data 0000000000000028 g_getopt_vars -00000000c0047c0e g F .text 0000000000000050 dbuf_realloc +00000000c0047dde g F .text 0000000000000050 dbuf_realloc @@ -2301,7 +2301,7 @@ __clzdi2(): c0000016: 8f1d sub a4,a4,a5 c0000018: 00f55533 srl a0,a0,a5 c000001c: 00058797 auipc a5,0x58 - c0000020: 2e478793 addi a5,a5,740 # c0058300 <__clz_tab> + c0000020: 4b478793 addi a5,a5,1204 # c00584d0 <__clz_tab> c0000024: 953e add a0,a0,a5 c0000026: 00054503 lbu a0,0(a0) /scratch/jenkins/workspace/tpp-freedom-tools/tpp01--build-binary-packages--parameterized/obj/x86_64-apple-darwin/build/riscv64-unknown-elf-gcc/build-gcc-stage2/riscv64-unknown-elf/rv64imafdc/lp64d/libgcc/../../../../../riscv-gcc/libgcc/libgcc2.c:713 (discriminator 21) @@ -2324,7 +2324,7 @@ __ctzdi2(): /scratch/jenkins/workspace/tpp-freedom-tools/tpp01--build-binary-packages--parameterized/obj/x86_64-apple-darwin/build/riscv64-unknown-elf-gcc/build-gcc-stage2/riscv64-unknown-elf/rv64imafdc/lp64d/libgcc/../../../../../riscv-gcc/libgcc/libgcc2.c:742 (discriminator 21) c0000048: 00f55533 srl a0,a0,a5 c000004c: 00058717 auipc a4,0x58 - c0000050: 2b470713 addi a4,a4,692 # c0058300 <__clz_tab> + c0000050: 48470713 addi a4,a4,1156 # c00584d0 <__clz_tab> c0000054: 953a add a0,a0,a4 c0000056: 00054503 lbu a0,0(a0) c000005a: 17fd addi a5,a5,-1 @@ -2377,7 +2377,7 @@ __udivmodti4(): c00000ac: fbf5 bnez a5,c00000a0 <__divti3+0x40> c00000ae: 00f656b3 srl a3,a2,a5 c00000b2: 00058717 auipc a4,0x58 - c00000b6: 24e70713 addi a4,a4,590 # c0058300 <__clz_tab> + c00000b6: 41e70713 addi a4,a4,1054 # c00584d0 <__clz_tab> c00000ba: 9736 add a4,a4,a3 c00000bc: 00074683 lbu a3,0(a4) c00000c0: 04000713 li a4,64 @@ -2448,7 +2448,7 @@ __udivmodti4(): c0000176: fb75 bnez a4,c000016a <__divti3+0x10a> c0000178: 00e8d6b3 srl a3,a7,a4 c000017c: 00058797 auipc a5,0x58 - c0000180: 18478793 addi a5,a5,388 # c0058300 <__clz_tab> + c0000180: 35478793 addi a5,a5,852 # c00584d0 <__clz_tab> c0000184: 97b6 add a5,a5,a3 c0000186: 0007c783 lbu a5,0(a5) c000018a: 04000693 li a3,64 @@ -2569,7 +2569,7 @@ __udivmodti4(): c00002c6: fb75 bnez a4,c00002ba <__divti3+0x25a> c00002c8: 00e6d533 srl a0,a3,a4 c00002cc: 00058797 auipc a5,0x58 - c00002d0: 03478793 addi a5,a5,52 # c0058300 <__clz_tab> + c00002d0: 20478793 addi a5,a5,516 # c00584d0 <__clz_tab> c00002d4: 97aa add a5,a5,a0 c00002d6: 0007c783 lbu a5,0(a5) c00002da: 97ba add a5,a5,a4 @@ -2732,7 +2732,7 @@ __udivmodti4(): c0000442: fb75 bnez a4,c0000436 <__modti3+0x3c> c0000444: 00e656b3 srl a3,a2,a4 c0000448: 00058797 auipc a5,0x58 - c000044c: eb878793 addi a5,a5,-328 # c0058300 <__clz_tab> + c000044c: 08878793 addi a5,a5,136 # c00584d0 <__clz_tab> c0000450: 97b6 add a5,a5,a3 c0000452: 0007c683 lbu a3,0(a5) c0000456: 04000793 li a5,64 @@ -2809,7 +2809,7 @@ __udivmodti4(): c0000510: fbf5 bnez a5,c0000504 <__modti3+0x10a> c0000512: 00f356b3 srl a3,t1,a5 c0000516: 00058717 auipc a4,0x58 - c000051a: dea70713 addi a4,a4,-534 # c0058300 <__clz_tab> + c000051a: fba70713 addi a4,a4,-70 # c00584d0 <__clz_tab> c000051e: 9736 add a4,a4,a3 c0000520: 00074703 lbu a4,0(a4) c0000524: 973e add a4,a4,a5 @@ -2902,7 +2902,7 @@ __udivmodti4(): c000061c: fb75 bnez a4,c0000610 <__modti3+0x216> c000061e: 00e6d333 srl t1,a3,a4 c0000622: 00058797 auipc a5,0x58 - c0000626: cde78793 addi a5,a5,-802 # c0058300 <__clz_tab> + c0000626: eae78793 addi a5,a5,-338 # c00584d0 <__clz_tab> c000062a: 979a add a5,a5,t1 c000062c: 0007cf03 lbu t5,0(a5) c0000630: 04000793 li a5,64 @@ -3053,7 +3053,7 @@ __udivti3(): c000079c: fb75 bnez a4,c0000790 <__udivti3+0x14> c000079e: 00e65533 srl a0,a2,a4 c00007a2: 00058697 auipc a3,0x58 - c00007a6: b5e68693 addi a3,a3,-1186 # c0058300 <__clz_tab> + c00007a6: d2e68693 addi a3,a3,-722 # c00584d0 <__clz_tab> c00007aa: 96aa add a3,a3,a0 c00007ac: 0006ce03 lbu t3,0(a3) c00007b0: 04000693 li a3,64 @@ -3123,7 +3123,7 @@ __udivti3(): c000085e: faf5 bnez a3,c0000852 <__udivti3+0xd6> c0000860: 00d85633 srl a2,a6,a3 c0000864: 00058717 auipc a4,0x58 - c0000868: a9c70713 addi a4,a4,-1380 # c0058300 <__clz_tab> + c0000868: c6c70713 addi a4,a4,-916 # c00584d0 <__clz_tab> c000086c: 9732 add a4,a4,a2 c000086e: 00074703 lbu a4,0(a4) c0000872: 04000613 li a2,64 @@ -3233,7 +3233,7 @@ __udivti3(): c000099a: f9f5 bnez a1,c000098e <__udivti3+0x212> c000099c: 00b6d533 srl a0,a3,a1 c00009a0: 00058717 auipc a4,0x58 - c00009a4: 96070713 addi a4,a4,-1696 # c0058300 <__clz_tab> + c00009a4: b3070713 addi a4,a4,-1232 # c00584d0 <__clz_tab> c00009a8: 972a add a4,a4,a0 c00009aa: 00074703 lbu a4,0(a4) c00009ae: 04000513 li a0,64 @@ -3375,7 +3375,7 @@ __udivmodti4(): c0000ae6: faf5 bnez a3,c0000ada <__umodti3+0x12> c0000ae8: 00d65333 srl t1,a2,a3 c0000aec: 00058717 auipc a4,0x58 - c0000af0: 81470713 addi a4,a4,-2028 # c0058300 <__clz_tab> + c0000af0: 9e470713 addi a4,a4,-1564 # c00584d0 <__clz_tab> c0000af4: 971a add a4,a4,t1 c0000af6: 00074e03 lbu t3,0(a4) c0000afa: 04000713 li a4,64 @@ -3444,8 +3444,8 @@ __udivmodti4(): c0000ba2: 1761 addi a4,a4,-8 c0000ba4: fb75 bnez a4,c0000b98 <__umodti3+0xd0> c0000ba6: 00e8d633 srl a2,a7,a4 - c0000baa: 00057697 auipc a3,0x57 - c0000bae: 75668693 addi a3,a3,1878 # c0058300 <__clz_tab> + c0000baa: 00058697 auipc a3,0x58 + c0000bae: 92668693 addi a3,a3,-1754 # c00584d0 <__clz_tab> c0000bb2: 96b2 add a3,a3,a2 c0000bb4: 0006c683 lbu a3,0(a3) c0000bb8: 96ba add a3,a3,a4 @@ -3538,8 +3538,8 @@ __udivmodti4(): c0000cac: 18e1 addi a7,a7,-8 c0000cae: fe089ae3 bnez a7,c0000ca2 <__umodti3+0x1da> c0000cb2: 0116d333 srl t1,a3,a7 - c0000cb6: 00057717 auipc a4,0x57 - c0000cba: 64a70713 addi a4,a4,1610 # c0058300 <__clz_tab> + c0000cb6: 00058717 auipc a4,0x58 + c0000cba: 81a70713 addi a4,a4,-2022 # c00584d0 <__clz_tab> c0000cbe: 971a add a4,a4,t1 c0000cc0: 00074303 lbu t1,0(a4) c0000cc4: 04000713 li a4,64 @@ -4746,7 +4746,7 @@ __divtf3(): c000176a: 015a45b3 xor a1,s4,s5 c000176e: 0ce56863 bltu a0,a4,c000183e <__divtf3+0x1fe> c0001772: 00057517 auipc a0,0x57 - c0001776: b1650513 addi a0,a0,-1258 # c0058288 <_srodata+0x118> + c0001776: ce650513 addi a0,a0,-794 # c0058458 <_srodata+0x118> c000177a: 070a slli a4,a4,0x2 c000177c: 972a add a4,a4,a0 c000177e: 4318 lw a4,0(a4) @@ -5662,7 +5662,7 @@ __multf3(): c0001f52: 001a8813 addi a6,s5,1 # ffffffffffffc001 <_ebss+0xffffffff3fefaedb> c0001f56: 0ed5e763 bltu a1,a3,c0002044 <__multf3+0x21a> c0001f5a: 00056597 auipc a1,0x56 - c0001f5e: 36a58593 addi a1,a1,874 # c00582c4 <_srodata+0x154> + c0001f5e: 53a58593 addi a1,a1,1338 # c0058494 <_srodata+0x154> c0001f62: 068a slli a3,a3,0x2 c0001f64: 96ae add a3,a3,a1 c0001f66: 4294 lw a3,0(a3) @@ -8142,7 +8142,7 @@ void _start(int argc, char *argv[]) /* Call exit() if/when the main() returns */ exit(ret); - c00033b6: 472520ef jal ra,c0055828 + c00033b6: 642520ef jal ra,c00559f8 00000000c00033ba : js_trace_malloc_usable_size(): @@ -8218,15 +8218,15 @@ __attribute__((format(printf, 2, 3))) size_t sz = va_arg(ap, size_t); printf("%zd", sz); c00033fc: 00055b97 auipc s7,0x55 - c0003400: 01cb8b93 addi s7,s7,28 # c0058418 <__clz_tab+0x118> + c0003400: 1ecb8b93 addi s7,s7,492 # c00585e8 <__clz_tab+0x118> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:191 printf("H%+06lld.%zd", c0003404: 00055c17 auipc s8,0x55 - c0003408: 004c0c13 addi s8,s8,4 # c0058408 <__clz_tab+0x108> + c0003408: 1d4c0c13 addi s8,s8,468 # c00585d8 <__clz_tab+0x108> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:189 printf("NULL"); c000340c: 00055c97 auipc s9,0x55 - c0003410: ff4c8c93 addi s9,s9,-12 # c0058400 <__clz_tab+0x100> + c0003410: 1c4c8c93 addi s9,s9,452 # c00585d0 <__clz_tab+0x100> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:183 while ((c = *fmt++) != '\0') { c0003414: 00044483 lbu s1,0(s0) @@ -8272,7 +8272,7 @@ __attribute__((format(printf, 2, 3))) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:189 printf("NULL"); c0003452: 8566 mv a0,s9 - c0003454: 549500ef jal ra,c005419c + c0003454: 719500ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:195 fmt++; c0003458: 0409 addi s0,s0,2 @@ -8296,7 +8296,7 @@ js_trace_malloc_printf(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:191 printf("H%+06lld.%zd", c0003466: 40b785b3 sub a1,a5,a1 - c000346a: 533500ef jal ra,c005419c + c000346a: 703500ef jal ra,c005436c c000346e: b7ed j c0003458 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:198 if (fmt[0] == 'z' && fmt[1] == 'd') { @@ -8322,17 +8322,17 @@ js_trace_malloc_printf(): c0003488: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:200 printf("%zd", sz); - c000348a: 513500ef jal ra,c005419c + c000348a: 6e3500ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:202 continue; c000348e: b759 j c0003414 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:205 putc(c, stdout); c0003490: 4505 li a0,1 - c0003492: 356520ef jal ra,c00557e8 + c0003492: 526520ef jal ra,c00559b8 c0003496: 85aa mv a1,a0 c0003498: 8526 mv a0,s1 - c000349a: 110520ef jal ra,c00555aa + c000349a: 2e0520ef jal ra,c005577a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:183 while ((c = *fmt++) != '\0') { c000349e: 846a mv s0,s10 @@ -8361,8 +8361,8 @@ static void *js_trace_malloc(JSMallocState *s, size_t size) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:220 (discriminator 1) c00034ae: 0dc00593 li a1,220 c00034b2: 00055517 auipc a0,0x55 - c00034b6: f6e50513 addi a0,a0,-146 # c0058420 <__clz_tab+0x120> - c00034ba: 55e500ef jal ra,c0053a18 <__assert> + c00034b6: 13e50513 addi a0,a0,318 # c00585f0 <__clz_tab+0x120> + c00034ba: 72e500ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:222 (discriminator 2) if (unlikely(s->malloc_size + size > s->malloc_limit)) @@ -8380,7 +8380,7 @@ static void *js_trace_malloc(JSMallocState *s, size_t size) ptr = malloc(size); c00034cc: 852e mv a0,a1 c00034ce: e42e sd a1,8(sp) - c00034d0: 1354f0ef jal ra,c0052e04 + c00034d0: 3054f0ef jal ra,c0052fd4 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:225 js_trace_malloc_printf(s, "A %zd -> %p\n", size, ptr); c00034d4: 6622 ld a2,8(sp) @@ -8391,7 +8391,7 @@ static void *js_trace_malloc(JSMallocState *s, size_t size) js_trace_malloc_printf(s, "A %zd -> %p\n", size, ptr); c00034d8: 86aa mv a3,a0 c00034da: 00055597 auipc a1,0x55 - c00034de: f4e58593 addi a1,a1,-178 # c0058428 <__clz_tab+0x128> + c00034de: 11e58593 addi a1,a1,286 # c00585f8 <__clz_tab+0x128> c00034e2: 8522 mv a0,s0 c00034e4: edbff0ef jal ra,c00033be /Users/Luppy/riscv/quickjs-nuttx/qjs.c:226 @@ -8470,7 +8470,7 @@ static void *js_trace_realloc(JSMallocState *s, void *ptr, size_t size) js_trace_malloc_printf(s, "R %zd %p\n", size, ptr); c0003526: 86ae mv a3,a1 c0003528: 00055597 auipc a1,0x55 - c000352c: f1058593 addi a1,a1,-240 # c0058438 <__clz_tab+0x138> + c000352c: 0e058593 addi a1,a1,224 # c0058608 <__clz_tab+0x138> c0003530: e8fff0ef jal ra,c00033be /Users/Luppy/riscv/quickjs-nuttx/qjs.c:256 s->malloc_count--; @@ -8489,7 +8489,7 @@ static void *js_trace_realloc(JSMallocState *s, void *ptr, size_t size) c0003540: e49c sd a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:258 free(ptr); - c0003542: 0b74f0ef jal ra,c0052df8 + c0003542: 2874f0ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:250 return NULL; c0003546: 4401 li s0,0 @@ -8504,19 +8504,19 @@ static void *js_trace_realloc(JSMallocState *s, void *ptr, size_t size) js_trace_malloc_printf(s, "R %zd %p", size, ptr); c0003554: 86ae mv a3,a1 c0003556: 00055597 auipc a1,0x55 - c000355a: ef258593 addi a1,a1,-270 # c0058448 <__clz_tab+0x148> + c000355a: 0c258593 addi a1,a1,194 # c0058618 <__clz_tab+0x148> c000355e: e61ff0ef jal ra,c00033be /Users/Luppy/riscv/quickjs-nuttx/qjs.c:266 ptr = realloc(ptr, size); c0003562: 85ca mv a1,s2 c0003564: 8522 mv a0,s0 - c0003566: 0f34f0ef jal ra,c0052e58 + c0003566: 2c34f0ef jal ra,c0053028 c000356a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:267 js_trace_malloc_printf(s, " -> %p\n", ptr); c000356c: 862a mv a2,a0 c000356e: 00055597 auipc a1,0x55 - c0003572: eea58593 addi a1,a1,-278 # c0058458 <__clz_tab+0x158> + c0003572: 0ba58593 addi a1,a1,186 # c0058628 <__clz_tab+0x158> c0003576: 8526 mv a0,s1 c0003578: e47ff0ef jal ra,c00033be /Users/Luppy/riscv/quickjs-nuttx/qjs.c:272 @@ -8544,7 +8544,7 @@ _d("JS_NewCustomContext: a="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:114 _d("JS_NewCustomContext: a="); _d(debug_expr); _d("\n"); //// c0003592: 00055597 auipc a1,0x55 - c0003596: ece58593 addi a1,a1,-306 # c0058460 <__clz_tab+0x160> + c0003596: 09e58593 addi a1,a1,158 # c0058630 <__clz_tab+0x160> c000359a: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:112 { @@ -8552,26 +8552,26 @@ _d("JS_NewCustomContext: a="); _d(debug_expr); _d("\n"); //// c000359e: ec26 sd s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:114 _d("JS_NewCustomContext: a="); _d(debug_expr); _d("\n"); //// - c00035a0: 0a8540ef jal ra,c0057648 + c00035a0: 278540ef jal ra,c0057818 c00035a4: 000fe497 auipc s1,0xfe c00035a8: b4c48493 addi s1,s1,-1204 # c01010f0 c00035ac: 608c ld a1,0(s1) c00035ae: 852e mv a0,a1 c00035b0: e42e sd a1,8(sp) - c00035b2: 3fe530ef jal ra,c00569b0 + c00035b2: 5ce530ef jal ra,c0056b80 c00035b6: 65a2 ld a1,8(sp) c00035b8: 862a mv a2,a0 c00035ba: 4505 li a0,1 - c00035bc: 08c540ef jal ra,c0057648 + c00035bc: 25c540ef jal ra,c0057818 c00035c0: 4605 li a2,1 c00035c2: 0006d597 auipc a1,0x6d - c00035c6: 57e58593 addi a1,a1,1406 # c0070b40 + c00035c6: 7de58593 addi a1,a1,2014 # c0070da0 c00035ca: 4505 li a0,1 - c00035cc: 07c540ef jal ra,c0057648 + c00035cc: 24c540ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:117 ctx = JS_NewContext(rt); c00035d0: 8522 mv a0,s0 - c00035d2: 1e53f0ef jal ra,c0042fb6 + c00035d2: 3b53f0ef jal ra,c0043186 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:118 _d("JS_NewCustomContext: b="); _d(debug_expr); _d("\n"); //// c00035d6: 465d li a2,23 @@ -8581,37 +8581,37 @@ _d("JS_NewCustomContext: b="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:118 _d("JS_NewCustomContext: b="); _d(debug_expr); _d("\n"); //// c00035da: 00055597 auipc a1,0x55 - c00035de: e9e58593 addi a1,a1,-354 # c0058478 <__clz_tab+0x178> + c00035de: 06e58593 addi a1,a1,110 # c0058648 <__clz_tab+0x178> c00035e2: 4505 li a0,1 - c00035e4: 064540ef jal ra,c0057648 + c00035e4: 234540ef jal ra,c0057818 c00035e8: 608c ld a1,0(s1) c00035ea: 852e mv a0,a1 c00035ec: e42e sd a1,8(sp) - c00035ee: 3c2530ef jal ra,c00569b0 + c00035ee: 592530ef jal ra,c0056b80 c00035f2: 65a2 ld a1,8(sp) c00035f4: 862a mv a2,a0 c00035f6: 4505 li a0,1 - c00035f8: 050540ef jal ra,c0057648 + c00035f8: 220540ef jal ra,c0057818 c00035fc: 4605 li a2,1 c00035fe: 0006d597 auipc a1,0x6d - c0003602: 54258593 addi a1,a1,1346 # c0070b40 + c0003602: 7a258593 addi a1,a1,1954 # c0070da0 c0003606: 4505 li a0,1 - c0003608: 040540ef jal ra,c0057648 + c0003608: 210540ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:121 if (!ctx) c000360c: cc19 beqz s0,c000362a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:132 js_init_module_std(ctx, "std"); c000360e: 00055597 auipc a1,0x55 - c0003612: e8258593 addi a1,a1,-382 # c0058490 <__clz_tab+0x190> + c0003612: 05258593 addi a1,a1,82 # c0058660 <__clz_tab+0x190> c0003616: 8522 mv a0,s0 - c0003618: 467480ef jal ra,c004c27e + c0003618: 637480ef jal ra,c004c44e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:133 js_init_module_os(ctx, "os"); c000361c: 00055597 auipc a1,0x55 - c0003620: e7c58593 addi a1,a1,-388 # c0058498 <__clz_tab+0x198> + c0003620: 04c58593 addi a1,a1,76 # c0058668 <__clz_tab+0x198> c0003624: 8522 mv a0,s0 - c0003626: 4cb480ef jal ra,c004c2f0 + c0003626: 69b480ef jal ra,c004c4c0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:135 } c000362a: 70a2 ld ra,40(sp) @@ -8643,7 +8643,7 @@ eval_buf(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:64 val = JS_Eval(ctx, buf, buf_len, filename, c000364a: 02100713 li a4,33 - c000364e: 2a0100ef jal ra,c00138ee + c000364e: 38e100ef jal ra,c00139dc c0003652: e82a sd a0,16(sp) c0003654: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:66 @@ -8662,20 +8662,20 @@ eval_buf(): c0003664: 4705 li a4,1 c0003666: 4685 li a3,1 c0003668: 8522 mv a0,s0 - c000366a: 1b7480ef jal ra,c004c020 + c000366a: 387480ef jal ra,c004c1f0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:68 val = JS_EvalFunction(ctx, val); c000366e: 6662 ld a2,24(sp) c0003670: 65c2 ld a1,16(sp) c0003672: 8522 mv a0,s0 - c0003674: 62f3c0ef jal ra,c00404a2 + c0003674: 7ff3c0ef jal ra,c0040672 c0003678: e82a sd a0,16(sp) c000367a: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:70 val = js_std_await(ctx, val); c000367c: 65c2 ld a1,16(sp) c000367e: 8522 mv a0,s0 - c0003680: 39e490ef jal ra,c004ca1e + c0003680: 56e490ef jal ra,c004cbee /Users/Luppy/riscv/quickjs-nuttx/qjs.c:73 val = JS_Eval(ctx, buf, buf_len, filename, eval_flags); c0003684: e82a sd a0,16(sp) @@ -8696,7 +8696,7 @@ eval_buf(): js_std_dump_error(ctx); c0003694: 8522 mv a0,s0 c0003696: e42e sd a1,8(sp) - c0003698: 717480ef jal ra,c004c5ae + c0003698: 0e6490ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:77 ret = -1; c000369c: 6622 ld a2,8(sp) @@ -8727,7 +8727,7 @@ static inline void JS_FreeValue(JSContext *ctx, JSValue v) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:651 __JS_FreeValue(ctx, v); c00036ba: 8522 mv a0,s0 - c00036bc: 472040ef jal ra,c0007b2e <__JS_FreeValue> + c00036bc: 560040ef jal ra,c0007c1c <__JS_FreeValue> eval_buf(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:83 } @@ -8744,20 +8744,20 @@ eval_buf(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:72 _d("eval_buf: buf="); write(1, buf, buf_len); _d("\n");//// c00036d4: 00055597 auipc a1,0x55 - c00036d8: dcc58593 addi a1,a1,-564 # c00584a0 <__clz_tab+0x1a0> + c00036d8: f9c58593 addi a1,a1,-100 # c0058670 <__clz_tab+0x1a0> c00036dc: 4639 li a2,14 c00036de: 4505 li a0,1 c00036e0: 89b6 mv s3,a3 - c00036e2: 767530ef jal ra,c0057648 + c00036e2: 136540ef jal ra,c0057818 c00036e6: 864a mv a2,s2 c00036e8: 85a6 mv a1,s1 c00036ea: 4505 li a0,1 - c00036ec: 75d530ef jal ra,c0057648 + c00036ec: 12c540ef jal ra,c0057818 c00036f0: 4605 li a2,1 c00036f2: 0006d597 auipc a1,0x6d - c00036f6: 44e58593 addi a1,a1,1102 # c0070b40 + c00036f6: 6ae58593 addi a1,a1,1710 # c0070da0 c00036fa: 4505 li a0,1 - c00036fc: 74d530ef jal ra,c0057648 + c00036fc: 11c540ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:73 val = JS_Eval(ctx, buf, buf_len, filename, eval_flags); c0003700: 4701 li a4,0 @@ -8765,7 +8765,7 @@ eval_buf(): c0003704: 864a mv a2,s2 c0003706: 85a6 mv a1,s1 c0003708: 8522 mv a0,s0 - c000370a: 1e4100ef jal ra,c00138ee + c000370a: 2d2100ef jal ra,c00139dc c000370e: bf9d j c0003684 00000000c0003710 : @@ -8789,18 +8789,18 @@ eval_file(): c0003724: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:91 buf = js_load_file(ctx, &buf_len, filename); - c0003726: 742480ef jal ra,c004be68 + c0003726: 113480ef jal ra,c004c038 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:92 if (!buf) { c000372a: e519 bnez a0,c0003738 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:93 perror(filename); c000372c: 8526 mv a0,s1 - c000372e: 349500ef jal ra,c0054276 + c000372e: 519500ef jal ra,c0054446 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:94 exit(1); c0003732: 4505 li a0,1 - c0003734: 0f4520ef jal ra,c0055828 + c0003734: 2c4520ef jal ra,c00559f8 c0003738: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:102 eval_flags = JS_EVAL_TYPE_MODULE; @@ -8811,9 +8811,9 @@ eval_file(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:98 module = (has_suffix(filename, ".mjs") || c0003742: 00055597 auipc a1,0x55 - c0003746: d6e58593 addi a1,a1,-658 # c00584b0 <__clz_tab+0x1b0> + c0003746: f3e58593 addi a1,a1,-194 # c0058680 <__clz_tab+0x1b0> c000374a: 8526 mv a0,s1 - c000374c: 444440ef jal ra,c0047b90 + c000374c: 614440ef jal ra,c0047d60 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:102 eval_flags = JS_EVAL_TYPE_MODULE; c0003750: 4705 li a4,1 @@ -8824,7 +8824,7 @@ eval_file(): JS_DetectModule((const char *)buf, buf_len)); c0003754: 65a2 ld a1,8(sp) c0003756: 8522 mv a0,s0 - c0003758: 6f0070ef jal ra,c000ae48 + c0003758: 7de070ef jal ra,c000af36 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:102 (discriminator 2) eval_flags = JS_EVAL_TYPE_MODULE; c000375c: 00a03733 snez a4,a0 @@ -8840,7 +8840,7 @@ eval_file(): js_free(ctx, buf); c000376e: 85a2 mv a1,s0 c0003770: 854a mv a0,s2 - c0003772: 6c8030ef jal ra,c0006e3a + c0003772: 7b6030ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:108 } c0003776: 70e2 ld ra,56(sp) @@ -8866,7 +8866,7 @@ js_trace_free(): c000378c: 862e mv a2,a1 c000378e: 84ae mv s1,a1 c0003790: 00055597 auipc a1,0x55 - c0003794: d2858593 addi a1,a1,-728 # c00584b8 <__clz_tab+0x1b8> + c0003794: ef858593 addi a1,a1,-264 # c0058688 <__clz_tab+0x1b8> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:234 { c0003798: e822 sd s0,16(sp) @@ -8898,7 +8898,7 @@ js_trace_free(): c00037b6: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:241 free(ptr); - c00037b8: 6404f06f j c0052df8 + c00037b8: 0114f06f j c0052fc8 c00037bc: 8082 ret 00000000c00037be : @@ -8914,13 +8914,13 @@ void help(void) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:285 printf("QuickJS version " CONFIG_VERSION "\n" c00037c0: 00055517 auipc a0,0x55 - c00037c4: d0050513 addi a0,a0,-768 # c00584c0 <__clz_tab+0x1c0> + c00037c4: ed050513 addi a0,a0,-304 # c0058690 <__clz_tab+0x1c0> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:284 { c00037c8: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:285 printf("QuickJS version " CONFIG_VERSION "\n" - c00037ca: 317500ef jal ra,c00542e0 + c00037ca: 4e7500ef jal ra,c00544b0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:304 "-d --dump dump the memory usage stats\n" " --memory-limit n limit the memory usage to 'n' bytes\n" @@ -8929,7 +8929,7 @@ void help(void) "-q --quit just instantiate the interpreter and quit\n"); exit(1); c00037ce: 4505 li a0,1 - c00037d0: 058520ef jal ra,c0055828 + c00037d0: 228520ef jal ra,c00559f8 00000000c00037d4
: main(): @@ -8967,7 +8967,7 @@ int main(int argc, char **argv) /* cannot use getopt because we want to pass the command line to the script */ optind = 1; - c0003816: 524530ef jal ra,c0056d3a + c0003816: 6f4530ef jal ra,c0056f0a c000381a: 4785 li a5,1 c000381c: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:327 @@ -9005,11 +9005,11 @@ int main(int argc, char **argv) c0003832: 4b81 li s7,0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:344 while (optind < argc && *argv[optind] == '-') { - c0003834: 506530ef jal ra,c0056d3a + c0003834: 6d6530ef jal ra,c0056f0a c0003838: 411c lw a5,0(a0) c000383a: 0347da63 bge a5,s4,c000386e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:344 (discriminator 1) - c000383e: 4fc530ef jal ra,c0056d3a + c000383e: 6cc530ef jal ra,c0056f0a c0003842: 411c lw a5,0(a0) c0003844: 02d00713 li a4,45 c0003848: 078e slli a5,a5,0x3 @@ -9019,7 +9019,7 @@ int main(int argc, char **argv) c0003852: 00e79e63 bne a5,a4,c000386e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:345 char *arg = argv[optind] + 1; - c0003856: 4e4530ef jal ra,c0056d3a + c0003856: 6b4530ef jal ra,c0056f0a c000385a: 411c lw a5,0(a0) c000385c: 078e slli a5,a5,0x3 c000385e: 97ca add a5,a5,s2 @@ -9044,24 +9044,24 @@ int main(int argc, char **argv) _d("main: expr2="); _d(debug_expr); _d("\n"); //// c000386e: 4631 li a2,12 c0003870: 00055597 auipc a1,0x55 - c0003874: f3858593 addi a1,a1,-200 # c00587a8 <__clz_tab+0x4a8> + c0003874: 10858593 addi a1,a1,264 # c0058978 <__clz_tab+0x4a8> c0003878: 4505 li a0,1 - c000387a: 5cf530ef jal ra,c0057648 + c000387a: 79f530ef jal ra,c0057818 c000387e: 000fe417 auipc s0,0xfe c0003882: 87240413 addi s0,s0,-1934 # c01010f0 c0003886: 600c ld a1,0(s0) c0003888: 852e mv a0,a1 c000388a: f42e sd a1,40(sp) - c000388c: 124530ef jal ra,c00569b0 + c000388c: 2f4530ef jal ra,c0056b80 c0003890: 75a2 ld a1,40(sp) c0003892: 862a mv a2,a0 c0003894: 4505 li a0,1 - c0003896: 5b3530ef jal ra,c0057648 + c0003896: 783530ef jal ra,c0057818 c000389a: 4605 li a2,1 c000389c: 0006d597 auipc a1,0x6d - c00038a0: 2a458593 addi a1,a1,676 # c0070b40 + c00038a0: 50458593 addi a1,a1,1284 # c0070da0 c00038a4: 4505 li a0,1 - c00038a6: 5a3530ef jal ra,c0057648 + c00038a6: 773530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:465 if (trace_memory) { c00038aa: 67c2 ld a5,16(sp) @@ -9071,19 +9071,19 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// rt = JS_NewRuntime2(&trace_mf, &trace_data); } else { rt = JS_NewRuntime(); - c00038b0: 2e8060ef jal ra,c0009b98 + c00038b0: 3d6060ef jal ra,c0009c86 c00038b4: ae05 j c0003be4 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:350 optind++; - c00038b6: 484530ef jal ra,c0056d3a + c00038b6: 654530ef jal ra,c0056f0a c00038ba: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:351 if (*arg == '-') { c00038bc: 02d00713 li a4,45 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:346 const char *longopt = ""; - c00038c0: 00059417 auipc s0,0x59 - c00038c4: 71040413 addi s0,s0,1808 # c005cfd0 + c00038c0: 0005a417 auipc s0,0x5a + c00038c4: 94040413 addi s0,s0,-1728 # c005d200 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:350 optind++; c00038c8: 2785 addiw a5,a5,1 @@ -9095,7 +9095,7 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:353 arg += strlen(arg); c00038d4: 8526 mv a0,s1 - c00038d6: 0da530ef jal ra,c00569b0 + c00038d6: 2aa530ef jal ra,c0056b80 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:355 if (!*longopt) c00038da: 0029c783 lbu a5,2(s3) @@ -9131,9 +9131,9 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// c0003906: 00f98a63 beq s3,a5,c000391a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:362 (discriminator 2) c000390a: 00055597 auipc a1,0x55 - c000390e: eae58593 addi a1,a1,-338 # c00587b8 <__clz_tab+0x4b8> + c000390e: 07e58593 addi a1,a1,126 # c0058988 <__clz_tab+0x4b8> c0003912: 8522 mv a0,s0 - c0003914: 03a530ef jal ra,c005694e + c0003914: 20a530ef jal ra,c0056b1e c0003918: e119 bnez a0,c000391e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:363 help(); @@ -9144,9 +9144,9 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// c0003922: 00f98a63 beq s3,a5,c0003936 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:366 (discriminator 1) c0003926: 00055597 auipc a1,0x55 - c000392a: e9a58593 addi a1,a1,-358 # c00587c0 <__clz_tab+0x4c0> + c000392a: 06a58593 addi a1,a1,106 # c0058990 <__clz_tab+0x4c0> c000392e: 8522 mv a0,s0 - c0003930: 01e530ef jal ra,c005694e + c0003930: 1ee530ef jal ra,c0056b1e c0003934: ed2d bnez a0,c00039ae /Users/Luppy/riscv/quickjs-nuttx/qjs.c:367 if (*arg) { @@ -9154,18 +9154,18 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// c000393a: efa1 bnez a5,c0003992 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:371 if (optind < argc) { - c000393c: 3fe530ef jal ra,c0056d3a + c000393c: 5ce530ef jal ra,c0056f0a c0003940: 411c lw a5,0(a0) c0003942: 0547da63 bge a5,s4,c0003996 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:372 expr = argv[optind++]; - c0003946: 3f4530ef jal ra,c0056d3a + c0003946: 5c4530ef jal ra,c0056f0a c000394a: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:373 _d("main: expr="); _d(expr); _d("\n"); //// c000394c: 462d li a2,11 c000394e: 00055597 auipc a1,0x55 - c0003952: e7a58593 addi a1,a1,-390 # c00587c8 <__clz_tab+0x4c8> + c0003952: 04a58593 addi a1,a1,74 # c0058998 <__clz_tab+0x4c8> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:372 expr = argv[optind++]; c0003956: 0017871b addiw a4,a5,1 @@ -9176,18 +9176,18 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:373 _d("main: expr="); _d(expr); _d("\n"); //// c0003962: 4505 li a0,1 - c0003964: 4e5530ef jal ra,c0057648 + c0003964: 6b5530ef jal ra,c0057818 c0003968: 8526 mv a0,s1 - c000396a: 046530ef jal ra,c00569b0 + c000396a: 216530ef jal ra,c0056b80 c000396e: 862a mv a2,a0 c0003970: 85a6 mv a1,s1 c0003972: 4505 li a0,1 - c0003974: 4d5530ef jal ra,c0057648 + c0003974: 6a5530ef jal ra,c0057818 c0003978: 4605 li a2,1 c000397a: 0006d597 auipc a1,0x6d - c000397e: 1c658593 addi a1,a1,454 # c0070b40 + c000397e: 42658593 addi a1,a1,1062 # c0070da0 c0003982: 4505 li a0,1 - c0003984: 4c5530ef jal ra,c0057648 + c0003984: 695530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:374 debug_expr = expr; //// c0003988: 000fd797 auipc a5,0xfd @@ -9200,10 +9200,10 @@ _d("main: expr2="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:377 fprintf(stderr, "qjs: missing expression for -e\n"); c0003996: 4509 li a0,2 - c0003998: 651510ef jal ra,c00557e8 + c0003998: 020520ef jal ra,c00559b8 c000399c: 85aa mv a1,a0 c000399e: 00055517 auipc a0,0x55 - c00039a2: e3a50513 addi a0,a0,-454 # c00587d8 <__clz_tab+0x4d8> + c00039a2: 00a50513 addi a0,a0,10 # c00589a8 <__clz_tab+0x4d8> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:492 //puts("main: a");//// ctx = JS_NewCustomContext(rt); @@ -9211,7 +9211,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// //puts("main: b");//// if (!ctx) { fprintf(stderr, "qjs: cannot allocate JS context\n"); - c00039a6: 505510ef jal ra,c00556aa + c00039a6: 6d5510ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:493 exit(2); c00039aa: 4509 li a0,2 @@ -9222,27 +9222,27 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c00039b2: 00f98a63 beq s3,a5,c00039c6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:380 (discriminator 1) c00039b6: 00055597 auipc a1,0x55 - c00039ba: e4258593 addi a1,a1,-446 # c00587f8 <__clz_tab+0x4f8> + c00039ba: 01258593 addi a1,a1,18 # c00589c8 <__clz_tab+0x4f8> c00039be: 8522 mv a0,s0 - c00039c0: 78f520ef jal ra,c005694e + c00039c0: 15e530ef jal ra,c0056b1e c00039c4: e525 bnez a0,c0003a2c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:381 if (optind >= argc) { - c00039c6: 374530ef jal ra,c0056d3a + c00039c6: 544530ef jal ra,c0056f0a c00039ca: 411c lw a5,0(a0) c00039cc: 0147cf63 blt a5,s4,c00039ea /Users/Luppy/riscv/quickjs-nuttx/qjs.c:382 fprintf(stderr, "expecting filename"); c00039d0: 4509 li a0,2 - c00039d2: 617510ef jal ra,c00557e8 + c00039d2: 7e7510ef jal ra,c00559b8 c00039d6: 85aa mv a1,a0 c00039d8: 00055517 auipc a0,0x55 - c00039dc: e2850513 addi a0,a0,-472 # c0058800 <__clz_tab+0x500> - c00039e0: 4cb510ef jal ra,c00556aa + c00039dc: ff850513 addi a0,a0,-8 # c00589d0 <__clz_tab+0x500> + c00039e0: 69b510ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:383 exit(1); c00039e4: 4505 li a0,1 - c00039e6: 643510ef jal ra,c0055828 + c00039e6: 012520ef jal ra,c00559f8 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:385 if (include_count >= countof(include_list)) { c00039ea: 47fd li a5,31 @@ -9250,14 +9250,14 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:386 fprintf(stderr, "too many included files"); c00039f0: 4509 li a0,2 - c00039f2: 5f7510ef jal ra,c00557e8 + c00039f2: 7c7510ef jal ra,c00559b8 c00039f6: 85aa mv a1,a0 c00039f8: 00055517 auipc a0,0x55 - c00039fc: e2050513 addi a0,a0,-480 # c0058818 <__clz_tab+0x518> + c00039fc: ff050513 addi a0,a0,-16 # c00589e8 <__clz_tab+0x518> c0003a00: b7c5 j c00039e0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:389 include_list[include_count++] = argv[optind++]; - c0003a02: 338530ef jal ra,c0056d3a + c0003a02: 508530ef jal ra,c0056f0a c0003a06: 411c lw a5,0(a0) c0003a08: 1414 addi a3,sp,544 c0003a0a: 0017871b addiw a4,a5,1 @@ -9272,7 +9272,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:417 (discriminator 1) dump_unhandled_promise_rejection = 1; c0003a22: 00059417 auipc s0,0x59 - c0003a26: 5ae40413 addi s0,s0,1454 # c005cfd0 + c0003a26: 7de40413 addi s0,s0,2014 # c005d200 c0003a2a: bd75 j c00038e6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:392 if (opt == 'i' || !strcmp(longopt, "interactive")) { @@ -9280,9 +9280,9 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003a30: 00f98a63 beq s3,a5,c0003a44 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:392 (discriminator 1) c0003a34: 00055597 auipc a1,0x55 - c0003a38: dfc58593 addi a1,a1,-516 # c0058830 <__clz_tab+0x530> + c0003a38: fcc58593 addi a1,a1,-52 # c0058a00 <__clz_tab+0x530> c0003a3c: 8522 mv a0,s0 - c0003a3e: 711520ef jal ra,c005694e + c0003a3e: 0e0530ef jal ra,c0056b1e c0003a42: e509 bnez a0,c0003a4c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:393 interactive++; @@ -9298,16 +9298,16 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003a50: 16f98363 beq s3,a5,c0003bb6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:396 (discriminator 1) c0003a54: 0006d597 auipc a1,0x6d - c0003a58: 34c58593 addi a1,a1,844 # c0070da0 + c0003a58: 5ac58593 addi a1,a1,1452 # c0071000 c0003a5c: 8522 mv a0,s0 - c0003a5e: 6f1520ef jal ra,c005694e + c0003a5e: 0c0530ef jal ra,c0056b1e c0003a62: 14050a63 beqz a0,c0003bb6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:400 if (!strcmp(longopt, "script")) { - c0003a66: 00063597 auipc a1,0x63 - c0003a6a: 70258593 addi a1,a1,1794 # c0067168 + c0003a66: 00064597 auipc a1,0x64 + c0003a6a: 96258593 addi a1,a1,-1694 # c00673c8 c0003a6e: 8522 mv a0,s0 - c0003a70: 6df520ef jal ra,c005694e + c0003a70: 0ae530ef jal ra,c0056b1e c0003a74: 14050363 beqz a0,c0003bba /Users/Luppy/riscv/quickjs-nuttx/qjs.c:404 if (opt == 'd' || !strcmp(longopt, "dump")) { @@ -9315,9 +9315,9 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003a7c: 00f98a63 beq s3,a5,c0003a90 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:404 (discriminator 1) c0003a80: 00055597 auipc a1,0x55 - c0003a84: dc058593 addi a1,a1,-576 # c0058840 <__clz_tab+0x540> + c0003a84: f9058593 addi a1,a1,-112 # c0058a10 <__clz_tab+0x540> c0003a88: 8522 mv a0,s0 - c0003a8a: 6c5520ef jal ra,c005694e + c0003a8a: 094530ef jal ra,c0056b1e c0003a8e: e119 bnez a0,c0003a94 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:405 dump_memory++; @@ -9331,9 +9331,9 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003a98: 00f98a63 beq s3,a5,c0003aac /Users/Luppy/riscv/quickjs-nuttx/qjs.c:408 (discriminator 1) c0003a9c: 00055597 auipc a1,0x55 - c0003aa0: dac58593 addi a1,a1,-596 # c0058848 <__clz_tab+0x548> + c0003aa0: f7c58593 addi a1,a1,-132 # c0058a18 <__clz_tab+0x548> c0003aa4: 8522 mv a0,s0 - c0003aa6: 6a9520ef jal ra,c005694e + c0003aa6: 078530ef jal ra,c0056b1e c0003aaa: e509 bnez a0,c0003ab4 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:409 trace_memory++; @@ -9346,16 +9346,16 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:412 if (!strcmp(longopt, "std")) { c0003ab4: 00055597 auipc a1,0x55 - c0003ab8: 9dc58593 addi a1,a1,-1572 # c0058490 <__clz_tab+0x190> + c0003ab8: bac58593 addi a1,a1,-1108 # c0058660 <__clz_tab+0x190> c0003abc: 8522 mv a0,s0 - c0003abe: 691520ef jal ra,c005694e + c0003abe: 060530ef jal ra,c0056b1e c0003ac2: 0e050e63 beqz a0,c0003bbe /Users/Luppy/riscv/quickjs-nuttx/qjs.c:416 if (!strcmp(longopt, "unhandled-rejection")) { c0003ac6: 00055597 auipc a1,0x55 - c0003aca: d8a58593 addi a1,a1,-630 # c0058850 <__clz_tab+0x550> + c0003aca: f5a58593 addi a1,a1,-166 # c0058a20 <__clz_tab+0x550> c0003ace: 8522 mv a0,s0 - c0003ad0: 67f520ef jal ra,c005694e + c0003ad0: 04e530ef jal ra,c0056b1e c0003ad4: 0e050863 beqz a0,c0003bc4 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:430 if (opt == 'q' || !strcmp(longopt, "quit")) { @@ -9363,9 +9363,9 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003adc: 00f98a63 beq s3,a5,c0003af0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:430 (discriminator 1) c0003ae0: 00055597 auipc a1,0x55 - c0003ae4: d8858593 addi a1,a1,-632 # c0058868 <__clz_tab+0x568> + c0003ae4: f5858593 addi a1,a1,-168 # c0058a38 <__clz_tab+0x568> c0003ae8: 8522 mv a0,s0 - c0003aea: 665520ef jal ra,c005694e + c0003aea: 034530ef jal ra,c0056b1e c0003aee: e119 bnez a0,c0003af4 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:431 empty_run++; @@ -9376,26 +9376,26 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:434 if (!strcmp(longopt, "memory-limit")) { c0003af4: 00055597 auipc a1,0x55 - c0003af8: d7c58593 addi a1,a1,-644 # c0058870 <__clz_tab+0x570> + c0003af8: f4c58593 addi a1,a1,-180 # c0058a40 <__clz_tab+0x570> c0003afc: 8522 mv a0,s0 - c0003afe: 651520ef jal ra,c005694e + c0003afe: 020530ef jal ra,c0056b1e c0003b02: ed15 bnez a0,c0003b3e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:435 if (optind >= argc) { - c0003b04: 236530ef jal ra,c0056d3a + c0003b04: 406530ef jal ra,c0056f0a c0003b08: 411c lw a5,0(a0) c0003b0a: 0147cb63 blt a5,s4,c0003b20 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:436 fprintf(stderr, "expecting memory limit"); c0003b0e: 4509 li a0,2 - c0003b10: 4d9510ef jal ra,c00557e8 + c0003b10: 6a9510ef jal ra,c00559b8 c0003b14: 85aa mv a1,a0 c0003b16: 00055517 auipc a0,0x55 - c0003b1a: d6a50513 addi a0,a0,-662 # c0058880 <__clz_tab+0x580> + c0003b1a: f3a50513 addi a0,a0,-198 # c0058a50 <__clz_tab+0x580> c0003b1e: b5c9 j c00039e0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:439 memory_limit = (size_t)strtod(argv[optind++], NULL); - c0003b20: 21a530ef jal ra,c0056d3a + c0003b20: 3ea530ef jal ra,c0056f0a c0003b24: 411c lw a5,0(a0) c0003b26: 4581 li a1,0 c0003b28: 0017871b addiw a4,a5,1 @@ -9403,7 +9403,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003b2e: c118 sw a4,0(a0) c0003b30: 97ca add a5,a5,s2 c0003b32: 6388 ld a0,0(a5) - c0003b34: 05d520ef jal ra,c0056390 + c0003b34: 22d520ef jal ra,c0056560 c0003b38: c2351dd3 fcvt.lu.d s11,fa0,rtz /Users/Luppy/riscv/quickjs-nuttx/qjs.c:440 continue; @@ -9411,26 +9411,26 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:442 if (!strcmp(longopt, "stack-size")) { c0003b3e: 00055597 auipc a1,0x55 - c0003b42: d5a58593 addi a1,a1,-678 # c0058898 <__clz_tab+0x598> + c0003b42: f2a58593 addi a1,a1,-214 # c0058a68 <__clz_tab+0x598> c0003b46: 8522 mv a0,s0 - c0003b48: 607520ef jal ra,c005694e + c0003b48: 7d7520ef jal ra,c0056b1e c0003b4c: ed15 bnez a0,c0003b88 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:443 if (optind >= argc) { - c0003b4e: 1ec530ef jal ra,c0056d3a + c0003b4e: 3bc530ef jal ra,c0056f0a c0003b52: 411c lw a5,0(a0) c0003b54: 0147cb63 blt a5,s4,c0003b6a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:444 fprintf(stderr, "expecting stack size"); c0003b58: 4509 li a0,2 - c0003b5a: 48f510ef jal ra,c00557e8 + c0003b5a: 65f510ef jal ra,c00559b8 c0003b5e: 85aa mv a1,a0 c0003b60: 00055517 auipc a0,0x55 - c0003b64: d4850513 addi a0,a0,-696 # c00588a8 <__clz_tab+0x5a8> + c0003b64: f1850513 addi a0,a0,-232 # c0058a78 <__clz_tab+0x5a8> c0003b68: bda5 j c00039e0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:447 stack_size = (size_t)strtod(argv[optind++], NULL); - c0003b6a: 1d0530ef jal ra,c0056d3a + c0003b6a: 3a0530ef jal ra,c0056f0a c0003b6e: 411c lw a5,0(a0) c0003b70: 4581 li a1,0 c0003b72: 0017871b addiw a4,a5,1 @@ -9438,7 +9438,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003b78: c118 sw a4,0(a0) c0003b7a: 97ca add a5,a5,s2 c0003b7c: 6388 ld a0,0(a5) - c0003b7e: 013520ef jal ra,c0056390 + c0003b7e: 1e3520ef jal ra,c0056560 c0003b82: c2351d53 fcvt.lu.d s10,fa0,rtz /Users/Luppy/riscv/quickjs-nuttx/qjs.c:448 continue; @@ -9451,19 +9451,19 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003b8a: 00098c63 beqz s3,c0003ba2 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:451 fprintf(stderr, "qjs: unknown option '-%c'\n", opt); - c0003b8e: 45b510ef jal ra,c00557e8 + c0003b8e: 62b510ef jal ra,c00559b8 c0003b92: 864e mv a2,s3 c0003b94: 00055597 auipc a1,0x55 - c0003b98: d2c58593 addi a1,a1,-724 # c00588c0 <__clz_tab+0x5c0> - c0003b9c: 33d510ef jal ra,c00556d8 + c0003b98: efc58593 addi a1,a1,-260 # c0058a90 <__clz_tab+0x5c0> + c0003b9c: 50d510ef jal ra,c00558a8 c0003ba0: bbad j c000391a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:453 fprintf(stderr, "qjs: unknown option '--%s'\n", longopt); - c0003ba2: 447510ef jal ra,c00557e8 + c0003ba2: 617510ef jal ra,c00559b8 c0003ba6: 8622 mv a2,s0 c0003ba8: 00055597 auipc a1,0x55 - c0003bac: d3858593 addi a1,a1,-712 # c00588e0 <__clz_tab+0x5e0> - c0003bb0: 329510ef jal ra,c00556d8 + c0003bac: f0858593 addi a1,a1,-248 # c0058ab0 <__clz_tab+0x5e0> + c0003bb0: 4f9510ef jal ra,c00558a8 c0003bb4: b39d j c000391a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:397 module = 1; @@ -9487,16 +9487,16 @@ js_trace_malloc_init(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:212 free(s->base = malloc(8)); c0003bca: 4521 li a0,8 - c0003bcc: 2384f0ef jal ra,c0052e04 + c0003bcc: 4084f0ef jal ra,c0052fd4 c0003bd0: f82a sd a0,48(sp) - c0003bd2: 2264f0ef jal ra,c0052df8 + c0003bd2: 3f64f0ef jal ra,c0052fc8 main(): /Users/Luppy/riscv/quickjs-nuttx/qjs.c:467 rt = JS_NewRuntime2(&trace_mf, &trace_data); c0003bd6: 180c addi a1,sp,48 c0003bd8: 00055517 auipc a0,0x55 - c0003bdc: ea050513 addi a0,a0,-352 # c0058a78 - c0003be0: 5a9050ef jal ra,c0009988 + c0003bdc: 07050513 addi a0,a0,112 # c0058c48 + c0003be0: 697050ef jal ra,c0009a76 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:471 _d("main: expr3="); _d(debug_expr); _d("\n"); //// c0003be4: 4631 li a2,12 @@ -9506,53 +9506,53 @@ _d("main: expr3="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:471 _d("main: expr3="); _d(debug_expr); _d("\n"); //// c0003be8: 00055597 auipc a1,0x55 - c0003bec: d1858593 addi a1,a1,-744 # c0058900 <__clz_tab+0x600> + c0003bec: ee858593 addi a1,a1,-280 # c0058ad0 <__clz_tab+0x600> c0003bf0: 4505 li a0,1 - c0003bf2: 257530ef jal ra,c0057648 + c0003bf2: 427530ef jal ra,c0057818 c0003bf6: 600c ld a1,0(s0) c0003bf8: 852e mv a0,a1 c0003bfa: e82e sd a1,16(sp) - c0003bfc: 5b5520ef jal ra,c00569b0 + c0003bfc: 785520ef jal ra,c0056b80 c0003c00: 65c2 ld a1,16(sp) c0003c02: 862a mv a2,a0 c0003c04: 4505 li a0,1 - c0003c06: 243530ef jal ra,c0057648 + c0003c06: 413530ef jal ra,c0057818 c0003c0a: 4605 li a2,1 c0003c0c: 0006d597 auipc a1,0x6d - c0003c10: f3458593 addi a1,a1,-204 # c0070b40 + c0003c10: 19458593 addi a1,a1,404 # c0070da0 c0003c14: 4505 li a0,1 - c0003c16: 233530ef jal ra,c0057648 + c0003c16: 403530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:472 if (!rt) { c0003c1a: e891 bnez s1,c0003c2e /Users/Luppy/riscv/quickjs-nuttx/qjs.c:473 fprintf(stderr, "qjs: cannot allocate JS runtime\n"); c0003c1c: 4509 li a0,2 - c0003c1e: 3cb510ef jal ra,c00557e8 + c0003c1e: 59b510ef jal ra,c00559b8 c0003c22: 85aa mv a1,a0 c0003c24: 00055517 auipc a0,0x55 - c0003c28: cec50513 addi a0,a0,-788 # c0058910 <__clz_tab+0x610> + c0003c28: ebc50513 addi a0,a0,-324 # c0058ae0 <__clz_tab+0x610> c0003c2c: bbad j c00039a6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:476 _d("main: expr4="); _d(debug_expr); _d("\n"); //// c0003c2e: 4631 li a2,12 c0003c30: 00055597 auipc a1,0x55 - c0003c34: d0858593 addi a1,a1,-760 # c0058938 <__clz_tab+0x638> + c0003c34: ed858593 addi a1,a1,-296 # c0058b08 <__clz_tab+0x638> c0003c38: 4505 li a0,1 - c0003c3a: 20f530ef jal ra,c0057648 + c0003c3a: 3df530ef jal ra,c0057818 c0003c3e: 600c ld a1,0(s0) c0003c40: 852e mv a0,a1 c0003c42: e82e sd a1,16(sp) - c0003c44: 56d520ef jal ra,c00569b0 + c0003c44: 73d520ef jal ra,c0056b80 c0003c48: 65c2 ld a1,16(sp) c0003c4a: 862a mv a2,a0 c0003c4c: 4505 li a0,1 - c0003c4e: 1fb530ef jal ra,c0057648 + c0003c4e: 3cb530ef jal ra,c0057818 c0003c52: 4605 li a2,1 c0003c54: 0006d597 auipc a1,0x6d - c0003c58: eec58593 addi a1,a1,-276 # c0070b40 + c0003c58: 14c58593 addi a1,a1,332 # c0070da0 c0003c5c: 4505 li a0,1 - c0003c5e: 1eb530ef jal ra,c0057648 + c0003c5e: 3bb530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:477 if (memory_limit != 0) c0003c62: 000d8663 beqz s11,c0003c6e @@ -9560,27 +9560,27 @@ _d("main: expr4="); _d(debug_expr); _d("\n"); //// JS_SetMemoryLimit(rt, memory_limit); c0003c66: 85ee mv a1,s11 c0003c68: 8526 mv a0,s1 - c0003c6a: 228030ef jal ra,c0006e92 + c0003c6a: 316030ef jal ra,c0006f80 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:479 _d("main: expr5="); _d(debug_expr); _d("\n"); //// c0003c6e: 4631 li a2,12 c0003c70: 00055597 auipc a1,0x55 - c0003c74: cd858593 addi a1,a1,-808 # c0058948 <__clz_tab+0x648> + c0003c74: ea858593 addi a1,a1,-344 # c0058b18 <__clz_tab+0x648> c0003c78: 4505 li a0,1 - c0003c7a: 1cf530ef jal ra,c0057648 + c0003c7a: 39f530ef jal ra,c0057818 c0003c7e: 600c ld a1,0(s0) c0003c80: 852e mv a0,a1 c0003c82: e82e sd a1,16(sp) - c0003c84: 52d520ef jal ra,c00569b0 + c0003c84: 6fd520ef jal ra,c0056b80 c0003c88: 65c2 ld a1,16(sp) c0003c8a: 862a mv a2,a0 c0003c8c: 4505 li a0,1 - c0003c8e: 1bb530ef jal ra,c0057648 + c0003c8e: 38b530ef jal ra,c0057818 c0003c92: 4605 li a2,1 c0003c94: 0006d597 auipc a1,0x6d - c0003c98: eac58593 addi a1,a1,-340 # c0070b40 + c0003c98: 10c58593 addi a1,a1,268 # c0070da0 c0003c9c: 4505 li a0,1 - c0003c9e: 1ab530ef jal ra,c0057648 + c0003c9e: 37b530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:480 if (stack_size != 0) c0003ca2: 000d0663 beqz s10,c0003cae @@ -9588,76 +9588,76 @@ _d("main: expr5="); _d(debug_expr); _d("\n"); //// JS_SetMaxStackSize(rt, stack_size); c0003ca6: 85ea mv a1,s10 c0003ca8: 8526 mv a0,s1 - c0003caa: 278030ef jal ra,c0006f22 + c0003caa: 366030ef jal ra,c0007010 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:482 _d("main: expr6="); _d(debug_expr); _d("\n"); //// c0003cae: 4631 li a2,12 c0003cb0: 00055597 auipc a1,0x55 - c0003cb4: ca858593 addi a1,a1,-856 # c0058958 <__clz_tab+0x658> + c0003cb4: e7858593 addi a1,a1,-392 # c0058b28 <__clz_tab+0x658> c0003cb8: 4505 li a0,1 - c0003cba: 18f530ef jal ra,c0057648 + c0003cba: 35f530ef jal ra,c0057818 c0003cbe: 600c ld a1,0(s0) c0003cc0: 852e mv a0,a1 c0003cc2: e82e sd a1,16(sp) - c0003cc4: 4ed520ef jal ra,c00569b0 + c0003cc4: 6bd520ef jal ra,c0056b80 c0003cc8: 65c2 ld a1,16(sp) c0003cca: 862a mv a2,a0 c0003ccc: 4505 li a0,1 - c0003cce: 17b530ef jal ra,c0057648 + c0003cce: 34b530ef jal ra,c0057818 c0003cd2: 4605 li a2,1 c0003cd4: 0006d597 auipc a1,0x6d - c0003cd8: e6c58593 addi a1,a1,-404 # c0070b40 + c0003cd8: 0cc58593 addi a1,a1,204 # c0070da0 c0003cdc: 4505 li a0,1 - c0003cde: 16b530ef jal ra,c0057648 + c0003cde: 33b530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:483 js_std_set_worker_new_context_func(JS_NewCustomContext); c0003ce2: 00000517 auipc a0,0x0 c0003ce6: 8a850513 addi a0,a0,-1880 # c000358a - c0003cea: 5fc480ef jal ra,c004c2e6 + c0003cea: 7cc480ef jal ra,c004c4b6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:484 _d("main: expr7="); _d(debug_expr); _d("\n"); //// c0003cee: 4631 li a2,12 c0003cf0: 00055597 auipc a1,0x55 - c0003cf4: c7858593 addi a1,a1,-904 # c0058968 <__clz_tab+0x668> + c0003cf4: e4858593 addi a1,a1,-440 # c0058b38 <__clz_tab+0x668> c0003cf8: 4505 li a0,1 - c0003cfa: 14f530ef jal ra,c0057648 + c0003cfa: 31f530ef jal ra,c0057818 c0003cfe: 600c ld a1,0(s0) c0003d00: 852e mv a0,a1 c0003d02: e82e sd a1,16(sp) - c0003d04: 4ad520ef jal ra,c00569b0 + c0003d04: 67d520ef jal ra,c0056b80 c0003d08: 65c2 ld a1,16(sp) c0003d0a: 862a mv a2,a0 c0003d0c: 4505 li a0,1 - c0003d0e: 13b530ef jal ra,c0057648 + c0003d0e: 30b530ef jal ra,c0057818 c0003d12: 4605 li a2,1 c0003d14: 0006d597 auipc a1,0x6d - c0003d18: e2c58593 addi a1,a1,-468 # c0070b40 + c0003d18: 08c58593 addi a1,a1,140 # c0070da0 c0003d1c: 4505 li a0,1 - c0003d1e: 12b530ef jal ra,c0057648 + c0003d1e: 2fb530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:485 js_std_init_handlers(rt); c0003d22: 8526 mv a0,s1 - c0003d24: 74e480ef jal ra,c004c472 + c0003d24: 11f480ef jal ra,c004c642 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:486 _d("main: expr8="); _d(debug_expr); _d("\n"); //// c0003d28: 4631 li a2,12 c0003d2a: 00055597 auipc a1,0x55 - c0003d2e: c4e58593 addi a1,a1,-946 # c0058978 <__clz_tab+0x678> + c0003d2e: e1e58593 addi a1,a1,-482 # c0058b48 <__clz_tab+0x678> c0003d32: 4505 li a0,1 - c0003d34: 115530ef jal ra,c0057648 + c0003d34: 2e5530ef jal ra,c0057818 c0003d38: 600c ld a1,0(s0) c0003d3a: 852e mv a0,a1 c0003d3c: e82e sd a1,16(sp) - c0003d3e: 473520ef jal ra,c00569b0 + c0003d3e: 643520ef jal ra,c0056b80 c0003d42: 65c2 ld a1,16(sp) c0003d44: 862a mv a2,a0 c0003d46: 4505 li a0,1 - c0003d48: 101530ef jal ra,c0057648 + c0003d48: 2d1530ef jal ra,c0057818 c0003d4c: 4605 li a2,1 c0003d4e: 0006d597 auipc a1,0x6d - c0003d52: df258593 addi a1,a1,-526 # c0070b40 + c0003d52: 05258593 addi a1,a1,82 # c0070da0 c0003d56: 4505 li a0,1 - c0003d58: 0f1530ef jal ra,c0057648 + c0003d58: 2c1530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:488 ctx = JS_NewCustomContext(rt); c0003d5c: 8526 mv a0,s1 @@ -9671,32 +9671,32 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:489 _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003d66: 00055597 auipc a1,0x55 - c0003d6a: c2258593 addi a1,a1,-990 # c0058988 <__clz_tab+0x688> + c0003d6a: df258593 addi a1,a1,-526 # c0058b58 <__clz_tab+0x688> c0003d6e: 4505 li a0,1 - c0003d70: 0d9530ef jal ra,c0057648 + c0003d70: 2a9530ef jal ra,c0057818 c0003d74: 600c ld a1,0(s0) c0003d76: 852e mv a0,a1 c0003d78: e82e sd a1,16(sp) - c0003d7a: 437520ef jal ra,c00569b0 + c0003d7a: 607520ef jal ra,c0056b80 c0003d7e: 65c2 ld a1,16(sp) c0003d80: 862a mv a2,a0 c0003d82: 4505 li a0,1 - c0003d84: 0c5530ef jal ra,c0057648 + c0003d84: 295530ef jal ra,c0057818 c0003d88: 4605 li a2,1 c0003d8a: 0006d597 auipc a1,0x6d - c0003d8e: db658593 addi a1,a1,-586 # c0070b40 + c0003d8e: 01658593 addi a1,a1,22 # c0070da0 c0003d92: 4505 li a0,1 - c0003d94: 0b5530ef jal ra,c0057648 + c0003d94: 285530ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:491 if (!ctx) { c0003d98: 00099b63 bnez s3,c0003dae /Users/Luppy/riscv/quickjs-nuttx/qjs.c:492 fprintf(stderr, "qjs: cannot allocate JS context\n"); c0003d9c: 4509 li a0,2 - c0003d9e: 24b510ef jal ra,c00557e8 + c0003d9e: 41b510ef jal ra,c00559b8 c0003da2: 85aa mv a1,a0 c0003da4: 00055517 auipc a0,0x55 - c0003da8: bf450513 addi a0,a0,-1036 # c0058998 <__clz_tab+0x698> + c0003da8: dc450513 addi a0,a0,-572 # c0058b68 <__clz_tab+0x698> c0003dac: beed j c00039a6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:497 } @@ -9705,10 +9705,10 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// JS_SetModuleLoaderFunc(rt, NULL, js_module_loader, NULL); c0003dae: 4681 li a3,0 c0003db0: 00048617 auipc a2,0x48 - c0003db4: 39c60613 addi a2,a2,924 # c004c14c + c0003db4: 56c60613 addi a2,a2,1388 # c004c31c c0003db8: 4581 li a1,0 c0003dba: 8526 mv a0,s1 - c0003dbc: 0da070ef jal ra,c000ae96 + c0003dbc: 1c8070ef jal ra,c000af84 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:499 if (dump_unhandled_promise_rejection) { @@ -9718,9 +9718,9 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// JS_SetHostPromiseRejectionTracker(rt, js_std_promise_rejection_tracker, c0003dc4: 4601 li a2,0 c0003dc6: 00049597 auipc a1,0x49 - c0003dca: be058593 addi a1,a1,-1056 # c004c9a6 + c0003dca: db058593 addi a1,a1,-592 # c004cb76 c0003dce: 8526 mv a0,s1 - c0003dd0: 1b6070ef jal ra,c000af86 + c0003dd0: 2a4070ef jal ra,c000b074 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:504 NULL); } @@ -9734,17 +9734,17 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// } #endif js_std_add_helpers(ctx, argc - optind, argv + optind); - c0003dd8: 763520ef jal ra,c0056d3a + c0003dd8: 132530ef jal ra,c0056f0a c0003ddc: 410c lw a1,0(a0) c0003dde: 40ba05bb subw a1,s4,a1 c0003de2: e82e sd a1,16(sp) - c0003de4: 757520ef jal ra,c0056d3a + c0003de4: 126530ef jal ra,c0056f0a c0003de8: 4110 lw a2,0(a0) c0003dea: 65c2 ld a1,16(sp) c0003dec: 854e mv a0,s3 c0003dee: 060e slli a2,a2,0x3 c0003df0: 964a add a2,a2,s2 - c0003df2: 548480ef jal ra,c004c33a + c0003df2: 718480ef jal ra,c004c50a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:513 /* make 'std' and 'os' visible to non module code */ @@ -9759,10 +9759,10 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// eval_buf(ctx, str, strlen(str), "", JS_EVAL_TYPE_MODULE); c0003dfa: 4705 li a4,1 c0003dfc: 00055697 auipc a3,0x55 - c0003e00: bc468693 addi a3,a3,-1084 # c00589c0 <__clz_tab+0x6c0> + c0003e00: d9468693 addi a3,a3,-620 # c0058b90 <__clz_tab+0x6c0> c0003e04: 06000613 li a2,96 c0003e08: 00055597 auipc a1,0x55 - c0003e0c: bc058593 addi a1,a1,-1088 # c00589c8 <__clz_tab+0x6c8> + c0003e0c: d9058593 addi a1,a1,-624 # c0058b98 <__clz_tab+0x6c8> c0003e10: 854e mv a0,s3 c0003e12: 825ff0ef jal ra,c0003636 c0003e16: 12010d13 addi s10,sp,288 @@ -9784,11 +9784,11 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:527 if (eval_buf(ctx, expr, strlen(expr), "", 0)) c0003e24: 855e mv a0,s7 - c0003e26: 38b520ef jal ra,c00569b0 + c0003e26: 55b520ef jal ra,c0056b80 c0003e2a: 0005061b sext.w a2,a0 c0003e2e: 4701 li a4,0 c0003e30: 00055697 auipc a3,0x55 - c0003e34: c0068693 addi a3,a3,-1024 # c0058a30 <__clz_tab+0x730> + c0003e34: dd068693 addi a3,a3,-560 # c0058c00 <__clz_tab+0x730> c0003e38: 85de mv a1,s7 c0003e3a: 854e mv a0,s3 c0003e3c: ffaff0ef jal ra,c0003636 @@ -9807,7 +9807,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// } js_std_loop(ctx); c0003e4a: 854e mv a0,s3 - c0003e4c: 395480ef jal ra,c004c9e0 + c0003e4c: 565480ef jal ra,c004cbb0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:545 } @@ -9818,27 +9818,27 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// JS_ComputeMemoryUsage(rt, &stats); c0003e54: 088c addi a1,sp,80 c0003e56: 8526 mv a0,s1 - c0003e58: 571050ef jal ra,c0009bc8 + c0003e58: 65f050ef jal ra,c0009cb6 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:548 JS_DumpMemoryUsage(stdout, &stats, rt); c0003e5c: 4505 li a0,1 - c0003e5e: 18b510ef jal ra,c00557e8 + c0003e5e: 35b510ef jal ra,c00559b8 c0003e62: 8626 mv a2,s1 c0003e64: 088c addi a1,sp,80 - c0003e66: 3d6060ef jal ra,c000a23c + c0003e66: 4c4060ef jal ra,c000a32a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:550 } js_std_free_handlers(rt); c0003e6a: 8526 mv a0,s1 - c0003e6c: 69c480ef jal ra,c004c508 + c0003e6c: 06d480ef jal ra,c004c6d8 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:551 JS_FreeContext(ctx); c0003e70: 854e mv a0,s3 - c0003e72: 1e4040ef jal ra,c0008056 + c0003e72: 2d2040ef jal ra,c0008144 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:552 JS_FreeRuntime(rt); c0003e76: 8526 mv a0,s1 - c0003e78: 201050ef jal ra,c0009878 + c0003e78: 2ef050ef jal ra,c0009966 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:554 if (empty_run && dump_memory) { @@ -9861,46 +9861,46 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:569 double ms = 1000.0 * (t[j] - t[j - 1]) / CLOCKS_PER_SEC; c0003e8c: 00071797 auipc a5,0x71 - c0003e90: 8f47b407 fld fs0,-1804(a5) # c0074780 <_erodata> + c0003e90: b547b407 fld fs0,-1196(a5) # c00749e0 <_erodata> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:558 for (i = 0; i < 100; i++) { c0003e94: 06400993 li s3,100 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:559 t[0] = clock(); - c0003e98: 40c530ef jal ra,c00572a4 + c0003e98: 5dc530ef jal ra,c0057474 c0003e9c: dc2a sw a0,56(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:560 rt = JS_NewRuntime(); - c0003e9e: 4fb050ef jal ra,c0009b98 + c0003e9e: 5e9050ef jal ra,c0009c86 c0003ea2: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:561 t[1] = clock(); - c0003ea4: 400530ef jal ra,c00572a4 + c0003ea4: 5d0530ef jal ra,c0057474 c0003ea8: de2a sw a0,60(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:562 ctx = JS_NewContext(rt); c0003eaa: 8526 mv a0,s1 - c0003eac: 10a3f0ef jal ra,c0042fb6 + c0003eac: 2da3f0ef jal ra,c0043186 c0003eb0: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:563 t[2] = clock(); - c0003eb2: 3f2530ef jal ra,c00572a4 + c0003eb2: 5c2530ef jal ra,c0057474 c0003eb6: c0aa sw a0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:564 JS_FreeContext(ctx); c0003eb8: 854a mv a0,s2 - c0003eba: 19c040ef jal ra,c0008056 + c0003eba: 28a040ef jal ra,c0008144 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:565 t[3] = clock(); - c0003ebe: 3e6530ef jal ra,c00572a4 + c0003ebe: 5b6530ef jal ra,c0057474 c0003ec2: c2aa sw a0,68(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:566 JS_FreeRuntime(rt); c0003ec4: 8526 mv a0,s1 - c0003ec6: 1b3050ef jal ra,c0009878 + c0003ec6: 2a1050ef jal ra,c0009966 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:567 t[4] = clock(); - c0003eca: 3da530ef jal ra,c00572a4 + c0003eca: 5aa530ef jal ra,c0057474 c0003ece: c4aa sw a0,72(sp) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:568 for (j = 4; j > 0; j--) { @@ -9951,7 +9951,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003f14: e2060753 fmv.x.d a4,fa2 c0003f18: e20686d3 fmv.x.d a3,fa3 c0003f1c: 00055517 auipc a0,0x55 - c0003f20: b2450513 addi a0,a0,-1244 # c0058a40 <__clz_tab+0x740> + c0003f20: cf450513 addi a0,a0,-780 # c0058c10 <__clz_tab+0x740> /Users/Luppy/riscv/quickjs-nuttx/qjs.c:578 return 0; c0003f24: 4a81 li s5,0 @@ -9962,7 +9962,7 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// printf("\nInstantiation times (ms): %.3f = %.3f+%.3f+%.3f+%.3f\n", c0003f2a: 02e7f7d3 fadd.d fa5,fa5,fa4 c0003f2e: e20785d3 fmv.x.d a1,fa5 - c0003f32: 26a500ef jal ra,c005419c + c0003f32: 43a500ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:584 fail: js_std_free_handlers(rt); @@ -10001,22 +10001,22 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// c0003f88: bd51 j c0003e1c /Users/Luppy/riscv/quickjs-nuttx/qjs.c:530 if (optind >= argc) { - c0003f8a: 5b1520ef jal ra,c0056d3a + c0003f8a: 781520ef jal ra,c0056f0a c0003f8e: 411c lw a5,0(a0) c0003f90: 0147cf63 blt a5,s4,c0003fae /Users/Luppy/riscv/quickjs-nuttx/qjs.c:540 js_std_eval_binary(ctx, qjsc_repl, qjsc_repl_size, 0); c0003f94: 4681 li a3,0 c0003f96: 00071617 auipc a2,0x71 - c0003f9a: 9d266603 lwu a2,-1582(a2) # c0074968 + c0003f9a: c3266603 lwu a2,-974(a2) # c0074bc8 c0003f9e: 00055597 auipc a1,0x55 - c0003fa2: afa58593 addi a1,a1,-1286 # c0058a98 + c0003fa2: cca58593 addi a1,a1,-822 # c0058c68 c0003fa6: 854e mv a0,s3 - c0003fa8: 417480ef jal ra,c004cbbe + c0003fa8: 5e7480ef jal ra,c004cd8e c0003fac: bd79 j c0003e4a /Users/Luppy/riscv/quickjs-nuttx/qjs.c:535 filename = argv[optind]; - c0003fae: 58d520ef jal ra,c0056d3a + c0003fae: 75d520ef jal ra,c0056f0a c0003fb2: 410c lw a1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/qjs.c:536 if (eval_file(ctx, filename, module)) @@ -10034,15 +10034,15 @@ _d("main: expr9="); _d(debug_expr); _d("\n"); //// /Users/Luppy/riscv/quickjs-nuttx/qjs.c:580 js_std_free_handlers(rt); c0003fc6: 8526 mv a0,s1 - c0003fc8: 540480ef jal ra,c004c508 + c0003fc8: 710480ef jal ra,c004c6d8 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:581 JS_FreeContext(ctx); c0003fcc: 854e mv a0,s3 - c0003fce: 088040ef jal ra,c0008056 + c0003fce: 176040ef jal ra,c0008144 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:582 JS_FreeRuntime(rt); c0003fd2: 8526 mv a0,s1 - c0003fd4: 0a5050ef jal ra,c0009878 + c0003fd4: 193050ef jal ra,c0009966 /Users/Luppy/riscv/quickjs-nuttx/qjs.c:583 return 1; c0003fd8: 4a85 li s5,1 @@ -10217,23 +10217,23 @@ static void *js_bf_realloc(void *opaque, void *ptr, size_t size) 00000000c000407a : invalid_from_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1571 } static JSValue invalid_from_string(JSContext *ctx, const char *buf, int radix, int flags, slimb_t *pexponent) { return JS_NAN; - c000407a: 00070797 auipc a5,0x70 - c000407e: 70e7b787 fld fa5,1806(a5) # c0074788 <_erodata+0x8> + c000407a: 00071797 auipc a5,0x71 + c000407e: 96e7b787 fld fa5,-1682(a5) # c00749e8 <_erodata+0x8> c0004082: 12f7f7d3 fmul.d fa5,fa5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1572 } c0004086: f2000753 fmv.d.x fa4,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1570 { c000408a: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1572 } c000408c: 459d li a1,7 c000408e: 0141 addi sp,sp,16 @@ -10243,7 +10243,7 @@ static JSValue invalid_from_string(JSContext *ctx, const char *buf, 00000000c000409a : is_strict_mode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2391 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2399 update_stack_limit(rt); } @@ -10252,22 +10252,22 @@ static inline BOOL is_strict_mode(JSContext *ctx) JSStackFrame *sf = ctx->rt->current_stack_frame; c000409a: 6d1c ld a5,24(a0) c000409c: 7ffc ld a5,248(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2400 return (sf && (sf->js_mode & JS_MODE_STRICT)); c000409e: c781 beqz a5,c00040a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2392 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2400 (discriminator 1) c00040a0: 43e8 lw a0,68(a5) c00040a2: 8905 andi a0,a0,1 c00040a4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2400 c00040a6: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2401 } c00040a8: 8082 ret 00000000c00040aa : is_num_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2461 { uint32_t n; uint64_t n64; @@ -10278,54 +10278,54 @@ is_num_string(): c00040ac: 800007b7 lui a5,0x80000 c00040b0: fff7c693 not a3,a5 c00040b4: 8f75 and a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2462 if (len == 0 || len > 10) c00040b6: 00d707bb addw a5,a4,a3 c00040ba: 8ff5 and a5,a5,a3 c00040bc: 2781 sext.w a5,a5 c00040be: 46a5 li a3,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2456 { c00040c0: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2462 if (len == 0 || len > 10) c00040c2: 08f6e163 bltu a3,a5,c0004144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2456 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2464 return FALSE; if (p->is_wide_char) c00040c6: 0045a803 lw a6,4(a1) c00040ca: 04085d63 bgez a6,c0004124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2465 c = p->u.str16[0]; c00040ce: 0105d683 lhu a3,16(a1) is_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2443 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2451 return c >= '0' && c <= '9'; c00040d2: fd06879b addiw a5,a3,-48 is_num_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2468 else c = p->u.str8[0]; if (is_num(c)) { c00040d6: 48a5 li a7,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2463 return FALSE; c00040d8: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2468 if (is_num(c)) { c00040da: 06f8e663 bltu a7,a5,c0004146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2469 if (c == '0') { c00040de: 03000513 li a0,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2461 len = p->len; c00040e2: 0007089b sext.w a7,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2469 if (c == '0') { c00040e6: 04a68263 beq a3,a0,c000412a c00040ea: 01258513 addi a0,a1,18 c00040ee: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2480 for(i = 1; i < len; i++) { if (p->is_wide_char) c = p->u.str16[i]; @@ -10333,81 +10333,81 @@ is_num_string(): c = p->u.str8[i]; if (!is_num(c)) c00040f0: 4325 li t1,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2482 return FALSE; n64 = (uint64_t)n * 10 + (c - '0'); c00040f2: 4e29 li t3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2467 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2475 (discriminator 1) for(i = 1; i < len; i++) { c00040f4: 0006871b sext.w a4,a3 c00040f8: 03175e63 bge a4,a7,c0004134 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2476 if (p->is_wide_char) c00040fc: 02085f63 bgez a6,c000413a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2469 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2477 c = p->u.str16[i]; c0004100: 00055703 lhu a4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2480 if (!is_num(c)) c0004104: fd07071b addiw a4,a4,-48 c0004108: 02e36e63 bltu t1,a4,c0004144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2482 n64 = (uint64_t)n * 10 + (c - '0'); c000410c: 1782 slli a5,a5,0x20 c000410e: 9381 srli a5,a5,0x20 c0004110: 03c787b3 mul a5,a5,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2483 if ((n64 >> 32) != 0) c0004114: 0685 addi a3,a3,1 c0004116: 0509 addi a0,a0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2482 n64 = (uint64_t)n * 10 + (c - '0'); c0004118: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2483 if ((n64 >> 32) != 0) c000411a: 0207d713 srli a4,a5,0x20 c000411e: e31d bnez a4,c0004144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2477 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2485 (discriminator 2) return FALSE; n = n64; c0004120: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2467 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2475 (discriminator 2) for(i = 1; i < len; i++) { c0004122: bfc9 j c00040f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2459 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2467 c = p->u.str8[0]; c0004124: 0105c683 lbu a3,16(a1) c0004128: b76d j c00040d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2470 if (len != 1) c000412a: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2463 return FALSE; c000412c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2470 if (len != 1) c000412e: 00f71c63 bne a4,a5,c0004146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2472 n = 0; c0004132: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2488 } } *pval = n; c0004134: c21c sw a5,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2481 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2489 return TRUE; c0004136: 4505 li a0,1 c0004138: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2479 c = p->u.str8[i]; c000413a: 00d58733 add a4,a1,a3 c000413e: 01074703 lbu a4,16(a4) # ff0010 <__clzdi2-0xbf00fff0> c0004142: b7c9 j c0004104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2463 return FALSE; c0004144: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2485 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2493 } else { return FALSE; } @@ -10416,7 +10416,7 @@ is_num_string(): 00000000c0004148 : JS_IsEmptyString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3421 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3429 snprintf(buf, sizeof(buf), "%u", n); return js_atom_concat_str(ctx, name, buf); } @@ -10426,27 +10426,27 @@ static inline BOOL JS_IsEmptyString(JSValueConst v) c0004148: 1141 addi sp,sp,-16 c000414a: e42e sd a1,8(sp) c000414c: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3430 return JS_VALUE_GET_TAG(v) == JS_TAG_STRING && JS_VALUE_GET_STRING(v)->len == 0; c000414e: 2581 sext.w a1,a1 c0004150: 57e5 li a5,-7 c0004152: 00f59863 bne a1,a5,c0004162 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3422 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3430 (discriminator 1) c0004156: 4148 lw a0,4(a0) c0004158: 1506 slli a0,a0,0x21 c000415a: 00153513 seqz a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3423 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3431 (discriminator 6) } c000415e: 0141 addi sp,sp,16 c0004160: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3430 return JS_VALUE_GET_TAG(v) == JS_TAG_STRING && JS_VALUE_GET_STRING(v)->len == 0; c0004162: 4501 li a0,0 c0004164: bfed j c000415e 00000000c0004166 : string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 } return string_buffer_putc16(s, c); } @@ -10455,22 +10455,22 @@ static int string_get(const JSString *p, int idx) { return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; c0004166: 415c lw a5,4(a0) c0004168: 0007d863 bgez a5,c0004178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 (discriminator 1) c000416c: 05a1 addi a1,a1,8 c000416e: 0586 slli a1,a1,0x1 c0004170: 952e add a0,a0,a1 c0004172: 00055503 lhu a0,0(a0) c0004176: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 (discriminator 2) c0004178: 952e add a0,a0,a1 c000417a: 01054503 lbu a0,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3753 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3761 (discriminator 2) } c000417e: 8082 ret 00000000c0004180 : string_getc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3767 static int string_getc(const JSString *p, int *pidx) { @@ -10478,56 +10478,56 @@ static int string_getc(const JSString *p, int *pidx) idx = *pidx; if (p->is_wide_char) { c0004180: 4158 lw a4,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3766 idx = *pidx; c0004182: 0005a803 lw a6,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3764 { c0004186: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3767 if (p->is_wide_char) { c0004188: 0007069b sext.w a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3768 c = p->u.str16[idx++]; c000418c: 0018061b addiw a2,a6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3767 if (p->is_wide_char) { c0004190: 0606d363 bgez a3,c00041f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3768 c = p->u.str16[idx++]; c0004194: 00880693 addi a3,a6,8 c0004198: 0686 slli a3,a3,0x1 c000419a: 96aa add a3,a3,a0 c000419c: 0006d883 lhu a7,0(a3) # ff0000 <__clzdi2-0xbf010000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3769 if (c >= 0xd800 && c < 0xdc00 && idx < p->len) { c00041a0: 76cd lui a3,0xffff3 c00041a2: 8006869b addiw a3,a3,-2048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3768 c = p->u.str16[idx++]; c00041a6: 0008851b sext.w a0,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3769 if (c >= 0xd800 && c < 0xdc00 && idx < p->len) { c00041aa: 011686bb addw a3,a3,a7 c00041ae: 3ff00893 li a7,1023 c00041b2: 04d8e063 bltu a7,a3,c00041f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3761 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3769 (discriminator 1) c00041b6: 1706 slli a4,a4,0x21 c00041b8: 9305 srli a4,a4,0x21 c00041ba: 02e65c63 bge a2,a4,c00041f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3770 c1 = p->u.str16[idx]; c00041be: 00860713 addi a4,a2,8 c00041c2: 0706 slli a4,a4,0x1 c00041c4: 97ba add a5,a5,a4 c00041c6: 0007d783 lhu a5,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3763 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3771 if (c1 >= 0xdc00 && c1 < 0xe000) { c00041ca: 7749 lui a4,0xffff2 c00041cc: 4007071b addiw a4,a4,1024 c00041d0: 9f3d addw a4,a4,a5 c00041d2: 02e8e063 bltu a7,a4,c00041f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3772 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; c00041d6: 00100737 lui a4,0x100 c00041da: 00a5151b slliw a0,a0,0xa @@ -10537,10 +10537,10 @@ static int string_getc(const JSString *p, int *pidx) c00041e8: 8d5d or a0,a0,a5 c00041ea: 67c1 lui a5,0x10 c00041ec: 9d3d addw a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3765 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3773 idx++; c00041ee: 0028061b addiw a2,a6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3771 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3779 } } } else { @@ -10548,11 +10548,11 @@ static int string_getc(const JSString *p, int *pidx) } *pidx = idx; c00041f2: c190 sw a2,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3773 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3781 return c; } c00041f4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3777 c = p->u.str8[idx++]; c00041f6: 010507b3 add a5,a0,a6 c00041fa: 0107c503 lbu a0,16(a5) # 10010 <__clzdi2-0xbffefff0> @@ -10560,7 +10560,7 @@ static int string_getc(const JSString *p, int *pidx) 00000000c0004200 : get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 } /* truncate the shape hash to 'hash_bits' bits */ @@ -10573,7 +10573,7 @@ static uint32_t get_shape_hash(uint32_t h, int hash_bits) c000420c: 4ddc lw a5,28(a1) c000420e: 00e7d7bb srlw a5,a5,a4 js_shape_hash_link(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4381 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4389 static void js_shape_hash_link(JSRuntime *rt, JSShape *sh) { @@ -10586,23 +10586,23 @@ static void js_shape_hash_link(JSRuntime *rt, JSShape *sh) c000421e: 973e add a4,a4,a5 c0004220: 6318 ld a4,0(a4) c0004222: f998 sd a4,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4390 rt->shape_hash[h] = sh; c0004224: 18853703 ld a4,392(a0) c0004228: 97ba add a5,a5,a4 c000422a: e38c sd a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4383 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4391 rt->shape_hash_count++; c000422c: 18052783 lw a5,384(a0) c0004230: 2785 addiw a5,a5,1 c0004232: 18f52023 sw a5,384(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4392 } c0004236: 8082 ret 00000000c0004238 : get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); c0004238: 17852783 lw a5,376(a0) c000423c: 02000713 li a4,32 @@ -10610,7 +10610,7 @@ get_shape_hash(): c0004242: 4ddc lw a5,28(a1) c0004244: 00e7d7bb srlw a5,a5,a4 js_shape_hash_unlink(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4400 { uint32_t h; JSShape **psh; @@ -10621,31 +10621,31 @@ js_shape_hash_unlink(): c000424c: 18853783 ld a5,392(a0) c0004250: 01d6d713 srli a4,a3,0x1d c0004254: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4401 while (*psh != sh) c0004256: 6398 ld a4,0(a5) c0004258: 00b71a63 bne a4,a1,c000426c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4395 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4403 psh = &(*psh)->shape_hash_next; *psh = sh->shape_hash_next; c000425c: 7998 ld a4,48(a1) c000425e: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4404 rt->shape_hash_count--; c0004260: 18052783 lw a5,384(a0) c0004264: 37fd addiw a5,a5,-1 c0004266: 18f52023 sw a5,384(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4405 } c000426a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4402 psh = &(*psh)->shape_hash_next; c000426c: 03070793 addi a5,a4,48 c0004270: b7dd j c0004256 00000000c0004272 : js_c_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5383 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5391 JS_FreeContext(p->u.cfunc.realm); } @@ -10654,32 +10654,32 @@ static void js_c_function_mark(JSRuntime *rt, JSValueConst val, { c0004272: 1141 addi sp,sp,-16 c0004274: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5386 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5394 JSObject *p = JS_VALUE_GET_OBJ(val); if (p->u.cfunc.realm) c0004276: 798c ld a1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5383 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5391 { c0004278: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5386 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5394 if (p->u.cfunc.realm) c000427a: c199 beqz a1,c0004280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5396 mark_func(rt, &p->u.cfunc.realm->header); } c000427c: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5395 mark_func(rt, &p->u.cfunc.realm->header); c000427e: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5396 } c0004280: 0141 addi sp,sp,16 c0004282: 8082 ret 00000000c0004284 : gc_scan_incref_child2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5847 } } @@ -10689,13 +10689,13 @@ static void gc_scan_incref_child2(JSRuntime *rt, JSGCObjectHeader *p) c0004284: 419c lw a5,0(a1) c0004286: 2785 addiw a5,a5,1 c0004288: c19c sw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5848 } c000428a: 8082 ret 00000000c000428c : JS_GetPrototypePrimitive(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6991 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6999 return JS_SetPrototypeInternal(ctx, obj, proto_val, TRUE); } @@ -10711,13 +10711,13 @@ static JSValueConst JS_GetPrototypePrimitive(JSContext *ctx, JSValueConst val) c000429a: 04e7eb63 bltu a5,a4,c00042f0 c000429e: 02061793 slli a5,a2,0x20 c00042a2: 01e7d613 srli a2,a5,0x1e - c00042a6: 00058717 auipc a4,0x58 - c00042aa: 78a70713 addi a4,a4,1930 # c005ca30 + c00042a6: 00059717 auipc a4,0x59 + c00042aa: 95a70713 addi a4,a4,-1702 # c005cc00 c00042ae: 963a add a2,a2,a4 c00042b0: 421c lw a5,0(a2) c00042b2: 97ba add a5,a5,a4 c00042b4: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7002 switch(JS_VALUE_GET_NORM_TAG(val)) { case JS_TAG_BIG_INT: val = ctx->class_proto[JS_CLASS_BIG_INT]; @@ -10725,7 +10725,7 @@ static JSValueConst JS_GetPrototypePrimitive(JSContext *ctx, JSValueConst val) c00042b8: 2107b703 ld a4,528(a5) c00042bc: 2187b583 ld a1,536(a5) c00042c0: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7033 default: val = JS_NULL; break; @@ -10735,53 +10735,53 @@ static JSValueConst JS_GetPrototypePrimitive(JSContext *ctx, JSValueConst val) c00042c2: 6502 ld a0,0(sp) c00042c4: 6105 addi sp,sp,32 c00042c6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7006 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7014 val = ctx->class_proto[JS_CLASS_NUMBER]; c00042c8: 613c ld a5,64(a0) c00042ca: 63b8 ld a4,64(a5) c00042cc: 67ac ld a1,72(a5) c00042ce: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7007 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7015 break; c00042d0: bfcd j c00042c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7017 val = ctx->class_proto[JS_CLASS_BOOLEAN]; c00042d2: 613c ld a5,64(a0) c00042d4: 73b8 ld a4,96(a5) c00042d6: 77ac ld a1,104(a5) c00042d8: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7018 break; c00042da: b7e5 j c00042c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7020 val = ctx->class_proto[JS_CLASS_STRING]; c00042dc: 613c ld a5,64(a0) c00042de: 6bb8 ld a4,80(a5) c00042e0: 6fac ld a1,88(a5) c00042e2: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7013 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7021 break; c00042e4: bff9 j c00042c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7015 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7023 val = ctx->class_proto[JS_CLASS_SYMBOL]; c00042e6: 613c ld a5,64(a0) c00042e8: 7bb8 ld a4,112(a5) c00042ea: 7fac ld a1,120(a5) c00042ec: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7024 break; c00042ee: bfd1 j c00042c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7021 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7029 val = JS_NULL; c00042f0: e002 sd zero,0(sp) c00042f2: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7030 break; c00042f4: b7f9 j c00042c2 00000000c00042f6 : to_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10119 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10127 return p - p_start; } @@ -10790,47 +10790,47 @@ static inline int to_digit(int c) if (c >= '0' && c <= '9') c00042f6: fd05061b addiw a2,a0,-48 c00042fa: 46a5 li a3,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10126 { c00042fc: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10119 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10127 if (c >= '0' && c <= '9') c00042fe: 0005071b sext.w a4,a0 c0004302: 00c6e463 bltu a3,a2,c000430a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10128 return c - '0'; c0004306: 8532 mv a0,a2 c0004308: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10129 else if (c >= 'A' && c <= 'Z') c000430a: fbf7069b addiw a3,a4,-65 c000430e: 4665 li a2,25 c0004310: 00d66563 bltu a2,a3,c000431a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10130 return c - 'A' + 10; c0004314: fc95051b addiw a0,a0,-55 c0004318: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10131 else if (c >= 'a' && c <= 'z') c000431a: f9f7071b addiw a4,a4,-97 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10134 return c - 'a' + 10; else return 36; c000431e: 02400513 li a0,36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10131 else if (c >= 'a' && c <= 'z') c0004322: 00e66463 bltu a2,a4,c000432a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10132 return c - 'a' + 10; c0004326: fa97851b addiw a0,a5,-87 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10135 } c000432a: 8082 ret 00000000c000432c : js_generator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19020 static void js_generator_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func) @@ -10838,34 +10838,34 @@ static void js_generator_mark(JSRuntime *rt, JSValueConst val, JSObject *p = JS_VALUE_GET_OBJ(val); JSGeneratorData *s = p->u.generator_data; c000432c: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19018 { c000432e: 1141 addi sp,sp,-16 c0004330: e02e sd a1,0(sp) c0004332: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19014 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19022 if (!s || !s->func_state) c0004334: c789 beqz a5,c000433e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19014 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19022 (discriminator 1) c0004336: 678c ld a1,8(a5) c0004338: c199 beqz a1,c000433e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19025 return; mark_func(rt, &s->func_state->header); } c000433a: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19024 mark_func(rt, &s->func_state->header); c000433c: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19025 } c000433e: 0141 addi sp,sp,16 c0004340: 8082 ret 00000000c0004342 : js_async_function_resolve_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19153 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19161 } } @@ -10874,32 +10874,32 @@ static void js_async_function_resolve_mark(JSRuntime *rt, JSValueConst val, { c0004342: 1141 addi sp,sp,-16 c0004344: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19155 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19163 JSObject *p = JS_VALUE_GET_OBJ(val); JSAsyncFunctionState *s = p->u.async_function_data; c0004346: 798c ld a1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19153 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19161 { c0004348: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19164 if (s) { c000434a: c199 beqz a1,c0004350 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19167 mark_func(rt, &s->header); } } c000434c: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19165 mark_func(rt, &s->header); c000434e: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19167 } c0004350: 0141 addi sp,sp,16 c0004352: 8082 ret 00000000c0004354 : token_is_pseudo_keyword(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20450 string_buffer_free(b); return -1; } @@ -10908,29 +10908,29 @@ static inline BOOL token_is_pseudo_keyword(JSParseState *s, JSAtom atom) { return s->token.val == TOK_IDENT && s->token.u.ident.atom == atom && c0004354: 4d14 lw a3,24(a0) c0004356: f8300713 li a4,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20441 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20449 static inline BOOL token_is_pseudo_keyword(JSParseState *s, JSAtom atom) { c000435a: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20450 return s->token.val == TOK_IDENT && s->token.u.ident.atom == atom && c000435c: 4501 li a0,0 c000435e: 00e69a63 bne a3,a4,c0004372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20442 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20450 (discriminator 1) c0004362: 5798 lw a4,40(a5) c0004364: 4501 li a0,0 c0004366: 00b71663 bne a4,a1,c0004372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20442 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20450 (discriminator 3) c000436a: 57c8 lw a0,44(a5) c000436c: 00153513 seqz a0,a0 c0004370: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20444 (discriminator 8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20452 (discriminator 8) !s->token.u.ident.has_escape; } c0004372: 8082 ret 00000000c0004374 : update_token_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20582 } /* convert a TOK_IDENT to a keyword when needed */ @@ -10940,22 +10940,22 @@ static void update_token_ident(JSParseState *s) c0004374: 551c lw a5,40(a0) c0004376: 02400713 li a4,36 c000437a: 08f77063 bgeu a4,a5,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20574 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20582 (discriminator 1) c000437e: 02d00613 li a2,45 c0004382: 02f66c63 bltu a2,a5,c00043ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20584 (s->token.u.ident.atom <= JS_ATOM_LAST_STRICT_KEYWORD && (s->cur_func->js_mode & JS_MODE_STRICT)) || c0004386: 7538 ld a4,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20575 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20583 (s->token.u.ident.atom <= JS_ATOM_LAST_STRICT_KEYWORD && c0004388: 08674683 lbu a3,134(a4) c000438c: 8a85 andi a3,a3,1 c000438e: e6b5 bnez a3,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20584 (s->cur_func->js_mode & JS_MODE_STRICT)) || c0004390: 00c78363 beq a5,a2,c0004396 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20606 } else { /* The keywords atoms are pre allocated */ s->token.val = s->token.u.ident.atom - 1 + TOK_FIRST_KEYWORD; @@ -10963,99 +10963,99 @@ static void update_token_ident(JSParseState *s) } } c0004394: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20577 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20585 (s->token.u.ident.atom == JS_ATOM_yield && c0004396: 08474683 lbu a3,132(a4) c000439a: 8a85 andi a3,a3,1 c000439c: eeb9 bnez a3,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20586 ((s->cur_func->func_kind & JS_FUNC_GENERATOR) || c000439e: 08574603 lbu a2,133(a4) c00043a2: 468d li a3,3 c00043a4: fed618e3 bne a2,a3,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20579 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20587 (s->cur_func->func_type == JS_PARSE_FUNC_ARROW && c00043a8: 5f74 lw a3,124(a4) c00043aa: f6ed bnez a3,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20588 !s->cur_func->in_function_body && s->cur_func->parent && c00043ac: 6718 ld a4,8(a4) c00043ae: d37d beqz a4,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20580 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20588 (discriminator 1) c00043b0: 08474703 lbu a4,132(a4) c00043b4: 8b05 andi a4,a4,1 c00043b6: e331 bnez a4,c00043fa c00043b8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20581 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20589 (s->cur_func->parent->func_kind & JS_FUNC_GENERATOR)))) || c00043ba: 02e00713 li a4,46 c00043be: fce79be3 bne a5,a4,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20590 (s->token.u.ident.atom == JS_ATOM_await && c00043c2: 5938 lw a4,112(a0) c00043c4: eb1d bnez a4,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20592 (s->cur_func->func_kind & JS_FUNC_ASYNC) || c00043c6: 7538 ld a4,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20583 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20591 (s->is_module || c00043c8: 08474683 lbu a3,132(a4) c00043cc: 8a89 andi a3,a3,2 c00043ce: e695 bnez a3,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20593 s->cur_func->func_type == JS_PARSE_FUNC_CLASS_STATIC_INIT || c00043d0: 08574683 lbu a3,133(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20592 (s->cur_func->func_kind & JS_FUNC_ASYNC) || c00043d4: 461d li a2,7 c00043d6: 02c68263 beq a3,a2,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20593 s->cur_func->func_type == JS_PARSE_FUNC_CLASS_STATIC_INIT || c00043da: 460d li a2,3 c00043dc: fac69ce3 bne a3,a2,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20594 (s->cur_func->func_type == JS_PARSE_FUNC_ARROW && c00043e0: 5f74 lw a3,124(a4) c00043e2: facd bnez a3,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20587 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20595 !s->cur_func->in_function_body && s->cur_func->parent && c00043e4: 6718 ld a4,8(a4) c00043e6: d75d beqz a4,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20587 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20595 (discriminator 1) c00043e8: 08474683 lbu a3,132(a4) c00043ec: 8a89 andi a3,a3,2 c00043ee: e691 bnez a3,c00043fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20596 ((s->cur_func->parent->func_kind & JS_FUNC_ASYNC) || c00043f0: 08574683 lbu a3,133(a4) c00043f4: 471d li a4,7 c00043f6: f8e69fe3 bne a3,a4,c0004394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20598 if (s->token.u.ident.has_escape) { c00043fa: 5558 lw a4,44(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20595 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20603 s->token.val = s->token.u.ident.atom - 1 + TOK_FIRST_KEYWORD; c00043fc: faa7879b addiw a5,a5,-86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20598 if (s->token.u.ident.has_escape) { c0004400: c709 beqz a4,c000440a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20591 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20599 s->token.u.ident.is_reserved = TRUE; c0004402: 4785 li a5,1 c0004404: d91c sw a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20600 s->token.val = TOK_IDENT; c0004406: f8300793 li a5,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20595 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20603 s->token.val = s->token.u.ident.atom - 1 + TOK_FIRST_KEYWORD; c000440a: cd1c sw a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20606 } c000440c: 8082 ret 00000000c000440e : get_prev_opcode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21528 return FALSE; } } @@ -11064,7 +11064,7 @@ static inline int get_prev_opcode(JSFunctionDef *fd) { if (fd->last_opcode_pos < 0) c000440e: 16052703 lw a4,352(a0) c0004412: 00074863 bltz a4,c0004422 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21523 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21531 return OP_invalid; else return fd->byte_code.buf[fd->last_opcode_pos]; @@ -11072,21 +11072,21 @@ static inline int get_prev_opcode(JSFunctionDef *fd) { c000441a: 97ba add a5,a5,a4 c000441c: 0007c503 lbu a0,0(a5) c0004420: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21529 return OP_invalid; c0004422: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21532 } c0004424: 8082 ret 00000000c0004426 : js_is_live_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21534 static BOOL js_is_live_code(JSParseState *s) { c0004426: 1141 addi sp,sp,-16 c0004428: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21535 switch (get_prev_opcode(s->cur_func)) { c000442a: 7528 ld a0,104(a0) c000442c: fe3ff0ef jal ra,c000440e @@ -11096,7 +11096,7 @@ static BOOL js_is_live_code(JSParseState *s) { c000443a: 02200713 li a4,34 c000443e: 4505 li a0,1 c0004440: 00f75a63 bge a4,a5,c0004454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21549 #if SHORT_OPCODES case OP_goto8: case OP_goto16: @@ -11108,7 +11108,7 @@ static BOOL js_is_live_code(JSParseState *s) { c000444c: 055e slli a0,a0,0x17 c000444e: 8fe9 and a5,a5,a0 c0004450: 0017b513 seqz a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21545 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21553 default: return TRUE; } @@ -11116,25 +11116,25 @@ static BOOL js_is_live_code(JSParseState *s) { c0004454: 60a2 ld ra,8(sp) c0004456: 0141 addi sp,sp,16 c0004458: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21535 switch (get_prev_opcode(s->cur_func)) { c000445a: 06f00713 li a4,111 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21549 return FALSE; c000445e: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21535 switch (get_prev_opcode(s->cur_func)) { c0004460: fee78ae3 beq a5,a4,c0004454 c0004464: 00f74763 blt a4,a5,c0004472 c0004468: f9478793 addi a5,a5,-108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21549 return FALSE; c000446c: 00f03533 snez a0,a5 c0004470: b7d5 j c0004454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21535 switch (get_prev_opcode(s->cur_func)) { c0004472: f147879b addiw a5,a5,-236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21549 return FALSE; c0004476: 4505 li a0,1 c0004478: 00f53533 sltu a0,a0,a5 @@ -11142,7 +11142,7 @@ static BOOL js_is_live_code(JSParseState *s) { 00000000c000447e : find_global_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21770 static JSGlobalVar *find_global_var(JSFunctionDef *fd, JSAtom name) @@ -11150,16 +11150,16 @@ static JSGlobalVar *find_global_var(JSFunctionDef *fd, JSAtom name) int i; for(i = 0; i < fd->global_var_count; i++) { c000447e: 11c52603 lw a2,284(a0) # 386511c <__clzdi2-0xbc79aee4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21768 { c0004482: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21770 for(i = 0; i < fd->global_var_count; i++) { c0004484: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21762 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21770 (discriminator 1) c0004486: 0007079b sext.w a5,a4 c000448a: 00c7c463 blt a5,a2,c0004492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21775 JSGlobalVar *hf = &fd->global_vars[i]; if (hf->var_name == name) return hf; @@ -11167,28 +11167,28 @@ static JSGlobalVar *find_global_var(JSFunctionDef *fd, JSAtom name) return NULL; c000448e: 4501 li a0,0 c0004490: a811 j c00044a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21763 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21771 JSGlobalVar *hf = &fd->global_vars[i]; c0004492: 1286b783 ld a5,296(a3) # ffffffffffff3128 <_ebss+0xffffffff3fef2002> c0004496: 00471513 slli a0,a4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21772 if (hf->var_name == name) c000449a: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21763 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21771 JSGlobalVar *hf = &fd->global_vars[i]; c000449c: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21772 if (hf->var_name == name) c000449e: 455c lw a5,12(a0) c00044a0: feb793e3 bne a5,a1,c0004486 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21777 } c00044a4: 8082 ret 00000000c00044a6 : token_is_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22311 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22319 #define PROP_TYPE_PRIVATE (1 << 4) static BOOL token_is_ident(int tok) @@ -11197,13 +11197,13 @@ static BOOL token_is_ident(int tok) return (tok == TOK_IDENT || c00044a6: f8300793 li a5,-125 c00044aa: 00f50763 beq a0,a5,c00044b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22311 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22319 (discriminator 2) c00044ae: 0555051b addiw a0,a0,85 c00044b2: 02e53513 sltiu a0,a0,46 c00044b6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22311 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22319 c00044b8: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22314 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22322 (tok >= TOK_FIRST_KEYWORD && tok <= TOK_LAST_KEYWORD)); } @@ -11211,7 +11211,7 @@ static BOOL token_is_ident(int tok) 00000000c00044bc : exec_module_list_cmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28717 static int exec_module_list_cmp(const void *p1, const void *p2, void *opaque) { @@ -11223,17 +11223,17 @@ static int exec_module_list_cmp(const void *p1, const void *p2, void *opaque) c00044c0: 7bdc ld a5,176(a5) c00044c2: 7b58 ld a4,176(a4) c00044c4: 00f72533 slt a0,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28718 (m1->async_evaluation_timestamp < m2->async_evaluation_timestamp); c00044c8: 00e7a7b3 slt a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28711 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28719 } c00044cc: 9d1d subw a0,a0,a5 c00044ce: 8082 ret 00000000c00044d0 : can_opt_put_ref_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30074 return OP_with_get_var + (op - OP_scope_get_var); } @@ -11241,41 +11241,41 @@ static BOOL can_opt_put_ref_value(const uint8_t *bc_buf, int pos) { int opcode = bc_buf[pos]; c00044d0: 00b507b3 add a5,a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30075 return (bc_buf[pos + 1] == OP_put_ref_value && c00044d4: 2585 addiw a1,a1,1 c00044d6: 952e add a0,a0,a1 c00044d8: 00054683 lbu a3,0(a0) c00044dc: 03d00713 li a4,61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30074 int opcode = bc_buf[pos]; c00044e0: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30075 return (bc_buf[pos + 1] == OP_put_ref_value && c00044e4: 4501 li a0,0 c00044e6: 02e69263 bne a3,a4,c000450a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30067 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30075 (discriminator 1) c00044ea: 46d9 li a3,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30066 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30074 (discriminator 1) int opcode = bc_buf[pos]; c00044ec: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30067 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30075 (discriminator 1) return (bc_buf[pos + 1] == OP_put_ref_value && c00044f0: 4505 li a0,1 c00044f2: 00d78c63 beq a5,a3,c000450a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30076 (opcode == OP_insert3 || c00044f6: 0fb7f793 andi a5,a5,251 c00044fa: 46e5 li a3,25 c00044fc: 00d78763 beq a5,a3,c000450a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30069 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30077 opcode == OP_perm4 || c0004500: f4d70513 addi a0,a4,-179 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30075 return (bc_buf[pos + 1] == OP_put_ref_value && c0004504: 00153513 seqz a0,a0 c0004508: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30072 (discriminator 5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30080 (discriminator 5) opcode == OP_nop || opcode == OP_rot3l)); } @@ -11283,7 +11283,7 @@ static BOOL can_opt_put_ref_value(const uint8_t *bc_buf, int pos) 00000000c000450c : add_pc2line_info(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31856 } /* the pc2line table gives a line number for each PC value */ @@ -11292,57 +11292,57 @@ static void add_pc2line_info(JSFunctionDef *s, uint32_t pc, int line_num) if (s->line_number_slots != NULL c000450c: 1b853783 ld a5,440(a0) c0004510: c3a1 beqz a5,c0004550 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31849 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31857 && s->line_number_count < s->line_number_size c0004512: 1c452703 lw a4,452(a0) c0004516: 1c052683 lw a3,448(a0) c000451a: 02d75b63 bge a4,a3,c0004550 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31858 && pc >= s->line_number_last_pc c000451e: 1cc52683 lw a3,460(a0) c0004522: 02d5e763 bltu a1,a3,c0004550 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31859 && line_num != s->line_number_last) { c0004526: 1c852683 lw a3,456(a0) c000452a: 02c68363 beq a3,a2,c0004550 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31860 s->line_number_slots[s->line_number_count].pc = pc; c000452e: 070e slli a4,a4,0x3 c0004530: 97ba add a5,a5,a4 c0004532: c38c sw a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31861 s->line_number_slots[s->line_number_count].line_num = line_num; c0004534: 1c452703 lw a4,452(a0) c0004538: 1b853783 ld a5,440(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 s->line_number_count++; c000453c: 18050513 addi a0,a0,384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31861 s->line_number_slots[s->line_number_count].line_num = line_num; c0004540: 070e slli a4,a4,0x3 c0004542: 97ba add a5,a5,a4 c0004544: c3d0 sw a2,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 s->line_number_count++; c0004546: 417c lw a5,68(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31863 s->line_number_last_pc = pc; c0004548: c56c sw a1,76(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31864 s->line_number_last = line_num; c000454a: c530 sw a2,72(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 s->line_number_count++; c000454c: 2785 addiw a5,a5,1 c000454e: c17c sw a5,68(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31866 } } c0004550: 8082 ret 00000000c0004552 : code_has_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31920 ls->first_reloc = re; return re; } @@ -11350,24 +11350,24 @@ code_has_label(): static BOOL code_has_label(CodeContext *s, int pos, int label) { c0004552: 882a mv a6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31921 while (pos < s->bc_len) { c0004554: 4508 lw a0,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31923 int op = s->bc_buf[pos]; if (op == OP_line_num) { c0004556: 0c600893 li a7,198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31927 pos += 5; continue; } if (op == OP_label) { c000455a: 0b600313 li t1,182 c000455e: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31921 while (pos < s->bc_len) { c0004562: 00a5c463 blt a1,a0,c000456a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31933 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31941 if (lab == label) return TRUE; } @@ -11376,15 +11376,15 @@ static BOOL code_has_label(CodeContext *s, int pos, int label) return FALSE; c0004566: 4501 li a0,0 c0004568: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31922 int op = s->bc_buf[pos]; c000456a: 00083783 ld a5,0(a6) c000456e: 97ba add a5,a5,a4 c0004570: 0007c703 lbu a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31923 if (op == OP_line_num) { c0004574: 05170f63 beq a4,a7,c00045d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31927 if (op == OP_label) { c0004578: 02671563 bne a4,t1,c00045a2 get_u32(): @@ -11401,23 +11401,23 @@ get_u32(): c0004594: 07e2 slli a5,a5,0x18 c0004596: 8fd9 or a5,a5,a4 code_has_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31929 if (lab == label) c0004598: 2781 sext.w a5,a5 c000459a: 02f61c63 bne a2,a5,c00045d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31930 return TRUE; c000459e: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31942 } c00045a0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31934 if (op == OP_goto) { c00045a2: 06c00693 li a3,108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31933 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31941 return FALSE; c00045a6: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31934 if (op == OP_goto) { c00045a8: fed71ce3 bne a4,a3,c00045a0 get_u32(): @@ -11433,11 +11433,11 @@ get_u32(): c00045c4: 0562 slli a0,a0,0x18 c00045c6: 8d59 or a0,a0,a4 code_has_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31936 if (lab == label) c00045c8: 2501 sext.w a0,a0 c00045ca: 8d11 sub a0,a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31930 return TRUE; c00045cc: 00153513 seqz a0,a0 c00045d0: 8082 ret @@ -11446,7 +11446,7 @@ code_has_label(): 00000000c00045d6 : bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34775 dbuf_put_sleb128(&s->dbuf, v); } @@ -11458,18 +11458,18 @@ static void bc_set_flags(uint32_t *pflags, int *pidx, uint32_t val, int n) c00045dc: 411c lw a5,0(a0) c00045de: 8e5d or a2,a2,a5 c00045e0: c110 sw a2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; c00045e2: 419c lw a5,0(a1) c00045e4: 9fb5 addw a5,a5,a3 c00045e6: c19c sw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34777 } c00045e8: 8082 ret 00000000c00045ea : js_function_proto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38303 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38311 /* Function class */ @@ -11477,7 +11477,7 @@ static JSValue js_function_proto(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) { c00045ea: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38305 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38313 return JS_UNDEFINED; } c00045ec: 4501 li a0,0 @@ -11487,7 +11487,7 @@ static JSValue js_function_proto(JSContext *ctx, JSValueConst this_val, 00000000c00045f4 : js_string_delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41309 } } @@ -11497,7 +11497,7 @@ static int js_string_delete_property(JSContext *ctx, c00045f4: 1141 addi sp,sp,-16 c00045f6: e02e sd a1,0(sp) c00045f8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41318 idx = __JS_AtomToUInt32(prop); if (idx < js_string_obj_get_length(ctx, obj)) { return FALSE; @@ -11505,39 +11505,39 @@ static int js_string_delete_property(JSContext *ctx, } return TRUE; c00045fa: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41312 if (__JS_AtomIsTaggedInt(prop)) { c00045fc: 0206d363 bgez a3,c0004622 js_string_obj_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { c0004600: 5d98 lw a4,56(a1) c0004602: 57e5 li a5,-7 c0004604: 00f71f63 bne a4,a5,c0004622 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7540 len = p1->len; c0004608: 7998 ld a4,48(a1) c000460a: 800007b7 lui a5,0x80000 c000460e: fff7c793 not a5,a5 c0004612: 4348 lw a0,4(a4) js_string_delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41314 if (idx < js_string_obj_get_length(ctx, obj)) { c0004614: 8efd and a3,a3,a5 c0004616: 8d7d and a0,a0,a5 c0004618: 00a6b533 sltu a0,a3,a0 c000461c: 00154513 xori a0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41315 return FALSE; c0004620: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41311 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41319 } c0004622: 0141 addi sp,sp,16 c0004624: 8082 ret 00000000c0004626 : string_cmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41599 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41607 } return r; } @@ -11559,20 +11559,20 @@ static int string_cmp(JSString *p1, JSString *p2, int x1, int x2, int len) c000463e: 8ab2 mv s5,a2 c0004640: 8b36 mv s6,a3 c0004642: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41601 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41609 int i, c1, c2; for (i = 0; i < len; i++) { c0004644: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41601 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41609 (discriminator 1) c0004646: 01249463 bne s1,s2,c000464e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41613 if ((c1 = string_get(p1, x1 + i)) != (c2 = string_get(p2, x2 + i))) return c1 - c2; } return 0; c000464a: 4501 li a0,0 c000464c: a015 j c0004670 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41602 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41610 if ((c1 = string_get(p1, x1 + i)) != (c2 = string_get(p2, x2 + i))) c000464e: 009a85bb addw a1,s5,s1 c0004652: 854e mv a0,s3 @@ -11583,10 +11583,10 @@ static int string_cmp(JSString *p1, JSString *p2, int x1, int x2, int len) c0004662: 8552 mv a0,s4 c0004664: b03ff0ef jal ra,c0004166 c0004668: 00a40f63 beq s0,a0,c0004686 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41603 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41611 return c1 - c2; c000466c: 40a4053b subw a0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41614 } c0004670: 60a6 ld ra,72(sp) c0004672: 6406 ld s0,64(sp) @@ -11599,43 +11599,43 @@ static int string_cmp(JSString *p1, JSString *p2, int x1, int x2, int len) c0004680: 6ba2 ld s7,8(sp) c0004682: 6161 addi sp,sp,80 c0004684: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41601 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41609 (discriminator 2) for (i = 0; i < len; i++) { c0004686: 2485 addiw s1,s1,1 c0004688: bf7d j c0004646 00000000c000468a : string_indexof_char(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41617 static int string_indexof_char(JSString *p, int c, int from) { c000468a: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41619 /* assuming 0 <= from <= p->len */ int i, len = p->len; c000468c: 43d4 lw a3,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41617 { c000468e: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41619 int i, len = p->len; c0004690: 02169713 slli a4,a3,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41620 if (p->is_wide_char) { c0004694: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41619 int i, len = p->len; c0004696: 9305 srli a4,a4,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41620 if (p->is_wide_char) { c0004698: 0206d063 bgez a3,c00046b8 c000469c: 00161693 slli a3,a2,0x1 c00046a0: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41613 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41621 (discriminator 1) for (i = from; i < len; i++) { c00046a2: 00e54463 blt a0,a4,c00046aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41633 if (p->u.str8[i] == (uint8_t)c) return i; } @@ -11643,42 +11643,42 @@ static int string_indexof_char(JSString *p, int c, int from) } return -1; c00046a6: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41634 } c00046a8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41622 if (p->u.str16[i] == c) c00046aa: 0107d683 lhu a3,16(a5) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> c00046ae: 0789 addi a5,a5,2 c00046b0: feb68ce3 beq a3,a1,c00046a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41613 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41621 (discriminator 2) for (i = from; i < len; i++) { c00046b4: 2505 addiw a0,a0,1 c00046b6: b7f5 j c00046a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41626 if ((c & ~0xff) == 0) { c00046b8: f005f693 andi a3,a1,-256 c00046bc: f6ed bnez a3,c00046a6 c00046be: 97b2 add a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41628 if (p->u.str8[i] == (uint8_t)c) c00046c0: 0ff5f593 zext.b a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41619 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41627 (discriminator 1) for (i = from; i < len; i++) { c00046c4: fee551e3 bge a0,a4,c00046a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41628 if (p->u.str8[i] == (uint8_t)c) c00046c8: 0107c683 lbu a3,16(a5) c00046cc: 0785 addi a5,a5,1 c00046ce: fcb68de3 beq a3,a1,c00046a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41619 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41627 (discriminator 2) for (i = from; i < len; i++) { c00046d2: 2505 addiw a0,a0,1 c00046d4: bfc5 j c00046c4 00000000c00046d6 : string_indexof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41629 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41637 static int string_indexof(JSString *p1, JSString *p2, int from) { @@ -11691,21 +11691,21 @@ static int string_indexof(JSString *p1, JSString *p2, int from) c00046e2: f052 sd s4,32(sp) c00046e4: ec56 sd s5,24(sp) c00046e6: e85a sd s6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41639 /* assuming 0 <= from <= p1->len */ int c, i, j, len1 = p1->len, len2 = p2->len; c00046e8: 41dc lw a5,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41629 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41637 { c00046ea: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41639 int c, i, j, len1 = p1->len, len2 = p2->len; c00046ec: 02179713 slli a4,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41640 if (len2 == 0) c00046f0: c325 beqz a4,c0004750 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; c00046f2: 2781 sext.w a5,a5 c00046f4: 89aa mv s3,a0 @@ -11714,52 +11714,52 @@ string_get(): c00046fc: 0207d163 bgez a5,c000471e c0004700: 0105da83 lhu s5,16(a1) string_indexof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41639 int c, i, j, len1 = p1->len, len2 = p2->len; c0004704: 0049a483 lw s1,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41642 return from; for (i = from, c = string_get(p2, 0); i + len2 <= len1; i = j + 1) { c0004708: 8622 mv a2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41646 j = string_indexof_char(p1, c, i); if (j < 0 || j + len2 > len1) break; if (!string_cmp(p1, p2, j + 1, 1, len2 - 1)) c000470a: fffa0b1b addiw s6,s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41639 int c, i, j, len1 = p1->len, len2 = p2->len; c000470e: 1486 slli s1,s1,0x21 c0004710: 9085 srli s1,s1,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41634 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41642 (discriminator 1) for (i = from, c = string_get(p2, 0); i + len2 <= len1; i = j + 1) { c0004712: 014607bb addw a5,a2,s4 c0004716: 00f4d763 bge s1,a5,c0004724 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41649 return j; } return -1; c000471a: 547d li s0,-1 c000471c: a815 j c0004750 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; c000471e: 0105ca83 lbu s5,16(a1) c0004722: b7cd j c0004704 string_indexof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41635 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41643 j = string_indexof_char(p1, c, i); c0004724: 85d6 mv a1,s5 c0004726: 854e mv a0,s3 c0004728: f63ff0ef jal ra,c000468a c000472c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41644 if (j < 0 || j + len2 > len1) c000472e: fe0546e3 bltz a0,c000471a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41636 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41644 (discriminator 1) c0004732: 00aa07bb addw a5,s4,a0 c0004736: fef4c2e3 blt s1,a5,c000471a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41646 if (!string_cmp(p1, p2, j + 1, 1, len2 - 1)) c000473a: 0015061b addiw a2,a0,1 c000473e: 875a mv a4,s6 @@ -11770,7 +11770,7 @@ string_indexof(): c0004748: edfff0ef jal ra,c0004626 c000474c: 6622 ld a2,8(sp) c000474e: f171 bnez a0,c0004712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41650 } c0004750: 60a6 ld ra,72(sp) c0004752: 8522 mv a0,s0 @@ -11786,7 +11786,7 @@ string_indexof(): 00000000c0004766 : js_math_sign(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43115 } } @@ -11795,38 +11795,38 @@ static double js_math_sign(double a) if (isnan(a) || a == 0.0) c0004766: a2a527d3 feq.d a5,fa0,fa0 c000476a: c395 beqz a5,c000478e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43107 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43115 (discriminator 1) c000476c: f20007d3 fmv.d.x fa5,zero c0004770: a2f527d3 feq.d a5,fa0,fa5 c0004774: ef89 bnez a5,c000478e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43117 return a; if (a < 0) c0004776: a2f517d3 flt.d a5,fa0,fa5 c000477a: e791 bnez a5,c0004786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43120 return -1; else return 1; c000477c: 00070797 auipc a5,0x70 - c0004780: 01c7b507 fld fa0,28(a5) # c0074798 <_erodata+0x18> + c0004780: 27c7b507 fld fa0,636(a5) # c00749f8 <_erodata+0x18> c0004784: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43118 return -1; c0004786: 00070797 auipc a5,0x70 - c000478a: 00a7b507 fld fa0,10(a5) # c0074790 <_erodata+0x10> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43113 + c000478a: 26a7b507 fld fa0,618(a5) # c00749f0 <_erodata+0x10> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43121 } c000478e: 8082 ret 00000000c0004790 : js_math_round(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43124 static double js_math_round(double a) { c0004790: e20507d3 fmv.x.d a5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43131 uint64_t frac_mask, one; unsigned int e, s; @@ -11834,36 +11834,36 @@ static double js_math_round(double a) e = (u.u64 >> 52) & 0x7ff; if (e < 1023) { c0004794: 3fe00613 li a2,1022 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43130 e = (u.u64 >> 52) & 0x7ff; c0004798: 0347d693 srli a3,a5,0x34 c000479c: 7ff6f693 andi a3,a3,2047 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43129 u.d = a; c00047a0: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43131 if (e < 1023) { c00047a2: 02d66363 bltu a2,a3,c00047c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43135 /* abs(a) < 1 */ if (e == (1023 - 1) && u.u64 != 0xbfe0000000000000) { /* abs(a) > 0.5 or a = 0.5: return +/-1.0 */ u.u64 = (u.u64 & ((uint64_t)1 << 63)) | ((uint64_t)1023 << 52); c00047a6: 93fd srli a5,a5,0x3f c00047a8: 03f79713 slli a4,a5,0x3f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43133 if (e == (1023 - 1) && u.u64 != 0xbfe0000000000000) { c00047ac: 00c69b63 bne a3,a2,c00047c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43125 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43133 (discriminator 1) c00047b0: dff00793 li a5,-513 c00047b4: 17d6 slli a5,a5,0x35 c00047b6: 00f58663 beq a1,a5,c00047c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43135 u.u64 = (u.u64 & ((uint64_t)1 << 63)) | ((uint64_t)1023 << 52); c00047ba: 3ff00793 li a5,1023 c00047be: 17d2 slli a5,a5,0x34 c00047c0: 8f5d or a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43149 u.u64 += (one >> 1) - s; u.u64 &= ~frac_mask; /* truncate to an integer */ } @@ -11872,30 +11872,30 @@ static double js_math_round(double a) } c00047c2: f2070553 fmv.d.x fa0,a4 c00047c6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43140 } else if (e < (1023 + 52)) { c00047c8: 43200613 li a2,1074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43129 u.d = a; c00047cc: 873e mv a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43140 } else if (e < (1023 + 52)) { c00047ce: fed66ae3 bltu a2,a3,c00047c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43142 one = (uint64_t)1 << (52 - (e - 1023)); c00047d2: 43300713 li a4,1075 c00047d6: 40d706bb subw a3,a4,a3 c00047da: 4705 li a4,1 c00047dc: 00d71733 sll a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43133 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43141 s = u.u64 >> 63; c00047e0: 03f7d693 srli a3,a5,0x3f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43144 u.u64 += (one >> 1) - s; c00047e4: 8f95 sub a5,a5,a3 c00047e6: 00175693 srli a3,a4,0x1 c00047ea: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43137 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43145 u.u64 &= ~frac_mask; /* truncate to an integer */ c00047ec: 40e00733 neg a4,a4 c00047f0: 8f7d and a4,a4,a5 @@ -11903,7 +11903,7 @@ static double js_math_round(double a) 00000000c00047f4 : js_math_fround(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43177 return JS_NewFloat64(ctx, r); } @@ -11911,14 +11911,14 @@ static double js_math_fround(double a) { return (float)a; c00047f4: 40157553 fcvt.s.d fa0,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43178 } c00047f8: 42050553 fcvt.d.s fa0,fa0 c00047fc: 8082 ret 00000000c00047fe : xorshift64star(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43211 /* xorshift* random number generator by Marsaglia */ static uint64_t xorshift64star(uint64_t *pstate) @@ -11927,7 +11927,7 @@ static uint64_t xorshift64star(uint64_t *pstate) x = *pstate; c00047fe: 18853783 ld a5,392(a0) js_math_random(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43223 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43231 ctx->random_state = 1; } @@ -11935,7 +11935,7 @@ static JSValue js_math_random(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) { c0004802: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43239 v = xorshift64star(&ctx->random_state); /* 1.0 <= u.d < 2 */ @@ -11944,41 +11944,41 @@ static JSValue js_math_random(JSContext *ctx, JSValueConst this_val, } c0004804: 459d li a1,7 xorshift64star(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43212 x ^= x >> 12; c0004806: 00c7d713 srli a4,a5,0xc c000480a: 8fb9 xor a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43213 x ^= x << 25; c000480c: 01979713 slli a4,a5,0x19 c0004810: 8fb9 xor a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43214 x ^= x >> 27; c0004812: 01b7d713 srli a4,a5,0x1b c0004816: 8fb9 xor a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43207 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43215 *pstate = x; c0004818: 18f53423 sd a5,392(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43216 return x * 0x2545F4914F6CDD1D; c000481c: 00070517 auipc a0,0x70 - c0004820: f8453503 ld a0,-124(a0) # c00747a0 <_erodata+0x20> + c0004820: 1e453503 ld a0,484(a0) # c0074a00 <_erodata+0x20> c0004824: 02a787b3 mul a5,a5,a0 js_math_random(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43229 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43237 u.u64 = ((uint64_t)0x3ff << 52) | (v >> 12); c0004828: 3ff00513 li a0,1023 c000482c: 1552 slli a0,a0,0x34 c000482e: 83b1 srli a5,a5,0xc c0004830: 8d5d or a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43239 } c0004832: f2050753 fmv.d.x fa4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43238 return __JS_NewFloat64(ctx, u.d - 1.0); c0004836: 00070797 auipc a5,0x70 - c000483a: f627b787 fld fa5,-158(a5) # c0074798 <_erodata+0x18> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43231 + c000483a: 1c27b787 fld fa5,450(a5) # c00749f8 <_erodata+0x18> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43239 } c000483e: 0af777d3 fsub.d fa5,fa4,fa5 c0004842: 6105 addi sp,sp,32 @@ -11987,7 +11987,7 @@ js_math_random(): 00000000c000484a : string_get_hex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49097 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49105 JS_FreeValue(ctx, obj1); } @@ -12003,11 +12003,11 @@ static int string_get_hex(JSString *p, int k, int n) { c0004856: fc06 sd ra,56(sp) c0004858: e852 sd s4,16(sp) c000485a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49107 int c = 0, h; while (n-- > 0) { c000485c: 00c584bb addw s1,a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49098 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49106 int c = 0, h; c0004860: 4401 li s0,0 from_hex(): @@ -12024,10 +12024,10 @@ static inline int from_hex(int c) else if (c >= 'A' && c <= 'F') c0004864: 4995 li s3,5 string_get_hex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49107 while (n-- > 0) { c0004866: 00959c63 bne a1,s1,c000487e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49105 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49113 if ((h = from_hex(string_get(p, k++))) < 0) return -1; c = (c << 4) | h; @@ -12044,7 +12044,7 @@ string_get_hex(): c0004878: 6aa2 ld s5,8(sp) c000487a: 6121 addi sp,sp,64 c000487c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49108 if ((h = from_hex(string_get(p, k++))) < 0) c000487e: 854a mv a0,s2 c0004880: 00158a1b addiw s4,a1,1 @@ -12059,11 +12059,11 @@ from_hex(): return c - '0'; c0004894: 853a mv a0,a4 string_get_hex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49110 c = (c << 4) | h; c0004896: 0044141b slliw s0,s0,0x4 c000489a: 8c49 or s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49108 if ((h = from_hex(string_get(p, k++))) < 0) c000489c: 85d2 mv a1,s4 c000489e: b7e1 j c0004866 @@ -12085,14 +12085,14 @@ from_hex(): c00048b6: fa95051b addiw a0,a0,-87 c00048ba: bff1 j c0004896 string_get_hex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49109 return -1; c00048bc: 547d li s0,-1 c00048be: b775 j c000486a 00000000c00048c0 : days_in_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49436 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49444 return 365 * (y - 1970) + floor_div(y - 1969, 4) - floor_div(y - 1901, 100) + floor_div(y - 1601, 400); } @@ -12109,14 +12109,14 @@ static int64_t days_in_year(int64_t y) { c00048dc: 02f567b3 rem a5,a0,a5 c00048e0: 0017b793 seqz a5,a5 c00048e4: 40f707bb subw a5,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49437 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49445 } c00048e8: 00d7853b addw a0,a5,a3 c00048ec: 8082 ret 00000000c00048ee : string_skip_spaces(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49838 fields[0] += 1900; } return JS_NewFloat64(ctx, set_date_fields(fields, 0)); @@ -12125,10 +12125,10 @@ string_skip_spaces(): static void string_skip_spaces(JSString *sp, int *pp) { c00048ee: 7179 addi sp,sp,-48 c00048f0: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49831 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49839 while (*pp < sp->len && string_get(sp, *pp) == ' ') c00048f2: 800009b7 lui s3,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49838 static void string_skip_spaces(JSString *sp, int *pp) { c00048f6: ec26 sd s1,24(sp) c00048f8: e84a sd s2,16(sp) @@ -12137,7 +12137,7 @@ static void string_skip_spaces(JSString *sp, int *pp) { c00048fe: f022 sd s0,32(sp) c0004900: 84aa mv s1,a0 c0004902: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49831 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49839 while (*pp < sp->len && string_get(sp, *pp) == ' ') c0004904: fff9c993 not s3,s3 c0004908: 02000a13 li s4,32 @@ -12145,12 +12145,12 @@ static void string_skip_spaces(JSString *sp, int *pp) { c000490e: 00092403 lw s0,0(s2) c0004912: 00f9f7b3 and a5,s3,a5 c0004916: 00f45863 bge s0,a5,c0004926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49831 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49839 (discriminator 1) c000491a: 85a2 mv a1,s0 c000491c: 8526 mv a0,s1 c000491e: 849ff0ef jal ra,c0004166 c0004922: 01450a63 beq a0,s4,c0004936 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49841 *pp += 1; } c0004926: 70a2 ld ra,40(sp) @@ -12161,7 +12161,7 @@ static void string_skip_spaces(JSString *sp, int *pp) { c0004930: 6a02 ld s4,0(sp) c0004932: 6145 addi sp,sp,48 c0004934: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49840 *pp += 1; c0004936: 2405 addiw s0,s0,1 c0004938: 00892023 sw s0,0(s2) @@ -12169,7 +12169,7 @@ static void string_skip_spaces(JSString *sp, int *pp) { 00000000c000493e : string_get_digits(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49841 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49849 while (*pp < sp->len && string_get(sp, *pp) != ' ') *pp += 1; } @@ -12187,16 +12187,16 @@ static int string_get_digits(JSString *sp, int *pp, int64_t *pval) { c000494e: e85a sd s6,16(sp) c0004950: e45e sd s7,8(sp) c0004952: e062 sd s8,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49853 int64_t v = 0; int c, p = *pp, p_start; if (p >= sp->len) c0004954: 00452903 lw s2,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49843 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49851 int c, p = *pp, p_start; c0004958: 0005ab03 lw s6,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49853 if (p >= sp->len) c000495c: 1906 slli s2,s2,0x21 c000495e: 02195913 srli s2,s2,0x21 @@ -12205,17 +12205,17 @@ static int string_get_digits(JSString *sp, int *pp, int64_t *pval) { c0004968: 89ae mv s3,a1 c000496a: 8ab2 mv s5,a2 c000496c: 84da mv s1,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49850 int64_t v = 0; c000496e: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49858 return -1; p_start = p; while (p < sp->len) { c = string_get(sp, p); if (!(c >= '0' && c <= '9')) { c0004970: 4c25 li s8,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49864 if (p == p_start) return -1; else @@ -12223,22 +12223,22 @@ static int string_get_digits(JSString *sp, int *pp, int64_t *pval) { } v = v * 10 + c - '0'; c0004972: 4ba9 li s7,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49849 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49857 c = string_get(sp, p); c0004974: 85a6 mv a1,s1 c0004976: 8552 mv a0,s4 c0004978: feeff0ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49858 if (!(c >= '0' && c <= '9')) { c000497c: fd05079b addiw a5,a0,-48 c0004980: 02fc7163 bgeu s8,a5,c00049a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49854 return -1; c0004984: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49859 if (p == p_start) c0004986: 029b1663 bne s6,s1,c00049b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49870 p++; } *pval = v; @@ -12257,37 +12257,37 @@ static int string_get_digits(JSString *sp, int *pp, int64_t *pval) { c000499c: 6c02 ld s8,0(sp) c000499e: 6161 addi sp,sp,80 c00049a0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49864 v = v * 10 + c - '0'; c00049a2: 03740433 mul s0,s0,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49865 p++; c00049a6: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49864 v = v * 10 + c - '0'; c00049a8: 942a add s0,s0,a0 c00049aa: fd040413 addi s0,s0,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49856 while (p < sp->len) { c00049ae: fd24c3e3 blt s1,s2,c0004974 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49859 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49867 *pval = v; c00049b2: 008ab023 sd s0,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49868 *pp = p; c00049b6: 0099a023 sw s1,0(s3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49861 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49869 return 0; c00049ba: 4501 li a0,0 c00049bc: b7f9 j c000498a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49854 return -1; c00049be: 557d li a0,-1 c00049c0: b7e9 j c000498a 00000000c00049c2 : string_get_signed_digits(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49872 static int string_get_signed_digits(JSString *sp, int *pp, int64_t *pval) { c00049c2: 7139 addi sp,sp,-64 @@ -12297,28 +12297,28 @@ static int string_get_signed_digits(JSString *sp, int *pp, int64_t *pval) { c00049ca: f04a sd s2,32(sp) c00049cc: ec4e sd s3,24(sp) c00049ce: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49867 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49875 int res, sgn, p = *pp; if (p >= sp->len) c00049d0: 415c lw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49865 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49873 int res, sgn, p = *pp; c00049d2: 4180 lw s0,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49867 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49875 if (p >= sp->len) c00049d4: 1786 slli a5,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49865 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49873 int res, sgn, p = *pp; c00049d6: c622 sw s0,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49867 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49875 if (p >= sp->len) c00049d8: 9385 srli a5,a5,0x21 c00049da: 00f44b63 blt s0,a5,c00049f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49876 return -1; c00049de: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49890 return -1; // reject negative zero *pval = -*pval; } @@ -12334,58 +12334,58 @@ static int string_get_signed_digits(JSString *sp, int *pp, int64_t *pval) { c00049ec: 6121 addi sp,sp,64 c00049ee: 8082 ret c00049f0: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49878 sgn = string_get(sp, p); c00049f2: 85a2 mv a1,s0 c00049f4: 8a2a mv s4,a0 c00049f6: 84b2 mv s1,a2 c00049f8: f6eff0ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49871 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49879 if (sgn == '-' || sgn == '+') c00049fc: fd55079b addiw a5,a0,-43 c0004a00: 9bf5 andi a5,a5,-3 c0004a02: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49878 sgn = string_get(sp, p); c0004a04: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49871 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49879 if (sgn == '-' || sgn == '+') c0004a06: e399 bnez a5,c0004a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49872 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49880 p++; c0004a08: 2405 addiw s0,s0,1 c0004a0a: c622 sw s0,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49874 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49882 res = string_get_digits(sp, &p, pval); c0004a0c: 8626 mv a2,s1 c0004a0e: 006c addi a1,sp,12 c0004a10: 8552 mv a0,s4 c0004a12: f2dff0ef jal ra,c000493e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49875 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49883 if (res == 0 && sgn == '-') { c0004a16: e911 bnez a0,c0004a2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49875 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49883 (discriminator 1) c0004a18: 02d00793 li a5,45 c0004a1c: 00f99763 bne s3,a5,c0004a2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49884 if (*pval == 0) c0004a20: 609c ld a5,0(s1) c0004a22: dfd5 beqz a5,c00049de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49886 *pval = -*pval; c0004a24: 40f007b3 neg a5,a5 c0004a28: e09c sd a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49888 *pp = p; c0004a2a: 47b2 lw a5,12(sp) c0004a2c: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49881 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49889 return res; c0004a30: bf45 j c00049e0 00000000c0004a32 : js_array_buffer_isView(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52844 } static JSValue js_array_buffer_isView(JSContext *ctx, @@ -12394,21 +12394,21 @@ static JSValue js_array_buffer_isView(JSContext *ctx, { c0004a32: 7179 addi sp,sp,-48 c0004a34: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52848 JSObject *p; BOOL res; res = FALSE; if (JS_VALUE_GET_TAG(argv[0]) == JS_TAG_OBJECT) { c0004a36: 4710 lw a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52844 { c0004a38: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52848 if (JS_VALUE_GET_TAG(argv[0]) == JS_TAG_OBJECT) { c0004a3a: 56fd li a3,-1 c0004a3c: 4781 li a5,0 c0004a3e: 00d61a63 bne a2,a3,c0004a52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52850 p = JS_VALUE_GET_OBJ(argv[0]); if (p->class_id >= JS_CLASS_UINT8C_ARRAY && c0004a42: 631c ld a5,0(a4) @@ -12416,7 +12416,7 @@ static JSValue js_array_buffer_isView(JSContext *ctx, c0004a48: 37ad addiw a5,a5,-21 c0004a4a: 17c2 slli a5,a5,0x30 c0004a4c: 93c1 srli a5,a5,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52847 res = FALSE; c0004a4e: 00c7b793 sltiu a5,a5,12 JS_NewBool(): @@ -12425,7 +12425,7 @@ JS_NewBool(): c0004a52: d202 sw zero,36(sp) c0004a54: d03e sw a5,32(sp) js_array_buffer_isView(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52856 p->class_id <= JS_CLASS_DATAVIEW) { res = TRUE; } @@ -12439,7 +12439,7 @@ js_array_buffer_isView(): 00000000c0004a5e : js_TA_cmp_int8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54227 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54235 if (signbit(x)) return signbit(y) ? 0 : -1; else return signbit(y) ? 1 : 0; } @@ -12448,129 +12448,129 @@ static int js_TA_cmp_int8(const void *a, const void *b, void *opaque) { return *(const int8_t *)a - *(const int8_t *)b; c0004a5e: 00050503 lb a0,0(a0) c0004a62: 00058783 lb a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54236 } c0004a66: 9d1d subw a0,a0,a5 c0004a68: 8082 ret 00000000c0004a6a : js_TA_cmp_uint8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54239 static int js_TA_cmp_uint8(const void *a, const void *b, void *opaque) { return *(const uint8_t *)a - *(const uint8_t *)b; c0004a6a: 00054503 lbu a0,0(a0) c0004a6e: 0005c783 lbu a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54240 } c0004a72: 9d1d subw a0,a0,a5 c0004a74: 8082 ret 00000000c0004a76 : js_TA_cmp_int16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54235 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54243 static int js_TA_cmp_int16(const void *a, const void *b, void *opaque) { return *(const int16_t *)a - *(const int16_t *)b; c0004a76: 00051503 lh a0,0(a0) c0004a7a: 00059783 lh a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54244 } c0004a7e: 9d1d subw a0,a0,a5 c0004a80: 8082 ret 00000000c0004a82 : js_TA_cmp_uint16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54239 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54247 static int js_TA_cmp_uint16(const void *a, const void *b, void *opaque) { return *(const uint16_t *)a - *(const uint16_t *)b; c0004a82: 00055503 lhu a0,0(a0) c0004a86: 0005d783 lhu a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54248 } c0004a8a: 9d1d subw a0,a0,a5 c0004a8c: 8082 ret 00000000c0004a8e : js_TA_cmp_int32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54251 static int js_TA_cmp_int32(const void *a, const void *b, void *opaque) { int32_t x = *(const int32_t *)a; c0004a8e: 411c lw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54252 int32_t y = *(const int32_t *)b; c0004a90: 4198 lw a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54245 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54253 return (y < x) - (y > x); c0004a92: 00f72533 slt a0,a4,a5 c0004a96: 00e7a7b3 slt a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54254 } c0004a9a: 9d1d subw a0,a0,a5 c0004a9c: 8082 ret 00000000c0004a9e : js_TA_cmp_uint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54249 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54257 static int js_TA_cmp_uint32(const void *a, const void *b, void *opaque) { uint32_t x = *(const uint32_t *)a; c0004a9e: 411c lw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54258 uint32_t y = *(const uint32_t *)b; c0004aa0: 4198 lw a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54251 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54259 return (y < x) - (y > x); c0004aa2: 00f73533 sltu a0,a4,a5 c0004aa6: 00e7b7b3 sltu a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54260 } c0004aaa: 9d1d subw a0,a0,a5 c0004aac: 8082 ret 00000000c0004aae : js_TA_cmp_int64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54263 static int js_TA_cmp_int64(const void *a, const void *b, void *opaque) { int64_t x = *(const int64_t *)a; c0004aae: 611c ld a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54264 int64_t y = *(const int64_t *)b; c0004ab0: 6198 ld a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54257 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54265 return (y < x) - (y > x); c0004ab2: 00f72533 slt a0,a4,a5 c0004ab6: 00e7a7b3 slt a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54258 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54266 } c0004aba: 9d1d subw a0,a0,a5 c0004abc: 8082 ret 00000000c0004abe : js_TA_cmp_uint64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54269 static int js_TA_cmp_uint64(const void *a, const void *b, void *opaque) { uint64_t x = *(const uint64_t *)a; c0004abe: 611c ld a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54270 uint64_t y = *(const uint64_t *)b; c0004ac0: 6198 ld a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54271 return (y < x) - (y > x); c0004ac2: 00f73533 sltu a0,a4,a5 c0004ac6: 00e7b7b3 sltu a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54272 } c0004aca: 9d1d subw a0,a0,a5 c0004acc: 8082 ret 00000000c0004ace : js_TA_get_int8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54275 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54283 static int js_TA_cmp_float64(const void *a, const void *b, void *opaque) { return js_cmp_doubles(*(const double *)a, *(const double *)b); } @@ -12578,7 +12578,7 @@ static int js_TA_cmp_float64(const void *a, const void *b, void *opaque) { static JSValue js_TA_get_int8(JSContext *ctx, const void *a) { return JS_NewInt32(ctx, *(const int8_t *)a); c0004ace: 00058783 lb a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54282 static JSValue js_TA_get_int8(JSContext *ctx, const void *a) { c0004ad2: 1101 addi sp,sp,-32 JS_NewInt32(): @@ -12587,7 +12587,7 @@ JS_NewInt32(): c0004ad4: e802 sd zero,16(sp) c0004ad6: c83e sw a5,16(sp) js_TA_get_int8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54284 } c0004ad8: 6542 ld a0,16(sp) c0004ada: 4581 li a1,0 @@ -12596,12 +12596,12 @@ js_TA_get_int8(): 00000000c0004ae0 : js_TA_get_uint8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54279 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54287 static JSValue js_TA_get_uint8(JSContext *ctx, const void *a) { return JS_NewInt32(ctx, *(const uint8_t *)a); c0004ae0: 0005c783 lbu a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54286 static JSValue js_TA_get_uint8(JSContext *ctx, const void *a) { c0004ae4: 1101 addi sp,sp,-32 JS_NewInt32(): @@ -12609,7 +12609,7 @@ JS_NewInt32(): c0004ae6: e802 sd zero,16(sp) c0004ae8: c83e sw a5,16(sp) js_TA_get_uint8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54288 } c0004aea: 6542 ld a0,16(sp) c0004aec: 4581 li a1,0 @@ -12618,12 +12618,12 @@ js_TA_get_uint8(): 00000000c0004af2 : js_TA_get_int16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54283 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54291 static JSValue js_TA_get_int16(JSContext *ctx, const void *a) { return JS_NewInt32(ctx, *(const int16_t *)a); c0004af2: 00059783 lh a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54282 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54290 static JSValue js_TA_get_int16(JSContext *ctx, const void *a) { c0004af6: 1101 addi sp,sp,-32 JS_NewInt32(): @@ -12631,7 +12631,7 @@ JS_NewInt32(): c0004af8: e802 sd zero,16(sp) c0004afa: c83e sw a5,16(sp) js_TA_get_int16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54284 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54292 } c0004afc: 6542 ld a0,16(sp) c0004afe: 4581 li a1,0 @@ -12640,12 +12640,12 @@ js_TA_get_int16(): 00000000c0004b04 : js_TA_get_uint16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54287 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54295 static JSValue js_TA_get_uint16(JSContext *ctx, const void *a) { return JS_NewInt32(ctx, *(const uint16_t *)a); c0004b04: 0005d783 lhu a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54294 static JSValue js_TA_get_uint16(JSContext *ctx, const void *a) { c0004b08: 1101 addi sp,sp,-32 JS_NewInt32(): @@ -12653,7 +12653,7 @@ JS_NewInt32(): c0004b0a: e802 sd zero,16(sp) c0004b0c: c83e sw a5,16(sp) js_TA_get_uint16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54296 } c0004b0e: 6542 ld a0,16(sp) c0004b10: 4581 li a1,0 @@ -12662,12 +12662,12 @@ js_TA_get_uint16(): 00000000c0004b16 : js_TA_get_int32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54291 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54299 static JSValue js_TA_get_int32(JSContext *ctx, const void *a) { return JS_NewInt32(ctx, *(const int32_t *)a); c0004b16: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54290 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54298 static JSValue js_TA_get_int32(JSContext *ctx, const void *a) { c0004b18: 1101 addi sp,sp,-32 JS_NewInt32(): @@ -12675,7 +12675,7 @@ JS_NewInt32(): c0004b1a: e802 sd zero,16(sp) c0004b1c: c83e sw a5,16(sp) js_TA_get_int32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54300 } c0004b1e: 6542 ld a0,16(sp) c0004b20: 4581 li a1,0 @@ -12684,12 +12684,12 @@ js_TA_get_int32(): 00000000c0004b26 : js_TA_get_uint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54295 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54303 static JSValue js_TA_get_uint32(JSContext *ctx, const void *a) { return JS_NewUint32(ctx, *(const uint32_t *)a); c0004b26: 4198 lw a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54302 static JSValue js_TA_get_uint32(JSContext *ctx, const void *a) { c0004b28: 1101 addi sp,sp,-32 JS_NewUint32(): @@ -12710,7 +12710,7 @@ JS_NewUint32(): return v; c0004b3c: c03e sw a5,0(sp) js_TA_get_uint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54304 } c0004b3e: 6502 ld a0,0(sp) c0004b40: 6105 addi sp,sp,32 @@ -12730,7 +12730,7 @@ js_TA_get_uint32(): 00000000c0004b54 : js_TA_get_float32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54315 static JSValue js_TA_get_uint64(JSContext *ctx, const void *a) { return JS_NewBigUint64(ctx, *(uint64_t *)a); } @@ -12738,10 +12738,10 @@ static JSValue js_TA_get_uint64(JSContext *ctx, const void *a) { static JSValue js_TA_get_float32(JSContext *ctx, const void *a) { return __JS_NewFloat64(ctx, *(const float *)a); c0004b54: 0005a787 flw fa5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54314 static JSValue js_TA_get_float32(JSContext *ctx, const void *a) { c0004b58: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54316 } c0004b5a: 459d li a1,7 c0004b5c: 420787d3 fcvt.d.s fa5,fa5 @@ -12751,11 +12751,11 @@ static JSValue js_TA_get_float32(JSContext *ctx, const void *a) { 00000000c0004b68 : js_TA_get_float64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54318 static JSValue js_TA_get_float64(JSContext *ctx, const void *a) { c0004b68: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54320 return __JS_NewFloat64(ctx, *(const double *)a); } c0004b6a: 6188 ld a0,0(a1) @@ -12765,17 +12765,17 @@ static JSValue js_TA_get_float64(JSContext *ctx, const void *a) { 00000000c0004b72 : JS_NewClass1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3472 if (class_id >= (1 << 16)) c0004b72: 67c1 lui a5,0x10 c0004b74: 00f5e463 bltu a1,a5,c0004b7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3473 return -1; c0004b78: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3512 } c0004b7a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3459 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3467 { c0004b7c: 715d addi sp,sp,-80 c0004b7e: fc26 sd s1,56(sp) @@ -12788,7 +12788,7 @@ JS_NewClass1(): c0004b8c: e85a sd s6,16(sp) c0004b8e: e45e sd s7,8(sp) c0004b90: e062 sd s8,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3474 if (class_id < rt->class_count && c0004b92: 557c lw a5,108(a0) c0004b94: 84aa mv s1,a0 @@ -12796,7 +12796,7 @@ JS_NewClass1(): c0004b98: 89b2 mv s3,a2 c0004b9a: 8a36 mv s4,a3 c0004b9c: 02f5fa63 bgeu a1,a5,c0004bd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3467 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3475 (discriminator 1) rt->class_array[class_id].class_id != 0) c0004ba0: 02059713 slli a4,a1,0x20 c0004ba4: 9301 srli a4,a4,0x20 @@ -12804,14 +12804,14 @@ JS_NewClass1(): c0004baa: 02d70733 mul a4,a4,a3 c0004bae: 793c ld a5,112(a0) c0004bb0: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3466 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3474 (discriminator 1) if (class_id < rt->class_count && c0004bb2: 439c lw a5,0(a5) c0004bb4: c7c1 beqz a5,c0004c3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3473 return -1; c0004bb6: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3512 } c0004bb8: 60a6 ld ra,72(sp) c0004bba: 6406 ld s0,64(sp) @@ -12825,11 +12825,11 @@ JS_NewClass1(): c0004bca: 6c02 ld s8,0(sp) c0004bcc: 6161 addi sp,sp,80 c0004bce: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3480 max_int(class_id + 1, rt->class_count * 3 / 2)); c0004bd0: 440d li s0,3 c0004bd2: 02f4043b mulw s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3479 new_size = max_int(JS_CLASS_INIT_COUNT, c0004bd6: 4789 li a5,2 c0004bd8: 02f4473b divw a4,s0,a5 @@ -12837,28 +12837,28 @@ JS_NewClass1(): c0004be0: 843a mv s0,a4 c0004be2: 00f75463 bge a4,a5,c0004bea c0004be6: 03600413 li s0,54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3480 max_int(class_id + 1, rt->class_count * 3 / 2)); c0004bea: 0019071b addiw a4,s2,1 c0004bee: 0004069b sext.w a3,s0 c0004bf2: 00e6d463 bge a3,a4,c0004bfa c0004bf6: 0007041b sext.w s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 list_for_each(el, &rt->context_list) { c0004bfa: 0804ba83 ld s5,128(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3486 new_tab = js_realloc_rt(rt, ctx->class_proto, c0004bfe: 00441b93 slli s7,s0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 list_for_each(el, &rt->context_list) { c0004c02: 07848b13 addi s6,s1,120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3491 new_tab[i] = JS_NULL; c0004c06: 4c09 li s8,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3475 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 (discriminator 1) list_for_each(el, &rt->context_list) { c0004c08: 096a9363 bne s5,s6,c0004c8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3487 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3495 new_class_array = js_realloc_rt(rt, rt->class_array, c0004c0c: 02800b13 li s6,40 c0004c10: 03640633 mul a2,s0,s6 @@ -12866,29 +12866,29 @@ JS_NewClass1(): c0004c16: 8526 mv a0,s1 c0004c18: c58ff0ef jal ra,c0004070 c0004c1c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3497 if (!new_class_array) c0004c1e: dd41 beqz a0,c0004bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3499 memset(new_class_array + rt->class_count, 0, c0004c20: 54e8 lw a0,108(s1) c0004c22: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3500 (new_size - rt->class_count) * sizeof(JSClass)); c0004c24: 40a4063b subw a2,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3499 memset(new_class_array + rt->class_count, 0, c0004c28: 03650533 mul a0,a0,s6 c0004c2c: 03660633 mul a2,a2,s6 c0004c30: 9556 add a0,a0,s5 - c0004c32: 43f510ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3493 + c0004c32: 60f510ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3501 rt->class_array = new_class_array; c0004c36: 0754b823 sd s5,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3502 rt->class_count = new_size; c0004c3a: d4e0 sw s0,108(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3504 cl = &rt->class_array[class_id]; c0004c3c: 02091793 slli a5,s2,0x20 c0004c40: 9381 srli a5,a5,0x20 @@ -12896,82 +12896,82 @@ JS_NewClass1(): c0004c46: 02e78733 mul a4,a5,a4 c0004c4a: 78bc ld a5,112(s1) c0004c4c: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3505 cl->class_id = class_id; c0004c4e: 0127a023 sw s2,0(a5) # 10000 <__clzdi2-0xbfff0000> JS_DupAtomRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2649 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2657 if (!__JS_AtomIsConst(v)) { c0004c52: 0d700713 li a4,215 c0004c56: 01475c63 bge a4,s4,c0004c6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2658 p = rt->atom_array[v]; c0004c5a: 70b8 ld a4,96(s1) c0004c5c: 020a1613 slli a2,s4,0x20 c0004c60: 01d65693 srli a3,a2,0x1d c0004c64: 9736 add a4,a4,a3 c0004c66: 6314 ld a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2659 p->header.ref_count++; c0004c68: 4298 lw a4,0(a3) c0004c6a: 2705 addiw a4,a4,1 c0004c6c: c298 sw a4,0(a3) JS_NewClass1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3506 cl->class_name = JS_DupAtomRT(rt, name); c0004c6e: 0147a223 sw s4,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3507 cl->finalizer = class_def->finalizer; c0004c72: 0089b703 ld a4,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3511 return 0; c0004c76: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3507 cl->finalizer = class_def->finalizer; c0004c78: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3500 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3508 cl->gc_mark = class_def->gc_mark; c0004c7a: 0109b703 ld a4,16(s3) c0004c7e: eb98 sd a4,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3501 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3509 cl->call = class_def->call; c0004c80: 0189b703 ld a4,24(s3) c0004c84: ef98 sd a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3510 cl->exotic = class_def->exotic; c0004c86: 0209b703 ld a4,32(s3) c0004c8a: f398 sd a4,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3511 return 0; c0004c8c: b735 j c0004bb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3486 new_tab = js_realloc_rt(rt, ctx->class_proto, c0004c8e: 020ab583 ld a1,32(s5) c0004c92: 865e mv a2,s7 c0004c94: 8526 mv a0,s1 c0004c96: bdaff0ef jal ra,c0004070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3488 if (!new_tab) c0004c9a: dd11 beqz a0,c0004bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3490 for(i = rt->class_count; i < new_size; i++) c0004c9c: 54f8 lw a4,108(s1) c0004c9e: 00471793 slli a5,a4,0x4 c0004ca2: 97aa add a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3482 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3490 (discriminator 1) c0004ca4: 00874763 blt a4,s0,c0004cb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3484 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3492 (discriminator 2) ctx->class_proto = new_tab; c0004ca8: 02aab023 sd a0,32(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3475 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 (discriminator 2) list_for_each(el, &rt->context_list) { c0004cac: 008aba83 ld s5,8(s5) c0004cb0: bfa1 j c0004c08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3483 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3491 (discriminator 3) new_tab[i] = JS_NULL; c0004cb2: 0007b023 sd zero,0(a5) c0004cb6: 0187b423 sd s8,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3482 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3490 (discriminator 3) for(i = rt->class_count; i < new_size; i++) c0004cba: 2705 addiw a4,a4,1 c0004cbc: 07c1 addi a5,a5,16 @@ -12979,7 +12979,7 @@ JS_NewClass1(): 00000000c0004cc0 : init_class_range(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1539 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1543 { c0004cc0: 711d addi sp,sp,-96 c0004cc2: e8a2 sd s0,80(sp) @@ -12991,44 +12991,44 @@ init_class_range(): c0004cce: 84ae mv s1,a1 c0004cd0: 8432 mv s0,a2 c0004cd2: 00c6893b addw s2,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1550 cm->finalizer = tab[i].finalizer; c0004cd6: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1552 if (JS_NewClass1(rt, class_id, cm, tab[i].class_name) < 0) c0004cd8: 4094 lw a3,0(s1) c0004cda: 0030 addi a2,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1550 cm->finalizer = tab[i].finalizer; c0004cdc: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1547 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1551 cm->gc_mark = tab[i].gc_mark; c0004cde: 689c ld a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1552 if (JS_NewClass1(rt, class_id, cm, tab[i].class_name) < 0) c0004ce0: 85a2 mv a1,s0 c0004ce2: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1545 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1549 memset(cm, 0, sizeof(*cm)); c0004ce4: e402 sd zero,8(sp) c0004ce6: f002 sd zero,32(sp) c0004ce8: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1547 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1551 cm->gc_mark = tab[i].gc_mark; c0004cea: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1552 if (JS_NewClass1(rt, class_id, cm, tab[i].class_name) < 0) c0004cec: e87ff0ef jal ra,c0004b72 c0004cf0: 00054e63 bltz a0,c0004d0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1543 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1547 (discriminator 2) for(i = 0; i < count; i++) { c0004cf4: 2405 addiw s0,s0,1 c0004cf6: 04e1 addi s1,s1,24 c0004cf8: fd241fe3 bne s0,s2,c0004cd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1551 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1555 return 0; c0004cfc: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1556 } c0004cfe: 60e6 ld ra,88(sp) c0004d00: 6446 ld s0,80(sp) @@ -13037,37 +13037,37 @@ init_class_range(): c0004d06: 79e2 ld s3,56(sp) c0004d08: 6125 addi sp,sp,96 c0004d0a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1553 return -1; c0004d0c: 557d li a0,-1 c0004d0e: bfc5 j c0004cfe 00000000c0004d10 : find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; c0004d10: 6d98 ld a4,24(a1) js_module_ns_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27861 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27869 { c0004d12: 1141 addi sp,sp,-16 c0004d14: e432 sd a2,8(sp) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; c0004d16: 531c lw a5,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; c0004d18: 5671 li a2,-4 js_module_ns_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27861 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27869 { c0004d1a: e02e sd a1,0(sp) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; c0004d1c: 8ff5 and a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; c0004d1e: 1782 slli a5,a5,0x20 c0004d20: 9381 srli a5,a5,0x20 @@ -13075,37 +13075,37 @@ find_own_property1(): c0004d24: 02c787b3 mul a5,a5,a2 c0004d28: 97ba add a5,a5,a4 c0004d2a: 0007e503 lwu a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; c0004d2e: 040007b7 lui a5,0x4000 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; c0004d32: 04070713 addi a4,a4,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; c0004d36: 17fd addi a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { c0004d38: e509 bnez a0,c0004d42 js_module_ns_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27863 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27871 } c0004d3a: 00a03533 snez a0,a0 c0004d3e: 0141 addi sp,sp,16 c0004d40: 8082 ret find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; c0004d42: 050e slli a0,a0,0x3 c0004d44: 1561 addi a0,a0,-8 c0004d46: 953a add a0,a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { c0004d48: 4150 lw a2,4(a0) c0004d4a: fed608e3 beq a2,a3,c0004d3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; c0004d4e: 4108 lw a0,0(a0) c0004d50: 8d7d and a0,a0,a5 @@ -13115,83 +13115,83 @@ find_own_property1(): 00000000c0004d58 : get_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6491 const uint8_t *ptr = buf; c0004d58: 87ae mv a5,a1 c0004d5a: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6485 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6493 v = 0; c0004d5c: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6494 for(i = 0; i < 5; i++) { c0004d5e: 02300313 li t1,35 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6487 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6495 if (unlikely(ptr >= buf_end)) c0004d62: 02c7f963 bgeu a5,a2,c0004d94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6497 a = *ptr++; c0004d66: 0007c803 lbu a6,0(a5) # 4000000 <__clzdi2-0xbc000000> c0004d6a: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6498 v |= (a & 0x7f) << (i * 7); c0004d6c: 07f87893 andi a7,a6,127 c0004d70: 00d898bb sllw a7,a7,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6499 if (!(a & 0x80)) { c0004d74: 0188181b slliw a6,a6,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6498 v |= (a & 0x7f) << (i * 7); c0004d78: 01176733 or a4,a4,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6499 if (!(a & 0x80)) { c0004d7c: 4188581b sraiw a6,a6,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6498 v |= (a & 0x7f) << (i * 7); c0004d80: 2701 sext.w a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6499 if (!(a & 0x80)) { c0004d82: 00084663 bltz a6,c0004d8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6500 *pval = v; c0004d86: c118 sw a4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6493 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6501 return ptr - buf; c0004d88: 40b7853b subw a0,a5,a1 c0004d8c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6486 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6494 (discriminator 2) for(i = 0; i < 5; i++) { c0004d8e: 269d addiw a3,a3,7 c0004d90: fc6699e3 bne a3,t1,c0004d62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6504 *pval = 0; c0004d94: 00052023 sw zero,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6505 return -1; c0004d98: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6506 } c0004d9a: 8082 ret 00000000c0004d9c : get_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6510 { c0004d9c: 1101 addi sp,sp,-32 c0004d9e: e822 sd s0,16(sp) c0004da0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6505 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6513 ret = get_leb128(&val, buf, buf_end); c0004da2: 0068 addi a0,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6510 { c0004da4: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6505 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6513 ret = get_leb128(&val, buf, buf_end); c0004da6: fb3ff0ef jal ra,c0004d58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6514 if (ret < 0) { c0004daa: 02054063 bltz a0,c0004dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6518 *pval = (val >> 1) ^ -(val & 1); c0004dae: 4732 lw a4,12(sp) c0004db0: 00177793 andi a5,a4,1 @@ -13199,72 +13199,72 @@ get_sleb128(): c0004db8: 0017571b srliw a4,a4,0x1 c0004dbc: 8fb9 xor a5,a5,a4 c0004dbe: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6520 } c0004dc0: 60e2 ld ra,24(sp) c0004dc2: c01c sw a5,0(s0) c0004dc4: 6442 ld s0,16(sp) c0004dc6: 6105 addi sp,sp,32 c0004dc8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6515 *pval = 0; c0004dca: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6516 return -1; c0004dcc: 557d li a0,-1 c0004dce: bfcd j c0004dc0 00000000c0004dd0 : JS_AtomIsArrayIndex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3181 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3189 { c0004dd0: 1101 addi sp,sp,-32 c0004dd2: e822 sd s0,16(sp) c0004dd4: ec06 sd ra,24(sp) c0004dd6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3190 if (__JS_AtomIsTaggedInt(atom)) { c0004dd8: 00065a63 bgez a2,c0004dec __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; c0004ddc: 1606 slli a2,a2,0x21 c0004dde: 9205 srli a2,a2,0x21 JS_AtomIsArrayIndex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3191 *pval = __JS_AtomToUInt32(atom); c0004de0: c190 sw a2,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3192 return TRUE; c0004de2: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3201 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3209 (discriminator 1) } c0004de4: 60e2 ld ra,24(sp) c0004de6: 6442 ld s0,16(sp) c0004de8: 6105 addi sp,sp,32 c0004dea: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3194 JSRuntime *rt = ctx->rt; c0004dec: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3198 assert(atom < rt->atom_size); c0004dee: 4bb8 lw a4,80(a5) c0004df0: 00e66c63 bltu a2,a4,c0004e08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3190 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3198 (discriminator 1) c0004df4: 6585 lui a1,0x1 c0004df6: 4601 li a2,0 - c0004df8: c7658593 addi a1,a1,-906 # c76 <__clzdi2-0xbffff38a> + c0004df8: c7e58593 addi a1,a1,-898 # c7e <__clzdi2-0xbffff382> c0004dfc: 00058517 auipc a0,0x58 - c0004e00: c7c50513 addi a0,a0,-900 # c005ca78 - c0004e04: 4154e0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3191 (discriminator 2) + c0004e00: e4c50513 addi a0,a0,-436 # c005cc48 + c0004e04: 5e54e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3199 (discriminator 2) p = rt->atom_array[atom]; c0004e08: 73bc ld a5,96(a5) c0004e0a: 02061713 slli a4,a2,0x20 c0004e0e: 01d75613 srli a2,a4,0x1d c0004e12: 963e add a2,a2,a5 c0004e14: 620c ld a1,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3192 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3200 (discriminator 2) if (p->atom_type == JS_ATOM_TYPE_STRING && c0004e16: c0000737 lui a4,0xc0000 c0004e1a: 459c lw a5,8(a1) @@ -13272,27 +13272,27 @@ JS_AtomIsArrayIndex(): c0004e1e: 2781 sext.w a5,a5 c0004e20: 40000737 lui a4,0x40000 c0004e24: 00e79b63 bne a5,a4,c0004e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3193 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3201 (discriminator 1) is_num_string(&val, p) && val != -1) { c0004e28: 0068 addi a0,sp,12 c0004e2a: a80ff0ef jal ra,c00040aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3192 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3200 (discriminator 1) if (p->atom_type == JS_ATOM_TYPE_STRING && c0004e2e: c511 beqz a0,c0004e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3193 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3201 is_num_string(&val, p) && val != -1) { c0004e30: 47b2 lw a5,12(sp) c0004e32: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3203 return TRUE; c0004e34: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3193 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3201 is_num_string(&val, p) && val != -1) { c0004e36: 00e79463 bne a5,a4,c0004e3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3197 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3205 *pval = 0; c0004e3a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3206 return FALSE; c0004e3c: 4501 li a0,0 c0004e3e: c01c sw a5,0(s0) @@ -13300,7 +13300,7 @@ JS_AtomIsArrayIndex(): 00000000c0004e42 : num_keys_cmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7546 { c0004e42: 7179 addi sp,sp,-48 c0004e44: f022 sd s0,32(sp) @@ -13308,53 +13308,53 @@ num_keys_cmp(): c0004e48: f406 sd ra,40(sp) c0004e4a: e84a sd s2,16(sp) c0004e4c: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7545 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7553 atom1_is_integer = JS_AtomIsArrayIndex(ctx, &v1, atom1); c0004e4e: 4150 lw a2,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7549 JSAtom atom2 = ((const JSPropertyEnum *)p2)->atom; c0004e50: 0045a903 lw s2,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7545 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7553 atom1_is_integer = JS_AtomIsArrayIndex(ctx, &v1, atom1); c0004e54: 8522 mv a0,s0 c0004e56: 002c addi a1,sp,8 c0004e58: f79ff0ef jal ra,c0004dd0 c0004e5c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7554 atom2_is_integer = JS_AtomIsArrayIndex(ctx, &v2, atom2); c0004e5e: 864a mv a2,s2 c0004e60: 006c addi a1,sp,12 c0004e62: 8522 mv a0,s0 c0004e64: f6dff0ef jal ra,c0004dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7547 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7555 assert(atom1_is_integer && atom2_is_integer); c0004e68: c091 beqz s1,c0004e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7547 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7555 (discriminator 2) c0004e6a: e919 bnez a0,c0004e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7547 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7555 (discriminator 3) c0004e6c: 6589 lui a1,0x2 c0004e6e: 4601 li a2,0 - c0004e70: d7b58593 addi a1,a1,-645 # 1d7b <__clzdi2-0xbfffe285> + c0004e70: d8358593 addi a1,a1,-637 # 1d83 <__clzdi2-0xbfffe27d> c0004e74: 00058517 auipc a0,0x58 - c0004e78: c0450513 addi a0,a0,-1020 # c005ca78 - c0004e7c: 39d4e0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7548 (discriminator 4) + c0004e78: dd450513 addi a0,a0,-556 # c005cc48 + c0004e7c: 56d4e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7556 (discriminator 4) if (v1 < v2) c0004e80: 47a2 lw a5,8(sp) c0004e82: 4732 lw a4,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7549 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7557 (discriminator 4) return -1; c0004e84: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7548 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7556 (discriminator 4) if (v1 < v2) c0004e86: 00e7e563 bltu a5,a4,c0004e90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7558 else if (v1 == v2) c0004e8a: 8f99 sub a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7557 return -1; c0004e8c: 00f03533 snez a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7562 } c0004e90: 70a2 ld ra,40(sp) c0004e92: 7402 ld s0,32(sp) @@ -13365,23 +13365,23 @@ num_keys_cmp(): 00000000c0004e9c : JS_AtomGetKind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2675 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2683 if (__JS_AtomIsTaggedInt(v)) c0004e9c: 0405c363 bltz a1,c0004ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2677 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2685 p = rt->atom_array[v]; c0004ea0: 6d1c ld a5,24(a0) c0004ea2: 02059713 slli a4,a1,0x20 c0004ea6: 01d75593 srli a1,a4,0x1d c0004eaa: 73bc ld a5,96(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2686 switch(p->atom_type) { c0004eac: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2677 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2685 p = rt->atom_array[v]; c0004eae: 95be add a1,a1,a5 c0004eb0: 619c ld a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2686 switch(p->atom_type) { c0004eb2: 479c lw a5,8(a5) c0004eb4: 01e7d71b srliw a4,a5,0x1e @@ -13390,76 +13390,76 @@ JS_AtomGetKind(): c0004ebe: 00d70a63 beq a4,a3,c0004ed2 c0004ec2: 4785 li a5,1 c0004ec4: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2692 switch(p->hash) { c0004ec6: 02f70163 beq a4,a5,c0004ee8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2678 { c0004eca: 1141 addi sp,sp,-16 c0004ecc: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2698 abort(); - c0004ece: 13d500ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2684 + c0004ece: 30d500ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2692 switch(p->hash) { c0004ed2: 178a slli a5,a5,0x22 c0004ed4: 0227d713 srli a4,a5,0x22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2690 return JS_ATOM_KIND_SYMBOL; c0004ed8: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2692 switch(p->hash) { c0004eda: c799 beqz a5,c0004ee8 c0004edc: 4785 li a5,1 c0004ede: 4509 li a0,2 c0004ee0: b7dd j c0004ec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2684 return JS_ATOM_KIND_STRING; c0004ee2: 4501 li a0,0 c0004ee4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2690 return JS_ATOM_KIND_SYMBOL; c0004ee6: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2695 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2703 } c0004ee8: 8082 ret 00000000c0004eea : js_pow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12122 if (unlikely(!isfinite(b)) && fabs(a) == 1) { c0004eea: 00070797 auipc a5,0x70 - c0004eee: 89e7b787 fld fa5,-1890(a5) # c0074788 <_erodata+0x8> + c0004eee: afe7b787 fld fa5,-1282(a5) # c00749e8 <_erodata+0x8> c0004ef2: 12f7f7d3 fmul.d fa5,fa5,fa5 c0004ef6: a2b7a7d3 feq.d a5,fa5,fa1 c0004efa: eb89 bnez a5,c0004f0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12114 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12122 (discriminator 2) c0004efc: 22f79753 fneg.d fa4,fa5 c0004f00: a2b727d3 feq.d a5,fa4,fa1 c0004f04: e781 bnez a5,c0004f0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12122 c0004f06: a2b5a7d3 feq.d a5,fa1,fa1 c0004f0a: eb91 bnez a5,c0004f1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12114 (discriminator 9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12122 (discriminator 9) c0004f0c: 22a52753 fabs.d fa4,fa0 c0004f10: 00070797 auipc a5,0x70 - c0004f14: 8887b687 fld fa3,-1912(a5) # c0074798 <_erodata+0x18> + c0004f14: ae87b687 fld fa3,-1304(a5) # c00749f8 <_erodata+0x18> c0004f18: a2d727d3 feq.d a5,fa4,fa3 c0004f1c: e399 bnez a5,c0004f22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12126 return pow(a, b); - c0004f1e: 3b75206f j c0057ad4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12116 + c0004f1e: 5875206f j c0057ca4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12124 return JS_FLOAT64_NAN; c0004f22: f2000553 fmv.d.x fa0,zero c0004f26: 12a7f553 fmul.d fa0,fa5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12128 } c0004f2a: 8082 ret 00000000c0004f2c : skip_shebang(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21480 { c0004f2c: 715d addi sp,sp,-80 c0004f2e: e486 sd ra,72(sp) @@ -13470,58 +13470,58 @@ skip_shebang(): c0004f38: f052 sd s4,32(sp) c0004f3a: ec56 sd s5,24(sp) c0004f3c: e85a sd s6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21473 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21481 const uint8_t *p = *pp; c0004f3e: 611c ld a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21484 if (p[0] == '#' && p[1] == '!') { c0004f40: 02300713 li a4,35 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21473 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21481 const uint8_t *p = *pp; c0004f44: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21484 if (p[0] == '#' && p[1] == '!') { c0004f46: 0007c683 lbu a3,0(a5) c0004f4a: 02e69c63 bne a3,a4,c0004f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21476 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21484 (discriminator 1) c0004f4e: 0017c683 lbu a3,1(a5) c0004f52: 02100713 li a4,33 c0004f56: 02e69663 bne a3,a4,c0004f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21485 p += 2; c0004f5a: 0789 addi a5,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21491 if (c == CP_LS || c == CP_PS) { c0004f5c: 7979 lui s2,0xffffe c0004f5e: 842a mv s0,a0 c0004f60: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21485 p += 2; c0004f62: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21479 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21487 if (*p == '\n' || *p == '\r') { c0004f64: 49a9 li s3,10 c0004f66: 4a35 li s4,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21491 if (c == CP_LS || c == CP_PS) { c0004f68: fd89091b addiw s2,s2,-40 c0004f6c: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21485 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21493 } else if (c == -1) { c0004f6e: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21486 while (p < buf_end) { c0004f70: 6522 ld a0,8(sp) c0004f72: 00957663 bgeu a0,s1,c0004f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21479 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21487 if (*p == '\n' || *p == '\r') { c0004f76: 00054783 lbu a5,0(a0) c0004f7a: 01379e63 bne a5,s3,c0004f96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21500 *pp = p; c0004f7e: 67a2 ld a5,8(sp) c0004f80: e01c sd a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21502 } c0004f82: 60a6 ld ra,72(sp) c0004f84: 6406 ld s0,64(sp) @@ -13533,31 +13533,31 @@ skip_shebang(): c0004f90: 6b42 ld s6,16(sp) c0004f92: 6161 addi sp,sp,80 c0004f94: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21479 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21487 (discriminator 1) if (*p == '\n' || *p == '\r') { c0004f96: ff4784e3 beq a5,s4,c0004f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21481 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21489 } else if (*p >= 0x80) { c0004f9a: 0187979b slliw a5,a5,0x18 c0004f9e: 4187d79b sraiw a5,a5,0x18 c0004fa2: 0207d063 bgez a5,c0004fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21490 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); c0004fa6: 0030 addi a2,sp,8 c0004fa8: 4599 li a1,6 - c0004faa: 771420ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21483 + c0004faa: 140430ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21491 if (c == CP_LS || c == CP_PS) { c0004fae: 00a907bb addw a5,s2,a0 c0004fb2: fcfaf6e3 bgeu s5,a5,c0004f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21485 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21493 } else if (c == -1) { c0004fb6: fb651de3 bne a0,s6,c0004f70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21494 p++; /* skip invalid UTF-8 */ c0004fba: 67a2 ld a5,8(sp) c0004fbc: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21497 p++; c0004fbe: e43e sd a5,8(sp) c0004fc0: bf45 j c0004f70 @@ -13566,7 +13566,7 @@ skip_shebang(): 00000000c0004fc8 : skip_spaces(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10104 { c0004fc8: 7139 addi sp,sp,-64 c0004fca: f822 sd s0,48(sp) @@ -13576,47 +13576,47 @@ skip_spaces(): c0004fd2: e852 sd s4,16(sp) c0004fd4: fc06 sd ra,56(sp) c0004fd6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10108 p = p_start = (const uint8_t *)pc; c0004fd8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10111 if (c < 128) { c0004fda: 07f00913 li s2,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10112 if (!((c >= 0x09 && c <= 0x0d) || (c == 0x20))) c0004fde: 4991 li s3,4 c0004fe0: 02000a13 li s4,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10110 c = *p; c0004fe4: 00044703 lbu a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10111 if (c < 128) { c0004fe8: 00e96a63 bltu s2,a4,c0004ffc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10112 if (!((c >= 0x09 && c <= 0x0d) || (c == 0x20))) c0004fec: ff77079b addiw a5,a4,-9 c0004ff0: 00f9f463 bgeu s3,a5,c0004ff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10104 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10112 (discriminator 1) c0004ff4: 01471e63 bne a4,s4,c0005010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10114 p++; c0004ff8: 0405 addi s0,s0,1 c0004ffa: b7ed j c0004fe4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10116 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p_next); c0004ffc: 0030 addi a2,sp,8 c0004ffe: 4599 li a1,6 c0005000: 8522 mv a0,s0 - c0005002: 719420ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10109 + c0005002: 0e8430ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10117 if (!lre_is_space(c)) - c0005006: 0dc3f0ef jal ra,c00440e2 + c0005006: 2ac3f0ef jal ra,c00442b2 c000500a: c119 beqz a0,c0005010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10111 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10119 p = p_next; c000500c: 6422 ld s0,8(sp) c000500e: bfd9 j c0004fe4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10115 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10123 } c0005010: 4094053b subw a0,s0,s1 c0005014: 70e2 ld ra,56(sp) @@ -13630,7 +13630,7 @@ skip_spaces(): 00000000c0005024 : dbuf_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6468 { c0005024: 1101 addi sp,sp,-32 c0005026: e822 sd s0,16(sp) @@ -13638,65 +13638,65 @@ dbuf_put_leb128(): c000502a: ec06 sd ra,24(sp) c000502c: 84aa mv s1,a0 c000502e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6471 a = v & 0x7f; c0005030: 07f47593 andi a1,s0,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6472 v >>= 7; c0005034: 0074541b srliw s0,s0,0x7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6474 dbuf_putc(s, a | 0x80); c0005038: 0ff5f593 zext.b a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6473 if (v != 0) { c000503c: c419 beqz s0,c000504a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6474 dbuf_putc(s, a | 0x80); c000503e: 0805e593 ori a1,a1,128 c0005042: 8526 mv a0,s1 - c0005044: 4ff420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6463 + c0005044: 6cf420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6471 a = v & 0x7f; c0005048: b7e5 j c0005030 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6480 } c000504a: 6442 ld s0,16(sp) c000504c: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6476 dbuf_putc(s, a); c000504e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6480 } c0005050: 64a2 ld s1,8(sp) c0005052: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6476 dbuf_putc(s, a); - c0005054: 4ef4206f j c0047d42 + c0005054: 6bf4206f j c0047f12 00000000c0005058 : emit_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21557 dbuf_putc(&s->cur_func->byte_code, val); c0005058: 7528 ld a0,104(a0) c000505a: 13050513 addi a0,a0,304 - c000505e: 4e54206f j c0047d42 + c000505e: 6b54206f j c0047f12 00000000c0005062 : js_dbuf_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1475 { c0005062: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 dbuf_init2(s, ctx->rt, (DynBufReallocFunc *)js_realloc_rt); c0005064: 6d0c ld a1,24(a0) c0005066: fffff617 auipc a2,0xfffff c000506a: 00a60613 addi a2,a2,10 # c0004070 c000506e: 853e mv a0,a5 - c0005070: 3614206f j c0047bd0 + c0005070: 5314206f j c0047da0 00000000c0005074 : code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31151 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31159 { c0005074: 711d addi sp,sp,-96 c0005076: e0ba sd a4,64(sp) @@ -13708,57 +13708,57 @@ code_match(): c0005082: fc36 sd a3,56(sp) c0005084: e4be sd a5,72(sp) c0005086: e8c2 sd a6,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31160 const uint8_t *tab = s->bc_buf; c0005088: 6110 ld a2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31166 va_start(ap, pos); c000508a: 1818 addi a4,sp,48 c000508c: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31165 line_num = -1; c000508e: 58fd li a7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31170 if (op1 == -1) { c0005090: 537d li t1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31180 len = opcode_info[op].size; c0005092: 00062e17 auipc t3,0x62 - c0005096: a7ee0e13 addi t3,t3,-1410 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31176 + c0005096: cdee0e13 addi t3,t3,-802 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31184 if (op == OP_line_num) { c000509a: 0c600f13 li t5,198 c000509e: 4fdd li t6,23 c00050a0: 00058e97 auipc t4,0x58 - c00050a4: 9e4e8e93 addi t4,t4,-1564 # c005ca84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31161 + c00050a4: bb4e8e93 addi t4,t4,-1100 # c005cc54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31169 op1 = va_arg(ap, int); c00050a8: 00072803 lw a6,0(a4) # 40000000 <__clzdi2-0x80000000> c00050ac: 00870293 addi t0,a4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31170 if (op1 == -1) { c00050b0: 04680963 beq a6,t1,c0005102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31177 if (pos >= s->bc_len) c00050b4: 4504 lw s1,8(a0) c00050b6: 87ae mv a5,a1 c00050b8: 0c95d463 bge a1,s1,c0005180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31179 op = tab[pos]; c00050bc: 00b603b3 add t2,a2,a1 c00050c0: 0003c683 lbu a3,0(t2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31180 len = opcode_info[op].size; c00050c4: 00269413 slli s0,a3,0x2 c00050c8: 008e0933 add s2,t3,s0 c00050cc: 00094903 lbu s2,0(s2) # ffffffffffffe000 <_ebss+0xffffffff3fefceda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31173 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31181 pos_next = pos + len; c00050d0: 00b905bb addw a1,s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31182 if (pos_next > s->bc_len) c00050d4: 0ab4c663 blt s1,a1,c0005180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31184 if (op == OP_line_num) { c00050d8: 03e69e63 bne a3,t5,c0005114 get_u32(): @@ -13775,63 +13775,63 @@ get_u32(): c00050f8: 08e2 slli a7,a7,0x18 c00050fa: 00f8e8b3 or a7,a7,a5 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31177 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31185 line_num = get_u32(tab + pos + 1); c00050fe: 2881 sext.w a7,a7 c0005100: bf5d j c00050b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31163 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31171 s->pos = pos; c0005102: c54c sw a1,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31172 s->line_num = line_num; c0005104: 01152823 sw a7,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31165 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31173 ret = TRUE; c0005108: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31280 } c000510a: 7422 ld s0,40(sp) c000510c: 7482 ld s1,32(sp) c000510e: 6962 ld s2,24(sp) c0005110: 6125 addi sp,sp,96 c0005112: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31191 if (op != op1) { c0005114: 02d80a63 beq a6,a3,c0005148 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31192 if (op1 == (uint8_t)op1 || !op) c0005118: 0ff87393 zext.b t2,a6 c000511c: 07038263 beq t2,a6,c0005180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31184 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31192 (discriminator 1) c0005120: c2a5 beqz a3,c0005180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31194 if (op != (uint8_t)op1 c0005122: 02d38263 beq t2,a3,c0005146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31195 && op != (uint8_t)(op1 >> 8) c0005126: 4088539b sraiw t2,a6,0x8 c000512a: 0ff3f393 zext.b t2,t2 c000512e: 00768c63 beq a3,t2,c0005146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31196 && op != (uint8_t)(op1 >> 16) c0005132: 4108539b sraiw t2,a6,0x10 c0005136: 0ff3f393 zext.b t2,t2 c000513a: 00d38663 beq t2,a3,c0005146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31197 && op != (uint8_t)(op1 >> 24)) { c000513e: 0188581b srliw a6,a6,0x18 c0005142: 02d81f63 bne a6,a3,c0005180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31200 s->op = op; c0005146: c954 sw a3,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31204 switch(opcode_info[op].fmt) { c0005148: 9472 add s0,s0,t3 c000514a: 00344683 lbu a3,3(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31203 pos++; c000514e: 2785 addiw a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31204 switch(opcode_info[op].fmt) { c0005150: 36ed addiw a3,a3,-5 c0005152: 0ff6f693 zext.b a3,a3 @@ -13841,28 +13841,28 @@ code_match(): c000515e: 4294 lw a3,0(a3) c0005160: 96f6 add a3,a3,t4 c0005162: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31208 int idx = tab[pos]; c0005164: 97b2 add a5,a5,a2 c0005166: 0007c803 lbu a6,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31201 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31209 int arg = va_arg(ap, int); c000516a: 471c lw a5,8(a4) c000516c: 01070293 addi t0,a4,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31210 if (arg == -1) { c0005170: 00679663 bne a5,t1,c000517c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31211 s->idx = idx; c0005174: 01052c23 sw a6,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31151 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31159 { c0005178: 8716 mv a4,t0 c000517a: b73d j c00050a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31213 if (arg != idx) c000517c: fef80ee3 beq a6,a5,c0005178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31155 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31163 BOOL ret = FALSE; c0005180: 4501 li a0,0 c0005182: b761 j c000510a @@ -13873,7 +13873,7 @@ get_u16(): c0005186: 0007c683 lbu a3,0(a5) c000518a: 0017c783 lbu a5,1(a5) code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31225 int arg = va_arg(ap, int); c000518e: 01070293 addi t0,a4,16 c0005192: 4718 lw a4,8(a4) @@ -13881,17 +13881,17 @@ get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 c0005194: 07a2 slli a5,a5,0x8 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31224 int idx = get_u16(tab + pos); c0005196: 00d7e833 or a6,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31218 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31226 if (arg == -1) { c000519a: 00671563 bne a4,t1,c00051a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31219 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31227 s->idx = idx; c000519e: 01052c23 sw a6,24(a0) c00051a2: bfd9 j c0005178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31221 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31229 if (arg != idx) c00051a4: fce80ae3 beq a6,a4,c0005178 c00051a8: bfe1 j c0005180 @@ -13910,10 +13910,10 @@ get_u32(): c00051c4: 07e2 slli a5,a5,0x18 c00051c6: 8fd9 or a5,a5,a4 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31239 s->label = get_u32(tab + pos); c00051c8: cd5c sw a5,28(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31240 break; c00051ca: b77d j c0005178 get_u32(): @@ -13930,7 +13930,7 @@ get_u32(): c00051e6: 0762 slli a4,a4,0x18 c00051e8: 8f55 or a4,a4,a3 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31244 s->label = get_u32(tab + pos); c00051ea: cd58 sw a4,28(a0) get_u16(): @@ -13940,7 +13940,7 @@ get_u16(): c00051f0: 0057c783 lbu a5,5(a5) c00051f4: 07a2 slli a5,a5,0x8 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31254 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31262 s->val = get_u16(tab + pos + 4); c00051f6: 8fd9 or a5,a5,a4 c00051f8: a0a1 j c0005240 @@ -13959,10 +13959,10 @@ get_u32(): c0005214: 07e2 slli a5,a5,0x18 c0005216: 8fd9 or a5,a5,a4 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31250 s->atom = get_u32(tab + pos); c0005218: d15c sw a5,36(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31251 break; c000521a: bfb9 j c0005178 get_u32(): @@ -13979,16 +13979,16 @@ get_u32(): c0005236: 0762 slli a4,a4,0x18 c0005238: 8f55 or a4,a4,a3 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31247 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31255 s->atom = get_u32(tab + pos); c000523a: d158 sw a4,36(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31256 s->val = get_u8(tab + pos + 4); c000523c: 0047c783 lbu a5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31254 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31262 s->val = get_u16(tab + pos + 4); c0005240: d11c sw a5,32(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31263 break; c0005242: bf1d j c0005178 get_u32(): @@ -14005,7 +14005,7 @@ get_u32(): c000525e: 0762 slli a4,a4,0x18 c0005260: 8f55 or a4,a4,a3 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31261 s->atom = get_u32(tab + pos); c0005262: d158 sw a4,36(a0) c0005264: b761 j c00051ec @@ -14023,7 +14023,7 @@ get_u32(): c0005280: 0762 slli a4,a4,0x18 c0005282: 8f55 or a4,a4,a3 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31267 s->atom = get_u32(tab + pos); c0005284: d158 sw a4,36(a0) get_u32(): @@ -14039,1918 +14039,2014 @@ get_u32(): c000529e: 0762 slli a4,a4,0x18 c00052a0: 8f55 or a4,a4,a3 code_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31260 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31268 s->label = get_u32(tab + pos + 4); c00052a2: cd58 sw a4,28(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31269 s->val = get_u8(tab + pos + 8); c00052a4: 0087c783 lbu a5,8(a5) c00052a8: bf61 j c0005240 00000000c00052aa : js_def_malloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1730 -{ - c00052aa: 1101 addi sp,sp,-32 - c00052ac: ec06 sd ra,24(sp) - c00052ae: e822 sd s0,16(sp) - c00052b0: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1734 +{ + c00052aa: 7139 addi sp,sp,-64 + c00052ac: fc06 sd ra,56(sp) + c00052ae: f822 sd s0,48(sp) + c00052b0: f426 sd s1,40(sp) + c00052b2: f04a sd s2,32(sp) + c00052b4: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1738 assert(size != 0); - c00052b2: e991 bnez a1,c00052c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1734 (discriminator 1) - c00052b4: 4601 li a2,0 - c00052b6: 6c600593 li a1,1734 - c00052ba: 00057517 auipc a0,0x57 - c00052be: 7be50513 addi a0,a0,1982 # c005ca78 - c00052c2: 7564e0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1736 (discriminator 2) - if (unlikely(s->malloc_size + size > s->malloc_limit)) - c00052c6: 6504 ld s1,8(a0) - c00052c8: 691c ld a5,16(a0) + c00052b6: e991 bnez a1,c00052ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1738 (discriminator 1) + c00052b8: 4601 li a2,0 + c00052ba: 6ca00593 li a1,1738 + c00052be: 00058517 auipc a0,0x58 + c00052c2: 98a50513 addi a0,a0,-1654 # c005cc48 + c00052c6: 1234e0ef jal ra,c0053be8 <__assert> c00052ca: 842a mv s0,a0 - c00052cc: 00b48733 add a4,s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1737 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1740 (discriminator 2) +_d("js_def_malloc: a="); _d(debug_expr); _d("\n"); //// + c00052cc: 4645 li a2,17 + c00052ce: 892e mv s2,a1 + c00052d0: 4505 li a0,1 + c00052d2: 00058597 auipc a1,0x58 + c00052d6: 9e658593 addi a1,a1,-1562 # c005ccb8 + c00052da: 53e520ef jal ra,c0057818 + c00052de: 000fc997 auipc s3,0xfc + c00052e2: e1298993 addi s3,s3,-494 # c01010f0 + c00052e6: 0009b583 ld a1,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1742 (discriminator 2) return NULL; - c00052d0: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1736 (discriminator 2) + c00052ea: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1740 (discriminator 2) +_d("js_def_malloc: a="); _d(debug_expr); _d("\n"); //// + c00052ec: 852e mv a0,a1 + c00052ee: e42e sd a1,8(sp) + c00052f0: 091510ef jal ra,c0056b80 + c00052f4: 65a2 ld a1,8(sp) + c00052f6: 862a mv a2,a0 + c00052f8: 4505 li a0,1 + c00052fa: 51e520ef jal ra,c0057818 + c00052fe: 4605 li a2,1 + c0005300: 0006c597 auipc a1,0x6c + c0005304: aa058593 addi a1,a1,-1376 # c0070da0 + c0005308: 4505 li a0,1 + c000530a: 50e520ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1741 (discriminator 2) if (unlikely(s->malloc_size + size > s->malloc_limit)) - c00052d2: 00e7eb63 bltu a5,a4,c00052e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1739 + c000530e: 641c ld a5,8(s0) + c0005310: 6818 ld a4,16(s0) + c0005312: 97ca add a5,a5,s2 + c0005314: 0af76e63 bltu a4,a5,c00053d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1744 +_d("js_def_malloc: b="); _d(debug_expr); _d("\n"); //// + c0005318: 4645 li a2,17 + c000531a: 00058597 auipc a1,0x58 + c000531e: 9b658593 addi a1,a1,-1610 # c005ccd0 + c0005322: 4505 li a0,1 + c0005324: 4f4520ef jal ra,c0057818 + c0005328: 0009b583 ld a1,0(s3) + c000532c: 852e mv a0,a1 + c000532e: e42e sd a1,8(sp) + c0005330: 051510ef jal ra,c0056b80 + c0005334: 65a2 ld a1,8(sp) + c0005336: 862a mv a2,a0 + c0005338: 4505 li a0,1 + c000533a: 4de520ef jal ra,c0057818 + c000533e: 4605 li a2,1 + c0005340: 0006c597 auipc a1,0x6c + c0005344: a6058593 addi a1,a1,-1440 # c0070da0 + c0005348: 4505 li a0,1 + c000534a: 4ce520ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1745 ptr = malloc(size); - c00052d6: 852e mv a0,a1 - c00052d8: 32d4d0ef jal ra,c0052e04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1740 + c000534e: 854a mv a0,s2 + c0005350: 4854d0ef jal ra,c0052fd4 + c0005354: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1746 if (!ptr) - c00052dc: c511 beqz a0,c00052e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1743 + c0005356: cd2d beqz a0,c00053d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1749 s->malloc_count++; - c00052de: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1744 - s->malloc_size += js_def_malloc_usable_size(ptr) + MALLOC_OVERHEAD; - c00052e0: 04a1 addi s1,s1,8 - c00052e2: e404 sd s1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1743 + c0005358: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1750 +_d("js_def_malloc: c="); _d(debug_expr); _d("\n"); //// + c000535a: 4645 li a2,17 + c000535c: 00058597 auipc a1,0x58 + c0005360: 98c58593 addi a1,a1,-1652 # c005cce8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1749 s->malloc_count++; - c00052e4: 0785 addi a5,a5,1 - c00052e6: e01c sd a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1746 + c0005364: 0785 addi a5,a5,1 + c0005366: e01c sd a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1750 +_d("js_def_malloc: c="); _d(debug_expr); _d("\n"); //// + c0005368: 4505 li a0,1 + c000536a: 4ae520ef jal ra,c0057818 + c000536e: 0009b583 ld a1,0(s3) + c0005372: 852e mv a0,a1 + c0005374: e42e sd a1,8(sp) + c0005376: 00b510ef jal ra,c0056b80 + c000537a: 65a2 ld a1,8(sp) + c000537c: 862a mv a2,a0 + c000537e: 4505 li a0,1 + c0005380: 498520ef jal ra,c0057818 + c0005384: 4605 li a2,1 + c0005386: 0006c597 auipc a1,0x6c + c000538a: a1a58593 addi a1,a1,-1510 # c0070da0 + c000538e: 4505 li a0,1 + c0005390: 488520ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1751 + s->malloc_size += js_def_malloc_usable_size(ptr) + MALLOC_OVERHEAD; + c0005394: 641c ld a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1752 +_d("js_def_malloc: d="); _d(debug_expr); _d("\n"); //// + c0005396: 4645 li a2,17 + c0005398: 00058597 auipc a1,0x58 + c000539c: 96858593 addi a1,a1,-1688 # c005cd00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1751 + s->malloc_size += js_def_malloc_usable_size(ptr) + MALLOC_OVERHEAD; + c00053a0: 07a1 addi a5,a5,8 + c00053a2: e41c sd a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1752 +_d("js_def_malloc: d="); _d(debug_expr); _d("\n"); //// + c00053a4: 4505 li a0,1 + c00053a6: 472520ef jal ra,c0057818 + c00053aa: 0009b583 ld a1,0(s3) + c00053ae: 852e mv a0,a1 + c00053b0: e42e sd a1,8(sp) + c00053b2: 7ce510ef jal ra,c0056b80 + c00053b6: 65a2 ld a1,8(sp) + c00053b8: 862a mv a2,a0 + c00053ba: 4505 li a0,1 + c00053bc: 45c520ef jal ra,c0057818 + c00053c0: 4605 li a2,1 + c00053c2: 0006c597 auipc a1,0x6c + c00053c6: 9de58593 addi a1,a1,-1570 # c0070da0 + c00053ca: 4505 li a0,1 + c00053cc: 44c520ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1754 } - c00052e8: 60e2 ld ra,24(sp) - c00052ea: 6442 ld s0,16(sp) - c00052ec: 64a2 ld s1,8(sp) - c00052ee: 6105 addi sp,sp,32 - c00052f0: 8082 ret + c00053d0: 70e2 ld ra,56(sp) + c00053d2: 7442 ld s0,48(sp) + c00053d4: 7902 ld s2,32(sp) + c00053d6: 69e2 ld s3,24(sp) + c00053d8: 8526 mv a0,s1 + c00053da: 74a2 ld s1,40(sp) + c00053dc: 6121 addi sp,sp,64 + c00053de: 8082 ret -00000000c00052f2 : +00000000c00053e0 : dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:257 { - c00052f2: 1101 addi sp,sp,-32 - c00052f4: 00b11723 sh a1,14(sp) + c00053e0: 1101 addi sp,sp,-32 + c00053e2: 00b11723 sh a1,14(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 return dbuf_put(s, (uint8_t *)&val, 2); - c00052f8: 4609 li a2,2 - c00052fa: 00e10593 addi a1,sp,14 + c00053e6: 4609 li a2,2 + c00053e8: 00e10593 addi a1,sp,14 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:257 { - c00052fe: ec06 sd ra,24(sp) + c00053ec: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 return dbuf_put(s, (uint8_t *)&val, 2); - c0005300: 1b1420ef jal ra,c0047cb0 + c00053ee: 293420ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:259 } - c0005304: 60e2 ld ra,24(sp) - c0005306: 6105 addi sp,sp,32 - c0005308: 8082 ret + c00053f2: 60e2 ld ra,24(sp) + c00053f4: 6105 addi sp,sp,32 + c00053f6: 8082 ret -00000000c000530a : +00000000c00053f8 : emit_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21562 dbuf_put_u16(&s->cur_func->byte_code, val); - c000530a: 7528 ld a0,104(a0) - c000530c: 13050513 addi a0,a0,304 - c0005310: b7cd j c00052f2 + c00053f8: 7528 ld a0,104(a0) + c00053fa: 13050513 addi a0,a0,304 + c00053fe: b7cd j c00053e0 -00000000c0005312 : +00000000c0005400 : get_loc_or_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30719 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30727 { - c0005312: 1101 addi sp,sp,-32 - c0005314: e822 sd s0,16(sp) - c0005316: e426 sd s1,8(sp) - c0005318: ec06 sd ra,24(sp) - c000531a: 842a mv s0,a0 - c000531c: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30722 + c0005400: 1101 addi sp,sp,-32 + c0005402: e822 sd s0,16(sp) + c0005404: e426 sd s1,8(sp) + c0005406: ec06 sd ra,24(sp) + c0005408: 842a mv s0,a0 + c000540a: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30730 if (is_ref) - c000531e: cd91 beqz a1,c000533a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30723 + c000540c: cd91 beqz a1,c0005428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30731 dbuf_putc(bc, OP_get_var_ref); - c0005320: 05e00593 li a1,94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30725 + c000540e: 05e00593 li a1,94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30733 dbuf_putc(bc, OP_get_loc); - c0005324: 21f420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30726 + c0005412: 301420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30734 dbuf_put_u16(bc, idx); - c0005328: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30727 + c0005416: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30735 } - c000532a: 6442 ld s0,16(sp) - c000532c: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30726 + c0005418: 6442 ld s0,16(sp) + c000541a: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30734 dbuf_put_u16(bc, idx); - c000532e: 03049593 slli a1,s1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30727 + c000541c: 03049593 slli a1,s1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30735 } - c0005332: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30726 + c0005420: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30734 dbuf_put_u16(bc, idx); - c0005334: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30727 + c0005422: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30735 } - c0005336: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30726 + c0005424: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30734 dbuf_put_u16(bc, idx); - c0005338: bf6d j c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30725 + c0005426: bf6d j c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30733 dbuf_putc(bc, OP_get_loc); - c000533a: 05800593 li a1,88 - c000533e: b7dd j c0005324 + c0005428: 05800593 li a1,88 + c000542c: b7dd j c0005412 -00000000c0005340 : +00000000c000542e : put_short_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32010 { - c0005340: 1101 addi sp,sp,-32 - c0005342: e822 sd s0,16(sp) - c0005344: e426 sd s1,8(sp) - c0005346: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32004 + c000542e: 1101 addi sp,sp,-32 + c0005430: e822 sd s0,16(sp) + c0005432: e426 sd s1,8(sp) + c0005434: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32012 if (idx < 4) { - c0005348: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32002 + c0005436: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32010 { - c000534a: 84aa mv s1,a0 - c000534c: 87ae mv a5,a1 - c000534e: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32004 + c0005438: 84aa mv s1,a0 + c000543a: 87ae mv a5,a1 + c000543c: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32012 if (idx < 4) { - c0005350: 08c74163 blt a4,a2,c00053d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32005 + c000543e: 08c74163 blt a4,a2,c00054c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32013 switch (op) { - c0005354: 02200713 li a4,34 - c0005358: 06e58863 beq a1,a4,c00053c8 - c000535c: fa85871b addiw a4,a1,-88 - c0005360: 0007061b sext.w a2,a4 - c0005364: 46a1 li a3,8 - c0005366: 06c6ea63 bltu a3,a2,c00053da - c000536a: 02071793 slli a5,a4,0x20 - c000536e: 01e7d713 srli a4,a5,0x1e - c0005372: 00057697 auipc a3,0x57 - c0005376: 77268693 addi a3,a3,1906 # c005cae4 - c000537a: 9736 add a4,a4,a3 - c000537c: 431c lw a5,0(a4) - c000537e: 97b6 add a5,a5,a3 - c0005380: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 + c0005442: 02200713 li a4,34 + c0005446: 06e58863 beq a1,a4,c00054b6 + c000544a: fa85871b addiw a4,a1,-88 + c000544e: 0007061b sext.w a2,a4 + c0005452: 46a1 li a3,8 + c0005454: 06c6ea63 bltu a3,a2,c00054c8 + c0005458: 02071793 slli a5,a4,0x20 + c000545c: 01e7d713 srli a4,a5,0x1e + c0005460: 00058697 auipc a3,0x58 + c0005464: 8b468693 addi a3,a3,-1868 # c005cd14 + c0005468: 9736 add a4,a4,a3 + c000546a: 431c lw a5,0(a4) + c000546c: 97b6 add a5,a5,a3 + c000546e: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32015 dbuf_putc(bc_out, OP_get_loc0 + idx); - c0005382: fc54059b addiw a1,s0,-59 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32010 + c0005470: fc54059b addiw a1,s0,-59 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32018 dbuf_putc(bc_out, OP_put_loc0 + idx); - c0005386: 0ff5f593 zext.b a1,a1 - c000538a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 -} - c000538c: 6442 ld s0,16(sp) - c000538e: 60e2 ld ra,24(sp) - c0005390: 64a2 ld s1,8(sp) - c0005392: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32010 + c0005474: 0ff5f593 zext.b a1,a1 + c0005478: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32065 +} + c000547a: 6442 ld s0,16(sp) + c000547c: 60e2 ld ra,24(sp) + c000547e: 64a2 ld s1,8(sp) + c0005480: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32018 dbuf_putc(bc_out, OP_put_loc0 + idx); - c0005394: 1af4206f j c0047d42 - c0005398: fc94059b addiw a1,s0,-55 - c000539c: b7ed j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32013 + c0005482: 2914206f j c0047f12 + c0005486: fc94059b addiw a1,s0,-55 + c000548a: b7ed j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32021 dbuf_putc(bc_out, OP_set_loc0 + idx); - c000539e: fcd4059b addiw a1,s0,-51 - c00053a2: b7d5 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32016 + c000548c: fcd4059b addiw a1,s0,-51 + c0005490: b7d5 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32024 dbuf_putc(bc_out, OP_get_arg0 + idx); - c00053a4: fd14059b addiw a1,s0,-47 - c00053a8: bff9 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32019 + c0005492: fd14059b addiw a1,s0,-47 + c0005496: bff9 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32027 dbuf_putc(bc_out, OP_put_arg0 + idx); - c00053aa: fd54059b addiw a1,s0,-43 - c00053ae: bfe1 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32022 + c0005498: fd54059b addiw a1,s0,-43 + c000549c: bfe1 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32030 dbuf_putc(bc_out, OP_set_arg0 + idx); - c00053b0: fd94059b addiw a1,s0,-39 - c00053b4: bfc9 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32025 + c000549e: fd94059b addiw a1,s0,-39 + c00054a2: bfc9 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32033 dbuf_putc(bc_out, OP_get_var_ref0 + idx); - c00053b6: fdd4059b addiw a1,s0,-35 - c00053ba: b7f1 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32028 + c00054a4: fdd4059b addiw a1,s0,-35 + c00054a8: b7f1 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32036 dbuf_putc(bc_out, OP_put_var_ref0 + idx); - c00053bc: fe14059b addiw a1,s0,-31 - c00053c0: b7d9 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32031 + c00054aa: fe14059b addiw a1,s0,-31 + c00054ae: b7d9 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32039 dbuf_putc(bc_out, OP_set_var_ref0 + idx); - c00053c2: fe54059b addiw a1,s0,-27 - c00053c6: b7c1 j c0005386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32034 + c00054b0: fe54059b addiw a1,s0,-27 + c00054b4: b7c1 j c0005474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32042 dbuf_putc(bc_out, OP_call0 + idx); - c00053c8: fee6059b addiw a1,a2,-18 - c00053cc: 0ff5f593 zext.b a1,a1 - c00053d0: bf75 j c000538c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32038 + c00054b6: fee6059b addiw a1,a2,-18 + c00054ba: 0ff5f593 zext.b a1,a1 + c00054be: bf75 j c000547a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32046 if (idx < 256) { - c00053d2: 0ff00713 li a4,255 - c00053d6: 02c74063 blt a4,a2,c00053f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32039 + c00054c0: 0ff00713 li a4,255 + c00054c4: 02c74063 blt a4,a2,c00054e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32047 switch (op) { - c00053da: 05900713 li a4,89 - c00053de: 02e78a63 beq a5,a4,c0005412 - c00053e2: 05a00713 li a4,90 - c00053e6: 02e78e63 beq a5,a4,c0005422 - c00053ea: 05800713 li a4,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32041 + c00054c8: 05900713 li a4,89 + c00054cc: 02e78a63 beq a5,a4,c0005500 + c00054d0: 05a00713 li a4,90 + c00054d4: 02e78e63 beq a5,a4,c0005510 + c00054d8: 05800713 li a4,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32049 dbuf_putc(bc_out, OP_get_loc8); - c00053ee: 0c200593 li a1,194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32039 + c00054dc: 0c200593 li a1,194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32047 switch (op) { - c00053f2: 02e78263 beq a5,a4,c0005416 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32055 + c00054e0: 02e78263 beq a5,a4,c0005504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32063 dbuf_putc(bc_out, op); - c00053f6: 0ff7f593 zext.b a1,a5 - c00053fa: 8526 mv a0,s1 - c00053fc: 147420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32056 + c00054e4: 0ff7f593 zext.b a1,a5 + c00054e8: 8526 mv a0,s1 + c00054ea: 229420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32064 dbuf_put_u16(bc_out, idx); - c0005400: 03041593 slli a1,s0,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 + c00054ee: 03041593 slli a1,s0,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32065 } - c0005404: 6442 ld s0,16(sp) - c0005406: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32056 + c00054f2: 6442 ld s0,16(sp) + c00054f4: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32064 dbuf_put_u16(bc_out, idx); - c0005408: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 + c00054f6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32065 } - c000540a: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32056 + c00054f8: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32064 dbuf_put_u16(bc_out, idx); - c000540c: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 + c00054fa: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32065 } - c000540e: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32056 + c00054fc: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32064 dbuf_put_u16(bc_out, idx); - c0005410: b5cd j c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32045 + c00054fe: b5cd j c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32053 dbuf_putc(bc_out, OP_put_loc8); - c0005412: 0c300593 li a1,195 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32049 + c0005500: 0c300593 li a1,195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 dbuf_putc(bc_out, OP_set_loc8); - c0005416: 8526 mv a0,s1 - c0005418: 12b420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32050 + c0005504: 8526 mv a0,s1 + c0005506: 20d420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32058 dbuf_putc(bc_out, idx); - c000541c: 0ff47593 zext.b a1,s0 - c0005420: b7ad j c000538a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32049 + c000550a: 0ff47593 zext.b a1,s0 + c000550e: b7ad j c0005478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32057 dbuf_putc(bc_out, OP_set_loc8); - c0005422: 0c400593 li a1,196 - c0005426: bfc5 j c0005416 + c0005510: 0c400593 li a1,196 + c0005514: bfc5 j c0005504 -00000000c0005428 : +00000000c0005516 : dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:261 { - c0005428: 1101 addi sp,sp,-32 - c000542a: c62e sw a1,12(sp) + c0005516: 1101 addi sp,sp,-32 + c0005518: c62e sw a1,12(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 return dbuf_put(s, (uint8_t *)&val, 4); - c000542c: 4611 li a2,4 - c000542e: 006c addi a1,sp,12 + c000551a: 4611 li a2,4 + c000551c: 006c addi a1,sp,12 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:261 { - c0005430: ec06 sd ra,24(sp) + c000551e: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 return dbuf_put(s, (uint8_t *)&val, 4); - c0005432: 07f420ef jal ra,c0047cb0 + c0005520: 161420ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:263 } - c0005436: 60e2 ld ra,24(sp) - c0005438: 6105 addi sp,sp,32 - c000543a: 8082 ret + c0005524: 60e2 ld ra,24(sp) + c0005526: 6105 addi sp,sp,32 + c0005528: 8082 ret -00000000c000543c : +00000000c000552a : emit_op(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21563 -{ - c000543c: 7179 addi sp,sp,-48 - c000543e: e84a sd s2,16(sp) - c0005440: e44e sd s3,8(sp) - c0005442: f406 sd ra,40(sp) - c0005444: f022 sd s0,32(sp) - c0005446: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21571 +{ + c000552a: 7179 addi sp,sp,-48 + c000552c: e84a sd s2,16(sp) + c000552e: e44e sd s3,8(sp) + c0005530: f406 sd ra,40(sp) + c0005532: f022 sd s0,32(sp) + c0005534: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21572 JSFunctionDef *fd = s->cur_func; - c0005448: 7524 ld s1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21570 + c0005536: 7524 ld s1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21578 if (unlikely(fd->last_opcode_line_num != s->last_line_num)) { - c000544a: 451c lw a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21563 + c0005538: 451c lw a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21571 { - c000544c: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21570 + c000553a: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21578 if (unlikely(fd->last_opcode_line_num != s->last_line_num)) { - c000544e: 1644a703 lw a4,356(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21565 + c000553c: 1644a703 lw a4,356(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21573 DynBuf *bc = &fd->byte_code; - c0005452: 13048913 addi s2,s1,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21570 + c0005540: 13048913 addi s2,s1,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21578 if (unlikely(fd->last_opcode_line_num != s->last_line_num)) { - c0005456: 00f70f63 beq a4,a5,c0005474 - c000545a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21571 + c0005544: 00f70f63 beq a4,a5,c0005562 + c0005548: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21579 dbuf_putc(bc, OP_line_num); - c000545c: 0c600593 li a1,198 - c0005460: 854a mv a0,s2 - c0005462: 0e1420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21572 + c000554a: 0c600593 li a1,198 + c000554e: 854a mv a0,s2 + c0005550: 1c3420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21580 dbuf_put_u32(bc, s->last_line_num); - c0005466: 440c lw a1,8(s0) - c0005468: 854a mv a0,s2 - c000546a: fbfff0ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21573 + c0005554: 440c lw a1,8(s0) + c0005556: 854a mv a0,s2 + c0005558: fbfff0ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21581 fd->last_opcode_line_num = s->last_line_num; - c000546e: 441c lw a5,8(s0) - c0005470: 16f4a223 sw a5,356(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21575 + c000555c: 441c lw a5,8(s0) + c000555e: 16f4a223 sw a5,356(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21583 fd->last_opcode_pos = bc->size; - c0005474: 1384b783 ld a5,312(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21576 + c0005562: 1384b783 ld a5,312(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21584 dbuf_putc(bc, val); - c0005478: 85ce mv a1,s3 - c000547a: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21575 + c0005566: 85ce mv a1,s3 + c0005568: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21583 fd->last_opcode_pos = bc->size; - c000547c: 16f4a023 sw a5,352(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21577 -} - c0005480: 7402 ld s0,32(sp) - c0005482: 70a2 ld ra,40(sp) - c0005484: 64e2 ld s1,24(sp) - c0005486: 6942 ld s2,16(sp) - c0005488: 69a2 ld s3,8(sp) - c000548a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21576 + c000556a: 16f4a023 sw a5,352(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21585 +} + c000556e: 7402 ld s0,32(sp) + c0005570: 70a2 ld ra,40(sp) + c0005572: 64e2 ld s1,24(sp) + c0005574: 6942 ld s2,16(sp) + c0005576: 69a2 ld s3,8(sp) + c0005578: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21584 dbuf_putc(bc, val); - c000548c: 0b74206f j c0047d42 + c000557a: 1994206f j c0047f12 -00000000c0005490 : +00000000c000557e : set_object_name_computed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22652 { - c0005490: 1101 addi sp,sp,-32 - c0005492: e426 sd s1,8(sp) - c0005494: ec06 sd ra,24(sp) - c0005496: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22645 + c000557e: 1101 addi sp,sp,-32 + c0005580: e426 sd s1,8(sp) + c0005582: ec06 sd ra,24(sp) + c0005584: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22653 JSFunctionDef *fd = s->cur_func; - c0005498: 7520 ld s0,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22644 + c0005586: 7520 ld s0,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22652 { - c000549a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22648 + c0005588: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22656 opcode = get_prev_opcode(fd); - c000549c: 8522 mv a0,s0 - c000549e: f71fe0ef jal ra,c000440e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22649 + c000558a: 8522 mv a0,s0 + c000558c: e83fe0ef jal ra,c000440e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22657 if (opcode == OP_set_name) { - c00054a2: 04d00793 li a5,77 - c00054a6: 02f51163 bne a0,a5,c00054c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22651 + c0005590: 04d00793 li a5,77 + c0005594: 02f51163 bne a0,a5,c00055b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22659 fd->byte_code.size = fd->last_opcode_pos; - c00054aa: 16042783 lw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22653 + c0005598: 16042783 lw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22661 emit_op(s, OP_set_name_computed); - c00054ae: 8526 mv a0,s1 - c00054b0: 04e00593 li a1,78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22651 + c000559c: 8526 mv a0,s1 + c000559e: 04e00593 li a1,78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22659 fd->byte_code.size = fd->last_opcode_pos; - c00054b4: 12f43c23 sd a5,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22652 + c00055a2: 12f43c23 sd a5,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22660 fd->last_opcode_pos = -1; - c00054b8: 57fd li a5,-1 - c00054ba: 16f42023 sw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22662 -} - c00054be: 6442 ld s0,16(sp) - c00054c0: 60e2 ld ra,24(sp) - c00054c2: 64a2 ld s1,8(sp) - c00054c4: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22653 + c00055a6: 57fd li a5,-1 + c00055a8: 16f42023 sw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22670 +} + c00055ac: 6442 ld s0,16(sp) + c00055ae: 60e2 ld ra,24(sp) + c00055b0: 64a2 ld s1,8(sp) + c00055b2: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22661 emit_op(s, OP_set_name_computed); - c00054c6: bf9d j c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22654 + c00055b4: bf9d j c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22662 } else if (opcode == OP_set_class_name) { - c00054c8: 0c500793 li a5,197 - c00054cc: 06f51163 bne a0,a5,c000552e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22657 + c00055b6: 0c500793 li a5,197 + c00055ba: 06f51163 bne a0,a5,c000561c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22665 get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c00054d0: 13043703 ld a4,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22656 + c00055be: 13043703 ld a4,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22664 define_class_pos = fd->last_opcode_pos + 1 - - c00054d4: 16042783 lw a5,352(s0) - c00054d8: 0017859b addiw a1,a5,1 + c00055c2: 16042783 lw a5,352(s0) + c00055c6: 0017859b addiw a1,a5,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00054dc: 97ba add a5,a5,a4 - c00054de: 0027c683 lbu a3,2(a5) - c00054e2: 0017c603 lbu a2,1(a5) - c00054e6: 06a2 slli a3,a3,0x8 - c00054e8: 8e55 or a2,a2,a3 - c00054ea: 0037c683 lbu a3,3(a5) - c00054ee: 0047c783 lbu a5,4(a5) - c00054f2: 06c2 slli a3,a3,0x10 - c00054f4: 8ed1 or a3,a3,a2 - c00054f6: 07e2 slli a5,a5,0x18 - c00054f8: 8fd5 or a5,a5,a3 + c00055ca: 97ba add a5,a5,a4 + c00055cc: 0027c683 lbu a3,2(a5) + c00055d0: 0017c603 lbu a2,1(a5) + c00055d4: 06a2 slli a3,a3,0x8 + c00055d6: 8e55 or a2,a2,a3 + c00055d8: 0037c683 lbu a3,3(a5) + c00055dc: 0047c783 lbu a5,4(a5) + c00055e0: 06c2 slli a3,a3,0x10 + c00055e2: 8ed1 or a3,a3,a2 + c00055e4: 07e2 slli a5,a5,0x18 + c00055e6: 8fd5 or a5,a5,a3 set_object_name_computed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22666 assert(fd->byte_code.buf[define_class_pos] == OP_define_class); - c00054fa: 40f587bb subw a5,a1,a5 - c00054fe: 97ba add a5,a5,a4 - c0005500: 0007c683 lbu a3,0(a5) - c0005504: 05600713 li a4,86 - c0005508: 00e68c63 beq a3,a4,c0005520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22658 (discriminator 1) - c000550c: 6599 lui a1,0x6 - c000550e: 4601 li a2,0 - c0005510: 88258593 addi a1,a1,-1918 # 5882 <__clzdi2-0xbfffa77e> - c0005514: 00057517 auipc a0,0x57 - c0005518: 56450513 addi a0,a0,1380 # c005ca78 - c000551c: 4fc4e0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22659 (discriminator 2) + c00055e8: 40f587bb subw a5,a1,a5 + c00055ec: 97ba add a5,a5,a4 + c00055ee: 0007c683 lbu a3,0(a5) + c00055f2: 05600713 li a4,86 + c00055f6: 00e68c63 beq a3,a4,c000560e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22666 (discriminator 1) + c00055fa: 6599 lui a1,0x6 + c00055fc: 4601 li a2,0 + c00055fe: 88a58593 addi a1,a1,-1910 # 588a <__clzdi2-0xbfffa776> + c0005602: 00057517 auipc a0,0x57 + c0005606: 64650513 addi a0,a0,1606 # c005cc48 + c000560a: 5de4e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22667 (discriminator 2) fd->byte_code.buf[define_class_pos] = OP_define_class_computed; - c0005520: 05700713 li a4,87 - c0005524: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22660 (discriminator 2) + c000560e: 05700713 li a4,87 + c0005612: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22668 (discriminator 2) fd->last_opcode_pos = -1; - c0005528: 57fd li a5,-1 - c000552a: 16f42023 sw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22662 + c0005616: 57fd li a5,-1 + c0005618: 16f42023 sw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22670 } - c000552e: 60e2 ld ra,24(sp) - c0005530: 6442 ld s0,16(sp) - c0005532: 64a2 ld s1,8(sp) - c0005534: 6105 addi sp,sp,32 - c0005536: 8082 ret + c000561c: 60e2 ld ra,24(sp) + c000561e: 6442 ld s0,16(sp) + c0005620: 64a2 ld s1,8(sp) + c0005622: 6105 addi sp,sp,32 + c0005624: 8082 ret -00000000c0005538 : +00000000c0005626 : pop_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21853 static void pop_scope(JSParseState *s) { - c0005538: 1101 addi sp,sp,-32 - c000553a: ec06 sd ra,24(sp) - c000553c: e822 sd s0,16(sp) - c000553e: e426 sd s1,8(sp) - c0005540: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21846 + c0005626: 1101 addi sp,sp,-32 + c0005628: ec06 sd ra,24(sp) + c000562a: e822 sd s0,16(sp) + c000562c: e426 sd s1,8(sp) + c000562e: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21854 if (s->cur_func) { - c0005542: 7524 ld s1,104(a0) - c0005544: c88d beqz s1,c0005576 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21849 + c0005630: 7524 ld s1,104(a0) + c0005632: c88d beqz s1,c0005664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21857 int scope = fd->scope_level; - c0005546: 0e04a403 lw s0,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21850 + c0005634: 0e04a403 lw s0,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21858 emit_op(s, OP_leave_scope); - c000554a: 0b500593 li a1,181 - c000554e: 892a mv s2,a0 - c0005550: eedff0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21851 + c0005638: 0b500593 li a1,181 + c000563c: 892a mv s2,a0 + c000563e: eedff0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21859 emit_u16(s, scope); - c0005554: 03041593 slli a1,s0,0x30 - c0005558: 91c1 srli a1,a1,0x30 - c000555a: 854a mv a0,s2 - c000555c: dafff0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21852 + c0005642: 03041593 slli a1,s0,0x30 + c0005646: 91c1 srli a1,a1,0x30 + c0005648: 854a mv a0,s2 + c000564a: dafff0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21860 fd->scope_level = fd->scopes[scope].parent; - c0005560: 78f4 ld a3,240(s1) - c0005562: 040e slli s0,s0,0x3 - c0005564: 9436 add s0,s0,a3 - c0005566: 401c lw a5,0(s0) - c0005568: 0ef4a023 sw a5,224(s1) + c000564e: 78f4 ld a3,240(s1) + c0005650: 040e slli s0,s0,0x3 + c0005652: 9436 add s0,s0,a3 + c0005654: 401c lw a5,0(s0) + c0005656: 0ef4a023 sw a5,224(s1) get_first_lexical_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21844 while (scope >= 0) { - c000556c: 0007db63 bgez a5,c0005582 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21842 + c000565a: 0007db63 bgez a5,c0005670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21850 return -1; - c0005570: 577d li a4,-1 + c000565e: 577d li a4,-1 pop_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21861 fd->scope_first = get_first_lexical_var(fd, fd->scope_level); - c0005572: 0ee4a223 sw a4,228(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21855 -} - c0005576: 60e2 ld ra,24(sp) - c0005578: 6442 ld s0,16(sp) - c000557a: 64a2 ld s1,8(sp) - c000557c: 6902 ld s2,0(sp) - c000557e: 6105 addi sp,sp,32 - c0005580: 8082 ret + c0005660: 0ee4a223 sw a4,228(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21863 +} + c0005664: 60e2 ld ra,24(sp) + c0005666: 6442 ld s0,16(sp) + c0005668: 64a2 ld s1,8(sp) + c000566a: 6902 ld s2,0(sp) + c000566c: 6105 addi sp,sp,32 + c000566e: 8082 ret get_first_lexical_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21837 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21845 int scope_idx = fd->scopes[scope].first; - c0005582: 078e slli a5,a5,0x3 - c0005584: 97b6 add a5,a5,a3 - c0005586: 43d8 lw a4,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21838 + c0005670: 078e slli a5,a5,0x3 + c0005672: 97b6 add a5,a5,a3 + c0005674: 43d8 lw a4,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21846 if (scope_idx >= 0) - c0005588: fe0755e3 bgez a4,c0005572 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21840 + c0005676: fe0755e3 bgez a4,c0005660 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21848 scope = fd->scopes[scope].parent; - c000558c: 439c lw a5,0(a5) - c000558e: bff9 j c000556c + c000567a: 439c lw a5,0(a5) + c000567c: bff9 j c000565a -00000000c0005590 : +00000000c000567e : close_scopes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21858 -{ - c0005590: 1101 addi sp,sp,-32 - c0005592: e822 sd s0,16(sp) - c0005594: e426 sd s1,8(sp) - c0005596: e04a sd s2,0(sp) - c0005598: ec06 sd ra,24(sp) - c000559a: 84aa mv s1,a0 - c000559c: 842e mv s0,a1 - c000559e: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21859 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21866 +{ + c000567e: 1101 addi sp,sp,-32 + c0005680: e822 sd s0,16(sp) + c0005682: e426 sd s1,8(sp) + c0005684: e04a sd s2,0(sp) + c0005686: ec06 sd ra,24(sp) + c0005688: 84aa mv s1,a0 + c000568a: 842e mv s0,a1 + c000568c: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21867 while (scope > scope_stop) { - c00055a0: 00894863 blt s2,s0,c00055b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21864 -} - c00055a4: 60e2 ld ra,24(sp) - c00055a6: 6442 ld s0,16(sp) - c00055a8: 64a2 ld s1,8(sp) - c00055aa: 6902 ld s2,0(sp) - c00055ac: 6105 addi sp,sp,32 - c00055ae: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21860 + c000568e: 00894863 blt s2,s0,c000569e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21872 +} + c0005692: 60e2 ld ra,24(sp) + c0005694: 6442 ld s0,16(sp) + c0005696: 64a2 ld s1,8(sp) + c0005698: 6902 ld s2,0(sp) + c000569a: 6105 addi sp,sp,32 + c000569c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21868 emit_op(s, OP_leave_scope); - c00055b0: 0b500593 li a1,181 - c00055b4: 8526 mv a0,s1 - c00055b6: e87ff0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21861 + c000569e: 0b500593 li a1,181 + c00056a2: 8526 mv a0,s1 + c00056a4: e87ff0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21869 emit_u16(s, scope); - c00055ba: 03041593 slli a1,s0,0x30 - c00055be: 91c1 srli a1,a1,0x30 - c00055c0: 8526 mv a0,s1 - c00055c2: d49ff0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21862 + c00056a8: 03041593 slli a1,s0,0x30 + c00056ac: 91c1 srli a1,a1,0x30 + c00056ae: 8526 mv a0,s1 + c00056b0: d49ff0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21870 scope = s->cur_func->scopes[scope].parent; - c00055c6: 74bc ld a5,104(s1) - c00055c8: 040e slli s0,s0,0x3 - c00055ca: 7bec ld a1,240(a5) - c00055cc: 942e add s0,s0,a1 - c00055ce: 4000 lw s0,0(s0) - c00055d0: bfc1 j c00055a0 - -00000000c00055d2 : + c00056b4: 74bc ld a5,104(s1) + c00056b6: 040e slli s0,s0,0x3 + c00056b8: 7bec ld a1,240(a5) + c00056ba: 942e add s0,s0,a1 + c00056bc: 4000 lw s0,0(s0) + c00056be: bfc1 j c000568e + +00000000c00056c0 : emit_u32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21559 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21567 dbuf_put_u32(&s->cur_func->byte_code, val); - c00055d2: 7528 ld a0,104(a0) - c00055d4: 13050513 addi a0,a0,304 - c00055d8: bd81 j c0005428 + c00056c0: 7528 ld a0,104(a0) + c00056c2: 13050513 addi a0,a0,304 + c00056c6: bd81 j c0005516 -00000000c00055da : +00000000c00056c8 : emit_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21639 if (label >= 0) { - c00055da: 0405c363 bltz a1,c0005620 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21630 + c00056c8: 0405c363 bltz a1,c000570e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21638 { - c00055de: 1101 addi sp,sp,-32 - c00055e0: e822 sd s0,16(sp) - c00055e2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21632 + c00056cc: 1101 addi sp,sp,-32 + c00056ce: e822 sd s0,16(sp) + c00056d0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21640 emit_op(s, OP_label); - c00055e4: 0b600593 li a1,182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21630 + c00056d2: 0b600593 li a1,182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21638 { - c00055e8: ec06 sd ra,24(sp) - c00055ea: e426 sd s1,8(sp) - c00055ec: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21632 + c00056d6: ec06 sd ra,24(sp) + c00056d8: e426 sd s1,8(sp) + c00056da: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21640 emit_op(s, OP_label); - c00055ee: e4fff0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21633 + c00056dc: e4fff0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21641 emit_u32(s, label); - c00055f2: 85a2 mv a1,s0 - c00055f4: 8526 mv a0,s1 - c00055f6: fddff0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21634 + c00056e0: 85a2 mv a1,s0 + c00056e2: 8526 mv a0,s1 + c00056e4: fddff0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21642 s->cur_func->label_slots[label].pos = s->cur_func->byte_code.size; - c00055fa: 45e1 li a1,24 - c00055fc: 02b40433 mul s0,s0,a1 - c0005600: 74b8 ld a4,104(s1) - c0005602: 17073783 ld a5,368(a4) - c0005606: 943e add s0,s0,a5 - c0005608: 13873783 ld a5,312(a4) - c000560c: c05c sw a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21635 + c00056e8: 45e1 li a1,24 + c00056ea: 02b40433 mul s0,s0,a1 + c00056ee: 74b8 ld a4,104(s1) + c00056f0: 17073783 ld a5,368(a4) + c00056f4: 943e add s0,s0,a5 + c00056f6: 13873783 ld a5,312(a4) + c00056fa: c05c sw a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21643 return s->cur_func->byte_code.size - 4; - c000560e: 74bc ld a5,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21639 + c00056fc: 74bc ld a5,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21647 } - c0005610: 60e2 ld ra,24(sp) - c0005612: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21635 + c00056fe: 60e2 ld ra,24(sp) + c0005700: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21643 return s->cur_func->byte_code.size - 4; - c0005614: 1387b503 ld a0,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21639 + c0005702: 1387b503 ld a0,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21647 } - c0005618: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21635 + c0005706: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21643 return s->cur_func->byte_code.size - 4; - c000561a: 3571 addiw a0,a0,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21639 + c0005708: 3571 addiw a0,a0,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21647 } - c000561c: 6105 addi sp,sp,32 - c000561e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21637 + c000570a: 6105 addi sp,sp,32 + c000570c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21645 return -1; - c0005620: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21639 + c000570e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21647 } - c0005622: 8082 ret + c0005710: 8082 ret -00000000c0005624 : +00000000c0005712 : push_short_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31983 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31991 dbuf_putc(bc_out, OP_push_0 + val); - c0005624: 0185979b slliw a5,a1,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31982 + c0005712: 0185979b slliw a5,a1,0x18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31990 if (val >= -1 && val <= 7) { - c0005628: 0015869b addiw a3,a1,1 - c000562c: 4721 li a4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31983 + c0005716: 0015869b addiw a3,a1,1 + c000571a: 4721 li a4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31991 dbuf_putc(bc_out, OP_push_0 + val); - c000562e: 4187d79b sraiw a5,a5,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31982 + c000571c: 4187d79b sraiw a5,a5,0x18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31990 if (val >= -1 && val <= 7) { - c0005632: 00d76863 bltu a4,a3,c0005642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31983 + c0005720: 00d76863 bltu a4,a3,c0005730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31991 dbuf_putc(bc_out, OP_push_0 + val); - c0005636: fb57859b addiw a1,a5,-75 - c000563a: 0ff5f593 zext.b a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31988 + c0005724: fb57859b addiw a1,a5,-75 + c0005728: 0ff5f593 zext.b a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31996 dbuf_putc(bc_out, val); - c000563e: 7044206f j c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31980 -{ - c0005642: 1101 addi sp,sp,-32 - c0005644: e822 sd s0,16(sp) - c0005646: e426 sd s1,8(sp) - c0005648: ec06 sd ra,24(sp) - c000564a: e04a sd s2,0(sp) - c000564c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31986 + c000572c: 7e64206f j c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31988 +{ + c0005730: 1101 addi sp,sp,-32 + c0005732: e822 sd s0,16(sp) + c0005734: e426 sd s1,8(sp) + c0005736: ec06 sd ra,24(sp) + c0005738: e04a sd s2,0(sp) + c000573a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31994 if (val == (int8_t)val) { - c000564e: 0007849b sext.w s1,a5 - c0005652: 00b79f63 bne a5,a1,c0005670 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31987 + c000573c: 0007849b sext.w s1,a5 + c0005740: 00b79f63 bne a5,a1,c000575e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31995 dbuf_putc(bc_out, OP_push_i8); - c0005656: 0bd00593 li a1,189 - c000565a: 6e8420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31988 + c0005744: 0bd00593 li a1,189 + c0005748: 7ca420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31996 dbuf_putc(bc_out, val); - c000565e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c000574c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c0005660: 6442 ld s0,16(sp) - c0005662: 60e2 ld ra,24(sp) - c0005664: 6902 ld s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31988 + c000574e: 6442 ld s0,16(sp) + c0005750: 60e2 ld ra,24(sp) + c0005752: 6902 ld s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31996 dbuf_putc(bc_out, val); - c0005666: 0ff4f593 zext.b a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c0005754: 0ff4f593 zext.b a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c000566a: 64a2 ld s1,8(sp) - c000566c: 6105 addi sp,sp,32 - c000566e: bfc1 j c000563e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31991 + c0005758: 64a2 ld s1,8(sp) + c000575a: 6105 addi sp,sp,32 + c000575c: bfc1 j c000572c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 if (val == (int16_t)val) { - c0005670: 0105949b slliw s1,a1,0x10 - c0005674: 4104d49b sraiw s1,s1,0x10 - c0005678: 02b49063 bne s1,a1,c0005698 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31992 + c000575e: 0105949b slliw s1,a1,0x10 + c0005762: 4104d49b sraiw s1,s1,0x10 + c0005766: 02b49063 bne s1,a1,c0005786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32000 dbuf_putc(bc_out, OP_push_i16); - c000567c: 0be00593 li a1,190 - c0005680: 6c2420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31993 + c000576a: 0be00593 li a1,190 + c000576e: 7a4420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32001 dbuf_put_u16(bc_out, val); - c0005684: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c0005772: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c0005686: 6442 ld s0,16(sp) - c0005688: 60e2 ld ra,24(sp) - c000568a: 6902 ld s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31993 + c0005774: 6442 ld s0,16(sp) + c0005776: 60e2 ld ra,24(sp) + c0005778: 6902 ld s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32001 dbuf_put_u16(bc_out, val); - c000568c: 03049593 slli a1,s1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c000577a: 03049593 slli a1,s1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c0005690: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31993 + c000577e: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32001 dbuf_put_u16(bc_out, val); - c0005692: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c0005780: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c0005694: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31993 + c0005782: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32001 dbuf_put_u16(bc_out, val); - c0005696: b9b1 j c00052f2 - c0005698: 0005891b sext.w s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31997 + c0005784: b9b1 j c00053e0 + c0005786: 0005891b sext.w s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32005 dbuf_putc(bc_out, OP_push_i32); - c000569c: 4585 li a1,1 - c000569e: 6a4420ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31998 + c000578a: 4585 li a1,1 + c000578c: 786420ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32006 dbuf_put_u32(bc_out, val); - c00056a2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c0005790: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c00056a4: 6442 ld s0,16(sp) - c00056a6: 60e2 ld ra,24(sp) - c00056a8: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31998 + c0005792: 6442 ld s0,16(sp) + c0005794: 60e2 ld ra,24(sp) + c0005796: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32006 dbuf_put_u32(bc_out, val); - c00056aa: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31999 + c0005798: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32007 } - c00056ac: 6902 ld s2,0(sp) - c00056ae: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31998 + c000579a: 6902 ld s2,0(sp) + c000579c: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32006 dbuf_put_u32(bc_out, val); - c00056b0: bba5 j c0005428 + c000579e: bba5 j c0005516 -00000000c00056b2 : +00000000c00057a0 : getTimezoneOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43291 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43299 { - c00056b2: 715d addi sp,sp,-80 - c00056b4: e486 sd ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43309 + c00057a0: 715d addi sp,sp,-80 + c00057a2: e486 sd ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43317 if (time < 0) { - c00056b6: c1900713 li a4,-999 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43310 + c00057a4: c1900713 li a4,-999 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43318 time = 0; - c00056ba: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43309 + c00057a8: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43317 if (time < 0) { - c00056bc: 00e54b63 blt a0,a4,c00056d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43311 + c00057aa: 00e54b63 blt a0,a4,c00057c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43319 } else if (time > UINT32_MAX) { - c00056c0: 07d00793 li a5,125 - c00056c4: 178e slli a5,a5,0x23 - c00056c6: 02f55663 bge a0,a5,c00056f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43295 + c00057ae: 07d00793 li a5,125 + c00057b2: 178e slli a5,a5,0x23 + c00057b4: 02f55663 bge a0,a5,c00057e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43303 time /= 1000; /* convert to seconds */ - c00056ca: 3e800793 li a5,1000 - c00056ce: 02f547b3 div a5,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43333 + c00057b8: 3e800793 li a5,1000 + c00057bc: 02f547b3 div a5,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43341 localtime_r(&ti, &tm); - c00056d2: 002c addi a1,sp,8 - c00056d4: 0048 addi a0,sp,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43316 + c00057c0: 002c addi a1,sp,8 + c00057c2: 0048 addi a0,sp,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43324 ti = time; - c00056d6: c23e sw a5,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43333 + c00057c4: c23e sw a5,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43341 localtime_r(&ti, &tm); - c00056d8: 594510ef jal ra,c0056c6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43334 + c00057c6: 676510ef jal ra,c0056e3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43342 res = -tm.tm_gmtoff / 60; - c00056dc: 7542 ld a0,48(sp) - c00056de: 03c00793 li a5,60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43338 + c00057ca: 7542 ld a0,48(sp) + c00057cc: 03c00793 li a5,60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43346 } - c00056e2: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43334 + c00057d0: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43342 res = -tm.tm_gmtoff / 60; - c00056e4: 40a00533 neg a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43338 + c00057d2: 40a00533 neg a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43346 } - c00056e8: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43334 + c00057d6: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43342 res = -tm.tm_gmtoff / 60; - c00056ea: 02f54533 div a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43338 + c00057d8: 02f54533 div a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43346 } - c00056ee: 2501 sext.w a0,a0 - c00056f0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43312 + c00057dc: 2501 sext.w a0,a0 + c00057de: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43320 time = UINT32_MAX; - c00056f2: 57fd li a5,-1 - c00056f4: 9381 srli a5,a5,0x20 - c00056f6: bff1 j c00056d2 + c00057e0: 57fd li a5,-1 + c00057e2: 9381 srli a5,a5,0x20 + c00057e4: bff1 j c00057c0 -00000000c00056f8 : +00000000c00057e6 : date_now(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49723 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49731 static int64_t date_now(void) { - c00056f8: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49725 + c00057e6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49733 gettimeofday(&tv, NULL); - c00056fa: 850a mv a0,sp - c00056fc: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49723 + c00057e8: 850a mv a0,sp + c00057ea: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49731 static int64_t date_now(void) { - c00056fe: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49725 + c00057ec: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49733 gettimeofday(&tv, NULL); - c0005700: 3a8510ef jal ra,c0056aa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49726 + c00057ee: 48a510ef jal ra,c0056c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49734 return (int64_t)tv.tv_sec * 1000 + (tv.tv_usec / 1000); - c0005704: 67a2 ld a5,8(sp) - c0005706: 3e800713 li a4,1000 - c000570a: 00016503 lwu a0,0(sp) - c000570e: 02e7c7b3 div a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49727 -} - c0005712: 60e2 ld ra,24(sp) - c0005714: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49726 + c00057f2: 67a2 ld a5,8(sp) + c00057f4: 3e800713 li a4,1000 + c00057f8: 00016503 lwu a0,0(sp) + c00057fc: 02e7c7b3 div a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49735 +} + c0005800: 60e2 ld ra,24(sp) + c0005802: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49734 return (int64_t)tv.tv_sec * 1000 + (tv.tv_usec / 1000); - c0005716: 02e50533 mul a0,a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49727 + c0005804: 02e50533 mul a0,a0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49735 } - c000571a: 953e add a0,a0,a5 - c000571c: 8082 ret + c0005808: 953e add a0,a0,a5 + c000580a: 8082 ret -00000000c000571e : +00000000c000580c : js_Date_now(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50131 { - c000571e: 7139 addi sp,sp,-64 - c0005720: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50125 + c000580c: 7139 addi sp,sp,-64 + c000580e: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50133 return JS_NewInt64(ctx, date_now()); - c0005722: fd7ff0ef jal ra,c00056f8 + c0005810: fd7ff0ef jal ra,c00057e6 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0005726: 0005079b sext.w a5,a0 - c000572a: 00f51c63 bne a0,a5,c0005742 + c0005814: 0005079b sext.w a5,a0 + c0005818: 00f51c63 bne a0,a5,c0005830 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000572e: d202 sw zero,36(sp) - c0005730: d03e sw a5,32(sp) - c0005732: 7702 ld a4,32(sp) - c0005734: 4581 li a1,0 - c0005736: e83a sd a4,16(sp) + c000581c: d202 sw zero,36(sp) + c000581e: d03e sw a5,32(sp) + c0005820: 7702 ld a4,32(sp) + c0005822: 4581 li a1,0 + c0005824: e83a sd a4,16(sp) js_Date_now(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50134 } - c0005738: 70e2 ld ra,56(sp) + c0005826: 70e2 ld ra,56(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c000573a: c83e sw a5,16(sp) + c0005828: c83e sw a5,16(sp) js_Date_now(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50126 - c000573c: 6542 ld a0,16(sp) - c000573e: 6121 addi sp,sp,64 - c0005740: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50134 + c000582a: 6542 ld a0,16(sp) + c000582c: 6121 addi sp,sp,64 + c000582e: 8082 ret JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0005742: d22577d3 fcvt.d.l fa5,a0 - c0005746: 459d li a1,7 - c0005748: e20787d3 fmv.x.d a5,fa5 + c0005830: d22577d3 fcvt.d.l fa5,a0 + c0005834: 459d li a1,7 + c0005836: e20787d3 fmv.x.d a5,fa5 js_Date_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c000574c: a83e fsd fa5,16(sp) - c000574e: 2781 sext.w a5,a5 - c0005750: b7e5 j c0005738 + c000583a: a83e fsd fa5,16(sp) + c000583c: 2781 sext.w a5,a5 + c000583e: b7e5 j c0005826 -00000000c0005752 : +00000000c0005840 : js_class_has_bytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5021 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5029 class_id == JS_CLASS_ASYNC_FUNCTION || - c0005752: ff35079b addiw a5,a0,-13 - c0005756: 02700713 li a4,39 - c000575a: 4505 li a0,1 - c000575c: 00f76a63 bltu a4,a5,c0005770 - c0005760: 4545 li a0,17 - c0005762: 150e slli a0,a0,0x23 - c0005764: 0525 addi a0,a0,9 - c0005766: 00f55533 srl a0,a0,a5 - c000576a: fff54513 not a0,a0 - c000576e: 8905 andi a0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5023 + c0005840: ff35079b addiw a5,a0,-13 + c0005844: 02700713 li a4,39 + c0005848: 4505 li a0,1 + c000584a: 00f76a63 bltu a4,a5,c000585e + c000584e: 4545 li a0,17 + c0005850: 150e slli a0,a0,0x23 + c0005852: 0525 addi a0,a0,9 + c0005854: 00f55533 srl a0,a0,a5 + c0005858: fff54513 not a0,a0 + c000585c: 8905 andi a0,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5031 } - c0005770: 00154513 xori a0,a0,1 - c0005774: 8082 ret + c000585e: 00154513 xori a0,a0,1 + c0005862: 8082 ret -00000000c0005776 : +00000000c0005864 : JS_GetFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5027 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5035 { - c0005776: 1101 addi sp,sp,-32 - c0005778: e42e sd a1,8(sp) - c000577a: ec06 sd ra,24(sp) - c000577c: e822 sd s0,16(sp) - c000577e: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5029 + c0005864: 1101 addi sp,sp,-32 + c0005866: e42e sd a1,8(sp) + c0005868: ec06 sd ra,24(sp) + c000586a: e822 sd s0,16(sp) + c000586c: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5037 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0005780: 2581 sext.w a1,a1 - c0005782: 57fd li a5,-1 - c0005784: 00f59f63 bne a1,a5,c00057a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5031 + c000586e: 2581 sext.w a1,a1 + c0005870: 57fd li a5,-1 + c0005872: 00f59f63 bne a1,a5,c0005890 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5039 p = JS_VALUE_GET_OBJ(val); - c0005788: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5032 + c0005876: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5040 if (!js_class_has_bytecode(p->class_id)) - c000578a: 00655503 lhu a0,6(a0) - c000578e: fc5ff0ef jal ra,c0005752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5030 + c0005878: 00655503 lhu a0,6(a0) + c000587c: fc5ff0ef jal ra,c0005840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5038 return NULL; - c0005792: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5032 + c0005880: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5040 if (!js_class_has_bytecode(p->class_id)) - c0005794: c111 beqz a0,c0005798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5034 + c0005882: c111 beqz a0,c0005886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5042 return p->u.func.function_bytecode; - c0005796: 781c ld a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5035 + c0005884: 781c ld a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5043 } - c0005798: 60e2 ld ra,24(sp) - c000579a: 6442 ld s0,16(sp) - c000579c: 853e mv a0,a5 - c000579e: 6105 addi sp,sp,32 - c00057a0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5030 + c0005886: 60e2 ld ra,24(sp) + c0005888: 6442 ld s0,16(sp) + c000588a: 853e mv a0,a5 + c000588c: 6105 addi sp,sp,32 + c000588e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5038 return NULL; - c00057a2: 4781 li a5,0 - c00057a4: bfd5 j c0005798 + c0005890: 4781 li a5,0 + c0005892: bfd5 j c0005886 -00000000c00057a6 : +00000000c0005894 : js_function_proto_lineNumber(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14781 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14789 { - c00057a6: 7139 addi sp,sp,-64 - c00057a8: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14782 + c0005894: 7139 addi sp,sp,-64 + c0005896: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14790 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c00057aa: 852e mv a0,a1 - c00057ac: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14781 + c0005898: 852e mv a0,a1 + c000589a: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14789 { - c00057ae: fc06 sd ra,56(sp) - c00057b0: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14782 + c000589c: fc06 sd ra,56(sp) + c000589e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14790 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c00057b2: fc5ff0ef jal ra,c0005776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14783 + c00058a0: fc5ff0ef jal ra,c0005864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14791 if (b && b->has_debug) { - c00057b6: c105 beqz a0,c00057d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14783 (discriminator 1) - c00057b8: 01a54783 lbu a5,26(a0) - c00057bc: 8b91 andi a5,a5,4 - c00057be: cf81 beqz a5,c00057d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14784 + c00058a4: c105 beqz a0,c00058c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14791 (discriminator 1) + c00058a6: 01a54783 lbu a5,26(a0) + c00058aa: 8b91 andi a5,a5,4 + c00058ac: cf81 beqz a5,c00058c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14792 return JS_NewInt32(ctx, b->debug.line_num); - c00057c0: 517c lw a5,100(a0) + c00058ae: 517c lw a5,100(a0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00057c2: d202 sw zero,36(sp) - c00057c4: ec02 sd zero,24(sp) - c00057c6: d03e sw a5,32(sp) - c00057c8: 7782 ld a5,32(sp) - c00057ca: e83e sd a5,16(sp) + c00058b0: d202 sw zero,36(sp) + c00058b2: ec02 sd zero,24(sp) + c00058b4: d03e sw a5,32(sp) + c00058b6: 7782 ld a5,32(sp) + c00058b8: e83e sd a5,16(sp) js_function_proto_lineNumber(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14787 -} - c00057cc: 70e2 ld ra,56(sp) - c00057ce: 6542 ld a0,16(sp) - c00057d0: 65e2 ld a1,24(sp) - c00057d2: 6121 addi sp,sp,64 - c00057d4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14795 +} + c00058ba: 70e2 ld ra,56(sp) + c00058bc: 6542 ld a0,16(sp) + c00058be: 65e2 ld a1,24(sp) + c00058c0: 6121 addi sp,sp,64 + c00058c2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14794 return JS_UNDEFINED; - c00057d6: 478d li a5,3 - c00057d8: e802 sd zero,16(sp) - c00057da: ec3e sd a5,24(sp) - c00057dc: bfc5 j c00057cc + c00058c4: 478d li a5,3 + c00058c6: e802 sd zero,16(sp) + c00058c8: ec3e sd a5,24(sp) + c00058ca: bfc5 j c00058ba -00000000c00057de : +00000000c00058cc : gc_scan_incref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5827 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5835 p->ref_count++; - c00057de: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5826 + c00058cc: 419c lw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5834 { - c00057e0: 1101 addi sp,sp,-32 - c00057e2: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5827 + c00058ce: 1101 addi sp,sp,-32 + c00058d0: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5835 p->ref_count++; - c00057e4: 0017871b addiw a4,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5826 + c00058d2: 0017871b addiw a4,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5834 { - c00057e8: ec06 sd ra,24(sp) - c00057ea: e426 sd s1,8(sp) - c00057ec: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5827 + c00058d6: ec06 sd ra,24(sp) + c00058d8: e426 sd s1,8(sp) + c00058da: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5835 p->ref_count++; - c00057ee: c198 sw a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5828 + c00058dc: c198 sw a4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5836 if (p->ref_count == 1) { - c00057f0: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5826 + c00058de: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5834 { - c00057f2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5828 + c00058e0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5836 if (p->ref_count == 1) { - c00057f4: 02f71663 bne a4,a5,c0005820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5831 + c00058e2: 02f71663 bne a4,a5,c000590e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5839 list_del(&p->link); - c00057f8: 00858913 addi s2,a1,8 - c00057fc: 84aa mv s1,a0 - c00057fe: 854a mv a0,s2 - c0005800: 85bfe0ef jal ra,c000405a + c00058e6: 00858913 addi s2,a1,8 + c00058ea: 84aa mv s1,a0 + c00058ec: 854a mv a0,s2 + c00058ee: f6cfe0ef jal ra,c000405a list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0005804: 64dc ld a5,136(s1) + c00058f2: 64dc ld a5,136(s1) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0005806: 0127b423 sd s2,8(a5) + c00058f4: 0127b423 sd s2,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c000580a: e41c sd a5,8(s0) + c00058f8: e41c sd a5,8(s0) gc_scan_incref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5840 list_add_tail(&p->link, &rt->gc_obj_list); - c000580c: 08848793 addi a5,s1,136 + c00058fa: 08848793 addi a5,s1,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0005810: e81c sd a5,16(s0) + c00058fe: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0005812: 0924b423 sd s2,136(s1) + c0005900: 0924b423 sd s2,136(s1) gc_scan_incref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5841 p->mark = 0; /* reset the mark for the next GC call */ - c0005816: 00444783 lbu a5,4(s0) - c000581a: 8bbd andi a5,a5,15 - c000581c: 00f40223 sb a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5835 -} - c0005820: 60e2 ld ra,24(sp) - c0005822: 6442 ld s0,16(sp) - c0005824: 64a2 ld s1,8(sp) - c0005826: 6902 ld s2,0(sp) - c0005828: 6105 addi sp,sp,32 - c000582a: 8082 ret - -00000000c000582c : + c0005904: 00444783 lbu a5,4(s0) + c0005908: 8bbd andi a5,a5,15 + c000590a: 00f40223 sb a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5843 +} + c000590e: 60e2 ld ra,24(sp) + c0005910: 6442 ld s0,16(sp) + c0005912: 64a2 ld s1,8(sp) + c0005914: 6902 ld s2,0(sp) + c0005916: 6105 addi sp,sp,32 + c0005918: 8082 ret + +00000000c000591a : compute_jsstring_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5955 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5963 if (!str->atom_type) { /* atoms are handled separately */ - c000582c: 451c lw a5,8(a0) - c000582e: c0000737 lui a4,0xc0000 - c0005832: 8ff9 and a5,a5,a4 - c0005834: 2781 sext.w a5,a5 - c0005836: ef9d bnez a5,c0005874 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5956 + c000591a: 451c lw a5,8(a0) + c000591c: c0000737 lui a4,0xc0000 + c0005920: 8ff9 and a5,a5,a4 + c0005922: 2781 sext.w a5,a5 + c0005924: ef9d bnez a5,c0005962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5964 double s_ref_count = str->header.ref_count; - c0005838: 411c lw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5957 + c0005926: 411c lw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5965 hp->str_count += 1 / s_ref_count; - c000583a: 259c fld fa5,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5956 + c0005928: 259c fld fa5,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5964 double s_ref_count = str->header.ref_count; - c000583c: d2078753 fcvt.d.w fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5957 + c000592a: d2078753 fcvt.d.w fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5965 hp->str_count += 1 / s_ref_count; - c0005840: 0006f797 auipc a5,0x6f - c0005844: f587b687 fld fa3,-168(a5) # c0074798 <_erodata+0x18> - c0005848: 1ae6f6d3 fdiv.d fa3,fa3,fa4 - c000584c: 02d7f6d3 fadd.d fa3,fa5,fa3 - c0005850: a594 fsd fa3,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5958 + c000592e: 0006f797 auipc a5,0x6f + c0005932: 0ca7b687 fld fa3,202(a5) # c00749f8 <_erodata+0x18> + c0005936: 1ae6f6d3 fdiv.d fa3,fa3,fa4 + c000593a: 02d7f6d3 fadd.d fa3,fa5,fa3 + c000593e: a594 fsd fa3,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5966 hp->str_size += ((sizeof(*str) + (str->len << str->is_wide_char) + - c0005852: 415c lw a5,4(a0) - c0005854: 01f7d71b srliw a4,a5,0x1f - c0005858: 1786 slli a5,a5,0x21 - c000585a: 9385 srli a5,a5,0x21 - c000585c: 00e797bb sllw a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5959 + c0005940: 415c lw a5,4(a0) + c0005942: 01f7d71b srliw a4,a5,0x1f + c0005946: 1786 slli a5,a5,0x21 + c0005948: 9385 srli a5,a5,0x21 + c000594a: 00e797bb sllw a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5967 1 - str->is_wide_char) / s_ref_count); - c0005860: 8f99 sub a5,a5,a4 - c0005862: 07c5 addi a5,a5,17 - c0005864: d237f7d3 fcvt.d.lu fa5,a5 - c0005868: 1ae7f753 fdiv.d fa4,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5958 + c000594e: 8f99 sub a5,a5,a4 + c0005950: 07c5 addi a5,a5,17 + c0005952: d237f7d3 fcvt.d.lu fa5,a5 + c0005956: 1ae7f753 fdiv.d fa4,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5966 hp->str_size += ((sizeof(*str) + (str->len << str->is_wide_char) + - c000586c: 299c fld fa5,16(a1) - c000586e: 02e7f7d3 fadd.d fa5,fa5,fa4 - c0005872: a99c fsd fa5,16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5961 + c000595a: 299c fld fa5,16(a1) + c000595c: 02e7f7d3 fadd.d fa5,fa5,fa4 + c0005960: a99c fsd fa5,16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5969 } - c0005874: 8082 ret + c0005962: 8082 ret -00000000c0005876 : +00000000c0005964 : compute_value_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6012 switch(JS_VALUE_GET_TAG(val)) { - c0005876: 2581 sext.w a1,a1 - c0005878: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6003 + c0005964: 2581 sext.w a1,a1 + c0005966: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6011 { - c000587a: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6004 + c0005968: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6012 switch(JS_VALUE_GET_TAG(val)) { - c000587c: 00f59563 bne a1,a5,c0005886 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6006 + c000596a: 00f59563 bne a1,a5,c0005974 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6014 compute_jsstring_size(JS_VALUE_GET_STRING(val), hp); - c0005880: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6016 + c000596e: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6024 } - c0005882: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6006 + c0005970: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6014 compute_jsstring_size(JS_VALUE_GET_STRING(val), hp); - c0005884: b765 j c000582c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6016 + c0005972: b765 j c000591a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6024 } - c0005886: 0141 addi sp,sp,16 - c0005888: 8082 ret + c0005974: 0141 addi sp,sp,16 + c0005976: 8082 ret -00000000c000588a : +00000000c0005978 : check_define_prop_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9047 { - c000588a: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9042 + c0005978: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9050 if (!(prop_flags & JS_PROP_CONFIGURABLE)) { - c000588c: 8905 andi a0,a0,1 - c000588e: ed11 bnez a0,c00058aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9043 + c000597a: 8905 andi a0,a0,1 + c000597c: ed11 bnez a0,c0005998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9051 if ((flags & (JS_PROP_HAS_CONFIGURABLE | JS_PROP_CONFIGURABLE)) == - c0005890: 1015f793 andi a5,a1,257 - c0005894: 10100693 li a3,257 - c0005898: 04d78c63 beq a5,a3,c00058f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9047 + c000597e: 1015f793 andi a5,a1,257 + c0005982: 10100693 li a3,257 + c0005986: 04d78c63 beq a5,a3,c00059de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9055 if ((flags & JS_PROP_HAS_ENUMERABLE) && - c000589c: 4005f793 andi a5,a1,1024 - c00058a0: c789 beqz a5,c00058aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9048 (discriminator 1) + c000598a: 4005f793 andi a5,a1,1024 + c000598e: c789 beqz a5,c0005998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9056 (discriminator 1) (flags & JS_PROP_ENUMERABLE) != (prop_flags & JS_PROP_ENUMERABLE)) - c00058a2: 00b747b3 xor a5,a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9047 (discriminator 1) + c0005990: 00b747b3 xor a5,a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9055 (discriminator 1) if ((flags & JS_PROP_HAS_ENUMERABLE) && - c00058a6: 8b91 andi a5,a5,4 - c00058a8: e7a1 bnez a5,c00058f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9051 + c0005994: 8b91 andi a5,a5,4 + c0005996: e7a1 bnez a5,c00059de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9059 if (flags & (JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE | - c00058aa: 6791 lui a5,0x4 - c00058ac: a0078793 addi a5,a5,-1536 # 3a00 <__clzdi2-0xbfffc600> - c00058b0: 8fed and a5,a5,a1 - c00058b2: cf95 beqz a5,c00058ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9053 + c0005998: 6791 lui a5,0x4 + c000599a: a0078793 addi a5,a5,-1536 # 3a00 <__clzdi2-0xbfffc600> + c000599e: 8fed and a5,a5,a1 + c00059a0: cf95 beqz a5,c00059dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9061 if (!(prop_flags & JS_PROP_CONFIGURABLE)) { - c00058b4: ed15 bnez a0,c00058f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9054 + c00059a2: ed15 bnez a0,c00059de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9062 has_accessor = ((flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) != 0); - c00058b6: 6789 lui a5,0x2 - c00058b8: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9055 + c00059a4: 6789 lui a5,0x2 + c00059a6: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9063 is_getset = ((prop_flags & JS_PROP_TMASK) == JS_PROP_GETSET); - c00058bc: 03077613 andi a2,a4,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9054 + c00059aa: 03077613 andi a2,a4,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9062 has_accessor = ((flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) != 0); - c00058c0: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9055 + c00059ae: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9063 is_getset = ((prop_flags & JS_PROP_TMASK) == JS_PROP_GETSET); - c00058c2: ff060693 addi a3,a2,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9056 + c00059b0: ff060693 addi a3,a2,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9064 if (has_accessor != is_getset) - c00058c6: 00f038b3 snez a7,a5 - c00058ca: 0016b693 seqz a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9055 + c00059b4: 00f038b3 snez a7,a5 + c00059b8: 0016b693 seqz a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9063 is_getset = ((prop_flags & JS_PROP_TMASK) == JS_PROP_GETSET); - c00058ce: 4841 li a6,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9056 + c00059bc: 4841 li a6,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9064 if (has_accessor != is_getset) - c00058d0: 02d89063 bne a7,a3,c00058f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9066 + c00059be: 02d89063 bne a7,a3,c00059de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9074 return TRUE; - c00058d4: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9058 + c00059c2: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9066 if (!has_accessor && !is_getset && !(prop_flags & JS_PROP_WRITABLE)) { - c00058d6: 01060d63 beq a2,a6,c00058f0 - c00058da: 8b09 andi a4,a4,2 - c00058dc: 8fd9 or a5,a5,a4 - c00058de: eb89 bnez a5,c00058f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9060 + c00059c4: 01060d63 beq a2,a6,c00059de + c00059c8: 8b09 andi a4,a4,2 + c00059ca: 8fd9 or a5,a5,a4 + c00059cc: eb89 bnez a5,c00059de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9068 if ((flags & (JS_PROP_HAS_WRITABLE | JS_PROP_WRITABLE)) == - c00058e0: 2025f593 andi a1,a1,514 - c00058e4: dfe58593 addi a1,a1,-514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9045 + c00059ce: 2025f593 andi a1,a1,514 + c00059d2: dfe58593 addi a1,a1,-514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9053 return FALSE; - c00058e8: 00b03533 snez a0,a1 - c00058ec: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9066 + c00059d6: 00b03533 snez a0,a1 + c00059da: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9074 return TRUE; - c00058ee: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9067 + c00059dc: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9075 } - c00058f0: 8082 ret + c00059de: 8082 ret -00000000c00058f2 : +00000000c00059e0 : tag_is_number(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14121 { - c00058f2: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14114 + c00059e0: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14122 return (tag == JS_TAG_INT || tag == JS_TAG_BIG_INT || - c00058f4: c909 beqz a0,c0005906 - c00058f6: 5759 li a4,-10 - c00058f8: 4505 li a0,1 - c00058fa: 00e78763 beq a5,a4,c0005908 - c00058fe: 17e5 addi a5,a5,-7 - c0005900: 0017b513 seqz a0,a5 - c0005904: 8082 ret - c0005906: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14120 (discriminator 8) -} - c0005908: 8082 ret - -00000000c000590a : + c00059e2: c909 beqz a0,c00059f4 + c00059e4: 5759 li a4,-10 + c00059e6: 4505 li a0,1 + c00059e8: 00e78763 beq a5,a4,c00059f6 + c00059ec: 17e5 addi a5,a5,-7 + c00059ee: 0017b513 seqz a0,a5 + c00059f2: 8082 ret + c00059f4: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14128 (discriminator 8) +} + c00059f6: 8082 ret + +00000000c00059f8 : is_var_in_arg_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30915 return (vd->var_name == JS_ATOM_home_object || - c000590a: 4118 lw a4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30911 + c00059f8: 4118 lw a4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30919 vd->var_name == JS_ATOM__arg_var_ || - c000590c: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30906 + c00059fa: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30914 { - c000590e: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30911 + c00059fc: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30919 vd->var_name == JS_ATOM__arg_var_ || - c0005910: f8e7061b addiw a2,a4,-114 - c0005914: 02c6f263 bgeu a3,a2,c0005938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30909 + c00059fe: f8e7061b addiw a2,a4,-114 + c0005a02: 02c6f263 bgeu a3,a2,c0005a26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30917 vd->var_name == JS_ATOM_new_target || - c0005918: 46a1 li a3,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30911 + c0005a06: 46a1 li a3,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30919 vd->var_name == JS_ATOM__arg_var_ || - c000591a: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30909 + c0005a08: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30917 vd->var_name == JS_ATOM_new_target || - c000591c: 00d70f63 beq a4,a3,c000593a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30910 + c0005a0a: 00d70f63 beq a4,a3,c0005a28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30918 vd->var_name == JS_ATOM_this || - c0005920: 05400693 li a3,84 - c0005924: 00d70b63 beq a4,a3,c000593a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30912 + c0005a0e: 05400693 li a3,84 + c0005a12: 00d70b63 beq a4,a3,c0005a28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30920 vd->var_kind == JS_VAR_FUNCTION_NAME); - c0005928: 47c8 lw a0,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30911 + c0005a16: 47c8 lw a0,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30919 vd->var_name == JS_ATOM__arg_var_ || - c000592a: 0f057513 andi a0,a0,240 - c000592e: fc050513 addi a0,a0,-64 - c0005932: 00153513 seqz a0,a0 - c0005936: 8082 ret - c0005938: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30913 (discriminator 5) + c0005a18: 0f057513 andi a0,a0,240 + c0005a1c: fc050513 addi a0,a0,-64 + c0005a20: 00153513 seqz a0,a0 + c0005a24: 8082 ret + c0005a26: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30921 (discriminator 5) } - c000593a: 8082 ret + c0005a28: 8082 ret -00000000c000593c : +00000000c0005a2a : string_advance_index(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41646 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 if (!unicode || index >= p->len || !p->is_wide_char) { - c000593c: ca11 beqz a2,c0005950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41646 (discriminator 1) - c000593e: 415c lw a5,4(a0) - c0005940: 02179713 slli a4,a5,0x21 - c0005944: 9305 srli a4,a4,0x21 - c0005946: 00e5d563 bge a1,a4,c0005950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41646 (discriminator 2) - c000594a: 2781 sext.w a5,a5 - c000594c: 0007c563 bltz a5,c0005956 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41647 + c0005a2a: ca11 beqz a2,c0005a3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 (discriminator 1) + c0005a2c: 415c lw a5,4(a0) + c0005a2e: 02179713 slli a4,a5,0x21 + c0005a32: 9305 srli a4,a4,0x21 + c0005a34: 00e5d563 bge a1,a4,c0005a3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 (discriminator 2) + c0005a38: 2781 sext.w a5,a5 + c0005a3a: 0007c563 bltz a5,c0005a44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41655 index++; - c0005950: 00158513 addi a0,a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 + c0005a3e: 00158513 addi a0,a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41662 } - c0005954: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41645 + c0005a42: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41653 { - c0005956: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41649 + c0005a44: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41657 int index32 = (int)index; - c0005958: c62e sw a1,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41650 + c0005a46: c62e sw a1,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41658 string_getc(p, &index32); - c000595a: 006c addi a1,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41645 + c0005a48: 006c addi a1,sp,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41653 { - c000595c: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41650 + c0005a4a: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41658 string_getc(p, &index32); - c000595e: 823fe0ef jal ra,c0004180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 + c0005a4c: f34fe0ef jal ra,c0004180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41662 } - c0005962: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41651 + c0005a50: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41659 index = index32; - c0005964: 4532 lw a0,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41654 + c0005a52: 4532 lw a0,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41662 } - c0005966: 6105 addi sp,sp,32 - c0005968: 8082 ret + c0005a54: 6105 addi sp,sp,32 + c0005a56: 8082 ret -00000000c000596a : +00000000c0005a58 : js_string_find_invalid_codepoint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41663 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41671 for(i = 0; i < p->len; i++) { - c000596a: 415c lw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41665 + c0005a58: 415c lw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41673 if (c >= 0xD800 && c <= 0xDFFF) { - c000596c: 764d lui a2,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41666 + c0005a5a: 764d lui a2,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41674 if (c >= 0xDC00 || (i + 1) >= p->len) - c000596e: 65b9 lui a1,0xe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41663 + c0005a5c: 65b9 lui a1,0xe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41671 for(i = 0; i < p->len; i++) { - c0005970: 1786 slli a5,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 + c0005a5e: 1786 slli a5,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41677 if (c < 0xDC00 || c > 0xDFFF) - c0005972: 7849 lui a6,0xffff2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41658 + c0005a60: 7849 lui a6,0xffff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41666 static int js_string_find_invalid_codepoint(JSString *p) - c0005974: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41663 + c0005a62: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41671 for(i = 0; i < p->len; i++) { - c0005976: 9385 srli a5,a5,0x21 - c0005978: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41665 + c0005a64: 9385 srli a5,a5,0x21 + c0005a66: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41673 if (c >= 0xD800 && c <= 0xDFFF) { - c000597a: 8006061b addiw a2,a2,-2048 - c000597e: 7ff00313 li t1,2047 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41666 + c0005a68: 8006061b addiw a2,a2,-2048 + c0005a6c: 7ff00313 li t1,2047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41674 if (c >= 0xDC00 || (i + 1) >= p->len) - c0005982: bff58593 addi a1,a1,-1025 # dbff <__clzdi2-0xbfff2401> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 + c0005a70: bff58593 addi a1,a1,-1025 # dbff <__clzdi2-0xbfff2401> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41677 if (c < 0xDC00 || c > 0xDFFF) - c0005986: 4008081b addiw a6,a6,1024 - c000598a: 3ff00e13 li t3,1023 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41663 + c0005a74: 4008081b addiw a6,a6,1024 + c0005a78: 3ff00e13 li t3,1023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41671 for(i = 0; i < p->len; i++) { - c000598e: 00f54463 blt a0,a5,c0005996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41674 + c0005a7c: 00f54463 blt a0,a5,c0005a84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41682 return -1; - c0005992: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41675 + c0005a80: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41683 } - c0005994: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41664 + c0005a82: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41672 c = p->u.str16[i]; - c0005996: 00850693 addi a3,a0,8 - c000599a: 0686 slli a3,a3,0x1 - c000599c: 96ba add a3,a3,a4 - c000599e: 0006d683 lhu a3,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41665 + c0005a84: 00850693 addi a3,a0,8 + c0005a88: 0686 slli a3,a3,0x1 + c0005a8a: 96ba add a3,a3,a4 + c0005a8c: 0006d683 lhu a3,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41673 if (c >= 0xD800 && c <= 0xDFFF) { - c00059a2: 00d608bb addw a7,a2,a3 - c00059a6: 03136363 bltu t1,a7,c00059cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41666 + c0005a90: 00d608bb addw a7,a2,a3 + c0005a94: 03136363 bltu t1,a7,c0005aba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41674 if (c >= 0xDC00 || (i + 1) >= p->len) - c00059aa: fed5e5e3 bltu a1,a3,c0005994 - c00059ae: 0015089b addiw a7,a0,1 - c00059b2: fef8d1e3 bge a7,a5,c0005994 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41668 + c0005a98: fed5e5e3 bltu a1,a3,c0005a82 + c0005a9c: 0015089b addiw a7,a0,1 + c0005aa0: fef8d1e3 bge a7,a5,c0005a82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41676 c = p->u.str16[i + 1]; - c00059b6: 00888693 addi a3,a7,8 - c00059ba: 0686 slli a3,a3,0x1 - c00059bc: 96ba add a3,a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 + c0005aa4: 00888693 addi a3,a7,8 + c0005aa8: 0686 slli a3,a3,0x1 + c0005aaa: 96ba add a3,a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41677 if (c < 0xDC00 || c > 0xDFFF) - c00059be: 0006d683 lhu a3,0(a3) - c00059c2: 010686bb addw a3,a3,a6 - c00059c6: fcde67e3 bltu t3,a3,c0005994 - c00059ca: 8546 mv a0,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41663 + c0005aac: 0006d683 lhu a3,0(a3) + c0005ab0: 010686bb addw a3,a3,a6 + c0005ab4: fcde67e3 bltu t3,a3,c0005a82 + c0005ab8: 8546 mv a0,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41671 for(i = 0; i < p->len; i++) { - c00059cc: 2505 addiw a0,a0,1 - c00059ce: b7c1 j c000598e + c0005aba: 2505 addiw a0,a0,1 + c0005abc: b7c1 j c0005a7c -00000000c00059d0 : +00000000c0005abe : js_get_atom_index(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2705 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2713 if (p->atom_type != JS_ATOM_TYPE_SYMBOL) { - c00059d0: 459c lw a5,8(a1) - c00059d2: c00006b7 lui a3,0xc0000 - c00059d6: c0000637 lui a2,0xc0000 - c00059da: 8efd and a3,a3,a5 - c00059dc: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2703 + c0005abe: 459c lw a5,8(a1) + c0005ac0: c00006b7 lui a3,0xc0000 + c0005ac4: c0000637 lui a2,0xc0000 + c0005ac8: 8efd and a3,a3,a5 + c0005aca: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2711 { - c00059de: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2704 + c0005acc: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2712 uint32_t i = p->hash_next; /* atom_index */ - c00059e0: 45c8 lw a0,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2705 + c0005ace: 45c8 lw a0,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2713 if (p->atom_type != JS_ATOM_TYPE_SYMBOL) { - c00059e2: 02c68463 beq a3,a2,c0005a0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2708 + c0005ad0: 02c68463 beq a3,a2,c0005af8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2716 i = rt->atom_hash[p->hash & (rt->atom_hash_size - 1)]; - c00059e6: 4734 lw a3,72(a4) - c00059e8: 178a slli a5,a5,0x22 - c00059ea: 9389 srli a5,a5,0x22 - c00059ec: 36fd addiw a3,a3,-1 - c00059ee: 8ff5 and a5,a5,a3 - c00059f0: 6f34 ld a3,88(a4) - c00059f2: 078a slli a5,a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2709 + c0005ad4: 4734 lw a3,72(a4) + c0005ad6: 178a slli a5,a5,0x22 + c0005ad8: 9389 srli a5,a5,0x22 + c0005ada: 36fd addiw a3,a3,-1 + c0005adc: 8ff5 and a5,a5,a3 + c0005ade: 6f34 ld a3,88(a4) + c0005ae0: 078a slli a5,a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2717 p1 = rt->atom_array[i]; - c00059f4: 7338 ld a4,96(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2708 + c0005ae2: 7338 ld a4,96(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2716 i = rt->atom_hash[p->hash & (rt->atom_hash_size - 1)]; - c00059f6: 97b6 add a5,a5,a3 - c00059f8: 4388 lw a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2713 + c0005ae4: 97b6 add a5,a5,a3 + c0005ae6: 4388 lw a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2721 p1 = rt->atom_array[i]; - c00059fa: 02051693 slli a3,a0,0x20 - c00059fe: 01d6d793 srli a5,a3,0x1d - c0005a02: 97ba add a5,a5,a4 - c0005a04: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2710 + c0005ae8: 02051693 slli a3,a0,0x20 + c0005aec: 01d6d793 srli a5,a3,0x1d + c0005af0: 97ba add a5,a5,a4 + c0005af2: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2718 while (p1 != p) { - c0005a06: 00f59363 bne a1,a5,c0005a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2717 + c0005af4: 00f59363 bne a1,a5,c0005afa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2725 } - c0005a0a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2711 + c0005af8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2719 assert(i != 0); - c0005a0c: ed09 bnez a0,c0005a26 - c0005a0e: 6585 lui a1,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2703 -{ - c0005a10: 1141 addi sp,sp,-16 + c0005afa: ed09 bnez a0,c0005b14 + c0005afc: 6585 lui a1,0x1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2711 - assert(i != 0); - c0005a12: 4601 li a2,0 - c0005a14: a9758593 addi a1,a1,-1385 # a97 <__clzdi2-0xbffff569> - c0005a18: 00057517 auipc a0,0x57 - c0005a1c: 06050513 addi a0,a0,96 # c005ca78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2703 { - c0005a20: e406 sd ra,8(sp) + c0005afe: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2719 + assert(i != 0); + c0005b00: 4601 li a2,0 + c0005b02: a9f58593 addi a1,a1,-1377 # a9f <__clzdi2-0xbffff561> + c0005b06: 00057517 auipc a0,0x57 + c0005b0a: 14250513 addi a0,a0,322 # c005cc48 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2711 +{ + c0005b0e: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2719 assert(i != 0); - c0005a22: 7f74d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2712 + c0005b10: 0d84e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2720 i = p1->hash_next; - c0005a26: 47c8 lw a0,12(a5) - c0005a28: bfc9 j c00059fa + c0005b14: 47c8 lw a0,12(a5) + c0005b16: bfc9 j c0005ae8 -00000000c0005a2a : +00000000c0005b18 : gc_decref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5794 -{ - c0005a2a: 1101 addi sp,sp,-32 - c0005a2c: ec06 sd ra,24(sp) - c0005a2e: e822 sd s0,16(sp) - c0005a30: e426 sd s1,8(sp) - c0005a32: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5795 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5802 +{ + c0005b18: 1101 addi sp,sp,-32 + c0005b1a: ec06 sd ra,24(sp) + c0005b1c: e822 sd s0,16(sp) + c0005b1e: e426 sd s1,8(sp) + c0005b20: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5803 assert(p->ref_count > 0); - c0005a34: 419c lw a5,0(a1) - c0005a36: 00f04c63 bgtz a5,c0005a4e - c0005a3a: 6585 lui a1,0x1 - c0005a3c: 4601 li a2,0 - c0005a3e: 6a358593 addi a1,a1,1699 # 16a3 <__clzdi2-0xbfffe95d> - c0005a42: 00057517 auipc a0,0x57 - c0005a46: 03650513 addi a0,a0,54 # c005ca78 - c0005a4a: 7cf4d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5796 (discriminator 2) + c0005b22: 419c lw a5,0(a1) + c0005b24: 00f04c63 bgtz a5,c0005b3c + c0005b28: 6585 lui a1,0x1 + c0005b2a: 4601 li a2,0 + c0005b2c: 6ab58593 addi a1,a1,1707 # 16ab <__clzdi2-0xbfffe955> + c0005b30: 00057517 auipc a0,0x57 + c0005b34: 11850513 addi a0,a0,280 # c005cc48 + c0005b38: 0b04e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5804 (discriminator 2) p->ref_count--; - c0005a4e: 37fd addiw a5,a5,-1 - c0005a50: c19c sw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5797 (discriminator 2) + c0005b3c: 37fd addiw a5,a5,-1 + c0005b3e: c19c sw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5805 (discriminator 2) if (p->ref_count == 0 && p->mark == 1) { - c0005a52: 6198 ld a4,0(a1) - c0005a54: 0f100793 li a5,241 - c0005a58: 1782 slli a5,a5,0x20 - c0005a5a: 17fd addi a5,a5,-1 - c0005a5c: 8ff9 and a5,a5,a4 - c0005a5e: 4705 li a4,1 - c0005a60: 1712 slli a4,a4,0x24 - c0005a62: 842e mv s0,a1 - c0005a64: 02e79163 bne a5,a4,c0005a86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5798 + c0005b40: 6198 ld a4,0(a1) + c0005b42: 0f100793 li a5,241 + c0005b46: 1782 slli a5,a5,0x20 + c0005b48: 17fd addi a5,a5,-1 + c0005b4a: 8ff9 and a5,a5,a4 + c0005b4c: 4705 li a4,1 + c0005b4e: 1712 slli a4,a4,0x24 + c0005b50: 842e mv s0,a1 + c0005b52: 02e79163 bne a5,a4,c0005b74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5806 list_del(&p->link); - c0005a68: 00858913 addi s2,a1,8 - c0005a6c: 84aa mv s1,a0 - c0005a6e: 854a mv a0,s2 - c0005a70: deafe0ef jal ra,c000405a + c0005b56: 00858913 addi s2,a1,8 + c0005b5a: 84aa mv s1,a0 + c0005b5c: 854a mv a0,s2 + c0005b5e: cfcfe0ef jal ra,c000405a list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0005a74: 74dc ld a5,168(s1) + c0005b62: 74dc ld a5,168(s1) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0005a76: 0127b423 sd s2,8(a5) + c0005b64: 0127b423 sd s2,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0005a7a: e41c sd a5,8(s0) + c0005b68: e41c sd a5,8(s0) gc_decref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5807 list_add_tail(&p->link, &rt->tmp_obj_list); - c0005a7c: 0a848793 addi a5,s1,168 + c0005b6a: 0a848793 addi a5,s1,168 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0005a80: e81c sd a5,16(s0) + c0005b6e: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0005a82: 0b24b423 sd s2,168(s1) + c0005b70: 0b24b423 sd s2,168(s1) gc_decref_child(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5809 } - c0005a86: 60e2 ld ra,24(sp) - c0005a88: 6442 ld s0,16(sp) - c0005a8a: 64a2 ld s1,8(sp) - c0005a8c: 6902 ld s2,0(sp) - c0005a8e: 6105 addi sp,sp,32 - c0005a90: 8082 ret + c0005b74: 60e2 ld ra,24(sp) + c0005b76: 6442 ld s0,16(sp) + c0005b78: 64a2 ld s1,8(sp) + c0005b7a: 6902 ld s2,0(sp) + c0005b7c: 6105 addi sp,sp,32 + c0005b7e: 8082 ret -00000000c0005a92 : +00000000c0005b80 : update_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21593 { - c0005a92: 1141 addi sp,sp,-16 - c0005a94: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21588 + c0005b80: 1141 addi sp,sp,-16 + c0005b82: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21596 assert(label >= 0 && label < s->label_count); - c0005a96: 0005c663 bltz a1,c0005aa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21588 (discriminator 2) - c0005a9a: 17c52783 lw a5,380(a0) - c0005a9e: 00f5cc63 blt a1,a5,c0005ab6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21588 (discriminator 3) - c0005aa2: 6595 lui a1,0x5 - c0005aa4: 4601 li a2,0 - c0005aa6: 45458593 addi a1,a1,1108 # 5454 <__clzdi2-0xbfffabac> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21591 + c0005b84: 0005c663 bltz a1,c0005b90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21596 (discriminator 2) + c0005b88: 17c52783 lw a5,380(a0) + c0005b8c: 00f5cc63 blt a1,a5,c0005ba4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21596 (discriminator 3) + c0005b90: 6595 lui a1,0x5 + c0005b92: 4601 li a2,0 + c0005b94: 45c58593 addi a1,a1,1116 # 545c <__clzdi2-0xbfffaba4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21599 assert(ls->ref_count >= 0); - c0005aaa: 00057517 auipc a0,0x57 - c0005aae: fce50513 addi a0,a0,-50 # c005ca78 - c0005ab2: 7674d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21589 (discriminator 4) + c0005b98: 00057517 auipc a0,0x57 + c0005b9c: 0b050513 addi a0,a0,176 # c005cc48 + c0005ba0: 0484e0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21597 (discriminator 4) ls = &s->label_slots[label]; - c0005ab6: 47e1 li a5,24 - c0005ab8: 02f585b3 mul a1,a1,a5 - c0005abc: 17053783 ld a5,368(a0) - c0005ac0: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21590 (discriminator 4) + c0005ba4: 47e1 li a5,24 + c0005ba6: 02f585b3 mul a1,a1,a5 + c0005baa: 17053783 ld a5,368(a0) + c0005bae: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21598 (discriminator 4) ls->ref_count += delta; - c0005ac2: 419c lw a5,0(a1) - c0005ac4: 00c7853b addw a0,a5,a2 - c0005ac8: c188 sw a0,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21591 (discriminator 4) + c0005bb0: 419c lw a5,0(a1) + c0005bb2: 00c7853b addw a0,a5,a2 + c0005bb6: c188 sw a0,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21599 (discriminator 4) assert(ls->ref_count >= 0); - c0005aca: 00055763 bgez a0,c0005ad8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21591 - c0005ace: 6595 lui a1,0x5 - c0005ad0: 4601 li a2,0 - c0005ad2: 45758593 addi a1,a1,1111 # 5457 <__clzdi2-0xbfffaba9> - c0005ad6: bfd1 j c0005aaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21593 (discriminator 2) -} - c0005ad8: 60a2 ld ra,8(sp) - c0005ada: 0141 addi sp,sp,16 - c0005adc: 8082 ret - -00000000c0005ade : + c0005bb8: 00055763 bgez a0,c0005bc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21599 + c0005bbc: 6595 lui a1,0x5 + c0005bbe: 4601 li a2,0 + c0005bc0: 45f58593 addi a1,a1,1119 # 545f <__clzdi2-0xbfffaba1> + c0005bc4: bfd1 j c0005b98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21601 (discriminator 2) +} + c0005bc6: 60a2 ld ra,8(sp) + c0005bc8: 0141 addi sp,sp,16 + c0005bca: 8082 ret + +00000000c0005bcc : find_jump_target(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31940 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 { - c0005ade: 7179 addi sp,sp,-48 - c0005ae0: e44e sd s3,8(sp) - c0005ae2: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31943 + c0005bcc: 7179 addi sp,sp,-48 + c0005bce: e44e sd s3,8(sp) + c0005bd0: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31951 update_label(s, label, -1); - c0005ae4: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31940 -{ - c0005ae6: f022 sd s0,32(sp) - c0005ae8: ec26 sd s1,24(sp) - c0005aea: e84a sd s2,16(sp) - c0005aec: f406 sd ra,40(sp) - c0005aee: 8936 mv s2,a3 - c0005af0: 84aa mv s1,a0 - c0005af2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31943 + c0005bd2: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 +{ + c0005bd4: f022 sd s0,32(sp) + c0005bd6: ec26 sd s1,24(sp) + c0005bd8: e84a sd s2,16(sp) + c0005bda: f406 sd ra,40(sp) + c0005bdc: 8936 mv s2,a3 + c0005bde: 84aa mv s1,a0 + c0005be0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31951 update_label(s, label, -1); - c0005af4: f9fff0ef jal ra,c0005a92 - c0005af8: 46a9 li a3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31946 + c0005be2: f9fff0ef jal ra,c0005b80 + c0005be6: 46a9 li a3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31954 pos = s->label_slots[label].pos2; - c0005afa: 4561 li a0,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005be8: 4561 li a0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005afc: 0b600613 li a2,182 - c0005b00: 0c600893 li a7,198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31954 + c0005bea: 0b600613 li a2,182 + c0005bee: 0c600893 li a7,198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31962 pos += opcode_info[op].size; - c0005b04: 00061317 auipc t1,0x61 - c0005b08: 00c30313 addi t1,t1,12 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005bf2: 00061317 auipc t1,0x61 + c0005bf6: 17e30313 addi t1,t1,382 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005b0c: 4e39 li t3,14 - c0005b0e: 06c00e93 li t4,108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31945 + c0005bfa: 4e39 li t3,14 + c0005bfc: 06c00e93 li t4,108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31953 assert(label >= 0 && label < s->label_count); - c0005b12: 00044663 bltz s0,c0005b1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31945 (discriminator 2) - c0005b16: 17c4a783 lw a5,380(s1) - c0005b1a: 00f44c63 blt s0,a5,c0005b32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31945 (discriminator 3) - c0005b1e: 65a1 lui a1,0x8 - c0005b20: 4601 li a2,0 - c0005b22: cc958593 addi a1,a1,-823 # 7cc9 <__clzdi2-0xbfff8337> - c0005b26: 00057517 auipc a0,0x57 - c0005b2a: f5250513 addi a0,a0,-174 # c005ca78 - c0005b2e: 6eb4d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31946 (discriminator 4) + c0005c00: 00044663 bltz s0,c0005c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31953 (discriminator 2) + c0005c04: 17c4a783 lw a5,380(s1) + c0005c08: 00f44c63 blt s0,a5,c0005c20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31953 (discriminator 3) + c0005c0c: 65a1 lui a1,0x8 + c0005c0e: 4601 li a2,0 + c0005c10: cd158593 addi a1,a1,-815 # 7cd1 <__clzdi2-0xbfff832f> + c0005c14: 00057517 auipc a0,0x57 + c0005c18: 03450513 addi a0,a0,52 # c005cc48 + c0005c1c: 7cd4d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31954 (discriminator 4) pos = s->label_slots[label].pos2; - c0005b32: 02a40733 mul a4,s0,a0 - c0005b36: 1704b783 ld a5,368(s1) - c0005b3a: 97ba add a5,a5,a4 - c0005b3c: 478c lw a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005c20: 02a40733 mul a4,s0,a0 + c0005c24: 1704b783 ld a5,368(s1) + c0005c28: 97ba add a5,a5,a4 + c0005c2a: 478c lw a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005b3e: 1304bf03 ld t5,304(s1) - c0005b42: 00bf07b3 add a5,t5,a1 - c0005b46: 0007c803 lbu a6,0(a5) - c0005b4a: 0008071b sext.w a4,a6 - c0005b4e: 06c80e63 beq a6,a2,c0005bca - c0005b52: 05066563 bltu a2,a6,c0005b9c - c0005b56: 03c81263 bne a6,t3,c0005b7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31961 + c0005c2c: 1304bf03 ld t5,304(s1) + c0005c30: 00bf07b3 add a5,t5,a1 + c0005c34: 0007c803 lbu a6,0(a5) + c0005c38: 0008071b sext.w a4,a6 + c0005c3c: 06c80e63 beq a6,a2,c0005cb8 + c0005c40: 05066563 bltu a2,a6,c0005c8a + c0005c44: 03c81263 bne a6,t3,c0005c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31969 while (s->byte_code.buf[++pos] == OP_drop) - c0005b5a: 4739 li a4,14 - c0005b5c: 2585 addiw a1,a1,1 - c0005b5e: 00bf07b3 add a5,t5,a1 - c0005b62: 0007c783 lbu a5,0(a5) - c0005b66: fee78be3 beq a5,a4,c0005b5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31963 + c0005c48: 4739 li a4,14 + c0005c4a: 2585 addiw a1,a1,1 + c0005c4c: 00bf07b3 add a5,t5,a1 + c0005c50: 0007c783 lbu a5,0(a5) + c0005c54: fee78be3 beq a5,a4,c0005c4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31971 if (s->byte_code.buf[pos] == OP_return_undef) - c0005b6a: 02900693 li a3,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005c58: 02900693 li a3,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005b6e: 4739 li a4,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31963 + c0005c5c: 4739 li a4,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31971 if (s->byte_code.buf[pos] == OP_return_undef) - c0005b70: 00d79763 bne a5,a3,c0005b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31964 + c0005c5e: 00d79763 bne a5,a3,c0005c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31972 op = OP_return_undef; - c0005b74: 02900713 li a4,41 - c0005b78: a019 j c0005b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005c62: 02900713 li a4,41 + c0005c66: a019 j c0005c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005b7a: 05d80e63 beq a6,t4,c0005bd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31974 + c0005c68: 05d80e63 beq a6,t4,c0005cc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31982 *pop = op; - c0005b7e: 00e9a023 sw a4,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31975 + c0005c6c: 00e9a023 sw a4,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31983 update_label(s, label, +1); - c0005b82: 85a2 mv a1,s0 - c0005b84: 8526 mv a0,s1 - c0005b86: 4605 li a2,1 - c0005b88: f0bff0ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31977 -} - c0005b8c: 70a2 ld ra,40(sp) - c0005b8e: 8522 mv a0,s0 - c0005b90: 7402 ld s0,32(sp) - c0005b92: 64e2 ld s1,24(sp) - c0005b94: 6942 ld s2,16(sp) - c0005b96: 69a2 ld s3,8(sp) - c0005b98: 6145 addi sp,sp,48 - c0005b9a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005c70: 85a2 mv a1,s0 + c0005c72: 8526 mv a0,s1 + c0005c74: 4605 li a2,1 + c0005c76: f0bff0ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31985 +} + c0005c7a: 70a2 ld ra,40(sp) + c0005c7c: 8522 mv a0,s0 + c0005c7e: 7402 ld s0,32(sp) + c0005c80: 64e2 ld s1,24(sp) + c0005c82: 6942 ld s2,16(sp) + c0005c84: 69a2 ld s3,8(sp) + c0005c86: 6145 addi sp,sp,48 + c0005c88: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005b9c: ff1811e3 bne a6,a7,c0005b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31950 + c0005c8a: ff1811e3 bne a6,a7,c0005c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31958 if (pline) - c0005ba0: 02090563 beqz s2,c0005bca + c0005c8e: 02090563 beqz s2,c0005cb8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0005ba4: 0027c803 lbu a6,2(a5) - c0005ba8: 0017cf03 lbu t5,1(a5) - c0005bac: 0822 slli a6,a6,0x8 - c0005bae: 01e86f33 or t5,a6,t5 - c0005bb2: 0037c803 lbu a6,3(a5) - c0005bb6: 0047c783 lbu a5,4(a5) - c0005bba: 0842 slli a6,a6,0x10 - c0005bbc: 01e86833 or a6,a6,t5 - c0005bc0: 07e2 slli a5,a5,0x18 - c0005bc2: 0107e7b3 or a5,a5,a6 + c0005c92: 0027c803 lbu a6,2(a5) + c0005c96: 0017cf03 lbu t5,1(a5) + c0005c9a: 0822 slli a6,a6,0x8 + c0005c9c: 01e86f33 or t5,a6,t5 + c0005ca0: 0037c803 lbu a6,3(a5) + c0005ca4: 0047c783 lbu a5,4(a5) + c0005ca8: 0842 slli a6,a6,0x10 + c0005caa: 01e86833 or a6,a6,t5 + c0005cae: 07e2 slli a5,a5,0x18 + c0005cb0: 0107e7b3 or a5,a5,a6 find_jump_target(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31951 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31959 *pline = get_u32(s->byte_code.buf + pos + 1); - c0005bc6: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31954 + c0005cb4: 00f92023 sw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31962 pos += opcode_info[op].size; - c0005bca: 070a slli a4,a4,0x2 - c0005bcc: 971a add a4,a4,t1 - c0005bce: 00074783 lbu a5,0(a4) # ffffffffc0000000 <_ebss+0xfffffffeffefeeda> - c0005bd2: 9dbd addw a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31948 + c0005cb8: 070a slli a4,a4,0x2 + c0005cba: 971a add a4,a4,t1 + c0005cbc: 00074783 lbu a5,0(a4) # ffffffffc0000000 <_ebss+0xfffffffeffefeeda> + c0005cc0: 9dbd addw a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31956 switch(op = s->byte_code.buf[pos]) { - c0005bd4: b7ad j c0005b3e + c0005cc2: b7ad j c0005c2c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0005bd6: 0027c583 lbu a1,2(a5) - c0005bda: 0017c403 lbu s0,1(a5) + c0005cc4: 0027c583 lbu a1,2(a5) + c0005cc8: 0017c403 lbu s0,1(a5) find_jump_target(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31944 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31952 for (i = 0; i < 10; i++) { - c0005bde: 36fd addiw a3,a3,-1 + c0005ccc: 36fd addiw a3,a3,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0005be0: 05a2 slli a1,a1,0x8 - c0005be2: 8dc1 or a1,a1,s0 - c0005be4: 0037c403 lbu s0,3(a5) - c0005be8: 0442 slli s0,s0,0x10 - c0005bea: 8dc1 or a1,a1,s0 - c0005bec: 0047c403 lbu s0,4(a5) - c0005bf0: 0462 slli s0,s0,0x18 - c0005bf2: 8c4d or s0,s0,a1 + c0005cce: 05a2 slli a1,a1,0x8 + c0005cd0: 8dc1 or a1,a1,s0 + c0005cd2: 0037c403 lbu s0,3(a5) + c0005cd6: 0442 slli s0,s0,0x10 + c0005cd8: 8dc1 or a1,a1,s0 + c0005cda: 0047c403 lbu s0,4(a5) + c0005cde: 0462 slli s0,s0,0x18 + c0005ce0: 8c4d or s0,s0,a1 find_jump_target(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31957 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31965 label = get_u32(s->byte_code.buf + pos + 1); - c0005bf4: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31944 + c0005ce2: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31952 for (i = 0; i < 10; i++) { - c0005bf6: fe91 bnez a3,c0005b12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31973 + c0005ce4: fe91 bnez a3,c0005c00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31981 done: - c0005bf8: 06c00713 li a4,108 - c0005bfc: b749 j c0005b7e + c0005ce6: 06c00713 li a4,108 + c0005cea: b749 j c0005c6c -00000000c0005bfe : +00000000c0005cec : time_clip(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49528 if (t >= -8.64e15 && t <= 8.64e15) - c0005bfe: 0006f797 auipc a5,0x6f - c0005c02: baa7b707 fld fa4,-1110(a5) # c00747a8 <_erodata+0x28> - c0005c06: a2a707d3 fle.d a5,fa4,fa0 - c0005c0a: c39d beqz a5,c0005c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49520 (discriminator 1) - c0005c0c: 0006f797 auipc a5,0x6f - c0005c10: ba47b707 fld fa4,-1116(a5) # c00747b0 <_erodata+0x30> - c0005c14: a2e507d3 fle.d a5,fa0,fa4 - c0005c18: cf81 beqz a5,c0005c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49519 + c0005cec: 0006f797 auipc a5,0x6f + c0005cf0: d1c7b707 fld fa4,-740(a5) # c0074a08 <_erodata+0x28> + c0005cf4: a2a707d3 fle.d a5,fa4,fa0 + c0005cf8: c39d beqz a5,c0005d1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49528 (discriminator 1) + c0005cfa: 0006f797 auipc a5,0x6f + c0005cfe: d167b707 fld fa4,-746(a5) # c0074a10 <_erodata+0x30> + c0005d02: a2e507d3 fle.d a5,fa0,fa4 + c0005d06: cf81 beqz a5,c0005d1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49527 static double time_clip(double t) { - c0005c1a: 1141 addi sp,sp,-16 - c0005c1c: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49521 + c0005d08: 1141 addi sp,sp,-16 + c0005d0a: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49529 return trunc(t) + 0.0; /* convert -0 to +0 */ - c0005c1e: 4ce520ef jal ra,c00580ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49524 + c0005d0c: 5b0520ef jal ra,c00582bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49532 } - c0005c22: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49521 + c0005d10: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49529 return trunc(t) + 0.0; /* convert -0 to +0 */ - c0005c24: f20007d3 fmv.d.x fa5,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49524 + c0005d12: f20007d3 fmv.d.x fa5,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49532 } - c0005c28: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49521 + c0005d16: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49529 return trunc(t) + 0.0; /* convert -0 to +0 */ - c0005c2a: 02f57553 fadd.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49524 + c0005d18: 02f57553 fadd.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49532 } - c0005c2e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49523 + c0005d1c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49531 return NAN; - c0005c30: 0006f797 auipc a5,0x6f - c0005c34: b587b507 fld fa0,-1192(a5) # c0074788 <_erodata+0x8> - c0005c38: 12a57553 fmul.d fa0,fa0,fa0 - c0005c3c: f20007d3 fmv.d.x fa5,zero - c0005c40: 12f57553 fmul.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49524 + c0005d1e: 0006f797 auipc a5,0x6f + c0005d22: cca7b507 fld fa0,-822(a5) # c00749e8 <_erodata+0x8> + c0005d26: 12a57553 fmul.d fa0,fa0,fa0 + c0005d2a: f20007d3 fmv.d.x fa5,zero + c0005d2e: 12f57553 fmul.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49532 } - c0005c44: 8082 ret + c0005d32: 8082 ret -00000000c0005c46 : +00000000c0005d34 : js_def_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1749 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1757 { - c0005c46: 87aa mv a5,a0 - c0005c48: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1750 + c0005d34: 87aa mv a5,a0 + c0005d36: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1758 if (!ptr) - c0005c4a: c989 beqz a1,c0005c5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1753 + c0005d38: c989 beqz a1,c0005d4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1761 s->malloc_count--; - c0005c4c: 6398 ld a4,0(a5) - c0005c4e: 177d addi a4,a4,-1 - c0005c50: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1754 + c0005d3a: 6398 ld a4,0(a5) + c0005d3c: 177d addi a4,a4,-1 + c0005d3e: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1762 s->malloc_size -= js_def_malloc_usable_size(ptr) + MALLOC_OVERHEAD; - c0005c52: 6798 ld a4,8(a5) - c0005c54: 1761 addi a4,a4,-8 - c0005c56: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1755 + c0005d40: 6798 ld a4,8(a5) + c0005d42: 1761 addi a4,a4,-8 + c0005d44: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1763 free(ptr); - c0005c58: 1a04d06f j c0052df8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1756 + c0005d46: 2824d06f j c0052fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1764 } - c0005c5c: 8082 ret + c0005d4a: 8082 ret -00000000c0005c5e : +00000000c0005d4c : js_def_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1767 { - c0005c5e: 86ae mv a3,a1 - c0005c60: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1762 + c0005d4c: 86ae mv a3,a1 + c0005d4e: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1770 if (!ptr) { - c0005c62: e681 bnez a3,c0005c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1763 + c0005d50: e681 bnez a3,c0005d58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1771 if (size == 0) - c0005c64: ca15 beqz a2,c0005c98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1765 + c0005d52: ca15 beqz a2,c0005d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1773 return js_def_malloc(s, size); - c0005c66: e44ff06f j c00052aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1770 + c0005d54: d56ff06f j c00052aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1778 s->malloc_size -= old_size + MALLOC_OVERHEAD; - c0005c6a: 6518 ld a4,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1768 + c0005d58: 6518 ld a4,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1776 if (size == 0) { - c0005c6c: ee19 bnez a2,c0005c8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1759 + c0005d5a: ee19 bnez a2,c0005d78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1767 { - c0005c6e: 1141 addi sp,sp,-16 - c0005c70: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1769 + c0005d5c: 1141 addi sp,sp,-16 + c0005d5e: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1777 s->malloc_count--; - c0005c72: 6110 ld a2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1770 + c0005d60: 6110 ld a2,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1778 s->malloc_size -= old_size + MALLOC_OVERHEAD; - c0005c74: 1761 addi a4,a4,-8 - c0005c76: e518 sd a4,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1769 + c0005d62: 1761 addi a4,a4,-8 + c0005d64: e518 sd a4,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1777 s->malloc_count--; - c0005c78: 167d addi a2,a2,-1 - c0005c7a: e110 sd a2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1771 + c0005d66: 167d addi a2,a2,-1 + c0005d68: e110 sd a2,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1779 free(ptr); - c0005c7c: 8536 mv a0,a3 - c0005c7e: 17a4d0ef jal ra,c0052df8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1783 -} - c0005c82: 60a2 ld ra,8(sp) - c0005c84: 4501 li a0,0 - c0005c86: 0141 addi sp,sp,16 - c0005c88: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1774 + c0005d6a: 8536 mv a0,a3 + c0005d6c: 25c4d0ef jal ra,c0052fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1791 +} + c0005d70: 60a2 ld ra,8(sp) + c0005d72: 4501 li a0,0 + c0005d74: 0141 addi sp,sp,16 + c0005d76: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1782 if (s->malloc_size + size - old_size > s->malloc_limit) - c0005c8a: 691c ld a5,16(a0) - c0005c8c: 9732 add a4,a4,a2 - c0005c8e: 00e7e563 bltu a5,a4,c0005c98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1777 + c0005d78: 691c ld a5,16(a0) + c0005d7a: 9732 add a4,a4,a2 + c0005d7c: 00e7e563 bltu a5,a4,c0005d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1785 ptr = realloc(ptr, size); - c0005c92: 8536 mv a0,a3 - c0005c94: 1c44d06f j c0052e58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1783 + c0005d80: 8536 mv a0,a3 + c0005d82: 2a64d06f j c0053028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1791 } - c0005c98: 4501 li a0,0 - c0005c9a: 8082 ret + c0005d86: 4501 li a0,0 + c0005d88: 8082 ret -00000000c0005c9c : +00000000c0005d8a : lre_js_is_ident_first(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:65 /* JS identifier test */ @@ -15959,55 +16055,55 @@ extern uint32_t const lre_id_continue_table_ascii[4]; static inline int lre_js_is_ident_first(int c) { - c0005c9c: 87aa mv a5,a0 + c0005d8a: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:66 if ((uint32_t)c < 128) { - c0005c9e: 07f00713 li a4,127 - c0005ca2: 2501 sext.w a0,a0 - c0005ca4: 00f77463 bgeu a4,a5,c0005cac + c0005d8c: 07f00713 li a4,127 + c0005d90: 2501 sext.w a0,a0 + c0005d92: 00f77463 bgeu a4,a5,c0005d9a /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:70 return (lre_id_start_table_ascii[c >> 5] >> (c & 31)) & 1; } else { #ifdef CONFIG_ALL_UNICODE return lre_is_id_start(c); - c0005ca8: 3104106f j c0046fb8 + c0005d96: 3f24106f j c0047188 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:67 return (lre_id_start_table_ascii[c >> 5] >> (c & 31)) & 1; - c0005cac: 4057d713 srai a4,a5,0x5 - c0005cb0: 00271693 slli a3,a4,0x2 - c0005cb4: 00062717 auipc a4,0x62 - c0005cb8: 83470713 addi a4,a4,-1996 # c00674e8 - c0005cbc: 9736 add a4,a4,a3 - c0005cbe: 4308 lw a0,0(a4) - c0005cc0: 00f5553b srlw a0,a0,a5 - c0005cc4: 8905 andi a0,a0,1 + c0005d9a: 4057d713 srai a4,a5,0x5 + c0005d9e: 00271693 slli a3,a4,0x2 + c0005da2: 00062717 auipc a4,0x62 + c0005da6: 9a670713 addi a4,a4,-1626 # c0067748 + c0005daa: 9736 add a4,a4,a3 + c0005dac: 4308 lw a0,0(a4) + c0005dae: 00f5553b srlw a0,a0,a5 + c0005db2: 8905 andi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:75 #else return !lre_is_space(c); #endif } } - c0005cc6: 8082 ret + c0005db4: 8082 ret -00000000c0005cc8 : +00000000c0005db6 : lre_js_is_ident_next(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:79 static inline int lre_js_is_ident_next(int c) { if ((uint32_t)c < 128) { - c0005cc8: 07f00793 li a5,127 - c0005ccc: 02a7e063 bltu a5,a0,c0005cec + c0005db6: 07f00793 li a5,127 + c0005dba: 02a7e063 bltu a5,a0,c0005dda /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:80 return (lre_id_continue_table_ascii[c >> 5] >> (c & 31)) & 1; - c0005cd0: 40555793 srai a5,a0,0x5 - c0005cd4: 00279713 slli a4,a5,0x2 - c0005cd8: 00062797 auipc a5,0x62 - c0005cdc: 80078793 addi a5,a5,-2048 # c00674d8 - c0005ce0: 97ba add a5,a5,a4 - c0005ce2: 439c lw a5,0(a5) - c0005ce4: 00a7d53b srlw a0,a5,a0 - c0005ce8: 8905 andi a0,a0,1 + c0005dbe: 40555793 srai a5,a0,0x5 + c0005dc2: 00279713 slli a4,a5,0x2 + c0005dc6: 00062797 auipc a5,0x62 + c0005dca: 97278793 addi a5,a5,-1678 # c0067738 + c0005dce: 97ba add a5,a5,a4 + c0005dd0: 439c lw a5,0(a5) + c0005dd2: 00a7d53b srlw a0,a5,a0 + c0005dd6: 8905 andi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:89 return lre_is_id_continue(c) || c == 0x200C || c == 0x200D; #else @@ -16015,1565 +16111,1565 @@ static inline int lre_js_is_ident_next(int c) #endif } } - c0005cea: 8082 ret + c0005dd8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:78 { - c0005cec: 1141 addi sp,sp,-16 - c0005cee: e022 sd s0,0(sp) - c0005cf0: 0005041b sext.w s0,a0 + c0005dda: 1141 addi sp,sp,-16 + c0005ddc: e022 sd s0,0(sp) + c0005dde: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 return lre_is_id_continue(c) || c == 0x200C || c == 0x200D; - c0005cf4: 8522 mv a0,s0 + c0005de2: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:78 { - c0005cf6: e406 sd ra,8(sp) + c0005de4: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 return lre_is_id_continue(c) || c == 0x200C || c == 0x200D; - c0005cf8: 2d8410ef jal ra,c0046fd0 - c0005cfc: 87aa mv a5,a0 - c0005cfe: 4505 li a0,1 - c0005d00: e791 bnez a5,c0005d0c + c0005de6: 3ba410ef jal ra,c00471a0 + c0005dea: 87aa mv a5,a0 + c0005dec: 4505 li a0,1 + c0005dee: e791 bnez a5,c0005dfa /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 (discriminator 2) - c0005d02: 7579 lui a0,0xffffe - c0005d04: 3551 addiw a0,a0,-12 - c0005d06: 9d21 addw a0,a0,s0 - c0005d08: 00253513 sltiu a0,a0,2 + c0005df0: 7579 lui a0,0xffffe + c0005df2: 3551 addiw a0,a0,-12 + c0005df4: 9d21 addw a0,a0,s0 + c0005df6: 00253513 sltiu a0,a0,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:89 } - c0005d0c: 60a2 ld ra,8(sp) - c0005d0e: 6402 ld s0,0(sp) - c0005d10: 0141 addi sp,sp,16 - c0005d12: 8082 ret + c0005dfa: 60a2 ld ra,8(sp) + c0005dfc: 6402 ld s0,0(sp) + c0005dfe: 0141 addi sp,sp,16 + c0005e00: 8082 ret -00000000c0005d14 : +00000000c0005e02 : simple_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21390 -{ - c0005d14: 7179 addi sp,sp,-48 - c0005d16: e84a sd s2,16(sp) - c0005d18: f406 sd ra,40(sp) - c0005d1a: f022 sd s0,32(sp) - c0005d1c: ec26 sd s1,24(sp) - c0005d1e: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21412 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21398 +{ + c0005e02: 7179 addi sp,sp,-48 + c0005e04: e84a sd s2,16(sp) + c0005e06: f406 sd ra,40(sp) + c0005e08: f022 sd s0,32(sp) + c0005e0a: ec26 sd s1,24(sp) + c0005e0c: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21420 while (*p && *p != '\r' && *p != '\n') - c0005d20: 6809 lui a6,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21395 + c0005e0e: 6809 lui a6,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21403 p = *pp; - c0005d22: 6100 ld s0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21390 + c0005e10: 6100 ld s0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21398 { - c0005d24: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21397 + c0005e12: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21405 switch(c = *p++) { - c0005d26: 02000893 li a7,32 - c0005d2a: 02f00693 li a3,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21416 + c0005e14: 02000893 li a7,32 + c0005e18: 02f00693 li a3,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21424 if (*p == '*') { - c0005d2e: 02a00313 li t1,42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21418 + c0005e1c: 02a00313 li t1,42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21426 if ((*p == '\r' || *p == '\n') && no_line_terminator) - c0005d32: 4635 li a2,13 - c0005d34: 4529 li a0,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21412 + c0005e20: 4635 li a2,13 + c0005e22: 4529 li a0,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21420 while (*p && *p != '\r' && *p != '\n') - c0005d36: 40180813 addi a6,a6,1025 # 2401 <__clzdi2-0xbfffdbff> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21397 + c0005e24: 40180813 addi a6,a6,1025 # 2401 <__clzdi2-0xbfffdbff> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21405 switch(c = *p++) { - c0005d3a: 4e31 li t3,12 - c0005d3c: 4ea5 li t4,9 - c0005d3e: 00044483 lbu s1,0(s0) - c0005d42: 00140793 addi a5,s0,1 - c0005d46: 21148763 beq s1,a7,c0005f54 - c0005d4a: 0498e963 bltu a7,s1,c0005d9c - c0005d4e: 049e6163 bltu t3,s1,c0005d90 - c0005d52: 20956163 bltu a0,s1,c0005f54 - c0005d56: 1fd48f63 beq s1,t4,c0005f54 - c0005d5a: 02a48d63 beq s1,a0,c0005d94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21433 + c0005e28: 4e31 li t3,12 + c0005e2a: 4ea5 li t4,9 + c0005e2c: 00044483 lbu s1,0(s0) + c0005e30: 00140793 addi a5,s0,1 + c0005e34: 21148763 beq s1,a7,c0006042 + c0005e38: 0498e963 bltu a7,s1,c0005e8a + c0005e3c: 049e6163 bltu t3,s1,c0005e7e + c0005e40: 20956163 bltu a0,s1,c0006042 + c0005e44: 1fd48f63 beq s1,t4,c0006042 + c0005e48: 02a48d63 beq s1,a0,c0005e82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21441 if (lre_js_is_ident_first(c)) { - c0005d5e: 0004899b sext.w s3,s1 - c0005d62: 854e mv a0,s3 - c0005d64: f39ff0ef jal ra,c0005c9c - c0005d68: c541 beqz a0,c0005df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21434 + c0005e4c: 0004899b sext.w s3,s1 + c0005e50: 854e mv a0,s3 + c0005e52: f39ff0ef jal ra,c0005d8a + c0005e56: c541 beqz a0,c0005ede +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21442 if (c == 'i') { - c0005d6a: 06900793 li a5,105 - c0005d6e: 0cf99f63 bne s3,a5,c0005e4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21435 + c0005e58: 06900793 li a5,105 + c0005e5c: 0cf99f63 bne s3,a5,c0005f3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21443 if (p[0] == 'n' && !lre_js_is_ident_next(p[1])) { - c0005d72: 00144703 lbu a4,1(s0) - c0005d76: 06e00793 li a5,110 - c0005d7a: 06f70e63 beq a4,a5,c0005df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21438 + c0005e60: 00144703 lbu a4,1(s0) + c0005e64: 06e00793 li a5,110 + c0005e68: 06f70e63 beq a4,a5,c0005ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 if (p[0] == 'm' && p[1] == 'p' && p[2] == 'o' && - c0005d7e: 00144703 lbu a4,1(s0) - c0005d82: 06d00793 li a5,109 - c0005d86: 08f70063 beq a4,a5,c0005e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21457 + c0005e6c: 00144703 lbu a4,1(s0) + c0005e70: 06d00793 li a5,109 + c0005e74: 08f70063 beq a4,a5,c0005ef4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21465 return TOK_IDENT; - c0005d8a: f8300793 li a5,-125 - c0005d8e: a02d j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21397 + c0005e78: f8300793 li a5,-125 + c0005e7c: a02d j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21405 switch(c = *p++) { - c0005d90: fcc497e3 bne s1,a2,c0005d5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21400 + c0005e7e: fcc497e3 bne s1,a2,c0005e4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21408 if (no_line_terminator) - c0005d94: 1c058063 beqz a1,c0005f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21419 + c0005e82: 1c058063 beqz a1,c0006042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21427 return '\n'; - c0005d98: 47a9 li a5,10 - c0005d9a: a839 j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21397 + c0005e86: 47a9 li a5,10 + c0005e88: a839 j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21405 switch(c = *p++) { - c0005d9c: 02d48663 beq s1,a3,c0005dc8 - c0005da0: 03d00793 li a5,61 - c0005da4: faf49de3 bne s1,a5,c0005d5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21429 + c0005e8a: 02d48663 beq s1,a3,c0005eb6 + c0005e8e: 03d00793 li a5,61 + c0005e92: faf49de3 bne s1,a5,c0005e4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21437 if (*p == '>') - c0005da8: 00144683 lbu a3,1(s0) - c0005dac: 03e00713 li a4,62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21430 + c0005e96: 00144683 lbu a3,1(s0) + c0005e9a: 03e00713 li a4,62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21438 return TOK_ARROW; - c0005db0: fa400793 li a5,-92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21429 + c0005e9e: fa400793 li a5,-92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21437 if (*p == '>') - c0005db4: 02e69e63 bne a3,a4,c0005df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21463 -} - c0005db8: 70a2 ld ra,40(sp) - c0005dba: 7402 ld s0,32(sp) - c0005dbc: 64e2 ld s1,24(sp) - c0005dbe: 6942 ld s2,16(sp) - c0005dc0: 69a2 ld s3,8(sp) - c0005dc2: 853e mv a0,a5 - c0005dc4: 6145 addi sp,sp,48 - c0005dc6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21409 + c0005ea2: 02e69e63 bne a3,a4,c0005ede +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21471 +} + c0005ea6: 70a2 ld ra,40(sp) + c0005ea8: 7402 ld s0,32(sp) + c0005eaa: 64e2 ld s1,24(sp) + c0005eac: 6942 ld s2,16(sp) + c0005eae: 69a2 ld s3,8(sp) + c0005eb0: 853e mv a0,a5 + c0005eb2: 6145 addi sp,sp,48 + c0005eb4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21417 if (*p == '/') { - c0005dc8: 00144703 lbu a4,1(s0) - c0005dcc: 02d71063 bne a4,a3,c0005dec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21410 + c0005eb6: 00144703 lbu a4,1(s0) + c0005eba: 02d71063 bne a4,a3,c0005eda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21418 if (no_line_terminator) - c0005dd0: f5e1 bnez a1,c0005d98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21412 + c0005ebe: f5e1 bnez a1,c0005e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21420 while (*p && *p != '\r' && *p != '\n') - c0005dd2: 0007c703 lbu a4,0(a5) - c0005dd6: 00178f13 addi t5,a5,1 - c0005dda: 00e66763 bltu a2,a4,c0005de8 - c0005dde: 00e85733 srl a4,a6,a4 - c0005de2: 8b05 andi a4,a4,1 - c0005de4: 16071863 bnez a4,c0005f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21390 -{ - c0005de8: 87fa mv a5,t5 - c0005dea: b7e5 j c0005dd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21416 + c0005ec0: 0007c703 lbu a4,0(a5) + c0005ec4: 00178f13 addi t5,a5,1 + c0005ec8: 00e66763 bltu a2,a4,c0005ed6 + c0005ecc: 00e85733 srl a4,a6,a4 + c0005ed0: 8b05 andi a4,a4,1 + c0005ed2: 16071863 bnez a4,c0006042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21398 +{ + c0005ed6: 87fa mv a5,t5 + c0005ed8: b7e5 j c0005ec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21424 if (*p == '*') { - c0005dec: 14670363 beq a4,t1,c0005f32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21461 + c0005eda: 14670363 beq a4,t1,c0006020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21469 return c; - c0005df0: 0004879b sext.w a5,s1 - c0005df4: b7d1 j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21435 (discriminator 1) + c0005ede: 0004879b sext.w a5,s1 + c0005ee2: b7d1 j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21443 (discriminator 1) if (p[0] == 'n' && !lre_js_is_ident_next(p[1])) { - c0005df6: 00244503 lbu a0,2(s0) - c0005dfa: ecfff0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21436 (discriminator 1) + c0005ee4: 00244503 lbu a0,2(s0) + c0005ee8: ecfff0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21444 (discriminator 1) return TOK_IN; - c0005dfe: fb700793 li a5,-73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21435 (discriminator 1) + c0005eec: fb700793 li a5,-73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21443 (discriminator 1) if (p[0] == 'n' && !lre_js_is_ident_next(p[1])) { - c0005e02: fd35 bnez a0,c0005d7e - c0005e04: bf55 j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21438 (discriminator 1) + c0005ef0: fd35 bnez a0,c0005e6c + c0005ef2: bf55 j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 (discriminator 1) if (p[0] == 'm' && p[1] == 'p' && p[2] == 'o' && - c0005e06: 00244703 lbu a4,2(s0) - c0005e0a: 07000793 li a5,112 - c0005e0e: f6f71ee3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21438 (discriminator 2) - c0005e12: 00344703 lbu a4,3(s0) - c0005e16: 06f00793 li a5,111 - c0005e1a: f6f718e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21438 (discriminator 3) - c0005e1e: 00444703 lbu a4,4(s0) - c0005e22: 07200793 li a5,114 - c0005e26: f6f712e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21439 + c0005ef4: 00244703 lbu a4,2(s0) + c0005ef8: 07000793 li a5,112 + c0005efc: f6f71ee3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 (discriminator 2) + c0005f00: 00344703 lbu a4,3(s0) + c0005f04: 06f00793 li a5,111 + c0005f08: f6f718e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 (discriminator 3) + c0005f0c: 00444703 lbu a4,4(s0) + c0005f10: 07200793 li a5,114 + c0005f14: f6f712e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21447 p[3] == 'r' && p[4] == 't' && - c0005e2a: 00544703 lbu a4,5(s0) - c0005e2e: 07400793 li a5,116 - c0005e32: f4f71ce3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21440 (discriminator 1) + c0005f18: 00544703 lbu a4,5(s0) + c0005f1c: 07400793 li a5,116 + c0005f20: f4f71ce3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21448 (discriminator 1) !lre_js_is_ident_next(p[5])) { - c0005e36: 00644503 lbu a0,6(s0) - c0005e3a: e8fff0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21439 (discriminator 1) + c0005f24: 00644503 lbu a0,6(s0) + c0005f28: e8fff0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21447 (discriminator 1) p[3] == 'r' && p[4] == 't' && - c0005e3e: f531 bnez a0,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21441 + c0005f2c: f531 bnez a0,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21449 *pp = p + 5; - c0005e40: 0419 addi s0,s0,6 - c0005e42: 00893023 sd s0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21442 + c0005f2e: 0419 addi s0,s0,6 + c0005f30: 00893023 sd s0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21450 return TOK_IMPORT; - c0005e46: fcd00793 li a5,-51 - c0005e4a: b7bd j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21444 + c0005f34: fcd00793 li a5,-51 + c0005f38: b7bd j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 } else if (c == 'o' && *p == 'f' && !lre_js_is_ident_next(p[1])) { - c0005e4c: 06f00713 li a4,111 - c0005e50: 02e99063 bne s3,a4,c0005e70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21444 (discriminator 1) - c0005e54: 00144703 lbu a4,1(s0) - c0005e58: 06600793 li a5,102 - c0005e5c: f2f717e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21444 (discriminator 2) - c0005e60: 00244503 lbu a0,2(s0) - c0005e64: e65ff0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21445 (discriminator 2) + c0005f3a: 06f00713 li a4,111 + c0005f3e: 02e99063 bne s3,a4,c0005f5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 (discriminator 1) + c0005f42: 00144703 lbu a4,1(s0) + c0005f46: 06600793 li a5,102 + c0005f4a: f2f717e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 (discriminator 2) + c0005f4e: 00244503 lbu a0,2(s0) + c0005f52: e65ff0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21453 (discriminator 2) return TOK_OF; - c0005e68: fd900793 li a5,-39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21454 (discriminator 1) + c0005f56: fd900793 li a5,-39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21462 (discriminator 1) p[5] == 'o' && p[6] == 'n' && !lre_js_is_ident_next(p[7])) { - c0005e6c: fd19 bnez a0,c0005d8a - c0005e6e: b7a9 j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 + c0005f5a: fd19 bnez a0,c0005e78 + c0005f5c: b7a9 j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21454 } else if (c == 'e' && - c0005e70: 06500693 li a3,101 - c0005e74: 04d99a63 bne s3,a3,c0005ec8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21446 (discriminator 1) - c0005e78: 00144683 lbu a3,1(s0) - c0005e7c: 07800793 li a5,120 - c0005e80: f0f695e3 bne a3,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21447 + c0005f5e: 06500693 li a3,101 + c0005f62: 04d99a63 bne s3,a3,c0005fb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21454 (discriminator 1) + c0005f66: 00144683 lbu a3,1(s0) + c0005f6a: 07800793 li a5,120 + c0005f6e: f0f695e3 bne a3,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21455 p[0] == 'x' && p[1] == 'p' && p[2] == 'o' && - c0005e84: 00244683 lbu a3,2(s0) - c0005e88: 07000793 li a5,112 - c0005e8c: eef69fe3 bne a3,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21447 (discriminator 1) - c0005e90: 00344783 lbu a5,3(s0) - c0005e94: eee79be3 bne a5,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21447 (discriminator 2) - c0005e98: 00444703 lbu a4,4(s0) - c0005e9c: 07200793 li a5,114 - c0005ea0: eef715e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21448 + c0005f72: 00244683 lbu a3,2(s0) + c0005f76: 07000793 li a5,112 + c0005f7a: eef69fe3 bne a3,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21455 (discriminator 1) + c0005f7e: 00344783 lbu a5,3(s0) + c0005f82: eee79be3 bne a5,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21455 (discriminator 2) + c0005f86: 00444703 lbu a4,4(s0) + c0005f8a: 07200793 li a5,114 + c0005f8e: eef715e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21456 p[3] == 'r' && p[4] == 't' && - c0005ea4: 00544703 lbu a4,5(s0) - c0005ea8: 07400793 li a5,116 - c0005eac: ecf71fe3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21449 (discriminator 1) + c0005f92: 00544703 lbu a4,5(s0) + c0005f96: 07400793 li a5,116 + c0005f9a: ecf71fe3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21457 (discriminator 1) !lre_js_is_ident_next(p[5])) { - c0005eb0: 00644503 lbu a0,6(s0) - c0005eb4: e15ff0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21448 (discriminator 1) + c0005f9e: 00644503 lbu a0,6(s0) + c0005fa2: e15ff0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21456 (discriminator 1) p[3] == 'r' && p[4] == 't' && - c0005eb8: ec0519e3 bnez a0,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21450 + c0005fa6: ec0519e3 bnez a0,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21458 *pp = p + 5; - c0005ebc: 0419 addi s0,s0,6 - c0005ebe: 00893023 sd s0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21451 + c0005faa: 0419 addi s0,s0,6 + c0005fac: 00893023 sd s0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21459 return TOK_EXPORT; - c0005ec2: fcb00793 li a5,-53 - c0005ec6: bdcd j c0005db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 + c0005fb0: fcb00793 li a5,-53 + c0005fb4: bdcd j c0005ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21460 } else if (c == 'f' && p[0] == 'u' && p[1] == 'n' && - c0005ec8: 06600713 li a4,102 - c0005ecc: eae99fe3 bne s3,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 (discriminator 1) - c0005ed0: 00144683 lbu a3,1(s0) - c0005ed4: 07500713 li a4,117 - c0005ed8: eae699e3 bne a3,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 (discriminator 2) - c0005edc: 00244683 lbu a3,2(s0) - c0005ee0: 06e00713 li a4,110 - c0005ee4: eae693e3 bne a3,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21452 (discriminator 3) - c0005ee8: 00344683 lbu a3,3(s0) - c0005eec: 06300713 li a4,99 - c0005ef0: e8e69de3 bne a3,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21453 + c0005fb6: 06600713 li a4,102 + c0005fba: eae99fe3 bne s3,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21460 (discriminator 1) + c0005fbe: 00144683 lbu a3,1(s0) + c0005fc2: 07500713 li a4,117 + c0005fc6: eae699e3 bne a3,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21460 (discriminator 2) + c0005fca: 00244683 lbu a3,2(s0) + c0005fce: 06e00713 li a4,110 + c0005fd2: eae693e3 bne a3,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21460 (discriminator 3) + c0005fd6: 00344683 lbu a3,3(s0) + c0005fda: 06300713 li a4,99 + c0005fde: e8e69de3 bne a3,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21461 p[2] == 'c' && p[3] == 't' && p[4] == 'i' && - c0005ef4: 00444683 lbu a3,4(s0) - c0005ef8: 07400713 li a4,116 - c0005efc: e8e697e3 bne a3,a4,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21453 (discriminator 1) - c0005f00: 00544703 lbu a4,5(s0) - c0005f04: e8f713e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21453 (discriminator 2) - c0005f08: 00644703 lbu a4,6(s0) - c0005f0c: 06f00793 li a5,111 - c0005f10: e6f71de3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21454 + c0005fe2: 00444683 lbu a3,4(s0) + c0005fe6: 07400713 li a4,116 + c0005fea: e8e697e3 bne a3,a4,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21461 (discriminator 1) + c0005fee: 00544703 lbu a4,5(s0) + c0005ff2: e8f713e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21461 (discriminator 2) + c0005ff6: 00644703 lbu a4,6(s0) + c0005ffa: 06f00793 li a5,111 + c0005ffe: e6f71de3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21462 p[5] == 'o' && p[6] == 'n' && !lre_js_is_ident_next(p[7])) { - c0005f14: 00744703 lbu a4,7(s0) - c0005f18: 06e00793 li a5,110 - c0005f1c: e6f717e3 bne a4,a5,c0005d8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21454 (discriminator 1) - c0005f20: 00844503 lbu a0,8(s0) - c0005f24: da5ff0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21455 (discriminator 1) + c0006002: 00744703 lbu a4,7(s0) + c0006006: 06e00793 li a5,110 + c000600a: e6f717e3 bne a4,a5,c0005e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21462 (discriminator 1) + c000600e: 00844503 lbu a0,8(s0) + c0006012: da5ff0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21463 (discriminator 1) return TOK_FUNCTION; - c0005f28: fc500793 li a5,-59 - c0005f2c: b781 j c0005e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21418 + c0006016: fc500793 li a5,-59 + c000601a: b781 j c0005f5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21426 if ((*p == '\r' || *p == '\n') && no_line_terminator) - c0005f2e: e60595e3 bnez a1,c0005d98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21417 + c000601c: e60595e3 bnez a1,c0005e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21425 while (*++p) { - c0005f32: 8f3e mv t5,a5 - c0005f34: 0017c703 lbu a4,1(a5) - c0005f38: 0785 addi a5,a5,1 - c0005f3a: cf09 beqz a4,c0005f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21418 + c0006020: 8f3e mv t5,a5 + c0006022: 0017c703 lbu a4,1(a5) + c0006026: 0785 addi a5,a5,1 + c0006028: cf09 beqz a4,c0006042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21426 if ((*p == '\r' || *p == '\n') && no_line_terminator) - c0005f3c: fec709e3 beq a4,a2,c0005f2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21418 (discriminator 2) - c0005f40: fea707e3 beq a4,a0,c0005f2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21420 + c000602a: fec709e3 beq a4,a2,c000601c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21426 (discriminator 2) + c000602e: fea707e3 beq a4,a0,c000601c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21428 if (*p == '*' && p[1] == '/') { - c0005f44: fe6717e3 bne a4,t1,c0005f32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21420 (discriminator 1) - c0005f48: 0017c703 lbu a4,1(a5) - c0005f4c: fed713e3 bne a4,a3,c0005f32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21421 + c0006032: fe6717e3 bne a4,t1,c0006020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21428 (discriminator 1) + c0006036: 0017c703 lbu a4,1(a5) + c000603a: fed713e3 bne a4,a3,c0006020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21429 p += 2; - c0005f50: 003f0793 addi a5,t5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21390 + c000603e: 003f0793 addi a5,t5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21398 { - c0005f54: 843e mv s0,a5 - c0005f56: b3e5 j c0005d3e + c0006042: 843e mv s0,a5 + c0006044: b3e5 j c0005e2c -00000000c0005f58 : +00000000c0006046 : peek_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21474 { - c0005f58: 1101 addi sp,sp,-32 - c0005f5a: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21467 + c0006046: 1101 addi sp,sp,-32 + c0006048: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21475 const uint8_t *p = s->buf_ptr; - c0005f5c: 6d3c ld a5,88(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21468 + c000604a: 6d3c ld a5,88(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21476 return simple_next_token(&p, no_line_terminator); - c0005f5e: 0028 addi a0,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21467 + c000604c: 0028 addi a0,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21475 const uint8_t *p = s->buf_ptr; - c0005f60: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21468 + c000604e: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21476 return simple_next_token(&p, no_line_terminator); - c0005f62: db3ff0ef jal ra,c0005d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21469 + c0006050: db3ff0ef jal ra,c0005e02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21477 } - c0005f66: 60e2 ld ra,24(sp) - c0005f68: 6105 addi sp,sp,32 - c0005f6a: 8082 ret + c0006054: 60e2 ld ra,24(sp) + c0006056: 6105 addi sp,sp,32 + c0006058: 8082 ret -00000000c0005f6c : +00000000c000605a : JS_WriteString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34933 -{ - c0005f6c: 7179 addi sp,sp,-48 - c0005f6e: f022 sd s0,32(sp) - c0005f70: ec26 sd s1,24(sp) - c0005f72: e84a sd s2,16(sp) - c0005f74: e44e sd s3,8(sp) - c0005f76: e052 sd s4,0(sp) - c0005f78: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34941 +{ + c000605a: 7179 addi sp,sp,-48 + c000605c: f022 sd s0,32(sp) + c000605e: ec26 sd s1,24(sp) + c0006060: e84a sd s2,16(sp) + c0006062: e44e sd s3,8(sp) + c0006064: e052 sd s4,0(sp) + c0006066: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34943 bc_put_leb128(s, ((uint32_t)p->len << 1) | p->is_wide_char); - c0005f7a: 41dc lw a5,4(a1) - c0005f7c: 800004b7 lui s1,0x80000 - c0005f80: fff4c493 not s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34933 + c0006068: 41dc lw a5,4(a1) + c000606a: 800004b7 lui s1,0x80000 + c000606e: fff4c493 not s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34941 { - c0005f84: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34935 + c0006072: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34943 bc_put_leb128(s, ((uint32_t)p->len << 1) | p->is_wide_char); - c0005f86: 0097f5b3 and a1,a5,s1 - c0005f8a: 0015959b slliw a1,a1,0x1 - c0005f8e: 01f7d79b srliw a5,a5,0x1f - c0005f92: 8ddd or a1,a1,a5 + c0006074: 0097f5b3 and a1,a5,s1 + c0006078: 0015959b slliw a1,a1,0x1 + c000607c: 01f7d79b srliw a5,a5,0x1f + c0006080: 8ddd or a1,a1,a5 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0005f94: 00850a13 addi s4,a0,8 # ffffffffffffe008 <_ebss+0xffffffff3fefcee2> + c0006082: 00850a13 addi s4,a0,8 # ffffffffffffe008 <_ebss+0xffffffff3fefcee2> JS_WriteString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34933 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34941 { - c0005f98: 892a mv s2,a0 + c0006086: 892a mv s2,a0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0005f9a: 2581 sext.w a1,a1 - c0005f9c: 8552 mv a0,s4 - c0005f9e: 886ff0ef jal ra,c0005024 + c0006088: 2581 sext.w a1,a1 + c000608a: 8552 mv a0,s4 + c000608c: f99fe0ef jal ra,c0005024 JS_WriteString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34944 if (p->is_wide_char) { - c0005fa2: 4050 lw a2,4(s0) - c0005fa4: 4981 li s3,0 - c0005fa6: 0006079b sext.w a5,a2 - c0005faa: 0407c663 bltz a5,c0005ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34940 + c0006090: 4050 lw a2,4(s0) + c0006092: 4981 li s3,0 + c0006094: 0006079b sext.w a5,a2 + c0006098: 0407c663 bltz a5,c00060e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34948 dbuf_put(&s->dbuf, p->u.str8, p->len); - c0005fae: 01040593 addi a1,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34942 -} - c0005fb2: 7402 ld s0,32(sp) - c0005fb4: 70a2 ld ra,40(sp) - c0005fb6: 6942 ld s2,16(sp) - c0005fb8: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34940 + c000609c: 01040593 addi a1,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34950 +} + c00060a0: 7402 ld s0,32(sp) + c00060a2: 70a2 ld ra,40(sp) + c00060a4: 6942 ld s2,16(sp) + c00060a6: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34948 dbuf_put(&s->dbuf, p->u.str8, p->len); - c0005fba: 8e65 and a2,a2,s1 - c0005fbc: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34942 + c00060a8: 8e65 and a2,a2,s1 + c00060aa: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34950 } - c0005fbe: 64e2 ld s1,24(sp) - c0005fc0: 6a02 ld s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34940 + c00060ac: 64e2 ld s1,24(sp) + c00060ae: 6a02 ld s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34948 dbuf_put(&s->dbuf, p->u.str8, p->len); - c0005fc2: 1602 slli a2,a2,0x20 - c0005fc4: 9201 srli a2,a2,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34942 + c00060b0: 1602 slli a2,a2,0x20 + c00060b2: 9201 srli a2,a2,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34950 } - c0005fc6: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34940 + c00060b4: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34948 dbuf_put(&s->dbuf, p->u.str8, p->len); - c0005fc8: 4e94106f j c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34938 + c00060b6: 5cb4106f j c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34946 bc_put_u16(s, p->u.str16[i]); - c0005fcc: 00898793 addi a5,s3,8 - c0005fd0: 0786 slli a5,a5,0x1 - c0005fd2: 97a2 add a5,a5,s0 - c0005fd4: 0007d583 lhu a1,0(a5) + c00060ba: 00898793 addi a5,s3,8 + c00060be: 0786 slli a5,a5,0x1 + c00060c0: 97a2 add a5,a5,s0 + c00060c2: 0007d583 lhu a1,0(a5) bc_put_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34744 if (s->byte_swap) - c0005fd8: 03894783 lbu a5,56(s2) - c0005fdc: cb89 beqz a5,c0005fee - c0005fde: 0085971b slliw a4,a1,0x8 - c0005fe2: 0085d793 srli a5,a1,0x8 - c0005fe6: 8fd9 or a5,a5,a4 - c0005fe8: 03079593 slli a1,a5,0x30 - c0005fec: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34738 + c00060c6: 03894783 lbu a5,56(s2) + c00060ca: cb89 beqz a5,c00060dc + c00060cc: 0085971b slliw a4,a1,0x8 + c00060d0: 0085d793 srli a5,a1,0x8 + c00060d4: 8fd9 or a5,a5,a4 + c00060d6: 03079593 slli a1,a5,0x30 + c00060da: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34746 dbuf_put_u16(&s->dbuf, v); - c0005fee: 8552 mv a0,s4 - c0005ff0: b02ff0ef jal ra,c00052f2 + c00060dc: 8552 mv a0,s4 + c00060de: b02ff0ef jal ra,c00053e0 JS_WriteString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34937 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34945 for(i = 0; i < p->len; i++) - c0005ff4: 2985 addiw s3,s3,1 - c0005ff6: 405c lw a5,4(s0) - c0005ff8: 8fe5 and a5,a5,s1 - c0005ffa: fcf9c9e3 blt s3,a5,c0005fcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34942 -} - c0005ffe: 70a2 ld ra,40(sp) - c0006000: 7402 ld s0,32(sp) - c0006002: 64e2 ld s1,24(sp) - c0006004: 6942 ld s2,16(sp) - c0006006: 69a2 ld s3,8(sp) - c0006008: 6a02 ld s4,0(sp) - c000600a: 6145 addi sp,sp,48 - c000600c: 8082 ret - -00000000c000600e : + c00060e2: 2985 addiw s3,s3,1 + c00060e4: 405c lw a5,4(s0) + c00060e6: 8fe5 and a5,a5,s1 + c00060e8: fcf9c9e3 blt s3,a5,c00060ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34950 +} + c00060ec: 70a2 ld ra,40(sp) + c00060ee: 7402 ld s0,32(sp) + c00060f0: 64e2 ld s1,24(sp) + c00060f2: 6942 ld s2,16(sp) + c00060f4: 69a2 ld s3,8(sp) + c00060f6: 6a02 ld s4,0(sp) + c00060f8: 6145 addi sp,sp,48 + c00060fa: 8082 ret + +00000000c00060fc : set_eval_ret_undefined(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26476 if (s->cur_func->eval_ret_idx >= 0) { - c000600e: 753c ld a5,104(a0) - c0006010: 0c87a783 lw a5,200(a5) - c0006014: 0207c763 bltz a5,c0006042 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26467 + c00060fc: 753c ld a5,104(a0) + c00060fe: 0c87a783 lw a5,200(a5) + c0006102: 0207c763 bltz a5,c0006130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26475 { - c0006018: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26469 + c0006106: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26477 emit_op(s, OP_undefined); - c000601a: 4599 li a1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26467 + c0006108: 4599 li a1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26475 { - c000601c: e406 sd ra,8(sp) - c000601e: e022 sd s0,0(sp) - c0006020: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26469 + c000610a: e406 sd ra,8(sp) + c000610c: e022 sd s0,0(sp) + c000610e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26477 emit_op(s, OP_undefined); - c0006022: c1aff0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26470 + c0006110: c1aff0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26478 emit_op(s, OP_put_loc); - c0006026: 8522 mv a0,s0 - c0006028: 05900593 li a1,89 - c000602c: c10ff0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26471 + c0006114: 8522 mv a0,s0 + c0006116: 05900593 li a1,89 + c000611a: c10ff0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26479 emit_u16(s, s->cur_func->eval_ret_idx); - c0006030: 743c ld a5,104(s0) - c0006032: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26473 + c000611e: 743c ld a5,104(s0) + c0006120: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26481 } - c0006034: 6402 ld s0,0(sp) - c0006036: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26471 + c0006122: 6402 ld s0,0(sp) + c0006124: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26479 emit_u16(s, s->cur_func->eval_ret_idx); - c0006038: 0c87d583 lhu a1,200(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26473 + c0006126: 0c87d583 lhu a1,200(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26481 } - c000603c: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26471 + c000612a: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26479 emit_u16(s, s->cur_func->eval_ret_idx); - c000603e: accff06f j c000530a - c0006042: 8082 ret + c000612c: accff06f j c00053f8 + c0006130: 8082 ret -00000000c0006044 : +00000000c0006132 : js_cmp_doubles(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54225 if (isnan(x)) return isnan(y) ? 0 : +1; - c0006044: a2a52653 feq.d a2,fa0,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54216 + c0006132: a2a52653 feq.d a2,fa0,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54224 { - c0006048: e20507d3 fmv.x.d a5,fa0 - c000604c: e2058753 fmv.x.d a4,fa1 - c0006050: a2b5a6d3 feq.d a3,fa1,fa1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54217 + c0006136: e20507d3 fmv.x.d a5,fa0 + c000613a: e2058753 fmv.x.d a4,fa1 + c000613e: a2b5a6d3 feq.d a3,fa1,fa1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54225 if (isnan(x)) return isnan(y) ? 0 : +1; - c0006054: e219 bnez a2,c000605a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54217 (discriminator 1) - c0006056: 8536 mv a0,a3 - c0006058: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54218 + c0006142: e219 bnez a2,c0006148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54225 (discriminator 1) + c0006144: 8536 mv a0,a3 + c0006146: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54226 if (isnan(y)) return -1; - c000605a: 557d li a0,-1 - c000605c: c685 beqz a3,c0006084 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54219 + c0006148: 557d li a0,-1 + c000614a: c685 beqz a3,c0006172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54227 if (x < y) return -1; - c000605e: a2b516d3 flt.d a3,fa0,fa1 - c0006062: e28d bnez a3,c0006084 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54220 + c000614c: a2b516d3 flt.d a3,fa0,fa1 + c0006150: e28d bnez a3,c0006172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54228 if (x > y) return 1; - c0006064: a2a596d3 flt.d a3,fa1,fa0 - c0006068: 4505 li a0,1 - c000606a: ee89 bnez a3,c0006084 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54221 + c0006152: a2a596d3 flt.d a3,fa1,fa0 + c0006156: 4505 li a0,1 + c0006158: ee89 bnez a3,c0006172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54229 if (x != 0) return 0; - c000606c: f20007d3 fmv.d.x fa5,zero - c0006070: 4501 li a0,0 - c0006072: a2f526d3 feq.d a3,fa0,fa5 - c0006076: c699 beqz a3,c0006084 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54222 + c000615a: f20007d3 fmv.d.x fa5,zero + c000615e: 4501 li a0,0 + c0006160: a2f526d3 feq.d a3,fa0,fa5 + c0006164: c699 beqz a3,c0006172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54230 if (signbit(x)) return signbit(y) ? 0 : -1; - c0006078: 00072713 slti a4,a4,0 - c000607c: 0007a793 slti a5,a5,0 - c0006080: 40f70533 sub a0,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54224 + c0006166: 00072713 slti a4,a4,0 + c000616a: 0007a793 slti a5,a5,0 + c000616e: 40f70533 sub a0,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54232 } - c0006084: 8082 ret + c0006172: 8082 ret -00000000c0006086 : +00000000c0006174 : js_TA_cmp_float64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54271 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54279 return js_cmp_doubles(*(const double *)a, *(const double *)b); - c0006086: 218c fld fa1,0(a1) - c0006088: 2108 fld fa0,0(a0) - c000608a: bf6d j c0006044 + c0006174: 218c fld fa1,0(a1) + c0006176: 2108 fld fa0,0(a0) + c0006178: bf6d j c0006132 -00000000c000608c : +00000000c000617a : js_TA_cmp_float32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54267 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54275 return js_cmp_doubles(*(const float *)a, *(const float *)b); - c000608c: 0005a587 flw fa1,0(a1) - c0006090: 00052507 flw fa0,0(a0) - c0006094: 420585d3 fcvt.d.s fa1,fa1 - c0006098: 42050553 fcvt.d.s fa0,fa0 - c000609c: b765 j c0006044 + c000617a: 0005a587 flw fa1,0(a1) + c000617e: 00052507 flw fa0,0(a0) + c0006182: 420585d3 fcvt.d.s fa1,fa1 + c0006186: 42050553 fcvt.d.s fa0,fa0 + c000618a: b765 j c0006132 -00000000c000609e : +00000000c000618c : string_get_month(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49945 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49953 static int string_get_month(JSString *sp, int *pp, int64_t *pval) { - c000609e: 7159 addi sp,sp,-112 - c00060a0: eca6 sd s1,88(sp) - c00060a2: e0d2 sd s4,64(sp) - c00060a4: fc56 sd s5,56(sp) - c00060a6: f85a sd s6,48(sp) - c00060a8: 8a2a mv s4,a0 - c00060aa: 84ae mv s1,a1 - c00060ac: f486 sd ra,104(sp) - c00060ae: f0a2 sd s0,96(sp) - c00060b0: e8ca sd s2,80(sp) - c00060b2: e4ce sd s3,72(sp) - c00060b4: f45e sd s7,40(sp) - c00060b6: f062 sd s8,32(sp) - c00060b8: ec66 sd s9,24(sp) - c00060ba: e86a sd s10,16(sp) - c00060bc: e46e sd s11,8(sp) - c00060be: 8ab2 mv s5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49948 + c000618c: 7159 addi sp,sp,-112 + c000618e: eca6 sd s1,88(sp) + c0006190: e0d2 sd s4,64(sp) + c0006192: fc56 sd s5,56(sp) + c0006194: f85a sd s6,48(sp) + c0006196: 8a2a mv s4,a0 + c0006198: 84ae mv s1,a1 + c000619a: f486 sd ra,104(sp) + c000619c: f0a2 sd s0,96(sp) + c000619e: e8ca sd s2,80(sp) + c00061a0: e4ce sd s3,72(sp) + c00061a2: f45e sd s7,40(sp) + c00061a4: f062 sd s8,32(sp) + c00061a6: ec66 sd s9,24(sp) + c00061a8: e86a sd s10,16(sp) + c00061aa: e46e sd s11,8(sp) + c00061ac: 8ab2 mv s5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49956 string_skip_spaces(sp, pp); - c00060c0: 82ffe0ef jal ra,c00048ee + c00061ae: f40fe0ef jal ra,c00048ee find_abbrev(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49940 if (p + 3 <= sp->len) { - c00060c4: 004a2783 lw a5,4(s4) + c00061b2: 004a2783 lw a5,4(s4) string_get_month(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49949 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49957 n = find_abbrev(sp, *pp, month_names, 12); - c00060c8: 0004ab03 lw s6,0(s1) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c00061b6: 0004ab03 lw s6,0(s1) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> find_abbrev(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49940 if (p + 3 <= sp->len) { - c00060cc: 1786 slli a5,a5,0x21 - c00060ce: 003b071b addiw a4,s6,3 - c00060d2: 9385 srli a5,a5,0x21 - c00060d4: 02e7ce63 blt a5,a4,c0006110 - c00060d8: 4901 li s2,0 - c00060da: 4c0d li s8,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49935 + c00061ba: 1786 slli a5,a5,0x21 + c00061bc: 003b071b addiw a4,s6,3 + c00061c0: 9385 srli a5,a5,0x21 + c00061c2: 02e7ce63 blt a5,a4,c00061fe + c00061c6: 4901 li s2,0 + c00061c8: 4c0d li s8,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49943 if (string_get(sp, p + i) != month_names[n * 3 + i]) - c00060dc: 00061c97 auipc s9,0x61 - c00060e0: 97cc8c93 addi s9,s9,-1668 # c0066a58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49934 + c00061ca: 00061c97 auipc s9,0x61 + c00061ce: aeec8c93 addi s9,s9,-1298 # c0066cb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49942 for (i = 0; i < 3; i++) { - c00060e4: 4d0d li s10,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49933 + c00061d2: 4d0d li s10,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49941 for (n = 0; n < count; n++) { - c00060e6: 4db1 li s11,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49934 + c00061d4: 4db1 li s11,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49942 for (i = 0; i < 3; i++) { - c00060e8: 032c0bbb mulw s7,s8,s2 - c00060ec: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49935 + c00061d6: 032c0bbb mulw s7,s8,s2 + c00061da: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49943 if (string_get(sp, p + i) != month_names[n * 3 + i]) - c00060ee: 0009841b sext.w s0,s3 - c00060f2: 013b05bb addw a1,s6,s3 - c00060f6: 8552 mv a0,s4 - c00060f8: 0174043b addw s0,s0,s7 - c00060fc: 86afe0ef jal ra,c0004166 - c0006100: 9466 add s0,s0,s9 - c0006102: 00044783 lbu a5,0(s0) - c0006106: 02a78563 beq a5,a0,c0006130 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49933 + c00061dc: 0009841b sext.w s0,s3 + c00061e0: 013b05bb addw a1,s6,s3 + c00061e4: 8552 mv a0,s4 + c00061e6: 0174043b addw s0,s0,s7 + c00061ea: f7dfd0ef jal ra,c0004166 + c00061ee: 9466 add s0,s0,s9 + c00061f0: 00044783 lbu a5,0(s0) + c00061f4: 02a78563 beq a5,a0,c000621e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49941 for (n = 0; n < count; n++) { - c000610a: 2905 addiw s2,s2,1 - c000610c: fdb91ee3 bne s2,s11,c00060e8 + c00061f8: 2905 addiw s2,s2,1 + c00061fa: fdb91ee3 bne s2,s11,c00061d6 string_get_month(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49951 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49959 return -1; - c0006110: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49956 -} - c0006112: 70a6 ld ra,104(sp) - c0006114: 7406 ld s0,96(sp) - c0006116: 64e6 ld s1,88(sp) - c0006118: 6946 ld s2,80(sp) - c000611a: 69a6 ld s3,72(sp) - c000611c: 6a06 ld s4,64(sp) - c000611e: 7ae2 ld s5,56(sp) - c0006120: 7b42 ld s6,48(sp) - c0006122: 7ba2 ld s7,40(sp) - c0006124: 7c02 ld s8,32(sp) - c0006126: 6ce2 ld s9,24(sp) - c0006128: 6d42 ld s10,16(sp) - c000612a: 6da2 ld s11,8(sp) - c000612c: 6165 addi sp,sp,112 - c000612e: 8082 ret + c00061fe: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49964 +} + c0006200: 70a6 ld ra,104(sp) + c0006202: 7406 ld s0,96(sp) + c0006204: 64e6 ld s1,88(sp) + c0006206: 6946 ld s2,80(sp) + c0006208: 69a6 ld s3,72(sp) + c000620a: 6a06 ld s4,64(sp) + c000620c: 7ae2 ld s5,56(sp) + c000620e: 7b42 ld s6,48(sp) + c0006210: 7ba2 ld s7,40(sp) + c0006212: 7c02 ld s8,32(sp) + c0006214: 6ce2 ld s9,24(sp) + c0006216: 6d42 ld s10,16(sp) + c0006218: 6da2 ld s11,8(sp) + c000621a: 6165 addi sp,sp,112 + c000621c: 8082 ret find_abbrev(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49942 for (i = 0; i < 3; i++) { - c0006130: 2985 addiw s3,s3,1 - c0006132: fba99ee3 bne s3,s10,c00060ee + c000621e: 2985 addiw s3,s3,1 + c0006220: fba99ee3 bne s3,s10,c00061dc string_get_month(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49953 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49961 *pval = n; - c0006136: 012ab023 sd s2,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49954 + c0006224: 012ab023 sd s2,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49962 *pp += 3; - c000613a: 409c lw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49955 + c0006228: 409c lw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49963 return 0; - c000613c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49954 + c000622a: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49962 *pp += 3; - c000613e: 278d addiw a5,a5,3 - c0006140: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49955 + c000622c: 278d addiw a5,a5,3 + c000622e: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49963 return 0; - c0006142: bfc1 j c0006112 + c0006230: bfc1 j c0006200 -00000000c0006144 : +00000000c0006232 : string_get_fixed_width_digits(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49885 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49893 static int string_get_fixed_width_digits(JSString *sp, int *pp, int n, int64_t *pval) { - c0006144: 7139 addi sp,sp,-64 - c0006146: fc06 sd ra,56(sp) - c0006148: f822 sd s0,48(sp) - c000614a: f426 sd s1,40(sp) - c000614c: f04a sd s2,32(sp) - c000614e: ec4e sd s3,24(sp) - c0006150: e852 sd s4,16(sp) - c0006152: e456 sd s5,8(sp) - c0006154: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49890 + c0006232: 7139 addi sp,sp,-64 + c0006234: fc06 sd ra,56(sp) + c0006236: f822 sd s0,48(sp) + c0006238: f426 sd s1,40(sp) + c000623a: f04a sd s2,32(sp) + c000623c: ec4e sd s3,24(sp) + c000623e: e852 sd s4,16(sp) + c0006240: e456 sd s5,8(sp) + c0006242: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49898 if (p >= sp->len) - c0006156: 00452903 lw s2,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49887 + c0006244: 00452903 lw s2,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49895 int i, c, p = *pp; - c000615a: 4184 lw s1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49890 + c0006248: 4184 lw s1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49898 if (p >= sp->len) - c000615c: 1906 slli s2,s2,0x21 - c000615e: 02195913 srli s2,s2,0x21 - c0006162: 0724d163 bge s1,s2,c00061c4 - c0006166: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49892 + c000624a: 1906 slli s2,s2,0x21 + c000624c: 02195913 srli s2,s2,0x21 + c0006250: 0724d163 bge s1,s2,c00062b2 + c0006254: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49900 c = string_get(sp, p); - c0006168: 85a6 mv a1,s1 - c000616a: 8aaa mv s5,a0 - c000616c: 8a32 mv s4,a2 - c000616e: ff9fd0ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49893 + c0006256: 85a6 mv a1,s1 + c0006258: 8aaa mv s5,a0 + c000625a: 8a32 mv s4,a2 + c000625c: f0bfd0ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49901 if (!(c >= '0' && c <= '9')) - c0006172: fd05041b addiw s0,a0,-48 - c0006176: 4b25 li s6,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49891 + c0006260: fd05041b addiw s0,a0,-48 + c0006264: 4b25 li s6,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49899 return -1; - c0006178: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49893 + c0006266: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49901 if (!(c >= '0' && c <= '9')) - c000617a: 028b6b63 bltu s6,s0,c00061b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49896 + c0006268: 028b6b63 bltu s6,s0,c000629e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49904 p++; - c000617e: 0014859b addiw a1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49890 + c000626c: 0014859b addiw a1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49898 if (p >= sp->len) - c0006182: 0325d763 bge a1,s2,c00061b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49892 + c0006270: 0325d763 bge a1,s2,c000629e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49900 c = string_get(sp, p); - c0006186: 8556 mv a0,s5 - c0006188: fdffd0ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49893 + c0006274: 8556 mv a0,s5 + c0006276: ef1fd0ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49901 if (!(c >= '0' && c <= '9')) - c000618c: fd05071b addiw a4,a0,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49892 + c000627a: fd05071b addiw a4,a0,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49900 c = string_get(sp, p); - c0006190: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49891 + c000627e: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49899 return -1; - c0006192: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49893 + c0006280: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49901 if (!(c >= '0' && c <= '9')) - c0006194: 00eb6e63 bltu s6,a4,c00061b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49895 + c0006282: 00eb6e63 bltu s6,a4,c000629e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49903 v = v * 10 + c - '0'; - c0006198: 4529 li a0,10 - c000619a: 02a40433 mul s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49896 + c0006286: 4529 li a0,10 + c0006288: 02a40433 mul s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49904 p++; - c000619e: 2489 addiw s1,s1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49900 + c000628c: 2489 addiw s1,s1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49908 return 0; - c00061a0: 4501 li a0,0 - c00061a2: fd040413 addi s0,s0,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49895 + c000628e: 4501 li a0,0 + c0006290: fd040413 addi s0,s0,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49903 v = v * 10 + c - '0'; - c00061a6: 943e add s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49898 + c0006294: 943e add s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49906 *pval = v; - c00061a8: 008a3023 sd s0,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49899 + c0006296: 008a3023 sd s0,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49907 *pp = p; - c00061ac: 0099a023 sw s1,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49901 -} - c00061b0: 70e2 ld ra,56(sp) - c00061b2: 7442 ld s0,48(sp) - c00061b4: 74a2 ld s1,40(sp) - c00061b6: 7902 ld s2,32(sp) - c00061b8: 69e2 ld s3,24(sp) - c00061ba: 6a42 ld s4,16(sp) - c00061bc: 6aa2 ld s5,8(sp) - c00061be: 6b02 ld s6,0(sp) - c00061c0: 6121 addi sp,sp,64 - c00061c2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49891 + c000629a: 0099a023 sw s1,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49909 +} + c000629e: 70e2 ld ra,56(sp) + c00062a0: 7442 ld s0,48(sp) + c00062a2: 74a2 ld s1,40(sp) + c00062a4: 7902 ld s2,32(sp) + c00062a6: 69e2 ld s3,24(sp) + c00062a8: 6a42 ld s4,16(sp) + c00062aa: 6aa2 ld s5,8(sp) + c00062ac: 6b02 ld s6,0(sp) + c00062ae: 6121 addi sp,sp,64 + c00062b0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49899 return -1; - c00061c4: 557d li a0,-1 - c00061c6: b7ed j c00061b0 + c00062b2: 557d li a0,-1 + c00062b4: b7ed j c000629e -00000000c00061c8 : +00000000c00062b6 : delete_weak_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47151 p = JS_VALUE_GET_OBJ(mr->key); - c00061c8: 7d1c ld a5,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47144 + c00062b6: 7d1c ld a5,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47152 pmr = &p->first_weak_ref; - c00061ca: 02878713 addi a4,a5,40 - c00061ce: 779c ld a5,40(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47147 + c00062b8: 02878713 addi a4,a5,40 + c00062bc: 779c ld a5,40(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47155 assert(mr1 != NULL); - c00061d0: ef89 bnez a5,c00061ea - c00061d2: 65b1 lui a1,0xc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47138 + c00062be: ef89 bnez a5,c00062d8 + c00062c0: 65b1 lui a1,0xc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47146 static void delete_weak_ref(JSRuntime *rt, JSMapRecord *mr) - c00061d4: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47147 + c00062c2: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47155 assert(mr1 != NULL); - c00061d6: 4601 li a2,0 - c00061d8: 82b58593 addi a1,a1,-2005 # b82b <__clzdi2-0xbfff47d5> - c00061dc: 00057517 auipc a0,0x57 - c00061e0: 89c50513 addi a0,a0,-1892 # c005ca78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47138 + c00062c4: 4601 li a2,0 + c00062c6: 83358593 addi a1,a1,-1997 # b833 <__clzdi2-0xbfff47cd> + c00062ca: 00057517 auipc a0,0x57 + c00062ce: 97e50513 addi a0,a0,-1666 # c005cc48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47146 static void delete_weak_ref(JSRuntime *rt, JSMapRecord *mr) - c00061e4: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47147 + c00062d2: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47155 assert(mr1 != NULL); - c00061e6: 0334d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47150 + c00062d4: 1154d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47158 pmr = &mr1->next_weak_ref; - c00061ea: 6b94 ld a3,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47148 + c00062d8: 6b94 ld a3,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47156 if (mr1 == mr) - c00061ec: 00f50663 beq a0,a5,c00061f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47150 + c00062da: 00f50663 beq a0,a5,c00062e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47158 pmr = &mr1->next_weak_ref; - c00061f0: 01078713 addi a4,a5,16 - c00061f4: 87b6 mv a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47146 + c00062de: 01078713 addi a4,a5,16 + c00062e2: 87b6 mv a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47154 mr1 = *pmr; - c00061f6: bfe9 j c00061d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47152 + c00062e4: bfe9 j c00062be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47160 *pmr = mr1->next_weak_ref; - c00061f8: e314 sd a3,0(a4) - c00061fa: 8082 ret + c00062e6: e314 sd a3,0(a4) + c00062e8: 8082 ret -00000000c00061fc : +00000000c00062ea : optimize_scope_make_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30092 static int optimize_scope_make_ref(JSContext *ctx, JSFunctionDef *s, - c00061fc: 7139 addi sp,sp,-64 - c00061fe: f822 sd s0,48(sp) - c0006200: f426 sd s1,40(sp) - c0006202: f04a sd s2,32(sp) - c0006204: ec4e sd s3,24(sp) - c0006206: e852 sd s4,16(sp) - c0006208: e05a sd s6,0(sp) - c000620a: 893e mv s2,a5 - c000620c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30099 + c00062ea: 7139 addi sp,sp,-64 + c00062ec: f822 sd s0,48(sp) + c00062ee: f426 sd s1,40(sp) + c00062f0: f04a sd s2,32(sp) + c00062f2: ec4e sd s3,24(sp) + c00062f4: e852 sd s4,16(sp) + c00062f6: e05a sd s6,0(sp) + c00062f8: 893e mv s2,a5 + c00062fa: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30107 if (bc_buf[pos_next] == OP_get_ref_value) { - c000620e: 00d587b3 add a5,a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30084 + c00062fc: 00d587b3 add a5,a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30092 static int optimize_scope_make_ref(JSContext *ctx, JSFunctionDef *s, - c0006212: e456 sd s5,8(sp) - c0006214: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30099 + c0006300: e456 sd s5,8(sp) + c0006302: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30107 if (bc_buf[pos_next] == OP_get_ref_value) { - c0006216: 0007c703 lbu a4,0(a5) - c000621a: 03091b13 slli s6,s2,0x30 - c000621e: 03c00793 li a5,60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30084 + c0006304: 0007c703 lbu a4,0(a5) + c0006308: 03091b13 slli s6,s2,0x30 + c000630c: 03c00793 li a5,60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30092 static int optimize_scope_make_ref(JSContext *ctx, JSFunctionDef *s, - c0006222: 842e mv s0,a1 - c0006224: 8a32 mv s4,a2 - c0006226: 84b6 mv s1,a3 - c0006228: 030b5b13 srli s6,s6,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30099 + c0006310: 842e mv s0,a1 + c0006312: 8a32 mv s4,a2 + c0006314: 84b6 mv s1,a3 + c0006316: 030b5b13 srli s6,s6,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30107 if (bc_buf[pos_next] == OP_get_ref_value) { - c000622c: 00f71c63 bne a4,a5,c0006244 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30100 + c000631a: 00f71c63 bne a4,a5,c0006332 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30108 dbuf_putc(bc, get_op); - c0006230: 0ff9f593 zext.b a1,s3 - c0006234: 8aaa mv s5,a0 - c0006236: 30d410ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30101 + c000631e: 0ff9f593 zext.b a1,s3 + c0006322: 8aaa mv s5,a0 + c0006324: 3ef410ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30109 dbuf_put_u16(bc, var_idx); - c000623a: 85da mv a1,s6 - c000623c: 8556 mv a0,s5 - c000623e: 8b4ff0ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30102 + c0006328: 85da mv a1,s6 + c000632a: 8556 mv a0,s5 + c000632c: 8b4ff0ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30110 pos_next++; - c0006242: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30107 + c0006330: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30115 label_pos = ls->pos; - c0006244: 004a2803 lw a6,4(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30109 + c0006332: 004a2803 lw a6,4(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30117 assert(bc_buf[pos] == OP_label); - c0006248: 0b600693 li a3,182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30108 + c0006336: 0b600693 li a3,182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30116 pos = label_pos - 5; - c000624c: ffb8079b addiw a5,a6,-5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30109 - assert(bc_buf[pos] == OP_label); - c0006250: 00f40733 add a4,s0,a5 - c0006254: 00074603 lbu a2,0(a4) - c0006258: 00d60c63 beq a2,a3,c0006270 - c000625c: 659d lui a1,0x7 - c000625e: 4601 li a2,0 - c0006260: 59d58593 addi a1,a1,1437 # 759d <__clzdi2-0xbfff8a63> - c0006264: 00057517 auipc a0,0x57 - c0006268: 81450513 addi a0,a0,-2028 # c005ca78 - c000626c: 7ac4d0ef jal ra,c0053a18 <__assert> + c000633a: ffb8079b addiw a5,a6,-5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30117 + assert(bc_buf[pos] == OP_label); + c000633e: 00f40733 add a4,s0,a5 + c0006342: 00074603 lbu a2,0(a4) + c0006346: 00d60c63 beq a2,a3,c000635e + c000634a: 659d lui a1,0x7 + c000634c: 4601 li a2,0 + c000634e: 5a558593 addi a1,a1,1445 # 75a5 <__clzdi2-0xbfff8a5b> + c0006352: 00057517 auipc a0,0x57 + c0006356: 8f650513 addi a0,a0,-1802 # c005cc48 + c000635a: 08f4d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30125 if (bc_buf[label_pos] == OP_insert3) - c0006270: 01040633 add a2,s0,a6 - c0006274: 00064583 lbu a1,0(a2) # ffffffffc0000000 <_ebss+0xfffffffeffefeeda> - c0006278: 4659 li a2,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30116 + c000635e: 01040633 add a2,s0,a6 + c0006362: 00064583 lbu a1,0(a2) # ffffffffc0000000 <_ebss+0xfffffffeffefeeda> + c0006366: 4659 li a2,22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30124 end_pos = label_pos + 2; - c000627a: 0028069b addiw a3,a6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30117 + c0006368: 0028069b addiw a3,a6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30125 if (bc_buf[label_pos] == OP_insert3) - c000627e: 00c59763 bne a1,a2,c000628c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30118 + c000636c: 00c59763 bne a1,a2,c000637a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30126 bc_buf[pos++] = OP_dup; - c0006282: 4645 li a2,17 - c0006284: ffc8079b addiw a5,a6,-4 - c0006288: 00c70023 sb a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30119 + c0006370: 4645 li a2,17 + c0006372: ffc8079b addiw a5,a6,-4 + c0006376: 00c70023 sb a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30127 bc_buf[pos] = get_op + 1; - c000628c: 00f40733 add a4,s0,a5 - c0006290: 2985 addiw s3,s3,1 + c000637a: 00f40733 add a4,s0,a5 + c000637e: 2985 addiw s3,s3,1 put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c0006292: 00895913 srli s2,s2,0x8 + c0006380: 00895913 srli s2,s2,0x8 optimize_scope_make_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30119 - c0006296: 01370023 sb s3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30127 + c0006384: 01370023 sb s3,0(a4) put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 - c000629a: 016700a3 sb s6,1(a4) - c000629e: 01270123 sb s2,2(a4) + c0006388: 016700a3 sb s6,1(a4) + c000638c: 01270123 sb s2,2(a4) optimize_scope_make_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30129 pos += 3; - c00062a2: 0037851b addiw a0,a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30124 + c0006390: 0037851b addiw a0,a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30132 bc_buf[pos++] = OP_nop; - c00062a6: 4601 li a2,0 - c00062a8: 00a6c763 blt a3,a0,c00062b6 - c00062ac: 387d addiw a6,a6,-1 - c00062ae: 40f8063b subw a2,a6,a5 - c00062b2: 1602 slli a2,a2,0x20 - c00062b4: 9201 srli a2,a2,0x20 - c00062b6: 9522 add a0,a0,s0 - c00062b8: 0b300593 li a1,179 - c00062bc: 5b4500ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30126 -} - c00062c0: 70e2 ld ra,56(sp) - c00062c2: 7442 ld s0,48(sp) - c00062c4: 7902 ld s2,32(sp) - c00062c6: 69e2 ld s3,24(sp) - c00062c8: 6a42 ld s4,16(sp) - c00062ca: 6aa2 ld s5,8(sp) - c00062cc: 6b02 ld s6,0(sp) - c00062ce: 8526 mv a0,s1 - c00062d0: 74a2 ld s1,40(sp) - c00062d2: 6121 addi sp,sp,64 - c00062d4: 8082 ret - -00000000c00062d6 : + c0006394: 4601 li a2,0 + c0006396: 00a6c763 blt a3,a0,c00063a4 + c000639a: 387d addiw a6,a6,-1 + c000639c: 40f8063b subw a2,a6,a5 + c00063a0: 1602 slli a2,a2,0x20 + c00063a2: 9201 srli a2,a2,0x20 + c00063a4: 9522 add a0,a0,s0 + c00063a6: 0b300593 li a1,179 + c00063aa: 696500ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30134 +} + c00063ae: 70e2 ld ra,56(sp) + c00063b0: 7442 ld s0,48(sp) + c00063b2: 7902 ld s2,32(sp) + c00063b4: 69e2 ld s3,24(sp) + c00063b6: 6a42 ld s4,16(sp) + c00063b8: 6aa2 ld s5,8(sp) + c00063ba: 6b02 ld s6,0(sp) + c00063bc: 8526 mv a0,s1 + c00063be: 74a2 ld s1,40(sp) + c00063c0: 6121 addi sp,sp,64 + c00063c2: 8082 ret + +00000000c00063c4 : find_private_class_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22842 idx = fd->scopes[scope_level].first; - c00062d6: 797c ld a5,240(a0) - c00062d8: 00361713 slli a4,a2,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22830 + c00063c4: 797c ld a5,240(a0) + c00063c6: 00361713 slli a4,a2,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22838 static int find_private_class_field(JSContext *ctx, JSFunctionDef *fd, - c00062dc: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22834 + c00063ca: 86aa mv a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22842 idx = fd->scopes[scope_level].first; - c00062de: 97ba add a5,a5,a4 - c00062e0: 43c8 lw a0,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22835 + c00063cc: 97ba add a5,a5,a4 + c00063ce: 43c8 lw a0,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22843 while (idx != -1) { - c00062e2: 587d li a6,-1 - c00062e4: 01051363 bne a0,a6,c00062ea - c00062e8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22836 + c00063d0: 587d li a6,-1 + c00063d2: 01051363 bne a0,a6,c00063d8 + c00063d6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22844 if (fd->vars[idx].scope_level != scope_level) - c00062ea: 6ad8 ld a4,144(a3) - c00062ec: 00451793 slli a5,a0,0x4 - c00062f0: 97ba add a5,a5,a4 - c00062f2: 43d8 lw a4,4(a5) - c00062f4: 00c71763 bne a4,a2,c0006302 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22838 + c00063d8: 6ad8 ld a4,144(a3) + c00063da: 00451793 slli a5,a0,0x4 + c00063de: 97ba add a5,a5,a4 + c00063e0: 43d8 lw a4,4(a5) + c00063e2: 00c71763 bne a4,a2,c00063f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22846 if (fd->vars[idx].var_name == name) - c00062f8: 4398 lw a4,0(a5) - c00062fa: 00b70563 beq a4,a1,c0006304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22840 + c00063e6: 4398 lw a4,0(a5) + c00063e8: 00b70563 beq a4,a1,c00063f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22848 idx = fd->vars[idx].scope_next; - c00062fe: 4788 lw a0,8(a5) - c0006300: b7d5 j c00062e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22842 + c00063ec: 4788 lw a0,8(a5) + c00063ee: b7d5 j c00063d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22850 return -1; - c0006302: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22843 + c00063f0: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22851 } - c0006304: 8082 ret + c00063f2: 8082 ret -00000000c0006306 : +00000000c00063f4 : find_lexical_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21794 (vd->is_lexical || (vd->var_kind == JS_VAR_CATCH && - c0006306: 03000813 li a6,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21783 + c00063f4: 03000813 li a6,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21791 while (scope_idx >= 0) { - c000630a: 02065763 bgez a2,c0006338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21792 + c00063f8: 02065763 bgez a2,c0006426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21800 if (fd->is_eval && fd->eval_type == JS_EVAL_TYPE_GLOBAL) { - c000630e: 5d1c lw a5,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21796 + c00063fc: 5d1c lw a5,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21804 return -1; - c0006310: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21792 + c00063fe: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21800 if (fd->is_eval && fd->eval_type == JS_EVAL_TYPE_GLOBAL) { - c0006312: c7b1 beqz a5,c000635e - c0006314: 5d5c lw a5,60(a0) - c0006316: e7a1 bnez a5,c000635e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21780 + c0006400: c7b1 beqz a5,c000644c + c0006402: 5d5c lw a5,60(a0) + c0006404: e7a1 bnez a5,c000644c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21788 static int find_lexical_decl(JSContext *ctx, JSFunctionDef *fd, JSAtom name, - c0006318: 1141 addi sp,sp,-16 - c000631a: e406 sd ra,8(sp) + c0006406: 1141 addi sp,sp,-16 + c0006408: e406 sd ra,8(sp) find_lexical_global_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21773 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21781 JSGlobalVar *hf = find_global_var(fd, name); - c000631c: 962fe0ef jal ra,c000447e + c000640a: 874fe0ef jal ra,c000447e find_lexical_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21804 return -1; - c0006320: 567d li a2,-1 + c000640e: 567d li a2,-1 find_lexical_global_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21782 if (hf && hf->is_lexical) - c0006322: c519 beqz a0,c0006330 - c0006324: 00454783 lbu a5,4(a0) - c0006328: 8b89 andi a5,a5,2 - c000632a: c399 beqz a5,c0006330 + c0006410: c519 beqz a0,c000641e + c0006412: 00454783 lbu a5,4(a0) + c0006416: 8b89 andi a5,a5,2 + c0006418: c399 beqz a5,c000641e find_lexical_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21794 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21802 return GLOBAL_VAR_OFFSET; - c000632c: 40000637 lui a2,0x40000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21797 + c000641a: 40000637 lui a2,0x40000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21805 } - c0006330: 60a2 ld ra,8(sp) - c0006332: 8532 mv a0,a2 - c0006334: 0141 addi sp,sp,16 - c0006336: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21784 + c000641e: 60a2 ld ra,8(sp) + c0006420: 8532 mv a0,a2 + c0006422: 0141 addi sp,sp,16 + c0006424: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21792 JSVarDef *vd = &fd->vars[scope_idx]; - c0006338: 6958 ld a4,144(a0) - c000633a: 00461793 slli a5,a2,0x4 - c000633e: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21785 + c0006426: 6958 ld a4,144(a0) + c0006428: 00461793 slli a5,a2,0x4 + c000642c: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21793 if (vd->var_name == name && - c0006340: 4398 lw a4,0(a5) - c0006342: 00b71c63 bne a4,a1,c000635a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21786 + c000642e: 4398 lw a4,0(a5) + c0006430: 00b71c63 bne a4,a1,c0006448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21794 (vd->is_lexical || (vd->var_kind == JS_VAR_CATCH && - c0006346: 47d8 lw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21785 + c0006434: 47d8 lw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21793 if (vd->var_name == name && - c0006348: 00277893 andi a7,a4,2 - c000634c: 00089963 bnez a7,c000635e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21786 + c0006436: 00277893 andi a7,a4,2 + c000643a: 00089963 bnez a7,c000644c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21794 (vd->is_lexical || (vd->var_kind == JS_VAR_CATCH && - c0006350: 0f077713 andi a4,a4,240 - c0006354: 01071363 bne a4,a6,c000635a - c0006358: e299 bnez a3,c000635e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21789 - scope_idx = vd->scope_next; - c000635a: 4790 lw a2,8(a5) - c000635c: b77d j c000630a + c000643e: 0f077713 andi a4,a4,240 + c0006442: 01071363 bne a4,a6,c0006448 + c0006446: e299 bnez a3,c000644c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21797 + scope_idx = vd->scope_next; + c0006448: 4790 lw a2,8(a5) + c000644a: b77d j c00063f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21805 } - c000635e: 8532 mv a0,a2 - c0006360: 8082 ret + c000644c: 8532 mv a0,a2 + c000644e: 8082 ret -00000000c0006362 : +00000000c0006450 : JS_CompactBigInt1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12367 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12375 static JSValue JS_CompactBigInt1(JSContext *ctx, JSValue val, - c0006362: 7179 addi sp,sp,-48 - c0006364: f406 sd ra,40(sp) - c0006366: e02e sd a1,0(sp) - c0006368: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12373 + c0006450: 7179 addi sp,sp,-48 + c0006452: f406 sd ra,40(sp) + c0006454: e02e sd a1,0(sp) + c0006456: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12381 if (JS_VALUE_GET_TAG(val) != JS_TAG_BIG_INT) - c000636a: 0006071b sext.w a4,a2 - c000636e: 57d9 li a5,-10 - c0006370: 00f70963 beq a4,a5,c0006382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12386 + c0006458: 0006071b sext.w a4,a2 + c000645c: 57d9 li a5,-10 + c000645e: 00f70963 beq a4,a5,c0006470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 } - c0006374: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12385 + c0006462: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12393 return val; - c0006376: e82e sd a1,16(sp) - c0006378: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12386 -} - c000637a: 6542 ld a0,16(sp) - c000637c: 65e2 ld a1,24(sp) - c000637e: 6145 addi sp,sp,48 - c0006380: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12380 + c0006464: e82e sd a1,16(sp) + c0006466: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +} + c0006468: 6542 ld a0,16(sp) + c000646a: 65e2 ld a1,24(sp) + c000646c: 6145 addi sp,sp,48 + c000646e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12388 } else if (a->expn == BF_EXP_ZERO && a->sign) { - c0006382: 6d98 ld a4,24(a1) - c0006384: 57fd li a5,-1 - c0006386: 17fe slli a5,a5,0x3f - c0006388: fef716e3 bne a4,a5,c0006374 - c000638c: 499c lw a5,16(a1) - c000638e: d3fd beqz a5,c0006374 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12382 + c0006470: 6d98 ld a4,24(a1) + c0006472: 57fd li a5,-1 + c0006474: 17fe slli a5,a5,0x3f + c0006476: fef716e3 bne a4,a5,c0006462 + c000647a: 499c lw a5,16(a1) + c000647c: d3fd beqz a5,c0006462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12390 assert(p->header.ref_count == 1); - c0006390: 4198 lw a4,0(a1) - c0006392: 4785 li a5,1 - c0006394: 00f70c63 beq a4,a5,c00063ac - c0006398: 658d lui a1,0x3 - c000639a: 4601 li a2,0 - c000639c: 05e58593 addi a1,a1,94 # 305e <__clzdi2-0xbfffcfa2> - c00063a0: 00056517 auipc a0,0x56 - c00063a4: 6d850513 addi a0,a0,1752 # c005ca78 - c00063a8: 6704d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12383 + c000647e: 4198 lw a4,0(a1) + c0006480: 4785 li a5,1 + c0006482: 00f70c63 beq a4,a5,c000649a + c0006486: 658d lui a1,0x3 + c0006488: 4601 li a2,0 + c000648a: 06658593 addi a1,a1,102 # 3066 <__clzdi2-0xbfffcf9a> + c000648e: 00056517 auipc a0,0x56 + c0006492: 7ba50513 addi a0,a0,1978 # c005cc48 + c0006496: 7524d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12391 a->sign = 0; - c00063ac: 0005a823 sw zero,16(a1) - c00063b0: b7d1 j c0006374 + c000649a: 0005a823 sw zero,16(a1) + c000649e: b7d1 j c0006462 -00000000c00063b2 : +00000000c00064a0 : js_get_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15462 static BOOL js_get_fast_array(JSContext *ctx, JSValueConst obj, - c00063b2: 1141 addi sp,sp,-16 - c00063b4: e42e sd a1,8(sp) - c00063b6: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15458 + c00064a0: 1141 addi sp,sp,-16 + c00064a2: e42e sd a1,8(sp) + c00064a4: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15466 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00063b8: 2581 sext.w a1,a1 - c00063ba: 57fd li a5,-1 - c00063bc: 02f59463 bne a1,a5,c00063e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15460 + c00064a6: 2581 sext.w a1,a1 + c00064a8: 57fd li a5,-1 + c00064aa: 02f59463 bne a1,a5,c00064d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15468 if (p->class_id == JS_CLASS_ARRAY && p->fast_array) { - c00063c0: 610c ld a1,0(a0) - c00063c2: 5705 li a4,-31 - c00063c4: 172e slli a4,a4,0x2b - c00063c6: 8df9 and a1,a1,a4 - c00063c8: 04100713 li a4,65 - c00063cc: 172e slli a4,a4,0x2b -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15459 + c00064ae: 610c ld a1,0(a0) + c00064b0: 5705 li a4,-31 + c00064b2: 172e slli a4,a4,0x2b + c00064b4: 8df9 and a1,a1,a4 + c00064b6: 04100713 li a4,65 + c00064ba: 172e slli a4,a4,0x2b +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15467 JSObject *p = JS_VALUE_GET_OBJ(obj); - c00063ce: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15466 + c00064bc: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15474 return FALSE; - c00063d0: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15460 + c00064be: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15468 if (p->class_id == JS_CLASS_ARRAY && p->fast_array) { - c00063d2: 00e59763 bne a1,a4,c00063e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15461 + c00064c0: 00e59763 bne a1,a4,c00064ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15469 *countp = p->u.array.count; - c00063d6: 43b8 lw a4,64(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15463 + c00064c4: 43b8 lw a4,64(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15471 return TRUE; - c00063d8: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15461 + c00064c6: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15469 *countp = p->u.array.count; - c00063da: c298 sw a4,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15462 + c00064c8: c298 sw a4,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15470 *arrpp = p->u.array.u.values; - c00063dc: 7f9c ld a5,56(a5) - c00063de: e21c sd a5,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15467 + c00064ca: 7f9c ld a5,56(a5) + c00064cc: e21c sd a5,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15475 } - c00063e0: 0141 addi sp,sp,16 - c00063e2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15466 + c00064ce: 0141 addi sp,sp,16 + c00064d0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15474 return FALSE; - c00063e4: 4501 li a0,0 - c00063e6: bfed j c00063e0 + c00064d2: 4501 li a0,0 + c00064d4: bfed j c00064ce -00000000c00063e8 : +00000000c00064d6 : copy_str16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4211 static void copy_str16(uint16_t *dst, const JSString *p, int offset, int len) - c00063e8: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4205 + c00064d6: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4213 if (p->is_wide_char) { - c00063ea: 00472803 lw a6,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4203 + c00064d8: 00472803 lw a6,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4211 static void copy_str16(uint16_t *dst, const JSString *p, int offset, int len) - c00063ee: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4206 + c00064dc: 86aa mv a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4214 memcpy(dst, p->u.str16 + offset, len * 2); - c00063f0: 05c1 addi a1,a1,16 - c00063f2: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4205 + c00064de: 05c1 addi a1,a1,16 + c00064e0: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4213 if (p->is_wide_char) { - c00063f4: 02085063 bgez a6,c0006414 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4206 + c00064e2: 02085063 bgez a6,c0006502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4214 memcpy(dst, p->u.str16 + offset, len * 2); - c00063f8: 0016161b slliw a2,a2,0x1 - c00063fc: 5de5006f j c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4212 + c00064e6: 0016161b slliw a2,a2,0x1 + c00064ea: 6c05006f j c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4220 dst[i] = src1[i]; - c0006400: 00f70533 add a0,a4,a5 - c0006404: 01054503 lbu a0,16(a0) - c0006408: 00179593 slli a1,a5,0x1 - c000640c: 95b6 add a1,a1,a3 - c000640e: 00a59023 sh a0,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4211 + c00064ee: 00f70533 add a0,a4,a5 + c00064f2: 01054503 lbu a0,16(a0) + c00064f6: 00179593 slli a1,a5,0x1 + c00064fa: 95b6 add a1,a1,a3 + c00064fc: 00a59023 sh a0,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4219 for(i = 0; i < len; i++) - c0006412: 0785 addi a5,a5,1 - c0006414: 0007859b sext.w a1,a5 - c0006418: fec5c4e3 blt a1,a2,c0006400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4214 + c0006500: 0785 addi a5,a5,1 + c0006502: 0007859b sext.w a1,a5 + c0006506: fec5c4e3 blt a1,a2,c00064ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4222 } - c000641c: 8082 ret + c000650a: 8082 ret -00000000c000641e : +00000000c000650c : js_fcvt1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11525 static int js_fcvt1(char *buf, int buf_size, double d, int n_digits, - c000641e: 7179 addi sp,sp,-48 - c0006420: f022 sd s0,32(sp) - c0006422: ec26 sd s1,24(sp) - c0006424: f406 sd ra,40(sp) - c0006426: e2050753 fmv.x.d a4,fa0 - c000642a: 84aa mv s1,a0 - c000642c: 86ae mv a3,a1 - c000642e: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11521 + c000650c: 7179 addi sp,sp,-48 + c000650e: f022 sd s0,32(sp) + c0006510: ec26 sd s1,24(sp) + c0006512: f406 sd ra,40(sp) + c0006514: e2050753 fmv.x.d a4,fa0 + c0006518: 84aa mv s1,a0 + c000651a: 86ae mv a3,a1 + c000651c: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11529 if (rounding_mode != FE_TONEAREST) - c0006430: ca01 beqz a2,c0006440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11522 + c000651e: ca01 beqz a2,c000652e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11530 fesetround(rounding_mode); - c0006432: 8532 mv a0,a2 - c0006434: e42e sd a1,8(sp) - c0006436: a02a fsd fa0,0(sp) - c0006438: 0fb4c0ef jal ra,c0052d32 - c000643c: 66a2 ld a3,8(sp) - c000643e: 6702 ld a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11523 + c0006520: 8532 mv a0,a2 + c0006522: e42e sd a1,8(sp) + c0006524: a02a fsd fa0,0(sp) + c0006526: 1dd4c0ef jal ra,c0052f02 + c000652a: 66a2 ld a3,8(sp) + c000652c: 6702 ld a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11531 n = snprintf(buf, buf_size, "%.*f", n_digits, d); - c0006440: 8526 mv a0,s1 - c0006442: 00056617 auipc a2,0x56 - c0006446: 6c660613 addi a2,a2,1734 # c005cb08 - c000644a: 08000593 li a1,128 - c000644e: 5b74d0ef jal ra,c0054204 - c0006452: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11524 + c000652e: 8526 mv a0,s1 + c0006530: 00057617 auipc a2,0x57 + c0006534: 80860613 addi a2,a2,-2040 # c005cd38 + c0006538: 08000593 li a1,128 + c000653c: 6994d0ef jal ra,c00543d4 + c0006540: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11532 if (rounding_mode != FE_TONEAREST) - c0006454: c401 beqz s0,c000645c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11525 + c0006542: c401 beqz s0,c000654a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11533 fesetround(FE_TONEAREST); - c0006456: 4501 li a0,0 - c0006458: 0db4c0ef jal ra,c0052d32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11526 + c0006544: 4501 li a0,0 + c0006546: 1bd4c0ef jal ra,c0052f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11534 assert(n < buf_size); - c000645c: 07f00793 li a5,127 - c0006460: 0097dc63 bge a5,s1,c0006478 - c0006464: 658d lui a1,0x3 - c0006466: 4601 li a2,0 - c0006468: d0658593 addi a1,a1,-762 # 2d06 <__clzdi2-0xbfffd2fa> - c000646c: 00056517 auipc a0,0x56 - c0006470: 60c50513 addi a0,a0,1548 # c005ca78 - c0006474: 5a44d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11528 -} - c0006478: 70a2 ld ra,40(sp) - c000647a: 7402 ld s0,32(sp) - c000647c: 8526 mv a0,s1 - c000647e: 64e2 ld s1,24(sp) - c0006480: 6145 addi sp,sp,48 - c0006482: 8082 ret - -00000000c0006484 : + c000654a: 07f00793 li a5,127 + c000654e: 0097dc63 bge a5,s1,c0006566 + c0006552: 658d lui a1,0x3 + c0006554: 4601 li a2,0 + c0006556: d0e58593 addi a1,a1,-754 # 2d0e <__clzdi2-0xbfffd2f2> + c000655a: 00056517 auipc a0,0x56 + c000655e: 6ee50513 addi a0,a0,1774 # c005cc48 + c0006562: 6864d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11536 +} + c0006566: 70a2 ld ra,40(sp) + c0006568: 7402 ld s0,32(sp) + c000656a: 8526 mv a0,s1 + c000656c: 64e2 ld s1,24(sp) + c000656e: 6145 addi sp,sp,48 + c0006570: 8082 ret + +00000000c0006572 : js_ecvt1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11442 static void js_ecvt1(double d, int n_digits, int *decpt, int *sign, char *buf, - c0006484: 715d addi sp,sp,-80 - c0006486: e0a2 sd s0,64(sp) - c0006488: fc26 sd s1,56(sp) - c000648a: f84a sd s2,48(sp) - c000648c: f44e sd s3,40(sp) - c000648e: f052 sd s4,32(sp) - c0006490: ec56 sd s5,24(sp) - c0006492: a422 fsd fs0,8(sp) - c0006494: e486 sd ra,72(sp) - c0006496: e85a sd s6,16(sp) - c0006498: 22a50453 fmv.d fs0,fa0 - c000649c: 842a mv s0,a0 - c000649e: 89ae mv s3,a1 - c00064a0: 8ab2 mv s5,a2 - c00064a2: 8936 mv s2,a3 - c00064a4: 8a3a mv s4,a4 - c00064a6: 84be mv s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11437 + c0006572: 715d addi sp,sp,-80 + c0006574: e0a2 sd s0,64(sp) + c0006576: fc26 sd s1,56(sp) + c0006578: f84a sd s2,48(sp) + c000657a: f44e sd s3,40(sp) + c000657c: f052 sd s4,32(sp) + c000657e: ec56 sd s5,24(sp) + c0006580: a422 fsd fs0,8(sp) + c0006582: e486 sd ra,72(sp) + c0006584: e85a sd s6,16(sp) + c0006586: 22a50453 fmv.d fs0,fa0 + c000658a: 842a mv s0,a0 + c000658c: 89ae mv s3,a1 + c000658e: 8ab2 mv s5,a2 + c0006590: 8936 mv s2,a3 + c0006592: 8a3a mv s4,a4 + c0006594: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11445 if (rounding_mode != FE_TONEAREST) - c00064a8: c701 beqz a4,c00064b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11438 + c0006596: c701 beqz a4,c000659e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11446 fesetround(rounding_mode); - c00064aa: 853a mv a0,a4 - c00064ac: 0874c0ef jal ra,c0052d32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11439 + c0006598: 853a mv a0,a4 + c000659a: 1694c0ef jal ra,c0052f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11447 snprintf(buf1, buf1_size, "%+.*e", n_digits - 1, d); - c00064b0: e2040753 fmv.x.d a4,fs0 - c00064b4: fff40b1b addiw s6,s0,-1 - c00064b8: 86da mv a3,s6 - c00064ba: 00056617 auipc a2,0x56 - c00064be: 65660613 addi a2,a2,1622 # c005cb10 - c00064c2: 08000593 li a1,128 - c00064c6: 8526 mv a0,s1 - c00064c8: 53d4d0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11440 + c000659e: e2040753 fmv.x.d a4,fs0 + c00065a2: fff40b1b addiw s6,s0,-1 + c00065a6: 86da mv a3,s6 + c00065a8: 00056617 auipc a2,0x56 + c00065ac: 79860613 addi a2,a2,1944 # c005cd40 + c00065b0: 08000593 li a1,128 + c00065b4: 8526 mv a0,s1 + c00065b6: 61f4d0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11448 if (rounding_mode != FE_TONEAREST) - c00064cc: 000a0563 beqz s4,c00064d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11441 + c00065ba: 000a0563 beqz s4,c00065c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11449 fesetround(FE_TONEAREST); - c00064d0: 4501 li a0,0 - c00064d2: 0614c0ef jal ra,c0052d32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11442 + c00065be: 4501 li a0,0 + c00065c0: 1434c0ef jal ra,c0052f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11450 *sign = (buf1[0] == '-'); - c00064d6: 0004c783 lbu a5,0(s1) - c00064da: fd378793 addi a5,a5,-45 - c00064de: 0017b793 seqz a5,a5 - c00064e2: 00faa023 sw a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11444 + c00065c4: 0004c783 lbu a5,0(s1) + c00065c8: fd378793 addi a5,a5,-45 + c00065cc: 0017b793 seqz a5,a5 + c00065d0: 00faa023 sw a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11452 buf[0] = buf1[1]; - c00064e6: 0014c783 lbu a5,1(s1) - c00064ea: 00f90023 sb a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11445 + c00065d4: 0014c783 lbu a5,1(s1) + c00065d8: 00f90023 sb a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11453 if (n_digits > 1) - c00064ee: 4785 li a5,1 - c00064f0: 0087d963 bge a5,s0,c0006502 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11446 + c00065dc: 4785 li a5,1 + c00065de: 0087d963 bge a5,s0,c00065f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11454 memcpy(buf + 1, buf1 + 3, n_digits - 1); - c00064f4: 865a mv a2,s6 - c00064f6: 00348593 addi a1,s1,3 - c00064fa: 00190513 addi a0,s2,1 - c00064fe: 4dc500ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11449 + c00065e2: 865a mv a2,s6 + c00065e4: 00348593 addi a1,s1,3 + c00065e8: 00190513 addi a0,s2,1 + c00065ec: 5be500ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11457 *decpt = atoi(buf1 + n_digits + 2 + (n_digits > 1)) + 1; - c0006502: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11447 + c00065f0: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11455 buf[n_digits] = '\0'; - c0006504: 9922 add s2,s2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11449 + c00065f2: 9922 add s2,s2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11457 *decpt = atoi(buf1 + n_digits + 2 + (n_digits > 1)) + 1; - c0006506: 00852533 slt a0,a0,s0 - c000650a: 0409 addi s0,s0,2 - c000650c: 9522 add a0,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11447 + c00065f4: 00852533 slt a0,a0,s0 + c00065f8: 0409 addi s0,s0,2 + c00065fa: 9522 add a0,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11455 buf[n_digits] = '\0'; - c000650e: 00090023 sb zero,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11449 + c00065fc: 00090023 sb zero,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11457 *decpt = atoi(buf1 + n_digits + 2 + (n_digits > 1)) + 1; - c0006512: 9526 add a0,a0,s1 - c0006514: 3004f0ef jal ra,c0055814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11450 + c0006600: 9526 add a0,a0,s1 + c0006602: 3e24f0ef jal ra,c00559e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11458 } - c0006518: 60a6 ld ra,72(sp) - c000651a: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11449 + c0006606: 60a6 ld ra,72(sp) + c0006608: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11457 *decpt = atoi(buf1 + n_digits + 2 + (n_digits > 1)) + 1; - c000651c: 2505 addiw a0,a0,1 - c000651e: 00a9a023 sw a0,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11450 -} - c0006522: 74e2 ld s1,56(sp) - c0006524: 7942 ld s2,48(sp) - c0006526: 79a2 ld s3,40(sp) - c0006528: 7a02 ld s4,32(sp) - c000652a: 6ae2 ld s5,24(sp) - c000652c: 6b42 ld s6,16(sp) - c000652e: 2422 fld fs0,8(sp) - c0006530: 6161 addi sp,sp,80 - c0006532: 8082 ret - -00000000c0006534 : + c000660a: 2505 addiw a0,a0,1 + c000660c: 00a9a023 sw a0,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11458 +} + c0006610: 74e2 ld s1,56(sp) + c0006612: 7942 ld s2,48(sp) + c0006614: 79a2 ld s3,40(sp) + c0006616: 7a02 ld s4,32(sp) + c0006618: 6ae2 ld s5,24(sp) + c000661a: 6b42 ld s6,16(sp) + c000661c: 2422 fld fs0,8(sp) + c000661e: 6161 addi sp,sp,80 + c0006620: 8082 ret + +00000000c0006622 : JS_AtomGetStrRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3087 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3095 static const char *JS_AtomGetStrRT(JSRuntime *rt, char *buf, int buf_size, - c0006534: 7139 addi sp,sp,-64 - c0006536: f822 sd s0,48(sp) - c0006538: fc06 sd ra,56(sp) - c000653a: f426 sd s1,40(sp) - c000653c: f04a sd s2,32(sp) - c000653e: ec4e sd s3,24(sp) - c0006540: e852 sd s4,16(sp) - c0006542: e456 sd s5,8(sp) - c0006544: e05a sd s6,0(sp) - c0006546: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3090 + c0006622: 7139 addi sp,sp,-64 + c0006624: f822 sd s0,48(sp) + c0006626: fc06 sd ra,56(sp) + c0006628: f426 sd s1,40(sp) + c000662a: f04a sd s2,32(sp) + c000662c: ec4e sd s3,24(sp) + c000662e: e852 sd s4,16(sp) + c0006630: e456 sd s5,8(sp) + c0006632: e05a sd s6,0(sp) + c0006634: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3098 if (__JS_AtomIsTaggedInt(atom)) { - c0006548: 02065963 bgez a2,c000657a + c0006636: 02065963 bgez a2,c0006668 __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c000654c: 1606 slli a2,a2,0x21 + c000663a: 1606 slli a2,a2,0x21 JS_AtomGetStrRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3099 snprintf(buf, buf_size, "%u", __JS_AtomToUInt32(atom)); - c000654e: 02165693 srli a3,a2,0x21 - c0006552: 04000593 li a1,64 - c0006556: 00056617 auipc a2,0x56 - c000655a: 5c260613 addi a2,a2,1474 # c005cb18 - c000655e: 8522 mv a0,s0 - c0006560: 4a54d0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3134 + c000663c: 02165693 srli a3,a2,0x21 + c0006640: 04000593 li a1,64 + c0006644: 00056617 auipc a2,0x56 + c0006648: 70460613 addi a2,a2,1796 # c005cd48 + c000664c: 8522 mv a0,s0 + c000664e: 5874d0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3142 } - c0006564: 70e2 ld ra,56(sp) - c0006566: 8522 mv a0,s0 - c0006568: 7442 ld s0,48(sp) - c000656a: 74a2 ld s1,40(sp) - c000656c: 7902 ld s2,32(sp) - c000656e: 69e2 ld s3,24(sp) - c0006570: 6a42 ld s4,16(sp) - c0006572: 6aa2 ld s5,8(sp) - c0006574: 6b02 ld s6,0(sp) - c0006576: 6121 addi sp,sp,64 - c0006578: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3094 + c0006652: 70e2 ld ra,56(sp) + c0006654: 8522 mv a0,s0 + c0006656: 7442 ld s0,48(sp) + c0006658: 74a2 ld s1,40(sp) + c000665a: 7902 ld s2,32(sp) + c000665c: 69e2 ld s3,24(sp) + c000665e: 6a42 ld s4,16(sp) + c0006660: 6aa2 ld s5,8(sp) + c0006662: 6b02 ld s6,0(sp) + c0006664: 6121 addi sp,sp,64 + c0006666: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3102 assert(atom < rt->atom_size); - c000657a: 493c lw a5,80(a0) - c000657c: 00f66c63 bltu a2,a5,c0006594 - c0006580: 6585 lui a1,0x1 - c0006582: 4601 li a2,0 - c0006584: c1658593 addi a1,a1,-1002 # c16 <__clzdi2-0xbffff3ea> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3104 + c0006668: 493c lw a5,80(a0) + c000666a: 00f66c63 bltu a2,a5,c0006682 + c000666e: 6585 lui a1,0x1 + c0006670: 4601 li a2,0 + c0006672: c1e58593 addi a1,a1,-994 # c1e <__clzdi2-0xbffff3e2> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3112 assert(!atom_is_free(p)); - c0006588: 00056517 auipc a0,0x56 - c000658c: 4f050513 addi a0,a0,1264 # c005ca78 - c0006590: 4884d0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3095 + c0006676: 00056517 auipc a0,0x56 + c000667a: 5d250513 addi a0,a0,1490 # c005cc48 + c000667e: 56a4d0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3103 if (atom == JS_ATOM_NULL) { - c0006594: ea09 bnez a2,c00065a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3096 + c0006682: ea09 bnez a2,c0006694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3104 snprintf(buf, buf_size, ""); - c0006596: 00056597 auipc a1,0x56 - c000659a: 58a58593 addi a1,a1,1418 # c005cb20 - c000659e: 8522 mv a0,s0 - c00065a0: 3c6500ef jal ra,c0056966 - c00065a4: b7c1 j c0006564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3103 + c0006684: 00056597 auipc a1,0x56 + c0006688: 6cc58593 addi a1,a1,1740 # c005cd50 + c000668c: 8522 mv a0,s0 + c000668e: 4a8500ef jal ra,c0056b36 + c0006692: b7c1 j c0006652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3111 p = rt->atom_array[atom]; - c00065a6: 7134 ld a3,96(a0) - c00065a8: 02061793 slli a5,a2,0x20 - c00065ac: 01d7d613 srli a2,a5,0x1d - c00065b0: 9636 add a2,a2,a3 - c00065b2: 00063903 ld s2,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3104 + c0006694: 7134 ld a3,96(a0) + c0006696: 02061793 slli a5,a2,0x20 + c000669a: 01d7d613 srli a2,a5,0x1d + c000669e: 9636 add a2,a2,a3 + c00066a0: 00063903 ld s2,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3112 assert(!atom_is_free(p)); - c00065b6: 00197793 andi a5,s2,1 - c00065ba: c791 beqz a5,c00065c6 - c00065bc: 6585 lui a1,0x1 - c00065be: 4601 li a2,0 - c00065c0: c2058593 addi a1,a1,-992 # c20 <__clzdi2-0xbffff3e0> - c00065c4: b7d1 j c0006588 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3106 + c00066a4: 00197793 andi a5,s2,1 + c00066a8: c791 beqz a5,c00066b4 + c00066aa: 6585 lui a1,0x1 + c00066ac: 4601 li a2,0 + c00066ae: c2858593 addi a1,a1,-984 # c28 <__clzdi2-0xbffff3d8> + c00066b2: b7d1 j c0006676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3114 if (str) { - c00065c6: 0a090063 beqz s2,c0006666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3107 + c00066b4: 0a090063 beqz s2,c0006754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3115 if (!str->is_wide_char) { - c00065ca: 00492783 lw a5,4(s2) - c00065ce: 0007871b sext.w a4,a5 - c00065d2: 06074f63 bltz a4,c0006650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3110 + c00066b8: 00492783 lw a5,4(s2) + c00066bc: 0007871b sext.w a4,a5 + c00066c0: 06074f63 bltz a4,c000673e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3118 for(i = 0; i < str->len; i++) { - c00065d6: 1786 slli a5,a5,0x21 - c00065d8: 9385 srli a5,a5,0x21 - c00065da: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3109 + c00066c4: 1786 slli a5,a5,0x21 + c00066c6: 9385 srli a5,a5,0x21 + c00066c8: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3117 c = 0; - c00065dc: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3110 + c00066ca: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3118 for(i = 0; i < str->len; i++) { - c00065de: 0007061b sext.w a2,a4 - c00065e2: 00f64963 blt a2,a5,c00065f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3113 + c00066cc: 0007061b sext.w a2,a4 + c00066d0: 00f64963 blt a2,a5,c00066e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3121 if (c < 0x80) - c00065e6: 07f00793 li a5,127 - c00065ea: 06d7c363 blt a5,a3,c0006650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3114 + c00066d4: 07f00793 li a5,127 + c00066d8: 06d7c363 blt a5,a3,c000673e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3122 return (const char *)str->u.str8; - c00065ee: 01090413 addi s0,s2,16 - c00065f2: bf8d j c0006564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3111 + c00066dc: 01090413 addi s0,s2,16 + c00066e0: bf8d j c0006652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3119 c |= str->u.str8[i]; - c00065f4: 00e90633 add a2,s2,a4 - c00065f8: 01064603 lbu a2,16(a2) - c00065fc: 0705 addi a4,a4,1 - c00065fe: 8ed1 or a3,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3110 + c00066e2: 00e90633 add a2,s2,a4 + c00066e6: 01064603 lbu a2,16(a2) + c00066ea: 0705 addi a4,a4,1 + c00066ec: 8ed1 or a3,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3118 for(i = 0; i < str->len; i++) { - c0006600: bff9 j c00065de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3117 + c00066ee: bff9 j c00066cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3125 if (str->is_wide_char) - c0006602: 2781 sext.w a5,a5 - c0006604: 0207dc63 bgez a5,c000663c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3118 + c00066f0: 2781 sext.w a5,a5 + c00066f2: 0207dc63 bgez a5,c000672a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3126 c = str->u.str16[i]; - c0006608: 00898793 addi a5,s3,8 - c000660c: 0786 slli a5,a5,0x1 - c000660e: 97ca add a5,a5,s2 - c0006610: 0007d583 lhu a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3121 + c00066f6: 00898793 addi a5,s3,8 + c00066fa: 0786 slli a5,a5,0x1 + c00066fc: 97ca add a5,a5,s2 + c00066fe: 0007d583 lhu a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3129 if ((q - buf) >= buf_size - UTF8_CHAR_LEN_MAX) - c0006614: 408487b3 sub a5,s1,s0 - c0006618: 00facf63 blt s5,a5,c0006636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3123 + c0006702: 408487b3 sub a5,s1,s0 + c0006706: 00facf63 blt s5,a5,c0006724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3131 if (c < 128) { - c000661c: 02bb4563 blt s6,a1,c0006646 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3124 + c000670a: 02bb4563 blt s6,a1,c0006734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3132 *q++ = c; - c0006620: 00b48023 sb a1,0(s1) - c0006624: 0485 addi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3116 + c000670e: 00b48023 sb a1,0(s1) + c0006712: 0485 addi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3124 for(i = 0; i < str->len; i++) { - c0006626: 2985 addiw s3,s3,1 - c0006628: 00492783 lw a5,4(s2) - c000662c: 0147f733 and a4,a5,s4 - c0006630: 2701 sext.w a4,a4 - c0006632: fce9c8e3 blt s3,a4,c0006602 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3130 + c0006714: 2985 addiw s3,s3,1 + c0006716: 00492783 lw a5,4(s2) + c000671a: 0147f733 and a4,a5,s4 + c000671e: 2701 sext.w a4,a4 + c0006720: fce9c8e3 blt s3,a4,c00066f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3138 *q = '\0'; - c0006636: 00048023 sb zero,0(s1) - c000663a: b72d j c0006564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3120 + c0006724: 00048023 sb zero,0(s1) + c0006728: b72d j c0006652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3128 c = str->u.str8[i]; - c000663c: 013907b3 add a5,s2,s3 - c0006640: 0107c583 lbu a1,16(a5) - c0006644: bfc1 j c0006614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3126 + c000672a: 013907b3 add a5,s2,s3 + c000672e: 0107c583 lbu a1,16(a5) + c0006732: bfc1 j c0006702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3134 q += unicode_to_utf8((uint8_t *)q, c); - c0006646: 8526 mv a0,s1 - c0006648: 7e4410ef jal ra,c0047e2c - c000664c: 94aa add s1,s1,a0 - c000664e: bfe1 j c0006626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3116 + c0006734: 8526 mv a0,s1 + c0006736: 0c7410ef jal ra,c0047ffc + c000673a: 94aa add s1,s1,a0 + c000673c: bfe1 j c0006714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3124 for(i = 0; i < str->len; i++) { - c0006650: 80000a37 lui s4,0x80000 - c0006654: 84a2 mv s1,s0 - c0006656: 4981 li s3,0 - c0006658: fffa4a13 not s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3121 + c000673e: 80000a37 lui s4,0x80000 + c0006742: 84a2 mv s1,s0 + c0006744: 4981 li s3,0 + c0006746: fffa4a13 not s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3129 if ((q - buf) >= buf_size - UTF8_CHAR_LEN_MAX) - c000665c: 03900a93 li s5,57 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3123 + c000674a: 03900a93 li s5,57 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3131 if (c < 128) { - c0006660: 07f00b13 li s6,127 - c0006664: b7d1 j c0006628 - c0006666: 84ae mv s1,a1 - c0006668: b7f9 j c0006636 + c000674e: 07f00b13 li s6,127 + c0006752: b7d1 j c0006716 + c0006754: 84ae mv s1,a1 + c0006756: b7f9 j c0006724 -00000000c000666a : +00000000c0006758 : JS_AtomGetStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3146 return JS_AtomGetStrRT(ctx->rt, buf, buf_size, atom); - c000666a: 6d08 ld a0,24(a0) - c000666c: b5e1 j c0006534 + c0006758: 6d08 ld a0,24(a0) + c000675a: b5e1 j c0006622 -00000000c000666e : +00000000c000675c : JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:666 __JS_FreeValueRT(rt, v); @@ -17582,77 +17678,77 @@ JS_DupValue(): } static inline JSValue JS_DupValue(JSContext *ctx, JSValueConst v) - c000666e: 1101 addi sp,sp,-32 - c0006670: e02a sd a0,0(sp) - c0006672: e42e sd a1,8(sp) + c000675c: 1101 addi sp,sp,-32 + c000675e: e02a sd a0,0(sp) + c0006760: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 { if (JS_VALUE_HAS_REF_COUNT(v)) { - c0006674: 0005871b sext.w a4,a1 - c0006678: 57d1 li a5,-12 - c000667a: 00e7f563 bgeu a5,a4,c0006684 + c0006762: 0005871b sext.w a4,a1 + c0006766: 57d1 li a5,-12 + c0006768: 00e7f563 bgeu a5,a4,c0006772 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 JSRefCountHeader *p = (JSRefCountHeader *)JS_VALUE_GET_PTR(v); p->ref_count++; - c000667e: 411c lw a5,0(a0) - c0006680: 2785 addiw a5,a5,1 - c0006682: c11c sw a5,0(a0) + c000676c: 411c lw a5,0(a0) + c000676e: 2785 addiw a5,a5,1 + c0006770: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:673 } return (JSValue)v; } - c0006684: 6105 addi sp,sp,32 - c0006686: 8082 ret + c0006772: 6105 addi sp,sp,32 + c0006774: 8082 ret -00000000c0006688 : +00000000c0006776 : js_promise_finally_value_thunk(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48693 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48701 return JS_DupValue(ctx, func_data[0]); - c0006688: 00083503 ld a0,0(a6) - c000668c: 00883583 ld a1,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48692 + c0006776: 00083503 ld a0,0(a6) + c000677a: 00883583 ld a1,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48700 { - c0006690: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48694 + c000677e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48702 } - c0006692: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48693 + c0006780: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48701 return JS_DupValue(ctx, func_data[0]); - c0006694: bfe9 j c000666e + c0006782: bfe9 j c000675c -00000000c0006696 : +00000000c0006784 : js_iterator_proto_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40816 { - c0006696: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40809 + c0006784: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40817 return JS_DupValue(ctx, this_val); - c0006698: 852e mv a0,a1 - c000669a: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40810 + c0006786: 852e mv a0,a1 + c0006788: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40818 } - c000669c: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40809 + c000678a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40817 return JS_DupValue(ctx, this_val); - c000669e: bfc1 j c000666e + c000678c: bfc1 j c000675c -00000000c00066a0 : +00000000c000678e : js_get_this(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39071 { - c00066a0: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39064 + c000678e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39072 return JS_DupValue(ctx, this_val); - c00066a2: 852e mv a0,a1 - c00066a4: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39065 + c0006790: 852e mv a0,a1 + c0006792: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39073 } - c00066a6: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39064 + c0006794: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39072 return JS_DupValue(ctx, this_val); - c00066a8: b7d9 j c000666e + c0006796: b7d9 j c000675c -00000000c00066aa : +00000000c0006798 : bf_delete(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:222 @@ -17661,4083 +17757,4083 @@ void bf_init(bf_context_t *s, bf_t *r); static inline void bf_delete(bf_t *r) { bf_context_t *s = r->ctx; - c00066aa: 611c ld a5,0(a0) + c0006798: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.h:224 /* we accept to delete a zeroed bf_t structure */ if (s && r->tab) { - c00066ac: c799 beqz a5,c00066ba + c000679a: c799 beqz a5,c00067a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:224 (discriminator 1) - c00066ae: 710c ld a1,32(a0) - c00066b0: c589 beqz a1,c00066ba + c000679c: 710c ld a1,32(a0) + c000679e: c589 beqz a1,c00067a8 bf_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:202 return s->realloc_func(s->realloc_opaque, ptr, size); - c00066b2: 6798 ld a4,8(a5) - c00066b4: 6388 ld a0,0(a5) - c00066b6: 4601 li a2,0 - c00066b8: 8702 jr a4 + c00067a0: 6798 ld a4,8(a5) + c00067a2: 6388 ld a0,0(a5) + c00067a4: 4601 li a2,0 + c00067a6: 8702 jr a4 bf_delete(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:227 bf_realloc(s, r->tab, 0); } } - c00066ba: 8082 ret + c00067a8: 8082 ret -00000000c00066bc : +00000000c00067aa : JS_ToBigFloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12424 { - c00066bc: 1101 addi sp,sp,-32 - c00066be: e822 sd s0,16(sp) - c00066c0: ec06 sd ra,24(sp) - c00066c2: e032 sd a2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12421 + c00067aa: 1101 addi sp,sp,-32 + c00067ac: e822 sd s0,16(sp) + c00067ae: ec06 sd ra,24(sp) + c00067b0: e032 sd a2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12429 tag = JS_VALUE_GET_NORM_TAG(val); - c00066c4: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12422 + c00067b2: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12430 switch(tag) { - c00066c6: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12416 + c00067b4: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12424 { - c00066c8: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12422 + c00067b6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12430 switch(tag) { - c00066ca: 04f68863 beq a3,a5,c000671a - c00066ce: 00d7ee63 bltu a5,a3,c00066ea - c00066d2: 4789 li a5,2 - c00066d4: 02d7f163 bgeu a5,a3,c00066f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12450 + c00067b8: 04f68863 beq a3,a5,c0006808 + c00067bc: 00d7ee63 bltu a5,a3,c00067d8 + c00067c0: 4789 li a5,2 + c00067c2: 02d7f163 bgeu a5,a3,c00067e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12458 bf_init(ctx->bf_ctx, r); - c00066d8: 19053503 ld a0,400(a0) - c00066dc: 85a2 mv a1,s0 - c00066de: 12f460ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12451 + c00067c6: 19053503 ld a0,400(a0) + c00067ca: 85a2 mv a1,s0 + c00067cc: 211460ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12459 bf_set_nan(r); - c00066e2: 8522 mv a0,s0 - c00066e4: 179460ef jal ra,c004d05c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12452 + c00067d0: 8522 mv a0,s0 + c00067d2: 25b460ef jal ra,c004d22c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12460 break; - c00066e8: a025 j c0006710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12422 + c00067d6: a025 j c00067fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12430 switch(tag) { - c00066ea: 57d9 li a5,-10 - c00066ec: fef696e3 bne a3,a5,c00066d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12445 + c00067d8: 57d9 li a5,-10 + c00067da: fef696e3 bne a3,a5,c00067c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12453 r = &p->num; - c00066f0: 00860413 addi s0,a2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12446 + c00067de: 00860413 addi s0,a2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12454 break; - c00066f4: a831 j c0006710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12427 + c00067e2: a831 j c00067fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12435 bf_init(ctx->bf_ctx, r); - c00066f6: 19053503 ld a0,400(a0) - c00066fa: 113460ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12428 - if (bf_set_si(r, JS_VALUE_GET_INT(val))) - c00066fe: 4582 lw a1,0(sp) - c0006700: 8522 mv a0,s0 - c0006702: 1d9460ef jal ra,c004d0da - c0006706: c509 beqz a0,c0006710 + c00067e4: 19053503 ld a0,400(a0) + c00067e8: 1f5460ef jal ra,c004d1dc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12436 + if (bf_set_si(r, JS_VALUE_GET_INT(val))) + c00067ec: 4582 lw a1,0(sp) + c00067ee: 8522 mv a0,s0 + c00067f0: 2bb460ef jal ra,c004d2aa + c00067f4: c509 beqz a0,c00067fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12444 bf_delete(r); - c0006708: 8522 mv a0,s0 - c000670a: fa1ff0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12437 + c00067f6: 8522 mv a0,s0 + c00067f8: fa1ff0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12445 return NULL; - c000670e: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12455 -} - c0006710: 60e2 ld ra,24(sp) - c0006712: 8522 mv a0,s0 - c0006714: 6442 ld s0,16(sp) - c0006716: 6105 addi sp,sp,32 - c0006718: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12433 + c00067fc: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12463 +} + c00067fe: 60e2 ld ra,24(sp) + c0006800: 8522 mv a0,s0 + c0006802: 6442 ld s0,16(sp) + c0006804: 6105 addi sp,sp,32 + c0006806: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12441 bf_init(ctx->bf_ctx, r); - c000671a: 19053503 ld a0,400(a0) - c000671e: 0ef460ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12434 + c0006808: 19053503 ld a0,400(a0) + c000680c: 1d1460ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12442 if (bf_set_float64(r, JS_VALUE_GET_FLOAT64(val))) { - c0006722: 2502 fld fa0,0(sp) - c0006724: 8522 mv a0,s0 - c0006726: 1d3490ef jal ra,c00500f8 - c000672a: bff1 j c0006706 + c0006810: 2502 fld fa0,0(sp) + c0006812: 8522 mv a0,s0 + c0006814: 2b5490ef jal ra,c00502c8 + c0006818: bff1 j c00067f4 -00000000c000672c : +00000000c000681a : find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000672c: 6d18 ld a4,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000681a: 6d18 ld a4,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000672e: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000681c: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0006730: 040005b7 lui a1,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000681e: 040005b7 lui a1,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0006734: 531c lw a5,32(a4) + c0006822: 531c lw a5,32(a4) js_object_has_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9512 static BOOL js_object_has_name(JSContext *ctx, JSValueConst obj) - c0006736: 862a mv a2,a0 + c0006824: 862a mv a2,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0006738: 15fd addi a1,a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0006826: 15fd addi a1,a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000673a: 0377f793 andi a5,a5,55 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0006828: 0377f793 andi a5,a5,55 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000673e: 0785 addi a5,a5,1 - c0006740: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000682c: 0785 addi a5,a5,1 + c000682e: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0006744: 03700513 li a0,55 + c0006832: 03700513 li a0,55 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0006748: 04070693 addi a3,a4,64 + c0006836: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000674c: 97ba add a5,a5,a4 - c000674e: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000683a: 97ba add a5,a5,a4 + c000683c: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0006752: e399 bnez a5,c0006758 + c0006840: e399 bnez a5,c0006846 js_object_has_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9513 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9521 return FALSE; - c0006754: 4501 li a0,0 - c0006756: 8082 ret + c0006842: 4501 li a0,0 + c0006844: 8082 ret find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0006758: 00379713 slli a4,a5,0x3 - c000675c: 1761 addi a4,a4,-8 - c000675e: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0006846: 00379713 slli a4,a5,0x3 + c000684a: 1761 addi a4,a4,-8 + c000684c: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0006760: 00472803 lw a6,4(a4) - c0006764: 4318 lw a4,0(a4) - c0006766: 00a81963 bne a6,a0,c0006778 + c000684e: 00472803 lw a6,4(a4) + c0006852: 4318 lw a4,0(a4) + c0006854: 00a81963 bne a6,a0,c0006866 js_object_has_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9522 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_NORMAL) - c000676a: 01a7571b srliw a4,a4,0x1a - c000676e: 03077713 andi a4,a4,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9515 + c0006858: 01a7571b srliw a4,a4,0x1a + c000685c: 03077713 andi a4,a4,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9523 return TRUE; - c0006772: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9514 + c0006860: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9522 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_NORMAL) - c0006774: c719 beqz a4,c0006782 - c0006776: 8082 ret + c0006862: c719 beqz a4,c0006870 + c0006864: 8082 ret find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0006778: 00e5f7b3 and a5,a1,a4 - c000677c: 1782 slli a5,a5,0x20 - c000677e: 9381 srli a5,a5,0x20 - c0006780: bfc9 j c0006752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0006866: 00e5f7b3 and a5,a1,a4 + c000686a: 1782 slli a5,a5,0x20 + c000686c: 9381 srli a5,a5,0x20 + c000686e: bfc9 j c0006840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0006782: 7218 ld a4,32(a2) - c0006784: 0792 slli a5,a5,0x4 - c0006786: 17c1 addi a5,a5,-16 - c0006788: 97ba add a5,a5,a4 + c0006870: 7218 ld a4,32(a2) + c0006872: 0792 slli a5,a5,0x4 + c0006874: 17c1 addi a5,a5,-16 + c0006876: 97ba add a5,a5,a4 js_object_has_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9525 if (JS_VALUE_GET_TAG(val) != JS_TAG_STRING) - c000678a: 4794 lw a3,8(a5) - c000678c: 5765 li a4,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9515 + c0006878: 4794 lw a3,8(a5) + c000687a: 5765 li a4,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9523 return TRUE; - c000678e: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9517 + c000687c: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9525 if (JS_VALUE_GET_TAG(val) != JS_TAG_STRING) - c0006790: 00e69763 bne a3,a4,c000679e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9520 + c000687e: 00e69763 bne a3,a4,c000688c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9528 return (p->len != 0); - c0006794: 639c ld a5,0(a5) - c0006796: 43c8 lw a0,4(a5) - c0006798: 1506 slli a0,a0,0x21 - c000679a: 00a03533 snez a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9521 + c0006882: 639c ld a5,0(a5) + c0006884: 43c8 lw a0,4(a5) + c0006886: 1506 slli a0,a0,0x21 + c0006888: 00a03533 snez a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9529 } - c000679e: 8082 ret + c000688c: 8082 ret -00000000c00067a0 : +00000000c000688e : JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c00067a0: 419c lw a5,0(a1) + c000688e: 419c lw a5,0(a1) JS_NewModuleValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28473 { - c00067a2: 1141 addi sp,sp,-16 - c00067a4: 852e mv a0,a1 + c0006890: 1141 addi sp,sp,-16 + c0006892: 852e mv a0,a1 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00067a6: 2785 addiw a5,a5,1 - c00067a8: c19c sw a5,0(a1) + c0006894: 2785 addiw a5,a5,1 + c0006896: c19c sw a5,0(a1) JS_NewModuleValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28467 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28475 } - c00067aa: 55f5 li a1,-3 - c00067ac: 0141 addi sp,sp,16 - c00067ae: 8082 ret + c0006898: 55f5 li a1,-3 + c000689a: 0141 addi sp,sp,16 + c000689c: 8082 ret -00000000c00067b0 : +00000000c000689e : js_def_malloc_usable_size(): - c00067b0: 4501 li a0,0 - c00067b2: 8082 ret + c000689e: 4501 li a0,0 + c00068a0: 8082 ret -00000000c00067b4 : +00000000c00068a2 : js_bytecode_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5415 -{ - c00067b4: 7139 addi sp,sp,-64 - c00067b6: f822 sd s0,48(sp) - c00067b8: f426 sd s1,40(sp) - c00067ba: fc06 sd ra,56(sp) - c00067bc: f04a sd s2,32(sp) - c00067be: ec4e sd s3,24(sp) - c00067c0: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5423 +{ + c00068a2: 7139 addi sp,sp,-64 + c00068a4: f822 sd s0,48(sp) + c00068a6: f426 sd s1,40(sp) + c00068a8: fc06 sd ra,56(sp) + c00068aa: f04a sd s2,32(sp) + c00068ac: ec4e sd s3,24(sp) + c00068ae: e852 sd s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5425 JSVarRef **var_refs = p->u.func.var_refs; - c00067c2: 0385ba03 ld s4,56(a1) # 4000038 <__clzdi2-0xbbffffc8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5418 + c00068b0: 0385ba03 ld s4,56(a1) # 4000038 <__clzdi2-0xbbffffc8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5426 JSFunctionBytecode *b = p->u.func.function_bytecode; - c00067c6: 0305b983 ld s3,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5415 + c00068b4: 0305b983 ld s3,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5423 { - c00067ca: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5421 + c00068b8: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5429 if (p->u.func.home_object) { - c00067cc: 61ac ld a1,64(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5415 + c00068ba: 61ac ld a1,64(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5423 { - c00067ce: e432 sd a2,8(sp) - c00067d0: 84aa mv s1,a0 - c00067d2: 8436 mv s0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5421 + c00068bc: e432 sd a2,8(sp) + c00068be: 84aa mv s1,a0 + c00068c0: 8436 mv s0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5429 if (p->u.func.home_object) { - c00067d4: c191 beqz a1,c00067d8 + c00068c2: c191 beqz a1,c00068c6 JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c00067d6: 9682 jalr a3 + c00068c4: 9682 jalr a3 js_bytecode_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5425 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5433 if (b) { - c00067d8: 02098d63 beqz s3,c0006812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5427 + c00068c6: 02098d63 beqz s3,c0006900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5435 for(i = 0; i < b->closure_var_count; i++) { - c00067dc: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5426 + c00068ca: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5434 if (var_refs) { - c00067de: 020a1563 bnez s4,c0006808 + c00068cc: 020a1563 bnez s4,c00068f6 JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c00067e2: 87a2 mv a5,s0 + c00068d0: 87a2 mv a5,s0 js_bytecode_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5446 } - c00067e4: 7442 ld s0,48(sp) - c00067e6: 70e2 ld ra,56(sp) - c00067e8: 7902 ld s2,32(sp) - c00067ea: 6a42 ld s4,16(sp) + c00068d2: 7442 ld s0,48(sp) + c00068d4: 70e2 ld ra,56(sp) + c00068d6: 7902 ld s2,32(sp) + c00068d8: 6a42 ld s4,16(sp) JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c00067ec: 85ce mv a1,s3 - c00067ee: 8526 mv a0,s1 + c00068da: 85ce mv a1,s3 + c00068dc: 8526 mv a0,s1 js_bytecode_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5446 } - c00067f0: 69e2 ld s3,24(sp) - c00067f2: 74a2 ld s1,40(sp) - c00067f4: 6121 addi sp,sp,64 + c00068de: 69e2 ld s3,24(sp) + c00068e0: 74a2 ld s1,40(sp) + c00068e2: 6121 addi sp,sp,64 JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c00067f6: 8782 jr a5 + c00068e4: 8782 jr a5 js_bytecode_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5436 JSVarRef *var_ref = var_refs[i]; - c00067f8: 00391793 slli a5,s2,0x3 - c00067fc: 97d2 add a5,a5,s4 - c00067fe: 638c ld a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5429 + c00068e6: 00391793 slli a5,s2,0x3 + c00068ea: 97d2 add a5,a5,s4 + c00068ec: 638c ld a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5437 if (var_ref) { - c0006800: c199 beqz a1,c0006806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5430 + c00068ee: c199 beqz a1,c00068f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5438 mark_func(rt, &var_ref->header); - c0006802: 8526 mv a0,s1 - c0006804: 9402 jalr s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5427 (discriminator 2) + c00068f0: 8526 mv a0,s1 + c00068f2: 9402 jalr s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5435 (discriminator 2) for(i = 0; i < b->closure_var_count; i++) { - c0006806: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5427 (discriminator 1) - c0006808: 05c9a783 lw a5,92(s3) - c000680c: fef946e3 blt s2,a5,c00067f8 - c0006810: bfc9 j c00067e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5438 + c00068f4: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5435 (discriminator 1) + c00068f6: 05c9a783 lw a5,92(s3) + c00068fa: fef946e3 blt s2,a5,c00068e6 + c00068fe: bfc9 j c00068d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5446 } - c0006812: 70e2 ld ra,56(sp) - c0006814: 7442 ld s0,48(sp) - c0006816: 74a2 ld s1,40(sp) - c0006818: 7902 ld s2,32(sp) - c000681a: 69e2 ld s3,24(sp) - c000681c: 6a42 ld s4,16(sp) - c000681e: 6121 addi sp,sp,64 - c0006820: 8082 ret + c0006900: 70e2 ld ra,56(sp) + c0006902: 7442 ld s0,48(sp) + c0006904: 74a2 ld s1,40(sp) + c0006906: 7902 ld s2,32(sp) + c0006908: 69e2 ld s3,24(sp) + c000690a: 6a42 ld s4,16(sp) + c000690c: 6121 addi sp,sp,64 + c000690e: 8082 ret -00000000c0006822 : +00000000c0006910 : js_typed_array_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54861 static void js_typed_array_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func) { JSObject *p = JS_VALUE_GET_OBJ(val); JSTypedArray *ta = p->u.typed_array; - c0006822: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54851 + c0006910: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54859 { - c0006824: 1141 addi sp,sp,-16 - c0006826: e02e sd a1,0(sp) - c0006828: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54854 + c0006912: 1141 addi sp,sp,-16 + c0006914: e02e sd a1,0(sp) + c0006916: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54862 if (ta) { - c000682a: c781 beqz a5,c0006832 + c0006918: c781 beqz a5,c0006920 JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c000682c: 6f8c ld a1,24(a5) + c000691a: 6f8c ld a1,24(a5) js_typed_array_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54865 JS_MarkValue(rt, JS_MKPTR(JS_TAG_OBJECT, ta->buffer), mark_func); } } - c000682e: 0141 addi sp,sp,16 + c000691c: 0141 addi sp,sp,16 JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c0006830: 8682 jr a3 + c000691e: 8682 jr a3 js_typed_array_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54865 } - c0006832: 0141 addi sp,sp,16 - c0006834: 8082 ret + c0006920: 0141 addi sp,sp,16 + c0006922: 8082 ret -00000000c0006836 : +00000000c0006924 : find_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21707 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21715 for(i = fd->var_count; i-- > 0;) { - c0006836: 09c5a783 lw a5,156(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21707 (discriminator 1) - c000683a: fff7851b addiw a0,a5,-1 - c000683e: 00f04a63 bgtz a5,c0006852 + c0006924: 09c5a783 lw a5,156(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21715 (discriminator 1) + c0006928: fff7851b addiw a0,a5,-1 + c000692c: 00f04a63 bgtz a5,c0006940 find_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21697 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21705 for(i = fd->arg_count; i-- > 0;) { - c0006842: 0ac5a503 lw a0,172(a1) - c0006846: 87aa mv a5,a0 - c0006848: 357d addiw a0,a0,-1 - c000684a: 00f04f63 bgtz a5,c0006868 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21701 + c0006930: 0ac5a503 lw a0,172(a1) + c0006934: 87aa mv a5,a0 + c0006936: 357d addiw a0,a0,-1 + c0006938: 00f04f63 bgtz a5,c0006956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21709 return -1; - c000684e: 557d li a0,-1 + c000693c: 557d li a0,-1 find_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21720 } - c0006850: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21708 + c000693e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21716 if (fd->vars[i].var_name == name && fd->vars[i].scope_level == 0) - c0006852: 69d8 ld a4,144(a1) - c0006854: 00451793 slli a5,a0,0x4 - c0006858: 97ba add a5,a5,a4 - c000685a: 4398 lw a4,0(a5) - c000685c: 00c71463 bne a4,a2,c0006864 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21708 (discriminator 1) - c0006860: 43dc lw a5,4(a5) - c0006862: d7fd beqz a5,c0006850 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21705 (discriminator 1) -{ - c0006864: 87aa mv a5,a0 - c0006866: bfd1 j c000683a + c0006940: 69d8 ld a4,144(a1) + c0006942: 00451793 slli a5,a0,0x4 + c0006946: 97ba add a5,a5,a4 + c0006948: 4398 lw a4,0(a5) + c000694a: 00c71463 bne a4,a2,c0006952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21716 (discriminator 1) + c000694e: 43dc lw a5,4(a5) + c0006950: d7fd beqz a5,c000693e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21713 (discriminator 1) +{ + c0006952: 87aa mv a5,a0 + c0006954: bfd1 j c0006928 find_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21698 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21706 if (fd->args[i].var_name == name) - c0006868: 71dc ld a5,160(a1) - c000686a: 00451713 slli a4,a0,0x4 - c000686e: 97ba add a5,a5,a4 - c0006870: 439c lw a5,0(a5) - c0006872: fcc79ae3 bne a5,a2,c0006846 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21699 + c0006956: 71dc ld a5,160(a1) + c0006958: 00451713 slli a4,a0,0x4 + c000695c: 97ba add a5,a5,a4 + c000695e: 439c lw a5,0(a5) + c0006960: fcc79ae3 bne a5,a2,c0006934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21707 return i | ARGUMENT_VAR_OFFSET; - c0006876: 200007b7 lui a5,0x20000 - c000687a: 8d5d or a0,a0,a5 - c000687c: 8082 ret + c0006964: 200007b7 lui a5,0x20000 + c0006968: 8d5d or a0,a0,a5 + c000696a: 8082 ret -00000000c000687e : +00000000c000696c : days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49440 floor_div(y - 1901, 100) + floor_div(y - 1601, 400); - c000687e: 9bf50793 addi a5,a0,-1601 + c000696c: 9bf50793 addi a5,a0,-1601 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c0006882: 19000813 li a6,400 - c0006886: 0307e833 rem a6,a5,a6 + c0006970: 19000813 li a6,400 + c0006974: 0307e833 rem a6,a5,a6 days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49431 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49439 return 365 * (y - 1970) + floor_div(y - 1969, 4) - - c000688a: 84f50693 addi a3,a0,-1969 + c0006978: 84f50693 addi a3,a0,-1969 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c000688e: 4611 li a2,4 + c000697c: 4611 li a2,4 days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49440 floor_div(y - 1901, 100) + floor_div(y - 1601, 400); - c0006890: 89350713 addi a4,a0,-1901 + c000697e: 89350713 addi a4,a0,-1901 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c0006894: 06400593 li a1,100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 + c0006982: 06400593 li a1,100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c0006898: 4881 li a7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 + c0006986: 4881 li a7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c000689a: 02c6e633 rem a2,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 + c0006988: 02c6e633 rem a2,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c000689e: 410787b3 sub a5,a5,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 + c000698c: 410787b3 sub a5,a5,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c00068a2: 02b765b3 rem a1,a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 + c0006990: 02b765b3 rem a1,a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c00068a6: 00085463 bgez a6,c00068ae - c00068aa: 19000893 li a7,400 - c00068ae: 19000813 li a6,400 - c00068b2: 411787b3 sub a5,a5,a7 - c00068b6: 8e91 sub a3,a3,a2 - c00068b8: 0307c7b3 div a5,a5,a6 + c0006994: 00085463 bgez a6,c000699c + c0006998: 19000893 li a7,400 + c000699c: 19000813 li a6,400 + c00069a0: 411787b3 sub a5,a5,a7 + c00069a4: 8e91 sub a3,a3,a2 + c00069a6: 0307c7b3 div a5,a5,a6 days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49431 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49439 return 365 * (y - 1970) + floor_div(y - 1969, 4) - - c00068bc: 16d00813 li a6,365 - c00068c0: 03050533 mul a0,a0,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 + c00069aa: 16d00813 li a6,365 + c00069ae: 03050533 mul a0,a0,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49440 floor_div(y - 1901, 100) + floor_div(y - 1601, 400); - c00068c4: fff50837 lui a6,0xfff50 - c00068c8: 73680813 addi a6,a6,1846 # fffffffffff50736 <_ebss+0xffffffff3fe4f610> - c00068cc: 9542 add a0,a0,a6 - c00068ce: 97aa add a5,a5,a0 + c00069b2: fff50837 lui a6,0xfff50 + c00069b6: 73680813 addi a6,a6,1846 # fffffffffff50736 <_ebss+0xffffffff3fe4f610> + c00069ba: 9542 add a0,a0,a6 + c00069bc: 97aa add a5,a5,a0 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c00068d0: 43d65513 srai a0,a2,0x3d - c00068d4: 8911 andi a0,a0,4 - c00068d6: 40a68533 sub a0,a3,a0 - c00068da: 4691 li a3,4 - c00068dc: 02d54533 div a0,a0,a3 + c00069be: 43d65513 srai a0,a2,0x3d + c00069c2: 8911 andi a0,a0,4 + c00069c4: 40a68533 sub a0,a3,a0 + c00069c8: 4691 li a3,4 + c00069ca: 02d54533 div a0,a0,a3 days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49440 floor_div(y - 1901, 100) + floor_div(y - 1601, 400); - c00068e0: 97aa add a5,a5,a0 + c00069ce: 97aa add a5,a5,a0 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c00068e2: 40b70533 sub a0,a4,a1 - c00068e6: 4701 li a4,0 - c00068e8: 0005d463 bgez a1,c00068f0 - c00068ec: 06400713 li a4,100 - c00068f0: 8d19 sub a0,a0,a4 - c00068f2: 06400713 li a4,100 - c00068f6: 02e54533 div a0,a0,a4 + c00069d0: 40b70533 sub a0,a4,a1 + c00069d4: 4701 li a4,0 + c00069d6: 0005d463 bgez a1,c00069de + c00069da: 06400713 li a4,100 + c00069de: 8d19 sub a0,a0,a4 + c00069e0: 06400713 li a4,100 + c00069e4: 02e54533 div a0,a0,a4 days_from_year(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49441 } - c00068fa: 40a78533 sub a0,a5,a0 - c00068fe: 8082 ret + c00069e8: 40a78533 sub a0,a5,a0 + c00069ec: 8082 ret -00000000c0006900 : +00000000c00069ee : set_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49536 static double set_date_fields(double fields[], int is_local) { - c0006900: 711d addi sp,sp,-96 - c0006902: e8a2 sd s0,80(sp) - c0006904: e0ca sd s2,64(sp) - c0006906: fc4e sd s3,56(sp) - c0006908: ec86 sd ra,88(sp) - c000690a: e4a6 sd s1,72(sp) - c000690c: f852 sd s4,48(sp) - c000690e: f456 sd s5,40(sp) - c0006910: f05a sd s6,32(sp) - c0006912: ac22 fsd fs0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49533 + c00069ee: 711d addi sp,sp,-96 + c00069f0: e8a2 sd s0,80(sp) + c00069f2: e0ca sd s2,64(sp) + c00069f4: fc4e sd s3,56(sp) + c00069f6: ec86 sd ra,88(sp) + c00069f8: e4a6 sd s1,72(sp) + c00069fa: f852 sd s4,48(sp) + c00069fc: f456 sd s5,40(sp) + c00069fe: f05a sd s6,32(sp) + c0006a00: ac22 fsd fs0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49541 m1 = fields[1]; - c0006914: 2500 fld fs0,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49534 + c0006a02: 2500 fld fs0,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 m = fmod(m1, 12); - c0006916: 0006e797 auipc a5,0x6e - c000691a: ea27b587 fld fa1,-350(a5) # c00747b8 <_erodata+0x38> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49528 + c0006a04: 0006e797 auipc a5,0x6e + c0006a08: 0147b587 fld fa1,20(a5) # c0074a18 <_erodata+0x38> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49536 static double set_date_fields(double fields[], int is_local) { - c000691e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49534 + c0006a0c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 m = fmod(m1, 12); - c0006920: 22840553 fmv.d fa0,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49528 + c0006a0e: 22840553 fmv.d fa0,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49536 static double set_date_fields(double fields[], int is_local) { - c0006924: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49534 + c0006a12: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 m = fmod(m1, 12); - c0006926: 014510ef jal ra,c005793a - c000692a: c20517d3 fcvt.w.d a5,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49535 + c0006a14: 0f6510ef jal ra,c0057b0a + c0006a18: c20517d3 fcvt.w.d a5,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49543 if (m < 0) - c000692e: 0006e717 auipc a4,0x6e - c0006932: e8a70713 addi a4,a4,-374 # c00747b8 <_erodata+0x38> - c0006936: 230c fld fa1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49534 + c0006a1c: 0006e717 auipc a4,0x6e + c0006a20: ffc70713 addi a4,a4,-4 # c0074a18 <_erodata+0x38> + c0006a24: 230c fld fa1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 m = fmod(m1, 12); - c0006938: 0007899b sext.w s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49535 + c0006a26: 0007899b sext.w s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49543 if (m < 0) - c000693c: 0009d463 bgez s3,c0006944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49536 + c0006a2a: 0009d463 bgez s3,c0006a32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49544 m += 12; - c0006940: 00c7899b addiw s3,a5,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49537 + c0006a2e: 00c7899b addiw s3,a5,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49545 y = (int64_t)(fields[0] + floor(m1 / 12)); - c0006944: 1ab47553 fdiv.d fa0,fs0,fa1 - c0006948: 00060a17 auipc s4,0x60 - c000694c: 0e0a0a13 addi s4,s4,224 # c0066a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49540 + c0006a32: 1ab47553 fdiv.d fa0,fs0,fa1 + c0006a36: 00060a17 auipc s4,0x60 + c0006a3a: 252a0a13 addi s4,s4,594 # c0066c88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49548 for(i = 0; i < m; i++) { - c0006950: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 + c0006a3e: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49550 if (i == 1) - c0006952: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49537 + c0006a40: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49545 y = (int64_t)(fields[0] + floor(m1 / 12)); - c0006954: 6d0510ef jal ra,c0058024 - c0006958: 201c fld fa5,0(s0) - c000695a: 02f57553 fadd.d fa0,fa0,fa5 - c000695e: c2251ad3 fcvt.l.d s5,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49538 + c0006a42: 7b2510ef jal ra,c00581f4 + c0006a46: 201c fld fa5,0(s0) + c0006a48: 02f57553 fadd.d fa0,fa0,fa5 + c0006a4c: c2251ad3 fcvt.l.d s5,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49546 days = days_from_year(y); - c0006962: 8556 mv a0,s5 - c0006964: f1bff0ef jal ra,c000687e - c0006968: d2257453 fcvt.d.l fs0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49540 (discriminator 1) + c0006a50: 8556 mv a0,s5 + c0006a52: f1bff0ef jal ra,c000696c + c0006a56: d2257453 fcvt.d.l fs0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49548 (discriminator 1) for(i = 0; i < m; i++) { - c000696c: 0934c663 blt s1,s3,c00069f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49546 + c0006a5a: 0934c663 blt s1,s3,c0006ae6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49554 days += fields[2] - 1; - c0006970: 281c fld fa5,16(s0) - c0006972: 0006e797 auipc a5,0x6e - c0006976: e267b507 fld fa0,-474(a5) # c0074798 <_erodata+0x18> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49547 + c0006a5e: 281c fld fa5,16(s0) + c0006a60: 0006e797 auipc a5,0x6e + c0006a64: f987b507 fld fa0,-104(a5) # c00749f8 <_erodata+0x18> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49555 h = fields[3] * 3600000 + fields[4] * 60000 + - c000697a: 0006e797 auipc a5,0x6e - c000697e: e467b707 fld fa4,-442(a5) # c00747c0 <_erodata+0x40> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49546 + c0006a68: 0006e797 auipc a5,0x6e + c0006a6c: fb87b707 fld fa4,-72(a5) # c0074a20 <_erodata+0x40> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49554 days += fields[2] - 1; - c0006982: 0aa7f553 fsub.d fa0,fa5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49547 + c0006a70: 0aa7f553 fsub.d fa0,fa5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49555 h = fields[3] * 3600000 + fields[4] * 60000 + - c0006986: 301c fld fa5,32(s0) - c0006988: 0006e797 auipc a5,0x6e - c000698c: e407b687 fld fa3,-448(a5) # c00747c8 <_erodata+0x48> - c0006990: 12e7f7d3 fmul.d fa5,fa5,fa4 - c0006994: 2c18 fld fa4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49546 + c0006a74: 301c fld fa5,32(s0) + c0006a76: 0006e797 auipc a5,0x6e + c0006a7a: fb27b687 fld fa3,-78(a5) # c0074a28 <_erodata+0x48> + c0006a7e: 12e7f7d3 fmul.d fa5,fa5,fa4 + c0006a82: 2c18 fld fa4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49554 days += fields[2] - 1; - c0006996: 02857553 fadd.d fa0,fa0,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49547 + c0006a84: 02857553 fadd.d fa0,fa0,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49555 h = fields[3] * 3600000 + fields[4] * 60000 + - c000699a: 7ad77743 fmadd.d fa4,fa4,fa3,fa5 - c000699e: 341c fld fa5,40(s0) - c00069a0: 0006e797 auipc a5,0x6e - c00069a4: de07b687 fld fa3,-544(a5) # c0074780 <_erodata> - c00069a8: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 - c00069ac: 3818 fld fa4,48(s0) - c00069ae: 02e7f7d3 fadd.d fa5,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49549 + c0006a88: 7ad77743 fmadd.d fa4,fa4,fa3,fa5 + c0006a8c: 341c fld fa5,40(s0) + c0006a8e: 0006e797 auipc a5,0x6e + c0006a92: f527b687 fld fa3,-174(a5) # c00749e0 <_erodata> + c0006a96: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 + c0006a9a: 3818 fld fa4,48(s0) + c0006a9c: 02e7f7d3 fadd.d fa5,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49557 d = days * 86400000 + h; - c00069b2: 0006e797 auipc a5,0x6e - c00069b6: e1e7b707 fld fa4,-482(a5) # c00747d0 <_erodata+0x50> - c00069ba: 7ae57543 fmadd.d fa0,fa0,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49550 + c0006aa0: 0006e797 auipc a5,0x6e + c0006aa4: f907b707 fld fa4,-112(a5) # c0074a30 <_erodata+0x50> + c0006aa8: 7ae57543 fmadd.d fa0,fa0,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49558 if (is_local) - c00069be: 02090163 beqz s2,c00069e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49551 + c0006aac: 02090163 beqz s2,c0006ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49559 d += getTimezoneOffset(d) * 60000; - c00069c2: c2251553 fcvt.l.d a0,fa0,rtz - c00069c6: a42a fsd fa0,8(sp) - c00069c8: cebfe0ef jal ra,c00056b2 - c00069cc: 67bd lui a5,0xf - c00069ce: a607879b addiw a5,a5,-1440 - c00069d2: 02a787bb mulw a5,a5,a0 - c00069d6: 2522 fld fa0,8(sp) - c00069d8: d20787d3 fcvt.d.w fa5,a5 - c00069dc: 02f57553 fadd.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49553 -} - c00069e0: 6446 ld s0,80(sp) - c00069e2: 60e6 ld ra,88(sp) - c00069e4: 64a6 ld s1,72(sp) - c00069e6: 6906 ld s2,64(sp) - c00069e8: 79e2 ld s3,56(sp) - c00069ea: 7a42 ld s4,48(sp) - c00069ec: 7aa2 ld s5,40(sp) - c00069ee: 7b02 ld s6,32(sp) - c00069f0: 2462 fld fs0,24(sp) - c00069f2: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49552 + c0006ab0: c2251553 fcvt.l.d a0,fa0,rtz + c0006ab4: a42a fsd fa0,8(sp) + c0006ab6: cebfe0ef jal ra,c00057a0 + c0006aba: 67bd lui a5,0xf + c0006abc: a607879b addiw a5,a5,-1440 + c0006ac0: 02a787bb mulw a5,a5,a0 + c0006ac4: 2522 fld fa0,8(sp) + c0006ac6: d20787d3 fcvt.d.w fa5,a5 + c0006aca: 02f57553 fadd.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49561 +} + c0006ace: 6446 ld s0,80(sp) + c0006ad0: 60e6 ld ra,88(sp) + c0006ad2: 64a6 ld s1,72(sp) + c0006ad4: 6906 ld s2,64(sp) + c0006ad6: 79e2 ld s3,56(sp) + c0006ad8: 7a42 ld s4,48(sp) + c0006ada: 7aa2 ld s5,40(sp) + c0006adc: 7b02 ld s6,32(sp) + c0006ade: 2462 fld fs0,24(sp) + c0006ae0: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49560 return time_clip(d); - c00069f4: a0aff06f j c0005bfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49541 + c0006ae2: a0aff06f j c0005cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49549 md = month_days[i]; - c00069f8: 000a2503 lw a0,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49542 + c0006ae6: 000a2503 lw a0,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49550 if (i == 1) - c00069fc: 01649763 bne s1,s6,c0006a0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49543 + c0006aea: 01649763 bne s1,s6,c0006af8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49551 md += days_in_year(y) - 365; - c0006a00: 8556 mv a0,s5 - c0006a02: ebffd0ef jal ra,c00048c0 - c0006a06: eaf5051b addiw a0,a0,-337 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49544 (discriminator 2) + c0006aee: 8556 mv a0,s5 + c0006af0: dd1fd0ef jal ra,c00048c0 + c0006af4: eaf5051b addiw a0,a0,-337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49552 (discriminator 2) days += md; - c0006a0a: d20507d3 fcvt.d.w fa5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49540 (discriminator 2) + c0006af8: d20507d3 fcvt.d.w fa5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49548 (discriminator 2) for(i = 0; i < m; i++) { - c0006a0e: 2485 addiw s1,s1,1 - c0006a10: 0a11 addi s4,s4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49544 (discriminator 2) + c0006afc: 2485 addiw s1,s1,1 + c0006afe: 0a11 addi s4,s4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49552 (discriminator 2) days += md; - c0006a12: 02f47453 fadd.d fs0,fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49540 (discriminator 2) + c0006b00: 02f47453 fadd.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49548 (discriminator 2) for(i = 0; i < m; i++) { - c0006a16: bf99 j c000696c + c0006b04: bf99 j c0006a5a -00000000c0006a18 : +00000000c0006b06 : js_string_memcmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4176 { - c0006a18: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4171 + c0006b06: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4179 if (likely(!p1->is_wide_char)) { - c0006a1a: 00472883 lw a7,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4172 + c0006b08: 00472883 lw a7,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4180 if (likely(!p2->is_wide_char)) - c0006a1e: 41dc lw a5,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4168 + c0006b0c: 41dc lw a5,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4176 { - c0006a20: 86ae mv a3,a1 - c0006a22: 8832 mv a6,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4173 + c0006b0e: 86ae mv a3,a1 + c0006b10: 8832 mv a6,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4181 res = memcmp(p1->u.str8, p2->u.str8, len); - c0006a24: 0541 addi a0,a0,16 - c0006a26: 05c1 addi a1,a1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4171 + c0006b12: 0541 addi a0,a0,16 + c0006b14: 05c1 addi a1,a1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4179 if (likely(!p1->is_wide_char)) { - c0006a28: 0208c963 bltz a7,c0006a5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4172 + c0006b16: 0208c963 bltz a7,c0006b48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4180 if (likely(!p2->is_wide_char)) - c0006a2c: 4681 li a3,0 - c0006a2e: 0007ce63 bltz a5,c0006a4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4173 + c0006b1a: 4681 li a3,0 + c0006b1c: 0007ce63 bltz a5,c0006b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4181 res = memcmp(p1->u.str8, p2->u.str8, len); - c0006a32: 5d14f06f j c0056802 + c0006b20: 6b34f06f j c00569d2 memcmp16_8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4149 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4157 c = src1[i] - src2[i]; - c0006a36: 00d70633 add a2,a4,a3 - c0006a3a: 0005d783 lhu a5,0(a1) - c0006a3e: 01064503 lbu a0,16(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 + c0006b24: 00d70633 add a2,a4,a3 + c0006b28: 0005d783 lhu a5,0(a1) + c0006b2c: 01064503 lbu a0,16(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4158 if (c != 0) - c0006a42: 0685 addi a3,a3,1 - c0006a44: 0589 addi a1,a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4149 + c0006b30: 0685 addi a3,a3,1 + c0006b32: 0589 addi a1,a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4157 c = src1[i] - src2[i]; - c0006a46: 9f89 subw a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 + c0006b34: 9f89 subw a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4158 if (c != 0) - c0006a48: e791 bnez a5,c0006a54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4148 + c0006b36: e791 bnez a5,c0006b42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4156 for(i = 0; i < len; i++) { - c0006a4a: 0006879b sext.w a5,a3 - c0006a4e: ff07c4e3 blt a5,a6,c0006a36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4153 + c0006b38: 0006879b sext.w a5,a3 + c0006b3c: ff07c4e3 blt a5,a6,c0006b24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4161 return 0; - c0006a52: 4781 li a5,0 + c0006b40: 4781 li a5,0 js_string_memcmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4175 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4183 res = -memcmp16_8(p2->u.str16, p1->u.str8, len); - c0006a54: 40f0053b negw a0,a5 - c0006a58: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4177 + c0006b42: 40f0053b negw a0,a5 + c0006b46: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4185 if (!p2->is_wide_char) - c0006a5a: 0407c663 bltz a5,c0006aa6 - c0006a5e: 872a mv a4,a0 - c0006a60: 4601 li a2,0 + c0006b48: 0407c663 bltz a5,c0006b94 + c0006b4c: 872a mv a4,a0 + c0006b4e: 4601 li a2,0 memcmp16_8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4156 for(i = 0; i < len; i++) { - c0006a62: 0006079b sext.w a5,a2 - c0006a66: 0107c463 blt a5,a6,c0006a6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4153 + c0006b50: 0006079b sext.w a5,a2 + c0006b54: 0107c463 blt a5,a6,c0006b5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4161 return 0; - c0006a6a: 4501 li a0,0 - c0006a6c: a821 j c0006a84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4149 + c0006b58: 4501 li a0,0 + c0006b5a: a821 j c0006b72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4157 c = src1[i] - src2[i]; - c0006a6e: 00c685b3 add a1,a3,a2 - c0006a72: 00075783 lhu a5,0(a4) - c0006a76: 0105c503 lbu a0,16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 + c0006b5c: 00c685b3 add a1,a3,a2 + c0006b60: 00075783 lhu a5,0(a4) + c0006b64: 0105c503 lbu a0,16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4158 if (c != 0) - c0006a7a: 0605 addi a2,a2,1 - c0006a7c: 0709 addi a4,a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4149 + c0006b68: 0605 addi a2,a2,1 + c0006b6a: 0709 addi a4,a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4157 c = src1[i] - src2[i]; - c0006a7e: 40a7853b subw a0,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 + c0006b6c: 40a7853b subw a0,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4158 if (c != 0) - c0006a82: d165 beqz a0,c0006a62 + c0006b70: d165 beqz a0,c0006b50 js_string_memcmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4191 } - c0006a84: 8082 ret + c0006b72: 8082 ret memcmp16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4168 c = src1[i] - src2[i]; - c0006a86: 00c707b3 add a5,a4,a2 - c0006a8a: 00c68533 add a0,a3,a2 - c0006a8e: 0007d783 lhu a5,0(a5) # f000 <__clzdi2-0xbfff1000> - c0006a92: 00055503 lhu a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4161 + c0006b74: 00c707b3 add a5,a4,a2 + c0006b78: 00c68533 add a0,a3,a2 + c0006b7c: 0007d783 lhu a5,0(a5) # f000 <__clzdi2-0xbfff1000> + c0006b80: 00055503 lhu a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4169 if (c != 0) - c0006a96: 0609 addi a2,a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4160 + c0006b84: 0609 addi a2,a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4168 c = src1[i] - src2[i]; - c0006a98: 40a7853b subw a0,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4161 + c0006b86: 40a7853b subw a0,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4169 if (c != 0) - c0006a9c: f565 bnez a0,c0006a84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4159 + c0006b8a: f565 bnez a0,c0006b72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4167 for(i = 0; i < len; i++) { - c0006a9e: 2585 addiw a1,a1,1 - c0006aa0: feb813e3 bne a6,a1,c0006a86 - c0006aa4: b7d9 j c0006a6a + c0006b8c: 2585 addiw a1,a1,1 + c0006b8e: feb813e3 bne a6,a1,c0006b74 + c0006b92: b7d9 j c0006b58 js_string_memcmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4159 - c0006aa6: 4641 li a2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4167 + c0006b94: 4641 li a2,16 memcmp16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4159 - c0006aa8: 4581 li a1,0 - c0006aaa: bfdd j c0006aa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4167 + c0006b96: 4581 li a1,0 + c0006b98: bfdd j c0006b8e -00000000c0006aac : +00000000c0006b9a : js_string_compare(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4194 static int js_string_compare(JSContext *ctx, - c0006aac: 7179 addi sp,sp,-48 - c0006aae: ec26 sd s1,24(sp) - c0006ab0: e84a sd s2,16(sp) - c0006ab2: e44e sd s3,8(sp) - c0006ab4: f406 sd ra,40(sp) - c0006ab6: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4190 + c0006b9a: 7179 addi sp,sp,-48 + c0006b9c: ec26 sd s1,24(sp) + c0006b9e: e84a sd s2,16(sp) + c0006ba0: e44e sd s3,8(sp) + c0006ba2: f406 sd ra,40(sp) + c0006ba4: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4198 len = min_int(p1->len, p2->len); - c0006ab8: 4140 lw s0,4(a0) - c0006aba: 0045a983 lw s3,4(a1) - c0006abe: 800007b7 lui a5,0x80000 - c0006ac2: fff7c793 not a5,a5 - c0006ac6: 00f474b3 and s1,s0,a5 - c0006aca: 00f9f7b3 and a5,s3,a5 - c0006ace: 0007891b sext.w s2,a5 - c0006ad2: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4191 + c0006ba6: 4140 lw s0,4(a0) + c0006ba8: 0045a983 lw s3,4(a1) + c0006bac: 800007b7 lui a5,0x80000 + c0006bb0: fff7c793 not a5,a5 + c0006bb4: 00f474b3 and s1,s0,a5 + c0006bb8: 00f9f7b3 and a5,s3,a5 + c0006bbc: 0007891b sext.w s2,a5 + c0006bc0: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4199 res = js_string_memcmp(p1, p2, len); - c0006ad4: 0009061b sext.w a2,s2 - c0006ad8: 00994463 blt s2,s1,c0006ae0 - c0006adc: 0004861b sext.w a2,s1 - c0006ae0: f39ff0ef jal ra,c0006a18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4192 + c0006bc2: 0009061b sext.w a2,s2 + c0006bc6: 00994463 blt s2,s1,c0006bce + c0006bca: 0004861b sext.w a2,s1 + c0006bce: f39ff0ef jal ra,c0006b06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4200 if (res == 0) { - c0006ae4: e909 bnez a0,c0006af6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4193 + c0006bd2: e909 bnez a0,c0006be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4201 if (p1->len == p2->len) - c0006ae6: 01344433 xor s0,s0,s3 - c0006aea: 1406 slli s0,s0,0x21 - c0006aec: c409 beqz s0,c0006af6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4196 + c0006bd4: 01344433 xor s0,s0,s3 + c0006bd8: 1406 slli s0,s0,0x21 + c0006bda: c409 beqz s0,c0006be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4204 res = -1; - c0006aee: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4195 + c0006bdc: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4203 else if (p1->len < p2->len) - c0006af0: 0124e363 bltu s1,s2,c0006af6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4198 + c0006bde: 0124e363 bltu s1,s2,c0006be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4206 res = 1; - c0006af4: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4201 -} - c0006af6: 70a2 ld ra,40(sp) - c0006af8: 7402 ld s0,32(sp) - c0006afa: 64e2 ld s1,24(sp) - c0006afc: 6942 ld s2,16(sp) - c0006afe: 69a2 ld s3,8(sp) - c0006b00: 6145 addi sp,sp,48 - c0006b02: 8082 ret - -00000000c0006b04 : + c0006be2: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4209 +} + c0006be4: 70a2 ld ra,40(sp) + c0006be6: 7402 ld s0,32(sp) + c0006be8: 64e2 ld s1,24(sp) + c0006bea: 6942 ld s2,16(sp) + c0006bec: 69a2 ld s3,8(sp) + c0006bee: 6145 addi sp,sp,48 + c0006bf0: 8082 ret + +00000000c0006bf2 : print_hex(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53 void print_hex(uint64_t n) { - c0006b04: 7179 addi sp,sp,-48 - c0006b06: f022 sd s0,32(sp) + c0006bf2: 7179 addi sp,sp,-48 + c0006bf4: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54 const char dec_to_hex[] = "0123456789ABCDEF"; - c0006b08: 4645 li a2,17 + c0006bf6: 4645 li a2,17 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53 void print_hex(uint64_t n) { - c0006b0a: 842a mv s0,a0 + c0006bf8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54 const char dec_to_hex[] = "0123456789ABCDEF"; - c0006b0c: 00056597 auipc a1,0x56 - c0006b10: 01c58593 addi a1,a1,28 # c005cb28 - c0006b14: 0028 addi a0,sp,8 + c0006bfa: 00056597 auipc a1,0x56 + c0006bfe: 15e58593 addi a1,a1,350 # c005cd58 + c0006c02: 0028 addi a0,sp,8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53 void print_hex(uint64_t n) { - c0006b16: f406 sd ra,40(sp) + c0006c04: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54 const char dec_to_hex[] = "0123456789ABCDEF"; - c0006b18: 6c34f0ef jal ra,c00569da + c0006c06: 7a54f0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:56 for (int i = 0; i < 16; i++) { - c0006b1c: 000fa717 auipc a4,0xfa - c0006b20: 59470713 addi a4,a4,1428 # c01010b0 - c0006b24: 000fa697 auipc a3,0xfa - c0006b28: 57c68693 addi a3,a3,1404 # c01010a0 <__dso_handle> + c0006c0a: 000fa717 auipc a4,0xfa + c0006c0e: 4a670713 addi a4,a4,1190 # c01010b0 + c0006c12: 000fa697 auipc a3,0xfa + c0006c16: 48e68693 addi a3,a3,1166 # c01010a0 <__dso_handle> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:57 (discriminator 3) const uint8_t d = n & 0xf; - c0006b2c: 00f47793 andi a5,s0,15 + c0006c1a: 00f47793 andi a5,s0,15 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:59 (discriminator 3) hex_str[15 - i] = dec_to_hex[d]; - c0006b30: 1010 addi a2,sp,32 - c0006b32: 97b2 add a5,a5,a2 - c0006b34: fe87c783 lbu a5,-24(a5) # ffffffff7fffffe8 <_ebss+0xfffffffebfefeec2> + c0006c1e: 1010 addi a2,sp,32 + c0006c20: 97b2 add a5,a5,a2 + c0006c22: fe87c783 lbu a5,-24(a5) # ffffffff7fffffe8 <_ebss+0xfffffffebfefeec2> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:56 (discriminator 3) for (int i = 0; i < 16; i++) { - c0006b38: 177d addi a4,a4,-1 + c0006c26: 177d addi a4,a4,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:59 (discriminator 3) hex_str[15 - i] = dec_to_hex[d]; - c0006b3a: 8011 srli s0,s0,0x4 - c0006b3c: 00f70823 sb a5,16(a4) + c0006c28: 8011 srli s0,s0,0x4 + c0006c2a: 00f70823 sb a5,16(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:56 (discriminator 3) for (int i = 0; i < 16; i++) { - c0006b40: fed716e3 bne a4,a3,c0006b2c + c0006c2e: fed716e3 bne a4,a3,c0006c1a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:63 } - c0006b44: 7402 ld s0,32(sp) - c0006b46: 70a2 ld ra,40(sp) + c0006c32: 7402 ld s0,32(sp) + c0006c34: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:61 hex_str[16] = 0; - c0006b48: 000fa797 auipc a5,0xfa - c0006b4c: 56078c23 sb zero,1400(a5) # c01010c0 + c0006c36: 000fa797 auipc a5,0xfa + c0006c3a: 48078523 sb zero,1162(a5) # c01010c0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:62 write(1, hex_str, 16); - c0006b50: 4641 li a2,16 - c0006b52: 000fa597 auipc a1,0xfa - c0006b56: 55e58593 addi a1,a1,1374 # c01010b0 - c0006b5a: 4505 li a0,1 + c0006c3e: 4641 li a2,16 + c0006c40: 000fa597 auipc a1,0xfa + c0006c44: 47058593 addi a1,a1,1136 # c01010b0 + c0006c48: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:63 } - c0006b5c: 6145 addi sp,sp,48 + c0006c4a: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:62 write(1, hex_str, 16); - c0006b5e: 2eb5006f j c0057648 + c0006c4c: 3cd5006f j c0057818 -00000000c0006b62 : +00000000c0006c50 : js_malloc_rt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1330 return rt->mf.js_malloc(&rt->malloc_state, size); - c0006b62: 611c ld a5,0(a0) - c0006b64: 02050513 addi a0,a0,32 - c0006b68: 8782 jr a5 + c0006c50: 611c ld a5,0(a0) + c0006c52: 02050513 addi a0,a0,32 + c0006c56: 8782 jr a5 -00000000c0006b6a : +00000000c0006c58 : js_alloc_string_rt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1903 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1911 { - c0006b6a: 1101 addi sp,sp,-32 - c0006b6c: e822 sd s0,16(sp) - c0006b6e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1905 + c0006c58: 1101 addi sp,sp,-32 + c0006c5a: e822 sd s0,16(sp) + c0006c5c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1913 str = js_malloc_rt(rt, sizeof(JSString) + (max_len << is_wide_char) + 1 - is_wide_char); - c0006b70: 00c595bb sllw a1,a1,a2 - c0006b74: 8d91 sub a1,a1,a2 - c0006b76: 05c5 addi a1,a1,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1903 -{ - c0006b78: e426 sd s1,8(sp) - c0006b7a: ec06 sd ra,24(sp) - c0006b7c: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1905 + c0006c5e: 00c595bb sllw a1,a1,a2 + c0006c62: 8d91 sub a1,a1,a2 + c0006c64: 05c5 addi a1,a1,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1911 +{ + c0006c66: e426 sd s1,8(sp) + c0006c68: ec06 sd ra,24(sp) + c0006c6a: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1913 str = js_malloc_rt(rt, sizeof(JSString) + (max_len << is_wide_char) + 1 - is_wide_char); - c0006b7e: fe5ff0ef jal ra,c0006b62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1906 + c0006c6c: fe5ff0ef jal ra,c0006c50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1914 if (unlikely(!str)) - c0006b82: cd09 beqz a0,c0006b9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1910 + c0006c70: cd09 beqz a0,c0006c8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1918 str->len = max_len; - c0006b84: 1406 slli s0,s0,0x21 - c0006b86: 01f4949b slliw s1,s1,0x1f - c0006b8a: 9005 srli s0,s0,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1908 + c0006c72: 1406 slli s0,s0,0x21 + c0006c74: 01f4949b slliw s1,s1,0x1f + c0006c78: 9005 srli s0,s0,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1916 str->header.ref_count = 1; - c0006b8c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1910 + c0006c7a: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1918 str->len = max_len; - c0006b8e: 8c45 or s0,s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1908 + c0006c7c: 8c45 or s0,s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1916 str->header.ref_count = 1; - c0006b90: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1910 + c0006c7e: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1918 str->len = max_len; - c0006b92: c140 sw s0,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1912 + c0006c80: c140 sw s0,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1920 str->hash = 0; /* optional but costless */ - c0006b94: 00052423 sw zero,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1913 + c0006c82: 00052423 sw zero,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1921 str->hash_next = 0; /* optional */ - c0006b98: 00052623 sw zero,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1918 + c0006c86: 00052623 sw zero,12(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1926 } - c0006b9c: 60e2 ld ra,24(sp) - c0006b9e: 6442 ld s0,16(sp) - c0006ba0: 64a2 ld s1,8(sp) - c0006ba2: 6105 addi sp,sp,32 - c0006ba4: 8082 ret + c0006c8a: 60e2 ld ra,24(sp) + c0006c8c: 6442 ld s0,16(sp) + c0006c8e: 64a2 ld s1,8(sp) + c0006c90: 6105 addi sp,sp,32 + c0006c92: 8082 ret -00000000c0006ba6 : +00000000c0006c94 : js_free_rt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1335 rt->mf.js_free(&rt->malloc_state, ptr); - c0006ba6: 651c ld a5,8(a0) - c0006ba8: 02050513 addi a0,a0,32 - c0006bac: 8782 jr a5 + c0006c94: 651c ld a5,8(a0) + c0006c96: 02050513 addi a0,a0,32 + c0006c9a: 8782 jr a5 -00000000c0006bae : +00000000c0006c9c : JS_FreeAtomStruct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2940 -{ - c0006bae: 1141 addi sp,sp,-16 - c0006bb0: e022 sd s0,0(sp) - c0006bb2: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2948 - if (p->atom_type != JS_ATOM_TYPE_SYMBOL) { - c0006bb4: 459c lw a5,8(a1) - c0006bb6: c0000737 lui a4,0xc0000 - c0006bba: c00006b7 lui a3,0xc0000 - c0006bbe: 8f7d and a4,a4,a5 - c0006bc0: 2701 sext.w a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2940 { - c0006bc2: 842a mv s0,a0 + c0006c9c: 1141 addi sp,sp,-16 + c0006c9e: e022 sd s0,0(sp) + c0006ca0: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2956 + if (p->atom_type != JS_ATOM_TYPE_SYMBOL) { + c0006ca2: 459c lw a5,8(a1) + c0006ca4: c0000737 lui a4,0xc0000 + c0006ca8: c00006b7 lui a3,0xc0000 + c0006cac: 8f7d and a4,a4,a5 + c0006cae: 2701 sext.w a4,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2948 +{ + c0006cb0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2956 if (p->atom_type != JS_ATOM_TYPE_SYMBOL) { - c0006bc4: 02d71e63 bne a4,a3,c0006c00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2947 + c0006cb2: 02d71e63 bne a4,a3,c0006cee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2955 uint32_t i = p->hash_next; /* atom_index */ - c0006bc8: 45d8 lw a4,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2971 + c0006cb6: 45d8 lw a4,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2979 rt->atom_array[i] = atom_set_free(rt->atom_free_index); - c0006bca: 7034 ld a3,96(s0) - c0006bcc: 02071613 slli a2,a4,0x20 - c0006bd0: 01d65793 srli a5,a2,0x1d - c0006bd4: 96be add a3,a3,a5 + c0006cb8: 7034 ld a3,96(s0) + c0006cba: 02071613 slli a2,a4,0x20 + c0006cbe: 01d65793 srli a5,a2,0x1d + c0006cc2: 96be add a3,a3,a5 atom_set_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1906 return (JSAtomStruct *)(((uintptr_t)v << 1) | 1); - c0006bd6: 06846783 lwu a5,104(s0) + c0006cc4: 06846783 lwu a5,104(s0) JS_FreeAtomStruct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2977 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2985 js_free_rt(rt, p); - c0006bda: 8522 mv a0,s0 + c0006cc8: 8522 mv a0,s0 atom_set_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1906 return (JSAtomStruct *)(((uintptr_t)v << 1) | 1); - c0006bdc: 0786 slli a5,a5,0x1 - c0006bde: 0017e793 ori a5,a5,1 + c0006cca: 0786 slli a5,a5,0x1 + c0006ccc: 0017e793 ori a5,a5,1 JS_FreeAtomStruct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2971 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2979 rt->atom_array[i] = atom_set_free(rt->atom_free_index); - c0006be2: e29c sd a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2972 + c0006cd0: e29c sd a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2980 rt->atom_free_index = i; - c0006be4: d438 sw a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2977 + c0006cd2: d438 sw a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2985 js_free_rt(rt, p); - c0006be6: fc1ff0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2978 + c0006cd4: fc1ff0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2986 rt->atom_count--; - c0006bea: 447c lw a5,76(s0) - c0006bec: fff7871b addiw a4,a5,-1 - c0006bf0: c478 sw a4,76(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2979 + c0006cd8: 447c lw a5,76(s0) + c0006cda: fff7871b addiw a4,a5,-1 + c0006cde: c478 sw a4,76(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2987 assert(rt->atom_count >= 0); - c0006bf2: 06075463 bgez a4,c0006c5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2979 (discriminator 1) - c0006bf6: 6585 lui a1,0x1 - c0006bf8: 4601 li a2,0 - c0006bfa: ba358593 addi a1,a1,-1117 # ba3 <__clzdi2-0xbffff45d> - c0006bfe: a825 j c0006c36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2952 + c0006ce0: 06075463 bgez a4,c0006d48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2987 (discriminator 1) + c0006ce4: 6585 lui a1,0x1 + c0006ce6: 4601 li a2,0 + c0006ce8: bab58593 addi a1,a1,-1109 # bab <__clzdi2-0xbffff455> + c0006cec: a825 j c0006d24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2960 h0 = p->hash & (rt->atom_hash_size - 1); - c0006c00: 4538 lw a4,72(a0) - c0006c02: 178a slli a5,a5,0x22 - c0006c04: 9389 srli a5,a5,0x22 - c0006c06: 377d addiw a4,a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2953 + c0006cee: 4538 lw a4,72(a0) + c0006cf0: 178a slli a5,a5,0x22 + c0006cf2: 9389 srli a5,a5,0x22 + c0006cf4: 377d addiw a4,a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2961 i = rt->atom_hash[h0]; - c0006c08: 8ff9 and a5,a5,a4 - c0006c0a: 6d38 ld a4,88(a0) - c0006c0c: 078a slli a5,a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2954 + c0006cf6: 8ff9 and a5,a5,a4 + c0006cf8: 6d38 ld a4,88(a0) + c0006cfa: 078a slli a5,a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2962 p1 = rt->atom_array[i]; - c0006c0e: 7130 ld a2,96(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2953 + c0006cfc: 7130 ld a2,96(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2961 i = rt->atom_hash[h0]; - c0006c10: 97ba add a5,a5,a4 - c0006c12: 4398 lw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2954 + c0006cfe: 97ba add a5,a5,a4 + c0006d00: 4398 lw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2962 p1 = rt->atom_array[i]; - c0006c14: 02071513 slli a0,a4,0x20 - c0006c18: 01d55693 srli a3,a0,0x1d - c0006c1c: 96b2 add a3,a3,a2 - c0006c1e: 6294 ld a3,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2955 + c0006d02: 02071513 slli a0,a4,0x20 + c0006d06: 01d55693 srli a3,a0,0x1d + c0006d0a: 96b2 add a3,a3,a2 + c0006d0c: 6294 ld a3,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2963 if (p1 == p) { - c0006c20: 00d59663 bne a1,a3,c0006c2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2956 + c0006d0e: 00d59663 bne a1,a3,c0006d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2964 rt->atom_hash[h0] = p1->hash_next; - c0006c24: 45d4 lw a3,12(a1) - c0006c26: c394 sw a3,0(a5) - c0006c28: b74d j c0006bca - c0006c2a: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2959 + c0006d12: 45d4 lw a3,12(a1) + c0006d14: c394 sw a3,0(a5) + c0006d16: b74d j c0006cb8 + c0006d18: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2967 assert(i != 0); - c0006c2c: eb19 bnez a4,c0006c42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2959 (discriminator 1) - c0006c2e: 6585 lui a1,0x1 - c0006c30: 4601 li a2,0 - c0006c32: b8f58593 addi a1,a1,-1137 # b8f <__clzdi2-0xbffff471> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2979 (discriminator 1) + c0006d1a: eb19 bnez a4,c0006d30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2967 (discriminator 1) + c0006d1c: 6585 lui a1,0x1 + c0006d1e: 4601 li a2,0 + c0006d20: b9758593 addi a1,a1,-1129 # b97 <__clzdi2-0xbffff469> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2987 (discriminator 1) assert(rt->atom_count >= 0); - c0006c36: 00056517 auipc a0,0x56 - c0006c3a: e4250513 addi a0,a0,-446 # c005ca78 - c0006c3e: 5db4c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2961 (discriminator 2) + c0006d24: 00056517 auipc a0,0x56 + c0006d28: f2450513 addi a0,a0,-220 # c005cc48 + c0006d2c: 6bd4c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2969 (discriminator 2) i = p1->hash_next; - c0006c42: 46d8 lw a4,12(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2962 (discriminator 2) + c0006d30: 46d8 lw a4,12(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2970 (discriminator 2) p1 = rt->atom_array[i]; - c0006c44: 02071513 slli a0,a4,0x20 - c0006c48: 01d55793 srli a5,a0,0x1d - c0006c4c: 97b2 add a5,a5,a2 - c0006c4e: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2963 (discriminator 2) + c0006d32: 02071513 slli a0,a4,0x20 + c0006d36: 01d55793 srli a5,a0,0x1d + c0006d3a: 97b2 add a5,a5,a2 + c0006d3c: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2971 (discriminator 2) if (p1 == p) { - c0006c50: fcf59de3 bne a1,a5,c0006c2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2964 + c0006d3e: fcf59de3 bne a1,a5,c0006d18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2972 p0->hash_next = p1->hash_next; - c0006c54: 45dc lw a5,12(a1) - c0006c56: c6dc sw a5,12(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2965 + c0006d42: 45dc lw a5,12(a1) + c0006d44: c6dc sw a5,12(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2973 break; - c0006c58: bf8d j c0006bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2980 + c0006d46: bf8d j c0006cb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2988 } - c0006c5a: 60a2 ld ra,8(sp) - c0006c5c: 6402 ld s0,0(sp) - c0006c5e: 0141 addi sp,sp,16 - c0006c60: 8082 ret + c0006d48: 60a2 ld ra,8(sp) + c0006d4a: 6402 ld s0,0(sp) + c0006d4c: 0141 addi sp,sp,16 + c0006d4e: 8082 ret -00000000c0006c62 <__JS_FreeAtom>: +00000000c0006d50 <__JS_FreeAtom>: __JS_FreeAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2986 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2994 p = rt->atom_array[i]; - c0006c62: 713c ld a5,96(a0) - c0006c64: 02059713 slli a4,a1,0x20 - c0006c68: 01d75593 srli a1,a4,0x1d - c0006c6c: 97ae add a5,a5,a1 - c0006c6e: 638c ld a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2987 + c0006d50: 713c ld a5,96(a0) + c0006d52: 02059713 slli a4,a1,0x20 + c0006d56: 01d75593 srli a1,a4,0x1d + c0006d5a: 97ae add a5,a5,a1 + c0006d5c: 638c ld a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2995 if (--p->header.ref_count > 0) - c0006c70: 419c lw a5,0(a1) - c0006c72: fff7871b addiw a4,a5,-1 - c0006c76: c198 sw a4,0(a1) - c0006c78: 00e04363 bgtz a4,c0006c7e <__JS_FreeAtom+0x1c> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2989 + c0006d5e: 419c lw a5,0(a1) + c0006d60: fff7871b addiw a4,a5,-1 + c0006d64: c198 sw a4,0(a1) + c0006d66: 00e04363 bgtz a4,c0006d6c <__JS_FreeAtom+0x1c> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2997 JS_FreeAtomStruct(rt, p); - c0006c7c: bf0d j c0006bae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2990 + c0006d6a: bf0d j c0006c9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2998 } - c0006c7e: 8082 ret + c0006d6c: 8082 ret -00000000c0006c80 : +00000000c0006d6e : js_free_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1942 if (--str->header.ref_count <= 0) { - c0006c80: 4198 lw a4,0(a1) - c0006c82: fff7069b addiw a3,a4,-1 - c0006c86: c194 sw a3,0(a1) - c0006c88: 00d04a63 bgtz a3,c0006c9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1935 + c0006d6e: 4198 lw a4,0(a1) + c0006d70: fff7069b addiw a3,a4,-1 + c0006d74: c194 sw a3,0(a1) + c0006d76: 00d04a63 bgtz a3,c0006d8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1943 if (str->atom_type) { - c0006c8c: 459c lw a5,8(a1) - c0006c8e: c0000737 lui a4,0xc0000 - c0006c92: 8ff9 and a5,a5,a4 - c0006c94: 2781 sext.w a5,a5 - c0006c96: c391 beqz a5,c0006c9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1936 + c0006d7a: 459c lw a5,8(a1) + c0006d7c: c0000737 lui a4,0xc0000 + c0006d80: 8ff9 and a5,a5,a4 + c0006d82: 2781 sext.w a5,a5 + c0006d84: c391 beqz a5,c0006d88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1944 JS_FreeAtomStruct(rt, str); - c0006c98: bf19 j c0006bae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1941 + c0006d86: bf19 j c0006c9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1949 js_free_rt(rt, str); - c0006c9a: b731 j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1944 + c0006d88: b731 j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1952 } - c0006c9c: 8082 ret + c0006d8a: 8082 ret -00000000c0006c9e : +00000000c0006d8c : map_decref_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47188 if (--mr->ref_count == 0) { - c0006c9e: 419c lw a5,0(a1) - c0006ca0: fff7871b addiw a4,a5,-1 - c0006ca4: c198 sw a4,0(a1) - c0006ca6: ef05 bnez a4,c0006cde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47179 -{ - c0006ca8: 1101 addi sp,sp,-32 - c0006caa: ec06 sd ra,24(sp) - c0006cac: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47182 + c0006d8c: 419c lw a5,0(a1) + c0006d8e: fff7871b addiw a4,a5,-1 + c0006d92: c198 sw a4,0(a1) + c0006d94: ef05 bnez a4,c0006dcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47187 +{ + c0006d96: 1101 addi sp,sp,-32 + c0006d98: ec06 sd ra,24(sp) + c0006d9a: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47190 assert(mr->empty); - c0006cae: 41dc lw a5,4(a1) - c0006cb0: eb99 bnez a5,c0006cc6 - c0006cb2: 65b1 lui a1,0xc - c0006cb4: 4601 li a2,0 - c0006cb6: 84e58593 addi a1,a1,-1970 # b84e <__clzdi2-0xbfff47b2> - c0006cba: 00056517 auipc a0,0x56 - c0006cbe: dbe50513 addi a0,a0,-578 # c005ca78 - c0006cc2: 5574c0ef jal ra,c0053a18 <__assert> - c0006cc6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47183 (discriminator 2) + c0006d9c: 41dc lw a5,4(a1) + c0006d9e: eb99 bnez a5,c0006db4 + c0006da0: 65b1 lui a1,0xc + c0006da2: 4601 li a2,0 + c0006da4: 85658593 addi a1,a1,-1962 # b856 <__clzdi2-0xbfff47aa> + c0006da8: 00056517 auipc a0,0x56 + c0006dac: ea050513 addi a0,a0,-352 # c005cc48 + c0006db0: 6394c0ef jal ra,c0053be8 <__assert> + c0006db4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47191 (discriminator 2) list_del(&mr->link); - c0006cc8: 01858513 addi a0,a1,24 - c0006ccc: e42e sd a1,8(sp) - c0006cce: b8cfd0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47184 (discriminator 2) + c0006db6: 01858513 addi a0,a1,24 + c0006dba: e42e sd a1,8(sp) + c0006dbc: a9efd0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47192 (discriminator 2) js_free_rt(rt, mr); - c0006cd2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47186 (discriminator 2) + c0006dc0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47194 (discriminator 2) } - c0006cd4: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47184 (discriminator 2) + c0006dc2: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47192 (discriminator 2) js_free_rt(rt, mr); - c0006cd6: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47186 (discriminator 2) + c0006dc4: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47194 (discriminator 2) } - c0006cd8: 60e2 ld ra,24(sp) - c0006cda: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47184 (discriminator 2) + c0006dc6: 60e2 ld ra,24(sp) + c0006dc8: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47192 (discriminator 2) js_free_rt(rt, mr); - c0006cdc: b5e9 j c0006ba6 - c0006cde: 8082 ret + c0006dca: b5e9 j c0006c94 + c0006dcc: 8082 ret -00000000c0006ce0 : +00000000c0006dce : js_array_buffer_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52808 { - c0006ce0: 7179 addi sp,sp,-48 - c0006ce2: f406 sd ra,40(sp) - c0006ce4: f022 sd s0,32(sp) - c0006ce6: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52802 + c0006dce: 7179 addi sp,sp,-48 + c0006dd0: f406 sd ra,40(sp) + c0006dd2: f022 sd s0,32(sp) + c0006dd4: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52810 JSArrayBuffer *abuf = p->u.array_buffer; - c0006ce8: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52800 + c0006dd6: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52808 { - c0006cea: e02e sd a1,0(sp) - c0006cec: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52805 + c0006dd8: e02e sd a1,0(sp) + c0006dda: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52813 if (abuf) { - c0006cee: c035 beqz s0,c0006d52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52809 + c0006ddc: c035 beqz s0,c0006e40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52817 list_for_each_safe(el, el1, &abuf->array_list) { - c0006cf0: 6c1c ld a5,24(s0) - c0006cf2: 84aa mv s1,a0 - c0006cf4: 01040693 addi a3,s0,16 - c0006cf8: 6798 ld a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52818 + c0006dde: 6c1c ld a5,24(s0) + c0006de0: 84aa mv s1,a0 + c0006de2: 01040693 addi a3,s0,16 + c0006de6: 6798 ld a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52826 if (p1->class_id != JS_CLASS_DATAVIEW) { - c0006cfa: 02000613 li a2,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52809 (discriminator 1) + c0006de8: 02000613 li a2,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52817 (discriminator 1) list_for_each_safe(el, el1, &abuf->array_list) { - c0006cfe: 02d79363 bne a5,a3,c0006d24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52823 + c0006dec: 02d79363 bne a5,a3,c0006e12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52831 if (abuf->shared && rt->sab_funcs.sab_free) { - c0006d02: 00544783 lbu a5,5(s0) - c0006d06: cf9d beqz a5,c0006d44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52823 (discriminator 1) - c0006d08: 1604b783 ld a5,352(s1) - c0006d0c: cf85 beqz a5,c0006d44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52824 + c0006df0: 00544783 lbu a5,5(s0) + c0006df4: cf9d beqz a5,c0006e32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52831 (discriminator 1) + c0006df6: 1604b783 ld a5,352(s1) + c0006dfa: cf85 beqz a5,c0006e32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52832 rt->sab_funcs.sab_free(rt->sab_funcs.sab_opaque, abuf->data); - c0006d0e: 640c ld a1,8(s0) - c0006d10: 1704b503 ld a0,368(s1) - c0006d14: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52829 + c0006dfc: 640c ld a1,8(s0) + c0006dfe: 1704b503 ld a0,368(s1) + c0006e02: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52837 js_free_rt(rt, abuf); - c0006d16: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52831 + c0006e04: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52839 } - c0006d18: 7402 ld s0,32(sp) - c0006d1a: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52829 + c0006e06: 7402 ld s0,32(sp) + c0006e08: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52837 js_free_rt(rt, abuf); - c0006d1c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52831 + c0006e0a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52839 } - c0006d1e: 64e2 ld s1,24(sp) - c0006d20: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52829 + c0006e0c: 64e2 ld s1,24(sp) + c0006e0e: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52837 js_free_rt(rt, abuf); - c0006d22: b551 j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52814 + c0006e10: b551 j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52822 ta->link.prev = NULL; - c0006d24: 0007b023 sd zero,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52815 + c0006e12: 0007b023 sd zero,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52823 ta->link.next = NULL; - c0006d28: 0007b423 sd zero,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52816 + c0006e16: 0007b423 sd zero,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52824 p1 = ta->obj; - c0006d2c: 6b9c ld a5,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52818 + c0006e1a: 6b9c ld a5,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52826 if (p1->class_id != JS_CLASS_DATAVIEW) { - c0006d2e: 0067d583 lhu a1,6(a5) - c0006d32: 00c58663 beq a1,a2,c0006d3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52819 + c0006e1c: 0067d583 lhu a1,6(a5) + c0006e20: 00c58663 beq a1,a2,c0006e2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52827 p1->u.array.count = 0; - c0006d36: 0407a023 sw zero,64(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52820 + c0006e24: 0407a023 sw zero,64(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52828 p1->u.array.u.ptr = NULL; - c0006d3a: 0207bc23 sd zero,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52809 (discriminator 2) + c0006e28: 0207bc23 sd zero,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52817 (discriminator 2) list_for_each_safe(el, el1, &abuf->array_list) { - c0006d3e: 87ba mv a5,a4 - c0006d40: 6718 ld a4,8(a4) - c0006d42: bf75 j c0006cfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52826 + c0006e2c: 87ba mv a5,a4 + c0006e2e: 6718 ld a4,8(a4) + c0006e30: bf75 j c0006dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52834 if (abuf->free_func) - c0006d44: 741c ld a5,40(s0) - c0006d46: dbe1 beqz a5,c0006d16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52827 + c0006e32: 741c ld a5,40(s0) + c0006e34: dbe1 beqz a5,c0006e04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52835 abuf->free_func(rt, abuf->opaque, abuf->data); - c0006d48: 6410 ld a2,8(s0) - c0006d4a: 700c ld a1,32(s0) - c0006d4c: 8526 mv a0,s1 - c0006d4e: 9782 jalr a5 - c0006d50: b7d9 j c0006d16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52831 + c0006e36: 6410 ld a2,8(s0) + c0006e38: 700c ld a1,32(s0) + c0006e3a: 8526 mv a0,s1 + c0006e3c: 9782 jalr a5 + c0006e3e: b7d9 j c0006e04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52839 } - c0006d52: 70a2 ld ra,40(sp) - c0006d54: 7402 ld s0,32(sp) - c0006d56: 64e2 ld s1,24(sp) - c0006d58: 6145 addi sp,sp,48 - c0006d5a: 8082 ret + c0006e40: 70a2 ld ra,40(sp) + c0006e42: 7402 ld s0,32(sp) + c0006e44: 64e2 ld s1,24(sp) + c0006e46: 6145 addi sp,sp,48 + c0006e48: 8082 ret -00000000c0006d5c : +00000000c0006e4a : js_array_buffer_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52746 js_free_rt(rt, ptr); - c0006d5c: 85b2 mv a1,a2 - c0006d5e: b5a1 j c0006ba6 + c0006e4a: 85b2 mv a1,a2 + c0006e4c: b5a1 j c0006c94 -00000000c0006d60 : +00000000c0006e4e : js_malloc_usable_size_rt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1345 return rt->mf.js_malloc_usable_size(ptr); - c0006d60: 6d1c ld a5,24(a0) - c0006d62: 852e mv a0,a1 - c0006d64: 8782 jr a5 + c0006e4e: 6d1c ld a5,24(a0) + c0006e50: 852e mv a0,a1 + c0006e52: 8782 jr a5 -00000000c0006d66 : +00000000c0006e54 : js_mallocz_rt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1349 { - c0006d66: 1101 addi sp,sp,-32 - c0006d68: ec06 sd ra,24(sp) - c0006d6a: e42e sd a1,8(sp) + c0006e54: 1101 addi sp,sp,-32 + c0006e56: ec06 sd ra,24(sp) + c0006e58: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1351 ptr = js_malloc_rt(rt, size); - c0006d6c: df7ff0ef jal ra,c0006b62 + c0006e5a: df7ff0ef jal ra,c0006c50 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1352 if (!ptr) - c0006d70: c519 beqz a0,c0006d7e + c0006e5e: c519 beqz a0,c0006e6c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1354 return memset(ptr, 0, size); - c0006d72: 6622 ld a2,8(sp) + c0006e60: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1355 } - c0006d74: 60e2 ld ra,24(sp) + c0006e62: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1354 return memset(ptr, 0, size); - c0006d76: 4581 li a1,0 + c0006e64: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1355 } - c0006d78: 6105 addi sp,sp,32 + c0006e66: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1354 return memset(ptr, 0, size); - c0006d7a: 2f74f06f j c0056870 + c0006e68: 3d94f06f j c0056a40 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1355 } - c0006d7e: 60e2 ld ra,24(sp) - c0006d80: 6105 addi sp,sp,32 - c0006d82: 8082 ret + c0006e6c: 60e2 ld ra,24(sp) + c0006e6e: 6105 addi sp,sp,32 + c0006e70: 8082 ret -00000000c0006d84 : +00000000c0006e72 : JS_ResizeAtomHash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2587 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2595 { - c0006d84: 7179 addi sp,sp,-48 - c0006d86: e052 sd s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2591 + c0006e72: 7179 addi sp,sp,-48 + c0006e74: e052 sd s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2599 assert((new_hash_size & (new_hash_size - 1)) == 0); /* power of two */ - c0006d88: fff58a1b addiw s4,a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2587 -{ - c0006d8c: e44e sd s3,8(sp) - c0006d8e: f406 sd ra,40(sp) - c0006d90: f022 sd s0,32(sp) - c0006d92: ec26 sd s1,24(sp) - c0006d94: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2591 + c0006e76: fff58a1b addiw s4,a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2595 +{ + c0006e7a: e44e sd s3,8(sp) + c0006e7c: f406 sd ra,40(sp) + c0006e7e: f022 sd s0,32(sp) + c0006e80: ec26 sd s1,24(sp) + c0006e82: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2599 assert((new_hash_size & (new_hash_size - 1)) == 0); /* power of two */ - c0006d96: 00ba79b3 and s3,s4,a1 - c0006d9a: 00098c63 beqz s3,c0006db2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2591 (discriminator 1) - c0006d9e: 6585 lui a1,0x1 - c0006da0: 4601 li a2,0 - c0006da2: a1f58593 addi a1,a1,-1505 # a1f <__clzdi2-0xbffff5e1> - c0006da6: 00056517 auipc a0,0x56 - c0006daa: cd250513 addi a0,a0,-814 # c005ca78 - c0006dae: 46b4c0ef jal ra,c0053a18 <__assert> - c0006db2: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2593 (discriminator 2) + c0006e84: 00ba79b3 and s3,s4,a1 + c0006e88: 00098c63 beqz s3,c0006ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2599 (discriminator 1) + c0006e8c: 6585 lui a1,0x1 + c0006e8e: 4601 li a2,0 + c0006e90: a2758593 addi a1,a1,-1497 # a27 <__clzdi2-0xbffff5d9> + c0006e94: 00056517 auipc a0,0x56 + c0006e98: db450513 addi a0,a0,-588 # c005cc48 + c0006e9c: 54d4c0ef jal ra,c0053be8 <__assert> + c0006ea0: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2601 (discriminator 2) new_hash = js_mallocz_rt(rt, sizeof(rt->atom_hash[0]) * new_hash_size); - c0006db4: 058a slli a1,a1,0x2 - c0006db6: 842a mv s0,a0 - c0006db8: fafff0ef jal ra,c0006d66 - c0006dbc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2594 (discriminator 2) + c0006ea2: 058a slli a1,a1,0x2 + c0006ea4: 842a mv s0,a0 + c0006ea6: fafff0ef jal ra,c0006e54 + c0006eaa: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2602 (discriminator 2) if (!new_hash) - c0006dbe: cd25 beqz a0,c0006e36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2602 + c0006eac: cd25 beqz a0,c0006f24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2610 j = p->hash & new_hash_mask; - c0006dc0: 40000637 lui a2,0x40000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2596 + c0006eae: 40000637 lui a2,0x40000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2604 for(i = 0; i < rt->atom_hash_size; i++) { - c0006dc4: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2602 + c0006eb2: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2610 j = p->hash & new_hash_mask; - c0006dc6: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2596 (discriminator 1) + c0006eb4: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2604 (discriminator 1) for(i = 0; i < rt->atom_hash_size; i++) { - c0006dc8: 443c lw a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2597 (discriminator 1) + c0006eb6: 443c lw a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2605 (discriminator 1) h = rt->atom_hash[i]; - c0006dca: 6c2c ld a1,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2596 (discriminator 1) + c0006eb8: 6c2c ld a1,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2604 (discriminator 1) for(i = 0; i < rt->atom_hash_size; i++) { - c0006dcc: 02f76463 bltu a4,a5,c0006df4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2608 + c0006eba: 02f76463 bltu a4,a5,c0006ee2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2616 js_free_rt(rt, rt->atom_hash); - c0006dd0: 8522 mv a0,s0 - c0006dd2: dd5ff0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2610 + c0006ebe: 8522 mv a0,s0 + c0006ec0: dd5ff0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2618 rt->atom_hash_size = new_hash_size; - c0006dd6: c424 sw s1,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2611 + c0006ec4: c424 sw s1,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2619 rt->atom_count_resize = JS_ATOM_COUNT_RESIZE(new_hash_size); - c0006dd8: 0014949b slliw s1,s1,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2609 + c0006ec6: 0014949b slliw s1,s1,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2617 rt->atom_hash = new_hash; - c0006ddc: 05243c23 sd s2,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2611 + c0006eca: 05243c23 sd s2,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2619 rt->atom_count_resize = JS_ATOM_COUNT_RESIZE(new_hash_size); - c0006de0: c864 sw s1,84(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2614 -} - c0006de2: 70a2 ld ra,40(sp) - c0006de4: 7402 ld s0,32(sp) - c0006de6: 64e2 ld s1,24(sp) - c0006de8: 6942 ld s2,16(sp) - c0006dea: 6a02 ld s4,0(sp) - c0006dec: 854e mv a0,s3 - c0006dee: 69a2 ld s3,8(sp) - c0006df0: 6145 addi sp,sp,48 - c0006df2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2597 + c0006ece: c864 sw s1,84(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2622 +} + c0006ed0: 70a2 ld ra,40(sp) + c0006ed2: 7402 ld s0,32(sp) + c0006ed4: 64e2 ld s1,24(sp) + c0006ed6: 6942 ld s2,16(sp) + c0006ed8: 6a02 ld s4,0(sp) + c0006eda: 854e mv a0,s3 + c0006edc: 69a2 ld s3,8(sp) + c0006ede: 6145 addi sp,sp,48 + c0006ee0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2605 h = rt->atom_hash[i]; - c0006df4: 02071693 slli a3,a4,0x20 - c0006df8: 01e6d793 srli a5,a3,0x1e - c0006dfc: 95be add a1,a1,a5 - c0006dfe: 4194 lw a3,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2598 + c0006ee2: 02071693 slli a3,a4,0x20 + c0006ee6: 01e6d793 srli a5,a3,0x1e + c0006eea: 95be add a1,a1,a5 + c0006eec: 4194 lw a3,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2606 while (h != 0) { - c0006e00: e299 bnez a3,c0006e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2596 (discriminator 2) + c0006eee: e299 bnez a3,c0006ef4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2604 (discriminator 2) for(i = 0; i < rt->atom_hash_size; i++) { - c0006e02: 2705 addiw a4,a4,1 - c0006e04: b7d1 j c0006dc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2599 + c0006ef0: 2705 addiw a4,a4,1 + c0006ef2: b7d1 j c0006eb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2607 p = rt->atom_array[h]; - c0006e06: 703c ld a5,96(s0) - c0006e08: 02069513 slli a0,a3,0x20 - c0006e0c: 01d55593 srli a1,a0,0x1d - c0006e10: 97ae add a5,a5,a1 - c0006e12: 638c ld a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2602 + c0006ef4: 703c ld a5,96(s0) + c0006ef6: 02069513 slli a0,a3,0x20 + c0006efa: 01d55593 srli a1,a0,0x1d + c0006efe: 97ae add a5,a5,a1 + c0006f00: 638c ld a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2610 j = p->hash & new_hash_mask; - c0006e14: 459c lw a5,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2600 + c0006f02: 459c lw a5,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2608 hash_next1 = p->hash_next; - c0006e16: 45c8 lw a0,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2602 + c0006f04: 45c8 lw a0,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2610 j = p->hash & new_hash_mask; - c0006e18: 8ff1 and a5,a5,a2 - c0006e1a: 0147f7b3 and a5,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2603 + c0006f06: 8ff1 and a5,a5,a2 + c0006f08: 0147f7b3 and a5,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2611 p->hash_next = new_hash[j]; - c0006e1e: 02079813 slli a6,a5,0x20 - c0006e22: 01e85793 srli a5,a6,0x1e - c0006e26: 97ca add a5,a5,s2 - c0006e28: 0007a803 lw a6,0(a5) - c0006e2c: 0105a623 sw a6,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2604 + c0006f0c: 02079813 slli a6,a5,0x20 + c0006f10: 01e85793 srli a5,a6,0x1e + c0006f14: 97ca add a5,a5,s2 + c0006f16: 0007a803 lw a6,0(a5) + c0006f1a: 0105a623 sw a6,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2612 new_hash[j] = h; - c0006e30: c394 sw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2605 + c0006f1e: c394 sw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2613 h = hash_next1; - c0006e32: 86aa mv a3,a0 - c0006e34: b7f1 j c0006e00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2595 + c0006f20: 86aa mv a3,a0 + c0006f22: b7f1 j c0006eee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2603 return -1; - c0006e36: 59fd li s3,-1 - c0006e38: b76d j c0006de2 + c0006f24: 59fd li s3,-1 + c0006f26: b76d j c0006ed0 -00000000c0006e3a : +00000000c0006f28 : js_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1394 js_free_rt(ctx->rt, ptr); - c0006e3a: 6d08 ld a0,24(a0) - c0006e3c: d6bff06f j c0006ba6 + c0006f28: 6d08 ld a0,24(a0) + c0006f2a: d6bff06f j c0006c94 -00000000c0006e40 : +00000000c0006f2e : string_buffer_set_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3633 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3641 { - c0006e40: 1141 addi sp,sp,-16 - c0006e42: e022 sd s0,0(sp) - c0006e44: e406 sd ra,8(sp) - c0006e46: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3634 + c0006f2e: 1141 addi sp,sp,-16 + c0006f30: e022 sd s0,0(sp) + c0006f32: e406 sd ra,8(sp) + c0006f34: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3642 js_free(s->ctx, s->str); - c0006e48: 650c ld a1,8(a0) - c0006e4a: 6108 ld a0,0(a0) - c0006e4c: fefff0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3638 + c0006f36: 650c ld a1,8(a0) + c0006f38: 6108 ld a0,0(a0) + c0006f3a: fefff0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3646 return s->error_status = -1; - c0006e50: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3639 + c0006f3e: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3647 } - c0006e52: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3635 + c0006f40: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3643 s->str = NULL; - c0006e54: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3637 + c0006f42: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3645 s->len = 0; - c0006e58: 00043823 sd zero,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3638 + c0006f46: 00043823 sd zero,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3646 return s->error_status = -1; - c0006e5c: cc5c sw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3639 + c0006f4a: cc5c sw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3647 } - c0006e5e: 6402 ld s0,0(sp) - c0006e60: 557d li a0,-1 - c0006e62: 0141 addi sp,sp,16 - c0006e64: 8082 ret + c0006f4c: 6402 ld s0,0(sp) + c0006f4e: 557d li a0,-1 + c0006f50: 0141 addi sp,sp,16 + c0006f52: 8082 ret -00000000c0006e66 : +00000000c0006f54 : string_buffer_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3635 { - c0006e66: 1141 addi sp,sp,-16 - c0006e68: e022 sd s0,0(sp) - c0006e6a: e406 sd ra,8(sp) - c0006e6c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3628 + c0006f54: 1141 addi sp,sp,-16 + c0006f56: e022 sd s0,0(sp) + c0006f58: e406 sd ra,8(sp) + c0006f5a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3636 js_free(s->ctx, s->str); - c0006e6e: 650c ld a1,8(a0) - c0006e70: 6108 ld a0,0(a0) - c0006e72: fc9ff0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3630 + c0006f5c: 650c ld a1,8(a0) + c0006f5e: 6108 ld a0,0(a0) + c0006f60: fc9ff0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3638 } - c0006e76: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3629 + c0006f64: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3637 s->str = NULL; - c0006e78: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3630 + c0006f66: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3638 } - c0006e7c: 6402 ld s0,0(sp) - c0006e7e: 0141 addi sp,sp,16 - c0006e80: 8082 ret + c0006f6a: 6402 ld s0,0(sp) + c0006f6c: 0141 addi sp,sp,16 + c0006f6e: 8082 ret -00000000c0006e82 : +00000000c0006f70 : js_malloc_usable_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1423 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1427 return js_malloc_usable_size_rt(ctx->rt, ptr); - c0006e82: 6d08 ld a0,24(a0) - c0006e84: bdf1 j c0006d60 + c0006f70: 6d08 ld a0,24(a0) + c0006f72: bdf1 j c0006e4e -00000000c0006e86 : +00000000c0006f74 : JS_GetRuntimeOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1705 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1709 } - c0006e86: 24053503 ld a0,576(a0) - c0006e8a: 8082 ret + c0006f74: 24053503 ld a0,576(a0) + c0006f78: 8082 ret -00000000c0006e8c : +00000000c0006f7a : JS_SetRuntimeOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1713 rt->user_opaque = opaque; - c0006e8c: 24b53023 sd a1,576(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1710 + c0006f7a: 24b53023 sd a1,576(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1714 } - c0006e90: 8082 ret + c0006f7e: 8082 ret -00000000c0006e92 : +00000000c0006f80 : JS_SetMemoryLimit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1799 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1807 rt->malloc_state.malloc_limit = limit; - c0006e92: f90c sd a1,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1800 + c0006f80: f90c sd a1,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1808 } - c0006e94: 8082 ret + c0006f82: 8082 ret -00000000c0006e96 : +00000000c0006f84 : JS_SetGCThreshold(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1805 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1813 rt->malloc_gc_threshold = gc_threshold; - c0006e96: e16c sd a1,192(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1806 + c0006f84: e16c sd a1,192(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1814 } - c0006e98: 8082 ret + c0006f86: 8082 ret -00000000c0006e9a : +00000000c0006f88 : JS_SetInterruptHandler(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1822 rt->interrupt_handler = cb; - c0006e9a: 10b53023 sd a1,256(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1815 + c0006f88: 10b53023 sd a1,256(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1823 rt->interrupt_opaque = opaque; - c0006e9e: 10c53423 sd a2,264(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1816 + c0006f8c: 10c53423 sd a2,264(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1824 } - c0006ea2: 8082 ret + c0006f90: 8082 ret -00000000c0006ea4 : +00000000c0006f92 : JS_SetCanBlock(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1828 rt->can_block = can_block; - c0006ea4: 14b50823 sb a1,336(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1821 + c0006f92: 14b50823 sb a1,336(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1829 } - c0006ea8: 8082 ret + c0006f96: 8082 ret -00000000c0006eaa : +00000000c0006f98 : JS_SetSharedArrayBufferFunctions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1833 { - c0006eaa: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1826 + c0006f98: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1834 rt->sab_funcs = *sf; - c0006eac: 02000613 li a2,32 - c0006eb0: 15850513 addi a0,a0,344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1825 + c0006f9a: 02000613 li a2,32 + c0006f9e: 15850513 addi a0,a0,344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1833 { - c0006eb4: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1826 + c0006fa2: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1834 rt->sab_funcs = *sf; - c0006eb6: 3254f0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1827 + c0006fa4: 4074f0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1835 } - c0006eba: 60a2 ld ra,8(sp) - c0006ebc: 0141 addi sp,sp,16 - c0006ebe: 8082 ret + c0006fa8: 60a2 ld ra,8(sp) + c0006faa: 0141 addi sp,sp,16 + c0006fac: 8082 ret -00000000c0006ec0 : +00000000c0006fae : JS_IsJobPending(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1860 return !list_empty(&rt->job_list); - c0006ec0: 12050793 addi a5,a0,288 - c0006ec4: 12853503 ld a0,296(a0) - c0006ec8: 8d1d sub a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1853 + c0006fae: 12050793 addi a5,a0,288 + c0006fb2: 12853503 ld a0,296(a0) + c0006fb6: 8d1d sub a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1861 } - c0006eca: 00a03533 snez a0,a0 - c0006ece: 8082 ret + c0006fb8: 00a03533 snez a0,a0 + c0006fbc: 8082 ret -00000000c0006ed0 : +00000000c0006fbe : JS_SetRuntimeInfo(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1948 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1956 if (rt) - c0006ed0: c111 beqz a0,c0006ed4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1949 + c0006fbe: c111 beqz a0,c0006fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1957 rt->rt_info = s; - c0006ed2: e12c sd a1,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1950 + c0006fc0: e12c sd a1,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1958 } - c0006ed4: 8082 ret + c0006fc2: 8082 ret -00000000c0006ed6 : +00000000c0006fc4 : JS_GetContextOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2210 } - c0006ed6: 1c053503 ld a0,448(a0) - c0006eda: 8082 ret + c0006fc4: 1c053503 ld a0,448(a0) + c0006fc8: 8082 ret -00000000c0006edc : +00000000c0006fca : JS_SetContextOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2214 ctx->user_opaque = opaque; - c0006edc: 1cb53023 sd a1,448(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2207 + c0006fca: 1cb53023 sd a1,448(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2215 } - c0006ee0: 8082 ret + c0006fce: 8082 ret -00000000c0006ee2 : +00000000c0006fd0 : JS_GetClassProto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2229 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2237 assert(class_id < rt->class_count); - c0006ee2: 6d1c ld a5,24(a0) - c0006ee4: 57fc lw a5,108(a5) - c0006ee6: 00f5ee63 bltu a1,a5,c0006f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2229 (discriminator 1) - c0006eea: 6585 lui a1,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2227 (discriminator 1) -{ - c0006eec: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2229 (discriminator 1) + c0006fd0: 6d1c ld a5,24(a0) + c0006fd2: 57fc lw a5,108(a5) + c0006fd4: 00f5ee63 bltu a1,a5,c0006ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2237 (discriminator 1) + c0006fd8: 6585 lui a1,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2235 (discriminator 1) +{ + c0006fda: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2237 (discriminator 1) assert(class_id < rt->class_count); - c0006eee: 4601 li a2,0 - c0006ef0: 8b558593 addi a1,a1,-1867 # 8b5 <__clzdi2-0xbffff74b> - c0006ef4: 00056517 auipc a0,0x56 - c0006ef8: b8450513 addi a0,a0,-1148 # c005ca78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2227 (discriminator 1) -{ - c0006efc: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2229 (discriminator 1) + c0006fdc: 4601 li a2,0 + c0006fde: 8bd58593 addi a1,a1,-1859 # 8bd <__clzdi2-0xbffff743> + c0006fe2: 00056517 auipc a0,0x56 + c0006fe6: c6650513 addi a0,a0,-922 # c005cc48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2235 (discriminator 1) +{ + c0006fea: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2237 (discriminator 1) assert(class_id < rt->class_count); - c0006efe: 31b4c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2230 (discriminator 2) + c0006fec: 3fd4c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2238 (discriminator 2) return JS_DupValue(ctx, ctx->class_proto[class_id]); - c0006f02: 613c ld a5,64(a0) - c0006f04: 02059713 slli a4,a1,0x20 - c0006f08: 01c75593 srli a1,a4,0x1c - c0006f0c: 95be add a1,a1,a5 - c0006f0e: 6188 ld a0,0(a1) - c0006f10: 658c ld a1,8(a1) - c0006f12: f5cff06f j c000666e - -00000000c0006f16 : + c0006ff0: 613c ld a5,64(a0) + c0006ff2: 02059713 slli a4,a1,0x20 + c0006ff6: 01c75593 srli a1,a4,0x1c + c0006ffa: 95be add a1,a1,a5 + c0006ffc: 6188 ld a0,0(a1) + c0006ffe: 658c ld a1,8(a1) + c0007000: f5cff06f j c000675c + +00000000c0007004 : JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c0006f16: 4118 lw a4,0(a0) - c0006f18: 2705 addiw a4,a4,1 - c0006f1a: c118 sw a4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2255 + c0007004: 4118 lw a4,0(a0) + c0007006: 2705 addiw a4,a4,1 + c0007008: c118 sw a4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2263 } - c0006f1c: 8082 ret + c000700a: 8082 ret -00000000c0006f1e : +00000000c000700c : JS_GetRuntime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2374 } - c0006f1e: 6d08 ld a0,24(a0) - c0006f20: 8082 ret + c000700c: 6d08 ld a0,24(a0) + c000700e: 8082 ret -00000000c0006f22 : +00000000c0007010 : JS_SetMaxStackSize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2379 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2387 rt->stack_size = stack_size; - c0006f22: e56c sd a1,200(a0) + c0007010: e56c sd a1,200(a0) update_stack_limit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2378 if (rt->stack_size == 0) { - c0006f24: c581 beqz a1,c0006f2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2373 + c0007012: c581 beqz a1,c000701a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2381 rt->stack_limit = rt->stack_top - rt->stack_size; - c0006f26: 697c ld a5,208(a0) - c0006f28: 40b785b3 sub a1,a5,a1 - c0006f2c: ed6c sd a1,216(a0) + c0007014: 697c ld a5,208(a0) + c0007016: 40b785b3 sub a1,a5,a1 + c000701a: ed6c sd a1,216(a0) JS_SetMaxStackSize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2381 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2389 } - c0006f2e: 8082 ret + c000701c: 8082 ret -00000000c0006f30 : +00000000c000701e : update_stack_limit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2378 if (rt->stack_size == 0) { - c0006f30: 657c ld a5,200(a0) + c000701e: 657c ld a5,200(a0) JS_UpdateStackTop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2385 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2393 rt->stack_top = js_get_stack_pointer(); - c0006f32: 0c053823 sd zero,208(a0) + c0007020: 0c053823 sd zero,208(a0) update_stack_limit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2378 if (rt->stack_size == 0) { - c0006f36: c399 beqz a5,c0006f3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2373 + c0007024: c399 beqz a5,c000702a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2381 rt->stack_limit = rt->stack_top - rt->stack_size; - c0006f38: 40f007b3 neg a5,a5 - c0006f3c: ed7c sd a5,216(a0) + c0007026: 40f007b3 neg a5,a5 + c000702a: ed7c sd a5,216(a0) JS_UpdateStackTop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2395 } - c0006f3e: 8082 ret + c000702c: 8082 ret -00000000c0006f40 : +00000000c000702e : hash_string8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2498 { - c0006f40: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2494 + c000702e: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2502 for(i = 0; i < len; i++) - c0006f42: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2490 + c0007030: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2498 { - c0006f44: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2495 + c0007032: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2503 h = h * 263 + str[i]; - c0006f46: 10700693 li a3,263 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2494 (discriminator 1) + c0007034: 10700693 li a3,263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2502 (discriminator 1) for(i = 0; i < len; i++) - c0006f4a: 00b79363 bne a5,a1,c0006f50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2498 + c0007038: 00b79363 bne a5,a1,c000703e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2506 } - c0006f4e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2495 (discriminator 3) + c000703c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2503 (discriminator 3) h = h * 263 + str[i]; - c0006f50: 02a6863b mulw a2,a3,a0 - c0006f54: 00f70533 add a0,a4,a5 - c0006f58: 00054503 lbu a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2494 (discriminator 3) + c000703e: 02a6863b mulw a2,a3,a0 + c0007042: 00f70533 add a0,a4,a5 + c0007046: 00054503 lbu a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2502 (discriminator 3) for(i = 0; i < len; i++) - c0006f5c: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2495 (discriminator 3) + c000704a: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2503 (discriminator 3) h = h * 263 + str[i]; - c0006f5e: 9d31 addw a0,a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2494 (discriminator 3) + c000704c: 9d31 addw a0,a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2502 (discriminator 3) for(i = 0; i < len; i++) - c0006f60: b7ed j c0006f4a + c000704e: b7ed j c0007038 -00000000c0006f62 : +00000000c0007050 : hash_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2511 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2519 { - c0006f62: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 + c0007050: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2521 h = hash_string16(str->u.str16, str->len, h); - c0006f64: 43dc lw a5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2511 + c0007052: 43dc lw a5,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2519 { - c0006f66: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 + c0007054: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2521 h = hash_string16(str->u.str16, str->len, h); - c0006f68: 0541 addi a0,a0,16 - c0006f6a: 02179593 slli a1,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2512 + c0007056: 0541 addi a0,a0,16 + c0007058: 02179593 slli a1,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2520 if (str->is_wide_char) - c0006f6e: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 + c000705c: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2521 h = hash_string16(str->u.str16, str->len, h); - c0006f70: 9185 srli a1,a1,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2512 + c000705e: 9185 srli a1,a1,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2520 if (str->is_wide_char) - c0006f72: 0207d163 bgez a5,c0006f94 + c0007060: 0207d163 bgez a5,c0007082 hash_string16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2505 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 for(i = 0; i < len; i++) - c0006f76: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2506 + c0007064: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2514 h = h * 263 + str[i]; - c0006f78: 10700713 li a4,263 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2505 + c0007066: 10700713 li a4,263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 for(i = 0; i < len; i++) - c0006f7c: 00b7e463 bltu a5,a1,c0006f84 + c000706a: 00b7e463 bltu a5,a1,c0007072 hash_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2525 } - c0006f80: 8532 mv a0,a2 - c0006f82: 8082 ret + c000706e: 8532 mv a0,a2 + c0007070: 8082 ret hash_string16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2514 h = h * 263 + str[i]; - c0006f84: 02c7063b mulw a2,a4,a2 - c0006f88: 00055683 lhu a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2505 + c0007072: 02c7063b mulw a2,a4,a2 + c0007076: 00055683 lhu a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 for(i = 0; i < len; i++) - c0006f8c: 0785 addi a5,a5,1 - c0006f8e: 0509 addi a0,a0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2506 + c000707a: 0785 addi a5,a5,1 + c000707c: 0509 addi a0,a0,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2514 h = h * 263 + str[i]; - c0006f90: 9e35 addw a2,a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2505 + c000707e: 9e35 addw a2,a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2513 for(i = 0; i < len; i++) - c0006f92: b7ed j c0006f7c + c0007080: b7ed j c000706a hash_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2515 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2523 h = hash_string8(str->u.str8, str->len, h); - c0006f94: b775 j c0006f40 + c0007082: b775 j c000702e -00000000c0006f96 <__JS_NewAtom>: +00000000c0007084 <__JS_NewAtom>: __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2722 -{ - c0006f96: 7159 addi sp,sp,-112 - c0006f98: f0a2 sd s0,96(sp) - c0006f9a: eca6 sd s1,88(sp) - c0006f9c: e4ce sd s3,72(sp) - c0006f9e: f486 sd ra,104(sp) - c0006fa0: e8ca sd s2,80(sp) - c0006fa2: e0d2 sd s4,64(sp) - c0006fa4: fc56 sd s5,56(sp) - c0006fa6: f85a sd s6,48(sp) - c0006fa8: f45e sd s7,40(sp) - c0006faa: f062 sd s8,32(sp) - c0006fac: ec66 sd s9,24(sp) - c0006fae: e86a sd s10,16(sp) - c0006fb0: e46e sd s11,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2730 - if (atom_type < JS_ATOM_TYPE_SYMBOL) { - c0006fb2: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2722 { - c0006fb4: 842a mv s0,a0 - c0006fb6: 84ae mv s1,a1 - c0006fb8: 89b2 mv s3,a2 + c0007084: 7159 addi sp,sp,-112 + c0007086: f0a2 sd s0,96(sp) + c0007088: eca6 sd s1,88(sp) + c000708a: e4ce sd s3,72(sp) + c000708c: f486 sd ra,104(sp) + c000708e: e8ca sd s2,80(sp) + c0007090: e0d2 sd s4,64(sp) + c0007092: fc56 sd s5,56(sp) + c0007094: f85a sd s6,48(sp) + c0007096: f45e sd s7,40(sp) + c0007098: f062 sd s8,32(sp) + c000709a: ec66 sd s9,24(sp) + c000709c: e86a sd s10,16(sp) + c000709e: e46e sd s11,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2738 + if (atom_type < JS_ATOM_TYPE_SYMBOL) { + c00070a0: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2730 +{ + c00070a2: 842a mv s0,a0 + c00070a4: 84ae mv s1,a1 + c00070a6: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2738 if (atom_type < JS_ATOM_TYPE_SYMBOL) { - c0006fba: 10c7c663 blt a5,a2,c00070c6 <__JS_NewAtom+0x130> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2732 + c00070a8: 10c7c663 blt a5,a2,c00071b4 <__JS_NewAtom+0x130> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2740 if (str->atom_type == atom_type) { - c0006fbe: 459c lw a5,8(a1) - c0006fc0: 01e7d79b srliw a5,a5,0x1e - c0006fc4: 02c79d63 bne a5,a2,c0006ffe <__JS_NewAtom+0x68> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2734 + c00070ac: 459c lw a5,8(a1) + c00070ae: 01e7d79b srliw a5,a5,0x1e + c00070b2: 02c79d63 bne a5,a2,c00070ec <__JS_NewAtom+0x68> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2742 i = js_get_atom_index(rt, str); - c0006fc8: a09fe0ef jal ra,c00059d0 - c0006fcc: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2736 + c00070b6: a09fe0ef jal ra,c0005abe + c00070ba: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2744 if (__JS_AtomIsConst(i)) - c0006fd0: 0d700793 li a5,215 - c0006fd4: 0147c563 blt a5,s4,c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2737 + c00070be: 0d700793 li a5,215 + c00070c2: 0147c563 blt a5,s4,c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2745 str->header.ref_count--; - c0006fd8: 409c lw a5,0(s1) - c0006fda: 37fd addiw a5,a5,-1 - c0006fdc: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2875 -} - c0006fde: 70a6 ld ra,104(sp) - c0006fe0: 7406 ld s0,96(sp) - c0006fe2: 64e6 ld s1,88(sp) - c0006fe4: 6946 ld s2,80(sp) - c0006fe6: 69a6 ld s3,72(sp) - c0006fe8: 7ae2 ld s5,56(sp) - c0006fea: 7b42 ld s6,48(sp) - c0006fec: 7ba2 ld s7,40(sp) - c0006fee: 7c02 ld s8,32(sp) - c0006ff0: 6ce2 ld s9,24(sp) - c0006ff2: 6d42 ld s10,16(sp) - c0006ff4: 6da2 ld s11,8(sp) - c0006ff6: 8552 mv a0,s4 - c0006ff8: 6a06 ld s4,64(sp) - c0006ffa: 6165 addi sp,sp,112 - c0006ffc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2741 + c00070c6: 409c lw a5,0(s1) + c00070c8: 37fd addiw a5,a5,-1 + c00070ca: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2883 +} + c00070cc: 70a6 ld ra,104(sp) + c00070ce: 7406 ld s0,96(sp) + c00070d0: 64e6 ld s1,88(sp) + c00070d2: 6946 ld s2,80(sp) + c00070d4: 69a6 ld s3,72(sp) + c00070d6: 7ae2 ld s5,56(sp) + c00070d8: 7b42 ld s6,48(sp) + c00070da: 7ba2 ld s7,40(sp) + c00070dc: 7c02 ld s8,32(sp) + c00070de: 6ce2 ld s9,24(sp) + c00070e0: 6d42 ld s10,16(sp) + c00070e2: 6da2 ld s11,8(sp) + c00070e4: 8552 mv a0,s4 + c00070e6: 6a06 ld s4,64(sp) + c00070e8: 6165 addi sp,sp,112 + c00070ea: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 len = str->len; - c0006ffe: 0045a903 lw s2,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2742 + c00070ec: 0045a903 lw s2,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2750 h = hash_string(str, atom_type); - c0007002: 8526 mv a0,s1 - c0007004: 85b2 mv a1,a2 - c0007006: f5dff0ef jal ra,c0006f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2744 + c00070f0: 8526 mv a0,s1 + c00070f2: 85b2 mv a1,a2 + c00070f4: f5dff0ef jal ra,c0007050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2752 h1 = h & (rt->atom_hash_size - 1); - c000700a: 443c lw a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2743 + c00070f8: 443c lw a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2751 h &= JS_ATOM_HASH_MASK; - c000700c: 40000d37 lui s10,0x40000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2742 + c00070fa: 40000d37 lui s10,0x40000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2750 h = hash_string(str, atom_type); - c0007010: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2743 + c00070fe: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2751 h &= JS_ATOM_HASH_MASK; - c0007014: 1d7d addi s10,s10,-1 - c0007016: 01aafab3 and s5,s5,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2744 + c0007102: 1d7d addi s10,s10,-1 + c0007104: 01aafab3 and s5,s5,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2752 h1 = h & (rt->atom_hash_size - 1); - c000701a: 37fd addiw a5,a5,-1 - c000701c: 00faf7b3 and a5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2745 + c0007108: 37fd addiw a5,a5,-1 + c000710a: 00faf7b3 and a5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2753 i = rt->atom_hash[h1]; - c0007020: 6c38 ld a4,88(s0) - c0007022: 02079693 slli a3,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2744 + c000710e: 6c38 ld a4,88(s0) + c0007110: 02079693 slli a3,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2752 h1 = h & (rt->atom_hash_size - 1); - c0007026: 00078b1b sext.w s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2745 + c0007114: 00078b1b sext.w s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2753 i = rt->atom_hash[h1]; - c000702a: 01e6d793 srli a5,a3,0x1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2741 + c0007118: 01e6d793 srli a5,a3,0x1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 len = str->len; - c000702e: 80000cb7 lui s9,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2745 + c000711c: 80000cb7 lui s9,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2753 i = rt->atom_hash[h1]; - c0007032: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2741 + c0007120: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 len = str->len; - c0007034: fffccc93 not s9,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2745 + c0007122: fffccc93 not s9,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2753 i = rt->atom_hash[h1]; - c0007038: 0007aa03 lw s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2741 + c0007126: 0007aa03 lw s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 len = str->len; - c000703c: 012cfbb3 and s7,s9,s2 - c0007040: 895e mv s2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2747 + c000712a: 012cfbb3 and s7,s9,s2 + c000712e: 895e mv s2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2755 while (i != 0 && i != 0xffffffff) {//// - c0007042: 5df5 li s11,-3 - c0007044: fffa079b addiw a5,s4,-1 - c0007048: 00fdff63 bgeu s11,a5,c0007066 <__JS_NewAtom+0xd0> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2769 + c0007130: 5df5 li s11,-3 + c0007132: fffa079b addiw a5,s4,-1 + c0007136: 00fdff63 bgeu s11,a5,c0007154 <__JS_NewAtom+0xd0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2777 if (rt->atom_free_index == 0) { - c000704c: 543c lw a5,104(s0) - c000704e: c3d9 beqz a5,c00070d4 <__JS_NewAtom+0x13e> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2816 + c000713a: 543c lw a5,104(s0) + c000713c: c3d9 beqz a5,c00071c2 <__JS_NewAtom+0x13e> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2824 if (str) { - c0007050: 12049163 bnez s1,c0007172 <__JS_NewAtom+0x1dc> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2837 + c000713e: 12049163 bnez s1,c0007260 <__JS_NewAtom+0x1dc> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2845 p = js_malloc_rt(rt, sizeof(JSAtomStruct)); /* empty wide string */ - c0007054: 45c1 li a1,16 - c0007056: 8522 mv a0,s0 - c0007058: b0bff0ef jal ra,c0006b62 - c000705c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2838 + c0007142: 45c1 li a1,16 + c0007144: 8522 mv a0,s0 + c0007146: b0bff0ef jal ra,c0006c50 + c000714a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2846 if (!p) - c000705e: 20051963 bnez a0,c0007270 <__JS_NewAtom+0x2da> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2839 + c000714c: 20051963 bnez a0,c000735e <__JS_NewAtom+0x2da> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2847 return JS_ATOM_NULL; - c0007062: 4a01 li s4,0 - c0007064: bfad j c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2748 + c0007150: 4a01 li s4,0 + c0007152: bfad j c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2756 p = rt->atom_array[i]; - c0007066: 703c ld a5,96(s0) - c0007068: 020a1693 slli a3,s4,0x20 - c000706c: 01d6d713 srli a4,a3,0x1d - c0007070: 97ba add a5,a5,a4 - c0007072: 0007bc03 ld s8,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 + c0007154: 703c ld a5,96(s0) + c0007156: 020a1693 slli a3,s4,0x20 + c000715a: 01d6d713 srli a4,a3,0x1d + c000715e: 97ba add a5,a5,a4 + c0007160: 0007bc03 ld s8,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2757 if (p->hash == h && - c0007076: 008c2783 lw a5,8(s8) - c000707a: 00fd7733 and a4,s10,a5 - c000707e: 2701 sext.w a4,a4 - c0007080: 05571063 bne a4,s5,c00070c0 <__JS_NewAtom+0x12a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2749 (discriminator 1) - c0007084: 01e7d79b srliw a5,a5,0x1e - c0007088: 03379c63 bne a5,s3,c00070c0 <__JS_NewAtom+0x12a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2751 + c0007164: 008c2783 lw a5,8(s8) + c0007168: 00fd7733 and a4,s10,a5 + c000716c: 2701 sext.w a4,a4 + c000716e: 05571063 bne a4,s5,c00071ae <__JS_NewAtom+0x12a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2757 (discriminator 1) + c0007172: 01e7d79b srliw a5,a5,0x1e + c0007176: 03379c63 bne a5,s3,c00071ae <__JS_NewAtom+0x12a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2759 p->len == len && - c000708c: 004c2783 lw a5,4(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2750 + c000717a: 004c2783 lw a5,4(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2758 p->atom_type == atom_type && - c0007090: 00fcf7b3 and a5,s9,a5 - c0007094: 02fb9663 bne s7,a5,c00070c0 <__JS_NewAtom+0x12a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2752 + c000717e: 00fcf7b3 and a5,s9,a5 + c0007182: 02fb9663 bne s7,a5,c00071ae <__JS_NewAtom+0x12a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2760 js_string_memcmp(p, str, len) == 0) { - c0007098: 864a mv a2,s2 - c000709a: 85a6 mv a1,s1 - c000709c: 8562 mv a0,s8 - c000709e: 97bff0ef jal ra,c0006a18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2751 + c0007186: 864a mv a2,s2 + c0007188: 85a6 mv a1,s1 + c000718a: 8562 mv a0,s8 + c000718c: 97bff0ef jal ra,c0006b06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2759 p->len == len && - c00070a2: ed19 bnez a0,c00070c0 <__JS_NewAtom+0x12a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2753 + c0007190: ed19 bnez a0,c00071ae <__JS_NewAtom+0x12a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2761 if (!__JS_AtomIsConst(i)) - c00070a4: 0d700793 li a5,215 - c00070a8: 0147d763 bge a5,s4,c00070b6 <__JS_NewAtom+0x120> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2754 + c0007192: 0d700793 li a5,215 + c0007196: 0147d763 bge a5,s4,c00071a4 <__JS_NewAtom+0x120> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2762 p->header.ref_count++; - c00070ac: 000c2783 lw a5,0(s8) - c00070b0: 2785 addiw a5,a5,1 - c00070b2: 00fc2023 sw a5,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2873 + c000719a: 000c2783 lw a5,0(s8) + c000719e: 2785 addiw a5,a5,1 + c00071a0: 00fc2023 sw a5,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2881 js_free_string(rt, str); - c00070b6: 85a6 mv a1,s1 - c00070b8: 8522 mv a0,s0 - c00070ba: bc7ff0ef jal ra,c0006c80 - c00070be: b705 j c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2757 + c00071a4: 85a6 mv a1,s1 + c00071a6: 8522 mv a0,s0 + c00071a8: bc7ff0ef jal ra,c0006d6e + c00071ac: b705 j c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2765 i = p->hash_next; - c00070c0: 00cc2a03 lw s4,12(s8) - c00070c4: b741 j c0007044 <__JS_NewAtom+0xae> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2761 + c00071ae: 00cc2a03 lw s4,12(s8) + c00071b2: b741 j c0007132 <__JS_NewAtom+0xae> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2769 if (atom_type == JS_ATOM_TYPE_SYMBOL) { - c00070c6: ffd60993 addi s3,a2,-3 # 3ffffffd <__clzdi2-0x80000003> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2743 + c00071b4: ffd60993 addi s3,a2,-3 # 3ffffffd <__clzdi2-0x80000003> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2751 h &= JS_ATOM_HASH_MASK; - c00070ca: 01303ab3 snez s5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2760 + c00071b8: 01303ab3 snez s5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2768 h1 = 0; /* avoid warning */ - c00070ce: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2765 + c00071bc: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2773 atom_type = JS_ATOM_TYPE_SYMBOL; - c00070d0: 498d li s3,3 - c00070d2: bfad j c000704c <__JS_NewAtom+0xb6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2778 + c00071be: 498d li s3,3 + c00071c0: bfad j c000713a <__JS_NewAtom+0xb6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2786 new_size = max_int(211, rt->atom_size * 3 / 2); - c00070d4: 4838 lw a4,80(s0) - c00070d6: 478d li a5,3 + c00071c2: 4838 lw a4,80(s0) + c00071c4: 478d li a5,3 max_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:72 return a; - c00070d8: 0d300b93 li s7,211 + c00071c6: 0d300b93 li s7,211 __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2778 - c00070dc: 02e786bb mulw a3,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2786 + c00071ca: 02e786bb mulw a3,a5,a4 max_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:71 if (a > b) - c00070e0: 1a500713 li a4,421 - c00070e4: 00d75463 bge a4,a3,c00070ec <__JS_NewAtom+0x156> + c00071ce: 1a500713 li a4,421 + c00071d2: 00d75463 bge a4,a3,c00071da <__JS_NewAtom+0x156> __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2778 - c00070e8: 4016db9b sraiw s7,a3,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2786 + c00071d6: 4016db9b sraiw s7,a3,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2790 new_array = js_realloc_rt(rt, rt->atom_array, sizeof(*new_array) * new_size); - c00070ec: 702c ld a1,96(s0) - c00070ee: 003b9613 slli a2,s7,0x3 - c00070f2: 8522 mv a0,s0 - c00070f4: f7dfc0ef jal ra,c0004070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2778 + c00071da: 702c ld a1,96(s0) + c00071dc: 003b9613 slli a2,s7,0x3 + c00071e0: 8522 mv a0,s0 + c00071e2: e8ffc0ef jal ra,c0004070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2786 new_size = max_int(211, rt->atom_size * 3 / 2); - c00070f8: 000b891b sext.w s2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2782 + c00071e6: 000b891b sext.w s2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2790 new_array = js_realloc_rt(rt, rt->atom_array, sizeof(*new_array) * new_size); - c00070fc: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2783 + c00071ea: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2791 if (!new_array) - c00070fe: cd01 beqz a0,c0007116 <__JS_NewAtom+0x180> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2786 + c00071ec: cd01 beqz a0,c0007204 <__JS_NewAtom+0x180> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2794 start = rt->atom_size; - c0007100: 483c lw a5,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2787 + c00071ee: 483c lw a5,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2795 if (start == 0) { - c0007102: eb8d bnez a5,c0007134 <__JS_NewAtom+0x19e> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2789 + c00071f0: eb8d bnez a5,c0007222 <__JS_NewAtom+0x19e> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2797 p = js_mallocz_rt(rt, sizeof(JSAtomStruct)); - c0007104: 45c1 li a1,16 - c0007106: 8522 mv a0,s0 - c0007108: c5fff0ef jal ra,c0006d66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2790 + c00071f2: 45c1 li a1,16 + c00071f4: 8522 mv a0,s0 + c00071f6: c5fff0ef jal ra,c0006e54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2798 if (!p) { - c000710c: e519 bnez a0,c000711a <__JS_NewAtom+0x184> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2791 + c00071fa: e519 bnez a0,c0007208 <__JS_NewAtom+0x184> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2799 js_free_rt(rt, new_array); - c000710e: 85d2 mv a1,s4 - c0007110: 8522 mv a0,s0 - c0007112: a95ff0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2872 + c00071fc: 85d2 mv a1,s4 + c00071fe: 8522 mv a0,s0 + c0007200: a95ff0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2880 if (str) - c0007116: d4b1 beqz s1,c0007062 <__JS_NewAtom+0xcc> - c0007118: a209 j c000721a <__JS_NewAtom+0x284> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2794 + c0007204: d4b1 beqz s1,c0007150 <__JS_NewAtom+0xcc> + c0007206: a209 j c0007308 <__JS_NewAtom+0x284> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2802 p->header.ref_count = 1; /* not refcounted */ - c000711a: 4785 li a5,1 - c000711c: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2795 + c0007208: 4785 li a5,1 + c000720a: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2803 p->atom_type = JS_ATOM_TYPE_SYMBOL; - c000711e: 451c lw a5,8(a0) - c0007120: c0000737 lui a4,0xc0000 - c0007124: 8fd9 or a5,a5,a4 - c0007126: c51c sw a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2799 + c000720c: 451c lw a5,8(a0) + c000720e: c0000737 lui a4,0xc0000 + c0007212: 8fd9 or a5,a5,a4 + c0007214: c51c sw a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2807 new_array[0] = p; - c0007128: 00aa3023 sd a0,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2800 + c0007216: 00aa3023 sd a0,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2808 rt->atom_count++; - c000712c: 447c lw a5,76(s0) - c000712e: 2785 addiw a5,a5,1 - c0007130: c47c sw a5,76(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2801 + c000721a: 447c lw a5,76(s0) + c000721c: 2785 addiw a5,a5,1 + c000721e: c47c sw a5,76(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2809 start = 1; - c0007132: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2803 + c0007220: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2811 rt->atom_size = new_size; - c0007134: 02079713 slli a4,a5,0x20 - c0007138: 05742823 sw s7,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2804 + c0007222: 02079713 slli a4,a5,0x20 + c0007226: 05742823 sw s7,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2812 rt->atom_array = new_array; - c000713c: 07443023 sd s4,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2805 + c000722a: 07443023 sd s4,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2813 rt->atom_free_index = start; - c0007140: d43c sw a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2806 + c000722e: d43c sw a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2814 for(i = start; i < new_size; i++) { - c0007142: 01d75693 srli a3,a4,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2808 + c0007230: 01d75693 srli a3,a4,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2816 if (i == (new_size - 1)) - c0007146: fff9059b addiw a1,s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2806 (discriminator 1) + c0007234: fff9059b addiw a1,s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2814 (discriminator 1) for(i = start; i < new_size; i++) { - c000714a: f127f3e3 bgeu a5,s2,c0007050 <__JS_NewAtom+0xba> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2811 + c0007238: f127f3e3 bgeu a5,s2,c000713e <__JS_NewAtom+0xba> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2819 next = i + 1; - c000714e: 0017861b addiw a2,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2809 + c000723c: 0017861b addiw a2,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2817 next = 0; - c0007152: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2808 + c0007240: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2816 if (i == (new_size - 1)) - c0007154: 00f58363 beq a1,a5,c000715a <__JS_NewAtom+0x1c4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2811 + c0007242: 00f58363 beq a1,a5,c0007248 <__JS_NewAtom+0x1c4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2819 next = i + 1; - c0007158: 8732 mv a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2812 (discriminator 2) + c0007246: 8732 mv a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2820 (discriminator 2) rt->atom_array[i] = atom_set_free(next); - c000715a: 703c ld a5,96(s0) + c0007248: 703c ld a5,96(s0) atom_set_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1898 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1906 (discriminator 2) return (JSAtomStruct *)(((uintptr_t)v << 1) | 1); - c000715c: 02071513 slli a0,a4,0x20 - c0007160: 01f55713 srli a4,a0,0x1f + c000724a: 02071513 slli a0,a4,0x20 + c000724e: 01f55713 srli a4,a0,0x1f __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2812 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2820 (discriminator 2) rt->atom_array[i] = atom_set_free(next); - c0007164: 97b6 add a5,a5,a3 + c0007252: 97b6 add a5,a5,a3 atom_set_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1898 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1906 (discriminator 2) return (JSAtomStruct *)(((uintptr_t)v << 1) | 1); - c0007166: 00176713 ori a4,a4,1 + c0007254: 00176713 ori a4,a4,1 __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2812 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2820 (discriminator 2) rt->atom_array[i] = atom_set_free(next); - c000716a: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2806 (discriminator 2) + c0007258: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2814 (discriminator 2) for(i = start; i < new_size; i++) { - c000716c: 06a1 addi a3,a3,8 - c000716e: 87b2 mv a5,a2 - c0007170: bfe9 j c000714a <__JS_NewAtom+0x1b4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2817 + c000725a: 06a1 addi a3,a3,8 + c000725c: 87b2 mv a5,a2 + c000725e: bfe9 j c0007238 <__JS_NewAtom+0x1b4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2825 if (str->atom_type == 0) { - c0007172: 449c lw a5,8(s1) - c0007174: c0000737 lui a4,0xc0000 - c0007178: 8f7d and a4,a4,a5 - c000717a: 2701 sext.w a4,a4 - c000717c: ef2d bnez a4,c00071f6 <__JS_NewAtom+0x260> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2819 + c0007260: 449c lw a5,8(s1) + c0007262: c0000737 lui a4,0xc0000 + c0007266: 8f7d and a4,a4,a5 + c0007268: 2701 sext.w a4,a4 + c000726a: ef2d bnez a4,c00072e4 <__JS_NewAtom+0x260> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2827 p->atom_type = atom_type; - c000717e: 02279713 slli a4,a5,0x22 - c0007182: 01e9969b slliw a3,s3,0x1e - c0007186: 9309 srli a4,a4,0x22 - c0007188: 87b6 mv a5,a3 - c000718a: 8fd9 or a5,a5,a4 - c000718c: c49c sw a5,8(s1) - c000718e: 8926 mv s2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2849 + c000726c: 02279713 slli a4,a5,0x22 + c0007270: 01e9969b slliw a3,s3,0x1e + c0007274: 9309 srli a4,a4,0x22 + c0007276: 87b6 mv a5,a3 + c0007278: 8fd9 or a5,a5,a4 + c000727a: c49c sw a5,8(s1) + c000727c: 8926 mv s2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2857 i = rt->atom_free_index; - c0007190: 06842a03 lw s4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2853 + c000727e: 06842a03 lw s4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2861 p->hash = h; - c0007194: 01e9951b slliw a0,s3,0x1e - c0007198: 00aaeab3 or s5,s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2850 + c0007282: 01e9951b slliw a0,s3,0x1e + c0007286: 00aaeab3 or s5,s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2858 rt->atom_free_index = atom_get_free(rt->atom_array[i]); - c000719c: 020a1793 slli a5,s4,0x20 - c00071a0: 01d7d713 srli a4,a5,0x1d - c00071a4: 703c ld a5,96(s0) - c00071a6: 97ba add a5,a5,a4 + c000728a: 020a1793 slli a5,s4,0x20 + c000728e: 01d7d713 srli a4,a5,0x1d + c0007292: 703c ld a5,96(s0) + c0007294: 97ba add a5,a5,a4 atom_get_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1896 return (uintptr_t)p >> 1; - c00071a8: 6398 ld a4,0(a5) - c00071aa: 8305 srli a4,a4,0x1 + c0007296: 6398 ld a4,0(a5) + c0007298: 8305 srli a4,a4,0x1 __JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2858 rt->atom_free_index = atom_get_free(rt->atom_array[i]); - c00071ac: d438 sw a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2851 + c000729a: d438 sw a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2859 rt->atom_array[i] = p; - c00071ae: 0127b023 sd s2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2854 + c000729c: 0127b023 sd s2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2862 p->hash_next = i; /* atom_index */ - c00071b2: 01492623 sw s4,12(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2853 + c00072a0: 01492623 sw s4,12(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2861 p->hash = h; - c00071b6: 01592423 sw s5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2857 + c00072a4: 01592423 sw s5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2865 rt->atom_count++; - c00071ba: 447c lw a5,76(s0) - c00071bc: 2785 addiw a5,a5,1 - c00071be: c47c sw a5,76(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2859 + c00072a8: 447c lw a5,76(s0) + c00072aa: 2785 addiw a5,a5,1 + c00072ac: c47c sw a5,76(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2867 if (atom_type != JS_ATOM_TYPE_SYMBOL) { - c00071c0: 478d li a5,3 - c00071c2: e0f98ee3 beq s3,a5,c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2860 + c00072ae: 478d li a5,3 + c00072b0: e0f98ee3 beq s3,a5,c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2868 p->hash_next = rt->atom_hash[h1]; - c00071c6: 020b1793 slli a5,s6,0x20 - c00071ca: 01e7db13 srli s6,a5,0x1e - c00071ce: 6c3c ld a5,88(s0) - c00071d0: 97da add a5,a5,s6 - c00071d2: 439c lw a5,0(a5) - c00071d4: 00f92623 sw a5,12(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2861 + c00072b4: 020b1793 slli a5,s6,0x20 + c00072b8: 01e7db13 srli s6,a5,0x1e + c00072bc: 6c3c ld a5,88(s0) + c00072be: 97da add a5,a5,s6 + c00072c0: 439c lw a5,0(a5) + c00072c2: 00f92623 sw a5,12(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2869 rt->atom_hash[h1] = i; - c00071d8: 6c3c ld a5,88(s0) - c00071da: 9b3e add s6,s6,a5 - c00071dc: 014b2023 sw s4,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2862 + c00072c6: 6c3c ld a5,88(s0) + c00072c8: 9b3e add s6,s6,a5 + c00072ca: 014b2023 sw s4,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2870 if (unlikely(rt->atom_count >= rt->atom_count_resize)) - c00071e0: 4478 lw a4,76(s0) - c00071e2: 487c lw a5,84(s0) - c00071e4: def74de3 blt a4,a5,c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2863 + c00072ce: 4478 lw a4,76(s0) + c00072d0: 487c lw a5,84(s0) + c00072d2: def74de3 blt a4,a5,c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2871 JS_ResizeAtomHash(rt, rt->atom_hash_size * 2); - c00071e8: 442c lw a1,72(s0) - c00071ea: 8522 mv a0,s0 - c00071ec: 0015959b slliw a1,a1,0x1 - c00071f0: b95ff0ef jal ra,c0006d84 - c00071f4: b3ed j c0006fde <__JS_NewAtom+0x48> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2822 + c00072d6: 442c lw a1,72(s0) + c00072d8: 8522 mv a0,s0 + c00072da: 0015959b slliw a1,a1,0x1 + c00072de: b95ff0ef jal ra,c0006e72 + c00072e2: b3ed j c00070cc <__JS_NewAtom+0x48> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2830 (str->len << str->is_wide_char) + - c00071f6: 40d8 lw a4,4(s1) - c00071f8: 80000637 lui a2,0x80000 - c00071fc: fff64a13 not s4,a2 - c0007200: 01f7579b srliw a5,a4,0x1f - c0007204: 014775b3 and a1,a4,s4 - c0007208: 00f595bb sllw a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2821 + c00072e4: 40d8 lw a4,4(s1) + c00072e6: 80000637 lui a2,0x80000 + c00072ea: fff64a13 not s4,a2 + c00072ee: 01f7579b srliw a5,a4,0x1f + c00072f2: 014775b3 and a1,a4,s4 + c00072f6: 00f595bb sllw a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2829 p = js_malloc_rt(rt, sizeof(JSString) + - c000720c: 8d9d sub a1,a1,a5 - c000720e: 05c5 addi a1,a1,17 - c0007210: 8522 mv a0,s0 - c0007212: 951ff0ef jal ra,c0006b62 - c0007216: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2824 + c00072fa: 8d9d sub a1,a1,a5 + c00072fc: 05c5 addi a1,a1,17 + c00072fe: 8522 mv a0,s0 + c0007300: 951ff0ef jal ra,c0006c50 + c0007304: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2832 if (unlikely(!p)) - c0007218: e119 bnez a0,c000721e <__JS_NewAtom+0x288> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2870 + c0007306: e119 bnez a0,c000730c <__JS_NewAtom+0x288> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2878 i = JS_ATOM_NULL; - c000721a: 4a01 li s4,0 - c000721c: bd69 j c00070b6 <__JS_NewAtom+0x120> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2826 + c0007308: 4a01 li s4,0 + c000730a: bd69 j c00071a4 <__JS_NewAtom+0x120> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2834 p->header.ref_count = 1; - c000721e: 4785 li a5,1 - c0007220: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2827 + c000730c: 4785 li a5,1 + c000730e: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2835 p->is_wide_char = str->is_wide_char; - c0007222: 40dc lw a5,4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2828 + c0007310: 40dc lw a5,4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2836 p->len = str->len; - c0007224: 800006b7 lui a3,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2832 + c0007312: 800006b7 lui a3,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2840 memcpy(p->u.str8, str->u.str8, (str->len << str->is_wide_char) + - c0007228: 01048593 addi a1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2827 + c0007316: 01048593 addi a1,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2835 p->is_wide_char = str->is_wide_char; - c000722c: 01f7d79b srliw a5,a5,0x1f - c0007230: 01f7971b slliw a4,a5,0x1f - c0007234: 415c lw a5,4(a0) - c0007236: 0147f7b3 and a5,a5,s4 - c000723a: 8fd9 or a5,a5,a4 - c000723c: c15c sw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2828 + c000731a: 01f7d79b srliw a5,a5,0x1f + c000731e: 01f7971b slliw a4,a5,0x1f + c0007322: 415c lw a5,4(a0) + c0007324: 0147f7b3 and a5,a5,s4 + c0007328: 8fd9 or a5,a5,a4 + c000732a: c15c sw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2836 p->len = str->len; - c000723e: 40d8 lw a4,4(s1) - c0007240: 8ff5 and a5,a5,a3 - c0007242: 00ea7733 and a4,s4,a4 - c0007246: 8fd9 or a5,a5,a4 - c0007248: c15c sw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2832 + c000732c: 40d8 lw a4,4(s1) + c000732e: 8ff5 and a5,a5,a3 + c0007330: 00ea7733 and a4,s4,a4 + c0007334: 8fd9 or a5,a5,a4 + c0007336: c15c sw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2840 memcpy(p->u.str8, str->u.str8, (str->len << str->is_wide_char) + - c000724a: 40dc lw a5,4(s1) - c000724c: 0541 addi a0,a0,16 - c000724e: 01f7d69b srliw a3,a5,0x1f - c0007252: 0147f633 and a2,a5,s4 - c0007256: 01f7d71b srliw a4,a5,0x1f - c000725a: 00d6163b sllw a2,a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2833 + c0007338: 40dc lw a5,4(s1) + c000733a: 0541 addi a0,a0,16 + c000733c: 01f7d69b srliw a3,a5,0x1f + c0007340: 0147f633 and a2,a5,s4 + c0007344: 01f7d71b srliw a4,a5,0x1f + c0007348: 00d6163b sllw a2,a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2841 1 - str->is_wide_char); - c000725e: 9e19 subw a2,a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2832 + c000734c: 9e19 subw a2,a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2840 memcpy(p->u.str8, str->u.str8, (str->len << str->is_wide_char) + - c0007260: 2605 addiw a2,a2,1 - c0007262: 7784f0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2834 + c000734e: 2605 addiw a2,a2,1 + c0007350: 05b4f0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2842 js_free_string(rt, str); - c0007266: 85a6 mv a1,s1 - c0007268: 8522 mv a0,s0 - c000726a: a17ff0ef jal ra,c0006c80 - c000726e: b70d j c0007190 <__JS_NewAtom+0x1fa> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2840 + c0007354: 85a6 mv a1,s1 + c0007356: 8522 mv a0,s0 + c0007358: a17ff0ef jal ra,c0006d6e + c000735c: b70d j c000727e <__JS_NewAtom+0x1fa> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2848 p->header.ref_count = 1; - c0007270: 4785 li a5,1 - c0007272: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2842 + c000735e: 4785 li a5,1 + c0007360: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2850 p->len = 0; - c0007274: 800007b7 lui a5,0x80000 - c0007278: c15c sw a5,4(a0) - c000727a: bf19 j c0007190 <__JS_NewAtom+0x1fa> + c0007362: 800007b7 lui a5,0x80000 + c0007366: c15c sw a5,4(a0) + c0007368: bf19 j c000727e <__JS_NewAtom+0x1fa> -00000000c000727c <__JS_NewAtomInit>: +00000000c000736a <__JS_NewAtomInit>: __JS_NewAtomInit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 { - c000727c: 7179 addi sp,sp,-48 - c000727e: f022 sd s0,32(sp) - c0007280: 8432 mv s0,a2 - c0007282: e052 sd s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2882 + c000736a: 7179 addi sp,sp,-48 + c000736c: f022 sd s0,32(sp) + c000736e: 8432 mv s0,a2 + c0007370: e052 sd s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 p = js_alloc_string_rt(rt, len, 0); - c0007284: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2880 + c0007372: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 { - c0007286: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2882 + c0007374: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 p = js_alloc_string_rt(rt, len, 0); - c0007288: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2880 + c0007376: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 { - c000728a: e84a sd s2,16(sp) - c000728c: e44e sd s3,8(sp) - c000728e: f406 sd ra,40(sp) - c0007290: ec26 sd s1,24(sp) - c0007292: 892a mv s2,a0 - c0007294: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2882 + c0007378: e84a sd s2,16(sp) + c000737a: e44e sd s3,8(sp) + c000737c: f406 sd ra,40(sp) + c000737e: ec26 sd s1,24(sp) + c0007380: 892a mv s2,a0 + c0007382: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 p = js_alloc_string_rt(rt, len, 0); - c0007296: 8d5ff0ef jal ra,c0006b6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2883 + c0007384: 8d5ff0ef jal ra,c0006c58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2891 if (!p) - c000729a: c515 beqz a0,c00072c6 <__JS_NewAtomInit+0x4a> - c000729c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2885 + c0007388: c515 beqz a0,c00073b4 <__JS_NewAtomInit+0x4a> + c000738a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2893 memcpy(p->u.str8, str, len); - c000729e: 8622 mv a2,s0 - c00072a0: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2886 + c000738c: 8622 mv a2,s0 + c000738e: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2894 p->u.str8[len] = '\0'; - c00072a2: 9426 add s0,s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2885 + c0007390: 9426 add s0,s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2893 memcpy(p->u.str8, str, len); - c00072a4: 0541 addi a0,a0,16 - c00072a6: 7344f0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2886 + c0007392: 0541 addi a0,a0,16 + c0007394: 0174f0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2894 p->u.str8[len] = '\0'; - c00072aa: 00040823 sb zero,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 + c0007398: 00040823 sb zero,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2896 } - c00072ae: 7402 ld s0,32(sp) - c00072b0: 70a2 ld ra,40(sp) - c00072b2: 6a02 ld s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2887 + c000739c: 7402 ld s0,32(sp) + c000739e: 70a2 ld ra,40(sp) + c00073a0: 6a02 ld s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2895 return __JS_NewAtom(rt, p, atom_type); - c00072b4: 864e mv a2,s3 - c00072b6: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 + c00073a2: 864e mv a2,s3 + c00073a4: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2896 } - c00072b8: 69a2 ld s3,8(sp) - c00072ba: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2887 + c00073a6: 69a2 ld s3,8(sp) + c00073a8: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2895 return __JS_NewAtom(rt, p, atom_type); - c00072bc: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 + c00073aa: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2896 } - c00072be: 6942 ld s2,16(sp) - c00072c0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2887 + c00073ac: 6942 ld s2,16(sp) + c00073ae: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2895 return __JS_NewAtom(rt, p, atom_type); - c00072c2: cd5ff06f j c0006f96 <__JS_NewAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2888 -} - c00072c6: 70a2 ld ra,40(sp) - c00072c8: 7402 ld s0,32(sp) - c00072ca: 64e2 ld s1,24(sp) - c00072cc: 6942 ld s2,16(sp) - c00072ce: 69a2 ld s3,8(sp) - c00072d0: 6a02 ld s4,0(sp) - c00072d2: 6145 addi sp,sp,48 - c00072d4: 8082 ret - -00000000c00072d6 : + c00073b0: cd5ff06f j c0007084 <__JS_NewAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2896 +} + c00073b4: 70a2 ld ra,40(sp) + c00073b6: 7402 ld s0,32(sp) + c00073b8: 64e2 ld s1,24(sp) + c00073ba: 6942 ld s2,16(sp) + c00073bc: 69a2 ld s3,8(sp) + c00073be: 6a02 ld s4,0(sp) + c00073c0: 6145 addi sp,sp,48 + c00073c2: 8082 ret + +00000000c00073c4 : JS_NewAtomStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3002 { - c00072d6: 7179 addi sp,sp,-48 - c00072d8: f022 sd s0,32(sp) - c00072da: f406 sd ra,40(sp) - c00072dc: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2995 + c00073c4: 7179 addi sp,sp,-48 + c00073c6: f022 sd s0,32(sp) + c00073c8: f406 sd ra,40(sp) + c00073ca: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3003 JSRuntime *rt = ctx->rt; - c00072de: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2997 + c00073cc: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3005 if (is_num_string(&n, p)) { - c00072e0: 0068 addi a0,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2994 + c00073ce: 0068 addi a0,sp,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3002 { - c00072e2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2997 + c00073d0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3005 if (is_num_string(&n, p)) { - c00072e4: dc7fc0ef jal ra,c00040aa - c00072e8: c115 beqz a0,c000730c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2998 + c00073d2: cd9fc0ef jal ra,c00040aa + c00073d6: c115 beqz a0,c00073fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3006 if (n <= JS_ATOM_MAX_INT) { - c00072ea: 47b2 lw a5,12(sp) - c00072ec: 0207c063 bltz a5,c000730c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2999 + c00073d8: 47b2 lw a5,12(sp) + c00073da: 0207c063 bltz a5,c00073fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3007 js_free_string(rt, p); - c00072f0: 8526 mv a0,s1 - c00072f2: 85a2 mv a1,s0 - c00072f4: 98dff0ef jal ra,c0006c80 + c00073de: 8526 mv a0,s1 + c00073e0: 85a2 mv a1,s0 + c00073e2: 98dff0ef jal ra,c0006d6e __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c00072f8: 4532 lw a0,12(sp) - c00072fa: 800007b7 lui a5,0x80000 - c00072fe: 8d5d or a0,a0,a5 + c00073e6: 4532 lw a0,12(sp) + c00073e8: 800007b7 lui a5,0x80000 + c00073ec: 8d5d or a0,a0,a5 JS_NewAtomStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3005 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3013 } - c0007300: 70a2 ld ra,40(sp) - c0007302: 7402 ld s0,32(sp) - c0007304: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3004 + c00073ee: 70a2 ld ra,40(sp) + c00073f0: 7402 ld s0,32(sp) + c00073f2: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3012 return __JS_NewAtom(rt, p, JS_ATOM_TYPE_STRING); - c0007306: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3005 + c00073f4: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3013 } - c0007308: 6145 addi sp,sp,48 - c000730a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3004 + c00073f6: 6145 addi sp,sp,48 + c00073f8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3012 return __JS_NewAtom(rt, p, JS_ATOM_TYPE_STRING); - c000730c: 4605 li a2,1 - c000730e: 85a2 mv a1,s0 - c0007310: 8526 mv a0,s1 - c0007312: c85ff0ef jal ra,c0006f96 <__JS_NewAtom> - c0007316: b7ed j c0007300 + c00073fa: 4605 li a2,1 + c00073fc: 85a2 mv a1,s0 + c00073fe: 8526 mv a0,s1 + c0007400: c85ff0ef jal ra,c0007084 <__JS_NewAtom> + c0007404: b7ed j c00073ee -00000000c0007318 : +00000000c0007406 : map_hash_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47025 static uint32_t map_hash_key(JSContext *ctx, JSValueConst key) - c0007318: 1101 addi sp,sp,-32 - c000731a: e822 sd s0,16(sp) - c000731c: ec06 sd ra,24(sp) - c000731e: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47019 + c0007406: 1101 addi sp,sp,-32 + c0007408: e822 sd s0,16(sp) + c000740a: ec06 sd ra,24(sp) + c000740c: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47027 uint32_t tag = JS_VALUE_GET_NORM_TAG(key); - c0007320: 0005841b sext.w s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47024 + c000740e: 0005841b sext.w s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47032 switch(tag) { - c0007324: 479d li a5,7 - c0007326: 06f40363 beq s0,a5,c000738c - c000732a: 0087ec63 bltu a5,s0,c0007342 - c000732e: c029 beqz s0,c0007370 - c0007330: 4785 li a5,1 - c0007332: 02f40863 beq s0,a5,c0007362 - c0007336: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47053 + c0007412: 479d li a5,7 + c0007414: 06f40363 beq s0,a5,c000747a + c0007418: 0087ec63 bltu a5,s0,c0007430 + c000741c: c029 beqz s0,c000745e + c000741e: 4785 li a5,1 + c0007420: 02f40863 beq s0,a5,c0007450 + c0007424: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47061 } - c0007338: 60e2 ld ra,24(sp) - c000733a: 8d21 xor a0,a0,s0 - c000733c: 6442 ld s0,16(sp) - c000733e: 6105 addi sp,sp,32 - c0007340: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47024 + c0007426: 60e2 ld ra,24(sp) + c0007428: 8d21 xor a0,a0,s0 + c000742a: 6442 ld s0,16(sp) + c000742c: 6105 addi sp,sp,32 + c000742e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47032 switch(tag) { - c0007342: 57e5 li a5,-7 - c0007344: 02f40163 beq s0,a5,c0007366 - c0007348: 57fd li a5,-1 - c000734a: 00f40563 beq s0,a5,c0007354 - c000734e: 57e1 li a5,-8 - c0007350: fef413e3 bne s0,a5,c0007336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47033 + c0007430: 57e5 li a5,-7 + c0007432: 02f40163 beq s0,a5,c0007454 + c0007436: 57fd li a5,-1 + c0007438: 00f40563 beq s0,a5,c0007442 + c000743c: 57e1 li a5,-8 + c000743e: fef413e3 bne s0,a5,c0007424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47041 h = (uintptr_t)JS_VALUE_GET_PTR(key) * 3163; - c0007354: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47045 + c0007442: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47053 h = (u.u32[0] ^ u.u32[1]) * 3163; - c0007356: 6505 lui a0,0x1 - c0007358: c5b5051b addiw a0,a0,-933 - c000735c: 02f5053b mulw a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47046 + c0007444: 6505 lui a0,0x1 + c0007446: c5b5051b addiw a0,a0,-933 + c000744a: 02f5053b mulw a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47054 break; - c0007360: bfe1 j c0007338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47026 + c000744e: bfe1 j c0007426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47034 h = JS_VALUE_GET_INT(key); - c0007362: 4502 lw a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47027 + c0007450: 4502 lw a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47035 break; - c0007364: bfd1 j c0007338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47029 + c0007452: bfd1 j c0007426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47037 h = hash_string(JS_VALUE_GET_STRING(key), 0); - c0007366: 4581 li a1,0 - c0007368: bfbff0ef jal ra,c0006f62 - c000736c: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47030 + c0007454: 4581 li a1,0 + c0007456: bfbff0ef jal ra,c0007050 + c000745a: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47038 break; - c000736e: b7e9 j c0007338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47036 + c000745c: b7e9 j c0007426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47044 d = JS_VALUE_GET_INT(key) * 3163; - c0007370: 4782 lw a5,0(sp) - c0007372: 6705 lui a4,0x1 - c0007374: c5b7071b addiw a4,a4,-933 - c0007378: 02e787bb mulw a5,a5,a4 - c000737c: d20787d3 fcvt.d.w fa5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47042 + c000745e: 4782 lw a5,0(sp) + c0007460: 6705 lui a4,0x1 + c0007462: c5b7071b addiw a4,a4,-933 + c0007466: 02e787bb mulw a5,a5,a4 + c000746a: d20787d3 fcvt.d.w fa5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47050 d = JS_FLOAT64_NAN; - c0007380: e2078553 fmv.x.d a0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47045 + c000746e: e2078553 fmv.x.d a0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47053 h = (u.u32[0] ^ u.u32[1]) * 3163; - c0007384: 02055793 srli a5,a0,0x20 - c0007388: 8fa9 xor a5,a5,a0 - c000738a: b7f1 j c0007356 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47039 + c0007472: 02055793 srli a5,a0,0x20 + c0007476: 8fa9 xor a5,a5,a0 + c0007478: b7f1 j c0007444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47047 d = JS_VALUE_GET_FLOAT64(key); - c000738c: 6502 ld a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47041 + c000747a: 6502 ld a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47049 if (isnan(d)) - c000738e: f20507d3 fmv.d.x fa5,a0 - c0007392: a2f7a7d3 feq.d a5,fa5,fa5 - c0007396: f7fd bnez a5,c0007384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47042 + c000747c: f20507d3 fmv.d.x fa5,a0 + c0007480: a2f7a7d3 feq.d a5,fa5,fa5 + c0007484: f7fd bnez a5,c0007472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47050 d = JS_FLOAT64_NAN; - c0007398: 0006d797 auipc a5,0x6d - c000739c: 3f07b787 fld fa5,1008(a5) # c0074788 <_erodata+0x8> - c00073a0: 12f7f7d3 fmul.d fa5,fa5,fa5 - c00073a4: f2000753 fmv.d.x fa4,zero - c00073a8: 12e7f7d3 fmul.d fa5,fa5,fa4 - c00073ac: bfd1 j c0007380 - -00000000c00073ae <__JS_FindAtom.constprop.0>: + c0007486: 0006d797 auipc a5,0x6d + c000748a: 5627b787 fld fa5,1378(a5) # c00749e8 <_erodata+0x8> + c000748e: 12f7f7d3 fmul.d fa5,fa5,fa5 + c0007492: f2000753 fmv.d.x fa4,zero + c0007496: 12e7f7d3 fmul.d fa5,fa5,fa4 + c000749a: bfd1 j c000746e + +00000000c000749c <__JS_FindAtom.constprop.0>: __JS_FindAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2898 static JSAtom __JS_FindAtom(JSRuntime *rt, const char *str, size_t len, - c00073ae: 711d addi sp,sp,-96 - c00073b0: e0ca sd s2,64(sp) - c00073b2: f852 sd s4,48(sp) - c00073b4: 8932 mv s2,a2 - c00073b6: 8a2e mv s4,a1 - c00073b8: f456 sd s5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2893 + c000749c: 711d addi sp,sp,-96 + c000749e: e0ca sd s2,64(sp) + c00074a0: f852 sd s4,48(sp) + c00074a2: 8932 mv s2,a2 + c00074a4: 8a2e mv s4,a1 + c00074a6: f456 sd s5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2901 write(1, "__JS_FindAtom: ", 15); write(1, str, len); write(1, "\n", 1);//// - c00073ba: 463d li a2,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 + c00074a8: 463d li a2,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2898 static JSAtom __JS_FindAtom(JSRuntime *rt, const char *str, size_t len, - c00073bc: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2893 + c00074aa: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2901 write(1, "__JS_FindAtom: ", 15); write(1, str, len); write(1, "\n", 1);//// - c00073be: 00055597 auipc a1,0x55 - c00073c2: 78258593 addi a1,a1,1922 # c005cb40 - c00073c6: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2890 + c00074ac: 00056597 auipc a1,0x56 + c00074b0: 8c458593 addi a1,a1,-1852 # c005cd70 + c00074b4: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2898 static JSAtom __JS_FindAtom(JSRuntime *rt, const char *str, size_t len, - c00073c8: ec86 sd ra,88(sp) - c00073ca: e8a2 sd s0,80(sp) - c00073cc: e4a6 sd s1,72(sp) - c00073ce: f05a sd s6,32(sp) - c00073d0: ec5e sd s7,24(sp) - c00073d2: e862 sd s8,16(sp) - c00073d4: e466 sd s9,8(sp) - c00073d6: e06a sd s10,0(sp) - c00073d8: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2893 + c00074b6: ec86 sd ra,88(sp) + c00074b8: e8a2 sd s0,80(sp) + c00074ba: e4a6 sd s1,72(sp) + c00074bc: f05a sd s6,32(sp) + c00074be: ec5e sd s7,24(sp) + c00074c0: e862 sd s8,16(sp) + c00074c2: e466 sd s9,8(sp) + c00074c4: e06a sd s10,0(sp) + c00074c6: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2901 write(1, "__JS_FindAtom: ", 15); write(1, str, len); write(1, "\n", 1);//// - c00073da: 26e500ef jal ra,c0057648 - c00073de: 864a mv a2,s2 - c00073e0: 85d2 mv a1,s4 - c00073e2: 4505 li a0,1 - c00073e4: 264500ef jal ra,c0057648 - c00073e8: 4605 li a2,1 - c00073ea: 00069597 auipc a1,0x69 - c00073ee: 75658593 addi a1,a1,1878 # c0070b40 - c00073f2: 4505 li a0,1 - c00073f4: 254500ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2902 + c00074c8: 350500ef jal ra,c0057818 + c00074cc: 864a mv a2,s2 + c00074ce: 85d2 mv a1,s4 + c00074d0: 4505 li a0,1 + c00074d2: 346500ef jal ra,c0057818 + c00074d6: 4605 li a2,1 + c00074d8: 0006a597 auipc a1,0x6a + c00074dc: 8c858593 addi a1,a1,-1848 # c0070da0 + c00074e0: 4505 li a0,1 + c00074e2: 336500ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2910 h = hash_string8((const uint8_t *)str, len, JS_ATOM_TYPE_STRING); - c00073f8: 4605 li a2,1 - c00073fa: 85ca mv a1,s2 - c00073fc: 8552 mv a0,s4 - c00073fe: b43ff0ef jal ra,c0006f40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2907 + c00074e6: 4605 li a2,1 + c00074e8: 85ca mv a1,s2 + c00074ea: 8552 mv a0,s4 + c00074ec: b43ff0ef jal ra,c000702e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2915 h1 = h & (rt->atom_hash_size - 1); - c0007402: 048aa783 lw a5,72(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2905 + c00074f0: 048aa783 lw a5,72(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2913 h &= JS_ATOM_HASH_MASK; - c0007406: 40000b37 lui s6,0x40000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2902 + c00074f4: 40000b37 lui s6,0x40000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2910 h = hash_string8((const uint8_t *)str, len, JS_ATOM_TYPE_STRING); - c000740a: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2905 + c00074f8: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2913 h &= JS_ATOM_HASH_MASK; - c000740e: 1b7d addi s6,s6,-1 - c0007410: 0164f4b3 and s1,s1,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2907 + c00074fc: 1b7d addi s6,s6,-1 + c00074fe: 0164f4b3 and s1,s1,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2915 h1 = h & (rt->atom_hash_size - 1); - c0007414: 37fd addiw a5,a5,-1 - c0007416: 8fe5 and a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2910 + c0007502: 37fd addiw a5,a5,-1 + c0007504: 8fe5 and a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2918 i = rt->atom_hash[h1]; - c0007418: 058ab703 ld a4,88(s5) - c000741c: 02079693 slli a3,a5,0x20 - c0007420: 01e6d793 srli a5,a3,0x1e - c0007424: 97ba add a5,a5,a4 - c0007426: 4380 lw s0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2921 + c0007506: 058ab703 ld a4,88(s5) + c000750a: 02079693 slli a3,a5,0x20 + c000750e: 01e6d793 srli a5,a3,0x1e + c0007512: 97ba add a5,a5,a4 + c0007514: 4380 lw s0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2929 p->len == len && - c0007428: 80000bb7 lui s7,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2912 + c0007516: 80000bb7 lui s7,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2920 while (i != 0 && i != 0xffffffff) {//// - c000742c: 5c75 li s8,-3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2919 + c000751a: 5c75 li s8,-3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2927 if (p->hash == h && - c000742e: 40000cb7 lui s9,0x40000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2920 + c000751c: 40000cb7 lui s9,0x40000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2928 p->atom_type == JS_ATOM_TYPE_STRING && - c0007432: c0000d37 lui s10,0xc0000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2921 + c0007520: c0000d37 lui s10,0xc0000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2929 p->len == len && - c0007436: fffbcb93 not s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2912 + c0007524: fffbcb93 not s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2920 while (i != 0 && i != 0xffffffff) {//// - c000743a: fff4079b addiw a5,s0,-1 - c000743e: 00fc7463 bgeu s8,a5,c0007446 <__JS_FindAtom.constprop.0+0x98> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2936 + c0007528: fff4079b addiw a5,s0,-1 + c000752c: 00fc7463 bgeu s8,a5,c0007534 <__JS_FindAtom.constprop.0+0x98> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2944 return JS_ATOM_NULL; - c0007442: 4401 li s0,0 - c0007444: a08d j c00074a6 <__JS_FindAtom.constprop.0+0xf8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2916 + c0007530: 4401 li s0,0 + c0007532: a08d j c0007594 <__JS_FindAtom.constprop.0+0xf8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2924 p = rt->atom_array[i]; - c0007446: 060ab783 ld a5,96(s5) - c000744a: 02041693 slli a3,s0,0x20 - c000744e: 01d6d713 srli a4,a3,0x1d - c0007452: 97ba add a5,a5,a4 - c0007454: 0007b983 ld s3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2919 + c0007534: 060ab783 ld a5,96(s5) + c0007538: 02041693 slli a3,s0,0x20 + c000753c: 01d6d713 srli a4,a3,0x1d + c0007540: 97ba add a5,a5,a4 + c0007542: 0007b983 ld s3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2927 if (p->hash == h && - c0007458: 0089a783 lw a5,8(s3) - c000745c: 00fb7733 and a4,s6,a5 - c0007460: 2701 sext.w a4,a4 - c0007462: 06e49163 bne s1,a4,c00074c4 <__JS_FindAtom.constprop.0+0x116> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2920 + c0007546: 0089a783 lw a5,8(s3) + c000754a: 00fb7733 and a4,s6,a5 + c000754e: 2701 sext.w a4,a4 + c0007550: 06e49163 bne s1,a4,c00075b2 <__JS_FindAtom.constprop.0+0x116> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2928 p->atom_type == JS_ATOM_TYPE_STRING && - c0007466: 01a7f7b3 and a5,a5,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2919 + c0007554: 01a7f7b3 and a5,a5,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2927 if (p->hash == h && - c000746a: 2781 sext.w a5,a5 - c000746c: 05979c63 bne a5,s9,c00074c4 <__JS_FindAtom.constprop.0+0x116> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2921 + c0007558: 2781 sext.w a5,a5 + c000755a: 05979c63 bne a5,s9,c00075b2 <__JS_FindAtom.constprop.0+0x116> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2929 p->len == len && - c0007470: 0049a783 lw a5,4(s3) - c0007474: 0177f733 and a4,a5,s7 - c0007478: 1702 slli a4,a4,0x20 - c000747a: 9301 srli a4,a4,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2920 + c000755e: 0049a783 lw a5,4(s3) + c0007562: 0177f733 and a4,a5,s7 + c0007566: 1702 slli a4,a4,0x20 + c0007568: 9301 srli a4,a4,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2928 p->atom_type == JS_ATOM_TYPE_STRING && - c000747c: 04e91463 bne s2,a4,c00074c4 <__JS_FindAtom.constprop.0+0x116> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2921 + c000756a: 04e91463 bne s2,a4,c00075b2 <__JS_FindAtom.constprop.0+0x116> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2929 p->len == len && - c0007480: 2781 sext.w a5,a5 - c0007482: 0407c163 bltz a5,c00074c4 <__JS_FindAtom.constprop.0+0x116> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2923 + c000756e: 2781 sext.w a5,a5 + c0007570: 0407c163 bltz a5,c00075b2 <__JS_FindAtom.constprop.0+0x116> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2931 memcmp(p->u.str8, str, len) == 0) { - c0007486: 864a mv a2,s2 - c0007488: 85d2 mv a1,s4 - c000748a: 01098513 addi a0,s3,16 - c000748e: 3744f0ef jal ra,c0056802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2922 + c0007574: 864a mv a2,s2 + c0007576: 85d2 mv a1,s4 + c0007578: 01098513 addi a0,s3,16 + c000757c: 4564f0ef jal ra,c00569d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2930 p->is_wide_char == 0 && - c0007492: e90d bnez a0,c00074c4 <__JS_FindAtom.constprop.0+0x116> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2924 + c0007580: e90d bnez a0,c00075b2 <__JS_FindAtom.constprop.0+0x116> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2932 if (!__JS_AtomIsConst(i)) - c0007494: 0d700793 li a5,215 - c0007498: 0087d763 bge a5,s0,c00074a6 <__JS_FindAtom.constprop.0+0xf8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2925 + c0007582: 0d700793 li a5,215 + c0007586: 0087d763 bge a5,s0,c0007594 <__JS_FindAtom.constprop.0+0xf8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2933 p->header.ref_count++; - c000749c: 0009a783 lw a5,0(s3) - c00074a0: 2785 addiw a5,a5,1 - c00074a2: 00f9a023 sw a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2937 -} - c00074a6: 60e6 ld ra,88(sp) - c00074a8: 8522 mv a0,s0 - c00074aa: 6446 ld s0,80(sp) - c00074ac: 64a6 ld s1,72(sp) - c00074ae: 6906 ld s2,64(sp) - c00074b0: 79e2 ld s3,56(sp) - c00074b2: 7a42 ld s4,48(sp) - c00074b4: 7aa2 ld s5,40(sp) - c00074b6: 7b02 ld s6,32(sp) - c00074b8: 6be2 ld s7,24(sp) - c00074ba: 6c42 ld s8,16(sp) - c00074bc: 6ca2 ld s9,8(sp) - c00074be: 6d02 ld s10,0(sp) - c00074c0: 6125 addi sp,sp,96 - c00074c2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2932 + c000758a: 0009a783 lw a5,0(s3) + c000758e: 2785 addiw a5,a5,1 + c0007590: 00f9a023 sw a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2945 +} + c0007594: 60e6 ld ra,88(sp) + c0007596: 8522 mv a0,s0 + c0007598: 6446 ld s0,80(sp) + c000759a: 64a6 ld s1,72(sp) + c000759c: 6906 ld s2,64(sp) + c000759e: 79e2 ld s3,56(sp) + c00075a0: 7a42 ld s4,48(sp) + c00075a2: 7aa2 ld s5,40(sp) + c00075a4: 7b02 ld s6,32(sp) + c00075a6: 6be2 ld s7,24(sp) + c00075a8: 6c42 ld s8,16(sp) + c00075aa: 6ca2 ld s9,8(sp) + c00075ac: 6d02 ld s10,0(sp) + c00075ae: 6125 addi sp,sp,96 + c00075b0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2940 i = p->hash_next; - c00074c4: 00c9a403 lw s0,12(s3) - c00074c8: bf8d j c000743a <__JS_FindAtom.constprop.0+0x8c> + c00075b2: 00c9a403 lw s0,12(s3) + c00075b6: bf8d j c0007528 <__JS_FindAtom.constprop.0+0x8c> -00000000c00074ca : +00000000c00075b8 : JS_DupAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2669 if (!__JS_AtomIsConst(v)) { - c00074ca: 0d700713 li a4,215 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2657 + c00075b8: 0d700713 li a4,215 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2665 { - c00074ce: 87aa mv a5,a0 - c00074d0: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2661 + c00075bc: 87aa mv a5,a0 + c00075be: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2669 if (!__JS_AtomIsConst(v)) { - c00074d2: 00b75d63 bge a4,a1,c00074ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2663 + c00075c0: 00b75d63 bge a4,a1,c00075da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2671 p = rt->atom_array[v]; - c00074d6: 6f9c ld a5,24(a5) - c00074d8: 02059693 slli a3,a1,0x20 - c00074dc: 01d6d713 srli a4,a3,0x1d - c00074e0: 73bc ld a5,96(a5) - c00074e2: 97ba add a5,a5,a4 - c00074e4: 6398 ld a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2664 + c00075c4: 6f9c ld a5,24(a5) + c00075c6: 02059693 slli a3,a1,0x20 + c00075ca: 01d6d713 srli a4,a3,0x1d + c00075ce: 73bc ld a5,96(a5) + c00075d0: 97ba add a5,a5,a4 + c00075d2: 6398 ld a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2672 p->header.ref_count++; - c00074e6: 431c lw a5,0(a4) - c00074e8: 2785 addiw a5,a5,1 - c00074ea: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2667 + c00075d4: 431c lw a5,0(a4) + c00075d6: 2785 addiw a5,a5,1 + c00075d8: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2675 } - c00074ec: 8082 ret + c00075da: 8082 ret -00000000c00074ee : +00000000c00075dc : emit_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21588 { - c00074ee: 1141 addi sp,sp,-16 - c00074f0: e022 sd s0,0(sp) - c00074f2: e406 sd ra,8(sp) - c00074f4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21581 + c00075dc: 1141 addi sp,sp,-16 + c00075de: e022 sd s0,0(sp) + c00075e0: e406 sd ra,8(sp) + c00075e2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21589 emit_u32(s, JS_DupAtom(s->ctx, name)); - c00074f6: 6108 ld a0,0(a0) - c00074f8: fd3ff0ef jal ra,c00074ca - c00074fc: 0005059b sext.w a1,a0 - c0007500: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21582 -} - c0007502: 6402 ld s0,0(sp) - c0007504: 60a2 ld ra,8(sp) - c0007506: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21581 + c00075e4: 6108 ld a0,0(a0) + c00075e6: fd3ff0ef jal ra,c00075b8 + c00075ea: 0005059b sext.w a1,a0 + c00075ee: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21590 +} + c00075f0: 6402 ld s0,0(sp) + c00075f2: 60a2 ld ra,8(sp) + c00075f4: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21589 emit_u32(s, JS_DupAtom(s->ctx, name)); - c0007508: 8cafe06f j c00055d2 + c00075f6: 8cafe06f j c00056c0 -00000000c000750c : +00000000c00075fa : JS_FreeAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3310 if (!__JS_AtomIsConst(v)) - c000750c: 0d700793 li a5,215 - c0007510: 00b7d563 bge a5,a1,c000751a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3303 + c00075fa: 0d700793 li a5,215 + c00075fe: 00b7d563 bge a5,a1,c0007608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3311 __JS_FreeAtom(ctx->rt, v); - c0007514: 6d08 ld a0,24(a0) - c0007516: f4cff06f j c0006c62 <__JS_FreeAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3304 + c0007602: 6d08 ld a0,24(a0) + c0007604: f4cff06f j c0006d50 <__JS_FreeAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3312 } - c000751a: 8082 ret + c0007608: 8082 ret -00000000c000751c : +00000000c000760a : js_free_prop_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7559 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7567 if (tab) { - c000751c: c1a1 beqz a1,c000755c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7557 -{ - c000751e: 7139 addi sp,sp,-64 - c0007520: f822 sd s0,48(sp) - c0007522: f426 sd s1,40(sp) - c0007524: f04a sd s2,32(sp) - c0007526: ec4e sd s3,24(sp) - c0007528: fc06 sd ra,56(sp) - c000752a: 842e mv s0,a1 - c000752c: 8932 mv s2,a2 - c000752e: 00458993 addi s3,a1,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7560 + c000760a: c1a1 beqz a1,c000764a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7565 +{ + c000760c: 7139 addi sp,sp,-64 + c000760e: f822 sd s0,48(sp) + c0007610: f426 sd s1,40(sp) + c0007612: f04a sd s2,32(sp) + c0007614: ec4e sd s3,24(sp) + c0007616: fc06 sd ra,56(sp) + c0007618: 842e mv s0,a1 + c000761a: 8932 mv s2,a2 + c000761c: 00458993 addi s3,a1,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7568 for(i = 0; i < len; i++) - c0007532: 4481 li s1,0 - c0007534: 00991b63 bne s2,s1,c000754a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7562 + c0007620: 4481 li s1,0 + c0007622: 00991b63 bne s2,s1,c0007638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7570 js_free(ctx, tab); - c0007538: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7564 -} - c000753a: 7442 ld s0,48(sp) - c000753c: 70e2 ld ra,56(sp) - c000753e: 74a2 ld s1,40(sp) - c0007540: 7902 ld s2,32(sp) - c0007542: 69e2 ld s3,24(sp) - c0007544: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7562 + c0007626: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7572 +} + c0007628: 7442 ld s0,48(sp) + c000762a: 70e2 ld ra,56(sp) + c000762c: 74a2 ld s1,40(sp) + c000762e: 7902 ld s2,32(sp) + c0007630: 69e2 ld s3,24(sp) + c0007632: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7570 js_free(ctx, tab); - c0007546: 8f5ff06f j c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7561 + c0007634: 8f5ff06f j c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7569 JS_FreeAtom(ctx, tab[i].atom); - c000754a: 0009a583 lw a1,0(s3) - c000754e: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7560 + c0007638: 0009a583 lw a1,0(s3) + c000763c: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7568 for(i = 0; i < len; i++) - c0007550: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7561 + c000763e: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7569 JS_FreeAtom(ctx, tab[i].atom); - c0007552: fbbff0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7560 + c0007640: fbbff0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7568 for(i = 0; i < len; i++) - c0007556: 6522 ld a0,8(sp) - c0007558: 09a1 addi s3,s3,8 - c000755a: bfe9 j c0007534 - c000755c: 8082 ret + c0007644: 6522 ld a0,8(sp) + c0007646: 09a1 addi s3,s3,8 + c0007648: bfe9 j c0007622 + c000764a: 8082 ret -00000000c000755e : +00000000c000764c : put_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23729 -{ - c000755e: 7139 addi sp,sp,-64 - c0007560: f822 sd s0,48(sp) - c0007562: f04a sd s2,32(sp) - c0007564: fc06 sd ra,56(sp) - c0007566: 893e mv s2,a5 - c0007568: f426 sd s1,40(sp) - c000756a: ec4e sd s3,24(sp) - c000756c: e852 sd s4,16(sp) - c000756e: e456 sd s5,8(sp) - c0007570: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23737 +{ + c000764c: 7139 addi sp,sp,-64 + c000764e: f822 sd s0,48(sp) + c0007650: f04a sd s2,32(sp) + c0007652: fc06 sd ra,56(sp) + c0007654: 893e mv s2,a5 + c0007656: f426 sd s1,40(sp) + c0007658: ec4e sd s3,24(sp) + c000765a: e852 sd s4,16(sp) + c000765c: e456 sd s5,8(sp) + c000765e: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23738 switch(opcode) { - c0007572: 04a00793 li a5,74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23729 + c0007660: 04a00793 li a5,74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23737 { - c0007576: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23730 + c0007664: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23738 switch(opcode) { - c0007578: 12f58363 beq a1,a5,c000769e - c000757c: 84ae mv s1,a1 - c000757e: 8a32 mv s4,a2 - c0007580: 89b6 mv s3,a3 - c0007582: 8ac2 mv s5,a6 - c0007584: 04b7cc63 blt a5,a1,c00075dc - c0007588: 04100793 li a5,65 - c000758c: 04f58c63 beq a1,a5,c00075e4 - c0007590: 04700793 li a5,71 - c0007594: 0ef58763 beq a1,a5,c0007682 - c0007598: 03c00793 li a5,60 - c000759c: 0af58763 beq a1,a5,c000764a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23800 + c0007666: 12f58363 beq a1,a5,c000778c + c000766a: 84ae mv s1,a1 + c000766c: 8a32 mv s4,a2 + c000766e: 89b6 mv s3,a3 + c0007670: 8ac2 mv s5,a6 + c0007672: 04b7cc63 blt a5,a1,c00076ca + c0007676: 04100793 li a5,65 + c000767a: 04f58c63 beq a1,a5,c00076d2 + c000767e: 04700793 li a5,71 + c0007682: 0ef58763 beq a1,a5,c0007770 + c0007686: 03c00793 li a5,60 + c000768a: 0af58763 beq a1,a5,c0007738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23808 switch(opcode) { - c00075a0: 04700793 li a5,71 - c00075a4: 1297c063 blt a5,s1,c00076c4 - c00075a8: 03c00793 li a5,60 - c00075ac: 18f48263 beq s1,a5,c0007730 - c00075b0: 04100793 li a5,65 - c00075b4: 12f49063 bne s1,a5,c00076d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23809 + c000768e: 04700793 li a5,71 + c0007692: 1297c063 blt a5,s1,c00077b2 + c0007696: 03c00793 li a5,60 + c000769a: 18f48263 beq s1,a5,c000781e + c000769e: 04100793 li a5,65 + c00076a2: 12f49063 bne s1,a5,c00077c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23817 emit_op(s, OP_put_field); - c00075b8: 8522 mv a0,s0 - c00075ba: 04300593 li a1,67 - c00075be: e7ffd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23810 + c00076a6: 8522 mv a0,s0 + c00076a8: 04300593 li a1,67 + c00076ac: e7ffd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23818 emit_u32(s, name); /* name has refcount */ - c00075c2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c00076b0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c00075c4: 7442 ld s0,48(sp) - c00075c6: 70e2 ld ra,56(sp) - c00075c8: 74a2 ld s1,40(sp) - c00075ca: 7902 ld s2,32(sp) - c00075cc: 6a42 ld s4,16(sp) - c00075ce: 6aa2 ld s5,8(sp) - c00075d0: 6b02 ld s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23810 + c00076b2: 7442 ld s0,48(sp) + c00076b4: 70e2 ld ra,56(sp) + c00076b6: 74a2 ld s1,40(sp) + c00076b8: 7902 ld s2,32(sp) + c00076ba: 6a42 ld s4,16(sp) + c00076bc: 6aa2 ld s5,8(sp) + c00076be: 6b02 ld s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23818 emit_u32(s, name); /* name has refcount */ - c00075d2: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c00076c0: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c00075d4: 69e2 ld s3,24(sp) - c00075d6: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23810 + c00076c2: 69e2 ld s3,24(sp) + c00076c4: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23818 emit_u32(s, name); /* name has refcount */ - c00075d8: ffbfd06f j c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23730 + c00076c6: ffbfd06f j c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23738 switch(opcode) { - c00075dc: 0bf00793 li a5,191 - c00075e0: 0ef59263 bne a1,a5,c00076c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23734 + c00076ca: 0bf00793 li a5,191 + c00076ce: 0ef59263 bne a1,a5,c00077b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23742 switch(special) { - c00075e4: 478d li a5,3 - c00075e6: 02f90b63 beq s2,a5,c000761c - c00075ea: 4791 li a5,4 - c00075ec: 04f90d63 beq s2,a5,c0007646 - c00075f0: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23739 + c00076d2: 478d li a5,3 + c00076d4: 02f90b63 beq s2,a5,c000770a + c00076d8: 4791 li a5,4 + c00076da: 04f90d63 beq s2,a5,c0007734 + c00076de: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23747 emit_op(s, OP_insert2); /* obj v -> v obj v */ - c00075f2: 45d5 li a1,21 - c00075f4: 02f90563 beq s2,a5,c000761e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23800 + c00076e0: 45d5 li a1,21 + c00076e2: 02f90563 beq s2,a5,c000770c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23808 switch(opcode) { - c00075f8: 04700793 li a5,71 - c00075fc: faf492e3 bne s1,a5,c00075a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23818 + c00076e6: 04700793 li a5,71 + c00076ea: faf492e3 bne s1,a5,c000768e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23826 emit_op(s, OP_put_array_el); - c0007600: 04900593 li a1,73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23824 + c00076ee: 04900593 li a1,73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23832 emit_op(s, OP_put_super_value); - c0007604: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c00076f2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c0007606: 7442 ld s0,48(sp) - c0007608: 70e2 ld ra,56(sp) - c000760a: 74a2 ld s1,40(sp) - c000760c: 7902 ld s2,32(sp) - c000760e: 69e2 ld s3,24(sp) - c0007610: 6a42 ld s4,16(sp) - c0007612: 6aa2 ld s5,8(sp) - c0007614: 6b02 ld s6,0(sp) - c0007616: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23824 + c00076f4: 7442 ld s0,48(sp) + c00076f6: 70e2 ld ra,56(sp) + c00076f8: 74a2 ld s1,40(sp) + c00076fa: 7902 ld s2,32(sp) + c00076fc: 69e2 ld s3,24(sp) + c00076fe: 6a42 ld s4,16(sp) + c0007700: 6aa2 ld s5,8(sp) + c0007702: 6b02 ld s6,0(sp) + c0007704: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23832 emit_op(s, OP_put_super_value); - c0007618: e25fd06f j c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23742 + c0007706: e25fd06f j c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23750 emit_op(s, OP_perm3); /* obj v0 v -> v0 obj v */ - c000761c: 45e1 li a1,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23768 + c000770a: 45e1 li a1,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23776 emit_op(s, OP_perm4); /* obj prop v0 v -> v0 obj prop v */ - c000761e: 8522 mv a0,s0 - c0007620: e1dfd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23800 + c000770c: 8522 mv a0,s0 + c000770e: e1dfd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23808 switch(opcode) { - c0007624: 04700793 li a5,71 - c0007628: fcf48ce3 beq s1,a5,c0007600 - c000762c: f697dee3 bge a5,s1,c00075a8 - c0007630: 0bf00793 li a5,191 - c0007634: 0ef48b63 beq s1,a5,c000772a - c0007638: 0897ce63 blt a5,s1,c00076d4 - c000763c: 0b800793 li a5,184 - c0007640: 08f48f63 beq s1,a5,c00076de - c0007644: a841 j c00076d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23745 + c0007712: 04700793 li a5,71 + c0007716: fcf48ce3 beq s1,a5,c00076ee + c000771a: f697dee3 bge a5,s1,c0007696 + c000771e: 0bf00793 li a5,191 + c0007722: 0ef48b63 beq s1,a5,c0007818 + c0007726: 0897ce63 blt a5,s1,c00077c2 + c000772a: 0b800793 li a5,184 + c000772e: 08f48f63 beq s1,a5,c00077cc + c0007732: a841 j c00077c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23753 emit_op(s, OP_swap); - c0007646: 45ed li a1,27 - c0007648: bfd9 j c000761e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23755 + c0007734: 45ed li a1,27 + c0007736: bfd9 j c000770c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23763 JS_FreeAtom(s->ctx, name); - c000764a: 6108 ld a0,0(a0) - c000764c: 85b6 mv a1,a3 - c000764e: 8b3a mv s6,a4 - c0007650: ebdff0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23756 + c0007738: 6108 ld a0,0(a0) + c000773a: 85b6 mv a1,a3 + c000773c: 8b3a mv s6,a4 + c000773e: ebdff0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23764 emit_label(s, label); - c0007654: 85da mv a1,s6 - c0007656: 8522 mv a0,s0 - c0007658: f83fd0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23758 + c0007742: 85da mv a1,s6 + c0007744: 8522 mv a0,s0 + c0007746: f83fd0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23766 switch(special) { - c000765c: 478d li a5,3 - c000765e: 02f90c63 beq s2,a5,c0007696 - c0007662: 4791 li a5,4 - c0007664: 02f90b63 beq s2,a5,c000769a - c0007668: 4785 li a5,1 - c000766a: 0cf90363 beq s2,a5,c0007730 - c000766e: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23765 + c000774a: 478d li a5,3 + c000774c: 02f90c63 beq s2,a5,c0007784 + c0007750: 4791 li a5,4 + c0007752: 02f90b63 beq s2,a5,c0007788 + c0007756: 4785 li a5,1 + c0007758: 0cf90363 beq s2,a5,c000781e + c000775c: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23773 emit_op(s, OP_insert3); /* obj prop v -> v obj prop v */ - c0007670: 45d9 li a1,22 - c0007672: faf906e3 beq s2,a5,c000761e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23760 + c000775e: 45d9 li a1,22 + c0007760: faf906e3 beq s2,a5,c000770c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23768 emit_op(s, OP_nop); /* will trigger optimization */ - c0007676: 0b300593 li a1,179 - c000767a: 8522 mv a0,s0 - c000767c: dc1fd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23761 + c0007764: 0b300593 li a1,179 + c0007768: 8522 mv a0,s0 + c000776a: dc1fd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23769 break; - c0007680: bfa5 j c00075f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23758 + c000776e: bfa5 j c00076e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23766 switch(special) { - c0007682: 478d li a5,3 - c0007684: 00f90963 beq s2,a5,c0007696 - c0007688: 4791 li a5,4 - c000768a: 00f90863 beq s2,a5,c000769a - c000768e: 4785 li a5,1 - c0007690: fcf91fe3 bne s2,a5,c000766e - c0007694: b795 j c00075f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23768 + c0007770: 478d li a5,3 + c0007772: 00f90963 beq s2,a5,c0007784 + c0007776: 4791 li a5,4 + c0007778: 00f90863 beq s2,a5,c0007788 + c000777c: 4785 li a5,1 + c000777e: fcf91fe3 bne s2,a5,c000775c + c0007782: b795 j c00076e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23776 emit_op(s, OP_perm4); /* obj prop v0 v -> v0 obj prop v */ - c0007696: 45e5 li a1,25 - c0007698: b759 j c000761e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23771 - emit_op(s, OP_rot3l); - c000769a: 45f5 li a1,29 - c000769c: b749 j c000761e + c0007784: 45e5 li a1,25 + c0007786: b759 j c000770c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23779 + emit_op(s, OP_rot3l); + c0007788: 45f5 li a1,29 + c000778a: b749 j c000770c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23787 switch(special) { - c000769e: 478d li a5,3 - c00076a0: 00f90c63 beq s2,a5,c00076b8 - c00076a4: 4791 li a5,4 - c00076a6: 00f90d63 beq s2,a5,c00076c0 - c00076aa: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23784 + c000778c: 478d li a5,3 + c000778e: 00f90c63 beq s2,a5,c00077a6 + c0007792: 4791 li a5,4 + c0007794: 00f90d63 beq s2,a5,c00077ae + c0007798: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23792 emit_op(s, OP_insert4); /* this obj prop v -> v this obj prop v */ - c00076ac: 45dd li a1,23 - c00076ae: 00f90663 beq s2,a5,c00076ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23824 + c000779a: 45dd li a1,23 + c000779c: 00f90663 beq s2,a5,c00077a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23832 emit_op(s, OP_put_super_value); - c00076b2: 04b00593 li a1,75 - c00076b6: b7b9 j c0007604 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23787 + c00077a0: 04b00593 li a1,75 + c00077a4: b7b9 j c00076f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23795 emit_op(s, OP_perm5); /* this obj prop v0 v -> v0 this obj prop v */ - c00076b8: 45e9 li a1,26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23790 + c00077a6: 45e9 li a1,26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23798 emit_op(s, OP_rot4l); - c00076ba: d83fd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23791 + c00077a8: d83fd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23799 break; - c00076be: bfd5 j c00076b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23790 + c00077ac: bfd5 j c00077a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23798 emit_op(s, OP_rot4l); - c00076c0: 45fd li a1,31 - c00076c2: bfe5 j c00076ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23800 + c00077ae: 45fd li a1,31 + c00077b0: bfe5 j c00077a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23808 switch(opcode) { - c00076c4: 0b800793 li a5,184 - c00076c8: 00f48863 beq s1,a5,c00076d8 - c00076cc: 0bf00793 li a5,191 - c00076d0: 04f48d63 beq s1,a5,c000772a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23827 + c00077b2: 0b800793 li a5,184 + c00077b6: 00f48863 beq s1,a5,c00077c6 + c00077ba: 0bf00793 li a5,191 + c00077be: 04f48d63 beq s1,a5,c0007818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23835 abort(); - c00076d4: 1364e0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23802 + c00077c2: 2184e0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23810 assert(special == PUT_LVALUE_NOKEEP || - c00076d8: 4785 li a5,1 - c00076da: 0127fc63 bgeu a5,s2,c00076f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23802 (discriminator 1) - c00076de: 6599 lui a1,0x6 - c00076e0: 4601 li a2,0 - c00076e2: cfa58593 addi a1,a1,-774 # 5cfa <__clzdi2-0xbfffa306> - c00076e6: 00055517 auipc a0,0x55 - c00076ea: 39250513 addi a0,a0,914 # c005ca78 - c00076ee: 32a4c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23804 (discriminator 2) + c00077c6: 4785 li a5,1 + c00077c8: 0127fc63 bgeu a5,s2,c00077e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23810 (discriminator 1) + c00077cc: 6599 lui a1,0x6 + c00077ce: 4601 li a2,0 + c00077d0: d0258593 addi a1,a1,-766 # 5d02 <__clzdi2-0xbfffa2fe> + c00077d4: 00055517 auipc a0,0x55 + c00077d8: 47450513 addi a0,a0,1140 # c005cc48 + c00077dc: 40c4c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23812 (discriminator 2) emit_op(s, is_let ? OP_scope_put_var_init : OP_scope_put_var); - c00076f2: 0bd00593 li a1,189 - c00076f6: 000a9463 bnez s5,c00076fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23804 - c00076fa: 0b900593 li a1,185 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23813 + c00077e0: 0bd00593 li a1,189 + c00077e4: 000a9463 bnez s5,c00077ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23812 + c00077e8: 0b900593 li a1,185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23821 emit_op(s, OP_scope_put_private_field); - c00076fe: 8522 mv a0,s0 - c0007700: d3dfd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23814 + c00077ec: 8522 mv a0,s0 + c00077ee: d3dfd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23822 emit_u32(s, name); /* name has refcount */ - c0007704: 85ce mv a1,s3 - c0007706: 8522 mv a0,s0 - c0007708: ecbfd0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23815 + c00077f2: 85ce mv a1,s3 + c00077f4: 8522 mv a0,s0 + c00077f6: ecbfd0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23823 emit_u16(s, scope); - c000770c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c00077fa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c000770e: 7442 ld s0,48(sp) - c0007710: 70e2 ld ra,56(sp) - c0007712: 74a2 ld s1,40(sp) - c0007714: 7902 ld s2,32(sp) - c0007716: 69e2 ld s3,24(sp) - c0007718: 6aa2 ld s5,8(sp) - c000771a: 6b02 ld s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23815 + c00077fc: 7442 ld s0,48(sp) + c00077fe: 70e2 ld ra,56(sp) + c0007800: 74a2 ld s1,40(sp) + c0007802: 7902 ld s2,32(sp) + c0007804: 69e2 ld s3,24(sp) + c0007806: 6aa2 ld s5,8(sp) + c0007808: 6b02 ld s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23823 emit_u16(s, scope); - c000771c: 030a1593 slli a1,s4,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c000780a: 030a1593 slli a1,s4,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c0007720: 6a42 ld s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23815 + c000780e: 6a42 ld s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23823 emit_u16(s, scope); - c0007722: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 + c0007810: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 } - c0007724: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23815 + c0007812: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23823 emit_u16(s, scope); - c0007726: be5fd06f j c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23813 - emit_op(s, OP_scope_put_private_field); - c000772a: 0c100593 li a1,193 - c000772e: bfc1 j c00076fe + c0007814: be5fd06f j c00053f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23821 + emit_op(s, OP_scope_put_private_field); + c0007818: 0c100593 li a1,193 + c000781c: bfc1 j c00077ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23829 emit_op(s, OP_put_ref_value); - c0007730: 03d00593 li a1,61 - c0007734: bdc1 j c0007604 + c000781e: 03d00593 li a1,61 + c0007822: bdc1 j c00076f2 -00000000c0007736 : +00000000c0007824 : set_object_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22624 { - c0007736: 7179 addi sp,sp,-48 - c0007738: ec26 sd s1,24(sp) - c000773a: e44e sd s3,8(sp) - c000773c: f406 sd ra,40(sp) - c000773e: f022 sd s0,32(sp) - c0007740: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22617 + c0007824: 7179 addi sp,sp,-48 + c0007826: ec26 sd s1,24(sp) + c0007828: e44e sd s3,8(sp) + c000782a: f406 sd ra,40(sp) + c000782c: f022 sd s0,32(sp) + c000782e: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22625 JSFunctionDef *fd = s->cur_func; - c0007742: 7520 ld s0,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22616 + c0007830: 7520 ld s0,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22624 { - c0007744: 84aa mv s1,a0 - c0007746: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22620 + c0007832: 84aa mv s1,a0 + c0007834: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22628 opcode = get_prev_opcode(fd); - c0007748: 8522 mv a0,s0 - c000774a: cc5fc0ef jal ra,c000440e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22621 + c0007836: 8522 mv a0,s0 + c0007838: bd7fc0ef jal ra,c000440e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22629 if (opcode == OP_set_name) { - c000774e: 04d00793 li a5,77 - c0007752: 02f51863 bne a0,a5,c0007782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22623 + c000783c: 04d00793 li a5,77 + c0007840: 02f51863 bne a0,a5,c0007870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22631 fd->byte_code.size = fd->last_opcode_pos; - c0007756: 16042783 lw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22625 + c0007844: 16042783 lw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22633 emit_op(s, OP_set_name); - c000775a: 8526 mv a0,s1 - c000775c: 04d00593 li a1,77 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22623 + c0007848: 8526 mv a0,s1 + c000784a: 04d00593 li a1,77 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22631 fd->byte_code.size = fd->last_opcode_pos; - c0007760: 12f43c23 sd a5,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22624 + c000784e: 12f43c23 sd a5,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22632 fd->last_opcode_pos = -1; - c0007764: 57fd li a5,-1 - c0007766: 16f42023 sw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22625 + c0007852: 57fd li a5,-1 + c0007854: 16f42023 sw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22633 emit_op(s, OP_set_name); - c000776a: cd3fd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22641 + c0007858: cd3fd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22649 } - c000776e: 7402 ld s0,32(sp) - c0007770: 70a2 ld ra,40(sp) - c0007772: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22626 + c000785c: 7402 ld s0,32(sp) + c000785e: 70a2 ld ra,40(sp) + c0007860: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22634 emit_atom(s, name); - c0007774: 85ce mv a1,s3 - c0007776: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22641 -} - c0007778: 69a2 ld s3,8(sp) - c000777a: 64e2 ld s1,24(sp) - c000777c: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22626 + c0007862: 85ce mv a1,s3 + c0007864: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22649 +} + c0007866: 69a2 ld s3,8(sp) + c0007868: 64e2 ld s1,24(sp) + c000786a: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22634 emit_atom(s, name); - c000777e: d71ff06f j c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22627 + c000786c: d71ff06f j c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22635 } else if (opcode == OP_set_class_name) { - c0007782: 0c500793 li a5,197 - c0007786: 0af51763 bne a0,a5,c0007834 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22630 + c0007870: 0c500793 li a5,197 + c0007874: 0af51763 bne a0,a5,c0007922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22638 define_class_pos = fd->last_opcode_pos + 1 - - c000778a: 16042703 lw a4,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22631 + c0007878: 16042703 lw a4,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22639 get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c000778e: 13043783 ld a5,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22630 + c000787c: 13043783 ld a5,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22638 define_class_pos = fd->last_opcode_pos + 1 - - c0007792: 0017091b addiw s2,a4,1 + c0007880: 0017091b addiw s2,a4,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0007796: 973e add a4,a4,a5 - c0007798: 00274683 lbu a3,2(a4) # 1002 <__clzdi2-0xbfffeffe> - c000779c: 00174603 lbu a2,1(a4) - c00077a0: 06a2 slli a3,a3,0x8 - c00077a2: 8e55 or a2,a2,a3 - c00077a4: 00374683 lbu a3,3(a4) - c00077a8: 00474703 lbu a4,4(a4) - c00077ac: 06c2 slli a3,a3,0x10 - c00077ae: 8ed1 or a3,a3,a2 - c00077b0: 0762 slli a4,a4,0x18 - c00077b2: 8f55 or a4,a4,a3 + c0007884: 973e add a4,a4,a5 + c0007886: 00274683 lbu a3,2(a4) # 1002 <__clzdi2-0xbfffeffe> + c000788a: 00174603 lbu a2,1(a4) + c000788e: 06a2 slli a3,a3,0x8 + c0007890: 8e55 or a2,a2,a3 + c0007892: 00374683 lbu a3,3(a4) + c0007896: 00474703 lbu a4,4(a4) + c000789a: 06c2 slli a3,a3,0x10 + c000789c: 8ed1 or a3,a3,a2 + c000789e: 0762 slli a4,a4,0x18 + c00078a0: 8f55 or a4,a4,a3 set_object_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22640 assert(fd->byte_code.buf[define_class_pos] == OP_define_class); - c00077b4: 40e9093b subw s2,s2,a4 - c00077b8: 01278733 add a4,a5,s2 - c00077bc: 00074683 lbu a3,0(a4) - c00077c0: 05600713 li a4,86 - c00077c4: 00e68c63 beq a3,a4,c00077dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22632 (discriminator 1) - c00077c8: 6599 lui a1,0x6 - c00077ca: 4601 li a2,0 - c00077cc: 86858593 addi a1,a1,-1944 # 5868 <__clzdi2-0xbfffa798> - c00077d0: 00055517 auipc a0,0x55 - c00077d4: 2a850513 addi a0,a0,680 # c005ca78 - c00077d8: 2404c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22635 (discriminator 2) + c00078a2: 40e9093b subw s2,s2,a4 + c00078a6: 01278733 add a4,a5,s2 + c00078aa: 00074683 lbu a3,0(a4) + c00078ae: 05600713 li a4,86 + c00078b2: 00e68c63 beq a3,a4,c00078ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22640 (discriminator 1) + c00078b6: 6599 lui a1,0x6 + c00078b8: 4601 li a2,0 + c00078ba: 87058593 addi a1,a1,-1936 # 5870 <__clzdi2-0xbfffa790> + c00078be: 00055517 auipc a0,0x55 + c00078c2: 38a50513 addi a0,a0,906 # c005cc48 + c00078c6: 3224c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22643 (discriminator 2) atom = get_u32(fd->byte_code.buf + define_class_pos + 1); - c00077dc: 0905 addi s2,s2,1 + c00078ca: 0905 addi s2,s2,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 (discriminator 2) - c00077de: 97ca add a5,a5,s2 - c00077e0: 0017c703 lbu a4,1(a5) - c00077e4: 0007c583 lbu a1,0(a5) + c00078cc: 97ca add a5,a5,s2 + c00078ce: 0017c703 lbu a4,1(a5) + c00078d2: 0007c583 lbu a1,0(a5) set_object_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22636 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22644 (discriminator 2) JS_FreeAtom(s->ctx, atom); - c00077e8: 6088 ld a0,0(s1) + c00078d6: 6088 ld a0,0(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 (discriminator 2) - c00077ea: 0722 slli a4,a4,0x8 - c00077ec: 8f4d or a4,a4,a1 - c00077ee: 0027c583 lbu a1,2(a5) - c00077f2: 05c2 slli a1,a1,0x10 - c00077f4: 8f4d or a4,a4,a1 - c00077f6: 0037c583 lbu a1,3(a5) - c00077fa: 05e2 slli a1,a1,0x18 - c00077fc: 8dd9 or a1,a1,a4 + c00078d8: 0722 slli a4,a4,0x8 + c00078da: 8f4d or a4,a4,a1 + c00078dc: 0027c583 lbu a1,2(a5) + c00078e0: 05c2 slli a1,a1,0x10 + c00078e2: 8f4d or a4,a4,a1 + c00078e4: 0037c583 lbu a1,3(a5) + c00078e8: 05e2 slli a1,a1,0x18 + c00078ea: 8dd9 or a1,a1,a4 set_object_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22636 (discriminator 2) - c00077fe: 2581 sext.w a1,a1 - c0007800: d0dff0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22637 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22644 (discriminator 2) + c00078ec: 2581 sext.w a1,a1 + c00078ee: d0dff0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22645 (discriminator 2) put_u32(fd->byte_code.buf + define_class_pos + 1, - c0007804: 13043783 ld a5,304(s0) - c0007808: 6088 ld a0,0(s1) - c000780a: 85ce mv a1,s3 - c000780c: 993e add s2,s2,a5 - c000780e: cbdff0ef jal ra,c00074ca + c00078f2: 13043783 ld a5,304(s0) + c00078f6: 6088 ld a0,0(s1) + c00078f8: 85ce mv a1,s3 + c00078fa: 993e add s2,s2,a5 + c00078fc: cbdff0ef jal ra,c00075b8 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 (discriminator 2) ((struct packed_u32 *)tab)->v = val; - c0007812: 0085579b srliw a5,a0,0x8 - c0007816: 00a90023 sb a0,0(s2) - c000781a: 00f900a3 sb a5,1(s2) - c000781e: 0105579b srliw a5,a0,0x10 - c0007822: 0185551b srliw a0,a0,0x18 - c0007826: 00f90123 sb a5,2(s2) - c000782a: 00a901a3 sb a0,3(s2) + c0007900: 0085579b srliw a5,a0,0x8 + c0007904: 00a90023 sb a0,0(s2) + c0007908: 00f900a3 sb a5,1(s2) + c000790c: 0105579b srliw a5,a0,0x10 + c0007910: 0185551b srliw a0,a0,0x18 + c0007914: 00f90123 sb a5,2(s2) + c0007918: 00a901a3 sb a0,3(s2) set_object_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22639 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22647 (discriminator 2) fd->last_opcode_pos = -1; - c000782e: 57fd li a5,-1 - c0007830: 16f42023 sw a5,352(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22641 -} - c0007834: 70a2 ld ra,40(sp) - c0007836: 7402 ld s0,32(sp) - c0007838: 64e2 ld s1,24(sp) - c000783a: 6942 ld s2,16(sp) - c000783c: 69a2 ld s3,8(sp) - c000783e: 6145 addi sp,sp,48 - c0007840: 8082 ret - -00000000c0007842 : -skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31410 -{ - c0007842: 7175 addi sp,sp,-144 - c0007844: e122 sd s0,128(sp) - c0007846: fca6 sd s1,120(sp) - c0007848: f8ca sd s2,112(sp) - c000784a: f4ce sd s3,104(sp) - c000784c: f0d2 sd s4,96(sp) - c000784e: ecd6 sd s5,88(sp) - c0007850: e8da sd s6,80(sp) - c0007852: e4de sd s7,72(sp) - c0007854: e0e2 sd s8,64(sp) - c0007856: fc66 sd s9,56(sp) - c0007858: f86a sd s10,48(sp) - c000785a: e506 sd ra,136(sp) - c000785c: f46e sd s11,40(sp) - c000785e: 84aa mv s1,a0 - c0007860: e42e sd a1,8(sp) - c0007862: e832 sd a2,16(sp) - c0007864: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31413 + c000791c: 57fd li a5,-1 + c000791e: 16f42023 sw a5,352(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22649 +} + c0007922: 70a2 ld ra,40(sp) + c0007924: 7402 ld s0,32(sp) + c0007926: 64e2 ld s1,24(sp) + c0007928: 6942 ld s2,16(sp) + c000792a: 69a2 ld s3,8(sp) + c000792c: 6145 addi sp,sp,48 + c000792e: 8082 ret + +00000000c0007930 : +skip_dead_code(): +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31418 +{ + c0007930: 7175 addi sp,sp,-144 + c0007932: e122 sd s0,128(sp) + c0007934: fca6 sd s1,120(sp) + c0007936: f8ca sd s2,112(sp) + c0007938: f4ce sd s3,104(sp) + c000793a: f0d2 sd s4,96(sp) + c000793c: ecd6 sd s5,88(sp) + c000793e: e8da sd s6,80(sp) + c0007940: e4de sd s7,72(sp) + c0007942: e0e2 sd s8,64(sp) + c0007944: fc66 sd s9,56(sp) + c0007946: f86a sd s10,48(sp) + c0007948: e506 sd ra,136(sp) + c000794a: f46e sd s11,40(sp) + c000794c: 84aa mv s1,a0 + c000794e: e42e sd a1,8(sp) + c0007950: e832 sd a2,16(sp) + c0007952: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 for (; pos < bc_len; pos += len) { - c0007866: 8436 mv s0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31415 + c0007954: 8436 mv s0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31423 len = opcode_info[op].size; - c0007868: 0005f997 auipc s3,0x5f - c000786c: 2a898993 addi s3,s3,680 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31416 + c0007956: 0005f997 auipc s3,0x5f + c000795a: 41a98993 addi s3,s3,1050 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31424 if (op == OP_line_num) { - c0007870: 0c600a13 li s4,198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31419 + c000795e: 0c600a13 li s4,198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31427 if (op == OP_label) { - c0007874: 0b600a93 li s5,182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31433 + c0007962: 0b600a93 li s5,182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31441 switch(opcode_info[op].fmt) { - c0007878: 4b6d li s6,27 - c000787a: 4bf1 li s7,28 - c000787c: 4c65 li s8,25 - c000787e: 4cd9 li s9,22 - c0007880: 4d09 li s10,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31413 (discriminator 1) + c0007966: 4b6d li s6,27 + c0007968: 4bf1 li s7,28 + c000796a: 4c65 li s8,25 + c000796c: 4cd9 li s9,22 + c000796e: 4d09 li s10,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 (discriminator 1) for (; pos < bc_len; pos += len) { - c0007882: 67c2 ld a5,16(sp) - c0007884: 02f44263 blt s0,a5,c00078a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31456 + c0007970: 67c2 ld a5,16(sp) + c0007972: 02f44263 blt s0,a5,c0007996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31464 } - c0007888: 60aa ld ra,136(sp) - c000788a: 8522 mv a0,s0 - c000788c: 640a ld s0,128(sp) - c000788e: 74e6 ld s1,120(sp) - c0007890: 7946 ld s2,112(sp) - c0007892: 79a6 ld s3,104(sp) - c0007894: 7a06 ld s4,96(sp) - c0007896: 6ae6 ld s5,88(sp) - c0007898: 6b46 ld s6,80(sp) - c000789a: 6ba6 ld s7,72(sp) - c000789c: 6c06 ld s8,64(sp) - c000789e: 7ce2 ld s9,56(sp) - c00078a0: 7d42 ld s10,48(sp) - c00078a2: 7da2 ld s11,40(sp) - c00078a4: 6149 addi sp,sp,144 - c00078a6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31414 + c0007976: 60aa ld ra,136(sp) + c0007978: 8522 mv a0,s0 + c000797a: 640a ld s0,128(sp) + c000797c: 74e6 ld s1,120(sp) + c000797e: 7946 ld s2,112(sp) + c0007980: 79a6 ld s3,104(sp) + c0007982: 7a06 ld s4,96(sp) + c0007984: 6ae6 ld s5,88(sp) + c0007986: 6b46 ld s6,80(sp) + c0007988: 6ba6 ld s7,72(sp) + c000798a: 6c06 ld s8,64(sp) + c000798c: 7ce2 ld s9,56(sp) + c000798e: 7d42 ld s10,48(sp) + c0007990: 7da2 ld s11,40(sp) + c0007992: 6149 addi sp,sp,144 + c0007994: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31422 op = bc_buf[pos]; - c00078a8: 67a2 ld a5,8(sp) - c00078aa: 97a2 add a5,a5,s0 - c00078ac: 0007c683 lbu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31415 + c0007996: 67a2 ld a5,8(sp) + c0007998: 97a2 add a5,a5,s0 + c000799a: 0007c683 lbu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31423 len = opcode_info[op].size; - c00078b0: 00269713 slli a4,a3,0x2 - c00078b4: 974e add a4,a4,s3 - c00078b6: 00074d83 lbu s11,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31416 + c000799e: 00269713 slli a4,a3,0x2 + c00079a2: 974e add a4,a4,s3 + c00079a4: 00074d83 lbu s11,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31424 if (op == OP_line_num) { - c00078ba: 03469563 bne a3,s4,c00078e4 + c00079a8: 03469563 bne a3,s4,c00079d2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00078be: 0027c703 lbu a4,2(a5) - c00078c2: 0017c683 lbu a3,1(a5) - c00078c6: 0722 slli a4,a4,0x8 - c00078c8: 8ed9 or a3,a3,a4 - c00078ca: 0037c703 lbu a4,3(a5) - c00078ce: 0047c783 lbu a5,4(a5) - c00078d2: 0742 slli a4,a4,0x10 - c00078d4: 8f55 or a4,a4,a3 - c00078d6: 07e2 slli a5,a5,0x18 - c00078d8: 8fd9 or a5,a5,a4 + c00079ac: 0027c703 lbu a4,2(a5) + c00079b0: 0017c683 lbu a3,1(a5) + c00079b4: 0722 slli a4,a4,0x8 + c00079b6: 8ed9 or a3,a3,a4 + c00079b8: 0037c703 lbu a4,3(a5) + c00079bc: 0047c783 lbu a5,4(a5) + c00079c0: 0742 slli a4,a4,0x10 + c00079c2: 8f55 or a4,a4,a3 + c00079c4: 07e2 slli a5,a5,0x18 + c00079c6: 8fd9 or a5,a5,a4 skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31425 *linep = get_u32(bc_buf + pos + 1); - c00078da: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31413 + c00079c8: 00f92023 sw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 for (; pos < bc_len; pos += len) { - c00078de: 008d843b addw s0,s11,s0 - c00078e2: b745 j c0007882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31419 + c00079cc: 008d843b addw s0,s11,s0 + c00079d0: b745 j c0007970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31427 if (op == OP_label) { - c00078e4: 05569b63 bne a3,s5,c000793a + c00079d2: 05569b63 bne a3,s5,c0007a28 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00078e8: 0027c703 lbu a4,2(a5) - c00078ec: 0017c583 lbu a1,1(a5) + c00079d6: 0027c703 lbu a4,2(a5) + c00079da: 0017c583 lbu a1,1(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31429 if (update_label(s, label, 0) > 0) - c00078f0: 4601 li a2,0 + c00079de: 4601 li a2,0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00078f2: 0722 slli a4,a4,0x8 - c00078f4: 8f4d or a4,a4,a1 - c00078f6: 0037c583 lbu a1,3(a5) + c00079e0: 0722 slli a4,a4,0x8 + c00079e2: 8f4d or a4,a4,a1 + c00079e4: 0037c583 lbu a1,3(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 - c00078fa: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31429 + c00079e8: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00078fc: 05c2 slli a1,a1,0x10 - c00078fe: 8f4d or a4,a4,a1 - c0007900: 0047c583 lbu a1,4(a5) - c0007904: 05e2 slli a1,a1,0x18 - c0007906: 8dd9 or a1,a1,a4 + c00079ea: 05c2 slli a1,a1,0x10 + c00079ec: 8f4d or a4,a4,a1 + c00079ee: 0047c583 lbu a1,4(a5) + c00079f2: 05e2 slli a1,a1,0x18 + c00079f4: 8dd9 or a1,a1,a4 skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31428 label = get_u32(bc_buf + pos + 1); - c0007908: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31421 - if (update_label(s, label, 0) > 0) - c000790a: ec2e sd a1,24(sp) - c000790c: 986fe0ef jal ra,c0005a92 - c0007910: f6a04ce3 bgtz a0,c0007888 + c00079f6: 2581 sext.w a1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31429 + if (update_label(s, label, 0) > 0) + c00079f8: ec2e sd a1,24(sp) + c00079fa: 986fe0ef jal ra,c0005b80 + c00079fe: f6a04ce3 bgtz a0,c0007976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31437 assert(s->label_slots[label].first_reloc == NULL); - c0007914: 65e2 ld a1,24(sp) - c0007916: 4761 li a4,24 - c0007918: 1704b783 ld a5,368(s1) - c000791c: 02e585b3 mul a1,a1,a4 - c0007920: 95be add a1,a1,a5 - c0007922: 699c ld a5,16(a1) - c0007924: dfcd beqz a5,c00078de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31429 (discriminator 1) - c0007926: 65a1 lui a1,0x8 - c0007928: 4601 li a2,0 - c000792a: ac558593 addi a1,a1,-1339 # 7ac5 <__clzdi2-0xbfff853b> - c000792e: 00055517 auipc a0,0x55 - c0007932: 14a50513 addi a0,a0,330 # c005ca78 - c0007936: 0e24c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31433 + c0007a02: 65e2 ld a1,24(sp) + c0007a04: 4761 li a4,24 + c0007a06: 1704b783 ld a5,368(s1) + c0007a0a: 02e585b3 mul a1,a1,a4 + c0007a0e: 95be add a1,a1,a5 + c0007a10: 699c ld a5,16(a1) + c0007a12: dfcd beqz a5,c00079cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31437 (discriminator 1) + c0007a14: 65a1 lui a1,0x8 + c0007a16: 4601 li a2,0 + c0007a18: acd58593 addi a1,a1,-1331 # 7acd <__clzdi2-0xbfff8533> + c0007a1c: 00055517 auipc a0,0x55 + c0007a20: 22c50513 addi a0,a0,556 # c005cc48 + c0007a24: 1c44c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31441 switch(opcode_info[op].fmt) { - c000793a: 00374703 lbu a4,3(a4) - c000793e: 02eb6e63 bltu s6,a4,c000797a - c0007942: 06ec6263 bltu s8,a4,c00079a6 - c0007946: 03970c63 beq a4,s9,c000797e - c000794a: 3725 addiw a4,a4,-23 - c000794c: 0ff77713 zext.b a4,a4 - c0007950: f8ed67e3 bltu s10,a4,c00078de + c0007a28: 00374703 lbu a4,3(a4) + c0007a2c: 02eb6e63 bltu s6,a4,c0007a68 + c0007a30: 06ec6263 bltu s8,a4,c0007a94 + c0007a34: 03970c63 beq a4,s9,c0007a6c + c0007a38: 3725 addiw a4,a4,-23 + c0007a3a: 0ff77713 zext.b a4,a4 + c0007a3e: f8ed67e3 bltu s10,a4,c00079cc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0007954: 0027c703 lbu a4,2(a5) - c0007958: 0017c583 lbu a1,1(a5) + c0007a42: 0027c703 lbu a4,2(a5) + c0007a46: 0017c583 lbu a1,1(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31456 JS_FreeAtom(s->ctx, atom); - c000795c: 6088 ld a0,0(s1) + c0007a4a: 6088 ld a0,0(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000795e: 0722 slli a4,a4,0x8 - c0007960: 8f4d or a4,a4,a1 - c0007962: 0037c583 lbu a1,3(a5) - c0007966: 05c2 slli a1,a1,0x10 - c0007968: 8f4d or a4,a4,a1 - c000796a: 0047c583 lbu a1,4(a5) - c000796e: 05e2 slli a1,a1,0x18 - c0007970: 8dd9 or a1,a1,a4 + c0007a4c: 0722 slli a4,a4,0x8 + c0007a4e: 8f4d or a4,a4,a1 + c0007a50: 0037c583 lbu a1,3(a5) + c0007a54: 05c2 slli a1,a1,0x10 + c0007a56: 8f4d or a4,a4,a1 + c0007a58: 0047c583 lbu a1,4(a5) + c0007a5c: 05e2 slli a1,a1,0x18 + c0007a5e: 8dd9 or a1,a1,a4 skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31448 - c0007972: 2581 sext.w a1,a1 - c0007974: b99ff0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31449 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31456 + c0007a60: 2581 sext.w a1,a1 + c0007a62: b99ff0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31457 break; - c0007978: b79d j c00078de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31433 + c0007a66: b79d j c00079cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31441 switch(opcode_info[op].fmt) { - c000797a: f77712e3 bne a4,s7,c00078de + c0007a68: f77712e3 bne a4,s7,c00079cc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000797e: 0027c703 lbu a4,2(a5) - c0007982: 0017c583 lbu a1,1(a5) + c0007a6c: 0027c703 lbu a4,2(a5) + c0007a70: 0017c583 lbu a1,1(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31437 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31445 update_label(s, label, -1); - c0007986: 567d li a2,-1 + c0007a74: 567d li a2,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0007988: 0722 slli a4,a4,0x8 - c000798a: 8f4d or a4,a4,a1 - c000798c: 0037c583 lbu a1,3(a5) + c0007a76: 0722 slli a4,a4,0x8 + c0007a78: 8f4d or a4,a4,a1 + c0007a7a: 0037c583 lbu a1,3(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31437 - c0007990: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31445 + c0007a7e: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0007992: 05c2 slli a1,a1,0x10 - c0007994: 8f4d or a4,a4,a1 - c0007996: 0047c583 lbu a1,4(a5) - c000799a: 05e2 slli a1,a1,0x18 - c000799c: 8dd9 or a1,a1,a4 + c0007a80: 05c2 slli a1,a1,0x10 + c0007a82: 8f4d or a4,a4,a1 + c0007a84: 0047c583 lbu a1,4(a5) + c0007a88: 05e2 slli a1,a1,0x18 + c0007a8a: 8dd9 or a1,a1,a4 skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31437 - c000799e: 2581 sext.w a1,a1 - c00079a0: 8f2fe0ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31445 + c0007a8c: 2581 sext.w a1,a1 + c0007a8e: 8f2fe0ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31446 break; - c00079a4: bf2d j c00078de + c0007a92: bf2d j c00079cc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00079a6: 0067c703 lbu a4,6(a5) - c00079aa: 0057c583 lbu a1,5(a5) + c0007a94: 0067c703 lbu a4,6(a5) + c0007a98: 0057c583 lbu a1,5(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31450 update_label(s, label, -1); - c00079ae: 567d li a2,-1 + c0007a9c: 567d li a2,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00079b0: 0722 slli a4,a4,0x8 - c00079b2: 8f4d or a4,a4,a1 - c00079b4: 0077c583 lbu a1,7(a5) + c0007a9e: 0722 slli a4,a4,0x8 + c0007aa0: 8f4d or a4,a4,a1 + c0007aa2: 0077c583 lbu a1,7(a5) skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31442 - c00079b8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31450 + c0007aa6: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00079ba: ec3e sd a5,24(sp) - c00079bc: 05c2 slli a1,a1,0x10 - c00079be: 8f4d or a4,a4,a1 - c00079c0: 0087c583 lbu a1,8(a5) - c00079c4: 05e2 slli a1,a1,0x18 - c00079c6: 8dd9 or a1,a1,a4 + c0007aa8: ec3e sd a5,24(sp) + c0007aaa: 05c2 slli a1,a1,0x10 + c0007aac: 8f4d or a4,a4,a1 + c0007aae: 0087c583 lbu a1,8(a5) + c0007ab2: 05e2 slli a1,a1,0x18 + c0007ab4: 8dd9 or a1,a1,a4 skip_dead_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31442 - c00079c8: 2581 sext.w a1,a1 - c00079ca: 8c8fe0ef jal ra,c0005a92 - c00079ce: 67e2 ld a5,24(sp) - c00079d0: b751 j c0007954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31450 + c0007ab6: 2581 sext.w a1,a1 + c0007ab8: 8c8fe0ef jal ra,c0005b80 + c0007abc: 67e2 ld a5,24(sp) + c0007abe: b751 j c0007a42 -00000000c00079d2 : +00000000c0007ac0 : JS_FreeAtomRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3316 if (!__JS_AtomIsConst(v)) - c00079d2: 0d700793 li a5,215 - c00079d6: 00b7d463 bge a5,a1,c00079de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3309 + c0007ac0: 0d700793 li a5,215 + c0007ac4: 00b7d463 bge a5,a1,c0007acc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3317 __JS_FreeAtom(rt, v); - c00079da: a88ff06f j c0006c62 <__JS_FreeAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3310 + c0007ac8: a88ff06f j c0006d50 <__JS_FreeAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3318 } - c00079de: 8082 ret + c0007acc: 8082 ret -00000000c00079e0 : +00000000c0007ace : free_bytecode_atoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29476 { - c00079e0: 715d addi sp,sp,-80 - c00079e2: e0a2 sd s0,64(sp) - c00079e4: fc26 sd s1,56(sp) - c00079e6: f84a sd s2,48(sp) - c00079e8: f44e sd s3,40(sp) - c00079ea: f052 sd s4,32(sp) - c00079ec: ec56 sd s5,24(sp) - c00079ee: e85a sd s6,16(sp) - c00079f0: e45e sd s7,8(sp) - c00079f2: e486 sd ra,72(sp) - c00079f4: e062 sd s8,0(sp) - c00079f6: 892a mv s2,a0 - c00079f8: 89ae mv s3,a1 - c00079fa: 84b2 mv s1,a2 - c00079fc: 8a36 mv s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29473 + c0007ace: 715d addi sp,sp,-80 + c0007ad0: e0a2 sd s0,64(sp) + c0007ad2: fc26 sd s1,56(sp) + c0007ad4: f84a sd s2,48(sp) + c0007ad6: f44e sd s3,40(sp) + c0007ad8: f052 sd s4,32(sp) + c0007ada: ec56 sd s5,24(sp) + c0007adc: e85a sd s6,16(sp) + c0007ade: e45e sd s7,8(sp) + c0007ae0: e486 sd ra,72(sp) + c0007ae2: e062 sd s8,0(sp) + c0007ae4: 892a mv s2,a0 + c0007ae6: 89ae mv s3,a1 + c0007ae8: 84b2 mv s1,a2 + c0007aea: 8a36 mv s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29481 pos = 0; - c00079fe: 4401 li s0,0 - c0007a00: 0005fa97 auipc s5,0x5f - c0007a04: 110a8a93 addi s5,s5,272 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29477 + c0007aec: 4401 li s0,0 + c0007aee: 0005fa97 auipc s5,0x5f + c0007af2: 282a8a93 addi s5,s5,642 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29485 oi = &short_opcode_info(op); - c0007a08: 0b300b13 li s6,179 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29482 + c0007af6: 0b300b13 li s6,179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29490 switch(oi->fmt) { - c0007a0c: 4b91 li s7,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29474 + c0007afa: 4b91 li s7,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29482 while (pos < bc_len) { - c0007a0e: 00944e63 blt s0,s1,c0007a2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29496 -} - c0007a12: 60a6 ld ra,72(sp) - c0007a14: 6406 ld s0,64(sp) - c0007a16: 74e2 ld s1,56(sp) - c0007a18: 7942 ld s2,48(sp) - c0007a1a: 79a2 ld s3,40(sp) - c0007a1c: 7a02 ld s4,32(sp) - c0007a1e: 6ae2 ld s5,24(sp) - c0007a20: 6b42 ld s6,16(sp) - c0007a22: 6ba2 ld s7,8(sp) - c0007a24: 6c02 ld s8,0(sp) - c0007a26: 6161 addi sp,sp,80 - c0007a28: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29475 + c0007afc: 00944e63 blt s0,s1,c0007b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29504 +} + c0007b00: 60a6 ld ra,72(sp) + c0007b02: 6406 ld s0,64(sp) + c0007b04: 74e2 ld s1,56(sp) + c0007b06: 7942 ld s2,48(sp) + c0007b08: 79a2 ld s3,40(sp) + c0007b0a: 7a02 ld s4,32(sp) + c0007b0c: 6ae2 ld s5,24(sp) + c0007b0e: 6b42 ld s6,16(sp) + c0007b10: 6ba2 ld s7,8(sp) + c0007b12: 6c02 ld s8,0(sp) + c0007b14: 6161 addi sp,sp,80 + c0007b16: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29483 op = bc_buf[pos]; - c0007a2a: 00898833 add a6,s3,s0 - c0007a2e: 00084783 lbu a5,0(a6) - c0007a32: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29479 + c0007b18: 00898833 add a6,s3,s0 + c0007b1c: 00084783 lbu a5,0(a6) + c0007b20: 0007871b sext.w a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29487 oi = &opcode_info[op]; - c0007a36: 078a slli a5,a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29476 + c0007b24: 078a slli a5,a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29484 if (use_short_opcodes) - c0007a38: 000a0763 beqz s4,c0007a46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29477 + c0007b26: 000a0763 beqz s4,c0007b34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29485 oi = &short_opcode_info(op); - c0007a3c: 00eb5363 bge s6,a4,c0007a42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29477 (discriminator 1) - c0007a40: 074d addi a4,a4,19 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29477 (discriminator 4) - c0007a42: 00271793 slli a5,a4,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29479 + c0007b2a: 00eb5363 bge s6,a4,c0007b30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29485 (discriminator 1) + c0007b2e: 074d addi a4,a4,19 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29485 (discriminator 4) + c0007b30: 00271793 slli a5,a4,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29487 oi = &opcode_info[op]; - c0007a46: 97d6 add a5,a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29481 + c0007b34: 97d6 add a5,a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29489 len = oi->size; - c0007a48: 0007cc03 lbu s8,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29482 + c0007b36: 0007cc03 lbu s8,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29490 switch(oi->fmt) { - c0007a4c: 0037c783 lbu a5,3(a5) - c0007a50: 37a5 addiw a5,a5,-23 - c0007a52: 02fbe563 bltu s7,a5,c0007a7c + c0007b3a: 0037c783 lbu a5,3(a5) + c0007b3e: 37a5 addiw a5,a5,-23 + c0007b40: 02fbe563 bltu s7,a5,c0007b6a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0007a56: 00284703 lbu a4,2(a6) - c0007a5a: 00184783 lbu a5,1(a6) + c0007b44: 00284703 lbu a4,2(a6) + c0007b48: 00184783 lbu a5,1(a6) free_bytecode_atoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29497 JS_FreeAtomRT(rt, atom); - c0007a5e: 854a mv a0,s2 + c0007b4c: 854a mv a0,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0007a60: 0722 slli a4,a4,0x8 - c0007a62: 8f5d or a4,a4,a5 - c0007a64: 00384783 lbu a5,3(a6) - c0007a68: 07c2 slli a5,a5,0x10 - c0007a6a: 8f5d or a4,a4,a5 - c0007a6c: 00484783 lbu a5,4(a6) - c0007a70: 07e2 slli a5,a5,0x18 - c0007a72: 8fd9 or a5,a5,a4 + c0007b4e: 0722 slli a4,a4,0x8 + c0007b50: 8f5d or a4,a4,a5 + c0007b52: 00384783 lbu a5,3(a6) + c0007b56: 07c2 slli a5,a5,0x10 + c0007b58: 8f5d or a4,a4,a5 + c0007b5a: 00484783 lbu a5,4(a6) + c0007b5e: 07e2 slli a5,a5,0x18 + c0007b60: 8fd9 or a5,a5,a4 free_bytecode_atoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29489 - c0007a74: 0007859b sext.w a1,a5 - c0007a78: f5bff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29497 + c0007b62: 0007859b sext.w a1,a5 + c0007b66: f5bff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29502 pos += len; - c0007a7c: 008c043b addw s0,s8,s0 - c0007a80: b779 j c0007a0e + c0007b6a: 008c043b addw s0,s8,s0 + c0007b6e: b779 j c0007afc -00000000c0007a82 : +00000000c0007b70 : JS_NewClassID(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3441 { - c0007a82: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3438 + c0007b70: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3446 class_id = *pclass_id; - c0007a84: 4108 lw a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3439 + c0007b72: 4108 lw a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3447 if (class_id == 0) { - c0007a86: e911 bnez a0,c0007a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3440 + c0007b74: e911 bnez a0,c0007b88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3448 class_id = js_class_id_alloc++; - c0007a88: 000f9717 auipc a4,0xf9 - c0007a8c: 61070713 addi a4,a4,1552 # c0101098 - c0007a90: 4308 lw a0,0(a4) - c0007a92: 0015069b addiw a3,a0,1 - c0007a96: c314 sw a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3441 + c0007b76: 000f9717 auipc a4,0xf9 + c0007b7a: 52270713 addi a4,a4,1314 # c0101098 + c0007b7e: 4308 lw a0,0(a4) + c0007b80: 0015069b addiw a3,a0,1 + c0007b84: c314 sw a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3449 *pclass_id = class_id; - c0007a98: c388 sw a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3447 + c0007b86: c388 sw a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3455 } - c0007a9a: 8082 ret + c0007b88: 8082 ret -00000000c0007a9c : +00000000c0007b8a : JS_IsRegisteredClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3451 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3459 return (class_id < rt->class_count && - c0007a9c: 557c lw a5,108(a0) - c0007a9e: 00f5fe63 bgeu a1,a5,c0007aba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3452 (discriminator 1) + c0007b8a: 557c lw a5,108(a0) + c0007b8c: 00f5fe63 bgeu a1,a5,c0007ba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3460 (discriminator 1) rt->class_array[class_id].class_id != 0); - c0007aa2: 1582 slli a1,a1,0x20 - c0007aa4: 02800713 li a4,40 - c0007aa8: 9181 srli a1,a1,0x20 - c0007aaa: 02e585b3 mul a1,a1,a4 - c0007aae: 793c ld a5,112(a0) - c0007ab0: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3451 (discriminator 1) + c0007b90: 1582 slli a1,a1,0x20 + c0007b92: 02800713 li a4,40 + c0007b96: 9181 srli a1,a1,0x20 + c0007b98: 02e585b3 mul a1,a1,a4 + c0007b9c: 793c ld a5,112(a0) + c0007b9e: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3459 (discriminator 1) return (class_id < rt->class_count && - c0007ab2: 4188 lw a0,0(a1) - c0007ab4: 00a03533 snez a0,a0 - c0007ab8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3451 - c0007aba: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3453 + c0007ba0: 4188 lw a0,0(a1) + c0007ba2: 00a03533 snez a0,a0 + c0007ba6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3459 + c0007ba8: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3461 } - c0007abc: 8082 ret + c0007baa: 8082 ret -00000000c0007abe : +00000000c0007bac : JS_NewClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3515 { - c0007abe: 7139 addi sp,sp,-64 - c0007ac0: fc06 sd ra,56(sp) - c0007ac2: f822 sd s0,48(sp) - c0007ac4: f426 sd s1,40(sp) - c0007ac6: f04a sd s2,32(sp) - c0007ac8: e852 sd s4,16(sp) - c0007aca: ec4e sd s3,24(sp) - c0007acc: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3511 + c0007bac: 7139 addi sp,sp,-64 + c0007bae: fc06 sd ra,56(sp) + c0007bb0: f822 sd s0,48(sp) + c0007bb2: f426 sd s1,40(sp) + c0007bb4: f04a sd s2,32(sp) + c0007bb6: e852 sd s4,16(sp) + c0007bb8: ec4e sd s3,24(sp) + c0007bba: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3519 len = strlen(class_def->class_name); - c0007ace: 620c ld a1,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3507 + c0007bbc: 620c ld a1,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3515 { - c0007ad0: 84aa mv s1,a0 - c0007ad2: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3511 + c0007bbe: 84aa mv s1,a0 + c0007bc0: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3519 len = strlen(class_def->class_name); - c0007ad4: 852e mv a0,a1 - c0007ad6: e42e sd a1,8(sp) - c0007ad8: 6d94e0ef jal ra,c00569b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3512 + c0007bc2: 852e mv a0,a1 + c0007bc4: e42e sd a1,8(sp) + c0007bc6: 7bb4e0ef jal ra,c0056b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3520 name = __JS_FindAtom(rt, class_def->class_name, len, JS_ATOM_TYPE_STRING); - c0007adc: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3511 + c0007bca: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3519 len = strlen(class_def->class_name); - c0007ade: 0005061b sext.w a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3512 + c0007bcc: 0005061b sext.w a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3520 name = __JS_FindAtom(rt, class_def->class_name, len, JS_ATOM_TYPE_STRING); - c0007ae2: 8526 mv a0,s1 - c0007ae4: e032 sd a2,0(sp) - c0007ae6: 8c9ff0ef jal ra,c00073ae <__JS_FindAtom.constprop.0> - c0007aea: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3513 + c0007bd0: 8526 mv a0,s1 + c0007bd2: e032 sd a2,0(sp) + c0007bd4: 8c9ff0ef jal ra,c000749c <__JS_FindAtom.constprop.0> + c0007bd8: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3521 if (name == JS_ATOM_NULL) { - c0007aee: ec01 bnez s0,c0007b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3514 + c0007bdc: ec01 bnez s0,c0007bf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3522 name = __JS_NewAtomInit(rt, class_def->class_name, len, JS_ATOM_TYPE_STRING); - c0007af0: 6602 ld a2,0(sp) - c0007af2: 00093583 ld a1,0(s2) - c0007af6: 4685 li a3,1 - c0007af8: 8526 mv a0,s1 - c0007afa: f82ff0ef jal ra,c000727c <__JS_NewAtomInit> - c0007afe: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3516 + c0007bde: 6602 ld a2,0(sp) + c0007be0: 00093583 ld a1,0(s2) + c0007be4: 4685 li a3,1 + c0007be6: 8526 mv a0,s1 + c0007be8: f82ff0ef jal ra,c000736a <__JS_NewAtomInit> + c0007bec: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3524 return -1; - c0007b02: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3515 + c0007bf0: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3523 if (name == JS_ATOM_NULL) - c0007b04: cc01 beqz s0,c0007b1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3518 + c0007bf2: cc01 beqz s0,c0007c0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3526 ret = JS_NewClass1(rt, class_id, class_def, name); - c0007b06: 85d2 mv a1,s4 - c0007b08: 86a2 mv a3,s0 - c0007b0a: 864a mv a2,s2 - c0007b0c: 8526 mv a0,s1 - c0007b0e: 864fd0ef jal ra,c0004b72 - c0007b12: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3519 + c0007bf4: 85d2 mv a1,s4 + c0007bf6: 86a2 mv a3,s0 + c0007bf8: 864a mv a2,s2 + c0007bfa: 8526 mv a0,s1 + c0007bfc: f77fc0ef jal ra,c0004b72 + c0007c00: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3527 JS_FreeAtomRT(rt, name); - c0007b14: 85a2 mv a1,s0 - c0007b16: 8526 mv a0,s1 - c0007b18: ebbff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3521 -} - c0007b1c: 70e2 ld ra,56(sp) - c0007b1e: 7442 ld s0,48(sp) - c0007b20: 74a2 ld s1,40(sp) - c0007b22: 7902 ld s2,32(sp) - c0007b24: 6a42 ld s4,16(sp) - c0007b26: 854e mv a0,s3 - c0007b28: 69e2 ld s3,24(sp) - c0007b2a: 6121 addi sp,sp,64 - c0007b2c: 8082 ret - -00000000c0007b2e <__JS_FreeValue>: + c0007c02: 85a2 mv a1,s0 + c0007c04: 8526 mv a0,s1 + c0007c06: ebbff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3529 +} + c0007c0a: 70e2 ld ra,56(sp) + c0007c0c: 7442 ld s0,48(sp) + c0007c0e: 74a2 ld s1,40(sp) + c0007c10: 7902 ld s2,32(sp) + c0007c12: 6a42 ld s4,16(sp) + c0007c14: 854e mv a0,s3 + c0007c16: 69e2 ld s3,24(sp) + c0007c18: 6121 addi sp,sp,64 + c0007c1a: 8082 ret + +00000000c0007c1c <__JS_FreeValue>: __JS_FreeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5660 __JS_FreeValueRT(ctx->rt, v); - c0007b2e: 6d08 ld a0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5651 + c0007c1c: 6d08 ld a0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5659 { - c0007b30: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5653 + c0007c1e: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 } - c0007b32: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5652 + c0007c20: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5660 __JS_FreeValueRT(ctx->rt, v); - c0007b34: 2c70006f j c00085fa <__JS_FreeValueRT> + c0007c22: 2c70006f j c00086e8 <__JS_FreeValueRT> -00000000c0007b38 : +00000000c0007c26 : JS_FreeValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:647 { - c0007b38: 1141 addi sp,sp,-16 - c0007b3a: e02e sd a1,0(sp) - c0007b3c: e432 sd a2,8(sp) + c0007c26: 1141 addi sp,sp,-16 + c0007c28: e02e sd a1,0(sp) + c0007c2a: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:648 if (JS_VALUE_HAS_REF_COUNT(v)) { - c0007b3e: 0006079b sext.w a5,a2 - c0007b42: 5751 li a4,-12 - c0007b44: 00f77a63 bgeu a4,a5,c0007b58 + c0007c2c: 0006079b sext.w a5,a2 + c0007c30: 5751 li a4,-12 + c0007c32: 00f77a63 bgeu a4,a5,c0007c46 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:650 if (--p->ref_count <= 0) { - c0007b48: 4198 lw a4,0(a1) - c0007b4a: fff7069b addiw a3,a4,-1 - c0007b4e: c194 sw a3,0(a1) - c0007b50: 00d04463 bgtz a3,c0007b58 + c0007c36: 4198 lw a4,0(a1) + c0007c38: fff7069b addiw a3,a4,-1 + c0007c3c: c194 sw a3,0(a1) + c0007c3e: 00d04463 bgtz a3,c0007c46 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:654 } - c0007b54: 0141 addi sp,sp,16 + c0007c42: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:651 __JS_FreeValue(ctx, v); - c0007b56: bfe1 j c0007b2e <__JS_FreeValue> + c0007c44: bfe1 j c0007c1c <__JS_FreeValue> /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:654 } - c0007b58: 0141 addi sp,sp,16 - c0007b5a: 8082 ret + c0007c46: 0141 addi sp,sp,16 + c0007c48: 8082 ret -00000000c0007b5c : +00000000c0007c4a : js_strict_eq2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14398 { - c0007b5c: 7171 addi sp,sp,-176 - c0007b5e: f122 sd s0,160(sp) - c0007b60: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14395 + c0007c4a: 7171 addi sp,sp,-176 + c0007c4c: f122 sd s0,160(sp) + c0007c4e: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14403 tag1 = JS_VALUE_GET_NORM_TAG(op1); - c0007b62: 0006041b sext.w s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14397 + c0007c50: 0006041b sext.w s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14405 switch(tag1) { - c0007b66: 2629 addiw a2,a2,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14390 -{ - c0007b68: ed26 sd s1,152(sp) - c0007b6a: e82e sd a1,16(sp) - c0007b6c: e036 sd a3,0(sp) - c0007b6e: f506 sd ra,168(sp) - c0007b70: e94a sd s2,144(sp) - c0007b72: e54e sd s3,136(sp) - c0007b74: e152 sd s4,128(sp) - c0007b76: fcd6 sd s5,120(sp) - c0007b78: e43a sd a4,8(sp) - c0007b7a: 0006059b sext.w a1,a2 - c0007b7e: 46c5 li a3,17 - c0007b80: 84aa mv s1,a0 - c0007b82: 0eb6ec63 bltu a3,a1,c0007c7a - c0007b86: 02061693 slli a3,a2,0x20 - c0007b8a: 01e6d613 srli a2,a3,0x1e - c0007b8e: 00055597 auipc a1,0x55 - c0007b92: fc258593 addi a1,a1,-62 # c005cb50 - c0007b96: 962e add a2,a2,a1 - c0007b98: 4214 lw a3,0(a2) - c0007b9a: 2701 sext.w a4,a4 - c0007b9c: 96ae add a3,a3,a1 - c0007b9e: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14399 + c0007c54: 2629 addiw a2,a2,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14398 +{ + c0007c56: ed26 sd s1,152(sp) + c0007c58: e82e sd a1,16(sp) + c0007c5a: e036 sd a3,0(sp) + c0007c5c: f506 sd ra,168(sp) + c0007c5e: e94a sd s2,144(sp) + c0007c60: e54e sd s3,136(sp) + c0007c62: e152 sd s4,128(sp) + c0007c64: fcd6 sd s5,120(sp) + c0007c66: e43a sd a4,8(sp) + c0007c68: 0006059b sext.w a1,a2 + c0007c6c: 46c5 li a3,17 + c0007c6e: 84aa mv s1,a0 + c0007c70: 0eb6ec63 bltu a3,a1,c0007d68 + c0007c74: 02061693 slli a3,a2,0x20 + c0007c78: 01e6d613 srli a2,a3,0x1e + c0007c7c: 00055597 auipc a1,0x55 + c0007c80: 10458593 addi a1,a1,260 # c005cd80 + c0007c84: 962e add a2,a2,a1 + c0007c86: 4214 lw a3,0(a2) + c0007c88: 2701 sext.w a4,a4 + c0007c8a: 96ae add a3,a3,a1 + c0007c8c: 8682 jr a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14407 if (tag1 != tag2) { - c0007ba0: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14400 + c0007c8e: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14408 res = FALSE; - c0007ba2: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14399 + c0007c90: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14407 if (tag1 != tag2) { - c0007ba4: 02f71f63 bne a4,a5,c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14402 + c0007c92: 02f71f63 bne a4,a5,c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14410 res = JS_VALUE_GET_INT(op1) == JS_VALUE_GET_INT(op2); - c0007ba8: 4442 lw s0,16(sp) - c0007baa: 4502 lw a0,0(sp) - c0007bac: 8c09 sub s0,s0,a0 - c0007bae: 00143413 seqz s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14544 -} - c0007bb2: 70aa ld ra,168(sp) - c0007bb4: 8522 mv a0,s0 - c0007bb6: 740a ld s0,160(sp) - c0007bb8: 64ea ld s1,152(sp) - c0007bba: 694a ld s2,144(sp) - c0007bbc: 69aa ld s3,136(sp) - c0007bbe: 6a0a ld s4,128(sp) - c0007bc0: 7ae6 ld s5,120(sp) - c0007bc2: 614d addi sp,sp,176 - c0007bc4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14408 + c0007c96: 4442 lw s0,16(sp) + c0007c98: 4502 lw a0,0(sp) + c0007c9a: 8c09 sub s0,s0,a0 + c0007c9c: 00143413 seqz s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14552 +} + c0007ca0: 70aa ld ra,168(sp) + c0007ca2: 8522 mv a0,s0 + c0007ca4: 740a ld s0,160(sp) + c0007ca6: 64ea ld s1,152(sp) + c0007ca8: 694a ld s2,144(sp) + c0007caa: 69aa ld s3,136(sp) + c0007cac: 6a0a ld s4,128(sp) + c0007cae: 7ae6 ld s5,120(sp) + c0007cb0: 614d addi sp,sp,176 + c0007cb2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14416 res = (tag1 == tag2); - c0007bc6: 8c19 sub s0,s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14430 + c0007cb4: 8c19 sub s0,s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14438 res = (p1 == p2); - c0007bc8: 00143413 seqz s0,s0 - c0007bcc: a819 j c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14413 + c0007cb6: 00143413 seqz s0,s0 + c0007cba: a819 j c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14421 if (tag1 != tag2) { - c0007bce: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14400 + c0007cbc: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14408 res = FALSE; - c0007bd0: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14413 + c0007cbe: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14421 if (tag1 != tag2) { - c0007bd2: 00f71863 bne a4,a5,c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14418 + c0007cc0: 00f71863 bne a4,a5,c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14426 res = (js_string_compare(ctx, p1, p2) == 0); - c0007bd6: 6582 ld a1,0(sp) - c0007bd8: 6542 ld a0,16(sp) - c0007bda: ed3fe0ef jal ra,c0006aac - c0007bde: 00153413 seqz s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14540 + c0007cc4: 6582 ld a1,0(sp) + c0007cc6: 6542 ld a0,16(sp) + c0007cc8: ed3fe0ef jal ra,c0006b9a + c0007ccc: 00153413 seqz s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14548 JS_FreeValue(ctx, op1); - c0007be2: 65c2 ld a1,16(sp) - c0007be4: 6662 ld a2,24(sp) - c0007be6: 8526 mv a0,s1 - c0007be8: f51ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14541 + c0007cd0: 65c2 ld a1,16(sp) + c0007cd2: 6662 ld a2,24(sp) + c0007cd4: 8526 mv a0,s1 + c0007cd6: f51ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14549 JS_FreeValue(ctx, op2); - c0007bec: 6582 ld a1,0(sp) - c0007bee: 6622 ld a2,8(sp) - c0007bf0: 8526 mv a0,s1 - c0007bf2: f47ff0ef jal ra,c0007b38 - c0007bf6: bf75 j c0007bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14425 + c0007cda: 6582 ld a1,0(sp) + c0007cdc: 6622 ld a2,8(sp) + c0007cde: 8526 mv a0,s1 + c0007ce0: f47ff0ef jal ra,c0007c26 + c0007ce4: bf75 j c0007ca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14433 if (tag1 != tag2) { - c0007bf8: 57e1 li a5,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14400 + c0007ce6: 57e1 li a5,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14408 res = FALSE; - c0007bfa: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14425 + c0007ce8: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14433 if (tag1 != tag2) { - c0007bfc: fef713e3 bne a4,a5,c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14430 + c0007cea: fef713e3 bne a4,a5,c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14438 res = (p1 == p2); - c0007c00: 6442 ld s0,16(sp) - c0007c02: 6502 ld a0,0(sp) - c0007c04: 8c09 sub s0,s0,a0 - c0007c06: b7c9 j c0007bc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14435 + c0007cee: 6442 ld s0,16(sp) + c0007cf0: 6502 ld a0,0(sp) + c0007cf2: 8c09 sub s0,s0,a0 + c0007cf4: b7c9 j c0007cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14443 if (tag1 != tag2) - c0007c08: 57fd li a5,-1 - c0007c0a: bfc5 j c0007bfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14441 + c0007cf6: 57fd li a5,-1 + c0007cf8: bfc5 j c0007ce8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14449 d1 = JS_VALUE_GET_INT(op1); - c0007c0c: 46c2 lw a3,16(sp) - c0007c0e: d20687d3 fcvt.d.w fa5,a3 - c0007c12: e20786d3 fmv.x.d a3,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14442 + c0007cfa: 46c2 lw a3,16(sp) + c0007cfc: d20687d3 fcvt.d.w fa5,a3 + c0007d00: e20786d3 fmv.x.d a3,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14450 if (tag2 == JS_TAG_INT) { - c0007c16: e719 bnez a4,c0007c24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14457 + c0007d04: e719 bnez a4,c0007d12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14465 d2 = JS_VALUE_GET_INT(op2); - c0007c18: 4702 lw a4,0(sp) - c0007c1a: d20707d3 fcvt.d.w fa5,a4 - c0007c1e: e2078753 fmv.x.d a4,fa5 - c0007c22: a029 j c0007c2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14445 + c0007d06: 4702 lw a4,0(sp) + c0007d08: d20707d3 fcvt.d.w fa5,a4 + c0007d0c: e2078753 fmv.x.d a4,fa5 + c0007d10: a029 j c0007d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14453 } else if (tag2 == JS_TAG_FLOAT64) { - c0007c24: 461d li a2,7 - c0007c26: fac71ee3 bne a4,a2,c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14455 + c0007d12: 461d li a2,7 + c0007d14: fac71ee3 bne a4,a2,c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14463 d2 = JS_VALUE_GET_FLOAT64(op2); - c0007c2a: 6702 ld a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14476 + c0007d18: 6702 ld a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14484 res = (d1 == d2); /* if NaN return false and +0 == -0 */ - c0007c2c: f20687d3 fmv.d.x fa5,a3 - c0007c30: f2070753 fmv.d.x fa4,a4 - c0007c34: a2e7a453 feq.d s0,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14463 + c0007d1a: f20687d3 fmv.d.x fa5,a3 + c0007d1e: f2070753 fmv.d.x fa4,a4 + c0007d22: a2e7a453 feq.d s0,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14471 if (unlikely(eq_mode >= JS_EQ_SAME_VALUE)) { - c0007c38: dfad beqz a5,c0007bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14466 + c0007d26: dfad beqz a5,c0007ca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14474 if (isnan(d1) || isnan(d2)) { - c0007c3a: a2f7a453 feq.d s0,fa5,fa5 - c0007c3e: a2e72653 feq.d a2,fa4,fa4 - c0007c42: c011 beqz s0,c0007c46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14466 (discriminator 1) - c0007c44: ee01 bnez a2,c0007c5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14467 + c0007d28: a2f7a453 feq.d s0,fa5,fa5 + c0007d2c: a2e72653 feq.d a2,fa4,fa4 + c0007d30: c011 beqz s0,c0007d34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14474 (discriminator 1) + c0007d32: ee01 bnez a2,c0007d4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14475 res = isnan(d1) == isnan(d2); - c0007c46: 00163613 seqz a2,a2 - c0007c4a: 8c31 xor s0,s0,a2 - c0007c4c: b79d j c0007bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14454 + c0007d34: 00163613 seqz a2,a2 + c0007d38: 8c31 xor s0,s0,a2 + c0007d3a: b79d j c0007ca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14462 if (tag2 == JS_TAG_FLOAT64) { - c0007c4e: 461d li a2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14453 + c0007d3c: 461d li a2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14461 d1 = JS_VALUE_GET_FLOAT64(op1); - c0007c50: 66c2 ld a3,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14454 + c0007d3e: 66c2 ld a3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14462 if (tag2 == JS_TAG_FLOAT64) { - c0007c52: fcc70ce3 beq a4,a2,c0007c2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14400 + c0007d40: fcc70ce3 beq a4,a2,c0007d18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14408 res = FALSE; - c0007c56: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14456 + c0007d44: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14464 } else if (tag2 == JS_TAG_INT) { - c0007c58: f749 bnez a4,c0007be2 - c0007c5a: bf7d j c0007c18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14468 + c0007d46: f749 bnez a4,c0007cd0 + c0007d48: bf7d j c0007d06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14476 } else if (eq_mode == JS_EQ_SAME_VALUE_ZERO) { - c0007c5c: 4609 li a2,2 - c0007c5e: 00c79763 bne a5,a2,c0007c6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14469 + c0007d4a: 4609 li a2,2 + c0007d4c: 00c79763 bne a5,a2,c0007d5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14477 res = (d1 == d2); /* +0 == -0 */ - c0007c62: f20687d3 fmv.d.x fa5,a3 - c0007c66: a2e7a453 feq.d s0,fa5,fa4 - c0007c6a: b7a1 j c0007bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14473 + c0007d50: f20687d3 fmv.d.x fa5,a3 + c0007d54: a2e7a453 feq.d s0,fa5,fa4 + c0007d58: b7a1 j c0007ca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14481 res = (u1.u64 == u2.u64); /* +0 != -0 */ - c0007c6c: 8e99 sub a3,a3,a4 - c0007c6e: 0016b413 seqz s0,a3 - c0007c72: b781 j c0007bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14482 + c0007d5a: 8e99 sub a3,a3,a4 + c0007d5c: 0016b413 seqz s0,a3 + c0007d60: b781 j c0007ca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14490 if (tag1 != tag2) { - c0007c74: 57d9 li a5,-10 - c0007c76: 00f70463 beq a4,a5,c0007c7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14396 + c0007d62: 57d9 li a5,-10 + c0007d64: 00f70463 beq a4,a5,c0007d6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14404 tag2 = JS_VALUE_GET_NORM_TAG(op2); - c0007c7a: 4401 li s0,0 - c0007c7c: b79d j c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14486 + c0007d68: 4401 li s0,0 + c0007d6a: b79d j c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14494 a = JS_ToBigFloat(ctx, &a_s, op1); /* cannot fail */ - c0007c7e: 6642 ld a2,16(sp) - c0007c80: 66e2 ld a3,24(sp) - c0007c82: 02010a93 addi s5,sp,32 - c0007c86: 85d6 mv a1,s5 - c0007c88: a35fe0ef jal ra,c00066bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14487 + c0007d6c: 6642 ld a2,16(sp) + c0007d6e: 66e2 ld a3,24(sp) + c0007d70: 02010a93 addi s5,sp,32 + c0007d74: 85d6 mv a1,s5 + c0007d76: a35fe0ef jal ra,c00067aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14495 b = JS_ToBigFloat(ctx, &b_s, op2); /* cannot fail */ - c0007c8c: 6602 ld a2,0(sp) - c0007c8e: 66a2 ld a3,8(sp) - c0007c90: 04810a13 addi s4,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14486 + c0007d7a: 6602 ld a2,0(sp) + c0007d7c: 66a2 ld a3,8(sp) + c0007d7e: 04810a13 addi s4,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14494 a = JS_ToBigFloat(ctx, &a_s, op1); /* cannot fail */ - c0007c94: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14487 + c0007d82: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14495 b = JS_ToBigFloat(ctx, &b_s, op2); /* cannot fail */ - c0007c96: 85d2 mv a1,s4 - c0007c98: 8526 mv a0,s1 - c0007c9a: a23fe0ef jal ra,c00066bc + c0007d84: 85d2 mv a1,s4 + c0007d86: 8526 mv a0,s1 + c0007d88: a23fe0ef jal ra,c00067aa bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 int bf_cmpu(const bf_t *a, const bf_t *b); @@ -21746,4078 +21842,4078 @@ int bf_cmp(const bf_t *a, const bf_t *b); static inline int bf_cmp_eq(const bf_t *a, const bf_t *b) { return bf_cmp(a, b) == 0; - c0007c9e: 85aa mv a1,a0 + c0007d8c: 85aa mv a1,a0 js_strict_eq2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14487 - c0007ca0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14495 + c0007d8e: 892a mv s2,a0 bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 - c0007ca2: 854e mv a0,s3 - c0007ca4: 166460ef jal ra,c004de0a - c0007ca8: 00153413 seqz s0,a0 + c0007d90: 854e mv a0,s3 + c0007d92: 248460ef jal ra,c004dfda + c0007d96: 00153413 seqz s0,a0 js_strict_eq2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14497 if (a == &a_s) - c0007cac: 01599563 bne s3,s5,c0007cb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14490 + c0007d9a: 01599563 bne s3,s5,c0007da4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14498 bf_delete(a); - c0007cb0: 854e mv a0,s3 - c0007cb2: 9f9fe0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14491 + c0007d9e: 854e mv a0,s3 + c0007da0: 9f9fe0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14499 if (b == &b_s) - c0007cb6: f34916e3 bne s2,s4,c0007be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14492 + c0007da4: f34916e3 bne s2,s4,c0007cd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14500 bf_delete(b); - c0007cba: 854a mv a0,s2 - c0007cbc: 9effe0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14494 + c0007da8: 854a mv a0,s2 + c0007daa: 9effe0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14502 break; - c0007cc0: b70d j c0007be2 + c0007dae: b70d j c0007cd0 -00000000c0007cc2 : +00000000c0007db0 : js_same_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14560 { - c0007cc2: 715d addi sp,sp,-80 - c0007cc4: e0a2 sd s0,64(sp) - c0007cc6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14553 + c0007db0: 715d addi sp,sp,-80 + c0007db2: e0a2 sd s0,64(sp) + c0007db4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14561 return js_strict_eq2(ctx, - c0007cc8: 852e mv a0,a1 - c0007cca: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14552 + c0007db6: 852e mv a0,a1 + c0007db8: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14560 { - c0007ccc: e486 sd ra,72(sp) - c0007cce: e036 sd a3,0(sp) - c0007cd0: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14553 + c0007dba: e486 sd ra,72(sp) + c0007dbc: e036 sd a3,0(sp) + c0007dbe: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14561 return js_strict_eq2(ctx, - c0007cd2: 99dfe0ef jal ra,c000666e - c0007cd6: f02a sd a0,32(sp) - c0007cd8: f42e sd a1,40(sp) - c0007cda: 6502 ld a0,0(sp) - c0007cdc: 65a2 ld a1,8(sp) - c0007cde: 991fe0ef jal ra,c000666e - c0007ce2: 86aa mv a3,a0 - c0007ce4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 -} - c0007ce6: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14553 + c0007dc0: 99dfe0ef jal ra,c000675c + c0007dc4: f02a sd a0,32(sp) + c0007dc6: f42e sd a1,40(sp) + c0007dc8: 6502 ld a0,0(sp) + c0007dca: 65a2 ld a1,8(sp) + c0007dcc: 991fe0ef jal ra,c000675c + c0007dd0: 86aa mv a3,a0 + c0007dd2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14564 +} + c0007dd4: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14561 return js_strict_eq2(ctx, - c0007ce8: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 + c0007dd6: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14564 } - c0007cea: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14553 + c0007dd8: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14561 return js_strict_eq2(ctx, - c0007cec: 872e mv a4,a1 - c0007cee: 7582 ld a1,32(sp) - c0007cf0: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 + c0007dda: 872e mv a4,a1 + c0007ddc: 7582 ld a1,32(sp) + c0007dde: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14564 } - c0007cf2: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14553 + c0007de0: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14561 return js_strict_eq2(ctx, - c0007cf4: e69ff06f j c0007b5c + c0007de2: e69ff06f j c0007c4a -00000000c0007cf8 : +00000000c0007de6 : js_object_is(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38034 { - c0007cf8: 7139 addi sp,sp,-64 - c0007cfa: fc06 sd ra,56(sp) - c0007cfc: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38027 + c0007de6: 7139 addi sp,sp,-64 + c0007de8: fc06 sd ra,56(sp) + c0007dea: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38035 return JS_NewBool(ctx, js_same_value(ctx, argv[0], argv[1])); - c0007cfe: 6b14 ld a3,16(a4) - c0007d00: 638c ld a1,0(a5) - c0007d02: 6f18 ld a4,24(a4) - c0007d04: 6790 ld a2,8(a5) - c0007d06: fbdff0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38028 -} - c0007d0a: 70e2 ld ra,56(sp) + c0007dec: 6b14 ld a3,16(a4) + c0007dee: 638c ld a1,0(a5) + c0007df0: 6f18 ld a4,24(a4) + c0007df2: 6790 ld a2,8(a5) + c0007df4: fbdff0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38036 +} + c0007df8: 70e2 ld ra,56(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0007d0c: 00a03533 snez a0,a0 - c0007d10: d202 sw zero,36(sp) - c0007d12: d02a sw a0,32(sp) + c0007dfa: 00a03533 snez a0,a0 + c0007dfe: d202 sw zero,36(sp) + c0007e00: d02a sw a0,32(sp) js_object_is(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38028 - c0007d14: 7502 ld a0,32(sp) - c0007d16: 4585 li a1,1 - c0007d18: 6121 addi sp,sp,64 - c0007d1a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38036 + c0007e02: 7502 ld a0,32(sp) + c0007e04: 4585 li a1,1 + c0007e06: 6121 addi sp,sp,64 + c0007e08: 8082 ret -00000000c0007d1c : +00000000c0007e0a : map_find_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47057 -{ - c0007d1c: 7119 addi sp,sp,-128 - c0007d1e: f0ca sd s2,96(sp) - c0007d20: ecce sd s3,88(sp) - c0007d22: 892e mv s2,a1 - c0007d24: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47065 +{ + c0007e0a: 7119 addi sp,sp,-128 + c0007e0c: f0ca sd s2,96(sp) + c0007e0e: ecce sd s3,88(sp) + c0007e10: 892e mv s2,a1 + c0007e12: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47069 h = map_hash_key(ctx, key) & (s->hash_size - 1); - c0007d26: 85b6 mv a1,a3 - c0007d28: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47057 -{ - c0007d2a: f8a2 sd s0,112(sp) - c0007d2c: f4a6 sd s1,104(sp) - c0007d2e: fc86 sd ra,120(sp) - c0007d30: e032 sd a2,0(sp) - c0007d32: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47061 + c0007e14: 85b6 mv a1,a3 + c0007e16: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47065 +{ + c0007e18: f8a2 sd s0,112(sp) + c0007e1a: f4a6 sd s1,104(sp) + c0007e1c: fc86 sd ra,120(sp) + c0007e1e: e032 sd a2,0(sp) + c0007e20: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47069 h = map_hash_key(ctx, key) & (s->hash_size - 1); - c0007d34: de4ff0ef jal ra,c0007318 - c0007d38: 02892483 lw s1,40(s2) - c0007d3c: 34fd addiw s1,s1,-1 - c0007d3e: 8ce9 and s1,s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47062 + c0007e22: de4ff0ef jal ra,c0007406 + c0007e26: 02892483 lw s1,40(s2) + c0007e2a: 34fd addiw s1,s1,-1 + c0007e2c: 8ce9 and s1,s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47070 list_for_each(el, &s->hash_table[h]) { - c0007d40: 02049793 slli a5,s1,0x20 - c0007d44: 01c7d493 srli s1,a5,0x1c - c0007d48: 02093783 ld a5,32(s2) - c0007d4c: 97a6 add a5,a5,s1 - c0007d4e: 6780 ld s0,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47062 (discriminator 1) - c0007d50: 02093783 ld a5,32(s2) - c0007d54: 97a6 add a5,a5,s1 - c0007d56: 00f41463 bne s0,a5,c0007d5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47067 + c0007e2e: 02049793 slli a5,s1,0x20 + c0007e32: 01c7d493 srli s1,a5,0x1c + c0007e36: 02093783 ld a5,32(s2) + c0007e3a: 97a6 add a5,a5,s1 + c0007e3c: 6780 ld s0,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47070 (discriminator 1) + c0007e3e: 02093783 ld a5,32(s2) + c0007e42: 97a6 add a5,a5,s1 + c0007e44: 00f41463 bne s0,a5,c0007e4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47075 return NULL; - c0007d5a: 4501 li a0,0 - c0007d5c: a835 j c0007d98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47064 + c0007e48: 4501 li a0,0 + c0007e4a: a835 j c0007e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47072 if (js_same_value_zero(ctx, mr->key, key)) - c0007d5e: 6782 ld a5,0(sp) - c0007d60: 6808 ld a0,16(s0) - c0007d62: 6c0c ld a1,24(s0) - c0007d64: f03e sd a5,32(sp) - c0007d66: 67a2 ld a5,8(sp) - c0007d68: e82a sd a0,16(sp) - c0007d6a: ec2e sd a1,24(sp) - c0007d6c: f43e sd a5,40(sp) + c0007e4c: 6782 ld a5,0(sp) + c0007e4e: 6808 ld a0,16(s0) + c0007e50: 6c0c ld a1,24(s0) + c0007e52: f03e sd a5,32(sp) + c0007e54: 67a2 ld a5,8(sp) + c0007e56: e82a sd a0,16(sp) + c0007e58: ec2e sd a1,24(sp) + c0007e5a: f43e sd a5,40(sp) js_same_value_zero(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14568 return js_strict_eq2(ctx, - c0007d6e: 901fe0ef jal ra,c000666e - c0007d72: e0aa sd a0,64(sp) - c0007d74: e4ae sd a1,72(sp) - c0007d76: 7502 ld a0,32(sp) - c0007d78: 75a2 ld a1,40(sp) - c0007d7a: 8f5fe0ef jal ra,c000666e - c0007d7e: 872e mv a4,a1 - c0007d80: fc2e sd a1,56(sp) - c0007d82: 6626 ld a2,72(sp) - c0007d84: 6586 ld a1,64(sp) - c0007d86: 86aa mv a3,a0 - c0007d88: f82a sd a0,48(sp) - c0007d8a: 4789 li a5,2 - c0007d8c: 854e mv a0,s3 - c0007d8e: dcfff0ef jal ra,c0007b5c + c0007e5c: 901fe0ef jal ra,c000675c + c0007e60: e0aa sd a0,64(sp) + c0007e62: e4ae sd a1,72(sp) + c0007e64: 7502 ld a0,32(sp) + c0007e66: 75a2 ld a1,40(sp) + c0007e68: 8f5fe0ef jal ra,c000675c + c0007e6c: 872e mv a4,a1 + c0007e6e: fc2e sd a1,56(sp) + c0007e70: 6626 ld a2,72(sp) + c0007e72: 6586 ld a1,64(sp) + c0007e74: 86aa mv a3,a0 + c0007e76: f82a sd a0,48(sp) + c0007e78: 4789 li a5,2 + c0007e7a: 854e mv a0,s3 + c0007e7c: dcfff0ef jal ra,c0007c4a map_find_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47064 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47072 if (js_same_value_zero(ctx, mr->key, key)) - c0007d92: c911 beqz a0,c0007da6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47063 + c0007e80: c911 beqz a0,c0007e94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47071 mr = list_entry(el, JSMapRecord, hash_link); - c0007d94: fd840513 addi a0,s0,-40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47068 -} - c0007d98: 70e6 ld ra,120(sp) - c0007d9a: 7446 ld s0,112(sp) - c0007d9c: 74a6 ld s1,104(sp) - c0007d9e: 7906 ld s2,96(sp) - c0007da0: 69e6 ld s3,88(sp) - c0007da2: 6109 addi sp,sp,128 - c0007da4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47062 (discriminator 2) + c0007e82: fd840513 addi a0,s0,-40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47076 +} + c0007e86: 70e6 ld ra,120(sp) + c0007e88: 7446 ld s0,112(sp) + c0007e8a: 74a6 ld s1,104(sp) + c0007e8c: 7906 ld s2,96(sp) + c0007e8e: 69e6 ld s3,88(sp) + c0007e90: 6109 addi sp,sp,128 + c0007e92: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47070 (discriminator 2) list_for_each(el, &s->hash_table[h]) { - c0007da6: 6400 ld s0,8(s0) - c0007da8: b765 j c0007d50 + c0007e94: 6400 ld s0,8(s0) + c0007e96: b765 j c0007e3e -00000000c0007daa : +00000000c0007e98 : js_strict_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14567 -{ - c0007daa: 7139 addi sp,sp,-64 - c0007dac: f822 sd s0,48(sp) - c0007dae: f426 sd s1,40(sp) - c0007db0: fc06 sd ra,56(sp) - c0007db2: 842e mv s0,a1 - c0007db4: ff043683 ld a3,-16(s0) - c0007db8: ff843703 ld a4,-8(s0) - c0007dbc: fe05b583 ld a1,-32(a1) - c0007dc0: 84b2 mv s1,a2 - c0007dc2: fe843603 ld a2,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14575 +{ + c0007e98: 7139 addi sp,sp,-64 + c0007e9a: f822 sd s0,48(sp) + c0007e9c: f426 sd s1,40(sp) + c0007e9e: fc06 sd ra,56(sp) + c0007ea0: 842e mv s0,a1 + c0007ea2: ff043683 ld a3,-16(s0) + c0007ea6: ff843703 ld a4,-8(s0) + c0007eaa: fe05b583 ld a1,-32(a1) + c0007eae: 84b2 mv s1,a2 + c0007eb0: fe843603 ld a2,-24(s0) js_strict_eq(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 return js_strict_eq2(ctx, op1, op2, JS_EQ_STRICT); - c0007dc6: 4781 li a5,0 - c0007dc8: e02e sd a1,0(sp) - c0007dca: e432 sd a2,8(sp) - c0007dcc: e836 sd a3,16(sp) - c0007dce: ec3a sd a4,24(sp) - c0007dd0: d8dff0ef jal ra,c0007b5c + c0007eb4: 4781 li a5,0 + c0007eb6: e02e sd a1,0(sp) + c0007eb8: e432 sd a2,8(sp) + c0007eba: e836 sd a3,16(sp) + c0007ebc: ec3a sd a4,24(sp) + c0007ebe: d8dff0ef jal ra,c0007c4a JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0007dd4: 8c89 sub s1,s1,a0 - c0007dd6: 009034b3 snez s1,s1 - c0007dda: c826 sw s1,16(sp) - c0007ddc: ca02 sw zero,20(sp) - c0007dde: 67c2 ld a5,16(sp) + c0007ec2: 8c89 sub s1,s1,a0 + c0007ec4: 009034b3 snez s1,s1 + c0007ec8: c826 sw s1,16(sp) + c0007eca: ca02 sw zero,20(sp) + c0007ecc: 67c2 ld a5,16(sp) js_strict_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14580 } - c0007de0: 70e2 ld ra,56(sp) - c0007de2: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14570 + c0007ece: 70e2 ld ra,56(sp) + c0007ed0: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14578 sp[-2] = JS_NewBool(ctx, res ^ is_neq); - c0007de4: fef43023 sd a5,-32(s0) - c0007de8: 4785 li a5,1 - c0007dea: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14572 + c0007ed2: fef43023 sd a5,-32(s0) + c0007ed6: 4785 li a5,1 + c0007ed8: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14580 } - c0007dee: 7442 ld s0,48(sp) - c0007df0: 4501 li a0,0 - c0007df2: 6121 addi sp,sp,64 - c0007df4: 8082 ret + c0007edc: 7442 ld s0,48(sp) + c0007ede: 4501 li a0,0 + c0007ee0: 6121 addi sp,sp,64 + c0007ee2: 8082 ret -00000000c0007df6 : +00000000c0007ee4 : free_arg_list(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38403 -{ - c0007df6: 7179 addi sp,sp,-48 - c0007df8: f022 sd s0,32(sp) - c0007dfa: ec26 sd s1,24(sp) - c0007dfc: e84a sd s2,16(sp) - c0007dfe: f406 sd ra,40(sp) - c0007e00: 842e mv s0,a1 - c0007e02: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38411 +{ + c0007ee4: 7179 addi sp,sp,-48 + c0007ee6: f022 sd s0,32(sp) + c0007ee8: ec26 sd s1,24(sp) + c0007eea: e84a sd s2,16(sp) + c0007eec: f406 sd ra,40(sp) + c0007eee: 842e mv s0,a1 + c0007ef0: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38413 for(i = 0; i < len; i++) { - c0007e04: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38405 (discriminator 1) - c0007e06: 0004879b sext.w a5,s1 - c0007e0a: 0127ea63 bltu a5,s2,c0007e1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 + c0007ef2: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38413 (discriminator 1) + c0007ef4: 0004879b sext.w a5,s1 + c0007ef8: 0127ea63 bltu a5,s2,c0007f0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38416 js_free(ctx, tab); - c0007e0e: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38409 -} - c0007e10: 7402 ld s0,32(sp) - c0007e12: 70a2 ld ra,40(sp) - c0007e14: 64e2 ld s1,24(sp) - c0007e16: 6942 ld s2,16(sp) - c0007e18: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 + c0007efc: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38417 +} + c0007efe: 7402 ld s0,32(sp) + c0007f00: 70a2 ld ra,40(sp) + c0007f02: 64e2 ld s1,24(sp) + c0007f04: 6942 ld s2,16(sp) + c0007f06: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38416 js_free(ctx, tab); - c0007e1a: 820ff06f j c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38406 (discriminator 3) + c0007f08: 820ff06f j c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38414 (discriminator 3) JS_FreeValue(ctx, tab[i]); - c0007e1e: 00449793 slli a5,s1,0x4 - c0007e22: 97a2 add a5,a5,s0 - c0007e24: 638c ld a1,0(a5) - c0007e26: 6790 ld a2,8(a5) - c0007e28: e42a sd a0,8(sp) - c0007e2a: 0485 addi s1,s1,1 - c0007e2c: d0dff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38405 (discriminator 3) + c0007f0c: 00449793 slli a5,s1,0x4 + c0007f10: 97a2 add a5,a5,s0 + c0007f12: 638c ld a1,0(a5) + c0007f14: 6790 ld a2,8(a5) + c0007f16: e42a sd a0,8(sp) + c0007f18: 0485 addi s1,s1,1 + c0007f1a: d0dff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38413 (discriminator 3) for(i = 0; i < len; i++) { - c0007e30: 6522 ld a0,8(sp) - c0007e32: bfd1 j c0007e06 + c0007f1e: 6522 ld a0,8(sp) + c0007f20: bfd1 j c0007ef4 -00000000c0007e34 : +00000000c0007f22 : js_free_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8456 -{ - c0007e34: 1101 addi sp,sp,-32 - c0007e36: ec06 sd ra,24(sp) - c0007e38: e822 sd s0,16(sp) - c0007e3a: e426 sd s1,8(sp) - c0007e3c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8464 +{ + c0007f22: 1101 addi sp,sp,-32 + c0007f24: ec06 sd ra,24(sp) + c0007f26: e822 sd s0,16(sp) + c0007f28: e426 sd s1,8(sp) + c0007f2a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8465 JS_FreeValue(ctx, desc->getter); - c0007e3e: 7010 ld a2,32(s0) - c0007e40: 6d8c ld a1,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8456 + c0007f2c: 7010 ld a2,32(s0) + c0007f2e: 6d8c ld a1,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8464 { - c0007e42: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8457 + c0007f30: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8465 JS_FreeValue(ctx, desc->getter); - c0007e44: cf5ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8458 + c0007f32: cf5ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8466 JS_FreeValue(ctx, desc->setter); - c0007e48: 740c ld a1,40(s0) - c0007e4a: 7810 ld a2,48(s0) - c0007e4c: 8526 mv a0,s1 - c0007e4e: cebff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8459 + c0007f36: 740c ld a1,40(s0) + c0007f38: 7810 ld a2,48(s0) + c0007f3a: 8526 mv a0,s1 + c0007f3c: cebff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8467 JS_FreeValue(ctx, desc->value); - c0007e52: 640c ld a1,8(s0) - c0007e54: 6810 ld a2,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8460 + c0007f40: 640c ld a1,8(s0) + c0007f42: 6810 ld a2,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8468 } - c0007e56: 6442 ld s0,16(sp) - c0007e58: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8459 + c0007f44: 6442 ld s0,16(sp) + c0007f46: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8467 JS_FreeValue(ctx, desc->value); - c0007e5a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8460 + c0007f48: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8468 } - c0007e5c: 64a2 ld s1,8(sp) - c0007e5e: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8459 + c0007f4a: 64a2 ld s1,8(sp) + c0007f4c: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8467 JS_FreeValue(ctx, desc->value); - c0007e60: cd9ff06f j c0007b38 + c0007f4e: cd9ff06f j c0007c26 -00000000c0007e64 : +00000000c0007f52 : JS_ToBoolFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10040 { - c0007e64: 1101 addi sp,sp,-32 - c0007e66: ec06 sd ra,24(sp) - c0007e68: e822 sd s0,16(sp) - c0007e6a: e02e sd a1,0(sp) - c0007e6c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10033 + c0007f52: 1101 addi sp,sp,-32 + c0007f54: ec06 sd ra,24(sp) + c0007f56: e822 sd s0,16(sp) + c0007f58: e02e sd a1,0(sp) + c0007f5a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10041 uint32_t tag = JS_VALUE_GET_TAG(val); - c0007e6e: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10034 + c0007f5c: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10042 switch(tag) { - c0007e72: 56d9 li a3,-10 - c0007e74: 06d78a63 beq a5,a3,c0007ee8 - c0007e78: 872a mv a4,a0 - c0007e7a: 02f6eb63 bltu a3,a5,c0007eb0 - c0007e7e: 468d li a3,3 - c0007e80: 00f6e563 bltu a3,a5,c0007e8a - c0007e84: c3b9 beqz a5,c0007eca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10040 + c0007f60: 56d9 li a3,-10 + c0007f62: 06d78a63 beq a5,a3,c0007fd6 + c0007f66: 872a mv a4,a0 + c0007f68: 02f6eb63 bltu a3,a5,c0007f9e + c0007f6c: 468d li a3,3 + c0007f6e: 00f6e563 bltu a3,a5,c0007f78 + c0007f72: c3b9 beqz a5,c0007fb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10048 return JS_VALUE_GET_INT(val); - c0007e86: 4402 lw s0,0(sp) - c0007e88: a0a1 j c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10034 + c0007f74: 4402 lw s0,0(sp) + c0007f76: a0a1 j c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10042 switch(tag) { - c0007e8a: 4699 li a3,6 - c0007e8c: 547d li s0,-1 - c0007e8e: 04d78163 beq a5,a3,c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10080 + c0007f78: 4699 li a3,6 + c0007f7a: 547d li s0,-1 + c0007f7c: 04d78163 beq a5,a3,c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10088 if (JS_TAG_IS_FLOAT64(tag)) { - c0007e92: 469d li a3,7 - c0007e94: 02d79463 bne a5,a3,c0007ebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10081 + c0007f80: 469d li a3,7 + c0007f82: 02d79463 bne a5,a3,c0007faa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10089 double d = JS_VALUE_GET_FLOAT64(val); - c0007e98: 2782 fld fa5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10082 + c0007f86: 2782 fld fa5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10090 return !isnan(d) && d != 0; - c0007e9a: 4401 li s0,0 - c0007e9c: a2f7a7d3 feq.d a5,fa5,fa5 - c0007ea0: cb85 beqz a5,c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10082 (discriminator 1) - c0007ea2: f2000753 fmv.d.x fa4,zero - c0007ea6: a2e7a453 feq.d s0,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10036 (discriminator 1) + c0007f88: 4401 li s0,0 + c0007f8a: a2f7a7d3 feq.d a5,fa5,fa5 + c0007f8e: cb85 beqz a5,c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10090 (discriminator 1) + c0007f90: f2000753 fmv.d.x fa4,zero + c0007f94: a2e7a453 feq.d s0,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10044 (discriminator 1) return JS_VALUE_GET_INT(val) != 0; - c0007eaa: 00144413 xori s0,s0,1 - c0007eae: a00d j c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10034 + c0007f98: 00144413 xori s0,s0,1 + c0007f9c: a00d j c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10042 switch(tag) { - c0007eb0: 56e5 li a3,-7 - c0007eb2: 02d78463 beq a5,a3,c0007eda - c0007eb6: 56fd li a3,-1 - c0007eb8: 02d78f63 beq a5,a3,c0007ef6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10084 + c0007f9e: 56e5 li a3,-7 + c0007fa0: 02d78463 beq a5,a3,c0007fc8 + c0007fa4: 56fd li a3,-1 + c0007fa6: 02d78f63 beq a5,a3,c0007fe4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10092 JS_FreeValue(ctx, val); - c0007ebc: 6582 ld a1,0(sp) - c0007ebe: 6622 ld a2,8(sp) - c0007ec0: 853a mv a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10085 + c0007faa: 6582 ld a1,0(sp) + c0007fac: 6622 ld a2,8(sp) + c0007fae: 853a mv a0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10093 return TRUE; - c0007ec2: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10084 + c0007fb0: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10092 JS_FreeValue(ctx, val); - c0007ec4: c75ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10085 + c0007fb2: c75ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10093 return TRUE; - c0007ec8: a021 j c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10036 + c0007fb6: a021 j c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10044 return JS_VALUE_GET_INT(val) != 0; - c0007eca: 4402 lw s0,0(sp) - c0007ecc: 00803433 snez s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10088 + c0007fb8: 4402 lw s0,0(sp) + c0007fba: 00803433 snez s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10096 } - c0007ed0: 60e2 ld ra,24(sp) - c0007ed2: 8522 mv a0,s0 - c0007ed4: 6442 ld s0,16(sp) - c0007ed6: 6105 addi sp,sp,32 - c0007ed8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10045 + c0007fbe: 60e2 ld ra,24(sp) + c0007fc0: 8522 mv a0,s0 + c0007fc2: 6442 ld s0,16(sp) + c0007fc4: 6105 addi sp,sp,32 + c0007fc6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10053 BOOL ret = JS_VALUE_GET_STRING(val)->len != 0; - c0007eda: 41c0 lw s0,4(a1) - c0007edc: 1406 slli s0,s0,0x21 - c0007ede: 00803433 snez s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10075 + c0007fc8: 41c0 lw s0,4(a1) + c0007fca: 1406 slli s0,s0,0x21 + c0007fcc: 00803433 snez s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10083 JS_FreeValue(ctx, val); - c0007ee2: c57ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10076 + c0007fd0: c57ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10084 return ret; - c0007ee6: b7ed j c0007ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10056 + c0007fd4: b7ed j c0007fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10064 ret = p->num.expn != BF_EXP_ZERO && p->num.expn != BF_EXP_NAN; - c0007ee8: 6d80 ld s0,24(a1) - c0007eea: 57fd li a5,-1 - c0007eec: 8385 srli a5,a5,0x1 - c0007eee: 943e add s0,s0,a5 - c0007ef0: ffe43413 sltiu s0,s0,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10057 + c0007fd6: 6d80 ld s0,24(a1) + c0007fd8: 57fd li a5,-1 + c0007fda: 8385 srli a5,a5,0x1 + c0007fdc: 943e add s0,s0,a5 + c0007fde: ffe43413 sltiu s0,s0,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10065 JS_FreeValue(ctx, val); - c0007ef4: b7fd j c0007ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10074 + c0007fe2: b7fd j c0007fd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10082 ret = !p->is_HTMLDDA; - c0007ef6: 00558403 lb s0,5(a1) - c0007efa: fff44413 not s0,s0 - c0007efe: 01f4541b srliw s0,s0,0x1f - c0007f02: b7c5 j c0007ee2 + c0007fe4: 00558403 lb s0,5(a1) + c0007fe8: fff44413 not s0,s0 + c0007fec: 01f4541b srliw s0,s0,0x1f + c0007ff0: b7c5 j c0007fd0 -00000000c0007f04 : +00000000c0007ff2 : js_method_set_home_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5039 -{ - c0007f04: 715d addi sp,sp,-80 - c0007f06: fc26 sd s1,56(sp) - c0007f08: e486 sd ra,72(sp) - c0007f0a: e0a2 sd s0,64(sp) - c0007f0c: f84a sd s2,48(sp) - c0007f0e: e82e sd a1,16(sp) - c0007f10: ec32 sd a2,24(sp) - c0007f12: e036 sd a3,0(sp) - c0007f14: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5043 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5047 +{ + c0007ff2: 715d addi sp,sp,-80 + c0007ff4: fc26 sd s1,56(sp) + c0007ff6: e486 sd ra,72(sp) + c0007ff8: e0a2 sd s0,64(sp) + c0007ffa: f84a sd s2,48(sp) + c0007ffc: e82e sd a1,16(sp) + c0007ffe: ec32 sd a2,24(sp) + c0008000: e036 sd a3,0(sp) + c0008002: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5051 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c0007f16: 0006049b sext.w s1,a2 - c0007f1a: 57fd li a5,-1 - c0007f1c: 04f49163 bne s1,a5,c0007f5e - c0007f20: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5046 + c0008004: 0006049b sext.w s1,a2 + c0008008: 57fd li a5,-1 + c000800a: 04f49163 bne s1,a5,c000804c + c000800e: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5054 if (!js_class_has_bytecode(p->class_id)) - c0007f22: 0065d503 lhu a0,6(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5045 + c0008010: 0065d503 lhu a0,6(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5053 p = JS_VALUE_GET_OBJ(func_obj); - c0007f26: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5046 + c0008014: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5054 if (!js_class_has_bytecode(p->class_id)) - c0007f28: 82bfd0ef jal ra,c0005752 - c0007f2c: c90d beqz a0,c0007f5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5049 + c0008016: 82bfd0ef jal ra,c0005840 + c000801a: c90d beqz a0,c000804c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5057 if (b->need_home_object) { - c0007f2e: 781c ld a5,48(s0) - c0007f30: 0197c783 lbu a5,25(a5) - c0007f34: 8ba1 andi a5,a5,8 - c0007f36: c785 beqz a5,c0007f5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5050 + c000801c: 781c ld a5,48(s0) + c000801e: 0197c783 lbu a5,25(a5) + c0008022: 8ba1 andi a5,a5,8 + c0008024: c785 beqz a5,c000804c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5058 p1 = p->u.func.home_object; - c0007f38: 602c ld a1,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5051 + c0008026: 602c ld a1,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5059 if (p1) { - c0007f3a: c599 beqz a1,c0007f48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5052 + c0008028: c599 beqz a1,c0008036 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5060 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p1)); - c0007f3c: 567d li a2,-1 - c0007f3e: 854a mv a0,s2 - c0007f40: f02e sd a1,32(sp) - c0007f42: f426 sd s1,40(sp) - c0007f44: bf5ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5054 + c000802a: 567d li a2,-1 + c000802c: 854a mv a0,s2 + c000802e: f02e sd a1,32(sp) + c0008030: f426 sd s1,40(sp) + c0008032: bf5ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5062 if (JS_VALUE_GET_TAG(home_obj) == JS_TAG_OBJECT) - c0007f48: 65a2 ld a1,8(sp) - c0007f4a: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5057 + c0008036: 65a2 ld a1,8(sp) + c0008038: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5065 p1 = NULL; - c0007f4c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5054 + c000803a: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5062 if (JS_VALUE_GET_TAG(home_obj) == JS_TAG_OBJECT) - c0007f4e: 0005871b sext.w a4,a1 - c0007f52: 00f71563 bne a4,a5,c0007f5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5055 + c000803c: 0005871b sext.w a4,a1 + c0008040: 00f71563 bne a4,a5,c000804a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5063 p1 = JS_VALUE_GET_OBJ(JS_DupValue(ctx, home_obj)); - c0007f56: 6502 ld a0,0(sp) - c0007f58: f16fe0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5058 + c0008044: 6502 ld a0,0(sp) + c0008046: f16fe0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5066 p->u.func.home_object = p1; - c0007f5c: e028 sd a0,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5060 + c000804a: e028 sd a0,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5068 } - c0007f5e: 60a6 ld ra,72(sp) - c0007f60: 6406 ld s0,64(sp) - c0007f62: 74e2 ld s1,56(sp) - c0007f64: 7942 ld s2,48(sp) - c0007f66: 6161 addi sp,sp,80 - c0007f68: 8082 ret + c000804c: 60a6 ld ra,72(sp) + c000804e: 6406 ld s0,64(sp) + c0008050: 74e2 ld s1,56(sp) + c0008052: 7942 ld s2,48(sp) + c0008054: 6161 addi sp,sp,80 + c0008056: 8082 ret -00000000c0007f6a : +00000000c0008058 : JS_FreeBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12323 { - c0007f6a: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12316 + c0008058: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12324 if (a == buf) { - c0007f6c: 00c59663 bne a1,a2,c0007f78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12317 + c000805a: 00c59663 bne a1,a2,c0008066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12325 bf_delete(a); - c0007f70: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12323 + c000805e: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12331 } - c0007f72: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12317 + c0008060: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12325 bf_delete(a); - c0007f74: f36fe06f j c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12321 + c0008062: f36fe06f j c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12329 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_BIG_INT, p)); - c0007f78: 15e1 addi a1,a1,-8 - c0007f7a: 5659 li a2,-10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12323 + c0008066: 15e1 addi a1,a1,-8 + c0008068: 5659 li a2,-10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12331 } - c0007f7c: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12321 + c000806a: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12329 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_BIG_INT, p)); - c0007f7e: bbbff06f j c0007b38 + c000806c: bbbff06f j c0007c26 -00000000c0007f82 : +00000000c0008070 : set_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2220 { - c0007f82: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2214 + c0008070: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2222 old_val = *pval; - c0007f84: 6798 ld a4,8(a5) - c0007f86: 618c ld a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2212 + c0008072: 6798 ld a4,8(a5) + c0008074: 618c ld a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2220 { - c0007f88: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2215 + c0008076: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2223 *pval = new_val; - c0007f8a: e390 sd a2,0(a5) - c0007f8c: e794 sd a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2216 + c0008078: e390 sd a2,0(a5) + c000807a: e794 sd a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2224 JS_FreeValue(ctx, old_val); - c0007f8e: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2217 + c000807c: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2225 } - c0007f90: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2216 + c000807e: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2224 JS_FreeValue(ctx, old_val); - c0007f92: ba7ff06f j c0007b38 + c0008080: ba7ff06f j c0007c26 -00000000c0007f96 : +00000000c0008084 : JS_SetClassProto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2220 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2228 { - c0007f96: 1101 addi sp,sp,-32 - c0007f98: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2222 + c0008084: 1101 addi sp,sp,-32 + c0008086: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2230 assert(class_id < rt->class_count); - c0007f9a: 6d18 ld a4,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2220 + c0008088: 6d18 ld a4,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2228 { - c0007f9c: e032 sd a2,0(sp) - c0007f9e: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2222 + c000808a: e032 sd a2,0(sp) + c000808c: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2230 assert(class_id < rt->class_count); - c0007fa0: 5778 lw a4,108(a4) - c0007fa2: 00e5ec63 bltu a1,a4,c0007fba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2222 (discriminator 1) - c0007fa6: 6585 lui a1,0x1 - c0007fa8: 4601 li a2,0 - c0007faa: 8ae58593 addi a1,a1,-1874 # 8ae <__clzdi2-0xbffff752> - c0007fae: 00055517 auipc a0,0x55 - c0007fb2: aca50513 addi a0,a0,-1334 # c005ca78 - c0007fb6: 2634b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2223 (discriminator 2) + c000808e: 5778 lw a4,108(a4) + c0008090: 00e5ec63 bltu a1,a4,c00080a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2230 (discriminator 1) + c0008094: 6585 lui a1,0x1 + c0008096: 4601 li a2,0 + c0008098: 8b658593 addi a1,a1,-1866 # 8b6 <__clzdi2-0xbffff74a> + c000809c: 00055517 auipc a0,0x55 + c00080a0: bac50513 addi a0,a0,-1108 # c005cc48 + c00080a4: 3454b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2231 (discriminator 2) set_value(ctx, &ctx->class_proto[class_id], obj); - c0007fba: 613c ld a5,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2224 (discriminator 2) + c00080a8: 613c ld a5,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2232 (discriminator 2) } - c0007fbc: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2223 (discriminator 2) + c00080aa: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2231 (discriminator 2) set_value(ctx, &ctx->class_proto[class_id], obj); - c0007fbe: 02059713 slli a4,a1,0x20 - c0007fc2: 01c75593 srli a1,a4,0x1c - c0007fc6: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2224 (discriminator 2) + c00080ac: 02059713 slli a4,a1,0x20 + c00080b0: 01c75593 srli a1,a4,0x1c + c00080b4: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2232 (discriminator 2) } - c0007fc8: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2223 (discriminator 2) + c00080b6: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2231 (discriminator 2) set_value(ctx, &ctx->class_proto[class_id], obj); - c0007fca: bf65 j c0007f82 + c00080b8: bf65 j c0008070 -00000000c0007fcc : +00000000c00080ba : JS_ExecutePendingJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1858 -{ - c0007fcc: 7139 addi sp,sp,-64 - c0007fce: f04a sd s2,32(sp) - c0007fd0: fc06 sd ra,56(sp) - c0007fd2: f822 sd s0,48(sp) - c0007fd4: f426 sd s1,40(sp) - c0007fd6: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1866 +{ + c00080ba: 7139 addi sp,sp,-64 + c00080bc: f04a sd s2,32(sp) + c00080be: fc06 sd ra,56(sp) + c00080c0: f822 sd s0,48(sp) + c00080c2: f426 sd s1,40(sp) + c00080c4: ec4e sd s3,24(sp) list_empty(): /Users/Luppy/riscv/quickjs-nuttx/list.h:82 static inline int list_empty(struct list_head *el) { return el->next == el; - c0007fd8: 12853403 ld s0,296(a0) + c00080c6: 12853403 ld s0,296(a0) JS_ExecutePendingJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1872 if (list_empty(&rt->job_list)) { - c0007fdc: 12050513 addi a0,a0,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1858 + c00080ca: 12050513 addi a0,a0,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1866 { - c0007fe0: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1864 + c00080ce: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1872 if (list_empty(&rt->job_list)) { - c0007fe2: 00a41d63 bne s0,a0,c0007ffc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1865 + c00080d0: 00a41d63 bne s0,a0,c00080ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1873 *pctx = NULL; - c0007fe6: 0005b023 sd zero,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1866 + c00080d4: 0005b023 sd zero,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1874 return 0; - c0007fea: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1884 -} - c0007fec: 70e2 ld ra,56(sp) - c0007fee: 7442 ld s0,48(sp) - c0007ff0: 74a2 ld s1,40(sp) - c0007ff2: 7902 ld s2,32(sp) - c0007ff4: 854e mv a0,s3 - c0007ff6: 69e2 ld s3,24(sp) - c0007ff8: 6121 addi sp,sp,64 - c0007ffa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1871 + c00080d8: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1892 +} + c00080da: 70e2 ld ra,56(sp) + c00080dc: 7442 ld s0,48(sp) + c00080de: 74a2 ld s1,40(sp) + c00080e0: 7902 ld s2,32(sp) + c00080e2: 854e mv a0,s3 + c00080e4: 69e2 ld s3,24(sp) + c00080e6: 6121 addi sp,sp,64 + c00080e8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1879 list_del(&e->link); - c0007ffc: 8522 mv a0,s0 - c0007ffe: 85cfc0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1872 + c00080ea: 8522 mv a0,s0 + c00080ec: f6ffb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1880 ctx = e->ctx; - c0008002: 6804 ld s1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1873 + c00080f0: 6804 ld s1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1881 res = e->job_func(e->ctx, e->argc, (JSValueConst *)e->argv); - c0008004: 6c1c ld a5,24(s0) - c0008006: 500c lw a1,32(s0) - c0008008: 02840613 addi a2,s0,40 - c000800c: 8526 mv a0,s1 - c000800e: 9782 jalr a5 - c0008010: e02a sd a0,0(sp) - c0008012: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1874 + c00080f2: 6c1c ld a5,24(s0) + c00080f4: 500c lw a1,32(s0) + c00080f6: 02840613 addi a2,s0,40 + c00080fa: 8526 mv a0,s1 + c00080fc: 9782 jalr a5 + c00080fe: e02a sd a0,0(sp) + c0008100: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1882 for(i = 0; i < e->argc; i++) - c0008014: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1874 (discriminator 1) - c0008016: 501c lw a5,32(s0) - c0008018: 02f9c463 blt s3,a5,c0008040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1876 + c0008102: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1882 (discriminator 1) + c0008104: 501c lw a5,32(s0) + c0008106: 02f9c463 blt s3,a5,c000812e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1884 if (JS_IsException(res)) - c000801c: 4722 lw a4,8(sp) - c000801e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1877 + c000810a: 4722 lw a4,8(sp) + c000810c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1885 ret = -1; - c0008020: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1876 + c000810e: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1884 if (JS_IsException(res)) - c0008022: 00f70363 beq a4,a5,c0008028 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1879 + c0008110: 00f70363 beq a4,a5,c0008116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1887 ret = 1; - c0008026: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1880 + c0008114: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1888 JS_FreeValue(ctx, res); - c0008028: 6582 ld a1,0(sp) - c000802a: 6622 ld a2,8(sp) - c000802c: 8526 mv a0,s1 - c000802e: b0bff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1881 + c0008116: 6582 ld a1,0(sp) + c0008118: 6622 ld a2,8(sp) + c000811a: 8526 mv a0,s1 + c000811c: b0bff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1889 js_free(ctx, e); - c0008032: 85a2 mv a1,s0 - c0008034: 8526 mv a0,s1 - c0008036: e05fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1882 + c0008120: 85a2 mv a1,s0 + c0008122: 8526 mv a0,s1 + c0008124: e05fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1890 *pctx = ctx; - c000803a: 00993023 sd s1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1883 + c0008128: 00993023 sd s1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1891 return ret; - c000803e: b77d j c0007fec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1875 (discriminator 3) + c000812c: b77d j c00080da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1883 (discriminator 3) JS_FreeValue(ctx, e->argv[i]); - c0008040: 00298793 addi a5,s3,2 - c0008044: 0792 slli a5,a5,0x4 - c0008046: 97a2 add a5,a5,s0 - c0008048: 678c ld a1,8(a5) - c000804a: 6b90 ld a2,16(a5) - c000804c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1874 (discriminator 3) + c000812e: 00298793 addi a5,s3,2 + c0008132: 0792 slli a5,a5,0x4 + c0008134: 97a2 add a5,a5,s0 + c0008136: 678c ld a1,8(a5) + c0008138: 6b90 ld a2,16(a5) + c000813a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1882 (discriminator 3) for(i = 0; i < e->argc; i++) - c000804e: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1875 (discriminator 3) + c000813c: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1883 (discriminator 3) JS_FreeValue(ctx, e->argv[i]); - c0008050: ae9ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1874 (discriminator 3) + c000813e: ae9ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1882 (discriminator 3) for(i = 0; i < e->argc; i++) - c0008054: b7c9 j c0008016 + c0008142: b7c9 j c0008104 -00000000c0008056 : +00000000c0008144 : JS_FreeContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2297 -{ - c0008056: 7179 addi sp,sp,-48 - c0008058: f022 sd s0,32(sp) - c000805a: ec26 sd s1,24(sp) - c000805c: f406 sd ra,40(sp) - c000805e: e84a sd s2,16(sp) - c0008060: e44e sd s3,8(sp) - c0008062: e052 sd s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2305 +{ + c0008144: 7179 addi sp,sp,-48 + c0008146: f022 sd s0,32(sp) + c0008148: ec26 sd s1,24(sp) + c000814a: f406 sd ra,40(sp) + c000814c: e84a sd s2,16(sp) + c000814e: e44e sd s3,8(sp) + c0008150: e052 sd s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2309 if (--ctx->header.ref_count > 0) - c0008064: 411c lw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2298 + c0008152: 411c lw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2306 JSRuntime *rt = ctx->rt; - c0008066: 01853983 ld s3,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2297 + c0008154: 01853983 ld s3,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2305 { - c000806a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2301 + c0008158: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2309 if (--ctx->header.ref_count > 0) - c000806c: fff7849b addiw s1,a5,-1 - c0008070: c104 sw s1,0(a0) - c0008072: 12904263 bgtz s1,c0008196 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2303 + c000815a: fff7849b addiw s1,a5,-1 + c000815e: c104 sw s1,0(a0) + c0008160: 12904263 bgtz s1,c0008284 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2311 assert(ctx->header.ref_count == 0); - c0008076: c899 beqz s1,c000808c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2303 (discriminator 1) - c0008078: 6585 lui a1,0x1 - c000807a: 4601 li a2,0 - c000807c: 8ff58593 addi a1,a1,-1793 # 8ff <__clzdi2-0xbffff701> - c0008080: 00055517 auipc a0,0x55 - c0008084: 9f850513 addi a0,a0,-1544 # c005ca78 - c0008088: 1914b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2332 (discriminator 2) + c0008164: c899 beqz s1,c000817a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2311 (discriminator 1) + c0008166: 6585 lui a1,0x1 + c0008168: 4601 li a2,0 + c000816a: 90758593 addi a1,a1,-1785 # 907 <__clzdi2-0xbffff6f9> + c000816e: 00055517 auipc a0,0x55 + c0008172: ada50513 addi a0,a0,-1318 # c005cc48 + c0008176: 2734b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2340 (discriminator 2) js_free_modules(ctx, JS_FREE_MODULE_ALL); - c000808c: 4581 li a1,0 - c000808e: 0ab000ef jal ra,c0008938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2334 (discriminator 2) + c000817a: 4581 li a1,0 + c000817c: 0ab000ef jal ra,c0008a26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2342 (discriminator 2) JS_FreeValue(ctx, ctx->global_obj); - c0008092: 16843583 ld a1,360(s0) - c0008096: 17043603 ld a2,368(s0) - c000809a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2341 (discriminator 2) + c0008180: 16843583 ld a1,360(s0) + c0008184: 17043603 ld a2,368(s0) + c0008188: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2349 (discriminator 2) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c000809c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2334 (discriminator 2) + c000818a: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2342 (discriminator 2) JS_FreeValue(ctx, ctx->global_obj); - c000809e: a9bff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2335 (discriminator 2) + c000818c: a9bff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2343 (discriminator 2) JS_FreeValue(ctx, ctx->global_var_obj); - c00080a2: 17843583 ld a1,376(s0) - c00080a6: 18043603 ld a2,384(s0) - c00080aa: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2341 (discriminator 2) + c0008190: 17843583 ld a1,376(s0) + c0008194: 18043603 ld a2,384(s0) + c0008198: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2349 (discriminator 2) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00080ac: 4a21 li s4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2335 (discriminator 2) + c000819a: 4a21 li s4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2343 (discriminator 2) JS_FreeValue(ctx, ctx->global_var_obj); - c00080ae: a8bff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2337 (discriminator 2) + c000819c: a8bff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2345 (discriminator 2) JS_FreeValue(ctx, ctx->throw_type_error); - c00080b2: 14843583 ld a1,328(s0) - c00080b6: 15043603 ld a2,336(s0) - c00080ba: 8522 mv a0,s0 - c00080bc: a7dff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2338 (discriminator 2) + c00081a0: 14843583 ld a1,328(s0) + c00081a4: 15043603 ld a2,336(s0) + c00081a8: 8522 mv a0,s0 + c00081aa: a7dff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2346 (discriminator 2) JS_FreeValue(ctx, ctx->eval_obj); - c00080c0: 15843583 ld a1,344(s0) - c00080c4: 16043603 ld a2,352(s0) - c00080c8: 8522 mv a0,s0 - c00080ca: a6fff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2340 (discriminator 2) + c00081ae: 15843583 ld a1,344(s0) + c00081b2: 16043603 ld a2,352(s0) + c00081b6: 8522 mv a0,s0 + c00081b8: a6fff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2348 (discriminator 2) JS_FreeValue(ctx, ctx->array_proto_values); - c00080ce: 13843583 ld a1,312(s0) - c00080d2: 14043603 ld a2,320(s0) - c00080d6: 8522 mv a0,s0 - c00080d8: a61ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2342 (discriminator 3) + c00081bc: 13843583 ld a1,312(s0) + c00081c0: 14043603 ld a2,320(s0) + c00081c4: 8522 mv a0,s0 + c00081c6: a61ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2350 (discriminator 3) JS_FreeValue(ctx, ctx->native_error_proto[i]); - c00080dc: 00990793 addi a5,s2,9 - c00080e0: 0792 slli a5,a5,0x4 - c00080e2: 97a2 add a5,a5,s0 - c00080e4: 678c ld a1,8(a5) - c00080e6: 6b90 ld a2,16(a5) - c00080e8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2341 (discriminator 3) + c00081ca: 00990793 addi a5,s2,9 + c00081ce: 0792 slli a5,a5,0x4 + c00081d0: 97a2 add a5,a5,s0 + c00081d2: 678c ld a1,8(a5) + c00081d4: 6b90 ld a2,16(a5) + c00081d6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2349 (discriminator 3) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00080ea: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2342 (discriminator 3) + c00081d8: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2350 (discriminator 3) JS_FreeValue(ctx, ctx->native_error_proto[i]); - c00080ec: a4dff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2341 (discriminator 3) + c00081da: a4dff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2349 (discriminator 3) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00080f0: ff4916e3 bne s2,s4,c00080dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2344 (discriminator 1) + c00081de: ff4916e3 bne s2,s4,c00081ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2352 (discriminator 1) for(i = 0; i < rt->class_count; i++) { - c00080f4: 06c9a783 lw a5,108(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2345 (discriminator 1) + c00081e2: 06c9a783 lw a5,108(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2353 (discriminator 1) JS_FreeValue(ctx, ctx->class_proto[i]); - c00080f8: 602c ld a1,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2344 (discriminator 1) + c00081e6: 602c ld a1,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2352 (discriminator 1) for(i = 0; i < rt->class_count; i++) { - c00080fa: 08f4c463 blt s1,a5,c0008182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2347 + c00081e8: 08f4c463 blt s1,a5,c0008270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2355 js_free_rt(rt, ctx->class_proto); - c00080fe: 854e mv a0,s3 - c0008100: aa7fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2348 + c00081ec: 854e mv a0,s3 + c00081ee: aa7fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2356 JS_FreeValue(ctx, ctx->iterator_proto); - c0008104: 11843583 ld a1,280(s0) - c0008108: 12043603 ld a2,288(s0) - c000810c: 8522 mv a0,s0 - c000810e: a2bff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2349 + c00081f2: 11843583 ld a1,280(s0) + c00081f6: 12043603 ld a2,288(s0) + c00081fa: 8522 mv a0,s0 + c00081fc: a2bff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2357 JS_FreeValue(ctx, ctx->async_iterator_proto); - c0008112: 12843583 ld a1,296(s0) - c0008116: 13043603 ld a2,304(s0) - c000811a: 8522 mv a0,s0 - c000811c: a1dff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2350 + c0008200: 12843583 ld a1,296(s0) + c0008204: 13043603 ld a2,304(s0) + c0008208: 8522 mv a0,s0 + c000820a: a1dff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2358 JS_FreeValue(ctx, ctx->promise_ctor); - c0008120: 644c ld a1,136(s0) - c0008122: 6850 ld a2,144(s0) - c0008124: 8522 mv a0,s0 - c0008126: a13ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2351 + c000820e: 644c ld a1,136(s0) + c0008210: 6850 ld a2,144(s0) + c0008212: 8522 mv a0,s0 + c0008214: a13ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2359 JS_FreeValue(ctx, ctx->array_ctor); - c000812a: 742c ld a1,104(s0) - c000812c: 7830 ld a2,112(s0) - c000812e: 8522 mv a0,s0 - c0008130: a09ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2352 + c0008218: 742c ld a1,104(s0) + c000821a: 7830 ld a2,112(s0) + c000821c: 8522 mv a0,s0 + c000821e: a09ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2360 JS_FreeValue(ctx, ctx->regexp_ctor); - c0008134: 7c2c ld a1,120(s0) - c0008136: 6050 ld a2,128(s0) - c0008138: 8522 mv a0,s0 - c000813a: 9ffff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2353 + c0008222: 7c2c ld a1,120(s0) + c0008224: 6050 ld a2,128(s0) + c0008226: 8522 mv a0,s0 + c0008228: 9ffff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2361 JS_FreeValue(ctx, ctx->function_ctor); - c000813e: 6c2c ld a1,88(s0) - c0008140: 7030 ld a2,96(s0) - c0008142: 8522 mv a0,s0 - c0008144: 9f5ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2354 + c000822c: 6c2c ld a1,88(s0) + c000822e: 7030 ld a2,96(s0) + c0008230: 8522 mv a0,s0 + c0008232: 9f5ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2362 JS_FreeValue(ctx, ctx->function_proto); - c0008148: 642c ld a1,72(s0) - c000814a: 6830 ld a2,80(s0) - c000814c: 8522 mv a0,s0 - c000814e: 9ebff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2356 + c0008236: 642c ld a1,72(s0) + c0008238: 6830 ld a2,80(s0) + c000823a: 8522 mv a0,s0 + c000823c: 9ebff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2364 js_free_shape_null(ctx->rt, ctx->array_shape); - c0008152: 7c0c ld a1,56(s0) + c0008240: 7c0c ld a1,56(s0) js_free_shape_null(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4524 if (sh) - c0008154: c581 beqz a1,c000815c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4517 + c0008242: c581 beqz a1,c000824a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4525 js_free_shape(rt, sh); - c0008156: 6c08 ld a0,24(s0) - c0008158: 5be000ef jal ra,c0008716 + c0008244: 6c08 ld a0,24(s0) + c0008246: 5be000ef jal ra,c0008804 JS_FreeContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2366 list_del(&ctx->link); - c000815c: 02040513 addi a0,s0,32 - c0008160: efbfb0ef jal ra,c000405a + c000824a: 02040513 addi a0,s0,32 + c000824e: e0dfb0ef jal ra,c000405a remove_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5675 list_del(&h->link); - c0008164: 00840513 addi a0,s0,8 - c0008168: ef3fb0ef jal ra,c000405a + c0008252: 00840513 addi a0,s0,8 + c0008256: e05fb0ef jal ra,c000405a JS_FreeContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2360 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2368 js_free_rt(ctx->rt, ctx); - c000816c: 6c08 ld a0,24(s0) - c000816e: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2361 -} - c0008170: 7402 ld s0,32(sp) - c0008172: 70a2 ld ra,40(sp) - c0008174: 64e2 ld s1,24(sp) - c0008176: 6942 ld s2,16(sp) - c0008178: 69a2 ld s3,8(sp) - c000817a: 6a02 ld s4,0(sp) - c000817c: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2360 + c000825a: 6c08 ld a0,24(s0) + c000825c: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2369 +} + c000825e: 7402 ld s0,32(sp) + c0008260: 70a2 ld ra,40(sp) + c0008262: 64e2 ld s1,24(sp) + c0008264: 6942 ld s2,16(sp) + c0008266: 69a2 ld s3,8(sp) + c0008268: 6a02 ld s4,0(sp) + c000826a: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2368 js_free_rt(ctx->rt, ctx); - c000817e: a29fe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2345 (discriminator 3) + c000826c: a29fe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2353 (discriminator 3) JS_FreeValue(ctx, ctx->class_proto[i]); - c0008182: 00449793 slli a5,s1,0x4 - c0008186: 97ae add a5,a5,a1 - c0008188: 638c ld a1,0(a5) - c000818a: 6790 ld a2,8(a5) - c000818c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2344 (discriminator 3) + c0008270: 00449793 slli a5,s1,0x4 + c0008274: 97ae add a5,a5,a1 + c0008276: 638c ld a1,0(a5) + c0008278: 6790 ld a2,8(a5) + c000827a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2352 (discriminator 3) for(i = 0; i < rt->class_count; i++) { - c000818e: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2345 (discriminator 3) + c000827c: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2353 (discriminator 3) JS_FreeValue(ctx, ctx->class_proto[i]); - c0008190: 9a9ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2344 (discriminator 3) + c000827e: 9a9ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2352 (discriminator 3) for(i = 0; i < rt->class_count; i++) { - c0008194: b785 j c00080f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2361 -} - c0008196: 70a2 ld ra,40(sp) - c0008198: 7402 ld s0,32(sp) - c000819a: 64e2 ld s1,24(sp) - c000819c: 6942 ld s2,16(sp) - c000819e: 69a2 ld s3,8(sp) - c00081a0: 6a02 ld s4,0(sp) - c00081a2: 6145 addi sp,sp,48 - c00081a4: 8082 ret - -00000000c00081a6 : + c0008282: b785 j c00081e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2369 +} + c0008284: 70a2 ld ra,40(sp) + c0008286: 7402 ld s0,32(sp) + c0008288: 64e2 ld s1,24(sp) + c000828a: 6942 ld s2,16(sp) + c000828c: 69a2 ld s3,8(sp) + c000828e: 6a02 ld s4,0(sp) + c0008290: 6145 addi sp,sp,48 + c0008292: 8082 ret + +00000000c0008294 : js_c_function_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5377 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5385 if (p->u.cfunc.realm) - c00081a6: 7988 ld a0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5374 + c0008294: 7988 ld a0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5382 { - c00081a8: 1141 addi sp,sp,-16 - c00081aa: e02e sd a1,0(sp) - c00081ac: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5377 + c0008296: 1141 addi sp,sp,-16 + c0008298: e02e sd a1,0(sp) + c000829a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5385 if (p->u.cfunc.realm) - c00081ae: c501 beqz a0,c00081b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5379 + c000829c: c501 beqz a0,c00082a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5387 } - c00081b0: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5378 + c000829e: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5386 JS_FreeContext(p->u.cfunc.realm); - c00081b2: ea5ff06f j c0008056 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5379 + c00082a0: ea5ff06f j c0008144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5387 } - c00081b6: 0141 addi sp,sp,16 - c00081b8: 8082 ret + c00082a4: 0141 addi sp,sp,16 + c00082a6: 8082 ret -00000000c00081ba : +00000000c00082a8 : free_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5261 { - c00081ba: 7179 addi sp,sp,-48 - c00081bc: f022 sd s0,32(sp) - c00081be: f406 sd ra,40(sp) - c00081c0: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5254 + c00082a8: 7179 addi sp,sp,-48 + c00082aa: f022 sd s0,32(sp) + c00082ac: f406 sd ra,40(sp) + c00082ae: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5262 if (unlikely(prop_flags & JS_PROP_TMASK)) { - c00081c2: 03067613 andi a2,a2,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5253 + c00082b0: 03067613 andi a2,a2,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5261 { - c00081c6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5254 + c00082b4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5262 if (unlikely(prop_flags & JS_PROP_TMASK)) { - c00081c8: ce39 beqz a2,c0008226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5255 + c00082b6: ce39 beqz a2,c0008314 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5263 if ((prop_flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c00081ca: 47c1 li a5,16 - c00081cc: 02f61763 bne a2,a5,c00081fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5256 + c00082b8: 47c1 li a5,16 + c00082ba: 02f61763 bne a2,a5,c00082e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5264 if (pr->u.getset.getter) - c00081d0: 618c ld a1,0(a1) - c00081d2: 84aa mv s1,a0 - c00081d4: c599 beqz a1,c00081e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5257 + c00082be: 618c ld a1,0(a1) + c00082c0: 84aa mv s1,a0 + c00082c2: c599 beqz a1,c00082d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5265 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.getter)); - c00081d6: 57fd li a5,-1 - c00081d8: 567d li a2,-1 - c00081da: e02e sd a1,0(sp) - c00081dc: e43e sd a5,8(sp) - c00081de: 4da000ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5258 + c00082c4: 57fd li a5,-1 + c00082c6: 567d li a2,-1 + c00082c8: e02e sd a1,0(sp) + c00082ca: e43e sd a5,8(sp) + c00082cc: 4da000ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5266 if (pr->u.getset.setter) - c00081e2: 640c ld a1,8(s0) - c00081e4: c5a1 beqz a1,c000822c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5259 + c00082d0: 640c ld a1,8(s0) + c00082d2: c5a1 beqz a1,c000831a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5267 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.setter)); - c00081e6: 57fd li a5,-1 - c00081e8: e02e sd a1,0(sp) - c00081ea: e43e sd a5,8(sp) - c00081ec: 567d li a2,-1 - c00081ee: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 + c00082d4: 57fd li a5,-1 + c00082d6: e02e sd a1,0(sp) + c00082d8: e43e sd a5,8(sp) + c00082da: 567d li a2,-1 + c00082dc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c00081f0: 7402 ld s0,32(sp) - c00081f2: 70a2 ld ra,40(sp) - c00081f4: 64e2 ld s1,24(sp) - c00081f6: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5266 + c00082de: 7402 ld s0,32(sp) + c00082e0: 70a2 ld ra,40(sp) + c00082e2: 64e2 ld s1,24(sp) + c00082e4: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5274 JS_FreeValueRT(rt, pr->u.value); - c00081f8: a1c1 j c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5260 - } else if ((prop_flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c00081fa: 02000793 li a5,32 - c00081fe: 00f61863 bne a2,a5,c000820e + c00082e6: a1c1 j c00087a6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 + } else if ((prop_flags & JS_PROP_TMASK) == JS_PROP_VARREF) { + c00082e8: 02000793 li a5,32 + c00082ec: 00f61863 bne a2,a5,c00082fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c0008202: 7402 ld s0,32(sp) - c0008204: 70a2 ld ra,40(sp) - c0008206: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5261 + c00082f0: 7402 ld s0,32(sp) + c00082f2: 70a2 ld ra,40(sp) + c00082f4: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5269 free_var_ref(rt, pr->u.var_ref); - c0008208: 618c ld a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 + c00082f6: 618c ld a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c000820a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5261 + c00082f8: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5269 free_var_ref(rt, pr->u.var_ref); - c000820c: a34d j c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5262 + c00082fa: a34d j c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5270 } else if ((prop_flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c000820e: 03000793 li a5,48 - c0008212: 00f61d63 bne a2,a5,c000822c + c00082fc: 03000793 li a5,48 + c0008300: 00f61d63 bne a2,a5,c000831a js_autoinit_get_realm(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5241 return (JSContext *)(pr->u.init.realm_and_id & ~3); - c0008216: 6188 ld a0,0(a1) + c0008304: 6188 ld a0,0(a1) free_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c0008218: 7402 ld s0,32(sp) - c000821a: 70a2 ld ra,40(sp) - c000821c: 64e2 ld s1,24(sp) + c0008306: 7402 ld s0,32(sp) + c0008308: 70a2 ld ra,40(sp) + c000830a: 64e2 ld s1,24(sp) js_autoinit_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5251 JS_FreeContext(js_autoinit_get_realm(pr)); - c000821e: 9971 andi a0,a0,-4 + c000830c: 9971 andi a0,a0,-4 free_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c0008220: 6145 addi sp,sp,48 + c000830e: 6145 addi sp,sp,48 js_autoinit_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5251 JS_FreeContext(js_autoinit_get_realm(pr)); - c0008222: e35ff06f j c0008056 + c0008310: e35ff06f j c0008144 free_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5266 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5274 JS_FreeValueRT(rt, pr->u.value); - c0008226: 618c ld a1,0(a1) - c0008228: 6410 ld a2,8(s0) - c000822a: b7d9 j c00081f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5268 + c0008314: 618c ld a1,0(a1) + c0008316: 6410 ld a2,8(s0) + c0008318: b7d9 j c00082de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 } - c000822c: 70a2 ld ra,40(sp) - c000822e: 7402 ld s0,32(sp) - c0008230: 64e2 ld s1,24(sp) - c0008232: 6145 addi sp,sp,48 - c0008234: 8082 ret + c000831a: 70a2 ld ra,40(sp) + c000831c: 7402 ld s0,32(sp) + c000831e: 64e2 ld s1,24(sp) + c0008320: 6145 addi sp,sp,48 + c0008322: 8082 ret -00000000c0008236 : +00000000c0008324 : free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5539 -{ - c0008236: 7139 addi sp,sp,-64 - c0008238: f822 sd s0,48(sp) - c000823a: f426 sd s1,40(sp) - c000823c: fc06 sd ra,56(sp) - c000823e: f04a sd s2,32(sp) - c0008240: ec4e sd s3,24(sp) - c0008242: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5547 +{ + c0008324: 7139 addi sp,sp,-64 + c0008326: f822 sd s0,48(sp) + c0008328: f426 sd s1,40(sp) + c000832a: fc06 sd ra,56(sp) + c000832c: f04a sd s2,32(sp) + c000832e: ec4e sd s3,24(sp) + c0008330: e852 sd s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5548 switch(gp->gc_obj_type) { - c0008244: 0045e783 lwu a5,4(a1) - c0008248: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5539 + c0008332: 0045e783 lwu a5,4(a1) + c0008336: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5547 { - c000824a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5540 + c0008338: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5548 switch(gp->gc_obj_type) { - c000824c: 8bbd andi a5,a5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5539 + c000833a: 8bbd andi a5,a5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5547 { - c000824e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5540 + c000833c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5548 switch(gp->gc_obj_type) { - c0008250: 14e78863 beq a5,a4,c00083a0 - c0008254: 4711 li a4,4 - c0008256: 1ee78663 beq a5,a4,c0008442 - c000825a: 20079363 bnez a5,c0008460 + c000833e: 14e78863 beq a5,a4,c000848e + c0008342: 4711 li a4,4 + c0008344: 1ee78663 beq a5,a4,c0008530 + c0008348: 20079363 bnez a5,c000854e free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5506 p->free_mark = 1; /* used to tell the object is invalid when - c000825e: 0055c783 lbu a5,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5501 + c000834c: 0055c783 lbu a5,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5509 sh = p->shape; - c0008262: 0185b983 ld s3,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5503 + c0008350: 0185b983 ld s3,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5511 for(i = 0; i < sh->prop_count; i++) { - c0008266: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5498 + c0008354: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5506 p->free_mark = 1; /* used to tell the object is invalid when - c0008268: 0027e793 ori a5,a5,2 - c000826c: 00f582a3 sb a5,5(a1) + c0008356: 0027e793 ori a5,a5,2 + c000835a: 00f582a3 sb a5,5(a1) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0008270: 04098a13 addi s4,s3,64 + c000835e: 04098a13 addi s4,s3,64 free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5511 for(i = 0; i < sh->prop_count; i++) { - c0008274: 0289a783 lw a5,40(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5504 + c0008362: 0289a783 lw a5,40(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5512 free_property(rt, &p->prop[i], pr->flags); - c0008278: 700c ld a1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5503 + c0008366: 700c ld a1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5511 for(i = 0; i < sh->prop_count; i++) { - c000827a: 02f94f63 blt s2,a5,c00082b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5507 + c0008368: 02f94f63 blt s2,a5,c00083a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5515 js_free_rt(rt, p->prop); - c000827e: 8526 mv a0,s1 - c0008280: 927fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5510 + c000836c: 8526 mv a0,s1 + c000836e: 927fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5518 js_free_shape(rt, sh); - c0008284: 85ce mv a1,s3 - c0008286: 8526 mv a0,s1 - c0008288: 48e000ef jal ra,c0008716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5516 + c0008372: 85ce mv a1,s3 + c0008374: 8526 mv a0,s1 + c0008376: 48e000ef jal ra,c0008804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5524 if (unlikely(p->first_weak_ref)) { - c000828c: 02843903 ld s2,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5513 + c000837a: 02843903 ld s2,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5521 p->shape = NULL; - c0008290: 00043c23 sd zero,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5514 + c000837e: 00043c23 sd zero,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5522 p->prop = NULL; - c0008294: 02043023 sd zero,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5516 + c0008382: 02043023 sd zero,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5524 if (unlikely(p->first_weak_ref)) { - c0008298: 06090763 beqz s2,c0008306 + c0008386: 06090763 beqz s2,c00083f4 reset_weak_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47197 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47205 assert(s->is_weak); - c000829c: 00893783 ld a5,8(s2) - c00082a0: 439c lw a5,0(a5) - c00082a2: eb85 bnez a5,c00082d2 - c00082a4: 65b1 lui a1,0xc - c00082a6: 4601 li a2,0 - c00082a8: 85d58593 addi a1,a1,-1955 # b85d <__clzdi2-0xbfff47a3> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47198 + c000838a: 00893783 ld a5,8(s2) + c000838e: 439c lw a5,0(a5) + c0008390: eb85 bnez a5,c00083c0 + c0008392: 65b1 lui a1,0xc + c0008394: 4601 li a2,0 + c0008396: 86558593 addi a1,a1,-1947 # b865 <__clzdi2-0xbfff479b> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47206 assert(!mr->empty); /* no iterator on WeakMap/WeakSet */ - c00082ac: 00054517 auipc a0,0x54 - c00082b0: 7cc50513 addi a0,a0,1996 # c005ca78 - c00082b4: 7644b0ef jal ra,c0053a18 <__assert> + c000839a: 00055517 auipc a0,0x55 + c000839e: 8ae50513 addi a0,a0,-1874 # c005cc48 + c00083a2: 0474b0ef jal ra,c0053be8 <__assert> free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5512 free_property(rt, &p->prop[i], pr->flags); - c00082b8: 000a2603 lw a2,0(s4) - c00082bc: 00491793 slli a5,s2,0x4 - c00082c0: 95be add a1,a1,a5 - c00082c2: 01a6561b srliw a2,a2,0x1a - c00082c6: 8526 mv a0,s1 - c00082c8: ef3ff0ef jal ra,c00081ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5505 + c00083a6: 000a2603 lw a2,0(s4) + c00083aa: 00491793 slli a5,s2,0x4 + c00083ae: 95be add a1,a1,a5 + c00083b0: 01a6561b srliw a2,a2,0x1a + c00083b4: 8526 mv a0,s1 + c00083b6: ef3ff0ef jal ra,c00082a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5513 pr++; - c00082cc: 0a21 addi s4,s4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5503 + c00083ba: 0a21 addi s4,s4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5511 for(i = 0; i < sh->prop_count; i++) { - c00082ce: 2905 addiw s2,s2,1 - c00082d0: b755 j c0008274 + c00083bc: 2905 addiw s2,s2,1 + c00083be: b755 j c0008362 reset_weak_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47206 assert(!mr->empty); /* no iterator on WeakMap/WeakSet */ - c00082d2: 00492783 lw a5,4(s2) - c00082d6: c791 beqz a5,c00082e2 - c00082d8: 65b1 lui a1,0xc - c00082da: 4601 li a2,0 - c00082dc: 85e58593 addi a1,a1,-1954 # b85e <__clzdi2-0xbfff47a2> - c00082e0: b7f1 j c00082ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47199 + c00083c0: 00492783 lw a5,4(s2) + c00083c4: c791 beqz a5,c00083d0 + c00083c6: 65b1 lui a1,0xc + c00083c8: 4601 li a2,0 + c00083ca: 86658593 addi a1,a1,-1946 # b866 <__clzdi2-0xbfff479a> + c00083ce: b7f1 j c000839a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47207 list_del(&mr->hash_link); - c00082e2: 02890513 addi a0,s2,40 - c00082e6: d75fb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47200 + c00083d0: 02890513 addi a0,s2,40 + c00083d4: c87fb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47208 list_del(&mr->link); - c00082ea: 01890513 addi a0,s2,24 - c00082ee: d6dfb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47195 + c00083d8: 01890513 addi a0,s2,24 + c00083dc: c7ffb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47203 for(mr = p->first_weak_ref; mr != NULL; mr = mr->next_weak_ref) { - c00082f2: 01093903 ld s2,16(s2) - c00082f6: fa0913e3 bnez s2,c000829c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47205 + c00083e0: 01093903 ld s2,16(s2) + c00083e4: fa0913e3 bnez s2,c000838a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47213 for(mr = p->first_weak_ref; mr != NULL; mr = mr_next) { - c00082fa: 02843903 ld s2,40(s0) - c00082fe: 06091763 bnez s2,c000836c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47211 + c00083e8: 02843903 ld s2,40(s0) + c00083ec: 06091763 bnez s2,c000845a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47219 p->first_weak_ref = NULL; /* fail safe */ - c0008302: 02043423 sd zero,40(s0) + c00083f0: 02043423 sd zero,40(s0) free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5528 finalizer = rt->class_array[p->class_id].finalizer; - c0008306: 00645703 lhu a4,6(s0) - c000830a: 02800693 li a3,40 - c000830e: 78bc ld a5,112(s1) - c0008310: 02d70733 mul a4,a4,a3 - c0008314: 97ba add a5,a5,a4 - c0008316: 679c ld a5,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5521 + c00083f4: 00645703 lhu a4,6(s0) + c00083f8: 02800693 li a3,40 + c00083fc: 78bc ld a5,112(s1) + c00083fe: 02d70733 mul a4,a4,a3 + c0008402: 97ba add a5,a5,a4 + c0008404: 679c ld a5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5529 if (finalizer) - c0008318: c789 beqz a5,c0008322 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5522 + c0008406: c789 beqz a5,c0008410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5530 (*finalizer)(rt, JS_MKPTR(JS_TAG_OBJECT, p)); - c000831a: 85a2 mv a1,s0 - c000831c: 567d li a2,-1 - c000831e: 8526 mv a0,s1 - c0008320: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5525 + c0008408: 85a2 mv a1,s0 + c000840a: 567d li a2,-1 + c000840c: 8526 mv a0,s1 + c000840e: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5533 p->class_id = 0; - c0008322: 00041323 sh zero,6(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5526 + c0008410: 00041323 sh zero,6(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5534 p->u.opaque = NULL; - c0008326: 02043823 sd zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5527 + c0008414: 02043823 sd zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5535 p->u.func.var_refs = NULL; - c000832a: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5528 + c0008418: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5536 p->u.func.home_object = NULL; - c000832e: 04043023 sd zero,64(s0) + c000841c: 04043023 sd zero,64(s0) remove_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5675 list_del(&h->link); - c0008332: 00840913 addi s2,s0,8 - c0008336: 854a mv a0,s2 - c0008338: d23fb0ef jal ra,c000405a + c0008420: 00840913 addi s2,s0,8 + c0008424: 854a mv a0,s2 + c0008426: c35fb0ef jal ra,c000405a __async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18947 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18955 if (rt->gc_phase == JS_GC_PHASE_REMOVE_CYCLES && s->header.ref_count != 0) { - c000833c: 0b84c703 lbu a4,184(s1) - c0008340: 4789 li a5,2 - c0008342: 04f71463 bne a4,a5,c000838a - c0008346: 401c lw a5,0(s0) - c0008348: c3a9 beqz a5,c000838a + c000842a: 0b84c703 lbu a4,184(s1) + c000842e: 4789 li a5,2 + c0008430: 04f71463 bne a4,a5,c0008478 + c0008434: 401c lw a5,0(s0) + c0008436: c3a9 beqz a5,c0008478 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c000834a: 6cdc ld a5,152(s1) + c0008438: 6cdc ld a5,152(s1) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c000834c: 0127b423 sd s2,8(a5) + c000843a: 0127b423 sd s2,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0008350: e41c sd a5,8(s0) + c000843e: e41c sd a5,8(s0) __async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18948 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18956 list_add_tail(&s->header.link, &rt->gc_zero_ref_count_list); - c0008352: 09848793 addi a5,s1,152 + c0008440: 09848793 addi a5,s1,152 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0008356: e81c sd a5,16(s0) + c0008444: e81c sd a5,16(s0) free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5561 } - c0008358: 70e2 ld ra,56(sp) - c000835a: 7442 ld s0,48(sp) + c0008446: 70e2 ld ra,56(sp) + c0008448: 7442 ld s0,48(sp) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c000835c: 0924bc23 sd s2,152(s1) + c000844a: 0924bc23 sd s2,152(s1) free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5553 - c0008360: 69e2 ld s3,24(sp) - c0008362: 74a2 ld s1,40(sp) - c0008364: 7902 ld s2,32(sp) - c0008366: 6a42 ld s4,16(sp) - c0008368: 6121 addi sp,sp,64 - c000836a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5561 + c000844e: 69e2 ld s3,24(sp) + c0008450: 74a2 ld s1,40(sp) + c0008452: 7902 ld s2,32(sp) + c0008454: 6a42 ld s4,16(sp) + c0008456: 6121 addi sp,sp,64 + c0008458: 8082 ret reset_weak_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47207 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47215 JS_FreeValueRT(rt, mr->value); - c000836c: 04893583 ld a1,72(s2) - c0008370: 05093603 ld a2,80(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47206 + c000845a: 04893583 ld a1,72(s2) + c000845e: 05093603 ld a2,80(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47214 mr_next = mr->next_weak_ref; - c0008374: 01093983 ld s3,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47207 + c0008462: 01093983 ld s3,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47215 JS_FreeValueRT(rt, mr->value); - c0008378: 8526 mv a0,s1 - c000837a: 33e000ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47208 + c0008466: 8526 mv a0,s1 + c0008468: 33e000ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47216 js_free_rt(rt, mr); - c000837e: 85ca mv a1,s2 - c0008380: 8526 mv a0,s1 - c0008382: 825fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47205 + c000846c: 85ca mv a1,s2 + c000846e: 8526 mv a0,s1 + c0008470: 825fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47213 for(mr = p->first_weak_ref; mr != NULL; mr = mr_next) { - c0008386: 894e mv s2,s3 - c0008388: bf9d j c00082fe + c0008474: 894e mv s2,s3 + c0008476: bf9d j c00083ec free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5542 js_free_rt(rt, p); - c000838a: 85a2 mv a1,s0 + c0008478: 85a2 mv a1,s0 free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5561 } - c000838c: 7442 ld s0,48(sp) - c000838e: 70e2 ld ra,56(sp) - c0008390: 7902 ld s2,32(sp) - c0008392: 69e2 ld s3,24(sp) - c0008394: 6a42 ld s4,16(sp) + c000847a: 7442 ld s0,48(sp) + c000847c: 70e2 ld ra,56(sp) + c000847e: 7902 ld s2,32(sp) + c0008480: 69e2 ld s3,24(sp) + c0008482: 6a42 ld s4,16(sp) free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5542 js_free_rt(rt, p); - c0008396: 8526 mv a0,s1 + c0008484: 8526 mv a0,s1 free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5561 } - c0008398: 74a2 ld s1,40(sp) - c000839a: 6121 addi sp,sp,64 + c0008486: 74a2 ld s1,40(sp) + c0008488: 6121 addi sp,sp,64 free_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5542 js_free_rt(rt, p); - c000839c: 80bfe06f j c0006ba6 + c000848a: 80bfe06f j c0006c94 free_function_bytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33480 free_bytecode_atoms(rt, b->byte_code_buf, b->byte_code_len, TRUE); - c00083a0: 5590 lw a2,40(a1) - c00083a2: 718c ld a1,32(a1) - c00083a4: 4685 li a3,1 - c00083a6: 4901 li s2,0 - c00083a8: e38ff0ef jal ra,c00079e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33474 + c000848e: 5590 lw a2,40(a1) + c0008490: 718c ld a1,32(a1) + c0008492: 4685 li a3,1 + c0008494: 4901 li s2,0 + c0008496: e38ff0ef jal ra,c0007ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33482 if (b->vardefs) { - c00083ac: 781c ld a5,48(s0) - c00083ae: ebb9 bnez a5,c0008404 - c00083b0: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33479 + c000849a: 781c ld a5,48(s0) + c000849c: ebb9 bnez a5,c00084f2 + c000849e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33487 for(i = 0; i < b->cpool_count; i++) - c00083b2: 4c3c lw a5,88(s0) - c00083b4: 06f94263 blt s2,a5,c0008418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33482 + c00084a0: 4c3c lw a5,88(s0) + c00084a2: 06f94263 blt s2,a5,c0008506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33490 for(i = 0; i < b->closure_var_count; i++) { - c00083b8: 4901 li s2,0 - c00083ba: 4c7c lw a5,92(s0) - c00083bc: 06f94963 blt s2,a5,c000842e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33486 + c00084a6: 4901 li s2,0 + c00084a8: 4c7c lw a5,92(s0) + c00084aa: 06f94963 blt s2,a5,c000851c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33494 if (b->realm) - c00083c0: 6428 ld a0,72(s0) - c00083c2: c119 beqz a0,c00083c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33487 + c00084ae: 6428 ld a0,72(s0) + c00084b0: c119 beqz a0,c00084b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33495 JS_FreeContext(b->realm); - c00083c4: c93ff0ef jal ra,c0008056 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33489 + c00084b2: c93ff0ef jal ra,c0008144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33497 JS_FreeAtomRT(rt, b->func_name); - c00083c8: 544c lw a1,44(s0) - c00083ca: 8526 mv a0,s1 - c00083cc: e06ff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33490 + c00084b6: 544c lw a1,44(s0) + c00084b8: 8526 mv a0,s1 + c00084ba: e06ff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33498 if (b->has_debug) { - c00083d0: 01a44783 lbu a5,26(s0) - c00083d4: 8b91 andi a5,a5,4 - c00083d6: dfb1 beqz a5,c0008332 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33491 + c00084be: 01a44783 lbu a5,26(s0) + c00084c2: 8b91 andi a5,a5,4 + c00084c4: dfb1 beqz a5,c0008420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33499 JS_FreeAtomRT(rt, b->debug.filename); - c00083d8: 502c lw a1,96(s0) - c00083da: 8526 mv a0,s1 - c00083dc: df6ff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33492 + c00084c6: 502c lw a1,96(s0) + c00084c8: 8526 mv a0,s1 + c00084ca: df6ff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33500 js_free_rt(rt, b->debug.pc2line_buf); - c00083e0: 782c ld a1,112(s0) - c00083e2: 8526 mv a0,s1 - c00083e4: fc2fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33493 + c00084ce: 782c ld a1,112(s0) + c00084d0: 8526 mv a0,s1 + c00084d2: fc2fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33501 js_free_rt(rt, b->debug.source); - c00083e8: 7c2c ld a1,120(s0) - c00083ea: 8526 mv a0,s1 - c00083ec: fbafe0ef jal ra,c0006ba6 + c00084d6: 7c2c ld a1,120(s0) + c00084d8: 8526 mv a0,s1 + c00084da: fbafe0ef jal ra,c0006c94 remove_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5675 list_del(&h->link); - c00083f0: b789 j c0008332 + c00084de: b789 j c0008420 free_function_bytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33484 JS_FreeAtomRT(rt, b->vardefs[i].var_name); - c00083f2: 781c ld a5,48(s0) - c00083f4: 00491713 slli a4,s2,0x4 - c00083f8: 8526 mv a0,s1 - c00083fa: 97ba add a5,a5,a4 - c00083fc: 438c lw a1,0(a5) - c00083fe: 0905 addi s2,s2,1 - c0008400: dd2ff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33475 + c00084e0: 781c ld a5,48(s0) + c00084e2: 00491713 slli a4,s2,0x4 + c00084e6: 8526 mv a0,s1 + c00084e8: 97ba add a5,a5,a4 + c00084ea: 438c lw a1,0(a5) + c00084ec: 0905 addi s2,s2,1 + c00084ee: dd2ff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33483 for(i = 0; i < b->arg_count + b->var_count; i++) { - c0008404: 04245703 lhu a4,66(s0) - c0008408: 04045783 lhu a5,64(s0) - c000840c: 9fb9 addw a5,a5,a4 - c000840e: 0009071b sext.w a4,s2 - c0008412: fef740e3 blt a4,a5,c00083f2 - c0008416: bf69 j c00083b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33480 + c00084f2: 04245703 lhu a4,66(s0) + c00084f6: 04045783 lhu a5,64(s0) + c00084fa: 9fb9 addw a5,a5,a4 + c00084fc: 0009071b sext.w a4,s2 + c0008500: fef740e3 blt a4,a5,c00084e0 + c0008504: bf69 j c000849e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33488 JS_FreeValueRT(rt, b->cpool[i]); - c0008418: 683c ld a5,80(s0) - c000841a: 00491713 slli a4,s2,0x4 - c000841e: 8526 mv a0,s1 - c0008420: 97ba add a5,a5,a4 - c0008422: 638c ld a1,0(a5) - c0008424: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33479 + c0008506: 683c ld a5,80(s0) + c0008508: 00491713 slli a4,s2,0x4 + c000850c: 8526 mv a0,s1 + c000850e: 97ba add a5,a5,a4 + c0008510: 638c ld a1,0(a5) + c0008512: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33487 for(i = 0; i < b->cpool_count; i++) - c0008426: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33480 + c0008514: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33488 JS_FreeValueRT(rt, b->cpool[i]); - c0008428: 290000ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33479 + c0008516: 290000ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33487 for(i = 0; i < b->cpool_count; i++) - c000842c: b759 j c00083b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33484 + c000851a: b759 j c00084a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33492 JS_FreeAtomRT(rt, cv->var_name); - c000842e: 7c1c ld a5,56(s0) - c0008430: 00391713 slli a4,s2,0x3 - c0008434: 8526 mv a0,s1 - c0008436: 97ba add a5,a5,a4 - c0008438: 43cc lw a1,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33482 + c000851c: 7c1c ld a5,56(s0) + c000851e: 00391713 slli a4,s2,0x3 + c0008522: 8526 mv a0,s1 + c0008524: 97ba add a5,a5,a4 + c0008526: 43cc lw a1,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33490 for(i = 0; i < b->closure_var_count; i++) { - c000843a: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33484 + c0008528: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33492 JS_FreeAtomRT(rt, cv->var_name); - c000843c: d96ff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33482 + c000852a: d96ff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33490 for(i = 0; i < b->closure_var_count; i++) { - c0008440: bfad j c00083ba + c000852e: bfad j c00084a8 __async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18939 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18947 if (!s->is_completed) { - c0008442: 599c lw a5,48(a1) - c0008444: e399 bnez a5,c000844a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18940 + c0008530: 599c lw a5,48(a1) + c0008532: e399 bnez a5,c0008538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18948 async_func_free_frame(rt, s); - c0008446: 536000ef jal ra,c000897c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18943 + c0008534: 536000ef jal ra,c0008a6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18951 JS_FreeValueRT(rt, s->resolving_funcs[0]); - c000844a: 7c0c ld a1,56(s0) - c000844c: 6030 ld a2,64(s0) - c000844e: 8526 mv a0,s1 - c0008450: 268000ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18944 + c0008538: 7c0c ld a1,56(s0) + c000853a: 6030 ld a2,64(s0) + c000853c: 8526 mv a0,s1 + c000853e: 268000ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18952 JS_FreeValueRT(rt, s->resolving_funcs[1]); - c0008454: 642c ld a1,72(s0) - c0008456: 6830 ld a2,80(s0) - c0008458: 8526 mv a0,s1 - c000845a: 25e000ef jal ra,c00086b8 - c000845e: bdd1 j c0008332 + c0008542: 642c ld a1,72(s0) + c0008544: 6830 ld a2,80(s0) + c0008546: 8526 mv a0,s1 + c0008548: 25e000ef jal ra,c00087a6 + c000854c: bdd1 j c0008420 free_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5551 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5559 abort(); - c0008460: 3aa4d0ef jal ra,c005580a + c000854e: 48c4d0ef jal ra,c00559da -00000000c0008464 : +00000000c0008552 : free_zero_refcount(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5564 { - c0008464: 1101 addi sp,sp,-32 - c0008466: e822 sd s0,16(sp) - c0008468: e426 sd s1,8(sp) - c000846a: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5560 + c0008552: 1101 addi sp,sp,-32 + c0008554: e822 sd s0,16(sp) + c0008556: e426 sd s1,8(sp) + c0008558: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5568 rt->gc_phase = JS_GC_PHASE_DECREF; - c000846c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5556 + c000855a: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5564 { - c000846e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5560 + c000855c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5568 rt->gc_phase = JS_GC_PHASE_DECREF; - c0008470: 0af50c23 sb a5,184(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5563 + c000855e: 0af50c23 sb a5,184(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5571 if (el == &rt->gc_zero_ref_count_list) - c0008474: 09850493 addi s1,a0,152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5562 + c0008562: 09850493 addi s1,a0,152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5570 el = rt->gc_zero_ref_count_list.next; - c0008478: 705c ld a5,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5563 + c0008566: 705c ld a5,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5571 if (el == &rt->gc_zero_ref_count_list) - c000847a: 02978563 beq a5,s1,c00084a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5565 + c0008568: 02978563 beq a5,s1,c0008592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5573 p = list_entry(el, JSGCObjectHeader, link); - c000847e: ff878593 addi a1,a5,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5566 + c000856c: ff878593 addi a1,a5,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5574 assert(p->ref_count == 0); - c0008482: ff87a783 lw a5,-8(a5) - c0008486: cb99 beqz a5,c000849c - c0008488: 6585 lui a1,0x1 - c000848a: 4601 li a2,0 - c000848c: 5be58593 addi a1,a1,1470 # 15be <__clzdi2-0xbfffea42> - c0008490: 00054517 auipc a0,0x54 - c0008494: 5e850513 addi a0,a0,1512 # c005ca78 - c0008498: 5804b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5567 (discriminator 2) + c0008570: ff87a783 lw a5,-8(a5) + c0008574: cb99 beqz a5,c000858a + c0008576: 6585 lui a1,0x1 + c0008578: 4601 li a2,0 + c000857a: 5c658593 addi a1,a1,1478 # 15c6 <__clzdi2-0xbfffea3a> + c000857e: 00054517 auipc a0,0x54 + c0008582: 6ca50513 addi a0,a0,1738 # c005cc48 + c0008586: 6624b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5575 (discriminator 2) free_gc_object(rt, p); - c000849c: 8522 mv a0,s0 - c000849e: d99ff0ef jal ra,c0008236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5562 (discriminator 2) + c000858a: 8522 mv a0,s0 + c000858c: d99ff0ef jal ra,c0008324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5570 (discriminator 2) el = rt->gc_zero_ref_count_list.next; - c00084a2: bfd9 j c0008478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5570 + c0008590: bfd9 j c0008566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5578 } - c00084a4: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5569 + c0008592: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5577 rt->gc_phase = JS_GC_PHASE_NONE; - c00084a6: 0a040c23 sb zero,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5570 + c0008594: 0a040c23 sb zero,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5578 } - c00084aa: 6442 ld s0,16(sp) - c00084ac: 64a2 ld s1,8(sp) - c00084ae: 6105 addi sp,sp,32 - c00084b0: 8082 ret + c0008598: 6442 ld s0,16(sp) + c000859a: 64a2 ld s1,8(sp) + c000859c: 6105 addi sp,sp,32 + c000859e: 8082 ret -00000000c00084b2 : +00000000c00085a0 : async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18964 if (--s->header.ref_count == 0) { - c00084b2: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18955 + c00085a0: 419c lw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18963 { - c00084b4: 1101 addi sp,sp,-32 - c00084b6: e426 sd s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18956 + c00085a2: 1101 addi sp,sp,-32 + c00085a4: e426 sd s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18964 if (--s->header.ref_count == 0) { - c00084b8: fff7871b addiw a4,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18955 + c00085a6: fff7871b addiw a4,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18963 { - c00084bc: ec06 sd ra,24(sp) - c00084be: e822 sd s0,16(sp) - c00084c0: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18956 + c00085aa: ec06 sd ra,24(sp) + c00085ac: e822 sd s0,16(sp) + c00085ae: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18964 if (--s->header.ref_count == 0) { - c00084c2: c198 sw a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18955 + c00085b0: c198 sw a4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18963 { - c00084c4: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18956 + c00085b2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18964 if (--s->header.ref_count == 0) { - c00084c6: e321 bnez a4,c0008506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18957 + c00085b4: e321 bnez a4,c00085f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18965 if (rt->gc_phase != JS_GC_PHASE_REMOVE_CYCLES) { - c00084c8: 0b854703 lbu a4,184(a0) - c00084cc: 4789 li a5,2 - c00084ce: 842a mv s0,a0 - c00084d0: 02f70b63 beq a4,a5,c0008506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18958 + c00085b6: 0b854703 lbu a4,184(a0) + c00085ba: 4789 li a5,2 + c00085bc: 842a mv s0,a0 + c00085be: 02f70b63 beq a4,a5,c00085f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18966 list_del(&s->header.link); - c00084d4: 00858913 addi s2,a1,8 - c00084d8: 854a mv a0,s2 - c00084da: b81fb0ef jal ra,c000405a + c00085c2: 00858913 addi s2,a1,8 + c00085c6: 854a mv a0,s2 + c00085c8: a93fb0ef jal ra,c000405a list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:60 __list_add(el, head, head->next); - c00084de: 705c ld a5,160(s0) + c00085cc: 705c ld a5,160(s0) async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18959 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18967 list_add(&s->header.link, &rt->gc_zero_ref_count_list); - c00084e0: 09840713 addi a4,s0,152 + c00085ce: 09840713 addi a4,s0,152 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c00084e4: 0b243023 sd s2,160(s0) + c00085d2: 0b243023 sd s2,160(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c00084e8: e498 sd a4,8(s1) + c00085d6: e498 sd a4,8(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c00084ea: e89c sd a5,16(s1) + c00085d8: e89c sd a5,16(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c00084ec: 0127b023 sd s2,0(a5) + c00085da: 0127b023 sd s2,0(a5) async_func_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18968 if (rt->gc_phase == JS_GC_PHASE_NONE) { - c00084f0: 0b844783 lbu a5,184(s0) - c00084f4: eb89 bnez a5,c0008506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18961 + c00085de: 0b844783 lbu a5,184(s0) + c00085e2: eb89 bnez a5,c00085f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18969 free_zero_refcount(rt); - c00084f6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18965 -} - c00084f8: 6442 ld s0,16(sp) - c00084fa: 60e2 ld ra,24(sp) - c00084fc: 64a2 ld s1,8(sp) - c00084fe: 6902 ld s2,0(sp) - c0008500: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18961 + c00085e4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18973 +} + c00085e6: 6442 ld s0,16(sp) + c00085e8: 60e2 ld ra,24(sp) + c00085ea: 64a2 ld s1,8(sp) + c00085ec: 6902 ld s2,0(sp) + c00085ee: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18969 free_zero_refcount(rt); - c0008502: f63ff06f j c0008464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18965 + c00085f0: f63ff06f j c0008552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18973 } - c0008506: 60e2 ld ra,24(sp) - c0008508: 6442 ld s0,16(sp) - c000850a: 64a2 ld s1,8(sp) - c000850c: 6902 ld s2,0(sp) - c000850e: 6105 addi sp,sp,32 - c0008510: 8082 ret + c00085f4: 60e2 ld ra,24(sp) + c00085f6: 6442 ld s0,16(sp) + c00085f8: 64a2 ld s1,8(sp) + c00085fa: 6902 ld s2,0(sp) + c00085fc: 6105 addi sp,sp,32 + c00085fe: 8082 ret -00000000c0008512 : +00000000c0008600 : close_var_refs(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15895 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15903 { - c0008512: 7139 addi sp,sp,-64 - c0008514: f426 sd s1,40(sp) - c0008516: e852 sd s4,16(sp) - c0008518: e456 sd s5,8(sp) - c000851a: fc06 sd ra,56(sp) - c000851c: f822 sd s0,48(sp) - c000851e: f04a sd s2,32(sp) - c0008520: ec4e sd s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15900 + c0008600: 7139 addi sp,sp,-64 + c0008602: f426 sd s1,40(sp) + c0008604: e852 sd s4,16(sp) + c0008606: e456 sd s5,8(sp) + c0008608: fc06 sd ra,56(sp) + c000860a: f822 sd s0,48(sp) + c000860c: f04a sd s2,32(sp) + c000860e: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15908 list_for_each_safe(el, el1, &sf->var_ref_list) { - c0008522: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15895 + c0008610: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15903 { - c0008524: 8a2a mv s4,a0 - c0008526: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15900 + c0008612: 8a2a mv s4,a0 + c0008614: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15908 list_for_each_safe(el, el1, &sf->var_ref_list) { - c0008528: 00843983 ld s3,8(s0) - c000852c: 02858a93 addi s5,a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15900 (discriminator 1) - c0008530: 01541b63 bne s0,s5,c0008546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15914 + c0008616: 00843983 ld s3,8(s0) + c000861a: 02858a93 addi s5,a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15908 (discriminator 1) + c000861e: 01541b63 bne s0,s5,c0008634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15922 } - c0008534: 70e2 ld ra,56(sp) - c0008536: 7442 ld s0,48(sp) - c0008538: 74a2 ld s1,40(sp) - c000853a: 7902 ld s2,32(sp) - c000853c: 69e2 ld s3,24(sp) - c000853e: 6a42 ld s4,16(sp) - c0008540: 6aa2 ld s5,8(sp) - c0008542: 6121 addi sp,sp,64 - c0008544: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15903 + c0008622: 70e2 ld ra,56(sp) + c0008624: 7442 ld s0,48(sp) + c0008626: 74a2 ld s1,40(sp) + c0008628: 7902 ld s2,32(sp) + c000862a: 69e2 ld s3,24(sp) + c000862c: 6a42 ld s4,16(sp) + c000862e: 6aa2 ld s5,8(sp) + c0008630: 6121 addi sp,sp,64 + c0008632: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15911 if (var_ref->async_func) - c0008546: 680c ld a1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15901 + c0008634: 680c ld a1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15909 var_ref = list_entry(el, JSVarRef, var_ref_link); - c0008548: fe040913 addi s2,s0,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15903 + c0008636: fe040913 addi s2,s0,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15911 if (var_ref->async_func) - c000854c: c581 beqz a1,c0008554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15904 + c000863a: c581 beqz a1,c0008642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15912 async_func_free(rt, var_ref->async_func); - c000854e: 8552 mv a0,s4 - c0008550: f63ff0ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15907 + c000863c: 8552 mv a0,s4 + c000863e: f63ff0ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15915 var_ref->value = JS_DupValueRT(rt, sf->arg_buf[var_idx]); - c0008554: fe645783 lhu a5,-26(s0) - c0008558: 00479713 slli a4,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15906 + c0008642: fe645783 lhu a5,-26(s0) + c0008646: 00479713 slli a4,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15914 if (var_ref->is_arg) - c000855c: fe544783 lbu a5,-27(s0) - c0008560: 8b89 andi a5,a5,2 - c0008562: c79d beqz a5,c0008590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15907 + c000864a: fe544783 lbu a5,-27(s0) + c000864e: 8b89 andi a5,a5,2 + c0008650: c79d beqz a5,c000867e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15915 var_ref->value = JS_DupValueRT(rt, sf->arg_buf[var_idx]); - c0008564: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15909 + c0008652: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15917 var_ref->value = JS_DupValueRT(rt, sf->var_buf[var_idx]); - c0008566: 97ba add a5,a5,a4 - c0008568: 6388 ld a0,0(a5) - c000856a: 678c ld a1,8(a5) - c000856c: 902fe0ef jal ra,c000666e - c0008570: 02a93023 sd a0,32(s2) - c0008574: 02b93423 sd a1,40(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15912 + c0008654: 97ba add a5,a5,a4 + c0008656: 6388 ld a0,0(a5) + c0008658: 678c ld a1,8(a5) + c000865a: 902fe0ef jal ra,c000675c + c000865e: 02a93023 sd a0,32(s2) + c0008662: 02b93423 sd a1,40(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15920 var_ref->is_detached = TRUE; - c0008578: fe544783 lbu a5,-27(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15910 + c0008666: fe544783 lbu a5,-27(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15918 var_ref->pvalue = &var_ref->value; - c000857c: fe843c23 sd s0,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15912 + c000866a: fe843c23 sd s0,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15920 var_ref->is_detached = TRUE; - c0008580: 0017e793 ori a5,a5,1 - c0008584: fef402a3 sb a5,-27(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15900 + c000866e: 0017e793 ori a5,a5,1 + c0008672: fef402a3 sb a5,-27(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15908 list_for_each_safe(el, el1, &sf->var_ref_list) { - c0008588: 844e mv s0,s3 - c000858a: 0089b983 ld s3,8(s3) - c000858e: b74d j c0008530 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15909 + c0008676: 844e mv s0,s3 + c0008678: 0089b983 ld s3,8(s3) + c000867c: b74d j c000861e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15917 var_ref->value = JS_DupValueRT(rt, sf->var_buf[var_idx]); - c0008590: 709c ld a5,32(s1) - c0008592: bfd1 j c0008566 + c000867e: 709c ld a5,32(s1) + c0008680: bfd1 j c0008654 -00000000c0008594 : +00000000c0008682 : free_generator_stack_rt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18992 if (s->state == JS_GENERATOR_STATE_COMPLETED) - c0008594: 4198 lw a4,0(a1) - c0008596: 4791 li a5,4 - c0008598: 02f70263 beq a4,a5,c00085bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18983 -{ - c000859c: 1141 addi sp,sp,-16 - c000859e: e022 sd s0,0(sp) - c00085a0: e406 sd ra,8(sp) - c00085a2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18986 + c0008682: 4198 lw a4,0(a1) + c0008684: 4791 li a5,4 + c0008686: 02f70263 beq a4,a5,c00086aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18991 +{ + c000868a: 1141 addi sp,sp,-16 + c000868c: e022 sd s0,0(sp) + c000868e: e406 sd ra,8(sp) + c0008690: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18994 if (s->func_state) { - c00085a4: 658c ld a1,8(a1) - c00085a6: c589 beqz a1,c00085b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18987 + c0008692: 658c ld a1,8(a1) + c0008694: c589 beqz a1,c000869e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18995 async_func_free(rt, s->func_state); - c00085a8: f0bff0ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18988 + c0008696: f0bff0ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18996 s->func_state = NULL; - c00085ac: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18990 + c000869a: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18998 s->state = JS_GENERATOR_STATE_COMPLETED; - c00085b0: 4791 li a5,4 - c00085b2: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18991 + c000869e: 4791 li a5,4 + c00086a0: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18999 } - c00085b4: 60a2 ld ra,8(sp) - c00085b6: 6402 ld s0,0(sp) - c00085b8: 0141 addi sp,sp,16 - c00085ba: 8082 ret - c00085bc: 8082 ret + c00086a2: 60a2 ld ra,8(sp) + c00086a4: 6402 ld s0,0(sp) + c00086a6: 0141 addi sp,sp,16 + c00086a8: 8082 ret + c00086aa: 8082 ret -00000000c00085be : +00000000c00086ac : js_async_generator_complete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19469 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19477 if (s->state != JS_ASYNC_GENERATOR_STATE_COMPLETED) { - c00085be: 4598 lw a4,8(a1) - c00085c0: 4795 li a5,5 - c00085c2: 02f70163 beq a4,a5,c00085e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19468 -{ - c00085c6: 1141 addi sp,sp,-16 - c00085c8: e022 sd s0,0(sp) - c00085ca: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19470 + c00086ac: 4598 lw a4,8(a1) + c00086ae: 4795 li a5,5 + c00086b0: 02f70163 beq a4,a5,c00086d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19476 +{ + c00086b4: 1141 addi sp,sp,-16 + c00086b6: e022 sd s0,0(sp) + c00086b8: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19478 s->state = JS_ASYNC_GENERATOR_STATE_COMPLETED; - c00085cc: c59c sw a5,8(a1) - c00085ce: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19471 + c00086ba: c59c sw a5,8(a1) + c00086bc: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19479 async_func_free(ctx->rt, s->func_state); - c00085d0: 6d08 ld a0,24(a0) - c00085d2: 698c ld a1,16(a1) - c00085d4: edfff0ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19472 + c00086be: 6d08 ld a0,24(a0) + c00086c0: 698c ld a1,16(a1) + c00086c2: edfff0ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19480 s->func_state = NULL; - c00085d8: 00043823 sd zero,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19474 + c00086c6: 00043823 sd zero,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19482 } - c00085dc: 60a2 ld ra,8(sp) - c00085de: 6402 ld s0,0(sp) - c00085e0: 0141 addi sp,sp,16 - c00085e2: 8082 ret - c00085e4: 8082 ret + c00086ca: 60a2 ld ra,8(sp) + c00086cc: 6402 ld s0,0(sp) + c00086ce: 0141 addi sp,sp,16 + c00086d0: 8082 ret + c00086d2: 8082 ret -00000000c00085e6 : +00000000c00086d4 : js_async_function_resolve_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19151 { - c00085e6: 1141 addi sp,sp,-16 - c00085e8: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19145 + c00086d4: 1141 addi sp,sp,-16 + c00086d6: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19153 JSAsyncFunctionState *s = p->u.async_function_data; - c00085ea: 798c ld a1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19143 + c00086d8: 798c ld a1,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19151 { - c00085ec: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19146 + c00086da: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19154 if (s) { - c00085ee: c581 beqz a1,c00085f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19149 + c00086dc: c581 beqz a1,c00086e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19157 } - c00085f0: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19147 + c00086de: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19155 async_func_free(rt, s); - c00085f2: ec1ff06f j c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19149 + c00086e0: ec1ff06f j c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19157 } - c00085f6: 0141 addi sp,sp,16 - c00085f8: 8082 ret + c00086e4: 0141 addi sp,sp,16 + c00086e6: 8082 ret -00000000c00085fa <__JS_FreeValueRT>: +00000000c00086e8 <__JS_FreeValueRT>: __JS_FreeValueRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5582 { - c00085fa: 7139 addi sp,sp,-64 - c00085fc: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5575 + c00086e8: 7139 addi sp,sp,-64 + c00086ea: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5583 uint32_t tag = JS_VALUE_GET_TAG(v); - c00085fe: 0006069b sext.w a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5589 + c00086ec: 0006069b sext.w a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5597 switch(tag) { - c0008602: 2629 addiw a2,a2,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5574 -{ - c0008604: fc06 sd ra,56(sp) - c0008606: f822 sd s0,48(sp) - c0008608: f426 sd s1,40(sp) - c000860a: e82e sd a1,16(sp) - c000860c: 0006071b sext.w a4,a2 - c0008610: 47a5 li a5,9 - c0008612: 08e7e563 bltu a5,a4,c000869c <__JS_FreeValueRT+0xa2> - c0008616: 02061793 slli a5,a2,0x20 - c000861a: 01e7d613 srli a2,a5,0x1e - c000861e: 00054717 auipc a4,0x54 - c0008622: 59a70713 addi a4,a4,1434 # c005cbb8 - c0008626: 963a add a2,a2,a4 - c0008628: 421c lw a5,0(a2) - c000862a: 842a mv s0,a0 - c000862c: 97ba add a5,a5,a4 - c000862e: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5593 + c00086f0: 2629 addiw a2,a2,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5582 +{ + c00086f2: fc06 sd ra,56(sp) + c00086f4: f822 sd s0,48(sp) + c00086f6: f426 sd s1,40(sp) + c00086f8: e82e sd a1,16(sp) + c00086fa: 0006071b sext.w a4,a2 + c00086fe: 47a5 li a5,9 + c0008700: 08e7e563 bltu a5,a4,c000878a <__JS_FreeValueRT+0xa2> + c0008704: 02061793 slli a5,a2,0x20 + c0008708: 01e7d613 srli a2,a5,0x1e + c000870c: 00054717 auipc a4,0x54 + c0008710: 6dc70713 addi a4,a4,1756 # c005cde8 + c0008714: 963a add a2,a2,a4 + c0008716: 421c lw a5,0(a2) + c0008718: 842a mv s0,a0 + c000871a: 97ba add a5,a5,a4 + c000871c: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5601 if (p->atom_type) { - c0008630: 459c lw a5,8(a1) - c0008632: c0000737 lui a4,0xc0000 - c0008636: 8ff9 and a5,a5,a4 - c0008638: 2781 sext.w a5,a5 - c000863a: cbb9 beqz a5,c0008690 <__JS_FreeValueRT+0x96> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5648 -} - c000863c: 7442 ld s0,48(sp) - c000863e: 70e2 ld ra,56(sp) - c0008640: 74a2 ld s1,40(sp) - c0008642: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5641 + c000871e: 459c lw a5,8(a1) + c0008720: c0000737 lui a4,0xc0000 + c0008724: 8ff9 and a5,a5,a4 + c0008726: 2781 sext.w a5,a5 + c0008728: cbb9 beqz a5,c000877e <__JS_FreeValueRT+0x96> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5656 +} + c000872a: 7442 ld s0,48(sp) + c000872c: 70e2 ld ra,56(sp) + c000872e: 74a2 ld s1,40(sp) + c0008730: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5649 JS_FreeAtomStruct(rt, p); - c0008644: d6afe06f j c0006bae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5607 + c0008732: d6afe06f j c0006c9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5615 if (rt->gc_phase != JS_GC_PHASE_REMOVE_CYCLES) { - c0008648: 0b854703 lbu a4,184(a0) - c000864c: 4789 li a5,2 - c000864e: 06f70063 beq a4,a5,c00086ae <__JS_FreeValueRT+0xb4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5608 + c0008736: 0b854703 lbu a4,184(a0) + c000873a: 4789 li a5,2 + c000873c: 06f70063 beq a4,a5,c000879c <__JS_FreeValueRT+0xb4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5616 list_del(&p->link); - c0008652: 00858493 addi s1,a1,8 - c0008656: 8526 mv a0,s1 - c0008658: e42e sd a1,8(sp) - c000865a: a01fb0ef jal ra,c000405a + c0008740: 00858493 addi s1,a1,8 + c0008744: 8526 mv a0,s1 + c0008746: e42e sd a1,8(sp) + c0008748: 913fb0ef jal ra,c000405a list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:60 __list_add(el, head, head->next); - c000865e: 705c ld a5,160(s0) + c000874c: 705c ld a5,160(s0) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0008660: 65a2 ld a1,8(sp) + c000874e: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0008662: f044 sd s1,160(s0) + c0008750: f044 sd s1,160(s0) __JS_FreeValueRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5617 list_add(&p->link, &rt->gc_zero_ref_count_list); - c0008664: 09840713 addi a4,s0,152 + c0008752: 09840713 addi a4,s0,152 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0008668: e598 sd a4,8(a1) + c0008756: e598 sd a4,8(a1) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c000866a: e99c sd a5,16(a1) + c0008758: e99c sd a5,16(a1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c000866c: e384 sd s1,0(a5) + c000875a: e384 sd s1,0(a5) __JS_FreeValueRT(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5618 if (rt->gc_phase == JS_GC_PHASE_NONE) { - c000866e: 0b844783 lbu a5,184(s0) - c0008672: ef95 bnez a5,c00086ae <__JS_FreeValueRT+0xb4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5611 + c000875c: 0b844783 lbu a5,184(s0) + c0008760: ef95 bnez a5,c000879c <__JS_FreeValueRT+0xb4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5619 free_zero_refcount(rt); - c0008674: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5648 -} - c0008676: 7442 ld s0,48(sp) - c0008678: 70e2 ld ra,56(sp) - c000867a: 74a2 ld s1,40(sp) - c000867c: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5611 + c0008762: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5656 +} + c0008764: 7442 ld s0,48(sp) + c0008766: 70e2 ld ra,56(sp) + c0008768: 74a2 ld s1,40(sp) + c000876a: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5619 free_zero_refcount(rt); - c000867e: de7ff06f j c0008464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5625 + c000876c: de7ff06f j c0008552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5633 bf_delete(&bf->num); - c0008682: 00858513 addi a0,a1,8 - c0008686: e42e sd a1,8(sp) - c0008688: 822fe0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5626 + c0008770: 00858513 addi a0,a1,8 + c0008774: e42e sd a1,8(sp) + c0008776: 822fe0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5634 js_free_rt(rt, bf); - c000868c: 65a2 ld a1,8(sp) - c000868e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5648 -} - c0008690: 7442 ld s0,48(sp) - c0008692: 70e2 ld ra,56(sp) - c0008694: 74a2 ld s1,40(sp) - c0008696: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5626 + c000877a: 65a2 ld a1,8(sp) + c000877c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5656 +} + c000877e: 7442 ld s0,48(sp) + c0008780: 70e2 ld ra,56(sp) + c0008782: 74a2 ld s1,40(sp) + c0008784: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5634 js_free_rt(rt, bf); - c0008698: d0efe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5645 + c0008786: d0efe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5653 printf("__JS_FreeValue: unknown tag=%d\n", tag); - c000869c: 85b6 mv a1,a3 - c000869e: 00054517 auipc a0,0x54 - c00086a2: 4fa50513 addi a0,a0,1274 # c005cb98 - c00086a6: 2f74b0ef jal ra,c005419c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5646 + c000878a: 85b6 mv a1,a3 + c000878c: 00054517 auipc a0,0x54 + c0008790: 63c50513 addi a0,a0,1596 # c005cdc8 + c0008794: 3d94b0ef jal ra,c005436c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5654 abort(); - c00086aa: 1604d0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5648 + c0008798: 2424d0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5656 } - c00086ae: 70e2 ld ra,56(sp) - c00086b0: 7442 ld s0,48(sp) - c00086b2: 74a2 ld s1,40(sp) - c00086b4: 6121 addi sp,sp,64 - c00086b6: 8082 ret + c000879c: 70e2 ld ra,56(sp) + c000879e: 7442 ld s0,48(sp) + c00087a0: 74a2 ld s1,40(sp) + c00087a2: 6121 addi sp,sp,64 + c00087a4: 8082 ret -00000000c00086b8 : +00000000c00087a6 : JS_FreeValueRT(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:657 { - c00086b8: 1141 addi sp,sp,-16 - c00086ba: e02e sd a1,0(sp) - c00086bc: e432 sd a2,8(sp) + c00087a6: 1141 addi sp,sp,-16 + c00087a8: e02e sd a1,0(sp) + c00087aa: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:658 if (JS_VALUE_HAS_REF_COUNT(v)) { - c00086be: 0006079b sext.w a5,a2 - c00086c2: 5751 li a4,-12 - c00086c4: 00f77b63 bgeu a4,a5,c00086da + c00087ac: 0006079b sext.w a5,a2 + c00087b0: 5751 li a4,-12 + c00087b2: 00f77b63 bgeu a4,a5,c00087c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:660 if (--p->ref_count <= 0) { - c00086c8: 4198 lw a4,0(a1) - c00086ca: fff7069b addiw a3,a4,-1 - c00086ce: c194 sw a3,0(a1) - c00086d0: 00d04563 bgtz a3,c00086da + c00087b6: 4198 lw a4,0(a1) + c00087b8: fff7069b addiw a3,a4,-1 + c00087bc: c194 sw a3,0(a1) + c00087be: 00d04563 bgtz a3,c00087c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:664 } - c00086d4: 0141 addi sp,sp,16 + c00087c2: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:661 __JS_FreeValueRT(rt, v); - c00086d6: f25ff06f j c00085fa <__JS_FreeValueRT> + c00087c4: f25ff06f j c00086e8 <__JS_FreeValueRT> /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:664 } - c00086da: 0141 addi sp,sp,16 - c00086dc: 8082 ret + c00087c8: 0141 addi sp,sp,16 + c00087ca: 8082 ret -00000000c00086de : +00000000c00087cc : promise_reaction_data_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47833 { - c00086de: 1101 addi sp,sp,-32 - c00086e0: ec06 sd ra,24(sp) - c00086e2: e822 sd s0,16(sp) - c00086e4: e426 sd s1,8(sp) - c00086e6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47826 + c00087cc: 1101 addi sp,sp,-32 + c00087ce: ec06 sd ra,24(sp) + c00087d0: e822 sd s0,16(sp) + c00087d2: e426 sd s1,8(sp) + c00087d4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47834 JS_FreeValueRT(rt, rd->resolving_funcs[0]); - c00086e8: 6c10 ld a2,24(s0) - c00086ea: 698c ld a1,16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47825 + c00087d6: 6c10 ld a2,24(s0) + c00087d8: 698c ld a1,16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47833 { - c00086ec: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47826 + c00087da: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47834 JS_FreeValueRT(rt, rd->resolving_funcs[0]); - c00086ee: fcbff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47827 + c00087dc: fcbff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47835 JS_FreeValueRT(rt, rd->resolving_funcs[1]); - c00086f2: 700c ld a1,32(s0) - c00086f4: 7410 ld a2,40(s0) - c00086f6: 8526 mv a0,s1 - c00086f8: fc1ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47828 + c00087e0: 700c ld a1,32(s0) + c00087e2: 7410 ld a2,40(s0) + c00087e4: 8526 mv a0,s1 + c00087e6: fc1ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47836 JS_FreeValueRT(rt, rd->handler); - c00086fc: 780c ld a1,48(s0) - c00086fe: 7c10 ld a2,56(s0) - c0008700: 8526 mv a0,s1 - c0008702: fb7ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47829 + c00087ea: 780c ld a1,48(s0) + c00087ec: 7c10 ld a2,56(s0) + c00087ee: 8526 mv a0,s1 + c00087f0: fb7ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47837 js_free_rt(rt, rd); - c0008706: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47830 + c00087f4: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47838 } - c0008708: 6442 ld s0,16(sp) - c000870a: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47829 + c00087f6: 6442 ld s0,16(sp) + c00087f8: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47837 js_free_rt(rt, rd); - c000870c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47830 + c00087fa: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47838 } - c000870e: 64a2 ld s1,8(sp) - c0008710: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47829 + c00087fc: 64a2 ld s1,8(sp) + c00087fe: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47837 js_free_rt(rt, rd); - c0008712: c94fe06f j c0006ba6 + c0008800: c94fe06f j c0006c94 -00000000c0008716 : +00000000c0008804 : js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4516 { - c0008716: 7139 addi sp,sp,-64 - c0008718: f822 sd s0,48(sp) - c000871a: fc06 sd ra,56(sp) - c000871c: f426 sd s1,40(sp) - c000871e: f04a sd s2,32(sp) - c0008720: ec4e sd s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4509 + c0008804: 7139 addi sp,sp,-64 + c0008806: f822 sd s0,48(sp) + c0008808: fc06 sd ra,56(sp) + c000880a: f426 sd s1,40(sp) + c000880c: f04a sd s2,32(sp) + c000880e: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4517 if (unlikely(--sh->header.ref_count <= 0)) { - c0008722: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4508 + c0008810: 419c lw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4516 { - c0008724: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4509 + c0008812: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4517 if (unlikely(--sh->header.ref_count <= 0)) { - c0008726: fff7871b addiw a4,a5,-1 - c000872a: c198 sw a4,0(a1) - c000872c: 06e04a63 bgtz a4,c00087a0 + c0008814: fff7871b addiw a4,a5,-1 + c0008818: c198 sw a4,0(a1) + c000881a: 06e04a63 bgtz a4,c000888e js_free_shape0(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4500 assert(sh->header.ref_count == 0); - c0008730: cb19 beqz a4,c0008746 - c0008732: 6585 lui a1,0x1 - c0008734: 4601 li a2,0 - c0008736: 18c58593 addi a1,a1,396 # 118c <__clzdi2-0xbfffee74> - c000873a: 00054517 auipc a0,0x54 - c000873e: 33e50513 addi a0,a0,830 # c005ca78 - c0008742: 2d64b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4493 + c000881e: cb19 beqz a4,c0008834 + c0008820: 6585 lui a1,0x1 + c0008822: 4601 li a2,0 + c0008824: 19458593 addi a1,a1,404 # 1194 <__clzdi2-0xbfffee6c> + c0008828: 00054517 auipc a0,0x54 + c000882c: 42050513 addi a0,a0,1056 # c005cc48 + c0008830: 3b84b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4501 if (sh->is_hashed) - c0008746: 0185c783 lbu a5,24(a1) - c000874a: 84aa mv s1,a0 - c000874c: c399 beqz a5,c0008752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4494 + c0008834: 0185c783 lbu a5,24(a1) + c0008838: 84aa mv s1,a0 + c000883a: c399 beqz a5,c0008840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4502 js_shape_hash_unlink(rt, sh); - c000874e: aebfb0ef jal ra,c0004238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4495 + c000883c: 9fdfb0ef jal ra,c0004238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4503 if (sh->proto != NULL) { - c0008752: 7c0c ld a1,56(s0) - c0008754: c589 beqz a1,c000875e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4496 + c0008840: 7c0c ld a1,56(s0) + c0008842: c589 beqz a1,c000884c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4504 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_OBJECT, sh->proto)); - c0008756: 567d li a2,-1 - c0008758: 8526 mv a0,s1 - c000875a: f5fff0ef jal ra,c00086b8 + c0008844: 567d li a2,-1 + c0008846: 8526 mv a0,s1 + c0008848: f5fff0ef jal ra,c00087a6 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000875e: 04040993 addi s3,s0,64 + c000884c: 04040993 addi s3,s0,64 js_free_shape0(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4507 for(i = 0; i < sh->prop_count; i++) { - c0008762: 4901 li s2,0 - c0008764: 541c lw a5,40(s0) - c0008766: 02f96563 bltu s2,a5,c0008790 + c0008850: 4901 li s2,0 + c0008852: 541c lw a5,40(s0) + c0008854: 02f96563 bltu s2,a5,c000887e remove_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5675 list_del(&h->link); - c000876a: 00840513 addi a0,s0,8 - c000876e: 8edfb0ef jal ra,c000405a + c0008858: 00840513 addi a0,s0,8 + c000885c: ffefb0ef jal ra,c000405a get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c0008772: 02046583 lwu a1,32(s0) + c0008860: 02046583 lwu a1,32(s0) js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4520 } - c0008776: 70e2 ld ra,56(sp) - c0008778: 7902 ld s2,32(sp) + c0008864: 70e2 ld ra,56(sp) + c0008866: 7902 ld s2,32(sp) get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c000877a: 058a slli a1,a1,0x2 - c000877c: 40b405b3 sub a1,s0,a1 + c0008868: 058a slli a1,a1,0x2 + c000886a: 40b405b3 sub a1,s0,a1 js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4520 } - c0008780: 7442 ld s0,48(sp) - c0008782: 69e2 ld s3,24(sp) + c000886e: 7442 ld s0,48(sp) + c0008870: 69e2 ld s3,24(sp) js_free_shape0(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 js_free_rt(rt, get_alloc_from_shape(sh)); - c0008784: 8526 mv a0,s1 + c0008872: 8526 mv a0,s1 js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4520 } - c0008786: 74a2 ld s1,40(sp) + c0008874: 74a2 ld s1,40(sp) js_free_shape0(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 js_free_rt(rt, get_alloc_from_shape(sh)); - c0008788: 15f1 addi a1,a1,-4 + c0008876: 15f1 addi a1,a1,-4 js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4520 } - c000878a: 6121 addi sp,sp,64 + c0008878: 6121 addi sp,sp,64 js_free_shape0(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 js_free_rt(rt, get_alloc_from_shape(sh)); - c000878c: c1afe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4500 + c000887a: c1afe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4508 JS_FreeAtomRT(rt, pr->atom); - c0008790: 0049a583 lw a1,4(s3) - c0008794: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4501 + c000887e: 0049a583 lw a1,4(s3) + c0008882: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4509 pr++; - c0008796: 09a1 addi s3,s3,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4500 + c0008884: 09a1 addi s3,s3,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4508 JS_FreeAtomRT(rt, pr->atom); - c0008798: a3aff0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4499 + c0008886: a3aff0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4507 for(i = 0; i < sh->prop_count; i++) { - c000879c: 2905 addiw s2,s2,1 - c000879e: b7d9 j c0008764 + c000888a: 2905 addiw s2,s2,1 + c000888c: b7d9 j c0008852 js_free_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4520 } - c00087a0: 70e2 ld ra,56(sp) - c00087a2: 7442 ld s0,48(sp) - c00087a4: 74a2 ld s1,40(sp) - c00087a6: 7902 ld s2,32(sp) - c00087a8: 69e2 ld s3,24(sp) - c00087aa: 6121 addi sp,sp,64 - c00087ac: 8082 ret + c000888e: 70e2 ld ra,56(sp) + c0008890: 7442 ld s0,48(sp) + c0008892: 74a2 ld s1,40(sp) + c0008894: 7902 ld s2,32(sp) + c0008896: 69e2 ld s3,24(sp) + c0008898: 6121 addi sp,sp,64 + c000889a: 8082 ret -00000000c00087ae : +00000000c000889c : free_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5321 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5329 if (var_ref) { - c00087ae: c9bd beqz a1,c0008824 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5320 -{ - c00087b0: 1101 addi sp,sp,-32 - c00087b2: e822 sd s0,16(sp) - c00087b4: ec06 sd ra,24(sp) - c00087b6: e426 sd s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5322 + c000889c: c9bd beqz a1,c0008912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5328 +{ + c000889e: 1101 addi sp,sp,-32 + c00088a0: e822 sd s0,16(sp) + c00088a2: ec06 sd ra,24(sp) + c00088a4: e426 sd s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5330 assert(var_ref->header.ref_count > 0); - c00087b8: 419c lw a5,0(a1) - c00087ba: 842e mv s0,a1 - c00087bc: 00f04c63 bgtz a5,c00087d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5322 (discriminator 1) - c00087c0: 6585 lui a1,0x1 - c00087c2: 4601 li a2,0 - c00087c4: 4ca58593 addi a1,a1,1226 # 14ca <__clzdi2-0xbfffeb36> - c00087c8: 00054517 auipc a0,0x54 - c00087cc: 2b050513 addi a0,a0,688 # c005ca78 - c00087d0: 2484b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5323 (discriminator 2) + c00088a6: 419c lw a5,0(a1) + c00088a8: 842e mv s0,a1 + c00088aa: 00f04c63 bgtz a5,c00088c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5330 (discriminator 1) + c00088ae: 6585 lui a1,0x1 + c00088b0: 4601 li a2,0 + c00088b2: 4d258593 addi a1,a1,1234 # 14d2 <__clzdi2-0xbfffeb2e> + c00088b6: 00054517 auipc a0,0x54 + c00088ba: 39250513 addi a0,a0,914 # c005cc48 + c00088be: 32a4b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5331 (discriminator 2) if (--var_ref->header.ref_count == 0) { - c00087d4: fff7871b addiw a4,a5,-1 - c00087d8: c198 sw a4,0(a1) - c00087da: e321 bnez a4,c000881a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5324 + c00088c2: fff7871b addiw a4,a5,-1 + c00088c6: c198 sw a4,0(a1) + c00088c8: e321 bnez a4,c0008908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5332 if (var_ref->is_detached) { - c00087dc: 0055c783 lbu a5,5(a1) - c00087e0: 84aa mv s1,a0 - c00087e2: 8b85 andi a5,a5,1 - c00087e4: c38d beqz a5,c0008806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5325 + c00088ca: 0055c783 lbu a5,5(a1) + c00088ce: 84aa mv s1,a0 + c00088d0: 8b85 andi a5,a5,1 + c00088d2: c38d beqz a5,c00088f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5333 JS_FreeValueRT(rt, var_ref->value); - c00087e6: 718c ld a1,32(a1) - c00087e8: 7410 ld a2,40(s0) - c00087ea: ecfff0ef jal ra,c00086b8 + c00088d4: 718c ld a1,32(a1) + c00088d6: 7410 ld a2,40(s0) + c00088d8: ecfff0ef jal ra,c00087a6 remove_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5675 list_del(&h->link); - c00087ee: 00840513 addi a0,s0,8 - c00087f2: 869fb0ef jal ra,c000405a + c00088dc: 00840513 addi a0,s0,8 + c00088e0: f7afb0ef jal ra,c000405a free_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5332 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5340 js_free_rt(rt, var_ref); - c00087f6: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5335 + c00088e4: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 } - c00087f8: 6442 ld s0,16(sp) - c00087fa: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5332 + c00088e6: 6442 ld s0,16(sp) + c00088e8: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5340 js_free_rt(rt, var_ref); - c00087fc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5335 + c00088ea: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 } - c00087fe: 64a2 ld s1,8(sp) - c0008800: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5332 + c00088ec: 64a2 ld s1,8(sp) + c00088ee: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5340 js_free_rt(rt, var_ref); - c0008802: ba4fe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5327 + c00088f0: ba4fe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5335 list_del(&var_ref->var_ref_link); /* still on the stack */ - c0008806: 02058513 addi a0,a1,32 - c000880a: 851fb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5328 + c00088f4: 02058513 addi a0,a1,32 + c00088f8: f62fb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5336 if (var_ref->async_func) - c000880e: 780c ld a1,48(s0) - c0008810: ddf9 beqz a1,c00087ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5329 + c00088fc: 780c ld a1,48(s0) + c00088fe: ddf9 beqz a1,c00088dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5337 async_func_free(rt, var_ref->async_func); - c0008812: 8526 mv a0,s1 - c0008814: c9fff0ef jal ra,c00084b2 - c0008818: bfd9 j c00087ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5335 -} - c000881a: 60e2 ld ra,24(sp) - c000881c: 6442 ld s0,16(sp) - c000881e: 64a2 ld s1,8(sp) - c0008820: 6105 addi sp,sp,32 - c0008822: 8082 ret - c0008824: 8082 ret - -00000000c0008826 : + c0008900: 8526 mv a0,s1 + c0008902: c9fff0ef jal ra,c00085a0 + c0008906: bfd9 j c00088dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 +} + c0008908: 60e2 ld ra,24(sp) + c000890a: 6442 ld s0,16(sp) + c000890c: 64a2 ld s1,8(sp) + c000890e: 6105 addi sp,sp,32 + c0008910: 8082 ret + c0008912: 8082 ret + +00000000c0008914 : js_free_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27268 -{ - c0008826: 7179 addi sp,sp,-48 - c0008828: f022 sd s0,32(sp) - c000882a: ec26 sd s1,24(sp) - c000882c: e84a sd s2,16(sp) - c000882e: f406 sd ra,40(sp) - c0008830: e44e sd s3,8(sp) - c0008832: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27271 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27276 +{ + c0008914: 7179 addi sp,sp,-48 + c0008916: f022 sd s0,32(sp) + c0008918: ec26 sd s1,24(sp) + c000891a: e84a sd s2,16(sp) + c000891c: f406 sd ra,40(sp) + c000891e: e44e sd s3,8(sp) + c0008920: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 JS_FreeAtom(ctx, m->module_name); - c0008834: 41cc lw a1,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27268 + c0008922: 41cc lw a1,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27276 { - c0008836: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27273 + c0008924: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 for(i = 0; i < m->req_module_entries_count; i++) { - c0008838: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27271 + c0008926: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 JS_FreeAtom(ctx, m->module_name); - c000883a: cd3fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27273 (discriminator 1) + c0008928: cd3fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 (discriminator 1) for(i = 0; i < m->req_module_entries_count; i++) { - c000883e: 501c lw a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27274 (discriminator 1) + c000892c: 501c lw a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27282 (discriminator 1) JSReqModuleEntry *rme = &m->req_module_entries[i]; - c0008840: 6c0c ld a1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27273 (discriminator 1) + c000892e: 6c0c ld a1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 (discriminator 1) for(i = 0; i < m->req_module_entries_count; i++) { - c0008842: 0af94263 blt s2,a5,c00088e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27277 + c0008930: 0af94263 blt s2,a5,c00089d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27285 js_free(ctx, m->req_module_entries); - c0008846: 8526 mv a0,s1 - c0008848: df2fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 + c0008934: 8526 mv a0,s1 + c0008936: df2fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27287 for(i = 0; i < m->export_entries_count; i++) { - c000884c: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 (discriminator 1) - c000884e: 581c lw a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27280 (discriminator 1) + c000893a: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27287 (discriminator 1) + c000893c: 581c lw a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27288 (discriminator 1) JSExportEntry *me = &m->export_entries[i]; - c0008850: 740c ld a1,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 (discriminator 1) + c000893e: 740c ld a1,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27287 (discriminator 1) for(i = 0; i < m->export_entries_count; i++) { - c0008852: 0af9c363 blt s3,a5,c00088f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27286 + c0008940: 0af9c363 blt s3,a5,c00089e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27294 js_free(ctx, m->export_entries); - c0008856: 8526 mv a0,s1 - c0008858: de2fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27288 + c0008944: 8526 mv a0,s1 + c0008946: de2fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27296 js_free(ctx, m->star_export_entries); - c000885c: 7c0c ld a1,56(s0) - c000885e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 + c000894a: 7c0c ld a1,56(s0) + c000894c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 for(i = 0; i < m->import_entries_count; i++) { - c0008860: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27288 + c000894e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27296 js_free(ctx, m->star_export_entries); - c0008862: dd8fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27292 + c0008950: dd8fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27300 JS_FreeAtom(ctx, mi->import_name); - c0008866: 49b1 li s3,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 (discriminator 1) + c0008954: 49b1 li s3,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 (discriminator 1) for(i = 0; i < m->import_entries_count; i++) { - c0008868: 483c lw a5,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27291 (discriminator 1) + c0008956: 483c lw a5,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27299 (discriminator 1) JSImportEntry *mi = &m->import_entries[i]; - c000886a: 642c ld a1,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 (discriminator 1) + c0008958: 642c ld a1,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 (discriminator 1) for(i = 0; i < m->import_entries_count; i++) { - c000886c: 0af94d63 blt s2,a5,c0008926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27294 + c000895a: 0af94d63 blt s2,a5,c0008a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27302 js_free(ctx, m->import_entries); - c0008870: 8526 mv a0,s1 - c0008872: dc8fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27295 + c000895e: 8526 mv a0,s1 + c0008960: dc8fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27303 js_free(ctx, m->async_parent_modules); - c0008876: 6c4c ld a1,152(s0) - c0008878: 8526 mv a0,s1 - c000887a: dc0fe0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27297 + c0008964: 6c4c ld a1,152(s0) + c0008966: 8526 mv a0,s1 + c0008968: dc0fe0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27305 JS_FreeValue(ctx, m->module_ns); - c000887e: 6c2c ld a1,88(s0) - c0008880: 7030 ld a2,96(s0) - c0008882: 8526 mv a0,s1 - c0008884: ab4ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 + c000896c: 6c2c ld a1,88(s0) + c000896e: 7030 ld a2,96(s0) + c0008970: 8526 mv a0,s1 + c0008972: ab4ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27306 JS_FreeValue(ctx, m->func_obj); - c0008888: 742c ld a1,104(s0) - c000888a: 7830 ld a2,112(s0) - c000888c: 8526 mv a0,s1 - c000888e: aaaff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27299 + c0008976: 742c ld a1,104(s0) + c0008978: 7830 ld a2,112(s0) + c000897a: 8526 mv a0,s1 + c000897c: aaaff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27307 JS_FreeValue(ctx, m->eval_exception); - c0008892: 7c6c ld a1,248(s0) - c0008894: 10043603 ld a2,256(s0) - c0008898: 8526 mv a0,s1 - c000889a: a9eff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27300 + c0008980: 7c6c ld a1,248(s0) + c0008982: 10043603 ld a2,256(s0) + c0008986: 8526 mv a0,s1 + c0008988: a9eff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27308 JS_FreeValue(ctx, m->meta_obj); - c000889e: 10843583 ld a1,264(s0) - c00088a2: 11043603 ld a2,272(s0) - c00088a6: 8526 mv a0,s1 - c00088a8: a90ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27301 + c000898c: 10843583 ld a1,264(s0) + c0008990: 11043603 ld a2,272(s0) + c0008994: 8526 mv a0,s1 + c0008996: a90ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27309 JS_FreeValue(ctx, m->promise); - c00088ac: 606c ld a1,192(s0) - c00088ae: 6470 ld a2,200(s0) - c00088b0: 8526 mv a0,s1 - c00088b2: a86ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27302 + c000899a: 606c ld a1,192(s0) + c000899c: 6470 ld a2,200(s0) + c000899e: 8526 mv a0,s1 + c00089a0: a86ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27310 JS_FreeValue(ctx, m->resolving_funcs[0]); - c00088b6: 686c ld a1,208(s0) - c00088b8: 6c70 ld a2,216(s0) - c00088ba: 8526 mv a0,s1 - c00088bc: a7cff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27303 + c00089a4: 686c ld a1,208(s0) + c00089a6: 6c70 ld a2,216(s0) + c00089a8: 8526 mv a0,s1 + c00089aa: a7cff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27311 JS_FreeValue(ctx, m->resolving_funcs[1]); - c00088c0: 706c ld a1,224(s0) - c00088c2: 7470 ld a2,232(s0) - c00088c4: 8526 mv a0,s1 - c00088c6: a72ff0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27304 + c00089ae: 706c ld a1,224(s0) + c00089b0: 7470 ld a2,232(s0) + c00089b2: 8526 mv a0,s1 + c00089b4: a72ff0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27312 list_del(&m->link); - c00088ca: 00840513 addi a0,s0,8 - c00088ce: f8cfb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27305 + c00089b8: 00840513 addi a0,s0,8 + c00089bc: e9efb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27313 js_free(ctx, m); - c00088d2: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27306 -} - c00088d4: 7402 ld s0,32(sp) - c00088d6: 70a2 ld ra,40(sp) - c00088d8: 6942 ld s2,16(sp) - c00088da: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27305 + c00089c0: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27314 +} + c00089c2: 7402 ld s0,32(sp) + c00089c4: 70a2 ld ra,40(sp) + c00089c6: 6942 ld s2,16(sp) + c00089c8: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27313 js_free(ctx, m); - c00088dc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27306 + c00089ca: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27314 } - c00088de: 64e2 ld s1,24(sp) - c00088e0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27305 + c00089cc: 64e2 ld s1,24(sp) + c00089ce: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27313 js_free(ctx, m); - c00088e2: d58fe06f j c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27275 (discriminator 3) + c00089d0: d58fe06f j c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27283 (discriminator 3) JS_FreeAtom(ctx, rme->module_name); - c00088e6: 00491793 slli a5,s2,0x4 - c00088ea: 95be add a1,a1,a5 - c00088ec: 418c lw a1,0(a1) - c00088ee: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27273 (discriminator 3) + c00089d4: 00491793 slli a5,s2,0x4 + c00089d8: 95be add a1,a1,a5 + c00089da: 418c lw a1,0(a1) + c00089dc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 (discriminator 3) for(i = 0; i < m->req_module_entries_count; i++) { - c00088f0: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27275 (discriminator 3) + c00089de: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27283 (discriminator 3) JS_FreeAtom(ctx, rme->module_name); - c00088f2: c1bfe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27273 (discriminator 3) + c00089e0: c1bfe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 (discriminator 3) for(i = 0; i < m->req_module_entries_count; i++) { - c00088f6: b7a1 j c000883e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27280 + c00089e4: b7a1 j c000892c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27288 JSExportEntry *me = &m->export_entries[i]; - c00088f8: 00599913 slli s2,s3,0x5 - c00088fc: 992e add s2,s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27281 + c00089e6: 00599913 slli s2,s3,0x5 + c00089ea: 992e add s2,s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27289 if (me->export_type == JS_EXPORT_TYPE_LOCAL) - c00088fe: 01092783 lw a5,16(s2) - c0008902: e791 bnez a5,c000890e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27282 + c00089ec: 01092783 lw a5,16(s2) + c00089f0: e791 bnez a5,c00089fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 free_var_ref(ctx->rt, me->u.local.var_ref); - c0008904: 00893583 ld a1,8(s2) - c0008908: 6c88 ld a0,24(s1) - c000890a: ea5ff0ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27283 (discriminator 2) + c00089f2: 00893583 ld a1,8(s2) + c00089f6: 6c88 ld a0,24(s1) + c00089f8: ea5ff0ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27291 (discriminator 2) JS_FreeAtom(ctx, me->export_name); - c000890e: 01892583 lw a1,24(s2) - c0008912: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 (discriminator 2) + c00089fc: 01892583 lw a1,24(s2) + c0008a00: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27287 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c0008914: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27283 (discriminator 2) + c0008a02: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27291 (discriminator 2) JS_FreeAtom(ctx, me->export_name); - c0008916: bf7fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27284 (discriminator 2) + c0008a04: bf7fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27292 (discriminator 2) JS_FreeAtom(ctx, me->local_name); - c000891a: 01492583 lw a1,20(s2) - c000891e: 8526 mv a0,s1 - c0008920: bedfe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27279 (discriminator 2) + c0008a08: 01492583 lw a1,20(s2) + c0008a0c: 8526 mv a0,s1 + c0008a0e: bedfe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27287 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c0008924: b72d j c000884e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27292 (discriminator 3) + c0008a12: b72d j c000893c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27300 (discriminator 3) JS_FreeAtom(ctx, mi->import_name); - c0008926: 033907b3 mul a5,s2,s3 - c000892a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 (discriminator 3) + c0008a14: 033907b3 mul a5,s2,s3 + c0008a18: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 (discriminator 3) for(i = 0; i < m->import_entries_count; i++) { - c000892c: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27292 (discriminator 3) + c0008a1a: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27300 (discriminator 3) JS_FreeAtom(ctx, mi->import_name); - c000892e: 95be add a1,a1,a5 - c0008930: 41cc lw a1,4(a1) - c0008932: bdbfe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27290 (discriminator 3) + c0008a1c: 95be add a1,a1,a5 + c0008a1e: 41cc lw a1,4(a1) + c0008a20: bdbfe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27298 (discriminator 3) for(i = 0; i < m->import_entries_count; i++) { - c0008936: bf0d j c0008868 + c0008a24: bf0d j c0008956 -00000000c0008938 : +00000000c0008a26 : js_free_modules(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2240 -{ - c0008938: 7179 addi sp,sp,-48 - c000893a: f022 sd s0,32(sp) - c000893c: e84a sd s2,16(sp) - c000893e: e44e sd s3,8(sp) - c0008940: f406 sd ra,40(sp) - c0008942: ec26 sd s1,24(sp) - c0008944: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2248 +{ + c0008a26: 7179 addi sp,sp,-48 + c0008a28: f022 sd s0,32(sp) + c0008a2a: e84a sd s2,16(sp) + c0008a2c: e44e sd s3,8(sp) + c0008a2e: f406 sd ra,40(sp) + c0008a30: ec26 sd s1,24(sp) + c0008a32: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2250 list_for_each_safe(el, el1, &ctx->loaded_modules) { - c0008946: 1a853583 ld a1,424(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2240 + c0008a34: 1a853583 ld a1,424(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2248 { - c000894a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2242 + c0008a38: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2250 list_for_each_safe(el, el1, &ctx->loaded_modules) { - c000894c: 1a050993 addi s3,a0,416 - c0008950: 6584 ld s1,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2242 (discriminator 1) - c0008952: 01359963 bne a1,s3,c0008964 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2249 -} - c0008956: 70a2 ld ra,40(sp) - c0008958: 7402 ld s0,32(sp) - c000895a: 64e2 ld s1,24(sp) - c000895c: 6942 ld s2,16(sp) - c000895e: 69a2 ld s3,8(sp) - c0008960: 6145 addi sp,sp,48 - c0008962: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2244 + c0008a3a: 1a050993 addi s3,a0,416 + c0008a3e: 6584 ld s1,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2250 (discriminator 1) + c0008a40: 01359963 bne a1,s3,c0008a52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2257 +} + c0008a44: 70a2 ld ra,40(sp) + c0008a46: 7402 ld s0,32(sp) + c0008a48: 64e2 ld s1,24(sp) + c0008a4a: 6942 ld s2,16(sp) + c0008a4c: 69a2 ld s3,8(sp) + c0008a4e: 6145 addi sp,sp,48 + c0008a50: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2252 if (flag == JS_FREE_MODULE_ALL || - c0008964: 00090563 beqz s2,c000896e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2245 + c0008a52: 00090563 beqz s2,c0008a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 (flag == JS_FREE_MODULE_NOT_RESOLVED && !m->resolved)) { - c0008968: 0795c703 lbu a4,121(a1) - c000896c: e709 bnez a4,c0008976 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2246 + c0008a56: 0795c703 lbu a4,121(a1) + c0008a5a: e709 bnez a4,c0008a64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2254 js_free_module_def(ctx, m); - c000896e: 15e1 addi a1,a1,-8 - c0008970: 8522 mv a0,s0 - c0008972: eb5ff0ef jal ra,c0008826 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2242 (discriminator 2) + c0008a5c: 15e1 addi a1,a1,-8 + c0008a5e: 8522 mv a0,s0 + c0008a60: eb5ff0ef jal ra,c0008914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2250 (discriminator 2) list_for_each_safe(el, el1, &ctx->loaded_modules) { - c0008976: 85a6 mv a1,s1 - c0008978: 6484 ld s1,8(s1) - c000897a: bfe1 j c0008952 + c0008a64: 85a6 mv a1,s1 + c0008a66: 6484 ld s1,8(s1) + c0008a68: bfe1 j c0008a40 -00000000c000897c : +00000000c0008a6a : async_func_free_frame(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18887 -{ - c000897c: 7179 addi sp,sp,-48 - c000897e: f022 sd s0,32(sp) - c0008980: ec26 sd s1,24(sp) - c0008982: e44e sd s3,8(sp) - c0008984: f406 sd ra,40(sp) - c0008986: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18891 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18895 +{ + c0008a6a: 7179 addi sp,sp,-48 + c0008a6c: f022 sd s0,32(sp) + c0008a6e: ec26 sd s1,24(sp) + c0008a70: e44e sd s3,8(sp) + c0008a72: f406 sd ra,40(sp) + c0008a74: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18899 if (sf->arg_buf) { - c0008988: 0705b903 ld s2,112(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18887 + c0008a76: 0705b903 ld s2,112(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18895 { - c000898c: 84aa mv s1,a0 - c000898e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18888 + c0008a7a: 84aa mv s1,a0 + c0008a7c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18896 JSStackFrame *sf = &s->frame; - c0008990: 05858993 addi s3,a1,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18891 + c0008a7e: 05858993 addi s3,a1,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18899 if (sf->arg_buf) { - c0008994: 02090f63 beqz s2,c00089d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18893 + c0008a82: 02090f63 beqz s2,c0008ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18901 assert(sf->cur_sp != NULL); - c0008998: 71dc ld a5,160(a1) - c000899a: e39d bnez a5,c00089c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18893 (discriminator 1) - c000899c: 6595 lui a1,0x5 - c000899e: 4601 li a2,0 - c00089a0: 9cd58593 addi a1,a1,-1587 # 49cd <__clzdi2-0xbfffb633> - c00089a4: 00054517 auipc a0,0x54 - c00089a8: 0d450513 addi a0,a0,212 # c005ca78 - c00089ac: 06c4b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18895 (discriminator 3) + c0008a86: 71dc ld a5,160(a1) + c0008a88: e39d bnez a5,c0008aae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18901 (discriminator 1) + c0008a8a: 6595 lui a1,0x5 + c0008a8c: 4601 li a2,0 + c0008a8e: 9d558593 addi a1,a1,-1579 # 49d5 <__clzdi2-0xbfffb62b> + c0008a92: 00054517 auipc a0,0x54 + c0008a96: 1b650513 addi a0,a0,438 # c005cc48 + c0008a9a: 14e4b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18903 (discriminator 3) JS_FreeValueRT(rt, *sp); - c00089b0: 00093583 ld a1,0(s2) - c00089b4: 00893603 ld a2,8(s2) - c00089b8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18894 (discriminator 3) + c0008a9e: 00093583 ld a1,0(s2) + c0008aa2: 00893603 ld a2,8(s2) + c0008aa6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18902 (discriminator 3) for(sp = sf->arg_buf; sp < sf->cur_sp; sp++) { - c00089ba: 0941 addi s2,s2,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18895 (discriminator 3) + c0008aa8: 0941 addi s2,s2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18903 (discriminator 3) JS_FreeValueRT(rt, *sp); - c00089bc: cfdff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18894 (discriminator 1) + c0008aaa: cfdff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18902 (discriminator 1) for(sp = sf->arg_buf; sp < sf->cur_sp; sp++) { - c00089c0: 705c ld a5,160(s0) - c00089c2: fef967e3 bltu s2,a5,c00089b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18897 + c0008aae: 705c ld a5,160(s0) + c0008ab0: fef967e3 bltu s2,a5,c0008a9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18905 js_free_rt(rt, sf->arg_buf); - c00089c6: 782c ld a1,112(s0) - c00089c8: 8526 mv a0,s1 - c00089ca: 9dcfe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18898 + c0008ab4: 782c ld a1,112(s0) + c0008ab6: 8526 mv a0,s1 + c0008ab8: 9dcfe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18906 sf->arg_buf = NULL; - c00089ce: 06043823 sd zero,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18900 + c0008abc: 06043823 sd zero,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18908 JS_FreeValueRT(rt, sf->cur_func); - c00089d2: 0089b583 ld a1,8(s3) - c00089d6: 0109b603 ld a2,16(s3) - c00089da: 8526 mv a0,s1 - c00089dc: cddff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18901 + c0008ac0: 0089b583 ld a1,8(s3) + c0008ac4: 0109b603 ld a2,16(s3) + c0008ac8: 8526 mv a0,s1 + c0008aca: cddff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18909 JS_FreeValueRT(rt, s->this_val); - c00089e0: 6c0c ld a1,24(s0) - c00089e2: 7010 ld a2,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18902 -} - c00089e4: 7402 ld s0,32(sp) - c00089e6: 70a2 ld ra,40(sp) - c00089e8: 6942 ld s2,16(sp) - c00089ea: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18901 + c0008ace: 6c0c ld a1,24(s0) + c0008ad0: 7010 ld a2,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18910 +} + c0008ad2: 7402 ld s0,32(sp) + c0008ad4: 70a2 ld ra,40(sp) + c0008ad6: 6942 ld s2,16(sp) + c0008ad8: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18909 JS_FreeValueRT(rt, s->this_val); - c00089ec: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18902 + c0008ada: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18910 } - c00089ee: 64e2 ld s1,24(sp) - c00089f0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18901 + c0008adc: 64e2 ld s1,24(sp) + c0008ade: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18909 JS_FreeValueRT(rt, s->this_val); - c00089f2: cc7ff06f j c00086b8 + c0008ae0: cc7ff06f j c00087a6 -00000000c00089f6 : +00000000c0008ae4 : js_regexp_string_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44285 { - c00089f6: 7179 addi sp,sp,-48 - c00089f8: f406 sd ra,40(sp) - c00089fa: f022 sd s0,32(sp) - c00089fc: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44279 + c0008ae4: 7179 addi sp,sp,-48 + c0008ae6: f406 sd ra,40(sp) + c0008ae8: f022 sd s0,32(sp) + c0008aea: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44287 JSRegExpStringIteratorData *it = p->u.regexp_string_iterator_data; - c00089fe: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44277 + c0008aec: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44285 { - c0008a00: e02e sd a1,0(sp) - c0008a02: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44280 + c0008aee: e02e sd a1,0(sp) + c0008af0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44288 if (it) { - c0008a04: c01d beqz s0,c0008a2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44281 + c0008af2: c01d beqz s0,c0008b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44289 JS_FreeValueRT(rt, it->iterating_regexp); - c0008a06: 600c ld a1,0(s0) - c0008a08: 6410 ld a2,8(s0) - c0008a0a: 84aa mv s1,a0 - c0008a0c: cadff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44282 + c0008af4: 600c ld a1,0(s0) + c0008af6: 6410 ld a2,8(s0) + c0008af8: 84aa mv s1,a0 + c0008afa: cadff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44290 JS_FreeValueRT(rt, it->iterated_string); - c0008a10: 680c ld a1,16(s0) - c0008a12: 6c10 ld a2,24(s0) - c0008a14: 8526 mv a0,s1 - c0008a16: ca3ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44283 + c0008afe: 680c ld a1,16(s0) + c0008b00: 6c10 ld a2,24(s0) + c0008b02: 8526 mv a0,s1 + c0008b04: ca3ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44291 js_free_rt(rt, it); - c0008a1a: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44285 + c0008b08: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44293 } - c0008a1c: 7402 ld s0,32(sp) - c0008a1e: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44283 + c0008b0a: 7402 ld s0,32(sp) + c0008b0c: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44291 js_free_rt(rt, it); - c0008a20: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44285 + c0008b0e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44293 } - c0008a22: 64e2 ld s1,24(sp) - c0008a24: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44283 + c0008b10: 64e2 ld s1,24(sp) + c0008b12: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44291 js_free_rt(rt, it); - c0008a26: 980fe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44285 + c0008b14: 980fe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44293 } - c0008a2a: 70a2 ld ra,40(sp) - c0008a2c: 7402 ld s0,32(sp) - c0008a2e: 64e2 ld s1,24(sp) - c0008a30: 6145 addi sp,sp,48 - c0008a32: 8082 ret + c0008b18: 70a2 ld ra,40(sp) + c0008b1a: 7402 ld s0,32(sp) + c0008b1c: 64e2 ld s1,24(sp) + c0008b1e: 6145 addi sp,sp,48 + c0008b20: 8082 ret -00000000c0008a34 : +00000000c0008b22 : js_array_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40680 { - c0008a34: 7179 addi sp,sp,-48 - c0008a36: f406 sd ra,40(sp) - c0008a38: f022 sd s0,32(sp) - c0008a3a: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40674 + c0008b22: 7179 addi sp,sp,-48 + c0008b24: f406 sd ra,40(sp) + c0008b26: f022 sd s0,32(sp) + c0008b28: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40682 JSArrayIteratorData *it = p->u.array_iterator_data; - c0008a3c: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40672 + c0008b2a: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40680 { - c0008a3e: e02e sd a1,0(sp) - c0008a40: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40675 + c0008b2c: e02e sd a1,0(sp) + c0008b2e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40683 if (it) { - c0008a42: cc11 beqz s0,c0008a5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40676 + c0008b30: cc11 beqz s0,c0008b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40684 JS_FreeValueRT(rt, it->obj); - c0008a44: 600c ld a1,0(s0) - c0008a46: 6410 ld a2,8(s0) - c0008a48: 84aa mv s1,a0 - c0008a4a: c6fff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40677 + c0008b32: 600c ld a1,0(s0) + c0008b34: 6410 ld a2,8(s0) + c0008b36: 84aa mv s1,a0 + c0008b38: c6fff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40685 js_free_rt(rt, it); - c0008a4e: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40679 + c0008b3c: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40687 } - c0008a50: 7402 ld s0,32(sp) - c0008a52: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40677 + c0008b3e: 7402 ld s0,32(sp) + c0008b40: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40685 js_free_rt(rt, it); - c0008a54: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40679 + c0008b42: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40687 } - c0008a56: 64e2 ld s1,24(sp) - c0008a58: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40677 + c0008b44: 64e2 ld s1,24(sp) + c0008b46: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40685 js_free_rt(rt, it); - c0008a5a: 94cfe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40679 + c0008b48: 94cfe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40687 } - c0008a5e: 70a2 ld ra,40(sp) - c0008a60: 7402 ld s0,32(sp) - c0008a62: 64e2 ld s1,24(sp) - c0008a64: 6145 addi sp,sp,48 - c0008a66: 8082 ret + c0008b4c: 70a2 ld ra,40(sp) + c0008b4e: 7402 ld s0,32(sp) + c0008b50: 64e2 ld s1,24(sp) + c0008b52: 6145 addi sp,sp,48 + c0008b54: 8082 ret -00000000c0008a68 : +00000000c0008b56 : js_map_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47488 { - c0008a68: 7139 addi sp,sp,-64 - c0008a6a: fc06 sd ra,56(sp) - c0008a6c: f822 sd s0,48(sp) - c0008a6e: f426 sd s1,40(sp) - c0008a70: f04a sd s2,32(sp) - c0008a72: ec4e sd s3,24(sp) - c0008a74: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47487 + c0008b56: 7139 addi sp,sp,-64 + c0008b58: fc06 sd ra,56(sp) + c0008b5a: f822 sd s0,48(sp) + c0008b5c: f426 sd s1,40(sp) + c0008b5e: f04a sd s2,32(sp) + c0008b60: ec4e sd s3,24(sp) + c0008b62: e852 sd s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47495 s = p->u.map_state; - c0008a76: 7984 ld s1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47480 -{ - c0008a78: e02e sd a1,0(sp) - c0008a7a: e432 sd a2,8(sp) + c0008b64: 7984 ld s1,48(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47488 +{ + c0008b66: e02e sd a1,0(sp) + c0008b68: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47496 if (s) { - c0008a7c: c8ad beqz s1,c0008aee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47491 + c0008b6a: c8ad beqz s1,c0008bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47499 list_for_each_safe(el, el1, &s->records) { - c0008a7e: 689c ld a5,16(s1) - c0008a80: 842a mv s0,a0 - c0008a82: 00848a13 addi s4,s1,8 - c0008a86: 0087b983 ld s3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47491 (discriminator 1) - c0008a8a: 03479163 bne a5,s4,c0008aac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47502 + c0008b6c: 689c ld a5,16(s1) + c0008b6e: 842a mv s0,a0 + c0008b70: 00848a13 addi s4,s1,8 + c0008b74: 0087b983 ld s3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47499 (discriminator 1) + c0008b78: 03479163 bne a5,s4,c0008b9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47510 js_free_rt(rt, s->hash_table); - c0008a8e: 708c ld a1,32(s1) - c0008a90: 8522 mv a0,s0 - c0008a92: 914fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47503 + c0008b7c: 708c ld a1,32(s1) + c0008b7e: 8522 mv a0,s0 + c0008b80: 914fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47511 js_free_rt(rt, s); - c0008a96: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47505 -} - c0008a98: 7442 ld s0,48(sp) - c0008a9a: 70e2 ld ra,56(sp) - c0008a9c: 7902 ld s2,32(sp) - c0008a9e: 69e2 ld s3,24(sp) - c0008aa0: 6a42 ld s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47503 + c0008b84: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47513 +} + c0008b86: 7442 ld s0,48(sp) + c0008b88: 70e2 ld ra,56(sp) + c0008b8a: 7902 ld s2,32(sp) + c0008b8c: 69e2 ld s3,24(sp) + c0008b8e: 6a42 ld s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47511 js_free_rt(rt, s); - c0008aa2: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47505 + c0008b90: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47513 } - c0008aa4: 74a2 ld s1,40(sp) - c0008aa6: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47503 + c0008b92: 74a2 ld s1,40(sp) + c0008b94: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47511 js_free_rt(rt, s); - c0008aa8: 8fefe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47492 + c0008b96: 8fefe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47500 mr = list_entry(el, JSMapRecord, link); - c0008aac: fe878913 addi s2,a5,-24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47493 + c0008b9a: fe878913 addi s2,a5,-24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47501 if (!mr->empty) { - c0008ab0: fec7a783 lw a5,-20(a5) - c0008ab4: ef89 bnez a5,c0008ace -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47494 + c0008b9e: fec7a783 lw a5,-20(a5) + c0008ba2: ef89 bnez a5,c0008bbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47502 if (s->is_weak) - c0008ab6: 409c lw a5,0(s1) - c0008ab8: c39d beqz a5,c0008ade -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47495 + c0008ba4: 409c lw a5,0(s1) + c0008ba6: c39d beqz a5,c0008bcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47503 delete_weak_ref(rt, mr); - c0008aba: 854a mv a0,s2 - c0008abc: f0cfd0ef jal ra,c00061c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47498 + c0008ba8: 854a mv a0,s2 + c0008baa: f0cfd0ef jal ra,c00062b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47506 JS_FreeValueRT(rt, mr->value); - c0008ac0: 04893583 ld a1,72(s2) - c0008ac4: 05093603 ld a2,80(s2) - c0008ac8: 8522 mv a0,s0 - c0008aca: befff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47500 (discriminator 2) + c0008bae: 04893583 ld a1,72(s2) + c0008bb2: 05093603 ld a2,80(s2) + c0008bb6: 8522 mv a0,s0 + c0008bb8: befff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47508 (discriminator 2) js_free_rt(rt, mr); - c0008ace: 85ca mv a1,s2 - c0008ad0: 8522 mv a0,s0 - c0008ad2: 8d4fe0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47491 (discriminator 2) + c0008bbc: 85ca mv a1,s2 + c0008bbe: 8522 mv a0,s0 + c0008bc0: 8d4fe0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47499 (discriminator 2) list_for_each_safe(el, el1, &s->records) { - c0008ad6: 87ce mv a5,s3 - c0008ad8: 0089b983 ld s3,8(s3) - c0008adc: b77d j c0008a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47497 - JS_FreeValueRT(rt, mr->key); - c0008ade: 03893583 ld a1,56(s2) - c0008ae2: 04093603 ld a2,64(s2) - c0008ae6: 8522 mv a0,s0 - c0008ae8: bd1ff0ef jal ra,c00086b8 - c0008aec: bfd1 j c0008ac0 + c0008bc4: 87ce mv a5,s3 + c0008bc6: 0089b983 ld s3,8(s3) + c0008bca: b77d j c0008b78 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47505 -} - c0008aee: 70e2 ld ra,56(sp) - c0008af0: 7442 ld s0,48(sp) - c0008af2: 74a2 ld s1,40(sp) - c0008af4: 7902 ld s2,32(sp) - c0008af6: 69e2 ld s3,24(sp) - c0008af8: 6a42 ld s4,16(sp) - c0008afa: 6121 addi sp,sp,64 - c0008afc: 8082 ret - -00000000c0008afe : + JS_FreeValueRT(rt, mr->key); + c0008bcc: 03893583 ld a1,56(s2) + c0008bd0: 04093603 ld a2,64(s2) + c0008bd4: 8522 mv a0,s0 + c0008bd6: bd1ff0ef jal ra,c00087a6 + c0008bda: bfd1 j c0008bae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47513 +} + c0008bdc: 70e2 ld ra,56(sp) + c0008bde: 7442 ld s0,48(sp) + c0008be0: 74a2 ld s1,40(sp) + c0008be2: 7902 ld s2,32(sp) + c0008be4: 69e2 ld s3,24(sp) + c0008be6: 6a42 ld s4,16(sp) + c0008be8: 6121 addi sp,sp,64 + c0008bea: 8082 ret + +00000000c0008bec : js_typed_array_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54835 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54843 { - c0008afe: 7139 addi sp,sp,-64 - c0008b00: fc06 sd ra,56(sp) - c0008b02: f822 sd s0,48(sp) - c0008b04: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54837 + c0008bec: 7139 addi sp,sp,-64 + c0008bee: fc06 sd ra,56(sp) + c0008bf0: f822 sd s0,48(sp) + c0008bf2: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54845 JSTypedArray *ta = p->u.typed_array; - c0008b06: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54835 + c0008bf4: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54843 { - c0008b08: e02e sd a1,0(sp) - c0008b0a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54838 + c0008bf6: e02e sd a1,0(sp) + c0008bf8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54846 if (ta) { - c0008b0c: c405 beqz s0,c0008b34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54841 + c0008bfa: c405 beqz s0,c0008c22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54849 if (ta->link.next) { - c0008b0e: 641c ld a5,8(s0) - c0008b10: 84aa mv s1,a0 - c0008b12: c781 beqz a5,c0008b1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54842 + c0008bfc: 641c ld a5,8(s0) + c0008bfe: 84aa mv s1,a0 + c0008c00: c781 beqz a5,c0008c08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54850 list_del(&ta->link); - c0008b14: 8522 mv a0,s0 - c0008b16: d44fb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54844 + c0008c02: 8522 mv a0,s0 + c0008c04: c56fb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54852 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_OBJECT, ta->buffer)); - c0008b1a: 6c0c ld a1,24(s0) - c0008b1c: 8526 mv a0,s1 - c0008b1e: 567d li a2,-1 - c0008b20: b99ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54845 + c0008c08: 6c0c ld a1,24(s0) + c0008c0a: 8526 mv a0,s1 + c0008c0c: 567d li a2,-1 + c0008c0e: b99ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54853 js_free_rt(rt, ta); - c0008b24: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54847 + c0008c12: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54855 } - c0008b26: 7442 ld s0,48(sp) - c0008b28: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54845 + c0008c14: 7442 ld s0,48(sp) + c0008c16: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54853 js_free_rt(rt, ta); - c0008b2a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54847 + c0008c18: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54855 } - c0008b2c: 74a2 ld s1,40(sp) - c0008b2e: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54845 + c0008c1a: 74a2 ld s1,40(sp) + c0008c1c: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54853 js_free_rt(rt, ta); - c0008b30: 876fe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54847 + c0008c1e: 876fe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54855 } - c0008b34: 70e2 ld ra,56(sp) - c0008b36: 7442 ld s0,48(sp) - c0008b38: 74a2 ld s1,40(sp) - c0008b3a: 6121 addi sp,sp,64 - c0008b3c: 8082 ret + c0008c22: 70e2 ld ra,56(sp) + c0008c24: 7442 ld s0,48(sp) + c0008c26: 74a2 ld s1,40(sp) + c0008c28: 6121 addi sp,sp,64 + c0008c2a: 8082 ret -00000000c0008b3e : +00000000c0008c2c : js_regexp_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43387 -{ - c0008b3e: 715d addi sp,sp,-80 - c0008b40: e0a2 sd s0,64(sp) - c0008b42: fc26 sd s1,56(sp) - c0008b44: e486 sd ra,72(sp) - c0008b46: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43395 +{ + c0008c2c: 715d addi sp,sp,-80 + c0008c2e: e0a2 sd s0,64(sp) + c0008c30: fc26 sd s1,56(sp) + c0008c32: e486 sd ra,72(sp) + c0008c34: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43396 JSObject *p = JS_VALUE_GET_OBJ(val); - c0008b48: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43390 + c0008c36: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43398 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->bytecode)); - c0008b4a: 7d8c ld a1,56(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43387 + c0008c38: 7d8c ld a1,56(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43395 { - c0008b4c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43390 + c0008c3a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43398 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->bytecode)); - c0008b4e: 57e5 li a5,-7 - c0008b50: 5665 li a2,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43387 + c0008c3c: 57e5 li a5,-7 + c0008c3e: 5665 li a2,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43395 { - c0008b52: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43390 + c0008c40: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43398 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->bytecode)); - c0008b54: e82e sd a1,16(sp) - c0008b56: ec3e sd a5,24(sp) - c0008b58: b61ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43391 + c0008c42: e82e sd a1,16(sp) + c0008c44: ec3e sd a5,24(sp) + c0008c46: b61ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43399 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c0008b5c: 780c ld a1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43392 + c0008c4a: 780c ld a1,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43400 } - c0008b5e: 6406 ld s0,64(sp) - c0008b60: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43391 + c0008c4c: 6406 ld s0,64(sp) + c0008c4e: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43399 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c0008b62: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43392 + c0008c50: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43400 } - c0008b64: 74e2 ld s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43391 + c0008c52: 74e2 ld s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43399 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c0008b66: 5665 li a2,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43392 + c0008c54: 5665 li a2,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43400 } - c0008b68: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43391 + c0008c56: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43399 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c0008b6a: b4fff06f j c00086b8 + c0008c58: b4fff06f j c00087a6 -00000000c0008b6e : +00000000c0008c5c : js_for_in_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 { - c0008b6e: 7179 addi sp,sp,-48 - c0008b70: ec26 sd s1,24(sp) - c0008b72: f406 sd ra,40(sp) - c0008b74: f022 sd s0,32(sp) - c0008b76: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5470 + c0008c5c: 7179 addi sp,sp,-48 + c0008c5e: ec26 sd s1,24(sp) + c0008c60: f406 sd ra,40(sp) + c0008c62: f022 sd s0,32(sp) + c0008c64: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5478 JSForInIterator *it = p->u.for_in_iterator; - c0008b78: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5468 + c0008c66: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 { - c0008b7a: e02e sd a1,0(sp) - c0008b7c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5473 + c0008c68: e02e sd a1,0(sp) + c0008c6a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5481 JS_FreeValueRT(rt, it->obj); - c0008b7e: 600c ld a1,0(s0) - c0008b80: 6410 ld a2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5468 + c0008c6c: 600c ld a1,0(s0) + c0008c6e: 6410 ld a2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 { - c0008b82: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5473 + c0008c70: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5481 JS_FreeValueRT(rt, it->obj); - c0008b84: b35ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5474 + c0008c72: b35ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5482 if (!it->is_array) { - c0008b88: 01944783 lbu a5,25(s0) - c0008b8c: cb95 beqz a5,c0008bc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5480 + c0008c76: 01944783 lbu a5,25(s0) + c0008c7a: cb95 beqz a5,c0008cae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 js_free_rt(rt, it); - c0008b8e: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5481 + c0008c7c: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5489 } - c0008b90: 7402 ld s0,32(sp) - c0008b92: 70a2 ld ra,40(sp) - c0008b94: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5480 + c0008c7e: 7402 ld s0,32(sp) + c0008c80: 70a2 ld ra,40(sp) + c0008c82: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 js_free_rt(rt, it); - c0008b96: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5481 + c0008c84: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5489 } - c0008b98: 64e2 ld s1,24(sp) - c0008b9a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5480 + c0008c86: 64e2 ld s1,24(sp) + c0008c88: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 js_free_rt(rt, it); - c0008b9c: 80afe06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 (discriminator 3) + c0008c8a: 80afe06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5484 (discriminator 3) JS_FreeAtomRT(rt, it->tab_atom[i].atom); - c0008ba0: 00391793 slli a5,s2,0x3 - c0008ba4: 95be add a1,a1,a5 - c0008ba6: 41cc lw a1,4(a1) - c0008ba8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5475 (discriminator 3) + c0008c8e: 00391793 slli a5,s2,0x3 + c0008c92: 95be add a1,a1,a5 + c0008c94: 41cc lw a1,4(a1) + c0008c96: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5483 (discriminator 3) for(i = 0; i < it->atom_count; i++) { - c0008baa: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 (discriminator 3) + c0008c98: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5484 (discriminator 3) JS_FreeAtomRT(rt, it->tab_atom[i].atom); - c0008bac: e27fe0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5475 (discriminator 1) + c0008c9a: e27fe0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5483 (discriminator 1) for(i = 0; i < it->atom_count; i++) { - c0008bb0: 485c lw a5,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5476 (discriminator 1) + c0008c9e: 485c lw a5,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5484 (discriminator 1) JS_FreeAtomRT(rt, it->tab_atom[i].atom); - c0008bb2: 700c ld a1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5475 (discriminator 1) + c0008ca0: 700c ld a1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5483 (discriminator 1) for(i = 0; i < it->atom_count; i++) { - c0008bb4: fef966e3 bltu s2,a5,c0008ba0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5478 + c0008ca2: fef966e3 bltu s2,a5,c0008c8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5486 js_free_rt(rt, it->tab_atom); - c0008bb8: 8526 mv a0,s1 - c0008bba: fedfd0ef jal ra,c0006ba6 - c0008bbe: bfc1 j c0008b8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5475 + c0008ca6: 8526 mv a0,s1 + c0008ca8: fedfd0ef jal ra,c0006c94 + c0008cac: bfc1 j c0008c7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5483 for(i = 0; i < it->atom_count; i++) { - c0008bc0: 4901 li s2,0 - c0008bc2: b7fd j c0008bb0 + c0008cae: 4901 li s2,0 + c0008cb0: b7fd j c0008c9e -00000000c0008bc4 : +00000000c0008cb2 : js_bound_function_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5441 -{ - c0008bc4: 7179 addi sp,sp,-48 - c0008bc6: f406 sd ra,40(sp) - c0008bc8: ec26 sd s1,24(sp) - c0008bca: e84a sd s2,16(sp) - c0008bcc: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5443 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5449 +{ + c0008cb2: 7179 addi sp,sp,-48 + c0008cb4: f406 sd ra,40(sp) + c0008cb6: ec26 sd s1,24(sp) + c0008cb8: e84a sd s2,16(sp) + c0008cba: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5451 JSBoundFunction *bf = p->u.bound_function; - c0008bce: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5441 + c0008cbc: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5449 { - c0008bd0: e02e sd a1,0(sp) - c0008bd2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5446 + c0008cbe: e02e sd a1,0(sp) + c0008cc0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5454 JS_FreeValueRT(rt, bf->func_obj); - c0008bd4: 600c ld a1,0(s0) - c0008bd6: 6410 ld a2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5441 + c0008cc2: 600c ld a1,0(s0) + c0008cc4: 6410 ld a2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5449 { - c0008bd8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5448 + c0008cc6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 for(i = 0; i < bf->argc; i++) { - c0008bda: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5446 + c0008cc8: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5454 JS_FreeValueRT(rt, bf->func_obj); - c0008bdc: addff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5447 + c0008cca: addff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5455 JS_FreeValueRT(rt, bf->this_val); - c0008be0: 680c ld a1,16(s0) - c0008be2: 6c10 ld a2,24(s0) - c0008be4: 8526 mv a0,s1 - c0008be6: ad3ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5448 (discriminator 1) + c0008cce: 680c ld a1,16(s0) + c0008cd0: 6c10 ld a2,24(s0) + c0008cd2: 8526 mv a0,s1 + c0008cd4: ad3ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 (discriminator 1) for(i = 0; i < bf->argc; i++) { - c0008bea: 501c lw a5,32(s0) - c0008bec: 00f94b63 blt s2,a5,c0008c02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5451 + c0008cd8: 501c lw a5,32(s0) + c0008cda: 00f94b63 blt s2,a5,c0008cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5459 js_free_rt(rt, bf); - c0008bf0: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5452 + c0008cde: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5460 } - c0008bf2: 7402 ld s0,32(sp) - c0008bf4: 70a2 ld ra,40(sp) - c0008bf6: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5451 + c0008ce0: 7402 ld s0,32(sp) + c0008ce2: 70a2 ld ra,40(sp) + c0008ce4: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5459 js_free_rt(rt, bf); - c0008bf8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5452 + c0008ce6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5460 } - c0008bfa: 64e2 ld s1,24(sp) - c0008bfc: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5451 + c0008ce8: 64e2 ld s1,24(sp) + c0008cea: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5459 js_free_rt(rt, bf); - c0008bfe: fa9fd06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5449 (discriminator 3) + c0008cec: fa9fd06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5457 (discriminator 3) JS_FreeValueRT(rt, bf->argv[i]); - c0008c02: 00290793 addi a5,s2,2 - c0008c06: 0792 slli a5,a5,0x4 - c0008c08: 97a2 add a5,a5,s0 - c0008c0a: 678c ld a1,8(a5) - c0008c0c: 6b90 ld a2,16(a5) - c0008c0e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5448 (discriminator 3) + c0008cf0: 00290793 addi a5,s2,2 + c0008cf4: 0792 slli a5,a5,0x4 + c0008cf6: 97a2 add a5,a5,s0 + c0008cf8: 678c ld a1,8(a5) + c0008cfa: 6b90 ld a2,16(a5) + c0008cfc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 (discriminator 3) for(i = 0; i < bf->argc; i++) { - c0008c10: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5449 (discriminator 3) + c0008cfe: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5457 (discriminator 3) JS_FreeValueRT(rt, bf->argv[i]); - c0008c12: aa7ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5448 (discriminator 3) + c0008d00: aa7ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 (discriminator 3) for(i = 0; i < bf->argc; i++) { - c0008c16: bfd1 j c0008bea + c0008d04: bfd1 j c0008cd8 -00000000c0008c18 : +00000000c0008d06 : js_bytecode_function_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5391 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5399 { - c0008c18: 715d addi sp,sp,-80 - c0008c1a: e0a2 sd s0,64(sp) - c0008c1c: fc26 sd s1,56(sp) - c0008c1e: e486 sd ra,72(sp) - c0008c20: f84a sd s2,48(sp) - c0008c22: f44e sd s3,40(sp) - c0008c24: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5392 + c0008d06: 715d addi sp,sp,-80 + c0008d08: e0a2 sd s0,64(sp) + c0008d0a: fc26 sd s1,56(sp) + c0008d0c: e486 sd ra,72(sp) + c0008d0e: f84a sd s2,48(sp) + c0008d10: f44e sd s3,40(sp) + c0008d12: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5400 JSObject *p1, *p = JS_VALUE_GET_OBJ(val); - c0008c26: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5397 + c0008d14: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5405 p1 = p->u.func.home_object; - c0008c28: 61ac ld a1,64(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5391 + c0008d16: 61ac ld a1,64(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5399 { - c0008c2a: e432 sd a2,8(sp) - c0008c2c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5398 + c0008d18: e432 sd a2,8(sp) + c0008d1a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5406 if (p1) { - c0008c2e: c599 beqz a1,c0008c3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5399 + c0008d1c: c599 beqz a1,c0008d2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5407 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_OBJECT, p1)); - c0008c30: 57fd li a5,-1 - c0008c32: 567d li a2,-1 - c0008c34: e82e sd a1,16(sp) - c0008c36: ec3e sd a5,24(sp) - c0008c38: a81ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5401 + c0008d1e: 57fd li a5,-1 + c0008d20: 567d li a2,-1 + c0008d22: e82e sd a1,16(sp) + c0008d24: ec3e sd a5,24(sp) + c0008d26: a81ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 b = p->u.func.function_bytecode; - c0008c3c: 0304b903 ld s2,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5402 + c0008d2a: 0304b903 ld s2,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5410 if (b) { - c0008c40: 04090663 beqz s2,c0008c8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5403 + c0008d2e: 04090663 beqz s2,c0008d7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 var_refs = p->u.func.var_refs; - c0008c44: 0384b983 ld s3,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5405 + c0008d32: 0384b983 ld s3,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5413 for(i = 0; i < b->closure_var_count; i++) - c0008c48: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5404 + c0008d36: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5412 if (var_refs) { - c0008c4a: 02099863 bnez s3,c0008c7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 + c0008d38: 02099863 bnez s3,c0008d68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b)); - c0008c4e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 + c0008d3c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5419 } - c0008c50: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 + c0008d3e: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b)); - c0008c52: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 + c0008d40: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5419 } - c0008c54: 60a6 ld ra,72(sp) - c0008c56: 74e2 ld s1,56(sp) - c0008c58: 79a2 ld s3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 + c0008d42: 60a6 ld ra,72(sp) + c0008d44: 74e2 ld s1,56(sp) + c0008d46: 79a2 ld s3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b)); - c0008c5a: 57f9 li a5,-2 - c0008c5c: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 + c0008d48: 57f9 li a5,-2 + c0008d4a: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5419 } - c0008c5e: 7942 ld s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 + c0008d4c: 7942 ld s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b)); - c0008c60: ec3e sd a5,24(sp) - c0008c62: 5679 li a2,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 + c0008d4e: ec3e sd a5,24(sp) + c0008d50: 5679 li a2,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5419 } - c0008c64: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5409 + c0008d52: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5417 JS_FreeValueRT(rt, JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b)); - c0008c66: a53ff06f j c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5406 (discriminator 3) + c0008d54: a53ff06f j c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5414 (discriminator 3) free_var_ref(rt, var_refs[i]); - c0008c6a: 00349793 slli a5,s1,0x3 - c0008c6e: 97ce add a5,a5,s3 - c0008c70: 638c ld a1,0(a5) - c0008c72: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5405 (discriminator 3) + c0008d58: 00349793 slli a5,s1,0x3 + c0008d5c: 97ce add a5,a5,s3 + c0008d5e: 638c ld a1,0(a5) + c0008d60: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5413 (discriminator 3) for(i = 0; i < b->closure_var_count; i++) - c0008c74: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5406 (discriminator 3) + c0008d62: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5414 (discriminator 3) free_var_ref(rt, var_refs[i]); - c0008c76: b39ff0ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5405 (discriminator 1) + c0008d64: b39ff0ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5413 (discriminator 1) for(i = 0; i < b->closure_var_count; i++) - c0008c7a: 05c92783 lw a5,92(s2) - c0008c7e: fef4c6e3 blt s1,a5,c0008c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5407 + c0008d68: 05c92783 lw a5,92(s2) + c0008d6c: fef4c6e3 blt s1,a5,c0008d58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5415 js_free_rt(rt, var_refs); - c0008c82: 85ce mv a1,s3 - c0008c84: 8522 mv a0,s0 - c0008c86: f21fd0ef jal ra,c0006ba6 - c0008c8a: b7d1 j c0008c4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5411 -} - c0008c8c: 60a6 ld ra,72(sp) - c0008c8e: 6406 ld s0,64(sp) - c0008c90: 74e2 ld s1,56(sp) - c0008c92: 7942 ld s2,48(sp) - c0008c94: 79a2 ld s3,40(sp) - c0008c96: 6161 addi sp,sp,80 - c0008c98: 8082 ret - -00000000c0008c9a : + c0008d70: 85ce mv a1,s3 + c0008d72: 8522 mv a0,s0 + c0008d74: f21fd0ef jal ra,c0006c94 + c0008d78: b7d1 j c0008d3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5419 +} + c0008d7a: 60a6 ld ra,72(sp) + c0008d7c: 6406 ld s0,64(sp) + c0008d7e: 74e2 ld s1,56(sp) + c0008d80: 7942 ld s2,48(sp) + c0008d82: 79a2 ld s3,40(sp) + c0008d84: 6161 addi sp,sp,80 + c0008d86: 8082 ret + +00000000c0008d88 : js_object_data_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5360 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5368 { - c0008c9a: 1101 addi sp,sp,-32 - c0008c9c: e822 sd s0,16(sp) - c0008c9e: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5361 + c0008d88: 1101 addi sp,sp,-32 + c0008d8a: e822 sd s0,16(sp) + c0008d8c: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5369 JSObject *p = JS_VALUE_GET_OBJ(val); - c0008ca0: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5360 + c0008d8e: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5368 { - c0008ca2: e02e sd a1,0(sp) - c0008ca4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5362 + c0008d90: e02e sd a1,0(sp) + c0008d92: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5370 JS_FreeValueRT(rt, p->u.object_data); - c0008ca6: 798c ld a1,48(a1) - c0008ca8: 7c10 ld a2,56(s0) - c0008caa: a0fff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5363 + c0008d94: 798c ld a1,48(a1) + c0008d96: 7c10 ld a2,56(s0) + c0008d98: a0fff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5371 p->u.object_data = JS_UNDEFINED; - c0008cae: 478d li a5,3 - c0008cb0: 02043823 sd zero,48(s0) - c0008cb4: fc1c sd a5,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5364 + c0008d9c: 478d li a5,3 + c0008d9e: 02043823 sd zero,48(s0) + c0008da2: fc1c sd a5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5372 } - c0008cb6: 60e2 ld ra,24(sp) - c0008cb8: 6442 ld s0,16(sp) - c0008cba: 6105 addi sp,sp,32 - c0008cbc: 8082 ret + c0008da4: 60e2 ld ra,24(sp) + c0008da6: 6442 ld s0,16(sp) + c0008da8: 6105 addi sp,sp,32 + c0008daa: 8082 ret -00000000c0008cbe : +00000000c0008dac : js_array_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5338 -{ - c0008cbe: 7139 addi sp,sp,-64 - c0008cc0: f822 sd s0,48(sp) - c0008cc2: f426 sd s1,40(sp) - c0008cc4: fc06 sd ra,56(sp) - c0008cc6: e82e sd a1,16(sp) - c0008cc8: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5346 +{ + c0008dac: 7139 addi sp,sp,-64 + c0008dae: f822 sd s0,48(sp) + c0008db0: f426 sd s1,40(sp) + c0008db2: fc06 sd ra,56(sp) + c0008db4: e82e sd a1,16(sp) + c0008db6: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5347 JSObject *p = JS_VALUE_GET_OBJ(val); - c0008cca: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5342 + c0008db8: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 for(i = 0; i < p->u.array.count; i++) { - c0008ccc: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5342 (discriminator 1) - c0008cce: 40bc lw a5,64(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 (discriminator 1) + c0008dba: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 (discriminator 1) + c0008dbc: 40bc lw a5,64(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5351 (discriminator 1) JS_FreeValueRT(rt, p->u.array.u.values[i]); - c0008cd0: 7c8c ld a1,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5342 (discriminator 1) + c0008dbe: 7c8c ld a1,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 (discriminator 1) for(i = 0; i < p->u.array.count; i++) { - c0008cd2: 00f46863 bltu s0,a5,c0008ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5346 + c0008dc0: 00f46863 bltu s0,a5,c0008dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5354 } - c0008cd6: 7442 ld s0,48(sp) - c0008cd8: 70e2 ld ra,56(sp) - c0008cda: 74a2 ld s1,40(sp) - c0008cdc: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5345 + c0008dc4: 7442 ld s0,48(sp) + c0008dc6: 70e2 ld ra,56(sp) + c0008dc8: 74a2 ld s1,40(sp) + c0008dca: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5353 js_free_rt(rt, p->u.array.u.values); - c0008cde: ec9fd06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 (discriminator 3) + c0008dcc: ec9fd06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5351 (discriminator 3) JS_FreeValueRT(rt, p->u.array.u.values[i]); - c0008ce2: 00441793 slli a5,s0,0x4 - c0008ce6: 97ae add a5,a5,a1 - c0008ce8: 638c ld a1,0(a5) - c0008cea: 6790 ld a2,8(a5) - c0008cec: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5342 (discriminator 3) + c0008dd0: 00441793 slli a5,s0,0x4 + c0008dd4: 97ae add a5,a5,a1 + c0008dd6: 638c ld a1,0(a5) + c0008dd8: 6790 ld a2,8(a5) + c0008dda: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 (discriminator 3) for(i = 0; i < p->u.array.count; i++) { - c0008cee: 2405 addiw s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5343 (discriminator 3) + c0008ddc: 2405 addiw s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5351 (discriminator 3) JS_FreeValueRT(rt, p->u.array.u.values[i]); - c0008cf0: 9c9ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5342 (discriminator 3) + c0008dde: 9c9ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 (discriminator 3) for(i = 0; i < p->u.array.count; i++) { - c0008cf4: 6522 ld a0,8(sp) - c0008cf6: bfe1 j c0008cce + c0008de2: 6522 ld a0,8(sp) + c0008de4: bfe1 j c0008dbc -00000000c0008cf8 : +00000000c0008de6 : map_delete_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47155 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47163 static void map_delete_record(JSRuntime *rt, JSMapState *s, JSMapRecord *mr) - c0008cf8: 1101 addi sp,sp,-32 - c0008cfa: e04a sd s2,0(sp) - c0008cfc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47159 + c0008de6: 1101 addi sp,sp,-32 + c0008de8: e04a sd s2,0(sp) + c0008dea: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47167 list_del(&mr->hash_link); - c0008cfe: 02860513 addi a0,a2,40 # ffffffff80000028 <_ebss+0xfffffffebfefef02> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47155 + c0008dec: 02860513 addi a0,a2,40 # ffffffff80000028 <_ebss+0xfffffffebfefef02> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47163 static void map_delete_record(JSRuntime *rt, JSMapState *s, JSMapRecord *mr) - c0008d02: e822 sd s0,16(sp) - c0008d04: e426 sd s1,8(sp) - c0008d06: ec06 sd ra,24(sp) - c0008d08: 84ae mv s1,a1 - c0008d0a: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47159 + c0008df0: e822 sd s0,16(sp) + c0008df2: e426 sd s1,8(sp) + c0008df4: ec06 sd ra,24(sp) + c0008df6: 84ae mv s1,a1 + c0008df8: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47167 list_del(&mr->hash_link); - c0008d0c: b4efb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47160 + c0008dfa: a60fb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47168 if (s->is_weak) { - c0008d10: 409c lw a5,0(s1) - c0008d12: cf9d beqz a5,c0008d50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47161 + c0008dfe: 409c lw a5,0(s1) + c0008e00: cf9d beqz a5,c0008e3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47169 delete_weak_ref(rt, mr); - c0008d14: 8522 mv a0,s0 - c0008d16: cb2fd0ef jal ra,c00061c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47165 + c0008e02: 8522 mv a0,s0 + c0008e04: cb2fd0ef jal ra,c00062b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47173 JS_FreeValueRT(rt, mr->value); - c0008d1a: 642c ld a1,72(s0) - c0008d1c: 6830 ld a2,80(s0) - c0008d1e: 854a mv a0,s2 - c0008d20: 999ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47166 + c0008e08: 642c ld a1,72(s0) + c0008e0a: 6830 ld a2,80(s0) + c0008e0c: 854a mv a0,s2 + c0008e0e: 999ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47174 if (--mr->ref_count == 0) { - c0008d24: 401c lw a5,0(s0) - c0008d26: fff7871b addiw a4,a5,-1 - c0008d2a: c018 sw a4,0(s0) - c0008d2c: eb05 bnez a4,c0008d5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47167 + c0008e12: 401c lw a5,0(s0) + c0008e14: fff7871b addiw a4,a5,-1 + c0008e18: c018 sw a4,0(s0) + c0008e1a: eb05 bnez a4,c0008e4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47175 list_del(&mr->link); - c0008d2e: 01840513 addi a0,s0,24 - c0008d32: b28fb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47168 + c0008e1c: 01840513 addi a0,s0,24 + c0008e20: a3afb0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47176 js_free_rt(rt, mr); - c0008d36: 85a2 mv a1,s0 - c0008d38: 854a mv a0,s2 - c0008d3a: e6dfd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47175 + c0008e24: 85a2 mv a1,s0 + c0008e26: 854a mv a0,s2 + c0008e28: e6dfd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47183 s->record_count--; - c0008d3e: 4c9c lw a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47176 + c0008e2c: 4c9c lw a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47184 } - c0008d40: 60e2 ld ra,24(sp) - c0008d42: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47175 + c0008e2e: 60e2 ld ra,24(sp) + c0008e30: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47183 s->record_count--; - c0008d44: 37fd addiw a5,a5,-1 - c0008d46: cc9c sw a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47176 -} - c0008d48: 6902 ld s2,0(sp) - c0008d4a: 64a2 ld s1,8(sp) - c0008d4c: 6105 addi sp,sp,32 - c0008d4e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47163 - JS_FreeValueRT(rt, mr->key); - c0008d50: 7c0c ld a1,56(s0) - c0008d52: 6030 ld a2,64(s0) - c0008d54: 854a mv a0,s2 - c0008d56: 963ff0ef jal ra,c00086b8 - c0008d5a: b7c1 j c0008d1a + c0008e32: 37fd addiw a5,a5,-1 + c0008e34: cc9c sw a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47184 +} + c0008e36: 6902 ld s2,0(sp) + c0008e38: 64a2 ld s1,8(sp) + c0008e3a: 6105 addi sp,sp,32 + c0008e3c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47171 + JS_FreeValueRT(rt, mr->key); + c0008e3e: 7c0c ld a1,56(s0) + c0008e40: 6030 ld a2,64(s0) + c0008e42: 854a mv a0,s2 + c0008e44: 963ff0ef jal ra,c00087a6 + c0008e48: b7c1 j c0008e08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47179 mr->empty = TRUE; - c0008d5c: 4785 li a5,1 - c0008d5e: c05c sw a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47172 + c0008e4a: 4785 li a5,1 + c0008e4c: c05c sw a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47180 mr->key = JS_UNDEFINED; - c0008d60: 478d li a5,3 - c0008d62: 02043c23 sd zero,56(s0) - c0008d66: e03c sd a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47173 + c0008e4e: 478d li a5,3 + c0008e50: 02043c23 sd zero,56(s0) + c0008e54: e03c sd a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47181 mr->value = JS_UNDEFINED; - c0008d68: 04043423 sd zero,72(s0) - c0008d6c: e83c sd a5,80(s0) - c0008d6e: bfc1 j c0008d3e + c0008e56: 04043423 sd zero,72(s0) + c0008e5a: e83c sd a5,80(s0) + c0008e5c: bfc1 j c0008e2c -00000000c0008d70 : +00000000c0008e5e : js_async_generator_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19320 -{ - c0008d70: 7179 addi sp,sp,-48 - c0008d72: ec26 sd s1,24(sp) - c0008d74: e84a sd s2,16(sp) - c0008d76: e052 sd s4,0(sp) - c0008d78: f406 sd ra,40(sp) - c0008d7a: f022 sd s0,32(sp) - c0008d7c: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19328 +{ + c0008e5e: 7179 addi sp,sp,-48 + c0008e60: ec26 sd s1,24(sp) + c0008e62: e84a sd s2,16(sp) + c0008e64: e052 sd s4,0(sp) + c0008e66: f406 sd ra,40(sp) + c0008e68: f022 sd s0,32(sp) + c0008e6a: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19332 list_for_each_safe(el, el1, &s->queue) { - c0008d7e: 7180 ld s0,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19320 + c0008e6c: 7180 ld s0,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19328 { - c0008d80: 84aa mv s1,a0 - c0008d82: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19324 - list_for_each_safe(el, el1, &s->queue) { - c0008d84: 00843983 ld s3,8(s0) - c0008d88: 01858a13 addi s4,a1,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19324 (discriminator 1) - c0008d8c: 03441363 bne s0,s4,c0008db2 + c0008e6e: 84aa mv s1,a0 + c0008e70: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19332 + list_for_each_safe(el, el1, &s->queue) { + c0008e72: 00843983 ld s3,8(s0) + c0008e76: 01858a13 addi s4,a1,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19332 (discriminator 1) + c0008e7a: 03441363 bne s0,s4,c0008ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19340 if (s->func_state) - c0008d90: 01093583 ld a1,16(s2) - c0008d94: c581 beqz a1,c0008d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19333 + c0008e7e: 01093583 ld a1,16(s2) + c0008e82: c581 beqz a1,c0008e8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19341 async_func_free(rt, s->func_state); - c0008d96: 8526 mv a0,s1 - c0008d98: f1aff0ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19335 -} - c0008d9c: 7402 ld s0,32(sp) - c0008d9e: 70a2 ld ra,40(sp) - c0008da0: 69a2 ld s3,8(sp) - c0008da2: 6a02 ld s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19334 + c0008e84: 8526 mv a0,s1 + c0008e86: f1aff0ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19343 +} + c0008e8a: 7402 ld s0,32(sp) + c0008e8c: 70a2 ld ra,40(sp) + c0008e8e: 69a2 ld s3,8(sp) + c0008e90: 6a02 ld s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19342 js_free_rt(rt, s); - c0008da4: 85ca mv a1,s2 - c0008da6: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19335 -} - c0008da8: 6942 ld s2,16(sp) - c0008daa: 64e2 ld s1,24(sp) - c0008dac: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19334 + c0008e92: 85ca mv a1,s2 + c0008e94: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19343 +} + c0008e96: 6942 ld s2,16(sp) + c0008e98: 64e2 ld s1,24(sp) + c0008e9a: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19342 js_free_rt(rt, s); - c0008dae: df9fd06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19326 (discriminator 3) + c0008e9c: df9fd06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19334 (discriminator 3) JS_FreeValueRT(rt, req->result); - c0008db2: 6c0c ld a1,24(s0) - c0008db4: 7010 ld a2,32(s0) - c0008db6: 8526 mv a0,s1 - c0008db8: 901ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19327 (discriminator 3) + c0008ea0: 6c0c ld a1,24(s0) + c0008ea2: 7010 ld a2,32(s0) + c0008ea4: 8526 mv a0,s1 + c0008ea6: 901ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19335 (discriminator 3) JS_FreeValueRT(rt, req->promise); - c0008dbc: 740c ld a1,40(s0) - c0008dbe: 7810 ld a2,48(s0) - c0008dc0: 8526 mv a0,s1 - c0008dc2: 8f7ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19328 (discriminator 3) + c0008eaa: 740c ld a1,40(s0) + c0008eac: 7810 ld a2,48(s0) + c0008eae: 8526 mv a0,s1 + c0008eb0: 8f7ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19336 (discriminator 3) JS_FreeValueRT(rt, req->resolving_funcs[0]); - c0008dc6: 7c0c ld a1,56(s0) - c0008dc8: 6030 ld a2,64(s0) - c0008dca: 8526 mv a0,s1 - c0008dcc: 8edff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19329 (discriminator 3) + c0008eb4: 7c0c ld a1,56(s0) + c0008eb6: 6030 ld a2,64(s0) + c0008eb8: 8526 mv a0,s1 + c0008eba: 8edff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19337 (discriminator 3) JS_FreeValueRT(rt, req->resolving_funcs[1]); - c0008dd0: 642c ld a1,72(s0) - c0008dd2: 6830 ld a2,80(s0) - c0008dd4: 8526 mv a0,s1 - c0008dd6: 8e3ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19330 (discriminator 3) + c0008ebe: 642c ld a1,72(s0) + c0008ec0: 6830 ld a2,80(s0) + c0008ec2: 8526 mv a0,s1 + c0008ec4: 8e3ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19338 (discriminator 3) js_free_rt(rt, req); - c0008dda: 85a2 mv a1,s0 - c0008ddc: 8526 mv a0,s1 - c0008dde: dc9fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19324 (discriminator 3) + c0008ec8: 85a2 mv a1,s0 + c0008eca: 8526 mv a0,s1 + c0008ecc: dc9fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19332 (discriminator 3) list_for_each_safe(el, el1, &s->queue) { - c0008de2: 844e mv s0,s3 - c0008de4: 0089b983 ld s3,8(s3) - c0008de8: b755 j c0008d8c + c0008ed0: 844e mv s0,s3 + c0008ed2: 0089b983 ld s3,8(s3) + c0008ed6: b755 j c0008e7a -00000000c0008dea : +00000000c0008ed8 : js_promise_resolve_function_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48007 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48015 { - c0008dea: 7179 addi sp,sp,-48 - c0008dec: f406 sd ra,40(sp) - c0008dee: f022 sd s0,32(sp) - c0008df0: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48008 + c0008ed8: 7179 addi sp,sp,-48 + c0008eda: f406 sd ra,40(sp) + c0008edc: f022 sd s0,32(sp) + c0008ede: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48016 JSPromiseFunctionData *s = JS_VALUE_GET_OBJ(val)->u.promise_function_data; - c0008df2: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48007 + c0008ee0: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48015 { - c0008df4: e02e sd a1,0(sp) - c0008df6: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48009 + c0008ee2: e02e sd a1,0(sp) + c0008ee4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48017 if (s) { - c0008df8: c41d beqz s0,c0008e26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48010 + c0008ee6: c41d beqz s0,c0008f14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48018 js_promise_resolve_function_free_resolved(rt, s->presolved); - c0008dfa: 680c ld a1,16(s0) - c0008dfc: 84aa mv s1,a0 + c0008ee8: 680c ld a1,16(s0) + c0008eea: 84aa mv s1,a0 js_promise_resolve_function_free_resolved(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47959 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47967 if (--sr->ref_count == 0) { - c0008dfe: 419c lw a5,0(a1) - c0008e00: fff7871b addiw a4,a5,-1 - c0008e04: c198 sw a4,0(a1) - c0008e06: e319 bnez a4,c0008e0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47960 + c0008eec: 419c lw a5,0(a1) + c0008eee: fff7871b addiw a4,a5,-1 + c0008ef2: c198 sw a4,0(a1) + c0008ef4: e319 bnez a4,c0008efa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47968 js_free_rt(rt, sr); - c0008e08: d9ffd0ef jal ra,c0006ba6 + c0008ef6: d9ffd0ef jal ra,c0006c94 js_promise_resolve_function_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48019 JS_FreeValueRT(rt, s->promise); - c0008e0c: 600c ld a1,0(s0) - c0008e0e: 6410 ld a2,8(s0) - c0008e10: 8526 mv a0,s1 - c0008e12: 8a7ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48012 + c0008efa: 600c ld a1,0(s0) + c0008efc: 6410 ld a2,8(s0) + c0008efe: 8526 mv a0,s1 + c0008f00: 8a7ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48020 js_free_rt(rt, s); - c0008e16: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48014 + c0008f04: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48022 } - c0008e18: 7402 ld s0,32(sp) - c0008e1a: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48012 + c0008f06: 7402 ld s0,32(sp) + c0008f08: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48020 js_free_rt(rt, s); - c0008e1c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48014 + c0008f0a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48022 } - c0008e1e: 64e2 ld s1,24(sp) - c0008e20: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48012 + c0008f0c: 64e2 ld s1,24(sp) + c0008f0e: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48020 js_free_rt(rt, s); - c0008e22: d85fd06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48014 + c0008f10: d85fd06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48022 } - c0008e26: 70a2 ld ra,40(sp) - c0008e28: 7402 ld s0,32(sp) - c0008e2a: 64e2 ld s1,24(sp) - c0008e2c: 6145 addi sp,sp,48 - c0008e2e: 8082 ret + c0008f14: 70a2 ld ra,40(sp) + c0008f16: 7402 ld s0,32(sp) + c0008f18: 64e2 ld s1,24(sp) + c0008f1a: 6145 addi sp,sp,48 + c0008f1c: 8082 ret -00000000c0008e30 : +00000000c0008f1e : js_map_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47542 { - c0008e30: 7179 addi sp,sp,-48 - c0008e32: f406 sd ra,40(sp) - c0008e34: f022 sd s0,32(sp) - c0008e36: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47539 + c0008f1e: 7179 addi sp,sp,-48 + c0008f20: f406 sd ra,40(sp) + c0008f22: f022 sd s0,32(sp) + c0008f24: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47547 it = p->u.map_iterator_data; - c0008e38: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47534 + c0008f26: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47542 { - c0008e3a: e02e sd a1,0(sp) - c0008e3c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47540 + c0008f28: e02e sd a1,0(sp) + c0008f2a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47548 if (it) { - c0008e3e: cc05 beqz s0,c0008e76 + c0008f2c: cc05 beqz s0,c0008f64 JS_IsLiveObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5940 if (!JS_IsObject(obj)) - c0008e40: 4418 lw a4,8(s0) - c0008e42: 57fd li a5,-1 - c0008e44: 84aa mv s1,a0 - c0008e46: 00f71b63 bne a4,a5,c0008e5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5935 + c0008f2e: 4418 lw a4,8(s0) + c0008f30: 57fd li a5,-1 + c0008f32: 84aa mv s1,a0 + c0008f34: 00f71b63 bne a4,a5,c0008f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5943 return !p->free_mark; - c0008e4a: 601c ld a5,0(s0) - c0008e4c: 0057c783 lbu a5,5(a5) + c0008f38: 601c ld a5,0(s0) + c0008f3a: 0057c783 lbu a5,5(a5) js_map_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47543 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47551 if (JS_IsLiveObject(rt, it->obj) && it->cur_record) { - c0008e50: 8b89 andi a5,a5,2 - c0008e52: e789 bnez a5,c0008e5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47543 (discriminator 1) - c0008e54: 6c0c ld a1,24(s0) - c0008e56: c199 beqz a1,c0008e5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47544 + c0008f3e: 8b89 andi a5,a5,2 + c0008f40: e789 bnez a5,c0008f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47551 (discriminator 1) + c0008f42: 6c0c ld a1,24(s0) + c0008f44: c199 beqz a1,c0008f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47552 map_decref_record(rt, it->cur_record); - c0008e58: e47fd0ef jal ra,c0006c9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47546 + c0008f46: e47fd0ef jal ra,c0006d8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47554 JS_FreeValueRT(rt, it->obj); - c0008e5c: 600c ld a1,0(s0) - c0008e5e: 6410 ld a2,8(s0) - c0008e60: 8526 mv a0,s1 - c0008e62: 857ff0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47547 + c0008f4a: 600c ld a1,0(s0) + c0008f4c: 6410 ld a2,8(s0) + c0008f4e: 8526 mv a0,s1 + c0008f50: 857ff0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47555 js_free_rt(rt, it); - c0008e66: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47549 + c0008f54: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47557 } - c0008e68: 7402 ld s0,32(sp) - c0008e6a: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47547 + c0008f56: 7402 ld s0,32(sp) + c0008f58: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47555 js_free_rt(rt, it); - c0008e6c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47549 + c0008f5a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47557 } - c0008e6e: 64e2 ld s1,24(sp) - c0008e70: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47547 + c0008f5c: 64e2 ld s1,24(sp) + c0008f5e: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47555 js_free_rt(rt, it); - c0008e72: d35fd06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47549 + c0008f60: d35fd06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47557 } - c0008e76: 70a2 ld ra,40(sp) - c0008e78: 7402 ld s0,32(sp) - c0008e7a: 64e2 ld s1,24(sp) - c0008e7c: 6145 addi sp,sp,48 - c0008e7e: 8082 ret + c0008f64: 70a2 ld ra,40(sp) + c0008f66: 7402 ld s0,32(sp) + c0008f68: 64e2 ld s1,24(sp) + c0008f6a: 6145 addi sp,sp,48 + c0008f6c: 8082 ret -00000000c0008e80 : +00000000c0008f6e : JS_FreeCString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4144 { - c0008e80: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4138 + c0008f6e: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4146 if (!ptr) - c0008e82: c591 beqz a1,c0008e8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4142 + c0008f70: c591 beqz a1,c0008f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, p)); - c0008e84: 15c1 addi a1,a1,-16 - c0008e86: 5665 li a2,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4143 + c0008f72: 15c1 addi a1,a1,-16 + c0008f74: 5665 li a2,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4151 } - c0008e88: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4142 + c0008f76: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4150 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, p)); - c0008e8a: caffe06f j c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4143 + c0008f78: caffe06f j c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4151 } - c0008e8e: 0141 addi sp,sp,16 - c0008e90: 8082 ret + c0008f7c: 0141 addi sp,sp,16 + c0008f7e: 8082 ret -00000000c0008e92 : +00000000c0008f80 : value_buffer_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44438 -{ - c0008e92: 1101 addi sp,sp,-32 - c0008e94: e822 sd s0,16(sp) - c0008e96: ec06 sd ra,24(sp) - c0008e98: e426 sd s1,8(sp) - c0008e9a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44439 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44446 +{ + c0008f80: 1101 addi sp,sp,-32 + c0008f82: e822 sd s0,16(sp) + c0008f84: ec06 sd ra,24(sp) + c0008f86: e426 sd s1,8(sp) + c0008f88: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44447 while (b->len > 0) - c0008e9c: 483c lw a5,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44440 + c0008f8a: 483c lw a5,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44448 JS_FreeValue(b->ctx, b->arr[--b->len]); - c0008e9e: 640c ld a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44439 + c0008f8c: 640c ld a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44447 while (b->len > 0) - c0008ea0: 02f04163 bgtz a5,c0008ec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44441 + c0008f8e: 02f04163 bgtz a5,c0008fb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44449 if (b->arr != b->def) - c0008ea4: 01040493 addi s1,s0,16 - c0008ea8: 00b48563 beq s1,a1,c0008eb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44442 + c0008f92: 01040493 addi s1,s0,16 + c0008f96: 00b48563 beq s1,a1,c0008fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44450 js_free(b->ctx, b->arr); - c0008eac: 6008 ld a0,0(s0) - c0008eae: f8dfd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44444 + c0008f9a: 6008 ld a0,0(s0) + c0008f9c: f8dfd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44452 b->size = 4; - c0008eb2: 4791 li a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44443 + c0008fa0: 4791 li a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44451 b->arr = b->def; - c0008eb4: e404 sd s1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44445 + c0008fa2: e404 sd s1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44453 } - c0008eb6: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44444 + c0008fa4: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44452 b->size = 4; - c0008eb8: c87c sw a5,84(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44445 + c0008fa6: c87c sw a5,84(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44453 } - c0008eba: 6442 ld s0,16(sp) - c0008ebc: 64a2 ld s1,8(sp) - c0008ebe: 6105 addi sp,sp,32 - c0008ec0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44440 + c0008fa8: 6442 ld s0,16(sp) + c0008faa: 64a2 ld s1,8(sp) + c0008fac: 6105 addi sp,sp,32 + c0008fae: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44448 JS_FreeValue(b->ctx, b->arr[--b->len]); - c0008ec2: fff7871b addiw a4,a5,-1 - c0008ec6: 00471793 slli a5,a4,0x4 - c0008eca: c838 sw a4,80(s0) - c0008ecc: 97ae add a5,a5,a1 - c0008ece: 638c ld a1,0(a5) - c0008ed0: 6790 ld a2,8(a5) - c0008ed2: 6008 ld a0,0(s0) - c0008ed4: c65fe0ef jal ra,c0007b38 - c0008ed8: b7d1 j c0008e9c - -00000000c0008eda : + c0008fb0: fff7871b addiw a4,a5,-1 + c0008fb4: 00471793 slli a5,a4,0x4 + c0008fb8: c838 sw a4,80(s0) + c0008fba: 97ae add a5,a5,a1 + c0008fbc: 638c ld a1,0(a5) + c0008fbe: 6790 ld a2,8(a5) + c0008fc0: 6008 ld a0,0(s0) + c0008fc2: c65fe0ef jal ra,c0007c26 + c0008fc6: b7d1 j c0008f8a + +00000000c0008fc8 : free_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20115 { - c0008eda: 1101 addi sp,sp,-32 - c0008edc: e822 sd s0,16(sp) - c0008ede: e426 sd s1,8(sp) - c0008ee0: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20108 + c0008fc8: 1101 addi sp,sp,-32 + c0008fca: e822 sd s0,16(sp) + c0008fcc: e426 sd s1,8(sp) + c0008fce: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20116 switch(token->val) { - c0008ee2: 419c lw a5,0(a1) - c0008ee4: f8300713 li a4,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20107 + c0008fd0: 419c lw a5,0(a1) + c0008fd2: f8300713 li a4,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20115 { - c0008ee8: 84aa mv s1,a0 - c0008eea: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20108 + c0008fd6: 84aa mv s1,a0 + c0008fd8: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20116 switch(token->val) { - c0008eec: 04e78263 beq a5,a4,c0008f30 - c0008ef0: f8400713 li a4,-124 - c0008ef4: 02e7d863 bge a5,a4,c0008f24 - c0008ef8: f8000713 li a4,-128 - c0008efc: 04e78263 beq a5,a4,c0008f40 - c0008f00: 00e7c763 blt a5,a4,c0008f0e - c0008f04: 07f7871b addiw a4,a5,127 - c0008f08: 4685 li a3,1 - c0008f0a: 02e6fb63 bgeu a3,a4,c0008f40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20125 + c0008fda: 04e78263 beq a5,a4,c000901e + c0008fde: f8400713 li a4,-124 + c0008fe2: 02e7d863 bge a5,a4,c0009012 + c0008fe6: f8000713 li a4,-128 + c0008fea: 04e78263 beq a5,a4,c000902e + c0008fee: 00e7c763 blt a5,a4,c0008ffc + c0008ff2: 07f7871b addiw a4,a5,127 + c0008ff6: 4685 li a3,1 + c0008ff8: 02e6fb63 bgeu a3,a4,c000902e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20133 if (token->val >= TOK_FIRST_KEYWORD && - c0008f0e: 0557879b addiw a5,a5,85 - c0008f12: 02d00713 li a4,45 - c0008f16: 00f77d63 bgeu a4,a5,c0008f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20131 -} - c0008f1a: 60e2 ld ra,24(sp) - c0008f1c: 6442 ld s0,16(sp) - c0008f1e: 64a2 ld s1,8(sp) - c0008f20: 6105 addi sp,sp,32 - c0008f22: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20108 + c0008ffc: 0557879b addiw a5,a5,85 + c0009000: 02d00713 li a4,45 + c0009004: 00f77d63 bgeu a4,a5,c000901e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20139 +} + c0009008: 60e2 ld ra,24(sp) + c000900a: 6442 ld s0,16(sp) + c000900c: 64a2 ld s1,8(sp) + c000900e: 6105 addi sp,sp,32 + c0009010: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20116 switch(token->val) { - c0008f24: 02e78763 beq a5,a4,c0008f52 - c0008f28: fa900713 li a4,-87 - c0008f2c: fee791e3 bne a5,a4,c0008f0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20127 + c0009012: 02e78763 beq a5,a4,c0009040 + c0009016: fa900713 li a4,-87 + c000901a: fee791e3 bne a5,a4,c0008ffc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20135 JS_FreeAtom(s->ctx, token->u.ident.atom); - c0008f30: 480c lw a1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20131 + c000901e: 480c lw a1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20139 } - c0008f32: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20127 + c0009020: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20135 JS_FreeAtom(s->ctx, token->u.ident.atom); - c0008f34: 6088 ld a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20131 + c0009022: 6088 ld a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20139 } - c0008f36: 60e2 ld ra,24(sp) - c0008f38: 64a2 ld s1,8(sp) - c0008f3a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20127 + c0009024: 60e2 ld ra,24(sp) + c0009026: 64a2 ld s1,8(sp) + c0009028: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20135 JS_FreeAtom(s->ctx, token->u.ident.atom); - c0008f3c: dd0fe06f j c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20114 + c000902a: dd0fe06f j c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20122 JS_FreeValue(s->ctx, token->u.str.str); - c0008f40: 680c ld a1,16(s0) - c0008f42: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20131 + c000902e: 680c ld a1,16(s0) + c0009030: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20139 } - c0008f44: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20118 + c0009032: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20126 JS_FreeValue(s->ctx, token->u.regexp.flags); - c0008f46: 6088 ld a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20131 + c0009034: 6088 ld a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20139 } - c0008f48: 60e2 ld ra,24(sp) - c0008f4a: 64a2 ld s1,8(sp) - c0008f4c: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20118 + c0009036: 60e2 ld ra,24(sp) + c0009038: 64a2 ld s1,8(sp) + c000903a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20126 JS_FreeValue(s->ctx, token->u.regexp.flags); - c0008f4e: bebfe06f j c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20117 + c000903c: bebfe06f j c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20125 JS_FreeValue(s->ctx, token->u.regexp.body); - c0008f52: 698c ld a1,16(a1) - c0008f54: 6c10 ld a2,24(s0) - c0008f56: 6108 ld a0,0(a0) - c0008f58: be1fe0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20118 + c0009040: 698c ld a1,16(a1) + c0009042: 6c10 ld a2,24(s0) + c0009044: 6108 ld a0,0(a0) + c0009046: be1fe0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20126 JS_FreeValue(s->ctx, token->u.regexp.flags); - c0008f5c: 700c ld a1,32(s0) - c0008f5e: 7410 ld a2,40(s0) - c0008f60: b7d5 j c0008f44 + c000904a: 700c ld a1,32(s0) + c000904c: 7410 ld a2,40(s0) + c000904e: b7d5 j c0009032 -00000000c0008f62 : +00000000c0009050 : js_free_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29499 -{ - c0008f62: 7179 addi sp,sp,-48 - c0008f64: f022 sd s0,32(sp) - c0008f66: ec26 sd s1,24(sp) - c0008f68: e44e sd s3,8(sp) - c0008f6a: f406 sd ra,40(sp) - c0008f6c: e84a sd s2,16(sp) - c0008f6e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29507 +{ + c0009050: 7179 addi sp,sp,-48 + c0009052: f022 sd s0,32(sp) + c0009054: ec26 sd s1,24(sp) + c0009056: e44e sd s3,8(sp) + c0009058: f406 sd ra,40(sp) + c000905a: e84a sd s2,16(sp) + c000905c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29512 list_for_each_safe(el, el1, &fd->child_list) { - c0008f70: 718c ld a1,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29499 + c000905e: 718c ld a1,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29507 { - c0008f72: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29504 + c0009060: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29512 list_for_each_safe(el, el1, &fd->child_list) { - c0008f74: 01840993 addi s3,s0,24 - c0008f78: 0085b903 ld s2,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29504 (discriminator 1) - c0008f7c: 0f359963 bne a1,s3,c000906e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29510 + c0009062: 01840993 addi s3,s0,24 + c0009066: 0085b903 ld s2,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29512 (discriminator 1) + c000906a: 0f359963 bne a1,s3,c000915c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29518 free_bytecode_atoms(ctx->rt, fd->byte_code.buf, fd->byte_code.size, - c0008f80: 16842683 lw a3,360(s0) - c0008f84: 13842603 lw a2,312(s0) - c0008f88: 13043583 ld a1,304(s0) - c0008f8c: 6c88 ld a0,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29517 + c000906e: 16842683 lw a3,360(s0) + c0009072: 13842603 lw a2,312(s0) + c0009076: 13043583 ld a1,304(s0) + c000907a: 6c88 ld a0,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 for(i = 0; i < fd->cpool_count; i++) { - c0008f8e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29510 + c000907c: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29518 free_bytecode_atoms(ctx->rt, fd->byte_code.buf, fd->byte_code.size, - c0008f90: a51fe0ef jal ra,c00079e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29512 + c000907e: a51fe0ef jal ra,c0007ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29520 dbuf_free(&fd->byte_code); - c0008f94: 13040513 addi a0,s0,304 - c0008f98: 66f3e0ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29513 + c0009082: 13040513 addi a0,s0,304 + c0009086: 7513e0ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29521 js_free(ctx, fd->jump_slots); - c0008f9c: 1a843583 ld a1,424(s0) - c0008fa0: 8526 mv a0,s1 - c0008fa2: e99fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29514 + c000908a: 1a843583 ld a1,424(s0) + c000908e: 8526 mv a0,s1 + c0009090: e99fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29522 js_free(ctx, fd->label_slots); - c0008fa6: 17043583 ld a1,368(s0) - c0008faa: 8526 mv a0,s1 - c0008fac: e8ffd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29515 + c0009094: 17043583 ld a1,368(s0) + c0009098: 8526 mv a0,s1 + c000909a: e8ffd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29523 js_free(ctx, fd->line_number_slots); - c0008fb0: 1b843583 ld a1,440(s0) - c0008fb4: 8526 mv a0,s1 - c0008fb6: e85fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29517 (discriminator 1) + c000909e: 1b843583 ld a1,440(s0) + c00090a2: 8526 mv a0,s1 + c00090a4: e85fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 1) for(i = 0; i < fd->cpool_count; i++) { - c0008fba: 19042783 lw a5,400(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29518 (discriminator 1) + c00090a8: 19042783 lw a5,400(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29526 (discriminator 1) JS_FreeValue(ctx, fd->cpool[i]); - c0008fbe: 18843583 ld a1,392(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29517 (discriminator 1) + c00090ac: 18843583 ld a1,392(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 1) for(i = 0; i < fd->cpool_count; i++) { - c0008fc2: 0af94f63 blt s2,a5,c0009080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29520 + c00090b0: 0af94f63 blt s2,a5,c000916e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 js_free(ctx, fd->cpool); - c0008fc6: 8526 mv a0,s1 - c0008fc8: e73fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29522 + c00090b4: 8526 mv a0,s1 + c00090b6: e73fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29530 JS_FreeAtom(ctx, fd->func_name); - c0008fcc: 08842583 lw a1,136(s0) - c0008fd0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29524 + c00090ba: 08842583 lw a1,136(s0) + c00090be: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29532 for(i = 0; i < fd->var_count; i++) { - c0008fd2: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29522 + c00090c0: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29530 JS_FreeAtom(ctx, fd->func_name); - c0008fd4: d38fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29524 (discriminator 1) + c00090c2: d38fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29532 (discriminator 1) for(i = 0; i < fd->var_count; i++) { - c0008fd8: 09c42783 lw a5,156(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 1) + c00090c6: 09c42783 lw a5,156(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 1) JS_FreeAtom(ctx, fd->vars[i].var_name); - c0008fdc: 684c ld a1,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29524 (discriminator 1) + c00090ca: 684c ld a1,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29532 (discriminator 1) for(i = 0; i < fd->var_count; i++) { - c0008fde: 0af94b63 blt s2,a5,c0009094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29527 + c00090cc: 0af94b63 blt s2,a5,c0009182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29535 js_free(ctx, fd->vars); - c0008fe2: 8526 mv a0,s1 - c0008fe4: e57fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 + c00090d0: 8526 mv a0,s1 + c00090d2: e57fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 for(i = 0; i < fd->arg_count; i++) { - c0008fe8: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 (discriminator 1) - c0008fea: 0ac42783 lw a5,172(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29529 (discriminator 1) + c00090d6: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 (discriminator 1) + c00090d8: 0ac42783 lw a5,172(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29537 (discriminator 1) JS_FreeAtom(ctx, fd->args[i].var_name); - c0008fee: 704c ld a1,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 (discriminator 1) + c00090dc: 704c ld a1,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 (discriminator 1) for(i = 0; i < fd->arg_count; i++) { - c0008ff0: 0af94b63 blt s2,a5,c00090a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29531 + c00090de: 0af94b63 blt s2,a5,c0009194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29539 js_free(ctx, fd->args); - c0008ff4: 8526 mv a0,s1 - c0008ff6: e45fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 + c00090e2: 8526 mv a0,s1 + c00090e4: e45fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29541 for(i = 0; i < fd->global_var_count; i++) { - c0008ffa: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 1) - c0008ffc: 11c42783 lw a5,284(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29534 (discriminator 1) + c00090e8: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29541 (discriminator 1) + c00090ea: 11c42783 lw a5,284(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29542 (discriminator 1) JS_FreeAtom(ctx, fd->global_vars[i].var_name); - c0009000: 12843583 ld a1,296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 1) + c00090ee: 12843583 ld a1,296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29541 (discriminator 1) for(i = 0; i < fd->global_var_count; i++) { - c0009004: 0af94a63 blt s2,a5,c00090b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 + c00090f2: 0af94a63 blt s2,a5,c00091a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29544 js_free(ctx, fd->global_vars); - c0009008: 8526 mv a0,s1 - c000900a: e31fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29538 + c00090f6: 8526 mv a0,s1 + c00090f8: e31fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29546 for(i = 0; i < fd->closure_var_count; i++) { - c000900e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29538 (discriminator 1) - c0009010: 19842783 lw a5,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29539 (discriminator 1) + c00090fc: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29546 (discriminator 1) + c00090fe: 19842783 lw a5,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29547 (discriminator 1) JSClosureVar *cv = &fd->closure_var[i]; - c0009014: 1a043583 ld a1,416(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29538 (discriminator 1) + c0009102: 1a043583 ld a1,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29546 (discriminator 1) for(i = 0; i < fd->closure_var_count; i++) { - c0009018: 0af94963 blt s2,a5,c00090ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29542 + c0009106: 0af94963 blt s2,a5,c00091b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29550 js_free(ctx, fd->closure_var); - c000901c: 8526 mv a0,s1 - c000901e: e1dfd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29544 + c000910a: 8526 mv a0,s1 + c000910c: e1dfd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29552 if (fd->scopes != fd->def_scope_array) - c0009022: 786c ld a1,240(s0) - c0009024: 0f840793 addi a5,s0,248 - c0009028: 00f58563 beq a1,a5,c0009032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29545 + c0009110: 786c ld a1,240(s0) + c0009112: 0f840793 addi a5,s0,248 + c0009116: 00f58563 beq a1,a5,c0009120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29553 js_free(ctx, fd->scopes); - c000902c: 8526 mv a0,s1 - c000902e: e0dfd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29547 + c000911a: 8526 mv a0,s1 + c000911c: e0dfd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29555 JS_FreeAtom(ctx, fd->filename); - c0009032: 1d042583 lw a1,464(s0) - c0009036: 8526 mv a0,s1 - c0009038: cd4fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29548 + c0009120: 1d042583 lw a1,464(s0) + c0009124: 8526 mv a0,s1 + c0009126: cd4fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29556 dbuf_free(&fd->pc2line); - c000903c: 1d840513 addi a0,s0,472 - c0009040: 5c73e0ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29550 + c000912a: 1d840513 addi a0,s0,472 + c000912e: 6a93e0ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29558 js_free(ctx, fd->source); - c0009044: 20843583 ld a1,520(s0) - c0009048: 8526 mv a0,s1 - c000904a: df1fd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29552 + c0009132: 20843583 ld a1,520(s0) + c0009136: 8526 mv a0,s1 + c0009138: df1fd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29560 if (fd->parent) { - c000904e: 641c ld a5,8(s0) - c0009050: c789 beqz a5,c000905a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29554 + c000913c: 641c ld a5,8(s0) + c000913e: c789 beqz a5,c0009148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29562 list_del(&fd->link); - c0009052: 02840513 addi a0,s0,40 - c0009056: 804fb0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29556 + c0009140: 02840513 addi a0,s0,40 + c0009144: f17fa0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29564 js_free(ctx, fd); - c000905a: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29557 -} - c000905c: 7402 ld s0,32(sp) - c000905e: 70a2 ld ra,40(sp) - c0009060: 6942 ld s2,16(sp) - c0009062: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29556 + c0009148: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29565 +} + c000914a: 7402 ld s0,32(sp) + c000914c: 70a2 ld ra,40(sp) + c000914e: 6942 ld s2,16(sp) + c0009150: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29564 js_free(ctx, fd); - c0009064: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29557 + c0009152: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29565 } - c0009066: 64e2 ld s1,24(sp) - c0009068: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29556 + c0009154: 64e2 ld s1,24(sp) + c0009156: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29564 js_free(ctx, fd); - c000906a: dd1fd06f j c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29507 (discriminator 3) + c0009158: dd1fd06f j c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29515 (discriminator 3) js_free_function_def(ctx, fd1); - c000906e: fd858593 addi a1,a1,-40 - c0009072: 8526 mv a0,s1 - c0009074: eefff0ef jal ra,c0008f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29504 (discriminator 3) + c000915c: fd858593 addi a1,a1,-40 + c0009160: 8526 mv a0,s1 + c0009162: eefff0ef jal ra,c0009050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29512 (discriminator 3) list_for_each_safe(el, el1, &fd->child_list) { - c0009078: 85ca mv a1,s2 - c000907a: 00893903 ld s2,8(s2) - c000907e: bdfd j c0008f7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29518 (discriminator 3) + c0009166: 85ca mv a1,s2 + c0009168: 00893903 ld s2,8(s2) + c000916c: bdfd j c000906a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29526 (discriminator 3) JS_FreeValue(ctx, fd->cpool[i]); - c0009080: 00491793 slli a5,s2,0x4 - c0009084: 97ae add a5,a5,a1 - c0009086: 638c ld a1,0(a5) - c0009088: 6790 ld a2,8(a5) - c000908a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29517 (discriminator 3) + c000916e: 00491793 slli a5,s2,0x4 + c0009172: 97ae add a5,a5,a1 + c0009174: 638c ld a1,0(a5) + c0009176: 6790 ld a2,8(a5) + c0009178: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 3) for(i = 0; i < fd->cpool_count; i++) { - c000908c: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29518 (discriminator 3) + c000917a: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29526 (discriminator 3) JS_FreeValue(ctx, fd->cpool[i]); - c000908e: aabfe0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29517 (discriminator 3) - for(i = 0; i < fd->cpool_count; i++) { - c0009092: b725 j c0008fba + c000917c: aabfe0ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 3) + for(i = 0; i < fd->cpool_count; i++) { + c0009180: b725 j c00090a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 3) JS_FreeAtom(ctx, fd->vars[i].var_name); - c0009094: 00491793 slli a5,s2,0x4 - c0009098: 95be add a1,a1,a5 - c000909a: 418c lw a1,0(a1) - c000909c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29524 (discriminator 3) + c0009182: 00491793 slli a5,s2,0x4 + c0009186: 95be add a1,a1,a5 + c0009188: 418c lw a1,0(a1) + c000918a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29532 (discriminator 3) for(i = 0; i < fd->var_count; i++) { - c000909e: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29525 (discriminator 3) + c000918c: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 3) JS_FreeAtom(ctx, fd->vars[i].var_name); - c00090a0: c6cfe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29524 (discriminator 3) + c000918e: c6cfe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29532 (discriminator 3) for(i = 0; i < fd->var_count; i++) { - c00090a4: bf15 j c0008fd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29529 (discriminator 3) + c0009192: bf15 j c00090c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29537 (discriminator 3) JS_FreeAtom(ctx, fd->args[i].var_name); - c00090a6: 00491793 slli a5,s2,0x4 - c00090aa: 95be add a1,a1,a5 - c00090ac: 418c lw a1,0(a1) - c00090ae: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 (discriminator 3) + c0009194: 00491793 slli a5,s2,0x4 + c0009198: 95be add a1,a1,a5 + c000919a: 418c lw a1,0(a1) + c000919c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 (discriminator 3) for(i = 0; i < fd->arg_count; i++) { - c00090b0: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29529 (discriminator 3) + c000919e: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29537 (discriminator 3) JS_FreeAtom(ctx, fd->args[i].var_name); - c00090b2: c5afe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29528 (discriminator 3) + c00091a0: c5afe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29536 (discriminator 3) for(i = 0; i < fd->arg_count; i++) { - c00090b6: bf15 j c0008fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29534 (discriminator 3) + c00091a4: bf15 j c00090d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29542 (discriminator 3) JS_FreeAtom(ctx, fd->global_vars[i].var_name); - c00090b8: 00491793 slli a5,s2,0x4 - c00090bc: 95be add a1,a1,a5 - c00090be: 45cc lw a1,12(a1) - c00090c0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 3) + c00091a6: 00491793 slli a5,s2,0x4 + c00091aa: 95be add a1,a1,a5 + c00091ac: 45cc lw a1,12(a1) + c00091ae: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29541 (discriminator 3) for(i = 0; i < fd->global_var_count; i++) { - c00090c2: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29534 (discriminator 3) + c00091b0: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29542 (discriminator 3) JS_FreeAtom(ctx, fd->global_vars[i].var_name); - c00090c4: c48fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29533 (discriminator 3) + c00091b2: c48fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29541 (discriminator 3) for(i = 0; i < fd->global_var_count; i++) { - c00090c8: bf15 j c0008ffc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29540 (discriminator 3) + c00091b6: bf15 j c00090ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29548 (discriminator 3) JS_FreeAtom(ctx, cv->var_name); - c00090ca: 00391793 slli a5,s2,0x3 - c00090ce: 95be add a1,a1,a5 - c00090d0: 41cc lw a1,4(a1) - c00090d2: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29538 (discriminator 3) + c00091b8: 00391793 slli a5,s2,0x3 + c00091bc: 95be add a1,a1,a5 + c00091be: 41cc lw a1,4(a1) + c00091c0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29546 (discriminator 3) for(i = 0; i < fd->closure_var_count; i++) { - c00090d4: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29540 (discriminator 3) + c00091c2: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29548 (discriminator 3) JS_FreeAtom(ctx, cv->var_name); - c00090d6: c36fe0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29538 (discriminator 3) + c00091c4: c36fe0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29546 (discriminator 3) for(i = 0; i < fd->closure_var_count; i++) { - c00090da: bf1d j c0009010 + c00091c8: bf1d j c00090fe -00000000c00090dc : +00000000c00091ca : js_compare_bigfloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13866 { - c00090dc: 7171 addi sp,sp,-176 - c00090de: e152 sd s4,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13862 + c00091ca: 7171 addi sp,sp,-176 + c00091cc: e152 sd s4,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13870 a = JS_ToBigFloat(ctx, &a_s, op1); - c00090e0: 02010a13 addi s4,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13858 + c00091ce: 02010a13 addi s4,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13866 { - c00090e4: f122 sd s0,160(sp) - c00090e6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13862 + c00091d2: f122 sd s0,160(sp) + c00091d4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13870 a = JS_ToBigFloat(ctx, &a_s, op1); - c00090e8: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13858 -{ - c00090ea: e54e sd s3,136(sp) - c00090ec: f506 sd ra,168(sp) - c00090ee: ed26 sd s1,152(sp) - c00090f0: e94a sd s2,144(sp) - c00090f2: fcd6 sd s5,120(sp) - c00090f4: 89aa mv s3,a0 - c00090f6: e832 sd a2,16(sp) - c00090f8: ec36 sd a3,24(sp) - c00090fa: e03a sd a4,0(sp) - c00090fc: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13862 + c00091d6: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13866 +{ + c00091d8: e54e sd s3,136(sp) + c00091da: f506 sd ra,168(sp) + c00091dc: ed26 sd s1,152(sp) + c00091de: e94a sd s2,144(sp) + c00091e0: fcd6 sd s5,120(sp) + c00091e2: 89aa mv s3,a0 + c00091e4: e832 sd a2,16(sp) + c00091e6: ec36 sd a3,24(sp) + c00091e8: e03a sd a4,0(sp) + c00091ea: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13870 a = JS_ToBigFloat(ctx, &a_s, op1); - c00090fe: dbefd0ef jal ra,c00066bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13863 + c00091ec: dbefd0ef jal ra,c00067aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13871 if (!a) { - c0009102: e10d bnez a0,c0009124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13864 + c00091f0: e10d bnez a0,c0009212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13872 JS_FreeValue(ctx, op2); - c0009104: 6582 ld a1,0(sp) - c0009106: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13871 + c00091f2: 6582 ld a1,0(sp) + c00091f4: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13879 JS_FreeValue(ctx, op1); - c0009108: 854e mv a0,s3 - c000910a: a2ffe0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13872 + c00091f6: 854e mv a0,s3 + c00091f8: a2ffe0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13880 return -1; - c000910e: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13900 -} - c0009110: 70aa ld ra,168(sp) - c0009112: 8522 mv a0,s0 - c0009114: 740a ld s0,160(sp) - c0009116: 64ea ld s1,152(sp) - c0009118: 694a ld s2,144(sp) - c000911a: 69aa ld s3,136(sp) - c000911c: 6a0a ld s4,128(sp) - c000911e: 7ae6 ld s5,120(sp) - c0009120: 614d addi sp,sp,176 - c0009122: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13867 + c00091fc: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13908 +} + c00091fe: 70aa ld ra,168(sp) + c0009200: 8522 mv a0,s0 + c0009202: 740a ld s0,160(sp) + c0009204: 64ea ld s1,152(sp) + c0009206: 694a ld s2,144(sp) + c0009208: 69aa ld s3,136(sp) + c000920a: 6a0a ld s4,128(sp) + c000920c: 7ae6 ld s5,120(sp) + c000920e: 614d addi sp,sp,176 + c0009210: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13875 b = JS_ToBigFloat(ctx, &b_s, op2); - c0009124: 6602 ld a2,0(sp) - c0009126: 66a2 ld a3,8(sp) - c0009128: 04810a93 addi s5,sp,72 - c000912c: 84aa mv s1,a0 - c000912e: 85d6 mv a1,s5 - c0009130: 854e mv a0,s3 - c0009132: d8afd0ef jal ra,c00066bc - c0009136: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13868 + c0009212: 6602 ld a2,0(sp) + c0009214: 66a2 ld a3,8(sp) + c0009216: 04810a93 addi s5,sp,72 + c000921a: 84aa mv s1,a0 + c000921c: 85d6 mv a1,s5 + c000921e: 854e mv a0,s3 + c0009220: d8afd0ef jal ra,c00067aa + c0009224: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13876 if (!b) { - c0009138: e909 bnez a0,c000914a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13869 + c0009226: e909 bnez a0,c0009238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13877 if (a == &a_s) - c000913a: 01449563 bne s1,s4,c0009144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13870 + c0009228: 01449563 bne s1,s4,c0009232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13878 bf_delete(a); - c000913e: 8526 mv a0,s1 - c0009140: d6afd0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13871 + c000922c: 8526 mv a0,s1 + c000922e: d6afd0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13879 JS_FreeValue(ctx, op1); - c0009144: 65c2 ld a1,16(sp) - c0009146: 6662 ld a2,24(sp) - c0009148: b7c1 j c0009108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13874 + c0009232: 65c2 ld a1,16(sp) + c0009234: 6662 ld a2,24(sp) + c0009236: b7c1 j c00091f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13882 switch(op) { - c000914a: f5c4059b addiw a1,s0,-164 - c000914e: 0005871b sext.w a4,a1 - c0009152: 4799 li a5,6 - c0009154: 06e7eb63 bltu a5,a4,c00091ca - c0009158: 02059793 slli a5,a1,0x20 - c000915c: 01e7d593 srli a1,a5,0x1e - c0009160: 00054717 auipc a4,0x54 - c0009164: a8070713 addi a4,a4,-1408 # c005cbe0 - c0009168: 95ba add a1,a1,a4 - c000916a: 419c lw a5,0(a1) - c000916c: 97ba add a5,a5,a4 - c000916e: 8782 jr a5 + c0009238: f5c4059b addiw a1,s0,-164 + c000923c: 0005871b sext.w a4,a1 + c0009240: 4799 li a5,6 + c0009242: 06e7eb63 bltu a5,a4,c00092b8 + c0009246: 02059793 slli a5,a1,0x20 + c000924a: 01e7d593 srli a1,a5,0x1e + c000924e: 00054717 auipc a4,0x54 + c0009252: bc270713 addi a4,a4,-1086 # c005ce10 + c0009256: 95ba add a1,a1,a4 + c0009258: 419c lw a5,0(a1) + c000925a: 97ba add a5,a5,a4 + c000925c: 8782 jr a5 bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 return bf_cmp(a, b) <= 0; @@ -25826,6460 +25922,6460 @@ bf_cmp_lt(): static inline int bf_cmp_lt(const bf_t *a, const bf_t *b) { return bf_cmp(a, b) < 0; - c0009170: 85aa mv a1,a0 - c0009172: 8526 mv a0,s1 - c0009174: 497440ef jal ra,c004de0a - c0009178: 01f5541b srliw s0,a0,0x1f + c000925e: 85aa mv a1,a0 + c0009260: 8526 mv a0,s1 + c0009262: 579440ef jal ra,c004dfda + c0009266: 01f5541b srliw s0,a0,0x1f js_compare_bigfloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13893 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13901 if (a == &a_s) - c000917c: 01449563 bne s1,s4,c0009186 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13894 + c000926a: 01449563 bne s1,s4,c0009274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13902 bf_delete(a); - c0009180: 8526 mv a0,s1 - c0009182: d28fd0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13895 + c000926e: 8526 mv a0,s1 + c0009270: d28fd0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13903 if (b == &b_s) - c0009186: 01591563 bne s2,s5,c0009190 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13896 + c0009274: 01591563 bne s2,s5,c000927e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13904 bf_delete(b); - c000918a: 854a mv a0,s2 - c000918c: d1efd0ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13897 + c0009278: 854a mv a0,s2 + c000927a: d1efd0ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13905 JS_FreeValue(ctx, op1); - c0009190: 65c2 ld a1,16(sp) - c0009192: 6662 ld a2,24(sp) - c0009194: 854e mv a0,s3 - c0009196: 9a3fe0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13898 + c000927e: 65c2 ld a1,16(sp) + c0009280: 6662 ld a2,24(sp) + c0009282: 854e mv a0,s3 + c0009284: 9a3fe0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13906 JS_FreeValue(ctx, op2); - c000919a: 6582 ld a1,0(sp) - c000919c: 6622 ld a2,8(sp) - c000919e: 854e mv a0,s3 - c00091a0: 999fe0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13899 + c0009288: 6582 ld a1,0(sp) + c000928a: 6622 ld a2,8(sp) + c000928c: 854e mv a0,s3 + c000928e: 999fe0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13907 return res; - c00091a4: b7b5 j c0009110 + c0009292: b7b5 j c00091fe bf_cmp_le(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:274 return bf_cmp(a, b) <= 0; - c00091a6: 85aa mv a1,a0 - c00091a8: 8526 mv a0,s1 - c00091aa: 461440ef jal ra,c004de0a - c00091ae: 00152413 slti s0,a0,1 + c0009294: 85aa mv a1,a0 + c0009296: 8526 mv a0,s1 + c0009298: 543440ef jal ra,c004dfda + c000929c: 00152413 slti s0,a0,1 js_compare_bigfloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13894 break; - c00091b2: b7e9 j c000917c + c00092a0: b7e9 j c000926a bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 return bf_cmp(a, b) < 0; - c00091b4: 85a6 mv a1,s1 - c00091b6: bf7d j c0009174 + c00092a2: 85a6 mv a1,s1 + c00092a4: bf7d j c0009262 bf_cmp_le(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:274 return bf_cmp(a, b) <= 0; - c00091b8: 85a6 mv a1,s1 - c00091ba: bfc5 j c00091aa + c00092a6: 85a6 mv a1,s1 + c00092a8: bfc5 j c0009298 bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 return bf_cmp(a, b) == 0; - c00091bc: 85aa mv a1,a0 - c00091be: 8526 mv a0,s1 - c00091c0: 44b440ef jal ra,c004de0a - c00091c4: 00153413 seqz s0,a0 + c00092aa: 85aa mv a1,a0 + c00092ac: 8526 mv a0,s1 + c00092ae: 52d440ef jal ra,c004dfda + c00092b2: 00153413 seqz s0,a0 js_compare_bigfloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13889 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13897 break; - c00091c8: bf55 j c000917c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13891 + c00092b6: bf55 j c000926a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13899 abort(); - c00091ca: 6404c0ef jal ra,c005580a + c00092b8: 7224c0ef jal ra,c00559da -00000000c00091ce : +00000000c00092bc : JS_MarkValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5680 if (JS_VALUE_HAS_REF_COUNT(val)) { - c00091ce: 2609 addiw a2,a2,2 - c00091d0: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5671 + c00092bc: 2609 addiw a2,a2,2 + c00092be: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5679 { - c00091d2: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5672 + c00092c0: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5680 if (JS_VALUE_HAS_REF_COUNT(val)) { - c00091d4: 00c7e463 bltu a5,a2,c00091dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5682 + c00092c2: 00c7e463 bltu a5,a2,c00092ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5690 } - c00091d8: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5676 + c00092c6: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5684 mark_func(rt, JS_VALUE_GET_PTR(val)); - c00091da: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5682 + c00092c8: 8682 jr a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5690 } - c00091dc: 0141 addi sp,sp,16 - c00091de: 8082 ret + c00092ca: 0141 addi sp,sp,16 + c00092cc: 8082 ret -00000000c00091e0 : +00000000c00092ce : js_regexp_string_iterator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44289 -{ - c00091e0: 7179 addi sp,sp,-48 - c00091e2: f406 sd ra,40(sp) - c00091e4: f022 sd s0,32(sp) - c00091e6: ec26 sd s1,24(sp) - c00091e8: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44291 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44297 +{ + c00092ce: 7179 addi sp,sp,-48 + c00092d0: f406 sd ra,40(sp) + c00092d2: f022 sd s0,32(sp) + c00092d4: ec26 sd s1,24(sp) + c00092d6: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44299 JSRegExpStringIteratorData *it = p->u.regexp_string_iterator_data; - c00091ea: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44289 + c00092d8: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44297 { - c00091ec: e02e sd a1,0(sp) - c00091ee: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44292 + c00092da: e02e sd a1,0(sp) + c00092dc: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44300 if (it) { - c00091f0: c015 beqz s0,c0009214 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44293 + c00092de: c015 beqz s0,c0009302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44301 JS_MarkValue(rt, it->iterating_regexp, mark_func); - c00091f2: 600c ld a1,0(s0) - c00091f4: 6410 ld a2,8(s0) - c00091f6: 84aa mv s1,a0 - c00091f8: 8936 mv s2,a3 - c00091fa: fd5ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44294 + c00092e0: 600c ld a1,0(s0) + c00092e2: 6410 ld a2,8(s0) + c00092e4: 84aa mv s1,a0 + c00092e6: 8936 mv s2,a3 + c00092e8: fd5ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44302 JS_MarkValue(rt, it->iterated_string, mark_func); - c00091fe: 680c ld a1,16(s0) - c0009200: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44296 + c00092ec: 680c ld a1,16(s0) + c00092ee: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44304 } - c0009202: 7402 ld s0,32(sp) - c0009204: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44294 + c00092f0: 7402 ld s0,32(sp) + c00092f2: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44302 JS_MarkValue(rt, it->iterated_string, mark_func); - c0009206: 86ca mv a3,s2 - c0009208: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44296 -} - c000920a: 6942 ld s2,16(sp) - c000920c: 64e2 ld s1,24(sp) - c000920e: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44294 + c00092f4: 86ca mv a3,s2 + c00092f6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44304 +} + c00092f8: 6942 ld s2,16(sp) + c00092fa: 64e2 ld s1,24(sp) + c00092fc: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44302 JS_MarkValue(rt, it->iterated_string, mark_func); - c0009210: fbfff06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44296 + c00092fe: fbfff06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44304 } - c0009214: 70a2 ld ra,40(sp) - c0009216: 7402 ld s0,32(sp) - c0009218: 64e2 ld s1,24(sp) - c000921a: 6942 ld s2,16(sp) - c000921c: 6145 addi sp,sp,48 - c000921e: 8082 ret + c0009302: 70a2 ld ra,40(sp) + c0009304: 7402 ld s0,32(sp) + c0009306: 64e2 ld s1,24(sp) + c0009308: 6942 ld s2,16(sp) + c000930a: 6145 addi sp,sp,48 + c000930c: 8082 ret -00000000c0009220 : +00000000c000930e : js_array_iterator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40685 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40693 JSArrayIteratorData *it = p->u.array_iterator_data; - c0009220: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40683 + c000930e: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40691 { - c0009222: 1141 addi sp,sp,-16 - c0009224: e02e sd a1,0(sp) - c0009226: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40686 + c0009310: 1141 addi sp,sp,-16 + c0009312: e02e sd a1,0(sp) + c0009314: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40694 if (it) { - c0009228: c791 beqz a5,c0009234 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40687 + c0009316: c791 beqz a5,c0009322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40695 JS_MarkValue(rt, it->obj, mark_func); - c000922a: 638c ld a1,0(a5) - c000922c: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40689 + c0009318: 638c ld a1,0(a5) + c000931a: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40697 } - c000922e: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40687 + c000931c: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40695 JS_MarkValue(rt, it->obj, mark_func); - c0009230: f9fff06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40689 + c000931e: f9fff06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40697 } - c0009234: 0141 addi sp,sp,16 - c0009236: 8082 ret + c0009322: 0141 addi sp,sp,16 + c0009324: 8082 ret -00000000c0009238 : +00000000c0009326 : js_map_iterator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47564 it = p->u.map_iterator_data; - c0009238: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47553 + c0009326: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47561 { - c000923a: 1141 addi sp,sp,-16 - c000923c: e02e sd a1,0(sp) - c000923e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47557 + c0009328: 1141 addi sp,sp,-16 + c000932a: e02e sd a1,0(sp) + c000932c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47565 if (it) { - c0009240: c791 beqz a5,c000924c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47559 + c000932e: c791 beqz a5,c000933a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47567 JS_MarkValue(rt, it->obj, mark_func); - c0009242: 638c ld a1,0(a5) - c0009244: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47561 + c0009330: 638c ld a1,0(a5) + c0009332: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47569 } - c0009246: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47559 + c0009334: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47567 JS_MarkValue(rt, it->obj, mark_func); - c0009248: f87ff06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47561 + c0009336: f87ff06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47569 } - c000924c: 0141 addi sp,sp,16 - c000924e: 8082 ret + c000933a: 0141 addi sp,sp,16 + c000933c: 8082 ret -00000000c0009250 : +00000000c000933e : js_map_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47508 -{ - c0009250: 715d addi sp,sp,-80 - c0009252: e486 sd ra,72(sp) - c0009254: e0a2 sd s0,64(sp) - c0009256: fc26 sd s1,56(sp) - c0009258: f84a sd s2,48(sp) - c000925a: f44e sd s3,40(sp) - c000925c: f052 sd s4,32(sp) - c000925e: ec56 sd s5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47516 +{ + c000933e: 715d addi sp,sp,-80 + c0009340: e486 sd ra,72(sp) + c0009342: e0a2 sd s0,64(sp) + c0009344: fc26 sd s1,56(sp) + c0009346: f84a sd s2,48(sp) + c0009348: f44e sd s3,40(sp) + c000934a: f052 sd s4,32(sp) + c000934c: ec56 sd s5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47522 s = p->u.map_state; - c0009260: 7984 ld s1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47508 + c000934e: 7984 ld s1,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47516 { - c0009262: e02e sd a1,0(sp) - c0009264: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47515 + c0009350: e02e sd a1,0(sp) + c0009352: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47523 if (s) { - c0009266: c881 beqz s1,c0009276 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47516 + c0009354: c881 beqz s1,c0009364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47524 list_for_each(el, &s->records) { - c0009268: 6880 ld s0,16(s1) - c000926a: 892a mv s2,a0 - c000926c: 89b6 mv s3,a3 - c000926e: 00848a93 addi s5,s1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47516 (discriminator 1) - c0009272: 01541b63 bne s0,s5,c0009288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47523 -} - c0009276: 60a6 ld ra,72(sp) - c0009278: 6406 ld s0,64(sp) - c000927a: 74e2 ld s1,56(sp) - c000927c: 7942 ld s2,48(sp) - c000927e: 79a2 ld s3,40(sp) - c0009280: 7a02 ld s4,32(sp) - c0009282: 6ae2 ld s5,24(sp) - c0009284: 6161 addi sp,sp,80 - c0009286: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47518 + c0009356: 6880 ld s0,16(s1) + c0009358: 892a mv s2,a0 + c000935a: 89b6 mv s3,a3 + c000935c: 00848a93 addi s5,s1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47524 (discriminator 1) + c0009360: 01541b63 bne s0,s5,c0009376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47531 +} + c0009364: 60a6 ld ra,72(sp) + c0009366: 6406 ld s0,64(sp) + c0009368: 74e2 ld s1,56(sp) + c000936a: 7942 ld s2,48(sp) + c000936c: 79a2 ld s3,40(sp) + c000936e: 7a02 ld s4,32(sp) + c0009370: 6ae2 ld s5,24(sp) + c0009372: 6161 addi sp,sp,80 + c0009374: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47526 if (!s->is_weak) - c0009288: 409c lw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47517 + c0009376: 409c lw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47525 mr = list_entry(el, JSMapRecord, link); - c000928a: fe840a13 addi s4,s0,-24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47518 + c0009378: fe840a13 addi s4,s0,-24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47526 if (!s->is_weak) - c000928e: eb89 bnez a5,c00092a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47519 + c000937c: eb89 bnez a5,c000938e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47527 JS_MarkValue(rt, mr->key, mark_func); - c0009290: 038a3583 ld a1,56(s4) - c0009294: 040a3603 ld a2,64(s4) - c0009298: 86ce mv a3,s3 - c000929a: 854a mv a0,s2 - c000929c: f33ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47520 (discriminator 2) + c000937e: 038a3583 ld a1,56(s4) + c0009382: 040a3603 ld a2,64(s4) + c0009386: 86ce mv a3,s3 + c0009388: 854a mv a0,s2 + c000938a: f33ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47528 (discriminator 2) JS_MarkValue(rt, mr->value, mark_func); - c00092a0: 048a3583 ld a1,72(s4) - c00092a4: 050a3603 ld a2,80(s4) - c00092a8: 86ce mv a3,s3 - c00092aa: 854a mv a0,s2 - c00092ac: f23ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47516 (discriminator 2) + c000938e: 048a3583 ld a1,72(s4) + c0009392: 050a3603 ld a2,80(s4) + c0009396: 86ce mv a3,s3 + c0009398: 854a mv a0,s2 + c000939a: f23ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47524 (discriminator 2) list_for_each(el, &s->records) { - c00092b0: 6400 ld s0,8(s0) - c00092b2: b7c1 j c0009272 + c000939e: 6400 ld s0,8(s0) + c00093a0: b7c1 j c0009360 -00000000c00092b4 : +00000000c00093a2 : js_for_in_iterator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5496 JS_MarkValue(rt, it->obj, mark_func); - c00092b4: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5485 + c00093a2: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5493 { - c00092b6: 1141 addi sp,sp,-16 - c00092b8: e02e sd a1,0(sp) - c00092ba: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 + c00093a4: 1141 addi sp,sp,-16 + c00093a6: e02e sd a1,0(sp) + c00093a8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5496 JS_MarkValue(rt, it->obj, mark_func); - c00092bc: 638c ld a1,0(a5) - c00092be: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5489 + c00093aa: 638c ld a1,0(a5) + c00093ac: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5497 } - c00092c0: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5488 + c00093ae: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5496 JS_MarkValue(rt, it->obj, mark_func); - c00092c2: f0dff06f j c00091ce + c00093b0: f0dff06f j c00092bc -00000000c00092c6 : +00000000c00093b4 : js_bound_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 -{ - c00092c6: 7139 addi sp,sp,-64 - c00092c8: fc06 sd ra,56(sp) - c00092ca: f426 sd s1,40(sp) - c00092cc: f04a sd s2,32(sp) - c00092ce: ec4e sd s3,24(sp) - c00092d0: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5464 +{ + c00093b4: 7139 addi sp,sp,-64 + c00093b6: fc06 sd ra,56(sp) + c00093b8: f426 sd s1,40(sp) + c00093ba: f04a sd s2,32(sp) + c00093bc: ec4e sd s3,24(sp) + c00093be: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5466 JSBoundFunction *bf = p->u.bound_function; - c00092d2: 7980 ld s0,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 + c00093c0: 7980 ld s0,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5464 { - c00092d4: e02e sd a1,0(sp) - c00092d6: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5461 + c00093c2: e02e sd a1,0(sp) + c00093c4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5469 JS_MarkValue(rt, bf->func_obj, mark_func); - c00092d8: 600c ld a1,0(s0) - c00092da: 6410 ld a2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5456 + c00093c6: 600c ld a1,0(s0) + c00093c8: 6410 ld a2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5464 { - c00092dc: 892a mv s2,a0 - c00092de: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5461 + c00093ca: 892a mv s2,a0 + c00093cc: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5469 JS_MarkValue(rt, bf->func_obj, mark_func); - c00092e0: eefff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5462 + c00093ce: eefff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5470 JS_MarkValue(rt, bf->this_val, mark_func); - c00092e4: 680c ld a1,16(s0) - c00092e6: 6c10 ld a2,24(s0) - c00092e8: 86ce mv a3,s3 - c00092ea: 854a mv a0,s2 - c00092ec: ee3ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5463 + c00093d2: 680c ld a1,16(s0) + c00093d4: 6c10 ld a2,24(s0) + c00093d6: 86ce mv a3,s3 + c00093d8: 854a mv a0,s2 + c00093da: ee3ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5471 for(i = 0; i < bf->argc; i++) - c00092f0: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5463 (discriminator 1) - c00092f2: 501c lw a5,32(s0) - c00092f4: 00f4c963 blt s1,a5,c0009306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5465 -} - c00092f8: 70e2 ld ra,56(sp) - c00092fa: 7442 ld s0,48(sp) - c00092fc: 74a2 ld s1,40(sp) - c00092fe: 7902 ld s2,32(sp) - c0009300: 69e2 ld s3,24(sp) - c0009302: 6121 addi sp,sp,64 - c0009304: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5464 (discriminator 3) + c00093de: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5471 (discriminator 1) + c00093e0: 501c lw a5,32(s0) + c00093e2: 00f4c963 blt s1,a5,c00093f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5473 +} + c00093e6: 70e2 ld ra,56(sp) + c00093e8: 7442 ld s0,48(sp) + c00093ea: 74a2 ld s1,40(sp) + c00093ec: 7902 ld s2,32(sp) + c00093ee: 69e2 ld s3,24(sp) + c00093f0: 6121 addi sp,sp,64 + c00093f2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5472 (discriminator 3) JS_MarkValue(rt, bf->argv[i], mark_func); - c0009306: 00248793 addi a5,s1,2 - c000930a: 0792 slli a5,a5,0x4 - c000930c: 97a2 add a5,a5,s0 - c000930e: 678c ld a1,8(a5) - c0009310: 6b90 ld a2,16(a5) - c0009312: 86ce mv a3,s3 - c0009314: 854a mv a0,s2 - c0009316: eb9ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5463 (discriminator 3) + c00093f4: 00248793 addi a5,s1,2 + c00093f8: 0792 slli a5,a5,0x4 + c00093fa: 97a2 add a5,a5,s0 + c00093fc: 678c ld a1,8(a5) + c00093fe: 6b90 ld a2,16(a5) + c0009400: 86ce mv a3,s3 + c0009402: 854a mv a0,s2 + c0009404: eb9ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5471 (discriminator 3) for(i = 0; i < bf->argc; i++) - c000931a: 2485 addiw s1,s1,1 - c000931c: bfd9 j c00092f2 + c0009408: 2485 addiw s1,s1,1 + c000940a: bfd9 j c00093e0 -00000000c000931e : +00000000c000940c : js_object_data_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5376 { - c000931e: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5370 + c000940c: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5378 JS_MarkValue(rt, p->u.object_data, mark_func); - c0009320: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5368 + c000940e: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5376 { - c0009322: e02e sd a1,0(sp) - c0009324: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5370 + c0009410: e02e sd a1,0(sp) + c0009412: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5378 JS_MarkValue(rt, p->u.object_data, mark_func); - c0009326: 798c ld a1,48(a1) - c0009328: 7f90 ld a2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5371 + c0009414: 798c ld a1,48(a1) + c0009416: 7f90 ld a2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5379 } - c000932a: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5370 + c0009418: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5378 JS_MarkValue(rt, p->u.object_data, mark_func); - c000932c: ea3ff06f j c00091ce + c000941a: ea3ff06f j c00092bc -00000000c0009330 : +00000000c000941e : js_array_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5350 -{ - c0009330: 7139 addi sp,sp,-64 - c0009332: f822 sd s0,48(sp) - c0009334: f426 sd s1,40(sp) - c0009336: f04a sd s2,32(sp) - c0009338: ec4e sd s3,24(sp) - c000933a: fc06 sd ra,56(sp) - c000933c: 892a mv s2,a0 - c000933e: e02e sd a1,0(sp) - c0009340: e432 sd a2,8(sp) - c0009342: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5358 +{ + c000941e: 7139 addi sp,sp,-64 + c0009420: f822 sd s0,48(sp) + c0009422: f426 sd s1,40(sp) + c0009424: f04a sd s2,32(sp) + c0009426: ec4e sd s3,24(sp) + c0009428: fc06 sd ra,56(sp) + c000942a: 892a mv s2,a0 + c000942c: e02e sd a1,0(sp) + c000942e: e432 sd a2,8(sp) + c0009430: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5359 JSObject *p = JS_VALUE_GET_OBJ(val); - c0009344: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5354 + c0009432: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5362 for(i = 0; i < p->u.array.count; i++) { - c0009346: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5354 (discriminator 1) - c0009348: 40bc lw a5,64(s1) - c000934a: 00f46963 bltu s0,a5,c000935c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5357 -} - c000934e: 70e2 ld ra,56(sp) - c0009350: 7442 ld s0,48(sp) - c0009352: 74a2 ld s1,40(sp) - c0009354: 7902 ld s2,32(sp) - c0009356: 69e2 ld s3,24(sp) - c0009358: 6121 addi sp,sp,64 - c000935a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5355 (discriminator 3) + c0009434: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5362 (discriminator 1) + c0009436: 40bc lw a5,64(s1) + c0009438: 00f46963 bltu s0,a5,c000944a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5365 +} + c000943c: 70e2 ld ra,56(sp) + c000943e: 7442 ld s0,48(sp) + c0009440: 74a2 ld s1,40(sp) + c0009442: 7902 ld s2,32(sp) + c0009444: 69e2 ld s3,24(sp) + c0009446: 6121 addi sp,sp,64 + c0009448: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5363 (discriminator 3) JS_MarkValue(rt, p->u.array.u.values[i], mark_func); - c000935c: 7c9c ld a5,56(s1) - c000935e: 00441713 slli a4,s0,0x4 - c0009362: 86ce mv a3,s3 - c0009364: 97ba add a5,a5,a4 - c0009366: 638c ld a1,0(a5) - c0009368: 6790 ld a2,8(a5) - c000936a: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5354 (discriminator 3) + c000944a: 7c9c ld a5,56(s1) + c000944c: 00441713 slli a4,s0,0x4 + c0009450: 86ce mv a3,s3 + c0009452: 97ba add a5,a5,a4 + c0009454: 638c ld a1,0(a5) + c0009456: 6790 ld a2,8(a5) + c0009458: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5362 (discriminator 3) for(i = 0; i < p->u.array.count; i++) { - c000936c: 2405 addiw s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5355 (discriminator 3) + c000945a: 2405 addiw s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5363 (discriminator 3) JS_MarkValue(rt, p->u.array.u.values[i], mark_func); - c000936e: e61ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5354 (discriminator 3) + c000945c: e61ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5362 (discriminator 3) for(i = 0; i < p->u.array.count; i++) { - c0009372: bfd9 j c0009348 + c0009460: bfd9 j c0009436 -00000000c0009374 : +00000000c0009462 : mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5686 -{ - c0009374: 7159 addi sp,sp,-112 - c0009376: f486 sd ra,104(sp) - c0009378: f0a2 sd s0,96(sp) - c000937a: eca6 sd s1,88(sp) - c000937c: e8ca sd s2,80(sp) - c000937e: e4ce sd s3,72(sp) - c0009380: e0d2 sd s4,64(sp) - c0009382: fc56 sd s5,56(sp) - c0009384: f85a sd s6,48(sp) - c0009386: f45e sd s7,40(sp) - c0009388: f062 sd s8,32(sp) - c000938a: ec66 sd s9,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5687 - switch(gp->gc_obj_type) { - c000938c: 0045e783 lwu a5,4(a1) - c0009390: 4715 li a4,5 - c0009392: 8bbd andi a5,a5,15 - c0009394: 32f76d63 bltu a4,a5,c00096ce - c0009398: 00054717 auipc a4,0x54 - c000939c: 86470713 addi a4,a4,-1948 # c005cbfc - c00093a0: 078a slli a5,a5,0x2 - c00093a2: 97ba add a5,a5,a4 - c00093a4: 439c lw a5,0(a5) - c00093a6: 84aa mv s1,a0 - c00093a8: 842e mv s0,a1 - c00093aa: 97ba add a5,a5,a4 - c00093ac: 8932 mv s2,a2 - c00093ae: 8782 jr a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5694 +{ + c0009462: 7159 addi sp,sp,-112 + c0009464: f486 sd ra,104(sp) + c0009466: f0a2 sd s0,96(sp) + c0009468: eca6 sd s1,88(sp) + c000946a: e8ca sd s2,80(sp) + c000946c: e4ce sd s3,72(sp) + c000946e: e0d2 sd s4,64(sp) + c0009470: fc56 sd s5,56(sp) + c0009472: f85a sd s6,48(sp) + c0009474: f45e sd s7,40(sp) + c0009476: f062 sd s8,32(sp) + c0009478: ec66 sd s9,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5695 + switch(gp->gc_obj_type) { + c000947a: 0045e783 lwu a5,4(a1) + c000947e: 4715 li a4,5 + c0009480: 8bbd andi a5,a5,15 + c0009482: 32f76d63 bltu a4,a5,c00097bc + c0009486: 00054717 auipc a4,0x54 + c000948a: 9a670713 addi a4,a4,-1626 # c005ce2c + c000948e: 078a slli a5,a5,0x2 + c0009490: 97ba add a5,a5,a4 + c0009492: 439c lw a5,0(a5) + c0009494: 84aa mv s1,a0 + c0009496: 842e mv s0,a1 + c0009498: 97ba add a5,a5,a4 + c000949a: 8932 mv s2,a2 + c000949c: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5702 sh = p->shape; - c00093b0: 0185bb03 ld s6,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5698 + c000949e: 0185bb03 ld s6,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5706 for(i = 0; i < sh->prop_count; i++) { - c00093b4: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5702 + c00094a2: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5710 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c00093b6: 4bc1 li s7,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5695 + c00094a4: 4bc1 li s7,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5703 mark_func(rt, &sh->header); - c00093b8: 85da mv a1,s6 - c00093ba: 9602 jalr a2 + c00094a6: 85da mv a1,s6 + c00094a8: 9602 jalr a2 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00093bc: 040b0a93 addi s5,s6,64 # 40000040 <__clzdi2-0x7fffffc0> + c00094aa: 040b0a93 addi s5,s6,64 # 40000040 <__clzdi2-0x7fffffc0> mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5707 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5715 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c00093c0: 02000c13 li s8,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5711 + c00094ae: 02000c13 li s8,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5719 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c00093c4: 03000c93 li s9,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5698 (discriminator 1) + c00094b2: 03000c93 li s9,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5706 (discriminator 1) for(i = 0; i < sh->prop_count; i++) { - c00093c8: 028b2783 lw a5,40(s6) - c00093cc: 04fa4163 blt s4,a5,c000940e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5721 + c00094b6: 028b2783 lw a5,40(s6) + c00094ba: 04fa4163 blt s4,a5,c00094fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5729 if (p->class_id != JS_CLASS_OBJECT) { - c00093d0: 00645783 lhu a5,6(s0) - c00093d4: 4705 li a4,1 - c00093d6: 2ee78e63 beq a5,a4,c00096d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5723 + c00094be: 00645783 lhu a5,6(s0) + c00094c2: 4705 li a4,1 + c00094c4: 2ee78e63 beq a5,a4,c00097c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5731 gc_mark = rt->class_array[p->class_id].gc_mark; - c00093da: 02800693 li a3,40 - c00093de: 02d787b3 mul a5,a5,a3 - c00093e2: 78b8 ld a4,112(s1) - c00093e4: 97ba add a5,a5,a4 - c00093e6: 6b9c ld a5,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5724 + c00094c8: 02800693 li a3,40 + c00094cc: 02d787b3 mul a5,a5,a3 + c00094d0: 78b8 ld a4,112(s1) + c00094d2: 97ba add a5,a5,a4 + c00094d4: 6b9c ld a5,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5732 if (gc_mark) - c00093e8: 2e078563 beqz a5,c00096d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5725 + c00094d6: 2e078563 beqz a5,c00097c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5733 gc_mark(rt, JS_MKPTR(JS_TAG_OBJECT, p), mark_func); - c00093ec: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 -} - c00093ee: 7406 ld s0,96(sp) - c00093f0: 70a6 ld ra,104(sp) - c00093f2: 69a6 ld s3,72(sp) - c00093f4: 6a06 ld s4,64(sp) - c00093f6: 7ae2 ld s5,56(sp) - c00093f8: 7b42 ld s6,48(sp) - c00093fa: 7ba2 ld s7,40(sp) - c00093fc: 7c02 ld s8,32(sp) - c00093fe: 6ce2 ld s9,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5725 + c00094da: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 +} + c00094dc: 7406 ld s0,96(sp) + c00094de: 70a6 ld ra,104(sp) + c00094e0: 69a6 ld s3,72(sp) + c00094e2: 6a06 ld s4,64(sp) + c00094e4: 7ae2 ld s5,56(sp) + c00094e6: 7b42 ld s6,48(sp) + c00094e8: 7ba2 ld s7,40(sp) + c00094ea: 7c02 ld s8,32(sp) + c00094ec: 6ce2 ld s9,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5733 gc_mark(rt, JS_MKPTR(JS_TAG_OBJECT, p), mark_func); - c0009400: 86ca mv a3,s2 - c0009402: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 + c00094ee: 86ca mv a3,s2 + c00094f0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 } - c0009404: 6946 ld s2,80(sp) - c0009406: 64e6 ld s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5725 + c00094f2: 6946 ld s2,80(sp) + c00094f4: 64e6 ld s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5733 gc_mark(rt, JS_MKPTR(JS_TAG_OBJECT, p), mark_func); - c0009408: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 + c00094f6: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 } - c000940a: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5725 + c00094f8: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5733 gc_mark(rt, JS_MKPTR(JS_TAG_OBJECT, p), mark_func); - c000940c: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5700 + c00094fa: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5708 if (prs->atom != JS_ATOM_NULL) { - c000940e: 004aa783 lw a5,4(s5) - c0009412: cb85 beqz a5,c0009442 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5699 + c00094fc: 004aa783 lw a5,4(s5) + c0009500: cb85 beqz a5,c0009530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5707 JSProperty *pr = &p->prop[i]; - c0009414: 701c ld a5,32(s0) - c0009416: 004a1993 slli s3,s4,0x4 - c000941a: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5701 + c0009502: 701c ld a5,32(s0) + c0009504: 004a1993 slli s3,s4,0x4 + c0009508: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5709 if (prs->flags & JS_PROP_TMASK) { - c000941c: 000aa783 lw a5,0(s5) - c0009420: 01a7d79b srliw a5,a5,0x1a - c0009424: 0307f793 andi a5,a5,48 - c0009428: cb9d beqz a5,c000945e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5702 + c000950a: 000aa783 lw a5,0(s5) + c000950e: 01a7d79b srliw a5,a5,0x1a + c0009512: 0307f793 andi a5,a5,48 + c0009516: cb9d beqz a5,c000954c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5710 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c000942a: 01779f63 bne a5,s7,c0009448 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5703 + c0009518: 01779f63 bne a5,s7,c0009536 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5711 if (pr->u.getset.getter) - c000942e: 0009b583 ld a1,0(s3) - c0009432: c199 beqz a1,c0009438 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5704 + c000951c: 0009b583 ld a1,0(s3) + c0009520: c199 beqz a1,c0009526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5712 mark_func(rt, &pr->u.getset.getter->header); - c0009434: 8526 mv a0,s1 - c0009436: 9902 jalr s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5705 + c0009522: 8526 mv a0,s1 + c0009524: 9902 jalr s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5713 if (pr->u.getset.setter) - c0009438: 0089b583 ld a1,8(s3) - c000943c: c199 beqz a1,c0009442 + c0009526: 0089b583 ld a1,8(s3) + c000952a: c199 beqz a1,c0009530 js_autoinit_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5249 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5257 mark_func(rt, &js_autoinit_get_realm(pr)->header); - c000943e: 8526 mv a0,s1 - c0009440: 9902 jalr s2 + c000952c: 8526 mv a0,s1 + c000952e: 9902 jalr s2 mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5718 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5726 (discriminator 2) prs++; - c0009442: 0aa1 addi s5,s5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5698 (discriminator 2) + c0009530: 0aa1 addi s5,s5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5706 (discriminator 2) for(i = 0; i < sh->prop_count; i++) { - c0009444: 2a05 addiw s4,s4,1 - c0009446: b749 j c00093c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5707 + c0009532: 2a05 addiw s4,s4,1 + c0009534: b749 j c00094b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5715 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0009448: 01879563 bne a5,s8,c0009452 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5710 + c0009536: 01879563 bne a5,s8,c0009540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5718 mark_func(rt, &pr->u.var_ref->header); - c000944c: 0009b583 ld a1,0(s3) - c0009450: b7fd j c000943e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5711 + c000953a: 0009b583 ld a1,0(s3) + c000953e: b7fd j c000952c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5719 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c0009452: ff9798e3 bne a5,s9,c0009442 + c0009540: ff9798e3 bne a5,s9,c0009530 js_autoinit_get_realm(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5241 return (JSContext *)(pr->u.init.realm_and_id & ~3); - c0009456: 0009b583 ld a1,0(s3) + c0009544: 0009b583 ld a1,0(s3) js_autoinit_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5249 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5257 mark_func(rt, &js_autoinit_get_realm(pr)->header); - c000945a: 99f1 andi a1,a1,-4 - c000945c: b7cd j c000943e + c0009548: 99f1 andi a1,a1,-4 + c000954a: b7cd j c000952c mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5715 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5723 JS_MarkValue(rt, pr->u.value, mark_func); - c000945e: 0009b583 ld a1,0(s3) - c0009462: 0089b603 ld a2,8(s3) - c0009466: 86ca mv a3,s2 - c0009468: 8526 mv a0,s1 - c000946a: d65ff0ef jal ra,c00091ce - c000946e: bfd1 j c0009442 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5735 (discriminator 3) + c000954c: 0009b583 ld a1,0(s3) + c0009550: 0089b603 ld a2,8(s3) + c0009554: 86ca mv a3,s2 + c0009556: 8526 mv a0,s1 + c0009558: d65ff0ef jal ra,c00092bc + c000955c: bfd1 j c0009530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5743 (discriminator 3) JS_MarkValue(rt, b->cpool[i], mark_func); - c0009470: 683c ld a5,80(s0) - c0009472: 00499713 slli a4,s3,0x4 - c0009476: 86ca mv a3,s2 - c0009478: 97ba add a5,a5,a4 - c000947a: 638c ld a1,0(a5) - c000947c: 6790 ld a2,8(a5) - c000947e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5734 (discriminator 3) + c000955e: 683c ld a5,80(s0) + c0009560: 00499713 slli a4,s3,0x4 + c0009564: 86ca mv a3,s2 + c0009566: 97ba add a5,a5,a4 + c0009568: 638c ld a1,0(a5) + c000956a: 6790 ld a2,8(a5) + c000956c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5742 (discriminator 3) for(i = 0; i < b->cpool_count; i++) { - c0009480: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5735 (discriminator 3) + c000956e: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5743 (discriminator 3) JS_MarkValue(rt, b->cpool[i], mark_func); - c0009482: d4dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5734 (discriminator 1) + c0009570: d4dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5742 (discriminator 1) for(i = 0; i < b->cpool_count; i++) { - c0009486: 4c3c lw a5,88(s0) - c0009488: fef9c4e3 blt s3,a5,c0009470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5737 + c0009574: 4c3c lw a5,88(s0) + c0009576: fef9c4e3 blt s3,a5,c000955e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5745 if (b->realm) - c000948c: 642c ld a1,72(s0) + c000957a: 642c ld a1,72(s0) JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2300 if (ctx->array_shape) - c000948e: 24058263 beqz a1,c00096d2 + c000957c: 24058263 beqz a1,c00097c0 mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 -} - c0009492: 7406 ld s0,96(sp) - c0009494: 70a6 ld ra,104(sp) - c0009496: 69a6 ld s3,72(sp) - c0009498: 6a06 ld s4,64(sp) - c000949a: 7ae2 ld s5,56(sp) - c000949c: 7b42 ld s6,48(sp) - c000949e: 7ba2 ld s7,40(sp) - c00094a0: 7c02 ld s8,32(sp) - c00094a2: 6ce2 ld s9,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 +} + c0009580: 7406 ld s0,96(sp) + c0009582: 70a6 ld ra,104(sp) + c0009584: 69a6 ld s3,72(sp) + c0009586: 6a06 ld s4,64(sp) + c0009588: 7ae2 ld s5,56(sp) + c000958a: 7b42 ld s6,48(sp) + c000958c: 7ba2 ld s7,40(sp) + c000958e: 7c02 ld s8,32(sp) + c0009590: 6ce2 ld s9,24(sp) JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2293 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2301 mark_func(rt, &ctx->array_shape->header); - c00094a4: 8526 mv a0,s1 - c00094a6: 87ca mv a5,s2 + c0009592: 8526 mv a0,s1 + c0009594: 87ca mv a5,s2 mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 } - c00094a8: 64e6 ld s1,88(sp) - c00094aa: 6946 ld s2,80(sp) - c00094ac: 6165 addi sp,sp,112 + c0009596: 64e6 ld s1,88(sp) + c0009598: 6946 ld s2,80(sp) + c000959a: 6165 addi sp,sp,112 JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2293 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2301 mark_func(rt, &ctx->array_shape->header); - c00094ae: 8782 jr a5 + c000959c: 8782 jr a5 mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5687 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5695 switch(gp->gc_obj_type) { - c00094b0: 4981 li s3,0 - c00094b2: bfd1 j c0009486 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5744 + c000959e: 4981 li s3,0 + c00095a0: bfd1 j c0009574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5752 if (var_ref->is_detached) { - c00094b4: 0055c783 lbu a5,5(a1) - c00094b8: 8b85 andi a5,a5,1 - c00094ba: c785 beqz a5,c00094e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5745 + c00095a2: 0055c783 lbu a5,5(a1) + c00095a6: 8b85 andi a5,a5,1 + c00095a8: c785 beqz a5,c00095d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5753 JS_MarkValue(rt, *var_ref->pvalue, mark_func); - c00094bc: 6d9c ld a5,24(a1) - c00094be: 86b2 mv a3,a2 - c00094c0: 638c ld a1,0(a5) - c00094c2: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 -} - c00094c4: 7406 ld s0,96(sp) - c00094c6: 70a6 ld ra,104(sp) - c00094c8: 6946 ld s2,80(sp) - c00094ca: 69a6 ld s3,72(sp) - c00094cc: 6a06 ld s4,64(sp) - c00094ce: 7ae2 ld s5,56(sp) - c00094d0: 7b42 ld s6,48(sp) - c00094d2: 7ba2 ld s7,40(sp) - c00094d4: 7c02 ld s8,32(sp) - c00094d6: 6ce2 ld s9,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5771 + c00095aa: 6d9c ld a5,24(a1) + c00095ac: 86b2 mv a3,a2 + c00095ae: 638c ld a1,0(a5) + c00095b0: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 +} + c00095b2: 7406 ld s0,96(sp) + c00095b4: 70a6 ld ra,104(sp) + c00095b6: 6946 ld s2,80(sp) + c00095b8: 69a6 ld s3,72(sp) + c00095ba: 6a06 ld s4,64(sp) + c00095bc: 7ae2 ld s5,56(sp) + c00095be: 7b42 ld s6,48(sp) + c00095c0: 7ba2 ld s7,40(sp) + c00095c2: 7c02 ld s8,32(sp) + c00095c4: 6ce2 ld s9,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5779 JS_MarkValue(rt, s->resolving_funcs[1], mark_func); - c00094d8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 + c00095c6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 } - c00094da: 64e6 ld s1,88(sp) - c00094dc: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5771 + c00095c8: 64e6 ld s1,88(sp) + c00095ca: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5779 JS_MarkValue(rt, s->resolving_funcs[1], mark_func); - c00094de: cf1ff06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5746 + c00095cc: cf1ff06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5754 } else if (var_ref->async_func) { - c00094e2: 798c ld a1,48(a1) - c00094e4: b76d j c000948e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5757 + c00095d0: 798c ld a1,48(a1) + c00095d2: b76d j c000957c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5765 if (!s->is_completed) { - c00094e6: 599c lw a5,48(a1) - c00094e8: cb99 beqz a5,c00094fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5770 + c00095d4: 599c lw a5,48(a1) + c00095d6: cb99 beqz a5,c00095ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5778 JS_MarkValue(rt, s->resolving_funcs[0], mark_func); - c00094ea: 7c0c ld a1,56(s0) - c00094ec: 6030 ld a2,64(s0) - c00094ee: 86ca mv a3,s2 - c00094f0: 8526 mv a0,s1 - c00094f2: cddff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5771 + c00095d8: 7c0c ld a1,56(s0) + c00095da: 6030 ld a2,64(s0) + c00095dc: 86ca mv a3,s2 + c00095de: 8526 mv a0,s1 + c00095e0: cddff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5779 JS_MarkValue(rt, s->resolving_funcs[1], mark_func); - c00094f6: 642c ld a1,72(s0) - c00094f8: 6830 ld a2,80(s0) - c00094fa: 86ca mv a3,s2 - c00094fc: b7e1 j c00094c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5758 + c00095e4: 642c ld a1,72(s0) + c00095e6: 6830 ld a2,80(s0) + c00095e8: 86ca mv a3,s2 + c00095ea: b7e1 j c00095b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5766 JS_MarkValue(rt, sf->cur_func, mark_func); - c00094fe: 86b2 mv a3,a2 - c0009500: 71ac ld a1,96(a1) - c0009502: 7430 ld a2,104(s0) - c0009504: ccbff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5759 + c00095ec: 86b2 mv a3,a2 + c00095ee: 71ac ld a1,96(a1) + c00095f0: 7430 ld a2,104(s0) + c00095f2: ccbff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5767 JS_MarkValue(rt, s->this_val, mark_func); - c0009508: 6c0c ld a1,24(s0) - c000950a: 7010 ld a2,32(s0) - c000950c: 86ca mv a3,s2 - c000950e: 8526 mv a0,s1 - c0009510: cbfff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5761 + c00095f6: 6c0c ld a1,24(s0) + c00095f8: 7010 ld a2,32(s0) + c00095fa: 86ca mv a3,s2 + c00095fc: 8526 mv a0,s1 + c00095fe: cbfff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5769 if (sf->cur_sp) { - c0009514: 705c ld a5,160(s0) - c0009516: dbf1 beqz a5,c00094ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5766 + c0009602: 705c ld a5,160(s0) + c0009604: dbf1 beqz a5,c00095d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5774 for(sp = sf->arg_buf; sp < sf->cur_sp; sp++) - c0009518: 07043983 ld s3,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5766 (discriminator 1) - c000951c: 705c ld a5,160(s0) - c000951e: fcf9f6e3 bgeu s3,a5,c00094ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5767 (discriminator 3) + c0009606: 07043983 ld s3,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5774 (discriminator 1) + c000960a: 705c ld a5,160(s0) + c000960c: fcf9f6e3 bgeu s3,a5,c00095d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5775 (discriminator 3) JS_MarkValue(rt, *sp, mark_func); - c0009522: 0009b583 ld a1,0(s3) - c0009526: 0089b603 ld a2,8(s3) - c000952a: 86ca mv a3,s2 - c000952c: 8526 mv a0,s1 - c000952e: ca1ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5766 (discriminator 3) + c0009610: 0009b583 ld a1,0(s3) + c0009614: 0089b603 ld a2,8(s3) + c0009618: 86ca mv a3,s2 + c000961a: 8526 mv a0,s1 + c000961c: ca1ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5774 (discriminator 3) for(sp = sf->arg_buf; sp < sf->cur_sp; sp++) - c0009532: 09c1 addi s3,s3,16 - c0009534: b7e5 j c000951c + c0009620: 09c1 addi s3,s3,16 + c0009622: b7e5 j c000960a JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2266 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2274 list_for_each(el, &ctx->loaded_modules) { - c0009536: 1a85ba03 ld s4,424(a1) - c000953a: 1a058b13 addi s6,a1,416 - c000953e: 0d6a1d63 bne s4,s6,c0009618 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2271 + c0009624: 1a85ba03 ld s4,424(a1) + c0009628: 1a058b13 addi s6,a1,416 + c000962c: 0d6a1d63 bne s4,s6,c0009706 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2279 JS_MarkValue(rt, ctx->global_obj, mark_func); - c0009542: 16843583 ld a1,360(s0) - c0009546: 17043603 ld a2,368(s0) - c000954a: 86ca mv a3,s2 - c000954c: 8526 mv a0,s1 - c000954e: c81ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2272 + c0009630: 16843583 ld a1,360(s0) + c0009634: 17043603 ld a2,368(s0) + c0009638: 86ca mv a3,s2 + c000963a: 8526 mv a0,s1 + c000963c: c81ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2280 JS_MarkValue(rt, ctx->global_var_obj, mark_func); - c0009552: 17843583 ld a1,376(s0) - c0009556: 18043603 ld a2,384(s0) - c000955a: 86ca mv a3,s2 - c000955c: 8526 mv a0,s1 - c000955e: c71ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2274 + c0009640: 17843583 ld a1,376(s0) + c0009644: 18043603 ld a2,384(s0) + c0009648: 86ca mv a3,s2 + c000964a: 8526 mv a0,s1 + c000964c: c71ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2282 JS_MarkValue(rt, ctx->throw_type_error, mark_func); - c0009562: 14843583 ld a1,328(s0) - c0009566: 15043603 ld a2,336(s0) - c000956a: 86ca mv a3,s2 - c000956c: 8526 mv a0,s1 - c000956e: c61ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2275 + c0009650: 14843583 ld a1,328(s0) + c0009654: 15043603 ld a2,336(s0) + c0009658: 86ca mv a3,s2 + c000965a: 8526 mv a0,s1 + c000965c: c61ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2283 JS_MarkValue(rt, ctx->eval_obj, mark_func); - c0009572: 15843583 ld a1,344(s0) - c0009576: 16043603 ld a2,352(s0) - c000957a: 86ca mv a3,s2 - c000957c: 8526 mv a0,s1 - c000957e: c51ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2277 + c0009660: 15843583 ld a1,344(s0) + c0009664: 16043603 ld a2,352(s0) + c0009668: 86ca mv a3,s2 + c000966a: 8526 mv a0,s1 + c000966c: c51ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2285 JS_MarkValue(rt, ctx->array_proto_values, mark_func); - c0009582: 13843583 ld a1,312(s0) - c0009586: 14043603 ld a2,320(s0) - c000958a: 86ca mv a3,s2 - c000958c: 8526 mv a0,s1 - c000958e: c41ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2278 + c0009670: 13843583 ld a1,312(s0) + c0009674: 14043603 ld a2,320(s0) + c0009678: 86ca mv a3,s2 + c000967a: 8526 mv a0,s1 + c000967c: c41ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2286 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c0009592: 4981 li s3,0 - c0009594: 4a21 li s4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2279 + c0009680: 4981 li s3,0 + c0009682: 4a21 li s4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2287 JS_MarkValue(rt, ctx->native_error_proto[i], mark_func); - c0009596: 00998793 addi a5,s3,9 - c000959a: 0792 slli a5,a5,0x4 - c000959c: 97a2 add a5,a5,s0 - c000959e: 678c ld a1,8(a5) - c00095a0: 6b90 ld a2,16(a5) - c00095a2: 86ca mv a3,s2 - c00095a4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2278 + c0009684: 00998793 addi a5,s3,9 + c0009688: 0792 slli a5,a5,0x4 + c000968a: 97a2 add a5,a5,s0 + c000968c: 678c ld a1,8(a5) + c000968e: 6b90 ld a2,16(a5) + c0009690: 86ca mv a3,s2 + c0009692: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2286 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00095a6: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2279 + c0009694: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2287 JS_MarkValue(rt, ctx->native_error_proto[i], mark_func); - c00095a8: c27ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2278 + c0009696: c27ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2286 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00095ac: ff4995e3 bne s3,s4,c0009596 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2281 + c000969a: ff4995e3 bne s3,s4,c0009684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2289 for(i = 0; i < rt->class_count; i++) { - c00095b0: 4981 li s3,0 - c00095b2: 54fc lw a5,108(s1) - c00095b4: 10f9c163 blt s3,a5,c00096b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2284 + c000969e: 4981 li s3,0 + c00096a0: 54fc lw a5,108(s1) + c00096a2: 10f9c163 blt s3,a5,c00097a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2292 JS_MarkValue(rt, ctx->iterator_proto, mark_func); - c00095b8: 11843583 ld a1,280(s0) - c00095bc: 12043603 ld a2,288(s0) - c00095c0: 86ca mv a3,s2 - c00095c2: 8526 mv a0,s1 - c00095c4: c0bff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2285 + c00096a6: 11843583 ld a1,280(s0) + c00096aa: 12043603 ld a2,288(s0) + c00096ae: 86ca mv a3,s2 + c00096b0: 8526 mv a0,s1 + c00096b2: c0bff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2293 JS_MarkValue(rt, ctx->async_iterator_proto, mark_func); - c00095c8: 12843583 ld a1,296(s0) - c00095cc: 13043603 ld a2,304(s0) - c00095d0: 86ca mv a3,s2 - c00095d2: 8526 mv a0,s1 - c00095d4: bfbff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2286 + c00096b6: 12843583 ld a1,296(s0) + c00096ba: 13043603 ld a2,304(s0) + c00096be: 86ca mv a3,s2 + c00096c0: 8526 mv a0,s1 + c00096c2: bfbff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2294 JS_MarkValue(rt, ctx->promise_ctor, mark_func); - c00095d8: 644c ld a1,136(s0) - c00095da: 6850 ld a2,144(s0) - c00095dc: 86ca mv a3,s2 - c00095de: 8526 mv a0,s1 - c00095e0: befff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2287 + c00096c6: 644c ld a1,136(s0) + c00096c8: 6850 ld a2,144(s0) + c00096ca: 86ca mv a3,s2 + c00096cc: 8526 mv a0,s1 + c00096ce: befff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2295 JS_MarkValue(rt, ctx->array_ctor, mark_func); - c00095e4: 742c ld a1,104(s0) - c00095e6: 7830 ld a2,112(s0) - c00095e8: 86ca mv a3,s2 - c00095ea: 8526 mv a0,s1 - c00095ec: be3ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2288 + c00096d2: 742c ld a1,104(s0) + c00096d4: 7830 ld a2,112(s0) + c00096d6: 86ca mv a3,s2 + c00096d8: 8526 mv a0,s1 + c00096da: be3ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2296 JS_MarkValue(rt, ctx->regexp_ctor, mark_func); - c00095f0: 7c2c ld a1,120(s0) - c00095f2: 6050 ld a2,128(s0) - c00095f4: 86ca mv a3,s2 - c00095f6: 8526 mv a0,s1 - c00095f8: bd7ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2289 + c00096de: 7c2c ld a1,120(s0) + c00096e0: 6050 ld a2,128(s0) + c00096e2: 86ca mv a3,s2 + c00096e4: 8526 mv a0,s1 + c00096e6: bd7ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2297 JS_MarkValue(rt, ctx->function_ctor, mark_func); - c00095fc: 6c2c ld a1,88(s0) - c00095fe: 7030 ld a2,96(s0) - c0009600: 86ca mv a3,s2 - c0009602: 8526 mv a0,s1 - c0009604: bcbff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2290 + c00096ea: 6c2c ld a1,88(s0) + c00096ec: 7030 ld a2,96(s0) + c00096ee: 86ca mv a3,s2 + c00096f0: 8526 mv a0,s1 + c00096f2: bcbff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2298 JS_MarkValue(rt, ctx->function_proto, mark_func); - c0009608: 642c ld a1,72(s0) - c000960a: 6830 ld a2,80(s0) - c000960c: 86ca mv a3,s2 - c000960e: 8526 mv a0,s1 - c0009610: bbfff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2292 + c00096f6: 642c ld a1,72(s0) + c00096f8: 6830 ld a2,80(s0) + c00096fa: 86ca mv a3,s2 + c00096fc: 8526 mv a0,s1 + c00096fe: bbfff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2300 if (ctx->array_shape) - c0009614: 7c0c ld a1,56(s0) - c0009616: bda5 j c000948e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2267 + c0009702: 7c0c ld a1,56(s0) + c0009704: bda5 j c000957c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2275 JSModuleDef *m = list_entry(el, JSModuleDef, link); - c0009618: ff8a0993 addi s3,s4,-8 + c0009706: ff8a0993 addi s3,s4,-8 js_mark_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27250 - for(i = 0; i < m->export_entries_count; i++) { - c000961c: 4a81 li s5,0 - c000961e: 028a2783 lw a5,40(s4) - c0009622: 06facd63 blt s5,a5,c000969c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27258 + for(i = 0; i < m->export_entries_count; i++) { + c000970a: 4a81 li s5,0 + c000970c: 028a2783 lw a5,40(s4) + c0009710: 06facd63 blt s5,a5,c000978a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27266 JS_MarkValue(rt, m->module_ns, mark_func); - c0009626: 0589b583 ld a1,88(s3) - c000962a: 0609b603 ld a2,96(s3) - c000962e: 86ca mv a3,s2 - c0009630: 8526 mv a0,s1 - c0009632: b9dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27259 + c0009714: 0589b583 ld a1,88(s3) + c0009718: 0609b603 ld a2,96(s3) + c000971c: 86ca mv a3,s2 + c000971e: 8526 mv a0,s1 + c0009720: b9dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27267 JS_MarkValue(rt, m->func_obj, mark_func); - c0009636: 0689b583 ld a1,104(s3) - c000963a: 0709b603 ld a2,112(s3) - c000963e: 86ca mv a3,s2 - c0009640: 8526 mv a0,s1 - c0009642: b8dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27260 + c0009724: 0689b583 ld a1,104(s3) + c0009728: 0709b603 ld a2,112(s3) + c000972c: 86ca mv a3,s2 + c000972e: 8526 mv a0,s1 + c0009730: b8dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27268 JS_MarkValue(rt, m->eval_exception, mark_func); - c0009646: 0f89b583 ld a1,248(s3) - c000964a: 1009b603 ld a2,256(s3) - c000964e: 86ca mv a3,s2 - c0009650: 8526 mv a0,s1 - c0009652: b7dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27261 + c0009734: 0f89b583 ld a1,248(s3) + c0009738: 1009b603 ld a2,256(s3) + c000973c: 86ca mv a3,s2 + c000973e: 8526 mv a0,s1 + c0009740: b7dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27269 JS_MarkValue(rt, m->meta_obj, mark_func); - c0009656: 1089b583 ld a1,264(s3) - c000965a: 1109b603 ld a2,272(s3) - c000965e: 86ca mv a3,s2 - c0009660: 8526 mv a0,s1 - c0009662: b6dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27262 + c0009744: 1089b583 ld a1,264(s3) + c0009748: 1109b603 ld a2,272(s3) + c000974c: 86ca mv a3,s2 + c000974e: 8526 mv a0,s1 + c0009750: b6dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27270 JS_MarkValue(rt, m->promise, mark_func); - c0009666: 0c09b583 ld a1,192(s3) - c000966a: 0c89b603 ld a2,200(s3) - c000966e: 86ca mv a3,s2 - c0009670: 8526 mv a0,s1 - c0009672: b5dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27263 + c0009754: 0c09b583 ld a1,192(s3) + c0009758: 0c89b603 ld a2,200(s3) + c000975c: 86ca mv a3,s2 + c000975e: 8526 mv a0,s1 + c0009760: b5dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27271 JS_MarkValue(rt, m->resolving_funcs[0], mark_func); - c0009676: 0d09b583 ld a1,208(s3) - c000967a: 0d89b603 ld a2,216(s3) - c000967e: 86ca mv a3,s2 - c0009680: 8526 mv a0,s1 - c0009682: b4dff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27264 + c0009764: 0d09b583 ld a1,208(s3) + c0009768: 0d89b603 ld a2,216(s3) + c000976c: 86ca mv a3,s2 + c000976e: 8526 mv a0,s1 + c0009770: b4dff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27272 JS_MarkValue(rt, m->resolving_funcs[1], mark_func); - c0009686: 0e09b583 ld a1,224(s3) - c000968a: 0e89b603 ld a2,232(s3) - c000968e: 86ca mv a3,s2 - c0009690: 8526 mv a0,s1 - c0009692: b3dff0ef jal ra,c00091ce + c0009774: 0e09b583 ld a1,224(s3) + c0009778: 0e89b603 ld a2,232(s3) + c000977c: 86ca mv a3,s2 + c000977e: 8526 mv a0,s1 + c0009780: b3dff0ef jal ra,c00092bc JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2266 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2274 list_for_each(el, &ctx->loaded_modules) { - c0009696: 008a3a03 ld s4,8(s4) - c000969a: b555 j c000953e + c0009784: 008a3a03 ld s4,8(s4) + c0009788: b555 j c000962c js_mark_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27251 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27259 JSExportEntry *me = &m->export_entries[i]; - c000969c: 020a3703 ld a4,32(s4) - c00096a0: 005a9793 slli a5,s5,0x5 - c00096a4: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27252 + c000978a: 020a3703 ld a4,32(s4) + c000978e: 005a9793 slli a5,s5,0x5 + c0009792: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27260 if (me->export_type == JS_EXPORT_TYPE_LOCAL && - c00096a6: 4b98 lw a4,16(a5) - c00096a8: e709 bnez a4,c00096b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27253 + c0009794: 4b98 lw a4,16(a5) + c0009796: e709 bnez a4,c00097a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27261 me->u.local.var_ref) { - c00096aa: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27252 + c0009798: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27260 if (me->export_type == JS_EXPORT_TYPE_LOCAL && - c00096ac: c199 beqz a1,c00096b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27254 + c000979a: c199 beqz a1,c00097a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27262 mark_func(rt, &me->u.local.var_ref->header); - c00096ae: 8526 mv a0,s1 - c00096b0: 9902 jalr s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27250 + c000979c: 8526 mv a0,s1 + c000979e: 9902 jalr s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27258 for(i = 0; i < m->export_entries_count; i++) { - c00096b2: 2a85 addiw s5,s5,1 - c00096b4: b7ad j c000961e + c00097a0: 2a85 addiw s5,s5,1 + c00097a2: b7ad j c000970c JS_MarkContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2282 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2290 JS_MarkValue(rt, ctx->class_proto[i], mark_func); - c00096b6: 603c ld a5,64(s0) - c00096b8: 00499713 slli a4,s3,0x4 - c00096bc: 86ca mv a3,s2 - c00096be: 97ba add a5,a5,a4 - c00096c0: 638c ld a1,0(a5) - c00096c2: 6790 ld a2,8(a5) - c00096c4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2281 + c00097a4: 603c ld a5,64(s0) + c00097a6: 00499713 slli a4,s3,0x4 + c00097aa: 86ca mv a3,s2 + c00097ac: 97ba add a5,a5,a4 + c00097ae: 638c ld a1,0(a5) + c00097b0: 6790 ld a2,8(a5) + c00097b2: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2289 for(i = 0; i < rt->class_count; i++) { - c00096c6: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2282 + c00097b4: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2290 JS_MarkValue(rt, ctx->class_proto[i], mark_func); - c00096c8: b07ff0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2281 + c00097b6: b07ff0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2289 for(i = 0; i < rt->class_count; i++) { - c00096cc: b5dd j c00095b2 + c00097ba: b5dd j c00096a0 mark_children(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5789 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5797 abort(); - c00096ce: 13c4c0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5791 -} - c00096d2: 70a6 ld ra,104(sp) - c00096d4: 7406 ld s0,96(sp) - c00096d6: 64e6 ld s1,88(sp) - c00096d8: 6946 ld s2,80(sp) - c00096da: 69a6 ld s3,72(sp) - c00096dc: 6a06 ld s4,64(sp) - c00096de: 7ae2 ld s5,56(sp) - c00096e0: 7b42 ld s6,48(sp) - c00096e2: 7ba2 ld s7,40(sp) - c00096e4: 7c02 ld s8,32(sp) - c00096e6: 6ce2 ld s9,24(sp) - c00096e8: 6165 addi sp,sp,112 - c00096ea: 8082 ret - -00000000c00096ec : + c00097bc: 21e4c0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5799 +} + c00097c0: 70a6 ld ra,104(sp) + c00097c2: 7406 ld s0,96(sp) + c00097c4: 64e6 ld s1,88(sp) + c00097c6: 6946 ld s2,80(sp) + c00097c8: 69a6 ld s3,72(sp) + c00097ca: 6a06 ld s4,64(sp) + c00097cc: 7ae2 ld s5,56(sp) + c00097ce: 7b42 ld s6,48(sp) + c00097d0: 7ba2 ld s7,40(sp) + c00097d2: 7c02 ld s8,32(sp) + c00097d4: 6ce2 ld s9,24(sp) + c00097d6: 6165 addi sp,sp,112 + c00097d8: 8082 ret + +00000000c00097da : js_promise_resolve_function_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48019 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48027 JSPromiseFunctionData *s = JS_VALUE_GET_OBJ(val)->u.promise_function_data; - c00096ec: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48018 + c00097da: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48026 { - c00096ee: 1141 addi sp,sp,-16 - c00096f0: e02e sd a1,0(sp) - c00096f2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48020 + c00097dc: 1141 addi sp,sp,-16 + c00097de: e02e sd a1,0(sp) + c00097e0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48028 if (s) { - c00096f4: c791 beqz a5,c0009700 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48021 + c00097e2: c791 beqz a5,c00097ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48029 JS_MarkValue(rt, s->promise, mark_func); - c00096f6: 638c ld a1,0(a5) - c00096f8: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48023 + c00097e4: 638c ld a1,0(a5) + c00097e6: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48031 } - c00096fa: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48021 + c00097e8: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48029 JS_MarkValue(rt, s->promise, mark_func); - c00096fc: ad3ff06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48023 + c00097ea: ad3ff06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48031 } - c0009700: 0141 addi sp,sp,16 - c0009702: 8082 ret + c00097ee: 0141 addi sp,sp,16 + c00097f0: 8082 ret -00000000c0009704 : +00000000c00097f2 : JS_RunGC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5914 -{ - c0009704: 7139 addi sp,sp,-64 - c0009706: f822 sd s0,48(sp) - c0009708: f04a sd s2,32(sp) - c000970a: e852 sd s4,16(sp) - c000970c: e456 sd s5,8(sp) - c000970e: fc06 sd ra,56(sp) - c0009710: f426 sd s1,40(sp) - c0009712: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5922 +{ + c00097f2: 7139 addi sp,sp,-64 + c00097f4: f822 sd s0,48(sp) + c00097f6: f04a sd s2,32(sp) + c00097f8: e852 sd s4,16(sp) + c00097fa: e456 sd s5,8(sp) + c00097fc: fc06 sd ra,56(sp) + c00097fe: f426 sd s1,40(sp) + c0009800: ec4e sd s3,24(sp) gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5821 list_for_each_safe(el, el1, &rt->gc_obj_list) { - c0009714: 6944 ld s1,144(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5808 + c0009802: 6944 ld s1,144(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5816 init_list_head(&rt->tmp_obj_list); - c0009716: 0a850913 addi s2,a0,168 + c0009804: 0a850913 addi s2,a0,168 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c000971a: 0b253423 sd s2,168(a0) + c0009808: 0b253423 sd s2,168(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c000971e: 0b253823 sd s2,176(a0) + c000980c: 0b253823 sd s2,176(a0) gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5821 list_for_each_safe(el, el1, &rt->gc_obj_list) { - c0009722: 0084b983 ld s3,8(s1) + c0009810: 0084b983 ld s3,8(s1) JS_RunGC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5922 { - c0009726: 842a mv s0,a0 + c0009814: 842a mv s0,a0 gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5821 list_for_each_safe(el, el1, &rt->gc_obj_list) { - c0009728: 08850a13 addi s4,a0,136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5816 + c0009816: 08850a13 addi s4,a0,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5824 mark_children(rt, p, gc_decref_child); - c000972c: ffffca97 auipc s5,0xffffc - c0009730: 2fea8a93 addi s5,s5,766 # c0005a2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5813 + c000981a: ffffca97 auipc s5,0xffffc + c000981e: 2fea8a93 addi s5,s5,766 # c0005b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5821 list_for_each_safe(el, el1, &rt->gc_obj_list) { - c0009734: 05449763 bne s1,s4,c0009782 + c0009822: 05449763 bne s1,s4,c0009870 gc_scan(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5856 list_for_each(el, &rt->gc_obj_list) { - c0009738: 6844 ld s1,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5852 + c0009826: 6844 ld s1,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5860 mark_children(rt, p, gc_scan_incref_child); - c000973a: ffffc997 auipc s3,0xffffc - c000973e: 0a498993 addi s3,s3,164 # c00057de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5848 - list_for_each(el, &rt->gc_obj_list) { - c0009742: 09449c63 bne s1,s4,c00097da + c0009828: ffffc997 auipc s3,0xffffc + c000982c: 0a498993 addi s3,s3,164 # c00058cc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5856 + list_for_each(el, &rt->gc_obj_list) { + c0009830: 09449c63 bne s1,s4,c00098c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5864 list_for_each(el, &rt->tmp_obj_list) { - c0009746: 7844 ld s1,176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5858 + c0009834: 7844 ld s1,176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5866 mark_children(rt, p, gc_scan_incref_child2); - c0009748: ffffb997 auipc s3,0xffffb - c000974c: b3c98993 addi s3,s3,-1220 # c0004284 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5856 + c0009836: ffffb997 auipc s3,0xffffb + c000983a: a4e98993 addi s3,s3,-1458 # c0004284 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5864 list_for_each(el, &rt->tmp_obj_list) { - c0009750: 0b249b63 bne s1,s2,c0009806 + c000983e: 0b249b63 bne s1,s2,c00098f4 gc_free_cycles(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5878 rt->gc_phase = JS_GC_PHASE_REMOVE_CYCLES; - c0009754: 4789 li a5,2 - c0009756: 0af40c23 sb a5,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5896 + c0009842: 4789 li a5,2 + c0009844: 0af40c23 sb a5,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5904 list_add_tail(&p->link, &rt->gc_zero_ref_count_list); - c000975a: 09840993 addi s3,s0,152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5880 + c0009848: 09840993 addi s3,s0,152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5888 switch(p->gc_obj_type) { - c000975e: 4a05 li s4,1 - c0009760: 4a91 li s5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5873 + c000984c: 4a05 li s4,1 + c000984e: 4a91 li s5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5881 el = rt->tmp_obj_list.next; - c0009762: 7844 ld s1,176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5874 + c0009850: 7844 ld s1,176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5882 if (el == &rt->tmp_obj_list) - c0009764: 0d248363 beq s1,s2,c000982a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5880 + c0009852: 0d248363 beq s1,s2,c0009918 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5888 switch(p->gc_obj_type) { - c0009768: ffc4e783 lwu a5,-4(s1) - c000976c: 8bbd andi a5,a5,15 - c000976e: 00fa7463 bgeu s4,a5,c0009776 - c0009772: 0b579263 bne a5,s5,c0009816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5892 + c0009856: ffc4e783 lwu a5,-4(s1) + c000985a: 8bbd andi a5,a5,15 + c000985c: 00fa7463 bgeu s4,a5,c0009864 + c0009860: 0b579263 bne a5,s5,c0009904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5900 free_gc_object(rt, p); - c0009776: ff848593 addi a1,s1,-8 - c000977a: 8522 mv a0,s0 - c000977c: abbfe0ef jal ra,c0008236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5893 + c0009864: ff848593 addi a1,s1,-8 + c0009868: 8522 mv a0,s0 + c000986a: abbfe0ef jal ra,c0008324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5901 break; - c0009780: b7cd j c0009762 + c000986e: b7cd j c0009850 gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5815 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5823 assert(p->mark == 0); - c0009782: ffc4c783 lbu a5,-4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5814 + c0009870: ffc4c783 lbu a5,-4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5822 p = list_entry(el, JSGCObjectHeader, link); - c0009786: ff848593 addi a1,s1,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5815 + c0009874: ff848593 addi a1,s1,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5823 assert(p->mark == 0); - c000978a: 0f07f793 andi a5,a5,240 - c000978e: cb99 beqz a5,c00097a4 - c0009790: 6585 lui a1,0x1 - c0009792: 4601 li a2,0 - c0009794: 6b758593 addi a1,a1,1719 # 16b7 <__clzdi2-0xbfffe949> + c0009878: 0f07f793 andi a5,a5,240 + c000987c: cb99 beqz a5,c0009892 + c000987e: 6585 lui a1,0x1 + c0009880: 4601 li a2,0 + c0009882: 6bf58593 addi a1,a1,1727 # 16bf <__clzdi2-0xbfffe941> gc_scan(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5858 assert(p->ref_count > 0); - c0009798: 00053517 auipc a0,0x53 - c000979c: 2e050513 addi a0,a0,736 # c005ca78 - c00097a0: 2784a0ef jal ra,c0053a18 <__assert> + c0009886: 00053517 auipc a0,0x53 + c000988a: 3c250513 addi a0,a0,962 # c005cc48 + c000988e: 35a4a0ef jal ra,c0053be8 <__assert> gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5824 mark_children(rt, p, gc_decref_child); - c00097a4: 8656 mv a2,s5 - c00097a6: 8522 mv a0,s0 - c00097a8: bcdff0ef jal ra,c0009374 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5817 + c0009892: 8656 mv a2,s5 + c0009894: 8522 mv a0,s0 + c0009896: bcdff0ef jal ra,c0009462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5825 p->mark = 1; - c00097ac: ffc4c783 lbu a5,-4(s1) - c00097b0: 8bbd andi a5,a5,15 - c00097b2: 0107e793 ori a5,a5,16 - c00097b6: fef48e23 sb a5,-4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5818 + c000989a: ffc4c783 lbu a5,-4(s1) + c000989e: 8bbd andi a5,a5,15 + c00098a0: 0107e793 ori a5,a5,16 + c00098a4: fef48e23 sb a5,-4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5826 if (p->ref_count == 0) { - c00097ba: ff84a783 lw a5,-8(s1) - c00097be: eb91 bnez a5,c00097d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5819 + c00098a8: ff84a783 lw a5,-8(s1) + c00098ac: eb91 bnez a5,c00098c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5827 list_del(&p->link); - c00097c0: 8526 mv a0,s1 - c00097c2: 899fa0ef jal ra,c000405a + c00098ae: 8526 mv a0,s1 + c00098b0: faafa0ef jal ra,c000405a list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c00097c6: 745c ld a5,168(s0) + c00098b4: 745c ld a5,168(s0) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c00097c8: e784 sd s1,8(a5) + c00098b6: e784 sd s1,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c00097ca: e09c sd a5,0(s1) + c00098b8: e09c sd a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c00097cc: 0124b423 sd s2,8(s1) + c00098ba: 0124b423 sd s2,8(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c00097d0: f444 sd s1,168(s0) + c00098be: f444 sd s1,168(s0) gc_decref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5821 list_for_each_safe(el, el1, &rt->gc_obj_list) { - c00097d2: 84ce mv s1,s3 - c00097d4: 0089b983 ld s3,8(s3) - c00097d8: bfb1 j c0009734 + c00098c0: 84ce mv s1,s3 + c00098c2: 0089b983 ld s3,8(s3) + c00098c6: bfb1 j c0009822 gc_scan(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5858 assert(p->ref_count > 0); - c00097da: ff84a783 lw a5,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5849 + c00098c8: ff84a783 lw a5,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5857 p = list_entry(el, JSGCObjectHeader, link); - c00097de: ff848593 addi a1,s1,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5850 + c00098cc: ff848593 addi a1,s1,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5858 assert(p->ref_count > 0); - c00097e2: 00f04763 bgtz a5,c00097f0 - c00097e6: 6585 lui a1,0x1 - c00097e8: 4601 li a2,0 - c00097ea: 6da58593 addi a1,a1,1754 # 16da <__clzdi2-0xbfffe926> - c00097ee: b76d j c0009798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5851 + c00098d0: 00f04763 bgtz a5,c00098de + c00098d4: 6585 lui a1,0x1 + c00098d6: 4601 li a2,0 + c00098d8: 6e258593 addi a1,a1,1762 # 16e2 <__clzdi2-0xbfffe91e> + c00098dc: b76d j c0009886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5859 p->mark = 0; /* reset the mark for the next GC call */ - c00097f0: ffc4c783 lbu a5,-4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5852 + c00098de: ffc4c783 lbu a5,-4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5860 mark_children(rt, p, gc_scan_incref_child); - c00097f4: 864e mv a2,s3 - c00097f6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5851 + c00098e2: 864e mv a2,s3 + c00098e4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5859 p->mark = 0; /* reset the mark for the next GC call */ - c00097f8: 8bbd andi a5,a5,15 - c00097fa: fef48e23 sb a5,-4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5852 + c00098e6: 8bbd andi a5,a5,15 + c00098e8: fef48e23 sb a5,-4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5860 mark_children(rt, p, gc_scan_incref_child); - c00097fe: b77ff0ef jal ra,c0009374 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5848 + c00098ec: b77ff0ef jal ra,c0009462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5856 list_for_each(el, &rt->gc_obj_list) { - c0009802: 6484 ld s1,8(s1) - c0009804: bf3d j c0009742 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5858 + c00098f0: 6484 ld s1,8(s1) + c00098f2: bf3d j c0009830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5866 mark_children(rt, p, gc_scan_incref_child2); - c0009806: ff848593 addi a1,s1,-8 - c000980a: 864e mv a2,s3 - c000980c: 8522 mv a0,s0 - c000980e: b67ff0ef jal ra,c0009374 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5856 + c00098f4: ff848593 addi a1,s1,-8 + c00098f8: 864e mv a2,s3 + c00098fa: 8522 mv a0,s0 + c00098fc: b67ff0ef jal ra,c0009462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5864 list_for_each(el, &rt->tmp_obj_list) { - c0009812: 6484 ld s1,8(s1) - c0009814: bf35 j c0009750 + c0009900: 6484 ld s1,8(s1) + c0009902: bf35 j c000983e gc_free_cycles(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5895 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5903 list_del(&p->link); - c0009816: 8526 mv a0,s1 - c0009818: 843fa0ef jal ra,c000405a + c0009904: 8526 mv a0,s1 + c0009906: f54fa0ef jal ra,c000405a list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c000981c: 6c5c ld a5,152(s0) + c000990a: 6c5c ld a5,152(s0) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c000981e: e784 sd s1,8(a5) + c000990c: e784 sd s1,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0009820: e09c sd a5,0(s1) + c000990e: e09c sd a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0009822: 0134b423 sd s3,8(s1) + c0009910: 0134b423 sd s3,8(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0009826: ec44 sd s1,152(s0) + c0009914: ec44 sd s1,152(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:67 } - c0009828: bf2d j c0009762 + c0009916: bf2d j c0009850 gc_free_cycles(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5910 list_for_each_safe(el, el1, &rt->gc_zero_ref_count_list) { - c000982a: 705c ld a5,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5900 + c0009918: 705c ld a5,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5908 rt->gc_phase = JS_GC_PHASE_NONE; - c000982c: 0a040c23 sb zero,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5904 + c000991a: 0a040c23 sb zero,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5912 assert(p->gc_obj_type == JS_GC_OBJ_TYPE_JS_OBJECT || - c0009830: 4911 li s2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5902 + c000991e: 4911 li s2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5910 list_for_each_safe(el, el1, &rt->gc_zero_ref_count_list) { - c0009832: 6784 ld s1,8(a5) - c0009834: 01379d63 bne a5,s3,c000984e + c0009920: 6784 ld s1,8(a5) + c0009922: 01379d63 bne a5,s3,c000993c JS_RunGC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5932 } - c0009838: 70e2 ld ra,56(sp) + c0009926: 70e2 ld ra,56(sp) init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c000983a: ec5c sd a5,152(s0) + c0009928: ec5c sd a5,152(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c000983c: f05c sd a5,160(s0) + c000992a: f05c sd a5,160(s0) JS_RunGC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5924 - c000983e: 7442 ld s0,48(sp) - c0009840: 74a2 ld s1,40(sp) - c0009842: 7902 ld s2,32(sp) - c0009844: 69e2 ld s3,24(sp) - c0009846: 6a42 ld s4,16(sp) - c0009848: 6aa2 ld s5,8(sp) - c000984a: 6121 addi sp,sp,64 - c000984c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5932 + c000992c: 7442 ld s0,48(sp) + c000992e: 74a2 ld s1,40(sp) + c0009930: 7902 ld s2,32(sp) + c0009932: 69e2 ld s3,24(sp) + c0009934: 6a42 ld s4,16(sp) + c0009936: 6aa2 ld s5,8(sp) + c0009938: 6121 addi sp,sp,64 + c000993a: 8082 ret gc_free_cycles(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5903 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5911 p = list_entry(el, JSGCObjectHeader, link); - c000984e: ff878593 addi a1,a5,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5904 + c000993c: ff878593 addi a1,a5,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5912 assert(p->gc_obj_type == JS_GC_OBJ_TYPE_JS_OBJECT || - c0009852: ffc7c783 lbu a5,-4(a5) - c0009856: 00e7f713 andi a4,a5,14 - c000985a: cb09 beqz a4,c000986c - c000985c: 8bbd andi a5,a5,15 - c000985e: 01278763 beq a5,s2,c000986c - c0009862: 6585 lui a1,0x1 - c0009864: 4601 li a2,0 - c0009866: 71058593 addi a1,a1,1808 # 1710 <__clzdi2-0xbfffe8f0> - c000986a: b73d j c0009798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5907 + c0009940: ffc7c783 lbu a5,-4(a5) + c0009944: 00e7f713 andi a4,a5,14 + c0009948: cb09 beqz a4,c000995a + c000994a: 8bbd andi a5,a5,15 + c000994c: 01278763 beq a5,s2,c000995a + c0009950: 6585 lui a1,0x1 + c0009952: 4601 li a2,0 + c0009954: 71858593 addi a1,a1,1816 # 1718 <__clzdi2-0xbfffe8e8> + c0009958: b73d j c0009886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5915 js_free_rt(rt, p); - c000986c: 8522 mv a0,s0 - c000986e: b38fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5902 + c000995a: 8522 mv a0,s0 + c000995c: b38fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5910 list_for_each_safe(el, el1, &rt->gc_zero_ref_count_list) { - c0009872: 87a6 mv a5,s1 - c0009874: 6484 ld s1,8(s1) - c0009876: bf7d j c0009834 + c0009960: 87a6 mv a5,s1 + c0009962: 6484 ld s1,8(s1) + c0009964: bf7d j c0009922 -00000000c0009878 : +00000000c0009966 : JS_FreeRuntime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1953 -{ - c0009878: 715d addi sp,sp,-80 - c000987a: e0a2 sd s0,64(sp) - c000987c: fc26 sd s1,56(sp) - c000987e: f44e sd s3,40(sp) - c0009880: f052 sd s4,32(sp) - c0009882: e486 sd ra,72(sp) - c0009884: f84a sd s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1957 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1961 +{ + c0009966: 715d addi sp,sp,-80 + c0009968: e0a2 sd s0,64(sp) + c000996a: fc26 sd s1,56(sp) + c000996c: f44e sd s3,40(sp) + c000996e: f052 sd s4,32(sp) + c0009970: e486 sd ra,72(sp) + c0009972: f84a sd s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1965 JS_FreeValueRT(rt, rt->current_exception); - c0009886: 716c ld a1,224(a0) - c0009888: 7570 ld a2,232(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1953 + c0009974: 716c ld a1,224(a0) + c0009976: 7570 ld a2,232(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1961 { - c000988a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1959 + c0009978: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1967 list_for_each_safe(el, el1, &rt->job_list) { - c000988c: 12040993 addi s3,s0,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1957 + c000997a: 12040993 addi s3,s0,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1965 JS_FreeValueRT(rt, rt->current_exception); - c0009890: e29fe0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1959 + c000997e: e29fe0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1967 list_for_each_safe(el, el1, &rt->job_list) { - c0009894: 12843483 ld s1,296(s0) - c0009898: 0084ba03 ld s4,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1959 (discriminator 1) - c000989c: 04999f63 bne s3,s1,c00098fa + c0009982: 12843483 ld s1,296(s0) + c0009986: 0084ba03 ld s4,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1967 (discriminator 1) + c000998a: 04999f63 bne s3,s1,c00099e8 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c00098a0: 13343023 sd s3,288(s0) + c000998e: 13343023 sd s3,288(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c00098a4: 13343423 sd s3,296(s0) + c0009992: 13343423 sd s3,296(s0) JS_FreeRuntime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1967 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1975 JS_RunGC(rt); - c00098a8: 8522 mv a0,s0 - c00098aa: e5bff0ef jal ra,c0009704 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2008 + c0009996: 8522 mv a0,s0 + c0009998: e5bff0ef jal ra,c00097f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2016 assert(list_empty(&rt->gc_obj_list)); - c00098ae: 6858 ld a4,144(s0) - c00098b0: 08840793 addi a5,s0,136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2011 + c000999c: 6858 ld a4,144(s0) + c000999e: 08840793 addi a5,s0,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2019 for(i = 0; i < rt->class_count; i++) { - c00098b4: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2012 + c00099a2: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2020 JSClass *cl = &rt->class_array[i]; - c00098b6: 02800913 li s2,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2008 + c00099a4: 02800913 li s2,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2016 assert(list_empty(&rt->gc_obj_list)); - c00098ba: 04f70c63 beq a4,a5,c0009912 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2008 (discriminator 1) - c00098be: 4601 li a2,0 - c00098c0: 7d800593 li a1,2008 - c00098c4: 00053517 auipc a0,0x53 - c00098c8: 1b450513 addi a0,a0,436 # c005ca78 - c00098cc: 14c4a0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1962 (discriminator 3) + c00099a8: 04f70c63 beq a4,a5,c0009a00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2016 (discriminator 1) + c00099ac: 4601 li a2,0 + c00099ae: 7e000593 li a1,2016 + c00099b2: 00053517 auipc a0,0x53 + c00099b6: 29650513 addi a0,a0,662 # c005cc48 + c00099ba: 22e4a0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1970 (discriminator 3) JS_FreeValueRT(rt, e->argv[i]); - c00098d0: 00290793 addi a5,s2,2 - c00098d4: 0792 slli a5,a5,0x4 - c00098d6: 97a6 add a5,a5,s1 - c00098d8: 678c ld a1,8(a5) - c00098da: 6b90 ld a2,16(a5) - c00098dc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1961 (discriminator 3) + c00099be: 00290793 addi a5,s2,2 + c00099c2: 0792 slli a5,a5,0x4 + c00099c4: 97a6 add a5,a5,s1 + c00099c6: 678c ld a1,8(a5) + c00099c8: 6b90 ld a2,16(a5) + c00099ca: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1969 (discriminator 3) for(i = 0; i < e->argc; i++) - c00098de: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1962 (discriminator 3) + c00099cc: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1970 (discriminator 3) JS_FreeValueRT(rt, e->argv[i]); - c00098e0: dd9fe0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1961 (discriminator 1) + c00099ce: dd9fe0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1969 (discriminator 1) for(i = 0; i < e->argc; i++) - c00098e4: 509c lw a5,32(s1) - c00098e6: fef945e3 blt s2,a5,c00098d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1963 (discriminator 2) + c00099d2: 509c lw a5,32(s1) + c00099d4: fef945e3 blt s2,a5,c00099be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1971 (discriminator 2) js_free_rt(rt, e); - c00098ea: 85a6 mv a1,s1 - c00098ec: 8522 mv a0,s0 - c00098ee: ab8fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1959 (discriminator 2) + c00099d8: 85a6 mv a1,s1 + c00099da: 8522 mv a0,s0 + c00099dc: ab8fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1967 (discriminator 2) list_for_each_safe(el, el1, &rt->job_list) { - c00098f2: 84d2 mv s1,s4 - c00098f4: 008a3a03 ld s4,8(s4) - c00098f8: b755 j c000989c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1961 + c00099e0: 84d2 mv s1,s4 + c00099e2: 008a3a03 ld s4,8(s4) + c00099e6: b755 j c000998a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1969 for(i = 0; i < e->argc; i++) - c00098fa: 4901 li s2,0 - c00098fc: b7e5 j c00098e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2012 + c00099e8: 4901 li s2,0 + c00099ea: b7e5 j c00099d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2020 JSClass *cl = &rt->class_array[i]; - c00098fe: 032487b3 mul a5,s1,s2 - c0009902: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2013 + c00099ec: 032487b3 mul a5,s1,s2 + c00099f0: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2021 if (cl->class_id != 0) { - c0009904: 419c lw a5,0(a1) - c0009906: c789 beqz a5,c0009910 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2014 + c00099f2: 419c lw a5,0(a1) + c00099f4: c789 beqz a5,c00099fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2022 JS_FreeAtomRT(rt, cl->class_name); - c0009908: 41cc lw a1,4(a1) - c000990a: 8522 mv a0,s0 - c000990c: 8c6fe0ef jal ra,c00079d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2011 (discriminator 2) + c00099f6: 41cc lw a1,4(a1) + c00099f8: 8522 mv a0,s0 + c00099fa: 8c6fe0ef jal ra,c0007ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2019 (discriminator 2) for(i = 0; i < rt->class_count; i++) { - c0009910: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2011 (discriminator 1) - c0009912: 547c lw a5,108(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2012 (discriminator 1) + c00099fe: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2019 (discriminator 1) + c0009a00: 547c lw a5,108(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2020 (discriminator 1) JSClass *cl = &rt->class_array[i]; - c0009914: 782c ld a1,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2011 (discriminator 1) + c0009a02: 782c ld a1,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2019 (discriminator 1) for(i = 0; i < rt->class_count; i++) { - c0009916: fef4c4e3 blt s1,a5,c00098fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2017 + c0009a04: fef4c4e3 blt s1,a5,c00099ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2025 js_free_rt(rt, rt->class_array); - c000991a: 8522 mv a0,s0 - c000991c: a8afd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2019 + c0009a08: 8522 mv a0,s0 + c0009a0a: a8afd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2027 bf_context_end(&rt->bf_ctx); - c0009920: 19040513 addi a0,s0,400 - c0009924: 41e480ef jal ra,c0051d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2080 + c0009a0e: 19040513 addi a0,s0,400 + c0009a12: 500480ef jal ra,c0051f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2088 for(i = 0; i < rt->atom_size; i++) { - c0009928: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2080 (discriminator 1) - c000992a: 483c lw a5,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2081 (discriminator 1) + c0009a16: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2088 (discriminator 1) + c0009a18: 483c lw a5,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2089 (discriminator 1) JSAtomStruct *p = rt->atom_array[i]; - c000992c: 702c ld a1,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2080 (discriminator 1) + c0009a1a: 702c ld a1,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2088 (discriminator 1) for(i = 0; i < rt->atom_size; i++) { - c000992e: 04f4c163 blt s1,a5,c0009970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2089 + c0009a1c: 04f4c163 blt s1,a5,c0009a5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2097 js_free_rt(rt, rt->atom_array); - c0009932: 8522 mv a0,s0 - c0009934: a72fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2090 + c0009a20: 8522 mv a0,s0 + c0009a22: a72fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2098 js_free_rt(rt, rt->atom_hash); - c0009938: 6c2c ld a1,88(s0) - c000993a: 8522 mv a0,s0 - c000993c: a6afd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2091 + c0009a26: 6c2c ld a1,88(s0) + c0009a28: 8522 mv a0,s0 + c0009a2a: a6afd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2099 js_free_rt(rt, rt->shape_hash); - c0009940: 18843583 ld a1,392(s0) - c0009944: 8522 mv a0,s0 - c0009946: a60fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2133 + c0009a2e: 18843583 ld a1,392(s0) + c0009a32: 8522 mv a0,s0 + c0009a34: a60fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2141 JSMallocState ms = rt->malloc_state; - c000994a: 02040593 addi a1,s0,32 - c000994e: 02000613 li a2,32 - c0009952: 850a mv a0,sp - c0009954: 0864d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2134 + c0009a38: 02040593 addi a1,s0,32 + c0009a3c: 02000613 li a2,32 + c0009a40: 850a mv a0,sp + c0009a42: 1684d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2142 rt->mf.js_free(&ms, rt); - c0009958: 641c ld a5,8(s0) - c000995a: 85a2 mv a1,s0 - c000995c: 850a mv a0,sp - c000995e: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2136 -} - c0009960: 60a6 ld ra,72(sp) - c0009962: 6406 ld s0,64(sp) - c0009964: 74e2 ld s1,56(sp) - c0009966: 7942 ld s2,48(sp) - c0009968: 79a2 ld s3,40(sp) - c000996a: 7a02 ld s4,32(sp) - c000996c: 6161 addi sp,sp,80 - c000996e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2081 + c0009a46: 641c ld a5,8(s0) + c0009a48: 85a2 mv a1,s0 + c0009a4a: 850a mv a0,sp + c0009a4c: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2144 +} + c0009a4e: 60a6 ld ra,72(sp) + c0009a50: 6406 ld s0,64(sp) + c0009a52: 74e2 ld s1,56(sp) + c0009a54: 7942 ld s2,48(sp) + c0009a56: 79a2 ld s3,40(sp) + c0009a58: 7a02 ld s4,32(sp) + c0009a5a: 6161 addi sp,sp,80 + c0009a5c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2089 JSAtomStruct *p = rt->atom_array[i]; - c0009970: 00349793 slli a5,s1,0x3 - c0009974: 95be add a1,a1,a5 - c0009976: 618c ld a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2082 + c0009a5e: 00349793 slli a5,s1,0x3 + c0009a62: 95be add a1,a1,a5 + c0009a64: 618c ld a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2090 if (!atom_is_free(p)) { - c0009978: 0015f793 andi a5,a1,1 - c000997c: e781 bnez a5,c0009984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2086 + c0009a66: 0015f793 andi a5,a1,1 + c0009a6a: e781 bnez a5,c0009a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2094 js_free_rt(rt, p); - c000997e: 8522 mv a0,s0 - c0009980: a26fd0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2080 (discriminator 2) + c0009a6c: 8522 mv a0,s0 + c0009a6e: a26fd0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2088 (discriminator 2) for(i = 0; i < rt->atom_size; i++) { - c0009984: 2485 addiw s1,s1,1 - c0009986: b755 j c000992a + c0009a72: 2485 addiw s1,s1,1 + c0009a74: b755 j c0009a18 -00000000c0009988 : +00000000c0009a76 : JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1636 -{ - c0009988: 7159 addi sp,sp,-112 - c000998a: f0a2 sd s0,96(sp) - c000998c: eca6 sd s1,88(sp) - c000998e: f486 sd ra,104(sp) - c0009990: e8ca sd s2,80(sp) - c0009992: e4ce sd s3,72(sp) - c0009994: e0d2 sd s4,64(sp) - c0009996: fc56 sd s5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1640 +{ + c0009a76: 7159 addi sp,sp,-112 + c0009a78: f0a2 sd s0,96(sp) + c0009a7a: eca6 sd s1,88(sp) + c0009a7c: f486 sd ra,104(sp) + c0009a7e: e8ca sd s2,80(sp) + c0009a80: e4ce sd s3,72(sp) + c0009a82: e0d2 sd s4,64(sp) + c0009a84: fc56 sd s5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1646 ms.malloc_limit = -1; - c0009998: 57fd li a5,-1 - c000999a: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1644 + c0009a86: 57fd li a5,-1 + c0009a88: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1648 rt = mf->js_malloc(&ms, sizeof(JSRuntime)); - c000999c: 611c ld a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1641 + c0009a8a: 611c ld a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1645 ms.opaque = opaque; - c000999e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1636 -{ - c00099a0: 84aa mv s1,a0 + c0009a8c: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1640 - memset(&ms, 0, sizeof(ms)); - c00099a2: e802 sd zero,16(sp) - c00099a4: ec02 sd zero,24(sp) +{ + c0009a8e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1644 + memset(&ms, 0, sizeof(ms)); + c0009a90: e802 sd zero,16(sp) + c0009a92: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1648 rt = mf->js_malloc(&ms, sizeof(JSRuntime)); - c00099a6: 24800593 li a1,584 - c00099aa: 0808 addi a0,sp,16 - c00099ac: 9782 jalr a5 - c00099ae: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1645 + c0009a94: 24800593 li a1,584 + c0009a98: 0808 addi a0,sp,16 + c0009a9a: 9782 jalr a5 + c0009a9c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1649 if (!rt) - c00099b0: 1c050a63 beqz a0,c0009b84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1647 + c0009a9e: 1c050a63 beqz a0,c0009c72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1651 memset(rt, 0, sizeof(*rt)); - c00099b4: 24800613 li a2,584 - c00099b8: 4581 li a1,0 - c00099ba: 6b74c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1648 + c0009aa2: 24800613 li a2,584 + c0009aa6: 4581 li a1,0 + c0009aa8: 7994c0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1652 rt->mf = *mf; - c00099be: 02000613 li a2,32 - c00099c2: 85a6 mv a1,s1 - c00099c4: 8522 mv a0,s0 - c00099c6: 0144d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1649 + c0009aac: 02000613 li a2,32 + c0009ab0: 85a6 mv a1,s1 + c0009ab2: 8522 mv a0,s0 + c0009ab4: 0f64d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1653 if (!rt->mf.js_malloc_usable_size) { - c00099ca: 6c1c ld a5,24(s0) - c00099cc: e791 bnez a5,c00099d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1651 + c0009ab8: 6c1c ld a5,24(s0) + c0009aba: e791 bnez a5,c0009ac6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1655 rt->mf.js_malloc_usable_size = js_malloc_usable_size_unknown; - c00099ce: ffffa797 auipc a5,0xffffa - c00099d2: 69e78793 addi a5,a5,1694 # c000406c - c00099d6: ec1c sd a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1653 + c0009abc: ffffa797 auipc a5,0xffffa + c0009ac0: 5b078793 addi a5,a5,1456 # c000406c + c0009ac4: ec1c sd a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1657 rt->malloc_state = ms; - c00099d8: 02000613 li a2,32 - c00099dc: 080c addi a1,sp,16 - c00099de: 02040513 addi a0,s0,32 - c00099e2: 7f94c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1654 + c0009ac6: 02000613 li a2,32 + c0009aca: 080c addi a1,sp,16 + c0009acc: 02040513 addi a0,s0,32 + c0009ad0: 0da4d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1658 rt->malloc_gc_threshold = 256 * 1024; - c00099e6: 000407b7 lui a5,0x40 - c00099ea: e07c sd a5,192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1656 + c0009ad4: 000407b7 lui a5,0x40 + c0009ad8: e07c sd a5,192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1660 bf_context_init(&rt->bf_ctx, js_bf_realloc, rt); - c00099ec: ffffa597 auipc a1,0xffffa - c00099f0: 68c58593 addi a1,a1,1676 # c0004078 - c00099f4: 19040513 addi a0,s0,400 - c00099f8: 8622 mv a2,s0 - c00099fa: 5e4430ef jal ra,c004cfde + c0009ada: ffffa597 auipc a1,0xffffa + c0009ade: 59e58593 addi a1,a1,1438 # c0004078 + c0009ae2: 19040513 addi a0,s0,400 + c0009ae6: 8622 mv a2,s0 + c0009ae8: 6c6430ef jal ra,c004d1ae set_dummy_numeric_ops(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1601 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1605 ops->to_string = invalid_to_string; - c00099fe: 0000a797 auipc a5,0xa - c0009a02: 35a78793 addi a5,a5,858 # c0013d58 - c0009a06: 20f43423 sd a5,520(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1602 + c0009aec: 0000a797 auipc a5,0xa + c0009af0: 35a78793 addi a5,a5,858 # c0013e46 + c0009af4: 20f43423 sd a5,520(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1606 ops->from_string = invalid_from_string; - c0009a0a: ffffa797 auipc a5,0xffffa - c0009a0e: 67078793 addi a5,a5,1648 # c000407a - c0009a12: 20f43823 sd a5,528(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1603 + c0009af8: ffffa797 auipc a5,0xffffa + c0009afc: 58278793 addi a5,a5,1410 # c000407a + c0009b00: 20f43823 sd a5,528(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1607 ops->unary_arith = invalid_unary_arith; - c0009a16: 0000a797 auipc a5,0xa - c0009a1a: 32278793 addi a5,a5,802 # c0013d38 - c0009a1e: 20f43c23 sd a5,536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1604 + c0009b04: 0000a797 auipc a5,0xa + c0009b08: 32278793 addi a5,a5,802 # c0013e26 + c0009b0c: 20f43c23 sd a5,536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1608 ops->binary_arith = invalid_binary_arith; - c0009a22: 0000a797 auipc a5,0xa - c0009a26: 2e878793 addi a5,a5,744 # c0013d0a - c0009a2a: 22f43023 sd a5,544(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1605 + c0009b10: 0000a797 auipc a5,0xa + c0009b14: 2e878793 addi a5,a5,744 # c0013df8 + c0009b18: 22f43023 sd a5,544(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1609 ops->mul_pow10_to_float64 = invalid_mul_pow10_to_float64; - c0009a2e: 0000a797 auipc a5,0xa - c0009a32: 2d478793 addi a5,a5,724 # c0013d02 - c0009a36: 22f43823 sd a5,560(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1606 + c0009b1c: 0000a797 auipc a5,0xa + c0009b20: 2d478793 addi a5,a5,724 # c0013df0 + c0009b24: 22f43823 sd a5,560(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1610 ops->mul_pow10 = invalid_mul_pow10; - c0009a3a: 0000a797 auipc a5,0xa - c0009a3e: 2b878793 addi a5,a5,696 # c0013cf2 - c0009a42: 22f43c23 sd a5,568(s0) + c0009b28: 0000a797 auipc a5,0xa + c0009b2c: 2b878793 addi a5,a5,696 # c0013de0 + c0009b30: 22f43c23 sd a5,568(s0) JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1663 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1667 init_list_head(&rt->context_list); - c0009a46: 07840793 addi a5,s0,120 + c0009b34: 07840793 addi a5,s0,120 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0009a4a: fc3c sd a5,120(s0) + c0009b38: fc3c sd a5,120(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0009a4c: e05c sd a5,128(s0) + c0009b3a: e05c sd a5,128(s0) JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1668 init_list_head(&rt->gc_obj_list); - c0009a4e: 08840793 addi a5,s0,136 + c0009b3c: 08840793 addi a5,s0,136 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0009a52: e45c sd a5,136(s0) + c0009b40: e45c sd a5,136(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0009a54: e85c sd a5,144(s0) + c0009b42: e85c sd a5,144(s0) JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1665 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1669 init_list_head(&rt->gc_zero_ref_count_list); - c0009a56: 09840793 addi a5,s0,152 + c0009b44: 09840793 addi a5,s0,152 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0009a5a: ec5c sd a5,152(s0) + c0009b48: ec5c sd a5,152(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0009a5c: f05c sd a5,160(s0) + c0009b4a: f05c sd a5,160(s0) JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1671 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1675 init_list_head(&rt->job_list); - c0009a5e: 12040793 addi a5,s0,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1666 + c0009b4c: 12040793 addi a5,s0,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1670 rt->gc_phase = JS_GC_PHASE_NONE; - c0009a62: 0a040c23 sb zero,184(s0) + c0009b50: 0a040c23 sb zero,184(s0) init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0009a66: 12f43023 sd a5,288(s0) + c0009b54: 12f43023 sd a5,288(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0009a6a: 12f43423 sd a5,296(s0) + c0009b58: 12f43423 sd a5,296(s0) JS_InitAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2622 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2630 rt->atom_hash = NULL; - c0009a6e: 04043c23 sd zero,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2621 + c0009b5c: 04043c23 sd zero,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2629 rt->atom_hash_size = 0; - c0009a72: 04043423 sd zero,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2624 + c0009b60: 04043423 sd zero,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2632 rt->atom_size = 0; - c0009a76: 04042823 sw zero,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2625 + c0009b64: 04042823 sw zero,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2633 rt->atom_free_index = 0; - c0009a7a: 06042423 sw zero,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2626 + c0009b68: 06042423 sw zero,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2634 if (JS_ResizeAtomHash(rt, 256)) /* there are at least 195 predefined atoms */ - c0009a7e: 10000593 li a1,256 - c0009a82: 8522 mv a0,s0 - c0009a84: b00fd0ef jal ra,c0006d84 - c0009a88: e125 bnez a0,c0009ae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2629 + c0009b6c: 10000593 li a1,256 + c0009b70: 8522 mv a0,s0 + c0009b72: b00fd0ef jal ra,c0006e72 + c0009b76: e125 bnez a0,c0009bd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2637 p = js_atom_init; - c0009a8a: 00059997 auipc s3,0x59 - c0009a8e: f7e98993 addi s3,s3,-130 # c0062a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2630 + c0009b78: 00059997 auipc s3,0x59 + c0009b7c: 0f098993 addi s3,s3,240 # c0062c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 for(i = 1; i < JS_ATOM_END; i++) { - c0009a92: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2631 + c0009b80: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2639 if (i == JS_ATOM_Private_brand) - c0009a94: 0ca00a13 li s4,202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2630 + c0009b82: 0ca00a13 li s4,202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 for(i = 1; i < JS_ATOM_END; i++) { - c0009a98: 0d800a93 li s5,216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2632 + c0009b86: 0d800a93 li s5,216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2640 atom_type = JS_ATOM_TYPE_PRIVATE; - c0009a9c: 4691 li a3,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2631 + c0009b8a: 4691 li a3,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2639 if (i == JS_ATOM_Private_brand) - c0009a9e: 01490663 beq s2,s4,c0009aaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2634 + c0009b8c: 01490663 beq s2,s4,c0009b98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2642 atom_type = JS_ATOM_TYPE_SYMBOL; - c0009aa2: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2633 + c0009b90: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2641 else if (i >= JS_ATOM_Symbol_toPrimitive) - c0009aa4: 012a4363 blt s4,s2,c0009aaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2636 + c0009b92: 012a4363 blt s4,s2,c0009b98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2644 atom_type = JS_ATOM_TYPE_STRING; - c0009aa8: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2637 + c0009b96: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2645 len = strlen(p); - c0009aaa: 854e mv a0,s3 - c0009aac: e436 sd a3,8(sp) - c0009aae: 7034c0ef jal ra,c00569b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 + c0009b98: 854e mv a0,s3 + c0009b9a: e436 sd a3,8(sp) + c0009b9c: 7e54c0ef jal ra,c0056b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2646 if (__JS_NewAtomInit(rt, p, len, atom_type) == JS_ATOM_NULL) - c0009ab2: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2637 + c0009ba0: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2645 len = strlen(p); - c0009ab4: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 + c0009ba2: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2646 if (__JS_NewAtomInit(rt, p, len, atom_type) == JS_ATOM_NULL) - c0009ab8: 8626 mv a2,s1 - c0009aba: 85ce mv a1,s3 - c0009abc: 8522 mv a0,s0 - c0009abe: fbefd0ef jal ra,c000727c <__JS_NewAtomInit> - c0009ac2: 2501 sext.w a0,a0 - c0009ac4: c115 beqz a0,c0009ae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2640 + c0009ba6: 8626 mv a2,s1 + c0009ba8: 85ce mv a1,s3 + c0009baa: 8522 mv a0,s0 + c0009bac: fbefd0ef jal ra,c000736a <__JS_NewAtomInit> + c0009bb0: 2501 sext.w a0,a0 + c0009bb2: c115 beqz a0,c0009bd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2648 p = p + len + 1; - c0009ac6: 0485 addi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2630 + c0009bb4: 0485 addi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 for(i = 1; i < JS_ATOM_END; i++) { - c0009ac8: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2640 + c0009bb6: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2648 p = p + len + 1; - c0009aca: 99a6 add s3,s3,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2630 + c0009bb8: 99a6 add s3,s3,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2638 for(i = 1; i < JS_ATOM_END; i++) { - c0009acc: fd5918e3 bne s2,s5,c0009a9c + c0009bba: fd5918e3 bne s2,s5,c0009b8a JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1677 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1681 if (init_class_range(rt, js_std_class_def, JS_CLASS_OBJECT, - c0009ad0: 02b00693 li a3,43 - c0009ad4: 4605 li a2,1 - c0009ad6: 0005c597 auipc a1,0x5c - c0009ada: cf258593 addi a1,a1,-782 # c00657c8 - c0009ade: 8522 mv a0,s0 - c0009ae0: 9e0fb0ef jal ra,c0004cc0 - c0009ae4: 00055763 bgez a0,c0009af2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1698 + c0009bbe: 02b00693 li a3,43 + c0009bc2: 4605 li a2,1 + c0009bc4: 0005c597 auipc a1,0x5c + c0009bc8: e6458593 addi a1,a1,-412 # c0065a28 + c0009bcc: 8522 mv a0,s0 + c0009bce: 8f2fb0ef jal ra,c0004cc0 + c0009bd2: 00055763 bgez a0,c0009be0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1702 JS_FreeRuntime(rt); - c0009ae8: 8522 mv a0,s0 - c0009aea: d8fff0ef jal ra,c0009878 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1699 + c0009bd6: 8522 mv a0,s0 + c0009bd8: d8fff0ef jal ra,c0009966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1703 return NULL; - c0009aee: 4401 li s0,0 - c0009af0: a851 j c0009b84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1680 + c0009bdc: 4401 li s0,0 + c0009bde: a851 j c0009c72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1684 rt->class_array[JS_CLASS_ARGUMENTS].exotic = &js_arguments_exotic_methods; - c0009af2: 783c ld a5,112(s0) - c0009af4: 00058717 auipc a4,0x58 - c0009af8: 68470713 addi a4,a4,1668 # c0062178 + c0009be0: 783c ld a5,112(s0) + c0009be2: 00058717 auipc a4,0x58 + c0009be6: 7f670713 addi a4,a4,2038 # c00623d8 init_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4331 rt->shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c0009afc: 08000593 li a1,128 + c0009bea: 08000593 li a1,128 JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1684 rt->class_array[JS_CLASS_ARGUMENTS].exotic = &js_arguments_exotic_methods; - c0009b00: 16e7b023 sd a4,352(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1681 + c0009bee: 16e7b023 sd a4,352(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1685 rt->class_array[JS_CLASS_STRING].exotic = &js_string_exotic_methods; - c0009b04: 783c ld a5,112(s0) - c0009b06: 0005c717 auipc a4,0x5c - c0009b0a: 0ca70713 addi a4,a4,202 # c0065bd0 + c0009bf2: 783c ld a5,112(s0) + c0009bf4: 0005c717 auipc a4,0x5c + c0009bf8: 23c70713 addi a4,a4,572 # c0065e30 init_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4331 rt->shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c0009b0e: 8522 mv a0,s0 + c0009bfc: 8522 mv a0,s0 JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1681 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1685 rt->class_array[JS_CLASS_STRING].exotic = &js_string_exotic_methods; - c0009b10: f7f8 sd a4,232(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1682 + c0009bfe: f7f8 sd a4,232(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1686 rt->class_array[JS_CLASS_MODULE_NS].exotic = &js_module_ns_exotic_methods; - c0009b12: 783c ld a5,112(s0) - c0009b14: 0005b717 auipc a4,0x5b - c0009b18: d0c70713 addi a4,a4,-756 # c0064820 - c0009b1c: 1ce7bc23 sd a4,472(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1684 + c0009c00: 783c ld a5,112(s0) + c0009c02: 0005b717 auipc a4,0x5b + c0009c06: e7e70713 addi a4,a4,-386 # c0064a80 + c0009c0a: 1ce7bc23 sd a4,472(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1688 rt->class_array[JS_CLASS_C_FUNCTION].call = js_call_c_function; - c0009b20: 783c ld a5,112(s0) - c0009b22: 0001f717 auipc a4,0x1f - c0009b26: 06270713 addi a4,a4,98 # c0028b84 - c0009b2a: 1ee7bc23 sd a4,504(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1685 + c0009c0e: 783c ld a5,112(s0) + c0009c10: 0001f717 auipc a4,0x1f + c0009c14: 14470713 addi a4,a4,324 # c0028d54 + c0009c18: 1ee7bc23 sd a4,504(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1689 rt->class_array[JS_CLASS_C_FUNCTION_DATA].call = js_c_function_data_call; - c0009b2e: 783c ld a5,112(s0) - c0009b30: 00001717 auipc a4,0x1 - c0009b34: da670713 addi a4,a4,-602 # c000a8d6 - c0009b38: 26e7b823 sd a4,624(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1686 + c0009c1c: 783c ld a5,112(s0) + c0009c1e: 00001717 auipc a4,0x1 + c0009c22: da670713 addi a4,a4,-602 # c000a9c4 + c0009c26: 26e7b823 sd a4,624(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1690 rt->class_array[JS_CLASS_BOUND_FUNCTION].call = js_call_bound_function; - c0009b3c: 783c ld a5,112(s0) - c0009b3e: 00032717 auipc a4,0x32 - c0009b42: d6270713 addi a4,a4,-670 # c003b8a0 - c0009b46: 24e7b423 sd a4,584(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1687 + c0009c2a: 783c ld a5,112(s0) + c0009c2c: 00032717 auipc a4,0x32 + c0009c30: e4470713 addi a4,a4,-444 # c003ba70 + c0009c34: 24e7b423 sd a4,584(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1691 rt->class_array[JS_CLASS_GENERATOR_FUNCTION].call = js_generator_function_call; - c0009b4a: 783c ld a5,112(s0) - c0009b4c: 0002e717 auipc a4,0x2e - c0009b50: 5fe70713 addi a4,a4,1534 # c003814a - c0009b54: 28e7bc23 sd a4,664(a5) + c0009c38: 783c ld a5,112(s0) + c0009c3a: 0002e717 auipc a4,0x2e + c0009c3e: 6e070713 addi a4,a4,1760 # c003831a + c0009c42: 28e7bc23 sd a4,664(a5) init_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4328 rt->shape_hash_bits = 4; /* 16 shapes */ - c0009b58: 4785 li a5,1 - c0009b5a: 1792 slli a5,a5,0x24 - c0009b5c: 0791 addi a5,a5,4 - c0009b5e: 16f43c23 sd a5,376(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4322 + c0009c46: 4785 li a5,1 + c0009c48: 1792 slli a5,a5,0x24 + c0009c4a: 0791 addi a5,a5,4 + c0009c4c: 16f43c23 sd a5,376(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4330 rt->shape_hash_count = 0; - c0009b62: 18042023 sw zero,384(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 + c0009c50: 18042023 sw zero,384(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4331 rt->shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c0009b66: a00fd0ef jal ra,c0006d66 - c0009b6a: 18a43423 sd a0,392(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4325 + c0009c54: a00fd0ef jal ra,c0006e54 + c0009c58: 18a43423 sd a0,392(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 if (!rt->shape_hash) - c0009b6e: dd2d beqz a0,c0009ae8 + c0009c5c: dd2d beqz a0,c0009bd6 JS_NewRuntime2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1691 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1695 rt->stack_size = JS_DEFAULT_STACK_SIZE; - c0009b70: 000407b7 lui a5,0x40 - c0009b74: e47c sd a5,200(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1692 + c0009c5e: 000407b7 lui a5,0x40 + c0009c62: e47c sd a5,200(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1696 JS_UpdateStackTop(rt); - c0009b76: 8522 mv a0,s0 - c0009b78: bb8fd0ef jal ra,c0006f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1694 + c0009c64: 8522 mv a0,s0 + c0009c66: bb8fd0ef jal ra,c000701e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1698 rt->current_exception = JS_NULL; - c0009b7c: 4789 li a5,2 - c0009b7e: 0e043023 sd zero,224(s0) - c0009b82: f47c sd a5,232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1700 -} - c0009b84: 70a6 ld ra,104(sp) - c0009b86: 8522 mv a0,s0 - c0009b88: 7406 ld s0,96(sp) - c0009b8a: 64e6 ld s1,88(sp) - c0009b8c: 6946 ld s2,80(sp) - c0009b8e: 69a6 ld s3,72(sp) - c0009b90: 6a06 ld s4,64(sp) - c0009b92: 7ae2 ld s5,56(sp) - c0009b94: 6165 addi sp,sp,112 - c0009b96: 8082 ret - -00000000c0009b98 : + c0009c6a: 4789 li a5,2 + c0009c6c: 0e043023 sd zero,224(s0) + c0009c70: f47c sd a5,232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1704 +} + c0009c72: 70a6 ld ra,104(sp) + c0009c74: 8522 mv a0,s0 + c0009c76: 7406 ld s0,96(sp) + c0009c78: 64e6 ld s1,88(sp) + c0009c7a: 6946 ld s2,80(sp) + c0009c7c: 69a6 ld s3,72(sp) + c0009c7e: 6a06 ld s4,64(sp) + c0009c80: 7ae2 ld s5,56(sp) + c0009c82: 6165 addi sp,sp,112 + c0009c84: 8082 ret + +00000000c0009c86 : JS_NewRuntime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1794 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1802 return JS_NewRuntime2(&def_malloc_funcs, NULL); - c0009b98: 4581 li a1,0 - c0009b9a: 00058517 auipc a0,0x58 - c0009b9e: 4ee50513 addi a0,a0,1262 # c0062088 - c0009ba2: de7ff06f j c0009988 + c0009c86: 4581 li a1,0 + c0009c88: 00058517 auipc a0,0x58 + c0009c8c: 66050513 addi a0,a0,1632 # c00622e8 + c0009c90: de7ff06f j c0009a76 -00000000c0009ba6 : +00000000c0009c94 : JS_IsLiveObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5930 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5938 { - c0009ba6: 1141 addi sp,sp,-16 - c0009ba8: e432 sd a2,8(sp) - c0009baa: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5932 + c0009c94: 1141 addi sp,sp,-16 + c0009c96: e432 sd a2,8(sp) + c0009c98: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5940 if (!JS_IsObject(obj)) - c0009bac: 2601 sext.w a2,a2 - c0009bae: 57fd li a5,-1 - c0009bb0: 4501 li a0,0 - c0009bb2: 00f61963 bne a2,a5,c0009bc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5935 + c0009c9a: 2601 sext.w a2,a2 + c0009c9c: 57fd li a5,-1 + c0009c9e: 4501 li a0,0 + c0009ca0: 00f61963 bne a2,a5,c0009cb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5943 return !p->free_mark; - c0009bb6: 0055c503 lbu a0,5(a1) - c0009bba: 0015551b srliw a0,a0,0x1 - c0009bbe: 00154513 xori a0,a0,1 - c0009bc2: 8905 andi a0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5936 + c0009ca4: 0055c503 lbu a0,5(a1) + c0009ca8: 0015551b srliw a0,a0,0x1 + c0009cac: 00154513 xori a0,a0,1 + c0009cb0: 8905 andi a0,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5944 } - c0009bc4: 0141 addi sp,sp,16 - c0009bc6: 8082 ret + c0009cb2: 0141 addi sp,sp,16 + c0009cb4: 8082 ret -00000000c0009bc8 : +00000000c0009cb6 : JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6019 -{ - c0009bc8: 7115 addi sp,sp,-224 - c0009bca: e9a2 sd s0,208(sp) - c0009bcc: e1ca sd s2,192(sp) - c0009bce: 842e mv s0,a1 - c0009bd0: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6027 +{ + c0009cb6: 7115 addi sp,sp,-224 + c0009cb8: e9a2 sd s0,208(sp) + c0009cba: e1ca sd s2,192(sp) + c0009cbc: 842e mv s0,a1 + c0009cbe: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6030 JSMemoryUsage_helper mem = { 0 }, *hp = &mem; - c0009bd2: 04000613 li a2,64 - c0009bd6: 4581 li a1,0 - c0009bd8: 1008 addi a0,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6019 -{ - c0009bda: ed86 sd ra,216(sp) - c0009bdc: fd4e sd s3,184(sp) - c0009bde: f952 sd s4,176(sp) - c0009be0: f556 sd s5,168(sp) - c0009be2: e5a6 sd s1,200(sp) - c0009be4: f15a sd s6,160(sp) - c0009be6: ed5e sd s7,152(sp) - c0009be8: e962 sd s8,144(sp) - c0009bea: e566 sd s9,136(sp) - c0009bec: e16a sd s10,128(sp) - c0009bee: fcee sd s11,120(sp) - c0009bf0: b4a2 fsd fs0,104(sp) - c0009bf2: b0a6 fsd fs1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6022 + c0009cc0: 04000613 li a2,64 + c0009cc4: 4581 li a1,0 + c0009cc6: 1008 addi a0,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6027 +{ + c0009cc8: ed86 sd ra,216(sp) + c0009cca: fd4e sd s3,184(sp) + c0009ccc: f952 sd s4,176(sp) + c0009cce: f556 sd s5,168(sp) + c0009cd0: e5a6 sd s1,200(sp) + c0009cd2: f15a sd s6,160(sp) + c0009cd4: ed5e sd s7,152(sp) + c0009cd6: e962 sd s8,144(sp) + c0009cd8: e566 sd s9,136(sp) + c0009cda: e16a sd s10,128(sp) + c0009cdc: fcee sd s11,120(sp) + c0009cde: b4a2 fsd fs0,104(sp) + c0009ce0: b0a6 fsd fs1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6030 JSMemoryUsage_helper mem = { 0 }, *hp = &mem; - c0009bf4: 47d4c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6024 + c0009ce2: 55f4c0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6032 memset(s, 0, sizeof(*s)); - c0009bf8: 0d000613 li a2,208 - c0009bfc: 4581 li a1,0 - c0009bfe: 8522 mv a0,s0 - c0009c00: 4714c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6025 + c0009ce6: 0d000613 li a2,208 + c0009cea: 4581 li a1,0 + c0009cec: 8522 mv a0,s0 + c0009cee: 5534c0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6033 s->malloc_count = rt->malloc_state.malloc_count; - c0009c04: 02093783 ld a5,32(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6032 + c0009cf2: 02093783 ld a5,32(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6040 list_for_each(el, &rt->context_list) { - c0009c08: 07890993 addi s3,s2,120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6073 + c0009cf6: 07890993 addi s3,s2,120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6081 s->memory_used_size += m->import_entries_count * sizeof(*m->import_entries); - c0009c0c: 4a31 li s4,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6025 + c0009cfa: 4a31 li s4,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6033 s->malloc_count = rt->malloc_state.malloc_count; - c0009c0e: ec1c sd a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6026 + c0009cfc: ec1c sd a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6034 s->malloc_size = rt->malloc_state.malloc_size; - c0009c10: 02893783 ld a5,40(s2) - c0009c14: e01c sd a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6027 + c0009cfe: 02893783 ld a5,40(s2) + c0009d02: e01c sd a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6035 s->malloc_limit = rt->malloc_state.malloc_limit; - c0009c16: 03093783 ld a5,48(s2) - c0009c1a: e41c sd a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6029 + c0009d04: 03093783 ld a5,48(s2) + c0009d08: e41c sd a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6037 s->memory_used_count = 2; /* rt + rt->class_array */ - c0009c1c: 4789 li a5,2 - c0009c1e: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6030 + c0009d0a: 4789 li a5,2 + c0009d0c: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6038 s->memory_used_size = sizeof(JSRuntime) + sizeof(JSValue) * rt->class_count; - c0009c20: 06c92783 lw a5,108(s2) - c0009c24: 0792 slli a5,a5,0x4 - c0009c26: 24878793 addi a5,a5,584 # 40248 <__clzdi2-0xbffbfdb8> - c0009c2a: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6032 + c0009d0e: 06c92783 lw a5,108(s2) + c0009d12: 0792 slli a5,a5,0x4 + c0009d14: 24878793 addi a5,a5,584 # 40248 <__clzdi2-0xbffbfdb8> + c0009d18: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6040 list_for_each(el, &rt->context_list) { - c0009c2c: 08093a83 ld s5,128(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6032 (discriminator 1) - c0009c30: 153a9e63 bne s5,s3,c0009d8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6080 + c0009d1a: 08093a83 ld s5,128(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6040 (discriminator 1) + c0009d1e: 153a9e63 bne s5,s3,c0009e7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6088 list_for_each(el, &rt->gc_obj_list) { - c0009c34: 09093483 ld s1,144(s2) - c0009c38: 08890a93 addi s5,s2,136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6087 + c0009d22: 09093483 ld s1,144(s2) + c0009d26: 08890a93 addi s5,s2,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6095 if (gp->gc_obj_type == JS_GC_OBJ_TYPE_FUNCTION_BYTECODE) { - c0009c3c: 4b05 li s6,1 - c0009c3e: 00053a17 auipc s4,0x53 - c0009c42: fd6a0a13 addi s4,s4,-42 # c005cc14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6159 + c0009d2a: 4b05 li s6,1 + c0009d2c: 00053a17 auipc s4,0x53 + c0009d30: 118a0a13 addi s4,s4,280 # c005ce44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6167 s->memory_used_count += 1 / ref_count; - c0009c46: 0006b797 auipc a5,0x6b - c0009c4a: b527b407 fld fs0,-1198(a5) # c0074798 <_erodata+0x18> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6160 + c0009d34: 0006b797 auipc a5,0x6b + c0009d38: cc47b407 fld fs0,-828(a5) # c00749f8 <_erodata+0x18> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6168 s->js_func_size += sizeof(*var_refs[i]) / ref_count; - c0009c4e: 0006b797 auipc a5,0x6b - c0009c52: b8a7b487 fld fs1,-1142(a5) # c00747d8 <_erodata+0x58> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6080 (discriminator 1) + c0009d3c: 0006b797 auipc a5,0x6b + c0009d40: cfc7b487 fld fs1,-772(a5) # c0074a38 <_erodata+0x58> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6088 (discriminator 1) list_for_each(el, &rt->gc_obj_list) { - c0009c56: 25549863 bne s1,s5,c0009ea6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6264 + c0009d44: 25549863 bne s1,s5,c0009f94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6272 s->obj_size += s->obj_count * sizeof(JSObject); - c0009c5a: 04843b03 ld s6,72(s0) - c0009c5e: 04800793 li a5,72 - c0009c62: 05043983 ld s3,80(s0) - c0009c66: 02fb07b3 mul a5,s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6267 + c0009d48: 04843b03 ld s6,72(s0) + c0009d4c: 04800793 li a5,72 + c0009d50: 05043983 ld s3,80(s0) + c0009d54: 02fb07b3 mul a5,s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6275 s->memory_used_count++; /* rt->shape_hash */ - c0009c6a: 02043b83 ld s7,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6268 + c0009d58: 02043b83 ld s7,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6276 s->memory_used_size += sizeof(rt->shape_hash[0]) * rt->shape_hash_size; - c0009c6e: 01043a03 ld s4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6269 + c0009d5c: 01043a03 ld s4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6277 for(i = 0; i < rt->shape_hash_size; i++) { - c0009c72: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6264 + c0009d60: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6272 s->obj_size += s->obj_count * sizeof(JSObject); - c0009c74: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6267 + c0009d62: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6275 s->memory_used_count++; /* rt->shape_hash */ - c0009c76: 001b8793 addi a5,s7,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6264 + c0009d64: 001b8793 addi a5,s7,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6272 s->obj_size += s->obj_count * sizeof(JSObject); - c0009c7a: 05343823 sd s3,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6267 + c0009d68: 05343823 sd s3,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6275 s->memory_used_count++; /* rt->shape_hash */ - c0009c7e: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6268 + c0009d6c: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6276 s->memory_used_size += sizeof(rt->shape_hash[0]) * rt->shape_hash_size; - c0009c80: 17c92783 lw a5,380(s2) - c0009c84: 078e slli a5,a5,0x3 - c0009c86: 9a3e add s4,s4,a5 - c0009c88: 01443823 sd s4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6269 (discriminator 1) + c0009d6e: 17c92783 lw a5,380(s2) + c0009d72: 078e slli a5,a5,0x3 + c0009d74: 9a3e add s4,s4,a5 + c0009d76: 01443823 sd s4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6277 (discriminator 1) for(i = 0; i < rt->shape_hash_size; i++) { - c0009c8c: 17c92783 lw a5,380(s2) - c0009c90: 54f6c663 blt a3,a5,c000a1dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6279 + c0009d7a: 17c92783 lw a5,380(s2) + c0009d7e: 54f6c663 blt a3,a5,c000a2ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6287 s->memory_used_count += 2; /* rt->atom_array, rt->atom_hash */ - c0009c94: 0b8d addi s7,s7,3 - c0009c96: 03743023 sd s7,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6280 + c0009d82: 0b8d addi s7,s7,3 + c0009d84: 03743023 sd s7,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6288 s->atom_count = rt->atom_count; - c0009c9a: 04c92d03 lw s10,76(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6286 + c0009d88: 04c92d03 lw s10,76(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 s->atom_size += (sizeof(*p) + (p->len << p->is_wide_char) + - c0009c9e: 80000637 lui a2,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6283 + c0009d8c: 80000637 lui a2,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 for(i = 0; i < rt->atom_size; i++) { - c0009ca2: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6280 + c0009d90: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6288 s->atom_count = rt->atom_count; - c0009ca4: 03a43423 sd s10,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6281 + c0009d92: 03a43423 sd s10,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6289 s->atom_size = sizeof(rt->atom_array[0]) * rt->atom_size + - c0009ca8: 05092703 lw a4,80(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6282 + c0009d96: 05092703 lw a4,80(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6290 sizeof(rt->atom_hash[0]) * rt->atom_hash_size; - c0009cac: 04892783 lw a5,72(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6286 + c0009d9a: 04892783 lw a5,72(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 s->atom_size += (sizeof(*p) + (p->len << p->is_wide_char) + - c0009cb0: fff64613 not a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6281 + c0009d9e: fff64613 not a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6289 s->atom_size = sizeof(rt->atom_array[0]) * rt->atom_size + - c0009cb4: 0706 slli a4,a4,0x1 - c0009cb6: 973e add a4,a4,a5 - c0009cb8: 070a slli a4,a4,0x2 - c0009cba: f818 sd a4,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6283 (discriminator 1) + c0009da2: 0706 slli a4,a4,0x1 + c0009da4: 973e add a4,a4,a5 + c0009da6: 070a slli a4,a4,0x2 + c0009da8: f818 sd a4,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 (discriminator 1) for(i = 0; i < rt->atom_size; i++) { - c0009cbc: 05092783 lw a5,80(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6286 (discriminator 1) + c0009daa: 05092783 lw a5,80(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 (discriminator 1) s->atom_size += (sizeof(*p) + (p->len << p->is_wide_char) + - c0009cc0: 03043a83 ld s5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6283 (discriminator 1) + c0009dae: 03043a83 ld s5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 (discriminator 1) for(i = 0; i < rt->atom_size; i++) { - c0009cc4: 54f6c563 blt a3,a5,c000a20e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6290 + c0009db2: 54f6c563 blt a3,a5,c000a2fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 s->str_count = round(mem.str_count); - c0009cc8: 3522 fld fa0,40(sp) - c0009cca: 3944e0ef jal ra,c005805e - c0009cce: c2251753 fcvt.l.d a4,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 + c0009db6: 3522 fld fa0,40(sp) + c0009db8: 4764e0ef jal ra,c005822e + c0009dbc: c2251753 fcvt.l.d a4,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 s->str_size = round(mem.str_size); - c0009cd2: 3542 fld fa0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6290 + c0009dc0: 3542 fld fa0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 s->str_count = round(mem.str_count); - c0009cd4: fc18 sd a4,56(s0) - c0009cd6: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 + c0009dc2: fc18 sd a4,56(s0) + c0009dc4: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 s->str_size = round(mem.str_size); - c0009cd8: 3864e0ef jal ra,c005805e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6292 + c0009dc6: 4684e0ef jal ra,c005822e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6300 s->js_func_count = mem.js_func_count; - c0009cdc: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 + c0009dca: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 s->str_size = round(mem.str_size); - c0009cde: c2251c53 fcvt.l.d s8,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6293 + c0009dcc: c2251c53 fcvt.l.d s8,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6301 s->js_func_size = round(mem.js_func_size); - c0009ce2: 2506 fld fa0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6292 + c0009dd0: 2506 fld fa0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6300 s->js_func_count = mem.js_func_count; - c0009ce4: fc3c sd a5,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 + c0009dd2: fc3c sd a5,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 s->str_size = round(mem.str_size); - c0009ce6: 05843023 sd s8,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6292 + c0009dd4: 05843023 sd s8,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6300 s->js_func_count = mem.js_func_count; - c0009cea: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6293 + c0009dd8: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6301 s->js_func_size = round(mem.js_func_size); - c0009cec: 3724e0ef jal ra,c005805e - c0009cf0: c2251953 fcvt.l.d s2,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6295 + c0009dda: 4544e0ef jal ra,c005822e + c0009dde: c2251953 fcvt.l.d s2,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6303 s->js_func_pc2line_count = mem.js_func_pc2line_count; - c0009cf4: 6dc6 ld s11,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6296 + c0009de2: 6dc6 ld s11,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 s->js_func_pc2line_size = mem.js_func_pc2line_size; - c0009cf6: 6ce6 ld s9,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 + c0009de4: 6ce6 ld s9,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6302 s->js_func_code_size = mem.js_func_code_size; - c0009cf8: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6297 + c0009de6: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6305 s->memory_used_count += round(mem.memory_used_count) + - c0009cfa: 3502 fld fa0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6293 + c0009de8: 3502 fld fa0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6301 s->js_func_size = round(mem.js_func_size); - c0009cfc: 09243023 sd s2,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 + c0009dea: 09243023 sd s2,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6302 s->js_func_code_size = mem.js_func_code_size; - c0009d00: e444 sd s1,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6295 + c0009dee: e444 sd s1,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6303 s->js_func_pc2line_count = mem.js_func_pc2line_count; - c0009d02: 09b43823 sd s11,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6296 + c0009df0: 09b43823 sd s11,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 s->js_func_pc2line_size = mem.js_func_pc2line_size; - c0009d06: 09943c23 sd s9,152(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6297 + c0009df4: 09943c23 sd s9,152(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6305 s->memory_used_count += round(mem.memory_used_count) + - c0009d0a: 3544e0ef jal ra,c005805e - c0009d0e: d20d07d3 fcvt.d.w fa5,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 + c0009df8: 4364e0ef jal ra,c005822e + c0009dfc: d20d07d3 fcvt.d.w fa5,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6306 s->atom_count + s->str_count + - c0009d12: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 + c0009e00: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 s->obj_count + s->shape_count + - c0009d14: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6297 + c0009e02: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6305 s->memory_used_count += round(mem.memory_used_count) + - c0009d16: 02a7f7d3 fadd.d fa5,fa5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 + c0009e04: 02a7f7d3 fadd.d fa5,fa5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6306 s->atom_count + s->str_count + - c0009d1a: d2277553 fcvt.d.l fa0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 + c0009e08: d2277553 fcvt.d.l fa0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 s->obj_count + s->shape_count + - c0009d1e: 7438 ld a4,104(s0) - c0009d20: d227f753 fcvt.d.l fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6301 + c0009e0c: 7438 ld a4,104(s0) + c0009e0e: d227f753 fcvt.d.l fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6309 s->memory_used_size += s->atom_size + s->str_size + - c0009d24: 94e6 add s1,s1,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 + c0009e12: 94e6 add s1,s1,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6312 } - c0009d26: 60ee ld ra,216(sp) - c0009d28: 6caa ld s9,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 + c0009e14: 60ee ld ra,216(sp) + c0009e16: 6caa ld s9,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6306 s->atom_count + s->str_count + - c0009d2a: 02a7f7d3 fadd.d fa5,fa5,fa0 - c0009d2e: d22b7553 fcvt.d.l fa0,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 + c0009e18: 02a7f7d3 fadd.d fa5,fa5,fa0 + c0009e1c: d22b7553 fcvt.d.l fa0,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6312 } - c0009d32: 6d0a ld s10,128(sp) - c0009d34: 7b0a ld s6,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6298 + c0009e20: 6d0a ld s10,128(sp) + c0009e22: 7b0a ld s6,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6306 s->atom_count + s->str_count + - c0009d36: 02a7f7d3 fadd.d fa5,fa5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6299 + c0009e24: 02a7f7d3 fadd.d fa5,fa5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 s->obj_count + s->shape_count + - c0009d3a: d2277553 fcvt.d.l fa0,a4 - c0009d3e: 02a7f7d3 fadd.d fa5,fa5,fa0 - c0009d42: 02e7f7d3 fadd.d fa5,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6300 + c0009e28: d2277553 fcvt.d.l fa0,a4 + c0009e2c: 02a7f7d3 fadd.d fa5,fa5,fa0 + c0009e30: 02e7f7d3 fadd.d fa5,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6308 s->js_func_count + s->js_func_pc2line_count; - c0009d46: d22df753 fcvt.d.l fa4,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 + c0009e34: d22df753 fcvt.d.l fa4,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6312 } - c0009d4a: 7de6 ld s11,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6300 + c0009e38: 7de6 ld s11,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6308 s->js_func_count + s->js_func_pc2line_count; - c0009d4c: 02e7f7d3 fadd.d fa5,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6297 + c0009e3a: 02e7f7d3 fadd.d fa5,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6305 s->memory_used_count += round(mem.memory_used_count) + - c0009d50: d22bf753 fcvt.d.l fa4,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 + c0009e3e: d22bf753 fcvt.d.l fa4,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6312 } - c0009d54: 6bea ld s7,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6297 + c0009e42: 6bea ld s7,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6305 s->memory_used_count += round(mem.memory_used_count) + - c0009d56: 02e7f7d3 fadd.d fa5,fa5,fa4 - c0009d5a: c22797d3 fcvt.l.d a5,fa5,rtz - c0009d5e: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6301 + c0009e44: 02e7f7d3 fadd.d fa5,fa5,fa4 + c0009e48: c22797d3 fcvt.l.d a5,fa5,rtz + c0009e4c: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6309 s->memory_used_size += s->atom_size + s->str_size + - c0009d60: 703c ld a5,96(s0) - c0009d62: 94be add s1,s1,a5 - c0009d64: 783c ld a5,112(s0) - c0009d66: 94be add s1,s1,a5 - c0009d68: 014487b3 add a5,s1,s4 - c0009d6c: 97ce add a5,a5,s3 - c0009d6e: 97d6 add a5,a5,s5 - c0009d70: 97e2 add a5,a5,s8 - c0009d72: 97ca add a5,a5,s2 - c0009d74: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6304 -} - c0009d76: 644e ld s0,208(sp) - c0009d78: 64ae ld s1,200(sp) - c0009d7a: 690e ld s2,192(sp) - c0009d7c: 79ea ld s3,184(sp) - c0009d7e: 7a4a ld s4,176(sp) - c0009d80: 7aaa ld s5,168(sp) - c0009d82: 6c4a ld s8,144(sp) - c0009d84: 3426 fld fs0,104(sp) - c0009d86: 3486 fld fs1,96(sp) - c0009d88: 612d addi sp,sp,224 - c0009d8a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6035 + c0009e4e: 703c ld a5,96(s0) + c0009e50: 94be add s1,s1,a5 + c0009e52: 783c ld a5,112(s0) + c0009e54: 94be add s1,s1,a5 + c0009e56: 014487b3 add a5,s1,s4 + c0009e5a: 97ce add a5,a5,s3 + c0009e5c: 97d6 add a5,a5,s5 + c0009e5e: 97e2 add a5,a5,s8 + c0009e60: 97ca add a5,a5,s2 + c0009e62: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6312 +} + c0009e64: 644e ld s0,208(sp) + c0009e66: 64ae ld s1,200(sp) + c0009e68: 690e ld s2,192(sp) + c0009e6a: 79ea ld s3,184(sp) + c0009e6c: 7a4a ld s4,176(sp) + c0009e6e: 7aaa ld s5,168(sp) + c0009e70: 6c4a ld s8,144(sp) + c0009e72: 3426 fld fs0,104(sp) + c0009e74: 3486 fld fs1,96(sp) + c0009e76: 612d addi sp,sp,224 + c0009e78: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6043 s->memory_used_count += 2; /* ctx + ctx->class_proto */ - c0009d8c: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6034 + c0009e7a: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6042 JSShape *sh = ctx->array_shape; - c0009d8e: 018ab703 ld a4,24(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6036 + c0009e7c: 018ab703 ld a4,24(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6044 s->memory_used_size += sizeof(JSContext) + - c0009d92: 6814 ld a3,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6035 + c0009e80: 6814 ld a3,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6043 s->memory_used_count += 2; /* ctx + ctx->class_proto */ - c0009d94: 0789 addi a5,a5,2 - c0009d96: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6037 + c0009e82: 0789 addi a5,a5,2 + c0009e84: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6045 sizeof(JSValue) * rt->class_count; - c0009d98: 06c92783 lw a5,108(s2) - c0009d9c: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6036 + c0009e86: 06c92783 lw a5,108(s2) + c0009e8a: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6044 s->memory_used_size += sizeof(JSContext) + - c0009d9e: 97b6 add a5,a5,a3 - c0009da0: 1c878793 addi a5,a5,456 - c0009da4: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6038 + c0009e8c: 97b6 add a5,a5,a3 + c0009e8e: 1c878793 addi a5,a5,456 + c0009e92: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6046 s->binary_object_count += ctx->binary_object_count; - c0009da6: 010ad683 lhu a3,16(s5) - c0009daa: 607c ld a5,192(s0) - c0009dac: 97b6 add a5,a5,a3 - c0009dae: e07c sd a5,192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6039 + c0009e94: 010ad683 lhu a3,16(s5) + c0009e98: 607c ld a5,192(s0) + c0009e9a: 97b6 add a5,a5,a3 + c0009e9c: e07c sd a5,192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6047 s->binary_object_size += ctx->binary_object_size; - c0009db0: 014aa683 lw a3,20(s5) - c0009db4: 647c ld a5,200(s0) - c0009db6: 97b6 add a5,a5,a3 - c0009db8: e47c sd a5,200(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6042 + c0009e9e: 014aa683 lw a3,20(s5) + c0009ea2: 647c ld a5,200(s0) + c0009ea4: 97b6 add a5,a5,a3 + c0009ea6: e47c sd a5,200(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6050 if (sh && !sh->is_hashed) { - c0009dba: c315 beqz a4,c0009dde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6042 (discriminator 1) - c0009dbc: 01874783 lbu a5,24(a4) - c0009dc0: ef99 bnez a5,c0009dde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6043 + c0009ea8: c315 beqz a4,c0009ecc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6050 (discriminator 1) + c0009eaa: 01874783 lbu a5,24(a4) + c0009eae: ef99 bnez a5,c0009ecc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6051 int hash_size = sh->prop_hash_mask + 1; - c0009dc2: 531c lw a5,32(a4) - c0009dc4: 0017869b addiw a3,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6044 + c0009eb0: 531c lw a5,32(a4) + c0009eb2: 0017869b addiw a3,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6052 s->shape_count++; - c0009dc8: 743c ld a5,104(s0) - c0009dca: 0785 addi a5,a5,1 - c0009dcc: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6045 + c0009eb6: 743c ld a5,104(s0) + c0009eb8: 0785 addi a5,a5,1 + c0009eba: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6053 s->shape_size += get_shape_size(hash_size, sh->prop_size); - c0009dce: 535c lw a5,36(a4) - c0009dd0: 7838 ld a4,112(s0) + c0009ebc: 535c lw a5,36(a4) + c0009ebe: 7838 ld a4,112(s0) get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c0009dd2: 0786 slli a5,a5,0x1 - c0009dd4: 07c1 addi a5,a5,16 - c0009dd6: 97b6 add a5,a5,a3 - c0009dd8: 078a slli a5,a5,0x2 + c0009ec0: 0786 slli a5,a5,0x1 + c0009ec2: 07c1 addi a5,a5,16 + c0009ec4: 97b6 add a5,a5,a3 + c0009ec6: 078a slli a5,a5,0x2 JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6045 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6053 s->shape_size += get_shape_size(hash_size, sh->prop_size); - c0009dda: 97ba add a5,a5,a4 - c0009ddc: f83c sd a5,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6047 + c0009ec8: 97ba add a5,a5,a4 + c0009eca: f83c sd a5,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6055 list_for_each(el1, &ctx->loaded_modules) { - c0009dde: 188ab483 ld s1,392(s5) - c0009de2: 180a8b13 addi s6,s5,384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6047 (discriminator 1) - c0009de6: 01649563 bne s1,s6,c0009df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6032 (discriminator 2) + c0009ecc: 188ab483 ld s1,392(s5) + c0009ed0: 180a8b13 addi s6,s5,384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6055 (discriminator 1) + c0009ed4: 01649563 bne s1,s6,c0009ede +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6040 (discriminator 2) list_for_each(el, &rt->context_list) { - c0009dea: 008aba83 ld s5,8(s5) - c0009dee: b589 j c0009c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6049 + c0009ed8: 008aba83 ld s5,8(s5) + c0009edc: b589 j c0009d1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6057 s->memory_used_count += 1; - c0009df0: 7014 ld a3,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6048 + c0009ede: 7014 ld a3,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6056 JSModuleDef *m = list_entry(el1, JSModuleDef, link); - c0009df2: ff848b93 addi s7,s1,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6049 + c0009ee0: ff848b93 addi s7,s1,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6057 s->memory_used_count += 1; - c0009df6: 00168793 addi a5,a3,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> - c0009dfa: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6050 + c0009ee4: 00168793 addi a5,a3,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> + c0009ee8: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6058 s->memory_used_size += sizeof(*m); - c0009dfc: 681c ld a5,16(s0) - c0009dfe: 11878713 addi a4,a5,280 - c0009e02: e818 sd a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6051 + c0009eea: 681c ld a5,16(s0) + c0009eec: 11878713 addi a4,a5,280 + c0009ef0: e818 sd a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6059 if (m->req_module_entries) { - c0009e04: 689c ld a5,16(s1) - c0009e06: c799 beqz a5,c0009e14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6052 + c0009ef2: 689c ld a5,16(s1) + c0009ef4: c799 beqz a5,c0009f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6060 s->memory_used_count += 1; - c0009e08: 0689 addi a3,a3,2 - c0009e0a: f014 sd a3,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6053 + c0009ef6: 0689 addi a3,a3,2 + c0009ef8: f014 sd a3,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6061 s->memory_used_size += m->req_module_entries_count * sizeof(*m->req_module_entries); - c0009e0c: 4c9c lw a5,24(s1) - c0009e0e: 0792 slli a5,a5,0x4 - c0009e10: 97ba add a5,a5,a4 - c0009e12: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6055 + c0009efa: 4c9c lw a5,24(s1) + c0009efc: 0792 slli a5,a5,0x4 + c0009efe: 97ba add a5,a5,a4 + c0009f00: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6063 if (m->export_entries) { - c0009e14: 709c ld a5,32(s1) - c0009e16: ef95 bnez a5,c0009e52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6067 + c0009f02: 709c ld a5,32(s1) + c0009f04: ef95 bnez a5,c0009f40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6075 if (m->star_export_entries) { - c0009e18: 789c ld a5,48(s1) - c0009e1a: efa5 bnez a5,c0009e92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6071 + c0009f06: 789c ld a5,48(s1) + c0009f08: efa5 bnez a5,c0009f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6079 if (m->import_entries) { - c0009e1c: 60bc ld a5,64(s1) - c0009e1e: cb91 beqz a5,c0009e32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6072 + c0009f0a: 60bc ld a5,64(s1) + c0009f0c: cb91 beqz a5,c0009f20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6080 s->memory_used_count += 1; - c0009e20: 701c ld a5,32(s0) - c0009e22: 0785 addi a5,a5,1 - c0009e24: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6073 + c0009f0e: 701c ld a5,32(s0) + c0009f10: 0785 addi a5,a5,1 + c0009f12: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6081 s->memory_used_size += m->import_entries_count * sizeof(*m->import_entries); - c0009e26: 44bc lw a5,72(s1) - c0009e28: 03478733 mul a4,a5,s4 - c0009e2c: 681c ld a5,16(s0) - c0009e2e: 97ba add a5,a5,a4 - c0009e30: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6075 (discriminator 2) + c0009f14: 44bc lw a5,72(s1) + c0009f16: 03478733 mul a4,a5,s4 + c0009f1a: 681c ld a5,16(s0) + c0009f1c: 97ba add a5,a5,a4 + c0009f1e: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6083 (discriminator 2) compute_value_size(m->module_ns, hp); - c0009e32: 058bb503 ld a0,88(s7) - c0009e36: 060bb583 ld a1,96(s7) - c0009e3a: 1010 addi a2,sp,32 - c0009e3c: a3bfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6076 (discriminator 2) + c0009f20: 058bb503 ld a0,88(s7) + c0009f24: 060bb583 ld a1,96(s7) + c0009f28: 1010 addi a2,sp,32 + c0009f2a: a3bfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6084 (discriminator 2) compute_value_size(m->func_obj, hp); - c0009e40: 068bb503 ld a0,104(s7) - c0009e44: 070bb583 ld a1,112(s7) - c0009e48: 1010 addi a2,sp,32 - c0009e4a: a2dfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6047 (discriminator 2) + c0009f2e: 068bb503 ld a0,104(s7) + c0009f32: 070bb583 ld a1,112(s7) + c0009f36: 1010 addi a2,sp,32 + c0009f38: a2dfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6055 (discriminator 2) list_for_each(el1, &ctx->loaded_modules) { - c0009e4e: 6484 ld s1,8(s1) - c0009e50: bf59 j c0009de6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6056 + c0009f3c: 6484 ld s1,8(s1) + c0009f3e: bf59 j c0009ed4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6064 s->memory_used_count += 1; - c0009e52: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6058 + c0009f40: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6066 for (i = 0; i < m->export_entries_count; i++) { - c0009e54: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6056 + c0009f42: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6064 s->memory_used_count += 1; - c0009e56: 0785 addi a5,a5,1 - c0009e58: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6057 + c0009f44: 0785 addi a5,a5,1 + c0009f46: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6065 s->memory_used_size += m->export_entries_count * sizeof(*m->export_entries); - c0009e5a: 549c lw a5,40(s1) - c0009e5c: 00579713 slli a4,a5,0x5 - c0009e60: 681c ld a5,16(s0) - c0009e62: 97ba add a5,a5,a4 - c0009e64: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6058 (discriminator 1) + c0009f48: 549c lw a5,40(s1) + c0009f4a: 00579713 slli a4,a5,0x5 + c0009f4e: 681c ld a5,16(s0) + c0009f50: 97ba add a5,a5,a4 + c0009f52: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6066 (discriminator 1) for (i = 0; i < m->export_entries_count; i++) { - c0009e66: 549c lw a5,40(s1) - c0009e68: fafc58e3 bge s8,a5,c0009e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6059 + c0009f54: 549c lw a5,40(s1) + c0009f56: fafc58e3 bge s8,a5,c0009f06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6067 JSExportEntry *me = &m->export_entries[i]; - c0009e6c: 7098 ld a4,32(s1) - c0009e6e: 005c1793 slli a5,s8,0x5 - c0009e72: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6060 + c0009f5a: 7098 ld a4,32(s1) + c0009f5c: 005c1793 slli a5,s8,0x5 + c0009f60: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6068 if (me->export_type == JS_EXPORT_TYPE_LOCAL && me->u.local.var_ref) { - c0009e74: 4b98 lw a4,16(a5) - c0009e76: ef01 bnez a4,c0009e8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6060 (discriminator 1) - c0009e78: 6798 ld a4,8(a5) - c0009e7a: cb11 beqz a4,c0009e8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6062 + c0009f62: 4b98 lw a4,16(a5) + c0009f64: ef01 bnez a4,c0009f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6068 (discriminator 1) + c0009f66: 6798 ld a4,8(a5) + c0009f68: cb11 beqz a4,c0009f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6070 s->memory_used_count += 1; - c0009e7c: 7018 ld a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6063 + c0009f6a: 7018 ld a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6071 compute_value_size(me->u.local.var_ref->value, hp); - c0009e7e: 1010 addi a2,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6062 + c0009f6c: 1010 addi a2,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6070 s->memory_used_count += 1; - c0009e80: 0705 addi a4,a4,1 - c0009e82: f018 sd a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6063 + c0009f6e: 0705 addi a4,a4,1 + c0009f70: f018 sd a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6071 compute_value_size(me->u.local.var_ref->value, hp); - c0009e84: 679c ld a5,8(a5) - c0009e86: 7388 ld a0,32(a5) - c0009e88: 778c ld a1,40(a5) - c0009e8a: 9edfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6058 (discriminator 2) + c0009f72: 679c ld a5,8(a5) + c0009f74: 7388 ld a0,32(a5) + c0009f76: 778c ld a1,40(a5) + c0009f78: 9edfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6066 (discriminator 2) for (i = 0; i < m->export_entries_count; i++) { - c0009e8e: 2c05 addiw s8,s8,1 - c0009e90: bfd9 j c0009e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6068 + c0009f7c: 2c05 addiw s8,s8,1 + c0009f7e: bfd9 j c0009f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6076 s->memory_used_count += 1; - c0009e92: 701c ld a5,32(s0) - c0009e94: 0785 addi a5,a5,1 - c0009e96: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6069 + c0009f80: 701c ld a5,32(s0) + c0009f82: 0785 addi a5,a5,1 + c0009f84: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6077 s->memory_used_size += m->star_export_entries_count * sizeof(*m->star_export_entries); - c0009e98: 5c9c lw a5,56(s1) - c0009e9a: 00279713 slli a4,a5,0x2 - c0009e9e: 681c ld a5,16(s0) - c0009ea0: 97ba add a5,a5,a4 - c0009ea2: e81c sd a5,16(s0) - c0009ea4: bfa5 j c0009e1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6087 + c0009f86: 5c9c lw a5,56(s1) + c0009f88: 00279713 slli a4,a5,0x2 + c0009f8c: 681c ld a5,16(s0) + c0009f8e: 97ba add a5,a5,a4 + c0009f90: e81c sd a5,16(s0) + c0009f92: bfa5 j c0009f0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6095 if (gp->gc_obj_type == JS_GC_OBJ_TYPE_FUNCTION_BYTECODE) { - c0009ea6: ffc4c783 lbu a5,-4(s1) - c0009eaa: 8bbd andi a5,a5,15 - c0009eac: 0d679363 bne a5,s6,c0009f72 + c0009f94: ffc4c783 lbu a5,-4(s1) + c0009f98: 8bbd andi a5,a5,15 + c0009f9a: 0d679363 bne a5,s6,c000a060 compute_bytecode_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5969 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5977 if (b->vardefs) { - c0009eb0: 749c ld a5,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5968 + c0009f9e: 749c ld a5,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5976 js_func_size = offsetof(JSFunctionBytecode, debug); - c0009eb2: 06000993 li s3,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5969 + c0009fa0: 06000993 li s3,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5977 if (b->vardefs) { - c0009eb6: cb99 beqz a5,c0009ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5970 + c0009fa4: cb99 beqz a5,c0009fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5978 js_func_size += (b->arg_count + b->var_count) * sizeof(*b->vardefs); - c0009eb8: 0384d983 lhu s3,56(s1) - c0009ebc: 03a4d783 lhu a5,58(s1) - c0009ec0: 00f989bb addw s3,s3,a5 - c0009ec4: 0049999b slliw s3,s3,0x4 - c0009ec8: 0609899b addiw s3,s3,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5972 + c0009fa6: 0384d983 lhu s3,56(s1) + c0009faa: 03a4d783 lhu a5,58(s1) + c0009fae: 00f989bb addw s3,s3,a5 + c0009fb2: 0049999b slliw s3,s3,0x4 + c0009fb6: 0609899b addiw s3,s3,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5980 if (b->cpool) { - c0009ecc: 64bc ld a5,72(s1) - c0009ece: cb91 beqz a5,c0009ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5973 + c0009fba: 64bc ld a5,72(s1) + c0009fbc: cb91 beqz a5,c0009fd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5981 js_func_size += b->cpool_count * sizeof(*b->cpool); - c0009ed0: 48bc lw a5,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5974 + c0009fbe: 48bc lw a5,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5982 for (i = 0; i < b->cpool_count; i++) { - c0009ed2: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5973 + c0009fc0: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5981 js_func_size += b->cpool_count * sizeof(*b->cpool); - c0009ed4: 0047979b slliw a5,a5,0x4 - c0009ed8: 013789bb addw s3,a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5974 + c0009fc2: 0047979b slliw a5,a5,0x4 + c0009fc6: 013789bb addw s3,a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5982 for (i = 0; i < b->cpool_count; i++) { - c0009edc: 48bc lw a5,80(s1) - c0009ede: 06fbcd63 blt s7,a5,c0009f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5979 + c0009fca: 48bc lw a5,80(s1) + c0009fcc: 06fbcd63 blt s7,a5,c000a046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5987 if (b->closure_var) { - c0009ee2: 789c ld a5,48(s1) - c0009ee4: c791 beqz a5,c0009ef0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5980 + c0009fd0: 789c ld a5,48(s1) + c0009fd2: c791 beqz a5,c0009fde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5988 js_func_size += b->closure_var_count * sizeof(*b->closure_var); - c0009ee6: 48fc lw a5,84(s1) - c0009ee8: 0037979b slliw a5,a5,0x3 - c0009eec: 013789bb addw s3,a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5982 + c0009fd4: 48fc lw a5,84(s1) + c0009fd6: 0037979b slliw a5,a5,0x3 + c0009fda: 013789bb addw s3,a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5990 if (!b->read_only_bytecode && b->byte_code_buf) { - c0009ef0: 0124c783 lbu a5,18(s1) - c0009ef4: 8bc1 andi a5,a5,16 - c0009ef6: e799 bnez a5,c0009f04 - c0009ef8: 6c9c ld a5,24(s1) - c0009efa: c789 beqz a5,c0009f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5983 + c0009fde: 0124c783 lbu a5,18(s1) + c0009fe2: 8bc1 andi a5,a5,16 + c0009fe4: e799 bnez a5,c0009ff2 + c0009fe6: 6c9c ld a5,24(s1) + c0009fe8: c789 beqz a5,c0009ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5991 hp->js_func_code_size += b->byte_code_len; - c0009efc: 5098 lw a4,32(s1) - c0009efe: 67a6 ld a5,72(sp) - c0009f00: 97ba add a5,a5,a4 - c0009f02: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5985 + c0009fea: 5098 lw a4,32(s1) + c0009fec: 67a6 ld a5,72(sp) + c0009fee: 97ba add a5,a5,a4 + c0009ff0: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5993 if (b->has_debug) { - c0009f04: 0124c703 lbu a4,18(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5967 + c0009ff2: 0124c703 lbu a4,18(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5975 memory_used_count = 0; - c0009f08: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5985 + c0009ff6: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5993 if (b->has_debug) { - c0009f0a: 8b11 andi a4,a4,4 - c0009f0c: c70d beqz a4,c0009f36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5987 + c0009ff8: 8b11 andi a4,a4,4 + c0009ffa: c70d beqz a4,c000a024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5995 if (b->debug.source) { - c0009f0e: 78b4 ld a3,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5986 + c0009ffc: 78b4 ld a3,112(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5994 js_func_size += sizeof(*b) - offsetof(JSFunctionBytecode, debug); - c0009f10: 0209899b addiw s3,s3,32 - c0009f14: 874e mv a4,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5987 + c0009ffe: 0209899b addiw s3,s3,32 + c000a002: 874e mv a4,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5995 if (b->debug.source) { - c0009f16: c699 beqz a3,c0009f24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5989 + c000a004: c699 beqz a3,c000a012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5997 js_func_size += b->debug.source_len + 1; - c0009f18: 0604a983 lw s3,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5988 + c000a006: 0604a983 lw s3,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5996 memory_used_count++; - c0009f1c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5989 + c000a00a: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5997 js_func_size += b->debug.source_len + 1; - c0009f1e: 2985 addiw s3,s3,1 - c0009f20: 00e989bb addw s3,s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5991 + c000a00c: 2985 addiw s3,s3,1 + c000a00e: 00e989bb addw s3,s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5999 if (b->debug.pc2line_len) { - c0009f24: 50f0 lw a2,100(s1) - c0009f26: ca01 beqz a2,c0009f36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5993 + c000a012: 50f0 lw a2,100(s1) + c000a014: ca01 beqz a2,c000a024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6001 hp->js_func_pc2line_count += 1; - c0009f28: 66c6 ld a3,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5994 + c000a016: 66c6 ld a3,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6002 hp->js_func_pc2line_size += b->debug.pc2line_len; - c0009f2a: 6766 ld a4,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5992 + c000a018: 6766 ld a4,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6000 memory_used_count++; - c0009f2c: 2785 addiw a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5993 + c000a01a: 2785 addiw a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6001 hp->js_func_pc2line_count += 1; - c0009f2e: 0685 addi a3,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5994 + c000a01c: 0685 addi a3,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6002 hp->js_func_pc2line_size += b->debug.pc2line_len; - c0009f30: 9732 add a4,a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5993 + c000a01e: 9732 add a4,a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6001 hp->js_func_pc2line_count += 1; - c0009f32: e8b6 sd a3,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5994 + c000a020: e8b6 sd a3,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6002 hp->js_func_pc2line_size += b->debug.pc2line_len; - c0009f34: ecba sd a4,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5997 + c000a022: ecba sd a4,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6005 hp->js_func_size += js_func_size; - c0009f36: d2098753 fcvt.d.w fa4,s3 - c0009f3a: 2786 fld fa5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5998 + c000a024: d2098753 fcvt.d.w fa4,s3 + c000a028: 2786 fld fa5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6006 hp->js_func_count += 1; - c0009f3c: 7762 ld a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5997 + c000a02a: 7762 ld a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6005 hp->js_func_size += js_func_size; - c0009f3e: 02e7f7d3 fadd.d fa5,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5999 + c000a02c: 02e7f7d3 fadd.d fa5,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6007 hp->memory_used_count += memory_used_count; - c0009f42: d2078753 fcvt.d.w fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5998 + c000a030: d2078753 fcvt.d.w fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6006 hp->js_func_count += 1; - c0009f46: 0705 addi a4,a4,1 - c0009f48: fc3a sd a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5997 + c000a034: 0705 addi a4,a4,1 + c000a036: fc3a sd a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6005 hp->js_func_size += js_func_size; - c0009f4a: a0be fsd fa5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5999 + c000a038: a0be fsd fa5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6007 hp->memory_used_count += memory_used_count; - c0009f4c: 3782 fld fa5,32(sp) - c0009f4e: 02e7f7d3 fadd.d fa5,fa5,fa4 - c0009f52: b03e fsd fa5,32(sp) + c000a03a: 3782 fld fa5,32(sp) + c000a03c: 02e7f7d3 fadd.d fa5,fa5,fa4 + c000a040: b03e fsd fa5,32(sp) JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6080 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6088 (discriminator 2) list_for_each(el, &rt->gc_obj_list) { - c0009f54: 6484 ld s1,8(s1) - c0009f56: b301 j c0009c56 + c000a042: 6484 ld s1,8(s1) + c000a044: b301 j c0009d44 compute_bytecode_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5975 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5983 JSValueConst val = b->cpool[i]; - c0009f58: 64bc ld a5,72(s1) - c0009f5a: 004b9713 slli a4,s7,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5976 + c000a046: 64bc ld a5,72(s1) + c000a048: 004b9713 slli a4,s7,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5984 compute_value_size(val, hp); - c0009f5e: 1010 addi a2,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5975 + c000a04c: 1010 addi a2,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5983 JSValueConst val = b->cpool[i]; - c0009f60: 97ba add a5,a5,a4 - c0009f62: 6388 ld a0,0(a5) - c0009f64: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5974 + c000a04e: 97ba add a5,a5,a4 + c000a050: 6388 ld a0,0(a5) + c000a052: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5982 for (i = 0; i < b->cpool_count; i++) { - c0009f66: 2b85 addiw s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5975 + c000a054: 2b85 addiw s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5983 JSValueConst val = b->cpool[i]; - c0009f68: e82a sd a0,16(sp) - c0009f6a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5976 + c000a056: e82a sd a0,16(sp) + c000a058: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5984 compute_value_size(val, hp); - c0009f6c: 90bfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5974 + c000a05a: 90bfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5982 for (i = 0; i < b->cpool_count; i++) { - c0009f70: b7b5 j c0009edc + c000a05e: b7b5 j c0009fca JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6098 } else if (gp->gc_obj_type != JS_GC_OBJ_TYPE_JS_OBJECT) { - c0009f72: f3ed bnez a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6095 + c000a060: f3ed bnez a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6103 s->obj_count++; - c0009f74: 643c ld a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6094 + c000a062: 643c ld a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6102 sh = p->shape; - c0009f76: 0104b983 ld s3,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6095 + c000a064: 0104b983 ld s3,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6103 s->obj_count++; - c0009f7a: 0785 addi a5,a5,1 - c0009f7c: e43c sd a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6096 + c000a068: 0785 addi a5,a5,1 + c000a06a: e43c sd a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6104 if (p->prop) { - c0009f7e: 6c9c ld a5,24(s1) - c0009f80: e39d bnez a5,c0009fa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6110 + c000a06c: 6c9c ld a5,24(s1) + c000a06e: e39d bnez a5,c000a094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6118 if (!sh->is_hashed) { - c0009f82: 0189c783 lbu a5,24(s3) - c0009f86: cfa5 beqz a5,c0009ffe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6116 + c000a070: 0189c783 lbu a5,24(s3) + c000a074: cfa5 beqz a5,c000a0ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6124 switch(p->class_id) { - c0009f88: ffe4d783 lhu a5,-2(s1) - c0009f8c: 477d li a4,31 - c0009f8e: 37f9 addiw a5,a5,-2 - c0009f90: 03079693 slli a3,a5,0x30 - c0009f94: 92c1 srli a3,a3,0x30 - c0009f96: 22d76c63 bltu a4,a3,c000a1ce - c0009f9a: 00269793 slli a5,a3,0x2 - c0009f9e: 97d2 add a5,a5,s4 - c0009fa0: 439c lw a5,0(a5) - c0009fa2: 97d2 add a5,a5,s4 - c0009fa4: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6097 + c000a076: ffe4d783 lhu a5,-2(s1) + c000a07a: 477d li a4,31 + c000a07c: 37f9 addiw a5,a5,-2 + c000a07e: 03079693 slli a3,a5,0x30 + c000a082: 92c1 srli a3,a3,0x30 + c000a084: 22d76c63 bltu a4,a3,c000a2bc + c000a088: 00269793 slli a5,a3,0x2 + c000a08c: 97d2 add a5,a5,s4 + c000a08e: 439c lw a5,0(a5) + c000a090: 97d2 add a5,a5,s4 + c000a092: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6105 s->memory_used_count++; - c0009fa6: 701c ld a5,32(s0) + c000a094: 701c ld a5,32(s0) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0009fa8: 04098c13 addi s8,s3,64 + c000a096: 04098c13 addi s8,s3,64 JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6109 for(i = 0; i < sh->prop_count; i++) { - c0009fac: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6097 + c000a09a: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6105 s->memory_used_count++; - c0009fae: 0785 addi a5,a5,1 - c0009fb0: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6098 + c000a09c: 0785 addi a5,a5,1 + c000a09e: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6106 s->prop_size += sh->prop_size * sizeof(*p->prop); - c0009fb2: 0249a783 lw a5,36(s3) - c0009fb6: 00479713 slli a4,a5,0x4 - c0009fba: 703c ld a5,96(s0) - c0009fbc: 97ba add a5,a5,a4 - c0009fbe: f03c sd a5,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6099 + c000a0a0: 0249a783 lw a5,36(s3) + c000a0a4: 00479713 slli a4,a5,0x4 + c000a0a8: 703c ld a5,96(s0) + c000a0aa: 97ba add a5,a5,a4 + c000a0ac: f03c sd a5,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6107 s->prop_count += sh->prop_count; - c0009fc0: 0289a703 lw a4,40(s3) - c0009fc4: 6c3c ld a5,88(s0) - c0009fc6: 97ba add a5,a5,a4 - c0009fc8: ec3c sd a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6101 (discriminator 1) + c000a0ae: 0289a703 lw a4,40(s3) + c000a0b2: 6c3c ld a5,88(s0) + c000a0b4: 97ba add a5,a5,a4 + c000a0b6: ec3c sd a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6109 (discriminator 1) for(i = 0; i < sh->prop_count; i++) { - c0009fca: 0289a783 lw a5,40(s3) - c0009fce: fafbdae3 bge s7,a5,c0009f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6103 + c000a0b8: 0289a783 lw a5,40(s3) + c000a0bc: fafbdae3 bge s7,a5,c000a070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6111 if (prs->atom != JS_ATOM_NULL && !(prs->flags & JS_PROP_TMASK)) { - c0009fd2: 004c2783 lw a5,4(s8) - c0009fd6: c38d beqz a5,c0009ff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6103 (discriminator 1) - c0009fd8: 000c2783 lw a5,0(s8) - c0009fdc: 01a7d79b srliw a5,a5,0x1a - c0009fe0: 0307f793 andi a5,a5,48 - c0009fe4: eb91 bnez a5,c0009ff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6104 + c000a0c0: 004c2783 lw a5,4(s8) + c000a0c4: c38d beqz a5,c000a0e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6111 (discriminator 1) + c000a0c6: 000c2783 lw a5,0(s8) + c000a0ca: 01a7d79b srliw a5,a5,0x1a + c000a0ce: 0307f793 andi a5,a5,48 + c000a0d2: eb91 bnez a5,c000a0e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6112 compute_value_size(pr->u.value, hp); - c0009fe6: 6c9c ld a5,24(s1) - c0009fe8: 004b9713 slli a4,s7,0x4 - c0009fec: 1010 addi a2,sp,32 - c0009fee: 97ba add a5,a5,a4 - c0009ff0: 6388 ld a0,0(a5) - c0009ff2: 678c ld a1,8(a5) - c0009ff4: 883fb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6106 (discriminator 2) + c000a0d4: 6c9c ld a5,24(s1) + c000a0d6: 004b9713 slli a4,s7,0x4 + c000a0da: 1010 addi a2,sp,32 + c000a0dc: 97ba add a5,a5,a4 + c000a0de: 6388 ld a0,0(a5) + c000a0e0: 678c ld a1,8(a5) + c000a0e2: 883fb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6114 (discriminator 2) prs++; - c0009ff8: 0c21 addi s8,s8,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6101 (discriminator 2) + c000a0e6: 0c21 addi s8,s8,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6109 (discriminator 2) for(i = 0; i < sh->prop_count; i++) { - c0009ffa: 2b85 addiw s7,s7,1 - c0009ffc: b7f9 j c0009fca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6111 + c000a0e8: 2b85 addiw s7,s7,1 + c000a0ea: b7f9 j c000a0b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6119 int hash_size = sh->prop_hash_mask + 1; - c0009ffe: 0209a783 lw a5,32(s3) - c000a002: 0017871b addiw a4,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6112 + c000a0ec: 0209a783 lw a5,32(s3) + c000a0f0: 0017871b addiw a4,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6120 s->shape_count++; - c000a006: 743c ld a5,104(s0) - c000a008: 0785 addi a5,a5,1 - c000a00a: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6113 + c000a0f4: 743c ld a5,104(s0) + c000a0f6: 0785 addi a5,a5,1 + c000a0f8: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6121 s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a00c: 0249a783 lw a5,36(s3) + c000a0fa: 0249a783 lw a5,36(s3) get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c000a010: 0786 slli a5,a5,0x1 - c000a012: 07c1 addi a5,a5,16 - c000a014: 97ba add a5,a5,a4 + c000a0fe: 0786 slli a5,a5,0x1 + c000a100: 07c1 addi a5,a5,16 + c000a102: 97ba add a5,a5,a4 JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6121 s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a016: 7838 ld a4,112(s0) + c000a104: 7838 ld a4,112(s0) get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c000a018: 078a slli a5,a5,0x2 + c000a106: 078a slli a5,a5,0x2 JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6121 s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a01a: 97ba add a5,a5,a4 - c000a01c: f83c sd a5,112(s0) - c000a01e: b7ad j c0009f88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6119 + c000a108: 97ba add a5,a5,a4 + c000a10a: f83c sd a5,112(s0) + c000a10c: b7ad j c000a076 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6127 s->array_count++; - c000a020: 745c ld a5,168(s0) - c000a022: 0785 addi a5,a5,1 - c000a024: f45c sd a5,168(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6120 + c000a10e: 745c ld a5,168(s0) + c000a110: 0785 addi a5,a5,1 + c000a112: f45c sd a5,168(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6128 if (p->fast_array) { - c000a026: ffd4c783 lbu a5,-3(s1) - c000a02a: 8ba1 andi a5,a5,8 - c000a02c: d785 beqz a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6121 + c000a114: ffd4c783 lbu a5,-3(s1) + c000a118: 8ba1 andi a5,a5,8 + c000a11a: d785 beqz a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6129 s->fast_array_count++; - c000a02e: 785c ld a5,176(s0) - c000a030: 0785 addi a5,a5,1 - c000a032: f85c sd a5,176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6122 + c000a11c: 785c ld a5,176(s0) + c000a11e: 0785 addi a5,a5,1 + c000a120: f85c sd a5,176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6130 if (p->u.array.u.values) { - c000a034: 789c ld a5,48(s1) - c000a036: df99 beqz a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6123 + c000a122: 789c ld a5,48(s1) + c000a124: df99 beqz a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6131 s->memory_used_count++; - c000a038: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6127 + c000a126: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6135 for (i = 0; i < p->u.array.count; i++) { - c000a03a: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6123 + c000a128: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6131 s->memory_used_count++; - c000a03c: 0785 addi a5,a5,1 - c000a03e: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6124 + c000a12a: 0785 addi a5,a5,1 + c000a12c: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6132 s->memory_used_size += p->u.array.count * - c000a040: 0384e783 lwu a5,56(s1) - c000a044: 00479713 slli a4,a5,0x4 - c000a048: 681c ld a5,16(s0) - c000a04a: 97ba add a5,a5,a4 - c000a04c: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6126 + c000a12e: 0384e783 lwu a5,56(s1) + c000a132: 00479713 slli a4,a5,0x4 + c000a136: 681c ld a5,16(s0) + c000a138: 97ba add a5,a5,a4 + c000a13a: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6134 s->fast_array_elements += p->u.array.count; - c000a04e: 0384e703 lwu a4,56(s1) - c000a052: 7c5c ld a5,184(s0) - c000a054: 97ba add a5,a5,a4 - c000a056: fc5c sd a5,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6127 (discriminator 1) + c000a13c: 0384e703 lwu a4,56(s1) + c000a140: 7c5c ld a5,184(s0) + c000a142: 97ba add a5,a5,a4 + c000a144: fc5c sd a5,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6135 (discriminator 1) for (i = 0; i < p->u.array.count; i++) { - c000a058: 5c9c lw a5,56(s1) - c000a05a: eef9fde3 bgeu s3,a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6128 (discriminator 3) + c000a146: 5c9c lw a5,56(s1) + c000a148: eef9fde3 bgeu s3,a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6136 (discriminator 3) compute_value_size(p->u.array.u.values[i], hp); - c000a05e: 789c ld a5,48(s1) - c000a060: 00499713 slli a4,s3,0x4 - c000a064: 1010 addi a2,sp,32 - c000a066: 97ba add a5,a5,a4 - c000a068: 6388 ld a0,0(a5) - c000a06a: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6127 (discriminator 3) + c000a14c: 789c ld a5,48(s1) + c000a14e: 00499713 slli a4,s3,0x4 + c000a152: 1010 addi a2,sp,32 + c000a154: 97ba add a5,a5,a4 + c000a156: 6388 ld a0,0(a5) + c000a158: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6135 (discriminator 3) for (i = 0; i < p->u.array.count; i++) { - c000a06c: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6128 (discriminator 3) + c000a15a: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6136 (discriminator 3) compute_value_size(p->u.array.u.values[i], hp); - c000a06e: 809fb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6127 (discriminator 3) + c000a15c: 809fb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6135 (discriminator 3) for (i = 0; i < p->u.array.count; i++) { - c000a072: b7dd j c000a058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6143 + c000a160: b7dd j c000a146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6151 compute_value_size(p->u.object_data, hp); - c000a074: 7488 ld a0,40(s1) - c000a076: 788c ld a1,48(s1) - c000a078: 1010 addi a2,sp,32 - c000a07a: ffcfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6144 + c000a162: 7488 ld a0,40(s1) + c000a164: 788c ld a1,48(s1) + c000a166: 1010 addi a2,sp,32 + c000a168: ffcfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6152 break; - c000a07e: bdd9 j c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6146 + c000a16c: bdd9 j c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6154 s->c_func_count++; - c000a080: 705c ld a5,160(s0) - c000a082: 0785 addi a5,a5,1 - c000a084: f05c sd a5,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6147 + c000a16e: 705c ld a5,160(s0) + c000a170: 0785 addi a5,a5,1 + c000a172: f05c sd a5,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6155 break; - c000a086: b5f9 j c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6151 + c000a174: b5f9 j c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6159 JSVarRef **var_refs = p->u.func.var_refs; - c000a088: 0304bc03 ld s8,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6153 + c000a176: 0304bc03 ld s8,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6161 if (var_refs) { - c000a08c: ec0c04e3 beqz s8,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6154 + c000a17a: ec0c04e3 beqz s8,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6162 s->memory_used_count++; - c000a090: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6150 + c000a17e: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6158 JSFunctionBytecode *b = p->u.func.function_bytecode; - c000a092: 0284bb83 ld s7,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6156 + c000a180: 0284bb83 ld s7,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6164 for (i = 0; i < b->closure_var_count; i++) { - c000a096: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6154 + c000a184: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6162 s->memory_used_count++; - c000a098: 0785 addi a5,a5,1 - c000a09a: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6155 + c000a186: 0785 addi a5,a5,1 + c000a188: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6163 s->js_func_size += b->closure_var_count * sizeof(*var_refs); - c000a09c: 05cba783 lw a5,92(s7) - c000a0a0: 00379713 slli a4,a5,0x3 - c000a0a4: 605c ld a5,128(s0) - c000a0a6: 97ba add a5,a5,a4 - c000a0a8: e05c sd a5,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6156 (discriminator 1) + c000a18a: 05cba783 lw a5,92(s7) + c000a18e: 00379713 slli a4,a5,0x3 + c000a192: 605c ld a5,128(s0) + c000a194: 97ba add a5,a5,a4 + c000a196: e05c sd a5,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6164 (discriminator 1) for (i = 0; i < b->closure_var_count; i++) { - c000a0aa: 05cba783 lw a5,92(s7) - c000a0ae: eaf9d3e3 bge s3,a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6157 + c000a198: 05cba783 lw a5,92(s7) + c000a19c: eaf9d3e3 bge s3,a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6165 if (var_refs[i]) { - c000a0b2: 00399793 slli a5,s3,0x3 - c000a0b6: 97e2 add a5,a5,s8 - c000a0b8: 6398 ld a4,0(a5) - c000a0ba: c339 beqz a4,c000a100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6158 + c000a1a0: 00399793 slli a5,s3,0x3 + c000a1a4: 97e2 add a5,a5,s8 + c000a1a6: 6398 ld a4,0(a5) + c000a1a8: c339 beqz a4,c000a1ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6166 double ref_count = var_refs[i]->header.ref_count; - c000a0bc: 4318 lw a4,0(a4) - c000a0be: d20707d3 fcvt.d.w fa5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6159 + c000a1aa: 4318 lw a4,0(a4) + c000a1ac: d20707d3 fcvt.d.w fa5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6167 s->memory_used_count += 1 / ref_count; - c000a0c2: 7018 ld a4,32(s0) - c000a0c4: 1af476d3 fdiv.d fa3,fs0,fa5 - c000a0c8: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6160 + c000a1b0: 7018 ld a4,32(s0) + c000a1b2: 1af476d3 fdiv.d fa3,fs0,fa5 + c000a1b6: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6168 s->js_func_size += sizeof(*var_refs[i]) / ref_count; - c000a0cc: 1af4f7d3 fdiv.d fa5,fs1,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6159 + c000a1ba: 1af4f7d3 fdiv.d fa5,fs1,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6167 s->memory_used_count += 1 / ref_count; - c000a0d0: 02d77753 fadd.d fa4,fa4,fa3 - c000a0d4: c2271753 fcvt.l.d a4,fa4,rtz - c000a0d8: f018 sd a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6160 + c000a1be: 02d77753 fadd.d fa4,fa4,fa3 + c000a1c2: c2271753 fcvt.l.d a4,fa4,rtz + c000a1c6: f018 sd a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6168 s->js_func_size += sizeof(*var_refs[i]) / ref_count; - c000a0da: 6058 ld a4,128(s0) - c000a0dc: d2277753 fcvt.d.l fa4,a4 - c000a0e0: 02f777d3 fadd.d fa5,fa4,fa5 - c000a0e4: c2279753 fcvt.l.d a4,fa5,rtz - c000a0e8: e058 sd a4,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6162 + c000a1c8: 6058 ld a4,128(s0) + c000a1ca: d2277753 fcvt.d.l fa4,a4 + c000a1ce: 02f777d3 fadd.d fa5,fa4,fa5 + c000a1d2: c2279753 fcvt.l.d a4,fa5,rtz + c000a1d6: e058 sd a4,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6170 if (var_refs[i]->pvalue == &var_refs[i]->value) { - c000a0ea: 639c ld a5,0(a5) - c000a0ec: 6f94 ld a3,24(a5) - c000a0ee: 02078713 addi a4,a5,32 - c000a0f2: 00e69763 bne a3,a4,c000a100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6164 + c000a1d8: 639c ld a5,0(a5) + c000a1da: 6f94 ld a3,24(a5) + c000a1dc: 02078713 addi a4,a5,32 + c000a1e0: 00e69763 bne a3,a4,c000a1ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6172 compute_value_size(var_refs[i]->value, hp); - c000a0f6: 7388 ld a0,32(a5) - c000a0f8: 778c ld a1,40(a5) - c000a0fa: 1010 addi a2,sp,32 - c000a0fc: f7afb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6156 (discriminator 2) + c000a1e4: 7388 ld a0,32(a5) + c000a1e6: 778c ld a1,40(a5) + c000a1e8: 1010 addi a2,sp,32 + c000a1ea: f7afb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6164 (discriminator 2) for (i = 0; i < b->closure_var_count; i++) { - c000a100: 2985 addiw s3,s3,1 - c000a102: b765 j c000a0aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6173 + c000a1ee: 2985 addiw s3,s3,1 + c000a1f0: b765 j c000a198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6181 JSBoundFunction *bf = p->u.bound_function; - c000a104: 0284bb83 ld s7,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6175 + c000a1f2: 0284bb83 ld s7,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6183 for (i = 0; i < bf->argc; i++) { - c000a108: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6175 (discriminator 1) - c000a10a: 020ba783 lw a5,32(s7) - c000a10e: 00f9cd63 blt s3,a5,c000a128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6178 + c000a1f6: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6183 (discriminator 1) + c000a1f8: 020ba783 lw a5,32(s7) + c000a1fc: 00f9cd63 blt s3,a5,c000a216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6186 s->memory_used_count += 1; - c000a112: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6179 + c000a200: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6187 s->memory_used_size += sizeof(*bf) + bf->argc * sizeof(*bf->argv); - c000a114: 6818 ld a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6178 + c000a202: 6818 ld a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6186 s->memory_used_count += 1; - c000a116: 0785 addi a5,a5,1 - c000a118: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6179 + c000a204: 0785 addi a5,a5,1 + c000a206: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6187 s->memory_used_size += sizeof(*bf) + bf->argc * sizeof(*bf->argv); - c000a11a: 020ba783 lw a5,32(s7) - c000a11e: 02870713 addi a4,a4,40 - c000a122: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6218 + c000a208: 020ba783 lw a5,32(s7) + c000a20c: 02870713 addi a4,a4,40 + c000a210: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6226 s->memory_used_size += abuf->byte_length; - c000a124: 97ba add a5,a5,a4 - c000a126: a041 j c000a1a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6176 (discriminator 3) + c000a212: 97ba add a5,a5,a4 + c000a214: a041 j c000a294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6184 (discriminator 3) compute_value_size(bf->argv[i], hp); - c000a128: 00298793 addi a5,s3,2 - c000a12c: 0792 slli a5,a5,0x4 - c000a12e: 97de add a5,a5,s7 - c000a130: 6788 ld a0,8(a5) - c000a132: 6b8c ld a1,16(a5) - c000a134: 1010 addi a2,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6175 (discriminator 3) + c000a216: 00298793 addi a5,s3,2 + c000a21a: 0792 slli a5,a5,0x4 + c000a21c: 97de add a5,a5,s7 + c000a21e: 6788 ld a0,8(a5) + c000a220: 6b8c ld a1,16(a5) + c000a222: 1010 addi a2,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6183 (discriminator 3) for (i = 0; i < bf->argc; i++) { - c000a136: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6176 (discriminator 3) + c000a224: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6184 (discriminator 3) compute_value_size(bf->argv[i], hp); - c000a138: f3efb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6175 (discriminator 3) + c000a226: f3efb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6183 (discriminator 3) for (i = 0; i < bf->argc; i++) { - c000a13c: b7f9 j c000a10a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6184 + c000a22a: b7f9 j c000a1f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6192 JSCFunctionDataRecord *fd = p->u.c_function_data_record; - c000a13e: 0284b983 ld s3,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6185 + c000a22c: 0284b983 ld s3,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6193 if (fd) { - c000a142: e00989e3 beqz s3,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6186 + c000a230: e00989e3 beqz s3,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6194 for (i = 0; i < fd->data_len; i++) { - c000a146: 4b81 li s7,0 - c000a148: a819 j c000a15e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6187 (discriminator 3) + c000a234: 4b81 li s7,0 + c000a236: a819 j c000a24c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6195 (discriminator 3) compute_value_size(fd->data[i], hp); - c000a14a: 001b8793 addi a5,s7,1 - c000a14e: 0792 slli a5,a5,0x4 - c000a150: 97ce add a5,a5,s3 - c000a152: 6388 ld a0,0(a5) - c000a154: 678c ld a1,8(a5) - c000a156: 1010 addi a2,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6186 (discriminator 3) + c000a238: 001b8793 addi a5,s7,1 + c000a23c: 0792 slli a5,a5,0x4 + c000a23e: 97ce add a5,a5,s3 + c000a240: 6388 ld a0,0(a5) + c000a242: 678c ld a1,8(a5) + c000a244: 1010 addi a2,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6194 (discriminator 3) for (i = 0; i < fd->data_len; i++) { - c000a158: 2b85 addiw s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6187 (discriminator 3) + c000a246: 2b85 addiw s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6195 (discriminator 3) compute_value_size(fd->data[i], hp); - c000a15a: f1cfb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6186 (discriminator 1) + c000a248: f1cfb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6194 (discriminator 1) for (i = 0; i < fd->data_len; i++) { - c000a15e: 0099c783 lbu a5,9(s3) - c000a162: fefbc4e3 blt s7,a5,c000a14a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6189 + c000a24c: 0099c783 lbu a5,9(s3) + c000a250: fefbc4e3 blt s7,a5,c000a238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6197 s->memory_used_count += 1; - c000a166: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6190 + c000a254: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6198 s->memory_used_size += sizeof(*fd) + fd->data_len * sizeof(*fd->data); - c000a168: 6818 ld a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6189 + c000a256: 6818 ld a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6197 s->memory_used_count += 1; - c000a16a: 0785 addi a5,a5,1 - c000a16c: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6190 + c000a258: 0785 addi a5,a5,1 + c000a25a: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6198 s->memory_used_size += sizeof(*fd) + fd->data_len * sizeof(*fd->data); - c000a16e: 0099c783 lbu a5,9(s3) - c000a172: 0785 addi a5,a5,1 - c000a174: 0792 slli a5,a5,0x4 - c000a176: b77d j c000a124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6195 + c000a25c: 0099c783 lbu a5,9(s3) + c000a260: 0785 addi a5,a5,1 + c000a262: 0792 slli a5,a5,0x4 + c000a264: b77d j c000a212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6203 compute_jsstring_size(p->u.regexp.pattern, hp); - c000a178: 7488 ld a0,40(s1) - c000a17a: 100c addi a1,sp,32 - c000a17c: eb0fb0ef jal ra,c000582c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6196 + c000a266: 7488 ld a0,40(s1) + c000a268: 100c addi a1,sp,32 + c000a26a: eb0fb0ef jal ra,c000591a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6204 compute_jsstring_size(p->u.regexp.bytecode, hp); - c000a180: 7888 ld a0,48(s1) - c000a182: 100c addi a1,sp,32 - c000a184: ea8fb0ef jal ra,c000582c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6197 + c000a26e: 7888 ld a0,48(s1) + c000a270: 100c addi a1,sp,32 + c000a272: ea8fb0ef jal ra,c000591a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6205 break; - c000a188: b3f1 j c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6201 + c000a276: b3f1 j c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6209 JSForInIterator *it = p->u.for_in_iterator; - c000a18a: 749c ld a5,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6202 + c000a278: 749c ld a5,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6210 if (it) { - c000a18c: dc0784e3 beqz a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6203 + c000a27a: dc0784e3 beqz a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6211 compute_value_size(it->obj, hp); - c000a190: 6388 ld a0,0(a5) - c000a192: 678c ld a1,8(a5) - c000a194: 1010 addi a2,sp,32 - c000a196: ee0fb0ef jal ra,c0005876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6204 + c000a27e: 6388 ld a0,0(a5) + c000a280: 678c ld a1,8(a5) + c000a282: 1010 addi a2,sp,32 + c000a284: ee0fb0ef jal ra,c0005964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6212 s->memory_used_count += 1; - c000a19a: 701c ld a5,32(s0) - c000a19c: 0785 addi a5,a5,1 - c000a19e: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6205 + c000a288: 701c ld a5,32(s0) + c000a28a: 0785 addi a5,a5,1 + c000a28c: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6213 s->memory_used_size += sizeof(*it); - c000a1a0: 681c ld a5,16(s0) - c000a1a2: 02878793 addi a5,a5,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6218 + c000a28e: 681c ld a5,16(s0) + c000a290: 02878793 addi a5,a5,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6226 s->memory_used_size += abuf->byte_length; - c000a1a6: e81c sd a5,16(s0) - c000a1a8: b375 j c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6212 + c000a294: e81c sd a5,16(s0) + c000a296: b375 j c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6220 JSArrayBuffer *abuf = p->u.array_buffer; - c000a1aa: 7494 ld a3,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6213 + c000a298: 7494 ld a3,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6221 if (abuf) { - c000a1ac: da0684e3 beqz a3,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6214 + c000a29a: da0684e3 beqz a3,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6222 s->memory_used_count += 1; - c000a1b0: 7018 ld a4,32(s0) - c000a1b2: 00170793 addi a5,a4,1 - c000a1b6: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6215 + c000a29e: 7018 ld a4,32(s0) + c000a2a0: 00170793 addi a5,a4,1 + c000a2a4: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6223 s->memory_used_size += sizeof(*abuf); - c000a1b8: 681c ld a5,16(s0) - c000a1ba: 03078793 addi a5,a5,48 - c000a1be: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6216 + c000a2a6: 681c ld a5,16(s0) + c000a2a8: 03078793 addi a5,a5,48 + c000a2ac: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6224 if (abuf->data) { - c000a1c0: 6690 ld a2,8(a3) - c000a1c2: d80609e3 beqz a2,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6217 + c000a2ae: 6690 ld a2,8(a3) + c000a2b0: d80609e3 beqz a2,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6225 s->memory_used_count += 1; - c000a1c6: 0709 addi a4,a4,2 - c000a1c8: f018 sd a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6218 + c000a2b4: 0709 addi a4,a4,2 + c000a2b6: f018 sd a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6226 s->memory_used_size += abuf->byte_length; - c000a1ca: 4298 lw a4,0(a3) - c000a1cc: bfa1 j c000a124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6258 + c000a2b8: 4298 lw a4,0(a3) + c000a2ba: bfa1 j c000a212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6266 if (p->u.opaque) { - c000a1ce: 749c ld a5,40(s1) - c000a1d0: d80782e3 beqz a5,c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6259 + c000a2bc: 749c ld a5,40(s1) + c000a2be: d80782e3 beqz a5,c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6267 s->memory_used_count += 1; - c000a1d4: 701c ld a5,32(s0) - c000a1d6: 0785 addi a5,a5,1 - c000a1d8: f01c sd a5,32(s0) - c000a1da: bbad j c0009f54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6271 + c000a2c2: 701c ld a5,32(s0) + c000a2c4: 0785 addi a5,a5,1 + c000a2c6: f01c sd a5,32(s0) + c000a2c8: bbad j c000a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6279 for(sh = rt->shape_hash[i]; sh != NULL; sh = sh->shape_hash_next) { - c000a1dc: 18893783 ld a5,392(s2) - c000a1e0: 00369713 slli a4,a3,0x3 - c000a1e4: 97ba add a5,a5,a4 - c000a1e6: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6273 (discriminator 1) + c000a2ca: 18893783 ld a5,392(s2) + c000a2ce: 00369713 slli a4,a3,0x3 + c000a2d2: 97ba add a5,a5,a4 + c000a2d4: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6281 (discriminator 1) s->shape_count++; - c000a1e8: 7430 ld a2,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6274 (discriminator 1) + c000a2d6: 7430 ld a2,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6282 (discriminator 1) s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a1ea: 7828 ld a0,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6271 (discriminator 1) + c000a2d8: 7828 ld a0,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6279 (discriminator 1) for(sh = rt->shape_hash[i]; sh != NULL; sh = sh->shape_hash_next) { - c000a1ec: e399 bnez a5,c000a1f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6269 (discriminator 2) + c000a2da: e399 bnez a5,c000a2e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6277 (discriminator 2) for(i = 0; i < rt->shape_hash_size; i++) { - c000a1ee: 2685 addiw a3,a3,1 - c000a1f0: bc71 j c0009c8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6272 (discriminator 3) + c000a2dc: 2685 addiw a3,a3,1 + c000a2de: bc71 j c0009d7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6280 (discriminator 3) int hash_size = sh->prop_hash_mask + 1; - c000a1f2: 5398 lw a4,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6273 (discriminator 3) + c000a2e0: 5398 lw a4,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6281 (discriminator 3) s->shape_count++; - c000a1f4: 0605 addi a2,a2,1 - c000a1f6: f430 sd a2,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6272 (discriminator 3) + c000a2e2: 0605 addi a2,a2,1 + c000a2e4: f430 sd a2,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6280 (discriminator 3) int hash_size = sh->prop_hash_mask + 1; - c000a1f8: 0017059b addiw a1,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6274 (discriminator 3) + c000a2e6: 0017059b addiw a1,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6282 (discriminator 3) s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a1fc: 53d8 lw a4,36(a5) + c000a2ea: 53d8 lw a4,36(a5) get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 (discriminator 3) return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c000a1fe: 0706 slli a4,a4,0x1 - c000a200: 0741 addi a4,a4,16 - c000a202: 972e add a4,a4,a1 - c000a204: 070a slli a4,a4,0x2 + c000a2ec: 0706 slli a4,a4,0x1 + c000a2ee: 0741 addi a4,a4,16 + c000a2f0: 972e add a4,a4,a1 + c000a2f2: 070a slli a4,a4,0x2 JS_ComputeMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6274 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6282 (discriminator 3) s->shape_size += get_shape_size(hash_size, sh->prop_size); - c000a206: 972a add a4,a4,a0 - c000a208: f838 sd a4,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6271 (discriminator 3) + c000a2f4: 972a add a4,a4,a0 + c000a2f6: f838 sd a4,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6279 (discriminator 3) for(sh = rt->shape_hash[i]; sh != NULL; sh = sh->shape_hash_next) { - c000a20a: 7b9c ld a5,48(a5) - c000a20c: bff1 j c000a1e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6284 + c000a2f8: 7b9c ld a5,48(a5) + c000a2fa: bff1 j c000a2d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6292 JSAtomStruct *p = rt->atom_array[i]; - c000a20e: 06093783 ld a5,96(s2) - c000a212: 00369713 slli a4,a3,0x3 - c000a216: 97ba add a5,a5,a4 - c000a218: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6285 + c000a2fc: 06093783 ld a5,96(s2) + c000a300: 00369713 slli a4,a3,0x3 + c000a304: 97ba add a5,a5,a4 + c000a306: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6293 if (!atom_is_free(p)) { - c000a21a: 0017f713 andi a4,a5,1 - c000a21e: ef09 bnez a4,c000a238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6286 + c000a308: 0017f713 andi a4,a5,1 + c000a30c: ef09 bnez a4,c000a326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6294 s->atom_size += (sizeof(*p) + (p->len << p->is_wide_char) + - c000a220: 43d8 lw a4,4(a5) - c000a222: 011a8793 addi a5,s5,17 - c000a226: 01f7559b srliw a1,a4,0x1f - c000a22a: 8f71 and a4,a4,a2 - c000a22c: 00b7173b sllw a4,a4,a1 - c000a230: 40b78ab3 sub s5,a5,a1 - c000a234: 9756 add a4,a4,s5 - c000a236: f818 sd a4,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6283 (discriminator 2) + c000a30e: 43d8 lw a4,4(a5) + c000a310: 011a8793 addi a5,s5,17 + c000a314: 01f7559b srliw a1,a4,0x1f + c000a318: 8f71 and a4,a4,a2 + c000a31a: 00b7173b sllw a4,a4,a1 + c000a31e: 40b78ab3 sub s5,a5,a1 + c000a322: 9756 add a4,a4,s5 + c000a324: f818 sd a4,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6291 (discriminator 2) for(i = 0; i < rt->atom_size; i++) { - c000a238: 2685 addiw a3,a3,1 - c000a23a: b449 j c0009cbc + c000a326: 2685 addiw a3,a3,1 + c000a328: b449 j c0009daa -00000000c000a23c : +00000000c000a32a : JS_DumpMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6315 { - c000a23c: 7165 addi sp,sp,-400 - c000a23e: e322 sd s0,384(sp) - c000a240: fea6 sd s1,376(sp) - c000a242: faca sd s2,368(sp) - c000a244: e706 sd ra,392(sp) - c000a246: f6ce sd s3,360(sp) - c000a248: f2d2 sd s4,352(sp) - c000a24a: eed6 sd s5,344(sp) - c000a24c: eada sd s6,336(sp) - c000a24e: e6de sd s7,328(sp) - c000a250: e2e2 sd s8,320(sp) - c000a252: fe66 sd s9,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6308 + c000a32a: 7165 addi sp,sp,-400 + c000a32c: e322 sd s0,384(sp) + c000a32e: fea6 sd s1,376(sp) + c000a330: faca sd s2,368(sp) + c000a332: e706 sd ra,392(sp) + c000a334: f6ce sd s3,360(sp) + c000a336: f2d2 sd s4,352(sp) + c000a338: eed6 sd s5,344(sp) + c000a33a: eada sd s6,336(sp) + c000a33c: e6de sd s7,328(sp) + c000a33e: e2e2 sd s8,320(sp) + c000a340: fe66 sd s9,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6316 fprintf(fp, "QuickJS memory usage -- " - c000a254: 6594 ld a3,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 + c000a342: 6594 ld a3,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6315 { - c000a256: 8932 mv s2,a2 - c000a258: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6308 + c000a344: 8932 mv s2,a2 + c000a346: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6316 fprintf(fp, "QuickJS memory usage -- " - c000a25a: 04000613 li a2,64 - c000a25e: 00053597 auipc a1,0x53 - c000a262: a3a58593 addi a1,a1,-1478 # c005cc98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6307 + c000a348: 04000613 li a2,64 + c000a34c: 00053597 auipc a1,0x53 + c000a350: b7c58593 addi a1,a1,-1156 # c005cec8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6315 { - c000a266: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6308 + c000a354: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6316 fprintf(fp, "QuickJS memory usage -- " - c000a268: 4704b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6315 + c000a356: 5524b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6323 if (rt) { - c000a26c: 12090f63 beqz s2,c000a3aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6329 + c000a35a: 12090f63 beqz s2,c000a498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6337 void *p = js_malloc_rt(rt, size); - c000a270: 5b7d li s6,-1 - c000a272: 0005da17 auipc s4,0x5d - c000a276: 84ea0a13 addi s4,s4,-1970 # c0066ac0 - c000a27a: 0005dc17 auipc s8,0x5d - c000a27e: 896c0c13 addi s8,s8,-1898 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6326 + c000a35e: 5b7d li s6,-1 + c000a360: 0005da17 auipc s4,0x5d + c000a364: 9c0a0a13 addi s4,s4,-1600 # c0066d20 + c000a368: 0005dc17 auipc s8,0x5d + c000a36c: a08c0c13 addi s8,s8,-1528 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6334 int i, usage_size_ok = 0; - c000a282: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6329 + c000a370: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6337 void *p = js_malloc_rt(rt, size); - c000a284: 020b5b13 srli s6,s6,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6334 + c000a372: 020b5b13 srli s6,s6,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6342 fprintf(fp, " %3u + %-2u %s\n", - c000a288: 00053c97 auipc s9,0x53 - c000a28c: a58c8c93 addi s9,s9,-1448 # c005cce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6328 + c000a376: 00053c97 auipc s9,0x53 + c000a37a: b9ac8c93 addi s9,s9,-1126 # c005cf10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6336 unsigned int size = object_types[i].size; - c000a290: 008a3983 ld s3,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6329 + c000a37e: 008a3983 ld s3,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6337 void *p = js_malloc_rt(rt, size); - c000a294: 854a mv a0,s2 - c000a296: 0169f5b3 and a1,s3,s6 - c000a29a: 8c9fc0ef jal ra,c0006b62 - c000a29e: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6330 + c000a382: 854a mv a0,s2 + c000a384: 0169f5b3 and a1,s3,s6 + c000a388: 8c9fc0ef jal ra,c0006c50 + c000a38c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6338 if (p) { - c000a2a0: c905 beqz a0,c000a2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6331 + c000a38e: c905 beqz a0,c000a3be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6339 unsigned int size1 = js_malloc_usable_size_rt(rt, p); - c000a2a2: 85aa mv a1,a0 - c000a2a4: 854a mv a0,s2 - c000a2a6: abbfc0ef jal ra,c0006d60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6328 + c000a390: 85aa mv a1,a0 + c000a392: 854a mv a0,s2 + c000a394: abbfc0ef jal ra,c0006e4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6336 unsigned int size = object_types[i].size; - c000a2aa: 2981 sext.w s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6331 + c000a398: 2981 sext.w s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6339 unsigned int size1 = js_malloc_usable_size_rt(rt, p); - c000a2ac: 0005069b sext.w a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6332 + c000a39a: 0005069b sext.w a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6340 if (size1 >= size) { - c000a2b0: 0136ec63 bltu a3,s3,c000a2c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6334 + c000a39e: 0136ec63 bltu a3,s3,c000a3b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6342 fprintf(fp, " %3u + %-2u %s\n", - c000a2b4: 000a3703 ld a4,0(s4) - c000a2b8: 413686bb subw a3,a3,s3 - c000a2bc: 864e mv a2,s3 - c000a2be: 85e6 mv a1,s9 - c000a2c0: 8526 mv a0,s1 - c000a2c2: 4164b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6333 + c000a3a2: 000a3703 ld a4,0(s4) + c000a3a6: 413686bb subw a3,a3,s3 + c000a3aa: 864e mv a2,s3 + c000a3ac: 85e6 mv a1,s9 + c000a3ae: 8526 mv a0,s1 + c000a3b0: 4f84b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6341 usage_size_ok = 1; - c000a2c6: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6337 + c000a3b4: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6345 js_free_rt(rt, p); - c000a2c8: 85d6 mv a1,s5 - c000a2ca: 854a mv a0,s2 - c000a2cc: 8dbfc0ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6327 (discriminator 2) + c000a3b6: 85d6 mv a1,s5 + c000a3b8: 854a mv a0,s2 + c000a3ba: 8dbfc0ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6335 (discriminator 2) for(i = 0; i < countof(object_types); i++) { - c000a2d0: 0a41 addi s4,s4,16 - c000a2d2: fb4c1fe3 bne s8,s4,c000a290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6340 + c000a3be: 0a41 addi s4,s4,16 + c000a3c0: fb4c1fe3 bne s8,s4,c000a37e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6348 if (!usage_size_ok) { - c000a2d6: 000b9963 bnez s7,c000a2e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6341 + c000a3c4: 000b9963 bnez s7,c000a3d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6349 fprintf(fp, " malloc_usable_size unavailable\n"); - c000a2da: 85a6 mv a1,s1 - c000a2dc: 00053517 auipc a0,0x53 - c000a2e0: a1c50513 addi a0,a0,-1508 # c005ccf8 - c000a2e4: 3c64b0ef jal ra,c00556aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6344 + c000a3c8: 85a6 mv a1,s1 + c000a3ca: 00053517 auipc a0,0x53 + c000a3ce: b5e50513 addi a0,a0,-1186 # c005cf28 + c000a3d2: 4a84b0ef jal ra,c005587a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6352 int obj_classes[JS_CLASS_INIT_COUNT + 1] = { 0 }; - c000a2e8: 0dc00613 li a2,220 - c000a2ec: 4581 li a1,0 - c000a2ee: 0888 addi a0,sp,80 - c000a2f0: 5804c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6347 + c000a3d6: 0dc00613 li a2,220 + c000a3da: 4581 li a1,0 + c000a3dc: 0888 addi a0,sp,80 + c000a3de: 6624c0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6355 list_for_each(el, &rt->gc_obj_list) { - c000a2f4: 09093703 ld a4,144(s2) - c000a2f8: 08890613 addi a2,s2,136 + c000a3e2: 09093703 ld a4,144(s2) + c000a3e6: 08890613 addi a2,s2,136 min_uint32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:95 if (a < b) - c000a2fc: 03500593 li a1,53 + c000a3ea: 03500593 li a1,53 JS_DumpMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6347 (discriminator 1) - c000a300: 32c71463 bne a4,a2,c000a628 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6355 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6355 (discriminator 1) + c000a3ee: 32c71463 bne a4,a2,c000a716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6363 fprintf(fp, "\n" "JSObject classes\n"); - c000a304: 85a6 mv a1,s1 - c000a306: 00053517 auipc a0,0x53 - c000a30a: a1a50513 addi a0,a0,-1510 # c005cd20 - c000a30e: 39c4b0ef jal ra,c00556aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6356 + c000a3f2: 85a6 mv a1,s1 + c000a3f4: 00053517 auipc a0,0x53 + c000a3f8: b5c50513 addi a0,a0,-1188 # c005cf50 + c000a3fc: 47e4b0ef jal ra,c005587a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6364 if (obj_classes[0]) - c000a312: 4646 lw a2,80(sp) - c000a314: ce09 beqz a2,c000a32e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6357 + c000a400: 4646 lw a2,80(sp) + c000a402: ce09 beqz a2,c000a41c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6365 fprintf(fp, " %5d %2.0d %s\n", obj_classes[0], 0, "none"); - c000a316: 00053717 auipc a4,0x53 - c000a31a: a2270713 addi a4,a4,-1502 # c005cd38 - c000a31e: 4681 li a3,0 - c000a320: 00053597 auipc a1,0x53 - c000a324: a2058593 addi a1,a1,-1504 # c005cd40 - c000a328: 8526 mv a0,s1 - c000a32a: 3ae4b0ef jal ra,c00556d8 - c000a32e: 05010993 addi s3,sp,80 + c000a404: 00053717 auipc a4,0x53 + c000a408: b6470713 addi a4,a4,-1180 # c005cf68 + c000a40c: 4681 li a3,0 + c000a40e: 00053597 auipc a1,0x53 + c000a412: b6258593 addi a1,a1,-1182 # c005cf70 + c000a416: 8526 mv a0,s1 + c000a418: 4904b0ef jal ra,c00558a8 + c000a41c: 05010993 addi s3,sp,80 min_uint32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:98 return b; - c000a332: 4a05 li s4,1 + c000a420: 4a05 li s4,1 JS_DumpMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6361 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6369 fprintf(fp, " %5d %2.0d %s\n", obj_classes[class_id], class_id, - c000a334: 02800b93 li s7,40 - c000a338: 00053c17 auipc s8,0x53 - c000a33c: a08c0c13 addi s8,s8,-1528 # c005cd40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6358 + c000a422: 02800b93 li s7,40 + c000a426: 00053c17 auipc s8,0x53 + c000a42a: b4ac0c13 addi s8,s8,-1206 # c005cf70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6366 for (class_id = 1; class_id < JS_CLASS_INIT_COUNT; class_id++) { - c000a340: 03600b13 li s6,54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6359 + c000a42e: 03600b13 li s6,54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6367 if (obj_classes[class_id] && class_id < rt->class_count) { - c000a344: 0049aa83 lw s5,4(s3) - c000a348: 000a069b sext.w a3,s4 - c000a34c: 020a8863 beqz s5,c000a37c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6359 (discriminator 1) - c000a350: 06c92783 lw a5,108(s2) - c000a354: 02f6d463 bge a3,a5,c000a37c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6361 + c000a432: 0049aa83 lw s5,4(s3) + c000a436: 000a069b sext.w a3,s4 + c000a43a: 020a8863 beqz s5,c000a46a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6367 (discriminator 1) + c000a43e: 06c92783 lw a5,108(s2) + c000a442: 02f6d463 bge a3,a5,c000a46a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6369 fprintf(fp, " %5d %2.0d %s\n", obj_classes[class_id], class_id, - c000a358: 037a0733 mul a4,s4,s7 - c000a35c: 07093783 ld a5,112(s2) - c000a360: 080c addi a1,sp,16 - c000a362: 854a mv a0,s2 - c000a364: e436 sd a3,8(sp) - c000a366: 97ba add a5,a5,a4 - c000a368: 43d0 lw a2,4(a5) - c000a36a: 9cafc0ef jal ra,c0006534 - c000a36e: 66a2 ld a3,8(sp) - c000a370: 872a mv a4,a0 - c000a372: 8656 mv a2,s5 - c000a374: 85e2 mv a1,s8 - c000a376: 8526 mv a0,s1 - c000a378: 3604b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6358 (discriminator 2) + c000a446: 037a0733 mul a4,s4,s7 + c000a44a: 07093783 ld a5,112(s2) + c000a44e: 080c addi a1,sp,16 + c000a450: 854a mv a0,s2 + c000a452: e436 sd a3,8(sp) + c000a454: 97ba add a5,a5,a4 + c000a456: 43d0 lw a2,4(a5) + c000a458: 9cafc0ef jal ra,c0006622 + c000a45c: 66a2 ld a3,8(sp) + c000a45e: 872a mv a4,a0 + c000a460: 8656 mv a2,s5 + c000a462: 85e2 mv a1,s8 + c000a464: 8526 mv a0,s1 + c000a466: 4424b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6366 (discriminator 2) for (class_id = 1; class_id < JS_CLASS_INIT_COUNT; class_id++) { - c000a37c: 0a05 addi s4,s4,1 - c000a37e: 0991 addi s3,s3,4 - c000a380: fd6a12e3 bne s4,s6,c000a344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6365 + c000a46a: 0a05 addi s4,s4,1 + c000a46c: 0991 addi s3,s3,4 + c000a46e: fd6a12e3 bne s4,s6,c000a432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6373 if (obj_classes[JS_CLASS_INIT_COUNT]) - c000a384: 12812603 lw a2,296(sp) - c000a388: ce09 beqz a2,c000a3a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6366 + c000a472: 12812603 lw a2,296(sp) + c000a476: ce09 beqz a2,c000a490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6374 fprintf(fp, " %5d %2.0d %s\n", obj_classes[JS_CLASS_INIT_COUNT], 0, "other"); - c000a38a: 00053717 auipc a4,0x53 - c000a38e: 9ce70713 addi a4,a4,-1586 # c005cd58 - c000a392: 4681 li a3,0 - c000a394: 00053597 auipc a1,0x53 - c000a398: 9ac58593 addi a1,a1,-1620 # c005cd40 - c000a39c: 8526 mv a0,s1 - c000a39e: 33a4b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6368 + c000a478: 00053717 auipc a4,0x53 + c000a47c: b1070713 addi a4,a4,-1264 # c005cf88 + c000a480: 4681 li a3,0 + c000a482: 00053597 auipc a1,0x53 + c000a486: aee58593 addi a1,a1,-1298 # c005cf70 + c000a48a: 8526 mv a0,s1 + c000a48c: 41c4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6376 fprintf(fp, "\n"); - c000a3a2: 85a6 mv a1,s1 - c000a3a4: 4529 li a0,10 - c000a3a6: 2544b0ef jal ra,c00555fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6371 + c000a490: 85a6 mv a1,s1 + c000a492: 4529 li a0,10 + c000a494: 3364b0ef jal ra,c00557ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6379 fprintf(fp, "%-20s %8s %8s\n", "NAME", "COUNT", "SIZE"); - c000a3aa: 00053697 auipc a3,0x53 - c000a3ae: 9be68693 addi a3,a3,-1602 # c005cd68 - c000a3b2: 00053717 auipc a4,0x53 - c000a3b6: 9ae70713 addi a4,a4,-1618 # c005cd60 - c000a3ba: 00053617 auipc a2,0x53 - c000a3be: 9b660613 addi a2,a2,-1610 # c005cd70 - c000a3c2: 00053597 auipc a1,0x53 - c000a3c6: 9b658593 addi a1,a1,-1610 # c005cd78 - c000a3ca: 8526 mv a0,s1 - c000a3cc: 30c4b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6373 + c000a498: 00053697 auipc a3,0x53 + c000a49c: b0068693 addi a3,a3,-1280 # c005cf98 + c000a4a0: 00053717 auipc a4,0x53 + c000a4a4: af070713 addi a4,a4,-1296 # c005cf90 + c000a4a8: 00053617 auipc a2,0x53 + c000a4ac: af860613 addi a2,a2,-1288 # c005cfa0 + c000a4b0: 00053597 auipc a1,0x53 + c000a4b4: af858593 addi a1,a1,-1288 # c005cfa8 + c000a4b8: 8526 mv a0,s1 + c000a4ba: 3ee4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6381 if (s->malloc_count) { - c000a3d0: 6c14 ld a3,24(s0) - c000a3d2: cea9 beqz a3,c000a42c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6374 + c000a4be: 6c14 ld a3,24(s0) + c000a4c0: cea9 beqz a3,c000a51a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6382 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per block)\n", - c000a3d4: 6018 ld a4,0(s0) - c000a3d6: d226f7d3 fcvt.d.l fa5,a3 - c000a3da: 00053617 auipc a2,0x53 - c000a3de: 9ae60613 addi a2,a2,-1618 # c005cd88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6376 + c000a4c2: 6018 ld a4,0(s0) + c000a4c4: d226f7d3 fcvt.d.l fa5,a3 + c000a4c8: 00053617 auipc a2,0x53 + c000a4cc: af060613 addi a2,a2,-1296 # c005cfb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6384 (double)s->malloc_size / s->malloc_count); - c000a3e2: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6374 + c000a4d0: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6382 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per block)\n", - c000a3e6: 00053597 auipc a1,0x53 - c000a3ea: 9ba58593 addi a1,a1,-1606 # c005cda0 - c000a3ee: 8526 mv a0,s1 - c000a3f0: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a3f4: e20787d3 fmv.x.d a5,fa5 - c000a3f8: 2e04b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6377 + c000a4d4: 00053597 auipc a1,0x53 + c000a4d8: afc58593 addi a1,a1,-1284 # c005cfd0 + c000a4dc: 8526 mv a0,s1 + c000a4de: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a4e2: e20787d3 fmv.x.d a5,fa5 + c000a4e6: 3c24b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6385 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%d overhead, %0.1f average slack)\n", - c000a3fc: 6818 ld a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6379 + c000a4ea: 6818 ld a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6387 MALLOC_OVERHEAD, ((double)(s->malloc_size - s->memory_used_size) / - c000a3fe: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6377 + c000a4ec: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6385 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%d overhead, %0.1f average slack)\n", - c000a400: 7014 ld a3,32(s0) - c000a402: 00053617 auipc a2,0x53 - c000a406: 9c660613 addi a2,a2,-1594 # c005cdc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6379 + c000a4ee: 7014 ld a3,32(s0) + c000a4f0: 00053617 auipc a2,0x53 + c000a4f4: b0860613 addi a2,a2,-1272 # c005cff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6387 MALLOC_OVERHEAD, ((double)(s->malloc_size - s->memory_used_size) / - c000a40a: 8f99 sub a5,a5,a4 - c000a40c: d227f753 fcvt.d.l fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6377 + c000a4f8: 8f99 sub a5,a5,a4 + c000a4fa: d227f753 fcvt.d.l fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6385 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%d overhead, %0.1f average slack)\n", - c000a410: d226f7d3 fcvt.d.l fa5,a3 - c000a414: 47a1 li a5,8 - c000a416: 00053597 auipc a1,0x53 - c000a41a: 9c258593 addi a1,a1,-1598 # c005cdd8 - c000a41e: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a422: 8526 mv a0,s1 - c000a424: e2078853 fmv.x.d a6,fa5 - c000a428: 2b04b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6382 + c000a4fe: d226f7d3 fcvt.d.l fa5,a3 + c000a502: 47a1 li a5,8 + c000a504: 00053597 auipc a1,0x53 + c000a508: b0458593 addi a1,a1,-1276 # c005d008 + c000a50c: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a510: 8526 mv a0,s1 + c000a512: e2078853 fmv.x.d a6,fa5 + c000a516: 3924b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6390 if (s->atom_count) { - c000a42c: 7414 ld a3,40(s0) - c000a42e: c68d beqz a3,c000a458 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6383 + c000a51a: 7414 ld a3,40(s0) + c000a51c: c68d beqz a3,c000a546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6391 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per atom)\n", - c000a430: 7818 ld a4,48(s0) - c000a432: d226f7d3 fcvt.d.l fa5,a3 - c000a436: 00053617 auipc a2,0x53 - c000a43a: 9da60613 addi a2,a2,-1574 # c005ce10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6385 + c000a51e: 7818 ld a4,48(s0) + c000a520: d226f7d3 fcvt.d.l fa5,a3 + c000a524: 00053617 auipc a2,0x53 + c000a528: b1c60613 addi a2,a2,-1252 # c005d040 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6393 (double)s->atom_size / s->atom_count); - c000a43e: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6383 + c000a52c: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6391 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per atom)\n", - c000a442: 00053597 auipc a1,0x53 - c000a446: 9d658593 addi a1,a1,-1578 # c005ce18 - c000a44a: 8526 mv a0,s1 - c000a44c: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a450: e20787d3 fmv.x.d a5,fa5 - c000a454: 2844b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6387 + c000a530: 00053597 auipc a1,0x53 + c000a534: b1858593 addi a1,a1,-1256 # c005d048 + c000a538: 8526 mv a0,s1 + c000a53a: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a53e: e20787d3 fmv.x.d a5,fa5 + c000a542: 3664b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6395 if (s->str_count) { - c000a458: 7c14 ld a3,56(s0) - c000a45a: c68d beqz a3,c000a484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6388 + c000a546: 7c14 ld a3,56(s0) + c000a548: c68d beqz a3,c000a572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6396 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per string)\n", - c000a45c: 6038 ld a4,64(s0) - c000a45e: d226f7d3 fcvt.d.l fa5,a3 - c000a462: 00053617 auipc a2,0x53 - c000a466: 9de60613 addi a2,a2,-1570 # c005ce40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6390 + c000a54a: 6038 ld a4,64(s0) + c000a54c: d226f7d3 fcvt.d.l fa5,a3 + c000a550: 00053617 auipc a2,0x53 + c000a554: b2060613 addi a2,a2,-1248 # c005d070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6398 (double)s->str_size / s->str_count); - c000a46a: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6388 + c000a558: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6396 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per string)\n", - c000a46e: 00053597 auipc a1,0x53 - c000a472: 9da58593 addi a1,a1,-1574 # c005ce48 - c000a476: 8526 mv a0,s1 - c000a478: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a47c: e20787d3 fmv.x.d a5,fa5 - c000a480: 2584b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6392 + c000a55c: 00053597 auipc a1,0x53 + c000a560: b1c58593 addi a1,a1,-1252 # c005d078 + c000a564: 8526 mv a0,s1 + c000a566: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a56a: e20787d3 fmv.x.d a5,fa5 + c000a56e: 33a4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6400 if (s->obj_count) { - c000a484: 6434 ld a3,72(s0) - c000a486: c2c1 beqz a3,c000a506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6393 + c000a572: 6434 ld a3,72(s0) + c000a574: c2c1 beqz a3,c000a5f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6401 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per object)\n", - c000a488: 6838 ld a4,80(s0) - c000a48a: d226f7d3 fcvt.d.l fa5,a3 - c000a48e: 00053617 auipc a2,0x53 - c000a492: 9e260613 addi a2,a2,-1566 # c005ce70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6395 + c000a576: 6838 ld a4,80(s0) + c000a578: d226f7d3 fcvt.d.l fa5,a3 + c000a57c: 00053617 auipc a2,0x53 + c000a580: b2460613 addi a2,a2,-1244 # c005d0a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6403 (double)s->obj_size / s->obj_count); - c000a496: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6393 + c000a584: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6401 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per object)\n", - c000a49a: 00053597 auipc a1,0x53 - c000a49e: 9de58593 addi a1,a1,-1570 # c005ce78 - c000a4a2: 8526 mv a0,s1 - c000a4a4: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a4a8: e20787d3 fmv.x.d a5,fa5 - c000a4ac: 22c4b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6396 + c000a588: 00053597 auipc a1,0x53 + c000a58c: b2058593 addi a1,a1,-1248 # c005d0a8 + c000a590: 8526 mv a0,s1 + c000a592: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a596: e20787d3 fmv.x.d a5,fa5 + c000a59a: 30e4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6404 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per object)\n", - c000a4b0: 6c34 ld a3,88(s0) - c000a4b2: 643c ld a5,72(s0) - c000a4b4: 7038 ld a4,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6398 + c000a59e: 6c34 ld a3,88(s0) + c000a5a0: 643c ld a5,72(s0) + c000a5a2: 7038 ld a4,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6406 (double)s->prop_count / s->obj_count); - c000a4b6: d226f753 fcvt.d.l fa4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6396 + c000a5a4: d226f753 fcvt.d.l fa4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6404 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per object)\n", - c000a4ba: d227f7d3 fcvt.d.l fa5,a5 - c000a4be: 00053617 auipc a2,0x53 - c000a4c2: 9e260613 addi a2,a2,-1566 # c005cea0 - c000a4c6: 00053597 auipc a1,0x53 - c000a4ca: 9b258593 addi a1,a1,-1614 # c005ce78 - c000a4ce: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a4d2: 8526 mv a0,s1 - c000a4d4: e20787d3 fmv.x.d a5,fa5 - c000a4d8: 2004b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6399 + c000a5a8: d227f7d3 fcvt.d.l fa5,a5 + c000a5ac: 00053617 auipc a2,0x53 + c000a5b0: b2460613 addi a2,a2,-1244 # c005d0d0 + c000a5b4: 00053597 auipc a1,0x53 + c000a5b8: af458593 addi a1,a1,-1292 # c005d0a8 + c000a5bc: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a5c0: 8526 mv a0,s1 + c000a5c2: e20787d3 fmv.x.d a5,fa5 + c000a5c6: 2e24b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6407 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per shape)\n", - c000a4dc: 7434 ld a3,104(s0) - c000a4de: 7838 ld a4,112(s0) - c000a4e0: 00053617 auipc a2,0x53 - c000a4e4: 9d060613 addi a2,a2,-1584 # c005ceb0 - c000a4e8: d226f7d3 fcvt.d.l fa5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6401 + c000a5ca: 7434 ld a3,104(s0) + c000a5cc: 7838 ld a4,112(s0) + c000a5ce: 00053617 auipc a2,0x53 + c000a5d2: b1260613 addi a2,a2,-1262 # c005d0e0 + c000a5d6: d226f7d3 fcvt.d.l fa5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6409 (double)s->shape_size / s->shape_count); - c000a4ec: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6399 + c000a5da: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6407 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per shape)\n", - c000a4f0: 00053597 auipc a1,0x53 - c000a4f4: 9d058593 addi a1,a1,-1584 # c005cec0 - c000a4f8: 8526 mv a0,s1 - c000a4fa: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a4fe: e20787d3 fmv.x.d a5,fa5 - c000a502: 1d64b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6403 + c000a5de: 00053597 auipc a1,0x53 + c000a5e2: b1258593 addi a1,a1,-1262 # c005d0f0 + c000a5e6: 8526 mv a0,s1 + c000a5e8: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a5ec: e20787d3 fmv.x.d a5,fa5 + c000a5f0: 2b84b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6411 if (s->js_func_count) { - c000a506: 7c34 ld a3,120(s0) - c000a508: caa5 beqz a3,c000a578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6404 + c000a5f4: 7c34 ld a3,120(s0) + c000a5f6: caa5 beqz a3,c000a666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6412 fprintf(fp, "%-20s %8"PRId64" %8"PRId64"\n", - c000a50a: 6058 ld a4,128(s0) - c000a50c: 00053617 auipc a2,0x53 - c000a510: 9dc60613 addi a2,a2,-1572 # c005cee8 - c000a514: 00053597 auipc a1,0x53 - c000a518: 9ec58593 addi a1,a1,-1556 # c005cf00 - c000a51c: 8526 mv a0,s1 - c000a51e: 1ba4b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6406 + c000a5f8: 6058 ld a4,128(s0) + c000a5fa: 00053617 auipc a2,0x53 + c000a5fe: b1e60613 addi a2,a2,-1250 # c005d118 + c000a602: 00053597 auipc a1,0x53 + c000a606: b2e58593 addi a1,a1,-1234 # c005d130 + c000a60a: 8526 mv a0,s1 + c000a60c: 29c4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6414 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per function)\n", - c000a522: 7c34 ld a3,120(s0) - c000a524: 6458 ld a4,136(s0) - c000a526: 00053617 auipc a2,0x53 - c000a52a: 9f260613 addi a2,a2,-1550 # c005cf18 - c000a52e: d226f7d3 fcvt.d.l fa5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6408 + c000a610: 7c34 ld a3,120(s0) + c000a612: 6458 ld a4,136(s0) + c000a614: 00053617 auipc a2,0x53 + c000a618: b3460613 addi a2,a2,-1228 # c005d148 + c000a61c: d226f7d3 fcvt.d.l fa5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6416 (double)s->js_func_code_size / s->js_func_count); - c000a532: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6406 + c000a620: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6414 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per function)\n", - c000a536: 00053597 auipc a1,0x53 - c000a53a: 9f258593 addi a1,a1,-1550 # c005cf28 - c000a53e: 8526 mv a0,s1 - c000a540: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a544: e20787d3 fmv.x.d a5,fa5 - c000a548: 1904b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6409 + c000a624: 00053597 auipc a1,0x53 + c000a628: b3458593 addi a1,a1,-1228 # c005d158 + c000a62c: 8526 mv a0,s1 + c000a62e: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a632: e20787d3 fmv.x.d a5,fa5 + c000a636: 2724b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6417 if (s->js_func_pc2line_count) { - c000a54c: 6854 ld a3,144(s0) - c000a54e: c68d beqz a3,c000a578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6410 + c000a63a: 6854 ld a3,144(s0) + c000a63c: c68d beqz a3,c000a666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6418 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per function)\n", - c000a550: 6c58 ld a4,152(s0) - c000a552: d226f7d3 fcvt.d.l fa5,a3 - c000a556: 00053617 auipc a2,0x53 - c000a55a: 9fa60613 addi a2,a2,-1542 # c005cf50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6413 + c000a63e: 6c58 ld a4,152(s0) + c000a640: d226f7d3 fcvt.d.l fa5,a3 + c000a644: 00053617 auipc a2,0x53 + c000a648: b3c60613 addi a2,a2,-1220 # c005d180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6421 (double)s->js_func_pc2line_size / s->js_func_pc2line_count); - c000a55e: d2277753 fcvt.d.l fa4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6410 + c000a64c: d2277753 fcvt.d.l fa4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6418 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per function)\n", - c000a562: 00053597 auipc a1,0x53 - c000a566: 9c658593 addi a1,a1,-1594 # c005cf28 - c000a56a: 8526 mv a0,s1 - c000a56c: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a570: e20787d3 fmv.x.d a5,fa5 - c000a574: 1644b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6416 + c000a650: 00053597 auipc a1,0x53 + c000a654: b0858593 addi a1,a1,-1272 # c005d158 + c000a658: 8526 mv a0,s1 + c000a65a: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a65e: e20787d3 fmv.x.d a5,fa5 + c000a662: 2464b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6424 if (s->c_func_count) { - c000a578: 7054 ld a3,160(s0) - c000a57a: ce81 beqz a3,c000a592 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6417 + c000a666: 7054 ld a3,160(s0) + c000a668: ce81 beqz a3,c000a680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6425 fprintf(fp, "%-20s %8"PRId64"\n", "C functions", s->c_func_count); - c000a57c: 00053617 auipc a2,0x53 - c000a580: 9e460613 addi a2,a2,-1564 # c005cf60 - c000a584: 00053597 auipc a1,0x53 - c000a588: 9ec58593 addi a1,a1,-1556 # c005cf70 - c000a58c: 8526 mv a0,s1 - c000a58e: 14a4b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6419 + c000a66a: 00053617 auipc a2,0x53 + c000a66e: b2660613 addi a2,a2,-1242 # c005d190 + c000a672: 00053597 auipc a1,0x53 + c000a676: b2e58593 addi a1,a1,-1234 # c005d1a0 + c000a67a: 8526 mv a0,s1 + c000a67c: 22c4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6427 if (s->array_count) { - c000a592: 7454 ld a3,168(s0) - c000a594: c2a5 beqz a3,c000a5f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6420 + c000a680: 7454 ld a3,168(s0) + c000a682: c2a5 beqz a3,c000a6e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6428 fprintf(fp, "%-20s %8"PRId64"\n", "arrays", s->array_count); - c000a596: 00053617 auipc a2,0x53 - c000a59a: 9ea60613 addi a2,a2,-1558 # c005cf80 - c000a59e: 00053597 auipc a1,0x53 - c000a5a2: 9d258593 addi a1,a1,-1582 # c005cf70 - c000a5a6: 8526 mv a0,s1 - c000a5a8: 1304b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6421 + c000a684: 00053617 auipc a2,0x53 + c000a688: b2c60613 addi a2,a2,-1236 # c005d1b0 + c000a68c: 00053597 auipc a1,0x53 + c000a690: b1458593 addi a1,a1,-1260 # c005d1a0 + c000a694: 8526 mv a0,s1 + c000a696: 2124b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6429 if (s->fast_array_count) { - c000a5ac: 7854 ld a3,176(s0) - c000a5ae: c2b9 beqz a3,c000a5f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6422 + c000a69a: 7854 ld a3,176(s0) + c000a69c: c2b9 beqz a3,c000a6e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6430 fprintf(fp, "%-20s %8"PRId64"\n", " fast arrays", s->fast_array_count); - c000a5b0: 00053617 auipc a2,0x53 - c000a5b4: 9d860613 addi a2,a2,-1576 # c005cf88 - c000a5b8: 00053597 auipc a1,0x53 - c000a5bc: 9b858593 addi a1,a1,-1608 # c005cf70 - c000a5c0: 8526 mv a0,s1 - c000a5c2: 1164b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6423 + c000a69e: 00053617 auipc a2,0x53 + c000a6a2: b1a60613 addi a2,a2,-1254 # c005d1b8 + c000a6a6: 00053597 auipc a1,0x53 + c000a6aa: afa58593 addi a1,a1,-1286 # c005d1a0 + c000a6ae: 8526 mv a0,s1 + c000a6b0: 1f84b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6431 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per fast array)\n", - c000a5c6: 7c54 ld a3,184(s0) - c000a5c8: 785c ld a5,176(s0) - c000a5ca: 00053617 auipc a2,0x53 - c000a5ce: 9ce60613 addi a2,a2,-1586 # c005cf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6426 + c000a6b4: 7c54 ld a3,184(s0) + c000a6b6: 785c ld a5,176(s0) + c000a6b8: 00053617 auipc a2,0x53 + c000a6bc: b1060613 addi a2,a2,-1264 # c005d1c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6434 (double)s->fast_array_elements / s->fast_array_count); - c000a5d2: d226f753 fcvt.d.l fa4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6423 + c000a6c0: d226f753 fcvt.d.l fa4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6431 fprintf(fp, "%-20s %8"PRId64" %8"PRId64" (%0.1f per fast array)\n", - c000a5d6: d227f7d3 fcvt.d.l fa5,a5 - c000a5da: 00469713 slli a4,a3,0x4 - c000a5de: 00053597 auipc a1,0x53 - c000a5e2: 9ca58593 addi a1,a1,-1590 # c005cfa8 - c000a5e6: 1af777d3 fdiv.d fa5,fa4,fa5 - c000a5ea: 8526 mv a0,s1 - c000a5ec: e20787d3 fmv.x.d a5,fa5 - c000a5f0: 0e84b0ef jal ra,c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6429 + c000a6c4: d227f7d3 fcvt.d.l fa5,a5 + c000a6c8: 00469713 slli a4,a3,0x4 + c000a6cc: 00053597 auipc a1,0x53 + c000a6d0: b0c58593 addi a1,a1,-1268 # c005d1d8 + c000a6d4: 1af777d3 fdiv.d fa5,fa4,fa5 + c000a6d8: 8526 mv a0,s1 + c000a6da: e20787d3 fmv.x.d a5,fa5 + c000a6de: 1ca4b0ef jal ra,c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6437 if (s->binary_object_count) { - c000a5f4: 6074 ld a3,192(s0) - c000a5f6: cea9 beqz a3,c000a650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6430 + c000a6e2: 6074 ld a3,192(s0) + c000a6e4: cea9 beqz a3,c000a73e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6438 fprintf(fp, "%-20s %8"PRId64" %8"PRId64"\n", - c000a5f8: 6478 ld a4,200(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6433 -} - c000a5fa: 641a ld s0,384(sp) - c000a5fc: 60ba ld ra,392(sp) - c000a5fe: 7956 ld s2,368(sp) - c000a600: 79b6 ld s3,360(sp) - c000a602: 7a16 ld s4,352(sp) - c000a604: 6af6 ld s5,344(sp) - c000a606: 6b56 ld s6,336(sp) - c000a608: 6bb6 ld s7,328(sp) - c000a60a: 6c16 ld s8,320(sp) - c000a60c: 7cf2 ld s9,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6430 + c000a6e6: 6478 ld a4,200(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6441 +} + c000a6e8: 641a ld s0,384(sp) + c000a6ea: 60ba ld ra,392(sp) + c000a6ec: 7956 ld s2,368(sp) + c000a6ee: 79b6 ld s3,360(sp) + c000a6f0: 7a16 ld s4,352(sp) + c000a6f2: 6af6 ld s5,344(sp) + c000a6f4: 6b56 ld s6,336(sp) + c000a6f6: 6bb6 ld s7,328(sp) + c000a6f8: 6c16 ld s8,320(sp) + c000a6fa: 7cf2 ld s9,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6438 fprintf(fp, "%-20s %8"PRId64" %8"PRId64"\n", - c000a60e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6433 + c000a6fc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6441 } - c000a610: 74f6 ld s1,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6430 + c000a6fe: 74f6 ld s1,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6438 fprintf(fp, "%-20s %8"PRId64" %8"PRId64"\n", - c000a612: 00053617 auipc a2,0x53 - c000a616: 9c660613 addi a2,a2,-1594 # c005cfd8 - c000a61a: 00053597 auipc a1,0x53 - c000a61e: 8e658593 addi a1,a1,-1818 # c005cf00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6433 + c000a700: 00053617 auipc a2,0x53 + c000a704: b0860613 addi a2,a2,-1272 # c005d208 + c000a708: 00053597 auipc a1,0x53 + c000a70c: a2858593 addi a1,a1,-1496 # c005d130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6441 } - c000a622: 6159 addi sp,sp,400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6430 + c000a710: 6159 addi sp,sp,400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6438 fprintf(fp, "%-20s %8"PRId64" %8"PRId64"\n", - c000a624: 0b44b06f j c00556d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6350 + c000a712: 1964b06f j c00558a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6358 if (gp->gc_obj_type == JS_GC_OBJ_TYPE_JS_OBJECT) { - c000a628: ffc74783 lbu a5,-4(a4) - c000a62c: 8bbd andi a5,a5,15 - c000a62e: ef99 bnez a5,c000a64c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6352 + c000a716: ffc74783 lbu a5,-4(a4) + c000a71a: 8bbd andi a5,a5,15 + c000a71c: ef99 bnez a5,c000a73a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6360 obj_classes[min_uint32(p->class_id, JS_CLASS_INIT_COUNT)]++; - c000a630: ffe75783 lhu a5,-2(a4) + c000a71e: ffe75783 lhu a5,-2(a4) min_uint32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:95 if (a < b) - c000a634: 00f5f463 bgeu a1,a5,c000a63c + c000a722: 00f5f463 bgeu a1,a5,c000a72a /Users/Luppy/riscv/quickjs-nuttx/cutils.h:98 return b; - c000a638: 03600793 li a5,54 + c000a726: 03600793 li a5,54 JS_DumpMemoryUsage(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6352 - c000a63c: 1a14 addi a3,sp,304 - c000a63e: 078a slli a5,a5,0x2 - c000a640: 97b6 add a5,a5,a3 - c000a642: f207a683 lw a3,-224(a5) - c000a646: 2685 addiw a3,a3,1 - c000a648: f2d7a023 sw a3,-224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6347 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6360 + c000a72a: 1a14 addi a3,sp,304 + c000a72c: 078a slli a5,a5,0x2 + c000a72e: 97b6 add a5,a5,a3 + c000a730: f207a683 lw a3,-224(a5) + c000a734: 2685 addiw a3,a3,1 + c000a736: f2d7a023 sw a3,-224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6355 (discriminator 2) list_for_each(el, &rt->gc_obj_list) { - c000a64c: 6718 ld a4,8(a4) - c000a64e: b94d j c000a300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6433 -} - c000a650: 60ba ld ra,392(sp) - c000a652: 641a ld s0,384(sp) - c000a654: 74f6 ld s1,376(sp) - c000a656: 7956 ld s2,368(sp) - c000a658: 79b6 ld s3,360(sp) - c000a65a: 7a16 ld s4,352(sp) - c000a65c: 6af6 ld s5,344(sp) - c000a65e: 6b56 ld s6,336(sp) - c000a660: 6bb6 ld s7,328(sp) - c000a662: 6c16 ld s8,320(sp) - c000a664: 7cf2 ld s9,312(sp) - c000a666: 6159 addi sp,sp,400 - c000a668: 8082 ret - -00000000c000a66a : + c000a73a: 6718 ld a4,8(a4) + c000a73c: b94d j c000a3ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6441 +} + c000a73e: 60ba ld ra,392(sp) + c000a740: 641a ld s0,384(sp) + c000a742: 74f6 ld s1,376(sp) + c000a744: 7956 ld s2,368(sp) + c000a746: 79b6 ld s3,360(sp) + c000a748: 7a16 ld s4,352(sp) + c000a74a: 6af6 ld s5,344(sp) + c000a74c: 6b56 ld s6,336(sp) + c000a74e: 6bb6 ld s7,328(sp) + c000a750: 6c16 ld s8,320(sp) + c000a752: 7cf2 ld s9,312(sp) + c000a754: 6159 addi sp,sp,400 + c000a756: 8082 ret + +00000000c000a758 : JS_GetGlobalObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6436 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6444 { - c000a66a: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6437 + c000a758: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6445 return JS_DupValue(ctx, ctx->global_obj); - c000a66c: 1707b583 ld a1,368(a5) - c000a670: 16853503 ld a0,360(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6436 + c000a75a: 1707b583 ld a1,368(a5) + c000a75e: 16853503 ld a0,360(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6444 { - c000a674: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6438 + c000a762: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6446 } - c000a676: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6437 + c000a764: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6445 return JS_DupValue(ctx, ctx->global_obj); - c000a678: ff7fb06f j c000666e + c000a766: ff7fb06f j c000675c -00000000c000a67c : +00000000c000a76a : JS_Throw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6450 { - c000a67c: 7179 addi sp,sp,-48 - c000a67e: f406 sd ra,40(sp) - c000a680: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6443 + c000a76a: 7179 addi sp,sp,-48 + c000a76c: f406 sd ra,40(sp) + c000a76e: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6451 JSRuntime *rt = ctx->rt; - c000a682: 6d00 ld s0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6442 + c000a770: 6d00 ld s0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6450 { - c000a684: e02e sd a1,0(sp) - c000a686: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6444 + c000a772: e02e sd a1,0(sp) + c000a774: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6452 JS_FreeValue(ctx, rt->current_exception); - c000a688: 706c ld a1,224(s0) - c000a68a: 7470 ld a2,232(s0) - c000a68c: cacfd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6445 + c000a776: 706c ld a1,224(s0) + c000a778: 7470 ld a2,232(s0) + c000a77a: cacfd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6453 rt->current_exception = obj; - c000a690: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6447 + c000a77e: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6455 } - c000a692: 4501 li a0,0 - c000a694: 4599 li a1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6445 + c000a780: 4501 li a0,0 + c000a782: 4599 li a1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6453 rt->current_exception = obj; - c000a696: f07c sd a5,224(s0) - c000a698: 67a2 ld a5,8(sp) - c000a69a: f47c sd a5,232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6447 + c000a784: f07c sd a5,224(s0) + c000a786: 67a2 ld a5,8(sp) + c000a788: f47c sd a5,232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6455 } - c000a69c: 70a2 ld ra,40(sp) - c000a69e: 7402 ld s0,32(sp) - c000a6a0: 6145 addi sp,sp,48 - c000a6a2: 8082 ret + c000a78a: 70a2 ld ra,40(sp) + c000a78c: 7402 ld s0,32(sp) + c000a78e: 6145 addi sp,sp,48 + c000a790: 8082 ret -00000000c000a6a4 : +00000000c000a792 : js_promise_finally_thrower(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 { - c000a6a4: 7139 addi sp,sp,-64 - c000a6a6: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48700 + c000a792: 7139 addi sp,sp,-64 + c000a794: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48708 return JS_Throw(ctx, JS_DupValue(ctx, func_data[0])); - c000a6a8: 00883583 ld a1,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48699 + c000a796: 00883583 ld a1,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 { - c000a6ac: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48700 + c000a79a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48708 return JS_Throw(ctx, JS_DupValue(ctx, func_data[0])); - c000a6ae: 00083503 ld a0,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48699 + c000a79c: 00083503 ld a0,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 { - c000a6b2: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48700 + c000a7a0: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48708 return JS_Throw(ctx, JS_DupValue(ctx, func_data[0])); - c000a6b4: fbbfb0ef jal ra,c000666e - c000a6b8: 862e mv a2,a1 - c000a6ba: 85aa mv a1,a0 - c000a6bc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48701 -} - c000a6be: 7442 ld s0,48(sp) - c000a6c0: 70e2 ld ra,56(sp) - c000a6c2: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48700 + c000a7a2: fbbfb0ef jal ra,c000675c + c000a7a6: 862e mv a2,a1 + c000a7a8: 85aa mv a1,a0 + c000a7aa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48709 +} + c000a7ac: 7442 ld s0,48(sp) + c000a7ae: 70e2 ld ra,56(sp) + c000a7b0: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48708 return JS_Throw(ctx, JS_DupValue(ctx, func_data[0])); - c000a6c4: fb9ff06f j c000a67c + c000a7b2: fb9ff06f j c000a76a -00000000c000a6c8 : +00000000c000a7b6 : JS_GetException(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6461 JSRuntime *rt = ctx->rt; - c000a6c8: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6455 + c000a7b6: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6463 rt->current_exception = JS_NULL; - c000a6ca: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6451 + c000a7b8: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6459 { - c000a6cc: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6454 + c000a7ba: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6462 val = rt->current_exception; - c000a6ce: 73e8 ld a0,224(a5) - c000a6d0: 77ec ld a1,232(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6455 + c000a7bc: 73e8 ld a0,224(a5) + c000a7be: 77ec ld a1,232(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6463 rt->current_exception = JS_NULL; - c000a6d2: 0e07b023 sd zero,224(a5) - c000a6d6: f7f8 sd a4,232(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6457 + c000a7c0: 0e07b023 sd zero,224(a5) + c000a7c4: f7f8 sd a4,232(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6465 } - c000a6d8: 6105 addi sp,sp,32 - c000a6da: 8082 ret + c000a7c6: 6105 addi sp,sp,32 + c000a7c8: 8082 ret -00000000c000a6dc : +00000000c000a7ca : JS_IsFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9826 { - c000a6dc: 1141 addi sp,sp,-16 - c000a6de: e432 sd a2,8(sp) - c000a6e0: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9820 + c000a7ca: 1141 addi sp,sp,-16 + c000a7cc: e432 sd a2,8(sp) + c000a7ce: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9828 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a6e2: 2601 sext.w a2,a2 - c000a6e4: 57fd li a5,-1 - c000a6e6: 02f61f63 bne a2,a5,c000a724 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9823 + c000a7d0: 2601 sext.w a2,a2 + c000a7d2: 57fd li a5,-1 + c000a7d4: 02f61f63 bne a2,a5,c000a812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9831 switch(p->class_id) { - c000a6ea: 0065d783 lhu a5,6(a1) - c000a6ee: 46b5 li a3,13 - c000a6f0: 872a mv a4,a0 - c000a6f2: 0007861b sext.w a2,a5 - c000a6f6: 4505 li a0,1 - c000a6f8: 00d78963 beq a5,a3,c000a70a - c000a6fc: 02c00693 li a3,44 - c000a700: 00d61763 bne a2,a3,c000a70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9827 + c000a7d8: 0065d783 lhu a5,6(a1) + c000a7dc: 46b5 li a3,13 + c000a7de: 872a mv a4,a0 + c000a7e0: 0007861b sext.w a2,a5 + c000a7e4: 4505 li a0,1 + c000a7e6: 00d78963 beq a5,a3,c000a7f8 + c000a7ea: 02c00693 li a3,44 + c000a7ee: 00d61763 bne a2,a3,c000a7fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9835 return p->u.proxy_data->is_func; - c000a704: 799c ld a5,48(a1) - c000a706: 0207c503 lbu a0,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9831 + c000a7f2: 799c ld a5,48(a1) + c000a7f4: 0207c503 lbu a0,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9839 } - c000a70a: 0141 addi sp,sp,16 - c000a70c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9829 + c000a7f8: 0141 addi sp,sp,16 + c000a7fa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9837 return (ctx->rt->class_array[p->class_id].call != NULL); - c000a70e: 02800693 li a3,40 - c000a712: 02d787b3 mul a5,a5,a3 - c000a716: 6f18 ld a4,24(a4) - c000a718: 7b38 ld a4,112(a4) - c000a71a: 97ba add a5,a5,a4 - c000a71c: 6f88 ld a0,24(a5) - c000a71e: 00a03533 snez a0,a0 - c000a722: b7e5 j c000a70a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9821 + c000a7fc: 02800693 li a3,40 + c000a800: 02d787b3 mul a5,a5,a3 + c000a804: 6f18 ld a4,24(a4) + c000a806: 7b38 ld a4,112(a4) + c000a808: 97ba add a5,a5,a4 + c000a80a: 6f88 ld a0,24(a5) + c000a80c: 00a03533 snez a0,a0 + c000a810: b7e5 j c000a7f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9829 return FALSE; - c000a724: 4501 li a0,0 - c000a726: b7d5 j c000a70a + c000a812: 4501 li a0,0 + c000a814: b7d5 j c000a7f8 -00000000c000a728 : +00000000c000a816 : js_operator_typeof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14680 { - c000a728: 1101 addi sp,sp,-32 - c000a72a: ec06 sd ra,24(sp) - c000a72c: e02e sd a1,0(sp) - c000a72e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14676 + c000a816: 1101 addi sp,sp,-32 + c000a818: ec06 sd ra,24(sp) + c000a81a: e02e sd a1,0(sp) + c000a81c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14684 tag = JS_VALUE_GET_NORM_TAG(op1); - c000a730: 0006071b sext.w a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14677 + c000a81e: 0006071b sext.w a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14685 switch(tag) { - c000a734: 479d li a5,7 - c000a736: 00e7eb63 bltu a5,a4,c000a74c - c000a73a: 00053697 auipc a3,0x53 - c000a73e: 8ae68693 addi a3,a3,-1874 # c005cfe8 - c000a742: 070a slli a4,a4,0x2 - c000a744: 9736 add a4,a4,a3 - c000a746: 431c lw a5,0(a4) - c000a748: 97b6 add a5,a5,a3 - c000a74a: 8782 jr a5 - c000a74c: 56e5 li a3,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14700 + c000a822: 479d li a5,7 + c000a824: 00e7eb63 bltu a5,a4,c000a83a + c000a828: 00053697 auipc a3,0x53 + c000a82c: 9f068693 addi a3,a3,-1552 # c005d218 + c000a830: 070a slli a4,a4,0x2 + c000a832: 9736 add a4,a4,a3 + c000a834: 431c lw a5,0(a4) + c000a836: 97b6 add a5,a5,a3 + c000a838: 8782 jr a5 + c000a83a: 56e5 li a3,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14708 atom = JS_ATOM_string; - c000a74e: 04900793 li a5,73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14677 + c000a83c: 04900793 li a5,73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14685 switch(tag) { - c000a752: 02d70063 beq a4,a3,c000a772 - c000a756: 02e6e263 bltu a3,a4,c000a77a - c000a75a: 56d9 li a3,-10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14679 + c000a840: 02d70063 beq a4,a3,c000a860 + c000a844: 02e6e263 bltu a3,a4,c000a868 + c000a848: 56d9 li a3,-10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14687 atom = JS_ATOM_bigint; - c000a75c: 08d00793 li a5,141 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14677 + c000a84a: 08d00793 li a5,141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14685 switch(tag) { - c000a760: 00d70963 beq a4,a3,c000a772 - c000a764: 56e1 li a3,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14722 + c000a84e: 00d70963 beq a4,a3,c000a860 + c000a852: 56e1 li a3,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14730 atom = JS_ATOM_unknown; - c000a766: 04d00793 li a5,77 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14677 + c000a854: 04d00793 li a5,77 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14685 switch(tag) { - c000a76a: 00d71463 bne a4,a3,c000a772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14719 + c000a858: 00d71463 bne a4,a3,c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14727 atom = JS_ATOM_symbol; - c000a76e: 04b00793 li a5,75 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14726 -} - c000a772: 60e2 ld ra,24(sp) - c000a774: 853e mv a0,a5 - c000a776: 6105 addi sp,sp,32 - c000a778: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14677 + c000a85c: 04b00793 li a5,75 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14734 +} + c000a860: 60e2 ld ra,24(sp) + c000a862: 853e mv a0,a5 + c000a864: 6105 addi sp,sp,32 + c000a866: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14685 switch(tag) { - c000a77a: 57fd li a5,-1 - c000a77c: 00f70b63 beq a4,a5,c000a792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14722 + c000a868: 57fd li a5,-1 + c000a86a: 00f70b63 beq a4,a5,c000a880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14730 atom = JS_ATOM_unknown; - c000a780: 04d00793 li a5,77 - c000a784: b7fd j c000a772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14694 + c000a86e: 04d00793 li a5,77 + c000a872: b7fd j c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14702 atom = JS_ATOM_undefined; - c000a786: 04600793 li a5,70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14695 + c000a874: 04600793 li a5,70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14703 break; - c000a78a: b7e5 j c000a772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14697 + c000a878: b7e5 j c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14705 atom = JS_ATOM_boolean; - c000a78c: 04800793 li a5,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14698 - break; - c000a790: b7cd j c000a772 + c000a87a: 04800793 li a5,72 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14706 + break; + c000a87e: b7cd j c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14714 if (unlikely(p->is_HTMLDDA)) - c000a792: 00558703 lb a4,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14707 + c000a880: 00558703 lb a4,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14715 atom = JS_ATOM_undefined; - c000a796: 04600793 li a5,70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14706 + c000a884: 04600793 li a5,70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14714 if (unlikely(p->is_HTMLDDA)) - c000a79a: fc074ce3 bltz a4,c000a772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14708 + c000a888: fc074ce3 bltz a4,c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14716 else if (JS_IsFunction(ctx, op1)) - c000a79e: f3fff0ef jal ra,c000a6dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14709 + c000a88c: f3fff0ef jal ra,c000a7ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14717 atom = JS_ATOM_function; - c000a7a2: 47ed li a5,27 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14708 - else if (JS_IsFunction(ctx, op1)) - c000a7a4: f579 bnez a0,c000a772 + c000a890: 47ed li a5,27 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14716 + else if (JS_IsFunction(ctx, op1)) + c000a892: f579 bnez a0,c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14724 atom = JS_ATOM_object; - c000a7a6: 04a00793 li a5,74 - c000a7aa: b7e1 j c000a772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14691 + c000a894: 04a00793 li a5,74 + c000a898: b7e1 j c000a860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14699 atom = JS_ATOM_number; - c000a7ac: 04700793 li a5,71 - c000a7b0: b7c9 j c000a772 + c000a89a: 04700793 li a5,71 + c000a89e: b7c9 j c000a860 -00000000c000a7b2 : +00000000c000a8a0 : JS_IsCFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9842 { - c000a7b2: 1141 addi sp,sp,-16 - c000a7b4: e432 sd a2,8(sp) - c000a7b6: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9836 + c000a8a0: 1141 addi sp,sp,-16 + c000a8a2: e432 sd a2,8(sp) + c000a8a4: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9844 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a7b8: 2601 sext.w a2,a2 - c000a7ba: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9840 + c000a8a6: 2601 sext.w a2,a2 + c000a8a8: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 return (p->u.cfunc.c_function.generic == func && p->u.cfunc.magic == magic); - c000a7bc: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9836 + c000a8aa: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9844 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a7be: 00f61f63 bne a2,a5,c000a7dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9839 + c000a8ac: 00f61f63 bne a2,a5,c000a8ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9847 if (p->class_id == JS_CLASS_C_FUNCTION) - c000a7c2: 0065d603 lhu a2,6(a1) - c000a7c6: 47b1 li a5,12 - c000a7c8: 00f61a63 bne a2,a5,c000a7dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9840 + c000a8b0: 0065d603 lhu a2,6(a1) + c000a8b4: 47b1 li a5,12 + c000a8b6: 00f61a63 bne a2,a5,c000a8ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 return (p->u.cfunc.c_function.generic == func && p->u.cfunc.magic == magic); - c000a7cc: 7d9c ld a5,56(a1) - c000a7ce: 00d79763 bne a5,a3,c000a7dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9840 (discriminator 1) - c000a7d2: 04259503 lh a0,66(a1) - c000a7d6: 8d19 sub a0,a0,a4 - c000a7d8: 00153513 seqz a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9843 -} - c000a7dc: 0141 addi sp,sp,16 - c000a7de: 8082 ret - -00000000c000a7e0 : + c000a8ba: 7d9c ld a5,56(a1) + c000a8bc: 00d79763 bne a5,a3,c000a8ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 (discriminator 1) + c000a8c0: 04259503 lh a0,66(a1) + c000a8c4: 8d19 sub a0,a0,a4 + c000a8c6: 00153513 seqz a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 +} + c000a8ca: 0141 addi sp,sp,16 + c000a8cc: 8082 ret + +00000000c000a8ce : JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9854 { - c000a7e0: 1141 addi sp,sp,-16 - c000a7e2: e432 sd a2,8(sp) - c000a7e4: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 + c000a8ce: 1141 addi sp,sp,-16 + c000a8d0: e432 sd a2,8(sp) + c000a8d2: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a7e6: 2601 sext.w a2,a2 - c000a7e8: 57fd li a5,-1 - c000a7ea: 4501 li a0,0 - c000a7ec: 00f61563 bne a2,a5,c000a7f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c000a8d4: 2601 sext.w a2,a2 + c000a8d6: 57fd li a5,-1 + c000a8d8: 4501 li a0,0 + c000a8da: 00f61563 bne a2,a5,c000a8e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c000a7f0: 6188 ld a0,0(a1) - c000a7f2: 9131 srli a0,a0,0x2c - c000a7f4: 8905 andi a0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9852 + c000a8de: 6188 ld a0,0(a1) + c000a8e0: 9131 srli a0,a0,0x2c + c000a8e2: 8905 andi a0,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 } - c000a7f6: 0141 addi sp,sp,16 - c000a7f8: 8082 ret + c000a8e4: 0141 addi sp,sp,16 + c000a8e6: 8082 ret -00000000c000a7fa : +00000000c000a8e8 : JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9863 { - c000a7fa: 1141 addi sp,sp,-16 - c000a7fc: e432 sd a2,8(sp) - c000a7fe: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9857 + c000a8e8: 1141 addi sp,sp,-16 + c000a8ea: e432 sd a2,8(sp) + c000a8ec: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9865 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c000a800: 2601 sext.w a2,a2 - c000a802: 57fd li a5,-1 - c000a804: 4501 li a0,0 - c000a806: 00f61c63 bne a2,a5,c000a81e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 + c000a8ee: 2601 sext.w a2,a2 + c000a8f0: 57fd li a5,-1 + c000a8f2: 4501 li a0,0 + c000a8f4: 00f61c63 bne a2,a5,c000a90c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c000a80a: 0055c783 lbu a5,5(a1) - c000a80e: 8a85 andi a3,a3,1 - c000a810: 0046969b slliw a3,a3,0x4 - c000a814: 9bbd andi a5,a5,-17 - c000a816: 8edd or a3,a3,a5 - c000a818: 00d582a3 sb a3,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9861 + c000a8f8: 0055c783 lbu a5,5(a1) + c000a8fc: 8a85 andi a3,a3,1 + c000a8fe: 0046969b slliw a3,a3,0x4 + c000a902: 9bbd andi a5,a5,-17 + c000a904: 8edd or a3,a3,a5 + c000a906: 00d582a3 sb a3,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9869 return TRUE; - c000a81c: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9862 + c000a90a: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9870 } - c000a81e: 0141 addi sp,sp,16 - c000a820: 8082 ret + c000a90c: 0141 addi sp,sp,16 + c000a90e: 8082 ret -00000000c000a822 : +00000000c000a910 : JS_IsError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9865 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9873 { - c000a822: 1141 addi sp,sp,-16 - c000a824: e432 sd a2,8(sp) - c000a826: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9867 + c000a910: 1141 addi sp,sp,-16 + c000a912: e432 sd a2,8(sp) + c000a914: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9875 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a828: 2601 sext.w a2,a2 - c000a82a: 57fd li a5,-1 - c000a82c: 4501 li a0,0 - c000a82e: 00f61763 bne a2,a5,c000a83c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9870 + c000a916: 2601 sext.w a2,a2 + c000a918: 57fd li a5,-1 + c000a91a: 4501 li a0,0 + c000a91c: 00f61763 bne a2,a5,c000a92a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9878 return (p->class_id == JS_CLASS_ERROR); - c000a832: 0065d503 lhu a0,6(a1) - c000a836: 1575 addi a0,a0,-3 - c000a838: 00153513 seqz a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9871 + c000a920: 0065d503 lhu a0,6(a1) + c000a924: 1575 addi a0,a0,-3 + c000a926: 00153513 seqz a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9879 } - c000a83c: 0141 addi sp,sp,16 - c000a83e: 8082 ret + c000a92a: 0141 addi sp,sp,16 + c000a92c: 8082 ret -00000000c000a840 : +00000000c000a92e : JS_IsUncatchableError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9875 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9883 { - c000a840: 1141 addi sp,sp,-16 - c000a842: e432 sd a2,8(sp) - c000a844: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9877 + c000a92e: 1141 addi sp,sp,-16 + c000a930: e432 sd a2,8(sp) + c000a932: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9885 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a846: 2601 sext.w a2,a2 - c000a848: 57fd li a5,-1 - c000a84a: 4501 li a0,0 - c000a84c: 00f61b63 bne a2,a5,c000a862 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9880 + c000a934: 2601 sext.w a2,a2 + c000a936: 57fd li a5,-1 + c000a938: 4501 li a0,0 + c000a93a: 00f61b63 bne a2,a5,c000a950 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9888 return p->class_id == JS_CLASS_ERROR && p->is_uncatchable_error; - c000a850: 6188 ld a0,0(a1) - c000a852: 57e5 li a5,-7 - c000a854: 17b6 slli a5,a5,0x2d - c000a856: 8d7d and a0,a0,a5 - c000a858: 579d li a5,-25 - c000a85a: 17b6 slli a5,a5,0x2d - c000a85c: 953e add a0,a0,a5 - c000a85e: 00153513 seqz a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9881 -} - c000a862: 0141 addi sp,sp,16 - c000a864: 8082 ret - -00000000c000a866 : + c000a93e: 6188 ld a0,0(a1) + c000a940: 57e5 li a5,-7 + c000a942: 17b6 slli a5,a5,0x2d + c000a944: 8d7d and a0,a0,a5 + c000a946: 579d li a5,-25 + c000a948: 17b6 slli a5,a5,0x2d + c000a94a: 953e add a0,a0,a5 + c000a94c: 00153513 seqz a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9889 +} + c000a950: 0141 addi sp,sp,16 + c000a952: 8082 ret + +00000000c000a954 : JS_SetUncatchableError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9892 { - c000a866: 1141 addi sp,sp,-16 - c000a868: e432 sd a2,8(sp) - c000a86a: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9886 + c000a954: 1141 addi sp,sp,-16 + c000a956: e432 sd a2,8(sp) + c000a958: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9894 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000a86c: 2601 sext.w a2,a2 - c000a86e: 57fd li a5,-1 - c000a870: 02f61163 bne a2,a5,c000a892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9889 + c000a95a: 2601 sext.w a2,a2 + c000a95c: 57fd li a5,-1 + c000a95e: 02f61163 bne a2,a5,c000a980 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9897 if (p->class_id == JS_CLASS_ERROR) - c000a874: 0065d703 lhu a4,6(a1) - c000a878: 478d li a5,3 - c000a87a: 00f71c63 bne a4,a5,c000a892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9890 + c000a962: 0065d703 lhu a4,6(a1) + c000a966: 478d li a5,3 + c000a968: 00f71c63 bne a4,a5,c000a980 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9898 p->is_uncatchable_error = flag; - c000a87e: 0055c783 lbu a5,5(a1) - c000a882: 8a85 andi a3,a3,1 - c000a884: 0056969b slliw a3,a3,0x5 - c000a888: fdf7f793 andi a5,a5,-33 - c000a88c: 8edd or a3,a3,a5 - c000a88e: 00d582a3 sb a3,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9891 -} - c000a892: 0141 addi sp,sp,16 - c000a894: 8082 ret - -00000000c000a896 : + c000a96c: 0055c783 lbu a5,5(a1) + c000a970: 8a85 andi a3,a3,1 + c000a972: 0056969b slliw a3,a3,0x5 + c000a976: fdf7f793 andi a5,a5,-33 + c000a97a: 8edd or a3,a3,a5 + c000a97c: 00d582a3 sb a3,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9899 +} + c000a980: 0141 addi sp,sp,16 + c000a982: 8082 ret + +00000000c000a984 : JS_ResetUncatchableError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9895 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 JS_SetUncatchableError(ctx, ctx->rt->current_exception, FALSE); - c000a896: 6d1c ld a5,24(a0) - c000a898: 4681 li a3,0 - c000a89a: 73ec ld a1,224(a5) - c000a89c: 77f0 ld a2,232(a5) - c000a89e: fc9ff06f j c000a866 + c000a984: 6d1c ld a5,24(a0) + c000a986: 4681 li a3,0 + c000a988: 73ec ld a1,224(a5) + c000a98a: 77f0 ld a2,232(a5) + c000a98c: fc9ff06f j c000a954 -00000000c000a8a2 : +00000000c000a990 : JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c000a8a2: 2581 sext.w a1,a1 - c000a8a4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9899 + c000a990: 2581 sext.w a1,a1 + c000a992: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9907 { - c000a8a6: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 + c000a994: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c000a8a8: 00f59363 bne a1,a5,c000a8ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c000a996: 00f59363 bne a1,a5,c000a99c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c000a8ac: f910 sd a2,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9905 + c000a99a: f910 sd a2,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9913 } - c000a8ae: 0141 addi sp,sp,16 - c000a8b0: 8082 ret + c000a99c: 0141 addi sp,sp,16 + c000a99e: 8082 ret -00000000c000a8b2 : +00000000c000a9a0 : JS_GetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9917 { - c000a8b2: 1141 addi sp,sp,-16 - c000a8b4: e42e sd a1,8(sp) - c000a8b6: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 + c000a9a0: 1141 addi sp,sp,-16 + c000a9a2: e42e sd a1,8(sp) + c000a9a4: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9919 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c000a8b8: 2581 sext.w a1,a1 - c000a8ba: 57fd li a5,-1 - c000a8bc: 00f59b63 bne a1,a5,c000a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9914 + c000a9a6: 2581 sext.w a1,a1 + c000a9a8: 57fd li a5,-1 + c000a9aa: 00f59b63 bne a1,a5,c000a9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9922 if (p->class_id != class_id) - c000a8c0: 00655703 lhu a4,6(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9913 + c000a9ae: 00655703 lhu a4,6(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9921 p = JS_VALUE_GET_OBJ(obj); - c000a8c4: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9912 + c000a9b2: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9920 return NULL; - c000a8c6: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9914 + c000a9b4: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9922 if (p->class_id != class_id) - c000a8c8: 00c71363 bne a4,a2,c000a8ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9916 + c000a9b6: 00c71363 bne a4,a2,c000a9bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9924 return p->u.opaque; - c000a8cc: 7b88 ld a0,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9917 + c000a9ba: 7b88 ld a0,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9925 } - c000a8ce: 0141 addi sp,sp,16 - c000a8d0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9912 + c000a9bc: 0141 addi sp,sp,16 + c000a9be: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9920 return NULL; - c000a8d2: 4501 li a0,0 - c000a8d4: bfed j c000a8ce + c000a9c0: 4501 li a0,0 + c000a9c2: bfed j c000a9bc -00000000c000a8d6 : +00000000c000a9c4 : js_c_function_data_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5183 -{ - c000a8d6: 7159 addi sp,sp,-112 - c000a8d8: f0a2 sd s0,96(sp) - c000a8da: eca6 sd s1,88(sp) - c000a8dc: 1880 addi s0,sp,112 - c000a8de: e8ca sd s2,80(sp) - c000a8e0: e4ce sd s3,72(sp) - c000a8e2: f486 sd ra,104(sp) - c000a8e4: 88b2 mv a7,a2 - c000a8e6: fab43823 sd a1,-80(s0) - c000a8ea: fac43c23 sd a2,-72(s0) - c000a8ee: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5191 +{ + c000a9c4: 7159 addi sp,sp,-112 + c000a9c6: f0a2 sd s0,96(sp) + c000a9c8: eca6 sd s1,88(sp) + c000a9ca: 1880 addi s0,sp,112 + c000a9cc: e8ca sd s2,80(sp) + c000a9ce: e4ce sd s3,72(sp) + c000a9d0: f486 sd ra,104(sp) + c000a9d2: 88b2 mv a7,a2 + c000a9d4: fab43823 sd a1,-80(s0) + c000a9d8: fac43c23 sd a2,-72(s0) + c000a9dc: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5192 JSCFunctionDataRecord *s = JS_GetOpaque(func_obj, JS_CLASS_C_FUNCTION_DATA); - c000a8f0: 463d li a2,15 - c000a8f2: 852e mv a0,a1 - c000a8f4: 85c6 mv a1,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5183 -{ - c000a8f6: fae43423 sd a4,-88(s0) - c000a8fa: 84be mv s1,a5 - c000a8fc: fad43023 sd a3,-96(s0) - c000a900: f9043c23 sd a6,-104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5184 + c000a9de: 463d li a2,15 + c000a9e0: 852e mv a0,a1 + c000a9e2: 85c6 mv a1,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5191 +{ + c000a9e4: fae43423 sd a4,-88(s0) + c000a9e8: 84be mv s1,a5 + c000a9ea: fad43023 sd a3,-96(s0) + c000a9ee: f9043c23 sd a6,-104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5192 JSCFunctionDataRecord *s = JS_GetOpaque(func_obj, JS_CLASS_C_FUNCTION_DATA); - c000a904: fafff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5189 + c000a9f2: fafff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5197 if (unlikely(argc < s->length)) { - c000a908: 00854783 lbu a5,8(a0) - c000a90c: f9843703 ld a4,-104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5184 + c000a9f6: 00854783 lbu a5,8(a0) + c000a9fa: f9843703 ld a4,-104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5192 JSCFunctionDataRecord *s = JS_GetOpaque(func_obj, JS_CLASS_C_FUNCTION_DATA); - c000a910: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5189 + c000a9fe: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5197 if (unlikely(argc < s->length)) { - c000a912: 02f4db63 bge s1,a5,c000a948 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5190 + c000aa00: 02f4db63 bge s1,a5,c000aa36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5198 arg_buf = alloca(sizeof(arg_buf[0]) * s->length); - c000a916: 0792 slli a5,a5,0x4 - c000a918: 40f10133 sub sp,sp,a5 - c000a91c: 868a mv a3,sp -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5192 + c000aa04: 0792 slli a5,a5,0x4 + c000aa06: 40f10133 sub sp,sp,a5 + c000aa0a: 868a mv a3,sp +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5200 arg_buf[i] = argv[i]; - c000a91e: 0004861b sext.w a2,s1 - c000a922: 0004d363 bgez s1,c000a928 - c000a926: 4601 li a2,0 - c000a928: 85ba mv a1,a4 - c000a92a: 8536 mv a0,a3 - c000a92c: 0612 slli a2,a2,0x4 - c000a92e: 0ac4c0ef jal ra,c00569da - c000a932: 00449793 slli a5,s1,0x4 - c000a936: 86aa mv a3,a0 - c000a938: 97aa add a5,a5,a0 - c000a93a: 8726 mv a4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5194 + c000aa0c: 0004861b sext.w a2,s1 + c000aa10: 0004d363 bgez s1,c000aa16 + c000aa14: 4601 li a2,0 + c000aa16: 85ba mv a1,a4 + c000aa18: 8536 mv a0,a3 + c000aa1a: 0612 slli a2,a2,0x4 + c000aa1c: 18e4c0ef jal ra,c0056baa + c000aa20: 00449793 slli a5,s1,0x4 + c000aa24: 86aa mv a3,a0 + c000aa26: 97aa add a5,a5,a0 + c000aa28: 8726 mv a4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5202 arg_buf[i] = JS_UNDEFINED; - c000a93c: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5193 (discriminator 1) + c000aa2a: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5201 (discriminator 1) for(i = argc; i < s->length; i++) - c000a93e: 00894603 lbu a2,8(s2) - c000a942: 02c74963 blt a4,a2,c000a974 - c000a946: 8736 mv a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5199 + c000aa2c: 00894603 lbu a2,8(s2) + c000aa30: 02c74963 blt a4,a2,c000aa62 + c000aa34: 8736 mv a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5207 return s->func(ctx, this_val, argc, arg_buf, s->magic, s->data); - c000a948: 00093883 ld a7,0(s2) - c000a94c: 00a95783 lhu a5,10(s2) - c000a950: fa043583 ld a1,-96(s0) - c000a954: fa843603 ld a2,-88(s0) - c000a958: 01090813 addi a6,s2,16 - c000a95c: 86a6 mv a3,s1 - c000a95e: 854e mv a0,s3 - c000a960: 9882 jalr a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5200 -} - c000a962: f9040113 addi sp,s0,-112 - c000a966: 70a6 ld ra,104(sp) - c000a968: 7406 ld s0,96(sp) - c000a96a: 64e6 ld s1,88(sp) - c000a96c: 6946 ld s2,80(sp) - c000a96e: 69a6 ld s3,72(sp) - c000a970: 6165 addi sp,sp,112 - c000a972: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5194 (discriminator 3) + c000aa36: 00093883 ld a7,0(s2) + c000aa3a: 00a95783 lhu a5,10(s2) + c000aa3e: fa043583 ld a1,-96(s0) + c000aa42: fa843603 ld a2,-88(s0) + c000aa46: 01090813 addi a6,s2,16 + c000aa4a: 86a6 mv a3,s1 + c000aa4c: 854e mv a0,s3 + c000aa4e: 9882 jalr a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5208 +} + c000aa50: f9040113 addi sp,s0,-112 + c000aa54: 70a6 ld ra,104(sp) + c000aa56: 7406 ld s0,96(sp) + c000aa58: 64e6 ld s1,88(sp) + c000aa5a: 6946 ld s2,80(sp) + c000aa5c: 69a6 ld s3,72(sp) + c000aa5e: 6165 addi sp,sp,112 + c000aa60: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5202 (discriminator 3) arg_buf[i] = JS_UNDEFINED; - c000a974: 0007b023 sd zero,0(a5) - c000a978: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5193 (discriminator 3) + c000aa62: 0007b023 sd zero,0(a5) + c000aa66: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5201 (discriminator 3) for(i = argc; i < s->length; i++) - c000a97a: 2705 addiw a4,a4,1 - c000a97c: 07c1 addi a5,a5,16 - c000a97e: b7c1 j c000a93e + c000aa68: 2705 addiw a4,a4,1 + c000aa6a: 07c1 addi a5,a5,16 + c000aa6c: b7c1 j c000aa2c -00000000c000a980 : +00000000c000aa6e : js_generator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19002 { - c000a980: 7179 addi sp,sp,-48 - c000a982: 87b2 mv a5,a2 - c000a984: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18995 + c000aa6e: 7179 addi sp,sp,-48 + c000aa70: 87b2 mv a5,a2 + c000aa72: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19003 JSGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_GENERATOR); - c000a986: 02b00613 li a2,43 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18994 + c000aa74: 02b00613 li a2,43 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19002 { - c000a98a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18995 + c000aa78: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19003 JSGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_GENERATOR); - c000a98c: 852e mv a0,a1 - c000a98e: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18994 + c000aa7a: 852e mv a0,a1 + c000aa7c: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19002 { - c000a990: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18995 + c000aa7e: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19003 JSGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_GENERATOR); - c000a992: f21ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18997 + c000aa80: f21ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19005 if (s) { - c000a996: cd09 beqz a0,c000a9b0 - c000a998: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18998 + c000aa84: cd09 beqz a0,c000aa9e + c000aa86: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19006 free_generator_stack_rt(rt, s); - c000a99a: e42a sd a0,8(sp) - c000a99c: 8522 mv a0,s0 - c000a99e: bf7fd0ef jal ra,c0008594 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18999 + c000aa88: e42a sd a0,8(sp) + c000aa8a: 8522 mv a0,s0 + c000aa8c: bf7fd0ef jal ra,c0008682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19007 js_free_rt(rt, s); - c000a9a2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19001 + c000aa90: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19009 } - c000a9a4: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18999 + c000aa92: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19007 js_free_rt(rt, s); - c000a9a6: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19001 + c000aa94: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19009 } - c000a9a8: 70a2 ld ra,40(sp) - c000a9aa: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18999 + c000aa96: 70a2 ld ra,40(sp) + c000aa98: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19007 js_free_rt(rt, s); - c000a9ac: 9fafc06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19001 + c000aa9a: 9fafc06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19009 } - c000a9b0: 70a2 ld ra,40(sp) - c000a9b2: 7402 ld s0,32(sp) - c000a9b4: 6145 addi sp,sp,48 - c000a9b6: 8082 ret + c000aa9e: 70a2 ld ra,40(sp) + c000aaa0: 7402 ld s0,32(sp) + c000aaa2: 6145 addi sp,sp,48 + c000aaa4: 8082 ret -00000000c000a9b8 : +00000000c000aaa6 : js_c_function_data_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5169 -{ - c000a9b8: 7139 addi sp,sp,-64 - c000a9ba: 87b2 mv a5,a2 - c000a9bc: f04a sd s2,32(sp) - c000a9be: e02e sd a1,0(sp) - c000a9c0: 892a mv s2,a0 - c000a9c2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5177 +{ + c000aaa6: 7139 addi sp,sp,-64 + c000aaa8: 87b2 mv a5,a2 + c000aaaa: f04a sd s2,32(sp) + c000aaac: e02e sd a1,0(sp) + c000aaae: 892a mv s2,a0 + c000aab0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5178 JSCFunctionDataRecord *s = JS_GetOpaque(val, JS_CLASS_C_FUNCTION_DATA); - c000a9c4: 852e mv a0,a1 - c000a9c6: 463d li a2,15 - c000a9c8: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5169 -{ - c000a9ca: ec4e sd s3,24(sp) - c000a9cc: fc06 sd ra,56(sp) - c000a9ce: f822 sd s0,48(sp) - c000a9d0: f426 sd s1,40(sp) - c000a9d2: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5170 + c000aab2: 852e mv a0,a1 + c000aab4: 463d li a2,15 + c000aab6: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5177 +{ + c000aab8: ec4e sd s3,24(sp) + c000aaba: fc06 sd ra,56(sp) + c000aabc: f822 sd s0,48(sp) + c000aabe: f426 sd s1,40(sp) + c000aac0: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5178 JSCFunctionDataRecord *s = JS_GetOpaque(val, JS_CLASS_C_FUNCTION_DATA); - c000a9d4: edfff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5173 + c000aac2: edfff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5181 if (s) { - c000a9d8: e905 bnez a0,c000aa08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5178 -} - c000a9da: 70e2 ld ra,56(sp) - c000a9dc: 7442 ld s0,48(sp) - c000a9de: 74a2 ld s1,40(sp) - c000a9e0: 7902 ld s2,32(sp) - c000a9e2: 69e2 ld s3,24(sp) - c000a9e4: 6121 addi sp,sp,64 - c000a9e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5175 (discriminator 3) + c000aac6: e905 bnez a0,c000aaf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5186 +} + c000aac8: 70e2 ld ra,56(sp) + c000aaca: 7442 ld s0,48(sp) + c000aacc: 74a2 ld s1,40(sp) + c000aace: 7902 ld s2,32(sp) + c000aad0: 69e2 ld s3,24(sp) + c000aad2: 6121 addi sp,sp,64 + c000aad4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5183 (discriminator 3) JS_MarkValue(rt, s->data[i], mark_func); - c000a9e8: 00148793 addi a5,s1,1 - c000a9ec: 0792 slli a5,a5,0x4 - c000a9ee: 97a2 add a5,a5,s0 - c000a9f0: 638c ld a1,0(a5) - c000a9f2: 6790 ld a2,8(a5) - c000a9f4: 86ce mv a3,s3 - c000a9f6: 854a mv a0,s2 - c000a9f8: fd6fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5174 (discriminator 3) + c000aad6: 00148793 addi a5,s1,1 + c000aada: 0792 slli a5,a5,0x4 + c000aadc: 97a2 add a5,a5,s0 + c000aade: 638c ld a1,0(a5) + c000aae0: 6790 ld a2,8(a5) + c000aae2: 86ce mv a3,s3 + c000aae4: 854a mv a0,s2 + c000aae6: fd6fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5182 (discriminator 3) for(i = 0; i < s->data_len; i++) { - c000a9fc: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5174 (discriminator 1) - c000a9fe: 00944783 lbu a5,9(s0) - c000aa02: fef4c3e3 blt s1,a5,c000a9e8 - c000aa06: bfd1 j c000a9da - c000aa08: 842a mv s0,a0 - c000aa0a: 4481 li s1,0 - c000aa0c: bfcd j c000a9fe - -00000000c000aa0e : + c000aaea: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5182 (discriminator 1) + c000aaec: 00944783 lbu a5,9(s0) + c000aaf0: fef4c3e3 blt s1,a5,c000aad6 + c000aaf4: bfd1 j c000aac8 + c000aaf6: 842a mv s0,a0 + c000aaf8: 4481 li s1,0 + c000aafa: bfcd j c000aaec + +00000000c000aafc : js_c_function_data_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5155 -{ - c000aa0e: 7179 addi sp,sp,-48 - c000aa10: 87b2 mv a5,a2 - c000aa12: ec26 sd s1,24(sp) - c000aa14: e02e sd a1,0(sp) - c000aa16: 84aa mv s1,a0 - c000aa18: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5163 +{ + c000aafc: 7179 addi sp,sp,-48 + c000aafe: 87b2 mv a5,a2 + c000ab00: ec26 sd s1,24(sp) + c000ab02: e02e sd a1,0(sp) + c000ab04: 84aa mv s1,a0 + c000ab06: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5164 JSCFunctionDataRecord *s = JS_GetOpaque(val, JS_CLASS_C_FUNCTION_DATA); - c000aa1a: 852e mv a0,a1 - c000aa1c: 463d li a2,15 - c000aa1e: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5155 -{ - c000aa20: f406 sd ra,40(sp) - c000aa22: f022 sd s0,32(sp) - c000aa24: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5156 + c000ab08: 852e mv a0,a1 + c000ab0a: 463d li a2,15 + c000ab0c: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5163 +{ + c000ab0e: f406 sd ra,40(sp) + c000ab10: f022 sd s0,32(sp) + c000ab12: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5164 JSCFunctionDataRecord *s = JS_GetOpaque(val, JS_CLASS_C_FUNCTION_DATA); - c000aa26: e8dff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5159 + c000ab14: e8dff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5167 if (s) { - c000aa2a: ed15 bnez a0,c000aa66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5165 -} - c000aa2c: 70a2 ld ra,40(sp) - c000aa2e: 7402 ld s0,32(sp) - c000aa30: 64e2 ld s1,24(sp) - c000aa32: 6942 ld s2,16(sp) - c000aa34: 6145 addi sp,sp,48 - c000aa36: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5161 (discriminator 3) + c000ab18: ed15 bnez a0,c000ab54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5173 +} + c000ab1a: 70a2 ld ra,40(sp) + c000ab1c: 7402 ld s0,32(sp) + c000ab1e: 64e2 ld s1,24(sp) + c000ab20: 6942 ld s2,16(sp) + c000ab22: 6145 addi sp,sp,48 + c000ab24: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5169 (discriminator 3) JS_FreeValueRT(rt, s->data[i]); - c000aa38: 00190793 addi a5,s2,1 - c000aa3c: 0792 slli a5,a5,0x4 - c000aa3e: 97a2 add a5,a5,s0 - c000aa40: 638c ld a1,0(a5) - c000aa42: 6790 ld a2,8(a5) - c000aa44: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5160 (discriminator 3) + c000ab26: 00190793 addi a5,s2,1 + c000ab2a: 0792 slli a5,a5,0x4 + c000ab2c: 97a2 add a5,a5,s0 + c000ab2e: 638c ld a1,0(a5) + c000ab30: 6790 ld a2,8(a5) + c000ab32: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5168 (discriminator 3) for(i = 0; i < s->data_len; i++) { - c000aa46: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5161 (discriminator 3) + c000ab34: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5169 (discriminator 3) JS_FreeValueRT(rt, s->data[i]); - c000aa48: c71fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5160 (discriminator 1) + c000ab36: c71fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5168 (discriminator 1) for(i = 0; i < s->data_len; i++) { - c000aa4c: 00944783 lbu a5,9(s0) - c000aa50: fef944e3 blt s2,a5,c000aa38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5163 + c000ab3a: 00944783 lbu a5,9(s0) + c000ab3e: fef944e3 blt s2,a5,c000ab26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5171 js_free_rt(rt, s); - c000aa54: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5165 + c000ab42: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5173 } - c000aa56: 7402 ld s0,32(sp) - c000aa58: 70a2 ld ra,40(sp) - c000aa5a: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5163 + c000ab44: 7402 ld s0,32(sp) + c000ab46: 70a2 ld ra,40(sp) + c000ab48: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5171 js_free_rt(rt, s); - c000aa5c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5165 + c000ab4a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5173 } - c000aa5e: 64e2 ld s1,24(sp) - c000aa60: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5163 + c000ab4c: 64e2 ld s1,24(sp) + c000ab4e: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5171 js_free_rt(rt, s); - c000aa62: 944fc06f j c0006ba6 - c000aa66: 842a mv s0,a0 - c000aa68: 4901 li s2,0 - c000aa6a: b7cd j c000aa4c + c000ab50: 944fc06f j c0006c94 + c000ab54: 842a mv s0,a0 + c000ab56: 4901 li s2,0 + c000ab58: b7cd j c000ab3a -00000000c000aa6c : +00000000c000ab5a : js_proxy_revoke(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46687 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46695 { - c000aa6c: 7139 addi sp,sp,-64 - c000aa6e: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46688 + c000ab5a: 7139 addi sp,sp,-64 + c000ab5c: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46696 JSProxyData *s = JS_GetOpaque(func_data[0], JS_CLASS_PROXY); - c000aa70: 00883583 ld a1,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46687 + c000ab5e: 00883583 ld a1,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46695 { - c000aa74: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46688 + c000ab62: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46696 JSProxyData *s = JS_GetOpaque(func_data[0], JS_CLASS_PROXY); - c000aa76: 00083503 ld a0,0(a6) - c000aa7a: 02c00613 li a2,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46687 -{ - c000aa7e: f822 sd s0,48(sp) - c000aa80: fc06 sd ra,56(sp) - c000aa82: 8442 mv s0,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46688 + c000ab64: 00083503 ld a0,0(a6) + c000ab68: 02c00613 li a2,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46695 +{ + c000ab6c: f822 sd s0,48(sp) + c000ab6e: fc06 sd ra,56(sp) + c000ab70: 8442 mv s0,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46696 JSProxyData *s = JS_GetOpaque(func_data[0], JS_CLASS_PROXY); - c000aa84: e2fff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46689 + c000ab72: e2fff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46697 if (s) { - c000aa88: cd09 beqz a0,c000aaa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46692 + c000ab76: cd09 beqz a0,c000ab90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46700 s->is_revoked = TRUE; - c000aa8a: 4785 li a5,1 - c000aa8c: 02f500a3 sb a5,33(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46693 + c000ab78: 4785 li a5,1 + c000ab7a: 02f500a3 sb a5,33(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46701 JS_FreeValue(ctx, func_data[0]); - c000aa90: 600c ld a1,0(s0) - c000aa92: 6410 ld a2,8(s0) - c000aa94: 8526 mv a0,s1 - c000aa96: 8a2fd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46694 + c000ab7e: 600c ld a1,0(s0) + c000ab80: 6410 ld a2,8(s0) + c000ab82: 8526 mv a0,s1 + c000ab84: 8a2fd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46702 func_data[0] = JS_NULL; - c000aa9a: 4789 li a5,2 - c000aa9c: 00043023 sd zero,0(s0) - c000aaa0: e41c sd a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46697 -} - c000aaa2: 70e2 ld ra,56(sp) - c000aaa4: 7442 ld s0,48(sp) - c000aaa6: 74a2 ld s1,40(sp) - c000aaa8: 4501 li a0,0 - c000aaaa: 458d li a1,3 - c000aaac: 6121 addi sp,sp,64 - c000aaae: 8082 ret - -00000000c000aab0 : + c000ab88: 4789 li a5,2 + c000ab8a: 00043023 sd zero,0(s0) + c000ab8e: e41c sd a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46705 +} + c000ab90: 70e2 ld ra,56(sp) + c000ab92: 7442 ld s0,48(sp) + c000ab94: 74a2 ld s1,40(sp) + c000ab96: 4501 li a0,0 + c000ab98: 458d li a1,3 + c000ab9a: 6121 addi sp,sp,64 + c000ab9c: 8082 ret + +00000000c000ab9e : js_proxy_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45815 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45823 { - c000aab0: 7179 addi sp,sp,-48 - c000aab2: 87b2 mv a5,a2 - c000aab4: ec26 sd s1,24(sp) - c000aab6: e02e sd a1,0(sp) - c000aab8: 84aa mv s1,a0 - c000aaba: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45816 + c000ab9e: 7179 addi sp,sp,-48 + c000aba0: 87b2 mv a5,a2 + c000aba2: ec26 sd s1,24(sp) + c000aba4: e02e sd a1,0(sp) + c000aba6: 84aa mv s1,a0 + c000aba8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45824 JSProxyData *s = JS_GetOpaque(val, JS_CLASS_PROXY); - c000aabc: 852e mv a0,a1 - c000aabe: 02c00613 li a2,44 - c000aac2: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45815 + c000abaa: 852e mv a0,a1 + c000abac: 02c00613 li a2,44 + c000abb0: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45823 { - c000aac4: e84a sd s2,16(sp) - c000aac6: f406 sd ra,40(sp) - c000aac8: f022 sd s0,32(sp) - c000aaca: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45816 + c000abb2: e84a sd s2,16(sp) + c000abb4: f406 sd ra,40(sp) + c000abb6: f022 sd s0,32(sp) + c000abb8: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45824 JSProxyData *s = JS_GetOpaque(val, JS_CLASS_PROXY); - c000aacc: de7ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45817 + c000abba: de7ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45825 if (s) { - c000aad0: c11d beqz a0,c000aaf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45818 + c000abbe: c11d beqz a0,c000abe4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45826 JS_MarkValue(rt, s->target, mark_func); - c000aad2: 610c ld a1,0(a0) - c000aad4: 6510 ld a2,8(a0) - c000aad6: 842a mv s0,a0 - c000aad8: 86ca mv a3,s2 - c000aada: 8526 mv a0,s1 - c000aadc: ef2fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 + c000abc0: 610c ld a1,0(a0) + c000abc2: 6510 ld a2,8(a0) + c000abc4: 842a mv s0,a0 + c000abc6: 86ca mv a3,s2 + c000abc8: 8526 mv a0,s1 + c000abca: ef2fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45827 JS_MarkValue(rt, s->handler, mark_func); - c000aae0: 680c ld a1,16(s0) - c000aae2: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45821 + c000abce: 680c ld a1,16(s0) + c000abd0: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45829 } - c000aae4: 7402 ld s0,32(sp) - c000aae6: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 + c000abd2: 7402 ld s0,32(sp) + c000abd4: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45827 JS_MarkValue(rt, s->handler, mark_func); - c000aae8: 86ca mv a3,s2 - c000aaea: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45821 -} - c000aaec: 6942 ld s2,16(sp) - c000aaee: 64e2 ld s1,24(sp) - c000aaf0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 + c000abd6: 86ca mv a3,s2 + c000abd8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45829 +} + c000abda: 6942 ld s2,16(sp) + c000abdc: 64e2 ld s1,24(sp) + c000abde: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45827 JS_MarkValue(rt, s->handler, mark_func); - c000aaf2: edcfe06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45821 + c000abe0: edcfe06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45829 } - c000aaf6: 70a2 ld ra,40(sp) - c000aaf8: 7402 ld s0,32(sp) - c000aafa: 64e2 ld s1,24(sp) - c000aafc: 6942 ld s2,16(sp) - c000aafe: 6145 addi sp,sp,48 - c000ab00: 8082 ret + c000abe4: 70a2 ld ra,40(sp) + c000abe6: 7402 ld s0,32(sp) + c000abe8: 64e2 ld s1,24(sp) + c000abea: 6942 ld s2,16(sp) + c000abec: 6145 addi sp,sp,48 + c000abee: 8082 ret -00000000c000ab02 : +00000000c000abf0 : js_proxy_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45804 -{ - c000ab02: 7179 addi sp,sp,-48 - c000ab04: 87b2 mv a5,a2 - c000ab06: ec26 sd s1,24(sp) - c000ab08: e02e sd a1,0(sp) - c000ab0a: 84aa mv s1,a0 - c000ab0c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45805 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45812 +{ + c000abf0: 7179 addi sp,sp,-48 + c000abf2: 87b2 mv a5,a2 + c000abf4: ec26 sd s1,24(sp) + c000abf6: e02e sd a1,0(sp) + c000abf8: 84aa mv s1,a0 + c000abfa: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45813 JSProxyData *s = JS_GetOpaque(val, JS_CLASS_PROXY); - c000ab0e: 852e mv a0,a1 - c000ab10: 02c00613 li a2,44 - c000ab14: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45804 -{ - c000ab16: f406 sd ra,40(sp) - c000ab18: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45805 + c000abfc: 852e mv a0,a1 + c000abfe: 02c00613 li a2,44 + c000ac02: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45812 +{ + c000ac04: f406 sd ra,40(sp) + c000ac06: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45813 JSProxyData *s = JS_GetOpaque(val, JS_CLASS_PROXY); - c000ab1a: d99ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45806 + c000ac08: d99ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45814 if (s) { - c000ab1e: c505 beqz a0,c000ab46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45807 + c000ac0c: c505 beqz a0,c000ac34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45815 JS_FreeValueRT(rt, s->target); - c000ab20: 610c ld a1,0(a0) - c000ab22: 6510 ld a2,8(a0) - c000ab24: 842a mv s0,a0 - c000ab26: 8526 mv a0,s1 - c000ab28: b91fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45808 + c000ac0e: 610c ld a1,0(a0) + c000ac10: 6510 ld a2,8(a0) + c000ac12: 842a mv s0,a0 + c000ac14: 8526 mv a0,s1 + c000ac16: b91fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45816 JS_FreeValueRT(rt, s->handler); - c000ab2c: 680c ld a1,16(s0) - c000ab2e: 6c10 ld a2,24(s0) - c000ab30: 8526 mv a0,s1 - c000ab32: b87fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45809 + c000ac1a: 680c ld a1,16(s0) + c000ac1c: 6c10 ld a2,24(s0) + c000ac1e: 8526 mv a0,s1 + c000ac20: b87fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45817 js_free_rt(rt, s); - c000ab36: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45811 + c000ac24: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 } - c000ab38: 7402 ld s0,32(sp) - c000ab3a: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45809 + c000ac26: 7402 ld s0,32(sp) + c000ac28: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45817 js_free_rt(rt, s); - c000ab3c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45811 + c000ac2a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 } - c000ab3e: 64e2 ld s1,24(sp) - c000ab40: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45809 + c000ac2c: 64e2 ld s1,24(sp) + c000ac2e: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45817 js_free_rt(rt, s); - c000ab42: 864fc06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45811 + c000ac30: 864fc06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45819 } - c000ab46: 70a2 ld ra,40(sp) - c000ab48: 7402 ld s0,32(sp) - c000ab4a: 64e2 ld s1,24(sp) - c000ab4c: 6145 addi sp,sp,48 - c000ab4e: 8082 ret + c000ac34: 70a2 ld ra,40(sp) + c000ac36: 7402 ld s0,32(sp) + c000ac38: 64e2 ld s1,24(sp) + c000ac3a: 6145 addi sp,sp,48 + c000ac3c: 8082 ret -00000000c000ab50 : +00000000c000ac3e : js_async_generator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19348 -{ - c000ab50: 7139 addi sp,sp,-64 - c000ab52: 87b2 mv a5,a2 - c000ab54: f04a sd s2,32(sp) - c000ab56: e02e sd a1,0(sp) - c000ab58: 892a mv s2,a0 - c000ab5a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19349 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19356 +{ + c000ac3e: 7139 addi sp,sp,-64 + c000ac40: 87b2 mv a5,a2 + c000ac42: f04a sd s2,32(sp) + c000ac44: e02e sd a1,0(sp) + c000ac46: 892a mv s2,a0 + c000ac48: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19357 JSAsyncGeneratorData *s = JS_GetOpaque(val, JS_CLASS_ASYNC_GENERATOR); - c000ab5c: 852e mv a0,a1 - c000ab5e: 03500613 li a2,53 - c000ab62: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19348 -{ - c000ab64: f426 sd s1,40(sp) - c000ab66: fc06 sd ra,56(sp) - c000ab68: f822 sd s0,48(sp) - c000ab6a: ec4e sd s3,24(sp) - c000ab6c: e852 sd s4,16(sp) - c000ab6e: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19349 + c000ac4a: 852e mv a0,a1 + c000ac4c: 03500613 li a2,53 + c000ac50: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19356 +{ + c000ac52: f426 sd s1,40(sp) + c000ac54: fc06 sd ra,56(sp) + c000ac56: f822 sd s0,48(sp) + c000ac58: ec4e sd s3,24(sp) + c000ac5a: e852 sd s4,16(sp) + c000ac5c: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19357 JSAsyncGeneratorData *s = JS_GetOpaque(val, JS_CLASS_ASYNC_GENERATOR); - c000ab70: d43ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19352 + c000ac5e: d43ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19360 if (s) { - c000ab74: cd31 beqz a0,c000abd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19353 + c000ac62: cd31 beqz a0,c000acbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19361 list_for_each(el, &s->queue) { - c000ab76: 7100 ld s0,32(a0) - c000ab78: 89aa mv s3,a0 - c000ab7a: 01850a13 addi s4,a0,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19353 (discriminator 1) - c000ab7e: 01441f63 bne s0,s4,c000ab9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19360 + c000ac64: 7100 ld s0,32(a0) + c000ac66: 89aa mv s3,a0 + c000ac68: 01850a13 addi s4,a0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19361 (discriminator 1) + c000ac6c: 01441f63 bne s0,s4,c000ac8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19368 if (s->func_state) { - c000ab82: 0109b583 ld a1,16(s3) - c000ab86: c5a9 beqz a1,c000abd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19364 -} - c000ab88: 7442 ld s0,48(sp) - c000ab8a: 70e2 ld ra,56(sp) - c000ab8c: 69e2 ld s3,24(sp) - c000ab8e: 6a42 ld s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19361 + c000ac70: 0109b583 ld a1,16(s3) + c000ac74: c5a9 beqz a1,c000acbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19372 +} + c000ac76: 7442 ld s0,48(sp) + c000ac78: 70e2 ld ra,56(sp) + c000ac7a: 69e2 ld s3,24(sp) + c000ac7c: 6a42 ld s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19369 mark_func(rt, &s->func_state->header); - c000ab90: 854a mv a0,s2 - c000ab92: 87a6 mv a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19364 -} - c000ab94: 7902 ld s2,32(sp) - c000ab96: 74a2 ld s1,40(sp) - c000ab98: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19361 + c000ac7e: 854a mv a0,s2 + c000ac80: 87a6 mv a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19372 +} + c000ac82: 7902 ld s2,32(sp) + c000ac84: 74a2 ld s1,40(sp) + c000ac86: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19369 mark_func(rt, &s->func_state->header); - c000ab9a: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19355 (discriminator 3) + c000ac88: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19363 (discriminator 3) JS_MarkValue(rt, req->result, mark_func); - c000ab9c: 6c0c ld a1,24(s0) - c000ab9e: 7010 ld a2,32(s0) - c000aba0: 86a6 mv a3,s1 - c000aba2: 854a mv a0,s2 - c000aba4: e2afe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19356 (discriminator 3) + c000ac8a: 6c0c ld a1,24(s0) + c000ac8c: 7010 ld a2,32(s0) + c000ac8e: 86a6 mv a3,s1 + c000ac90: 854a mv a0,s2 + c000ac92: e2afe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19364 (discriminator 3) JS_MarkValue(rt, req->promise, mark_func); - c000aba8: 740c ld a1,40(s0) - c000abaa: 7810 ld a2,48(s0) - c000abac: 86a6 mv a3,s1 - c000abae: 854a mv a0,s2 - c000abb0: e1efe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19357 (discriminator 3) + c000ac96: 740c ld a1,40(s0) + c000ac98: 7810 ld a2,48(s0) + c000ac9a: 86a6 mv a3,s1 + c000ac9c: 854a mv a0,s2 + c000ac9e: e1efe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19365 (discriminator 3) JS_MarkValue(rt, req->resolving_funcs[0], mark_func); - c000abb4: 7c0c ld a1,56(s0) - c000abb6: 6030 ld a2,64(s0) - c000abb8: 86a6 mv a3,s1 - c000abba: 854a mv a0,s2 - c000abbc: e12fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19358 (discriminator 3) + c000aca2: 7c0c ld a1,56(s0) + c000aca4: 6030 ld a2,64(s0) + c000aca6: 86a6 mv a3,s1 + c000aca8: 854a mv a0,s2 + c000acaa: e12fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19366 (discriminator 3) JS_MarkValue(rt, req->resolving_funcs[1], mark_func); - c000abc0: 642c ld a1,72(s0) - c000abc2: 6830 ld a2,80(s0) - c000abc4: 86a6 mv a3,s1 - c000abc6: 854a mv a0,s2 - c000abc8: e06fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19353 (discriminator 3) + c000acae: 642c ld a1,72(s0) + c000acb0: 6830 ld a2,80(s0) + c000acb2: 86a6 mv a3,s1 + c000acb4: 854a mv a0,s2 + c000acb6: e06fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19361 (discriminator 3) list_for_each(el, &s->queue) { - c000abcc: 6400 ld s0,8(s0) - c000abce: bf45 j c000ab7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19364 -} - c000abd0: 70e2 ld ra,56(sp) - c000abd2: 7442 ld s0,48(sp) - c000abd4: 74a2 ld s1,40(sp) - c000abd6: 7902 ld s2,32(sp) - c000abd8: 69e2 ld s3,24(sp) - c000abda: 6a42 ld s4,16(sp) - c000abdc: 6121 addi sp,sp,64 - c000abde: 8082 ret - -00000000c000abe0 : + c000acba: 6400 ld s0,8(s0) + c000acbc: bf45 j c000ac6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19372 +} + c000acbe: 70e2 ld ra,56(sp) + c000acc0: 7442 ld s0,48(sp) + c000acc2: 74a2 ld s1,40(sp) + c000acc4: 7902 ld s2,32(sp) + c000acc6: 69e2 ld s3,24(sp) + c000acc8: 6a42 ld s4,16(sp) + c000acca: 6121 addi sp,sp,64 + c000accc: 8082 ret + +00000000c000acce : js_async_generator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19346 { - c000abe0: 1101 addi sp,sp,-32 - c000abe2: 87b2 mv a5,a2 - c000abe4: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19339 + c000acce: 1101 addi sp,sp,-32 + c000acd0: 87b2 mv a5,a2 + c000acd2: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19347 JSAsyncGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_ASYNC_GENERATOR); - c000abe6: 03500613 li a2,53 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19338 + c000acd4: 03500613 li a2,53 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19346 { - c000abea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19339 + c000acd8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19347 JSAsyncGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_ASYNC_GENERATOR); - c000abec: 852e mv a0,a1 - c000abee: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19338 + c000acda: 852e mv a0,a1 + c000acdc: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19346 { - c000abf0: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19339 + c000acde: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19347 JSAsyncGeneratorData *s = JS_GetOpaque(obj, JS_CLASS_ASYNC_GENERATOR); - c000abf2: cc1ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19341 + c000ace0: cc1ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19349 if (s) { - c000abf6: c901 beqz a0,c000ac06 - c000abf8: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19342 + c000ace4: c901 beqz a0,c000acf4 + c000ace6: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19350 js_async_generator_free(rt, s); - c000abfa: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19344 + c000ace8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19352 } - c000abfc: 6442 ld s0,16(sp) - c000abfe: 60e2 ld ra,24(sp) - c000ac00: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19342 + c000acea: 6442 ld s0,16(sp) + c000acec: 60e2 ld ra,24(sp) + c000acee: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19350 js_async_generator_free(rt, s); - c000ac02: 96efe06f j c0008d70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19344 + c000acf0: 96efe06f j c0008e5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19352 } - c000ac06: 60e2 ld ra,24(sp) - c000ac08: 6442 ld s0,16(sp) - c000ac0a: 6105 addi sp,sp,32 - c000ac0c: 8082 ret + c000acf4: 60e2 ld ra,24(sp) + c000acf6: 6442 ld s0,16(sp) + c000acf8: 6105 addi sp,sp,32 + c000acfa: 8082 ret -00000000c000ac0e : +00000000c000acfc : js_async_from_sync_iterator_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48837 -{ - c000ac0e: 7179 addi sp,sp,-48 - c000ac10: 87b2 mv a5,a2 - c000ac12: ec26 sd s1,24(sp) - c000ac14: e02e sd a1,0(sp) - c000ac16: 84aa mv s1,a0 - c000ac18: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48845 +{ + c000acfc: 7179 addi sp,sp,-48 + c000acfe: 87b2 mv a5,a2 + c000ad00: ec26 sd s1,24(sp) + c000ad02: e02e sd a1,0(sp) + c000ad04: 84aa mv s1,a0 + c000ad06: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48847 JS_GetOpaque(val, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c000ac1a: 852e mv a0,a1 - c000ac1c: 03300613 li a2,51 - c000ac20: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48837 -{ - c000ac22: e84a sd s2,16(sp) - c000ac24: f406 sd ra,40(sp) - c000ac26: f022 sd s0,32(sp) - c000ac28: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48839 + c000ad08: 852e mv a0,a1 + c000ad0a: 03300613 li a2,51 + c000ad0e: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48845 +{ + c000ad10: e84a sd s2,16(sp) + c000ad12: f406 sd ra,40(sp) + c000ad14: f022 sd s0,32(sp) + c000ad16: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48847 JS_GetOpaque(val, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c000ac2a: c89ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48840 + c000ad18: c89ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48848 if (s) { - c000ac2e: c11d beqz a0,c000ac54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48841 + c000ad1c: c11d beqz a0,c000ad42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48849 JS_MarkValue(rt, s->sync_iter, mark_func); - c000ac30: 610c ld a1,0(a0) - c000ac32: 6510 ld a2,8(a0) - c000ac34: 842a mv s0,a0 - c000ac36: 86ca mv a3,s2 - c000ac38: 8526 mv a0,s1 - c000ac3a: d94fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48842 + c000ad1e: 610c ld a1,0(a0) + c000ad20: 6510 ld a2,8(a0) + c000ad22: 842a mv s0,a0 + c000ad24: 86ca mv a3,s2 + c000ad26: 8526 mv a0,s1 + c000ad28: d94fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48850 JS_MarkValue(rt, s->next_method, mark_func); - c000ac3e: 680c ld a1,16(s0) - c000ac40: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48844 + c000ad2c: 680c ld a1,16(s0) + c000ad2e: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48852 } - c000ac42: 7402 ld s0,32(sp) - c000ac44: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48842 + c000ad30: 7402 ld s0,32(sp) + c000ad32: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48850 JS_MarkValue(rt, s->next_method, mark_func); - c000ac46: 86ca mv a3,s2 - c000ac48: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48844 -} - c000ac4a: 6942 ld s2,16(sp) - c000ac4c: 64e2 ld s1,24(sp) - c000ac4e: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48842 + c000ad34: 86ca mv a3,s2 + c000ad36: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48852 +} + c000ad38: 6942 ld s2,16(sp) + c000ad3a: 64e2 ld s1,24(sp) + c000ad3c: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48850 JS_MarkValue(rt, s->next_method, mark_func); - c000ac50: d7efe06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48844 + c000ad3e: d7efe06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48852 } - c000ac54: 70a2 ld ra,40(sp) - c000ac56: 7402 ld s0,32(sp) - c000ac58: 64e2 ld s1,24(sp) - c000ac5a: 6942 ld s2,16(sp) - c000ac5c: 6145 addi sp,sp,48 - c000ac5e: 8082 ret + c000ad42: 70a2 ld ra,40(sp) + c000ad44: 7402 ld s0,32(sp) + c000ad46: 64e2 ld s1,24(sp) + c000ad48: 6942 ld s2,16(sp) + c000ad4a: 6145 addi sp,sp,48 + c000ad4c: 8082 ret -00000000c000ac60 : +00000000c000ad4e : js_async_from_sync_iterator_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48825 -{ - c000ac60: 7179 addi sp,sp,-48 - c000ac62: 87b2 mv a5,a2 - c000ac64: ec26 sd s1,24(sp) - c000ac66: e02e sd a1,0(sp) - c000ac68: 84aa mv s1,a0 - c000ac6a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48827 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48833 +{ + c000ad4e: 7179 addi sp,sp,-48 + c000ad50: 87b2 mv a5,a2 + c000ad52: ec26 sd s1,24(sp) + c000ad54: e02e sd a1,0(sp) + c000ad56: 84aa mv s1,a0 + c000ad58: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48835 JS_GetOpaque(val, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c000ac6c: 852e mv a0,a1 - c000ac6e: 03300613 li a2,51 - c000ac72: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48825 -{ - c000ac74: f406 sd ra,40(sp) - c000ac76: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48827 + c000ad5a: 852e mv a0,a1 + c000ad5c: 03300613 li a2,51 + c000ad60: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48833 +{ + c000ad62: f406 sd ra,40(sp) + c000ad64: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48835 JS_GetOpaque(val, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c000ac78: c3bff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48828 + c000ad66: c3bff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48836 if (s) { - c000ac7c: c505 beqz a0,c000aca4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48829 + c000ad6a: c505 beqz a0,c000ad92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48837 JS_FreeValueRT(rt, s->sync_iter); - c000ac7e: 610c ld a1,0(a0) - c000ac80: 6510 ld a2,8(a0) - c000ac82: 842a mv s0,a0 - c000ac84: 8526 mv a0,s1 - c000ac86: a33fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48830 + c000ad6c: 610c ld a1,0(a0) + c000ad6e: 6510 ld a2,8(a0) + c000ad70: 842a mv s0,a0 + c000ad72: 8526 mv a0,s1 + c000ad74: a33fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48838 JS_FreeValueRT(rt, s->next_method); - c000ac8a: 680c ld a1,16(s0) - c000ac8c: 6c10 ld a2,24(s0) - c000ac8e: 8526 mv a0,s1 - c000ac90: a29fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48831 + c000ad78: 680c ld a1,16(s0) + c000ad7a: 6c10 ld a2,24(s0) + c000ad7c: 8526 mv a0,s1 + c000ad7e: a29fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48839 js_free_rt(rt, s); - c000ac94: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48833 + c000ad82: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48841 } - c000ac96: 7402 ld s0,32(sp) - c000ac98: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48831 + c000ad84: 7402 ld s0,32(sp) + c000ad86: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48839 js_free_rt(rt, s); - c000ac9a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48833 + c000ad88: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48841 } - c000ac9c: 64e2 ld s1,24(sp) - c000ac9e: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48831 + c000ad8a: 64e2 ld s1,24(sp) + c000ad8c: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48839 js_free_rt(rt, s); - c000aca0: f07fb06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48833 + c000ad8e: f07fb06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48841 } - c000aca4: 70a2 ld ra,40(sp) - c000aca6: 7402 ld s0,32(sp) - c000aca8: 64e2 ld s1,24(sp) - c000acaa: 6145 addi sp,sp,48 - c000acac: 8082 ret + c000ad92: 70a2 ld ra,40(sp) + c000ad94: 7402 ld s0,32(sp) + c000ad96: 64e2 ld s1,24(sp) + c000ad98: 6145 addi sp,sp,48 + c000ad9a: 8082 ret -00000000c000acae : +00000000c000ad9c : js_promise_mark(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48099 -{ - c000acae: 7139 addi sp,sp,-64 - c000acb0: 87b2 mv a5,a2 - c000acb2: f822 sd s0,48(sp) - c000acb4: e02e sd a1,0(sp) - c000acb6: 842a mv s0,a0 - c000acb8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 +{ + c000ad9c: 7139 addi sp,sp,-64 + c000ad9e: 87b2 mv a5,a2 + c000ada0: f822 sd s0,48(sp) + c000ada2: e02e sd a1,0(sp) + c000ada4: 842a mv s0,a0 + c000ada6: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48108 JSPromiseData *s = JS_GetOpaque(val, JS_CLASS_PROMISE); - c000acba: 852e mv a0,a1 - c000acbc: 02d00613 li a2,45 - c000acc0: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48099 -{ - c000acc2: f04a sd s2,32(sp) - c000acc4: fc06 sd ra,56(sp) - c000acc6: f426 sd s1,40(sp) - c000acc8: ec4e sd s3,24(sp) - c000acca: e852 sd s4,16(sp) - c000accc: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48100 + c000ada8: 852e mv a0,a1 + c000adaa: 02d00613 li a2,45 + c000adae: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 +{ + c000adb0: f04a sd s2,32(sp) + c000adb2: fc06 sd ra,56(sp) + c000adb4: f426 sd s1,40(sp) + c000adb6: ec4e sd s3,24(sp) + c000adb8: e852 sd s4,16(sp) + c000adba: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48108 JSPromiseData *s = JS_GetOpaque(val, JS_CLASS_PROMISE); - c000acce: be5ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48104 + c000adbc: be5ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48112 if (!s) - c000acd2: c145 beqz a0,c000ad72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 + c000adc0: c145 beqz a0,c000ae60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 list_for_each(el, &s->promise_reactions[i]) { - c000acd4: 01053983 ld s3,16(a0) - c000acd8: 84aa mv s1,a0 - c000acda: 00850a13 addi s4,a0,8 - c000acde: 033a0d63 beq s4,s3,c000ad18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48110 + c000adc2: 01053983 ld s3,16(a0) + c000adc6: 84aa mv s1,a0 + c000adc8: 00850a13 addi s4,a0,8 + c000adcc: 033a0d63 beq s4,s3,c000ae06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48118 JS_MarkValue(rt, rd->resolving_funcs[0], mark_func); - c000ace2: 0109b583 ld a1,16(s3) - c000ace6: 0189b603 ld a2,24(s3) - c000acea: 86ca mv a3,s2 - c000acec: 8522 mv a0,s0 - c000acee: ce0fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48111 + c000add0: 0109b583 ld a1,16(s3) + c000add4: 0189b603 ld a2,24(s3) + c000add8: 86ca mv a3,s2 + c000adda: 8522 mv a0,s0 + c000addc: ce0fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48119 JS_MarkValue(rt, rd->resolving_funcs[1], mark_func); - c000acf2: 0209b583 ld a1,32(s3) - c000acf6: 0289b603 ld a2,40(s3) - c000acfa: 86ca mv a3,s2 - c000acfc: 8522 mv a0,s0 - c000acfe: cd0fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48112 + c000ade0: 0209b583 ld a1,32(s3) + c000ade4: 0289b603 ld a2,40(s3) + c000ade8: 86ca mv a3,s2 + c000adea: 8522 mv a0,s0 + c000adec: cd0fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48120 JS_MarkValue(rt, rd->handler, mark_func); - c000ad02: 0309b583 ld a1,48(s3) - c000ad06: 0389b603 ld a2,56(s3) - c000ad0a: 86ca mv a3,s2 - c000ad0c: 8522 mv a0,s0 - c000ad0e: cc0fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 + c000adf0: 0309b583 ld a1,48(s3) + c000adf4: 0389b603 ld a2,56(s3) + c000adf8: 86ca mv a3,s2 + c000adfa: 8522 mv a0,s0 + c000adfc: cc0fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 list_for_each(el, &s->promise_reactions[i]) { - c000ad12: 0089b983 ld s3,8(s3) - c000ad16: b7e1 j c000acde - c000ad18: 0204b983 ld s3,32(s1) - c000ad1c: 01848a13 addi s4,s1,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48110 (discriminator 1) + c000ae00: 0089b983 ld s3,8(s3) + c000ae04: b7e1 j c000adcc + c000ae06: 0204b983 ld s3,32(s1) + c000ae0a: 01848a13 addi s4,s1,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48118 (discriminator 1) JS_MarkValue(rt, rd->resolving_funcs[0], mark_func); - c000ad20: 86ca mv a3,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 (discriminator 1) + c000ae0e: 86ca mv a3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 (discriminator 1) list_for_each(el, &s->promise_reactions[i]) { - c000ad22: 013a1e63 bne s4,s3,c000ad3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 (discriminator 2) + c000ae10: 013a1e63 bne s4,s3,c000ae2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48123 (discriminator 2) JS_MarkValue(rt, s->promise_result, mark_func); - c000ad26: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48116 (discriminator 2) + c000ae14: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48124 (discriminator 2) } - c000ad28: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 (discriminator 2) + c000ae16: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48123 (discriminator 2) JS_MarkValue(rt, s->promise_result, mark_func); - c000ad2a: 788c ld a1,48(s1) - c000ad2c: 7c90 ld a2,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48116 (discriminator 2) -} - c000ad2e: 70e2 ld ra,56(sp) - c000ad30: 74a2 ld s1,40(sp) - c000ad32: 7902 ld s2,32(sp) - c000ad34: 69e2 ld s3,24(sp) - c000ad36: 6a42 ld s4,16(sp) - c000ad38: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 (discriminator 2) + c000ae18: 788c ld a1,48(s1) + c000ae1a: 7c90 ld a2,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48124 (discriminator 2) +} + c000ae1c: 70e2 ld ra,56(sp) + c000ae1e: 74a2 ld s1,40(sp) + c000ae20: 7902 ld s2,32(sp) + c000ae22: 69e2 ld s3,24(sp) + c000ae24: 6a42 ld s4,16(sp) + c000ae26: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48123 (discriminator 2) JS_MarkValue(rt, s->promise_result, mark_func); - c000ad3a: c94fe06f j c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48110 (discriminator 3) + c000ae28: c94fe06f j c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48118 (discriminator 3) JS_MarkValue(rt, rd->resolving_funcs[0], mark_func); - c000ad3e: 0109b583 ld a1,16(s3) - c000ad42: 0189b603 ld a2,24(s3) - c000ad46: 8522 mv a0,s0 - c000ad48: c86fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48111 (discriminator 3) + c000ae2c: 0109b583 ld a1,16(s3) + c000ae30: 0189b603 ld a2,24(s3) + c000ae34: 8522 mv a0,s0 + c000ae36: c86fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48119 (discriminator 3) JS_MarkValue(rt, rd->resolving_funcs[1], mark_func); - c000ad4c: 0209b583 ld a1,32(s3) - c000ad50: 0289b603 ld a2,40(s3) - c000ad54: 86ca mv a3,s2 - c000ad56: 8522 mv a0,s0 - c000ad58: c76fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48112 (discriminator 3) + c000ae3a: 0209b583 ld a1,32(s3) + c000ae3e: 0289b603 ld a2,40(s3) + c000ae42: 86ca mv a3,s2 + c000ae44: 8522 mv a0,s0 + c000ae46: c76fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48120 (discriminator 3) JS_MarkValue(rt, rd->handler, mark_func); - c000ad5c: 0309b583 ld a1,48(s3) - c000ad60: 0389b603 ld a2,56(s3) - c000ad64: 86ca mv a3,s2 - c000ad66: 8522 mv a0,s0 - c000ad68: c66fe0ef jal ra,c00091ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48107 (discriminator 3) + c000ae4a: 0309b583 ld a1,48(s3) + c000ae4e: 0389b603 ld a2,56(s3) + c000ae52: 86ca mv a3,s2 + c000ae54: 8522 mv a0,s0 + c000ae56: c66fe0ef jal ra,c00092bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48115 (discriminator 3) list_for_each(el, &s->promise_reactions[i]) { - c000ad6c: 0089b983 ld s3,8(s3) - c000ad70: bf45 j c000ad20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48116 -} - c000ad72: 70e2 ld ra,56(sp) - c000ad74: 7442 ld s0,48(sp) - c000ad76: 74a2 ld s1,40(sp) - c000ad78: 7902 ld s2,32(sp) - c000ad7a: 69e2 ld s3,24(sp) - c000ad7c: 6a42 ld s4,16(sp) - c000ad7e: 6121 addi sp,sp,64 - c000ad80: 8082 ret - -00000000c000ad82 : + c000ae5a: 0089b983 ld s3,8(s3) + c000ae5e: bf45 j c000ae0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48124 +} + c000ae60: 70e2 ld ra,56(sp) + c000ae62: 7442 ld s0,48(sp) + c000ae64: 74a2 ld s1,40(sp) + c000ae66: 7902 ld s2,32(sp) + c000ae68: 69e2 ld s3,24(sp) + c000ae6a: 6a42 ld s4,16(sp) + c000ae6c: 6121 addi sp,sp,64 + c000ae6e: 8082 ret + +00000000c000ae70 : js_promise_finalizer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48079 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48087 { - c000ad82: 7139 addi sp,sp,-64 - c000ad84: 87b2 mv a5,a2 - c000ad86: f426 sd s1,40(sp) - c000ad88: e02e sd a1,0(sp) - c000ad8a: 84aa mv s1,a0 - c000ad8c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 + c000ae70: 7139 addi sp,sp,-64 + c000ae72: 87b2 mv a5,a2 + c000ae74: f426 sd s1,40(sp) + c000ae76: e02e sd a1,0(sp) + c000ae78: 84aa mv s1,a0 + c000ae7a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48088 JSPromiseData *s = JS_GetOpaque(val, JS_CLASS_PROMISE); - c000ad8e: 852e mv a0,a1 - c000ad90: 02d00613 li a2,45 - c000ad94: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48079 + c000ae7c: 852e mv a0,a1 + c000ae7e: 02d00613 li a2,45 + c000ae82: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48087 { - c000ad96: fc06 sd ra,56(sp) - c000ad98: f822 sd s0,48(sp) - c000ad9a: f04a sd s2,32(sp) - c000ad9c: ec4e sd s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 + c000ae84: fc06 sd ra,56(sp) + c000ae86: f822 sd s0,48(sp) + c000ae88: f04a sd s2,32(sp) + c000ae8a: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48088 JSPromiseData *s = JS_GetOpaque(val, JS_CLASS_PROMISE); - c000ad9e: b15ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48084 + c000ae8c: b15ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48092 if (!s) - c000ada2: cd29 beqz a0,c000adfc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48087 + c000ae90: cd29 beqz a0,c000aeea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 list_for_each_safe(el, el1, &s->promise_reactions[i]) { - c000ada4: 690c ld a1,16(a0) - c000ada6: 842a mv s0,a0 - c000ada8: 00850993 addi s3,a0,8 - c000adac: 0085b903 ld s2,8(a1) - c000adb0: 01358963 beq a1,s3,c000adc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48090 + c000ae92: 690c ld a1,16(a0) + c000ae94: 842a mv s0,a0 + c000ae96: 00850993 addi s3,a0,8 + c000ae9a: 0085b903 ld s2,8(a1) + c000ae9e: 01358963 beq a1,s3,c000aeb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48098 promise_reaction_data_free(rt, rd); - c000adb4: 8526 mv a0,s1 - c000adb6: 929fd0ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48087 + c000aea2: 8526 mv a0,s1 + c000aea4: 929fd0ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 list_for_each_safe(el, el1, &s->promise_reactions[i]) { - c000adba: 85ca mv a1,s2 - c000adbc: 00893903 ld s2,8(s2) - c000adc0: bfc5 j c000adb0 - c000adc2: 700c ld a1,32(s0) - c000adc4: 01840993 addi s3,s0,24 - c000adc8: 0085b903 ld s2,8(a1) - c000adcc: 01358963 beq a1,s3,c000adde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48090 + c000aea8: 85ca mv a1,s2 + c000aeaa: 00893903 ld s2,8(s2) + c000aeae: bfc5 j c000ae9e + c000aeb0: 700c ld a1,32(s0) + c000aeb2: 01840993 addi s3,s0,24 + c000aeb6: 0085b903 ld s2,8(a1) + c000aeba: 01358963 beq a1,s3,c000aecc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48098 promise_reaction_data_free(rt, rd); - c000add0: 8526 mv a0,s1 - c000add2: 90dfd0ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48087 + c000aebe: 8526 mv a0,s1 + c000aec0: 90dfd0ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 list_for_each_safe(el, el1, &s->promise_reactions[i]) { - c000add6: 85ca mv a1,s2 - c000add8: 00893903 ld s2,8(s2) - c000addc: bfc5 j c000adcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48093 + c000aec4: 85ca mv a1,s2 + c000aec6: 00893903 ld s2,8(s2) + c000aeca: bfc5 j c000aeba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48101 JS_FreeValueRT(rt, s->promise_result); - c000adde: 780c ld a1,48(s0) - c000ade0: 7c10 ld a2,56(s0) - c000ade2: 8526 mv a0,s1 - c000ade4: 8d5fd0ef jal ra,c00086b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48094 + c000aecc: 780c ld a1,48(s0) + c000aece: 7c10 ld a2,56(s0) + c000aed0: 8526 mv a0,s1 + c000aed2: 8d5fd0ef jal ra,c00087a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48102 js_free_rt(rt, s); - c000ade8: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 -} - c000adea: 7442 ld s0,48(sp) - c000adec: 70e2 ld ra,56(sp) - c000adee: 7902 ld s2,32(sp) - c000adf0: 69e2 ld s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48094 + c000aed6: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48103 +} + c000aed8: 7442 ld s0,48(sp) + c000aeda: 70e2 ld ra,56(sp) + c000aedc: 7902 ld s2,32(sp) + c000aede: 69e2 ld s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48102 js_free_rt(rt, s); - c000adf2: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 + c000aee0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48103 } - c000adf4: 74a2 ld s1,40(sp) - c000adf6: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48094 + c000aee2: 74a2 ld s1,40(sp) + c000aee4: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48102 js_free_rt(rt, s); - c000adf8: daffb06f j c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48095 -} - c000adfc: 70e2 ld ra,56(sp) - c000adfe: 7442 ld s0,48(sp) - c000ae00: 74a2 ld s1,40(sp) - c000ae02: 7902 ld s2,32(sp) - c000ae04: 69e2 ld s3,24(sp) - c000ae06: 6121 addi sp,sp,64 - c000ae08: 8082 ret - -00000000c000ae0a : + c000aee6: daffb06f j c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48103 +} + c000aeea: 70e2 ld ra,56(sp) + c000aeec: 7442 ld s0,48(sp) + c000aeee: 74a2 ld s1,40(sp) + c000aef0: 7902 ld s2,32(sp) + c000aef2: 69e2 ld s3,24(sp) + c000aef4: 6121 addi sp,sp,64 + c000aef6: 8082 ret + +00000000c000aef8 : JS_SetIsHTMLDDA(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10014 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10022 { - c000ae0a: 1141 addi sp,sp,-16 - c000ae0c: e432 sd a2,8(sp) - c000ae0e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10016 + c000aef8: 1141 addi sp,sp,-16 + c000aefa: e432 sd a2,8(sp) + c000aefc: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10024 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c000ae10: 2601 sext.w a2,a2 - c000ae12: 57fd li a5,-1 - c000ae14: 00f61863 bne a2,a5,c000ae24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10019 + c000aefe: 2601 sext.w a2,a2 + c000af00: 57fd li a5,-1 + c000af02: 00f61863 bne a2,a5,c000af12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10027 p->is_HTMLDDA = TRUE; - c000ae18: 0055c783 lbu a5,5(a1) - c000ae1c: f807e793 ori a5,a5,-128 - c000ae20: 00f582a3 sb a5,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10020 + c000af06: 0055c783 lbu a5,5(a1) + c000af0a: f807e793 ori a5,a5,-128 + c000af0e: 00f582a3 sb a5,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10028 } - c000ae24: 0141 addi sp,sp,16 - c000ae26: 8082 ret + c000af12: 0141 addi sp,sp,16 + c000af14: 8082 ret -00000000c000ae28 : +00000000c000af16 : JS_ToBool(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10099 { - c000ae28: 7179 addi sp,sp,-48 - c000ae2a: f022 sd s0,32(sp) - c000ae2c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10092 + c000af16: 7179 addi sp,sp,-48 + c000af18: f022 sd s0,32(sp) + c000af1a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10100 return JS_ToBoolFree(ctx, JS_DupValue(ctx, val)); - c000ae2e: 852e mv a0,a1 - c000ae30: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10091 + c000af1c: 852e mv a0,a1 + c000af1e: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10099 { - c000ae32: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10092 + c000af20: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10100 return JS_ToBoolFree(ctx, JS_DupValue(ctx, val)); - c000ae34: 83bfb0ef jal ra,c000666e - c000ae38: 862e mv a2,a1 - c000ae3a: 85aa mv a1,a0 - c000ae3c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10093 -} - c000ae3e: 7402 ld s0,32(sp) - c000ae40: 70a2 ld ra,40(sp) - c000ae42: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10092 + c000af22: 83bfb0ef jal ra,c000675c + c000af26: 862e mv a2,a1 + c000af28: 85aa mv a1,a0 + c000af2a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10101 +} + c000af2c: 7402 ld s0,32(sp) + c000af2e: 70a2 ld ra,40(sp) + c000af30: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10100 return JS_ToBoolFree(ctx, JS_DupValue(ctx, val)); - c000ae44: 820fd06f j c0007e64 + c000af32: 820fd06f j c0007f52 -00000000c000ae48 : +00000000c000af36 : JS_DetectModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21511 { - c000ae48: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21507 + c000af36: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21515 skip_shebang(&p, p + input_len); - c000ae4a: 95aa add a1,a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21504 + c000af38: 95aa add a1,a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21512 const uint8_t *p = (const uint8_t *)input; - c000ae4c: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21507 + c000af3a: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21515 skip_shebang(&p, p + input_len); - c000ae4e: 0028 addi a0,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21503 + c000af3c: 0028 addi a0,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21511 { - c000ae50: ec06 sd ra,24(sp) - c000ae52: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21507 + c000af3e: ec06 sd ra,24(sp) + c000af40: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21515 skip_shebang(&p, p + input_len); - c000ae54: 8d8fa0ef jal ra,c0004f2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21508 + c000af42: febf90ef jal ra,c0004f2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21516 switch(simple_next_token(&p, FALSE)) { - c000ae58: 4581 li a1,0 - c000ae5a: 0028 addi a0,sp,8 - c000ae5c: eb9fa0ef jal ra,c0005d14 - c000ae60: fcb00793 li a5,-53 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21513 + c000af46: 4581 li a1,0 + c000af48: 0028 addi a0,sp,8 + c000af4a: eb9fa0ef jal ra,c0005e02 + c000af4e: fcb00793 li a5,-53 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21521 return TRUE; - c000ae64: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21508 + c000af52: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21516 switch(simple_next_token(&p, FALSE)) { - c000ae66: 02f50363 beq a0,a5,c000ae8c - c000ae6a: fcd00793 li a5,-51 - c000ae6e: 4401 li s0,0 - c000ae70: 00f51e63 bne a0,a5,c000ae8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21510 + c000af54: 02f50363 beq a0,a5,c000af7a + c000af58: fcd00793 li a5,-51 + c000af5c: 4401 li s0,0 + c000af5e: 00f51e63 bne a0,a5,c000af7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21518 tok = simple_next_token(&p, FALSE); - c000ae74: 4581 li a1,0 - c000ae76: 0028 addi a0,sp,8 - c000ae78: e9dfa0ef jal ra,c0005d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21511 + c000af62: 4581 li a1,0 + c000af64: 0028 addi a0,sp,8 + c000af66: e9dfa0ef jal ra,c0005e02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21519 return (tok != '.' && tok != '('); - c000ae7c: 02e00793 li a5,46 - c000ae80: 00f50663 beq a0,a5,c000ae8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21511 (discriminator 1) - c000ae84: fd850513 addi a0,a0,-40 - c000ae88: 00a03433 snez s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21517 -} - c000ae8c: 60e2 ld ra,24(sp) - c000ae8e: 8522 mv a0,s0 - c000ae90: 6442 ld s0,16(sp) - c000ae92: 6105 addi sp,sp,32 - c000ae94: 8082 ret - -00000000c000ae96 : + c000af6a: 02e00793 li a5,46 + c000af6e: 00f50663 beq a0,a5,c000af7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21519 (discriminator 1) + c000af72: fd850513 addi a0,a0,-40 + c000af76: 00a03433 snez s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21525 +} + c000af7a: 60e2 ld ra,24(sp) + c000af7c: 8522 mv a0,s0 + c000af7e: 6442 ld s0,16(sp) + c000af80: 6105 addi sp,sp,32 + c000af82: 8082 ret + +00000000c000af84 : JS_SetModuleLoaderFunc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27460 rt->module_normalize_func = module_normalize; - c000ae96: 12b53823 sd a1,304(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27453 + c000af84: 12b53823 sd a1,304(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27461 rt->module_loader_func = module_loader; - c000ae9a: 12c53c23 sd a2,312(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27454 + c000af88: 12c53c23 sd a2,312(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27462 rt->module_loader_opaque = opaque; - c000ae9e: 14d53023 sd a3,320(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27455 + c000af8c: 14d53023 sd a3,320(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27463 } - c000aea2: 8082 ret + c000af90: 8082 ret -00000000c000aea4 : +00000000c000af92 : JS_GetScriptOrModuleName(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28390 -{ - c000aea4: 7179 addi sp,sp,-48 - c000aea6: f406 sd ra,40(sp) - c000aea8: f022 sd s0,32(sp) - c000aeaa: ec26 sd s1,24(sp) - c000aeac: e84a sd s2,16(sp) - c000aeae: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28397 - sf = ctx->rt->current_stack_frame; - c000aeb0: 6d1c ld a5,24(a0) - c000aeb2: 7fe0 ld s0,248(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28398 +{ + c000af92: 7179 addi sp,sp,-48 + c000af94: f406 sd ra,40(sp) + c000af96: f022 sd s0,32(sp) + c000af98: ec26 sd s1,24(sp) + c000af9a: e84a sd s2,16(sp) + c000af9c: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28405 + sf = ctx->rt->current_stack_frame; + c000af9e: 6d1c ld a5,24(a0) + c000afa0: 7fe0 ld s0,248(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28406 if (!sf) - c000aeb4: c431 beqz s0,c000af00 - c000aeb6: 84aa mv s1,a0 - c000aeb8: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28400 + c000afa2: c431 beqz s0,c000afee + c000afa4: 84aa mv s1,a0 + c000afa6: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28408 while (n_stack_levels-- > 0) { - c000aeba: 04b04063 bgtz a1,c000aefa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28406 + c000afa8: 04b04063 bgtz a1,c000afe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28414 if (JS_VALUE_GET_TAG(sf->cur_func) != JS_TAG_OBJECT) - c000aebe: 59fd li s3,-1 - c000aec0: 481c lw a5,16(s0) - c000aec2: 03379f63 bne a5,s3,c000af00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28408 + c000afac: 59fd li s3,-1 + c000afae: 481c lw a5,16(s0) + c000afb0: 03379f63 bne a5,s3,c000afee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28416 p = JS_VALUE_GET_OBJ(sf->cur_func); - c000aec6: 00843903 ld s2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28409 + c000afb4: 00843903 ld s2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28417 if (!js_class_has_bytecode(p->class_id)) - c000aeca: 00695503 lhu a0,6(s2) - c000aece: 885fa0ef jal ra,c0005752 - c000aed2: c51d beqz a0,c000af00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28411 + c000afb8: 00695503 lhu a0,6(s2) + c000afbc: 885fa0ef jal ra,c0005840 + c000afc0: c51d beqz a0,c000afee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28419 b = p->u.func.function_bytecode; - c000aed4: 03093703 ld a4,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28412 + c000afc2: 03093703 ld a4,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28420 if (!b->is_direct_or_indirect_eval) { - c000aed8: 01a74783 lbu a5,26(a4) - c000aedc: 0207f693 andi a3,a5,32 - c000aee0: ea85 bnez a3,c000af10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28413 + c000afc6: 01a74783 lbu a5,26(a4) + c000afca: 0207f693 andi a3,a5,32 + c000afce: ea85 bnez a3,c000affe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28421 if (!b->has_debug) - c000aee2: 8b91 andi a5,a5,4 - c000aee4: cf91 beqz a5,c000af00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28422 -} - c000aee6: 7402 ld s0,32(sp) - c000aee8: 70a2 ld ra,40(sp) - c000aeea: 6942 ld s2,16(sp) - c000aeec: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28415 + c000afd0: 8b91 andi a5,a5,4 + c000afd2: cf91 beqz a5,c000afee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28430 +} + c000afd4: 7402 ld s0,32(sp) + c000afd6: 70a2 ld ra,40(sp) + c000afd8: 6942 ld s2,16(sp) + c000afda: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28423 return JS_DupAtom(ctx, b->debug.filename); - c000aeee: 532c lw a1,96(a4) - c000aef0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28422 + c000afdc: 532c lw a1,96(a4) + c000afde: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28430 } - c000aef2: 64e2 ld s1,24(sp) - c000aef4: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28415 + c000afe0: 64e2 ld s1,24(sp) + c000afe2: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28423 return JS_DupAtom(ctx, b->debug.filename); - c000aef6: dd4fc06f j c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28401 + c000afe4: dd4fc06f j c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28409 sf = sf->prev_frame; - c000aefa: 6000 ld s0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28402 + c000afe8: 6000 ld s0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28410 if (!sf) - c000aefc: 35fd addiw a1,a1,-1 - c000aefe: fc55 bnez s0,c000aeba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28422 -} - c000af00: 70a2 ld ra,40(sp) - c000af02: 7402 ld s0,32(sp) - c000af04: 64e2 ld s1,24(sp) - c000af06: 6942 ld s2,16(sp) - c000af08: 69a2 ld s3,8(sp) - c000af0a: 4501 li a0,0 - c000af0c: 6145 addi sp,sp,48 - c000af0e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28417 + c000afea: 35fd addiw a1,a1,-1 + c000afec: fc55 bnez s0,c000afa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28430 +} + c000afee: 70a2 ld ra,40(sp) + c000aff0: 7402 ld s0,32(sp) + c000aff2: 64e2 ld s1,24(sp) + c000aff4: 6942 ld s2,16(sp) + c000aff6: 69a2 ld s3,8(sp) + c000aff8: 4501 li a0,0 + c000affa: 6145 addi sp,sp,48 + c000affc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28425 sf = sf->prev_frame; - c000af10: 6000 ld s0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28418 + c000affe: 6000 ld s0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28426 if (!sf) - c000af12: f45d bnez s0,c000aec0 - c000af14: b7f5 j c000af00 + c000b000: f45d bnez s0,c000afae + c000b002: b7f5 j c000afee -00000000c000af16 : +00000000c000b004 : JS_GetModuleName(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28434 return JS_DupAtom(ctx, m->module_name); - c000af16: 41cc lw a1,4(a1) - c000af18: db2fc06f j c00074ca + c000b004: 41cc lw a1,4(a1) + c000b006: db2fc06f j c00075b8 -00000000c000af1c : +00000000c000b00a : lre_check_stack_overflow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43838 } - c000af1c: 4501 li a0,0 - c000af1e: 8082 ret + c000b00a: 4501 li a0,0 + c000b00c: 8082 ret -00000000c000af20 : +00000000c000b00e : lre_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43844 return js_realloc_rt(ctx->rt, ptr, size); - c000af20: 6d08 ld a0,24(a0) - c000af22: 94ef906f j c0004070 + c000b00e: 6d08 ld a0,24(a0) + c000b010: 860f906f j c0004070 -00000000c000af26 : +00000000c000b014 : JS_AddIntrinsicRegExpCompiler(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44921 ctx->compile_regexp = js_compile_regexp; - c000af26: 00014797 auipc a5,0x14 - c000af2a: 7ea78793 addi a5,a5,2026 # c001f710 - c000af2e: 1af53823 sd a5,432(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44914 + c000b014: 00015797 auipc a5,0x15 + c000b018: 8cc78793 addi a5,a5,-1844 # c001f8e0 + c000b01c: 1af53823 sd a5,432(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44922 } - c000af32: 8082 ret + c000b020: 8082 ret -00000000c000af34 : +00000000c000b022 : JS_PromiseState(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47805 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47813 { - c000af34: 1101 addi sp,sp,-32 - c000af36: 87b2 mv a5,a2 - c000af38: e02e sd a1,0(sp) - c000af3a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47806 + c000b022: 1101 addi sp,sp,-32 + c000b024: 87b2 mv a5,a2 + c000b026: e02e sd a1,0(sp) + c000b028: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47814 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c000af3c: 852e mv a0,a1 - c000af3e: 02d00613 li a2,45 - c000af42: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47805 + c000b02a: 852e mv a0,a1 + c000b02c: 02d00613 li a2,45 + c000b030: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47813 { - c000af44: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47806 + c000b032: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47814 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c000af46: 96dff0ef jal ra,c000a8b2 - c000af4a: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47807 + c000b034: 96dff0ef jal ra,c000a9a0 + c000b038: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47815 if (!s) - c000af4c: 557d li a0,-1 - c000af4e: c391 beqz a5,c000af52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47809 + c000b03a: 557d li a0,-1 + c000b03c: c391 beqz a5,c000b040 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47817 return s->promise_state; - c000af50: 4388 lw a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47810 + c000b03e: 4388 lw a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47818 } - c000af52: 60e2 ld ra,24(sp) - c000af54: 6105 addi sp,sp,32 - c000af56: 8082 ret + c000b040: 60e2 ld ra,24(sp) + c000b042: 6105 addi sp,sp,32 + c000b044: 8082 ret -00000000c000af58 : +00000000c000b046 : JS_PromiseResult(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47821 { - c000af58: 7179 addi sp,sp,-48 - c000af5a: 87b2 mv a5,a2 - c000af5c: e02e sd a1,0(sp) - c000af5e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47814 + c000b046: 7179 addi sp,sp,-48 + c000b048: 87b2 mv a5,a2 + c000b04a: e02e sd a1,0(sp) + c000b04c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47822 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c000af60: 852e mv a0,a1 - c000af62: 02d00613 li a2,45 - c000af66: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47813 + c000b04e: 852e mv a0,a1 + c000b050: 02d00613 li a2,45 + c000b054: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47821 { - c000af68: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47814 + c000b056: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47822 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c000af6a: 949ff0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47815 + c000b058: 949ff0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47823 if (!s) - c000af6e: c901 beqz a0,c000af7e - c000af70: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47818 + c000b05c: c901 beqz a0,c000b06c + c000b05e: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47826 } - c000af72: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47817 + c000b060: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47825 return JS_DupValue(ctx, s->promise_result); - c000af74: 7908 ld a0,48(a0) - c000af76: 7f8c ld a1,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47818 + c000b062: 7908 ld a0,48(a0) + c000b064: 7f8c ld a1,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47826 } - c000af78: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47817 + c000b066: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47825 return JS_DupValue(ctx, s->promise_result); - c000af7a: ef4fb06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47818 (discriminator 1) + c000b068: ef4fb06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47826 (discriminator 1) } - c000af7e: 70a2 ld ra,40(sp) - c000af80: 458d li a1,3 - c000af82: 6145 addi sp,sp,48 - c000af84: 8082 ret + c000b06c: 70a2 ld ra,40(sp) + c000b06e: 458d li a1,3 + c000b070: 6145 addi sp,sp,48 + c000b072: 8082 ret -00000000c000af86 : +00000000c000b074 : JS_SetHostPromiseRejectionTracker(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47886 rt->host_promise_rejection_tracker = cb; - c000af86: 10b53823 sd a1,272(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47879 + c000b074: 10b53823 sd a1,272(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47887 rt->host_promise_rejection_tracker_opaque = opaque; - c000af8a: 10c53c23 sd a2,280(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47880 + c000b078: 10c53c23 sd a2,280(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47888 } - c000af8e: 8082 ret + c000b07c: 8082 ret -00000000c000af90 : +00000000c000b07e : JS_NewPromiseCapability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48236 { - c000af90: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48229 + c000b07e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48237 return js_new_promise_capability(ctx, resolving_funcs, JS_UNDEFINED); - c000af92: 4601 li a2,0 - c000af94: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48230 + c000b080: 4601 li a2,0 + c000b082: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48238 } - c000af96: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48229 + c000b084: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48237 return js_new_promise_capability(ctx, resolving_funcs, JS_UNDEFINED); - c000af98: 58e2f06f j c003a526 + c000b086: 6702f06f j c003a6f6 -00000000c000af9c : +00000000c000b08a : JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16131 -{ - c000af9c: 81010113 addi sp,sp,-2032 - c000afa0: 7c913c23 sd s1,2008(sp) - c000afa4: 74fd lui s1,0xfffff - c000afa6: 7e813023 sd s0,2016(sp) - c000afaa: 7d313423 sd s3,1992(sp) - c000afae: 7e113423 sd ra,2024(sp) - c000afb2: 7d213823 sd s2,2000(sp) - c000afb6: 7d413023 sd s4,1984(sp) - c000afba: 7b513c23 sd s5,1976(sp) - c000afbe: 7b613823 sd s6,1968(sp) - c000afc2: 7b713423 sd s7,1960(sp) - c000afc6: 7b813023 sd s8,1952(sp) - c000afca: 79913c23 sd s9,1944(sp) - c000afce: 79a13823 sd s10,1936(sp) - c000afd2: 79b13423 sd s11,1928(sp) - c000afd6: 76813c27 fsd fs0,1912(sp) - c000afda: 76913827 fsd fs1,1904(sp) - c000afde: 7f010413 addi s0,sp,2032 - c000afe2: 61048493 addi s1,s1,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> - c000afe6: 94a2 add s1,s1,s0 - c000afe8: e088 sd a0,0(s1) - c000afea: f8040313 addi t1,s0,-128 - c000afee: 74fd lui s1,0xfffff - c000aff0: 949a add s1,s1,t1 - c000aff2: 6ef4b823 sd a5,1776(s1) # fffffffffffff6f0 <_ebss+0xffffffff3fefe5ca> - c000aff6: 77fd lui a5,0xfffff - c000aff8: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000affc: 97a2 add a5,a5,s0 - c000affe: 0117b023 sd a7,0(a5) - c000b002: 00842883 lw a7,8(s0) - c000b006: 77fd lui a5,0xfffff - c000b008: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b00c: 97a2 add a5,a5,s0 - c000b00e: 0117b023 sd a7,0(a5) - c000b012: 70e4b423 sd a4,1800(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16139 +{ + c000b08a: 81010113 addi sp,sp,-2032 + c000b08e: 7c913c23 sd s1,2008(sp) + c000b092: 74fd lui s1,0xfffff + c000b094: 7e813023 sd s0,2016(sp) + c000b098: 7d313423 sd s3,1992(sp) + c000b09c: 7e113423 sd ra,2024(sp) + c000b0a0: 7d213823 sd s2,2000(sp) + c000b0a4: 7d413023 sd s4,1984(sp) + c000b0a8: 7b513c23 sd s5,1976(sp) + c000b0ac: 7b613823 sd s6,1968(sp) + c000b0b0: 7b713423 sd s7,1960(sp) + c000b0b4: 7b813023 sd s8,1952(sp) + c000b0b8: 79913c23 sd s9,1944(sp) + c000b0bc: 79a13823 sd s10,1936(sp) + c000b0c0: 79b13423 sd s11,1928(sp) + c000b0c4: 76813c27 fsd fs0,1912(sp) + c000b0c8: 76913827 fsd fs1,1904(sp) + c000b0cc: 7f010413 addi s0,sp,2032 + c000b0d0: 61048493 addi s1,s1,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> + c000b0d4: 94a2 add s1,s1,s0 + c000b0d6: e088 sd a0,0(s1) + c000b0d8: f8040313 addi t1,s0,-128 + c000b0dc: 74fd lui s1,0xfffff + c000b0de: 949a add s1,s1,t1 + c000b0e0: 6ef4b823 sd a5,1776(s1) # fffffffffffff6f0 <_ebss+0xffffffff3fefe5ca> + c000b0e4: 77fd lui a5,0xfffff + c000b0e6: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b0ea: 97a2 add a5,a5,s0 + c000b0ec: 0117b023 sd a7,0(a5) + c000b0f0: 00842883 lw a7,8(s0) + c000b0f4: 77fd lui a5,0xfffff + c000b0f6: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b0fa: 97a2 add a5,a5,s0 + c000b0fc: 0117b023 sd a7,0(a5) + c000b100: 70e4b423 sd a4,1800(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16140 JSRuntime *rt = caller_ctx->rt; - c000b016: 6d1c ld a5,24(a0) - c000b018: 777d lui a4,0xfffff - c000b01a: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b01e: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16131 -{ - c000b020: da010113 addi sp,sp,-608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16132 + c000b104: 6d1c ld a5,24(a0) + c000b106: 777d lui a4,0xfffff + c000b108: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b10c: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16139 +{ + c000b10e: da010113 addi sp,sp,-608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16140 JSRuntime *rt = caller_ctx->rt; - c000b024: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16131 -{ - c000b026: 70b4b823 sd a1,1808(s1) - c000b02a: 70c4bc23 sd a2,1816(s1) - c000b02e: 70d4b023 sd a3,1792(s1) - c000b032: 6f04bc23 sd a6,1784(s1) - c000b036: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16165 + c000b112: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16139 +{ + c000b114: 70b4b823 sd a1,1808(s1) + c000b118: 70c4bc23 sd a2,1816(s1) + c000b11c: 70d4b023 sd a3,1792(s1) + c000b120: 6f04bc23 sd a6,1784(s1) + c000b124: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16173 if (js_poll_interrupts(caller_ctx)) - c000b038: 1c3090ef jal ra,c00149fa - c000b03c: 77fd lui a5,0xfffff - c000b03e: 62878793 addi a5,a5,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> - c000b042: 777d lui a4,0xfffff - c000b044: 97a2 add a5,a5,s0 - c000b046: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b04a: 9722 add a4,a4,s0 - c000b04c: e388 sd a0,0(a5) - c000b04e: 00073883 ld a7,0(a4) - c000b052: c135 beqz a0,c000b0b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16166 + c000b126: 1c3090ef jal ra,c0014ae8 + c000b12a: 77fd lui a5,0xfffff + c000b12c: 62878793 addi a5,a5,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> + c000b130: 777d lui a4,0xfffff + c000b132: 97a2 add a5,a5,s0 + c000b134: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b138: 9722 add a4,a4,s0 + c000b13a: e388 sd a0,0(a5) + c000b13c: 00073883 ld a7,0(a4) + c000b140: c135 beqz a0,c000b1a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16174 return JS_EXCEPTION; - c000b054: 4799 li a5,6 - c000b056: de043023 sd zero,-544(s0) - c000b05a: def43423 sd a5,-536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18662 (discriminator 1) -} - c000b05e: 72fd lui t0,0xfffff - c000b060: 5b028293 addi t0,t0,1456 # fffffffffffff5b0 <_ebss+0xffffffff3fefe48a> - c000b064: de043503 ld a0,-544(s0) - c000b068: de843583 ld a1,-536(s0) - c000b06c: 00540133 add sp,s0,t0 - c000b070: 26010113 addi sp,sp,608 - c000b074: 7e813083 ld ra,2024(sp) - c000b078: 7e013403 ld s0,2016(sp) - c000b07c: 7d813483 ld s1,2008(sp) - c000b080: 7d013903 ld s2,2000(sp) - c000b084: 7c813983 ld s3,1992(sp) - c000b088: 7c013a03 ld s4,1984(sp) - c000b08c: 7b813a83 ld s5,1976(sp) - c000b090: 7b013b03 ld s6,1968(sp) - c000b094: 7a813b83 ld s7,1960(sp) - c000b098: 7a013c03 ld s8,1952(sp) - c000b09c: 79813c83 ld s9,1944(sp) - c000b0a0: 79013d03 ld s10,1936(sp) - c000b0a4: 78813d83 ld s11,1928(sp) - c000b0a8: 77813407 fld fs0,1912(sp) - c000b0ac: 77013487 fld fs1,1904(sp) - c000b0b0: 7f010113 addi sp,sp,2032 - c000b0b4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16167 + c000b142: 4799 li a5,6 + c000b144: de043023 sd zero,-544(s0) + c000b148: def43423 sd a5,-536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18670 (discriminator 1) +} + c000b14c: 72fd lui t0,0xfffff + c000b14e: 5b028293 addi t0,t0,1456 # fffffffffffff5b0 <_ebss+0xffffffff3fefe48a> + c000b152: de043503 ld a0,-544(s0) + c000b156: de843583 ld a1,-536(s0) + c000b15a: 00540133 add sp,s0,t0 + c000b15e: 26010113 addi sp,sp,608 + c000b162: 7e813083 ld ra,2024(sp) + c000b166: 7e013403 ld s0,2016(sp) + c000b16a: 7d813483 ld s1,2008(sp) + c000b16e: 7d013903 ld s2,2000(sp) + c000b172: 7c813983 ld s3,1992(sp) + c000b176: 7c013a03 ld s4,1984(sp) + c000b17a: 7b813a83 ld s5,1976(sp) + c000b17e: 7b013b03 ld s6,1968(sp) + c000b182: 7a813b83 ld s7,1960(sp) + c000b186: 7a013c03 ld s8,1952(sp) + c000b18a: 79813c83 ld s9,1944(sp) + c000b18e: 79013d03 ld s10,1936(sp) + c000b192: 78813d83 ld s11,1928(sp) + c000b196: 77813407 fld fs0,1912(sp) + c000b19a: 77013487 fld fs1,1904(sp) + c000b19e: 7f010113 addi sp,sp,2032 + c000b1a2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16175 if (unlikely(JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT)) { - c000b0b6: 7184b603 ld a2,1816(s1) - c000b0ba: 57fd li a5,-1 - c000b0bc: 0006071b sext.w a4,a2 - c000b0c0: 12f70863 beq a4,a5,c000b1f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16168 + c000b1a4: 7184b603 ld a2,1816(s1) + c000b1a8: 57fd li a5,-1 + c000b1aa: 0006071b sext.w a4,a2 + c000b1ae: 12f70863 beq a4,a5,c000b2de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16176 if (flags & JS_CALL_FLAG_GENERATOR) { - c000b0c4: 0048f893 andi a7,a7,4 - c000b0c8: 14088863 beqz a7,c000b218 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16172 + c000b1b2: 0048f893 andi a7,a7,4 + c000b1b6: 14088863 beqz a7,c000b306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16180 sf = &s->frame; - c000b0cc: 777d lui a4,0xfffff - c000b0ce: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000b0d2: 05898793 addi a5,s3,88 - c000b0d6: 9722 add a4,a4,s0 - c000b0d8: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16173 + c000b1ba: 777d lui a4,0xfffff + c000b1bc: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000b1c0: 05898793 addi a5,s3,88 + c000b1c4: 9722 add a4,a4,s0 + c000b1c6: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16181 p = JS_VALUE_GET_OBJ(sf->cur_func); - c000b0da: 0609b783 ld a5,96(s3) - c000b0de: 777d lui a4,0xfffff - c000b0e0: 60070713 addi a4,a4,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> - c000b0e4: 9722 add a4,a4,s0 - c000b0e6: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16174 + c000b1c8: 0609b783 ld a5,96(s3) + c000b1cc: 777d lui a4,0xfffff + c000b1ce: 60070713 addi a4,a4,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> + c000b1d2: 9722 add a4,a4,s0 + c000b1d4: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16182 b = p->u.func.function_bytecode; - c000b0e8: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16180 + c000b1d6: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16188 sp = sf->cur_sp; - c000b0ea: 0a09bd03 ld s10,160(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16182 + c000b1d8: 0a09bd03 ld s10,160(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16190 pc = sf->cur_pc; - c000b0ee: 0909b903 ld s2,144(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16174 + c000b1dc: 0909b903 ld s2,144(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16182 b = p->u.func.function_bytecode; - c000b0f2: 0307bd83 ld s11,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16176 + c000b1e0: 0307bd83 ld s11,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16184 var_refs = p->u.func.var_refs; - c000b0f6: 631c ld a5,0(a4) - c000b0f8: 777d lui a4,0xfffff - c000b0fa: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000b0fe: 7f9c ld a5,56(a5) - c000b100: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16175 + c000b1e4: 631c ld a5,0(a4) + c000b1e6: 777d lui a4,0xfffff + c000b1e8: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000b1ec: 7f9c ld a5,56(a5) + c000b1ee: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16183 ctx = b->realm; - c000b102: 048db483 ld s1,72(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16176 + c000b1f0: 048db483 ld s1,72(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16184 var_refs = p->u.func.var_refs; - c000b106: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16177 + c000b1f4: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16185 local_buf = arg_buf = sf->arg_buf; - c000b108: 0709b783 ld a5,112(s3) - c000b10c: 777d lui a4,0xfffff - c000b10e: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b112: 9722 add a4,a4,s0 - c000b114: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16178 + c000b1f6: 0709b783 ld a5,112(s3) + c000b1fa: 777d lui a4,0xfffff + c000b1fc: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b200: 9722 add a4,a4,s0 + c000b202: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16186 var_buf = sf->var_buf; - c000b116: 0789b783 ld a5,120(s3) - c000b11a: 777d lui a4,0xfffff - c000b11c: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b120: 9722 add a4,a4,s0 - c000b122: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16179 + c000b204: 0789b783 ld a5,120(s3) + c000b208: 777d lui a4,0xfffff + c000b20a: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b20e: 9722 add a4,a4,s0 + c000b210: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16187 stack_buf = sf->var_buf + b->var_count; - c000b124: 777d lui a4,0xfffff - c000b126: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b12a: 042dd783 lhu a5,66(s11) - c000b12e: 9722 add a4,a4,s0 - c000b130: 6318 ld a4,0(a4) - c000b132: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16181 + c000b212: 777d lui a4,0xfffff + c000b214: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b218: 042dd783 lhu a5,66(s11) + c000b21c: 9722 add a4,a4,s0 + c000b21e: 6318 ld a4,0(a4) + c000b220: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16189 sf->cur_sp = NULL; /* cur_sp is NULL if the function is running */ - c000b134: 0a09b023 sd zero,160(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16179 + c000b222: 0a09b023 sd zero,160(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16187 stack_buf = sf->var_buf + b->var_count; - c000b138: 97ba add a5,a5,a4 - c000b13a: 777d lui a4,0xfffff - c000b13c: 5f870713 addi a4,a4,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> - c000b140: 9722 add a4,a4,s0 - c000b142: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16183 + c000b226: 97ba add a5,a5,a4 + c000b228: 777d lui a4,0xfffff + c000b22a: 5f870713 addi a4,a4,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> + c000b22e: 9722 add a4,a4,s0 + c000b230: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16191 sf->prev_frame = rt->current_stack_frame; - c000b144: 77fd lui a5,0xfffff - c000b146: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b14a: 97a2 add a5,a5,s0 - c000b14c: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16184 + c000b232: 77fd lui a5,0xfffff + c000b234: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b238: 97a2 add a5,a5,s0 + c000b23a: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16192 rt->current_stack_frame = sf; - c000b14e: 05898713 addi a4,s3,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16183 + c000b23c: 05898713 addi a4,s3,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16191 sf->prev_frame = rt->current_stack_frame; - c000b152: 7ffc ld a5,248(a5) - c000b154: 04f9bc23 sd a5,88(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16184 + c000b240: 7ffc ld a5,248(a5) + c000b242: 04f9bc23 sd a5,88(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16192 rt->current_stack_frame = sf; - c000b158: 77fd lui a5,0xfffff - c000b15a: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b15e: 97a2 add a5,a5,s0 - c000b160: 639c ld a5,0(a5) - c000b162: fff8 sd a4,248(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16185 + c000b246: 77fd lui a5,0xfffff + c000b248: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b24c: 97a2 add a5,a5,s0 + c000b24e: 639c ld a5,0(a5) + c000b250: fff8 sd a4,248(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16193 if (s->throw_flag) - c000b164: 02c9a783 lw a5,44(s3) - c000b168: c399 beqz a5,c000b16e - c000b16a: 5740606f j c00116de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16177 + c000b252: 02c9a783 lw a5,44(s3) + c000b256: c399 beqz a5,c000b25c + c000b258: 5740606f j c00117cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16185 local_buf = arg_buf = sf->arg_buf; - c000b16e: 77fd lui a5,0xfffff - c000b170: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b174: 97a2 add a5,a5,s0 - c000b176: 639c ld a5,0(a5) - c000b178: 777d lui a4,0xfffff - c000b17a: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16136 + c000b25c: 77fd lui a5,0xfffff + c000b25e: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b262: 97a2 add a5,a5,s0 + c000b264: 639c ld a5,0(a5) + c000b266: 777d lui a4,0xfffff + c000b268: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16144 JSStackFrame sf_s, *sf = &sf_s; - c000b17e: 9722 add a4,a4,s0 - c000b180: e31c sd a5,0(a4) + c000b26c: 9722 add a4,a4,s0 + c000b26e: e31c sd a5,0(a4) js_build_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14841 tab = js_malloc(ctx, sizeof(tab[0]) * argc); - c000b182: 77fd lui a5,0xfffff - c000b184: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b188: 97a2 add a5,a5,s0 - c000b18a: 639c ld a5,0(a5) - c000b18c: 777d lui a4,0xfffff - c000b18e: 5e070713 addi a4,a4,1504 # fffffffffffff5e0 <_ebss+0xffffffff3fefe4ba> - c000b192: 0792 slli a5,a5,0x4 - c000b194: 9722 add a4,a4,s0 - c000b196: e31c sd a5,0(a4) + c000b270: 77fd lui a5,0xfffff + c000b272: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b276: 97a2 add a5,a5,s0 + c000b278: 639c ld a5,0(a5) + c000b27a: 777d lui a4,0xfffff + c000b27c: 5e070713 addi a4,a4,1504 # fffffffffffff5e0 <_ebss+0xffffffff3fefe4ba> + c000b280: 0792 slli a5,a5,0x4 + c000b282: 9722 add a4,a4,s0 + c000b284: e31c sd a5,0(a4) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18450 ret_val = JS_ToPropertyKey(ctx, sp[-1]); - c000b198: 79fd lui s3,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18062 + c000b286: 79fd lui s3,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18070 d = -0.0; - c000b19a: 00069797 auipc a5,0x69 - c000b19e: 6467b407 fld fs0,1606(a5) # c00747e0 <_erodata+0x60> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18066 + c000b288: 00069797 auipc a5,0x69 + c000b28c: 7b87b407 fld fs0,1976(a5) # c0074a40 <_erodata+0x60> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18074 d = -(double)val; - c000b1a2: 00069797 auipc a5,0x69 - c000b1a6: 6467b487 fld fs1,1606(a5) # c00747e8 <_erodata+0x68> + c000b290: 00069797 auipc a5,0x69 + c000b294: 7b87b487 fld fs1,1976(a5) # c0074a48 <_erodata+0x68> js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15515 && js_get_fast_array(ctx, sp[-1], &arrp, &count32)) { - c000b1aa: f8040713 addi a4,s0,-128 - c000b1ae: 74098793 addi a5,s3,1856 # fffffffffffff740 <_ebss+0xffffffff3fefe61a> - c000b1b2: 97ba add a5,a5,a4 - c000b1b4: 777d lui a4,0xfffff - c000b1b6: 5f070713 addi a4,a4,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> - c000b1ba: 9722 add a4,a4,s0 + c000b298: f8040713 addi a4,s0,-128 + c000b29c: 74098793 addi a5,s3,1856 # fffffffffffff740 <_ebss+0xffffffff3fefe61a> + c000b2a0: 97ba add a5,a5,a4 + c000b2a2: 777d lui a4,0xfffff + c000b2a4: 5f070713 addi a4,a4,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> + c000b2a8: 9722 add a4,a4,s0 js_build_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14841 tab = js_malloc(ctx, sizeof(tab[0]) * argc); - c000b1bc: 8bca mv s7,s2 + c000b2aa: 8bca mv s7,s2 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15515 && js_get_fast_array(ctx, sp[-1], &arrp, &count32)) { - c000b1be: e31c sd a5,0(a4) + c000b2ac: e31c sd a5,0(a4) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16261 SWITCH(pc) { - c000b1c0: 000bca03 lbu s4,0(s7) - c000b1c4: 0f400713 li a4,244 - c000b1c8: 0905 addi s2,s2,1 - c000b1ca: fffa079b addiw a5,s4,-1 - c000b1ce: 0ff7f793 zext.b a5,a5 - c000b1d2: 000a0a9b sext.w s5,s4 - c000b1d6: 00f77463 bgeu a4,a5,c000b1de - c000b1da: 4e60606f j c00116c0 - c000b1de: 00052717 auipc a4,0x52 - c000b1e2: 18670713 addi a4,a4,390 # c005d364 - c000b1e6: 078a slli a5,a5,0x2 - c000b1e8: 97ba add a5,a5,a4 - c000b1ea: 439c lw a5,0(a5) - c000b1ec: 97ba add a5,a5,a4 - c000b1ee: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16194 + c000b2ae: 000bca03 lbu s4,0(s7) + c000b2b2: 0f400713 li a4,244 + c000b2b6: 0905 addi s2,s2,1 + c000b2b8: fffa079b addiw a5,s4,-1 + c000b2bc: 0ff7f793 zext.b a5,a5 + c000b2c0: 000a0a9b sext.w s5,s4 + c000b2c4: 00f77463 bgeu a4,a5,c000b2cc + c000b2c8: 4e60606f j c00117ae + c000b2cc: 00052717 auipc a4,0x52 + c000b2d0: 2c870713 addi a4,a4,712 # c005d594 + c000b2d4: 078a slli a5,a5,0x2 + c000b2d6: 97ba add a5,a5,a4 + c000b2d8: 439c lw a5,0(a5) + c000b2da: 97ba add a5,a5,a4 + c000b2dc: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16202 if (unlikely(p->class_id != JS_CLASS_BYTECODE_FUNCTION)) { - c000b1f0: 0069d783 lhu a5,6(s3) - c000b1f4: 4735 li a4,13 - c000b1f6: 06e78563 beq a5,a4,c000b260 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16196 + c000b2de: 0069d783 lhu a5,6(s3) + c000b2e2: 4735 li a4,13 + c000b2e4: 06e78563 beq a5,a4,c000b34e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16204 call_func = rt->class_array[p->class_id].call; - c000b1fa: 02800693 li a3,40 - c000b1fe: 02d787b3 mul a5,a5,a3 - c000b202: 777d lui a4,0xfffff - c000b204: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b208: 9722 add a4,a4,s0 - c000b20a: 6318 ld a4,0(a4) - c000b20c: 7b38 ld a4,112(a4) - c000b20e: 97ba add a5,a5,a4 - c000b210: 0187b303 ld t1,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16197 + c000b2e8: 02800693 li a3,40 + c000b2ec: 02d787b3 mul a5,a5,a3 + c000b2f0: 777d lui a4,0xfffff + c000b2f2: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b2f6: 9722 add a4,a4,s0 + c000b2f8: 6318 ld a4,0(a4) + c000b2fa: 7b38 ld a4,112(a4) + c000b2fc: 97ba add a5,a5,a4 + c000b2fe: 0187b303 ld t1,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16205 if (!call_func) { - c000b214: 02031263 bnez t1,c000b238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16199 + c000b302: 02031263 bnez t1,c000b326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16207 return JS_ThrowTypeError(caller_ctx, "not a function"); - c000b218: 77fd lui a5,0xfffff - c000b21a: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> - c000b21e: 97a2 add a5,a5,s0 - c000b220: 6388 ld a0,0(a5) - c000b222: 00052597 auipc a1,0x52 - c000b226: de658593 addi a1,a1,-538 # c005d008 - c000b22a: 1cc080ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16201 + c000b306: 77fd lui a5,0xfffff + c000b308: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> + c000b30c: 97a2 add a5,a5,s0 + c000b30e: 6388 ld a0,0(a5) + c000b310: 00052597 auipc a1,0x52 + c000b314: f2858593 addi a1,a1,-216 # c005d238 + c000b318: 1cc080ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16209 return call_func(caller_ctx, func_obj, this_obj, argc, - c000b22e: dea43023 sd a0,-544(s0) - c000b232: deb43423 sd a1,-536(s0) - c000b236: b525 j c000b05e - c000b238: 77fd lui a5,0xfffff - c000b23a: 757d lui a0,0xfffff - c000b23c: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b240: 61050513 addi a0,a0,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> - c000b244: 97a2 add a5,a5,s0 - c000b246: 9522 add a0,a0,s0 - c000b248: 00043803 ld a6,0(s0) - c000b24c: 639c ld a5,0(a5) - c000b24e: 7004b683 ld a3,1792(s1) - c000b252: 7084b703 ld a4,1800(s1) - c000b256: 7104b583 ld a1,1808(s1) - c000b25a: 6108 ld a0,0(a0) - c000b25c: 9302 jalr t1 - c000b25e: bfc1 j c000b22e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16204 + c000b31c: dea43023 sd a0,-544(s0) + c000b320: deb43423 sd a1,-536(s0) + c000b324: b525 j c000b14c + c000b326: 77fd lui a5,0xfffff + c000b328: 757d lui a0,0xfffff + c000b32a: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b32e: 61050513 addi a0,a0,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> + c000b332: 97a2 add a5,a5,s0 + c000b334: 9522 add a0,a0,s0 + c000b336: 00043803 ld a6,0(s0) + c000b33a: 639c ld a5,0(a5) + c000b33c: 7004b683 ld a3,1792(s1) + c000b340: 7084b703 ld a4,1800(s1) + c000b344: 7104b583 ld a1,1808(s1) + c000b348: 6108 ld a0,0(a0) + c000b34a: 9302 jalr t1 + c000b34c: bfc1 j c000b31c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16212 b = p->u.func.function_bytecode; - c000b260: 0309bd83 ld s11,48(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16206 + c000b34e: 0309bd83 ld s11,48(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16214 if (unlikely(argc < b->arg_count || (flags & JS_CALL_FLAG_COPY_ARGV))) { - c000b264: 77fd lui a5,0xfffff - c000b266: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b26a: 97a2 add a5,a5,s0 - c000b26c: 040dd903 lhu s2,64(s11) - c000b270: 639c ld a5,0(a5) - c000b272: 0127c763 blt a5,s2,c000b280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16206 (discriminator 1) - c000b276: 0028f893 andi a7,a7,2 - c000b27a: 00089363 bnez a7,c000b280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16209 + c000b352: 77fd lui a5,0xfffff + c000b354: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b358: 97a2 add a5,a5,s0 + c000b35a: 040dd903 lhu s2,64(s11) + c000b35e: 639c ld a5,0(a5) + c000b360: 0127c763 blt a5,s2,c000b36e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16214 (discriminator 1) + c000b364: 0028f893 andi a7,a7,2 + c000b368: 00089363 bnez a7,c000b36e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16217 arg_allocated_size = 0; - c000b27e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16212 + c000b36c: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16220 alloca_size = sizeof(JSValue) * (arg_allocated_size + b->var_count + - c000b280: 042dd703 lhu a4,66(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16213 + c000b36e: 042dd703 lhu a4,66(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16221 b->stack_size); - c000b284: 046dd783 lhu a5,70(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16220 + c000b372: 046dd783 lhu a5,70(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 sf->cur_func = (JSValue)func_obj; - c000b288: f8040693 addi a3,s0,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16212 + c000b376: f8040693 addi a3,s0,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16220 alloca_size = sizeof(JSValue) * (arg_allocated_size + b->var_count + - c000b28c: 9f3d addw a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16217 + c000b37a: 9f3d addw a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16225 sf->js_mode = b->js_mode; - c000b28e: 018dc783 lbu a5,24(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16224 + c000b37c: 018dc783 lbu a5,24(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 local_buf = alloca(alloca_size); - c000b292: 0127073b addw a4,a4,s2 - c000b296: 0712 slli a4,a4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16217 + c000b380: 0127073b addw a4,a4,s2 + c000b384: 0712 slli a4,a4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16225 sf->js_mode = b->js_mode; - c000b298: f6f42a23 sw a5,-140(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16219 + c000b386: f6f42a23 sw a5,-140(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16227 sf->arg_count = argc; - c000b29c: 77fd lui a5,0xfffff - c000b29e: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b2a2: 97a2 add a5,a5,s0 - c000b2a4: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16224 + c000b38a: 77fd lui a5,0xfffff + c000b38c: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b390: 97a2 add a5,a5,s0 + c000b392: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 local_buf = alloca(alloca_size); - c000b2a6: 40e10133 sub sp,sp,a4 - c000b2aa: 777d lui a4,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16219 + c000b394: 40e10133 sub sp,sp,a4 + c000b398: 777d lui a4,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16227 sf->arg_count = argc; - c000b2ac: f6f42823 sw a5,-144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16220 + c000b39a: f6f42823 sw a5,-144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 sf->cur_func = (JSValue)func_obj; - c000b2b0: 77fd lui a5,0xfffff - c000b2b2: 97b6 add a5,a5,a3 - c000b2b4: 7107b683 ld a3,1808(a5) # fffffffffffff710 <_ebss+0xffffffff3fefe5ea> - c000b2b8: 7187b783 ld a5,1816(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16224 + c000b39e: 77fd lui a5,0xfffff + c000b3a0: 97b6 add a5,a5,a3 + c000b3a2: 7107b683 ld a3,1808(a5) # fffffffffffff710 <_ebss+0xffffffff3fefe5ea> + c000b3a6: 7187b783 ld a5,1816(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 local_buf = alloca(alloca_size); - c000b2bc: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16220 + c000b3aa: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 sf->cur_func = (JSValue)func_obj; - c000b2c0: f2d43c23 sd a3,-200(s0) - c000b2c4: f4f43023 sd a5,-192(s0) + c000b3ae: f2d43c23 sd a3,-200(s0) + c000b3b2: f4f43023 sd a5,-192(s0) init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c000b2c8: f5840793 addi a5,s0,-168 - c000b2cc: f4f43c23 sd a5,-168(s0) + c000b3b6: f5840793 addi a5,s0,-168 + c000b3ba: f4f43c23 sd a5,-168(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c000b2d0: f6f43023 sd a5,-160(s0) + c000b3be: f6f43023 sd a5,-160(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16230 var_refs = p->u.func.var_refs; - c000b2d4: 76fd lui a3,0xfffff - c000b2d6: 0389b783 ld a5,56(s3) - c000b2da: 65068693 addi a3,a3,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000b2de: 96a2 add a3,a3,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16224 + c000b3c2: 76fd lui a3,0xfffff + c000b3c4: 0389b783 ld a5,56(s3) + c000b3c8: 65068693 addi a3,a3,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000b3cc: 96a2 add a3,a3,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 local_buf = alloca(alloca_size); - c000b2e0: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16222 + c000b3ce: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16230 var_refs = p->u.func.var_refs; - c000b2e2: e29c sd a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16224 + c000b3d0: e29c sd a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 local_buf = alloca(alloca_size); - c000b2e4: 101c addi a5,sp,32 - c000b2e6: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16218 + c000b3d2: 101c addi a5,sp,32 + c000b3d4: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16226 arg_buf = argv; - c000b2e8: 601c ld a5,0(s0) - c000b2ea: 777d lui a4,0xfffff - c000b2ec: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000b2f0: 9722 add a4,a4,s0 - c000b2f2: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16225 + c000b3d6: 601c ld a5,0(s0) + c000b3d8: 777d lui a4,0xfffff + c000b3da: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000b3de: 9722 add a4,a4,s0 + c000b3e0: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16233 if (unlikely(arg_allocated_size)) { - c000b2f4: 06090563 beqz s2,c000b35e + c000b3e2: 06090563 beqz s2,c000b44c /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c000b2f8: 777d lui a4,0xfffff - c000b2fa: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b2fe: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16226 + c000b3e6: 777d lui a4,0xfffff + c000b3e8: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b3ec: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16234 int n = min_int(argc, b->arg_count); - c000b300: 040dd783 lhu a5,64(s11) - c000b304: 6318 ld a4,0(a4) - c000b306: 84be mv s1,a5 - c000b308: 00f75763 bge a4,a5,c000b316 - c000b30c: 77fd lui a5,0xfffff - c000b30e: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b312: 97a2 add a5,a5,s0 - c000b314: 4384 lw s1,0(a5) - c000b316: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 + c000b3ee: 040dd783 lhu a5,64(s11) + c000b3f2: 6318 ld a4,0(a4) + c000b3f4: 84be mv s1,a5 + c000b3f6: 00f75763 bge a4,a5,c000b404 + c000b3fa: 77fd lui a5,0xfffff + c000b3fc: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b400: 97a2 add a5,a5,s0 + c000b402: 4384 lw s1,0(a5) + c000b404: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16236 for(i = 0; i < n; i++) - c000b318: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 (discriminator 1) - c000b31a: 000a879b sext.w a5,s5 - c000b31e: 0c97ca63 blt a5,s1,c000b3f2 - c000b322: 0004871b sext.w a4,s1 - c000b326: 0004d363 bgez s1,c000b32c - c000b32a: 4701 li a4,0 - c000b32c: 77fd lui a5,0xfffff - c000b32e: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b332: 97a2 add a5,a5,s0 - c000b334: 639c ld a5,0(a5) - c000b336: 00471693 slli a3,a4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16231 + c000b406: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16236 (discriminator 1) + c000b408: 000a879b sext.w a5,s5 + c000b40c: 0c97ca63 blt a5,s1,c000b4e0 + c000b410: 0004871b sext.w a4,s1 + c000b414: 0004d363 bgez s1,c000b41a + c000b418: 4701 li a4,0 + c000b41a: 77fd lui a5,0xfffff + c000b41c: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b420: 97a2 add a5,a5,s0 + c000b422: 639c ld a5,0(a5) + c000b424: 00471693 slli a3,a4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16239 arg_buf[i] = JS_UNDEFINED; - c000b33a: 460d li a2,3 - c000b33c: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16230 (discriminator 1) + c000b428: 460d li a2,3 + c000b42a: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16238 (discriminator 1) for(; i < b->arg_count; i++) - c000b33e: 040dd783 lhu a5,64(s11) - c000b342: 0cf74c63 blt a4,a5,c000b41a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16232 + c000b42c: 040dd783 lhu a5,64(s11) + c000b430: 0cf74c63 blt a4,a5,c000b508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16240 sf->arg_count = b->arg_count; - c000b346: f6f42823 sw a5,-144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16227 + c000b434: f6f42823 sw a5,-144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16235 arg_buf = local_buf; - c000b34a: 77fd lui a5,0xfffff - c000b34c: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b350: 97a2 add a5,a5,s0 - c000b352: 639c ld a5,0(a5) - c000b354: 777d lui a4,0xfffff - c000b356: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000b35a: 9722 add a4,a4,s0 - c000b35c: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16234 + c000b438: 77fd lui a5,0xfffff + c000b43a: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b43e: 97a2 add a5,a5,s0 + c000b440: 639c ld a5,0(a5) + c000b442: 777d lui a4,0xfffff + c000b444: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000b448: 9722 add a4,a4,s0 + c000b44a: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16242 var_buf = local_buf + arg_allocated_size; - c000b35e: 777d lui a4,0xfffff - c000b360: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b364: 9722 add a4,a4,s0 - c000b366: 6318 ld a4,0(a4) - c000b368: 00491793 slli a5,s2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16239 + c000b44c: 777d lui a4,0xfffff + c000b44e: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b452: 9722 add a4,a4,s0 + c000b454: 6318 ld a4,0(a4) + c000b456: 00491793 slli a5,s2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16247 var_buf[i] = JS_UNDEFINED; - c000b36c: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16234 + c000b45a: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16242 var_buf = local_buf + arg_allocated_size; - c000b36e: 97ba add a5,a5,a4 - c000b370: 777d lui a4,0xfffff - c000b372: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b376: 9722 add a4,a4,s0 - c000b378: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16235 + c000b45c: 97ba add a5,a5,a4 + c000b45e: 777d lui a4,0xfffff + c000b460: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b464: 9722 add a4,a4,s0 + c000b466: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16243 sf->var_buf = var_buf; - c000b37a: 631c ld a5,0(a4) - c000b37c: f4f43823 sd a5,-176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16236 + c000b468: 631c ld a5,0(a4) + c000b46a: f4f43823 sd a5,-176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16244 sf->arg_buf = arg_buf; - c000b380: 77fd lui a5,0xfffff - c000b382: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000b386: 97a2 add a5,a5,s0 - c000b388: 639c ld a5,0(a5) - c000b38a: f4f43423 sd a5,-184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16238 + c000b46e: 77fd lui a5,0xfffff + c000b470: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000b474: 97a2 add a5,a5,s0 + c000b476: 639c ld a5,0(a5) + c000b478: f4f43423 sd a5,-184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16246 for(i = 0; i < b->var_count; i++) - c000b38e: 631c ld a5,0(a4) - c000b390: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16238 (discriminator 1) - c000b392: 042dd303 lhu t1,66(s11) - c000b396: 08674863 blt a4,t1,c000b426 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16241 + c000b47c: 631c ld a5,0(a4) + c000b47e: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16246 (discriminator 1) + c000b480: 042dd303 lhu t1,66(s11) + c000b484: 08674863 blt a4,t1,c000b514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16249 stack_buf = var_buf + b->var_count; - c000b39a: 77fd lui a5,0xfffff - c000b39c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000b3a0: 97a2 add a5,a5,s0 - c000b3a2: 639c ld a5,0(a5) - c000b3a4: 0312 slli t1,t1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16245 + c000b488: 77fd lui a5,0xfffff + c000b48a: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000b48e: 97a2 add a5,a5,s0 + c000b490: 639c ld a5,0(a5) + c000b492: 0312 slli t1,t1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16253 rt->current_stack_frame = sf; - c000b3a6: 777d lui a4,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16241 + c000b494: 777d lui a4,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16249 stack_buf = var_buf + b->var_count; - c000b3a8: 00678d33 add s10,a5,t1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16244 + c000b496: 00678d33 add s10,a5,t1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16252 sf->prev_frame = rt->current_stack_frame; - c000b3ac: 77fd lui a5,0xfffff - c000b3ae: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b3b2: 97a2 add a5,a5,s0 - c000b3b4: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16245 + c000b49a: 77fd lui a5,0xfffff + c000b49c: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b4a0: 97a2 add a5,a5,s0 + c000b4a2: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16253 rt->current_stack_frame = sf; - c000b3b6: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b3ba: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16244 + c000b4a4: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b4a8: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16252 sf->prev_frame = rt->current_stack_frame; - c000b3bc: 7ffc ld a5,248(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16245 + c000b4aa: 7ffc ld a5,248(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16253 rt->current_stack_frame = sf; - c000b3be: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16243 + c000b4ac: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16251 pc = b->byte_code_buf; - c000b3c0: 020db903 ld s2,32(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16244 + c000b4ae: 020db903 ld s2,32(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16252 sf->prev_frame = rt->current_stack_frame; - c000b3c4: f2f43823 sd a5,-208(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16245 + c000b4b2: f2f43823 sd a5,-208(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16253 rt->current_stack_frame = sf; - c000b3c8: f3040793 addi a5,s0,-208 - c000b3cc: ff7c sd a5,248(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16241 + c000b4b6: f3040793 addi a5,s0,-208 + c000b4ba: ff7c sd a5,248(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16249 stack_buf = var_buf + b->var_count; - c000b3ce: 777d lui a4,0xfffff - c000b3d0: 5f870713 addi a4,a4,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> - c000b3d4: 9722 add a4,a4,s0 - c000b3d6: 01a73023 sd s10,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16246 + c000b4bc: 777d lui a4,0xfffff + c000b4be: 5f870713 addi a4,a4,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> + c000b4c2: 9722 add a4,a4,s0 + c000b4c4: 01a73023 sd s10,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16254 ctx = b->realm; /* set the current realm */ - c000b3da: 777d lui a4,0xfffff - c000b3dc: 60070713 addi a4,a4,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> - c000b3e0: 9722 add a4,a4,s0 - c000b3e2: 01373023 sd s3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16136 + c000b4c8: 777d lui a4,0xfffff + c000b4ca: 60070713 addi a4,a4,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> + c000b4ce: 9722 add a4,a4,s0 + c000b4d0: 01373023 sd s3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16144 JSStackFrame sf_s, *sf = &sf_s; - c000b3e6: 777d lui a4,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16246 + c000b4d4: 777d lui a4,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16254 ctx = b->realm; /* set the current realm */ - c000b3e8: 048db483 ld s1,72(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16136 + c000b4d6: 048db483 ld s1,72(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16144 JSStackFrame sf_s, *sf = &sf_s; - c000b3ec: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000b3f0: b379 j c000b17e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16229 (discriminator 3) + c000b4da: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000b4de: b379 j c000b26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16237 (discriminator 3) arg_buf[i] = JS_DupValue(caller_ctx, argv[i]); - c000b3f2: 601c ld a5,0(s0) - c000b3f4: 004a9a13 slli s4,s5,0x4 - c000b3f8: 0a85 addi s5,s5,1 - c000b3fa: 97d2 add a5,a5,s4 - c000b3fc: 6388 ld a0,0(a5) - c000b3fe: 678c ld a1,8(a5) - c000b400: a6efb0ef jal ra,c000666e - c000b404: 77fd lui a5,0xfffff - c000b406: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000b40a: 97a2 add a5,a5,s0 - c000b40c: 639c ld a5,0(a5) - c000b40e: 9a3e add s4,s4,a5 - c000b410: 00aa3023 sd a0,0(s4) - c000b414: 00ba3423 sd a1,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16228 (discriminator 3) + c000b4e0: 601c ld a5,0(s0) + c000b4e2: 004a9a13 slli s4,s5,0x4 + c000b4e6: 0a85 addi s5,s5,1 + c000b4e8: 97d2 add a5,a5,s4 + c000b4ea: 6388 ld a0,0(a5) + c000b4ec: 678c ld a1,8(a5) + c000b4ee: a6efb0ef jal ra,c000675c + c000b4f2: 77fd lui a5,0xfffff + c000b4f4: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000b4f8: 97a2 add a5,a5,s0 + c000b4fa: 639c ld a5,0(a5) + c000b4fc: 9a3e add s4,s4,a5 + c000b4fe: 00aa3023 sd a0,0(s4) + c000b502: 00ba3423 sd a1,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16236 (discriminator 3) for(i = 0; i < n; i++) - c000b418: b709 j c000b31a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16231 (discriminator 2) + c000b506: b709 j c000b408 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16239 (discriminator 2) arg_buf[i] = JS_UNDEFINED; - c000b41a: 0006b023 sd zero,0(a3) - c000b41e: e690 sd a2,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16230 (discriminator 2) + c000b508: 0006b023 sd zero,0(a3) + c000b50c: e690 sd a2,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16238 (discriminator 2) for(; i < b->arg_count; i++) - c000b420: 2705 addiw a4,a4,1 - c000b422: 06c1 addi a3,a3,16 - c000b424: bf29 j c000b33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16239 (discriminator 3) + c000b50e: 2705 addiw a4,a4,1 + c000b510: 06c1 addi a3,a3,16 + c000b512: bf29 j c000b42c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16247 (discriminator 3) var_buf[i] = JS_UNDEFINED; - c000b426: 0007b023 sd zero,0(a5) - c000b42a: e794 sd a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16238 (discriminator 3) + c000b514: 0007b023 sd zero,0(a5) + c000b518: e794 sd a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16246 (discriminator 3) for(i = 0; i < b->var_count; i++) - c000b42c: 2705 addiw a4,a4,1 - c000b42e: 07c1 addi a5,a5,16 - c000b430: b78d j c000b392 + c000b51a: 2705 addiw a4,a4,1 + c000b51c: 07c1 addi a5,a5,16 + c000b51e: b78d j c000b480 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000b432: 002bc703 lbu a4,2(s7) - c000b436: 001bc783 lbu a5,1(s7) + c000b520: 002bc703 lbu a4,2(s7) + c000b524: 001bc783 lbu a5,1(s7) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000b43a: 80043823 sd zero,-2032(s0) + c000b528: 80043823 sd zero,-2032(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b43e: 0722 slli a4,a4,0x8 - c000b440: 8f5d or a4,a4,a5 - c000b442: 003bc783 lbu a5,3(s7) + c000b52c: 0722 slli a4,a4,0x8 + c000b52e: 8f5d or a4,a4,a5 + c000b530: 003bc783 lbu a5,3(s7) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b446: 80043c23 sd zero,-2024(s0) + c000b534: 80043c23 sd zero,-2024(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16264 pc += 4; - c000b44a: 005b8913 addi s2,s7,5 + c000b538: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b44e: 07c2 slli a5,a5,0x10 - c000b450: 8f5d or a4,a4,a5 - c000b452: 004bc783 lbu a5,4(s7) - c000b456: ee043c23 sd zero,-264(s0) + c000b53c: 07c2 slli a5,a5,0x10 + c000b53e: 8f5d or a4,a4,a5 + c000b540: 004bc783 lbu a5,4(s7) + c000b544: ee043c23 sd zero,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16263 *sp++ = JS_NewInt32(ctx, get_u32(pc)); - c000b45a: 0d41 addi s10,s10,16 + c000b548: 0d41 addi s10,s10,16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b45c: 07e2 slli a5,a5,0x18 - c000b45e: 8fd9 or a5,a5,a4 + c000b54a: 07e2 slli a5,a5,0x18 + c000b54c: 8fd9 or a5,a5,a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b460: 80f42823 sw a5,-2032(s0) - c000b464: 81043783 ld a5,-2032(s0) - c000b468: eef43823 sd a5,-272(s0) + c000b54e: 80f42823 sw a5,-2032(s0) + c000b552: 81043783 ld a5,-2032(s0) + c000b556: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16255 - c000b46c: fefd3823 sd a5,-16(s10) # ffffffffbffffff0 <_ebss+0xfffffffeffefeeca> - c000b470: ef843783 ld a5,-264(s0) - c000b474: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16279 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16263 + c000b55a: fefd3823 sd a5,-16(s10) # ffffffffbffffff0 <_ebss+0xfffffffeffefeeca> + c000b55e: ef843783 ld a5,-264(s0) + c000b562: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16287 *sp++ = JS_NewInt32(ctx, get_i16(pc)); - c000b478: 8bca mv s7,s2 - c000b47a: b399 j c000b1c0 + c000b566: 8bca mv s7,s2 + c000b568: b399 j c000b2ae get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b47c: 002bc703 lbu a4,2(s7) - c000b480: 001bc783 lbu a5,1(s7) + c000b56a: 002bc703 lbu a4,2(s7) + c000b56e: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16267 *sp++ = JS_DupValue(ctx, b->cpool[get_u32(pc)]); - c000b484: 010d0a13 addi s4,s10,16 + c000b572: 010d0a13 addi s4,s10,16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b488: 0722 slli a4,a4,0x8 - c000b48a: 8f5d or a4,a4,a5 - c000b48c: 003bc783 lbu a5,3(s7) + c000b576: 0722 slli a4,a4,0x8 + c000b578: 8f5d or a4,a4,a5 + c000b57a: 003bc783 lbu a5,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16260 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16268 pc += 4; - c000b490: 005b8913 addi s2,s7,5 + c000b57e: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b494: 07c2 slli a5,a5,0x10 - c000b496: 8f5d or a4,a4,a5 - c000b498: 004bc783 lbu a5,4(s7) - c000b49c: 07e2 slli a5,a5,0x18 + c000b582: 07c2 slli a5,a5,0x10 + c000b584: 8f5d or a4,a4,a5 + c000b586: 004bc783 lbu a5,4(s7) + c000b58a: 07e2 slli a5,a5,0x18 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16267 *sp++ = JS_DupValue(ctx, b->cpool[get_u32(pc)]); - c000b49e: 8fd9 or a5,a5,a4 - c000b4a0: 050db703 ld a4,80(s11) - c000b4a4: 0792 slli a5,a5,0x4 - c000b4a6: 97ba add a5,a5,a4 - c000b4a8: 6388 ld a0,0(a5) - c000b4aa: 678c ld a1,8(a5) - c000b4ac: 9c2fb0ef jal ra,c000666e - c000b4b0: 00ad3023 sd a0,0(s10) - c000b4b4: 00bd3423 sd a1,8(s10) - c000b4b8: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16261 + c000b58c: 8fd9 or a5,a5,a4 + c000b58e: 050db703 ld a4,80(s11) + c000b592: 0792 slli a5,a5,0x4 + c000b594: 97ba add a5,a5,a4 + c000b596: 6388 ld a0,0(a5) + c000b598: 678c ld a1,8(a5) + c000b59a: 9c2fb0ef jal ra,c000675c + c000b59e: 00ad3023 sd a0,0(s10) + c000b5a2: 00bd3423 sd a1,8(s10) + c000b5a6: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16269 BREAK; - c000b4ba: bf7d j c000b478 + c000b5a8: bf7d j c000b566 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b4bc: 82043023 sd zero,-2016(s0) + c000b5aa: 82043023 sd zero,-2016(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16280 *sp++ = JS_NewInt32(ctx, opcode - OP_push_0); - c000b4c0: f4ba8a9b addiw s5,s5,-181 - c000b4c4: 83542023 sw s5,-2016(s0) - c000b4c8: 82043783 ld a5,-2016(s0) - c000b4cc: ee043c23 sd zero,-264(s0) + c000b5ae: f4ba8a9b addiw s5,s5,-181 + c000b5b2: 83542023 sw s5,-2016(s0) + c000b5b6: 82043783 ld a5,-2016(s0) + c000b5ba: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b4d0: 82043423 sd zero,-2008(s0) - c000b4d4: eef43823 sd a5,-272(s0) + c000b5be: 82043423 sd zero,-2008(s0) + c000b5c2: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16272 - c000b4d8: 00fd3023 sd a5,0(s10) - c000b4dc: ef843783 ld a5,-264(s0) - c000b4e0: 0d41 addi s10,s10,16 - c000b4e2: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16273 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16280 + c000b5c6: 00fd3023 sd a5,0(s10) + c000b5ca: ef843783 ld a5,-264(s0) + c000b5ce: 0d41 addi s10,s10,16 + c000b5d0: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16281 BREAK; - c000b4e6: bf49 j c000b478 + c000b5d4: bf49 j c000b566 get_i8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:205 return (int8_t)*tab; - c000b4e8: 001b8783 lb a5,1(s7) + c000b5d6: 001b8783 lb a5,1(s7) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b4ec: 82043823 sd zero,-2000(s0) - c000b4f0: ee043c23 sd zero,-264(s0) - c000b4f4: 82f42823 sw a5,-2000(s0) - c000b4f8: 83043783 ld a5,-2000(s0) - c000b4fc: 82043c23 sd zero,-1992(s0) + c000b5da: 82043823 sd zero,-2000(s0) + c000b5de: ee043c23 sd zero,-264(s0) + c000b5e2: 82f42823 sw a5,-2000(s0) + c000b5e6: 83043783 ld a5,-2000(s0) + c000b5ea: 82043c23 sd zero,-1992(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16284 pc += 1; - c000b500: 002b8913 addi s2,s7,2 - c000b504: eef43823 sd a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16275 + c000b5ee: 002b8913 addi s2,s7,2 + c000b5f2: eef43823 sd a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16283 *sp++ = JS_NewInt32(ctx, get_i8(pc)); - c000b508: 00fd3023 sd a5,0(s10) - c000b50c: ef843783 ld a5,-264(s0) - c000b510: 0d41 addi s10,s10,16 - c000b512: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16277 + c000b5f6: 00fd3023 sd a5,0(s10) + c000b5fa: ef843783 ld a5,-264(s0) + c000b5fe: 0d41 addi s10,s10,16 + c000b600: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16285 BREAK; - c000b516: b78d j c000b478 + c000b604: b78d j c000b566 get_i16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:190 return (int16_t)((const struct packed_u16 *)tab)->v; - c000b518: 002bc783 lbu a5,2(s7) - c000b51c: 001bc703 lbu a4,1(s7) + c000b606: 002bc783 lbu a5,2(s7) + c000b60a: 001bc703 lbu a4,1(s7) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b520: 84043023 sd zero,-1984(s0) + c000b60e: 84043023 sd zero,-1984(s0) get_i16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:190 - c000b524: 07a2 slli a5,a5,0x8 - c000b526: 8fd9 or a5,a5,a4 - c000b528: 0107979b slliw a5,a5,0x10 - c000b52c: 4107d79b sraiw a5,a5,0x10 + c000b612: 07a2 slli a5,a5,0x8 + c000b614: 8fd9 or a5,a5,a4 + c000b616: 0107979b slliw a5,a5,0x10 + c000b61a: 4107d79b sraiw a5,a5,0x10 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000b530: 84f42023 sw a5,-1984(s0) - c000b534: 84043783 ld a5,-1984(s0) - c000b538: ee043c23 sd zero,-264(s0) - c000b53c: 84043423 sd zero,-1976(s0) - c000b540: eef43823 sd a5,-272(s0) + c000b61e: 84f42023 sw a5,-1984(s0) + c000b622: 84043783 ld a5,-1984(s0) + c000b626: ee043c23 sd zero,-264(s0) + c000b62a: 84043423 sd zero,-1976(s0) + c000b62e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16279 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16287 *sp++ = JS_NewInt32(ctx, get_i16(pc)); - c000b544: 00fd3023 sd a5,0(s10) - c000b548: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16280 + c000b632: 00fd3023 sd a5,0(s10) + c000b636: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16288 pc += 2; - c000b54c: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16279 + c000b63a: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16287 *sp++ = JS_NewInt32(ctx, get_i16(pc)); - c000b550: 0d41 addi s10,s10,16 - c000b552: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16281 + c000b63e: 0d41 addi s10,s10,16 + c000b640: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16289 BREAK; - c000b556: b70d j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16283 + c000b644: b70d j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16291 *sp++ = JS_DupValue(ctx, b->cpool[*pc++]); - c000b558: 001bc703 lbu a4,1(s7) - c000b55c: 050db783 ld a5,80(s11) - c000b560: 010d0a13 addi s4,s10,16 - c000b564: 0712 slli a4,a4,0x4 - c000b566: 97ba add a5,a5,a4 - c000b568: 6388 ld a0,0(a5) - c000b56a: 678c ld a1,8(a5) - c000b56c: 002b8913 addi s2,s7,2 - c000b570: 8fefb0ef jal ra,c000666e - c000b574: 00ad3023 sd a0,0(s10) - c000b578: 00bd3423 sd a1,8(s10) - c000b57c: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16284 + c000b646: 001bc703 lbu a4,1(s7) + c000b64a: 050db783 ld a5,80(s11) + c000b64e: 010d0a13 addi s4,s10,16 + c000b652: 0712 slli a4,a4,0x4 + c000b654: 97ba add a5,a5,a4 + c000b656: 6388 ld a0,0(a5) + c000b658: 678c ld a1,8(a5) + c000b65a: 002b8913 addi s2,s7,2 + c000b65e: 8fefb0ef jal ra,c000675c + c000b662: 00ad3023 sd a0,0(s10) + c000b666: 00bd3423 sd a1,8(s10) + c000b66a: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16292 BREAK; - c000b57e: bded j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16286 + c000b66c: bded j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16294 *sp++ = js_closure(ctx, JS_DupValue(ctx, b->cpool[*pc++]), var_refs, sf); - c000b580: 001bc703 lbu a4,1(s7) - c000b584: 050db783 ld a5,80(s11) - c000b588: 010d0a13 addi s4,s10,16 - c000b58c: 0712 slli a4,a4,0x4 - c000b58e: 97ba add a5,a5,a4 - c000b590: 6388 ld a0,0(a5) - c000b592: 678c ld a1,8(a5) - c000b594: 002b8913 addi s2,s7,2 - c000b598: 8d6fb0ef jal ra,c000666e - c000b59c: f8040793 addi a5,s0,-128 - c000b5a0: 97ce add a5,a5,s3 - c000b5a2: 74a7b823 sd a0,1872(a5) - c000b5a6: 74b7bc23 sd a1,1880(a5) - c000b5aa: 77fd lui a5,0xfffff - c000b5ac: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000b5b0: 97a2 add a5,a5,s0 - c000b5b2: 6398 ld a4,0(a5) - c000b5b4: 77fd lui a5,0xfffff - c000b5b6: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000b5ba: 97a2 add a5,a5,s0 - c000b5bc: 6394 ld a3,0(a5) - c000b5be: 862e mv a2,a1 - c000b5c0: 85aa mv a1,a0 - c000b5c2: 8526 mv a0,s1 - c000b5c4: 58d1d0ef jal ra,c0029350 - c000b5c8: 00bd3423 sd a1,8(s10) - c000b5cc: 00ad3023 sd a0,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16287 + c000b66e: 001bc703 lbu a4,1(s7) + c000b672: 050db783 ld a5,80(s11) + c000b676: 010d0a13 addi s4,s10,16 + c000b67a: 0712 slli a4,a4,0x4 + c000b67c: 97ba add a5,a5,a4 + c000b67e: 6388 ld a0,0(a5) + c000b680: 678c ld a1,8(a5) + c000b682: 002b8913 addi s2,s7,2 + c000b686: 8d6fb0ef jal ra,c000675c + c000b68a: f8040793 addi a5,s0,-128 + c000b68e: 97ce add a5,a5,s3 + c000b690: 74a7b823 sd a0,1872(a5) + c000b694: 74b7bc23 sd a1,1880(a5) + c000b698: 77fd lui a5,0xfffff + c000b69a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000b69e: 97a2 add a5,a5,s0 + c000b6a0: 6398 ld a4,0(a5) + c000b6a2: 77fd lui a5,0xfffff + c000b6a4: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000b6a8: 97a2 add a5,a5,s0 + c000b6aa: 6394 ld a3,0(a5) + c000b6ac: 862e mv a2,a1 + c000b6ae: 85aa mv a1,a0 + c000b6b0: 8526 mv a0,s1 + c000b6b2: 66f1d0ef jal ra,c0029520 + c000b6b6: 00bd3423 sd a1,8(s10) + c000b6ba: 00ad3023 sd a0,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16295 if (unlikely(JS_IsException(sp[-1]))) - c000b5d0: 2581 sext.w a1,a1 - c000b5d2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16286 + c000b6be: 2581 sext.w a1,a1 + c000b6c0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16294 *sp++ = js_closure(ctx, JS_DupValue(ctx, b->cpool[*pc++]), var_refs, sf); - c000b5d4: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16287 + c000b6c2: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16295 if (unlikely(JS_IsException(sp[-1]))) - c000b5d6: eaf591e3 bne a1,a5,c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18614 + c000b6c4: eaf591e3 bne a1,a5,c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18622 if (is_backtrace_needed(ctx, rt->current_exception)) { - c000b5da: 77fd lui a5,0xfffff - c000b5dc: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b5e0: 97a2 add a5,a5,s0 - c000b5e2: 639c ld a5,0(a5) + c000b6c8: 77fd lui a5,0xfffff + c000b6ca: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b6ce: 97a2 add a5,a5,s0 + c000b6d0: 639c ld a5,0(a5) is_backtrace_needed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6669 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6677 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c000b5e4: 56fd li a3,-1 - c000b5e6: 73f8 ld a4,224(a5) - c000b5e8: 77fd lui a5,0xfffff - c000b5ea: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b5ee: 97a2 add a5,a5,s0 - c000b5f0: 639c ld a5,0(a5) - c000b5f2: ece43023 sd a4,-320(s0) - c000b5f6: 77fc ld a5,232(a5) - c000b5f8: ecf43423 sd a5,-312(s0) - c000b5fc: 2781 sext.w a5,a5 - c000b5fe: 06d79563 bne a5,a3,c000b668 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6672 + c000b6d2: 56fd li a3,-1 + c000b6d4: 73f8 ld a4,224(a5) + c000b6d6: 77fd lui a5,0xfffff + c000b6d8: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b6dc: 97a2 add a5,a5,s0 + c000b6de: 639c ld a5,0(a5) + c000b6e0: ece43023 sd a4,-320(s0) + c000b6e4: 77fc ld a5,232(a5) + c000b6e6: ecf43423 sd a5,-312(s0) + c000b6ea: 2781 sext.w a5,a5 + c000b6ec: 06d79563 bne a5,a3,c000b756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6680 if (p->class_id != JS_CLASS_ERROR) - c000b602: 00675683 lhu a3,6(a4) - c000b606: 478d li a5,3 - c000b608: 06f69063 bne a3,a5,c000b668 + c000b6f0: 00675683 lhu a3,6(a4) + c000b6f4: 478d li a5,3 + c000b6f6: 06f69063 bne a3,a5,c000b756 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000b60c: 6f18 ld a4,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000b6fa: 6f18 ld a4,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000b60e: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000b6fc: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000b610: 03600613 li a2,54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000b6fe: 03600613 li a2,54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000b614: 531c lw a5,32(a4) - c000b616: 0367f793 andi a5,a5,54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000b702: 531c lw a5,32(a4) + c000b704: 0367f793 andi a5,a5,54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000b61a: 0785 addi a5,a5,1 - c000b61c: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000b708: 0785 addi a5,a5,1 + c000b70a: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000b620: 040006b7 lui a3,0x4000 - c000b624: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000b70e: 040006b7 lui a3,0x4000 + c000b712: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000b626: 97ba add a5,a5,a4 - c000b628: 0007e783 lwu a5,0(a5) + c000b714: 97ba add a5,a5,a4 + c000b716: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000b62c: 04070713 addi a4,a4,64 + c000b71a: 04070713 addi a4,a4,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000b630: c399 beqz a5,c000b636 - c000b632: 0ca0606f j c00116fc + c000b71e: c399 beqz a5,c000b724 + c000b720: 0ca0606f j c00117ea JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18626 sf->cur_pc = pc; - c000b636: 77fd lui a5,0xfffff - c000b638: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18619 + c000b724: 77fd lui a5,0xfffff + c000b726: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18627 build_backtrace(ctx, rt->current_exception, NULL, 0, 0); - c000b63c: 767d lui a2,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18618 + c000b72a: 767d lui a2,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18626 sf->cur_pc = pc; - c000b63e: 97a2 add a5,a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18619 + c000b72c: 97a2 add a5,a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18627 build_backtrace(ctx, rt->current_exception, NULL, 0, 0); - c000b640: 64860613 addi a2,a2,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18618 + c000b72e: 64860613 addi a2,a2,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18626 sf->cur_pc = pc; - c000b644: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18619 + c000b732: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18627 build_backtrace(ctx, rt->current_exception, NULL, 0, 0); - c000b646: 9622 add a2,a2,s0 - c000b648: 6210 ld a2,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18618 + c000b734: 9622 add a2,a2,s0 + c000b736: 6210 ld a2,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18626 sf->cur_pc = pc; - c000b64a: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18619 + c000b738: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18627 build_backtrace(ctx, rt->current_exception, NULL, 0, 0); - c000b64e: 4701 li a4,0 - c000b650: 726c ld a1,224(a2) - c000b652: 767d lui a2,0xfffff - c000b654: 64860613 addi a2,a2,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b658: 9622 add a2,a2,s0 - c000b65a: 6210 ld a2,0(a2) - c000b65c: 4781 li a5,0 - c000b65e: 4681 li a3,0 - c000b660: 7670 ld a2,232(a2) - c000b662: 8526 mv a0,s1 - c000b664: 3eb130ef jal ra,c001f24e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18621 + c000b73c: 4701 li a4,0 + c000b73e: 726c ld a1,224(a2) + c000b740: 767d lui a2,0xfffff + c000b742: 64860613 addi a2,a2,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b746: 9622 add a2,a2,s0 + c000b748: 6210 ld a2,0(a2) + c000b74a: 4781 li a5,0 + c000b74c: 4681 li a3,0 + c000b74e: 7670 ld a2,232(a2) + c000b750: 8526 mv a0,s1 + c000b752: 4cd130ef jal ra,c001f41e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18629 if (!JS_IsUncatchableError(ctx, rt->current_exception)) { - c000b668: 77fd lui a5,0xfffff - c000b66a: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b66e: 97a2 add a5,a5,s0 - c000b670: 639c ld a5,0(a5) + c000b756: 77fd lui a5,0xfffff + c000b758: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b75c: 97a2 add a5,a5,s0 + c000b75e: 639c ld a5,0(a5) JS_IsUncatchableError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9877 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9885 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000b672: 56fd li a3,-1 - c000b674: 73f8 ld a4,224(a5) - c000b676: 77fd lui a5,0xfffff - c000b678: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000b67c: 97a2 add a5,a5,s0 - c000b67e: 639c ld a5,0(a5) - c000b680: b0e43023 sd a4,-1280(s0) - c000b684: 77fc ld a5,232(a5) - c000b686: b0f43423 sd a5,-1272(s0) - c000b68a: 2781 sext.w a5,a5 - c000b68c: 00d78463 beq a5,a3,c000b694 - c000b690: 1320606f j c00117c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9880 + c000b760: 56fd li a3,-1 + c000b762: 73f8 ld a4,224(a5) + c000b764: 77fd lui a5,0xfffff + c000b766: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000b76a: 97a2 add a5,a5,s0 + c000b76c: 639c ld a5,0(a5) + c000b76e: b0e43023 sd a4,-1280(s0) + c000b772: 77fc ld a5,232(a5) + c000b774: b0f43423 sd a5,-1272(s0) + c000b778: 2781 sext.w a5,a5 + c000b77a: 00d78463 beq a5,a3,c000b782 + c000b77e: 1320606f j c00118b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9888 return p->class_id == JS_CLASS_ERROR && p->is_uncatchable_error; - c000b694: 6318 ld a4,0(a4) - c000b696: 57e5 li a5,-7 - c000b698: 17b6 slli a5,a5,0x2d - c000b69a: 8f7d and a4,a4,a5 + c000b782: 6318 ld a4,0(a4) + c000b784: 57e5 li a5,-7 + c000b786: 17b6 slli a5,a5,0x2d + c000b788: 8f7d and a4,a4,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18621 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18629 if (!JS_IsUncatchableError(ctx, rt->current_exception)) { - c000b69c: 47e5 li a5,25 - c000b69e: 17b6 slli a5,a5,0x2d - c000b6a0: 00f70463 beq a4,a5,c000b6a8 - c000b6a4: 11e0606f j c00117c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18641 + c000b78a: 47e5 li a5,25 + c000b78c: 17b6 slli a5,a5,0x2d + c000b78e: 00f70463 beq a4,a5,c000b796 + c000b792: 11e0606f j c00118b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18649 ret_val = JS_EXCEPTION; - c000b6a8: 77fd lui a5,0xfffff - c000b6aa: f8040713 addi a4,s0,-128 - c000b6ae: 97ba add a5,a5,a4 - c000b6b0: 7207b023 sd zero,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c000b6b4: 7207b423 sd zero,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18645 + c000b796: 77fd lui a5,0xfffff + c000b798: f8040713 addi a4,s0,-128 + c000b79c: 97ba add a5,a5,a4 + c000b79e: 7207b023 sd zero,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c000b7a2: 7207b423 sd zero,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18653 if (b->func_kind != JS_FUNC_NORMAL) { - c000b6b8: 019dc783 lbu a5,25(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18641 + c000b7a6: 019dc783 lbu a5,25(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18649 ret_val = JS_EXCEPTION; - c000b6bc: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18645 + c000b7aa: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18653 if (b->func_kind != JS_FUNC_NORMAL) { - c000b6be: 0307f793 andi a5,a5,48 - c000b6c2: 5a0784e3 beqz a5,c000c46a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18646 + c000b7ac: 0307f793 andi a5,a5,48 + c000b7b0: 5a0784e3 beqz a5,c000c558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18654 done_generator: - c000b6c6: 6a30506f j c0011568 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16291 + c000b7b4: 6a30506f j c0011656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16299 *sp++ = JS_AtomToString(ctx, JS_ATOM_empty_string); - c000b6ca: 02f00593 li a1,47 - c000b6ce: 8526 mv a0,s1 - c000b6d0: 46c0e0ef jal ra,c0019b3c - c000b6d4: 010d0a13 addi s4,s10,16 - c000b6d8: 00ad3023 sd a0,0(s10) - c000b6dc: 00bd3423 sd a1,8(s10) - c000b6e0: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16292 + c000b7b8: 02f00593 li a1,47 + c000b7bc: 8526 mv a0,s1 + c000b7be: 54e0e0ef jal ra,c0019d0c + c000b7c2: 010d0a13 addi s4,s10,16 + c000b7c6: 00ad3023 sd a0,0(s10) + c000b7ca: 00bd3423 sd a1,8(s10) + c000b7ce: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 BREAK; - c000b6e2: bb59 j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16297 + c000b7d0: bb59 j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16305 val = JS_GetProperty(ctx, sp[-1], JS_ATOM_length); - c000b6e4: ff0d3703 ld a4,-16(s10) + c000b7d2: ff0d3703 ld a4,-16(s10) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 JSAtom prop, JSValueConst receiver, @@ -32288,97405 +32384,97507 @@ static js_force_inline JSValue JS_GetProperty(JSContext *ctx, JSValueConst this_ JSAtom prop) { return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000b6e8: 4801 li a6,0 - c000b6ea: 03000693 li a3,48 - c000b6ee: eee43823 sd a4,-272(s0) - c000b6f2: ff8d3783 ld a5,-8(s10) - c000b6f6: 85ba mv a1,a4 - c000b6f8: 8526 mv a0,s1 - c000b6fa: 863e mv a2,a5 - c000b6fc: eef43c23 sd a5,-264(s0) - c000b700: 142060ef jal ra,c0011842 - c000b704: 84b43c23 sd a1,-1960(s0) - c000b708: ecb43c23 sd a1,-296(s0) - c000b70c: 84a43823 sd a0,-1968(s0) - c000b710: eca43823 sd a0,-304(s0) + c000b7d6: 4801 li a6,0 + c000b7d8: 03000693 li a3,48 + c000b7dc: eee43823 sd a4,-272(s0) + c000b7e0: ff8d3783 ld a5,-8(s10) + c000b7e4: 85ba mv a1,a4 + c000b7e6: 8526 mv a0,s1 + c000b7e8: 863e mv a2,a5 + c000b7ea: eef43c23 sd a5,-264(s0) + c000b7ee: 142060ef jal ra,c0011930 + c000b7f2: 84b43c23 sd a1,-1960(s0) + c000b7f6: ecb43c23 sd a1,-296(s0) + c000b7fa: 84a43823 sd a0,-1968(s0) + c000b7fe: eca43823 sd a0,-304(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16306 if (unlikely(JS_IsException(val))) - c000b714: 2581 sext.w a1,a1 - c000b716: 4799 li a5,6 - c000b718: ecf581e3 beq a1,a5,c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c000b802: 2581 sext.w a1,a1 + c000b804: 4799 li a5,6 + c000b806: ecf581e3 beq a1,a5,c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c000b71c: ff0d3583 ld a1,-16(s10) - c000b720: ff8d3603 ld a2,-8(s10) - c000b724: 8526 mv a0,s1 - c000b726: c12fc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16301 + c000b80a: ff0d3583 ld a1,-16(s10) + c000b80e: ff8d3603 ld a2,-8(s10) + c000b812: 8526 mv a0,s1 + c000b814: c12fc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16309 sp[-1] = val; - c000b72a: ed043783 ld a5,-304(s0) - c000b72e: fefd3823 sd a5,-16(s10) - c000b732: ed843783 ld a5,-296(s0) - c000b736: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16303 + c000b818: ed043783 ld a5,-304(s0) + c000b81c: fefd3823 sd a5,-16(s10) + c000b820: ed843783 ld a5,-296(s0) + c000b824: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16311 BREAK; - c000b73a: bb3d j c000b478 + c000b828: bb3d j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000b73c: 002bc783 lbu a5,2(s7) - c000b740: 001bc583 lbu a1,1(s7) + c000b82a: 002bc783 lbu a5,2(s7) + c000b82e: 001bc583 lbu a1,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16314 *sp++ = JS_AtomToValue(ctx, get_u32(pc)); - c000b744: 8526 mv a0,s1 + c000b832: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b746: 07a2 slli a5,a5,0x8 - c000b748: 8fcd or a5,a5,a1 - c000b74a: 003bc583 lbu a1,3(s7) + c000b834: 07a2 slli a5,a5,0x8 + c000b836: 8fcd or a5,a5,a1 + c000b838: 003bc583 lbu a1,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16306 - c000b74e: 010d0a13 addi s4,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16314 + c000b83c: 010d0a13 addi s4,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16315 pc += 4; - c000b752: 005b8913 addi s2,s7,5 + c000b840: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000b756: 05c2 slli a1,a1,0x10 - c000b758: 8fcd or a5,a5,a1 - c000b75a: 004bc583 lbu a1,4(s7) - c000b75e: 05e2 slli a1,a1,0x18 - c000b760: 8ddd or a1,a1,a5 + c000b844: 05c2 slli a1,a1,0x10 + c000b846: 8fcd or a5,a5,a1 + c000b848: 004bc583 lbu a1,4(s7) + c000b84c: 05e2 slli a1,a1,0x18 + c000b84e: 8ddd or a1,a1,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16314 *sp++ = JS_AtomToValue(ctx, get_u32(pc)); - c000b762: 2581 sext.w a1,a1 - c000b764: 3ce0e0ef jal ra,c0019b32 - c000b768: 00ad3023 sd a0,0(s10) - c000b76c: 00bd3423 sd a1,8(s10) - c000b770: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 + c000b850: 2581 sext.w a1,a1 + c000b852: 4b00e0ef jal ra,c0019d02 + c000b856: 00ad3023 sd a0,0(s10) + c000b85a: 00bd3423 sd a1,8(s10) + c000b85e: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16316 BREAK; - c000b772: b319 j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16310 + c000b860: b319 j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16318 *sp++ = JS_UNDEFINED; - c000b774: 478d li a5,3 - c000b776: 000d3023 sd zero,0(s10) - c000b77a: 00fd3423 sd a5,8(s10) - c000b77e: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16311 + c000b862: 478d li a5,3 + c000b864: 000d3023 sd zero,0(s10) + c000b868: 00fd3423 sd a5,8(s10) + c000b86c: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16319 BREAK; - c000b780: b9e5 j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16313 + c000b86e: b9e5 j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16321 *sp++ = JS_NULL; - c000b782: 4789 li a5,2 - c000b784: 000d3023 sd zero,0(s10) - c000b788: 00fd3423 sd a5,8(s10) - c000b78c: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16314 + c000b870: 4789 li a5,2 + c000b872: 000d3023 sd zero,0(s10) + c000b876: 00fd3423 sd a5,8(s10) + c000b87a: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16322 BREAK; - c000b78e: b1ed j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16319 + c000b87c: b1ed j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16327 if (!(b->js_mode & JS_MODE_STRICT)) { - c000b790: 018dc783 lbu a5,24(s11) - c000b794: 8b85 andi a5,a5,1 - c000b796: e3b5 bnez a5,c000b7fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16320 + c000b87e: 018dc783 lbu a5,24(s11) + c000b882: 8b85 andi a5,a5,1 + c000b884: e3b5 bnez a5,c000b8e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16328 uint32_t tag = JS_VALUE_GET_TAG(this_obj); - c000b798: f8040793 addi a5,s0,-128 - c000b79c: 01378733 add a4,a5,s3 - c000b7a0: 70873603 ld a2,1800(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16321 + c000b886: f8040793 addi a5,s0,-128 + c000b88a: 01378733 add a4,a5,s3 + c000b88e: 70873603 ld a2,1800(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16329 if (likely(tag == JS_TAG_OBJECT)) - c000b7a4: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16320 + c000b892: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16328 uint32_t tag = JS_VALUE_GET_TAG(this_obj); - c000b7a6: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16321 + c000b894: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16329 if (likely(tag == JS_TAG_OBJECT)) - c000b7aa: 04d78863 beq a5,a3,c000b7fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16323 + c000b898: 04d78863 beq a5,a3,c000b8e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16331 if (tag == JS_TAG_NULL || tag == JS_TAG_UNDEFINED) { - c000b7ae: 37f9 addiw a5,a5,-2 - c000b7b0: 4685 li a3,1 - c000b7b2: 00f6ed63 bltu a3,a5,c000b7cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16324 - val = JS_DupValue(ctx, ctx->global_obj); - c000b7b6: 1684b503 ld a0,360(s1) - c000b7ba: 1704b583 ld a1,368(s1) + c000b89c: 37f9 addiw a5,a5,-2 + c000b89e: 4685 li a3,1 + c000b8a0: 00f6ed63 bltu a3,a5,c000b8ba /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16332 + val = JS_DupValue(ctx, ctx->global_obj); + c000b8a4: 1684b503 ld a0,360(s1) + c000b8a8: 1704b583 ld a1,368(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16340 val = JS_DupValue(ctx, this_obj); - c000b7be: eb1fa0ef jal ra,c000666e - c000b7c2: eea43823 sd a0,-272(s0) - c000b7c6: eeb43c23 sd a1,-264(s0) - c000b7ca: a831 j c000b7e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16326 + c000b8ac: eb1fa0ef jal ra,c000675c + c000b8b0: eea43823 sd a0,-272(s0) + c000b8b4: eeb43c23 sd a1,-264(s0) + c000b8b8: a831 j c000b8d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16334 val = JS_ToObject(ctx, this_obj); - c000b7cc: 70073583 ld a1,1792(a4) - c000b7d0: 8526 mv a0,s1 - c000b7d2: 61b1c0ef jal ra,c00285ec - c000b7d6: eeb43c23 sd a1,-264(s0) - c000b7da: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16327 + c000b8ba: 70073583 ld a1,1792(a4) + c000b8be: 8526 mv a0,s1 + c000b8c0: 6fd1c0ef jal ra,c00287bc + c000b8c4: eeb43c23 sd a1,-264(s0) + c000b8c8: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16335 if (JS_IsException(val)) - c000b7de: 2581 sext.w a1,a1 - c000b7e0: 4799 li a5,6 - c000b7e2: def58ce3 beq a1,a5,c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16334 (discriminator 3) + c000b8cc: 2581 sext.w a1,a1 + c000b8ce: 4799 li a5,6 + c000b8d0: def58ce3 beq a1,a5,c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16342 (discriminator 3) *sp++ = val; - c000b7e6: ef043783 ld a5,-272(s0) - c000b7ea: 0d41 addi s10,s10,16 - c000b7ec: fefd3823 sd a5,-16(s10) - c000b7f0: ef843783 ld a5,-264(s0) - c000b7f4: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16336 (discriminator 3) + c000b8d4: ef043783 ld a5,-272(s0) + c000b8d8: 0d41 addi s10,s10,16 + c000b8da: fefd3823 sd a5,-16(s10) + c000b8de: ef843783 ld a5,-264(s0) + c000b8e2: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16344 (discriminator 3) BREAK; - c000b7f8: b141 j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16332 + c000b8e6: b141 j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16340 val = JS_DupValue(ctx, this_obj); - c000b7fa: f8040793 addi a5,s0,-128 - c000b7fe: 97ce add a5,a5,s3 - c000b800: 7007b503 ld a0,1792(a5) - c000b804: 7087b583 ld a1,1800(a5) - c000b808: bf5d j c000b7be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16338 + c000b8e8: f8040793 addi a5,s0,-128 + c000b8ec: 97ce add a5,a5,s3 + c000b8ee: 7007b503 ld a0,1792(a5) + c000b8f2: 7087b583 ld a1,1800(a5) + c000b8f6: bf5d j c000b8ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16346 *sp++ = JS_FALSE; - c000b80a: 4785 li a5,1 - c000b80c: 000d3023 sd zero,0(s10) - c000b810: 00fd3423 sd a5,8(s10) - c000b814: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16339 + c000b8f8: 4785 li a5,1 + c000b8fa: 000d3023 sd zero,0(s10) + c000b8fe: 00fd3423 sd a5,8(s10) + c000b902: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16347 BREAK; - c000b816: b18d j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16341 + c000b904: b18d j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16349 *sp++ = JS_TRUE; - c000b818: 4785 li a5,1 - c000b81a: 00fd3023 sd a5,0(s10) - c000b81e: 00fd3423 sd a5,8(s10) - c000b822: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16342 + c000b906: 4785 li a5,1 + c000b908: 00fd3023 sd a5,0(s10) + c000b90c: 00fd3423 sd a5,8(s10) + c000b910: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16350 BREAK; - c000b824: b991 j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16344 + c000b912: b991 j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16352 *sp++ = JS_NewObject(ctx); - c000b826: 8526 mv a0,s1 - c000b828: 5600b0ef jal ra,c0016d88 - c000b82c: 00bd3423 sd a1,8(s10) - c000b830: 010d0a13 addi s4,s10,16 - c000b834: 00ad3023 sd a0,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16345 + c000b914: 8526 mv a0,s1 + c000b916: 6420b0ef jal ra,c0016f58 + c000b91a: 00bd3423 sd a1,8(s10) + c000b91e: 010d0a13 addi s4,s10,16 + c000b922: 00ad3023 sd a0,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16353 if (unlikely(JS_IsException(sp[-1]))) - c000b838: 2581 sext.w a1,a1 - c000b83a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16344 + c000b926: 2581 sext.w a1,a1 + c000b928: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16352 *sp++ = JS_NewObject(ctx); - c000b83c: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16345 + c000b92a: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16353 if (unlikely(JS_IsException(sp[-1]))) - c000b83e: c2f59de3 bne a1,a5,c000b478 - c000b842: bb61 j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16350 + c000b92c: c2f59de3 bne a1,a5,c000b566 + c000b930: bb61 j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16358 int arg = *pc++; - c000b844: 001bc703 lbu a4,1(s7) - c000b848: 4799 li a5,6 - c000b84a: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16351 + c000b932: 001bc703 lbu a4,1(s7) + c000b936: 4799 li a5,6 + c000b938: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16359 switch(arg) { - c000b84e: 44e7e863 bltu a5,a4,c000bc9e - c000b852: 00271793 slli a5,a4,0x2 - c000b856: 00052717 auipc a4,0x52 - c000b85a: ee270713 addi a4,a4,-286 # c005d738 - c000b85e: 97ba add a5,a5,a4 - c000b860: 439c lw a5,0(a5) - c000b862: 010d0c93 addi s9,s10,16 - c000b866: 97ba add a5,a5,a4 - c000b868: 8782 jr a5 + c000b93c: 44e7e863 bltu a5,a4,c000bd8c + c000b940: 00271793 slli a5,a4,0x2 + c000b944: 00052717 auipc a4,0x52 + c000b948: 02470713 addi a4,a4,36 # c005d968 + c000b94c: 97ba add a5,a5,a4 + c000b94e: 439c lw a5,0(a5) + c000b950: 010d0c93 addi s9,s10,16 + c000b954: 97ba add a5,a5,a4 + c000b956: 8782 jr a5 js_build_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14819 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14827 val = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c000b86a: 60bc ld a5,64(s1) - c000b86c: 46a1 li a3,8 - c000b86e: 8526 mv a0,s1 - c000b870: 6b8c ld a1,16(a5) - c000b872: 6f90 ld a2,24(a5) - c000b874: 7150a0ef jal ra,c0016788 - c000b878: b0a43823 sd a0,-1264(s0) - c000b87c: b0b43c23 sd a1,-1256(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14821 + c000b958: 60bc ld a5,64(s1) + c000b95a: 46a1 li a3,8 + c000b95c: 8526 mv a0,s1 + c000b95e: 6b8c ld a1,16(a5) + c000b960: 6f90 ld a2,24(a5) + c000b962: 7f70a0ef jal ra,c0016958 + c000b966: b0a43823 sd a0,-1264(s0) + c000b96a: b0b43c23 sd a1,-1256(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14829 if (JS_IsException(val)) - c000b880: 0005871b sext.w a4,a1 - c000b884: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14819 + c000b96e: 0005871b sext.w a4,a1 + c000b972: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14827 val = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c000b886: 8aaa mv s5,a0 - c000b888: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14821 + c000b974: 8aaa mv s5,a0 + c000b976: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14829 if (JS_IsException(val)) - c000b88a: 00f71563 bne a4,a5,c000b894 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14852 + c000b978: 00f71563 bne a4,a5,c000b982 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14860 return val; - c000b88e: b5543023 sd s5,-1216(s0) - c000b892: a88d j c000b904 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14826 + c000b97c: b5543023 sd s5,-1216(s0) + c000b980: a88d j c000b9f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14834 pr = add_property(ctx, p, JS_ATOM_length, - c000b894: 85aa mv a1,a0 - c000b896: 468d li a3,3 - c000b898: 03000613 li a2,48 - c000b89c: 8526 mv a0,s1 - c000b89e: 3290a0ef jal ra,c00163c6 + c000b982: 85aa mv a1,a0 + c000b984: 468d li a3,3 + c000b986: 03000613 li a2,48 + c000b98a: 8526 mv a0,s1 + c000b98c: 40b0a0ef jal ra,c0016596 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000b8a2: 77fd lui a5,0xfffff - c000b8a4: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b8a8: 97a2 add a5,a5,s0 - c000b8aa: 639c ld a5,0(a5) - c000b8ac: b2043023 sd zero,-1248(s0) - c000b8b0: ee043c23 sd zero,-264(s0) - c000b8b4: b2f42023 sw a5,-1248(s0) - c000b8b8: b2043783 ld a5,-1248(s0) - c000b8bc: b2043423 sd zero,-1240(s0) - c000b8c0: eef43823 sd a5,-272(s0) + c000b990: 77fd lui a5,0xfffff + c000b992: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b996: 97a2 add a5,a5,s0 + c000b998: 639c ld a5,0(a5) + c000b99a: b2043023 sd zero,-1248(s0) + c000b99e: ee043c23 sd zero,-264(s0) + c000b9a2: b2f42023 sw a5,-1248(s0) + c000b9a6: b2043783 ld a5,-1248(s0) + c000b9aa: b2043423 sd zero,-1240(s0) + c000b9ae: eef43823 sd a5,-272(s0) js_build_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14836 pr->u.value = JS_NewInt32(ctx, argc); - c000b8c4: e11c sd a5,0(a0) - c000b8c6: ef843783 ld a5,-264(s0) - c000b8ca: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14832 + c000b9b2: e11c sd a5,0(a0) + c000b9b4: ef843783 ld a5,-264(s0) + c000b9b8: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14840 if (argc > 0) { - c000b8cc: 77fd lui a5,0xfffff - c000b8ce: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b8d2: 97a2 add a5,a5,s0 - c000b8d4: 639c ld a5,0(a5) - c000b8d6: 10f05063 blez a5,c000b9d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14833 + c000b9ba: 77fd lui a5,0xfffff + c000b9bc: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000b9c0: 97a2 add a5,a5,s0 + c000b9c2: 639c ld a5,0(a5) + c000b9c4: 10f05063 blez a5,c000bac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14841 tab = js_malloc(ctx, sizeof(tab[0]) * argc); - c000b8da: 77fd lui a5,0xfffff - c000b8dc: 5e078793 addi a5,a5,1504 # fffffffffffff5e0 <_ebss+0xffffffff3fefe4ba> - c000b8e0: 97a2 add a5,a5,s0 - c000b8e2: 638c ld a1,0(a5) - c000b8e4: 8526 mv a0,s1 - c000b8e6: 4c01 li s8,0 - c000b8e8: 364090ef jal ra,c0014c4c - c000b8ec: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14834 + c000b9c8: 77fd lui a5,0xfffff + c000b9ca: 5e078793 addi a5,a5,1504 # fffffffffffff5e0 <_ebss+0xffffffff3fefe4ba> + c000b9ce: 97a2 add a5,a5,s0 + c000b9d0: 638c ld a1,0(a5) + c000b9d2: 8526 mv a0,s1 + c000b9d4: 4c01 li s8,0 + c000b9d6: 364090ef jal ra,c0014d3a + c000b9da: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14842 if (!tab) { - c000b8ee: ed1d bnez a0,c000b92c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14835 + c000b9dc: ed1d bnez a0,c000ba1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14843 JS_FreeValue(ctx, val); - c000b8f0: b1043583 ld a1,-1264(s0) - c000b8f4: b1843603 ld a2,-1256(s0) - c000b8f8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14836 + c000b9de: b1043583 ld a1,-1264(s0) + c000b9e2: b1843603 ld a2,-1256(s0) + c000b9e6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14844 return JS_EXCEPTION; - c000b8fa: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14835 + c000b9e8: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14843 JS_FreeValue(ctx, val); - c000b8fc: a3cfc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14836 + c000b9ea: a3cfc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14844 return JS_EXCEPTION; - c000b900: b4043023 sd zero,-1216(s0) - c000b904: b4043783 ld a5,-1216(s0) - c000b908: ef443c23 sd s4,-264(s0) - c000b90c: b5443423 sd s4,-1208(s0) - c000b910: eef43823 sd a5,-272(s0) + c000b9ee: b4043023 sd zero,-1216(s0) + c000b9f2: b4043783 ld a5,-1216(s0) + c000b9f6: ef443c23 sd s4,-264(s0) + c000b9fa: b5443423 sd s4,-1208(s0) + c000b9fe: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16353 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16361 *sp++ = js_build_arguments(ctx, argc, (JSValueConst *)argv); - c000b914: 00fd3023 sd a5,0(s10) - c000b918: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16354 + c000ba02: 00fd3023 sd a5,0(s10) + c000ba06: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16362 if (unlikely(JS_IsException(sp[-1]))) - c000b91c: 2a01 sext.w s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16353 + c000ba0a: 2a01 sext.w s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16361 *sp++ = js_build_arguments(ctx, argc, (JSValueConst *)argv); - c000b91e: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16354 + c000ba0c: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16362 if (unlikely(JS_IsException(sp[-1]))) - c000b922: 4799 li a5,6 - c000b924: 12fa1363 bne s4,a5,c000ba4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16355 (discriminator 1) + c000ba10: 4799 li a5,6 + c000ba12: 12fa1363 bne s4,a5,c000bb38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16363 (discriminator 1) goto exception; - c000b928: 8d66 mv s10,s9 - c000b92a: b945 j c000b5da + c000ba16: 8d66 mv s10,s9 + c000ba18: b945 j c000b6c8 js_build_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14847 tab[i] = JS_DupValue(ctx, argv[i]); - c000b92c: 601c ld a5,0(s0) - c000b92e: 004c1b93 slli s7,s8,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14838 + c000ba1a: 601c ld a5,0(s0) + c000ba1c: 004c1b93 slli s7,s8,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14846 for(i = 0; i < argc; i++) { - c000b932: 0c05 addi s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14839 + c000ba20: 0c05 addi s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14847 tab[i] = JS_DupValue(ctx, argv[i]); - c000b934: 97de add a5,a5,s7 - c000b936: 6388 ld a0,0(a5) - c000b938: 678c ld a1,8(a5) - c000b93a: 9bda add s7,s7,s6 - c000b93c: d33fa0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14838 + c000ba22: 97de add a5,a5,s7 + c000ba24: 6388 ld a0,0(a5) + c000ba26: 678c ld a1,8(a5) + c000ba28: 9bda add s7,s7,s6 + c000ba2a: d33fa0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14846 for(i = 0; i < argc; i++) { - c000b940: 777d lui a4,0xfffff - c000b942: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b946: 9722 add a4,a4,s0 - c000b948: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14839 + c000ba2e: 777d lui a4,0xfffff + c000ba30: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000ba34: 9722 add a4,a4,s0 + c000ba36: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14847 tab[i] = JS_DupValue(ctx, argv[i]); - c000b94a: 00abb023 sd a0,0(s7) - c000b94e: 00bbb423 sd a1,8(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14838 + c000ba38: 00abb023 sd a0,0(s7) + c000ba3c: 00bbb423 sd a1,8(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14846 for(i = 0; i < argc; i++) { - c000b952: 000c079b sext.w a5,s8 - c000b956: fce7cbe3 blt a5,a4,c000b92c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14843 + c000ba40: 000c079b sext.w a5,s8 + c000ba44: fce7cbe3 blt a5,a4,c000ba1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14851 p->u.array.count = argc; - c000b95a: 77fd lui a5,0xfffff - c000b95c: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b960: 97a2 add a5,a5,s0 - c000b962: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14842 + c000ba48: 77fd lui a5,0xfffff + c000ba4a: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000ba4e: 97a2 add a5,a5,s0 + c000ba50: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14850 p->u.array.u.values = tab; - c000b964: 036abc23 sd s6,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14843 + c000ba52: 036abc23 sd s6,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14851 p->u.array.count = argc; - c000b968: 04faa023 sw a5,64(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14845 + c000ba56: 04faa023 sw a5,64(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14853 JS_DefinePropertyValue(ctx, val, JS_ATOM_Symbol_iterator, - c000b96c: 1384b503 ld a0,312(s1) - c000b970: 1404b583 ld a1,320(s1) - c000b974: cfbfa0ef jal ra,c000666e - c000b978: b1843603 ld a2,-1256(s0) - c000b97c: 87ae mv a5,a1 - c000b97e: b2b43c23 sd a1,-1224(s0) - c000b982: b1043583 ld a1,-1264(s0) - c000b986: 872a mv a4,a0 - c000b988: b2a43823 sd a0,-1232(s0) - c000b98c: 480d li a6,3 - c000b98e: 0cc00693 li a3,204 - c000b992: 8526 mv a0,s1 - c000b994: 622070ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14849 + c000ba5a: 1384b503 ld a0,312(s1) + c000ba5e: 1404b583 ld a1,320(s1) + c000ba62: cfbfa0ef jal ra,c000675c + c000ba66: b1843603 ld a2,-1256(s0) + c000ba6a: 87ae mv a5,a1 + c000ba6c: b2b43c23 sd a1,-1224(s0) + c000ba70: b1043583 ld a1,-1264(s0) + c000ba74: 872a mv a4,a0 + c000ba76: b2a43823 sd a0,-1232(s0) + c000ba7a: 480d li a6,3 + c000ba7c: 0cc00693 li a3,204 + c000ba80: 8526 mv a0,s1 + c000ba82: 622070ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14857 JS_DefineProperty(ctx, val, JS_ATOM_callee, JS_UNDEFINED, - c000b998: 478d li a5,3 - c000b99a: eef43c23 sd a5,-264(s0) - c000b99e: 6789 lui a5,0x2 - c000b9a0: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> - c000b9a4: ee043823 sd zero,-272(s0) - c000b9a8: e83e sd a5,16(sp) - c000b9aa: 1484b783 ld a5,328(s1) - c000b9ae: b1043583 ld a1,-1264(s0) - c000b9b2: b1843603 ld a2,-1256(s0) - c000b9b6: e03e sd a5,0(sp) - c000b9b8: 1504b783 ld a5,336(s1) - c000b9bc: 4701 li a4,0 - c000b9be: 04f00693 li a3,79 - c000b9c2: e43e sd a5,8(sp) - c000b9c4: 1484b803 ld a6,328(s1) - c000b9c8: 1504b883 ld a7,336(s1) - c000b9cc: 478d li a5,3 - c000b9ce: 8526 mv a0,s1 - c000b9d0: 713060ef jal ra,c00128e2 - c000b9d4: bd6d j c000b88e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14831 + c000ba86: 478d li a5,3 + c000ba88: eef43c23 sd a5,-264(s0) + c000ba8c: 6789 lui a5,0x2 + c000ba8e: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> + c000ba92: ee043823 sd zero,-272(s0) + c000ba96: e83e sd a5,16(sp) + c000ba98: 1484b783 ld a5,328(s1) + c000ba9c: b1043583 ld a1,-1264(s0) + c000baa0: b1843603 ld a2,-1256(s0) + c000baa4: e03e sd a5,0(sp) + c000baa6: 1504b783 ld a5,336(s1) + c000baaa: 4701 li a4,0 + c000baac: 04f00693 li a3,79 + c000bab0: e43e sd a5,8(sp) + c000bab2: 1484b803 ld a6,328(s1) + c000bab6: 1504b883 ld a7,336(s1) + c000baba: 478d li a5,3 + c000babc: 8526 mv a0,s1 + c000babe: 713060ef jal ra,c00129d0 + c000bac2: bd6d j c000b97c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14839 tab = NULL; - c000b9d6: 4b01 li s6,0 - c000b9d8: b749 j c000b95a + c000bac4: 4b01 li s6,0 + c000bac6: b749 j c000ba48 JS_CallInternal(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c000b9da: 777d lui a4,0xfffff - c000b9dc: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b9e0: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16358 + c000bac8: 777d lui a4,0xfffff + c000baca: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000bace: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16366 *sp++ = js_build_mapped_arguments(ctx, argc, (JSValueConst *)argv, - c000b9e2: 040dd783 lhu a5,64(s11) - c000b9e6: 6318 ld a4,0(a4) - c000b9e8: 8b3e mv s6,a5 - c000b9ea: 00f75863 bge a4,a5,c000b9fa - c000b9ee: 77fd lui a5,0xfffff - c000b9f0: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000b9f4: 97a2 add a5,a5,s0 - c000b9f6: 0007ab03 lw s6,0(a5) + c000bad0: 040dd783 lhu a5,64(s11) + c000bad4: 6318 ld a4,0(a4) + c000bad6: 8b3e mv s6,a5 + c000bad8: 00f75863 bge a4,a5,c000bae8 + c000badc: 77fd lui a5,0xfffff + c000bade: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000bae2: 97a2 add a5,a5,s0 + c000bae4: 0007ab03 lw s6,0(a5) js_build_mapped_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14876 val = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c000b9fa: 60bc ld a5,64(s1) - c000b9fc: 46a5 li a3,9 - c000b9fe: 8526 mv a0,s1 - c000ba00: 6b8c ld a1,16(a5) - c000ba02: 6f90 ld a2,24(a5) - c000ba04: 2b01 sext.w s6,s6 - c000ba06: 5830a0ef jal ra,c0016788 - c000ba0a: b4a43823 sd a0,-1200(s0) - c000ba0e: b4b43c23 sd a1,-1192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14870 + c000bae8: 60bc ld a5,64(s1) + c000baea: 46a5 li a3,9 + c000baec: 8526 mv a0,s1 + c000baee: 6b8c ld a1,16(a5) + c000baf0: 6f90 ld a2,24(a5) + c000baf2: 2b01 sext.w s6,s6 + c000baf4: 6650a0ef jal ra,c0016958 + c000baf8: b4a43823 sd a0,-1200(s0) + c000bafc: b4b43c23 sd a1,-1192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14878 if (JS_IsException(val)) - c000ba12: 0005871b sext.w a4,a1 - c000ba16: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14868 + c000bb00: 0005871b sext.w a4,a1 + c000bb04: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14876 val = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c000ba18: 8a2a mv s4,a0 - c000ba1a: 8aae mv s5,a1 - c000ba1c: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14870 + c000bb06: 8a2a mv s4,a0 + c000bb08: 8aae mv s5,a1 + c000bb0a: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14878 if (JS_IsException(val)) - c000ba1e: 02f71863 bne a4,a5,c000ba4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14908 + c000bb0c: 02f71863 bne a4,a5,c000bb3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14916 return val; - c000ba22: bb443023 sd s4,-1120(s0) - c000ba26: ba043783 ld a5,-1120(s0) - c000ba2a: ef743c23 sd s7,-264(s0) - c000ba2e: bb743423 sd s7,-1112(s0) - c000ba32: eef43823 sd a5,-272(s0) + c000bb10: bb443023 sd s4,-1120(s0) + c000bb14: ba043783 ld a5,-1120(s0) + c000bb18: ef743c23 sd s7,-264(s0) + c000bb1c: bb743423 sd s7,-1112(s0) + c000bb20: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16366 *sp++ = js_build_mapped_arguments(ctx, argc, (JSValueConst *)argv, - c000ba36: 00fd3023 sd a5,0(s10) - c000ba3a: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16360 + c000bb24: 00fd3023 sd a5,0(s10) + c000bb28: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16368 if (unlikely(JS_IsException(sp[-1]))) - c000ba3e: 2b81 sext.w s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16358 + c000bb2c: 2b81 sext.w s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16366 *sp++ = js_build_mapped_arguments(ctx, argc, (JSValueConst *)argv, - c000ba40: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16360 + c000bb2e: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16368 if (unlikely(JS_IsException(sp[-1]))) - c000ba44: 4799 li a5,6 - c000ba46: eefb81e3 beq s7,a5,c000b928 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16393 + c000bb32: 4799 li a5,6 + c000bb34: eefb81e3 beq s7,a5,c000ba16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16401 BREAK; - c000ba4a: 8d66 mv s10,s9 - c000ba4c: b435 j c000b478 + c000bb38: 8d66 mv s10,s9 + c000bb3a: b435 j c000b566 js_build_mapped_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14875 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14883 pr = add_property(ctx, p, JS_ATOM_length, - c000ba4e: 85aa mv a1,a0 - c000ba50: 468d li a3,3 - c000ba52: 03000613 li a2,48 - c000ba56: 8526 mv a0,s1 - c000ba58: 16f0a0ef jal ra,c00163c6 + c000bb3c: 85aa mv a1,a0 + c000bb3e: 468d li a3,3 + c000bb40: 03000613 li a2,48 + c000bb44: 8526 mv a0,s1 + c000bb46: 2510a0ef jal ra,c0016596 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000ba5c: 77fd lui a5,0xfffff - c000ba5e: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000ba62: 97a2 add a5,a5,s0 - c000ba64: 639c ld a5,0(a5) - c000ba66: b6043023 sd zero,-1184(s0) - c000ba6a: ee043c23 sd zero,-264(s0) - c000ba6e: b6f42023 sw a5,-1184(s0) - c000ba72: b6043783 ld a5,-1184(s0) - c000ba76: b6043423 sd zero,-1176(s0) + c000bb4a: 77fd lui a5,0xfffff + c000bb4c: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000bb50: 97a2 add a5,a5,s0 + c000bb52: 639c ld a5,0(a5) + c000bb54: b6043023 sd zero,-1184(s0) + c000bb58: ee043c23 sd zero,-264(s0) + c000bb5c: b6f42023 sw a5,-1184(s0) + c000bb60: b6043783 ld a5,-1184(s0) + c000bb64: b6043423 sd zero,-1176(s0) js_build_mapped_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14879 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14887 for(i = 0; i < arg_count; i++) { - c000ba7a: 4c01 li s8,0 - c000ba7c: eef43823 sd a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14877 + c000bb68: 4c01 li s8,0 + c000bb6a: eef43823 sd a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14885 pr->u.value = JS_NewInt32(ctx, argc); - c000ba80: e11c sd a5,0(a0) - c000ba82: ef843783 ld a5,-264(s0) - c000ba86: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14879 + c000bb6e: e11c sd a5,0(a0) + c000bb70: ef843783 ld a5,-264(s0) + c000bb74: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14887 for(i = 0; i < arg_count; i++) { - c000ba88: 076c4c63 blt s8,s6,c000bb00 - c000ba8c: 601c ld a5,0(s0) - c000ba8e: 004b1c13 slli s8,s6,0x4 - c000ba92: 9c3e add s8,s8,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14894 + c000bb76: 076c4c63 blt s8,s6,c000bbee + c000bb7a: 601c ld a5,0(s0) + c000bb7c: 004b1c13 slli s8,s6,0x4 + c000bb80: 9c3e add s8,s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14902 for(i = arg_count; i < argc; i++) { - c000ba94: 77fd lui a5,0xfffff - c000ba96: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000ba9a: 97a2 add a5,a5,s0 - c000ba9c: 639c ld a5,0(a5) - c000ba9e: 0cfb4663 blt s6,a5,c000bb6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14901 + c000bb82: 77fd lui a5,0xfffff + c000bb84: 64078793 addi a5,a5,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000bb88: 97a2 add a5,a5,s0 + c000bb8a: 639c ld a5,0(a5) + c000bb8c: 0cfb4663 blt s6,a5,c000bc58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14909 JS_DefinePropertyValue(ctx, val, JS_ATOM_Symbol_iterator, - c000baa2: 1384b503 ld a0,312(s1) - c000baa6: 1404b583 ld a1,320(s1) - c000baaa: bc5fa0ef jal ra,c000666e - c000baae: 872a mv a4,a0 - c000bab0: 8656 mv a2,s5 - c000bab2: 87ae mv a5,a1 - c000bab4: b8a43023 sd a0,-1152(s0) - c000bab8: b8b43423 sd a1,-1144(s0) - c000babc: 480d li a6,3 - c000babe: 0cc00693 li a3,204 - c000bac2: 85d2 mv a1,s4 - c000bac4: 8526 mv a0,s1 - c000bac6: b5443823 sd s4,-1200(s0) - c000baca: b5543c23 sd s5,-1192(s0) - c000bace: 4e8070ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14906 + c000bb90: 1384b503 ld a0,312(s1) + c000bb94: 1404b583 ld a1,320(s1) + c000bb98: bc5fa0ef jal ra,c000675c + c000bb9c: 872a mv a4,a0 + c000bb9e: 8656 mv a2,s5 + c000bba0: 87ae mv a5,a1 + c000bba2: b8a43023 sd a0,-1152(s0) + c000bba6: b8b43423 sd a1,-1144(s0) + c000bbaa: 480d li a6,3 + c000bbac: 0cc00693 li a3,204 + c000bbb0: 85d2 mv a1,s4 + c000bbb2: 8526 mv a0,s1 + c000bbb4: b5443823 sd s4,-1200(s0) + c000bbb8: b5543c23 sd s5,-1192(s0) + c000bbbc: 4e8070ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14914 JS_DupValue(ctx, ctx->rt->current_stack_frame->cur_func), - c000bad2: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14905 + c000bbc0: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14913 JS_DefinePropertyValue(ctx, val, JS_ATOM_callee, - c000bad4: 7ffc ld a5,248(a5) - c000bad6: 6788 ld a0,8(a5) - c000bad8: 6b8c ld a1,16(a5) - c000bada: b95fa0ef jal ra,c000666e - c000bade: 87ae mv a5,a1 - c000bae0: b6b43c23 sd a1,-1160(s0) - c000bae4: b5843603 ld a2,-1192(s0) - c000bae8: b5043583 ld a1,-1200(s0) - c000baec: 872a mv a4,a0 - c000baee: b6a43823 sd a0,-1168(s0) - c000baf2: 480d li a6,3 - c000baf4: 04f00693 li a3,79 - c000baf8: 8526 mv a0,s1 - c000bafa: 4bc070ef jal ra,c0012fb6 - c000bafe: b715 j c000ba22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14881 + c000bbc2: 7ffc ld a5,248(a5) + c000bbc4: 6788 ld a0,8(a5) + c000bbc6: 6b8c ld a1,16(a5) + c000bbc8: b95fa0ef jal ra,c000675c + c000bbcc: 87ae mv a5,a1 + c000bbce: b6b43c23 sd a1,-1160(s0) + c000bbd2: b5843603 ld a2,-1192(s0) + c000bbd6: b5043583 ld a1,-1200(s0) + c000bbda: 872a mv a4,a0 + c000bbdc: b6a43823 sd a0,-1168(s0) + c000bbe0: 480d li a6,3 + c000bbe2: 04f00693 li a3,79 + c000bbe6: 8526 mv a0,s1 + c000bbe8: 4bc070ef jal ra,c00130a4 + c000bbec: b715 j c000bb10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14889 var_ref = get_var_ref(ctx, sf, i, TRUE); - c000bb00: 77fd lui a5,0xfffff - c000bb02: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000bb06: 97a2 add a5,a5,s0 - c000bb08: 638c ld a1,0(a5) - c000bb0a: 4685 li a3,1 - c000bb0c: 8662 mv a2,s8 - c000bb0e: 8526 mv a0,s1 - c000bb10: 1b8090ef jal ra,c0014cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14882 + c000bbee: 77fd lui a5,0xfffff + c000bbf0: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000bbf4: 97a2 add a5,a5,s0 + c000bbf6: 638c ld a1,0(a5) + c000bbf8: 4685 li a3,1 + c000bbfa: 8662 mv a2,s8 + c000bbfc: 8526 mv a0,s1 + c000bbfe: 29a090ef jal ra,c0014e98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14890 if (!var_ref) - c000bb14: 777d lui a4,0xfffff - c000bb16: 63070713 addi a4,a4,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000bb1a: 9722 add a4,a4,s0 - c000bb1c: e308 sd a0,0(a4) - c000bb1e: c515 beqz a0,c000bb4a + c000bc02: 777d lui a4,0xfffff + c000bc04: 63070713 addi a4,a4,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000bc08: 9722 add a4,a4,s0 + c000bc0a: e308 sd a0,0(a4) + c000bc0c: c515 beqz a0,c000bc38 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c000bb20: 800007b7 lui a5,0x80000 - c000bb24: 00fc6633 or a2,s8,a5 + c000bc0e: 800007b7 lui a5,0x80000 + c000bc12: 00fc6633 or a2,s8,a5 js_build_mapped_arguments(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14892 pr = add_property(ctx, p, __JS_AtomFromUInt32(i), JS_PROP_C_W_E | JS_PROP_VARREF); - c000bb28: 02700693 li a3,39 - c000bb2c: 2601 sext.w a2,a2 - c000bb2e: 85d2 mv a1,s4 - c000bb30: 8526 mv a0,s1 - c000bb32: 0950a0ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14885 + c000bc16: 02700693 li a3,39 + c000bc1a: 2601 sext.w a2,a2 + c000bc1c: 85d2 mv a1,s4 + c000bc1e: 8526 mv a0,s1 + c000bc20: 1770a0ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14893 if (!pr) { - c000bb36: 77fd lui a5,0xfffff - c000bb38: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000bb3c: 97a2 add a5,a5,s0 - c000bb3e: 639c ld a5,0(a5) - c000bb40: e115 bnez a0,c000bb64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14886 + c000bc24: 77fd lui a5,0xfffff + c000bc26: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000bc2a: 97a2 add a5,a5,s0 + c000bc2c: 639c ld a5,0(a5) + c000bc2e: e115 bnez a0,c000bc52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14894 free_var_ref(ctx->rt, var_ref); - c000bb42: 6c88 ld a0,24(s1) - c000bb44: 85be mv a1,a5 - c000bb46: c69fc0ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14910 + c000bc30: 6c88 ld a0,24(s1) + c000bc32: 85be mv a1,a5 + c000bc34: c69fc0ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14918 JS_FreeValue(ctx, val); - c000bb4a: 85d2 mv a1,s4 - c000bb4c: 8656 mv a2,s5 - c000bb4e: 8526 mv a0,s1 - c000bb50: b5443823 sd s4,-1200(s0) - c000bb54: b5543c23 sd s5,-1192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14911 + c000bc38: 85d2 mv a1,s4 + c000bc3a: 8656 mv a2,s5 + c000bc3c: 8526 mv a0,s1 + c000bc3e: b5443823 sd s4,-1200(s0) + c000bc42: b5543c23 sd s5,-1192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14919 return JS_EXCEPTION; - c000bb58: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14910 + c000bc46: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14918 JS_FreeValue(ctx, val); - c000bb5a: fdffb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14911 + c000bc48: fdffb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14919 return JS_EXCEPTION; - c000bb5e: ba043023 sd zero,-1120(s0) - c000bb62: b5d1 j c000ba26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14889 + c000bc4c: ba043023 sd zero,-1120(s0) + c000bc50: b5d1 j c000bb14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14897 pr->u.var_ref = var_ref; - c000bb64: e11c sd a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14879 + c000bc52: e11c sd a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14887 for(i = 0; i < arg_count; i++) { - c000bb66: 2c05 addiw s8,s8,1 - c000bb68: b705 j c000ba88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14895 + c000bc54: 2c05 addiw s8,s8,1 + c000bc56: b705 j c000bb76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14903 if (JS_DefinePropertyValueUint32(ctx, val, i, - c000bb6a: 000c3503 ld a0,0(s8) - c000bb6e: 008c3583 ld a1,8(s8) - c000bb72: 0c41 addi s8,s8,16 - c000bb74: afbfa0ef jal ra,c000666e - c000bb78: 872a mv a4,a0 - c000bb7a: 87ae mv a5,a1 - c000bb7c: b8a43823 sd a0,-1136(s0) - c000bb80: b8b43c23 sd a1,-1128(s0) - c000bb84: 481d li a6,7 - c000bb86: 86da mv a3,s6 - c000bb88: 85d2 mv a1,s4 - c000bb8a: 8656 mv a2,s5 - c000bb8c: 8526 mv a0,s1 - c000bb8e: b5443823 sd s4,-1200(s0) - c000bb92: b5543c23 sd s5,-1192(s0) - c000bb96: 33f1d0ef jal ra,c00296d4 - c000bb9a: fa0548e3 bltz a0,c000bb4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14894 + c000bc58: 000c3503 ld a0,0(s8) + c000bc5c: 008c3583 ld a1,8(s8) + c000bc60: 0c41 addi s8,s8,16 + c000bc62: afbfa0ef jal ra,c000675c + c000bc66: 872a mv a4,a0 + c000bc68: 87ae mv a5,a1 + c000bc6a: b8a43823 sd a0,-1136(s0) + c000bc6e: b8b43c23 sd a1,-1128(s0) + c000bc72: 481d li a6,7 + c000bc74: 86da mv a3,s6 + c000bc76: 85d2 mv a1,s4 + c000bc78: 8656 mv a2,s5 + c000bc7a: 8526 mv a0,s1 + c000bc7c: b5443823 sd s4,-1200(s0) + c000bc80: b5543c23 sd s5,-1192(s0) + c000bc84: 4211d0ef jal ra,c00298a4 + c000bc88: fa0548e3 bltz a0,c000bc38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14902 for(i = arg_count; i < argc; i++) { - c000bb9e: 2b05 addiw s6,s6,1 - c000bba0: bdd5 j c000ba94 + c000bc8c: 2b05 addiw s6,s6,1 + c000bc8e: bdd5 j c000bb82 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16372 *sp++ = JS_DupValue(ctx, sf->cur_func); - c000bba2: 77fd lui a5,0xfffff - c000bba4: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000bba8: 97a2 add a5,a5,s0 - c000bbaa: 639c ld a5,0(a5) - c000bbac: 6788 ld a0,8(a5) - c000bbae: 77fd lui a5,0xfffff - c000bbb0: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000bbb4: 97a2 add a5,a5,s0 - c000bbb6: 639c ld a5,0(a5) - c000bbb8: 6b8c ld a1,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16367 + c000bc90: 77fd lui a5,0xfffff + c000bc92: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000bc96: 97a2 add a5,a5,s0 + c000bc98: 639c ld a5,0(a5) + c000bc9a: 6788 ld a0,8(a5) + c000bc9c: 77fd lui a5,0xfffff + c000bc9e: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000bca2: 97a2 add a5,a5,s0 + c000bca4: 639c ld a5,0(a5) + c000bca6: 6b8c ld a1,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16375 *sp++ = JS_DupValue(ctx, new_target); - c000bbba: ab5fa0ef jal ra,c000666e - c000bbbe: 00ad3023 sd a0,0(s10) - c000bbc2: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16368 + c000bca8: ab5fa0ef jal ra,c000675c + c000bcac: 00ad3023 sd a0,0(s10) + c000bcb0: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16376 break; - c000bbc6: b551 j c000ba4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16367 + c000bcb4: b551 j c000bb38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16375 *sp++ = JS_DupValue(ctx, new_target); - c000bbc8: f8040793 addi a5,s0,-128 - c000bbcc: 97ce add a5,a5,s3 - c000bbce: 6f07b503 ld a0,1776(a5) - c000bbd2: 6f87b583 ld a1,1784(a5) - c000bbd6: b7d5 j c000bbba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16372 + c000bcb6: f8040793 addi a5,s0,-128 + c000bcba: 97ce add a5,a5,s3 + c000bcbc: 6f07b503 ld a0,1776(a5) + c000bcc0: 6f87b583 ld a1,1784(a5) + c000bcc4: b7d5 j c000bca8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16380 p1 = p->u.func.home_object; - c000bbd8: 77fd lui a5,0xfffff - c000bbda: 60078793 addi a5,a5,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> - c000bbde: 97a2 add a5,a5,s0 - c000bbe0: 639c ld a5,0(a5) - c000bbe2: 63bc ld a5,64(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16373 + c000bcc6: 77fd lui a5,0xfffff + c000bcc8: 60078793 addi a5,a5,1536 # fffffffffffff600 <_ebss+0xffffffff3fefe4da> + c000bccc: 97a2 add a5,a5,s0 + c000bcce: 639c ld a5,0(a5) + c000bcd0: 63bc ld a5,64(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16381 if (unlikely(!p1)) - c000bbe4: e799 bnez a5,c000bbf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16374 + c000bcd2: e799 bnez a5,c000bce0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16382 *sp++ = JS_UNDEFINED; - c000bbe6: 000d3023 sd zero,0(s10) - c000bbea: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16376 (discriminator 6) + c000bcd4: 000d3023 sd zero,0(s10) + c000bcd8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16384 (discriminator 6) *sp++ = JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p1)); - c000bbec: 00fd3423 sd a5,8(s10) - c000bbf0: bda9 j c000ba4a + c000bcda: 00fd3423 sd a5,8(s10) + c000bcde: bda9 j c000bb38 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 (discriminator 6) p->ref_count++; - c000bbf2: 4398 lw a4,0(a5) - c000bbf4: 2705 addiw a4,a4,1 - c000bbf6: c398 sw a4,0(a5) + c000bce0: 4398 lw a4,0(a5) + c000bce2: 2705 addiw a4,a4,1 + c000bce4: c398 sw a4,0(a5) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16376 (discriminator 6) - c000bbf8: 00fd3023 sd a5,0(s10) - c000bbfc: 57fd li a5,-1 - c000bbfe: b7fd j c000bbec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16384 (discriminator 6) + c000bce6: 00fd3023 sd a5,0(s10) + c000bcea: 57fd li a5,-1 + c000bcec: b7fd j c000bcda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16388 *sp++ = JS_NewObjectProto(ctx, JS_NULL); - c000bc00: 4789 li a5,2 - c000bc02: 4581 li a1,0 - c000bc04: 4609 li a2,2 - c000bc06: 8526 mv a0,s1 - c000bc08: ee043823 sd zero,-272(s0) - c000bc0c: eef43c23 sd a5,-264(s0) - c000bc10: 11e0b0ef jal ra,c0016d2e - c000bc14: 00ad3023 sd a0,0(s10) - c000bc18: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16386 + c000bcee: 4789 li a5,2 + c000bcf0: 4581 li a1,0 + c000bcf2: 4609 li a2,2 + c000bcf4: 8526 mv a0,s1 + c000bcf6: ee043823 sd zero,-272(s0) + c000bcfa: eef43c23 sd a5,-264(s0) + c000bcfe: 2000b0ef jal ra,c0016efe + c000bd02: 00ad3023 sd a0,0(s10) + c000bd06: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16394 if (unlikely(JS_IsException(sp[-1]))) - c000bc1c: 2581 sext.w a1,a1 - c000bc1e: 4799 li a5,6 - c000bc20: e2f595e3 bne a1,a5,c000ba4a - c000bc24: b311 j c000b928 + c000bd0a: 2581 sext.w a1,a1 + c000bd0c: 4799 li a5,6 + c000bd0e: e2f595e3 bne a1,a5,c000bb38 + c000bd12: b311 j c000ba16 js_import_meta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28456 filename = JS_GetScriptOrModuleName(ctx, 0); - c000bc26: 4581 li a1,0 - c000bc28: 8526 mv a0,s1 - c000bc2a: a7aff0ef jal ra,c000aea4 - c000bc2e: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28449 + c000bd14: 4581 li a1,0 + c000bd16: 8526 mv a0,s1 + c000bd18: a7aff0ef jal ra,c000af92 + c000bd1c: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28457 if (filename == JS_ATOM_NULL) - c000bc32: e995 bnez a1,c000bc66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28458 + c000bd20: e995 bnez a1,c000bd54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28466 JS_ThrowTypeError(ctx, "import.meta not supported in this context"); - c000bc34: 00051597 auipc a1,0x51 - c000bc38: 3e458593 addi a1,a1,996 # c005d018 - c000bc3c: 8526 mv a0,s1 - c000bc3e: 7b8070ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28459 + c000bd22: 00051597 auipc a1,0x51 + c000bd26: 52658593 addi a1,a1,1318 # c005d248 + c000bd2a: 8526 mv a0,s1 + c000bd2c: 7b8070ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28467 return JS_EXCEPTION; - c000bc42: 4599 li a1,6 - c000bc44: ba043823 sd zero,-1104(s0) - c000bc48: bb043783 ld a5,-1104(s0) - c000bc4c: eeb43c23 sd a1,-264(s0) - c000bc50: bab43c23 sd a1,-1096(s0) - c000bc54: eef43823 sd a5,-272(s0) + c000bd30: 4599 li a1,6 + c000bd32: ba043823 sd zero,-1104(s0) + c000bd36: bb043783 ld a5,-1104(s0) + c000bd3a: eeb43c23 sd a1,-264(s0) + c000bd3e: bab43c23 sd a1,-1096(s0) + c000bd42: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16385 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16393 *sp++ = js_import_meta(ctx); - c000bc58: 00fd3023 sd a5,0(s10) - c000bc5c: ef843783 ld a5,-264(s0) - c000bc60: 00fd3423 sd a5,8(s10) - c000bc64: bf65 j c000bc1c + c000bd46: 00fd3023 sd a5,0(s10) + c000bd4a: ef843783 ld a5,-264(s0) + c000bd4e: 00fd3423 sd a5,8(s10) + c000bd52: bf65 j c000bd0a js_find_loaded_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27529 list_for_each(el, &ctx->loaded_modules) { - c000bc66: 1a84b783 ld a5,424(s1) - c000bc6a: 1a048713 addi a4,s1,416 - c000bc6e: 00e79463 bne a5,a4,c000bc76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27526 + c000bd54: 1a84b783 ld a5,424(s1) + c000bd58: 1a048713 addi a4,s1,416 + c000bd5c: 00e79463 bne a5,a4,c000bd64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27534 return NULL; - c000bc72: 4a01 li s4,0 - c000bc74: a039 j c000bc82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27523 + c000bd60: 4a01 li s4,0 + c000bd62: a039 j c000bd70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27531 if (m->module_name == name) - c000bc76: ffc7a683 lw a3,-4(a5) - c000bc7a: 02b69063 bne a3,a1,c000bc9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27522 + c000bd64: ffc7a683 lw a3,-4(a5) + c000bd68: 02b69063 bne a3,a1,c000bd88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27530 m = list_entry(el, JSModuleDef, link); - c000bc7e: ff878a13 addi s4,a5,-8 + c000bd6c: ff878a13 addi s4,a5,-8 js_import_meta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28463 JS_FreeAtom(ctx, filename); - c000bc82: 8526 mv a0,s1 - c000bc84: 889fb0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28456 + c000bd70: 8526 mv a0,s1 + c000bd72: 889fb0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28464 if (!m) { - c000bc88: fa0a06e3 beqz s4,c000bc34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28461 + c000bd76: fa0a06e3 beqz s4,c000bd22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28469 return JS_GetImportMeta(ctx, m); - c000bc8c: 85d2 mv a1,s4 - c000bc8e: 8526 mv a0,s1 - c000bc90: 0a80b0ef jal ra,c0016d38 - c000bc94: baa43823 sd a0,-1104(s0) - c000bc98: bf45 j c000bc48 + c000bd7a: 85d2 mv a1,s4 + c000bd7c: 8526 mv a0,s1 + c000bd7e: 18a0b0ef jal ra,c0016f08 + c000bd82: baa43823 sd a0,-1104(s0) + c000bd86: bf45 j c000bd36 js_find_loaded_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27529 list_for_each(el, &ctx->loaded_modules) { - c000bc9a: 679c ld a5,8(a5) - c000bc9c: bfc9 j c000bc6e + c000bd88: 679c ld a5,8(a5) + c000bd8a: bfc9 j c000bd5c JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16398 abort(); - c000bc9e: 36d490ef jal ra,c005580a + c000bd8c: 44f490ef jal ra,c00559da get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000bca2: 002bca03 lbu s4,2(s7) - c000bca6: 001bc783 lbu a5,1(s7) + c000bd90: 002bca03 lbu s4,2(s7) + c000bd94: 001bc783 lbu a5,1(s7) js_build_rest(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14927 val = JS_NewArray(ctx); - c000bcaa: 8526 mv a0,s1 + c000bd98: 8526 mv a0,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000bcac: 0a22 slli s4,s4,0x8 - c000bcae: 00fa6a33 or s4,s4,a5 + c000bd9a: 0a22 slli s4,s4,0x8 + c000bd9c: 00fa6a33 or s4,s4,a5 js_build_rest(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14919 - c000bcb2: 30c0b0ef jal ra,c0016fbe - c000bcb6: eea43823 sd a0,-272(s0) - c000bcba: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14927 + c000bda0: 3ee0b0ef jal ra,c001718e + c000bda4: eea43823 sd a0,-272(s0) + c000bda8: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14928 if (JS_IsException(val)) - c000bcbe: 0005871b sext.w a4,a1 - c000bcc2: 4799 li a5,6 + c000bdac: 0005871b sext.w a4,a1 + c000bdb0: 4799 li a5,6 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16405 pc += 2; - c000bcc4: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16398 + c000bdb2: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16406 *sp++ = js_build_rest(ctx, first, argc, (JSValueConst *)argv); - c000bcc8: 010d0a93 addi s5,s10,16 + c000bdb6: 010d0a93 addi s5,s10,16 js_build_rest(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14927 val = JS_NewArray(ctx); - c000bccc: 8b2e mv s6,a1 - c000bcce: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14920 + c000bdba: 8b2e mv s6,a1 + c000bdbc: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14928 if (JS_IsException(val)) - c000bcd0: 02f70763 beq a4,a5,c000bcfe - c000bcd4: 601c ld a5,0(s0) - c000bcd6: 004a1c13 slli s8,s4,0x4 - c000bcda: 4c81 li s9,0 - c000bcdc: 9c3e add s8,s8,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14922 + c000bdbe: 02f70763 beq a4,a5,c000bdec + c000bdc2: 601c ld a5,0(s0) + c000bdc4: 004a1c13 slli s8,s4,0x4 + c000bdc8: 4c81 li s9,0 + c000bdca: 9c3e add s8,s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14930 for (i = first; i < argc; i++) { - c000bcde: 777d lui a4,0xfffff - c000bce0: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> - c000bce4: 9722 add a4,a4,s0 - c000bce6: 6318 ld a4,0(a4) - c000bce8: 014c87bb addw a5,s9,s4 - c000bcec: 000c869b sext.w a3,s9 - c000bcf0: 02e7ce63 blt a5,a4,c000bd2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14931 + c000bdcc: 777d lui a4,0xfffff + c000bdce: 64070713 addi a4,a4,1600 # fffffffffffff640 <_ebss+0xffffffff3fefe51a> + c000bdd2: 9722 add a4,a4,s0 + c000bdd4: 6318 ld a4,0(a4) + c000bdd6: 014c87bb addw a5,s9,s4 + c000bdda: 000c869b sext.w a3,s9 + c000bdde: 02e7ce63 blt a5,a4,c000be1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14939 return val; - c000bcf4: ef043783 ld a5,-272(s0) - c000bcf8: bcf43823 sd a5,-1072(s0) - c000bcfc: a019 j c000bd02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14921 + c000bde2: ef043783 ld a5,-272(s0) + c000bde6: bcf43823 sd a5,-1072(s0) + c000bdea: a019 j c000bdf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14929 return val; - c000bcfe: bca43823 sd a0,-1072(s0) - c000bd02: bd043783 ld a5,-1072(s0) - c000bd06: ef743c23 sd s7,-264(s0) - c000bd0a: bd743c23 sd s7,-1064(s0) - c000bd0e: eef43823 sd a5,-272(s0) + c000bdec: bca43823 sd a0,-1072(s0) + c000bdf0: bd043783 ld a5,-1072(s0) + c000bdf4: ef743c23 sd s7,-264(s0) + c000bdf8: bd743c23 sd s7,-1064(s0) + c000bdfc: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16398 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16406 *sp++ = js_build_rest(ctx, first, argc, (JSValueConst *)argv); - c000bd12: 00fd3023 sd a5,0(s10) - c000bd16: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16399 + c000be00: 00fd3023 sd a5,0(s10) + c000be04: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16407 if (unlikely(JS_IsException(sp[-1]))) - c000bd1a: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16398 + c000be08: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16406 *sp++ = js_build_rest(ctx, first, argc, (JSValueConst *)argv); - c000bd1c: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16399 + c000be0a: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16407 if (unlikely(JS_IsException(sp[-1]))) - c000bd20: 000b879b sext.w a5,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16398 + c000be0e: 000b879b sext.w a5,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16406 *sp++ = js_build_rest(ctx, first, argc, (JSValueConst *)argv); - c000bd24: 8d56 mv s10,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16399 + c000be12: 8d56 mv s10,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16407 if (unlikely(JS_IsException(sp[-1]))) - c000bd26: f4e79963 bne a5,a4,c000b478 - c000bd2a: b845 j c000b5da + c000be14: f4e79963 bne a5,a4,c000b566 + c000be18: b845 j c000b6c8 js_build_rest(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14931 ret = JS_DefinePropertyValueUint32(ctx, val, i - first, - c000bd2c: 000c3503 ld a0,0(s8) - c000bd30: 008c3583 ld a1,8(s8) - c000bd34: 77fd lui a5,0xfffff - c000bd36: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000bd3a: 97a2 add a5,a5,s0 - c000bd3c: e394 sd a3,0(a5) - c000bd3e: 931fa0ef jal ra,c000666e - c000bd42: 76fd lui a3,0xfffff - c000bd44: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000bd48: 96a2 add a3,a3,s0 - c000bd4a: 87ae mv a5,a1 - c000bd4c: bcb43423 sd a1,-1080(s0) - c000bd50: 6294 ld a3,0(a3) - c000bd52: ef043583 ld a1,-272(s0) - c000bd56: 872a mv a4,a0 - c000bd58: bca43023 sd a0,-1088(s0) - c000bd5c: 481d li a6,7 - c000bd5e: 865a mv a2,s6 - c000bd60: 8526 mv a0,s1 - c000bd62: ef643c23 sd s6,-264(s0) - c000bd66: 16f1d0ef jal ra,c00296d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14926 + c000be1a: 000c3503 ld a0,0(s8) + c000be1e: 008c3583 ld a1,8(s8) + c000be22: 77fd lui a5,0xfffff + c000be24: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000be28: 97a2 add a5,a5,s0 + c000be2a: e394 sd a3,0(a5) + c000be2c: 931fa0ef jal ra,c000675c + c000be30: 76fd lui a3,0xfffff + c000be32: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000be36: 96a2 add a3,a3,s0 + c000be38: 87ae mv a5,a1 + c000be3a: bcb43423 sd a1,-1080(s0) + c000be3e: 6294 ld a3,0(a3) + c000be40: ef043583 ld a1,-272(s0) + c000be44: 872a mv a4,a0 + c000be46: bca43023 sd a0,-1088(s0) + c000be4a: 481d li a6,7 + c000be4c: 865a mv a2,s6 + c000be4e: 8526 mv a0,s1 + c000be50: ef643c23 sd s6,-264(s0) + c000be54: 2511d0ef jal ra,c00298a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14934 if (ret < 0) { - c000bd6a: 0c85 addi s9,s9,1 - c000bd6c: 0c41 addi s8,s8,16 - c000bd6e: f60558e3 bgez a0,c000bcde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14927 + c000be58: 0c85 addi s9,s9,1 + c000be5a: 0c41 addi s8,s8,16 + c000be5c: f60558e3 bgez a0,c000bdcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14935 JS_FreeValue(ctx, val); - c000bd72: ef043583 ld a1,-272(s0) - c000bd76: ef843603 ld a2,-264(s0) - c000bd7a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14928 + c000be60: ef043583 ld a1,-272(s0) + c000be64: ef843603 ld a2,-264(s0) + c000be68: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14936 return JS_EXCEPTION; - c000bd7c: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14927 + c000be6a: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14935 JS_FreeValue(ctx, val); - c000bd7e: dbbfb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14928 + c000be6c: dbbfb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14936 return JS_EXCEPTION; - c000bd82: bc043823 sd zero,-1072(s0) - c000bd86: bfb5 j c000bd02 + c000be70: bc043823 sd zero,-1072(s0) + c000be74: bfb5 j c000bdf0 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16413 JS_FreeValue(ctx, sp[-1]); - c000bd88: ff0d3583 ld a1,-16(s10) - c000bd8c: ff8d3603 ld a2,-8(s10) - c000bd90: 8526 mv a0,s1 - c000bd92: 1d41 addi s10,s10,-16 - c000bd94: da5fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16407 + c000be76: ff0d3583 ld a1,-16(s10) + c000be7a: ff8d3603 ld a2,-8(s10) + c000be7e: 8526 mv a0,s1 + c000be80: 1d41 addi s10,s10,-16 + c000be82: da5fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16415 BREAK; - c000bd98: ee0ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16409 + c000be86: ee0ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16417 JS_FreeValue(ctx, sp[-2]); - c000bd9c: fe0d3583 ld a1,-32(s10) - c000bda0: fe8d3603 ld a2,-24(s10) - c000bda4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16411 + c000be8a: fe0d3583 ld a1,-32(s10) + c000be8e: fe8d3603 ld a2,-24(s10) + c000be92: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16419 sp--; - c000bda6: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16409 + c000be94: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16417 JS_FreeValue(ctx, sp[-2]); - c000bda8: d91fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16410 + c000be96: d91fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16418 sp[-2] = sp[-1]; - c000bdac: 000d3783 ld a5,0(s10) - c000bdb0: fefd3823 sd a5,-16(s10) - c000bdb4: 008d3783 ld a5,8(s10) - c000bdb8: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16412 + c000be9a: 000d3783 ld a5,0(s10) + c000be9e: fefd3823 sd a5,-16(s10) + c000bea2: 008d3783 ld a5,8(s10) + c000bea6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16420 BREAK; - c000bdbc: ebcff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16414 + c000beaa: ebcff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16422 JS_FreeValue(ctx, sp[-3]); - c000bdc0: fd0d3583 ld a1,-48(s10) - c000bdc4: fd8d3603 ld a2,-40(s10) - c000bdc8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16417 + c000beae: fd0d3583 ld a1,-48(s10) + c000beb2: fd8d3603 ld a2,-40(s10) + c000beb6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16425 sp--; - c000bdca: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16414 + c000beb8: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16422 JS_FreeValue(ctx, sp[-3]); - c000bdcc: d6dfb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16415 + c000beba: d6dfb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16423 sp[-3] = sp[-2]; - c000bdd0: ff0d3783 ld a5,-16(s10) - c000bdd4: fefd3023 sd a5,-32(s10) - c000bdd8: ff8d3783 ld a5,-8(s10) - c000bddc: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16416 + c000bebe: ff0d3783 ld a5,-16(s10) + c000bec2: fefd3023 sd a5,-32(s10) + c000bec6: ff8d3783 ld a5,-8(s10) + c000beca: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16424 sp[-2] = sp[-1]; - c000bde0: 000d3783 ld a5,0(s10) - c000bde4: fefd3823 sd a5,-16(s10) - c000bde8: 008d3783 ld a5,8(s10) - c000bdec: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16418 + c000bece: 000d3783 ld a5,0(s10) + c000bed2: fefd3823 sd a5,-16(s10) + c000bed6: 008d3783 ld a5,8(s10) + c000beda: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16426 BREAK; - c000bdf0: e88ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16420 + c000bede: e88ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16428 sp[0] = JS_DupValue(ctx, sp[-1]); - c000bdf4: ff0d3503 ld a0,-16(s10) - c000bdf8: ff8d3583 ld a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16421 + c000bee2: ff0d3503 ld a0,-16(s10) + c000bee6: ff8d3583 ld a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16429 sp++; - c000bdfc: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16420 + c000beea: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16428 sp[0] = JS_DupValue(ctx, sp[-1]); - c000bdfe: 871fa0ef jal ra,c000666e - c000be02: fead3823 sd a0,-16(s10) - c000be06: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16422 + c000beec: 871fa0ef jal ra,c000675c + c000bef0: fead3823 sd a0,-16(s10) + c000bef4: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16430 BREAK; - c000be0a: e6eff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16424 + c000bef8: e6eff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16432 sp[0] = JS_DupValue(ctx, sp[-2]); - c000be0e: fe0d3503 ld a0,-32(s10) - c000be12: fe8d3583 ld a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16426 + c000befc: fe0d3503 ld a0,-32(s10) + c000bf00: fe8d3583 ld a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16434 sp += 2; - c000be16: 020d0d13 addi s10,s10,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16424 + c000bf04: 020d0d13 addi s10,s10,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16432 sp[0] = JS_DupValue(ctx, sp[-2]); - c000be1a: 855fa0ef jal ra,c000666e - c000be1e: fead3023 sd a0,-32(s10) - c000be22: febd3423 sd a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16425 + c000bf08: 855fa0ef jal ra,c000675c + c000bf0c: fead3023 sd a0,-32(s10) + c000bf10: febd3423 sd a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16433 sp[1] = JS_DupValue(ctx, sp[-1]); - c000be26: fd0d3503 ld a0,-48(s10) - c000be2a: fd8d3583 ld a1,-40(s10) - c000be2e: 841fa0ef jal ra,c000666e - c000be32: fead3823 sd a0,-16(s10) - c000be36: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16427 + c000bf14: fd0d3503 ld a0,-48(s10) + c000bf18: fd8d3583 ld a1,-40(s10) + c000bf1c: 841fa0ef jal ra,c000675c + c000bf20: fead3823 sd a0,-16(s10) + c000bf24: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16435 BREAK; - c000be3a: e3eff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16429 + c000bf28: e3eff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16437 sp[0] = JS_DupValue(ctx, sp[-3]); - c000be3e: fd0d3503 ld a0,-48(s10) - c000be42: fd8d3583 ld a1,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16432 + c000bf2c: fd0d3503 ld a0,-48(s10) + c000bf30: fd8d3583 ld a1,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16440 sp += 3; - c000be46: 030d0d13 addi s10,s10,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16429 + c000bf34: 030d0d13 addi s10,s10,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16437 sp[0] = JS_DupValue(ctx, sp[-3]); - c000be4a: 825fa0ef jal ra,c000666e - c000be4e: fcad3823 sd a0,-48(s10) - c000be52: fcbd3c23 sd a1,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16430 + c000bf38: 825fa0ef jal ra,c000675c + c000bf3c: fcad3823 sd a0,-48(s10) + c000bf40: fcbd3c23 sd a1,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16438 sp[1] = JS_DupValue(ctx, sp[-2]); - c000be56: fb0d3503 ld a0,-80(s10) - c000be5a: fb8d3583 ld a1,-72(s10) - c000be5e: 811fa0ef jal ra,c000666e - c000be62: fead3023 sd a0,-32(s10) - c000be66: febd3423 sd a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16431 + c000bf44: fb0d3503 ld a0,-80(s10) + c000bf48: fb8d3583 ld a1,-72(s10) + c000bf4c: 811fa0ef jal ra,c000675c + c000bf50: fead3023 sd a0,-32(s10) + c000bf54: febd3423 sd a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16439 sp[2] = JS_DupValue(ctx, sp[-1]); - c000be6a: fc0d3503 ld a0,-64(s10) - c000be6e: fc8d3583 ld a1,-56(s10) - c000be72: ffcfa0ef jal ra,c000666e - c000be76: fead3823 sd a0,-16(s10) - c000be7a: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16433 + c000bf58: fc0d3503 ld a0,-64(s10) + c000bf5c: fc8d3583 ld a1,-56(s10) + c000bf60: ffcfa0ef jal ra,c000675c + c000bf64: fead3823 sd a0,-16(s10) + c000bf68: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16441 BREAK; - c000be7e: dfaff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16435 + c000bf6c: dfaff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16443 sp[0] = sp[-1]; - c000be82: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16436 + c000bf70: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16444 sp[-1] = JS_DupValue(ctx, sp[-2]); - c000be86: fe0d3503 ld a0,-32(s10) - c000be8a: fe8d3583 ld a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16435 + c000bf74: fe0d3503 ld a0,-32(s10) + c000bf78: fe8d3583 ld a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16443 sp[0] = sp[-1]; - c000be8e: 00fd3023 sd a5,0(s10) - c000be92: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16437 + c000bf7c: 00fd3023 sd a5,0(s10) + c000bf80: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16445 sp++; - c000be96: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16435 + c000bf84: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16443 sp[0] = sp[-1]; - c000be98: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16436 + c000bf86: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16444 sp[-1] = JS_DupValue(ctx, sp[-2]); - c000be9c: fd2fa0ef jal ra,c000666e - c000bea0: fead3023 sd a0,-32(s10) - c000bea4: febd3423 sd a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16438 + c000bf8a: fd2fa0ef jal ra,c000675c + c000bf8e: fead3023 sd a0,-32(s10) + c000bf92: febd3423 sd a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16446 BREAK; - c000bea8: dd0ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16441 + c000bf96: dd0ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16449 sp[-1] = sp[-2]; - c000beac: fe0d3783 ld a5,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16440 + c000bf9a: fe0d3783 ld a5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16448 sp[0] = sp[-1]; - c000beb0: ff0d3503 ld a0,-16(s10) - c000beb4: ff8d3583 ld a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16441 + c000bf9e: ff0d3503 ld a0,-16(s10) + c000bfa2: ff8d3583 ld a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16449 sp[-1] = sp[-2]; - c000beb8: fefd3823 sd a5,-16(s10) - c000bebc: fe8d3783 ld a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16440 + c000bfa6: fefd3823 sd a5,-16(s10) + c000bfaa: fe8d3783 ld a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16448 sp[0] = sp[-1]; - c000bec0: 00ad3023 sd a0,0(s10) - c000bec4: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16441 + c000bfae: 00ad3023 sd a0,0(s10) + c000bfb2: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16449 sp[-1] = sp[-2]; - c000bec8: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16442 + c000bfb6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16450 sp[-2] = JS_DupValue(ctx, sp[0]); - c000becc: fa2fa0ef jal ra,c000666e - c000bed0: fead3023 sd a0,-32(s10) - c000bed4: febd3423 sd a1,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16443 + c000bfba: fa2fa0ef jal ra,c000675c + c000bfbe: fead3023 sd a0,-32(s10) + c000bfc2: febd3423 sd a1,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16451 sp++; - c000bed8: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16444 + c000bfc6: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16452 BREAK; - c000beda: d9eff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16447 + c000bfc8: d9eff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16455 sp[-1] = sp[-2]; - c000bede: fe0d3783 ld a5,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16446 + c000bfcc: fe0d3783 ld a5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16454 sp[0] = sp[-1]; - c000bee2: ff0d3503 ld a0,-16(s10) - c000bee6: ff8d3583 ld a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16447 + c000bfd0: ff0d3503 ld a0,-16(s10) + c000bfd4: ff8d3583 ld a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16455 sp[-1] = sp[-2]; - c000beea: fefd3823 sd a5,-16(s10) - c000beee: fe8d3783 ld a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16446 + c000bfd8: fefd3823 sd a5,-16(s10) + c000bfdc: fe8d3783 ld a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16454 sp[0] = sp[-1]; - c000bef2: 00ad3023 sd a0,0(s10) - c000bef6: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16447 + c000bfe0: 00ad3023 sd a0,0(s10) + c000bfe4: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16455 sp[-1] = sp[-2]; - c000befa: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16448 + c000bfe8: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16456 sp[-2] = sp[-3]; - c000befe: fd0d3783 ld a5,-48(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16450 + c000bfec: fd0d3783 ld a5,-48(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16458 sp++; - c000bf02: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16448 + c000bff0: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16456 sp[-2] = sp[-3]; - c000bf04: fcfd3823 sd a5,-48(s10) - c000bf08: fc8d3783 ld a5,-56(s10) - c000bf0c: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16449 + c000bff2: fcfd3823 sd a5,-48(s10) + c000bff6: fc8d3783 ld a5,-56(s10) + c000bffa: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16457 sp[-3] = JS_DupValue(ctx, sp[0]); - c000bf10: f5efa0ef jal ra,c000666e - c000bf14: fcad3023 sd a0,-64(s10) - c000bf18: fcbd3423 sd a1,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16451 + c000bffe: f5efa0ef jal ra,c000675c + c000c002: fcad3023 sd a0,-64(s10) + c000c006: fcbd3423 sd a1,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16459 BREAK; - c000bf1c: d5cff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16454 + c000c00a: d5cff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16462 sp[-1] = sp[-2]; - c000bf20: fe0d3783 ld a5,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16453 + c000c00e: fe0d3783 ld a5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16461 sp[0] = sp[-1]; - c000bf24: ff0d3503 ld a0,-16(s10) - c000bf28: ff8d3583 ld a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16454 + c000c012: ff0d3503 ld a0,-16(s10) + c000c016: ff8d3583 ld a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16462 sp[-1] = sp[-2]; - c000bf2c: fefd3823 sd a5,-16(s10) - c000bf30: fe8d3783 ld a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16453 + c000c01a: fefd3823 sd a5,-16(s10) + c000c01e: fe8d3783 ld a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16461 sp[0] = sp[-1]; - c000bf34: 00ad3023 sd a0,0(s10) - c000bf38: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16454 + c000c022: 00ad3023 sd a0,0(s10) + c000c026: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16462 sp[-1] = sp[-2]; - c000bf3c: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16455 + c000c02a: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16463 sp[-2] = sp[-3]; - c000bf40: fd0d3783 ld a5,-48(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16458 + c000c02e: fd0d3783 ld a5,-48(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16466 sp++; - c000bf44: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16455 + c000c032: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16463 sp[-2] = sp[-3]; - c000bf46: fcfd3823 sd a5,-48(s10) - c000bf4a: fc8d3783 ld a5,-56(s10) - c000bf4e: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16456 + c000c034: fcfd3823 sd a5,-48(s10) + c000c038: fc8d3783 ld a5,-56(s10) + c000c03c: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16464 sp[-3] = sp[-4]; - c000bf52: fb0d3783 ld a5,-80(s10) - c000bf56: fcfd3023 sd a5,-64(s10) - c000bf5a: fb8d3783 ld a5,-72(s10) - c000bf5e: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16457 + c000c040: fb0d3783 ld a5,-80(s10) + c000c044: fcfd3023 sd a5,-64(s10) + c000c048: fb8d3783 ld a5,-72(s10) + c000c04c: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16465 sp[-4] = JS_DupValue(ctx, sp[0]); - c000bf62: f0cfa0ef jal ra,c000666e - c000bf66: faad3823 sd a0,-80(s10) - c000bf6a: fabd3c23 sd a1,-72(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16459 + c000c050: f0cfa0ef jal ra,c000675c + c000c054: faad3823 sd a0,-80(s10) + c000c058: fabd3c23 sd a1,-72(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16467 BREAK; - c000bf6e: d0aff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16463 + c000c05c: d0aff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16471 tmp = sp[-2]; - c000bf72: fe0d3783 ld a5,-32(s10) - c000bf76: eef43823 sd a5,-272(s0) - c000bf7a: fe8d3783 ld a5,-24(s10) - c000bf7e: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16464 + c000c060: fe0d3783 ld a5,-32(s10) + c000c064: eef43823 sd a5,-272(s0) + c000c068: fe8d3783 ld a5,-24(s10) + c000c06c: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16472 sp[-2] = sp[-3]; - c000bf82: fd0d3783 ld a5,-48(s10) - c000bf86: fefd3023 sd a5,-32(s10) - c000bf8a: fd8d3783 ld a5,-40(s10) - c000bf8e: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16465 + c000c070: fd0d3783 ld a5,-48(s10) + c000c074: fefd3023 sd a5,-32(s10) + c000c078: fd8d3783 ld a5,-40(s10) + c000c07c: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16473 sp[-3] = tmp; - c000bf92: ef043783 ld a5,-272(s0) - c000bf96: fcfd3823 sd a5,-48(s10) - c000bf9a: ef843783 ld a5,-264(s0) - c000bf9e: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16467 + c000c080: ef043783 ld a5,-272(s0) + c000c084: fcfd3823 sd a5,-48(s10) + c000c088: ef843783 ld a5,-264(s0) + c000c08c: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16475 BREAK; - c000bfa2: cd6ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16471 + c000c090: cd6ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16479 tmp = sp[-3]; - c000bfa6: fd0d3783 ld a5,-48(s10) - c000bfaa: eef43823 sd a5,-272(s0) - c000bfae: fd8d3783 ld a5,-40(s10) - c000bfb2: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16472 + c000c094: fd0d3783 ld a5,-48(s10) + c000c098: eef43823 sd a5,-272(s0) + c000c09c: fd8d3783 ld a5,-40(s10) + c000c0a0: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16480 sp[-3] = sp[-2]; - c000bfb6: fe0d3783 ld a5,-32(s10) - c000bfba: fcfd3823 sd a5,-48(s10) - c000bfbe: fe8d3783 ld a5,-24(s10) - c000bfc2: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16473 + c000c0a4: fe0d3783 ld a5,-32(s10) + c000c0a8: fcfd3823 sd a5,-48(s10) + c000c0ac: fe8d3783 ld a5,-24(s10) + c000c0b0: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16481 sp[-2] = sp[-1]; - c000bfc6: ff0d3783 ld a5,-16(s10) - c000bfca: fefd3023 sd a5,-32(s10) - c000bfce: ff8d3783 ld a5,-8(s10) - c000bfd2: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16474 + c000c0b4: ff0d3783 ld a5,-16(s10) + c000c0b8: fefd3023 sd a5,-32(s10) + c000c0bc: ff8d3783 ld a5,-8(s10) + c000c0c0: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16482 sp[-1] = tmp; - c000bfd6: ef043783 ld a5,-272(s0) - c000bfda: fefd3823 sd a5,-16(s10) - c000bfde: ef843783 ld a5,-264(s0) - c000bfe2: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16476 + c000c0c4: ef043783 ld a5,-272(s0) + c000c0c8: fefd3823 sd a5,-16(s10) + c000c0cc: ef843783 ld a5,-264(s0) + c000c0d0: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16484 BREAK; - c000bfe6: c92ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16480 + c000c0d4: c92ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16488 tmp = sp[-4]; - c000bfea: fc0d3783 ld a5,-64(s10) - c000bfee: eef43823 sd a5,-272(s0) - c000bff2: fc8d3783 ld a5,-56(s10) - c000bff6: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16481 + c000c0d8: fc0d3783 ld a5,-64(s10) + c000c0dc: eef43823 sd a5,-272(s0) + c000c0e0: fc8d3783 ld a5,-56(s10) + c000c0e4: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16489 sp[-4] = sp[-3]; - c000bffa: fd0d3783 ld a5,-48(s10) - c000bffe: fcfd3023 sd a5,-64(s10) - c000c002: fd8d3783 ld a5,-40(s10) - c000c006: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16482 + c000c0e8: fd0d3783 ld a5,-48(s10) + c000c0ec: fcfd3023 sd a5,-64(s10) + c000c0f0: fd8d3783 ld a5,-40(s10) + c000c0f4: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16490 sp[-3] = sp[-2]; - c000c00a: fe0d3783 ld a5,-32(s10) - c000c00e: fcfd3823 sd a5,-48(s10) - c000c012: fe8d3783 ld a5,-24(s10) - c000c016: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16483 + c000c0f8: fe0d3783 ld a5,-32(s10) + c000c0fc: fcfd3823 sd a5,-48(s10) + c000c100: fe8d3783 ld a5,-24(s10) + c000c104: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16491 sp[-2] = sp[-1]; - c000c01a: ff0d3783 ld a5,-16(s10) - c000c01e: fefd3023 sd a5,-32(s10) - c000c022: ff8d3783 ld a5,-8(s10) - c000c026: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16484 + c000c108: ff0d3783 ld a5,-16(s10) + c000c10c: fefd3023 sd a5,-32(s10) + c000c110: ff8d3783 ld a5,-8(s10) + c000c114: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16492 sp[-1] = tmp; - c000c02a: ef043783 ld a5,-272(s0) - c000c02e: fefd3823 sd a5,-16(s10) - c000c032: ef843783 ld a5,-264(s0) - c000c036: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16486 + c000c118: ef043783 ld a5,-272(s0) + c000c11c: fefd3823 sd a5,-16(s10) + c000c120: ef843783 ld a5,-264(s0) + c000c124: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16494 BREAK; - c000c03a: c3eff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16490 + c000c128: c3eff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16498 tmp = sp[-5]; - c000c03e: fb0d3783 ld a5,-80(s10) - c000c042: eef43823 sd a5,-272(s0) - c000c046: fb8d3783 ld a5,-72(s10) - c000c04a: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16491 + c000c12c: fb0d3783 ld a5,-80(s10) + c000c130: eef43823 sd a5,-272(s0) + c000c134: fb8d3783 ld a5,-72(s10) + c000c138: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16499 sp[-5] = sp[-4]; - c000c04e: fc0d3783 ld a5,-64(s10) - c000c052: fafd3823 sd a5,-80(s10) - c000c056: fc8d3783 ld a5,-56(s10) - c000c05a: fafd3c23 sd a5,-72(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16492 + c000c13c: fc0d3783 ld a5,-64(s10) + c000c140: fafd3823 sd a5,-80(s10) + c000c144: fc8d3783 ld a5,-56(s10) + c000c148: fafd3c23 sd a5,-72(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16500 sp[-4] = sp[-3]; - c000c05e: fd0d3783 ld a5,-48(s10) - c000c062: fcfd3023 sd a5,-64(s10) - c000c066: fd8d3783 ld a5,-40(s10) - c000c06a: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16493 + c000c14c: fd0d3783 ld a5,-48(s10) + c000c150: fcfd3023 sd a5,-64(s10) + c000c154: fd8d3783 ld a5,-40(s10) + c000c158: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16501 sp[-3] = sp[-2]; - c000c06e: fe0d3783 ld a5,-32(s10) - c000c072: fcfd3823 sd a5,-48(s10) - c000c076: fe8d3783 ld a5,-24(s10) - c000c07a: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16494 + c000c15c: fe0d3783 ld a5,-32(s10) + c000c160: fcfd3823 sd a5,-48(s10) + c000c164: fe8d3783 ld a5,-24(s10) + c000c168: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16502 sp[-2] = sp[-1]; - c000c07e: ff0d3783 ld a5,-16(s10) - c000c082: fefd3023 sd a5,-32(s10) - c000c086: ff8d3783 ld a5,-8(s10) - c000c08a: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16495 + c000c16c: ff0d3783 ld a5,-16(s10) + c000c170: fefd3023 sd a5,-32(s10) + c000c174: ff8d3783 ld a5,-8(s10) + c000c178: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16503 sp[-1] = tmp; - c000c08e: ef043783 ld a5,-272(s0) - c000c092: fefd3823 sd a5,-16(s10) - c000c096: ef843783 ld a5,-264(s0) - c000c09a: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16497 + c000c17c: ef043783 ld a5,-272(s0) + c000c180: fefd3823 sd a5,-16(s10) + c000c184: ef843783 ld a5,-264(s0) + c000c188: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16505 BREAK; - c000c09e: bdaff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16501 + c000c18c: bdaff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16509 tmp = sp[-1]; - c000c0a2: ff0d3783 ld a5,-16(s10) - c000c0a6: eef43823 sd a5,-272(s0) - c000c0aa: ff8d3783 ld a5,-8(s10) - c000c0ae: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16502 + c000c190: ff0d3783 ld a5,-16(s10) + c000c194: eef43823 sd a5,-272(s0) + c000c198: ff8d3783 ld a5,-8(s10) + c000c19c: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16510 sp[-1] = sp[-2]; - c000c0b2: fe0d3783 ld a5,-32(s10) - c000c0b6: fefd3823 sd a5,-16(s10) - c000c0ba: fe8d3783 ld a5,-24(s10) - c000c0be: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16503 + c000c1a0: fe0d3783 ld a5,-32(s10) + c000c1a4: fefd3823 sd a5,-16(s10) + c000c1a8: fe8d3783 ld a5,-24(s10) + c000c1ac: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16511 sp[-2] = sp[-3]; - c000c0c2: fd0d3783 ld a5,-48(s10) - c000c0c6: fefd3023 sd a5,-32(s10) - c000c0ca: fd8d3783 ld a5,-40(s10) - c000c0ce: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16504 + c000c1b0: fd0d3783 ld a5,-48(s10) + c000c1b4: fefd3023 sd a5,-32(s10) + c000c1b8: fd8d3783 ld a5,-40(s10) + c000c1bc: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16512 sp[-3] = tmp; - c000c0d2: ef043783 ld a5,-272(s0) - c000c0d6: fcfd3823 sd a5,-48(s10) - c000c0da: ef843783 ld a5,-264(s0) - c000c0de: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16506 + c000c1c0: ef043783 ld a5,-272(s0) + c000c1c4: fcfd3823 sd a5,-48(s10) + c000c1c8: ef843783 ld a5,-264(s0) + c000c1cc: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16514 BREAK; - c000c0e2: b96ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16510 + c000c1d0: b96ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16518 tmp = sp[-2]; - c000c0e6: fe0d3783 ld a5,-32(s10) - c000c0ea: eef43823 sd a5,-272(s0) - c000c0ee: fe8d3783 ld a5,-24(s10) - c000c0f2: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16511 + c000c1d4: fe0d3783 ld a5,-32(s10) + c000c1d8: eef43823 sd a5,-272(s0) + c000c1dc: fe8d3783 ld a5,-24(s10) + c000c1e0: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16519 sp[-2] = sp[-3]; - c000c0f6: fd0d3783 ld a5,-48(s10) - c000c0fa: fefd3023 sd a5,-32(s10) - c000c0fe: fd8d3783 ld a5,-40(s10) - c000c102: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16512 + c000c1e4: fd0d3783 ld a5,-48(s10) + c000c1e8: fefd3023 sd a5,-32(s10) + c000c1ec: fd8d3783 ld a5,-40(s10) + c000c1f0: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16520 sp[-3] = sp[-4]; - c000c106: fc0d3783 ld a5,-64(s10) - c000c10a: fcfd3823 sd a5,-48(s10) - c000c10e: fc8d3783 ld a5,-56(s10) - c000c112: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16513 + c000c1f4: fc0d3783 ld a5,-64(s10) + c000c1f8: fcfd3823 sd a5,-48(s10) + c000c1fc: fc8d3783 ld a5,-56(s10) + c000c200: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16521 sp[-4] = tmp; - c000c116: ef043783 ld a5,-272(s0) - c000c11a: fcfd3023 sd a5,-64(s10) - c000c11e: ef843783 ld a5,-264(s0) - c000c122: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16515 + c000c204: ef043783 ld a5,-272(s0) + c000c208: fcfd3023 sd a5,-64(s10) + c000c20c: ef843783 ld a5,-264(s0) + c000c210: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16523 BREAK; - c000c126: b52ff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16519 + c000c214: b52ff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16527 tmp = sp[-2]; - c000c12a: fe0d3783 ld a5,-32(s10) - c000c12e: eef43823 sd a5,-272(s0) - c000c132: fe8d3783 ld a5,-24(s10) - c000c136: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16520 + c000c218: fe0d3783 ld a5,-32(s10) + c000c21c: eef43823 sd a5,-272(s0) + c000c220: fe8d3783 ld a5,-24(s10) + c000c224: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16528 sp[-2] = sp[-3]; - c000c13a: fd0d3783 ld a5,-48(s10) - c000c13e: fefd3023 sd a5,-32(s10) - c000c142: fd8d3783 ld a5,-40(s10) - c000c146: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16521 + c000c228: fd0d3783 ld a5,-48(s10) + c000c22c: fefd3023 sd a5,-32(s10) + c000c230: fd8d3783 ld a5,-40(s10) + c000c234: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16529 sp[-3] = sp[-4]; - c000c14a: fc0d3783 ld a5,-64(s10) - c000c14e: fcfd3823 sd a5,-48(s10) - c000c152: fc8d3783 ld a5,-56(s10) - c000c156: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16522 + c000c238: fc0d3783 ld a5,-64(s10) + c000c23c: fcfd3823 sd a5,-48(s10) + c000c240: fc8d3783 ld a5,-56(s10) + c000c244: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16530 sp[-4] = sp[-5]; - c000c15a: fb0d3783 ld a5,-80(s10) - c000c15e: fcfd3023 sd a5,-64(s10) - c000c162: fb8d3783 ld a5,-72(s10) - c000c166: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16523 + c000c248: fb0d3783 ld a5,-80(s10) + c000c24c: fcfd3023 sd a5,-64(s10) + c000c250: fb8d3783 ld a5,-72(s10) + c000c254: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16531 sp[-5] = tmp; - c000c16a: ef043783 ld a5,-272(s0) - c000c16e: fafd3823 sd a5,-80(s10) - c000c172: ef843783 ld a5,-264(s0) - c000c176: fafd3c23 sd a5,-72(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16525 + c000c258: ef043783 ld a5,-272(s0) + c000c25c: fafd3823 sd a5,-80(s10) + c000c260: ef843783 ld a5,-264(s0) + c000c264: fafd3c23 sd a5,-72(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16533 BREAK; - c000c17a: afeff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16529 + c000c268: afeff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16537 tmp = sp[-2]; - c000c17e: fe0d3783 ld a5,-32(s10) - c000c182: eef43823 sd a5,-272(s0) - c000c186: fe8d3783 ld a5,-24(s10) - c000c18a: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16530 + c000c26c: fe0d3783 ld a5,-32(s10) + c000c270: eef43823 sd a5,-272(s0) + c000c274: fe8d3783 ld a5,-24(s10) + c000c278: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16538 sp[-2] = sp[-1]; - c000c18e: ff0d3783 ld a5,-16(s10) - c000c192: fefd3023 sd a5,-32(s10) - c000c196: ff8d3783 ld a5,-8(s10) - c000c19a: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16531 + c000c27c: ff0d3783 ld a5,-16(s10) + c000c280: fefd3023 sd a5,-32(s10) + c000c284: ff8d3783 ld a5,-8(s10) + c000c288: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16539 sp[-1] = tmp; - c000c19e: ef043783 ld a5,-272(s0) - c000c1a2: fefd3823 sd a5,-16(s10) - c000c1a6: ef843783 ld a5,-264(s0) - c000c1aa: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16533 + c000c28c: ef043783 ld a5,-272(s0) + c000c290: fefd3823 sd a5,-16(s10) + c000c294: ef843783 ld a5,-264(s0) + c000c298: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16541 BREAK; - c000c1ae: acaff06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16537 + c000c29c: acaff06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16545 tmp1 = sp[-4]; - c000c1b2: fc0d3783 ld a5,-64(s10) - c000c1b6: ecf43823 sd a5,-304(s0) - c000c1ba: fc8d3783 ld a5,-56(s10) - c000c1be: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16538 + c000c2a0: fc0d3783 ld a5,-64(s10) + c000c2a4: ecf43823 sd a5,-304(s0) + c000c2a8: fc8d3783 ld a5,-56(s10) + c000c2ac: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16546 tmp2 = sp[-3]; - c000c1c2: fd0d3783 ld a5,-48(s10) - c000c1c6: eef43823 sd a5,-272(s0) - c000c1ca: fd8d3783 ld a5,-40(s10) - c000c1ce: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16539 + c000c2b0: fd0d3783 ld a5,-48(s10) + c000c2b4: eef43823 sd a5,-272(s0) + c000c2b8: fd8d3783 ld a5,-40(s10) + c000c2bc: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16547 sp[-4] = sp[-2]; - c000c1d2: fe0d3783 ld a5,-32(s10) - c000c1d6: fcfd3023 sd a5,-64(s10) - c000c1da: fe8d3783 ld a5,-24(s10) - c000c1de: fcfd3423 sd a5,-56(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16540 + c000c2c0: fe0d3783 ld a5,-32(s10) + c000c2c4: fcfd3023 sd a5,-64(s10) + c000c2c8: fe8d3783 ld a5,-24(s10) + c000c2cc: fcfd3423 sd a5,-56(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16548 sp[-3] = sp[-1]; - c000c1e2: ff0d3783 ld a5,-16(s10) - c000c1e6: fcfd3823 sd a5,-48(s10) - c000c1ea: ff8d3783 ld a5,-8(s10) - c000c1ee: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16541 + c000c2d0: ff0d3783 ld a5,-16(s10) + c000c2d4: fcfd3823 sd a5,-48(s10) + c000c2d8: ff8d3783 ld a5,-8(s10) + c000c2dc: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16549 sp[-2] = tmp1; - c000c1f2: ed043783 ld a5,-304(s0) - c000c1f6: fefd3023 sd a5,-32(s10) - c000c1fa: ed843783 ld a5,-296(s0) - c000c1fe: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16542 + c000c2e0: ed043783 ld a5,-304(s0) + c000c2e4: fefd3023 sd a5,-32(s10) + c000c2e8: ed843783 ld a5,-296(s0) + c000c2ec: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16550 sp[-1] = tmp2; - c000c202: ef043783 ld a5,-272(s0) - c000c206: fefd3823 sd a5,-16(s10) - c000c20a: ef843783 ld a5,-264(s0) - c000c20e: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16544 + c000c2f0: ef043783 ld a5,-272(s0) + c000c2f4: fefd3823 sd a5,-16(s10) + c000c2f8: ef843783 ld a5,-264(s0) + c000c2fc: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16552 BREAK; - c000c212: a66ff06f j c000b478 + c000c300: a66ff06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000c216: 002bc703 lbu a4,2(s7) - c000c21a: 001bc783 lbu a5,1(s7) + c000c304: 002bc703 lbu a4,2(s7) + c000c308: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16558 *sp++ = js_closure(ctx, bfunc, var_refs, sf); - c000c21e: 010d0a13 addi s4,s10,16 + c000c30c: 010d0a13 addi s4,s10,16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000c222: 0722 slli a4,a4,0x8 - c000c224: 8f5d or a4,a4,a5 - c000c226: 003bc783 lbu a5,3(s7) + c000c310: 0722 slli a4,a4,0x8 + c000c312: 8f5d or a4,a4,a5 + c000c314: 003bc783 lbu a5,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16557 pc += 4; - c000c22a: 005b8913 addi s2,s7,5 + c000c318: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000c22e: 07c2 slli a5,a5,0x10 - c000c230: 8f5d or a4,a4,a5 - c000c232: 004bc783 lbu a5,4(s7) - c000c236: 07e2 slli a5,a5,0x18 + c000c31c: 07c2 slli a5,a5,0x10 + c000c31e: 8f5d or a4,a4,a5 + c000c320: 004bc783 lbu a5,4(s7) + c000c324: 07e2 slli a5,a5,0x18 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16556 JSValue bfunc = JS_DupValue(ctx, b->cpool[get_u32(pc)]); - c000c238: 8fd9 or a5,a5,a4 - c000c23a: 050db703 ld a4,80(s11) - c000c23e: 0792 slli a5,a5,0x4 - c000c240: 97ba add a5,a5,a4 - c000c242: 6388 ld a0,0(a5) - c000c244: 678c ld a1,8(a5) - c000c246: c28fa0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16550 + c000c326: 8fd9 or a5,a5,a4 + c000c328: 050db703 ld a4,80(s11) + c000c32c: 0792 slli a5,a5,0x4 + c000c32e: 97ba add a5,a5,a4 + c000c330: 6388 ld a0,0(a5) + c000c332: 678c ld a1,8(a5) + c000c334: c28fa0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16558 *sp++ = js_closure(ctx, bfunc, var_refs, sf); - c000c24a: 77fd lui a5,0xfffff - c000c24c: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c250: 97a2 add a5,a5,s0 - c000c252: 6398 ld a4,0(a5) - c000c254: 77fd lui a5,0xfffff - c000c256: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000c25a: 97a2 add a5,a5,s0 - c000c25c: 6394 ld a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16548 + c000c338: 77fd lui a5,0xfffff + c000c33a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c33e: 97a2 add a5,a5,s0 + c000c340: 6398 ld a4,0(a5) + c000c342: 77fd lui a5,0xfffff + c000c344: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000c348: 97a2 add a5,a5,s0 + c000c34a: 6394 ld a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16556 JSValue bfunc = JS_DupValue(ctx, b->cpool[get_u32(pc)]); - c000c25e: 862e mv a2,a1 - c000c260: eea43823 sd a0,-272(s0) - c000c264: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16550 + c000c34c: 862e mv a2,a1 + c000c34e: eea43823 sd a0,-272(s0) + c000c352: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16558 *sp++ = js_closure(ctx, bfunc, var_refs, sf); - c000c268: 85aa mv a1,a0 - c000c26a: 8526 mv a0,s1 - c000c26c: 0e41d0ef jal ra,c0029350 - c000c270: 00bd3423 sd a1,8(s10) - c000c274: 00ad3023 sd a0,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16551 + c000c356: 85aa mv a1,a0 + c000c358: 8526 mv a0,s1 + c000c35a: 1c61d0ef jal ra,c0029520 + c000c35e: 00bd3423 sd a1,8(s10) + c000c362: 00ad3023 sd a0,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16559 if (unlikely(JS_IsException(sp[-1]))) - c000c278: 2581 sext.w a1,a1 - c000c27a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16550 + c000c366: 2581 sext.w a1,a1 + c000c368: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16558 *sp++ = js_closure(ctx, bfunc, var_refs, sf); - c000c27c: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16551 + c000c36a: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16559 if (unlikely(JS_IsException(sp[-1]))) - c000c27e: 9ef59d63 bne a1,a5,c000b478 - c000c282: b58ff06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16560 + c000c36c: 9ef59d63 bne a1,a5,c000b566 + c000c370: b58ff06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16568 call_argc = opcode - OP_call0; - c000c286: f12a8b1b addiw s6,s5,-238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16571 + c000c374: f12a8b1b addiw s6,s5,-238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16579 sf->cur_pc = pc; - c000c28a: 77fd lui a5,0xfffff - c000c28c: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c290: 97a2 add a5,a5,s0 - c000c292: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16570 + c000c378: 77fd lui a5,0xfffff + c000c37a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c37e: 97a2 add a5,a5,s0 + c000c380: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16578 call_argv = sp - call_argc; - c000c294: 004b1613 slli a2,s6,0x4 - c000c298: 40cd0633 sub a2,s10,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16571 + c000c382: 004b1613 slli a2,s6,0x4 + c000c386: 40cd0633 sub a2,s10,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16579 sf->cur_pc = pc; - c000c29c: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16572 + c000c38a: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000c2a0: 478d li a5,3 - c000c2a2: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16573 + c000c38e: 478d li a5,3 + c000c390: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16581 JS_UNDEFINED, call_argc, call_argv, 0); - c000c2a6: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16572 + c000c394: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000c2aa: ec043823 sd zero,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16573 + c000c398: ec043823 sd zero,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16581 JS_UNDEFINED, call_argc, call_argv, 0); - c000c2ae: ee043823 sd zero,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16572 + c000c39c: ee043823 sd zero,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000c2b2: e402 sd zero,8(sp) - c000c2b4: e032 sd a2,0(sp) - c000c2b6: ff060b93 addi s7,a2,-16 - c000c2ba: ff063583 ld a1,-16(a2) - c000c2be: 008bb603 ld a2,8(s7) - c000c2c2: 4781 li a5,0 - c000c2c4: 4681 li a3,0 - c000c2c6: 470d li a4,3 - c000c2c8: 88da mv a7,s6 - c000c2ca: 480d li a6,3 - c000c2cc: 8526 mv a0,s1 - c000c2ce: ccffe0ef jal ra,c000af9c - c000c2d2: f8040793 addi a5,s0,-128 - c000c2d6: 97ce add a5,a5,s3 - c000c2d8: 72a7b023 sd a0,1824(a5) - c000c2dc: 72b7b423 sd a1,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16574 + c000c3a0: e402 sd zero,8(sp) + c000c3a2: e032 sd a2,0(sp) + c000c3a4: ff060b93 addi s7,a2,-16 + c000c3a8: ff063583 ld a1,-16(a2) + c000c3ac: 008bb603 ld a2,8(s7) + c000c3b0: 4781 li a5,0 + c000c3b2: 4681 li a3,0 + c000c3b4: 470d li a4,3 + c000c3b6: 88da mv a7,s6 + c000c3b8: 480d li a6,3 + c000c3ba: 8526 mv a0,s1 + c000c3bc: ccffe0ef jal ra,c000b08a + c000c3c0: f8040793 addi a5,s0,-128 + c000c3c4: 97ce add a5,a5,s3 + c000c3c6: 72a7b023 sd a0,1824(a5) + c000c3ca: 72b7b423 sd a1,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16582 if (unlikely(JS_IsException(ret_val))) - c000c2e0: 0005869b sext.w a3,a1 - c000c2e4: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16572 + c000c3ce: 0005869b sext.w a3,a1 + c000c3d2: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000c2e6: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16574 + c000c3d4: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16582 if (unlikely(JS_IsException(ret_val))) - c000c2e8: aee68963 beq a3,a4,c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16576 + c000c3d6: aee68963 beq a3,a4,c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16584 if (opcode == OP_tail_call) - c000c2ec: 02300713 li a4,35 - c000c2f0: 16ea8663 beq s5,a4,c000c45c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16578 + c000c3da: 02300713 li a4,35 + c000c3de: 16ea8663 beq s5,a4,c000c54a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16586 for(i = -1; i < call_argc; i++) - c000c2f4: 5afd li s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16578 (discriminator 1) - c000c2f6: 056ac063 blt s5,s6,c000c336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16581 + c000c3e2: 5afd li s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16586 (discriminator 1) + c000c3e4: 056ac063 blt s5,s6,c000c424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16589 *sp++ = ret_val; - c000c2fa: f8040793 addi a5,s0,-128 - c000c2fe: 97ce add a5,a5,s3 - c000c300: 7207b703 ld a4,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 + c000c3e8: f8040793 addi a5,s0,-128 + c000c3ec: 97ce add a5,a5,s3 + c000c3ee: 7207b703 ld a4,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16588 sp -= call_argc + 1; - c000c304: 001b089b addiw a7,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16581 + c000c3f2: 001b089b addiw a7,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16589 *sp++ = ret_val; - c000c308: 7287b783 ld a5,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16580 + c000c3f6: 7287b783 ld a5,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16588 sp -= call_argc + 1; - c000c30c: 0892 slli a7,a7,0x4 - c000c30e: 411d08b3 sub a7,s10,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16581 + c000c3fa: 0892 slli a7,a7,0x4 + c000c3fc: 411d08b3 sub a7,s10,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16589 *sp++ = ret_val; - c000c312: 01088d13 addi s10,a7,16 - c000c316: 00e8b023 sd a4,0(a7) - c000c31a: 00f8b423 sd a5,8(a7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16583 + c000c400: 01088d13 addi s10,a7,16 + c000c404: 00e8b023 sd a4,0(a7) + c000c408: 00f8b423 sd a5,8(a7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16591 BREAK; - c000c31e: 95aff06f j c000b478 + c000c40c: 95aff06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000c322: 002bc883 lbu a7,2(s7) - c000c326: 001bcb03 lbu s6,1(s7) + c000c410: 002bc883 lbu a7,2(s7) + c000c414: 001bcb03 lbu s6,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16575 pc += 2; - c000c32a: 003b8913 addi s2,s7,3 + c000c418: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c32e: 08a2 slli a7,a7,0x8 + c000c41c: 08a2 slli a7,a7,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16574 call_argc = get_u16(pc); - c000c330: 0168eb33 or s6,a7,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16568 + c000c41e: 0168eb33 or s6,a7,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16576 goto has_call_argc; - c000c334: bf99 j c000c28a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16579 (discriminator 3) + c000c422: bf99 j c000c378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16587 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c336: 000bb583 ld a1,0(s7) - c000c33a: 008bb603 ld a2,8(s7) - c000c33e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16578 (discriminator 3) + c000c424: 000bb583 ld a1,0(s7) + c000c428: 008bb603 ld a2,8(s7) + c000c42c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16586 (discriminator 3) for(i = -1; i < call_argc; i++) - c000c340: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16579 (discriminator 3) + c000c42e: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16587 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c342: ff6fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16578 (discriminator 3) + c000c430: ff6fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16586 (discriminator 3) for(i = -1; i < call_argc; i++) - c000c346: 0bc1 addi s7,s7,16 - c000c348: b77d j c000c2f6 + c000c434: 0bc1 addi s7,s7,16 + c000c436: b77d j c000c3e4 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c34a: 002bca03 lbu s4,2(s7) - c000c34e: 001bc783 lbu a5,1(s7) + c000c438: 002bca03 lbu s4,2(s7) + c000c43c: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16587 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16595 pc += 2; - c000c352: 003b8913 addi s2,s7,3 + c000c440: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c356: 0a22 slli s4,s4,0x8 - c000c358: 00fa6833 or a6,s4,a5 + c000c444: 0a22 slli s4,s4,0x8 + c000c446: 00fa6833 or a6,s4,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16589 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16597 sf->cur_pc = pc; - c000c35c: 77fd lui a5,0xfffff - c000c35e: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c362: 97a2 add a5,a5,s0 - c000c364: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16586 + c000c44a: 77fd lui a5,0xfffff + c000c44c: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c450: 97a2 add a5,a5,s0 + c000c452: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16594 call_argc = get_u16(pc); - c000c366: 8a42 mv s4,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16588 + c000c454: 8a42 mv s4,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16596 call_argv = sp - call_argc; - c000c368: 0812 slli a6,a6,0x4 - c000c36a: 410d0833 sub a6,s10,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16589 + c000c456: 0812 slli a6,a6,0x4 + c000c458: 410d0833 sub a6,s10,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16597 sf->cur_pc = pc; - c000c36e: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16590 + c000c45c: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16598 ret_val = JS_CallConstructorInternal(ctx, call_argv[-2], - c000c372: ff083683 ld a3,-16(a6) - c000c376: ff883703 ld a4,-8(a6) - c000c37a: fe083583 ld a1,-32(a6) - c000c37e: fe883603 ld a2,-24(a6) - c000c382: 87d2 mv a5,s4 - c000c384: 4881 li a7,0 - c000c386: 8526 mv a0,s1 - c000c388: fe080a93 addi s5,a6,-32 - c000c38c: 70f2b0ef jal ra,c003829a - c000c390: f8040793 addi a5,s0,-128 - c000c394: 97ce add a5,a5,s3 - c000c396: 72b7b423 sd a1,1832(a5) - c000c39a: 72a7b023 sd a0,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16593 + c000c460: ff083683 ld a3,-16(a6) + c000c464: ff883703 ld a4,-8(a6) + c000c468: fe083583 ld a1,-32(a6) + c000c46c: fe883603 ld a2,-24(a6) + c000c470: 87d2 mv a5,s4 + c000c472: 4881 li a7,0 + c000c474: 8526 mv a0,s1 + c000c476: fe080a93 addi s5,a6,-32 + c000c47a: 7f12b0ef jal ra,c003846a + c000c47e: f8040793 addi a5,s0,-128 + c000c482: 97ce add a5,a5,s3 + c000c484: 72b7b423 sd a1,1832(a5) + c000c488: 72a7b023 sd a0,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16601 if (unlikely(JS_IsException(ret_val))) - c000c39e: 2581 sext.w a1,a1 - c000c3a0: 4799 li a5,6 - c000c3a2: a2f58c63 beq a1,a5,c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16595 + c000c48c: 2581 sext.w a1,a1 + c000c48e: 4799 li a5,6 + c000c490: a2f58c63 beq a1,a5,c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16603 for(i = -2; i < call_argc; i++) - c000c3a6: 5b79 li s6,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16596 (discriminator 3) + c000c494: 5b79 li s6,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16604 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c3a8: 000ab583 ld a1,0(s5) - c000c3ac: 008ab603 ld a2,8(s5) - c000c3b0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16595 (discriminator 3) + c000c496: 000ab583 ld a1,0(s5) + c000c49a: 008ab603 ld a2,8(s5) + c000c49e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16603 (discriminator 3) for(i = -2; i < call_argc; i++) - c000c3b2: 2b05 addiw s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16596 (discriminator 3) + c000c4a0: 2b05 addiw s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16604 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c3b4: f84fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16595 (discriminator 3) + c000c4a2: f84fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16603 (discriminator 3) for(i = -2; i < call_argc; i++) - c000c3b8: 0ac1 addi s5,s5,16 - c000c3ba: ff4b47e3 blt s6,s4,c000c3a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16598 + c000c4a6: 0ac1 addi s5,s5,16 + c000c4a8: ff4b47e3 blt s6,s4,c000c496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16606 *sp++ = ret_val; - c000c3be: f8040793 addi a5,s0,-128 - c000c3c2: 97ce add a5,a5,s3 - c000c3c4: 7207b703 ld a4,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16597 + c000c4ac: f8040793 addi a5,s0,-128 + c000c4b0: 97ce add a5,a5,s3 + c000c4b2: 7207b703 ld a4,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16605 sp -= call_argc + 2; - c000c3c8: 0a09 addi s4,s4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16598 + c000c4b6: 0a09 addi s4,s4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16606 *sp++ = ret_val; - c000c3ca: 7287b783 ld a5,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16597 + c000c4b8: 7287b783 ld a5,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16605 sp -= call_argc + 2; - c000c3ce: 0a12 slli s4,s4,0x4 - c000c3d0: 414d0a33 sub s4,s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16598 + c000c4bc: 0a12 slli s4,s4,0x4 + c000c4be: 414d0a33 sub s4,s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16606 *sp++ = ret_val; - c000c3d4: 010a0d13 addi s10,s4,16 - c000c3d8: 00ea3023 sd a4,0(s4) - c000c3dc: 00fa3423 sd a5,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16600 + c000c4c2: 010a0d13 addi s10,s4,16 + c000c4c6: 00ea3023 sd a4,0(s4) + c000c4ca: 00fa3423 sd a5,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16608 BREAK; - c000c3e0: 898ff06f j c000b478 + c000c4ce: 898ff06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c3e4: 002bcb03 lbu s6,2(s7) + c000c4d2: 002bcb03 lbu s6,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16607 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16615 sf->cur_pc = pc; - c000c3e8: 77fd lui a5,0xfffff + c000c4d6: 77fd lui a5,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c3ea: 001bc883 lbu a7,1(s7) + c000c4d8: 001bc883 lbu a7,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16607 - c000c3ee: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c3f2: 97a2 add a5,a5,s0 - c000c3f4: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16615 + c000c4dc: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c4e0: 97a2 add a5,a5,s0 + c000c4e2: 639c ld a5,0(a5) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c3f6: 0b22 slli s6,s6,0x8 - c000c3f8: 011b6633 or a2,s6,a7 + c000c4e4: 0b22 slli s6,s6,0x8 + c000c4e6: 011b6633 or a2,s6,a7 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16613 pc += 2; - c000c3fc: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16604 + c000c4ea: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16612 call_argc = get_u16(pc); - c000c400: 8b32 mv s6,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16606 + c000c4ee: 8b32 mv s6,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16614 call_argv = sp - call_argc; - c000c402: 0612 slli a2,a2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16607 + c000c4f0: 0612 slli a2,a2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16615 sf->cur_pc = pc; - c000c404: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16606 + c000c4f2: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16614 call_argv = sp - call_argc; - c000c408: 40cd0633 sub a2,s10,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16609 + c000c4f6: 40cd0633 sub a2,s10,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16617 JS_UNDEFINED, call_argc, call_argv, 0); - c000c40c: 478d li a5,3 - c000c40e: eef43c23 sd a5,-264(s0) - c000c412: ee043823 sd zero,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16608 + c000c4fa: 478d li a5,3 + c000c4fc: eef43c23 sd a5,-264(s0) + c000c500: ee043823 sd zero,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16616 ret_val = JS_CallInternal(ctx, call_argv[-1], call_argv[-2], - c000c416: e402 sd zero,8(sp) - c000c418: e032 sd a2,0(sp) - c000c41a: fe063683 ld a3,-32(a2) - c000c41e: ff063583 ld a1,-16(a2) - c000c422: fe060b93 addi s7,a2,-32 - c000c426: 008bb703 ld a4,8(s7) - c000c42a: ff863603 ld a2,-8(a2) - c000c42e: 4781 li a5,0 - c000c430: 88da mv a7,s6 - c000c432: 480d li a6,3 - c000c434: 8526 mv a0,s1 - c000c436: b67fe0ef jal ra,c000af9c - c000c43a: f8040793 addi a5,s0,-128 - c000c43e: 97ce add a5,a5,s3 - c000c440: 72a7b023 sd a0,1824(a5) - c000c444: 72b7b423 sd a1,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16610 + c000c504: e402 sd zero,8(sp) + c000c506: e032 sd a2,0(sp) + c000c508: fe063683 ld a3,-32(a2) + c000c50c: ff063583 ld a1,-16(a2) + c000c510: fe060b93 addi s7,a2,-32 + c000c514: 008bb703 ld a4,8(s7) + c000c518: ff863603 ld a2,-8(a2) + c000c51c: 4781 li a5,0 + c000c51e: 88da mv a7,s6 + c000c520: 480d li a6,3 + c000c522: 8526 mv a0,s1 + c000c524: b67fe0ef jal ra,c000b08a + c000c528: f8040793 addi a5,s0,-128 + c000c52c: 97ce add a5,a5,s3 + c000c52e: 72a7b023 sd a0,1824(a5) + c000c532: 72b7b423 sd a1,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16618 if (unlikely(JS_IsException(ret_val))) - c000c448: 0005869b sext.w a3,a1 - c000c44c: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16608 + c000c536: 0005869b sext.w a3,a1 + c000c53a: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16616 ret_val = JS_CallInternal(ctx, call_argv[-1], call_argv[-2], - c000c44e: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16610 + c000c53c: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16618 if (unlikely(JS_IsException(ret_val))) - c000c450: 98e68563 beq a3,a4,c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16612 + c000c53e: 98e68563 beq a3,a4,c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16620 if (opcode == OP_tail_call_method) - c000c454: 02500713 li a4,37 - c000c458: 08ea9863 bne s5,a4,c000c4e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16608 + c000c542: 02500713 li a4,37 + c000c546: 08ea9863 bne s5,a4,c000c5d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16616 ret_val = JS_CallInternal(ctx, call_argv[-1], call_argv[-2], - c000c45c: 7207a783 lw a5,1824(a5) - c000c460: 777d lui a4,0xfffff - c000c462: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> - c000c466: 9722 add a4,a4,s0 - c000c468: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18651 + c000c54a: 7207a783 lw a5,1824(a5) + c000c54e: 777d lui a4,0xfffff + c000c550: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> + c000c554: 9722 add a4,a4,s0 + c000c556: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18659 if (unlikely(!list_empty(&sf->var_ref_list))) { - c000c46a: 777d lui a4,0xfffff - c000c46c: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c470: 77fd lui a5,0xfffff - c000c472: 9722 add a4,a4,s0 - c000c474: 6318 ld a4,0(a4) - c000c476: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c47a: 97a2 add a5,a5,s0 - c000c47c: 639c ld a5,0(a5) - c000c47e: 7b18 ld a4,48(a4) - c000c480: 02878793 addi a5,a5,40 - c000c484: 00f70e63 beq a4,a5,c000c4a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18653 + c000c558: 777d lui a4,0xfffff + c000c55a: 66070713 addi a4,a4,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c55e: 77fd lui a5,0xfffff + c000c560: 9722 add a4,a4,s0 + c000c562: 6318 ld a4,0(a4) + c000c564: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c568: 97a2 add a5,a5,s0 + c000c56a: 639c ld a5,0(a5) + c000c56c: 7b18 ld a4,48(a4) + c000c56e: 02878793 addi a5,a5,40 + c000c572: 00f70e63 beq a4,a5,c000c58e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18661 close_var_refs(rt, sf); - c000c488: 77fd lui a5,0xfffff - c000c48a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c48e: 97a2 add a5,a5,s0 - c000c490: 638c ld a1,0(a5) - c000c492: 77fd lui a5,0xfffff - c000c494: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000c498: 97a2 add a5,a5,s0 - c000c49a: 6388 ld a0,0(a5) - c000c49c: 876fc0ef jal ra,c0008512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18656 (discriminator 1) + c000c576: 77fd lui a5,0xfffff + c000c578: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000c57c: 97a2 add a5,a5,s0 + c000c57e: 638c ld a1,0(a5) + c000c580: 77fd lui a5,0xfffff + c000c582: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000c586: 97a2 add a5,a5,s0 + c000c588: 6388 ld a0,0(a5) + c000c58a: 876fc0ef jal ra,c0008600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18664 (discriminator 1) for(pval = local_buf; pval < sp; pval++) { - c000c4a0: 77fd lui a5,0xfffff - c000c4a2: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000c4a6: 97a2 add a5,a5,s0 - c000c4a8: 639c ld a5,0(a5) - c000c4aa: 01a7e463 bltu a5,s10,c000c4b2 - c000c4ae: 0d60506f j c0011584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18657 (discriminator 3) + c000c58e: 77fd lui a5,0xfffff + c000c590: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000c594: 97a2 add a5,a5,s0 + c000c596: 639c ld a5,0(a5) + c000c598: 01a7e463 bltu a5,s10,c000c5a0 + c000c59c: 0d60506f j c0011672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18665 (discriminator 3) JS_FreeValue(ctx, *pval); - c000c4b2: 77fd lui a5,0xfffff - c000c4b4: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000c4b8: 97a2 add a5,a5,s0 - c000c4ba: 639c ld a5,0(a5) - c000c4bc: 8526 mv a0,s1 - c000c4be: 638c ld a1,0(a5) - c000c4c0: 77fd lui a5,0xfffff - c000c4c2: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000c4c6: 97a2 add a5,a5,s0 - c000c4c8: 639c ld a5,0(a5) - c000c4ca: 6790 ld a2,8(a5) - c000c4cc: e6cfb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18656 (discriminator 3) + c000c5a0: 77fd lui a5,0xfffff + c000c5a2: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000c5a6: 97a2 add a5,a5,s0 + c000c5a8: 639c ld a5,0(a5) + c000c5aa: 8526 mv a0,s1 + c000c5ac: 638c ld a1,0(a5) + c000c5ae: 77fd lui a5,0xfffff + c000c5b0: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000c5b4: 97a2 add a5,a5,s0 + c000c5b6: 639c ld a5,0(a5) + c000c5b8: 6790 ld a2,8(a5) + c000c5ba: e6cfb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18664 (discriminator 3) for(pval = local_buf; pval < sp; pval++) { - c000c4d0: 77fd lui a5,0xfffff - c000c4d2: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000c4d6: 97a2 add a5,a5,s0 - c000c4d8: 639c ld a5,0(a5) - c000c4da: 777d lui a4,0xfffff - c000c4dc: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c000c4e0: 07c1 addi a5,a5,16 - c000c4e2: 9722 add a4,a4,s0 - c000c4e4: e31c sd a5,0(a4) - c000c4e6: bf6d j c000c4a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16614 + c000c5be: 77fd lui a5,0xfffff + c000c5c0: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000c5c4: 97a2 add a5,a5,s0 + c000c5c6: 639c ld a5,0(a5) + c000c5c8: 777d lui a4,0xfffff + c000c5ca: 63870713 addi a4,a4,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c000c5ce: 07c1 addi a5,a5,16 + c000c5d0: 9722 add a4,a4,s0 + c000c5d2: e31c sd a5,0(a4) + c000c5d4: bf6d j c000c58e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16622 for(i = -2; i < call_argc; i++) - c000c4e8: 5af9 li s5,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16615 (discriminator 3) + c000c5d6: 5af9 li s5,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16623 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c4ea: 000bb583 ld a1,0(s7) - c000c4ee: 008bb603 ld a2,8(s7) - c000c4f2: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16614 (discriminator 3) + c000c5d8: 000bb583 ld a1,0(s7) + c000c5dc: 008bb603 ld a2,8(s7) + c000c5e0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16622 (discriminator 3) for(i = -2; i < call_argc; i++) - c000c4f4: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16615 (discriminator 3) + c000c5e2: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16623 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000c4f6: e42fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16614 (discriminator 3) + c000c5e4: e42fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16622 (discriminator 3) for(i = -2; i < call_argc; i++) - c000c4fa: 0bc1 addi s7,s7,16 - c000c4fc: ff6ac7e3 blt s5,s6,c000c4ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16617 + c000c5e8: 0bc1 addi s7,s7,16 + c000c5ea: ff6ac7e3 blt s5,s6,c000c5d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16625 *sp++ = ret_val; - c000c500: f8040793 addi a5,s0,-128 - c000c504: 97ce add a5,a5,s3 - c000c506: 7207b703 ld a4,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16616 + c000c5ee: f8040793 addi a5,s0,-128 + c000c5f2: 97ce add a5,a5,s3 + c000c5f4: 7207b703 ld a4,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16624 sp -= call_argc + 2; - c000c50a: 0b09 addi s6,s6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16617 + c000c5f8: 0b09 addi s6,s6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16625 *sp++ = ret_val; - c000c50c: 7287b783 ld a5,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16616 + c000c5fa: 7287b783 ld a5,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16624 sp -= call_argc + 2; - c000c510: 0b12 slli s6,s6,0x4 - c000c512: 416d0b33 sub s6,s10,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16617 + c000c5fe: 0b12 slli s6,s6,0x4 + c000c600: 416d0b33 sub s6,s10,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16625 *sp++ = ret_val; - c000c516: 010b0d13 addi s10,s6,16 - c000c51a: 00eb3023 sd a4,0(s6) - c000c51e: 00fb3423 sd a5,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16619 + c000c604: 010b0d13 addi s10,s6,16 + c000c608: 00eb3023 sd a4,0(s6) + c000c60c: 00fb3423 sd a5,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16627 BREAK; - c000c522: f57fe06f j c000b478 + c000c610: f57fe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c526: 002bca03 lbu s4,2(s7) - c000c52a: 001bc783 lbu a5,1(s7) + c000c614: 002bca03 lbu s4,2(s7) + c000c618: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 ret_val = JS_NewArray(ctx); - c000c52e: 8526 mv a0,s1 + c000c61c: 8526 mv a0,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c530: 0a22 slli s4,s4,0x8 - c000c532: 00fa6b33 or s6,s4,a5 + c000c61e: 0a22 slli s4,s4,0x8 + c000c620: 00fa6b33 or s6,s4,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16626 - c000c536: 2890a0ef jal ra,c0016fbe - c000c53a: f8040793 addi a5,s0,-128 - c000c53e: 01378ab3 add s5,a5,s3 - c000c542: 72aab023 sd a0,1824(s5) - c000c546: 72bab423 sd a1,1832(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 + c000c624: 36b0a0ef jal ra,c001718e + c000c628: f8040793 addi a5,s0,-128 + c000c62c: 01378ab3 add s5,a5,s3 + c000c630: 72aab023 sd a0,1824(s5) + c000c634: 72bab423 sd a1,1832(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16635 if (unlikely(JS_IsException(ret_val))) - c000c54a: 0005871b sext.w a4,a1 - c000c54e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16625 + c000c638: 0005871b sext.w a4,a1 + c000c63c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16633 pc += 2; - c000c550: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16624 + c000c63e: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16632 call_argc = get_u16(pc); - c000c554: 8a5a mv s4,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16626 + c000c642: 8a5a mv s4,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 ret_val = JS_NewArray(ctx); - c000c556: 862e mv a2,a1 - c000c558: 00050b9b sext.w s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16627 + c000c644: 862e mv a2,a1 + c000c646: 00050b9b sext.w s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16635 if (unlikely(JS_IsException(ret_val))) - c000c55c: 00f71463 bne a4,a5,c000c564 - c000c560: 87aff06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16629 + c000c64a: 00f71463 bne a4,a5,c000c652 + c000c64e: 87aff06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16637 call_argv = sp - call_argc; - c000c564: 0b12 slli s6,s6,0x4 - c000c566: 416d0b33 sub s6,s10,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16631 + c000c652: 0b12 slli s6,s6,0x4 + c000c654: 416d0b33 sub s6,s10,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16639 ret = JS_DefinePropertyValue(ctx, ret_val, __JS_AtomFromUInt32(i), call_argv[i], - c000c56a: 6811 lui a6,0x4 - c000c56c: 8c5a mv s8,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16630 + c000c658: 6811 lui a6,0x4 + c000c65a: 8c5a mv s8,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16638 for(i = 0; i < call_argc; i++) { - c000c56e: 4c81 li s9,0 + c000c65c: 4c81 li s9,0 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c000c570: 800008b7 lui a7,0x80000 + c000c65e: 800008b7 lui a7,0x80000 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16639 ret = JS_DefinePropertyValue(ctx, ret_val, __JS_AtomFromUInt32(i), call_argv[i], - c000c574: 081d addi a6,a6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16630 (discriminator 1) + c000c662: 081d addi a6,a6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16638 (discriminator 1) for(i = 0; i < call_argc; i++) { - c000c576: 034cc363 blt s9,s4,c000c59c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16640 + c000c664: 034cc363 blt s9,s4,c000c68a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16648 *sp++ = ret_val; - c000c57a: f8040793 addi a5,s0,-128 - c000c57e: 97ce add a5,a5,s3 - c000c580: 7377a023 sw s7,1824(a5) - c000c584: 72c7b423 sd a2,1832(a5) - c000c588: 7207b783 ld a5,1824(a5) - c000c58c: 010b0d13 addi s10,s6,16 - c000c590: 00cb3423 sd a2,8(s6) - c000c594: 00fb3023 sd a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16642 + c000c668: f8040793 addi a5,s0,-128 + c000c66c: 97ce add a5,a5,s3 + c000c66e: 7377a023 sw s7,1824(a5) + c000c672: 72c7b423 sd a2,1832(a5) + c000c676: 7207b783 ld a5,1824(a5) + c000c67a: 010b0d13 addi s10,s6,16 + c000c67e: 00cb3423 sd a2,8(s6) + c000c682: 00fb3023 sd a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16650 BREAK; - c000c598: ee1fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16631 + c000c686: ee1fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16639 ret = JS_DefinePropertyValue(ctx, ret_val, __JS_AtomFromUInt32(i), call_argv[i], - c000c59c: 737aa023 sw s7,1824(s5) - c000c5a0: 757d lui a0,0xfffff - c000c5a2: 008c3783 ld a5,8(s8) - c000c5a6: 000c3703 ld a4,0(s8) - c000c5aa: 720ab583 ld a1,1824(s5) - c000c5ae: 63050513 addi a0,a0,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000c68a: 737aa023 sw s7,1824(s5) + c000c68e: 757d lui a0,0xfffff + c000c690: 008c3783 ld a5,8(s8) + c000c694: 000c3703 ld a4,0(s8) + c000c698: 720ab583 ld a1,1824(s5) + c000c69c: 63050513 addi a0,a0,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c000c5b2: 011ce6b3 or a3,s9,a7 + c000c6a0: 011ce6b3 or a3,s9,a7 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16639 ret = JS_DefinePropertyValue(ctx, ret_val, __JS_AtomFromUInt32(i), call_argv[i], - c000c5b6: 9522 add a0,a0,s0 - c000c5b8: e110 sd a2,0(a0) - c000c5ba: 2681 sext.w a3,a3 - c000c5bc: 8526 mv a0,s1 - c000c5be: 72cab423 sd a2,1832(s5) - c000c5c2: 1f5060ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 + c000c6a4: 9522 add a0,a0,s0 + c000c6a6: e110 sd a2,0(a0) + c000c6a8: 2681 sext.w a3,a3 + c000c6aa: 8526 mv a0,s1 + c000c6ac: 72cab423 sd a2,1832(s5) + c000c6b0: 1f5060ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16642 if (ret < 0) { - c000c5c6: 77fd lui a5,0xfffff - c000c5c8: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000c5cc: 97a2 add a5,a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16633 + c000c6b4: 77fd lui a5,0xfffff + c000c6b6: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000c6ba: 97a2 add a5,a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16641 call_argv[i] = JS_UNDEFINED; - c000c5ce: 430d li t1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 + c000c6bc: 430d li t1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16642 if (ret < 0) { - c000c5d0: 6390 ld a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16633 + c000c6be: 6390 ld a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16641 call_argv[i] = JS_UNDEFINED; - c000c5d2: 000c3023 sd zero,0(s8) - c000c5d6: 006c3423 sd t1,8(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16634 + c000c6c0: 000c3023 sd zero,0(s8) + c000c6c4: 006c3423 sd t1,8(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16642 if (ret < 0) { - c000c5da: 6791 lui a5,0x4 - c000c5dc: 0c41 addi s8,s8,16 - c000c5de: 00778813 addi a6,a5,7 # 4007 <__clzdi2-0xbfffbff9> - c000c5e2: 800008b7 lui a7,0x80000 - c000c5e6: 00055b63 bgez a0,c000c5fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16635 + c000c6c8: 6791 lui a5,0x4 + c000c6ca: 0c41 addi s8,s8,16 + c000c6cc: 00778813 addi a6,a5,7 # 4007 <__clzdi2-0xbfffbff9> + c000c6d0: 800008b7 lui a7,0x80000 + c000c6d4: 00055b63 bgez a0,c000c6ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16643 JS_FreeValue(ctx, ret_val); - c000c5ea: 720ab583 ld a1,1824(s5) - c000c5ee: 728ab603 ld a2,1832(s5) - c000c5f2: 8526 mv a0,s1 - c000c5f4: d44fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16636 + c000c6d8: 720ab583 ld a1,1824(s5) + c000c6dc: 728ab603 ld a2,1832(s5) + c000c6e0: 8526 mv a0,s1 + c000c6e2: d44fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16644 goto exception; - c000c5f8: fe3fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16630 + c000c6e6: fe3fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16638 for(i = 0; i < call_argc; i++) { - c000c5fc: 2c85 addiw s9,s9,1 - c000c5fe: bfa5 j c000c576 + c000c6ea: 2c85 addiw s9,s9,1 + c000c6ec: bfa5 j c000c664 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c600: 002bc783 lbu a5,2(s7) - c000c604: 001bc703 lbu a4,1(s7) + c000c6ee: 002bc783 lbu a5,2(s7) + c000c6f2: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16658 ret_val = js_function_apply(ctx, sp[-3], 2, (JSValueConst *)&sp[-2], magic); - c000c608: fd0d3583 ld a1,-48(s10) - c000c60c: fd8d3603 ld a2,-40(s10) - c000c610: fe0d0a13 addi s4,s10,-32 + c000c6f6: fd0d3583 ld a1,-48(s10) + c000c6fa: fd8d3603 ld a2,-40(s10) + c000c6fe: fe0d0a13 addi s4,s10,-32 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c614: 07a2 slli a5,a5,0x8 + c000c702: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16650 - c000c616: 8fd9 or a5,a5,a4 - c000c618: 4689 li a3,2 - c000c61a: 8752 mv a4,s4 - c000c61c: 8526 mv a0,s1 - c000c61e: 1022d0ef jal ra,c0039720 - c000c622: f8040793 addi a5,s0,-128 - c000c626: 01378ab3 add s5,a5,s3 - c000c62a: 72bab423 sd a1,1832(s5) - c000c62e: 72aab023 sd a0,1824(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16658 + c000c704: 8fd9 or a5,a5,a4 + c000c706: 4689 li a3,2 + c000c708: 8752 mv a4,s4 + c000c70a: 8526 mv a0,s1 + c000c70c: 1e42d0ef jal ra,c00398f0 + c000c710: f8040793 addi a5,s0,-128 + c000c714: 01378ab3 add s5,a5,s3 + c000c718: 72bab423 sd a1,1832(s5) + c000c71c: 72aab023 sd a0,1824(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16659 if (unlikely(JS_IsException(ret_val))) - c000c632: 2581 sext.w a1,a1 - c000c634: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16648 + c000c720: 2581 sext.w a1,a1 + c000c722: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16656 pc += 2; - c000c636: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16651 + c000c724: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16659 if (unlikely(JS_IsException(ret_val))) - c000c63a: 00f59463 bne a1,a5,c000c642 - c000c63e: f9dfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16653 + c000c728: 00f59463 bne a1,a5,c000c730 + c000c72c: f9dfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16661 JS_FreeValue(ctx, sp[-3]); - c000c642: fd0d3583 ld a1,-48(s10) - c000c646: fd8d3603 ld a2,-40(s10) - c000c64a: 8526 mv a0,s1 - c000c64c: cecfb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16654 + c000c730: fd0d3583 ld a1,-48(s10) + c000c734: fd8d3603 ld a2,-40(s10) + c000c738: 8526 mv a0,s1 + c000c73a: cecfb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16662 JS_FreeValue(ctx, sp[-2]); - c000c650: fe0d3583 ld a1,-32(s10) - c000c654: fe8d3603 ld a2,-24(s10) - c000c658: 8526 mv a0,s1 - c000c65a: cdefb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16655 + c000c73e: fe0d3583 ld a1,-32(s10) + c000c742: fe8d3603 ld a2,-24(s10) + c000c746: 8526 mv a0,s1 + c000c748: cdefb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16663 JS_FreeValue(ctx, sp[-1]); - c000c65e: ff0d3583 ld a1,-16(s10) - c000c662: ff8d3603 ld a2,-8(s10) - c000c666: 8526 mv a0,s1 - c000c668: cd0fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16657 + c000c74c: ff0d3583 ld a1,-16(s10) + c000c750: ff8d3603 ld a2,-8(s10) + c000c754: 8526 mv a0,s1 + c000c756: cd0fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16665 *sp++ = ret_val; - c000c66c: 720ab783 ld a5,1824(s5) - c000c670: fcfd3823 sd a5,-48(s10) - c000c674: 728ab783 ld a5,1832(s5) - c000c678: fcfd3c23 sd a5,-40(s10) - c000c67c: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16659 + c000c75a: 720ab783 ld a5,1824(s5) + c000c75e: fcfd3823 sd a5,-48(s10) + c000c762: 728ab783 ld a5,1832(s5) + c000c766: fcfd3c23 sd a5,-40(s10) + c000c76a: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16667 BREAK; - c000c67e: dfbfe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16661 + c000c76c: dfbfe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16669 ret_val = *--sp; - c000c682: f8040713 addi a4,s0,-128 - c000c686: 77fd lui a5,0xfffff - c000c688: 97ba add a5,a5,a4 - c000c68a: ff8d3a03 ld s4,-8(s10) - c000c68e: ff0d3703 ld a4,-16(s10) - c000c692: 1d41 addi s10,s10,-16 - c000c694: 7347b423 sd s4,1832(a5) # fffffffffffff728 <_ebss+0xffffffff3fefe602> - c000c698: 72e7b023 sd a4,1824(a5) - c000c69c: 000d2783 lw a5,0(s10) - c000c6a0: 777d lui a4,0xfffff - c000c6a2: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> - c000c6a6: 9722 add a4,a4,s0 - c000c6a8: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16662 + c000c770: f8040713 addi a4,s0,-128 + c000c774: 77fd lui a5,0xfffff + c000c776: 97ba add a5,a5,a4 + c000c778: ff8d3a03 ld s4,-8(s10) + c000c77c: ff0d3703 ld a4,-16(s10) + c000c780: 1d41 addi s10,s10,-16 + c000c782: 7347b423 sd s4,1832(a5) # fffffffffffff728 <_ebss+0xffffffff3fefe602> + c000c786: 72e7b023 sd a4,1824(a5) + c000c78a: 000d2783 lw a5,0(s10) + c000c78e: 777d lui a4,0xfffff + c000c790: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> + c000c794: 9722 add a4,a4,s0 + c000c796: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16670 goto done; - c000c6aa: b3c1 j c000c46a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16664 + c000c798: b3c1 j c000c558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16672 ret_val = JS_UNDEFINED; - c000c6ac: 77fd lui a5,0xfffff - c000c6ae: f8040713 addi a4,s0,-128 - c000c6b2: 97ba add a5,a5,a4 - c000c6b4: 7207a223 sw zero,1828(a5) # fffffffffffff724 <_ebss+0xffffffff3fefe5fe> - c000c6b8: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16665 + c000c79a: 77fd lui a5,0xfffff + c000c79c: f8040713 addi a4,s0,-128 + c000c7a0: 97ba add a5,a5,a4 + c000c7a2: 7207a223 sw zero,1828(a5) # fffffffffffff724 <_ebss+0xffffffff3fefe5fe> + c000c7a6: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16673 goto done; - c000c6ba: bb45 j c000c46a + c000c7a8: bb45 j c000c558 JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c000c6bc: ff8d2783 lw a5,-8(s10) + c000c7aa: ff8d2783 lw a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16669 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16677 if (!JS_IsObject(sp[-1])) { - c000c6c0: 577d li a4,-1 - c000c6c2: 02e78a63 beq a5,a4,c000c6f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16670 + c000c7ae: 577d li a4,-1 + c000c7b0: 02e78a63 beq a5,a4,c000c7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16678 if (!JS_IsUndefined(sp[-1])) { - c000c6c6: 470d li a4,3 - c000c6c8: 00e78f63 beq a5,a4,c000c6e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16671 + c000c7b4: 470d li a4,3 + c000c7b6: 00e78f63 beq a5,a4,c000c7d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16679 JS_ThrowTypeError(caller_ctx, "derived class constructor must return an object or undefined"); - c000c6cc: 77fd lui a5,0xfffff - c000c6ce: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> - c000c6d2: 97a2 add a5,a5,s0 - c000c6d4: 6388 ld a0,0(a5) - c000c6d6: 00051597 auipc a1,0x51 - c000c6da: 97258593 addi a1,a1,-1678 # c005d048 - c000c6de: 519060ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16672 + c000c7ba: 77fd lui a5,0xfffff + c000c7bc: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> + c000c7c0: 97a2 add a5,a5,s0 + c000c7c2: 6388 ld a0,0(a5) + c000c7c4: 00051597 auipc a1,0x51 + c000c7c8: ab458593 addi a1,a1,-1356 # c005d278 + c000c7cc: 519060ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16680 goto exception; - c000c6e2: ef9fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16674 + c000c7d0: ef9fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16682 sp[0] = JS_TRUE; - c000c6e6: 4785 li a5,1 - c000c6e8: 00fd3023 sd a5,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16676 + c000c7d4: 4785 li a5,1 + c000c7d6: 00fd3023 sd a5,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16684 sp[0] = JS_FALSE; - c000c6ec: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16678 + c000c7da: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16686 sp++; - c000c6f0: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16679 + c000c7de: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16687 BREAK; - c000c6f2: d87fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16676 + c000c7e0: d87fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16684 sp[0] = JS_FALSE; - c000c6f6: 000d3023 sd zero,0(s10) - c000c6fa: 4785 li a5,1 - c000c6fc: bfc5 j c000c6ec + c000c7e4: 000d3023 sd zero,0(s10) + c000c7e8: 4785 li a5,1 + c000c7ea: bfc5 j c000c7da JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c000c6fe: f8040793 addi a5,s0,-128 - c000c702: 97ce add a5,a5,s3 + c000c7ec: f8040793 addi a5,s0,-128 + c000c7f0: 97ce add a5,a5,s3 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16681 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16689 if (JS_IsUndefined(new_target)) { - c000c704: 6f87a703 lw a4,1784(a5) - c000c708: 478d li a5,3 - c000c70a: 00f70463 beq a4,a5,c000c712 - c000c70e: d6bfe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16682 + c000c7f2: 6f87a703 lw a4,1784(a5) + c000c7f6: 478d li a5,3 + c000c7f8: 00f70463 beq a4,a5,c000c800 + c000c7fc: d6bfe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16690 JS_ThrowTypeError(ctx, "class constructors must be invoked with 'new'"); - c000c712: 8526 mv a0,s1 - c000c714: 00051597 auipc a1,0x51 - c000c718: 97458593 addi a1,a1,-1676 # c005d088 - c000c71c: 4db060ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16683 + c000c800: 8526 mv a0,s1 + c000c802: 00051597 auipc a1,0x51 + c000c806: ab658593 addi a1,a1,-1354 # c005d2b8 + c000c80a: 4db060ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16691 goto exception; - c000c720: ebbfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16688 + c000c80e: ebbfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16696 int ret = JS_CheckBrand(ctx, sp[-2], sp[-1]); - c000c724: ff0d3683 ld a3,-16(s10) - c000c728: ff8d3703 ld a4,-8(s10) - c000c72c: fe0d3583 ld a1,-32(s10) - c000c730: fe8d3603 ld a2,-24(s10) - c000c734: 8526 mv a0,s1 - c000c736: 38a070ef jal ra,c0013ac0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16689 + c000c812: ff0d3683 ld a3,-16(s10) + c000c816: ff8d3703 ld a4,-8(s10) + c000c81a: fe0d3583 ld a1,-32(s10) + c000c81e: fe8d3603 ld a2,-24(s10) + c000c822: 8526 mv a0,s1 + c000c824: 38a070ef jal ra,c0013bae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16697 if (ret < 0) - c000c73a: 00055463 bgez a0,c000c742 - c000c73e: e9dfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16691 + c000c828: 00055463 bgez a0,c000c830 + c000c82c: e9dfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16699 if (!ret) { - c000c742: c119 beqz a0,c000c748 - c000c744: d35fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16692 + c000c830: c119 beqz a0,c000c836 + c000c832: d35fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16700 JS_ThrowTypeError(ctx, "invalid brand on object"); - c000c748: 8526 mv a0,s1 - c000c74a: 00051597 auipc a1,0x51 - c000c74e: 96e58593 addi a1,a1,-1682 # c005d0b8 - c000c752: 4a5060ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16693 + c000c836: 8526 mv a0,s1 + c000c838: 00051597 auipc a1,0x51 + c000c83c: ab058593 addi a1,a1,-1360 # c005d2e8 + c000c840: 4a5060ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16701 goto exception; - c000c756: e85fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16698 + c000c844: e85fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16706 if (JS_AddBrand(ctx, sp[-2], sp[-1]) < 0) - c000c75a: ff8d3783 ld a5,-8(s10) - c000c75e: fe0d3a83 ld s5,-32(s10) - c000c762: fe8d3a03 ld s4,-24(s10) - c000c766: ff0d3c03 ld s8,-16(s10) - c000c76a: bef43c23 sd a5,-1032(s0) - c000c76e: bf543023 sd s5,-1056(s0) - c000c772: bf443423 sd s4,-1048(s0) - c000c776: bf843823 sd s8,-1040(s0) + c000c848: ff8d3783 ld a5,-8(s10) + c000c84c: fe0d3a83 ld s5,-32(s10) + c000c850: fe8d3a03 ld s4,-24(s10) + c000c854: ff0d3c03 ld s8,-16(s10) + c000c858: bef43c23 sd a5,-1032(s0) + c000c85c: bf543023 sd s5,-1056(s0) + c000c860: bf443423 sd s4,-1048(s0) + c000c864: bf843823 sd s8,-1040(s0) JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7441 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7449 if (unlikely(JS_VALUE_GET_TAG(home_obj) != JS_TAG_OBJECT)) { - c000c77a: 2781 sext.w a5,a5 - c000c77c: 577d li a4,-1 + c000c868: 2781 sext.w a5,a5 + c000c86a: 577d li a4,-1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16698 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16706 if (JS_AddBrand(ctx, sp[-2], sp[-1]) < 0) - c000c77e: fe0d0b13 addi s6,s10,-32 - c000c782: ff0d0b93 addi s7,s10,-16 + c000c86c: fe0d0b13 addi s6,s10,-32 + c000c870: ff0d0b93 addi s7,s10,-16 JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7441 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7449 if (unlikely(JS_VALUE_GET_TAG(home_obj) != JS_TAG_OBJECT)) { - c000c786: 00e78763 beq a5,a4,c000c794 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7442 + c000c874: 00e78763 beq a5,a4,c000c882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7450 JS_ThrowTypeErrorNotAnObject(ctx); - c000c78a: 8526 mv a0,s1 - c000c78c: 1ec070ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7443 + c000c878: 8526 mv a0,s1 + c000c87a: 1ec070ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7451 return -1; - c000c790: e4bfe06f j c000b5da + c000c87e: e4bfe06f j c000b6c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000c794: 018c3703 ld a4,24(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000c882: 018c3703 ld a4,24(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c798: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000c886: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000c79a: 04000637 lui a2,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000c888: 04000637 lui a2,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000c79e: 531c lw a5,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000c88c: 531c lw a5,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000c7a0: 0ca00593 li a1,202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000c88e: 0ca00593 li a1,202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000c7a4: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000c892: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000c7a6: 0ca7f793 andi a5,a5,202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000c894: 0ca7f793 andi a5,a5,202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c7aa: 0785 addi a5,a5,1 - c000c7ac: 02d787b3 mul a5,a5,a3 + c000c898: 0785 addi a5,a5,1 + c000c89a: 02d787b3 mul a5,a5,a3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000c7b0: 04070693 addi a3,a4,64 + c000c89e: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c7b4: 97ba add a5,a5,a4 - c000c7b6: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000c8a2: 97ba add a5,a5,a4 + c000c8a4: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000c7ba: e3b1 bnez a5,c000c7fe + c000c8a8: e3b1 bnez a5,c000c8ec JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7449 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7457 brand = JS_NewSymbolFromAtom(ctx, JS_ATOM_brand, JS_ATOM_TYPE_PRIVATE); - c000c7bc: 07800593 li a1,120 - c000c7c0: 8526 mv a0,s1 - c000c7c2: 3520c0ef jal ra,c0018b14 - c000c7c6: eeb43c23 sd a1,-264(s0) - c000c7ca: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7450 + c000c8aa: 07800593 li a1,120 + c000c8ae: 8526 mv a0,s1 + c000c8b0: 4340c0ef jal ra,c0018ce4 + c000c8b4: eeb43c23 sd a1,-264(s0) + c000c8b8: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7458 if (JS_IsException(brand)) - c000c7ce: 2581 sext.w a1,a1 - c000c7d0: 4799 li a5,6 - c000c7d2: 00f59463 bne a1,a5,c000c7da - c000c7d6: e05fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7452 + c000c8bc: 2581 sext.w a1,a1 + c000c8be: 4799 li a5,6 + c000c8c0: 00f59463 bne a1,a5,c000c8c8 + c000c8c4: e05fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7460 pr = add_property(ctx, p, JS_ATOM_Private_brand, JS_PROP_C_W_E); - c000c7da: 85e2 mv a1,s8 - c000c7dc: 469d li a3,7 - c000c7de: 0ca00613 li a2,202 - c000c7e2: 8526 mv a0,s1 - c000c7e4: 3e3090ef jal ra,c00163c6 - c000c7e8: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7453 + c000c8c8: 85e2 mv a1,s8 + c000c8ca: 469d li a3,7 + c000c8cc: 0ca00613 li a2,202 + c000c8d0: 8526 mv a0,s1 + c000c8d2: 4c5090ef jal ra,c0016596 + c000c8d6: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7461 if (!pr) { - c000c7ea: e961 bnez a0,c000c8ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7454 + c000c8d8: e961 bnez a0,c000c9a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7462 JS_FreeValue(ctx, brand); - c000c7ec: ef043583 ld a1,-272(s0) - c000c7f0: ef843603 ld a2,-264(s0) - c000c7f4: 8526 mv a0,s1 - c000c7f6: b42fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7455 + c000c8da: ef043583 ld a1,-272(s0) + c000c8de: ef843603 ld a2,-264(s0) + c000c8e2: 8526 mv a0,s1 + c000c8e4: b42fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7463 return -1; - c000c7fa: de1fe06f j c000b5da + c000c8e8: de1fe06f j c000b6c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000c7fe: 00379713 slli a4,a5,0x3 - c000c802: 1761 addi a4,a4,-8 - c000c804: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000c8ec: 00379713 slli a4,a5,0x3 + c000c8f0: 1761 addi a4,a4,-8 + c000c8f2: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000c806: 4348 lw a0,4(a4) - c000c808: 0ab51463 bne a0,a1,c000c8b0 + c000c8f4: 4348 lw a0,4(a4) + c000c8f6: 0ab51463 bne a0,a1,c000c99e JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7459 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7467 brand = JS_DupValue(ctx, pr->u.value); - c000c80c: 020c3703 ld a4,32(s8) - c000c810: 0792 slli a5,a5,0x4 - c000c812: 97ba add a5,a5,a4 - c000c814: ff07b503 ld a0,-16(a5) - c000c818: ff87b583 ld a1,-8(a5) - c000c81c: e53f90ef jal ra,c000666e - c000c820: eea43823 sd a0,-272(s0) - c000c824: eeb43c23 sd a1,-264(s0) + c000c8fa: 020c3703 ld a4,32(s8) + c000c8fe: 0792 slli a5,a5,0x4 + c000c900: 97ba add a5,a5,a4 + c000c902: ff07b503 ld a0,-16(a5) + c000c906: ff87b583 ld a1,-8(a5) + c000c90a: e53f90ef jal ra,c000675c + c000c90e: eea43823 sd a0,-272(s0) + c000c912: eeb43c23 sd a1,-264(s0) js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000c828: ef043583 ld a1,-272(s0) - c000c82c: 6c88 ld a0,24(s1) + c000c916: ef043583 ld a1,-272(s0) + c000c91a: 6c88 ld a0,24(s1) JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7471 if (JS_IsObject(obj)) { - c000c82e: 2a01 sext.w s4,s4 + c000c91c: 2a01 sext.w s4,s4 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000c830: 9a0f90ef jal ra,c00059d0 + c000c91e: 9a0f90ef jal ra,c0005abe JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7471 if (JS_IsObject(obj)) { - c000c834: 57fd li a5,-1 + c000c922: 57fd li a5,-1 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000c836: 00050c1b sext.w s8,a0 + c000c924: 00050c1b sext.w s8,a0 JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7471 if (JS_IsObject(obj)) { - c000c83a: 0afa1863 bne s4,a5,c000c8ea + c000c928: 0afa1863 bne s4,a5,c000c9d8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000c83e: 018ab703 ld a4,24(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000c92c: 018ab703 ld a4,24(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c842: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000c930: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000c844: 531c lw a5,32(a4) - c000c846: 00fc77b3 and a5,s8,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000c932: 531c lw a5,32(a4) + c000c934: 00fc77b3 and a5,s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c84a: 1782 slli a5,a5,0x20 - c000c84c: 9381 srli a5,a5,0x20 - c000c84e: 0785 addi a5,a5,1 - c000c850: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000c938: 1782 slli a5,a5,0x20 + c000c93a: 9381 srli a5,a5,0x20 + c000c93c: 0785 addi a5,a5,1 + c000c93e: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000c854: 040006b7 lui a3,0x4000 - c000c858: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000c942: 040006b7 lui a3,0x4000 + c000c946: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000c85a: 97ba add a5,a5,a4 - c000c85c: 0007e783 lwu a5,0(a5) + c000c948: 97ba add a5,a5,a4 + c000c94a: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000c860: 04070713 addi a4,a4,64 + c000c94e: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000c864: e7b5 bnez a5,c000c8d0 + c000c952: e7b5 bnez a5,c000c9be JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7479 pr = add_property(ctx, p1, brand_atom, JS_PROP_C_W_E); - c000c866: 85d6 mv a1,s5 - c000c868: 469d li a3,7 - c000c86a: 8662 mv a2,s8 - c000c86c: 8526 mv a0,s1 - c000c86e: 359090ef jal ra,c00163c6 - c000c872: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7472 + c000c954: 85d6 mv a1,s5 + c000c956: 469d li a3,7 + c000c958: 8662 mv a2,s8 + c000c95a: 8526 mv a0,s1 + c000c95c: 43b090ef jal ra,c0016596 + c000c960: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7480 JS_FreeAtom(ctx, brand_atom); - c000c874: 85e2 mv a1,s8 - c000c876: 8526 mv a0,s1 - c000c878: c95fa0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7473 + c000c962: 85e2 mv a1,s8 + c000c964: 8526 mv a0,s1 + c000c966: c95fa0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7481 if (!pr) - c000c87c: 000a1463 bnez s4,c000c884 - c000c880: d5bfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7475 + c000c96a: 000a1463 bnez s4,c000c972 + c000c96e: d5bfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7483 pr->u.value = JS_UNDEFINED; - c000c884: 478d li a5,3 - c000c886: 000a3023 sd zero,0(s4) - c000c88a: 00fa3423 sd a5,8(s4) + c000c972: 478d li a5,3 + c000c974: 000a3023 sd zero,0(s4) + c000c978: 00fa3423 sd a5,8(s4) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16708 JS_FreeValue(ctx, sp[-2]); - c000c88e: 000b3583 ld a1,0(s6) - c000c892: 008b3603 ld a2,8(s6) - c000c896: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16703 + c000c97c: 000b3583 ld a1,0(s6) + c000c980: 008b3603 ld a2,8(s6) + c000c984: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16711 BREAK; - c000c898: 8d5a mv s10,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16700 + c000c986: 8d5a mv s10,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16708 JS_FreeValue(ctx, sp[-2]); - c000c89a: a9efb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16701 + c000c988: a9efb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16709 JS_FreeValue(ctx, sp[-1]); - c000c89e: 000bb583 ld a1,0(s7) - c000c8a2: 008bb603 ld a2,8(s7) - c000c8a6: 8526 mv a0,s1 - c000c8a8: a90fb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16703 + c000c98c: 000bb583 ld a1,0(s7) + c000c990: 008bb603 ld a2,8(s7) + c000c994: 8526 mv a0,s1 + c000c996: a90fb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16711 BREAK; - c000c8ac: bcdfe06f j c000b478 + c000c99a: bcdfe06f j c000b566 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000c8b0: 431c lw a5,0(a4) - c000c8b2: 8ff1 and a5,a5,a2 - c000c8b4: 1782 slli a5,a5,0x20 - c000c8b6: 9381 srli a5,a5,0x20 - c000c8b8: b709 j c000c7ba + c000c99e: 431c lw a5,0(a4) + c000c9a0: 8ff1 and a5,a5,a2 + c000c9a2: 1782 slli a5,a5,0x20 + c000c9a4: 9381 srli a5,a5,0x20 + c000c9a6: b709 j c000c8a8 JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7465 pr->u.value = JS_DupValue(ctx, brand); - c000c8ba: ef043503 ld a0,-272(s0) - c000c8be: ef843583 ld a1,-264(s0) - c000c8c2: dadf90ef jal ra,c000666e - c000c8c6: 00ac3023 sd a0,0(s8) - c000c8ca: 00bc3423 sd a1,8(s8) - c000c8ce: bfa9 j c000c828 + c000c9a8: ef043503 ld a0,-272(s0) + c000c9ac: ef843583 ld a1,-264(s0) + c000c9b0: dadf90ef jal ra,c000675c + c000c9b4: 00ac3023 sd a0,0(s8) + c000c9b8: 00bc3423 sd a1,8(s8) + c000c9bc: bfa9 j c000c916 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000c8d0: 078e slli a5,a5,0x3 - c000c8d2: 17e1 addi a5,a5,-8 - c000c8d4: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000c9be: 078e slli a5,a5,0x3 + c000c9c0: 17e1 addi a5,a5,-8 + c000c9c2: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000c8d6: 43d0 lw a2,4(a5) - c000c8d8: 01861463 bne a2,s8,c000c8e0 - c000c8dc: 7170406f j c00117f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000c9c4: 43d0 lw a2,4(a5) + c000c9c6: 01861463 bne a2,s8,c000c9ce + c000c9ca: 7170406f j c00118e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000c8e0: 439c lw a5,0(a5) - c000c8e2: 8ff5 and a5,a5,a3 - c000c8e4: 1782 slli a5,a5,0x20 - c000c8e6: 9381 srli a5,a5,0x20 - c000c8e8: bfb5 j c000c864 + c000c9ce: 439c lw a5,0(a5) + c000c9d0: 8ff5 and a5,a5,a3 + c000c9d2: 1782 slli a5,a5,0x20 + c000c9d4: 9381 srli a5,a5,0x20 + c000c9d6: bfb5 j c000c952 JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7485 JS_FreeAtom(ctx, brand_atom); - c000c8ea: 85e2 mv a1,s8 - c000c8ec: 8526 mv a0,s1 - c000c8ee: c1ffa0ef jal ra,c000750c - c000c8f2: bf71 j c000c88e + c000c9d8: 85e2 mv a1,s8 + c000c9da: 8526 mv a0,s1 + c000c9dc: c1ffa0ef jal ra,c00075fa + c000c9e0: bf71 j c000c97c JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16706 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16714 JS_Throw(ctx, *--sp); - c000c8f4: ff0d3583 ld a1,-16(s10) - c000c8f8: ff8d3603 ld a2,-8(s10) - c000c8fc: 8526 mv a0,s1 - c000c8fe: 1d41 addi s10,s10,-16 - c000c900: d7dfd0ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16707 + c000c9e2: ff0d3583 ld a1,-16(s10) + c000c9e6: ff8d3603 ld a2,-8(s10) + c000c9ea: 8526 mv a0,s1 + c000c9ec: 1d41 addi s10,s10,-16 + c000c9ee: d7dfd0ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16715 goto exception; - c000c904: cd7fe06f j c000b5da + c000c9f2: cd7fe06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000c908: 002bc783 lbu a5,2(s7) - c000c90c: 001bc583 lbu a1,1(s7) + c000c9f6: 002bc783 lbu a5,2(s7) + c000c9fa: 001bc583 lbu a1,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16719 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16727 type = pc[4]; - c000c910: 005bc603 lbu a2,5(s7) + c000c9fe: 005bc603 lbu a2,5(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000c914: 07a2 slli a5,a5,0x8 - c000c916: 8fcd or a5,a5,a1 - c000c918: 003bc583 lbu a1,3(s7) + c000ca02: 07a2 slli a5,a5,0x8 + c000ca04: 8fcd or a5,a5,a1 + c000ca06: 003bc583 lbu a1,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16720 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16728 pc += 5; - c000c91c: 006b8913 addi s2,s7,6 + c000ca0a: 006b8913 addi s2,s7,6 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000c920: 05c2 slli a1,a1,0x10 - c000c922: 8fcd or a5,a5,a1 - c000c924: 004bc583 lbu a1,4(s7) - c000c928: 05e2 slli a1,a1,0x18 - c000c92a: 8ddd or a1,a1,a5 - c000c92c: 2581 sext.w a1,a1 + c000ca0e: 05c2 slli a1,a1,0x10 + c000ca10: 8fcd or a5,a5,a1 + c000ca12: 004bc583 lbu a1,4(s7) + c000ca16: 05e2 slli a1,a1,0x18 + c000ca18: 8ddd or a1,a1,a5 + c000ca1a: 2581 sext.w a1,a1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16721 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16729 if (type == JS_THROW_VAR_RO) - c000c92e: ee11 bnez a2,c000c94a + c000ca1c: ee11 bnez a2,c000ca38 JS_ThrowTypeErrorReadOnly(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 JS_ThrowTypeErrorAtom(ctx, "'%s' is read-only", atom); - c000c930: 00050697 auipc a3,0x50 - c000c934: 6a068693 addi a3,a3,1696 # c005cfd0 - c000c938: 00050617 auipc a2,0x50 - c000c93c: 79860613 addi a2,a2,1944 # c005d0d0 - c000c940: 8526 mv a0,s1 - c000c942: 391060ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6785 + c000ca1e: 00050697 auipc a3,0x50 + c000ca22: 7e268693 addi a3,a3,2018 # c005d200 + c000ca26: 00051617 auipc a2,0x51 + c000ca2a: 8da60613 addi a2,a2,-1830 # c005d300 + c000ca2e: 8526 mv a0,s1 + c000ca30: 391060ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6793 return -1; - c000c946: c95fe06f j c000b5da + c000ca34: c95fe06f j c000b6c8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16732 if (type == JS_THROW_VAR_REDECL) - c000c94a: 4785 li a5,1 - c000c94c: 02f61363 bne a2,a5,c000c972 + c000ca38: 4785 li a5,1 + c000ca3a: 02f61363 bne a2,a5,c000ca60 JS_ThrowSyntaxErrorVarRedeclaration(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9568 return JS_ThrowSyntaxErrorAtom(ctx, "redeclaration of '%s'", prop); - c000c950: 00050697 auipc a3,0x50 - c000c954: 68068693 addi a3,a3,1664 # c005cfd0 - c000c958: 00050617 auipc a2,0x50 - c000c95c: 79060613 addi a2,a2,1936 # c005d0e8 - c000c960: 8526 mv a0,s1 - c000c962: 7d4060ef jal ra,c0013136 <__JS_ThrowSyntaxErrorAtom> - c000c966: c0a43023 sd a0,-1024(s0) - c000c96a: c0b43423 sd a1,-1016(s0) - c000c96e: c6dfe06f j c000b5da + c000ca3e: 00050697 auipc a3,0x50 + c000ca42: 7c268693 addi a3,a3,1986 # c005d200 + c000ca46: 00051617 auipc a2,0x51 + c000ca4a: 8d260613 addi a2,a2,-1838 # c005d318 + c000ca4e: 8526 mv a0,s1 + c000ca50: 7d4060ef jal ra,c0013224 <__JS_ThrowSyntaxErrorAtom> + c000ca54: c0a43023 sd a0,-1024(s0) + c000ca58: c0b43423 sd a1,-1016(s0) + c000ca5c: c6dfe06f j c000b6c8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16727 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16735 if (type == JS_THROW_VAR_UNINITIALIZED) - c000c972: 4789 li a5,2 - c000c974: 00f61763 bne a2,a5,c000c982 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16728 + c000ca60: 4789 li a5,2 + c000ca62: 00f61763 bne a2,a5,c000ca70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16736 JS_ThrowReferenceErrorUninitialized(ctx, atom); - c000c978: 8526 mv a0,s1 - c000c97a: 75f070ef jal ra,c00148d8 - c000c97e: c5dfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16730 + c000ca66: 8526 mv a0,s1 + c000ca68: 75f070ef jal ra,c00149c6 + c000ca6c: c5dfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16738 if (type == JS_THROW_ERROR_DELETE_SUPER) - c000c982: 478d li a5,3 - c000c984: 00f61b63 bne a2,a5,c000c99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16731 + c000ca70: 478d li a5,3 + c000ca72: 00f61b63 bne a2,a5,c000ca88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16739 JS_ThrowReferenceError(ctx, "unsupported reference to 'super'"); - c000c988: 8526 mv a0,s1 - c000c98a: 00050597 auipc a1,0x50 - c000c98e: 77658593 addi a1,a1,1910 # c005d100 - c000c992: 71d070ef jal ra,c00148ae - c000c996: c45fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16733 + c000ca76: 8526 mv a0,s1 + c000ca78: 00051597 auipc a1,0x51 + c000ca7c: 8b858593 addi a1,a1,-1864 # c005d330 + c000ca80: 71d070ef jal ra,c001499c + c000ca84: c45fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16741 if (type == JS_THROW_ERROR_ITERATOR_THROW) - c000c99a: 4791 li a5,4 - c000c99c: 00f61b63 bne a2,a5,c000c9b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16734 + c000ca88: 4791 li a5,4 + c000ca8a: 00f61b63 bne a2,a5,c000caa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16742 JS_ThrowTypeError(ctx, "iterator does not have a throw method"); - c000c9a0: 8526 mv a0,s1 - c000c9a2: 00050597 auipc a1,0x50 - c000c9a6: 78658593 addi a1,a1,1926 # c005d128 - c000c9aa: 24d060ef jal ra,c00133f6 - c000c9ae: c2dfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16736 + c000ca8e: 8526 mv a0,s1 + c000ca90: 00051597 auipc a1,0x51 + c000ca94: 8c858593 addi a1,a1,-1848 # c005d358 + c000ca98: 24d060ef jal ra,c00134e4 + c000ca9c: c2dfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16744 JS_ThrowInternalError(ctx, "invalid throw var type %d", type); - c000c9b2: 8526 mv a0,s1 - c000c9b4: 00050597 auipc a1,0x50 - c000c9b8: 79c58593 addi a1,a1,1948 # c005d150 - c000c9bc: 7c9070ef jal ra,c0014984 - c000c9c0: c1bfe06f j c000b5da + c000caa0: 8526 mv a0,s1 + c000caa2: 00051597 auipc a1,0x51 + c000caa6: 8de58593 addi a1,a1,-1826 # c005d380 + c000caaa: 7c9070ef jal ra,c0014a72 + c000caae: c1bfe06f j c000b6c8 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000c9c4: 002bca03 lbu s4,2(s7) - c000c9c8: 001bc783 lbu a5,1(s7) + c000cab2: 002bca03 lbu s4,2(s7) + c000cab6: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16746 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16754 pc += 4; - c000c9cc: 005b8913 addi s2,s7,5 + c000caba: 005b8913 addi s2,s7,5 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c9d0: 0a22 slli s4,s4,0x8 - c000c9d2: 00fa6b33 or s6,s4,a5 + c000cabe: 0a22 slli s4,s4,0x8 + c000cac0: 00fa6b33 or s6,s4,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16756 sf->cur_pc = pc; - c000c9d6: 77fd lui a5,0xfffff - c000c9d8: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000c9dc: 97a2 add a5,a5,s0 - c000c9de: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16744 + c000cac4: 77fd lui a5,0xfffff + c000cac6: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000caca: 97a2 add a5,a5,s0 + c000cacc: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16752 call_argc = get_u16(pc); - c000c9e0: 8a5a mv s4,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16747 + c000cace: 8a5a mv s4,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16755 call_argv = sp - call_argc; - c000c9e2: 0b12 slli s6,s6,0x4 - c000c9e4: 416d0b33 sub s6,s10,s6 + c000cad0: 0b12 slli s6,s6,0x4 + c000cad2: 416d0b33 sub s6,s10,s6 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000c9e8: 003bc803 lbu a6,3(s7) - c000c9ec: 004bcc03 lbu s8,4(s7) + c000cad6: 003bc803 lbu a6,3(s7) + c000cada: 004bcc03 lbu s8,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16749 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 if (js_same_value(ctx, call_argv[-1], ctx->eval_obj)) { - c000c9f0: ff0b0a93 addi s5,s6,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16748 + c000cade: ff0b0a93 addi s5,s6,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16756 sf->cur_pc = pc; - c000c9f4: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16749 + c000cae2: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 if (js_same_value(ctx, call_argv[-1], ctx->eval_obj)) { - c000c9f8: 1584b683 ld a3,344(s1) - c000c9fc: 1604b703 ld a4,352(s1) - c000ca00: ff0b3583 ld a1,-16(s6) - c000ca04: 008ab603 ld a2,8(s5) + c000cae6: 1584b683 ld a3,344(s1) + c000caea: 1604b703 ld a4,352(s1) + c000caee: ff0b3583 ld a1,-16(s6) + c000caf2: 008ab603 ld a2,8(s5) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000ca08: 0c22 slli s8,s8,0x8 + c000caf6: 0c22 slli s8,s8,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16749 - c000ca0a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000caf8: 8526 mv a0,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000ca0c: 010c6c33 or s8,s8,a6 + c000cafa: 010c6c33 or s8,s8,a6 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16749 - c000ca10: ab2fb0ef jal ra,c0007cc2 - c000ca14: c155 beqz a0,c000cab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cafe: ab2fb0ef jal ra,c0007db0 + c000cb02: c155 beqz a0,c000cba6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16758 if (call_argc >= 1) - c000ca16: 080a0d63 beqz s4,c000cab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16751 + c000cb04: 080a0d63 beqz s4,c000cb9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16759 obj = call_argv[0]; - c000ca1a: 000b3783 ld a5,0(s6) - c000ca1e: ecf43823 sd a5,-304(s0) - c000ca22: 008b3783 ld a5,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16753 + c000cb08: 000b3783 ld a5,0(s6) + c000cb0c: ecf43823 sd a5,-304(s0) + c000cb10: 008b3783 ld a5,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16761 obj = JS_UNDEFINED; - c000ca26: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16754 + c000cb14: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16762 ret_val = JS_EvalObject(ctx, JS_UNDEFINED, obj, - c000ca2a: ed043683 ld a3,-304(s0) - c000ca2e: ed843703 ld a4,-296(s0) - c000ca32: 478d li a5,3 - c000ca34: eef43c23 sd a5,-264(s0) - c000ca38: fffc081b addiw a6,s8,-1 - c000ca3c: 4789 li a5,2 - c000ca3e: 4581 li a1,0 - c000ca40: 460d li a2,3 - c000ca42: 8526 mv a0,s1 - c000ca44: ee043823 sd zero,-272(s0) - c000ca48: 1cc140ef jal ra,c0020c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cb18: ed043683 ld a3,-304(s0) + c000cb1c: ed843703 ld a4,-296(s0) + c000cb20: 478d li a5,3 + c000cb22: eef43c23 sd a5,-264(s0) + c000cb26: fffc081b addiw a6,s8,-1 + c000cb2a: 4789 li a5,2 + c000cb2c: 4581 li a1,0 + c000cb2e: 460d li a2,3 + c000cb30: 8526 mv a0,s1 + c000cb32: ee043823 sd zero,-272(s0) + c000cb36: 2ae140ef jal ra,c0020de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000ca4c: f8040793 addi a5,s0,-128 - c000ca50: 97ce add a5,a5,s3 - c000ca52: 72a7b023 sd a0,1824(a5) - c000ca56: 72b7b423 sd a1,1832(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16760 + c000cb3a: f8040793 addi a5,s0,-128 + c000cb3e: 97ce add a5,a5,s3 + c000cb40: 72a7b023 sd a0,1824(a5) + c000cb44: 72b7b423 sd a1,1832(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16768 if (unlikely(JS_IsException(ret_val))) - c000ca5a: 4719 li a4,6 - c000ca5c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cb48: 4719 li a4,6 + c000cb4a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000ca60: 8b2e mv s6,a1 - c000ca62: 00050b9b sext.w s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16760 + c000cb4e: 8b2e mv s6,a1 + c000cb50: 00050b9b sext.w s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16768 if (unlikely(JS_IsException(ret_val))) - c000ca66: 00e79463 bne a5,a4,c000ca6e - c000ca6a: b71fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16762 + c000cb54: 00e79463 bne a5,a4,c000cb5c + c000cb58: b71fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16770 for(i = -1; i < call_argc; i++) - c000ca6e: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16763 (discriminator 3) + c000cb5c: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16771 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000ca70: 000ab583 ld a1,0(s5) - c000ca74: 008ab603 ld a2,8(s5) - c000ca78: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16762 (discriminator 3) + c000cb5e: 000ab583 ld a1,0(s5) + c000cb62: 008ab603 ld a2,8(s5) + c000cb66: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16770 (discriminator 3) for(i = -1; i < call_argc; i++) - c000ca7a: 2c05 addiw s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16763 (discriminator 3) + c000cb68: 2c05 addiw s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16771 (discriminator 3) JS_FreeValue(ctx, call_argv[i]); - c000ca7c: 8bcfb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16762 (discriminator 3) + c000cb6a: 8bcfb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16770 (discriminator 3) for(i = -1; i < call_argc; i++) - c000ca80: 0ac1 addi s5,s5,16 - c000ca82: ff4c47e3 blt s8,s4,c000ca70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 + c000cb6e: 0ac1 addi s5,s5,16 + c000cb70: ff4c47e3 blt s8,s4,c000cb5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16773 *sp++ = ret_val; - c000ca86: f8040793 addi a5,s0,-128 - c000ca8a: 97ce add a5,a5,s3 - c000ca8c: 7377a023 sw s7,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16764 + c000cb74: f8040793 addi a5,s0,-128 + c000cb78: 97ce add a5,a5,s3 + c000cb7a: 7377a023 sw s7,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16772 sp -= call_argc + 1; - c000ca90: 0a05 addi s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 + c000cb7e: 0a05 addi s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16773 *sp++ = ret_val; - c000ca92: 7367b423 sd s6,1832(a5) - c000ca96: 7207b783 ld a5,1824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16764 + c000cb80: 7367b423 sd s6,1832(a5) + c000cb84: 7207b783 ld a5,1824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16772 sp -= call_argc + 1; - c000ca9a: 0a12 slli s4,s4,0x4 - c000ca9c: 414d0a33 sub s4,s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 + c000cb88: 0a12 slli s4,s4,0x4 + c000cb8a: 414d0a33 sub s4,s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16773 *sp++ = ret_val; - c000caa0: 010a0d13 addi s10,s4,16 - c000caa4: 00fa3023 sd a5,0(s4) - c000caa8: 016a3423 sd s6,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16767 + c000cb8e: 010a0d13 addi s10,s4,16 + c000cb92: 00fa3023 sd a5,0(s4) + c000cb96: 016a3423 sd s6,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16775 BREAK; - c000caac: 9cdfe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16753 + c000cb9a: 9cdfe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16761 obj = JS_UNDEFINED; - c000cab0: ec043823 sd zero,-304(s0) - c000cab4: 478d li a5,3 - c000cab6: bf85 j c000ca26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cb9e: ec043823 sd zero,-304(s0) + c000cba2: 478d li a5,3 + c000cba4: bf85 j c000cb14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000cab8: 478d li a5,3 - c000caba: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16758 + c000cba6: 478d li a5,3 + c000cba8: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16766 JS_UNDEFINED, call_argc, call_argv, 0); - c000cabe: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cbac: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000cac2: ec043823 sd zero,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16758 + c000cbb0: ec043823 sd zero,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16766 JS_UNDEFINED, call_argc, call_argv, 0); - c000cac6: ee043823 sd zero,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16757 + c000cbb4: ee043823 sd zero,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16765 ret_val = JS_CallInternal(ctx, call_argv[-1], JS_UNDEFINED, - c000caca: e402 sd zero,8(sp) - c000cacc: e05a sd s6,0(sp) - c000cace: ff0b3583 ld a1,-16(s6) - c000cad2: 008ab603 ld a2,8(s5) - c000cad6: 88d2 mv a7,s4 - c000cad8: 4781 li a5,0 - c000cada: 480d li a6,3 - c000cadc: 4681 li a3,0 - c000cade: 470d li a4,3 - c000cae0: 8526 mv a0,s1 - c000cae2: cbafe0ef jal ra,c000af9c - c000cae6: b79d j c000ca4c + c000cbb8: e402 sd zero,8(sp) + c000cbba: e05a sd s6,0(sp) + c000cbbc: ff0b3583 ld a1,-16(s6) + c000cbc0: 008ab603 ld a2,8(s5) + c000cbc4: 88d2 mv a7,s4 + c000cbc6: 4781 li a5,0 + c000cbc8: 480d li a6,3 + c000cbca: 4681 li a3,0 + c000cbcc: 470d li a4,3 + c000cbce: 8526 mv a0,s1 + c000cbd0: cbafe0ef jal ra,c000b08a + c000cbd4: b79d j c000cb3a get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000cae8: 002bca03 lbu s4,2(s7) - c000caec: 001bc783 lbu a5,1(s7) + c000cbd6: 002bca03 lbu s4,2(s7) + c000cbda: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16778 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16786 tab = build_arg_list(ctx, &len, sp[-1]); - c000caf0: ff0d3603 ld a2,-16(s10) - c000caf4: ff8d3683 ld a3,-8(s10) + c000cbde: ff0d3603 ld a2,-16(s10) + c000cbe2: ff8d3683 ld a3,-8(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000caf8: 0a22 slli s4,s4,0x8 + c000cbe6: 0a22 slli s4,s4,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16778 - c000cafa: e9040593 addi a1,s0,-368 - c000cafe: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16786 + c000cbe8: e9040593 addi a1,s0,-368 + c000cbec: 8526 mv a0,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000cb00: 00fa6a33 or s4,s4,a5 + c000cbee: 00fa6a33 or s4,s4,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16778 - c000cb04: 5ab240ef jal ra,c00318ae - c000cb08: ff0d0a93 addi s5,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16777 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16786 + c000cbf2: 68d240ef jal ra,c0031a7e + c000cbf6: ff0d0a93 addi s5,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16785 pc += 2; - c000cb0c: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16778 + c000cbfa: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16786 tab = build_arg_list(ctx, &len, sp[-1]); - c000cb10: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16779 + c000cbfe: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16787 if (!tab) - c000cb12: e119 bnez a0,c000cb18 - c000cb14: ac7fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16781 + c000cc00: e119 bnez a0,c000cc06 + c000cc02: ac7fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16789 if (js_same_value(ctx, sp[-2], ctx->eval_obj)) { - c000cb18: 1584b683 ld a3,344(s1) - c000cb1c: 1604b703 ld a4,352(s1) - c000cb20: fe0d3583 ld a1,-32(s10) - c000cb24: fe8d3603 ld a2,-24(s10) - c000cb28: 8526 mv a0,s1 - c000cb2a: fe0d0b13 addi s6,s10,-32 - c000cb2e: 994fb0ef jal ra,c0007cc2 - c000cb32: c555 beqz a0,c000cbde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16782 + c000cc06: 1584b683 ld a3,344(s1) + c000cc0a: 1604b703 ld a4,352(s1) + c000cc0e: fe0d3583 ld a1,-32(s10) + c000cc12: fe8d3603 ld a2,-24(s10) + c000cc16: 8526 mv a0,s1 + c000cc18: fe0d0b13 addi s6,s10,-32 + c000cc1c: 994fb0ef jal ra,c0007db0 + c000cc20: c555 beqz a0,c000cccc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16790 if (len >= 1) - c000cb34: e9042783 lw a5,-368(s0) - c000cb38: cfd9 beqz a5,c000cbd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16783 + c000cc22: e9042783 lw a5,-368(s0) + c000cc26: cfd9 beqz a5,c000ccc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16791 obj = tab[0]; - c000cb3a: 000c3783 ld a5,0(s8) - c000cb3e: ecf43823 sd a5,-304(s0) - c000cb42: 008c3783 ld a5,8(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16785 + c000cc28: 000c3783 ld a5,0(s8) + c000cc2c: ecf43823 sd a5,-304(s0) + c000cc30: 008c3783 ld a5,8(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16793 obj = JS_UNDEFINED; - c000cb46: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16786 + c000cc34: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16794 ret_val = JS_EvalObject(ctx, JS_UNDEFINED, obj, - c000cb4a: ed043683 ld a3,-304(s0) - c000cb4e: ed843703 ld a4,-296(s0) - c000cb52: 478d li a5,3 - c000cb54: eef43c23 sd a5,-264(s0) - c000cb58: fffa081b addiw a6,s4,-1 - c000cb5c: 4789 li a5,2 - c000cb5e: 4581 li a1,0 - c000cb60: 460d li a2,3 - c000cb62: 8526 mv a0,s1 - c000cb64: ee043823 sd zero,-272(s0) - c000cb68: 0ac140ef jal ra,c0020c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16792 + c000cc38: ed043683 ld a3,-304(s0) + c000cc3c: ed843703 ld a4,-296(s0) + c000cc40: 478d li a5,3 + c000cc42: eef43c23 sd a5,-264(s0) + c000cc46: fffa081b addiw a6,s4,-1 + c000cc4a: 4789 li a5,2 + c000cc4c: 4581 li a1,0 + c000cc4e: 460d li a2,3 + c000cc50: 8526 mv a0,s1 + c000cc52: ee043823 sd zero,-272(s0) + c000cc56: 18e140ef jal ra,c0020de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16800 free_arg_list(ctx, tab, len); - c000cb6c: e9042603 lw a2,-368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16789 + c000cc5a: e9042603 lw a2,-368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16797 ret_val = JS_Call(ctx, sp[-2], JS_UNDEFINED, len, - c000cb70: f8040793 addi a5,s0,-128 - c000cb74: 97ce add a5,a5,s3 - c000cb76: 72a7b023 sd a0,1824(a5) - c000cb7a: 72b7b423 sd a1,1832(a5) - c000cb7e: 8bae mv s7,a1 - c000cb80: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16792 + c000cc5e: f8040793 addi a5,s0,-128 + c000cc62: 97ce add a5,a5,s3 + c000cc64: 72a7b023 sd a0,1824(a5) + c000cc68: 72b7b423 sd a1,1832(a5) + c000cc6c: 8bae mv s7,a1 + c000cc6e: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16800 free_arg_list(ctx, tab, len); - c000cb84: 85e2 mv a1,s8 - c000cb86: 8526 mv a0,s1 - c000cb88: a6efb0ef jal ra,c0007df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16793 + c000cc72: 85e2 mv a1,s8 + c000cc74: 8526 mv a0,s1 + c000cc76: a6efb0ef jal ra,c0007ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16801 if (unlikely(JS_IsException(ret_val))) - c000cb8c: 000b879b sext.w a5,s7 - c000cb90: 4719 li a4,6 - c000cb92: 00e79463 bne a5,a4,c000cb9a - c000cb96: a45fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16795 + c000cc7a: 000b879b sext.w a5,s7 + c000cc7e: 4719 li a4,6 + c000cc80: 00e79463 bne a5,a4,c000cc88 + c000cc84: a45fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16803 JS_FreeValue(ctx, sp[-2]); - c000cb9a: 000b3583 ld a1,0(s6) - c000cb9e: 008b3603 ld a2,8(s6) - c000cba2: 8526 mv a0,s1 - c000cba4: f95fa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16796 + c000cc88: 000b3583 ld a1,0(s6) + c000cc8c: 008b3603 ld a2,8(s6) + c000cc90: 8526 mv a0,s1 + c000cc92: f95fa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16804 JS_FreeValue(ctx, sp[-1]); - c000cba8: 000ab583 ld a1,0(s5) - c000cbac: 008ab603 ld a2,8(s5) - c000cbb0: 8526 mv a0,s1 - c000cbb2: f87fa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16798 + c000cc96: 000ab583 ld a1,0(s5) + c000cc9a: 008ab603 ld a2,8(s5) + c000cc9e: 8526 mv a0,s1 + c000cca0: f87fa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16806 *sp++ = ret_val; - c000cbb6: f8040793 addi a5,s0,-128 - c000cbba: 97ce add a5,a5,s3 - c000cbbc: 7347a023 sw s4,1824(a5) - c000cbc0: 7377b423 sd s7,1832(a5) - c000cbc4: 7207b783 ld a5,1824(a5) - c000cbc8: ff7d3423 sd s7,-24(s10) - c000cbcc: fefd3023 sd a5,-32(s10) - c000cbd0: 8d56 mv s10,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16800 + c000cca4: f8040793 addi a5,s0,-128 + c000cca8: 97ce add a5,a5,s3 + c000ccaa: 7347a023 sw s4,1824(a5) + c000ccae: 7377b423 sd s7,1832(a5) + c000ccb2: 7207b783 ld a5,1824(a5) + c000ccb6: ff7d3423 sd s7,-24(s10) + c000ccba: fefd3023 sd a5,-32(s10) + c000ccbe: 8d56 mv s10,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16808 BREAK; - c000cbd2: 8a7fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16785 + c000ccc0: 8a7fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16793 obj = JS_UNDEFINED; - c000cbd6: ec043823 sd zero,-304(s0) - c000cbda: 478d li a5,3 - c000cbdc: b7ad j c000cb46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16789 + c000ccc4: ec043823 sd zero,-304(s0) + c000ccc8: 478d li a5,3 + c000ccca: b7ad j c000cc34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16797 ret_val = JS_Call(ctx, sp[-2], JS_UNDEFINED, len, - c000cbde: 478d li a5,3 - c000cbe0: eef43c23 sd a5,-264(s0) - c000cbe4: ee043823 sd zero,-272(s0) - c000cbe8: e9042783 lw a5,-368(s0) - c000cbec: fe0d3583 ld a1,-32(s10) - c000cbf0: 008b3603 ld a2,8(s6) - c000cbf4: 8862 mv a6,s8 - c000cbf6: 4681 li a3,0 - c000cbf8: 470d li a4,3 - c000cbfa: 8526 mv a0,s1 - c000cbfc: 30b2c0ef jal ra,c0039706 - c000cc00: b7b5 j c000cb6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16804 + c000cccc: 478d li a5,3 + c000ccce: eef43c23 sd a5,-264(s0) + c000ccd2: ee043823 sd zero,-272(s0) + c000ccd6: e9042783 lw a5,-368(s0) + c000ccda: fe0d3583 ld a1,-32(s10) + c000ccde: 008b3603 ld a2,8(s6) + c000cce2: 8862 mv a6,s8 + c000cce4: 4681 li a3,0 + c000cce6: 470d li a4,3 + c000cce8: 8526 mv a0,s1 + c000ccea: 3ed2c0ef jal ra,c00398d6 + c000ccee: b7b5 j c000cc5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16812 sp[-2] = js_regexp_constructor_internal(ctx, JS_UNDEFINED, - c000cc02: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16805 + c000ccf0: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16813 sp[-2], sp[-1]); - c000cc04: fe0d0a13 addi s4,s10,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16804 + c000ccf2: fe0d0a13 addi s4,s10,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16812 sp[-2] = js_regexp_constructor_internal(ctx, JS_UNDEFINED, - c000cc08: ee043823 sd zero,-272(s0) - c000cc0c: eef43c23 sd a5,-264(s0) - c000cc10: 000a3683 ld a3,0(s4) - c000cc14: 008a3703 ld a4,8(s4) - c000cc18: ff0d3783 ld a5,-16(s10) - c000cc1c: ff8d3803 ld a6,-8(s10) - c000cc20: 4581 li a1,0 - c000cc22: 460d li a2,3 - c000cc24: 8526 mv a0,s1 - c000cc26: 6d41b0ef jal ra,c00282fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16805 + c000ccf6: ee043823 sd zero,-272(s0) + c000ccfa: eef43c23 sd a5,-264(s0) + c000ccfe: 000a3683 ld a3,0(s4) + c000cd02: 008a3703 ld a4,8(s4) + c000cd06: ff0d3783 ld a5,-16(s10) + c000cd0a: ff8d3803 ld a6,-8(s10) + c000cd0e: 4581 li a1,0 + c000cd10: 460d li a2,3 + c000cd12: 8526 mv a0,s1 + c000cd14: 7b61b0ef jal ra,c00284ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16813 sp[-2], sp[-1]); - c000cc2a: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16804 + c000cd18: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16812 sp[-2] = js_regexp_constructor_internal(ctx, JS_UNDEFINED, - c000cc2c: 00aa3023 sd a0,0(s4) - c000cc30: 00ba3423 sd a1,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16808 + c000cd1a: 00aa3023 sd a0,0(s4) + c000cd1e: 00ba3423 sd a1,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16816 BREAK; - c000cc34: 845fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16813 + c000cd22: 845fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16821 proto = JS_GetPrototype(ctx, sp[-1]); - c000cc38: ff0d3583 ld a1,-16(s10) - c000cc3c: ff8d3603 ld a2,-8(s10) - c000cc40: 8526 mv a0,s1 - c000cc42: 0a1070ef jal ra,c00144e2 - c000cc46: eeb43c23 sd a1,-264(s0) - c000cc4a: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16814 + c000cd26: ff0d3583 ld a1,-16(s10) + c000cd2a: ff8d3603 ld a2,-8(s10) + c000cd2e: 8526 mv a0,s1 + c000cd30: 0a1070ef jal ra,c00145d0 + c000cd34: eeb43c23 sd a1,-264(s0) + c000cd38: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16822 if (JS_IsException(proto)) - c000cc4e: 2581 sext.w a1,a1 - c000cc50: 4799 li a5,6 - c000cc52: 00f59463 bne a1,a5,c000cc5a - c000cc56: 985fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16816 + c000cd3c: 2581 sext.w a1,a1 + c000cd3e: 4799 li a5,6 + c000cd40: 00f59463 bne a1,a5,c000cd48 + c000cd44: 985fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16824 JS_FreeValue(ctx, sp[-1]); - c000cc5a: ff0d3583 ld a1,-16(s10) - c000cc5e: ff8d3603 ld a2,-8(s10) - c000cc62: 8526 mv a0,s1 - c000cc64: ed5fa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16817 + c000cd48: ff0d3583 ld a1,-16(s10) + c000cd4c: ff8d3603 ld a2,-8(s10) + c000cd50: 8526 mv a0,s1 + c000cd52: ed5fa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16825 sp[-1] = proto; - c000cc68: ef043783 ld a5,-272(s0) - c000cc6c: fefd3823 sd a5,-16(s10) - c000cc70: ef843783 ld a5,-264(s0) - c000cc74: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16819 + c000cd56: ef043783 ld a5,-272(s0) + c000cd5a: fefd3823 sd a5,-16(s10) + c000cd5e: ef843783 ld a5,-264(s0) + c000cd62: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16827 BREAK; - c000cc78: 801fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16824 + c000cd66: 801fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16832 val = js_dynamic_import(ctx, sp[-1]); - c000cc7c: ff0d3783 ld a5,-16(s10) + c000cd6a: ff0d3783 ld a5,-16(s10) js_dynamic_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28620 basename = JS_GetScriptOrModuleName(ctx, 0); - c000cc80: 4581 li a1,0 - c000cc82: 8526 mv a0,s1 - c000cc84: def43023 sd a5,-544(s0) - c000cc88: ff8d3783 ld a5,-8(s10) + c000cd6e: 4581 li a1,0 + c000cd70: 8526 mv a0,s1 + c000cd72: def43023 sd a5,-544(s0) + c000cd76: ff8d3783 ld a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16832 val = js_dynamic_import(ctx, sp[-1]); - c000cc8c: ff0d0a13 addi s4,s10,-16 - c000cc90: def43423 sd a5,-536(s0) + c000cd7a: ff0d0a13 addi s4,s10,-16 + c000cd7e: def43423 sd a5,-536(s0) js_dynamic_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28620 basename = JS_GetScriptOrModuleName(ctx, 0); - c000cc94: a10fe0ef jal ra,c000aea4 - c000cc98: 00050b1b sext.w s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28613 + c000cd82: a10fe0ef jal ra,c000af92 + c000cd86: 00050b1b sext.w s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28621 if (basename == JS_ATOM_NULL) - c000cc9c: 060b1563 bnez s6,c000cd06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28614 + c000cd8a: 060b1563 bnez s6,c000cdf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28622 basename_val = JS_NULL; - c000cca0: e8043823 sd zero,-368(s0) - c000cca4: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28617 + c000cd8e: e8043823 sd zero,-368(s0) + c000cd92: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28625 JS_FreeAtom(ctx, basename); - c000cca6: 85da mv a1,s6 - c000cca8: 8526 mv a0,s1 - c000ccaa: 863fa0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28618 + c000cd94: 85da mv a1,s6 + c000cd96: 8526 mv a0,s1 + c000cd98: 863fa0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28626 if (JS_IsException(basename_val)) - c000ccae: 000a879b sext.w a5,s5 - c000ccb2: 4b99 li s7,6 - c000ccb4: 07779363 bne a5,s7,c000cd1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28619 + c000cd9c: 000a879b sext.w a5,s5 + c000cda0: 4b99 li s7,6 + c000cda2: 07779363 bne a5,s7,c000ce08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28627 return basename_val; - c000ccb8: e9043783 ld a5,-368(s0) - c000ccbc: e9543c23 sd s5,-360(s0) - c000ccc0: 8b56 mv s6,s5 - c000ccc2: c0f43823 sd a5,-1008(s0) - c000ccc6: c1043783 ld a5,-1008(s0) - c000ccca: c1643c23 sd s6,-1000(s0) - c000ccce: ef643c23 sd s6,-264(s0) + c000cda6: e9043783 ld a5,-368(s0) + c000cdaa: e9543c23 sd s5,-360(s0) + c000cdae: 8b56 mv s6,s5 + c000cdb0: c0f43823 sd a5,-1008(s0) + c000cdb4: c1043783 ld a5,-1008(s0) + c000cdb8: c1643c23 sd s6,-1000(s0) + c000cdbc: ef643c23 sd s6,-264(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000ccd2: eef43823 sd a5,-272(s0) + c000cdc0: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16833 if (JS_IsException(val)) - c000ccd6: 000b059b sext.w a1,s6 - c000ccda: 4799 li a5,6 - c000ccdc: 00f59463 bne a1,a5,c000cce4 - c000cce0: 8fbfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16827 + c000cdc4: 000b059b sext.w a1,s6 + c000cdc8: 4799 li a5,6 + c000cdca: 00f59463 bne a1,a5,c000cdd2 + c000cdce: 8fbfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16835 JS_FreeValue(ctx, sp[-1]); - c000cce4: 000a3583 ld a1,0(s4) - c000cce8: 008a3603 ld a2,8(s4) - c000ccec: 8526 mv a0,s1 - c000ccee: e4bfa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16828 + c000cdd2: 000a3583 ld a1,0(s4) + c000cdd6: 008a3603 ld a2,8(s4) + c000cdda: 8526 mv a0,s1 + c000cddc: e4bfa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16836 sp[-1] = val; - c000ccf2: ef043783 ld a5,-272(s0) - c000ccf6: fefd3823 sd a5,-16(s10) - c000ccfa: ef843783 ld a5,-264(s0) - c000ccfe: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16830 + c000cde0: ef043783 ld a5,-272(s0) + c000cde4: fefd3823 sd a5,-16(s10) + c000cde8: ef843783 ld a5,-264(s0) + c000cdec: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16838 BREAK; - c000cd02: f76fe06f j c000b478 + c000cdf0: f76fe06f j c000b566 js_dynamic_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28624 basename_val = JS_AtomToValue(ctx, basename); - c000cd06: 85da mv a1,s6 - c000cd08: 8526 mv a0,s1 - c000cd0a: 6290c0ef jal ra,c0019b32 - c000cd0e: 8aae mv s5,a1 - c000cd10: e8a43823 sd a0,-368(s0) - c000cd14: e8b43c23 sd a1,-360(s0) - c000cd18: b779 j c000cca6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28621 + c000cdf4: 85da mv a1,s6 + c000cdf6: 8526 mv a0,s1 + c000cdf8: 70b0c0ef jal ra,c0019d02 + c000cdfc: 8aae mv s5,a1 + c000cdfe: e8a43823 sd a0,-368(s0) + c000ce02: e8b43c23 sd a1,-360(s0) + c000ce06: b779 j c000cd94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28629 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c000cd1a: ed040593 addi a1,s0,-304 - c000cd1e: 8526 mv a0,s1 - c000cd20: a70fe0ef jal ra,c000af90 - c000cd24: e8a43023 sd a0,-384(s0) - c000cd28: e8b43423 sd a1,-376(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28622 + c000ce08: ed040593 addi a1,s0,-304 + c000ce0c: 8526 mv a0,s1 + c000ce0e: a70fe0ef jal ra,c000b07e + c000ce12: e8a43023 sd a0,-384(s0) + c000ce16: e8b43423 sd a1,-376(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28630 if (JS_IsException(promise)) { - c000cd2c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28621 + c000ce1a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28629 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c000cd30: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28622 + c000ce1e: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28630 if (JS_IsException(promise)) { - c000cd32: 01779f63 bne a5,s7,c000cd50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28623 + c000ce20: 01779f63 bne a5,s7,c000ce3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28631 JS_FreeValue(ctx, basename_val); - c000cd36: e9043583 ld a1,-368(s0) - c000cd3a: e9543c23 sd s5,-360(s0) - c000cd3e: 8656 mv a2,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28638 + c000ce24: e9043583 ld a1,-368(s0) + c000ce28: e9543c23 sd s5,-360(s0) + c000ce2c: 8656 mv a2,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28646 JS_FreeValue(ctx, resolving_funcs[1]); - c000cd40: 8526 mv a0,s1 - c000cd42: df7fa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28639 + c000ce2e: 8526 mv a0,s1 + c000ce30: df7fa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28647 return promise; - c000cd46: e8043783 ld a5,-384(s0) - c000cd4a: c0f43823 sd a5,-1008(s0) - c000cd4e: bfa5 j c000ccc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28627 + c000ce34: e8043783 ld a5,-384(s0) + c000ce38: c0f43823 sd a5,-1008(s0) + c000ce3c: bfa5 j c000cdb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28635 args[0] = resolving_funcs[0]; - c000cd50: ed043783 ld a5,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28634 + c000ce3e: ed043783 ld a5,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28642 JS_EnqueueJob(ctx, js_dynamic_import_job, 4, args); - c000cd54: ef040693 addi a3,s0,-272 - c000cd58: 4611 li a2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28627 + c000ce42: ef040693 addi a3,s0,-272 + c000ce46: 4611 li a2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28635 args[0] = resolving_funcs[0]; - c000cd5a: eef43823 sd a5,-272(s0) - c000cd5e: ed843783 ld a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28634 + c000ce48: eef43823 sd a5,-272(s0) + c000ce4c: ed843783 ld a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28642 JS_EnqueueJob(ctx, js_dynamic_import_job, 4, args); - c000cd62: 00034597 auipc a1,0x34 - c000cd66: 87058593 addi a1,a1,-1936 # c00405d2 - c000cd6a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28627 + c000ce50: 00034597 auipc a1,0x34 + c000ce54: 95258593 addi a1,a1,-1710 # c00407a2 + c000ce58: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28635 args[0] = resolving_funcs[0]; - c000cd6c: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28628 + c000ce5a: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28636 args[1] = resolving_funcs[1]; - c000cd70: ee043783 ld a5,-288(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28629 + c000ce5e: ee043783 ld a5,-288(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28637 args[2] = basename_val; - c000cd74: e9543c23 sd s5,-360(s0) - c000cd78: f1543c23 sd s5,-232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28628 + c000ce62: e9543c23 sd s5,-360(s0) + c000ce66: f1543c23 sd s5,-232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28636 args[1] = resolving_funcs[1]; - c000cd7c: f0f43023 sd a5,-256(s0) - c000cd80: ee843783 ld a5,-280(s0) - c000cd84: f0f43423 sd a5,-248(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28629 + c000ce6a: f0f43023 sd a5,-256(s0) + c000ce6e: ee843783 ld a5,-280(s0) + c000ce72: f0f43423 sd a5,-248(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28637 args[2] = basename_val; - c000cd88: e9043783 ld a5,-368(s0) - c000cd8c: f0f43823 sd a5,-240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28630 + c000ce76: e9043783 ld a5,-368(s0) + c000ce7a: f0f43823 sd a5,-240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28638 args[3] = specifier; - c000cd90: de043783 ld a5,-544(s0) - c000cd94: f2f43023 sd a5,-224(s0) - c000cd98: de843783 ld a5,-536(s0) - c000cd9c: f2f43423 sd a5,-216(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28634 + c000ce7e: de043783 ld a5,-544(s0) + c000ce82: f2f43023 sd a5,-224(s0) + c000ce86: de843783 ld a5,-536(s0) + c000ce8a: f2f43423 sd a5,-216(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28642 JS_EnqueueJob(ctx, js_dynamic_import_job, 4, args); - c000cda0: 500080ef jal ra,c00152a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28636 + c000ce8e: 5e2080ef jal ra,c0015470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28644 JS_FreeValue(ctx, basename_val); - c000cda4: e9043583 ld a1,-368(s0) - c000cda8: e9843603 ld a2,-360(s0) - c000cdac: 8526 mv a0,s1 - c000cdae: d8bfa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28637 + c000ce92: e9043583 ld a1,-368(s0) + c000ce96: e9843603 ld a2,-360(s0) + c000ce9a: 8526 mv a0,s1 + c000ce9c: d8bfa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28645 JS_FreeValue(ctx, resolving_funcs[0]); - c000cdb2: ed043583 ld a1,-304(s0) - c000cdb6: ed843603 ld a2,-296(s0) - c000cdba: 8526 mv a0,s1 - c000cdbc: d7dfa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28638 + c000cea0: ed043583 ld a1,-304(s0) + c000cea4: ed843603 ld a2,-296(s0) + c000cea8: 8526 mv a0,s1 + c000ceaa: d7dfa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28646 JS_FreeValue(ctx, resolving_funcs[1]); - c000cdc0: ee043583 ld a1,-288(s0) - c000cdc4: ee843603 ld a2,-280(s0) - c000cdc8: bfa5 j c000cd40 + c000ceae: ee043583 ld a1,-288(s0) + c000ceb2: ee843603 ld a2,-280(s0) + c000ceb6: bfa5 j c000ce2e get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000cdca: 002bc703 lbu a4,2(s7) - c000cdce: 001bc783 lbu a5,1(s7) + c000ceb8: 002bc703 lbu a4,2(s7) + c000cebc: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16837 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16845 pc += 4; - c000cdd2: 005b8913 addi s2,s7,5 + c000cec0: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cdd6: 0722 slli a4,a4,0x8 - c000cdd8: 8f5d or a4,a4,a5 - c000cdda: 003bc783 lbu a5,3(s7) - c000cdde: 07c2 slli a5,a5,0x10 - c000cde0: 8f5d or a4,a4,a5 - c000cde2: 004bc783 lbu a5,4(s7) - c000cde6: 07e2 slli a5,a5,0x18 - c000cde8: 8fd9 or a5,a5,a4 + c000cec4: 0722 slli a4,a4,0x8 + c000cec6: 8f5d or a4,a4,a5 + c000cec8: 003bc783 lbu a5,3(s7) + c000cecc: 07c2 slli a5,a5,0x10 + c000cece: 8f5d or a4,a4,a5 + c000ced0: 004bc783 lbu a5,4(s7) + c000ced4: 07e2 slli a5,a5,0x18 + c000ced6: 8fd9 or a5,a5,a4 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000cdea: 1784b703 ld a4,376(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000ced8: 1784b703 ld a4,376(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000cdee: 0007869b sext.w a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 + c000cedc: 0007869b sext.w a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000cdf2: 6f18 ld a4,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000cee0: 6f18 ld a4,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000cdf4: 5310 lw a2,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000cee2: 5310 lw a2,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000cdf6: 8ff1 and a5,a5,a2 - c000cdf8: 0785 addi a5,a5,1 - c000cdfa: 5671 li a2,-4 - c000cdfc: 02c787b3 mul a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000cee4: 8ff1 and a5,a5,a2 + c000cee6: 0785 addi a5,a5,1 + c000cee8: 5671 li a2,-4 + c000ceea: 02c787b3 mul a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000ce00: 04000637 lui a2,0x4000 - c000ce04: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000ceee: 04000637 lui a2,0x4000 + c000cef2: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000ce06: 97ba add a5,a5,a4 - c000ce08: 0007e783 lwu a5,0(a5) + c000cef4: 97ba add a5,a5,a4 + c000cef6: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000ce0c: 04070713 addi a4,a4,64 + c000cefa: 04070713 addi a4,a4,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000ce10: e38d bnez a5,c000ce32 + c000cefe: e38d bnez a5,c000cf20 JS_CheckGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9739 ret = JS_HasProperty(ctx, ctx->global_obj, prop); - c000ce12: 1684b583 ld a1,360(s1) - c000ce16: 1704b603 ld a2,368(s1) - c000ce1a: 8526 mv a0,s1 - c000ce1c: 3c7230ef jal ra,c00309e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9732 + c000cf00: 1684b583 ld a1,360(s1) + c000cf04: 1704b603 ld a2,368(s1) + c000cf08: 8526 mv a0,s1 + c000cf0a: 4a9230ef jal ra,c0030bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9740 if (ret < 0) - c000ce20: 0005079b sext.w a5,a0 - c000ce24: 00055363 bgez a0,c000ce2a - c000ce28: 57fd li a5,-1 + c000cf0e: 0005079b sext.w a5,a0 + c000cf12: 00055363 bgez a0,c000cf18 + c000cf16: 57fd li a5,-1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16848 if (ret < 0) - c000ce2a: 02055063 bgez a0,c000ce4a - c000ce2e: facfe06f j c000b5da + c000cf18: 02055063 bgez a0,c000cf38 + c000cf1c: facfe06f j c000b6c8 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c000ce32: 078e slli a5,a5,0x3 - c000ce34: 17e1 addi a5,a5,-8 - c000ce36: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000cf20: 078e slli a5,a5,0x3 + c000cf22: 17e1 addi a5,a5,-8 + c000cf24: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000ce38: 43cc lw a1,4(a5) - c000ce3a: 00d58763 beq a1,a3,c000ce48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000cf26: 43cc lw a1,4(a5) + c000cf28: 00d58763 beq a1,a3,c000cf36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000ce3e: 439c lw a5,0(a5) - c000ce40: 8ff1 and a5,a5,a2 - c000ce42: 1782 slli a5,a5,0x20 - c000ce44: 9381 srli a5,a5,0x20 - c000ce46: b7e9 j c000ce10 + c000cf2c: 439c lw a5,0(a5) + c000cf2e: 8ff1 and a5,a5,a2 + c000cf30: 1782 slli a5,a5,0x20 + c000cf32: 9381 srli a5,a5,0x20 + c000cf34: b7e9 j c000cefe JS_CheckGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9729 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9737 ret = TRUE; - c000ce48: 4785 li a5,1 + c000cf36: 4785 li a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c000ce4a: 00f037b3 snez a5,a5 - c000ce4e: 86042223 sw zero,-1948(s0) - c000ce52: 86f42023 sw a5,-1952(s0) - c000ce56: 86043783 ld a5,-1952(s0) - c000ce5a: 4705 li a4,1 - c000ce5c: eee43c23 sd a4,-264(s0) - c000ce60: eef43823 sd a5,-272(s0) + c000cf38: 00f037b3 snez a5,a5 + c000cf3c: 86042223 sw zero,-1948(s0) + c000cf40: 86f42023 sw a5,-1952(s0) + c000cf44: 86043783 ld a5,-1952(s0) + c000cf48: 4705 li a4,1 + c000cf4a: eee43c23 sd a4,-264(s0) + c000cf4e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16850 *sp++ = JS_NewBool(ctx, ret); - c000ce64: 00fd3023 sd a5,0(s10) - c000ce68: ef843783 ld a5,-264(s0) - c000ce6c: 86e43423 sd a4,-1944(s0) - c000ce70: 0d41 addi s10,s10,16 - c000ce72: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16844 + c000cf52: 00fd3023 sd a5,0(s10) + c000cf56: ef843783 ld a5,-264(s0) + c000cf5a: 86e43423 sd a4,-1944(s0) + c000cf5e: 0d41 addi s10,s10,16 + c000cf60: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16852 BREAK; - c000ce76: e02fe06f j c000b478 + c000cf64: e02fe06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ce7a: 002bc703 lbu a4,2(s7) - c000ce7e: 001bc783 lbu a5,1(s7) + c000cf68: 002bc703 lbu a4,2(s7) + c000cf6c: 001bc783 lbu a5,1(s7) JS_GetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9669 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9677 p = JS_VALUE_GET_OBJ(ctx->global_var_obj); - c000ce82: 1784b603 ld a2,376(s1) + c000cf70: 1784b603 ld a2,376(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ce86: 0722 slli a4,a4,0x8 - c000ce88: 8f5d or a4,a4,a5 - c000ce8a: 003bc783 lbu a5,3(s7) + c000cf74: 0722 slli a4,a4,0x8 + c000cf76: 8f5d or a4,a4,a5 + c000cf78: 003bc783 lbu a5,3(s7) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000ce8e: 04000537 lui a0,0x4000 + c000cf7c: 04000537 lui a0,0x4000 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16860 pc += 4; - c000ce92: 005b8913 addi s2,s7,5 + c000cf80: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ce96: 07c2 slli a5,a5,0x10 - c000ce98: 8f5d or a4,a4,a5 - c000ce9a: 004bc783 lbu a5,4(s7) + c000cf84: 07c2 slli a5,a5,0x10 + c000cf86: 8f5d or a4,a4,a5 + c000cf88: 004bc783 lbu a5,4(s7) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000ce9e: 157d addi a0,a0,-1 + c000cf8c: 157d addi a0,a0,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cea0: 07e2 slli a5,a5,0x18 - c000cea2: 8fd9 or a5,a5,a4 + c000cf8e: 07e2 slli a5,a5,0x18 + c000cf90: 8fd9 or a5,a5,a4 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000cea4: 6e18 ld a4,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000cf92: 6e18 ld a4,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000cea6: 0007869b sext.w a3,a5 - c000ceaa: 530c lw a1,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000cf94: 0007869b sext.w a3,a5 + c000cf98: 530c lw a1,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ceac: 8fed and a5,a5,a1 - c000ceae: 0785 addi a5,a5,1 - c000ceb0: 55f1 li a1,-4 - c000ceb2: 02b787b3 mul a5,a5,a1 + c000cf9a: 8fed and a5,a5,a1 + c000cf9c: 0785 addi a5,a5,1 + c000cf9e: 55f1 li a1,-4 + c000cfa0: 02b787b3 mul a5,a5,a1 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000ceb6: 04070593 addi a1,a4,64 + c000cfa4: 04070593 addi a1,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ceba: 97ba add a5,a5,a4 - c000cebc: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000cfa8: 97ba add a5,a5,a4 + c000cfaa: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000cec0: ef89 bnez a5,c000ceda + c000cfae: ef89 bnez a5,c000cfc8 JS_GetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9677 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9685 return JS_GetPropertyInternal(ctx, ctx->global_obj, prop, - c000cec2: 1684b703 ld a4,360(s1) - c000cec6: 1704b783 ld a5,368(s1) - c000ceca: fc9a881b addiw a6,s5,-55 - c000cece: 85ba mv a1,a4 - c000ced0: 863e mv a2,a5 - c000ced2: 8526 mv a0,s1 - c000ced4: 16f040ef jal ra,c0011842 - c000ced8: a03d j c000cf06 + c000cfb0: 1684b703 ld a4,360(s1) + c000cfb4: 1704b783 ld a5,368(s1) + c000cfb8: fc9a881b addiw a6,s5,-55 + c000cfbc: 85ba mv a1,a4 + c000cfbe: 863e mv a2,a5 + c000cfc0: 8526 mv a0,s1 + c000cfc2: 16f040ef jal ra,c0011930 + c000cfc6: a03d j c000cff4 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000ceda: 00379713 slli a4,a5,0x3 - c000cede: 1761 addi a4,a4,-8 - c000cee0: 972e add a4,a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000cfc8: 00379713 slli a4,a5,0x3 + c000cfcc: 1761 addi a4,a4,-8 + c000cfce: 972e add a4,a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000cee2: 00472803 lw a6,4(a4) - c000cee6: 05069b63 bne a3,a6,c000cf3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c000cfd0: 00472803 lw a6,4(a4) + c000cfd4: 05069b63 bne a3,a6,c000d02a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c000ceea: 7218 ld a4,32(a2) - c000ceec: 0792 slli a5,a5,0x4 - c000ceee: 17c1 addi a5,a5,-16 - c000cef0: 97ba add a5,a5,a4 + c000cfd8: 7218 ld a4,32(a2) + c000cfda: 0792 slli a5,a5,0x4 + c000cfdc: 17c1 addi a5,a5,-16 + c000cfde: 97ba add a5,a5,a4 JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_UNINITIALIZED); - c000cef2: 678c ld a1,8(a5) + c000cfe0: 678c ld a1,8(a5) JS_GetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9673 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9681 if (unlikely(JS_IsUninitialized(pr->u.value))) - c000cef4: 4711 li a4,4 - c000cef6: 0005861b sext.w a2,a1 - c000cefa: 04e61663 bne a2,a4,c000cf46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9674 + c000cfe2: 4711 li a4,4 + c000cfe4: 0005861b sext.w a2,a1 + c000cfe8: 04e61663 bne a2,a4,c000d034 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9682 return JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c000cefe: 85b6 mv a1,a3 - c000cf00: 8526 mv a0,s1 - c000cf02: 1d7070ef jal ra,c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9675 + c000cfec: 85b6 mv a1,a3 + c000cfee: 8526 mv a0,s1 + c000cff0: 1d7070ef jal ra,c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9683 return JS_DupValue(ctx, pr->u.value); - c000cf06: c2a43023 sd a0,-992(s0) - c000cf0a: c2b43423 sd a1,-984(s0) - c000cf0e: c2843783 ld a5,-984(s0) - c000cf12: c2043703 ld a4,-992(s0) + c000cff4: c2a43023 sd a0,-992(s0) + c000cff8: c2b43423 sd a1,-984(s0) + c000cffc: c2843783 ld a5,-984(s0) + c000d000: c2043703 ld a4,-992(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16863 if (unlikely(JS_IsException(val))) - c000cf16: 4699 li a3,6 - c000cf18: eef43c23 sd a5,-264(s0) + c000d004: 4699 li a3,6 + c000d006: eef43c23 sd a5,-264(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000cf1c: eee43823 sd a4,-272(s0) + c000d00a: eee43823 sd a4,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16855 - c000cf20: 2781 sext.w a5,a5 - c000cf22: 00d79463 bne a5,a3,c000cf2a - c000cf26: eb4fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16863 + c000d00e: 2781 sext.w a5,a5 + c000d010: 00d79463 bne a5,a3,c000d018 + c000d014: eb4fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16865 *sp++ = val; - c000cf2a: 00ed3023 sd a4,0(s10) - c000cf2e: ef843783 ld a5,-264(s0) - c000cf32: 0d41 addi s10,s10,16 - c000cf34: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16859 + c000d018: 00ed3023 sd a4,0(s10) + c000d01c: ef843783 ld a5,-264(s0) + c000d020: 0d41 addi s10,s10,16 + c000d022: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16867 BREAK; - c000cf38: d40fe06f j c000b478 + c000d026: d40fe06f j c000b566 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000cf3c: 431c lw a5,0(a4) - c000cf3e: 8fe9 and a5,a5,a0 - c000cf40: 1782 slli a5,a5,0x20 - c000cf42: 9381 srli a5,a5,0x20 - c000cf44: bfb5 j c000cec0 + c000d02a: 431c lw a5,0(a4) + c000d02c: 8fe9 and a5,a5,a0 + c000d02e: 1782 slli a5,a5,0x20 + c000d030: 9381 srli a5,a5,0x20 + c000d032: bfb5 j c000cfae JS_GetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9675 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9683 return JS_DupValue(ctx, pr->u.value); - c000cf46: 6388 ld a0,0(a5) - c000cf48: f26f90ef jal ra,c000666e - c000cf4c: bf6d j c000cf06 + c000d034: 6388 ld a0,0(a5) + c000d036: f26f90ef jal ra,c000675c + c000d03a: bf6d j c000cff4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf4e: 002bc783 lbu a5,2(s7) - c000cf52: 001bc583 lbu a1,1(s7) + c000d03c: 002bc783 lbu a5,2(s7) + c000d040: 001bc583 lbu a1,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16869 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16877 ret = JS_SetGlobalVar(ctx, atom, sp[-1], opcode - OP_put_var); - c000cf56: ff0d3603 ld a2,-16(s10) + c000d044: ff0d3603 ld a2,-16(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf5a: 07a2 slli a5,a5,0x8 - c000cf5c: 8fcd or a5,a5,a1 - c000cf5e: 003bc583 lbu a1,3(s7) + c000d048: 07a2 slli a5,a5,0x8 + c000d04a: 8fcd or a5,a5,a1 + c000d04c: 003bc583 lbu a1,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16869 - c000cf62: ff8d3683 ld a3,-8(s10) - c000cf66: fc7a871b addiw a4,s5,-57 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16877 + c000d050: ff8d3683 ld a3,-8(s10) + c000d054: fc7a871b addiw a4,s5,-57 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf6a: 05c2 slli a1,a1,0x10 - c000cf6c: 8fcd or a5,a5,a1 - c000cf6e: 004bc583 lbu a1,4(s7) + c000d058: 05c2 slli a1,a1,0x10 + c000d05a: 8fcd or a5,a5,a1 + c000d05c: 004bc583 lbu a1,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16869 - c000cf72: 8526 mv a0,s1 - c000cf74: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16877 + c000d060: 8526 mv a0,s1 + c000d062: 1d41 addi s10,s10,-16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf76: 05e2 slli a1,a1,0x18 - c000cf78: 8ddd or a1,a1,a5 + c000d064: 05e2 slli a1,a1,0x18 + c000d066: 8ddd or a1,a1,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16869 - c000cf7a: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16867 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16877 + c000d068: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16875 pc += 4; - c000cf7c: 005b8913 addi s2,s7,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16869 + c000d06a: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16877 ret = JS_SetGlobalVar(ctx, atom, sp[-1], opcode - OP_put_var); - c000cf80: 08a230ef jal ra,c003000a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16871 + c000d06e: 16c230ef jal ra,c00301da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16879 if (unlikely(ret < 0)) - c000cf84: 00054463 bltz a0,c000cf8c - c000cf88: cf0fe06f j c000b478 - c000cf8c: e4efe06f j c000b5da + c000d072: 00054463 bltz a0,c000d07a + c000d076: cf0fe06f j c000b566 + c000d07a: e4efe06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf90: 002bc783 lbu a5,2(s7) - c000cf94: 001bc583 lbu a1,1(s7) + c000d07e: 002bc783 lbu a5,2(s7) + c000d082: 001bc583 lbu a1,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16881 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16889 pc += 4; - c000cf98: 005b8913 addi s2,s7,5 + c000d086: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cf9c: 07a2 slli a5,a5,0x8 - c000cf9e: 8fcd or a5,a5,a1 - c000cfa0: 003bc583 lbu a1,3(s7) - c000cfa4: 05c2 slli a1,a1,0x10 - c000cfa6: 8fcd or a5,a5,a1 - c000cfa8: 004bc583 lbu a1,4(s7) - c000cfac: 05e2 slli a1,a1,0x18 - c000cfae: 8ddd or a1,a1,a5 + c000d08a: 07a2 slli a5,a5,0x8 + c000d08c: 8fcd or a5,a5,a1 + c000d08e: 003bc583 lbu a1,3(s7) + c000d092: 05c2 slli a1,a1,0x10 + c000d094: 8fcd or a5,a5,a1 + c000d096: 004bc583 lbu a1,4(s7) + c000d09a: 05e2 slli a1,a1,0x18 + c000d09c: 8ddd or a1,a1,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16892 if (unlikely(!JS_VALUE_GET_INT(sp[-2]))) { - c000cfb0: fe0d2783 lw a5,-32(s10) + c000d09e: fe0d2783 lw a5,-32(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cfb4: 2581 sext.w a1,a1 + c000d0a2: 2581 sext.w a1,a1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16884 - c000cfb6: e791 bnez a5,c000cfc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16885 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16892 + c000d0a4: e791 bnez a5,c000d0b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16893 JS_ThrowReferenceErrorNotDefined(ctx, atom); - c000cfb8: 8526 mv a0,s1 - c000cfba: 179070ef jal ra,c0014932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16886 + c000d0a6: 8526 mv a0,s1 + c000d0a8: 179070ef jal ra,c0014a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16894 goto exception; - c000cfbe: e1cfe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16888 + c000d0ac: e1cfe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16896 ret = JS_SetGlobalVar(ctx, atom, sp[-1], 2); - c000cfc2: ff0d3603 ld a2,-16(s10) - c000cfc6: ff8d3683 ld a3,-8(s10) - c000cfca: 4709 li a4,2 - c000cfcc: 8526 mv a0,s1 - c000cfce: 03c230ef jal ra,c003000a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16889 + c000d0b0: ff0d3603 ld a2,-16(s10) + c000d0b4: ff8d3683 ld a3,-8(s10) + c000d0b8: 4709 li a4,2 + c000d0ba: 8526 mv a0,s1 + c000d0bc: 11e230ef jal ra,c00301da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16897 sp -= 2; - c000cfd2: 1d01 addi s10,s10,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16890 + c000d0c0: 1d01 addi s10,s10,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16898 if (unlikely(ret < 0)) - c000cfd4: 00054463 bltz a0,c000cfdc - c000cfd8: ca0fe06f j c000b478 - c000cfdc: dfefe06f j c000b5da + c000d0c2: 00054463 bltz a0,c000d0ca + c000d0c6: ca0fe06f j c000b566 + c000d0ca: dfefe06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cfe0: 002bc703 lbu a4,2(s7) - c000cfe4: 001bc783 lbu a5,1(s7) + c000d0ce: 002bc703 lbu a4,2(s7) + c000d0d2: 001bc783 lbu a5,1(s7) JS_CheckDefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9578 p = JS_VALUE_GET_OBJ(ctx->global_obj); - c000cfe8: 1684b683 ld a3,360(s1) + c000d0d6: 1684b683 ld a3,360(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cfec: 0722 slli a4,a4,0x8 - c000cfee: 8f5d or a4,a4,a5 - c000cff0: 003bc783 lbu a5,3(s7) + c000d0da: 0722 slli a4,a4,0x8 + c000d0dc: 8f5d or a4,a4,a5 + c000d0de: 003bc783 lbu a5,3(s7) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000cff4: 6e90 ld a2,24(a3) + c000d0e2: 6e90 ld a2,24(a3) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16909 pc += 5; - c000cff6: 006b8913 addi s2,s7,6 + c000d0e4: 006b8913 addi s2,s7,6 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000cffa: 07c2 slli a5,a5,0x10 - c000cffc: 8f5d or a4,a4,a5 - c000cffe: 004bc783 lbu a5,4(s7) + c000d0e8: 07c2 slli a5,a5,0x10 + c000d0ea: 8f5d or a4,a4,a5 + c000d0ec: 004bc783 lbu a5,4(s7) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000d002: 5208 lw a0,32(a2) + c000d0f0: 5208 lw a0,32(a2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d004: 07e2 slli a5,a5,0x18 - c000d006: 8fd9 or a5,a5,a4 + c000d0f2: 07e2 slli a5,a5,0x18 + c000d0f4: 8fd9 or a5,a5,a4 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 - c000d008: 0007859b sext.w a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d0f6: 0007859b sext.w a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d00c: 8fe9 and a5,a5,a0 - c000d00e: 0785 addi a5,a5,1 - c000d010: 5571 li a0,-4 - c000d012: 02a787b3 mul a5,a5,a0 + c000d0fa: 8fe9 and a5,a5,a0 + c000d0fc: 0785 addi a5,a5,1 + c000d0fe: 5571 li a0,-4 + c000d100: 02a787b3 mul a5,a5,a0 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16908 flags = pc[4]; - c000d016: 005bc703 lbu a4,5(s7) + c000d104: 005bc703 lbu a4,5(s7) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000d01a: 04060513 addi a0,a2,64 # 4000040 <__clzdi2-0xbbffffc0> + c000d108: 04060513 addi a0,a2,64 # 4000040 <__clzdi2-0xbbffffc0> find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d01e: 97b2 add a5,a5,a2 - c000d020: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d10c: 97b2 add a5,a5,a2 + c000d10e: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d024: 04000637 lui a2,0x4000 - c000d028: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 + c000d112: 04000637 lui a2,0x4000 + c000d116: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000d02a: ef95 bnez a5,c000d066 + c000d118: ef95 bnez a5,c000d154 JS_CheckDefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9573 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9581 if (flags & DEFINE_GLOBAL_LEX_VAR) { - c000d02c: 0187161b slliw a2,a4,0x18 - c000d030: 4186561b sraiw a2,a2,0x18 - c000d034: 04065563 bgez a2,c000d07e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9574 + c000d11a: 0187161b slliw a2,a4,0x18 + c000d11e: 4186561b sraiw a2,a2,0x18 + c000d122: 04065563 bgez a2,c000d16c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9582 if (prs && !(prs->flags & JS_PROP_CONFIGURABLE)) - c000d038: cbc1 beqz a5,c000d0c8 - c000d03a: 439c lw a5,0(a5) - c000d03c: 01a7d79b srliw a5,a5,0x1a - c000d040: 8b85 andi a5,a5,1 - c000d042: e3d9 bnez a5,c000d0c8 + c000d126: cbc1 beqz a5,c000d1b6 + c000d128: 439c lw a5,0(a5) + c000d12a: 01a7d79b srliw a5,a5,0x1a + c000d12e: 8b85 andi a5,a5,1 + c000d130: e3d9 bnez a5,c000d1b6 JS_ThrowSyntaxErrorVarRedeclaration(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9568 return JS_ThrowSyntaxErrorAtom(ctx, "redeclaration of '%s'", prop); - c000d044: 00050697 auipc a3,0x50 - c000d048: f8c68693 addi a3,a3,-116 # c005cfd0 - c000d04c: 00050617 auipc a2,0x50 - c000d050: 09c60613 addi a2,a2,156 # c005d0e8 - c000d054: 8526 mv a0,s1 - c000d056: 0e0060ef jal ra,c0013136 <__JS_ThrowSyntaxErrorAtom> - c000d05a: c2a43823 sd a0,-976(s0) - c000d05e: c2b43c23 sd a1,-968(s0) - c000d062: d78fe06f j c000b5da + c000d132: 00050697 auipc a3,0x50 + c000d136: 0ce68693 addi a3,a3,206 # c005d200 + c000d13a: 00050617 auipc a2,0x50 + c000d13e: 1de60613 addi a2,a2,478 # c005d318 + c000d142: 8526 mv a0,s1 + c000d144: 0e0060ef jal ra,c0013224 <__JS_ThrowSyntaxErrorAtom> + c000d148: c2a43823 sd a0,-976(s0) + c000d14c: c2b43c23 sd a1,-968(s0) + c000d150: d78fe06f j c000b6c8 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c000d066: 078e slli a5,a5,0x3 - c000d068: 17e1 addi a5,a5,-8 - c000d06a: 97aa add a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000d154: 078e slli a5,a5,0x3 + c000d156: 17e1 addi a5,a5,-8 + c000d158: 97aa add a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000d06c: 0047a803 lw a6,4(a5) - c000d070: fab80ee3 beq a6,a1,c000d02c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d15a: 0047a803 lw a6,4(a5) + c000d15e: fab80ee3 beq a6,a1,c000d11a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d074: 439c lw a5,0(a5) - c000d076: 8ff1 and a5,a5,a2 - c000d078: 1782 slli a5,a5,0x20 - c000d07a: 9381 srli a5,a5,0x20 - c000d07c: b77d j c000d02a + c000d162: 439c lw a5,0(a5) + c000d164: 8ff1 and a5,a5,a2 + c000d166: 1782 slli a5,a5,0x20 + c000d168: 9381 srli a5,a5,0x20 + c000d16a: b77d j c000d118 JS_CheckDefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9577 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9585 if (!prs && !p->extensible) - c000d07e: e789 bnez a5,c000d088 - c000d080: 0056c683 lbu a3,5(a3) - c000d084: 8a85 andi a3,a3,1 - c000d086: c685 beqz a3,c000d0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9579 + c000d16c: e789 bnez a5,c000d176 + c000d16e: 0056c683 lbu a3,5(a3) + c000d172: 8a85 andi a3,a3,1 + c000d174: c685 beqz a3,c000d19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9587 if (flags & DEFINE_GLOBAL_FUNC_VAR) { - c000d088: 04077713 andi a4,a4,64 - c000d08c: cf15 beqz a4,c000d0c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9580 + c000d176: 04077713 andi a4,a4,64 + c000d17a: cf15 beqz a4,c000d1b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9588 if (prs) { - c000d08e: cf8d beqz a5,c000d0c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9581 + c000d17c: cf8d beqz a5,c000d1b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9589 if (!(prs->flags & JS_PROP_CONFIGURABLE) && - c000d090: 439c lw a5,0(a5) - c000d092: 01a7d79b srliw a5,a5,0x1a - c000d096: 0017f713 andi a4,a5,1 - c000d09a: e71d bnez a4,c000d0c8 - c000d09c: 0307f713 andi a4,a5,48 - c000d0a0: 46c1 li a3,16 - c000d0a2: 00d70663 beq a4,a3,c000d0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9582 + c000d17e: 439c lw a5,0(a5) + c000d180: 01a7d79b srliw a5,a5,0x1a + c000d184: 0017f713 andi a4,a5,1 + c000d188: e71d bnez a4,c000d1b6 + c000d18a: 0307f713 andi a4,a5,48 + c000d18e: 46c1 li a3,16 + c000d190: 00d70663 beq a4,a3,c000d19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9590 ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET || - c000d0a6: 8b99 andi a5,a5,6 - c000d0a8: 4719 li a4,6 - c000d0aa: 00e78f63 beq a5,a4,c000d0c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9586 + c000d194: 8b99 andi a5,a5,6 + c000d196: 4719 li a4,6 + c000d198: 00e78f63 beq a5,a4,c000d1b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9594 JS_ThrowTypeErrorAtom(ctx, "cannot define variable '%s'", - c000d0ae: 00050697 auipc a3,0x50 - c000d0b2: f2268693 addi a3,a3,-222 # c005cfd0 - c000d0b6: 00050617 auipc a2,0x50 - c000d0ba: 0ba60613 addi a2,a2,186 # c005d170 - c000d0be: 8526 mv a0,s1 - c000d0c0: 412060ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9588 + c000d19c: 00050697 auipc a3,0x50 + c000d1a0: 06468693 addi a3,a3,100 # c005d200 + c000d1a4: 00050617 auipc a2,0x50 + c000d1a8: 1fc60613 addi a2,a2,508 # c005d3a0 + c000d1ac: 8526 mv a0,s1 + c000d1ae: 412060ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9596 return -1; - c000d0c4: d16fe06f j c000b5da + c000d1b2: d16fe06f j c000b6c8 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000d0c8: 1784b783 ld a5,376(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d1b6: 1784b783 ld a5,376(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d0cc: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 + c000d1ba: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000d0ce: 6f98 ld a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000d1bc: 6f98 ld a4,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000d0d0: 531c lw a5,32(a4) - c000d0d2: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d1be: 531c lw a5,32(a4) + c000d1c0: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d0d4: 1782 slli a5,a5,0x20 - c000d0d6: 9381 srli a5,a5,0x20 - c000d0d8: 0785 addi a5,a5,1 - c000d0da: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d1c2: 1782 slli a5,a5,0x20 + c000d1c4: 9381 srli a5,a5,0x20 + c000d1c6: 0785 addi a5,a5,1 + c000d1c8: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d0de: 040006b7 lui a3,0x4000 - c000d0e2: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d1cc: 040006b7 lui a3,0x4000 + c000d1d0: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d0e4: 97ba add a5,a5,a4 - c000d0e6: 0007e783 lwu a5,0(a5) + c000d1d2: 97ba add a5,a5,a4 + c000d1d4: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000d0ea: 04070713 addi a4,a4,64 + c000d1d8: 04070713 addi a4,a4,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000d0ee: e399 bnez a5,c000d0f4 - c000d0f0: b88fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 + c000d1dc: e399 bnez a5,c000d1e2 + c000d1de: b88fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c000d0f4: 078e slli a5,a5,0x3 - c000d0f6: 17e1 addi a5,a5,-8 - c000d0f8: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000d1e2: 078e slli a5,a5,0x3 + c000d1e4: 17e1 addi a5,a5,-8 + c000d1e6: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000d0fa: 43d0 lw a2,4(a5) - c000d0fc: f4b604e3 beq a2,a1,c000d044 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d1e8: 43d0 lw a2,4(a5) + c000d1ea: f4b604e3 beq a2,a1,c000d132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d100: 439c lw a5,0(a5) - c000d102: 8ff5 and a5,a5,a3 - c000d104: 1782 slli a5,a5,0x20 - c000d106: 9381 srli a5,a5,0x20 - c000d108: b7dd j c000d0ee + c000d1ee: 439c lw a5,0(a5) + c000d1f0: 8ff5 and a5,a5,a3 + c000d1f2: 1782 slli a5,a5,0x20 + c000d1f4: 9381 srli a5,a5,0x20 + c000d1f6: b7dd j c000d1dc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d10a: 002bc783 lbu a5,2(s7) - c000d10e: 001bc603 lbu a2,1(s7) + c000d1f8: 002bc783 lbu a5,2(s7) + c000d1fc: 001bc603 lbu a2,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16911 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16919 flags = pc[4]; - c000d112: 005bc683 lbu a3,5(s7) + c000d200: 005bc683 lbu a3,5(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d116: 07a2 slli a5,a5,0x8 - c000d118: 8fd1 or a5,a5,a2 - c000d11a: 003bc603 lbu a2,3(s7) + c000d204: 07a2 slli a5,a5,0x8 + c000d206: 8fd1 or a5,a5,a2 + c000d208: 003bc603 lbu a2,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16920 pc += 5; - c000d11e: 006b8913 addi s2,s7,6 + c000d20c: 006b8913 addi s2,s7,6 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d122: 0642 slli a2,a2,0x10 - c000d124: 8fd1 or a5,a5,a2 - c000d126: 004bc603 lbu a2,4(s7) - c000d12a: 0662 slli a2,a2,0x18 - c000d12c: 8e5d or a2,a2,a5 + c000d210: 0642 slli a2,a2,0x10 + c000d212: 8fd1 or a5,a5,a2 + c000d214: 004bc603 lbu a2,4(s7) + c000d218: 0662 slli a2,a2,0x18 + c000d21a: 8e5d or a2,a2,a5 JS_DefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9615 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9623 if (def_flags & DEFINE_GLOBAL_LEX_VAR) { - c000d12e: 0186979b slliw a5,a3,0x18 - c000d132: 4187d79b sraiw a5,a5,0x18 + c000d21c: 0186979b slliw a5,a3,0x18 + c000d220: 4187d79b sraiw a5,a5,0x18 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d136: 2601 sext.w a2,a2 + c000d224: 2601 sext.w a2,a2 JS_DefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9615 - c000d138: 0607d263 bgez a5,c000d19c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9617 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9623 + c000d226: 0607d263 bgez a5,c000d28a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9625 flags = JS_PROP_ENUMERABLE | (def_flags & JS_PROP_WRITABLE) | - c000d13c: 8a89 andi a3,a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9616 + c000d22a: 8a89 andi a3,a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9624 p = JS_VALUE_GET_OBJ(ctx->global_var_obj); - c000d13e: 1784b583 ld a1,376(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9617 + c000d22c: 1784b583 ld a1,376(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9625 flags = JS_PROP_ENUMERABLE | (def_flags & JS_PROP_WRITABLE) | - c000d142: 0056e693 ori a3,a3,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9619 + c000d230: 0056e693 ori a3,a3,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9627 val = JS_UNINITIALIZED; - c000d146: ee043823 sd zero,-272(s0) - c000d14a: 4a11 li s4,4 + c000d234: ee043823 sd zero,-272(s0) + c000d238: 4a11 li s4,4 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000d14c: 6d98 ld a4,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d23a: 6d98 ld a4,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d14e: 5571 li a0,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000d23c: 5571 li a0,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000d150: 531c lw a5,32(a4) - c000d152: 8ff1 and a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d23e: 531c lw a5,32(a4) + c000d240: 8ff1 and a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d154: 1782 slli a5,a5,0x20 - c000d156: 9381 srli a5,a5,0x20 - c000d158: 0785 addi a5,a5,1 - c000d15a: 02a787b3 mul a5,a5,a0 + c000d242: 1782 slli a5,a5,0x20 + c000d244: 9381 srli a5,a5,0x20 + c000d246: 0785 addi a5,a5,1 + c000d248: 02a787b3 mul a5,a5,a0 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000d15e: 04070513 addi a0,a4,64 + c000d24c: 04070513 addi a0,a4,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d162: 97ba add a5,a5,a4 - c000d164: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d250: 97ba add a5,a5,a4 + c000d252: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d168: 04000737 lui a4,0x4000 - c000d16c: 177d addi a4,a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 + c000d256: 04000737 lui a4,0x4000 + c000d25a: 177d addi a4,a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000d16e: e3a1 bnez a5,c000d1ae + c000d25c: e3a1 bnez a5,c000d29c JS_DefineGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9629 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9637 if (!p->extensible) - c000d170: 0055c783 lbu a5,5(a1) - c000d174: 8b85 andi a5,a5,1 - c000d176: e399 bnez a5,c000d17c - c000d178: b00fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9631 + c000d25e: 0055c783 lbu a5,5(a1) + c000d262: 8b85 andi a5,a5,1 + c000d264: e399 bnez a5,c000d26a + c000d266: b00fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9639 pr = add_property(ctx, p, prop, flags); - c000d17c: 8526 mv a0,s1 - c000d17e: 248090ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9632 + c000d26a: 8526 mv a0,s1 + c000d26c: 32a090ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9640 if (unlikely(!pr)) - c000d182: e119 bnez a0,c000d188 - c000d184: c56fe06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9634 + c000d270: e119 bnez a0,c000d276 + c000d272: c56fe06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9642 pr->u.value = val; - c000d188: ef043783 ld a5,-272(s0) - c000d18c: ef443c23 sd s4,-264(s0) - c000d190: e11c sd a5,0(a0) - c000d192: ef843783 ld a5,-264(s0) - c000d196: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9635 + c000d276: ef043783 ld a5,-272(s0) + c000d27a: ef443c23 sd s4,-264(s0) + c000d27e: e11c sd a5,0(a0) + c000d280: ef843783 ld a5,-264(s0) + c000d284: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9643 return 0; - c000d198: ae0fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9622 + c000d286: ae0fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9630 flags = JS_PROP_ENUMERABLE | JS_PROP_WRITABLE | - c000d19c: 8a85 andi a3,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9621 + c000d28a: 8a85 andi a3,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9629 p = JS_VALUE_GET_OBJ(ctx->global_obj); - c000d19e: 1684b583 ld a1,360(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9622 + c000d28c: 1684b583 ld a1,360(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9630 flags = JS_PROP_ENUMERABLE | JS_PROP_WRITABLE | - c000d1a2: 0066e693 ori a3,a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9624 + c000d290: 0066e693 ori a3,a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9632 val = JS_UNDEFINED; - c000d1a6: ee043823 sd zero,-272(s0) - c000d1aa: 4a0d li s4,3 - c000d1ac: b745 j c000d14c + c000d294: ee043823 sd zero,-272(s0) + c000d298: 4a0d li s4,3 + c000d29a: b745 j c000d23a find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c000d1ae: 078e slli a5,a5,0x3 - c000d1b0: 17e1 addi a5,a5,-8 - c000d1b2: 97aa add a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000d29c: 078e slli a5,a5,0x3 + c000d29e: 17e1 addi a5,a5,-8 + c000d2a0: 97aa add a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000d1b4: 0047a803 lw a6,4(a5) - c000d1b8: 00c81463 bne a6,a2,c000d1c0 - c000d1bc: abcfe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d2a2: 0047a803 lw a6,4(a5) + c000d2a6: 00c81463 bne a6,a2,c000d2ae + c000d2aa: abcfe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d1c0: 439c lw a5,0(a5) - c000d1c2: 8ff9 and a5,a5,a4 - c000d1c4: 1782 slli a5,a5,0x20 - c000d1c6: 9381 srli a5,a5,0x20 - c000d1c8: b75d j c000d16e + c000d2ae: 439c lw a5,0(a5) + c000d2b0: 8ff9 and a5,a5,a4 + c000d2b2: 1782 slli a5,a5,0x20 + c000d2b4: 9381 srli a5,a5,0x20 + c000d2b6: b75d j c000d25c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d1ca: 002bc703 lbu a4,2(s7) - c000d1ce: 001bc783 lbu a5,1(s7) - c000d1d2: ff0d3683 ld a3,-16(s10) - c000d1d6: 0722 slli a4,a4,0x8 - c000d1d8: 8f5d or a4,a4,a5 - c000d1da: 003bc783 lbu a5,3(s7) + c000d2b8: 002bc703 lbu a4,2(s7) + c000d2bc: 001bc783 lbu a5,1(s7) + c000d2c0: ff0d3683 ld a3,-16(s10) + c000d2c4: 0722 slli a4,a4,0x8 + c000d2c6: 8f5d or a4,a4,a5 + c000d2c8: 003bc783 lbu a5,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16931 pc += 5; - c000d1de: 006b8913 addi s2,s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16924 + c000d2cc: 006b8913 addi s2,s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16932 if (JS_DefineGlobalFunction(ctx, atom, sp[-1], flags)) - c000d1e2: ff0d0a13 addi s4,s10,-16 + c000d2d0: ff0d0a13 addi s4,s10,-16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000d1e6: 07c2 slli a5,a5,0x10 - c000d1e8: 8f5d or a4,a4,a5 - c000d1ea: 004bc783 lbu a5,4(s7) - c000d1ee: 07e2 slli a5,a5,0x18 - c000d1f0: 8fd9 or a5,a5,a4 + c000d2d4: 07c2 slli a5,a5,0x10 + c000d2d6: 8f5d or a4,a4,a5 + c000d2d8: 004bc783 lbu a5,4(s7) + c000d2dc: 07e2 slli a5,a5,0x18 + c000d2de: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16930 flags = pc[4]; - c000d1f2: 005bc703 lbu a4,5(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16924 + c000d2e0: 005bc703 lbu a4,5(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16932 if (JS_DefineGlobalFunction(ctx, atom, sp[-1], flags)) - c000d1f6: e8d43823 sd a3,-368(s0) - c000d1fa: ff8d3683 ld a3,-8(s10) - c000d1fe: e8d43c23 sd a3,-360(s0) + c000d2e4: e8d43823 sd a3,-368(s0) + c000d2e8: ff8d3683 ld a3,-8(s10) + c000d2ec: e8d43c23 sd a3,-360(s0) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c000d202: 1684b683 ld a3,360(s1) - c000d206: 6e90 ld a2,24(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 + c000d2f0: 1684b683 ld a3,360(s1) + c000d2f4: 6e90 ld a2,24(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c000d208: 0007869b sext.w a3,a5 - c000d20c: 520c lw a1,32(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d2f6: 0007869b sext.w a3,a5 + c000d2fa: 520c lw a1,32(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d20e: 8fed and a5,a5,a1 - c000d210: 0785 addi a5,a5,1 - c000d212: 55f1 li a1,-4 - c000d214: 02b787b3 mul a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d2fc: 8fed and a5,a5,a1 + c000d2fe: 0785 addi a5,a5,1 + c000d300: 55f1 li a1,-4 + c000d302: 02b787b3 mul a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d218: 040005b7 lui a1,0x4000 - c000d21c: 15fd addi a1,a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c000d306: 040005b7 lui a1,0x4000 + c000d30a: 15fd addi a1,a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c000d21e: 97b2 add a5,a5,a2 - c000d220: 0007e783 lwu a5,0(a5) + c000d30c: 97b2 add a5,a5,a2 + c000d30e: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000d224: 04060613 addi a2,a2,64 + c000d312: 04060613 addi a2,a2,64 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c000d228: efa1 bnez a5,c000d280 + c000d316: efa1 bnez a5,c000d36e JS_DefineGlobalFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9660 flags |= JS_PROP_ENUMERABLE | JS_PROP_WRITABLE | def_flags | - c000d22a: 6799 lui a5,0x6 - c000d22c: 70678793 addi a5,a5,1798 # 6706 <__clzdi2-0xbfff98fa> - c000d230: 8f5d or a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9656 + c000d318: 6799 lui a5,0x6 + c000d31a: 70678793 addi a5,a5,1798 # 6706 <__clzdi2-0xbfff98fa> + c000d31e: 8f5d or a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9664 JS_UNDEFINED, JS_UNDEFINED, flags) < 0) - c000d232: 478d li a5,3 - c000d234: eef43c23 sd a5,-264(s0) - c000d238: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9655 + c000d320: 478d li a5,3 + c000d322: eef43c23 sd a5,-264(s0) + c000d326: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9663 if (JS_DefineProperty(ctx, ctx->global_obj, prop, func, - c000d23c: e83a sd a4,16(sp) - c000d23e: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9656 + c000d32a: e83a sd a4,16(sp) + c000d32c: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9664 JS_UNDEFINED, JS_UNDEFINED, flags) < 0) - c000d240: ee043823 sd zero,-272(s0) - c000d244: ec043823 sd zero,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9655 + c000d32e: ee043823 sd zero,-272(s0) + c000d332: ec043823 sd zero,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9663 if (JS_DefineProperty(ctx, ctx->global_obj, prop, func, - c000d248: e002 sd zero,0(sp) - c000d24a: e9043703 ld a4,-368(s0) - c000d24e: e9843783 ld a5,-360(s0) - c000d252: 1684b583 ld a1,360(s1) - c000d256: 1704b603 ld a2,368(s1) - c000d25a: 4801 li a6,0 - c000d25c: 488d li a7,3 - c000d25e: 8526 mv a0,s1 - c000d260: 682050ef jal ra,c00128e2 - c000d264: 00055463 bgez a0,c000d26c - c000d268: b72fe06f j c000b5da + c000d336: e002 sd zero,0(sp) + c000d338: e9043703 ld a4,-368(s0) + c000d33c: e9843783 ld a5,-360(s0) + c000d340: 1684b583 ld a1,360(s1) + c000d344: 1704b603 ld a2,368(s1) + c000d348: 4801 li a6,0 + c000d34a: 488d li a7,3 + c000d34c: 8526 mv a0,s1 + c000d34e: 682050ef jal ra,c00129d0 + c000d352: 00055463 bgez a0,c000d35a + c000d356: b72fe06f j c000b6c8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16934 JS_FreeValue(ctx, sp[-1]); - c000d26c: 000a3583 ld a1,0(s4) - c000d270: 008a3603 ld a2,8(s4) - c000d274: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16929 + c000d35a: 000a3583 ld a1,0(s4) + c000d35e: 008a3603 ld a2,8(s4) + c000d362: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16937 BREAK; - c000d276: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16926 + c000d364: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16934 JS_FreeValue(ctx, sp[-1]); - c000d278: 8c1fa0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16929 + c000d366: 8c1fa0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16937 BREAK; - c000d27c: 9fcfe06f j c000b478 + c000d36a: 9fcfe06f j c000b566 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c000d280: 078e slli a5,a5,0x3 - c000d282: 17e1 addi a5,a5,-8 - c000d284: 97b2 add a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c000d36e: 078e slli a5,a5,0x3 + c000d370: 17e1 addi a5,a5,-8 + c000d372: 97b2 add a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c000d286: 43c8 lw a0,4(a5) - c000d288: 439c lw a5,0(a5) - c000d28a: 00d51463 bne a0,a3,c000d292 - c000d28e: 5380406f j c00117c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c000d374: 43c8 lw a0,4(a5) + c000d376: 439c lw a5,0(a5) + c000d378: 00d51463 bne a0,a3,c000d380 + c000d37c: 5380406f j c00118b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c000d292: 8fed and a5,a5,a1 - c000d294: 1782 slli a5,a5,0x20 - c000d296: 9381 srli a5,a5,0x20 - c000d298: bf41 j c000d228 + c000d380: 8fed and a5,a5,a1 + c000d382: 1782 slli a5,a5,0x20 + c000d384: 9381 srli a5,a5,0x20 + c000d386: bf41 j c000d316 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000d29a: 002bc783 lbu a5,2(s7) - c000d29e: 001bc703 lbu a4,1(s7) + c000d388: 002bc783 lbu a5,2(s7) + c000d38c: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16943 pc += 2; - c000d2a2: 003b8913 addi s2,s7,3 + c000d390: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d2a6: 07a2 slli a5,a5,0x8 + c000d394: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16944 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000d2a8: 8fd9 or a5,a5,a4 - c000d2aa: 777d lui a4,0xfffff - c000d2ac: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d2b0: 9722 add a4,a4,s0 - c000d2b2: 6318 ld a4,0(a4) - c000d2b4: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16937 + c000d396: 8fd9 or a5,a5,a4 + c000d398: 777d lui a4,0xfffff + c000d39a: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d39e: 9722 add a4,a4,s0 + c000d3a0: 6318 ld a4,0(a4) + c000d3a2: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16945 sp++; - c000d2b6: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16936 + c000d3a4: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16944 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000d2b8: 97ba add a5,a5,a4 - c000d2ba: 6388 ld a0,0(a5) - c000d2bc: 678c ld a1,8(a5) - c000d2be: bb0f90ef jal ra,c000666e - c000d2c2: fead3823 sd a0,-16(s10) - c000d2c6: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16939 + c000d3a6: 97ba add a5,a5,a4 + c000d3a8: 6388 ld a0,0(a5) + c000d3aa: 678c ld a1,8(a5) + c000d3ac: bb0f90ef jal ra,c000675c + c000d3b0: fead3823 sd a0,-16(s10) + c000d3b4: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16947 BREAK; - c000d2ca: 9aefe06f j c000b478 + c000d3b8: 9aefe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d2ce: 002bc583 lbu a1,2(s7) - c000d2d2: 001bc783 lbu a5,1(s7) + c000d3bc: 002bc583 lbu a1,2(s7) + c000d3c0: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16945 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16953 set_value(ctx, &var_buf[idx], sp[-1]); - c000d2d6: ff0d3603 ld a2,-16(s10) + c000d3c4: ff0d3603 ld a2,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d2da: 05a2 slli a1,a1,0x8 + c000d3c8: 05a2 slli a1,a1,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16945 - c000d2dc: 8ddd or a1,a1,a5 - c000d2de: 77fd lui a5,0xfffff - c000d2e0: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d2e4: 97a2 add a5,a5,s0 - c000d2e6: 639c ld a5,0(a5) - c000d2e8: ff8d3683 ld a3,-8(s10) - c000d2ec: 0592 slli a1,a1,0x4 - c000d2ee: 95be add a1,a1,a5 - c000d2f0: 8526 mv a0,s1 - c000d2f2: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16944 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16953 + c000d3ca: 8ddd or a1,a1,a5 + c000d3cc: 77fd lui a5,0xfffff + c000d3ce: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d3d2: 97a2 add a5,a5,s0 + c000d3d4: 639c ld a5,0(a5) + c000d3d6: ff8d3683 ld a3,-8(s10) + c000d3da: 0592 slli a1,a1,0x4 + c000d3dc: 95be add a1,a1,a5 + c000d3de: 8526 mv a0,s1 + c000d3e0: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16952 pc += 2; - c000d2f4: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16945 + c000d3e2: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16953 set_value(ctx, &var_buf[idx], sp[-1]); - c000d2f8: c8bfa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16948 + c000d3e6: c8bfa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16956 BREAK; - c000d2fc: 97cfe06f j c000b478 + c000d3ea: 97cfe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d300: 002bca03 lbu s4,2(s7) - c000d304: 001bc783 lbu a5,1(s7) + c000d3ee: 002bca03 lbu s4,2(s7) + c000d3f2: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16962 set_value(ctx, &var_buf[idx], JS_DupValue(ctx, sp[-1])); - c000d308: ff0d3503 ld a0,-16(s10) + c000d3f6: ff0d3503 ld a0,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d30c: 0a22 slli s4,s4,0x8 + c000d3fa: 0a22 slli s4,s4,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16954 - c000d30e: 00fa6a33 or s4,s4,a5 - c000d312: 77fd lui a5,0xfffff - c000d314: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d318: 97a2 add a5,a5,s0 - c000d31a: 639c ld a5,0(a5) - c000d31c: ff8d3583 ld a1,-8(s10) - c000d320: 0a12 slli s4,s4,0x4 - c000d322: 9a3e add s4,s4,a5 - c000d324: b4af90ef jal ra,c000666e - c000d328: f8040793 addi a5,s0,-128 - c000d32c: 97ce add a5,a5,s3 - c000d32e: 862a mv a2,a0 - c000d330: 86ae mv a3,a1 - c000d332: 76a7b023 sd a0,1888(a5) - c000d336: 76b7b423 sd a1,1896(a5) - c000d33a: 8526 mv a0,s1 - c000d33c: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16953 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16962 + c000d3fc: 00fa6a33 or s4,s4,a5 + c000d400: 77fd lui a5,0xfffff + c000d402: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d406: 97a2 add a5,a5,s0 + c000d408: 639c ld a5,0(a5) + c000d40a: ff8d3583 ld a1,-8(s10) + c000d40e: 0a12 slli s4,s4,0x4 + c000d410: 9a3e add s4,s4,a5 + c000d412: b4af90ef jal ra,c000675c + c000d416: f8040793 addi a5,s0,-128 + c000d41a: 97ce add a5,a5,s3 + c000d41c: 862a mv a2,a0 + c000d41e: 86ae mv a3,a1 + c000d420: 76a7b023 sd a0,1888(a5) + c000d424: 76b7b423 sd a1,1896(a5) + c000d428: 8526 mv a0,s1 + c000d42a: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16961 pc += 2; - c000d33e: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16954 + c000d42c: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16962 set_value(ctx, &var_buf[idx], JS_DupValue(ctx, sp[-1])); - c000d342: c41fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16956 + c000d430: c41fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16964 BREAK; - c000d346: 932fe06f j c000b478 + c000d434: 932fe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d34a: 002bc783 lbu a5,2(s7) - c000d34e: 001bc703 lbu a4,1(s7) + c000d438: 002bc783 lbu a5,2(s7) + c000d43c: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16961 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16969 pc += 2; - c000d352: 003b8913 addi s2,s7,3 + c000d440: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d356: 07a2 slli a5,a5,0x8 + c000d444: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16970 sp[0] = JS_DupValue(ctx, arg_buf[idx]); - c000d358: 8fd9 or a5,a5,a4 - c000d35a: 777d lui a4,0xfffff - c000d35c: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d360: 9722 add a4,a4,s0 - c000d362: 6318 ld a4,0(a4) - c000d364: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16963 + c000d446: 8fd9 or a5,a5,a4 + c000d448: 777d lui a4,0xfffff + c000d44a: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d44e: 9722 add a4,a4,s0 + c000d450: 6318 ld a4,0(a4) + c000d452: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16971 sp++; - c000d366: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16962 + c000d454: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16970 sp[0] = JS_DupValue(ctx, arg_buf[idx]); - c000d368: 97ba add a5,a5,a4 - c000d36a: 6388 ld a0,0(a5) - c000d36c: 678c ld a1,8(a5) - c000d36e: b00f90ef jal ra,c000666e - c000d372: fead3823 sd a0,-16(s10) - c000d376: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16965 + c000d456: 97ba add a5,a5,a4 + c000d458: 6388 ld a0,0(a5) + c000d45a: 678c ld a1,8(a5) + c000d45c: b00f90ef jal ra,c000675c + c000d460: fead3823 sd a0,-16(s10) + c000d464: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16973 BREAK; - c000d37a: 8fefe06f j c000b478 + c000d468: 8fefe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d37e: 002bc583 lbu a1,2(s7) - c000d382: 001bc783 lbu a5,1(s7) + c000d46c: 002bc583 lbu a1,2(s7) + c000d470: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16971 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16979 set_value(ctx, &arg_buf[idx], sp[-1]); - c000d386: ff0d3603 ld a2,-16(s10) + c000d474: ff0d3603 ld a2,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d38a: 05a2 slli a1,a1,0x8 + c000d478: 05a2 slli a1,a1,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16971 - c000d38c: 8ddd or a1,a1,a5 - c000d38e: 77fd lui a5,0xfffff - c000d390: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d394: 97a2 add a5,a5,s0 - c000d396: 639c ld a5,0(a5) - c000d398: ff8d3683 ld a3,-8(s10) - c000d39c: 0592 slli a1,a1,0x4 - c000d39e: 95be add a1,a1,a5 - c000d3a0: 8526 mv a0,s1 - c000d3a2: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16979 + c000d47a: 8ddd or a1,a1,a5 + c000d47c: 77fd lui a5,0xfffff + c000d47e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d482: 97a2 add a5,a5,s0 + c000d484: 639c ld a5,0(a5) + c000d486: ff8d3683 ld a3,-8(s10) + c000d48a: 0592 slli a1,a1,0x4 + c000d48c: 95be add a1,a1,a5 + c000d48e: 8526 mv a0,s1 + c000d490: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16978 pc += 2; - c000d3a4: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16971 + c000d492: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16979 set_value(ctx, &arg_buf[idx], sp[-1]); - c000d3a8: bdbfa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16974 + c000d496: bdbfa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16982 BREAK; - c000d3ac: 8ccfe06f j c000b478 + c000d49a: 8ccfe06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d3b0: 002bca03 lbu s4,2(s7) - c000d3b4: 001bc783 lbu a5,1(s7) + c000d49e: 002bca03 lbu s4,2(s7) + c000d4a2: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16980 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16988 set_value(ctx, &arg_buf[idx], JS_DupValue(ctx, sp[-1])); - c000d3b8: ff0d3503 ld a0,-16(s10) + c000d4a6: ff0d3503 ld a0,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000d3bc: 0a22 slli s4,s4,0x8 + c000d4aa: 0a22 slli s4,s4,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16980 - c000d3be: 00fa6a33 or s4,s4,a5 - c000d3c2: 77fd lui a5,0xfffff - c000d3c4: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d3c8: 97a2 add a5,a5,s0 - c000d3ca: 639c ld a5,0(a5) - c000d3cc: ff8d3583 ld a1,-8(s10) - c000d3d0: 0a12 slli s4,s4,0x4 - c000d3d2: 9a3e add s4,s4,a5 - c000d3d4: a9af90ef jal ra,c000666e - c000d3d8: f8040793 addi a5,s0,-128 - c000d3dc: 97ce add a5,a5,s3 - c000d3de: 862a mv a2,a0 - c000d3e0: 86ae mv a3,a1 - c000d3e2: 76a7b823 sd a0,1904(a5) - c000d3e6: 76b7bc23 sd a1,1912(a5) - c000d3ea: 8526 mv a0,s1 - c000d3ec: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16979 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16988 + c000d4ac: 00fa6a33 or s4,s4,a5 + c000d4b0: 77fd lui a5,0xfffff + c000d4b2: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d4b6: 97a2 add a5,a5,s0 + c000d4b8: 639c ld a5,0(a5) + c000d4ba: ff8d3583 ld a1,-8(s10) + c000d4be: 0a12 slli s4,s4,0x4 + c000d4c0: 9a3e add s4,s4,a5 + c000d4c2: a9af90ef jal ra,c000675c + c000d4c6: f8040793 addi a5,s0,-128 + c000d4ca: 97ce add a5,a5,s3 + c000d4cc: 862a mv a2,a0 + c000d4ce: 86ae mv a3,a1 + c000d4d0: 76a7b823 sd a0,1904(a5) + c000d4d4: 76b7bc23 sd a1,1912(a5) + c000d4d8: 8526 mv a0,s1 + c000d4da: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16987 pc += 2; - c000d3ee: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16980 + c000d4dc: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16988 set_value(ctx, &arg_buf[idx], JS_DupValue(ctx, sp[-1])); - c000d3f2: b91fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16982 + c000d4e0: b91fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16990 BREAK; - c000d3f6: 882fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16985 + c000d4e4: 882fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16993 CASE(OP_get_loc8): *sp++ = JS_DupValue(ctx, var_buf[*pc++]); BREAK; - c000d3fa: 777d lui a4,0xfffff - c000d3fc: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d400: 001bc783 lbu a5,1(s7) - c000d404: 9722 add a4,a4,s0 - c000d406: 6318 ld a4,0(a4) - c000d408: 0792 slli a5,a5,0x4 - c000d40a: 010d0a13 addi s4,s10,16 - c000d40e: 97ba add a5,a5,a4 - c000d410: 6388 ld a0,0(a5) - c000d412: 678c ld a1,8(a5) - c000d414: 002b8913 addi s2,s7,2 - c000d418: a56f90ef jal ra,c000666e - c000d41c: 00ad3023 sd a0,0(s10) - c000d420: 00bd3423 sd a1,8(s10) - c000d424: 8d52 mv s10,s4 - c000d426: 852fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16986 + c000d4e8: 777d lui a4,0xfffff + c000d4ea: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d4ee: 001bc783 lbu a5,1(s7) + c000d4f2: 9722 add a4,a4,s0 + c000d4f4: 6318 ld a4,0(a4) + c000d4f6: 0792 slli a5,a5,0x4 + c000d4f8: 010d0a13 addi s4,s10,16 + c000d4fc: 97ba add a5,a5,a4 + c000d4fe: 6388 ld a0,0(a5) + c000d500: 678c ld a1,8(a5) + c000d502: 002b8913 addi s2,s7,2 + c000d506: a56f90ef jal ra,c000675c + c000d50a: 00ad3023 sd a0,0(s10) + c000d50e: 00bd3423 sd a1,8(s10) + c000d512: 8d52 mv s10,s4 + c000d514: 852fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16994 CASE(OP_put_loc8): set_value(ctx, &var_buf[*pc++], *--sp); BREAK; - c000d42a: 77fd lui a5,0xfffff - c000d42c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d430: 001bc583 lbu a1,1(s7) - c000d434: 97a2 add a5,a5,s0 - c000d436: 639c ld a5,0(a5) - c000d438: ff0d3603 ld a2,-16(s10) - c000d43c: ff8d3683 ld a3,-8(s10) - c000d440: 0592 slli a1,a1,0x4 - c000d442: 95be add a1,a1,a5 - c000d444: 8526 mv a0,s1 - c000d446: 1d41 addi s10,s10,-16 - c000d448: 002b8913 addi s2,s7,2 - c000d44c: b37fa0ef jal ra,c0007f82 - c000d450: 828fe06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16987 + c000d518: 77fd lui a5,0xfffff + c000d51a: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d51e: 001bc583 lbu a1,1(s7) + c000d522: 97a2 add a5,a5,s0 + c000d524: 639c ld a5,0(a5) + c000d526: ff0d3603 ld a2,-16(s10) + c000d52a: ff8d3683 ld a3,-8(s10) + c000d52e: 0592 slli a1,a1,0x4 + c000d530: 95be add a1,a1,a5 + c000d532: 8526 mv a0,s1 + c000d534: 1d41 addi s10,s10,-16 + c000d536: 002b8913 addi s2,s7,2 + c000d53a: b37fa0ef jal ra,c0008070 + c000d53e: 828fe06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16995 CASE(OP_set_loc8): set_value(ctx, &var_buf[*pc++], JS_DupValue(ctx, sp[-1])); BREAK; - c000d454: 77fd lui a5,0xfffff - c000d456: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d45a: 001bca03 lbu s4,1(s7) - c000d45e: 97a2 add a5,a5,s0 - c000d460: 639c ld a5,0(a5) - c000d462: ff0d3503 ld a0,-16(s10) - c000d466: ff8d3583 ld a1,-8(s10) - c000d46a: 0a12 slli s4,s4,0x4 - c000d46c: 9a3e add s4,s4,a5 - c000d46e: a00f90ef jal ra,c000666e - c000d472: f8040793 addi a5,s0,-128 - c000d476: 97ce add a5,a5,s3 - c000d478: 862a mv a2,a0 - c000d47a: 86ae mv a3,a1 - c000d47c: 78a7b023 sd a0,1920(a5) - c000d480: 78b7b423 sd a1,1928(a5) - c000d484: 8526 mv a0,s1 - c000d486: 85d2 mv a1,s4 - c000d488: 002b8913 addi s2,s7,2 - c000d48c: af7fa0ef jal ra,c0007f82 - c000d490: fe9fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16989 + c000d542: 77fd lui a5,0xfffff + c000d544: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d548: 001bca03 lbu s4,1(s7) + c000d54c: 97a2 add a5,a5,s0 + c000d54e: 639c ld a5,0(a5) + c000d550: ff0d3503 ld a0,-16(s10) + c000d554: ff8d3583 ld a1,-8(s10) + c000d558: 0a12 slli s4,s4,0x4 + c000d55a: 9a3e add s4,s4,a5 + c000d55c: a00f90ef jal ra,c000675c + c000d560: f8040793 addi a5,s0,-128 + c000d564: 97ce add a5,a5,s3 + c000d566: 862a mv a2,a0 + c000d568: 86ae mv a3,a1 + c000d56a: 78a7b023 sd a0,1920(a5) + c000d56e: 78b7b423 sd a1,1928(a5) + c000d572: 8526 mv a0,s1 + c000d574: 85d2 mv a1,s4 + c000d576: 002b8913 addi s2,s7,2 + c000d57a: af7fa0ef jal ra,c0008070 + c000d57e: fe9fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16997 CASE(OP_get_loc0): *sp++ = JS_DupValue(ctx, var_buf[0]); BREAK; - c000d494: 77fd lui a5,0xfffff - c000d496: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d49a: 97a2 add a5,a5,s0 - c000d49c: 639c ld a5,0(a5) - c000d49e: 010d0a13 addi s4,s10,16 - c000d4a2: 6388 ld a0,0(a5) - c000d4a4: 77fd lui a5,0xfffff - c000d4a6: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d4aa: 97a2 add a5,a5,s0 - c000d4ac: 639c ld a5,0(a5) - c000d4ae: 678c ld a1,8(a5) - c000d4b0: 9bef90ef jal ra,c000666e - c000d4b4: 00ad3023 sd a0,0(s10) - c000d4b8: 00bd3423 sd a1,8(s10) - c000d4bc: 8d52 mv s10,s4 - c000d4be: fbbfd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16990 + c000d582: 77fd lui a5,0xfffff + c000d584: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d588: 97a2 add a5,a5,s0 + c000d58a: 639c ld a5,0(a5) + c000d58c: 010d0a13 addi s4,s10,16 + c000d590: 6388 ld a0,0(a5) + c000d592: 77fd lui a5,0xfffff + c000d594: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d598: 97a2 add a5,a5,s0 + c000d59a: 639c ld a5,0(a5) + c000d59c: 678c ld a1,8(a5) + c000d59e: 9bef90ef jal ra,c000675c + c000d5a2: 00ad3023 sd a0,0(s10) + c000d5a6: 00bd3423 sd a1,8(s10) + c000d5aa: 8d52 mv s10,s4 + c000d5ac: fbbfd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16998 CASE(OP_get_loc1): *sp++ = JS_DupValue(ctx, var_buf[1]); BREAK; - c000d4c2: 77fd lui a5,0xfffff - c000d4c4: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d4c8: 97a2 add a5,a5,s0 - c000d4ca: 639c ld a5,0(a5) - c000d4cc: 010d0a13 addi s4,s10,16 - c000d4d0: 6b88 ld a0,16(a5) - c000d4d2: 77fd lui a5,0xfffff - c000d4d4: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d4d8: 97a2 add a5,a5,s0 - c000d4da: 639c ld a5,0(a5) - c000d4dc: 6f8c ld a1,24(a5) - c000d4de: 990f90ef jal ra,c000666e - c000d4e2: 00ad3023 sd a0,0(s10) - c000d4e6: 00bd3423 sd a1,8(s10) - c000d4ea: 8d52 mv s10,s4 - c000d4ec: f8dfd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16991 + c000d5b0: 77fd lui a5,0xfffff + c000d5b2: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d5b6: 97a2 add a5,a5,s0 + c000d5b8: 639c ld a5,0(a5) + c000d5ba: 010d0a13 addi s4,s10,16 + c000d5be: 6b88 ld a0,16(a5) + c000d5c0: 77fd lui a5,0xfffff + c000d5c2: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d5c6: 97a2 add a5,a5,s0 + c000d5c8: 639c ld a5,0(a5) + c000d5ca: 6f8c ld a1,24(a5) + c000d5cc: 990f90ef jal ra,c000675c + c000d5d0: 00ad3023 sd a0,0(s10) + c000d5d4: 00bd3423 sd a1,8(s10) + c000d5d8: 8d52 mv s10,s4 + c000d5da: f8dfd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16999 CASE(OP_get_loc2): *sp++ = JS_DupValue(ctx, var_buf[2]); BREAK; - c000d4f0: 77fd lui a5,0xfffff - c000d4f2: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d4f6: 97a2 add a5,a5,s0 - c000d4f8: 639c ld a5,0(a5) - c000d4fa: 010d0a13 addi s4,s10,16 - c000d4fe: 7388 ld a0,32(a5) - c000d500: 77fd lui a5,0xfffff - c000d502: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d506: 97a2 add a5,a5,s0 - c000d508: 639c ld a5,0(a5) - c000d50a: 778c ld a1,40(a5) - c000d50c: 962f90ef jal ra,c000666e - c000d510: 00ad3023 sd a0,0(s10) - c000d514: 00bd3423 sd a1,8(s10) - c000d518: 8d52 mv s10,s4 - c000d51a: f5ffd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16992 + c000d5de: 77fd lui a5,0xfffff + c000d5e0: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d5e4: 97a2 add a5,a5,s0 + c000d5e6: 639c ld a5,0(a5) + c000d5e8: 010d0a13 addi s4,s10,16 + c000d5ec: 7388 ld a0,32(a5) + c000d5ee: 77fd lui a5,0xfffff + c000d5f0: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d5f4: 97a2 add a5,a5,s0 + c000d5f6: 639c ld a5,0(a5) + c000d5f8: 778c ld a1,40(a5) + c000d5fa: 962f90ef jal ra,c000675c + c000d5fe: 00ad3023 sd a0,0(s10) + c000d602: 00bd3423 sd a1,8(s10) + c000d606: 8d52 mv s10,s4 + c000d608: f5ffd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17000 CASE(OP_get_loc3): *sp++ = JS_DupValue(ctx, var_buf[3]); BREAK; - c000d51e: 77fd lui a5,0xfffff - c000d520: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d524: 97a2 add a5,a5,s0 - c000d526: 639c ld a5,0(a5) - c000d528: 010d0a13 addi s4,s10,16 - c000d52c: 7b88 ld a0,48(a5) - c000d52e: 77fd lui a5,0xfffff - c000d530: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d534: 97a2 add a5,a5,s0 - c000d536: 639c ld a5,0(a5) - c000d538: 7f8c ld a1,56(a5) - c000d53a: 934f90ef jal ra,c000666e - c000d53e: 00ad3023 sd a0,0(s10) - c000d542: 00bd3423 sd a1,8(s10) - c000d546: 8d52 mv s10,s4 - c000d548: f31fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16993 - CASE(OP_put_loc0): set_value(ctx, &var_buf[0], *--sp); BREAK; - c000d54c: 77fd lui a5,0xfffff - c000d54e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d552: 97a2 add a5,a5,s0 - c000d554: 638c ld a1,0(a5) - c000d556: ff0d3603 ld a2,-16(s10) - c000d55a: ff8d3683 ld a3,-8(s10) - c000d55e: 8526 mv a0,s1 - c000d560: 1d41 addi s10,s10,-16 - c000d562: a21fa0ef jal ra,c0007f82 - c000d566: f13fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16994 - CASE(OP_put_loc1): set_value(ctx, &var_buf[1], *--sp); BREAK; - c000d56a: 77fd lui a5,0xfffff - c000d56c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d570: 97a2 add a5,a5,s0 - c000d572: 639c ld a5,0(a5) - c000d574: ff0d3603 ld a2,-16(s10) - c000d578: ff8d3683 ld a3,-8(s10) - c000d57c: 01078593 addi a1,a5,16 - c000d580: 8526 mv a0,s1 - c000d582: 1d41 addi s10,s10,-16 - c000d584: 9fffa0ef jal ra,c0007f82 - c000d588: ef1fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16995 - CASE(OP_put_loc2): set_value(ctx, &var_buf[2], *--sp); BREAK; - c000d58c: 77fd lui a5,0xfffff - c000d58e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d592: 97a2 add a5,a5,s0 - c000d594: 639c ld a5,0(a5) - c000d596: ff0d3603 ld a2,-16(s10) - c000d59a: ff8d3683 ld a3,-8(s10) - c000d59e: 02078593 addi a1,a5,32 - c000d5a2: 8526 mv a0,s1 - c000d5a4: 1d41 addi s10,s10,-16 - c000d5a6: 9ddfa0ef jal ra,c0007f82 - c000d5aa: ecffd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16996 - CASE(OP_put_loc3): set_value(ctx, &var_buf[3], *--sp); BREAK; - c000d5ae: 77fd lui a5,0xfffff - c000d5b0: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d5b4: 97a2 add a5,a5,s0 - c000d5b6: 639c ld a5,0(a5) - c000d5b8: ff0d3603 ld a2,-16(s10) - c000d5bc: ff8d3683 ld a3,-8(s10) - c000d5c0: 03078593 addi a1,a5,48 - c000d5c4: 8526 mv a0,s1 - c000d5c6: 1d41 addi s10,s10,-16 - c000d5c8: 9bbfa0ef jal ra,c0007f82 - c000d5cc: eadfd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16997 - CASE(OP_set_loc0): set_value(ctx, &var_buf[0], JS_DupValue(ctx, sp[-1])); BREAK; - c000d5d0: ff0d3503 ld a0,-16(s10) - c000d5d4: ff8d3583 ld a1,-8(s10) - c000d5d8: 896f90ef jal ra,c000666e - c000d5dc: f8040793 addi a5,s0,-128 - c000d5e0: 97ce add a5,a5,s3 - c000d5e2: 78a7b823 sd a0,1936(a5) - c000d5e6: 78b7bc23 sd a1,1944(a5) - c000d5ea: 77fd lui a5,0xfffff - c000d5ec: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d5f0: 97a2 add a5,a5,s0 - c000d5f2: 86ae mv a3,a1 - c000d5f4: 638c ld a1,0(a5) - c000d5f6: 862a mv a2,a0 - c000d5f8: 8526 mv a0,s1 - c000d5fa: 989fa0ef jal ra,c0007f82 - c000d5fe: e7bfd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16998 - CASE(OP_set_loc1): set_value(ctx, &var_buf[1], JS_DupValue(ctx, sp[-1])); BREAK; - c000d602: ff0d3503 ld a0,-16(s10) - c000d606: ff8d3583 ld a1,-8(s10) - c000d60a: 864f90ef jal ra,c000666e - c000d60e: f8040793 addi a5,s0,-128 - c000d612: 97ce add a5,a5,s3 - c000d614: 7aa7b023 sd a0,1952(a5) - c000d618: 7ab7b423 sd a1,1960(a5) + c000d60c: 77fd lui a5,0xfffff + c000d60e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d612: 97a2 add a5,a5,s0 + c000d614: 639c ld a5,0(a5) + c000d616: 010d0a13 addi s4,s10,16 + c000d61a: 7b88 ld a0,48(a5) c000d61c: 77fd lui a5,0xfffff c000d61e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> c000d622: 97a2 add a5,a5,s0 c000d624: 639c ld a5,0(a5) - c000d626: 862a mv a2,a0 - c000d628: 86ae mv a3,a1 - c000d62a: 8526 mv a0,s1 - c000d62c: 01078593 addi a1,a5,16 - c000d630: 953fa0ef jal ra,c0007f82 - c000d634: e45fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16999 - CASE(OP_set_loc2): set_value(ctx, &var_buf[2], JS_DupValue(ctx, sp[-1])); BREAK; - c000d638: ff0d3503 ld a0,-16(s10) - c000d63c: ff8d3583 ld a1,-8(s10) - c000d640: 82ef90ef jal ra,c000666e - c000d644: f8040793 addi a5,s0,-128 - c000d648: 97ce add a5,a5,s3 - c000d64a: 7aa7b823 sd a0,1968(a5) - c000d64e: 7ab7bc23 sd a1,1976(a5) - c000d652: 77fd lui a5,0xfffff - c000d654: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d658: 97a2 add a5,a5,s0 - c000d65a: 639c ld a5,0(a5) - c000d65c: 862a mv a2,a0 - c000d65e: 86ae mv a3,a1 - c000d660: 8526 mv a0,s1 - c000d662: 02078593 addi a1,a5,32 - c000d666: 91dfa0ef jal ra,c0007f82 - c000d66a: e0ffd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17000 - CASE(OP_set_loc3): set_value(ctx, &var_buf[3], JS_DupValue(ctx, sp[-1])); BREAK; - c000d66e: ff0d3503 ld a0,-16(s10) - c000d672: ff8d3583 ld a1,-8(s10) - c000d676: ff9f80ef jal ra,c000666e - c000d67a: f8040793 addi a5,s0,-128 - c000d67e: 97ce add a5,a5,s3 - c000d680: 7ca7b023 sd a0,1984(a5) - c000d684: 7cb7b423 sd a1,1992(a5) - c000d688: 77fd lui a5,0xfffff - c000d68a: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000d68e: 97a2 add a5,a5,s0 - c000d690: 639c ld a5,0(a5) - c000d692: 862a mv a2,a0 - c000d694: 86ae mv a3,a1 - c000d696: 8526 mv a0,s1 - c000d698: 03078593 addi a1,a5,48 - c000d69c: 8e7fa0ef jal ra,c0007f82 - c000d6a0: dd9fd06f j c000b478 + c000d626: 7f8c ld a1,56(a5) + c000d628: 934f90ef jal ra,c000675c + c000d62c: 00ad3023 sd a0,0(s10) + c000d630: 00bd3423 sd a1,8(s10) + c000d634: 8d52 mv s10,s4 + c000d636: f31fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17001 - CASE(OP_get_arg0): *sp++ = JS_DupValue(ctx, arg_buf[0]); BREAK; - c000d6a4: 77fd lui a5,0xfffff - c000d6a6: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d6aa: 97a2 add a5,a5,s0 - c000d6ac: 639c ld a5,0(a5) - c000d6ae: 010d0a13 addi s4,s10,16 - c000d6b2: 6388 ld a0,0(a5) - c000d6b4: 77fd lui a5,0xfffff - c000d6b6: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d6ba: 97a2 add a5,a5,s0 - c000d6bc: 639c ld a5,0(a5) - c000d6be: 678c ld a1,8(a5) - c000d6c0: faff80ef jal ra,c000666e - c000d6c4: 00ad3023 sd a0,0(s10) - c000d6c8: 00bd3423 sd a1,8(s10) - c000d6cc: 8d52 mv s10,s4 - c000d6ce: dabfd06f j c000b478 + CASE(OP_put_loc0): set_value(ctx, &var_buf[0], *--sp); BREAK; + c000d63a: 77fd lui a5,0xfffff + c000d63c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d640: 97a2 add a5,a5,s0 + c000d642: 638c ld a1,0(a5) + c000d644: ff0d3603 ld a2,-16(s10) + c000d648: ff8d3683 ld a3,-8(s10) + c000d64c: 8526 mv a0,s1 + c000d64e: 1d41 addi s10,s10,-16 + c000d650: a21fa0ef jal ra,c0008070 + c000d654: f13fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17002 - CASE(OP_get_arg1): *sp++ = JS_DupValue(ctx, arg_buf[1]); BREAK; - c000d6d2: 77fd lui a5,0xfffff - c000d6d4: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d6d8: 97a2 add a5,a5,s0 - c000d6da: 639c ld a5,0(a5) - c000d6dc: 010d0a13 addi s4,s10,16 - c000d6e0: 6b88 ld a0,16(a5) - c000d6e2: 77fd lui a5,0xfffff - c000d6e4: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d6e8: 97a2 add a5,a5,s0 - c000d6ea: 639c ld a5,0(a5) - c000d6ec: 6f8c ld a1,24(a5) - c000d6ee: f81f80ef jal ra,c000666e - c000d6f2: 00ad3023 sd a0,0(s10) - c000d6f6: 00bd3423 sd a1,8(s10) - c000d6fa: 8d52 mv s10,s4 - c000d6fc: d7dfd06f j c000b478 + CASE(OP_put_loc1): set_value(ctx, &var_buf[1], *--sp); BREAK; + c000d658: 77fd lui a5,0xfffff + c000d65a: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d65e: 97a2 add a5,a5,s0 + c000d660: 639c ld a5,0(a5) + c000d662: ff0d3603 ld a2,-16(s10) + c000d666: ff8d3683 ld a3,-8(s10) + c000d66a: 01078593 addi a1,a5,16 + c000d66e: 8526 mv a0,s1 + c000d670: 1d41 addi s10,s10,-16 + c000d672: 9fffa0ef jal ra,c0008070 + c000d676: ef1fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17003 - CASE(OP_get_arg2): *sp++ = JS_DupValue(ctx, arg_buf[2]); BREAK; - c000d700: 77fd lui a5,0xfffff - c000d702: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d706: 97a2 add a5,a5,s0 - c000d708: 639c ld a5,0(a5) - c000d70a: 010d0a13 addi s4,s10,16 - c000d70e: 7388 ld a0,32(a5) - c000d710: 77fd lui a5,0xfffff - c000d712: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d716: 97a2 add a5,a5,s0 - c000d718: 639c ld a5,0(a5) - c000d71a: 778c ld a1,40(a5) - c000d71c: f53f80ef jal ra,c000666e - c000d720: 00ad3023 sd a0,0(s10) - c000d724: 00bd3423 sd a1,8(s10) - c000d728: 8d52 mv s10,s4 - c000d72a: d4ffd06f j c000b478 + CASE(OP_put_loc2): set_value(ctx, &var_buf[2], *--sp); BREAK; + c000d67a: 77fd lui a5,0xfffff + c000d67c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d680: 97a2 add a5,a5,s0 + c000d682: 639c ld a5,0(a5) + c000d684: ff0d3603 ld a2,-16(s10) + c000d688: ff8d3683 ld a3,-8(s10) + c000d68c: 02078593 addi a1,a5,32 + c000d690: 8526 mv a0,s1 + c000d692: 1d41 addi s10,s10,-16 + c000d694: 9ddfa0ef jal ra,c0008070 + c000d698: ecffd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17004 - CASE(OP_get_arg3): *sp++ = JS_DupValue(ctx, arg_buf[3]); BREAK; - c000d72e: 77fd lui a5,0xfffff - c000d730: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d734: 97a2 add a5,a5,s0 - c000d736: 639c ld a5,0(a5) - c000d738: 010d0a13 addi s4,s10,16 - c000d73c: 7b88 ld a0,48(a5) - c000d73e: 77fd lui a5,0xfffff - c000d740: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d744: 97a2 add a5,a5,s0 - c000d746: 639c ld a5,0(a5) - c000d748: 7f8c ld a1,56(a5) - c000d74a: f25f80ef jal ra,c000666e - c000d74e: 00ad3023 sd a0,0(s10) - c000d752: 00bd3423 sd a1,8(s10) - c000d756: 8d52 mv s10,s4 - c000d758: d21fd06f j c000b478 + CASE(OP_put_loc3): set_value(ctx, &var_buf[3], *--sp); BREAK; + c000d69c: 77fd lui a5,0xfffff + c000d69e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d6a2: 97a2 add a5,a5,s0 + c000d6a4: 639c ld a5,0(a5) + c000d6a6: ff0d3603 ld a2,-16(s10) + c000d6aa: ff8d3683 ld a3,-8(s10) + c000d6ae: 03078593 addi a1,a5,48 + c000d6b2: 8526 mv a0,s1 + c000d6b4: 1d41 addi s10,s10,-16 + c000d6b6: 9bbfa0ef jal ra,c0008070 + c000d6ba: eadfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17005 - CASE(OP_put_arg0): set_value(ctx, &arg_buf[0], *--sp); BREAK; - c000d75c: 77fd lui a5,0xfffff - c000d75e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d762: 97a2 add a5,a5,s0 - c000d764: 638c ld a1,0(a5) - c000d766: ff0d3603 ld a2,-16(s10) - c000d76a: ff8d3683 ld a3,-8(s10) - c000d76e: 8526 mv a0,s1 - c000d770: 1d41 addi s10,s10,-16 - c000d772: 811fa0ef jal ra,c0007f82 - c000d776: d03fd06f j c000b478 + CASE(OP_set_loc0): set_value(ctx, &var_buf[0], JS_DupValue(ctx, sp[-1])); BREAK; + c000d6be: ff0d3503 ld a0,-16(s10) + c000d6c2: ff8d3583 ld a1,-8(s10) + c000d6c6: 896f90ef jal ra,c000675c + c000d6ca: f8040793 addi a5,s0,-128 + c000d6ce: 97ce add a5,a5,s3 + c000d6d0: 78a7b823 sd a0,1936(a5) + c000d6d4: 78b7bc23 sd a1,1944(a5) + c000d6d8: 77fd lui a5,0xfffff + c000d6da: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d6de: 97a2 add a5,a5,s0 + c000d6e0: 86ae mv a3,a1 + c000d6e2: 638c ld a1,0(a5) + c000d6e4: 862a mv a2,a0 + c000d6e6: 8526 mv a0,s1 + c000d6e8: 989fa0ef jal ra,c0008070 + c000d6ec: e7bfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17006 - CASE(OP_put_arg1): set_value(ctx, &arg_buf[1], *--sp); BREAK; - c000d77a: 77fd lui a5,0xfffff - c000d77c: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d780: 97a2 add a5,a5,s0 - c000d782: 639c ld a5,0(a5) - c000d784: ff0d3603 ld a2,-16(s10) - c000d788: ff8d3683 ld a3,-8(s10) - c000d78c: 01078593 addi a1,a5,16 - c000d790: 8526 mv a0,s1 - c000d792: 1d41 addi s10,s10,-16 - c000d794: feefa0ef jal ra,c0007f82 - c000d798: ce1fd06f j c000b478 + CASE(OP_set_loc1): set_value(ctx, &var_buf[1], JS_DupValue(ctx, sp[-1])); BREAK; + c000d6f0: ff0d3503 ld a0,-16(s10) + c000d6f4: ff8d3583 ld a1,-8(s10) + c000d6f8: 864f90ef jal ra,c000675c + c000d6fc: f8040793 addi a5,s0,-128 + c000d700: 97ce add a5,a5,s3 + c000d702: 7aa7b023 sd a0,1952(a5) + c000d706: 7ab7b423 sd a1,1960(a5) + c000d70a: 77fd lui a5,0xfffff + c000d70c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d710: 97a2 add a5,a5,s0 + c000d712: 639c ld a5,0(a5) + c000d714: 862a mv a2,a0 + c000d716: 86ae mv a3,a1 + c000d718: 8526 mv a0,s1 + c000d71a: 01078593 addi a1,a5,16 + c000d71e: 953fa0ef jal ra,c0008070 + c000d722: e45fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17007 - CASE(OP_put_arg2): set_value(ctx, &arg_buf[2], *--sp); BREAK; - c000d79c: 77fd lui a5,0xfffff - c000d79e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d7a2: 97a2 add a5,a5,s0 - c000d7a4: 639c ld a5,0(a5) - c000d7a6: ff0d3603 ld a2,-16(s10) - c000d7aa: ff8d3683 ld a3,-8(s10) - c000d7ae: 02078593 addi a1,a5,32 - c000d7b2: 8526 mv a0,s1 - c000d7b4: 1d41 addi s10,s10,-16 - c000d7b6: fccfa0ef jal ra,c0007f82 - c000d7ba: cbffd06f j c000b478 + CASE(OP_set_loc2): set_value(ctx, &var_buf[2], JS_DupValue(ctx, sp[-1])); BREAK; + c000d726: ff0d3503 ld a0,-16(s10) + c000d72a: ff8d3583 ld a1,-8(s10) + c000d72e: 82ef90ef jal ra,c000675c + c000d732: f8040793 addi a5,s0,-128 + c000d736: 97ce add a5,a5,s3 + c000d738: 7aa7b823 sd a0,1968(a5) + c000d73c: 7ab7bc23 sd a1,1976(a5) + c000d740: 77fd lui a5,0xfffff + c000d742: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d746: 97a2 add a5,a5,s0 + c000d748: 639c ld a5,0(a5) + c000d74a: 862a mv a2,a0 + c000d74c: 86ae mv a3,a1 + c000d74e: 8526 mv a0,s1 + c000d750: 02078593 addi a1,a5,32 + c000d754: 91dfa0ef jal ra,c0008070 + c000d758: e0ffd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17008 - CASE(OP_put_arg3): set_value(ctx, &arg_buf[3], *--sp); BREAK; - c000d7be: 77fd lui a5,0xfffff - c000d7c0: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d7c4: 97a2 add a5,a5,s0 - c000d7c6: 639c ld a5,0(a5) - c000d7c8: ff0d3603 ld a2,-16(s10) - c000d7cc: ff8d3683 ld a3,-8(s10) - c000d7d0: 03078593 addi a1,a5,48 - c000d7d4: 8526 mv a0,s1 - c000d7d6: 1d41 addi s10,s10,-16 - c000d7d8: faafa0ef jal ra,c0007f82 - c000d7dc: c9dfd06f j c000b478 + CASE(OP_set_loc3): set_value(ctx, &var_buf[3], JS_DupValue(ctx, sp[-1])); BREAK; + c000d75c: ff0d3503 ld a0,-16(s10) + c000d760: ff8d3583 ld a1,-8(s10) + c000d764: ff9f80ef jal ra,c000675c + c000d768: f8040793 addi a5,s0,-128 + c000d76c: 97ce add a5,a5,s3 + c000d76e: 7ca7b023 sd a0,1984(a5) + c000d772: 7cb7b423 sd a1,1992(a5) + c000d776: 77fd lui a5,0xfffff + c000d778: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000d77c: 97a2 add a5,a5,s0 + c000d77e: 639c ld a5,0(a5) + c000d780: 862a mv a2,a0 + c000d782: 86ae mv a3,a1 + c000d784: 8526 mv a0,s1 + c000d786: 03078593 addi a1,a5,48 + c000d78a: 8e7fa0ef jal ra,c0008070 + c000d78e: dd9fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17009 - CASE(OP_set_arg0): set_value(ctx, &arg_buf[0], JS_DupValue(ctx, sp[-1])); BREAK; - c000d7e0: ff0d3503 ld a0,-16(s10) - c000d7e4: ff8d3583 ld a1,-8(s10) - c000d7e8: e87f80ef jal ra,c000666e - c000d7ec: f8040793 addi a5,s0,-128 - c000d7f0: 97ce add a5,a5,s3 - c000d7f2: 7ca7b823 sd a0,2000(a5) - c000d7f6: 7cb7bc23 sd a1,2008(a5) - c000d7fa: 77fd lui a5,0xfffff - c000d7fc: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d800: 97a2 add a5,a5,s0 - c000d802: 86ae mv a3,a1 - c000d804: 638c ld a1,0(a5) - c000d806: 862a mv a2,a0 - c000d808: 8526 mv a0,s1 - c000d80a: f78fa0ef jal ra,c0007f82 - c000d80e: c6bfd06f j c000b478 + CASE(OP_get_arg0): *sp++ = JS_DupValue(ctx, arg_buf[0]); BREAK; + c000d792: 77fd lui a5,0xfffff + c000d794: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d798: 97a2 add a5,a5,s0 + c000d79a: 639c ld a5,0(a5) + c000d79c: 010d0a13 addi s4,s10,16 + c000d7a0: 6388 ld a0,0(a5) + c000d7a2: 77fd lui a5,0xfffff + c000d7a4: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d7a8: 97a2 add a5,a5,s0 + c000d7aa: 639c ld a5,0(a5) + c000d7ac: 678c ld a1,8(a5) + c000d7ae: faff80ef jal ra,c000675c + c000d7b2: 00ad3023 sd a0,0(s10) + c000d7b6: 00bd3423 sd a1,8(s10) + c000d7ba: 8d52 mv s10,s4 + c000d7bc: dabfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17010 - CASE(OP_set_arg1): set_value(ctx, &arg_buf[1], JS_DupValue(ctx, sp[-1])); BREAK; - c000d812: ff0d3503 ld a0,-16(s10) - c000d816: ff8d3583 ld a1,-8(s10) - c000d81a: e55f80ef jal ra,c000666e - c000d81e: f8040793 addi a5,s0,-128 - c000d822: 97ce add a5,a5,s3 - c000d824: 7ea7b023 sd a0,2016(a5) - c000d828: 7eb7b423 sd a1,2024(a5) + CASE(OP_get_arg1): *sp++ = JS_DupValue(ctx, arg_buf[1]); BREAK; + c000d7c0: 77fd lui a5,0xfffff + c000d7c2: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d7c6: 97a2 add a5,a5,s0 + c000d7c8: 639c ld a5,0(a5) + c000d7ca: 010d0a13 addi s4,s10,16 + c000d7ce: 6b88 ld a0,16(a5) + c000d7d0: 77fd lui a5,0xfffff + c000d7d2: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d7d6: 97a2 add a5,a5,s0 + c000d7d8: 639c ld a5,0(a5) + c000d7da: 6f8c ld a1,24(a5) + c000d7dc: f81f80ef jal ra,c000675c + c000d7e0: 00ad3023 sd a0,0(s10) + c000d7e4: 00bd3423 sd a1,8(s10) + c000d7e8: 8d52 mv s10,s4 + c000d7ea: d7dfd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17011 + CASE(OP_get_arg2): *sp++ = JS_DupValue(ctx, arg_buf[2]); BREAK; + c000d7ee: 77fd lui a5,0xfffff + c000d7f0: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d7f4: 97a2 add a5,a5,s0 + c000d7f6: 639c ld a5,0(a5) + c000d7f8: 010d0a13 addi s4,s10,16 + c000d7fc: 7388 ld a0,32(a5) + c000d7fe: 77fd lui a5,0xfffff + c000d800: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d804: 97a2 add a5,a5,s0 + c000d806: 639c ld a5,0(a5) + c000d808: 778c ld a1,40(a5) + c000d80a: f53f80ef jal ra,c000675c + c000d80e: 00ad3023 sd a0,0(s10) + c000d812: 00bd3423 sd a1,8(s10) + c000d816: 8d52 mv s10,s4 + c000d818: d4ffd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17012 + CASE(OP_get_arg3): *sp++ = JS_DupValue(ctx, arg_buf[3]); BREAK; + c000d81c: 77fd lui a5,0xfffff + c000d81e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d822: 97a2 add a5,a5,s0 + c000d824: 639c ld a5,0(a5) + c000d826: 010d0a13 addi s4,s10,16 + c000d82a: 7b88 ld a0,48(a5) c000d82c: 77fd lui a5,0xfffff c000d82e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> c000d832: 97a2 add a5,a5,s0 c000d834: 639c ld a5,0(a5) - c000d836: 862a mv a2,a0 - c000d838: 86ae mv a3,a1 - c000d83a: 8526 mv a0,s1 - c000d83c: 01078593 addi a1,a5,16 - c000d840: f42fa0ef jal ra,c0007f82 - c000d844: c35fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17011 - CASE(OP_set_arg2): set_value(ctx, &arg_buf[2], JS_DupValue(ctx, sp[-1])); BREAK; - c000d848: ff0d3503 ld a0,-16(s10) - c000d84c: ff8d3583 ld a1,-8(s10) - c000d850: e1ff80ef jal ra,c000666e - c000d854: f8040793 addi a5,s0,-128 - c000d858: 97ce add a5,a5,s3 - c000d85a: 7ea7b823 sd a0,2032(a5) - c000d85e: 7eb7bc23 sd a1,2040(a5) - c000d862: 77fd lui a5,0xfffff - c000d864: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d868: 97a2 add a5,a5,s0 - c000d86a: 639c ld a5,0(a5) - c000d86c: 862a mv a2,a0 - c000d86e: 86ae mv a3,a1 - c000d870: 8526 mv a0,s1 - c000d872: 02078593 addi a1,a5,32 - c000d876: f0cfa0ef jal ra,c0007f82 - c000d87a: bfffd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17012 - CASE(OP_set_arg3): set_value(ctx, &arg_buf[3], JS_DupValue(ctx, sp[-1])); BREAK; - c000d87e: ff0d3503 ld a0,-16(s10) - c000d882: ff8d3583 ld a1,-8(s10) - c000d886: de9f80ef jal ra,c000666e - c000d88a: 777d lui a4,0xfffff - c000d88c: 78070793 addi a5,a4,1920 # fffffffffffff780 <_ebss+0xffffffff3fefe65a> - c000d890: 97a2 add a5,a5,s0 - c000d892: e388 sd a0,0(a5) - c000d894: 78870793 addi a5,a4,1928 - c000d898: 97a2 add a5,a5,s0 - c000d89a: e38c sd a1,0(a5) - c000d89c: 77fd lui a5,0xfffff - c000d89e: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c000d8a2: 97a2 add a5,a5,s0 - c000d8a4: 639c ld a5,0(a5) - c000d8a6: 862a mv a2,a0 - c000d8a8: 86ae mv a3,a1 - c000d8aa: 8526 mv a0,s1 - c000d8ac: 03078593 addi a1,a5,48 - c000d8b0: ed2fa0ef jal ra,c0007f82 - c000d8b4: bc5fd06f j c000b478 + c000d836: 7f8c ld a1,56(a5) + c000d838: f25f80ef jal ra,c000675c + c000d83c: 00ad3023 sd a0,0(s10) + c000d840: 00bd3423 sd a1,8(s10) + c000d844: 8d52 mv s10,s4 + c000d846: d21fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17013 - CASE(OP_get_var_ref0): *sp++ = JS_DupValue(ctx, *var_refs[0]->pvalue); BREAK; - c000d8b8: 77fd lui a5,0xfffff - c000d8ba: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d8be: 97a2 add a5,a5,s0 - c000d8c0: 639c ld a5,0(a5) - c000d8c2: 010d0a13 addi s4,s10,16 - c000d8c6: 639c ld a5,0(a5) - c000d8c8: 6f9c ld a5,24(a5) - c000d8ca: 6388 ld a0,0(a5) - c000d8cc: 678c ld a1,8(a5) - c000d8ce: da1f80ef jal ra,c000666e - c000d8d2: 00ad3023 sd a0,0(s10) - c000d8d6: 00bd3423 sd a1,8(s10) - c000d8da: 8d52 mv s10,s4 - c000d8dc: b9dfd06f j c000b478 + CASE(OP_put_arg0): set_value(ctx, &arg_buf[0], *--sp); BREAK; + c000d84a: 77fd lui a5,0xfffff + c000d84c: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d850: 97a2 add a5,a5,s0 + c000d852: 638c ld a1,0(a5) + c000d854: ff0d3603 ld a2,-16(s10) + c000d858: ff8d3683 ld a3,-8(s10) + c000d85c: 8526 mv a0,s1 + c000d85e: 1d41 addi s10,s10,-16 + c000d860: 811fa0ef jal ra,c0008070 + c000d864: d03fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17014 - CASE(OP_get_var_ref1): *sp++ = JS_DupValue(ctx, *var_refs[1]->pvalue); BREAK; - c000d8e0: 77fd lui a5,0xfffff - c000d8e2: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d8e6: 97a2 add a5,a5,s0 - c000d8e8: 639c ld a5,0(a5) - c000d8ea: 010d0a13 addi s4,s10,16 - c000d8ee: 679c ld a5,8(a5) - c000d8f0: 6f9c ld a5,24(a5) - c000d8f2: 6388 ld a0,0(a5) - c000d8f4: 678c ld a1,8(a5) - c000d8f6: d79f80ef jal ra,c000666e - c000d8fa: 00ad3023 sd a0,0(s10) - c000d8fe: 00bd3423 sd a1,8(s10) - c000d902: 8d52 mv s10,s4 - c000d904: b75fd06f j c000b478 + CASE(OP_put_arg1): set_value(ctx, &arg_buf[1], *--sp); BREAK; + c000d868: 77fd lui a5,0xfffff + c000d86a: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d86e: 97a2 add a5,a5,s0 + c000d870: 639c ld a5,0(a5) + c000d872: ff0d3603 ld a2,-16(s10) + c000d876: ff8d3683 ld a3,-8(s10) + c000d87a: 01078593 addi a1,a5,16 + c000d87e: 8526 mv a0,s1 + c000d880: 1d41 addi s10,s10,-16 + c000d882: feefa0ef jal ra,c0008070 + c000d886: ce1fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17015 - CASE(OP_get_var_ref2): *sp++ = JS_DupValue(ctx, *var_refs[2]->pvalue); BREAK; - c000d908: 77fd lui a5,0xfffff - c000d90a: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d90e: 97a2 add a5,a5,s0 - c000d910: 639c ld a5,0(a5) - c000d912: 010d0a13 addi s4,s10,16 - c000d916: 6b9c ld a5,16(a5) - c000d918: 6f9c ld a5,24(a5) - c000d91a: 6388 ld a0,0(a5) - c000d91c: 678c ld a1,8(a5) - c000d91e: d51f80ef jal ra,c000666e - c000d922: 00ad3023 sd a0,0(s10) - c000d926: 00bd3423 sd a1,8(s10) - c000d92a: 8d52 mv s10,s4 - c000d92c: b4dfd06f j c000b478 + CASE(OP_put_arg2): set_value(ctx, &arg_buf[2], *--sp); BREAK; + c000d88a: 77fd lui a5,0xfffff + c000d88c: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d890: 97a2 add a5,a5,s0 + c000d892: 639c ld a5,0(a5) + c000d894: ff0d3603 ld a2,-16(s10) + c000d898: ff8d3683 ld a3,-8(s10) + c000d89c: 02078593 addi a1,a5,32 + c000d8a0: 8526 mv a0,s1 + c000d8a2: 1d41 addi s10,s10,-16 + c000d8a4: fccfa0ef jal ra,c0008070 + c000d8a8: cbffd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17016 - CASE(OP_get_var_ref3): *sp++ = JS_DupValue(ctx, *var_refs[3]->pvalue); BREAK; - c000d930: 77fd lui a5,0xfffff - c000d932: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d936: 97a2 add a5,a5,s0 - c000d938: 639c ld a5,0(a5) - c000d93a: 010d0a13 addi s4,s10,16 - c000d93e: 6f9c ld a5,24(a5) - c000d940: 6f9c ld a5,24(a5) - c000d942: 6388 ld a0,0(a5) - c000d944: 678c ld a1,8(a5) - c000d946: d29f80ef jal ra,c000666e - c000d94a: 00ad3023 sd a0,0(s10) - c000d94e: 00bd3423 sd a1,8(s10) - c000d952: 8d52 mv s10,s4 - c000d954: b25fd06f j c000b478 + CASE(OP_put_arg3): set_value(ctx, &arg_buf[3], *--sp); BREAK; + c000d8ac: 77fd lui a5,0xfffff + c000d8ae: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d8b2: 97a2 add a5,a5,s0 + c000d8b4: 639c ld a5,0(a5) + c000d8b6: ff0d3603 ld a2,-16(s10) + c000d8ba: ff8d3683 ld a3,-8(s10) + c000d8be: 03078593 addi a1,a5,48 + c000d8c2: 8526 mv a0,s1 + c000d8c4: 1d41 addi s10,s10,-16 + c000d8c6: faafa0ef jal ra,c0008070 + c000d8ca: c9dfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17017 - CASE(OP_put_var_ref0): set_value(ctx, var_refs[0]->pvalue, *--sp); BREAK; - c000d958: 77fd lui a5,0xfffff - c000d95a: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d95e: 97a2 add a5,a5,s0 - c000d960: 639c ld a5,0(a5) - c000d962: ff0d3603 ld a2,-16(s10) - c000d966: ff8d3683 ld a3,-8(s10) - c000d96a: 639c ld a5,0(a5) - c000d96c: 8526 mv a0,s1 - c000d96e: 1d41 addi s10,s10,-16 - c000d970: 6f8c ld a1,24(a5) - c000d972: e10fa0ef jal ra,c0007f82 - c000d976: b03fd06f j c000b478 + CASE(OP_set_arg0): set_value(ctx, &arg_buf[0], JS_DupValue(ctx, sp[-1])); BREAK; + c000d8ce: ff0d3503 ld a0,-16(s10) + c000d8d2: ff8d3583 ld a1,-8(s10) + c000d8d6: e87f80ef jal ra,c000675c + c000d8da: f8040793 addi a5,s0,-128 + c000d8de: 97ce add a5,a5,s3 + c000d8e0: 7ca7b823 sd a0,2000(a5) + c000d8e4: 7cb7bc23 sd a1,2008(a5) + c000d8e8: 77fd lui a5,0xfffff + c000d8ea: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d8ee: 97a2 add a5,a5,s0 + c000d8f0: 86ae mv a3,a1 + c000d8f2: 638c ld a1,0(a5) + c000d8f4: 862a mv a2,a0 + c000d8f6: 8526 mv a0,s1 + c000d8f8: f78fa0ef jal ra,c0008070 + c000d8fc: c6bfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17018 - CASE(OP_put_var_ref1): set_value(ctx, var_refs[1]->pvalue, *--sp); BREAK; - c000d97a: 77fd lui a5,0xfffff - c000d97c: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d980: 97a2 add a5,a5,s0 - c000d982: 639c ld a5,0(a5) - c000d984: ff0d3603 ld a2,-16(s10) - c000d988: ff8d3683 ld a3,-8(s10) - c000d98c: 679c ld a5,8(a5) - c000d98e: 8526 mv a0,s1 - c000d990: 1d41 addi s10,s10,-16 - c000d992: 6f8c ld a1,24(a5) - c000d994: deefa0ef jal ra,c0007f82 - c000d998: ae1fd06f j c000b478 + CASE(OP_set_arg1): set_value(ctx, &arg_buf[1], JS_DupValue(ctx, sp[-1])); BREAK; + c000d900: ff0d3503 ld a0,-16(s10) + c000d904: ff8d3583 ld a1,-8(s10) + c000d908: e55f80ef jal ra,c000675c + c000d90c: f8040793 addi a5,s0,-128 + c000d910: 97ce add a5,a5,s3 + c000d912: 7ea7b023 sd a0,2016(a5) + c000d916: 7eb7b423 sd a1,2024(a5) + c000d91a: 77fd lui a5,0xfffff + c000d91c: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d920: 97a2 add a5,a5,s0 + c000d922: 639c ld a5,0(a5) + c000d924: 862a mv a2,a0 + c000d926: 86ae mv a3,a1 + c000d928: 8526 mv a0,s1 + c000d92a: 01078593 addi a1,a5,16 + c000d92e: f42fa0ef jal ra,c0008070 + c000d932: c35fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17019 - CASE(OP_put_var_ref2): set_value(ctx, var_refs[2]->pvalue, *--sp); BREAK; - c000d99c: 77fd lui a5,0xfffff - c000d99e: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d9a2: 97a2 add a5,a5,s0 - c000d9a4: 639c ld a5,0(a5) - c000d9a6: ff0d3603 ld a2,-16(s10) - c000d9aa: ff8d3683 ld a3,-8(s10) - c000d9ae: 6b9c ld a5,16(a5) - c000d9b0: 8526 mv a0,s1 - c000d9b2: 1d41 addi s10,s10,-16 - c000d9b4: 6f8c ld a1,24(a5) - c000d9b6: dccfa0ef jal ra,c0007f82 - c000d9ba: abffd06f j c000b478 + CASE(OP_set_arg2): set_value(ctx, &arg_buf[2], JS_DupValue(ctx, sp[-1])); BREAK; + c000d936: ff0d3503 ld a0,-16(s10) + c000d93a: ff8d3583 ld a1,-8(s10) + c000d93e: e1ff80ef jal ra,c000675c + c000d942: f8040793 addi a5,s0,-128 + c000d946: 97ce add a5,a5,s3 + c000d948: 7ea7b823 sd a0,2032(a5) + c000d94c: 7eb7bc23 sd a1,2040(a5) + c000d950: 77fd lui a5,0xfffff + c000d952: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d956: 97a2 add a5,a5,s0 + c000d958: 639c ld a5,0(a5) + c000d95a: 862a mv a2,a0 + c000d95c: 86ae mv a3,a1 + c000d95e: 8526 mv a0,s1 + c000d960: 02078593 addi a1,a5,32 + c000d964: f0cfa0ef jal ra,c0008070 + c000d968: bfffd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17020 - CASE(OP_put_var_ref3): set_value(ctx, var_refs[3]->pvalue, *--sp); BREAK; - c000d9be: 77fd lui a5,0xfffff - c000d9c0: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d9c4: 97a2 add a5,a5,s0 - c000d9c6: 639c ld a5,0(a5) - c000d9c8: ff0d3603 ld a2,-16(s10) - c000d9cc: ff8d3683 ld a3,-8(s10) - c000d9d0: 6f9c ld a5,24(a5) - c000d9d2: 8526 mv a0,s1 - c000d9d4: 1d41 addi s10,s10,-16 - c000d9d6: 6f8c ld a1,24(a5) - c000d9d8: daafa0ef jal ra,c0007f82 - c000d9dc: a9dfd06f j c000b478 + CASE(OP_set_arg3): set_value(ctx, &arg_buf[3], JS_DupValue(ctx, sp[-1])); BREAK; + c000d96c: ff0d3503 ld a0,-16(s10) + c000d970: ff8d3583 ld a1,-8(s10) + c000d974: de9f80ef jal ra,c000675c + c000d978: 777d lui a4,0xfffff + c000d97a: 78070793 addi a5,a4,1920 # fffffffffffff780 <_ebss+0xffffffff3fefe65a> + c000d97e: 97a2 add a5,a5,s0 + c000d980: e388 sd a0,0(a5) + c000d982: 78870793 addi a5,a4,1928 + c000d986: 97a2 add a5,a5,s0 + c000d988: e38c sd a1,0(a5) + c000d98a: 77fd lui a5,0xfffff + c000d98c: 65878793 addi a5,a5,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c000d990: 97a2 add a5,a5,s0 + c000d992: 639c ld a5,0(a5) + c000d994: 862a mv a2,a0 + c000d996: 86ae mv a3,a1 + c000d998: 8526 mv a0,s1 + c000d99a: 03078593 addi a1,a5,48 + c000d99e: ed2fa0ef jal ra,c0008070 + c000d9a2: bc5fd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17021 - CASE(OP_set_var_ref0): set_value(ctx, var_refs[0]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; - c000d9e0: 77fd lui a5,0xfffff - c000d9e2: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000d9e6: 97a2 add a5,a5,s0 - c000d9e8: 639c ld a5,0(a5) - c000d9ea: ff0d3503 ld a0,-16(s10) - c000d9ee: ff8d3583 ld a1,-8(s10) - c000d9f2: 639c ld a5,0(a5) - c000d9f4: 0187ba03 ld s4,24(a5) - c000d9f8: c77f80ef jal ra,c000666e - c000d9fc: 777d lui a4,0xfffff - c000d9fe: 79070793 addi a5,a4,1936 # fffffffffffff790 <_ebss+0xffffffff3fefe66a> - c000da02: 97a2 add a5,a5,s0 - c000da04: e388 sd a0,0(a5) - c000da06: 79870793 addi a5,a4,1944 - c000da0a: 97a2 add a5,a5,s0 - c000da0c: 862a mv a2,a0 - c000da0e: 86ae mv a3,a1 - c000da10: e38c sd a1,0(a5) - c000da12: 8526 mv a0,s1 - c000da14: 85d2 mv a1,s4 - c000da16: d6cfa0ef jal ra,c0007f82 - c000da1a: a5ffd06f j c000b478 + CASE(OP_get_var_ref0): *sp++ = JS_DupValue(ctx, *var_refs[0]->pvalue); BREAK; + c000d9a6: 77fd lui a5,0xfffff + c000d9a8: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000d9ac: 97a2 add a5,a5,s0 + c000d9ae: 639c ld a5,0(a5) + c000d9b0: 010d0a13 addi s4,s10,16 + c000d9b4: 639c ld a5,0(a5) + c000d9b6: 6f9c ld a5,24(a5) + c000d9b8: 6388 ld a0,0(a5) + c000d9ba: 678c ld a1,8(a5) + c000d9bc: da1f80ef jal ra,c000675c + c000d9c0: 00ad3023 sd a0,0(s10) + c000d9c4: 00bd3423 sd a1,8(s10) + c000d9c8: 8d52 mv s10,s4 + c000d9ca: b9dfd06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17022 - CASE(OP_set_var_ref1): set_value(ctx, var_refs[1]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; + CASE(OP_get_var_ref1): *sp++ = JS_DupValue(ctx, *var_refs[1]->pvalue); BREAK; + c000d9ce: 77fd lui a5,0xfffff + c000d9d0: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000d9d4: 97a2 add a5,a5,s0 + c000d9d6: 639c ld a5,0(a5) + c000d9d8: 010d0a13 addi s4,s10,16 + c000d9dc: 679c ld a5,8(a5) + c000d9de: 6f9c ld a5,24(a5) + c000d9e0: 6388 ld a0,0(a5) + c000d9e2: 678c ld a1,8(a5) + c000d9e4: d79f80ef jal ra,c000675c + c000d9e8: 00ad3023 sd a0,0(s10) + c000d9ec: 00bd3423 sd a1,8(s10) + c000d9f0: 8d52 mv s10,s4 + c000d9f2: b75fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17023 + CASE(OP_get_var_ref2): *sp++ = JS_DupValue(ctx, *var_refs[2]->pvalue); BREAK; + c000d9f6: 77fd lui a5,0xfffff + c000d9f8: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000d9fc: 97a2 add a5,a5,s0 + c000d9fe: 639c ld a5,0(a5) + c000da00: 010d0a13 addi s4,s10,16 + c000da04: 6b9c ld a5,16(a5) + c000da06: 6f9c ld a5,24(a5) + c000da08: 6388 ld a0,0(a5) + c000da0a: 678c ld a1,8(a5) + c000da0c: d51f80ef jal ra,c000675c + c000da10: 00ad3023 sd a0,0(s10) + c000da14: 00bd3423 sd a1,8(s10) + c000da18: 8d52 mv s10,s4 + c000da1a: b4dfd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17024 + CASE(OP_get_var_ref3): *sp++ = JS_DupValue(ctx, *var_refs[3]->pvalue); BREAK; c000da1e: 77fd lui a5,0xfffff c000da20: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> c000da24: 97a2 add a5,a5,s0 c000da26: 639c ld a5,0(a5) - c000da28: ff0d3503 ld a0,-16(s10) - c000da2c: ff8d3583 ld a1,-8(s10) - c000da30: 679c ld a5,8(a5) - c000da32: 0187ba03 ld s4,24(a5) - c000da36: c39f80ef jal ra,c000666e - c000da3a: 777d lui a4,0xfffff - c000da3c: 7a070793 addi a5,a4,1952 # fffffffffffff7a0 <_ebss+0xffffffff3fefe67a> - c000da40: 97a2 add a5,a5,s0 - c000da42: e388 sd a0,0(a5) - c000da44: 7a870793 addi a5,a4,1960 - c000da48: 97a2 add a5,a5,s0 - c000da4a: 862a mv a2,a0 - c000da4c: 86ae mv a3,a1 - c000da4e: e38c sd a1,0(a5) - c000da50: 8526 mv a0,s1 - c000da52: 85d2 mv a1,s4 - c000da54: d2efa0ef jal ra,c0007f82 - c000da58: a21fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17023 + c000da28: 010d0a13 addi s4,s10,16 + c000da2c: 6f9c ld a5,24(a5) + c000da2e: 6f9c ld a5,24(a5) + c000da30: 6388 ld a0,0(a5) + c000da32: 678c ld a1,8(a5) + c000da34: d29f80ef jal ra,c000675c + c000da38: 00ad3023 sd a0,0(s10) + c000da3c: 00bd3423 sd a1,8(s10) + c000da40: 8d52 mv s10,s4 + c000da42: b25fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17025 + CASE(OP_put_var_ref0): set_value(ctx, var_refs[0]->pvalue, *--sp); BREAK; + c000da46: 77fd lui a5,0xfffff + c000da48: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000da4c: 97a2 add a5,a5,s0 + c000da4e: 639c ld a5,0(a5) + c000da50: ff0d3603 ld a2,-16(s10) + c000da54: ff8d3683 ld a3,-8(s10) + c000da58: 639c ld a5,0(a5) + c000da5a: 8526 mv a0,s1 + c000da5c: 1d41 addi s10,s10,-16 + c000da5e: 6f8c ld a1,24(a5) + c000da60: e10fa0ef jal ra,c0008070 + c000da64: b03fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17026 + CASE(OP_put_var_ref1): set_value(ctx, var_refs[1]->pvalue, *--sp); BREAK; + c000da68: 77fd lui a5,0xfffff + c000da6a: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000da6e: 97a2 add a5,a5,s0 + c000da70: 639c ld a5,0(a5) + c000da72: ff0d3603 ld a2,-16(s10) + c000da76: ff8d3683 ld a3,-8(s10) + c000da7a: 679c ld a5,8(a5) + c000da7c: 8526 mv a0,s1 + c000da7e: 1d41 addi s10,s10,-16 + c000da80: 6f8c ld a1,24(a5) + c000da82: deefa0ef jal ra,c0008070 + c000da86: ae1fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17027 + CASE(OP_put_var_ref2): set_value(ctx, var_refs[2]->pvalue, *--sp); BREAK; + c000da8a: 77fd lui a5,0xfffff + c000da8c: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000da90: 97a2 add a5,a5,s0 + c000da92: 639c ld a5,0(a5) + c000da94: ff0d3603 ld a2,-16(s10) + c000da98: ff8d3683 ld a3,-8(s10) + c000da9c: 6b9c ld a5,16(a5) + c000da9e: 8526 mv a0,s1 + c000daa0: 1d41 addi s10,s10,-16 + c000daa2: 6f8c ld a1,24(a5) + c000daa4: dccfa0ef jal ra,c0008070 + c000daa8: abffd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17028 + CASE(OP_put_var_ref3): set_value(ctx, var_refs[3]->pvalue, *--sp); BREAK; + c000daac: 77fd lui a5,0xfffff + c000daae: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dab2: 97a2 add a5,a5,s0 + c000dab4: 639c ld a5,0(a5) + c000dab6: ff0d3603 ld a2,-16(s10) + c000daba: ff8d3683 ld a3,-8(s10) + c000dabe: 6f9c ld a5,24(a5) + c000dac0: 8526 mv a0,s1 + c000dac2: 1d41 addi s10,s10,-16 + c000dac4: 6f8c ld a1,24(a5) + c000dac6: daafa0ef jal ra,c0008070 + c000daca: a9dfd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17029 + CASE(OP_set_var_ref0): set_value(ctx, var_refs[0]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; + c000dace: 77fd lui a5,0xfffff + c000dad0: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dad4: 97a2 add a5,a5,s0 + c000dad6: 639c ld a5,0(a5) + c000dad8: ff0d3503 ld a0,-16(s10) + c000dadc: ff8d3583 ld a1,-8(s10) + c000dae0: 639c ld a5,0(a5) + c000dae2: 0187ba03 ld s4,24(a5) + c000dae6: c77f80ef jal ra,c000675c + c000daea: 777d lui a4,0xfffff + c000daec: 79070793 addi a5,a4,1936 # fffffffffffff790 <_ebss+0xffffffff3fefe66a> + c000daf0: 97a2 add a5,a5,s0 + c000daf2: e388 sd a0,0(a5) + c000daf4: 79870793 addi a5,a4,1944 + c000daf8: 97a2 add a5,a5,s0 + c000dafa: 862a mv a2,a0 + c000dafc: 86ae mv a3,a1 + c000dafe: e38c sd a1,0(a5) + c000db00: 8526 mv a0,s1 + c000db02: 85d2 mv a1,s4 + c000db04: d6cfa0ef jal ra,c0008070 + c000db08: a5ffd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17030 + CASE(OP_set_var_ref1): set_value(ctx, var_refs[1]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; + c000db0c: 77fd lui a5,0xfffff + c000db0e: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000db12: 97a2 add a5,a5,s0 + c000db14: 639c ld a5,0(a5) + c000db16: ff0d3503 ld a0,-16(s10) + c000db1a: ff8d3583 ld a1,-8(s10) + c000db1e: 679c ld a5,8(a5) + c000db20: 0187ba03 ld s4,24(a5) + c000db24: c39f80ef jal ra,c000675c + c000db28: 777d lui a4,0xfffff + c000db2a: 7a070793 addi a5,a4,1952 # fffffffffffff7a0 <_ebss+0xffffffff3fefe67a> + c000db2e: 97a2 add a5,a5,s0 + c000db30: e388 sd a0,0(a5) + c000db32: 7a870793 addi a5,a4,1960 + c000db36: 97a2 add a5,a5,s0 + c000db38: 862a mv a2,a0 + c000db3a: 86ae mv a3,a1 + c000db3c: e38c sd a1,0(a5) + c000db3e: 8526 mv a0,s1 + c000db40: 85d2 mv a1,s4 + c000db42: d2efa0ef jal ra,c0008070 + c000db46: a21fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17031 CASE(OP_set_var_ref2): set_value(ctx, var_refs[2]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; - c000da5c: 77fd lui a5,0xfffff - c000da5e: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000da62: 97a2 add a5,a5,s0 - c000da64: 639c ld a5,0(a5) - c000da66: ff0d3503 ld a0,-16(s10) - c000da6a: ff8d3583 ld a1,-8(s10) - c000da6e: 6b9c ld a5,16(a5) - c000da70: 0187ba03 ld s4,24(a5) - c000da74: bfbf80ef jal ra,c000666e - c000da78: 777d lui a4,0xfffff - c000da7a: 7b070793 addi a5,a4,1968 # fffffffffffff7b0 <_ebss+0xffffffff3fefe68a> - c000da7e: 97a2 add a5,a5,s0 - c000da80: e388 sd a0,0(a5) - c000da82: 7b870793 addi a5,a4,1976 - c000da86: 97a2 add a5,a5,s0 - c000da88: 862a mv a2,a0 - c000da8a: 86ae mv a3,a1 - c000da8c: e38c sd a1,0(a5) - c000da8e: 8526 mv a0,s1 - c000da90: 85d2 mv a1,s4 - c000da92: cf0fa0ef jal ra,c0007f82 - c000da96: 9e3fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17024 + c000db4a: 77fd lui a5,0xfffff + c000db4c: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000db50: 97a2 add a5,a5,s0 + c000db52: 639c ld a5,0(a5) + c000db54: ff0d3503 ld a0,-16(s10) + c000db58: ff8d3583 ld a1,-8(s10) + c000db5c: 6b9c ld a5,16(a5) + c000db5e: 0187ba03 ld s4,24(a5) + c000db62: bfbf80ef jal ra,c000675c + c000db66: 777d lui a4,0xfffff + c000db68: 7b070793 addi a5,a4,1968 # fffffffffffff7b0 <_ebss+0xffffffff3fefe68a> + c000db6c: 97a2 add a5,a5,s0 + c000db6e: e388 sd a0,0(a5) + c000db70: 7b870793 addi a5,a4,1976 + c000db74: 97a2 add a5,a5,s0 + c000db76: 862a mv a2,a0 + c000db78: 86ae mv a3,a1 + c000db7a: e38c sd a1,0(a5) + c000db7c: 8526 mv a0,s1 + c000db7e: 85d2 mv a1,s4 + c000db80: cf0fa0ef jal ra,c0008070 + c000db84: 9e3fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17032 CASE(OP_set_var_ref3): set_value(ctx, var_refs[3]->pvalue, JS_DupValue(ctx, sp[-1])); BREAK; - c000da9a: 77fd lui a5,0xfffff - c000da9c: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000daa0: 97a2 add a5,a5,s0 - c000daa2: 639c ld a5,0(a5) - c000daa4: ff0d3503 ld a0,-16(s10) - c000daa8: ff8d3583 ld a1,-8(s10) - c000daac: 6f9c ld a5,24(a5) - c000daae: 0187ba03 ld s4,24(a5) - c000dab2: bbdf80ef jal ra,c000666e - c000dab6: 777d lui a4,0xfffff - c000dab8: 7c070793 addi a5,a4,1984 # fffffffffffff7c0 <_ebss+0xffffffff3fefe69a> - c000dabc: 97a2 add a5,a5,s0 - c000dabe: e388 sd a0,0(a5) - c000dac0: 7c870793 addi a5,a4,1992 - c000dac4: 97a2 add a5,a5,s0 - c000dac6: 862a mv a2,a0 - c000dac8: 86ae mv a3,a1 - c000daca: e38c sd a1,0(a5) - c000dacc: 8526 mv a0,s1 - c000dace: 85d2 mv a1,s4 - c000dad0: cb2fa0ef jal ra,c0007f82 - c000dad4: 9a5fd06f j c000b478 + c000db88: 77fd lui a5,0xfffff + c000db8a: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000db8e: 97a2 add a5,a5,s0 + c000db90: 639c ld a5,0(a5) + c000db92: ff0d3503 ld a0,-16(s10) + c000db96: ff8d3583 ld a1,-8(s10) + c000db9a: 6f9c ld a5,24(a5) + c000db9c: 0187ba03 ld s4,24(a5) + c000dba0: bbdf80ef jal ra,c000675c + c000dba4: 777d lui a4,0xfffff + c000dba6: 7c070793 addi a5,a4,1984 # fffffffffffff7c0 <_ebss+0xffffffff3fefe69a> + c000dbaa: 97a2 add a5,a5,s0 + c000dbac: e388 sd a0,0(a5) + c000dbae: 7c870793 addi a5,a4,1992 + c000dbb2: 97a2 add a5,a5,s0 + c000dbb4: 862a mv a2,a0 + c000dbb6: 86ae mv a3,a1 + c000dbb8: e38c sd a1,0(a5) + c000dbba: 8526 mv a0,s1 + c000dbbc: 85d2 mv a1,s4 + c000dbbe: cb2fa0ef jal ra,c0008070 + c000dbc2: 9a5fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dad8: 002bc783 lbu a5,2(s7) - c000dadc: 001bc703 lbu a4,1(s7) + c000dbc6: 002bc783 lbu a5,2(s7) + c000dbca: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17040 pc += 2; - c000dae0: 003b8913 addi s2,s7,3 + c000dbce: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dae4: 07a2 slli a5,a5,0x8 + c000dbd2: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17033 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17041 val = *var_refs[idx]->pvalue; - c000dae6: 8fd9 or a5,a5,a4 - c000dae8: 777d lui a4,0xfffff - c000daea: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000daee: 9722 add a4,a4,s0 - c000daf0: 6318 ld a4,0(a4) - c000daf2: 078e slli a5,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17035 + c000dbd4: 8fd9 or a5,a5,a4 + c000dbd6: 777d lui a4,0xfffff + c000dbd8: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dbdc: 9722 add a4,a4,s0 + c000dbde: 6318 ld a4,0(a4) + c000dbe0: 078e slli a5,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17043 sp++; - c000daf4: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17033 + c000dbe2: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17041 val = *var_refs[idx]->pvalue; - c000daf6: 97ba add a5,a5,a4 - c000daf8: 639c ld a5,0(a5) - c000dafa: 6f9c ld a5,24(a5) - c000dafc: 6388 ld a0,0(a5) - c000dafe: eea43823 sd a0,-272(s0) - c000db02: 678c ld a1,8(a5) - c000db04: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17034 + c000dbe4: 97ba add a5,a5,a4 + c000dbe6: 639c ld a5,0(a5) + c000dbe8: 6f9c ld a5,24(a5) + c000dbea: 6388 ld a0,0(a5) + c000dbec: eea43823 sd a0,-272(s0) + c000dbf0: 678c ld a1,8(a5) + c000dbf2: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17042 sp[0] = JS_DupValue(ctx, val); - c000db08: b67f80ef jal ra,c000666e - c000db0c: fead3823 sd a0,-16(s10) - c000db10: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17037 + c000dbf6: b67f80ef jal ra,c000675c + c000dbfa: fead3823 sd a0,-16(s10) + c000dbfe: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17045 BREAK; - c000db14: 965fd06f j c000b478 + c000dc02: 965fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000db18: 002bc783 lbu a5,2(s7) - c000db1c: 001bc703 lbu a4,1(s7) + c000dc06: 002bc783 lbu a5,2(s7) + c000dc0a: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17043 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17051 set_value(ctx, var_refs[idx]->pvalue, sp[-1]); - c000db20: ff0d3603 ld a2,-16(s10) + c000dc0e: ff0d3603 ld a2,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000db24: 07a2 slli a5,a5,0x8 + c000dc12: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17043 - c000db26: 8fd9 or a5,a5,a4 - c000db28: 777d lui a4,0xfffff - c000db2a: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000db2e: 9722 add a4,a4,s0 - c000db30: 6318 ld a4,0(a4) - c000db32: 078e slli a5,a5,0x3 - c000db34: ff8d3683 ld a3,-8(s10) - c000db38: 97ba add a5,a5,a4 - c000db3a: 639c ld a5,0(a5) - c000db3c: 8526 mv a0,s1 - c000db3e: 1d41 addi s10,s10,-16 - c000db40: 6f8c ld a1,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17051 + c000dc14: 8fd9 or a5,a5,a4 + c000dc16: 777d lui a4,0xfffff + c000dc18: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dc1c: 9722 add a4,a4,s0 + c000dc1e: 6318 ld a4,0(a4) + c000dc20: 078e slli a5,a5,0x3 + c000dc22: ff8d3683 ld a3,-8(s10) + c000dc26: 97ba add a5,a5,a4 + c000dc28: 639c ld a5,0(a5) + c000dc2a: 8526 mv a0,s1 + c000dc2c: 1d41 addi s10,s10,-16 + c000dc2e: 6f8c ld a1,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17050 pc += 2; - c000db42: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17043 + c000dc30: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17051 set_value(ctx, var_refs[idx]->pvalue, sp[-1]); - c000db46: c3cfa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17046 + c000dc34: c3cfa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17054 BREAK; - c000db4a: 92ffd06f j c000b478 + c000dc38: 92ffd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000db4e: 002bc783 lbu a5,2(s7) - c000db52: 001bc703 lbu a4,1(s7) + c000dc3c: 002bc783 lbu a5,2(s7) + c000dc40: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17060 set_value(ctx, var_refs[idx]->pvalue, JS_DupValue(ctx, sp[-1])); - c000db56: ff0d3503 ld a0,-16(s10) + c000dc44: ff0d3503 ld a0,-16(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000db5a: 07a2 slli a5,a5,0x8 + c000dc48: 07a2 slli a5,a5,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17052 - c000db5c: 8fd9 or a5,a5,a4 - c000db5e: 777d lui a4,0xfffff - c000db60: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000db64: 9722 add a4,a4,s0 - c000db66: 6318 ld a4,0(a4) - c000db68: 078e slli a5,a5,0x3 - c000db6a: ff8d3583 ld a1,-8(s10) - c000db6e: 97ba add a5,a5,a4 - c000db70: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17060 + c000dc4a: 8fd9 or a5,a5,a4 + c000dc4c: 777d lui a4,0xfffff + c000dc4e: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dc52: 9722 add a4,a4,s0 + c000dc54: 6318 ld a4,0(a4) + c000dc56: 078e slli a5,a5,0x3 + c000dc58: ff8d3583 ld a1,-8(s10) + c000dc5c: 97ba add a5,a5,a4 + c000dc5e: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17059 pc += 2; - c000db72: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17052 + c000dc60: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17060 set_value(ctx, var_refs[idx]->pvalue, JS_DupValue(ctx, sp[-1])); - c000db76: 0187ba03 ld s4,24(a5) - c000db7a: af5f80ef jal ra,c000666e - c000db7e: 777d lui a4,0xfffff - c000db80: 7d070793 addi a5,a4,2000 # fffffffffffff7d0 <_ebss+0xffffffff3fefe6aa> - c000db84: 97a2 add a5,a5,s0 - c000db86: e388 sd a0,0(a5) - c000db88: 7d870793 addi a5,a4,2008 - c000db8c: 97a2 add a5,a5,s0 - c000db8e: 862a mv a2,a0 - c000db90: 86ae mv a3,a1 - c000db92: e38c sd a1,0(a5) - c000db94: 8526 mv a0,s1 - c000db96: 85d2 mv a1,s4 - c000db98: beafa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17054 + c000dc64: 0187ba03 ld s4,24(a5) + c000dc68: af5f80ef jal ra,c000675c + c000dc6c: 777d lui a4,0xfffff + c000dc6e: 7d070793 addi a5,a4,2000 # fffffffffffff7d0 <_ebss+0xffffffff3fefe6aa> + c000dc72: 97a2 add a5,a5,s0 + c000dc74: e388 sd a0,0(a5) + c000dc76: 7d870793 addi a5,a4,2008 + c000dc7a: 97a2 add a5,a5,s0 + c000dc7c: 862a mv a2,a0 + c000dc7e: 86ae mv a3,a1 + c000dc80: e38c sd a1,0(a5) + c000dc82: 8526 mv a0,s1 + c000dc84: 85d2 mv a1,s4 + c000dc86: beafa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17062 BREAK; - c000db9c: 8ddfd06f j c000b478 + c000dc8a: 8ddfd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dba0: 002bc603 lbu a2,2(s7) + c000dc8e: 002bc603 lbu a2,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17069 val = *var_refs[idx]->pvalue; - c000dba4: 777d lui a4,0xfffff + c000dc92: 777d lui a4,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dba6: 001bc783 lbu a5,1(s7) + c000dc94: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17061 - c000dbaa: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000dbae: 9722 add a4,a4,s0 - c000dbb0: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17069 + c000dc98: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dc9c: 9722 add a4,a4,s0 + c000dc9e: 6318 ld a4,0(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dbb2: 0622 slli a2,a2,0x8 - c000dbb4: 8e5d or a2,a2,a5 + c000dca0: 0622 slli a2,a2,0x8 + c000dca2: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17061 - c000dbb6: 00361793 slli a5,a2,0x3 - c000dbba: 97ba add a5,a5,a4 - c000dbbc: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17069 + c000dca4: 00361793 slli a5,a2,0x3 + c000dca8: 97ba add a5,a5,a4 + c000dcaa: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17068 pc += 2; - c000dbbe: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17061 + c000dcac: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17069 val = *var_refs[idx]->pvalue; - c000dbc2: 6f9c ld a5,24(a5) - c000dbc4: 6388 ld a0,0(a5) - c000dbc6: eea43823 sd a0,-272(s0) - c000dbca: 678c ld a1,8(a5) - c000dbcc: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17062 + c000dcb0: 6f9c ld a5,24(a5) + c000dcb2: 6388 ld a0,0(a5) + c000dcb4: eea43823 sd a0,-272(s0) + c000dcb8: 678c ld a1,8(a5) + c000dcba: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17070 if (unlikely(JS_IsUninitialized(val))) { - c000dbd0: 4798 lw a4,8(a5) - c000dbd2: 4791 li a5,4 - c000dbd4: 00f71963 bne a4,a5,c000dbe6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17063 + c000dcbe: 4798 lw a4,8(a5) + c000dcc0: 4791 li a5,4 + c000dcc2: 00f71963 bne a4,a5,c000dcd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17071 JS_ThrowReferenceErrorUninitialized2(ctx, b, idx, TRUE); - c000dbd8: 4685 li a3,1 - c000dbda: 85ee mv a1,s11 - c000dbdc: 8526 mv a0,s1 - c000dbde: 52d060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17064 + c000dcc6: 4685 li a3,1 + c000dcc8: 85ee mv a1,s11 + c000dcca: 8526 mv a0,s1 + c000dccc: 52d060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17072 goto exception; - c000dbe2: 9f9fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17066 + c000dcd0: 9f9fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17074 sp[0] = JS_DupValue(ctx, val); - c000dbe6: a89f80ef jal ra,c000666e - c000dbea: 00ad3023 sd a0,0(s10) - c000dbee: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17067 + c000dcd4: a89f80ef jal ra,c000675c + c000dcd8: 00ad3023 sd a0,0(s10) + c000dcdc: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17075 sp++; - c000dbf2: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17069 + c000dce0: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17077 BREAK; - c000dbf4: 885fd06f j c000b478 + c000dce2: 885fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dbf8: 002bc603 lbu a2,2(s7) + c000dce6: 002bc603 lbu a2,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17075 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17083 if (unlikely(JS_IsUninitialized(*var_refs[idx]->pvalue))) { - c000dbfc: 777d lui a4,0xfffff + c000dcea: 777d lui a4,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dbfe: 001bc783 lbu a5,1(s7) + c000dcec: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17075 - c000dc02: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000dc06: 9722 add a4,a4,s0 - c000dc08: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17083 + c000dcf0: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dcf4: 9722 add a4,a4,s0 + c000dcf6: 6318 ld a4,0(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc0a: 0622 slli a2,a2,0x8 - c000dc0c: 8e5d or a2,a2,a5 + c000dcf8: 0622 slli a2,a2,0x8 + c000dcfa: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17075 - c000dc0e: 00361793 slli a5,a2,0x3 - c000dc12: 97ba add a5,a5,a4 - c000dc14: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17083 + c000dcfc: 00361793 slli a5,a2,0x3 + c000dd00: 97ba add a5,a5,a4 + c000dd02: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17082 pc += 2; - c000dc16: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17075 + c000dd04: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17083 if (unlikely(JS_IsUninitialized(*var_refs[idx]->pvalue))) { - c000dc1a: 6f8c ld a1,24(a5) - c000dc1c: 4791 li a5,4 - c000dc1e: 4598 lw a4,8(a1) - c000dc20: 00f71963 bne a4,a5,c000dc32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17076 + c000dd08: 6f8c ld a1,24(a5) + c000dd0a: 4791 li a5,4 + c000dd0c: 4598 lw a4,8(a1) + c000dd0e: 00f71963 bne a4,a5,c000dd20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17084 JS_ThrowReferenceErrorUninitialized2(ctx, b, idx, TRUE); - c000dc24: 4685 li a3,1 - c000dc26: 85ee mv a1,s11 - c000dc28: 8526 mv a0,s1 - c000dc2a: 4e1060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17077 + c000dd12: 4685 li a3,1 + c000dd14: 85ee mv a1,s11 + c000dd16: 8526 mv a0,s1 + c000dd18: 4e1060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17085 goto exception; - c000dc2e: 9adfd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17079 + c000dd1c: 9adfd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17087 set_value(ctx, var_refs[idx]->pvalue, sp[-1]); - c000dc32: ff0d3603 ld a2,-16(s10) - c000dc36: ff8d3683 ld a3,-8(s10) - c000dc3a: 8526 mv a0,s1 - c000dc3c: 1d41 addi s10,s10,-16 - c000dc3e: b44fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17082 + c000dd20: ff0d3603 ld a2,-16(s10) + c000dd24: ff8d3683 ld a3,-8(s10) + c000dd28: 8526 mv a0,s1 + c000dd2a: 1d41 addi s10,s10,-16 + c000dd2c: b44fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17090 BREAK; - c000dc42: 837fd06f j c000b478 + c000dd30: 837fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc46: 002bc603 lbu a2,2(s7) + c000dd34: 002bc603 lbu a2,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17096 if (unlikely(!JS_IsUninitialized(*var_refs[idx]->pvalue))) { - c000dc4a: 777d lui a4,0xfffff + c000dd38: 777d lui a4,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc4c: 001bc783 lbu a5,1(s7) + c000dd3a: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17088 - c000dc50: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000dc54: 9722 add a4,a4,s0 - c000dc56: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17096 + c000dd3e: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dd42: 9722 add a4,a4,s0 + c000dd44: 6318 ld a4,0(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc58: 0622 slli a2,a2,0x8 - c000dc5a: 8e5d or a2,a2,a5 + c000dd46: 0622 slli a2,a2,0x8 + c000dd48: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17088 - c000dc5c: 00361793 slli a5,a2,0x3 - c000dc60: 97ba add a5,a5,a4 - c000dc62: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17087 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17096 + c000dd4a: 00361793 slli a5,a2,0x3 + c000dd4e: 97ba add a5,a5,a4 + c000dd50: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17095 pc += 2; - c000dc64: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17088 + c000dd52: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17096 if (unlikely(!JS_IsUninitialized(*var_refs[idx]->pvalue))) { - c000dc68: 6f8c ld a1,24(a5) - c000dc6a: 4791 li a5,4 - c000dc6c: 4598 lw a4,8(a1) - c000dc6e: 00f70963 beq a4,a5,c000dc80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17089 + c000dd56: 6f8c ld a1,24(a5) + c000dd58: 4791 li a5,4 + c000dd5a: 4598 lw a4,8(a1) + c000dd5c: 00f70963 beq a4,a5,c000dd6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17097 JS_ThrowReferenceErrorUninitialized2(ctx, b, idx, TRUE); - c000dc72: 4685 li a3,1 - c000dc74: 85ee mv a1,s11 - c000dc76: 8526 mv a0,s1 - c000dc78: 493060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17090 + c000dd60: 4685 li a3,1 + c000dd62: 85ee mv a1,s11 + c000dd64: 8526 mv a0,s1 + c000dd66: 493060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17098 goto exception; - c000dc7c: 95ffd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17092 + c000dd6a: 95ffd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17100 set_value(ctx, var_refs[idx]->pvalue, sp[-1]); - c000dc80: ff0d3603 ld a2,-16(s10) - c000dc84: ff8d3683 ld a3,-8(s10) - c000dc88: 8526 mv a0,s1 - c000dc8a: 1d41 addi s10,s10,-16 - c000dc8c: af6fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17095 + c000dd6e: ff0d3603 ld a2,-16(s10) + c000dd72: ff8d3683 ld a3,-8(s10) + c000dd76: 8526 mv a0,s1 + c000dd78: 1d41 addi s10,s10,-16 + c000dd7a: af6fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17103 BREAK; - c000dc90: fe8fd06f j c000b478 + c000dd7e: fe8fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc94: 002bc583 lbu a1,2(s7) - c000dc98: 001bc783 lbu a5,1(s7) + c000dd82: 002bc583 lbu a1,2(s7) + c000dd86: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 set_value(ctx, &var_buf[idx], JS_UNINITIALIZED); - c000dc9c: 4601 li a2,0 + c000dd8a: 4601 li a2,0 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dc9e: 05a2 slli a1,a1,0x8 + c000dd8c: 05a2 slli a1,a1,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17101 - c000dca0: 8ddd or a1,a1,a5 - c000dca2: 4791 li a5,4 - c000dca4: eef43c23 sd a5,-264(s0) - c000dca8: 77fd lui a5,0xfffff - c000dcaa: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000dcae: 97a2 add a5,a5,s0 - c000dcb0: 639c ld a5,0(a5) - c000dcb2: 0592 slli a1,a1,0x4 - c000dcb4: 4691 li a3,4 - c000dcb6: 95be add a1,a1,a5 - c000dcb8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 + c000dd8e: 8ddd or a1,a1,a5 + c000dd90: 4791 li a5,4 + c000dd92: eef43c23 sd a5,-264(s0) + c000dd96: 77fd lui a5,0xfffff + c000dd98: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000dd9c: 97a2 add a5,a5,s0 + c000dd9e: 639c ld a5,0(a5) + c000dda0: 0592 slli a1,a1,0x4 + c000dda2: 4691 li a3,4 + c000dda4: 95be add a1,a1,a5 + c000dda6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17108 pc += 2; - c000dcba: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17101 + c000dda8: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 set_value(ctx, &var_buf[idx], JS_UNINITIALIZED); - c000dcbe: ee043823 sd zero,-272(s0) - c000dcc2: ac0fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17103 + c000ddac: ee043823 sd zero,-272(s0) + c000ddb0: ac0fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17111 BREAK; - c000dcc6: fb2fd06f j c000b478 + c000ddb4: fb2fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dcca: 002bc603 lbu a2,2(s7) + c000ddb8: 002bc603 lbu a2,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17117 if (unlikely(JS_IsUninitialized(var_buf[idx]))) { - c000dcce: 777d lui a4,0xfffff + c000ddbc: 777d lui a4,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dcd0: 001bc783 lbu a5,1(s7) + c000ddbe: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 - c000dcd4: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000dcd8: 9722 add a4,a4,s0 - c000dcda: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17117 + c000ddc2: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000ddc6: 9722 add a4,a4,s0 + c000ddc8: 6318 ld a4,0(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dcdc: 0622 slli a2,a2,0x8 - c000dcde: 8e5d or a2,a2,a5 + c000ddca: 0622 slli a2,a2,0x8 + c000ddcc: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 - c000dce0: 00461793 slli a5,a2,0x4 - c000dce4: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17117 + c000ddce: 00461793 slli a5,a2,0x4 + c000ddd2: 97ba add a5,a5,a4 JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_UNINITIALIZED); - c000dce6: 678c ld a1,8(a5) + c000ddd4: 678c ld a1,8(a5) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 - c000dce8: 4711 li a4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17117 + c000ddd6: 4711 li a4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17116 pc += 2; - c000dcea: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17109 + c000ddd8: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17117 if (unlikely(JS_IsUninitialized(var_buf[idx]))) { - c000dcee: 0005869b sext.w a3,a1 - c000dcf2: 00e69963 bne a3,a4,c000dd04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17110 + c000dddc: 0005869b sext.w a3,a1 + c000dde0: 00e69963 bne a3,a4,c000ddf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17118 JS_ThrowReferenceErrorUninitialized2(ctx, b, idx, FALSE); - c000dcf6: 4681 li a3,0 - c000dcf8: 85ee mv a1,s11 - c000dcfa: 8526 mv a0,s1 - c000dcfc: 40f060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17111 + c000dde4: 4681 li a3,0 + c000dde6: 85ee mv a1,s11 + c000dde8: 8526 mv a0,s1 + c000ddea: 40f060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17119 goto exception; - c000dd00: 8dbfd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17113 + c000ddee: 8dbfd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17121 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000dd04: 6388 ld a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17114 + c000ddf2: 6388 ld a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 sp++; - c000dd06: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17113 + c000ddf4: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17121 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000dd08: 967f80ef jal ra,c000666e - c000dd0c: fead3823 sd a0,-16(s10) - c000dd10: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17116 + c000ddf6: 967f80ef jal ra,c000675c + c000ddfa: fead3823 sd a0,-16(s10) + c000ddfe: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17124 BREAK; - c000dd14: f64fd06f j c000b478 + c000de02: f64fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dd18: 002bc603 lbu a2,2(s7) + c000de06: 002bc603 lbu a2,2(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17130 if (unlikely(JS_IsUninitialized(var_buf[idx]))) { - c000dd1c: 777d lui a4,0xfffff + c000de0a: 777d lui a4,0xfffff get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dd1e: 001bc783 lbu a5,1(s7) + c000de0c: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 - c000dd22: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000dd26: 9722 add a4,a4,s0 - c000dd28: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17130 + c000de10: 66870713 addi a4,a4,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000de14: 9722 add a4,a4,s0 + c000de16: 6318 ld a4,0(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dd2a: 0622 slli a2,a2,0x8 - c000dd2c: 8e5d or a2,a2,a5 + c000de18: 0622 slli a2,a2,0x8 + c000de1a: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 - c000dd2e: 00461793 slli a5,a2,0x4 - c000dd32: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17130 + c000de1c: 00461793 slli a5,a2,0x4 + c000de20: 97ba add a5,a5,a4 JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 - c000dd34: 678c ld a1,8(a5) + c000de22: 678c ld a1,8(a5) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 - c000dd36: 4711 li a4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17130 + c000de24: 4711 li a4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17129 pc += 2; - c000dd38: 003b8913 addi s2,s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17122 + c000de26: 003b8913 addi s2,s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17130 if (unlikely(JS_IsUninitialized(var_buf[idx]))) { - c000dd3c: 0005869b sext.w a3,a1 - c000dd40: 00e69d63 bne a3,a4,c000dd5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17123 + c000de2a: 0005869b sext.w a3,a1 + c000de2e: 00e69d63 bne a3,a4,c000de48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17131 JS_ThrowReferenceErrorUninitialized2(caller_ctx, b, idx, FALSE); - c000dd44: 77fd lui a5,0xfffff - c000dd46: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> - c000dd4a: 97a2 add a5,a5,s0 - c000dd4c: 6388 ld a0,0(a5) - c000dd4e: 4681 li a3,0 - c000dd50: 85ee mv a1,s11 - c000dd52: 3b9060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17124 + c000de32: 77fd lui a5,0xfffff + c000de34: 61078793 addi a5,a5,1552 # fffffffffffff610 <_ebss+0xffffffff3fefe4ea> + c000de38: 97a2 add a5,a5,s0 + c000de3a: 6388 ld a0,0(a5) + c000de3c: 4681 li a3,0 + c000de3e: 85ee mv a1,s11 + c000de40: 3b9060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17132 goto exception; - c000dd56: 885fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17126 + c000de44: 885fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17134 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000dd5a: 6388 ld a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17127 + c000de48: 6388 ld a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17135 sp++; - c000dd5c: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17126 + c000de4a: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17134 sp[0] = JS_DupValue(ctx, var_buf[idx]); - c000dd5e: 911f80ef jal ra,c000666e - c000dd62: fead3823 sd a0,-16(s10) - c000dd66: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17129 + c000de4c: 911f80ef jal ra,c000675c + c000de50: fead3823 sd a0,-16(s10) + c000de54: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17137 BREAK; - c000dd6a: f0efd06f j c000b478 + c000de58: f0efd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dd6e: 002bc603 lbu a2,2(s7) - c000dd72: 001bc783 lbu a5,1(s7) + c000de5c: 002bc603 lbu a2,2(s7) + c000de60: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17142 pc += 2; - c000dd76: 003b8913 addi s2,s7,3 + c000de64: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000dd7a: 0622 slli a2,a2,0x8 - c000dd7c: 8e5d or a2,a2,a5 + c000de68: 0622 slli a2,a2,0x8 + c000de6a: 8e5d or a2,a2,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17143 if (unlikely(JS_IsUninitialized(var_buf[idx]))) { - c000dd7e: 77fd lui a5,0xfffff - c000dd80: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000dd84: 97a2 add a5,a5,s0 - c000dd86: 639c ld a5,0(a5) - c000dd88: 00461593 slli a1,a2,0x4 - c000dd8c: 95be add a1,a1,a5 - c000dd8e: 4598 lw a4,8(a1) - c000dd90: 4791 li a5,4 - c000dd92: 00f71963 bne a4,a5,c000dda4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17136 + c000de6c: 77fd lui a5,0xfffff + c000de6e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000de72: 97a2 add a5,a5,s0 + c000de74: 639c ld a5,0(a5) + c000de76: 00461593 slli a1,a2,0x4 + c000de7a: 95be add a1,a1,a5 + c000de7c: 4598 lw a4,8(a1) + c000de7e: 4791 li a5,4 + c000de80: 00f71963 bne a4,a5,c000de92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17144 JS_ThrowReferenceErrorUninitialized2(ctx, b, idx, FALSE); - c000dd96: 4681 li a3,0 - c000dd98: 85ee mv a1,s11 - c000dd9a: 8526 mv a0,s1 - c000dd9c: 36f060ef jal ra,c001490a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17137 + c000de84: 4681 li a3,0 + c000de86: 85ee mv a1,s11 + c000de88: 8526 mv a0,s1 + c000de8a: 36f060ef jal ra,c00149f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17145 goto exception; - c000dda0: 83bfd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17139 + c000de8e: 83bfd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17147 set_value(ctx, &var_buf[idx], sp[-1]); - c000dda4: ff0d3603 ld a2,-16(s10) - c000dda8: ff8d3683 ld a3,-8(s10) - c000ddac: 8526 mv a0,s1 - c000ddae: 1d41 addi s10,s10,-16 - c000ddb0: 9d2fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17142 + c000de92: ff0d3603 ld a2,-16(s10) + c000de96: ff8d3683 ld a3,-8(s10) + c000de9a: 8526 mv a0,s1 + c000de9c: 1d41 addi s10,s10,-16 + c000de9e: 9d2fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17150 BREAK; - c000ddb4: ec4fd06f j c000b478 + c000dea2: ec4fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000ddb8: 002bc583 lbu a1,2(s7) - c000ddbc: 001bc783 lbu a5,1(s7) + c000dea6: 002bc583 lbu a1,2(s7) + c000deaa: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17147 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17155 pc += 2; - c000ddc0: 003b8913 addi s2,s7,3 + c000deae: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000ddc4: 05a2 slli a1,a1,0x8 + c000deb2: 05a2 slli a1,a1,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17156 if (unlikely(!JS_IsUninitialized(var_buf[idx]))) { - c000ddc6: 8ddd or a1,a1,a5 - c000ddc8: 77fd lui a5,0xfffff - c000ddca: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000ddce: 97a2 add a5,a5,s0 - c000ddd0: 639c ld a5,0(a5) - c000ddd2: 0592 slli a1,a1,0x4 - c000ddd4: 95be add a1,a1,a5 - c000ddd6: 4598 lw a4,8(a1) - c000ddd8: 4791 li a5,4 - c000ddda: 00f70b63 beq a4,a5,c000ddf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17149 + c000deb4: 8ddd or a1,a1,a5 + c000deb6: 77fd lui a5,0xfffff + c000deb8: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c000debc: 97a2 add a5,a5,s0 + c000debe: 639c ld a5,0(a5) + c000dec0: 0592 slli a1,a1,0x4 + c000dec2: 95be add a1,a1,a5 + c000dec4: 4598 lw a4,8(a1) + c000dec6: 4791 li a5,4 + c000dec8: 00f70b63 beq a4,a5,c000dede +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17157 JS_ThrowReferenceError(ctx, "'this' can be initialized only once"); - c000ddde: 8526 mv a0,s1 - c000dde0: 0004f597 auipc a1,0x4f - c000dde4: 3b058593 addi a1,a1,944 # c005d190 - c000dde8: 2c7060ef jal ra,c00148ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17150 + c000decc: 8526 mv a0,s1 + c000dece: 0004f597 auipc a1,0x4f + c000ded2: 4f258593 addi a1,a1,1266 # c005d3c0 + c000ded6: 2c7060ef jal ra,c001499c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17158 goto exception; - c000ddec: feefd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17152 + c000deda: feefd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17160 set_value(ctx, &var_buf[idx], sp[-1]); - c000ddf0: ff0d3603 ld a2,-16(s10) - c000ddf4: ff8d3683 ld a3,-8(s10) - c000ddf8: 8526 mv a0,s1 - c000ddfa: 1d41 addi s10,s10,-16 - c000ddfc: 986fa0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17155 + c000dede: ff0d3603 ld a2,-16(s10) + c000dee2: ff8d3683 ld a3,-8(s10) + c000dee6: 8526 mv a0,s1 + c000dee8: 1d41 addi s10,s10,-16 + c000deea: 986fa0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17163 BREAK; - c000de00: e78fd06f j c000b478 + c000deee: e78fd06f j c000b566 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000de04: 002bca03 lbu s4,2(s7) - c000de08: 001bc783 lbu a5,1(s7) + c000def2: 002bca03 lbu s4,2(s7) + c000def6: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17168 pc += 2; - c000de0c: 003b8913 addi s2,s7,3 + c000defa: 003b8913 addi s2,s7,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000de10: 0a22 slli s4,s4,0x8 - c000de12: 00fa6a33 or s4,s4,a5 + c000defe: 0a22 slli s4,s4,0x8 + c000df00: 00fa6a33 or s4,s4,a5 close_lexical_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15930 list_for_each_safe(el, el1, &sf->var_ref_list) { - c000de16: 77fd lui a5,0xfffff - c000de18: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000de1c: 97a2 add a5,a5,s0 - c000de1e: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15928 + c000df04: 77fd lui a5,0xfffff + c000df06: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000df0a: 97a2 add a5,a5,s0 + c000df0c: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15936 var_ref->value = JS_DupValue(ctx, sf->var_buf[var_idx]); - c000de20: 004a1b93 slli s7,s4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15924 + c000df0e: 004a1b93 slli s7,s4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15932 if (var_idx == var_ref->var_idx && var_ref->is_arg == is_arg) { - c000de24: 2a01 sext.w s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15922 + c000df12: 2a01 sext.w s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15930 list_for_each_safe(el, el1, &sf->var_ref_list) { - c000de26: 0307bc03 ld s8,48(a5) - c000de2a: 77fd lui a5,0xfffff - c000de2c: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000de30: 97a2 add a5,a5,s0 - c000de32: 639c ld a5,0(a5) - c000de34: 008c3a83 ld s5,8(s8) - c000de38: 02878b13 addi s6,a5,40 - c000de3c: 016c1463 bne s8,s6,c000de44 - c000de40: e38fd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15924 + c000df14: 0307bc03 ld s8,48(a5) + c000df18: 77fd lui a5,0xfffff + c000df1a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000df1e: 97a2 add a5,a5,s0 + c000df20: 639c ld a5,0(a5) + c000df22: 008c3a83 ld s5,8(s8) + c000df26: 02878b13 addi s6,a5,40 + c000df2a: 016c1463 bne s8,s6,c000df32 + c000df2e: e38fd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15932 if (var_idx == var_ref->var_idx && var_ref->is_arg == is_arg) { - c000de44: fe6c5783 lhu a5,-26(s8) - c000de48: 05479763 bne a5,s4,c000de96 - c000de4c: fe0c3783 ld a5,-32(s8) - c000de50: 93a5 srli a5,a5,0x29 - c000de52: 8b85 andi a5,a5,1 - c000de54: e3a9 bnez a5,c000de96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15925 + c000df32: fe6c5783 lhu a5,-26(s8) + c000df36: 05479763 bne a5,s4,c000df84 + c000df3a: fe0c3783 ld a5,-32(s8) + c000df3e: 93a5 srli a5,a5,0x29 + c000df40: 8b85 andi a5,a5,1 + c000df42: e3a9 bnez a5,c000df84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15933 list_del(&var_ref->var_ref_link); - c000de56: 8562 mv a0,s8 - c000de58: a02f60ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15926 + c000df44: 8562 mv a0,s8 + c000df46: 914f60ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15934 if (var_ref->async_func) - c000de5c: 010c3583 ld a1,16(s8) - c000de60: c581 beqz a1,c000de68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15927 + c000df4a: 010c3583 ld a1,16(s8) + c000df4e: c581 beqz a1,c000df56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15935 async_func_free(ctx->rt, var_ref->async_func); - c000de62: 6c88 ld a0,24(s1) - c000de64: e4efa0ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15928 + c000df50: 6c88 ld a0,24(s1) + c000df52: e4efa0ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15936 var_ref->value = JS_DupValue(ctx, sf->var_buf[var_idx]); - c000de68: 77fd lui a5,0xfffff - c000de6a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000de6e: 97a2 add a5,a5,s0 - c000de70: 639c ld a5,0(a5) - c000de72: 739c ld a5,32(a5) - c000de74: 97de add a5,a5,s7 - c000de76: 6388 ld a0,0(a5) - c000de78: 678c ld a1,8(a5) - c000de7a: ff4f80ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15931 + c000df56: 77fd lui a5,0xfffff + c000df58: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000df5c: 97a2 add a5,a5,s0 + c000df5e: 639c ld a5,0(a5) + c000df60: 739c ld a5,32(a5) + c000df62: 97de add a5,a5,s7 + c000df64: 6388 ld a0,0(a5) + c000df66: 678c ld a1,8(a5) + c000df68: ff4f80ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15939 var_ref->is_detached = TRUE; - c000de7e: fe5c4783 lbu a5,-27(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15928 + c000df6c: fe5c4783 lbu a5,-27(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15936 var_ref->value = JS_DupValue(ctx, sf->var_buf[var_idx]); - c000de82: 00ac3023 sd a0,0(s8) - c000de86: 00bc3423 sd a1,8(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15931 + c000df70: 00ac3023 sd a0,0(s8) + c000df74: 00bc3423 sd a1,8(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15939 var_ref->is_detached = TRUE; - c000de8a: 0017e793 ori a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15929 + c000df78: 0017e793 ori a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15937 var_ref->pvalue = &var_ref->value; - c000de8e: ff8c3c23 sd s8,-8(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15931 + c000df7c: ff8c3c23 sd s8,-8(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15939 var_ref->is_detached = TRUE; - c000de92: fefc02a3 sb a5,-27(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15922 + c000df80: fefc02a3 sb a5,-27(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15930 list_for_each_safe(el, el1, &sf->var_ref_list) { - c000de96: 8c56 mv s8,s5 - c000de98: 008aba83 ld s5,8(s5) - c000de9c: b745 j c000de3c + c000df84: 8c56 mv s8,s5 + c000df86: 008aba83 ld s5,8(s5) + c000df8a: b745 j c000df2a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000de9e: 002bc783 lbu a5,2(s7) - c000dea2: 001bca03 lbu s4,1(s7) + c000df8c: 002bc783 lbu a5,2(s7) + c000df90: 001bca03 lbu s4,1(s7) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000dea6: 006bcc03 lbu s8,6(s7) + c000df94: 006bcc03 lbu s8,6(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000deaa: 07a2 slli a5,a5,0x8 - c000deac: 0147e7b3 or a5,a5,s4 - c000deb0: 003bca03 lbu s4,3(s7) + c000df98: 07a2 slli a5,a5,0x8 + c000df9a: 0147e7b3 or a5,a5,s4 + c000df9e: 003bca03 lbu s4,3(s7) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000deb4: 0c22 slli s8,s8,0x8 + c000dfa2: 0c22 slli s8,s8,0x8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 *sp++ = JS_NewObjectProto(ctx, JS_NULL); - c000deb6: 4581 li a1,0 + c000dfa4: 4581 li a1,0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000deb8: 0a42 slli s4,s4,0x10 - c000deba: 00fa67b3 or a5,s4,a5 - c000debe: 004bca03 lbu s4,4(s7) + c000dfa6: 0a42 slli s4,s4,0x10 + c000dfa8: 00fa67b3 or a5,s4,a5 + c000dfac: 004bca03 lbu s4,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17176 - c000dec2: 4609 li a2,2 - c000dec4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 + c000dfb0: 4609 li a2,2 + c000dfb2: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000dec6: 0a62 slli s4,s4,0x18 - c000dec8: 00fa6a33 or s4,s4,a5 + c000dfb4: 0a62 slli s4,s4,0x18 + c000dfb6: 00fa6a33 or s4,s4,a5 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000decc: 005bc783 lbu a5,5(s7) + c000dfba: 005bc783 lbu a5,5(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17176 - c000ded0: ee043823 sd zero,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 + c000dfbe: ee043823 sd zero,-272(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000ded4: 2a01 sext.w s4,s4 + c000dfc2: 2a01 sext.w s4,s4 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000ded6: 00fc6c33 or s8,s8,a5 + c000dfc4: 00fc6c33 or s8,s8,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17176 - c000deda: 4789 li a5,2 - c000dedc: eef43c23 sd a5,-264(s0) - c000dee0: 64f080ef jal ra,c0016d2e - c000dee4: 00bd3423 sd a1,8(s10) - c000dee8: 00ad3023 sd a0,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17177 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 + c000dfc8: 4789 li a5,2 + c000dfca: eef43c23 sd a5,-264(s0) + c000dfce: 731080ef jal ra,c0016efe + c000dfd2: 00bd3423 sd a1,8(s10) + c000dfd6: 00ad3023 sd a0,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17185 if (unlikely(JS_IsException(sp[-1]))) - c000deec: 2581 sext.w a1,a1 - c000deee: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17175 + c000dfda: 2581 sext.w a1,a1 + c000dfdc: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17183 pc += 6; - c000def0: 007b8913 addi s2,s7,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17176 + c000dfde: 007b8913 addi s2,s7,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 *sp++ = JS_NewObjectProto(ctx, JS_NULL); - c000def4: 010d0b13 addi s6,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17177 + c000dfe2: 010d0b13 addi s6,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17185 if (unlikely(JS_IsException(sp[-1]))) - c000def8: 06f58563 beq a1,a5,c000df62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17179 + c000dfe6: 06f58563 beq a1,a5,c000e050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17187 if (opcode == OP_make_var_ref_ref) { - c000defc: 07c00793 li a5,124 - c000df00: 04fa9263 bne s5,a5,c000df44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17180 + c000dfea: 07c00793 li a5,124 + c000dfee: 04fa9263 bne s5,a5,c000e032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17188 var_ref = var_refs[idx]; - c000df04: 77fd lui a5,0xfffff - c000df06: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000df0a: 97a2 add a5,a5,s0 - c000df0c: 639c ld a5,0(a5) - c000df0e: 0c0e slli s8,s8,0x3 - c000df10: 9c3e add s8,s8,a5 - c000df12: 000c3a83 ld s5,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17181 + c000dff2: 77fd lui a5,0xfffff + c000dff4: 65078793 addi a5,a5,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000dff8: 97a2 add a5,a5,s0 + c000dffa: 639c ld a5,0(a5) + c000dffc: 0c0e slli s8,s8,0x3 + c000dffe: 9c3e add s8,s8,a5 + c000e000: 000c3a83 ld s5,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17189 var_ref->header.ref_count++; - c000df16: 000aa783 lw a5,0(s5) - c000df1a: 2785 addiw a5,a5,1 - c000df1c: 00faa023 sw a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17187 + c000e004: 000aa783 lw a5,0(s5) + c000e008: 2785 addiw a5,a5,1 + c000e00a: 00faa023 sw a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17195 pr = add_property(ctx, JS_VALUE_GET_OBJ(sp[-1]), atom, - c000df20: 000d3583 ld a1,0(s10) - c000df24: 02200693 li a3,34 - c000df28: 8652 mv a2,s4 - c000df2a: 8526 mv a0,s1 - c000df2c: 49a080ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17189 + c000e00e: 000d3583 ld a1,0(s10) + c000e012: 02200693 li a3,34 + c000e016: 8652 mv a2,s4 + c000e018: 8526 mv a0,s1 + c000e01a: 57c080ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17197 if (!pr) { - c000df30: ed05 bnez a0,c000df68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17190 + c000e01e: ed05 bnez a0,c000e056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17198 free_var_ref(rt, var_ref); - c000df32: 77fd lui a5,0xfffff - c000df34: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c000df38: 97a2 add a5,a5,s0 - c000df3a: 6388 ld a0,0(a5) - c000df3c: 85d6 mv a1,s5 - c000df3e: 871fa0ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17191 + c000e020: 77fd lui a5,0xfffff + c000e022: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c000e026: 97a2 add a5,a5,s0 + c000e028: 6388 ld a0,0(a5) + c000e02a: 85d6 mv a1,s5 + c000e02c: 871fa0ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17199 goto exception; - c000df42: a005 j c000df62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17183 + c000e030: a005 j c000e050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17191 var_ref = get_var_ref(ctx, sf, idx, opcode == OP_make_arg_ref); - c000df44: 77fd lui a5,0xfffff - c000df46: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000df4a: 97a2 add a5,a5,s0 - c000df4c: 638c ld a1,0(a5) - c000df4e: f85a8693 addi a3,s5,-123 - c000df52: 0016b693 seqz a3,a3 - c000df56: 8662 mv a2,s8 - c000df58: 8526 mv a0,s1 - c000df5a: 56f060ef jal ra,c0014cc8 - c000df5e: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17184 + c000e032: 77fd lui a5,0xfffff + c000e034: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000e038: 97a2 add a5,a5,s0 + c000e03a: 638c ld a1,0(a5) + c000e03c: f85a8693 addi a3,s5,-123 + c000e040: 0016b693 seqz a3,a3 + c000e044: 8662 mv a2,s8 + c000e046: 8526 mv a0,s1 + c000e048: 651060ef jal ra,c0014e98 + c000e04c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17192 if (!var_ref) - c000df60: f161 bnez a0,c000df20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17178 (discriminator 1) + c000e04e: f161 bnez a0,c000e00e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17186 (discriminator 1) goto exception; - c000df62: 8d5a mv s10,s6 - c000df64: e76fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17193 + c000e050: 8d5a mv s10,s6 + c000e052: e76fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17201 pr->u.var_ref = var_ref; - c000df68: 01553023 sd s5,0(a0) # 4000000 <__clzdi2-0xbc000000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17194 + c000e056: 01553023 sd s5,0(a0) # 4000000 <__clzdi2-0xbc000000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17202 *sp++ = JS_AtomToValue(ctx, atom); - c000df6c: 85d2 mv a1,s4 - c000df6e: 8526 mv a0,s1 - c000df70: 3c30b0ef jal ra,c0019b32 - c000df74: 020d0d13 addi s10,s10,32 - c000df78: 00ab3023 sd a0,0(s6) - c000df7c: 00bb3423 sd a1,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17196 + c000e05a: 85d2 mv a1,s4 + c000e05c: 8526 mv a0,s1 + c000e05e: 4a50b0ef jal ra,c0019d02 + c000e062: 020d0d13 addi s10,s10,32 + c000e066: 00ab3023 sd a0,0(s6) + c000e06a: 00bb3423 sd a1,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17204 BREAK; - c000df80: cf8fd06f j c000b478 + c000e06e: cf8fd06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000df84: 002bc703 lbu a4,2(s7) - c000df88: 001bc783 lbu a5,1(s7) + c000e072: 002bc703 lbu a4,2(s7) + c000e076: 001bc783 lbu a5,1(s7) JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9697 p = JS_VALUE_GET_OBJ(ctx->global_var_obj); - c000df8c: 1784b603 ld a2,376(s1) + c000e07a: 1784b603 ld a2,376(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000df90: 0722 slli a4,a4,0x8 - c000df92: 8f5d or a4,a4,a5 - c000df94: 003bc783 lbu a5,3(s7) + c000e07e: 0722 slli a4,a4,0x8 + c000e080: 8f5d or a4,a4,a5 + c000e082: 003bc783 lbu a5,3(s7) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000df98: 040005b7 lui a1,0x4000 + c000e086: 040005b7 lui a1,0x4000 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17201 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17209 pc += 4; - c000df9c: 005b8913 addi s2,s7,5 + c000e08a: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000dfa0: 07c2 slli a5,a5,0x10 - c000dfa2: 8f5d or a4,a4,a5 - c000dfa4: 004bc783 lbu a5,4(s7) + c000e08e: 07c2 slli a5,a5,0x10 + c000e090: 8f5d or a4,a4,a5 + c000e092: 004bc783 lbu a5,4(s7) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000dfa8: 15fd addi a1,a1,-1 + c000e096: 15fd addi a1,a1,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000dfaa: 07e2 slli a5,a5,0x18 - c000dfac: 8fd9 or a5,a5,a4 + c000e098: 07e2 slli a5,a5,0x18 + c000e09a: 8fd9 or a5,a5,a4 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000dfae: 6e18 ld a4,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000e09c: 6e18 ld a4,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000dfb0: 00078a1b sext.w s4,a5 - c000dfb4: 5314 lw a3,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000e09e: 00078a1b sext.w s4,a5 + c000e0a2: 5314 lw a3,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000dfb6: 8ff5 and a5,a5,a3 - c000dfb8: 0785 addi a5,a5,1 - c000dfba: 56f1 li a3,-4 - c000dfbc: 02d787b3 mul a5,a5,a3 + c000e0a4: 8ff5 and a5,a5,a3 + c000e0a6: 0785 addi a5,a5,1 + c000e0a8: 56f1 li a3,-4 + c000e0aa: 02d787b3 mul a5,a5,a3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000dfc0: 04070693 addi a3,a4,64 + c000e0ae: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000dfc4: 97ba add a5,a5,a4 - c000dfc6: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000e0b2: 97ba add a5,a5,a4 + c000e0b4: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000dfca: e39d bnez a5,c000dff0 + c000e0b8: e39d bnez a5,c000e0de JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9705 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9713 ret = JS_HasProperty(ctx, ctx->global_obj, prop); - c000dfcc: 1684b583 ld a1,360(s1) - c000dfd0: 1704b603 ld a2,368(s1) - c000dfd4: 86d2 mv a3,s4 - c000dfd6: 8526 mv a0,s1 - c000dfd8: 20b220ef jal ra,c00309e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9706 + c000e0ba: 1684b583 ld a1,360(s1) + c000e0be: 1704b603 ld a2,368(s1) + c000e0c2: 86d2 mv a3,s4 + c000e0c4: 8526 mv a0,s1 + c000e0c6: 2ed220ef jal ra,c0030bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9714 if (ret < 0) - c000dfdc: 00055463 bgez a0,c000dfe4 - c000dfe0: dfafd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9708 + c000e0ca: 00055463 bgez a0,c000e0d2 + c000e0ce: dfafd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9716 if (ret) { - c000dfe4: c949 beqz a0,c000e076 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9709 + c000e0d2: c949 beqz a0,c000e164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9717 sp[0] = JS_DupValue(ctx, ctx->global_obj); - c000dfe6: 1684b503 ld a0,360(s1) - c000dfea: 1704b583 ld a1,368(s1) - c000dfee: a095 j c000e052 + c000e0d4: 1684b503 ld a0,360(s1) + c000e0d8: 1704b583 ld a1,368(s1) + c000e0dc: a095 j c000e140 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000dff0: 00379713 slli a4,a5,0x3 - c000dff4: 1761 addi a4,a4,-8 - c000dff6: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000e0de: 00379713 slli a4,a5,0x3 + c000e0e2: 1761 addi a4,a4,-8 + c000e0e4: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000dff8: 4348 lw a0,4(a4) - c000dffa: 02aa1063 bne s4,a0,c000e01a + c000e0e6: 4348 lw a0,4(a4) + c000e0e8: 02aa1063 bne s4,a0,c000e108 JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 - c000dffe: 7214 ld a3,32(a2) - c000e000: 0792 slli a5,a5,0x4 - c000e002: 97b6 add a5,a5,a3 + c000e0ec: 7214 ld a3,32(a2) + c000e0ee: 0792 slli a5,a5,0x4 + c000e0f0: 97b6 add a5,a5,a3 JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9695 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9703 if (unlikely(JS_IsUninitialized(pr->u.value))) { - c000e004: ff87a683 lw a3,-8(a5) - c000e008: 4791 li a5,4 - c000e00a: 00f69d63 bne a3,a5,c000e024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9696 + c000e0f2: ff87a683 lw a3,-8(a5) + c000e0f6: 4791 li a5,4 + c000e0f8: 00f69d63 bne a3,a5,c000e112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9704 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c000e00e: 85d2 mv a1,s4 - c000e010: 8526 mv a0,s1 - c000e012: 0c7060ef jal ra,c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9697 + c000e0fc: 85d2 mv a1,s4 + c000e0fe: 8526 mv a0,s1 + c000e100: 0c7060ef jal ra,c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9705 return -1; - c000e016: dc4fd06f j c000b5da + c000e104: dc4fd06f j c000b6c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000e01a: 431c lw a5,0(a4) - c000e01c: 8fed and a5,a5,a1 - c000e01e: 1782 slli a5,a5,0x20 - c000e020: 9381 srli a5,a5,0x20 - c000e022: b765 j c000dfca + c000e108: 431c lw a5,0(a4) + c000e10a: 8fed and a5,a5,a1 + c000e10c: 1782 slli a5,a5,0x20 + c000e10e: 9381 srli a5,a5,0x20 + c000e110: b765 j c000e0b8 JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9707 if (unlikely(!(prs->flags & JS_PROP_WRITABLE))) { - c000e024: 431c lw a5,0(a4) - c000e026: 01a7d79b srliw a5,a5,0x1a - c000e02a: 8b89 andi a5,a5,2 - c000e02c: ef99 bnez a5,c000e04a + c000e112: 431c lw a5,0(a4) + c000e114: 01a7d79b srliw a5,a5,0x1a + c000e118: 8b89 andi a5,a5,2 + c000e11a: ef99 bnez a5,c000e138 JS_ThrowTypeErrorReadOnly(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 JS_ThrowTypeErrorAtom(ctx, "'%s' is read-only", atom); - c000e02e: 0004f697 auipc a3,0x4f - c000e032: fa268693 addi a3,a3,-94 # c005cfd0 - c000e036: 0004f617 auipc a2,0x4f - c000e03a: 09a60613 addi a2,a2,154 # c005d0d0 - c000e03e: 85d2 mv a1,s4 - c000e040: 8526 mv a0,s1 - c000e042: 490050ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6785 + c000e11c: 0004f697 auipc a3,0x4f + c000e120: 0e468693 addi a3,a3,228 # c005d200 + c000e124: 0004f617 auipc a2,0x4f + c000e128: 1dc60613 addi a2,a2,476 # c005d300 + c000e12c: 85d2 mv a1,s4 + c000e12e: 8526 mv a0,s1 + c000e130: 490050ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6793 return -1; - c000e046: d94fd06f j c000b5da + c000e134: d94fd06f j c000b6c8 JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9710 sp[0] = JS_DupValue(ctx, ctx->global_var_obj); - c000e04a: 1784b503 ld a0,376(s1) - c000e04e: 1804b583 ld a1,384(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9709 + c000e138: 1784b503 ld a0,376(s1) + c000e13c: 1804b583 ld a1,384(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9717 sp[0] = JS_DupValue(ctx, ctx->global_obj); - c000e052: e1cf80ef jal ra,c000666e - c000e056: 00ad3023 sd a0,0(s10) - c000e05a: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9714 + c000e140: e1cf80ef jal ra,c000675c + c000e144: 00ad3023 sd a0,0(s10) + c000e148: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9722 sp[1] = JS_AtomToValue(ctx, prop); - c000e05e: 85d2 mv a1,s4 - c000e060: 8526 mv a0,s1 - c000e062: 2d10b0ef jal ra,c0019b32 - c000e066: 00ad3823 sd a0,16(s10) - c000e06a: 00bd3c23 sd a1,24(s10) + c000e14c: 85d2 mv a1,s4 + c000e14e: 8526 mv a0,s1 + c000e150: 3b30b0ef jal ra,c0019d02 + c000e154: 00ad3823 sd a0,16(s10) + c000e158: 00bd3c23 sd a1,24(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17213 sp += 2; - c000e06e: 020d0d13 addi s10,s10,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17207 + c000e15c: 020d0d13 addi s10,s10,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17215 BREAK; - c000e072: c06fd06f j c000b478 + c000e160: c06fd06f j c000b566 JS_GetGlobalVarRef(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9711 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9719 sp[0] = JS_UNDEFINED; - c000e076: 478d li a5,3 - c000e078: 000d3023 sd zero,0(s10) - c000e07c: 00fd3423 sd a5,8(s10) - c000e080: bff9 j c000e05e + c000e164: 478d li a5,3 + c000e166: 000d3023 sd zero,0(s10) + c000e16a: 00fd3423 sd a5,8(s10) + c000e16e: bff9 j c000e14c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e082: 002bc703 lbu a4,2(s7) - c000e086: 001bc783 lbu a5,1(s7) + c000e170: 002bc703 lbu a4,2(s7) + c000e174: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17211 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17219 if (unlikely(js_poll_interrupts(ctx))) - c000e08a: 8526 mv a0,s1 + c000e178: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e08c: 0722 slli a4,a4,0x8 - c000e08e: 8f5d or a4,a4,a5 - c000e090: 003bc783 lbu a5,3(s7) - c000e094: 07c2 slli a5,a5,0x10 - c000e096: 8f5d or a4,a4,a5 - c000e098: 004bc783 lbu a5,4(s7) - c000e09c: 07e2 slli a5,a5,0x18 - c000e09e: 8fd9 or a5,a5,a4 + c000e17a: 0722 slli a4,a4,0x8 + c000e17c: 8f5d or a4,a4,a5 + c000e17e: 003bc783 lbu a5,3(s7) + c000e182: 07c2 slli a5,a5,0x10 + c000e184: 8f5d or a4,a4,a5 + c000e186: 004bc783 lbu a5,4(s7) + c000e18a: 07e2 slli a5,a5,0x18 + c000e18c: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17218 pc += (int32_t)get_u32(pc); - c000e0a0: 2781 sext.w a5,a5 - c000e0a2: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17211 + c000e18e: 2781 sext.w a5,a5 + c000e190: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17219 if (unlikely(js_poll_interrupts(ctx))) - c000e0a4: 157060ef jal ra,c00149fa - c000e0a8: e119 bnez a0,c000e0ae - c000e0aa: bcefd06f j c000b478 - c000e0ae: d2cfd06f j c000b5da + c000e192: 157060ef jal ra,c0014ae8 + c000e196: e119 bnez a0,c000e19c + c000e198: bcefd06f j c000b566 + c000e19c: d2cfd06f j c000b6c8 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c000e0b2: 002bc783 lbu a5,2(s7) - c000e0b6: 001bc703 lbu a4,1(s7) + c000e1a0: 002bc783 lbu a5,2(s7) + c000e1a4: 001bc703 lbu a4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17225 if (unlikely(js_poll_interrupts(ctx))) - c000e0ba: 8526 mv a0,s1 + c000e1a8: 8526 mv a0,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c000e0bc: 07a2 slli a5,a5,0x8 - c000e0be: 8fd9 or a5,a5,a4 + c000e1aa: 07a2 slli a5,a5,0x8 + c000e1ac: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17224 pc += (int16_t)get_u16(pc); - c000e0c0: 0107979b slliw a5,a5,0x10 - c000e0c4: 4107d79b sraiw a5,a5,0x10 - c000e0c8: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17217 + c000e1ae: 0107979b slliw a5,a5,0x10 + c000e1b2: 4107d79b sraiw a5,a5,0x10 + c000e1b6: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17225 if (unlikely(js_poll_interrupts(ctx))) - c000e0ca: 131060ef jal ra,c00149fa - c000e0ce: e119 bnez a0,c000e0d4 - c000e0d0: ba8fd06f j c000b478 - c000e0d4: d06fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17221 + c000e1b8: 131060ef jal ra,c0014ae8 + c000e1bc: e119 bnez a0,c000e1c2 + c000e1be: ba8fd06f j c000b566 + c000e1c2: d06fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17229 pc += (int8_t)pc[0]; - c000e0d8: 001b8783 lb a5,1(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17222 + c000e1c6: 001b8783 lb a5,1(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17230 if (unlikely(js_poll_interrupts(ctx))) - c000e0dc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17221 + c000e1ca: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17229 pc += (int8_t)pc[0]; - c000e0de: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17222 + c000e1cc: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17230 if (unlikely(js_poll_interrupts(ctx))) - c000e0e0: 11b060ef jal ra,c00149fa - c000e0e4: e119 bnez a0,c000e0ea - c000e0e6: b92fd06f j c000b478 - c000e0ea: cf0fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17231 + c000e1ce: 11b060ef jal ra,c0014ae8 + c000e1d2: e119 bnez a0,c000e1d8 + c000e1d4: b92fd06f j c000b566 + c000e1d8: cf0fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17239 op1 = sp[-1]; - c000e0ee: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17233 + c000e1dc: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17241 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e0f2: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17232 + c000e1e0: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17240 pc += 4; - c000e0f4: 005b8913 addi s2,s7,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17231 + c000e1e2: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17239 op1 = sp[-1]; - c000e0f8: eeb43823 sd a1,-272(s0) - c000e0fc: ff8d3603 ld a2,-8(s10) - c000e100: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17233 + c000e1e6: eeb43823 sd a1,-272(s0) + c000e1ea: ff8d3603 ld a2,-8(s10) + c000e1ee: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17241 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e104: ff8d2703 lw a4,-8(s10) - c000e108: 02e7ee63 bltu a5,a4,c000e144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17231 + c000e1f2: ff8d2703 lw a4,-8(s10) + c000e1f6: 02e7ee63 bltu a5,a4,c000e232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17239 op1 = sp[-1]; - c000e10c: ff0d2503 lw a0,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17238 + c000e1fa: ff0d2503 lw a0,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17246 sp--; - c000e110: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17239 + c000e1fe: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17247 if (res) { - c000e112: c10d beqz a0,c000e134 + c000e200: c10d beqz a0,c000e222 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c000e114: 002bc703 lbu a4,2(s7) - c000e118: 001bc783 lbu a5,1(s7) - c000e11c: 0722 slli a4,a4,0x8 - c000e11e: 8f5d or a4,a4,a5 - c000e120: 003bc783 lbu a5,3(s7) - c000e124: 07c2 slli a5,a5,0x10 - c000e126: 8f5d or a4,a4,a5 - c000e128: 004bc783 lbu a5,4(s7) - c000e12c: 07e2 slli a5,a5,0x18 - c000e12e: 8fd9 or a5,a5,a4 + c000e202: 002bc703 lbu a4,2(s7) + c000e206: 001bc783 lbu a5,1(s7) + c000e20a: 0722 slli a4,a4,0x8 + c000e20c: 8f5d or a4,a4,a5 + c000e20e: 003bc783 lbu a5,3(s7) + c000e212: 07c2 slli a5,a5,0x10 + c000e214: 8f5d or a4,a4,a5 + c000e216: 004bc783 lbu a5,4(s7) + c000e21a: 07e2 slli a5,a5,0x18 + c000e21c: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17248 pc += (int32_t)get_u32(pc - 4) - 4; - c000e130: 37f1 addiw a5,a5,-4 - c000e132: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17242 + c000e21e: 37f1 addiw a5,a5,-4 + c000e220: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17250 if (unlikely(js_poll_interrupts(ctx))) - c000e134: 8526 mv a0,s1 - c000e136: 0c5060ef jal ra,c00149fa - c000e13a: e119 bnez a0,c000e140 - c000e13c: b3cfd06f j c000b478 - c000e140: c9afd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17236 + c000e222: 8526 mv a0,s1 + c000e224: 0c5060ef jal ra,c0014ae8 + c000e228: e119 bnez a0,c000e22e + c000e22a: b3cfd06f j c000b566 + c000e22e: c9afd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17244 res = JS_ToBoolFree(ctx, op1); - c000e144: 8526 mv a0,s1 - c000e146: d1ff90ef jal ra,c0007e64 - c000e14a: b7d9 j c000e110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17251 + c000e232: 8526 mv a0,s1 + c000e234: d1ff90ef jal ra,c0007f52 + c000e238: b7d9 j c000e1fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17259 op1 = sp[-1]; - c000e14c: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17253 + c000e23a: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17261 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e150: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17252 + c000e23e: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17260 pc += 4; - c000e152: 005b8913 addi s2,s7,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17251 + c000e240: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17259 op1 = sp[-1]; - c000e156: eeb43823 sd a1,-272(s0) - c000e15a: ff8d3603 ld a2,-8(s10) - c000e15e: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17253 + c000e244: eeb43823 sd a1,-272(s0) + c000e248: ff8d3603 ld a2,-8(s10) + c000e24c: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17261 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e162: ff8d2703 lw a4,-8(s10) - c000e166: 02e7ee63 bltu a5,a4,c000e1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17251 + c000e250: ff8d2703 lw a4,-8(s10) + c000e254: 02e7ee63 bltu a5,a4,c000e290 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17259 op1 = sp[-1]; - c000e16a: ff0d2503 lw a0,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17258 + c000e258: ff0d2503 lw a0,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17266 sp--; - c000e16e: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17259 + c000e25c: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17267 if (!res) { - c000e170: e10d bnez a0,c000e192 + c000e25e: e10d bnez a0,c000e280 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e172: 002bc703 lbu a4,2(s7) - c000e176: 001bc783 lbu a5,1(s7) - c000e17a: 0722 slli a4,a4,0x8 - c000e17c: 8f5d or a4,a4,a5 - c000e17e: 003bc783 lbu a5,3(s7) - c000e182: 07c2 slli a5,a5,0x10 - c000e184: 8f5d or a4,a4,a5 - c000e186: 004bc783 lbu a5,4(s7) - c000e18a: 07e2 slli a5,a5,0x18 - c000e18c: 8fd9 or a5,a5,a4 + c000e260: 002bc703 lbu a4,2(s7) + c000e264: 001bc783 lbu a5,1(s7) + c000e268: 0722 slli a4,a4,0x8 + c000e26a: 8f5d or a4,a4,a5 + c000e26c: 003bc783 lbu a5,3(s7) + c000e270: 07c2 slli a5,a5,0x10 + c000e272: 8f5d or a4,a4,a5 + c000e274: 004bc783 lbu a5,4(s7) + c000e278: 07e2 slli a5,a5,0x18 + c000e27a: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17260 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17268 pc += (int32_t)get_u32(pc - 4) - 4; - c000e18e: 37f1 addiw a5,a5,-4 - c000e190: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17262 + c000e27c: 37f1 addiw a5,a5,-4 + c000e27e: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17270 if (unlikely(js_poll_interrupts(ctx))) - c000e192: 8526 mv a0,s1 - c000e194: 067060ef jal ra,c00149fa - c000e198: e119 bnez a0,c000e19e - c000e19a: adefd06f j c000b478 - c000e19e: c3cfd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17256 + c000e280: 8526 mv a0,s1 + c000e282: 067060ef jal ra,c0014ae8 + c000e286: e119 bnez a0,c000e28c + c000e288: adefd06f j c000b566 + c000e28c: c3cfd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17264 res = JS_ToBoolFree(ctx, op1); - c000e1a2: 8526 mv a0,s1 - c000e1a4: cc1f90ef jal ra,c0007e64 - c000e1a8: b7d9 j c000e16e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17272 + c000e290: 8526 mv a0,s1 + c000e292: cc1f90ef jal ra,c0007f52 + c000e296: b7d9 j c000e25c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17280 op1 = sp[-1]; - c000e1aa: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17274 + c000e298: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17282 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e1ae: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17273 + c000e29c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17281 pc += 1; - c000e1b0: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17272 + c000e29e: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17280 op1 = sp[-1]; - c000e1b4: eeb43823 sd a1,-272(s0) - c000e1b8: ff8d3603 ld a2,-8(s10) - c000e1bc: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17274 + c000e2a2: eeb43823 sd a1,-272(s0) + c000e2a6: ff8d3603 ld a2,-8(s10) + c000e2aa: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17282 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e1c0: ff8d2703 lw a4,-8(s10) - c000e1c4: 02e7e263 bltu a5,a4,c000e1e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17272 + c000e2ae: ff8d2703 lw a4,-8(s10) + c000e2b2: 02e7e263 bltu a5,a4,c000e2d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17280 op1 = sp[-1]; - c000e1c8: ff0d2503 lw a0,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17279 + c000e2b6: ff0d2503 lw a0,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17287 sp--; - c000e1cc: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17280 + c000e2ba: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17288 if (res) { - c000e1ce: c509 beqz a0,c000e1d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17281 + c000e2bc: c509 beqz a0,c000e2c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17289 pc += (int8_t)pc[-1] - 1; - c000e1d0: 001b8783 lb a5,1(s7) - c000e1d4: 37fd addiw a5,a5,-1 - c000e1d6: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17283 + c000e2be: 001b8783 lb a5,1(s7) + c000e2c2: 37fd addiw a5,a5,-1 + c000e2c4: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17291 if (unlikely(js_poll_interrupts(ctx))) - c000e1d8: 8526 mv a0,s1 - c000e1da: 021060ef jal ra,c00149fa - c000e1de: e119 bnez a0,c000e1e4 - c000e1e0: a98fd06f j c000b478 - c000e1e4: bf6fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17277 + c000e2c6: 8526 mv a0,s1 + c000e2c8: 021060ef jal ra,c0014ae8 + c000e2cc: e119 bnez a0,c000e2d2 + c000e2ce: a98fd06f j c000b566 + c000e2d2: bf6fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17285 res = JS_ToBoolFree(ctx, op1); - c000e1e8: 8526 mv a0,s1 - c000e1ea: c7bf90ef jal ra,c0007e64 - c000e1ee: bff9 j c000e1cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17292 + c000e2d6: 8526 mv a0,s1 + c000e2d8: c7bf90ef jal ra,c0007f52 + c000e2dc: bff9 j c000e2ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17300 op1 = sp[-1]; - c000e1f0: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17294 + c000e2de: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17302 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e1f4: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17293 + c000e2e2: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17301 pc += 1; - c000e1f6: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17292 + c000e2e4: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17300 op1 = sp[-1]; - c000e1fa: eeb43823 sd a1,-272(s0) - c000e1fe: ff8d3603 ld a2,-8(s10) - c000e202: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17294 + c000e2e8: eeb43823 sd a1,-272(s0) + c000e2ec: ff8d3603 ld a2,-8(s10) + c000e2f0: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17302 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000e206: ff8d2703 lw a4,-8(s10) - c000e20a: 02e7e263 bltu a5,a4,c000e22e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17292 + c000e2f4: ff8d2703 lw a4,-8(s10) + c000e2f8: 02e7e263 bltu a5,a4,c000e31c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17300 op1 = sp[-1]; - c000e20e: ff0d2503 lw a0,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17299 + c000e2fc: ff0d2503 lw a0,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17307 sp--; - c000e212: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17300 + c000e300: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17308 if (!res) { - c000e214: e509 bnez a0,c000e21e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17301 + c000e302: e509 bnez a0,c000e30c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17309 pc += (int8_t)pc[-1] - 1; - c000e216: 001b8783 lb a5,1(s7) - c000e21a: 37fd addiw a5,a5,-1 - c000e21c: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17303 + c000e304: 001b8783 lb a5,1(s7) + c000e308: 37fd addiw a5,a5,-1 + c000e30a: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17311 if (unlikely(js_poll_interrupts(ctx))) - c000e21e: 8526 mv a0,s1 - c000e220: 7da060ef jal ra,c00149fa - c000e224: e119 bnez a0,c000e22a - c000e226: a52fd06f j c000b478 - c000e22a: bb0fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17297 + c000e30c: 8526 mv a0,s1 + c000e30e: 7da060ef jal ra,c0014ae8 + c000e312: e119 bnez a0,c000e318 + c000e314: a52fd06f j c000b566 + c000e318: bb0fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17305 res = JS_ToBoolFree(ctx, op1); - c000e22e: 8526 mv a0,s1 - c000e230: c35f90ef jal ra,c0007e64 - c000e234: bff9 j c000e212 + c000e31c: 8526 mv a0,s1 + c000e31e: c35f90ef jal ra,c0007f52 + c000e322: bff9 j c000e300 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e236: 002bc703 lbu a4,2(s7) - c000e23a: 001bc783 lbu a5,1(s7) + c000e324: 002bc703 lbu a4,2(s7) + c000e328: 001bc783 lbu a5,1(s7) JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 return JS_MKVAL(JS_TAG_CATCH_OFFSET, val); - c000e23e: 86042a23 sw zero,-1932(s0) + c000e32c: 86042a23 sw zero,-1932(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e242: 0722 slli a4,a4,0x8 - c000e244: 8f5d or a4,a4,a5 - c000e246: 003bc783 lbu a5,3(s7) + c000e330: 0722 slli a4,a4,0x8 + c000e332: 8f5d or a4,a4,a5 + c000e334: 003bc783 lbu a5,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17313 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17321 sp++; - c000e24a: 0d41 addi s10,s10,16 + c000e338: 0d41 addi s10,s10,16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e24c: 07c2 slli a5,a5,0x10 - c000e24e: 8f5d or a4,a4,a5 - c000e250: 004bc783 lbu a5,4(s7) - c000e254: 07e2 slli a5,a5,0x18 - c000e256: 8fd9 or a5,a5,a4 + c000e33a: 07c2 slli a5,a5,0x10 + c000e33c: 8f5d or a4,a4,a5 + c000e33e: 004bc783 lbu a5,4(s7) + c000e342: 07e2 slli a5,a5,0x18 + c000e344: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17320 sp[0] = JS_NewCatchOffset(ctx, pc + diff - b->byte_code_buf); - c000e258: 0127893b addw s2,a5,s2 - c000e25c: 020db783 ld a5,32(s11) - c000e260: 4715 li a4,5 - c000e262: eee43c23 sd a4,-264(s0) - c000e266: 40f9093b subw s2,s2,a5 + c000e346: 0127893b addw s2,a5,s2 + c000e34a: 020db783 ld a5,32(s11) + c000e34e: 4715 li a4,5 + c000e350: eee43c23 sd a4,-264(s0) + c000e354: 40f9093b subw s2,s2,a5 JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 - c000e26a: 87242823 sw s2,-1936(s0) - c000e26e: 87043783 ld a5,-1936(s0) - c000e272: 86e43c23 sd a4,-1928(s0) + c000e358: 87242823 sw s2,-1936(s0) + c000e35c: 87043783 ld a5,-1936(s0) + c000e360: 86e43c23 sd a4,-1928(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17314 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17322 pc += 4; - c000e276: 005b8913 addi s2,s7,5 - c000e27a: eef43823 sd a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17312 + c000e364: 005b8913 addi s2,s7,5 + c000e368: eef43823 sd a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17320 sp[0] = JS_NewCatchOffset(ctx, pc + diff - b->byte_code_buf); - c000e27e: fefd3823 sd a5,-16(s10) - c000e282: ef843783 ld a5,-264(s0) - c000e286: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17316 + c000e36c: fefd3823 sd a5,-16(s10) + c000e370: ef843783 ld a5,-264(s0) + c000e374: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17324 BREAK; - c000e28a: 9eefd06f j c000b478 + c000e378: 9eefd06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e28e: 002bc703 lbu a4,2(s7) - c000e292: 001bc783 lbu a5,1(s7) + c000e37c: 002bc703 lbu a4,2(s7) + c000e380: 001bc783 lbu a5,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17330 sp[0] = JS_NewInt32(ctx, pc + 4 - b->byte_code_buf); - c000e296: 0b95 addi s7,s7,5 + c000e384: 0b95 addi s7,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e298: 0722 slli a4,a4,0x8 - c000e29a: 8f5d or a4,a4,a5 - c000e29c: ffebc783 lbu a5,-2(s7) + c000e386: 0722 slli a4,a4,0x8 + c000e388: 8f5d or a4,a4,a5 + c000e38a: ffebc783 lbu a5,-2(s7) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000e2a0: 88043023 sd zero,-1920(s0) - c000e2a4: 88043423 sd zero,-1912(s0) + c000e38e: 88043023 sd zero,-1920(s0) + c000e392: 88043423 sd zero,-1912(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e2a8: 07c2 slli a5,a5,0x10 - c000e2aa: 8f5d or a4,a4,a5 - c000e2ac: fffbc783 lbu a5,-1(s7) + c000e396: 07c2 slli a5,a5,0x10 + c000e398: 8f5d or a4,a4,a5 + c000e39a: fffbc783 lbu a5,-1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17331 sp++; - c000e2b0: 0d41 addi s10,s10,16 + c000e39e: 0d41 addi s10,s10,16 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000e2b2: 07e2 slli a5,a5,0x18 - c000e2b4: 8fd9 or a5,a5,a4 + c000e3a0: 07e2 slli a5,a5,0x18 + c000e3a2: 8fd9 or a5,a5,a4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17330 sp[0] = JS_NewInt32(ctx, pc + 4 - b->byte_code_buf); - c000e2b6: 020db703 ld a4,32(s11) - c000e2ba: ee043c23 sd zero,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17320 + c000e3a4: 020db703 ld a4,32(s11) + c000e3a8: ee043c23 sd zero,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17328 diff = get_u32(pc); - c000e2be: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17322 + c000e3ac: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17330 sp[0] = JS_NewInt32(ctx, pc + 4 - b->byte_code_buf); - c000e2c0: 40eb8bbb subw s7,s7,a4 + c000e3ae: 40eb8bbb subw s7,s7,a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000e2c4: 89742023 sw s7,-1920(s0) - c000e2c8: 88043703 ld a4,-1920(s0) + c000e3b2: 89742023 sw s7,-1920(s0) + c000e3b6: 88043703 ld a4,-1920(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17332 pc += diff; - c000e2cc: 993e add s2,s2,a5 - c000e2ce: eee43823 sd a4,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17322 + c000e3ba: 993e add s2,s2,a5 + c000e3bc: eee43823 sd a4,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17330 sp[0] = JS_NewInt32(ctx, pc + 4 - b->byte_code_buf); - c000e2d2: feed3823 sd a4,-16(s10) - c000e2d6: ef843703 ld a4,-264(s0) - c000e2da: feed3c23 sd a4,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17326 + c000e3c0: feed3823 sd a4,-16(s10) + c000e3c4: ef843703 ld a4,-264(s0) + c000e3c8: feed3c23 sd a4,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17334 BREAK; - c000e2de: 99afd06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17332 + c000e3cc: 99afd06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17340 if (unlikely(JS_VALUE_GET_TAG(op1) != JS_TAG_INT)) - c000e2e2: ff8d2783 lw a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17331 + c000e3d0: ff8d2783 lw a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17339 op1 = sp[-1]; - c000e2e6: ff0d2703 lw a4,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17332 + c000e3d4: ff0d2703 lw a4,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17340 if (unlikely(JS_VALUE_GET_TAG(op1) != JS_TAG_INT)) - c000e2ea: e799 bnez a5,c000e2f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17335 + c000e3d8: e799 bnez a5,c000e3e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17343 if (unlikely(pos >= b->byte_code_len)) { - c000e2ec: 028da683 lw a3,40(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17334 + c000e3da: 028da683 lw a3,40(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17342 pos = JS_VALUE_GET_INT(op1); - c000e2f0: 0007079b sext.w a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17335 + c000e3de: 0007079b sext.w a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17343 if (unlikely(pos >= b->byte_code_len)) { - c000e2f4: 00d76b63 bltu a4,a3,c000e30a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17337 + c000e3e2: 00d76b63 bltu a4,a3,c000e3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17345 JS_ThrowInternalError(ctx, "invalid ret value"); - c000e2f8: 8526 mv a0,s1 - c000e2fa: 0004f597 auipc a1,0x4f - c000e2fe: ebe58593 addi a1,a1,-322 # c005d1b8 - c000e302: 682060ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17338 + c000e3e6: 8526 mv a0,s1 + c000e3e8: 0004f597 auipc a1,0x4f + c000e3ec: 00058593 mv a1,a1 + c000e3f0: 682060ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17346 goto exception; - c000e306: ad4fd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17341 + c000e3f4: ad4fd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17349 pc = b->byte_code_buf + pos; - c000e30a: 020db903 ld s2,32(s11) - c000e30e: 1782 slli a5,a5,0x20 - c000e310: 9381 srli a5,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17340 + c000e3f8: 020db903 ld s2,32(s11) + c000e3fc: 1782 slli a5,a5,0x20 + c000e3fe: 9381 srli a5,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17348 sp--; - c000e312: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17341 + c000e400: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17349 pc = b->byte_code_buf + pos; - c000e314: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17343 + c000e402: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17351 BREAK; - c000e316: 962fd06f j c000b478 + c000e404: 962fd06f j c000b566 js_for_in_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15008 sp[-1] = build_for_in_iterator(ctx, sp[-1]); - c000e31a: ff8d3b03 ld s6,-8(s10) - c000e31e: ff0d3a83 ld s5,-16(s10) + c000e408: ff8d3b03 ld s6,-8(s10) + c000e40c: ff0d3a83 ld s5,-16(s10) build_for_in_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14944 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14952 if (tag != JS_TAG_OBJECT && tag != JS_TAG_NULL && tag != JS_TAG_UNDEFINED) { - c000e322: 57fd li a5,-1 - c000e324: c5643423 sd s6,-952(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14943 + c000e410: 57fd li a5,-1 + c000e412: c5643423 sd s6,-952(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14951 tag = JS_VALUE_GET_TAG(obj); - c000e328: c5543023 sd s5,-960(s0) - c000e32c: 000b0a1b sext.w s4,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14944 + c000e416: c5543023 sd s5,-960(s0) + c000e41a: 000b0a1b sext.w s4,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14952 if (tag != JS_TAG_OBJECT && tag != JS_TAG_NULL && tag != JS_TAG_UNDEFINED) { - c000e330: 04fa0363 beq s4,a5,c000e376 - c000e334: ffea079b addiw a5,s4,-2 - c000e338: 4705 li a4,1 - c000e33a: 02f77e63 bgeu a4,a5,c000e376 + c000e41e: 04fa0363 beq s4,a5,c000e464 + c000e422: ffea079b addiw a5,s4,-2 + c000e426: 4705 li a4,1 + c000e428: 02f77e63 bgeu a4,a5,c000e464 JS_ToObjectFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37106 JSValue obj = JS_ToObject(ctx, val); - c000e33e: 865a mv a2,s6 - c000e340: 85d6 mv a1,s5 - c000e342: 8526 mv a0,s1 - c000e344: ed543823 sd s5,-304(s0) - c000e348: ed643c23 sd s6,-296(s0) - c000e34c: 2a01a0ef jal ra,c00285ec - c000e350: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 + c000e42c: 865a mv a2,s6 + c000e42e: 85d6 mv a1,s5 + c000e430: 8526 mv a0,s1 + c000e432: ed543823 sd s5,-304(s0) + c000e436: ed643c23 sd s6,-296(s0) + c000e43a: 3821a0ef jal ra,c00287bc + c000e43e: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37107 JS_FreeValue(ctx, val); - c000e354: ed843603 ld a2,-296(s0) - c000e358: ed043583 ld a1,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 + c000e442: ed843603 ld a2,-296(s0) + c000e446: ed043583 ld a1,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37106 JSValue obj = JS_ToObject(ctx, val); - c000e35c: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 + c000e44a: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37107 JS_FreeValue(ctx, val); - c000e360: 8526 mv a0,s1 - c000e362: fd6f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37100 + c000e44e: 8526 mv a0,s1 + c000e450: fd6f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37108 return obj; - c000e366: ef043a83 ld s5,-272(s0) - c000e36a: ef843b03 ld s6,-264(s0) - c000e36e: c7543823 sd s5,-912(s0) - c000e372: c7643c23 sd s6,-904(s0) + c000e454: ef043a83 ld s5,-272(s0) + c000e458: ef843b03 ld s6,-264(s0) + c000e45c: c7543823 sd s5,-912(s0) + c000e460: c7643c23 sd s6,-904(s0) build_for_in_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14948 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14956 it = js_malloc(ctx, sizeof(*it)); - c000e376: 02800593 li a1,40 - c000e37a: 8526 mv a0,s1 - c000e37c: 0d1060ef jal ra,c0014c4c - c000e380: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14949 + c000e464: 02800593 li a1,40 + c000e468: 8526 mv a0,s1 + c000e46a: 0d1060ef jal ra,c0014d3a + c000e46e: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14957 if (!it) { - c000e382: e521 bnez a0,c000e3ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14956 + c000e470: e521 bnez a0,c000e4b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14964 JS_FreeValue(ctx, obj); - c000e384: c5543023 sd s5,-960(s0) - c000e388: c5643423 sd s6,-952(s0) - c000e38c: 85d6 mv a1,s5 - c000e38e: 865a mv a2,s6 - c000e390: 8526 mv a0,s1 - c000e392: fa6f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14957 + c000e472: c5543023 sd s5,-960(s0) + c000e476: c5643423 sd s6,-952(s0) + c000e47a: 85d6 mv a1,s5 + c000e47c: 865a mv a2,s6 + c000e47e: 8526 mv a0,s1 + c000e480: fa6f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14965 return JS_EXCEPTION; - c000e396: 4c99 li s9,6 - c000e398: c6043023 sd zero,-928(s0) - c000e39c: c6043783 ld a5,-928(s0) - c000e3a0: ef943c23 sd s9,-264(s0) - c000e3a4: c7943423 sd s9,-920(s0) - c000e3a8: eef43823 sd a5,-272(s0) + c000e484: 4c99 li s9,6 + c000e486: c6043023 sd zero,-928(s0) + c000e48a: c6043783 ld a5,-928(s0) + c000e48e: ef943c23 sd s9,-264(s0) + c000e492: c7943423 sd s9,-920(s0) + c000e496: eef43823 sd a5,-272(s0) js_for_in_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15008 sp[-1] = build_for_in_iterator(ctx, sp[-1]); - c000e3ac: fefd3823 sd a5,-16(s10) - c000e3b0: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15001 + c000e49a: fefd3823 sd a5,-16(s10) + c000e49e: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15009 if (JS_IsException(sp[-1])) - c000e3b4: 000c859b sext.w a1,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15000 + c000e4a2: 000c859b sext.w a1,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15008 sp[-1] = build_for_in_iterator(ctx, sp[-1]); - c000e3b8: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15001 + c000e4a6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15009 if (JS_IsException(sp[-1])) - c000e3bc: 4799 li a5,6 - c000e3be: 00f58463 beq a1,a5,c000e3c6 - c000e3c2: 8b6fd06f j c000b478 - c000e3c6: a14fd06f j c000b5da + c000e4aa: 4799 li a5,6 + c000e4ac: 00f58463 beq a1,a5,c000e4b4 + c000e4b0: 8b6fd06f j c000b566 + c000e4b4: a14fd06f j c000b6c8 build_for_in_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14953 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14961 enum_obj = JS_NewObjectProtoClass(ctx, JS_NULL, JS_CLASS_FOR_IN_ITERATOR); - c000e3ca: 4789 li a5,2 - c000e3cc: 46c5 li a3,17 - c000e3ce: 4581 li a1,0 - c000e3d0: 4609 li a2,2 - c000e3d2: 8526 mv a0,s1 - c000e3d4: eef43c23 sd a5,-264(s0) - c000e3d8: ee043823 sd zero,-272(s0) - c000e3dc: 3ac080ef jal ra,c0016788 - c000e3e0: c4a43823 sd a0,-944(s0) - c000e3e4: c4b43c23 sd a1,-936(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14954 + c000e4b8: 4789 li a5,2 + c000e4ba: 46c5 li a3,17 + c000e4bc: 4581 li a1,0 + c000e4be: 4609 li a2,2 + c000e4c0: 8526 mv a0,s1 + c000e4c2: eef43c23 sd a5,-264(s0) + c000e4c6: ee043823 sd zero,-272(s0) + c000e4ca: 48e080ef jal ra,c0016958 + c000e4ce: c4a43823 sd a0,-944(s0) + c000e4d2: c4b43c23 sd a1,-936(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14962 if (JS_IsException(enum_obj)) { - c000e3e8: 0005871b sext.w a4,a1 - c000e3ec: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14953 + c000e4d6: 0005871b sext.w a4,a1 + c000e4da: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14961 enum_obj = JS_NewObjectProtoClass(ctx, JS_NULL, JS_CLASS_FOR_IN_ITERATOR); - c000e3ee: 8c2a mv s8,a0 - c000e3f0: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14954 + c000e4dc: 8c2a mv s8,a0 + c000e4de: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14962 if (JS_IsException(enum_obj)) { - c000e3f2: 00f71763 bne a4,a5,c000e400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14955 + c000e4e0: 00f71763 bne a4,a5,c000e4ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14963 js_free(ctx, it); - c000e3f6: 85de mv a1,s7 - c000e3f8: 8526 mv a0,s1 - c000e3fa: a41f80ef jal ra,c0006e3a - c000e3fe: b759 j c000e384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14960 + c000e4e4: 85de mv a1,s7 + c000e4e6: 8526 mv a0,s1 + c000e4e8: a41f80ef jal ra,c0006f28 + c000e4ec: b759 j c000e472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14968 it->obj = obj; - c000e400: 015bb023 sd s5,0(s7) - c000e404: 016bb423 sd s6,8(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14962 + c000e4ee: 015bb023 sd s5,0(s7) + c000e4f2: 016bb423 sd s6,8(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14970 it->tab_atom = NULL; - c000e408: 020bb023 sd zero,32(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14961 + c000e4f6: 020bb023 sd zero,32(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14969 it->idx = 0; - c000e40c: 000bb823 sd zero,16(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14964 + c000e4fa: 000bb823 sd zero,16(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14972 it->in_prototype_chain = FALSE; - c000e410: 000b9c23 sh zero,24(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14966 + c000e4fe: 000b9c23 sh zero,24(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14974 p1->u.for_in_iterator = it; - c000e414: 03753823 sd s7,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14968 + c000e502: 03753823 sd s7,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14976 if (tag == JS_TAG_NULL || tag == JS_TAG_UNDEFINED) - c000e418: 3a79 addiw s4,s4,-2 - c000e41a: 4785 li a5,1 - c000e41c: 0147e563 bltu a5,s4,c000e426 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14994 + c000e506: 3a79 addiw s4,s4,-2 + c000e508: 4785 li a5,1 + c000e50a: 0147e563 bltu a5,s4,c000e514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15002 return enum_obj; - c000e420: c7843023 sd s8,-928(s0) - c000e424: bfa5 j c000e39c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14972 + c000e50e: c7843023 sd s8,-928(s0) + c000e512: bfa5 j c000e48a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14980 if (p->fast_array) { - c000e426: 005ac783 lbu a5,5(s5) - c000e42a: 8ba1 andi a5,a5,8 - c000e42c: cb8d beqz a5,c000e45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14976 + c000e514: 005ac783 lbu a5,5(s5) + c000e518: 8ba1 andi a5,a5,8 + c000e51a: cb8d beqz a5,c000e54c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14984 sh = p->shape; - c000e42e: 018ab783 ld a5,24(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14977 + c000e51c: 018ab783 ld a5,24(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14985 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c000e432: 4701 li a4,0 - c000e434: 5790 lw a2,40(a5) + c000e520: 4701 li a4,0 + c000e522: 5790 lw a2,40(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000e436: 04078693 addi a3,a5,64 + c000e524: 04078693 addi a3,a5,64 build_for_in_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14977 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14985 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c000e43a: 00c74a63 blt a4,a2,c000e44e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14982 + c000e528: 00c74a63 blt a4,a2,c000e53c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14990 it->is_array = TRUE; - c000e43e: 4785 li a5,1 - c000e440: 00fb8ca3 sb a5,25(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14983 + c000e52c: 4785 li a5,1 + c000e52e: 00fb8ca3 sb a5,25(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14991 it->atom_count = p->u.array.count; - c000e444: 040aa783 lw a5,64(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14992 + c000e532: 040aa783 lw a5,64(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15000 it->atom_count = tab_atom_count; - c000e448: 00fbaa23 sw a5,20(s7) - c000e44c: bfd1 j c000e420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14978 + c000e536: 00fbaa23 sw a5,20(s7) + c000e53a: bfd1 j c000e50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14986 if (prs->flags & JS_PROP_ENUMERABLE) - c000e44e: 429c lw a5,0(a3) - c000e450: 01a7d79b srliw a5,a5,0x1a - c000e454: 8b91 andi a5,a5,4 - c000e456: e781 bnez a5,c000e45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14977 + c000e53c: 429c lw a5,0(a3) + c000e53e: 01a7d79b srliw a5,a5,0x1a + c000e542: 8b91 andi a5,a5,4 + c000e544: e781 bnez a5,c000e54c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14985 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c000e458: 2705 addiw a4,a4,1 - c000e45a: 06a1 addi a3,a3,8 - c000e45c: bff9 j c000e43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14986 + c000e546: 2705 addiw a4,a4,1 + c000e548: 06a1 addi a3,a3,8 + c000e54a: bff9 j c000e528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14994 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, p, - c000e45e: 02100713 li a4,33 - c000e462: 86d6 mv a3,s5 - c000e464: e9040613 addi a2,s0,-368 - c000e468: ed040593 addi a1,s0,-304 - c000e46c: 8526 mv a0,s1 - c000e46e: 13c220ef jal ra,c00305aa - c000e472: c511 beqz a0,c000e47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14988 + c000e54c: 02100713 li a4,33 + c000e550: 86d6 mv a3,s5 + c000e552: e9040613 addi a2,s0,-368 + c000e556: ed040593 addi a1,s0,-304 + c000e55a: 8526 mv a0,s1 + c000e55c: 21e220ef jal ra,c003077a + c000e560: c511 beqz a0,c000e56c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14996 JS_FreeValue(ctx, enum_obj); - c000e474: c5043583 ld a1,-944(s0) - c000e478: c5843603 ld a2,-936(s0) - c000e47c: bf11 j c000e390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14991 + c000e562: c5043583 ld a1,-944(s0) + c000e566: c5843603 ld a2,-936(s0) + c000e56a: bf11 j c000e47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14999 it->tab_atom = tab_atom; - c000e47e: ed043783 ld a5,-304(s0) - c000e482: 02fbb023 sd a5,32(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14992 + c000e56c: ed043783 ld a5,-304(s0) + c000e570: 02fbb023 sd a5,32(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15000 it->atom_count = tab_atom_count; - c000e486: e9042783 lw a5,-368(s0) - c000e48a: bf7d j c000e448 + c000e574: e9042783 lw a5,-368(s0) + c000e578: bf7d j c000e536 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15088 enum_obj = sp[-1]; - c000e48c: ff8d3b83 ld s7,-8(s10) - c000e490: ff0d3b03 ld s6,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15082 + c000e57a: ff8d3b83 ld s7,-8(s10) + c000e57e: ff0d3b03 ld s6,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15090 if (JS_VALUE_GET_TAG(enum_obj) != JS_TAG_OBJECT) - c000e494: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15080 + c000e582: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15088 enum_obj = sp[-1]; - c000e496: c9743423 sd s7,-888(s0) - c000e49a: c9643023 sd s6,-896(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15082 + c000e584: c9743423 sd s7,-888(s0) + c000e588: c9643023 sd s6,-896(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15090 if (JS_VALUE_GET_TAG(enum_obj) != JS_TAG_OBJECT) - c000e49e: 000b871b sext.w a4,s7 - c000e4a2: 1cf71e63 bne a4,a5,c000e67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15085 + c000e58c: 000b871b sext.w a4,s7 + c000e590: 1cf71e63 bne a4,a5,c000e76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15093 if (p->class_id != JS_CLASS_FOR_IN_ITERATOR) - c000e4a6: 006b5703 lhu a4,6(s6) - c000e4aa: 47c5 li a5,17 - c000e4ac: 1cf71963 bne a4,a5,c000e67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15112 + c000e594: 006b5703 lhu a4,6(s6) + c000e598: 47c5 li a5,17 + c000e59a: 1cf71963 bne a4,a5,c000e76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15120 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, - c000e4b0: f8040713 addi a4,s0,-128 - c000e4b4: 73098793 addi a5,s3,1840 - c000e4b8: 97ba add a5,a5,a4 - c000e4ba: 777d lui a4,0xfffff - c000e4bc: 63070713 addi a4,a4,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15087 + c000e59e: f8040713 addi a4,s0,-128 + c000e5a2: 73098793 addi a5,s3,1840 + c000e5a6: 97ba add a5,a5,a4 + c000e5a8: 777d lui a4,0xfffff + c000e5aa: 63070713 addi a4,a4,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15095 it = p->u.for_in_iterator; - c000e4c0: 030b3a03 ld s4,48(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15112 + c000e5ae: 030b3a03 ld s4,48(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15120 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, - c000e4c4: 9722 add a4,a4,s0 - c000e4c6: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15090 + c000e5b2: 9722 add a4,a4,s0 + c000e5b4: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15098 if (it->idx >= it->atom_count) { - c000e4c8: 010a2683 lw a3,16(s4) - c000e4cc: 014a2783 lw a5,20(s4) - c000e4d0: 1ef6ec63 bltu a3,a5,c000e6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15091 + c000e5b6: 010a2683 lw a3,16(s4) + c000e5ba: 014a2783 lw a5,20(s4) + c000e5be: 1ef6ec63 bltu a3,a5,c000e7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15099 if (JS_IsNull(it->obj) || JS_IsUndefined(it->obj)) - c000e4d4: 008a3783 ld a5,8(s4) - c000e4d8: 4705 li a4,1 - c000e4da: 37f9 addiw a5,a5,-2 - c000e4dc: 1af77163 bgeu a4,a5,c000e67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15094 + c000e5c2: 008a3783 ld a5,8(s4) + c000e5c6: 4705 li a4,1 + c000e5c8: 37f9 addiw a5,a5,-2 + c000e5ca: 1af77163 bgeu a4,a5,c000e76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15102 if (!it->in_prototype_chain) { - c000e4e0: 018a4783 lbu a5,24(s4) - c000e4e4: 0e079b63 bnez a5,c000e5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15095 + c000e5ce: 018a4783 lbu a5,24(s4) + c000e5d2: 0e079b63 bnez a5,c000e6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15103 ret = js_for_in_prepare_prototype_chain_enum(ctx, enum_obj); - c000e4e8: e9643823 sd s6,-368(s0) - c000e4ec: e9743c23 sd s7,-360(s0) + c000e5d6: e9643823 sd s6,-368(s0) + c000e5da: e9743c23 sd s7,-360(s0) js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15025 it = p->u.for_in_iterator; - c000e4f0: 030b3a83 ld s5,48(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15020 + c000e5de: 030b3a83 ld s5,48(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15028 obj1 = JS_DupValue(ctx, it->obj); - c000e4f4: 000ab503 ld a0,0(s5) - c000e4f8: 008ab583 ld a1,8(s5) - c000e4fc: 972f80ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15033 + c000e5e2: 000ab503 ld a0,0(s5) + c000e5e6: 008ab583 ld a1,8(s5) + c000e5ea: 972f80ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15041 js_free_prop_enum(ctx, tab_atom, tab_atom_count); - c000e500: f8040793 addi a5,s0,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15020 + c000e5ee: f8040793 addi a5,s0,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15028 obj1 = JS_DupValue(ctx, it->obj); - c000e504: ecb43c23 sd a1,-296(s0) - c000e508: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15033 + c000e5f2: ecb43c23 sd a1,-296(s0) + c000e5f6: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15041 js_free_prop_enum(ctx, tab_atom, tab_atom_count); - c000e50a: 01378c33 add s8,a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15022 + c000e5f8: 01378c33 add s8,a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15030 obj1 = JS_GetPrototypeFree(ctx, obj1); - c000e50e: ed843603 ld a2,-296(s0) - c000e512: 85e6 mv a1,s9 - c000e514: 8526 mv a0,s1 - c000e516: ed943823 sd s9,-304(s0) - c000e51a: 104060ef jal ra,c001461e - c000e51e: eca43823 sd a0,-304(s0) - c000e522: ecb43c23 sd a1,-296(s0) + c000e5fc: ed843603 ld a2,-296(s0) + c000e600: 85e6 mv a1,s9 + c000e602: 8526 mv a0,s1 + c000e604: ed943823 sd s9,-304(s0) + c000e608: 104060ef jal ra,c001470c + c000e60c: eca43823 sd a0,-304(s0) + c000e610: ecb43c23 sd a1,-296(s0) JS_IsNull(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:600 return JS_VALUE_GET_TAG(v) == JS_TAG_NULL; - c000e526: 0005879b sext.w a5,a1 + c000e614: 0005879b sext.w a5,a1 js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15031 if (JS_IsNull(obj1)) - c000e52a: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15022 + c000e618: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15030 obj1 = JS_GetPrototypeFree(ctx, obj1); - c000e52c: 86aa mv a3,a0 - c000e52e: 862e mv a2,a1 - c000e530: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15023 + c000e61a: 86aa mv a3,a0 + c000e61c: 862e mv a2,a1 + c000e61e: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15031 if (JS_IsNull(obj1)) - c000e532: 14e78263 beq a5,a4,c000e676 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15025 + c000e620: 14e78263 beq a5,a4,c000e764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15033 if (JS_IsException(obj1)) - c000e536: 4719 li a4,6 - c000e538: 00e79463 bne a5,a4,c000e540 - c000e53c: 89efd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15027 + c000e624: 4719 li a4,6 + c000e626: 00e79463 bne a5,a4,c000e62e + c000e62a: 89efd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15035 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, - c000e540: 77fd lui a5,0xfffff - c000e542: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> - c000e546: 97a2 add a5,a5,s0 - c000e548: 6390 ld a2,0(a5) - c000e54a: 4745 li a4,17 - c000e54c: e8040593 addi a1,s0,-384 - c000e550: 8526 mv a0,s1 - c000e552: 058220ef jal ra,c00305aa - c000e556: c911 beqz a0,c000e56a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15030 + c000e62e: 77fd lui a5,0xfffff + c000e630: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> + c000e634: 97a2 add a5,a5,s0 + c000e636: 6390 ld a2,0(a5) + c000e638: 4745 li a4,17 + c000e63a: e8040593 addi a1,s0,-384 + c000e63e: 8526 mv a0,s1 + c000e640: 13a220ef jal ra,c003077a + c000e644: c911 beqz a0,c000e658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15038 JS_FreeValue(ctx, obj1); - c000e558: ed043583 ld a1,-304(s0) - c000e55c: ed843603 ld a2,-296(s0) - c000e560: 8526 mv a0,s1 - c000e562: dd6f90ef jal ra,c0007b38 + c000e646: ed043583 ld a1,-304(s0) + c000e64a: ed843603 ld a2,-296(s0) + c000e64e: 8526 mv a0,s1 + c000e650: dd6f90ef jal ra,c0007c26 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15104 if (ret < 0) - c000e566: 874fd06f j c000b5da + c000e654: 874fd06f j c000b6c8 js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15033 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15041 js_free_prop_enum(ctx, tab_atom, tab_atom_count); - c000e56a: 740c2603 lw a2,1856(s8) - c000e56e: e8043583 ld a1,-384(s0) - c000e572: 8526 mv a0,s1 - c000e574: fa9f80ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15034 + c000e658: 740c2603 lw a2,1856(s8) + c000e65c: e8043583 ld a1,-384(s0) + c000e660: 8526 mv a0,s1 + c000e662: fa9f80ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15042 if (tab_atom_count != 0) { - c000e578: 740c2783 lw a5,1856(s8) - c000e57c: cff9 beqz a5,c000e65a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15035 + c000e666: 740c2783 lw a5,1856(s8) + c000e66a: cff9 beqz a5,c000e748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15043 JS_FreeValue(ctx, obj1); - c000e57e: ed043583 ld a1,-304(s0) - c000e582: ed843603 ld a2,-296(s0) - c000e586: 8526 mv a0,s1 - c000e588: db0f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15049 + c000e66c: ed043583 ld a1,-304(s0) + c000e670: ed843603 ld a2,-296(s0) + c000e674: 8526 mv a0,s1 + c000e676: db0f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15057 if (it->is_array) { - c000e58c: 019ac783 lbu a5,25(s5) - c000e590: cf85 beqz a5,c000e5c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15050 + c000e67a: 019ac783 lbu a5,25(s5) + c000e67e: cf85 beqz a5,c000e6b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15058 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, - c000e592: 77fd lui a5,0xfffff - c000e594: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> - c000e598: 97a2 add a5,a5,s0 - c000e59a: 000ab683 ld a3,0(s5) - c000e59e: 6390 ld a2,0(a5) - c000e5a0: 02100713 li a4,33 - c000e5a4: e8040593 addi a1,s0,-384 - c000e5a8: 8526 mv a0,s1 - c000e5aa: 000220ef jal ra,c00305aa - c000e5ae: c119 beqz a0,c000e5b4 - c000e5b0: 82afd06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15055 + c000e680: 77fd lui a5,0xfffff + c000e682: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> + c000e686: 97a2 add a5,a5,s0 + c000e688: 000ab683 ld a3,0(s5) + c000e68c: 6390 ld a2,0(a5) + c000e68e: 02100713 li a4,33 + c000e692: e8040593 addi a1,s0,-384 + c000e696: 8526 mv a0,s1 + c000e698: 0e2220ef jal ra,c003077a + c000e69c: c119 beqz a0,c000e6a2 + c000e69e: 82afd06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15063 it->is_array = FALSE; - c000e5b4: 000a8ca3 sb zero,25(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15056 + c000e6a2: 000a8ca3 sb zero,25(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15064 it->tab_atom = tab_atom; - c000e5b8: e8043783 ld a5,-384(s0) - c000e5bc: 02fab023 sd a5,32(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15057 + c000e6a6: e8043783 ld a5,-384(s0) + c000e6aa: 02fab023 sd a5,32(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15065 it->atom_count = tab_atom_count; - c000e5c0: 740c2783 lw a5,1856(s8) - c000e5c4: 00faaa23 sw a5,20(s5) + c000e6ae: 740c2783 lw a5,1856(s8) + c000e6b2: 00faaa23 sw a5,20(s5) build_for_in_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14989 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14997 return JS_EXCEPTION; - c000e5c8: 4c01 li s8,0 + c000e6b6: 4c01 li s8,0 js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15069 if (JS_DefinePropertyValue(ctx, enum_obj, it->tab_atom[i].atom, JS_NULL, JS_PROP_ENUMERABLE) < 0) - c000e5ca: 4c89 li s9,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15060 + c000e6b8: 4c89 li s9,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15068 for(i = 0; i < it->atom_count; i++) { - c000e5cc: 014aa783 lw a5,20(s5) - c000e5d0: 0cfc6063 bltu s8,a5,c000e690 + c000e6ba: 014aa783 lw a5,20(s5) + c000e6be: 0cfc6063 bltu s8,a5,c000e77e js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15108 it->in_prototype_chain = TRUE; - c000e5d4: 4785 li a5,1 - c000e5d6: 00fa0c23 sb a5,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15102 + c000e6c2: 4785 li a5,1 + c000e6c4: 00fa0c23 sb a5,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15110 it->obj = JS_GetPrototypeFree(ctx, it->obj); - c000e5da: 000a3583 ld a1,0(s4) - c000e5de: 008a3603 ld a2,8(s4) - c000e5e2: 8526 mv a0,s1 - c000e5e4: 03a060ef jal ra,c001461e - c000e5e8: 00ba3423 sd a1,8(s4) - c000e5ec: 00aa3023 sd a0,0(s4) + c000e6c8: 000a3583 ld a1,0(s4) + c000e6cc: 008a3603 ld a2,8(s4) + c000e6d0: 8526 mv a0,s1 + c000e6d2: 03a060ef jal ra,c001470c + c000e6d6: 00ba3423 sd a1,8(s4) + c000e6da: 00aa3023 sd a0,0(s4) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000e5f0: 2581 sext.w a1,a1 + c000e6de: 2581 sext.w a1,a1 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15111 if (JS_IsException(it->obj)) - c000e5f2: 4799 li a5,6 - c000e5f4: 00f59463 bne a1,a5,c000e5fc - c000e5f8: fe3fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15105 + c000e6e0: 4799 li a5,6 + c000e6e2: 00f59463 bne a1,a5,c000e6ea + c000e6e6: fe3fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15113 if (JS_IsNull(it->obj)) - c000e5fc: 4789 li a5,2 - c000e5fe: 08f58063 beq a1,a5,c000e67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15109 + c000e6ea: 4789 li a5,2 + c000e6ec: 08f58063 beq a1,a5,c000e76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15117 if (js_poll_interrupts(ctx)) - c000e602: 8526 mv a0,s1 - c000e604: 3f6060ef jal ra,c00149fa - c000e608: c119 beqz a0,c000e60e - c000e60a: fd1fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15112 + c000e6f0: 8526 mv a0,s1 + c000e6f2: 3f6060ef jal ra,c0014ae8 + c000e6f6: c119 beqz a0,c000e6fc + c000e6f8: fd1fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15120 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, - c000e60e: 77fd lui a5,0xfffff - c000e610: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000e614: 97a2 add a5,a5,s0 - c000e616: 000a3683 ld a3,0(s4) - c000e61a: 6390 ld a2,0(a5) - c000e61c: 02100713 li a4,33 - c000e620: de040593 addi a1,s0,-544 - c000e624: 8526 mv a0,s1 - c000e626: 785210ef jal ra,c00305aa - c000e62a: c119 beqz a0,c000e630 - c000e62c: faffc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15117 + c000e6fc: 77fd lui a5,0xfffff + c000e6fe: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000e702: 97a2 add a5,a5,s0 + c000e704: 000a3683 ld a3,0(s4) + c000e708: 6390 ld a2,0(a5) + c000e70a: 02100713 li a4,33 + c000e70e: de040593 addi a1,s0,-544 + c000e712: 8526 mv a0,s1 + c000e714: 066220ef jal ra,c003077a + c000e718: c119 beqz a0,c000e71e + c000e71a: faffc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15125 js_free_prop_enum(ctx, it->tab_atom, it->atom_count); - c000e630: 014a2603 lw a2,20(s4) - c000e634: 020a3583 ld a1,32(s4) - c000e638: 8526 mv a0,s1 - c000e63a: ee3f80ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15118 + c000e71e: 014a2603 lw a2,20(s4) + c000e722: 020a3583 ld a1,32(s4) + c000e726: 8526 mv a0,s1 + c000e728: ee3f80ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15126 it->tab_atom = tab_atom; - c000e63e: de043783 ld a5,-544(s0) - c000e642: 02fa3023 sd a5,32(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15119 + c000e72c: de043783 ld a5,-544(s0) + c000e730: 02fa3023 sd a5,32(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15127 it->atom_count = tab_atom_count; - c000e646: f8040793 addi a5,s0,-128 - c000e64a: 97ce add a5,a5,s3 - c000e64c: 7307a783 lw a5,1840(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15120 + c000e734: f8040793 addi a5,s0,-128 + c000e738: 97ce add a5,a5,s3 + c000e73a: 7307a783 lw a5,1840(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15128 it->idx = 0; - c000e650: 000a2823 sw zero,16(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15119 + c000e73e: 000a2823 sw zero,16(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15127 it->atom_count = tab_atom_count; - c000e654: 00fa2a23 sw a5,20(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15120 + c000e742: 00fa2a23 sw a5,20(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15128 it->idx = 0; - c000e658: bd85 j c000e4c8 + c000e746: bd85 j c000e5b6 js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15047 if (js_poll_interrupts(ctx)) { - c000e65a: 8526 mv a0,s1 - c000e65c: 39e060ef jal ra,c00149fa - c000e660: ea0507e3 beqz a0,c000e50e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15040 + c000e748: 8526 mv a0,s1 + c000e74a: 39e060ef jal ra,c0014ae8 + c000e74e: ea0507e3 beqz a0,c000e5fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15048 JS_FreeValue(ctx, obj1); - c000e664: ed043583 ld a1,-304(s0) - c000e668: ed843603 ld a2,-296(s0) - c000e66c: 8526 mv a0,s1 - c000e66e: ccaf90ef jal ra,c0007b38 + c000e752: ed043583 ld a1,-304(s0) + c000e756: ed843603 ld a2,-296(s0) + c000e75a: 8526 mv a0,s1 + c000e75c: ccaf90ef jal ra,c0007c26 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15104 if (ret < 0) - c000e672: f69fc06f j c000b5da + c000e760: f69fc06f j c000b6c8 js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15044 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15052 JS_FreeValue(ctx, obj1); - c000e676: 85aa mv a1,a0 - c000e678: 8526 mv a0,s1 - c000e67a: cbef90ef jal ra,c0007b38 + c000e764: 85aa mv a1,a0 + c000e766: 8526 mv a0,s1 + c000e768: cbef90ef jal ra,c0007c26 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15167 sp[0] = JS_UNDEFINED; - c000e67e: 478d li a5,3 - c000e680: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15160 + c000e76c: 478d li a5,3 + c000e76e: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15168 sp[1] = JS_TRUE; - c000e684: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15159 + c000e772: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15167 sp[0] = JS_UNDEFINED; - c000e686: 000d3023 sd zero,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15160 + c000e774: 000d3023 sd zero,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15168 sp[1] = JS_TRUE; - c000e68a: 00fd3823 sd a5,16(s10) - c000e68e: a041 j c000e70e + c000e778: 00fd3823 sd a5,16(s10) + c000e77c: a041 j c000e7fc js_for_in_prepare_prototype_chain_enum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15069 if (JS_DefinePropertyValue(ctx, enum_obj, it->tab_atom[i].atom, JS_NULL, JS_PROP_ENUMERABLE) < 0) - c000e690: 020ab783 ld a5,32(s5) - c000e694: 020c1693 slli a3,s8,0x20 - c000e698: 01d6d713 srli a4,a3,0x1d - c000e69c: 97ba add a5,a5,a4 - c000e69e: 43d4 lw a3,4(a5) - c000e6a0: e9043583 ld a1,-368(s0) - c000e6a4: e9843603 ld a2,-360(s0) - c000e6a8: 4811 li a6,4 - c000e6aa: 4701 li a4,0 - c000e6ac: 4789 li a5,2 - c000e6ae: 8526 mv a0,s1 - c000e6b0: ee043823 sd zero,-272(s0) - c000e6b4: ef943c23 sd s9,-264(s0) - c000e6b8: 0ff040ef jal ra,c0012fb6 - c000e6bc: 00055463 bgez a0,c000e6c4 - c000e6c0: f1bfc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15060 + c000e77e: 020ab783 ld a5,32(s5) + c000e782: 020c1693 slli a3,s8,0x20 + c000e786: 01d6d713 srli a4,a3,0x1d + c000e78a: 97ba add a5,a5,a4 + c000e78c: 43d4 lw a3,4(a5) + c000e78e: e9043583 ld a1,-368(s0) + c000e792: e9843603 ld a2,-360(s0) + c000e796: 4811 li a6,4 + c000e798: 4701 li a4,0 + c000e79a: 4789 li a5,2 + c000e79c: 8526 mv a0,s1 + c000e79e: ee043823 sd zero,-272(s0) + c000e7a2: ef943c23 sd s9,-264(s0) + c000e7a6: 0ff040ef jal ra,c00130a4 + c000e7aa: 00055463 bgez a0,c000e7b2 + c000e7ae: f1bfc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15068 for(i = 0; i < it->atom_count; i++) { - c000e6c4: 2c05 addiw s8,s8,1 - c000e6c6: b719 j c000e5cc + c000e7b2: 2c05 addiw s8,s8,1 + c000e7b4: b719 j c000e6ba js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15130 if (it->is_array) { - c000e6c8: 019a4783 lbu a5,25(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15124 + c000e7b6: 019a4783 lbu a5,25(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15132 it->idx++; - c000e6cc: 0016871b addiw a4,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15122 + c000e7ba: 0016871b addiw a4,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15130 if (it->is_array) { - c000e6d0: c7a9 beqz a5,c000e71a + c000e7be: c7a9 beqz a5,c000e808 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c000e6d2: 80000c37 lui s8,0x80000 - c000e6d6: 0186ec33 or s8,a3,s8 + c000e7c0: 80000c37 lui s8,0x80000 + c000e7c4: 0186ec33 or s8,a3,s8 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15132 it->idx++; - c000e6da: 00ea2823 sw a4,16(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15146 + c000e7c8: 00ea2823 sw a4,16(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15154 ret = JS_GetOwnPropertyInternal(ctx, NULL, JS_VALUE_GET_OBJ(it->obj), prop); - c000e6de: 000a3603 ld a2,0(s4) - c000e6e2: 86e2 mv a3,s8 - c000e6e4: 4581 li a1,0 - c000e6e6: 8526 mv a0,s1 - c000e6e8: 01d030ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15147 + c000e7cc: 000a3603 ld a2,0(s4) + c000e7d0: 86e2 mv a3,s8 + c000e7d2: 4581 li a1,0 + c000e7d4: 8526 mv a0,s1 + c000e7d6: 01d030ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15155 if (ret < 0) - c000e6ec: 00055463 bgez a0,c000e6f4 - c000e6f0: eebfc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15149 + c000e7da: 00055463 bgez a0,c000e7e2 + c000e7de: eebfc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15157 if (ret) - c000e6f4: dc050ae3 beqz a0,c000e4c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15154 + c000e7e2: dc050ae3 beqz a0,c000e5b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15162 sp[0] = JS_AtomToValue(ctx, prop); - c000e6f8: 85e2 mv a1,s8 - c000e6fa: 8526 mv a0,s1 - c000e6fc: 4360b0ef jal ra,c0019b32 - c000e700: 00ad3023 sd a0,0(s10) - c000e704: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15155 + c000e7e6: 85e2 mv a1,s8 + c000e7e8: 8526 mv a0,s1 + c000e7ea: 5180b0ef jal ra,c0019d02 + c000e7ee: 00ad3023 sd a0,0(s10) + c000e7f2: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15163 sp[1] = JS_FALSE; - c000e708: 000d3823 sd zero,16(s10) - c000e70c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15160 + c000e7f6: 000d3823 sd zero,16(s10) + c000e7fa: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15168 sp[1] = JS_TRUE; - c000e70e: 00fd3c23 sd a5,24(s10) + c000e7fc: 00fd3c23 sd a5,24(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17360 sp += 2; - c000e712: 020d0d13 addi s10,s10,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17353 + c000e800: 020d0d13 addi s10,s10,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17361 BREAK; - c000e716: d63fc06f j c000b478 + c000e804: d63fc06f j c000b566 js_for_in_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15135 prop = it->tab_atom[it->idx].atom; - c000e71a: 02069793 slli a5,a3,0x20 - c000e71e: 01d7d693 srli a3,a5,0x1d - c000e722: 020a3783 ld a5,32(s4) - c000e726: 97b6 add a5,a5,a3 - c000e728: 0047ac03 lw s8,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15128 + c000e808: 02069793 slli a5,a3,0x20 + c000e80c: 01d7d693 srli a3,a5,0x1d + c000e810: 020a3783 ld a5,32(s4) + c000e814: 97b6 add a5,a5,a3 + c000e816: 0047ac03 lw s8,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15136 is_enumerable = it->tab_atom[it->idx].is_enumerable; - c000e72c: 0007aa83 lw s5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15130 + c000e81a: 0007aa83 lw s5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15138 if (it->in_prototype_chain) { - c000e730: 018a4783 lbu a5,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15129 + c000e81e: 018a4783 lbu a5,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15137 it->idx++; - c000e734: 00ea2823 sw a4,16(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15130 + c000e822: 00ea2823 sw a4,16(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15138 if (it->in_prototype_chain) { - c000e738: c3b1 beqz a5,c000e77c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15132 + c000e826: c3b1 beqz a5,c000e86a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15140 ret = JS_GetOwnPropertyInternal(ctx, NULL, JS_VALUE_GET_OBJ(enum_obj), prop); - c000e73a: 86e2 mv a3,s8 - c000e73c: 865a mv a2,s6 - c000e73e: 4581 li a1,0 - c000e740: 8526 mv a0,s1 - c000e742: 7c2030ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15133 + c000e828: 86e2 mv a3,s8 + c000e82a: 865a mv a2,s6 + c000e82c: 4581 li a1,0 + c000e82e: 8526 mv a0,s1 + c000e830: 7c2030ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15141 if (ret < 0) - c000e746: 00055463 bgez a0,c000e74e - c000e74a: e91fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15135 + c000e834: 00055463 bgez a0,c000e83c + c000e838: e91fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15143 if (ret) - c000e74e: d6051de3 bnez a0,c000e4c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15138 + c000e83c: d6051de3 bnez a0,c000e5b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15146 if (JS_DefinePropertyValue(ctx, enum_obj, prop, JS_NULL, - c000e752: 4789 li a5,2 - c000e754: 4811 li a6,4 - c000e756: 4701 li a4,0 - c000e758: 86e2 mv a3,s8 - c000e75a: 85da mv a1,s6 - c000e75c: 865e mv a2,s7 - c000e75e: 8526 mv a0,s1 - c000e760: ee043823 sd zero,-272(s0) - c000e764: eef43c23 sd a5,-264(s0) - c000e768: c9643023 sd s6,-896(s0) - c000e76c: c9743423 sd s7,-888(s0) - c000e770: 047040ef jal ra,c0012fb6 - c000e774: 00055463 bgez a0,c000e77c - c000e778: e63fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15142 + c000e840: 4789 li a5,2 + c000e842: 4811 li a6,4 + c000e844: 4701 li a4,0 + c000e846: 86e2 mv a3,s8 + c000e848: 85da mv a1,s6 + c000e84a: 865e mv a2,s7 + c000e84c: 8526 mv a0,s1 + c000e84e: ee043823 sd zero,-272(s0) + c000e852: eef43c23 sd a5,-264(s0) + c000e856: c9643023 sd s6,-896(s0) + c000e85a: c9743423 sd s7,-888(s0) + c000e85e: 047040ef jal ra,c00130a4 + c000e862: 00055463 bgez a0,c000e86a + c000e866: e63fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15150 if (!is_enumerable) - c000e77c: f60a91e3 bnez s5,c000e6de - c000e780: b3a1 j c000e4c8 + c000e86a: f60a91e3 bnez s5,c000e7cc + c000e86e: b3a1 j c000e5b6 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17355 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17363 if (js_for_of_start(ctx, sp, FALSE)) - c000e782: 4601 li a2,0 - c000e784: 85ea mv a1,s10 - c000e786: 8526 mv a0,s1 - c000e788: 47e2c0ef jal ra,c003ac06 - c000e78c: c119 beqz a0,c000e792 - c000e78e: e4dfc06f j c000b5da + c000e870: 4601 li a2,0 + c000e872: 85ea mv a1,s10 + c000e874: 8526 mv a0,s1 + c000e876: 5602c0ef jal ra,c003add6 + c000e87a: c119 beqz a0,c000e880 + c000e87c: e4dfc06f j c000b6c8 JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 return JS_MKVAL(JS_TAG_CATCH_OFFSET, val); - c000e792: 4795 li a5,5 - c000e794: eef43c23 sd a5,-264(s0) - c000e798: ee043823 sd zero,-272(s0) + c000e880: 4795 li a5,5 + c000e882: eef43c23 sd a5,-264(s0) + c000e886: ee043823 sd zero,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17366 *sp++ = JS_NewCatchOffset(ctx, 0); - c000e79c: 000d3823 sd zero,16(s10) - c000e7a0: 88f43c23 sd a5,-1896(s0) - c000e7a4: ef843783 ld a5,-264(s0) + c000e88a: 000d3823 sd zero,16(s10) + c000e88e: 88f43c23 sd a5,-1896(s0) + c000e892: ef843783 ld a5,-264(s0) JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 - c000e7a8: 88043823 sd zero,-1904(s0) + c000e896: 88043823 sd zero,-1904(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17358 - c000e7ac: 020d0d13 addi s10,s10,32 - c000e7b0: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17359 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17366 + c000e89a: 020d0d13 addi s10,s10,32 + c000e89e: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17367 BREAK; - c000e7b4: cc5fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17362 + c000e8a2: cc5fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17370 int offset = -3 - pc[0]; - c000e7b8: 001bc683 lbu a3,1(s7) + c000e8a6: 001bc683 lbu a3,1(s7) js_for_of_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15350 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15358 int done = 1; - c000e7bc: 4785 li a5,1 - c000e7be: e8f42823 sw a5,-368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15352 + c000e8aa: 4785 li a5,1 + c000e8ac: e8f42823 sw a5,-368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15360 if (likely(!JS_IsUndefined(sp[offset]))) { - c000e7c2: 57f5 li a5,-3 - c000e7c4: 9f95 subw a5,a5,a3 - c000e7c6: 0792 slli a5,a5,0x4 - c000e7c8: 00fd0a33 add s4,s10,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15349 + c000e8b0: 57f5 li a5,-3 + c000e8b2: 9f95 subw a5,a5,a3 + c000e8b4: 0792 slli a5,a5,0x4 + c000e8b6: 00fd0a33 add s4,s10,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15357 JSValue value = JS_UNDEFINED; - c000e7cc: ec043823 sd zero,-304(s0) + c000e8ba: ec043823 sd zero,-304(s0) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c000e7d0: 008a3603 ld a2,8(s4) + c000e8be: 008a3603 ld a2,8(s4) js_for_of_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15360 if (likely(!JS_IsUndefined(sp[offset]))) { - c000e7d4: 478d li a5,3 + c000e8c2: 478d li a5,3 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17363 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17371 pc += 1; - c000e7d6: 002b8913 addi s2,s7,2 + c000e8c4: 002b8913 addi s2,s7,2 js_for_of_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15360 if (likely(!JS_IsUndefined(sp[offset]))) { - c000e7da: 0006071b sext.w a4,a2 - c000e7de: 06f70663 beq a4,a5,c000e84a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15353 + c000e8c8: 0006071b sext.w a4,a2 + c000e8cc: 06f70663 beq a4,a5,c000e938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15361 value = JS_IteratorNext(ctx, sp[offset], sp[offset + 1], 0, NULL, &done); - c000e7e2: 5779 li a4,-2 - c000e7e4: 9f15 subw a4,a4,a3 - c000e7e6: 0712 slli a4,a4,0x4 - c000e7e8: 976a add a4,a4,s10 - c000e7ea: 6314 ld a3,0(a4) - c000e7ec: 000a3583 ld a1,0(s4) - c000e7f0: 6718 ld a4,8(a4) - c000e7f2: e9040793 addi a5,s0,-368 - c000e7f6: 8526 mv a0,s1 - c000e7f8: 13a2c0ef jal ra,c003a932 - c000e7fc: eca43823 sd a0,-304(s0) - c000e800: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15354 + c000e8d0: 5779 li a4,-2 + c000e8d2: 9f15 subw a4,a4,a3 + c000e8d4: 0712 slli a4,a4,0x4 + c000e8d6: 976a add a4,a4,s10 + c000e8d8: 6314 ld a3,0(a4) + c000e8da: 000a3583 ld a1,0(s4) + c000e8de: 6718 ld a4,8(a4) + c000e8e0: e9040793 addi a5,s0,-368 + c000e8e4: 8526 mv a0,s1 + c000e8e6: 21c2c0ef jal ra,c003ab02 + c000e8ea: eca43823 sd a0,-304(s0) + c000e8ee: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15362 if (JS_IsException(value)) - c000e804: 0005871b sext.w a4,a1 - c000e808: 4799 li a5,6 - c000e80a: 04f71263 bne a4,a5,c000e84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15355 + c000e8f2: 0005871b sext.w a4,a1 + c000e8f6: 4799 li a5,6 + c000e8f8: 04f71263 bne a4,a5,c000e93c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15363 done = -1; - c000e80e: 57fd li a5,-1 - c000e810: e8f42823 sw a5,-368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15359 + c000e8fc: 57fd li a5,-1 + c000e8fe: e8f42823 sw a5,-368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15367 JS_FreeValue(ctx, sp[offset]); - c000e814: 000a3583 ld a1,0(s4) - c000e818: 008a3603 ld a2,8(s4) - c000e81c: 8526 mv a0,s1 - c000e81e: b1af90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15360 + c000e902: 000a3583 ld a1,0(s4) + c000e906: 008a3603 ld a2,8(s4) + c000e90a: 8526 mv a0,s1 + c000e90c: b1af90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15368 sp[offset] = JS_UNDEFINED; - c000e822: 478d li a5,3 - c000e824: 000a3023 sd zero,0(s4) - c000e828: 00fa3423 sd a5,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15361 + c000e910: 478d li a5,3 + c000e912: 000a3023 sd zero,0(s4) + c000e916: 00fa3423 sd a5,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15369 if (done < 0) { - c000e82c: e9042783 lw a5,-368(s0) - c000e830: 0007d463 bgez a5,c000e838 - c000e834: da7fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15364 + c000e91a: e9042783 lw a5,-368(s0) + c000e91e: 0007d463 bgez a5,c000e926 + c000e922: da7fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15372 JS_FreeValue(ctx, value); - c000e838: ed043583 ld a1,-304(s0) - c000e83c: ed843603 ld a2,-296(s0) - c000e840: 8526 mv a0,s1 - c000e842: af6f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15365 + c000e926: ed043583 ld a1,-304(s0) + c000e92a: ed843603 ld a2,-296(s0) + c000e92e: 8526 mv a0,s1 + c000e930: af6f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15373 value = JS_UNDEFINED; - c000e846: ec043823 sd zero,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15349 + c000e934: ec043823 sd zero,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15357 JSValue value = JS_UNDEFINED; - c000e84a: 458d li a1,3 - c000e84c: a021 j c000e854 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15356 + c000e938: 458d li a1,3 + c000e93a: a021 j c000e942 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15364 if (done) { - c000e84e: e9042783 lw a5,-368(s0) - c000e852: f3e9 bnez a5,c000e814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15369 + c000e93c: e9042783 lw a5,-368(s0) + c000e940: f3e9 bnez a5,c000e902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15377 sp[0] = value; - c000e854: ed043783 ld a5,-304(s0) - c000e858: ecb43c23 sd a1,-296(s0) + c000e942: ed043783 ld a5,-304(s0) + c000e946: ecb43c23 sd a1,-296(s0) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c000e85c: c8042a23 sw zero,-876(s0) + c000e94a: c8042a23 sw zero,-876(s0) js_for_of_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15369 - c000e860: 00fd3023 sd a5,0(s10) - c000e864: ed843783 ld a5,-296(s0) - c000e868: 4705 li a4,1 - c000e86a: c8e43c23 sd a4,-872(s0) - c000e86e: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15377 + c000e94e: 00fd3023 sd a5,0(s10) + c000e952: ed843783 ld a5,-296(s0) + c000e956: 4705 li a4,1 + c000e958: c8e43c23 sd a4,-872(s0) + c000e95c: 00fd3423 sd a5,8(s10) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c000e872: e9042783 lw a5,-368(s0) - c000e876: eee43c23 sd a4,-264(s0) + c000e960: e9042783 lw a5,-368(s0) + c000e964: eee43c23 sd a4,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17374 sp += 2; - c000e87a: 020d0d13 addi s10,s10,32 + c000e968: 020d0d13 addi s10,s10,32 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c000e87e: 00f037b3 snez a5,a5 - c000e882: c8f42823 sw a5,-880(s0) - c000e886: c9043783 ld a5,-880(s0) - c000e88a: eef43823 sd a5,-272(s0) + c000e96c: 00f037b3 snez a5,a5 + c000e970: c8f42823 sw a5,-880(s0) + c000e974: c9043783 ld a5,-880(s0) + c000e978: eef43823 sd a5,-272(s0) js_for_of_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15378 sp[1] = JS_NewBool(ctx, done); - c000e88e: fefd3823 sd a5,-16(s10) - c000e892: ef843783 ld a5,-264(s0) - c000e896: fefd3c23 sd a5,-8(s10) + c000e97c: fefd3823 sd a5,-16(s10) + c000e980: ef843783 ld a5,-264(s0) + c000e984: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17376 BREAK; - c000e89a: bdffc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17370 + c000e988: bdffc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17378 if (js_for_of_start(ctx, sp, TRUE)) - c000e89e: 4605 li a2,1 - c000e8a0: 85ea mv a1,s10 - c000e8a2: 8526 mv a0,s1 - c000e8a4: 3622c0ef jal ra,c003ac06 - c000e8a8: c119 beqz a0,c000e8ae - c000e8aa: d31fc06f j c000b5da + c000e98c: 4605 li a2,1 + c000e98e: 85ea mv a1,s10 + c000e990: 8526 mv a0,s1 + c000e992: 4442c0ef jal ra,c003add6 + c000e996: c119 beqz a0,c000e99c + c000e998: d31fc06f j c000b6c8 JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 return JS_MKVAL(JS_TAG_CATCH_OFFSET, val); - c000e8ae: 4795 li a5,5 - c000e8b0: eef43c23 sd a5,-264(s0) - c000e8b4: ee043823 sd zero,-272(s0) + c000e99c: 4795 li a5,5 + c000e99e: eef43c23 sd a5,-264(s0) + c000e9a2: ee043823 sd zero,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17373 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17381 *sp++ = JS_NewCatchOffset(ctx, 0); - c000e8b8: 000d3823 sd zero,16(s10) - c000e8bc: 8af43423 sd a5,-1880(s0) - c000e8c0: ef843783 ld a5,-264(s0) + c000e9a6: 000d3823 sd zero,16(s10) + c000e9aa: 8af43423 sd a5,-1880(s0) + c000e9ae: ef843783 ld a5,-264(s0) JS_NewCatchOffset(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:520 - c000e8c4: 8a043023 sd zero,-1888(s0) + c000e9b2: 8a043023 sd zero,-1888(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17373 - c000e8c8: 020d0d13 addi s10,s10,32 - c000e8cc: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17381 + c000e9b6: 020d0d13 addi s10,s10,32 + c000e9ba: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17382 BREAK; - c000e8d0: ba9fc06f j c000b478 + c000e9be: ba9fc06f j c000b566 js_iterator_get_value_done(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15405 obj = sp[-1]; - c000e8d4: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15398 + c000e9c2: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15406 if (!JS_IsObject(obj)) { - c000e8d8: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15397 + c000e9c6: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15405 obj = sp[-1]; - c000e8da: e8b43823 sd a1,-368(s0) - c000e8de: ff8d3603 ld a2,-8(s10) - c000e8e2: e8c43c23 sd a2,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15398 + c000e9c8: e8b43823 sd a1,-368(s0) + c000e9cc: ff8d3603 ld a2,-8(s10) + c000e9d0: e8c43c23 sd a2,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15406 if (!JS_IsObject(obj)) { - c000e8e6: ff8d2703 lw a4,-8(s10) - c000e8ea: 00f70b63 beq a4,a5,c000e900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15399 + c000e9d4: ff8d2703 lw a4,-8(s10) + c000e9d8: 00f70b63 beq a4,a5,c000e9ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15407 JS_ThrowTypeError(ctx, "iterator must return an object"); - c000e8ee: 8526 mv a0,s1 - c000e8f0: 0004f597 auipc a1,0x4f - c000e8f4: 8e058593 addi a1,a1,-1824 # c005d1d0 - c000e8f8: 2ff040ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15400 + c000e9dc: 8526 mv a0,s1 + c000e9de: 0004f597 auipc a1,0x4f + c000e9e2: a2258593 addi a1,a1,-1502 # c005d400 + c000e9e6: 2ff040ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15408 return -1; - c000e8fc: cdffc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15402 + c000e9ea: cdffc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15410 value = JS_IteratorGetCompleteValue(ctx, obj, &done); - c000e900: e8040693 addi a3,s0,-384 - c000e904: 8526 mv a0,s1 - c000e906: 2a0030ef jal ra,c0011ba6 - c000e90a: ecb43c23 sd a1,-296(s0) - c000e90e: eca43823 sd a0,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15403 + c000e9ee: e8040693 addi a3,s0,-384 + c000e9f2: 8526 mv a0,s1 + c000e9f4: 2a0030ef jal ra,c0011c94 + c000e9f8: ecb43c23 sd a1,-296(s0) + c000e9fc: eca43823 sd a0,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15411 if (JS_IsException(value)) - c000e912: 2581 sext.w a1,a1 - c000e914: 4799 li a5,6 - c000e916: 00f59463 bne a1,a5,c000e91e - c000e91a: cc1fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15405 + c000ea00: 2581 sext.w a1,a1 + c000ea02: 4799 li a5,6 + c000ea04: 00f59463 bne a1,a5,c000ea0c + c000ea08: cc1fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15413 JS_FreeValue(ctx, obj); - c000e91e: e9043583 ld a1,-368(s0) - c000e922: e9843603 ld a2,-360(s0) - c000e926: 8526 mv a0,s1 + c000ea0c: e9043583 ld a1,-368(s0) + c000ea10: e9843603 ld a2,-360(s0) + c000ea14: 8526 mv a0,s1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17386 sp += 1; - c000e928: 0d41 addi s10,s10,16 + c000ea16: 0d41 addi s10,s10,16 js_iterator_get_value_done(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15413 JS_FreeValue(ctx, obj); - c000e92a: a0ef90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15406 + c000ea18: a0ef90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15414 sp[-1] = value; - c000e92e: ed043783 ld a5,-304(s0) + c000ea1c: ed043783 ld a5,-304(s0) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c000e932: ca042223 sw zero,-860(s0) - c000e936: 4705 li a4,1 + c000ea20: ca042223 sw zero,-860(s0) + c000ea24: 4705 li a4,1 js_iterator_get_value_done(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15406 - c000e938: fefd3023 sd a5,-32(s10) - c000e93c: ed843783 ld a5,-296(s0) - c000e940: cae43423 sd a4,-856(s0) - c000e944: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15414 + c000ea26: fefd3023 sd a5,-32(s10) + c000ea2a: ed843783 ld a5,-296(s0) + c000ea2e: cae43423 sd a4,-856(s0) + c000ea32: fefd3423 sd a5,-24(s10) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c000e948: e8042783 lw a5,-384(s0) - c000e94c: eee43c23 sd a4,-264(s0) - c000e950: 00f037b3 snez a5,a5 - c000e954: caf42023 sw a5,-864(s0) - c000e958: ca043783 ld a5,-864(s0) - c000e95c: eef43823 sd a5,-272(s0) + c000ea36: e8042783 lw a5,-384(s0) + c000ea3a: eee43c23 sd a4,-264(s0) + c000ea3e: 00f037b3 snez a5,a5 + c000ea42: caf42023 sw a5,-864(s0) + c000ea46: ca043783 ld a5,-864(s0) + c000ea4a: eef43823 sd a5,-272(s0) js_iterator_get_value_done(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15407 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15415 sp[0] = JS_NewBool(ctx, done); - c000e960: fefd3823 sd a5,-16(s10) - c000e964: ef843783 ld a5,-264(s0) - c000e968: fefd3c23 sd a5,-8(s10) + c000ea4e: fefd3823 sd a5,-16(s10) + c000ea52: ef843783 ld a5,-264(s0) + c000ea56: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17379 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17387 BREAK; - c000e96c: b0dfc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17381 + c000ea5a: b0dfc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17389 if (unlikely(!JS_IsObject(sp[-1]))) { - c000e970: ff8d2703 lw a4,-8(s10) - c000e974: 57fd li a5,-1 - c000e976: 00f71463 bne a4,a5,c000e97e - c000e97a: afffc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17382 + c000ea5e: ff8d2703 lw a4,-8(s10) + c000ea62: 57fd li a5,-1 + c000ea64: 00f71463 bne a4,a5,c000ea6c + c000ea68: afffc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17390 JS_ThrowTypeError(ctx, "iterator must return an object"); - c000e97e: 8526 mv a0,s1 - c000e980: 0004f597 auipc a1,0x4f - c000e984: 85058593 addi a1,a1,-1968 # c005d1d0 - c000e988: 26f040ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17383 + c000ea6c: 8526 mv a0,s1 + c000ea6e: 0004f597 auipc a1,0x4f + c000ea72: 99258593 addi a1,a1,-1646 # c005d400 + c000ea76: 26f040ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17391 goto exception; - c000e98c: c4ffc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17390 + c000ea7a: c4ffc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17398 JS_FreeValue(ctx, sp[-1]); /* drop the next method */ - c000e990: fe0d3583 ld a1,-32(s10) - c000e994: fe8d3603 ld a2,-24(s10) - c000e998: 8526 mv a0,s1 - c000e99a: fe0d0a13 addi s4,s10,-32 - c000e99e: 99af90ef jal ra,c0007b38 + c000ea7e: fe0d3583 ld a1,-32(s10) + c000ea82: fe8d3603 ld a2,-24(s10) + c000ea86: 8526 mv a0,s1 + c000ea88: fe0d0a13 addi s4,s10,-32 + c000ea8c: 99af90ef jal ra,c0007c26 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c000e9a2: fd8d2703 lw a4,-40(s10) + c000ea90: fd8d2703 lw a4,-40(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17400 if (!JS_IsUndefined(sp[-1])) { - c000e9a6: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17393 + c000ea94: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17401 if (JS_IteratorClose(ctx, sp[-1], FALSE)) - c000e9a8: fd0d0d13 addi s10,s10,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17392 + c000ea96: fd0d0d13 addi s10,s10,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17400 if (!JS_IsUndefined(sp[-1])) { - c000e9ac: 00f71463 bne a4,a5,c000e9b4 - c000e9b0: ac9fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17393 + c000ea9a: 00f71463 bne a4,a5,c000eaa2 + c000ea9e: ac9fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17401 if (JS_IteratorClose(ctx, sp[-1], FALSE)) - c000e9b4: 000d3583 ld a1,0(s10) - c000e9b8: 008d3603 ld a2,8(s10) - c000e9bc: 4681 li a3,0 - c000e9be: 8526 mv a0,s1 - c000e9c0: 7c9040ef jal ra,c0013988 - c000e9c4: c119 beqz a0,c000e9ca - c000e9c6: 5310206f j c00116f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17395 + c000eaa2: 000d3583 ld a1,0(s10) + c000eaa6: 008d3603 ld a2,8(s10) + c000eaaa: 4681 li a3,0 + c000eaac: 8526 mv a0,s1 + c000eaae: 7c9040ef jal ra,c0013a76 + c000eab2: c119 beqz a0,c000eab8 + c000eab4: 5310206f j c00117e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17403 JS_FreeValue(ctx, sp[-1]); - c000e9ca: 000d3583 ld a1,0(s10) - c000e9ce: 008d3603 ld a2,8(s10) - c000e9d2: 8526 mv a0,s1 - c000e9d4: 964f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17398 + c000eab8: 000d3583 ld a1,0(s10) + c000eabc: 008d3603 ld a2,8(s10) + c000eac0: 8526 mv a0,s1 + c000eac2: 964f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17406 BREAK; - c000e9d8: aa1fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17403 + c000eac6: aa1fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17411 ret_val = *--sp; - c000e9dc: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17404 + c000eaca: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17412 while (sp > stack_buf && - c000e9e0: 4a15 li s4,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17403 + c000eace: 4a15 li s4,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17411 ret_val = *--sp; - c000e9e2: 1d41 addi s10,s10,-16 - c000e9e4: eef43823 sd a5,-272(s0) - c000e9e8: 008d3783 ld a5,8(s10) - c000e9ec: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17404 + c000ead0: 1d41 addi s10,s10,-16 + c000ead2: eef43823 sd a5,-272(s0) + c000ead6: 008d3783 ld a5,8(s10) + c000eada: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17412 while (sp > stack_buf && - c000e9f0: 77fd lui a5,0xfffff - c000e9f2: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> - c000e9f6: 97a2 add a5,a5,s0 - c000e9f8: 639c ld a5,0(a5) - c000e9fa: 03a7f963 bgeu a5,s10,c000ea2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17404 (discriminator 1) - c000e9fe: ff8d2783 lw a5,-8(s10) - c000ea02: 01479c63 bne a5,s4,c000ea1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17413 + c000eade: 77fd lui a5,0xfffff + c000eae0: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> + c000eae4: 97a2 add a5,a5,s0 + c000eae6: 639c ld a5,0(a5) + c000eae8: 03a7f963 bgeu a5,s10,c000eb1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17412 (discriminator 1) + c000eaec: ff8d2783 lw a5,-8(s10) + c000eaf0: 01479c63 bne a5,s4,c000eb08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17421 sp[-1] = ret_val; - c000ea06: ef043783 ld a5,-272(s0) - c000ea0a: fefd3823 sd a5,-16(s10) - c000ea0e: ef843783 ld a5,-264(s0) - c000ea12: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17415 + c000eaf4: ef043783 ld a5,-272(s0) + c000eaf8: fefd3823 sd a5,-16(s10) + c000eafc: ef843783 ld a5,-264(s0) + c000eb00: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17423 BREAK; - c000ea16: a63fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17406 + c000eb04: a63fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17414 JS_FreeValue(ctx, *--sp); - c000ea1a: ff0d3583 ld a1,-16(s10) - c000ea1e: ff8d3603 ld a2,-8(s10) - c000ea22: 8526 mv a0,s1 - c000ea24: 1d41 addi s10,s10,-16 - c000ea26: 912f90ef jal ra,c0007b38 - c000ea2a: b7d9 j c000e9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17408 + c000eb08: ff0d3583 ld a1,-16(s10) + c000eb0c: ff8d3603 ld a2,-8(s10) + c000eb10: 8526 mv a0,s1 + c000eb12: 1d41 addi s10,s10,-16 + c000eb14: 912f90ef jal ra,c0007c26 + c000eb18: b7d9 j c000eade +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17416 if (unlikely(sp == stack_buf)) { - c000ea2c: 77fd lui a5,0xfffff - c000ea2e: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> - c000ea32: 97a2 add a5,a5,s0 - c000ea34: 639c ld a5,0(a5) - c000ea36: fcfd18e3 bne s10,a5,c000ea06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17409 + c000eb1a: 77fd lui a5,0xfffff + c000eb1c: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> + c000eb20: 97a2 add a5,a5,s0 + c000eb22: 639c ld a5,0(a5) + c000eb24: fcfd18e3 bne s10,a5,c000eaf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17417 JS_ThrowInternalError(ctx, "nip_catch"); - c000ea3a: 8526 mv a0,s1 - c000ea3c: 0004e597 auipc a1,0x4e - c000ea40: 7b458593 addi a1,a1,1972 # c005d1f0 - c000ea44: 741050ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17410 + c000eb28: 8526 mv a0,s1 + c000eb2a: 0004f597 auipc a1,0x4f + c000eb2e: 8f658593 addi a1,a1,-1802 # c005d420 + c000eb32: 741050ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17418 JS_FreeValue(ctx, ret_val); - c000ea48: ef043583 ld a1,-272(s0) - c000ea4c: ef843603 ld a2,-264(s0) - c000ea50: 8526 mv a0,s1 - c000ea52: 8e6f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17411 + c000eb36: ef043583 ld a1,-272(s0) + c000eb3a: ef843603 ld a2,-264(s0) + c000eb3e: 8526 mv a0,s1 + c000eb40: 8e6f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17419 goto exception; - c000ea56: b85fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17421 + c000eb44: b85fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17429 ret = JS_Call(ctx, sp[-3], sp[-4], - c000ea5a: fc0d3683 ld a3,-64(s10) - c000ea5e: fc8d3703 ld a4,-56(s10) - c000ea62: fd0d3583 ld a1,-48(s10) - c000ea66: fd8d3603 ld a2,-40(s10) - c000ea6a: ff0d0a13 addi s4,s10,-16 - c000ea6e: 4785 li a5,1 - c000ea70: 8852 mv a6,s4 - c000ea72: 8526 mv a0,s1 - c000ea74: 4932a0ef jal ra,c0039706 - c000ea78: eeb43c23 sd a1,-264(s0) - c000ea7c: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17423 + c000eb48: fc0d3683 ld a3,-64(s10) + c000eb4c: fc8d3703 ld a4,-56(s10) + c000eb50: fd0d3583 ld a1,-48(s10) + c000eb54: fd8d3603 ld a2,-40(s10) + c000eb58: ff0d0a13 addi s4,s10,-16 + c000eb5c: 4785 li a5,1 + c000eb5e: 8852 mv a6,s4 + c000eb60: 8526 mv a0,s1 + c000eb62: 5752a0ef jal ra,c00398d6 + c000eb66: eeb43c23 sd a1,-264(s0) + c000eb6a: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17431 if (JS_IsException(ret)) - c000ea80: 2581 sext.w a1,a1 - c000ea82: 4799 li a5,6 - c000ea84: 00f59463 bne a1,a5,c000ea8c - c000ea88: b53fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17425 + c000eb6e: 2581 sext.w a1,a1 + c000eb70: 4799 li a5,6 + c000eb72: 00f59463 bne a1,a5,c000eb7a + c000eb76: b53fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17433 JS_FreeValue(ctx, sp[-1]); - c000ea8c: ff0d3583 ld a1,-16(s10) - c000ea90: ff8d3603 ld a2,-8(s10) - c000ea94: 8526 mv a0,s1 - c000ea96: 8a2f90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17426 + c000eb7a: ff0d3583 ld a1,-16(s10) + c000eb7e: ff8d3603 ld a2,-8(s10) + c000eb82: 8526 mv a0,s1 + c000eb84: 8a2f90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17434 sp[-1] = ret; - c000ea9a: ef043783 ld a5,-272(s0) - c000ea9e: fefd3823 sd a5,-16(s10) - c000eaa2: ef843783 ld a5,-264(s0) - c000eaa6: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17428 - BREAK; - c000eaaa: 9cffc06f j c000b478 + c000eb88: ef043783 ld a5,-272(s0) + c000eb8c: fefd3823 sd a5,-16(s10) + c000eb90: ef843783 ld a5,-264(s0) + c000eb94: fefd3c23 sd a5,-8(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17436 + BREAK; + c000eb98: 9cffc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17444 flags = *pc++; - c000eaae: 001bca03 lbu s4,1(s7) - c000eab2: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17437 + c000eb9c: 001bca03 lbu s4,1(s7) + c000eba0: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17445 method = JS_GetProperty(ctx, sp[-4], (flags & 1) ? - c000eab6: 46dd li a3,23 - c000eab8: 001a7793 andi a5,s4,1 - c000eabc: e391 bnez a5,c000eac0 - c000eabe: 4699 li a3,6 - c000eac0: fc0d3703 ld a4,-64(s10) + c000eba4: 46dd li a3,23 + c000eba6: 001a7793 andi a5,s4,1 + c000ebaa: e391 bnez a5,c000ebae + c000ebac: 4699 li a3,6 + c000ebae: fc0d3703 ld a4,-64(s10) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000eac4: 4801 li a6,0 - c000eac6: 8526 mv a0,s1 - c000eac8: eee43823 sd a4,-272(s0) - c000eacc: fc8d3783 ld a5,-56(s10) - c000ead0: 85ba mv a1,a4 - c000ead2: 863e mv a2,a5 - c000ead4: eef43c23 sd a5,-264(s0) - c000ead8: 56b020ef jal ra,c0011842 - c000eadc: 8aa43823 sd a0,-1872(s0) - c000eae0: 8ab43c23 sd a1,-1864(s0) - c000eae4: e8a43823 sd a0,-368(s0) - c000eae8: e8b43c23 sd a1,-360(s0) + c000ebb2: 4801 li a6,0 + c000ebb4: 8526 mv a0,s1 + c000ebb6: eee43823 sd a4,-272(s0) + c000ebba: fc8d3783 ld a5,-56(s10) + c000ebbe: 85ba mv a1,a4 + c000ebc0: 863e mv a2,a5 + c000ebc2: eef43c23 sd a5,-264(s0) + c000ebc6: 56b020ef jal ra,c0011930 + c000ebca: 8aa43823 sd a0,-1872(s0) + c000ebce: 8ab43c23 sd a1,-1864(s0) + c000ebd2: e8a43823 sd a0,-368(s0) + c000ebd6: e8b43c23 sd a1,-360(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17439 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17447 (discriminator 4) if (JS_IsException(method)) - c000eaec: 0005871b sext.w a4,a1 - c000eaf0: 4799 li a5,6 + c000ebda: 0005871b sext.w a4,a1 + c000ebde: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) - c000eaf2: 862e mv a2,a1 + c000ebe0: 862e mv a2,a1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17439 (discriminator 4) - c000eaf4: 00f71463 bne a4,a5,c000eafc - c000eaf8: ae3fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17441 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17447 (discriminator 4) + c000ebe2: 00f71463 bne a4,a5,c000ebea + c000ebe6: ae3fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17449 (discriminator 1) if (JS_IsUndefined(method) || JS_IsNull(method)) { - c000eafc: ffe5879b addiw a5,a1,-2 - c000eb00: 4705 li a4,1 - c000eb02: 08f77563 bgeu a4,a5,c000eb8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17444 + c000ebea: ffe5879b addiw a5,a1,-2 + c000ebee: 4705 li a4,1 + c000ebf0: 08f77563 bgeu a4,a5,c000ec7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17452 if (flags & 2) { - c000eb06: 002a7793 andi a5,s4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16457 + c000ebf4: 002a7793 andi a5,s4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16465 sp[-4] = JS_DupValue(ctx, sp[0]); - c000eb0a: fc0d0713 addi a4,s10,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17444 + c000ebf8: fc0d0713 addi a4,s10,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17452 if (flags & 2) { - c000eb0e: cbbd beqz a5,c000eb84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17446 + c000ebfc: cbbd beqz a5,c000ec72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17454 ret = JS_CallFree(ctx, method, sp[-4], - c000eb10: 4801 li a6,0 - c000eb12: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17449 + c000ebfe: 4801 li a6,0 + c000ec00: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17457 ret = JS_CallFree(ctx, method, sp[-4], - c000eb14: 6718 ld a4,8(a4) - c000eb16: fc0d3683 ld a3,-64(s10) - c000eb1a: 85aa mv a1,a0 - c000eb1c: 8526 mv a0,s1 - c000eb1e: 4ef020ef jal ra,c001180c - c000eb22: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17452 + c000ec02: 6718 ld a4,8(a4) + c000ec04: fc0d3683 ld a3,-64(s10) + c000ec08: 85aa mv a1,a0 + c000ec0a: 8526 mv a0,s1 + c000ec0c: 4ef020ef jal ra,c00118fa + c000ec10: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17460 if (JS_IsException(ret)) - c000eb26: ed842703 lw a4,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17449 + c000ec14: ed842703 lw a4,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17457 ret = JS_CallFree(ctx, method, sp[-4], - c000eb2a: eca43823 sd a0,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17452 + c000ec18: eca43823 sd a0,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17460 if (JS_IsException(ret)) - c000eb2e: 4799 li a5,6 - c000eb30: 00f71463 bne a4,a5,c000eb38 - c000eb34: aa7fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17454 + c000ec1c: 4799 li a5,6 + c000ec1e: 00f71463 bne a4,a5,c000ec26 + c000ec22: aa7fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17462 JS_FreeValue(ctx, sp[-1]); - c000eb38: ff0d3583 ld a1,-16(s10) - c000eb3c: ff8d3603 ld a2,-8(s10) - c000eb40: 8526 mv a0,s1 - c000eb42: ff7f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17455 + c000ec26: ff0d3583 ld a1,-16(s10) + c000ec2a: ff8d3603 ld a2,-8(s10) + c000ec2e: 8526 mv a0,s1 + c000ec30: ff7f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17463 sp[-1] = ret; - c000eb46: ed043783 ld a5,-304(s0) - c000eb4a: fefd3823 sd a5,-16(s10) - c000eb4e: ed843783 ld a5,-296(s0) - c000eb52: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17456 + c000ec34: ed043783 ld a5,-304(s0) + c000ec38: fefd3823 sd a5,-16(s10) + c000ec3c: ed843783 ld a5,-296(s0) + c000ec40: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17464 ret_flag = FALSE; - c000eb56: 4781 li a5,0 + c000ec44: 4781 li a5,0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c000eb58: 8c042223 sw zero,-1852(s0) - c000eb5c: 8cf42023 sw a5,-1856(s0) - c000eb60: 8c043783 ld a5,-1856(s0) - c000eb64: 4705 li a4,1 - c000eb66: eee43c23 sd a4,-264(s0) - c000eb6a: eef43823 sd a5,-272(s0) + c000ec46: 8c042223 sw zero,-1852(s0) + c000ec4a: 8cf42023 sw a5,-1856(s0) + c000ec4e: 8c043783 ld a5,-1856(s0) + c000ec52: 4705 li a4,1 + c000ec54: eee43c23 sd a4,-264(s0) + c000ec58: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17466 sp[0] = JS_NewBool(ctx, ret_flag); - c000eb6e: 00fd3023 sd a5,0(s10) - c000eb72: ef843783 ld a5,-264(s0) - c000eb76: 8ce43423 sd a4,-1848(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17459 + c000ec5c: 00fd3023 sd a5,0(s10) + c000ec60: ef843783 ld a5,-264(s0) + c000ec64: 8ce43423 sd a4,-1848(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17467 sp += 1; - c000eb7a: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17458 + c000ec68: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17466 sp[0] = JS_NewBool(ctx, ret_flag); - c000eb7c: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17461 + c000ec6a: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17469 BREAK; - c000eb80: 8f9fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17449 + c000ec6e: 8f9fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17457 ret = JS_CallFree(ctx, method, sp[-4], - c000eb84: ff0d0813 addi a6,s10,-16 - c000eb88: 4785 li a5,1 - c000eb8a: b769 j c000eb14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17442 + c000ec72: ff0d0813 addi a6,s10,-16 + c000ec76: 4785 li a5,1 + c000ec78: b769 j c000ec02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17450 ret_flag = TRUE; - c000eb8c: 4785 li a5,1 - c000eb8e: b7e9 j c000eb58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17468 + c000ec7a: 4785 li a5,1 + c000ec7c: b7e9 j c000ec46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17476 op1 = sp[-1]; - c000eb90: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17469 + c000ec7e: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17477 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000eb94: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17468 + c000ec82: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17476 op1 = sp[-1]; - c000eb96: ecb43823 sd a1,-304(s0) - c000eb9a: ff8d3603 ld a2,-8(s10) - c000eb9e: ecc43c23 sd a2,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17469 + c000ec84: ecb43823 sd a1,-304(s0) + c000ec88: ff8d3603 ld a2,-8(s10) + c000ec8c: ecc43c23 sd a2,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17477 if ((uint32_t)JS_VALUE_GET_TAG(op1) <= JS_TAG_UNDEFINED) { - c000eba2: ff8d2703 lw a4,-8(s10) - c000eba6: 02e7ed63 bltu a5,a4,c000ebe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17470 + c000ec90: ff8d2703 lw a4,-8(s10) + c000ec94: 02e7ed63 bltu a5,a4,c000ecce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17478 res = JS_VALUE_GET_INT(op1) != 0; - c000ebaa: ff0d2503 lw a0,-16(s10) - c000ebae: 00a03533 snez a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17474 + c000ec98: ff0d2503 lw a0,-16(s10) + c000ec9c: 00a03533 snez a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17482 sp[-1] = JS_NewBool(ctx, !res); - c000ebb2: 00153513 seqz a0,a0 + c000eca0: 00153513 seqz a0,a0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c000ebb6: 8c042a23 sw zero,-1836(s0) - c000ebba: 8ca42823 sw a0,-1840(s0) - c000ebbe: 8d043783 ld a5,-1840(s0) - c000ebc2: 4705 li a4,1 - c000ebc4: eee43c23 sd a4,-264(s0) - c000ebc8: eef43823 sd a5,-272(s0) + c000eca4: 8c042a23 sw zero,-1836(s0) + c000eca8: 8ca42823 sw a0,-1840(s0) + c000ecac: 8d043783 ld a5,-1840(s0) + c000ecb0: 4705 li a4,1 + c000ecb2: eee43c23 sd a4,-264(s0) + c000ecb6: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17474 - c000ebcc: fefd3823 sd a5,-16(s10) - c000ebd0: ef843783 ld a5,-264(s0) - c000ebd4: 8ce43c23 sd a4,-1832(s0) - c000ebd8: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17482 + c000ecba: fefd3823 sd a5,-16(s10) + c000ecbe: ef843783 ld a5,-264(s0) + c000ecc2: 8ce43c23 sd a4,-1832(s0) + c000ecc6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17484 BREAK; - c000ebdc: 89dfc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17472 + c000ecca: 89dfc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17480 res = JS_ToBoolFree(ctx, op1); - c000ebe0: 8526 mv a0,s1 - c000ebe2: a82f90ef jal ra,c0007e64 - c000ebe6: b7f1 j c000ebb2 + c000ecce: 8526 mv a0,s1 + c000ecd0: a82f90ef jal ra,c0007f52 + c000ecd4: b7f1 j c000eca0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ebe8: 002bc783 lbu a5,2(s7) - c000ebec: 001bc683 lbu a3,1(s7) - c000ebf0: ff0d3703 ld a4,-16(s10) - c000ebf4: 07a2 slli a5,a5,0x8 - c000ebf6: 8fd5 or a5,a5,a3 - c000ebf8: 003bc683 lbu a3,3(s7) + c000ecd6: 002bc783 lbu a5,2(s7) + c000ecda: 001bc683 lbu a3,1(s7) + c000ecde: ff0d3703 ld a4,-16(s10) + c000ece2: 07a2 slli a5,a5,0x8 + c000ece4: 8fd5 or a5,a5,a3 + c000ece6: 003bc683 lbu a3,3(s7) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000ebfc: 4801 li a6,0 - c000ebfe: 85ba mv a1,a4 + c000ecea: 4801 li a6,0 + c000ecec: 85ba mv a1,a4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ec00: 06c2 slli a3,a3,0x10 - c000ec02: 8fd5 or a5,a5,a3 - c000ec04: 004bc683 lbu a3,4(s7) - c000ec08: eee43823 sd a4,-272(s0) + c000ecee: 06c2 slli a3,a3,0x10 + c000ecf0: 8fd5 or a5,a5,a3 + c000ecf2: 004bc683 lbu a3,4(s7) + c000ecf6: eee43823 sd a4,-272(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec0c: 8526 mv a0,s1 + c000ecfa: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ec0e: 06e2 slli a3,a3,0x18 - c000ec10: 8edd or a3,a3,a5 + c000ecfc: 06e2 slli a3,a3,0x18 + c000ecfe: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17491 pc += 4; - c000ec12: ff8d3783 ld a5,-8(s10) + c000ed00: ff8d3783 ld a5,-8(s10) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec16: 2681 sext.w a3,a3 + c000ed04: 2681 sext.w a3,a3 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17483 - c000ec18: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17491 + c000ed06: 005b8913 addi s2,s7,5 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec1c: 863e mv a2,a5 - c000ec1e: eef43c23 sd a5,-264(s0) - c000ec22: 421020ef jal ra,c0011842 - c000ec26: 8eb43423 sd a1,-1816(s0) - c000ec2a: ecb43c23 sd a1,-296(s0) - c000ec2e: 8ea43023 sd a0,-1824(s0) - c000ec32: eca43823 sd a0,-304(s0) + c000ed0a: 863e mv a2,a5 + c000ed0c: eef43c23 sd a5,-264(s0) + c000ed10: 421020ef jal ra,c0011930 + c000ed14: 8eb43423 sd a1,-1816(s0) + c000ed18: ecb43c23 sd a1,-296(s0) + c000ed1c: 8ea43023 sd a0,-1824(s0) + c000ed20: eca43823 sd a0,-304(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17494 if (unlikely(JS_IsException(val))) - c000ec36: 2581 sext.w a1,a1 - c000ec38: 4799 li a5,6 - c000ec3a: 00f59463 bne a1,a5,c000ec42 - c000ec3e: 99dfc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17488 + c000ed24: 2581 sext.w a1,a1 + c000ed26: 4799 li a5,6 + c000ed28: 00f59463 bne a1,a5,c000ed30 + c000ed2c: 99dfc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17496 JS_FreeValue(ctx, sp[-1]); - c000ec42: ff0d3583 ld a1,-16(s10) - c000ec46: ff8d3603 ld a2,-8(s10) - c000ec4a: 8526 mv a0,s1 - c000ec4c: eedf80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17489 + c000ed30: ff0d3583 ld a1,-16(s10) + c000ed34: ff8d3603 ld a2,-8(s10) + c000ed38: 8526 mv a0,s1 + c000ed3a: eedf80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17497 sp[-1] = val; - c000ec50: ed043783 ld a5,-304(s0) - c000ec54: fefd3823 sd a5,-16(s10) - c000ec58: ed843783 ld a5,-296(s0) - c000ec5c: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17491 + c000ed3e: ed043783 ld a5,-304(s0) + c000ed42: fefd3823 sd a5,-16(s10) + c000ed46: ed843783 ld a5,-296(s0) + c000ed4a: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17499 BREAK; - c000ec60: 819fc06f j c000b478 + c000ed4e: 819fc06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ec64: 002bc783 lbu a5,2(s7) - c000ec68: 001bc683 lbu a3,1(s7) - c000ec6c: ff0d3703 ld a4,-16(s10) - c000ec70: 07a2 slli a5,a5,0x8 - c000ec72: 8fd5 or a5,a5,a3 - c000ec74: 003bc683 lbu a3,3(s7) + c000ed52: 002bc783 lbu a5,2(s7) + c000ed56: 001bc683 lbu a3,1(s7) + c000ed5a: ff0d3703 ld a4,-16(s10) + c000ed5e: 07a2 slli a5,a5,0x8 + c000ed60: 8fd5 or a5,a5,a3 + c000ed62: 003bc683 lbu a3,3(s7) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec78: 4801 li a6,0 - c000ec7a: 85ba mv a1,a4 + c000ed66: 4801 li a6,0 + c000ed68: 85ba mv a1,a4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ec7c: 06c2 slli a3,a3,0x10 - c000ec7e: 8fd5 or a5,a5,a3 - c000ec80: 004bc683 lbu a3,4(s7) - c000ec84: eee43823 sd a4,-272(s0) + c000ed6a: 06c2 slli a3,a3,0x10 + c000ed6c: 8fd5 or a5,a5,a3 + c000ed6e: 004bc683 lbu a3,4(s7) + c000ed72: eee43823 sd a4,-272(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec88: 8526 mv a0,s1 + c000ed76: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ec8a: 06e2 slli a3,a3,0x18 - c000ec8c: 8edd or a3,a3,a5 + c000ed78: 06e2 slli a3,a3,0x18 + c000ed7a: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17506 pc += 4; - c000ec8e: ff8d3783 ld a5,-8(s10) + c000ed7c: ff8d3783 ld a5,-8(s10) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec92: 2681 sext.w a3,a3 + c000ed80: 2681 sext.w a3,a3 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17498 - c000ec94: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17506 + c000ed82: 005b8913 addi s2,s7,5 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000ec98: 863e mv a2,a5 - c000ec9a: eef43c23 sd a5,-264(s0) - c000ec9e: 3a5020ef jal ra,c0011842 - c000eca2: 8eb43c23 sd a1,-1800(s0) - c000eca6: ecb43c23 sd a1,-296(s0) - c000ecaa: 8ea43823 sd a0,-1808(s0) - c000ecae: eca43823 sd a0,-304(s0) + c000ed86: 863e mv a2,a5 + c000ed88: eef43c23 sd a5,-264(s0) + c000ed8c: 3a5020ef jal ra,c0011930 + c000ed90: 8eb43c23 sd a1,-1800(s0) + c000ed94: ecb43c23 sd a1,-296(s0) + c000ed98: 8ea43823 sd a0,-1808(s0) + c000ed9c: eca43823 sd a0,-304(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17501 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17509 if (unlikely(JS_IsException(val))) - c000ecb2: 2581 sext.w a1,a1 - c000ecb4: 4799 li a5,6 - c000ecb6: 00f59463 bne a1,a5,c000ecbe - c000ecba: 921fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17503 + c000eda0: 2581 sext.w a1,a1 + c000eda2: 4799 li a5,6 + c000eda4: 00f59463 bne a1,a5,c000edac + c000eda8: 921fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17511 *sp++ = val; - c000ecbe: 00ad3023 sd a0,0(s10) - c000ecc2: ed843783 ld a5,-296(s0) - c000ecc6: 0d41 addi s10,s10,16 - c000ecc8: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17505 + c000edac: 00ad3023 sd a0,0(s10) + c000edb0: ed843783 ld a5,-296(s0) + c000edb4: 0d41 addi s10,s10,16 + c000edb6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17513 BREAK; - c000eccc: facfc06f j c000b478 + c000edba: facfc06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ecd0: 002bc783 lbu a5,2(s7) - c000ecd4: 001bc683 lbu a3,1(s7) + c000edbe: 002bc783 lbu a5,2(s7) + c000edc2: 001bc683 lbu a3,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17522 ret = JS_SetPropertyInternal(ctx, sp[-2], atom, sp[-1], sp[-2], - c000ecd8: fe0d0a13 addi s4,s10,-32 + c000edc6: fe0d0a13 addi s4,s10,-32 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ecdc: 07a2 slli a5,a5,0x8 - c000ecde: 8fd5 or a5,a5,a3 - c000ece0: 003bc683 lbu a3,3(s7) + c000edca: 07a2 slli a5,a5,0x8 + c000edcc: 8fd5 or a5,a5,a3 + c000edce: 003bc683 lbu a3,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17514 - c000ece4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17522 + c000edd2: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17520 pc += 4; - c000ece6: 005b8913 addi s2,s7,5 + c000edd4: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ecea: 06c2 slli a3,a3,0x10 - c000ecec: 8fd5 or a5,a5,a3 - c000ecee: 004bc683 lbu a3,4(s7) - c000ecf2: 06e2 slli a3,a3,0x18 - c000ecf4: 8edd or a3,a3,a5 + c000edd8: 06c2 slli a3,a3,0x10 + c000edda: 8fd5 or a5,a5,a3 + c000eddc: 004bc683 lbu a3,4(s7) + c000ede0: 06e2 slli a3,a3,0x18 + c000ede2: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17522 ret = JS_SetPropertyInternal(ctx, sp[-2], atom, sp[-1], sp[-2], - c000ecf6: 67a1 lui a5,0x8 - c000ecf8: e03e sd a5,0(sp) - c000ecfa: fe0d3803 ld a6,-32(s10) - c000ecfe: 008a3883 ld a7,8(s4) - c000ed02: ff0d3703 ld a4,-16(s10) - c000ed06: ff8d3783 ld a5,-8(s10) - c000ed0a: 85c2 mv a1,a6 - c000ed0c: 8646 mv a2,a7 - c000ed0e: 2681 sext.w a3,a3 - c000ed10: 3ce030ef jal ra,c00120de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17516 + c000ede4: 67a1 lui a5,0x8 + c000ede6: e03e sd a5,0(sp) + c000ede8: fe0d3803 ld a6,-32(s10) + c000edec: 008a3883 ld a7,8(s4) + c000edf0: ff0d3703 ld a4,-16(s10) + c000edf4: ff8d3783 ld a5,-8(s10) + c000edf8: 85c2 mv a1,a6 + c000edfa: 8646 mv a2,a7 + c000edfc: 2681 sext.w a3,a3 + c000edfe: 3ce030ef jal ra,c00121cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17524 JS_FreeValue(ctx, sp[-2]); - c000ed14: fe0d3583 ld a1,-32(s10) - c000ed18: 008a3603 ld a2,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17514 + c000ee02: fe0d3583 ld a1,-32(s10) + c000ee06: 008a3603 ld a2,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17522 ret = JS_SetPropertyInternal(ctx, sp[-2], atom, sp[-1], sp[-2], - c000ed1c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17516 + c000ee0a: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17524 JS_FreeValue(ctx, sp[-2]); - c000ed1e: 8526 mv a0,s1 - c000ed20: e19f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17518 + c000ee0c: 8526 mv a0,s1 + c000ee0e: e19f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17526 if (unlikely(ret < 0)) - c000ed24: 8d52 mv s10,s4 - c000ed26: 000ac463 bltz s5,c000ed2e - c000ed2a: f4efc06f j c000b478 - c000ed2e: 8adfc06f j c000b5da + c000ee12: 8d52 mv s10,s4 + c000ee14: 000ac463 bltz s5,c000ee1c + c000ee18: f4efc06f j c000b566 + c000ee1c: 8adfc06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ed32: 002bc783 lbu a5,2(s7) - c000ed36: 001bc583 lbu a1,1(s7) + c000ee20: 002bc783 lbu a5,2(s7) + c000ee24: 001bc583 lbu a1,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17538 val = JS_NewSymbolFromAtom(ctx, atom, JS_ATOM_TYPE_PRIVATE); - c000ed3a: 8526 mv a0,s1 + c000ee28: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ed3c: 07a2 slli a5,a5,0x8 - c000ed3e: 8fcd or a5,a5,a1 - c000ed40: 003bc583 lbu a1,3(s7) + c000ee2a: 07a2 slli a5,a5,0x8 + c000ee2c: 8fcd or a5,a5,a1 + c000ee2e: 003bc583 lbu a1,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17529 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17537 pc += 4; - c000ed44: 005b8913 addi s2,s7,5 + c000ee32: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000ed48: 05c2 slli a1,a1,0x10 - c000ed4a: 8fcd or a5,a5,a1 - c000ed4c: 004bc583 lbu a1,4(s7) - c000ed50: 05e2 slli a1,a1,0x18 - c000ed52: 8ddd or a1,a1,a5 + c000ee36: 05c2 slli a1,a1,0x10 + c000ee38: 8fcd or a5,a5,a1 + c000ee3a: 004bc583 lbu a1,4(s7) + c000ee3e: 05e2 slli a1,a1,0x18 + c000ee40: 8ddd or a1,a1,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17538 val = JS_NewSymbolFromAtom(ctx, atom, JS_ATOM_TYPE_PRIVATE); - c000ed54: 2581 sext.w a1,a1 - c000ed56: 5bf090ef jal ra,c0018b14 - c000ed5a: eeb43c23 sd a1,-264(s0) - c000ed5e: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17531 + c000ee42: 2581 sext.w a1,a1 + c000ee44: 6a1090ef jal ra,c0018ce4 + c000ee48: eeb43c23 sd a1,-264(s0) + c000ee4c: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17539 if (JS_IsException(val)) - c000ed62: 2581 sext.w a1,a1 - c000ed64: 4799 li a5,6 - c000ed66: 00f59463 bne a1,a5,c000ed6e - c000ed6a: 871fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17533 + c000ee50: 2581 sext.w a1,a1 + c000ee52: 4799 li a5,6 + c000ee54: 00f59463 bne a1,a5,c000ee5c + c000ee58: 871fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17541 *sp++ = val; - c000ed6e: 00ad3023 sd a0,0(s10) - c000ed72: ef843783 ld a5,-264(s0) - c000ed76: 0d41 addi s10,s10,16 - c000ed78: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17535 + c000ee5c: 00ad3023 sd a0,0(s10) + c000ee60: ef843783 ld a5,-264(s0) + c000ee64: 0d41 addi s10,s10,16 + c000ee66: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17543 BREAK; - c000ed7c: efcfc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17541 + c000ee6a: efcfc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17549 val = JS_GetPrivateField(ctx, sp[-2], sp[-1]); - c000ed80: fe8d3703 ld a4,-24(s10) - c000ed84: fe0d3b03 ld s6,-32(s10) - c000ed88: ff0d3583 ld a1,-16(s10) - c000ed8c: ff8d3783 ld a5,-8(s10) - c000ed90: cae43c23 sd a4,-840(s0) - c000ed94: cb643823 sd s6,-848(s0) - c000ed98: ccb43023 sd a1,-832(s0) - c000ed9c: ccf43423 sd a5,-824(s0) + c000ee6e: fe8d3703 ld a4,-24(s10) + c000ee72: fe0d3b03 ld s6,-32(s10) + c000ee76: ff0d3583 ld a1,-16(s10) + c000ee7a: ff8d3783 ld a5,-8(s10) + c000ee7e: cae43c23 sd a4,-840(s0) + c000ee82: cb643823 sd s6,-848(s0) + c000ee86: ccb43023 sd a1,-832(s0) + c000ee8a: ccf43423 sd a5,-824(s0) JS_GetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7386 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7394 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c000eda0: 2701 sext.w a4,a4 - c000eda2: 56fd li a3,-1 + c000ee8e: 2701 sext.w a4,a4 + c000ee90: 56fd li a3,-1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17549 val = JS_GetPrivateField(ctx, sp[-2], sp[-1]); - c000eda4: fe0d0a93 addi s5,s10,-32 - c000eda8: ff0d0a13 addi s4,s10,-16 + c000ee92: fe0d0a93 addi s5,s10,-32 + c000ee96: ff0d0a13 addi s4,s10,-16 JS_GetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7386 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7394 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c000edac: 04d70f63 beq a4,a3,c000ee0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7387 + c000ee9a: 04d70f63 beq a4,a3,c000eef8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7395 return JS_ThrowTypeErrorNotAnObject(ctx); - c000edb0: 8526 mv a0,s1 - c000edb2: 3c7040ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7398 + c000ee9e: 8526 mv a0,s1 + c000eea0: 3c7040ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7406 return JS_DupValue(ctx, pr->u.value); - c000edb6: cca43823 sd a0,-816(s0) - c000edba: 8b2e mv s6,a1 - c000edbc: cd043783 ld a5,-816(s0) - c000edc0: ef643c23 sd s6,-264(s0) + c000eea4: cca43823 sd a0,-816(s0) + c000eea8: 8b2e mv s6,a1 + c000eeaa: cd043783 ld a5,-816(s0) + c000eeae: ef643c23 sd s6,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17550 JS_FreeValue(ctx, sp[-1]); - c000edc4: 8526 mv a0,s1 - c000edc6: eef43823 sd a5,-272(s0) - c000edca: 000a3583 ld a1,0(s4) - c000edce: 008a3603 ld a2,8(s4) - c000edd2: cd643c23 sd s6,-808(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17546 + c000eeb2: 8526 mv a0,s1 + c000eeb4: eef43823 sd a5,-272(s0) + c000eeb8: 000a3583 ld a1,0(s4) + c000eebc: 008a3603 ld a2,8(s4) + c000eec0: cd643c23 sd s6,-808(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17554 if (unlikely(JS_IsException(val))) - c000edd6: 2b01 sext.w s6,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17542 + c000eec4: 2b01 sext.w s6,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17550 JS_FreeValue(ctx, sp[-1]); - c000edd8: d61f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17543 + c000eec6: d61f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17551 JS_FreeValue(ctx, sp[-2]); - c000eddc: 000ab583 ld a1,0(s5) - c000ede0: 008ab603 ld a2,8(s5) - c000ede4: 8526 mv a0,s1 - c000ede6: d53f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17544 + c000eeca: 000ab583 ld a1,0(s5) + c000eece: 008ab603 ld a2,8(s5) + c000eed2: 8526 mv a0,s1 + c000eed4: d53f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17552 sp[-2] = val; - c000edea: ef043783 ld a5,-272(s0) - c000edee: fefd3023 sd a5,-32(s10) - c000edf2: ef843783 ld a5,-264(s0) - c000edf6: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17546 + c000eed8: ef043783 ld a5,-272(s0) + c000eedc: fefd3023 sd a5,-32(s10) + c000eee0: ef843783 ld a5,-264(s0) + c000eee4: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17554 if (unlikely(JS_IsException(val))) - c000edfa: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17541 + c000eee8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17549 val = JS_GetPrivateField(ctx, sp[-2], sp[-1]); - c000edfc: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17546 + c000eeea: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17554 if (unlikely(JS_IsException(val))) - c000edfe: 00fb0463 beq s6,a5,c000ee06 - c000ee02: e76fc06f j c000b478 - c000ee06: fd4fc06f j c000b5da + c000eeec: 00fb0463 beq s6,a5,c000eef4 + c000eef0: e76fc06f j c000b566 + c000eef4: fd4fc06f j c000b6c8 JS_GetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7389 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7397 if (unlikely(JS_VALUE_GET_TAG(name) != JS_TAG_SYMBOL)) - c000ee0a: 2781 sext.w a5,a5 - c000ee0c: 5761 li a4,-8 - c000ee0e: 00e78e63 beq a5,a4,c000ee2a + c000eef8: 2781 sext.w a5,a5 + c000eefa: 5761 li a4,-8 + c000eefc: 00e78e63 beq a5,a4,c000ef18 JS_ThrowTypeErrorNotASymbol(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6847 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6855 return JS_ThrowTypeError(ctx, "not a symbol"); - c000ee12: 0004e597 auipc a1,0x4e - c000ee16: 3ee58593 addi a1,a1,1006 # c005d200 - c000ee1a: 8526 mv a0,s1 - c000ee1c: 5da040ef jal ra,c00133f6 - c000ee20: cea43023 sd a0,-800(s0) - c000ee24: ceb43423 sd a1,-792(s0) - c000ee28: b779 j c000edb6 + c000ef00: 0004e597 auipc a1,0x4e + c000ef04: 53058593 addi a1,a1,1328 # c005d430 + c000ef08: 8526 mv a0,s1 + c000ef0a: 5da040ef jal ra,c00134e4 + c000ef0e: cea43023 sd a0,-800(s0) + c000ef12: ceb43423 sd a1,-792(s0) + c000ef16: b779 j c000eea4 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000ee2a: 6c88 ld a0,24(s1) - c000ee2c: ba5f60ef jal ra,c00059d0 + c000ef18: 6c88 ld a0,24(s1) + c000ef1a: ba5f60ef jal ra,c0005abe find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000ee30: 018b3703 ld a4,24(s6) + c000ef1e: 018b3703 ld a4,24(s6) js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000ee34: 0005059b sext.w a1,a0 + c000ef22: 0005059b sext.w a1,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ee38: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000ef26: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000ee3a: 531c lw a5,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000ef28: 531c lw a5,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000ee3c: 04000637 lui a2,0x4000 - c000ee40: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000ef2a: 04000637 lui a2,0x4000 + c000ef2e: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000ee42: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000ef30: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ee44: 1782 slli a5,a5,0x20 - c000ee46: 9381 srli a5,a5,0x20 - c000ee48: 0785 addi a5,a5,1 - c000ee4a: 02d787b3 mul a5,a5,a3 + c000ef32: 1782 slli a5,a5,0x20 + c000ef34: 9381 srli a5,a5,0x20 + c000ef36: 0785 addi a5,a5,1 + c000ef38: 02d787b3 mul a5,a5,a3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000ee4e: 04070693 addi a3,a4,64 + c000ef3c: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ee52: 97ba add a5,a5,a4 - c000ee54: 0007e783 lwu a5,0(a5) # 8000 <__clzdi2-0xbfff8000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000ef40: 97ba add a5,a5,a4 + c000ef42: 0007e783 lwu a5,0(a5) # 8000 <__clzdi2-0xbfff8000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000ee58: e785 bnez a5,c000ee80 + c000ef46: e785 bnez a5,c000ef6e JS_ThrowTypeErrorPrivateNotFound(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7345 return JS_ThrowTypeErrorAtom(ctx, "private class field '%s' does not exist", - c000ee5a: 0004e697 auipc a3,0x4e - c000ee5e: 17668693 addi a3,a3,374 # c005cfd0 - c000ee62: 0004e617 auipc a2,0x4e - c000ee66: 48e60613 addi a2,a2,1166 # c005d2f0 - c000ee6a: 8526 mv a0,s1 - c000ee6c: 666040ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> - c000ee70: cea43823 sd a0,-784(s0) - c000ee74: ceb43c23 sd a1,-776(s0) + c000ef48: 0004e697 auipc a3,0x4e + c000ef4c: 2b868693 addi a3,a3,696 # c005d200 + c000ef50: 0004e617 auipc a2,0x4e + c000ef54: 5d060613 addi a2,a2,1488 # c005d520 + c000ef58: 8526 mv a0,s1 + c000ef5a: 666040ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> + c000ef5e: cea43823 sd a0,-784(s0) + c000ef62: ceb43c23 sd a1,-776(s0) JS_GetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7404 return JS_EXCEPTION; - c000ee78: cc043823 sd zero,-816(s0) - c000ee7c: 4b19 li s6,6 - c000ee7e: bf3d j c000edbc + c000ef66: cc043823 sd zero,-816(s0) + c000ef6a: 4b19 li s6,6 + c000ef6c: bf3d j c000eeaa find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000ee80: 00379713 slli a4,a5,0x3 - c000ee84: 1761 addi a4,a4,-8 - c000ee86: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000ef6e: 00379713 slli a4,a5,0x3 + c000ef72: 1761 addi a4,a4,-8 + c000ef74: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000ee88: 4348 lw a0,4(a4) - c000ee8a: 00b51d63 bne a0,a1,c000eea4 + c000ef76: 4348 lw a0,4(a4) + c000ef78: 00b51d63 bne a0,a1,c000ef92 JS_GetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7398 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7406 return JS_DupValue(ctx, pr->u.value); - c000ee8e: 020b3703 ld a4,32(s6) - c000ee92: 0792 slli a5,a5,0x4 - c000ee94: 97ba add a5,a5,a4 - c000ee96: ff07b503 ld a0,-16(a5) - c000ee9a: ff87b583 ld a1,-8(a5) - c000ee9e: fd0f70ef jal ra,c000666e - c000eea2: bf11 j c000edb6 + c000ef7c: 020b3703 ld a4,32(s6) + c000ef80: 0792 slli a5,a5,0x4 + c000ef82: 97ba add a5,a5,a4 + c000ef84: ff07b503 ld a0,-16(a5) + c000ef88: ff87b583 ld a1,-8(a5) + c000ef8c: fd0f70ef jal ra,c000675c + c000ef90: bf11 j c000eea4 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000eea4: 431c lw a5,0(a4) - c000eea6: 8ff1 and a5,a5,a2 - c000eea8: 1782 slli a5,a5,0x20 - c000eeaa: 9381 srli a5,a5,0x20 - c000eeac: b775 j c000ee58 + c000ef92: 431c lw a5,0(a4) + c000ef94: 8ff1 and a5,a5,a2 + c000ef96: 1782 slli a5,a5,0x20 + c000ef98: 9381 srli a5,a5,0x20 + c000ef9a: b775 j c000ef46 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17562 ret = JS_SetPrivateField(ctx, sp[-3], sp[-1], sp[-2]); - c000eeae: fe0d3683 ld a3,-32(s10) - c000eeb2: fd8d3703 ld a4,-40(s10) - c000eeb6: fd0d3b03 ld s6,-48(s10) - c000eeba: ff0d3583 ld a1,-16(s10) - c000eebe: ff8d3783 ld a5,-8(s10) - c000eec2: eed43823 sd a3,-272(s0) - c000eec6: fe8d3683 ld a3,-24(s10) - c000eeca: d0e43423 sd a4,-760(s0) - c000eece: d1643023 sd s6,-768(s0) - c000eed2: eed43c23 sd a3,-264(s0) - c000eed6: d0b43823 sd a1,-752(s0) - c000eeda: d0f43c23 sd a5,-744(s0) + c000ef9c: fe0d3683 ld a3,-32(s10) + c000efa0: fd8d3703 ld a4,-40(s10) + c000efa4: fd0d3b03 ld s6,-48(s10) + c000efa8: ff0d3583 ld a1,-16(s10) + c000efac: ff8d3783 ld a5,-8(s10) + c000efb0: eed43823 sd a3,-272(s0) + c000efb4: fe8d3683 ld a3,-24(s10) + c000efb8: d0e43423 sd a4,-760(s0) + c000efbc: d1643023 sd s6,-768(s0) + c000efc0: eed43c23 sd a3,-264(s0) + c000efc4: d0b43823 sd a1,-752(s0) + c000efc8: d0f43c23 sd a5,-744(s0) JS_SetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7409 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7417 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) { - c000eede: 2701 sext.w a4,a4 - c000eee0: 56fd li a3,-1 + c000efcc: 2701 sext.w a4,a4 + c000efce: 56fd li a3,-1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17562 ret = JS_SetPrivateField(ctx, sp[-3], sp[-1], sp[-2]); - c000eee2: fd0d0a13 addi s4,s10,-48 - c000eee6: ff0d0a93 addi s5,s10,-16 + c000efd0: fd0d0a13 addi s4,s10,-48 + c000efd4: ff0d0a93 addi s5,s10,-16 JS_SetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7409 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7417 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) { - c000eeea: 00d70e63 beq a4,a3,c000ef06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7410 + c000efd8: 00d70e63 beq a4,a3,c000eff4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7418 JS_ThrowTypeErrorNotAnObject(ctx); - c000eeee: 8526 mv a0,s1 - c000eef0: 289040ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7424 + c000efdc: 8526 mv a0,s1 + c000efde: 289040ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7432 JS_FreeValue(ctx, val); - c000eef4: ef043583 ld a1,-272(s0) - c000eef8: ef843603 ld a2,-264(s0) - c000eefc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7425 + c000efe2: ef043583 ld a1,-272(s0) + c000efe6: ef843603 ld a2,-264(s0) + c000efea: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7433 return -1; - c000eefe: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7424 + c000efec: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7432 JS_FreeValue(ctx, val); - c000ef00: c39f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7425 + c000efee: c39f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7433 return -1; - c000ef04: a869 j c000ef9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7414 + c000eff2: a869 j c000f08c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7422 if (unlikely(JS_VALUE_GET_TAG(name) != JS_TAG_SYMBOL)) { - c000ef06: 2781 sext.w a5,a5 - c000ef08: 5761 li a4,-8 - c000ef0a: 00e78e63 beq a5,a4,c000ef26 + c000eff4: 2781 sext.w a5,a5 + c000eff6: 5761 li a4,-8 + c000eff8: 00e78e63 beq a5,a4,c000f014 JS_ThrowTypeErrorNotASymbol(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6847 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6855 return JS_ThrowTypeError(ctx, "not a symbol"); - c000ef0e: 0004e597 auipc a1,0x4e - c000ef12: 2f258593 addi a1,a1,754 # c005d200 - c000ef16: 8526 mv a0,s1 - c000ef18: 4de040ef jal ra,c00133f6 - c000ef1c: d2a43023 sd a0,-736(s0) - c000ef20: d2b43423 sd a1,-728(s0) + c000effc: 0004e597 auipc a1,0x4e + c000f000: 43458593 addi a1,a1,1076 # c005d430 + c000f004: 8526 mv a0,s1 + c000f006: 4de040ef jal ra,c00134e4 + c000f00a: d2a43023 sd a0,-736(s0) + c000f00e: d2b43423 sd a1,-728(s0) JS_SetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7424 goto fail; - c000ef24: bfc1 j c000eef4 + c000f012: bfc1 j c000efe2 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000ef26: 6c88 ld a0,24(s1) - c000ef28: aa9f60ef jal ra,c00059d0 + c000f014: 6c88 ld a0,24(s1) + c000f016: aa9f60ef jal ra,c0005abe find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000ef2c: 018b3703 ld a4,24(s6) + c000f01a: 018b3703 ld a4,24(s6) js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000ef30: 0005059b sext.w a1,a0 + c000f01e: 0005059b sext.w a1,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ef34: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000f022: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000ef36: 531c lw a5,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000f024: 531c lw a5,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000ef38: 04000637 lui a2,0x4000 - c000ef3c: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000f026: 04000637 lui a2,0x4000 + c000f02a: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000ef3e: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000f02c: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ef40: 1782 slli a5,a5,0x20 - c000ef42: 9381 srli a5,a5,0x20 - c000ef44: 0785 addi a5,a5,1 - c000ef46: 02d787b3 mul a5,a5,a3 + c000f02e: 1782 slli a5,a5,0x20 + c000f030: 9381 srli a5,a5,0x20 + c000f032: 0785 addi a5,a5,1 + c000f034: 02d787b3 mul a5,a5,a3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000ef4a: 04070693 addi a3,a4,64 + c000f038: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000ef4e: 97ba add a5,a5,a4 - c000ef50: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c000f03c: 97ba add a5,a5,a4 + c000f03e: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000ef54: e38d bnez a5,c000ef76 + c000f042: e38d bnez a5,c000f064 JS_ThrowTypeErrorPrivateNotFound(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7345 return JS_ThrowTypeErrorAtom(ctx, "private class field '%s' does not exist", - c000ef56: 0004e697 auipc a3,0x4e - c000ef5a: 07a68693 addi a3,a3,122 # c005cfd0 - c000ef5e: 0004e617 auipc a2,0x4e - c000ef62: 39260613 addi a2,a2,914 # c005d2f0 - c000ef66: 8526 mv a0,s1 - c000ef68: 56a040ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> - c000ef6c: d2a43823 sd a0,-720(s0) - c000ef70: d2b43c23 sd a1,-712(s0) - c000ef74: b741 j c000eef4 + c000f044: 0004e697 auipc a3,0x4e + c000f048: 1bc68693 addi a3,a3,444 # c005d200 + c000f04c: 0004e617 auipc a2,0x4e + c000f050: 4d460613 addi a2,a2,1236 # c005d520 + c000f054: 8526 mv a0,s1 + c000f056: 56a040ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> + c000f05a: d2a43823 sd a0,-720(s0) + c000f05e: d2b43c23 sd a1,-712(s0) + c000f062: b741 j c000efe2 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000ef76: 00379713 slli a4,a5,0x3 - c000ef7a: 1761 addi a4,a4,-8 - c000ef7c: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000f064: 00379713 slli a4,a5,0x3 + c000f068: 1761 addi a4,a4,-8 + c000f06a: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000ef7e: 4348 lw a0,4(a4) - c000ef80: 04b51463 bne a0,a1,c000efc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c000f06c: 4348 lw a0,4(a4) + c000f06e: 04b51463 bne a0,a1,c000f0b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c000ef84: 020b3583 ld a1,32(s6) + c000f072: 020b3583 ld a1,32(s6) JS_SetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7427 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7435 set_value(ctx, &pr->u.value, val); - c000ef88: ef043603 ld a2,-272(s0) - c000ef8c: ef843683 ld a3,-264(s0) + c000f076: ef043603 ld a2,-272(s0) + c000f07a: ef843683 ld a3,-264(s0) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c000ef90: 0792 slli a5,a5,0x4 - c000ef92: 17c1 addi a5,a5,-16 + c000f07e: 0792 slli a5,a5,0x4 + c000f080: 17c1 addi a5,a5,-16 JS_SetPrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7427 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7435 set_value(ctx, &pr->u.value, val); - c000ef94: 95be add a1,a1,a5 - c000ef96: 8526 mv a0,s1 - c000ef98: febf80ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7428 + c000f082: 95be add a1,a1,a5 + c000f084: 8526 mv a0,s1 + c000f086: febf80ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7436 return 0; - c000ef9c: 4b01 li s6,0 + c000f08a: 4b01 li s6,0 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17555 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17563 JS_FreeValue(ctx, sp[-3]); - c000ef9e: 000a3583 ld a1,0(s4) - c000efa2: 008a3603 ld a2,8(s4) - c000efa6: 8526 mv a0,s1 - c000efa8: 8d52 mv s10,s4 - c000efaa: b8ff80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17556 + c000f08c: 000a3583 ld a1,0(s4) + c000f090: 008a3603 ld a2,8(s4) + c000f094: 8526 mv a0,s1 + c000f096: 8d52 mv s10,s4 + c000f098: b8ff80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17564 JS_FreeValue(ctx, sp[-1]); - c000efae: 000ab583 ld a1,0(s5) - c000efb2: 008ab603 ld a2,8(s5) - c000efb6: 8526 mv a0,s1 - c000efb8: b81f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17558 + c000f09c: 000ab583 ld a1,0(s5) + c000f0a0: 008ab603 ld a2,8(s5) + c000f0a4: 8526 mv a0,s1 + c000f0a6: b81f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17566 if (unlikely(ret < 0)) - c000efbc: 000b1463 bnez s6,c000efc4 - c000efc0: cb8fc06f j c000b478 - c000efc4: e16fc06f j c000b5da + c000f0aa: 000b1463 bnez s6,c000f0b2 + c000f0ae: cb8fc06f j c000b566 + c000f0b2: e16fc06f j c000b6c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000efc8: 431c lw a5,0(a4) - c000efca: 8ff1 and a5,a5,a2 - c000efcc: 1782 slli a5,a5,0x20 - c000efce: 9381 srli a5,a5,0x20 - c000efd0: b751 j c000ef54 + c000f0b6: 431c lw a5,0(a4) + c000f0b8: 8ff1 and a5,a5,a2 + c000f0ba: 1782 slli a5,a5,0x20 + c000f0bc: 9381 srli a5,a5,0x20 + c000f0be: b751 j c000f042 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17574 ret = JS_DefinePrivateField(ctx, sp[-3], sp[-2], sp[-1]); - c000efd2: ff0d3683 ld a3,-16(s10) - c000efd6: fd8d3703 ld a4,-40(s10) - c000efda: fd0d3a83 ld s5,-48(s10) - c000efde: fe0d3583 ld a1,-32(s10) - c000efe2: fe8d3783 ld a5,-24(s10) - c000efe6: eed43823 sd a3,-272(s0) - c000efea: ff8d3683 ld a3,-8(s10) - c000efee: d4e43423 sd a4,-696(s0) - c000eff2: d5543023 sd s5,-704(s0) - c000eff6: eed43c23 sd a3,-264(s0) - c000effa: d4b43823 sd a1,-688(s0) - c000effe: d4f43c23 sd a5,-680(s0) + c000f0c0: ff0d3683 ld a3,-16(s10) + c000f0c4: fd8d3703 ld a4,-40(s10) + c000f0c8: fd0d3a83 ld s5,-48(s10) + c000f0cc: fe0d3583 ld a1,-32(s10) + c000f0d0: fe8d3783 ld a5,-24(s10) + c000f0d4: eed43823 sd a3,-272(s0) + c000f0d8: ff8d3683 ld a3,-8(s10) + c000f0dc: d4e43423 sd a4,-696(s0) + c000f0e0: d5543023 sd s5,-704(s0) + c000f0e4: eed43c23 sd a3,-264(s0) + c000f0e8: d4b43823 sd a1,-688(s0) + c000f0ec: d4f43c23 sd a5,-680(s0) JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7359 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) { - c000f002: 2701 sext.w a4,a4 - c000f004: 56fd li a3,-1 + c000f0f0: 2701 sext.w a4,a4 + c000f0f2: 56fd li a3,-1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17574 ret = JS_DefinePrivateField(ctx, sp[-3], sp[-2], sp[-1]); - c000f006: fe0d0a13 addi s4,s10,-32 + c000f0f4: fe0d0a13 addi s4,s10,-32 JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7359 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) { - c000f00a: 02d70b63 beq a4,a3,c000f040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7352 + c000f0f8: 02d70b63 beq a4,a3,c000f12e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7360 JS_ThrowTypeErrorNotAnObject(ctx); - c000f00e: 8526 mv a0,s1 - c000f010: 169040ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7371 + c000f0fc: 8526 mv a0,s1 + c000f0fe: 169040ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7379 JS_FreeValue(ctx, val); - c000f014: ef043583 ld a1,-272(s0) - c000f018: ef843603 ld a2,-264(s0) - c000f01c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7372 + c000f102: ef043583 ld a1,-272(s0) + c000f106: ef843603 ld a2,-264(s0) + c000f10a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7380 return -1; - c000f01e: 5afd li s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7371 + c000f10c: 5afd li s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7379 JS_FreeValue(ctx, val); - c000f020: b19f80ef jal ra,c0007b38 + c000f10e: b19f80ef jal ra,c0007c26 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17575 JS_FreeValue(ctx, sp[-2]); - c000f024: 000a3583 ld a1,0(s4) - c000f028: 008a3603 ld a2,8(s4) - c000f02c: 8526 mv a0,s1 - c000f02e: 8d52 mv s10,s4 - c000f030: b09f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17569 + c000f112: 000a3583 ld a1,0(s4) + c000f116: 008a3603 ld a2,8(s4) + c000f11a: 8526 mv a0,s1 + c000f11c: 8d52 mv s10,s4 + c000f11e: b09f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17577 if (unlikely(ret < 0)) - c000f034: 000a9463 bnez s5,c000f03c - c000f038: c40fc06f j c000b478 - c000f03c: d9efc06f j c000b5da + c000f122: 000a9463 bnez s5,c000f12a + c000f126: c40fc06f j c000b566 + c000f12a: d9efc06f j c000b6c8 JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7356 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7364 if (unlikely(JS_VALUE_GET_TAG(name) != JS_TAG_SYMBOL)) { - c000f040: 2781 sext.w a5,a5 - c000f042: 5761 li a4,-8 - c000f044: 00e78e63 beq a5,a4,c000f060 + c000f12e: 2781 sext.w a5,a5 + c000f130: 5761 li a4,-8 + c000f132: 00e78e63 beq a5,a4,c000f14e JS_ThrowTypeErrorNotASymbol(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6847 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6855 return JS_ThrowTypeError(ctx, "not a symbol"); - c000f048: 0004e597 auipc a1,0x4e - c000f04c: 1b858593 addi a1,a1,440 # c005d200 - c000f050: 8526 mv a0,s1 - c000f052: 3a4040ef jal ra,c00133f6 - c000f056: d6a43023 sd a0,-672(s0) - c000f05a: d6b43423 sd a1,-664(s0) + c000f136: 0004e597 auipc a1,0x4e + c000f13a: 2fa58593 addi a1,a1,762 # c005d430 + c000f13e: 8526 mv a0,s1 + c000f140: 3a4040ef jal ra,c00134e4 + c000f144: d6a43023 sd a0,-672(s0) + c000f148: d6b43423 sd a1,-664(s0) JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7366 goto fail; - c000f05e: bf5d j c000f014 + c000f14c: bf5d j c000f102 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000f060: 6c88 ld a0,24(s1) - c000f062: 96ff60ef jal ra,c00059d0 + c000f14e: 6c88 ld a0,24(s1) + c000f150: 96ff60ef jal ra,c0005abe find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c000f066: 018ab703 ld a4,24(s5) + c000f154: 018ab703 ld a4,24(s5) js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c000f06a: 0005059b sext.w a1,a0 + c000f158: 0005059b sext.w a1,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000f06e: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c000f15c: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c000f070: 531c lw a5,32(a4) - c000f072: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000f15e: 531c lw a5,32(a4) + c000f160: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000f074: 1782 slli a5,a5,0x20 - c000f076: 9381 srli a5,a5,0x20 - c000f078: 0785 addi a5,a5,1 - c000f07a: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000f162: 1782 slli a5,a5,0x20 + c000f164: 9381 srli a5,a5,0x20 + c000f166: 0785 addi a5,a5,1 + c000f168: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000f07e: 040006b7 lui a3,0x4000 - c000f082: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c000f16c: 040006b7 lui a3,0x4000 + c000f170: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c000f084: 97ba add a5,a5,a4 - c000f086: 0007e783 lwu a5,0(a5) + c000f172: 97ba add a5,a5,a4 + c000f174: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c000f08a: 04070713 addi a4,a4,64 + c000f178: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c000f08e: e385 bnez a5,c000f0ae + c000f17c: e385 bnez a5,c000f19c JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7376 pr = add_property(ctx, p, prop, JS_PROP_C_W_E); - c000f090: 862e mv a2,a1 - c000f092: 469d li a3,7 - c000f094: 85d6 mv a1,s5 - c000f096: 8526 mv a0,s1 - c000f098: 32e070ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7369 + c000f17e: 862e mv a2,a1 + c000f180: 469d li a3,7 + c000f182: 85d6 mv a1,s5 + c000f184: 8526 mv a0,s1 + c000f186: 410070ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7377 if (unlikely(!pr)) { - c000f09c: dd25 beqz a0,c000f014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7374 + c000f18a: dd25 beqz a0,c000f102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7382 pr->u.value = val; - c000f09e: ef043783 ld a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7375 + c000f18c: ef043783 ld a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7383 return 0; - c000f0a2: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7374 + c000f190: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7382 pr->u.value = val; - c000f0a4: e11c sd a5,0(a0) - c000f0a6: ef843783 ld a5,-264(s0) - c000f0aa: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7375 + c000f192: e11c sd a5,0(a0) + c000f194: ef843783 ld a5,-264(s0) + c000f198: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7383 return 0; - c000f0ac: bfa5 j c000f024 + c000f19a: bfa5 j c000f112 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c000f0ae: 078e slli a5,a5,0x3 - c000f0b0: 17e1 addi a5,a5,-8 - c000f0b2: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c000f19c: 078e slli a5,a5,0x3 + c000f19e: 17e1 addi a5,a5,-8 + c000f1a0: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c000f0b4: 43d0 lw a2,4(a5) - c000f0b6: 00b61463 bne a2,a1,c000f0be - c000f0ba: 71e0206f j c00117d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c000f1a2: 43d0 lw a2,4(a5) + c000f1a4: 00b61463 bne a2,a1,c000f1ac + c000f1a8: 71e0206f j c00118c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c000f0be: 439c lw a5,0(a5) - c000f0c0: 8ff5 and a5,a5,a3 - c000f0c2: 1782 slli a5,a5,0x20 - c000f0c4: 9381 srli a5,a5,0x20 - c000f0c6: b7e1 j c000f08e + c000f1ac: 439c lw a5,0(a5) + c000f1ae: 8ff5 and a5,a5,a3 + c000f1b0: 1782 slli a5,a5,0x20 + c000f1b2: 9381 srli a5,a5,0x20 + c000f1b4: b7e1 j c000f17c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f0c8: 002bc783 lbu a5,2(s7) - c000f0cc: 001bc683 lbu a3,1(s7) + c000f1b6: 002bc783 lbu a5,2(s7) + c000f1ba: 001bc683 lbu a3,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17581 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17589 ret = JS_DefinePropertyValue(ctx, sp[-2], atom, sp[-1], - c000f0d0: fe0d0613 addi a2,s10,-32 + c000f1be: fe0d0613 addi a2,s10,-32 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f0d4: 07a2 slli a5,a5,0x8 - c000f0d6: 8fd5 or a5,a5,a3 - c000f0d8: 003bc683 lbu a3,3(s7) + c000f1c2: 07a2 slli a5,a5,0x8 + c000f1c4: 8fd5 or a5,a5,a3 + c000f1c6: 003bc683 lbu a3,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17581 - c000f0dc: 620c ld a1,0(a2) - c000f0de: ff0d3703 ld a4,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17589 + c000f1ca: 620c ld a1,0(a2) + c000f1cc: ff0d3703 ld a4,-16(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f0e2: 06c2 slli a3,a3,0x10 - c000f0e4: 8fd5 or a5,a5,a3 - c000f0e6: 004bc683 lbu a3,4(s7) + c000f1d0: 06c2 slli a3,a3,0x10 + c000f1d2: 8fd5 or a5,a5,a3 + c000f1d4: 004bc683 lbu a3,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17581 - c000f0ea: 6610 ld a2,8(a2) - c000f0ec: 6811 lui a6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17589 + c000f1d8: 6610 ld a2,8(a2) + c000f1da: 6811 lui a6,0x4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f0ee: 06e2 slli a3,a3,0x18 - c000f0f0: 8edd or a3,a3,a5 + c000f1dc: 06e2 slli a3,a3,0x18 + c000f1de: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17581 - c000f0f2: ff8d3783 ld a5,-8(s10) - c000f0f6: 081d addi a6,a6,7 - c000f0f8: 2681 sext.w a3,a3 - c000f0fa: 8526 mv a0,s1 - c000f0fc: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17579 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17589 + c000f1e0: ff8d3783 ld a5,-8(s10) + c000f1e4: 081d addi a6,a6,7 + c000f1e6: 2681 sext.w a3,a3 + c000f1e8: 8526 mv a0,s1 + c000f1ea: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17587 pc += 4; - c000f0fe: 005b8913 addi s2,s7,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17581 + c000f1ec: 005b8913 addi s2,s7,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17589 ret = JS_DefinePropertyValue(ctx, sp[-2], atom, sp[-1], - c000f102: 6b5030ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17584 + c000f1f0: 6b5030ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17592 if (unlikely(ret < 0)) - c000f106: 00054463 bltz a0,c000f10e - c000f10a: b6efc06f j c000b478 - c000f10e: cccfc06f j c000b5da + c000f1f4: 00054463 bltz a0,c000f1fc + c000f1f8: b6efc06f j c000b566 + c000f1fc: cccfc06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f112: 002bc783 lbu a5,2(s7) - c000f116: 001bc683 lbu a3,1(s7) + c000f200: 002bc783 lbu a5,2(s7) + c000f204: 001bc683 lbu a3,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17604 ret = JS_DefineObjectName(ctx, sp[-1], atom, JS_PROP_CONFIGURABLE); - c000f11a: ff0d3583 ld a1,-16(s10) + c000f208: ff0d3583 ld a1,-16(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f11e: 07a2 slli a5,a5,0x8 - c000f120: 8fd5 or a5,a5,a3 - c000f122: 003bc683 lbu a3,3(s7) + c000f20c: 07a2 slli a5,a5,0x8 + c000f20e: 8fd5 or a5,a5,a3 + c000f210: 003bc683 lbu a3,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17596 - c000f126: ff8d3603 ld a2,-8(s10) - c000f12a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17604 + c000f214: ff8d3603 ld a2,-8(s10) + c000f218: 8526 mv a0,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f12c: 06c2 slli a3,a3,0x10 - c000f12e: 8fd5 or a5,a5,a3 - c000f130: 004bc683 lbu a3,4(s7) + c000f21a: 06c2 slli a3,a3,0x10 + c000f21c: 8fd5 or a5,a5,a3 + c000f21e: 004bc683 lbu a3,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17602 pc += 4; - c000f134: 005b8913 addi s2,s7,5 + c000f222: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f138: 06e2 slli a3,a3,0x18 - c000f13a: 8edd or a3,a3,a5 + c000f226: 06e2 slli a3,a3,0x18 + c000f228: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17596 - ret = JS_DefineObjectName(ctx, sp[-1], atom, JS_PROP_CONFIGURABLE); - c000f13c: 2681 sext.w a3,a3 - c000f13e: 36d200ef jal ra,c002fcaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17597 - if (unlikely(ret < 0)) - c000f142: 00054463 bltz a0,c000f14a - c000f146: b32fc06f j c000b478 - c000f14a: c90fc06f j c000b5da /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17604 - ret = JS_DefineObjectNameComputed(ctx, sp[-1], sp[-2], JS_PROP_CONFIGURABLE); - c000f14e: fe0d3683 ld a3,-32(s10) - c000f152: fe8d3703 ld a4,-24(s10) - c000f156: ff0d3583 ld a1,-16(s10) - c000f15a: ff8d3603 ld a2,-8(s10) - c000f15e: 8526 mv a0,s1 - c000f160: 3a1200ef jal ra,c002fd00 + ret = JS_DefineObjectName(ctx, sp[-1], atom, JS_PROP_CONFIGURABLE); + c000f22a: 2681 sext.w a3,a3 + c000f22c: 44f200ef jal ra,c002fe7a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17605 if (unlikely(ret < 0)) - c000f164: 00054463 bltz a0,c000f16c - c000f168: b10fc06f j c000b478 - c000f16c: c6efc06f j c000b5da + c000f230: 00054463 bltz a0,c000f238 + c000f234: b32fc06f j c000b566 + c000f238: c90fc06f j c000b6c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17612 - proto = sp[-1]; - c000f170: ff0d3783 ld a5,-16(s10) + ret = JS_DefineObjectNameComputed(ctx, sp[-1], sp[-2], JS_PROP_CONFIGURABLE); + c000f23c: fe0d3683 ld a3,-32(s10) + c000f240: fe8d3703 ld a4,-24(s10) + c000f244: ff0d3583 ld a1,-16(s10) + c000f248: ff8d3603 ld a2,-8(s10) + c000f24c: 8526 mv a0,s1 + c000f24e: 483200ef jal ra,c002fed0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17613 + if (unlikely(ret < 0)) + c000f252: 00054463 bltz a0,c000f25a + c000f256: b10fc06f j c000b566 + c000f25a: c6efc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17620 + proto = sp[-1]; + c000f25e: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17621 if (JS_IsObject(proto) || JS_IsNull(proto)) { - c000f174: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17612 + c000f262: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17620 proto = sp[-1]; - c000f176: eef43823 sd a5,-272(s0) - c000f17a: ff8d3783 ld a5,-8(s10) - c000f17e: eef43c23 sd a5,-264(s0) + c000f264: eef43823 sd a5,-272(s0) + c000f268: ff8d3783 ld a5,-8(s10) + c000f26c: eef43c23 sd a5,-264(s0) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c000f182: ff8d2783 lw a5,-8(s10) + c000f270: ff8d2783 lw a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17613 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17621 if (JS_IsObject(proto) || JS_IsNull(proto)) { - c000f186: 00e78563 beq a5,a4,c000f190 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17613 (discriminator 1) - c000f18a: 4709 li a4,2 - c000f18c: 02e79263 bne a5,a4,c000f1b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17614 + c000f274: 00e78563 beq a5,a4,c000f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17621 (discriminator 1) + c000f278: 4709 li a4,2 + c000f27a: 02e79263 bne a5,a4,c000f29e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17622 if (JS_SetPrototypeInternal(ctx, sp[-2], proto, TRUE) < 0) - c000f190: ef043683 ld a3,-272(s0) - c000f194: ef843703 ld a4,-264(s0) - c000f198: fe0d3583 ld a1,-32(s10) - c000f19c: fe8d3603 ld a2,-24(s10) - c000f1a0: 4785 li a5,1 - c000f1a2: 8526 mv a0,s1 - c000f1a4: 5b5050ef jal ra,c0014f58 - c000f1a8: 00055463 bgez a0,c000f1b0 - c000f1ac: c2efc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17617 + c000f27e: ef043683 ld a3,-272(s0) + c000f282: ef843703 ld a4,-264(s0) + c000f286: fe0d3583 ld a1,-32(s10) + c000f28a: fe8d3603 ld a2,-24(s10) + c000f28e: 4785 li a5,1 + c000f290: 8526 mv a0,s1 + c000f292: 697050ef jal ra,c0015128 + c000f296: 00055463 bgez a0,c000f29e + c000f29a: c2efc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17625 JS_FreeValue(ctx, proto); - c000f1b0: ef043583 ld a1,-272(s0) - c000f1b4: ef843603 ld a2,-264(s0) - c000f1b8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17618 + c000f29e: ef043583 ld a1,-272(s0) + c000f2a2: ef843603 ld a2,-264(s0) + c000f2a6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17626 sp--; - c000f1ba: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17617 + c000f2a8: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17625 JS_FreeValue(ctx, proto); - c000f1bc: 97df80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17620 + c000f2aa: 97df80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17628 BREAK; - c000f1c0: ab8fc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17622 + c000f2ae: ab8fc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17630 js_method_set_home_object(ctx, sp[-1], sp[-2]); - c000f1c4: fe0d3683 ld a3,-32(s10) - c000f1c8: fe8d3703 ld a4,-24(s10) - c000f1cc: ff0d3583 ld a1,-16(s10) - c000f1d0: ff8d3603 ld a2,-8(s10) - c000f1d4: 8526 mv a0,s1 - c000f1d6: d2ff80ef jal ra,c0007f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17623 + c000f2b2: fe0d3683 ld a3,-32(s10) + c000f2b6: fe8d3703 ld a4,-24(s10) + c000f2ba: ff0d3583 ld a1,-16(s10) + c000f2be: ff8d3603 ld a2,-8(s10) + c000f2c2: 8526 mv a0,s1 + c000f2c4: d2ff80ef jal ra,c0007ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17631 BREAK; - c000f1da: a9efc06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17637 + c000f2c8: a9efc06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17645 is_computed = (opcode == OP_define_method_computed); - c000f1de: faba8b13 addi s6,s5,-85 - c000f1e2: 05500793 li a5,85 - c000f1e6: 001b3b13 seqz s6,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17638 + c000f2cc: faba8b13 addi s6,s5,-85 + c000f2d0: 05500793 li a5,85 + c000f2d4: 001b3b13 seqz s6,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17646 if (is_computed) { - c000f1ea: 18fa9f63 bne s5,a5,c000f388 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17639 + c000f2d8: 18fa9f63 bne s5,a5,c000f476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17647 atom = JS_ValueToAtom(ctx, sp[-2]); - c000f1ee: fe0d3583 ld a1,-32(s10) - c000f1f2: fe8d3603 ld a2,-24(s10) - c000f1f6: 8526 mv a0,s1 - c000f1f8: 424120ef jal ra,c002161c - c000f1fc: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17640 + c000f2dc: fe0d3583 ld a1,-32(s10) + c000f2e0: fe8d3603 ld a2,-24(s10) + c000f2e4: 8526 mv a0,s1 + c000f2e6: 506120ef jal ra,c00217ec + c000f2ea: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17648 if (unlikely(atom == JS_ATOM_NULL)) - c000f200: 000a1463 bnez s4,c000f208 - c000f204: bd6fc06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17649 + c000f2ee: 000a1463 bnez s4,c000f2f6 + c000f2f2: bd6fc06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17657 obj = sp[-2 - is_computed]; - c000f208: 57f9 li a5,-2 - c000f20a: 416787bb subw a5,a5,s6 - c000f20e: 0792 slli a5,a5,0x4 - c000f210: 97ea add a5,a5,s10 - c000f212: 6394 ld a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17647 + c000f2f6: 57f9 li a5,-2 + c000f2f8: 416787bb subw a5,a5,s6 + c000f2fc: 0792 slli a5,a5,0x4 + c000f2fe: 97ea add a5,a5,s10 + c000f300: 6394 ld a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17655 op_flags = *pc++; - c000f214: 00094703 lbu a4,0(s2) - c000f218: 00190b93 addi s7,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17649 + c000f302: 00094703 lbu a4,0(s2) + c000f306: 00190b93 addi s7,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17657 obj = sp[-2 - is_computed]; - c000f21c: e8d43023 sd a3,-384(s0) - c000f220: 679c ld a5,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17653 + c000f30a: e8d43023 sd a3,-384(s0) + c000f30e: 679c ld a5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17661 flags |= JS_PROP_ENUMERABLE; - c000f222: 6911 lui s2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17649 + c000f310: 6911 lui s2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17657 obj = sp[-2 - is_computed]; - c000f224: e8f43423 sd a5,-376(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17652 + c000f312: e8f43423 sd a5,-376(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17660 if (op_flags & OP_DEFINE_METHOD_ENUMERABLE) - c000f228: 00477793 andi a5,a4,4 - c000f22c: 18078363 beqz a5,c000f3b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17653 + c000f316: 00477793 andi a5,a4,4 + c000f31a: 18078363 beqz a5,c000f4a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17661 flags |= JS_PROP_ENUMERABLE; - c000f230: 50590913 addi s2,s2,1285 # 4505 <__clzdi2-0xbfffbafb> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17656 + c000f31e: 50590913 addi s2,s2,1285 # 4505 <__clzdi2-0xbfffbafb> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17664 getter = JS_UNDEFINED; - c000f234: f8040793 addi a5,s0,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17655 + c000f322: f8040793 addi a5,s0,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17663 value = JS_UNDEFINED; - c000f238: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17656 + c000f326: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17664 getter = JS_UNDEFINED; - c000f23a: 97ce add a5,a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17655 + c000f328: 97ce add a5,a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17663 value = JS_UNDEFINED; - c000f23c: de043023 sd zero,-544(s0) - c000f240: ded43423 sd a3,-536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17656 + c000f32a: de043023 sd zero,-544(s0) + c000f32e: ded43423 sd a3,-536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17664 getter = JS_UNDEFINED; - c000f244: 7207b823 sd zero,1840(a5) - c000f248: 72d7bc23 sd a3,1848(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17657 + c000f332: 7207b823 sd zero,1840(a5) + c000f336: 72d7bc23 sd a3,1848(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17665 setter = JS_UNDEFINED; - c000f24c: 7407b023 sd zero,1856(a5) - c000f250: 74d7b423 sd a3,1864(a5) - c000f254: 8b0d andi a4,a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17658 + c000f33a: 7407b023 sd zero,1856(a5) + c000f33e: 74d7b423 sd a3,1864(a5) + c000f342: 8b0d andi a4,a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17666 if (op_flags == OP_DEFINE_METHOD_METHOD) { - c000f256: ff0d3683 ld a3,-16(s10) - c000f25a: 14071f63 bnez a4,c000f3b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17659 + c000f344: ff0d3683 ld a3,-16(s10) + c000f348: 14071f63 bnez a4,c000f4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17667 value = sp[-1]; - c000f25e: ded43023 sd a3,-544(s0) - c000f262: ff8d3783 ld a5,-8(s10) - c000f266: def43423 sd a5,-536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17660 + c000f34c: ded43023 sd a3,-544(s0) + c000f350: ff8d3783 ld a5,-8(s10) + c000f354: def43423 sd a5,-536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17668 flags |= JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE | JS_PROP_WRITABLE; - c000f26a: 6789 lui a5,0x2 - c000f26c: 20278793 addi a5,a5,514 # 2202 <__clzdi2-0xbfffddfe> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17666 + c000f358: 6789 lui a5,0x2 + c000f35a: 20278793 addi a5,a5,514 # 2202 <__clzdi2-0xbfffddfe> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17674 flags |= JS_PROP_HAS_SET; - c000f270: 00f96933 or s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17668 + c000f35e: 00f96933 or s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17676 ret = js_method_set_properties(ctx, sp[-1], atom, flags, obj); - c000f274: ff0d3783 ld a5,-16(s10) + c000f362: ff0d3783 ld a5,-16(s10) js_method_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5090 name_str = js_get_function_name(ctx, name); - c000f278: 85d2 mv a1,s4 - c000f27a: 8526 mv a0,s1 - c000f27c: e8f43823 sd a5,-368(s0) - c000f280: ff8d3783 ld a5,-8(s10) + c000f366: 85d2 mv a1,s4 + c000f368: 8526 mv a0,s1 + c000f36a: e8f43823 sd a5,-368(s0) + c000f36e: ff8d3783 ld a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17676 ret = js_method_set_properties(ctx, sp[-1], atom, flags, obj); - c000f284: ff0d0c13 addi s8,s10,-16 - c000f288: e8f43c23 sd a5,-360(s0) - c000f28c: e8043783 ld a5,-384(s0) - c000f290: ecf43823 sd a5,-304(s0) - c000f294: e8843783 ld a5,-376(s0) - c000f298: ecf43c23 sd a5,-296(s0) + c000f372: ff0d0c13 addi s8,s10,-16 + c000f376: e8f43c23 sd a5,-360(s0) + c000f37a: e8043783 ld a5,-384(s0) + c000f37e: ecf43823 sd a5,-304(s0) + c000f382: e8843783 ld a5,-376(s0) + c000f386: ecf43c23 sd a5,-296(s0) js_method_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5090 name_str = js_get_function_name(ctx, name); - c000f29c: 6500b0ef jal ra,c001a8ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5083 + c000f38a: 7320b0ef jal ra,c001aabc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5091 if (flags & JS_PROP_HAS_GET) { - c000f2a0: 00b95793 srli a5,s2,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5082 + c000f38e: 00b95793 srli a5,s2,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5090 name_str = js_get_function_name(ctx, name); - c000f2a4: eea43823 sd a0,-272(s0) - c000f2a8: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5083 + c000f392: eea43823 sd a0,-272(s0) + c000f396: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5091 if (flags & JS_PROP_HAS_GET) { - c000f2ac: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5082 + c000f39a: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5090 name_str = js_get_function_name(ctx, name); - c000f2ae: 862a mv a2,a0 - c000f2b0: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5083 + c000f39c: 862a mv a2,a0 + c000f39e: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5091 if (flags & JS_PROP_HAS_GET) { - c000f2b2: 12078863 beqz a5,c000f3e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5084 + c000f3a0: 12078863 beqz a5,c000f4d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5092 name_str = JS_ConcatString3(ctx, "get ", name_str, ""); - c000f2b6: 0004e717 auipc a4,0x4e - c000f2ba: d1a70713 addi a4,a4,-742 # c005cfd0 - c000f2be: 0004e597 auipc a1,0x4e - c000f2c2: f5258593 addi a1,a1,-174 # c005d210 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5086 + c000f3a4: 0004e717 auipc a4,0x4e + c000f3a8: e5c70713 addi a4,a4,-420 # c005d200 + c000f3ac: 0004e597 auipc a1,0x4e + c000f3b0: 09458593 addi a1,a1,148 # c005d440 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5094 name_str = JS_ConcatString3(ctx, "set ", name_str, ""); - c000f2c6: 8526 mv a0,s1 - c000f2c8: 5420b0ef jal ra,c001a80a - c000f2cc: eea43823 sd a0,-272(s0) - c000f2d0: eeb43c23 sd a1,-264(s0) + c000f3b4: 8526 mv a0,s1 + c000f3b6: 6240b0ef jal ra,c001a9da + c000f3ba: eea43823 sd a0,-272(s0) + c000f3be: eeb43c23 sd a1,-264(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000f2d4: ef843783 ld a5,-264(s0) + c000f3c2: ef843783 ld a5,-264(s0) js_method_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5096 if (JS_IsException(name_str)) - c000f2d8: 4719 li a4,6 - c000f2da: 0007869b sext.w a3,a5 - c000f2de: 12e68063 beq a3,a4,c000f3fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5090 + c000f3c6: 4719 li a4,6 + c000f3c8: 0007869b sext.w a3,a5 + c000f3cc: 12e68063 beq a3,a4,c000f4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5098 if (JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, name_str, - c000f2e2: ef043703 ld a4,-272(s0) - c000f2e6: e9043583 ld a1,-368(s0) - c000f2ea: e9843603 ld a2,-360(s0) - c000f2ee: 4805 li a6,1 - c000f2f0: 03700693 li a3,55 - c000f2f4: 8526 mv a0,s1 - c000f2f6: 4c1030ef jal ra,c0012fb6 - c000f2fa: 10054263 bltz a0,c000f3fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5093 + c000f3d0: ef043703 ld a4,-272(s0) + c000f3d4: e9043583 ld a1,-368(s0) + c000f3d8: e9843603 ld a2,-360(s0) + c000f3dc: 4805 li a6,1 + c000f3de: 03700693 li a3,55 + c000f3e2: 8526 mv a0,s1 + c000f3e4: 4c1030ef jal ra,c00130a4 + c000f3e8: 10054263 bltz a0,c000f4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5101 js_method_set_home_object(ctx, func_obj, home_obj); - c000f2fe: ed043683 ld a3,-304(s0) - c000f302: ed843703 ld a4,-296(s0) - c000f306: e9043583 ld a1,-368(s0) - c000f30a: e9843603 ld a2,-360(s0) - c000f30e: 8526 mv a0,s1 - c000f310: bf5f80ef jal ra,c0007f04 + c000f3ec: ed043683 ld a3,-304(s0) + c000f3f0: ed843703 ld a4,-296(s0) + c000f3f4: e9043583 ld a1,-368(s0) + c000f3f8: e9843603 ld a2,-360(s0) + c000f3fc: 8526 mv a0,s1 + c000f3fe: bf5f80ef jal ra,c0007ff2 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17678 ret = JS_DefineProperty(ctx, obj, atom, value, - c000f314: f8040793 addi a5,s0,-128 - c000f318: e84a sd s2,16(sp) - c000f31a: 97ce add a5,a5,s3 - c000f31c: 7407b703 ld a4,1856(a5) - c000f320: e8043583 ld a1,-384(s0) - c000f324: e8843603 ld a2,-376(s0) - c000f328: e03a sd a4,0(sp) - c000f32a: 7487b703 ld a4,1864(a5) - c000f32e: 86d2 mv a3,s4 - c000f330: 8526 mv a0,s1 - c000f332: e43a sd a4,8(sp) - c000f334: 7307b803 ld a6,1840(a5) - c000f338: 7387b883 ld a7,1848(a5) - c000f33c: de043703 ld a4,-544(s0) - c000f340: de843783 ld a5,-536(s0) - c000f344: 59e030ef jal ra,c00128e2 - c000f348: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17673 + c000f402: f8040793 addi a5,s0,-128 + c000f406: e84a sd s2,16(sp) + c000f408: 97ce add a5,a5,s3 + c000f40a: 7407b703 ld a4,1856(a5) + c000f40e: e8043583 ld a1,-384(s0) + c000f412: e8843603 ld a2,-376(s0) + c000f416: e03a sd a4,0(sp) + c000f418: 7487b703 ld a4,1864(a5) + c000f41c: 86d2 mv a3,s4 + c000f41e: 8526 mv a0,s1 + c000f420: e43a sd a4,8(sp) + c000f422: 7307b803 ld a6,1840(a5) + c000f426: 7387b883 ld a7,1848(a5) + c000f42a: de043703 ld a4,-544(s0) + c000f42e: de843783 ld a5,-536(s0) + c000f432: 59e030ef jal ra,c00129d0 + c000f436: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17681 JS_FreeValue(ctx, sp[-1]); - c000f34a: 000c3583 ld a1,0(s8) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c000f34e: 008c3603 ld a2,8(s8) - c000f352: 8526 mv a0,s1 - c000f354: fe4f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17674 + c000f438: 000c3583 ld a1,0(s8) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c000f43c: 008c3603 ld a2,8(s8) + c000f440: 8526 mv a0,s1 + c000f442: fe4f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17682 if (is_computed) { - c000f358: 05500793 li a5,85 - c000f35c: 00fa9d63 bne s5,a5,c000f376 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17675 + c000f446: 05500793 li a5,85 + c000f44a: 00fa9d63 bne s5,a5,c000f464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17683 JS_FreeAtom(ctx, atom); - c000f360: 85d2 mv a1,s4 - c000f362: 8526 mv a0,s1 - c000f364: 9a8f80ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17676 + c000f44e: 85d2 mv a1,s4 + c000f450: 8526 mv a0,s1 + c000f452: 9a8f80ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17684 JS_FreeValue(ctx, sp[-2]); - c000f368: fe0d3583 ld a1,-32(s10) - c000f36c: fe8d3603 ld a2,-24(s10) - c000f370: 8526 mv a0,s1 - c000f372: fc6f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17678 + c000f456: fe0d3583 ld a1,-32(s10) + c000f45a: fe8d3603 ld a2,-24(s10) + c000f45e: 8526 mv a0,s1 + c000f460: fc6f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17686 sp -= 1 + is_computed; - c000f376: 2b05 addiw s6,s6,1 - c000f378: 0b12 slli s6,s6,0x4 - c000f37a: 416d0d33 sub s10,s10,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17679 + c000f464: 2b05 addiw s6,s6,1 + c000f466: 0b12 slli s6,s6,0x4 + c000f468: 416d0d33 sub s10,s10,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17687 if (unlikely(ret < 0)) - c000f37e: 08094263 bltz s2,c000f402 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17647 + c000f46c: 08094263 bltz s2,c000f4f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17655 op_flags = *pc++; - c000f382: 895e mv s2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17682 + c000f470: 895e mv s2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17690 BREAK; - c000f384: 8f4fc06f j c000b478 + c000f472: 8f4fc06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f388: 002bc503 lbu a0,2(s7) - c000f38c: 001bca03 lbu s4,1(s7) + c000f476: 002bc503 lbu a0,2(s7) + c000f47a: 001bca03 lbu s4,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17645 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17653 pc += 4; - c000f390: 005b8913 addi s2,s7,5 + c000f47e: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f394: 0522 slli a0,a0,0x8 - c000f396: 01456533 or a0,a0,s4 - c000f39a: 003bca03 lbu s4,3(s7) - c000f39e: 0a42 slli s4,s4,0x10 - c000f3a0: 00aa6533 or a0,s4,a0 - c000f3a4: 004bca03 lbu s4,4(s7) - c000f3a8: 0a62 slli s4,s4,0x18 - c000f3aa: 00aa6a33 or s4,s4,a0 - c000f3ae: 2a01 sext.w s4,s4 + c000f482: 0522 slli a0,a0,0x8 + c000f484: 01456533 or a0,a0,s4 + c000f488: 003bca03 lbu s4,3(s7) + c000f48c: 0a42 slli s4,s4,0x10 + c000f48e: 00aa6533 or a0,s4,a0 + c000f492: 004bca03 lbu s4,4(s7) + c000f496: 0a62 slli s4,s4,0x18 + c000f498: 00aa6a33 or s4,s4,a0 + c000f49c: 2a01 sext.w s4,s4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17645 - c000f3b0: bda1 j c000f208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17653 + c000f49e: bda1 j c000f2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17658 flags = JS_PROP_HAS_CONFIGURABLE | JS_PROP_CONFIGURABLE | - c000f3b2: 50190913 addi s2,s2,1281 - c000f3b6: bdbd j c000f234 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17661 + c000f4a0: 50190913 addi s2,s2,1281 + c000f4a4: bdbd j c000f322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17669 } else if (op_flags == OP_DEFINE_METHOD_GETTER) { - c000f3b8: 4605 li a2,1 - c000f3ba: 00c71c63 bne a4,a2,c000f3d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17662 + c000f4a6: 4605 li a2,1 + c000f4a8: 00c71c63 bne a4,a2,c000f4c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17670 getter = sp[-1]; - c000f3be: 72d7b823 sd a3,1840(a5) - c000f3c2: ff8d3703 ld a4,-8(s10) - c000f3c6: 72e7bc23 sd a4,1848(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17663 + c000f4ac: 72d7b823 sd a3,1840(a5) + c000f4b0: ff8d3703 ld a4,-8(s10) + c000f4b4: 72e7bc23 sd a4,1848(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17671 flags |= JS_PROP_HAS_GET; - c000f3ca: 6785 lui a5,0x1 - c000f3cc: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> - c000f3d0: b545 j c000f270 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17665 + c000f4b8: 6785 lui a5,0x1 + c000f4ba: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> + c000f4be: b545 j c000f35e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17673 setter = sp[-1]; - c000f3d2: 74d7b023 sd a3,1856(a5) - c000f3d6: ff8d3703 ld a4,-8(s10) - c000f3da: 74e7b423 sd a4,1864(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17666 + c000f4c0: 74d7b023 sd a3,1856(a5) + c000f4c4: ff8d3703 ld a4,-8(s10) + c000f4c8: 74e7b423 sd a4,1864(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17674 flags |= JS_PROP_HAS_SET; - c000f3de: 6785 lui a5,0x1 - c000f3e0: bd41 j c000f270 + c000f4cc: 6785 lui a5,0x1 + c000f4ce: bd41 j c000f35e js_method_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5085 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5093 } else if (flags & JS_PROP_HAS_SET) { - c000f3e2: 00c95793 srli a5,s2,0xc - c000f3e6: 8b85 andi a5,a5,1 - c000f3e8: ee0786e3 beqz a5,c000f2d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5086 + c000f4d0: 00c95793 srli a5,s2,0xc + c000f4d4: 8b85 andi a5,a5,1 + c000f4d6: ee0786e3 beqz a5,c000f3c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5094 name_str = JS_ConcatString3(ctx, "set ", name_str, ""); - c000f3ec: 0004e717 auipc a4,0x4e - c000f3f0: be470713 addi a4,a4,-1052 # c005cfd0 - c000f3f4: 0004e597 auipc a1,0x4e - c000f3f8: e2458593 addi a1,a1,-476 # c005d218 - c000f3fc: b5e9 j c000f2c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5092 + c000f4da: 0004e717 auipc a4,0x4e + c000f4de: d2670713 addi a4,a4,-730 # c005d200 + c000f4e2: 0004e597 auipc a1,0x4e + c000f4e6: f6658593 addi a1,a1,-154 # c005d448 + c000f4ea: b5e9 j c000f3b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5100 return -1; - c000f3fe: 597d li s2,-1 - c000f400: b7a9 j c000f34a + c000f4ec: 597d li s2,-1 + c000f4ee: b7a9 j c000f438 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17655 op_flags = *pc++; - c000f402: 895e mv s2,s7 - c000f404: 9d6fc06f j c000b5da + c000f4f0: 895e mv s2,s7 + c000f4f2: 9d6fc06f j c000b6c8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f408: 002bc703 lbu a4,2(s7) - c000f40c: 001bc783 lbu a5,1(s7) + c000f4f6: 002bc703 lbu a4,2(s7) + c000f4fa: 001bc783 lbu a5,1(s7) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 bfunc = sp[-1]; - c000f410: 767d lui a2,0xfffff + c000f4fe: 767d lui a2,0xfffff get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f412: 0722 slli a4,a4,0x8 - c000f414: 8f5d or a4,a4,a5 - c000f416: 003bc783 lbu a5,3(s7) + c000f500: 0722 slli a4,a4,0x8 + c000f502: 8f5d or a4,a4,a5 + c000f504: 003bc783 lbu a5,3(s7) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 - c000f41a: 63060613 addi a2,a2,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f41e: 9622 add a2,a2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 + c000f508: 63060613 addi a2,a2,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f50c: 9622 add a2,a2,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f420: 07c2 slli a5,a5,0x10 - c000f422: 8f5d or a4,a4,a5 - c000f424: 004bc783 lbu a5,4(s7) + c000f50e: 07c2 slli a5,a5,0x10 + c000f510: 8f5d or a4,a4,a5 + c000f512: 004bc783 lbu a5,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17692 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17700 pc += 5; - c000f428: 006b8913 addi s2,s7,6 + c000f516: 006b8913 addi s2,s7,6 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c000f42c: 07e2 slli a5,a5,0x18 - c000f42e: 8fd9 or a5,a5,a4 - c000f430: 777d lui a4,0xfffff - c000f432: 5e870713 addi a4,a4,1512 # fffffffffffff5e8 <_ebss+0xffffffff3fefe4c2> - c000f436: 2781 sext.w a5,a5 - c000f438: 9722 add a4,a4,s0 - c000f43a: e31c sd a5,0(a4) + c000f51a: 07e2 slli a5,a5,0x18 + c000f51c: 8fd9 or a5,a5,a4 + c000f51e: 777d lui a4,0xfffff + c000f520: 5e870713 addi a4,a4,1512 # fffffffffffff5e8 <_ebss+0xffffffff3fefe4c2> + c000f524: 2781 sext.w a5,a5 + c000f526: 9722 add a4,a4,s0 + c000f528: e31c sd a5,0(a4) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17691 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17699 class_flags = pc[4]; - c000f43c: 005bc703 lbu a4,5(s7) + c000f52a: 005bc703 lbu a4,5(s7) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15812 JSValue bfunc, parent_class, proto = JS_UNDEFINED; - c000f440: e8043823 sd zero,-368(s0) - c000f444: e8043c23 sd zero,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15805 + c000f52e: e8043823 sd zero,-368(s0) + c000f532: e8043c23 sd zero,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15813 JSValue ctor = JS_UNDEFINED, parent_proto = JS_UNDEFINED; - c000f448: ec043823 sd zero,-304(s0) - c000f44c: ec043c23 sd zero,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 + c000f536: ec043823 sd zero,-304(s0) + c000f53a: ec043c23 sd zero,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 bfunc = sp[-1]; - c000f450: ff0d3683 ld a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15808 + c000f53e: ff0d3683 ld a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15816 parent_class = sp[-2]; - c000f454: fe0d3783 ld a5,-32(s10) - c000f458: fe8d3a03 ld s4,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 + c000f542: fe0d3783 ld a5,-32(s10) + c000f546: fe8d3a03 ld s4,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 bfunc = sp[-1]; - c000f45c: e8d43023 sd a3,-384(s0) - c000f460: ff8d3683 ld a3,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15808 + c000f54a: e8d43023 sd a3,-384(s0) + c000f54e: ff8d3683 ld a3,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15816 parent_class = sp[-2]; - c000f464: d6f43823 sd a5,-656(s0) - c000f468: d7443c23 sd s4,-648(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 + c000f552: d6f43823 sd a5,-656(s0) + c000f556: d7443c23 sd s4,-648(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 bfunc = sp[-1]; - c000f46c: e8d43423 sd a3,-376(s0) - c000f470: ff0d3683 ld a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15811 + c000f55a: e8d43423 sd a3,-376(s0) + c000f55e: ff0d3683 ld a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15819 if (class_flags & JS_DEFINE_CLASS_HAS_HERITAGE) { - c000f474: 8b05 andi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15808 + c000f562: 8b05 andi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15816 parent_class = sp[-2]; - c000f476: 8bbe mv s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15809 + c000f564: 8bbe mv s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 bfunc = sp[-1]; - c000f478: e214 sd a3,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15811 + c000f566: e214 sd a3,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15819 if (class_flags & JS_DEFINE_CLASS_HAS_HERITAGE) { - c000f47a: 18070263 beqz a4,c000f5fe + c000f568: 18070263 beqz a4,c000f6ec JS_IsNull(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:600 return JS_VALUE_GET_TAG(v) == JS_TAG_NULL; - c000f47e: 000a0c1b sext.w s8,s4 + c000f56c: 000a0c1b sext.w s8,s4 js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15820 if (JS_IsNull(parent_class)) { - c000f482: 4c89 li s9,2 - c000f484: 079c1763 bne s8,s9,c000f4f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15814 + c000f570: 4c89 li s9,2 + c000f572: 079c1763 bne s8,s9,c000f5e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15822 parent_class = JS_DupValue(ctx, ctx->function_proto); - c000f488: 64a8 ld a0,72(s1) - c000f48a: 68ac ld a1,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15813 + c000f576: 64a8 ld a0,72(s1) + c000f578: 68ac ld a1,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15821 parent_proto = JS_NULL; - c000f48c: 4b09 li s6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15814 + c000f57a: 4b09 li s6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15822 parent_class = JS_DupValue(ctx, ctx->function_proto); - c000f48e: 9e0f70ef jal ra,c000666e - c000f492: 8baa mv s7,a0 - c000f494: 8a2e mv s4,a1 - c000f496: d6a43823 sd a0,-656(s0) - c000f49a: d6b43c23 sd a1,-648(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15833 + c000f57c: 9e0f70ef jal ra,c000675c + c000f580: 8baa mv s7,a0 + c000f582: 8a2e mv s4,a1 + c000f584: d6a43823 sd a0,-656(s0) + c000f588: d6b43c23 sd a1,-648(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15841 proto = JS_NewObjectProto(ctx, parent_proto); - c000f49e: ed043583 ld a1,-304(s0) - c000f4a2: 865a mv a2,s6 - c000f4a4: 8526 mv a0,s1 - c000f4a6: ed643c23 sd s6,-296(s0) - c000f4aa: 085070ef jal ra,c0016d2e - c000f4ae: 777d lui a4,0xfffff - c000f4b0: 62070713 addi a4,a4,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> - c000f4b4: 9722 add a4,a4,s0 - c000f4b6: e30c sd a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15834 + c000f58c: ed043583 ld a1,-304(s0) + c000f590: 865a mv a2,s6 + c000f592: 8526 mv a0,s1 + c000f594: ed643c23 sd s6,-296(s0) + c000f598: 167070ef jal ra,c0016efe + c000f59c: 777d lui a4,0xfffff + c000f59e: 62070713 addi a4,a4,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> + c000f5a2: 9722 add a4,a4,s0 + c000f5a4: e30c sd a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15842 if (JS_IsException(proto)) - c000f4b8: 431c lw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15833 + c000f5a6: 431c lw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15841 proto = JS_NewObjectProto(ctx, parent_proto); - c000f4ba: e8a43823 sd a0,-368(s0) - c000f4be: e8b43c23 sd a1,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15834 + c000f5a8: e8a43823 sd a0,-368(s0) + c000f5ac: e8b43c23 sd a1,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15842 if (JS_IsException(proto)) - c000f4c2: 4819 li a6,6 - c000f4c4: 37078463 beq a5,a6,c000f82c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15838 + c000f5b0: 4819 li a6,6 + c000f5b2: 37078463 beq a5,a6,c000f91a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15846 assert(b->func_kind == JS_FUNC_NORMAL); - c000f4c8: 77fd lui a5,0xfffff - c000f4ca: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f4ce: 97a2 add a5,a5,s0 - c000f4d0: 639c ld a5,0(a5) - c000f4d2: 0197c783 lbu a5,25(a5) - c000f4d6: 0307f793 andi a5,a5,48 - c000f4da: 14078763 beqz a5,c000f628 - c000f4de: 6591 lui a1,0x4 - c000f4e0: 4601 li a2,0 - c000f4e2: dde58593 addi a1,a1,-546 # 3dde <__clzdi2-0xbfffc222> - c000f4e6: 0004d517 auipc a0,0x4d - c000f4ea: 59250513 addi a0,a0,1426 # c005ca78 - c000f4ee: 52a440ef jal ra,c0053a18 <__assert> + c000f5b6: 77fd lui a5,0xfffff + c000f5b8: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f5bc: 97a2 add a5,a5,s0 + c000f5be: 639c ld a5,0(a5) + c000f5c0: 0197c783 lbu a5,25(a5) + c000f5c4: 0307f793 andi a5,a5,48 + c000f5c8: 14078763 beqz a5,c000f716 + c000f5cc: 6591 lui a1,0x4 + c000f5ce: 4601 li a2,0 + c000f5d0: de658593 addi a1,a1,-538 # 3de6 <__clzdi2-0xbfffc21a> + c000f5d4: 0004d517 auipc a0,0x4d + c000f5d8: 67450513 addi a0,a0,1652 # c005cc48 + c000f5dc: 60c440ef jal ra,c0053be8 <__assert> JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c000f4f2: 577d li a4,-1 - c000f4f4: 00ec1663 bne s8,a4,c000f500 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c000f5e0: 577d li a4,-1 + c000f5e2: 00ec1663 bne s8,a4,c000f5ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c000f4f8: 639c ld a5,0(a5) - c000f4fa: 93b1 srli a5,a5,0x2c + c000f5e6: 639c ld a5,0(a5) + c000f5e8: 93b1 srli a5,a5,0x2c js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15824 if (!JS_IsConstructor(ctx, parent_class)) { - c000f4fc: 8b85 andi a5,a5,1 - c000f4fe: ebc5 bnez a5,c000f5ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15817 + c000f5ea: 8b85 andi a5,a5,1 + c000f5ec: ebc5 bnez a5,c000f69c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15825 JS_ThrowTypeError(ctx, "parent class must be constructor"); - c000f500: 0004e597 auipc a1,0x4e - c000f504: d2058593 addi a1,a1,-736 # c005d220 - c000f508: 8526 mv a0,s1 - c000f50a: 6ed030ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15805 + c000f5ee: 0004e597 auipc a1,0x4e + c000f5f2: e6258593 addi a1,a1,-414 # c005d450 + c000f5f6: 8526 mv a0,s1 + c000f5f8: 6ed030ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15813 JSValue ctor = JS_UNDEFINED, parent_proto = JS_UNDEFINED; - c000f50e: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15804 + c000f5fc: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15812 JSValue bfunc, parent_class, proto = JS_UNDEFINED; - c000f510: 777d lui a4,0xfffff - c000f512: 62070713 addi a4,a4,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> - c000f516: 478d li a5,3 - c000f518: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15805 + c000f5fe: 777d lui a4,0xfffff + c000f600: 62070713 addi a4,a4,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> + c000f604: 478d li a5,3 + c000f606: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15813 JSValue ctor = JS_UNDEFINED, parent_proto = JS_UNDEFINED; - c000f51a: 4c8d li s9,3 - c000f51c: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15804 + c000f608: 4c8d li s9,3 + c000f60a: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15812 JSValue bfunc, parent_class, proto = JS_UNDEFINED; - c000f51e: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15884 + c000f60c: e31c sd a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15892 JS_FreeValue(ctx, parent_class); - c000f520: 85de mv a1,s7 - c000f522: 8652 mv a2,s4 - c000f524: 8526 mv a0,s1 - c000f526: d7743823 sd s7,-656(s0) - c000f52a: d7443c23 sd s4,-648(s0) - c000f52e: e0af80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15885 + c000f60e: 85de mv a1,s7 + c000f610: 8652 mv a2,s4 + c000f612: 8526 mv a0,s1 + c000f614: d7743823 sd s7,-656(s0) + c000f618: d7443c23 sd s4,-648(s0) + c000f61c: e0af80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15893 JS_FreeValue(ctx, parent_proto); - c000f532: ed043583 ld a1,-304(s0) - c000f536: 865a mv a2,s6 - c000f538: 8526 mv a0,s1 - c000f53a: ed643c23 sd s6,-296(s0) - c000f53e: dfaf80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15886 + c000f620: ed043583 ld a1,-304(s0) + c000f624: 865a mv a2,s6 + c000f626: 8526 mv a0,s1 + c000f628: ed643c23 sd s6,-296(s0) + c000f62c: dfaf80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15894 JS_FreeValue(ctx, bfunc); - c000f542: 77fd lui a5,0xfffff - c000f544: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f548: 97a2 add a5,a5,s0 - c000f54a: 639c ld a5,0(a5) - c000f54c: e8843603 ld a2,-376(s0) - c000f550: 8526 mv a0,s1 - c000f552: e8f43023 sd a5,-384(s0) - c000f556: 77fd lui a5,0xfffff - c000f558: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f55c: 97a2 add a5,a5,s0 - c000f55e: 638c ld a1,0(a5) - c000f560: dd8f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15887 + c000f630: 77fd lui a5,0xfffff + c000f632: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f636: 97a2 add a5,a5,s0 + c000f638: 639c ld a5,0(a5) + c000f63a: e8843603 ld a2,-376(s0) + c000f63e: 8526 mv a0,s1 + c000f640: e8f43023 sd a5,-384(s0) + c000f644: 77fd lui a5,0xfffff + c000f646: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f64a: 97a2 add a5,a5,s0 + c000f64c: 638c ld a1,0(a5) + c000f64e: dd8f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15895 JS_FreeValue(ctx, proto); - c000f564: 77fd lui a5,0xfffff - c000f566: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> - c000f56a: 97a2 add a5,a5,s0 - c000f56c: 639c ld a5,0(a5) - c000f56e: e9043583 ld a1,-368(s0) - c000f572: 8526 mv a0,s1 - c000f574: e8f43c23 sd a5,-360(s0) - c000f578: 77fd lui a5,0xfffff - c000f57a: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> - c000f57e: 97a2 add a5,a5,s0 - c000f580: 6390 ld a2,0(a5) - c000f582: db6f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15888 + c000f652: 77fd lui a5,0xfffff + c000f654: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> + c000f658: 97a2 add a5,a5,s0 + c000f65a: 639c ld a5,0(a5) + c000f65c: e9043583 ld a1,-368(s0) + c000f660: 8526 mv a0,s1 + c000f662: e8f43c23 sd a5,-360(s0) + c000f666: 77fd lui a5,0xfffff + c000f668: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> + c000f66c: 97a2 add a5,a5,s0 + c000f66e: 6390 ld a2,0(a5) + c000f670: db6f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15896 JS_FreeValue(ctx, ctor); - c000f586: 85e2 mv a1,s8 - c000f588: 8666 mv a2,s9 - c000f58a: 8526 mv a0,s1 - c000f58c: d9843023 sd s8,-640(s0) - c000f590: d9943423 sd s9,-632(s0) - c000f594: da4f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15889 + c000f674: 85e2 mv a1,s8 + c000f676: 8666 mv a2,s9 + c000f678: 8526 mv a0,s1 + c000f67a: d9843023 sd s8,-640(s0) + c000f67e: d9943423 sd s9,-632(s0) + c000f682: da4f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15897 sp[-2] = JS_UNDEFINED; - c000f598: 478d li a5,3 - c000f59a: fe0d3023 sd zero,-32(s10) - c000f59e: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15890 + c000f686: 478d li a5,3 + c000f688: fe0d3023 sd zero,-32(s10) + c000f68c: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15898 sp[-1] = JS_UNDEFINED; - c000f5a2: fe0d3823 sd zero,-16(s10) - c000f5a6: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15891 + c000f690: fe0d3823 sd zero,-16(s10) + c000f694: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15899 return -1; - c000f5aa: 830fc06f j c000b5da + c000f698: 830fc06f j c000b6c8 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000f5ae: 875e mv a4,s7 - c000f5b0: 87d2 mv a5,s4 - c000f5b2: 4801 li a6,0 - c000f5b4: 03c00693 li a3,60 - c000f5b8: 85de mv a1,s7 - c000f5ba: 8652 mv a2,s4 - c000f5bc: 8526 mv a0,s1 - c000f5be: ef743823 sd s7,-272(s0) - c000f5c2: ef443c23 sd s4,-264(s0) - c000f5c6: 27c020ef jal ra,c0011842 - c000f5ca: daa43023 sd a0,-608(s0) - c000f5ce: dab43423 sd a1,-600(s0) - c000f5d2: eca43823 sd a0,-304(s0) - c000f5d6: ecb43c23 sd a1,-296(s0) + c000f69c: 875e mv a4,s7 + c000f69e: 87d2 mv a5,s4 + c000f6a0: 4801 li a6,0 + c000f6a2: 03c00693 li a3,60 + c000f6a6: 85de mv a1,s7 + c000f6a8: 8652 mv a2,s4 + c000f6aa: 8526 mv a0,s1 + c000f6ac: ef743823 sd s7,-272(s0) + c000f6b0: ef443c23 sd s4,-264(s0) + c000f6b4: 27c020ef jal ra,c0011930 + c000f6b8: daa43023 sd a0,-608(s0) + c000f6bc: dab43423 sd a1,-600(s0) + c000f6c0: eca43823 sd a0,-304(s0) + c000f6c4: ecb43c23 sd a1,-296(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000f5da: 0005879b sext.w a5,a1 + c000f6c8: 0005879b sext.w a5,a1 js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15821 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15829 if (JS_IsException(parent_proto)) - c000f5de: 4719 li a4,6 + c000f6cc: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000f5e0: 8b2e mv s6,a1 + c000f6ce: 8b2e mv s6,a1 js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15821 - c000f5e2: f2e787e3 beq a5,a4,c000f510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15823 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15829 + c000f6d0: f2e787e3 beq a5,a4,c000f5fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15831 if (!JS_IsNull(parent_proto) && !JS_IsObject(parent_proto)) { - c000f5e6: eb978ce3 beq a5,s9,c000f49e - c000f5ea: eb878ae3 beq a5,s8,c000f49e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15824 + c000f6d4: eb978ce3 beq a5,s9,c000f58c + c000f6d8: eb878ae3 beq a5,s8,c000f58c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15832 JS_ThrowTypeError(ctx, "parent prototype must be an object or null"); - c000f5ee: 8526 mv a0,s1 - c000f5f0: 0004e597 auipc a1,0x4e - c000f5f4: c5858593 addi a1,a1,-936 # c005d248 - c000f5f8: 5ff030ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15825 + c000f6dc: 8526 mv a0,s1 + c000f6de: 0004e597 auipc a1,0x4e + c000f6e2: d9a58593 addi a1,a1,-614 # c005d478 + c000f6e6: 5ff030ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15833 goto fail; - c000f5fc: bf11 j c000f510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15830 + c000f6ea: bf11 j c000f5fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15838 parent_proto = JS_DupValue(ctx, ctx->class_proto[JS_CLASS_OBJECT]); - c000f5fe: 60bc ld a5,64(s1) - c000f600: 6b88 ld a0,16(a5) - c000f602: 6f8c ld a1,24(a5) - c000f604: 86af70ef jal ra,c000666e - c000f608: eca43823 sd a0,-304(s0) - c000f60c: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15831 + c000f6ec: 60bc ld a5,64(s1) + c000f6ee: 6b88 ld a0,16(a5) + c000f6f0: 6f8c ld a1,24(a5) + c000f6f2: 86af70ef jal ra,c000675c + c000f6f6: eca43823 sd a0,-304(s0) + c000f6fa: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15839 parent_class = JS_DupValue(ctx, ctx->function_proto); - c000f610: 64a8 ld a0,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15830 + c000f6fe: 64a8 ld a0,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15838 parent_proto = JS_DupValue(ctx, ctx->class_proto[JS_CLASS_OBJECT]); - c000f612: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15831 - parent_class = JS_DupValue(ctx, ctx->function_proto); - c000f614: 68ac ld a1,80(s1) - c000f616: 858f70ef jal ra,c000666e - c000f61a: 8baa mv s7,a0 - c000f61c: 8a2e mv s4,a1 - c000f61e: d6a43823 sd a0,-656(s0) - c000f622: d6b43c23 sd a1,-648(s0) - c000f626: bda5 j c000f49e + c000f700: 8b2e mv s6,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15839 + parent_class = JS_DupValue(ctx, ctx->function_proto); + c000f702: 68ac ld a1,80(s1) + c000f704: 858f70ef jal ra,c000675c + c000f708: 8baa mv s7,a0 + c000f70a: 8a2e mv s4,a1 + c000f70c: d6a43823 sd a0,-656(s0) + c000f710: d6b43c23 sd a1,-648(s0) + c000f714: bda5 j c000f58c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15847 ctor = JS_NewObjectProtoClass(ctx, parent_class, - c000f628: 46b5 li a3,13 - c000f62a: 85de mv a1,s7 - c000f62c: 8652 mv a2,s4 - c000f62e: 8526 mv a0,s1 - c000f630: d7743823 sd s7,-656(s0) - c000f634: d7443c23 sd s4,-648(s0) - c000f638: 150070ef jal ra,c0016788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15841 + c000f716: 46b5 li a3,13 + c000f718: 85de mv a1,s7 + c000f71a: 8652 mv a2,s4 + c000f71c: 8526 mv a0,s1 + c000f71e: d7743823 sd s7,-656(s0) + c000f722: d7443c23 sd s4,-648(s0) + c000f726: 232070ef jal ra,c0016958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15849 if (JS_IsException(ctor)) - c000f63c: 0005879b sext.w a5,a1 - c000f640: 4819 li a6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15839 + c000f72a: 0005879b sext.w a5,a1 + c000f72e: 4819 li a6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15847 ctor = JS_NewObjectProtoClass(ctx, parent_class, - c000f642: 8c2a mv s8,a0 - c000f644: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15841 + c000f730: 8c2a mv s8,a0 + c000f732: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15849 if (JS_IsException(ctor)) - c000f646: ed078de3 beq a5,a6,c000f520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15843 + c000f734: ed078de3 beq a5,a6,c000f60e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15851 ctor = js_closure2(ctx, ctor, b, cur_var_refs, sf); - c000f64a: 77fd lui a5,0xfffff - c000f64c: 777d lui a4,0xfffff - c000f64e: 76fd lui a3,0xfffff - c000f650: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c000f654: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> - c000f658: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f65c: 97a2 add a5,a5,s0 - c000f65e: 9722 add a4,a4,s0 - c000f660: 96a2 add a3,a3,s0 - c000f662: 639c ld a5,0(a5) - c000f664: 6318 ld a4,0(a4) - c000f666: 6294 ld a3,0(a3) - c000f668: 85aa mv a1,a0 - c000f66a: 8666 mv a2,s9 - c000f66c: 8526 mv a0,s1 - c000f66e: 7e6060ef jal ra,c0015e54 - c000f672: 77fd lui a5,0xfffff - c000f674: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> - c000f678: 97a2 add a5,a5,s0 - c000f67a: e388 sd a0,0(a5) - c000f67c: 77fd lui a5,0xfffff - c000f67e: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> - c000f682: 97a2 add a5,a5,s0 - c000f684: e38c sd a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15844 + c000f738: 77fd lui a5,0xfffff + c000f73a: 777d lui a4,0xfffff + c000f73c: 76fd lui a3,0xfffff + c000f73e: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c000f742: 65070713 addi a4,a4,1616 # fffffffffffff650 <_ebss+0xffffffff3fefe52a> + c000f746: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f74a: 97a2 add a5,a5,s0 + c000f74c: 9722 add a4,a4,s0 + c000f74e: 96a2 add a3,a3,s0 + c000f750: 639c ld a5,0(a5) + c000f752: 6318 ld a4,0(a4) + c000f754: 6294 ld a3,0(a3) + c000f756: 85aa mv a1,a0 + c000f758: 8666 mv a2,s9 + c000f75a: 8526 mv a0,s1 + c000f75c: 0c9060ef jal ra,c0016024 + c000f760: 77fd lui a5,0xfffff + c000f762: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> + c000f766: 97a2 add a5,a5,s0 + c000f768: e388 sd a0,0(a5) + c000f76a: 77fd lui a5,0xfffff + c000f76c: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> + c000f770: 97a2 add a5,a5,s0 + c000f772: e38c sd a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15852 bfunc = JS_UNDEFINED; - c000f686: 478d li a5,3 - c000f688: e8f43423 sd a5,-376(s0) + c000f774: 478d li a5,3 + c000f776: e8f43423 sd a5,-376(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c000f68c: 77fd lui a5,0xfffff - c000f68e: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> - c000f692: 97a2 add a5,a5,s0 - c000f694: 439c lw a5,0(a5) + c000f77a: 77fd lui a5,0xfffff + c000f77c: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> + c000f780: 97a2 add a5,a5,s0 + c000f782: 439c lw a5,0(a5) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15853 if (JS_IsException(ctor)) - c000f696: 777d lui a4,0xfffff - c000f698: 5d870713 addi a4,a4,1496 # fffffffffffff5d8 <_ebss+0xffffffff3fefe4b2> - c000f69c: 9722 add a4,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15843 + c000f784: 777d lui a4,0xfffff + c000f786: 5d870713 addi a4,a4,1496 # fffffffffffff5d8 <_ebss+0xffffffff3fefe4b2> + c000f78a: 9722 add a4,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15851 ctor = js_closure2(ctx, ctor, b, cur_var_refs, sf); - c000f69e: d8a43023 sd a0,-640(s0) - c000f6a2: d8b43423 sd a1,-632(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15844 + c000f78c: d8a43023 sd a0,-640(s0) + c000f790: d8b43423 sd a1,-632(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15852 bfunc = JS_UNDEFINED; - c000f6a6: e8043023 sd zero,-384(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15845 + c000f794: e8043023 sd zero,-384(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15853 if (JS_IsException(ctor)) - c000f6aa: e31c sd a5,0(a4) - c000f6ac: 4819 li a6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15843 + c000f798: e31c sd a5,0(a4) + c000f79a: 4819 li a6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15851 ctor = js_closure2(ctx, ctor, b, cur_var_refs, sf); - c000f6ae: 8c2a mv s8,a0 - c000f6b0: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15845 + c000f79c: 8c2a mv s8,a0 + c000f79e: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15853 if (JS_IsException(ctor)) - c000f6b2: 0d078b63 beq a5,a6,c000f788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15847 + c000f7a0: 0d078b63 beq a5,a6,c000f876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15855 js_method_set_home_object(ctx, ctor, proto); - c000f6b6: e9843703 ld a4,-360(s0) - c000f6ba: e9043683 ld a3,-368(s0) - c000f6be: 85aa mv a1,a0 - c000f6c0: 8666 mv a2,s9 - c000f6c2: 8526 mv a0,s1 - c000f6c4: 841f80ef jal ra,c0007f04 + c000f7a4: e9843703 ld a4,-360(s0) + c000f7a8: e9043683 ld a3,-368(s0) + c000f7ac: 85aa mv a1,a0 + c000f7ae: 8666 mv a2,s9 + c000f7b0: 8526 mv a0,s1 + c000f7b2: 841f80ef jal ra,c0007ff2 JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9865 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c000f6c8: 77fd lui a5,0xfffff - c000f6ca: 5d878793 addi a5,a5,1496 # fffffffffffff5d8 <_ebss+0xffffffff3fefe4b2> - c000f6ce: 97a2 add a5,a5,s0 - c000f6d0: 639c ld a5,0(a5) - c000f6d2: 577d li a4,-1 - c000f6d4: 02e79263 bne a5,a4,c000f6f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 + c000f7b6: 77fd lui a5,0xfffff + c000f7b8: 5d878793 addi a5,a5,1496 # fffffffffffff5d8 <_ebss+0xffffffff3fefe4b2> + c000f7bc: 97a2 add a5,a5,s0 + c000f7be: 639c ld a5,0(a5) + c000f7c0: 577d li a4,-1 + c000f7c2: 02e79263 bne a5,a4,c000f7e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c000f6d8: 77fd lui a5,0xfffff - c000f6da: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> - c000f6de: 97a2 add a5,a5,s0 - c000f6e0: 639c ld a5,0(a5) - c000f6e2: 777d lui a4,0xfffff - c000f6e4: 61870713 addi a4,a4,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> - c000f6e8: 0057c783 lbu a5,5(a5) - c000f6ec: 9722 add a4,a4,s0 - c000f6ee: 6318 ld a4,0(a4) - c000f6f0: 0107e793 ori a5,a5,16 - c000f6f4: 00f702a3 sb a5,5(a4) + c000f7c6: 77fd lui a5,0xfffff + c000f7c8: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> + c000f7cc: 97a2 add a5,a5,s0 + c000f7ce: 639c ld a5,0(a5) + c000f7d0: 777d lui a4,0xfffff + c000f7d2: 61870713 addi a4,a4,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> + c000f7d6: 0057c783 lbu a5,5(a5) + c000f7da: 9722 add a4,a4,s0 + c000f7dc: 6318 ld a4,0(a4) + c000f7de: 0107e793 ori a5,a5,16 + c000f7e2: 00f702a3 sb a5,5(a4) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15858 JS_DefinePropertyValue(ctx, ctor, JS_ATOM_length, - c000f6f8: 77fd lui a5,0xfffff - c000f6fa: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f6fe: 97a2 add a5,a5,s0 - c000f700: 639c ld a5,0(a5) + c000f7e6: 77fd lui a5,0xfffff + c000f7e8: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f7ec: 97a2 add a5,a5,s0 + c000f7ee: 639c ld a5,0(a5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000f702: d8043823 sd zero,-624(s0) + c000f7f0: d8043823 sd zero,-624(s0) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15850 - c000f706: d8043583 ld a1,-640(s0) - c000f70a: 0447d783 lhu a5,68(a5) - c000f70e: d8843603 ld a2,-632(s0) - c000f712: 4805 li a6,1 - c000f714: d8f42823 sw a5,-624(s0) - c000f718: d9043703 ld a4,-624(s0) - c000f71c: 4781 li a5,0 - c000f71e: 03000693 li a3,48 - c000f722: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15858 + c000f7f4: d8043583 ld a1,-640(s0) + c000f7f8: 0447d783 lhu a5,68(a5) + c000f7fc: d8843603 ld a2,-632(s0) + c000f800: 4805 li a6,1 + c000f802: d8f42823 sw a5,-624(s0) + c000f806: d9043703 ld a4,-624(s0) + c000f80a: 4781 li a5,0 + c000f80c: 03000693 li a3,48 + c000f810: 8526 mv a0,s1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000f724: d8043c23 sd zero,-616(s0) - c000f728: dce43823 sd a4,-560(s0) - c000f72c: dc043c23 sd zero,-552(s0) + c000f812: d8043c23 sd zero,-616(s0) + c000f816: dce43823 sd a4,-560(s0) + c000f81a: dc043c23 sd zero,-552(s0) js_op_define_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15850 - c000f730: 087030ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15858 + c000f81e: 087030ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15862 if (is_computed_name) { - c000f734: 05700793 li a5,87 - c000f738: 04fa9f63 bne s5,a5,c000f796 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15855 + c000f822: 05700793 li a5,87 + c000f826: 04fa9f63 bne s5,a5,c000f884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15863 if (JS_DefineObjectNameComputed(ctx, ctor, sp[-3], - c000f73c: fd0d3683 ld a3,-48(s10) - c000f740: fd8d3703 ld a4,-40(s10) - c000f744: d8043583 ld a1,-640(s0) - c000f748: d8843603 ld a2,-632(s0) - c000f74c: 8526 mv a0,s1 - c000f74e: 5b2200ef jal ra,c002fd00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15859 + c000f82a: fd0d3683 ld a3,-48(s10) + c000f82e: fd8d3703 ld a4,-40(s10) + c000f832: d8043583 ld a1,-640(s0) + c000f836: d8843603 ld a2,-632(s0) + c000f83a: 8526 mv a0,s1 + c000f83c: 694200ef jal ra,c002fed0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15867 if (JS_DefineObjectName(ctx, ctor, class_name, JS_PROP_CONFIGURABLE) < 0) - c000f752: 02054b63 bltz a0,c000f788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15865 + c000f840: 02054b63 bltz a0,c000f876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15873 if (JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c000f756: d8043503 ld a0,-640(s0) - c000f75a: d8843583 ld a1,-632(s0) - c000f75e: f11f60ef jal ra,c000666e - c000f762: 87ae mv a5,a1 - c000f764: dcb43423 sd a1,-568(s0) - c000f768: e9843603 ld a2,-360(s0) - c000f76c: e9043583 ld a1,-368(s0) - c000f770: 6811 lui a6,0x4 - c000f772: 872a mv a4,a0 - c000f774: dca43023 sd a0,-576(s0) - c000f778: 080d addi a6,a6,3 - c000f77a: 03d00693 li a3,61 - c000f77e: 8526 mv a0,s1 - c000f780: 037030ef jal ra,c0012fb6 - c000f784: 02055663 bgez a0,c000f7b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15844 + c000f844: d8043503 ld a0,-640(s0) + c000f848: d8843583 ld a1,-632(s0) + c000f84c: f11f60ef jal ra,c000675c + c000f850: 87ae mv a5,a1 + c000f852: dcb43423 sd a1,-568(s0) + c000f856: e9843603 ld a2,-360(s0) + c000f85a: e9043583 ld a1,-368(s0) + c000f85e: 6811 lui a6,0x4 + c000f860: 872a mv a4,a0 + c000f862: dca43023 sd a0,-576(s0) + c000f866: 080d addi a6,a6,3 + c000f868: 03d00693 li a3,61 + c000f86c: 8526 mv a0,s1 + c000f86e: 037030ef jal ra,c00130a4 + c000f872: 02055663 bgez a0,c000f89e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15852 bfunc = JS_UNDEFINED; - c000f788: 77fd lui a5,0xfffff - c000f78a: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000f78e: 97a2 add a5,a5,s0 - c000f790: 0007b023 sd zero,0(a5) - c000f794: b371 j c000f520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15859 + c000f876: 77fd lui a5,0xfffff + c000f878: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000f87c: 97a2 add a5,a5,s0 + c000f87e: 0007b023 sd zero,0(a5) + c000f882: b371 j c000f60e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15867 if (JS_DefineObjectName(ctx, ctor, class_name, JS_PROP_CONFIGURABLE) < 0) - c000f796: 77fd lui a5,0xfffff - c000f798: 5e878793 addi a5,a5,1512 # fffffffffffff5e8 <_ebss+0xffffffff3fefe4c2> - c000f79c: 97a2 add a5,a5,s0 - c000f79e: 6394 ld a3,0(a5) - c000f7a0: d8043583 ld a1,-640(s0) - c000f7a4: d8843603 ld a2,-632(s0) - c000f7a8: 8526 mv a0,s1 - c000f7aa: 500200ef jal ra,c002fcaa - c000f7ae: b755 j c000f752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15871 + c000f884: 77fd lui a5,0xfffff + c000f886: 5e878793 addi a5,a5,1512 # fffffffffffff5e8 <_ebss+0xffffffff3fefe4c2> + c000f88a: 97a2 add a5,a5,s0 + c000f88c: 6394 ld a3,0(a5) + c000f88e: d8043583 ld a1,-640(s0) + c000f892: d8843603 ld a2,-632(s0) + c000f896: 8526 mv a0,s1 + c000f898: 5e2200ef jal ra,c002fe7a + c000f89c: b755 j c000f840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15879 if (JS_DefinePropertyValue(ctx, ctor, JS_ATOM_prototype, - c000f7b0: e9043503 ld a0,-368(s0) - c000f7b4: e9843583 ld a1,-360(s0) - c000f7b8: eb7f60ef jal ra,c000666e - c000f7bc: 87ae mv a5,a1 - c000f7be: dab43c23 sd a1,-584(s0) - c000f7c2: d8843603 ld a2,-632(s0) - c000f7c6: d8043583 ld a1,-640(s0) - c000f7ca: 872a mv a4,a0 - c000f7cc: daa43823 sd a0,-592(s0) - c000f7d0: 6811 lui a6,0x4 - c000f7d2: 03c00693 li a3,60 - c000f7d6: 8526 mv a0,s1 - c000f7d8: 7de030ef jal ra,c0012fb6 - c000f7dc: fa0546e3 bltz a0,c000f788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15877 + c000f89e: e9043503 ld a0,-368(s0) + c000f8a2: e9843583 ld a1,-360(s0) + c000f8a6: eb7f60ef jal ra,c000675c + c000f8aa: 87ae mv a5,a1 + c000f8ac: dab43c23 sd a1,-584(s0) + c000f8b0: d8843603 ld a2,-632(s0) + c000f8b4: d8043583 ld a1,-640(s0) + c000f8b8: 872a mv a4,a0 + c000f8ba: daa43823 sd a0,-592(s0) + c000f8be: 6811 lui a6,0x4 + c000f8c0: 03c00693 li a3,60 + c000f8c4: 8526 mv a0,s1 + c000f8c6: 7de030ef jal ra,c00130a4 + c000f8ca: fa0546e3 bltz a0,c000f876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15885 JS_FreeValue(ctx, parent_proto); - c000f7e0: ed043583 ld a1,-304(s0) - c000f7e4: ed843603 ld a2,-296(s0) - c000f7e8: 8526 mv a0,s1 - c000f7ea: b4ef80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15878 + c000f8ce: ed043583 ld a1,-304(s0) + c000f8d2: ed843603 ld a2,-296(s0) + c000f8d6: 8526 mv a0,s1 + c000f8d8: b4ef80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15886 JS_FreeValue(ctx, parent_class); - c000f7ee: d7043583 ld a1,-656(s0) - c000f7f2: d7843603 ld a2,-648(s0) - c000f7f6: 8526 mv a0,s1 - c000f7f8: b40f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15880 + c000f8dc: d7043583 ld a1,-656(s0) + c000f8e0: d7843603 ld a2,-648(s0) + c000f8e4: 8526 mv a0,s1 + c000f8e6: b40f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15888 sp[-2] = ctor; - c000f7fc: 77fd lui a5,0xfffff - c000f7fe: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> - c000f802: 97a2 add a5,a5,s0 - c000f804: 639c ld a5,0(a5) - c000f806: fefd3023 sd a5,-32(s10) - c000f80a: 77fd lui a5,0xfffff - c000f80c: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> - c000f810: 97a2 add a5,a5,s0 - c000f812: 639c ld a5,0(a5) - c000f814: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15881 + c000f8ea: 77fd lui a5,0xfffff + c000f8ec: 61878793 addi a5,a5,1560 # fffffffffffff618 <_ebss+0xffffffff3fefe4f2> + c000f8f0: 97a2 add a5,a5,s0 + c000f8f2: 639c ld a5,0(a5) + c000f8f4: fefd3023 sd a5,-32(s10) + c000f8f8: 77fd lui a5,0xfffff + c000f8fa: 60878793 addi a5,a5,1544 # fffffffffffff608 <_ebss+0xffffffff3fefe4e2> + c000f8fe: 97a2 add a5,a5,s0 + c000f900: 639c ld a5,0(a5) + c000f902: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15889 sp[-1] = proto; - c000f818: e9043783 ld a5,-368(s0) - c000f81c: fefd3823 sd a5,-16(s10) - c000f820: e9843783 ld a5,-360(s0) - c000f824: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15882 + c000f906: e9043783 ld a5,-368(s0) + c000f90a: fefd3823 sd a5,-16(s10) + c000f90e: e9843783 ld a5,-360(s0) + c000f912: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15890 return 0; - c000f828: c51fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15805 + c000f916: c51fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15813 JSValue ctor = JS_UNDEFINED, parent_proto = JS_UNDEFINED; - c000f82c: 4c8d li s9,3 - c000f82e: 4c01 li s8,0 - c000f830: b9c5 j c000f520 + c000f91a: 4c8d li s9,3 + c000f91c: 4c01 li s8,0 + c000f91e: b9c5 j c000f60e JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17712 val = JS_GetPropertyValue(ctx, sp[-2], sp[-1]); - c000f832: ff0d3683 ld a3,-16(s10) - c000f836: fe8d3603 ld a2,-24(s10) - c000f83a: ff8d3703 ld a4,-8(s10) - c000f83e: fe0d3583 ld a1,-32(s10) - c000f842: 8526 mv a0,s1 - c000f844: ff0d0a13 addi s4,s10,-16 - c000f848: 460020ef jal ra,c0011ca8 - c000f84c: eea43823 sd a0,-272(s0) - c000f850: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17705 + c000f920: ff0d3683 ld a3,-16(s10) + c000f924: fe8d3603 ld a2,-24(s10) + c000f928: ff8d3703 ld a4,-8(s10) + c000f92c: fe0d3583 ld a1,-32(s10) + c000f930: 8526 mv a0,s1 + c000f932: ff0d0a13 addi s4,s10,-16 + c000f936: 460020ef jal ra,c0011d96 + c000f93a: eea43823 sd a0,-272(s0) + c000f93e: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17713 JS_FreeValue(ctx, sp[-2]); - c000f854: fe0d3583 ld a1,-32(s10) - c000f858: fe8d3603 ld a2,-24(s10) - c000f85c: 8526 mv a0,s1 - c000f85e: adaf80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17706 + c000f942: fe0d3583 ld a1,-32(s10) + c000f946: fe8d3603 ld a2,-24(s10) + c000f94a: 8526 mv a0,s1 + c000f94c: adaf80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17714 sp[-2] = val; - c000f862: ef043783 ld a5,-272(s0) - c000f866: fefd3023 sd a5,-32(s10) - c000f86a: ef843783 ld a5,-264(s0) - c000f86e: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17708 + c000f950: ef043783 ld a5,-272(s0) + c000f954: fefd3023 sd a5,-32(s10) + c000f958: ef843783 ld a5,-264(s0) + c000f95c: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17716 if (unlikely(JS_IsException(val))) - c000f872: ef842703 lw a4,-264(s0) - c000f876: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17704 + c000f960: ef842703 lw a4,-264(s0) + c000f964: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17712 val = JS_GetPropertyValue(ctx, sp[-2], sp[-1]); - c000f878: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17708 + c000f966: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17716 if (unlikely(JS_IsException(val))) - c000f87a: 00f70463 beq a4,a5,c000f882 - c000f87e: bfbfb06f j c000b478 - c000f882: d59fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17717 + c000f968: 00f70463 beq a4,a5,c000f970 + c000f96c: bfbfb06f j c000b566 + c000f970: d59fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17725 val = JS_GetPropertyValue(ctx, sp[-2], sp[-1]); - c000f886: ff8d3703 ld a4,-8(s10) - c000f88a: ff0d3683 ld a3,-16(s10) - c000f88e: fe0d3583 ld a1,-32(s10) - c000f892: fe8d3603 ld a2,-24(s10) - c000f896: 8526 mv a0,s1 - c000f898: 410020ef jal ra,c0011ca8 - c000f89c: eeb43c23 sd a1,-264(s0) - c000f8a0: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17718 + c000f974: ff8d3703 ld a4,-8(s10) + c000f978: ff0d3683 ld a3,-16(s10) + c000f97c: fe0d3583 ld a1,-32(s10) + c000f980: fe8d3603 ld a2,-24(s10) + c000f984: 8526 mv a0,s1 + c000f986: 410020ef jal ra,c0011d96 + c000f98a: eeb43c23 sd a1,-264(s0) + c000f98e: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17726 sp[-1] = val; - c000f8a4: fead3823 sd a0,-16(s10) - c000f8a8: ef843783 ld a5,-264(s0) - c000f8ac: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17719 - if (unlikely(JS_IsException(val))) - c000f8b0: ef842703 lw a4,-264(s0) - c000f8b4: 4799 li a5,6 - c000f8b6: 00f70463 beq a4,a5,c000f8be - c000f8ba: bbffb06f j c000b478 - c000f8be: d1dfb06f j c000b5da + c000f992: fead3823 sd a0,-16(s10) + c000f996: ef843783 ld a5,-264(s0) + c000f99a: fefd3c23 sd a5,-8(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17727 + if (unlikely(JS_IsException(val))) + c000f99e: ef842703 lw a4,-264(s0) + c000f9a2: 4799 li a5,6 + c000f9a4: 00f70463 beq a4,a5,c000f9ac + c000f9a8: bbffb06f j c000b566 + c000f9ac: d1dfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17735 if (unlikely(JS_IsUndefined(sp[-2]))) { - c000f8c2: fe8d2683 lw a3,-24(s10) - c000f8c6: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c000f9b0: fe8d2683 lw a3,-24(s10) + c000f9b4: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c000f8c8: ff0d0793 addi a5,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17727 + c000f9b6: ff0d0793 addi a5,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17735 if (unlikely(JS_IsUndefined(sp[-2]))) { - c000f8cc: 02e69763 bne a3,a4,c000f8fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17728 + c000f9ba: 02e69763 bne a3,a4,c000f9e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17736 JSAtom atom = JS_ValueToAtom(ctx, sp[-1]); - c000f8d0: 638c ld a1,0(a5) - c000f8d2: 6790 ld a2,8(a5) - c000f8d4: 8526 mv a0,s1 - c000f8d6: 547110ef jal ra,c002161c - c000f8da: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17729 + c000f9be: 638c ld a1,0(a5) + c000f9c0: 6790 ld a2,8(a5) + c000f9c2: 8526 mv a0,s1 + c000f9c4: 629110ef jal ra,c00217ec + c000f9c8: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17737 if (atom != JS_ATOM_NULL) { - c000f8de: 00099463 bnez s3,c000f8e6 - c000f8e2: cf9fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17730 + c000f9cc: 00099463 bnez s3,c000f9d4 + c000f9d0: cf9fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17738 JS_ThrowReferenceErrorNotDefined(ctx, atom); - c000f8e6: 85ce mv a1,s3 - c000f8e8: 8526 mv a0,s1 - c000f8ea: 048050ef jal ra,c0014932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17731 + c000f9d4: 85ce mv a1,s3 + c000f9d6: 8526 mv a0,s1 + c000f9d8: 048050ef jal ra,c0014a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17739 JS_FreeAtom(ctx, atom); - c000f8ee: 85ce mv a1,s3 - c000f8f0: 8526 mv a0,s1 - c000f8f2: c1bf70ef jal ra,c000750c - c000f8f6: ce5fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17735 + c000f9dc: 85ce mv a1,s3 + c000f9de: 8526 mv a0,s1 + c000f9e0: c1bf70ef jal ra,c00075fa + c000f9e4: ce5fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17743 val = JS_GetPropertyValue(ctx, sp[-2], - c000f8fa: 678c ld a1,8(a5) - c000f8fc: ff0d3503 ld a0,-16(s10) - c000f900: d6ff60ef jal ra,c000666e - c000f904: 767d lui a2,0xfffff - c000f906: 7e060793 addi a5,a2,2016 # fffffffffffff7e0 <_ebss+0xffffffff3fefe6ba> - c000f90a: 97a2 add a5,a5,s0 - c000f90c: e388 sd a0,0(a5) - c000f90e: 7e860793 addi a5,a2,2024 - c000f912: 97a2 add a5,a5,s0 - c000f914: e38c sd a1,0(a5) - c000f916: 872e mv a4,a1 - c000f918: fe8d3603 ld a2,-24(s10) - c000f91c: fe0d3583 ld a1,-32(s10) - c000f920: 86aa mv a3,a0 - c000f922: 8526 mv a0,s1 - c000f924: 384020ef jal ra,c0011ca8 - c000f928: eeb43c23 sd a1,-264(s0) - c000f92c: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17737 + c000f9e8: 678c ld a1,8(a5) + c000f9ea: ff0d3503 ld a0,-16(s10) + c000f9ee: d6ff60ef jal ra,c000675c + c000f9f2: 767d lui a2,0xfffff + c000f9f4: 7e060793 addi a5,a2,2016 # fffffffffffff7e0 <_ebss+0xffffffff3fefe6ba> + c000f9f8: 97a2 add a5,a5,s0 + c000f9fa: e388 sd a0,0(a5) + c000f9fc: 7e860793 addi a5,a2,2024 + c000fa00: 97a2 add a5,a5,s0 + c000fa02: e38c sd a1,0(a5) + c000fa04: 872e mv a4,a1 + c000fa06: fe8d3603 ld a2,-24(s10) + c000fa0a: fe0d3583 ld a1,-32(s10) + c000fa0e: 86aa mv a3,a0 + c000fa10: 8526 mv a0,s1 + c000fa12: 384020ef jal ra,c0011d96 + c000fa16: eeb43c23 sd a1,-264(s0) + c000fa1a: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17745 if (unlikely(JS_IsException(val))) - c000f930: 2581 sext.w a1,a1 - c000f932: 4799 li a5,6 - c000f934: 00f59463 bne a1,a5,c000f93c - c000f938: ca3fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17739 + c000fa1e: 2581 sext.w a1,a1 + c000fa20: 4799 li a5,6 + c000fa22: 00f59463 bne a1,a5,c000fa2a + c000fa26: ca3fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17747 sp[0] = val; - c000f93c: 00ad3023 sd a0,0(s10) - c000f940: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17740 + c000fa2a: 00ad3023 sd a0,0(s10) + c000fa2e: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17748 sp++; - c000f944: 0d41 addi s10,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17739 + c000fa32: 0d41 addi s10,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17747 sp[0] = val; - c000f946: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17742 + c000fa34: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17750 BREAK; - c000f94a: b2ffb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17748 + c000fa38: b2ffb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17756 atom = JS_ValueToAtom(ctx, sp[-1]); - c000f94e: ff0d3583 ld a1,-16(s10) - c000f952: ff8d3603 ld a2,-8(s10) - c000f956: 8526 mv a0,s1 - c000f958: 4c5110ef jal ra,c002161c - c000f95c: 00050b1b sext.w s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17749 + c000fa3c: ff0d3583 ld a1,-16(s10) + c000fa40: ff8d3603 ld a2,-8(s10) + c000fa44: 8526 mv a0,s1 + c000fa46: 5a7110ef jal ra,c00217ec + c000fa4a: 00050b1b sext.w s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17757 if (unlikely(atom == JS_ATOM_NULL)) - c000f960: 000b1463 bnez s6,c000f968 - c000f964: c77fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17751 + c000fa4e: 000b1463 bnez s6,c000fa56 + c000fa52: c77fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17759 val = JS_GetPropertyInternal(ctx, sp[-2], atom, sp[-3], FALSE); - c000f968: fd0d3703 ld a4,-48(s10) - c000f96c: fd8d3783 ld a5,-40(s10) - c000f970: fe8d3603 ld a2,-24(s10) - c000f974: fe0d3583 ld a1,-32(s10) - c000f978: 4801 li a6,0 - c000f97a: 86da mv a3,s6 - c000f97c: 8526 mv a0,s1 - c000f97e: 6c5010ef jal ra,c0011842 - c000f982: eea43823 sd a0,-272(s0) - c000f986: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17752 + c000fa56: fd0d3703 ld a4,-48(s10) + c000fa5a: fd8d3783 ld a5,-40(s10) + c000fa5e: fe8d3603 ld a2,-24(s10) + c000fa62: fe0d3583 ld a1,-32(s10) + c000fa66: 4801 li a6,0 + c000fa68: 86da mv a3,s6 + c000fa6a: 8526 mv a0,s1 + c000fa6c: 6c5010ef jal ra,c0011930 + c000fa70: eea43823 sd a0,-272(s0) + c000fa74: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17760 JS_FreeAtom(ctx, atom); - c000f98a: 8526 mv a0,s1 - c000f98c: 85da mv a1,s6 - c000f98e: b7ff70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17753 + c000fa78: 8526 mv a0,s1 + c000fa7a: 85da mv a1,s6 + c000fa7c: b7ff70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17761 if (unlikely(JS_IsException(val))) - c000f992: ef842703 lw a4,-264(s0) - c000f996: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17751 + c000fa80: ef842703 lw a4,-264(s0) + c000fa84: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17759 val = JS_GetPropertyInternal(ctx, sp[-2], atom, sp[-3], FALSE); - c000f998: fe0d0a13 addi s4,s10,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17753 + c000fa86: fe0d0a13 addi s4,s10,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17761 if (unlikely(JS_IsException(val))) - c000f99c: 00f71463 bne a4,a5,c000f9a4 - c000f9a0: c3bfb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17755 + c000fa8a: 00f71463 bne a4,a5,c000fa92 + c000fa8e: c3bfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17763 JS_FreeValue(ctx, sp[-1]); - c000f9a4: ff0d3583 ld a1,-16(s10) - c000f9a8: ff8d3603 ld a2,-8(s10) - c000f9ac: 8526 mv a0,s1 - c000f9ae: 98af80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17756 + c000fa92: ff0d3583 ld a1,-16(s10) + c000fa96: ff8d3603 ld a2,-8(s10) + c000fa9a: 8526 mv a0,s1 + c000fa9c: 98af80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17764 JS_FreeValue(ctx, sp[-2]); - c000f9b2: fe0d3583 ld a1,-32(s10) - c000f9b6: fe8d3603 ld a2,-24(s10) - c000f9ba: 8526 mv a0,s1 - c000f9bc: 97cf80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17757 + c000faa0: fe0d3583 ld a1,-32(s10) + c000faa4: fe8d3603 ld a2,-24(s10) + c000faa8: 8526 mv a0,s1 + c000faaa: 97cf80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17765 JS_FreeValue(ctx, sp[-3]); - c000f9c0: fd0d3583 ld a1,-48(s10) - c000f9c4: fd8d3603 ld a2,-40(s10) - c000f9c8: 8526 mv a0,s1 - c000f9ca: 96ef80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17758 + c000faae: fd0d3583 ld a1,-48(s10) + c000fab2: fd8d3603 ld a2,-40(s10) + c000fab6: 8526 mv a0,s1 + c000fab8: 96ef80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17766 sp[-3] = val; - c000f9ce: ef043783 ld a5,-272(s0) - c000f9d2: fcfd3823 sd a5,-48(s10) - c000f9d6: ef843783 ld a5,-264(s0) - c000f9da: fcfd3c23 sd a5,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17761 + c000fabc: ef043783 ld a5,-272(s0) + c000fac0: fcfd3823 sd a5,-48(s10) + c000fac4: ef843783 ld a5,-264(s0) + c000fac8: fcfd3c23 sd a5,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17769 BREAK; - c000f9de: 8d52 mv s10,s4 - c000f9e0: a99fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17767 + c000facc: 8d52 mv s10,s4 + c000face: a99fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17775 ret = JS_SetPropertyValue(ctx, sp[-3], sp[-2], sp[-1], JS_PROP_THROW_STRICT); - c000f9e4: ff0d3783 ld a5,-16(s10) - c000f9e8: ff8d3803 ld a6,-8(s10) - c000f9ec: fe0d3683 ld a3,-32(s10) - c000f9f0: fe8d3703 ld a4,-24(s10) - c000f9f4: fd0d3583 ld a1,-48(s10) - c000f9f8: fd8d3603 ld a2,-40(s10) - c000f9fc: 68a1 lui a7,0x8 - c000f9fe: 8526 mv a0,s1 - c000fa00: 489020ef jal ra,c0012688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17768 + c000fad2: ff0d3783 ld a5,-16(s10) + c000fad6: ff8d3803 ld a6,-8(s10) + c000fada: fe0d3683 ld a3,-32(s10) + c000fade: fe8d3703 ld a4,-24(s10) + c000fae2: fd0d3583 ld a1,-48(s10) + c000fae6: fd8d3603 ld a2,-40(s10) + c000faea: 68a1 lui a7,0x8 + c000faec: 8526 mv a0,s1 + c000faee: 489020ef jal ra,c0012776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17776 JS_FreeValue(ctx, sp[-3]); - c000fa04: fd0d3583 ld a1,-48(s10) - c000fa08: fd8d3603 ld a2,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17767 + c000faf2: fd0d3583 ld a1,-48(s10) + c000faf6: fd8d3603 ld a2,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17775 ret = JS_SetPropertyValue(ctx, sp[-3], sp[-2], sp[-1], JS_PROP_THROW_STRICT); - c000fa0c: fd0d0a13 addi s4,s10,-48 - c000fa10: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17768 + c000fafa: fd0d0a13 addi s4,s10,-48 + c000fafe: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17776 JS_FreeValue(ctx, sp[-3]); - c000fa12: 8526 mv a0,s1 - c000fa14: 924f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17770 + c000fb00: 8526 mv a0,s1 + c000fb02: 924f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17778 if (unlikely(ret < 0)) - c000fa18: 8d52 mv s10,s4 - c000fa1a: 000ac463 bltz s5,c000fa22 - c000fa1e: a5bfb06f j c000b478 - c000fa22: bb9fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17780 + c000fb06: 8d52 mv s10,s4 + c000fb08: 000ac463 bltz s5,c000fb10 + c000fb0c: a5bfb06f j c000b566 + c000fb10: bb9fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17788 if (is_strict_mode(ctx)) { - c000fa26: 8526 mv a0,s1 - c000fa28: e72f40ef jal ra,c000409a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17779 + c000fb14: 8526 mv a0,s1 + c000fb16: d84f40ef jal ra,c000409a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17787 if (unlikely(JS_IsUndefined(sp[-3]))) { - c000fa2c: fd8d2703 lw a4,-40(s10) - c000fa30: 478d li a5,3 - c000fa32: 08f71563 bne a4,a5,c000fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17780 + c000fb1a: fd8d2703 lw a4,-40(s10) + c000fb1e: 478d li a5,3 + c000fb20: 08f71563 bne a4,a5,c000fbaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17788 if (is_strict_mode(ctx)) { - c000fa36: c905 beqz a0,c000fa66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17781 + c000fb24: c905 beqz a0,c000fb54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17789 JSAtom atom = JS_ValueToAtom(ctx, sp[-2]); - c000fa38: fe0d3583 ld a1,-32(s10) - c000fa3c: fe8d3603 ld a2,-24(s10) - c000fa40: 8526 mv a0,s1 - c000fa42: 3db110ef jal ra,c002161c - c000fa46: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17782 + c000fb26: fe0d3583 ld a1,-32(s10) + c000fb2a: fe8d3603 ld a2,-24(s10) + c000fb2e: 8526 mv a0,s1 + c000fb30: 4bd110ef jal ra,c00217ec + c000fb34: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17790 if (atom != JS_ATOM_NULL) { - c000fa4a: 00099463 bnez s3,c000fa52 - c000fa4e: b8dfb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17783 + c000fb38: 00099463 bnez s3,c000fb40 + c000fb3c: b8dfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17791 JS_ThrowReferenceErrorNotDefined(ctx, atom); - c000fa52: 85ce mv a1,s3 - c000fa54: 8526 mv a0,s1 - c000fa56: 6dd040ef jal ra,c0014932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17784 + c000fb40: 85ce mv a1,s3 + c000fb42: 8526 mv a0,s1 + c000fb44: 6dd040ef jal ra,c0014a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17792 JS_FreeAtom(ctx, atom); - c000fa5a: 85ce mv a1,s3 - c000fa5c: 8526 mv a0,s1 - c000fa5e: aaff70ef jal ra,c000750c - c000fa62: b79fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17788 + c000fb48: 85ce mv a1,s3 + c000fb4a: 8526 mv a0,s1 + c000fb4c: aaff70ef jal ra,c00075fa + c000fb50: b79fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17796 sp[-3] = JS_DupValue(ctx, ctx->global_obj); - c000fa66: 1684b503 ld a0,360(s1) - c000fa6a: 1704b583 ld a1,368(s1) - c000fa6e: c01f60ef jal ra,c000666e - c000fa72: fcad3823 sd a0,-48(s10) - c000fa76: fcbd3c23 sd a1,-40(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17778 + c000fb54: 1684b503 ld a0,360(s1) + c000fb58: 1704b583 ld a1,368(s1) + c000fb5c: c01f60ef jal ra,c000675c + c000fb60: fcad3823 sd a0,-48(s10) + c000fb64: fcbd3c23 sd a1,-40(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17786 flags = JS_PROP_THROW_STRICT; - c000fa7a: 68a1 lui a7,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17794 + c000fb68: 68a1 lui a7,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17802 ret = JS_SetPropertyValue(ctx, sp[-3], sp[-2], sp[-1], flags); - c000fa7c: ff0d3783 ld a5,-16(s10) - c000fa80: ff8d3803 ld a6,-8(s10) - c000fa84: fe0d3683 ld a3,-32(s10) - c000fa88: fe8d3703 ld a4,-24(s10) - c000fa8c: fd0d3583 ld a1,-48(s10) - c000fa90: fd8d3603 ld a2,-40(s10) - c000fa94: 8526 mv a0,s1 - c000fa96: fd0d0a13 addi s4,s10,-48 - c000fa9a: 3ef020ef jal ra,c0012688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17795 + c000fb6a: ff0d3783 ld a5,-16(s10) + c000fb6e: ff8d3803 ld a6,-8(s10) + c000fb72: fe0d3683 ld a3,-32(s10) + c000fb76: fe8d3703 ld a4,-24(s10) + c000fb7a: fd0d3583 ld a1,-48(s10) + c000fb7e: fd8d3603 ld a2,-40(s10) + c000fb82: 8526 mv a0,s1 + c000fb84: fd0d0a13 addi s4,s10,-48 + c000fb88: 3ef020ef jal ra,c0012776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17803 JS_FreeValue(ctx, sp[-3]); - c000fa9e: fd0d3583 ld a1,-48(s10) - c000faa2: 008a3603 ld a2,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17794 + c000fb8c: fd0d3583 ld a1,-48(s10) + c000fb90: 008a3603 ld a2,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17802 ret = JS_SetPropertyValue(ctx, sp[-3], sp[-2], sp[-1], flags); - c000faa6: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17795 + c000fb94: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17803 JS_FreeValue(ctx, sp[-3]); - c000faa8: 8526 mv a0,s1 - c000faaa: 88ef80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17797 + c000fb96: 8526 mv a0,s1 + c000fb98: 88ef80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17805 if (unlikely(ret < 0)) - c000faae: 8d52 mv s10,s4 - c000fab0: 000ac463 bltz s5,c000fab8 - c000fab4: 9c5fb06f j c000b478 - c000fab8: b23fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17778 + c000fb9c: 8d52 mv s10,s4 + c000fb9e: 000ac463 bltz s5,c000fba6 + c000fba2: 9c5fb06f j c000b566 + c000fba6: b23fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17786 flags = JS_PROP_THROW_STRICT; - c000fabc: 68a1 lui a7,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17791 + c000fbaa: 68a1 lui a7,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17799 if (is_strict_mode(ctx)) - c000fabe: dd5d beqz a0,c000fa7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17792 + c000fbac: dd5d beqz a0,c000fb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17800 flags |= JS_PROP_NO_ADD; - c000fac0: 68e1 lui a7,0x18 - c000fac2: bf6d j c000fa7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17806 + c000fbae: 68e1 lui a7,0x18 + c000fbb0: bf6d j c000fb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17814 if (JS_VALUE_GET_TAG(sp[-3]) != JS_TAG_OBJECT) { - c000fac4: fd8d2703 lw a4,-40(s10) - c000fac8: 57fd li a5,-1 - c000faca: 00f70763 beq a4,a5,c000fad8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17807 + c000fbb2: fd8d2703 lw a4,-40(s10) + c000fbb6: 57fd li a5,-1 + c000fbb8: 00f70763 beq a4,a5,c000fbc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17815 JS_ThrowTypeErrorNotAnObject(ctx); - c000face: 8526 mv a0,s1 - c000fad0: 6a9030ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17808 + c000fbbc: 8526 mv a0,s1 + c000fbbe: 6a9030ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17816 goto exception; - c000fad4: b07fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17810 + c000fbc2: b07fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17818 atom = JS_ValueToAtom(ctx, sp[-2]); - c000fad8: fe0d3583 ld a1,-32(s10) - c000fadc: fe8d3603 ld a2,-24(s10) - c000fae0: 8526 mv a0,s1 - c000fae2: fe0d0b93 addi s7,s10,-32 - c000fae6: 337110ef jal ra,c002161c - c000faea: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17811 + c000fbc6: fe0d3583 ld a1,-32(s10) + c000fbca: fe8d3603 ld a2,-24(s10) + c000fbce: 8526 mv a0,s1 + c000fbd0: fe0d0b93 addi s7,s10,-32 + c000fbd4: 419110ef jal ra,c00217ec + c000fbd8: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17819 if (unlikely(atom == JS_ATOM_NULL)) - c000faee: 000a9463 bnez s5,c000faf6 - c000faf2: ae9fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17813 + c000fbdc: 000a9463 bnez s5,c000fbe4 + c000fbe0: ae9fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17821 ret = JS_SetPropertyInternal(ctx, sp[-3], atom, sp[-1], sp[-4], - c000faf6: 6721 lui a4,0x8 - c000faf8: fd0d0b13 addi s6,s10,-48 - c000fafc: ff0d0793 addi a5,s10,-16 - c000fb00: e03a sd a4,0(sp) - c000fb02: 6398 ld a4,0(a5) - c000fb04: fc0d3803 ld a6,-64(s10) - c000fb08: 679c ld a5,8(a5) - c000fb0a: fc8d3883 ld a7,-56(s10) - c000fb0e: 008b3603 ld a2,8(s6) - c000fb12: 000b3583 ld a1,0(s6) - c000fb16: 86d6 mv a3,s5 - c000fb18: 8526 mv a0,s1 - c000fb1a: 5c4020ef jal ra,c00120de - c000fb1e: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17815 + c000fbe4: 6721 lui a4,0x8 + c000fbe6: fd0d0b13 addi s6,s10,-48 + c000fbea: ff0d0793 addi a5,s10,-16 + c000fbee: e03a sd a4,0(sp) + c000fbf0: 6398 ld a4,0(a5) + c000fbf2: fc0d3803 ld a6,-64(s10) + c000fbf6: 679c ld a5,8(a5) + c000fbf8: fc8d3883 ld a7,-56(s10) + c000fbfc: 008b3603 ld a2,8(s6) + c000fc00: 000b3583 ld a1,0(s6) + c000fc04: 86d6 mv a3,s5 + c000fc06: 8526 mv a0,s1 + c000fc08: 5c4020ef jal ra,c00121cc + c000fc0c: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17823 JS_FreeAtom(ctx, atom); - c000fb20: 85d6 mv a1,s5 - c000fb22: 8526 mv a0,s1 - c000fb24: 9e9f70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17816 + c000fc0e: 85d6 mv a1,s5 + c000fc10: 8526 mv a0,s1 + c000fc12: 9e9f70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17824 JS_FreeValue(ctx, sp[-4]); - c000fb28: fc0d3583 ld a1,-64(s10) - c000fb2c: fc8d3603 ld a2,-56(s10) - c000fb30: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17813 + c000fc16: fc0d3583 ld a1,-64(s10) + c000fc1a: fc8d3603 ld a2,-56(s10) + c000fc1e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17821 ret = JS_SetPropertyInternal(ctx, sp[-3], atom, sp[-1], sp[-4], - c000fb32: fc0d0d13 addi s10,s10,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17816 + c000fc20: fc0d0d13 addi s10,s10,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17824 JS_FreeValue(ctx, sp[-4]); - c000fb36: 802f80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17817 + c000fc24: 802f80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17825 JS_FreeValue(ctx, sp[-3]); - c000fb3a: 000b3583 ld a1,0(s6) - c000fb3e: 008b3603 ld a2,8(s6) - c000fb42: 8526 mv a0,s1 - c000fb44: ff5f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17818 + c000fc28: 000b3583 ld a1,0(s6) + c000fc2c: 008b3603 ld a2,8(s6) + c000fc30: 8526 mv a0,s1 + c000fc32: ff5f70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17826 JS_FreeValue(ctx, sp[-2]); - c000fb48: 000bb583 ld a1,0(s7) - c000fb4c: 008bb603 ld a2,8(s7) - c000fb50: 8526 mv a0,s1 - c000fb52: fe7f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17820 - if (ret < 0) - c000fb56: 000a4463 bltz s4,c000fb5e - c000fb5a: 91ffb06f j c000b478 - c000fb5e: a7dfb06f j c000b5da + c000fc36: 000bb583 ld a1,0(s7) + c000fc3a: 008bb603 ld a2,8(s7) + c000fc3e: 8526 mv a0,s1 + c000fc40: fe7f70ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17828 + if (ret < 0) + c000fc44: 000a4463 bltz s4,c000fc4c + c000fc48: 91ffb06f j c000b566 + c000fc4c: a7dfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17836 ret = JS_DefinePropertyValueValue(ctx, sp[-3], JS_DupValue(ctx, sp[-2]), sp[-1], - c000fb62: fe0d3503 ld a0,-32(s10) - c000fb66: fe8d3583 ld a1,-24(s10) - c000fb6a: fd0d0a13 addi s4,s10,-48 - c000fb6e: 1d41 addi s10,s10,-16 - c000fb70: afff60ef jal ra,c000666e - c000fb74: 767d lui a2,0xfffff - c000fb76: 7f060793 addi a5,a2,2032 # fffffffffffff7f0 <_ebss+0xffffffff3fefe6ca> - c000fb7a: 97a2 add a5,a5,s0 - c000fb7c: e388 sd a0,0(a5) - c000fb7e: 7f860793 addi a5,a2,2040 - c000fb82: 97a2 add a5,a5,s0 - c000fb84: e38c sd a1,0(a5) - c000fb86: 872e mv a4,a1 - c000fb88: 000d3783 ld a5,0(s10) - c000fb8c: 008d3803 ld a6,8(s10) - c000fb90: 000a3583 ld a1,0(s4) - c000fb94: 008a3603 ld a2,8(s4) - c000fb98: 6891 lui a7,0x4 - c000fb9a: 86aa mv a3,a0 - c000fb9c: 089d addi a7,a7,7 - c000fb9e: 8526 mv a0,s1 - c000fba0: 0dd190ef jal ra,c002947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17831 + c000fc50: fe0d3503 ld a0,-32(s10) + c000fc54: fe8d3583 ld a1,-24(s10) + c000fc58: fd0d0a13 addi s4,s10,-48 + c000fc5c: 1d41 addi s10,s10,-16 + c000fc5e: afff60ef jal ra,c000675c + c000fc62: 767d lui a2,0xfffff + c000fc64: 7f060793 addi a5,a2,2032 # fffffffffffff7f0 <_ebss+0xffffffff3fefe6ca> + c000fc68: 97a2 add a5,a5,s0 + c000fc6a: e388 sd a0,0(a5) + c000fc6c: 7f860793 addi a5,a2,2040 + c000fc70: 97a2 add a5,a5,s0 + c000fc72: e38c sd a1,0(a5) + c000fc74: 872e mv a4,a1 + c000fc76: 000d3783 ld a5,0(s10) + c000fc7a: 008d3803 ld a6,8(s10) + c000fc7e: 000a3583 ld a1,0(s4) + c000fc82: 008a3603 ld a2,8(s4) + c000fc86: 6891 lui a7,0x4 + c000fc88: 86aa mv a3,a0 + c000fc8a: 089d addi a7,a7,7 + c000fc8c: 8526 mv a0,s1 + c000fc8e: 1bf190ef jal ra,c002964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17839 if (unlikely(ret < 0)) - c000fba4: 00054463 bltz a0,c000fbac - c000fba8: 8d1fb06f j c000b478 - c000fbac: a2ffb06f j c000b5da + c000fc92: 00054463 bltz a0,c000fc9a + c000fc96: 8d1fb06f j c000b566 + c000fc9a: a2ffb06f j c000b6c8 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15484 if (JS_VALUE_GET_TAG(sp[-2]) != JS_TAG_INT) { - c000fbb0: fe8d2783 lw a5,-24(s10) - c000fbb4: cb91 beqz a5,c000fbc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15477 + c000fc9e: fe8d2783 lw a5,-24(s10) + c000fca2: cb91 beqz a5,c000fcb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15485 JS_ThrowInternalError(ctx, "invalid index for append"); - c000fbb6: 8526 mv a0,s1 - c000fbb8: 0004d597 auipc a1,0x4d - c000fbbc: 6c058593 addi a1,a1,1728 # c005d278 - c000fbc0: 5c5040ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15478 + c000fca4: 8526 mv a0,s1 + c000fca6: 0004e597 auipc a1,0x4e + c000fcaa: 80258593 addi a1,a1,-2046 # c005d4a8 + c000fcae: 5c5040ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15486 return -1; - c000fbc4: a17fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15481 + c000fcb2: a17fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15489 pos = JS_VALUE_GET_INT(sp[-2]); - c000fbc8: ff0d3703 ld a4,-16(s10) - c000fbcc: fe0d2b83 lw s7,-32(s10) + c000fcb6: ff0d3703 ld a4,-16(s10) + c000fcba: fe0d2b83 lw s7,-32(s10) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c000fbd0: 4801 li a6,0 - c000fbd2: eee43823 sd a4,-272(s0) - c000fbd6: ff8d3783 ld a5,-8(s10) - c000fbda: 0cc00693 li a3,204 - c000fbde: 85ba mv a1,a4 - c000fbe0: 863e mv a2,a5 - c000fbe2: 8526 mv a0,s1 - c000fbe4: eef43c23 sd a5,-264(s0) - c000fbe8: 45b010ef jal ra,c0011842 - c000fbec: e0a43823 sd a0,-496(s0) - c000fbf0: e0b43c23 sd a1,-488(s0) - c000fbf4: dea43023 sd a0,-544(s0) - c000fbf8: deb43423 sd a1,-536(s0) + c000fcbe: 4801 li a6,0 + c000fcc0: eee43823 sd a4,-272(s0) + c000fcc4: ff8d3783 ld a5,-8(s10) + c000fcc8: 0cc00693 li a3,204 + c000fccc: 85ba mv a1,a4 + c000fcce: 863e mv a2,a5 + c000fcd0: 8526 mv a0,s1 + c000fcd2: eef43c23 sd a5,-264(s0) + c000fcd6: 45b010ef jal ra,c0011930 + c000fcda: e0a43823 sd a0,-496(s0) + c000fcde: e0b43c23 sd a1,-488(s0) + c000fce2: dea43023 sd a0,-544(s0) + c000fce6: deb43423 sd a1,-536(s0) js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15498 if (JS_IsException(iterator)) - c000fbfc: 0005879b sext.w a5,a1 - c000fc00: 4c99 li s9,6 + c000fcea: 0005879b sext.w a5,a1 + c000fcee: 4c99 li s9,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000fc02: 8a2a mv s4,a0 - c000fc04: 862e mv a2,a1 + c000fcf0: 8a2a mv s4,a0 + c000fcf2: 862e mv a2,a1 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15490 - c000fc06: 01979463 bne a5,s9,c000fc0e - c000fc0a: 9d1fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15498 + c000fcf4: 01979463 bne a5,s9,c000fcfc + c000fcf8: 9d1fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15500 is_array_iterator = JS_IsCFunction(ctx, iterator, - c000fc0e: 77fd lui a5,0xfffff - c000fc10: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000fc14: 4705 li a4,1 - c000fc16: 00019697 auipc a3,0x19 - c000fc1a: d6268693 addi a3,a3,-670 # c0028978 - c000fc1e: 85aa mv a1,a0 - c000fc20: 97a2 add a5,a5,s0 - c000fc22: 8526 mv a0,s1 - c000fc24: e390 sd a2,0(a5) - c000fc26: b8dfa0ef jal ra,c000a7b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15495 + c000fcfc: 77fd lui a5,0xfffff + c000fcfe: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000fd02: 4705 li a4,1 + c000fd04: 00019697 auipc a3,0x19 + c000fd08: e4468693 addi a3,a3,-444 # c0028b48 + c000fd0c: 85aa mv a1,a0 + c000fd0e: 97a2 add a5,a5,s0 + c000fd10: 8526 mv a0,s1 + c000fd12: e390 sd a2,0(a5) + c000fd14: b8dfa0ef jal ra,c000a8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15503 JS_FreeValue(ctx, iterator); - c000fc2a: 77fd lui a5,0xfffff - c000fc2c: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000fc30: 97a2 add a5,a5,s0 - c000fc32: 6390 ld a2,0(a5) - c000fc34: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15492 + c000fd18: 77fd lui a5,0xfffff + c000fd1a: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000fd1e: 97a2 add a5,a5,s0 + c000fd20: 6390 ld a2,0(a5) + c000fd22: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15500 is_array_iterator = JS_IsCFunction(ctx, iterator, - c000fc36: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15495 + c000fd24: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15503 JS_FreeValue(ctx, iterator); - c000fc38: 8526 mv a0,s1 - c000fc3a: efff70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15497 + c000fd26: 8526 mv a0,s1 + c000fd28: efff70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15505 enumobj = JS_GetIterator(ctx, sp[-1], FALSE); - c000fc3e: ff0d3583 ld a1,-16(s10) - c000fc42: ff8d3603 ld a2,-8(s10) - c000fc46: 4681 li a3,0 - c000fc48: 8526 mv a0,s1 - c000fc4a: 5f52a0ef jal ra,c003aa3e - c000fc4e: e8a43023 sd a0,-384(s0) - c000fc52: e8b43423 sd a1,-376(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15498 + c000fd2c: ff0d3583 ld a1,-16(s10) + c000fd30: ff8d3603 ld a2,-8(s10) + c000fd34: 4681 li a3,0 + c000fd36: 8526 mv a0,s1 + c000fd38: 6d72a0ef jal ra,c003ac0e + c000fd3c: e8a43023 sd a0,-384(s0) + c000fd40: e8b43423 sd a1,-376(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15506 if (JS_IsException(enumobj)) - c000fc56: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15497 + c000fd44: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15505 enumobj = JS_GetIterator(ctx, sp[-1], FALSE); - c000fc5a: ff0d0b13 addi s6,s10,-16 - c000fc5e: 872a mv a4,a0 - c000fc60: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15498 + c000fd48: ff0d0b13 addi s6,s10,-16 + c000fd4c: 872a mv a4,a0 + c000fd4e: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15506 if (JS_IsException(enumobj)) - c000fc62: 01979463 bne a5,s9,c000fc6a - c000fc66: 975fb06f j c000b5da + c000fd50: 01979463 bne a5,s9,c000fd58 + c000fd54: 975fb06f j c000b6c8 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000fc6a: 87ae mv a5,a1 - c000fc6c: eea43823 sd a0,-272(s0) - c000fc70: eeb43c23 sd a1,-264(s0) - c000fc74: 4801 li a6,0 - c000fc76: 85aa mv a1,a0 - c000fc78: 06b00693 li a3,107 - c000fc7c: 8652 mv a2,s4 - c000fc7e: 8526 mv a0,s1 - c000fc80: 3c3010ef jal ra,c0011842 - c000fc84: e0a43023 sd a0,-512(s0) - c000fc88: e0b43423 sd a1,-504(s0) - c000fc8c: e8a43823 sd a0,-368(s0) - c000fc90: e8b43c23 sd a1,-360(s0) + c000fd58: 87ae mv a5,a1 + c000fd5a: eea43823 sd a0,-272(s0) + c000fd5e: eeb43c23 sd a1,-264(s0) + c000fd62: 4801 li a6,0 + c000fd64: 85aa mv a1,a0 + c000fd66: 06b00693 li a3,107 + c000fd6a: 8652 mv a2,s4 + c000fd6c: 8526 mv a0,s1 + c000fd6e: 3c3010ef jal ra,c0011930 + c000fd72: e0a43023 sd a0,-512(s0) + c000fd76: e0b43423 sd a1,-504(s0) + c000fd7a: e8a43823 sd a0,-368(s0) + c000fd7e: e8b43c23 sd a1,-360(s0) js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15501 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15509 if (JS_IsException(method)) { - c000fc94: 0005879b sext.w a5,a1 + c000fd82: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c000fc98: 8aae mv s5,a1 + c000fd86: 8aae mv s5,a1 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15501 - c000fc9a: 01979b63 bne a5,s9,c000fcb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15509 + c000fd88: 01979b63 bne a5,s9,c000fd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15510 JS_FreeValue(ctx, enumobj); - c000fc9e: e8043583 ld a1,-384(s0) - c000fca2: e8843603 ld a2,-376(s0) - c000fca6: 8526 mv a0,s1 - c000fca8: e91f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15503 + c000fd8c: e8043583 ld a1,-384(s0) + c000fd90: e8843603 ld a2,-376(s0) + c000fd94: 8526 mv a0,s1 + c000fd96: e91f70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15511 return -1; - c000fcac: 92ffb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15481 + c000fd9a: 92ffb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15489 pos = JS_VALUE_GET_INT(sp[-2]); - c000fcb0: 2b81 sext.w s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15505 + c000fd9e: 2b81 sext.w s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15513 if (is_array_iterator - c000fcb2: 060c0363 beqz s8,c000fd18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15506 + c000fda0: 060c0363 beqz s8,c000fe06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15514 && JS_IsCFunction(ctx, method, (JSCFunction *)js_array_iterator_next, 0) - c000fcb6: 85aa mv a1,a0 - c000fcb8: 4701 li a4,0 - c000fcba: 00022697 auipc a3,0x22 - c000fcbe: cfe68693 addi a3,a3,-770 # c00319b8 - c000fcc2: 8656 mv a2,s5 - c000fcc4: 8526 mv a0,s1 - c000fcc6: aedfa0ef jal ra,c000a7b2 - c000fcca: c539 beqz a0,c000fd18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15507 + c000fda4: 85aa mv a1,a0 + c000fda6: 4701 li a4,0 + c000fda8: 00022697 auipc a3,0x22 + c000fdac: de068693 addi a3,a3,-544 # c0031b88 + c000fdb0: 8656 mv a2,s5 + c000fdb2: 8526 mv a0,s1 + c000fdb4: aedfa0ef jal ra,c000a8a0 + c000fdb8: c539 beqz a0,c000fe06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15515 && js_get_fast_array(ctx, sp[-1], &arrp, &count32)) { - c000fccc: f8040793 addi a5,s0,-128 - c000fcd0: 73098693 addi a3,s3,1840 - c000fcd4: 96be add a3,a3,a5 - c000fcd6: 77fd lui a5,0xfffff - c000fcd8: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> - c000fcdc: 97a2 add a5,a5,s0 - c000fcde: 6390 ld a2,0(a5) - c000fce0: 000b3503 ld a0,0(s6) - c000fce4: 008b3583 ld a1,8(s6) - c000fce8: ecaf60ef jal ra,c00063b2 - c000fcec: c515 beqz a0,c000fd18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15509 + c000fdba: f8040793 addi a5,s0,-128 + c000fdbe: 73098693 addi a3,s3,1840 + c000fdc2: 96be add a3,a3,a5 + c000fdc4: 77fd lui a5,0xfffff + c000fdc6: 5f078793 addi a5,a5,1520 # fffffffffffff5f0 <_ebss+0xffffffff3fefe4ca> + c000fdca: 97a2 add a5,a5,s0 + c000fdcc: 6390 ld a2,0(a5) + c000fdce: 000b3503 ld a0,0(s6) + c000fdd2: 008b3583 ld a1,8(s6) + c000fdd6: ecaf60ef jal ra,c00064a0 + c000fdda: c515 beqz a0,c000fe06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15517 if (js_get_length32(ctx, &len, sp[-1])) - c000fcee: 000b3603 ld a2,0(s6) - c000fcf2: 008b3683 ld a3,8(s6) - c000fcf6: ef040593 addi a1,s0,-272 - c000fcfa: 8526 mv a0,s1 - c000fcfc: 61e0c0ef jal ra,c001c31a - c000fd00: 12051463 bnez a0,c000fe28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15513 + c000fddc: 000b3603 ld a2,0(s6) + c000fde0: 008b3683 ld a3,8(s6) + c000fde4: ef040593 addi a1,s0,-272 + c000fde8: 8526 mv a0,s1 + c000fdea: 7000c0ef jal ra,c001c4ea + c000fdee: 12051463 bnez a0,c000ff16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15521 if (len != count32) - c000fd04: f8040793 addi a5,s0,-128 - c000fd08: 01378cb3 add s9,a5,s3 - c000fd0c: ef042703 lw a4,-272(s0) - c000fd10: 730ca783 lw a5,1840(s9) - c000fd14: 10f70663 beq a4,a5,c000fe20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15526 + c000fdf2: f8040793 addi a5,s0,-128 + c000fdf6: 01378cb3 add s9,a5,s3 + c000fdfa: ef042703 lw a4,-272(s0) + c000fdfe: 730ca783 lw a5,1840(s9) + c000fe02: 10f70663 beq a4,a5,c000ff0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15534 if (JS_IsException(value)) - c000fd18: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15525 + c000fe06: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15533 value = JS_IteratorNext(ctx, enumobj, method, 0, NULL, &done); - c000fd1a: e9043683 ld a3,-368(s0) - c000fd1e: e8043583 ld a1,-384(s0) - c000fd22: ef040793 addi a5,s0,-272 - c000fd26: 8756 mv a4,s5 - c000fd28: 8652 mv a2,s4 - c000fd2a: 8526 mv a0,s1 - c000fd2c: e9543c23 sd s5,-360(s0) - c000fd30: e9443423 sd s4,-376(s0) - c000fd34: 3ff2a0ef jal ra,c003a932 - c000fd38: eca43823 sd a0,-304(s0) - c000fd3c: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15526 + c000fe08: e9043683 ld a3,-368(s0) + c000fe0c: e8043583 ld a1,-384(s0) + c000fe10: ef040793 addi a5,s0,-272 + c000fe14: 8756 mv a4,s5 + c000fe16: 8652 mv a2,s4 + c000fe18: 8526 mv a0,s1 + c000fe1a: e9543c23 sd s5,-360(s0) + c000fe1e: e9443423 sd s4,-376(s0) + c000fe22: 4e12a0ef jal ra,c003ab02 + c000fe26: eca43823 sd a0,-304(s0) + c000fe2a: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15534 if (JS_IsException(value)) - c000fd40: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15525 + c000fe2e: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15533 value = JS_IteratorNext(ctx, enumobj, method, 0, NULL, &done); - c000fd44: 872a mv a4,a0 - c000fd46: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15526 + c000fe32: 872a mv a4,a0 + c000fe34: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15534 if (JS_IsException(value)) - c000fd48: 0f868063 beq a3,s8,c000fe28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15528 + c000fe36: 0f868063 beq a3,s8,c000ff16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15536 if (done) { - c000fd4c: ef042683 lw a3,-272(s0) - c000fd50: eaf1 bnez a3,c000fe24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15532 + c000fe3a: ef042683 lw a3,-272(s0) + c000fe3e: eaf1 bnez a3,c000ff12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15540 if (JS_DefinePropertyValueUint32(ctx, sp[-3], pos++, value, JS_PROP_C_W_E) < 0) - c000fd52: fd0d3583 ld a1,-48(s10) - c000fd56: fd8d3603 ld a2,-40(s10) - c000fd5a: 481d li a6,7 - c000fd5c: 86de mv a3,s7 - c000fd5e: 8526 mv a0,s1 - c000fd60: 001b8c9b addiw s9,s7,1 - c000fd64: 171190ef jal ra,c00296d4 - c000fd68: 0c054063 bltz a0,c000fe28 - c000fd6c: 8be6 mv s7,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15523 + c000fe40: fd0d3583 ld a1,-48(s10) + c000fe44: fd8d3603 ld a2,-40(s10) + c000fe48: 481d li a6,7 + c000fe4a: 86de mv a3,s7 + c000fe4c: 8526 mv a0,s1 + c000fe4e: 001b8c9b addiw s9,s7,1 + c000fe52: 253190ef jal ra,c00298a4 + c000fe56: 0c054063 bltz a0,c000ff16 + c000fe5a: 8be6 mv s7,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15531 for (;;) { - c000fd6e: b775 j c000fd1a - c000fd70: 77fd lui a5,0xfffff - c000fd72: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000fd76: 97a2 add a5,a5,s0 - c000fd78: e394 sd a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15517 + c000fe5c: b775 j c000fe08 + c000fe5e: 77fd lui a5,0xfffff + c000fe60: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000fe64: 97a2 add a5,a5,s0 + c000fe66: e394 sd a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15525 if (JS_DefinePropertyValueUint32(ctx, sp[-3], pos++, - c000fd7a: 740cb783 ld a5,1856(s9) - c000fd7e: 020c1693 slli a3,s8,0x20 - c000fd82: 01c6d713 srli a4,a3,0x1c - c000fd86: 97ba add a5,a5,a4 - c000fd88: 6388 ld a0,0(a5) - c000fd8a: 678c ld a1,8(a5) - c000fd8c: 8e3f60ef jal ra,c000666e - c000fd90: 76fd lui a3,0xfffff - c000fd92: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c000fd96: 96a2 add a3,a3,s0 - c000fd98: 87ae mv a5,a1 - c000fd9a: e2b43423 sd a1,-472(s0) - c000fd9e: 6294 ld a3,0(a3) - c000fda0: fd0d3583 ld a1,-48(s10) - c000fda4: fd8d3603 ld a2,-40(s10) - c000fda8: 872a mv a4,a0 - c000fdaa: e2a43023 sd a0,-480(s0) - c000fdae: 481d li a6,7 - c000fdb0: 8526 mv a0,s1 - c000fdb2: 123190ef jal ra,c00296d4 - c000fdb6: 06054963 bltz a0,c000fe28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15516 + c000fe68: 740cb783 ld a5,1856(s9) + c000fe6c: 020c1693 slli a3,s8,0x20 + c000fe70: 01c6d713 srli a4,a3,0x1c + c000fe74: 97ba add a5,a5,a4 + c000fe76: 6388 ld a0,0(a5) + c000fe78: 678c ld a1,8(a5) + c000fe7a: 8e3f60ef jal ra,c000675c + c000fe7e: 76fd lui a3,0xfffff + c000fe80: 63068693 addi a3,a3,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c000fe84: 96a2 add a3,a3,s0 + c000fe86: 87ae mv a5,a1 + c000fe88: e2b43423 sd a1,-472(s0) + c000fe8c: 6294 ld a3,0(a3) + c000fe8e: fd0d3583 ld a1,-48(s10) + c000fe92: fd8d3603 ld a2,-40(s10) + c000fe96: 872a mv a4,a0 + c000fe98: e2a43023 sd a0,-480(s0) + c000fe9c: 481d li a6,7 + c000fe9e: 8526 mv a0,s1 + c000fea0: 205190ef jal ra,c00298a4 + c000fea4: 06054963 bltz a0,c000ff16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15524 for (i = 0; i < count32; i++) { - c000fdba: 2c05 addiw s8,s8,1 - c000fdbc: 730ca783 lw a5,1840(s9) - c000fdc0: 018b86bb addw a3,s7,s8 - c000fdc4: fafc66e3 bltu s8,a5,c000fd70 + c000fea8: 2c05 addiw s8,s8,1 + c000feaa: 730ca783 lw a5,1840(s9) + c000feae: 018b86bb addw a3,s7,s8 + c000feb2: fafc66e3 bltu s8,a5,c000fe5e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c000fdc8: de043823 sd zero,-528(s0) - c000fdcc: ded42823 sw a3,-528(s0) - c000fdd0: df043783 ld a5,-528(s0) - c000fdd4: ee043c23 sd zero,-264(s0) + c000feb6: de043823 sd zero,-528(s0) + c000feba: ded42823 sw a3,-528(s0) + c000febe: df043783 ld a5,-528(s0) + c000fec2: ee043c23 sd zero,-264(s0) js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15546 JS_FreeValue(ctx, enumobj); - c000fdd8: 8652 mv a2,s4 - c000fdda: eef43823 sd a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15537 + c000fec6: 8652 mv a2,s4 + c000fec8: eef43823 sd a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15545 sp[-2] = JS_NewInt32(ctx, pos); - c000fdde: fefd3023 sd a5,-32(s10) - c000fde2: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15538 + c000fecc: fefd3023 sd a5,-32(s10) + c000fed0: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15546 JS_FreeValue(ctx, enumobj); - c000fde6: 8526 mv a0,s1 + c000fed4: 8526 mv a0,s1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000fde8: de043c23 sd zero,-520(s0) + c000fed6: de043c23 sd zero,-520(s0) js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15537 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15545 sp[-2] = JS_NewInt32(ctx, pos); - c000fdec: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15538 + c000feda: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15546 JS_FreeValue(ctx, enumobj); - c000fdf0: e8043583 ld a1,-384(s0) - c000fdf4: e9443423 sd s4,-376(s0) + c000fede: e8043583 ld a1,-384(s0) + c000fee2: e9443423 sd s4,-376(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17850 BREAK; - c000fdf8: 8d5a mv s10,s6 + c000fee6: 8d5a mv s10,s6 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15546 JS_FreeValue(ctx, enumobj); - c000fdfa: d3ff70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15539 + c000fee8: d3ff70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15547 JS_FreeValue(ctx, method); - c000fdfe: e9043583 ld a1,-368(s0) - c000fe02: 8656 mv a2,s5 - c000fe04: 8526 mv a0,s1 - c000fe06: e9543c23 sd s5,-360(s0) - c000fe0a: d2ff70ef jal ra,c0007b38 + c000feec: e9043583 ld a1,-368(s0) + c000fef0: 8656 mv a2,s5 + c000fef2: 8526 mv a0,s1 + c000fef4: e9543c23 sd s5,-360(s0) + c000fef8: d2ff70ef jal ra,c0007c26 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17848 JS_FreeValue(ctx, *--sp); - c000fe0e: 000b3583 ld a1,0(s6) - c000fe12: 008b3603 ld a2,8(s6) - c000fe16: 8526 mv a0,s1 - c000fe18: d21f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17842 + c000fefc: 000b3583 ld a1,0(s6) + c000ff00: 008b3603 ld a2,8(s6) + c000ff04: 8526 mv a0,s1 + c000ff06: d21f70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17850 BREAK; - c000fe1c: e5cfb06f j c000b478 + c000ff0a: e5cfb06f j c000b566 js_append_enumerate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15524 for (i = 0; i < count32; i++) { - c000fe20: 4c01 li s8,0 - c000fe22: bf69 j c000fdbc - c000fe24: 86de mv a3,s7 - c000fe26: b74d j c000fdc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15543 + c000ff0e: 4c01 li s8,0 + c000ff10: bf69 j c000feaa + c000ff12: 86de mv a3,s7 + c000ff14: b74d j c000feb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15551 JS_IteratorClose(ctx, enumobj, TRUE); - c000fe28: e8043583 ld a1,-384(s0) - c000fe2c: 4685 li a3,1 - c000fe2e: 8652 mv a2,s4 - c000fe30: 8526 mv a0,s1 - c000fe32: e9443423 sd s4,-376(s0) - c000fe36: 353030ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15544 + c000ff16: e8043583 ld a1,-384(s0) + c000ff1a: 4685 li a3,1 + c000ff1c: 8652 mv a2,s4 + c000ff1e: 8526 mv a0,s1 + c000ff20: e9443423 sd s4,-376(s0) + c000ff24: 353030ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15552 JS_FreeValue(ctx, enumobj); - c000fe3a: e8043583 ld a1,-384(s0) - c000fe3e: e8843603 ld a2,-376(s0) - c000fe42: 8526 mv a0,s1 - c000fe44: cf5f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15545 + c000ff28: e8043583 ld a1,-384(s0) + c000ff2c: e8843603 ld a2,-376(s0) + c000ff30: 8526 mv a0,s1 + c000ff32: cf5f70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15553 JS_FreeValue(ctx, method); - c000fe48: e9043583 ld a1,-368(s0) - c000fe4c: 8656 mv a2,s5 - c000fe4e: 8526 mv a0,s1 - c000fe50: e9543c23 sd s5,-360(s0) - c000fe54: ce5f70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15546 + c000ff36: e9043583 ld a1,-368(s0) + c000ff3a: 8656 mv a2,s5 + c000ff3c: 8526 mv a0,s1 + c000ff3e: e9543c23 sd s5,-360(s0) + c000ff42: ce5f70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15554 return -1; - c000fe58: f82fb06f j c000b5da + c000ff46: f82fb06f j c000b6c8 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17860 mask = *pc++; - c000fe5c: 001bc783 lbu a5,1(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17853 + c000ff4a: 001bc783 lbu a5,1(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17861 if (JS_CopyDataProperties(ctx, sp[-1 - (mask & 3)], - c000fe60: 4881 li a7,0 - c000fe62: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17852 + c000ff4e: 4881 li a7,0 + c000ff50: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17860 mask = *pc++; - c000fe64: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17855 + c000ff52: 0007871b sext.w a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17863 sp[-1 - ((mask >> 5) & 7)], 0)) - c000fe68: 4057569b sraiw a3,a4,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17853 + c000ff56: 4057569b sraiw a3,a4,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17861 if (JS_CopyDataProperties(ctx, sp[-1 - (mask & 3)], - c000fe6c: 0037f613 andi a2,a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17854 + c000ff5a: 0037f613 andi a2,a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17862 sp[-1 - ((mask >> 2) & 7)], - c000fe70: 4027571b sraiw a4,a4,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17855 + c000ff5e: 4027571b sraiw a4,a4,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17863 sp[-1 - ((mask >> 5) & 7)], 0)) - c000fe74: fff6c693 not a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17854 + c000ff62: fff6c693 not a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17862 sp[-1 - ((mask >> 2) & 7)], - c000fe78: 8b1d andi a4,a4,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17853 + c000ff66: 8b1d andi a4,a4,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17861 if (JS_CopyDataProperties(ctx, sp[-1 - (mask & 3)], - c000fe7a: fff64613 not a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17855 + c000ff68: fff64613 not a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17863 sp[-1 - ((mask >> 5) & 7)], 0)) - c000fe7e: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17854 + c000ff6c: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17862 sp[-1 - ((mask >> 2) & 7)], - c000fe80: fff74713 not a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17853 + c000ff6e: fff74713 not a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17861 if (JS_CopyDataProperties(ctx, sp[-1 - (mask & 3)], - c000fe84: 2601 sext.w a2,a2 - c000fe86: 0692 slli a3,a3,0x4 - c000fe88: 0712 slli a4,a4,0x4 - c000fe8a: 0612 slli a2,a2,0x4 - c000fe8c: 96ea add a3,a3,s10 - c000fe8e: 976a add a4,a4,s10 - c000fe90: 966a add a2,a2,s10 - c000fe92: 629c ld a5,0(a3) - c000fe94: 0086b803 ld a6,8(a3) - c000fe98: 620c ld a1,0(a2) - c000fe9a: 6314 ld a3,0(a4) - c000fe9c: 6610 ld a2,8(a2) - c000fe9e: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17852 + c000ff72: 2601 sext.w a2,a2 + c000ff74: 0692 slli a3,a3,0x4 + c000ff76: 0712 slli a4,a4,0x4 + c000ff78: 0612 slli a2,a2,0x4 + c000ff7a: 96ea add a3,a3,s10 + c000ff7c: 976a add a4,a4,s10 + c000ff7e: 966a add a2,a2,s10 + c000ff80: 629c ld a5,0(a3) + c000ff82: 0086b803 ld a6,8(a3) + c000ff86: 620c ld a1,0(a2) + c000ff88: 6314 ld a3,0(a4) + c000ff8a: 6610 ld a2,8(a2) + c000ff8c: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17860 mask = *pc++; - c000fea0: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17853 + c000ff8e: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17861 if (JS_CopyDataProperties(ctx, sp[-1 - (mask & 3)], - c000fea4: 196250ef jal ra,c003503a - c000fea8: e119 bnez a0,c000feae - c000feaa: dcefb06f j c000b478 - c000feae: f2cfb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17863 + c000ff92: 278250ef jal ra,c003520a + c000ff96: e119 bnez a0,c000ff9c + c000ff98: dcefb06f j c000b566 + c000ff9c: f2cfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17871 op1 = sp[-2]; - c000feb2: fe0d3783 ld a5,-32(s10) - c000feb6: e8f43823 sd a5,-368(s0) - c000feba: fe8d3783 ld a5,-24(s10) - c000febe: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17864 + c000ffa0: fe0d3783 ld a5,-32(s10) + c000ffa4: e8f43823 sd a5,-368(s0) + c000ffa8: fe8d3783 ld a5,-24(s10) + c000ffac: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17872 op2 = sp[-1]; - c000fec2: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17863 + c000ffb0: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17871 op1 = sp[-2]; - c000fec6: fe8d3703 ld a4,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17864 + c000ffb4: fe8d3703 ld a4,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17872 op2 = sp[-1]; - c000feca: ecf43823 sd a5,-304(s0) - c000fece: ff8d3783 ld a5,-8(s10) - c000fed2: ecf43c23 sd a5,-296(s0) - c000fed6: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17865 + c000ffb8: ecf43823 sd a5,-304(s0) + c000ffbc: ff8d3783 ld a5,-8(s10) + c000ffc0: ecf43c23 sd a5,-296(s0) + c000ffc4: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17873 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c000feda: 00f766b3 or a3,a4,a5 - c000fede: 2681 sext.w a3,a3 - c000fee0: ee9d bnez a3,c000ff1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17867 + c000ffc8: 00f766b3 or a3,a4,a5 + c000ffcc: 2681 sext.w a3,a3 + c000ffce: ee9d bnez a3,c001000c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17875 r = (int64_t)JS_VALUE_GET_INT(op1) + JS_VALUE_GET_INT(op2); - c000fee2: e9042783 lw a5,-368(s0) - c000fee6: ed042683 lw a3,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17868 + c000ffd0: e9042783 lw a5,-368(s0) + c000ffd4: ed042683 lw a3,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17876 if (unlikely((int)r != r)) - c000feea: 00d7863b addw a2,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17867 + c000ffd8: 00d7863b addw a2,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17875 r = (int64_t)JS_VALUE_GET_INT(op1) + JS_VALUE_GET_INT(op2); - c000feee: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17868 + c000ffdc: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17876 if (unlikely((int)r != r)) - c000fef0: 04f61b63 bne a2,a5,c000ff46 + c000ffde: 04f61b63 bne a2,a5,c0010034 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000fef4: 90043023 sd zero,-1792(s0) - c000fef8: 90c42023 sw a2,-1792(s0) - c000fefc: 90043783 ld a5,-1792(s0) - c000ff00: ee043c23 sd zero,-264(s0) - c000ff04: 90043423 sd zero,-1784(s0) - c000ff08: eef43823 sd a5,-272(s0) + c000ffe2: 90043023 sd zero,-1792(s0) + c000ffe6: 90c42023 sw a2,-1792(s0) + c000ffea: 90043783 ld a5,-1792(s0) + c000ffee: ee043c23 sd zero,-264(s0) + c000fff2: 90043423 sd zero,-1784(s0) + c000fff6: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17878 sp[-2] = JS_NewInt32(ctx, r); - c000ff0c: fefd3023 sd a5,-32(s10) - c000ff10: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17871 + c000fffa: fefd3023 sd a5,-32(s10) + c000fffe: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17879 sp--; - c000ff14: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17870 + c0010002: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17878 sp[-2] = JS_NewInt32(ctx, r); - c000ff16: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17871 + c0010004: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17879 sp--; - c000ff1a: d5efb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17872 + c0010008: d5efb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17880 } else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) { - c000ff1e: 2701 sext.w a4,a4 - c000ff20: 469d li a3,7 - c000ff22: 02d71263 bne a4,a3,c000ff46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17872 (discriminator 1) - c000ff26: 2781 sext.w a5,a5 - c000ff28: 00e79f63 bne a5,a4,c000ff46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17873 + c001000c: 2701 sext.w a4,a4 + c001000e: 469d li a3,7 + c0010010: 02d71263 bne a4,a3,c0010034 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17880 (discriminator 1) + c0010014: 2781 sext.w a5,a5 + c0010016: 00e79f63 bne a5,a4,c0010034 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17881 sp[-2] = __JS_NewFloat64(ctx, JS_VALUE_GET_FLOAT64(op1) + - c000ff2c: e9043787 fld fa5,-368(s0) - c000ff30: ed043707 fld fa4,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17875 + c001001a: e9043787 fld fa5,-368(s0) + c001001e: ed043707 fld fa4,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17883 sp--; - c000ff34: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17873 + c0010022: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17881 sp[-2] = __JS_NewFloat64(ctx, JS_VALUE_GET_FLOAT64(op1) + - c000ff36: fefd3c23 sd a5,-8(s10) - c000ff3a: 02e7f7d3 fadd.d fa5,fa5,fa4 - c000ff3e: fefd3827 fsd fa5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17875 + c0010024: fefd3c23 sd a5,-8(s10) + c0010028: 02e7f7d3 fadd.d fa5,fa5,fa4 + c001002c: fefd3827 fsd fa5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17883 sp--; - c000ff42: d36fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17878 + c0010030: d36fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17886 if (js_add_slow(ctx, sp)) - c000ff46: 85ea mv a1,s10 - c000ff48: 8526 mv a0,s1 - c000ff4a: 1f10e0ef jal ra,c001e93a - c000ff4e: c119 beqz a0,c000ff54 - c000ff50: e8afb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17880 + c0010034: 85ea mv a1,s10 + c0010036: 8526 mv a0,s1 + c0010038: 2d30e0ef jal ra,c001eb0a + c001003c: c119 beqz a0,c0010042 + c001003e: e8afb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17888 sp--; - c000ff54: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17883 - BREAK; - c000ff56: d22fb06f j c000b478 + c0010042: 1d41 addi s10,s10,-16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17891 + BREAK; + c0010044: d22fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17899 pv = &var_buf[idx]; - c000ff5a: 77fd lui a5,0xfffff - c000ff5c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c000ff60: 001bca83 lbu s5,1(s7) - c000ff64: 97a2 add a5,a5,s0 - c000ff66: 639c ld a5,0(a5) - c000ff68: 0a92 slli s5,s5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17889 + c0010048: 77fd lui a5,0xfffff + c001004a: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c001004e: 001bca83 lbu s5,1(s7) + c0010052: 97a2 add a5,a5,s0 + c0010054: 639c ld a5,0(a5) + c0010056: 0a92 slli s5,s5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17897 pc += 1; - c000ff6a: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17891 + c0010058: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17899 pv = &var_buf[idx]; - c000ff6e: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17892 + c001005c: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17900 if (likely(JS_VALUE_IS_BOTH_INT(*pv, sp[-1]))) { - c000ff70: 008aa703 lw a4,8(s5) - c000ff74: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c001005e: 008aa703 lw a4,8(s5) + c0010062: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c000ff78: ff0d0a13 addi s4,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17892 + c0010066: ff0d0a13 addi s4,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17900 if (likely(JS_VALUE_IS_BOTH_INT(*pv, sp[-1]))) { - c000ff7c: 8fd9 or a5,a5,a4 - c000ff7e: 2781 sext.w a5,a5 - c000ff80: ef9d bnez a5,c000ffbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17894 + c001006a: 8fd9 or a5,a5,a4 + c001006c: 2781 sext.w a5,a5 + c001006e: ef9d bnez a5,c00100ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17902 r = (int64_t)JS_VALUE_GET_INT(*pv) + - c000ff82: 000aa783 lw a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17895 + c0010070: 000aa783 lw a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17903 JS_VALUE_GET_INT(sp[-1]); - c000ff86: ff0d2683 lw a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17896 + c0010074: ff0d2683 lw a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17904 if (unlikely((int)r != r)) - c000ff8a: 00d7863b addw a2,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17894 + c0010078: 00d7863b addw a2,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17902 r = (int64_t)JS_VALUE_GET_INT(*pv) + - c000ff8e: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17896 + c001007c: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17904 if (unlikely((int)r != r)) - c000ff90: 0af61563 bne a2,a5,c001003a + c001007e: 0af61563 bne a2,a5,c0010128 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c000ff94: 90043823 sd zero,-1776(s0) - c000ff98: 90c42823 sw a2,-1776(s0) - c000ff9c: 91043783 ld a5,-1776(s0) - c000ffa0: ee043c23 sd zero,-264(s0) - c000ffa4: 90043c23 sd zero,-1768(s0) - c000ffa8: eef43823 sd a5,-272(s0) + c0010082: 90043823 sd zero,-1776(s0) + c0010086: 90c42823 sw a2,-1776(s0) + c001008a: 91043783 ld a5,-1776(s0) + c001008e: ee043c23 sd zero,-264(s0) + c0010092: 90043c23 sd zero,-1768(s0) + c0010096: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17906 *pv = JS_NewInt32(ctx, r); - c000ffac: 00fab023 sd a5,0(s5) - c000ffb0: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c001009a: 00fab023 sd a5,0(s5) + c001009e: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c000ffb4: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17898 + c00100a2: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17906 *pv = JS_NewInt32(ctx, r); - c000ffb6: 00fab423 sd a5,8(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17899 + c00100a4: 00fab423 sd a5,8(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17907 sp--; - c000ffba: cbefb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17900 + c00100a8: cbefb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17908 } else if (JS_VALUE_GET_TAG(*pv) == JS_TAG_STRING) { - c000ffbe: 57e5 li a5,-7 - c000ffc0: 06f71d63 bne a4,a5,c001003a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17902 + c00100ac: 57e5 li a5,-7 + c00100ae: 06f71d63 bne a4,a5,c0010128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17910 op1 = sp[-1]; - c000ffc4: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17904 + c00100b2: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17912 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c000ffc8: 4689 li a3,2 - c000ffca: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17902 + c00100b6: 4689 li a3,2 + c00100b8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17910 op1 = sp[-1]; - c000ffcc: eeb43823 sd a1,-272(s0) - c000ffd0: ff8d3603 ld a2,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17905 + c00100ba: eeb43823 sd a1,-272(s0) + c00100be: ff8d3603 ld a2,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17913 if (JS_IsException(op1)) - c000ffd4: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17902 + c00100c2: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17910 op1 = sp[-1]; - c000ffd6: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17904 + c00100c4: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17912 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c000ffda: 36d090ef jal ra,c0019b46 - c000ffde: eeb43c23 sd a1,-264(s0) - c000ffe2: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17905 + c00100c8: 44f090ef jal ra,c0019d16 + c00100cc: eeb43c23 sd a1,-264(s0) + c00100d0: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17913 if (JS_IsException(op1)) - c000ffe6: 2581 sext.w a1,a1 - c000ffe8: 05658663 beq a1,s6,c0010034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17907 + c00100d4: 2581 sext.w a1,a1 + c00100d6: 05658663 beq a1,s6,c0010122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17915 op1 = JS_ConcatString(ctx, JS_DupValue(ctx, *pv), op1); - c000ffec: 000ab503 ld a0,0(s5) - c000fff0: 008ab583 ld a1,8(s5) - c000fff4: e7af60ef jal ra,c000666e - c000fff8: ef043683 ld a3,-272(s0) - c000fffc: ef843703 ld a4,-264(s0) - c0010000: 862e mv a2,a1 - c0010002: 80a43023 sd a0,-2048(s0) - c0010006: 80b43423 sd a1,-2040(s0) - c001000a: 85aa mv a1,a0 - c001000c: 8526 mv a0,s1 - c001000e: 1550a0ef jal ra,c001a962 - c0010012: eea43823 sd a0,-272(s0) - c0010016: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17908 + c00100da: 000ab503 ld a0,0(s5) + c00100de: 008ab583 ld a1,8(s5) + c00100e2: e7af60ef jal ra,c000675c + c00100e6: ef043683 ld a3,-272(s0) + c00100ea: ef843703 ld a4,-264(s0) + c00100ee: 862e mv a2,a1 + c00100f0: 80a43023 sd a0,-2048(s0) + c00100f4: 80b43423 sd a1,-2040(s0) + c00100f8: 85aa mv a1,a0 + c00100fa: 8526 mv a0,s1 + c00100fc: 2370a0ef jal ra,c001ab32 + c0010100: eea43823 sd a0,-272(s0) + c0010104: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17916 if (JS_IsException(op1)) - c001001a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17907 + c0010108: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17915 op1 = JS_ConcatString(ctx, JS_DupValue(ctx, *pv), op1); - c001001e: 862a mv a2,a0 - c0010020: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17908 + c001010c: 862a mv a2,a0 + c001010e: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17916 if (JS_IsException(op1)) - c0010022: 01678963 beq a5,s6,c0010034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17910 + c0010110: 01678963 beq a5,s6,c0010122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17918 set_value(ctx, pv, op1); - c0010026: 85d6 mv a1,s5 - c0010028: 8526 mv a0,s1 - c001002a: f59f70ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c0010114: 85d6 mv a1,s5 + c0010116: 8526 mv a0,s1 + c0010118: f59f70ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c001002e: 8d52 mv s10,s4 - c0010030: c48fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17906 + c001011c: 8d52 mv s10,s4 + c001011e: c48fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17914 goto exception; - c0010034: 8d52 mv s10,s4 - c0010036: da4fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17916 + c0010122: 8d52 mv s10,s4 + c0010124: da4fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17924 ops[0] = JS_DupValue(ctx, *pv); - c001003a: 000ab503 ld a0,0(s5) - c001003e: 008ab583 ld a1,8(s5) - c0010042: e2cf60ef jal ra,c000666e - c0010046: eea43823 sd a0,-272(s0) - c001004a: eeb43c23 sd a1,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17917 + c0010128: 000ab503 ld a0,0(s5) + c001012c: 008ab583 ld a1,8(s5) + c0010130: e2cf60ef jal ra,c000675c + c0010134: eea43823 sd a0,-272(s0) + c0010138: eeb43c23 sd a1,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17925 ops[1] = sp[-1]; - c001004e: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17919 + c001013c: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17927 if (js_add_slow(ctx, ops + 2)) - c0010052: f1040593 addi a1,s0,-240 - c0010056: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17917 + c0010140: f1040593 addi a1,s0,-240 + c0010144: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17925 ops[1] = sp[-1]; - c0010058: f0f43023 sd a5,-256(s0) - c001005c: ff8d3783 ld a5,-8(s10) - c0010060: f0f43423 sd a5,-248(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17919 + c0010146: f0f43023 sd a5,-256(s0) + c001014a: ff8d3783 ld a5,-8(s10) + c001014e: f0f43423 sd a5,-248(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17927 if (js_add_slow(ctx, ops + 2)) - c0010064: 0d70e0ef jal ra,c001e93a - c0010068: c501 beqz a0,c0010070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c0010152: 1b90e0ef jal ra,c001eb0a + c0010156: c501 beqz a0,c001015e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c001006a: 8d52 mv s10,s4 - c001006c: d6efb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17921 + c0010158: 8d52 mv s10,s4 + c001015a: d6efb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17929 set_value(ctx, pv, ops[0]); - c0010070: ef043603 ld a2,-272(s0) - c0010074: ef843683 ld a3,-264(s0) - c0010078: 85d6 mv a1,s5 - c001007a: 8526 mv a0,s1 - c001007c: f07f70ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16300 + c001015e: ef043603 ld a2,-272(s0) + c0010162: ef843683 ld a3,-264(s0) + c0010166: 85d6 mv a1,s5 + c0010168: 8526 mv a0,s1 + c001016a: f07f70ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16308 JS_FreeValue(ctx, sp[-1]); - c0010080: 8d52 mv s10,s4 - c0010082: bf6fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17928 + c001016e: 8d52 mv s10,s4 + c0010170: bf6fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17936 op1 = sp[-2]; - c0010086: fe0d3783 ld a5,-32(s10) - c001008a: e8f43823 sd a5,-368(s0) - c001008e: fe8d3783 ld a5,-24(s10) - c0010092: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17929 + c0010174: fe0d3783 ld a5,-32(s10) + c0010178: e8f43823 sd a5,-368(s0) + c001017c: fe8d3783 ld a5,-24(s10) + c0010180: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17937 op2 = sp[-1]; - c0010096: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17928 + c0010184: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17936 op1 = sp[-2]; - c001009a: fe8d3703 ld a4,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17929 + c0010188: fe8d3703 ld a4,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17937 op2 = sp[-1]; - c001009e: ecf43823 sd a5,-304(s0) - c00100a2: ff8d3783 ld a5,-8(s10) - c00100a6: ecf43c23 sd a5,-296(s0) - c00100aa: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17930 + c001018c: ecf43823 sd a5,-304(s0) + c0010190: ff8d3783 ld a5,-8(s10) + c0010194: ecf43c23 sd a5,-296(s0) + c0010198: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17938 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c00100ae: 00f766b3 or a3,a4,a5 - c00100b2: 2681 sext.w a3,a3 - c00100b4: ee9d bnez a3,c00100f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17932 + c001019c: 00f766b3 or a3,a4,a5 + c00101a0: 2681 sext.w a3,a3 + c00101a2: ee9d bnez a3,c00101e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17940 r = (int64_t)JS_VALUE_GET_INT(op1) - JS_VALUE_GET_INT(op2); - c00100b6: e9042783 lw a5,-368(s0) - c00100ba: ed042683 lw a3,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17933 + c00101a4: e9042783 lw a5,-368(s0) + c00101a8: ed042683 lw a3,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17941 if (unlikely((int)r != r)) - c00100be: 40d7863b subw a2,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17932 + c00101ac: 40d7863b subw a2,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17940 r = (int64_t)JS_VALUE_GET_INT(op1) - JS_VALUE_GET_INT(op2); - c00100c2: 8f95 sub a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17933 + c00101b0: 8f95 sub a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17941 if (unlikely((int)r != r)) - c00100c4: 1ef61863 bne a2,a5,c00102b4 + c00101b2: 1ef61863 bne a2,a5,c00103a2 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00100c8: 92043023 sd zero,-1760(s0) - c00100cc: 92c42023 sw a2,-1760(s0) - c00100d0: 92043783 ld a5,-1760(s0) - c00100d4: ee043c23 sd zero,-264(s0) - c00100d8: 92043423 sd zero,-1752(s0) - c00100dc: eef43823 sd a5,-272(s0) + c00101b6: 92043023 sd zero,-1760(s0) + c00101ba: 92c42023 sw a2,-1760(s0) + c00101be: 92043783 ld a5,-1760(s0) + c00101c2: ee043c23 sd zero,-264(s0) + c00101c6: 92043423 sd zero,-1752(s0) + c00101ca: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17943 sp[-2] = JS_NewInt32(ctx, r); - c00100e0: fefd3023 sd a5,-32(s10) - c00100e4: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17936 + c00101ce: fefd3023 sd a5,-32(s10) + c00101d2: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17944 sp--; - c00100e8: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17935 + c00101d6: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17943 sp[-2] = JS_NewInt32(ctx, r); - c00100ea: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17936 + c00101d8: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17944 sp--; - c00100ee: b8afb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17937 + c00101dc: b8afb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17945 } else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) { - c00100f2: 2701 sext.w a4,a4 - c00100f4: 469d li a3,7 - c00100f6: 1ad71f63 bne a4,a3,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17937 (discriminator 1) - c00100fa: 2781 sext.w a5,a5 - c00100fc: 1ae79c63 bne a5,a4,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17938 + c00101e0: 2701 sext.w a4,a4 + c00101e2: 469d li a3,7 + c00101e4: 1ad71f63 bne a4,a3,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17945 (discriminator 1) + c00101e8: 2781 sext.w a5,a5 + c00101ea: 1ae79c63 bne a5,a4,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17946 sp[-2] = __JS_NewFloat64(ctx, JS_VALUE_GET_FLOAT64(op1) - - c0010100: e9043787 fld fa5,-368(s0) - c0010104: ed043707 fld fa4,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17940 + c00101ee: e9043787 fld fa5,-368(s0) + c00101f2: ed043707 fld fa4,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17948 sp--; - c0010108: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17938 + c00101f6: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17946 sp[-2] = __JS_NewFloat64(ctx, JS_VALUE_GET_FLOAT64(op1) - - c001010a: fefd3c23 sd a5,-8(s10) - c001010e: 0ae7f7d3 fsub.d fa5,fa5,fa4 - c0010112: fefd3827 fsd fa5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17945 + c00101f8: fefd3c23 sd a5,-8(s10) + c00101fc: 0ae7f7d3 fsub.d fa5,fa5,fa4 + c0010200: fefd3827 fsd fa5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17953 BREAK; - c0010116: b62fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17950 + c0010204: b62fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17958 op1 = sp[-2]; - c001011a: fe0d3783 ld a5,-32(s10) - c001011e: e8f43823 sd a5,-368(s0) - c0010122: fe8d3783 ld a5,-24(s10) - c0010126: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17951 + c0010208: fe0d3783 ld a5,-32(s10) + c001020c: e8f43823 sd a5,-368(s0) + c0010210: fe8d3783 ld a5,-24(s10) + c0010214: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17959 op2 = sp[-1]; - c001012a: ff0d3703 ld a4,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17950 + c0010218: ff0d3703 ld a4,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17958 op1 = sp[-2]; - c001012e: fe8d3783 ld a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17951 + c001021c: fe8d3783 ld a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17959 op2 = sp[-1]; - c0010132: ece43823 sd a4,-304(s0) - c0010136: ff8d3703 ld a4,-8(s10) - c001013a: ece43c23 sd a4,-296(s0) - c001013e: ff8d3703 ld a4,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17952 + c0010220: ece43823 sd a4,-304(s0) + c0010224: ff8d3703 ld a4,-8(s10) + c0010228: ece43c23 sd a4,-296(s0) + c001022c: ff8d3703 ld a4,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17960 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010142: 00e7e6b3 or a3,a5,a4 - c0010146: 2681 sext.w a3,a3 - c0010148: eeb1 bnez a3,c00101a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17955 + c0010230: 00e7e6b3 or a3,a5,a4 + c0010234: 2681 sext.w a3,a3 + c0010236: eeb1 bnez a3,c0010292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17963 v1 = JS_VALUE_GET_INT(op1); - c001014a: e9042783 lw a5,-368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17956 + c0010238: e9042783 lw a5,-368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17964 v2 = JS_VALUE_GET_INT(op2); - c001014e: ed042603 lw a2,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17957 + c001023c: ed042603 lw a2,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17965 r = (int64_t)v1 * v2; - c0010152: 02c786b3 mul a3,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17958 + c0010240: 02c786b3 mul a3,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17966 if (unlikely((int)r != r)) { - c0010156: 0006871b sext.w a4,a3 - c001015a: 00d70c63 beq a4,a3,c0010172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17964 + c0010244: 0006871b sext.w a4,a3 + c0010248: 00d70c63 beq a4,a3,c0010260 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17972 d = (double)r; - c001015e: d226f7d3 fcvt.d.l fa5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17981 + c001024c: d226f7d3 fcvt.d.l fa5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17989 sp[-2] = __JS_NewFloat64(ctx, d); - c0010162: 479d li a5,7 - c0010164: fefd3027 fsd fa5,-32(s10) - c0010168: fefd3423 sd a5,-24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17982 + c0010250: 479d li a5,7 + c0010252: fefd3027 fsd fa5,-32(s10) + c0010256: fefd3423 sd a5,-24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17990 sp--; - c001016c: 1d41 addi s10,s10,-16 - c001016e: b0afb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17968 + c001025a: 1d41 addi s10,s10,-16 + c001025c: b0afb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17976 if (unlikely(r == 0 && (v1 | v2) < 0)) { - c0010172: e701 bnez a4,c001017a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17968 (discriminator 1) - c0010174: 8fd1 or a5,a5,a2 - c0010176: 0407c563 bltz a5,c00101c0 + c0010260: e701 bnez a4,c0010268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17976 (discriminator 1) + c0010262: 8fd1 or a5,a5,a2 + c0010264: 0407c563 bltz a5,c00102ae JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001017a: 92043823 sd zero,-1744(s0) - c001017e: 92e42823 sw a4,-1744(s0) - c0010182: 93043783 ld a5,-1744(s0) - c0010186: ee043c23 sd zero,-264(s0) - c001018a: 92043c23 sd zero,-1736(s0) - c001018e: eef43823 sd a5,-272(s0) + c0010268: 92043823 sd zero,-1744(s0) + c001026c: 92e42823 sw a4,-1744(s0) + c0010270: 93043783 ld a5,-1744(s0) + c0010274: ee043c23 sd zero,-264(s0) + c0010278: 92043c23 sd zero,-1736(s0) + c001027c: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17980 sp[-2] = JS_NewInt32(ctx, r); - c0010192: fefd3023 sd a5,-32(s10) - c0010196: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17973 + c0010280: fefd3023 sd a5,-32(s10) + c0010284: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17981 sp--; - c001019a: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17972 + c0010288: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17980 sp[-2] = JS_NewInt32(ctx, r); - c001019c: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17973 + c001028a: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17981 sp--; - c00101a0: ad8fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17974 + c001028e: ad8fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17982 } else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) { - c00101a4: 2781 sext.w a5,a5 - c00101a6: 469d li a3,7 - c00101a8: 10d79663 bne a5,a3,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17974 (discriminator 1) - c00101ac: 2701 sext.w a4,a4 - c00101ae: 10f71363 bne a4,a5,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17979 + c0010292: 2781 sext.w a5,a5 + c0010294: 469d li a3,7 + c0010296: 10d79663 bne a5,a3,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17982 (discriminator 1) + c001029a: 2701 sext.w a4,a4 + c001029c: 10f71363 bne a4,a5,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17987 d = JS_VALUE_GET_FLOAT64(op1) * JS_VALUE_GET_FLOAT64(op2); - c00101b2: e9043787 fld fa5,-368(s0) - c00101b6: ed043707 fld fa4,-304(s0) - c00101ba: 12e7f7d3 fmul.d fa5,fa5,fa4 - c00101be: b755 j c0010162 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17969 + c00102a0: e9043787 fld fa5,-368(s0) + c00102a4: ed043707 fld fa4,-304(s0) + c00102a8: 12e7f7d3 fmul.d fa5,fa5,fa4 + c00102ac: b755 j c0010250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17977 d = -0.0; - c00101c0: 228407d3 fmv.d fa5,fs0 - c00101c4: bf79 j c0010162 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17991 + c00102ae: 228407d3 fmv.d fa5,fs0 + c00102b2: bf79 j c0010250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17999 op1 = sp[-2]; - c00101c6: fe0d3783 ld a5,-32(s10) - c00101ca: e8f43823 sd a5,-368(s0) - c00101ce: fe8d3783 ld a5,-24(s10) - c00101d2: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17992 + c00102b4: fe0d3783 ld a5,-32(s10) + c00102b8: e8f43823 sd a5,-368(s0) + c00102bc: fe8d3783 ld a5,-24(s10) + c00102c0: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18000 op2 = sp[-1]; - c00101d6: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17991 + c00102c4: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17999 op1 = sp[-2]; - c00101da: fe8d3683 ld a3,-24(s10) - c00101de: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17992 + c00102c8: fe8d3683 ld a3,-24(s10) + c00102cc: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18000 op2 = sp[-1]; - c00101e2: ecf43823 sd a5,-304(s0) - c00101e6: ff8d3783 ld a5,-8(s10) - c00101ea: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17993 + c00102d0: ecf43823 sd a5,-304(s0) + c00102d4: ff8d3783 ld a5,-8(s10) + c00102d8: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18001 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c00101ee: ff8d3783 ld a5,-8(s10) - c00101f2: 8fd5 or a5,a5,a3 - c00101f4: 2781 sext.w a5,a5 - c00101f6: efdd bnez a5,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17995 + c00102dc: ff8d3783 ld a5,-8(s10) + c00102e0: 8fd5 or a5,a5,a3 + c00102e2: 2781 sext.w a5,a5 + c00102e4: efdd bnez a5,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18003 if (unlikely(sf->js_mode & JS_MODE_MATH)) - c00101f8: 77fd lui a5,0xfffff - c00101fa: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c00101fe: 97a2 add a5,a5,s0 - c0010200: 639c ld a5,0(a5) - c0010202: 43fc lw a5,68(a5) - c0010204: 8b91 andi a5,a5,4 - c0010206: e7dd bnez a5,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17999 + c00102e6: 77fd lui a5,0xfffff + c00102e8: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c00102ec: 97a2 add a5,a5,s0 + c00102ee: 639c ld a5,0(a5) + c00102f0: 43fc lw a5,68(a5) + c00102f2: 8b91 andi a5,a5,4 + c00102f4: e7dd bnez a5,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18007 sp[-2] = JS_NewFloat64(ctx, (double)v1 / (double)v2); - c0010208: ff0d2783 lw a5,-16(s10) - c001020c: d20707d3 fcvt.d.w fa5,a4 - c0010210: d2078753 fcvt.d.w fa4,a5 - c0010214: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c00102f6: ff0d2783 lw a5,-16(s10) + c00102fa: d20707d3 fcvt.d.w fa5,a4 + c00102fe: d2078753 fcvt.d.w fa4,a5 + c0010302: 1ae7f7d3 fdiv.d fa5,fa5,fa4 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0010218: c20796d3 fcvt.w.d a3,fa5,rtz + c0010306: c20796d3 fcvt.w.d a3,fa5,rtz JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17999 - c001021c: e20787d3 fmv.x.d a5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18007 + c001030a: e20787d3 fmv.x.d a5,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0010220: d20687d3 fcvt.d.w fa5,a3 + c001030e: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0010224: 0006871b sext.w a4,a3 + c0010312: 0006871b sext.w a4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0010228: e2078653 fmv.x.d a2,fa5 - c001022c: 02f61863 bne a2,a5,c001025c + c0010316: e2078653 fmv.x.d a2,fa5 + c001031a: 02f61863 bne a2,a5,c001034a /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c0010230: ee042a23 sw zero,-268(s0) - c0010234: 4781 li a5,0 + c001031e: ee042a23 sw zero,-268(s0) + c0010322: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0010236: eee42823 sw a4,-272(s0) - c001023a: ef043703 ld a4,-272(s0) - c001023e: ef043787 fld fa5,-272(s0) - c0010242: eef43c23 sd a5,-264(s0) + c0010324: eee42823 sw a4,-272(s0) + c0010328: ef043703 ld a4,-272(s0) + c001032c: ef043787 fld fa5,-272(s0) + c0010330: eef43c23 sd a5,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17999 - c0010246: fefd3423 sd a5,-24(s10) - c001024a: fefd3027 fsd fa5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18007 + c0010334: fefd3423 sd a5,-24(s10) + c0010338: fefd3027 fsd fa5,-32(s10) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 - c001024e: 94e43023 sd a4,-1728(s0) - c0010252: 94f43423 sd a5,-1720(s0) + c001033c: 94e43023 sd a4,-1728(s0) + c0010340: 94f43423 sd a5,-1720(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18008 sp--; - c0010256: 1d41 addi s10,s10,-16 - c0010258: a20fb06f j c000b478 + c0010344: 1d41 addi s10,s10,-16 + c0010346: a20fb06f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001025c: eef43823 sd a5,-272(s0) - c0010260: 0007871b sext.w a4,a5 + c001034a: eef43823 sd a5,-272(s0) + c001034e: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0010264: 479d li a5,7 - c0010266: bfc1 j c0010236 + c0010352: 479d li a5,7 + c0010354: bfc1 j c0010324 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18014 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18022 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010268: fe8d3783 ld a5,-24(s10) - c001026c: ff8d3683 ld a3,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18012 + c0010356: fe8d3783 ld a5,-24(s10) + c001035a: ff8d3683 ld a3,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18020 op1 = sp[-2]; - c0010270: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18014 + c001035e: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18022 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010274: 8fd5 or a5,a5,a3 - c0010276: 2781 sext.w a5,a5 - c0010278: ef95 bnez a5,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18020 + c0010362: 8fd5 or a5,a5,a3 + c0010364: 2781 sext.w a5,a5 + c0010366: ef95 bnez a5,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18028 if (unlikely(v1 < 0 || v2 <= 0)) - c001027a: 02074d63 bltz a4,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18013 (discriminator 1) + c0010368: 02074d63 bltz a4,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18021 (discriminator 1) op2 = sp[-1]; - c001027e: ff0d2783 lw a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18020 (discriminator 1) + c001036c: ff0d2783 lw a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18028 (discriminator 1) if (unlikely(v1 < 0 || v2 <= 0)) - c0010282: 02f05963 blez a5,c00102b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18022 + c0010370: 02f05963 blez a5,c00103a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18030 r = v1 % v2; - c0010286: 02f7673b remw a4,a4,a5 + c0010374: 02f7673b remw a4,a4,a5 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001028a: 94043823 sd zero,-1712(s0) - c001028e: ee043c23 sd zero,-264(s0) - c0010292: 94043c23 sd zero,-1704(s0) + c0010378: 94043823 sd zero,-1712(s0) + c001037c: ee043c23 sd zero,-264(s0) + c0010380: 94043c23 sd zero,-1704(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18032 sp--; - c0010296: 1d41 addi s10,s10,-16 - c0010298: 94e42823 sw a4,-1712(s0) - c001029c: 95043783 ld a5,-1712(s0) - c00102a0: eef43823 sd a5,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18023 + c0010384: 1d41 addi s10,s10,-16 + c0010386: 94e42823 sw a4,-1712(s0) + c001038a: 95043783 ld a5,-1712(s0) + c001038e: eef43823 sd a5,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18031 sp[-2] = JS_NewInt32(ctx, r); - c00102a4: fefd3823 sd a5,-16(s10) - c00102a8: ef843783 ld a5,-264(s0) - c00102ac: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18024 - sp--; - c00102b0: 9c8fb06f j c000b478 + c0010392: fefd3823 sd a5,-16(s10) + c0010396: ef843783 ld a5,-264(s0) + c001039a: fefd3c23 sd a5,-8(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18032 + sp--; + c001039e: 9c8fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18040 if (js_binary_arith_slow(ctx, sp, opcode)) - c00102b4: 8656 mv a2,s5 - c00102b6: 85ea mv a1,s10 - c00102b8: 8526 mv a0,s1 - c00102ba: 0430e0ef jal ra,c001eafc - c00102be: c119 beqz a0,c00102c4 - c00102c0: b1afb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18034 + c00103a2: 8656 mv a2,s5 + c00103a4: 85ea mv a1,s10 + c00103a6: 8526 mv a0,s1 + c00103a8: 1250e0ef jal ra,c001eccc + c00103ac: c119 beqz a0,c00103b2 + c00103ae: b1afb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18042 sp--; - c00102c4: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18035 + c00103b2: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18043 BREAK; - c00102c6: 9b2fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18041 + c00103b4: 9b2fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18049 op1 = sp[-1]; - c00102ca: ff0d3783 ld a5,-16(s10) - c00102ce: eef43823 sd a5,-272(s0) - c00102d2: ff8d3783 ld a5,-8(s10) - c00102d6: eef43c23 sd a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18042 + c00103b8: ff0d3783 ld a5,-16(s10) + c00103bc: eef43823 sd a5,-272(s0) + c00103c0: ff8d3783 ld a5,-8(s10) + c00103c4: eef43c23 sd a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18050 tag = JS_VALUE_GET_TAG(op1); - c00102da: ff8d2783 lw a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18043 + c00103c8: ff8d2783 lw a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18051 if (tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag)) { - c00102de: e399 bnez a5,c00102e4 - c00102e0: 998fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18043 (discriminator 1) - c00102e4: 471d li a4,7 - c00102e6: 00e79463 bne a5,a4,c00102ee - c00102ea: 98efb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18045 + c00103cc: e399 bnez a5,c00103d2 + c00103ce: 998fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18051 (discriminator 1) + c00103d2: 471d li a4,7 + c00103d4: 00e79463 bne a5,a4,c00103dc + c00103d8: 98efb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18053 if (js_unary_arith_slow(ctx, sp, opcode)) - c00102ee: 08e00613 li a2,142 - c00102f2: 85ea mv a1,s10 - c00102f4: 8526 mv a0,s1 - c00102f6: 25d0e0ef jal ra,c001ed52 - c00102fa: e119 bnez a0,c0010300 - c00102fc: 97cfb06f j c000b478 - c0010300: adafb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18056 + c00103dc: 08e00613 li a2,142 + c00103e0: 85ea mv a1,s10 + c00103e2: 8526 mv a0,s1 + c00103e4: 33f0e0ef jal ra,c001ef22 + c00103e8: e119 bnez a0,c00103ee + c00103ea: 97cfb06f j c000b566 + c00103ee: adafb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18064 op1 = sp[-1]; - c0010304: ff0d3783 ld a5,-16(s10) - c0010308: ecf43823 sd a5,-304(s0) - c001030c: ff8d3783 ld a5,-8(s10) - c0010310: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18057 + c00103f2: ff0d3783 ld a5,-16(s10) + c00103f6: ecf43823 sd a5,-304(s0) + c00103fa: ff8d3783 ld a5,-8(s10) + c00103fe: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18065 tag = JS_VALUE_GET_TAG(op1); - c0010314: ff8d2783 lw a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18058 + c0010402: ff8d2783 lw a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18066 if (tag == JS_TAG_INT) { - c0010318: ef95 bnez a5,c0010354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18059 + c0010406: ef95 bnez a5,c0010442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18067 val = JS_VALUE_GET_INT(op1); - c001031a: ed042783 lw a5,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18061 + c0010408: ed042783 lw a5,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18069 if (unlikely(val == 0)) { - c001031e: cba9 beqz a5,c0010370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18065 + c001040c: cba9 beqz a5,c001045e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18073 if (unlikely(val == INT32_MIN)) { - c0010320: 80000737 lui a4,0x80000 - c0010324: 04e78963 beq a5,a4,c0010376 + c001040e: 80000737 lui a4,0x80000 + c0010412: 04e78963 beq a5,a4,c0010464 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010328: 96043023 sd zero,-1696(s0) + c0010416: 96043023 sd zero,-1696(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18069 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18077 sp[-1] = JS_NewInt32(ctx, -val); - c001032c: 40f007bb negw a5,a5 - c0010330: 96f42023 sw a5,-1696(s0) - c0010334: 96043783 ld a5,-1696(s0) - c0010338: ee043c23 sd zero,-264(s0) + c001041a: 40f007bb negw a5,a5 + c001041e: 96f42023 sw a5,-1696(s0) + c0010422: 96043783 ld a5,-1696(s0) + c0010426: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001033c: 96043423 sd zero,-1688(s0) - c0010340: eef43823 sd a5,-272(s0) + c001042a: 96043423 sd zero,-1688(s0) + c001042e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18069 - c0010344: fefd3823 sd a5,-16(s10) - c0010348: ef843783 ld a5,-264(s0) - c001034c: fefd3c23 sd a5,-8(s10) - c0010350: 928fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18077 + c0010432: fefd3823 sd a5,-16(s10) + c0010436: ef843783 ld a5,-264(s0) + c001043a: fefd3c23 sd a5,-8(s10) + c001043e: 928fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18078 } else if (JS_TAG_IS_FLOAT64(tag)) { - c0010354: 471d li a4,7 - c0010356: 02e79363 bne a5,a4,c001037c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18071 + c0010442: 471d li a4,7 + c0010444: 02e79363 bne a5,a4,c001046a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18079 d = -JS_VALUE_GET_FLOAT64(op1); - c001035a: ed043787 fld fa5,-304(s0) - c001035e: 22f797d3 fneg.d fa5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18073 + c0010448: ed043787 fld fa5,-304(s0) + c001044c: 22f797d3 fneg.d fa5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18081 sp[-1] = __JS_NewFloat64(ctx, d); - c0010362: 479d li a5,7 - c0010364: fefd3827 fsd fa5,-16(s10) - c0010368: fefd3c23 sd a5,-8(s10) - c001036c: 90cfb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18062 + c0010450: 479d li a5,7 + c0010452: fefd3827 fsd fa5,-16(s10) + c0010456: fefd3c23 sd a5,-8(s10) + c001045a: 90cfb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18070 d = -0.0; - c0010370: 228407d3 fmv.d fa5,fs0 - c0010374: b7fd j c0010362 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18066 + c001045e: 228407d3 fmv.d fa5,fs0 + c0010462: b7fd j c0010450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18074 d = -(double)val; - c0010376: 229487d3 fmv.d fa5,fs1 - c001037a: b7e5 j c0010362 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18075 + c0010464: 229487d3 fmv.d fa5,fs1 + c0010468: b7e5 j c0010450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18083 if (js_unary_arith_slow(ctx, sp, opcode)) - c001037c: 08d00613 li a2,141 - c0010380: 85ea mv a1,s10 - c0010382: 8526 mv a0,s1 - c0010384: 1cf0e0ef jal ra,c001ed52 - c0010388: e119 bnez a0,c001038e - c001038a: 8eefb06f j c000b478 - c001038e: a4cfb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18084 + c001046a: 08d00613 li a2,141 + c001046e: 85ea mv a1,s10 + c0010470: 8526 mv a0,s1 + c0010472: 2b10e0ef jal ra,c001ef22 + c0010476: e119 bnez a0,c001047c + c0010478: 8eefb06f j c000b566 + c001047c: a4cfb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18092 op1 = sp[-1]; - c0010392: ff0d3783 ld a5,-16(s10) - c0010396: ecf43823 sd a5,-304(s0) - c001039a: ff8d3783 ld a5,-8(s10) - c001039e: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18085 + c0010480: ff0d3783 ld a5,-16(s10) + c0010484: ecf43823 sd a5,-304(s0) + c0010488: ff8d3783 ld a5,-8(s10) + c001048c: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18093 if (JS_VALUE_GET_TAG(op1) == JS_TAG_INT) { - c00103a2: ff8d2783 lw a5,-8(s10) - c00103a6: ef95 bnez a5,c00103e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18084 + c0010490: ff8d2783 lw a5,-8(s10) + c0010494: ef95 bnez a5,c00104d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18092 op1 = sp[-1]; - c00103a8: ff0d2783 lw a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18087 + c0010496: ff0d2783 lw a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18095 if (unlikely(val == INT32_MAX)) - c00103ac: 80000737 lui a4,0x80000 - c00103b0: fff74713 not a4,a4 - c00103b4: 02e78763 beq a5,a4,c00103e2 + c001049a: 80000737 lui a4,0x80000 + c001049e: fff74713 not a4,a4 + c00104a2: 02e78763 beq a5,a4,c00104d0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00103b8: 96043823 sd zero,-1680(s0) + c00104a6: 96043823 sd zero,-1680(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18089 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18097 sp[-1] = JS_NewInt32(ctx, val + 1); - c00103bc: 2785 addiw a5,a5,1 - c00103be: 96f42823 sw a5,-1680(s0) - c00103c2: 97043783 ld a5,-1680(s0) - c00103c6: ee043c23 sd zero,-264(s0) + c00104aa: 2785 addiw a5,a5,1 + c00104ac: 96f42823 sw a5,-1680(s0) + c00104b0: 97043783 ld a5,-1680(s0) + c00104b4: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00103ca: 96043c23 sd zero,-1672(s0) - c00103ce: eef43823 sd a5,-272(s0) + c00104b8: 96043c23 sd zero,-1672(s0) + c00104bc: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18089 - c00103d2: fefd3823 sd a5,-16(s10) - c00103d6: ef843783 ld a5,-264(s0) - c00103da: fefd3c23 sd a5,-8(s10) - c00103de: 89afb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18097 + c00104c0: fefd3823 sd a5,-16(s10) + c00104c4: ef843783 ld a5,-264(s0) + c00104c8: fefd3c23 sd a5,-8(s10) + c00104cc: 89afb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18100 if (js_unary_arith_slow(ctx, sp, opcode)) - c00103e2: 09000613 li a2,144 - c00103e6: 85ea mv a1,s10 - c00103e8: 8526 mv a0,s1 - c00103ea: 1690e0ef jal ra,c001ed52 - c00103ee: e119 bnez a0,c00103f4 - c00103f0: 888fb06f j c000b478 - c00103f4: 9e6fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18101 + c00104d0: 09000613 li a2,144 + c00104d4: 85ea mv a1,s10 + c00104d6: 8526 mv a0,s1 + c00104d8: 24b0e0ef jal ra,c001ef22 + c00104dc: e119 bnez a0,c00104e2 + c00104de: 888fb06f j c000b566 + c00104e2: 9e6fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18109 op1 = sp[-1]; - c00103f8: ff0d3783 ld a5,-16(s10) - c00103fc: ecf43823 sd a5,-304(s0) - c0010400: ff8d3783 ld a5,-8(s10) - c0010404: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18102 + c00104e6: ff0d3783 ld a5,-16(s10) + c00104ea: ecf43823 sd a5,-304(s0) + c00104ee: ff8d3783 ld a5,-8(s10) + c00104f2: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18110 if (JS_VALUE_GET_TAG(op1) == JS_TAG_INT) { - c0010408: ff8d2783 lw a5,-8(s10) - c001040c: ef85 bnez a5,c0010444 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18101 + c00104f6: ff8d2783 lw a5,-8(s10) + c00104fa: ef85 bnez a5,c0010532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18109 op1 = sp[-1]; - c001040e: ff0d2783 lw a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18104 + c00104fc: ff0d2783 lw a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18112 if (unlikely(val == INT32_MIN)) - c0010412: 80000737 lui a4,0x80000 - c0010416: 02e78763 beq a5,a4,c0010444 + c0010500: 80000737 lui a4,0x80000 + c0010504: 02e78763 beq a5,a4,c0010532 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001041a: 98043023 sd zero,-1664(s0) + c0010508: 98043023 sd zero,-1664(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18114 sp[-1] = JS_NewInt32(ctx, val - 1); - c001041e: 37fd addiw a5,a5,-1 - c0010420: 98f42023 sw a5,-1664(s0) - c0010424: 98043783 ld a5,-1664(s0) - c0010428: ee043c23 sd zero,-264(s0) + c001050c: 37fd addiw a5,a5,-1 + c001050e: 98f42023 sw a5,-1664(s0) + c0010512: 98043783 ld a5,-1664(s0) + c0010516: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001042c: 98043423 sd zero,-1656(s0) - c0010430: eef43823 sd a5,-272(s0) + c001051a: 98043423 sd zero,-1656(s0) + c001051e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18106 - c0010434: fefd3823 sd a5,-16(s10) - c0010438: ef843783 ld a5,-264(s0) - c001043c: fefd3c23 sd a5,-8(s10) - c0010440: 838fb06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18114 + c0010522: fefd3823 sd a5,-16(s10) + c0010526: ef843783 ld a5,-264(s0) + c001052a: fefd3c23 sd a5,-8(s10) + c001052e: 838fb06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18117 if (js_unary_arith_slow(ctx, sp, opcode)) - c0010444: 08f00613 li a2,143 - c0010448: 85ea mv a1,s10 - c001044a: 8526 mv a0,s1 - c001044c: 1070e0ef jal ra,c001ed52 - c0010450: e119 bnez a0,c0010456 - c0010452: 826fb06f j c000b478 - c0010456: 984fb06f j c000b5da + c0010532: 08f00613 li a2,143 + c0010536: 85ea mv a1,s10 + c0010538: 8526 mv a0,s1 + c001053a: 1e90e0ef jal ra,c001ef22 + c001053e: e119 bnez a0,c0010544 + c0010540: 826fb06f j c000b566 + c0010544: 984fb06f j c000b6c8 js_post_inc_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13097 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13105 op1 = sp[-1]; - c001045a: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13098 + c0010548: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13106 op1 = JS_ToNumericFree(ctx, op1); - c001045e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13097 + c001054c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13105 op1 = sp[-1]; - c0010460: eeb43823 sd a1,-272(s0) - c0010464: ff8d3603 ld a2,-8(s10) - c0010468: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13098 + c001054e: eeb43823 sd a1,-272(s0) + c0010552: ff8d3603 ld a2,-8(s10) + c0010556: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13106 op1 = JS_ToNumericFree(ctx, op1); - c001046c: 4c40e0ef jal ra,c001e930 - c0010470: eeb43c23 sd a1,-264(s0) - c0010474: eea43823 sd a0,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13099 + c001055a: 5a60e0ef jal ra,c001eb00 + c001055e: eeb43c23 sd a1,-264(s0) + c0010562: eea43823 sd a0,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13107 if (JS_IsException(op1)) { - c0010478: 2581 sext.w a1,a1 - c001047a: 4799 li a5,6 - c001047c: 00f59963 bne a1,a5,c001048e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13100 + c0010566: 2581 sext.w a1,a1 + c0010568: 4799 li a5,6 + c001056a: 00f59963 bne a1,a5,c001057c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13108 sp[-1] = JS_UNDEFINED; - c0010480: 478d li a5,3 - c0010482: fe0d3823 sd zero,-16(s10) - c0010486: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13101 + c001056e: 478d li a5,3 + c0010570: fe0d3823 sd zero,-16(s10) + c0010574: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13109 return -1; - c001048a: 950fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13103 + c0010578: 950fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13111 sp[-1] = op1; - c001048e: fead3823 sd a0,-16(s10) - c0010492: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13105 + c001057c: fead3823 sd a0,-16(s10) + c0010580: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13113 return js_unary_arith_slow(ctx, sp + 1, op - OP_post_dec + OP_dec); - c0010496: 010d0a13 addi s4,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13103 + c0010584: 010d0a13 addi s4,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13111 sp[-1] = op1; - c001049a: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13104 + c0010588: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13112 sp[0] = JS_DupValue(ctx, op1); - c001049e: ef043503 ld a0,-272(s0) - c00104a2: ef843583 ld a1,-264(s0) - c00104a6: 9c8f60ef jal ra,c000666e - c00104aa: 00ad3023 sd a0,0(s10) - c00104ae: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13105 + c001058c: ef043503 ld a0,-272(s0) + c0010590: ef843583 ld a1,-264(s0) + c0010594: 9c8f60ef jal ra,c000675c + c0010598: 00ad3023 sd a0,0(s10) + c001059c: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13113 return js_unary_arith_slow(ctx, sp + 1, op - OP_post_dec + OP_dec); - c00104b2: ffea861b addiw a2,s5,-2 - c00104b6: 85d2 mv a1,s4 - c00104b8: 8526 mv a0,s1 - c00104ba: 0990e0ef jal ra,c001ed52 + c00105a0: ffea861b addiw a2,s5,-2 + c00105a4: 85d2 mv a1,s4 + c00105a6: 8526 mv a0,s1 + c00105a8: 17b0e0ef jal ra,c001ef22 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18124 if (js_post_inc_slow(ctx, sp, opcode)) - c00104be: c119 beqz a0,c00104c4 - c00104c0: 91afb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18118 + c00105ac: c119 beqz a0,c00105b2 + c00105ae: 91afb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18126 sp++; - c00104c4: 8d52 mv s10,s4 - c00104c6: fb3fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18128 + c00105b2: 8d52 mv s10,s4 + c00105b4: fb3fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18136 op1 = var_buf[idx]; - c00104ca: 77fd lui a5,0xfffff - c00104cc: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c00104d0: 001bc583 lbu a1,1(s7) - c00104d4: 97a2 add a5,a5,s0 - c00104d6: 639c ld a5,0(a5) - c00104d8: 0592 slli a1,a1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18126 + c00105b8: 77fd lui a5,0xfffff + c00105ba: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c00105be: 001bc583 lbu a1,1(s7) + c00105c2: 97a2 add a5,a5,s0 + c00105c4: 639c ld a5,0(a5) + c00105c6: 0592 slli a1,a1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18134 pc += 1; - c00104da: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18128 + c00105c8: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18136 op1 = var_buf[idx]; - c00104de: 00b78a33 add s4,a5,a1 - c00104e2: 000a3783 ld a5,0(s4) - c00104e6: ecf43823 sd a5,-304(s0) - c00104ea: 008a3783 ld a5,8(s4) - c00104ee: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18129 + c00105cc: 00b78a33 add s4,a5,a1 + c00105d0: 000a3783 ld a5,0(s4) + c00105d4: ecf43823 sd a5,-304(s0) + c00105d8: 008a3783 ld a5,8(s4) + c00105dc: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18137 if (JS_VALUE_GET_TAG(op1) == JS_TAG_INT) { - c00104f2: 2781 sext.w a5,a5 - c00104f4: ef95 bnez a5,c0010530 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18130 + c00105e0: 2781 sext.w a5,a5 + c00105e2: ef95 bnez a5,c001061e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18138 val = JS_VALUE_GET_INT(op1); - c00104f6: ed042783 lw a5,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18131 + c00105e4: ed042783 lw a5,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18139 if (unlikely(val == INT32_MAX)) - c00104fa: 80000737 lui a4,0x80000 - c00104fe: fff74713 not a4,a4 - c0010502: 02e78763 beq a5,a4,c0010530 + c00105e8: 80000737 lui a4,0x80000 + c00105ec: fff74713 not a4,a4 + c00105f0: 02e78763 beq a5,a4,c001061e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010506: 98043823 sd zero,-1648(s0) + c00105f4: 98043823 sd zero,-1648(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18133 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18141 var_buf[idx] = JS_NewInt32(ctx, val + 1); - c001050a: 2785 addiw a5,a5,1 - c001050c: 98f42823 sw a5,-1648(s0) - c0010510: 99043783 ld a5,-1648(s0) - c0010514: ee043c23 sd zero,-264(s0) + c00105f8: 2785 addiw a5,a5,1 + c00105fa: 98f42823 sw a5,-1648(s0) + c00105fe: 99043783 ld a5,-1648(s0) + c0010602: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010518: 98043c23 sd zero,-1640(s0) - c001051c: eef43823 sd a5,-272(s0) + c0010606: 98043c23 sd zero,-1640(s0) + c001060a: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18133 - c0010520: 00fa3023 sd a5,0(s4) - c0010524: ef843783 ld a5,-264(s0) - c0010528: 00fa3423 sd a5,8(s4) - c001052c: f4dfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18141 + c001060e: 00fa3023 sd a5,0(s4) + c0010612: ef843783 ld a5,-264(s0) + c0010616: 00fa3423 sd a5,8(s4) + c001061a: f4dfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18146 op1 = JS_DupValue(ctx, op1); - c0010530: ed043503 ld a0,-304(s0) - c0010534: ed843583 ld a1,-296(s0) - c0010538: 936f60ef jal ra,c000666e - c001053c: eca43823 sd a0,-304(s0) - c0010540: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18139 + c001061e: ed043503 ld a0,-304(s0) + c0010622: ed843583 ld a1,-296(s0) + c0010626: 936f60ef jal ra,c000675c + c001062a: eca43823 sd a0,-304(s0) + c001062e: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18147 if (js_unary_arith_slow(ctx, &op1 + 1, OP_inc)) - c0010544: 09000613 li a2,144 - c0010548: ee040593 addi a1,s0,-288 - c001054c: 8526 mv a0,s1 - c001054e: 0050e0ef jal ra,c001ed52 - c0010552: c119 beqz a0,c0010558 - c0010554: 886fb06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18141 + c0010632: 09000613 li a2,144 + c0010636: ee040593 addi a1,s0,-288 + c001063a: 8526 mv a0,s1 + c001063c: 0e70e0ef jal ra,c001ef22 + c0010640: c119 beqz a0,c0010646 + c0010642: 886fb06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18149 set_value(ctx, &var_buf[idx], op1); - c0010558: ed043603 ld a2,-304(s0) - c001055c: ed843683 ld a3,-296(s0) - c0010560: 85d2 mv a1,s4 - c0010562: 8526 mv a0,s1 - c0010564: a1ff70ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18144 + c0010646: ed043603 ld a2,-304(s0) + c001064a: ed843683 ld a3,-296(s0) + c001064e: 85d2 mv a1,s4 + c0010650: 8526 mv a0,s1 + c0010652: a1ff70ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18152 BREAK; - c0010568: f11fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18153 + c0010656: f11fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18161 op1 = var_buf[idx]; - c001056c: 77fd lui a5,0xfffff - c001056e: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> - c0010572: 001bc583 lbu a1,1(s7) - c0010576: 97a2 add a5,a5,s0 - c0010578: 639c ld a5,0(a5) - c001057a: 0592 slli a1,a1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18151 + c001065a: 77fd lui a5,0xfffff + c001065c: 66878793 addi a5,a5,1640 # fffffffffffff668 <_ebss+0xffffffff3fefe542> + c0010660: 001bc583 lbu a1,1(s7) + c0010664: 97a2 add a5,a5,s0 + c0010666: 639c ld a5,0(a5) + c0010668: 0592 slli a1,a1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18159 pc += 1; - c001057c: 002b8913 addi s2,s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18153 + c001066a: 002b8913 addi s2,s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18161 op1 = var_buf[idx]; - c0010580: 00b78a33 add s4,a5,a1 - c0010584: 000a3783 ld a5,0(s4) - c0010588: ecf43823 sd a5,-304(s0) - c001058c: 008a3783 ld a5,8(s4) - c0010590: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18154 + c001066e: 00b78a33 add s4,a5,a1 + c0010672: 000a3783 ld a5,0(s4) + c0010676: ecf43823 sd a5,-304(s0) + c001067a: 008a3783 ld a5,8(s4) + c001067e: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18162 if (JS_VALUE_GET_TAG(op1) == JS_TAG_INT) { - c0010594: 2781 sext.w a5,a5 - c0010596: ef85 bnez a5,c00105ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18155 + c0010682: 2781 sext.w a5,a5 + c0010684: ef85 bnez a5,c00106bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18163 val = JS_VALUE_GET_INT(op1); - c0010598: ed042783 lw a5,-304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18156 + c0010686: ed042783 lw a5,-304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18164 if (unlikely(val == INT32_MIN)) - c001059c: 80000737 lui a4,0x80000 - c00105a0: 02e78763 beq a5,a4,c00105ce + c001068a: 80000737 lui a4,0x80000 + c001068e: 02e78763 beq a5,a4,c00106bc JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00105a4: 9a043023 sd zero,-1632(s0) + c0010692: 9a043023 sd zero,-1632(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18166 var_buf[idx] = JS_NewInt32(ctx, val - 1); - c00105a8: 37fd addiw a5,a5,-1 - c00105aa: 9af42023 sw a5,-1632(s0) - c00105ae: 9a043783 ld a5,-1632(s0) - c00105b2: ee043c23 sd zero,-264(s0) + c0010696: 37fd addiw a5,a5,-1 + c0010698: 9af42023 sw a5,-1632(s0) + c001069c: 9a043783 ld a5,-1632(s0) + c00106a0: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00105b6: 9a043423 sd zero,-1624(s0) - c00105ba: eef43823 sd a5,-272(s0) + c00106a4: 9a043423 sd zero,-1624(s0) + c00106a8: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18158 - c00105be: 00fa3023 sd a5,0(s4) - c00105c2: ef843783 ld a5,-264(s0) - c00105c6: 00fa3423 sd a5,8(s4) - c00105ca: eaffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18163 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18166 + c00106ac: 00fa3023 sd a5,0(s4) + c00106b0: ef843783 ld a5,-264(s0) + c00106b4: 00fa3423 sd a5,8(s4) + c00106b8: eaffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18171 op1 = JS_DupValue(ctx, op1); - c00105ce: ed043503 ld a0,-304(s0) - c00105d2: ed843583 ld a1,-296(s0) - c00105d6: 898f60ef jal ra,c000666e - c00105da: eca43823 sd a0,-304(s0) - c00105de: ecb43c23 sd a1,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18164 + c00106bc: ed043503 ld a0,-304(s0) + c00106c0: ed843583 ld a1,-296(s0) + c00106c4: 898f60ef jal ra,c000675c + c00106c8: eca43823 sd a0,-304(s0) + c00106cc: ecb43c23 sd a1,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18172 if (js_unary_arith_slow(ctx, &op1 + 1, OP_dec)) - c00105e2: 08f00613 li a2,143 - c00105e6: ee040593 addi a1,s0,-288 - c00105ea: 8526 mv a0,s1 - c00105ec: 7660e0ef jal ra,c001ed52 - c00105f0: c119 beqz a0,c00105f6 - c00105f2: fe9fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18166 + c00106d0: 08f00613 li a2,143 + c00106d4: ee040593 addi a1,s0,-288 + c00106d8: 8526 mv a0,s1 + c00106da: 0490e0ef jal ra,c001ef22 + c00106de: c119 beqz a0,c00106e4 + c00106e0: fe9fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18174 set_value(ctx, &var_buf[idx], op1); - c00105f6: ed043603 ld a2,-304(s0) - c00105fa: ed843683 ld a3,-296(s0) - c00105fe: 85d2 mv a1,s4 - c0010600: 8526 mv a0,s1 - c0010602: 981f70ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18169 + c00106e4: ed043603 ld a2,-304(s0) + c00106e8: ed843683 ld a3,-296(s0) + c00106ec: 85d2 mv a1,s4 + c00106ee: 8526 mv a0,s1 + c00106f0: 981f70ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18177 BREAK; - c0010606: e73fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18173 + c00106f4: e73fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18181 op1 = sp[-1]; - c001060a: ff0d3783 ld a5,-16(s10) - c001060e: ecf43823 sd a5,-304(s0) - c0010612: ff8d3783 ld a5,-8(s10) - c0010616: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18174 + c00106f8: ff0d3783 ld a5,-16(s10) + c00106fc: ecf43823 sd a5,-304(s0) + c0010700: ff8d3783 ld a5,-8(s10) + c0010704: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18182 if (JS_VALUE_GET_TAG(op1) == JS_TAG_INT) { - c001061a: ff8d2783 lw a5,-8(s10) - c001061e: eb8d bnez a5,c0010650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18175 + c0010708: ff8d2783 lw a5,-8(s10) + c001070c: eb8d bnez a5,c001073e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18183 sp[-1] = JS_NewInt32(ctx, ~JS_VALUE_GET_INT(op1)); - c0010620: ff0d2783 lw a5,-16(s10) + c001070e: ff0d2783 lw a5,-16(s10) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010624: 9a043823 sd zero,-1616(s0) - c0010628: ee043c23 sd zero,-264(s0) + c0010712: 9a043823 sd zero,-1616(s0) + c0010716: ee043c23 sd zero,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18175 - c001062c: fff7c793 not a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18183 + c001071a: fff7c793 not a5,a5 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010630: 9af42823 sw a5,-1616(s0) - c0010634: 9b043783 ld a5,-1616(s0) - c0010638: 9a043c23 sd zero,-1608(s0) - c001063c: eef43823 sd a5,-272(s0) + c001071e: 9af42823 sw a5,-1616(s0) + c0010722: 9b043783 ld a5,-1616(s0) + c0010726: 9a043c23 sd zero,-1608(s0) + c001072a: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18175 - c0010640: fefd3823 sd a5,-16(s10) - c0010644: ef843783 ld a5,-264(s0) - c0010648: fefd3c23 sd a5,-8(s10) - c001064c: e2dfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18177 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18183 + c001072e: fefd3823 sd a5,-16(s10) + c0010732: ef843783 ld a5,-264(s0) + c0010736: fefd3c23 sd a5,-8(s10) + c001073a: e2dfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18185 if (js_not_slow(ctx, sp)) - c0010650: 85ea mv a1,s10 - c0010652: 8526 mv a0,s1 - c0010654: 0290e0ef jal ra,c001ee7c - c0010658: e119 bnez a0,c001065e - c001065a: e1ffa06f j c000b478 - c001065e: f7dfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18186 + c001073e: 85ea mv a1,s10 + c0010740: 8526 mv a0,s1 + c0010742: 10b0e0ef jal ra,c001f04c + c0010746: e119 bnez a0,c001074c + c0010748: e1ffa06f j c000b566 + c001074c: f7dfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18194 op1 = sp[-2]; - c0010662: fe0d3783 ld a5,-32(s10) - c0010666: e8f43823 sd a5,-368(s0) - c001066a: fe8d3783 ld a5,-24(s10) - c001066e: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18187 + c0010750: fe0d3783 ld a5,-32(s10) + c0010754: e8f43823 sd a5,-368(s0) + c0010758: fe8d3783 ld a5,-24(s10) + c001075c: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18195 op2 = sp[-1]; - c0010672: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18186 + c0010760: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18194 op1 = sp[-2]; - c0010676: fe8d3603 ld a2,-24(s10) - c001067a: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18187 + c0010764: fe8d3603 ld a2,-24(s10) + c0010768: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18195 op2 = sp[-1]; - c001067e: ecf43823 sd a5,-304(s0) - c0010682: ff8d3783 ld a5,-8(s10) - c0010686: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18188 + c001076c: ecf43823 sd a5,-304(s0) + c0010770: ff8d3783 ld a5,-8(s10) + c0010774: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18196 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c001068a: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18187 + c0010778: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18195 op2 = sp[-1]; - c001068e: ff0d2683 lw a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18188 + c001077c: ff0d2683 lw a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18196 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010692: 8fd1 or a5,a5,a2 - c0010694: 2781 sext.w a5,a5 - c0010696: eb85 bnez a5,c00106c6 + c0010780: 8fd1 or a5,a5,a2 + c0010782: 2781 sext.w a5,a5 + c0010784: eb85 bnez a5,c00107b4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010698: 9c043023 sd zero,-1600(s0) + c0010786: 9c043023 sd zero,-1600(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18216 sp[-2] = JS_NewInt32(ctx, v1 << v2); - c001069c: 00d717bb sllw a5,a4,a3 - c00106a0: 9cf42023 sw a5,-1600(s0) - c00106a4: 9c043783 ld a5,-1600(s0) - c00106a8: ee043c23 sd zero,-264(s0) + c001078a: 00d717bb sllw a5,a4,a3 + c001078e: 9cf42023 sw a5,-1600(s0) + c0010792: 9c043783 ld a5,-1600(s0) + c0010796: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00106ac: 9c043423 sd zero,-1592(s0) - c00106b0: eef43823 sd a5,-272(s0) + c001079a: 9c043423 sd zero,-1592(s0) + c001079e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18208 - c00106b4: fefd3023 sd a5,-32(s10) - c00106b8: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18209 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18216 + c00107a2: fefd3023 sd a5,-32(s10) + c00107a6: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18217 sp--; - c00106bc: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18208 + c00107aa: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18216 sp[-2] = JS_NewInt32(ctx, v1 << v2); - c00106be: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18209 + c00107ac: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18217 sp--; - c00106c2: db7fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18214 + c00107b0: db7fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18222 if (js_binary_logic_slow(ctx, sp, opcode)) - c00106c6: 0a100613 li a2,161 - c00106ca: 85ea mv a1,s10 - c00106cc: 8526 mv a0,s1 - c00106ce: 1230e0ef jal ra,c001eff0 - c00106d2: c119 beqz a0,c00106d8 - c00106d4: f07fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18216 + c00107b4: 0a100613 li a2,161 + c00107b8: 85ea mv a1,s10 + c00107ba: 8526 mv a0,s1 + c00107bc: 2050e0ef jal ra,c001f1c0 + c00107c0: c119 beqz a0,c00107c6 + c00107c2: f07fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18224 sp--; - c00106d8: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18219 + c00107c6: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18227 BREAK; - c00106da: d9ffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18223 + c00107c8: d9ffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18231 op1 = sp[-2]; - c00106de: fe0d3783 ld a5,-32(s10) - c00106e2: e8f43823 sd a5,-368(s0) - c00106e6: fe8d3783 ld a5,-24(s10) - c00106ea: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18224 + c00107cc: fe0d3783 ld a5,-32(s10) + c00107d0: e8f43823 sd a5,-368(s0) + c00107d4: fe8d3783 ld a5,-24(s10) + c00107d8: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18232 op2 = sp[-1]; - c00106ee: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18223 + c00107dc: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18231 op1 = sp[-2]; - c00106f2: fe8d3603 ld a2,-24(s10) - c00106f6: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18224 + c00107e0: fe8d3603 ld a2,-24(s10) + c00107e4: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18232 op2 = sp[-1]; - c00106fa: ecf43823 sd a5,-304(s0) - c00106fe: ff8d3783 ld a5,-8(s10) - c0010702: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18225 + c00107e8: ecf43823 sd a5,-304(s0) + c00107ec: ff8d3783 ld a5,-8(s10) + c00107f0: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18233 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010706: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18224 + c00107f4: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18232 op2 = sp[-1]; - c001070a: ff0d2683 lw a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18225 + c00107f8: ff0d2683 lw a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18233 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c001070e: 8fd1 or a5,a5,a2 - c0010710: 2781 sext.w a5,a5 - c0010712: efa1 bnez a5,c001076a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18230 + c00107fc: 8fd1 or a5,a5,a2 + c00107fe: 2781 sext.w a5,a5 + c0010800: efa1 bnez a5,c0010858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18238 sp[-2] = JS_NewUint32(ctx, - c0010714: 00d757bb srlw a5,a4,a3 + c0010802: 00d757bb srlw a5,a4,a3 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0010718: 0407c063 bltz a5,c0010758 + c0010806: 0407c063 bltz a5,c0010846 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001071c: 9c042a23 sw zero,-1580(s0) - c0010720: 9cf42823 sw a5,-1584(s0) - c0010724: 9d043703 ld a4,-1584(s0) - c0010728: 9c043c23 sd zero,-1576(s0) - c001072c: eee43823 sd a4,-272(s0) - c0010730: 4701 li a4,0 + c001080a: 9c042a23 sw zero,-1580(s0) + c001080e: 9cf42823 sw a5,-1584(s0) + c0010812: 9d043703 ld a4,-1584(s0) + c0010816: 9c043c23 sd zero,-1576(s0) + c001081a: eee43823 sd a4,-272(s0) + c001081e: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0010732: eef42823 sw a5,-272(s0) - c0010736: ef043783 ld a5,-272(s0) - c001073a: ef043787 fld fa5,-272(s0) - c001073e: eee43c23 sd a4,-264(s0) + c0010820: eef42823 sw a5,-272(s0) + c0010824: ef043783 ld a5,-272(s0) + c0010828: ef043787 fld fa5,-272(s0) + c001082c: eee43c23 sd a4,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18230 - c0010742: feed3423 sd a4,-24(s10) - c0010746: fefd3027 fsd fa5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18238 + c0010830: feed3423 sd a4,-24(s10) + c0010834: fefd3027 fsd fa5,-32(s10) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 - c001074a: 9ef43023 sd a5,-1568(s0) - c001074e: 9ee43423 sd a4,-1560(s0) + c0010838: 9ef43023 sd a5,-1568(s0) + c001083c: 9ee43423 sd a4,-1560(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18241 sp--; - c0010752: 1d41 addi s10,s10,-16 - c0010754: d25fa06f j c000b478 + c0010840: 1d41 addi s10,s10,-16 + c0010842: d25fa06f j c000b566 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0010758: d21787d3 fcvt.d.wu fa5,a5 - c001075c: 471d li a4,7 - c001075e: e20787d3 fmv.x.d a5,fa5 + c0010846: d21787d3 fcvt.d.wu fa5,a5 + c001084a: 471d li a4,7 + c001084c: e20787d3 fmv.x.d a5,fa5 JS_CallInternal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0010762: eef43827 fsd fa5,-272(s0) - c0010766: 2781 sext.w a5,a5 - c0010768: b7e9 j c0010732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18235 + c0010850: eef43827 fsd fa5,-272(s0) + c0010854: 2781 sext.w a5,a5 + c0010856: b7e9 j c0010820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18243 if (js_shr_slow(ctx, sp)) - c001076a: 85ea mv a1,s10 - c001076c: 8526 mv a0,s1 - c001076e: 78c0e0ef jal ra,c001eefa - c0010772: c119 beqz a0,c0010778 - c0010774: e67fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18237 + c0010858: 85ea mv a1,s10 + c001085a: 8526 mv a0,s1 + c001085c: 06f0e0ef jal ra,c001f0ca + c0010860: c119 beqz a0,c0010866 + c0010862: e67fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18245 sp--; - c0010778: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18240 + c0010866: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18248 BREAK; - c001077a: cfffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18244 + c0010868: cfffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18252 op1 = sp[-2]; - c001077e: fe0d3783 ld a5,-32(s10) - c0010782: e8f43823 sd a5,-368(s0) - c0010786: fe8d3783 ld a5,-24(s10) - c001078a: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18245 + c001086c: fe0d3783 ld a5,-32(s10) + c0010870: e8f43823 sd a5,-368(s0) + c0010874: fe8d3783 ld a5,-24(s10) + c0010878: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18253 op2 = sp[-1]; - c001078e: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18244 + c001087c: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18252 op1 = sp[-2]; - c0010792: fe8d3603 ld a2,-24(s10) - c0010796: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18245 + c0010880: fe8d3603 ld a2,-24(s10) + c0010884: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18253 op2 = sp[-1]; - c001079a: ecf43823 sd a5,-304(s0) - c001079e: ff8d3783 ld a5,-8(s10) - c00107a2: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18246 + c0010888: ecf43823 sd a5,-304(s0) + c001088c: ff8d3783 ld a5,-8(s10) + c0010890: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18254 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c00107a6: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18245 + c0010894: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18253 op2 = sp[-1]; - c00107aa: ff0d2683 lw a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18246 + c0010898: ff0d2683 lw a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18254 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c00107ae: 8fd1 or a5,a5,a2 - c00107b0: 2781 sext.w a5,a5 - c00107b2: eb85 bnez a5,c00107e2 + c001089c: 8fd1 or a5,a5,a2 + c001089e: 2781 sext.w a5,a5 + c00108a0: eb85 bnez a5,c00108d0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00107b4: 9e043823 sd zero,-1552(s0) + c00108a2: 9e043823 sd zero,-1552(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18267 sp[-2] = JS_NewInt32(ctx, - c00107b8: 40d757bb sraw a5,a4,a3 - c00107bc: 9ef42823 sw a5,-1552(s0) - c00107c0: 9f043783 ld a5,-1552(s0) - c00107c4: ee043c23 sd zero,-264(s0) + c00108a6: 40d757bb sraw a5,a4,a3 + c00108aa: 9ef42823 sw a5,-1552(s0) + c00108ae: 9f043783 ld a5,-1552(s0) + c00108b2: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00107c8: 9e043c23 sd zero,-1544(s0) - c00107cc: eef43823 sd a5,-272(s0) + c00108b6: 9e043c23 sd zero,-1544(s0) + c00108ba: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18259 - c00107d0: fefd3023 sd a5,-32(s10) - c00107d4: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18267 + c00108be: fefd3023 sd a5,-32(s10) + c00108c2: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18269 sp--; - c00107d8: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18259 + c00108c6: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18267 sp[-2] = JS_NewInt32(ctx, - c00107da: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18261 + c00108c8: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18269 sp--; - c00107de: c9bfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18266 + c00108cc: c9bfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18274 if (js_binary_logic_slow(ctx, sp, opcode)) - c00107e2: 0a200613 li a2,162 - c00107e6: 85ea mv a1,s10 - c00107e8: 8526 mv a0,s1 - c00107ea: 0070e0ef jal ra,c001eff0 - c00107ee: c119 beqz a0,c00107f4 - c00107f0: debfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18268 + c00108d0: 0a200613 li a2,162 + c00108d4: 85ea mv a1,s10 + c00108d6: 8526 mv a0,s1 + c00108d8: 0e90e0ef jal ra,c001f1c0 + c00108dc: c119 beqz a0,c00108e2 + c00108de: debfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18276 sp--; - c00107f4: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18271 + c00108e2: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18279 BREAK; - c00107f6: c83fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18275 + c00108e4: c83fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18283 op1 = sp[-2]; - c00107fa: fe0d3783 ld a5,-32(s10) - c00107fe: e8f43823 sd a5,-368(s0) - c0010802: fe8d3783 ld a5,-24(s10) - c0010806: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18276 + c00108e8: fe0d3783 ld a5,-32(s10) + c00108ec: e8f43823 sd a5,-368(s0) + c00108f0: fe8d3783 ld a5,-24(s10) + c00108f4: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18284 op2 = sp[-1]; - c001080a: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18275 + c00108f8: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18283 op1 = sp[-2]; - c001080e: fe8d3603 ld a2,-24(s10) - c0010812: fe0d2703 lw a4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18276 + c00108fc: fe8d3603 ld a2,-24(s10) + c0010900: fe0d2703 lw a4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18284 op2 = sp[-1]; - c0010816: ecf43823 sd a5,-304(s0) - c001081a: ff8d3783 ld a5,-8(s10) - c001081e: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18277 + c0010904: ecf43823 sd a5,-304(s0) + c0010908: ff8d3783 ld a5,-8(s10) + c001090c: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18285 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010822: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18276 + c0010910: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18284 op2 = sp[-1]; - c0010826: ff0d2683 lw a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18277 + c0010914: ff0d2683 lw a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18285 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c001082a: 8fd1 or a5,a5,a2 - c001082c: 2781 sext.w a5,a5 - c001082e: eb85 bnez a5,c001085e + c0010918: 8fd1 or a5,a5,a2 + c001091a: 2781 sext.w a5,a5 + c001091c: eb85 bnez a5,c001094c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010830: a0043023 sd zero,-1536(s0) + c001091e: a0043023 sd zero,-1536(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18286 sp[-2] = JS_NewInt32(ctx, - c0010834: 00d777b3 and a5,a4,a3 - c0010838: a0f42023 sw a5,-1536(s0) - c001083c: a0043783 ld a5,-1536(s0) - c0010840: ee043c23 sd zero,-264(s0) + c0010922: 00d777b3 and a5,a4,a3 + c0010926: a0f42023 sw a5,-1536(s0) + c001092a: a0043783 ld a5,-1536(s0) + c001092e: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010844: a0043423 sd zero,-1528(s0) - c0010848: eef43823 sd a5,-272(s0) + c0010932: a0043423 sd zero,-1528(s0) + c0010936: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18278 - c001084c: fefd3023 sd a5,-32(s10) - c0010850: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18286 + c001093a: fefd3023 sd a5,-32(s10) + c001093e: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18289 sp--; - c0010854: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18278 + c0010942: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18286 sp[-2] = JS_NewInt32(ctx, - c0010856: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18281 + c0010944: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18289 sp--; - c001085a: c1ffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18283 + c0010948: c1ffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18291 if (js_binary_logic_slow(ctx, sp, opcode)) - c001085e: 0ae00613 li a2,174 - c0010862: 85ea mv a1,s10 - c0010864: 8526 mv a0,s1 - c0010866: 78a0e0ef jal ra,c001eff0 - c001086a: c119 beqz a0,c0010870 - c001086c: d6ffa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18285 + c001094c: 0ae00613 li a2,174 + c0010950: 85ea mv a1,s10 + c0010952: 8526 mv a0,s1 + c0010954: 06d0e0ef jal ra,c001f1c0 + c0010958: c119 beqz a0,c001095e + c001095a: d6ffa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18293 sp--; - c0010870: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18288 + c001095e: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18296 BREAK; - c0010872: c07fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18292 + c0010960: c07fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18300 op1 = sp[-2]; - c0010876: fe0d3783 ld a5,-32(s10) - c001087a: e8f43823 sd a5,-368(s0) - c001087e: fe8d3783 ld a5,-24(s10) - c0010882: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18293 + c0010964: fe0d3783 ld a5,-32(s10) + c0010968: e8f43823 sd a5,-368(s0) + c001096c: fe8d3783 ld a5,-24(s10) + c0010970: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18301 op2 = sp[-1]; - c0010886: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18292 + c0010974: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18300 op1 = sp[-2]; - c001088a: fe8d3603 ld a2,-24(s10) - c001088e: fe0d2683 lw a3,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18293 + c0010978: fe8d3603 ld a2,-24(s10) + c001097c: fe0d2683 lw a3,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18301 op2 = sp[-1]; - c0010892: ecf43823 sd a5,-304(s0) - c0010896: ff8d3783 ld a5,-8(s10) - c001089a: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18294 + c0010980: ecf43823 sd a5,-304(s0) + c0010984: ff8d3783 ld a5,-8(s10) + c0010988: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18302 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c001089e: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18293 + c001098c: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18301 op2 = sp[-1]; - c00108a2: ff0d2703 lw a4,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18294 + c0010990: ff0d2703 lw a4,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18302 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c00108a6: 8fd1 or a5,a5,a2 - c00108a8: 2781 sext.w a5,a5 - c00108aa: eb85 bnez a5,c00108da + c0010994: 8fd1 or a5,a5,a2 + c0010996: 2781 sext.w a5,a5 + c0010998: eb85 bnez a5,c00109c8 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00108ac: a0043823 sd zero,-1520(s0) + c001099a: a0043823 sd zero,-1520(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18295 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18303 sp[-2] = JS_NewInt32(ctx, - c00108b0: 00d767b3 or a5,a4,a3 - c00108b4: a0f42823 sw a5,-1520(s0) - c00108b8: a1043783 ld a5,-1520(s0) - c00108bc: ee043c23 sd zero,-264(s0) + c001099e: 00d767b3 or a5,a4,a3 + c00109a2: a0f42823 sw a5,-1520(s0) + c00109a6: a1043783 ld a5,-1520(s0) + c00109aa: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00108c0: a0043c23 sd zero,-1512(s0) - c00108c4: eef43823 sd a5,-272(s0) + c00109ae: a0043c23 sd zero,-1512(s0) + c00109b2: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18295 - c00108c8: fefd3023 sd a5,-32(s10) - c00108cc: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18303 + c00109b6: fefd3023 sd a5,-32(s10) + c00109ba: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18306 sp--; - c00108d0: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18295 + c00109be: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18303 sp[-2] = JS_NewInt32(ctx, - c00108d2: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18298 + c00109c0: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18306 sp--; - c00108d6: ba3fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18300 + c00109c4: ba3fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18308 if (js_binary_logic_slow(ctx, sp, opcode)) - c00108da: 0b000613 li a2,176 - c00108de: 85ea mv a1,s10 - c00108e0: 8526 mv a0,s1 - c00108e2: 70e0e0ef jal ra,c001eff0 - c00108e6: c119 beqz a0,c00108ec - c00108e8: cf3fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18302 + c00109c8: 0b000613 li a2,176 + c00109cc: 85ea mv a1,s10 + c00109ce: 8526 mv a0,s1 + c00109d0: 7f00e0ef jal ra,c001f1c0 + c00109d4: c119 beqz a0,c00109da + c00109d6: cf3fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18310 sp--; - c00108ec: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18305 + c00109da: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18313 BREAK; - c00108ee: b8bfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18309 + c00109dc: b8bfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18317 op1 = sp[-2]; - c00108f2: fe0d3783 ld a5,-32(s10) - c00108f6: e8f43823 sd a5,-368(s0) - c00108fa: fe8d3783 ld a5,-24(s10) - c00108fe: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18310 + c00109e0: fe0d3783 ld a5,-32(s10) + c00109e4: e8f43823 sd a5,-368(s0) + c00109e8: fe8d3783 ld a5,-24(s10) + c00109ec: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18318 op2 = sp[-1]; - c0010902: ff0d3783 ld a5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18309 + c00109f0: ff0d3783 ld a5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18317 op1 = sp[-2]; - c0010906: fe8d3603 ld a2,-24(s10) - c001090a: fe0d2683 lw a3,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18310 + c00109f4: fe8d3603 ld a2,-24(s10) + c00109f8: fe0d2683 lw a3,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18318 op2 = sp[-1]; - c001090e: ecf43823 sd a5,-304(s0) - c0010912: ff8d3783 ld a5,-8(s10) - c0010916: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18311 + c00109fc: ecf43823 sd a5,-304(s0) + c0010a00: ff8d3783 ld a5,-8(s10) + c0010a04: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18319 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c001091a: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18310 + c0010a08: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18318 op2 = sp[-1]; - c001091e: ff0d2703 lw a4,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18311 + c0010a0c: ff0d2703 lw a4,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18319 if (likely(JS_VALUE_IS_BOTH_INT(op1, op2))) { - c0010922: 8fd1 or a5,a5,a2 - c0010924: 2781 sext.w a5,a5 - c0010926: eb85 bnez a5,c0010956 + c0010a10: 8fd1 or a5,a5,a2 + c0010a12: 2781 sext.w a5,a5 + c0010a14: eb85 bnez a5,c0010a44 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0010928: a2043023 sd zero,-1504(s0) + c0010a16: a2043023 sd zero,-1504(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18320 sp[-2] = JS_NewInt32(ctx, - c001092c: 00d747b3 xor a5,a4,a3 - c0010930: a2f42023 sw a5,-1504(s0) - c0010934: a2043783 ld a5,-1504(s0) - c0010938: ee043c23 sd zero,-264(s0) + c0010a1a: 00d747b3 xor a5,a4,a3 + c0010a1e: a2f42023 sw a5,-1504(s0) + c0010a22: a2043783 ld a5,-1504(s0) + c0010a26: ee043c23 sd zero,-264(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001093c: a2043423 sd zero,-1496(s0) - c0010940: eef43823 sd a5,-272(s0) + c0010a2a: a2043423 sd zero,-1496(s0) + c0010a2e: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18312 - c0010944: fefd3023 sd a5,-32(s10) - c0010948: ef843783 ld a5,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18320 + c0010a32: fefd3023 sd a5,-32(s10) + c0010a36: ef843783 ld a5,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18323 sp--; - c001094c: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18312 + c0010a3a: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18320 sp[-2] = JS_NewInt32(ctx, - c001094e: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18315 + c0010a3c: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18323 sp--; - c0010952: b27fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18317 + c0010a40: b27fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18325 if (js_binary_logic_slow(ctx, sp, opcode)) - c0010956: 0af00613 li a2,175 - c001095a: 85ea mv a1,s10 - c001095c: 8526 mv a0,s1 - c001095e: 6920e0ef jal ra,c001eff0 - c0010962: c119 beqz a0,c0010968 - c0010964: c77fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18319 + c0010a44: 0af00613 li a2,175 + c0010a48: 85ea mv a1,s10 + c0010a4a: 8526 mv a0,s1 + c0010a4c: 7740e0ef jal ra,c001f1c0 + c0010a50: c119 beqz a0,c0010a56 + c0010a52: c77fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18327 sp--; - c0010968: 1d41 addi s10,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18322 + c0010a56: 1d41 addi s10,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18330 BREAK; - c001096a: b0ffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18342 + c0010a58: b0ffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18350 OP_CMP(OP_lt, <, js_relational_slow(ctx, sp, opcode)); - c001096e: fe0d3783 ld a5,-32(s10) - c0010972: e8f43823 sd a5,-368(s0) - c0010976: fe8d3783 ld a5,-24(s10) - c001097a: e8f43c23 sd a5,-360(s0) - c001097e: ff0d3783 ld a5,-16(s10) - c0010982: fe8d3603 ld a2,-24(s10) - c0010986: fe0d2703 lw a4,-32(s10) - c001098a: ecf43823 sd a5,-304(s0) - c001098e: ff8d3783 ld a5,-8(s10) - c0010992: ecf43c23 sd a5,-296(s0) - c0010996: ff8d3783 ld a5,-8(s10) - c001099a: ff0d2683 lw a3,-16(s10) - c001099e: 8fd1 or a5,a5,a2 - c00109a0: 2781 sext.w a5,a5 - c00109a2: eb8d bnez a5,c00109d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18342 (discriminator 1) - c00109a4: 00d727b3 slt a5,a4,a3 + c0010a5c: fe0d3783 ld a5,-32(s10) + c0010a60: e8f43823 sd a5,-368(s0) + c0010a64: fe8d3783 ld a5,-24(s10) + c0010a68: e8f43c23 sd a5,-360(s0) + c0010a6c: ff0d3783 ld a5,-16(s10) + c0010a70: fe8d3603 ld a2,-24(s10) + c0010a74: fe0d2703 lw a4,-32(s10) + c0010a78: ecf43823 sd a5,-304(s0) + c0010a7c: ff8d3783 ld a5,-8(s10) + c0010a80: ecf43c23 sd a5,-296(s0) + c0010a84: ff8d3783 ld a5,-8(s10) + c0010a88: ff0d2683 lw a3,-16(s10) + c0010a8c: 8fd1 or a5,a5,a2 + c0010a8e: 2781 sext.w a5,a5 + c0010a90: eb8d bnez a5,c0010ac2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18350 (discriminator 1) + c0010a92: 00d727b3 slt a5,a4,a3 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00109a8: a2042a23 sw zero,-1484(s0) - c00109ac: a2f42823 sw a5,-1488(s0) - c00109b0: a3043783 ld a5,-1488(s0) - c00109b4: 4705 li a4,1 - c00109b6: eee43c23 sd a4,-264(s0) - c00109ba: eef43823 sd a5,-272(s0) + c0010a96: a2042a23 sw zero,-1484(s0) + c0010a9a: a2f42823 sw a5,-1488(s0) + c0010a9e: a3043783 ld a5,-1488(s0) + c0010aa2: 4705 li a4,1 + c0010aa4: eee43c23 sd a4,-264(s0) + c0010aa8: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18342 (discriminator 1) - c00109be: fefd3023 sd a5,-32(s10) - c00109c2: ef843783 ld a5,-264(s0) - c00109c6: a2e43c23 sd a4,-1480(s0) - c00109ca: 1d41 addi s10,s10,-16 - c00109cc: fefd3c23 sd a5,-8(s10) - c00109d0: aa9fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18342 (discriminator 2) - c00109d4: 0a400613 li a2,164 - c00109d8: 85ea mv a1,s10 - c00109da: 8526 mv a0,s1 - c00109dc: 3070f0ef jal ra,c00204e2 - c00109e0: c119 beqz a0,c00109e6 - c00109e2: bf9fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18342 (discriminator 4) - c00109e6: 1d41 addi s10,s10,-16 - c00109e8: a91fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18343 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18350 (discriminator 1) + c0010aac: fefd3023 sd a5,-32(s10) + c0010ab0: ef843783 ld a5,-264(s0) + c0010ab4: a2e43c23 sd a4,-1480(s0) + c0010ab8: 1d41 addi s10,s10,-16 + c0010aba: fefd3c23 sd a5,-8(s10) + c0010abe: aa9fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18350 (discriminator 2) + c0010ac2: 0a400613 li a2,164 + c0010ac6: 85ea mv a1,s10 + c0010ac8: 8526 mv a0,s1 + c0010aca: 3e90f0ef jal ra,c00206b2 + c0010ace: c119 beqz a0,c0010ad4 + c0010ad0: bf9fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18350 (discriminator 4) + c0010ad4: 1d41 addi s10,s10,-16 + c0010ad6: a91fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18351 OP_CMP(OP_lte, <=, js_relational_slow(ctx, sp, opcode)); - c00109ec: fe0d3783 ld a5,-32(s10) - c00109f0: e8f43823 sd a5,-368(s0) - c00109f4: fe8d3783 ld a5,-24(s10) - c00109f8: e8f43c23 sd a5,-360(s0) - c00109fc: ff0d3703 ld a4,-16(s10) - c0010a00: fe8d3603 ld a2,-24(s10) - c0010a04: fe0d2783 lw a5,-32(s10) - c0010a08: ece43823 sd a4,-304(s0) - c0010a0c: ff8d3703 ld a4,-8(s10) - c0010a10: ece43c23 sd a4,-296(s0) - c0010a14: ff8d3703 ld a4,-8(s10) - c0010a18: ff0d2683 lw a3,-16(s10) - c0010a1c: 8f51 or a4,a4,a2 - c0010a1e: 2701 sext.w a4,a4 - c0010a20: eb1d bnez a4,c0010a56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18343 (discriminator 1) - c0010a22: 00f6a7b3 slt a5,a3,a5 - c0010a26: 0017c793 xori a5,a5,1 + c0010ada: fe0d3783 ld a5,-32(s10) + c0010ade: e8f43823 sd a5,-368(s0) + c0010ae2: fe8d3783 ld a5,-24(s10) + c0010ae6: e8f43c23 sd a5,-360(s0) + c0010aea: ff0d3703 ld a4,-16(s10) + c0010aee: fe8d3603 ld a2,-24(s10) + c0010af2: fe0d2783 lw a5,-32(s10) + c0010af6: ece43823 sd a4,-304(s0) + c0010afa: ff8d3703 ld a4,-8(s10) + c0010afe: ece43c23 sd a4,-296(s0) + c0010b02: ff8d3703 ld a4,-8(s10) + c0010b06: ff0d2683 lw a3,-16(s10) + c0010b0a: 8f51 or a4,a4,a2 + c0010b0c: 2701 sext.w a4,a4 + c0010b0e: eb1d bnez a4,c0010b44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18351 (discriminator 1) + c0010b10: 00f6a7b3 slt a5,a3,a5 + c0010b14: 0017c793 xori a5,a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010a2a: a4042223 sw zero,-1468(s0) - c0010a2e: a4f42023 sw a5,-1472(s0) - c0010a32: a4043783 ld a5,-1472(s0) - c0010a36: 4705 li a4,1 - c0010a38: eee43c23 sd a4,-264(s0) - c0010a3c: eef43823 sd a5,-272(s0) + c0010b18: a4042223 sw zero,-1468(s0) + c0010b1c: a4f42023 sw a5,-1472(s0) + c0010b20: a4043783 ld a5,-1472(s0) + c0010b24: 4705 li a4,1 + c0010b26: eee43c23 sd a4,-264(s0) + c0010b2a: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18343 (discriminator 1) - c0010a40: fefd3023 sd a5,-32(s10) - c0010a44: ef843783 ld a5,-264(s0) - c0010a48: a4e43423 sd a4,-1464(s0) - c0010a4c: 1d41 addi s10,s10,-16 - c0010a4e: fefd3c23 sd a5,-8(s10) - c0010a52: a27fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18343 (discriminator 2) - c0010a56: 0a500613 li a2,165 - c0010a5a: 85ea mv a1,s10 - c0010a5c: 8526 mv a0,s1 - c0010a5e: 2850f0ef jal ra,c00204e2 - c0010a62: c119 beqz a0,c0010a68 - c0010a64: b77fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18343 (discriminator 4) - c0010a68: 1d41 addi s10,s10,-16 - c0010a6a: a0ffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18351 (discriminator 1) + c0010b2e: fefd3023 sd a5,-32(s10) + c0010b32: ef843783 ld a5,-264(s0) + c0010b36: a4e43423 sd a4,-1464(s0) + c0010b3a: 1d41 addi s10,s10,-16 + c0010b3c: fefd3c23 sd a5,-8(s10) + c0010b40: a27fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18351 (discriminator 2) + c0010b44: 0a500613 li a2,165 + c0010b48: 85ea mv a1,s10 + c0010b4a: 8526 mv a0,s1 + c0010b4c: 3670f0ef jal ra,c00206b2 + c0010b50: c119 beqz a0,c0010b56 + c0010b52: b77fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18351 (discriminator 4) + c0010b56: 1d41 addi s10,s10,-16 + c0010b58: a0ffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18352 OP_CMP(OP_gt, >, js_relational_slow(ctx, sp, opcode)); - c0010a6e: fe0d3783 ld a5,-32(s10) - c0010a72: e8f43823 sd a5,-368(s0) - c0010a76: fe8d3783 ld a5,-24(s10) - c0010a7a: e8f43c23 sd a5,-360(s0) - c0010a7e: ff0d3783 ld a5,-16(s10) - c0010a82: fe8d3603 ld a2,-24(s10) - c0010a86: fe0d2683 lw a3,-32(s10) - c0010a8a: ecf43823 sd a5,-304(s0) - c0010a8e: ff8d3783 ld a5,-8(s10) - c0010a92: ecf43c23 sd a5,-296(s0) - c0010a96: ff8d3783 ld a5,-8(s10) - c0010a9a: ff0d2703 lw a4,-16(s10) - c0010a9e: 8fd1 or a5,a5,a2 - c0010aa0: 2781 sext.w a5,a5 - c0010aa2: eb8d bnez a5,c0010ad4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18344 (discriminator 1) - c0010aa4: 00d727b3 slt a5,a4,a3 + c0010b5c: fe0d3783 ld a5,-32(s10) + c0010b60: e8f43823 sd a5,-368(s0) + c0010b64: fe8d3783 ld a5,-24(s10) + c0010b68: e8f43c23 sd a5,-360(s0) + c0010b6c: ff0d3783 ld a5,-16(s10) + c0010b70: fe8d3603 ld a2,-24(s10) + c0010b74: fe0d2683 lw a3,-32(s10) + c0010b78: ecf43823 sd a5,-304(s0) + c0010b7c: ff8d3783 ld a5,-8(s10) + c0010b80: ecf43c23 sd a5,-296(s0) + c0010b84: ff8d3783 ld a5,-8(s10) + c0010b88: ff0d2703 lw a4,-16(s10) + c0010b8c: 8fd1 or a5,a5,a2 + c0010b8e: 2781 sext.w a5,a5 + c0010b90: eb8d bnez a5,c0010bc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18352 (discriminator 1) + c0010b92: 00d727b3 slt a5,a4,a3 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010aa8: a4042a23 sw zero,-1452(s0) - c0010aac: a4f42823 sw a5,-1456(s0) - c0010ab0: a5043783 ld a5,-1456(s0) - c0010ab4: 4705 li a4,1 - c0010ab6: eee43c23 sd a4,-264(s0) - c0010aba: eef43823 sd a5,-272(s0) + c0010b96: a4042a23 sw zero,-1452(s0) + c0010b9a: a4f42823 sw a5,-1456(s0) + c0010b9e: a5043783 ld a5,-1456(s0) + c0010ba2: 4705 li a4,1 + c0010ba4: eee43c23 sd a4,-264(s0) + c0010ba8: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18344 (discriminator 1) - c0010abe: fefd3023 sd a5,-32(s10) - c0010ac2: ef843783 ld a5,-264(s0) - c0010ac6: a4e43c23 sd a4,-1448(s0) - c0010aca: 1d41 addi s10,s10,-16 - c0010acc: fefd3c23 sd a5,-8(s10) - c0010ad0: 9a9fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18344 (discriminator 2) - c0010ad4: 0a600613 li a2,166 - c0010ad8: 85ea mv a1,s10 - c0010ada: 8526 mv a0,s1 - c0010adc: 2070f0ef jal ra,c00204e2 - c0010ae0: c119 beqz a0,c0010ae6 - c0010ae2: af9fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18344 (discriminator 4) - c0010ae6: 1d41 addi s10,s10,-16 - c0010ae8: 991fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18345 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18352 (discriminator 1) + c0010bac: fefd3023 sd a5,-32(s10) + c0010bb0: ef843783 ld a5,-264(s0) + c0010bb4: a4e43c23 sd a4,-1448(s0) + c0010bb8: 1d41 addi s10,s10,-16 + c0010bba: fefd3c23 sd a5,-8(s10) + c0010bbe: 9a9fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18352 (discriminator 2) + c0010bc2: 0a600613 li a2,166 + c0010bc6: 85ea mv a1,s10 + c0010bc8: 8526 mv a0,s1 + c0010bca: 2e90f0ef jal ra,c00206b2 + c0010bce: c119 beqz a0,c0010bd4 + c0010bd0: af9fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18352 (discriminator 4) + c0010bd4: 1d41 addi s10,s10,-16 + c0010bd6: 991fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18353 OP_CMP(OP_gte, >=, js_relational_slow(ctx, sp, opcode)); - c0010aec: fe0d3783 ld a5,-32(s10) - c0010af0: e8f43823 sd a5,-368(s0) - c0010af4: fe8d3783 ld a5,-24(s10) - c0010af8: e8f43c23 sd a5,-360(s0) - c0010afc: ff0d3783 ld a5,-16(s10) - c0010b00: fe8d3603 ld a2,-24(s10) - c0010b04: fe0d2683 lw a3,-32(s10) - c0010b08: ecf43823 sd a5,-304(s0) - c0010b0c: ff8d3783 ld a5,-8(s10) - c0010b10: ecf43c23 sd a5,-296(s0) - c0010b14: ff8d3703 ld a4,-8(s10) - c0010b18: ff0d2783 lw a5,-16(s10) - c0010b1c: 8f51 or a4,a4,a2 - c0010b1e: 2701 sext.w a4,a4 - c0010b20: eb1d bnez a4,c0010b56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18345 (discriminator 1) - c0010b22: 00f6a7b3 slt a5,a3,a5 - c0010b26: 0017c793 xori a5,a5,1 + c0010bda: fe0d3783 ld a5,-32(s10) + c0010bde: e8f43823 sd a5,-368(s0) + c0010be2: fe8d3783 ld a5,-24(s10) + c0010be6: e8f43c23 sd a5,-360(s0) + c0010bea: ff0d3783 ld a5,-16(s10) + c0010bee: fe8d3603 ld a2,-24(s10) + c0010bf2: fe0d2683 lw a3,-32(s10) + c0010bf6: ecf43823 sd a5,-304(s0) + c0010bfa: ff8d3783 ld a5,-8(s10) + c0010bfe: ecf43c23 sd a5,-296(s0) + c0010c02: ff8d3703 ld a4,-8(s10) + c0010c06: ff0d2783 lw a5,-16(s10) + c0010c0a: 8f51 or a4,a4,a2 + c0010c0c: 2701 sext.w a4,a4 + c0010c0e: eb1d bnez a4,c0010c44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18353 (discriminator 1) + c0010c10: 00f6a7b3 slt a5,a3,a5 + c0010c14: 0017c793 xori a5,a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010b2a: a6042223 sw zero,-1436(s0) - c0010b2e: a6f42023 sw a5,-1440(s0) - c0010b32: a6043783 ld a5,-1440(s0) - c0010b36: 4705 li a4,1 - c0010b38: eee43c23 sd a4,-264(s0) - c0010b3c: eef43823 sd a5,-272(s0) + c0010c18: a6042223 sw zero,-1436(s0) + c0010c1c: a6f42023 sw a5,-1440(s0) + c0010c20: a6043783 ld a5,-1440(s0) + c0010c24: 4705 li a4,1 + c0010c26: eee43c23 sd a4,-264(s0) + c0010c2a: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18345 (discriminator 1) - c0010b40: fefd3023 sd a5,-32(s10) - c0010b44: ef843783 ld a5,-264(s0) - c0010b48: a6e43423 sd a4,-1432(s0) - c0010b4c: 1d41 addi s10,s10,-16 - c0010b4e: fefd3c23 sd a5,-8(s10) - c0010b52: 927fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18345 (discriminator 2) - c0010b56: 0a700613 li a2,167 - c0010b5a: 85ea mv a1,s10 - c0010b5c: 8526 mv a0,s1 - c0010b5e: 1850f0ef jal ra,c00204e2 - c0010b62: c119 beqz a0,c0010b68 - c0010b64: a77fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18345 (discriminator 4) - c0010b68: 1d41 addi s10,s10,-16 - c0010b6a: 90ffa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18353 (discriminator 1) + c0010c2e: fefd3023 sd a5,-32(s10) + c0010c32: ef843783 ld a5,-264(s0) + c0010c36: a6e43423 sd a4,-1432(s0) + c0010c3a: 1d41 addi s10,s10,-16 + c0010c3c: fefd3c23 sd a5,-8(s10) + c0010c40: 927fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18353 (discriminator 2) + c0010c44: 0a700613 li a2,167 + c0010c48: 85ea mv a1,s10 + c0010c4a: 8526 mv a0,s1 + c0010c4c: 2670f0ef jal ra,c00206b2 + c0010c50: c119 beqz a0,c0010c56 + c0010c52: a77fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18353 (discriminator 4) + c0010c56: 1d41 addi s10,s10,-16 + c0010c58: 90ffa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18354 OP_CMP(OP_eq, ==, js_eq_slow(ctx, sp, 0)); - c0010b6e: fe0d3783 ld a5,-32(s10) - c0010b72: e8f43823 sd a5,-368(s0) - c0010b76: fe8d3783 ld a5,-24(s10) - c0010b7a: e8f43c23 sd a5,-360(s0) - c0010b7e: ff0d3703 ld a4,-16(s10) - c0010b82: fe8d3603 ld a2,-24(s10) - c0010b86: fe0d2783 lw a5,-32(s10) - c0010b8a: ece43823 sd a4,-304(s0) - c0010b8e: ff8d3703 ld a4,-8(s10) - c0010b92: ece43c23 sd a4,-296(s0) - c0010b96: ff8d3703 ld a4,-8(s10) - c0010b9a: ff0d2683 lw a3,-16(s10) - c0010b9e: 8f51 or a4,a4,a2 - c0010ba0: 2701 sext.w a4,a4 - c0010ba2: eb15 bnez a4,c0010bd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18346 (discriminator 1) - c0010ba4: 8f95 sub a5,a5,a3 - c0010ba6: 0017b793 seqz a5,a5 + c0010c5c: fe0d3783 ld a5,-32(s10) + c0010c60: e8f43823 sd a5,-368(s0) + c0010c64: fe8d3783 ld a5,-24(s10) + c0010c68: e8f43c23 sd a5,-360(s0) + c0010c6c: ff0d3703 ld a4,-16(s10) + c0010c70: fe8d3603 ld a2,-24(s10) + c0010c74: fe0d2783 lw a5,-32(s10) + c0010c78: ece43823 sd a4,-304(s0) + c0010c7c: ff8d3703 ld a4,-8(s10) + c0010c80: ece43c23 sd a4,-296(s0) + c0010c84: ff8d3703 ld a4,-8(s10) + c0010c88: ff0d2683 lw a3,-16(s10) + c0010c8c: 8f51 or a4,a4,a2 + c0010c8e: 2701 sext.w a4,a4 + c0010c90: eb15 bnez a4,c0010cc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18354 (discriminator 1) + c0010c92: 8f95 sub a5,a5,a3 + c0010c94: 0017b793 seqz a5,a5 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010baa: a6042a23 sw zero,-1420(s0) - c0010bae: a6f42823 sw a5,-1424(s0) - c0010bb2: a7043783 ld a5,-1424(s0) - c0010bb6: 4705 li a4,1 - c0010bb8: eee43c23 sd a4,-264(s0) - c0010bbc: eef43823 sd a5,-272(s0) + c0010c98: a6042a23 sw zero,-1420(s0) + c0010c9c: a6f42823 sw a5,-1424(s0) + c0010ca0: a7043783 ld a5,-1424(s0) + c0010ca4: 4705 li a4,1 + c0010ca6: eee43c23 sd a4,-264(s0) + c0010caa: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18346 (discriminator 1) - c0010bc0: fefd3023 sd a5,-32(s10) - c0010bc4: ef843783 ld a5,-264(s0) - c0010bc8: a6e43c23 sd a4,-1416(s0) - c0010bcc: 1d41 addi s10,s10,-16 - c0010bce: fefd3c23 sd a5,-8(s10) - c0010bd2: 8a7fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18346 (discriminator 2) - c0010bd6: 4601 li a2,0 - c0010bd8: 85ea mv a1,s10 - c0010bda: 8526 mv a0,s1 - c0010bdc: 3390f0ef jal ra,c0020714 - c0010be0: c119 beqz a0,c0010be6 - c0010be2: 9f9fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18346 (discriminator 4) - c0010be6: 1d41 addi s10,s10,-16 - c0010be8: 891fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18347 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18354 (discriminator 1) + c0010cae: fefd3023 sd a5,-32(s10) + c0010cb2: ef843783 ld a5,-264(s0) + c0010cb6: a6e43c23 sd a4,-1416(s0) + c0010cba: 1d41 addi s10,s10,-16 + c0010cbc: fefd3c23 sd a5,-8(s10) + c0010cc0: 8a7fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18354 (discriminator 2) + c0010cc4: 4601 li a2,0 + c0010cc6: 85ea mv a1,s10 + c0010cc8: 8526 mv a0,s1 + c0010cca: 41b0f0ef jal ra,c00208e4 + c0010cce: c119 beqz a0,c0010cd4 + c0010cd0: 9f9fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18354 (discriminator 4) + c0010cd4: 1d41 addi s10,s10,-16 + c0010cd6: 891fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18355 OP_CMP(OP_neq, !=, js_eq_slow(ctx, sp, 1)); - c0010bec: fe0d3783 ld a5,-32(s10) - c0010bf0: e8f43823 sd a5,-368(s0) - c0010bf4: fe8d3783 ld a5,-24(s10) - c0010bf8: e8f43c23 sd a5,-360(s0) - c0010bfc: ff0d3703 ld a4,-16(s10) - c0010c00: fe8d3603 ld a2,-24(s10) - c0010c04: fe0d2783 lw a5,-32(s10) - c0010c08: ece43823 sd a4,-304(s0) - c0010c0c: ff8d3703 ld a4,-8(s10) - c0010c10: ece43c23 sd a4,-296(s0) - c0010c14: ff8d3703 ld a4,-8(s10) - c0010c18: ff0d2683 lw a3,-16(s10) - c0010c1c: 8f51 or a4,a4,a2 - c0010c1e: 2701 sext.w a4,a4 - c0010c20: eb15 bnez a4,c0010c54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18347 (discriminator 1) - c0010c22: 8f95 sub a5,a5,a3 - c0010c24: 00f037b3 snez a5,a5 + c0010cda: fe0d3783 ld a5,-32(s10) + c0010cde: e8f43823 sd a5,-368(s0) + c0010ce2: fe8d3783 ld a5,-24(s10) + c0010ce6: e8f43c23 sd a5,-360(s0) + c0010cea: ff0d3703 ld a4,-16(s10) + c0010cee: fe8d3603 ld a2,-24(s10) + c0010cf2: fe0d2783 lw a5,-32(s10) + c0010cf6: ece43823 sd a4,-304(s0) + c0010cfa: ff8d3703 ld a4,-8(s10) + c0010cfe: ece43c23 sd a4,-296(s0) + c0010d02: ff8d3703 ld a4,-8(s10) + c0010d06: ff0d2683 lw a3,-16(s10) + c0010d0a: 8f51 or a4,a4,a2 + c0010d0c: 2701 sext.w a4,a4 + c0010d0e: eb15 bnez a4,c0010d42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18355 (discriminator 1) + c0010d10: 8f95 sub a5,a5,a3 + c0010d12: 00f037b3 snez a5,a5 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010c28: a8042223 sw zero,-1404(s0) - c0010c2c: a8f42023 sw a5,-1408(s0) - c0010c30: a8043783 ld a5,-1408(s0) - c0010c34: 4705 li a4,1 - c0010c36: eee43c23 sd a4,-264(s0) - c0010c3a: eef43823 sd a5,-272(s0) + c0010d16: a8042223 sw zero,-1404(s0) + c0010d1a: a8f42023 sw a5,-1408(s0) + c0010d1e: a8043783 ld a5,-1408(s0) + c0010d22: 4705 li a4,1 + c0010d24: eee43c23 sd a4,-264(s0) + c0010d28: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18347 (discriminator 1) - c0010c3e: fefd3023 sd a5,-32(s10) - c0010c42: ef843783 ld a5,-264(s0) - c0010c46: a8e43423 sd a4,-1400(s0) - c0010c4a: 1d41 addi s10,s10,-16 - c0010c4c: fefd3c23 sd a5,-8(s10) - c0010c50: 829fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18347 (discriminator 2) - c0010c54: 4605 li a2,1 - c0010c56: 85ea mv a1,s10 - c0010c58: 8526 mv a0,s1 - c0010c5a: 2bb0f0ef jal ra,c0020714 - c0010c5e: c119 beqz a0,c0010c64 - c0010c60: 97bfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18347 (discriminator 4) - c0010c64: 1d41 addi s10,s10,-16 - c0010c66: 813fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18355 (discriminator 1) + c0010d2c: fefd3023 sd a5,-32(s10) + c0010d30: ef843783 ld a5,-264(s0) + c0010d34: a8e43423 sd a4,-1400(s0) + c0010d38: 1d41 addi s10,s10,-16 + c0010d3a: fefd3c23 sd a5,-8(s10) + c0010d3e: 829fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18355 (discriminator 2) + c0010d42: 4605 li a2,1 + c0010d44: 85ea mv a1,s10 + c0010d46: 8526 mv a0,s1 + c0010d48: 39d0f0ef jal ra,c00208e4 + c0010d4c: c119 beqz a0,c0010d52 + c0010d4e: 97bfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18355 (discriminator 4) + c0010d52: 1d41 addi s10,s10,-16 + c0010d54: 813fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18356 OP_CMP(OP_strict_eq, ==, js_strict_eq_slow(ctx, sp, 0)); - c0010c6a: fe0d3783 ld a5,-32(s10) - c0010c6e: e8f43823 sd a5,-368(s0) - c0010c72: fe8d3783 ld a5,-24(s10) - c0010c76: e8f43c23 sd a5,-360(s0) - c0010c7a: ff0d3783 ld a5,-16(s10) - c0010c7e: fe8d3603 ld a2,-24(s10) - c0010c82: fe0d2683 lw a3,-32(s10) - c0010c86: ecf43823 sd a5,-304(s0) - c0010c8a: ff8d3783 ld a5,-8(s10) - c0010c8e: ecf43c23 sd a5,-296(s0) - c0010c92: ff8d3703 ld a4,-8(s10) - c0010c96: ff0d2783 lw a5,-16(s10) - c0010c9a: 8f51 or a4,a4,a2 - c0010c9c: 2701 sext.w a4,a4 - c0010c9e: eb15 bnez a4,c0010cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18348 (discriminator 1) - c0010ca0: 8f95 sub a5,a5,a3 - c0010ca2: 0017b793 seqz a5,a5 + c0010d58: fe0d3783 ld a5,-32(s10) + c0010d5c: e8f43823 sd a5,-368(s0) + c0010d60: fe8d3783 ld a5,-24(s10) + c0010d64: e8f43c23 sd a5,-360(s0) + c0010d68: ff0d3783 ld a5,-16(s10) + c0010d6c: fe8d3603 ld a2,-24(s10) + c0010d70: fe0d2683 lw a3,-32(s10) + c0010d74: ecf43823 sd a5,-304(s0) + c0010d78: ff8d3783 ld a5,-8(s10) + c0010d7c: ecf43c23 sd a5,-296(s0) + c0010d80: ff8d3703 ld a4,-8(s10) + c0010d84: ff0d2783 lw a5,-16(s10) + c0010d88: 8f51 or a4,a4,a2 + c0010d8a: 2701 sext.w a4,a4 + c0010d8c: eb15 bnez a4,c0010dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18356 (discriminator 1) + c0010d8e: 8f95 sub a5,a5,a3 + c0010d90: 0017b793 seqz a5,a5 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010ca6: a8042a23 sw zero,-1388(s0) - c0010caa: a8f42823 sw a5,-1392(s0) - c0010cae: a9043783 ld a5,-1392(s0) - c0010cb2: 4705 li a4,1 - c0010cb4: eee43c23 sd a4,-264(s0) - c0010cb8: eef43823 sd a5,-272(s0) + c0010d94: a8042a23 sw zero,-1388(s0) + c0010d98: a8f42823 sw a5,-1392(s0) + c0010d9c: a9043783 ld a5,-1392(s0) + c0010da0: 4705 li a4,1 + c0010da2: eee43c23 sd a4,-264(s0) + c0010da6: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18348 (discriminator 1) - c0010cbc: fefd3023 sd a5,-32(s10) - c0010cc0: ef843783 ld a5,-264(s0) - c0010cc4: a8e43c23 sd a4,-1384(s0) - c0010cc8: 1d41 addi s10,s10,-16 - c0010cca: fefd3c23 sd a5,-8(s10) - c0010cce: faafa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18348 (discriminator 2) - c0010cd2: 4601 li a2,0 - c0010cd4: 85ea mv a1,s10 - c0010cd6: 8526 mv a0,s1 - c0010cd8: 8d2f70ef jal ra,c0007daa - c0010cdc: c119 beqz a0,c0010ce2 - c0010cde: 8fdfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18348 (discriminator 4) - c0010ce2: 1d41 addi s10,s10,-16 - c0010ce4: f94fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18349 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18356 (discriminator 1) + c0010daa: fefd3023 sd a5,-32(s10) + c0010dae: ef843783 ld a5,-264(s0) + c0010db2: a8e43c23 sd a4,-1384(s0) + c0010db6: 1d41 addi s10,s10,-16 + c0010db8: fefd3c23 sd a5,-8(s10) + c0010dbc: faafa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18356 (discriminator 2) + c0010dc0: 4601 li a2,0 + c0010dc2: 85ea mv a1,s10 + c0010dc4: 8526 mv a0,s1 + c0010dc6: 8d2f70ef jal ra,c0007e98 + c0010dca: c119 beqz a0,c0010dd0 + c0010dcc: 8fdfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18356 (discriminator 4) + c0010dd0: 1d41 addi s10,s10,-16 + c0010dd2: f94fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18357 OP_CMP(OP_strict_neq, !=, js_strict_eq_slow(ctx, sp, 1)); - c0010ce8: fe0d3783 ld a5,-32(s10) - c0010cec: e8f43823 sd a5,-368(s0) - c0010cf0: fe8d3783 ld a5,-24(s10) - c0010cf4: e8f43c23 sd a5,-360(s0) - c0010cf8: ff0d3783 ld a5,-16(s10) - c0010cfc: fe8d3603 ld a2,-24(s10) - c0010d00: fe0d2683 lw a3,-32(s10) - c0010d04: ecf43823 sd a5,-304(s0) - c0010d08: ff8d3783 ld a5,-8(s10) - c0010d0c: ecf43c23 sd a5,-296(s0) - c0010d10: ff8d3703 ld a4,-8(s10) - c0010d14: ff0d2783 lw a5,-16(s10) - c0010d18: 8f51 or a4,a4,a2 - c0010d1a: 2701 sext.w a4,a4 - c0010d1c: eb15 bnez a4,c0010d50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18349 (discriminator 1) - c0010d1e: 8f95 sub a5,a5,a3 - c0010d20: 00f037b3 snez a5,a5 + c0010dd6: fe0d3783 ld a5,-32(s10) + c0010dda: e8f43823 sd a5,-368(s0) + c0010dde: fe8d3783 ld a5,-24(s10) + c0010de2: e8f43c23 sd a5,-360(s0) + c0010de6: ff0d3783 ld a5,-16(s10) + c0010dea: fe8d3603 ld a2,-24(s10) + c0010dee: fe0d2683 lw a3,-32(s10) + c0010df2: ecf43823 sd a5,-304(s0) + c0010df6: ff8d3783 ld a5,-8(s10) + c0010dfa: ecf43c23 sd a5,-296(s0) + c0010dfe: ff8d3703 ld a4,-8(s10) + c0010e02: ff0d2783 lw a5,-16(s10) + c0010e06: 8f51 or a4,a4,a2 + c0010e08: 2701 sext.w a4,a4 + c0010e0a: eb15 bnez a4,c0010e3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18357 (discriminator 1) + c0010e0c: 8f95 sub a5,a5,a3 + c0010e0e: 00f037b3 snez a5,a5 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 1) - c0010d24: aa042223 sw zero,-1372(s0) - c0010d28: aaf42023 sw a5,-1376(s0) - c0010d2c: aa043783 ld a5,-1376(s0) - c0010d30: 4705 li a4,1 - c0010d32: eee43c23 sd a4,-264(s0) - c0010d36: eef43823 sd a5,-272(s0) + c0010e12: aa042223 sw zero,-1372(s0) + c0010e16: aaf42023 sw a5,-1376(s0) + c0010e1a: aa043783 ld a5,-1376(s0) + c0010e1e: 4705 li a4,1 + c0010e20: eee43c23 sd a4,-264(s0) + c0010e24: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18349 (discriminator 1) - c0010d3a: fefd3023 sd a5,-32(s10) - c0010d3e: ef843783 ld a5,-264(s0) - c0010d42: aae43423 sd a4,-1368(s0) - c0010d46: 1d41 addi s10,s10,-16 - c0010d48: fefd3c23 sd a5,-8(s10) - c0010d4c: f2cfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18349 (discriminator 2) - c0010d50: 4605 li a2,1 - c0010d52: 85ea mv a1,s10 - c0010d54: 8526 mv a0,s1 - c0010d56: 854f70ef jal ra,c0007daa - c0010d5a: c119 beqz a0,c0010d60 - c0010d5c: 87ffa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18349 (discriminator 4) - c0010d60: 1d41 addi s10,s10,-16 - c0010d62: f16fa06f j c000b478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18357 (discriminator 1) + c0010e28: fefd3023 sd a5,-32(s10) + c0010e2c: ef843783 ld a5,-264(s0) + c0010e30: aae43423 sd a4,-1368(s0) + c0010e34: 1d41 addi s10,s10,-16 + c0010e36: fefd3c23 sd a5,-8(s10) + c0010e3a: f2cfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18357 (discriminator 2) + c0010e3e: 4605 li a2,1 + c0010e40: 85ea mv a1,s10 + c0010e42: 8526 mv a0,s1 + c0010e44: 854f70ef jal ra,c0007e98 + c0010e48: c119 beqz a0,c0010e4e + c0010e4a: 87ffa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18357 (discriminator 4) + c0010e4e: 1d41 addi s10,s10,-16 + c0010e50: f16fa06f j c000b566 js_operator_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14588 op1 = sp[-2]; - c0010d66: fe0d3583 ld a1,-32(s10) - c0010d6a: e8b43823 sd a1,-368(s0) - c0010d6e: fe8d3603 ld a2,-24(s10) - c0010d72: e8c43c23 sd a2,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14581 + c0010e54: fe0d3583 ld a1,-32(s10) + c0010e58: e8b43823 sd a1,-368(s0) + c0010e5c: fe8d3603 ld a2,-24(s10) + c0010e60: e8c43c23 sd a2,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14589 op2 = sp[-1]; - c0010d76: ff0d3783 ld a5,-16(s10) - c0010d7a: ecf43823 sd a5,-304(s0) - c0010d7e: ff8d3783 ld a5,-8(s10) - c0010d82: ecf43c23 sd a5,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14583 + c0010e64: ff0d3783 ld a5,-16(s10) + c0010e68: ecf43823 sd a5,-304(s0) + c0010e6c: ff8d3783 ld a5,-8(s10) + c0010e70: ecf43c23 sd a5,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14591 if (JS_VALUE_GET_TAG(op2) != JS_TAG_OBJECT) { - c0010d86: ff8d2703 lw a4,-8(s10) - c0010d8a: 57fd li a5,-1 - c0010d8c: 00f70b63 beq a4,a5,c0010da2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14584 + c0010e74: ff8d2703 lw a4,-8(s10) + c0010e78: 57fd li a5,-1 + c0010e7a: 00f70b63 beq a4,a5,c0010e90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14592 JS_ThrowTypeError(ctx, "invalid 'in' operand"); - c0010d90: 8526 mv a0,s1 - c0010d92: 0004c597 auipc a1,0x4c - c0010d96: 50658593 addi a1,a1,1286 # c005d298 - c0010d9a: 65c020ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14585 + c0010e7e: 8526 mv a0,s1 + c0010e80: 0004c597 auipc a1,0x4c + c0010e84: 64858593 addi a1,a1,1608 # c005d4c8 + c0010e88: 65c020ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14593 return -1; - c0010d9e: 83dfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14587 + c0010e8c: 83dfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14595 atom = JS_ValueToAtom(ctx, op1); - c0010da2: 8526 mv a0,s1 - c0010da4: 079100ef jal ra,c002161c - c0010da8: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14588 + c0010e90: 8526 mv a0,s1 + c0010e92: 15b100ef jal ra,c00217ec + c0010e96: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14596 if (unlikely(atom == JS_ATOM_NULL)) - c0010dac: 000a9463 bnez s5,c0010db4 - c0010db0: 82bfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14590 + c0010e9a: 000a9463 bnez s5,c0010ea2 + c0010e9e: 82bfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14598 ret = JS_HasProperty(ctx, op2, atom); - c0010db4: ed043583 ld a1,-304(s0) - c0010db8: ed843603 ld a2,-296(s0) - c0010dbc: 86d6 mv a3,s5 - c0010dbe: 8526 mv a0,s1 - c0010dc0: 4231f0ef jal ra,c00309e2 - c0010dc4: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14591 + c0010ea2: ed043583 ld a1,-304(s0) + c0010ea6: ed843603 ld a2,-296(s0) + c0010eaa: 86d6 mv a3,s5 + c0010eac: 8526 mv a0,s1 + c0010eae: 5051f0ef jal ra,c0030bb2 + c0010eb2: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14599 JS_FreeAtom(ctx, atom); - c0010dc6: 85d6 mv a1,s5 - c0010dc8: 8526 mv a0,s1 - c0010dca: f42f60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14592 + c0010eb4: 85d6 mv a1,s5 + c0010eb6: 8526 mv a0,s1 + c0010eb8: f42f60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14600 if (ret < 0) - c0010dce: 000a5463 bgez s4,c0010dd6 - c0010dd2: 809fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14594 + c0010ebc: 000a5463 bgez s4,c0010ec4 + c0010ec0: 809fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14602 JS_FreeValue(ctx, op1); - c0010dd6: e9043583 ld a1,-368(s0) - c0010dda: e9843603 ld a2,-360(s0) - c0010dde: 8526 mv a0,s1 + c0010ec4: e9043583 ld a1,-368(s0) + c0010ec8: e9843603 ld a2,-360(s0) + c0010ecc: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010de0: 01403a33 snez s4,s4 + c0010ece: 01403a33 snez s4,s4 js_operator_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14594 - c0010de4: d55f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14595 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14602 + c0010ed2: d55f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14603 JS_FreeValue(ctx, op2); - c0010de8: ed043583 ld a1,-304(s0) - c0010dec: ed843603 ld a2,-296(s0) - c0010df0: 8526 mv a0,s1 + c0010ed6: ed043583 ld a1,-304(s0) + c0010eda: ed843603 ld a2,-296(s0) + c0010ede: 8526 mv a0,s1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18361 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18369 sp--; - c0010df2: 1d41 addi s10,s10,-16 + c0010ee0: 1d41 addi s10,s10,-16 js_operator_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14595 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14603 JS_FreeValue(ctx, op2); - c0010df4: d45f60ef jal ra,c0007b38 + c0010ee2: d45f60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010df8: e2042a23 sw zero,-460(s0) - c0010dfc: e3442823 sw s4,-464(s0) - c0010e00: e3043783 ld a5,-464(s0) - c0010e04: 4705 li a4,1 - c0010e06: eee43c23 sd a4,-264(s0) - c0010e0a: eef43823 sd a5,-272(s0) + c0010ee6: e2042a23 sw zero,-460(s0) + c0010eea: e3442823 sw s4,-464(s0) + c0010eee: e3043783 ld a5,-464(s0) + c0010ef2: 4705 li a4,1 + c0010ef4: eee43c23 sd a4,-264(s0) + c0010ef8: eef43823 sd a5,-272(s0) js_operator_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14604 sp[-2] = JS_NewBool(ctx, ret); - c0010e0e: fefd3823 sd a5,-16(s10) - c0010e12: ef843783 ld a5,-264(s0) - c0010e16: e2e43c23 sd a4,-456(s0) - c0010e1a: fefd3c23 sd a5,-8(s10) + c0010efc: fefd3823 sd a5,-16(s10) + c0010f00: ef843783 ld a5,-264(s0) + c0010f04: e2e43c23 sd a4,-456(s0) + c0010f08: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18370 BREAK; - c0010e1e: e5afa06f j c000b478 + c0010f0c: e5afa06f j c000b566 js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14614 op2 = sp[-1]; /* field name or method function */ - c0010e22: ff0d3683 ld a3,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14605 + c0010f10: ff0d3683 ld a3,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14613 op1 = sp[-2]; /* object */ - c0010e26: fe8d3603 ld a2,-24(s10) - c0010e2a: fe0d3a03 ld s4,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14606 + c0010f14: fe8d3603 ld a2,-24(s10) + c0010f18: fe0d3a03 ld s4,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14614 op2 = sp[-1]; /* field name or method function */ - c0010e2e: ecd43823 sd a3,-304(s0) - c0010e32: ff8d3703 ld a4,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14605 + c0010f1c: ecd43823 sd a3,-304(s0) + c0010f20: ff8d3703 ld a4,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14613 op1 = sp[-2]; /* object */ - c0010e36: e5443023 sd s4,-448(s0) - c0010e3a: e4c43423 sd a2,-440(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14606 + c0010f24: e5443023 sd s4,-448(s0) + c0010f28: e4c43423 sd a2,-440(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14614 op2 = sp[-1]; /* field name or method function */ - c0010e3e: ece43c23 sd a4,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14608 + c0010f2c: ece43c23 sd a4,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14616 if (JS_VALUE_GET_TAG(op1) != JS_TAG_OBJECT) { - c0010e42: 0006059b sext.w a1,a2 - c0010e46: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14606 + c0010f30: 0006059b sext.w a1,a2 + c0010f34: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14614 op2 = sp[-1]; /* field name or method function */ - c0010e48: ff8d3783 ld a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14608 + c0010f36: ff8d3783 ld a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14616 if (JS_VALUE_GET_TAG(op1) != JS_TAG_OBJECT) { - c0010e4c: 00a58b63 beq a1,a0,c0010e62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14609 + c0010f3a: 00a58b63 beq a1,a0,c0010f50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14617 JS_ThrowTypeError(ctx, "invalid 'in' operand"); - c0010e50: 8526 mv a0,s1 - c0010e52: 0004c597 auipc a1,0x4c - c0010e56: 44658593 addi a1,a1,1094 # c005d298 - c0010e5a: 59c020ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14610 + c0010f3e: 8526 mv a0,s1 + c0010f40: 0004c597 auipc a1,0x4c + c0010f44: 58858593 addi a1,a1,1416 # c005d4c8 + c0010f48: 59c020ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14618 return -1; - c0010e5e: f7cfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14612 + c0010f4c: f7cfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14620 if (JS_IsObject(op2)) { - c0010e62: 2781 sext.w a5,a5 - c0010e64: 06b79163 bne a5,a1,c0010ec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14614 + c0010f50: 2781 sext.w a5,a5 + c0010f52: 06b79163 bne a5,a1,c0010fb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14622 ret = JS_CheckBrand(ctx, op1, op2); - c0010e68: 85d2 mv a1,s4 - c0010e6a: 8526 mv a0,s1 - c0010e6c: 455020ef jal ra,c0013ac0 - c0010e70: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14615 + c0010f56: 85d2 mv a1,s4 + c0010f58: 8526 mv a0,s1 + c0010f5a: 455020ef jal ra,c0013bae + c0010f5e: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14623 if (ret < 0) - c0010e72: 00055463 bgez a0,c0010e7a - c0010e76: f64fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14631 + c0010f60: 00055463 bgez a0,c0010f68 + c0010f64: f64fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14639 JS_FreeValue(ctx, op1); - c0010e7a: e4043583 ld a1,-448(s0) - c0010e7e: e4843603 ld a2,-440(s0) - c0010e82: 8526 mv a0,s1 + c0010f68: e4043583 ld a1,-448(s0) + c0010f6c: e4843603 ld a2,-440(s0) + c0010f70: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010e84: 01403a33 snez s4,s4 + c0010f72: 01403a33 snez s4,s4 js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14631 - c0010e88: cb1f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14639 + c0010f76: cb1f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14640 JS_FreeValue(ctx, op2); - c0010e8c: ed043583 ld a1,-304(s0) - c0010e90: ed843603 ld a2,-296(s0) - c0010e94: 8526 mv a0,s1 + c0010f7a: ed043583 ld a1,-304(s0) + c0010f7e: ed843603 ld a2,-296(s0) + c0010f82: 8526 mv a0,s1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18374 sp--; - c0010e96: 1d41 addi s10,s10,-16 + c0010f84: 1d41 addi s10,s10,-16 js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14640 JS_FreeValue(ctx, op2); - c0010e98: ca1f60ef jal ra,c0007b38 + c0010f86: ca1f60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010e9c: e4042a23 sw zero,-428(s0) - c0010ea0: e5442823 sw s4,-432(s0) - c0010ea4: e5043783 ld a5,-432(s0) - c0010ea8: 4705 li a4,1 - c0010eaa: eee43c23 sd a4,-264(s0) - c0010eae: eef43823 sd a5,-272(s0) + c0010f8a: e4042a23 sw zero,-428(s0) + c0010f8e: e5442823 sw s4,-432(s0) + c0010f92: e5043783 ld a5,-432(s0) + c0010f96: 4705 li a4,1 + c0010f98: eee43c23 sd a4,-264(s0) + c0010f9c: eef43823 sd a5,-272(s0) js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14633 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14641 sp[-2] = JS_NewBool(ctx, ret); - c0010eb2: fefd3823 sd a5,-16(s10) - c0010eb6: ef843783 ld a5,-264(s0) - c0010eba: e4e43c23 sd a4,-424(s0) - c0010ebe: fefd3c23 sd a5,-8(s10) + c0010fa0: fefd3823 sd a5,-16(s10) + c0010fa4: ef843783 ld a5,-264(s0) + c0010fa8: e4e43c23 sd a4,-424(s0) + c0010fac: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18367 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18375 BREAK; - c0010ec2: db6fa06f j c000b478 + c0010fb0: db6fa06f j c000b566 js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14631 atom = JS_ValueToAtom(ctx, op2); - c0010ec6: 85b6 mv a1,a3 - c0010ec8: 863a mv a2,a4 - c0010eca: 8526 mv a0,s1 - c0010ecc: 750100ef jal ra,c002161c - c0010ed0: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14624 + c0010fb4: 85b6 mv a1,a3 + c0010fb6: 863a mv a2,a4 + c0010fb8: 8526 mv a0,s1 + c0010fba: 033100ef jal ra,c00217ec + c0010fbe: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14632 if (unlikely(atom == JS_ATOM_NULL)) - c0010ed4: e199 bnez a1,c0010eda - c0010ed6: f04fa06f j c000b5da + c0010fc2: e199 bnez a1,c0010fc8 + c0010fc4: f04fa06f j c000b6c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0010eda: 018a3703 ld a4,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0010fc8: 018a3703 ld a4,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0010ede: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0010fcc: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0010ee0: 531c lw a5,32(a4) - c0010ee2: 8fed and a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0010fce: 531c lw a5,32(a4) + c0010fd0: 8fed and a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0010ee4: 1782 slli a5,a5,0x20 - c0010ee6: 9381 srli a5,a5,0x20 - c0010ee8: 0785 addi a5,a5,1 - c0010eea: 02d787b3 mul a5,a5,a3 - c0010eee: 97ba add a5,a5,a4 - c0010ef0: 0007ea03 lwu s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0010fd2: 1782 slli a5,a5,0x20 + c0010fd4: 9381 srli a5,a5,0x20 + c0010fd6: 0785 addi a5,a5,1 + c0010fd8: 02d787b3 mul a5,a5,a3 + c0010fdc: 97ba add a5,a5,a4 + c0010fde: 0007ea03 lwu s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0010ef4: 040007b7 lui a5,0x4000 + c0010fe2: 040007b7 lui a5,0x4000 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0010ef8: 04070713 addi a4,a4,64 # ffffffff80000040 <_ebss+0xfffffffebfefef1a> + c0010fe6: 04070713 addi a4,a4,64 # ffffffff80000040 <_ebss+0xfffffffebfefef1a> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0010efc: 17fd addi a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c0010fea: 17fd addi a5,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0010efe: 000a1863 bnez s4,c0010f0e + c0010fec: 000a1863 bnez s4,c0010ffc js_operator_private_in(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14628 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14636 JS_FreeAtom(ctx, atom); - c0010f02: 8526 mv a0,s1 - c0010f04: e08f60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14629 + c0010ff0: 8526 mv a0,s1 + c0010ff2: e08f60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14637 ret = (prs != NULL); - c0010f08: 01403a33 snez s4,s4 - c0010f0c: b7bd j c0010e7a + c0010ff6: 01403a33 snez s4,s4 + c0010ffa: b7bd j c0010f68 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0010f0e: 0a0e slli s4,s4,0x3 - c0010f10: 1a61 addi s4,s4,-8 - c0010f12: 9a3a add s4,s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0010ffc: 0a0e slli s4,s4,0x3 + c0010ffe: 1a61 addi s4,s4,-8 + c0011000: 9a3a add s4,s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0010f14: 004a2683 lw a3,4(s4) - c0010f18: feb685e3 beq a3,a1,c0010f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0011002: 004a2683 lw a3,4(s4) + c0011006: feb685e3 beq a3,a1,c0010ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0010f1c: 000a2a03 lw s4,0(s4) - c0010f20: 00fa7a33 and s4,s4,a5 - c0010f24: 1a02 slli s4,s4,0x20 - c0010f26: 020a5a13 srli s4,s4,0x20 - c0010f2a: bfd1 j c0010efe + c001100a: 000a2a03 lw s4,0(s4) + c001100e: 00fa7a33 and s4,s4,a5 + c0011012: 1a02 slli s4,s4,0x20 + c0011014: 020a5a13 srli s4,s4,0x20 + c0011018: bfd1 j c0010fec js_operator_instanceof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14660 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14668 op1 = sp[-2]; - c0010f2c: fe0d3583 ld a1,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14662 + c001101a: fe0d3583 ld a1,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14670 ret = JS_IsInstanceOf(ctx, op1, op2); - c0010f30: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14660 + c001101e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14668 op1 = sp[-2]; - c0010f32: e8b43823 sd a1,-368(s0) - c0010f36: fe8d3603 ld a2,-24(s10) - c0010f3a: e8c43c23 sd a2,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14661 + c0011020: e8b43823 sd a1,-368(s0) + c0011024: fe8d3603 ld a2,-24(s10) + c0011028: e8c43c23 sd a2,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14669 op2 = sp[-1]; - c0010f3e: ff0d3683 ld a3,-16(s10) - c0010f42: ecd43823 sd a3,-304(s0) - c0010f46: ff8d3703 ld a4,-8(s10) - c0010f4a: ece43c23 sd a4,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14662 + c001102c: ff0d3683 ld a3,-16(s10) + c0011030: ecd43823 sd a3,-304(s0) + c0011034: ff8d3703 ld a4,-8(s10) + c0011038: ece43c23 sd a4,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14670 ret = JS_IsInstanceOf(ctx, op1, op2); - c0010f4e: 3f5030ef jal ra,c0014b42 - c0010f52: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14663 + c001103c: 3f5030ef jal ra,c0014c30 + c0011040: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14671 if (ret < 0) - c0010f54: 00055463 bgez a0,c0010f5c - c0010f58: e82fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14665 + c0011042: 00055463 bgez a0,c001104a + c0011046: e82fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14673 JS_FreeValue(ctx, op1); - c0010f5c: e9043583 ld a1,-368(s0) - c0010f60: e9843603 ld a2,-360(s0) - c0010f64: 8526 mv a0,s1 + c001104a: e9043583 ld a1,-368(s0) + c001104e: e9843603 ld a2,-360(s0) + c0011052: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010f66: 01403a33 snez s4,s4 + c0011054: 01403a33 snez s4,s4 js_operator_instanceof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14665 - c0010f6a: bcff60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14673 + c0011058: bcff60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14674 JS_FreeValue(ctx, op2); - c0010f6e: ed043583 ld a1,-304(s0) - c0010f72: ed843603 ld a2,-296(s0) - c0010f76: 8526 mv a0,s1 + c001105c: ed043583 ld a1,-304(s0) + c0011060: ed843603 ld a2,-296(s0) + c0011064: 8526 mv a0,s1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18371 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 sp--; - c0010f78: 1d41 addi s10,s10,-16 + c0011066: 1d41 addi s10,s10,-16 js_operator_instanceof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14674 JS_FreeValue(ctx, op2); - c0010f7a: bbff60ef jal ra,c0007b38 + c0011068: bbff60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0010f7e: e6042223 sw zero,-412(s0) - c0010f82: e7442023 sw s4,-416(s0) - c0010f86: e6043783 ld a5,-416(s0) - c0010f8a: 4705 li a4,1 - c0010f8c: eee43c23 sd a4,-264(s0) - c0010f90: eef43823 sd a5,-272(s0) + c001106c: e6042223 sw zero,-412(s0) + c0011070: e7442023 sw s4,-416(s0) + c0011074: e6043783 ld a5,-416(s0) + c0011078: 4705 li a4,1 + c001107a: eee43c23 sd a4,-264(s0) + c001107e: eef43823 sd a5,-272(s0) js_operator_instanceof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14675 sp[-2] = JS_NewBool(ctx, ret); - c0010f94: fefd3823 sd a5,-16(s10) - c0010f98: ef843783 ld a5,-264(s0) - c0010f9c: e6e43423 sd a4,-408(s0) - c0010fa0: fefd3c23 sd a5,-8(s10) + c0011082: fefd3823 sd a5,-16(s10) + c0011086: ef843783 ld a5,-264(s0) + c001108a: e6e43423 sd a4,-408(s0) + c001108e: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18380 BREAK; - c0010fa4: cd4fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18378 + c0011092: cd4fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18386 op1 = sp[-1]; - c0010fa8: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 + c0011096: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 atom = js_operator_typeof(ctx, op1); - c0010fac: 77fd lui a5,0xfffff - c0010fae: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18378 + c001109a: 77fd lui a5,0xfffff + c001109c: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18386 op1 = sp[-1]; - c0010fb2: eeb43823 sd a1,-272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 + c00110a0: eeb43823 sd a1,-272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 atom = js_operator_typeof(ctx, op1); - c0010fb6: 97a2 add a5,a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18378 + c00110a4: 97a2 add a5,a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18386 op1 = sp[-1]; - c0010fb8: ff8d3603 ld a2,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 + c00110a6: ff8d3603 ld a2,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 atom = js_operator_typeof(ctx, op1); - c0010fbc: e38c sd a1,0(a5) - c0010fbe: 77fd lui a5,0xfffff - c0010fc0: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c0010fc4: 97a2 add a5,a5,s0 - c0010fc6: 8526 mv a0,s1 - c0010fc8: e390 sd a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18378 + c00110aa: e38c sd a1,0(a5) + c00110ac: 77fd lui a5,0xfffff + c00110ae: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c00110b2: 97a2 add a5,a5,s0 + c00110b4: 8526 mv a0,s1 + c00110b6: e390 sd a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18386 op1 = sp[-1]; - c0010fca: eec43c23 sd a2,-264(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 + c00110b8: eec43c23 sd a2,-264(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 atom = js_operator_typeof(ctx, op1); - c0010fce: f5af90ef jal ra,c000a728 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18380 + c00110bc: f5af90ef jal ra,c000a816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18388 JS_FreeValue(ctx, op1); - c0010fd2: 77fd lui a5,0xfffff - c0010fd4: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> - c0010fd8: 97a2 add a5,a5,s0 - c0010fda: 638c ld a1,0(a5) - c0010fdc: 77fd lui a5,0xfffff - c0010fde: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> - c0010fe2: 97a2 add a5,a5,s0 - c0010fe4: 6390 ld a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18379 + c00110c0: 77fd lui a5,0xfffff + c00110c2: 62078793 addi a5,a5,1568 # fffffffffffff620 <_ebss+0xffffffff3fefe4fa> + c00110c6: 97a2 add a5,a5,s0 + c00110c8: 638c ld a1,0(a5) + c00110ca: 77fd lui a5,0xfffff + c00110cc: 63078793 addi a5,a5,1584 # fffffffffffff630 <_ebss+0xffffffff3fefe50a> + c00110d0: 97a2 add a5,a5,s0 + c00110d2: 6390 ld a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 atom = js_operator_typeof(ctx, op1); - c0010fe6: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18380 + c00110d4: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18388 JS_FreeValue(ctx, op1); - c0010fe8: 8526 mv a0,s1 - c0010fea: b4ff60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18381 + c00110d6: 8526 mv a0,s1 + c00110d8: b4ff60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18389 sp[-1] = JS_AtomToString(ctx, atom); - c0010fee: 000a059b sext.w a1,s4 - c0010ff2: 8526 mv a0,s1 - c0010ff4: 349080ef jal ra,c0019b3c - c0010ff8: fead3823 sd a0,-16(s10) - c0010ffc: febd3c23 sd a1,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18383 + c00110dc: 000a059b sext.w a1,s4 + c00110e0: 8526 mv a0,s1 + c00110e2: 42b080ef jal ra,c0019d0c + c00110e6: fead3823 sd a0,-16(s10) + c00110ea: febd3c23 sd a1,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18391 BREAK; - c0011000: c78fa06f j c000b478 + c00110ee: c78fa06f j c000b566 js_operator_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14742 op1 = sp[-2]; - c0011004: fe0d3783 ld a5,-32(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14736 + c00110f2: fe0d3783 ld a5,-32(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14744 atom = JS_ValueToAtom(ctx, op2); - c0011008: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14734 + c00110f6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14742 op1 = sp[-2]; - c001100a: e8f43823 sd a5,-368(s0) - c001100e: fe8d3783 ld a5,-24(s10) - c0011012: e8f43c23 sd a5,-360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14735 + c00110f8: e8f43823 sd a5,-368(s0) + c00110fc: fe8d3783 ld a5,-24(s10) + c0011100: e8f43c23 sd a5,-360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14743 op2 = sp[-1]; - c0011016: ff0d3583 ld a1,-16(s10) - c001101a: ecb43823 sd a1,-304(s0) - c001101e: ff8d3603 ld a2,-8(s10) - c0011022: ecc43c23 sd a2,-296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14736 + c0011104: ff0d3583 ld a1,-16(s10) + c0011108: ecb43823 sd a1,-304(s0) + c001110c: ff8d3603 ld a2,-8(s10) + c0011110: ecc43c23 sd a2,-296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14744 atom = JS_ValueToAtom(ctx, op2); - c0011026: 5f6100ef jal ra,c002161c - c001102a: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14737 + c0011114: 6d8100ef jal ra,c00217ec + c0011118: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14745 if (unlikely(atom == JS_ATOM_NULL)) - c001102e: 000a9463 bnez s5,c0011036 - c0011032: da8fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14739 + c001111c: 000a9463 bnez s5,c0011124 + c0011120: da8fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14747 ret = JS_DeleteProperty(ctx, op1, atom, JS_PROP_THROW_STRICT); - c0011036: e9043583 ld a1,-368(s0) - c001103a: e9843603 ld a2,-360(s0) - c001103e: 6721 lui a4,0x8 - c0011040: 86d6 mv a3,s5 - c0011042: 8526 mv a0,s1 - c0011044: 7dc170ef jal ra,c0028820 - c0011048: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14740 + c0011124: e9043583 ld a1,-368(s0) + c0011128: e9843603 ld a2,-360(s0) + c001112c: 6721 lui a4,0x8 + c001112e: 86d6 mv a3,s5 + c0011130: 8526 mv a0,s1 + c0011132: 0bf170ef jal ra,c00289f0 + c0011136: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14748 JS_FreeAtom(ctx, atom); - c001104a: 85d6 mv a1,s5 - c001104c: 8526 mv a0,s1 - c001104e: cbef60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14741 + c0011138: 85d6 mv a1,s5 + c001113a: 8526 mv a0,s1 + c001113c: cbef60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14749 if (unlikely(ret < 0)) - c0011052: 000a5463 bgez s4,c001105a - c0011056: d84fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14743 + c0011140: 000a5463 bgez s4,c0011148 + c0011144: d84fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14751 JS_FreeValue(ctx, op1); - c001105a: e9043583 ld a1,-368(s0) - c001105e: e9843603 ld a2,-360(s0) - c0011062: 8526 mv a0,s1 + c0011148: e9043583 ld a1,-368(s0) + c001114c: e9843603 ld a2,-360(s0) + c0011150: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0011064: 01403a33 snez s4,s4 + c0011152: 01403a33 snez s4,s4 js_operator_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14743 - c0011068: ad1f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14744 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14751 + c0011156: ad1f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14752 JS_FreeValue(ctx, op2); - c001106c: ed043583 ld a1,-304(s0) - c0011070: ed843603 ld a2,-296(s0) - c0011074: 8526 mv a0,s1 + c001115a: ed043583 ld a1,-304(s0) + c001115e: ed843603 ld a2,-296(s0) + c0011162: 8526 mv a0,s1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18395 sp--; - c0011076: 1d41 addi s10,s10,-16 + c0011164: 1d41 addi s10,s10,-16 js_operator_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14744 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14752 JS_FreeValue(ctx, op2); - c0011078: ac1f60ef jal ra,c0007b38 + c0011166: ac1f60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c001107c: e6042a23 sw zero,-396(s0) - c0011080: e7442823 sw s4,-400(s0) - c0011084: e7043783 ld a5,-400(s0) - c0011088: 4705 li a4,1 - c001108a: eee43c23 sd a4,-264(s0) - c001108e: eef43823 sd a5,-272(s0) + c001116a: e6042a23 sw zero,-396(s0) + c001116e: e7442823 sw s4,-400(s0) + c0011172: e7043783 ld a5,-400(s0) + c0011176: 4705 li a4,1 + c0011178: eee43c23 sd a4,-264(s0) + c001117c: eef43823 sd a5,-272(s0) js_operator_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14745 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 sp[-2] = JS_NewBool(ctx, ret); - c0011092: fefd3823 sd a5,-16(s10) - c0011096: ef843783 ld a5,-264(s0) - c001109a: e6e43c23 sd a4,-392(s0) - c001109e: fefd3c23 sd a5,-8(s10) + c0011180: fefd3823 sd a5,-16(s10) + c0011184: ef843783 ld a5,-264(s0) + c0011188: e6e43c23 sd a4,-392(s0) + c001118c: fefd3c23 sd a5,-8(s10) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18396 BREAK; - c00110a2: bd6fa06f j c000b478 + c0011190: bd6fa06f j c000b566 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00110a6: 002bc783 lbu a5,2(s7) - c00110aa: 001bc683 lbu a3,1(s7) + c0011194: 002bc783 lbu a5,2(s7) + c0011198: 001bc683 lbu a3,1(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18405 ret = JS_DeleteProperty(ctx, ctx->global_obj, atom, 0); - c00110ae: 1684b583 ld a1,360(s1) + c001119c: 1684b583 ld a1,360(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00110b2: 07a2 slli a5,a5,0x8 - c00110b4: 8fd5 or a5,a5,a3 - c00110b6: 003bc683 lbu a3,3(s7) + c00111a0: 07a2 slli a5,a5,0x8 + c00111a2: 8fd5 or a5,a5,a3 + c00111a4: 003bc683 lbu a3,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18397 - c00110ba: 1704b603 ld a2,368(s1) - c00110be: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18405 + c00111a8: 1704b603 ld a2,368(s1) + c00111ac: 4701 li a4,0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00110c0: 06c2 slli a3,a3,0x10 - c00110c2: 8fd5 or a5,a5,a3 - c00110c4: 004bc683 lbu a3,4(s7) + c00111ae: 06c2 slli a3,a3,0x10 + c00111b0: 8fd5 or a5,a5,a3 + c00111b2: 004bc683 lbu a3,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18397 - c00110c8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18395 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18405 + c00111b6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18403 pc += 4; - c00110ca: 005b8913 addi s2,s7,5 + c00111b8: 005b8913 addi s2,s7,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00110ce: 06e2 slli a3,a3,0x18 - c00110d0: 8edd or a3,a3,a5 + c00111bc: 06e2 slli a3,a3,0x18 + c00111be: 8edd or a3,a3,a5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18405 ret = JS_DeleteProperty(ctx, ctx->global_obj, atom, 0); - c00110d2: 2681 sext.w a3,a3 - c00110d4: 74c170ef jal ra,c0028820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18398 + c00111c0: 2681 sext.w a3,a3 + c00111c2: 02f170ef jal ra,c00289f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18406 if (unlikely(ret < 0)) - c00110d8: 00055463 bgez a0,c00110e0 - c00110dc: cfefa06f j c000b5da + c00111c6: 00055463 bgez a0,c00111ce + c00111ca: cfefa06f j c000b6c8 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c00110e0: 00a03533 snez a0,a0 - c00110e4: aa042a23 sw zero,-1356(s0) - c00110e8: aaa42823 sw a0,-1360(s0) - c00110ec: ab043783 ld a5,-1360(s0) - c00110f0: 4705 li a4,1 - c00110f2: eee43c23 sd a4,-264(s0) - c00110f6: eef43823 sd a5,-272(s0) + c00111ce: 00a03533 snez a0,a0 + c00111d2: aa042a23 sw zero,-1356(s0) + c00111d6: aaa42823 sw a0,-1360(s0) + c00111da: ab043783 ld a5,-1360(s0) + c00111de: 4705 li a4,1 + c00111e0: eee43c23 sd a4,-264(s0) + c00111e4: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18408 *sp++ = JS_NewBool(ctx, ret); - c00110fa: 00fd3023 sd a5,0(s10) - c00110fe: ef843783 ld a5,-264(s0) - c0011102: aae43c23 sd a4,-1352(s0) - c0011106: 0d41 addi s10,s10,16 - c0011108: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18402 + c00111e8: 00fd3023 sd a5,0(s10) + c00111ec: ef843783 ld a5,-264(s0) + c00111f0: aae43c23 sd a4,-1352(s0) + c00111f4: 0d41 addi s10,s10,16 + c00111f6: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18410 BREAK; - c001110c: b6cfa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18405 + c00111fa: b6cfa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18413 if (JS_VALUE_GET_TAG(sp[-1]) != JS_TAG_OBJECT) { - c0011110: ff8d2703 lw a4,-8(s10) - c0011114: 57fd li a5,-1 - c0011116: 00f71463 bne a4,a5,c001111e - c001111a: b5efa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18406 + c00111fe: ff8d2703 lw a4,-8(s10) + c0011202: 57fd li a5,-1 + c0011204: 00f71463 bne a4,a5,c001120c + c0011208: b5efa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18414 ret_val = JS_ToObject(ctx, sp[-1]); - c001111e: ff0d3583 ld a1,-16(s10) - c0011122: ff8d3603 ld a2,-8(s10) - c0011126: 8526 mv a0,s1 - c0011128: 4c4170ef jal ra,c00285ec - c001112c: f8040793 addi a5,s0,-128 - c0011130: 01378a33 add s4,a5,s3 - c0011134: 72ba3423 sd a1,1832(s4) - c0011138: 72aa3023 sd a0,1824(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18407 + c001120c: ff0d3583 ld a1,-16(s10) + c0011210: ff8d3603 ld a2,-8(s10) + c0011214: 8526 mv a0,s1 + c0011216: 5a6170ef jal ra,c00287bc + c001121a: f8040793 addi a5,s0,-128 + c001121e: 01378a33 add s4,a5,s3 + c0011222: 72ba3423 sd a1,1832(s4) + c0011226: 72aa3023 sd a0,1824(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18415 if (JS_IsException(ret_val)) - c001113c: 2581 sext.w a1,a1 - c001113e: 4799 li a5,6 - c0011140: 00f59463 bne a1,a5,c0011148 - c0011144: c96fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18409 + c001122a: 2581 sext.w a1,a1 + c001122c: 4799 li a5,6 + c001122e: 00f59463 bne a1,a5,c0011236 + c0011232: c96fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18417 JS_FreeValue(ctx, sp[-1]); - c0011148: ff0d3583 ld a1,-16(s10) - c001114c: ff8d3603 ld a2,-8(s10) - c0011150: 8526 mv a0,s1 - c0011152: 9e7f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18410 + c0011236: ff0d3583 ld a1,-16(s10) + c001123a: ff8d3603 ld a2,-8(s10) + c001123e: 8526 mv a0,s1 + c0011240: 9e7f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18418 sp[-1] = ret_val; - c0011156: 720a3783 ld a5,1824(s4) - c001115a: fefd3823 sd a5,-16(s10) - c001115e: 728a3783 ld a5,1832(s4) - c0011162: fefd3c23 sd a5,-8(s10) - c0011166: b12fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18415 + c0011244: 720a3783 ld a5,1824(s4) + c0011248: fefd3823 sd a5,-16(s10) + c001124c: 728a3783 ld a5,1832(s4) + c0011250: fefd3c23 sd a5,-8(s10) + c0011254: b12fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18423 switch (JS_VALUE_GET_TAG(sp[-1])) { - c001116a: ff8d2783 lw a5,-8(s10) - c001116e: 5769 li a4,-6 - c0011170: 04e7dd63 bge a5,a4,c00111ca - c0011174: 5761 li a4,-8 - c0011176: 00e7c463 blt a5,a4,c001117e - c001117a: afefa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18421 + c0011258: ff8d2783 lw a5,-8(s10) + c001125c: 5769 li a4,-6 + c001125e: 04e7dd63 bge a5,a4,c00112b8 + c0011262: 5761 li a4,-8 + c0011264: 00e7c463 blt a5,a4,c001126c + c0011268: afefa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18429 ret_val = JS_ToPropertyKey(ctx, sp[-1]); - c001117e: ff0d3583 ld a1,-16(s10) - c0011182: ff8d3603 ld a2,-8(s10) - c0011186: 8526 mv a0,s1 - c0011188: 48a100ef jal ra,c0021612 - c001118c: f8040793 addi a5,s0,-128 - c0011190: 01378a33 add s4,a5,s3 - c0011194: 72ba3423 sd a1,1832(s4) - c0011198: 72aa3023 sd a0,1824(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18422 + c001126c: ff0d3583 ld a1,-16(s10) + c0011270: ff8d3603 ld a2,-8(s10) + c0011274: 8526 mv a0,s1 + c0011276: 56c100ef jal ra,c00217e2 + c001127a: f8040793 addi a5,s0,-128 + c001127e: 01378a33 add s4,a5,s3 + c0011282: 72ba3423 sd a1,1832(s4) + c0011286: 72aa3023 sd a0,1824(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18430 if (JS_IsException(ret_val)) - c001119c: 2581 sext.w a1,a1 - c001119e: 4799 li a5,6 - c00111a0: 00f59463 bne a1,a5,c00111a8 - c00111a4: c36fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18424 + c001128a: 2581 sext.w a1,a1 + c001128c: 4799 li a5,6 + c001128e: 00f59463 bne a1,a5,c0011296 + c0011292: c36fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18432 JS_FreeValue(ctx, sp[-1]); - c00111a8: ff0d3583 ld a1,-16(s10) - c00111ac: ff8d3603 ld a2,-8(s10) - c00111b0: 8526 mv a0,s1 - c00111b2: 987f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18425 + c0011296: ff0d3583 ld a1,-16(s10) + c001129a: ff8d3603 ld a2,-8(s10) + c001129e: 8526 mv a0,s1 + c00112a0: 987f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18433 sp[-1] = ret_val; - c00111b6: 720a3783 ld a5,1824(s4) - c00111ba: fefd3823 sd a5,-16(s10) - c00111be: 728a3783 ld a5,1832(s4) - c00111c2: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18426 + c00112a4: 720a3783 ld a5,1824(s4) + c00112a8: fefd3823 sd a5,-16(s10) + c00112ac: 728a3783 ld a5,1832(s4) + c00112b0: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18434 break; - c00111c6: ab2fa06f j c000b478 - c00111ca: e399 bnez a5,c00111d0 - c00111cc: aacfa06f j c000b478 - c00111d0: b77d j c001117e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18432 + c00112b4: ab2fa06f j c000b566 + c00112b8: e399 bnez a5,c00112be + c00112ba: aacfa06f j c000b566 + c00112be: b77d j c001126c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18440 if (unlikely(JS_IsUndefined(sp[-2]) || JS_IsNull(sp[-2]))) { - c00111d2: fe8d3783 ld a5,-24(s10) - c00111d6: 4705 li a4,1 - c00111d8: 37f9 addiw a5,a5,-2 - c00111da: 00f76b63 bltu a4,a5,c00111f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18433 + c00112c0: fe8d3783 ld a5,-24(s10) + c00112c4: 4705 li a4,1 + c00112c6: 37f9 addiw a5,a5,-2 + c00112c8: 00f76b63 bltu a4,a5,c00112de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18441 JS_ThrowTypeError(ctx, "value has no property"); - c00111de: 8526 mv a0,s1 - c00111e0: 0004c597 auipc a1,0x4c - c00111e4: 0d058593 addi a1,a1,208 # c005d2b0 - c00111e8: 20e020ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18434 + c00112cc: 8526 mv a0,s1 + c00112ce: 0004c597 auipc a1,0x4c + c00112d2: 21258593 addi a1,a1,530 # c005d4e0 + c00112d6: 20e020ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18442 goto exception; - c00111ec: beefa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18436 + c00112da: beefa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18444 switch (JS_VALUE_GET_TAG(sp[-1])) { - c00111f0: ff8d2783 lw a5,-8(s10) - c00111f4: 5769 li a4,-6 - c00111f6: 04e7dd63 bge a5,a4,c0011250 - c00111fa: 5761 li a4,-8 - c00111fc: 00e7c463 blt a5,a4,c0011204 - c0011200: a78fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18442 + c00112de: ff8d2783 lw a5,-8(s10) + c00112e2: 5769 li a4,-6 + c00112e4: 04e7dd63 bge a5,a4,c001133e + c00112e8: 5761 li a4,-8 + c00112ea: 00e7c463 blt a5,a4,c00112f2 + c00112ee: a78fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18450 ret_val = JS_ToPropertyKey(ctx, sp[-1]); - c0011204: ff0d3583 ld a1,-16(s10) - c0011208: ff8d3603 ld a2,-8(s10) - c001120c: 8526 mv a0,s1 - c001120e: 404100ef jal ra,c0021612 - c0011212: f8040793 addi a5,s0,-128 - c0011216: 01378a33 add s4,a5,s3 - c001121a: 72ba3423 sd a1,1832(s4) - c001121e: 72aa3023 sd a0,1824(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18443 + c00112f2: ff0d3583 ld a1,-16(s10) + c00112f6: ff8d3603 ld a2,-8(s10) + c00112fa: 8526 mv a0,s1 + c00112fc: 4e6100ef jal ra,c00217e2 + c0011300: f8040793 addi a5,s0,-128 + c0011304: 01378a33 add s4,a5,s3 + c0011308: 72ba3423 sd a1,1832(s4) + c001130c: 72aa3023 sd a0,1824(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18451 if (JS_IsException(ret_val)) - c0011222: 2581 sext.w a1,a1 - c0011224: 4799 li a5,6 - c0011226: 00f59463 bne a1,a5,c001122e - c001122a: bb0fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18445 + c0011310: 2581 sext.w a1,a1 + c0011312: 4799 li a5,6 + c0011314: 00f59463 bne a1,a5,c001131c + c0011318: bb0fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18453 JS_FreeValue(ctx, sp[-1]); - c001122e: ff0d3583 ld a1,-16(s10) - c0011232: ff8d3603 ld a2,-8(s10) - c0011236: 8526 mv a0,s1 - c0011238: 901f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18446 + c001131c: ff0d3583 ld a1,-16(s10) + c0011320: ff8d3603 ld a2,-8(s10) + c0011324: 8526 mv a0,s1 + c0011326: 901f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18454 sp[-1] = ret_val; - c001123c: 720a3783 ld a5,1824(s4) - c0011240: fefd3823 sd a5,-16(s10) - c0011244: 728a3783 ld a5,1832(s4) - c0011248: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18447 + c001132a: 720a3783 ld a5,1824(s4) + c001132e: fefd3823 sd a5,-16(s10) + c0011332: 728a3783 ld a5,1832(s4) + c0011336: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18455 break; - c001124c: a2cfa06f j c000b478 - c0011250: e399 bnez a5,c0011256 - c0011252: a26fa06f j c000b478 - c0011256: b77d j c0011204 + c001133a: a2cfa06f j c000b566 + c001133e: e399 bnez a5,c0011344 + c0011340: a26fa06f j c000b566 + c0011344: b77d j c00112f2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0011258: 002bc783 lbu a5,2(s7) - c001125c: 001bcb03 lbu s6,1(s7) - c0011260: 005bca83 lbu s5,5(s7) - c0011264: 07a2 slli a5,a5,0x8 - c0011266: 0167e7b3 or a5,a5,s6 - c001126a: 003bcb03 lbu s6,3(s7) + c0011346: 002bc783 lbu a5,2(s7) + c001134a: 001bcb03 lbu s6,1(s7) + c001134e: 005bca83 lbu s5,5(s7) + c0011352: 07a2 slli a5,a5,0x8 + c0011354: 0167e7b3 or a5,a5,s6 + c0011358: 003bcb03 lbu s6,3(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18485 obj = sp[-1]; - c001126e: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18474 + c001135c: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18482 is_with = pc[8]; - c0011272: 009bcc03 lbu s8,9(s7) + c0011360: 009bcc03 lbu s8,9(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0011276: 0b42 slli s6,s6,0x10 - c0011278: 00fb67b3 or a5,s6,a5 - c001127c: 004bcb03 lbu s6,4(s7) + c0011364: 0b42 slli s6,s6,0x10 + c0011366: 00fb67b3 or a5,s6,a5 + c001136a: 004bcb03 lbu s6,4(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18486 ret = JS_HasProperty(ctx, obj, atom); - c0011280: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18475 + c001136e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18483 pc += 9; - c0011282: 00ab8913 addi s2,s7,10 + c0011370: 00ab8913 addi s2,s7,10 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0011286: 0b62 slli s6,s6,0x18 - c0011288: 00fb6b33 or s6,s6,a5 - c001128c: 006bc783 lbu a5,6(s7) - c0011290: 2b01 sext.w s6,s6 + c0011374: 0b62 slli s6,s6,0x18 + c0011376: 00fb6b33 or s6,s6,a5 + c001137a: 006bc783 lbu a5,6(s7) + c001137e: 2b01 sext.w s6,s6 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18486 ret = JS_HasProperty(ctx, obj, atom); - c0011292: 86da mv a3,s6 + c0011380: 86da mv a3,s6 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0011294: 07a2 slli a5,a5,0x8 - c0011296: 0157e7b3 or a5,a5,s5 - c001129a: 007bca83 lbu s5,7(s7) - c001129e: 0ac2 slli s5,s5,0x10 - c00112a0: 00fae7b3 or a5,s5,a5 - c00112a4: 008bca83 lbu s5,8(s7) + c0011382: 07a2 slli a5,a5,0x8 + c0011384: 0157e7b3 or a5,a5,s5 + c0011388: 007bca83 lbu s5,7(s7) + c001138c: 0ac2 slli s5,s5,0x10 + c001138e: 00fae7b3 or a5,s5,a5 + c0011392: 008bca83 lbu s5,8(s7) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18485 obj = sp[-1]; - c00112a8: deb43023 sd a1,-544(s0) - c00112ac: ff8d3603 ld a2,-8(s10) + c0011396: deb43023 sd a1,-544(s0) + c001139a: ff8d3603 ld a2,-8(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00112b0: 0ae2 slli s5,s5,0x18 - c00112b2: 00faeab3 or s5,s5,a5 - c00112b6: 2a81 sext.w s5,s5 + c001139e: 0ae2 slli s5,s5,0x18 + c00113a0: 00faeab3 or s5,s5,a5 + c00113a4: 2a81 sext.w s5,s5 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18477 - c00112b8: dec43423 sd a2,-536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18485 + c00113a6: dec43423 sd a2,-536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18486 ret = JS_HasProperty(ctx, obj, atom); - c00112bc: 7261f0ef jal ra,c00309e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18479 + c00113aa: 0091f0ef jal ra,c0030bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18487 if (unlikely(ret < 0)) - c00112c0: 00055463 bgez a0,c00112c8 - c00112c4: b16fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18481 + c00113ae: 00055463 bgez a0,c00113b6 + c00113b2: b16fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18489 if (ret) { - c00112c8: c179 beqz a0,c001138e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18482 + c00113b6: c179 beqz a0,c001147c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18490 if (is_with) { - c00112ca: 020c1363 bnez s8,c00112f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18489 + c00113b8: 020c1363 bnez s8,c00113de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18497 switch (opcode) { - c00112ce: f8ba0a1b addiw s4,s4,-117 - c00112d2: 0ffa7a13 zext.b s4,s4 - c00112d6: 4791 li a5,4 - c00112d8: 0d47e563 bltu a5,s4,c00113a2 - c00112dc: 0004c717 auipc a4,0x4c - c00112e0: 47870713 addi a4,a4,1144 # c005d754 - c00112e4: 0a0a slli s4,s4,0x2 - c00112e6: 9a3a add s4,s4,a4 - c00112e8: 000a2783 lw a5,0(s4) - c00112ec: 97ba add a5,a5,a4 - c00112ee: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18483 + c00113bc: f8ba0a1b addiw s4,s4,-117 + c00113c0: 0ffa7a13 zext.b s4,s4 + c00113c4: 4791 li a5,4 + c00113c6: 0d47e563 bltu a5,s4,c0011490 + c00113ca: 0004c717 auipc a4,0x4c + c00113ce: 5ba70713 addi a4,a4,1466 # c005d984 + c00113d2: 0a0a slli s4,s4,0x2 + c00113d4: 9a3a add s4,s4,a4 + c00113d6: 000a2783 lw a5,0(s4) + c00113da: 97ba add a5,a5,a4 + c00113dc: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18491 ret = js_has_unscopable(ctx, obj, atom); - c00112f0: de043703 ld a4,-544(s0) - c00112f4: de843783 ld a5,-536(s0) + c00113de: de043703 ld a4,-544(s0) + c00113e2: de843783 ld a5,-536(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00112f8: 0d600693 li a3,214 - c00112fc: 85ba mv a1,a4 - c00112fe: 863e mv a2,a5 - c0011300: 4801 li a6,0 - c0011302: 8526 mv a0,s1 - c0011304: e8e43023 sd a4,-384(s0) - c0011308: e8f43423 sd a5,-376(s0) + c00113e6: 0d600693 li a3,214 + c00113ea: 85ba mv a1,a4 + c00113ec: 863e mv a2,a5 + c00113ee: 4801 li a6,0 + c00113f0: 8526 mv a0,s1 + c00113f2: e8e43023 sd a4,-384(s0) + c00113f6: e8f43423 sd a5,-376(s0) js_has_unscopable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14643 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14651 arr = JS_GetProperty(ctx, obj, JS_ATOM_Symbol_unscopables); - c001130c: eee43823 sd a4,-272(s0) - c0011310: eef43c23 sd a5,-264(s0) + c00113fa: eee43823 sd a4,-272(s0) + c00113fe: eef43c23 sd a5,-264(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0011314: 52e000ef jal ra,c0011842 - c0011318: eaa43823 sd a0,-336(s0) - c001131c: eab43c23 sd a1,-328(s0) - c0011320: e8a43823 sd a0,-368(s0) - c0011324: e8b43c23 sd a1,-360(s0) + c0011402: 52e000ef jal ra,c0011930 + c0011406: eaa43823 sd a0,-336(s0) + c001140a: eab43c23 sd a1,-328(s0) + c001140e: e8a43823 sd a0,-368(s0) + c0011412: e8b43c23 sd a1,-360(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0011328: 0005869b sext.w a3,a1 + c0011416: 0005869b sext.w a3,a1 js_has_unscopable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14652 if (JS_IsException(arr)) - c001132c: 4619 li a2,6 + c001141a: 4619 li a2,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001132e: 872a mv a4,a0 - c0011330: 87ae mv a5,a1 + c001141c: 872a mv a4,a0 + c001141e: 87ae mv a5,a1 js_has_unscopable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14644 - c0011332: 00c69463 bne a3,a2,c001133a - c0011336: aa4fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14652 + c0011420: 00c69463 bne a3,a2,c0011428 + c0011424: aa4fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14655 if (JS_IsObject(arr)) { - c001133a: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14646 + c0011428: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14654 ret = 0; - c001133c: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14647 + c001142a: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14655 if (JS_IsObject(arr)) { - c001133e: 02c69b63 bne a3,a2,c0011374 + c001142c: 02c69b63 bne a3,a2,c0011462 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0011342: 863e mv a2,a5 - c0011344: eea43823 sd a0,-272(s0) - c0011348: eeb43c23 sd a1,-264(s0) - c001134c: 4801 li a6,0 - c001134e: 86da mv a3,s6 - c0011350: 85aa mv a1,a0 - c0011352: 8526 mv a0,s1 - c0011354: 4ee000ef jal ra,c0011842 - c0011358: 862e mv a2,a1 - c001135a: eaa43023 sd a0,-352(s0) - c001135e: eab43423 sd a1,-344(s0) - c0011362: eca43823 sd a0,-304(s0) - c0011366: ecb43c23 sd a1,-296(s0) + c0011430: 863e mv a2,a5 + c0011432: eea43823 sd a0,-272(s0) + c0011436: eeb43c23 sd a1,-264(s0) + c001143a: 4801 li a6,0 + c001143c: 86da mv a3,s6 + c001143e: 85aa mv a1,a0 + c0011440: 8526 mv a0,s1 + c0011442: 4ee000ef jal ra,c0011930 + c0011446: 862e mv a2,a1 + c0011448: eaa43023 sd a0,-352(s0) + c001144c: eab43423 sd a1,-344(s0) + c0011450: eca43823 sd a0,-304(s0) + c0011454: ecb43c23 sd a1,-296(s0) js_has_unscopable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14649 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14657 ret = JS_ToBoolFree(ctx, val); - c001136a: 85aa mv a1,a0 - c001136c: 8526 mv a0,s1 - c001136e: af7f60ef jal ra,c0007e64 - c0011372: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14651 + c0011458: 85aa mv a1,a0 + c001145a: 8526 mv a0,s1 + c001145c: af7f60ef jal ra,c0007f52 + c0011460: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14659 JS_FreeValue(ctx, arr); - c0011374: e9043583 ld a1,-368(s0) - c0011378: e9843603 ld a2,-360(s0) - c001137c: 8526 mv a0,s1 - c001137e: fbaf60ef jal ra,c0007b38 + c0011462: e9043583 ld a1,-368(s0) + c0011466: e9843603 ld a2,-360(s0) + c001146a: 8526 mv a0,s1 + c001146c: fbaf60ef jal ra,c0007c26 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18492 if (unlikely(ret < 0)) - c0011382: 000bd463 bgez s7,c001138a - c0011386: a54fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18486 + c0011470: 000bd463 bgez s7,c0011478 + c0011474: a54fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18494 if (ret) - c001138a: f40b82e3 beqz s7,c00112ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18537 + c0011478: f40b82e3 beqz s7,c00113bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18545 JS_FreeValue(ctx, sp[-1]); - c001138e: ff0d3583 ld a1,-16(s10) - c0011392: ff8d3603 ld a2,-8(s10) - c0011396: 8526 mv a0,s1 - c0011398: ff0d0a13 addi s4,s10,-16 - c001139c: f9cf60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18538 + c001147c: ff0d3583 ld a1,-16(s10) + c0011480: ff8d3603 ld a2,-8(s10) + c0011484: 8526 mv a0,s1 + c0011486: ff0d0a13 addi s4,s10,-16 + c001148a: f9cf60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18546 sp--; - c00113a0: a889 j c00113f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18491 + c001148e: a889 j c00114e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18499 val = JS_GetProperty(ctx, obj, atom); - c00113a2: de043703 ld a4,-544(s0) - c00113a6: de843783 ld a5,-536(s0) + c0011490: de043703 ld a4,-544(s0) + c0011494: de843783 ld a5,-536(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00113aa: 86da mv a3,s6 - c00113ac: 85ba mv a1,a4 - c00113ae: 863e mv a2,a5 - c00113b0: 4801 li a6,0 - c00113b2: 8526 mv a0,s1 - c00113b4: eee43823 sd a4,-272(s0) - c00113b8: eef43c23 sd a5,-264(s0) - c00113bc: 486000ef jal ra,c0011842 - c00113c0: aca43023 sd a0,-1344(s0) - c00113c4: acb43423 sd a1,-1336(s0) - c00113c8: eca43823 sd a0,-304(s0) - c00113cc: ecb43c23 sd a1,-296(s0) + c0011498: 86da mv a3,s6 + c001149a: 85ba mv a1,a4 + c001149c: 863e mv a2,a5 + c001149e: 4801 li a6,0 + c00114a0: 8526 mv a0,s1 + c00114a2: eee43823 sd a4,-272(s0) + c00114a6: eef43c23 sd a5,-264(s0) + c00114aa: 486000ef jal ra,c0011930 + c00114ae: aca43023 sd a0,-1344(s0) + c00114b2: acb43423 sd a1,-1336(s0) + c00114b6: eca43823 sd a0,-304(s0) + c00114ba: ecb43c23 sd a1,-296(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18500 if (unlikely(JS_IsException(val))) - c00113d0: 0005871b sext.w a4,a1 - c00113d4: 4799 li a5,6 + c00114be: 0005871b sext.w a4,a1 + c00114c2: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00113d6: 862a mv a2,a0 - c00113d8: 86ae mv a3,a1 + c00114c4: 862a mv a2,a0 + c00114c6: 86ae mv a3,a1 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18492 - c00113da: 00f71463 bne a4,a5,c00113e2 - c00113de: 9fcfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18500 + c00114c8: 00f71463 bne a4,a5,c00114d0 + c00114cc: 9fcfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18502 set_value(ctx, &sp[-1], val); - c00113e2: ff0d0593 addi a1,s10,-16 - c00113e6: 8526 mv a0,s1 - c00113e8: b9bf60ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18511 + c00114d0: ff0d0593 addi a1,s10,-16 + c00114d4: 8526 mv a0,s1 + c00114d6: b9bf60ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18519 break; - c00113ec: 8a6a mv s4,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18533 - pc += diff - 5; - c00113ee: 3aed addiw s5,s5,-5 - c00113f0: 9956 add s2,s2,s5 + c00114da: 8a6a mv s4,s10 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18541 + pc += diff - 5; + c00114dc: 3aed addiw s5,s5,-5 + c00114de: 9956 add s2,s2,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18549 BREAK; - c00113f2: 8d52 mv s10,s4 - c00113f4: 884fa06f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18498 + c00114e0: 8d52 mv s10,s4 + c00114e2: 884fa06f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18506 ret = JS_SetPropertyInternal(ctx, obj, atom, sp[-2], obj, - c00113f8: 67a1 lui a5,0x8 - c00113fa: e03e sd a5,0(sp) - c00113fc: de043803 ld a6,-544(s0) - c0011400: de843883 ld a7,-536(s0) - c0011404: fe0d3703 ld a4,-32(s10) - c0011408: fe8d3783 ld a5,-24(s10) - c001140c: 86da mv a3,s6 - c001140e: 85c2 mv a1,a6 - c0011410: 8646 mv a2,a7 - c0011412: 8526 mv a0,s1 - c0011414: 4cb000ef jal ra,c00120de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18500 + c00114e6: 67a1 lui a5,0x8 + c00114e8: e03e sd a5,0(sp) + c00114ea: de043803 ld a6,-544(s0) + c00114ee: de843883 ld a7,-536(s0) + c00114f2: fe0d3703 ld a4,-32(s10) + c00114f6: fe8d3783 ld a5,-24(s10) + c00114fa: 86da mv a3,s6 + c00114fc: 85c2 mv a1,a6 + c00114fe: 8646 mv a2,a7 + c0011500: 8526 mv a0,s1 + c0011502: 4cb000ef jal ra,c00121cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18508 JS_FreeValue(ctx, sp[-1]); - c0011418: ff0d3583 ld a1,-16(s10) - c001141c: ff8d3603 ld a2,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18498 + c0011506: ff0d3583 ld a1,-16(s10) + c001150a: ff8d3603 ld a2,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18506 ret = JS_SetPropertyInternal(ctx, obj, atom, sp[-2], obj, - c0011420: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18500 + c001150e: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18508 JS_FreeValue(ctx, sp[-1]); - c0011422: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18498 + c0011510: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18506 ret = JS_SetPropertyInternal(ctx, obj, atom, sp[-2], obj, - c0011424: fe0d0a13 addi s4,s10,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18500 + c0011512: fe0d0a13 addi s4,s10,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18508 JS_FreeValue(ctx, sp[-1]); - c0011428: f10f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18502 + c0011516: f10f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18510 if (unlikely(ret < 0)) - c001142c: fc0b51e3 bgez s6,c00113ee - c0011430: 8d52 mv s10,s4 - c0011432: 9a8fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18506 + c001151a: fc0b51e3 bgez s6,c00114dc + c001151e: 8d52 mv s10,s4 + c0011520: 9a8fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18514 ret = JS_DeleteProperty(ctx, obj, atom, 0); - c0011436: de043583 ld a1,-544(s0) - c001143a: de843603 ld a2,-536(s0) - c001143e: 4701 li a4,0 - c0011440: 86da mv a3,s6 - c0011442: 8526 mv a0,s1 - c0011444: 3dc170ef jal ra,c0028820 - c0011448: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18507 + c0011524: de043583 ld a1,-544(s0) + c0011528: de843603 ld a2,-536(s0) + c001152c: 4701 li a4,0 + c001152e: 86da mv a3,s6 + c0011530: 8526 mv a0,s1 + c0011532: 4be170ef jal ra,c00289f0 + c0011536: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18515 if (unlikely(ret < 0)) - c001144a: 00055463 bgez a0,c0011452 - c001144e: 98cfa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18509 + c0011538: 00055463 bgez a0,c0011540 + c001153c: 98cfa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18517 JS_FreeValue(ctx, sp[-1]); - c0011452: ff0d3583 ld a1,-16(s10) - c0011456: ff8d3603 ld a2,-8(s10) - c001145a: 8526 mv a0,s1 + c0011540: ff0d3583 ld a1,-16(s10) + c0011544: ff8d3603 ld a2,-8(s10) + c0011548: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001145c: 01403a33 snez s4,s4 + c001154a: 01403a33 snez s4,s4 JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18509 - c0011460: ed8f60ef jal ra,c0007b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18517 + c001154e: ed8f60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0011464: ac042a23 sw zero,-1324(s0) - c0011468: ad442823 sw s4,-1328(s0) - c001146c: ad043783 ld a5,-1328(s0) - c0011470: 4705 li a4,1 - c0011472: eee43c23 sd a4,-264(s0) - c0011476: eef43823 sd a5,-272(s0) + c0011552: ac042a23 sw zero,-1324(s0) + c0011556: ad442823 sw s4,-1328(s0) + c001155a: ad043783 ld a5,-1328(s0) + c001155e: 4705 li a4,1 + c0011560: eee43c23 sd a4,-264(s0) + c0011564: eef43823 sd a5,-272(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18518 sp[-1] = JS_NewBool(ctx, ret); - c001147a: fefd3823 sd a5,-16(s10) - c001147e: ef843783 ld a5,-264(s0) - c0011482: ace43c23 sd a4,-1320(s0) - c0011486: fefd3c23 sd a5,-8(s10) - c001148a: b78d j c00113ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18514 + c0011568: fefd3823 sd a5,-16(s10) + c001156c: ef843783 ld a5,-264(s0) + c0011570: ace43c23 sd a4,-1320(s0) + c0011574: fefd3c23 sd a5,-8(s10) + c0011578: b78d j c00114da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18522 *sp++ = JS_AtomToValue(ctx, atom); - c001148c: 85da mv a1,s6 - c001148e: 8526 mv a0,s1 - c0011490: 6a2080ef jal ra,c0019b32 - c0011494: 010d0a13 addi s4,s10,16 - c0011498: 00ad3023 sd a0,0(s10) - c001149c: 00bd3423 sd a1,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18515 + c001157a: 85da mv a1,s6 + c001157c: 8526 mv a0,s1 + c001157e: 784080ef jal ra,c0019d02 + c0011582: 010d0a13 addi s4,s10,16 + c0011586: 00ad3023 sd a0,0(s10) + c001158a: 00bd3423 sd a1,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18523 break; - c00114a0: b7b9 j c00113ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18518 + c001158e: b7b9 j c00114dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18526 val = JS_GetProperty(ctx, obj, atom); - c00114a2: de843783 ld a5,-536(s0) - c00114a6: de043703 ld a4,-544(s0) + c0011590: de843783 ld a5,-536(s0) + c0011594: de043703 ld a4,-544(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00114aa: 4801 li a6,0 - c00114ac: 863e mv a2,a5 - c00114ae: 86da mv a3,s6 - c00114b0: 85ba mv a1,a4 - c00114b2: 8526 mv a0,s1 - c00114b4: eef43c23 sd a5,-264(s0) - c00114b8: eee43823 sd a4,-272(s0) - c00114bc: 386000ef jal ra,c0011842 - c00114c0: aeb43423 sd a1,-1304(s0) - c00114c4: ecb43c23 sd a1,-296(s0) - c00114c8: aea43023 sd a0,-1312(s0) - c00114cc: eca43823 sd a0,-304(s0) + c0011598: 4801 li a6,0 + c001159a: 863e mv a2,a5 + c001159c: 86da mv a3,s6 + c001159e: 85ba mv a1,a4 + c00115a0: 8526 mv a0,s1 + c00115a2: eef43c23 sd a5,-264(s0) + c00115a6: eee43823 sd a4,-272(s0) + c00115aa: 386000ef jal ra,c0011930 + c00115ae: aeb43423 sd a1,-1304(s0) + c00115b2: ecb43c23 sd a1,-296(s0) + c00115b6: aea43023 sd a0,-1312(s0) + c00115ba: eca43823 sd a0,-304(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18519 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18527 if (unlikely(JS_IsException(val))) - c00114d0: 2581 sext.w a1,a1 - c00114d2: 4799 li a5,6 - c00114d4: 00f59463 bne a1,a5,c00114dc - c00114d8: 902fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18521 + c00115be: 2581 sext.w a1,a1 + c00115c0: 4799 li a5,6 + c00115c2: 00f59463 bne a1,a5,c00115ca + c00115c6: 902fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18529 *sp++ = val; - c00114dc: 010d0a13 addi s4,s10,16 - c00114e0: 00ad3023 sd a0,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18530 + c00115ca: 010d0a13 addi s4,s10,16 + c00115ce: 00ad3023 sd a0,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18538 *sp++ = val; - c00114e4: ed843783 ld a5,-296(s0) - c00114e8: 00fd3423 sd a5,8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18531 + c00115d2: ed843783 ld a5,-296(s0) + c00115d6: 00fd3423 sd a5,8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18539 break; - c00114ec: b709 j c00113ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18525 + c00115da: b709 j c00114dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18533 val = JS_GetProperty(ctx, obj, atom); - c00114ee: de843783 ld a5,-536(s0) - c00114f2: de043703 ld a4,-544(s0) + c00115dc: de843783 ld a5,-536(s0) + c00115e0: de043703 ld a4,-544(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00114f6: 4801 li a6,0 - c00114f8: 863e mv a2,a5 - c00114fa: 86da mv a3,s6 - c00114fc: 85ba mv a1,a4 - c00114fe: 8526 mv a0,s1 - c0011500: eef43c23 sd a5,-264(s0) - c0011504: eee43823 sd a4,-272(s0) - c0011508: 33a000ef jal ra,c0011842 - c001150c: aeb43c23 sd a1,-1288(s0) - c0011510: ecb43c23 sd a1,-296(s0) - c0011514: aea43823 sd a0,-1296(s0) - c0011518: eca43823 sd a0,-304(s0) + c00115e4: 4801 li a6,0 + c00115e6: 863e mv a2,a5 + c00115e8: 86da mv a3,s6 + c00115ea: 85ba mv a1,a4 + c00115ec: 8526 mv a0,s1 + c00115ee: eef43c23 sd a5,-264(s0) + c00115f2: eee43823 sd a4,-272(s0) + c00115f6: 33a000ef jal ra,c0011930 + c00115fa: aeb43c23 sd a1,-1288(s0) + c00115fe: ecb43c23 sd a1,-296(s0) + c0011602: aea43823 sd a0,-1296(s0) + c0011606: eca43823 sd a0,-304(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18534 if (unlikely(JS_IsException(val))) - c001151c: 2581 sext.w a1,a1 - c001151e: 4799 li a5,6 - c0011520: 00f59463 bne a1,a5,c0011528 - c0011524: 8b6fa06f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18528 + c001160a: 2581 sext.w a1,a1 + c001160c: 4799 li a5,6 + c001160e: 00f59463 bne a1,a5,c0011616 + c0011612: 8b6fa06f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18536 JS_FreeValue(ctx, sp[-1]); - c0011528: ff0d3583 ld a1,-16(s10) - c001152c: ff8d3603 ld a2,-8(s10) - c0011530: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18530 + c0011616: ff0d3583 ld a1,-16(s10) + c001161a: ff8d3603 ld a2,-8(s10) + c001161e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18538 *sp++ = val; - c0011532: 010d0a13 addi s4,s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18528 + c0011620: 010d0a13 addi s4,s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18536 JS_FreeValue(ctx, sp[-1]); - c0011536: e02f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18529 + c0011624: e02f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18537 sp[-1] = JS_UNDEFINED; - c001153a: 478d li a5,3 - c001153c: fe0d3823 sd zero,-16(s10) - c0011540: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18530 + c0011628: 478d li a5,3 + c001162a: fe0d3823 sd zero,-16(s10) + c001162e: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18538 *sp++ = val; - c0011544: ed043783 ld a5,-304(s0) - c0011548: 00fd3023 sd a5,0(s10) - c001154c: bf61 j c00114e4 + c0011632: ed043783 ld a5,-304(s0) + c0011636: 00fd3023 sd a5,0(s10) + c001163a: bf61 j c00115d2 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001154e: 77fd lui a5,0xfffff - c0011550: f8040713 addi a4,s0,-128 - c0011554: 97ba add a5,a5,a4 - c0011556: e8043023 sd zero,-384(s0) - c001155a: e8043423 sd zero,-376(s0) - c001155e: 7207b023 sd zero,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c0011562: 7207b423 sd zero,1832(a5) + c001163c: 77fd lui a5,0xfffff + c001163e: f8040713 addi a4,s0,-128 + c0011642: 97ba add a5,a5,a4 + c0011644: e8043023 sd zero,-384(s0) + c0011648: e8043423 sd zero,-376(s0) + c001164c: 7207b023 sd zero,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c0011650: 7207b423 sd zero,1832(a5) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18545 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18553 goto done_generator; - c0011566: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18647 + c0011654: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18655 sf->cur_pc = pc; - c0011568: 77fd lui a5,0xfffff - c001156a: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c001156e: 97a2 add a5,a5,s0 - c0011570: 639c ld a5,0(a5) - c0011572: 0327bc23 sd s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18648 + c0011656: 77fd lui a5,0xfffff + c0011658: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c001165c: 97a2 add a5,a5,s0 + c001165e: 639c ld a5,0(a5) + c0011660: 0327bc23 sd s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18656 sf->cur_sp = sp; - c0011576: 77fd lui a5,0xfffff - c0011578: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c001157c: 97a2 add a5,a5,s0 - c001157e: 639c ld a5,0(a5) - c0011580: 05a7b423 sd s10,72(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18660 + c0011664: 77fd lui a5,0xfffff + c0011666: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c001166a: 97a2 add a5,a5,s0 + c001166c: 639c ld a5,0(a5) + c001166e: 05a7b423 sd s10,72(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18668 rt->current_stack_frame = sf->prev_frame; - c0011584: 77fd lui a5,0xfffff - c0011586: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> - c001158a: 97a2 add a5,a5,s0 - c001158c: 639c ld a5,0(a5) - c001158e: 777d lui a4,0xfffff - c0011590: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c0011594: 9722 add a4,a4,s0 - c0011596: 639c ld a5,0(a5) - c0011598: 6318 ld a4,0(a4) - c001159a: ff7c sd a5,248(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18661 + c0011672: 77fd lui a5,0xfffff + c0011674: 66078793 addi a5,a5,1632 # fffffffffffff660 <_ebss+0xffffffff3fefe53a> + c0011678: 97a2 add a5,a5,s0 + c001167a: 639c ld a5,0(a5) + c001167c: 777d lui a4,0xfffff + c001167e: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c0011682: 9722 add a4,a4,s0 + c0011684: 639c ld a5,0(a5) + c0011686: 6318 ld a4,0(a4) + c0011688: ff7c sd a5,248(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18669 return ret_val; - c001159c: f8040713 addi a4,s0,-128 - c00115a0: 77fd lui a5,0xfffff - c00115a2: 97ba add a5,a5,a4 - c00115a4: 777d lui a4,0xfffff - c00115a6: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> - c00115aa: 9722 add a4,a4,s0 - c00115ac: 6318 ld a4,0(a4) - c00115ae: df443423 sd s4,-536(s0) - c00115b2: 72e7a023 sw a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c00115b6: 7207b783 ld a5,1824(a5) - c00115ba: def43023 sd a5,-544(s0) - c00115be: aa1f906f j c000b05e + c001168a: f8040713 addi a4,s0,-128 + c001168e: 77fd lui a5,0xfffff + c0011690: 97ba add a5,a5,a4 + c0011692: 777d lui a4,0xfffff + c0011694: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> + c0011698: 9722 add a4,a4,s0 + c001169a: 6318 ld a4,0(a4) + c001169c: df443423 sd s4,-536(s0) + c00116a0: 72e7a023 sw a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c00116a4: 7207b783 ld a5,1824(a5) + c00116a8: def43023 sd a5,-544(s0) + c00116ac: aa1f906f j c000b14c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00115c2: 77fd lui a5,0xfffff - c00115c4: f8040693 addi a3,s0,-128 - c00115c8: 97b6 add a5,a5,a3 - c00115ca: 4705 li a4,1 - c00115cc: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c00115d0: 7207b423 sd zero,1832(a5) - c00115d4: e8e43823 sd a4,-368(s0) - c00115d8: e8043c23 sd zero,-360(s0) + c00116b0: 77fd lui a5,0xfffff + c00116b2: f8040693 addi a3,s0,-128 + c00116b6: 97b6 add a5,a5,a3 + c00116b8: 4705 li a4,1 + c00116ba: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c00116be: 7207b423 sd zero,1832(a5) + c00116c2: e8e43823 sd a4,-368(s0) + c00116c6: e8043c23 sd zero,-360(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18556 goto done_generator; - c00115dc: 4a01 li s4,0 - c00115de: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18552 + c00116ca: 4a01 li s4,0 + c00116cc: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18560 goto done_generator; - c00115e0: 777d lui a4,0xfffff - c00115e2: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> - c00115e6: 9722 add a4,a4,s0 - c00115e8: e31c sd a5,0(a4) - c00115ea: bfbd j c0011568 + c00116ce: 777d lui a4,0xfffff + c00116d0: 62870713 addi a4,a4,1576 # fffffffffffff628 <_ebss+0xffffffff3fefe502> + c00116d4: 9722 add a4,a4,s0 + c00116d6: e31c sd a5,0(a4) + c00116d8: bfbd j c0011656 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00115ec: 77fd lui a5,0xfffff - c00115ee: f8040693 addi a3,s0,-128 - c00115f2: 97b6 add a5,a5,a3 - c00115f4: 4709 li a4,2 - c00115f6: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c00115fa: 7207b423 sd zero,1832(a5) - c00115fe: ece43823 sd a4,-304(s0) - c0011602: ec043c23 sd zero,-296(s0) + c00116da: 77fd lui a5,0xfffff + c00116dc: f8040693 addi a3,s0,-128 + c00116e0: 97b6 add a5,a5,a3 + c00116e2: 4709 li a4,2 + c00116e4: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c00116e8: 7207b423 sd zero,1832(a5) + c00116ec: ece43823 sd a4,-304(s0) + c00116f0: ec043c23 sd zero,-296(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18552 - c0011606: 4a01 li s4,0 - c0011608: 4789 li a5,2 - c001160a: bfd9 j c00115e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18560 + c00116f4: 4a01 li s4,0 + c00116f6: 4789 li a5,2 + c00116f8: bfd9 j c00116ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18562 ret_val = JS_UNDEFINED; - c001160c: 77fd lui a5,0xfffff - c001160e: f8040713 addi a4,s0,-128 - c0011612: 97ba add a5,a5,a4 - c0011614: 7207a223 sw zero,1828(a5) # fffffffffffff724 <_ebss+0xffffffff3fefe5fe> - c0011618: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18555 + c00116fa: 77fd lui a5,0xfffff + c00116fc: f8040713 addi a4,s0,-128 + c0011700: 97ba add a5,a5,a4 + c0011702: 7207a223 sw zero,1828(a5) # fffffffffffff724 <_ebss+0xffffffff3fefe5fe> + c0011706: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18563 goto done_generator; - c001161a: b7b9 j c0011568 + c0011708: b7b9 j c0011656 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001161c: 77fd lui a5,0xfffff - c001161e: f8040693 addi a3,s0,-128 - c0011622: 97b6 add a5,a5,a3 - c0011624: 470d li a4,3 - c0011626: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> - c001162a: 7207b423 sd zero,1832(a5) - c001162e: eee43823 sd a4,-272(s0) - c0011632: ee043c23 sd zero,-264(s0) + c001170a: 77fd lui a5,0xfffff + c001170c: f8040693 addi a3,s0,-128 + c0011710: 97b6 add a5,a5,a3 + c0011712: 470d li a4,3 + c0011714: 72e7b023 sd a4,1824(a5) # fffffffffffff720 <_ebss+0xffffffff3fefe5fa> + c0011718: 7207b423 sd zero,1832(a5) + c001171c: eee43823 sd a4,-272(s0) + c0011720: ee043c23 sd zero,-264(s0) JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18566 goto done_generator; - c0011636: 4a01 li s4,0 - c0011638: 478d li a5,3 - c001163a: b75d j c00115e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18563 + c0011724: 4a01 li s4,0 + c0011726: 478d li a5,3 + c0011728: b75d j c00116ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18571 if (JS_VALUE_GET_TAG(sp[-1]) == JS_TAG_UNDEFINED || - c001163c: ff8d3783 ld a5,-8(s10) - c0011640: 4705 li a4,1 - c0011642: 37f9 addiw a5,a5,-2 - c0011644: 02f76063 bltu a4,a5,c0011664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18600 + c001172a: ff8d3783 ld a5,-8(s10) + c001172e: 4705 li a4,1 + c0011730: 37f9 addiw a5,a5,-2 + c0011732: 02f76063 bltu a4,a5,c0011752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18608 sp[-1] = JS_TRUE; - c0011648: 4785 li a5,1 - c001164a: fe0d3823 sd zero,-16(s10) - c001164e: fefd2823 sw a5,-16(s10) - c0011652: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18601 + c0011736: 4785 li a5,1 + c0011738: fe0d3823 sd zero,-16(s10) + c001173c: fefd2823 sw a5,-16(s10) + c0011740: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18609 BREAK; - c0011656: e23f906f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18571 + c0011744: e23f906f j c000b566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18579 if (JS_VALUE_GET_TAG(sp[-1]) == JS_TAG_UNDEFINED) { - c001165a: ff8d2703 lw a4,-8(s10) - c001165e: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18577 + c0011748: ff8d2703 lw a4,-8(s10) + c001174c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18585 if (JS_VALUE_GET_TAG(sp[-1]) == JS_TAG_NULL) { - c0011660: fef704e3 beq a4,a5,c0011648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18603 + c001174e: fef704e3 beq a4,a5,c0011736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18611 JS_FreeValue(ctx, sp[-1]); - c0011664: ff0d3583 ld a1,-16(s10) - c0011668: ff8d3603 ld a2,-8(s10) - c001166c: 8526 mv a0,s1 - c001166e: ccaf60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18604 + c0011752: ff0d3583 ld a1,-16(s10) + c0011756: ff8d3603 ld a2,-8(s10) + c001175a: 8526 mv a0,s1 + c001175c: ccaf60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18612 sp[-1] = JS_FALSE; - c0011672: 4785 li a5,1 - c0011674: fe0d3823 sd zero,-16(s10) - c0011678: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18605 + c0011760: 4785 li a5,1 + c0011762: fe0d3823 sd zero,-16(s10) + c0011766: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18613 BREAK; - c001167c: dfdf906f j c000b478 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18577 - if (JS_VALUE_GET_TAG(sp[-1]) == JS_TAG_NULL) { - c0011680: ff8d2703 lw a4,-8(s10) - c0011684: 4789 li a5,2 - c0011686: bfe9 j c0011660 + c001176a: dfdf906f j c000b566 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18585 + if (JS_VALUE_GET_TAG(sp[-1]) == JS_TAG_NULL) { + c001176e: ff8d2703 lw a4,-8(s10) + c0011772: 4789 li a5,2 + c0011774: bfe9 j c001174e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18593 if (js_operator_typeof(ctx, sp[-1]) == JS_ATOM_undefined) { - c0011688: ff0d3583 ld a1,-16(s10) - c001168c: ff8d3603 ld a2,-8(s10) - c0011690: 8526 mv a0,s1 - c0011692: 896f90ef jal ra,c000a728 - c0011696: 04600793 li a5,70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18591 + c0011776: ff0d3583 ld a1,-16(s10) + c001177a: ff8d3603 ld a2,-8(s10) + c001177e: 8526 mv a0,s1 + c0011780: 896f90ef jal ra,c000a816 + c0011784: 04600793 li a5,70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18599 if (js_operator_typeof(ctx, sp[-1]) == JS_ATOM_function) { - c001169a: fcf515e3 bne a0,a5,c0011664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18597 + c0011788: fcf515e3 bne a0,a5,c0011752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18605 JS_FreeValue(ctx, sp[-1]); - c001169e: ff0d3583 ld a1,-16(s10) - c00116a2: ff8d3603 ld a2,-8(s10) - c00116a6: 8526 mv a0,s1 - c00116a8: c90f60ef jal ra,c0007b38 - c00116ac: bf71 j c0011648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18591 + c001178c: ff0d3583 ld a1,-16(s10) + c0011790: ff8d3603 ld a2,-8(s10) + c0011794: 8526 mv a0,s1 + c0011796: c90f60ef jal ra,c0007c26 + c001179a: bf71 j c0011736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18599 if (js_operator_typeof(ctx, sp[-1]) == JS_ATOM_function) { - c00116ae: ff0d3583 ld a1,-16(s10) - c00116b2: ff8d3603 ld a2,-8(s10) - c00116b6: 8526 mv a0,s1 - c00116b8: 870f90ef jal ra,c000a728 - c00116bc: 47ed li a5,27 - c00116be: bff1 j c001169a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18609 + c001179c: ff0d3583 ld a1,-16(s10) + c00117a0: ff8d3603 ld a2,-8(s10) + c00117a4: 8526 mv a0,s1 + c00117a6: 870f90ef jal ra,c000a816 + c00117aa: 47ed li a5,27 + c00117ac: bff1 j c0011788 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18617 (int)(pc - b->byte_code_buf - 1), opcode); - c00116c0: 020db603 ld a2,32(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18608 + c00117ae: 020db603 ld a2,32(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18616 JS_ThrowInternalError(ctx, "invalid opcode: pc=%u opcode=0x%02x", - c00116c4: 86d6 mv a3,s5 - c00116c6: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18609 + c00117b2: 86d6 mv a3,s5 + c00117b4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18617 (int)(pc - b->byte_code_buf - 1), opcode); - c00116c8: 40c90633 sub a2,s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18608 + c00117b6: 40c90633 sub a2,s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18616 JS_ThrowInternalError(ctx, "invalid opcode: pc=%u opcode=0x%02x", - c00116cc: 367d addiw a2,a2,-1 - c00116ce: 0004c597 auipc a1,0x4c - c00116d2: bfa58593 addi a1,a1,-1030 # c005d2c8 - c00116d6: 2ae030ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18610 + c00117ba: 367d addiw a2,a2,-1 + c00117bc: 0004c597 auipc a1,0x4c + c00117c0: d3c58593 addi a1,a1,-708 # c005d4f8 + c00117c4: 2ae030ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18618 goto exception; - c00116da: f01f906f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16177 + c00117c8: f01f906f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16185 local_buf = arg_buf = sf->arg_buf; - c00116de: 77fd lui a5,0xfffff - c00116e0: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> - c00116e4: 97a2 add a5,a5,s0 - c00116e6: 639c ld a5,0(a5) - c00116e8: 777d lui a4,0xfffff - c00116ea: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> - c00116ee: 9722 add a4,a4,s0 - c00116f0: e31c sd a5,0(a4) - c00116f2: ee9f906f j c000b5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17390 + c00117cc: 77fd lui a5,0xfffff + c00117ce: 63878793 addi a5,a5,1592 # fffffffffffff638 <_ebss+0xffffffff3fefe512> + c00117d2: 97a2 add a5,a5,s0 + c00117d4: 639c ld a5,0(a5) + c00117d6: 777d lui a4,0xfffff + c00117d8: 65870713 addi a4,a4,1624 # fffffffffffff658 <_ebss+0xffffffff3fefe532> + c00117dc: 9722 add a4,a4,s0 + c00117de: e31c sd a5,0(a4) + c00117e0: ee9f906f j c000b6c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:17398 JS_FreeValue(ctx, sp[-1]); /* drop the next method */ - c00116f6: 8d52 mv s10,s4 - c00116f8: ee3f906f j c000b5da + c00117e4: 8d52 mv s10,s4 + c00117e6: ee3f906f j c000b6c8 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c00116fc: 078e slli a5,a5,0x3 - c00116fe: 17e1 addi a5,a5,-8 - c0011700: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c00117ea: 078e slli a5,a5,0x3 + c00117ec: 17e1 addi a5,a5,-8 + c00117ee: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c0011702: 43cc lw a1,4(a5) - c0011704: 00c59463 bne a1,a2,c001170c - c0011708: f61f906f j c000b668 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c00117f0: 43cc lw a1,4(a5) + c00117f2: 00c59463 bne a1,a2,c00117fa + c00117f6: f61f906f j c000b756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c001170c: 439c lw a5,0(a5) - c001170e: 8ff5 and a5,a5,a3 - c0011710: 1782 slli a5,a5,0x20 - c0011712: 9381 srli a5,a5,0x20 - c0011714: f1df906f j c000b630 + c00117fa: 439c lw a5,0(a5) + c00117fc: 8ff5 and a5,a5,a3 + c00117fe: 1782 slli a5,a5,0x20 + c0011800: 9381 srli a5,a5,0x20 + c0011802: f1df906f j c000b71e JS_CallInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18631 JSValue val = *--sp; - c0011718: ff0d3583 ld a1,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18624 + c0011806: ff0d3583 ld a1,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18632 JS_FreeValue(ctx, val); - c001171c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18623 + c001180a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18631 JSValue val = *--sp; - c001171e: eeb43823 sd a1,-272(s0) - c0011722: ff8d3603 ld a2,-8(s10) - c0011726: eec43c23 sd a2,-264(s0) - c001172a: ff8d3a03 ld s4,-8(s10) - c001172e: ff0d2a83 lw s5,-16(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18624 + c001180c: eeb43823 sd a1,-272(s0) + c0011810: ff8d3603 ld a2,-8(s10) + c0011814: eec43c23 sd a2,-264(s0) + c0011818: ff8d3a03 ld s4,-8(s10) + c001181c: ff0d2a83 lw s5,-16(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18632 JS_FreeValue(ctx, val); - c0011732: c06f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18625 + c0011820: c06f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 if (JS_VALUE_GET_TAG(val) == JS_TAG_CATCH_OFFSET) { - c0011736: 000a079b sext.w a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18623 + c0011824: 000a079b sext.w a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18631 JSValue val = *--sp; - c001173a: ff0d0a13 addi s4,s10,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18625 + c0011828: ff0d0a13 addi s4,s10,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 if (JS_VALUE_GET_TAG(val) == JS_TAG_CATCH_OFFSET) { - c001173e: 03379563 bne a5,s3,c0011768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18627 + c001182c: 03379563 bne a5,s3,c0011856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18635 if (pos == 0) { - c0011742: 020a9d63 bnez s5,c001177c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18629 + c0011830: 020a9d63 bnez s5,c001186a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18637 JS_FreeValue(ctx, sp[-1]); /* drop the next method */ - c0011746: fe0d3583 ld a1,-32(s10) - c001174a: fe8d3603 ld a2,-24(s10) - c001174e: 8526 mv a0,s1 - c0011750: fe0d0a13 addi s4,s10,-32 - c0011754: be4f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18631 + c0011834: fe0d3583 ld a1,-32(s10) + c0011838: fe8d3603 ld a2,-24(s10) + c001183c: 8526 mv a0,s1 + c001183e: fe0d0a13 addi s4,s10,-32 + c0011842: be4f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18639 JS_IteratorClose(ctx, sp[-1], TRUE); - c0011758: fd0d3583 ld a1,-48(s10) - c001175c: fd8d3603 ld a2,-40(s10) - c0011760: 4685 li a3,1 - c0011762: 8526 mv a0,s1 - c0011764: 224020ef jal ra,c0013988 - c0011768: 8d52 mv s10,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18622 + c0011846: fd0d3583 ld a1,-48(s10) + c001184a: fd8d3603 ld a2,-40(s10) + c001184e: 4685 li a3,1 + c0011850: 8526 mv a0,s1 + c0011852: 224020ef jal ra,c0013a76 + c0011856: 8d52 mv s10,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18630 while (sp > stack_buf) { - c001176a: 77fd lui a5,0xfffff - c001176c: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> - c0011770: 97a2 add a5,a5,s0 - c0011772: 639c ld a5,0(a5) - c0011774: fba7e2e3 bltu a5,s10,c0011718 - c0011778: f31f906f j c000b6a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 + c0011858: 77fd lui a5,0xfffff + c001185a: 5f878793 addi a5,a5,1528 # fffffffffffff5f8 <_ebss+0xffffffff3fefe4d2> + c001185e: 97a2 add a5,a5,s0 + c0011860: 639c ld a5,0(a5) + c0011862: fba7e2e3 bltu a5,s10,c0011806 + c0011866: f31f906f j c000b796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18641 *sp++ = rt->current_exception; - c001177c: 77fd lui a5,0xfffff - c001177e: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c0011782: 97a2 add a5,a5,s0 - c0011784: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18634 + c001186a: 77fd lui a5,0xfffff + c001186c: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c0011870: 97a2 add a5,a5,s0 + c0011872: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18642 rt->current_exception = JS_NULL; - c0011786: 777d lui a4,0xfffff - c0011788: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 + c0011874: 777d lui a4,0xfffff + c0011876: 64870713 addi a4,a4,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18641 *sp++ = rt->current_exception; - c001178c: 73fc ld a5,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18634 + c001187a: 73fc ld a5,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18642 rt->current_exception = JS_NULL; - c001178e: 9722 add a4,a4,s0 - c0011790: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 + c001187c: 9722 add a4,a4,s0 + c001187e: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18641 *sp++ = rt->current_exception; - c0011792: fefd3823 sd a5,-16(s10) - c0011796: 77fd lui a5,0xfffff - c0011798: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c001179c: 97a2 add a5,a5,s0 - c001179e: 639c ld a5,0(a5) - c00117a0: 77fc ld a5,232(a5) - c00117a2: fefd3c23 sd a5,-8(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18634 + c0011880: fefd3823 sd a5,-16(s10) + c0011884: 77fd lui a5,0xfffff + c0011886: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c001188a: 97a2 add a5,a5,s0 + c001188c: 639c ld a5,0(a5) + c001188e: 77fc ld a5,232(a5) + c0011890: fefd3c23 sd a5,-8(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18642 rt->current_exception = JS_NULL; - c00117a6: 77fd lui a5,0xfffff - c00117a8: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> - c00117ac: 97a2 add a5,a5,s0 - c00117ae: 639c ld a5,0(a5) - c00117b0: 0e07b023 sd zero,224(a5) - c00117b4: 4789 li a5,2 - c00117b6: f77c sd a5,232(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18635 + c0011894: 77fd lui a5,0xfffff + c0011896: 64878793 addi a5,a5,1608 # fffffffffffff648 <_ebss+0xffffffff3fefe522> + c001189a: 97a2 add a5,a5,s0 + c001189c: 639c ld a5,0(a5) + c001189e: 0e07b023 sd zero,224(a5) + c00118a2: 4789 li a5,2 + c00118a4: f77c sd a5,232(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18643 pc = b->byte_code_buf + pos; - c00117b8: 020db903 ld s2,32(s11) - c00117bc: 9956 add s2,s2,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18636 + c00118a6: 020db903 ld s2,32(s11) + c00118aa: 9956 add s2,s2,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18644 goto restart; - c00117be: 9c5f906f j c000b182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18625 + c00118ac: 9c5f906f j c000b270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18633 if (JS_VALUE_GET_TAG(val) == JS_TAG_CATCH_OFFSET) { - c00117c2: 4995 li s3,5 - c00117c4: b75d j c001176a + c00118b0: 4995 li s3,5 + c00118b2: b75d j c0011858 JS_DefineGlobalFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9659 if (!prs || (prs->flags & JS_PROP_CONFIGURABLE)) { - c00117c6: 01a7d79b srliw a5,a5,0x1a - c00117ca: 8b85 andi a5,a5,1 - c00117cc: c399 beqz a5,c00117d2 - c00117ce: a5dfb06f j c000d22a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9650 + c00118b4: 01a7d79b srliw a5,a5,0x1a + c00118b8: 8b85 andi a5,a5,1 + c00118ba: c399 beqz a5,c00118c0 + c00118bc: a5dfb06f j c000d318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9658 flags = JS_PROP_HAS_VALUE | JS_PROP_THROW; - c00117d2: 6719 lui a4,0x6 - c00117d4: a5ffb06f j c000d232 + c00118c0: 6719 lui a4,0x6 + c00118c2: a5ffb06f j c000d320 JS_DefinePrivateField(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7372 JS_ThrowTypeErrorAtom(ctx, "private class field '%s' already exists", - c00117d8: 0004b697 auipc a3,0x4b - c00117dc: 7f868693 addi a3,a3,2040 # c005cfd0 - c00117e0: 0004c617 auipc a2,0x4c - c00117e4: b3860613 addi a2,a2,-1224 # c005d318 - c00117e8: 8526 mv a0,s1 - c00117ea: 4e9010ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7366 + c00118c6: 0004c697 auipc a3,0x4c + c00118ca: 93a68693 addi a3,a3,-1734 # c005d200 + c00118ce: 0004c617 auipc a2,0x4c + c00118d2: c7a60613 addi a2,a2,-902 # c005d548 + c00118d6: 8526 mv a0,s1 + c00118d8: 4e9010ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7374 goto fail; - c00117ee: 827fd06f j c000f014 + c00118dc: 827fd06f j c000f102 JS_AddBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7467 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7475 JS_FreeAtom(ctx, brand_atom); - c00117f2: 85e2 mv a1,s8 - c00117f4: 8526 mv a0,s1 - c00117f6: d17f50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7468 + c00118e0: 85e2 mv a1,s8 + c00118e2: 8526 mv a0,s1 + c00118e4: d17f50ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7476 JS_ThrowTypeError(ctx, "private method is already present"); - c00117fa: 8526 mv a0,s1 - c00117fc: 0004c597 auipc a1,0x4c - c0011800: b4458593 addi a1,a1,-1212 # c005d340 - c0011804: 3f3010ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7469 + c00118e8: 8526 mv a0,s1 + c00118ea: 0004c597 auipc a1,0x4c + c00118ee: c8658593 addi a1,a1,-890 # c005d570 + c00118f2: 3f3010ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7477 return -1; - c0011808: dd3f906f j c000b5da + c00118f6: dd3f906f j c000b6c8 -00000000c001180c : +00000000c00118fa : JS_CallFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18673 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18681 { - c001180c: 7159 addi sp,sp,-112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18674 + c00118fa: 7159 addi sp,sp,-112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18682 JSValue res = JS_CallInternal(ctx, func_obj, this_obj, JS_UNDEFINED, - c001180e: 4889 li a7,2 - c0011810: e446 sd a7,8(sp) - c0011812: e042 sd a6,0(sp) - c0011814: 88be mv a7,a5 - c0011816: 480d li a6,3 - c0011818: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18673 -{ - c001181a: f486 sd ra,104(sp) - c001181c: f0a2 sd s0,96(sp) - c001181e: f432 sd a2,40(sp) - c0011820: 842a mv s0,a0 - c0011822: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18674 + c00118fc: 4889 li a7,2 + c00118fe: e446 sd a7,8(sp) + c0011900: e042 sd a6,0(sp) + c0011902: 88be mv a7,a5 + c0011904: 480d li a6,3 + c0011906: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18681 +{ + c0011908: f486 sd ra,104(sp) + c001190a: f0a2 sd s0,96(sp) + c001190c: f432 sd a2,40(sp) + c001190e: 842a mv s0,a0 + c0011910: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18682 JSValue res = JS_CallInternal(ctx, func_obj, this_obj, JS_UNDEFINED, - c0011824: f78f90ef jal ra,c000af9c - c0011828: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18676 + c0011912: f78f90ef jal ra,c000b08a + c0011916: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18684 JS_FreeValue(ctx, func_obj); - c001182a: 7622 ld a2,40(sp) - c001182c: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18674 + c0011918: 7622 ld a2,40(sp) + c001191a: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18682 JSValue res = JS_CallInternal(ctx, func_obj, this_obj, JS_UNDEFINED, - c001182e: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18676 + c001191c: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18684 JS_FreeValue(ctx, func_obj); - c0011830: 8522 mv a0,s0 - c0011832: b06f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18678 -} - c0011836: 70a6 ld ra,104(sp) - c0011838: 7406 ld s0,96(sp) - c001183a: 7542 ld a0,48(sp) - c001183c: 75e2 ld a1,56(sp) - c001183e: 6165 addi sp,sp,112 - c0011840: 8082 ret - -00000000c0011842 : + c001191e: 8522 mv a0,s0 + c0011920: b06f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18686 +} + c0011924: 70a6 ld ra,104(sp) + c0011926: 7406 ld s0,96(sp) + c0011928: 7542 ld a0,48(sp) + c001192a: 75e2 ld a1,56(sp) + c001192c: 6165 addi sp,sp,112 + c001192e: 8082 ret + +00000000c0011930 : JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7192 -{ - c0011842: 7155 addi sp,sp,-208 - c0011844: e1a2 sd s0,192(sp) - c0011846: fd26 sd s1,184(sp) - c0011848: f94a sd s2,176(sp) - c001184a: f152 sd s4,160(sp) - c001184c: ec32 sd a2,24(sp) - c001184e: e43e sd a5,8(sp) - c0011850: e586 sd ra,200(sp) - c0011852: f54e sd s3,168(sp) - c0011854: ed56 sd s5,152(sp) - c0011856: e95a sd s6,144(sp) - c0011858: e82e sd a1,16(sp) - c001185a: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7200 +{ + c0011930: 7155 addi sp,sp,-208 + c0011932: e1a2 sd s0,192(sp) + c0011934: fd26 sd s1,184(sp) + c0011936: f94a sd s2,176(sp) + c0011938: f152 sd s4,160(sp) + c001193a: ec32 sd a2,24(sp) + c001193c: e43e sd a5,8(sp) + c001193e: e586 sd ra,200(sp) + c0011940: f54e sd s3,168(sp) + c0011942: ed56 sd s5,152(sp) + c0011944: e95a sd s6,144(sp) + c0011946: e82e sd a1,16(sp) + c0011948: e03a sd a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7206 tag = JS_VALUE_GET_TAG(obj); - c001185c: 2601 sext.w a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7199 + c001194a: 2601 sext.w a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7207 if (unlikely(tag != JS_TAG_OBJECT)) { - c001185e: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7192 -{ - c0011860: 84aa mv s1,a0 - c0011862: 8936 mv s2,a3 - c0011864: 8a42 mv s4,a6 - c0011866: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7199 + c001194c: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7200 +{ + c001194e: 84aa mv s1,a0 + c0011950: 8936 mv s2,a3 + c0011952: 8a42 mv s4,a6 + c0011954: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7207 if (unlikely(tag != JS_TAG_OBJECT)) { - c0011868: 06f61963 bne a2,a5,c00118da + c0011956: 06f61963 bne a2,a5,c00119c8 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001186c: 04000ab7 lui s5,0x4000 + c001195a: 04000ab7 lui s5,0x4000 __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0011870: 02191993 slli s3,s2,0x21 + c001195e: 02191993 slli s3,s2,0x21 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0011874: 1afd addi s5,s5,-1 + c0011962: 1afd addi s5,s5,-1 __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0011876: 0219d993 srli s3,s3,0x21 + c0011964: 0219d993 srli s3,s3,0x21 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c001187a: 6c18 ld a4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0011968: 6c18 ld a4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001187c: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c001196a: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c001187e: 531c lw a5,32(a4) + c001196c: 531c lw a5,32(a4) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0011880: 04070613 addi a2,a4,64 # 6040 <__clzdi2-0xbfff9fc0> + c001196e: 04070613 addi a2,a4,64 # 6040 <__clzdi2-0xbfff9fc0> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0011884: 00f977b3 and a5,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0011972: 00f977b3 and a5,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0011888: 1782 slli a5,a5,0x20 - c001188a: 9381 srli a5,a5,0x20 - c001188c: 0785 addi a5,a5,1 - c001188e: 02d787b3 mul a5,a5,a3 - c0011892: 97ba add a5,a5,a4 - c0011894: 0007e683 lwu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c0011976: 1782 slli a5,a5,0x20 + c0011978: 9381 srli a5,a5,0x20 + c001197a: 0785 addi a5,a5,1 + c001197c: 02d787b3 mul a5,a5,a3 + c0011980: 97ba add a5,a5,a4 + c0011982: 0007e683 lwu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0011898: 12069b63 bnez a3,c00119ce + c0011986: 12069b63 bnez a3,c0011abc JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7265 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7273 if (unlikely(p->is_exotic)) { - c001189c: 00544783 lbu a5,5(s0) - c00118a0: 0047f713 andi a4,a5,4 - c00118a4: 20070663 beqz a4,c0011ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7267 + c001198a: 00544783 lbu a5,5(s0) + c001198e: 0047f713 andi a4,a5,4 + c0011992: 20070663 beqz a4,c0011b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7275 if (p->fast_array) { - c00118a8: 8ba1 andi a5,a5,8 - c00118aa: 24078663 beqz a5,c0011af6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7268 + c0011996: 8ba1 andi a5,a5,8 + c0011998: 24078663 beqz a5,c0011be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7276 if (__JS_AtomIsTaggedInt(prop)) { - c00118ae: 22095463 bgez s2,c0011ad6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7270 + c001199c: 22095463 bgez s2,c0011bc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7278 if (idx < p->u.array.count) { - c00118b2: 403c lw a5,64(s0) - c00118b4: 1ef9f663 bgeu s3,a5,c0011aa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7272 + c00119a0: 403c lw a5,64(s0) + c00119a2: 1ef9f663 bgeu s3,a5,c0011b8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7280 return JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c00118b8: eca2 sd s0,88(sp) - c00118ba: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c00118bc: 640e ld s0,192(sp) - c00118be: 60ae ld ra,200(sp) - c00118c0: 794a ld s2,176(sp) - c00118c2: 7a0a ld s4,160(sp) - c00118c4: 6aea ld s5,152(sp) - c00118c6: 6b4a ld s6,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7272 + c00119a6: eca2 sd s0,88(sp) + c00119a8: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c00119aa: 640e ld s0,192(sp) + c00119ac: 60ae ld ra,200(sp) + c00119ae: 794a ld s2,176(sp) + c00119b0: 7a0a ld s4,160(sp) + c00119b2: 6aea ld s5,152(sp) + c00119b4: 6b4a ld s6,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7280 return JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c00118c8: 57fd li a5,-1 - c00118ca: 86ce mv a3,s3 - c00118cc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c00119b6: 57fd li a5,-1 + c00119b8: 86ce mv a3,s3 + c00119ba: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c00118ce: 79aa ld s3,168(sp) - c00118d0: 74ea ld s1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7272 + c00119bc: 79aa ld s3,168(sp) + c00119be: 74ea ld s1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7280 return JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c00118d2: f0be sd a5,96(sp) - c00118d4: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c00119c0: f0be sd a5,96(sp) + c00119c2: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c00118d6: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7272 + c00119c4: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7280 return JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c00118d8: abd5 j c0011ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7200 + c00119c6: abd5 j c0011fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7208 switch(tag) { - c00118da: 4799 li a5,6 - c00118dc: 0af60a63 beq a2,a5,c0011990 - c00118e0: 02c7e563 bltu a5,a2,c001190a - c00118e4: 4789 li a5,2 - c00118e6: 06f60863 beq a2,a5,c0011956 - c00118ea: 478d li a5,3 - c00118ec: 08f60963 beq a2,a5,c001197e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7229 + c00119c8: 4799 li a5,6 + c00119ca: 0af60a63 beq a2,a5,c0011a7e + c00119ce: 02c7e563 bltu a5,a2,c00119f8 + c00119d2: 4789 li a5,2 + c00119d4: 06f60863 beq a2,a5,c0011a44 + c00119d8: 478d li a5,3 + c00119da: 08f60963 beq a2,a5,c0011a6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7237 p = JS_VALUE_GET_OBJ(JS_GetPrototypePrimitive(ctx, obj)); - c00118f0: 65c2 ld a1,16(sp) - c00118f2: 6662 ld a2,24(sp) - c00118f4: 8526 mv a0,s1 - c00118f6: 997f20ef jal ra,c000428c - c00118fa: e4aa sd a0,72(sp) - c00118fc: e8ae sd a1,80(sp) - c00118fe: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7230 + c00119de: 65c2 ld a1,16(sp) + c00119e0: 6662 ld a2,24(sp) + c00119e2: 8526 mv a0,s1 + c00119e4: 8a9f20ef jal ra,c000428c + c00119e8: e4aa sd a0,72(sp) + c00119ea: e8ae sd a1,80(sp) + c00119ec: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7238 if (!p) - c0011900: f535 bnez a0,c001186c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7231 + c00119ee: f535 bnez a0,c001195a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7239 return JS_UNDEFINED; - c0011902: fc02 sd zero,56(sp) - c0011904: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7317 + c00119f0: fc02 sd zero,56(sp) + c00119f2: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7325 return desc.value; - c0011906: e0be sd a5,64(sp) - c0011908: a071 j c0011994 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7200 + c00119f4: e0be sd a5,64(sp) + c00119f6: a071 j c0011a82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7208 switch(tag) { - c001190a: 57e5 li a5,-7 - c001190c: fef612e3 bne a2,a5,c00118f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7210 + c00119f8: 57e5 li a5,-7 + c00119fa: fef612e3 bne a2,a5,c00119de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7218 if (__JS_AtomIsTaggedInt(prop)) { - c0011910: 0a06d263 bgez a3,c00119b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7213 + c00119fe: 0a06d263 bgez a3,c0011aa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7221 if (idx < p1->len) { - c0011914: 4058 lw a4,4(s0) + c0011a02: 4058 lw a4,4(s0) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0011916: 800007b7 lui a5,0x80000 - c001191a: fff7c793 not a5,a5 - c001191e: 00f6f5b3 and a1,a3,a5 + c0011a04: 800007b7 lui a5,0x80000 + c0011a08: fff7c793 not a5,a5 + c0011a0c: 00f6f5b3 and a1,a3,a5 JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7213 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7221 if (idx < p1->len) { - c0011922: 8ff9 and a5,a5,a4 - c0011924: 2781 sext.w a5,a5 - c0011926: fcf5f5e3 bgeu a1,a5,c00118f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7214 + c0011a10: 8ff9 and a5,a5,a4 + c0011a12: 2781 sext.w a5,a5 + c0011a14: fcf5f5e3 bgeu a1,a5,c00119de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7222 if (p1->is_wide_char) - c001192a: 1582 slli a1,a1,0x20 - c001192c: 2701 sext.w a4,a4 - c001192e: 9181 srli a1,a1,0x20 - c0011930: 06075e63 bgez a4,c00119ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7215 + c0011a18: 1582 slli a1,a1,0x20 + c0011a1a: 2701 sext.w a4,a4 + c0011a1c: 9181 srli a1,a1,0x20 + c0011a1e: 06075e63 bgez a4,c0011a9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7223 ch = p1->u.str16[idx]; - c0011934: 05a1 addi a1,a1,8 - c0011936: 0586 slli a1,a1,0x1 - c0011938: 942e add s0,s0,a1 - c001193a: 00045583 lhu a1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c001193e: 640e ld s0,192(sp) - c0011940: 60ae ld ra,200(sp) - c0011942: 794a ld s2,176(sp) - c0011944: 79aa ld s3,168(sp) - c0011946: 7a0a ld s4,160(sp) - c0011948: 6aea ld s5,152(sp) - c001194a: 6b4a ld s6,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7218 + c0011a22: 05a1 addi a1,a1,8 + c0011a24: 0586 slli a1,a1,0x1 + c0011a26: 942e add s0,s0,a1 + c0011a28: 00045583 lhu a1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011a2c: 640e ld s0,192(sp) + c0011a2e: 60ae ld ra,200(sp) + c0011a30: 794a ld s2,176(sp) + c0011a32: 79aa ld s3,168(sp) + c0011a34: 7a0a ld s4,160(sp) + c0011a36: 6aea ld s5,152(sp) + c0011a38: 6b4a ld s6,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7226 return js_new_string_char(ctx, ch); - c001194c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c0011a3a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c001194e: 74ea ld s1,184(sp) - c0011950: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7218 + c0011a3c: 74ea ld s1,184(sp) + c0011a3e: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7226 return js_new_string_char(ctx, ch); - c0011952: 6b20806f j c001a004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7202 + c0011a40: 7940806f j c001a1d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7210 return JS_ThrowTypeErrorAtom(ctx, "cannot read property '%s' of null", prop); - c0011956: 0004b697 auipc a3,0x4b - c001195a: 67a68693 addi a3,a3,1658 # c005cfd0 - c001195e: 0004c617 auipc a2,0x4c - c0011962: e0a60613 addi a2,a2,-502 # c005d768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011966: 640e ld s0,192(sp) - c0011968: 60ae ld ra,200(sp) - c001196a: 74ea ld s1,184(sp) - c001196c: 79aa ld s3,168(sp) - c001196e: 7a0a ld s4,160(sp) - c0011970: 6aea ld s5,152(sp) - c0011972: 6b4a ld s6,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7204 + c0011a44: 0004b697 auipc a3,0x4b + c0011a48: 7bc68693 addi a3,a3,1980 # c005d200 + c0011a4c: 0004c617 auipc a2,0x4c + c0011a50: f4c60613 addi a2,a2,-180 # c005d998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011a54: 640e ld s0,192(sp) + c0011a56: 60ae ld ra,200(sp) + c0011a58: 74ea ld s1,184(sp) + c0011a5a: 79aa ld s3,168(sp) + c0011a5c: 7a0a ld s4,160(sp) + c0011a5e: 6aea ld s5,152(sp) + c0011a60: 6b4a ld s6,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7212 return JS_ThrowTypeErrorAtom(ctx, "cannot read property '%s' of undefined", prop); - c0011974: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c0011a62: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c0011976: 794a ld s2,176(sp) - c0011978: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7204 + c0011a64: 794a ld s2,176(sp) + c0011a66: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7212 return JS_ThrowTypeErrorAtom(ctx, "cannot read property '%s' of undefined", prop); - c001197a: 3590106f j c00134d2 <__JS_ThrowTypeErrorAtom> - c001197e: 0004b697 auipc a3,0x4b - c0011982: 65268693 addi a3,a3,1618 # c005cfd0 - c0011986: 0004c617 auipc a2,0x4c - c001198a: e0a60613 addi a2,a2,-502 # c005d790 - c001198e: bfe1 j c0011966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7206 + c0011a68: 3590106f j c00135c0 <__JS_ThrowTypeErrorAtom> + c0011a6c: 0004b697 auipc a3,0x4b + c0011a70: 79468693 addi a3,a3,1940 # c005d200 + c0011a74: 0004c617 auipc a2,0x4c + c0011a78: f4c60613 addi a2,a2,-180 # c005d9c0 + c0011a7c: bfe1 j c0011a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7214 return JS_EXCEPTION; - c0011990: fc02 sd zero,56(sp) - c0011992: e0b2 sd a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 (discriminator 14) -} - c0011994: 60ae ld ra,200(sp) - c0011996: 640e ld s0,192(sp) - c0011998: 7562 ld a0,56(sp) - c001199a: 6586 ld a1,64(sp) - c001199c: 74ea ld s1,184(sp) - c001199e: 794a ld s2,176(sp) - c00119a0: 79aa ld s3,168(sp) - c00119a2: 7a0a ld s4,160(sp) - c00119a4: 6aea ld s5,152(sp) - c00119a6: 6b4a ld s6,144(sp) - c00119a8: 6169 addi sp,sp,208 - c00119aa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7217 + c0011a7e: fc02 sd zero,56(sp) + c0011a80: e0b2 sd a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 (discriminator 14) +} + c0011a82: 60ae ld ra,200(sp) + c0011a84: 640e ld s0,192(sp) + c0011a86: 7562 ld a0,56(sp) + c0011a88: 6586 ld a1,64(sp) + c0011a8a: 74ea ld s1,184(sp) + c0011a8c: 794a ld s2,176(sp) + c0011a8e: 79aa ld s3,168(sp) + c0011a90: 7a0a ld s4,160(sp) + c0011a92: 6aea ld s5,152(sp) + c0011a94: 6b4a ld s6,144(sp) + c0011a96: 6169 addi sp,sp,208 + c0011a98: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7225 ch = p1->u.str8[idx]; - c00119ac: 95a2 add a1,a1,s0 - c00119ae: 0105c583 lbu a1,16(a1) - c00119b2: b771 j c001193e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7220 + c0011a9a: 95a2 add a1,a1,s0 + c0011a9c: 0105c583 lbu a1,16(a1) + c0011aa0: b771 j c0011a2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7228 } else if (prop == JS_ATOM_length) { - c00119b4: 03000793 li a5,48 - c00119b8: f2f69ce3 bne a3,a5,c00118f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7221 + c0011aa2: 03000793 li a5,48 + c0011aa6: f2f69ce3 bne a3,a5,c00119de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7229 return JS_NewInt32(ctx, p1->len); - c00119bc: 41dc lw a5,4(a1) + c0011aaa: 41dc lw a5,4(a1) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00119be: ce82 sw zero,92(sp) - c00119c0: e082 sd zero,64(sp) + c0011aac: ce82 sw zero,92(sp) + c0011aae: e082 sd zero,64(sp) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7221 - c00119c2: 1786 slli a5,a5,0x21 - c00119c4: 9385 srli a5,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7229 + c0011ab0: 1786 slli a5,a5,0x21 + c0011ab2: 9385 srli a5,a5,0x21 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00119c6: ccbe sw a5,88(sp) - c00119c8: 67e6 ld a5,88(sp) - c00119ca: fc3e sd a5,56(sp) + c0011ab4: ccbe sw a5,88(sp) + c0011ab6: 67e6 ld a5,88(sp) + c0011ab8: fc3e sd a5,56(sp) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7221 - c00119cc: b7e1 j c0011994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7229 + c0011aba: b7e1 j c0011a82 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c00119ce: 00369713 slli a4,a3,0x3 - c00119d2: 1761 addi a4,a4,-8 - c00119d4: 9732 add a4,a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0011abc: 00369713 slli a4,a3,0x3 + c0011ac0: 1761 addi a4,a4,-8 + c0011ac2: 9732 add a4,a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c00119d6: 434c lw a1,4(a4) - c00119d8: 431c lw a5,0(a4) - c00119da: 05259763 bne a1,s2,c0011a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0011ac4: 434c lw a1,4(a4) + c0011ac6: 431c lw a5,0(a4) + c0011ac8: 05259763 bne a1,s2,c0011b16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c00119de: 7010 ld a2,32(s0) - c00119e0: 0692 slli a3,a3,0x4 + c0011acc: 7010 ld a2,32(s0) + c0011ace: 0692 slli a3,a3,0x4 JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 if (unlikely(prs->flags & JS_PROP_TMASK)) { - c00119e2: 01a7d79b srliw a5,a5,0x1a + c0011ad0: 01a7d79b srliw a5,a5,0x1a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c00119e6: 16c1 addi a3,a3,-16 - c00119e8: 0307f793 andi a5,a5,48 - c00119ec: 96b2 add a3,a3,a2 + c0011ad4: 16c1 addi a3,a3,-16 + c0011ad6: 0307f793 andi a5,a5,48 + c0011ada: 96b2 add a3,a3,a2 JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 if (unlikely(prs->flags & JS_PROP_TMASK)) { - c00119ee: cfc1 beqz a5,c0011a86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7241 + c0011adc: cfc1 beqz a5,c0011b74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7249 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c00119f0: 4641 li a2,16 - c00119f2: 04c79163 bne a5,a2,c0011a34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7242 + c0011ade: 4641 li a2,16 + c0011ae0: 04c79163 bne a5,a2,c0011b22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7250 if (unlikely(!pr->u.getset.getter)) { - c00119f6: 628c ld a1,0(a3) - c00119f8: d589 beqz a1,c0011902 + c0011ae4: 628c ld a1,0(a3) + c0011ae6: d589 beqz a1,c00119f0 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c00119fa: 419c lw a5,0(a1) + c0011ae8: 419c lw a5,0(a1) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7256 return JS_CallFree(ctx, func, this_obj, 0, NULL); - c00119fc: 6682 ld a3,0(sp) - c00119fe: 6722 ld a4,8(sp) + c0011aea: 6682 ld a3,0(sp) + c0011aec: 6722 ld a4,8(sp) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0011a00: 2785 addiw a5,a5,1 - c0011a02: c19c sw a5,0(a1) + c0011aee: 2785 addiw a5,a5,1 + c0011af0: c19c sw a5,0(a1) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011a04: 640e ld s0,192(sp) - c0011a06: 60ae ld ra,200(sp) - c0011a08: 794a ld s2,176(sp) - c0011a0a: 79aa ld s3,168(sp) - c0011a0c: 7a0a ld s4,160(sp) - c0011a0e: 6aea ld s5,152(sp) - c0011a10: 6b4a ld s6,144(sp) - c0011a12: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011af2: 640e ld s0,192(sp) + c0011af4: 60ae ld ra,200(sp) + c0011af6: 794a ld s2,176(sp) + c0011af8: 79aa ld s3,168(sp) + c0011afa: 7a0a ld s4,160(sp) + c0011afc: 6aea ld s5,152(sp) + c0011afe: 6b4a ld s6,144(sp) + c0011b00: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7256 return JS_CallFree(ctx, func, this_obj, 0, NULL); - c0011a14: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c0011b02: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c0011a16: 74ea ld s1,184(sp) - c0011a18: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 + c0011b04: 74ea ld s1,184(sp) + c0011b06: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7256 return JS_CallFree(ctx, func, this_obj, 0, NULL); - c0011a1a: ecae sd a1,88(sp) - c0011a1c: 4801 li a6,0 - c0011a1e: 4781 li a5,0 - c0011a20: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011a22: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7248 + c0011b08: ecae sd a1,88(sp) + c0011b0a: 4801 li a6,0 + c0011b0c: 4781 li a5,0 + c0011b0e: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011b10: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7256 return JS_CallFree(ctx, func, this_obj, 0, NULL); - c0011a24: de9ff06f j c001180c + c0011b12: de9ff06f j c00118fa find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0011a28: 00faf7b3 and a5,s5,a5 - c0011a2c: 02079693 slli a3,a5,0x20 - c0011a30: 9281 srli a3,a3,0x20 - c0011a32: b59d j c0011898 + c0011b16: 00faf7b3 and a5,s5,a5 + c0011b1a: 02079693 slli a3,a5,0x20 + c0011b1e: 9281 srli a3,a3,0x20 + c0011b20: b59d j c0011986 JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7258 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0011a34: 02000613 li a2,32 - c0011a38: 02c79963 bne a5,a2,c0011a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7251 + c0011b22: 02000613 li a2,32 + c0011b26: 02c79963 bne a5,a2,c0011b58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7259 JSValue val = *pr->u.var_ref->pvalue; - c0011a3c: 629c ld a5,0(a3) - c0011a3e: 6f9c ld a5,24(a5) - c0011a40: 6388 ld a0,0(a5) - c0011a42: ecaa sd a0,88(sp) - c0011a44: 678c ld a1,8(a5) - c0011a46: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7252 + c0011b2a: 629c ld a5,0(a3) + c0011b2c: 6f9c ld a5,24(a5) + c0011b2e: 6388 ld a0,0(a5) + c0011b30: ecaa sd a0,88(sp) + c0011b32: 678c ld a1,8(a5) + c0011b34: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7260 if (unlikely(JS_IsUninitialized(val))) - c0011a48: 4798 lw a4,8(a5) - c0011a4a: 4791 li a5,4 - c0011a4c: 02f71f63 bne a4,a5,c0011a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011a50: 640e ld s0,192(sp) - c0011a52: 60ae ld ra,200(sp) - c0011a54: 79aa ld s3,168(sp) - c0011a56: 7a0a ld s4,160(sp) - c0011a58: 6aea ld s5,152(sp) - c0011a5a: 6b4a ld s6,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7253 + c0011b36: 4798 lw a4,8(a5) + c0011b38: 4791 li a5,4 + c0011b3a: 02f71f63 bne a4,a5,c0011b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011b3e: 640e ld s0,192(sp) + c0011b40: 60ae ld ra,200(sp) + c0011b42: 79aa ld s3,168(sp) + c0011b44: 7a0a ld s4,160(sp) + c0011b46: 6aea ld s5,152(sp) + c0011b48: 6b4a ld s6,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7261 return JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c0011a5c: 85ca mv a1,s2 - c0011a5e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011a60: 794a ld s2,176(sp) - c0011a62: 74ea ld s1,184(sp) - c0011a64: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7253 + c0011b4a: 85ca mv a1,s2 + c0011b4c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011b4e: 794a ld s2,176(sp) + c0011b50: 74ea ld s1,184(sp) + c0011b52: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7261 return JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c0011a66: 6730206f j c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7255 + c0011b54: 6730206f j c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7263 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c0011a6a: 03000613 li a2,48 - c0011a6e: e2c797e3 bne a5,a2,c001189c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7257 + c0011b58: 03000613 li a2,48 + c0011b5c: e2c797e3 bne a5,a2,c001198a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7265 if (JS_AutoInitProperty(ctx, p, prop, pr, prs)) - c0011a72: 864a mv a2,s2 - c0011a74: 85a2 mv a1,s0 - c0011a76: 8526 mv a0,s1 - c0011a78: 456030ef jal ra,c0014ece - c0011a7c: de050fe3 beqz a0,c001187a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7311 + c0011b60: 864a mv a2,s2 + c0011b62: 85a2 mv a1,s0 + c0011b64: 8526 mv a0,s1 + c0011b66: 538030ef jal ra,c001509e + c0011b6a: de050fe3 beqz a0,c0011968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7319 return JS_EXCEPTION; - c0011a80: fc02 sd zero,56(sp) - c0011a82: 4799 li a5,6 - c0011a84: b549 j c0011906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7262 + c0011b6e: fc02 sd zero,56(sp) + c0011b70: 4799 li a5,6 + c0011b72: b549 j c00119f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7270 return JS_DupValue(ctx, pr->u.value); - c0011a86: 6288 ld a0,0(a3) - c0011a88: 668c ld a1,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011a8a: 640e ld s0,192(sp) - c0011a8c: 60ae ld ra,200(sp) - c0011a8e: 74ea ld s1,184(sp) - c0011a90: 794a ld s2,176(sp) - c0011a92: 79aa ld s3,168(sp) - c0011a94: 7a0a ld s4,160(sp) - c0011a96: 6aea ld s5,152(sp) - c0011a98: 6b4a ld s6,144(sp) - c0011a9a: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7262 + c0011b74: 6288 ld a0,0(a3) + c0011b76: 668c ld a1,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011b78: 640e ld s0,192(sp) + c0011b7a: 60ae ld ra,200(sp) + c0011b7c: 74ea ld s1,184(sp) + c0011b7e: 794a ld s2,176(sp) + c0011b80: 79aa ld s3,168(sp) + c0011b82: 7a0a ld s4,160(sp) + c0011b84: 6aea ld s5,152(sp) + c0011b86: 6b4a ld s6,144(sp) + c0011b88: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7270 return JS_DupValue(ctx, pr->u.value); - c0011a9c: bd3f406f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7273 + c0011b8a: bd3f406f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7281 } else if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0011aa0: 00645783 lhu a5,6(s0) - c0011aa4: 4729 li a4,10 - c0011aa6: 37ad addiw a5,a5,-21 - c0011aa8: 17c2 slli a5,a5,0x30 - c0011aaa: 93c1 srli a5,a5,0x30 - c0011aac: e4f77be3 bgeu a4,a5,c0011902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7324 + c0011b8e: 00645783 lhu a5,6(s0) + c0011b92: 4729 li a4,10 + c0011b94: 37ad addiw a5,a5,-21 + c0011b96: 17c2 slli a5,a5,0x30 + c0011b98: 93c1 srli a5,a5,0x30 + c0011b9a: e4f77be3 bgeu a4,a5,c00119f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7332 p = p->shape->proto; - c0011ab0: 6c1c ld a5,24(s0) - c0011ab2: 7f80 ld s0,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7325 + c0011b9e: 6c1c ld a5,24(s0) + c0011ba0: 7f80 ld s0,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 if (!p) - c0011ab4: dc0413e3 bnez s0,c001187a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7328 + c0011ba2: dc0413e3 bnez s0,c0011968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7336 if (unlikely(throw_ref_error)) { - c0011ab8: e40a05e3 beqz s4,c0011902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 -} - c0011abc: 640e ld s0,192(sp) - c0011abe: 60ae ld ra,200(sp) - c0011ac0: 79aa ld s3,168(sp) - c0011ac2: 7a0a ld s4,160(sp) - c0011ac4: 6aea ld s5,152(sp) - c0011ac6: 6b4a ld s6,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7329 + c0011ba6: e40a05e3 beqz s4,c00119f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 +} + c0011baa: 640e ld s0,192(sp) + c0011bac: 60ae ld ra,200(sp) + c0011bae: 79aa ld s3,168(sp) + c0011bb0: 7a0a ld s4,160(sp) + c0011bb2: 6aea ld s5,152(sp) + c0011bb4: 6b4a ld s6,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7337 return JS_ThrowReferenceErrorNotDefined(ctx, prop); - c0011ac8: 85ca mv a1,s2 - c0011aca: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7333 + c0011bb6: 85ca mv a1,s2 + c0011bb8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7341 } - c0011acc: 794a ld s2,176(sp) - c0011ace: 74ea ld s1,184(sp) - c0011ad0: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7329 + c0011bba: 794a ld s2,176(sp) + c0011bbc: 74ea ld s1,184(sp) + c0011bbe: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7337 return JS_ThrowReferenceErrorNotDefined(ctx, prop); - c0011ad2: 6610206f j c0014932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7277 + c0011bc0: 6610206f j c0014a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7285 } else if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0011ad6: 00645783 lhu a5,6(s0) - c0011ada: 4729 li a4,10 - c0011adc: 37ad addiw a5,a5,-21 - c0011ade: 17c2 slli a5,a5,0x30 - c0011ae0: 93c1 srli a5,a5,0x30 - c0011ae2: fcf767e3 bltu a4,a5,c0011ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7280 + c0011bc4: 00645783 lhu a5,6(s0) + c0011bc8: 4729 li a4,10 + c0011bca: 37ad addiw a5,a5,-21 + c0011bcc: 17c2 slli a5,a5,0x30 + c0011bce: 93c1 srli a5,a5,0x30 + c0011bd0: fcf767e3 bltu a4,a5,c0011b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7288 ret = JS_AtomIsNumericIndex(ctx, prop); - c0011ae6: 85ca mv a1,s2 - c0011ae8: 8526 mv a0,s1 - c0011aea: 58e0f0ef jal ra,c0021078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7281 + c0011bd4: 85ca mv a1,s2 + c0011bd6: 8526 mv a0,s1 + c0011bd8: 6700f0ef jal ra,c0021248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7289 if (ret != 0) { - c0011aee: d169 beqz a0,c0011ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7282 + c0011bdc: d169 beqz a0,c0011b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7290 if (ret < 0) - c0011af0: e00559e3 bgez a0,c0011902 - c0011af4: b771 j c0011a80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7288 + c0011bde: e00559e3 bgez a0,c00119f0 + c0011be2: b771 j c0011b6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7296 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0011af6: 00645703 lhu a4,6(s0) - c0011afa: 02800693 li a3,40 - c0011afe: 6c9c ld a5,24(s1) - c0011b00: 02d70733 mul a4,a4,a3 - c0011b04: 7bbc ld a5,112(a5) - c0011b06: 97ba add a5,a5,a4 - c0011b08: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7289 + c0011be4: 00645703 lhu a4,6(s0) + c0011be8: 02800693 li a3,40 + c0011bec: 6c9c ld a5,24(s1) + c0011bee: 02d70733 mul a4,a4,a3 + c0011bf2: 7bbc ld a5,112(a5) + c0011bf4: 97ba add a5,a5,a4 + c0011bf6: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7297 if (em) { - c0011b0a: d3dd beqz a5,c0011ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7290 + c0011bf8: d3dd beqz a5,c0011b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7298 if (em->get_property) { - c0011b0c: 7798 ld a4,40(a5) - c0011b0e: cb1d beqz a4,c0011b44 + c0011bfa: 7798 ld a4,40(a5) + c0011bfc: cb1d beqz a4,c0011c32 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0011b10: 4018 lw a4,0(s0) + c0011bfe: 4018 lw a4,0(s0) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7304 retval = em->get_property(ctx, obj1, prop, this_obj); - c0011b12: 86ca mv a3,s2 - c0011b14: 567d li a2,-1 + c0011c00: 86ca mv a3,s2 + c0011c02: 567d li a2,-1 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0011b16: 2705 addiw a4,a4,1 - c0011b18: c018 sw a4,0(s0) + c0011c04: 2705 addiw a4,a4,1 + c0011c06: c018 sw a4,0(s0) JS_GetPropertyInternal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c0011b1a: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7296 - c0011b1c: 0287b803 ld a6,40(a5) # ffffffff80000028 <_ebss+0xfffffffebfefef02> - c0011b20: f83a sd a4,48(sp) - c0011b22: 67a2 ld a5,8(sp) - c0011b24: 6702 ld a4,0(sp) - c0011b26: 85a2 mv a1,s0 - c0011b28: 8526 mv a0,s1 - c0011b2a: f422 sd s0,40(sp) - c0011b2c: 9802 jalr a6 - c0011b2e: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7297 + c0011c08: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7304 + c0011c0a: 0287b803 ld a6,40(a5) # ffffffff80000028 <_ebss+0xfffffffebfefef02> + c0011c0e: f83a sd a4,48(sp) + c0011c10: 67a2 ld a5,8(sp) + c0011c12: 6702 ld a4,0(sp) + c0011c14: 85a2 mv a1,s0 + c0011c16: 8526 mv a0,s1 + c0011c18: f422 sd s0,40(sp) + c0011c1a: 9802 jalr a6 + c0011c1c: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7305 JS_FreeValue(ctx, obj1); - c0011b30: 7642 ld a2,48(sp) - c0011b32: 75a2 ld a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7296 + c0011c1e: 7642 ld a2,48(sp) + c0011c20: 75a2 ld a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7304 retval = em->get_property(ctx, obj1, prop, this_obj); - c0011b34: ecaa sd a0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7297 + c0011c22: ecaa sd a0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7305 JS_FreeValue(ctx, obj1); - c0011b36: 8526 mv a0,s1 - c0011b38: 800f60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7298 + c0011c24: 8526 mv a0,s1 + c0011c26: 800f60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7306 return retval; - c0011b3c: 67e6 ld a5,88(sp) - c0011b3e: fc3e sd a5,56(sp) - c0011b40: 7786 ld a5,96(sp) - c0011b42: b3d1 j c0011906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7300 + c0011c2a: 67e6 ld a5,88(sp) + c0011c2c: fc3e sd a5,56(sp) + c0011c2e: 7786 ld a5,96(sp) + c0011c30: b3d1 j c00119f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7308 if (em->get_own_property) { - c0011b44: 6398 ld a4,0(a5) - c0011b46: d72d beqz a4,c0011ab0 + c0011c32: 6398 ld a4,0(a5) + c0011c34: d72d beqz a4,c0011b9e JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0011b48: 4018 lw a4,0(s0) + c0011c36: 4018 lw a4,0(s0) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7316 ret = em->get_own_property(ctx, &desc, obj1, prop); - c0011b4a: 8622 mv a2,s0 - c0011b4c: 08ac addi a1,sp,88 + c0011c38: 8622 mv a2,s0 + c0011c3a: 08ac addi a1,sp,88 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0011b4e: 2705 addiw a4,a4,1 - c0011b50: c018 sw a4,0(s0) + c0011c3c: 2705 addiw a4,a4,1 + c0011c3e: c018 sw a4,0(s0) JS_GetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7308 - c0011b52: 639c ld a5,0(a5) - c0011b54: 577d li a4,-1 - c0011b56: f83a sd a4,48(sp) - c0011b58: 56fd li a3,-1 - c0011b5a: 874a mv a4,s2 - c0011b5c: 8526 mv a0,s1 - c0011b5e: f422 sd s0,40(sp) - c0011b60: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7316 + c0011c40: 639c ld a5,0(a5) + c0011c42: 577d li a4,-1 + c0011c44: f83a sd a4,48(sp) + c0011c46: 56fd li a3,-1 + c0011c48: 874a mv a4,s2 + c0011c4a: 8526 mv a0,s1 + c0011c4c: f422 sd s0,40(sp) + c0011c4e: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7317 JS_FreeValue(ctx, obj1); - c0011b62: 75a2 ld a1,40(sp) - c0011b64: 7642 ld a2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7308 + c0011c50: 75a2 ld a1,40(sp) + c0011c52: 7642 ld a2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7316 ret = em->get_own_property(ctx, &desc, obj1, prop); - c0011b66: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7309 + c0011c54: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7317 JS_FreeValue(ctx, obj1); - c0011b68: 8526 mv a0,s1 - c0011b6a: fcff50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7310 + c0011c56: 8526 mv a0,s1 + c0011c58: fcff50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7318 if (ret < 0) - c0011b6e: f00b49e3 bltz s6,c0011a80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7312 + c0011c5c: f00b49e3 bltz s6,c0011b6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7320 if (ret) { - c0011b72: f20b0fe3 beqz s6,c0011ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7313 + c0011c60: f20b0fe3 beqz s6,c0011b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7321 if (desc.flags & JS_PROP_GETSET) { - c0011b76: 47e6 lw a5,88(sp) - c0011b78: 8bc1 andi a5,a5,16 - c0011b7a: c395 beqz a5,c0011b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7314 + c0011c64: 47e6 lw a5,88(sp) + c0011c66: 8bc1 andi a5,a5,16 + c0011c68: c395 beqz a5,c0011c8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7322 JS_FreeValue(ctx, desc.setter); - c0011b7c: 658a ld a1,128(sp) - c0011b7e: 662a ld a2,136(sp) - c0011b80: 8526 mv a0,s1 - c0011b82: fb7f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7315 + c0011c6a: 658a ld a1,128(sp) + c0011c6c: 662a ld a2,136(sp) + c0011c6e: 8526 mv a0,s1 + c0011c70: fb7f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7323 return JS_CallFree(ctx, desc.getter, this_obj, 0, NULL); - c0011b86: 6682 ld a3,0(sp) - c0011b88: 6722 ld a4,8(sp) - c0011b8a: 75c6 ld a1,112(sp) - c0011b8c: 7666 ld a2,120(sp) - c0011b8e: 4801 li a6,0 - c0011b90: 4781 li a5,0 - c0011b92: 8526 mv a0,s1 - c0011b94: c79ff0ef jal ra,c001180c - c0011b98: fc2a sd a0,56(sp) - c0011b9a: e0ae sd a1,64(sp) - c0011b9c: bbe5 j c0011994 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7317 + c0011c74: 6682 ld a3,0(sp) + c0011c76: 6722 ld a4,8(sp) + c0011c78: 75c6 ld a1,112(sp) + c0011c7a: 7666 ld a2,120(sp) + c0011c7c: 4801 li a6,0 + c0011c7e: 4781 li a5,0 + c0011c80: 8526 mv a0,s1 + c0011c82: c79ff0ef jal ra,c00118fa + c0011c86: fc2a sd a0,56(sp) + c0011c88: e0ae sd a1,64(sp) + c0011c8a: bbe5 j c0011a82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7325 return desc.value; - c0011b9e: 7786 ld a5,96(sp) - c0011ba0: fc3e sd a5,56(sp) - c0011ba2: 77a6 ld a5,104(sp) - c0011ba4: b38d j c0011906 + c0011c8c: 7786 ld a5,96(sp) + c0011c8e: fc3e sd a5,56(sp) + c0011c90: 77a6 ld a5,104(sp) + c0011c92: b38d j c00119f4 -00000000c0011ba6 : +00000000c0011c94 : JS_IteratorGetCompleteValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15384 { - c0011ba6: 7175 addi sp,sp,-144 - c0011ba8: e122 sd s0,128(sp) - c0011baa: 87b2 mv a5,a2 - c0011bac: 8436 mv s0,a3 - c0011bae: 872e mv a4,a1 + c0011c94: 7175 addi sp,sp,-144 + c0011c96: e122 sd s0,128(sp) + c0011c98: 87b2 mv a5,a2 + c0011c9a: 8436 mv s0,a3 + c0011c9c: 872e mv a4,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0011bb0: 4801 li a6,0 - c0011bb2: 06a00693 li a3,106 + c0011c9e: 4801 li a6,0 + c0011ca0: 06a00693 li a3,106 JS_IteratorGetCompleteValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15376 - c0011bb6: fca6 sd s1,120(sp) - c0011bb8: f4ce sd s3,104(sp) - c0011bba: e506 sd ra,136(sp) - c0011bbc: f8ca sd s2,112(sp) - c0011bbe: 84aa mv s1,a0 - c0011bc0: e02e sd a1,0(sp) - c0011bc2: e432 sd a2,8(sp) - c0011bc4: e8ae sd a1,80(sp) - c0011bc6: ecb2 sd a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15384 + c0011ca4: fca6 sd s1,120(sp) + c0011ca6: f4ce sd s3,104(sp) + c0011ca8: e506 sd ra,136(sp) + c0011caa: f8ca sd s2,112(sp) + c0011cac: 84aa mv s1,a0 + c0011cae: e02e sd a1,0(sp) + c0011cb0: e432 sd a2,8(sp) + c0011cb2: e8ae sd a1,80(sp) + c0011cb4: ecb2 sd a2,88(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0011bc8: c7bff0ef jal ra,c0011842 + c0011cb6: c7bff0ef jal ra,c0011930 JS_IteratorGetCompleteValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15388 if (JS_IsException(done_val)) - c0011bcc: 0005879b sext.w a5,a1 - c0011bd0: 4999 li s3,6 - c0011bd2: 05378563 beq a5,s3,c0011c1c - c0011bd6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15382 + c0011cba: 0005879b sext.w a5,a1 + c0011cbe: 4999 li s3,6 + c0011cc0: 05378563 beq a5,s3,c0011d0a + c0011cc4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15390 done = JS_ToBoolFree(ctx, done_val); - c0011bd8: 85aa mv a1,a0 - c0011bda: 8526 mv a0,s1 - c0011bdc: a88f60ef jal ra,c0007e64 - c0011be0: 67a2 ld a5,8(sp) - c0011be2: 6702 ld a4,0(sp) - c0011be4: 892a mv s2,a0 + c0011cc6: 85aa mv a1,a0 + c0011cc8: 8526 mv a0,s1 + c0011cca: a88f60ef jal ra,c0007f52 + c0011cce: 67a2 ld a5,8(sp) + c0011cd0: 6702 ld a4,0(sp) + c0011cd2: 892a mv s2,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0011be6: 863e mv a2,a5 - c0011be8: 4801 li a6,0 - c0011bea: 04100693 li a3,65 - c0011bee: 85ba mv a1,a4 - c0011bf0: 8526 mv a0,s1 - c0011bf2: e4be sd a5,72(sp) - c0011bf4: e0ba sd a4,64(sp) - c0011bf6: c4dff0ef jal ra,c0011842 + c0011cd4: 863e mv a2,a5 + c0011cd6: 4801 li a6,0 + c0011cd8: 04100693 li a3,65 + c0011cdc: 85ba mv a1,a4 + c0011cde: 8526 mv a0,s1 + c0011ce0: e4be sd a5,72(sp) + c0011ce2: e0ba sd a4,64(sp) + c0011ce4: c4dff0ef jal ra,c0011930 JS_IteratorGetCompleteValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15392 if (JS_IsException(value)) - c0011bfa: 0005879b sext.w a5,a1 - c0011bfe: 01378f63 beq a5,s3,c0011c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15386 + c0011ce8: 0005879b sext.w a5,a1 + c0011cec: 01378f63 beq a5,s3,c0011d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15394 *pdone = done; - c0011c02: 01242023 sw s2,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15387 + c0011cf0: 01242023 sw s2,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15395 return value; - c0011c06: e0aa sd a0,64(sp) - c0011c08: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15391 -} - c0011c0a: 60aa ld ra,136(sp) - c0011c0c: 640a ld s0,128(sp) - c0011c0e: 6506 ld a0,64(sp) - c0011c10: 65a6 ld a1,72(sp) - c0011c12: 74e6 ld s1,120(sp) - c0011c14: 7946 ld s2,112(sp) - c0011c16: 79a6 ld s3,104(sp) - c0011c18: 6149 addi sp,sp,144 - c0011c1a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15390 + c0011cf4: e0aa sd a0,64(sp) + c0011cf6: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15399 +} + c0011cf8: 60aa ld ra,136(sp) + c0011cfa: 640a ld s0,128(sp) + c0011cfc: 6506 ld a0,64(sp) + c0011cfe: 65a6 ld a1,72(sp) + c0011d00: 74e6 ld s1,120(sp) + c0011d02: 7946 ld s2,112(sp) + c0011d04: 79a6 ld s3,104(sp) + c0011d06: 6149 addi sp,sp,144 + c0011d08: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15398 return JS_EXCEPTION; - c0011c1c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15389 + c0011d0a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15397 *pdone = FALSE; - c0011c1e: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15390 + c0011d0c: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15398 return JS_EXCEPTION; - c0011c22: e082 sd zero,64(sp) - c0011c24: e4be sd a5,72(sp) - c0011c26: b7d5 j c0011c0a + c0011d10: e082 sd zero,64(sp) + c0011d12: e4be sd a5,72(sp) + c0011d14: b7d5 j c0011cf8 -00000000c0011c28 : +00000000c0011d16 : js_is_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43510 -{ - c0011c28: 711d addi sp,sp,-96 - c0011c2a: e8a2 sd s0,80(sp) - c0011c2c: ec86 sd ra,88(sp) - c0011c2e: e4a6 sd s1,72(sp) - c0011c30: e0ca sd s2,64(sp) - c0011c32: e02e sd a1,0(sp) - c0011c34: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43518 +{ + c0011d16: 711d addi sp,sp,-96 + c0011d18: e8a2 sd s0,80(sp) + c0011d1a: ec86 sd ra,88(sp) + c0011d1c: e4a6 sd s1,72(sp) + c0011d1e: e0ca sd s2,64(sp) + c0011d20: e02e sd a1,0(sp) + c0011d22: e432 sd a2,8(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0011c36: 0006041b sext.w s0,a2 + c0011d24: 0006041b sext.w s0,a2 js_is_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43513 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43521 if (!JS_IsObject(obj)) - c0011c3a: 577d li a4,-1 - c0011c3c: 06e41463 bne s0,a4,c0011ca4 - c0011c40: 87b2 mv a5,a2 + c0011d28: 577d li a4,-1 + c0011d2a: 06e41463 bne s0,a4,c0011d92 + c0011d2e: 87b2 mv a5,a2 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0011c42: 872e mv a4,a1 - c0011c44: 4801 li a6,0 - c0011c46: 0cd00693 li a3,205 - c0011c4a: f432 sd a2,40(sp) - c0011c4c: 892a mv s2,a0 - c0011c4e: 84ae mv s1,a1 - c0011c50: f02e sd a1,32(sp) - c0011c52: bf1ff0ef jal ra,c0011842 - c0011c56: f82a sd a0,48(sp) - c0011c58: fc2e sd a1,56(sp) - c0011c5a: e82a sd a0,16(sp) - c0011c5c: ec2e sd a1,24(sp) + c0011d30: 872e mv a4,a1 + c0011d32: 4801 li a6,0 + c0011d34: 0cd00693 li a3,205 + c0011d38: f432 sd a2,40(sp) + c0011d3a: 892a mv s2,a0 + c0011d3c: 84ae mv s1,a1 + c0011d3e: f02e sd a1,32(sp) + c0011d40: bf1ff0ef jal ra,c0011930 + c0011d44: f82a sd a0,48(sp) + c0011d46: fc2e sd a1,56(sp) + c0011d48: e82a sd a0,16(sp) + c0011d4a: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0011c5e: 0005879b sext.w a5,a1 + c0011d4c: 0005879b sext.w a5,a1 js_is_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43524 if (JS_IsException(m)) - c0011c62: 4719 li a4,6 + c0011d50: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0011c64: 862e mv a2,a1 + c0011d52: 862e mv a2,a1 js_is_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43516 - c0011c66: 02e78863 beq a5,a4,c0011c96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43524 + c0011d54: 02e78863 beq a5,a4,c0011d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43526 if (!JS_IsUndefined(m)) - c0011c6a: 470d li a4,3 - c0011c6c: 00e78b63 beq a5,a4,c0011c82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43521 -} - c0011c70: 6446 ld s0,80(sp) - c0011c72: 60e6 ld ra,88(sp) - c0011c74: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43519 + c0011d58: 470d li a4,3 + c0011d5a: 00e78b63 beq a5,a4,c0011d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43529 +} + c0011d5e: 6446 ld s0,80(sp) + c0011d60: 60e6 ld ra,88(sp) + c0011d62: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43527 return JS_ToBoolFree(ctx, m); - c0011c76: 85aa mv a1,a0 - c0011c78: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43521 + c0011d64: 85aa mv a1,a0 + c0011d66: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43529 } - c0011c7a: 6906 ld s2,64(sp) - c0011c7c: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43519 + c0011d68: 6906 ld s2,64(sp) + c0011d6a: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43527 return JS_ToBoolFree(ctx, m); - c0011c7e: 9e6f606f j c0007e64 + c0011d6c: 9e6f606f j c0007f52 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0011c82: 0064d703 lhu a4,6(s1) - c0011c86: 47c9 li a5,18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 + c0011d70: 0064d703 lhu a4,6(s1) + c0011d74: 47c9 li a5,18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43513 return NULL; - c0011c88: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 + c0011d76: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0011c8a: 00f71463 bne a4,a5,c0011c92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43500 + c0011d78: 00f71463 bne a4,a5,c0011d80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43508 return &p->u.regexp; - c0011c8e: 03048413 addi s0,s1,48 + c0011d7c: 03048413 addi s0,s1,48 js_is_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43528 return js_get_regexp(ctx, obj, FALSE) != NULL; - c0011c92: 00803433 snez s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43521 -} - c0011c96: 60e6 ld ra,88(sp) - c0011c98: 8522 mv a0,s0 - c0011c9a: 6446 ld s0,80(sp) - c0011c9c: 64a6 ld s1,72(sp) - c0011c9e: 6906 ld s2,64(sp) - c0011ca0: 6125 addi sp,sp,96 - c0011ca2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43514 + c0011d80: 00803433 snez s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43529 +} + c0011d84: 60e6 ld ra,88(sp) + c0011d86: 8522 mv a0,s0 + c0011d88: 6446 ld s0,80(sp) + c0011d8a: 64a6 ld s1,72(sp) + c0011d8c: 6906 ld s2,64(sp) + c0011d8e: 6125 addi sp,sp,96 + c0011d90: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43522 return FALSE; - c0011ca4: 4401 li s0,0 - c0011ca6: bfc5 j c0011c96 + c0011d92: 4401 li s0,0 + c0011d94: bfc5 j c0011d84 -00000000c0011ca8 : +00000000c0011d96 : JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7968 -{ - c0011ca8: 7151 addi sp,sp,-240 - c0011caa: f1a2 sd s0,224(sp) - c0011cac: eda6 sd s1,216(sp) - c0011cae: f432 sd a2,40(sp) - c0011cb0: e836 sd a3,16(sp) - c0011cb2: 87b2 mv a5,a2 - c0011cb4: f586 sd ra,232(sp) - c0011cb6: e9ca sd s2,208(sp) - c0011cb8: a5a2 fsd fs0,200(sp) - c0011cba: f02e sd a1,32(sp) - c0011cbc: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7976 +{ + c0011d96: 7151 addi sp,sp,-240 + c0011d98: f1a2 sd s0,224(sp) + c0011d9a: eda6 sd s1,216(sp) + c0011d9c: f432 sd a2,40(sp) + c0011d9e: e836 sd a3,16(sp) + c0011da0: 87b2 mv a5,a2 + c0011da2: f586 sd ra,232(sp) + c0011da4: e9ca sd s2,208(sp) + c0011da6: a5a2 fsd fs0,200(sp) + c0011da8: f02e sd a1,32(sp) + c0011daa: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7980 if (likely(JS_VALUE_GET_TAG(this_obj) == JS_TAG_OBJECT && - c0011cbe: 2601 sext.w a2,a2 - c0011cc0: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7968 + c0011dac: 2601 sext.w a2,a2 + c0011dae: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7976 { - c0011cc2: 84aa mv s1,a0 - c0011cc4: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 + c0011db0: 84aa mv s1,a0 + c0011db2: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7980 if (likely(JS_VALUE_GET_TAG(this_obj) == JS_TAG_OBJECT && - c0011cc6: 1ad61c63 bne a2,a3,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 (discriminator 1) - c0011cca: 2701 sext.w a4,a4 - c0011ccc: 1a071963 bnez a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7978 + c0011db4: 1ad61c63 bne a2,a3,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7980 (discriminator 1) + c0011db8: 2701 sext.w a4,a4 + c0011dba: 1a071963 bnez a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7986 idx = JS_VALUE_GET_INT(prop); - c0011cd0: 0065d703 lhu a4,6(a1) - c0011cd4: 4675 li a2,29 - c0011cd6: 46c2 lw a3,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7979 + c0011dbe: 0065d703 lhu a4,6(a1) + c0011dc2: 4675 li a2,29 + c0011dc4: 46c2 lw a3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7987 switch(p->class_id) { - c0011cd8: 3779 addiw a4,a4,-2 - c0011cda: 03071593 slli a1,a4,0x30 - c0011cde: 91c1 srli a1,a1,0x30 - c0011ce0: 18b66f63 bltu a2,a1,c0011e7e - c0011ce4: 0004c617 auipc a2,0x4c - c0011ce8: ad460613 addi a2,a2,-1324 # c005d7b8 - c0011cec: 00259713 slli a4,a1,0x2 - c0011cf0: 9732 add a4,a4,a2 - c0011cf2: 4318 lw a4,0(a4) - c0011cf4: 9732 add a4,a4,a2 - c0011cf6: 8702 jr a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7982 + c0011dc6: 3779 addiw a4,a4,-2 + c0011dc8: 03071593 slli a1,a4,0x30 + c0011dcc: 91c1 srli a1,a1,0x30 + c0011dce: 18b66f63 bltu a2,a1,c0011f6c + c0011dd2: 0004c617 auipc a2,0x4c + c0011dd6: c1660613 addi a2,a2,-1002 # c005d9e8 + c0011dda: 00259713 slli a4,a1,0x2 + c0011dde: 9732 add a4,a4,a2 + c0011de0: 4318 lw a4,0(a4) + c0011de2: 9732 add a4,a4,a2 + c0011de4: 8702 jr a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7990 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011cf8: 4038 lw a4,64(s0) - c0011cfa: 18e6f263 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7983 + c0011de6: 4038 lw a4,64(s0) + c0011de8: 18e6f263 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7991 return JS_DupValue(ctx, p->u.array.u.values[idx]); - c0011cfe: 7c1c ld a5,56(s0) - c0011d00: 02069713 slli a4,a3,0x20 - c0011d04: 01c75693 srli a3,a4,0x1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011dec: 7c1c ld a5,56(s0) + c0011dee: 02069713 slli a4,a3,0x20 + c0011df2: 01c75693 srli a3,a4,0x1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011d08: 740e ld s0,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7983 + c0011df6: 740e ld s0,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7991 return JS_DupValue(ctx, p->u.array.u.values[idx]); - c0011d0a: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 -} - c0011d0c: 70ae ld ra,232(sp) - c0011d0e: 64ee ld s1,216(sp) - c0011d10: 694e ld s2,208(sp) - c0011d12: 242e fld fs0,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7983 + c0011df8: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 +} + c0011dfa: 70ae ld ra,232(sp) + c0011dfc: 64ee ld s1,216(sp) + c0011dfe: 694e ld s2,208(sp) + c0011e00: 242e fld fs0,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7991 return JS_DupValue(ctx, p->u.array.u.values[idx]); - c0011d14: 6288 ld a0,0(a3) - c0011d16: 668c ld a1,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011e02: 6288 ld a0,0(a3) + c0011e04: 668c ld a1,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011d18: 616d addi sp,sp,240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7983 + c0011e06: 616d addi sp,sp,240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7991 return JS_DupValue(ctx, p->u.array.u.values[idx]); - c0011d1a: 955f406f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7985 + c0011e08: 955f406f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7993 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011d1e: 4038 lw a4,64(s0) - c0011d20: 14e6ff63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7986 + c0011e0c: 4038 lw a4,64(s0) + c0011e0e: 14e6ff63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7994 return JS_NewInt32(ctx, p->u.array.u.int8_ptr[idx]); - c0011d24: 7c1c ld a5,56(s0) - c0011d26: 1682 slli a3,a3,0x20 - c0011d28: 9281 srli a3,a3,0x20 - c0011d2a: 96be add a3,a3,a5 - c0011d2c: 00068783 lb a5,0(a3) + c0011e12: 7c1c ld a5,56(s0) + c0011e14: 1682 slli a3,a3,0x20 + c0011e16: 9281 srli a3,a3,0x20 + c0011e18: 96be add a3,a3,a5 + c0011e1a: 00068783 lb a5,0(a3) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0011d30: c282 sw zero,68(sp) - c0011d32: c0be sw a5,64(sp) - c0011d34: 6786 ld a5,64(sp) - c0011d36: f83e sd a5,48(sp) - c0011d38: fc02 sd zero,56(sp) + c0011e1e: c282 sw zero,68(sp) + c0011e20: c0be sw a5,64(sp) + c0011e22: 6786 ld a5,64(sp) + c0011e24: f83e sd a5,48(sp) + c0011e26: fc02 sd zero,56(sp) JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 (discriminator 1) -} - c0011d3a: 70ae ld ra,232(sp) - c0011d3c: 740e ld s0,224(sp) - c0011d3e: 7542 ld a0,48(sp) - c0011d40: 75e2 ld a1,56(sp) - c0011d42: 64ee ld s1,216(sp) - c0011d44: 694e ld s2,208(sp) - c0011d46: 242e fld fs0,200(sp) - c0011d48: 616d addi sp,sp,240 - c0011d4a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7989 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 (discriminator 1) +} + c0011e28: 70ae ld ra,232(sp) + c0011e2a: 740e ld s0,224(sp) + c0011e2c: 7542 ld a0,48(sp) + c0011e2e: 75e2 ld a1,56(sp) + c0011e30: 64ee ld s1,216(sp) + c0011e32: 694e ld s2,208(sp) + c0011e34: 242e fld fs0,200(sp) + c0011e36: 616d addi sp,sp,240 + c0011e38: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7997 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011d4c: 4038 lw a4,64(s0) - c0011d4e: 12e6f863 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7990 + c0011e3a: 4038 lw a4,64(s0) + c0011e3c: 12e6f863 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7998 return JS_NewInt32(ctx, p->u.array.u.uint8_ptr[idx]); - c0011d52: 7c1c ld a5,56(s0) - c0011d54: 1682 slli a3,a3,0x20 - c0011d56: 9281 srli a3,a3,0x20 - c0011d58: 96be add a3,a3,a5 - c0011d5a: 0006c783 lbu a5,0(a3) + c0011e40: 7c1c ld a5,56(s0) + c0011e42: 1682 slli a3,a3,0x20 + c0011e44: 9281 srli a3,a3,0x20 + c0011e46: 96be add a3,a3,a5 + c0011e48: 0006c783 lbu a5,0(a3) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0011d5e: ca82 sw zero,84(sp) - c0011d60: c8be sw a5,80(sp) - c0011d62: 67c6 ld a5,80(sp) - c0011d64: bfc9 j c0011d36 + c0011e4c: ca82 sw zero,84(sp) + c0011e4e: c8be sw a5,80(sp) + c0011e50: 67c6 ld a5,80(sp) + c0011e52: bfc9 j c0011e24 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7992 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8000 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011d66: 4038 lw a4,64(s0) - c0011d68: 10e6fb63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7993 + c0011e54: 4038 lw a4,64(s0) + c0011e56: 10e6fb63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8001 return JS_NewInt32(ctx, p->u.array.u.int16_ptr[idx]); - c0011d6c: 7c1c ld a5,56(s0) - c0011d6e: 02069713 slli a4,a3,0x20 - c0011d72: 01f75693 srli a3,a4,0x1f - c0011d76: 96be add a3,a3,a5 - c0011d78: 00069783 lh a5,0(a3) + c0011e5a: 7c1c ld a5,56(s0) + c0011e5c: 02069713 slli a4,a3,0x20 + c0011e60: 01f75693 srli a3,a4,0x1f + c0011e64: 96be add a3,a3,a5 + c0011e66: 00069783 lh a5,0(a3) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0011d7c: d282 sw zero,100(sp) - c0011d7e: d0be sw a5,96(sp) - c0011d80: 7786 ld a5,96(sp) - c0011d82: bf55 j c0011d36 + c0011e6a: d282 sw zero,100(sp) + c0011e6c: d0be sw a5,96(sp) + c0011e6e: 7786 ld a5,96(sp) + c0011e70: bf55 j c0011e24 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7995 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8003 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011d84: 4038 lw a4,64(s0) - c0011d86: 0ee6fc63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7996 + c0011e72: 4038 lw a4,64(s0) + c0011e74: 0ee6fc63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8004 return JS_NewInt32(ctx, p->u.array.u.uint16_ptr[idx]); - c0011d8a: 7c1c ld a5,56(s0) - c0011d8c: 02069713 slli a4,a3,0x20 - c0011d90: 01f75693 srli a3,a4,0x1f - c0011d94: 96be add a3,a3,a5 - c0011d96: 0006d783 lhu a5,0(a3) + c0011e78: 7c1c ld a5,56(s0) + c0011e7a: 02069713 slli a4,a3,0x20 + c0011e7e: 01f75693 srli a3,a4,0x1f + c0011e82: 96be add a3,a3,a5 + c0011e84: 0006d783 lhu a5,0(a3) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0011d9a: da82 sw zero,116(sp) - c0011d9c: d8be sw a5,112(sp) - c0011d9e: 77c6 ld a5,112(sp) - c0011da0: bf59 j c0011d36 + c0011e88: da82 sw zero,116(sp) + c0011e8a: d8be sw a5,112(sp) + c0011e8c: 77c6 ld a5,112(sp) + c0011e8e: bf59 j c0011e24 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8006 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011da2: 4038 lw a4,64(s0) - c0011da4: 0ce6fd63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7999 + c0011e90: 4038 lw a4,64(s0) + c0011e92: 0ce6fd63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8007 return JS_NewInt32(ctx, p->u.array.u.int32_ptr[idx]); - c0011da8: 7c1c ld a5,56(s0) - c0011daa: 02069713 slli a4,a3,0x20 - c0011dae: 01e75693 srli a3,a4,0x1e - c0011db2: 96be add a3,a3,a5 - c0011db4: 429c lw a5,0(a3) + c0011e96: 7c1c ld a5,56(s0) + c0011e98: 02069713 slli a4,a3,0x20 + c0011e9c: 01e75693 srli a3,a4,0x1e + c0011ea0: 96be add a3,a3,a5 + c0011ea2: 429c lw a5,0(a3) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0011db6: c302 sw zero,132(sp) - c0011db8: c13e sw a5,128(sp) - c0011dba: 678a ld a5,128(sp) - c0011dbc: bfad j c0011d36 + c0011ea4: c302 sw zero,132(sp) + c0011ea6: c13e sw a5,128(sp) + c0011ea8: 678a ld a5,128(sp) + c0011eaa: bfad j c0011e24 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8001 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8009 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011dbe: 4038 lw a4,64(s0) - c0011dc0: 0ae6ff63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8002 + c0011eac: 4038 lw a4,64(s0) + c0011eae: 0ae6ff63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8010 return JS_NewUint32(ctx, p->u.array.u.uint32_ptr[idx]); - c0011dc4: 7c1c ld a5,56(s0) - c0011dc6: 02069713 slli a4,a3,0x20 - c0011dca: 01e75693 srli a3,a4,0x1e - c0011dce: 96be add a3,a3,a5 - c0011dd0: 4298 lw a4,0(a3) + c0011eb2: 7c1c ld a5,56(s0) + c0011eb4: 02069713 slli a4,a3,0x20 + c0011eb8: 01e75693 srli a3,a4,0x1e + c0011ebc: 96be add a3,a3,a5 + c0011ebe: 4298 lw a4,0(a3) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0011dd2: 0007079b sext.w a5,a4 - c0011dd6: 00074c63 bltz a4,c0011dee + c0011ec0: 0007079b sext.w a5,a4 + c0011ec4: 00074c63 bltz a4,c0011edc JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0011dda: cb02 sw zero,148(sp) - c0011ddc: c93e sw a5,144(sp) - c0011dde: 674a ld a4,144(sp) - c0011de0: f93a sd a4,176(sp) - c0011de2: 4701 li a4,0 + c0011ec8: cb02 sw zero,148(sp) + c0011eca: c93e sw a5,144(sp) + c0011ecc: 674a ld a4,144(sp) + c0011ece: f93a sd a4,176(sp) + c0011ed0: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0011de4: d93e sw a5,176(sp) - c0011de6: 37ca fld fa5,176(sp) - c0011de8: fc3a sd a4,56(sp) - c0011dea: b83e fsd fa5,48(sp) + c0011ed2: d93e sw a5,176(sp) + c0011ed4: 37ca fld fa5,176(sp) + c0011ed6: fc3a sd a4,56(sp) + c0011ed8: b83e fsd fa5,48(sp) JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8002 - c0011dec: b7b9 j c0011d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8010 + c0011eda: b7b9 j c0011e28 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0011dee: d21707d3 fcvt.d.wu fa5,a4 - c0011df2: 471d li a4,7 - c0011df4: e20787d3 fmv.x.d a5,fa5 + c0011edc: d21707d3 fcvt.d.wu fa5,a4 + c0011ee0: 471d li a4,7 + c0011ee2: e20787d3 fmv.x.d a5,fa5 JS_GetPropertyValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0011df8: b93e fsd fa5,176(sp) - c0011dfa: 2781 sext.w a5,a5 - c0011dfc: b7e5 j c0011de4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8004 + c0011ee6: b93e fsd fa5,176(sp) + c0011ee8: 2781 sext.w a5,a5 + c0011eea: b7e5 j c0011ed2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8012 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011dfe: 4038 lw a4,64(s0) - c0011e00: 06e6ff63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8005 + c0011eec: 4038 lw a4,64(s0) + c0011eee: 06e6ff63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8013 return JS_NewBigInt64(ctx, p->u.array.u.int64_ptr[idx]); - c0011e04: 7c1c ld a5,56(s0) - c0011e06: 02069713 slli a4,a3,0x20 - c0011e0a: 01d75693 srli a3,a4,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011ef2: 7c1c ld a5,56(s0) + c0011ef4: 02069713 slli a4,a3,0x20 + c0011ef8: 01d75693 srli a3,a4,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011e0e: 740e ld s0,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8005 + c0011efc: 740e ld s0,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8013 return JS_NewBigInt64(ctx, p->u.array.u.int64_ptr[idx]); - c0011e10: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011efe: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011e12: 70ae ld ra,232(sp) - c0011e14: 64ee ld s1,216(sp) - c0011e16: 694e ld s2,208(sp) - c0011e18: 242e fld fs0,200(sp) + c0011f00: 70ae ld ra,232(sp) + c0011f02: 64ee ld s1,216(sp) + c0011f04: 694e ld s2,208(sp) + c0011f06: 242e fld fs0,200(sp) JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c0011e1a: 628c ld a1,0(a3) + c0011f08: 628c ld a1,0(a3) JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011e1c: 616d addi sp,sp,240 + c0011f0a: 616d addi sp,sp,240 JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c0011e1e: 67b0606f j c0018c98 + c0011f0c: 75d0606f j c0018e68 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8007 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8015 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011e22: 4038 lw a4,64(s0) - c0011e24: 04e6fd63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8008 + c0011f10: 4038 lw a4,64(s0) + c0011f12: 04e6fd63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8016 return JS_NewBigUint64(ctx, p->u.array.u.uint64_ptr[idx]); - c0011e28: 7c1c ld a5,56(s0) - c0011e2a: 02069713 slli a4,a3,0x20 - c0011e2e: 01d75693 srli a3,a4,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011f16: 7c1c ld a5,56(s0) + c0011f18: 02069713 slli a4,a3,0x20 + c0011f1c: 01d75693 srli a3,a4,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011e32: 740e ld s0,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8008 + c0011f20: 740e ld s0,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8016 return JS_NewBigUint64(ctx, p->u.array.u.uint64_ptr[idx]); - c0011e34: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 -} - c0011e36: 70ae ld ra,232(sp) - c0011e38: 64ee ld s1,216(sp) - c0011e3a: 694e ld s2,208(sp) - c0011e3c: 242e fld fs0,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8008 + c0011f22: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 +} + c0011f24: 70ae ld ra,232(sp) + c0011f26: 64ee ld s1,216(sp) + c0011f28: 694e ld s2,208(sp) + c0011f2a: 242e fld fs0,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8016 return JS_NewBigUint64(ctx, p->u.array.u.uint64_ptr[idx]); - c0011e3e: 628c ld a1,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 + c0011f2c: 628c ld a1,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8036 } - c0011e40: 616d addi sp,sp,240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8008 + c0011f2e: 616d addi sp,sp,240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8016 return JS_NewBigUint64(ctx, p->u.array.u.uint64_ptr[idx]); - c0011e42: 6cd0606f j c0018d0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8010 + c0011f30: 7af0606f j c0018ede +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8018 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011e46: 4038 lw a4,64(s0) - c0011e48: 02e6fb63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8011 + c0011f34: 4038 lw a4,64(s0) + c0011f36: 02e6fb63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8019 return __JS_NewFloat64(ctx, p->u.array.u.float_ptr[idx]); - c0011e4c: 7c1c ld a5,56(s0) - c0011e4e: 02069713 slli a4,a3,0x20 - c0011e52: 01e75693 srli a3,a4,0x1e - c0011e56: 96be add a3,a3,a5 - c0011e58: 0006a787 flw fa5,0(a3) - c0011e5c: 420787d3 fcvt.d.s fa5,fa5 - c0011e60: b83e fsd fa5,48(sp) - c0011e62: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8023 + c0011f3a: 7c1c ld a5,56(s0) + c0011f3c: 02069713 slli a4,a3,0x20 + c0011f40: 01e75693 srli a3,a4,0x1e + c0011f44: 96be add a3,a3,a5 + c0011f46: 0006a787 flw fa5,0(a3) + c0011f4a: 420787d3 fcvt.d.s fa5,fa5 + c0011f4e: b83e fsd fa5,48(sp) + c0011f50: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8031 return JS_EXCEPTION; - c0011e64: fc3e sd a5,56(sp) - c0011e66: bdd1 j c0011d3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8013 + c0011f52: fc3e sd a5,56(sp) + c0011f54: bdd1 j c0011e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8021 if (unlikely(idx >= p->u.array.count)) goto slow_path; - c0011e68: 4038 lw a4,64(s0) - c0011e6a: 00e6fa63 bgeu a3,a4,c0011e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8014 + c0011f56: 4038 lw a4,64(s0) + c0011f58: 00e6fa63 bgeu a3,a4,c0011f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8022 return __JS_NewFloat64(ctx, p->u.array.u.double_ptr[idx]); - c0011e6e: 7c1c ld a5,56(s0) - c0011e70: 02069713 slli a4,a3,0x20 - c0011e74: 01d75693 srli a3,a4,0x1d - c0011e78: 96be add a3,a3,a5 - c0011e7a: 229c fld fa5,0(a3) - c0011e7c: b7d5 j c0011e60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8020 + c0011f5c: 7c1c ld a5,56(s0) + c0011f5e: 02069713 slli a4,a3,0x20 + c0011f62: 01d75693 srli a3,a4,0x1d + c0011f66: 96be add a3,a3,a5 + c0011f68: 229c fld fa5,0(a3) + c0011f6a: b7d5 j c0011f4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 atom = JS_ValueToAtom(ctx, prop); - c0011e7e: 65c2 ld a1,16(sp) - c0011e80: 6662 ld a2,24(sp) - c0011e82: 8526 mv a0,s1 - c0011e84: e43e sd a5,8(sp) - c0011e86: 7960f0ef jal ra,c002161c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8021 + c0011f6c: 65c2 ld a1,16(sp) + c0011f6e: 6662 ld a2,24(sp) + c0011f70: 8526 mv a0,s1 + c0011f72: e43e sd a5,8(sp) + c0011f74: 0790f0ef jal ra,c00217ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8029 JS_FreeValue(ctx, prop); - c0011e8a: 65c2 ld a1,16(sp) - c0011e8c: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8020 + c0011f78: 65c2 ld a1,16(sp) + c0011f7a: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8028 atom = JS_ValueToAtom(ctx, prop); - c0011e8e: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8021 + c0011f7c: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8029 JS_FreeValue(ctx, prop); - c0011e92: 8526 mv a0,s1 - c0011e94: ca5f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8022 + c0011f80: 8526 mv a0,s1 + c0011f82: ca5f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8030 if (unlikely(atom == JS_ATOM_NULL)) - c0011e98: 67a2 ld a5,8(sp) - c0011e9a: 00091563 bnez s2,c0011ea4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8023 + c0011f86: 67a2 ld a5,8(sp) + c0011f88: 00091563 bnez s2,c0011f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8031 return JS_EXCEPTION; - c0011e9e: f802 sd zero,48(sp) - c0011ea0: 4799 li a5,6 - c0011ea2: b7c9 j c0011e64 + c0011f8c: f802 sd zero,48(sp) + c0011f8e: 4799 li a5,6 + c0011f90: b7c9 j c0011f52 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0011ea4: 8722 mv a4,s0 - c0011ea6: 4801 li a6,0 - c0011ea8: 86ca mv a3,s2 - c0011eaa: 85a2 mv a1,s0 - c0011eac: 863e mv a2,a5 - c0011eae: 8526 mv a0,s1 - c0011eb0: f922 sd s0,176(sp) - c0011eb2: fd3e sd a5,184(sp) - c0011eb4: 98fff0ef jal ra,c0011842 - c0011eb8: e42a sd a0,8(sp) - c0011eba: 2422 fld fs0,8(sp) - c0011ebc: 842e mv s0,a1 + c0011f92: 8722 mv a4,s0 + c0011f94: 4801 li a6,0 + c0011f96: 86ca mv a3,s2 + c0011f98: 85a2 mv a1,s0 + c0011f9a: 863e mv a2,a5 + c0011f9c: 8526 mv a0,s1 + c0011f9e: f922 sd s0,176(sp) + c0011fa0: fd3e sd a5,184(sp) + c0011fa2: 98fff0ef jal ra,c0011930 + c0011fa6: e42a sd a0,8(sp) + c0011fa8: 2422 fld fs0,8(sp) + c0011faa: 842e mv s0,a1 JS_GetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8033 JS_FreeAtom(ctx, atom); - c0011ebe: 8526 mv a0,s1 - c0011ec0: 85ca mv a1,s2 - c0011ec2: e4af50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8026 + c0011fac: 8526 mv a0,s1 + c0011fae: 85ca mv a1,s2 + c0011fb0: e4af50ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8034 return ret; - c0011ec6: b822 fsd fs0,48(sp) - c0011ec8: fc22 sd s0,56(sp) - c0011eca: bd85 j c0011d3a + c0011fb4: b822 fsd fs0,48(sp) + c0011fb6: fc22 sd s0,56(sp) + c0011fb8: bd85 j c0011e28 -00000000c0011ecc : +00000000c0011fba : JS_GetPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8040 { - c0011ecc: 7139 addi sp,sp,-64 - c0011ece: e02e sd a1,0(sp) - c0011ed0: e432 sd a2,8(sp) + c0011fba: 7139 addi sp,sp,-64 + c0011fbc: e02e sd a1,0(sp) + c0011fbe: e432 sd a2,8(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0011ed2: 0206c163 bltz a3,c0011ef4 - c0011ed6: 0006879b sext.w a5,a3 + c0011fc0: 0206c163 bltz a3,c0011fe2 + c0011fc4: 0006879b sext.w a5,a3 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0011eda: da02 sw zero,52(sp) - c0011edc: d83e sw a5,48(sp) - c0011ede: 7742 ld a4,48(sp) - c0011ee0: f03a sd a4,32(sp) - c0011ee2: 4701 li a4,0 + c0011fc8: da02 sw zero,52(sp) + c0011fca: d83e sw a5,48(sp) + c0011fcc: 7742 ld a4,48(sp) + c0011fce: f03a sd a4,32(sp) + c0011fd0: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0011ee4: d03e sw a5,32(sp) + c0011fd2: d03e sw a5,32(sp) JS_GetPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8033 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8041 return JS_GetPropertyValue(ctx, this_obj, JS_NewUint32(ctx, idx)); - c0011ee6: 7682 ld a3,32(sp) - c0011ee8: 6582 ld a1,0(sp) - c0011eea: 6622 ld a2,8(sp) - c0011eec: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8034 + c0011fd4: 7682 ld a3,32(sp) + c0011fd6: 6582 ld a1,0(sp) + c0011fd8: 6622 ld a2,8(sp) + c0011fda: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8042 } - c0011eee: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8033 + c0011fdc: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8041 return JS_GetPropertyValue(ctx, this_obj, JS_NewUint32(ctx, idx)); - c0011ef0: db9ff06f j c0011ca8 + c0011fde: db9ff06f j c0011d96 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0011ef4: d21687d3 fcvt.d.wu fa5,a3 - c0011ef8: 471d li a4,7 - c0011efa: e20787d3 fmv.x.d a5,fa5 + c0011fe2: d21687d3 fcvt.d.wu fa5,a3 + c0011fe6: 471d li a4,7 + c0011fe8: e20787d3 fmv.x.d a5,fa5 JS_GetPropertyUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0011efe: b03e fsd fa5,32(sp) - c0011f00: 2781 sext.w a5,a5 - c0011f02: b7cd j c0011ee4 + c0011fec: b03e fsd fa5,32(sp) + c0011fee: 2781 sext.w a5,a5 + c0011ff0: b7cd j c0011fd2 -00000000c0011f04 : +00000000c0011ff2 : JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7775 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7783 { - c0011f04: 7159 addi sp,sp,-112 - c0011f06: e4ce sd s3,72(sp) + c0011ff2: 7159 addi sp,sp,-112 + c0011ff4: e4ce sd s3,72(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0011f08: 040009b7 lui s3,0x4000 + c0011ff6: 040009b7 lui s3,0x4000 JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7775 -{ - c0011f0c: f0a2 sd s0,96(sp) - c0011f0e: eca6 sd s1,88(sp) - c0011f10: e8ca sd s2,80(sp) - c0011f12: e0d2 sd s4,64(sp) - c0011f14: fc56 sd s5,56(sp) - c0011f16: f85a sd s6,48(sp) - c0011f18: f45e sd s7,40(sp) - c0011f1a: 842e mv s0,a1 - c0011f1c: f486 sd ra,104(sp) - c0011f1e: 892a mv s2,a0 - c0011f20: 85b2 mv a1,a2 - c0011f22: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7783 +{ + c0011ffa: f0a2 sd s0,96(sp) + c0011ffc: eca6 sd s1,88(sp) + c0011ffe: e8ca sd s2,80(sp) + c0012000: e0d2 sd s4,64(sp) + c0012002: fc56 sd s5,56(sp) + c0012004: f85a sd s6,48(sp) + c0012006: f45e sd s7,40(sp) + c0012008: 842e mv s0,a1 + c001200a: f486 sd ra,104(sp) + c001200c: 892a mv s2,a0 + c001200e: 85b2 mv a1,a2 + c0012010: 84b6 mv s1,a3 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0011f24: 5af1 li s5,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0012012: 5af1 li s5,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0011f26: 19fd addi s3,s3,-1 + c0012014: 19fd addi s3,s3,-1 JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7792 desc->getter = JS_UNDEFINED; - c0011f28: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7788 + c0012016: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7796 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c0011f2a: 4b41 li s6,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7794 + c0012018: 4b41 li s6,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7802 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0011f2c: 02000b93 li s7,32 + c001201a: 02000b93 li s7,32 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0011f30: 6d98 ld a4,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c001201e: 6d98 ld a4,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0011f32: 531c lw a5,32(a4) + c0012020: 531c lw a5,32(a4) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0011f34: 04070613 addi a2,a4,64 + c0012022: 04070613 addi a2,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0011f38: 8fe5 and a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012026: 8fe5 and a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0011f3a: 1782 slli a5,a5,0x20 - c0011f3c: 9381 srli a5,a5,0x20 - c0011f3e: 0785 addi a5,a5,1 - c0011f40: 035787b3 mul a5,a5,s5 - c0011f44: 97ba add a5,a5,a4 - c0011f46: 0007e683 lwu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c0012028: 1782 slli a5,a5,0x20 + c001202a: 9381 srli a5,a5,0x20 + c001202c: 0785 addi a5,a5,1 + c001202e: 035787b3 mul a5,a5,s5 + c0012032: 97ba add a5,a5,a4 + c0012034: 0007e683 lwu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0011f4a: ea89 bnez a3,c0011f5c + c0012038: ea89 bnez a3,c001204a JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7823 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7831 if (p->is_exotic) { - c0011f4c: 0055c783 lbu a5,5(a1) - c0011f50: 0047f713 andi a4,a5,4 - c0011f54: 10071563 bnez a4,c001205e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7848 + c001203a: 0055c783 lbu a5,5(a1) + c001203e: 0047f713 andi a4,a5,4 + c0012042: 10071563 bnez a4,c001214c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7856 return FALSE; - c0011f58: 4501 li a0,0 - c0011f5a: a849 j c0011fec + c0012046: 4501 li a0,0 + c0012048: a849 j c00120da find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0011f5c: 00369713 slli a4,a3,0x3 - c0011f60: 1761 addi a4,a4,-8 - c0011f62: 9732 add a4,a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c001204a: 00369713 slli a4,a3,0x3 + c001204e: 1761 addi a4,a4,-8 + c0012050: 9732 add a4,a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0011f64: 4348 lw a0,4(a4) - c0011f66: 431c lw a5,0(a4) - c0011f68: 02951863 bne a0,s1,c0011f98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0012052: 4348 lw a0,4(a4) + c0012054: 431c lw a5,0(a4) + c0012056: 02951863 bne a0,s1,c0012086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0011f6c: 0692 slli a3,a3,0x4 - c0011f6e: ff068613 addi a2,a3,-16 - c0011f72: 7194 ld a3,32(a1) + c001205a: 0692 slli a3,a3,0x4 + c001205c: ff068613 addi a2,a3,-16 + c0012060: 7194 ld a3,32(a1) JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7783 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7791 desc->flags = prs->flags & JS_PROP_C_W_E; - c0011f74: 01a7d79b srliw a5,a5,0x1a + c0012062: 01a7d79b srliw a5,a5,0x1a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0011f78: 96b2 add a3,a3,a2 + c0012066: 96b2 add a3,a3,a2 JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7790 if (desc) { - c0011f7a: e40d bnez s0,c0011fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7812 + c0012068: e40d bnez s0,c0012092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7820 if (unlikely((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)) { - c0011f7c: 0307f793 andi a5,a5,48 - c0011f80: 02000713 li a4,32 - c0011f84: 06e79363 bne a5,a4,c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7813 + c001206a: 0307f793 andi a5,a5,48 + c001206e: 02000713 li a4,32 + c0012072: 06e79363 bne a5,a4,c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7821 if (unlikely(JS_IsUninitialized(*pr->u.var_ref->pvalue))) { - c0011f88: 629c ld a5,0(a3) + c0012076: 629c ld a5,0(a3) JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_UNINITIALIZED); - c0011f8a: 6f9c ld a5,24(a5) + c0012078: 6f9c ld a5,24(a5) JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7813 - c0011f8c: 4798 lw a4,8(a5) - c0011f8e: 4791 li a5,4 - c0011f90: 04f71d63 bne a4,a5,c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7821 + c001207a: 4798 lw a4,8(a5) + c001207c: 4791 li a5,4 + c001207e: 04f71d63 bne a4,a5,c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7822 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c0011f94: 85a6 mv a1,s1 - c0011f96: a859 j c001202c + c0012082: 85a6 mv a1,s1 + c0012084: a859 j c001211a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0011f98: 00f9f7b3 and a5,s3,a5 - c0011f9c: 02079693 slli a3,a5,0x20 - c0011fa0: 9281 srli a3,a3,0x20 - c0011fa2: b765 j c0011f4a + c0012086: 00f9f7b3 and a5,s3,a5 + c001208a: 02079693 slli a3,a5,0x20 + c001208e: 9281 srli a3,a3,0x20 + c0012090: b765 j c0012038 JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7783 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7791 desc->flags = prs->flags & JS_PROP_C_W_E; - c0011fa4: 8b9d andi a5,a5,7 - c0011fa6: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7784 + c0012092: 8b9d andi a5,a5,7 + c0012094: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7792 desc->getter = JS_UNDEFINED; - c0011fa8: 00043c23 sd zero,24(s0) - c0011fac: 03443023 sd s4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7785 + c0012096: 00043c23 sd zero,24(s0) + c001209a: 03443023 sd s4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7793 desc->setter = JS_UNDEFINED; - c0011fb0: 02043423 sd zero,40(s0) - c0011fb4: 03443823 sd s4,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7786 + c001209e: 02043423 sd zero,40(s0) + c00120a2: 03443823 sd s4,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7794 desc->value = JS_UNDEFINED; - c0011fb8: 00043423 sd zero,8(s0) - c0011fbc: 01443823 sd s4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7787 + c00120a6: 00043423 sd zero,8(s0) + c00120aa: 01443823 sd s4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7795 if (unlikely(prs->flags & JS_PROP_TMASK)) { - c0011fc0: 4310 lw a2,0(a4) - c0011fc2: 01a6561b srliw a2,a2,0x1a - c0011fc6: 03067613 andi a2,a2,48 - c0011fca: c259 beqz a2,c0012050 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7788 + c00120ae: 4310 lw a2,0(a4) + c00120b0: 01a6561b srliw a2,a2,0x1a + c00120b4: 03067613 andi a2,a2,48 + c00120b8: c259 beqz a2,c001213e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7796 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c0011fcc: 05661263 bne a2,s6,c0012010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7789 + c00120ba: 05661263 bne a2,s6,c00120fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7797 desc->flags |= JS_PROP_GETSET; - c0011fd0: 0107e793 ori a5,a5,16 - c0011fd4: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7790 + c00120be: 0107e793 ori a5,a5,16 + c00120c2: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7798 if (pr->u.getset.getter) - c0011fd6: 629c ld a5,0(a3) - c0011fd8: c799 beqz a5,c0011fe6 + c00120c4: 629c ld a5,0(a3) + c00120c6: c799 beqz a5,c00120d4 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0011fda: 4398 lw a4,0(a5) - c0011fdc: 2705 addiw a4,a4,1 - c0011fde: c398 sw a4,0(a5) + c00120c8: 4398 lw a4,0(a5) + c00120ca: 2705 addiw a4,a4,1 + c00120cc: c398 sw a4,0(a5) JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7799 desc->getter = JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.getter)); - c0011fe0: ec1c sd a5,24(s0) - c0011fe2: 57fd li a5,-1 - c0011fe4: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7792 + c00120ce: ec1c sd a5,24(s0) + c00120d0: 57fd li a5,-1 + c00120d2: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7800 if (pr->u.getset.setter) - c0011fe6: 669c ld a5,8(a3) - c0011fe8: ef89 bnez a5,c0012002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7821 + c00120d4: 669c ld a5,8(a3) + c00120d6: ef89 bnez a5,c00120f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7829 return TRUE; - c0011fea: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 -} - c0011fec: 70a6 ld ra,104(sp) - c0011fee: 7406 ld s0,96(sp) - c0011ff0: 64e6 ld s1,88(sp) - c0011ff2: 6946 ld s2,80(sp) - c0011ff4: 69a6 ld s3,72(sp) - c0011ff6: 6a06 ld s4,64(sp) - c0011ff8: 7ae2 ld s5,56(sp) - c0011ffa: 7b42 ld s6,48(sp) - c0011ffc: 7ba2 ld s7,40(sp) - c0011ffe: 6165 addi sp,sp,112 - c0012000: 8082 ret + c00120d8: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7857 +} + c00120da: 70a6 ld ra,104(sp) + c00120dc: 7406 ld s0,96(sp) + c00120de: 64e6 ld s1,88(sp) + c00120e0: 6946 ld s2,80(sp) + c00120e2: 69a6 ld s3,72(sp) + c00120e4: 6a06 ld s4,64(sp) + c00120e6: 7ae2 ld s5,56(sp) + c00120e8: 7b42 ld s6,48(sp) + c00120ea: 7ba2 ld s7,40(sp) + c00120ec: 6165 addi sp,sp,112 + c00120ee: 8082 ret JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0012002: 4398 lw a4,0(a5) - c0012004: 2705 addiw a4,a4,1 - c0012006: c398 sw a4,0(a5) + c00120f0: 4398 lw a4,0(a5) + c00120f2: 2705 addiw a4,a4,1 + c00120f4: c398 sw a4,0(a5) JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7793 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7801 desc->setter = JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.setter)); - c0012008: f41c sd a5,40(s0) - c001200a: 57fd li a5,-1 - c001200c: f81c sd a5,48(s0) - c001200e: bff1 j c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7794 + c00120f6: f41c sd a5,40(s0) + c00120f8: 57fd li a5,-1 + c00120fa: f81c sd a5,48(s0) + c00120fc: bff1 j c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7802 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012010: 03761263 bne a2,s7,c0012034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7795 + c00120fe: 03761263 bne a2,s7,c0012122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7803 JSValue val = *pr->u.var_ref->pvalue; - c0012014: 629c ld a5,0(a3) - c0012016: 6f9c ld a5,24(a5) - c0012018: 678c ld a1,8(a5) - c001201a: 6388 ld a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7796 + c0012102: 629c ld a5,0(a3) + c0012104: 6f9c ld a5,24(a5) + c0012106: 678c ld a1,8(a5) + c0012108: 6388 ld a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7804 if (unlikely(JS_IsUninitialized(val))) { - c001201c: 4791 li a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7795 + c001210a: 4791 li a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7803 JSValue val = *pr->u.var_ref->pvalue; - c001201e: ec2e sd a1,24(sp) - c0012020: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7796 + c001210c: ec2e sd a1,24(sp) + c001210e: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7804 if (unlikely(JS_IsUninitialized(val))) { - c0012022: 0005869b sext.w a3,a1 - c0012026: 02f69763 bne a3,a5,c0012054 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7797 + c0012110: 0005869b sext.w a3,a1 + c0012114: 02f69763 bne a3,a5,c0012142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7805 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c001202a: 434c lw a1,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7814 + c0012118: 434c lw a1,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7822 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c001202c: 854a mv a0,s2 - c001202e: 0ab020ef jal ra,c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7815 + c001211a: 854a mv a0,s2 + c001211c: 0ab020ef jal ra,c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7823 return -1; - c0012032: a829 j c001204c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7801 + c0012120: a829 j c001213a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7809 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c0012034: 03000793 li a5,48 - c0012038: faf619e3 bne a2,a5,c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7803 + c0012122: 03000793 li a5,48 + c0012126: faf619e3 bne a2,a5,c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7811 if (JS_AutoInitProperty(ctx, p, prop, pr, prs)) - c001203c: 8626 mv a2,s1 - c001203e: 854a mv a0,s2 - c0012040: e42e sd a1,8(sp) - c0012042: 68d020ef jal ra,c0014ece - c0012046: 65a2 ld a1,8(sp) - c0012048: ee0504e3 beqz a0,c0011f30 - c001204c: 557d li a0,-1 - c001204e: bf79 j c0011fec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7808 + c001212a: 8626 mv a2,s1 + c001212c: 854a mv a0,s2 + c001212e: e42e sd a1,8(sp) + c0012130: 76f020ef jal ra,c001509e + c0012134: 65a2 ld a1,8(sp) + c0012136: ee0504e3 beqz a0,c001201e + c001213a: 557d li a0,-1 + c001213c: bf79 j c00120da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7816 desc->value = JS_DupValue(ctx, pr->u.value); - c0012050: 6288 ld a0,0(a3) - c0012052: 668c ld a1,8(a3) - c0012054: e1af40ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7835 + c001213e: 6288 ld a0,0(a3) + c0012140: 668c ld a1,8(a3) + c0012142: e1af40ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 desc->value = JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c0012058: e408 sd a0,8(s0) - c001205a: e80c sd a1,16(s0) - c001205c: b779 j c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7824 + c0012146: e408 sd a0,8(s0) + c0012148: e80c sd a1,16(s0) + c001214a: b779 j c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7832 if (p->fast_array) { - c001205e: 8ba1 andi a5,a5,8 - c0012060: cf85 beqz a5,c0012098 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7848 + c001214c: 8ba1 andi a5,a5,8 + c001214e: cf85 beqz a5,c0012186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7856 return FALSE; - c0012062: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7826 + c0012150: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7834 if (__JS_AtomIsTaggedInt(prop)) { - c0012064: f804d4e3 bgez s1,c0011fec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7829 + c0012152: f804d4e3 bgez s1,c00120da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7837 if (idx < p->u.array.count) { - c0012068: 41bc lw a5,64(a1) + c0012156: 41bc lw a5,64(a1) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c001206a: 02149693 slli a3,s1,0x21 - c001206e: 9285 srli a3,a3,0x21 + c0012158: 02149693 slli a3,s1,0x21 + c001215c: 9285 srli a3,a3,0x21 JS_GetOwnPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7829 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7837 if (idx < p->u.array.count) { - c0012070: f6f6fee3 bgeu a3,a5,c0011fec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7830 + c001215e: f6f6fee3 bgeu a3,a5,c00120da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7838 if (desc) { - c0012074: d83d beqz s0,c0011fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7831 + c0012162: d83d beqz s0,c00120d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7839 desc->flags = JS_PROP_WRITABLE | JS_PROP_ENUMERABLE | - c0012076: 479d li a5,7 - c0012078: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7833 + c0012164: 479d li a5,7 + c0012166: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7841 desc->getter = JS_UNDEFINED; - c001207a: 478d li a5,3 - c001207c: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7834 + c0012168: 478d li a5,3 + c001216a: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7842 desc->setter = JS_UNDEFINED; - c001207e: f81c sd a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7833 + c001216c: f81c sd a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7841 desc->getter = JS_UNDEFINED; - c0012080: 00043c23 sd zero,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7835 + c001216e: 00043c23 sd zero,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 desc->value = JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c0012084: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7834 + c0012172: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7842 desc->setter = JS_UNDEFINED; - c0012086: 02043423 sd zero,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7835 + c0012174: 02043423 sd zero,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 desc->value = JS_GetPropertyUint32(ctx, JS_MKPTR(JS_TAG_OBJECT, p), idx); - c001208a: 567d li a2,-1 - c001208c: 854a mv a0,s2 - c001208e: e82e sd a1,16(sp) - c0012090: ec3e sd a5,24(sp) - c0012092: e3bff0ef jal ra,c0011ecc - c0012096: b7c9 j c0012058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7841 + c0012178: 567d li a2,-1 + c001217a: 854a mv a0,s2 + c001217c: e82e sd a1,16(sp) + c001217e: ec3e sd a5,24(sp) + c0012180: e3bff0ef jal ra,c0011fba + c0012184: b7c9 j c0012146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0012098: 0065d703 lhu a4,6(a1) - c001209c: 02800693 li a3,40 - c00120a0: 01893783 ld a5,24(s2) - c00120a4: 02d70733 mul a4,a4,a3 - c00120a8: 7bbc ld a5,112(a5) - c00120aa: 97ba add a5,a5,a4 - c00120ac: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7842 + c0012186: 0065d703 lhu a4,6(a1) + c001218a: 02800693 li a3,40 + c001218e: 01893783 ld a5,24(s2) + c0012192: 02d70733 mul a4,a4,a3 + c0012196: 7bbc ld a5,112(a5) + c0012198: 97ba add a5,a5,a4 + c001219a: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7850 if (em && em->get_own_property) { - c00120ae: ea0785e3 beqz a5,c0011f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7842 (discriminator 1) - c00120b2: 639c ld a5,0(a5) - c00120b4: ea0782e3 beqz a5,c0011f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7844 + c001219c: ea0785e3 beqz a5,c0012046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7850 (discriminator 1) + c00121a0: 639c ld a5,0(a5) + c00121a2: ea0782e3 beqz a5,c0012046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7852 JS_MKPTR(JS_TAG_OBJECT, p), prop); - c00120b8: e82e sd a1,16(sp) - c00120ba: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 + c00121a6: e82e sd a1,16(sp) + c00121a8: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7851 return em->get_own_property(ctx, desc, - c00120bc: 862e mv a2,a1 - c00120be: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 + c00121aa: 862e mv a2,a1 + c00121ac: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7857 } - c00120c0: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7844 + c00121ae: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7852 JS_MKPTR(JS_TAG_OBJECT, p), prop); - c00120c2: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 -} - c00120c4: 70a6 ld ra,104(sp) - c00120c6: 69a6 ld s3,72(sp) - c00120c8: 6a06 ld s4,64(sp) - c00120ca: 7ae2 ld s5,56(sp) - c00120cc: 7b42 ld s6,48(sp) - c00120ce: 7ba2 ld s7,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 + c00121b0: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7857 +} + c00121b2: 70a6 ld ra,104(sp) + c00121b4: 69a6 ld s3,72(sp) + c00121b6: 6a06 ld s4,64(sp) + c00121b8: 7ae2 ld s5,56(sp) + c00121ba: 7b42 ld s6,48(sp) + c00121bc: 7ba2 ld s7,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7851 return em->get_own_property(ctx, desc, - c00120d0: 8726 mv a4,s1 - c00120d2: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 + c00121be: 8726 mv a4,s1 + c00121c0: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7857 } - c00120d4: 64e6 ld s1,88(sp) - c00120d6: 6946 ld s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 + c00121c2: 64e6 ld s1,88(sp) + c00121c4: 6946 ld s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7851 return em->get_own_property(ctx, desc, - c00120d8: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7849 + c00121c6: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7857 } - c00120da: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7843 + c00121c8: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7851 return em->get_own_property(ctx, desc, - c00120dc: 8782 jr a5 + c00121ca: 8782 jr a5 -00000000c00120de : +00000000c00121cc : JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8470 -{ - c00120de: 7169 addi sp,sp,-304 - c00120e0: ee26 sd s1,280(sp) - c00120e2: e64e sd s3,264(sp) - c00120e4: fdd6 sd s5,248(sp) - c00120e6: f9da sd s6,240(sp) - c00120e8: f446 sd a7,40(sp) - c00120ea: f606 sd ra,296(sp) - c00120ec: f222 sd s0,288(sp) - c00120ee: ea4a sd s2,272(sp) - c00120f0: e252 sd s4,256(sp) - c00120f2: f5de sd s7,232(sp) - c00120f4: f1e2 sd s8,224(sp) - c00120f6: ede6 sd s9,216(sp) - c00120f8: e0ae sd a1,64(sp) - c00120fa: e4b2 sd a2,72(sp) - c00120fc: f83a sd a4,48(sp) - c00120fe: fc3e sd a5,56(sp) - c0012100: f042 sd a6,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8478 +{ + c00121cc: 7169 addi sp,sp,-304 + c00121ce: ee26 sd s1,280(sp) + c00121d0: e64e sd s3,264(sp) + c00121d2: fdd6 sd s5,248(sp) + c00121d4: f9da sd s6,240(sp) + c00121d6: f446 sd a7,40(sp) + c00121d8: f606 sd ra,296(sp) + c00121da: f222 sd s0,288(sp) + c00121dc: ea4a sd s2,272(sp) + c00121de: e252 sd s4,256(sp) + c00121e0: f5de sd s7,232(sp) + c00121e2: f1e2 sd s8,224(sp) + c00121e4: ede6 sd s9,216(sp) + c00121e6: e0ae sd a1,64(sp) + c00121e8: e4b2 sd a2,72(sp) + c00121ea: f83a sd a4,48(sp) + c00121ec: fc3e sd a5,56(sp) + c00121ee: f042 sd a6,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8488 tag = JS_VALUE_GET_TAG(this_obj); - c0012102: 2881 sext.w a7,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8481 + c00121f0: 2881 sext.w a7,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8489 if (unlikely(tag != JS_TAG_OBJECT)) { - c0012104: 537d li t1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8470 -{ - c0012106: 13012a83 lw s5,304(sp) - c001210a: 84aa mv s1,a0 - c001210c: 89b6 mv s3,a3 - c001210e: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8481 + c00121f2: 537d li t1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8478 +{ + c00121f4: 13012a83 lw s5,304(sp) + c00121f8: 84aa mv s1,a0 + c00121fa: 89b6 mv s3,a3 + c00121fc: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8489 if (unlikely(tag != JS_TAG_OBJECT)) { - c0012110: 06688f63 beq a7,t1,c001218e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8482 + c00121fe: 06688f63 beq a7,t1,c001227c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8490 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0012114: 0006069b sext.w a3,a2 - c0012118: 3a668163 beq a3,t1,c00124ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8487 + c0012202: 0006069b sext.w a3,a2 + c0012206: 3a668163 beq a3,t1,c00125a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8495 switch(tag) { - c001211c: 4689 li a3,2 - c001211e: 00d88c63 beq a7,a3,c0012136 - c0012122: 468d li a3,3 - c0012124: 04d88863 beq a7,a3,c0012174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8499 + c001220a: 4689 li a3,2 + c001220c: 00d88c63 beq a7,a3,c0012224 + c0012210: 468d li a3,3 + c0012212: 04d88863 beq a7,a3,c0012262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8507 p1 = JS_VALUE_GET_OBJ(JS_GetPrototypePrimitive(ctx, obj)); - c0012128: 964f20ef jal ra,c000428c - c001212c: 892a mv s2,a0 - c001212e: f4aa sd a0,104(sp) - c0012130: f8ae sd a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8483 + c0012216: 876f20ef jal ra,c000428c + c001221a: 892a mv s2,a0 + c001221c: f4aa sd a0,104(sp) + c001221e: f8ae sd a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8491 p = NULL; - c0012132: 4a01 li s4,0 - c0012134: a69d j c001249a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8489 + c0012220: 4a01 li s4,0 + c0012222: a69d j c0012588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8497 JS_FreeValue(ctx, val); - c0012136: 863e mv a2,a5 - c0012138: 85ba mv a1,a4 - c001213a: 9fff50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8490 + c0012224: 863e mv a2,a5 + c0012226: 85ba mv a1,a4 + c0012228: 9fff50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8498 JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of null", prop); - c001213e: 0004b697 auipc a3,0x4b - c0012142: e9268693 addi a3,a3,-366 # c005cfd0 - c0012146: 0004b617 auipc a2,0x4b - c001214a: 6ea60613 addi a2,a2,1770 # c005d830 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8494 + c001222c: 0004b697 auipc a3,0x4b + c0012230: fd468693 addi a3,a3,-44 # c005d200 + c0012234: 0004c617 auipc a2,0x4c + c0012238: 82c60613 addi a2,a2,-2004 # c005da60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8502 JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of undefined", prop); - c001214e: 85ce mv a1,s3 - c0012150: 8526 mv a0,s1 - c0012152: 380010ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8495 + c001223c: 85ce mv a1,s3 + c001223e: 8526 mv a0,s1 + c0012240: 380010ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8503 return -1; - c0012156: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 (discriminator 6) -} - c0012158: 70b2 ld ra,296(sp) - c001215a: 8522 mv a0,s0 - c001215c: 7412 ld s0,288(sp) - c001215e: 64f2 ld s1,280(sp) - c0012160: 6952 ld s2,272(sp) - c0012162: 69b2 ld s3,264(sp) - c0012164: 6a12 ld s4,256(sp) - c0012166: 7aee ld s5,248(sp) - c0012168: 7b4e ld s6,240(sp) - c001216a: 7bae ld s7,232(sp) - c001216c: 7c0e ld s8,224(sp) - c001216e: 6cee ld s9,216(sp) - c0012170: 6155 addi sp,sp,304 - c0012172: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8493 + c0012244: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 (discriminator 6) +} + c0012246: 70b2 ld ra,296(sp) + c0012248: 8522 mv a0,s0 + c001224a: 7412 ld s0,288(sp) + c001224c: 64f2 ld s1,280(sp) + c001224e: 6952 ld s2,272(sp) + c0012250: 69b2 ld s3,264(sp) + c0012252: 6a12 ld s4,256(sp) + c0012254: 7aee ld s5,248(sp) + c0012256: 7b4e ld s6,240(sp) + c0012258: 7bae ld s7,232(sp) + c001225a: 7c0e ld s8,224(sp) + c001225c: 6cee ld s9,216(sp) + c001225e: 6155 addi sp,sp,304 + c0012260: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8501 JS_FreeValue(ctx, val); - c0012174: 863e mv a2,a5 - c0012176: 85ba mv a1,a4 - c0012178: 9c1f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8494 + c0012262: 863e mv a2,a5 + c0012264: 85ba mv a1,a4 + c0012266: 9c1f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8502 JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of undefined", prop); - c001217c: 0004b697 auipc a3,0x4b - c0012180: e5468693 addi a3,a3,-428 # c005cfd0 - c0012184: 0004b617 auipc a2,0x4b - c0012188: 6d460613 addi a2,a2,1748 # c005d858 - c001218c: b7c9 j c001214e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8504 + c001226a: 0004b697 auipc a3,0x4b + c001226e: f9668693 addi a3,a3,-106 # c005d200 + c0012272: 0004c617 auipc a2,0x4c + c0012276: 81660613 addi a2,a2,-2026 # c005da88 + c001227a: b7c9 j c001223c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8512 p = JS_VALUE_GET_OBJ(this_obj); - c001218e: 8a42 mv s4,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8506 + c001227c: 8a42 mv s4,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8514 if (unlikely(p != p1)) - c0012190: 32b81763 bne a6,a1,c00124be + c001227e: 32b81763 bne a6,a1,c00125ac find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0012194: 04000437 lui s0,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012282: 04000437 lui s0,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0012198: 5bf1 li s7,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0012286: 5bf1 li s7,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001219a: 147d addi s0,s0,-1 + c0012288: 147d addi s0,s0,-1 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 if (likely((prs->flags & (JS_PROP_TMASK | JS_PROP_WRITABLE | - c001219c: 4909 li s2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8523 + c001228a: 4909 li s2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8531 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c001219e: 4c41 li s8,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8525 + c001228c: 4c41 li s8,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8533 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c00121a0: 02000c93 li s9,32 + c001228e: 02000c93 li s9,32 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c00121a4: 018b3703 ld a4,24(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0012292: 018b3703 ld a4,24(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c00121a8: 531c lw a5,32(a4) + c0012296: 531c lw a5,32(a4) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00121aa: 04070693 addi a3,a4,64 + c0012298: 04070693 addi a3,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c00121ae: 00f9f7b3 and a5,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c001229c: 00f9f7b3 and a5,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c00121b2: 1782 slli a5,a5,0x20 - c00121b4: 9381 srli a5,a5,0x20 - c00121b6: 0785 addi a5,a5,1 - c00121b8: 037787b3 mul a5,a5,s7 - c00121bc: 97ba add a5,a5,a4 - c00121be: 0007e583 lwu a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c00122a0: 1782 slli a5,a5,0x20 + c00122a2: 9381 srli a5,a5,0x20 + c00122a4: 0785 addi a5,a5,1 + c00122a6: 037787b3 mul a5,a5,s7 + c00122aa: 97ba add a5,a5,a4 + c00122ac: 0007e583 lwu a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c00121c2: e5b9 bnez a1,c0012210 - c00121c4: 895a mv s2,s6 + c00122b0: e5b9 bnez a1,c00122fe + c00122b2: 895a mv s2,s6 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8554 if (p1->is_exotic) { - c00121c6: 00594783 lbu a5,5(s2) - c00121ca: 0047f713 andi a4,a5,4 - c00121ce: 2c070263 beqz a4,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8547 + c00122b4: 00594783 lbu a5,5(s2) + c00122b8: 0047f713 andi a4,a5,4 + c00122bc: 2c070263 beqz a4,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8555 if (p1->fast_array) { - c00121d2: 8ba1 andi a5,a5,8 - c00121d4: 1a078d63 beqz a5,c001238e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8548 + c00122c0: 8ba1 andi a5,a5,8 + c00122c2: 1a078d63 beqz a5,c001247c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8556 if (__JS_AtomIsTaggedInt(prop)) { - c00121d8: 1609d963 bgez s3,c001234a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8550 + c00122c6: 1609d963 bgez s3,c0012438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8558 if (idx < p1->u.array.count) { - c00121dc: 04092703 lw a4,64(s2) + c00122ca: 04092703 lw a4,64(s2) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c00121e0: 02199793 slli a5,s3,0x21 - c00121e4: 9385 srli a5,a5,0x21 + c00122ce: 02199793 slli a5,s3,0x21 + c00122d2: 9385 srli a5,a5,0x21 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8558 if (idx < p1->u.array.count) { - c00121e6: 12e7f863 bgeu a5,a4,c0012316 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8551 + c00122d4: 12e7f863 bgeu a5,a4,c0012404 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8559 if (unlikely(p == p1)) - c00121ea: 2b2a1a63 bne s4,s2,c001249e + c00122d8: 2b2a1a63 bne s4,s2,c001258c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00121ee: e502 sd zero,136(sp) - c00121f0: c53e sw a5,136(sp) - c00121f2: 66aa ld a3,136(sp) + c00122dc: e502 sd zero,136(sp) + c00122de: c53e sw a5,136(sp) + c00122e0: 66aa ld a3,136(sp) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8560 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), val, flags); - c00121f4: 77c2 ld a5,48(sp) - c00121f6: 7862 ld a6,56(sp) - c00121f8: 7582 ld a1,32(sp) - c00121fa: 7622 ld a2,40(sp) - c00121fc: 88d6 mv a7,s5 - c00121fe: 4701 li a4,0 - c0012200: 8526 mv a0,s1 + c00122e2: 77c2 ld a5,48(sp) + c00122e4: 7862 ld a6,56(sp) + c00122e6: 7582 ld a1,32(sp) + c00122e8: 7622 ld a2,40(sp) + c00122ea: 88d6 mv a7,s5 + c00122ec: 4701 li a4,0 + c00122ee: 8526 mv a0,s1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0012202: e902 sd zero,144(sp) - c0012204: fcb6 sd a3,120(sp) - c0012206: e102 sd zero,128(sp) + c00122f0: e902 sd zero,144(sp) + c00122f2: fcb6 sd a3,120(sp) + c00122f4: e102 sd zero,128(sp) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8552 - c0012208: 480000ef jal ra,c0012688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8560 + c00122f6: 480000ef jal ra,c0012776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8688 return add_fast_array_element(ctx, p, val, flags); - c001220c: 842a mv s0,a0 - c001220e: b7a9 j c0012158 + c00122fa: 842a mv s0,a0 + c00122fc: b7a9 j c0012246 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0012210: 00359713 slli a4,a1,0x3 - c0012214: 1761 addi a4,a4,-8 - c0012216: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c00122fe: 00359713 slli a4,a1,0x3 + c0012302: 1761 addi a4,a4,-8 + c0012304: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0012218: 4350 lw a2,4(a4) - c001221a: 431c lw a5,0(a4) - c001221c: 03361e63 bne a2,s3,c0012258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0012306: 4350 lw a2,4(a4) + c0012308: 431c lw a5,0(a4) + c001230a: 03361e63 bne a2,s3,c0012346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0012220: 020b3683 ld a3,32(s6) - c0012224: 0592 slli a1,a1,0x4 - c0012226: 15c1 addi a1,a1,-16 + c001230e: 020b3683 ld a3,32(s6) + c0012312: 0592 slli a1,a1,0x4 + c0012314: 15c1 addi a1,a1,-16 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 if (likely((prs->flags & (JS_PROP_TMASK | JS_PROP_WRITABLE | - c0012228: 01a7d79b srliw a5,a5,0x1a + c0012316: 01a7d79b srliw a5,a5,0x1a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c001222c: 95b6 add a1,a1,a3 + c001231a: 95b6 add a1,a1,a3 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 if (likely((prs->flags & (JS_PROP_TMASK | JS_PROP_WRITABLE | - c001222e: 03a7f693 andi a3,a5,58 - c0012232: 03268863 beq a3,s2,c0012262 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8519 + c001231c: 03a7f693 andi a3,a5,58 + c0012320: 03268863 beq a3,s2,c0012350 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8527 } else if (prs->flags & JS_PROP_LENGTH) { - c0012236: 0087f693 andi a3,a5,8 - c001223a: c6bd beqz a3,c00122a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8520 + c0012324: 0087f693 andi a3,a5,8 + c0012328: c6bd beqz a3,c0012396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8528 assert(p->class_id == JS_CLASS_ARRAY); - c001223c: 006a5783 lhu a5,6(s4) - c0012240: 03278863 beq a5,s2,c0012270 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8520 (discriminator 1) - c0012244: 6589 lui a1,0x2 - c0012246: 4601 li a2,0 - c0012248: 14858593 addi a1,a1,328 # 2148 <__clzdi2-0xbfffdeb8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8521 (discriminator 1) + c001232a: 006a5783 lhu a5,6(s4) + c001232e: 03278863 beq a5,s2,c001235e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8528 (discriminator 1) + c0012332: 6589 lui a1,0x2 + c0012334: 4601 li a2,0 + c0012336: 15058593 addi a1,a1,336 # 2150 <__clzdi2-0xbfffdeb0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8529 (discriminator 1) assert(prop == JS_ATOM_length); - c001224c: 0004b517 auipc a0,0x4b - c0012250: 82c50513 addi a0,a0,-2004 # c005ca78 - c0012254: 7c4410ef jal ra,c0053a18 <__assert> + c001233a: 0004b517 auipc a0,0x4b + c001233e: 90e50513 addi a0,a0,-1778 # c005cc48 + c0012342: 0a7410ef jal ra,c0053be8 <__assert> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0012258: 8fe1 and a5,a5,s0 - c001225a: 02079593 slli a1,a5,0x20 - c001225e: 9181 srli a1,a1,0x20 - c0012260: b78d j c00121c2 + c0012346: 8fe1 and a5,a5,s0 + c0012348: 02079593 slli a1,a5,0x20 + c001234c: 9181 srli a1,a1,0x20 + c001234e: b78d j c00122b0 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8525 set_value(ctx, &pr->u.value, val); - c0012262: 7642 ld a2,48(sp) - c0012264: 76e2 ld a3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8531 + c0012350: 7642 ld a2,48(sp) + c0012352: 76e2 ld a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8539 set_value(ctx, pr->u.var_ref->pvalue, val); - c0012266: 8526 mv a0,s1 - c0012268: d1bf50ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8694 + c0012354: 8526 mv a0,s1 + c0012356: d1bf50ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8702 return TRUE; - c001226c: 4405 li s0,1 - c001226e: b5ed j c0012158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8521 (discriminator 2) + c001235a: 4405 li s0,1 + c001235c: b5ed j c0012246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8529 (discriminator 2) assert(prop == JS_ATOM_length); - c0012270: 03000793 li a5,48 - c0012274: 00f98763 beq s3,a5,c0012282 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8521 (discriminator 1) - c0012278: 6589 lui a1,0x2 - c001227a: 4601 li a2,0 - c001227c: 14958593 addi a1,a1,329 # 2149 <__clzdi2-0xbfffdeb7> - c0012280: b7f1 j c001224c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 (discriminator 2) -} - c0012282: 7412 ld s0,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 (discriminator 2) + c001235e: 03000793 li a5,48 + c0012362: 00f98763 beq s3,a5,c0012370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8529 (discriminator 1) + c0012366: 6589 lui a1,0x2 + c0012368: 4601 li a2,0 + c001236a: 15158593 addi a1,a1,337 # 2151 <__clzdi2-0xbfffdeaf> + c001236e: b7f1 j c001233a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 (discriminator 2) +} + c0012370: 7412 ld s0,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8530 (discriminator 2) return set_array_length(ctx, p, val, flags); - c0012284: 7642 ld a2,48(sp) - c0012286: 76e2 ld a3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 (discriminator 2) -} - c0012288: 70b2 ld ra,296(sp) - c001228a: 6952 ld s2,272(sp) - c001228c: 69b2 ld s3,264(sp) - c001228e: 7b4e ld s6,240(sp) - c0012290: 7bae ld s7,232(sp) - c0012292: 7c0e ld s8,224(sp) - c0012294: 6cee ld s9,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 (discriminator 2) + c0012372: 7642 ld a2,48(sp) + c0012374: 76e2 ld a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 (discriminator 2) +} + c0012376: 70b2 ld ra,296(sp) + c0012378: 6952 ld s2,272(sp) + c001237a: 69b2 ld s3,264(sp) + c001237c: 7b4e ld s6,240(sp) + c001237e: 7bae ld s7,232(sp) + c0012380: 7c0e ld s8,224(sp) + c0012382: 6cee ld s9,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8530 (discriminator 2) return set_array_length(ctx, p, val, flags); - c0012296: 8756 mv a4,s5 - c0012298: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 (discriminator 2) + c0012384: 8756 mv a4,s5 + c0012386: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 (discriminator 2) } - c001229a: 7aee ld s5,248(sp) - c001229c: 6a12 ld s4,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 (discriminator 2) + c0012388: 7aee ld s5,248(sp) + c001238a: 6a12 ld s4,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8530 (discriminator 2) return set_array_length(ctx, p, val, flags); - c001229e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 (discriminator 2) + c001238c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 (discriminator 2) } - c00122a0: 64f2 ld s1,280(sp) - c00122a2: 6155 addi sp,sp,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8522 (discriminator 2) + c001238e: 64f2 ld s1,280(sp) + c0012390: 6155 addi sp,sp,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8530 (discriminator 2) return set_array_length(ctx, p, val, flags); - c00122a4: 05a0b06f j c001d2fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8523 + c0012392: 13c0b06f j c001d4ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8531 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c00122a8: 0307f793 andi a5,a5,48 - c00122ac: 03879763 bne a5,s8,c00122da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 + c0012396: 0307f793 andi a5,a5,48 + c001239a: 03879763 bne a5,s8,c00123c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 } - c00122b0: 7412 ld s0,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8524 + c001239e: 7412 ld s0,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8532 return call_setter(ctx, pr->u.getset.setter, this_obj, val, flags); - c00122b2: 7742 ld a4,48(sp) - c00122b4: 77e2 ld a5,56(sp) - c00122b6: 7602 ld a2,32(sp) - c00122b8: 76a2 ld a3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 -} - c00122ba: 70b2 ld ra,296(sp) - c00122bc: 6952 ld s2,272(sp) - c00122be: 69b2 ld s3,264(sp) - c00122c0: 6a12 ld s4,256(sp) - c00122c2: 7b4e ld s6,240(sp) - c00122c4: 7bae ld s7,232(sp) - c00122c6: 7c0e ld s8,224(sp) - c00122c8: 6cee ld s9,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8524 + c00123a0: 7742 ld a4,48(sp) + c00123a2: 77e2 ld a5,56(sp) + c00123a4: 7602 ld a2,32(sp) + c00123a6: 76a2 ld a3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 +} + c00123a8: 70b2 ld ra,296(sp) + c00123aa: 6952 ld s2,272(sp) + c00123ac: 69b2 ld s3,264(sp) + c00123ae: 6a12 ld s4,256(sp) + c00123b0: 7b4e ld s6,240(sp) + c00123b2: 7bae ld s7,232(sp) + c00123b4: 7c0e ld s8,224(sp) + c00123b6: 6cee ld s9,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8532 return call_setter(ctx, pr->u.getset.setter, this_obj, val, flags); - c00122ca: 658c ld a1,8(a1) - c00122cc: 8856 mv a6,s5 - c00122ce: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8736 -} - c00122d0: 7aee ld s5,248(sp) - c00122d2: 64f2 ld s1,280(sp) - c00122d4: 6155 addi sp,sp,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8524 + c00123b8: 658c ld a1,8(a1) + c00123ba: 8856 mv a6,s5 + c00123bc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8744 +} + c00123be: 7aee ld s5,248(sp) + c00123c0: 64f2 ld s1,280(sp) + c00123c2: 6155 addi sp,sp,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8532 return call_setter(ctx, pr->u.getset.setter, this_obj, val, flags); - c00122d6: 14a0106f j c0013420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8525 + c00123c4: 14a0106f j c001350e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8533 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c00122da: 01979c63 bne a5,s9,c00122f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8529 + c00123c8: 01979c63 bne a5,s9,c00123e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8537 if (p->class_id == JS_CLASS_MODULE_NS) - c00122de: 006a5703 lhu a4,6(s4) - c00122e2: 47ad li a5,11 - c00122e4: 26f70563 beq a4,a5,c001254e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8531 + c00123cc: 006a5703 lhu a4,6(s4) + c00123d0: 47ad li a5,11 + c00123d2: 26f70563 beq a4,a5,c001263c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8539 set_value(ctx, pr->u.var_ref->pvalue, val); - c00122e8: 619c ld a5,0(a1) - c00122ea: 7642 ld a2,48(sp) - c00122ec: 76e2 ld a3,56(sp) - c00122ee: 6f8c ld a1,24(a5) - c00122f0: bf9d j c0012266 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8533 + c00123d6: 619c ld a5,0(a1) + c00123d8: 7642 ld a2,48(sp) + c00123da: 76e2 ld a3,56(sp) + c00123dc: 6f8c ld a1,24(a5) + c00123de: bf9d j c0012354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8541 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c00122f2: 03000693 li a3,48 - c00122f6: 24d79c63 bne a5,a3,c001254e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8535 + c00123e0: 03000693 li a3,48 + c00123e4: 24d79c63 bne a5,a3,c001263c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8543 if (JS_AutoInitProperty(ctx, p, prop, pr, prs)) { - c00122fa: 86ae mv a3,a1 - c00122fc: 864e mv a2,s3 - c00122fe: 85d2 mv a1,s4 - c0012300: 8526 mv a0,s1 - c0012302: 3cd020ef jal ra,c0014ece - c0012306: e8050fe3 beqz a0,c00121a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8536 + c00123e8: 86ae mv a3,a1 + c00123ea: 864e mv a2,s3 + c00123ec: 85d2 mv a1,s4 + c00123ee: 8526 mv a0,s1 + c00123f0: 4af020ef jal ra,c001509e + c00123f4: e8050fe3 beqz a0,c0012292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8544 JS_FreeValue(ctx, val); - c001230a: 75c2 ld a1,48(sp) - c001230c: 7662 ld a2,56(sp) - c001230e: 8526 mv a0,s1 - c0012310: 829f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8537 + c00123f8: 75c2 ld a1,48(sp) + c00123fa: 7662 ld a2,56(sp) + c00123fc: 8526 mv a0,s1 + c00123fe: 829f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8545 return -1; - c0012314: b589 j c0012156 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8555 + c0012402: b589 j c0012244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8563 } else if (p1->class_id >= JS_CLASS_UINT8C_ARRAY && - c0012316: 00695783 lhu a5,6(s2) - c001231a: 4729 li a4,10 - c001231c: 37ad addiw a5,a5,-21 - c001231e: 17c2 slli a5,a5,0x30 - c0012320: 93c1 srli a5,a5,0x30 - c0012322: 16f76863 bltu a4,a5,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8569 + c0012404: 00695783 lhu a5,6(s2) + c0012408: 4729 li a4,10 + c001240a: 37ad addiw a5,a5,-21 + c001240c: 17c2 slli a5,a5,0x30 + c001240e: 93c1 srli a5,a5,0x30 + c0012410: 16f76863 bltu a4,a5,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8577 if (p1->class_id == JS_CLASS_BIG_INT64_ARRAY || - c0012326: 00695783 lhu a5,6(s2) - c001232a: 4705 li a4,1 - c001232c: 3791 addiw a5,a5,-28 - c001232e: 17c2 slli a5,a5,0x30 - c0012330: 93c1 srli a5,a5,0x30 - c0012332: 02f76d63 bltu a4,a5,c001236c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8572 - if (JS_ToBigInt64Free(ctx, &v, val)) - c0012336: 7642 ld a2,48(sp) - c0012338: 76e2 ld a3,56(sp) - c001233a: 012c addi a1,sp,136 - c001233c: 8526 mv a0,s1 - c001233e: 6d80d0ef jal ra,c001fa16 + c0012414: 00695783 lhu a5,6(s2) + c0012418: 4705 li a4,1 + c001241a: 3791 addiw a5,a5,-28 + c001241c: 17c2 slli a5,a5,0x30 + c001241e: 93c1 srli a5,a5,0x30 + c0012420: 02f76d63 bltu a4,a5,c001245a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8580 + if (JS_ToBigInt64Free(ctx, &v, val)) + c0012424: 7642 ld a2,48(sp) + c0012426: 76e2 ld a3,56(sp) + c0012428: 012c addi a1,sp,136 + c001242a: 8526 mv a0,s1 + c001242c: 7ba0d0ef jal ra,c001fbe6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8588 return TRUE; - c0012342: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8572 + c0012430: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8580 if (JS_ToBigInt64Free(ctx, &v, val)) - c0012344: e0050ae3 beqz a0,c0012158 - c0012348: b539 j c0012156 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8559 + c0012432: e0050ae3 beqz a0,c0012246 + c0012436: b539 j c0012244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8567 } else if (p1->class_id >= JS_CLASS_UINT8C_ARRAY && - c001234a: 00695783 lhu a5,6(s2) - c001234e: 4729 li a4,10 - c0012350: 37ad addiw a5,a5,-21 - c0012352: 17c2 slli a5,a5,0x30 - c0012354: 93c1 srli a5,a5,0x30 - c0012356: 12f76e63 bltu a4,a5,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8561 + c0012438: 00695783 lhu a5,6(s2) + c001243c: 4729 li a4,10 + c001243e: 37ad addiw a5,a5,-21 + c0012440: 17c2 slli a5,a5,0x30 + c0012442: 93c1 srli a5,a5,0x30 + c0012444: 12f76e63 bltu a4,a5,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8569 ret = JS_AtomIsNumericIndex(ctx, prop); - c001235a: 85ce mv a1,s3 - c001235c: 8526 mv a0,s1 - c001235e: 51b0e0ef jal ra,c0021078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8562 + c0012448: 85ce mv a1,s3 + c001244a: 8526 mv a0,s1 + c001244c: 5fd0e0ef jal ra,c0021248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8570 if (ret != 0) { - c0012362: 12050863 beqz a0,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8563 + c0012450: 12050863 beqz a0,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8571 if (ret < 0) { - c0012366: fc0550e3 bgez a0,c0012326 - c001236a: b745 j c001230a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8575 + c0012454: fc0550e3 bgez a0,c0012414 + c0012458: b745 j c00123f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8583 val = JS_ToNumberFree(ctx, val); - c001236c: 7662 ld a2,56(sp) - c001236e: 75c2 ld a1,48(sp) - c0012370: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8580 + c001245a: 7662 ld a2,56(sp) + c001245c: 75c2 ld a1,48(sp) + c001245e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8588 return TRUE; - c0012372: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8575 + c0012460: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8583 val = JS_ToNumberFree(ctx, val); - c0012374: 6f7090ef jal ra,c001c26a - c0012378: 862e mv a2,a1 - c001237a: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8576 + c0012462: 7d9090ef jal ra,c001c43a + c0012466: 862e mv a2,a1 + c0012468: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8584 JS_FreeValue(ctx, val); - c001237c: 85aa mv a1,a0 - c001237e: 8526 mv a0,s1 - c0012380: fb8f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8577 + c001246a: 85aa mv a1,a0 + c001246c: 8526 mv a0,s1 + c001246e: fb8f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8585 if (JS_IsException(val)) - c0012384: 5762 lw a4,56(sp) - c0012386: 4799 li a5,6 - c0012388: dcf718e3 bne a4,a5,c0012158 - c001238c: b3e9 j c0012156 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8584 + c0012472: 5762 lw a4,56(sp) + c0012474: 4799 li a5,6 + c0012476: dcf718e3 bne a4,a5,c0012246 + c001247a: b3e9 j c0012244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8592 const JSClassExoticMethods *em = ctx->rt->class_array[p1->class_id].exotic; - c001238e: 00695703 lhu a4,6(s2) - c0012392: 02800693 li a3,40 - c0012396: 6c9c ld a5,24(s1) - c0012398: 02d70733 mul a4,a4,a3 - c001239c: 7bbc ld a5,112(a5) - c001239e: 97ba add a5,a5,a4 - c00123a0: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8585 + c001247c: 00695703 lhu a4,6(s2) + c0012480: 02800693 li a3,40 + c0012484: 6c9c ld a5,24(s1) + c0012486: 02d70733 mul a4,a4,a3 + c001248a: 7bbc ld a5,112(a5) + c001248c: 97ba add a5,a5,a4 + c001248e: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8593 if (em) { - c00123a2: 0e078863 beqz a5,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8587 + c0012490: 0e078863 beqz a5,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8595 if (em->set_property) { - c00123a6: 7b98 ld a4,48(a5) - c00123a8: cf15 beqz a4,c00123e4 + c0012494: 7b98 ld a4,48(a5) + c0012496: cf15 beqz a4,c00124d2 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c00123aa: 00092703 lw a4,0(s2) + c0012498: 00092703 lw a4,0(s2) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8598 ret = em->set_property(ctx, obj1, prop, - c00123ae: 7802 ld a6,32(sp) - c00123b0: 78a2 ld a7,40(sp) + c001249c: 7802 ld a6,32(sp) + c001249e: 78a2 ld a7,40(sp) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00123b2: 2705 addiw a4,a4,1 - c00123b4: 00e92023 sw a4,0(s2) + c00124a0: 2705 addiw a4,a4,1 + c00124a2: 00e92023 sw a4,0(s2) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8590 - c00123b8: e056 sd s5,0(sp) - c00123ba: 577d li a4,-1 - c00123bc: 0307b303 ld t1,48(a5) - c00123c0: f0ba sd a4,96(sp) - c00123c2: 77e2 ld a5,56(sp) - c00123c4: 7742 ld a4,48(sp) - c00123c6: 85ca mv a1,s2 - c00123c8: 567d li a2,-1 - c00123ca: 86ce mv a3,s3 - c00123cc: 8526 mv a0,s1 - c00123ce: ecca sd s2,88(sp) - c00123d0: 9302 jalr t1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8598 + c00124a6: e056 sd s5,0(sp) + c00124a8: 577d li a4,-1 + c00124aa: 0307b303 ld t1,48(a5) + c00124ae: f0ba sd a4,96(sp) + c00124b0: 77e2 ld a5,56(sp) + c00124b2: 7742 ld a4,48(sp) + c00124b4: 85ca mv a1,s2 + c00124b6: 567d li a2,-1 + c00124b8: 86ce mv a3,s3 + c00124ba: 8526 mv a0,s1 + c00124bc: ecca sd s2,88(sp) + c00124be: 9302 jalr t1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8600 JS_FreeValue(ctx, obj1); - c00123d2: 65e6 ld a1,88(sp) - c00123d4: 7606 ld a2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8590 + c00124c0: 65e6 ld a1,88(sp) + c00124c2: 7606 ld a2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8598 ret = em->set_property(ctx, obj1, prop, - c00123d6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8592 + c00124c4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8600 JS_FreeValue(ctx, obj1); - c00123d8: 8526 mv a0,s1 - c00123da: f5ef50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8732 + c00124c6: 8526 mv a0,s1 + c00124c8: f5ef50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8740 JS_FreeValue(ctx, val); - c00123de: 75c2 ld a1,48(sp) - c00123e0: 7662 ld a2,56(sp) - c00123e2: a0a5 j c001244a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8596 + c00124cc: 75c2 ld a1,48(sp) + c00124ce: 7662 ld a2,56(sp) + c00124d0: a0a5 j c0012538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8604 if (em->get_own_property) { - c00123e4: 6398 ld a4,0(a5) - c00123e6: c755 beqz a4,c0012492 + c00124d2: 6398 ld a4,0(a5) + c00124d4: c755 beqz a4,c0012580 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00123e8: 00092703 lw a4,0(s2) + c00124d6: 00092703 lw a4,0(s2) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8599 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8607 ret = em->get_own_property(ctx, &desc, - c00123ec: 864a mv a2,s2 - c00123ee: 092c addi a1,sp,152 + c00124da: 864a mv a2,s2 + c00124dc: 092c addi a1,sp,152 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00123f0: 2705 addiw a4,a4,1 - c00123f2: 00e92023 sw a4,0(s2) + c00124de: 2705 addiw a4,a4,1 + c00124e0: 00e92023 sw a4,0(s2) JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8599 - c00123f6: 639c ld a5,0(a5) - c00123f8: 577d li a4,-1 - c00123fa: f0ba sd a4,96(sp) - c00123fc: 56fd li a3,-1 - c00123fe: 874e mv a4,s3 - c0012400: 8526 mv a0,s1 - c0012402: ecca sd s2,88(sp) - c0012404: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8601 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8607 + c00124e4: 639c ld a5,0(a5) + c00124e6: 577d li a4,-1 + c00124e8: f0ba sd a4,96(sp) + c00124ea: 56fd li a3,-1 + c00124ec: 874e mv a4,s3 + c00124ee: 8526 mv a0,s1 + c00124f0: ecca sd s2,88(sp) + c00124f2: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8609 JS_FreeValue(ctx, obj1); - c0012406: 65e6 ld a1,88(sp) - c0012408: 7606 ld a2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8599 + c00124f4: 65e6 ld a1,88(sp) + c00124f6: 7606 ld a2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8607 ret = em->get_own_property(ctx, &desc, - c001240a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8601 + c00124f8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8609 JS_FreeValue(ctx, obj1); - c001240c: 8526 mv a0,s1 - c001240e: f2af50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8602 + c00124fa: 8526 mv a0,s1 + c00124fc: f2af50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8610 if (ret < 0) { - c0012412: fc0446e3 bltz s0,c00123de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8606 + c0012500: fc0446e3 bltz s0,c00124cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8614 if (ret) { - c0012416: cc35 beqz s0,c0012492 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8607 + c0012504: cc35 beqz s0,c0012580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8615 if (desc.flags & JS_PROP_GETSET) { - c0012418: 47ea lw a5,152(sp) - c001241a: 8bc1 andi a5,a5,16 - c001241c: cb9d beqz a5,c0012452 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8609 + c0012506: 47ea lw a5,152(sp) + c0012508: 8bc1 andi a5,a5,16 + c001250a: cb9d beqz a5,c0012540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8617 if (JS_IsUndefined(desc.setter)) - c001241e: 472e lw a4,200(sp) - c0012420: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8610 + c001250c: 472e lw a4,200(sp) + c001250e: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8618 setter = NULL; - c0012422: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8609 + c0012510: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8617 if (JS_IsUndefined(desc.setter)) - c0012424: 00f70363 beq a4,a5,c001242a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8612 + c0012512: 00f70363 beq a4,a5,c0012518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8620 setter = JS_VALUE_GET_OBJ(desc.setter); - c0012428: 658e ld a1,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8613 + c0012516: 658e ld a1,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8621 ret = call_setter(ctx, setter, this_obj, val, flags); - c001242a: 7742 ld a4,48(sp) - c001242c: 77e2 ld a5,56(sp) - c001242e: 7602 ld a2,32(sp) - c0012430: 76a2 ld a3,40(sp) - c0012432: 8856 mv a6,s5 - c0012434: 8526 mv a0,s1 - c0012436: 7eb000ef jal ra,c0013420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8614 + c0012518: 7742 ld a4,48(sp) + c001251a: 77e2 ld a5,56(sp) + c001251c: 7602 ld a2,32(sp) + c001251e: 76a2 ld a3,40(sp) + c0012520: 8856 mv a6,s5 + c0012522: 8526 mv a0,s1 + c0012524: 7eb000ef jal ra,c001350e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8622 JS_FreeValue(ctx, desc.getter); - c001243a: 75ca ld a1,176(sp) - c001243c: 766a ld a2,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8613 + c0012528: 75ca ld a1,176(sp) + c001252a: 766a ld a2,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8621 ret = call_setter(ctx, setter, this_obj, val, flags); - c001243e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8614 + c001252c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8622 JS_FreeValue(ctx, desc.getter); - c0012440: 8526 mv a0,s1 - c0012442: ef6f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8615 + c001252e: 8526 mv a0,s1 + c0012530: ef6f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8623 JS_FreeValue(ctx, desc.setter); - c0012446: 658e ld a1,192(sp) - c0012448: 662e ld a2,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8732 + c0012534: 658e ld a1,192(sp) + c0012536: 662e ld a2,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8740 JS_FreeValue(ctx, val); - c001244a: 8526 mv a0,s1 - c001244c: eecf50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8733 + c0012538: 8526 mv a0,s1 + c001253a: eecf50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8741 return ret; - c0012450: b321 j c0012158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8618 + c001253e: b321 j c0012246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8626 JS_FreeValue(ctx, desc.value); - c0012452: 758a ld a1,160(sp) - c0012454: 762a ld a2,168(sp) - c0012456: 8526 mv a0,s1 - c0012458: ee0f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8619 + c0012540: 758a ld a1,160(sp) + c0012542: 762a ld a2,168(sp) + c0012544: 8526 mv a0,s1 + c0012546: ee0f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8627 if (!(desc.flags & JS_PROP_WRITABLE)) - c001245c: 47ea lw a5,152(sp) - c001245e: 8b89 andi a5,a5,2 - c0012460: 0e078763 beqz a5,c001254e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8621 + c001254a: 47ea lw a5,152(sp) + c001254c: 8b89 andi a5,a5,2 + c001254e: 0e078763 beqz a5,c001263c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8629 if (likely(p == p1)) { - c0012464: 032a1d63 bne s4,s2,c001249e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8719 + c0012552: 032a1d63 bne s4,s2,c001258c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8727 JS_UNDEFINED, JS_UNDEFINED, - c0012468: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8718 + c0012556: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8726 ret = JS_DefineProperty(ctx, this_obj, prop, val, - c001246a: 6709 lui a4,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8719 + c0012558: 6709 lui a4,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8727 JS_UNDEFINED, JS_UNDEFINED, - c001246c: e13e sd a5,128(sp) - c001246e: e93e sd a5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8718 + c001255a: e13e sd a5,128(sp) + c001255c: e93e sd a5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8726 ret = JS_DefineProperty(ctx, this_obj, prop, val, - c0012470: e83a sd a4,16(sp) - c0012472: e43e sd a5,8(sp) - c0012474: 7742 ld a4,48(sp) - c0012476: 77e2 ld a5,56(sp) - c0012478: 7582 ld a1,32(sp) - c001247a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8719 + c001255e: e83a sd a4,16(sp) + c0012560: e43e sd a5,8(sp) + c0012562: 7742 ld a4,48(sp) + c0012564: 77e2 ld a5,56(sp) + c0012566: 7582 ld a1,32(sp) + c0012568: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8727 JS_UNDEFINED, JS_UNDEFINED, - c001247c: fc82 sd zero,120(sp) - c001247e: e502 sd zero,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8718 + c001256a: fc82 sd zero,120(sp) + c001256c: e502 sd zero,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8726 ret = JS_DefineProperty(ctx, this_obj, prop, val, - c0012480: e002 sd zero,0(sp) - c0012482: 4801 li a6,0 - c0012484: 488d li a7,3 - c0012486: 86ce mv a3,s3 - c0012488: 8526 mv a0,s1 - c001248a: 458000ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8725 + c001256e: e002 sd zero,0(sp) + c0012570: 4801 li a6,0 + c0012572: 488d li a7,3 + c0012574: 86ce mv a3,s3 + c0012576: 8526 mv a0,s1 + c0012578: 458000ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8733 ret = JS_CreateProperty(ctx, p, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c001248e: 842a mv s0,a0 - c0012490: b7b9 j c00123de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8636 + c001257c: 842a mv s0,a0 + c001257e: b7b9 j c00124cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8644 p1 = p1->shape->proto; - c0012492: 01893783 ld a5,24(s2) - c0012496: 0387b903 ld s2,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8638 + c0012580: 01893783 ld a5,24(s2) + c0012584: 0387b903 ld s2,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8646 if (!p1) - c001249a: 02091363 bnez s2,c00124c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8657 + c0012588: 02091363 bnez s2,c00125ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8665 if (unlikely(flags & JS_PROP_NO_ADD)) { - c001249e: 010ad793 srli a5,s5,0x10 - c00124a2: 8b85 andi a5,a5,1 - c00124a4: c3e1 beqz a5,c0012564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8658 + c001258c: 010ad793 srli a5,s5,0x10 + c0012590: 8b85 andi a5,a5,1 + c0012592: c3e1 beqz a5,c0012652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8666 JS_FreeValue(ctx, val); - c00124a6: 75c2 ld a1,48(sp) - c00124a8: 7662 ld a2,56(sp) - c00124aa: 8526 mv a0,s1 - c00124ac: e8cf50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8659 + c0012594: 75c2 ld a1,48(sp) + c0012596: 7662 ld a2,56(sp) + c0012598: 8526 mv a0,s1 + c001259a: e8cf50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8667 JS_ThrowReferenceErrorNotDefined(ctx, prop); - c00124b0: 85ce mv a1,s3 - c00124b2: 8526 mv a0,s1 - c00124b4: 47e020ef jal ra,c0014932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8660 + c001259e: 85ce mv a1,s3 + c00125a0: 8526 mv a0,s1 + c00125a2: 47e020ef jal ra,c0014a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8668 return -1; - c00124b8: b979 j c0012156 - c00124ba: 892e mv s2,a1 - c00124bc: b99d j c0012132 - c00124be: 892e mv s2,a1 + c00125a6: b979 j c0012244 + c00125a8: 892e mv s2,a1 + c00125aa: b99d j c0012220 + c00125ac: 892e mv s2,a1 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c00124c0: 04000437 lui s0,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c00125ae: 04000437 lui s0,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c00124c4: 5bf1 li s7,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c00125b2: 5bf1 li s7,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c00124c6: 147d addi s0,s0,-1 + c00125b4: 147d addi s0,s0,-1 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8652 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c00124c8: 4c41 li s8,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8646 + c00125b6: 4c41 li s8,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8654 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c00124ca: 03000c93 li s9,48 + c00125b8: 03000c93 li s9,48 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c00124ce: 01893703 ld a4,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c00125bc: 01893703 ld a4,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c00124d2: 531c lw a5,32(a4) + c00125c0: 531c lw a5,32(a4) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00124d4: 04070613 addi a2,a4,64 # 2040 <__clzdi2-0xbfffdfc0> + c00125c2: 04070613 addi a2,a4,64 # 2040 <__clzdi2-0xbfffdfc0> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c00124d8: 00f9f7b3 and a5,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c00125c6: 00f9f7b3 and a5,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c00124dc: 1782 slli a5,a5,0x20 - c00124de: 9381 srli a5,a5,0x20 - c00124e0: 0785 addi a5,a5,1 - c00124e2: 037787b3 mul a5,a5,s7 - c00124e6: 97ba add a5,a5,a4 - c00124e8: 0007e683 lwu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c00125ca: 1782 slli a5,a5,0x20 + c00125cc: 9381 srli a5,a5,0x20 + c00125ce: 0785 addi a5,a5,1 + c00125d0: 037787b3 mul a5,a5,s7 + c00125d4: 97ba add a5,a5,a4 + c00125d6: 0007e683 lwu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c00124ec: cc068de3 beqz a3,c00121c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 + c00125da: cc068de3 beqz a3,c00122b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c00124f0: 00369713 slli a4,a3,0x3 - c00124f4: 1761 addi a4,a4,-8 - c00124f6: 9732 add a4,a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c00125de: 00369713 slli a4,a3,0x3 + c00125e2: 1761 addi a4,a4,-8 + c00125e4: 9732 add a4,a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c00124f8: 434c lw a1,4(a4) - c00124fa: 431c lw a5,0(a4) - c00124fc: 03359763 bne a1,s3,c001252a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c00125e6: 434c lw a1,4(a4) + c00125e8: 431c lw a5,0(a4) + c00125ea: 03359763 bne a1,s3,c0012618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0012500: 02093583 ld a1,32(s2) - c0012504: 0692 slli a3,a3,0x4 - c0012506: 16c1 addi a3,a3,-16 + c00125ee: 02093583 ld a1,32(s2) + c00125f2: 0692 slli a3,a3,0x4 + c00125f4: 16c1 addi a3,a3,-16 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8652 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c0012508: 01a7d79b srliw a5,a5,0x1a + c00125f6: 01a7d79b srliw a5,a5,0x1a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c001250c: 95b6 add a1,a1,a3 + c00125fa: 95b6 add a1,a1,a3 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8652 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c001250e: 0307f693 andi a3,a5,48 - c0012512: 03869163 bne a3,s8,c0012534 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8645 + c00125fc: 0307f693 andi a3,a5,48 + c0012600: 03869163 bne a3,s8,c0012622 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8653 return call_setter(ctx, pr->u.getset.setter, this_obj, val, flags); - c0012516: 7742 ld a4,48(sp) - c0012518: 77e2 ld a5,56(sp) - c001251a: 7602 ld a2,32(sp) - c001251c: 76a2 ld a3,40(sp) - c001251e: 658c ld a1,8(a1) - c0012520: 8856 mv a6,s5 - c0012522: 8526 mv a0,s1 - c0012524: 6fd000ef jal ra,c0013420 - c0012528: b1d5 j c001220c + c0012604: 7742 ld a4,48(sp) + c0012606: 77e2 ld a5,56(sp) + c0012608: 7602 ld a2,32(sp) + c001260a: 76a2 ld a3,40(sp) + c001260c: 658c ld a1,8(a1) + c001260e: 8856 mv a6,s5 + c0012610: 8526 mv a0,s1 + c0012612: 6fd000ef jal ra,c001350e + c0012616: b1d5 j c00122fa find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001252a: 8fe1 and a5,a5,s0 - c001252c: 02079693 slli a3,a5,0x20 - c0012530: 9281 srli a3,a3,0x20 - c0012532: bf6d j c00124ec + c0012618: 8fe1 and a5,a5,s0 + c001261a: 02079693 slli a3,a5,0x20 + c001261e: 9281 srli a3,a3,0x20 + c0012620: bf6d j c00125da JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8646 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8654 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c0012534: 01969a63 bne a3,s9,c0012548 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8648 + c0012622: 01969a63 bne a3,s9,c0012636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8656 if (JS_AutoInitProperty(ctx, p1, prop, pr, prs)) - c0012538: 86ae mv a3,a1 - c001253a: 864e mv a2,s3 - c001253c: 85ca mv a1,s2 - c001253e: 8526 mv a0,s1 - c0012540: 18f020ef jal ra,c0014ece - c0012544: d549 beqz a0,c00124ce - c0012546: b901 j c0012156 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8651 + c0012626: 86ae mv a3,a1 + c0012628: 864e mv a2,s3 + c001262a: 85ca mv a1,s2 + c001262c: 8526 mv a0,s1 + c001262e: 271020ef jal ra,c001509e + c0012632: d549 beqz a0,c00125bc + c0012634: b901 j c0012244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8659 } else if (!(prs->flags & JS_PROP_WRITABLE)) { - c0012548: 8b89 andi a5,a5,2 - c001254a: c6079ee3 bnez a5,c00121c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8714 + c0012636: 8b89 andi a5,a5,2 + c0012638: c6079ee3 bnez a5,c00122b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8722 JS_FreeValue(ctx, val); - c001254e: 75c2 ld a1,48(sp) - c0012550: 7662 ld a2,56(sp) - c0012552: 8526 mv a0,s1 - c0012554: de4f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8715 + c001263c: 75c2 ld a1,48(sp) + c001263e: 7662 ld a2,56(sp) + c0012640: 8526 mv a0,s1 + c0012642: de4f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8723 return JS_ThrowTypeErrorReadOnly(ctx, flags, prop); - c0012558: 864e mv a2,s3 - c001255a: 85d6 mv a1,s5 - c001255c: 8526 mv a0,s1 - c001255e: 7ab000ef jal ra,c0013508 - c0012562: b16d j c001220c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8663 + c0012646: 864e mv a2,s3 + c0012648: 85d6 mv a1,s5 + c001264a: 8526 mv a0,s1 + c001264c: 7ab000ef jal ra,c00135f6 + c0012650: b16d j c00122fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8671 if (unlikely(!p)) { - c0012564: 020a1063 bnez s4,c0012584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8664 + c0012652: 020a1063 bnez s4,c0012672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8672 JS_FreeValue(ctx, val); - c0012568: 7662 ld a2,56(sp) - c001256a: 75c2 ld a1,48(sp) - c001256c: 8526 mv a0,s1 - c001256e: dcaf50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8665 + c0012656: 7662 ld a2,56(sp) + c0012658: 75c2 ld a1,48(sp) + c001265a: 8526 mv a0,s1 + c001265c: dcaf50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8673 return JS_ThrowTypeErrorOrFalse(ctx, flags, "not an object"); - c0012572: 0004c617 auipc a2,0x4c - c0012576: 89660613 addi a2,a2,-1898 # c005de08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8670 + c0012660: 0004c617 auipc a2,0x4c + c0012664: 9d860613 addi a2,a2,-1576 # c005e038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8678 return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); - c001257a: 85d6 mv a1,s5 - c001257c: 8526 mv a0,s1 - c001257e: 34b000ef jal ra,c00130c8 - c0012582: b169 j c001220c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8668 + c0012668: 85d6 mv a1,s5 + c001266a: 8526 mv a0,s1 + c001266c: 34b000ef jal ra,c00131b6 + c0012670: b169 j c00122fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8676 if (unlikely(!p->extensible)) { - c0012584: 005a4783 lbu a5,5(s4) - c0012588: 0017f713 andi a4,a5,1 - c001258c: eb19 bnez a4,c00125a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8669 + c0012672: 005a4783 lbu a5,5(s4) + c0012676: 0017f713 andi a4,a5,1 + c001267a: eb19 bnez a4,c0012690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8677 JS_FreeValue(ctx, val); - c001258e: 7662 ld a2,56(sp) - c0012590: 75c2 ld a1,48(sp) - c0012592: 8526 mv a0,s1 - c0012594: da4f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8670 + c001267c: 7662 ld a2,56(sp) + c001267e: 75c2 ld a1,48(sp) + c0012680: 8526 mv a0,s1 + c0012682: da4f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8678 return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); - c0012598: 0004b617 auipc a2,0x4b - c001259c: 2e860613 addi a2,a2,744 # c005d880 - c00125a0: bfe9 j c001257a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8673 + c0012686: 0004b617 auipc a2,0x4b + c001268a: 42a60613 addi a2,a2,1066 # c005dab0 + c001268e: bfe9 j c0012668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8681 if (likely(p == JS_VALUE_GET_OBJ(obj))) { - c00125a2: 056a1c63 bne s4,s6,c00125fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8674 + c0012690: 056a1c63 bne s4,s6,c00126e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8682 if (p->is_exotic) { - c00125a6: 8b91 andi a5,a5,4 - c00125a8: cf85 beqz a5,c00125e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8675 + c0012694: 8b91 andi a5,a5,4 + c0012696: cf85 beqz a5,c00126ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8683 if (p->class_id == JS_CLASS_ARRAY && p->fast_array && - c00125aa: 000a3703 ld a4,0(s4) - c00125ae: 5785 li a5,-31 - c00125b0: 17ae slli a5,a5,0x2b - c00125b2: 8f7d and a4,a4,a5 - c00125b4: 04100793 li a5,65 - c00125b8: 17ae slli a5,a5,0x2b - c00125ba: 0af71063 bne a4,a5,c001265a - c00125be: 0809de63 bgez s3,c001265a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8678 + c0012698: 000a3703 ld a4,0(s4) + c001269c: 5785 li a5,-31 + c001269e: 17ae slli a5,a5,0x2b + c00126a0: 8f7d and a4,a4,a5 + c00126a2: 04100793 li a5,65 + c00126a6: 17ae slli a5,a5,0x2b + c00126a8: 0af71063 bne a4,a5,c0012748 + c00126ac: 0809de63 bgez s3,c0012748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8686 if (idx == p->u.array.count) { - c00125c2: 040a2703 lw a4,64(s4) + c00126b0: 040a2703 lw a4,64(s4) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c00125c6: 02199793 slli a5,s3,0x21 + c00126b4: 02199793 slli a5,s3,0x21 JS_SetPropertyInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8686 if (idx == p->u.array.count) { - c00125ca: 9385 srli a5,a5,0x21 - c00125cc: 08f71763 bne a4,a5,c001265a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8680 - return add_fast_array_element(ctx, p, val, flags); - c00125d0: 7642 ld a2,48(sp) - c00125d2: 76e2 ld a3,56(sp) - c00125d4: 8756 mv a4,s5 - c00125d6: 85d2 mv a1,s4 - c00125d8: 8526 mv a0,s1 - c00125da: 7a9040ef jal ra,c0017582 - c00125de: b13d j c001220c + c00126b8: 9385 srli a5,a5,0x21 + c00126ba: 08f71763 bne a4,a5,c0012748 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8688 + return add_fast_array_element(ctx, p, val, flags); + c00126be: 7642 ld a2,48(sp) + c00126c0: 76e2 ld a3,56(sp) + c00126c2: 8756 mv a4,s5 + c00126c4: 85d2 mv a1,s4 + c00126c6: 8526 mv a0,s1 + c00126c8: 08a050ef jal ra,c0017752 + c00126cc: b13d j c00122fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8696 pr = add_property(ctx, p, prop, JS_PROP_C_W_E); - c00125e0: 469d li a3,7 - c00125e2: 864e mv a2,s3 - c00125e4: 85d2 mv a1,s4 - c00125e6: 8526 mv a0,s1 - c00125e8: 5df030ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8689 + c00126ce: 469d li a3,7 + c00126d0: 864e mv a2,s3 + c00126d2: 85d2 mv a1,s4 + c00126d4: 8526 mv a0,s1 + c00126d6: 6c1030ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8697 if (unlikely(!pr)) { - c00125ec: d0050fe3 beqz a0,c001230a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8693 + c00126da: d0050fe3 beqz a0,c00123f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8701 pr->u.value = val; - c00125f0: 77c2 ld a5,48(sp) - c00125f2: e11c sd a5,0(a0) - c00125f4: 77e2 ld a5,56(sp) - c00125f6: e51c sd a5,8(a0) - c00125f8: b995 j c001226c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8698 + c00126de: 77c2 ld a5,48(sp) + c00126e0: e11c sd a5,0(a0) + c00126e2: 77e2 ld a5,56(sp) + c00126e4: e51c sd a5,8(a0) + c00126e6: b995 j c001235a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8706 ret = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - c00125fa: 86ce mv a3,s3 - c00125fc: 8652 mv a2,s4 - c00125fe: 092c addi a1,sp,152 - c0012600: 8526 mv a0,s1 - c0012602: 903ff0ef jal ra,c0011f04 - c0012606: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8699 + c00126e8: 86ce mv a3,s3 + c00126ea: 8652 mv a2,s4 + c00126ec: 092c addi a1,sp,152 + c00126ee: 8526 mv a0,s1 + c00126f0: 903ff0ef jal ra,c0011ff2 + c00126f4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8707 if (ret < 0) { - c0012608: dc054be3 bltz a0,c00123de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8703 + c00126f6: dc054be3 bltz a0,c00124cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8711 if (ret) { - c001260c: c539 beqz a0,c001265a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8704 + c00126fa: c539 beqz a0,c0012748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8712 if (desc.flags & JS_PROP_GETSET) { - c001260e: 47ea lw a5,152(sp) - c0012610: 8bc1 andi a5,a5,16 - c0012612: c78d beqz a5,c001263c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8705 + c00126fc: 47ea lw a5,152(sp) + c00126fe: 8bc1 andi a5,a5,16 + c0012700: c78d beqz a5,c001272a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8713 JS_FreeValue(ctx, desc.getter); - c0012614: 75ca ld a1,176(sp) - c0012616: 766a ld a2,184(sp) - c0012618: 8526 mv a0,s1 - c001261a: d1ef50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8706 + c0012702: 75ca ld a1,176(sp) + c0012704: 766a ld a2,184(sp) + c0012706: 8526 mv a0,s1 + c0012708: d1ef50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8714 JS_FreeValue(ctx, desc.setter); - c001261e: 658e ld a1,192(sp) - c0012620: 662e ld a2,200(sp) - c0012622: 8526 mv a0,s1 - c0012624: d14f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8707 + c001270c: 658e ld a1,192(sp) + c001270e: 662e ld a2,200(sp) + c0012710: 8526 mv a0,s1 + c0012712: d14f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8715 JS_FreeValue(ctx, val); - c0012628: 7662 ld a2,56(sp) - c001262a: 75c2 ld a1,48(sp) - c001262c: 8526 mv a0,s1 - c001262e: d0af50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8708 + c0012716: 7662 ld a2,56(sp) + c0012718: 75c2 ld a1,48(sp) + c001271a: 8526 mv a0,s1 + c001271c: d0af50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8716 return JS_ThrowTypeErrorOrFalse(ctx, flags, "setter is forbidden"); - c0012632: 0004b617 auipc a2,0x4b - c0012636: 26e60613 addi a2,a2,622 # c005d8a0 - c001263a: b781 j c001257a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8710 + c0012720: 0004b617 auipc a2,0x4b + c0012724: 3b060613 addi a2,a2,944 # c005dad0 + c0012728: b781 j c0012668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8718 JS_FreeValue(ctx, desc.value); - c001263c: 758a ld a1,160(sp) - c001263e: 762a ld a2,168(sp) - c0012640: 8526 mv a0,s1 - c0012642: cf6f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8711 + c001272a: 758a ld a1,160(sp) + c001272c: 762a ld a2,168(sp) + c001272e: 8526 mv a0,s1 + c0012730: cf6f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8719 if (!(desc.flags & JS_PROP_WRITABLE) || - c0012646: 47ea lw a5,152(sp) - c0012648: 8b89 andi a5,a5,2 - c001264a: f00782e3 beqz a5,c001254e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8711 (discriminator 1) - c001264e: 006a5703 lhu a4,6(s4) - c0012652: 47ad li a5,11 - c0012654: eef70de3 beq a4,a5,c001254e - c0012658: bd01 j c0012468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8725 + c0012734: 47ea lw a5,152(sp) + c0012736: 8b89 andi a5,a5,2 + c0012738: f00782e3 beqz a5,c001263c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8719 (discriminator 1) + c001273c: 006a5703 lhu a4,6(s4) + c0012740: 47ad li a5,11 + c0012742: eef70de3 beq a4,a5,c001263c + c0012746: bd01 j c0012556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8733 ret = JS_CreateProperty(ctx, p, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c001265a: 6709 lui a4,0x2 - c001265c: 70770713 addi a4,a4,1799 # 2707 <__clzdi2-0xbfffd8f9> - c0012660: 00eaeab3 or s5,s5,a4 - c0012664: 76c2 ld a3,48(sp) - c0012666: 7762 ld a4,56(sp) - c0012668: 478d li a5,3 - c001266a: e13e sd a5,128(sp) - c001266c: e93e sd a5,144(sp) - c001266e: e03e sd a5,0(sp) - c0012670: e456 sd s5,8(sp) - c0012672: 4881 li a7,0 - c0012674: 4781 li a5,0 - c0012676: 480d li a6,3 - c0012678: 864e mv a2,s3 - c001267a: 85d2 mv a1,s4 - c001267c: 8526 mv a0,s1 - c001267e: fc82 sd zero,120(sp) - c0012680: e502 sd zero,136(sp) - c0012682: 22f0e0ef jal ra,c00210b0 - c0012686: b521 j c001248e - -00000000c0012688 : + c0012748: 6709 lui a4,0x2 + c001274a: 70770713 addi a4,a4,1799 # 2707 <__clzdi2-0xbfffd8f9> + c001274e: 00eaeab3 or s5,s5,a4 + c0012752: 76c2 ld a3,48(sp) + c0012754: 7762 ld a4,56(sp) + c0012756: 478d li a5,3 + c0012758: e13e sd a5,128(sp) + c001275a: e93e sd a5,144(sp) + c001275c: e03e sd a5,0(sp) + c001275e: e456 sd s5,8(sp) + c0012760: 4881 li a7,0 + c0012762: 4781 li a5,0 + c0012764: 480d li a6,3 + c0012766: 864e mv a2,s3 + c0012768: 85d2 mv a1,s4 + c001276a: 8526 mv a0,s1 + c001276c: fc82 sd zero,120(sp) + c001276e: e502 sd zero,136(sp) + c0012770: 3110e0ef jal ra,c0021280 + c0012774: b521 j c001257c + +00000000c0012776 : JS_SetPropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8741 -{ - c0012688: 7119 addi sp,sp,-128 - c001268a: f0ca sd s2,96(sp) - c001268c: ecce sd s3,88(sp) - c001268e: e8d2 sd s4,80(sp) - c0012690: e83e sd a5,16(sp) - c0012692: fc86 sd ra,120(sp) - c0012694: f8a2 sd s0,112(sp) - c0012696: f4a6 sd s1,104(sp) - c0012698: f82e sd a1,48(sp) - c001269a: fc32 sd a2,56(sp) - c001269c: f036 sd a3,32(sp) - c001269e: f43a sd a4,40(sp) - c00126a0: ec42 sd a6,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8742 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8749 +{ + c0012776: 7119 addi sp,sp,-128 + c0012778: f0ca sd s2,96(sp) + c001277a: ecce sd s3,88(sp) + c001277c: e8d2 sd s4,80(sp) + c001277e: e83e sd a5,16(sp) + c0012780: fc86 sd ra,120(sp) + c0012782: f8a2 sd s0,112(sp) + c0012784: f4a6 sd s1,104(sp) + c0012786: f82e sd a1,48(sp) + c0012788: fc32 sd a2,56(sp) + c001278a: f036 sd a3,32(sp) + c001278c: f43a sd a4,40(sp) + c001278e: ec42 sd a6,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8750 if (likely(JS_VALUE_GET_TAG(this_obj) == JS_TAG_OBJECT && - c00126a2: 0006091b sext.w s2,a2 - c00126a6: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8741 + c0012790: 0006091b sext.w s2,a2 + c0012794: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8749 { - c00126a8: 89aa mv s3,a0 - c00126aa: 8a46 mv s4,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8742 - if (likely(JS_VALUE_GET_TAG(this_obj) == JS_TAG_OBJECT && - c00126ac: 08f91063 bne s2,a5,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8742 (discriminator 1) - c00126b0: 2701 sext.w a4,a4 - c00126b2: ef2d bnez a4,c001272c + c0012796: 89aa mv s3,a0 + c0012798: 8a46 mv s4,a7 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8750 + if (likely(JS_VALUE_GET_TAG(this_obj) == JS_TAG_OBJECT && + c001279a: 08f91063 bne s2,a5,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8750 (discriminator 1) + c001279e: 2701 sext.w a4,a4 + c00127a0: ef2d bnez a4,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8758 p = JS_VALUE_GET_OBJ(this_obj); - c00126b4: 0065d783 lhu a5,6(a1) - c00126b8: 4775 li a4,29 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8751 + c00127a2: 0065d783 lhu a5,6(a1) + c00127a6: 4775 li a4,29 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8759 idx = JS_VALUE_GET_INT(prop); - c00126ba: 5402 lw s0,32(sp) - c00126bc: 37f9 addiw a5,a5,-2 - c00126be: 03079693 slli a3,a5,0x30 - c00126c2: 92c1 srli a3,a3,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8750 + c00127a8: 5402 lw s0,32(sp) + c00127aa: 37f9 addiw a5,a5,-2 + c00127ac: 03079693 slli a3,a5,0x30 + c00127b0: 92c1 srli a3,a3,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8758 p = JS_VALUE_GET_OBJ(this_obj); - c00126c4: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8752 + c00127b2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8760 switch(p->class_id) { - c00126c6: 06d76363 bltu a4,a3,c001272c - c00126ca: 0004b717 auipc a4,0x4b - c00126ce: 1ea70713 addi a4,a4,490 # c005d8b4 - c00126d2: 00269793 slli a5,a3,0x2 - c00126d6: 97ba add a5,a5,a4 - c00126d8: 439c lw a5,0(a5) - c00126da: 97ba add a5,a5,a4 - c00126dc: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8754 + c00127b4: 06d76363 bltu a4,a3,c001281a + c00127b8: 0004b717 auipc a4,0x4b + c00127bc: 32c70713 addi a4,a4,812 # c005dae4 + c00127c0: 00269793 slli a5,a3,0x2 + c00127c4: 97ba add a5,a5,a4 + c00127c6: 439c lw a5,0(a5) + c00127c8: 97ba add a5,a5,a4 + c00127ca: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8762 if (unlikely(idx >= (uint32_t)p->u.array.count)) { - c00126de: 41bc lw a5,64(a1) - c00126e0: 08f46563 bltu s0,a5,c001276a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8759 + c00127cc: 41bc lw a5,64(a1) + c00127ce: 08f46563 bltu s0,a5,c0012858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8767 if (idx != (uint32_t)p->u.array.count || - c00126e4: 04879463 bne a5,s0,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8760 + c00127d2: 04879463 bne a5,s0,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8768 !p->fast_array || !p->extensible) - c00126e8: 6198 ld a4,0(a1) - c00126ea: 47a5 li a5,9 - c00126ec: 17a2 slli a5,a5,0x28 - c00126ee: 8f7d and a4,a4,a5 - c00126f0: 02f71e63 bne a4,a5,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8763 + c00127d6: 6198 ld a4,0(a1) + c00127d8: 47a5 li a5,9 + c00127da: 17a2 slli a5,a5,0x28 + c00127dc: 8f7d and a4,a4,a5 + c00127de: 02f71e63 bne a4,a5,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8771 p1 = p->shape->proto; - c00126f4: 6d9c ld a5,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8766 + c00127e2: 6d9c ld a5,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8774 if (p1->class_id == JS_CLASS_ARRAY) { - c00126f6: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8769 + c00127e4: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8777 } else if (p1->class_id == JS_CLASS_OBJECT) { - c00126f8: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8763 + c00127e6: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8771 p1 = p->shape->proto; - c00126fa: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8764 + c00127e8: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8772 while (p1 != NULL) { - c00126fc: ef99 bnez a5,c001271a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 + c00127ea: ef99 bnez a5,c0012808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8874 } - c00126fe: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8778 + c00127ec: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8786 return add_fast_array_element(ctx, p, val, flags); - c0012700: 6642 ld a2,16(sp) - c0012702: 66e2 ld a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 + c00127ee: 6642 ld a2,16(sp) + c00127f0: 66e2 ld a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8874 } - c0012704: 70e6 ld ra,120(sp) - c0012706: 7906 ld s2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8778 + c00127f2: 70e6 ld ra,120(sp) + c00127f4: 7906 ld s2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8786 return add_fast_array_element(ctx, p, val, flags); - c0012708: 8752 mv a4,s4 - c001270a: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 + c00127f6: 8752 mv a4,s4 + c00127f8: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8874 } - c001270c: 6a46 ld s4,80(sp) - c001270e: 74a6 ld s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8778 + c00127fa: 6a46 ld s4,80(sp) + c00127fc: 74a6 ld s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8786 return add_fast_array_element(ctx, p, val, flags); - c0012710: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 + c00127fe: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8874 } - c0012712: 69e6 ld s3,88(sp) - c0012714: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8778 + c0012800: 69e6 ld s3,88(sp) + c0012802: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8786 return add_fast_array_element(ctx, p, val, flags); - c0012716: 66d0406f j c0017582 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8766 + c0012804: 74f0406f j c0017752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8774 if (p1->class_id == JS_CLASS_ARRAY) { - c001271a: 0067d683 lhu a3,6(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8765 + c0012808: 0067d683 lhu a3,6(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8773 sh1 = p1->shape; - c001271e: 6f98 ld a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8766 + c001280c: 6f98 ld a4,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8774 if (p1->class_id == JS_CLASS_ARRAY) { - c0012720: 02c69b63 bne a3,a2,c0012756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8767 + c001280e: 02c69b63 bne a3,a2,c0012844 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8775 if (unlikely(!p1->fast_array)) - c0012724: 0057c783 lbu a5,5(a5) - c0012728: 8ba1 andi a5,a5,8 - c001272a: eb9d bnez a5,c0012760 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8856 + c0012812: 0057c783 lbu a5,5(a5) + c0012816: 8ba1 andi a5,a5,8 + c0012818: eb9d bnez a5,c001284e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8864 atom = JS_ValueToAtom(ctx, prop); - c001272c: 7582 ld a1,32(sp) - c001272e: 7622 ld a2,40(sp) - c0012730: 854e mv a0,s3 - c0012732: 6eb0e0ef jal ra,c002161c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8857 + c001281a: 7582 ld a1,32(sp) + c001281c: 7622 ld a2,40(sp) + c001281e: 854e mv a0,s3 + c0012820: 7cd0e0ef jal ra,c00217ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8865 JS_FreeValue(ctx, prop); - c0012736: 7582 ld a1,32(sp) - c0012738: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8856 + c0012824: 7582 ld a1,32(sp) + c0012826: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8864 atom = JS_ValueToAtom(ctx, prop); - c001273a: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8857 + c0012828: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8865 JS_FreeValue(ctx, prop); - c001273e: 854e mv a0,s3 - c0012740: bf8f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8858 + c001282c: 854e mv a0,s3 + c001282e: bf8f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 if (unlikely(atom == JS_ATOM_NULL)) { - c0012744: 12041d63 bnez s0,c001287e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8859 + c0012832: 12041d63 bnez s0,c001296c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8867 JS_FreeValue(ctx, val); - c0012748: 65c2 ld a1,16(sp) - c001274a: 6662 ld a2,24(sp) - c001274c: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8860 + c0012836: 65c2 ld a1,16(sp) + c0012838: 6662 ld a2,24(sp) + c001283a: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8868 return -1; - c001274e: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8859 + c001283c: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8867 JS_FreeValue(ctx, val); - c0012750: be8f50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8860 + c001283e: be8f50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8868 return -1; - c0012754: a03d j c0012782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8769 + c0012842: a03d j c0012870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8777 } else if (p1->class_id == JS_CLASS_OBJECT) { - c0012756: fcb69be3 bne a3,a1,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8770 + c0012844: fcb69be3 bne a3,a1,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8778 if (unlikely(sh1->has_small_array_index)) - c001275a: 01974783 lbu a5,25(a4) - c001275e: f7f9 bnez a5,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8775 - p1 = sh1->proto; - c0012760: 7f1c ld a5,56(a4) - c0012762: bf69 j c00126fc + c0012848: 01974783 lbu a5,25(a4) + c001284c: f7f9 bnez a5,c001281a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8783 + p1 = sh1->proto; + c001284e: 7f1c ld a5,56(a4) + c0012850: bf69 j c00127ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8791 if (unlikely(idx >= (uint32_t)p->u.array.count)) - c0012764: 41bc lw a5,64(a1) - c0012766: fcf473e3 bgeu s0,a5,c001272c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8785 + c0012852: 41bc lw a5,64(a1) + c0012854: fcf473e3 bgeu s0,a5,c001281a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8793 set_value(ctx, &p->u.array.u.values[idx], val); - c001276a: 7c8c ld a1,56(s1) - c001276c: 02041793 slli a5,s0,0x20 - c0012770: 6642 ld a2,16(sp) - c0012772: 66e2 ld a3,24(sp) - c0012774: 01c7d413 srli s0,a5,0x1c - c0012778: 95a2 add a1,a1,s0 - c001277a: 854e mv a0,s3 - c001277c: 807f50ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8851 + c0012858: 7c8c ld a1,56(s1) + c001285a: 02041793 slli a5,s0,0x20 + c001285e: 6642 ld a2,16(sp) + c0012860: 66e2 ld a3,24(sp) + c0012862: 01c7d413 srli s0,a5,0x1c + c0012866: 95a2 add a1,a1,s0 + c0012868: 854e mv a0,s3 + c001286a: 807f50ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8859 return TRUE; - c0012780: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8866 -} - c0012782: 70e6 ld ra,120(sp) - c0012784: 7446 ld s0,112(sp) - c0012786: 74a6 ld s1,104(sp) - c0012788: 69e6 ld s3,88(sp) - c001278a: 6a46 ld s4,80(sp) - c001278c: 854a mv a0,s2 - c001278e: 7906 ld s2,96(sp) - c0012790: 6109 addi sp,sp,128 - c0012792: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8788 + c001286e: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8874 +} + c0012870: 70e6 ld ra,120(sp) + c0012872: 7446 ld s0,112(sp) + c0012874: 74a6 ld s1,104(sp) + c0012876: 69e6 ld s3,88(sp) + c0012878: 6a46 ld s4,80(sp) + c001287a: 854a mv a0,s2 + c001287c: 7906 ld s2,96(sp) + c001287e: 6109 addi sp,sp,128 + c0012880: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8796 if (JS_ToUint8ClampFree(ctx, &v, val)) - c0012794: 6642 ld a2,16(sp) - c0012796: 66e2 ld a3,24(sp) - c0012798: 00ac addi a1,sp,72 - c001279a: 5b3090ef jal ra,c001c54c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8798 - if (JS_ToInt32Free(ctx, &v, val)) - c001279e: f175 bnez a0,c0012782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8800 - if (unlikely(idx >= (uint32_t)p->u.array.count)) - c00127a0: 40bc lw a5,64(s1) - c00127a2: fcf47fe3 bgeu s0,a5,c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8802 - p->u.array.u.uint8_ptr[idx] = v; - c00127a6: 7c9c ld a5,56(s1) - c00127a8: 1402 slli s0,s0,0x20 - c00127aa: 9001 srli s0,s0,0x20 - c00127ac: 943e add s0,s0,a5 - c00127ae: 47a6 lw a5,72(sp) - c00127b0: 00f40023 sb a5,0(s0) # 4000000 <__clzdi2-0xbc000000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8803 - break; - c00127b4: b7f1 j c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8798 - if (JS_ToInt32Free(ctx, &v, val)) - c00127b6: 6642 ld a2,16(sp) - c00127b8: 66e2 ld a3,24(sp) - c00127ba: 00ac addi a1,sp,72 - c00127bc: 2b9090ef jal ra,c001c274 - c00127c0: bff9 j c001279e + c0012882: 6642 ld a2,16(sp) + c0012884: 66e2 ld a3,24(sp) + c0012886: 00ac addi a1,sp,72 + c0012888: 695090ef jal ra,c001c71c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8806 if (JS_ToInt32Free(ctx, &v, val)) - c00127c2: 6642 ld a2,16(sp) - c00127c4: 66e2 ld a3,24(sp) - c00127c6: 00ac addi a1,sp,72 - c00127c8: 2ad090ef jal ra,c001c274 - c00127cc: f95d bnez a0,c0012782 + c001288c: f175 bnez a0,c0012870 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8808 if (unlikely(idx >= (uint32_t)p->u.array.count)) - c00127ce: 40bc lw a5,64(s1) - c00127d0: faf478e3 bgeu s0,a5,c0012780 + c001288e: 40bc lw a5,64(s1) + c0012890: fcf47fe3 bgeu s0,a5,c001286e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8810 - p->u.array.u.uint16_ptr[idx] = v; - c00127d4: 7c9c ld a5,56(s1) - c00127d6: 02041713 slli a4,s0,0x20 - c00127da: 01f75413 srli s0,a4,0x1f - c00127de: 943e add s0,s0,a5 - c00127e0: 47a6 lw a5,72(sp) - c00127e2: 00f41023 sh a5,0(s0) + p->u.array.u.uint8_ptr[idx] = v; + c0012894: 7c9c ld a5,56(s1) + c0012896: 1402 slli s0,s0,0x20 + c0012898: 9001 srli s0,s0,0x20 + c001289a: 943e add s0,s0,a5 + c001289c: 47a6 lw a5,72(sp) + c001289e: 00f40023 sb a5,0(s0) # 4000000 <__clzdi2-0xbc000000> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8811 break; - c00127e6: bf69 j c0012780 + c00128a2: b7f1 j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8806 + if (JS_ToInt32Free(ctx, &v, val)) + c00128a4: 6642 ld a2,16(sp) + c00128a6: 66e2 ld a3,24(sp) + c00128a8: 00ac addi a1,sp,72 + c00128aa: 39b090ef jal ra,c001c444 + c00128ae: bff9 j c001288c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8814 if (JS_ToInt32Free(ctx, &v, val)) - c00127e8: 6642 ld a2,16(sp) - c00127ea: 66e2 ld a3,24(sp) - c00127ec: 00ac addi a1,sp,72 - c00127ee: 287090ef jal ra,c001c274 - c00127f2: f941 bnez a0,c0012782 + c00128b0: 6642 ld a2,16(sp) + c00128b2: 66e2 ld a3,24(sp) + c00128b4: 00ac addi a1,sp,72 + c00128b6: 38f090ef jal ra,c001c444 + c00128ba: f95d bnez a0,c0012870 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8816 if (unlikely(idx >= (uint32_t)p->u.array.count)) - c00127f4: 40bc lw a5,64(s1) - c00127f6: f8f475e3 bgeu s0,a5,c0012780 + c00128bc: 40bc lw a5,64(s1) + c00128be: faf478e3 bgeu s0,a5,c001286e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8818 - p->u.array.u.uint32_ptr[idx] = v; - c00127fa: 7c9c ld a5,56(s1) - c00127fc: 02041713 slli a4,s0,0x20 - c0012800: 01e75413 srli s0,a4,0x1e - c0012804: 943e add s0,s0,a5 - c0012806: 47a6 lw a5,72(sp) - c0012808: c01c sw a5,0(s0) + p->u.array.u.uint16_ptr[idx] = v; + c00128c2: 7c9c ld a5,56(s1) + c00128c4: 02041713 slli a4,s0,0x20 + c00128c8: 01f75413 srli s0,a4,0x1f + c00128cc: 943e add s0,s0,a5 + c00128ce: 47a6 lw a5,72(sp) + c00128d0: 00f41023 sh a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8819 break; - c001280a: bf9d j c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8825 - if (JS_ToBigInt64Free(ctx, &v, val)) - c001280c: 6642 ld a2,16(sp) - c001280e: 66e2 ld a3,24(sp) - c0012810: 00ac addi a1,sp,72 - c0012812: 2040d0ef jal ra,c001fa16 - c0012816: f535 bnez a0,c0012782 + c00128d4: bf69 j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8822 + if (JS_ToInt32Free(ctx, &v, val)) + c00128d6: 6642 ld a2,16(sp) + c00128d8: 66e2 ld a3,24(sp) + c00128da: 00ac addi a1,sp,72 + c00128dc: 369090ef jal ra,c001c444 + c00128e0: f941 bnez a0,c0012870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8824 + if (unlikely(idx >= (uint32_t)p->u.array.count)) + c00128e2: 40bc lw a5,64(s1) + c00128e4: f8f475e3 bgeu s0,a5,c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8826 + p->u.array.u.uint32_ptr[idx] = v; + c00128e8: 7c9c ld a5,56(s1) + c00128ea: 02041713 slli a4,s0,0x20 + c00128ee: 01e75413 srli s0,a4,0x1e + c00128f2: 943e add s0,s0,a5 + c00128f4: 47a6 lw a5,72(sp) + c00128f6: c01c sw a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8827 + break; + c00128f8: bf9d j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8833 + if (JS_ToBigInt64Free(ctx, &v, val)) + c00128fa: 6642 ld a2,16(sp) + c00128fc: 66e2 ld a3,24(sp) + c00128fe: 00ac addi a1,sp,72 + c0012900: 2e60d0ef jal ra,c001fbe6 + c0012904: f535 bnez a0,c0012870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8835 if (unlikely(idx >= (uint32_t)p->u.array.count)) - c0012818: 40bc lw a5,64(s1) - c001281a: f6f473e3 bgeu s0,a5,c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8829 + c0012906: 40bc lw a5,64(s1) + c0012908: f6f473e3 bgeu s0,a5,c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8837 p->u.array.u.uint64_ptr[idx] = v; - c001281e: 7c9c ld a5,56(s1) - c0012820: 02041713 slli a4,s0,0x20 - c0012824: 01d75413 srli s0,a4,0x1d - c0012828: 943e add s0,s0,a5 - c001282a: 67a6 ld a5,72(sp) - c001282c: e01c sd a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8831 + c001290c: 7c9c ld a5,56(s1) + c001290e: 02041713 slli a4,s0,0x20 + c0012912: 01d75413 srli s0,a4,0x1d + c0012916: 943e add s0,s0,a5 + c0012918: 67a6 ld a5,72(sp) + c001291a: e01c sd a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8839 break; - c001282e: bf89 j c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8833 + c001291c: bf89 j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8841 if (JS_ToFloat64Free(ctx, &d, val)) - c0012830: 6642 ld a2,16(sp) - c0012832: 66e2 ld a3,24(sp) - c0012834: 00ac addi a1,sp,72 - c0012836: 5b9090ef jal ra,c001c5ee - c001283a: f521 bnez a0,c0012782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8835 + c001291e: 6642 ld a2,16(sp) + c0012920: 66e2 ld a3,24(sp) + c0012922: 00ac addi a1,sp,72 + c0012924: 69b090ef jal ra,c001c7be + c0012928: f521 bnez a0,c0012870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8843 if (unlikely(idx >= (uint32_t)p->u.array.count)) - c001283c: 40bc lw a5,64(s1) - c001283e: f4f471e3 bgeu s0,a5,c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8837 + c001292a: 40bc lw a5,64(s1) + c001292c: f4f471e3 bgeu s0,a5,c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8845 p->u.array.u.float_ptr[idx] = d; - c0012842: 27a6 fld fa5,72(sp) - c0012844: 7c9c ld a5,56(s1) - c0012846: 02041713 slli a4,s0,0x20 - c001284a: 4017f7d3 fcvt.s.d fa5,fa5 - c001284e: 01e75413 srli s0,a4,0x1e - c0012852: 943e add s0,s0,a5 - c0012854: 00f42027 fsw fa5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8838 + c0012930: 27a6 fld fa5,72(sp) + c0012932: 7c9c ld a5,56(s1) + c0012934: 02041713 slli a4,s0,0x20 + c0012938: 4017f7d3 fcvt.s.d fa5,fa5 + c001293c: 01e75413 srli s0,a4,0x1e + c0012940: 943e add s0,s0,a5 + c0012942: 00f42027 fsw fa5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8846 break; - c0012858: b725 j c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8840 + c0012946: b725 j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8848 if (JS_ToFloat64Free(ctx, &d, val)) - c001285a: 6642 ld a2,16(sp) - c001285c: 66e2 ld a3,24(sp) - c001285e: 00ac addi a1,sp,72 - c0012860: 58f090ef jal ra,c001c5ee - c0012864: fd19 bnez a0,c0012782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8842 + c0012948: 6642 ld a2,16(sp) + c001294a: 66e2 ld a3,24(sp) + c001294c: 00ac addi a1,sp,72 + c001294e: 671090ef jal ra,c001c7be + c0012952: fd19 bnez a0,c0012870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8850 if (unlikely(idx >= (uint32_t)p->u.array.count)) { - c0012866: 40bc lw a5,64(s1) - c0012868: f0f47ce3 bgeu s0,a5,c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8846 + c0012954: 40bc lw a5,64(s1) + c0012956: f0f47ce3 bgeu s0,a5,c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8854 p->u.array.u.double_ptr[idx] = d; - c001286c: 7c8c ld a1,56(s1) - c001286e: 27a6 fld fa5,72(sp) - c0012870: 02041793 slli a5,s0,0x20 - c0012874: 01d7d413 srli s0,a5,0x1d - c0012878: 942e add s0,s0,a1 - c001287a: a01c fsd fa5,0(s0) - c001287c: b711 j c0012780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8862 + c001295a: 7c8c ld a1,56(s1) + c001295c: 27a6 fld fa5,72(sp) + c001295e: 02041793 slli a5,s0,0x20 + c0012962: 01d7d413 srli s0,a5,0x1d + c0012966: 942e add s0,s0,a1 + c0012968: a01c fsd fa5,0(s0) + c001296a: b711 j c001286e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8870 ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, this_obj, flags); - c001287e: 7842 ld a6,48(sp) - c0012880: 78e2 ld a7,56(sp) - c0012882: 6742 ld a4,16(sp) - c0012884: 67e2 ld a5,24(sp) - c0012886: 85c2 mv a1,a6 - c0012888: e052 sd s4,0(sp) - c001288a: 86a2 mv a3,s0 - c001288c: 8646 mv a2,a7 - c001288e: 854e mv a0,s3 - c0012890: 84fff0ef jal ra,c00120de - c0012894: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8863 + c001296c: 7842 ld a6,48(sp) + c001296e: 78e2 ld a7,56(sp) + c0012970: 6742 ld a4,16(sp) + c0012972: 67e2 ld a5,24(sp) + c0012974: 85c2 mv a1,a6 + c0012976: e052 sd s4,0(sp) + c0012978: 86a2 mv a3,s0 + c001297a: 8646 mv a2,a7 + c001297c: 854e mv a0,s3 + c001297e: 84fff0ef jal ra,c00121cc + c0012982: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8871 JS_FreeAtom(ctx, atom); - c0012896: 85a2 mv a1,s0 - c0012898: 854e mv a0,s3 - c001289a: c73f40ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8864 + c0012984: 85a2 mv a1,s0 + c0012986: 854e mv a0,s3 + c0012988: c73f40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8872 return ret; - c001289e: b5d5 j c0012782 + c001298c: b5d5 j c0012870 -00000000c00128a0 : +00000000c001298e : JS_SetPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8878 { - c00128a0: 7139 addi sp,sp,-64 - c00128a2: e82e sd a1,16(sp) - c00128a4: ec32 sd a2,24(sp) - c00128a6: e03a sd a4,0(sp) - c00128a8: e43e sd a5,8(sp) + c001298e: 7139 addi sp,sp,-64 + c0012990: e82e sd a1,16(sp) + c0012992: ec32 sd a2,24(sp) + c0012994: e03a sd a4,0(sp) + c0012996: e43e sd a5,8(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c00128aa: 0206c463 bltz a3,c00128d2 - c00128ae: 0006879b sext.w a5,a3 + c0012998: 0206c463 bltz a3,c00129c0 + c001299c: 0006879b sext.w a5,a3 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00128b2: da02 sw zero,52(sp) - c00128b4: d83e sw a5,48(sp) - c00128b6: 7742 ld a4,48(sp) - c00128b8: f03a sd a4,32(sp) - c00128ba: 4701 li a4,0 + c00129a0: da02 sw zero,52(sp) + c00129a2: d83e sw a5,48(sp) + c00129a4: 7742 ld a4,48(sp) + c00129a6: f03a sd a4,32(sp) + c00129a8: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c00128bc: d03e sw a5,32(sp) + c00129aa: d03e sw a5,32(sp) JS_SetPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8871 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8879 return JS_SetPropertyValue(ctx, this_obj, JS_NewUint32(ctx, idx), val, - c00128be: 6822 ld a6,8(sp) - c00128c0: 6782 ld a5,0(sp) - c00128c2: 7682 ld a3,32(sp) - c00128c4: 65c2 ld a1,16(sp) - c00128c6: 6662 ld a2,24(sp) - c00128c8: f43a sd a4,40(sp) - c00128ca: 6891 lui a7,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8873 -} - c00128cc: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8871 + c00129ac: 6822 ld a6,8(sp) + c00129ae: 6782 ld a5,0(sp) + c00129b0: 7682 ld a3,32(sp) + c00129b2: 65c2 ld a1,16(sp) + c00129b4: 6662 ld a2,24(sp) + c00129b6: f43a sd a4,40(sp) + c00129b8: 6891 lui a7,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8881 +} + c00129ba: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8879 return JS_SetPropertyValue(ctx, this_obj, JS_NewUint32(ctx, idx), val, - c00128ce: dbbff06f j c0012688 + c00129bc: dbbff06f j c0012776 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c00128d2: d21687d3 fcvt.d.wu fa5,a3 - c00128d6: 471d li a4,7 - c00128d8: e20787d3 fmv.x.d a5,fa5 + c00129c0: d21687d3 fcvt.d.wu fa5,a3 + c00129c4: 471d li a4,7 + c00129c6: e20787d3 fmv.x.d a5,fa5 JS_SetPropertyUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00128dc: b03e fsd fa5,32(sp) - c00128de: 2781 sext.w a5,a5 - c00128e0: bff1 j c00128bc + c00129ca: b03e fsd fa5,32(sp) + c00129cc: 2781 sext.w a5,a5 + c00129ce: bff1 j c00129aa -00000000c00128e2 : +00000000c00129d0 : JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9121 -{ - c00128e2: 710d addi sp,sp,-352 - c00128e4: eaa2 sd s0,336(sp) - c00128e6: e8ae sd a1,80(sp) - c00128e8: ecb2 sd a2,88(sp) - c00128ea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9129 +{ + c00129d0: 710d addi sp,sp,-352 + c00129d2: eaa2 sd s0,336(sp) + c00129d4: e8ae sd a1,80(sp) + c00129d6: ecb2 sd a2,88(sp) + c00129d8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9130 write(1, "JS_DefineProperty: a\n", 21);//// - c00128ec: 4655 li a2,21 - c00128ee: 0004b597 auipc a1,0x4b - c00128f2: 04258593 addi a1,a1,66 # c005d930 - c00128f6: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9121 -{ - c00128f8: e6a6 sd s1,328(sp) - c00128fa: fe4e sd s3,312(sp) - c00128fc: fdee sd s11,248(sp) - c00128fe: e4be sd a5,72(sp) - c0012900: 17012483 lw s1,368(sp) - c0012904: ee86 sd ra,344(sp) - c0012906: e2ca sd s2,320(sp) - c0012908: fa52 sd s4,304(sp) - c001290a: f656 sd s5,296(sp) - c001290c: f25a sd s6,288(sp) - c001290e: ee5e sd s7,280(sp) - c0012910: ea62 sd s8,272(sp) - c0012912: e666 sd s9,264(sp) - c0012914: e26a sd s10,256(sp) - c0012916: 8db6 mv s11,a3 - c0012918: e0ba sd a4,64(sp) - c001291a: f842 sd a6,48(sp) - c001291c: fc46 sd a7,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9122 + c00129da: 4655 li a2,21 + c00129dc: 0004b597 auipc a1,0x4b + c00129e0: 18458593 addi a1,a1,388 # c005db60 + c00129e4: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9129 +{ + c00129e6: e6a6 sd s1,328(sp) + c00129e8: fe4e sd s3,312(sp) + c00129ea: fdee sd s11,248(sp) + c00129ec: e4be sd a5,72(sp) + c00129ee: 17012483 lw s1,368(sp) + c00129f2: ee86 sd ra,344(sp) + c00129f4: e2ca sd s2,320(sp) + c00129f6: fa52 sd s4,304(sp) + c00129f8: f656 sd s5,296(sp) + c00129fa: f25a sd s6,288(sp) + c00129fc: ee5e sd s7,280(sp) + c00129fe: ea62 sd s8,272(sp) + c0012a00: e666 sd s9,264(sp) + c0012a02: e26a sd s10,256(sp) + c0012a04: 8db6 mv s11,a3 + c0012a06: e0ba sd a4,64(sp) + c0012a08: f842 sd a6,48(sp) + c0012a0a: fc46 sd a7,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9130 write(1, "JS_DefineProperty: a\n", 21);//// - c001291e: 52b440ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9128 + c0012a0c: 60d440ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9136 if (JS_VALUE_GET_TAG(this_obj) != JS_TAG_OBJECT) { - c0012922: 49e6 lw s3,88(sp) - c0012924: 57fd li a5,-1 - c0012926: 02f98663 beq s3,a5,c0012952 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9130 + c0012a10: 49e6 lw s3,88(sp) + c0012a12: 57fd li a5,-1 + c0012a14: 02f98663 beq s3,a5,c0012a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9138 JS_ThrowTypeErrorNotAnObject(ctx); - c001292a: 8522 mv a0,s0 - c001292c: 04c010ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9131 + c0012a18: 8522 mv a0,s0 + c0012a1a: 04c010ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9139 return -1; - c0012930: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9396 -} - c0012932: 60f6 ld ra,344(sp) - c0012934: 6456 ld s0,336(sp) - c0012936: 64b6 ld s1,328(sp) - c0012938: 79f2 ld s3,312(sp) - c001293a: 7a52 ld s4,304(sp) - c001293c: 7ab2 ld s5,296(sp) - c001293e: 7b12 ld s6,288(sp) - c0012940: 6bf2 ld s7,280(sp) - c0012942: 6c52 ld s8,272(sp) - c0012944: 6cb2 ld s9,264(sp) - c0012946: 6d12 ld s10,256(sp) - c0012948: 7dee ld s11,248(sp) - c001294a: 854a mv a0,s2 - c001294c: 6916 ld s2,320(sp) - c001294e: 6135 addi sp,sp,352 - c0012950: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9333 + c0012a1e: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9404 +} + c0012a20: 60f6 ld ra,344(sp) + c0012a22: 6456 ld s0,336(sp) + c0012a24: 64b6 ld s1,328(sp) + c0012a26: 79f2 ld s3,312(sp) + c0012a28: 7a52 ld s4,304(sp) + c0012a2a: 7ab2 ld s5,296(sp) + c0012a2c: 7b12 ld s6,288(sp) + c0012a2e: 6bf2 ld s7,280(sp) + c0012a30: 6c52 ld s8,272(sp) + c0012a32: 6cb2 ld s9,264(sp) + c0012a34: 6d12 ld s10,256(sp) + c0012a36: 7dee ld s11,248(sp) + c0012a38: 854a mv a0,s2 + c0012a3a: 6916 ld s2,320(sp) + c0012a3c: 6135 addi sp,sp,352 + c0012a3e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9341 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c0012952: 6c89 lui s9,0x2 + c0012a40: 6c89 lui s9,0x2 get_prop_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8922 mask = (flags >> JS_PROP_HAS_SHIFT) & JS_PROP_C_W_E; - c0012954: 4084db1b sraiw s6,s1,0x8 - c0012958: 0074ca93 xori s5,s1,7 + c0012a42: 4084db1b sraiw s6,s1,0x8 + c0012a46: 0074ca93 xori s5,s1,7 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9327 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9335 if (__JS_AtomIsTaggedInt(prop)) { - c001295c: 000d879b sext.w a5,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9333 + c0012a4a: 000d879b sext.w a5,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9341 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c0012960: 800c8c93 addi s9,s9,-2048 # 1800 <__clzdi2-0xbfffe800> - c0012964: 016afab3 and s5,s5,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 + c0012a4e: 800c8c93 addi s9,s9,-2048 # 1800 <__clzdi2-0xbfffe800> + c0012a52: 016afab3 and s5,s5,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c0012968: 6d09 lui s10,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9134 + c0012a56: 6d09 lui s10,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9142 p = JS_VALUE_GET_OBJ(this_obj); - c001296a: 6a46 ld s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9333 + c0012a58: 6a46 ld s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9341 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c001296c: 0194fcb3 and s9,s1,s9 - c0012970: 007afa93 andi s5,s5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9327 + c0012a5a: 0194fcb3 and s9,s1,s9 + c0012a5e: 007afa93 andi s5,s5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9335 if (__JS_AtomIsTaggedInt(prop)) { - c0012974: ec3e sd a5,24(sp) + c0012a62: ec3e sd a5,24(sp) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0012976: 021d9c13 slli s8,s11,0x21 + c0012a64: 021d9c13 slli s8,s11,0x21 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c001297a: 01a4f7b3 and a5,s1,s10 - c001297e: 015ceab3 or s5,s9,s5 + c0012a68: 01a4f7b3 and a5,s1,s10 + c0012a6c: 015ceab3 or s5,s9,s5 __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0012982: 021c5c13 srli s8,s8,0x21 + c0012a70: 021c5c13 srli s8,s8,0x21 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c0012986: f03e sd a5,32(sp) + c0012a74: f03e sd a5,32(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0012988: 018a3703 ld a4,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012a76: 018a3703 ld a4,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001298c: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0012a7a: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c001298e: 531c lw a5,32(a4) - c0012990: 00fdf7b3 and a5,s11,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012a7c: 531c lw a5,32(a4) + c0012a7e: 00fdf7b3 and a5,s11,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0012994: 1782 slli a5,a5,0x20 - c0012996: 9381 srli a5,a5,0x20 - c0012998: 0785 addi a5,a5,1 - c001299a: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0012a82: 1782 slli a5,a5,0x20 + c0012a84: 9381 srli a5,a5,0x20 + c0012a86: 0785 addi a5,a5,1 + c0012a88: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001299e: 040006b7 lui a3,0x4000 - c00129a2: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012a8c: 040006b7 lui a3,0x4000 + c0012a90: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c00129a4: 97ba add a5,a5,a4 - c00129a6: 0007e903 lwu s2,0(a5) + c0012a92: 97ba add a5,a5,a4 + c0012a94: 0007e903 lwu s2,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00129aa: 04070713 addi a4,a4,64 + c0012a98: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c00129ae: 00091463 bnez s2,c00129b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 + c0012a9c: 00091463 bnez s2,c0012aa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5319 return NULL; - c00129b2: 4781 li a5,0 - c00129b4: a829 j c00129ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 + c0012aa0: 4781 li a5,0 + c0012aa2: a829 j c0012abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c00129b6: 00391793 slli a5,s2,0x3 - c00129ba: 17e1 addi a5,a5,-8 - c00129bc: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0012aa4: 00391793 slli a5,s2,0x3 + c0012aa8: 17e1 addi a5,a5,-8 + c0012aaa: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c00129be: 43d0 lw a2,4(a5) - c00129c0: 05b61163 bne a2,s11,c0012a02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0012aac: 43d0 lw a2,4(a5) + c0012aae: 05b61163 bne a2,s11,c0012af0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c00129c4: 020a3703 ld a4,32(s4) - c00129c8: 0912 slli s2,s2,0x4 - c00129ca: 1941 addi s2,s2,-16 - c00129cc: 993a add s2,s2,a4 + c0012ab2: 020a3703 ld a4,32(s4) + c0012ab6: 0912 slli s2,s2,0x4 + c0012ab8: 1941 addi s2,s2,-16 + c0012aba: 993a add s2,s2,a4 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9147 prs = find_own_property(&pr, p, prop); - c00129ce: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9141 + c0012abc: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9149 if (prs) { - c00129d0: 44078a63 beqz a5,c0012e24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 + c0012abe: 44078a63 beqz a5,c0012f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c00129d4: 439c lw a5,0(a5) - c00129d6: 01a7d79b srliw a5,a5,0x1a - c00129da: 8ba1 andi a5,a5,8 - c00129dc: cbf1 beqz a5,c0012ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 (discriminator 1) - c00129de: 7782 ld a5,32(sp) - c00129e0: cbe1 beqz a5,c0012ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9145 + c0012ac2: 439c lw a5,0(a5) + c0012ac4: 01a7d79b srliw a5,a5,0x1a + c0012ac8: 8ba1 andi a5,a5,8 + c0012aca: cbf1 beqz a5,c0012b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 (discriminator 1) + c0012acc: 7782 ld a5,32(sp) + c0012ace: cbe1 beqz a5,c0012b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9153 if (JS_ToArrayLengthFree(ctx, &array_length, - c00129e2: 6506 ld a0,64(sp) - c00129e4: 65a6 ld a1,72(sp) - c00129e6: c89f30ef jal ra,c000666e - c00129ea: 862a mv a2,a0 - c00129ec: 86ae mv a3,a1 - c00129ee: f8aa sd a0,112(sp) - c00129f0: fcae sd a1,120(sp) - c00129f2: 4701 li a4,0 - c00129f4: 018c addi a1,sp,192 - c00129f6: 8522 mv a0,s0 - c00129f8: 7f60a0ef jal ra,c001d1ee - c00129fc: c919 beqz a0,c0012a12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9357 (discriminator 1) + c0012ad0: 6506 ld a0,64(sp) + c0012ad2: 65a6 ld a1,72(sp) + c0012ad4: c89f30ef jal ra,c000675c + c0012ad8: 862a mv a2,a0 + c0012ada: 86ae mv a3,a1 + c0012adc: f8aa sd a0,112(sp) + c0012ade: fcae sd a1,120(sp) + c0012ae0: 4701 li a4,0 + c0012ae2: 018c addi a1,sp,192 + c0012ae4: 8522 mv a0,s0 + c0012ae6: 0d90a0ef jal ra,c001d3be + c0012aea: c919 beqz a0,c0012b00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9365 (discriminator 1) return -1; - c00129fe: 894e mv s2,s3 - c0012a00: bf0d j c0012932 + c0012aec: 894e mv s2,s3 + c0012aee: bf0d j c0012a20 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0012a02: 0007a903 lw s2,0(a5) - c0012a06: 00d97933 and s2,s2,a3 - c0012a0a: 1902 slli s2,s2,0x20 - c0012a0c: 02095913 srli s2,s2,0x20 - c0012a10: bf79 j c00129ae + c0012af0: 0007a903 lw s2,0(a5) + c0012af4: 00d97933 and s2,s2,a3 + c0012af8: 1902 slli s2,s2,0x20 + c0012afa: 02095913 srli s2,s2,0x20 + c0012afe: bf79 j c0012a9c JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9158 val = (JSValueConst)JS_NewUint32(ctx, array_length); - c0012a12: 470e lw a4,192(sp) + c0012b00: 470e lw a4,192(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0012a14: 0007079b sext.w a5,a4 - c0012a18: 04074463 bltz a4,c0012a60 + c0012b02: 0007079b sext.w a5,a4 + c0012b06: 04074463 bltz a4,c0012b4e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0012a1c: cb82 sw zero,212(sp) - c0012a1e: c9be sw a5,208(sp) - c0012a20: 674e ld a4,208(sp) - c0012a22: ed82 sd zero,216(sp) - c0012a24: f582 sd zero,232(sp) - c0012a26: f1ba sd a4,224(sp) - c0012a28: 4701 li a4,0 + c0012b0a: cb82 sw zero,212(sp) + c0012b0c: c9be sw a5,208(sp) + c0012b0e: 674e ld a4,208(sp) + c0012b10: ed82 sd zero,216(sp) + c0012b12: f582 sd zero,232(sp) + c0012b14: f1ba sd a4,224(sp) + c0012b16: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0012a2a: e4ba sd a4,72(sp) + c0012b18: e4ba sd a4,72(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0012a2c: 018a3703 ld a4,24(s4) + c0012b1a: 018a3703 ld a4,24(s4) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 - c0012a30: d1be sw a5,224(sp) + c0012b1e: d1be sw a5,224(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0012a32: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0012b20: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0012a34: 531c lw a5,32(a4) + c0012b22: 531c lw a5,32(a4) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 - c0012a36: 378e fld fa5,224(sp) + c0012b24: 378e fld fa5,224(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 - c0012a38: 00fdf7b3 and a5,s11,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 + c0012b26: 00fdf7b3 and a5,s11,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0012a3c: 1782 slli a5,a5,0x20 - c0012a3e: 9381 srli a5,a5,0x20 - c0012a40: 0785 addi a5,a5,1 - c0012a42: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0012b2a: 1782 slli a5,a5,0x20 + c0012b2c: 9381 srli a5,a5,0x20 + c0012b2e: 0785 addi a5,a5,1 + c0012b30: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0012a46: 040006b7 lui a3,0x4000 - c0012a4a: a0be fsd fa5,64(sp) - c0012a4c: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0012b34: 040006b7 lui a3,0x4000 + c0012b38: a0be fsd fa5,64(sp) + c0012b3a: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0012a4e: 97ba add a5,a5,a4 - c0012a50: 0007e903 lwu s2,0(a5) + c0012b3c: 97ba add a5,a5,a4 + c0012b3e: 0007e903 lwu s2,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0012a54: 04070713 addi a4,a4,64 + c0012b42: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0012a58: 00091c63 bnez s2,c0012a70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 + c0012b46: 00091c63 bnez s2,c0012b5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5319 return NULL; - c0012a5c: 4781 li a5,0 - c0012a5e: a02d j c0012a88 + c0012b4a: 4781 li a5,0 + c0012b4c: a02d j c0012b76 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0012a60: d21707d3 fcvt.d.wu fa5,a4 - c0012a64: 471d li a4,7 - c0012a66: e20787d3 fmv.x.d a5,fa5 + c0012b4e: d21707d3 fcvt.d.wu fa5,a4 + c0012b52: 471d li a4,7 + c0012b54: e20787d3 fmv.x.d a5,fa5 JS_DefineProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0012a6a: b1be fsd fa5,224(sp) - c0012a6c: 2781 sext.w a5,a5 - c0012a6e: bf75 j c0012a2a + c0012b58: b1be fsd fa5,224(sp) + c0012b5a: 2781 sext.w a5,a5 + c0012b5c: bf75 j c0012b18 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0012a70: 00391793 slli a5,s2,0x3 - c0012a74: 17e1 addi a5,a5,-8 - c0012a76: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0012b5e: 00391793 slli a5,s2,0x3 + c0012b62: 17e1 addi a5,a5,-8 + c0012b64: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0012a78: 43d0 lw a2,4(a5) - c0012a7a: 03b61363 bne a2,s11,c0012aa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0012b66: 43d0 lw a2,4(a5) + c0012b68: 03b61363 bne a2,s11,c0012b8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0012a7e: 020a3703 ld a4,32(s4) - c0012a82: 0912 slli s2,s2,0x4 - c0012a84: 1941 addi s2,s2,-16 - c0012a86: 993a add s2,s2,a4 + c0012b6c: 020a3703 ld a4,32(s4) + c0012b70: 0912 slli s2,s2,0x4 + c0012b72: 1941 addi s2,s2,-16 + c0012b74: 993a add s2,s2,a4 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9160 prs = find_own_property(&pr, p, prop); - c0012a88: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9153 + c0012b76: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9161 assert(prs != NULL); - c0012a8a: e39d bnez a5,c0012ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9153 (discriminator 1) - c0012a8c: 6589 lui a1,0x2 - c0012a8e: 4601 li a2,0 - c0012a90: 3c158593 addi a1,a1,961 # 23c1 <__clzdi2-0xbfffdc3f> - c0012a94: 0004a517 auipc a0,0x4a - c0012a98: fe450513 addi a0,a0,-28 # c005ca78 - c0012a9c: 77d400ef jal ra,c0053a18 <__assert> + c0012b78: e39d bnez a5,c0012b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9161 (discriminator 1) + c0012b7a: 6589 lui a1,0x2 + c0012b7c: 4601 li a2,0 + c0012b7e: 3c958593 addi a1,a1,969 # 23c9 <__clzdi2-0xbfffdc37> + c0012b82: 0004a517 auipc a0,0x4a + c0012b86: 0c650513 addi a0,a0,198 # c005cc48 + c0012b8a: 05e410ef jal ra,c0053be8 <__assert> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0012aa0: 0007a903 lw s2,0(a5) - c0012aa4: 00d97933 and s2,s2,a3 - c0012aa8: 1902 slli s2,s2,0x20 - c0012aaa: 02095913 srli s2,s2,0x20 - c0012aae: b76d j c0012a58 + c0012b8e: 0007a903 lw s2,0(a5) + c0012b92: 00d97933 and s2,s2,a3 + c0012b96: 1902 slli s2,s2,0x20 + c0012b98: 02095913 srli s2,s2,0x20 + c0012b9c: b76d j c0012b46 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9164 if (!check_define_prop_flags(prs->flags, flags)) { - c0012ab0: 7726 ld a4,104(sp) - c0012ab2: 85a6 mv a1,s1 - c0012ab4: 4308 lw a0,0(a4) - c0012ab6: f43a sd a4,40(sp) - c0012ab8: 01a55b9b srliw s7,a0,0x1a - c0012abc: 855e mv a0,s7 - c0012abe: dcdf20ef jal ra,c000588a - c0012ac2: 7722 ld a4,40(sp) - c0012ac4: e919 bnez a0,c0012ada -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9158 + c0012b9e: 7726 ld a4,104(sp) + c0012ba0: 85a6 mv a1,s1 + c0012ba2: 4308 lw a0,0(a4) + c0012ba4: f43a sd a4,40(sp) + c0012ba6: 01a55b9b srliw s7,a0,0x1a + c0012baa: 855e mv a0,s7 + c0012bac: dcdf20ef jal ra,c0005978 + c0012bb0: 7722 ld a4,40(sp) + c0012bb2: e919 bnez a0,c0012bc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9166 return JS_ThrowTypeErrorOrFalse(ctx, flags, "property is not configurable"); - c0012ac6: 0004b617 auipc a2,0x4b - c0012aca: e8260613 addi a2,a2,-382 # c005d948 - c0012ace: 85a6 mv a1,s1 - c0012ad0: 8522 mv a0,s0 - c0012ad2: 5f6000ef jal ra,c00130c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9395 + c0012bb4: 0004b617 auipc a2,0x4b + c0012bb8: fc460613 addi a2,a2,-60 # c005db78 + c0012bbc: 85a6 mv a1,s1 + c0012bbe: 8522 mv a0,s0 + c0012bc0: 5f6000ef jal ra,c00131b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9403 return JS_CreateProperty(ctx, p, prop, val, getter, setter, flags); - c0012ad6: 892a mv s2,a0 - c0012ad8: bda9 j c0012932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9161 + c0012bc4: 892a mv s2,a0 + c0012bc6: bda9 j c0012a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9169 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_AUTOINIT) { - c0012ada: 030bfd13 andi s10,s7,48 - c0012ade: 03000793 li a5,48 - c0012ae2: 00fd1b63 bne s10,a5,c0012af8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9163 + c0012bc8: 030bfd13 andi s10,s7,48 + c0012bcc: 03000793 li a5,48 + c0012bd0: 00fd1b63 bne s10,a5,c0012be6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9171 if (JS_AutoInitProperty(ctx, p, prop, pr, prs)) - c0012ae6: 86ca mv a3,s2 - c0012ae8: 866e mv a2,s11 - c0012aea: 85d2 mv a1,s4 - c0012aec: 8522 mv a0,s0 - c0012aee: 3e0020ef jal ra,c0014ece -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9335 + c0012bd4: 86ca mv a3,s2 + c0012bd6: 866e mv a2,s11 + c0012bd8: 85d2 mv a1,s4 + c0012bda: 8522 mv a0,s0 + c0012bdc: 4c2020ef jal ra,c001509e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9343 if (convert_fast_array_to_array(ctx, p)) - c0012af2: e8050be3 beqz a0,c0012988 - c0012af6: b721 j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9168 + c0012be0: e8050be3 beqz a0,c0012a76 + c0012be4: b721 j c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9176 if (flags & (JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE | - c0012af8: 6791 lui a5,0x4 - c0012afa: a0078793 addi a5,a5,-1536 # 3a00 <__clzdi2-0xbfffc600> - c0012afe: 8fe5 and a5,a5,s1 - c0012b00: cbe9 beqz a5,c0012bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9170 + c0012be6: 6791 lui a5,0x4 + c0012be8: a0078793 addi a5,a5,-1536 # 3a00 <__clzdi2-0xbfffc600> + c0012bec: 8fe5 and a5,a5,s1 + c0012bee: cbe9 beqz a5,c0012cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9178 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c0012b02: 120c8b63 beqz s9,c0012c38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9173 + c0012bf0: 120c8b63 beqz s9,c0012d26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9181 if (JS_IsFunction(ctx, getter)) { - c0012b06: 75c2 ld a1,48(sp) - c0012b08: 7662 ld a2,56(sp) - c0012b0a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9176 + c0012bf4: 75c2 ld a1,48(sp) + c0012bf6: 7662 ld a2,56(sp) + c0012bf8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9184 new_getter = NULL; - c0012b0c: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9173 + c0012bfa: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9181 if (JS_IsFunction(ctx, getter)) { - c0012b0e: bcff70ef jal ra,c000a6dc - c0012b12: c111 beqz a0,c0012b16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9174 + c0012bfc: bcff70ef jal ra,c000a7ca + c0012c00: c111 beqz a0,c0012c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9182 new_getter = JS_VALUE_GET_OBJ(getter); - c0012b14: 7c42 ld s8,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9178 + c0012c02: 7c42 ld s8,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9186 if (JS_IsFunction(ctx, setter)) { - c0012b16: 7596 ld a1,352(sp) - c0012b18: 7636 ld a2,360(sp) - c0012b1a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9181 + c0012c04: 7596 ld a1,352(sp) + c0012c06: 7636 ld a2,360(sp) + c0012c08: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9189 new_setter = NULL; - c0012b1c: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9178 + c0012c0a: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9186 if (JS_IsFunction(ctx, setter)) { - c0012b1e: bbff70ef jal ra,c000a6dc - c0012b22: c111 beqz a0,c0012b26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9179 + c0012c0c: bbff70ef jal ra,c000a7ca + c0012c10: c111 beqz a0,c0012c14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9187 new_setter = JS_VALUE_GET_OBJ(setter); - c0012b24: 7a96 ld s5,352(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9184 + c0012c12: 7a96 ld s5,352(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9192 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_GETSET) { - c0012b26: 47c1 li a5,16 - c0012b28: 0efd0363 beq s10,a5,c0012c0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9185 + c0012c14: 47c1 li a5,16 + c0012c16: 0efd0363 beq s10,a5,c0012cfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9193 if (js_shape_prepare_update(ctx, p, &prs)) - c0012b2c: 10b0 addi a2,sp,104 - c0012b2e: 85d2 mv a1,s4 - c0012b30: 8522 mv a0,s0 - c0012b32: 310020ef jal ra,c0014e42 - c0012b36: ec0514e3 bnez a0,c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9188 + c0012c1a: 10b0 addi a2,sp,104 + c0012c1c: 85d2 mv a1,s4 + c0012c1e: 8522 mv a0,s0 + c0012c20: 3f2020ef jal ra,c0015012 + c0012c24: ec0514e3 bnez a0,c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9196 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012b3a: 77a6 ld a5,104(sp) - c0012b3c: 02000713 li a4,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9189 + c0012c28: 77a6 ld a5,104(sp) + c0012c2a: 02000713 li a4,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9197 free_var_ref(ctx->rt, pr->u.var_ref); - c0012b40: 00093583 ld a1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9188 + c0012c2e: 00093583 ld a1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9196 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012b44: 439c lw a5,0(a5) - c0012b46: 01a7d79b srliw a5,a5,0x1a - c0012b4a: 0307f793 andi a5,a5,48 - c0012b4e: 0ae79a63 bne a5,a4,c0012c02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9189 + c0012c32: 439c lw a5,0(a5) + c0012c34: 01a7d79b srliw a5,a5,0x1a + c0012c38: 0307f793 andi a5,a5,48 + c0012c3c: 0ae79a63 bne a5,a4,c0012cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9197 free_var_ref(ctx->rt, pr->u.var_ref); - c0012b52: 6c08 ld a0,24(s0) - c0012b54: c5bf50ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9193 + c0012c40: 6c08 ld a0,24(s0) + c0012c42: c5bf50ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9201 prs->flags = (prs->flags & - c0012b58: 76a6 ld a3,104(sp) - c0012b5a: 429c lw a5,0(a3) - c0012b5c: 01a7d71b srliw a4,a5,0x1a - c0012b60: 8b15 andi a4,a4,5 - c0012b62: 01076713 ori a4,a4,16 - c0012b66: 179a slli a5,a5,0x26 - c0012b68: 01a7171b slliw a4,a4,0x1a - c0012b6c: 9399 srli a5,a5,0x26 - c0012b6e: 8fd9 or a5,a5,a4 - c0012b70: c29c sw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9196 + c0012c46: 76a6 ld a3,104(sp) + c0012c48: 429c lw a5,0(a3) + c0012c4a: 01a7d71b srliw a4,a5,0x1a + c0012c4e: 8b15 andi a4,a4,5 + c0012c50: 01076713 ori a4,a4,16 + c0012c54: 179a slli a5,a5,0x26 + c0012c56: 01a7171b slliw a4,a4,0x1a + c0012c5a: 9399 srli a5,a5,0x26 + c0012c5c: 8fd9 or a5,a5,a4 + c0012c5e: c29c sw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9204 pr->u.getset.getter = NULL; - c0012b72: 00093023 sd zero,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9197 + c0012c60: 00093023 sd zero,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9205 pr->u.getset.setter = NULL; - c0012b76: 00093423 sd zero,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9210 + c0012c64: 00093423 sd zero,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9218 if (flags & JS_PROP_HAS_GET) { - c0012b7a: 00b4d793 srli a5,s1,0xb - c0012b7e: 8b85 andi a5,a5,1 - c0012b80: c39d beqz a5,c0012ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9211 + c0012c68: 00b4d793 srli a5,s1,0xb + c0012c6c: 8b85 andi a5,a5,1 + c0012c6e: c39d beqz a5,c0012c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9219 if (pr->u.getset.getter) - c0012b82: 00093583 ld a1,0(s2) - c0012b86: c981 beqz a1,c0012b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9212 + c0012c70: 00093583 ld a1,0(s2) + c0012c74: c981 beqz a1,c0012c84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9220 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.getter)); - c0012b88: 57fd li a5,-1 - c0012b8a: 567d li a2,-1 - c0012b8c: 8522 mv a0,s0 - c0012b8e: f1ae sd a1,224(sp) - c0012b90: f5be sd a5,232(sp) - c0012b92: fa7f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9213 + c0012c76: 57fd li a5,-1 + c0012c78: 567d li a2,-1 + c0012c7a: 8522 mv a0,s0 + c0012c7c: f1ae sd a1,224(sp) + c0012c7e: f5be sd a5,232(sp) + c0012c80: fa7f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9221 if (new_getter) - c0012b96: 000c0663 beqz s8,c0012ba2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9214 + c0012c84: 000c0663 beqz s8,c0012c90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9222 JS_DupValue(ctx, getter); - c0012b9a: 7542 ld a0,48(sp) - c0012b9c: 75e2 ld a1,56(sp) - c0012b9e: ad1f30ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9215 + c0012c88: 7542 ld a0,48(sp) + c0012c8a: 75e2 ld a1,56(sp) + c0012c8c: ad1f30ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9223 pr->u.getset.getter = new_getter; - c0012ba2: 01893023 sd s8,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9217 + c0012c90: 01893023 sd s8,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9225 if (flags & JS_PROP_HAS_SET) { - c0012ba6: 00c4d793 srli a5,s1,0xc - c0012baa: 8b85 andi a5,a5,1 - c0012bac: c39d beqz a5,c0012bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9218 + c0012c94: 00c4d793 srli a5,s1,0xc + c0012c98: 8b85 andi a5,a5,1 + c0012c9a: c39d beqz a5,c0012cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9226 if (pr->u.getset.setter) - c0012bae: 00893583 ld a1,8(s2) - c0012bb2: c981 beqz a1,c0012bc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9219 + c0012c9c: 00893583 ld a1,8(s2) + c0012ca0: c981 beqz a1,c0012cb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9227 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.setter)); - c0012bb4: 57fd li a5,-1 - c0012bb6: 567d li a2,-1 - c0012bb8: 8522 mv a0,s0 - c0012bba: f1ae sd a1,224(sp) - c0012bbc: f5be sd a5,232(sp) - c0012bbe: f7bf40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9220 + c0012ca2: 57fd li a5,-1 + c0012ca4: 567d li a2,-1 + c0012ca6: 8522 mv a0,s0 + c0012ca8: f1ae sd a1,224(sp) + c0012caa: f5be sd a5,232(sp) + c0012cac: f7bf40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9228 if (new_setter) - c0012bc2: 000a8663 beqz s5,c0012bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9221 + c0012cb0: 000a8663 beqz s5,c0012cbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9229 JS_DupValue(ctx, setter); - c0012bc6: 7516 ld a0,352(sp) - c0012bc8: 75b6 ld a1,360(sp) - c0012bca: aa5f30ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9222 + c0012cb4: 7516 ld a0,352(sp) + c0012cb6: 75b6 ld a1,360(sp) + c0012cb8: aa5f30ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9230 pr->u.getset.setter = new_setter; - c0012bce: 01593423 sd s5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9313 + c0012cbc: 01593423 sd s5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9321 if (flags & JS_PROP_HAS_ENUMERABLE) - c0012bd2: 4004f793 andi a5,s1,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9312 + c0012cc0: 4004f793 andi a5,s1,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9320 mask |= JS_PROP_CONFIGURABLE; - c0012bd6: 001b7b13 andi s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9313 + c0012cc4: 001b7b13 andi s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9321 if (flags & JS_PROP_HAS_ENUMERABLE) - c0012bda: c399 beqz a5,c0012be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9314 + c0012cc8: c399 beqz a5,c0012cce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9322 mask |= JS_PROP_ENUMERABLE; - c0012bdc: 004b6b13 ori s6,s6,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9316 + c0012cca: 004b6b13 ori s6,s6,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9324 (prs->flags & ~mask) | (flags & mask))) - c0012be0: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9315 + c0012cce: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9323 if (js_update_property_flags(ctx, p, &prs, - c0012be2: 10b0 addi a2,sp,104 - c0012be4: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9316 + c0012cd0: 10b0 addi a2,sp,104 + c0012cd2: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9324 (prs->flags & ~mask) | (flags & mask))) - c0012be6: 4394 lw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9315 + c0012cd4: 4394 lw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9323 if (js_update_property_flags(ctx, p, &prs, - c0012be8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9316 + c0012cd6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9324 (prs->flags & ~mask) | (flags & mask))) - c0012bea: 01a6d69b srliw a3,a3,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9315 + c0012cd8: 01a6d69b srliw a3,a3,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9323 if (js_update_property_flags(ctx, p, &prs, - c0012bee: 8cb5 xor s1,s1,a3 - c0012bf0: 009b7b33 and s6,s6,s1 - c0012bf4: 00db46b3 xor a3,s6,a3 - c0012bf8: 5f0020ef jal ra,c00151e8 - c0012bfc: 16050663 beqz a0,c0012d68 - c0012c00: bbfd j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9191 - JS_FreeValue(ctx, pr->u.value); - c0012c02: 00893603 ld a2,8(s2) - c0012c06: 8522 mv a0,s0 - c0012c08: f31f40ef jal ra,c0007b38 - c0012c0c: b7b1 j c0012b58 + c0012cdc: 8cb5 xor s1,s1,a3 + c0012cde: 009b7b33 and s6,s6,s1 + c0012ce2: 00db46b3 xor a3,s6,a3 + c0012ce6: 6d2020ef jal ra,c00153b8 + c0012cea: 16050663 beqz a0,c0012e56 + c0012cee: bbfd j c0012aec /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9199 + JS_FreeValue(ctx, pr->u.value); + c0012cf0: 00893603 ld a2,8(s2) + c0012cf4: 8522 mv a0,s0 + c0012cf6: f31f40ef jal ra,c0007c26 + c0012cfa: b7b1 j c0012c46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9207 if (!(prs->flags & JS_PROP_CONFIGURABLE)) { - c0012c0e: 001bfb93 andi s7,s7,1 - c0012c12: f60b94e3 bnez s7,c0012b7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9200 + c0012cfc: 001bfb93 andi s7,s7,1 + c0012d00: f60b94e3 bnez s7,c0012c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9208 if ((flags & JS_PROP_HAS_GET) && - c0012c16: 00b4d793 srli a5,s1,0xb - c0012c1a: 8b85 andi a5,a5,1 - c0012c1c: c789 beqz a5,c0012c26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9200 (discriminator 1) - c0012c1e: 00093783 ld a5,0(s2) - c0012c22: eb8792e3 bne a5,s8,c0012ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9204 + c0012d04: 00b4d793 srli a5,s1,0xb + c0012d08: 8b85 andi a5,a5,1 + c0012d0a: c789 beqz a5,c0012d14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9208 (discriminator 1) + c0012d0c: 00093783 ld a5,0(s2) + c0012d10: eb8792e3 bne a5,s8,c0012bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9212 if ((flags & JS_PROP_HAS_SET) && - c0012c26: 00c4d793 srli a5,s1,0xc - c0012c2a: 8b85 andi a5,a5,1 - c0012c2c: d7b9 beqz a5,c0012b7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9204 (discriminator 1) - c0012c2e: 00893783 ld a5,8(s2) - c0012c32: f55784e3 beq a5,s5,c0012b7a - c0012c36: bd41 j c0012ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9225 + c0012d14: 00c4d793 srli a5,s1,0xc + c0012d18: 8b85 andi a5,a5,1 + c0012d1a: d7b9 beqz a5,c0012c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9212 (discriminator 1) + c0012d1c: 00893783 ld a5,8(s2) + c0012d20: f55784e3 beq a5,s5,c0012c68 + c0012d24: bd41 j c0012bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9233 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_GETSET) { - c0012c38: 47c1 li a5,16 - c0012c3a: 10fd1063 bne s10,a5,c0012d3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9227 + c0012d26: 47c1 li a5,16 + c0012d28: 10fd1063 bne s10,a5,c0012e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9235 if (js_shape_prepare_update(ctx, p, &prs)) - c0012c3e: 10b0 addi a2,sp,104 - c0012c40: 85d2 mv a1,s4 - c0012c42: 8522 mv a0,s0 - c0012c44: 1fe020ef jal ra,c0014e42 - c0012c48: da051be3 bnez a0,c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9229 + c0012d2c: 10b0 addi a2,sp,104 + c0012d2e: 85d2 mv a1,s4 + c0012d30: 8522 mv a0,s0 + c0012d32: 2e0020ef jal ra,c0015012 + c0012d36: da051be3 bnez a0,c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9237 if (pr->u.getset.getter) - c0012c4c: 00093583 ld a1,0(s2) - c0012c50: c981 beqz a1,c0012c60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9230 + c0012d3a: 00093583 ld a1,0(s2) + c0012d3e: c981 beqz a1,c0012d4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9238 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.getter)); - c0012c52: 57fd li a5,-1 - c0012c54: 567d li a2,-1 - c0012c56: 8522 mv a0,s0 - c0012c58: f1ae sd a1,224(sp) - c0012c5a: f5be sd a5,232(sp) - c0012c5c: eddf40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9231 + c0012d40: 57fd li a5,-1 + c0012d42: 567d li a2,-1 + c0012d44: 8522 mv a0,s0 + c0012d46: f1ae sd a1,224(sp) + c0012d48: f5be sd a5,232(sp) + c0012d4a: eddf40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9239 if (pr->u.getset.setter) - c0012c60: 00893583 ld a1,8(s2) - c0012c64: c981 beqz a1,c0012c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9232 + c0012d4e: 00893583 ld a1,8(s2) + c0012d52: c981 beqz a1,c0012d62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9240 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, pr->u.getset.setter)); - c0012c66: 57fd li a5,-1 - c0012c68: 567d li a2,-1 - c0012c6a: 8522 mv a0,s0 - c0012c6c: f1ae sd a1,224(sp) - c0012c6e: f5be sd a5,232(sp) - c0012c70: ec9f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9233 (discriminator 1) + c0012d54: 57fd li a5,-1 + c0012d56: 567d li a2,-1 + c0012d58: 8522 mv a0,s0 + c0012d5a: f1ae sd a1,224(sp) + c0012d5c: f5be sd a5,232(sp) + c0012d5e: ec9f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9241 (discriminator 1) prs->flags &= ~(JS_PROP_TMASK | JS_PROP_WRITABLE); - c0012c74: 76a6 ld a3,104(sp) - c0012c76: 34000737 lui a4,0x34000 - c0012c7a: 429c lw a5,0(a3) - c0012c7c: 8f7d and a4,a4,a5 - c0012c7e: 179a slli a5,a5,0x26 - c0012c80: 9399 srli a5,a5,0x26 - c0012c82: 8fd9 or a5,a5,a4 - c0012c84: c29c sw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9234 (discriminator 1) + c0012d62: 76a6 ld a3,104(sp) + c0012d64: 34000737 lui a4,0x34000 + c0012d68: 429c lw a5,0(a3) + c0012d6a: 8f7d and a4,a4,a5 + c0012d6c: 179a slli a5,a5,0x26 + c0012d6e: 9399 srli a5,a5,0x26 + c0012d70: 8fd9 or a5,a5,a4 + c0012d72: c29c sw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9242 (discriminator 1) pr->u.value = JS_UNDEFINED; - c0012c86: 478d li a5,3 - c0012c88: 00093023 sd zero,0(s2) - c0012c8c: 00f93423 sd a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9247 + c0012d74: 478d li a5,3 + c0012d76: 00093023 sd zero,0(s2) + c0012d7a: 00f93423 sd a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9255 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012c90: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 + c0012d7e: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c0012c92: 6709 lui a4,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9247 + c0012d80: 6709 lui a4,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9255 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012c94: 02000693 li a3,32 - c0012c98: 439c lw a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 + c0012d82: 02000693 li a3,32 + c0012d86: 439c lw a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c0012c9a: 8f65 and a4,a4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9247 + c0012d88: 8f65 and a4,a4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9255 if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012c9c: 01a7d79b srliw a5,a5,0x1a - c0012ca0: 0307f613 andi a2,a5,48 - c0012ca4: 0ed61163 bne a2,a3,c0012d86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9248 + c0012d8a: 01a7d79b srliw a5,a5,0x1a + c0012d8e: 0307f613 andi a2,a5,48 + c0012d92: 0ed61163 bne a2,a3,c0012e74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9256 if (flags & JS_PROP_HAS_VALUE) { - c0012ca8: c70d beqz a4,c0012cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9253 + c0012d96: c70d beqz a4,c0012dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9261 if (!js_same_value(ctx, val, *pr->u.var_ref->pvalue)) - c0012caa: 00093783 ld a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9249 + c0012d98: 00093783 ld a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9257 if (p->class_id == JS_CLASS_MODULE_NS) { - c0012cae: 006a5703 lhu a4,6(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9253 + c0012d9c: 006a5703 lhu a4,6(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9261 if (!js_same_value(ctx, val, *pr->u.var_ref->pvalue)) - c0012cb2: 0187ba83 ld s5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9249 + c0012da0: 0187ba83 ld s5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9257 if (p->class_id == JS_CLASS_MODULE_NS) { - c0012cb6: 47ad li a5,11 - c0012cb8: 0af71a63 bne a4,a5,c0012d6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9253 + c0012da4: 47ad li a5,11 + c0012da6: 0af71a63 bne a4,a5,c0012e5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9261 if (!js_same_value(ctx, val, *pr->u.var_ref->pvalue)) - c0012cbc: 000ab683 ld a3,0(s5) # 4000000 <__clzdi2-0xbc000000> - c0012cc0: 008ab703 ld a4,8(s5) - c0012cc4: 6586 ld a1,64(sp) - c0012cc6: 6626 ld a2,72(sp) - c0012cc8: 8522 mv a0,s0 - c0012cca: ff9f40ef jal ra,c0007cc2 - c0012cce: de050ce3 beqz a0,c0012ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9263 + c0012daa: 000ab683 ld a3,0(s5) # 4000000 <__clzdi2-0xbc000000> + c0012dae: 008ab703 ld a4,8(s5) + c0012db2: 6586 ld a1,64(sp) + c0012db4: 6626 ld a2,72(sp) + c0012db6: 8522 mv a0,s0 + c0012db8: ff9f40ef jal ra,c0007db0 + c0012dbc: de050ce3 beqz a0,c0012bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9271 if ((flags & (JS_PROP_HAS_WRITABLE | JS_PROP_WRITABLE)) == JS_PROP_HAS_WRITABLE) { - c0012cd2: 2024f793 andi a5,s1,514 - c0012cd6: 20000713 li a4,512 - c0012cda: eee79ce3 bne a5,a4,c0012bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9265 + c0012dc0: 2024f793 andi a5,s1,514 + c0012dc4: 20000713 li a4,512 + c0012dc8: eee79ce3 bne a5,a4,c0012cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9273 if (p->class_id == JS_CLASS_MODULE_NS) { - c0012cde: 006a5703 lhu a4,6(s4) - c0012ce2: 47ad li a5,11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9266 + c0012dcc: 006a5703 lhu a4,6(s4) + c0012dd0: 47ad li a5,11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9274 return JS_ThrowTypeErrorOrFalse(ctx, flags, "module namespace properties have writable = false"); - c0012ce4: 0004b617 auipc a2,0x4b - c0012ce8: c8460613 addi a2,a2,-892 # c005d968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9265 + c0012dd2: 0004b617 auipc a2,0x4b + c0012dd6: dc660613 addi a2,a2,-570 # c005db98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9273 if (p->class_id == JS_CLASS_MODULE_NS) { - c0012cec: 1ef70463 beq a4,a5,c0012ed4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9268 + c0012dda: 1ef70463 beq a4,a5,c0012fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9276 if (js_shape_prepare_update(ctx, p, &prs)) - c0012cf0: 10b0 addi a2,sp,104 - c0012cf2: 85d2 mv a1,s4 - c0012cf4: 8522 mv a0,s0 - c0012cf6: 14c020ef jal ra,c0014e42 - c0012cfa: d00512e3 bnez a0,c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9270 + c0012dde: 10b0 addi a2,sp,104 + c0012de0: 85d2 mv a1,s4 + c0012de2: 8522 mv a0,s0 + c0012de4: 22e020ef jal ra,c0015012 + c0012de8: d00512e3 bnez a0,c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9278 val1 = JS_DupValue(ctx, *pr->u.var_ref->pvalue); - c0012cfe: 00093783 ld a5,0(s2) - c0012d02: 6f9c ld a5,24(a5) - c0012d04: 6388 ld a0,0(a5) - c0012d06: 678c ld a1,8(a5) - c0012d08: 967f30ef jal ra,c000666e - c0012d0c: f1aa sd a0,224(sp) - c0012d0e: f5ae sd a1,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9271 + c0012dec: 00093783 ld a5,0(s2) + c0012df0: 6f9c ld a5,24(a5) + c0012df2: 6388 ld a0,0(a5) + c0012df4: 678c ld a1,8(a5) + c0012df6: 967f30ef jal ra,c000675c + c0012dfa: f1aa sd a0,224(sp) + c0012dfc: f5ae sd a1,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9279 free_var_ref(ctx->rt, pr->u.var_ref); - c0012d10: 6c08 ld a0,24(s0) - c0012d12: 00093583 ld a1,0(s2) - c0012d16: a99f50ef jal ra,c00087ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9272 + c0012dfe: 6c08 ld a0,24(s0) + c0012e00: 00093583 ld a1,0(s2) + c0012e04: a99f50ef jal ra,c000889c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9280 pr->u.value = val1; - c0012d1a: 778e ld a5,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9273 + c0012e08: 778e ld a5,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9281 prs->flags &= ~(JS_PROP_TMASK | JS_PROP_WRITABLE); - c0012d1c: 34000737 lui a4,0x34000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9272 + c0012e0a: 34000737 lui a4,0x34000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9280 pr->u.value = val1; - c0012d20: 00f93023 sd a5,0(s2) - c0012d24: 77ae ld a5,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9273 + c0012e0e: 00f93023 sd a5,0(s2) + c0012e12: 77ae ld a5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9281 prs->flags &= ~(JS_PROP_TMASK | JS_PROP_WRITABLE); - c0012d26: 76a6 ld a3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9272 + c0012e14: 76a6 ld a3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9280 pr->u.value = val1; - c0012d28: 00f93423 sd a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9273 + c0012e16: 00f93423 sd a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9281 prs->flags &= ~(JS_PROP_TMASK | JS_PROP_WRITABLE); - c0012d2c: 429c lw a5,0(a3) - c0012d2e: 8f7d and a4,a4,a5 - c0012d30: 179a slli a5,a5,0x26 - c0012d32: 9399 srli a5,a5,0x26 - c0012d34: 8fd9 or a5,a5,a4 - c0012d36: c29c sw a5,0(a3) - c0012d38: bd69 j c0012bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9235 + c0012e1a: 429c lw a5,0(a3) + c0012e1c: 8f7d and a4,a4,a5 + c0012e1e: 179a slli a5,a5,0x26 + c0012e20: 9399 srli a5,a5,0x26 + c0012e22: 8fd9 or a5,a5,a4 + c0012e24: c29c sw a5,0(a3) + c0012e26: bd69 j c0012cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9243 } else if ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) { - c0012d3a: 02000793 li a5,32 - c0012d3e: f4fd09e3 beq s10,a5,c0012c90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9238 + c0012e28: 02000793 li a5,32 + c0012e2c: f4fd09e3 beq s10,a5,c0012d7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9246 if ((prs->flags & (JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0 && - c0012d42: 003bfb93 andi s7,s7,3 - c0012d46: f40b95e3 bnez s7,c0012c90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9143 (discriminator 1) + c0012e30: 003bfb93 andi s7,s7,3 + c0012e34: f40b95e3 bnez s7,c0012d7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9151 (discriminator 1) if ((prs->flags & JS_PROP_LENGTH) && (flags & JS_PROP_HAS_VALUE)) { - c0012d4a: 00d4d793 srli a5,s1,0xd -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9238 (discriminator 1) + c0012e38: 00d4d793 srli a5,s1,0xd +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9246 (discriminator 1) if ((prs->flags & (JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0 && - c0012d4e: 8b85 andi a5,a5,1 - c0012d50: d3a1 beqz a5,c0012c90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9240 + c0012e3c: 8b85 andi a5,a5,1 + c0012e3e: d3a1 beqz a5,c0012d7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9248 if (!js_same_value(ctx, val, pr->u.value)) { - c0012d52: 00093683 ld a3,0(s2) - c0012d56: 00893703 ld a4,8(s2) - c0012d5a: 6586 ld a1,64(sp) - c0012d5c: 6626 ld a2,72(sp) - c0012d5e: 8522 mv a0,s0 - c0012d60: f63f40ef jal ra,c0007cc2 - c0012d64: d60501e3 beqz a0,c0012ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9343 + c0012e40: 00093683 ld a3,0(s2) + c0012e44: 00893703 ld a4,8(s2) + c0012e48: 6586 ld a1,64(sp) + c0012e4a: 6626 ld a2,72(sp) + c0012e4c: 8522 mv a0,s0 + c0012e4e: f63f40ef jal ra,c0007db0 + c0012e52: d60501e3 beqz a0,c0012bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9351 return TRUE; - c0012d68: 4905 li s2,1 - c0012d6a: b6e1 j c0012932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9257 + c0012e56: 4905 li s2,1 + c0012e58: b6e1 j c0012a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9265 set_value(ctx, pr->u.var_ref->pvalue, - c0012d6c: 6506 ld a0,64(sp) - c0012d6e: 65a6 ld a1,72(sp) - c0012d70: 8fff30ef jal ra,c000666e - c0012d74: 862a mv a2,a0 - c0012d76: 86ae mv a3,a1 - c0012d78: e12a sd a0,128(sp) - c0012d7a: e52e sd a1,136(sp) - c0012d7c: 8522 mv a0,s0 - c0012d7e: 85d6 mv a1,s5 - c0012d80: a02f50ef jal ra,c0007f82 - c0012d84: b7b9 j c0012cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9275 + c0012e5a: 6506 ld a0,64(sp) + c0012e5c: 65a6 ld a1,72(sp) + c0012e5e: 8fff30ef jal ra,c000675c + c0012e62: 862a mv a2,a0 + c0012e64: 86ae mv a3,a1 + c0012e66: e12a sd a0,128(sp) + c0012e68: e52e sd a1,136(sp) + c0012e6a: 8522 mv a0,s0 + c0012e6c: 85d6 mv a1,s5 + c0012e6e: a02f50ef jal ra,c0008070 + c0012e72: b7b9 j c0012dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9283 } else if (prs->flags & JS_PROP_LENGTH) { - c0012d86: 8ba1 andi a5,a5,8 - c0012d88: cba9 beqz a5,c0012dda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9282 + c0012e74: 8ba1 andi a5,a5,8 + c0012e76: cba9 beqz a5,c0012ec8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9290 res = TRUE; - c0012d8a: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9276 + c0012e78: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9284 if (flags & JS_PROP_HAS_VALUE) { - c0012d8c: cf19 beqz a4,c0012daa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9279 + c0012e7a: cf19 beqz a4,c0012e98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9287 res = set_array_length(ctx, p, JS_DupValue(ctx, val), - c0012d8e: 6506 ld a0,64(sp) - c0012d90: 65a6 ld a1,72(sp) - c0012d92: 8ddf30ef jal ra,c000666e - c0012d96: 862a mv a2,a0 - c0012d98: 86ae mv a3,a1 - c0012d9a: e92a sd a0,144(sp) - c0012d9c: ed2e sd a1,152(sp) - c0012d9e: 8726 mv a4,s1 - c0012da0: 85d2 mv a1,s4 - c0012da2: 8522 mv a0,s0 - c0012da4: 55a0a0ef jal ra,c001d2fe - c0012da8: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9288 + c0012e7c: 6506 ld a0,64(sp) + c0012e7e: 65a6 ld a1,72(sp) + c0012e80: 8ddf30ef jal ra,c000675c + c0012e84: 862a mv a2,a0 + c0012e86: 86ae mv a3,a1 + c0012e88: e92a sd a0,144(sp) + c0012e8a: ed2e sd a1,152(sp) + c0012e8c: 8726 mv a4,s1 + c0012e8e: 85d2 mv a1,s4 + c0012e90: 8522 mv a0,s0 + c0012e92: 63c0a0ef jal ra,c001d4ce + c0012e96: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9296 if ((flags & (JS_PROP_HAS_WRITABLE | JS_PROP_WRITABLE)) == - c0012daa: 2024f493 andi s1,s1,514 - c0012dae: 20000793 li a5,512 - c0012db2: b8f490e3 bne s1,a5,c0012932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9290 + c0012e98: 2024f493 andi s1,s1,514 + c0012e9c: 20000793 li a5,512 + c0012ea0: b8f490e3 bne s1,a5,c0012a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9298 prs = get_shape_prop(p->shape); - c0012db6: 018a3783 ld a5,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9291 + c0012ea4: 018a3783 ld a5,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9299 if (js_update_property_flags(ctx, p, &prs, - c0012dba: 10b0 addi a2,sp,104 - c0012dbc: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9292 + c0012ea8: 10b0 addi a2,sp,104 + c0012eaa: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9300 prs->flags & ~JS_PROP_WRITABLE)) - c0012dbe: 43b4 lw a3,64(a5) + c0012eac: 43b4 lw a3,64(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0012dc0: 04078713 addi a4,a5,64 + c0012eae: 04078713 addi a4,a5,64 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9291 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9299 if (js_update_property_flags(ctx, p, &prs, - c0012dc4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9292 + c0012eb2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9300 prs->flags & ~JS_PROP_WRITABLE)) - c0012dc6: 01a6d69b srliw a3,a3,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9291 + c0012eb4: 01a6d69b srliw a3,a3,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9299 if (js_update_property_flags(ctx, p, &prs, - c0012dca: 03d6f693 andi a3,a3,61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9290 + c0012eb8: 03d6f693 andi a3,a3,61 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9298 prs = get_shape_prop(p->shape); - c0012dce: f4ba sd a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9291 + c0012ebc: f4ba sd a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9299 if (js_update_property_flags(ctx, p, &prs, - c0012dd0: 418020ef jal ra,c00151e8 - c0012dd4: b4050fe3 beqz a0,c0012932 - c0012dd8: b11d j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9297 + c0012ebe: 4fa020ef jal ra,c00153b8 + c0012ec2: b4050fe3 beqz a0,c0012a20 + c0012ec6: b11d j c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9305 if (flags & JS_PROP_HAS_VALUE) { - c0012dda: c305 beqz a4,c0012dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9298 + c0012ec8: c305 beqz a4,c0012ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9306 JS_FreeValue(ctx, pr->u.value); - c0012ddc: 00093583 ld a1,0(s2) - c0012de0: 00893603 ld a2,8(s2) - c0012de4: 8522 mv a0,s0 - c0012de6: d53f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9299 + c0012eca: 00093583 ld a1,0(s2) + c0012ece: 00893603 ld a2,8(s2) + c0012ed2: 8522 mv a0,s0 + c0012ed4: d53f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9307 pr->u.value = JS_DupValue(ctx, val); - c0012dea: 6506 ld a0,64(sp) - c0012dec: 65a6 ld a1,72(sp) - c0012dee: 881f30ef jal ra,c000666e - c0012df2: 00a93023 sd a0,0(s2) - c0012df6: 00b93423 sd a1,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9301 + c0012ed8: 6506 ld a0,64(sp) + c0012eda: 65a6 ld a1,72(sp) + c0012edc: 881f30ef jal ra,c000675c + c0012ee0: 00a93023 sd a0,0(s2) + c0012ee4: 00b93423 sd a1,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9309 if (flags & JS_PROP_HAS_WRITABLE) { - c0012dfa: 2004f793 andi a5,s1,512 - c0012dfe: dc078ae3 beqz a5,c0012bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9303 + c0012ee8: 2004f793 andi a5,s1,512 + c0012eec: dc078ae3 beqz a5,c0012cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9311 (prs->flags & ~JS_PROP_WRITABLE) | - c0012e02: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9304 + c0012ef0: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9312 (flags & JS_PROP_WRITABLE))) - c0012e04: 0024f693 andi a3,s1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9302 + c0012ef2: 0024f693 andi a3,s1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9310 if (js_update_property_flags(ctx, p, &prs, - c0012e08: 10b0 addi a2,sp,104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9303 + c0012ef6: 10b0 addi a2,sp,104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9311 (prs->flags & ~JS_PROP_WRITABLE) | - c0012e0a: 439c lw a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9302 + c0012ef8: 439c lw a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9310 if (js_update_property_flags(ctx, p, &prs, - c0012e0c: 85d2 mv a1,s4 - c0012e0e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9303 + c0012efa: 85d2 mv a1,s4 + c0012efc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9311 (prs->flags & ~JS_PROP_WRITABLE) | - c0012e10: 01a7d79b srliw a5,a5,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9302 + c0012efe: 01a7d79b srliw a5,a5,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9310 if (js_update_property_flags(ctx, p, &prs, - c0012e14: 03d7f793 andi a5,a5,61 - c0012e18: 8edd or a3,a3,a5 - c0012e1a: 3ce020ef jal ra,c00151e8 - c0012e1e: da050ae3 beqz a0,c0012bd2 - c0012e22: bef1 j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9323 + c0012f02: 03d7f793 andi a5,a5,61 + c0012f06: 8edd or a3,a3,a5 + c0012f08: 4b0020ef jal ra,c00153b8 + c0012f0c: da050ae3 beqz a0,c0012cc0 + c0012f10: bef1 j c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9331 if (p->fast_array) { - c0012e24: 005a4783 lbu a5,5(s4) - c0012e28: 8ba1 andi a5,a5,8 - c0012e2a: 16078863 beqz a5,c0012f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9326 + c0012f12: 005a4783 lbu a5,5(s4) + c0012f16: 8ba1 andi a5,a5,8 + c0012f18: 16078863 beqz a5,c0013088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9334 if (p->class_id == JS_CLASS_ARRAY) { - c0012e2e: 006a5783 lhu a5,6(s4) - c0012e32: 4709 li a4,2 - c0012e34: 04e79363 bne a5,a4,c0012e7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9327 + c0012f1c: 006a5783 lhu a5,6(s4) + c0012f20: 4709 li a4,2 + c0012f22: 04e79363 bne a5,a4,c0012f68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9335 if (__JS_AtomIsTaggedInt(prop)) { - c0012e38: 67e2 ld a5,24(sp) - c0012e3a: 1607d063 bgez a5,c0012f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9329 + c0012f26: 67e2 ld a5,24(sp) + c0012f28: 1607d063 bgez a5,c0013088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9337 if (idx < p->u.array.count) { - c0012e3e: 040a2783 lw a5,64(s4) - c0012e42: 14fc7c63 bgeu s8,a5,c0012f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9333 + c0012f2c: 040a2783 lw a5,64(s4) + c0012f30: 14fc7c63 bgeu s8,a5,c0013088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9341 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c0012e46: 000a8763 beqz s5,c0012e54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9335 + c0012f34: 000a8763 beqz s5,c0012f42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9343 if (convert_fast_array_to_array(ctx, p)) - c0012e4a: 85d2 mv a1,s4 - c0012e4c: 8522 mv a0,s0 - c0012e4e: 182040ef jal ra,c0016fd0 - c0012e52: b145 j c0012af2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9340 + c0012f38: 85d2 mv a1,s4 + c0012f3a: 8522 mv a0,s0 + c0012f3c: 264040ef jal ra,c00171a0 + c0012f40: b145 j c0012be0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9348 if (flags & JS_PROP_HAS_VALUE) { - c0012e54: 80b5 srli s1,s1,0xd - c0012e56: 8885 andi s1,s1,1 - c0012e58: f00488e3 beqz s1,c0012d68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9341 + c0012f42: 80b5 srli s1,s1,0xd + c0012f44: 8885 andi s1,s1,1 + c0012f46: f00488e3 beqz s1,c0012e56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9349 set_value(ctx, &p->u.array.u.values[idx], JS_DupValue(ctx, val)); - c0012e5c: 038a3783 ld a5,56(s4) - c0012e60: 6506 ld a0,64(sp) - c0012e62: 65a6 ld a1,72(sp) - c0012e64: 0c12 slli s8,s8,0x4 - c0012e66: 9c3e add s8,s8,a5 - c0012e68: 807f30ef jal ra,c000666e - c0012e6c: 862a mv a2,a0 - c0012e6e: 86ae mv a3,a1 - c0012e70: 8522 mv a0,s0 - c0012e72: 85e2 mv a1,s8 - c0012e74: 90ef50ef jal ra,c0007f82 - c0012e78: bdc5 j c0012d68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9346 + c0012f4a: 038a3783 ld a5,56(s4) + c0012f4e: 6506 ld a0,64(sp) + c0012f50: 65a6 ld a1,72(sp) + c0012f52: 0c12 slli s8,s8,0x4 + c0012f54: 9c3e add s8,s8,a5 + c0012f56: 807f30ef jal ra,c000675c + c0012f5a: 862a mv a2,a0 + c0012f5c: 86ae mv a3,a1 + c0012f5e: 8522 mv a0,s0 + c0012f60: 85e2 mv a1,s8 + c0012f62: 90ef50ef jal ra,c0008070 + c0012f66: bdc5 j c0012e56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9354 } else if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0012e7a: 37ad addiw a5,a5,-21 - c0012e7c: 17c2 slli a5,a5,0x30 - c0012e7e: 93c1 srli a5,a5,0x30 - c0012e80: 4729 li a4,10 - c0012e82: 10f76c63 bltu a4,a5,c0012f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9351 + c0012f68: 37ad addiw a5,a5,-21 + c0012f6a: 17c2 slli a5,a5,0x30 + c0012f6c: 93c1 srli a5,a5,0x30 + c0012f6e: 4729 li a4,10 + c0012f70: 10f76c63 bltu a4,a5,c0013088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9359 if (!__JS_AtomIsTaggedInt(prop)) { - c0012e86: 0a0dce63 bltz s11,c0012f42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9353 + c0012f74: 0a0dce63 bltz s11,c0013030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9361 num = JS_AtomIsNumericIndex1(ctx, prop); - c0012e8a: 85ee mv a1,s11 - c0012e8c: 8522 mv a0,s0 - c0012e8e: 0120e0ef jal ra,c0020ea0 - c0012e92: e1aa sd a0,192(sp) - c0012e94: e5ae sd a1,200(sp) + c0012f78: 85ee mv a1,s11 + c0012f7a: 8522 mv a0,s0 + c0012f7c: 0f40e0ef jal ra,c0021070 + c0012f80: e1aa sd a0,192(sp) + c0012f82: e5ae sd a1,200(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0012e96: 00058a9b sext.w s5,a1 + c0012f84: 00058a9b sext.w s5,a1 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9362 if (JS_IsUndefined(num)) - c0012e9a: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9353 + c0012f88: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9361 num = JS_AtomIsNumericIndex1(ctx, prop); - c0012e9c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9354 + c0012f8a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9362 if (JS_IsUndefined(num)) - c0012e9e: 0efa8e63 beq s5,a5,c0012f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9356 + c0012f8c: 0efa8e63 beq s5,a5,c0013088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9364 if (JS_IsException(num)) - c0012ea2: 4799 li a5,6 - c0012ea4: b4fa8de3 beq s5,a5,c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9358 + c0012f90: 4799 li a5,6 + c0012f92: b4fa8de3 beq s5,a5,c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9366 ret = JS_NumberIsInteger(ctx, num); - c0012ea8: 85aa mv a1,a0 - c0012eaa: 8522 mv a0,s0 - c0012eac: 00b090ef jal ra,c001c6b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9359 + c0012f96: 85aa mv a1,a0 + c0012f98: 8522 mv a0,s0 + c0012f9a: 0ed090ef jal ra,c001c886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9367 if (ret < 0) { - c0012eb0: 00055863 bgez a0,c0012ec0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9360 + c0012f9e: 00055863 bgez a0,c0012fae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9368 JS_FreeValue(ctx, num); - c0012eb4: 658e ld a1,192(sp) - c0012eb6: 662e ld a2,200(sp) - c0012eb8: 8522 mv a0,s0 - c0012eba: c7ff40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9361 + c0012fa2: 658e ld a1,192(sp) + c0012fa4: 662e ld a2,200(sp) + c0012fa6: 8522 mv a0,s0 + c0012fa8: c7ff40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9369 return -1; - c0012ebe: b681 j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9363 + c0012fac: b681 j c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9371 if (!ret) { - c0012ec0: e105 bnez a0,c0012ee0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9364 + c0012fae: e105 bnez a0,c0012fce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9372 JS_FreeValue(ctx, num); - c0012ec2: 662e ld a2,200(sp) - c0012ec4: 658e ld a1,192(sp) - c0012ec6: 8522 mv a0,s0 - c0012ec8: c71f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9365 + c0012fb0: 662e ld a2,200(sp) + c0012fb2: 658e ld a1,192(sp) + c0012fb4: 8522 mv a0,s0 + c0012fb6: c71f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9373 return JS_ThrowTypeErrorOrFalse(ctx, flags, "non integer index in typed array"); - c0012ecc: 0004b617 auipc a2,0x4b - c0012ed0: ad460613 addi a2,a2,-1324 # c005d9a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9384 + c0012fba: 0004b617 auipc a2,0x4b + c0012fbe: c1660613 addi a2,a2,-1002 # c005dbd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9392 return JS_ThrowTypeErrorOrFalse(ctx, flags, "invalid descriptor flags"); - c0012ed4: 85a6 mv a1,s1 - c0012ed6: 8522 mv a0,s0 - c0012ed8: 1f0000ef jal ra,c00130c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9387 + c0012fc2: 85a6 mv a1,s1 + c0012fc4: 8522 mv a0,s0 + c0012fc6: 1f0000ef jal ra,c00131b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9395 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), JS_DupValue(ctx, val), flags); - c0012edc: 89aa mv s3,a0 - c0012ede: b605 j c00129fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9367 + c0012fca: 89aa mv s3,a0 + c0012fcc: b605 j c0012aec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9375 ret = JS_NumberIsNegativeOrMinusZero(ctx, num); - c0012ee0: 678e ld a5,192(sp) - c0012ee2: f1be sd a5,224(sp) - c0012ee4: 67ae ld a5,200(sp) - c0012ee6: f5be sd a5,232(sp) + c0012fce: 678e ld a5,192(sp) + c0012fd0: f1be sd a5,224(sp) + c0012fd2: 67ae ld a5,200(sp) + c0012fd4: f5be sd a5,232(sp) JS_NumberIsNegativeOrMinusZero(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11252 switch(tag) { - c0012ee8: 479d li a5,7 - c0012eea: 02fa8b63 beq s5,a5,c0012f20 - c0012eee: 57d9 li a5,-10 - c0012ef0: 02fa8c63 beq s5,a5,c0012f28 - c0012ef4: 4901 li s2,0 - c0012ef6: 000a9563 bnez s5,c0012f00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11249 + c0012fd6: 479d li a5,7 + c0012fd8: 02fa8b63 beq s5,a5,c001300e + c0012fdc: 57d9 li a5,-10 + c0012fde: 02fa8c63 beq s5,a5,c0013016 + c0012fe2: 4901 li s2,0 + c0012fe4: 000a9563 bnez s5,c0012fee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11257 return (v < 0); - c0012efa: 590e lw s2,224(sp) - c0012efc: 01f9591b srliw s2,s2,0x1f + c0012fe8: 590e lw s2,224(sp) + c0012fea: 01f9591b srliw s2,s2,0x1f JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9376 JS_FreeValue(ctx, num); - c0012f00: 662e ld a2,200(sp) - c0012f02: 658e ld a1,192(sp) - c0012f04: 8522 mv a0,s0 - c0012f06: c33f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9370 + c0012fee: 662e ld a2,200(sp) + c0012ff0: 658e ld a1,192(sp) + c0012ff2: 8522 mv a0,s0 + c0012ff4: c33f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9378 return JS_ThrowTypeErrorOrFalse(ctx, flags, "negative index in typed array"); - c0012f0a: 0004b617 auipc a2,0x4b - c0012f0e: ae660613 addi a2,a2,-1306 # c005d9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9369 + c0012ff8: 0004b617 auipc a2,0x4b + c0012ffc: c2860613 addi a2,a2,-984 # c005dc20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9377 if (ret) { - c0012f12: fc0911e3 bnez s2,c0012ed4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9379 + c0013000: fc0911e3 bnez s2,c0012fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9387 return JS_ThrowTypeErrorOrFalse(ctx, flags, "out-of-bound index in typed array"); - c0012f16: 0004b617 auipc a2,0x4b - c0012f1a: ab260613 addi a2,a2,-1358 # c005d9c8 - c0012f1e: bf5d j c0012ed4 + c0013004: 0004b617 auipc a2,0x4b + c0013008: bf460613 addi a2,a2,-1036 # c005dbf8 + c001300c: bf5d j c0012fc2 JS_NumberIsNegativeOrMinusZero(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11263 return (u.u64 >> 63); - c0012f20: 790e ld s2,224(sp) - c0012f22: 00092913 slti s2,s2,0 - c0012f26: bfe9 j c0012f00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11259 + c001300e: 790e ld s2,224(sp) + c0013010: 00092913 slti s2,s2,0 + c0013014: bfe9 j c0012fee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11267 JSBigFloat *p = JS_VALUE_GET_PTR(val); - c0012f28: 778e ld a5,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11261 + c0013016: 778e ld a5,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11269 return p->num.sign && !bf_is_zero(&p->num); - c0012f2a: 0107a903 lw s2,16(a5) - c0012f2e: fc0909e3 beqz s2,c0012f00 - c0012f32: 0187b903 ld s2,24(a5) - c0012f36: 57fd li a5,-1 - c0012f38: 17fe slli a5,a5,0x3f - c0012f3a: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11278 + c0013018: 0107a903 lw s2,16(a5) + c001301c: fc0909e3 beqz s2,c0012fee + c0013020: 0187b903 ld s2,24(a5) + c0013024: 57fd li a5,-1 + c0013026: 17fe slli a5,a5,0x3f + c0013028: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11286 return FALSE; - c0012f3c: 01203933 snez s2,s2 - c0012f40: b7c1 j c0012f00 + c001302a: 01203933 snez s2,s2 + c001302e: b7c1 j c0012fee JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9377 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9385 if (idx >= p->u.array.count) { - c0012f42: 040a2783 lw a5,64(s4) + c0013030: 040a2783 lw a5,64(s4) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0012f46: 021d9313 slli t1,s11,0x21 - c0012f4a: 02135313 srli t1,t1,0x21 + c0013034: 021d9313 slli t1,s11,0x21 + c0013038: 02135313 srli t1,t1,0x21 JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9377 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9385 if (idx >= p->u.array.count) { - c0012f4e: fcf374e3 bgeu t1,a5,c0012f16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9382 + c001303c: fcf374e3 bgeu t1,a5,c0013004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9390 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET) || - c0012f52: 000a8763 beqz s5,c0012f60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9384 + c0013040: 000a8763 beqz s5,c001304e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9392 return JS_ThrowTypeErrorOrFalse(ctx, flags, "invalid descriptor flags"); - c0012f56: 0004b617 auipc a2,0x4b - c0012f5a: aba60613 addi a2,a2,-1350 # c005da10 - c0012f5e: bf9d j c0012ed4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9386 + c0013044: 0004b617 auipc a2,0x4b + c0013048: bfc60613 addi a2,a2,-1028 # c005dc40 + c001304c: bf9d j c0012fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9394 if (flags & JS_PROP_HAS_VALUE) { - c0012f60: 00d4d793 srli a5,s1,0xd - c0012f64: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9389 + c001304e: 00d4d793 srli a5,s1,0xd + c0013052: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9397 return TRUE; - c0012f66: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9386 + c0013054: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9394 if (flags & JS_PROP_HAS_VALUE) { - c0012f68: a8078be3 beqz a5,c00129fe + c0013056: a8078be3 beqz a5,c0012aec JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0012f6c: f182 sd zero,224(sp) - c0012f6e: d19a sw t1,224(sp) - c0012f70: 778e ld a5,224(sp) + c001305a: f182 sd zero,224(sp) + c001305c: d19a sw t1,224(sp) + c001305e: 778e ld a5,224(sp) JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9395 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), JS_DupValue(ctx, val), flags); - c0012f72: 6506 ld a0,64(sp) - c0012f74: 65a6 ld a1,72(sp) - c0012f76: f93e sd a5,176(sp) + c0013060: 6506 ld a0,64(sp) + c0013062: 65a6 ld a1,72(sp) + c0013064: f93e sd a5,176(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0012f78: f582 sd zero,232(sp) - c0012f7a: fd02 sd zero,184(sp) + c0013066: f582 sd zero,232(sp) + c0013068: fd02 sd zero,184(sp) JS_DefineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9387 - c0012f7c: ef2f30ef jal ra,c000666e - c0012f80: 882e mv a6,a1 - c0012f82: e5ae sd a1,200(sp) - c0012f84: 76ca ld a3,176(sp) - c0012f86: 776a ld a4,184(sp) - c0012f88: 65c6 ld a1,80(sp) - c0012f8a: 6666 ld a2,88(sp) - c0012f8c: 87aa mv a5,a0 - c0012f8e: e1aa sd a0,192(sp) - c0012f90: 88a6 mv a7,s1 - c0012f92: 8522 mv a0,s0 - c0012f94: ef4ff0ef jal ra,c0012688 - c0012f98: b791 j c0012edc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9395 + c001306a: ef2f30ef jal ra,c000675c + c001306e: 882e mv a6,a1 + c0013070: e5ae sd a1,200(sp) + c0013072: 76ca ld a3,176(sp) + c0013074: 776a ld a4,184(sp) + c0013076: 65c6 ld a1,80(sp) + c0013078: 6666 ld a2,88(sp) + c001307a: 87aa mv a5,a0 + c001307c: e1aa sd a0,192(sp) + c001307e: 88a6 mv a7,s1 + c0013080: 8522 mv a0,s0 + c0013082: ef4ff0ef jal ra,c0012776 + c0013086: b791 j c0012fca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9403 return JS_CreateProperty(ctx, p, prop, val, getter, setter, flags); - c0012f9a: 77b6 ld a5,360(sp) - c0012f9c: 7896 ld a7,352(sp) - c0012f9e: 7862 ld a6,56(sp) - c0012fa0: e03e sd a5,0(sp) - c0012fa2: 6686 ld a3,64(sp) - c0012fa4: 77c2 ld a5,48(sp) - c0012fa6: 6726 ld a4,72(sp) - c0012fa8: e426 sd s1,8(sp) - c0012faa: 866e mv a2,s11 - c0012fac: 85d2 mv a1,s4 - c0012fae: 8522 mv a0,s0 - c0012fb0: 1000e0ef jal ra,c00210b0 - c0012fb4: b60d j c0012ad6 - -00000000c0012fb6 : + c0013088: 77b6 ld a5,360(sp) + c001308a: 7896 ld a7,352(sp) + c001308c: 7862 ld a6,56(sp) + c001308e: e03e sd a5,0(sp) + c0013090: 6686 ld a3,64(sp) + c0013092: 77c2 ld a5,48(sp) + c0013094: 6726 ld a4,72(sp) + c0013096: e426 sd s1,8(sp) + c0013098: 866e mv a2,s11 + c001309a: 85d2 mv a1,s4 + c001309c: 8522 mv a0,s0 + c001309e: 1e20e0ef jal ra,c0021280 + c00130a2: b60d j c0012bc4 + +00000000c00130a4 : JS_DefinePropertyValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 ret = JS_DefineProperty(ctx, this_obj, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c0012fb6: 6889 lui a7,0x2 - c0012fb8: 70088893 addi a7,a7,1792 # 2700 <__clzdi2-0xbfffd900> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9431 + c00130a4: 6889 lui a7,0x2 + c00130a6: 70088893 addi a7,a7,1792 # 2700 <__clzdi2-0xbfffd900> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9439 { - c0012fbc: 7119 addi sp,sp,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 + c00130aa: 7119 addi sp,sp,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 ret = JS_DefineProperty(ctx, this_obj, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c0012fbe: 01186833 or a6,a6,a7 - c0012fc2: e842 sd a6,16(sp) - c0012fc4: 480d li a6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9431 -{ - c0012fc6: fc86 sd ra,120(sp) - c0012fc8: f8a2 sd s0,112(sp) - c0012fca: f4a6 sd s1,104(sp) - c0012fcc: f03a sd a4,32(sp) - c0012fce: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 + c00130ac: 01186833 or a6,a6,a7 + c00130b0: e842 sd a6,16(sp) + c00130b2: 480d li a6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9439 +{ + c00130b4: fc86 sd ra,120(sp) + c00130b6: f8a2 sd s0,112(sp) + c00130b8: f4a6 sd s1,104(sp) + c00130ba: f03a sd a4,32(sp) + c00130bc: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 ret = JS_DefineProperty(ctx, this_obj, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c0012fd0: e442 sd a6,8(sp) - c0012fd2: e002 sd zero,0(sp) - c0012fd4: 4801 li a6,0 - c0012fd6: 488d li a7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9431 -{ - c0012fd8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 + c00130be: e442 sd a6,8(sp) + c00130c0: e002 sd zero,0(sp) + c00130c2: 4801 li a6,0 + c00130c4: 488d li a7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9439 +{ + c00130c6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 ret = JS_DefineProperty(ctx, this_obj, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c0012fda: 909ff0ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9435 + c00130c8: 909ff0ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9443 JS_FreeValue(ctx, val); - c0012fde: 7582 ld a1,32(sp) - c0012fe0: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 + c00130cc: 7582 ld a1,32(sp) + c00130ce: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 ret = JS_DefineProperty(ctx, this_obj, prop, val, JS_UNDEFINED, JS_UNDEFINED, - c0012fe2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9435 + c00130d0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9443 JS_FreeValue(ctx, val); - c0012fe4: 8526 mv a0,s1 - c0012fe6: b53f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9437 -} - c0012fea: 70e6 ld ra,120(sp) - c0012fec: 8522 mv a0,s0 - c0012fee: 7446 ld s0,112(sp) - c0012ff0: 74a6 ld s1,104(sp) - c0012ff2: 6109 addi sp,sp,128 - c0012ff4: 8082 ret - -00000000c0012ff6 : + c00130d2: 8526 mv a0,s1 + c00130d4: b53f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9445 +} + c00130d8: 70e6 ld ra,120(sp) + c00130da: 8522 mv a0,s0 + c00130dc: 7446 ld s0,112(sp) + c00130de: 74a6 ld s1,104(sp) + c00130e0: 6109 addi sp,sp,128 + c00130e2: 8082 ret + +00000000c00130e4 : JS_ThrowError2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6686 -{ - c0012ff6: 710d addi sp,sp,-352 - c0012ff8: eaa2 sd s0,336(sp) - c0012ffa: e6a6 sd s1,328(sp) - c0012ffc: 842e mv s0,a1 - c0012ffe: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6694 +{ + c00130e4: 710d addi sp,sp,-352 + c00130e6: eaa2 sd s0,336(sp) + c00130e8: e6a6 sd s1,328(sp) + c00130ea: 842e mv s0,a1 + c00130ec: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6698 vsnprintf(buf, sizeof(buf), fmt, ap); - c0013000: 10000593 li a1,256 - c0013004: 0088 addi a0,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6686 -{ - c0013006: ee86 sd ra,344(sp) - c0013008: e2ca sd s2,320(sp) - c001300a: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6690 + c00130ee: 10000593 li a1,256 + c00130f2: 0088 addi a0,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6694 +{ + c00130f4: ee86 sd ra,344(sp) + c00130f6: e2ca sd s2,320(sp) + c00130f8: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6698 vsnprintf(buf, sizeof(buf), fmt, ap); - c001300c: 234410ef jal ra,c0054240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6691 + c00130fa: 316410ef jal ra,c0054410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6699 obj = JS_NewObjectProtoClass(ctx, ctx->native_error_proto[error_num], - c0013010: 02041713 slli a4,s0,0x20 - c0013014: 01c75793 srli a5,a4,0x1c - c0013018: 09078793 addi a5,a5,144 - c001301c: 97a6 add a5,a5,s1 - c001301e: 678c ld a1,8(a5) - c0013020: 6b90 ld a2,16(a5) - c0013022: 468d li a3,3 - c0013024: 8526 mv a0,s1 - c0013026: 762030ef jal ra,c0016788 - c001302a: e02a sd a0,0(sp) - c001302c: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6693 + c00130fe: 02041713 slli a4,s0,0x20 + c0013102: 01c75793 srli a5,a4,0x1c + c0013106: 09078793 addi a5,a5,144 + c001310a: 97a6 add a5,a5,s1 + c001310c: 678c ld a1,8(a5) + c001310e: 6b90 ld a2,16(a5) + c0013110: 468d li a3,3 + c0013112: 8526 mv a0,s1 + c0013114: 045030ef jal ra,c0016958 + c0013118: e02a sd a0,0(sp) + c001311a: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6701 if (unlikely(JS_IsException(obj))) { - c001302e: 0005871b sext.w a4,a1 - c0013032: 4799 li a5,6 - c0013034: 02f71963 bne a4,a5,c0013066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6695 + c001311c: 0005871b sext.w a4,a1 + c0013120: 4799 li a5,6 + c0013122: 02f71963 bne a4,a5,c0013154 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6703 obj = JS_NULL; - c0013038: e002 sd zero,0(sp) - c001303a: 4409 li s0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6701 + c0013126: e002 sd zero,0(sp) + c0013128: 4409 li s0,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6709 if (add_backtrace) { - c001303c: 00090a63 beqz s2,c0013050 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6702 + c001312a: 00090a63 beqz s2,c001313e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6710 build_backtrace(ctx, obj, NULL, 0, 0); - c0013040: 6582 ld a1,0(sp) - c0013042: 4781 li a5,0 - c0013044: 4701 li a4,0 - c0013046: 4681 li a3,0 - c0013048: 8622 mv a2,s0 - c001304a: 8526 mv a0,s1 - c001304c: 2020c0ef jal ra,c001f24e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6704 + c001312e: 6582 ld a1,0(sp) + c0013130: 4781 li a5,0 + c0013132: 4701 li a4,0 + c0013134: 4681 li a3,0 + c0013136: 8622 mv a2,s0 + c0013138: 8526 mv a0,s1 + c001313a: 2e40c0ef jal ra,c001f41e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6712 ret = JS_Throw(ctx, obj); - c0013050: 6582 ld a1,0(sp) - c0013052: 8622 mv a2,s0 - c0013054: 8526 mv a0,s1 - c0013056: e26f70ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6706 -} - c001305a: 60f6 ld ra,344(sp) - c001305c: 6456 ld s0,336(sp) - c001305e: 64b6 ld s1,328(sp) - c0013060: 6916 ld s2,320(sp) - c0013062: 6135 addi sp,sp,352 - c0013064: 8082 ret - c0013066: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6697 + c001313e: 6582 ld a1,0(sp) + c0013140: 8622 mv a2,s0 + c0013142: 8526 mv a0,s1 + c0013144: e26f70ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6714 +} + c0013148: 60f6 ld ra,344(sp) + c001314a: 6456 ld s0,336(sp) + c001314c: 64b6 ld s1,328(sp) + c001314e: 6916 ld s2,320(sp) + c0013150: 6135 addi sp,sp,352 + c0013152: 8082 ret + c0013154: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6705 JS_DefinePropertyValue(ctx, obj, JS_ATOM_message, - c0013068: 8526 mv a0,s1 - c001306a: 008c addi a1,sp,64 - c001306c: 1b7060ef jal ra,c0019a22 - c0013070: 87ae mv a5,a1 - c0013072: 6622 ld a2,8(sp) - c0013074: 6582 ld a1,0(sp) - c0013076: 872a mv a4,a0 - c0013078: 480d li a6,3 - c001307a: 03300693 li a3,51 - c001307e: 8526 mv a0,s1 - c0013080: f37ff0ef jal ra,c0012fb6 - c0013084: bf65 j c001303c - -00000000c0013086 : + c0013156: 8526 mv a0,s1 + c0013158: 008c addi a1,sp,64 + c001315a: 299060ef jal ra,c0019bf2 + c001315e: 87ae mv a5,a1 + c0013160: 6622 ld a2,8(sp) + c0013162: 6582 ld a1,0(sp) + c0013164: 872a mv a4,a0 + c0013166: 480d li a6,3 + c0013168: 03300693 li a3,51 + c001316c: 8526 mv a0,s1 + c001316e: f37ff0ef jal ra,c00130a4 + c0013172: bf65 j c001312a + +00000000c0013174 : JS_ThrowError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6718 { - c0013086: 7139 addi sp,sp,-64 - c0013088: f822 sd s0,48(sp) - c001308a: f426 sd s1,40(sp) - c001308c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6711 + c0013174: 7139 addi sp,sp,-64 + c0013176: f822 sd s0,48(sp) + c0013178: f426 sd s1,40(sp) + c001317a: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6719 JSRuntime *rt = ctx->rt; - c001308e: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6710 + c001317c: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6718 { - c0013090: 842a mv s0,a0 - c0013092: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6717 + c001317e: 842a mv s0,a0 + c0013180: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6725 add_backtrace = !rt->in_out_of_memory && - c0013094: 0f07c703 lbu a4,240(a5) - c0013098: e715 bnez a4,c00130c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6716 (discriminator 1) + c0013182: 0f07c703 lbu a4,240(a5) + c0013186: e715 bnez a4,c00131b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6724 (discriminator 1) sf = rt->current_stack_frame; - c001309a: 7ffc ld a5,248(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6717 (discriminator 1) + c0013188: 7ffc ld a5,248(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6725 (discriminator 1) add_backtrace = !rt->in_out_of_memory && - c001309c: 4705 li a4,1 - c001309e: cb99 beqz a5,c00130b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6718 + c001318a: 4705 li a4,1 + c001318c: cb99 beqz a5,c00131a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6726 (!sf || (JS_GetFunctionBytecode(sf->cur_func) == NULL)); - c00130a0: 6788 ld a0,8(a5) - c00130a2: 6b8c ld a1,16(a5) - c00130a4: e436 sd a3,8(sp) - c00130a6: e032 sd a2,0(sp) - c00130a8: ecef20ef jal ra,c0005776 - c00130ac: 6602 ld a2,0(sp) - c00130ae: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6717 + c001318e: 6788 ld a0,8(a5) + c0013190: 6b8c ld a1,16(a5) + c0013192: e436 sd a3,8(sp) + c0013194: e032 sd a2,0(sp) + c0013196: ecef20ef jal ra,c0005864 + c001319a: 6602 ld a2,0(sp) + c001319c: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6725 add_backtrace = !rt->in_out_of_memory && - c00130b0: 00153713 seqz a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6719 (discriminator 5) + c001319e: 00153713 seqz a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6727 (discriminator 5) return JS_ThrowError2(ctx, error_num, fmt, ap, add_backtrace); - c00130b4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6720 (discriminator 5) + c00131a2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 (discriminator 5) } - c00130b6: 7442 ld s0,48(sp) - c00130b8: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6719 (discriminator 5) + c00131a4: 7442 ld s0,48(sp) + c00131a6: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6727 (discriminator 5) return JS_ThrowError2(ctx, error_num, fmt, ap, add_backtrace); - c00130ba: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6720 (discriminator 5) + c00131a8: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 (discriminator 5) } - c00130bc: 74a2 ld s1,40(sp) - c00130be: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6719 (discriminator 5) + c00131aa: 74a2 ld s1,40(sp) + c00131ac: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6727 (discriminator 5) return JS_ThrowError2(ctx, error_num, fmt, ap, add_backtrace); - c00130c0: f37ff06f j c0012ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6717 + c00131ae: f37ff06f j c00130e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6725 add_backtrace = !rt->in_out_of_memory && - c00130c4: 4701 li a4,0 - c00130c6: b7fd j c00130b4 + c00131b2: 4701 li a4,0 + c00131b4: b7fd j c00131a2 -00000000c00130c8 : +00000000c00131b6 : JS_ThrowTypeErrorOrFalse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6745 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6753 { - c00130c8: 711d addi sp,sp,-96 - c00130ca: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6748 + c00131b6: 711d addi sp,sp,-96 + c00131b8: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6756 if ((flags & JS_PROP_THROW) || - c00130cc: 00e5d793 srli a5,a1,0xe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6745 -{ - c00130d0: f022 sd s0,32(sp) - c00130d2: f406 sd ra,40(sp) - c00130d4: fc36 sd a3,56(sp) - c00130d6: e0ba sd a4,64(sp) - c00130d8: e8c2 sd a6,80(sp) - c00130da: ecc6 sd a7,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6748 + c00131ba: 00e5d793 srli a5,a1,0xe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6753 +{ + c00131be: f022 sd s0,32(sp) + c00131c0: f406 sd ra,40(sp) + c00131c2: fc36 sd a3,56(sp) + c00131c4: e0ba sd a4,64(sp) + c00131c6: e8c2 sd a6,80(sp) + c00131c8: ecc6 sd a7,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6756 if ((flags & JS_PROP_THROW) || - c00130dc: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6745 + c00131ca: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6753 { - c00130de: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6748 + c00131cc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6756 if ((flags & JS_PROP_THROW) || - c00130e0: eb91 bnez a5,c00130f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6749 (discriminator 1) + c00131ce: eb91 bnez a5,c00131e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6757 (discriminator 1) ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c00130e2: 67a1 lui a5,0x8 - c00130e4: e432 sd a2,8(sp) - c00130e6: 8dfd and a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6748 (discriminator 1) + c00131d0: 67a1 lui a5,0x8 + c00131d2: e432 sd a2,8(sp) + c00131d4: 8dfd and a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6756 (discriminator 1) if ((flags & JS_PROP_THROW) || - c00130e8: cd89 beqz a1,c0013102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6749 + c00131d6: cd89 beqz a1,c00131f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6757 ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c00130ea: fb1f00ef jal ra,c000409a - c00130ee: 6622 ld a2,8(sp) - c00130f0: 85aa mv a1,a0 - c00130f2: c901 beqz a0,c0013102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6750 + c00131d8: ec3f00ef jal ra,c000409a + c00131dc: 6622 ld a2,8(sp) + c00131de: 85aa mv a1,a0 + c00131e0: c901 beqz a0,c00131f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6758 va_start(ap, fmt); - c00130f4: 1834 addi a3,sp,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6751 + c00131e2: 1834 addi a3,sp,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6759 JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c00130f6: 4591 li a1,4 - c00130f8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6750 + c00131e4: 4591 li a1,4 + c00131e6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6758 va_start(ap, fmt); - c00130fa: ec36 sd a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6751 + c00131e8: ec36 sd a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6759 JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c00130fc: f8bff0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6753 + c00131ea: f8bff0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6761 return -1; - c0013100: 55fd li a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6757 + c00131ee: 55fd li a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6765 } - c0013102: 70a2 ld ra,40(sp) - c0013104: 7402 ld s0,32(sp) - c0013106: 852e mv a0,a1 - c0013108: 6125 addi sp,sp,96 - c001310a: 8082 ret + c00131f0: 70a2 ld ra,40(sp) + c00131f2: 7402 ld s0,32(sp) + c00131f4: 852e mv a0,a1 + c00131f6: 6125 addi sp,sp,96 + c00131f8: 8082 ret -00000000c001310c : +00000000c00131fa : JS_ThrowSyntaxError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6723 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6731 { - c001310c: 7159 addi sp,sp,-112 - c001310e: e0b2 sd a2,64(sp) - c0013110: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 + c00131fa: 7159 addi sp,sp,-112 + c00131fc: e0b2 sd a2,64(sp) + c00131fe: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6736 val = JS_ThrowError(ctx, JS_SYNTAX_ERROR, fmt, ap); - c0013112: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6727 + c0013200: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6735 va_start(ap, fmt); - c0013114: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 + c0013202: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6736 val = JS_ThrowError(ctx, JS_SYNTAX_ERROR, fmt, ap); - c0013116: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6723 -{ - c0013118: fc06 sd ra,56(sp) - c001311a: e8ba sd a4,80(sp) - c001311c: ecbe sd a5,88(sp) - c001311e: f0c2 sd a6,96(sp) - c0013120: f4c6 sd a7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6727 + c0013204: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6731 +{ + c0013206: fc06 sd ra,56(sp) + c0013208: e8ba sd a4,80(sp) + c001320a: ecbe sd a5,88(sp) + c001320c: f0c2 sd a6,96(sp) + c001320e: f4c6 sd a7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6735 va_start(ap, fmt); - c0013122: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 + c0013210: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6736 val = JS_ThrowError(ctx, JS_SYNTAX_ERROR, fmt, ap); - c0013124: f63ff0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6731 + c0013212: f63ff0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 } - c0013128: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6728 + c0013216: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6736 val = JS_ThrowError(ctx, JS_SYNTAX_ERROR, fmt, ap); - c001312a: e82a sd a0,16(sp) - c001312c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6730 + c0013218: e82a sd a0,16(sp) + c001321a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6738 return val; - c001312e: f02a sd a0,32(sp) - c0013130: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6731 + c001321c: f02a sd a0,32(sp) + c001321e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 } - c0013132: 6165 addi sp,sp,112 - c0013134: 8082 ret + c0013220: 6165 addi sp,sp,112 + c0013222: 8082 ret -00000000c0013136 <__JS_ThrowSyntaxErrorAtom>: +00000000c0013224 <__JS_ThrowSyntaxErrorAtom>: __JS_ThrowSyntaxErrorAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6777 { - c0013136: 7135 addi sp,sp,-160 - c0013138: eca6 sd s1,88(sp) - c001313a: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 + c0013224: 7135 addi sp,sp,-160 + c0013226: eca6 sd s1,88(sp) + c0013228: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6779 return JS_ThrowSyntaxError(ctx, fmt, - c001313c: 862e mv a2,a1 - c001313e: 080c addi a1,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6769 -{ - c0013140: f486 sd ra,104(sp) - c0013142: f0a2 sd s0,96(sp) - c0013144: fcb6 sd a3,120(sp) - c0013146: 842a mv s0,a0 - c0013148: e13a sd a4,128(sp) - c001314a: e53e sd a5,136(sp) - c001314c: e942 sd a6,144(sp) - c001314e: ed46 sd a7,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 + c001322a: 862e mv a2,a1 + c001322c: 080c addi a1,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6777 +{ + c001322e: f486 sd ra,104(sp) + c0013230: f0a2 sd s0,96(sp) + c0013232: fcb6 sd a3,120(sp) + c0013234: 842a mv s0,a0 + c0013236: e13a sd a4,128(sp) + c0013238: e53e sd a5,136(sp) + c001323a: e942 sd a6,144(sp) + c001323c: ed46 sd a7,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6779 return JS_ThrowSyntaxError(ctx, fmt, - c0013150: d1af30ef jal ra,c000666a - c0013154: 862a mv a2,a0 - c0013156: 85a6 mv a1,s1 - c0013158: 8522 mv a0,s0 - c001315a: fb3ff0ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6773 + c001323e: d1af30ef jal ra,c0006758 + c0013242: 862a mv a2,a0 + c0013244: 85a6 mv a1,s1 + c0013246: 8522 mv a0,s0 + c0013248: fb3ff0ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6781 } - c001315e: 70a6 ld ra,104(sp) - c0013160: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 + c001324c: 70a6 ld ra,104(sp) + c001324e: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6779 return JS_ThrowSyntaxError(ctx, fmt, - c0013162: e02a sd a0,0(sp) - c0013164: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6773 + c0013250: e02a sd a0,0(sp) + c0013252: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6781 } - c0013166: 64e6 ld s1,88(sp) - c0013168: 610d addi sp,sp,160 - c001316a: 8082 ret + c0013254: 64e6 ld s1,88(sp) + c0013256: 610d addi sp,sp,160 + c0013258: 8082 ret -00000000c001316c : +00000000c001325a : js_resolve_export_throw_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27756 { - c001316c: 7135 addi sp,sp,-160 - c001316e: e922 sd s0,144(sp) - c0013170: e526 sd s1,136(sp) - c0013172: ed06 sd ra,152(sp) - c0013174: e14a sd s2,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27751 + c001325a: 7135 addi sp,sp,-160 + c001325c: e922 sd s0,144(sp) + c001325e: e526 sd s1,136(sp) + c0013260: ed06 sd ra,152(sp) + c0013262: e14a sd s2,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27759 switch(res) { - c0013176: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27748 + c0013264: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27756 { - c0013178: 84b2 mv s1,a2 - c001317a: 842a mv s0,a0 - c001317c: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27751 + c0013266: 84b2 mv s1,a2 + c0013268: 842a mv s0,a0 + c001326a: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27759 switch(res) { - c001317e: 04f58063 beq a1,a5,c00131be - c0013182: 478d li a5,3 - c0013184: 04f58d63 beq a1,a5,c00131de - c0013188: 57fd li a5,-1 - c001318a: 02f58463 beq a1,a5,c00131b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27756 + c001326c: 04f58063 beq a1,a5,c00132ac + c0013270: 478d li a5,3 + c0013272: 04f58d63 beq a1,a5,c00132cc + c0013276: 57fd li a5,-1 + c0013278: 02f58463 beq a1,a5,c00132a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27764 JS_ThrowSyntaxError(ctx, "Could not find export '%s' in module '%s'", - c001318e: 858a mv a1,sp - c0013190: cdaf30ef jal ra,c000666a - c0013194: 40d0 lw a2,4(s1) - c0013196: 892a mv s2,a0 - c0013198: 008c addi a1,sp,64 - c001319a: 8522 mv a0,s0 - c001319c: ccef30ef jal ra,c000666a - c00131a0: 86aa mv a3,a0 - c00131a2: 864a mv a2,s2 - c00131a4: 0004b597 auipc a1,0x4b - c00131a8: 88c58593 addi a1,a1,-1908 # c005da30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27766 + c001327c: 858a mv a1,sp + c001327e: cdaf30ef jal ra,c0006758 + c0013282: 40d0 lw a2,4(s1) + c0013284: 892a mv s2,a0 + c0013286: 008c addi a1,sp,64 + c0013288: 8522 mv a0,s0 + c001328a: ccef30ef jal ra,c0006758 + c001328e: 86aa mv a3,a0 + c0013290: 864a mv a2,s2 + c0013292: 0004b597 auipc a1,0x4b + c0013296: 9ce58593 addi a1,a1,-1586 # c005dc60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27774 JS_ThrowSyntaxError(ctx, "export '%s' in module '%s' is ambiguous", - c00131ac: 8522 mv a0,s0 - c00131ae: f5fff0ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27771 -} - c00131b2: 60ea ld ra,152(sp) - c00131b4: 644a ld s0,144(sp) - c00131b6: 64aa ld s1,136(sp) - c00131b8: 690a ld s2,128(sp) - c00131ba: 610d addi sp,sp,160 - c00131bc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27761 + c001329a: 8522 mv a0,s0 + c001329c: f5fff0ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27779 +} + c00132a0: 60ea ld ra,152(sp) + c00132a2: 644a ld s0,144(sp) + c00132a4: 64aa ld s1,136(sp) + c00132a6: 690a ld s2,128(sp) + c00132a8: 610d addi sp,sp,160 + c00132aa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27769 JS_ThrowSyntaxError(ctx, "circular reference when looking for export '%s' in module '%s'", - c00131be: 858a mv a1,sp - c00131c0: caaf30ef jal ra,c000666a - c00131c4: 40d0 lw a2,4(s1) - c00131c6: 892a mv s2,a0 - c00131c8: 008c addi a1,sp,64 - c00131ca: 8522 mv a0,s0 - c00131cc: c9ef30ef jal ra,c000666a - c00131d0: 86aa mv a3,a0 - c00131d2: 864a mv a2,s2 - c00131d4: 0004b597 auipc a1,0x4b - c00131d8: 88c58593 addi a1,a1,-1908 # c005da60 - c00131dc: bfc1 j c00131ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27766 + c00132ac: 858a mv a1,sp + c00132ae: caaf30ef jal ra,c0006758 + c00132b2: 40d0 lw a2,4(s1) + c00132b4: 892a mv s2,a0 + c00132b6: 008c addi a1,sp,64 + c00132b8: 8522 mv a0,s0 + c00132ba: c9ef30ef jal ra,c0006758 + c00132be: 86aa mv a3,a0 + c00132c0: 864a mv a2,s2 + c00132c2: 0004b597 auipc a1,0x4b + c00132c6: 9ce58593 addi a1,a1,-1586 # c005dc90 + c00132ca: bfc1 j c001329a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27774 JS_ThrowSyntaxError(ctx, "export '%s' in module '%s' is ambiguous", - c00131de: 858a mv a1,sp - c00131e0: c8af30ef jal ra,c000666a - c00131e4: 40d0 lw a2,4(s1) - c00131e6: 892a mv s2,a0 - c00131e8: 008c addi a1,sp,64 - c00131ea: 8522 mv a0,s0 - c00131ec: c7ef30ef jal ra,c000666a - c00131f0: 86aa mv a3,a0 - c00131f2: 864a mv a2,s2 - c00131f4: 0004b597 auipc a1,0x4b - c00131f8: 8ac58593 addi a1,a1,-1876 # c005daa0 - c00131fc: bf45 j c00131ac - -00000000c00131fe : + c00132cc: 858a mv a1,sp + c00132ce: c8af30ef jal ra,c0006758 + c00132d2: 40d0 lw a2,4(s1) + c00132d4: 892a mv s2,a0 + c00132d6: 008c addi a1,sp,64 + c00132d8: 8522 mv a0,s0 + c00132da: c7ef30ef jal ra,c0006758 + c00132de: 86aa mv a3,a0 + c00132e0: 864a mv a2,s2 + c00132e2: 0004b597 auipc a1,0x4b + c00132e6: 9ee58593 addi a1,a1,-1554 # c005dcd0 + c00132ea: bf45 j c001329a + +00000000c00132ec : bc_read_error_end(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35639 { - c00131fe: 1141 addi sp,sp,-16 - c0013200: e022 sd s0,0(sp) - c0013202: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35632 + c00132ec: 1141 addi sp,sp,-16 + c00132ee: e022 sd s0,0(sp) + c00132f0: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35640 if (!s->error_state) { - c0013204: 591c lw a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35631 + c00132f2: 591c lw a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35639 { - c0013206: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35632 + c00132f4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35640 if (!s->error_state) { - c0013208: eb81 bnez a5,c0013218 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35633 + c00132f6: eb81 bnez a5,c0013306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35641 JS_ThrowSyntaxError(s->ctx, "read after the end of the buffer"); - c001320a: 6108 ld a0,0(a0) - c001320c: 0004b597 auipc a1,0x4b - c0013210: 8bc58593 addi a1,a1,-1860 # c005dac8 - c0013214: ef9ff0ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35635 + c00132f8: 6108 ld a0,0(a0) + c00132fa: 0004b597 auipc a1,0x4b + c00132fe: 9fe58593 addi a1,a1,-1538 # c005dcf8 + c0013302: ef9ff0ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35643 return s->error_state = -1; - c0013218: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35636 + c0013306: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35644 } - c001321a: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35635 + c0013308: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35643 return s->error_state = -1; - c001321c: d81c sw a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35636 + c001330a: d81c sw a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35644 } - c001321e: 6402 ld s0,0(sp) - c0013220: 557d li a0,-1 - c0013222: 0141 addi sp,sp,16 - c0013224: 8082 ret + c001330c: 6402 ld s0,0(sp) + c001330e: 557d li a0,-1 + c0013310: 0141 addi sp,sp,16 + c0013312: 8082 ret -00000000c0013226 : +00000000c0013314 : bc_get_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35648 if (unlikely(s->buf_end - s->ptr < 1)) { - c0013226: 6918 ld a4,16(a0) - c0013228: 6d14 ld a3,24(a0) - c001322a: 8e99 sub a3,a3,a4 - c001322c: 00d04663 bgtz a3,c0013238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35641 + c0013314: 6918 ld a4,16(a0) + c0013316: 6d14 ld a3,24(a0) + c0013318: 8e99 sub a3,a3,a4 + c001331a: 00d04663 bgtz a3,c0013326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35649 *pval = 0; /* avoid warning */ - c0013230: 00058023 sb zero,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35642 + c001331e: 00058023 sb zero,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35650 return bc_read_error_end(s); - c0013234: fcbff06f j c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35644 + c0013322: fcbff06f j c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35652 *pval = *s->ptr++; - c0013238: 00170693 addi a3,a4,1 # 34000001 <__clzdi2-0x8bffffff> - c001323c: e914 sd a3,16(a0) - c001323e: 00074783 lbu a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35646 + c0013326: 00170693 addi a3,a4,1 # 34000001 <__clzdi2-0x8bffffff> + c001332a: e914 sd a3,16(a0) + c001332c: 00074783 lbu a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35654 } - c0013242: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35644 + c0013330: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35652 *pval = *s->ptr++; - c0013244: 00f58023 sb a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35646 + c0013332: 00f58023 sb a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35654 } - c0013248: 8082 ret + c0013336: 8082 ret -00000000c001324a : +00000000c0013338 : bc_get_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35690 { - c001324a: 1141 addi sp,sp,-16 - c001324c: e022 sd s0,0(sp) - c001324e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35684 + c0013338: 1141 addi sp,sp,-16 + c001333a: e022 sd s0,0(sp) + c001333c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35692 ret = get_leb128(pval, s->ptr, s->buf_end); - c0013250: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35682 + c001333e: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35690 { - c0013252: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35684 + c0013340: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35692 ret = get_leb128(pval, s->ptr, s->buf_end); - c0013254: 680c ld a1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35682 + c0013342: 680c ld a1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35690 { - c0013256: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35684 + c0013344: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35692 ret = get_leb128(pval, s->ptr, s->buf_end); - c0013258: b01f10ef jal ra,c0004d58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35685 + c0013346: a13f10ef jal ra,c0004d58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35693 if (unlikely(ret < 0)) - c001325c: 00055863 bgez a0,c001326c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35686 + c001334a: 00055863 bgez a0,c001335a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35694 return bc_read_error_end(s); - c0013260: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35689 + c001334e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35697 } - c0013262: 6402 ld s0,0(sp) - c0013264: 60a2 ld ra,8(sp) - c0013266: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35686 + c0013350: 6402 ld s0,0(sp) + c0013352: 60a2 ld ra,8(sp) + c0013354: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35694 return bc_read_error_end(s); - c0013268: f97ff06f j c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35687 + c0013356: f97ff06f j c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35695 s->ptr += ret; - c001326c: 681c ld a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35689 + c001335a: 681c ld a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35697 } - c001326e: 60a2 ld ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35687 + c001335c: 60a2 ld ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35695 s->ptr += ret; - c0013270: 953e add a0,a0,a5 - c0013272: e808 sd a0,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35689 + c001335e: 953e add a0,a0,a5 + c0013360: e808 sd a0,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35697 } - c0013274: 6402 ld s0,0(sp) - c0013276: 4501 li a0,0 - c0013278: 0141 addi sp,sp,16 - c001327a: 8082 ret + c0013362: 6402 ld s0,0(sp) + c0013364: 4501 li a0,0 + c0013366: 0141 addi sp,sp,16 + c0013368: 8082 ret -00000000c001327c : +00000000c001336a : bc_get_leb128_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35708 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35716 { - c001327c: 1101 addi sp,sp,-32 - c001327e: e822 sd s0,16(sp) - c0013280: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35710 + c001336a: 1101 addi sp,sp,-32 + c001336c: e822 sd s0,16(sp) + c001336e: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35718 if (bc_get_leb128(s, &val)) { - c0013282: 006c addi a1,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35708 + c0013370: 006c addi a1,sp,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35716 { - c0013284: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35710 + c0013372: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35718 if (bc_get_leb128(s, &val)) { - c0013286: fc5ff0ef jal ra,c001324a - c001328a: e909 bnez a0,c001329c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35714 + c0013374: fc5ff0ef jal ra,c0013338 + c0013378: e909 bnez a0,c001338a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35722 *pval = val; - c001328c: 00c15783 lhu a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35716 + c001337a: 00c15783 lhu a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35724 } - c0013290: 60e2 ld ra,24(sp) - c0013292: 00f41023 sh a5,0(s0) - c0013296: 6442 ld s0,16(sp) - c0013298: 6105 addi sp,sp,32 - c001329a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35711 + c001337e: 60e2 ld ra,24(sp) + c0013380: 00f41023 sh a5,0(s0) + c0013384: 6442 ld s0,16(sp) + c0013386: 6105 addi sp,sp,32 + c0013388: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35719 *pval = 0; - c001329c: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 + c001338a: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35720 return -1; - c001329e: 557d li a0,-1 - c00132a0: bfc5 j c0013290 + c001338c: 557d li a0,-1 + c001338e: bfc5 j c001337e -00000000c00132a2 : +00000000c0013390 : bc_get_u64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35680 if (unlikely(s->buf_end - s->ptr < 8)) { - c00132a2: 691c ld a5,16(a0) - c00132a4: 6d14 ld a3,24(a0) - c00132a6: 461d li a2,7 - c00132a8: 8e9d sub a3,a3,a5 - c00132aa: 00d64663 blt a2,a3,c00132b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35673 + c0013390: 691c ld a5,16(a0) + c0013392: 6d14 ld a3,24(a0) + c0013394: 461d li a2,7 + c0013396: 8e9d sub a3,a3,a5 + c0013398: 00d64663 blt a2,a3,c00133a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35681 *pval = 0; /* avoid warning */ - c00132ae: 0005b023 sd zero,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35674 + c001339c: 0005b023 sd zero,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35682 return bc_read_error_end(s); - c00132b2: f4dff06f j c00131fe + c00133a0: f4dff06f j c00132ec get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 return ((const struct packed_u64 *)tab)->v; - c00132b6: 0017c683 lbu a3,1(a5) # 8001 <__clzdi2-0xbfff7fff> - c00132ba: 0007c603 lbu a2,0(a5) - c00132be: 06a2 slli a3,a3,0x8 - c00132c0: 8e55 or a2,a2,a3 - c00132c2: 0027c683 lbu a3,2(a5) - c00132c6: 06c2 slli a3,a3,0x10 - c00132c8: 8ed1 or a3,a3,a2 - c00132ca: 0037c603 lbu a2,3(a5) - c00132ce: 0662 slli a2,a2,0x18 - c00132d0: 8ed1 or a3,a3,a2 - c00132d2: 0047c603 lbu a2,4(a5) - c00132d6: 1602 slli a2,a2,0x20 - c00132d8: 8e55 or a2,a2,a3 - c00132da: 0057c683 lbu a3,5(a5) - c00132de: 16a2 slli a3,a3,0x28 - c00132e0: 8e55 or a2,a2,a3 - c00132e2: 0067c683 lbu a3,6(a5) - c00132e6: 0077c783 lbu a5,7(a5) - c00132ea: 16c2 slli a3,a3,0x30 - c00132ec: 8ed1 or a3,a3,a2 - c00132ee: 17e2 slli a5,a5,0x38 - c00132f0: 8fd5 or a5,a5,a3 + c00133a4: 0017c683 lbu a3,1(a5) # 8001 <__clzdi2-0xbfff7fff> + c00133a8: 0007c603 lbu a2,0(a5) + c00133ac: 06a2 slli a3,a3,0x8 + c00133ae: 8e55 or a2,a2,a3 + c00133b0: 0027c683 lbu a3,2(a5) + c00133b4: 06c2 slli a3,a3,0x10 + c00133b6: 8ed1 or a3,a3,a2 + c00133b8: 0037c603 lbu a2,3(a5) + c00133bc: 0662 slli a2,a2,0x18 + c00133be: 8ed1 or a3,a3,a2 + c00133c0: 0047c603 lbu a2,4(a5) + c00133c4: 1602 slli a2,a2,0x20 + c00133c6: 8e55 or a2,a2,a3 + c00133c8: 0057c683 lbu a3,5(a5) + c00133cc: 16a2 slli a3,a3,0x28 + c00133ce: 8e55 or a2,a2,a3 + c00133d0: 0067c683 lbu a3,6(a5) + c00133d4: 0077c783 lbu a5,7(a5) + c00133d8: 16c2 slli a3,a3,0x30 + c00133da: 8ed1 or a3,a3,a2 + c00133dc: 17e2 slli a5,a5,0x38 + c00133de: 8fd5 or a5,a5,a3 bc_get_u64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35684 *pval = get_u64(s->ptr); - c00132f2: e19c sd a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35677 + c00133e0: e19c sd a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35685 s->ptr += 8; - c00132f4: 691c ld a5,16(a0) - c00132f6: 07a1 addi a5,a5,8 - c00132f8: e91c sd a5,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35679 + c00133e2: 691c ld a5,16(a0) + c00133e4: 07a1 addi a5,a5,8 + c00133e6: e91c sd a5,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35687 } - c00132fa: 4501 li a0,0 - c00132fc: 8082 ret + c00133e8: 4501 li a0,0 + c00133ea: 8082 ret -00000000c00132fe : +00000000c00133ec : bc_get_buf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35720 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35728 if (buf_len != 0) { - c00132fe: c239 beqz a2,c0013344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35719 + c00133ec: c239 beqz a2,c0013432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35727 { - c0013300: 1101 addi sp,sp,-32 - c0013302: e426 sd s1,8(sp) - c0013304: ec06 sd ra,24(sp) - c0013306: e822 sd s0,16(sp) - c0013308: 84aa mv s1,a0 - c001330a: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35721 + c00133ee: 1101 addi sp,sp,-32 + c00133f0: e426 sd s1,8(sp) + c00133f2: ec06 sd ra,24(sp) + c00133f4: e822 sd s0,16(sp) + c00133f6: 84aa mv s1,a0 + c00133f8: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35729 if (unlikely(!buf || s->buf_end - s->ptr < buf_len)) - c001330c: c989 beqz a1,c001331e - c001330e: 688c ld a1,16(s1) - c0013310: 6c9c ld a5,24(s1) - c0013312: 02061413 slli s0,a2,0x20 - c0013316: 9001 srli s0,s0,0x20 - c0013318: 8f8d sub a5,a5,a1 - c001331a: 0087d963 bge a5,s0,c001332c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35727 + c00133fa: c989 beqz a1,c001340c + c00133fc: 688c ld a1,16(s1) + c00133fe: 6c9c ld a5,24(s1) + c0013400: 02061413 slli s0,a2,0x20 + c0013404: 9001 srli s0,s0,0x20 + c0013406: 8f8d sub a5,a5,a1 + c0013408: 0087d963 bge a5,s0,c001341a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 } - c001331e: 6442 ld s0,16(sp) - c0013320: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35722 + c001340c: 6442 ld s0,16(sp) + c001340e: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35730 return bc_read_error_end(s); - c0013322: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35727 + c0013410: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 } - c0013324: 64a2 ld s1,8(sp) - c0013326: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35722 + c0013412: 64a2 ld s1,8(sp) + c0013414: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35730 return bc_read_error_end(s); - c0013328: ed7ff06f j c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35723 + c0013416: ed7ff06f j c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35731 memcpy(buf, s->ptr, buf_len); - c001332c: 8622 mv a2,s0 - c001332e: 6ac430ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35724 + c001341a: 8622 mv a2,s0 + c001341c: 78e430ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35732 s->ptr += buf_len; - c0013332: 689c ld a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35727 + c0013420: 689c ld a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 } - c0013334: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35724 + c0013422: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35732 s->ptr += buf_len; - c0013336: 97a2 add a5,a5,s0 - c0013338: e89c sd a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35727 + c0013424: 97a2 add a5,a5,s0 + c0013426: e89c sd a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 } - c001333a: 60e2 ld ra,24(sp) - c001333c: 6442 ld s0,16(sp) - c001333e: 64a2 ld s1,8(sp) - c0013340: 6105 addi sp,sp,32 - c0013342: 8082 ret - c0013344: 4501 li a0,0 - c0013346: 8082 ret + c0013428: 60e2 ld ra,24(sp) + c001342a: 6442 ld s0,16(sp) + c001342c: 64a2 ld s1,8(sp) + c001342e: 6105 addi sp,sp,32 + c0013430: 8082 ret + c0013432: 4501 li a0,0 + c0013434: 8082 ret -00000000c0013348 : +00000000c0013436 : bc_idx_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35738 { - c0013348: 1101 addi sp,sp,-32 - c001334a: e426 sd s1,8(sp) - c001334c: ec06 sd ra,24(sp) - c001334e: e822 sd s0,16(sp) - c0013350: 84ae mv s1,a1 - c0013352: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35733 + c0013436: 1101 addi sp,sp,-32 + c0013438: e426 sd s1,8(sp) + c001343a: ec06 sd ra,24(sp) + c001343c: e822 sd s0,16(sp) + c001343e: 84ae mv s1,a1 + c0013440: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35741 if (__JS_AtomIsTaggedInt(idx)) { - c0013354: 00064b63 bltz a2,c001336a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 + c0013442: 00064b63 bltz a2,c0013458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35743 } else if (idx < s->first_atom) { - c0013358: 5110 lw a2,32(a0) - c001335a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35736 + c0013446: 5110 lw a2,32(a0) + c0013448: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35744 atom = JS_DupAtom(s->ctx, idx); - c001335c: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35735 + c001344a: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35743 } else if (idx < s->first_atom) { - c001335e: 00c5f963 bgeu a1,a2,c0013370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35745 + c001344c: 00c5f963 bgeu a1,a2,c001345e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35753 atom = JS_DupAtom(s->ctx, s->idx_to_atom[idx]); - c0013362: 968f40ef jal ra,c00074ca - c0013366: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35747 + c0013450: 968f40ef jal ra,c00075b8 + c0013454: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35755 *patom = atom; - c001336a: c08c sw a1,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35748 + c0013458: c08c sw a1,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35756 return 0; - c001336c: 4501 li a0,0 - c001336e: a035 j c001339a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35739 + c001345a: 4501 li a0,0 + c001345c: a035 j c0013488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35747 if (idx >= s->idx_to_atom_count) { - c0013370: 5058 lw a4,36(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35738 + c001345e: 5058 lw a4,36(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35746 idx -= s->first_atom; - c0013372: 40c5863b subw a2,a1,a2 - c0013376: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35739 + c0013460: 40c5863b subw a2,a1,a2 + c0013464: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35747 if (idx >= s->idx_to_atom_count) { - c001337a: 02e7e563 bltu a5,a4,c00133a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35741 + c0013468: 02e7e563 bltu a5,a4,c0013492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35749 (unsigned int)(s->ptr - s->buf_start)); - c001337e: 641c ld a5,8(s0) - c0013380: 6810 ld a2,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35740 + c001346c: 641c ld a5,8(s0) + c001346e: 6810 ld a2,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35748 JS_ThrowSyntaxError(s->ctx, "invalid atom index (pos=%u)", - c0013382: 0004a597 auipc a1,0x4a - c0013386: 76e58593 addi a1,a1,1902 # c005daf0 - c001338a: 9e1d subw a2,a2,a5 - c001338c: d81ff0ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35743 + c0013470: 0004b597 auipc a1,0x4b + c0013474: 8b058593 addi a1,a1,-1872 # c005dd20 + c0013478: 9e1d subw a2,a2,a5 + c001347a: d81ff0ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35751 return s->error_state = -1; - c0013390: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35742 + c001347e: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35750 *patom = JS_ATOM_NULL; - c0013392: 0004a023 sw zero,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35743 + c0013480: 0004a023 sw zero,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35751 return s->error_state = -1; - c0013396: d81c sw a5,48(s0) - c0013398: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35749 + c0013484: d81c sw a5,48(s0) + c0013486: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35757 } - c001339a: 60e2 ld ra,24(sp) - c001339c: 6442 ld s0,16(sp) - c001339e: 64a2 ld s1,8(sp) - c00133a0: 6105 addi sp,sp,32 - c00133a2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35745 + c0013488: 60e2 ld ra,24(sp) + c001348a: 6442 ld s0,16(sp) + c001348c: 64a2 ld s1,8(sp) + c001348e: 6105 addi sp,sp,32 + c0013490: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35753 atom = JS_DupAtom(s->ctx, s->idx_to_atom[idx]); - c00133a4: 740c ld a1,40(s0) - c00133a6: 02061793 slli a5,a2,0x20 - c00133aa: 01e7d613 srli a2,a5,0x1e - c00133ae: 962e add a2,a2,a1 - c00133b0: 420c lw a1,0(a2) - c00133b2: bf45 j c0013362 - -00000000c00133b4 : + c0013492: 740c ld a1,40(s0) + c0013494: 02061793 slli a5,a2,0x20 + c0013498: 01e7d613 srli a2,a5,0x1e + c001349c: 962e add a2,a2,a1 + c001349e: 420c lw a1,0(a2) + c00134a0: bf45 j c0013450 + +00000000c00134a2 : bc_get_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35760 { - c00133b4: 7179 addi sp,sp,-48 - c00133b6: f022 sd s0,32(sp) - c00133b8: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35754 + c00134a2: 7179 addi sp,sp,-48 + c00134a4: f022 sd s0,32(sp) + c00134a6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35762 if (bc_get_leb128(s, &v)) - c00133ba: 006c addi a1,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35752 + c00134a8: 006c addi a1,sp,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35760 { - c00133bc: ec26 sd s1,24(sp) - c00133be: f406 sd ra,40(sp) - c00133c0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35754 + c00134aa: ec26 sd s1,24(sp) + c00134ac: f406 sd ra,40(sp) + c00134ae: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35762 if (bc_get_leb128(s, &v)) - c00133c2: e89ff0ef jal ra,c001324a - c00133c6: e515 bnez a0,c00133f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35756 + c00134b0: e89ff0ef jal ra,c0013338 + c00134b4: e515 bnez a0,c00134e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35764 if (v & 1) { - c00133c8: 47b2 lw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35757 + c00134b6: 47b2 lw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35765 *patom = __JS_AtomFromUInt32(v >> 1); - c00133ca: 0017d71b srliw a4,a5,0x1 - c00133ce: 0017d61b srliw a2,a5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35756 + c00134b8: 0017d71b srliw a4,a5,0x1 + c00134bc: 0017d61b srliw a2,a5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35764 if (v & 1) { - c00133d2: 8b85 andi a5,a5,1 - c00133d4: cb91 beqz a5,c00133e8 + c00134c0: 8b85 andi a5,a5,1 + c00134c2: cb91 beqz a5,c00134d6 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c00133d6: 800007b7 lui a5,0x80000 - c00133da: 8f5d or a4,a4,a5 + c00134c4: 800007b7 lui a5,0x80000 + c00134c8: 8f5d or a4,a4,a5 bc_get_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35765 *patom = __JS_AtomFromUInt32(v >> 1); - c00133dc: c018 sw a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35762 -} - c00133de: 70a2 ld ra,40(sp) - c00133e0: 7402 ld s0,32(sp) - c00133e2: 64e2 ld s1,24(sp) - c00133e4: 6145 addi sp,sp,48 - c00133e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35760 + c00134ca: c018 sw a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35770 +} + c00134cc: 70a2 ld ra,40(sp) + c00134ce: 7402 ld s0,32(sp) + c00134d0: 64e2 ld s1,24(sp) + c00134d2: 6145 addi sp,sp,48 + c00134d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35768 return bc_idx_to_atom(s, patom, v >> 1); - c00133e8: 85a2 mv a1,s0 - c00133ea: 8526 mv a0,s1 - c00133ec: f5dff0ef jal ra,c0013348 - c00133f0: b7fd j c00133de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35755 + c00134d6: 85a2 mv a1,s0 + c00134d8: 8526 mv a0,s1 + c00134da: f5dff0ef jal ra,c0013436 + c00134de: b7fd j c00134cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35763 return -1; - c00133f2: 557d li a0,-1 - c00133f4: b7ed j c00133de + c00134e0: 557d li a0,-1 + c00134e2: b7ed j c00134cc -00000000c00133f6 : +00000000c00134e4 : JS_ThrowTypeError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6742 { - c00133f6: 7159 addi sp,sp,-112 - c00133f8: e0b2 sd a2,64(sp) - c00133fa: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 + c00134e4: 7159 addi sp,sp,-112 + c00134e6: e0b2 sd a2,64(sp) + c00134e8: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6747 val = JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c00133fc: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6738 + c00134ea: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6746 va_start(ap, fmt); - c00133fe: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 + c00134ec: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6747 val = JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c0013400: 4591 li a1,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6734 -{ - c0013402: fc06 sd ra,56(sp) - c0013404: e8ba sd a4,80(sp) - c0013406: ecbe sd a5,88(sp) - c0013408: f0c2 sd a6,96(sp) - c001340a: f4c6 sd a7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6738 + c00134ee: 4591 li a1,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6742 +{ + c00134f0: fc06 sd ra,56(sp) + c00134f2: e8ba sd a4,80(sp) + c00134f4: ecbe sd a5,88(sp) + c00134f6: f0c2 sd a6,96(sp) + c00134f8: f4c6 sd a7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6746 va_start(ap, fmt); - c001340c: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 + c00134fa: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6747 val = JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c001340e: c79ff0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6742 + c00134fc: c79ff0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6750 } - c0013412: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6739 + c0013500: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6747 val = JS_ThrowError(ctx, JS_TYPE_ERROR, fmt, ap); - c0013414: e82a sd a0,16(sp) - c0013416: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6741 + c0013502: e82a sd a0,16(sp) + c0013504: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6749 return val; - c0013418: f02a sd a0,32(sp) - c001341a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6742 + c0013506: f02a sd a0,32(sp) + c0013508: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6750 } - c001341c: 6165 addi sp,sp,112 - c001341e: 8082 ret + c001350a: 6165 addi sp,sp,112 + c001350c: 8082 ret -00000000c0013420 : +00000000c001350e : call_setter(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8268 -{ - c0013420: 711d addi sp,sp,-96 - c0013422: e4a6 sd s1,72(sp) - c0013424: ec86 sd ra,88(sp) - c0013426: e8a2 sd s0,80(sp) - c0013428: ec36 sd a3,24(sp) - c001342a: e03a sd a4,0(sp) - c001342c: e43e sd a5,8(sp) - c001342e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8276 +{ + c001350e: 711d addi sp,sp,-96 + c0013510: e4a6 sd s1,72(sp) + c0013512: ec86 sd ra,88(sp) + c0013514: e8a2 sd s0,80(sp) + c0013516: ec36 sd a3,24(sp) + c0013518: e03a sd a4,0(sp) + c001351a: e43e sd a5,8(sp) + c001351c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8278 if (likely(setter)) { - c0013430: c1b9 beqz a1,c0013476 + c001351e: c1b9 beqz a1,c0013564 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0013432: 419c lw a5,0(a1) + c0013520: 419c lw a5,0(a1) call_setter(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 ret = JS_CallFree(ctx, func, this_obj, 1, (JSValueConst *)&val); - c0013434: 6762 ld a4,24(sp) - c0013436: 86b2 mv a3,a2 + c0013522: 6762 ld a4,24(sp) + c0013524: 86b2 mv a3,a2 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0013438: 2785 addiw a5,a5,1 - c001343a: c19c sw a5,0(a1) + c0013526: 2785 addiw a5,a5,1 + c0013528: c19c sw a5,0(a1) call_setter(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8274 - c001343c: 880a mv a6,sp - c001343e: 4785 li a5,1 - c0013440: 567d li a2,-1 - c0013442: bcafe0ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8275 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 + c001352a: 880a mv a6,sp + c001352c: 4785 li a5,1 + c001352e: 567d li a2,-1 + c0013530: bcafe0ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8283 JS_FreeValue(ctx, val); - c0013446: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8274 + c0013534: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 ret = JS_CallFree(ctx, func, this_obj, 1, (JSValueConst *)&val); - c0013448: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8275 + c0013536: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8283 JS_FreeValue(ctx, val); - c001344a: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8274 + c0013538: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 ret = JS_CallFree(ctx, func, this_obj, 1, (JSValueConst *)&val); - c001344c: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8275 + c001353a: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8283 JS_FreeValue(ctx, val); - c001344e: 8526 mv a0,s1 - c0013450: ee8f40ef jal ra,c0007b38 + c001353c: 8526 mv a0,s1 + c001353e: ee8f40ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0013454: 7622 ld a2,40(sp) + c0013542: 7622 ld a2,40(sp) call_setter(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8284 if (JS_IsException(ret)) - c0013456: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8277 + c0013544: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8285 return -1; - c0013458: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8276 + c0013546: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8284 if (JS_IsException(ret)) - c001345a: 0006071b sext.w a4,a2 - c001345e: 00f70763 beq a4,a5,c001346c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8278 + c0013548: 0006071b sext.w a4,a2 + c001354c: 00f70763 beq a4,a5,c001355a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8286 JS_FreeValue(ctx, ret); - c0013462: 7582 ld a1,32(sp) - c0013464: 8526 mv a0,s1 - c0013466: ed2f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8279 + c0013550: 7582 ld a1,32(sp) + c0013552: 8526 mv a0,s1 + c0013554: ed2f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8287 return TRUE; - c001346a: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8289 (discriminator 1) -} - c001346c: 60e6 ld ra,88(sp) - c001346e: 6446 ld s0,80(sp) - c0013470: 64a6 ld s1,72(sp) - c0013472: 6125 addi sp,sp,96 - c0013474: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8281 + c0013558: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8297 (discriminator 1) +} + c001355a: 60e6 ld ra,88(sp) + c001355c: 6446 ld s0,80(sp) + c001355e: 64a6 ld s1,72(sp) + c0013560: 6125 addi sp,sp,96 + c0013562: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8289 JS_FreeValue(ctx, val); - c0013476: 863e mv a2,a5 - c0013478: 85ba mv a1,a4 - c001347a: 8442 mv s0,a6 - c001347c: ebcf40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 + c0013564: 863e mv a2,a5 + c0013566: 85ba mv a1,a4 + c0013568: 8442 mv s0,a6 + c001356a: ebcf40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8290 if ((flags & JS_PROP_THROW) || - c0013480: 00e45793 srli a5,s0,0xe - c0013484: 8b85 andi a5,a5,1 - c0013486: eb81 bnez a5,c0013496 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8283 (discriminator 1) + c001356e: 00e45793 srli a5,s0,0xe + c0013572: 8b85 andi a5,a5,1 + c0013574: eb81 bnez a5,c0013584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8291 (discriminator 1) ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0013488: 6521 lui a0,0x8 - c001348a: 8d61 and a0,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8282 (discriminator 1) + c0013576: 6521 lui a0,0x8 + c0013578: 8d61 and a0,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8290 (discriminator 1) if ((flags & JS_PROP_THROW) || - c001348c: d165 beqz a0,c001346c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8283 + c001357a: d165 beqz a0,c001355a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8291 ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c001348e: 8526 mv a0,s1 - c0013490: c0bf00ef jal ra,c000409a - c0013494: dd61 beqz a0,c001346c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8284 + c001357c: 8526 mv a0,s1 + c001357e: b1df00ef jal ra,c000409a + c0013582: dd61 beqz a0,c001355a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8292 JS_ThrowTypeError(ctx, "no setter for property"); - c0013496: 0004a597 auipc a1,0x4a - c001349a: 67a58593 addi a1,a1,1658 # c005db10 - c001349e: 8526 mv a0,s1 - c00134a0: f57ff0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8285 + c0013584: 0004a597 auipc a1,0x4a + c0013588: 7bc58593 addi a1,a1,1980 # c005dd40 + c001358c: 8526 mv a0,s1 + c001358e: f57ff0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8293 return -1; - c00134a4: 557d li a0,-1 - c00134a6: b7d9 j c001346c + c0013592: 557d li a0,-1 + c0013594: b7d9 j c001355a -00000000c00134a8 : +00000000c0013596 : check_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36749 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36757 { - c00134a8: 1101 addi sp,sp,-32 - c00134aa: e822 sd s0,16(sp) - c00134ac: ec06 sd ra,24(sp) - c00134ae: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36750 + c0013596: 1101 addi sp,sp,-32 + c0013598: e822 sd s0,16(sp) + c001359a: ec06 sd ra,24(sp) + c001359c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 if (likely(JS_IsFunction(ctx, obj))) - c00134b0: a2cf70ef jal ra,c000a6dc - c00134b4: ed09 bnez a0,c00134ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36752 + c001359e: a2cf70ef jal ra,c000a7ca + c00135a2: ed09 bnez a0,c00135bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36760 JS_ThrowTypeError(ctx, "not a function"); - c00134b6: 0004a597 auipc a1,0x4a - c00134ba: b5258593 addi a1,a1,-1198 # c005d008 - c00134be: 8522 mv a0,s0 - c00134c0: f37ff0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36753 + c00135a4: 0004a597 auipc a1,0x4a + c00135a8: c9458593 addi a1,a1,-876 # c005d238 + c00135ac: 8522 mv a0,s0 + c00135ae: f37ff0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36761 return -1; - c00134c4: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36754 -} - c00134c6: 60e2 ld ra,24(sp) - c00134c8: 6442 ld s0,16(sp) - c00134ca: 6105 addi sp,sp,32 - c00134cc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36751 + c00135b2: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36762 +} + c00135b4: 60e2 ld ra,24(sp) + c00135b6: 6442 ld s0,16(sp) + c00135b8: 6105 addi sp,sp,32 + c00135ba: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36759 return 0; - c00134ce: 4501 li a0,0 - c00134d0: bfdd j c00134c6 + c00135bc: 4501 li a0,0 + c00135be: bfdd j c00135b4 -00000000c00134d2 <__JS_ThrowTypeErrorAtom>: +00000000c00135c0 <__JS_ThrowTypeErrorAtom>: __JS_ThrowTypeErrorAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6769 { - c00134d2: 7135 addi sp,sp,-160 - c00134d4: eca6 sd s1,88(sp) - c00134d6: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6763 + c00135c0: 7135 addi sp,sp,-160 + c00135c2: eca6 sd s1,88(sp) + c00135c4: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 return JS_ThrowTypeError(ctx, fmt, - c00134d8: 862e mv a2,a1 - c00134da: 080c addi a1,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6761 + c00135c6: 862e mv a2,a1 + c00135c8: 080c addi a1,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6769 { - c00134dc: f486 sd ra,104(sp) - c00134de: f0a2 sd s0,96(sp) - c00134e0: fcb6 sd a3,120(sp) - c00134e2: 842a mv s0,a0 - c00134e4: e13a sd a4,128(sp) - c00134e6: e53e sd a5,136(sp) - c00134e8: e942 sd a6,144(sp) - c00134ea: ed46 sd a7,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6763 + c00135ca: f486 sd ra,104(sp) + c00135cc: f0a2 sd s0,96(sp) + c00135ce: fcb6 sd a3,120(sp) + c00135d0: 842a mv s0,a0 + c00135d2: e13a sd a4,128(sp) + c00135d4: e53e sd a5,136(sp) + c00135d6: e942 sd a6,144(sp) + c00135d8: ed46 sd a7,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 return JS_ThrowTypeError(ctx, fmt, - c00134ec: 97ef30ef jal ra,c000666a - c00134f0: 862a mv a2,a0 - c00134f2: 85a6 mv a1,s1 - c00134f4: 8522 mv a0,s0 - c00134f6: f01ff0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6765 + c00135da: 97ef30ef jal ra,c0006758 + c00135de: 862a mv a2,a0 + c00135e0: 85a6 mv a1,s1 + c00135e2: 8522 mv a0,s0 + c00135e4: f01ff0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6773 } - c00134fa: 70a6 ld ra,104(sp) - c00134fc: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6763 + c00135e8: 70a6 ld ra,104(sp) + c00135ea: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6771 return JS_ThrowTypeError(ctx, fmt, - c00134fe: e02a sd a0,0(sp) - c0013500: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6765 + c00135ec: e02a sd a0,0(sp) + c00135ee: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6773 } - c0013502: 64e6 ld s1,88(sp) - c0013504: 610d addi sp,sp,160 - c0013506: 8082 ret + c00135f0: 64e6 ld s1,88(sp) + c00135f2: 610d addi sp,sp,160 + c00135f4: 8082 ret -00000000c0013508 : +00000000c00135f6 : JS_ThrowTypeErrorReadOnly(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6781 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6789 { - c0013508: 87ae mv a5,a1 - c001350a: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6782 + c00135f6: 87ae mv a5,a1 + c00135f8: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6790 if ((flags & JS_PROP_THROW) || - c001350c: 00e7d713 srli a4,a5,0xe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6781 + c00135fa: 00e7d713 srli a4,a5,0xe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6789 { - c0013510: e822 sd s0,16(sp) - c0013512: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6782 + c00135fe: e822 sd s0,16(sp) + c0013600: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6790 if ((flags & JS_PROP_THROW) || - c0013514: 8b05 andi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6781 + c0013602: 8b05 andi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6789 { - c0013516: 842a mv s0,a0 - c0013518: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6782 + c0013604: 842a mv s0,a0 + c0013606: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6790 if ((flags & JS_PROP_THROW) || - c001351a: eb11 bnez a4,c001352e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6783 (discriminator 1) + c0013608: eb11 bnez a4,c001361c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6791 (discriminator 1) ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c001351c: 6721 lui a4,0x8 - c001351e: e432 sd a2,8(sp) - c0013520: 8ff9 and a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6782 (discriminator 1) + c001360a: 6721 lui a4,0x8 + c001360c: e432 sd a2,8(sp) + c001360e: 8ff9 and a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6790 (discriminator 1) if ((flags & JS_PROP_THROW) || - c0013522: c395 beqz a5,c0013546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6783 + c0013610: c395 beqz a5,c0013634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6791 ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0013524: b77f00ef jal ra,c000409a - c0013528: 65a2 ld a1,8(sp) - c001352a: 87aa mv a5,a0 - c001352c: cd09 beqz a0,c0013546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6784 + c0013612: a89f00ef jal ra,c000409a + c0013616: 65a2 ld a1,8(sp) + c0013618: 87aa mv a5,a0 + c001361a: cd09 beqz a0,c0013634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 JS_ThrowTypeErrorAtom(ctx, "'%s' is read-only", atom); - c001352e: 0004a697 auipc a3,0x4a - c0013532: aa268693 addi a3,a3,-1374 # c005cfd0 - c0013536: 0004a617 auipc a2,0x4a - c001353a: b9a60613 addi a2,a2,-1126 # c005d0d0 - c001353e: 8522 mv a0,s0 - c0013540: f93ff0ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> - c0013544: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6789 + c001361c: 0004a697 auipc a3,0x4a + c0013620: be468693 addi a3,a3,-1052 # c005d200 + c0013624: 0004a617 auipc a2,0x4a + c0013628: cdc60613 addi a2,a2,-804 # c005d300 + c001362c: 8522 mv a0,s0 + c001362e: f93ff0ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> + c0013632: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6797 } - c0013546: 60e2 ld ra,24(sp) - c0013548: 6442 ld s0,16(sp) - c001354a: 853e mv a0,a5 - c001354c: 6105 addi sp,sp,32 - c001354e: 8082 ret + c0013634: 60e2 ld ra,24(sp) + c0013636: 6442 ld s0,16(sp) + c0013638: 853e mv a0,a5 + c001363a: 6105 addi sp,sp,32 + c001363c: 8082 ret -00000000c0013550 : +00000000c001363e : JS_ThrowTypeErrorInvalidClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6892 name = rt->class_array[class_id].class_name; - c0013550: 02800713 li a4,40 - c0013554: 02e585b3 mul a1,a1,a4 - c0013558: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6881 + c001363e: 02800713 li a4,40 + c0013642: 02e585b3 mul a1,a1,a4 + c0013646: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6889 { - c001355a: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6885 + c0013648: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6893 return JS_ThrowTypeErrorAtom(ctx, "%s object expected", name); - c001355c: 0004a697 auipc a3,0x4a - c0013560: a7468693 addi a3,a3,-1420 # c005cfd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6884 + c001364a: 0004a697 auipc a3,0x4a + c001364e: bb668693 addi a3,a3,-1098 # c005d200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6892 name = rt->class_array[class_id].class_name; - c0013564: 7bbc ld a5,112(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6885 + c0013652: 7bbc ld a5,112(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6893 return JS_ThrowTypeErrorAtom(ctx, "%s object expected", name); - c0013566: 0004a617 auipc a2,0x4a - c001356a: 5c260613 addi a2,a2,1474 # c005db28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6884 + c0013654: 0004a617 auipc a2,0x4a + c0013658: 70460613 addi a2,a2,1796 # c005dd58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6892 name = rt->class_array[class_id].class_name; - c001356e: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6885 + c001365c: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6893 return JS_ThrowTypeErrorAtom(ctx, "%s object expected", name); - c0013570: 41cc lw a1,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6886 + c001365e: 41cc lw a1,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6894 } - c0013572: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6885 + c0013660: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6893 return JS_ThrowTypeErrorAtom(ctx, "%s object expected", name); - c0013574: f5fff06f j c00134d2 <__JS_ThrowTypeErrorAtom> + c0013662: f5fff06f j c00135c0 <__JS_ThrowTypeErrorAtom> -00000000c0013578 : +00000000c0013666 : JS_GetOpaque2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9928 { - c0013578: 7179 addi sp,sp,-48 - c001357a: 87b2 mv a5,a2 - c001357c: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9921 + c0013666: 7179 addi sp,sp,-48 + c0013668: 87b2 mv a5,a2 + c001366a: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9929 void *p = JS_GetOpaque(obj, class_id); - c001357e: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9920 + c001366c: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9928 { - c0013580: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9921 + c001366e: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9929 void *p = JS_GetOpaque(obj, class_id); - c0013582: 852e mv a0,a1 - c0013584: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9920 -{ - c0013586: f022 sd s0,32(sp) - c0013588: ec26 sd s1,24(sp) - c001358a: f406 sd ra,40(sp) - c001358c: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9921 + c0013670: 852e mv a0,a1 + c0013672: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9928 +{ + c0013674: f022 sd s0,32(sp) + c0013676: ec26 sd s1,24(sp) + c0013678: f406 sd ra,40(sp) + c001367a: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9929 void *p = JS_GetOpaque(obj, class_id); - c001358e: b24f70ef jal ra,c000a8b2 - c0013592: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9922 + c001367c: b24f70ef jal ra,c000a9a0 + c0013680: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9930 if (unlikely(!p)) { - c0013594: e509 bnez a0,c001359e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9923 + c0013682: e509 bnez a0,c001368c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9931 JS_ThrowTypeErrorInvalidClass(ctx, class_id); - c0013596: 85a6 mv a1,s1 - c0013598: 854a mv a0,s2 - c001359a: fb7ff0ef jal ra,c0013550 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9926 -} - c001359e: 70a2 ld ra,40(sp) - c00135a0: 8522 mv a0,s0 - c00135a2: 7402 ld s0,32(sp) - c00135a4: 64e2 ld s1,24(sp) - c00135a6: 6942 ld s2,16(sp) - c00135a8: 6145 addi sp,sp,48 - c00135aa: 8082 ret - -00000000c00135ac : + c0013684: 85a6 mv a1,s1 + c0013686: 854a mv a0,s2 + c0013688: fb7ff0ef jal ra,c001363e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9934 +} + c001368c: 70a2 ld ra,40(sp) + c001368e: 8522 mv a0,s0 + c0013690: 7402 ld s0,32(sp) + c0013692: 64e2 ld s1,24(sp) + c0013694: 6942 ld s2,16(sp) + c0013696: 6145 addi sp,sp,48 + c0013698: 8082 ret + +00000000c001369a : js_map_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47252 { - c00135ac: 711d addi sp,sp,-96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47245 + c001369a: 711d addi sp,sp,-96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47253 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c00135ae: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47244 -{ - c00135b2: e8a2 sd s0,80(sp) - c00135b4: e4a6 sd s1,72(sp) - c00135b6: ec86 sd ra,88(sp) - c00135b8: 84aa mv s1,a0 - c00135ba: e82e sd a1,16(sp) - c00135bc: ec32 sd a2,24(sp) - c00135be: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47245 + c001369c: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47252 +{ + c00136a0: e8a2 sd s0,80(sp) + c00136a2: e4a6 sd s1,72(sp) + c00136a4: ec86 sd ra,88(sp) + c00136a6: 84aa mv s1,a0 + c00136a8: e82e sd a1,16(sp) + c00136aa: ec32 sd a2,24(sp) + c00136ac: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47253 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c00135c0: fb9ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47249 + c00136ae: fb9ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47257 if (!s) - c00135c4: e919 bnez a0,c00135da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47250 + c00136b2: e919 bnez a0,c00136c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47258 return JS_EXCEPTION; - c00135c6: f802 sd zero,48(sp) - c00135c8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47257 + c00136b4: f802 sd zero,48(sp) + c00136b6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47265 } - c00135ca: 60e6 ld ra,88(sp) - c00135cc: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47254 + c00136b8: 60e6 ld ra,88(sp) + c00136ba: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47262 return JS_UNDEFINED; - c00135ce: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47257 -} - c00135d0: 7542 ld a0,48(sp) - c00135d2: 75e2 ld a1,56(sp) - c00135d4: 64a6 ld s1,72(sp) - c00135d6: 6125 addi sp,sp,96 - c00135d8: 8082 ret - c00135da: 201c fld fa5,0(s0) - c00135dc: 6414 ld a3,8(s0) + c00136bc: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47265 +} + c00136be: 7542 ld a0,48(sp) + c00136c0: 75e2 ld a1,56(sp) + c00136c2: 64a6 ld s1,72(sp) + c00136c4: 6125 addi sp,sp,96 + c00136c6: 8082 ret + c00136c8: 201c fld fa5,0(s0) + c00136ca: 6414 ld a3,8(s0) map_normalize_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47018 if (JS_TAG_IS_FLOAT64(tag) && JS_VALUE_GET_FLOAT64(key) == 0.0) { - c00135de: 479d li a5,7 - c00135e0: a43e fsd fa5,8(sp) - c00135e2: 0006871b sext.w a4,a3 - c00135e6: 85aa mv a1,a0 - c00135e8: 00f71a63 bne a4,a5,c00135fc - c00135ec: f20007d3 fmv.d.x fa5,zero - c00135f0: 2722 fld fa4,8(sp) - c00135f2: a2f727d3 feq.d a5,fa4,fa5 - c00135f6: c399 beqz a5,c00135fc - c00135f8: 4681 li a3,0 - c00135fa: a43e fsd fa5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47013 + c00136cc: 479d li a5,7 + c00136ce: a43e fsd fa5,8(sp) + c00136d0: 0006871b sext.w a4,a3 + c00136d4: 85aa mv a1,a0 + c00136d6: 00f71a63 bne a4,a5,c00136ea + c00136da: f20007d3 fmv.d.x fa5,zero + c00136de: 2722 fld fa4,8(sp) + c00136e0: a2f727d3 feq.d a5,fa4,fa5 + c00136e4: c399 beqz a5,c00136ea + c00136e6: 4681 li a3,0 + c00136e8: a43e fsd fa5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47021 return key; - c00135fc: 27a2 fld fa5,8(sp) + c00136ea: 27a2 fld fa5,8(sp) js_map_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47260 mr = map_find_record(ctx, s, key); - c00135fe: 6622 ld a2,8(sp) - c0013600: 8526 mv a0,s1 - c0013602: b03e fsd fa5,32(sp) - c0013604: f436 sd a3,40(sp) - c0013606: f16f40ef jal ra,c0007d1c - c001360a: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47253 + c00136ec: 6622 ld a2,8(sp) + c00136ee: 8526 mv a0,s1 + c00136f0: b03e fsd fa5,32(sp) + c00136f2: f436 sd a3,40(sp) + c00136f4: f16f40ef jal ra,c0007e0a + c00136f8: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47261 if (!mr) - c001360c: e501 bnez a0,c0013614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47254 + c00136fa: e501 bnez a0,c0013702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47262 return JS_UNDEFINED; - c001360e: f802 sd zero,48(sp) - c0013610: 478d li a5,3 - c0013612: bf65 j c00135ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47257 -} - c0013614: 6446 ld s0,80(sp) - c0013616: 60e6 ld ra,88(sp) - c0013618: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47256 + c00136fc: f802 sd zero,48(sp) + c00136fe: 478d li a5,3 + c0013700: bf65 j c00136b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47265 +} + c0013702: 6446 ld s0,80(sp) + c0013704: 60e6 ld ra,88(sp) + c0013706: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47264 return JS_DupValue(ctx, mr->value); - c001361a: 6528 ld a0,72(a0) - c001361c: 6bac ld a1,80(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47257 + c0013708: 6528 ld a0,72(a0) + c001370a: 6bac ld a1,80(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47265 } - c001361e: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47256 + c001370c: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47264 return JS_DupValue(ctx, mr->value); - c0013620: 84ef306f j c000666e + c001370e: 84ef306f j c000675c -00000000c0013624 : +00000000c0013712 : js_map_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47275 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47283 { - c0013624: 711d addi sp,sp,-96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47276 + c0013712: 711d addi sp,sp,-96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47284 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013626: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47275 + c0013714: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47283 { - c001362a: e8a2 sd s0,80(sp) - c001362c: e4a6 sd s1,72(sp) - c001362e: ec86 sd ra,88(sp) - c0013630: 842a mv s0,a0 - c0013632: e82e sd a1,16(sp) - c0013634: ec32 sd a2,24(sp) - c0013636: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47276 + c0013718: e8a2 sd s0,80(sp) + c001371a: e4a6 sd s1,72(sp) + c001371c: ec86 sd ra,88(sp) + c001371e: 842a mv s0,a0 + c0013720: e82e sd a1,16(sp) + c0013722: ec32 sd a2,24(sp) + c0013724: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47284 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013638: f41ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47280 + c0013726: f41ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47288 if (!s) - c001363c: e919 bnez a0,c0013652 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47281 + c001372a: e919 bnez a0,c0013740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47289 return JS_EXCEPTION; - c001363e: f802 sd zero,48(sp) - c0013640: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47288 + c001372c: f802 sd zero,48(sp) + c001372e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47296 } - c0013642: 60e6 ld ra,88(sp) - c0013644: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47287 + c0013730: 60e6 ld ra,88(sp) + c0013732: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47295 return JS_TRUE; - c0013646: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47288 -} - c0013648: 7542 ld a0,48(sp) - c001364a: 75e2 ld a1,56(sp) - c001364c: 64a6 ld s1,72(sp) - c001364e: 6125 addi sp,sp,96 - c0013650: 8082 ret - c0013652: 209c fld fa5,0(s1) - c0013654: 6494 ld a3,8(s1) + c0013734: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47296 +} + c0013736: 7542 ld a0,48(sp) + c0013738: 75e2 ld a1,56(sp) + c001373a: 64a6 ld s1,72(sp) + c001373c: 6125 addi sp,sp,96 + c001373e: 8082 ret + c0013740: 209c fld fa5,0(s1) + c0013742: 6494 ld a3,8(s1) map_normalize_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47018 if (JS_TAG_IS_FLOAT64(tag) && JS_VALUE_GET_FLOAT64(key) == 0.0) { - c0013656: 479d li a5,7 - c0013658: a43e fsd fa5,8(sp) - c001365a: 0006871b sext.w a4,a3 - c001365e: 85aa mv a1,a0 - c0013660: 00f71a63 bne a4,a5,c0013674 - c0013664: f20007d3 fmv.d.x fa5,zero - c0013668: 2722 fld fa4,8(sp) - c001366a: a2f727d3 feq.d a5,fa4,fa5 - c001366e: c399 beqz a5,c0013674 - c0013670: 4681 li a3,0 - c0013672: a43e fsd fa5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47013 + c0013744: 479d li a5,7 + c0013746: a43e fsd fa5,8(sp) + c0013748: 0006871b sext.w a4,a3 + c001374c: 85aa mv a1,a0 + c001374e: 00f71a63 bne a4,a5,c0013762 + c0013752: f20007d3 fmv.d.x fa5,zero + c0013756: 2722 fld fa4,8(sp) + c0013758: a2f727d3 feq.d a5,fa4,fa5 + c001375c: c399 beqz a5,c0013762 + c001375e: 4681 li a3,0 + c0013760: a43e fsd fa5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47021 return key; - c0013674: 27a2 fld fa5,8(sp) + c0013762: 27a2 fld fa5,8(sp) js_map_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47283 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47291 mr = map_find_record(ctx, s, key); - c0013676: 6622 ld a2,8(sp) - c0013678: 8522 mv a0,s0 - c001367a: e42e sd a1,8(sp) - c001367c: b03e fsd fa5,32(sp) - c001367e: f436 sd a3,40(sp) - c0013680: e9cf40ef jal ra,c0007d1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47284 + c0013764: 6622 ld a2,8(sp) + c0013766: 8522 mv a0,s0 + c0013768: e42e sd a1,8(sp) + c001376a: b03e fsd fa5,32(sp) + c001376c: f436 sd a3,40(sp) + c001376e: e9cf40ef jal ra,c0007e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47292 if (!mr) - c0013684: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47283 + c0013772: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47291 mr = map_find_record(ctx, s, key); - c0013686: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47284 + c0013774: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47292 if (!mr) - c0013688: e501 bnez a0,c0013690 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47285 + c0013776: e501 bnez a0,c001377e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47293 return JS_FALSE; - c001368a: f802 sd zero,48(sp) - c001368c: 4785 li a5,1 - c001368e: bf55 j c0013642 + c0013778: f802 sd zero,48(sp) + c001377a: 4785 li a5,1 + c001377c: bf55 j c0013730 map_delete_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47165 if (mr->empty) - c0013690: 415c lw a5,4(a0) - c0013692: e781 bnez a5,c001369a - c0013694: 6c08 ld a0,24(s0) - c0013696: e62f50ef jal ra,c0008cf8 + c001377e: 415c lw a5,4(a0) + c0013780: e781 bnez a5,c0013788 + c0013782: 6c08 ld a0,24(s0) + c0013784: e62f50ef jal ra,c0008de6 js_map_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47287 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47295 return JS_TRUE; - c001369a: 4785 li a5,1 - c001369c: f83e sd a5,48(sp) - c001369e: b755 j c0013642 + c0013788: 4785 li a5,1 + c001378a: f83e sd a5,48(sp) + c001378c: b755 j c0013730 -00000000c00136a0 : +00000000c001378e : js_map_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47269 { - c00136a0: 7159 addi sp,sp,-112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47262 + c001378e: 7159 addi sp,sp,-112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47270 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c00136a2: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47261 + c0013790: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47269 { - c00136a6: f0a2 sd s0,96(sp) - c00136a8: eca6 sd s1,88(sp) - c00136aa: f486 sd ra,104(sp) - c00136ac: 84aa mv s1,a0 - c00136ae: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47262 + c0013794: f0a2 sd s0,96(sp) + c0013796: eca6 sd s1,88(sp) + c0013798: f486 sd ra,104(sp) + c001379a: 84aa mv s1,a0 + c001379c: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47270 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c00136b0: ec9ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47266 + c001379e: ec9ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47274 if (!s) - c00136b4: e919 bnez a0,c00136ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47267 + c00137a2: e919 bnez a0,c00137b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47275 return JS_EXCEPTION; - c00136b6: f802 sd zero,48(sp) - c00136b8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47271 -} - c00136ba: 70a6 ld ra,104(sp) - c00136bc: 7406 ld s0,96(sp) - c00136be: fc3e sd a5,56(sp) - c00136c0: 7542 ld a0,48(sp) - c00136c2: 75e2 ld a1,56(sp) - c00136c4: 64e6 ld s1,88(sp) - c00136c6: 6165 addi sp,sp,112 - c00136c8: 8082 ret - c00136ca: 201c fld fa5,0(s0) - c00136cc: 6414 ld a3,8(s0) + c00137a4: f802 sd zero,48(sp) + c00137a6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47279 +} + c00137a8: 70a6 ld ra,104(sp) + c00137aa: 7406 ld s0,96(sp) + c00137ac: fc3e sd a5,56(sp) + c00137ae: 7542 ld a0,48(sp) + c00137b0: 75e2 ld a1,56(sp) + c00137b2: 64e6 ld s1,88(sp) + c00137b4: 6165 addi sp,sp,112 + c00137b6: 8082 ret + c00137b8: 201c fld fa5,0(s0) + c00137ba: 6414 ld a3,8(s0) map_normalize_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47018 if (JS_TAG_IS_FLOAT64(tag) && JS_VALUE_GET_FLOAT64(key) == 0.0) { - c00136ce: 479d li a5,7 - c00136d0: a43e fsd fa5,8(sp) - c00136d2: 0006871b sext.w a4,a3 - c00136d6: 85aa mv a1,a0 - c00136d8: 00f71a63 bne a4,a5,c00136ec - c00136dc: f20007d3 fmv.d.x fa5,zero - c00136e0: 2722 fld fa4,8(sp) - c00136e2: a2f727d3 feq.d a5,fa4,fa5 - c00136e6: c399 beqz a5,c00136ec - c00136e8: 4681 li a3,0 - c00136ea: a43e fsd fa5,8(sp) + c00137bc: 479d li a5,7 + c00137be: a43e fsd fa5,8(sp) + c00137c0: 0006871b sext.w a4,a3 + c00137c4: 85aa mv a1,a0 + c00137c6: 00f71a63 bne a4,a5,c00137da + c00137ca: f20007d3 fmv.d.x fa5,zero + c00137ce: 2722 fld fa4,8(sp) + c00137d0: a2f727d3 feq.d a5,fa4,fa5 + c00137d4: c399 beqz a5,c00137da + c00137d6: 4681 li a3,0 + c00137d8: a43e fsd fa5,8(sp) js_map_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47269 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47277 mr = map_find_record(ctx, s, key); - c00136ec: 6622 ld a2,8(sp) - c00136ee: 8526 mv a0,s1 - c00136f0: e2cf40ef jal ra,c0007d1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47270 + c00137da: 6622 ld a2,8(sp) + c00137dc: 8526 mv a0,s1 + c00137de: e2cf40ef jal ra,c0007e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47278 return JS_NewBool(ctx, (mr != NULL)); - c00136f4: 00a03533 snez a0,a0 + c00137e2: 00a03533 snez a0,a0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00136f8: c282 sw zero,68(sp) - c00136fa: c0aa sw a0,64(sp) - c00136fc: 6786 ld a5,64(sp) - c00136fe: f83e sd a5,48(sp) - c0013700: 4785 li a5,1 - c0013702: bf65 j c00136ba - -00000000c0013704 : + c00137e6: c282 sw zero,68(sp) + c00137e8: c0aa sw a0,64(sp) + c00137ea: 6786 ld a5,64(sp) + c00137ec: f83e sd a5,48(sp) + c00137ee: 4785 li a5,1 + c00137f0: bf65 j c00137a8 + +00000000c00137f2 : js_map_get_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47315 { - c0013704: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47308 + c00137f2: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47316 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013706: 0226869b addiw a3,a3,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47307 + c00137f4: 0226869b addiw a3,a3,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47315 { - c001370a: fc06 sd ra,56(sp) - c001370c: e02e sd a1,0(sp) - c001370e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47308 + c00137f8: fc06 sd ra,56(sp) + c00137fa: e02e sd a1,0(sp) + c00137fc: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47316 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013710: e69ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47309 + c00137fe: e69ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47317 if (!s) - c0013714: e909 bnez a0,c0013726 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47310 + c0013802: e909 bnez a0,c0013814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47318 return JS_EXCEPTION; - c0013716: 4799 li a5,6 - c0013718: e802 sd zero,16(sp) - c001371a: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47312 (discriminator 1) -} - c001371c: 70e2 ld ra,56(sp) - c001371e: 6542 ld a0,16(sp) - c0013720: 65e2 ld a1,24(sp) - c0013722: 6121 addi sp,sp,64 - c0013724: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47311 + c0013804: 4799 li a5,6 + c0013806: e802 sd zero,16(sp) + c0013808: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47320 (discriminator 1) +} + c001380a: 70e2 ld ra,56(sp) + c001380c: 6542 ld a0,16(sp) + c001380e: 65e2 ld a1,24(sp) + c0013810: 6121 addi sp,sp,64 + c0013812: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47319 return JS_NewUint32(ctx, s->record_count); - c0013726: 4d18 lw a4,24(a0) + c0013814: 4d18 lw a4,24(a0) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0013728: 0007079b sext.w a5,a4 - c001372c: 00074a63 bltz a4,c0013740 + c0013816: 0007079b sext.w a5,a4 + c001381a: 00074a63 bltz a4,c001382e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0013730: d202 sw zero,36(sp) - c0013732: d03e sw a5,32(sp) - c0013734: 7702 ld a4,32(sp) - c0013736: e83a sd a4,16(sp) - c0013738: 4701 li a4,0 + c001381e: d202 sw zero,36(sp) + c0013820: d03e sw a5,32(sp) + c0013822: 7702 ld a4,32(sp) + c0013824: e83a sd a4,16(sp) + c0013826: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c001373a: c83e sw a5,16(sp) - c001373c: ec3a sd a4,24(sp) - c001373e: bff9 j c001371c + c0013828: c83e sw a5,16(sp) + c001382a: ec3a sd a4,24(sp) + c001382c: bff9 j c001380a /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0013740: d21707d3 fcvt.d.wu fa5,a4 - c0013744: 471d li a4,7 - c0013746: e20787d3 fmv.x.d a5,fa5 + c001382e: d21707d3 fcvt.d.wu fa5,a4 + c0013832: 471d li a4,7 + c0013834: e20787d3 fmv.x.d a5,fa5 js_map_get_size(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001374a: a83e fsd fa5,16(sp) - c001374c: 2781 sext.w a5,a5 - c001374e: b7f5 j c001373a + c0013838: a83e fsd fa5,16(sp) + c001383a: 2781 sext.w a5,a5 + c001383c: b7f5 j c0013828 -00000000c0013750 : +00000000c001383e : js_map_clear(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47300 { - c0013750: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47293 + c001383e: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47301 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013752: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47292 -{ - c0013756: f84a sd s2,48(sp) - c0013758: e486 sd ra,72(sp) - c001375a: e0a2 sd s0,64(sp) - c001375c: fc26 sd s1,56(sp) - c001375e: f44e sd s3,40(sp) - c0013760: 892a mv s2,a0 - c0013762: e02e sd a1,0(sp) - c0013764: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47293 + c0013840: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47300 +{ + c0013844: f84a sd s2,48(sp) + c0013846: e486 sd ra,72(sp) + c0013848: e0a2 sd s0,64(sp) + c001384a: fc26 sd s1,56(sp) + c001384c: f44e sd s3,40(sp) + c001384e: 892a mv s2,a0 + c0013850: e02e sd a1,0(sp) + c0013852: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47301 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0013766: e13ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47297 + c0013854: e13ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47305 if (!s) - c001376a: ed09 bnez a0,c0013784 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47298 + c0013858: ed09 bnez a0,c0013872 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47306 return JS_EXCEPTION; - c001376c: e802 sd zero,16(sp) - c001376e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47304 + c001385a: e802 sd zero,16(sp) + c001385c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47312 } - c0013770: 60a6 ld ra,72(sp) - c0013772: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47303 + c001385e: 60a6 ld ra,72(sp) + c0013860: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47311 return JS_UNDEFINED; - c0013774: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47304 -} - c0013776: 6542 ld a0,16(sp) - c0013778: 65e2 ld a1,24(sp) - c001377a: 74e2 ld s1,56(sp) - c001377c: 7942 ld s2,48(sp) - c001377e: 79a2 ld s3,40(sp) - c0013780: 6161 addi sp,sp,80 - c0013782: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47299 + c0013862: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47312 +} + c0013864: 6542 ld a0,16(sp) + c0013866: 65e2 ld a1,24(sp) + c0013868: 74e2 ld s1,56(sp) + c001386a: 7942 ld s2,48(sp) + c001386c: 79a2 ld s3,40(sp) + c001386e: 6161 addi sp,sp,80 + c0013870: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47307 list_for_each_safe(el, el1, &s->records) { - c0013784: 6910 ld a2,16(a0) - c0013786: 842a mv s0,a0 - c0013788: 00850993 addi s3,a0,8 # 8008 <__clzdi2-0xbfff7ff8> - c001378c: 6604 ld s1,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47299 (discriminator 1) - c001378e: 01361563 bne a2,s3,c0013798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47303 + c0013872: 6910 ld a2,16(a0) + c0013874: 842a mv s0,a0 + c0013876: 00850993 addi s3,a0,8 # 8008 <__clzdi2-0xbfff7ff8> + c001387a: 6604 ld s1,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47307 (discriminator 1) + c001387c: 01361563 bne a2,s3,c0013886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47311 return JS_UNDEFINED; - c0013792: e802 sd zero,16(sp) - c0013794: 478d li a5,3 - c0013796: bfe9 j c0013770 + c0013880: e802 sd zero,16(sp) + c0013882: 478d li a5,3 + c0013884: bfe9 j c001385e map_delete_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47157 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47165 (discriminator 3) if (mr->empty) - c0013798: fec62783 lw a5,-20(a2) - c001379c: e799 bnez a5,c00137aa - c001379e: 01893503 ld a0,24(s2) - c00137a2: 1621 addi a2,a2,-24 - c00137a4: 85a2 mv a1,s0 - c00137a6: d52f50ef jal ra,c0008cf8 + c0013886: fec62783 lw a5,-20(a2) + c001388a: e799 bnez a5,c0013898 + c001388c: 01893503 ld a0,24(s2) + c0013890: 1621 addi a2,a2,-24 + c0013892: 85a2 mv a1,s0 + c0013894: d52f50ef jal ra,c0008de6 js_map_clear(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47307 list_for_each_safe(el, el1, &s->records) { - c00137aa: 8626 mv a2,s1 - c00137ac: 6484 ld s1,8(s1) - c00137ae: b7c5 j c001378e + c0013898: 8626 mv a2,s1 + c001389a: 6484 ld s1,8(s1) + c001389c: b7c5 j c001387c -00000000c00137b0 : +00000000c001389e : js_array_buffer_get_byteLength(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52863 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52871 { - c00137b0: 7139 addi sp,sp,-64 - c00137b2: fc06 sd ra,56(sp) - c00137b4: e02e sd a1,0(sp) - c00137b6: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52864 + c001389e: 7139 addi sp,sp,-64 + c00138a0: fc06 sd ra,56(sp) + c00138a2: e02e sd a1,0(sp) + c00138a4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52872 JSArrayBuffer *abuf = JS_GetOpaque2(ctx, this_val, class_id); - c00137b8: dc1ff0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52865 + c00138a6: dc1ff0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52873 if (!abuf) - c00137bc: e909 bnez a0,c00137ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52866 + c00138aa: e909 bnez a0,c00138bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52874 return JS_EXCEPTION; - c00137be: 4799 li a5,6 - c00137c0: e802 sd zero,16(sp) - c00137c2: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52869 (discriminator 1) -} - c00137c4: 70e2 ld ra,56(sp) - c00137c6: 6542 ld a0,16(sp) - c00137c8: 65e2 ld a1,24(sp) - c00137ca: 6121 addi sp,sp,64 - c00137cc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52868 + c00138ac: 4799 li a5,6 + c00138ae: e802 sd zero,16(sp) + c00138b0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52877 (discriminator 1) +} + c00138b2: 70e2 ld ra,56(sp) + c00138b4: 6542 ld a0,16(sp) + c00138b6: 65e2 ld a1,24(sp) + c00138b8: 6121 addi sp,sp,64 + c00138ba: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52876 return JS_NewUint32(ctx, abuf->byte_length); - c00137ce: 411c lw a5,0(a0) + c00138bc: 411c lw a5,0(a0) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c00137d0: 0007ca63 bltz a5,c00137e4 + c00138be: 0007ca63 bltz a5,c00138d2 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00137d4: d202 sw zero,36(sp) - c00137d6: d03e sw a5,32(sp) - c00137d8: 7702 ld a4,32(sp) - c00137da: e83a sd a4,16(sp) - c00137dc: 4701 li a4,0 + c00138c2: d202 sw zero,36(sp) + c00138c4: d03e sw a5,32(sp) + c00138c6: 7702 ld a4,32(sp) + c00138c8: e83a sd a4,16(sp) + c00138ca: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c00137de: c83e sw a5,16(sp) - c00137e0: ec3a sd a4,24(sp) - c00137e2: b7cd j c00137c4 + c00138cc: c83e sw a5,16(sp) + c00138ce: ec3a sd a4,24(sp) + c00138d0: b7cd j c00138b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c00137e4: d21787d3 fcvt.d.wu fa5,a5 - c00137e8: 471d li a4,7 - c00137ea: e20787d3 fmv.x.d a5,fa5 + c00138d2: d21787d3 fcvt.d.wu fa5,a5 + c00138d6: 471d li a4,7 + c00138d8: e20787d3 fmv.x.d a5,fa5 js_array_buffer_get_byteLength(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00137ee: a83e fsd fa5,16(sp) - c00137f0: 2781 sext.w a5,a5 - c00137f2: b7f5 j c00137de + c00138dc: a83e fsd fa5,16(sp) + c00138de: 2781 sext.w a5,a5 + c00138e0: b7f5 j c00138cc -00000000c00137f4 : +00000000c00138e2 : JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34478 -{ - c00137f4: 711d addi sp,sp,-96 - c00137f6: e0ca sd s2,64(sp) - c00137f8: ec86 sd ra,88(sp) - c00137fa: e8a2 sd s0,80(sp) - c00137fc: e4a6 sd s1,72(sp) - c00137fe: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34479 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34486 +{ + c00138e2: 711d addi sp,sp,-96 + c00138e4: e0ca sd s2,64(sp) + c00138e6: ec86 sd ra,88(sp) + c00138e8: e8a2 sd s0,80(sp) + c00138ea: e4a6 sd s1,72(sp) + c00138ec: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34487 if (unlikely(!ctx->eval_internal)) { - c0013800: 1b853703 ld a4,440(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34478 + c00138ee: 1b853703 ld a4,440(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34486 { - c0013804: f02e sd a1,32(sp) - c0013806: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34479 + c00138f2: f02e sd a1,32(sp) + c00138f4: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34487 if (unlikely(!ctx->eval_internal)) { - c0013808: ef01 bnez a4,c0013820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34485 -} - c001380a: 6446 ld s0,80(sp) - c001380c: 60e6 ld ra,88(sp) - c001380e: 64a6 ld s1,72(sp) - c0013810: 6906 ld s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34480 + c00138f6: ef01 bnez a4,c001390e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34493 +} + c00138f8: 6446 ld s0,80(sp) + c00138fa: 60e6 ld ra,88(sp) + c00138fc: 64a6 ld s1,72(sp) + c00138fe: 6906 ld s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34488 return JS_ThrowTypeError(ctx, "eval is not supported"); - c0013812: 0004a597 auipc a1,0x4a - c0013816: 32e58593 addi a1,a1,814 # c005db40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34485 + c0013900: 0004a597 auipc a1,0x4a + c0013904: 47058593 addi a1,a1,1136 # c005dd70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34493 } - c001381a: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34480 + c0013908: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34488 return JS_ThrowTypeError(ctx, "eval is not supported"); - c001381c: bdbff06f j c00133f6 - c0013820: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34482 + c001390a: bdbff06f j c00134e4 + c001390e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34490 _d("JS_EvalInternal: input="); write(1, input, input_len); _d("\n");//// - c0013822: 465d li a2,23 - c0013824: 0004a597 auipc a1,0x4a - c0013828: 33458593 addi a1,a1,820 # c005db58 - c001382c: 4505 li a0,1 - c001382e: 84b6 mv s1,a3 - c0013830: ec46 sd a7,24(sp) - c0013832: e842 sd a6,16(sp) - c0013834: e43e sd a5,8(sp) - c0013836: 613430ef jal ra,c0057648 - c001383a: 864a mv a2,s2 - c001383c: 85a6 mv a1,s1 - c001383e: 4505 li a0,1 - c0013840: 609430ef jal ra,c0057648 - c0013844: 4605 li a2,1 - c0013846: 0005d597 auipc a1,0x5d - c001384a: 2fa58593 addi a1,a1,762 # c0070b40 - c001384e: 4505 li a0,1 - c0013850: 5f9430ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34483 + c0013910: 465d li a2,23 + c0013912: 0004a597 auipc a1,0x4a + c0013916: 47658593 addi a1,a1,1142 # c005dd88 + c001391a: 4505 li a0,1 + c001391c: 84b6 mv s1,a3 + c001391e: ec46 sd a7,24(sp) + c0013920: e842 sd a6,16(sp) + c0013922: e43e sd a5,8(sp) + c0013924: 6f5430ef jal ra,c0057818 + c0013928: 864a mv a2,s2 + c001392a: 85a6 mv a1,s1 + c001392c: 4505 li a0,1 + c001392e: 6eb430ef jal ra,c0057818 + c0013932: 4605 li a2,1 + c0013934: 0005d597 auipc a1,0x5d + c0013938: 46c58593 addi a1,a1,1132 # c0070da0 + c001393c: 4505 li a0,1 + c001393e: 6db430ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34491 return ctx->eval_internal(ctx, this_obj, input, input_len, filename, - c0013854: 1b843303 ld t1,440(s0) - c0013858: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34485 + c0013942: 1b843303 ld t1,440(s0) + c0013946: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34493 } - c001385a: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34483 + c0013948: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34491 return ctx->eval_internal(ctx, this_obj, input, input_len, filename, - c001385c: 68e2 ld a7,24(sp) - c001385e: 6842 ld a6,16(sp) - c0013860: 67a2 ld a5,8(sp) - c0013862: 7582 ld a1,32(sp) - c0013864: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34485 -} - c0013866: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34483 + c001394a: 68e2 ld a7,24(sp) + c001394c: 6842 ld a6,16(sp) + c001394e: 67a2 ld a5,8(sp) + c0013950: 7582 ld a1,32(sp) + c0013952: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34493 +} + c0013954: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34491 return ctx->eval_internal(ctx, this_obj, input, input_len, filename, - c0013868: 874a mv a4,s2 - c001386a: 86a6 mv a3,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34485 -} - c001386c: 6906 ld s2,64(sp) - c001386e: 64a6 ld s1,72(sp) - c0013870: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34483 + c0013956: 874a mv a4,s2 + c0013958: 86a6 mv a3,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34493 +} + c001395a: 6906 ld s2,64(sp) + c001395c: 64a6 ld s1,72(sp) + c001395e: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34491 return ctx->eval_internal(ctx, this_obj, input, input_len, filename, - c0013872: 8302 jr t1 + c0013960: 8302 jr t1 -00000000c0013874 : +00000000c0013962 : JS_EvalThis(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34508 -{ - c0013874: 711d addi sp,sp,-96 - c0013876: e4a6 sd s1,72(sp) - c0013878: ec86 sd ra,88(sp) - c001387a: 84ba mv s1,a4 - c001387c: e8a2 sd s0,80(sp) - c001387e: e0ca sd s2,64(sp) - c0013880: e82e sd a1,16(sp) - c0013882: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34516 +{ + c0013962: 711d addi sp,sp,-96 + c0013964: e4a6 sd s1,72(sp) + c0013966: ec86 sd ra,88(sp) + c0013968: 84ba mv s1,a4 + c001396a: e8a2 sd s0,80(sp) + c001396c: e0ca sd s2,64(sp) + c001396e: e82e sd a1,16(sp) + c0013970: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34520 assert(eval_type == JS_EVAL_TYPE_GLOBAL || - c0013884: 00287713 andi a4,a6,2 - c0013888: cb19 beqz a4,c001389e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34512 (discriminator 1) - c001388a: 65a1 lui a1,0x8 - c001388c: 4601 li a2,0 - c001388e: 6d058593 addi a1,a1,1744 # 86d0 <__clzdi2-0xbfff7930> - c0013892: 00049517 auipc a0,0x49 - c0013896: 1e650513 addi a0,a0,486 # c005ca78 - c001389a: 17e400ef jal ra,c0053a18 <__assert> - c001389e: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34514 (discriminator 2) + c0013972: 00287713 andi a4,a6,2 + c0013976: cb19 beqz a4,c001398c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34520 (discriminator 1) + c0013978: 65a1 lui a1,0x8 + c001397a: 4601 li a2,0 + c001397c: 6d858593 addi a1,a1,1752 # 86d8 <__clzdi2-0xbfff7928> + c0013980: 00049517 auipc a0,0x49 + c0013984: 2c850513 addi a0,a0,712 # c005cc48 + c0013988: 260400ef jal ra,c0053be8 <__assert> + c001398c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34522 (discriminator 2) _d("JS_EvalThis: input="); write(1, input, input_len); _d("\n");//// - c00138a0: 464d li a2,19 - c00138a2: 0004a597 auipc a1,0x4a - c00138a6: 2ce58593 addi a1,a1,718 # c005db70 - c00138aa: 4505 li a0,1 - c00138ac: 8436 mv s0,a3 - c00138ae: e442 sd a6,8(sp) - c00138b0: e03e sd a5,0(sp) - c00138b2: 597430ef jal ra,c0057648 - c00138b6: 8626 mv a2,s1 - c00138b8: 85a2 mv a1,s0 - c00138ba: 4505 li a0,1 - c00138bc: 58d430ef jal ra,c0057648 - c00138c0: 4605 li a2,1 - c00138c2: 0005d597 auipc a1,0x5d - c00138c6: 27e58593 addi a1,a1,638 # c0070b40 - c00138ca: 4505 li a0,1 - c00138cc: 57d430ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34515 (discriminator 2) + c001398e: 464d li a2,19 + c0013990: 0004a597 auipc a1,0x4a + c0013994: 41058593 addi a1,a1,1040 # c005dda0 + c0013998: 4505 li a0,1 + c001399a: 8436 mv s0,a3 + c001399c: e442 sd a6,8(sp) + c001399e: e03e sd a5,0(sp) + c00139a0: 679430ef jal ra,c0057818 + c00139a4: 8626 mv a2,s1 + c00139a6: 85a2 mv a1,s0 + c00139a8: 4505 li a0,1 + c00139aa: 66f430ef jal ra,c0057818 + c00139ae: 4605 li a2,1 + c00139b0: 0005d597 auipc a1,0x5d + c00139b4: 3f058593 addi a1,a1,1008 # c0070da0 + c00139b8: 4505 li a0,1 + c00139ba: 65f430ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 (discriminator 2) ret = JS_EvalInternal(ctx, this_obj, input, input_len, filename, - c00138d0: 86a2 mv a3,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34518 (discriminator 2) + c00139be: 86a2 mv a3,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34526 (discriminator 2) } - c00138d2: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34515 (discriminator 2) + c00139c0: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 (discriminator 2) ret = JS_EvalInternal(ctx, this_obj, input, input_len, filename, - c00138d4: 6822 ld a6,8(sp) - c00138d6: 6782 ld a5,0(sp) - c00138d8: 65c2 ld a1,16(sp) - c00138da: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34518 (discriminator 2) -} - c00138dc: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34515 (discriminator 2) + c00139c2: 6822 ld a6,8(sp) + c00139c4: 6782 ld a5,0(sp) + c00139c6: 65c2 ld a1,16(sp) + c00139c8: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34526 (discriminator 2) +} + c00139ca: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 (discriminator 2) ret = JS_EvalInternal(ctx, this_obj, input, input_len, filename, - c00138de: 8726 mv a4,s1 - c00138e0: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34518 (discriminator 2) + c00139cc: 8726 mv a4,s1 + c00139ce: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34526 (discriminator 2) } - c00138e2: 64a6 ld s1,72(sp) - c00138e4: 6906 ld s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34515 (discriminator 2) + c00139d0: 64a6 ld s1,72(sp) + c00139d2: 6906 ld s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 (discriminator 2) ret = JS_EvalInternal(ctx, this_obj, input, input_len, filename, - c00138e6: 58fd li a7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34518 (discriminator 2) + c00139d4: 58fd li a7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34526 (discriminator 2) } - c00138e8: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34515 (discriminator 2) + c00139d6: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 (discriminator 2) ret = JS_EvalInternal(ctx, this_obj, input, input_len, filename, - c00138ea: f0bff06f j c00137f4 + c00139d8: f0bff06f j c00138e2 -00000000c00138ee : +00000000c00139dc : JS_Eval(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34530 { - c00138ee: 87b6 mv a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 + c00139dc: 87b6 mv a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34531 return JS_EvalThis(ctx, ctx->global_obj, input, input_len, filename, - c00138f0: 883a mv a6,a4 - c00138f2: 86ae mv a3,a1 - c00138f4: 8732 mv a4,a2 - c00138f6: 16853583 ld a1,360(a0) - c00138fa: 17053603 ld a2,368(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34522 -{ - c00138fe: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34525 -} - c0013900: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34523 + c00139de: 883a mv a6,a4 + c00139e0: 86ae mv a3,a1 + c00139e2: 8732 mv a4,a2 + c00139e4: 16853583 ld a1,360(a0) + c00139e8: 17053603 ld a2,368(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34530 +{ + c00139ec: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34533 +} + c00139ee: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34531 return JS_EvalThis(ctx, ctx->global_obj, input, input_len, filename, - c0013902: f73ff06f j c0013874 + c00139f0: f73ff06f j c0013962 -00000000c0013906 : +00000000c00139f4 : js_promise_executor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48178 { - c0013906: 711d addi sp,sp,-96 - c0013908: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48174 + c00139f4: 711d addi sp,sp,-96 + c00139f6: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48182 if (!JS_IsUndefined(func_data[i])) - c001390a: 00882983 lw s3,8(a6) # 4008 <__clzdi2-0xbfffbff8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48170 -{ - c001390e: e0ca sd s2,64(sp) - c0013910: ec86 sd ra,88(sp) - c0013912: e8a2 sd s0,80(sp) - c0013914: e4a6 sd s1,72(sp) - c0013916: f852 sd s4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48174 + c00139f8: 00882983 lw s3,8(a6) # 4008 <__clzdi2-0xbfffbff8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48178 +{ + c00139fc: e0ca sd s2,64(sp) + c00139fe: ec86 sd ra,88(sp) + c0013a00: e8a2 sd s0,80(sp) + c0013a02: e4a6 sd s1,72(sp) + c0013a04: f852 sd s4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48182 if (!JS_IsUndefined(func_data[i])) - c0013918: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48170 + c0013a06: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48178 { - c001391a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48174 + c0013a08: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48182 if (!JS_IsUndefined(func_data[i])) - c001391c: 00f99f63 bne s3,a5,c001393a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48176 + c0013a0a: 00f99f63 bne s3,a5,c0013a28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48184 func_data[i] = JS_DupValue(ctx, argv[i]); - c0013920: 6308 ld a0,0(a4) - c0013922: 670c ld a1,8(a4) - c0013924: 8442 mv s0,a6 - c0013926: 84ba mv s1,a4 - c0013928: d47f20ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48174 + c0013a0e: 6308 ld a0,0(a4) + c0013a10: 670c ld a1,8(a4) + c0013a12: 8442 mv s0,a6 + c0013a14: 84ba mv s1,a4 + c0013a16: d47f20ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48182 if (!JS_IsUndefined(func_data[i])) - c001392c: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48176 + c0013a1a: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48184 func_data[i] = JS_DupValue(ctx, argv[i]); - c001392e: e008 sd a0,0(s0) - c0013930: e40c sd a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48174 + c0013a1c: e008 sd a0,0(s0) + c0013a1e: e40c sd a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48182 if (!JS_IsUndefined(func_data[i])) - c0013932: 01040a13 addi s4,s0,16 - c0013936: 03378063 beq a5,s3,c0013956 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48179 -} - c001393a: 6446 ld s0,80(sp) - c001393c: 60e6 ld ra,88(sp) - c001393e: 64a6 ld s1,72(sp) - c0013940: 79e2 ld s3,56(sp) - c0013942: 7a42 ld s4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48175 + c0013a20: 01040a13 addi s4,s0,16 + c0013a24: 03378063 beq a5,s3,c0013a44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 +} + c0013a28: 6446 ld s0,80(sp) + c0013a2a: 60e6 ld ra,88(sp) + c0013a2c: 64a6 ld s1,72(sp) + c0013a2e: 79e2 ld s3,56(sp) + c0013a30: 7a42 ld s4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48183 return JS_ThrowTypeError(ctx, "resolving function already set"); - c0013944: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48179 + c0013a32: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 } - c0013946: 6906 ld s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48175 + c0013a34: 6906 ld s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48183 return JS_ThrowTypeError(ctx, "resolving function already set"); - c0013948: 0004a597 auipc a1,0x4a - c001394c: 24058593 addi a1,a1,576 # c005db88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48179 + c0013a36: 0004a597 auipc a1,0x4a + c0013a3a: 38258593 addi a1,a1,898 # c005ddb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 } - c0013950: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48175 + c0013a3e: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48183 return JS_ThrowTypeError(ctx, "resolving function already set"); - c0013952: aa5ff06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48176 + c0013a40: aa5ff06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48184 func_data[i] = JS_DupValue(ctx, argv[i]); - c0013956: 6888 ld a0,16(s1) - c0013958: 6c8c ld a1,24(s1) - c001395a: d15f20ef jal ra,c000666e - c001395e: e808 sd a0,16(s0) - c0013960: 00ba3423 sd a1,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48179 -} - c0013964: 60e6 ld ra,88(sp) - c0013966: 6446 ld s0,80(sp) - c0013968: 64a6 ld s1,72(sp) - c001396a: 6906 ld s2,64(sp) - c001396c: 79e2 ld s3,56(sp) - c001396e: 7a42 ld s4,48(sp) - c0013970: 4501 li a0,0 - c0013972: 458d li a1,3 - c0013974: 6125 addi sp,sp,96 - c0013976: 8082 ret - -00000000c0013978 : + c0013a44: 6888 ld a0,16(s1) + c0013a46: 6c8c ld a1,24(s1) + c0013a48: d15f20ef jal ra,c000675c + c0013a4c: e808 sd a0,16(s0) + c0013a4e: 00ba3423 sd a1,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 +} + c0013a52: 60e6 ld ra,88(sp) + c0013a54: 6446 ld s0,80(sp) + c0013a56: 64a6 ld s1,72(sp) + c0013a58: 6906 ld s2,64(sp) + c0013a5a: 79e2 ld s3,56(sp) + c0013a5c: 7a42 ld s4,48(sp) + c0013a5e: 4501 li a0,0 + c0013a60: 458d li a1,3 + c0013a62: 6125 addi sp,sp,96 + c0013a64: 8082 ret + +00000000c0013a66 : JS_ThrowTypeErrorNotAnObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6841 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6849 { - c0013978: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6842 + c0013a66: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6850 return JS_ThrowTypeError(ctx, "not an object"); - c001397a: 0004a597 auipc a1,0x4a - c001397e: 48e58593 addi a1,a1,1166 # c005de08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6843 + c0013a68: 0004a597 auipc a1,0x4a + c0013a6c: 5d058593 addi a1,a1,1488 # c005e038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6851 } - c0013982: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6842 + c0013a70: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6850 return JS_ThrowTypeError(ctx, "not an object"); - c0013984: a73ff06f j c00133f6 + c0013a72: a73ff06f j c00134e4 -00000000c0013988 : +00000000c0013a76 : JS_IteratorClose(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15288 -{ - c0013988: 7119 addi sp,sp,-128 - c001398a: f8a2 sd s0,112(sp) - c001398c: f0ca sd s2,96(sp) - c001398e: fc86 sd ra,120(sp) - c0013990: f4a6 sd s1,104(sp) - c0013992: ecce sd s3,88(sp) - c0013994: e02e sd a1,0(sp) - c0013996: e432 sd a2,8(sp) - c0013998: 842a mv s0,a0 - c001399a: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15296 +{ + c0013a76: 7119 addi sp,sp,-128 + c0013a78: f8a2 sd s0,112(sp) + c0013a7a: f0ca sd s2,96(sp) + c0013a7c: fc86 sd ra,120(sp) + c0013a7e: f4a6 sd s1,104(sp) + c0013a80: ecce sd s3,88(sp) + c0013a82: e02e sd a1,0(sp) + c0013a84: e432 sd a2,8(sp) + c0013a86: 842a mv s0,a0 + c0013a88: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15300 if (is_exception_pending) { - c001399c: cad9 beqz a3,c0013a32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15293 + c0013a8a: cad9 beqz a3,c0013b20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15301 ex_obj = ctx->rt->current_exception; - c001399e: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15295 + c0013a8c: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15303 res = -1; - c00139a0: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15293 + c0013a8e: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15301 ex_obj = ctx->rt->current_exception; - c00139a2: 73f8 ld a4,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15294 + c0013a90: 73f8 ld a4,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15302 ctx->rt->current_exception = JS_NULL; - c00139a4: 0e07b023 sd zero,224(a5) # ffffffff800000e0 <_ebss+0xfffffffebfefefba> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15293 + c0013a92: 0e07b023 sd zero,224(a5) # ffffffff800000e0 <_ebss+0xfffffffebfefefba> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15301 ex_obj = ctx->rt->current_exception; - c00139a8: f03a sd a4,32(sp) - c00139aa: 77f8 ld a4,232(a5) - c00139ac: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15294 + c0013a96: f03a sd a4,32(sp) + c0013a98: 77f8 ld a4,232(a5) + c0013a9a: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15302 ctx->rt->current_exception = JS_NULL; - c00139ae: 4709 li a4,2 - c00139b0: f7f8 sd a4,232(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15300 + c0013a9c: 4709 li a4,2 + c0013a9e: f7f8 sd a4,232(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15308 method = JS_GetProperty(ctx, enum_obj, JS_ATOM_return); - c00139b2: 67a2 ld a5,8(sp) - c00139b4: 6702 ld a4,0(sp) + c0013aa0: 67a2 ld a5,8(sp) + c0013aa2: 6702 ld a4,0(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00139b6: 4801 li a6,0 - c00139b8: 863e mv a2,a5 - c00139ba: 4699 li a3,6 - c00139bc: 85ba mv a1,a4 - c00139be: 8522 mv a0,s0 - c00139c0: fc3e sd a5,56(sp) - c00139c2: f83a sd a4,48(sp) - c00139c4: e7ffd0ef jal ra,c0011842 + c0013aa4: 4801 li a6,0 + c0013aa6: 863e mv a2,a5 + c0013aa8: 4699 li a3,6 + c0013aaa: 85ba mv a1,a4 + c0013aac: 8522 mv a0,s0 + c0013aae: fc3e sd a5,56(sp) + c0013ab0: f83a sd a4,48(sp) + c0013ab2: e7ffd0ef jal ra,c0011930 JS_IteratorClose(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15309 if (JS_IsException(method)) { - c00139c8: 0005879b sext.w a5,a1 - c00139cc: 4999 li s3,6 + c0013ab6: 0005879b sext.w a5,a1 + c0013aba: 4999 li s3,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00139ce: 862e mv a2,a1 + c0013abc: 862e mv a2,a1 JS_IteratorClose(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15301 - c00139d0: 07378663 beq a5,s3,c0013a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15305 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15309 + c0013abe: 07378663 beq a5,s3,c0013b2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15313 (discriminator 1) if (JS_IsUndefined(method) || JS_IsNull(method)) { - c00139d4: ffe5879b addiw a5,a1,-2 - c00139d8: 4705 li a4,1 - c00139da: 02f77d63 bgeu a4,a5,c0013a14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15308 + c0013ac2: ffe5879b addiw a5,a1,-2 + c0013ac6: 4705 li a4,1 + c0013ac8: 02f77d63 bgeu a4,a5,c0013b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15316 ret = JS_CallFree(ctx, method, enum_obj, 0, NULL); - c00139de: 6682 ld a3,0(sp) - c00139e0: 6722 ld a4,8(sp) - c00139e2: 85aa mv a1,a0 - c00139e4: 4801 li a6,0 - c00139e6: 4781 li a5,0 - c00139e8: 8522 mv a0,s0 - c00139ea: e23fd0ef jal ra,c001180c - c00139ee: f82a sd a0,48(sp) - c00139f0: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15309 + c0013acc: 6682 ld a3,0(sp) + c0013ace: 6722 ld a4,8(sp) + c0013ad0: 85aa mv a1,a0 + c0013ad2: 4801 li a6,0 + c0013ad4: 4781 li a5,0 + c0013ad6: 8522 mv a0,s0 + c0013ad8: e23fd0ef jal ra,c00118fa + c0013adc: f82a sd a0,48(sp) + c0013ade: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15317 if (!is_exception_pending) { - c00139f2: 00091c63 bnez s2,c0013a0a + c0013ae0: 00091c63 bnez s2,c0013af8 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00139f6: 2581 sext.w a1,a1 + c0013ae4: 2581 sext.w a1,a1 JS_IteratorClose(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15318 if (JS_IsException(ret)) { - c00139f8: 01358863 beq a1,s3,c0013a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15312 + c0013ae6: 01358863 beq a1,s3,c0013af6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15320 } else if (!JS_IsObject(ret)) { - c00139fc: 57fd li a5,-1 - c00139fe: 00f58663 beq a1,a5,c0013a0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15313 + c0013aea: 57fd li a5,-1 + c0013aec: 00f58663 beq a1,a5,c0013af8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15321 JS_ThrowTypeErrorNotAnObject(ctx); - c0013a02: 8522 mv a0,s0 - c0013a04: f75ff0ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15311 + c0013af0: 8522 mv a0,s0 + c0013af2: f75ff0ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15319 res = -1; - c0013a08: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15317 + c0013af6: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15325 JS_FreeValue(ctx, ret); - c0013a0a: 75c2 ld a1,48(sp) - c0013a0c: 7662 ld a2,56(sp) - c0013a0e: 8522 mv a0,s0 - c0013a10: 928f40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15319 + c0013af8: 75c2 ld a1,48(sp) + c0013afa: 7662 ld a2,56(sp) + c0013afc: 8522 mv a0,s0 + c0013afe: 928f40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15327 if (is_exception_pending) { - c0013a14: 00090763 beqz s2,c0013a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15320 + c0013b02: 00090763 beqz s2,c0013b10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15328 JS_Throw(ctx, ex_obj); - c0013a18: 7582 ld a1,32(sp) - c0013a1a: 7622 ld a2,40(sp) - c0013a1c: 8522 mv a0,s0 - c0013a1e: c5ff60ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15323 -} - c0013a22: 70e6 ld ra,120(sp) - c0013a24: 7446 ld s0,112(sp) - c0013a26: 7906 ld s2,96(sp) - c0013a28: 69e6 ld s3,88(sp) - c0013a2a: 8526 mv a0,s1 - c0013a2c: 74a6 ld s1,104(sp) - c0013a2e: 6109 addi sp,sp,128 - c0013a30: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15297 + c0013b06: 7582 ld a1,32(sp) + c0013b08: 7622 ld a2,40(sp) + c0013b0a: 8522 mv a0,s0 + c0013b0c: c5ff60ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15331 +} + c0013b10: 70e6 ld ra,120(sp) + c0013b12: 7446 ld s0,112(sp) + c0013b14: 7906 ld s2,96(sp) + c0013b16: 69e6 ld s3,88(sp) + c0013b18: 8526 mv a0,s1 + c0013b1a: 74a6 ld s1,104(sp) + c0013b1c: 6109 addi sp,sp,128 + c0013b1e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15305 ex_obj = JS_UNDEFINED; - c0013a32: 478d li a5,3 - c0013a34: f002 sd zero,32(sp) - c0013a36: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15298 + c0013b20: 478d li a5,3 + c0013b22: f002 sd zero,32(sp) + c0013b24: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15306 res = 0; - c0013a38: 4481 li s1,0 - c0013a3a: bfa5 j c00139b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15302 + c0013b26: 4481 li s1,0 + c0013b28: bfa5 j c0013aa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15310 res = -1; - c0013a3c: 54fd li s1,-1 - c0013a3e: bfd9 j c0013a14 + c0013b2a: 54fd li s1,-1 + c0013b2c: bfd9 j c0013b02 -00000000c0013a40 : +00000000c0013b2e : js_regexp_get_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43733 -{ - c0013a40: 715d addi sp,sp,-80 - c0013a42: e486 sd ra,72(sp) - c0013a44: e0a2 sd s0,64(sp) - c0013a46: fc26 sd s1,56(sp) - c0013a48: e02e sd a1,0(sp) - c0013a4a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43737 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43741 +{ + c0013b2e: 715d addi sp,sp,-80 + c0013b30: e486 sd ra,72(sp) + c0013b32: e0a2 sd s0,64(sp) + c0013b34: fc26 sd s1,56(sp) + c0013b36: e02e sd a1,0(sp) + c0013b38: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43745 if (JS_VALUE_GET_TAG(this_val) != JS_TAG_OBJECT) - c0013a4c: 0006079b sext.w a5,a2 - c0013a50: 577d li a4,-1 - c0013a52: 00e78863 beq a5,a4,c0013a62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 + c0013b3a: 0006079b sext.w a5,a2 + c0013b3e: 577d li a4,-1 + c0013b40: 00e78863 beq a5,a4,c0013b50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 } - c0013a56: 6406 ld s0,64(sp) - c0013a58: 60a6 ld ra,72(sp) - c0013a5a: 74e2 ld s1,56(sp) - c0013a5c: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43738 + c0013b44: 6406 ld s0,64(sp) + c0013b46: 60a6 ld ra,72(sp) + c0013b48: 74e2 ld s1,56(sp) + c0013b4a: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43746 return JS_ThrowTypeErrorNotAnObject(ctx); - c0013a5e: f1bff06f j c0013978 - c0013a62: 84b6 mv s1,a3 + c0013b4c: f1bff06f j c0013a66 + c0013b50: 84b6 mv s1,a3 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0013a64: 0065d683 lhu a3,6(a1) - c0013a68: 4749 li a4,18 - c0013a6a: 02e69763 bne a3,a4,c0013a98 + c0013b52: 0065d683 lhu a3,6(a1) + c0013b56: 4749 li a4,18 + c0013b58: 02e69763 bne a3,a4,c0013b86 js_regexp_get_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43756 flags = lre_get_flags(re->bytecode->u.str8); - c0013a6e: 7d88 ld a0,56(a1) - c0013a70: 0541 addi a0,a0,16 - c0013a72: 11e320ef jal ra,c0045b90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43749 + c0013b5c: 7d88 ld a0,56(a1) + c0013b5e: 0541 addi a0,a0,16 + c0013b60: 200320ef jal ra,c0045d60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43757 return JS_NewBool(ctx, (flags & mask) != 0); - c0013a76: 8d65 and a0,a0,s1 - c0013a78: 2501 sext.w a0,a0 - c0013a7a: 00a03533 snez a0,a0 + c0013b64: 8d65 and a0,a0,s1 + c0013b66: 2501 sext.w a0,a0 + c0013b68: 00a03533 snez a0,a0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0013a7e: d202 sw zero,36(sp) - c0013a80: d02a sw a0,32(sp) - c0013a82: 7782 ld a5,32(sp) - c0013a84: e83e sd a5,16(sp) - c0013a86: 4785 li a5,1 + c0013b6c: d202 sw zero,36(sp) + c0013b6e: d02a sw a0,32(sp) + c0013b70: 7782 ld a5,32(sp) + c0013b72: e83e sd a5,16(sp) + c0013b74: 4785 li a5,1 js_regexp_get_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 } - c0013a88: 60a6 ld ra,72(sp) - c0013a8a: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43743 + c0013b76: 60a6 ld ra,72(sp) + c0013b78: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43751 return JS_UNDEFINED; - c0013a8c: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 + c0013b7a: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 } - c0013a8e: 6542 ld a0,16(sp) - c0013a90: 65e2 ld a1,24(sp) - c0013a92: 74e2 ld s1,56(sp) - c0013a94: 6161 addi sp,sp,80 - c0013a96: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43742 + c0013b7c: 6542 ld a0,16(sp) + c0013b7e: 65e2 ld a1,24(sp) + c0013b80: 74e2 ld s1,56(sp) + c0013b82: 6161 addi sp,sp,80 + c0013b84: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 if (js_same_value(ctx, this_val, ctx->class_proto[JS_CLASS_REGEXP])) - c0013a98: 613c ld a5,64(a0) - c0013a9a: 842a mv s0,a0 - c0013a9c: 1207b683 ld a3,288(a5) - c0013aa0: 1287b703 ld a4,296(a5) - c0013aa4: a1ef40ef jal ra,c0007cc2 - c0013aa8: c501 beqz a0,c0013ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43743 + c0013b86: 613c ld a5,64(a0) + c0013b88: 842a mv s0,a0 + c0013b8a: 1207b683 ld a3,288(a5) + c0013b8e: 1287b703 ld a4,296(a5) + c0013b92: a1ef40ef jal ra,c0007db0 + c0013b96: c501 beqz a0,c0013b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43751 return JS_UNDEFINED; - c0013aaa: e802 sd zero,16(sp) - c0013aac: 478d li a5,3 - c0013aae: bfe9 j c0013a88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43745 + c0013b98: e802 sd zero,16(sp) + c0013b9a: 478d li a5,3 + c0013b9c: bfe9 j c0013b76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43753 return JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c0013ab0: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 + c0013b9e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 } - c0013ab2: 6406 ld s0,64(sp) - c0013ab4: 60a6 ld ra,72(sp) - c0013ab6: 74e2 ld s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43745 + c0013ba0: 6406 ld s0,64(sp) + c0013ba2: 60a6 ld ra,72(sp) + c0013ba4: 74e2 ld s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43753 return JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c0013ab8: 45c9 li a1,18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43750 + c0013ba6: 45c9 li a1,18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 } - c0013aba: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43745 + c0013ba8: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43753 return JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c0013abc: a95ff06f j c0013550 + c0013baa: a95ff06f j c001363e -00000000c0013ac0 : +00000000c0013bae : JS_CheckBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7485 -{ - c0013ac0: 7139 addi sp,sp,-64 - c0013ac2: f822 sd s0,48(sp) - c0013ac4: f426 sd s1,40(sp) - c0013ac6: fc06 sd ra,56(sp) - c0013ac8: f04a sd s2,32(sp) - c0013aca: e82e sd a1,16(sp) - c0013acc: ec32 sd a2,24(sp) - c0013ace: e036 sd a3,0(sp) - c0013ad0: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7493 +{ + c0013bae: 7139 addi sp,sp,-64 + c0013bb0: f822 sd s0,48(sp) + c0013bb2: f426 sd s1,40(sp) + c0013bb4: fc06 sd ra,56(sp) + c0013bb6: f04a sd s2,32(sp) + c0013bb8: e82e sd a1,16(sp) + c0013bba: ec32 sd a2,24(sp) + c0013bbc: e036 sd a3,0(sp) + c0013bbe: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7500 if (unlikely(JS_VALUE_GET_TAG(func) != JS_TAG_OBJECT)) - c0013ad2: 0007041b sext.w s0,a4 - c0013ad6: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7485 + c0013bc0: 0007041b sext.w s0,a4 + c0013bc4: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7493 { - c0013ad8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7492 + c0013bc6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7500 if (unlikely(JS_VALUE_GET_TAG(func) != JS_TAG_OBJECT)) - c0013ada: 06f41663 bne s0,a5,c0013b46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7495 + c0013bc8: 06f41663 bne s0,a5,c0013c34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7503 if (!js_class_has_bytecode(p1->class_id)) - c0013ade: 0066d503 lhu a0,6(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7494 + c0013bcc: 0066d503 lhu a0,6(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7502 p1 = JS_VALUE_GET_OBJ(func); - c0013ae2: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7495 + c0013bd0: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7503 if (!js_class_has_bytecode(p1->class_id)) - c0013ae4: c6ff10ef jal ra,c0005752 - c0013ae8: cd39 beqz a0,c0013b46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7497 + c0013bd2: c6ff10ef jal ra,c0005840 + c0013bd6: cd39 beqz a0,c0013c34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7505 home_obj = p1->u.func.home_object; - c0013aea: 04093603 ld a2,64(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7498 + c0013bd8: 04093603 ld a2,64(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7506 if (!home_obj) - c0013aee: ce21 beqz a2,c0013b46 + c0013bdc: ce21 beqz a2,c0013c34 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0013af0: 6e18 ld a4,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0013bde: 6e18 ld a4,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0013af2: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0013be0: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013af4: 040005b7 lui a1,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0013be2: 040005b7 lui a1,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0013af8: 531c lw a5,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0013be6: 531c lw a5,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0013afa: 0ca00513 li a0,202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0013be8: 0ca00513 li a0,202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013afe: 15fd addi a1,a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0013bec: 15fd addi a1,a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0013b00: 0ca7f793 andi a5,a5,202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0013bee: 0ca7f793 andi a5,a5,202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0013b04: 0785 addi a5,a5,1 - c0013b06: 02d787b3 mul a5,a5,a3 + c0013bf2: 0785 addi a5,a5,1 + c0013bf4: 02d787b3 mul a5,a5,a3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0013b0a: 04070693 addi a3,a4,64 # 8040 <__clzdi2-0xbfff7fc0> + c0013bf8: 04070693 addi a3,a4,64 # 8040 <__clzdi2-0xbfff7fc0> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0013b0e: 97ba add a5,a5,a4 - c0013b10: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c0013bfc: 97ba add a5,a5,a4 + c0013bfe: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0013b14: eb89 bnez a5,c0013b26 + c0013c02: eb89 bnez a5,c0013c14 JS_CheckBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7510 JS_ThrowTypeError(ctx, "expecting private field"); - c0013b16: 8526 mv a0,s1 - c0013b18: 0004a597 auipc a1,0x4a - c0013b1c: 09058593 addi a1,a1,144 # c005dba8 - c0013b20: 8d7ff0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7503 + c0013c04: 8526 mv a0,s1 + c0013c06: 0004a597 auipc a1,0x4a + c0013c0a: 1d258593 addi a1,a1,466 # c005ddd8 + c0013c0e: 8d7ff0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7511 return -1; - c0013b24: a02d j c0013b4e + c0013c12: a02d j c0013c3c find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0013b26: 00379713 slli a4,a5,0x3 - c0013b2a: 1761 addi a4,a4,-8 - c0013b2c: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0013c14: 00379713 slli a4,a5,0x3 + c0013c18: 1761 addi a4,a4,-8 + c0013c1a: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0013b2e: 00472803 lw a6,4(a4) - c0013b32: 02a81563 bne a6,a0,c0013b5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0013c1c: 00472803 lw a6,4(a4) + c0013c20: 02a81563 bne a6,a0,c0013c4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c0013b36: 7218 ld a4,32(a2) - c0013b38: 0792 slli a5,a5,0x4 - c0013b3a: 17c1 addi a5,a5,-16 - c0013b3c: 97ba add a5,a5,a4 + c0013c24: 7218 ld a4,32(a2) + c0013c26: 0792 slli a5,a5,0x4 + c0013c28: 17c1 addi a5,a5,-16 + c0013c2a: 97ba add a5,a5,a4 JS_CheckBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7515 if (unlikely(JS_VALUE_GET_TAG(brand) != JS_TAG_SYMBOL)) - c0013b3e: 4794 lw a3,8(a5) - c0013b40: 5761 li a4,-8 - c0013b42: 02e68263 beq a3,a4,c0013b66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7513 + c0013c2c: 4794 lw a3,8(a5) + c0013c2e: 5761 li a4,-8 + c0013c30: 02e68263 beq a3,a4,c0013c54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7521 JS_ThrowTypeErrorNotAnObject(ctx); - c0013b46: 8526 mv a0,s1 - c0013b48: e31ff0ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7514 + c0013c34: 8526 mv a0,s1 + c0013c36: e31ff0ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7522 return -1; - c0013b4c: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7519 -} - c0013b4e: 70e2 ld ra,56(sp) - c0013b50: 8522 mv a0,s0 - c0013b52: 7442 ld s0,48(sp) - c0013b54: 74a2 ld s1,40(sp) - c0013b56: 7902 ld s2,32(sp) - c0013b58: 6121 addi sp,sp,64 - c0013b5a: 8082 ret + c0013c3a: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7527 +} + c0013c3c: 70e2 ld ra,56(sp) + c0013c3e: 8522 mv a0,s0 + c0013c40: 7442 ld s0,48(sp) + c0013c42: 74a2 ld s1,40(sp) + c0013c44: 7902 ld s2,32(sp) + c0013c46: 6121 addi sp,sp,64 + c0013c48: 8082 ret find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013b5c: 431c lw a5,0(a4) - c0013b5e: 8fed and a5,a5,a1 - c0013b60: 1782 slli a5,a5,0x20 - c0013b62: 9381 srli a5,a5,0x20 - c0013b64: bf45 j c0013b14 + c0013c4a: 431c lw a5,0(a4) + c0013c4c: 8fed and a5,a5,a1 + c0013c4e: 1782 slli a5,a5,0x20 + c0013c50: 9381 srli a5,a5,0x20 + c0013c52: bf45 j c0013c02 JS_CheckBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7511 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7519 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) { - c0013b66: 46e2 lw a3,24(sp) - c0013b68: 577d li a4,-1 - c0013b6a: fce69ee3 bne a3,a4,c0013b46 + c0013c54: 46e2 lw a3,24(sp) + c0013c56: 577d li a4,-1 + c0013c58: fce69ee3 bne a3,a4,c0013c34 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c0013b6e: 638c ld a1,0(a5) - c0013b70: 6c88 ld a0,24(s1) - c0013b72: e5ff10ef jal ra,c00059d0 + c0013c5c: 638c ld a1,0(a5) + c0013c5e: 6c88 ld a0,24(s1) + c0013c60: e5ff10ef jal ra,c0005abe find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0013b76: 67c2 ld a5,16(sp) + c0013c64: 67c2 ld a5,16(sp) js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c0013b78: 2501 sext.w a0,a0 + c0013c66: 2501 sext.w a0,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0013b7a: 56f1 li a3,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 + c0013c68: 56f1 li a3,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c0013b7c: 6f98 ld a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c0013c6a: 6f98 ld a4,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0013b7e: 531c lw a5,32(a4) - c0013b80: 8fe9 and a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0013c6c: 531c lw a5,32(a4) + c0013c6e: 8fe9 and a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0013b82: 1782 slli a5,a5,0x20 - c0013b84: 9381 srli a5,a5,0x20 - c0013b86: 0785 addi a5,a5,1 - c0013b88: 02d787b3 mul a5,a5,a3 - c0013b8c: 97ba add a5,a5,a4 - c0013b8e: 0007e403 lwu s0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0013c70: 1782 slli a5,a5,0x20 + c0013c72: 9381 srli a5,a5,0x20 + c0013c74: 0785 addi a5,a5,1 + c0013c76: 02d787b3 mul a5,a5,a3 + c0013c7a: 97ba add a5,a5,a4 + c0013c7c: 0007e403 lwu s0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013b92: 040007b7 lui a5,0x4000 + c0013c80: 040007b7 lui a5,0x4000 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0013b96: 04070713 addi a4,a4,64 + c0013c84: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013b9a: 17fd addi a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 + c0013c88: 17fd addi a5,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0013b9c: e401 bnez s0,c0013ba4 + c0013c8a: e401 bnez s0,c0013c92 JS_CheckBrand(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7526 return (prs != NULL); - c0013b9e: 00803433 snez s0,s0 - c0013ba2: b775 j c0013b4e + c0013c8c: 00803433 snez s0,s0 + c0013c90: b775 j c0013c3c find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c0013ba4: 040e slli s0,s0,0x3 - c0013ba6: 1461 addi s0,s0,-8 - c0013ba8: 943a add s0,s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c0013c92: 040e slli s0,s0,0x3 + c0013c94: 1461 addi s0,s0,-8 + c0013c96: 943a add s0,s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0013baa: 4054 lw a3,4(s0) - c0013bac: fea689e3 beq a3,a0,c0013b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c0013c98: 4054 lw a3,4(s0) + c0013c9a: fea689e3 beq a3,a0,c0013c8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0013bb0: 4000 lw s0,0(s0) - c0013bb2: 8c7d and s0,s0,a5 - c0013bb4: 1402 slli s0,s0,0x20 - c0013bb6: 9001 srli s0,s0,0x20 - c0013bb8: b7d5 j c0013b9c + c0013c9e: 4000 lw s0,0(s0) + c0013ca0: 8c7d and s0,s0,a5 + c0013ca2: 1402 slli s0,s0,0x20 + c0013ca4: 9001 srli s0,s0,0x20 + c0013ca6: b7d5 j c0013c8a -00000000c0013bba : +00000000c0013ca8 : JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38072 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38080 { - c0013bba: 7135 addi sp,sp,-160 - c0013bbc: e922 sd s0,144(sp) - c0013bbe: e43a sd a4,8(sp) - c0013bc0: ed06 sd ra,152(sp) - c0013bc2: e526 sd s1,136(sp) - c0013bc4: e14a sd s2,128(sp) - c0013bc6: fcce sd s3,120(sp) - c0013bc8: f8d2 sd s4,112(sp) - c0013bca: e82e sd a1,16(sp) - c0013bcc: ec32 sd a2,24(sp) - c0013bce: e036 sd a3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38075 + c0013ca8: 7135 addi sp,sp,-160 + c0013caa: e922 sd s0,144(sp) + c0013cac: e43a sd a4,8(sp) + c0013cae: ed06 sd ra,152(sp) + c0013cb0: e526 sd s1,136(sp) + c0013cb2: e14a sd s2,128(sp) + c0013cb4: fcce sd s3,120(sp) + c0013cb6: f8d2 sd s4,112(sp) + c0013cb8: e82e sd a1,16(sp) + c0013cba: ec32 sd a2,24(sp) + c0013cbc: e036 sd a3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38083 if (!JS_IsObject(obj)) - c0013bd0: 0006041b sext.w s0,a2 - c0013bd4: 577d li a4,-1 - c0013bd6: 00e40b63 beq s0,a4,c0013bec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 -} - c0013bda: 644a ld s0,144(sp) - c0013bdc: 60ea ld ra,152(sp) - c0013bde: 64aa ld s1,136(sp) - c0013be0: 690a ld s2,128(sp) - c0013be2: 79e6 ld s3,120(sp) - c0013be4: 7a46 ld s4,112(sp) - c0013be6: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38084 + c0013cbe: 0006041b sext.w s0,a2 + c0013cc2: 577d li a4,-1 + c0013cc4: 00e40b63 beq s0,a4,c0013cda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 +} + c0013cc8: 644a ld s0,144(sp) + c0013cca: 60ea ld ra,152(sp) + c0013ccc: 64aa ld s1,136(sp) + c0013cce: 690a ld s2,128(sp) + c0013cd0: 79e6 ld s3,120(sp) + c0013cd2: 7a46 ld s4,112(sp) + c0013cd4: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38092 return JS_ThrowTypeErrorNotAnObject(ctx); - c0013be8: d91ff06f j c0013978 - c0013bec: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38077 + c0013cd6: d91ff06f j c0013a66 + c0013cda: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38085 ctor = JS_GetProperty(ctx, obj, JS_ATOM_constructor); - c0013bee: 872e mv a4,a1 + c0013cdc: 872e mv a4,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0013bf0: 4801 li a6,0 - c0013bf2: 03d00693 li a3,61 - c0013bf6: 84aa mv s1,a0 - c0013bf8: f0ae sd a1,96(sp) - c0013bfa: f4b2 sd a2,104(sp) - c0013bfc: c47fd0ef jal ra,c0011842 - c0013c00: e0aa sd a0,64(sp) - c0013c02: e4ae sd a1,72(sp) - c0013c04: f02a sd a0,32(sp) - c0013c06: f42e sd a1,40(sp) + c0013cde: 4801 li a6,0 + c0013ce0: 03d00693 li a3,61 + c0013ce4: 84aa mv s1,a0 + c0013ce6: f0ae sd a1,96(sp) + c0013ce8: f4b2 sd a2,104(sp) + c0013cea: c47fd0ef jal ra,c0011930 + c0013cee: e0aa sd a0,64(sp) + c0013cf0: e4ae sd a1,72(sp) + c0013cf2: f02a sd a0,32(sp) + c0013cf4: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0013c08: 0005899b sext.w s3,a1 + c0013cf6: 0005899b sext.w s3,a1 JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38078 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38086 if (JS_IsException(ctor)) - c0013c0c: 4a19 li s4,6 + c0013cfa: 4a19 li s4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0013c0e: 872a mv a4,a0 - c0013c10: 87ae mv a5,a1 + c0013cfc: 872a mv a4,a0 + c0013cfe: 87ae mv a5,a1 JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38078 - c0013c12: 01499e63 bne s3,s4,c0013c2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38079 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38086 + c0013d00: 01499e63 bne s3,s4,c0013d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38087 return ctor; - c0013c16: e8aa sd a0,80(sp) - c0013c18: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 -} - c0013c1a: 60ea ld ra,152(sp) - c0013c1c: 644a ld s0,144(sp) - c0013c1e: 6546 ld a0,80(sp) - c0013c20: 65e6 ld a1,88(sp) - c0013c22: 64aa ld s1,136(sp) - c0013c24: 690a ld s2,128(sp) - c0013c26: 79e6 ld s3,120(sp) - c0013c28: 7a46 ld s4,112(sp) - c0013c2a: 610d addi sp,sp,160 - c0013c2c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38080 + c0013d04: e8aa sd a0,80(sp) + c0013d06: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 +} + c0013d08: 60ea ld ra,152(sp) + c0013d0a: 644a ld s0,144(sp) + c0013d0c: 6546 ld a0,80(sp) + c0013d0e: 65e6 ld a1,88(sp) + c0013d10: 64aa ld s1,136(sp) + c0013d12: 690a ld s2,128(sp) + c0013d14: 79e6 ld s3,120(sp) + c0013d16: 7a46 ld s4,112(sp) + c0013d18: 610d addi sp,sp,160 + c0013d1a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38088 if (JS_IsUndefined(ctor)) - c0013c2e: 468d li a3,3 - c0013c30: 00d99d63 bne s3,a3,c0013c4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 + c0013d1c: 468d li a3,3 + c0013d1e: 00d99d63 bne s3,a3,c0013d38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 } - c0013c34: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38081 + c0013d22: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38089 return JS_DupValue(ctx, defaultConstructor); - c0013c36: 6502 ld a0,0(sp) - c0013c38: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 -} - c0013c3a: 60ea ld ra,152(sp) - c0013c3c: 64aa ld s1,136(sp) - c0013c3e: 690a ld s2,128(sp) - c0013c40: 79e6 ld s3,120(sp) - c0013c42: 7a46 ld s4,112(sp) - c0013c44: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38081 + c0013d24: 6502 ld a0,0(sp) + c0013d26: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 +} + c0013d28: 60ea ld ra,152(sp) + c0013d2a: 64aa ld s1,136(sp) + c0013d2c: 690a ld s2,128(sp) + c0013d2e: 79e6 ld s3,120(sp) + c0013d30: 7a46 ld s4,112(sp) + c0013d32: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38089 return JS_DupValue(ctx, defaultConstructor); - c0013c46: a29f206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38082 + c0013d34: a29f206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38090 if (!JS_IsObject(ctor)) { - c0013c4a: 00898963 beq s3,s0,c0013c5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38083 + c0013d38: 00898963 beq s3,s0,c0013d4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38091 JS_FreeValue(ctx, ctor); - c0013c4e: 85aa mv a1,a0 - c0013c50: 863e mv a2,a5 - c0013c52: 8526 mv a0,s1 - c0013c54: ee5f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38084 + c0013d3c: 85aa mv a1,a0 + c0013d3e: 863e mv a2,a5 + c0013d40: 8526 mv a0,s1 + c0013d42: ee5f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38092 return JS_ThrowTypeErrorNotAnObject(ctx); - c0013c58: 8526 mv a0,s1 - c0013c5a: b741 j c0013bda + c0013d46: 8526 mv a0,s1 + c0013d48: b741 j c0013cc8 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0013c5c: 863e mv a2,a5 - c0013c5e: e8aa sd a0,80(sp) - c0013c60: ecae sd a1,88(sp) - c0013c62: 4801 li a6,0 - c0013c64: 0d500693 li a3,213 - c0013c68: 85aa mv a1,a0 - c0013c6a: 8526 mv a0,s1 - c0013c6c: bd7fd0ef jal ra,c0011842 - c0013c70: 842e mv s0,a1 - c0013c72: f4ae sd a1,104(sp) - c0013c74: fc2e sd a1,56(sp) + c0013d4a: 863e mv a2,a5 + c0013d4c: e8aa sd a0,80(sp) + c0013d4e: ecae sd a1,88(sp) + c0013d50: 4801 li a6,0 + c0013d52: 0d500693 li a3,213 + c0013d56: 85aa mv a1,a0 + c0013d58: 8526 mv a0,s1 + c0013d5a: bd7fd0ef jal ra,c0011930 + c0013d5e: 842e mv s0,a1 + c0013d60: f4ae sd a1,104(sp) + c0013d62: fc2e sd a1,56(sp) JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38087 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38095 JS_FreeValue(ctx, ctor); - c0013c76: 7622 ld a2,40(sp) - c0013c78: 7582 ld a1,32(sp) + c0013d64: 7622 ld a2,40(sp) + c0013d66: 7582 ld a1,32(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0013c7a: f0aa sd a0,96(sp) - c0013c7c: f82a sd a0,48(sp) - c0013c7e: 892a mv s2,a0 + c0013d68: f0aa sd a0,96(sp) + c0013d6a: f82a sd a0,48(sp) + c0013d6c: 892a mv s2,a0 JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38087 - c0013c80: 8526 mv a0,s1 - c0013c82: eb7f30ef jal ra,c0007b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38095 + c0013d6e: 8526 mv a0,s1 + c0013d70: eb7f30ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0013c86: 0004071b sext.w a4,s0 + c0013d74: 0004071b sext.w a4,s0 JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38088 - if (JS_IsException(species)) - c0013c8a: 01471563 bne a4,s4,c0013c94 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38096 + if (JS_IsException(species)) + c0013d78: 01471563 bne a4,s4,c0013d82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38104 return species; - c0013c8e: e8ca sd s2,80(sp) - c0013c90: eca2 sd s0,88(sp) - c0013c92: b761 j c0013c1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38090 (discriminator 1) + c0013d7c: e8ca sd s2,80(sp) + c0013d7e: eca2 sd s0,88(sp) + c0013d80: b761 j c0013d08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38098 (discriminator 1) if (JS_IsUndefined(species) || JS_IsNull(species)) - c0013c94: ffe4079b addiw a5,s0,-2 - c0013c98: 4685 li a3,1 - c0013c9a: f8f6fde3 bgeu a3,a5,c0013c34 + c0013d82: ffe4079b addiw a5,s0,-2 + c0013d86: 4685 li a3,1 + c0013d88: f8f6fde3 bgeu a3,a5,c0013d22 JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0013c9e: 01371763 bne a4,s3,c0013cac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c0013d8c: 01371763 bne a4,s3,c0013d9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0013ca2: 00093783 ld a5,0(s2) - c0013ca6: 93b1 srli a5,a5,0x2c + c0013d90: 00093783 ld a5,0(s2) + c0013d94: 93b1 srli a5,a5,0x2c JS_SpeciesConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38100 if (!JS_IsConstructor(ctx, species)) { - c0013ca8: 8b85 andi a5,a5,1 - c0013caa: f3f5 bnez a5,c0013c8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38093 + c0013d96: 8b85 andi a5,a5,1 + c0013d98: f3f5 bnez a5,c0013d7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38101 JS_FreeValue(ctx, species); - c0013cac: 75c2 ld a1,48(sp) - c0013cae: 7662 ld a2,56(sp) - c0013cb0: 8526 mv a0,s1 - c0013cb2: e87f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 -} - c0013cb6: 644a ld s0,144(sp) - c0013cb8: 60ea ld ra,152(sp) - c0013cba: 690a ld s2,128(sp) - c0013cbc: 79e6 ld s3,120(sp) - c0013cbe: 7a46 ld s4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38094 + c0013d9a: 75c2 ld a1,48(sp) + c0013d9c: 7662 ld a2,56(sp) + c0013d9e: 8526 mv a0,s1 + c0013da0: e87f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 +} + c0013da4: 644a ld s0,144(sp) + c0013da6: 60ea ld ra,152(sp) + c0013da8: 690a ld s2,128(sp) + c0013daa: 79e6 ld s3,120(sp) + c0013dac: 7a46 ld s4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38102 return JS_ThrowTypeError(ctx, "not a constructor"); - c0013cc0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 + c0013dae: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 } - c0013cc2: 64aa ld s1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38094 + c0013db0: 64aa ld s1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38102 return JS_ThrowTypeError(ctx, "not a constructor"); - c0013cc4: 0004a597 auipc a1,0x4a - c0013cc8: f0458593 addi a1,a1,-252 # c005dbc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38097 + c0013db2: 0004a597 auipc a1,0x4a + c0013db6: 04658593 addi a1,a1,70 # c005ddf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38105 } - c0013ccc: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38094 + c0013dba: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38102 return JS_ThrowTypeError(ctx, "not a constructor"); - c0013cce: f28ff06f j c00133f6 + c0013dbc: f28ff06f j c00134e4 -00000000c0013cd2 : +00000000c0013dc0 : JS_ThrowTypeErrorDetachedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52864 { - c0013cd2: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52857 + c0013dc0: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52865 return JS_ThrowTypeError(ctx, "ArrayBuffer is detached"); - c0013cd4: 0004a597 auipc a1,0x4a - c0013cd8: f0c58593 addi a1,a1,-244 # c005dbe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52858 + c0013dc2: 0004a597 auipc a1,0x4a + c0013dc6: 04e58593 addi a1,a1,78 # c005de10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52866 } - c0013cdc: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52857 + c0013dca: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52865 return JS_ThrowTypeError(ctx, "ArrayBuffer is detached"); - c0013cde: f18ff06f j c00133f6 + c0013dcc: f18ff06f j c00134e4 -00000000c0013ce2 : +00000000c0013dd0 : JS_ThrowUnsupportedOperation(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1555 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1559 { - c0013ce2: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1556 + c0013dd0: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1560 return JS_ThrowTypeError(ctx, "unsupported operation"); - c0013ce4: 0004a597 auipc a1,0x4a - c0013ce8: f1458593 addi a1,a1,-236 # c005dbf8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1557 + c0013dd2: 0004a597 auipc a1,0x4a + c0013dd6: 05658593 addi a1,a1,86 # c005de28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1561 } - c0013cec: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1556 + c0013dda: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1560 return JS_ThrowTypeError(ctx, "unsupported operation"); - c0013cee: f08ff06f j c00133f6 + c0013ddc: f08ff06f j c00134e4 -00000000c0013cf2 : +00000000c0013de0 : invalid_mul_pow10(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1598 { - c0013cf2: 1141 addi sp,sp,-16 - c0013cf4: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1595 + c0013de0: 1141 addi sp,sp,-16 + c0013de2: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1599 JS_ThrowUnsupportedOperation(ctx); - c0013cf6: fedff0ef jal ra,c0013ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1597 + c0013de4: fedff0ef jal ra,c0013dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1601 } - c0013cfa: 60a2 ld ra,8(sp) - c0013cfc: 557d li a0,-1 - c0013cfe: 0141 addi sp,sp,16 - c0013d00: 8082 ret + c0013de8: 60a2 ld ra,8(sp) + c0013dea: 557d li a0,-1 + c0013dec: 0141 addi sp,sp,16 + c0013dee: 8082 ret -00000000c0013d02 : +00000000c0013df0 : invalid_mul_pow10_to_float64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1589 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1593 { - c0013d02: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1591 + c0013df0: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1595 } - c0013d04: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1590 + c0013df2: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1594 return JS_ThrowUnsupportedOperation(ctx); - c0013d06: fddff06f j c0013ce2 + c0013df4: fddff06f j c0013dd0 -00000000c0013d0a : +00000000c0013df8 : invalid_binary_arith(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1584 { - c0013d0a: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1581 + c0013df8: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1585 JS_FreeValue(ctx, op1); - c0013d0c: 85b6 mv a1,a3 - c0013d0e: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1580 -{ - c0013d10: f406 sd ra,40(sp) - c0013d12: f022 sd s0,32(sp) - c0013d14: e03e sd a5,0(sp) - c0013d16: 842a mv s0,a0 - c0013d18: e442 sd a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1581 + c0013dfa: 85b6 mv a1,a3 + c0013dfc: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1584 +{ + c0013dfe: f406 sd ra,40(sp) + c0013e00: f022 sd s0,32(sp) + c0013e02: e03e sd a5,0(sp) + c0013e04: 842a mv s0,a0 + c0013e06: e442 sd a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1585 JS_FreeValue(ctx, op1); - c0013d1a: e1ff30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1582 + c0013e08: e1ff30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1586 JS_FreeValue(ctx, op2); - c0013d1e: 6582 ld a1,0(sp) - c0013d20: 6622 ld a2,8(sp) - c0013d22: 8522 mv a0,s0 - c0013d24: e15f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1583 + c0013e0c: 6582 ld a1,0(sp) + c0013e0e: 6622 ld a2,8(sp) + c0013e10: 8522 mv a0,s0 + c0013e12: e15f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1587 JS_ThrowUnsupportedOperation(ctx); - c0013d28: 8522 mv a0,s0 - c0013d2a: fb9ff0ef jal ra,c0013ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1585 + c0013e16: 8522 mv a0,s0 + c0013e18: fb9ff0ef jal ra,c0013dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1589 } - c0013d2e: 70a2 ld ra,40(sp) - c0013d30: 7402 ld s0,32(sp) - c0013d32: 557d li a0,-1 - c0013d34: 6145 addi sp,sp,48 - c0013d36: 8082 ret + c0013e1c: 70a2 ld ra,40(sp) + c0013e1e: 7402 ld s0,32(sp) + c0013e20: 557d li a0,-1 + c0013e22: 6145 addi sp,sp,48 + c0013e24: 8082 ret -00000000c0013d38 : +00000000c0013e26 : invalid_unary_arith(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1576 { - c0013d38: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1573 + c0013e26: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1577 JS_FreeValue(ctx, op1); - c0013d3a: 85b6 mv a1,a3 - c0013d3c: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1572 + c0013e28: 85b6 mv a1,a3 + c0013e2a: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1576 { - c0013d3e: ec06 sd ra,24(sp) - c0013d40: e822 sd s0,16(sp) - c0013d42: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1573 + c0013e2c: ec06 sd ra,24(sp) + c0013e2e: e822 sd s0,16(sp) + c0013e30: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1577 JS_FreeValue(ctx, op1); - c0013d44: df5f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1574 + c0013e32: df5f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1578 JS_ThrowUnsupportedOperation(ctx); - c0013d48: 8522 mv a0,s0 - c0013d4a: f99ff0ef jal ra,c0013ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1576 + c0013e36: 8522 mv a0,s0 + c0013e38: f99ff0ef jal ra,c0013dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1580 } - c0013d4e: 60e2 ld ra,24(sp) - c0013d50: 6442 ld s0,16(sp) - c0013d52: 557d li a0,-1 - c0013d54: 6105 addi sp,sp,32 - c0013d56: 8082 ret + c0013e3c: 60e2 ld ra,24(sp) + c0013e3e: 6442 ld s0,16(sp) + c0013e40: 557d li a0,-1 + c0013e42: 6105 addi sp,sp,32 + c0013e44: 8082 ret -00000000c0013d58 : +00000000c0013e46 : invalid_to_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1564 { - c0013d58: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1562 + c0013e46: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1566 } - c0013d5a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1561 + c0013e48: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1565 return JS_ThrowUnsupportedOperation(ctx); - c0013d5c: f87ff06f j c0013ce2 + c0013e4a: f87ff06f j c0013dd0 -00000000c0013d60 : +00000000c0013e4e : JS_SetThisTimeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49418 -{ - c0013d60: 7139 addi sp,sp,-64 - c0013d62: e432 sd a2,8(sp) - c0013d64: fc06 sd ra,56(sp) - c0013d66: f822 sd s0,48(sp) - c0013d68: f426 sd s1,40(sp) - c0013d6a: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49419 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49426 +{ + c0013e4e: 7139 addi sp,sp,-64 + c0013e50: e432 sd a2,8(sp) + c0013e52: fc06 sd ra,56(sp) + c0013e54: f822 sd s0,48(sp) + c0013e56: f426 sd s1,40(sp) + c0013e58: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49427 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013d6c: 2601 sext.w a2,a2 - c0013d6e: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49418 + c0013e5a: 2601 sext.w a2,a2 + c0013e5c: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49426 { - c0013d70: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49419 + c0013e5e: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49427 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013d72: 04e61c63 bne a2,a4,c0013dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49421 + c0013e60: 04e61c63 bne a2,a4,c0013eb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49429 if (p->class_id == JS_CLASS_DATE) { - c0013d76: 0065d683 lhu a3,6(a1) - c0013d7a: 4729 li a4,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49420 + c0013e64: 0065d683 lhu a3,6(a1) + c0013e68: 4729 li a4,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49428 JSObject *p = JS_VALUE_GET_OBJ(this_val); - c0013d7c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49421 + c0013e6a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49429 if (p->class_id == JS_CLASS_DATE) { - c0013d7e: 04e69663 bne a3,a4,c0013dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49422 + c0013e6c: 04e69663 bne a3,a4,c0013eb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49430 JS_FreeValue(ctx, p->u.object_data); - c0013d82: 798c ld a1,48(a1) - c0013d84: 7c10 ld a2,56(s0) - c0013d86: e20504d3 fmv.x.d s1,fa0 - c0013d8a: daff30ef jal ra,c0007b38 + c0013e70: 798c ld a1,48(a1) + c0013e72: 7c10 ld a2,56(s0) + c0013e74: e20504d3 fmv.x.d s1,fa0 + c0013e78: daff30ef jal ra,c0007c26 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0013d8e: f20487d3 fmv.d.x fa5,s1 - c0013d92: c20796d3 fcvt.w.d a3,fa5,rtz + c0013e7c: f20487d3 fmv.d.x fa5,s1 + c0013e80: c20796d3 fcvt.w.d a3,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0013d96: d20687d3 fcvt.d.w fa5,a3 + c0013e84: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0013d9a: 0006879b sext.w a5,a3 + c0013e88: 0006879b sext.w a5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0013d9e: e20786d3 fmv.x.d a3,fa5 - c0013da2: 00d49f63 bne s1,a3,c0013dc0 + c0013e8c: e20786d3 fmv.x.d a3,fa5 + c0013e90: 00d49f63 bne s1,a3,c0013eae /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c0013da6: ca02 sw zero,20(sp) - c0013da8: 4581 li a1,0 + c0013e94: ca02 sw zero,20(sp) + c0013e96: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0013daa: c83e sw a5,16(sp) + c0013e98: c83e sw a5,16(sp) JS_SetThisTimeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49423 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49431 p->u.object_data = JS_NewFloat64(ctx, v); - c0013dac: 27c2 fld fa5,16(sp) - c0013dae: fc0c sd a1,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49424 + c0013e9a: 27c2 fld fa5,16(sp) + c0013e9c: fc0c sd a1,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 return JS_DupValue(ctx, p->u.object_data); - c0013db0: 6542 ld a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49423 + c0013e9e: 6542 ld a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49431 p->u.object_data = JS_NewFloat64(ctx, v); - c0013db2: b81c fsd fa5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49428 + c0013ea0: b81c fsd fa5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49436 } - c0013db4: 7442 ld s0,48(sp) - c0013db6: 70e2 ld ra,56(sp) - c0013db8: 74a2 ld s1,40(sp) - c0013dba: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49424 + c0013ea2: 7442 ld s0,48(sp) + c0013ea4: 70e2 ld ra,56(sp) + c0013ea6: 74a2 ld s1,40(sp) + c0013ea8: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49432 return JS_DupValue(ctx, p->u.object_data); - c0013dbc: 8b3f206f j c000666e + c0013eaa: 8b3f206f j c000675c /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0013dc0: e826 sd s1,16(sp) - c0013dc2: 0004879b sext.w a5,s1 + c0013eae: e826 sd s1,16(sp) + c0013eb0: 0004879b sext.w a5,s1 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0013dc6: 459d li a1,7 - c0013dc8: b7cd j c0013daa + c0013eb4: 459d li a1,7 + c0013eb6: b7cd j c0013e98 JS_SetThisTimeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49436 } - c0013dca: 7442 ld s0,48(sp) - c0013dcc: 70e2 ld ra,56(sp) - c0013dce: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49427 + c0013eb8: 7442 ld s0,48(sp) + c0013eba: 70e2 ld ra,56(sp) + c0013ebc: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49435 return JS_ThrowTypeError(ctx, "not a Date object"); - c0013dd0: 0004a597 auipc a1,0x4a - c0013dd4: e4058593 addi a1,a1,-448 # c005dc10 - c0013dd8: 853e mv a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49428 + c0013ebe: 0004a597 auipc a1,0x4a + c0013ec2: f8258593 addi a1,a1,-126 # c005de40 + c0013ec6: 853e mv a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49436 } - c0013dda: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49427 + c0013ec8: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49435 return JS_ThrowTypeError(ctx, "not a Date object"); - c0013ddc: e1aff06f j c00133f6 + c0013eca: e1aff06f j c00134e4 -00000000c0013de0 : +00000000c0013ece : js_thisBigIntValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50730 { - c0013de0: 1101 addi sp,sp,-32 - c0013de2: e02e sd a1,0(sp) - c0013de4: e432 sd a2,8(sp) + c0013ece: 1101 addi sp,sp,-32 + c0013ed0: e02e sd a1,0(sp) + c0013ed2: e432 sd a2,8(sp) JS_IsBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:577 int tag = JS_VALUE_GET_TAG(v); - c0013de6: 0006079b sext.w a5,a2 + c0013ed4: 0006079b sext.w a5,a2 js_thisBigIntValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50723 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50731 if (JS_IsBigInt(ctx, this_val)) - c0013dea: 5759 li a4,-10 - c0013dec: 00e79763 bne a5,a4,c0013dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50724 + c0013ed8: 5759 li a4,-10 + c0013eda: 00e79763 bne a5,a4,c0013ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50732 return JS_DupValue(ctx, this_val); - c0013df0: 852e mv a0,a1 - c0013df2: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50734 + c0013ede: 852e mv a0,a1 + c0013ee0: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50742 } - c0013df4: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50730 + c0013ee2: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50738 return JS_DupValue(ctx, p->u.object_data); - c0013df6: 879f206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50726 + c0013ee4: 879f206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50734 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013dfa: 56fd li a3,-1 - c0013dfc: 02d79063 bne a5,a3,c0013e1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50728 + c0013ee8: 56fd li a3,-1 + c0013eea: 02d79063 bne a5,a3,c0013f0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50736 if (p->class_id == JS_CLASS_BIG_INT) { - c0013e00: 0065d603 lhu a2,6(a1) - c0013e04: 02100693 li a3,33 - c0013e08: 87ae mv a5,a1 - c0013e0a: 00d61963 bne a2,a3,c0013e1c + c0013eee: 0065d603 lhu a2,6(a1) + c0013ef2: 02100693 li a3,33 + c0013ef6: 87ae mv a5,a1 + c0013ef8: 00d61963 bne a2,a3,c0013f0a JS_IsBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:577 - c0013e0e: 7d8c ld a1,56(a1) + c0013efc: 7d8c ld a1,56(a1) js_thisBigIntValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50729 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50737 if (JS_IsBigInt(ctx, p->u.object_data)) - c0013e10: 0005869b sext.w a3,a1 - c0013e14: 00e69463 bne a3,a4,c0013e1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50730 + c0013efe: 0005869b sext.w a3,a1 + c0013f02: 00e69463 bne a3,a4,c0013f0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50738 return JS_DupValue(ctx, p->u.object_data); - c0013e18: 7b88 ld a0,48(a5) - c0013e1a: bfe9 j c0013df4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50733 + c0013f06: 7b88 ld a0,48(a5) + c0013f08: bfe9 j c0013ee2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50741 return JS_ThrowTypeError(ctx, "not a bigint"); - c0013e1c: 0004a597 auipc a1,0x4a - c0013e20: e0c58593 addi a1,a1,-500 # c005dc28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50734 + c0013f0a: 0004a597 auipc a1,0x4a + c0013f0e: f4e58593 addi a1,a1,-178 # c005de58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50742 } - c0013e24: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50733 + c0013f12: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50741 return JS_ThrowTypeError(ctx, "not a bigint"); - c0013e26: dd0ff06f j c00133f6 + c0013f14: dd0ff06f j c00134e4 -00000000c0013e2a : +00000000c0013f18 : js_bigint_valueOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50763 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50771 { - c0013e2a: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50765 + c0013f18: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50773 } - c0013e2c: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50764 + c0013f1a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50772 return js_thisBigIntValue(ctx, this_val); - c0013e2e: fb3ff06f j c0013de0 + c0013f1c: fb3ff06f j c0013ece -00000000c0013e32 : +00000000c0013f20 : js_symbol_keyFor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46864 if (!JS_IsSymbol(argv[0])) - c0013e32: 4714 lw a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46853 + c0013f20: 4714 lw a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46861 { - c0013e34: 7179 addi sp,sp,-48 - c0013e36: e02e sd a1,0(sp) - c0013e38: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46856 + c0013f22: 7179 addi sp,sp,-48 + c0013f24: e02e sd a1,0(sp) + c0013f26: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46864 if (!JS_IsSymbol(argv[0])) - c0013e3a: 57e1 li a5,-8 - c0013e3c: 00f68963 beq a3,a5,c0013e4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46857 + c0013f28: 57e1 li a5,-8 + c0013f2a: 00f68963 beq a3,a5,c0013f3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46865 return JS_ThrowTypeError(ctx, "not a symbol"); - c0013e40: 00049597 auipc a1,0x49 - c0013e44: 3c058593 addi a1,a1,960 # c005d200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46862 + c0013f2e: 00049597 auipc a1,0x49 + c0013f32: 50258593 addi a1,a1,1282 # c005d430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46870 } - c0013e48: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46857 + c0013f36: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46865 return JS_ThrowTypeError(ctx, "not a symbol"); - c0013e4a: dacff06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46858 + c0013f38: dacff06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46866 p = JS_VALUE_GET_PTR(argv[0]); - c0013e4e: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46859 + c0013f3c: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46867 if (p->atom_type != JS_ATOM_TYPE_GLOBAL_SYMBOL) - c0013e50: c00006b7 lui a3,0xc0000 - c0013e54: 471c lw a5,8(a4) - c0013e56: 8ff5 and a5,a5,a3 - c0013e58: 2781 sext.w a5,a5 - c0013e5a: 800006b7 lui a3,0x80000 - c0013e5e: 00d78963 beq a5,a3,c0013e70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46860 + c0013f3e: c00006b7 lui a3,0xc0000 + c0013f42: 471c lw a5,8(a4) + c0013f44: 8ff5 and a5,a5,a3 + c0013f46: 2781 sext.w a5,a5 + c0013f48: 800006b7 lui a3,0x80000 + c0013f4c: 00d78963 beq a5,a3,c0013f5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46868 return JS_UNDEFINED; - c0013e62: e802 sd zero,16(sp) - c0013e64: 478d li a5,3 - c0013e66: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46862 -} - c0013e68: 6542 ld a0,16(sp) - c0013e6a: 65e2 ld a1,24(sp) - c0013e6c: 6145 addi sp,sp,48 - c0013e6e: 8082 ret + c0013f50: e802 sd zero,16(sp) + c0013f52: 478d li a5,3 + c0013f54: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46870 +} + c0013f56: 6542 ld a0,16(sp) + c0013f58: 65e2 ld a1,24(sp) + c0013f5a: 6145 addi sp,sp,48 + c0013f5c: 8082 ret JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0013e70: 431c lw a5,0(a4) - c0013e72: e83a sd a4,16(sp) - c0013e74: 2785 addiw a5,a5,1 - c0013e76: c31c sw a5,0(a4) + c0013f5e: 431c lw a5,0(a4) + c0013f60: e83a sd a4,16(sp) + c0013f62: 2785 addiw a5,a5,1 + c0013f64: c31c sw a5,0(a4) js_symbol_keyFor(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c0013e78: 57e5 li a5,-7 - c0013e7a: b7f5 j c0013e66 + c0013f66: 57e5 li a5,-7 + c0013f68: b7f5 j c0013f54 -00000000c0013e7c : +00000000c0013f6a : js_thisSymbolValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46788 { - c0013e7c: 1101 addi sp,sp,-32 - c0013e7e: e02e sd a1,0(sp) - c0013e80: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46781 + c0013f6a: 1101 addi sp,sp,-32 + c0013f6c: e02e sd a1,0(sp) + c0013f6e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46789 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_SYMBOL) - c0013e82: 0006079b sext.w a5,a2 - c0013e86: 5761 li a4,-8 - c0013e88: 00e79763 bne a5,a4,c0013e96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46782 + c0013f70: 0006079b sext.w a5,a2 + c0013f74: 5761 li a4,-8 + c0013f76: 00e79763 bne a5,a4,c0013f84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46790 return JS_DupValue(ctx, this_val); - c0013e8c: 852e mv a0,a1 - c0013e8e: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46792 + c0013f7a: 852e mv a0,a1 + c0013f7c: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46800 } - c0013e90: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46788 + c0013f7e: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46796 return JS_DupValue(ctx, p->u.object_data); - c0013e92: fdcf206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46784 + c0013f80: fdcf206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46792 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013e96: 56fd li a3,-1 - c0013e98: 00d79f63 bne a5,a3,c0013eb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46786 + c0013f84: 56fd li a3,-1 + c0013f86: 00d79f63 bne a5,a3,c0013fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46794 if (p->class_id == JS_CLASS_SYMBOL) { - c0013e9c: 0065d603 lhu a2,6(a1) - c0013ea0: 469d li a3,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46785 + c0013f8a: 0065d603 lhu a2,6(a1) + c0013f8e: 469d li a3,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46793 JSObject *p = JS_VALUE_GET_OBJ(this_val); - c0013ea2: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46786 + c0013f90: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46794 if (p->class_id == JS_CLASS_SYMBOL) { - c0013ea4: 00d61963 bne a2,a3,c0013eb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46787 + c0013f92: 00d61963 bne a2,a3,c0013fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46795 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_SYMBOL) - c0013ea8: 7d8c ld a1,56(a1) - c0013eaa: 0005869b sext.w a3,a1 - c0013eae: 00e69463 bne a3,a4,c0013eb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46788 + c0013f96: 7d8c ld a1,56(a1) + c0013f98: 0005869b sext.w a3,a1 + c0013f9c: 00e69463 bne a3,a4,c0013fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46796 return JS_DupValue(ctx, p->u.object_data); - c0013eb2: 7b88 ld a0,48(a5) - c0013eb4: bff1 j c0013e90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46791 + c0013fa0: 7b88 ld a0,48(a5) + c0013fa2: bff1 j c0013f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46799 return JS_ThrowTypeError(ctx, "not a symbol"); - c0013eb6: 00049597 auipc a1,0x49 - c0013eba: 34a58593 addi a1,a1,842 # c005d200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46792 + c0013fa4: 00049597 auipc a1,0x49 + c0013fa8: 48c58593 addi a1,a1,1164 # c005d430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46800 } - c0013ebe: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46791 + c0013fac: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46799 return JS_ThrowTypeError(ctx, "not a symbol"); - c0013ec0: d36ff06f j c00133f6 + c0013fae: d36ff06f j c00134e4 -00000000c0013ec4 : +00000000c0013fb2 : js_symbol_valueOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46817 { - c0013ec4: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46811 + c0013fb2: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46819 } - c0013ec6: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46810 + c0013fb4: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46818 return js_thisSymbolValue(ctx, this_val); - c0013ec8: fb5ff06f j c0013e7c + c0013fb6: fb5ff06f j c0013f6a -00000000c0013ecc : +00000000c0013fba : js_string_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42790 { - c0013ecc: 7139 addi sp,sp,-64 - c0013ece: e02e sd a1,0(sp) - c0013ed0: e432 sd a2,8(sp) - c0013ed2: f02e sd a1,32(sp) - c0013ed4: f432 sd a2,40(sp) + c0013fba: 7139 addi sp,sp,-64 + c0013fbc: e02e sd a1,0(sp) + c0013fbe: e432 sd a2,8(sp) + c0013fc0: f02e sd a1,32(sp) + c0013fc2: f432 sd a2,40(sp) js_thisStringValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41359 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_STRING) - c0013ed6: 0006069b sext.w a3,a2 - c0013eda: 5765 li a4,-7 - c0013edc: 87ae mv a5,a1 - c0013ede: 00e69763 bne a3,a4,c0013eec - c0013ee2: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41352 + c0013fc4: 0006069b sext.w a3,a2 + c0013fc8: 5765 li a4,-7 + c0013fca: 87ae mv a5,a1 + c0013fcc: 00e69763 bne a3,a4,c0013fda + c0013fd0: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41360 return JS_DupValue(ctx, this_val); - c0013ee4: 853e mv a0,a5 + c0013fd2: 853e mv a0,a5 js_string_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42792 } - c0013ee6: 6121 addi sp,sp,64 + c0013fd4: 6121 addi sp,sp,64 js_thisStringValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41366 return JS_DupValue(ctx, p->u.object_data); - c0013ee8: f86f206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41354 + c0013fd6: f86f206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41362 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013eec: 567d li a2,-1 - c0013eee: 00c69e63 bne a3,a2,c0013f0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41356 + c0013fda: 567d li a2,-1 + c0013fdc: 00c69e63 bne a3,a2,c0013ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41364 if (p->class_id == JS_CLASS_STRING) { - c0013ef2: 0065d603 lhu a2,6(a1) - c0013ef6: 4695 li a3,5 - c0013ef8: 00d61963 bne a2,a3,c0013f0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41357 + c0013fe0: 0065d603 lhu a2,6(a1) + c0013fe4: 4695 li a3,5 + c0013fe6: 00d61963 bne a2,a3,c0013ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41365 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) - c0013efc: 7d8c ld a1,56(a1) - c0013efe: 0005869b sext.w a3,a1 - c0013f02: 00e69463 bne a3,a4,c0013f0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41358 + c0013fea: 7d8c ld a1,56(a1) + c0013fec: 0005869b sext.w a3,a1 + c0013ff0: 00e69463 bne a3,a4,c0013ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41366 return JS_DupValue(ctx, p->u.object_data); - c0013f06: 7b88 ld a0,48(a5) - c0013f08: bff9 j c0013ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41361 + c0013ff4: 7b88 ld a0,48(a5) + c0013ff6: bff9 j c0013fd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41369 return JS_ThrowTypeError(ctx, "not a string"); - c0013f0a: 0004a597 auipc a1,0x4a - c0013f0e: d2e58593 addi a1,a1,-722 # c005dc38 + c0013ff8: 0004a597 auipc a1,0x4a + c0013ffc: e7058593 addi a1,a1,-400 # c005de68 js_string_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42792 } - c0013f12: 6121 addi sp,sp,64 + c0014000: 6121 addi sp,sp,64 js_thisStringValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41361 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41369 return JS_ThrowTypeError(ctx, "not a string"); - c0013f14: ce2ff06f j c00133f6 + c0014002: ce2ff06f j c00134e4 -00000000c0013f18 : +00000000c0014006 : js_thisBooleanValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41198 { - c0013f18: 1101 addi sp,sp,-32 - c0013f1a: e02e sd a1,0(sp) - c0013f1c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41191 + c0014006: 1101 addi sp,sp,-32 + c0014008: e02e sd a1,0(sp) + c001400a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41199 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_BOOL) - c0013f1e: 0006079b sext.w a5,a2 - c0013f22: 4705 li a4,1 - c0013f24: 00e79763 bne a5,a4,c0013f32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41192 + c001400c: 0006079b sext.w a5,a2 + c0014010: 4705 li a4,1 + c0014012: 00e79763 bne a5,a4,c0014020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41200 return JS_DupValue(ctx, this_val); - c0013f28: 852e mv a0,a1 - c0013f2a: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41202 + c0014016: 852e mv a0,a1 + c0014018: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 } - c0013f2c: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41192 + c001401a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41200 return JS_DupValue(ctx, this_val); - c0013f2e: f40f206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41194 + c001401c: f40f206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41202 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013f32: 56fd li a3,-1 - c0013f34: 00d79d63 bne a5,a3,c0013f4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41196 + c0014020: 56fd li a3,-1 + c0014022: 00d79d63 bne a5,a3,c001403c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41204 if (p->class_id == JS_CLASS_BOOLEAN) { - c0013f38: 0065d603 lhu a2,6(a1) - c0013f3c: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41195 + c0014026: 0065d603 lhu a2,6(a1) + c001402a: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41203 JSObject *p = JS_VALUE_GET_OBJ(this_val); - c0013f3e: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41196 + c001402c: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41204 if (p->class_id == JS_CLASS_BOOLEAN) { - c0013f40: 00d61763 bne a2,a3,c0013f4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41197 + c001402e: 00d61763 bne a2,a3,c001403c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41205 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_BOOL) - c0013f44: 7d8c ld a1,56(a1) - c0013f46: 0005869b sext.w a3,a1 - c0013f4a: 00e68963 beq a3,a4,c0013f5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41201 + c0014032: 7d8c ld a1,56(a1) + c0014034: 0005869b sext.w a3,a1 + c0014038: 00e68963 beq a3,a4,c001404a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41209 return JS_ThrowTypeError(ctx, "not a boolean"); - c0013f4e: 0004a597 auipc a1,0x4a - c0013f52: cfa58593 addi a1,a1,-774 # c005dc48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41202 + c001403c: 0004a597 auipc a1,0x4a + c0014040: e3c58593 addi a1,a1,-452 # c005de78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 } - c0013f56: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41201 + c0014044: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41209 return JS_ThrowTypeError(ctx, "not a boolean"); - c0013f58: c9eff06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41198 + c0014046: c9eff06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41206 return p->u.object_data; - c0013f5c: 7b88 ld a0,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41202 + c001404a: 7b88 ld a0,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 } - c0013f5e: 6105 addi sp,sp,32 - c0013f60: 8082 ret + c001404c: 6105 addi sp,sp,32 + c001404e: 8082 ret -00000000c0013f62 : +00000000c0014050 : js_boolean_valueOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41224 { - c0013f62: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41218 + c0014050: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41226 } - c0013f64: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41217 + c0014052: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41225 return js_thisBooleanValue(ctx, this_val); - c0013f66: fb3ff06f j c0013f18 + c0014054: fb3ff06f j c0014006 -00000000c0013f6a : +00000000c0014058 : js_thisNumberValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40988 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40996 { - c0013f6a: 1101 addi sp,sp,-32 - c0013f6c: e432 sd a2,8(sp) - c0013f6e: e02e sd a1,0(sp) + c0014058: 1101 addi sp,sp,-32 + c001405a: e432 sd a2,8(sp) + c001405c: e02e sd a1,0(sp) JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c0013f70: 2601 sext.w a2,a2 + c001405e: 2601 sext.w a2,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c0013f72: ce11 beqz a2,c0013f8e - c0013f74: 479d li a5,7 - c0013f76: 00f60c63 beq a2,a5,c0013f8e + c0014060: ce11 beqz a2,c001407c + c0014062: 479d li a5,7 + c0014064: 00f60c63 beq a2,a5,c001407c js_thisNumberValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40992 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41000 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c0013f7a: 577d li a4,-1 - c0013f7c: 00e60e63 beq a2,a4,c0013f98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40999 + c0014068: 577d li a4,-1 + c001406a: 00e60e63 beq a2,a4,c0014086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41007 return JS_ThrowTypeError(ctx, "not a number"); - c0013f80: 0004a597 auipc a1,0x4a - c0013f84: cd858593 addi a1,a1,-808 # c005dc58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41000 + c001406e: 0004a597 auipc a1,0x4a + c0014072: e1a58593 addi a1,a1,-486 # c005de88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41008 } - c0013f88: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40999 + c0014076: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41007 return JS_ThrowTypeError(ctx, "not a number"); - c0013f8a: c6cff06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40990 + c0014078: c6cff06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40998 return JS_DupValue(ctx, this_val); - c0013f8e: 6502 ld a0,0(sp) - c0013f90: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41000 + c001407c: 6502 ld a0,0(sp) + c001407e: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41008 } - c0013f92: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40996 + c0014080: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41004 return JS_DupValue(ctx, p->u.object_data); - c0013f94: edaf206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40994 + c0014082: edaf206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41002 if (p->class_id == JS_CLASS_NUMBER) { - c0013f98: 0065d683 lhu a3,6(a1) - c0013f9c: 4711 li a4,4 - c0013f9e: fee691e3 bne a3,a4,c0013f80 + c0014086: 0065d683 lhu a3,6(a1) + c001408a: 4711 li a4,4 + c001408c: fee691e3 bne a3,a4,c001406e JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c0013fa2: 5d98 lw a4,56(a1) + c0014090: 5d98 lw a4,56(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c0013fa4: c319 beqz a4,c0013faa - c0013fa6: fcf71de3 bne a4,a5,c0013f80 + c0014092: c319 beqz a4,c0014098 + c0014094: fcf71de3 bne a4,a5,c001406e js_thisNumberValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41004 return JS_DupValue(ctx, p->u.object_data); - c0013faa: 7988 ld a0,48(a1) - c0013fac: 7d8c ld a1,56(a1) - c0013fae: b7d5 j c0013f92 + c0014098: 7988 ld a0,48(a1) + c001409a: 7d8c ld a1,56(a1) + c001409c: b7d5 j c0014080 -00000000c0013fb0 : +00000000c001409e : js_number_valueOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41012 { - c0013fb0: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41006 + c001409e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41014 } - c0013fb2: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41005 + c00140a0: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41013 return js_thisNumberValue(ctx, this_val); - c0013fb4: fb7ff06f j c0013f6a + c00140a2: fb7ff06f j c0014058 -00000000c0013fb8 : +00000000c00140a6 : get_typed_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53019 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53027 { - c0013fb8: 1101 addi sp,sp,-32 - c0013fba: e432 sd a2,8(sp) - c0013fbc: ec06 sd ra,24(sp) - c0013fbe: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53021 + c00140a6: 1101 addi sp,sp,-32 + c00140a8: e432 sd a2,8(sp) + c00140aa: ec06 sd ra,24(sp) + c00140ac: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53029 if (JS_VALUE_GET_TAG(this_val) != JS_TAG_OBJECT) - c0013fc0: 2601 sext.w a2,a2 - c0013fc2: 57fd li a5,-1 - c0013fc4: 02f61963 bne a2,a5,c0013ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53025 + c00140ae: 2601 sext.w a2,a2 + c00140b0: 57fd li a5,-1 + c00140b2: 02f61963 bne a2,a5,c00140e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53033 if (p->class_id != JS_CLASS_DATAVIEW) - c0013fc8: 0065d783 lhu a5,6(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53024 + c00140b6: 0065d783 lhu a5,6(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53032 if (is_dataview) { - c0013fcc: ca91 beqz a3,c0013fe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53025 + c00140ba: ca91 beqz a3,c00140ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53033 if (p->class_id != JS_CLASS_DATAVIEW) - c0013fce: 02000713 li a4,32 - c0013fd2: 02e78e63 beq a5,a4,c001400e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53031 + c00140bc: 02000713 li a4,32 + c00140c0: 02e78e63 beq a5,a4,c00140fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53039 JS_ThrowTypeError(ctx, "not a %s", is_dataview ? "DataView" : "TypedArray"); - c0013fd6: 0004a617 auipc a2,0x4a - c0013fda: c9260613 addi a2,a2,-878 # c005dc68 - c0013fde: a00d j c0014000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53028 + c00140c4: 0004a617 auipc a2,0x4a + c00140c8: dd460613 addi a2,a2,-556 # c005de98 + c00140cc: a00d j c00140ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53036 if (!(p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0013fe0: 37ad addiw a5,a5,-21 - c0013fe2: 17c2 slli a5,a5,0x30 - c0013fe4: 93c1 srli a5,a5,0x30 - c0013fe6: 4729 li a4,10 - c0013fe8: 02f77363 bgeu a4,a5,c001400e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53031 + c00140ce: 37ad addiw a5,a5,-21 + c00140d0: 17c2 slli a5,a5,0x30 + c00140d2: 93c1 srli a5,a5,0x30 + c00140d4: 4729 li a4,10 + c00140d6: 02f77363 bgeu a4,a5,c00140fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53039 JS_ThrowTypeError(ctx, "not a %s", is_dataview ? "DataView" : "TypedArray"); - c0013fec: 0004a617 auipc a2,0x4a - c0013ff0: c8c60613 addi a2,a2,-884 # c005dc78 - c0013ff4: a031 j c0014000 - c0013ff6: 0004a617 auipc a2,0x4a - c0013ffa: c8260613 addi a2,a2,-894 # c005dc78 - c0013ffe: fee1 bnez a3,c0013fd6 - c0014000: 0004a597 auipc a1,0x4a - c0014004: c8858593 addi a1,a1,-888 # c005dc88 - c0014008: beeff0ef jal ra,c00133f6 - c001400c: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53036 -} - c001400e: 60e2 ld ra,24(sp) - c0014010: 852e mv a0,a1 - c0014012: 6105 addi sp,sp,32 - c0014014: 8082 ret - -00000000c0014016 : + c00140da: 0004a617 auipc a2,0x4a + c00140de: dce60613 addi a2,a2,-562 # c005dea8 + c00140e2: a031 j c00140ee + c00140e4: 0004a617 auipc a2,0x4a + c00140e8: dc460613 addi a2,a2,-572 # c005dea8 + c00140ec: fee1 bnez a3,c00140c4 + c00140ee: 0004a597 auipc a1,0x4a + c00140f2: dca58593 addi a1,a1,-566 # c005deb8 + c00140f6: beeff0ef jal ra,c00134e4 + c00140fa: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53044 +} + c00140fc: 60e2 ld ra,24(sp) + c00140fe: 852e mv a0,a1 + c0014100: 6105 addi sp,sp,32 + c0014102: 8082 ret + +00000000c0014104 : js_typed_array_get_length_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53334 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53342 { - c0014016: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53336 + c0014104: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53344 p = get_typed_array(ctx, obj, 0); - c0014018: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53334 -{ - c001401a: e822 sd s0,16(sp) - c001401c: ec06 sd ra,24(sp) - c001401e: 842a mv s0,a0 - c0014020: e02e sd a1,0(sp) - c0014022: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53336 + c0014106: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53342 +{ + c0014108: e822 sd s0,16(sp) + c001410a: ec06 sd ra,24(sp) + c001410c: 842a mv s0,a0 + c001410e: e02e sd a1,0(sp) + c0014110: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53344 p = get_typed_array(ctx, obj, 0); - c0014024: f95ff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53337 + c0014112: f95ff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53345 if (!p) - c0014028: c911 beqz a0,c001403c + c0014116: c911 beqz a0,c001412a typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001402a: 791c ld a5,48(a0) - c001402c: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c0014118: 791c ld a5,48(a0) + c001411a: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c001402e: 7b9c ld a5,48(a5) + c001411c: 7b9c ld a5,48(a5) js_typed_array_get_length_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53347 if (typed_array_is_detached(ctx, p)) { - c0014030: 0047c783 lbu a5,4(a5) # 4000004 <__clzdi2-0xbbfffffc> - c0014034: c791 beqz a5,c0014040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53340 + c001411e: 0047c783 lbu a5,4(a5) # 4000004 <__clzdi2-0xbbfffffc> + c0014122: c791 beqz a5,c001412e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53348 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0014036: 8522 mv a0,s0 - c0014038: c9bff0ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53338 + c0014124: 8522 mv a0,s0 + c0014126: c9bff0ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53346 return -1; - c001403c: 557d li a0,-1 - c001403e: a011 j c0014042 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53343 + c001412a: 557d li a0,-1 + c001412c: a011 j c0014130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53351 return p->u.array.count; - c0014040: 4128 lw a0,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53344 + c001412e: 4128 lw a0,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53352 } - c0014042: 60e2 ld ra,24(sp) - c0014044: 6442 ld s0,16(sp) - c0014046: 6105 addi sp,sp,32 - c0014048: 8082 ret + c0014130: 60e2 ld ra,24(sp) + c0014132: 6442 ld s0,16(sp) + c0014134: 6105 addi sp,sp,32 + c0014136: 8082 ret -00000000c001404a : +00000000c0014138 : js_typed_array_reverse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54029 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54037 { - c001404a: 7179 addi sp,sp,-48 - c001404c: f406 sd ra,40(sp) - c001404e: e02e sd a1,0(sp) - c0014050: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54033 + c0014138: 7179 addi sp,sp,-48 + c001413a: f406 sd ra,40(sp) + c001413c: e02e sd a1,0(sp) + c001413e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54041 len = js_typed_array_get_length_internal(ctx, this_val); - c0014052: fc5ff0ef jal ra,c0014016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54034 + c0014140: fc5ff0ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54042 if (len < 0) - c0014056: 0a054d63 bltz a0,c0014110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54036 + c0014144: 0a054d63 bltz a0,c00141fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54044 if (len > 0) { - c001405a: cd31 beqz a0,c00140b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54037 + c0014148: cd31 beqz a0,c00141a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54045 p = JS_VALUE_GET_OBJ(this_val); - c001405c: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54038 + c001414a: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54046 switch (typed_array_size_log2(p->class_id)) { - c001405e: 0067d703 lhu a4,6(a5) - c0014062: feb7069b addiw a3,a4,-21 - c0014066: 00053717 auipc a4,0x53 - c001406a: ed270713 addi a4,a4,-302 # c0066f38 - c001406e: 9736 add a4,a4,a3 - c0014070: 00074703 lbu a4,0(a4) - c0014074: 4689 li a3,2 - c0014076: 06d70163 beq a4,a3,c00140d8 - c001407a: 02e6e463 bltu a3,a4,c00140a2 - c001407e: c71d beqz a4,c00140ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54052 + c001414c: 0067d703 lhu a4,6(a5) + c0014150: feb7069b addiw a3,a4,-21 + c0014154: 00053717 auipc a4,0x53 + c0014158: 04470713 addi a4,a4,68 # c0067198 + c001415c: 9736 add a4,a4,a3 + c001415e: 00074703 lbu a4,0(a4) + c0014162: 4689 li a3,2 + c0014164: 06d70163 beq a4,a3,c00141c6 + c0014168: 02e6e463 bltu a3,a4,c0014190 + c001416c: c71d beqz a4,c001419a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54060 uint16_t *p1 = p->u.array.u.uint16_ptr; - c0014080: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54053 + c001416e: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54061 uint16_t *p2 = p1 + len - 1; - c0014082: 0506 slli a0,a0,0x1 - c0014084: 1579 addi a0,a0,-2 - c0014086: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54054 + c0014170: 0506 slli a0,a0,0x1 + c0014172: 1579 addi a0,a0,-2 + c0014174: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54062 while (p1 < p2) { - c0014088: 02a7f763 bgeu a5,a0,c00140b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54056 + c0014176: 02a7f763 bgeu a5,a0,c00141a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54064 *p1++ = *p2; - c001408c: 00055683 lhu a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54055 + c001417a: 00055683 lhu a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54063 uint16_t v = *p1; - c0014090: 0007d703 lhu a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54057 + c001417e: 0007d703 lhu a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54065 *p2-- = v; - c0014094: 1579 addi a0,a0,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54056 + c0014182: 1579 addi a0,a0,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54064 *p1++ = *p2; - c0014096: 0789 addi a5,a5,2 - c0014098: fed79f23 sh a3,-2(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54057 + c0014184: 0789 addi a5,a5,2 + c0014186: fed79f23 sh a3,-2(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54065 *p2-- = v; - c001409c: 00e51123 sh a4,2(a0) - c00140a0: b7e5 j c0014088 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54038 + c001418a: 00e51123 sh a4,2(a0) + c001418e: b7e5 j c0014176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54046 switch (typed_array_size_log2(p->class_id)) { - c00140a2: 468d li a3,3 - c00140a4: 04d70863 beq a4,a3,c00140f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54084 + c0014190: 468d li a3,3 + c0014192: 04d70863 beq a4,a3,c00141e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54092 abort(); - c00140a8: 762410ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54041 + c0014196: 045410ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54049 uint8_t *p1 = p->u.array.u.uint8_ptr; - c00140ac: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54042 + c001419a: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54050 uint8_t *p2 = p1 + len - 1; - c00140ae: 157d addi a0,a0,-1 - c00140b0: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54043 + c001419c: 157d addi a0,a0,-1 + c001419e: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54051 while (p1 < p2) { - c00140b2: 00a7e863 bltu a5,a0,c00140c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54087 + c00141a0: 00a7e863 bltu a5,a0,c00141b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54095 return JS_DupValue(ctx, this_val); - c00140b6: 6502 ld a0,0(sp) - c00140b8: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54088 + c00141a4: 6502 ld a0,0(sp) + c00141a6: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54096 } - c00140ba: 70a2 ld ra,40(sp) - c00140bc: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54087 + c00141a8: 70a2 ld ra,40(sp) + c00141aa: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54095 return JS_DupValue(ctx, this_val); - c00140be: db0f206f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54045 + c00141ac: db0f206f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54053 *p1++ = *p2; - c00140c2: 00054683 lbu a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54044 + c00141b0: 00054683 lbu a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54052 uint8_t v = *p1; - c00140c6: 0007c703 lbu a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54046 + c00141b4: 0007c703 lbu a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54054 *p2-- = v; - c00140ca: 157d addi a0,a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54045 + c00141b8: 157d addi a0,a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54053 *p1++ = *p2; - c00140cc: 0785 addi a5,a5,1 - c00140ce: fed78fa3 sb a3,-1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54046 + c00141ba: 0785 addi a5,a5,1 + c00141bc: fed78fa3 sb a3,-1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54054 *p2-- = v; - c00140d2: 00e500a3 sb a4,1(a0) - c00140d6: bff1 j c00140b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54063 + c00141c0: 00e500a3 sb a4,1(a0) + c00141c4: bff1 j c00141a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54071 uint32_t *p1 = p->u.array.u.uint32_ptr; - c00140d8: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54064 + c00141c6: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54072 uint32_t *p2 = p1 + len - 1; - c00140da: 050a slli a0,a0,0x2 - c00140dc: 1571 addi a0,a0,-4 - c00140de: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54065 + c00141c8: 050a slli a0,a0,0x2 + c00141ca: 1571 addi a0,a0,-4 + c00141cc: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54073 while (p1 < p2) { - c00140e0: fca7fbe3 bgeu a5,a0,c00140b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54067 + c00141ce: fca7fbe3 bgeu a5,a0,c00141a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54075 *p1++ = *p2; - c00140e4: 4114 lw a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54066 + c00141d2: 4114 lw a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54074 uint32_t v = *p1; - c00140e6: 4398 lw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54068 + c00141d4: 4398 lw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54076 *p2-- = v; - c00140e8: 1571 addi a0,a0,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54067 + c00141d6: 1571 addi a0,a0,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54075 *p1++ = *p2; - c00140ea: 0791 addi a5,a5,4 - c00140ec: fed7ae23 sw a3,-4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54068 + c00141d8: 0791 addi a5,a5,4 + c00141da: fed7ae23 sw a3,-4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54076 *p2-- = v; - c00140f0: c158 sw a4,4(a0) - c00140f2: b7fd j c00140e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54074 + c00141de: c158 sw a4,4(a0) + c00141e0: b7fd j c00141ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54082 uint64_t *p1 = p->u.array.u.uint64_ptr; - c00140f4: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54075 + c00141e2: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54083 uint64_t *p2 = p1 + len - 1; - c00140f6: 050e slli a0,a0,0x3 - c00140f8: 1561 addi a0,a0,-8 - c00140fa: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54076 + c00141e4: 050e slli a0,a0,0x3 + c00141e6: 1561 addi a0,a0,-8 + c00141e8: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54084 while (p1 < p2) { - c00140fc: faa7fde3 bgeu a5,a0,c00140b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54078 + c00141ea: faa7fde3 bgeu a5,a0,c00141a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54086 *p1++ = *p2; - c0014100: 6114 ld a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54077 + c00141ee: 6114 ld a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54085 uint64_t v = *p1; - c0014102: 6398 ld a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54079 + c00141f0: 6398 ld a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54087 *p2-- = v; - c0014104: 1561 addi a0,a0,-8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54078 + c00141f2: 1561 addi a0,a0,-8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54086 *p1++ = *p2; - c0014106: 07a1 addi a5,a5,8 - c0014108: fed7bc23 sd a3,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54079 + c00141f4: 07a1 addi a5,a5,8 + c00141f6: fed7bc23 sd a3,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54087 *p2-- = v; - c001410c: e518 sd a4,8(a0) - c001410e: b7fd j c00140fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54088 (discriminator 1) + c00141fa: e518 sd a4,8(a0) + c00141fc: b7fd j c00141ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54096 (discriminator 1) } - c0014110: 70a2 ld ra,40(sp) - c0014112: 4501 li a0,0 - c0014114: 4599 li a1,6 - c0014116: 6145 addi sp,sp,48 - c0014118: 8082 ret + c00141fe: 70a2 ld ra,40(sp) + c0014200: 4501 li a0,0 + c0014202: 4599 li a1,6 + c0014204: 6145 addi sp,sp,48 + c0014206: 8082 ret -00000000c001411a : +00000000c0014208 : js_typed_array_get_byteOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53115 -{ - c001411a: 715d addi sp,sp,-80 - c001411c: e0a2 sd s0,64(sp) - c001411e: fc26 sd s1,56(sp) - c0014120: e486 sd ra,72(sp) - c0014122: 842a mv s0,a0 - c0014124: e02e sd a1,0(sp) - c0014126: e432 sd a2,8(sp) - c0014128: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53123 +{ + c0014208: 715d addi sp,sp,-80 + c001420a: e0a2 sd s0,64(sp) + c001420c: fc26 sd s1,56(sp) + c001420e: e486 sd ra,72(sp) + c0014210: 842a mv s0,a0 + c0014212: e02e sd a1,0(sp) + c0014214: e432 sd a2,8(sp) + c0014216: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53126 p = get_typed_array(ctx, this_val, is_dataview); - c001412a: e8fff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53119 + c0014218: e8fff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53127 if (!p) - c001412e: e919 bnez a0,c0014144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53120 + c001421c: e919 bnez a0,c0014232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53128 return JS_EXCEPTION; - c0014130: 4799 li a5,6 - c0014132: e802 sd zero,16(sp) - c0014134: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53130 (discriminator 1) -} - c0014136: 60a6 ld ra,72(sp) - c0014138: 6406 ld s0,64(sp) - c001413a: 6542 ld a0,16(sp) - c001413c: 65e2 ld a1,24(sp) - c001413e: 74e2 ld s1,56(sp) - c0014140: 6161 addi sp,sp,80 - c0014142: 8082 ret + c001421e: 4799 li a5,6 + c0014220: e802 sd zero,16(sp) + c0014222: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53138 (discriminator 1) +} + c0014224: 60a6 ld ra,72(sp) + c0014226: 6406 ld s0,64(sp) + c0014228: 6542 ld a0,16(sp) + c001422a: 65e2 ld a1,24(sp) + c001422c: 74e2 ld s1,56(sp) + c001422e: 6161 addi sp,sp,80 + c0014230: 8082 ret typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53049 JSTypedArray *ta = p->u.typed_array; - c0014144: 791c ld a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 + c0014232: 791c ld a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c0014146: 6f98 ld a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c0014234: 6f98 ld a4,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c0014148: 7b18 ld a4,48(a4) + c0014236: 7b18 ld a4,48(a4) js_typed_array_get_byteOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53129 if (typed_array_is_detached(ctx, p)) { - c001414a: 00474703 lbu a4,4(a4) - c001414e: cf01 beqz a4,c0014166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53122 + c0014238: 00474703 lbu a4,4(a4) + c001423c: cf01 beqz a4,c0014254 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53130 if (is_dataview) { - c0014150: c881 beqz s1,c0014160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53123 + c001423e: c881 beqz s1,c001424e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53131 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0014152: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53130 -} - c0014154: 6406 ld s0,64(sp) - c0014156: 60a6 ld ra,72(sp) - c0014158: 74e2 ld s1,56(sp) - c001415a: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53123 + c0014240: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53138 +} + c0014242: 6406 ld s0,64(sp) + c0014244: 60a6 ld ra,72(sp) + c0014246: 74e2 ld s1,56(sp) + c0014248: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53131 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001415c: b77ff06f j c0013cd2 + c001424a: b77ff06f j c0013dc0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0014160: e802 sd zero,16(sp) - c0014162: ec02 sd zero,24(sp) + c001424e: e802 sd zero,16(sp) + c0014250: ec02 sd zero,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0014164: bfc9 j c0014136 + c0014252: bfc9 j c0014224 js_typed_array_get_byteOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53129 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53137 return JS_NewInt32(ctx, ta->offset); - c0014166: 539c lw a5,32(a5) + c0014254: 539c lw a5,32(a5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0014168: d202 sw zero,36(sp) - c001416a: d03e sw a5,32(sp) - c001416c: 7782 ld a5,32(sp) - c001416e: e83e sd a5,16(sp) - c0014170: bfcd j c0014162 + c0014256: d202 sw zero,36(sp) + c0014258: d03e sw a5,32(sp) + c001425a: 7782 ld a5,32(sp) + c001425c: e83e sd a5,16(sp) + c001425e: bfcd j c0014250 -00000000c0014172 : +00000000c0014260 : js_typed_array_get_byteLength(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53095 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53103 { - c0014172: 715d addi sp,sp,-80 - c0014174: e0a2 sd s0,64(sp) - c0014176: fc26 sd s1,56(sp) - c0014178: e486 sd ra,72(sp) - c001417a: 842a mv s0,a0 - c001417c: e02e sd a1,0(sp) - c001417e: e432 sd a2,8(sp) - c0014180: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53098 + c0014260: 715d addi sp,sp,-80 + c0014262: e0a2 sd s0,64(sp) + c0014264: fc26 sd s1,56(sp) + c0014266: e486 sd ra,72(sp) + c0014268: 842a mv s0,a0 + c001426a: e02e sd a1,0(sp) + c001426c: e432 sd a2,8(sp) + c001426e: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53106 p = get_typed_array(ctx, this_val, is_dataview); - c0014182: e37ff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53099 + c0014270: e37ff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53107 if (!p) - c0014186: e919 bnez a0,c001419c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53100 + c0014274: e919 bnez a0,c001428a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53108 return JS_EXCEPTION; - c0014188: 4799 li a5,6 - c001418a: e802 sd zero,16(sp) - c001418c: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53110 (discriminator 1) -} - c001418e: 60a6 ld ra,72(sp) - c0014190: 6406 ld s0,64(sp) - c0014192: 6542 ld a0,16(sp) - c0014194: 65e2 ld a1,24(sp) - c0014196: 74e2 ld s1,56(sp) - c0014198: 6161 addi sp,sp,80 - c001419a: 8082 ret + c0014276: 4799 li a5,6 + c0014278: e802 sd zero,16(sp) + c001427a: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53118 (discriminator 1) +} + c001427c: 60a6 ld ra,72(sp) + c001427e: 6406 ld s0,64(sp) + c0014280: 6542 ld a0,16(sp) + c0014282: 65e2 ld a1,24(sp) + c0014284: 74e2 ld s1,56(sp) + c0014286: 6161 addi sp,sp,80 + c0014288: 8082 ret typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53049 JSTypedArray *ta = p->u.typed_array; - c001419c: 791c ld a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 + c001428a: 791c ld a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001419e: 6f98 ld a4,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c001428c: 6f98 ld a4,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c00141a0: 7b18 ld a4,48(a4) + c001428e: 7b18 ld a4,48(a4) js_typed_array_get_byteLength(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53109 if (typed_array_is_detached(ctx, p)) { - c00141a2: 00474703 lbu a4,4(a4) - c00141a6: cf01 beqz a4,c00141be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53102 + c0014290: 00474703 lbu a4,4(a4) + c0014294: cf01 beqz a4,c00142ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53110 if (is_dataview) { - c00141a8: c881 beqz s1,c00141b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53103 + c0014296: c881 beqz s1,c00142a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53111 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c00141aa: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53110 + c0014298: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53118 } - c00141ac: 6406 ld s0,64(sp) - c00141ae: 60a6 ld ra,72(sp) - c00141b0: 74e2 ld s1,56(sp) - c00141b2: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53103 + c001429a: 6406 ld s0,64(sp) + c001429c: 60a6 ld ra,72(sp) + c001429e: 74e2 ld s1,56(sp) + c00142a0: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53111 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c00141b4: b1fff06f j c0013cd2 + c00142a2: b1fff06f j c0013dc0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00141b8: e802 sd zero,16(sp) - c00141ba: ec02 sd zero,24(sp) + c00142a6: e802 sd zero,16(sp) + c00142a8: ec02 sd zero,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00141bc: bfc9 j c001418e + c00142aa: bfc9 j c001427c js_typed_array_get_byteLength(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53117 return JS_NewInt32(ctx, ta->length); - c00141be: 53dc lw a5,36(a5) + c00142ac: 53dc lw a5,36(a5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00141c0: d202 sw zero,36(sp) - c00141c2: d03e sw a5,32(sp) - c00141c4: 7782 ld a5,32(sp) - c00141c6: e83e sd a5,16(sp) - c00141c8: bfcd j c00141ba + c00142ae: d202 sw zero,36(sp) + c00142b0: d03e sw a5,32(sp) + c00142b2: 7782 ld a5,32(sp) + c00142b4: e83e sd a5,16(sp) + c00142b6: bfcd j c00142a8 -00000000c00141ca : +00000000c00142b8 : js_typed_array_get_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53090 { - c00141ca: 7179 addi sp,sp,-48 - c00141cc: f406 sd ra,40(sp) - c00141ce: e02e sd a1,0(sp) - c00141d0: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53085 + c00142b8: 7179 addi sp,sp,-48 + c00142ba: f406 sd ra,40(sp) + c00142bc: e02e sd a1,0(sp) + c00142be: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53093 p = get_typed_array(ctx, this_val, is_dataview); - c00141d2: de7ff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53086 + c00142c0: de7ff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53094 if (!p) - c00141d6: e909 bnez a0,c00141e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53087 + c00142c4: e909 bnez a0,c00142d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53095 return JS_EXCEPTION; - c00141d8: e802 sd zero,16(sp) - c00141da: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53090 + c00142c6: e802 sd zero,16(sp) + c00142c8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53098 } - c00141dc: 70a2 ld ra,40(sp) - c00141de: ec3e sd a5,24(sp) - c00141e0: 6542 ld a0,16(sp) - c00141e2: 65e2 ld a1,24(sp) - c00141e4: 6145 addi sp,sp,48 - c00141e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53089 + c00142ca: 70a2 ld ra,40(sp) + c00142cc: ec3e sd a5,24(sp) + c00142ce: 6542 ld a0,16(sp) + c00142d0: 65e2 ld a1,24(sp) + c00142d2: 6145 addi sp,sp,48 + c00142d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53097 return JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, ta->buffer)); - c00141e8: 791c ld a5,48(a0) - c00141ea: 6f9c ld a5,24(a5) + c00142d6: 791c ld a5,48(a0) + c00142d8: 6f9c ld a5,24(a5) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c00141ec: 4398 lw a4,0(a5) - c00141ee: e83e sd a5,16(sp) - c00141f0: 2705 addiw a4,a4,1 - c00141f2: c398 sw a4,0(a5) + c00142da: 4398 lw a4,0(a5) + c00142dc: e83e sd a5,16(sp) + c00142de: 2705 addiw a4,a4,1 + c00142e0: c398 sw a4,0(a5) js_typed_array_get_buffer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c00141f4: 57fd li a5,-1 - c00141f6: b7dd j c00141dc + c00142e2: 57fd li a5,-1 + c00142e4: b7dd j c00142ca -00000000c00141f8 : +00000000c00142e6 : validate_typed_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53066 { - c00141f8: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53060 + c00142e6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53068 p = get_typed_array(ctx, this_val, 0); - c00141fa: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53058 -{ - c00141fc: e822 sd s0,16(sp) - c00141fe: ec06 sd ra,24(sp) - c0014200: 842a mv s0,a0 - c0014202: e02e sd a1,0(sp) - c0014204: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53060 + c00142e8: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53066 +{ + c00142ea: e822 sd s0,16(sp) + c00142ec: ec06 sd ra,24(sp) + c00142ee: 842a mv s0,a0 + c00142f0: e02e sd a1,0(sp) + c00142f2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53068 p = get_typed_array(ctx, this_val, 0); - c0014206: db3ff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53061 + c00142f4: db3ff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53069 if (!p) - c001420a: c919 beqz a0,c0014220 + c00142f8: c919 beqz a0,c001430e typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001420c: 791c ld a5,48(a0) + c00142fa: 791c ld a5,48(a0) validate_typed_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53075 return 0; - c001420e: 4501 li a0,0 + c00142fc: 4501 li a0,0 typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c0014210: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c00142fe: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c0014212: 7b9c ld a5,48(a5) + c0014300: 7b9c ld a5,48(a5) validate_typed_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53071 if (typed_array_is_detached(ctx, p)) { - c0014214: 0047c783 lbu a5,4(a5) - c0014218: c789 beqz a5,c0014222 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53064 + c0014302: 0047c783 lbu a5,4(a5) + c0014306: c789 beqz a5,c0014310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53072 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001421a: 8522 mv a0,s0 - c001421c: ab7ff0ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53062 + c0014308: 8522 mv a0,s0 + c001430a: ab7ff0ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53070 return -1; - c0014220: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53068 + c001430e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53076 } - c0014222: 60e2 ld ra,24(sp) - c0014224: 6442 ld s0,16(sp) - c0014226: 6105 addi sp,sp,32 - c0014228: 8082 ret + c0014310: 60e2 ld ra,24(sp) + c0014312: 6442 ld s0,16(sp) + c0014314: 6105 addi sp,sp,32 + c0014316: 8082 ret -00000000c001422a : +00000000c0014318 : js_typed_array_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53072 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53080 { - c001422a: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53074 + c0014318: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53082 p = get_typed_array(ctx, this_val, 0); - c001422c: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53072 + c001431a: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53080 { - c001422e: fc06 sd ra,56(sp) - c0014230: e02e sd a1,0(sp) - c0014232: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53074 + c001431c: fc06 sd ra,56(sp) + c001431e: e02e sd a1,0(sp) + c0014320: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53082 p = get_typed_array(ctx, this_val, 0); - c0014234: d85ff0ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53075 + c0014322: d85ff0ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53083 if (!p) - c0014238: e909 bnez a0,c001424a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53076 + c0014326: e909 bnez a0,c0014338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53084 return JS_EXCEPTION; - c001423a: 4799 li a5,6 - c001423c: e802 sd zero,16(sp) - c001423e: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53078 (discriminator 1) -} - c0014240: 70e2 ld ra,56(sp) - c0014242: 6542 ld a0,16(sp) - c0014244: 65e2 ld a1,24(sp) - c0014246: 6121 addi sp,sp,64 - c0014248: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53077 + c0014328: 4799 li a5,6 + c001432a: e802 sd zero,16(sp) + c001432c: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53086 (discriminator 1) +} + c001432e: 70e2 ld ra,56(sp) + c0014330: 6542 ld a0,16(sp) + c0014332: 65e2 ld a1,24(sp) + c0014334: 6121 addi sp,sp,64 + c0014336: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53085 return JS_NewInt32(ctx, p->u.array.count); - c001424a: 413c lw a5,64(a0) + c0014338: 413c lw a5,64(a0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001424c: d202 sw zero,36(sp) - c001424e: ec02 sd zero,24(sp) - c0014250: d03e sw a5,32(sp) - c0014252: 7782 ld a5,32(sp) - c0014254: e83e sd a5,16(sp) - c0014256: b7ed j c0014240 - -00000000c0014258 : + c001433a: d202 sw zero,36(sp) + c001433c: ec02 sd zero,24(sp) + c001433e: d03e sw a5,32(sp) + c0014340: 7782 ld a5,32(sp) + c0014342: e83e sd a5,16(sp) + c0014344: b7ed j c001432e + +00000000c0014346 : js_throw_type_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14751 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14759 { - c0014258: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 + c0014346: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 return JS_ThrowTypeError(ctx, "invalid property access"); - c001425a: 0004a597 auipc a1,0x4a - c001425e: a3e58593 addi a1,a1,-1474 # c005dc98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14754 + c0014348: 0004a597 auipc a1,0x4a + c001434c: b8058593 addi a1,a1,-1152 # c005dec8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14762 } - c0014262: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 + c0014350: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 return JS_ThrowTypeError(ctx, "invalid property access"); - c0014264: 992ff06f j c00133f6 + c0014352: 992ff06f j c00134e4 -00000000c0014268 : +00000000c0014356 : js_function_proto_caller(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14769 { - c0014268: 715d addi sp,sp,-80 - c001426a: e0a2 sd s0,64(sp) - c001426c: e02e sd a1,0(sp) - c001426e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14762 + c0014356: 715d addi sp,sp,-80 + c0014358: e0a2 sd s0,64(sp) + c001435a: e02e sd a1,0(sp) + c001435c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14770 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c0014270: 852e mv a0,a1 - c0014272: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 + c001435e: 852e mv a0,a1 + c0014360: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14769 { - c0014274: e486 sd ra,72(sp) - c0014276: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14762 + c0014362: e486 sd ra,72(sp) + c0014364: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14770 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c0014278: cfef10ef jal ra,c0005776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14763 + c0014366: cfef10ef jal ra,c0005864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14771 if (!b || (b->js_mode & JS_MODE_STRICT) || !b->has_prototype) { - c001427c: c909 beqz a0,c001428e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14763 (discriminator 1) - c001427e: 01854783 lbu a5,24(a0) - c0014282: 8b85 andi a5,a5,1 - c0014284: e789 bnez a5,c001428e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14763 (discriminator 2) - c0014286: 01954783 lbu a5,25(a0) - c001428a: 8b85 andi a5,a5,1 - c001428c: eb99 bnez a5,c00142a2 + c001436a: c909 beqz a0,c001437c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14771 (discriminator 1) + c001436c: 01854783 lbu a5,24(a0) + c0014370: 8b85 andi a5,a5,1 + c0014372: e789 bnez a5,c001437c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14771 (discriminator 2) + c0014374: 01954783 lbu a5,25(a0) + c0014378: 8b85 andi a5,a5,1 + c001437a: eb99 bnez a5,c0014390 js_throw_type_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 return JS_ThrowTypeError(ctx, "invalid property access"); - c001428e: 8522 mv a0,s0 + c001437c: 8522 mv a0,s0 js_function_proto_caller(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14775 } - c0014290: 6406 ld s0,64(sp) - c0014292: 60a6 ld ra,72(sp) + c001437e: 6406 ld s0,64(sp) + c0014380: 60a6 ld ra,72(sp) js_throw_type_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 return JS_ThrowTypeError(ctx, "invalid property access"); - c0014294: 0004a597 auipc a1,0x4a - c0014298: a0458593 addi a1,a1,-1532 # c005dc98 + c0014382: 0004a597 auipc a1,0x4a + c0014386: b4658593 addi a1,a1,-1210 # c005dec8 js_function_proto_caller(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14775 } - c001429c: 6161 addi sp,sp,80 + c001438a: 6161 addi sp,sp,80 js_throw_type_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14761 return JS_ThrowTypeError(ctx, "invalid property access"); - c001429e: 958ff06f j c00133f6 + c001438c: 958ff06f j c00134e4 js_function_proto_caller(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14775 } - c00142a2: 60a6 ld ra,72(sp) - c00142a4: 6406 ld s0,64(sp) - c00142a6: 4501 li a0,0 - c00142a8: 458d li a1,3 - c00142aa: 6161 addi sp,sp,80 - c00142ac: 8082 ret + c0014390: 60a6 ld ra,72(sp) + c0014392: 6406 ld s0,64(sp) + c0014394: 4501 li a0,0 + c0014396: 458d li a1,3 + c0014398: 6161 addi sp,sp,80 + c001439a: 8082 ret -00000000c00142ae : +00000000c001439c : js_typed_array_base_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54581 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54589 { - c00142ae: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54582 + c001439c: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54590 return JS_ThrowTypeError(ctx, "cannot be called"); - c00142b0: 0004a597 auipc a1,0x4a - c00142b4: a0058593 addi a1,a1,-1536 # c005dcb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54583 + c001439e: 0004a597 auipc a1,0x4a + c00143a2: b4258593 addi a1,a1,-1214 # c005dee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54591 } - c00142b8: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54582 + c00143a6: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54590 return JS_ThrowTypeError(ctx, "cannot be called"); - c00142ba: 93cff06f j c00133f6 + c00143a8: 93cff06f j c00134e4 -00000000c00142be : +00000000c00143ac : JS_ThrowTypeErrorRevokedProxy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45823 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45831 static JSValue JS_ThrowTypeErrorRevokedProxy(JSContext *ctx) - c00142be: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45825 + c00143ac: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45833 return JS_ThrowTypeError(ctx, "revoked proxy"); - c00142c0: 0004a597 auipc a1,0x4a - c00142c4: a0858593 addi a1,a1,-1528 # c005dcc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45826 + c00143ae: 0004a597 auipc a1,0x4a + c00143b2: b4a58593 addi a1,a1,-1206 # c005def8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45834 } - c00142c8: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45825 + c00143b6: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45833 return JS_ThrowTypeError(ctx, "revoked proxy"); - c00142ca: 92cff06f j c00133f6 + c00143b8: 92cff06f j c00134e4 -00000000c00142ce : +00000000c00143bc : JS_IsArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12099 -{ - c00142ce: 7139 addi sp,sp,-64 - c00142d0: f822 sd s0,48(sp) - c00142d2: fc06 sd ra,56(sp) - c00142d4: f426 sd s1,40(sp) - c00142d6: e02e sd a1,0(sp) - c00142d8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12107 +{ + c00143bc: 7139 addi sp,sp,-64 + c00143be: f822 sd s0,48(sp) + c00143c0: fc06 sd ra,56(sp) + c00143c2: f426 sd s1,40(sp) + c00143c4: e02e sd a1,0(sp) + c00143c6: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12109 if (JS_VALUE_GET_TAG(val) == JS_TAG_OBJECT) { - c00142da: 0006041b sext.w s0,a2 - c00142de: 577d li a4,-1 - c00142e0: 04e41b63 bne s0,a4,c0014336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12103 + c00143c8: 0006041b sext.w s0,a2 + c00143cc: 577d li a4,-1 + c00143ce: 04e41b63 bne s0,a4,c0014424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12111 if (unlikely(p->class_id == JS_CLASS_PROXY)) - c00142e4: 0065d703 lhu a4,6(a1) - c00142e8: 02c00693 li a3,44 - c00142ec: 84aa mv s1,a0 - c00142ee: 852e mv a0,a1 - c00142f0: 02d71f63 bne a4,a3,c001432e - c00142f4: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12104 + c00143d2: 0065d703 lhu a4,6(a1) + c00143d6: 02c00693 li a3,44 + c00143da: 84aa mv s1,a0 + c00143dc: 852e mv a0,a1 + c00143de: 02d71f63 bne a4,a3,c001441c + c00143e2: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12112 return js_proxy_isArray(ctx, val); - c00142f6: e82e sd a1,16(sp) - c00142f8: ec32 sd a2,24(sp) + c00143e4: e82e sd a1,16(sp) + c00143e6: ec32 sd a2,24(sp) js_proxy_isArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46638 JSProxyData *s = JS_GetOpaque(obj, JS_CLASS_PROXY); - c00142fa: 85be mv a1,a5 - c00142fc: 02c00613 li a2,44 - c0014300: db2f60ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46631 + c00143e8: 85be mv a1,a5 + c00143ea: 02c00613 li a2,44 + c00143ee: db2f60ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46639 if (!s) - c0014304: c90d beqz a0,c0014336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46637 + c00143f2: c90d beqz a0,c0014424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46645 if (s->is_revoked) { - c0014306: 02154783 lbu a5,33(a0) - c001430a: cb91 beqz a5,c001431e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46638 + c00143f4: 02154783 lbu a5,33(a0) + c00143f8: cb91 beqz a5,c001440c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46646 JS_ThrowTypeErrorRevokedProxy(ctx); - c001430c: 8526 mv a0,s1 - c001430e: fb1ff0ef jal ra,c00142be + c00143fa: 8526 mv a0,s1 + c00143fc: fb1ff0ef jal ra,c00143ac JS_IsArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12110 -} - c0014312: 70e2 ld ra,56(sp) - c0014314: 8522 mv a0,s0 - c0014316: 7442 ld s0,48(sp) - c0014318: 74a2 ld s1,40(sp) - c001431a: 6121 addi sp,sp,64 - c001431c: 8082 ret - c001431e: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12118 +} + c0014400: 70e2 ld ra,56(sp) + c0014402: 8522 mv a0,s0 + c0014404: 7442 ld s0,48(sp) + c0014406: 74a2 ld s1,40(sp) + c0014408: 6121 addi sp,sp,64 + c001440a: 8082 ret + c001440c: 7442 ld s0,48(sp) js_proxy_isArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46649 return JS_IsArray(ctx, s->target); - c0014320: 610c ld a1,0(a0) - c0014322: 6510 ld a2,8(a0) + c001440e: 610c ld a1,0(a0) + c0014410: 6510 ld a2,8(a0) JS_IsArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12118 } - c0014324: 70e2 ld ra,56(sp) + c0014412: 70e2 ld ra,56(sp) js_proxy_isArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46649 return JS_IsArray(ctx, s->target); - c0014326: 8526 mv a0,s1 + c0014414: 8526 mv a0,s1 JS_IsArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12118 } - c0014328: 74a2 ld s1,40(sp) - c001432a: 6121 addi sp,sp,64 + c0014416: 74a2 ld s1,40(sp) + c0014418: 6121 addi sp,sp,64 js_proxy_isArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46649 return JS_IsArray(ctx, s->target); - c001432c: b74d j c00142ce + c001441a: b74d j c00143bc JS_IsArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12114 return p->class_id == JS_CLASS_ARRAY; - c001432e: 1779 addi a4,a4,-2 - c0014330: 00173413 seqz s0,a4 - c0014334: bff9 j c0014312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12108 + c001441c: 1779 addi a4,a4,-2 + c001441e: 00173413 seqz s0,a4 + c0014422: bff9 j c0014400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12116 return FALSE; - c0014336: 4401 li s0,0 - c0014338: bfe9 j c0014312 + c0014424: 4401 li s0,0 + c0014426: bfe9 j c0014400 -00000000c001433a : +00000000c0014428 : js_array_isArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39054 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39062 ret = JS_IsArray(ctx, argv[0]); - c001433a: 630c ld a1,0(a4) - c001433c: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39052 + c0014428: 630c ld a1,0(a4) + c001442a: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39060 { - c001433e: 7139 addi sp,sp,-64 - c0014340: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39054 + c001442c: 7139 addi sp,sp,-64 + c001442e: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39062 ret = JS_IsArray(ctx, argv[0]); - c0014342: f8dff0ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39055 + c0014430: f8dff0ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39063 if (ret < 0) - c0014346: 00055a63 bgez a0,c001435a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39056 + c0014434: 00055a63 bgez a0,c0014448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39064 return JS_EXCEPTION; - c001434a: e802 sd zero,16(sp) - c001434c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39059 -} - c001434e: 70e2 ld ra,56(sp) - c0014350: ec3e sd a5,24(sp) - c0014352: 6542 ld a0,16(sp) - c0014354: 65e2 ld a1,24(sp) - c0014356: 6121 addi sp,sp,64 - c0014358: 8082 ret + c0014438: e802 sd zero,16(sp) + c001443a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39067 +} + c001443c: 70e2 ld ra,56(sp) + c001443e: ec3e sd a5,24(sp) + c0014440: 6542 ld a0,16(sp) + c0014442: 65e2 ld a1,24(sp) + c0014444: 6121 addi sp,sp,64 + c0014446: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001435a: 00a03533 snez a0,a0 - c001435e: d202 sw zero,36(sp) - c0014360: d02a sw a0,32(sp) - c0014362: 7782 ld a5,32(sp) - c0014364: e83e sd a5,16(sp) - c0014366: 4785 li a5,1 - c0014368: b7dd j c001434e - -00000000c001436a : + c0014448: 00a03533 snez a0,a0 + c001444c: d202 sw zero,36(sp) + c001444e: d02a sw a0,32(sp) + c0014450: 7782 ld a5,32(sp) + c0014452: e83e sd a5,16(sp) + c0014454: 4785 li a5,1 + c0014456: b7dd j c001443c + +00000000c0014458 : get_proxy_method(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45830 -{ - c001436a: 7159 addi sp,sp,-112 - c001436c: eca6 sd s1,88(sp) - c001436e: e8ca sd s2,80(sp) - c0014370: e032 sd a2,0(sp) - c0014372: 892a mv s2,a0 - c0014374: 84ae mv s1,a1 - c0014376: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45831 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45838 +{ + c0014458: 7159 addi sp,sp,-112 + c001445a: eca6 sd s1,88(sp) + c001445c: e8ca sd s2,80(sp) + c001445e: e032 sd a2,0(sp) + c0014460: 892a mv s2,a0 + c0014462: 84ae mv s1,a1 + c0014464: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45839 JSProxyData *s = JS_GetOpaque(obj, JS_CLASS_PROXY); - c0014378: 85b6 mv a1,a3 - c001437a: 02c00613 li a2,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45830 -{ - c001437e: e4ce sd s3,72(sp) - c0014380: f486 sd ra,104(sp) - c0014382: f0a2 sd s0,96(sp) - c0014384: e436 sd a3,8(sp) - c0014386: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45831 + c0014466: 85b6 mv a1,a3 + c0014468: 02c00613 li a2,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45838 +{ + c001446c: e4ce sd s3,72(sp) + c001446e: f486 sd ra,104(sp) + c0014470: f0a2 sd s0,96(sp) + c0014472: e436 sd a3,8(sp) + c0014474: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45839 JSProxyData *s = JS_GetOpaque(obj, JS_CLASS_PROXY); - c0014388: d2af60ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45841 + c0014476: d2af60ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45849 if (s->is_revoked) { - c001438c: 02154783 lbu a5,33(a0) - c0014390: c791 beqz a5,c001439c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45842 + c001447a: 02154783 lbu a5,33(a0) + c001447e: c791 beqz a5,c001448a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45850 JS_ThrowTypeErrorRevokedProxy(ctx); - c0014392: 854a mv a0,s2 - c0014394: f2bff0ef jal ra,c00142be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45847 + c0014480: 854a mv a0,s2 + c0014482: f2bff0ef jal ra,c00143ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45855 return NULL; - c0014398: 4401 li s0,0 - c001439a: a815 j c00143ce - c001439c: 6918 ld a4,16(a0) + c0014486: 4401 li s0,0 + c0014488: a815 j c00144bc + c001448a: 6918 ld a4,16(a0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001439e: 6d1c ld a5,24(a0) - c00143a0: 842a mv s0,a0 - c00143a2: 85ba mv a1,a4 - c00143a4: 863e mv a2,a5 - c00143a6: 4801 li a6,0 - c00143a8: 86ce mv a3,s3 - c00143aa: 854a mv a0,s2 - c00143ac: f03a sd a4,32(sp) - c00143ae: c94fd0ef jal ra,c0011842 - c00143b2: e82a sd a0,16(sp) + c001448c: 6d1c ld a5,24(a0) + c001448e: 842a mv s0,a0 + c0014490: 85ba mv a1,a4 + c0014492: 863e mv a2,a5 + c0014494: 4801 li a6,0 + c0014496: 86ce mv a3,s3 + c0014498: 854a mv a0,s2 + c001449a: f03a sd a4,32(sp) + c001449c: c94fd0ef jal ra,c0011930 + c00144a0: e82a sd a0,16(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00143b4: 0005879b sext.w a5,a1 + c00144a2: 0005879b sext.w a5,a1 get_proxy_method(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45854 if (JS_IsException(method)) - c00143b8: 4719 li a4,6 - c00143ba: fce78fe3 beq a5,a4,c0014398 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45848 + c00144a6: 4719 li a4,6 + c00144a8: fce78fe3 beq a5,a4,c0014486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45856 if (JS_IsNull(method)) - c00143be: 4709 li a4,2 - c00143c0: 00e79463 bne a5,a4,c00143c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45849 + c00144ac: 4709 li a4,2 + c00144ae: 00e79463 bne a5,a4,c00144b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45857 method = JS_UNDEFINED; - c00143c4: e802 sd zero,16(sp) - c00143c6: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45850 + c00144b2: e802 sd zero,16(sp) + c00144b4: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45858 *pmethod = method; - c00143c8: 67c2 ld a5,16(sp) - c00143ca: e48c sd a1,8(s1) - c00143cc: e09c sd a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45852 -} - c00143ce: 70a6 ld ra,104(sp) - c00143d0: 8522 mv a0,s0 - c00143d2: 7406 ld s0,96(sp) - c00143d4: 64e6 ld s1,88(sp) - c00143d6: 6946 ld s2,80(sp) - c00143d8: 69a6 ld s3,72(sp) - c00143da: 6165 addi sp,sp,112 - c00143dc: 8082 ret - -00000000c00143de : + c00144b6: 67c2 ld a5,16(sp) + c00144b8: e48c sd a1,8(s1) + c00144ba: e09c sd a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45860 +} + c00144bc: 70a6 ld ra,104(sp) + c00144be: 8522 mv a0,s0 + c00144c0: 7406 ld s0,96(sp) + c00144c2: 64e6 ld s1,88(sp) + c00144c4: 6946 ld s2,80(sp) + c00144c6: 69a6 ld s3,72(sp) + c00144c8: 6165 addi sp,sp,112 + c00144ca: 8082 ret + +00000000c00144cc : JS_IsExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7863 -{ - c00143de: 711d addi sp,sp,-96 - c00143e0: e8a2 sd s0,80(sp) - c00143e2: ec86 sd ra,88(sp) - c00143e4: e4a6 sd s1,72(sp) - c00143e6: e0ca sd s2,64(sp) - c00143e8: e02e sd a1,0(sp) - c00143ea: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7871 +{ + c00144cc: 711d addi sp,sp,-96 + c00144ce: e8a2 sd s0,80(sp) + c00144d0: ec86 sd ra,88(sp) + c00144d2: e4a6 sd s1,72(sp) + c00144d4: e0ca sd s2,64(sp) + c00144d6: e02e sd a1,0(sp) + c00144d8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7874 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c00143ec: 0006041b sext.w s0,a2 - c00143f0: 57fd li a5,-1 - c00143f2: 0af41263 bne s0,a5,c0014496 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7869 + c00144da: 0006041b sext.w s0,a2 + c00144de: 57fd li a5,-1 + c00144e0: 0af41263 bne s0,a5,c0014584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7877 if (unlikely(p->class_id == JS_CLASS_PROXY)) - c00143f6: 0065d703 lhu a4,6(a1) - c00143fa: 02c00793 li a5,44 - c00143fe: 08f71863 bne a4,a5,c001448e - c0014402: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7870 + c00144e4: 0065d703 lhu a4,6(a1) + c00144e8: 02c00793 li a5,44 + c00144ec: 08f71863 bne a4,a5,c001457c + c00144f0: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7878 return js_proxy_isExtensible(ctx, obj); - c0014404: e82e sd a1,16(sp) - c0014406: ec32 sd a2,24(sp) + c00144f2: e82e sd a1,16(sp) + c00144f4: ec32 sd a2,24(sp) js_proxy_isExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45947 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45955 s = get_proxy_method(ctx, &method, obj, JS_ATOM_isExtensible); - c0014408: 06200713 li a4,98 - c001440c: 862e mv a2,a1 - c001440e: 100c addi a1,sp,32 - c0014410: 892a mv s2,a0 - c0014412: f59ff0ef jal ra,c001436a - c0014416: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45948 + c00144f6: 06200713 li a4,98 + c00144fa: 862e mv a2,a1 + c00144fc: 100c addi a1,sp,32 + c00144fe: 892a mv s2,a0 + c0014500: f59ff0ef jal ra,c0014458 + c0014504: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45956 if (!s) - c0014418: e901 bnez a0,c0014428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45949 + c0014506: e901 bnez a0,c0014516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45957 return -1; - c001441a: 8522 mv a0,s0 + c0014508: 8522 mv a0,s0 JS_IsExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7873 -} - c001441c: 60e6 ld ra,88(sp) - c001441e: 6446 ld s0,80(sp) - c0014420: 64a6 ld s1,72(sp) - c0014422: 6906 ld s2,64(sp) - c0014424: 6125 addi sp,sp,96 - c0014426: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7881 +} + c001450a: 60e6 ld ra,88(sp) + c001450c: 6446 ld s0,80(sp) + c001450e: 64a6 ld s1,72(sp) + c0014510: 6906 ld s2,64(sp) + c0014512: 6125 addi sp,sp,96 + c0014514: 8082 ret JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0014428: 7622 ld a2,40(sp) + c0014516: 7622 ld a2,40(sp) js_proxy_isExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45950 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45958 if (JS_IsUndefined(method)) - c001442a: 478d li a5,3 - c001442c: 0006071b sext.w a4,a2 - c0014430: 00f71863 bne a4,a5,c0014440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45951 + c0014518: 478d li a5,3 + c001451a: 0006071b sext.w a4,a2 + c001451e: 00f71863 bne a4,a5,c001452e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45959 return JS_IsExtensible(ctx, s->target); - c0014434: 610c ld a1,0(a0) - c0014436: 6510 ld a2,8(a0) - c0014438: 854a mv a0,s2 - c001443a: fa5ff0ef jal ra,c00143de - c001443e: bff9 j c001441c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45952 + c0014522: 610c ld a1,0(a0) + c0014524: 6510 ld a2,8(a0) + c0014526: 854a mv a0,s2 + c0014528: fa5ff0ef jal ra,c00144cc + c001452c: bff9 j c001450a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45960 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c0014440: 6d18 ld a4,24(a0) - c0014442: 6914 ld a3,16(a0) - c0014444: 7582 ld a1,32(sp) - c0014446: 882a mv a6,a0 - c0014448: 4785 li a5,1 - c001444a: 854a mv a0,s2 - c001444c: bc0fd0ef jal ra,c001180c - c0014450: f82a sd a0,48(sp) - c0014452: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45953 + c001452e: 6d18 ld a4,24(a0) + c0014530: 6914 ld a3,16(a0) + c0014532: 7582 ld a1,32(sp) + c0014534: 882a mv a6,a0 + c0014536: 4785 li a5,1 + c0014538: 854a mv a0,s2 + c001453a: bc0fd0ef jal ra,c00118fa + c001453e: f82a sd a0,48(sp) + c0014540: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45961 if (JS_IsException(ret)) - c0014454: 0005871b sext.w a4,a1 - c0014458: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45952 + c0014542: 0005871b sext.w a4,a1 + c0014546: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45960 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c001445a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45953 + c0014548: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45961 if (JS_IsException(ret)) - c001445c: faf70fe3 beq a4,a5,c001441a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45955 + c001454a: faf70fe3 beq a4,a5,c0014508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45963 res = JS_ToBoolFree(ctx, ret); - c0014460: 85aa mv a1,a0 - c0014462: 854a mv a0,s2 - c0014464: a01f30ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45956 + c001454e: 85aa mv a1,a0 + c0014550: 854a mv a0,s2 + c0014552: a01f30ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45964 res2 = JS_IsExtensible(ctx, s->target); - c0014468: 608c ld a1,0(s1) - c001446a: 6490 ld a2,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45955 + c0014556: 608c ld a1,0(s1) + c0014558: 6490 ld a2,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45963 res = JS_ToBoolFree(ctx, ret); - c001446c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45956 + c001455a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45964 res2 = JS_IsExtensible(ctx, s->target); - c001446e: 854a mv a0,s2 - c0014470: f6fff0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45957 + c001455c: 854a mv a0,s2 + c001455e: f6fff0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45965 if (res2 < 0) - c0014474: fa0544e3 bltz a0,c001441c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45959 + c0014562: fa0544e3 bltz a0,c001450a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45967 if (res != res2) { - c0014478: faa402e3 beq s0,a0,c001441c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45960 + c0014566: faa402e3 beq s0,a0,c001450a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45968 JS_ThrowTypeError(ctx, "proxy: inconsistent isExtensible"); - c001447c: 0004a597 auipc a1,0x4a - c0014480: 85c58593 addi a1,a1,-1956 # c005dcd8 - c0014484: 854a mv a0,s2 - c0014486: f71fe0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45961 + c001456a: 0004a597 auipc a1,0x4a + c001456e: 99e58593 addi a1,a1,-1634 # c005df08 + c0014572: 854a mv a0,s2 + c0014574: f71fe0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45969 return -1; - c001448a: 557d li a0,-1 + c0014578: 557d li a0,-1 JS_IsExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7878 return js_proxy_isExtensible(ctx, obj); - c001448c: bf41 j c001441c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7872 + c001457a: bf41 j c001450a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7880 return p->extensible; - c001448e: 6188 ld a0,0(a1) - c0014490: 9121 srli a0,a0,0x28 - c0014492: 8905 andi a0,a0,1 - c0014494: b761 j c001441c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7867 + c001457c: 6188 ld a0,0(a1) + c001457e: 9121 srli a0,a0,0x28 + c0014580: 8905 andi a0,a0,1 + c0014582: b761 j c001450a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7875 return FALSE; - c0014496: 4501 li a0,0 - c0014498: b751 j c001441c + c0014584: 4501 li a0,0 + c0014586: b751 j c001450a -00000000c001449a : +00000000c0014588 : js_object_isExtensible(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37622 { - c001449a: 715d addi sp,sp,-80 - c001449c: e486 sd ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37618 + c0014588: 715d addi sp,sp,-80 + c001458a: e486 sd ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37626 obj = argv[0]; - c001449e: 6710 ld a2,8(a4) - c00144a0: 630c ld a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37619 + c001458c: 6710 ld a2,8(a4) + c001458e: 630c ld a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37627 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) { - c00144a2: 577d li a4,-1 - c00144a4: 0006069b sext.w a3,a2 - c00144a8: 00e68a63 beq a3,a4,c00144bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37620 + c0014590: 577d li a4,-1 + c0014592: 0006069b sext.w a3,a2 + c0014596: 00e68a63 beq a3,a4,c00145aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37628 if (reflect) - c00144ac: c789 beqz a5,c00144b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37630 + c001459a: c789 beqz a5,c00145a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37638 } - c00144ae: 60a6 ld ra,72(sp) - c00144b0: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37621 + c001459c: 60a6 ld ra,72(sp) + c001459e: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37629 return JS_ThrowTypeErrorNotAnObject(ctx); - c00144b2: cc6ff06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37623 + c00145a0: cc6ff06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37631 return JS_FALSE; - c00144b6: f002 sd zero,32(sp) - c00144b8: 4785 li a5,1 - c00144ba: a039 j c00144c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37625 + c00145a4: f002 sd zero,32(sp) + c00145a6: 4785 li a5,1 + c00145a8: a039 j c00145b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37633 ret = JS_IsExtensible(ctx, obj); - c00144bc: f23ff0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37626 + c00145aa: f23ff0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37634 if (ret < 0) - c00144c0: 00055a63 bgez a0,c00144d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37627 + c00145ae: 00055a63 bgez a0,c00145c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37635 return JS_EXCEPTION; - c00144c4: f002 sd zero,32(sp) - c00144c6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37630 -} - c00144c8: 60a6 ld ra,72(sp) - c00144ca: f43e sd a5,40(sp) - c00144cc: 7502 ld a0,32(sp) - c00144ce: 75a2 ld a1,40(sp) - c00144d0: 6161 addi sp,sp,80 - c00144d2: 8082 ret + c00145b2: f002 sd zero,32(sp) + c00145b4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37638 +} + c00145b6: 60a6 ld ra,72(sp) + c00145b8: f43e sd a5,40(sp) + c00145ba: 7502 ld a0,32(sp) + c00145bc: 75a2 ld a1,40(sp) + c00145be: 6161 addi sp,sp,80 + c00145c0: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00144d4: 00a03533 snez a0,a0 - c00144d8: da02 sw zero,52(sp) - c00144da: d82a sw a0,48(sp) - c00144dc: 77c2 ld a5,48(sp) - c00144de: f03e sd a5,32(sp) - c00144e0: bfe1 j c00144b8 - -00000000c00144e2 : + c00145c2: 00a03533 snez a0,a0 + c00145c6: da02 sw zero,52(sp) + c00145c8: d82a sw a0,48(sp) + c00145ca: 77c2 ld a5,48(sp) + c00145cc: f03e sd a5,32(sp) + c00145ce: bfe1 j c00145a6 + +00000000c00145d0 : JS_GetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7029 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7037 { - c00144e2: 7171 addi sp,sp,-176 - c00144e4: fcd6 sd s5,120(sp) - c00144e6: f506 sd ra,168(sp) - c00144e8: f122 sd s0,160(sp) - c00144ea: ed26 sd s1,152(sp) - c00144ec: e94a sd s2,144(sp) - c00144ee: e54e sd s3,136(sp) - c00144f0: e152 sd s4,128(sp) - c00144f2: e02e sd a1,0(sp) - c00144f4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7031 + c00145d0: 7171 addi sp,sp,-176 + c00145d2: fcd6 sd s5,120(sp) + c00145d4: f506 sd ra,168(sp) + c00145d6: f122 sd s0,160(sp) + c00145d8: ed26 sd s1,152(sp) + c00145da: e94a sd s2,144(sp) + c00145dc: e54e sd s3,136(sp) + c00145de: e152 sd s4,128(sp) + c00145e0: e02e sd a1,0(sp) + c00145e2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7039 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00144f6: 00060a9b sext.w s5,a2 - c00144fa: 57fd li a5,-1 - c00144fc: 10fa9863 bne s5,a5,c001460c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7034 + c00145e4: 00060a9b sext.w s5,a2 + c00145e8: 57fd li a5,-1 + c00145ea: 10fa9863 bne s5,a5,c00146fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7042 if (unlikely(p->class_id == JS_CLASS_PROXY)) { - c0014500: 0065d703 lhu a4,6(a1) - c0014504: 02c00793 li a5,44 - c0014508: 86b2 mv a3,a2 - c001450a: 862e mv a2,a1 - c001450c: 0ef71463 bne a4,a5,c00145f4 - c0014510: f02e sd a1,32(sp) + c00145ee: 0065d703 lhu a4,6(a1) + c00145f2: 02c00793 li a5,44 + c00145f6: 86b2 mv a3,a2 + c00145f8: 862e mv a2,a1 + c00145fa: 0ef71463 bne a4,a5,c00146e2 + c00145fe: f02e sd a1,32(sp) js_proxy_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45868 s = get_proxy_method(ctx, &method, obj, JS_ATOM_getPrototypeOf); - c0014512: 06000713 li a4,96 - c0014516: 180c addi a1,sp,48 - c0014518: 892a mv s2,a0 + c0014600: 06000713 li a4,96 + c0014604: 180c addi a1,sp,48 + c0014606: 892a mv s2,a0 JS_GetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7035 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7043 val = js_proxy_getPrototypeOf(ctx, obj); - c001451a: f436 sd a3,40(sp) + c0014608: f436 sd a3,40(sp) js_proxy_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45868 s = get_proxy_method(ctx, &method, obj, JS_ATOM_getPrototypeOf); - c001451c: e4fff0ef jal ra,c001436a - c0014520: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45861 + c001460a: e4fff0ef jal ra,c0014458 + c001460e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45869 if (!s) - c0014522: c571 beqz a0,c00145ee + c0014610: c571 beqz a0,c00146dc JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0014524: 7662 ld a2,56(sp) + c0014612: 7662 ld a2,56(sp) js_proxy_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45863 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45871 if (JS_IsUndefined(method)) - c0014526: 478d li a5,3 - c0014528: 0006071b sext.w a4,a2 - c001452c: 00f71a63 bne a4,a5,c0014540 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45864 + c0014614: 478d li a5,3 + c0014616: 0006071b sext.w a4,a2 + c001461a: 00f71a63 bne a4,a5,c001462e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45872 return JS_GetPrototype(ctx, s->target); - c0014530: 610c ld a1,0(a0) - c0014532: 6510 ld a2,8(a0) - c0014534: 854a mv a0,s2 - c0014536: fadff0ef jal ra,c00144e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45888 + c001461e: 610c ld a1,0(a0) + c0014620: 6510 ld a2,8(a0) + c0014622: 854a mv a0,s2 + c0014624: fadff0ef jal ra,c00145d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45896 return JS_ThrowTypeError(ctx, "proxy: inconsistent prototype"); - c001453a: 89aa mv s3,a0 - c001453c: 842e mv s0,a1 - c001453e: a0b1 j c001458a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45865 + c0014628: 89aa mv s3,a0 + c001462a: 842e mv s0,a1 + c001462c: a0b1 j c0014678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45873 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c0014540: 6d18 ld a4,24(a0) - c0014542: 6914 ld a3,16(a0) - c0014544: 75c2 ld a1,48(sp) - c0014546: 882a mv a6,a0 - c0014548: 4785 li a5,1 - c001454a: 854a mv a0,s2 - c001454c: ac0fd0ef jal ra,c001180c - c0014550: e0aa sd a0,64(sp) - c0014552: e4ae sd a1,72(sp) + c001462e: 6d18 ld a4,24(a0) + c0014630: 6914 ld a3,16(a0) + c0014632: 75c2 ld a1,48(sp) + c0014634: 882a mv a6,a0 + c0014636: 4785 li a5,1 + c0014638: 854a mv a0,s2 + c001463a: ac0fd0ef jal ra,c00118fa + c001463e: e0aa sd a0,64(sp) + c0014640: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0014554: 0005879b sext.w a5,a1 + c0014642: 0005879b sext.w a5,a1 js_proxy_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45874 if (JS_IsException(ret)) - c0014558: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45865 + c0014646: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45873 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c001455a: 8a2a mv s4,a0 - c001455c: 89aa mv s3,a0 - c001455e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45866 + c0014648: 8a2a mv s4,a0 + c001464a: 89aa mv s3,a0 + c001464c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45874 if (JS_IsException(ret)) - c0014560: 02e78563 beq a5,a4,c001458a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45868 + c001464e: 02e78563 beq a5,a4,c0014678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45876 if (JS_VALUE_GET_TAG(ret) != JS_TAG_NULL && - c0014564: 4709 li a4,2 - c0014566: 00e78463 beq a5,a4,c001456e - c001456a: 07579063 bne a5,s5,c00145ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45872 + c0014652: 4709 li a4,2 + c0014654: 00e78463 beq a5,a4,c001465c + c0014658: 07579063 bne a5,s5,c00146b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45880 res = JS_IsExtensible(ctx, s->target); - c001456e: 608c ld a1,0(s1) - c0014570: 6490 ld a2,8(s1) - c0014572: 854a mv a0,s2 - c0014574: e6bff0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45873 + c001465c: 608c ld a1,0(s1) + c001465e: 6490 ld a2,8(s1) + c0014660: 854a mv a0,s2 + c0014662: e6bff0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45881 if (res < 0) { - c0014578: 02055563 bgez a0,c00145a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45874 + c0014666: 02055563 bgez a0,c0014690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45882 JS_FreeValue(ctx, ret); - c001457c: 6586 ld a1,64(sp) - c001457e: 6626 ld a2,72(sp) - c0014580: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45875 + c001466a: 6586 ld a1,64(sp) + c001466c: 6626 ld a2,72(sp) + c001466e: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45883 return JS_EXCEPTION; - c0014582: 4419 li s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45874 + c0014670: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45882 JS_FreeValue(ctx, ret); - c0014584: db4f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45875 + c0014672: db4f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45883 return JS_EXCEPTION; - c0014588: 4981 li s3,0 - c001458a: e84e sd s3,16(sp) + c0014676: 4981 li s3,0 + c0014678: e84e sd s3,16(sp) JS_GetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7055 } - c001458c: 70aa ld ra,168(sp) - c001458e: 85a2 mv a1,s0 - c0014590: 740a ld s0,160(sp) - c0014592: 6542 ld a0,16(sp) - c0014594: 64ea ld s1,152(sp) - c0014596: 694a ld s2,144(sp) - c0014598: 69aa ld s3,136(sp) - c001459a: 6a0a ld s4,128(sp) - c001459c: 7ae6 ld s5,120(sp) - c001459e: 614d addi sp,sp,176 - c00145a0: 8082 ret + c001467a: 70aa ld ra,168(sp) + c001467c: 85a2 mv a1,s0 + c001467e: 740a ld s0,160(sp) + c0014680: 6542 ld a0,16(sp) + c0014682: 64ea ld s1,152(sp) + c0014684: 694a ld s2,144(sp) + c0014686: 69aa ld s3,136(sp) + c0014688: 6a0a ld s4,128(sp) + c001468a: 7ae6 ld s5,120(sp) + c001468c: 614d addi sp,sp,176 + c001468e: 8082 ret js_proxy_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45877 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45885 if (!res) { - c00145a2: f565 bnez a0,c001458a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45879 + c0014690: f565 bnez a0,c0014678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45887 proto1 = JS_GetPrototype(ctx, s->target); - c00145a4: 6490 ld a2,8(s1) - c00145a6: 608c ld a1,0(s1) - c00145a8: 854a mv a0,s2 - c00145aa: f39ff0ef jal ra,c00144e2 - c00145ae: e8aa sd a0,80(sp) - c00145b0: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45880 + c0014692: 6490 ld a2,8(s1) + c0014694: 608c ld a1,0(s1) + c0014696: 854a mv a0,s2 + c0014698: f39ff0ef jal ra,c00145d0 + c001469c: e8aa sd a0,80(sp) + c001469e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45888 if (JS_IsException(proto1)) { - c00145b2: 0005871b sext.w a4,a1 - c00145b6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45879 + c00146a0: 0005871b sext.w a4,a1 + c00146a4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45887 proto1 = JS_GetPrototype(ctx, s->target); - c00145b8: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45880 + c00146a6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45888 if (JS_IsException(proto1)) { - c00145ba: fcf701e3 beq a4,a5,c001457c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45884 + c00146a8: fcf701e3 beq a4,a5,c001466a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45892 if (JS_VALUE_GET_OBJ(proto1) != JS_VALUE_GET_OBJ(ret)) { - c00145be: 02aa0363 beq s4,a0,c00145e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45885 + c00146ac: 02aa0363 beq s4,a0,c00146d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45893 JS_FreeValue(ctx, proto1); - c00145c2: 85aa mv a1,a0 - c00145c4: 854a mv a0,s2 - c00145c6: d72f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45887 + c00146b0: 85aa mv a1,a0 + c00146b2: 854a mv a0,s2 + c00146b4: d72f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45895 JS_FreeValue(ctx, ret); - c00145ca: 6586 ld a1,64(sp) - c00145cc: 6626 ld a2,72(sp) - c00145ce: 854a mv a0,s2 - c00145d0: d68f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45888 + c00146b8: 6586 ld a1,64(sp) + c00146ba: 6626 ld a2,72(sp) + c00146bc: 854a mv a0,s2 + c00146be: d68f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45896 return JS_ThrowTypeError(ctx, "proxy: inconsistent prototype"); - c00145d4: 854a mv a0,s2 - c00145d6: 00049597 auipc a1,0x49 - c00145da: 72a58593 addi a1,a1,1834 # c005dd00 - c00145de: e19fe0ef jal ra,c00133f6 - c00145e2: bfa1 j c001453a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45890 + c00146c2: 854a mv a0,s2 + c00146c4: 0004a597 auipc a1,0x4a + c00146c8: 86c58593 addi a1,a1,-1940 # c005df30 + c00146cc: e19fe0ef jal ra,c00134e4 + c00146d0: bfa1 j c0014628 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45898 JS_FreeValue(ctx, proto1); - c00145e4: 85d2 mv a1,s4 - c00145e6: 854a mv a0,s2 - c00145e8: d50f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45892 + c00146d2: 85d2 mv a1,s4 + c00146d4: 854a mv a0,s2 + c00146d6: d50f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45900 return ret; - c00145ec: bf79 j c001458a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45862 + c00146da: bf79 j c0014678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45870 return JS_EXCEPTION; - c00145ee: 4981 li s3,0 - c00145f0: 4419 li s0,6 - c00145f2: bf61 j c001458a + c00146dc: 4981 li s3,0 + c00146de: 4419 li s0,6 + c00146e0: bf61 j c0014678 JS_GetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7037 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7045 p = p->shape->proto; - c00145f4: 6d9c ld a5,24(a1) - c00145f6: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7038 + c00146e2: 6d9c ld a5,24(a1) + c00146e4: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7046 if (!p) - c00145f8: e781 bnez a5,c0014600 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7039 + c00146e6: e781 bnez a5,c00146ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7047 val = JS_NULL; - c00145fa: e802 sd zero,16(sp) - c00145fc: 4409 li s0,2 - c00145fe: b779 j c001458c + c00146e8: e802 sd zero,16(sp) + c00146ea: 4409 li s0,2 + c00146ec: b779 j c001467a JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 (discriminator 2) p->ref_count++; - c0014600: 4398 lw a4,0(a5) - c0014602: e83e sd a5,16(sp) + c00146ee: 4398 lw a4,0(a5) + c00146f0: e83e sd a5,16(sp) JS_GetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7041 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7049 (discriminator 2) val = JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c0014604: 547d li s0,-1 + c00146f2: 547d li s0,-1 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 (discriminator 2) - c0014606: 2705 addiw a4,a4,1 - c0014608: c398 sw a4,0(a5) + c00146f4: 2705 addiw a4,a4,1 + c00146f6: c398 sw a4,0(a5) JS_GetPrototype(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 (discriminator 2) return (JSValue)v; - c001460a: b749 j c001458c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7044 + c00146f8: b749 j c001467a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7052 val = JS_DupValue(ctx, JS_GetPrototypePrimitive(ctx, obj)); - c001460c: c81ef0ef jal ra,c000428c - c0014610: f82a sd a0,48(sp) - c0014612: fc2e sd a1,56(sp) - c0014614: 85af20ef jal ra,c000666e - c0014618: e82a sd a0,16(sp) - c001461a: 842e mv s0,a1 - c001461c: bf85 j c001458c - -00000000c001461e : + c00146fa: b93ef0ef jal ra,c000428c + c00146fe: f82a sd a0,48(sp) + c0014700: fc2e sd a1,56(sp) + c0014702: 85af20ef jal ra,c000675c + c0014706: e82a sd a0,16(sp) + c0014708: 842e mv s0,a1 + c001470a: bf85 j c001467a + +00000000c001470c : JS_GetPrototypeFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7050 -{ - c001461e: 7139 addi sp,sp,-64 - c0014620: fc06 sd ra,56(sp) - c0014622: f822 sd s0,48(sp) - c0014624: e432 sd a2,8(sp) - c0014626: 842a mv s0,a0 - c0014628: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7058 +{ + c001470c: 7139 addi sp,sp,-64 + c001470e: fc06 sd ra,56(sp) + c0014710: f822 sd s0,48(sp) + c0014712: e432 sd a2,8(sp) + c0014714: 842a mv s0,a0 + c0014716: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7060 obj1 = JS_GetPrototype(ctx, obj); - c001462a: eb9ff0ef jal ra,c00144e2 - c001462e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7053 + c0014718: eb9ff0ef jal ra,c00145d0 + c001471c: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7061 JS_FreeValue(ctx, obj); - c0014630: 6622 ld a2,8(sp) - c0014632: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7052 + c001471e: 6622 ld a2,8(sp) + c0014720: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7060 obj1 = JS_GetPrototype(ctx, obj); - c0014634: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7053 + c0014722: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7061 JS_FreeValue(ctx, obj); - c0014636: 8522 mv a0,s0 - c0014638: d00f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7055 -} - c001463c: 70e2 ld ra,56(sp) - c001463e: 7442 ld s0,48(sp) - c0014640: 6542 ld a0,16(sp) - c0014642: 65e2 ld a1,24(sp) - c0014644: 6121 addi sp,sp,64 - c0014646: 8082 ret - -00000000c0014648 : + c0014724: 8522 mv a0,s0 + c0014726: d00f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7063 +} + c001472a: 70e2 ld ra,56(sp) + c001472c: 7442 ld s0,48(sp) + c001472e: 6542 ld a0,16(sp) + c0014730: 65e2 ld a1,24(sp) + c0014732: 6121 addi sp,sp,64 + c0014734: 8082 ret + +00000000c0014736 : js_object_getPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37294 val = argv[0]; - c0014648: 6314 ld a3,0(a4) - c001464a: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37283 + c0014736: 6314 ld a3,0(a4) + c0014738: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37291 { - c001464c: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37286 + c001473a: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37294 val = argv[0]; - c001464e: e836 sd a3,16(sp) - c0014650: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37287 + c001473c: e836 sd a3,16(sp) + c001473e: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37295 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) { - c0014652: 0007061b sext.w a2,a4 - c0014656: 56fd li a3,-1 - c0014658: 00d60a63 beq a2,a3,c001466c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37290 + c0014740: 0007061b sext.w a2,a4 + c0014744: 56fd li a3,-1 + c0014746: 00d60a63 beq a2,a3,c001475a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37298 if (magic || JS_VALUE_GET_TAG(val) == JS_TAG_NULL || - c001465c: e789 bnez a5,c0014666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37290 (discriminator 1) - c001465e: 3779 addiw a4,a4,-2 - c0014660: 4785 li a5,1 - c0014662: 00e7e563 bltu a5,a4,c001466c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37295 -} - c0014666: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37292 + c001474a: e789 bnez a5,c0014754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37298 (discriminator 1) + c001474c: 3779 addiw a4,a4,-2 + c001474e: 4785 li a5,1 + c0014750: 00e7e563 bltu a5,a4,c001475a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37303 +} + c0014754: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37300 return JS_ThrowTypeErrorNotAnObject(ctx); - c0014668: b10ff06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37294 + c0014756: b10ff06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37302 return JS_GetPrototype(ctx, val); - c001466c: 65c2 ld a1,16(sp) - c001466e: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37295 + c001475a: 65c2 ld a1,16(sp) + c001475c: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37303 } - c0014670: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37294 + c001475e: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37302 return JS_GetPrototype(ctx, val); - c0014672: e71ff06f j c00144e2 + c0014760: e71ff06f j c00145d0 -00000000c0014676 : +00000000c0014764 : JS_PreventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7877 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7885 { - c0014676: 711d addi sp,sp,-96 - c0014678: e8a2 sd s0,80(sp) - c001467a: ec86 sd ra,88(sp) - c001467c: e4a6 sd s1,72(sp) - c001467e: e0ca sd s2,64(sp) - c0014680: e02e sd a1,0(sp) - c0014682: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7880 + c0014764: 711d addi sp,sp,-96 + c0014766: e8a2 sd s0,80(sp) + c0014768: ec86 sd ra,88(sp) + c001476a: e4a6 sd s1,72(sp) + c001476c: e0ca sd s2,64(sp) + c001476e: e02e sd a1,0(sp) + c0014770: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7888 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c0014684: 0006041b sext.w s0,a2 - c0014688: 57fd li a5,-1 - c001468a: 0af41563 bne s0,a5,c0014734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7883 + c0014772: 0006041b sext.w s0,a2 + c0014776: 57fd li a5,-1 + c0014778: 0af41563 bne s0,a5,c0014822 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7891 if (unlikely(p->class_id == JS_CLASS_PROXY)) - c001468e: 0065d703 lhu a4,6(a1) - c0014692: 02c00793 li a5,44 - c0014696: 08f71863 bne a4,a5,c0014726 - c001469a: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7884 + c001477c: 0065d703 lhu a4,6(a1) + c0014780: 02c00793 li a5,44 + c0014784: 08f71863 bne a4,a5,c0014814 + c0014788: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7892 return js_proxy_preventExtensions(ctx, obj); - c001469c: e82e sd a1,16(sp) - c001469e: ec32 sd a2,24(sp) + c001478a: e82e sd a1,16(sp) + c001478c: ec32 sd a2,24(sp) js_proxy_preventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45973 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45981 s = get_proxy_method(ctx, &method, obj, JS_ATOM_preventExtensions); - c00146a0: 06300713 li a4,99 - c00146a4: 862e mv a2,a1 - c00146a6: 100c addi a1,sp,32 - c00146a8: 892a mv s2,a0 - c00146aa: cc1ff0ef jal ra,c001436a - c00146ae: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45974 + c001478e: 06300713 li a4,99 + c0014792: 862e mv a2,a1 + c0014794: 100c addi a1,sp,32 + c0014796: 892a mv s2,a0 + c0014798: cc1ff0ef jal ra,c0014458 + c001479c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45982 if (!s) - c00146b0: c525 beqz a0,c0014718 + c001479e: c525 beqz a0,c0014806 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00146b2: 7622 ld a2,40(sp) + c00147a0: 7622 ld a2,40(sp) js_proxy_preventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45984 if (JS_IsUndefined(method)) - c00146b4: 478d li a5,3 - c00146b6: 0006071b sext.w a4,a2 - c00146ba: 00f71963 bne a4,a5,c00146cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45977 + c00147a2: 478d li a5,3 + c00147a4: 0006071b sext.w a4,a2 + c00147a8: 00f71963 bne a4,a5,c00147ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45985 return JS_PreventExtensions(ctx, s->target); - c00146be: 610c ld a1,0(a0) - c00146c0: 6510 ld a2,8(a0) - c00146c2: 854a mv a0,s2 - c00146c4: fb3ff0ef jal ra,c0014676 - c00146c8: 842a mv s0,a0 + c00147ac: 610c ld a1,0(a0) + c00147ae: 6510 ld a2,8(a0) + c00147b0: 854a mv a0,s2 + c00147b2: fb3ff0ef jal ra,c0014764 + c00147b6: 842a mv s0,a0 JS_PreventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7892 return js_proxy_preventExtensions(ctx, obj); - c00146ca: a0b9 j c0014718 + c00147b8: a0b9 j c0014806 js_proxy_preventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45978 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45986 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c00146cc: 6d18 ld a4,24(a0) - c00146ce: 6914 ld a3,16(a0) - c00146d0: 7582 ld a1,32(sp) - c00146d2: 882a mv a6,a0 - c00146d4: 4785 li a5,1 - c00146d6: 854a mv a0,s2 - c00146d8: 934fd0ef jal ra,c001180c - c00146dc: f82a sd a0,48(sp) - c00146de: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45979 + c00147ba: 6d18 ld a4,24(a0) + c00147bc: 6914 ld a3,16(a0) + c00147be: 7582 ld a1,32(sp) + c00147c0: 882a mv a6,a0 + c00147c2: 4785 li a5,1 + c00147c4: 854a mv a0,s2 + c00147c6: 934fd0ef jal ra,c00118fa + c00147ca: f82a sd a0,48(sp) + c00147cc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45987 if (JS_IsException(ret)) - c00146e0: 0005871b sext.w a4,a1 - c00146e4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45978 + c00147ce: 0005871b sext.w a4,a1 + c00147d2: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45986 ret = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c00146e6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45979 + c00147d4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45987 if (JS_IsException(ret)) - c00146e8: 02f70863 beq a4,a5,c0014718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45981 + c00147d6: 02f70863 beq a4,a5,c0014806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45989 res = JS_ToBoolFree(ctx, ret); - c00146ec: 85aa mv a1,a0 - c00146ee: 854a mv a0,s2 - c00146f0: f74f30ef jal ra,c0007e64 - c00146f4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45982 + c00147da: 85aa mv a1,a0 + c00147dc: 854a mv a0,s2 + c00147de: f74f30ef jal ra,c0007f52 + c00147e2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45990 if (res) { - c00146f6: c10d beqz a0,c0014718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45983 + c00147e4: c10d beqz a0,c0014806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45991 res2 = JS_IsExtensible(ctx, s->target); - c00146f8: 608c ld a1,0(s1) - c00146fa: 6490 ld a2,8(s1) - c00146fc: 854a mv a0,s2 - c00146fe: ce1ff0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45984 + c00147e6: 608c ld a1,0(s1) + c00147e8: 6490 ld a2,8(s1) + c00147ea: 854a mv a0,s2 + c00147ec: ce1ff0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45992 if (res2 < 0) - c0014702: fc0543e3 bltz a0,c00146c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45986 + c00147f0: fc0543e3 bltz a0,c00147b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45994 if (res2) { - c0014706: c909 beqz a0,c0014718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45987 + c00147f4: c909 beqz a0,c0014806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45995 JS_ThrowTypeError(ctx, "proxy: inconsistent preventExtensions"); - c0014708: 00049597 auipc a1,0x49 - c001470c: 61858593 addi a1,a1,1560 # c005dd20 - c0014710: 854a mv a0,s2 - c0014712: ce5fe0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45988 + c00147f6: 00049597 auipc a1,0x49 + c00147fa: 75a58593 addi a1,a1,1882 # c005df50 + c00147fe: 854a mv a0,s2 + c0014800: ce5fe0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45996 return -1; - c0014716: 547d li s0,-1 + c0014804: 547d li s0,-1 JS_PreventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7887 -} - c0014718: 60e6 ld ra,88(sp) - c001471a: 8522 mv a0,s0 - c001471c: 6446 ld s0,80(sp) - c001471e: 64a6 ld s1,72(sp) - c0014720: 6906 ld s2,64(sp) - c0014722: 6125 addi sp,sp,96 - c0014724: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7885 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7895 +} + c0014806: 60e6 ld ra,88(sp) + c0014808: 8522 mv a0,s0 + c001480a: 6446 ld s0,80(sp) + c001480c: 64a6 ld s1,72(sp) + c001480e: 6906 ld s2,64(sp) + c0014810: 6125 addi sp,sp,96 + c0014812: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7893 p->extensible = FALSE; - c0014726: 0055c783 lbu a5,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7886 + c0014814: 0055c783 lbu a5,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7894 return TRUE; - c001472a: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7885 + c0014818: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7893 p->extensible = FALSE; - c001472c: 9bf9 andi a5,a5,-2 - c001472e: 00f582a3 sb a5,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7886 + c001481a: 9bf9 andi a5,a5,-2 + c001481c: 00f582a3 sb a5,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7894 return TRUE; - c0014732: b7dd j c0014718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7881 + c0014820: b7dd j c0014806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7889 return FALSE; - c0014734: 4401 li s0,0 - c0014736: b7cd j c0014718 + c0014822: 4401 li s0,0 + c0014824: b7cd j c0014806 -00000000c0014738 : +00000000c0014826 : js_object_preventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37642 { - c0014738: 711d addi sp,sp,-96 - c001473a: e8a2 sd s0,80(sp) - c001473c: ec86 sd ra,88(sp) - c001473e: e4a6 sd s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37638 + c0014826: 711d addi sp,sp,-96 + c0014828: e8a2 sd s0,80(sp) + c001482a: ec86 sd ra,88(sp) + c001482c: e4a6 sd s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37646 obj = argv[0]; - c0014740: 630c ld a1,0(a4) - c0014742: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37634 + c001482e: 630c ld a1,0(a4) + c0014830: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37642 { - c0014744: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37638 + c0014832: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37646 obj = argv[0]; - c0014746: e82e sd a1,16(sp) - c0014748: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37639 + c0014834: e82e sd a1,16(sp) + c0014836: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37647 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) { - c001474a: 0006071b sext.w a4,a2 - c001474e: 57fd li a5,-1 - c0014750: 02f70163 beq a4,a5,c0014772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37640 + c0014838: 0006071b sext.w a4,a2 + c001483c: 57fd li a5,-1 + c001483e: 02f70163 beq a4,a5,c0014860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37648 if (reflect) - c0014754: c419 beqz s0,c0014762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 -} - c0014756: 6446 ld s0,80(sp) - c0014758: 60e6 ld ra,88(sp) - c001475a: 64a6 ld s1,72(sp) - c001475c: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37641 + c0014842: c419 beqz s0,c0014850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 +} + c0014844: 6446 ld s0,80(sp) + c0014846: 60e6 ld ra,88(sp) + c0014848: 64a6 ld s1,72(sp) + c001484a: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37649 return JS_ThrowTypeErrorNotAnObject(ctx); - c001475e: a1aff06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 + c001484c: a1aff06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 } - c0014762: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37643 + c0014850: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37651 return JS_DupValue(ctx, obj); - c0014764: 6542 ld a0,16(sp) - c0014766: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 + c0014852: 6542 ld a0,16(sp) + c0014854: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 } - c0014768: 60e6 ld ra,88(sp) - c001476a: 64a6 ld s1,72(sp) - c001476c: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37643 + c0014856: 60e6 ld ra,88(sp) + c0014858: 64a6 ld s1,72(sp) + c001485a: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37651 return JS_DupValue(ctx, obj); - c001476e: f01f106f j c000666e - c0014772: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37645 + c001485c: f01f106f j c000675c + c0014860: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37653 ret = JS_PreventExtensions(ctx, obj); - c0014774: f03ff0ef jal ra,c0014676 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37646 + c0014862: f03ff0ef jal ra,c0014764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37654 if (ret < 0) - c0014778: 00055c63 bgez a0,c0014790 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37647 - return JS_EXCEPTION; - c001477c: f002 sd zero,32(sp) - c001477e: 4799 li a5,6 + c0014866: 00055c63 bgez a0,c001487e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 -} - c0014780: 60e6 ld ra,88(sp) - c0014782: 6446 ld s0,80(sp) - c0014784: f43e sd a5,40(sp) - c0014786: 7502 ld a0,32(sp) - c0014788: 75a2 ld a1,40(sp) - c001478a: 64a6 ld s1,72(sp) - c001478c: 6125 addi sp,sp,96 - c001478e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37648 + return JS_EXCEPTION; + c001486a: f002 sd zero,32(sp) + c001486c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 +} + c001486e: 60e6 ld ra,88(sp) + c0014870: 6446 ld s0,80(sp) + c0014872: f43e sd a5,40(sp) + c0014874: 7502 ld a0,32(sp) + c0014876: 75a2 ld a1,40(sp) + c0014878: 64a6 ld s1,72(sp) + c001487a: 6125 addi sp,sp,96 + c001487c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37656 if (reflect) { - c0014790: c809 beqz s0,c00147a2 + c001487e: c809 beqz s0,c0014890 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0014792: 00a03533 snez a0,a0 - c0014796: da02 sw zero,52(sp) - c0014798: d82a sw a0,48(sp) - c001479a: 77c2 ld a5,48(sp) - c001479c: f03e sd a5,32(sp) - c001479e: 4785 li a5,1 - c00147a0: b7c5 j c0014780 + c0014880: 00a03533 snez a0,a0 + c0014884: da02 sw zero,52(sp) + c0014886: d82a sw a0,48(sp) + c0014888: 77c2 ld a5,48(sp) + c001488a: f03e sd a5,32(sp) + c001488c: 4785 li a5,1 + c001488e: b7c5 j c001486e js_object_preventExtensions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37659 if (!ret) - c00147a2: f161 bnez a0,c0014762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 + c0014890: f161 bnez a0,c0014850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 } - c00147a4: 6446 ld s0,80(sp) - c00147a6: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37652 + c0014892: 6446 ld s0,80(sp) + c0014894: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37660 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c00147a8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 + c0014896: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 } - c00147aa: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37652 + c0014898: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37660 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c00147ac: 00049597 auipc a1,0x49 - c00147b0: 59c58593 addi a1,a1,1436 # c005dd48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37655 + c001489a: 00049597 auipc a1,0x49 + c001489e: 6de58593 addi a1,a1,1758 # c005df78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37663 } - c00147b4: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37652 + c00148a2: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37660 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c00147b6: c41fe06f j c00133f6 + c00148a4: c41fe06f j c00134e4 -00000000c00147ba : +00000000c00148a8 : JS_GetFunctionRealm(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18683 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18691 { - c00147ba: 1101 addi sp,sp,-32 - c00147bc: e432 sd a2,8(sp) - c00147be: ec06 sd ra,24(sp) - c00147c0: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18687 + c00148a8: 1101 addi sp,sp,-32 + c00148aa: e432 sd a2,8(sp) + c00148ac: ec06 sd ra,24(sp) + c00148ae: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18695 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c00147c2: 2601 sext.w a2,a2 - c00147c4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18683 + c00148b0: 2601 sext.w a2,a2 + c00148b2: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18691 { - c00147c6: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18687 + c00148b4: 86aa mv a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18695 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c00147c8: 04f61663 bne a2,a5,c0014814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18690 + c00148b6: 04f61663 bne a2,a5,c0014902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18698 switch(p->class_id) { - c00147cc: 0065d783 lhu a5,6(a1) - c00147d0: 4731 li a4,12 - c00147d2: 04e78063 beq a5,a4,c0014812 - c00147d6: 37cd addiw a5,a5,-13 - c00147d8: 17c2 slli a5,a5,0x30 - c00147da: 93c1 srli a5,a5,0x30 - c00147dc: 02700713 li a4,39 - c00147e0: 02f76a63 bltu a4,a5,c0014814 - c00147e4: 4745 li a4,17 - c00147e6: 4605 li a2,1 - c00147e8: 170e slli a4,a4,0x23 - c00147ea: 00f617b3 sll a5,a2,a5 - c00147ee: 0725 addi a4,a4,9 - c00147f0: 8f7d and a4,a4,a5 - c00147f2: e70d bnez a4,c001481c - c00147f4: 0027f713 andi a4,a5,2 - c00147f8: e70d bnez a4,c0014822 - c00147fa: 067e slli a2,a2,0x1f - c00147fc: 8ff1 and a5,a5,a2 - c00147fe: cb99 beqz a5,c0014814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18706 + c00148ba: 0065d783 lhu a5,6(a1) + c00148be: 4731 li a4,12 + c00148c0: 04e78063 beq a5,a4,c0014900 + c00148c4: 37cd addiw a5,a5,-13 + c00148c6: 17c2 slli a5,a5,0x30 + c00148c8: 93c1 srli a5,a5,0x30 + c00148ca: 02700713 li a4,39 + c00148ce: 02f76a63 bltu a4,a5,c0014902 + c00148d2: 4745 li a4,17 + c00148d4: 4605 li a2,1 + c00148d6: 170e slli a4,a4,0x23 + c00148d8: 00f617b3 sll a5,a2,a5 + c00148dc: 0725 addi a4,a4,9 + c00148de: 8f7d and a4,a4,a5 + c00148e0: e70d bnez a4,c001490a + c00148e2: 0027f713 andi a4,a5,2 + c00148e6: e70d bnez a4,c0014910 + c00148e8: 067e slli a2,a2,0x1f + c00148ea: 8ff1 and a5,a5,a2 + c00148ec: cb99 beqz a5,c0014902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18714 JSProxyData *s = p->u.opaque; - c0014800: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18707 + c00148ee: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18715 if (!s) - c0014802: cb89 beqz a5,c0014814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18709 + c00148f0: cb89 beqz a5,c0014902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18717 if (s->is_revoked) { - c0014804: 0217c703 lbu a4,33(a5) - c0014808: cf11 beqz a4,c0014824 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18710 + c00148f2: 0217c703 lbu a4,33(a5) + c00148f6: cf11 beqz a4,c0014912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18718 JS_ThrowTypeErrorRevokedProxy(ctx); - c001480a: ab5ff0ef jal ra,c00142be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18711 + c00148f8: ab5ff0ef jal ra,c00143ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18719 return NULL; - c001480e: 4681 li a3,0 - c0014810: a011 j c0014814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18692 + c00148fc: 4681 li a3,0 + c00148fe: a011 j c0014902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18700 realm = p->u.cfunc.realm; - c0014812: 7994 ld a3,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18728 + c0014900: 7994 ld a3,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18736 } - c0014814: 60e2 ld ra,24(sp) - c0014816: 8536 mv a0,a3 - c0014818: 6105 addi sp,sp,32 - c001481a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18701 + c0014902: 60e2 ld ra,24(sp) + c0014904: 8536 mv a0,a3 + c0014906: 6105 addi sp,sp,32 + c0014908: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18709 realm = b->realm; - c001481c: 799c ld a5,48(a1) - c001481e: 67b4 ld a3,72(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18703 + c001490a: 799c ld a5,48(a1) + c001490c: 67b4 ld a3,72(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18711 break; - c0014820: bfd5 j c0014814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18720 - realm = JS_GetFunctionRealm(ctx, bf->func_obj); - c0014822: 799c ld a5,48(a1) + c001490e: bfd5 j c0014902 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18728 -} - c0014824: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18720 realm = JS_GetFunctionRealm(ctx, bf->func_obj); - c0014826: 638c ld a1,0(a5) - c0014828: 6790 ld a2,8(a5) + c0014910: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18736 +} + c0014912: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18728 + realm = JS_GetFunctionRealm(ctx, bf->func_obj); + c0014914: 638c ld a1,0(a5) + c0014916: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18736 } - c001482a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18720 + c0014918: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18728 realm = JS_GetFunctionRealm(ctx, bf->func_obj); - c001482c: b779 j c00147ba + c001491a: b779 j c00148a8 -00000000c001482e : +00000000c001491c : JS_SetObjectData(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4962 static int JS_SetObjectData(JSContext *ctx, JSValueConst obj, JSValue val) - c001482e: 7139 addi sp,sp,-64 - c0014830: f426 sd s1,40(sp) - c0014832: f04a sd s2,32(sp) - c0014834: fc06 sd ra,56(sp) - c0014836: f822 sd s0,48(sp) - c0014838: e82e sd a1,16(sp) - c001483a: ec32 sd a2,24(sp) - c001483c: e036 sd a3,0(sp) - c001483e: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4958 + c001491c: 7139 addi sp,sp,-64 + c001491e: f426 sd s1,40(sp) + c0014920: f04a sd s2,32(sp) + c0014922: fc06 sd ra,56(sp) + c0014924: f822 sd s0,48(sp) + c0014926: e82e sd a1,16(sp) + c0014928: ec32 sd a2,24(sp) + c001492a: e036 sd a3,0(sp) + c001492c: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4966 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0014840: 0006091b sext.w s2,a2 - c0014844: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4954 + c001492e: 0006091b sext.w s2,a2 + c0014932: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4962 static int JS_SetObjectData(JSContext *ctx, JSValueConst obj, JSValue val) - c0014846: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4958 + c0014934: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4966 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0014848: 02f91f63 bne s2,a5,c0014886 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4960 + c0014936: 02f91f63 bne s2,a5,c0014974 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4968 switch(p->class_id) { - c001484c: 0065d783 lhu a5,6(a1) - c0014850: 02100713 li a4,33 - c0014854: 842e mv s0,a1 - c0014856: 02f76863 bltu a4,a5,c0014886 - c001485a: 4705 li a4,1 - c001485c: 00f717b3 sll a5,a4,a5 - c0014860: 1706 slli a4,a4,0x21 - c0014862: 4f070713 addi a4,a4,1264 - c0014866: 8ff9 and a5,a5,a4 - c0014868: cf99 beqz a5,c0014886 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4971 + c001493a: 0065d783 lhu a5,6(a1) + c001493e: 02100713 li a4,33 + c0014942: 842e mv s0,a1 + c0014944: 02f76863 bltu a4,a5,c0014974 + c0014948: 4705 li a4,1 + c001494a: 00f717b3 sll a5,a4,a5 + c001494e: 1706 slli a4,a4,0x21 + c0014950: 4f070713 addi a4,a4,1264 + c0014954: 8ff9 and a5,a5,a4 + c0014956: cf99 beqz a5,c0014974 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4979 JS_FreeValue(ctx, p->u.object_data); - c001486a: 798c ld a1,48(a1) - c001486c: 7c10 ld a2,56(s0) - c001486e: acaf30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4972 - p->u.object_data = val; - c0014872: 6782 ld a5,0(sp) - c0014874: f81c sd a5,48(s0) - c0014876: 67a2 ld a5,8(sp) - c0014878: fc1c sd a5,56(s0) + c0014958: 798c ld a1,48(a1) + c001495a: 7c10 ld a2,56(s0) + c001495c: acaf30ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4980 + p->u.object_data = val; + c0014960: 6782 ld a5,0(sp) + c0014962: f81c sd a5,48(s0) + c0014964: 67a2 ld a5,8(sp) + c0014966: fc1c sd a5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4988 } - c001487a: 70e2 ld ra,56(sp) - c001487c: 7442 ld s0,48(sp) - c001487e: 74a2 ld s1,40(sp) - c0014880: 7902 ld s2,32(sp) - c0014882: 6121 addi sp,sp,64 - c0014884: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4976 + c0014968: 70e2 ld ra,56(sp) + c001496a: 7442 ld s0,48(sp) + c001496c: 74a2 ld s1,40(sp) + c001496e: 7902 ld s2,32(sp) + c0014970: 6121 addi sp,sp,64 + c0014972: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4984 JS_FreeValue(ctx, val); - c0014886: 6582 ld a1,0(sp) - c0014888: 6622 ld a2,8(sp) - c001488a: 8526 mv a0,s1 - c001488c: aacf30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4977 + c0014974: 6582 ld a1,0(sp) + c0014976: 6622 ld a2,8(sp) + c0014978: 8526 mv a0,s1 + c001497a: aacf30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4985 if (!JS_IsException(obj)) - c0014890: 4799 li a5,6 - c0014892: fef904e3 beq s2,a5,c001487a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4980 + c001497e: 4799 li a5,6 + c0014980: fef904e3 beq s2,a5,c0014968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4988 } - c0014896: 7442 ld s0,48(sp) - c0014898: 70e2 ld ra,56(sp) - c001489a: 7902 ld s2,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4978 + c0014984: 7442 ld s0,48(sp) + c0014986: 70e2 ld ra,56(sp) + c0014988: 7902 ld s2,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4986 JS_ThrowTypeError(ctx, "invalid object type"); - c001489c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4980 + c001498a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4988 } - c001489e: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4978 + c001498c: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4986 JS_ThrowTypeError(ctx, "invalid object type"); - c00148a0: 00049597 auipc a1,0x49 - c00148a4: 4d858593 addi a1,a1,1240 # c005dd78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4980 + c001498e: 00049597 auipc a1,0x49 + c0014992: 61a58593 addi a1,a1,1562 # c005dfa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4988 } - c00148a8: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4978 + c0014996: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4986 JS_ThrowTypeError(ctx, "invalid object type"); - c00148aa: b4dfe06f j c00133f6 + c0014998: b4dfe06f j c00134e4 -00000000c00148ae : +00000000c001499c : JS_ThrowReferenceError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6800 { - c00148ae: 7159 addi sp,sp,-112 - c00148b0: e0b2 sd a2,64(sp) - c00148b2: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6797 + c001499c: 7159 addi sp,sp,-112 + c001499e: e0b2 sd a2,64(sp) + c00149a0: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6805 val = JS_ThrowError(ctx, JS_REFERENCE_ERROR, fmt, ap); - c00148b4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6796 + c00149a2: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6804 va_start(ap, fmt); - c00148b6: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6797 + c00149a4: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6805 val = JS_ThrowError(ctx, JS_REFERENCE_ERROR, fmt, ap); - c00148b8: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 + c00149a6: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6800 { - c00148ba: fc06 sd ra,56(sp) - c00148bc: e8ba sd a4,80(sp) - c00148be: ecbe sd a5,88(sp) - c00148c0: f0c2 sd a6,96(sp) - c00148c2: f4c6 sd a7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6796 + c00149a8: fc06 sd ra,56(sp) + c00149aa: e8ba sd a4,80(sp) + c00149ac: ecbe sd a5,88(sp) + c00149ae: f0c2 sd a6,96(sp) + c00149b0: f4c6 sd a7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6804 va_start(ap, fmt); - c00148c4: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6797 + c00149b2: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6805 val = JS_ThrowError(ctx, JS_REFERENCE_ERROR, fmt, ap); - c00148c6: fc0fe0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6800 + c00149b4: fc0fe0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 } - c00148ca: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6797 + c00149b8: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6805 val = JS_ThrowError(ctx, JS_REFERENCE_ERROR, fmt, ap); - c00148cc: e82a sd a0,16(sp) - c00148ce: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6799 + c00149ba: e82a sd a0,16(sp) + c00149bc: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6807 return val; - c00148d0: f02a sd a0,32(sp) - c00148d2: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6800 + c00149be: f02a sd a0,32(sp) + c00149c0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 } - c00148d4: 6165 addi sp,sp,112 - c00148d6: 8082 ret + c00149c2: 6165 addi sp,sp,112 + c00149c4: 8082 ret -00000000c00148d8 : +00000000c00149c6 : JS_ThrowReferenceErrorUninitialized(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6866 { - c00148d8: 711d addi sp,sp,-96 - c00148da: e8a2 sd s0,80(sp) - c00148dc: ec86 sd ra,88(sp) - c00148de: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6860 + c00149c6: 711d addi sp,sp,-96 + c00149c8: e8a2 sd s0,80(sp) + c00149ca: ec86 sd ra,88(sp) + c00149cc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6868 return JS_ThrowReferenceError(ctx, "%s is not initialized", - c00148e0: 00049617 auipc a2,0x49 - c00148e4: 4b060613 addi a2,a2,1200 # c005dd90 - c00148e8: c591 beqz a1,c00148f4 - c00148ea: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6862 + c00149ce: 00049617 auipc a2,0x49 + c00149d2: 5f260613 addi a2,a2,1522 # c005dfc0 + c00149d6: c591 beqz a1,c00149e2 + c00149d8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6870 JS_AtomGetStr(ctx, buf, sizeof(buf), name)); - c00148ec: 080c addi a1,sp,16 - c00148ee: d7df10ef jal ra,c000666a - c00148f2: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6860 (discriminator 2) + c00149da: 080c addi a1,sp,16 + c00149dc: d7df10ef jal ra,c0006758 + c00149e0: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6868 (discriminator 2) return JS_ThrowReferenceError(ctx, "%s is not initialized", - c00148f4: 8522 mv a0,s0 - c00148f6: 00049597 auipc a1,0x49 - c00148fa: 4b258593 addi a1,a1,1202 # c005dda8 - c00148fe: fb1ff0ef jal ra,c00148ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6863 (discriminator 2) -} - c0014902: 60e6 ld ra,88(sp) - c0014904: 6446 ld s0,80(sp) - c0014906: 6125 addi sp,sp,96 - c0014908: 8082 ret + c00149e2: 8522 mv a0,s0 + c00149e4: 00049597 auipc a1,0x49 + c00149e8: 5f458593 addi a1,a1,1524 # c005dfd8 + c00149ec: fb1ff0ef jal ra,c001499c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6871 (discriminator 2) +} + c00149f0: 60e6 ld ra,88(sp) + c00149f2: 6446 ld s0,80(sp) + c00149f4: 6125 addi sp,sp,96 + c00149f6: 8082 ret -00000000c001490a : +00000000c00149f8 : JS_ThrowReferenceErrorUninitialized2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6865 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6873 static JSValue JS_ThrowReferenceErrorUninitialized2(JSContext *ctx, - c001490a: 1141 addi sp,sp,-16 - c001490c: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6870 + c00149f8: 1141 addi sp,sp,-16 + c00149fa: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6878 if (is_ref) { - c001490e: ca81 beqz a3,c001491e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6871 + c00149fc: ca81 beqz a3,c0014a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6879 atom = b->closure_var[idx].var_name; - c0014910: 7d9c ld a5,56(a1) - c0014912: 060e slli a2,a2,0x3 - c0014914: 963e add a2,a2,a5 - c0014916: 424c lw a1,4(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6878 + c00149fe: 7d9c ld a5,56(a1) + c0014a00: 060e slli a2,a2,0x3 + c0014a02: 963e add a2,a2,a5 + c0014a04: 424c lw a1,4(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6886 } - c0014918: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6877 + c0014a06: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6885 return JS_ThrowReferenceErrorUninitialized(ctx, atom); - c001491a: fbfff06f j c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6874 + c0014a08: fbfff06f j c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6882 if (b->vardefs) - c001491e: 7998 ld a4,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6869 + c0014a0c: 7998 ld a4,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6877 JSAtom atom = JS_ATOM_NULL; - c0014920: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6874 + c0014a0e: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6882 if (b->vardefs) - c0014922: db7d beqz a4,c0014918 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6875 + c0014a10: db7d beqz a4,c0014a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6883 atom = b->vardefs[b->arg_count + idx].var_name; - c0014924: 0407d783 lhu a5,64(a5) - c0014928: 9e3d addw a2,a2,a5 - c001492a: 0612 slli a2,a2,0x4 - c001492c: 963a add a2,a2,a4 - c001492e: 420c lw a1,0(a2) - c0014930: b7e5 j c0014918 - -00000000c0014932 : + c0014a12: 0407d783 lhu a5,64(a5) + c0014a16: 9e3d addw a2,a2,a5 + c0014a18: 0612 slli a2,a2,0x4 + c0014a1a: 963a add a2,a2,a4 + c0014a1c: 420c lw a1,0(a2) + c0014a1e: b7e5 j c0014a06 + +00000000c0014a20 : JS_ThrowReferenceErrorNotDefined(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6859 { - c0014932: 711d addi sp,sp,-96 - c0014934: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6853 + c0014a20: 711d addi sp,sp,-96 + c0014a22: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6861 return JS_ThrowReferenceError(ctx, "'%s' is not defined", - c0014936: 080c addi a1,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6851 + c0014a24: 080c addi a1,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6859 { - c0014938: ec86 sd ra,88(sp) - c001493a: e8a2 sd s0,80(sp) - c001493c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6853 + c0014a26: ec86 sd ra,88(sp) + c0014a28: e8a2 sd s0,80(sp) + c0014a2a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6861 return JS_ThrowReferenceError(ctx, "'%s' is not defined", - c001493e: d2df10ef jal ra,c000666a - c0014942: 862a mv a2,a0 - c0014944: 00049597 auipc a1,0x49 - c0014948: 47c58593 addi a1,a1,1148 # c005ddc0 - c001494c: 8522 mv a0,s0 - c001494e: f61ff0ef jal ra,c00148ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6855 -} - c0014952: 60e6 ld ra,88(sp) - c0014954: 6446 ld s0,80(sp) - c0014956: 6125 addi sp,sp,96 - c0014958: 8082 ret - -00000000c001495a : + c0014a2c: d2df10ef jal ra,c0006758 + c0014a30: 862a mv a2,a0 + c0014a32: 00049597 auipc a1,0x49 + c0014a36: 5be58593 addi a1,a1,1470 # c005dff0 + c0014a3a: 8522 mv a0,s0 + c0014a3c: f61ff0ef jal ra,c001499c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6863 +} + c0014a40: 60e6 ld ra,88(sp) + c0014a42: 6446 ld s0,80(sp) + c0014a44: 6125 addi sp,sp,96 + c0014a46: 8082 ret + +00000000c0014a48 : JS_ThrowRangeError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6803 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6811 { - c001495a: 7159 addi sp,sp,-112 - c001495c: e0b2 sd a2,64(sp) - c001495e: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 + c0014a48: 7159 addi sp,sp,-112 + c0014a4a: e0b2 sd a2,64(sp) + c0014a4c: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6816 val = JS_ThrowError(ctx, JS_RANGE_ERROR, fmt, ap); - c0014960: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6807 + c0014a4e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6815 va_start(ap, fmt); - c0014962: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 + c0014a50: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6816 val = JS_ThrowError(ctx, JS_RANGE_ERROR, fmt, ap); - c0014964: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6803 -{ - c0014966: fc06 sd ra,56(sp) - c0014968: e8ba sd a4,80(sp) - c001496a: ecbe sd a5,88(sp) - c001496c: f0c2 sd a6,96(sp) - c001496e: f4c6 sd a7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6807 + c0014a52: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6811 +{ + c0014a54: fc06 sd ra,56(sp) + c0014a56: e8ba sd a4,80(sp) + c0014a58: ecbe sd a5,88(sp) + c0014a5a: f0c2 sd a6,96(sp) + c0014a5c: f4c6 sd a7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6815 va_start(ap, fmt); - c0014970: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 + c0014a5e: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6816 val = JS_ThrowError(ctx, JS_RANGE_ERROR, fmt, ap); - c0014972: f14fe0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6811 + c0014a60: f14fe0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 } - c0014976: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6808 + c0014a64: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6816 val = JS_ThrowError(ctx, JS_RANGE_ERROR, fmt, ap); - c0014978: e82a sd a0,16(sp) - c001497a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6810 + c0014a66: e82a sd a0,16(sp) + c0014a68: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6818 return val; - c001497c: f02a sd a0,32(sp) - c001497e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6811 + c0014a6a: f02a sd a0,32(sp) + c0014a6c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 } - c0014980: 6165 addi sp,sp,112 - c0014982: 8082 ret + c0014a6e: 6165 addi sp,sp,112 + c0014a70: 8082 ret -00000000c0014984 : +00000000c0014a72 : JS_ThrowInternalError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6822 { - c0014984: 7159 addi sp,sp,-112 - c0014986: e0b2 sd a2,64(sp) - c0014988: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 + c0014a72: 7159 addi sp,sp,-112 + c0014a74: e0b2 sd a2,64(sp) + c0014a76: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6827 val = JS_ThrowError(ctx, JS_INTERNAL_ERROR, fmt, ap); - c001498a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6818 + c0014a78: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6826 va_start(ap, fmt); - c001498c: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 + c0014a7a: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6827 val = JS_ThrowError(ctx, JS_INTERNAL_ERROR, fmt, ap); - c001498e: 4599 li a1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6814 -{ - c0014990: fc06 sd ra,56(sp) - c0014992: e8ba sd a4,80(sp) - c0014994: ecbe sd a5,88(sp) - c0014996: f0c2 sd a6,96(sp) - c0014998: f4c6 sd a7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6818 + c0014a7c: 4599 li a1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6822 +{ + c0014a7e: fc06 sd ra,56(sp) + c0014a80: e8ba sd a4,80(sp) + c0014a82: ecbe sd a5,88(sp) + c0014a84: f0c2 sd a6,96(sp) + c0014a86: f4c6 sd a7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6826 va_start(ap, fmt); - c001499a: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 + c0014a88: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6827 val = JS_ThrowError(ctx, JS_INTERNAL_ERROR, fmt, ap); - c001499c: eeafe0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6822 + c0014a8a: eeafe0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6830 } - c00149a0: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6819 + c0014a8e: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6827 val = JS_ThrowError(ctx, JS_INTERNAL_ERROR, fmt, ap); - c00149a2: e82a sd a0,16(sp) - c00149a4: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6821 + c0014a90: e82a sd a0,16(sp) + c0014a92: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6829 return val; - c00149a6: f02a sd a0,32(sp) - c00149a8: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6822 + c0014a94: f02a sd a0,32(sp) + c0014a96: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6830 } - c00149aa: 6165 addi sp,sp,112 - c00149ac: 8082 ret + c0014a98: 6165 addi sp,sp,112 + c0014a9a: 8082 ret -00000000c00149ae <__js_poll_interrupts>: +00000000c0014a9c <__js_poll_interrupts>: __js_poll_interrupts(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6889 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6897 { - c00149ae: 1141 addi sp,sp,-16 - c00149b0: e022 sd s0,0(sp) - c00149b2: e406 sd ra,8(sp) - c00149b4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6891 + c0014a9c: 1141 addi sp,sp,-16 + c0014a9e: e022 sd s0,0(sp) + c0014aa0: e406 sd ra,8(sp) + c0014aa2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6899 ctx->interrupt_counter = JS_INTERRUPT_COUNTER_INIT; - c00149b6: 6789 lui a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6890 + c0014aa4: 6789 lui a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6898 JSRuntime *rt = ctx->rt; - c00149b8: 6d08 ld a0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6891 + c0014aa6: 6d08 ld a0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6899 ctx->interrupt_counter = JS_INTERRUPT_COUNTER_INIT; - c00149ba: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> - c00149be: 18f42c23 sw a5,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6892 - if (rt->interrupt_handler) { - c00149c2: 10053783 ld a5,256(a0) - c00149c6: e791 bnez a5,c00149d2 <__js_poll_interrupts+0x24> + c0014aa8: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> + c0014aac: 18f42c23 sw a5,408(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6900 + if (rt->interrupt_handler) { + c0014ab0: 10053783 ld a5,256(a0) + c0014ab4: e791 bnez a5,c0014ac0 <__js_poll_interrupts+0x24> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6908 return 0; - c00149c8: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6901 + c0014ab6: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6909 } - c00149ca: 60a2 ld ra,8(sp) - c00149cc: 6402 ld s0,0(sp) - c00149ce: 0141 addi sp,sp,16 - c00149d0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6893 + c0014ab8: 60a2 ld ra,8(sp) + c0014aba: 6402 ld s0,0(sp) + c0014abc: 0141 addi sp,sp,16 + c0014abe: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6901 if (rt->interrupt_handler(rt, rt->interrupt_opaque)) { - c00149d2: 10853583 ld a1,264(a0) - c00149d6: 9782 jalr a5 - c00149d8: d965 beqz a0,c00149c8 <__js_poll_interrupts+0x1a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6895 + c0014ac0: 10853583 ld a1,264(a0) + c0014ac4: 9782 jalr a5 + c0014ac6: d965 beqz a0,c0014ab6 <__js_poll_interrupts+0x1a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6903 JS_ThrowInternalError(ctx, "interrupted"); - c00149da: 00049597 auipc a1,0x49 - c00149de: 3fe58593 addi a1,a1,1022 # c005ddd8 - c00149e2: 8522 mv a0,s0 - c00149e4: fa1ff0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6896 + c0014ac8: 00049597 auipc a1,0x49 + c0014acc: 54058593 addi a1,a1,1344 # c005e008 + c0014ad0: 8522 mv a0,s0 + c0014ad2: fa1ff0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6904 JS_SetUncatchableError(ctx, ctx->rt->current_exception, TRUE); - c00149e8: 6c1c ld a5,24(s0) - c00149ea: 8522 mv a0,s0 - c00149ec: 4685 li a3,1 - c00149ee: 73ec ld a1,224(a5) - c00149f0: 77f0 ld a2,232(a5) - c00149f2: e75f50ef jal ra,c000a866 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6897 + c0014ad6: 6c1c ld a5,24(s0) + c0014ad8: 8522 mv a0,s0 + c0014ada: 4685 li a3,1 + c0014adc: 73ec ld a1,224(a5) + c0014ade: 77f0 ld a2,232(a5) + c0014ae0: e75f50ef jal ra,c000a954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6905 return -1; - c00149f6: 557d li a0,-1 - c00149f8: bfc9 j c00149ca <__js_poll_interrupts+0x1c> + c0014ae4: 557d li a0,-1 + c0014ae6: bfc9 j c0014ab8 <__js_poll_interrupts+0x1c> -00000000c00149fa : +00000000c0014ae8 : js_poll_interrupts(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6913 if (unlikely(--ctx->interrupt_counter <= 0)) { - c00149fa: 19852703 lw a4,408(a0) - c00149fe: fff7069b addiw a3,a4,-1 - c0014a02: 18d52c23 sw a3,408(a0) - c0014a06: 00d04463 bgtz a3,c0014a0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6906 + c0014ae8: 19852703 lw a4,408(a0) + c0014aec: fff7069b addiw a3,a4,-1 + c0014af0: 18d52c23 sw a3,408(a0) + c0014af4: 00d04463 bgtz a3,c0014afc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6914 return __js_poll_interrupts(ctx); - c0014a0a: fa5ff06f j c00149ae <__js_poll_interrupts> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6910 + c0014af8: fa5ff06f j c0014a9c <__js_poll_interrupts> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6918 } - c0014a0e: 4501 li a0,0 - c0014a10: 8082 ret + c0014afc: 4501 li a0,0 + c0014afe: 8082 ret -00000000c0014a12 : +00000000c0014b00 : JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7068 { - c0014a12: 7135 addi sp,sp,-160 - c0014a14: f02e sd a1,32(sp) - c0014a16: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7066 + c0014b00: 7135 addi sp,sp,-160 + c0014b02: f02e sd a1,32(sp) + c0014b04: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7074 if (!JS_IsFunction(ctx, obj)) - c0014a18: 85b6 mv a1,a3 - c0014a1a: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7060 -{ - c0014a1c: e526 sd s1,136(sp) - c0014a1e: fcce sd s3,120(sp) - c0014a20: ed06 sd ra,152(sp) - c0014a22: e922 sd s0,144(sp) - c0014a24: e14a sd s2,128(sp) - c0014a26: f8d2 sd s4,112(sp) - c0014a28: f4d6 sd s5,104(sp) - c0014a2a: 89aa mv s3,a0 - c0014a2c: e836 sd a3,16(sp) - c0014a2e: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7066 + c0014b06: 85b6 mv a1,a3 + c0014b08: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7068 +{ + c0014b0a: e526 sd s1,136(sp) + c0014b0c: fcce sd s3,120(sp) + c0014b0e: ed06 sd ra,152(sp) + c0014b10: e922 sd s0,144(sp) + c0014b12: e14a sd s2,128(sp) + c0014b14: f8d2 sd s4,112(sp) + c0014b16: f4d6 sd s5,104(sp) + c0014b18: 89aa mv s3,a0 + c0014b1a: e836 sd a3,16(sp) + c0014b1c: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7074 if (!JS_IsFunction(ctx, obj)) - c0014a30: cadf50ef jal ra,c000a6dc - c0014a34: 84aa mv s1,a0 - c0014a36: cd2d beqz a0,c0014ab0 - c0014a38: 6742 ld a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7069 + c0014b1e: cadf50ef jal ra,c000a7ca + c0014b22: 84aa mv s1,a0 + c0014b24: cd2d beqz a0,c0014b9e + c0014b26: 6742 ld a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7077 if (p->class_id == JS_CLASS_BOUND_FUNCTION) { - c0014a3a: 47b9 li a5,14 - c0014a3c: 00675683 lhu a3,6(a4) - c0014a40: 02f69163 bne a3,a5,c0014a62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7071 + c0014b28: 47b9 li a5,14 + c0014b2a: 00675683 lhu a3,6(a4) + c0014b2e: 02f69163 bne a3,a5,c0014b50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7079 return JS_IsInstanceOf(ctx, val, s->func_obj); - c0014a44: 7b1c ld a5,48(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7129 + c0014b32: 7b1c ld a5,48(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7137 } - c0014a46: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7071 + c0014b34: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7079 return JS_IsInstanceOf(ctx, val, s->func_obj); - c0014a48: 7582 ld a1,32(sp) - c0014a4a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7129 -} - c0014a4c: 60ea ld ra,152(sp) - c0014a4e: 64aa ld s1,136(sp) - c0014a50: 690a ld s2,128(sp) - c0014a52: 7a46 ld s4,112(sp) - c0014a54: 7aa6 ld s5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7071 + c0014b36: 7582 ld a1,32(sp) + c0014b38: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7137 +} + c0014b3a: 60ea ld ra,152(sp) + c0014b3c: 64aa ld s1,136(sp) + c0014b3e: 690a ld s2,128(sp) + c0014b40: 7a46 ld s4,112(sp) + c0014b42: 7aa6 ld s5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7079 return JS_IsInstanceOf(ctx, val, s->func_obj); - c0014a56: 6394 ld a3,0(a5) - c0014a58: 6798 ld a4,8(a5) - c0014a5a: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7129 + c0014b44: 6394 ld a3,0(a5) + c0014b46: 6798 ld a4,8(a5) + c0014b48: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7137 } - c0014a5c: 79e6 ld s3,120(sp) - c0014a5e: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7071 + c0014b4a: 79e6 ld s3,120(sp) + c0014b4c: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7079 return JS_IsInstanceOf(ctx, val, s->func_obj); - c0014a60: a0cd j c0014b42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7075 + c0014b4e: a0cd j c0014c30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7083 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0014a62: 54a2 lw s1,40(sp) - c0014a64: 57fd li a5,-1 - c0014a66: 0cf49c63 bne s1,a5,c0014b3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7077 + c0014b50: 54a2 lw s1,40(sp) + c0014b52: 57fd li a5,-1 + c0014b54: 0cf49c63 bne s1,a5,c0014c2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7085 obj_proto = JS_GetProperty(ctx, obj, JS_ATOM_prototype); - c0014a6a: 67e2 ld a5,24(sp) + c0014b58: 67e2 ld a5,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0014a6c: 4801 li a6,0 - c0014a6e: 03c00693 li a3,60 - c0014a72: 85ba mv a1,a4 - c0014a74: 863e mv a2,a5 - c0014a76: 854e mv a0,s3 - c0014a78: e0ba sd a4,64(sp) - c0014a7a: e4be sd a5,72(sp) - c0014a7c: dc7fc0ef jal ra,c0011842 - c0014a80: e8aa sd a0,80(sp) - c0014a82: ecae sd a1,88(sp) - c0014a84: f82a sd a0,48(sp) - c0014a86: fc2e sd a1,56(sp) + c0014b5a: 4801 li a6,0 + c0014b5c: 03c00693 li a3,60 + c0014b60: 85ba mv a1,a4 + c0014b62: 863e mv a2,a5 + c0014b64: 854e mv a0,s3 + c0014b66: e0ba sd a4,64(sp) + c0014b68: e4be sd a5,72(sp) + c0014b6a: dc7fc0ef jal ra,c0011930 + c0014b6e: e8aa sd a0,80(sp) + c0014b70: ecae sd a1,88(sp) + c0014b72: f82a sd a0,48(sp) + c0014b74: fc2e sd a1,56(sp) JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7078 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7086 if (JS_VALUE_GET_TAG(obj_proto) != JS_TAG_OBJECT) { - c0014a88: 0005891b sext.w s2,a1 + c0014b76: 0005891b sext.w s2,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0014a8c: 8a2a mv s4,a0 + c0014b7a: 8a2a mv s4,a0 JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7078 - c0014a8e: 02990b63 beq s2,s1,c0014ac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7079 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7086 + c0014b7c: 02990b63 beq s2,s1,c0014bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7087 if (!JS_IsException(obj_proto)) - c0014a92: 4799 li a5,6 - c0014a94: 00f90963 beq s2,a5,c0014aa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7080 + c0014b80: 4799 li a5,6 + c0014b82: 00f90963 beq s2,a5,c0014b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7088 JS_ThrowTypeError(ctx, "operand 'prototype' property is not an object"); - c0014a98: 00049597 auipc a1,0x49 - c0014a9c: 35058593 addi a1,a1,848 # c005dde8 - c0014aa0: 854e mv a0,s3 - c0014aa2: 955fe0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7127 + c0014b86: 00049597 auipc a1,0x49 + c0014b8a: 49258593 addi a1,a1,1170 # c005e018 + c0014b8e: 854e mv a0,s3 + c0014b90: 955fe0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7135 JS_FreeValue(ctx, obj_proto); - c0014aa6: 75c2 ld a1,48(sp) - c0014aa8: 7662 ld a2,56(sp) - c0014aaa: 854e mv a0,s3 - c0014aac: 88cf30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7129 -} - c0014ab0: 60ea ld ra,152(sp) - c0014ab2: 644a ld s0,144(sp) - c0014ab4: 690a ld s2,128(sp) - c0014ab6: 79e6 ld s3,120(sp) - c0014ab8: 7a46 ld s4,112(sp) - c0014aba: 7aa6 ld s5,104(sp) - c0014abc: 8526 mv a0,s1 - c0014abe: 64aa ld s1,136(sp) - c0014ac0: 610d addi sp,sp,160 - c0014ac2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7085 + c0014b94: 75c2 ld a1,48(sp) + c0014b96: 7662 ld a2,56(sp) + c0014b98: 854e mv a0,s3 + c0014b9a: 88cf30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7137 +} + c0014b9e: 60ea ld ra,152(sp) + c0014ba0: 644a ld s0,144(sp) + c0014ba2: 690a ld s2,128(sp) + c0014ba4: 79e6 ld s3,120(sp) + c0014ba6: 7a46 ld s4,112(sp) + c0014ba8: 7aa6 ld s5,104(sp) + c0014baa: 8526 mv a0,s1 + c0014bac: 64aa ld s1,136(sp) + c0014bae: 610d addi sp,sp,160 + c0014bb0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7093 p = JS_VALUE_GET_OBJ(val); - c0014ac4: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7087 + c0014bb2: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7095 proto1 = p->shape->proto; - c0014ac6: 843e mv s0,a5 - c0014ac8: 6f9c ld a5,24(a5) - c0014aca: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7088 + c0014bb4: 843e mv s0,a5 + c0014bb6: 6f9c ld a5,24(a5) + c0014bb8: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7096 if (!proto1) { - c0014acc: e7ad bnez a5,c0014b36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7090 + c0014bba: e7ad bnez a5,c0014c24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7098 if (unlikely(p->class_id == JS_CLASS_PROXY)) { - c0014ace: 00645703 lhu a4,6(s0) - c0014ad2: 02c00793 li a5,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7116 + c0014bbc: 00645703 lhu a4,6(s0) + c0014bc0: 02c00793 li a5,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7124 ret = FALSE; - c0014ad6: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7090 + c0014bc4: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7098 if (unlikely(p->class_id == JS_CLASS_PROXY)) { - c0014ad8: fcf717e3 bne a4,a5,c0014aa6 + c0014bc6: fcf717e3 bne a4,a5,c0014b94 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0014adc: 401c lw a5,0(s0) - c0014ade: 567d li a2,-1 + c0014bca: 401c lw a5,0(s0) + c0014bcc: 567d li a2,-1 JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7095 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7103 if (JS_IsException(obj1)) { - c0014ae0: 4499 li s1,6 + c0014bce: 4499 li s1,6 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0014ae2: 2785 addiw a5,a5,1 - c0014ae4: c01c sw a5,0(s0) + c0014bd0: 2785 addiw a5,a5,1 + c0014bd2: c01c sw a5,0(s0) JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7107 if (JS_IsNull(obj1)) { - c0014ae6: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7094 + c0014bd4: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7102 obj1 = JS_GetPrototypeFree(ctx, obj1); - c0014ae8: 85a2 mv a1,s0 - c0014aea: 854e mv a0,s3 - c0014aec: e0a2 sd s0,64(sp) - c0014aee: e4b2 sd a2,72(sp) - c0014af0: b2fff0ef jal ra,c001461e - c0014af4: e0aa sd a0,64(sp) - c0014af6: e4ae sd a1,72(sp) + c0014bd6: 85a2 mv a1,s0 + c0014bd8: 854e mv a0,s3 + c0014bda: e0a2 sd s0,64(sp) + c0014bdc: e4b2 sd a2,72(sp) + c0014bde: b2fff0ef jal ra,c001470c + c0014be2: e0aa sd a0,64(sp) + c0014be4: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0014af8: 0005879b sext.w a5,a1 + c0014be6: 0005879b sext.w a5,a1 JS_OrdinaryIsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7094 - c0014afc: 842a mv s0,a0 - c0014afe: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7095 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7102 + c0014bea: 842a mv s0,a0 + c0014bec: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7103 if (JS_IsException(obj1)) { - c0014b00: 00978b63 beq a5,s1,c0014b16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7099 + c0014bee: 00978b63 beq a5,s1,c0014c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7107 if (JS_IsNull(obj1)) { - c0014b04: 03578763 beq a5,s5,c0014b32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7103 + c0014bf2: 03578763 beq a5,s5,c0014c20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7111 if (proto == JS_VALUE_GET_OBJ(obj1)) { - c0014b08: 00aa1963 bne s4,a0,c0014b1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7104 + c0014bf6: 00aa1963 bne s4,a0,c0014c08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7112 JS_FreeValue(ctx, obj1); - c0014b0c: 85d2 mv a1,s4 - c0014b0e: 854e mv a0,s3 - c0014b10: 828f30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7105 + c0014bfa: 85d2 mv a1,s4 + c0014bfc: 854e mv a0,s3 + c0014bfe: 828f30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7113 ret = TRUE; - c0014b14: 4905 li s2,1 - c0014b16: 84ca mv s1,s2 - c0014b18: b779 j c0014aa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7109 + c0014c02: 4905 li s2,1 + c0014c04: 84ca mv s1,s2 + c0014c06: b779 j c0014b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7117 if (js_poll_interrupts(ctx)) { - c0014b1a: 854e mv a0,s3 - c0014b1c: e42e sd a1,8(sp) - c0014b1e: eddff0ef jal ra,c00149fa - c0014b22: 6622 ld a2,8(sp) - c0014b24: d171 beqz a0,c0014ae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7110 + c0014c08: 854e mv a0,s3 + c0014c0a: e42e sd a1,8(sp) + c0014c0c: eddff0ef jal ra,c0014ae8 + c0014c10: 6622 ld a2,8(sp) + c0014c12: d171 beqz a0,c0014bd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7118 JS_FreeValue(ctx, obj1); - c0014b26: 6586 ld a1,64(sp) - c0014b28: 6626 ld a2,72(sp) - c0014b2a: 854e mv a0,s3 - c0014b2c: 80cf30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7112 + c0014c14: 6586 ld a1,64(sp) + c0014c16: 6626 ld a2,72(sp) + c0014c18: 854e mv a0,s3 + c0014c1a: 80cf30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7120 break; - c0014b30: b7dd j c0014b16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7100 + c0014c1e: b7dd j c0014c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7108 ret = FALSE; - c0014b32: 4901 li s2,0 - c0014b34: b7cd j c0014b16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7121 + c0014c20: 4901 li s2,0 + c0014c22: b7cd j c0014c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7129 if (proto == p) { - c0014b36: f94798e3 bne a5,s4,c0014ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7122 + c0014c24: f94798e3 bne a5,s4,c0014bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7130 ret = TRUE; - c0014b3a: 4485 li s1,1 - c0014b3c: b7ad j c0014aa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7067 + c0014c28: 4485 li s1,1 + c0014c2a: b7ad j c0014b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7075 return FALSE; - c0014b3e: 4481 li s1,0 - c0014b40: bf85 j c0014ab0 + c0014c2c: 4481 li s1,0 + c0014c2e: bf85 j c0014b9e -00000000c0014b42 : +00000000c0014c30 : JS_IsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7133 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7141 { - c0014b42: 7159 addi sp,sp,-112 - c0014b44: f0a2 sd s0,96(sp) - c0014b46: eca6 sd s1,88(sp) - c0014b48: e43a sd a4,8(sp) + c0014c30: 7159 addi sp,sp,-112 + c0014c32: f0a2 sd s0,96(sp) + c0014c34: eca6 sd s1,88(sp) + c0014c36: e43a sd a4,8(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0014b4a: 87ba mv a5,a4 - c0014b4c: 0007041b sext.w s0,a4 + c0014c38: 87ba mv a5,a4 + c0014c3a: 0007041b sext.w s0,a4 JS_IsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7133 - c0014b50: f486 sd ra,104(sp) - c0014b52: e82e sd a1,16(sp) - c0014b54: ec32 sd a2,24(sp) - c0014b56: e036 sd a3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7141 + c0014c3e: f486 sd ra,104(sp) + c0014c40: e82e sd a1,16(sp) + c0014c42: ec32 sd a2,24(sp) + c0014c44: e036 sd a3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7144 if (!JS_IsObject(obj)) - c0014b58: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7133 + c0014c46: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7141 { - c0014b5a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7136 + c0014c48: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7144 if (!JS_IsObject(obj)) - c0014b5c: 02e40063 beq s0,a4,c0014b7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7150 + c0014c4a: 02e40063 beq s0,a4,c0014c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7158 JS_ThrowTypeError(ctx, "invalid 'instanceof' right operand"); - c0014b60: 00049597 auipc a1,0x49 - c0014b64: 2b858593 addi a1,a1,696 # c005de18 - c0014b68: 8526 mv a0,s1 - c0014b6a: 88dfe0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7151 + c0014c4e: 00049597 auipc a1,0x49 + c0014c52: 3fa58593 addi a1,a1,1018 # c005e048 + c0014c56: 8526 mv a0,s1 + c0014c58: 88dfe0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7159 return -1; - c0014b6e: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7154 (discriminator 1) -} - c0014b70: 70a6 ld ra,104(sp) - c0014b72: 8522 mv a0,s0 - c0014b74: 7406 ld s0,96(sp) - c0014b76: 64e6 ld s1,88(sp) - c0014b78: 6165 addi sp,sp,112 - c0014b7a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7138 + c0014c5c: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7162 (discriminator 1) +} + c0014c5e: 70a6 ld ra,104(sp) + c0014c60: 8522 mv a0,s0 + c0014c62: 7406 ld s0,96(sp) + c0014c64: 64e6 ld s1,88(sp) + c0014c66: 6165 addi sp,sp,112 + c0014c68: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7146 method = JS_GetProperty(ctx, obj, JS_ATOM_Symbol_hasInstance); - c0014b7c: 8736 mv a4,a3 + c0014c6a: 8736 mv a4,a3 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0014b7e: 863e mv a2,a5 - c0014b80: f836 sd a3,48(sp) - c0014b82: 85ba mv a1,a4 - c0014b84: 4801 li a6,0 - c0014b86: 0d400693 li a3,212 - c0014b8a: fc3e sd a5,56(sp) - c0014b8c: cb7fc0ef jal ra,c0011842 + c0014c6c: 863e mv a2,a5 + c0014c6e: f836 sd a3,48(sp) + c0014c70: 85ba mv a1,a4 + c0014c72: 4801 li a6,0 + c0014c74: 0d400693 li a3,212 + c0014c78: fc3e sd a5,56(sp) + c0014c7a: cb7fc0ef jal ra,c0011930 JS_IsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7147 if (JS_IsException(method)) - c0014b90: 0005871b sext.w a4,a1 - c0014b94: 4799 li a5,6 + c0014c7e: 0005871b sext.w a4,a1 + c0014c82: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0014b96: 862e mv a2,a1 + c0014c84: 862e mv a2,a1 JS_IsInstanceOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7139 - c0014b98: fcf70ce3 beq a4,a5,c0014b70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7147 + c0014c86: fcf70ce3 beq a4,a5,c0014c5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7149 if (!JS_IsNull(method) && !JS_IsUndefined(method)) { - c0014b9c: ffe5879b addiw a5,a1,-2 - c0014ba0: 4705 li a4,1 - c0014ba2: 02f77463 bgeu a4,a5,c0014bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7143 + c0014c8a: ffe5879b addiw a5,a1,-2 + c0014c8e: 4705 li a4,1 + c0014c90: 02f77463 bgeu a4,a5,c0014cb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7151 ret = JS_CallFree(ctx, method, obj, 1, &val); - c0014ba6: 6682 ld a3,0(sp) - c0014ba8: 6722 ld a4,8(sp) - c0014baa: 85aa mv a1,a0 - c0014bac: 01010813 addi a6,sp,16 - c0014bb0: 4785 li a5,1 - c0014bb2: 8526 mv a0,s1 - c0014bb4: c59fc0ef jal ra,c001180c - c0014bb8: 862e mv a2,a1 - c0014bba: f82a sd a0,48(sp) - c0014bbc: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7144 + c0014c94: 6682 ld a3,0(sp) + c0014c96: 6722 ld a4,8(sp) + c0014c98: 85aa mv a1,a0 + c0014c9a: 01010813 addi a6,sp,16 + c0014c9e: 4785 li a5,1 + c0014ca0: 8526 mv a0,s1 + c0014ca2: c59fc0ef jal ra,c00118fa + c0014ca6: 862e mv a2,a1 + c0014ca8: f82a sd a0,48(sp) + c0014caa: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7152 return JS_ToBoolFree(ctx, ret); - c0014bbe: 85aa mv a1,a0 - c0014bc0: 8526 mv a0,s1 - c0014bc2: aa2f30ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7153 + c0014cac: 85aa mv a1,a0 + c0014cae: 8526 mv a0,s1 + c0014cb0: aa2f30ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7161 return JS_OrdinaryIsInstanceOf(ctx, val, obj); - c0014bc6: 842a mv s0,a0 - c0014bc8: b765 j c0014b70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7148 + c0014cb4: 842a mv s0,a0 + c0014cb6: b765 j c0014c5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7156 if (!JS_IsFunction(ctx, obj)) { - c0014bca: 6582 ld a1,0(sp) - c0014bcc: 6622 ld a2,8(sp) - c0014bce: 8526 mv a0,s1 - c0014bd0: b0df50ef jal ra,c000a6dc - c0014bd4: d551 beqz a0,c0014b60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7153 + c0014cb8: 6582 ld a1,0(sp) + c0014cba: 6622 ld a2,8(sp) + c0014cbc: 8526 mv a0,s1 + c0014cbe: b0df50ef jal ra,c000a7ca + c0014cc2: d551 beqz a0,c0014c4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7161 return JS_OrdinaryIsInstanceOf(ctx, val, obj); - c0014bd6: 6682 ld a3,0(sp) - c0014bd8: 6722 ld a4,8(sp) - c0014bda: 65c2 ld a1,16(sp) - c0014bdc: 6662 ld a2,24(sp) - c0014bde: 8526 mv a0,s1 - c0014be0: e33ff0ef jal ra,c0014a12 - c0014be4: b7cd j c0014bc6 - -00000000c0014be6 : + c0014cc4: 6682 ld a3,0(sp) + c0014cc6: 6722 ld a4,8(sp) + c0014cc8: 65c2 ld a1,16(sp) + c0014cca: 6662 ld a2,24(sp) + c0014ccc: 8526 mv a0,s1 + c0014cce: e33ff0ef jal ra,c0014b00 + c0014cd2: b7cd j c0014cb4 + +00000000c0014cd4 : js_function_hasInstance(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38632 { - c0014be6: 7139 addi sp,sp,-64 - c0014be8: fc06 sd ra,56(sp) - c0014bea: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 + c0014cd4: 7139 addi sp,sp,-64 + c0014cd6: fc06 sd ra,56(sp) + c0014cd8: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38634 ret = JS_OrdinaryIsInstanceOf(ctx, argv[0], this_val); - c0014bec: 86ae mv a3,a1 - c0014bee: 8732 mv a4,a2 - c0014bf0: 638c ld a1,0(a5) - c0014bf2: 6790 ld a2,8(a5) - c0014bf4: e1fff0ef jal ra,c0014a12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38627 + c0014cda: 86ae mv a3,a1 + c0014cdc: 8732 mv a4,a2 + c0014cde: 638c ld a1,0(a5) + c0014ce0: 6790 ld a2,8(a5) + c0014ce2: e1fff0ef jal ra,c0014b00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38635 if (ret < 0) - c0014bf8: 00055a63 bgez a0,c0014c0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 + c0014ce6: 00055a63 bgez a0,c0014cfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38636 return JS_EXCEPTION; - c0014bfc: e802 sd zero,16(sp) - c0014bfe: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38631 -} - c0014c00: 70e2 ld ra,56(sp) - c0014c02: ec3e sd a5,24(sp) - c0014c04: 6542 ld a0,16(sp) - c0014c06: 65e2 ld a1,24(sp) - c0014c08: 6121 addi sp,sp,64 - c0014c0a: 8082 ret + c0014cea: e802 sd zero,16(sp) + c0014cec: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38639 +} + c0014cee: 70e2 ld ra,56(sp) + c0014cf0: ec3e sd a5,24(sp) + c0014cf2: 6542 ld a0,16(sp) + c0014cf4: 65e2 ld a1,24(sp) + c0014cf6: 6121 addi sp,sp,64 + c0014cf8: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0014c0c: 00a03533 snez a0,a0 - c0014c10: d202 sw zero,36(sp) - c0014c12: d02a sw a0,32(sp) - c0014c14: 7782 ld a5,32(sp) - c0014c16: e83e sd a5,16(sp) - c0014c18: 4785 li a5,1 - c0014c1a: b7dd j c0014c00 - -00000000c0014c1c : + c0014cfa: 00a03533 snez a0,a0 + c0014cfe: d202 sw zero,36(sp) + c0014d00: d02a sw a0,32(sp) + c0014d02: 7782 ld a5,32(sp) + c0014d04: e83e sd a5,16(sp) + c0014d06: 4785 li a5,1 + c0014d08: b7dd j c0014cee + +00000000c0014d0a : JS_ThrowOutOfMemory(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6833 { - c0014c1c: 1101 addi sp,sp,-32 - c0014c1e: ec06 sd ra,24(sp) - c0014c20: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6826 + c0014d0a: 1101 addi sp,sp,-32 + c0014d0c: ec06 sd ra,24(sp) + c0014d0e: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6834 JSRuntime *rt = ctx->rt; - c0014c22: 6d00 ld s0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6827 + c0014d10: 6d00 ld s0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6835 if (!rt->in_out_of_memory) { - c0014c24: 0f044783 lbu a5,240(s0) - c0014c28: ef81 bnez a5,c0014c40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6828 + c0014d12: 0f044783 lbu a5,240(s0) + c0014d16: ef81 bnez a5,c0014d2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6836 rt->in_out_of_memory = TRUE; - c0014c2a: 4785 li a5,1 - c0014c2c: 0ef40823 sb a5,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6829 + c0014d18: 4785 li a5,1 + c0014d1a: 0ef40823 sb a5,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6837 JS_ThrowInternalError(ctx, "out of memory"); - c0014c30: 00049597 auipc a1,0x49 - c0014c34: 21058593 addi a1,a1,528 # c005de40 - c0014c38: d4dff0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6830 + c0014d1e: 00049597 auipc a1,0x49 + c0014d22: 35258593 addi a1,a1,850 # c005e070 + c0014d26: d4dff0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6838 rt->in_out_of_memory = FALSE; - c0014c3c: 0e040823 sb zero,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6833 + c0014d2a: 0e040823 sb zero,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6841 } - c0014c40: 60e2 ld ra,24(sp) - c0014c42: 6442 ld s0,16(sp) - c0014c44: 4501 li a0,0 - c0014c46: 4599 li a1,6 - c0014c48: 6105 addi sp,sp,32 - c0014c4a: 8082 ret + c0014d2e: 60e2 ld ra,24(sp) + c0014d30: 6442 ld s0,16(sp) + c0014d32: 4501 li a0,0 + c0014d34: 4599 li a1,6 + c0014d36: 6105 addi sp,sp,32 + c0014d38: 8082 ret -00000000c0014c4c : +00000000c0014d3a : js_malloc(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1366 { - c0014c4c: 1101 addi sp,sp,-32 - c0014c4e: e822 sd s0,16(sp) - c0014c50: e426 sd s1,8(sp) - c0014c52: ec06 sd ra,24(sp) - c0014c54: 84aa mv s1,a0 + c0014d3a: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1368 +_d("js_malloc: a="); _d(debug_expr); _d("\n"); //// + c0014d3c: 4635 li a2,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1366 +{ + c0014d3e: f022 sd s0,32(sp) + c0014d40: e84a sd s2,16(sp) + c0014d42: 842e mv s0,a1 + c0014d44: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1368 +_d("js_malloc: a="); _d(debug_expr); _d("\n"); //// + c0014d46: 00049597 auipc a1,0x49 + c0014d4a: 33a58593 addi a1,a1,826 # c005e080 + c0014d4e: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1366 +{ + c0014d50: f406 sd ra,40(sp) + c0014d52: ec26 sd s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1368 +_d("js_malloc: a="); _d(debug_expr); _d("\n"); //// + c0014d54: 2c5420ef jal ra,c0057818 + c0014d58: 000ec497 auipc s1,0xec + c0014d5c: 39848493 addi s1,s1,920 # c01010f0 + c0014d60: 608c ld a1,0(s1) + c0014d62: 852e mv a0,a1 + c0014d64: e42e sd a1,8(sp) + c0014d66: 61b410ef jal ra,c0056b80 + c0014d6a: 65a2 ld a1,8(sp) + c0014d6c: 862a mv a2,a0 + c0014d6e: 4505 li a0,1 + c0014d70: 2a9420ef jal ra,c0057818 + c0014d74: 4605 li a2,1 + c0014d76: 0005c597 auipc a1,0x5c + c0014d7a: 02a58593 addi a1,a1,42 # c0070da0 + c0014d7e: 4505 li a0,1 + c0014d80: 299420ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1369 ptr = js_malloc_rt(ctx->rt, size); - c0014c56: 6d08 ld a0,24(a0) - c0014c58: f0bf10ef jal ra,c0006b62 - c0014c5c: 842a mv s0,a0 + c0014d84: 01893503 ld a0,24(s2) + c0014d88: 85a2 mv a1,s0 + c0014d8a: ec7f10ef jal ra,c0006c50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1370 +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// + c0014d8e: 4635 li a2,13 + c0014d90: 00049597 auipc a1,0x49 + c0014d94: 30058593 addi a1,a1,768 # c005e090 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1369 - if (unlikely(!ptr)) { - c0014c5e: e501 bnez a0,c0014c66 + ptr = js_malloc_rt(ctx->rt, size); + c0014d98: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1370 +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// + c0014d9a: 4505 li a0,1 + c0014d9c: 27d420ef jal ra,c0057818 + c0014da0: 608c ld a1,0(s1) + c0014da2: 852e mv a0,a1 + c0014da4: e42e sd a1,8(sp) + c0014da6: 5db410ef jal ra,c0056b80 + c0014daa: 65a2 ld a1,8(sp) + c0014dac: 862a mv a2,a0 + c0014dae: 4505 li a0,1 + c0014db0: 269420ef jal ra,c0057818 + c0014db4: 4605 li a2,1 + c0014db6: 0005c597 auipc a1,0x5c + c0014dba: fea58593 addi a1,a1,-22 # c0070da0 + c0014dbe: 4505 li a0,1 + c0014dc0: 259420ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1372 +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// + c0014dc4: 4635 li a2,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1371 + if (unlikely(!ptr)) { + c0014dc6: e421 bnez s0,c0014e0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1372 +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// + c0014dc8: 00049597 auipc a1,0x49 + c0014dcc: 2c858593 addi a1,a1,712 # c005e090 + c0014dd0: 4505 li a0,1 + c0014dd2: 247420ef jal ra,c0057818 + c0014dd6: 608c ld a1,0(s1) + c0014dd8: 852e mv a0,a1 + c0014dda: e42e sd a1,8(sp) + c0014ddc: 5a5410ef jal ra,c0056b80 + c0014de0: 65a2 ld a1,8(sp) + c0014de2: 862a mv a2,a0 + c0014de4: 4505 li a0,1 + c0014de6: 233420ef jal ra,c0057818 + c0014dea: 4605 li a2,1 + c0014dec: 0005c597 auipc a1,0x5c + c0014df0: fb458593 addi a1,a1,-76 # c0070da0 + c0014df4: 4505 li a0,1 + c0014df6: 223420ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1373 JS_ThrowOutOfMemory(ctx); - c0014c60: 8526 mv a0,s1 - c0014c62: fbbff0ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1374 -} - c0014c66: 60e2 ld ra,24(sp) - c0014c68: 8522 mv a0,s0 - c0014c6a: 6442 ld s0,16(sp) - c0014c6c: 64a2 ld s1,8(sp) - c0014c6e: 6105 addi sp,sp,32 - c0014c70: 8082 ret - -00000000c0014c72 : + c0014dfa: 854a mv a0,s2 + c0014dfc: f0fff0ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1378 +} + c0014e00: 70a2 ld ra,40(sp) + c0014e02: 8522 mv a0,s0 + c0014e04: 7402 ld s0,32(sp) + c0014e06: 64e2 ld s1,24(sp) + c0014e08: 6942 ld s2,16(sp) + c0014e0a: 6145 addi sp,sp,48 + c0014e0c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1376 +_d("js_malloc: d="); _d(debug_expr); _d("\n"); //// + c0014e0e: 00049597 auipc a1,0x49 + c0014e12: 29258593 addi a1,a1,658 # c005e0a0 + c0014e16: 4505 li a0,1 + c0014e18: 201420ef jal ra,c0057818 + c0014e1c: 608c ld a1,0(s1) + c0014e1e: 852e mv a0,a1 + c0014e20: e42e sd a1,8(sp) + c0014e22: 55f410ef jal ra,c0056b80 + c0014e26: 65a2 ld a1,8(sp) + c0014e28: 862a mv a2,a0 + c0014e2a: 4505 li a0,1 + c0014e2c: 1ed420ef jal ra,c0057818 + c0014e30: 4605 li a2,1 + c0014e32: 0005c597 auipc a1,0x5c + c0014e36: f6e58593 addi a1,a1,-146 # c0070da0 + c0014e3a: 4505 li a0,1 + c0014e3c: 1dd420ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1377 + return ptr; + c0014e40: b7c1 j c0014e00 + +00000000c0014e42 : js_strndup(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1432 { - c0014c72: 1101 addi sp,sp,-32 - c0014c74: e04a sd s2,0(sp) - c0014c76: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1430 + c0014e42: 1101 addi sp,sp,-32 + c0014e44: e04a sd s2,0(sp) + c0014e46: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1434 ptr = js_malloc(ctx, n + 1); - c0014c78: 00160593 addi a1,a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1428 -{ - c0014c7c: e822 sd s0,16(sp) - c0014c7e: e426 sd s1,8(sp) - c0014c80: ec06 sd ra,24(sp) - c0014c82: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1430 + c0014e48: 00160593 addi a1,a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1432 +{ + c0014e4c: e822 sd s0,16(sp) + c0014e4e: e426 sd s1,8(sp) + c0014e50: ec06 sd ra,24(sp) + c0014e52: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1434 ptr = js_malloc(ctx, n + 1); - c0014c84: fc9ff0ef jal ra,c0014c4c - c0014c88: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1431 + c0014e54: ee7ff0ef jal ra,c0014d3a + c0014e58: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1435 if (ptr) { - c0014c8a: c901 beqz a0,c0014c9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1432 + c0014e5a: c901 beqz a0,c0014e6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1436 memcpy(ptr, s, n); - c0014c8c: 8622 mv a2,s0 - c0014c8e: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1433 + c0014e5c: 8622 mv a2,s0 + c0014e5e: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1437 ptr[n] = '\0'; - c0014c90: 9426 add s0,s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1432 + c0014e60: 9426 add s0,s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1436 memcpy(ptr, s, n); - c0014c92: 549410ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1433 + c0014e62: 549410ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1437 ptr[n] = '\0'; - c0014c96: 00040023 sb zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1436 + c0014e66: 00040023 sb zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1440 } - c0014c9a: 60e2 ld ra,24(sp) - c0014c9c: 6442 ld s0,16(sp) - c0014c9e: 6902 ld s2,0(sp) - c0014ca0: 8526 mv a0,s1 - c0014ca2: 64a2 ld s1,8(sp) - c0014ca4: 6105 addi sp,sp,32 - c0014ca6: 8082 ret + c0014e6a: 60e2 ld ra,24(sp) + c0014e6c: 6442 ld s0,16(sp) + c0014e6e: 6902 ld s2,0(sp) + c0014e70: 8526 mv a0,s1 + c0014e72: 64a2 ld s1,8(sp) + c0014e74: 6105 addi sp,sp,32 + c0014e76: 8082 ret -00000000c0014ca8 : +00000000c0014e78 : js_strdup(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1439 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1443 { - c0014ca8: 1101 addi sp,sp,-32 - c0014caa: e822 sd s0,16(sp) - c0014cac: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1440 + c0014e78: 1101 addi sp,sp,-32 + c0014e7a: e822 sd s0,16(sp) + c0014e7c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1444 return js_strndup(ctx, str, strlen(str)); - c0014cae: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1439 + c0014e7e: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1443 { - c0014cb0: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1440 + c0014e80: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1444 return js_strndup(ctx, str, strlen(str)); - c0014cb2: e42e sd a1,8(sp) - c0014cb4: 4fd410ef jal ra,c00569b0 - c0014cb8: 862a mv a2,a0 - c0014cba: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1441 + c0014e82: e42e sd a1,8(sp) + c0014e84: 4fd410ef jal ra,c0056b80 + c0014e88: 862a mv a2,a0 + c0014e8a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1445 } - c0014cbc: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1440 + c0014e8c: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1444 return js_strndup(ctx, str, strlen(str)); - c0014cbe: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1441 + c0014e8e: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1445 } - c0014cc0: 60e2 ld ra,24(sp) - c0014cc2: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1440 + c0014e90: 60e2 ld ra,24(sp) + c0014e92: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1444 return js_strndup(ctx, str, strlen(str)); - c0014cc4: fafff06f j c0014c72 + c0014e94: fafff06f j c0014e42 -00000000c0014cc8 : +00000000c0014e98 : get_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15632 -{ - c0014cc8: 7179 addi sp,sp,-48 - c0014cca: f022 sd s0,32(sp) - c0014ccc: ec26 sd s1,24(sp) - c0014cce: e84a sd s2,16(sp) - c0014cd0: e44e sd s3,8(sp) - c0014cd2: e052 sd s4,0(sp) - c0014cd4: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15636 - list_for_each(el, &sf->var_ref_list) { - c0014cd6: 799c ld a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15632 -{ - c0014cd8: 89aa mv s3,a0 - c0014cda: 842e mv s0,a1 - c0014cdc: 84b2 mv s1,a2 - c0014cde: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15640 +{ + c0014e98: 7179 addi sp,sp,-48 + c0014e9a: f022 sd s0,32(sp) + c0014e9c: ec26 sd s1,24(sp) + c0014e9e: e84a sd s2,16(sp) + c0014ea0: e44e sd s3,8(sp) + c0014ea2: e052 sd s4,0(sp) + c0014ea4: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15644 list_for_each(el, &sf->var_ref_list) { - c0014ce0: 02858a13 addi s4,a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15636 (discriminator 1) - c0014ce4: 06fa1d63 bne s4,a5,c0014d5e + c0014ea6: 799c ld a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15640 +{ + c0014ea8: 89aa mv s3,a0 + c0014eaa: 842e mv s0,a1 + c0014eac: 84b2 mv s1,a2 + c0014eae: 8936 mv s2,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15644 + list_for_each(el, &sf->var_ref_list) { + c0014eb0: 02858a13 addi s4,a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15644 (discriminator 1) + c0014eb4: 06fa1d63 bne s4,a5,c0014f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15652 var_ref = js_malloc(ctx, sizeof(JSVarRef)); - c0014ce8: 03800593 li a1,56 - c0014cec: 854e mv a0,s3 - c0014cee: f5fff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15645 + c0014eb8: 03800593 li a1,56 + c0014ebc: 854e mv a0,s3 + c0014ebe: e7dff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15653 if (!var_ref) - c0014cf2: c559 beqz a0,c0014d80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15647 + c0014ec2: c559 beqz a0,c0014f50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15655 var_ref->header.ref_count = 1; - c0014cf4: 4785 li a5,1 - c0014cf6: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15648 + c0014ec4: 4785 li a5,1 + c0014ec6: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15656 add_gc_object(ctx->rt, &var_ref->header, JS_GC_OBJ_TYPE_VAR_REF); - c0014cf8: 0189b703 ld a4,24(s3) # 4000018 <__clzdi2-0xbbffffe8> + c0014ec8: 0189b703 ld a4,24(s3) # 4000018 <__clzdi2-0xbbffffe8> add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0014cfc: 478d li a5,3 - c0014cfe: 00f50223 sb a5,4(a0) + c0014ecc: 478d li a5,3 + c0014ece: 00f50223 sb a5,4(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0014d02: 6754 ld a3,136(a4) + c0014ed2: 6754 ld a3,136(a4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0014d04: 00850793 addi a5,a0,8 + c0014ed4: 00850793 addi a5,a0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0014d08: e69c sd a5,8(a3) + c0014ed8: e69c sd a5,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0014d0a: e514 sd a3,8(a0) + c0014eda: e514 sd a3,8(a0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 - c0014d0c: 08870693 addi a3,a4,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 + c0014edc: 08870693 addi a3,a4,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0014d10: e914 sd a3,16(a0) + c0014ee0: e914 sd a3,16(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0014d12: e75c sd a5,136(a4) + c0014ee2: e75c sd a5,136(a4) get_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15649 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15657 var_ref->is_detached = FALSE; - c0014d14: 00554783 lbu a5,5(a0) - c0014d18: 0019171b slliw a4,s2,0x1 - c0014d1c: 8b0d andi a4,a4,3 - c0014d1e: 9bf1 andi a5,a5,-4 - c0014d20: 8fd9 or a5,a5,a4 - c0014d22: 00f502a3 sb a5,5(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15651 + c0014ee4: 00554783 lbu a5,5(a0) + c0014ee8: 0019171b slliw a4,s2,0x1 + c0014eec: 8b0d andi a4,a4,3 + c0014eee: 9bf1 andi a5,a5,-4 + c0014ef0: 8fd9 or a5,a5,a4 + c0014ef2: 00f502a3 sb a5,5(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15659 var_ref->var_idx = var_idx; - c0014d26: 00951323 sh s1,6(a0) + c0014ef6: 00951323 sh s1,6(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0014d2a: 7418 ld a4,40(s0) + c0014efa: 7418 ld a4,40(s0) get_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15660 list_add_tail(&var_ref->var_ref_link, &sf->var_ref_list); - c0014d2c: 02050793 addi a5,a0,32 + c0014efc: 02050793 addi a5,a0,32 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0014d30: e71c sd a5,8(a4) + c0014f00: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0014d32: f118 sd a4,32(a0) + c0014f02: f118 sd a4,32(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0014d34: 03453423 sd s4,40(a0) + c0014f04: 03453423 sd s4,40(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0014d38: f41c sd a5,40(s0) + c0014f08: f41c sd a5,40(s0) get_var_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15653 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15661 if (sf->js_mode & JS_MODE_ASYNC) { - c0014d3a: 407c lw a5,68(s0) - c0014d3c: 8ba1 andi a5,a5,8 - c0014d3e: cbb9 beqz a5,c0014d94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15662 + c0014f0a: 407c lw a5,68(s0) + c0014f0c: 8ba1 andi a5,a5,8 + c0014f0e: cbb9 beqz a5,c0014f64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15670 var_ref->async_func = container_of(sf, JSAsyncFunctionState, frame); - c0014d40: fa840793 addi a5,s0,-88 - c0014d44: f91c sd a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15663 + c0014f10: fa840793 addi a5,s0,-88 + c0014f14: f91c sd a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15671 var_ref->async_func->header.ref_count++; - c0014d46: fa842783 lw a5,-88(s0) - c0014d4a: 2785 addiw a5,a5,1 - c0014d4c: faf42423 sw a5,-88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15668 + c0014f16: fa842783 lw a5,-88(s0) + c0014f1a: 2785 addiw a5,a5,1 + c0014f1c: faf42423 sw a5,-88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15676 var_ref->pvalue = &sf->arg_buf[var_idx]; - c0014d50: 0492 slli s1,s1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15667 + c0014f20: 0492 slli s1,s1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15675 if (is_arg) - c0014d52: 04090463 beqz s2,c0014d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15668 + c0014f22: 04090463 beqz s2,c0014f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15676 var_ref->pvalue = &sf->arg_buf[var_idx]; - c0014d56: 6c10 ld a2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15670 + c0014f26: 6c10 ld a2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15678 var_ref->pvalue = &sf->var_buf[var_idx]; - c0014d58: 94b2 add s1,s1,a2 - c0014d5a: ed04 sd s1,24(a0) - c0014d5c: a015 j c0014d80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15638 + c0014f28: 94b2 add s1,s1,a2 + c0014f2a: ed04 sd s1,24(a0) + c0014f2c: a015 j c0014f50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15646 if (var_ref->var_idx == var_idx && var_ref->is_arg == is_arg) { - c0014d5e: fe67d703 lhu a4,-26(a5) - c0014d62: 02971763 bne a4,s1,c0014d90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15638 (discriminator 1) - c0014d66: fe07b703 ld a4,-32(a5) - c0014d6a: 9325 srli a4,a4,0x29 - c0014d6c: 8b05 andi a4,a4,1 - c0014d6e: 03271163 bne a4,s2,c0014d90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15639 + c0014f2e: fe67d703 lhu a4,-26(a5) + c0014f32: 02971763 bne a4,s1,c0014f60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15646 (discriminator 1) + c0014f36: fe07b703 ld a4,-32(a5) + c0014f3a: 9325 srli a4,a4,0x29 + c0014f3c: 8b05 andi a4,a4,1 + c0014f3e: 03271163 bne a4,s2,c0014f60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15647 var_ref->header.ref_count++; - c0014d72: fe07a703 lw a4,-32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15637 + c0014f42: fe07a703 lw a4,-32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15645 var_ref = list_entry(el, JSVarRef, var_ref_link); - c0014d76: fe078513 addi a0,a5,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15639 + c0014f46: fe078513 addi a0,a5,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15647 var_ref->header.ref_count++; - c0014d7a: 2705 addiw a4,a4,1 - c0014d7c: fee7a023 sw a4,-32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15672 -} - c0014d80: 70a2 ld ra,40(sp) - c0014d82: 7402 ld s0,32(sp) - c0014d84: 64e2 ld s1,24(sp) - c0014d86: 6942 ld s2,16(sp) - c0014d88: 69a2 ld s3,8(sp) - c0014d8a: 6a02 ld s4,0(sp) - c0014d8c: 6145 addi sp,sp,48 - c0014d8e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15636 (discriminator 2) + c0014f4a: 2705 addiw a4,a4,1 + c0014f4c: fee7a023 sw a4,-32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15680 +} + c0014f50: 70a2 ld ra,40(sp) + c0014f52: 7402 ld s0,32(sp) + c0014f54: 64e2 ld s1,24(sp) + c0014f56: 6942 ld s2,16(sp) + c0014f58: 69a2 ld s3,8(sp) + c0014f5a: 6a02 ld s4,0(sp) + c0014f5c: 6145 addi sp,sp,48 + c0014f5e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15644 (discriminator 2) list_for_each(el, &sf->var_ref_list) { - c0014d90: 679c ld a5,8(a5) - c0014d92: bf89 j c0014ce4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15665 + c0014f60: 679c ld a5,8(a5) + c0014f62: bf89 j c0014eb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15673 var_ref->async_func = NULL; - c0014d94: 02053823 sd zero,48(a0) - c0014d98: bf65 j c0014d50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15670 + c0014f64: 02053823 sd zero,48(a0) + c0014f68: bf65 j c0014f20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15678 var_ref->pvalue = &sf->var_buf[var_idx]; - c0014d9a: 7010 ld a2,32(s0) - c0014d9c: bf75 j c0014d58 + c0014f6a: 7010 ld a2,32(s0) + c0014f6c: bf75 j c0014f28 -00000000c0014d9e : +00000000c0014f6e : js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4454 -{ - c0014d9e: 715d addi sp,sp,-80 - c0014da0: e0a2 sd s0,64(sp) - c0014da2: f84a sd s2,48(sp) - c0014da4: f44e sd s3,40(sp) - c0014da6: e486 sd ra,72(sp) - c0014da8: fc26 sd s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4461 - hash_size = sh1->prop_hash_mask + 1; - c0014daa: 5184 lw s1,32(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4462 - size = get_shape_size(hash_size, sh1->prop_size); - c0014dac: 51d0 lw a2,36(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4454 { - c0014dae: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4461 + c0014f6e: 715d addi sp,sp,-80 + c0014f70: e0a2 sd s0,64(sp) + c0014f72: f84a sd s2,48(sp) + c0014f74: f44e sd s3,40(sp) + c0014f76: e486 sd ra,72(sp) + c0014f78: fc26 sd s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4469 hash_size = sh1->prop_hash_mask + 1; - c0014db0: 2485 addiw s1,s1,1 + c0014f7a: 5184 lw s1,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4470 + size = get_shape_size(hash_size, sh1->prop_size); + c0014f7c: 51d0 lw a2,36(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4462 +{ + c0014f7e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4469 + hash_size = sh1->prop_hash_mask + 1; + c0014f80: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4470 size = get_shape_size(hash_size, sh1->prop_size); - c0014db2: 1482 slli s1,s1,0x20 - c0014db4: 9081 srli s1,s1,0x20 + c0014f82: 1482 slli s1,s1,0x20 + c0014f84: 9081 srli s1,s1,0x20 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c0014db6: 0606 slli a2,a2,0x1 - c0014db8: 9626 add a2,a2,s1 - c0014dba: 0641 addi a2,a2,16 - c0014dbc: 060a slli a2,a2,0x2 + c0014f86: 0606 slli a2,a2,0x1 + c0014f88: 9626 add a2,a2,s1 + c0014f8a: 0641 addi a2,a2,16 + c0014f8c: 060a slli a2,a2,0x2 js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4471 sh_alloc = js_malloc(ctx, size); - c0014dbe: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4454 + c0014f8e: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4462 { - c0014dc0: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4463 + c0014f90: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4471 sh_alloc = js_malloc(ctx, size); - c0014dc2: e432 sd a2,8(sp) - c0014dc4: e89ff0ef jal ra,c0014c4c - c0014dc8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4464 + c0014f92: e432 sd a2,8(sp) + c0014f94: da7ff0ef jal ra,c0014d3a + c0014f98: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4472 if (!sh_alloc) - c0014dca: cd21 beqz a0,c0014e22 + c0014f9a: cd21 beqz a0,c0014ff2 get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c0014dcc: 02096583 lwu a1,32(s2) + c0014f9c: 02096583 lwu a1,32(s2) js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4467 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 memcpy(sh_alloc, sh_alloc1, size); - c0014dd0: 6622 ld a2,8(sp) + c0014fa0: 6622 ld a2,8(sp) get_shape_from_alloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4308 return (JSShape *)(void *)((uint32_t *)sh_alloc + hash_size); - c0014dd2: 048a slli s1,s1,0x2 + c0014fa2: 048a slli s1,s1,0x2 get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c0014dd4: 058a slli a1,a1,0x2 - c0014dd6: 40b905b3 sub a1,s2,a1 + c0014fa4: 058a slli a1,a1,0x2 + c0014fa6: 40b905b3 sub a1,s2,a1 js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4467 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 memcpy(sh_alloc, sh_alloc1, size); - c0014dda: 15f1 addi a1,a1,-4 - c0014ddc: 3ff410ef jal ra,c00569da + c0014faa: 15f1 addi a1,a1,-4 + c0014fac: 3ff410ef jal ra,c0056baa get_shape_from_alloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4308 return (JSShape *)(void *)((uint32_t *)sh_alloc + hash_size); - c0014de0: 9426 add s0,s0,s1 + c0014fb0: 9426 add s0,s0,s1 js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4469 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4477 sh->header.ref_count = 1; - c0014de2: 4785 li a5,1 - c0014de4: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4470 + c0014fb2: 4785 li a5,1 + c0014fb4: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4478 add_gc_object(ctx->rt, &sh->header, JS_GC_OBJ_TYPE_SHAPE); - c0014de6: 0189b783 ld a5,24(s3) + c0014fb6: 0189b783 ld a5,24(s3) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0014dea: 4709 li a4,2 - c0014dec: 00e40223 sb a4,4(s0) + c0014fba: 4709 li a4,2 + c0014fbc: 00e40223 sb a4,4(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0014df0: 67d4 ld a3,136(a5) + c0014fc0: 67d4 ld a3,136(a5) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0014df2: 00840713 addi a4,s0,8 + c0014fc2: 00840713 addi a4,s0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0014df6: e698 sd a4,8(a3) + c0014fc6: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0014df8: e414 sd a3,8(s0) + c0014fc8: e414 sd a3,8(s0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 - c0014dfa: 08878693 addi a3,a5,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 + c0014fca: 08878693 addi a3,a5,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0014dfe: e814 sd a3,16(s0) + c0014fce: e814 sd a3,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0014e00: e7d8 sd a4,136(a5) + c0014fd0: e7d8 sd a4,136(a5) js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4480 if (sh->proto) { - c0014e02: 7c08 ld a0,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4471 + c0014fd2: 7c08 ld a0,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4479 sh->is_hashed = FALSE; - c0014e04: 00040c23 sb zero,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4472 + c0014fd4: 00040c23 sb zero,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4480 if (sh->proto) { - c0014e08: c519 beqz a0,c0014e16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4473 + c0014fd8: c519 beqz a0,c0014fe6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4481 JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, sh->proto)); - c0014e0a: 57fd li a5,-1 - c0014e0c: 55fd li a1,-1 - c0014e0e: e82a sd a0,16(sp) - c0014e10: ec3e sd a5,24(sp) - c0014e12: 85df10ef jal ra,c000666e + c0014fda: 57fd li a5,-1 + c0014fdc: 55fd li a1,-1 + c0014fde: e82a sd a0,16(sp) + c0014fe0: ec3e sd a5,24(sp) + c0014fe2: f7af10ef jal ra,c000675c get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0014e16: 04040913 addi s2,s0,64 + c0014fe6: 04040913 addi s2,s0,64 js_clone_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - c0014e1a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 (discriminator 1) - c0014e1c: 541c lw a5,40(s0) - c0014e1e: 00f4ea63 bltu s1,a5,c0014e32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4479 -} - c0014e22: 60a6 ld ra,72(sp) - c0014e24: 8522 mv a0,s0 - c0014e26: 6406 ld s0,64(sp) - c0014e28: 74e2 ld s1,56(sp) - c0014e2a: 7942 ld s2,48(sp) - c0014e2c: 79a2 ld s3,40(sp) - c0014e2e: 6161 addi sp,sp,80 - c0014e30: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4476 (discriminator 3) + c0014fea: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 (discriminator 1) + c0014fec: 541c lw a5,40(s0) + c0014fee: 00f4ea63 bltu s1,a5,c0015002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4487 +} + c0014ff2: 60a6 ld ra,72(sp) + c0014ff4: 8522 mv a0,s0 + c0014ff6: 6406 ld s0,64(sp) + c0014ff8: 74e2 ld s1,56(sp) + c0014ffa: 7942 ld s2,48(sp) + c0014ffc: 79a2 ld s3,40(sp) + c0014ffe: 6161 addi sp,sp,80 + c0015000: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4484 (discriminator 3) JS_DupAtom(ctx, pr->atom); - c0014e32: 00492583 lw a1,4(s2) - c0014e36: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 (discriminator 3) + c0015002: 00492583 lw a1,4(s2) + c0015006: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 (discriminator 3) for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - c0014e38: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4476 (discriminator 3) + c0015008: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4484 (discriminator 3) JS_DupAtom(ctx, pr->atom); - c0014e3a: e90f20ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4475 (discriminator 3) + c001500a: daef20ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 (discriminator 3) for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - c0014e3e: 0921 addi s2,s2,8 - c0014e40: bff1 j c0014e1c + c001500e: 0921 addi s2,s2,8 + c0015010: bff1 j c0014fec -00000000c0014e42 : +00000000c0015012 : js_shape_prepare_update(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9072 -{ - c0014e42: 7139 addi sp,sp,-64 - c0014e44: e852 sd s4,16(sp) - c0014e46: fc06 sd ra,56(sp) - c0014e48: f822 sd s0,48(sp) - c0014e4a: f426 sd s1,40(sp) - c0014e4c: f04a sd s2,32(sp) - c0014e4e: ec4e sd s3,24(sp) - c0014e50: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9076 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9080 +{ + c0015012: 7139 addi sp,sp,-64 + c0015014: e852 sd s4,16(sp) + c0015016: fc06 sd ra,56(sp) + c0015018: f822 sd s0,48(sp) + c001501a: f426 sd s1,40(sp) + c001501c: f04a sd s2,32(sp) + c001501e: ec4e sd s3,24(sp) + c0015020: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9084 sh = p->shape; - c0014e52: 6d8c ld a1,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9077 + c0015022: 6d8c ld a1,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9085 if (sh->is_hashed) { - c0014e54: 0185c783 lbu a5,24(a1) - c0014e58: eb91 bnez a5,c0014e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9094 + c0015024: 0185c783 lbu a5,24(a1) + c0015028: eb91 bnez a5,c001503c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9102 return 0; - c0014e5a: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9095 + c001502a: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9103 } - c0014e5c: 70e2 ld ra,56(sp) - c0014e5e: 7442 ld s0,48(sp) - c0014e60: 74a2 ld s1,40(sp) - c0014e62: 7902 ld s2,32(sp) - c0014e64: 69e2 ld s3,24(sp) - c0014e66: 6a42 ld s4,16(sp) - c0014e68: 6121 addi sp,sp,64 - c0014e6a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9078 + c001502c: 70e2 ld ra,56(sp) + c001502e: 7442 ld s0,48(sp) + c0015030: 74a2 ld s1,40(sp) + c0015032: 7902 ld s2,32(sp) + c0015034: 69e2 ld s3,24(sp) + c0015036: 6a42 ld s4,16(sp) + c0015038: 6121 addi sp,sp,64 + c001503a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9086 if (sh->header.ref_count != 1) { - c0014e6c: 4198 lw a4,0(a1) - c0014e6e: 4785 li a5,1 - c0014e70: 89aa mv s3,a0 - c0014e72: 04f70663 beq a4,a5,c0014ebe - c0014e76: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9074 + c001503c: 4198 lw a4,0(a1) + c001503e: 4785 li a5,1 + c0015040: 89aa mv s3,a0 + c0015042: 04f70663 beq a4,a5,c001508e + c0015046: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9082 uint32_t idx = 0; /* prevent warning */ - c0014e78: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9079 + c0015048: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9087 if (pprs) - c0014e7a: ca01 beqz a2,c0014e8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9080 + c001504a: ca01 beqz a2,c001505a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9088 idx = *pprs - get_shape_prop(sh); - c0014e7c: 621c ld a5,0(a2) + c001504c: 621c ld a5,0(a2) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0014e7e: 04058413 addi s0,a1,64 + c001504e: 04058413 addi s0,a1,64 js_shape_prepare_update(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9088 idx = *pprs - get_shape_prop(sh); - c0014e82: 40878433 sub s0,a5,s0 - c0014e86: 840d srai s0,s0,0x3 - c0014e88: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9082 + c0015052: 40878433 sub s0,a5,s0 + c0015056: 840d srai s0,s0,0x3 + c0015058: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9090 sh = js_clone_shape(ctx, sh); - c0014e8a: 854e mv a0,s3 - c0014e8c: f13ff0ef jal ra,c0014d9e - c0014e90: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9084 + c001505a: 854e mv a0,s3 + c001505c: f13ff0ef jal ra,c0014f6e + c0015060: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9092 return -1; - c0014e92: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9083 + c0015062: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9091 if (!sh) - c0014e94: d4e1 beqz s1,c0014e5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9085 + c0015064: d4e1 beqz s1,c001502c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9093 js_free_shape(ctx->rt, p->shape); - c0014e96: 018a3583 ld a1,24(s4) - c0014e9a: 0189b503 ld a0,24(s3) - c0014e9e: 879f30ef jal ra,c0008716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9086 + c0015066: 018a3583 ld a1,24(s4) + c001506a: 0189b503 ld a0,24(s3) + c001506e: f96f30ef jal ra,c0008804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9094 p->shape = sh; - c0014ea2: 009a3c23 sd s1,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9087 + c0015072: 009a3c23 sd s1,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9095 if (pprs) - c0014ea6: fa090ae3 beqz s2,c0014e5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9088 + c0015076: fa090ae3 beqz s2,c001502a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9096 *pprs = get_shape_prop(sh) + idx; - c0014eaa: 02041793 slli a5,s0,0x20 + c001507a: 02041793 slli a5,s0,0x20 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0014eae: 04048493 addi s1,s1,64 + c001507e: 04048493 addi s1,s1,64 js_shape_prepare_update(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9096 *pprs = get_shape_prop(sh) + idx; - c0014eb2: 01d7d413 srli s0,a5,0x1d - c0014eb6: 9426 add s0,s0,s1 - c0014eb8: 00893023 sd s0,0(s2) - c0014ebc: bf79 j c0014e5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9090 + c0015082: 01d7d413 srli s0,a5,0x1d + c0015086: 9426 add s0,s0,s1 + c0015088: 00893023 sd s0,0(s2) + c001508c: bf79 j c001502a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9098 js_shape_hash_unlink(ctx->rt, sh); - c0014ebe: 6d08 ld a0,24(a0) - c0014ec0: e42e sd a1,8(sp) - c0014ec2: b76ef0ef jal ra,c0004238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9091 + c001508e: 6d08 ld a0,24(a0) + c0015090: e42e sd a1,8(sp) + c0015092: 9a6ef0ef jal ra,c0004238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9099 sh->is_hashed = FALSE; - c0014ec6: 65a2 ld a1,8(sp) - c0014ec8: 00058c23 sb zero,24(a1) - c0014ecc: b779 j c0014e5a + c0015096: 65a2 ld a1,8(sp) + c0015098: 00058c23 sb zero,24(a1) + c001509c: b779 j c001502a -00000000c0014ece : +00000000c001509e : JS_AutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7176 { - c0014ece: 715d addi sp,sp,-80 - c0014ed0: f44e sd s3,40(sp) - c0014ed2: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7173 + c001509e: 715d addi sp,sp,-80 + c00150a0: f44e sd s3,40(sp) + c00150a2: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7181 if (js_shape_prepare_update(ctx, p, &prs)) - c0014ed4: 0030 addi a2,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7168 -{ - c0014ed6: e0a2 sd s0,64(sp) - c0014ed8: f84a sd s2,48(sp) - c0014eda: e486 sd ra,72(sp) - c0014edc: fc26 sd s1,56(sp) - c0014ede: 892e mv s2,a1 - c0014ee0: 8436 mv s0,a3 - c0014ee2: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7173 + c00150a4: 0030 addi a2,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7176 +{ + c00150a6: e0a2 sd s0,64(sp) + c00150a8: f84a sd s2,48(sp) + c00150aa: e486 sd ra,72(sp) + c00150ac: fc26 sd s1,56(sp) + c00150ae: 892e mv s2,a1 + c00150b0: 8436 mv s0,a3 + c00150b2: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7181 if (js_shape_prepare_update(ctx, p, &prs)) - c0014ee4: f5fff0ef jal ra,c0014e42 - c0014ee8: c911 beqz a0,c0014efc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7174 + c00150b4: f5fff0ef jal ra,c0015012 + c00150b8: c911 beqz a0,c00150cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7182 return -1; - c0014eea: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7187 -} - c0014eec: 60a6 ld ra,72(sp) - c0014eee: 6406 ld s0,64(sp) - c0014ef0: 7942 ld s2,48(sp) - c0014ef2: 79a2 ld s3,40(sp) - c0014ef4: 8526 mv a0,s1 - c0014ef6: 74e2 ld s1,56(sp) - c0014ef8: 6161 addi sp,sp,80 - c0014efa: 8082 ret - c0014efc: 84aa mv s1,a0 + c00150ba: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7195 +} + c00150bc: 60a6 ld ra,72(sp) + c00150be: 6406 ld s0,64(sp) + c00150c0: 7942 ld s2,48(sp) + c00150c2: 79a2 ld s3,40(sp) + c00150c4: 8526 mv a0,s1 + c00150c6: 74e2 ld s1,56(sp) + c00150c8: 6161 addi sp,sp,80 + c00150ca: 8082 ret + c00150cc: 84aa mv s1,a0 js_autoinit_get_realm(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5241 return (JSContext *)(pr->u.init.realm_and_id & ~3); - c0014efe: 6008 ld a0,0(s0) + c00150ce: 6008 ld a0,0(s0) JS_AutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7187 val = func(realm, p, prop, pr->u.init.opaque); - c0014f00: 6414 ld a3,8(s0) - c0014f02: 864e mv a2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7177 + c00150d0: 6414 ld a3,8(s0) + c00150d2: 864e mv a2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7185 func = js_autoinit_func_table[js_autoinit_get_id(pr)]; - c0014f04: 00357793 andi a5,a0,3 - c0014f08: 00379713 slli a4,a5,0x3 - c0014f0c: 0004e797 auipc a5,0x4e - c0014f10: 2ec78793 addi a5,a5,748 # c00631f8 - c0014f14: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7179 + c00150d4: 00357793 andi a5,a0,3 + c00150d8: 00379713 slli a4,a5,0x3 + c00150dc: 0004e797 auipc a5,0x4e + c00150e0: 37c78793 addi a5,a5,892 # c0063458 + c00150e4: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7187 val = func(realm, p, prop, pr->u.init.opaque); - c0014f16: 639c ld a5,0(a5) - c0014f18: 85ca mv a1,s2 - c0014f1a: 9971 andi a0,a0,-4 - c0014f1c: 9782 jalr a5 - c0014f1e: e82a sd a0,16(sp) + c00150e6: 639c ld a5,0(a5) + c00150e8: 85ca mv a1,s2 + c00150ea: 9971 andi a0,a0,-4 + c00150ec: 9782 jalr a5 + c00150ee: e82a sd a0,16(sp) js_autoinit_get_realm(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5241 return (JSContext *)(pr->u.init.realm_and_id & ~3); - c0014f20: 6008 ld a0,0(s0) + c00150f0: 6008 ld a0,0(s0) JS_AutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7187 val = func(realm, p, prop, pr->u.init.opaque); - c0014f22: ec2e sd a1,24(sp) + c00150f2: ec2e sd a1,24(sp) js_autoinit_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5251 JS_FreeContext(js_autoinit_get_realm(pr)); - c0014f24: 9971 andi a0,a0,-4 - c0014f26: 930f30ef jal ra,c0008056 + c00150f4: 9971 andi a0,a0,-4 + c00150f6: 84ef30ef jal ra,c0008144 JS_AutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7181 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7189 prs->flags &= ~JS_PROP_TMASK; - c0014f2a: 66a2 ld a3,8(sp) - c0014f2c: 3c000737 lui a4,0x3c000 - c0014f30: 429c lw a5,0(a3) - c0014f32: 8f7d and a4,a4,a5 - c0014f34: 179a slli a5,a5,0x26 - c0014f36: 9399 srli a5,a5,0x26 - c0014f38: 8fd9 or a5,a5,a4 - c0014f3a: c29c sw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7182 + c00150fa: 66a2 ld a3,8(sp) + c00150fc: 3c000737 lui a4,0x3c000 + c0015100: 429c lw a5,0(a3) + c0015102: 8f7d and a4,a4,a5 + c0015104: 179a slli a5,a5,0x26 + c0015106: 9399 srli a5,a5,0x26 + c0015108: 8fd9 or a5,a5,a4 + c001510a: c29c sw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7190 pr->u.value = JS_UNDEFINED; - c0014f3c: 478d li a5,3 - c0014f3e: e41c sd a5,8(s0) + c001510c: 478d li a5,3 + c001510e: e41c sd a5,8(s0) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0014f40: 67e2 ld a5,24(sp) + c0015110: 67e2 ld a5,24(sp) JS_AutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7182 - c0014f42: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7190 + c0015112: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7191 if (JS_IsException(val)) - c0014f46: 4719 li a4,6 - c0014f48: 0007869b sext.w a3,a5 - c0014f4c: f8e68fe3 beq a3,a4,c0014eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7185 + c0015116: 4719 li a4,6 + c0015118: 0007869b sext.w a3,a5 + c001511c: f8e68fe3 beq a3,a4,c00150ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7193 pr->u.value = val; - c0014f50: 6742 ld a4,16(sp) - c0014f52: e41c sd a5,8(s0) - c0014f54: e018 sd a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7186 + c0015120: 6742 ld a4,16(sp) + c0015122: e41c sd a5,8(s0) + c0015124: e018 sd a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7194 return 0; - c0014f56: bf59 j c0014eec + c0015126: bf59 j c00150bc -00000000c0014f58 : +00000000c0015128 : JS_SetPrototypeInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6916 -{ - c0014f58: 7131 addi sp,sp,-192 - c0014f5a: f922 sd s0,176(sp) - c0014f5c: f526 sd s1,168(sp) - c0014f5e: ed4e sd s3,152(sp) - c0014f60: e952 sd s4,144(sp) - c0014f62: 843e mv s0,a5 - c0014f64: fd06 sd ra,184(sp) - c0014f66: f14a sd s2,160(sp) - c0014f68: e556 sd s5,136(sp) - c0014f6a: e82e sd a1,16(sp) - c0014f6c: ec32 sd a2,24(sp) - c0014f6e: e036 sd a3,0(sp) - c0014f70: e43a sd a4,8(sp) - c0014f72: 84aa mv s1,a0 - c0014f74: 87b2 mv a5,a2 - c0014f76: 89b6 mv s3,a3 - c0014f78: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6924 +{ + c0015128: 7131 addi sp,sp,-192 + c001512a: f922 sd s0,176(sp) + c001512c: f526 sd s1,168(sp) + c001512e: ed4e sd s3,152(sp) + c0015130: e952 sd s4,144(sp) + c0015132: 843e mv s0,a5 + c0015134: fd06 sd ra,184(sp) + c0015136: f14a sd s2,160(sp) + c0015138: e556 sd s5,136(sp) + c001513a: e82e sd a1,16(sp) + c001513c: ec32 sd a2,24(sp) + c001513e: e036 sd a3,0(sp) + c0015140: e43a sd a4,8(sp) + c0015142: 84aa mv s1,a0 + c0015144: 87b2 mv a5,a2 + c0015146: 89b6 mv s3,a3 + c0015148: 8a3a mv s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6928 if (throw_flag) { - c0014f7a: c819 beqz s0,c0014f90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6921 + c001514a: c819 beqz s0,c0015160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6929 if (JS_VALUE_GET_TAG(obj) == JS_TAG_NULL || - c0014f7c: ffe6071b addiw a4,a2,-2 - c0014f80: 4685 li a3,1 - c0014f82: 00e6ec63 bltu a3,a4,c0014f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6932 + c001514c: ffe6071b addiw a4,a2,-2 + c0015150: 4685 li a3,1 + c0015152: 00e6ec63 bltu a3,a4,c001516a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6940 JS_ThrowTypeErrorNotAnObject(ctx); - c0014f86: 8526 mv a0,s1 - c0014f88: 9f1fe0ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6951 + c0015156: 8526 mv a0,s1 + c0015158: 90ffe0ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6959 return -1; - c0014f8c: 547d li s0,-1 - c0014f8e: a88d j c0015000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6925 + c001515c: 547d li s0,-1 + c001515e: a88d j c00151d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6933 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0014f90: 0006071b sext.w a4,a2 - c0014f94: 56fd li a3,-1 - c0014f96: fed718e3 bne a4,a3,c0014f86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6929 + c0015160: 0006071b sext.w a4,a2 + c0015164: 56fd li a3,-1 + c0015166: fed718e3 bne a4,a3,c0015156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6937 if (JS_VALUE_GET_TAG(proto_val) != JS_TAG_OBJECT) { - c0014f9a: 000a071b sext.w a4,s4 - c0014f9e: 56fd li a3,-1 - c0014fa0: 06d70a63 beq a4,a3,c0015014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6930 + c001516a: 000a071b sext.w a4,s4 + c001516e: 56fd li a3,-1 + c0015170: 06d70a63 beq a4,a3,c00151e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6938 if (JS_VALUE_GET_TAG(proto_val) != JS_TAG_NULL) { - c0014fa4: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6935 + c0015174: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6943 proto = NULL; - c0014fa6: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6930 + c0015176: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6938 if (JS_VALUE_GET_TAG(proto_val) != JS_TAG_NULL) { - c0014fa8: fcd71fe3 bne a4,a3,c0014f86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6940 + c0015178: fcd71fe3 bne a4,a3,c0015156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6948 if (throw_flag && JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0014fac: c411 beqz s0,c0014fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6940 (discriminator 1) - c0014fae: 0007871b sext.w a4,a5 - c0014fb2: 56fd li a3,-1 - c0014fb4: 04d71663 bne a4,a3,c0015000 - c0014fb8: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6943 + c001517c: c411 beqz s0,c0015188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6948 (discriminator 1) + c001517e: 0007871b sext.w a4,a5 + c0015182: 56fd li a3,-1 + c0015184: 04d71663 bne a4,a3,c00151d0 + c0015188: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6951 if (unlikely(p->class_id == JS_CLASS_PROXY)) - c0014fba: 02c00713 li a4,44 - c0014fbe: 00695683 lhu a3,6(s2) - c0014fc2: 0ee69763 bne a3,a4,c00150b0 + c001518a: 02c00713 li a4,44 + c001518e: 00695683 lhu a3,6(s2) + c0015192: 0ee69763 bne a3,a4,c0015280 js_proxy_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45912 s = get_proxy_method(ctx, &method, obj, JS_ATOM_setPrototypeOf); - c0014fc6: 864a mv a2,s2 - c0014fc8: 06100713 li a4,97 - c0014fcc: 86be mv a3,a5 - c0014fce: 180c addi a1,sp,48 - c0014fd0: 8526 mv a0,s1 - c0014fd2: f04a sd s2,32(sp) - c0014fd4: f43e sd a5,40(sp) - c0014fd6: b94ff0ef jal ra,c001436a - c0014fda: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45905 + c0015196: 864a mv a2,s2 + c0015198: 06100713 li a4,97 + c001519c: 86be mv a3,a5 + c001519e: 180c addi a1,sp,48 + c00151a0: 8526 mv a0,s1 + c00151a2: f04a sd s2,32(sp) + c00151a4: f43e sd a5,40(sp) + c00151a6: ab2ff0ef jal ra,c0014458 + c00151aa: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45913 if (!s) - c0014fdc: d945 beqz a0,c0014f8c + c00151ac: d945 beqz a0,c001515c JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0014fde: 7662 ld a2,56(sp) + c00151ae: 7662 ld a2,56(sp) js_proxy_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45915 if (JS_IsUndefined(method)) - c0014fe0: 478d li a5,3 - c0014fe2: 0006071b sext.w a4,a2 - c0014fe6: 02f71963 bne a4,a5,c0015018 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45908 + c00151b0: 478d li a5,3 + c00151b2: 0006071b sext.w a4,a2 + c00151b6: 02f71963 bne a4,a5,c00151e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45916 return JS_SetPrototypeInternal(ctx, s->target, proto_val, throw_flag); - c0014fea: f0ce sd s3,96(sp) - c0014fec: f4d2 sd s4,104(sp) - c0014fee: 610c ld a1,0(a0) - c0014ff0: 6510 ld a2,8(a0) - c0014ff2: 87a2 mv a5,s0 - c0014ff4: 86ce mv a3,s3 - c0014ff6: 8752 mv a4,s4 - c0014ff8: 8526 mv a0,s1 - c0014ffa: f5fff0ef jal ra,c0014f58 - c0014ffe: 842a mv s0,a0 + c00151ba: f0ce sd s3,96(sp) + c00151bc: f4d2 sd s4,104(sp) + c00151be: 610c ld a1,0(a0) + c00151c0: 6510 ld a2,8(a0) + c00151c2: 87a2 mv a5,s0 + c00151c4: 86ce mv a3,s3 + c00151c6: 8752 mv a4,s4 + c00151c8: 8526 mv a0,s1 + c00151ca: f5fff0ef jal ra,c0015128 + c00151ce: 842a mv s0,a0 JS_SetPrototypeInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6981 -} - c0015000: 70ea ld ra,184(sp) - c0015002: 8522 mv a0,s0 - c0015004: 744a ld s0,176(sp) - c0015006: 74aa ld s1,168(sp) - c0015008: 790a ld s2,160(sp) - c001500a: 69ea ld s3,152(sp) - c001500c: 6a4a ld s4,144(sp) - c001500e: 6aaa ld s5,136(sp) - c0015010: 6129 addi sp,sp,192 - c0015012: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6937 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6989 +} + c00151d0: 70ea ld ra,184(sp) + c00151d2: 8522 mv a0,s0 + c00151d4: 744a ld s0,176(sp) + c00151d6: 74aa ld s1,168(sp) + c00151d8: 790a ld s2,160(sp) + c00151da: 69ea ld s3,152(sp) + c00151dc: 6a4a ld s4,144(sp) + c00151de: 6aaa ld s5,136(sp) + c00151e0: 6129 addi sp,sp,192 + c00151e2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6945 proto = JS_VALUE_GET_OBJ(proto_val); - c0015014: 8ace mv s5,s3 - c0015016: bf59 j c0014fac + c00151e4: 8ace mv s5,s3 + c00151e6: bf59 j c001517c js_proxy_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45909 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45917 args[0] = s->target; - c0015018: 611c ld a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45911 + c00151e8: 611c ld a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45919 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c001501a: 75c2 ld a1,48(sp) - c001501c: 06010813 addi a6,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45909 + c00151ea: 75c2 ld a1,48(sp) + c00151ec: 06010813 addi a6,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45917 args[0] = s->target; - c0015020: f0be sd a5,96(sp) - c0015022: 651c ld a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45910 + c00151f0: f0be sd a5,96(sp) + c00151f2: 651c ld a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45918 args[1] = proto_val; - c0015024: fcd2 sd s4,120(sp) - c0015026: f8ce sd s3,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45909 + c00151f4: fcd2 sd s4,120(sp) + c00151f6: f8ce sd s3,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45917 args[0] = s->target; - c0015028: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45911 + c00151f8: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45919 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c001502a: 6914 ld a3,16(a0) - c001502c: 6d18 ld a4,24(a0) - c001502e: 4789 li a5,2 - c0015030: 8526 mv a0,s1 - c0015032: fdafc0ef jal ra,c001180c - c0015036: e0aa sd a0,64(sp) - c0015038: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45912 + c00151fa: 6914 ld a3,16(a0) + c00151fc: 6d18 ld a4,24(a0) + c00151fe: 4789 li a5,2 + c0015200: 8526 mv a0,s1 + c0015202: ef8fc0ef jal ra,c00118fa + c0015206: e0aa sd a0,64(sp) + c0015208: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45920 if (JS_IsException(ret)) - c001503a: 0005879b sext.w a5,a1 - c001503e: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45911 + c001520a: 0005879b sext.w a5,a1 + c001520e: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45919 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c0015040: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45912 + c0015210: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45920 if (JS_IsException(ret)) - c0015042: f54785e3 beq a5,s4,c0014f8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45914 + c0015212: f54785e3 beq a5,s4,c001515c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45922 res = JS_ToBoolFree(ctx, ret); - c0015046: 85aa mv a1,a0 - c0015048: 8526 mv a0,s1 - c001504a: e1bf20ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45915 + c0015216: 85aa mv a1,a0 + c0015218: 8526 mv a0,s1 + c001521a: d39f20ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45923 if (!res) { - c001504e: e911 bnez a0,c0015062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45917 + c001521e: e911 bnez a0,c0015232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45925 JS_ThrowTypeError(ctx, "proxy: bad prototype"); - c0015050: 00049597 auipc a1,0x49 - c0015054: e0058593 addi a1,a1,-512 # c005de50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45916 + c0015220: 00049597 auipc a1,0x49 + c0015224: e9058593 addi a1,a1,-368 # c005e0b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45924 if (throw_flag) { - c0015058: d445 beqz s0,c0015000 + c0015228: d445 beqz s0,c00151d0 JS_SetPrototypeInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6950 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6958 JS_ThrowTypeError(ctx, "object is not extensible"); - c001505a: 8526 mv a0,s1 - c001505c: b9afe0ef jal ra,c00133f6 - c0015060: b735 j c0014f8c + c001522a: 8526 mv a0,s1 + c001522c: ab8fe0ef jal ra,c00134e4 + c0015230: b735 j c001515c js_proxy_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45931 res2 = JS_IsExtensible(ctx, s->target); - c0015062: 00093583 ld a1,0(s2) - c0015066: 00893603 ld a2,8(s2) - c001506a: 8526 mv a0,s1 - c001506c: b72ff0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45924 + c0015232: 00093583 ld a1,0(s2) + c0015236: 00893603 ld a2,8(s2) + c001523a: 8526 mv a0,s1 + c001523c: a90ff0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45932 if (res2 < 0) - c0015070: f0054ee3 bltz a0,c0014f8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45937 + c0015240: f0054ee3 bltz a0,c001515c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45945 return TRUE; - c0015074: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45926 + c0015244: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45934 if (!res2) { - c0015076: f549 bnez a0,c0015000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45927 + c0015246: f549 bnez a0,c00151d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45935 proto1 = JS_GetPrototype(ctx, s->target); - c0015078: 00893603 ld a2,8(s2) - c001507c: 00093583 ld a1,0(s2) - c0015080: 8526 mv a0,s1 - c0015082: c60ff0ef jal ra,c00144e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45928 + c0015248: 00893603 ld a2,8(s2) + c001524c: 00093583 ld a1,0(s2) + c0015250: 8526 mv a0,s1 + c0015252: b7eff0ef jal ra,c00145d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45936 if (JS_IsException(proto1)) - c0015086: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45927 + c0015256: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45935 proto1 = JS_GetPrototype(ctx, s->target); - c001508a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45928 + c001525a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45936 if (JS_IsException(proto1)) - c001508c: f14780e3 beq a5,s4,c0014f8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45930 + c001525c: f14780e3 beq a5,s4,c001515c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45938 if (JS_VALUE_GET_OBJ(proto_val) != JS_VALUE_GET_OBJ(proto1)) { - c0015090: 00a98b63 beq s3,a0,c00150a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45931 + c0015260: 00a98b63 beq s3,a0,c0015276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45939 JS_FreeValue(ctx, proto1); - c0015094: 85aa mv a1,a0 - c0015096: 8526 mv a0,s1 - c0015098: aa1f20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45932 + c0015264: 85aa mv a1,a0 + c0015266: 8526 mv a0,s1 + c0015268: 9bff20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45940 JS_ThrowTypeError(ctx, "proxy: inconsistent prototype"); - c001509c: 00049597 auipc a1,0x49 - c00150a0: c6458593 addi a1,a1,-924 # c005dd00 - c00150a4: bf5d j c001505a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45935 + c001526c: 00049597 auipc a1,0x49 + c0015270: cc458593 addi a1,a1,-828 # c005df30 + c0015274: bf5d j c001522a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45943 JS_FreeValue(ctx, proto1); - c00150a6: 85ce mv a1,s3 - c00150a8: 8526 mv a0,s1 - c00150aa: a8ff20ef jal ra,c0007b38 - c00150ae: bf89 j c0015000 + c0015276: 85ce mv a1,s3 + c0015278: 8526 mv a0,s1 + c001527a: 9adf20ef jal ra,c0007c26 + c001527e: bf89 j c00151d0 JS_SetPrototypeInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6946 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6954 if (sh->proto == proto) - c00150b0: 01893783 ld a5,24(s2) - c00150b4: 7f9c ld a5,56(a5) - c00150b6: 07578363 beq a5,s5,c001511c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6948 + c0015280: 01893783 ld a5,24(s2) + c0015284: 7f9c ld a5,56(a5) + c0015286: 07578363 beq a5,s5,c00152ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6956 if (!p->extensible) { - c00150ba: 00594783 lbu a5,5(s2) - c00150be: 8b85 andi a5,a5,1 - c00150c0: e799 bnez a5,c00150ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6949 + c001528a: 00594783 lbu a5,5(s2) + c001528e: 8b85 andi a5,a5,1 + c0015290: e799 bnez a5,c001529e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6957 if (throw_flag) { - c00150c2: dc1d beqz s0,c0015000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6950 + c0015292: dc1d beqz s0,c00151d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6958 JS_ThrowTypeError(ctx, "object is not extensible"); - c00150c4: 00048597 auipc a1,0x48 - c00150c8: 7bc58593 addi a1,a1,1980 # c005d880 - c00150cc: b779 j c001505a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6956 + c0015294: 00049597 auipc a1,0x49 + c0015298: 81c58593 addi a1,a1,-2020 # c005dab0 + c001529c: b779 j c001522a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6964 if (proto) { - c00150ce: 020a8263 beqz s5,c00150f2 - c00150d2: 87d6 mv a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6960 + c001529e: 020a8263 beqz s5,c00152c2 + c00152a2: 87d6 mv a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6968 if (p1 == p) { - c00150d4: 00f91863 bne s2,a5,c00150e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6962 + c00152a4: 00f91863 bne s2,a5,c00152b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6970 JS_ThrowTypeError(ctx, "circular prototype chain"); - c00150d8: 00049597 auipc a1,0x49 - c00150dc: d9058593 addi a1,a1,-624 # c005de68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6961 - if (throw_flag) { - c00150e0: d005 beqz s0,c0015000 - c00150e2: bfa5 j c001505a + c00152a8: 00049597 auipc a1,0x49 + c00152ac: e2058593 addi a1,a1,-480 # c005e0c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6969 + if (throw_flag) { + c00152b0: d005 beqz s0,c00151d0 + c00152b2: bfa5 j c001522a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6977 p1 = p1->shape->proto; - c00150e4: 6f9c ld a5,24(a5) - c00150e6: 7f9c ld a5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6970 + c00152b4: 6f9c ld a5,24(a5) + c00152b6: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6978 } while (p1 != NULL); - c00150e8: f7f5 bnez a5,c00150d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6971 + c00152b8: f7f5 bnez a5,c00152a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6979 JS_DupValue(ctx, proto_val); - c00150ea: 6502 ld a0,0(sp) - c00150ec: 65a2 ld a1,8(sp) - c00150ee: d80f10ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6974 + c00152ba: 6502 ld a0,0(sp) + c00152bc: 65a2 ld a1,8(sp) + c00152be: c9ef10ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6982 if (js_shape_prepare_update(ctx, p, NULL)) - c00150f2: 4601 li a2,0 - c00150f4: 85ca mv a1,s2 - c00150f6: 8526 mv a0,s1 - c00150f8: d4bff0ef jal ra,c0014e42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6975 + c00152c2: 4601 li a2,0 + c00152c4: 85ca mv a1,s2 + c00152c6: 8526 mv a0,s1 + c00152c8: d4bff0ef jal ra,c0015012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6983 return -1; - c00150fc: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6974 + c00152cc: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6982 if (js_shape_prepare_update(ctx, p, NULL)) - c00150fe: f00511e3 bnez a0,c0015000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6976 + c00152ce: f00511e3 bnez a0,c00151d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6984 sh = p->shape; - c0015102: 01893403 ld s0,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6977 + c00152d2: 01893403 ld s0,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6985 if (sh->proto) - c0015106: 7c0c ld a1,56(s0) - c0015108: c981 beqz a1,c0015118 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6978 + c00152d6: 7c0c ld a1,56(s0) + c00152d8: c981 beqz a1,c00152e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6986 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, sh->proto)); - c001510a: 57fd li a5,-1 - c001510c: 567d li a2,-1 - c001510e: 8526 mv a0,s1 - c0015110: f0ae sd a1,96(sp) - c0015112: f4be sd a5,104(sp) - c0015114: a25f20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6979 + c00152da: 57fd li a5,-1 + c00152dc: 567d li a2,-1 + c00152de: 8526 mv a0,s1 + c00152e0: f0ae sd a1,96(sp) + c00152e2: f4be sd a5,104(sp) + c00152e4: 943f20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6987 sh->proto = proto; - c0015118: 03543c23 sd s5,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6941 + c00152e8: 03543c23 sd s5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6949 return TRUE; - c001511c: 4405 li s0,1 - c001511e: b5cd j c0015000 + c00152ec: 4405 li s0,1 + c00152ee: b5cd j c00151d0 -00000000c0015120 : +00000000c00152f0 : JS_SetPrototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6985 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6993 { - c0015120: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6986 + c00152f0: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6994 return JS_SetPrototypeInternal(ctx, obj, proto_val, TRUE); - c0015122: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6987 + c00152f2: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6995 } - c0015124: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6986 + c00152f4: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6994 return JS_SetPrototypeInternal(ctx, obj, proto_val, TRUE); - c0015126: e33ff06f j c0014f58 + c00152f6: e33ff06f j c0015128 -00000000c001512a : +00000000c00152fa : js_reflect_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45769 { - c001512a: 7139 addi sp,sp,-64 - c001512c: fc06 sd ra,56(sp) - c001512e: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45763 + c00152fa: 7139 addi sp,sp,-64 + c00152fc: fc06 sd ra,56(sp) + c00152fe: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45771 ret = JS_SetPrototypeInternal(ctx, argv[0], argv[1], FALSE); - c0015130: 6b14 ld a3,16(a4) - c0015132: 620c ld a1,0(a2) - c0015134: 6f18 ld a4,24(a4) - c0015136: 6610 ld a2,8(a2) - c0015138: 4781 li a5,0 - c001513a: e1fff0ef jal ra,c0014f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45764 + c0015300: 6b14 ld a3,16(a4) + c0015302: 620c ld a1,0(a2) + c0015304: 6f18 ld a4,24(a4) + c0015306: 6610 ld a2,8(a2) + c0015308: 4781 li a5,0 + c001530a: e1fff0ef jal ra,c0015128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45772 if (ret < 0) - c001513e: 00055a63 bgez a0,c0015152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45765 + c001530e: 00055a63 bgez a0,c0015322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45773 return JS_EXCEPTION; - c0015142: e802 sd zero,16(sp) - c0015144: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45768 -} - c0015146: 70e2 ld ra,56(sp) - c0015148: ec3e sd a5,24(sp) - c001514a: 6542 ld a0,16(sp) - c001514c: 65e2 ld a1,24(sp) - c001514e: 6121 addi sp,sp,64 - c0015150: 8082 ret + c0015312: e802 sd zero,16(sp) + c0015314: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45776 +} + c0015316: 70e2 ld ra,56(sp) + c0015318: ec3e sd a5,24(sp) + c001531a: 6542 ld a0,16(sp) + c001531c: 65e2 ld a1,24(sp) + c001531e: 6121 addi sp,sp,64 + c0015320: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0015152: 00a03533 snez a0,a0 - c0015156: d202 sw zero,36(sp) - c0015158: d02a sw a0,32(sp) - c001515a: 7782 ld a5,32(sp) - c001515c: e83e sd a5,16(sp) - c001515e: 4785 li a5,1 - c0015160: b7dd j c0015146 - -00000000c0015162 : + c0015322: 00a03533 snez a0,a0 + c0015326: d202 sw zero,36(sp) + c0015328: d02a sw a0,32(sp) + c001532a: 7782 ld a5,32(sp) + c001532c: e83e sd a5,16(sp) + c001532e: 4785 li a5,1 + c0015330: b7dd j c0015316 + +00000000c0015332 : js_object_set___proto__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38121 -{ - c0015162: 7139 addi sp,sp,-64 - c0015164: ec32 sd a2,24(sp) - c0015166: fc06 sd ra,56(sp) - c0015168: e82e sd a1,16(sp) - c001516a: e036 sd a3,0(sp) - c001516c: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38122 - if (JS_IsUndefined(this_val) || JS_IsNull(this_val)) - c001516e: 3679 addiw a2,a2,-2 - c0015170: 4785 li a5,1 - c0015172: 00c7e663 bltu a5,a2,c001517e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38129 +{ + c0015332: 7139 addi sp,sp,-64 + c0015334: ec32 sd a2,24(sp) + c0015336: fc06 sd ra,56(sp) + c0015338: e82e sd a1,16(sp) + c001533a: e036 sd a3,0(sp) + c001533c: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38130 -} - c0015176: 70e2 ld ra,56(sp) - c0015178: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38123 + if (JS_IsUndefined(this_val) || JS_IsNull(this_val)) + c001533e: 3679 addiw a2,a2,-2 + c0015340: 4785 li a5,1 + c0015342: 00c7e663 bltu a5,a2,c001534e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38138 +} + c0015346: 70e2 ld ra,56(sp) + c0015348: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38131 return JS_ThrowTypeErrorNotAnObject(ctx); - c001517a: ffefe06f j c0013978 + c001534a: f1cfe06f j c0013a66 JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c001517e: 2701 sext.w a4,a4 + c001534e: 2701 sext.w a4,a4 js_object_set___proto__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38132 if (!JS_IsObject(proto) && !JS_IsNull(proto)) - c0015180: 57fd li a5,-1 - c0015182: 882a mv a6,a0 - c0015184: 00f70d63 beq a4,a5,c001519e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38124 (discriminator 1) - c0015188: 4789 li a5,2 - c001518a: 00f70a63 beq a4,a5,c001519e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38125 + c0015350: 57fd li a5,-1 + c0015352: 882a mv a6,a0 + c0015354: 00f70d63 beq a4,a5,c001536e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38132 (discriminator 1) + c0015358: 4789 li a5,2 + c001535a: 00f70a63 beq a4,a5,c001536e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38133 return JS_UNDEFINED; - c001518e: f002 sd zero,32(sp) - c0015190: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38130 + c001535e: f002 sd zero,32(sp) + c0015360: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38138 } - c0015192: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38127 + c0015362: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38135 return JS_EXCEPTION; - c0015194: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38130 + c0015364: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38138 } - c0015196: 7502 ld a0,32(sp) - c0015198: 75a2 ld a1,40(sp) - c001519a: 6121 addi sp,sp,64 - c001519c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38126 + c0015366: 7502 ld a0,32(sp) + c0015368: 75a2 ld a1,40(sp) + c001536a: 6121 addi sp,sp,64 + c001536c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38134 if (JS_SetPrototypeInternal(ctx, this_val, proto, TRUE) < 0) - c001519e: 6682 ld a3,0(sp) - c00151a0: 6722 ld a4,8(sp) - c00151a2: 65c2 ld a1,16(sp) - c00151a4: 6662 ld a2,24(sp) - c00151a6: 4785 li a5,1 - c00151a8: 8542 mv a0,a6 - c00151aa: dafff0ef jal ra,c0014f58 - c00151ae: fe0550e3 bgez a0,c001518e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38127 + c001536e: 6682 ld a3,0(sp) + c0015370: 6722 ld a4,8(sp) + c0015372: 65c2 ld a1,16(sp) + c0015374: 6662 ld a2,24(sp) + c0015376: 4785 li a5,1 + c0015378: 8542 mv a0,a6 + c001537a: dafff0ef jal ra,c0015128 + c001537e: fe0550e3 bgez a0,c001535e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38135 return JS_EXCEPTION; - c00151b2: f002 sd zero,32(sp) - c00151b4: 4799 li a5,6 - c00151b6: bff1 j c0015192 + c0015382: f002 sd zero,32(sp) + c0015384: 4799 li a5,6 + c0015386: bff1 j c0015362 -00000000c00151b8 : +00000000c0015388 : js_object_setPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37307 { - c00151b8: 7139 addi sp,sp,-64 - c00151ba: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37301 + c0015388: 7139 addi sp,sp,-64 + c001538a: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37309 obj = argv[0]; - c00151bc: 630c ld a1,0(a4) - c00151be: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37302 + c001538c: 630c ld a1,0(a4) + c001538e: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37310 if (JS_SetPrototypeInternal(ctx, obj, argv[1], TRUE) < 0) - c00151c0: 6b14 ld a3,16(a4) - c00151c2: 6f18 ld a4,24(a4) - c00151c4: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37301 + c0015390: 6b14 ld a3,16(a4) + c0015392: 6f18 ld a4,24(a4) + c0015394: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37309 obj = argv[0]; - c00151c6: e82e sd a1,16(sp) - c00151c8: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37302 + c0015396: e82e sd a1,16(sp) + c0015398: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37310 if (JS_SetPrototypeInternal(ctx, obj, argv[1], TRUE) < 0) - c00151ca: d8fff0ef jal ra,c0014f58 - c00151ce: 00054863 bltz a0,c00151de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37304 + c001539a: d8fff0ef jal ra,c0015128 + c001539e: 00054863 bltz a0,c00153ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37312 return JS_DupValue(ctx, obj); - c00151d2: 6542 ld a0,16(sp) - c00151d4: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37305 + c00153a2: 6542 ld a0,16(sp) + c00153a4: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37313 } - c00151d6: 70e2 ld ra,56(sp) - c00151d8: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37304 + c00153a6: 70e2 ld ra,56(sp) + c00153a8: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37312 return JS_DupValue(ctx, obj); - c00151da: c94f106f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37305 (discriminator 1) + c00153aa: bb2f106f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37313 (discriminator 1) } - c00151de: 70e2 ld ra,56(sp) - c00151e0: 4501 li a0,0 - c00151e2: 4599 li a1,6 - c00151e4: 6121 addi sp,sp,64 - c00151e6: 8082 ret + c00153ae: 70e2 ld ra,56(sp) + c00153b0: 4501 li a0,0 + c00153b2: 4599 li a1,6 + c00153b4: 6121 addi sp,sp,64 + c00153b6: 8082 ret -00000000c00151e8 : +00000000c00153b8 : js_update_property_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9108 if (flags != (*pprs)->flags) { - c00151e8: 621c ld a5,0(a2) - c00151ea: 439c lw a5,0(a5) - c00151ec: 01a7d79b srliw a5,a5,0x1a - c00151f0: 02d78863 beq a5,a3,c0015220 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9099 -{ - c00151f4: 1101 addi sp,sp,-32 - c00151f6: e822 sd s0,16(sp) - c00151f8: e426 sd s1,8(sp) - c00151fa: ec06 sd ra,24(sp) - c00151fc: 84b2 mv s1,a2 - c00151fe: 8436 mv s0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9101 + c00153b8: 621c ld a5,0(a2) + c00153ba: 439c lw a5,0(a5) + c00153bc: 01a7d79b srliw a5,a5,0x1a + c00153c0: 02d78863 beq a5,a3,c00153f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9107 +{ + c00153c4: 1101 addi sp,sp,-32 + c00153c6: e822 sd s0,16(sp) + c00153c8: e426 sd s1,8(sp) + c00153ca: ec06 sd ra,24(sp) + c00153cc: 84b2 mv s1,a2 + c00153ce: 8436 mv s0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9109 if (js_shape_prepare_update(ctx, p, pprs)) - c0015200: c43ff0ef jal ra,c0014e42 - c0015204: e105 bnez a0,c0015224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9103 + c00153d0: c43ff0ef jal ra,c0015012 + c00153d4: e105 bnez a0,c00153f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9111 (*pprs)->flags = flags; - c0015206: 609c ld a5,0(s1) - c0015208: 01a4141b slliw s0,s0,0x1a - c001520c: 4394 lw a3,0(a5) - c001520e: 169a slli a3,a3,0x26 - c0015210: 9299 srli a3,a3,0x26 - c0015212: 8ec1 or a3,a3,s0 - c0015214: c394 sw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9106 -} - c0015216: 60e2 ld ra,24(sp) - c0015218: 6442 ld s0,16(sp) - c001521a: 64a2 ld s1,8(sp) - c001521c: 6105 addi sp,sp,32 - c001521e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9105 + c00153d6: 609c ld a5,0(s1) + c00153d8: 01a4141b slliw s0,s0,0x1a + c00153dc: 4394 lw a3,0(a5) + c00153de: 169a slli a3,a3,0x26 + c00153e0: 9299 srli a3,a3,0x26 + c00153e2: 8ec1 or a3,a3,s0 + c00153e4: c394 sw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9114 +} + c00153e6: 60e2 ld ra,24(sp) + c00153e8: 6442 ld s0,16(sp) + c00153ea: 64a2 ld s1,8(sp) + c00153ec: 6105 addi sp,sp,32 + c00153ee: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9113 return 0; - c0015220: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9106 + c00153f0: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9114 } - c0015222: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9102 + c00153f2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9110 return -1; - c0015224: 557d li a0,-1 - c0015226: bfc5 j c0015216 + c00153f4: 557d li a0,-1 + c00153f6: bfc5 j c00153e6 -00000000c0015228 : +00000000c00153f8 : seal_template_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22179 { - c0015228: 7179 addi sp,sp,-48 - c001522a: f022 sd s0,32(sp) - c001522c: f406 sd ra,40(sp) + c00153f8: 7179 addi sp,sp,-48 + c00153fa: f022 sd s0,32(sp) + c00153fc: f406 sd ra,40(sp) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5284 sh = p->shape; - c001522e: 6d98 ld a4,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c00153fe: 6d98 ld a4,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c0015230: 56f1 li a3,-4 + c0015400: 56f1 li a3,-4 seal_template_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22179 { - c0015232: e432 sd a2,8(sp) + c0015402: e432 sd a2,8(sp) find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c0015234: 531c lw a5,32(a4) + c0015404: 531c lw a5,32(a4) seal_template_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22179 { - c0015236: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22175 + c0015406: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22183 p = JS_VALUE_GET_OBJ(obj); - c0015238: 842e mv s0,a1 + c0015408: 842e mv s0,a1 find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 h = (uintptr_t)atom & sh->prop_hash_mask; - c001523a: 0307f793 andi a5,a5,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c001540a: 0307f793 andi a5,a5,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c001523e: 0785 addi a5,a5,1 - c0015240: 02d787b3 mul a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c001540e: 0785 addi a5,a5,1 + c0015410: 02d787b3 mul a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c0015244: 040006b7 lui a3,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c0015414: 040006b7 lui a3,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c0015248: 03000613 li a2,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c0015418: 03000613 li a2,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c001524c: 16fd addi a3,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5278 + c001541c: 16fd addi a3,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5286 h = prop_hash_end(sh)[-h - 1]; - c001524e: 97ba add a5,a5,a4 - c0015250: 0007e783 lwu a5,0(a5) + c001541e: 97ba add a5,a5,a4 + c0015420: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0015254: 04070713 addi a4,a4,64 # 3c000040 <__clzdi2-0x83ffffc0> + c0015424: 04070713 addi a4,a4,64 # 3c000040 <__clzdi2-0x83ffffc0> find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5288 while (h) { - c0015258: ef89 bnez a5,c0015272 + c0015428: ef89 bnez a5,c0015442 seal_template_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22184 prs = find_own_property1(p, JS_ATOM_length); - c001525a: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22177 + c001542a: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22185 if (prs) { - c001525c: e795 bnez a5,c0015288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22182 + c001542c: e795 bnez a5,c0015458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22190 p->extensible = FALSE; - c001525e: 00544783 lbu a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22183 + c001542e: 00544783 lbu a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22191 return 0; - c0015262: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22182 + c0015432: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22190 p->extensible = FALSE; - c0015264: 9bf9 andi a5,a5,-2 - c0015266: 00f402a3 sb a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22184 -} - c001526a: 70a2 ld ra,40(sp) - c001526c: 7402 ld s0,32(sp) - c001526e: 6145 addi sp,sp,48 - c0015270: 8082 ret + c0015434: 9bf9 andi a5,a5,-2 + c0015436: 00f402a3 sb a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22192 +} + c001543a: 70a2 ld ra,40(sp) + c001543c: 7402 ld s0,32(sp) + c001543e: 6145 addi sp,sp,48 + c0015440: 8082 ret find_own_property1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5289 pr = &prop[h - 1]; - c0015272: 078e slli a5,a5,0x3 - c0015274: 17e1 addi a5,a5,-8 - c0015276: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5282 + c0015442: 078e slli a5,a5,0x3 + c0015444: 17e1 addi a5,a5,-8 + c0015446: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5290 if (likely(pr->atom == atom)) { - c0015278: 43cc lw a1,4(a5) - c001527a: fec580e3 beq a1,a2,c001525a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5285 + c0015448: 43cc lw a1,4(a5) + c001544a: fec580e3 beq a1,a2,c001542a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5293 h = pr->hash_next; - c001527e: 439c lw a5,0(a5) - c0015280: 8ff5 and a5,a5,a3 - c0015282: 1782 slli a5,a5,0x20 - c0015284: 9381 srli a5,a5,0x20 - c0015286: bfc9 j c0015258 + c001544e: 439c lw a5,0(a5) + c0015450: 8ff5 and a5,a5,a3 + c0015452: 1782 slli a5,a5,0x20 + c0015454: 9381 srli a5,a5,0x20 + c0015456: bfc9 j c0015428 seal_template_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22187 prs->flags & ~(JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE))) - c0015288: 4394 lw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22178 + c0015458: 4394 lw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22186 if (js_update_property_flags(ctx, p, &prs, - c001528a: 0830 addi a2,sp,24 - c001528c: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22179 + c001545a: 0830 addi a2,sp,24 + c001545c: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22187 prs->flags & ~(JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE))) - c001528e: 01a6d69b srliw a3,a3,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22178 + c001545e: 01a6d69b srliw a3,a3,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22186 if (js_update_property_flags(ctx, p, &prs, - c0015292: 03c6f693 andi a3,a3,60 - c0015296: f53ff0ef jal ra,c00151e8 - c001529a: d171 beqz a0,c001525e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22180 + c0015462: 03c6f693 andi a3,a3,60 + c0015466: f53ff0ef jal ra,c00153b8 + c001546a: d171 beqz a0,c001542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22188 return -1; - c001529c: 557d li a0,-1 - c001529e: b7f1 j c001526a + c001546c: 557d li a0,-1 + c001546e: b7f1 j c001543a -00000000c00152a0 : +00000000c0015470 : JS_EnqueueJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1840 { - c00152a0: 7139 addi sp,sp,-64 - c00152a2: ec4e sd s3,24(sp) - c00152a4: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1837 + c0015470: 7139 addi sp,sp,-64 + c0015472: ec4e sd s3,24(sp) + c0015474: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1845 e = js_malloc(ctx, sizeof(*e) + argc * sizeof(JSValue)); - c00152a6: 00461593 slli a1,a2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1832 -{ - c00152aa: f426 sd s1,40(sp) - c00152ac: f04a sd s2,32(sp) - c00152ae: e852 sd s4,16(sp) - c00152b0: fc06 sd ra,56(sp) - c00152b2: f822 sd s0,48(sp) - c00152b4: e456 sd s5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1837 + c0015476: 00461593 slli a1,a2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1840 +{ + c001547a: f426 sd s1,40(sp) + c001547c: f04a sd s2,32(sp) + c001547e: e852 sd s4,16(sp) + c0015480: fc06 sd ra,56(sp) + c0015482: f822 sd s0,48(sp) + c0015484: e456 sd s5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1845 e = js_malloc(ctx, sizeof(*e) + argc * sizeof(JSValue)); - c00152b6: 02858593 addi a1,a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1833 + c0015486: 02858593 addi a1,a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1841 JSRuntime *rt = ctx->rt; - c00152ba: 01853a83 ld s5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1832 + c001548a: 01853a83 ld s5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1840 { - c00152be: 84aa mv s1,a0 - c00152c0: 8932 mv s2,a2 - c00152c2: 8a36 mv s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1837 + c001548e: 84aa mv s1,a0 + c0015490: 8932 mv s2,a2 + c0015492: 8a36 mv s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1845 e = js_malloc(ctx, sizeof(*e) + argc * sizeof(JSValue)); - c00152c4: 989ff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1838 + c0015494: 8a7ff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1846 if (!e) - c00152c8: cd29 beqz a0,c0015322 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1841 + c0015498: cd29 beqz a0,c00154f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1849 e->job_func = job_func; - c00152ca: 01353c23 sd s3,24(a0) - c00152ce: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1840 + c001549a: 01353c23 sd s3,24(a0) + c001549e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1848 e->ctx = ctx; - c00152d0: e904 sd s1,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1842 + c00154a0: e904 sd s1,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1850 e->argc = argc; - c00152d2: 03252023 sw s2,32(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1843 + c00154a2: 03252023 sw s2,32(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1851 for(i = 0; i < argc; i++) { - c00152d6: 4981 li s3,0 - c00152d8: 0009849b sext.w s1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1843 (discriminator 1) - c00152dc: 0324c563 blt s1,s2,c0015306 + c00154a6: 4981 li s3,0 + c00154a8: 0009849b sext.w s1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1851 (discriminator 1) + c00154ac: 0324c563 blt s1,s2,c00154d6 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c00152e0: 120ab783 ld a5,288(s5) + c00154b0: 120ab783 ld a5,288(s5) JS_EnqueueJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1847 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1855 return 0; - c00152e4: 4501 li a0,0 + c00154b4: 4501 li a0,0 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c00152e6: e780 sd s0,8(a5) + c00154b6: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c00152e8: e01c sd a5,0(s0) + c00154b8: e01c sd a5,0(s0) JS_EnqueueJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1854 list_add_tail(&e->link, &rt->job_list); - c00152ea: 120a8793 addi a5,s5,288 + c00154ba: 120a8793 addi a5,s5,288 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c00152ee: e41c sd a5,8(s0) + c00154be: e41c sd a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c00152f0: 128ab023 sd s0,288(s5) + c00154c0: 128ab023 sd s0,288(s5) JS_EnqueueJob(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1848 -} - c00152f4: 70e2 ld ra,56(sp) - c00152f6: 7442 ld s0,48(sp) - c00152f8: 74a2 ld s1,40(sp) - c00152fa: 7902 ld s2,32(sp) - c00152fc: 69e2 ld s3,24(sp) - c00152fe: 6a42 ld s4,16(sp) - c0015300: 6aa2 ld s5,8(sp) - c0015302: 6121 addi sp,sp,64 - c0015304: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1844 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1856 +} + c00154c4: 70e2 ld ra,56(sp) + c00154c6: 7442 ld s0,48(sp) + c00154c8: 74a2 ld s1,40(sp) + c00154ca: 7902 ld s2,32(sp) + c00154cc: 69e2 ld s3,24(sp) + c00154ce: 6a42 ld s4,16(sp) + c00154d0: 6aa2 ld s5,8(sp) + c00154d2: 6121 addi sp,sp,64 + c00154d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1852 (discriminator 3) e->argv[i] = JS_DupValue(ctx, argv[i]); - c0015306: 00499793 slli a5,s3,0x4 - c001530a: 97d2 add a5,a5,s4 - c001530c: 6388 ld a0,0(a5) - c001530e: 678c ld a1,8(a5) - c0015310: 0489 addi s1,s1,2 - c0015312: 0492 slli s1,s1,0x4 - c0015314: 94a2 add s1,s1,s0 - c0015316: b58f10ef jal ra,c000666e - c001531a: e488 sd a0,8(s1) - c001531c: e88c sd a1,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1843 (discriminator 3) + c00154d6: 00499793 slli a5,s3,0x4 + c00154da: 97d2 add a5,a5,s4 + c00154dc: 6388 ld a0,0(a5) + c00154de: 678c ld a1,8(a5) + c00154e0: 0489 addi s1,s1,2 + c00154e2: 0492 slli s1,s1,0x4 + c00154e4: 94a2 add s1,s1,s0 + c00154e6: a76f10ef jal ra,c000675c + c00154ea: e488 sd a0,8(s1) + c00154ec: e88c sd a1,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1851 (discriminator 3) for(i = 0; i < argc; i++) { - c001531e: 0985 addi s3,s3,1 - c0015320: bf65 j c00152d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1839 + c00154ee: 0985 addi s3,s3,1 + c00154f0: bf65 j c00154a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1847 return -1; - c0015322: 557d li a0,-1 - c0015324: bfc1 j c00152f4 + c00154f2: 557d li a0,-1 + c00154f4: bfc1 j c00154c4 -00000000c0015326 : +00000000c00154f6 : fulfill_or_reject_promise(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47884 -{ - c0015326: 7111 addi sp,sp,-256 - c0015328: 8832 mv a6,a2 - c001532a: f1ca sd s2,224(sp) - c001532c: f02e sd a1,32(sp) - c001532e: 892a mv s2,a0 - c0015330: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47885 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47892 +{ + c00154f6: 7111 addi sp,sp,-256 + c00154f8: 8832 mv a6,a2 + c00154fa: f1ca sd s2,224(sp) + c00154fc: f02e sd a1,32(sp) + c00154fe: 892a mv s2,a0 + c0015500: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47893 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c0015332: 852e mv a0,a1 - c0015334: 02d00613 li a2,45 - c0015338: 85c2 mv a1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47884 -{ - c001533a: edce sd s3,216(sp) - c001533c: fd86 sd ra,248(sp) - c001533e: f9a2 sd s0,240(sp) - c0015340: f5a6 sd s1,232(sp) - c0015342: e9d2 sd s4,208(sp) - c0015344: e5d6 sd s5,200(sp) - c0015346: e1da sd s6,192(sp) - c0015348: fd5e sd s7,184(sp) - c001534a: f962 sd s8,176(sp) - c001534c: e836 sd a3,16(sp) - c001534e: ec3a sd a4,24(sp) - c0015350: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47885 + c0015502: 852e mv a0,a1 + c0015504: 02d00613 li a2,45 + c0015508: 85c2 mv a1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47892 +{ + c001550a: edce sd s3,216(sp) + c001550c: fd86 sd ra,248(sp) + c001550e: f9a2 sd s0,240(sp) + c0015510: f5a6 sd s1,232(sp) + c0015512: e9d2 sd s4,208(sp) + c0015514: e5d6 sd s5,200(sp) + c0015516: e1da sd s6,192(sp) + c0015518: fd5e sd s7,184(sp) + c001551a: f962 sd s8,176(sp) + c001551c: e836 sd a3,16(sp) + c001551e: ec3a sd a4,24(sp) + c0015520: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47893 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c0015352: d60f50ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47890 + c0015522: c7ef50ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47898 if (!s || s->promise_state != JS_PROMISE_PENDING) - c0015356: c559 beqz a0,c00153e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47890 (discriminator 1) - c0015358: 411c lw a5,0(a0) - c001535a: 842a mv s0,a0 - c001535c: e7c1 bnez a5,c00153e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47892 + c0015526: c559 beqz a0,c00155b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47898 (discriminator 1) + c0015528: 411c lw a5,0(a0) + c001552a: 842a mv s0,a0 + c001552c: e7c1 bnez a5,c00155b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47900 set_value(ctx, &s->promise_result, JS_DupValue(ctx, value)); - c001535e: 6542 ld a0,16(sp) - c0015360: 65e2 ld a1,24(sp) - c0015362: b0cf10ef jal ra,c000666e - c0015366: 862a mv a2,a0 - c0015368: 86ae mv a3,a1 - c001536a: f82a sd a0,48(sp) - c001536c: fc2e sd a1,56(sp) - c001536e: 854a mv a0,s2 - c0015370: 03040593 addi a1,s0,48 - c0015374: c0ff20ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47893 + c001552e: 6542 ld a0,16(sp) + c0015530: 65e2 ld a1,24(sp) + c0015532: a2af10ef jal ra,c000675c + c0015536: 862a mv a2,a0 + c0015538: 86ae mv a3,a1 + c001553a: f82a sd a0,48(sp) + c001553c: fc2e sd a1,56(sp) + c001553e: 854a mv a0,s2 + c0015540: 03040593 addi a1,s0,48 + c0015544: b2df20ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47901 s->promise_state = JS_PROMISE_FULFILLED + is_reject; - c0015378: 0019871b addiw a4,s3,1 - c001537c: c018 sw a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47897 + c0015548: 0019871b addiw a4,s3,1 + c001554c: c018 sw a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 if (s->promise_state == JS_PROMISE_REJECTED && !s->is_handled) { - c001537e: 4789 li a5,2 - c0015380: 02f71363 bne a4,a5,c00153a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47897 (discriminator 1) - c0015384: 541c lw a5,40(s0) - c0015386: e385 bnez a5,c00153a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47898 + c001554e: 4789 li a5,2 + c0015550: 02f71363 bne a4,a5,c0015576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 (discriminator 1) + c0015554: 541c lw a5,40(s0) + c0015556: e385 bnez a5,c0015576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47906 JSRuntime *rt = ctx->rt; - c0015388: 01893783 ld a5,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47899 + c0015558: 01893783 ld a5,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47907 if (rt->host_promise_rejection_tracker) { - c001538c: 1107b883 ld a7,272(a5) - c0015390: 00088b63 beqz a7,c00153a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47900 + c001555c: 1107b883 ld a7,272(a5) + c0015560: 00088b63 beqz a7,c0015576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47908 rt->host_promise_rejection_tracker(ctx, promise, value, FALSE, - c0015394: 1187b803 ld a6,280(a5) - c0015398: 66c2 ld a3,16(sp) - c001539a: 6762 ld a4,24(sp) - c001539c: 7582 ld a1,32(sp) - c001539e: 7622 ld a2,40(sp) - c00153a0: 4781 li a5,0 - c00153a2: 854a mv a0,s2 - c00153a4: 9882 jalr a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 + c0015564: 1187b803 ld a6,280(a5) + c0015568: 66c2 ld a3,16(sp) + c001556a: 6762 ld a4,24(sp) + c001556c: 7582 ld a1,32(sp) + c001556e: 7622 ld a2,40(sp) + c0015570: 4781 li a5,0 + c0015572: 854a mv a0,s2 + c0015574: 9882 jalr a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47913 list_for_each_safe(el, el1, &s->promise_reactions[is_reject]) { - c00153a6: 00499793 slli a5,s3,0x4 - c00153aa: 00f40733 add a4,s0,a5 - c00153ae: 6b04 ld s1,16(a4) - c00153b0: 07a1 addi a5,a5,8 - c00153b2: 00f40a33 add s4,s0,a5 - c00153b6: 0084ba83 ld s5,8(s1) + c0015576: 00499793 slli a5,s3,0x4 + c001557a: 00f40733 add a4,s0,a5 + c001557e: 6b04 ld s1,16(a4) + c0015580: 07a1 addi a5,a5,8 + c0015582: 00f40a33 add s4,s0,a5 + c0015586: 0084ba83 ld s5,8(s1) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00153ba: 01303bb3 snez s7,s3 - c00153be: 4b05 li s6,1 + c001558a: 01303bb3 snez s7,s3 + c001558e: 4b05 li s6,1 fulfill_or_reject_promise(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47920 JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c00153c0: 00025c17 auipc s8,0x25 - c00153c4: 3d6c0c13 addi s8,s8,982 # c003a796 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 (discriminator 1) + c0015590: 00025c17 auipc s8,0x25 + c0015594: 3d6c0c13 addi s8,s8,982 # c003a966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47913 (discriminator 1) list_for_each_safe(el, el1, &s->promise_reactions[is_reject]) { - c00153c8: 029a1a63 bne s4,s1,c00153fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47917 + c0015598: 029a1a63 bne s4,s1,c00155cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47925 list_for_each_safe(el, el1, &s->promise_reactions[1 - is_reject]) { - c00153cc: 4705 li a4,1 - c00153ce: 413707bb subw a5,a4,s3 - c00153d2: 0792 slli a5,a5,0x4 - c00153d4: 00f40733 add a4,s0,a5 - c00153d8: 6b0c ld a1,16(a4) - c00153da: 07a1 addi a5,a5,8 - c00153dc: 943e add s0,s0,a5 - c00153de: 6584 ld s1,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47917 (discriminator 1) - c00153e0: 06b41863 bne s0,a1,c0015450 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47922 -} - c00153e4: 70ee ld ra,248(sp) - c00153e6: 744e ld s0,240(sp) - c00153e8: 74ae ld s1,232(sp) - c00153ea: 790e ld s2,224(sp) - c00153ec: 69ee ld s3,216(sp) - c00153ee: 6a4e ld s4,208(sp) - c00153f0: 6aae ld s5,200(sp) - c00153f2: 6b0e ld s6,192(sp) - c00153f4: 7bea ld s7,184(sp) - c00153f6: 7c4a ld s8,176(sp) - c00153f8: 6111 addi sp,sp,256 - c00153fa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47907 (discriminator 3) + c001559c: 4705 li a4,1 + c001559e: 413707bb subw a5,a4,s3 + c00155a2: 0792 slli a5,a5,0x4 + c00155a4: 00f40733 add a4,s0,a5 + c00155a8: 6b0c ld a1,16(a4) + c00155aa: 07a1 addi a5,a5,8 + c00155ac: 943e add s0,s0,a5 + c00155ae: 6584 ld s1,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47925 (discriminator 1) + c00155b0: 06b41863 bne s0,a1,c0015620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47930 +} + c00155b4: 70ee ld ra,248(sp) + c00155b6: 744e ld s0,240(sp) + c00155b8: 74ae ld s1,232(sp) + c00155ba: 790e ld s2,224(sp) + c00155bc: 69ee ld s3,216(sp) + c00155be: 6a4e ld s4,208(sp) + c00155c0: 6aae ld s5,200(sp) + c00155c2: 6b0e ld s6,192(sp) + c00155c4: 7bea ld s7,184(sp) + c00155c6: 7c4a ld s8,176(sp) + c00155c8: 6111 addi sp,sp,256 + c00155ca: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47915 (discriminator 3) args[0] = rd->resolving_funcs[0]; - c00153fc: 689c ld a5,16(s1) + c00155cc: 689c ld a5,16(s1) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 3) - c00153fe: ca82 sw zero,84(sp) - c0015400: c8de sw s7,80(sp) + c00155ce: ca82 sw zero,84(sp) + c00155d0: c8de sw s7,80(sp) fulfill_or_reject_promise(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47907 (discriminator 3) - c0015402: f0be sd a5,96(sp) - c0015404: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47912 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47915 (discriminator 3) + c00155d2: f0be sd a5,96(sp) + c00155d4: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47920 (discriminator 3) JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c0015406: 1094 addi a3,sp,96 - c0015408: 4615 li a2,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47907 (discriminator 3) + c00155d6: 1094 addi a3,sp,96 + c00155d8: 4615 li a2,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47915 (discriminator 3) args[0] = rd->resolving_funcs[0]; - c001540a: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47908 (discriminator 3) + c00155da: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47916 (discriminator 3) args[1] = rd->resolving_funcs[1]; - c001540c: 709c ld a5,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47912 (discriminator 3) + c00155dc: 709c ld a5,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47920 (discriminator 3) JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c001540e: 85e2 mv a1,s8 - c0015410: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47908 (discriminator 3) + c00155de: 85e2 mv a1,s8 + c00155e0: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47916 (discriminator 3) args[1] = rd->resolving_funcs[1]; - c0015412: f8be sd a5,112(sp) - c0015414: 749c ld a5,40(s1) - c0015416: ecda sd s6,88(sp) - c0015418: e4da sd s6,72(sp) - c001541a: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47909 (discriminator 3) + c00155e2: f8be sd a5,112(sp) + c00155e4: 749c ld a5,40(s1) + c00155e6: ecda sd s6,88(sp) + c00155e8: e4da sd s6,72(sp) + c00155ea: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47917 (discriminator 3) args[2] = rd->handler; - c001541c: 789c ld a5,48(s1) - c001541e: e13e sd a5,128(sp) - c0015420: 7c9c ld a5,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47910 (discriminator 3) + c00155ec: 789c ld a5,48(s1) + c00155ee: e13e sd a5,128(sp) + c00155f0: 7c9c ld a5,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47918 (discriminator 3) args[3] = JS_NewBool(ctx, is_reject); - c0015422: ed5a sd s6,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47909 (discriminator 3) + c00155f2: ed5a sd s6,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47917 (discriminator 3) args[2] = rd->handler; - c0015424: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47911 (discriminator 3) + c00155f4: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47919 (discriminator 3) args[4] = value; - c0015426: 67c6 ld a5,80(sp) - c0015428: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47910 (discriminator 3) + c00155f6: 67c6 ld a5,80(sp) + c00155f8: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47918 (discriminator 3) args[3] = JS_NewBool(ctx, is_reject); - c001542a: e93e sd a5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47911 (discriminator 3) + c00155fa: e93e sd a5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47919 (discriminator 3) args[4] = value; - c001542c: 67c2 ld a5,16(sp) - c001542e: f13e sd a5,160(sp) - c0015430: 67e2 ld a5,24(sp) - c0015432: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47912 (discriminator 3) + c00155fc: 67c2 ld a5,16(sp) + c00155fe: f13e sd a5,160(sp) + c0015600: 67e2 ld a5,24(sp) + c0015602: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47920 (discriminator 3) JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c0015434: e6dff0ef jal ra,c00152a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47913 (discriminator 3) + c0015604: e6dff0ef jal ra,c0015470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47921 (discriminator 3) list_del(&rd->link); - c0015438: 8526 mv a0,s1 - c001543a: c21ee0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47914 (discriminator 3) + c0015608: 8526 mv a0,s1 + c001560a: a51ee0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47922 (discriminator 3) promise_reaction_data_free(ctx->rt, rd); - c001543e: 01893503 ld a0,24(s2) - c0015442: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 (discriminator 3) + c001560e: 01893503 ld a0,24(s2) + c0015612: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47913 (discriminator 3) list_for_each_safe(el, el1, &s->promise_reactions[is_reject]) { - c0015444: 84d6 mv s1,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47914 (discriminator 3) + c0015614: 84d6 mv s1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47922 (discriminator 3) promise_reaction_data_free(ctx->rt, rd); - c0015446: a98f30ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47905 (discriminator 3) + c0015616: 9b6f30ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47913 (discriminator 3) list_for_each_safe(el, el1, &s->promise_reactions[is_reject]) { - c001544a: 008aba83 ld s5,8(s5) - c001544e: bfad j c00153c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47919 (discriminator 3) + c001561a: 008aba83 ld s5,8(s5) + c001561e: bfad j c0015598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47927 (discriminator 3) list_del(&rd->link); - c0015450: 852e mv a0,a1 - c0015452: e42e sd a1,8(sp) - c0015454: c07ee0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47920 (discriminator 3) + c0015620: 852e mv a0,a1 + c0015622: e42e sd a1,8(sp) + c0015624: a37ee0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47928 (discriminator 3) promise_reaction_data_free(ctx->rt, rd); - c0015458: 65a2 ld a1,8(sp) - c001545a: 01893503 ld a0,24(s2) - c001545e: a80f30ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47917 (discriminator 3) + c0015628: 65a2 ld a1,8(sp) + c001562a: 01893503 ld a0,24(s2) + c001562e: 99ef30ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47925 (discriminator 3) list_for_each_safe(el, el1, &s->promise_reactions[1 - is_reject]) { - c0015462: 85a6 mv a1,s1 - c0015464: 6484 ld s1,8(s1) - c0015466: bfad j c00153e0 + c0015632: 85a6 mv a1,s1 + c0015634: 6484 ld s1,8(s1) + c0015636: bfad j c00155b0 -00000000c0015468 : +00000000c0015638 : js_promise_resolve_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48030 -{ - c0015468: 7115 addi sp,sp,-224 - c001546a: ed86 sd ra,216(sp) - c001546c: e9a2 sd s0,208(sp) - c001546e: e5a6 sd s1,200(sp) - c0015470: e1ca sd s2,192(sp) - c0015472: fd4e sd s3,184(sp) - c0015474: f952 sd s4,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48037 - s = p->u.promise_function_data; - c0015476: 7984 ld s1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48030 -{ - c0015478: f02e sd a1,32(sp) - c001547a: f432 sd a2,40(sp) - c001547c: e836 sd a3,16(sp) - c001547e: ec3a sd a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48038 +{ + c0015638: 7115 addi sp,sp,-224 + c001563a: ed86 sd ra,216(sp) + c001563c: e9a2 sd s0,208(sp) + c001563e: e5a6 sd s1,200(sp) + c0015640: e1ca sd s2,192(sp) + c0015642: fd4e sd s3,184(sp) + c0015644: f952 sd s4,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48045 + s = p->u.promise_function_data; + c0015646: 7984 ld s1,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48038 +{ + c0015648: f02e sd a1,32(sp) + c001564a: f432 sd a2,40(sp) + c001564c: e836 sd a3,16(sp) + c001564e: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48046 if (!s || s->presolved->already_resolved) - c0015480: cc9d beqz s1,c00154be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48038 (discriminator 1) - c0015482: 6898 ld a4,16(s1) - c0015484: 4354 lw a3,4(a4) - c0015486: ee85 bnez a3,c00154be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48040 + c0015650: cc9d beqz s1,c001568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48046 (discriminator 1) + c0015652: 6898 ld a4,16(s1) + c0015654: 4354 lw a3,4(a4) + c0015656: ee85 bnez a3,c001568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48048 s->presolved->already_resolved = TRUE; - c0015488: 4685 li a3,1 - c001548a: c354 sw a3,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48041 + c0015658: 4685 li a3,1 + c001565a: c354 sw a3,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48049 is_reject = p->class_id - JS_CLASS_PROMISE_RESOLVE_FUNCTION; - c001548c: 0065d983 lhu s3,6(a1) - c0015490: 842a mv s0,a0 - c0015492: fd29899b addiw s3,s3,-46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48042 + c001565c: 0065d983 lhu s3,6(a1) + c0015660: 842a mv s0,a0 + c0015662: fd29899b addiw s3,s3,-46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48050 if (argc > 0) - c0015496: 02f05e63 blez a5,c00154d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48043 - resolution = argv[0]; - c001549a: 00883603 ld a2,8(a6) - c001549e: 00083583 ld a1,0(a6) - c00154a2: fc32 sd a2,56(sp) - c00154a4: f82e sd a1,48(sp) - c00154a6: 8a32 mv s4,a2 + c0015666: 02f05e63 blez a5,c00156a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48051 + resolution = argv[0]; + c001566a: 00883603 ld a2,8(a6) + c001566e: 00083583 ld a1,0(a6) + c0015672: fc32 sd a2,56(sp) + c0015674: f82e sd a1,48(sp) + c0015676: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48059 if (is_reject || !JS_IsObject(resolution)) { - c00154a8: 02098863 beqz s3,c00154d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48067 + c0015678: 02098863 beqz s3,c00156a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48075 fulfill_or_reject_promise(ctx, s->promise, resolution, is_reject); - c00154ac: 76c2 ld a3,48(sp) - c00154ae: 608c ld a1,0(s1) - c00154b0: 6490 ld a2,8(s1) - c00154b2: 87ce mv a5,s3 - c00154b4: 8752 mv a4,s4 - c00154b6: 8522 mv a0,s0 - c00154b8: fc52 sd s4,56(sp) - c00154ba: e6dff0ef jal ra,c0015326 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48076 -} - c00154be: 60ee ld ra,216(sp) - c00154c0: 644e ld s0,208(sp) - c00154c2: 64ae ld s1,200(sp) - c00154c4: 690e ld s2,192(sp) - c00154c6: 79ea ld s3,184(sp) - c00154c8: 7a4a ld s4,176(sp) - c00154ca: 4501 li a0,0 - c00154cc: 458d li a1,3 - c00154ce: 612d addi sp,sp,224 - c00154d0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48045 + c001567c: 76c2 ld a3,48(sp) + c001567e: 608c ld a1,0(s1) + c0015680: 6490 ld a2,8(s1) + c0015682: 87ce mv a5,s3 + c0015684: 8752 mv a4,s4 + c0015686: 8522 mv a0,s0 + c0015688: fc52 sd s4,56(sp) + c001568a: e6dff0ef jal ra,c00154f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48084 +} + c001568e: 60ee ld ra,216(sp) + c0015690: 644e ld s0,208(sp) + c0015692: 64ae ld s1,200(sp) + c0015694: 690e ld s2,192(sp) + c0015696: 79ea ld s3,184(sp) + c0015698: 7a4a ld s4,176(sp) + c001569a: 4501 li a0,0 + c001569c: 458d li a1,3 + c001569e: 612d addi sp,sp,224 + c00156a0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48053 resolution = JS_UNDEFINED; - c00154d2: f802 sd zero,48(sp) - c00154d4: 4a0d li s4,3 - c00154d6: bfd9 j c00154ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48051 (discriminator 1) + c00156a2: f802 sd zero,48(sp) + c00156a4: 4a0d li s4,3 + c00156a6: bfd9 j c001567c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48059 (discriminator 1) if (is_reject || !JS_IsObject(resolution)) { - c00154d8: 0006079b sext.w a5,a2 - c00154dc: 577d li a4,-1 - c00154de: fce797e3 bne a5,a4,c00154ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48053 + c00156a8: 0006079b sext.w a5,a2 + c00156ac: 577d li a4,-1 + c00156ae: fce797e3 bne a5,a4,c001567c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48061 } else if (js_same_value(ctx, resolution, s->promise)) { - c00154e2: 6094 ld a3,0(s1) - c00154e4: 6498 ld a4,8(s1) - c00154e6: fdcf20ef jal ra,c0007cc2 - c00154ea: cd1d beqz a0,c0015528 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48054 + c00156b2: 6094 ld a3,0(s1) + c00156b4: 6498 ld a4,8(s1) + c00156b6: efaf20ef jal ra,c0007db0 + c00156ba: cd1d beqz a0,c00156f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48062 JS_ThrowTypeError(ctx, "promise self resolution"); - c00154ec: 00049597 auipc a1,0x49 - c00154f0: 99c58593 addi a1,a1,-1636 # c005de88 - c00154f4: 8522 mv a0,s0 - c00154f6: f01fd0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48061 + c00156bc: 00049597 auipc a1,0x49 + c00156c0: a2c58593 addi a1,a1,-1492 # c005e0e8 + c00156c4: 8522 mv a0,s0 + c00156c6: e1ffd0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48069 error = JS_GetException(ctx); - c00154fa: 8522 mv a0,s0 - c00154fc: 9ccf50ef jal ra,c000a6c8 - c0015500: 6490 ld a2,8(s1) - c0015502: 872e mv a4,a1 - c0015504: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48062 + c00156ca: 8522 mv a0,s0 + c00156cc: 8eaf50ef jal ra,c000a7b6 + c00156d0: 6490 ld a2,8(s1) + c00156d2: 872e mv a4,a1 + c00156d4: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48070 reject_promise(ctx, s->promise, error); - c0015506: 608c ld a1,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48061 + c00156d6: 608c ld a1,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48069 error = JS_GetException(ctx); - c0015508: 86aa mv a3,a0 - c001550a: e8aa sd a0,80(sp) + c00156d8: 86aa mv a3,a0 + c00156da: e8aa sd a0,80(sp) reject_promise(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47927 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47935 fulfill_or_reject_promise(ctx, promise, value, TRUE); - c001550c: 4785 li a5,1 - c001550e: 8522 mv a0,s0 - c0015510: f8ae sd a1,112(sp) - c0015512: fcb2 sd a2,120(sp) - c0015514: e136 sd a3,128(sp) - c0015516: e53a sd a4,136(sp) - c0015518: e0fff0ef jal ra,c0015326 + c00156dc: 4785 li a5,1 + c00156de: 8522 mv a0,s0 + c00156e0: f8ae sd a1,112(sp) + c00156e2: fcb2 sd a2,120(sp) + c00156e4: e136 sd a3,128(sp) + c00156e6: e53a sd a4,136(sp) + c00156e8: e0fff0ef jal ra,c00154f6 js_promise_resolve_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48071 JS_FreeValue(ctx, error); - c001551c: 65c6 ld a1,80(sp) - c001551e: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48073 + c00156ec: 65c6 ld a1,80(sp) + c00156ee: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48081 JS_FreeValue(ctx, then); - c0015520: 8522 mv a0,s0 - c0015522: e16f20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48039 + c00156f0: 8522 mv a0,s0 + c00156f2: d34f20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48047 return JS_UNDEFINED; - c0015526: bf61 j c00154be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48057 + c00156f6: bf61 j c001568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48065 then = JS_GetProperty(ctx, resolution, JS_ATOM_then); - c0015528: 7742 ld a4,48(sp) - c001552a: 77e2 ld a5,56(sp) + c00156f8: 7742 ld a4,48(sp) + c00156fa: 77e2 ld a5,56(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001552c: 4801 li a6,0 - c001552e: 85ba mv a1,a4 - c0015530: 863e mv a2,a5 - c0015532: 08000693 li a3,128 - c0015536: 8522 mv a0,s0 - c0015538: e13a sd a4,128(sp) - c001553a: e53e sd a5,136(sp) - c001553c: b06fc0ef jal ra,c0011842 - c0015540: f0aa sd a0,96(sp) - c0015542: f4ae sd a1,104(sp) - c0015544: e0aa sd a0,64(sp) - c0015546: e4ae sd a1,72(sp) + c00156fc: 4801 li a6,0 + c00156fe: 85ba mv a1,a4 + c0015700: 863e mv a2,a5 + c0015702: 08000693 li a3,128 + c0015706: 8522 mv a0,s0 + c0015708: e13a sd a4,128(sp) + c001570a: e53e sd a5,136(sp) + c001570c: a24fc0ef jal ra,c0011930 + c0015710: f0aa sd a0,96(sp) + c0015712: f4ae sd a1,104(sp) + c0015714: e0aa sd a0,64(sp) + c0015716: e4ae sd a1,72(sp) js_promise_resolve_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48066 if (JS_IsException(then)) { - c0015548: 0005871b sext.w a4,a1 - c001554c: 4799 li a5,6 + c0015718: 0005871b sext.w a4,a1 + c001571c: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001554e: 892a mv s2,a0 - c0015550: 862e mv a2,a1 + c001571e: 892a mv s2,a0 + c0015720: 862e mv a2,a1 js_promise_resolve_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48058 - c0015552: faf704e3 beq a4,a5,c00154fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48064 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48066 + c0015722: faf704e3 beq a4,a5,c00156ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48072 } else if (!JS_IsFunction(ctx, then)) { - c0015556: 85aa mv a1,a0 - c0015558: 8522 mv a0,s0 - c001555a: e432 sd a2,8(sp) - c001555c: 980f50ef jal ra,c000a6dc - c0015560: 6622 ld a2,8(sp) - c0015562: e511 bnez a0,c001556e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48065 + c0015726: 85aa mv a1,a0 + c0015728: 8522 mv a0,s0 + c001572a: e432 sd a2,8(sp) + c001572c: 89ef50ef jal ra,c000a7ca + c0015730: 6622 ld a2,8(sp) + c0015732: e511 bnez a0,c001573e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48073 JS_FreeValue(ctx, then); - c0015564: 85ca mv a1,s2 - c0015566: 8522 mv a0,s0 - c0015568: dd0f20ef jal ra,c0007b38 - c001556c: b781 j c00154ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48069 + c0015734: 85ca mv a1,s2 + c0015736: 8522 mv a0,s0 + c0015738: ceef20ef jal ra,c0007c26 + c001573c: b781 j c001567c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48077 args[0] = s->promise; - c001556e: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48072 + c001573e: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 JS_EnqueueJob(ctx, js_promise_resolve_thenable_job, 3, args); - c0015570: 00029597 auipc a1,0x29 - c0015574: adc58593 addi a1,a1,-1316 # c003e04c - c0015578: 0114 addi a3,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48069 + c0015740: 00029597 auipc a1,0x29 + c0015744: adc58593 addi a1,a1,-1316 # c003e21c + c0015748: 0114 addi a3,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48077 args[0] = s->promise; - c001557a: e13e sd a5,128(sp) - c001557c: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48072 + c001574a: e13e sd a5,128(sp) + c001574c: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 JS_EnqueueJob(ctx, js_promise_resolve_thenable_job, 3, args); - c001557e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48071 + c001574e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48079 args[2] = then; - c0015580: f532 sd a2,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48069 + c0015750: f532 sd a2,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48077 args[0] = s->promise; - c0015582: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48070 + c0015752: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48078 args[1] = resolution; - c0015584: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48072 + c0015754: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 JS_EnqueueJob(ctx, js_promise_resolve_thenable_job, 3, args); - c0015586: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48071 + c0015756: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48079 args[2] = then; - c0015588: f14a sd s2,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48070 + c0015758: f14a sd s2,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48078 args[1] = resolution; - c001558a: e93e sd a5,144(sp) - c001558c: 77e2 ld a5,56(sp) - c001558e: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48072 + c001575a: e93e sd a5,144(sp) + c001575c: 77e2 ld a5,56(sp) + c001575e: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48080 JS_EnqueueJob(ctx, js_promise_resolve_thenable_job, 3, args); - c0015590: d11ff0ef jal ra,c00152a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48073 + c0015760: d11ff0ef jal ra,c0015470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48081 JS_FreeValue(ctx, then); - c0015594: 6586 ld a1,64(sp) - c0015596: 6626 ld a2,72(sp) - c0015598: b761 j c0015520 + c0015764: 6586 ld a1,64(sp) + c0015766: 6626 ld a2,72(sp) + c0015768: b761 j c00156f0 -00000000c001559a : +00000000c001576a : JS_NewBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12357 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12365 { - c001559a: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12359 + c001576a: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12367 p = js_malloc(ctx, sizeof(*p)); - c001559c: 03000593 li a1,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12357 + c001576c: 03000593 li a1,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12365 { - c00155a0: ec26 sd s1,24(sp) - c00155a2: f406 sd ra,40(sp) - c00155a4: f022 sd s0,32(sp) - c00155a6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12359 + c0015770: ec26 sd s1,24(sp) + c0015772: f406 sd ra,40(sp) + c0015774: f022 sd s0,32(sp) + c0015776: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12367 p = js_malloc(ctx, sizeof(*p)); - c00155a8: ea4ff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12360 + c0015778: dc2ff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12368 if (!p) - c00155ac: e919 bnez a0,c00155c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12361 + c001577c: e919 bnez a0,c0015792 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12369 return JS_EXCEPTION; - c00155ae: e002 sd zero,0(sp) - c00155b0: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12365 + c001577e: e002 sd zero,0(sp) + c0015780: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12373 } - c00155b2: 70a2 ld ra,40(sp) - c00155b4: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12364 + c0015782: 70a2 ld ra,40(sp) + c0015784: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12372 return JS_MKPTR(JS_TAG_BIG_INT, p); - c00155b6: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12365 + c0015786: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12373 } - c00155b8: 6502 ld a0,0(sp) - c00155ba: 65a2 ld a1,8(sp) - c00155bc: 64e2 ld s1,24(sp) - c00155be: 6145 addi sp,sp,48 - c00155c0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12362 + c0015788: 6502 ld a0,0(sp) + c001578a: 65a2 ld a1,8(sp) + c001578c: 64e2 ld s1,24(sp) + c001578e: 6145 addi sp,sp,48 + c0015790: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12370 p->header.ref_count = 1; - c00155c2: 4785 li a5,1 - c00155c4: c11c sw a5,0(a0) - c00155c6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12363 + c0015792: 4785 li a5,1 + c0015794: c11c sw a5,0(a0) + c0015796: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12371 bf_init(ctx->bf_ctx, &p->num); - c00155c8: 00850593 addi a1,a0,8 - c00155cc: 1904b503 ld a0,400(s1) - c00155d0: 23d370ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12364 + c0015798: 00850593 addi a1,a0,8 + c001579c: 1904b503 ld a0,400(s1) + c00157a0: 23d370ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12372 return JS_MKPTR(JS_TAG_BIG_INT, p); - c00155d4: 57d9 li a5,-10 - c00155d6: e022 sd s0,0(sp) - c00155d8: bfe9 j c00155b2 + c00157a4: 57d9 li a5,-10 + c00157a6: e022 sd s0,0(sp) + c00157a8: bfe9 j c0015782 -00000000c00155da : +00000000c00157aa : js_create_module_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28054 { - c00155da: 1101 addi sp,sp,-32 - c00155dc: e426 sd s1,8(sp) - c00155de: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28048 + c00157aa: 1101 addi sp,sp,-32 + c00157ac: e426 sd s1,8(sp) + c00157ae: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28056 var_ref = js_malloc(ctx, sizeof(JSVarRef)); - c00155e0: 03800593 li a1,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28046 + c00157b0: 03800593 li a1,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28054 { - c00155e4: e822 sd s0,16(sp) - c00155e6: ec06 sd ra,24(sp) - c00155e8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28048 + c00157b4: e822 sd s0,16(sp) + c00157b6: ec06 sd ra,24(sp) + c00157b8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28056 var_ref = js_malloc(ctx, sizeof(JSVarRef)); - c00155ea: e62ff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28049 + c00157ba: d80ff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28057 if (!var_ref) - c00155ee: cd1d beqz a0,c001562c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28051 + c00157be: cd1d beqz a0,c00157fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28059 var_ref->header.ref_count = 1; - c00155f0: 4785 li a5,1 - c00155f2: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28053 + c00157c0: 4785 li a5,1 + c00157c2: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28061 var_ref->value = JS_UNINITIALIZED; - c00155f4: 02053023 sd zero,32(a0) - c00155f8: 4791 li a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28052 + c00157c4: 02053023 sd zero,32(a0) + c00157c8: 4791 li a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28060 if (is_lexical) - c00155fa: e091 bnez s1,c00155fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28055 + c00157ca: e091 bnez s1,c00157ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28063 var_ref->value = JS_UNDEFINED; - c00155fc: 478d li a5,3 - c00155fe: f51c sd a5,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28056 + c00157cc: 478d li a5,3 + c00157ce: f51c sd a5,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28064 var_ref->pvalue = &var_ref->value; - c0015600: 02050793 addi a5,a0,32 - c0015604: ed1c sd a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28057 + c00157d0: 02050793 addi a5,a0,32 + c00157d4: ed1c sd a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28065 var_ref->is_detached = TRUE; - c0015606: 00554783 lbu a5,5(a0) - c001560a: 0017e793 ori a5,a5,1 - c001560e: 00f502a3 sb a5,5(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28058 + c00157d6: 00554783 lbu a5,5(a0) + c00157da: 0017e793 ori a5,a5,1 + c00157de: 00f502a3 sb a5,5(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28066 add_gc_object(ctx->rt, &var_ref->header, JS_GC_OBJ_TYPE_VAR_REF); - c0015612: 6c18 ld a4,24(s0) + c00157e2: 6c18 ld a4,24(s0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0015614: 478d li a5,3 - c0015616: 00f50223 sb a5,4(a0) + c00157e4: 478d li a5,3 + c00157e6: 00f50223 sb a5,4(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c001561a: 6754 ld a3,136(a4) + c00157ea: 6754 ld a3,136(a4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c001561c: 00850793 addi a5,a0,8 + c00157ec: 00850793 addi a5,a0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015620: e69c sd a5,8(a3) + c00157f0: e69c sd a5,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015622: e514 sd a3,8(a0) + c00157f2: e514 sd a3,8(a0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 - c0015624: 08870693 addi a3,a4,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 + c00157f4: 08870693 addi a3,a4,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015628: e914 sd a3,16(a0) + c00157f8: e914 sd a3,16(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c001562a: e75c sd a5,136(a4) + c00157fa: e75c sd a5,136(a4) js_create_module_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28068 } - c001562c: 60e2 ld ra,24(sp) - c001562e: 6442 ld s0,16(sp) - c0015630: 64a2 ld s1,8(sp) - c0015632: 6105 addi sp,sp,32 - c0015634: 8082 ret + c00157fc: 60e2 ld ra,24(sp) + c00157fe: 6442 ld s0,16(sp) + c0015800: 64a2 ld s1,8(sp) + c0015802: 6105 addi sp,sp,32 + c0015804: 8082 ret -00000000c0015636 : +00000000c0015806 : add_reloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31899 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31907 { - c0015636: 1101 addi sp,sp,-32 - c0015638: e822 sd s0,16(sp) - c001563a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31901 + c0015806: 1101 addi sp,sp,-32 + c0015808: e822 sd s0,16(sp) + c001580a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31909 re = js_malloc(ctx, sizeof(*re)); - c001563c: 45c1 li a1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31899 -{ - c001563e: e426 sd s1,8(sp) - c0015640: e04a sd s2,0(sp) - c0015642: ec06 sd ra,24(sp) - c0015644: 8932 mv s2,a2 - c0015646: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31901 + c001580c: 45c1 li a1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31907 +{ + c001580e: e426 sd s1,8(sp) + c0015810: e04a sd s2,0(sp) + c0015812: ec06 sd ra,24(sp) + c0015814: 8932 mv s2,a2 + c0015816: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31909 re = js_malloc(ctx, sizeof(*re)); - c0015648: e04ff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31902 + c0015818: d22ff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31910 if (!re) - c001564c: c519 beqz a0,c001565a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31904 + c001581c: c519 beqz a0,c001582a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31912 re->addr = addr; - c001564e: 01252423 sw s2,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31905 + c001581e: 01252423 sw s2,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31913 re->size = size; - c0015652: c544 sw s1,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31906 + c0015822: c544 sw s1,12(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31914 re->next = ls->first_reloc; - c0015654: 681c ld a5,16(s0) - c0015656: e11c sd a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31907 + c0015824: 681c ld a5,16(s0) + c0015826: e11c sd a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31915 ls->first_reloc = re; - c0015658: e808 sd a0,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31909 + c0015828: e808 sd a0,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31917 } - c001565a: 60e2 ld ra,24(sp) - c001565c: 6442 ld s0,16(sp) - c001565e: 64a2 ld s1,8(sp) - c0015660: 6902 ld s2,0(sp) - c0015662: 6105 addi sp,sp,32 - c0015664: 8082 ret + c001582a: 60e2 ld ra,24(sp) + c001582c: 6442 ld s0,16(sp) + c001582e: 64a2 ld s1,8(sp) + c0015830: 6902 ld s2,0(sp) + c0015832: 6105 addi sp,sp,32 + c0015834: 8082 ret -00000000c0015666 : +00000000c0015836 : js_typed_array_sort(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54384 { - c0015666: 7131 addi sp,sp,-192 - c0015668: f14a sd s2,160(sp) - c001566a: fd06 sd ra,184(sp) - c001566c: f922 sd s0,176(sp) - c001566e: f526 sd s1,168(sp) - c0015670: ed4e sd s3,152(sp) - c0015672: e952 sd s4,144(sp) - c0015674: e556 sd s5,136(sp) - c0015676: e15a sd s6,128(sp) - c0015678: e82e sd a1,16(sp) - c001567a: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54386 + c0015836: 7131 addi sp,sp,-192 + c0015838: f14a sd s2,160(sp) + c001583a: fd06 sd ra,184(sp) + c001583c: f922 sd s0,176(sp) + c001583e: f526 sd s1,168(sp) + c0015840: ed4e sd s3,152(sp) + c0015842: e952 sd s4,144(sp) + c0015844: e556 sd s5,136(sp) + c0015846: e15a sd s6,128(sp) + c0015848: e82e sd a1,16(sp) + c001584a: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54394 tsc.arr = this_val; - c001567c: e4ae sd a1,72(sp) - c001567e: e8b2 sd a2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54387 + c001584c: e4ae sd a1,72(sp) + c001584e: e8b2 sd a2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54395 tsc.cmp = argv[0]; - c0015680: 630c ld a1,0(a4) - c0015682: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54384 + c0015850: 630c ld a1,0(a4) + c0015852: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54392 tsc.ctx = ctx; - c0015684: fc2a sd a0,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54385 + c0015854: fc2a sd a0,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54393 tsc.exception = 0; - c0015686: c082 sw zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54387 + c0015856: c082 sw zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54395 tsc.cmp = argv[0]; - c0015688: ecae sd a1,88(sp) - c001568a: f0b2 sd a2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54389 + c0015858: ecae sd a1,88(sp) + c001585a: f0b2 sd a2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54397 if (!JS_IsUndefined(tsc.cmp) && check_function(ctx, tsc.cmp)) - c001568c: 0006071b sext.w a4,a2 - c0015690: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54376 + c001585c: 0006071b sext.w a4,a2 + c0015860: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54384 { - c0015692: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54389 + c0015862: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54397 if (!JS_IsUndefined(tsc.cmp) && check_function(ctx, tsc.cmp)) - c0015694: 02f70463 beq a4,a5,c00156bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54389 (discriminator 1) - c0015698: e11fd0ef jal ra,c00134a8 - c001569c: c105 beqz a0,c00156bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54468 + c0015864: 02f70463 beq a4,a5,c001588c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54397 (discriminator 1) + c0015868: d2ffd0ef jal ra,c0013596 + c001586c: c105 beqz a0,c001588c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54476 return JS_EXCEPTION; - c001569e: 4799 li a5,6 - c00156a0: f402 sd zero,40(sp) - c00156a2: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54509 (discriminator 1) -} - c00156a4: 70ea ld ra,184(sp) - c00156a6: 744a ld s0,176(sp) - c00156a8: 7522 ld a0,40(sp) - c00156aa: 75c2 ld a1,48(sp) - c00156ac: 74aa ld s1,168(sp) - c00156ae: 790a ld s2,160(sp) - c00156b0: 69ea ld s3,152(sp) - c00156b2: 6a4a ld s4,144(sp) - c00156b4: 6aaa ld s5,136(sp) - c00156b6: 6b0a ld s6,128(sp) - c00156b8: 6129 addi sp,sp,192 - c00156ba: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54391 + c001586e: 4799 li a5,6 + c0015870: f402 sd zero,40(sp) + c0015872: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54517 (discriminator 1) +} + c0015874: 70ea ld ra,184(sp) + c0015876: 744a ld s0,176(sp) + c0015878: 7522 ld a0,40(sp) + c001587a: 75c2 ld a1,48(sp) + c001587c: 74aa ld s1,168(sp) + c001587e: 790a ld s2,160(sp) + c0015880: 69ea ld s3,152(sp) + c0015882: 6a4a ld s4,144(sp) + c0015884: 6aaa ld s5,136(sp) + c0015886: 6b0a ld s6,128(sp) + c0015888: 6129 addi sp,sp,192 + c001588a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54399 len = js_typed_array_get_length_internal(ctx, this_val); - c00156bc: 65c2 ld a1,16(sp) - c00156be: 6662 ld a2,24(sp) - c00156c0: 854a mv a0,s2 - c00156c2: 955fe0ef jal ra,c0014016 - c00156c6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54392 + c001588c: 65c2 ld a1,16(sp) + c001588e: 6662 ld a2,24(sp) + c0015890: 854a mv a0,s2 + c0015892: 873fe0ef jal ra,c0014104 + c0015896: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54400 if (len < 0) - c00156c8: fc054be3 bltz a0,c001569e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54395 + c0015898: fc054be3 bltz a0,c001586e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54403 if (len > 1) { - c00156cc: 4785 li a5,1 - c00156ce: 1ea7d963 bge a5,a0,c00158c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54396 + c001589c: 4785 li a5,1 + c001589e: 1ea7d963 bge a5,a0,c0015a90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54404 p = JS_VALUE_GET_OBJ(this_val); - c00156d2: 6642 ld a2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54397 + c00158a2: 6642 ld a2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54405 switch (p->class_id) { - c00156d4: 46a9 li a3,10 - c00156d6: 00665783 lhu a5,6(a2) - c00156da: 0007871b sext.w a4,a5 - c00156de: 37ad addiw a5,a5,-21 - c00156e0: 03079593 slli a1,a5,0x30 - c00156e4: 91c1 srli a1,a1,0x30 - c00156e6: 16b6ef63 bltu a3,a1,c0015864 - c00156ea: 00048697 auipc a3,0x48 - c00156ee: 7b668693 addi a3,a3,1974 # c005dea0 - c00156f2: 00259793 slli a5,a1,0x2 - c00156f6: 97b6 add a5,a5,a3 - c00156f8: 439c lw a5,0(a5) - c00156fa: 97b6 add a5,a5,a3 - c00156fc: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54399 + c00158a4: 46a9 li a3,10 + c00158a6: 00665783 lhu a5,6(a2) + c00158aa: 0007871b sext.w a4,a5 + c00158ae: 37ad addiw a5,a5,-21 + c00158b0: 03079593 slli a1,a5,0x30 + c00158b4: 91c1 srli a1,a1,0x30 + c00158b6: 16b6ef63 bltu a3,a1,c0015a34 + c00158ba: 00049697 auipc a3,0x49 + c00158be: 84668693 addi a3,a3,-1978 # c005e100 + c00158c2: 00259793 slli a5,a1,0x2 + c00158c6: 97b6 add a5,a5,a3 + c00158c8: 439c lw a5,0(a5) + c00158ca: 97b6 add a5,a5,a3 + c00158cc: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54407 tsc.getfun = js_TA_get_int8; - c00156fe: fffef797 auipc a5,0xfffef - c0015702: 3d078793 addi a5,a5,976 # c0004ace - c0015706: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54400 + c00158ce: fffef797 auipc a5,0xfffef + c00158d2: 20078793 addi a5,a5,512 # c0004ace + c00158d6: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54408 cmpfun = js_TA_cmp_int8; - c0015708: fffef697 auipc a3,0xfffef - c001570c: 35668693 addi a3,a3,854 # c0004a5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54443 + c00158d8: fffef697 auipc a3,0xfffef + c00158dc: 18668693 addi a3,a3,390 # c0004a5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54451 elt_size = 1 << typed_array_size_log2(p->class_id); - c0015710: 372d addiw a4,a4,-21 - c0015712: 00052797 auipc a5,0x52 - c0015716: 82678793 addi a5,a5,-2010 # c0066f38 - c001571a: 97ba add a5,a5,a4 - c001571c: 0007ca83 lbu s5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54444 + c00158e0: 372d addiw a4,a4,-21 + c00158e2: 00052797 auipc a5,0x52 + c00158e6: 8b678793 addi a5,a5,-1866 # c0067198 + c00158ea: 97ba add a5,a5,a4 + c00158ec: 0007ca83 lbu s5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54452 if (!JS_IsUndefined(tsc.cmp)) { - c0015720: 5706 lw a4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54443 + c00158f0: 5706 lw a4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54451 elt_size = 1 << typed_array_size_log2(p->class_id); - c0015722: 4985 li s3,1 - c0015724: 01599b3b sllw s6,s3,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54444 + c00158f2: 4985 li s3,1 + c00158f4: 01599b3b sllw s6,s3,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54452 if (!JS_IsUndefined(tsc.cmp)) { - c0015728: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54442 + c00158f8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54450 array_ptr = p->u.array.u.ptr; - c001572a: 03863a03 ld s4,56(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54443 + c00158fa: 03863a03 ld s4,56(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54451 elt_size = 1 << typed_array_size_log2(p->class_id); - c001572e: 89da mv s3,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54444 + c00158fe: 89da mv s3,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54452 if (!JS_IsUndefined(tsc.cmp)) { - c0015730: 1ef70163 beq a4,a5,c0015912 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54450 + c0015900: 1ef70163 beq a4,a5,c0015ae2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54458 array_idx = js_malloc(ctx, len * sizeof(array_idx[0])); - c0015734: 00241593 slli a1,s0,0x2 - c0015738: 854a mv a0,s2 - c001573a: d12ff0ef jal ra,c0014c4c - c001573e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54451 + c0015904: 00241593 slli a1,s0,0x2 + c0015908: 854a mv a0,s2 + c001590a: c30ff0ef jal ra,c0014d3a + c001590e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54459 if (!array_idx) - c0015740: dd39 beqz a0,c001569e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54453 + c0015910: dd39 beqz a0,c001586e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54461 for(i = 0; i < len; i++) - c0015742: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54454 (discriminator 3) + c0015912: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54462 (discriminator 3) array_idx[i] = i; - c0015744: 00279713 slli a4,a5,0x2 - c0015748: 9726 add a4,a4,s1 - c001574a: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54453 (discriminator 3) + c0015914: 00279713 slli a4,a5,0x2 + c0015918: 9726 add a4,a4,s1 + c001591a: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54461 (discriminator 3) for(i = 0; i < len; i++) - c001574c: 0785 addi a5,a5,1 - c001574e: fe87ebe3 bltu a5,s0,c0015744 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54457 + c001591c: 0785 addi a5,a5,1 + c001591e: fe87ebe3 bltu a5,s0,c0015914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54465 rqsort(array_idx, len, sizeof(array_idx[0]), - c0015752: 1838 addi a4,sp,56 - c0015754: 0002a697 auipc a3,0x2a - c0015758: e1668693 addi a3,a3,-490 # c003f56a - c001575c: 4611 li a2,4 - c001575e: 85a2 mv a1,s0 - c0015760: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54455 + c0015922: 1838 addi a4,sp,56 + c0015924: 0002a697 auipc a3,0x2a + c0015928: e1668693 addi a3,a3,-490 # c003f73a + c001592c: 4611 li a2,4 + c001592e: 85a2 mv a1,s0 + c0015930: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54463 tsc.array_ptr = array_ptr; - c0015762: f8d2 sd s4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54456 + c0015932: f8d2 sd s4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54464 tsc.elt_size = elt_size; - c0015764: dcce sw s3,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54457 + c0015934: dcce sw s3,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54465 rqsort(array_idx, len, sizeof(array_idx[0]), - c0015766: 04b320ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54459 + c0015936: 04b320ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54467 if (tsc.exception) { - c001576a: 4786 lw a5,64(sp) - c001576c: c3f9 beqz a5,c0015832 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54460 + c001593a: 4786 lw a5,64(sp) + c001593c: c3f9 beqz a5,c0015a02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54468 if (tsc.exception == 1) - c001576e: 4705 li a4,1 - c0015770: 14e79463 bne a5,a4,c00158b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54467 + c001593e: 4705 li a4,1 + c0015940: 14e79463 bne a5,a4,c0015a88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54475 js_free(ctx, array_idx); - c0015774: 85a6 mv a1,s1 - c0015776: 854a mv a0,s2 - c0015778: ec2f10ef jal ra,c0006e3a - c001577c: b70d j c001569e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54404 - tsc.getfun = js_TA_get_uint8; - c001577e: fffef797 auipc a5,0xfffef - c0015782: 36278793 addi a5,a5,866 # c0004ae0 - c0015786: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54405 - cmpfun = js_TA_cmp_uint8; - c0015788: fffef697 auipc a3,0xfffef - c001578c: 2e268693 addi a3,a3,738 # c0004a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54406 - break; - c0015790: b741 j c0015710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54408 - tsc.getfun = js_TA_get_int16; - c0015792: fffef797 auipc a5,0xfffef - c0015796: 36078793 addi a5,a5,864 # c0004af2 - c001579a: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54409 - cmpfun = js_TA_cmp_int16; - c001579c: fffef697 auipc a3,0xfffef - c00157a0: 2da68693 addi a3,a3,730 # c0004a76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54410 - break; - c00157a4: b7b5 j c0015710 + c0015944: 85a6 mv a1,s1 + c0015946: 854a mv a0,s2 + c0015948: de0f10ef jal ra,c0006f28 + c001594c: b70d j c001586e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54412 - tsc.getfun = js_TA_get_uint16; - c00157a6: fffef797 auipc a5,0xfffef - c00157aa: 35e78793 addi a5,a5,862 # c0004b04 - c00157ae: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_uint8; + c001594e: fffef797 auipc a5,0xfffef + c0015952: 19278793 addi a5,a5,402 # c0004ae0 + c0015956: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54413 - cmpfun = js_TA_cmp_uint16; - c00157b0: fffef697 auipc a3,0xfffef - c00157b4: 2d268693 addi a3,a3,722 # c0004a82 + cmpfun = js_TA_cmp_uint8; + c0015958: fffef697 auipc a3,0xfffef + c001595c: 11268693 addi a3,a3,274 # c0004a6a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54414 break; - c00157b8: bfa1 j c0015710 + c0015960: b741 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54416 - tsc.getfun = js_TA_get_int32; - c00157ba: fffef797 auipc a5,0xfffef - c00157be: 35c78793 addi a5,a5,860 # c0004b16 - c00157c2: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_int16; + c0015962: fffef797 auipc a5,0xfffef + c0015966: 19078793 addi a5,a5,400 # c0004af2 + c001596a: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54417 - cmpfun = js_TA_cmp_int32; - c00157c4: fffef697 auipc a3,0xfffef - c00157c8: 2ca68693 addi a3,a3,714 # c0004a8e + cmpfun = js_TA_cmp_int16; + c001596c: fffef697 auipc a3,0xfffef + c0015970: 10a68693 addi a3,a3,266 # c0004a76 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54418 break; - c00157cc: b791 j c0015710 + c0015974: b7b5 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54420 - tsc.getfun = js_TA_get_uint32; - c00157ce: fffef797 auipc a5,0xfffef - c00157d2: 35878793 addi a5,a5,856 # c0004b26 - c00157d6: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_uint16; + c0015976: fffef797 auipc a5,0xfffef + c001597a: 18e78793 addi a5,a5,398 # c0004b04 + c001597e: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54421 - cmpfun = js_TA_cmp_uint32; - c00157d8: fffef697 auipc a3,0xfffef - c00157dc: 2c668693 addi a3,a3,710 # c0004a9e + cmpfun = js_TA_cmp_uint16; + c0015980: fffef697 auipc a3,0xfffef + c0015984: 10268693 addi a3,a3,258 # c0004a82 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54422 break; - c00157e0: bf05 j c0015710 + c0015988: bfa1 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54424 - tsc.getfun = js_TA_get_int64; - c00157e2: 00003797 auipc a5,0x3 - c00157e6: 52278793 addi a5,a5,1314 # c0018d04 - c00157ea: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_int32; + c001598a: fffef797 auipc a5,0xfffef + c001598e: 18c78793 addi a5,a5,396 # c0004b16 + c0015992: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54425 - cmpfun = js_TA_cmp_int64; - c00157ec: fffef697 auipc a3,0xfffef - c00157f0: 2c268693 addi a3,a3,706 # c0004aae + cmpfun = js_TA_cmp_int32; + c0015994: fffef697 auipc a3,0xfffef + c0015998: 0fa68693 addi a3,a3,250 # c0004a8e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54426 break; - c00157f4: bf31 j c0015710 + c001599c: b791 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54428 - tsc.getfun = js_TA_get_uint64; - c00157f6: 00003797 auipc a5,0x3 - c00157fa: 57c78793 addi a5,a5,1404 # c0018d72 - c00157fe: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_uint32; + c001599e: fffef797 auipc a5,0xfffef + c00159a2: 18878793 addi a5,a5,392 # c0004b26 + c00159a6: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54429 - cmpfun = js_TA_cmp_uint64; - c0015800: fffef697 auipc a3,0xfffef - c0015804: 2be68693 addi a3,a3,702 # c0004abe + cmpfun = js_TA_cmp_uint32; + c00159a8: fffef697 auipc a3,0xfffef + c00159ac: 0f668693 addi a3,a3,246 # c0004a9e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54430 break; - c0015808: b721 j c0015710 + c00159b0: bf05 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54432 - tsc.getfun = js_TA_get_float32; - c001580a: fffef797 auipc a5,0xfffef - c001580e: 34a78793 addi a5,a5,842 # c0004b54 - c0015812: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_int64; + c00159b2: 00003797 auipc a5,0x3 + c00159b6: 52278793 addi a5,a5,1314 # c0018ed4 + c00159ba: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54433 - cmpfun = js_TA_cmp_float32; - c0015814: ffff1697 auipc a3,0xffff1 - c0015818: 87868693 addi a3,a3,-1928 # c000608c + cmpfun = js_TA_cmp_int64; + c00159bc: fffef697 auipc a3,0xfffef + c00159c0: 0f268693 addi a3,a3,242 # c0004aae /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54434 break; - c001581c: bdd5 j c0015710 + c00159c4: bf31 j c00158e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54436 - tsc.getfun = js_TA_get_float64; - c001581e: fffef797 auipc a5,0xfffef - c0015822: 34a78793 addi a5,a5,842 # c0004b68 - c0015826: f4be sd a5,104(sp) + tsc.getfun = js_TA_get_uint64; + c00159c6: 00003797 auipc a5,0x3 + c00159ca: 57c78793 addi a5,a5,1404 # c0018f42 + c00159ce: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54437 - cmpfun = js_TA_cmp_float64; - c0015828: ffff1697 auipc a3,0xffff1 - c001582c: 85e68693 addi a3,a3,-1954 # c0006086 + cmpfun = js_TA_cmp_uint64; + c00159d0: fffef697 auipc a3,0xfffef + c00159d4: 0ee68693 addi a3,a3,238 # c0004abe /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54438 break; - c0015830: b5c5 j c0015710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54464 + c00159d8: b721 j c00158e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54440 + tsc.getfun = js_TA_get_float32; + c00159da: fffef797 auipc a5,0xfffef + c00159de: 17a78793 addi a5,a5,378 # c0004b54 + c00159e2: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54441 + cmpfun = js_TA_cmp_float32; + c00159e4: ffff0697 auipc a3,0xffff0 + c00159e8: 79668693 addi a3,a3,1942 # c000617a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54442 + break; + c00159ec: bdd5 j c00158e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54444 + tsc.getfun = js_TA_get_float64; + c00159ee: fffef797 auipc a5,0xfffef + c00159f2: 17a78793 addi a5,a5,378 # c0004b68 + c00159f6: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54445 + cmpfun = js_TA_cmp_float64; + c00159f8: ffff0697 auipc a3,0xffff0 + c00159fc: 77c68693 addi a3,a3,1916 # c0006174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54446 + break; + c0015a00: b5c5 j c00158e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54472 array_tmp = js_malloc(ctx, len * elt_size); - c0015832: 028b0633 mul a2,s6,s0 - c0015836: 854a mv a0,s2 - c0015838: 85b2 mv a1,a2 - c001583a: e432 sd a2,8(sp) - c001583c: c10ff0ef jal ra,c0014c4c - c0015840: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54465 + c0015a02: 028b0633 mul a2,s6,s0 + c0015a06: 854a mv a0,s2 + c0015a08: 85b2 mv a1,a2 + c0015a0a: e432 sd a2,8(sp) + c0015a0c: b2eff0ef jal ra,c0014d3a + c0015a10: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54473 if (!array_tmp) { - c0015842: d90d beqz a0,c0015774 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54470 + c0015a12: d90d beqz a0,c0015944 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54478 memcpy(array_tmp, array_ptr, len * elt_size); - c0015844: 6622 ld a2,8(sp) - c0015846: 85d2 mv a1,s4 - c0015848: 192410ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54471 + c0015a14: 6622 ld a2,8(sp) + c0015a16: 85d2 mv a1,s4 + c0015a18: 192410ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54479 switch(elt_size) { - c001584c: 4789 li a5,2 - c001584e: 0afa8263 beq s5,a5,c00158f2 - c0015852: 4791 li a5,4 - c0015854: 0167ca63 blt a5,s6,c0015868 - c0015858: 020a8c63 beqz s5,c0015890 - c001585c: 4705 li a4,1 - c001585e: 4781 li a5,0 - c0015860: 06ea8763 beq s5,a4,c00158ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54440 + c0015a1c: 4789 li a5,2 + c0015a1e: 0afa8263 beq s5,a5,c0015ac2 + c0015a22: 4791 li a5,4 + c0015a24: 0167ca63 blt a5,s6,c0015a38 + c0015a28: 020a8c63 beqz s5,c0015a60 + c0015a2c: 4705 li a4,1 + c0015a2e: 4781 li a5,0 + c0015a30: 06ea8763 beq s5,a4,c0015a9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54448 abort(); - c0015864: 7a73f0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54471 + c0015a34: 7a73f0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54479 switch(elt_size) { - c0015868: 470d li a4,3 - c001586a: 4781 li a5,0 - c001586c: feea9ce3 bne s5,a4,c0015864 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54492 (discriminator 3) + c0015a38: 470d li a4,3 + c0015a3a: 4781 li a5,0 + c0015a3c: feea9ce3 bne s5,a4,c0015a34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54500 (discriminator 3) j = array_idx[i]; - c0015870: 00279713 slli a4,a5,0x2 - c0015874: 9726 add a4,a4,s1 - c0015876: 00076703 lwu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54493 (discriminator 3) + c0015a40: 00279713 slli a4,a5,0x2 + c0015a44: 9726 add a4,a4,s1 + c0015a46: 00076703 lwu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54501 (discriminator 3) ((uint64_t *)array_ptr)[i] = ((uint64_t *)array_tmp)[j]; - c001587a: 070e slli a4,a4,0x3 - c001587c: 974e add a4,a4,s3 - c001587e: 6314 ld a3,0(a4) - c0015880: 00379713 slli a4,a5,0x3 - c0015884: 9752 add a4,a4,s4 - c0015886: e314 sd a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54491 (discriminator 3) + c0015a4a: 070e slli a4,a4,0x3 + c0015a4c: 974e add a4,a4,s3 + c0015a4e: 6314 ld a3,0(a4) + c0015a50: 00379713 slli a4,a5,0x3 + c0015a54: 9752 add a4,a4,s4 + c0015a56: e314 sd a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54499 (discriminator 3) for(i = 0; i < len; i++) { - c0015888: 0785 addi a5,a5,1 - c001588a: fe87e3e3 bltu a5,s0,c0015870 - c001588e: a00d j c00158b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54471 + c0015a58: 0785 addi a5,a5,1 + c0015a5a: fe87e3e3 bltu a5,s0,c0015a40 + c0015a5e: a00d j c0015a80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54479 switch(elt_size) { - c0015890: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54474 (discriminator 3) + c0015a60: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54482 (discriminator 3) j = array_idx[i]; - c0015892: 00279713 slli a4,a5,0x2 - c0015896: 9726 add a4,a4,s1 - c0015898: 00076703 lwu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54475 (discriminator 3) + c0015a62: 00279713 slli a4,a5,0x2 + c0015a66: 9726 add a4,a4,s1 + c0015a68: 00076703 lwu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54483 (discriminator 3) ((uint8_t *)array_ptr)[i] = ((uint8_t *)array_tmp)[j]; - c001589c: 974e add a4,a4,s3 - c001589e: 00074683 lbu a3,0(a4) - c00158a2: 00fa0733 add a4,s4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54473 (discriminator 3) + c0015a6c: 974e add a4,a4,s3 + c0015a6e: 00074683 lbu a3,0(a4) + c0015a72: 00fa0733 add a4,s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54481 (discriminator 3) for(i = 0; i < len; i++) { - c00158a6: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54475 (discriminator 3) + c0015a76: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54483 (discriminator 3) ((uint8_t *)array_ptr)[i] = ((uint8_t *)array_tmp)[j]; - c00158a8: 00d70023 sb a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54473 (discriminator 3) + c0015a78: 00d70023 sb a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54481 (discriminator 3) for(i = 0; i < len; i++) { - c00158ac: fe87e3e3 bltu a5,s0,c0015892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54499 + c0015a7c: fe87e3e3 bltu a5,s0,c0015a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54507 js_free(ctx, array_tmp); - c00158b0: 85ce mv a1,s3 - c00158b2: 854a mv a0,s2 - c00158b4: d86f10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54501 + c0015a80: 85ce mv a1,s3 + c0015a82: 854a mv a0,s2 + c0015a84: ca4f10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54509 js_free(ctx, array_idx); - c00158b8: 85a6 mv a1,s1 - c00158ba: 854a mv a0,s2 - c00158bc: d7ef10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54508 + c0015a88: 85a6 mv a1,s1 + c0015a8a: 854a mv a0,s2 + c0015a8c: c9cf10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54516 return JS_DupValue(ctx, this_val); - c00158c0: 6542 ld a0,16(sp) - c00158c2: 65e2 ld a1,24(sp) - c00158c4: dabf00ef jal ra,c000666e - c00158c8: f42a sd a0,40(sp) - c00158ca: f82e sd a1,48(sp) - c00158cc: bbe1 j c00156a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54480 (discriminator 3) + c0015a90: 6542 ld a0,16(sp) + c0015a92: 65e2 ld a1,24(sp) + c0015a94: cc9f00ef jal ra,c000675c + c0015a98: f42a sd a0,40(sp) + c0015a9a: f82e sd a1,48(sp) + c0015a9c: bbe1 j c0015874 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54488 (discriminator 3) j = array_idx[i]; - c00158ce: 00279713 slli a4,a5,0x2 - c00158d2: 9726 add a4,a4,s1 - c00158d4: 00076703 lwu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54481 (discriminator 3) + c0015a9e: 00279713 slli a4,a5,0x2 + c0015aa2: 9726 add a4,a4,s1 + c0015aa4: 00076703 lwu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54489 (discriminator 3) ((uint16_t *)array_ptr)[i] = ((uint16_t *)array_tmp)[j]; - c00158d8: 0706 slli a4,a4,0x1 - c00158da: 974e add a4,a4,s3 - c00158dc: 00075683 lhu a3,0(a4) - c00158e0: 00179713 slli a4,a5,0x1 - c00158e4: 9752 add a4,a4,s4 - c00158e6: 00d71023 sh a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54479 (discriminator 3) + c0015aa8: 0706 slli a4,a4,0x1 + c0015aaa: 974e add a4,a4,s3 + c0015aac: 00075683 lhu a3,0(a4) + c0015ab0: 00179713 slli a4,a5,0x1 + c0015ab4: 9752 add a4,a4,s4 + c0015ab6: 00d71023 sh a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54487 (discriminator 3) for(i = 0; i < len; i++) { - c00158ea: 0785 addi a5,a5,1 - c00158ec: fe87e1e3 bltu a5,s0,c00158ce - c00158f0: b7c1 j c00158b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54471 + c0015aba: 0785 addi a5,a5,1 + c0015abc: fe87e1e3 bltu a5,s0,c0015a9e + c0015ac0: b7c1 j c0015a80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54479 switch(elt_size) { - c00158f2: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54486 (discriminator 3) + c0015ac2: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54494 (discriminator 3) j = array_idx[i]; - c00158f4: 00271693 slli a3,a4,0x2 - c00158f8: 00d487b3 add a5,s1,a3 - c00158fc: 0007e783 lwu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54487 (discriminator 3) + c0015ac4: 00271693 slli a3,a4,0x2 + c0015ac8: 00d487b3 add a5,s1,a3 + c0015acc: 0007e783 lwu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54495 (discriminator 3) ((uint32_t *)array_ptr)[i] = ((uint32_t *)array_tmp)[j]; - c0015900: 96d2 add a3,a3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54485 (discriminator 3) + c0015ad0: 96d2 add a3,a3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54493 (discriminator 3) for(i = 0; i < len; i++) { - c0015902: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54487 (discriminator 3) + c0015ad2: 0705 addi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54495 (discriminator 3) ((uint32_t *)array_ptr)[i] = ((uint32_t *)array_tmp)[j]; - c0015904: 078a slli a5,a5,0x2 - c0015906: 97ce add a5,a5,s3 - c0015908: 439c lw a5,0(a5) - c001590a: c29c sw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54485 (discriminator 3) + c0015ad4: 078a slli a5,a5,0x2 + c0015ad6: 97ce add a5,a5,s3 + c0015ad8: 439c lw a5,0(a5) + c0015ada: c29c sw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54493 (discriminator 3) for(i = 0; i < len; i++) { - c001590c: fe8764e3 bltu a4,s0,c00158f4 - c0015910: b745 j c00158b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54503 + c0015adc: fe8764e3 bltu a4,s0,c0015ac4 + c0015ae0: b745 j c0015a80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54511 rqsort(array_ptr, len, elt_size, cmpfun, &tsc); - c0015912: 1838 addi a4,sp,56 - c0015914: 865a mv a2,s6 - c0015916: 85a2 mv a1,s0 - c0015918: 8552 mv a0,s4 - c001591a: 696320ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54504 + c0015ae2: 1838 addi a4,sp,56 + c0015ae4: 865a mv a2,s6 + c0015ae6: 85a2 mv a1,s0 + c0015ae8: 8552 mv a0,s4 + c0015aea: 696320ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54512 if (tsc.exception) - c001591e: 4786 lw a5,64(sp) - c0015920: d3c5 beqz a5,c00158c0 - c0015922: bbb5 j c001569e + c0015aee: 4786 lw a5,64(sp) + c0015af0: d3c5 beqz a5,c0015a90 + c0015af2: bbb5 j c001586e -00000000c0015924 : +00000000c0015af4 : js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4408 static no_inline JSShape *js_new_shape2(JSContext *ctx, JSObject *proto, - c0015924: 7159 addi sp,sp,-112 - c0015926: f486 sd ra,104(sp) - c0015928: e8ca sd s2,80(sp) - c001592a: e4ce sd s3,72(sp) - c001592c: e0d2 sd s4,64(sp) - c001592e: fc56 sd s5,56(sp) - c0015930: f0a2 sd s0,96(sp) - c0015932: eca6 sd s1,88(sp) - c0015934: f85a sd s6,48(sp) - c0015936: f45e sd s7,40(sp) - c0015938: f062 sd s8,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4403 + c0015af4: 7159 addi sp,sp,-112 + c0015af6: f486 sd ra,104(sp) + c0015af8: e8ca sd s2,80(sp) + c0015afa: e4ce sd s3,72(sp) + c0015afc: e0d2 sd s4,64(sp) + c0015afe: fc56 sd s5,56(sp) + c0015b00: f0a2 sd s0,96(sp) + c0015b02: eca6 sd s1,88(sp) + c0015b04: f85a sd s6,48(sp) + c0015b06: f45e sd s7,40(sp) + c0015b08: f062 sd s8,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4411 JSRuntime *rt = ctx->rt; - c001593a: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4400 + c0015b0a: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4408 static no_inline JSShape *js_new_shape2(JSContext *ctx, JSObject *proto, - c001593c: 8a2a mv s4,a0 - c001593e: 89ae mv s3,a1 - c0015940: 8ab2 mv s5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4407 + c0015b0c: 8a2a mv s4,a0 + c0015b0e: 89ae mv s3,a1 + c0015b10: 8ab2 mv s5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4415 _d("js_new_shape2: a="); _d(debug_expr); _d("\n"); //// - c0015942: 00048597 auipc a1,0x48 - c0015946: 58e58593 addi a1,a1,1422 # c005ded0 - c001594a: 4645 li a2,17 - c001594c: 4505 li a0,1 - c001594e: 4fb410ef jal ra,c0057648 - c0015952: 000eb917 auipc s2,0xeb - c0015956: 79e90913 addi s2,s2,1950 # c01010f0 - c001595a: 00093583 ld a1,0(s2) - c001595e: 852e mv a0,a1 - c0015960: e42e sd a1,8(sp) - c0015962: 04e410ef jal ra,c00569b0 - c0015966: 65a2 ld a1,8(sp) - c0015968: 862a mv a2,a0 - c001596a: 4505 li a0,1 - c001596c: 4dd410ef jal ra,c0057648 - c0015970: 4605 li a2,1 - c0015972: 0005b597 auipc a1,0x5b - c0015976: 1ce58593 addi a1,a1,462 # c0070b40 - c001597a: 4505 li a0,1 - c001597c: 4cd410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4409 + c0015b12: 00048597 auipc a1,0x48 + c0015b16: 61e58593 addi a1,a1,1566 # c005e130 + c0015b1a: 4645 li a2,17 + c0015b1c: 4505 li a0,1 + c0015b1e: 4fb410ef jal ra,c0057818 + c0015b22: 000eb917 auipc s2,0xeb + c0015b26: 5ce90913 addi s2,s2,1486 # c01010f0 + c0015b2a: 00093583 ld a1,0(s2) + c0015b2e: 852e mv a0,a1 + c0015b30: e42e sd a1,8(sp) + c0015b32: 04e410ef jal ra,c0056b80 + c0015b36: 65a2 ld a1,8(sp) + c0015b38: 862a mv a2,a0 + c0015b3a: 4505 li a0,1 + c0015b3c: 4dd410ef jal ra,c0057818 + c0015b40: 4605 li a2,1 + c0015b42: 0005b597 auipc a1,0x5b + c0015b46: 25e58593 addi a1,a1,606 # c0070da0 + c0015b4a: 4505 li a0,1 + c0015b4c: 4cd410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4417 if (2 * (rt->shape_hash_count + 1) > rt->shape_hash_size) { - c0015980: 1804a783 lw a5,384(s1) - c0015984: 17c4a703 lw a4,380(s1) - c0015988: 2785 addiw a5,a5,1 - c001598a: 0017979b slliw a5,a5,0x1 - c001598e: 04f75563 bge a4,a5,c00159d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4410 + c0015b50: 1804a783 lw a5,384(s1) + c0015b54: 17c4a703 lw a4,380(s1) + c0015b58: 2785 addiw a5,a5,1 + c0015b5a: 0017979b slliw a5,a5,0x1 + c0015b5e: 04f75563 bge a4,a5,c0015ba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4418 resize_shape_hash(rt, rt->shape_hash_bits + 1); - c0015992: 1784ab83 lw s7,376(s1) + c0015b62: 1784ab83 lw s7,376(s1) resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4357 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4365 new_shape_hash_size = 1 << new_shape_hash_bits; - c0015996: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4358 + c0015b66: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4366 new_shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c0015998: 8526 mv a0,s1 + c0015b68: 8526 mv a0,s1 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4418 resize_shape_hash(rt, rt->shape_hash_bits + 1); - c001599a: 001b8c1b addiw s8,s7,1 + c0015b6a: 001b8c1b addiw s8,s7,1 resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4357 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4365 new_shape_hash_size = 1 << new_shape_hash_bits; - c001599e: 018b15bb sllw a1,s6,s8 - c00159a2: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4358 + c0015b6e: 018b15bb sllw a1,s6,s8 + c0015b72: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4366 new_shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c00159a4: 058e slli a1,a1,0x3 - c00159a6: bc0f10ef jal ra,c0006d66 + c0015b74: 058e slli a1,a1,0x3 + c0015b76: adef10ef jal ra,c0006e54 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4418 resize_shape_hash(rt, rt->shape_hash_bits + 1); - c00159aa: 8be2 mv s7,s8 + c0015b7a: 8be2 mv s7,s8 resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4366 new_shape_hash = js_mallocz_rt(rt, sizeof(rt->shape_hash[0]) * - c00159ac: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4360 + c0015b7c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4368 if (!new_shape_hash) - c00159ae: c50d beqz a0,c00159d8 + c0015b7e: c50d beqz a0,c0015ba8 get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c00159b0: 02000613 li a2,32 + c0015b80: 02000613 li a2,32 resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4370 for(i = 0; i < rt->shape_hash_size; i++) { - c00159b4: 4681 li a3,0 + c0015b84: 4681 li a3,0 get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c00159b6: 4186063b subw a2,a2,s8 + c0015b86: 4186063b subw a2,a2,s8 resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4370 for(i = 0; i < rt->shape_hash_size; i++) { - c00159ba: 17c4a783 lw a5,380(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4363 + c0015b8a: 17c4a783 lw a5,380(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4371 for(sh = rt->shape_hash[i]; sh != NULL; sh = sh_next) { - c00159be: 1884b583 ld a1,392(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4362 - for(i = 0; i < rt->shape_hash_size; i++) { - c00159c2: 26f6c563 blt a3,a5,c0015c2c + c0015b8e: 1884b583 ld a1,392(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4370 + for(i = 0; i < rt->shape_hash_size; i++) { + c0015b92: 26f6c563 blt a3,a5,c0015dfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4378 js_free_rt(rt, rt->shape_hash); - c00159c6: 8526 mv a0,s1 - c00159c8: 9def10ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4371 + c0015b96: 8526 mv a0,s1 + c0015b98: 8fcf10ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4379 rt->shape_hash_bits = new_shape_hash_bits; - c00159cc: 1774ac23 sw s7,376(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4372 + c0015b9c: 1774ac23 sw s7,376(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4380 rt->shape_hash_size = new_shape_hash_size; - c00159d0: 1764ae23 sw s6,380(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4373 + c0015ba0: 1764ae23 sw s6,380(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4381 rt->shape_hash = new_shape_hash; - c00159d4: 1884b423 sd s0,392(s1) + c0015ba4: 1884b423 sd s0,392(s1) js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4412 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4420 _d("js_new_shape2: b="); _d(debug_expr); _d("\n"); //// - c00159d8: 4645 li a2,17 - c00159da: 00048597 auipc a1,0x48 - c00159de: 50e58593 addi a1,a1,1294 # c005dee8 - c00159e2: 4505 li a0,1 - c00159e4: 465410ef jal ra,c0057648 - c00159e8: 00093583 ld a1,0(s2) - c00159ec: 852e mv a0,a1 - c00159ee: e42e sd a1,8(sp) - c00159f0: 7c1400ef jal ra,c00569b0 - c00159f4: 65a2 ld a1,8(sp) - c00159f6: 862a mv a2,a0 - c00159f8: 4505 li a0,1 - c00159fa: 44f410ef jal ra,c0057648 - c00159fe: 4605 li a2,1 - c0015a00: 0005b597 auipc a1,0x5b - c0015a04: 14058593 addi a1,a1,320 # c0070b40 - c0015a08: 4505 li a0,1 - c0015a0a: 43f410ef jal ra,c0057648 + c0015ba8: 4645 li a2,17 + c0015baa: 00048597 auipc a1,0x48 + c0015bae: 59e58593 addi a1,a1,1438 # c005e148 + c0015bb2: 4505 li a0,1 + c0015bb4: 465410ef jal ra,c0057818 + c0015bb8: 00093583 ld a1,0(s2) + c0015bbc: 852e mv a0,a1 + c0015bbe: e42e sd a1,8(sp) + c0015bc0: 7c1400ef jal ra,c0056b80 + c0015bc4: 65a2 ld a1,8(sp) + c0015bc6: 862a mv a2,a0 + c0015bc8: 4505 li a0,1 + c0015bca: 44f410ef jal ra,c0057818 + c0015bce: 4605 li a2,1 + c0015bd0: 0005b597 auipc a1,0x5b + c0015bd4: 1d058593 addi a1,a1,464 # c0070da0 + c0015bd8: 4505 li a0,1 + c0015bda: 43f410ef jal ra,c0057818 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c0015a0e: 003a9593 slli a1,s5,0x3 + c0015bde: 003a9593 slli a1,s5,0x3 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4422 sh_alloc = js_malloc(ctx, get_shape_size(hash_size, prop_size)); - c0015a12: 05058593 addi a1,a1,80 - c0015a16: 8552 mv a0,s4 - c0015a18: a34ff0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4415 + c0015be2: 05058593 addi a1,a1,80 + c0015be6: 8552 mv a0,s4 + c0015be8: 952ff0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4423 _d("js_new_shape2: c="); _d(debug_expr); _d("\n"); //// - c0015a1c: 4645 li a2,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4414 + c0015bec: 4645 li a2,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4422 sh_alloc = js_malloc(ctx, get_shape_size(hash_size, prop_size)); - c0015a1e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4415 + c0015bee: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4423 _d("js_new_shape2: c="); _d(debug_expr); _d("\n"); //// - c0015a20: 00048597 auipc a1,0x48 - c0015a24: 4e058593 addi a1,a1,1248 # c005df00 - c0015a28: 4505 li a0,1 - c0015a2a: 41f410ef jal ra,c0057648 - c0015a2e: 00093583 ld a1,0(s2) - c0015a32: 852e mv a0,a1 - c0015a34: e42e sd a1,8(sp) - c0015a36: 77b400ef jal ra,c00569b0 - c0015a3a: 65a2 ld a1,8(sp) - c0015a3c: 862a mv a2,a0 - c0015a3e: 4505 li a0,1 - c0015a40: 409410ef jal ra,c0057648 - c0015a44: 4605 li a2,1 - c0015a46: 0005b597 auipc a1,0x5b - c0015a4a: 0fa58593 addi a1,a1,250 # c0070b40 - c0015a4e: 4505 li a0,1 - c0015a50: 3f9410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4416 + c0015bf0: 00048597 auipc a1,0x48 + c0015bf4: 57058593 addi a1,a1,1392 # c005e160 + c0015bf8: 4505 li a0,1 + c0015bfa: 41f410ef jal ra,c0057818 + c0015bfe: 00093583 ld a1,0(s2) + c0015c02: 852e mv a0,a1 + c0015c04: e42e sd a1,8(sp) + c0015c06: 77b400ef jal ra,c0056b80 + c0015c0a: 65a2 ld a1,8(sp) + c0015c0c: 862a mv a2,a0 + c0015c0e: 4505 li a0,1 + c0015c10: 409410ef jal ra,c0057818 + c0015c14: 4605 li a2,1 + c0015c16: 0005b597 auipc a1,0x5b + c0015c1a: 18a58593 addi a1,a1,394 # c0070da0 + c0015c1e: 4505 li a0,1 + c0015c20: 3f9410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4424 if (!sh_alloc) - c0015a54: 1a040f63 beqz s0,c0015c12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4419 + c0015c24: 1a040f63 beqz s0,c0015de2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4427 _d("js_new_shape2: d="); _d(debug_expr); _d("\n"); //// - c0015a58: 4645 li a2,17 - c0015a5a: 00048597 auipc a1,0x48 - c0015a5e: 4be58593 addi a1,a1,1214 # c005df18 - c0015a62: 4505 li a0,1 - c0015a64: 3e5410ef jal ra,c0057648 - c0015a68: 00093583 ld a1,0(s2) + c0015c28: 4645 li a2,17 + c0015c2a: 00048597 auipc a1,0x48 + c0015c2e: 54e58593 addi a1,a1,1358 # c005e178 + c0015c32: 4505 li a0,1 + c0015c34: 3e5410ef jal ra,c0057818 + c0015c38: 00093583 ld a1,0(s2) get_shape_from_alloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4308 return (JSShape *)(void *)((uint32_t *)sh_alloc + hash_size); - c0015a6c: 01040b13 addi s6,s0,16 + c0015c3c: 01040b13 addi s6,s0,16 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4419 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4427 _d("js_new_shape2: d="); _d(debug_expr); _d("\n"); //// - c0015a70: 852e mv a0,a1 - c0015a72: e42e sd a1,8(sp) - c0015a74: 73d400ef jal ra,c00569b0 - c0015a78: 65a2 ld a1,8(sp) - c0015a7a: 862a mv a2,a0 - c0015a7c: 4505 li a0,1 - c0015a7e: 3cb410ef jal ra,c0057648 - c0015a82: 4605 li a2,1 - c0015a84: 0005b597 auipc a1,0x5b - c0015a88: 0bc58593 addi a1,a1,188 # c0070b40 - c0015a8c: 4505 li a0,1 - c0015a8e: 3bb410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4420 + c0015c40: 852e mv a0,a1 + c0015c42: e42e sd a1,8(sp) + c0015c44: 73d400ef jal ra,c0056b80 + c0015c48: 65a2 ld a1,8(sp) + c0015c4a: 862a mv a2,a0 + c0015c4c: 4505 li a0,1 + c0015c4e: 3cb410ef jal ra,c0057818 + c0015c52: 4605 li a2,1 + c0015c54: 0005b597 auipc a1,0x5b + c0015c58: 14c58593 addi a1,a1,332 # c0070da0 + c0015c5c: 4505 li a0,1 + c0015c5e: 3bb410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4428 sh->header.ref_count = 1; - c0015a92: 4785 li a5,1 - c0015a94: c81c sw a5,16(s0) + c0015c62: 4785 li a5,1 + c0015c64: c81c sw a5,16(s0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0015a96: 4789 li a5,2 - c0015a98: 00f40a23 sb a5,20(s0) + c0015c66: 4789 li a5,2 + c0015c68: 00f40a23 sb a5,20(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0015a9c: 64d8 ld a4,136(s1) + c0015c6c: 64d8 ld a4,136(s1) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0015a9e: 01840793 addi a5,s0,24 + c0015c6e: 01840793 addi a5,s0,24 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4430 _d("js_new_shape2: e="); _d(debug_expr); _d("\n"); //// - c0015aa2: 4645 li a2,17 + c0015c72: 4645 li a2,17 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015aa4: e71c sd a5,8(a4) + c0015c74: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015aa6: ec18 sd a4,24(s0) + c0015c76: ec18 sd a4,24(s0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0015aa8: 08848713 addi a4,s1,136 + c0015c78: 08848713 addi a4,s1,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015aac: f018 sd a4,32(s0) + c0015c7c: f018 sd a4,32(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0015aae: e4dc sd a5,136(s1) + c0015c7e: e4dc sd a5,136(s1) js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4430 _d("js_new_shape2: e="); _d(debug_expr); _d("\n"); //// - c0015ab0: 00048597 auipc a1,0x48 - c0015ab4: 48058593 addi a1,a1,1152 # c005df30 - c0015ab8: 4505 li a0,1 - c0015aba: 38f410ef jal ra,c0057648 - c0015abe: 00093583 ld a1,0(s2) - c0015ac2: 852e mv a0,a1 - c0015ac4: e42e sd a1,8(sp) - c0015ac6: 6eb400ef jal ra,c00569b0 - c0015aca: 65a2 ld a1,8(sp) - c0015acc: 862a mv a2,a0 - c0015ace: 4505 li a0,1 - c0015ad0: 379410ef jal ra,c0057648 - c0015ad4: 4605 li a2,1 - c0015ad6: 0005b597 auipc a1,0x5b - c0015ada: 06a58593 addi a1,a1,106 # c0070b40 - c0015ade: 4505 li a0,1 - c0015ae0: 369410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4423 + c0015c80: 00048597 auipc a1,0x48 + c0015c84: 51058593 addi a1,a1,1296 # c005e190 + c0015c88: 4505 li a0,1 + c0015c8a: 38f410ef jal ra,c0057818 + c0015c8e: 00093583 ld a1,0(s2) + c0015c92: 852e mv a0,a1 + c0015c94: e42e sd a1,8(sp) + c0015c96: 6eb400ef jal ra,c0056b80 + c0015c9a: 65a2 ld a1,8(sp) + c0015c9c: 862a mv a2,a0 + c0015c9e: 4505 li a0,1 + c0015ca0: 379410ef jal ra,c0057818 + c0015ca4: 4605 li a2,1 + c0015ca6: 0005b597 auipc a1,0x5b + c0015caa: 0fa58593 addi a1,a1,250 # c0070da0 + c0015cae: 4505 li a0,1 + c0015cb0: 369410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4431 if (proto) - c0015ae4: 00098663 beqz s3,c0015af0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4424 + c0015cb4: 00098663 beqz s3,c0015cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4432 JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, proto)); - c0015ae8: 854e mv a0,s3 - c0015aea: 55fd li a1,-1 - c0015aec: b83f00ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4425 + c0015cb8: 854e mv a0,s3 + c0015cba: 55fd li a1,-1 + c0015cbc: aa1f00ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4433 _d("js_new_shape2: f="); _d(debug_expr); _d("\n"); //// - c0015af0: 4645 li a2,17 - c0015af2: 00048597 auipc a1,0x48 - c0015af6: 45658593 addi a1,a1,1110 # c005df48 - c0015afa: 4505 li a0,1 - c0015afc: 34d410ef jal ra,c0057648 - c0015b00: 00093583 ld a1,0(s2) - c0015b04: 852e mv a0,a1 - c0015b06: e42e sd a1,8(sp) - c0015b08: 6a9400ef jal ra,c00569b0 - c0015b0c: 65a2 ld a1,8(sp) - c0015b0e: 862a mv a2,a0 - c0015b10: 4505 li a0,1 - c0015b12: 337410ef jal ra,c0057648 - c0015b16: 4605 li a2,1 - c0015b18: 0005b597 auipc a1,0x5b - c0015b1c: 02858593 addi a1,a1,40 # c0070b40 - c0015b20: 4505 li a0,1 - c0015b22: 327410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4427 + c0015cc0: 4645 li a2,17 + c0015cc2: 00048597 auipc a1,0x48 + c0015cc6: 4e658593 addi a1,a1,1254 # c005e1a8 + c0015cca: 4505 li a0,1 + c0015ccc: 34d410ef jal ra,c0057818 + c0015cd0: 00093583 ld a1,0(s2) + c0015cd4: 852e mv a0,a1 + c0015cd6: e42e sd a1,8(sp) + c0015cd8: 6a9400ef jal ra,c0056b80 + c0015cdc: 65a2 ld a1,8(sp) + c0015cde: 862a mv a2,a0 + c0015ce0: 4505 li a0,1 + c0015ce2: 337410ef jal ra,c0057818 + c0015ce6: 4605 li a2,1 + c0015ce8: 0005b597 auipc a1,0x5b + c0015cec: 0b858593 addi a1,a1,184 # c0070da0 + c0015cf0: 4505 li a0,1 + c0015cf2: 327410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4435 memset(prop_hash_end(sh) - hash_size, 0, sizeof(prop_hash_end(sh)[0]) * - c0015b26: 4641 li a2,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4426 + c0015cf6: 4641 li a2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4434 sh->proto = proto; - c0015b28: 05343423 sd s3,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4427 + c0015cf8: 05343423 sd s3,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4435 memset(prop_hash_end(sh) - hash_size, 0, sizeof(prop_hash_end(sh)[0]) * - c0015b2c: 4581 li a1,0 - c0015b2e: 8522 mv a0,s0 - c0015b30: 541400ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4429 + c0015cfc: 4581 li a1,0 + c0015cfe: 8522 mv a0,s0 + c0015d00: 541400ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4437 _d("js_new_shape2: g="); _d(debug_expr); _d("\n"); //// - c0015b34: 4645 li a2,17 - c0015b36: 00048597 auipc a1,0x48 - c0015b3a: 42a58593 addi a1,a1,1066 # c005df60 - c0015b3e: 4505 li a0,1 - c0015b40: 309410ef jal ra,c0057648 - c0015b44: 00093583 ld a1,0(s2) - c0015b48: 852e mv a0,a1 - c0015b4a: e42e sd a1,8(sp) - c0015b4c: 665400ef jal ra,c00569b0 - c0015b50: 65a2 ld a1,8(sp) - c0015b52: 862a mv a2,a0 - c0015b54: 4505 li a0,1 - c0015b56: 2f3410ef jal ra,c0057648 - c0015b5a: 4605 li a2,1 - c0015b5c: 0005b597 auipc a1,0x5b - c0015b60: fe458593 addi a1,a1,-28 # c0070b40 - c0015b64: 4505 li a0,1 - c0015b66: 2e3410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4430 + c0015d04: 4645 li a2,17 + c0015d06: 00048597 auipc a1,0x48 + c0015d0a: 4ba58593 addi a1,a1,1210 # c005e1c0 + c0015d0e: 4505 li a0,1 + c0015d10: 309410ef jal ra,c0057818 + c0015d14: 00093583 ld a1,0(s2) + c0015d18: 852e mv a0,a1 + c0015d1a: e42e sd a1,8(sp) + c0015d1c: 665400ef jal ra,c0056b80 + c0015d20: 65a2 ld a1,8(sp) + c0015d22: 862a mv a2,a0 + c0015d24: 4505 li a0,1 + c0015d26: 2f3410ef jal ra,c0057818 + c0015d2a: 4605 li a2,1 + c0015d2c: 0005b597 auipc a1,0x5b + c0015d30: 07458593 addi a1,a1,116 # c0070da0 + c0015d34: 4505 li a0,1 + c0015d36: 2e3410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4438 sh->prop_hash_mask = hash_size - 1; - c0015b6a: 478d li a5,3 + c0015d3a: 478d li a5,3 shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c0015b6c: 9e370737 lui a4,0x9e370 - c0015b70: 2705 addiw a4,a4,1 + c0015d3c: 9e370737 lui a4,0x9e370 + c0015d40: 2705 addiw a4,a4,1 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4438 sh->prop_hash_mask = hash_size - 1; - c0015b72: d81c sw a5,48(s0) + c0015d42: d81c sw a5,48(s0) shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c0015b74: 0019879b addiw a5,s3,1 - c0015b78: 02e787bb mulw a5,a5,a4 + c0015d44: 0019879b addiw a5,s3,1 + c0015d48: 02e787bb mulw a5,a5,a4 shape_initial_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4355 h = shape_hash(h, (uint64_t)(uintptr_t)proto >> 32); - c0015b7c: 0209d993 srli s3,s3,0x20 + c0015d4c: 0209d993 srli s3,s3,0x20 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4437 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4445 _d("js_new_shape2: h="); _d(debug_expr); _d("\n"); //// - c0015b80: 4645 li a2,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4431 + c0015d50: 4645 li a2,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4439 sh->prop_size = prop_size; - c0015b82: 03542a23 sw s5,52(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4432 + c0015d52: 03542a23 sw s5,52(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4440 sh->prop_count = 0; - c0015b86: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4437 + c0015d56: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4445 _d("js_new_shape2: h="); _d(debug_expr); _d("\n"); //// - c0015b8a: 00048597 auipc a1,0x48 - c0015b8e: 3ee58593 addi a1,a1,1006 # c005df78 - c0015b92: 4505 li a0,1 + c0015d5a: 00048597 auipc a1,0x48 + c0015d5e: 47e58593 addi a1,a1,1150 # c005e1d8 + c0015d62: 4505 li a0,1 shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c0015b94: 013789bb addw s3,a5,s3 - c0015b98: 02e989bb mulw s3,s3,a4 + c0015d64: 013789bb addw s3,a5,s3 + c0015d68: 02e989bb mulw s3,s3,a4 js_new_shape2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4436 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4444 sh->hash = shape_initial_hash(proto); - c0015b9c: 03342623 sw s3,44(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4437 + c0015d6c: 03342623 sw s3,44(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4445 _d("js_new_shape2: h="); _d(debug_expr); _d("\n"); //// - c0015ba0: 2a9410ef jal ra,c0057648 - c0015ba4: 00093583 ld a1,0(s2) - c0015ba8: 852e mv a0,a1 - c0015baa: e42e sd a1,8(sp) - c0015bac: 605400ef jal ra,c00569b0 - c0015bb0: 65a2 ld a1,8(sp) - c0015bb2: 862a mv a2,a0 - c0015bb4: 4505 li a0,1 - c0015bb6: 293410ef jal ra,c0057648 - c0015bba: 4605 li a2,1 - c0015bbc: 0005b597 auipc a1,0x5b - c0015bc0: f8458593 addi a1,a1,-124 # c0070b40 - c0015bc4: 4505 li a0,1 - c0015bc6: 283410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4438 + c0015d70: 2a9410ef jal ra,c0057818 + c0015d74: 00093583 ld a1,0(s2) + c0015d78: 852e mv a0,a1 + c0015d7a: e42e sd a1,8(sp) + c0015d7c: 605400ef jal ra,c0056b80 + c0015d80: 65a2 ld a1,8(sp) + c0015d82: 862a mv a2,a0 + c0015d84: 4505 li a0,1 + c0015d86: 293410ef jal ra,c0057818 + c0015d8a: 4605 li a2,1 + c0015d8c: 0005b597 auipc a1,0x5b + c0015d90: 01458593 addi a1,a1,20 # c0070da0 + c0015d94: 4505 li a0,1 + c0015d96: 283410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4446 sh->is_hashed = TRUE; - c0015bca: 4785 li a5,1 - c0015bcc: 02f41423 sh a5,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4440 + c0015d9a: 4785 li a5,1 + c0015d9c: 02f41423 sh a5,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4448 js_shape_hash_link(ctx->rt, sh); - c0015bd0: 018a3503 ld a0,24(s4) - c0015bd4: 85da mv a1,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4442 + c0015da0: 018a3503 ld a0,24(s4) + c0015da4: 85da mv a1,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4450 return sh; - c0015bd6: 845a mv s0,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4440 + c0015da6: 845a mv s0,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4448 js_shape_hash_link(ctx->rt, sh); - c0015bd8: e28ee0ef jal ra,c0004200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4441 + c0015da8: c58ee0ef jal ra,c0004200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4449 _d("js_new_shape2: i="); _d(debug_expr); _d("\n"); //// - c0015bdc: 4645 li a2,17 - c0015bde: 00048597 auipc a1,0x48 - c0015be2: 3b258593 addi a1,a1,946 # c005df90 - c0015be6: 4505 li a0,1 - c0015be8: 261410ef jal ra,c0057648 - c0015bec: 00093583 ld a1,0(s2) - c0015bf0: 852e mv a0,a1 - c0015bf2: e42e sd a1,8(sp) - c0015bf4: 5bd400ef jal ra,c00569b0 - c0015bf8: 65a2 ld a1,8(sp) - c0015bfa: 862a mv a2,a0 - c0015bfc: 4505 li a0,1 - c0015bfe: 24b410ef jal ra,c0057648 - c0015c02: 4605 li a2,1 - c0015c04: 0005b597 auipc a1,0x5b - c0015c08: f3c58593 addi a1,a1,-196 # c0070b40 - c0015c0c: 4505 li a0,1 - c0015c0e: 23b410ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4443 -} - c0015c12: 70a6 ld ra,104(sp) - c0015c14: 8522 mv a0,s0 - c0015c16: 7406 ld s0,96(sp) - c0015c18: 64e6 ld s1,88(sp) - c0015c1a: 6946 ld s2,80(sp) - c0015c1c: 69a6 ld s3,72(sp) - c0015c1e: 6a06 ld s4,64(sp) - c0015c20: 7ae2 ld s5,56(sp) - c0015c22: 7b42 ld s6,48(sp) - c0015c24: 7ba2 ld s7,40(sp) - c0015c26: 7c02 ld s8,32(sp) - c0015c28: 6165 addi sp,sp,112 - c0015c2a: 8082 ret + c0015dac: 4645 li a2,17 + c0015dae: 00048597 auipc a1,0x48 + c0015db2: 44258593 addi a1,a1,1090 # c005e1f0 + c0015db6: 4505 li a0,1 + c0015db8: 261410ef jal ra,c0057818 + c0015dbc: 00093583 ld a1,0(s2) + c0015dc0: 852e mv a0,a1 + c0015dc2: e42e sd a1,8(sp) + c0015dc4: 5bd400ef jal ra,c0056b80 + c0015dc8: 65a2 ld a1,8(sp) + c0015dca: 862a mv a2,a0 + c0015dcc: 4505 li a0,1 + c0015dce: 24b410ef jal ra,c0057818 + c0015dd2: 4605 li a2,1 + c0015dd4: 0005b597 auipc a1,0x5b + c0015dd8: fcc58593 addi a1,a1,-52 # c0070da0 + c0015ddc: 4505 li a0,1 + c0015dde: 23b410ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4451 +} + c0015de2: 70a6 ld ra,104(sp) + c0015de4: 8522 mv a0,s0 + c0015de6: 7406 ld s0,96(sp) + c0015de8: 64e6 ld s1,88(sp) + c0015dea: 6946 ld s2,80(sp) + c0015dec: 69a6 ld s3,72(sp) + c0015dee: 6a06 ld s4,64(sp) + c0015df0: 7ae2 ld s5,56(sp) + c0015df2: 7b42 ld s6,48(sp) + c0015df4: 7ba2 ld s7,40(sp) + c0015df6: 7c02 ld s8,32(sp) + c0015df8: 6165 addi sp,sp,112 + c0015dfa: 8082 ret resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4363 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4371 for(sh = rt->shape_hash[i]; sh != NULL; sh = sh_next) { - c0015c2c: 00369793 slli a5,a3,0x3 - c0015c30: 95be add a1,a1,a5 - c0015c32: 6198 ld a4,0(a1) - c0015c34: e319 bnez a4,c0015c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4362 + c0015dfc: 00369793 slli a5,a3,0x3 + c0015e00: 95be add a1,a1,a5 + c0015e02: 6198 ld a4,0(a1) + c0015e04: e319 bnez a4,c0015e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4370 for(i = 0; i < rt->shape_hash_size; i++) { - c0015c36: 2685 addiw a3,a3,1 - c0015c38: b349 j c00159ba + c0015e06: 2685 addiw a3,a3,1 + c0015e08: b349 j c0015b8a get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c0015c3a: 4f5c lw a5,28(a4) + c0015e0a: 4f5c lw a5,28(a4) resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4372 sh_next = sh->shape_hash_next; - c0015c3c: 7b0c ld a1,48(a4) + c0015e0c: 7b0c ld a1,48(a4) get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c0015c3e: 00c7d7bb srlw a5,a5,a2 + c0015e0e: 00c7d7bb srlw a5,a5,a2 resize_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4374 sh->shape_hash_next = new_shape_hash[h]; - c0015c42: 02079513 slli a0,a5,0x20 - c0015c46: 01d55793 srli a5,a0,0x1d - c0015c4a: 97a2 add a5,a5,s0 - c0015c4c: 6388 ld a0,0(a5) - c0015c4e: fb08 sd a0,48(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4367 + c0015e12: 02079513 slli a0,a5,0x20 + c0015e16: 01d55793 srli a5,a0,0x1d + c0015e1a: 97a2 add a5,a5,s0 + c0015e1c: 6388 ld a0,0(a5) + c0015e1e: fb08 sd a0,48(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4375 new_shape_hash[h] = sh; - c0015c50: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4363 + c0015e20: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4371 for(sh = rt->shape_hash[i]; sh != NULL; sh = sh_next) { - c0015c52: 872e mv a4,a1 - c0015c54: b7c5 j c0015c34 + c0015e22: 872e mv a4,a1 + c0015e24: b7c5 j c0015e04 -00000000c0015c56 : +00000000c0015e26 : typed_array_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54594 static int typed_array_init(JSContext *ctx, JSValueConst obj, - c0015c56: 7139 addi sp,sp,-64 - c0015c58: f822 sd s0,48(sp) - c0015c5a: f426 sd s1,40(sp) - c0015c5c: f04a sd s2,32(sp) - c0015c5e: ec4e sd s3,24(sp) - c0015c60: e852 sd s4,16(sp) - c0015c62: fc06 sd ra,56(sp) - c0015c64: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54595 + c0015e26: 7139 addi sp,sp,-64 + c0015e28: f822 sd s0,48(sp) + c0015e2a: f426 sd s1,40(sp) + c0015e2c: f04a sd s2,32(sp) + c0015e2e: ec4e sd s3,24(sp) + c0015e30: e852 sd s4,16(sp) + c0015e32: fc06 sd ra,56(sp) + c0015e34: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54603 size_log2 = typed_array_size_log2(p->class_id); - c0015c66: 0065d783 lhu a5,6(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54586 + c0015e36: 0065d783 lhu a5,6(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54594 static int typed_array_init(JSContext *ctx, JSValueConst obj, - c0015c6a: 84ba mv s1,a4 - c0015c6c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54595 + c0015e3a: 84ba mv s1,a4 + c0015e3c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54603 size_log2 = typed_array_size_log2(p->class_id); - c0015c6e: feb7871b addiw a4,a5,-21 - c0015c72: 00051797 auipc a5,0x51 - c0015c76: 2c678793 addi a5,a5,710 # c0066f38 - c0015c7a: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54596 + c0015e3e: feb7871b addiw a4,a5,-21 + c0015e42: 00051797 auipc a5,0x51 + c0015e46: 35678793 addi a5,a5,854 # c0067198 + c0015e4a: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54604 ta = js_malloc(ctx, sizeof(*ta)); - c0015c7c: 02800593 li a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54595 + c0015e4c: 02800593 li a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54603 size_log2 = typed_array_size_log2(p->class_id); - c0015c80: 0007c983 lbu s3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54586 + c0015e50: 0007c983 lbu s3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54594 static int typed_array_init(JSContext *ctx, JSValueConst obj, - c0015c84: 8a2a mv s4,a0 - c0015c86: e032 sd a2,0(sp) - c0015c88: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54596 + c0015e54: 8a2a mv s4,a0 + c0015e56: e032 sd a2,0(sp) + c0015e58: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54604 ta = js_malloc(ctx, sizeof(*ta)); - c0015c8a: fc3fe0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54597 + c0015e5a: ee1fe0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54605 if (!ta) { - c0015c8e: ed19 bnez a0,c0015cac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54598 + c0015e5e: ed19 bnez a0,c0015e7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54606 JS_FreeValue(ctx, buffer); - c0015c90: 6582 ld a1,0(sp) - c0015c92: 6622 ld a2,8(sp) - c0015c94: 8552 mv a0,s4 - c0015c96: ea3f10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54599 + c0015e60: 6582 ld a1,0(sp) + c0015e62: 6622 ld a2,8(sp) + c0015e64: 8552 mv a0,s4 + c0015e66: dc1f10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54607 return -1; - c0015c9a: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54612 -} - c0015c9c: 70e2 ld ra,56(sp) - c0015c9e: 7442 ld s0,48(sp) - c0015ca0: 74a2 ld s1,40(sp) - c0015ca2: 7902 ld s2,32(sp) - c0015ca4: 69e2 ld s3,24(sp) - c0015ca6: 6a42 ld s4,16(sp) - c0015ca8: 6121 addi sp,sp,64 - c0015caa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54601 + c0015e6a: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54620 +} + c0015e6c: 70e2 ld ra,56(sp) + c0015e6e: 7442 ld s0,48(sp) + c0015e70: 74a2 ld s1,40(sp) + c0015e72: 7902 ld s2,32(sp) + c0015e74: 69e2 ld s3,24(sp) + c0015e76: 6a42 ld s4,16(sp) + c0015e78: 6121 addi sp,sp,64 + c0015e7a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54609 pbuffer = JS_VALUE_GET_OBJ(buffer); - c0015cac: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54606 + c0015e7c: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54614 ta->length = len << size_log2; - c0015cae: 013919b3 sll s3,s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54602 + c0015e7e: 013919b3 sll s3,s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54610 abuf = pbuffer->u.array_buffer; - c0015cb2: 7b98 ld a4,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54605 + c0015e82: 7b98 ld a4,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54613 ta->offset = offset; - c0015cb4: d104 sw s1,32(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54603 + c0015e84: d104 sw s1,32(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54611 ta->obj = p; - c0015cb6: e900 sd s0,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54604 + c0015e86: e900 sd s0,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54612 ta->buffer = pbuffer; - c0015cb8: ed1c sd a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54606 + c0015e88: ed1c sd a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54614 ta->length = len << size_log2; - c0015cba: 03352223 sw s3,36(a0) + c0015e8a: 03352223 sw s3,36(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0015cbe: 6b1c ld a5,16(a4) + c0015e8e: 6b1c ld a5,16(a4) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015cc0: e788 sd a0,8(a5) + c0015e90: e788 sd a0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015cc2: e11c sd a5,0(a0) + c0015e92: e11c sd a5,0(a0) typed_array_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54607 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54615 list_add_tail(&ta->link, &abuf->array_list); - c0015cc4: 01070793 addi a5,a4,16 # ffffffff9e370010 <_ebss+0xfffffffede26eeea> + c0015e94: 01070793 addi a5,a4,16 # ffffffff9e370010 <_ebss+0xfffffffede26eeea> __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015cc8: e51c sd a5,8(a0) + c0015e98: e51c sd a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0015cca: eb08 sd a0,16(a4) + c0015e9a: eb08 sd a0,16(a4) typed_array_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54616 p->u.typed_array = ta; - c0015ccc: f808 sd a0,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54609 + c0015e9c: f808 sd a0,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54617 p->u.array.count = len; - c0015cce: 05242023 sw s2,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54610 + c0015e9e: 05242023 sw s2,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54618 p->u.array.u.ptr = abuf->data + offset; - c0015cd2: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54611 + c0015ea2: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54619 return 0; - c0015cd4: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54610 + c0015ea4: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54618 p->u.array.u.ptr = abuf->data + offset; - c0015cd6: 94ba add s1,s1,a4 - c0015cd8: fc04 sd s1,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54611 + c0015ea6: 94ba add s1,s1,a4 + c0015ea8: fc04 sd s1,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54619 return 0; - c0015cda: b7c9 j c0015c9c + c0015eaa: b7c9 j c0015e6c -00000000c0015cdc : +00000000c0015eac : js_mallocz(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1382 { - c0015cdc: 1101 addi sp,sp,-32 - c0015cde: e822 sd s0,16(sp) - c0015ce0: e426 sd s1,8(sp) - c0015ce2: ec06 sd ra,24(sp) - c0015ce4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1380 + c0015eac: 1101 addi sp,sp,-32 + c0015eae: e822 sd s0,16(sp) + c0015eb0: e426 sd s1,8(sp) + c0015eb2: ec06 sd ra,24(sp) + c0015eb4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1384 ptr = js_mallocz_rt(ctx->rt, size); - c0015ce6: 6d08 ld a0,24(a0) - c0015ce8: 87ef10ef jal ra,c0006d66 - c0015cec: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1381 + c0015eb6: 6d08 ld a0,24(a0) + c0015eb8: f9df00ef jal ra,c0006e54 + c0015ebc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1385 if (unlikely(!ptr)) { - c0015cee: e501 bnez a0,c0015cf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1382 - JS_ThrowOutOfMemory(ctx); - c0015cf0: 8526 mv a0,s1 - c0015cf2: f2bfe0ef jal ra,c0014c1c + c0015ebe: e501 bnez a0,c0015ec6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1386 + JS_ThrowOutOfMemory(ctx); + c0015ec0: 8526 mv a0,s1 + c0015ec2: e49fe0ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1390 } - c0015cf6: 60e2 ld ra,24(sp) - c0015cf8: 8522 mv a0,s0 - c0015cfa: 6442 ld s0,16(sp) - c0015cfc: 64a2 ld s1,8(sp) - c0015cfe: 6105 addi sp,sp,32 - c0015d00: 8082 ret + c0015ec6: 60e2 ld ra,24(sp) + c0015ec8: 8522 mv a0,s0 + c0015eca: 6442 ld s0,16(sp) + c0015ecc: 64a2 ld s1,8(sp) + c0015ece: 6105 addi sp,sp,32 + c0015ed0: 8082 ret -00000000c0015d02 : +00000000c0015ed2 : async_func_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18843 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18851 { - c0015d02: 711d addi sp,sp,-96 - c0015d04: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18850 + c0015ed2: 711d addi sp,sp,-96 + c0015ed4: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18858 s = js_mallocz(ctx, sizeof(*s)); - c0015d06: 0a800593 li a1,168 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18843 + c0015ed6: 0a800593 li a1,168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18851 { - c0015d0a: e8a2 sd s0,80(sp) - c0015d0c: e4a6 sd s1,72(sp) - c0015d0e: f852 sd s4,48(sp) - c0015d10: f456 sd s5,40(sp) - c0015d12: ec86 sd ra,88(sp) - c0015d14: e0ca sd s2,64(sp) - c0015d16: fc4e sd s3,56(sp) - c0015d18: f05a sd s6,32(sp) - c0015d1a: 8aaa mv s5,a0 - c0015d1c: ec32 sd a2,24(sp) - c0015d1e: e036 sd a3,0(sp) - c0015d20: e43a sd a4,8(sp) - c0015d22: 84be mv s1,a5 - c0015d24: 8a42 mv s4,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18850 + c0015eda: e8a2 sd s0,80(sp) + c0015edc: e4a6 sd s1,72(sp) + c0015ede: f852 sd s4,48(sp) + c0015ee0: f456 sd s5,40(sp) + c0015ee2: ec86 sd ra,88(sp) + c0015ee4: e0ca sd s2,64(sp) + c0015ee6: fc4e sd s3,56(sp) + c0015ee8: f05a sd s6,32(sp) + c0015eea: 8aaa mv s5,a0 + c0015eec: ec32 sd a2,24(sp) + c0015eee: e036 sd a3,0(sp) + c0015ef0: e43a sd a4,8(sp) + c0015ef2: 84be mv s1,a5 + c0015ef4: 8a42 mv s4,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18858 s = js_mallocz(ctx, sizeof(*s)); - c0015d26: fb7ff0ef jal ra,c0015cdc - c0015d2a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18851 + c0015ef6: fb7ff0ef jal ra,c0015eac + c0015efa: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18859 if (!s) - c0015d2c: c141 beqz a0,c0015dac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18853 + c0015efc: c141 beqz a0,c0015f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18861 s->header.ref_count = 1; - c0015d2e: 4785 li a5,1 - c0015d30: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18854 + c0015efe: 4785 li a5,1 + c0015f00: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18862 add_gc_object(ctx->rt, &s->header, JS_GC_OBJ_TYPE_ASYNC_FUNCTION); - c0015d32: 018ab703 ld a4,24(s5) + c0015f02: 018ab703 ld a4,24(s5) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0015d36: 4791 li a5,4 - c0015d38: 00f50223 sb a5,4(a0) + c0015f06: 4791 li a5,4 + c0015f08: 00f50223 sb a5,4(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0015d3c: 6754 ld a3,136(a4) + c0015f0c: 6754 ld a3,136(a4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0015d3e: 00850793 addi a5,a0,8 + c0015f0e: 00850793 addi a5,a0,8 async_func_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18864 sf = &s->frame; - c0015d42: 05850b13 addi s6,a0,88 + c0015f12: 05850b13 addi s6,a0,88 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015d46: e69c sd a5,8(a3) + c0015f16: e69c sd a5,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015d48: e514 sd a3,8(a0) + c0015f18: e514 sd a3,8(a0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0015d4a: 08870693 addi a3,a4,136 + c0015f1a: 08870693 addi a3,a4,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015d4e: e914 sd a3,16(a0) + c0015f1e: e914 sd a3,16(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0015d50: e75c sd a5,136(a4) + c0015f20: e75c sd a5,136(a4) async_func_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18865 init_list_head(&sf->var_ref_list); - c0015d52: 08050793 addi a5,a0,128 + c0015f22: 08050793 addi a5,a0,128 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0015d56: e15c sd a5,128(a0) + c0015f26: e15c sd a5,128(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0015d58: e55c sd a5,136(a0) + c0015f28: e55c sd a5,136(a0) async_func_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18859 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18867 b = p->u.func.function_bytecode; - c0015d5a: 67c2 ld a5,16(sp) - c0015d5c: 0307b903 ld s2,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18860 + c0015f2a: 67c2 ld a5,16(sp) + c0015f2c: 0307b903 ld s2,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18868 sf->js_mode = b->js_mode | JS_MODE_ASYNC; - c0015d60: 01894783 lbu a5,24(s2) - c0015d64: 0087e793 ori a5,a5,8 - c0015d68: 08f52e23 sw a5,156(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18861 + c0015f30: 01894783 lbu a5,24(s2) + c0015f34: 0087e793 ori a5,a5,8 + c0015f38: 08f52e23 sw a5,156(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18869 sf->cur_pc = b->byte_code_buf; - c0015d6c: 02093783 ld a5,32(s2) - c0015d70: e95c sd a5,144(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18862 + c0015f3c: 02093783 ld a5,32(s2) + c0015f40: e95c sd a5,144(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18870 arg_buf_len = max_int(b->arg_count, argc); - c0015d72: 04095703 lhu a4,64(s2) - c0015d76: 87ba mv a5,a4 - c0015d78: 00975363 bge a4,s1,c0015d7e - c0015d7c: 87a6 mv a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18863 + c0015f42: 04095703 lhu a4,64(s2) + c0015f46: 87ba mv a5,a4 + c0015f48: 00975363 bge a4,s1,c0015f4e + c0015f4c: 87a6 mv a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18871 local_count = arg_buf_len + b->var_count + b->stack_size; - c0015d7e: 04295583 lhu a1,66(s2) - c0015d82: 04695703 lhu a4,70(s2) - c0015d86: 0007899b sext.w s3,a5 - c0015d8a: 9db9 addw a1,a1,a4 - c0015d8c: 9fad addw a5,a5,a1 - c0015d8e: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18864 + c0015f4e: 04295583 lhu a1,66(s2) + c0015f52: 04695703 lhu a4,70(s2) + c0015f56: 0007899b sext.w s3,a5 + c0015f5a: 9db9 addw a1,a1,a4 + c0015f5c: 9fad addw a5,a5,a1 + c0015f5e: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18872 sf->arg_buf = js_malloc(ctx, sizeof(JSValue) * max_int(local_count, 1)); - c0015d90: 00f04363 bgtz a5,c0015d96 - c0015d94: 4585 li a1,1 - c0015d96: 0592 slli a1,a1,0x4 - c0015d98: 8556 mv a0,s5 - c0015d9a: eb3fe0ef jal ra,c0014c4c - c0015d9e: f828 sd a0,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18865 + c0015f60: 00f04363 bgtz a5,c0015f66 + c0015f64: 4585 li a1,1 + c0015f66: 0592 slli a1,a1,0x4 + c0015f68: 8556 mv a0,s5 + c0015f6a: dd1fe0ef jal ra,c0014d3a + c0015f6e: f828 sd a0,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18873 if (!sf->arg_buf) { - c0015da0: e10d bnez a0,c0015dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18866 + c0015f70: e10d bnez a0,c0015f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18874 js_free(ctx, s); - c0015da2: 85a2 mv a1,s0 - c0015da4: 8556 mv a0,s5 - c0015da6: 894f10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18867 + c0015f72: 85a2 mv a1,s0 + c0015f74: 8556 mv a0,s5 + c0015f76: fb3f00ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18875 return NULL; - c0015daa: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18884 -} - c0015dac: 60e6 ld ra,88(sp) - c0015dae: 8522 mv a0,s0 - c0015db0: 6446 ld s0,80(sp) - c0015db2: 64a6 ld s1,72(sp) - c0015db4: 6906 ld s2,64(sp) - c0015db6: 79e2 ld s3,56(sp) - c0015db8: 7a42 ld s4,48(sp) - c0015dba: 7aa2 ld s5,40(sp) - c0015dbc: 7b02 ld s6,32(sp) - c0015dbe: 6125 addi sp,sp,96 - c0015dc0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18869 + c0015f7a: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18892 +} + c0015f7c: 60e6 ld ra,88(sp) + c0015f7e: 8522 mv a0,s0 + c0015f80: 6446 ld s0,80(sp) + c0015f82: 64a6 ld s1,72(sp) + c0015f84: 6906 ld s2,64(sp) + c0015f86: 79e2 ld s3,56(sp) + c0015f88: 7a42 ld s4,48(sp) + c0015f8a: 7aa2 ld s5,40(sp) + c0015f8c: 7b02 ld s6,32(sp) + c0015f8e: 6125 addi sp,sp,96 + c0015f90: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18877 sf->cur_func = JS_DupValue(ctx, func_obj); - c0015dc2: 6542 ld a0,16(sp) - c0015dc4: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18875 + c0015f92: 6542 ld a0,16(sp) + c0015f94: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18883 for(i = 0; i < argc; i++) - c0015dc6: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18869 + c0015f96: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18877 sf->cur_func = JS_DupValue(ctx, func_obj); - c0015dc8: 8a7f00ef jal ra,c000666e - c0015dcc: 00ab3423 sd a0,8(s6) - c0015dd0: 00bb3823 sd a1,16(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18870 + c0015f98: fc4f00ef jal ra,c000675c + c0015f9c: 00ab3423 sd a0,8(s6) + c0015fa0: 00bb3823 sd a1,16(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 s->this_val = JS_DupValue(ctx, this_obj); - c0015dd4: 6502 ld a0,0(sp) - c0015dd6: 65a2 ld a1,8(sp) - c0015dd8: 897f00ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18873 + c0015fa4: 6502 ld a0,0(sp) + c0015fa6: 65a2 ld a1,8(sp) + c0015fa8: fb4f00ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18881 sf->var_buf = sf->arg_buf + arg_buf_len; - c0015ddc: 7838 ld a4,112(s0) - c0015dde: 00499793 slli a5,s3,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18870 + c0015fac: 7838 ld a4,112(s0) + c0015fae: 00499793 slli a5,s3,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 s->this_val = JS_DupValue(ctx, this_obj); - c0015de2: ec08 sd a0,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18873 + c0015fb2: ec08 sd a0,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18881 sf->var_buf = sf->arg_buf + arg_buf_len; - c0015de4: 97ba add a5,a5,a4 - c0015de6: fc3c sd a5,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18870 + c0015fb4: 97ba add a5,a5,a4 + c0015fb6: fc3c sd a5,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 s->this_val = JS_DupValue(ctx, this_obj); - c0015de8: f00c sd a1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18871 + c0015fb8: f00c sd a1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18879 s->argc = argc; - c0015dea: d404 sw s1,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18872 + c0015fba: d404 sw s1,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18880 sf->arg_count = arg_buf_len; - c0015dec: 09342c23 sw s3,152(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18874 + c0015fbc: 09342c23 sw s3,152(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18882 sf->cur_sp = sf->var_buf + b->var_count; - c0015df0: 04295703 lhu a4,66(s2) - c0015df4: 0712 slli a4,a4,0x4 - c0015df6: 97ba add a5,a5,a4 - c0015df8: f05c sd a5,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18875 (discriminator 1) + c0015fc0: 04295703 lhu a4,66(s2) + c0015fc4: 0712 slli a4,a4,0x4 + c0015fc6: 97ba add a5,a5,a4 + c0015fc8: f05c sd a5,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18883 (discriminator 1) for(i = 0; i < argc; i++) - c0015dfa: 000a879b sext.w a5,s5 - c0015dfe: 0297c563 blt a5,s1,c0015e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18877 + c0015fca: 000a879b sext.w a5,s5 + c0015fce: 0297c563 blt a5,s1,c0015ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18885 n = arg_buf_len + b->var_count; - c0015e02: 04295783 lhu a5,66(s2) - c0015e06: 00449713 slli a4,s1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18879 + c0015fd2: 04295783 lhu a5,66(s2) + c0015fd6: 00449713 slli a4,s1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18887 sf->arg_buf[i] = JS_UNDEFINED; - c0015e0a: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18877 + c0015fda: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18885 n = arg_buf_len + b->var_count; - c0015e0c: 013789bb addw s3,a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 (discriminator 1) + c0015fdc: 013789bb addw s3,a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18886 (discriminator 1) for(i = argc; i < n; i++) - c0015e10: 0334ca63 blt s1,s3,c0015e44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18880 + c0015fe0: 0334ca63 blt s1,s3,c0016014 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18888 s->resolving_funcs[0] = JS_UNDEFINED; - c0015e14: 478d li a5,3 - c0015e16: 02043c23 sd zero,56(s0) - c0015e1a: e03c sd a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18881 + c0015fe4: 478d li a5,3 + c0015fe6: 02043c23 sd zero,56(s0) + c0015fea: e03c sd a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18889 s->resolving_funcs[1] = JS_UNDEFINED; - c0015e1c: 04043423 sd zero,72(s0) - c0015e20: e83c sd a5,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18882 + c0015fec: 04043423 sd zero,72(s0) + c0015ff0: e83c sd a5,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18890 s->is_completed = FALSE; - c0015e22: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18883 + c0015ff2: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18891 return s; - c0015e26: b759 j c0015dac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18876 (discriminator 3) + c0015ff6: b759 j c0015f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18884 (discriminator 3) sf->arg_buf[i] = JS_DupValue(ctx, argv[i]); - c0015e28: 004a9b13 slli s6,s5,0x4 - c0015e2c: 016a07b3 add a5,s4,s6 - c0015e30: 6388 ld a0,0(a5) - c0015e32: 678c ld a1,8(a5) - c0015e34: 0a85 addi s5,s5,1 - c0015e36: 839f00ef jal ra,c000666e - c0015e3a: 783c ld a5,112(s0) - c0015e3c: 97da add a5,a5,s6 - c0015e3e: e388 sd a0,0(a5) - c0015e40: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18875 (discriminator 3) + c0015ff8: 004a9b13 slli s6,s5,0x4 + c0015ffc: 016a07b3 add a5,s4,s6 + c0016000: 6388 ld a0,0(a5) + c0016002: 678c ld a1,8(a5) + c0016004: 0a85 addi s5,s5,1 + c0016006: f56f00ef jal ra,c000675c + c001600a: 783c ld a5,112(s0) + c001600c: 97da add a5,a5,s6 + c001600e: e388 sd a0,0(a5) + c0016010: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18883 (discriminator 3) for(i = 0; i < argc; i++) - c0015e42: bf65 j c0015dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18879 (discriminator 3) + c0016012: bf65 j c0015fca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18887 (discriminator 3) sf->arg_buf[i] = JS_UNDEFINED; - c0015e44: 783c ld a5,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 (discriminator 3) + c0016014: 783c ld a5,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18886 (discriminator 3) for(i = argc; i < n; i++) - c0015e46: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18879 (discriminator 3) + c0016016: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18887 (discriminator 3) sf->arg_buf[i] = JS_UNDEFINED; - c0015e48: 97ba add a5,a5,a4 - c0015e4a: 0007b023 sd zero,0(a5) - c0015e4e: e794 sd a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18878 (discriminator 3) + c0016018: 97ba add a5,a5,a4 + c001601a: 0007b023 sd zero,0(a5) + c001601e: e794 sd a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18886 (discriminator 3) for(i = argc; i < n; i++) - c0015e50: 0741 addi a4,a4,16 - c0015e52: bf7d j c0015e10 + c0016020: 0741 addi a4,a4,16 + c0016022: bf7d j c0015fe0 -00000000c0015e54 : +00000000c0016024 : js_closure2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15686 { - c0015e54: 711d addi sp,sp,-96 - c0015e56: e4a6 sd s1,72(sp) - c0015e58: ec86 sd ra,88(sp) - c0015e5a: e8a2 sd s0,80(sp) - c0015e5c: e0ca sd s2,64(sp) - c0015e5e: fc4e sd s3,56(sp) - c0015e60: f852 sd s4,48(sp) - c0015e62: f456 sd s5,40(sp) - c0015e64: f05a sd s6,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15684 + c0016024: 711d addi sp,sp,-96 + c0016026: e4a6 sd s1,72(sp) + c0016028: ec86 sd ra,88(sp) + c001602a: e8a2 sd s0,80(sp) + c001602c: e0ca sd s2,64(sp) + c001602e: fc4e sd s3,56(sp) + c0016030: f852 sd s4,48(sp) + c0016032: f456 sd s5,40(sp) + c0016034: f05a sd s6,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15692 p->u.func.function_bytecode = b; - c0015e66: f994 sd a3,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15685 + c0016036: f994 sd a3,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15693 p->u.func.home_object = NULL; - c0015e68: 0405b023 sd zero,64(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15686 + c0016038: 0405b023 sd zero,64(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15694 p->u.func.var_refs = NULL; - c0015e6c: 0205bc23 sd zero,56(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15678 + c001603c: 0205bc23 sd zero,56(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15686 { - c0015e70: e02e sd a1,0(sp) - c0015e72: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15687 + c0016040: e02e sd a1,0(sp) + c0016042: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15695 if (b->closure_var_count) { - c0015e74: 4eec lw a1,92(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15678 + c0016044: 4eec lw a1,92(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15686 { - c0015e76: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15687 + c0016046: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15695 if (b->closure_var_count) { - c0015e78: e18d bnez a1,c0015e9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15707 + c0016048: e18d bnez a1,c001606a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15715 return func_obj; - c0015e7a: 6782 ld a5,0(sp) - c0015e7c: e83e sd a5,16(sp) - c0015e7e: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15712 -} - c0015e80: 60e6 ld ra,88(sp) - c0015e82: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15711 + c001604a: 6782 ld a5,0(sp) + c001604c: e83e sd a5,16(sp) + c001604e: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15720 +} + c0016050: 60e6 ld ra,88(sp) + c0016052: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15719 return JS_EXCEPTION; - c0015e84: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15712 -} - c0015e86: 6542 ld a0,16(sp) - c0015e88: 65e2 ld a1,24(sp) - c0015e8a: 64a6 ld s1,72(sp) - c0015e8c: 6906 ld s2,64(sp) - c0015e8e: 79e2 ld s3,56(sp) - c0015e90: 7a42 ld s4,48(sp) - c0015e92: 7aa2 ld s5,40(sp) - c0015e94: 7b02 ld s6,32(sp) - c0015e96: 6125 addi sp,sp,96 - c0015e98: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15688 + c0016054: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15720 +} + c0016056: 6542 ld a0,16(sp) + c0016058: 65e2 ld a1,24(sp) + c001605a: 64a6 ld s1,72(sp) + c001605c: 6906 ld s2,64(sp) + c001605e: 79e2 ld s3,56(sp) + c0016060: 7a42 ld s4,48(sp) + c0016062: 7aa2 ld s5,40(sp) + c0016064: 7b02 ld s6,32(sp) + c0016066: 6125 addi sp,sp,96 + c0016068: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15696 var_refs = js_mallocz(ctx, sizeof(var_refs[0]) * b->closure_var_count); - c0015e9a: 058e slli a1,a1,0x3 - c0015e9c: 89aa mv s3,a0 - c0015e9e: 8436 mv s0,a3 - c0015ea0: 8a3a mv s4,a4 - c0015ea2: 8abe mv s5,a5 - c0015ea4: e39ff0ef jal ra,c0015cdc - c0015ea8: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15689 + c001606a: 058e slli a1,a1,0x3 + c001606c: 89aa mv s3,a0 + c001606e: 8436 mv s0,a3 + c0016070: 8a3a mv s4,a4 + c0016072: 8abe mv s5,a5 + c0016074: e39ff0ef jal ra,c0015eac + c0016078: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15697 if (!var_refs) - c0015eaa: c90d beqz a0,c0015edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15691 + c001607a: c90d beqz a0,c00160ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15699 p->u.func.var_refs = var_refs; - c0015eac: fc88 sd a0,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15692 + c001607c: fc88 sd a0,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15700 for(i = 0; i < b->closure_var_count; i++) { - c0015eae: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15692 (discriminator 1) - c0015eb0: 4c7c lw a5,92(s0) - c0015eb2: fcf4d4e3 bge s1,a5,c0015e7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15693 + c001607e: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15700 (discriminator 1) + c0016080: 4c7c lw a5,92(s0) + c0016082: fcf4d4e3 bge s1,a5,c001604a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15701 JSClosureVar *cv = &b->closure_var[i]; - c0015eb6: 7c1c ld a5,56(s0) - c0015eb8: 00349b13 slli s6,s1,0x3 - c0015ebc: 97da add a5,a5,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15695 + c0016086: 7c1c ld a5,56(s0) + c0016088: 00349b13 slli s6,s1,0x3 + c001608c: 97da add a5,a5,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15703 if (cv->is_local) { - c0015ebe: 0007c703 lbu a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15697 + c001608e: 0007c703 lbu a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15705 var_ref = get_var_ref(ctx, sf, cv->var_idx, cv->is_arg); - c0015ec2: 0027d603 lhu a2,2(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15695 + c0016092: 0027d603 lhu a2,2(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15703 if (cv->is_local) { - c0015ec6: 8b05 andi a4,a4,1 - c0015ec8: c315 beqz a4,c0015eec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15697 + c0016096: 8b05 andi a4,a4,1 + c0016098: c315 beqz a4,c00160bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15705 var_ref = get_var_ref(ctx, sf, cv->var_idx, cv->is_arg); - c0015eca: 4394 lw a3,0(a5) - c0015ecc: 85d6 mv a1,s5 - c0015ece: 854e mv a0,s3 - c0015ed0: 0016d69b srliw a3,a3,0x1 - c0015ed4: 8a85 andi a3,a3,1 - c0015ed6: df3fe0ef jal ra,c0014cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15698 + c001609a: 4394 lw a3,0(a5) + c001609c: 85d6 mv a1,s5 + c001609e: 854e mv a0,s3 + c00160a0: 0016d69b srliw a3,a3,0x1 + c00160a4: 8a85 andi a3,a3,1 + c00160a6: df3fe0ef jal ra,c0014e98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15706 if (!var_ref) - c0015eda: ed19 bnez a0,c0015ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15710 + c00160aa: ed19 bnez a0,c00160c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15718 JS_FreeValue(ctx, func_obj); - c0015edc: 6582 ld a1,0(sp) - c0015ede: 6622 ld a2,8(sp) - c0015ee0: 854e mv a0,s3 - c0015ee2: c57f10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15711 + c00160ac: 6582 ld a1,0(sp) + c00160ae: 6622 ld a2,8(sp) + c00160b0: 854e mv a0,s3 + c00160b2: b75f10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15719 return JS_EXCEPTION; - c0015ee6: 4799 li a5,6 - c0015ee8: e802 sd zero,16(sp) - c0015eea: bf59 j c0015e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15701 + c00160b6: 4799 li a5,6 + c00160b8: e802 sd zero,16(sp) + c00160ba: bf59 j c0016050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15709 var_ref = cur_var_refs[cv->var_idx]; - c0015eec: 060e slli a2,a2,0x3 - c0015eee: 9652 add a2,a2,s4 - c0015ef0: 6208 ld a0,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15702 + c00160bc: 060e slli a2,a2,0x3 + c00160be: 9652 add a2,a2,s4 + c00160c0: 6208 ld a0,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15710 var_ref->header.ref_count++; - c0015ef2: 411c lw a5,0(a0) - c0015ef4: 2785 addiw a5,a5,1 - c0015ef6: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15704 (discriminator 2) + c00160c2: 411c lw a5,0(a0) + c00160c4: 2785 addiw a5,a5,1 + c00160c6: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15712 (discriminator 2) var_refs[i] = var_ref; - c0015ef8: 9b4a add s6,s6,s2 - c0015efa: 00ab3023 sd a0,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15692 (discriminator 2) + c00160c8: 9b4a add s6,s6,s2 + c00160ca: 00ab3023 sd a0,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15700 (discriminator 2) for(i = 0; i < b->closure_var_count; i++) { - c0015efe: 2485 addiw s1,s1,1 - c0015f00: bf45 j c0015eb0 + c00160ce: 2485 addiw s1,s1,1 + c00160d0: bf45 j c0016080 -00000000c0015f02 : +00000000c00160d2 : perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48600 -{ - c0015f02: 7151 addi sp,sp,-240 - c0015f04: 87b2 mv a5,a2 - c0015f06: eda6 sd s1,216(sp) - c0015f08: e02e sd a1,0(sp) - c0015f0a: e432 sd a2,8(sp) - c0015f0c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48601 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48608 +{ + c00160d2: 7151 addi sp,sp,-240 + c00160d4: 87b2 mv a5,a2 + c00160d6: eda6 sd s1,216(sp) + c00160d8: e02e sd a1,0(sp) + c00160da: e432 sd a2,8(sp) + c00160dc: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48609 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c0015f0e: 02d00613 li a2,45 - c0015f12: 852e mv a0,a1 - c0015f14: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48600 -{ - c0015f16: f1a2 sd s0,224(sp) - c0015f18: e5ce sd s3,200(sp) - c0015f1a: e1d2 sd s4,192(sp) - c0015f1c: fd56 sd s5,184(sp) - c0015f1e: f95a sd s6,176(sp) - c0015f20: f55e sd s7,168(sp) - c0015f22: f162 sd s8,160(sp) - c0015f24: f586 sd ra,232(sp) - c0015f26: e9ca sd s2,208(sp) - c0015f28: ed66 sd s9,152(sp) - c0015f2a: 8b36 mv s6,a3 - c0015f2c: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48601 + c00160de: 02d00613 li a2,45 + c00160e2: 852e mv a0,a1 + c00160e4: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48608 +{ + c00160e6: f1a2 sd s0,224(sp) + c00160e8: e5ce sd s3,200(sp) + c00160ea: e1d2 sd s4,192(sp) + c00160ec: fd56 sd s5,184(sp) + c00160ee: f95a sd s6,176(sp) + c00160f0: f55e sd s7,168(sp) + c00160f2: f162 sd s8,160(sp) + c00160f4: f586 sd ra,232(sp) + c00160f6: e9ca sd s2,208(sp) + c00160f8: ed66 sd s9,152(sp) + c00160fa: 8b36 mv s6,a3 + c00160fc: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48609 JSPromiseData *s = JS_GetOpaque(promise, JS_CLASS_PROMISE); - c0015f2e: 985f40ef jal ra,c000a8b2 - c0015f32: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48605 + c00160fe: 8a3f40ef jal ra,c000a9a0 + c0016102: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48613 rd_array[0] = NULL; - c0015f34: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48606 + c0016104: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48614 rd_array[1] = NULL; - c0015f36: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48607 + c0016106: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48615 for(i = 0; i < 2; i++) { - c0015f38: 01010a93 addi s5,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48606 + c0016108: 01010a93 addi s5,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48614 rd_array[1] = NULL; - c0015f3c: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48619 + c001610c: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48627 handler = JS_UNDEFINED; - c0015f3e: 4c0d li s8,3 - c0015f40: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48609 + c001610e: 4c0d li s8,3 + c0016110: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48617 rd = js_mallocz(ctx, sizeof(*rd)); - c0015f42: 04000593 li a1,64 - c0015f46: 8526 mv a0,s1 - c0015f48: d95ff0ef jal ra,c0015cdc - c0015f4c: 000a0c9b sext.w s9,s4 - c0015f50: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48610 + c0016112: 04000593 li a1,64 + c0016116: 8526 mv a0,s1 + c0016118: d95ff0ef jal ra,c0015eac + c001611c: 000a0c9b sext.w s9,s4 + c0016120: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48618 if (!rd) { - c0015f52: cd49 beqz a0,c0015fec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48616 + c0016122: cd49 beqz a0,c00161bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48624 rd->resolving_funcs[j] = JS_DupValue(ctx, cap_resolving_funcs[j]); - c0015f54: 0009b503 ld a0,0(s3) - c0015f58: 0089b583 ld a1,8(s3) - c0015f5c: f12f00ef jal ra,c000666e - c0015f60: 00a93823 sd a0,16(s2) - c0015f64: 00b93c23 sd a1,24(s2) - c0015f68: 0109b503 ld a0,16(s3) - c0015f6c: 0189b583 ld a1,24(s3) - c0015f70: efef00ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48617 + c0016124: 0009b503 ld a0,0(s3) + c0016128: 0089b583 ld a1,8(s3) + c001612c: e30f00ef jal ra,c000675c + c0016130: 00a93823 sd a0,16(s2) + c0016134: 00b93c23 sd a1,24(s2) + c0016138: 0109b503 ld a0,16(s3) + c001613c: 0189b583 ld a1,24(s3) + c0016140: e1cf00ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48625 handler = resolve_reject[i]; - c0015f74: 004a1793 slli a5,s4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48616 + c0016144: 004a1793 slli a5,s4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48624 rd->resolving_funcs[j] = JS_DupValue(ctx, cap_resolving_funcs[j]); - c0015f78: 02a93023 sd a0,32(s2) - c0015f7c: 02b93423 sd a1,40(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48617 + c0016148: 02a93023 sd a0,32(s2) + c001614c: 02b93423 sd a1,40(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48625 handler = resolve_reject[i]; - c0015f80: 97da add a5,a5,s6 - c0015f82: 638c ld a1,0(a5) - c0015f84: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48618 + c0016150: 97da add a5,a5,s6 + c0016152: 638c ld a1,0(a5) + c0016154: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48626 if (!JS_IsFunction(ctx, handler)) - c0015f86: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48617 + c0016156: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48625 handler = resolve_reject[i]; - c0015f88: e0ae sd a1,64(sp) - c0015f8a: e4b2 sd a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48618 + c0016158: e0ae sd a1,64(sp) + c001615a: e4b2 sd a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48626 if (!JS_IsFunction(ctx, handler)) - c0015f8c: f50f40ef jal ra,c000a6dc - c0015f90: c151 beqz a0,c0016014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48620 (discriminator 1) + c001615c: e6ef40ef jal ra,c000a7ca + c0016160: c151 beqz a0,c00161e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48628 (discriminator 1) rd->handler = JS_DupValue(ctx, handler); - c0015f92: 6506 ld a0,64(sp) - c0015f94: 65a6 ld a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48607 (discriminator 1) + c0016162: 6506 ld a0,64(sp) + c0016164: 65a6 ld a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48615 (discriminator 1) for(i = 0; i < 2; i++) { - c0015f96: 0aa1 addi s5,s5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48620 (discriminator 1) + c0016166: 0aa1 addi s5,s5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48628 (discriminator 1) rd->handler = JS_DupValue(ctx, handler); - c0015f98: ed6f00ef jal ra,c000666e - c0015f9c: 02a93823 sd a0,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48621 (discriminator 1) + c0016168: df4f00ef jal ra,c000675c + c001616c: 02a93823 sd a0,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48629 (discriminator 1) rd_array[i] = rd; - c0015fa0: ff2abc23 sd s2,-8(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48620 (discriminator 1) + c0016170: ff2abc23 sd s2,-8(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48628 (discriminator 1) rd->handler = JS_DupValue(ctx, handler); - c0015fa4: 02b93c23 sd a1,56(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48607 (discriminator 1) + c0016174: 02b93c23 sd a1,56(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48615 (discriminator 1) for(i = 0; i < 2; i++) { - c0015fa8: 057a1063 bne s4,s7,c0015fe8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48624 + c0016178: 057a1063 bne s4,s7,c00161b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48632 if (s->promise_state == JS_PROMISE_PENDING) { - c0015fac: 401c lw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48626 + c001617c: 401c lw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48634 list_add_tail(&rd_array[i]->link, &s->promise_reactions[i]); - c0015fae: 69c2 ld s3,16(sp) - c0015fb0: 6962 ld s2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48624 + c001617e: 69c2 ld s3,16(sp) + c0016180: 6962 ld s2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48632 if (s->promise_state == JS_PROMISE_PENDING) { - c0015fb2: e7a5 bnez a5,c001601a + c0016182: e7a5 bnez a5,c00161ea list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0015fb4: 641c ld a5,8(s0) + c0016184: 641c ld a5,8(s0) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015fb6: 0137b423 sd s3,8(a5) + c0016186: 0137b423 sd s3,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015fba: 00f9b023 sd a5,0(s3) + c001618a: 00f9b023 sd a5,0(s3) perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48634 list_add_tail(&rd_array[i]->link, &s->promise_reactions[i]); - c0015fbe: 00840793 addi a5,s0,8 + c001618e: 00840793 addi a5,s0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015fc2: 00f9b423 sd a5,8(s3) + c0016192: 00f9b423 sd a5,8(s3) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0015fc6: 6c1c ld a5,24(s0) + c0016196: 6c1c ld a5,24(s0) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0015fc8: 01343423 sd s3,8(s0) + c0016198: 01343423 sd s3,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0015fcc: 0127b423 sd s2,8(a5) + c001619c: 0127b423 sd s2,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0015fd0: 00f93023 sd a5,0(s2) + c00161a0: 00f93023 sd a5,0(s2) perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48626 - c0015fd4: 01840793 addi a5,s0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48634 + c00161a4: 01840793 addi a5,s0,24 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0015fd8: 00f93423 sd a5,8(s2) + c00161a8: 00f93423 sd a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0015fdc: 01243c23 sd s2,24(s0) + c00161ac: 01243c23 sd s2,24(s0) perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48655 s->is_handled = TRUE; - c0015fe0: 4785 li a5,1 - c0015fe2: d41c sw a5,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48648 + c00161b0: 4785 li a5,1 + c00161b2: d41c sw a5,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48656 return 0; - c0015fe4: 4501 li a0,0 - c0015fe6: a811 j c0015ffa - c0015fe8: 4a05 li s4,1 - c0015fea: bfa1 j c0015f42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48611 + c00161b4: 4501 li a0,0 + c00161b6: a811 j c00161ca + c00161b8: 4a05 li s4,1 + c00161ba: bfa1 j c0016112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48619 if (i == 1) - c0015fec: 000c8663 beqz s9,c0015ff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48612 + c00161bc: 000c8663 beqz s9,c00161c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48620 promise_reaction_data_free(ctx->rt, rd_array[0]); - c0015ff0: 65c2 ld a1,16(sp) - c0015ff2: 6c88 ld a0,24(s1) - c0015ff4: eeaf20ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48613 + c00161c0: 65c2 ld a1,16(sp) + c00161c2: 6c88 ld a0,24(s1) + c00161c4: e08f20ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48621 return -1; - c0015ff8: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48649 -} - c0015ffa: 70ae ld ra,232(sp) - c0015ffc: 740e ld s0,224(sp) - c0015ffe: 64ee ld s1,216(sp) - c0016000: 694e ld s2,208(sp) - c0016002: 69ae ld s3,200(sp) - c0016004: 6a0e ld s4,192(sp) - c0016006: 7aea ld s5,184(sp) - c0016008: 7b4a ld s6,176(sp) - c001600a: 7baa ld s7,168(sp) - c001600c: 7c0a ld s8,160(sp) - c001600e: 6cea ld s9,152(sp) - c0016010: 616d addi sp,sp,240 - c0016012: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48619 + c00161c8: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48657 +} + c00161ca: 70ae ld ra,232(sp) + c00161cc: 740e ld s0,224(sp) + c00161ce: 64ee ld s1,216(sp) + c00161d0: 694e ld s2,208(sp) + c00161d2: 69ae ld s3,200(sp) + c00161d4: 6a0e ld s4,192(sp) + c00161d6: 7aea ld s5,184(sp) + c00161d8: 7b4a ld s6,176(sp) + c00161da: 7baa ld s7,168(sp) + c00161dc: 7c0a ld s8,160(sp) + c00161de: 6cea ld s9,152(sp) + c00161e0: 616d addi sp,sp,240 + c00161e2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48627 handler = JS_UNDEFINED; - c0016014: e082 sd zero,64(sp) - c0016016: e4e2 sd s8,72(sp) - c0016018: bfad j c0015f92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48629 + c00161e4: e082 sd zero,64(sp) + c00161e6: e4e2 sd s8,72(sp) + c00161e8: bfad j c0016162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48637 if (s->promise_state == JS_PROMISE_REJECTED && !s->is_handled) { - c001601a: 4709 li a4,2 - c001601c: 02e79263 bne a5,a4,c0016040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48629 (discriminator 1) - c0016020: 541c lw a5,40(s0) - c0016022: ef99 bnez a5,c0016040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48630 + c00161ea: 4709 li a4,2 + c00161ec: 02e79263 bne a5,a4,c0016210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48637 (discriminator 1) + c00161f0: 541c lw a5,40(s0) + c00161f2: ef99 bnez a5,c0016210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48638 JSRuntime *rt = ctx->rt; - c0016024: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48631 + c00161f4: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48639 if (rt->host_promise_rejection_tracker) { - c0016026: 1107b883 ld a7,272(a5) - c001602a: 00088b63 beqz a7,c0016040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48632 + c00161f6: 1107b883 ld a7,272(a5) + c00161fa: 00088b63 beqz a7,c0016210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48640 rt->host_promise_rejection_tracker(ctx, promise, s->promise_result, - c001602e: 1187b803 ld a6,280(a5) - c0016032: 7814 ld a3,48(s0) - c0016034: 7c18 ld a4,56(s0) - c0016036: 6582 ld a1,0(sp) - c0016038: 6622 ld a2,8(sp) - c001603a: 4785 li a5,1 - c001603c: 8526 mv a0,s1 - c001603e: 9882 jalr a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48636 + c00161fe: 1187b803 ld a6,280(a5) + c0016202: 7814 ld a3,48(s0) + c0016204: 7c18 ld a4,56(s0) + c0016206: 6582 ld a1,0(sp) + c0016208: 6622 ld a2,8(sp) + c001620a: 4785 li a5,1 + c001620c: 8526 mv a0,s1 + c001620e: 9882 jalr a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48644 i = s->promise_state - JS_PROMISE_FULFILLED; - c0016040: 401c lw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48637 + c0016210: 401c lw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48645 rd = rd_array[i]; - c0016042: 0914 addi a3,sp,144 + c0016212: 0914 addi a3,sp,144 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0016044: da02 sw zero,52(sp) + c0016214: da02 sw zero,52(sp) perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48644 i = s->promise_state - JS_PROMISE_FULFILLED; - c0016046: 37fd addiw a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48637 + c0016216: 37fd addiw a5,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48645 rd = rd_array[i]; - c0016048: 00379713 slli a4,a5,0x3 - c001604c: 9736 add a4,a4,a3 - c001604e: f8073703 ld a4,-128(a4) + c0016218: 00379713 slli a4,a5,0x3 + c001621c: 9736 add a4,a4,a3 + c001621e: f8073703 ld a4,-128(a4) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0016052: 00f037b3 snez a5,a5 - c0016056: d83e sw a5,48(sp) + c0016222: 00f037b3 snez a5,a5 + c0016226: d83e sw a5,48(sp) perform_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48646 args[0] = rd->resolving_funcs[0]; - c0016058: 6b14 ld a3,16(a4) - c001605a: 4785 li a5,1 - c001605c: fc3e sd a5,56(sp) - c001605e: e0b6 sd a3,64(sp) - c0016060: 6f14 ld a3,24(a4) - c0016062: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48643 + c0016228: 6b14 ld a3,16(a4) + c001622a: 4785 li a5,1 + c001622c: fc3e sd a5,56(sp) + c001622e: e0b6 sd a3,64(sp) + c0016230: 6f14 ld a3,24(a4) + c0016232: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48651 JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c0016064: 4615 li a2,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48638 + c0016234: 4615 li a2,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48646 args[0] = rd->resolving_funcs[0]; - c0016066: e4b6 sd a3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48639 + c0016236: e4b6 sd a3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48647 args[1] = rd->resolving_funcs[1]; - c0016068: 7314 ld a3,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48643 + c0016238: 7314 ld a3,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48651 JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c001606a: 00024597 auipc a1,0x24 - c001606e: 72c58593 addi a1,a1,1836 # c003a796 - c0016072: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48639 + c001623a: 00024597 auipc a1,0x24 + c001623e: 72c58593 addi a1,a1,1836 # c003a966 + c0016242: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48647 args[1] = rd->resolving_funcs[1]; - c0016074: e8b6 sd a3,80(sp) - c0016076: 7714 ld a3,40(a4) - c0016078: ecb6 sd a3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48640 + c0016244: e8b6 sd a3,80(sp) + c0016246: 7714 ld a3,40(a4) + c0016248: ecb6 sd a3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48648 args[2] = rd->handler; - c001607a: 7b14 ld a3,48(a4) - c001607c: f0b6 sd a3,96(sp) - c001607e: 7f18 ld a4,56(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48641 + c001624a: 7b14 ld a3,48(a4) + c001624c: f0b6 sd a3,96(sp) + c001624e: 7f18 ld a4,56(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48649 args[3] = JS_NewBool(ctx, i); - c0016080: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48643 + c0016250: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48651 JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c0016082: 0094 addi a3,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48640 + c0016252: 0094 addi a3,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48648 args[2] = rd->handler; - c0016084: f4ba sd a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48642 + c0016254: f4ba sd a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48650 args[4] = s->promise_result; - c0016086: 7742 ld a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48641 + c0016256: 7742 ld a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48649 args[3] = JS_NewBool(ctx, i); - c0016088: f8ba sd a4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48642 + c0016258: f8ba sd a4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48650 args[4] = s->promise_result; - c001608a: 781c ld a5,48(s0) - c001608c: f03a sd a4,32(sp) - c001608e: e13e sd a5,128(sp) - c0016090: 7c1c ld a5,56(s0) - c0016092: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48643 + c001625a: 781c ld a5,48(s0) + c001625c: f03a sd a4,32(sp) + c001625e: e13e sd a5,128(sp) + c0016260: 7c1c ld a5,56(s0) + c0016262: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48651 JS_EnqueueJob(ctx, promise_reaction_job, 5, args); - c0016094: a0cff0ef jal ra,c00152a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48645 + c0016264: a0cff0ef jal ra,c0015470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48653 promise_reaction_data_free(ctx->rt, rd_array[i]); - c0016098: 6c88 ld a0,24(s1) - c001609a: 85ce mv a1,s3 - c001609c: e42f20ef jal ra,c00086de - c00160a0: 6c88 ld a0,24(s1) - c00160a2: 85ca mv a1,s2 - c00160a4: e3af20ef jal ra,c00086de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48644 + c0016268: 6c88 ld a0,24(s1) + c001626a: 85ce mv a1,s3 + c001626c: d60f20ef jal ra,c00087cc + c0016270: 6c88 ld a0,24(s1) + c0016272: 85ca mv a1,s2 + c0016274: d58f20ef jal ra,c00087cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48652 for(i = 0; i < 2; i++) - c00160a8: bf25 j c0015fe0 + c0016278: bf25 j c00161b0 -00000000c00160aa : +00000000c001627a : js_new_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27225 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27233 { - c00160aa: 1101 addi sp,sp,-32 - c00160ac: e04a sd s2,0(sp) - c00160ae: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27227 + c001627a: 1101 addi sp,sp,-32 + c001627c: e04a sd s2,0(sp) + c001627e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27235 m = js_mallocz(ctx, sizeof(*m)); - c00160b0: 11800593 li a1,280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27225 + c0016280: 11800593 li a1,280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27233 { - c00160b4: e822 sd s0,16(sp) - c00160b6: e426 sd s1,8(sp) - c00160b8: ec06 sd ra,24(sp) - c00160ba: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27227 + c0016284: e822 sd s0,16(sp) + c0016286: e426 sd s1,8(sp) + c0016288: ec06 sd ra,24(sp) + c001628a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27235 m = js_mallocz(ctx, sizeof(*m)); - c00160bc: c21ff0ef jal ra,c0015cdc - c00160c0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27228 + c001628c: c21ff0ef jal ra,c0015eac + c0016290: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27236 if (!m) { - c00160c2: ed01 bnez a0,c00160da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27229 + c0016292: ed01 bnez a0,c00162aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27237 JS_FreeAtom(ctx, name); - c00160c4: 85ca mv a1,s2 - c00160c6: 8526 mv a0,s1 - c00160c8: c44f10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27243 + c0016294: 85ca mv a1,s2 + c0016296: 8526 mv a0,s1 + c0016298: b62f10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27251 } - c00160cc: 60e2 ld ra,24(sp) - c00160ce: 8522 mv a0,s0 - c00160d0: 6442 ld s0,16(sp) - c00160d2: 64a2 ld s1,8(sp) - c00160d4: 6902 ld s2,0(sp) - c00160d6: 6105 addi sp,sp,32 - c00160d8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27232 + c001629c: 60e2 ld ra,24(sp) + c001629e: 8522 mv a0,s0 + c00162a0: 6442 ld s0,16(sp) + c00162a2: 64a2 ld s1,8(sp) + c00162a4: 6902 ld s2,0(sp) + c00162a6: 6105 addi sp,sp,32 + c00162a8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27240 m->header.ref_count = 1; - c00160da: 4785 li a5,1 - c00160dc: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27234 + c00162aa: 4785 li a5,1 + c00162ac: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27242 m->module_ns = JS_UNDEFINED; - c00160de: 478d li a5,3 - c00160e0: f13c sd a5,96(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27235 + c00162ae: 478d li a5,3 + c00162b0: f13c sd a5,96(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27243 m->func_obj = JS_UNDEFINED; - c00160e2: f93c sd a5,112(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27236 + c00162b2: f93c sd a5,112(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27244 m->eval_exception = JS_UNDEFINED; - c00160e4: 10f53023 sd a5,256(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27237 + c00162b4: 10f53023 sd a5,256(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27245 m->meta_obj = JS_UNDEFINED; - c00160e8: 10f53823 sd a5,272(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27238 + c00162b8: 10f53823 sd a5,272(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27246 m->promise = JS_UNDEFINED; - c00160ec: e57c sd a5,200(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27239 + c00162bc: e57c sd a5,200(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27247 m->resolving_funcs[0] = JS_UNDEFINED; - c00160ee: ed7c sd a5,216(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27240 + c00162be: ed7c sd a5,216(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27248 m->resolving_funcs[1] = JS_UNDEFINED; - c00160f0: f57c sd a5,232(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27233 + c00162c0: f57c sd a5,232(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27241 m->module_name = name; - c00160f2: 01252223 sw s2,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27234 + c00162c2: 01252223 sw s2,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27242 m->module_ns = JS_UNDEFINED; - c00160f6: 04053c23 sd zero,88(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27235 + c00162c6: 04053c23 sd zero,88(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27243 m->func_obj = JS_UNDEFINED; - c00160fa: 06053423 sd zero,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27236 + c00162ca: 06053423 sd zero,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27244 m->eval_exception = JS_UNDEFINED; - c00160fe: 0e053c23 sd zero,248(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27237 + c00162ce: 0e053c23 sd zero,248(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27245 m->meta_obj = JS_UNDEFINED; - c0016102: 10053423 sd zero,264(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27238 + c00162d2: 10053423 sd zero,264(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27246 m->promise = JS_UNDEFINED; - c0016106: 0c053023 sd zero,192(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27239 + c00162d6: 0c053023 sd zero,192(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27247 m->resolving_funcs[0] = JS_UNDEFINED; - c001610a: 0c053823 sd zero,208(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27240 + c00162da: 0c053823 sd zero,208(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27248 m->resolving_funcs[1] = JS_UNDEFINED; - c001610e: 0e053023 sd zero,224(a0) + c00162de: 0e053023 sd zero,224(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0016112: 1a04b703 ld a4,416(s1) + c00162e2: 1a04b703 ld a4,416(s1) js_new_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27241 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27249 list_add_tail(&m->link, &ctx->loaded_modules); - c0016116: 00850793 addi a5,a0,8 + c00162e6: 00850793 addi a5,a0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c001611a: e71c sd a5,8(a4) + c00162ea: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c001611c: e518 sd a4,8(a0) + c00162ec: e518 sd a4,8(a0) js_new_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27241 - c001611e: 1a048713 addi a4,s1,416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27249 + c00162ee: 1a048713 addi a4,s1,416 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0016122: e918 sd a4,16(a0) + c00162f2: e918 sd a4,16(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0016124: 1af4b023 sd a5,416(s1) + c00162f4: 1af4b023 sd a5,416(s1) js_new_module_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27250 return m; - c0016128: b755 j c00160cc + c00162f8: b755 j c001629c -00000000c001612a : +00000000c00162fa : js_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1395 -{ - c001612a: 1101 addi sp,sp,-32 - c001612c: e822 sd s0,16(sp) - c001612e: e426 sd s1,8(sp) - c0016130: e04a sd s2,0(sp) - c0016132: ec06 sd ra,24(sp) - c0016134: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1399 +{ + c00162fa: 1101 addi sp,sp,-32 + c00162fc: e822 sd s0,16(sp) + c00162fe: e426 sd s1,8(sp) + c0016300: e04a sd s2,0(sp) + c0016302: ec06 sd ra,24(sp) + c0016304: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1401 ret = js_realloc_rt(ctx->rt, ptr, size); - c0016136: 6d08 ld a0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1395 + c0016306: 6d08 ld a0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1399 { - c0016138: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1397 + c0016308: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1401 ret = js_realloc_rt(ctx->rt, ptr, size); - c001613a: f37ed0ef jal ra,c0004070 - c001613e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1398 + c001630a: d67ed0ef jal ra,c0004070 + c001630e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1402 if (unlikely(!ret && size != 0)) { - c0016140: e511 bnez a0,c001614c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1398 (discriminator 1) - c0016142: 00090563 beqz s2,c001614c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1399 - JS_ThrowOutOfMemory(ctx); - c0016146: 8526 mv a0,s1 - c0016148: ad5fe0ef jal ra,c0014c1c + c0016310: e511 bnez a0,c001631c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1402 (discriminator 1) + c0016312: 00090563 beqz s2,c001631c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1403 + JS_ThrowOutOfMemory(ctx); + c0016316: 8526 mv a0,s1 + c0016318: 9f3fe0ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1407 } - c001614c: 60e2 ld ra,24(sp) - c001614e: 8522 mv a0,s0 - c0016150: 6442 ld s0,16(sp) - c0016152: 64a2 ld s1,8(sp) - c0016154: 6902 ld s2,0(sp) - c0016156: 6105 addi sp,sp,32 - c0016158: 8082 ret + c001631c: 60e2 ld ra,24(sp) + c001631e: 8522 mv a0,s0 + c0016320: 6442 ld s0,16(sp) + c0016322: 64a2 ld s1,8(sp) + c0016324: 6902 ld s2,0(sp) + c0016326: 6105 addi sp,sp,32 + c0016328: 8082 ret -00000000c001615a : +00000000c001632a : resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4523 -{ - c001615a: 715d addi sp,sp,-80 - c001615c: f84a sd s2,48(sp) - c001615e: f44e sd s3,40(sp) - c0016160: ec56 sd s5,24(sp) - c0016162: e486 sd ra,72(sp) - c0016164: e0a2 sd s0,64(sp) - c0016166: fc26 sd s1,56(sp) - c0016168: f052 sd s4,32(sp) - c001616a: e85a sd s6,16(sp) - c001616c: e45e sd s7,8(sp) - c001616e: e062 sd s8,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4531 +{ + c001632a: 715d addi sp,sp,-80 + c001632c: f84a sd s2,48(sp) + c001632e: f44e sd s3,40(sp) + c0016330: ec56 sd s5,24(sp) + c0016332: e486 sd ra,72(sp) + c0016334: e0a2 sd s0,64(sp) + c0016336: fc26 sd s1,56(sp) + c0016338: f052 sd s4,32(sp) + c001633a: e85a sd s6,16(sp) + c001633c: e45e sd s7,8(sp) + c001633e: e062 sd s8,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4539 sh = *psh; - c0016170: 6184 ld s1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4532 + c0016340: 6184 ld s1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4540 new_size = max_int(count, sh->prop_size * 3 / 2); - c0016172: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4523 + c0016342: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4531 { - c0016174: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4532 + c0016344: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4540 new_size = max_int(count, sh->prop_size * 3 / 2); - c0016176: 50d8 lw a4,36(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4523 + c0016346: 50d8 lw a4,36(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4531 { - c0016178: 89ae mv s3,a1 - c001617a: 8ab2 mv s5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4532 + c0016348: 89ae mv s3,a1 + c001634a: 8ab2 mv s5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4540 new_size = max_int(count, sh->prop_size * 3 / 2); - c001617c: 02e787bb mulw a5,a5,a4 - c0016180: 4709 li a4,2 - c0016182: 02e7c7bb divw a5,a5,a4 - c0016186: 0007871b sext.w a4,a5 - c001618a: 00d75363 bge a4,a3,c0016190 - c001618e: 87b6 mv a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4537 + c001634c: 02e787bb mulw a5,a5,a4 + c0016350: 4709 li a4,2 + c0016352: 02e7c7bb divw a5,a5,a4 + c0016356: 0007871b sext.w a4,a5 + c001635a: 00d75363 bge a4,a3,c0016360 + c001635e: 87b6 mv a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4545 new_prop = js_realloc(ctx, p->prop, sizeof(new_prop[0]) * new_size); - c0016190: 02079413 slli s0,a5,0x20 - c0016194: 00078a1b sext.w s4,a5 - c0016198: 9001 srli s0,s0,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4535 + c0016360: 02079413 slli s0,a5,0x20 + c0016364: 00078a1b sext.w s4,a5 + c0016368: 9001 srli s0,s0,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4543 if (p) { - c001619a: 020a8963 beqz s5,c00161cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4537 + c001636a: 020a8963 beqz s5,c001639c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4545 new_prop = js_realloc(ctx, p->prop, sizeof(new_prop[0]) * new_size); - c001619e: 020ab583 ld a1,32(s5) - c00161a2: 00441613 slli a2,s0,0x4 - c00161a6: 854a mv a0,s2 - c00161a8: f83ff0ef jal ra,c001612a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4538 + c001636e: 020ab583 ld a1,32(s5) + c0016372: 00441613 slli a2,s0,0x4 + c0016376: 854a mv a0,s2 + c0016378: f83ff0ef jal ra,c00162fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4546 if (unlikely(!new_prop)) - c00161ac: ed11 bnez a0,c00161c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4539 + c001637c: ed11 bnez a0,c0016398 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4547 return -1; - c00161ae: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4580 -} - c00161b0: 60a6 ld ra,72(sp) - c00161b2: 6406 ld s0,64(sp) - c00161b4: 74e2 ld s1,56(sp) - c00161b6: 7942 ld s2,48(sp) - c00161b8: 79a2 ld s3,40(sp) - c00161ba: 7a02 ld s4,32(sp) - c00161bc: 6ae2 ld s5,24(sp) - c00161be: 6b42 ld s6,16(sp) - c00161c0: 6ba2 ld s7,8(sp) - c00161c2: 6c02 ld s8,0(sp) - c00161c4: 6161 addi sp,sp,80 - c00161c6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4540 + c001637e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4588 +} + c0016380: 60a6 ld ra,72(sp) + c0016382: 6406 ld s0,64(sp) + c0016384: 74e2 ld s1,56(sp) + c0016386: 7942 ld s2,48(sp) + c0016388: 79a2 ld s3,40(sp) + c001638a: 7a02 ld s4,32(sp) + c001638c: 6ae2 ld s5,24(sp) + c001638e: 6b42 ld s6,16(sp) + c0016390: 6ba2 ld s7,8(sp) + c0016392: 6c02 ld s8,0(sp) + c0016394: 6161 addi sp,sp,80 + c0016396: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4548 p->prop = new_prop; - c00161c8: 02aab023 sd a0,32(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4542 + c0016398: 02aab023 sd a0,32(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4550 new_hash_size = sh->prop_hash_mask + 1; - c00161cc: 0204aa83 lw s5,32(s1) - c00161d0: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4543 + c001639c: 0204aa83 lw s5,32(s1) + c00163a0: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4551 while (new_hash_size < new_size) - c00161d2: 0b4ae263 bltu s5,s4,c0016276 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4548 + c00163a2: 0b4ae263 bltu s5,s4,c0016446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4556 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00161d6: 020a9b93 slli s7,s5,0x20 + c00163a6: 020a9b93 slli s7,s5,0x20 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c00161da: 00141793 slli a5,s0,0x1 + c00163aa: 00141793 slli a5,s0,0x1 resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4556 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00161de: 020bdb93 srli s7,s7,0x20 + c00163ae: 020bdb93 srli s7,s7,0x20 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c00161e2: 07c1 addi a5,a5,16 - c00161e4: 97de add a5,a5,s7 + c00163b2: 07c1 addi a5,a5,16 + c00163b4: 97de add a5,a5,s7 resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4556 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00161e6: 00279593 slli a1,a5,0x2 - c00161ea: 854a mv a0,s2 - c00161ec: a61fe0ef jal ra,c0014c4c - c00161f0: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4549 + c00163b6: 00279593 slli a1,a5,0x2 + c00163ba: 854a mv a0,s2 + c00163bc: 97ffe0ef jal ra,c0014d3a + c00163c0: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4557 if (!sh_alloc) - c00161f2: dd55 beqz a0,c00161ae + c00163c2: dd55 beqz a0,c001637e get_shape_from_alloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4308 return (JSShape *)(void *)((uint32_t *)sh_alloc + hash_size); - c00161f4: 0b8a slli s7,s7,0x2 - c00161f6: 01750433 add s0,a0,s7 + c00163c4: 0b8a slli s7,s7,0x2 + c00163c6: 01750433 add s0,a0,s7 resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4560 list_del(&old_sh->header.link); - c00161fa: 00848513 addi a0,s1,8 - c00161fe: e5ded0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4555 + c00163ca: 00848513 addi a0,s1,8 + c00163ce: c8ded0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4563 sizeof(JSShape) + sizeof(sh->prop[0]) * old_sh->prop_count); - c0016202: 5490 lw a2,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4554 + c00163d2: 5490 lw a2,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4562 memcpy(sh, old_sh, - c0016204: 85a6 mv a1,s1 - c0016206: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4555 + c00163d4: 85a6 mv a1,s1 + c00163d6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4563 sizeof(JSShape) + sizeof(sh->prop[0]) * old_sh->prop_count); - c0016208: 0621 addi a2,a2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4554 + c00163d8: 0621 addi a2,a2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4562 memcpy(sh, old_sh, - c001620a: 060e slli a2,a2,0x3 - c001620c: 7ce400ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4556 + c00163da: 060e slli a2,a2,0x3 + c00163dc: 7ce400ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4564 list_add_tail(&sh->header.link, &ctx->rt->gc_obj_list); - c0016210: 01893783 ld a5,24(s2) - c0016214: 00840713 addi a4,s0,8 + c00163e0: 01893783 ld a5,24(s2) + c00163e4: 00840713 addi a4,s0,8 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0016218: 67d4 ld a3,136(a5) + c00163e8: 67d4 ld a3,136(a5) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c001621a: e698 sd a4,8(a3) + c00163ea: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c001621c: e414 sd a3,8(s0) + c00163ec: e414 sd a3,8(s0) resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4556 - c001621e: 08878693 addi a3,a5,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4564 + c00163ee: 08878693 addi a3,a5,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0016222: e814 sd a3,16(s0) + c00163f2: e814 sd a3,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0016224: e7d8 sd a4,136(a5) + c00163f4: e7d8 sd a4,136(a5) resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4566 if (new_hash_size != (sh->prop_hash_mask + 1)) { - c0016226: 501c lw a5,32(s0) - c0016228: 2785 addiw a5,a5,1 - c001622a: 07578f63 beq a5,s5,c00162a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4560 + c00163f6: 501c lw a5,32(s0) + c00163f8: 2785 addiw a5,a5,1 + c00163fa: 07578f63 beq a5,s5,c0016478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4568 new_hash_mask = new_hash_size - 1; - c001622e: fffa8c1b addiw s8,s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4562 + c00163fe: fffa8c1b addiw s8,s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4570 memset(prop_hash_end(sh) - new_hash_size, 0, - c0016232: 865e mv a2,s7 - c0016234: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4561 + c0016402: 865e mv a2,s7 + c0016404: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4569 sh->prop_hash_mask = new_hash_mask; - c0016236: 03842023 sw s8,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4562 + c0016406: 03842023 sw s8,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4570 memset(prop_hash_end(sh) - new_hash_size, 0, - c001623a: 855a mv a0,s6 - c001623c: 634400ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4567 + c001640a: 855a mv a0,s6 + c001640c: 634400ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4575 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c0016240: 040005b7 lui a1,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4564 + c0016410: 040005b7 lui a1,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4572 for(i = 0, pr = sh->prop; i < sh->prop_count; i++, pr++) { - c0016244: 04040713 addi a4,s0,64 - c0016248: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4567 + c0016414: 04040713 addi a4,s0,64 + c0016418: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4575 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c001624a: 58f1 li a7,-4 - c001624c: 15fd addi a1,a1,-1 - c001624e: fc000337 lui t1,0xfc000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4564 (discriminator 1) + c001641a: 58f1 li a7,-4 + c001641c: 15fd addi a1,a1,-1 + c001641e: fc000337 lui t1,0xfc000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4572 (discriminator 1) for(i = 0, pr = sh->prop; i < sh->prop_count; i++, pr++) { - c0016252: 541c lw a5,40(s0) - c0016254: 02f66463 bltu a2,a5,c001627c + c0016422: 541c lw a5,40(s0) + c0016424: 02f66463 bltu a2,a5,c001644c get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c0016258: 0204e583 lwu a1,32(s1) + c0016428: 0204e583 lwu a1,32(s1) resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4584 js_free(ctx, get_alloc_from_shape(old_sh)); - c001625c: 854a mv a0,s2 + c001642c: 854a mv a0,s2 get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c001625e: 058a slli a1,a1,0x2 - c0016260: 40b485b3 sub a1,s1,a1 + c001642e: 058a slli a1,a1,0x2 + c0016430: 40b485b3 sub a1,s1,a1 resize_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4584 js_free(ctx, get_alloc_from_shape(old_sh)); - c0016264: 15f1 addi a1,a1,-4 - c0016266: bd5f00ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4577 + c0016434: 15f1 addi a1,a1,-4 + c0016436: af3f00ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4585 *psh = sh; - c001626a: 0089b023 sd s0,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4578 + c001643a: 0089b023 sd s0,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4586 sh->prop_size = new_size; - c001626e: 03442223 sw s4,36(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4579 + c001643e: 03442223 sw s4,36(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4587 return 0; - c0016272: 4501 li a0,0 - c0016274: bf35 j c00161b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4544 + c0016442: 4501 li a0,0 + c0016444: bf35 j c0016380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4552 new_hash_size = 2 * new_hash_size; - c0016276: 001a9a9b slliw s5,s5,0x1 - c001627a: bfa1 j c00161d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4565 + c0016446: 001a9a9b slliw s5,s5,0x1 + c001644a: bfa1 j c00163a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4573 if (pr->atom != JS_ATOM_NULL) { - c001627c: 435c lw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4568 + c001644c: 435c lw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4576 prop_hash_end(sh)[-h - 1] = i + 1; - c001627e: 2605 addiw a2,a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4565 + c001644e: 2605 addiw a2,a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4573 if (pr->atom != JS_ATOM_NULL) { - c0016280: c395 beqz a5,c00162a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4566 + c0016450: c395 beqz a5,c0016474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4574 h = ((uintptr_t)pr->atom & new_hash_mask); - c0016282: 0187f7b3 and a5,a5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4567 + c0016452: 0187f7b3 and a5,a5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4575 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c0016286: 1782 slli a5,a5,0x20 - c0016288: 9381 srli a5,a5,0x20 - c001628a: 0785 addi a5,a5,1 - c001628c: 031787b3 mul a5,a5,a7 - c0016290: 97a2 add a5,a5,s0 - c0016292: 4394 lw a3,0(a5) - c0016294: 00b6f533 and a0,a3,a1 - c0016298: 4314 lw a3,0(a4) - c001629a: 0066f6b3 and a3,a3,t1 - c001629e: 8ec9 or a3,a3,a0 - c00162a0: c314 sw a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4568 + c0016456: 1782 slli a5,a5,0x20 + c0016458: 9381 srli a5,a5,0x20 + c001645a: 0785 addi a5,a5,1 + c001645c: 031787b3 mul a5,a5,a7 + c0016460: 97a2 add a5,a5,s0 + c0016462: 4394 lw a3,0(a5) + c0016464: 00b6f533 and a0,a3,a1 + c0016468: 4314 lw a3,0(a4) + c001646a: 0066f6b3 and a3,a3,t1 + c001646e: 8ec9 or a3,a3,a0 + c0016470: c314 sw a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4576 prop_hash_end(sh)[-h - 1] = i + 1; - c00162a2: c390 sw a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4564 (discriminator 2) + c0016472: c390 sw a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4572 (discriminator 2) for(i = 0, pr = sh->prop; i < sh->prop_count; i++, pr++) { - c00162a4: 0721 addi a4,a4,8 - c00162a6: b775 j c0016252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4573 + c0016474: 0721 addi a4,a4,8 + c0016476: b775 j c0016422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4581 memcpy(prop_hash_end(sh) - new_hash_size, prop_hash_end(old_sh) - new_hash_size, - c00162a8: 865e mv a2,s7 - c00162aa: 417485b3 sub a1,s1,s7 - c00162ae: 855a mv a0,s6 - c00162b0: 72a400ef jal ra,c00569da - c00162b4: b755 j c0016258 + c0016478: 865e mv a2,s7 + c001647a: 417485b3 sub a1,s1,s7 + c001647e: 855a mv a0,s6 + c0016480: 72a400ef jal ra,c0056baa + c0016484: b755 j c0016428 -00000000c00162b6 : +00000000c0016486 : add_shape_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4660 { - c00162b6: 715d addi sp,sp,-80 - c00162b8: fc26 sd s1,56(sp) - c00162ba: f84a sd s2,48(sp) - c00162bc: f44e sd s3,40(sp) - c00162be: f052 sd s4,32(sp) - c00162c0: ec56 sd s5,24(sp) - c00162c2: e486 sd ra,72(sp) - c00162c4: e0a2 sd s0,64(sp) - c00162c6: e85a sd s6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4654 + c0016486: 715d addi sp,sp,-80 + c0016488: fc26 sd s1,56(sp) + c001648a: f84a sd s2,48(sp) + c001648c: f44e sd s3,40(sp) + c001648e: f052 sd s4,32(sp) + c0016490: ec56 sd s5,24(sp) + c0016492: e486 sd ra,72(sp) + c0016494: e0a2 sd s0,64(sp) + c0016496: e85a sd s6,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4662 JSShape *sh = *psh; - c00162c8: 6180 ld s0,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4653 + c0016498: 6180 ld s0,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4661 JSRuntime *rt = ctx->rt; - c00162ca: 01853b03 ld s6,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4652 -{ - c00162ce: 8aaa mv s5,a0 + c001649a: 01853b03 ld s6,24(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4660 - if (sh->is_hashed) { - c00162d0: 01844783 lbu a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4652 { - c00162d4: 8a2e mv s4,a1 - c00162d6: 84b6 mv s1,a3 - c00162d8: 89ba mv s3,a4 - c00162da: 4901 li s2,0 + c001649e: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4668 + if (sh->is_hashed) { + c00164a0: 01844783 lbu a5,24(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4660 +{ + c00164a4: 8a2e mv s4,a1 + c00164a6: 84b6 mv s1,a3 + c00164a8: 89ba mv s3,a4 + c00164aa: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4668 if (sh->is_hashed) { - c00162dc: c785 beqz a5,c0016304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4661 + c00164ac: c785 beqz a5,c00164d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4669 js_shape_hash_unlink(rt, sh); - c00162de: 85a2 mv a1,s0 - c00162e0: 855a mv a0,s6 - c00162e2: e432 sd a2,8(sp) - c00162e4: f55ed0ef jal ra,c0004238 + c00164ae: 85a2 mv a1,s0 + c00164b0: 855a mv a0,s6 + c00164b2: e432 sd a2,8(sp) + c00164b4: d85ed0ef jal ra,c0004238 shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c00162e8: 01c42903 lw s2,28(s0) - c00162ec: 9e3707b7 lui a5,0x9e370 - c00162f0: 2785 addiw a5,a5,1 - c00162f2: 0099093b addw s2,s2,s1 - c00162f6: 02f9093b mulw s2,s2,a5 - c00162fa: 6622 ld a2,8(sp) - c00162fc: 0139093b addw s2,s2,s3 - c0016300: 02f9093b mulw s2,s2,a5 + c00164b8: 01c42903 lw s2,28(s0) + c00164bc: 9e3707b7 lui a5,0x9e370 + c00164c0: 2785 addiw a5,a5,1 + c00164c2: 0099093b addw s2,s2,s1 + c00164c6: 02f9093b mulw s2,s2,a5 + c00164ca: 6622 ld a2,8(sp) + c00164cc: 0139093b addw s2,s2,s3 + c00164d0: 02f9093b mulw s2,s2,a5 add_shape_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4665 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4673 if (unlikely(sh->prop_count >= sh->prop_size)) { - c0016304: 5414 lw a3,40(s0) - c0016306: 505c lw a5,36(s0) - c0016308: 02f6cd63 blt a3,a5,c0016342 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4666 + c00164d4: 5414 lw a3,40(s0) + c00164d6: 505c lw a5,36(s0) + c00164d8: 02f6cd63 blt a3,a5,c0016512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4674 if (resize_properties(ctx, psh, p, sh->prop_count + 1)) { - c001630c: 2685 addiw a3,a3,1 - c001630e: 85d2 mv a1,s4 - c0016310: 8556 mv a0,s5 - c0016312: e49ff0ef jal ra,c001615a - c0016316: c505 beqz a0,c001633e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4669 + c00164dc: 2685 addiw a3,a3,1 + c00164de: 85d2 mv a1,s4 + c00164e0: 8556 mv a0,s5 + c00164e2: e49ff0ef jal ra,c001632a + c00164e6: c505 beqz a0,c001650e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4677 if (sh->is_hashed) - c0016318: 01844783 lbu a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4671 + c00164e8: 01844783 lbu a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4679 return -1; - c001631c: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4669 + c00164ec: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4677 if (sh->is_hashed) - c001631e: c789 beqz a5,c0016328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4670 + c00164ee: c789 beqz a5,c00164f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4678 js_shape_hash_link(rt, sh); - c0016320: 85a2 mv a1,s0 - c0016322: 855a mv a0,s6 - c0016324: edded0ef jal ra,c0004200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4692 -} - c0016328: 60a6 ld ra,72(sp) - c001632a: 6406 ld s0,64(sp) - c001632c: 7942 ld s2,48(sp) - c001632e: 79a2 ld s3,40(sp) - c0016330: 7a02 ld s4,32(sp) - c0016332: 6ae2 ld s5,24(sp) - c0016334: 6b42 ld s6,16(sp) - c0016336: 8526 mv a0,s1 - c0016338: 74e2 ld s1,56(sp) - c001633a: 6161 addi sp,sp,80 - c001633c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4673 + c00164f0: 85a2 mv a1,s0 + c00164f2: 855a mv a0,s6 + c00164f4: d0ded0ef jal ra,c0004200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4700 +} + c00164f8: 60a6 ld ra,72(sp) + c00164fa: 6406 ld s0,64(sp) + c00164fc: 7942 ld s2,48(sp) + c00164fe: 79a2 ld s3,40(sp) + c0016500: 7a02 ld s4,32(sp) + c0016502: 6ae2 ld s5,24(sp) + c0016504: 6b42 ld s6,16(sp) + c0016506: 8526 mv a0,s1 + c0016508: 74e2 ld s1,56(sp) + c001650a: 6161 addi sp,sp,80 + c001650c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4681 sh = *psh; - c001633e: 000a3403 ld s0,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4675 + c001650e: 000a3403 ld s0,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4683 if (sh->is_hashed) { - c0016342: 01844783 lbu a5,24(s0) - c0016346: c799 beqz a5,c0016354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4676 + c0016512: 01844783 lbu a5,24(s0) + c0016516: c799 beqz a5,c0016524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4684 sh->hash = new_shape_hash; - c0016348: 01242e23 sw s2,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4677 + c0016518: 01242e23 sw s2,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4685 js_shape_hash_link(rt, sh); - c001634c: 85a2 mv a1,s0 - c001634e: 855a mv a0,s6 - c0016350: eb1ed0ef jal ra,c0004200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4682 + c001651c: 85a2 mv a1,s0 + c001651e: 855a mv a0,s6 + c0016520: ce1ed0ef jal ra,c0004200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4690 pr = &prop[sh->prop_count++]; - c0016354: 541c lw a5,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4683 + c0016524: 541c lw a5,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 pr->atom = JS_DupAtom(ctx, atom); - c0016356: 85a6 mv a1,s1 + c0016526: 85a6 mv a1,s1 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0016358: 04040913 addi s2,s0,64 + c0016528: 04040913 addi s2,s0,64 add_shape_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4690 pr = &prop[sh->prop_count++]; - c001635c: 0017871b addiw a4,a5,1 - c0016360: d418 sw a4,40(s0) - c0016362: 078e slli a5,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4683 + c001652c: 0017871b addiw a4,a5,1 + c0016530: d418 sw a4,40(s0) + c0016532: 078e slli a5,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 pr->atom = JS_DupAtom(ctx, atom); - c0016364: 8556 mv a0,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4682 + c0016534: 8556 mv a0,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4690 pr = &prop[sh->prop_count++]; - c0016366: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4683 + c0016536: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 pr->atom = JS_DupAtom(ctx, atom); - c0016368: 962f10ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4684 + c0016538: 880f10ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4692 pr->flags = prop_flags; - c001636c: 01a9971b slliw a4,s3,0x1a - c0016370: 00092983 lw s3,0(s2) - c0016374: 04000637 lui a2,0x4000 - c0016378: 167d addi a2,a2,-1 - c001637a: 00c9f9b3 and s3,s3,a2 - c001637e: 00e9e9b3 or s3,s3,a4 - c0016382: 01392023 sw s3,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4683 + c001653c: 01a9971b slliw a4,s3,0x1a + c0016540: 00092983 lw s3,0(s2) + c0016544: 04000637 lui a2,0x4000 + c0016548: 167d addi a2,a2,-1 + c001654a: 00c9f9b3 and s3,s3,a2 + c001654e: 00e9e9b3 or s3,s3,a4 + c0016552: 01392023 sw s3,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 pr->atom = JS_DupAtom(ctx, atom); - c0016386: 00a92223 sw a0,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4685 + c0016556: 00a92223 sw a0,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4693 sh->has_small_array_index |= __JS_AtomIsTaggedInt(atom); - c001638a: 01944783 lbu a5,25(s0) + c001655a: 01944783 lbu a5,25(s0) __JS_AtomIsTaggedInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2436 return (v & JS_ATOM_TAG_INT) != 0; - c001638e: 01f4d71b srliw a4,s1,0x1f + c001655e: 01f4d71b srliw a4,s1,0x1f add_shape_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4697 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c0016392: fc0006b7 lui a3,0xfc000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4685 + c0016562: fc0006b7 lui a3,0xfc000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4693 sh->has_small_array_index |= __JS_AtomIsTaggedInt(atom); - c0016396: 8fd9 or a5,a5,a4 - c0016398: 00f40ca3 sb a5,25(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4688 + c0016566: 8fd9 or a5,a5,a4 + c0016568: 00f40ca3 sb a5,25(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4696 h = atom & hash_mask; - c001639c: 501c lw a5,32(s0) - c001639e: 8fe5 and a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4689 + c001656c: 501c lw a5,32(s0) + c001656e: 8fe5 and a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4697 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c00163a0: 1782 slli a5,a5,0x20 - c00163a2: 9381 srli a5,a5,0x20 - c00163a4: 54f1 li s1,-4 - c00163a6: 0785 addi a5,a5,1 - c00163a8: 029787b3 mul a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 + c0016570: 1782 slli a5,a5,0x20 + c0016572: 9381 srli a5,a5,0x20 + c0016574: 54f1 li s1,-4 + c0016576: 0785 addi a5,a5,1 + c0016578: 029787b3 mul a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4699 return 0; - c00163ac: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4689 + c001657c: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4697 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c00163ae: 97a2 add a5,a5,s0 - c00163b0: 4398 lw a4,0(a5) - c00163b2: 8e79 and a2,a2,a4 - c00163b4: 00092703 lw a4,0(s2) - c00163b8: 8f75 and a4,a4,a3 - c00163ba: 8f51 or a4,a4,a2 - c00163bc: 00e92023 sw a4,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4690 + c001657e: 97a2 add a5,a5,s0 + c0016580: 4398 lw a4,0(a5) + c0016582: 8e79 and a2,a2,a4 + c0016584: 00092703 lw a4,0(s2) + c0016588: 8f75 and a4,a4,a3 + c001658a: 8f51 or a4,a4,a2 + c001658c: 00e92023 sw a4,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4698 prop_hash_end(sh)[-h - 1] = sh->prop_count; - c00163c0: 5418 lw a4,40(s0) - c00163c2: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4691 + c0016590: 5418 lw a4,40(s0) + c0016592: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4699 return 0; - c00163c4: b795 j c0016328 + c0016594: b795 j c00164f8 -00000000c00163c6 : +00000000c0016596 : add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8105 -{ - c00163c6: 7139 addi sp,sp,-64 - c00163c8: f822 sd s0,48(sp) - c00163ca: ec4e sd s3,24(sp) - c00163cc: e852 sd s4,16(sp) - c00163ce: e456 sd s5,8(sp) - c00163d0: fc06 sd ra,56(sp) - c00163d2: f426 sd s1,40(sp) - c00163d4: f04a sd s2,32(sp) - c00163d6: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8113 +{ + c0016596: 7139 addi sp,sp,-64 + c0016598: f822 sd s0,48(sp) + c001659a: ec4e sd s3,24(sp) + c001659c: e852 sd s4,16(sp) + c001659e: e456 sd s5,8(sp) + c00165a0: fc06 sd ra,56(sp) + c00165a2: f426 sd s1,40(sp) + c00165a4: f04a sd s2,32(sp) + c00165a6: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8116 sh = p->shape; - c00163d8: 0185b903 ld s2,24(a1) # 4000018 <__clzdi2-0xbbffffe8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8105 + c00165a8: 0185b903 ld s2,24(a1) # 4000018 <__clzdi2-0xbbffffe8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8113 { - c00163dc: 89aa mv s3,a0 - c00163de: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8109 + c00165ac: 89aa mv s3,a0 + c00165ae: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8117 if (sh->is_hashed) { - c00163e0: 01894783 lbu a5,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8105 + c00165b0: 01894783 lbu a5,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8113 { - c00163e4: 8a32 mv s4,a2 - c00163e6: 8ab6 mv s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8109 + c00165b4: 8a32 mv s4,a2 + c00165b6: 8ab6 mv s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8117 if (sh->is_hashed) { - c00163e8: c7bd beqz a5,c0016456 + c00165b8: c7bd beqz a5,c0016626 shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c00163ea: 01c92783 lw a5,28(s2) - c00163ee: 9e370737 lui a4,0x9e370 - c00163f2: 2705 addiw a4,a4,1 - c00163f4: 9fb1 addw a5,a5,a2 - c00163f6: 02e787bb mulw a5,a5,a4 + c00165ba: 01c92783 lw a5,28(s2) + c00165be: 9e370737 lui a4,0x9e370 + c00165c2: 2705 addiw a4,a4,1 + c00165c4: 9fb1 addw a5,a5,a2 + c00165c6: 02e787bb mulw a5,a5,a4 add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8111 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8119 new_sh = find_hashed_shape_prop(ctx->rt, sh, prop, prop_flags); - c00163fa: 6d14 ld a3,24(a0) + c00165ca: 6d14 ld a3,24(a0) get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c00163fc: 1786a603 lw a2,376(a3) # fffffffffc000178 <_ebss+0xffffffff3beff052> + c00165cc: 1786a603 lw a2,376(a3) # fffffffffc000178 <_ebss+0xffffffff3beff052> shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c0016400: 015787bb addw a5,a5,s5 - c0016404: 02e7883b mulw a6,a5,a4 + c00165d0: 015787bb addw a5,a5,s5 + c00165d4: 02e7883b mulw a6,a5,a4 get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c0016408: 02000713 li a4,32 - c001640c: 9f11 subw a4,a4,a2 - c001640e: 00e857bb srlw a5,a6,a4 + c00165d8: 02000713 li a4,32 + c00165dc: 9f11 subw a4,a4,a2 + c00165de: 00e857bb srlw a5,a6,a4 find_hashed_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4725 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4733 for(sh1 = rt->shape_hash[h1]; sh1 != NULL; sh1 = sh1->shape_hash_next) { - c0016412: 1886b703 ld a4,392(a3) - c0016416: 02079693 slli a3,a5,0x20 - c001641a: 01d6d793 srli a5,a3,0x1d - c001641e: 97ba add a5,a5,a4 - c0016420: 6384 ld s1,0(a5) - c0016422: e8a9 bnez s1,c0016474 + c00165e2: 1886b703 ld a4,392(a3) + c00165e6: 02079693 slli a3,a5,0x20 + c00165ea: 01d6d793 srli a5,a3,0x1d + c00165ee: 97ba add a5,a5,a4 + c00165f0: 6384 ld s1,0(a5) + c00165f2: e8a9 bnez s1,c0016644 add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8134 } else if (sh->header.ref_count != 1) { - c0016424: 00092783 lw a5,0(s2) - c0016428: 4b05 li s6,1 - c001642a: 11678e63 beq a5,s6,c0016546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8128 + c00165f4: 00092783 lw a5,0(s2) + c00165f8: 4b05 li s6,1 + c00165fa: 11678e63 beq a5,s6,c0016716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8136 new_sh = js_clone_shape(ctx, sh); - c001642e: 85ca mv a1,s2 - c0016430: 854e mv a0,s3 - c0016432: 96dfe0ef jal ra,c0014d9e - c0016436: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8129 + c00165fe: 85ca mv a1,s2 + c0016600: 854e mv a0,s3 + c0016602: 96dfe0ef jal ra,c0014f6e + c0016606: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8137 if (!new_sh) - c0016438: 0e050a63 beqz a0,c001652c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8132 + c0016608: 0e050a63 beqz a0,c00166fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8140 new_sh->is_hashed = TRUE; - c001643c: 01650c23 sb s6,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8133 + c001660c: 01650c23 sb s6,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8141 js_shape_hash_link(ctx->rt, new_sh); - c0016440: 85aa mv a1,a0 - c0016442: 0189b503 ld a0,24(s3) - c0016446: dbbed0ef jal ra,c0004200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8134 + c0016610: 85aa mv a1,a0 + c0016612: 0189b503 ld a0,24(s3) + c0016616: bebed0ef jal ra,c0004200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8142 js_free_shape(ctx->rt, p->shape); - c001644a: 6c0c ld a1,24(s0) - c001644c: 0189b503 ld a0,24(s3) - c0016450: ac6f20ef jal ra,c0008716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8135 + c001661a: 6c0c ld a1,24(s0) + c001661c: 0189b503 ld a0,24(s3) + c0016620: 9e4f20ef jal ra,c0008804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8143 p->shape = new_sh; - c0016454: ec04 sd s1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8138 + c0016624: ec04 sd s1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8146 assert(p->shape->header.ref_count == 1); - c0016456: 6c1c ld a5,24(s0) - c0016458: 4398 lw a4,0(a5) - c001645a: 4785 li a5,1 - c001645c: 0ef70563 beq a4,a5,c0016546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8138 (discriminator 1) - c0016460: 6589 lui a1,0x2 - c0016462: 4601 li a2,0 - c0016464: fca58593 addi a1,a1,-54 # 1fca <__clzdi2-0xbfffe036> - c0016468: 00046517 auipc a0,0x46 - c001646c: 61050513 addi a0,a0,1552 # c005ca78 - c0016470: 5a83d0ef jal ra,c0053a18 <__assert> + c0016626: 6c1c ld a5,24(s0) + c0016628: 4398 lw a4,0(a5) + c001662a: 4785 li a5,1 + c001662c: 0ef70563 beq a4,a5,c0016716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8146 (discriminator 1) + c0016630: 6589 lui a1,0x2 + c0016632: 4601 li a2,0 + c0016634: fd258593 addi a1,a1,-46 # 1fd2 <__clzdi2-0xbfffe02e> + c0016638: 00046517 auipc a0,0x46 + c001663c: 61050513 addi a0,a0,1552 # c005cc48 + c0016640: 5a83d0ef jal ra,c0053be8 <__assert> find_hashed_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4736 if (sh1->hash == h && - c0016474: 4cdc lw a5,28(s1) - c0016476: 0b079363 bne a5,a6,c001651c - c001647a: 7c98 ld a4,56(s1) - c001647c: 03893783 ld a5,56(s2) - c0016480: 08f71e63 bne a4,a5,c001651c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4730 + c0016644: 4cdc lw a5,28(s1) + c0016646: 0b079363 bne a5,a6,c00166ec + c001664a: 7c98 ld a4,56(s1) + c001664c: 03893783 ld a5,56(s2) + c0016650: 08f71e63 bne a4,a5,c00166ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4738 sh1->prop_count == ((n = sh->prop_count) + 1)) { - c0016484: 02892783 lw a5,40(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4729 + c0016654: 02892783 lw a5,40(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4737 sh1->proto == sh->proto && - c0016488: 5494 lw a3,40(s1) - c001648a: 0017871b addiw a4,a5,1 - c001648e: 08e69763 bne a3,a4,c001651c - c0016492: 04400693 li a3,68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4731 + c0016658: 5494 lw a3,40(s1) + c001665a: 0017871b addiw a4,a5,1 + c001665e: 08e69763 bne a3,a4,c00166ec + c0016662: 04400693 li a3,68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4739 for(i = 0; i < n; i++) { - c0016496: 4701 li a4,0 - c0016498: a825 j c00164d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4732 + c0016666: 4701 li a4,0 + c0016668: a825 j c00166a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4740 if (unlikely(sh1->prop[i].atom != sh->prop[i].atom) || - c001649a: 00d485b3 add a1,s1,a3 - c001649e: 00d90633 add a2,s2,a3 - c00164a2: 418c lw a1,0(a1) - c00164a4: 4210 lw a2,0(a2) - c00164a6: 06c59b63 bne a1,a2,c001651c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4733 + c001666a: 00d485b3 add a1,s1,a3 + c001666e: 00d90633 add a2,s2,a3 + c0016672: 418c lw a1,0(a1) + c0016674: 4210 lw a2,0(a2) + c0016676: 06c59b63 bne a1,a2,c00166ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4741 unlikely(sh1->prop[i].flags != sh->prop[i].flags)) - c00164aa: 02071613 slli a2,a4,0x20 - c00164ae: 01d65593 srli a1,a2,0x1d - c00164b2: 04058593 addi a1,a1,64 - c00164b6: 00b48633 add a2,s1,a1 - c00164ba: 95ca add a1,a1,s2 - c00164bc: 6208 ld a0,0(a2) - c00164be: 6190 ld a2,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4732 + c001667a: 02071613 slli a2,a4,0x20 + c001667e: 01d65593 srli a1,a2,0x1d + c0016682: 04058593 addi a1,a1,64 + c0016686: 00b48633 add a2,s1,a1 + c001668a: 95ca add a1,a1,s2 + c001668c: 6208 ld a0,0(a2) + c001668e: 6190 ld a2,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4740 if (unlikely(sh1->prop[i].atom != sh->prop[i].atom) || - c00164c0: 06a1 addi a3,a3,8 - c00164c2: 01a5559b srliw a1,a0,0x1a - c00164c6: 01a6561b srliw a2,a2,0x1a - c00164ca: 04c59963 bne a1,a2,c001651c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4731 + c0016690: 06a1 addi a3,a3,8 + c0016692: 01a5559b srliw a1,a0,0x1a + c0016696: 01a6561b srliw a2,a2,0x1a + c001669a: 04c59963 bne a1,a2,c00166ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4739 for(i = 0; i < n; i++) { - c00164ce: 2705 addiw a4,a4,1 - c00164d0: fce795e3 bne a5,a4,c001649a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4736 + c001669e: 2705 addiw a4,a4,1 + c00166a0: fce795e3 bne a5,a4,c001666a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4744 if (unlikely(sh1->prop[n].atom != atom) || - c00164d4: 02079713 slli a4,a5,0x20 - c00164d8: 01d75793 srli a5,a4,0x1d - c00164dc: 04078793 addi a5,a5,64 # ffffffff9e370040 <_ebss+0xfffffffede26ef1a> - c00164e0: 97a6 add a5,a5,s1 - c00164e2: 43d8 lw a4,4(a5) - c00164e4: 03471c63 bne a4,s4,c001651c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4737 + c00166a4: 02079713 slli a4,a5,0x20 + c00166a8: 01d75793 srli a5,a4,0x1d + c00166ac: 04078793 addi a5,a5,64 # ffffffff9e370040 <_ebss+0xfffffffede26ef1a> + c00166b0: 97a6 add a5,a5,s1 + c00166b2: 43d8 lw a4,4(a5) + c00166b4: 03471c63 bne a4,s4,c00166ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4745 unlikely(sh1->prop[n].flags != prop_flags)) - c00164e8: 639c ld a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4736 + c00166b8: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4744 if (unlikely(sh1->prop[n].atom != atom) || - c00164ea: 01a7d79b srliw a5,a5,0x1a - c00164ee: 03579763 bne a5,s5,c001651c + c00166ba: 01a7d79b srliw a5,a5,0x1a + c00166be: 03579763 bne a5,s5,c00166ec add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8115 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8123 if (new_sh->prop_size != sh->prop_size) { - c00164f2: 50d0 lw a2,36(s1) - c00164f4: 02492783 lw a5,36(s2) - c00164f8: 02c79463 bne a5,a2,c0016520 + c00166c2: 50d0 lw a2,36(s1) + c00166c4: 02492783 lw a5,36(s2) + c00166c8: 02c79463 bne a5,a2,c00166f0 js_dup_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4491 sh->header.ref_count++; - c00164fc: 409c lw a5,0(s1) + c00166cc: 409c lw a5,0(s1) add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8132 js_free_shape(ctx->rt, sh); - c00164fe: 85ca mv a1,s2 + c00166ce: 85ca mv a1,s2 js_dup_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4491 sh->header.ref_count++; - c0016500: 2785 addiw a5,a5,1 - c0016502: c09c sw a5,0(s1) + c00166d0: 2785 addiw a5,a5,1 + c00166d2: c09c sw a5,0(s1) add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8131 p->shape = js_dup_shape(new_sh); - c0016504: ec04 sd s1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8124 + c00166d4: ec04 sd s1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8132 js_free_shape(ctx->rt, sh); - c0016506: 0189b503 ld a0,24(s3) - c001650a: a0cf20ef jal ra,c0008716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8125 + c00166d6: 0189b503 ld a0,24(s3) + c00166da: 92af20ef jal ra,c0008804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8133 return &p->prop[new_sh->prop_count - 1]; - c001650e: 5488 lw a0,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8141 + c00166de: 5488 lw a0,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8149 return &p->prop[p->shape->prop_count - 1]; - c0016510: 357d addiw a0,a0,-1 - c0016512: 00451793 slli a5,a0,0x4 - c0016516: 7008 ld a0,32(s0) - c0016518: 953e add a0,a0,a5 - c001651a: a811 j c001652e + c00166e0: 357d addiw a0,a0,-1 + c00166e2: 00451793 slli a5,a0,0x4 + c00166e6: 7008 ld a0,32(s0) + c00166e8: 953e add a0,a0,a5 + c00166ea: a811 j c00166fe find_hashed_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4725 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4733 for(sh1 = rt->shape_hash[h1]; sh1 != NULL; sh1 = sh1->shape_hash_next) { - c001651c: 7884 ld s1,48(s1) - c001651e: b711 j c0016422 + c00166ec: 7884 ld s1,48(s1) + c00166ee: b711 j c00165f2 add_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8125 new_prop = js_realloc(ctx, p->prop, sizeof(p->prop[0]) * - c0016520: 700c ld a1,32(s0) - c0016522: 0612 slli a2,a2,0x4 - c0016524: 854e mv a0,s3 - c0016526: c05ff0ef jal ra,c001612a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8119 + c00166f0: 700c ld a1,32(s0) + c00166f2: 0612 slli a2,a2,0x4 + c00166f4: 854e mv a0,s3 + c00166f6: c05ff0ef jal ra,c00162fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8127 if (!new_prop) - c001652a: ed01 bnez a0,c0016542 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8120 + c00166fa: ed01 bnez a0,c0016712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8128 return NULL; - c001652c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8142 -} - c001652e: 70e2 ld ra,56(sp) - c0016530: 7442 ld s0,48(sp) - c0016532: 74a2 ld s1,40(sp) - c0016534: 7902 ld s2,32(sp) - c0016536: 69e2 ld s3,24(sp) - c0016538: 6a42 ld s4,16(sp) - c001653a: 6aa2 ld s5,8(sp) - c001653c: 6b02 ld s6,0(sp) - c001653e: 6121 addi sp,sp,64 - c0016540: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8121 + c00166fc: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8150 +} + c00166fe: 70e2 ld ra,56(sp) + c0016700: 7442 ld s0,48(sp) + c0016702: 74a2 ld s1,40(sp) + c0016704: 7902 ld s2,32(sp) + c0016706: 69e2 ld s3,24(sp) + c0016708: 6a42 ld s4,16(sp) + c001670a: 6aa2 ld s5,8(sp) + c001670c: 6b02 ld s6,0(sp) + c001670e: 6121 addi sp,sp,64 + c0016710: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8129 p->prop = new_prop; - c0016542: f008 sd a0,32(s0) - c0016544: bf65 j c00164fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8139 + c0016712: f008 sd a0,32(s0) + c0016714: bf65 j c00166cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8147 if (add_shape_property(ctx, &p->shape, p, prop, prop_flags)) - c0016546: 8756 mv a4,s5 - c0016548: 86d2 mv a3,s4 - c001654a: 8622 mv a2,s0 - c001654c: 01840593 addi a1,s0,24 - c0016550: 854e mv a0,s3 - c0016552: d65ff0ef jal ra,c00162b6 - c0016556: f979 bnez a0,c001652c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8141 + c0016716: 8756 mv a4,s5 + c0016718: 86d2 mv a3,s4 + c001671a: 8622 mv a2,s0 + c001671c: 01840593 addi a1,s0,24 + c0016720: 854e mv a0,s3 + c0016722: d65ff0ef jal ra,c0016486 + c0016726: f979 bnez a0,c00166fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8149 return &p->prop[p->shape->prop_count - 1]; - c0016558: 6c1c ld a5,24(s0) - c001655a: 5788 lw a0,40(a5) - c001655c: bf55 j c0016510 + c0016728: 6c1c ld a5,24(s0) + c001672a: 5788 lw a0,40(a5) + c001672c: bf55 j c00166e0 -00000000c001655e : +00000000c001672e : JS_DefineAutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9401 -{ - c001655e: 7139 addi sp,sp,-64 - c0016560: f04a sd s2,32(sp) - c0016562: ec4e sd s3,24(sp) - c0016564: fc06 sd ra,56(sp) - c0016566: 89be mv s3,a5 - c0016568: f822 sd s0,48(sp) - c001656a: f426 sd s1,40(sp) - c001656c: e02e sd a1,0(sp) - c001656e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9409 +{ + c001672e: 7139 addi sp,sp,-64 + c0016730: f04a sd s2,32(sp) + c0016732: ec4e sd s3,24(sp) + c0016734: fc06 sd ra,56(sp) + c0016736: 89be mv s3,a5 + c0016738: f822 sd s0,48(sp) + c001673a: f426 sd s1,40(sp) + c001673c: e02e sd a1,0(sp) + c001673e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9413 if (JS_VALUE_GET_TAG(this_obj) != JS_TAG_OBJECT) - c0016570: 0006091b sext.w s2,a2 - c0016574: 57fd li a5,-1 - c0016576: 0af91363 bne s2,a5,c001661c - c001657a: 84ba mv s1,a4 + c0016740: 0006091b sext.w s2,a2 + c0016744: 57fd li a5,-1 + c0016746: 0af91363 bne s2,a5,c00167ec + c001674a: 84ba mv s1,a4 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c001657c: 6d98 ld a4,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c001674c: 6d98 ld a4,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001657e: 57f1 li a5,-4 - c0016580: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c001674e: 57f1 li a5,-4 + c0016750: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0016582: 02072883 lw a7,32(a4) # ffffffff9e370020 <_ebss+0xfffffffede26eefa> - c0016586: 8536 mv a0,a3 - c0016588: 0116f8b3 and a7,a3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0016752: 02072883 lw a7,32(a4) # ffffffff9e370020 <_ebss+0xfffffffede26eefa> + c0016756: 8536 mv a0,a3 + c0016758: 0116f8b3 and a7,a3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001658c: 1882 slli a7,a7,0x20 - c001658e: 0208d893 srli a7,a7,0x20 - c0016592: 0885 addi a7,a7,1 - c0016594: 02f888b3 mul a7,a7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c001675c: 1882 slli a7,a7,0x20 + c001675e: 0208d893 srli a7,a7,0x20 + c0016762: 0885 addi a7,a7,1 + c0016764: 02f888b3 mul a7,a7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0016598: 040007b7 lui a5,0x4000 - c001659c: 17fd addi a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0016768: 040007b7 lui a5,0x4000 + c001676c: 17fd addi a5,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001659e: 98ba add a7,a7,a4 - c00165a0: 0008e883 lwu a7,0(a7) + c001676e: 98ba add a7,a7,a4 + c0016770: 0008e883 lwu a7,0(a7) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00165a4: 04070713 addi a4,a4,64 + c0016774: 04070713 addi a4,a4,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c00165a8: 02089c63 bnez a7,c00165e0 + c0016778: 02089c63 bnez a7,c00167b0 JS_DefineAutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9425 pr = add_property(ctx, p, prop, (flags & JS_PROP_C_W_E) | JS_PROP_AUTOINIT); - c00165ac: 00787813 andi a6,a6,7 - c00165b0: 862a mv a2,a0 - c00165b2: 03086693 ori a3,a6,48 - c00165b6: 8522 mv a0,s0 - c00165b8: e0fff0ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9418 + c001677c: 00787813 andi a6,a6,7 + c0016780: 862a mv a2,a0 + c0016782: 03086693 ori a3,a6,48 + c0016786: 8522 mv a0,s0 + c0016788: e0fff0ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9426 if (unlikely(!pr)) - c00165bc: c921 beqz a0,c001660c + c001678c: c921 beqz a0,c00167dc JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c00165be: 401c lw a5,0(s0) - c00165c0: 2785 addiw a5,a5,1 - c00165c2: c01c sw a5,0(s0) + c001678e: 401c lw a5,0(s0) + c0016790: 2785 addiw a5,a5,1 + c0016792: c01c sw a5,0(s0) JS_DefineAutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9428 pr->u.init.realm_and_id = (uintptr_t)JS_DupContext(ctx); - c00165c4: e100 sd s0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9421 + c0016794: e100 sd s0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9429 assert((pr->u.init.realm_and_id & 3) == 0); - c00165c6: 00347793 andi a5,s0,3 - c00165ca: cb95 beqz a5,c00165fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9421 (discriminator 1) - c00165cc: 6589 lui a1,0x2 - c00165ce: 4601 li a2,0 - c00165d0: 4cd58593 addi a1,a1,1229 # 24cd <__clzdi2-0xbfffdb33> - c00165d4: 00046517 auipc a0,0x46 - c00165d8: 4a450513 addi a0,a0,1188 # c005ca78 - c00165dc: 43c3d0ef jal ra,c0053a18 <__assert> + c0016796: 00347793 andi a5,s0,3 + c001679a: cb95 beqz a5,c00167ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9429 (discriminator 1) + c001679c: 6589 lui a1,0x2 + c001679e: 4601 li a2,0 + c00167a0: 4d558593 addi a1,a1,1237 # 24d5 <__clzdi2-0xbfffdb2b> + c00167a4: 00046517 auipc a0,0x46 + c00167a8: 4a450513 addi a0,a0,1188 # c005cc48 + c00167ac: 43c3d0ef jal ra,c0053be8 <__assert> find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c00165e0: 088e slli a7,a7,0x3 - c00165e2: 18e1 addi a7,a7,-8 - c00165e4: 98ba add a7,a7,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c00167b0: 088e slli a7,a7,0x3 + c00167b2: 18e1 addi a7,a7,-8 + c00167b4: 98ba add a7,a7,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c00165e6: 0048a683 lw a3,4(a7) - c00165ea: 02a68b63 beq a3,a0,c0016620 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c00167b6: 0048a683 lw a3,4(a7) + c00167ba: 02a68b63 beq a3,a0,c00167f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c00165ee: 0008a883 lw a7,0(a7) - c00165f2: 00f8f8b3 and a7,a7,a5 - c00165f6: 1882 slli a7,a7,0x20 - c00165f8: 0208d893 srli a7,a7,0x20 - c00165fc: b775 j c00165a8 + c00167be: 0008a883 lw a7,0(a7) + c00167c2: 00f8f8b3 and a7,a7,a5 + c00167c6: 1882 slli a7,a7,0x20 + c00167c8: 0208d893 srli a7,a7,0x20 + c00167cc: b775 j c0016778 JS_DefineAutoInitProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9423 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9431 (discriminator 2) pr->u.init.realm_and_id |= id; - c00165fe: 1482 slli s1,s1,0x20 - c0016600: 9081 srli s1,s1,0x20 - c0016602: 8c45 or s0,s0,s1 - c0016604: e100 sd s0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9424 (discriminator 2) + c00167ce: 1482 slli s1,s1,0x20 + c00167d0: 9081 srli s1,s1,0x20 + c00167d2: 8c45 or s0,s0,s1 + c00167d4: e100 sd s0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9432 (discriminator 2) pr->u.init.opaque = opaque; - c0016606: 01353423 sd s3,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9425 (discriminator 2) + c00167d6: 01353423 sd s3,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9433 (discriminator 2) return TRUE; - c001660a: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9426 -} - c001660c: 70e2 ld ra,56(sp) - c001660e: 7442 ld s0,48(sp) - c0016610: 74a2 ld s1,40(sp) - c0016612: 69e2 ld s3,24(sp) - c0016614: 854a mv a0,s2 - c0016616: 7902 ld s2,32(sp) - c0016618: 6121 addi sp,sp,64 - c001661a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9406 + c00167da: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9434 +} + c00167dc: 70e2 ld ra,56(sp) + c00167de: 7442 ld s0,48(sp) + c00167e0: 74a2 ld s1,40(sp) + c00167e2: 69e2 ld s3,24(sp) + c00167e4: 854a mv a0,s2 + c00167e6: 7902 ld s2,32(sp) + c00167e8: 6121 addi sp,sp,64 + c00167ea: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9414 return FALSE; - c001661c: 4901 li s2,0 - c001661e: b7fd j c001660c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9412 + c00167ec: 4901 li s2,0 + c00167ee: b7fd j c00167dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9420 abort(); - c0016620: 1ea3f0ef jal ra,c005580a + c00167f0: 1ea3f0ef jal ra,c00559da -00000000c0016624 : +00000000c00167f4 : JS_NewObjectFromShape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4792 -{ - c0016624: 7139 addi sp,sp,-64 - c0016626: f426 sd s1,40(sp) - c0016628: f04a sd s2,32(sp) - c001662a: ec4e sd s3,24(sp) - c001662c: fc06 sd ra,56(sp) - c001662e: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4795 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4800 +{ + c00167f4: 7139 addi sp,sp,-64 + c00167f6: f426 sd s1,40(sp) + c00167f8: f04a sd s2,32(sp) + c00167fa: ec4e sd s3,24(sp) + c00167fc: fc06 sd ra,56(sp) + c00167fe: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4803 js_trigger_gc(ctx->rt, sizeof(JSObject)); - c0016630: 6d00 ld s0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4792 + c0016800: 6d00 ld s0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4800 { - c0016632: 84aa mv s1,a0 - c0016634: 89ae mv s3,a1 + c0016802: 84aa mv s1,a0 + c0016804: 89ae mv s3,a1 js_trigger_gc(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1309 force_gc = ((rt->malloc_state.malloc_size + size) > - c0016636: 741c ld a5,40(s0) + c0016806: 741c ld a5,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1312 if (force_gc) { - c0016638: 6078 ld a4,192(s0) + c0016808: 6078 ld a4,192(s0) JS_NewObjectFromShape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4792 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4800 { - c001663a: 8932 mv s2,a2 + c001680a: 8932 mv s2,a2 js_trigger_gc(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1309 force_gc = ((rt->malloc_state.malloc_size + size) > - c001663c: 04878793 addi a5,a5,72 # 4000048 <__clzdi2-0xbbffffb8> + c001680c: 04878793 addi a5,a5,72 # 4000048 <__clzdi2-0xbbffffb8> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1312 if (force_gc) { - c0016640: 00f77a63 bgeu a4,a5,c0016654 + c0016810: 00f77a63 bgeu a4,a5,c0016824 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1317 JS_RunGC(rt); - c0016644: 8522 mv a0,s0 - c0016646: 8bef30ef jal ra,c0009704 + c0016814: 8522 mv a0,s0 + c0016816: fddf20ef jal ra,c00097f2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1318 rt->malloc_gc_threshold = rt->malloc_state.malloc_size + - c001664a: 7418 ld a4,40(s0) + c001681a: 7418 ld a4,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1319 (rt->malloc_state.malloc_size >> 1); - c001664c: 00175793 srli a5,a4,0x1 + c001681c: 00175793 srli a5,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1318 rt->malloc_gc_threshold = rt->malloc_state.malloc_size + - c0016650: 97ba add a5,a5,a4 - c0016652: e07c sd a5,192(s0) + c0016820: 97ba add a5,a5,a4 + c0016822: e07c sd a5,192(s0) JS_NewObjectFromShape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4804 p = js_malloc(ctx, sizeof(JSObject)); - c0016654: 04800593 li a1,72 - c0016658: 8526 mv a0,s1 - c001665a: df2fe0ef jal ra,c0014c4c - c001665e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4797 + c0016824: 04800593 li a1,72 + c0016828: 8526 mv a0,s1 + c001682a: d10fe0ef jal ra,c0014d3a + c001682e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4805 if (unlikely(!p)) - c0016660: c905 beqz a0,c0016690 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4800 + c0016830: c905 beqz a0,c0016860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4808 p->extensible = TRUE; - c0016662: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4799 + c0016832: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4807 p->class_id = class_id; - c0016664: 01251323 sh s2,6(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4800 - p->extensible = TRUE; - c0016668: 00f502a3 sb a5,5(a0) + c0016834: 01251323 sh s2,6(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4808 + p->extensible = TRUE; + c0016838: 00f502a3 sb a5,5(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4816 p->first_weak_ref = NULL; - c001666c: 02053423 sd zero,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4809 + c001683c: 02053423 sd zero,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4817 p->u.opaque = NULL; - c0016670: 02053823 sd zero,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4810 + c0016840: 02053823 sd zero,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4818 p->shape = sh; - c0016674: 01353c23 sd s3,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4811 + c0016844: 01353c23 sd s3,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4819 p->prop = js_malloc(ctx, sizeof(JSProperty) * sh->prop_size); - c0016678: 0249a583 lw a1,36(s3) - c001667c: 8526 mv a0,s1 - c001667e: 0592 slli a1,a1,0x4 - c0016680: dccfe0ef jal ra,c0014c4c - c0016684: f008 sd a0,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4812 + c0016848: 0249a583 lw a1,36(s3) + c001684c: 8526 mv a0,s1 + c001684e: 0592 slli a1,a1,0x4 + c0016850: ceafe0ef jal ra,c0014d3a + c0016854: f008 sd a0,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4820 if (unlikely(!p->prop)) { - c0016686: e50d bnez a0,c00166b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4813 + c0016856: e50d bnez a0,c0016880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4821 js_free(ctx, p); - c0016688: 85a2 mv a1,s0 - c001668a: 8526 mv a0,s1 - c001668c: faef00ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4815 + c0016858: 85a2 mv a1,s0 + c001685a: 8526 mv a0,s1 + c001685c: eccf00ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4823 js_free_shape(ctx->rt, sh); - c0016690: 6c88 ld a0,24(s1) - c0016692: 85ce mv a1,s3 - c0016694: 882f20ef jal ra,c0008716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4816 + c0016860: 6c88 ld a0,24(s1) + c0016862: 85ce mv a1,s3 + c0016864: fa1f10ef jal ra,c0008804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4824 return JS_EXCEPTION; - c0016698: 4799 li a5,6 - c001669a: e002 sd zero,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4892 (discriminator 2) + c0016868: 4799 li a5,6 + c001686a: e002 sd zero,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4900 (discriminator 2) } - c001669c: 70e2 ld ra,56(sp) - c001669e: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4891 (discriminator 2) + c001686c: 70e2 ld ra,56(sp) + c001686e: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4899 (discriminator 2) return JS_MKPTR(JS_TAG_OBJECT, p); - c00166a0: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4892 (discriminator 2) -} - c00166a2: 6502 ld a0,0(sp) - c00166a4: 65a2 ld a1,8(sp) - c00166a6: 74a2 ld s1,40(sp) - c00166a8: 7902 ld s2,32(sp) - c00166aa: 69e2 ld s3,24(sp) - c00166ac: 6121 addi sp,sp,64 - c00166ae: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4819 + c0016870: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4900 (discriminator 2) +} + c0016872: 6502 ld a0,0(sp) + c0016874: 65a2 ld a1,8(sp) + c0016876: 74a2 ld s1,40(sp) + c0016878: 7902 ld s2,32(sp) + c001687a: 69e2 ld s3,24(sp) + c001687c: 6121 addi sp,sp,64 + c001687e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4827 switch(class_id) { - c00166b0: fff9079b addiw a5,s2,-1 - c00166b4: 0007869b sext.w a3,a5 - c00166b8: 02000713 li a4,32 - c00166bc: 08d76d63 bltu a4,a3,c0016756 - c00166c0: 02079713 slli a4,a5,0x20 - c00166c4: 01e75793 srli a5,a4,0x1e - c00166c8: 00048717 auipc a4,0x48 - c00166cc: 8dc70713 addi a4,a4,-1828 # c005dfa4 - c00166d0: 97ba add a5,a5,a4 - c00166d2: 439c lw a5,0(a5) - c00166d4: 97ba add a5,a5,a4 - c00166d6: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4825 + c0016880: fff9079b addiw a5,s2,-1 + c0016884: 0007869b sext.w a3,a5 + c0016888: 02000713 li a4,32 + c001688c: 08d76d63 bltu a4,a3,c0016926 + c0016890: 02079713 slli a4,a5,0x20 + c0016894: 01e75793 srli a5,a4,0x1e + c0016898: 00048717 auipc a4,0x48 + c001689c: 96c70713 addi a4,a4,-1684 # c005e204 + c00168a0: 97ba add a5,a5,a4 + c00168a2: 439c lw a5,0(a5) + c00168a4: 97ba add a5,a5,a4 + c00168a6: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4833 p->is_exotic = 1; - c00166d8: 00544783 lbu a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4827 + c00168a8: 00544783 lbu a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4835 p->u.array.u.values = NULL; - c00166dc: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4828 + c00168ac: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4836 p->u.array.count = 0; - c00166e0: 04042023 sw zero,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4825 + c00168b0: 04042023 sw zero,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4833 p->is_exotic = 1; - c00166e4: 00c7e793 ori a5,a5,12 - c00166e8: 00f402a3 sb a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4829 + c00168b4: 00c7e793 ori a5,a5,12 + c00168b8: 00f402a3 sb a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4837 p->u.array.u1.size = 0; - c00166ec: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4831 + c00168bc: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4839 if (likely(sh == ctx->array_shape)) { - c00166f0: 7c9c ld a5,56(s1) - c00166f2: 01378963 beq a5,s3,c0016704 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4836 + c00168c0: 7c9c ld a5,56(s1) + c00168c2: 01378963 beq a5,s3,c00168d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4844 pr = add_property(ctx, p, JS_ATOM_length, - c00166f6: 46a9 li a3,10 - c00166f8: 03000613 li a2,48 - c00166fc: 85a2 mv a1,s0 - c00166fe: 8526 mv a0,s1 - c0016700: cc7ff0ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4839 + c00168c6: 46a9 li a3,10 + c00168c8: 03000613 li a2,48 + c00168cc: 85a2 mv a1,s0 + c00168ce: 8526 mv a0,s1 + c00168d0: cc7ff0ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4847 pr->u.value = JS_NewInt32(ctx, 0); - c0016704: 00053023 sd zero,0(a0) - c0016708: 00053423 sd zero,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4889 (discriminator 2) + c00168d4: 00053023 sd zero,0(a0) + c00168d8: 00053423 sd zero,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4897 (discriminator 2) p->header.ref_count = 1; - c001670c: 4785 li a5,1 - c001670e: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4890 (discriminator 2) + c00168dc: 4785 li a5,1 + c00168de: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4898 (discriminator 2) add_gc_object(ctx->rt, &p->header, JS_GC_OBJ_TYPE_JS_OBJECT); - c0016710: 6c9c ld a5,24(s1) + c00168e0: 6c9c ld a5,24(s1) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 (discriminator 2) h->gc_obj_type = type; - c0016712: 00040223 sb zero,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 (discriminator 2) + c00168e2: 00040223 sb zero,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 (discriminator 2) list_add_tail(&h->link, &rt->gc_obj_list); - c0016716: 00840713 addi a4,s0,8 + c00168e6: 00840713 addi a4,s0,8 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 (discriminator 2) __list_add(el, head->prev, head); - c001671a: 67d4 ld a3,136(a5) + c00168ea: 67d4 ld a3,136(a5) JS_NewObjectFromShape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4891 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4899 (discriminator 2) return JS_MKPTR(JS_TAG_OBJECT, p); - c001671c: e022 sd s0,0(sp) + c00168ec: e022 sd s0,0(sp) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 (discriminator 2) prev->next = el; - c001671e: e698 sd a4,8(a3) + c00168ee: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 (discriminator 2) el->prev = prev; - c0016720: e414 sd a3,8(s0) + c00168f0: e414 sd a3,8(s0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 (discriminator 2) list_add_tail(&h->link, &rt->gc_obj_list); - c0016722: 08878693 addi a3,a5,136 + c00168f2: 08878693 addi a3,a5,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 (discriminator 2) el->next = next; - c0016726: e814 sd a3,16(s0) + c00168f6: e814 sd a3,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 (discriminator 2) next->prev = el; - c0016728: e7d8 sd a4,136(a5) + c00168f8: e7d8 sd a4,136(a5) JS_NewObjectFromShape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4891 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4899 (discriminator 2) return JS_MKPTR(JS_TAG_OBJECT, p); - c001672a: 57fd li a5,-1 - c001672c: bf85 j c001669c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4843 + c00168fa: 57fd li a5,-1 + c00168fc: bf85 j c001686c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4851 p->prop[0].u.value = JS_UNDEFINED; - c001672e: 478d li a5,3 - c0016730: 00053023 sd zero,0(a0) - c0016734: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4844 + c00168fe: 478d li a5,3 + c0016900: 00053023 sd zero,0(a0) + c0016904: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4852 break; - c0016736: bfd9 j c001670c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4857 + c0016906: bfd9 j c00168dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4865 p->is_exotic = 1; - c0016738: 00544783 lbu a5,5(s0) - c001673c: 00c7e793 ori a5,a5,12 - c0016740: 00f402a3 sb a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4863 + c0016908: 00544783 lbu a5,5(s0) + c001690c: 00c7e793 ori a5,a5,12 + c0016910: 00f402a3 sb a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4871 p->u.array.u.ptr = NULL; - c0016744: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4864 + c0016914: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4872 p->u.array.count = 0; - c0016748: 04042023 sw zero,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4865 + c0016918: 04042023 sw zero,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4873 break; - c001674c: b7c1 j c001670c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4876 - p->u.object_data = JS_UNDEFINED; - c001674e: 478d li a5,3 - c0016750: 02043823 sd zero,48(s0) - c0016754: fc1c sd a5,56(s0) + c001691c: b7c1 j c00168dc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4884 + p->u.object_data = JS_UNDEFINED; + c001691e: 478d li a5,3 + c0016920: 02043823 sd zero,48(s0) + c0016924: fc1c sd a5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4892 if (ctx->rt->class_array[class_id].exotic) { - c0016756: 1902 slli s2,s2,0x20 - c0016758: 02095913 srli s2,s2,0x20 - c001675c: 02800613 li a2,40 - c0016760: 02c90933 mul s2,s2,a2 - c0016764: 6c9c ld a5,24(s1) - c0016766: 7bbc ld a5,112(a5) - c0016768: 993e add s2,s2,a5 - c001676a: 02093783 ld a5,32(s2) - c001676e: dfd9 beqz a5,c001670c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4885 + c0016926: 1902 slli s2,s2,0x20 + c0016928: 02095913 srli s2,s2,0x20 + c001692c: 02800613 li a2,40 + c0016930: 02c90933 mul s2,s2,a2 + c0016934: 6c9c ld a5,24(s1) + c0016936: 7bbc ld a5,112(a5) + c0016938: 993e add s2,s2,a5 + c001693a: 02093783 ld a5,32(s2) + c001693e: dfd9 beqz a5,c00168dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4893 p->is_exotic = 1; - c0016770: 00544783 lbu a5,5(s0) - c0016774: 0047e793 ori a5,a5,4 - c0016778: 00f402a3 sb a5,5(s0) - c001677c: bf41 j c001670c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4879 + c0016940: 00544783 lbu a5,5(s0) + c0016944: 0047e793 ori a5,a5,4 + c0016948: 00f402a3 sb a5,5(s0) + c001694c: bf41 j c00168dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4887 p->u.regexp.pattern = NULL; - c001677e: 02043823 sd zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4880 + c001694e: 02043823 sd zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4888 p->u.regexp.bytecode = NULL; - c0016782: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4881 + c0016952: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4889 goto set_exotic; - c0016786: bfc1 j c0016756 + c0016956: bfc1 j c0016926 -00000000c0016788 : +00000000c0016958 : JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4913 { - c0016788: 711d addi sp,sp,-96 - c001678a: e0ca sd s2,64(sp) - c001678c: e82e sd a1,16(sp) - c001678e: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4909 + c0016958: 711d addi sp,sp,-96 + c001695a: e0ca sd s2,64(sp) + c001695c: e82e sd a1,16(sp) + c001695e: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4917 _d("JS_NewObjectProtoClass: a="); _d(debug_expr); _d("\n"); //// - c0016790: 00048597 auipc a1,0x48 - c0016794: 89858593 addi a1,a1,-1896 # c005e028 - c0016798: 4669 li a2,26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4905 + c0016960: 00048597 auipc a1,0x48 + c0016964: 92858593 addi a1,a1,-1752 # c005e288 + c0016968: 4669 li a2,26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4913 { - c001679a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4909 + c001696a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4917 _d("JS_NewObjectProtoClass: a="); _d(debug_expr); _d("\n"); //// - c001679c: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4905 + c001696c: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4913 { - c001679e: ec86 sd ra,88(sp) - c00167a0: e4a6 sd s1,72(sp) - c00167a2: fc4e sd s3,56(sp) - c00167a4: f852 sd s4,48(sp) - c00167a6: 89b6 mv s3,a3 - c00167a8: e8a2 sd s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4909 + c001696e: ec86 sd ra,88(sp) + c0016970: e4a6 sd s1,72(sp) + c0016972: fc4e sd s3,56(sp) + c0016974: f852 sd s4,48(sp) + c0016976: 89b6 mv s3,a3 + c0016978: e8a2 sd s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4917 _d("JS_NewObjectProtoClass: a="); _d(debug_expr); _d("\n"); //// - c00167aa: 000eb497 auipc s1,0xeb - c00167ae: 94648493 addi s1,s1,-1722 # c01010f0 - c00167b2: 697400ef jal ra,c0057648 - c00167b6: 608c ld a1,0(s1) - c00167b8: 852e mv a0,a1 - c00167ba: e42e sd a1,8(sp) - c00167bc: 1f4400ef jal ra,c00569b0 - c00167c0: 65a2 ld a1,8(sp) - c00167c2: 862a mv a2,a0 - c00167c4: 4505 li a0,1 - c00167c6: 683400ef jal ra,c0057648 - c00167ca: 4605 li a2,1 - c00167cc: 0005a597 auipc a1,0x5a - c00167d0: 37458593 addi a1,a1,884 # c0070b40 - c00167d4: 4505 li a0,1 - c00167d6: 673400ef jal ra,c0057648 + c001697a: 000ea497 auipc s1,0xea + c001697e: 77648493 addi s1,s1,1910 # c01010f0 + c0016982: 697400ef jal ra,c0057818 + c0016986: 608c ld a1,0(s1) + c0016988: 852e mv a0,a1 + c001698a: e42e sd a1,8(sp) + c001698c: 1f4400ef jal ra,c0056b80 + c0016990: 65a2 ld a1,8(sp) + c0016992: 862a mv a2,a0 + c0016994: 4505 li a0,1 + c0016996: 683400ef jal ra,c0057818 + c001699a: 4605 li a2,1 + c001699c: 0005a597 auipc a1,0x5a + c00169a0: 40458593 addi a1,a1,1028 # c0070da0 + c00169a4: 4505 li a0,1 + c00169a6: 673400ef jal ra,c0057818 get_proto_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4896 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4904 if (JS_VALUE_GET_TAG(proto_val) != JS_TAG_OBJECT) - c00167da: 4762 lw a4,24(sp) - c00167dc: 57fd li a5,-1 - c00167de: 6a42 ld s4,16(sp) - c00167e0: 00f70363 beq a4,a5,c00167e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4897 + c00169aa: 4762 lw a4,24(sp) + c00169ac: 57fd li a5,-1 + c00169ae: 6a42 ld s4,16(sp) + c00169b0: 00f70363 beq a4,a5,c00169b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4905 return NULL; - c00167e4: 4a01 li s4,0 + c00169b4: 4a01 li s4,0 JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4911 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4919 _d("JS_NewObjectProtoClass: b="); _d(debug_expr); _d("\n"); //// - c00167e6: 4669 li a2,26 - c00167e8: 00048597 auipc a1,0x48 - c00167ec: 86058593 addi a1,a1,-1952 # c005e048 - c00167f0: 4505 li a0,1 - c00167f2: 657400ef jal ra,c0057648 - c00167f6: 608c ld a1,0(s1) - c00167f8: 852e mv a0,a1 - c00167fa: e42e sd a1,8(sp) - c00167fc: 1b4400ef jal ra,c00569b0 - c0016800: 65a2 ld a1,8(sp) - c0016802: 862a mv a2,a0 - c0016804: 4505 li a0,1 - c0016806: 643400ef jal ra,c0057648 - c001680a: 4605 li a2,1 - c001680c: 0005a597 auipc a1,0x5a - c0016810: 33458593 addi a1,a1,820 # c0070b40 - c0016814: 4505 li a0,1 - c0016816: 633400ef jal ra,c0057648 + c00169b6: 4669 li a2,26 + c00169b8: 00048597 auipc a1,0x48 + c00169bc: 8f058593 addi a1,a1,-1808 # c005e2a8 + c00169c0: 4505 li a0,1 + c00169c2: 657400ef jal ra,c0057818 + c00169c6: 608c ld a1,0(s1) + c00169c8: 852e mv a0,a1 + c00169ca: e42e sd a1,8(sp) + c00169cc: 1b4400ef jal ra,c0056b80 + c00169d0: 65a2 ld a1,8(sp) + c00169d2: 862a mv a2,a0 + c00169d4: 4505 li a0,1 + c00169d6: 643400ef jal ra,c0057818 + c00169da: 4605 li a2,1 + c00169dc: 0005a597 auipc a1,0x5a + c00169e0: 3c458593 addi a1,a1,964 # c0070da0 + c00169e4: 4505 li a0,1 + c00169e6: 633400ef jal ra,c0057818 shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c001681a: 9e370737 lui a4,0x9e370 - c001681e: 2705 addiw a4,a4,1 - c0016820: 001a079b addiw a5,s4,1 - c0016824: 02e787bb mulw a5,a5,a4 + c00169ea: 9e370737 lui a4,0x9e370 + c00169ee: 2705 addiw a4,a4,1 + c00169f0: 001a079b addiw a5,s4,1 + c00169f4: 02e787bb mulw a5,a5,a4 shape_initial_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4355 h = shape_hash(h, (uint64_t)(uintptr_t)proto >> 32); - c0016828: 020a5613 srli a2,s4,0x20 + c00169f8: 020a5613 srli a2,s4,0x20 JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4920 sh = find_hashed_shape_proto(ctx->rt, proto); - c001682c: 01893683 ld a3,24(s2) + c00169fc: 01893683 ld a3,24(s2) get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c0016830: 1786a583 lw a1,376(a3) + c0016a00: 1786a583 lw a1,376(a3) shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4333 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4341 return (h + val) * 0x9e370001; - c0016834: 9fb1 addw a5,a5,a2 - c0016836: 02e7863b mulw a2,a5,a4 + c0016a04: 9fb1 addw a5,a5,a2 + c0016a06: 02e7863b mulw a2,a5,a4 get_shape_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4347 return h >> (32 - hash_bits); - c001683a: 02000713 li a4,32 - c001683e: 9f0d subw a4,a4,a1 - c0016840: 00e657bb srlw a5,a2,a4 + c0016a0a: 02000713 li a4,32 + c0016a0e: 9f0d subw a4,a4,a1 + c0016a10: 00e657bb srlw a5,a2,a4 find_hashed_shape_proto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4703 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4711 for(sh1 = rt->shape_hash[h1]; sh1 != NULL; sh1 = sh1->shape_hash_next) { - c0016844: 1886b703 ld a4,392(a3) - c0016848: 02079693 slli a3,a5,0x20 - c001684c: 01d6d793 srli a5,a3,0x1d - c0016850: 97ba add a5,a5,a4 - c0016852: 6380 ld s0,0(a5) - c0016854: 0e041b63 bnez s0,c001694a + c0016a14: 1886b703 ld a4,392(a3) + c0016a18: 02079693 slli a3,a5,0x20 + c0016a1c: 01d6d793 srli a5,a3,0x1d + c0016a20: 97ba add a5,a5,a4 + c0016a22: 6380 ld s0,0(a5) + c0016a24: 0e041b63 bnez s0,c0016b1a JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4921 _d("JS_NewObjectProtoClass: c="); _d(debug_expr); _d("\n"); //// - c0016858: 4669 li a2,26 - c001685a: 00048597 auipc a1,0x48 - c001685e: 80e58593 addi a1,a1,-2034 # c005e068 - c0016862: 4505 li a0,1 - c0016864: 5e5400ef jal ra,c0057648 - c0016868: 608c ld a1,0(s1) - c001686a: 852e mv a0,a1 - c001686c: e42e sd a1,8(sp) - c001686e: 142400ef jal ra,c00569b0 - c0016872: 65a2 ld a1,8(sp) - c0016874: 862a mv a2,a0 - c0016876: 4505 li a0,1 - c0016878: 5d1400ef jal ra,c0057648 - c001687c: 4605 li a2,1 - c001687e: 0005a597 auipc a1,0x5a - c0016882: 2c258593 addi a1,a1,706 # c0070b40 - c0016886: 4505 li a0,1 - c0016888: 5c1400ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4915 + c0016a28: 4669 li a2,26 + c0016a2a: 00048597 auipc a1,0x48 + c0016a2e: 89e58593 addi a1,a1,-1890 # c005e2c8 + c0016a32: 4505 li a0,1 + c0016a34: 5e5400ef jal ra,c0057818 + c0016a38: 608c ld a1,0(s1) + c0016a3a: 852e mv a0,a1 + c0016a3c: e42e sd a1,8(sp) + c0016a3e: 142400ef jal ra,c0056b80 + c0016a42: 65a2 ld a1,8(sp) + c0016a44: 862a mv a2,a0 + c0016a46: 4505 li a0,1 + c0016a48: 5d1400ef jal ra,c0057818 + c0016a4c: 4605 li a2,1 + c0016a4e: 0005a597 auipc a1,0x5a + c0016a52: 35258593 addi a1,a1,850 # c0070da0 + c0016a56: 4505 li a0,1 + c0016a58: 5c1400ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4923 _d("JS_NewObjectProtoClass: d="); _d(debug_expr); _d("\n"); //// - c001688c: 4669 li a2,26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4914 + c0016a5c: 4669 li a2,26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4922 if (likely(sh)) { - c001688e: 0c040963 beqz s0,c0016960 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4915 + c0016a5e: 0c040963 beqz s0,c0016b30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4923 _d("JS_NewObjectProtoClass: d="); _d(debug_expr); _d("\n"); //// - c0016892: 00047597 auipc a1,0x47 - c0016896: 7f658593 addi a1,a1,2038 # c005e088 - c001689a: 4505 li a0,1 - c001689c: 5ad400ef jal ra,c0057648 - c00168a0: 608c ld a1,0(s1) - c00168a2: 852e mv a0,a1 - c00168a4: e42e sd a1,8(sp) - c00168a6: 10a400ef jal ra,c00569b0 - c00168aa: 65a2 ld a1,8(sp) - c00168ac: 862a mv a2,a0 - c00168ae: 4505 li a0,1 - c00168b0: 599400ef jal ra,c0057648 - c00168b4: 4605 li a2,1 - c00168b6: 0005a597 auipc a1,0x5a - c00168ba: 28a58593 addi a1,a1,650 # c0070b40 - c00168be: 4505 li a0,1 - c00168c0: 589400ef jal ra,c0057648 + c0016a62: 00048597 auipc a1,0x48 + c0016a66: 88658593 addi a1,a1,-1914 # c005e2e8 + c0016a6a: 4505 li a0,1 + c0016a6c: 5ad400ef jal ra,c0057818 + c0016a70: 608c ld a1,0(s1) + c0016a72: 852e mv a0,a1 + c0016a74: e42e sd a1,8(sp) + c0016a76: 10a400ef jal ra,c0056b80 + c0016a7a: 65a2 ld a1,8(sp) + c0016a7c: 862a mv a2,a0 + c0016a7e: 4505 li a0,1 + c0016a80: 599400ef jal ra,c0057818 + c0016a84: 4605 li a2,1 + c0016a86: 0005a597 auipc a1,0x5a + c0016a8a: 31a58593 addi a1,a1,794 # c0070da0 + c0016a8e: 4505 li a0,1 + c0016a90: 589400ef jal ra,c0057818 js_dup_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4491 sh->header.ref_count++; - c00168c4: 401c lw a5,0(s0) + c0016a94: 401c lw a5,0(s0) JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4925 _d("JS_NewObjectProtoClass: e="); _d(debug_expr); _d("\n"); //// - c00168c6: 4669 li a2,26 - c00168c8: 00047597 auipc a1,0x47 - c00168cc: 7e058593 addi a1,a1,2016 # c005e0a8 + c0016a96: 4669 li a2,26 + c0016a98: 00048597 auipc a1,0x48 + c0016a9c: 87058593 addi a1,a1,-1936 # c005e308 js_dup_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4491 sh->header.ref_count++; - c00168d0: 2785 addiw a5,a5,1 - c00168d2: c01c sw a5,0(s0) + c0016aa0: 2785 addiw a5,a5,1 + c0016aa2: c01c sw a5,0(s0) JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4917 -_d("JS_NewObjectProtoClass: e="); _d(debug_expr); _d("\n"); //// - c00168d4: 4505 li a0,1 - c00168d6: 573400ef jal ra,c0057648 - c00168da: 608c ld a1,0(s1) - c00168dc: 852e mv a0,a1 - c00168de: e42e sd a1,8(sp) - c00168e0: 0d0400ef jal ra,c00569b0 - c00168e4: 65a2 ld a1,8(sp) - c00168e6: 862a mv a2,a0 - c00168e8: 4505 li a0,1 - c00168ea: 55f400ef jal ra,c0057648 - c00168ee: 4605 li a2,1 - c00168f0: 0005a597 auipc a1,0x5a - c00168f4: 25058593 addi a1,a1,592 # c0070b40 - c00168f8: 4505 li a0,1 - c00168fa: 54f400ef jal ra,c0057648 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4925 +_d("JS_NewObjectProtoClass: e="); _d(debug_expr); _d("\n"); //// + c0016aa4: 4505 li a0,1 + c0016aa6: 573400ef jal ra,c0057818 + c0016aaa: 608c ld a1,0(s1) + c0016aac: 852e mv a0,a1 + c0016aae: e42e sd a1,8(sp) + c0016ab0: 0d0400ef jal ra,c0056b80 + c0016ab4: 65a2 ld a1,8(sp) + c0016ab6: 862a mv a2,a0 + c0016ab8: 4505 li a0,1 + c0016aba: 55f400ef jal ra,c0057818 + c0016abe: 4605 li a2,1 + c0016ac0: 0005a597 auipc a1,0x5a + c0016ac4: 2e058593 addi a1,a1,736 # c0070da0 + c0016ac8: 4505 li a0,1 + c0016aca: 54f400ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4933 _d("JS_NewObjectProtoClass: h="); _d(debug_expr); _d("\n"); //// - c00168fe: 4669 li a2,26 - c0016900: 00048597 auipc a1,0x48 - c0016904: 80858593 addi a1,a1,-2040 # c005e108 - c0016908: 4505 li a0,1 - c001690a: 53f400ef jal ra,c0057648 - c001690e: 608c ld a1,0(s1) - c0016910: 852e mv a0,a1 - c0016912: e42e sd a1,8(sp) - c0016914: 09c400ef jal ra,c00569b0 - c0016918: 65a2 ld a1,8(sp) - c001691a: 862a mv a2,a0 - c001691c: 4505 li a0,1 - c001691e: 52b400ef jal ra,c0057648 - c0016922: 4605 li a2,1 - c0016924: 0005a597 auipc a1,0x5a - c0016928: 21c58593 addi a1,a1,540 # c0070b40 - c001692c: 4505 li a0,1 - c001692e: 51b400ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4926 + c0016ace: 4669 li a2,26 + c0016ad0: 00048597 auipc a1,0x48 + c0016ad4: 89858593 addi a1,a1,-1896 # c005e368 + c0016ad8: 4505 li a0,1 + c0016ada: 53f400ef jal ra,c0057818 + c0016ade: 608c ld a1,0(s1) + c0016ae0: 852e mv a0,a1 + c0016ae2: e42e sd a1,8(sp) + c0016ae4: 09c400ef jal ra,c0056b80 + c0016ae8: 65a2 ld a1,8(sp) + c0016aea: 862a mv a2,a0 + c0016aec: 4505 li a0,1 + c0016aee: 52b400ef jal ra,c0057818 + c0016af2: 4605 li a2,1 + c0016af4: 0005a597 auipc a1,0x5a + c0016af8: 2ac58593 addi a1,a1,684 # c0070da0 + c0016afc: 4505 li a0,1 + c0016afe: 51b400ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4934 return JS_NewObjectFromShape(ctx, sh, class_id); - c0016932: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4927 -} - c0016934: 6446 ld s0,80(sp) - c0016936: 60e6 ld ra,88(sp) - c0016938: 64a6 ld s1,72(sp) - c001693a: 7a42 ld s4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4926 + c0016b02: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4935 +} + c0016b04: 6446 ld s0,80(sp) + c0016b06: 60e6 ld ra,88(sp) + c0016b08: 64a6 ld s1,72(sp) + c0016b0a: 7a42 ld s4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4934 return JS_NewObjectFromShape(ctx, sh, class_id); - c001693c: 864e mv a2,s3 - c001693e: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4927 -} - c0016940: 79e2 ld s3,56(sp) - c0016942: 6906 ld s2,64(sp) - c0016944: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4926 + c0016b0c: 864e mv a2,s3 + c0016b0e: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4935 +} + c0016b10: 79e2 ld s3,56(sp) + c0016b12: 6906 ld s2,64(sp) + c0016b14: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4934 return JS_NewObjectFromShape(ctx, sh, class_id); - c0016946: cdfff06f j c0016624 + c0016b16: cdfff06f j c00167f4 find_hashed_shape_proto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4712 if (sh1->hash == h && - c001694a: 4c5c lw a5,28(s0) - c001694c: 00c79863 bne a5,a2,c001695c - c0016950: 7c1c ld a5,56(s0) - c0016952: 00fa1563 bne s4,a5,c001695c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4705 + c0016b1a: 4c5c lw a5,28(s0) + c0016b1c: 00c79863 bne a5,a2,c0016b2c + c0016b20: 7c1c ld a5,56(s0) + c0016b22: 00fa1563 bne s4,a5,c0016b2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4713 sh1->proto == proto && - c0016956: 541c lw a5,40(s0) - c0016958: f00780e3 beqz a5,c0016858 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4703 + c0016b26: 541c lw a5,40(s0) + c0016b28: f00780e3 beqz a5,c0016a28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4711 for(sh1 = rt->shape_hash[h1]; sh1 != NULL; sh1 = sh1->shape_hash_next) { - c001695c: 7800 ld s0,48(s0) - c001695e: bddd j c0016854 + c0016b2c: 7800 ld s0,48(s0) + c0016b2e: bddd j c0016a24 JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4927 _d("JS_NewObjectProtoClass: f="); _d(debug_expr); _d("\n"); //// - c0016960: 00047597 auipc a1,0x47 - c0016964: 76858593 addi a1,a1,1896 # c005e0c8 - c0016968: 4505 li a0,1 - c001696a: 4df400ef jal ra,c0057648 - c001696e: 608c ld a1,0(s1) - c0016970: 852e mv a0,a1 - c0016972: e42e sd a1,8(sp) - c0016974: 03c400ef jal ra,c00569b0 - c0016978: 65a2 ld a1,8(sp) - c001697a: 862a mv a2,a0 - c001697c: 4505 li a0,1 - c001697e: 4cb400ef jal ra,c0057648 - c0016982: 4605 li a2,1 - c0016984: 0005a597 auipc a1,0x5a - c0016988: 1bc58593 addi a1,a1,444 # c0070b40 - c001698c: 4505 li a0,1 - c001698e: 4bb400ef jal ra,c0057648 + c0016b30: 00047597 auipc a1,0x47 + c0016b34: 7f858593 addi a1,a1,2040 # c005e328 + c0016b38: 4505 li a0,1 + c0016b3a: 4df400ef jal ra,c0057818 + c0016b3e: 608c ld a1,0(s1) + c0016b40: 852e mv a0,a1 + c0016b42: e42e sd a1,8(sp) + c0016b44: 03c400ef jal ra,c0056b80 + c0016b48: 65a2 ld a1,8(sp) + c0016b4a: 862a mv a2,a0 + c0016b4c: 4505 li a0,1 + c0016b4e: 4cb400ef jal ra,c0057818 + c0016b52: 4605 li a2,1 + c0016b54: 0005a597 auipc a1,0x5a + c0016b58: 24c58593 addi a1,a1,588 # c0070da0 + c0016b5c: 4505 li a0,1 + c0016b5e: 4bb400ef jal ra,c0057818 js_new_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4447 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4455 return js_new_shape2(ctx, proto, JS_PROP_INITIAL_HASH_SIZE, - c0016992: 4609 li a2,2 - c0016994: 85d2 mv a1,s4 - c0016996: 854a mv a0,s2 - c0016998: f8dfe0ef jal ra,c0015924 + c0016b62: 4609 li a2,2 + c0016b64: 85d2 mv a1,s4 + c0016b66: 854a mv a0,s2 + c0016b68: f8dfe0ef jal ra,c0015af4 JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4929 _d("JS_NewObjectProtoClass: g="); _d(debug_expr); _d("\n"); //// - c001699c: 4669 li a2,26 + c0016b6c: 4669 li a2,26 js_new_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4447 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4455 return js_new_shape2(ctx, proto, JS_PROP_INITIAL_HASH_SIZE, - c001699e: 842a mv s0,a0 + c0016b6e: 842a mv s0,a0 JS_NewObjectProtoClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4929 _d("JS_NewObjectProtoClass: g="); _d(debug_expr); _d("\n"); //// - c00169a0: 00047597 auipc a1,0x47 - c00169a4: 74858593 addi a1,a1,1864 # c005e0e8 - c00169a8: 4505 li a0,1 - c00169aa: 49f400ef jal ra,c0057648 - c00169ae: 608c ld a1,0(s1) - c00169b0: 852e mv a0,a1 - c00169b2: e42e sd a1,8(sp) - c00169b4: 7fd3f0ef jal ra,c00569b0 - c00169b8: 65a2 ld a1,8(sp) - c00169ba: 862a mv a2,a0 - c00169bc: 4505 li a0,1 - c00169be: 48b400ef jal ra,c0057648 - c00169c2: 4605 li a2,1 - c00169c4: 0005a597 auipc a1,0x5a - c00169c8: 17c58593 addi a1,a1,380 # c0070b40 - c00169cc: 4505 li a0,1 - c00169ce: 47b400ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4922 + c0016b70: 00047597 auipc a1,0x47 + c0016b74: 7d858593 addi a1,a1,2008 # c005e348 + c0016b78: 4505 li a0,1 + c0016b7a: 49f400ef jal ra,c0057818 + c0016b7e: 608c ld a1,0(s1) + c0016b80: 852e mv a0,a1 + c0016b82: e42e sd a1,8(sp) + c0016b84: 7fd3f0ef jal ra,c0056b80 + c0016b88: 65a2 ld a1,8(sp) + c0016b8a: 862a mv a2,a0 + c0016b8c: 4505 li a0,1 + c0016b8e: 48b400ef jal ra,c0057818 + c0016b92: 4605 li a2,1 + c0016b94: 0005a597 auipc a1,0x5a + c0016b98: 20c58593 addi a1,a1,524 # c0070da0 + c0016b9c: 4505 li a0,1 + c0016b9e: 47b400ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4930 if (!sh) - c00169d2: f20416e3 bnez s0,c00168fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4927 (discriminator 1) -} - c00169d6: 60e6 ld ra,88(sp) - c00169d8: 6446 ld s0,80(sp) - c00169da: 64a6 ld s1,72(sp) - c00169dc: 6906 ld s2,64(sp) - c00169de: 79e2 ld s3,56(sp) - c00169e0: 7a42 ld s4,48(sp) - c00169e2: 4501 li a0,0 - c00169e4: 4599 li a1,6 - c00169e6: 6125 addi sp,sp,96 - c00169e8: 8082 ret - -00000000c00169ea : + c0016ba2: f20416e3 bnez s0,c0016ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4935 (discriminator 1) +} + c0016ba6: 60e6 ld ra,88(sp) + c0016ba8: 6446 ld s0,80(sp) + c0016baa: 64a6 ld s1,72(sp) + c0016bac: 6906 ld s2,64(sp) + c0016bae: 79e2 ld s3,56(sp) + c0016bb0: 7a42 ld s4,48(sp) + c0016bb2: 4501 li a0,0 + c0016bb4: 4599 li a1,6 + c0016bb6: 6125 addi sp,sp,96 + c0016bb8: 8082 ret + +00000000c0016bba : js_create_from_ctor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18732 -{ - c00169ea: 7159 addi sp,sp,-112 - c00169ec: f0a2 sd s0,96(sp) - c00169ee: eca6 sd s1,88(sp) - c00169f0: f486 sd ra,104(sp) - c00169f2: 84b6 mv s1,a3 - c00169f4: e8ca sd s2,80(sp) - c00169f6: e02e sd a1,0(sp) - c00169f8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18740 +{ + c0016bba: 7159 addi sp,sp,-112 + c0016bbc: f0a2 sd s0,96(sp) + c0016bbe: eca6 sd s1,88(sp) + c0016bc0: f486 sd ra,104(sp) + c0016bc2: 84b6 mv s1,a3 + c0016bc4: e8ca sd s2,80(sp) + c0016bc6: e02e sd a1,0(sp) + c0016bc8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18744 if (JS_IsUndefined(ctor)) { - c00169fa: 0006069b sext.w a3,a2 - c00169fe: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18732 + c0016bca: 0006069b sext.w a3,a2 + c0016bce: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18740 { - c0016a00: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18736 + c0016bd0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18744 if (JS_IsUndefined(ctor)) { - c0016a02: 02e69d63 bne a3,a4,c0016a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18737 + c0016bd2: 02e69d63 bne a3,a4,c0016c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18745 proto = JS_DupValue(ctx, ctx->class_proto[class_id]); - c0016a06: 613c ld a5,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18747 + c0016bd6: 613c ld a5,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18755 proto = JS_DupValue(ctx, realm->class_proto[class_id]); - c0016a08: 00449713 slli a4,s1,0x4 - c0016a0c: 97ba add a5,a5,a4 - c0016a0e: 6388 ld a0,0(a5) - c0016a10: 678c ld a1,8(a5) - c0016a12: c5def0ef jal ra,c000666e - c0016a16: e82a sd a0,16(sp) - c0016a18: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18750 + c0016bd8: 00449713 slli a4,s1,0x4 + c0016bdc: 97ba add a5,a5,a4 + c0016bde: 6388 ld a0,0(a5) + c0016be0: 678c ld a1,8(a5) + c0016be2: b7bef0ef jal ra,c000675c + c0016be6: e82a sd a0,16(sp) + c0016be8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18758 obj = JS_NewObjectProtoClass(ctx, proto, class_id); - c0016a1a: 65c2 ld a1,16(sp) - c0016a1c: 86a6 mv a3,s1 - c0016a1e: 8522 mv a0,s0 - c0016a20: ec32 sd a2,24(sp) - c0016a22: d67ff0ef jal ra,c0016788 - c0016a26: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18751 + c0016bea: 65c2 ld a1,16(sp) + c0016bec: 86a6 mv a3,s1 + c0016bee: 8522 mv a0,s0 + c0016bf0: ec32 sd a2,24(sp) + c0016bf2: d67ff0ef jal ra,c0016958 + c0016bf6: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18759 JS_FreeValue(ctx, proto); - c0016a28: 6662 ld a2,24(sp) - c0016a2a: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18750 + c0016bf8: 6662 ld a2,24(sp) + c0016bfa: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18758 obj = JS_NewObjectProtoClass(ctx, proto, class_id); - c0016a2c: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18751 + c0016bfc: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18759 JS_FreeValue(ctx, proto); - c0016a2e: 8522 mv a0,s0 - c0016a30: 908f10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18752 + c0016bfe: 8522 mv a0,s0 + c0016c00: 826f10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18760 return obj; - c0016a34: 7782 ld a5,32(sp) - c0016a36: f83e sd a5,48(sp) - c0016a38: 77a2 ld a5,40(sp) - c0016a3a: a035 j c0016a66 - c0016a3c: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18739 + c0016c04: 7782 ld a5,32(sp) + c0016c06: f83e sd a5,48(sp) + c0016c08: 77a2 ld a5,40(sp) + c0016c0a: a035 j c0016c36 + c0016c0c: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18747 proto = JS_GetProperty(ctx, ctor, JS_ATOM_prototype); - c0016a3e: 872e mv a4,a1 + c0016c0e: 872e mv a4,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0016a40: 4801 li a6,0 - c0016a42: 03c00693 li a3,60 - c0016a46: fc32 sd a2,56(sp) - c0016a48: f82e sd a1,48(sp) - c0016a4a: df9fa0ef jal ra,c0011842 - c0016a4e: e0aa sd a0,64(sp) - c0016a50: e4ae sd a1,72(sp) - c0016a52: e82a sd a0,16(sp) - c0016a54: ec2e sd a1,24(sp) + c0016c10: 4801 li a6,0 + c0016c12: 03c00693 li a3,60 + c0016c16: fc32 sd a2,56(sp) + c0016c18: f82e sd a1,48(sp) + c0016c1a: d17fa0ef jal ra,c0011930 + c0016c1e: e0aa sd a0,64(sp) + c0016c20: e4ae sd a1,72(sp) + c0016c22: e82a sd a0,16(sp) + c0016c24: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0016a56: 0005871b sext.w a4,a1 + c0016c26: 0005871b sext.w a4,a1 js_create_from_ctor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18748 if (JS_IsException(proto)) - c0016a5a: 4919 li s2,6 + c0016c2a: 4919 li s2,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0016a5c: 87ae mv a5,a1 - c0016a5e: 862e mv a2,a1 + c0016c2c: 87ae mv a5,a1 + c0016c2e: 862e mv a2,a1 js_create_from_ctor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18740 - c0016a60: 01271563 bne a4,s2,c0016a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18741 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18748 + c0016c30: 01271563 bne a4,s2,c0016c3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18749 return proto; - c0016a64: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18752 + c0016c34: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18760 return obj; - c0016a66: fc3e sd a5,56(sp) - c0016a68: a005 j c0016a88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18742 + c0016c36: fc3e sd a5,56(sp) + c0016c38: a005 j c0016c58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18750 if (!JS_IsObject(proto)) { - c0016a6a: 56fd li a3,-1 - c0016a6c: fad707e3 beq a4,a3,c0016a1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18743 + c0016c3a: 56fd li a3,-1 + c0016c3c: fad707e3 beq a4,a3,c0016bea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18751 JS_FreeValue(ctx, proto); - c0016a70: 85aa mv a1,a0 - c0016a72: 8522 mv a0,s0 - c0016a74: 8c4f10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18744 + c0016c40: 85aa mv a1,a0 + c0016c42: 8522 mv a0,s0 + c0016c44: fe3f00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18752 realm = JS_GetFunctionRealm(ctx, ctor); - c0016a78: 6582 ld a1,0(sp) - c0016a7a: 6622 ld a2,8(sp) - c0016a7c: 8522 mv a0,s0 - c0016a7e: d3dfd0ef jal ra,c00147ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18745 + c0016c48: 6582 ld a1,0(sp) + c0016c4a: 6622 ld a2,8(sp) + c0016c4c: 8522 mv a0,s0 + c0016c4e: c5bfd0ef jal ra,c00148a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18753 if (!realm) - c0016a82: e919 bnez a0,c0016a98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18746 + c0016c52: e919 bnez a0,c0016c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18754 return JS_EXCEPTION; - c0016a84: f802 sd zero,48(sp) - c0016a86: fc4a sd s2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18753 (discriminator 1) -} - c0016a88: 70a6 ld ra,104(sp) - c0016a8a: 7406 ld s0,96(sp) - c0016a8c: 7542 ld a0,48(sp) - c0016a8e: 75e2 ld a1,56(sp) - c0016a90: 64e6 ld s1,88(sp) - c0016a92: 6946 ld s2,80(sp) - c0016a94: 6165 addi sp,sp,112 - c0016a96: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18747 + c0016c54: f802 sd zero,48(sp) + c0016c56: fc4a sd s2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18761 (discriminator 1) +} + c0016c58: 70a6 ld ra,104(sp) + c0016c5a: 7406 ld s0,96(sp) + c0016c5c: 7542 ld a0,48(sp) + c0016c5e: 75e2 ld a1,56(sp) + c0016c60: 64e6 ld s1,88(sp) + c0016c62: 6946 ld s2,80(sp) + c0016c64: 6165 addi sp,sp,112 + c0016c66: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18755 proto = JS_DupValue(ctx, realm->class_proto[class_id]); - c0016a98: 613c ld a5,64(a0) - c0016a9a: b7bd j c0016a08 + c0016c68: 613c ld a5,64(a0) + c0016c6a: b7bd j c0016bd8 -00000000c0016a9c : +00000000c0016c6c : js_array_buffer_constructor3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52683 -{ - c0016a9c: 7135 addi sp,sp,-160 - c0016a9e: e526 sd s1,136(sp) - c0016aa0: e14a sd s2,128(sp) - c0016aa2: fcce sd s3,120(sp) - c0016aa4: f8d2 sd s4,112(sp) - c0016aa6: f4d6 sd s5,104(sp) - c0016aa8: f0da sd s6,96(sp) - c0016aaa: ecde sd s7,88(sp) - c0016aac: e8e2 sd s8,80(sp) - c0016aae: e4e6 sd s9,72(sp) - c0016ab0: e0ea sd s10,64(sp) - c0016ab2: ed06 sd ra,152(sp) - c0016ab4: e922 sd s0,144(sp) - c0016ab6: fc6e sd s11,56(sp) - c0016ab8: 8b36 mv s6,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52688 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52691 +{ + c0016c6c: 7135 addi sp,sp,-160 + c0016c6e: e526 sd s1,136(sp) + c0016c70: e14a sd s2,128(sp) + c0016c72: fcce sd s3,120(sp) + c0016c74: f8d2 sd s4,112(sp) + c0016c76: f4d6 sd s5,104(sp) + c0016c78: f0da sd s6,96(sp) + c0016c7a: ecde sd s7,88(sp) + c0016c7c: e8e2 sd s8,80(sp) + c0016c7e: e4e6 sd s9,72(sp) + c0016c80: e0ea sd s10,64(sp) + c0016c82: ed06 sd ra,152(sp) + c0016c84: e922 sd s0,144(sp) + c0016c86: fc6e sd s11,56(sp) + c0016c88: 8b36 mv s6,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52696 obj = js_create_from_ctor(ctx, new_target, class_id); - c0016aba: 86ba mv a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52683 + c0016c8a: 86ba mv a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52691 { - c0016abc: 8abe mv s5,a5 - c0016abe: 5d0a lw s10,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52684 + c0016c8c: 8abe mv s5,a5 + c0016c8e: 5d0a lw s10,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52692 JSRuntime *rt = ctx->rt; - c0016ac0: 01853d83 ld s11,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52683 -{ - c0016ac4: 892a mv s2,a0 - c0016ac6: e02e sd a1,0(sp) - c0016ac8: e432 sd a2,8(sp) - c0016aca: 84ba mv s1,a4 - c0016acc: 8bc2 mv s7,a6 - c0016ace: 8c46 mv s8,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52688 + c0016c90: 01853d83 ld s11,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52691 +{ + c0016c94: 892a mv s2,a0 + c0016c96: e02e sd a1,0(sp) + c0016c98: e432 sd a2,8(sp) + c0016c9a: 84ba mv s1,a4 + c0016c9c: 8bc2 mv s7,a6 + c0016c9e: 8c46 mv s8,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52696 obj = js_create_from_ctor(ctx, new_target, class_id); - c0016ad0: f1bff0ef jal ra,c00169ea - c0016ad4: e82a sd a0,16(sp) - c0016ad6: ec2e sd a1,24(sp) + c0016ca0: f1bff0ef jal ra,c0016bba + c0016ca4: e82a sd a0,16(sp) + c0016ca6: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0016ad8: 00058c9b sext.w s9,a1 + c0016ca8: 00058c9b sext.w s9,a1 js_array_buffer_constructor3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52697 if (JS_IsException(obj)) - c0016adc: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52688 + c0016cac: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52696 obj = js_create_from_ctor(ctx, new_target, class_id); - c0016ade: 8a2a mv s4,a0 - c0016ae0: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52689 + c0016cae: 8a2a mv s4,a0 + c0016cb0: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52697 if (JS_IsException(obj)) - c0016ae2: 02fc9563 bne s9,a5,c0016b0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52729 + c0016cb2: 02fc9563 bne s9,a5,c0016cdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52737 return obj; - c0016ae6: f052 sd s4,32(sp) - c0016ae8: f44e sd s3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52734 -} - c0016aea: 60ea ld ra,152(sp) - c0016aec: 644a ld s0,144(sp) - c0016aee: 7502 ld a0,32(sp) - c0016af0: 75a2 ld a1,40(sp) - c0016af2: 64aa ld s1,136(sp) - c0016af4: 690a ld s2,128(sp) - c0016af6: 79e6 ld s3,120(sp) - c0016af8: 7a46 ld s4,112(sp) - c0016afa: 7aa6 ld s5,104(sp) - c0016afc: 7b06 ld s6,96(sp) - c0016afe: 6be6 ld s7,88(sp) - c0016b00: 6c46 ld s8,80(sp) - c0016b02: 6ca6 ld s9,72(sp) - c0016b04: 6d06 ld s10,64(sp) - c0016b06: 7de2 ld s11,56(sp) - c0016b08: 610d addi sp,sp,160 - c0016b0a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52692 + c0016cb6: f052 sd s4,32(sp) + c0016cb8: f44e sd s3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52742 +} + c0016cba: 60ea ld ra,152(sp) + c0016cbc: 644a ld s0,144(sp) + c0016cbe: 7502 ld a0,32(sp) + c0016cc0: 75a2 ld a1,40(sp) + c0016cc2: 64aa ld s1,136(sp) + c0016cc4: 690a ld s2,128(sp) + c0016cc6: 79e6 ld s3,120(sp) + c0016cc8: 7a46 ld s4,112(sp) + c0016cca: 7aa6 ld s5,104(sp) + c0016ccc: 7b06 ld s6,96(sp) + c0016cce: 6be6 ld s7,88(sp) + c0016cd0: 6c46 ld s8,80(sp) + c0016cd2: 6ca6 ld s9,72(sp) + c0016cd4: 6d06 ld s10,64(sp) + c0016cd6: 7de2 ld s11,56(sp) + c0016cd8: 610d addi sp,sp,160 + c0016cda: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52700 if (len > INT32_MAX) { - c0016b0c: 800007b7 lui a5,0x80000 - c0016b10: fff7c793 not a5,a5 - c0016b14: 0367f763 bgeu a5,s6,c0016b42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52693 + c0016cdc: 800007b7 lui a5,0x80000 + c0016ce0: fff7c793 not a5,a5 + c0016ce4: 0367f763 bgeu a5,s6,c0016d12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52701 JS_ThrowRangeError(ctx, "invalid array buffer length"); - c0016b18: 00047597 auipc a1,0x47 - c0016b1c: 61058593 addi a1,a1,1552 # c005e128 - c0016b20: 854a mv a0,s2 - c0016b22: e39fd0ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52686 + c0016ce8: 00047597 auipc a1,0x47 + c0016cec: 6a058593 addi a1,a1,1696 # c005e388 + c0016cf0: 854a mv a0,s2 + c0016cf2: d57fd0ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52694 JSArrayBuffer *abuf = NULL; - c0016b26: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52731 + c0016cf6: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52739 JS_FreeValue(ctx, obj); - c0016b28: 65c2 ld a1,16(sp) - c0016b2a: 6662 ld a2,24(sp) - c0016b2c: 854a mv a0,s2 - c0016b2e: 80af10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52732 + c0016cf8: 65c2 ld a1,16(sp) + c0016cfa: 6662 ld a2,24(sp) + c0016cfc: 854a mv a0,s2 + c0016cfe: f29f00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52740 js_free(ctx, abuf); - c0016b32: 85a2 mv a1,s0 - c0016b34: 854a mv a0,s2 - c0016b36: b04f00ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52733 + c0016d02: 85a2 mv a1,s0 + c0016d04: 854a mv a0,s2 + c0016d06: a22f00ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52741 return JS_EXCEPTION; - c0016b3a: 4799 li a5,6 - c0016b3c: f002 sd zero,32(sp) - c0016b3e: f43e sd a5,40(sp) - c0016b40: b76d j c0016aea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52696 + c0016d0a: 4799 li a5,6 + c0016d0c: f002 sd zero,32(sp) + c0016d0e: f43e sd a5,40(sp) + c0016d10: b76d j c0016cba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52704 abuf = js_malloc(ctx, sizeof(*abuf)); - c0016b42: 03000593 li a1,48 - c0016b46: 854a mv a0,s2 - c0016b48: 904fe0ef jal ra,c0014c4c - c0016b4c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52697 + c0016d12: 03000593 li a1,48 + c0016d16: 854a mv a0,s2 + c0016d18: 822fe0ef jal ra,c0014d3a + c0016d1c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52705 if (!abuf) - c0016b4e: dd69 beqz a0,c0016b28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52699 + c0016d1e: dd69 beqz a0,c0016cf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52707 abuf->byte_length = len; - c0016b50: 000b079b sext.w a5,s6 - c0016b54: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52700 + c0016d20: 000b079b sext.w a5,s6 + c0016d24: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52708 if (alloc_flag) { - c0016b56: 060d0a63 beqz s10,c0016bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52703 + c0016d26: 060d0a63 beqz s10,c0016d9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52711 abuf->data = rt->sab_funcs.sab_alloc(rt->sab_funcs.sab_opaque, - c0016b5a: 0007859b sext.w a1,a5 - c0016b5e: 00f04363 bgtz a5,c0016b64 - c0016b62: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52701 + c0016d2a: 0007859b sext.w a1,a5 + c0016d2e: 00f04363 bgtz a5,c0016d34 + c0016d32: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52709 if (class_id == JS_CLASS_SHARED_ARRAY_BUFFER && - c0016b64: 47d1 li a5,20 - c0016b66: 04f49c63 bne s1,a5,c0016bbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52702 (discriminator 1) + c0016d34: 47d1 li a5,20 + c0016d36: 04f49c63 bne s1,a5,c0016d8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52710 (discriminator 1) rt->sab_funcs.sab_alloc) { - c0016b6a: 158db783 ld a5,344(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52701 (discriminator 1) + c0016d3a: 158db783 ld a5,344(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52709 (discriminator 1) if (class_id == JS_CLASS_SHARED_ARRAY_BUFFER && - c0016b6e: cba1 beqz a5,c0016bbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52703 + c0016d3e: cba1 beqz a5,c0016d8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52711 abuf->data = rt->sab_funcs.sab_alloc(rt->sab_funcs.sab_opaque, - c0016b70: 170db503 ld a0,368(s11) - c0016b74: 9782 jalr a5 - c0016b76: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52705 + c0016d40: 170db503 ld a0,368(s11) + c0016d44: 9782 jalr a5 + c0016d46: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52713 if (!abuf->data) - c0016b78: d945 beqz a0,c0016b28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52707 + c0016d48: d945 beqz a0,c0016cf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52715 memset(abuf->data, 0, len); - c0016b7a: 865a mv a2,s6 - c0016b7c: 4581 li a1,0 - c0016b7e: 4f33f0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52723 + c0016d4a: 865a mv a2,s6 + c0016d4c: 4581 li a1,0 + c0016d4e: 4f33f0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52731 abuf->shared = (class_id == JS_CLASS_SHARED_ARRAY_BUFFER); - c0016b82: 14b1 addi s1,s1,-20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52721 + c0016d52: 14b1 addi s1,s1,-20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52729 init_list_head(&abuf->array_list); - c0016b84: 01040793 addi a5,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52723 + c0016d54: 01040793 addi a5,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52731 abuf->shared = (class_id == JS_CLASS_SHARED_ARRAY_BUFFER); - c0016b88: 0014b493 seqz s1,s1 + c0016d58: 0014b493 seqz s1,s1 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0016b8c: e81c sd a5,16(s0) + c0016d5c: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0016b8e: ec1c sd a5,24(s0) + c0016d5e: ec1c sd a5,24(s0) js_array_buffer_constructor3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52730 abuf->detached = FALSE; - c0016b90: 00040223 sb zero,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52723 + c0016d60: 00040223 sb zero,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52731 abuf->shared = (class_id == JS_CLASS_SHARED_ARRAY_BUFFER); - c0016b94: 009402a3 sb s1,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52724 + c0016d64: 009402a3 sb s1,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52732 abuf->opaque = opaque; - c0016b98: 03843023 sd s8,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52725 + c0016d68: 03843023 sd s8,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52733 abuf->free_func = free_func; - c0016b9c: 03743423 sd s7,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52726 + c0016d6c: 03743423 sd s7,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52734 if (alloc_flag && buf) - c0016ba0: 000d0963 beqz s10,c0016bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52726 (discriminator 1) - c0016ba4: 000a8763 beqz s5,c0016bb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52727 + c0016d70: 000d0963 beqz s10,c0016d82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52734 (discriminator 1) + c0016d74: 000a8763 beqz s5,c0016d82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52735 memcpy(abuf->data, buf, len); - c0016ba8: 6408 ld a0,8(s0) - c0016baa: 865a mv a2,s6 - c0016bac: 85d6 mv a1,s5 - c0016bae: 62d3f0ef jal ra,c00569da + c0016d78: 6408 ld a0,8(s0) + c0016d7a: 865a mv a2,s6 + c0016d7c: 85d6 mv a1,s5 + c0016d7e: 62d3f0ef jal ra,c0056baa JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0016bb2: 57fd li a5,-1 - c0016bb4: f2fc99e3 bne s9,a5,c0016ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0016d82: 57fd li a5,-1 + c0016d84: f2fc99e3 bne s9,a5,c0016cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0016bb8: 028a3823 sd s0,48(s4) - c0016bbc: b72d j c0016ae6 + c0016d88: 028a3823 sd s0,48(s4) + c0016d8c: b72d j c0016cb6 js_array_buffer_constructor3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52718 abuf->data = js_mallocz(ctx, max_int(len, 1)); - c0016bbe: 854a mv a0,s2 - c0016bc0: 91cff0ef jal ra,c0015cdc - c0016bc4: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52711 + c0016d8e: 854a mv a0,s2 + c0016d90: 91cff0ef jal ra,c0015eac + c0016d94: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52719 if (!abuf->data) - c0016bc6: fd55 bnez a0,c0016b82 - c0016bc8: b785 j c0016b28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52715 + c0016d96: fd55 bnez a0,c0016d52 + c0016d98: b785 j c0016cf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52723 if (class_id == JS_CLASS_SHARED_ARRAY_BUFFER && - c0016bca: 47d1 li a5,20 - c0016bcc: 00f49963 bne s1,a5,c0016bde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52716 (discriminator 1) + c0016d9a: 47d1 li a5,20 + c0016d9c: 00f49963 bne s1,a5,c0016dae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52724 (discriminator 1) rt->sab_funcs.sab_dup) { - c0016bd0: 168db783 ld a5,360(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52715 (discriminator 1) + c0016da0: 168db783 ld a5,360(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52723 (discriminator 1) if (class_id == JS_CLASS_SHARED_ARRAY_BUFFER && - c0016bd4: c789 beqz a5,c0016bde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52717 + c0016da4: c789 beqz a5,c0016dae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52725 rt->sab_funcs.sab_dup(rt->sab_funcs.sab_opaque, buf); - c0016bd6: 170db503 ld a0,368(s11) - c0016bda: 85d6 mv a1,s5 - c0016bdc: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52719 + c0016da6: 170db503 ld a0,368(s11) + c0016daa: 85d6 mv a1,s5 + c0016dac: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52727 abuf->data = buf; - c0016bde: 01543423 sd s5,8(s0) - c0016be2: b745 j c0016b82 + c0016dae: 01543423 sd s5,8(s0) + c0016db2: b745 j c0016d52 -00000000c0016be4 : +00000000c0016db4 : js_array_buffer_constructor2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52744 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52752 { - c0016be4: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52745 + c0016db4: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52753 return js_array_buffer_constructor3(ctx, new_target, len, class_id, - c0016be6: 4785 li a5,1 - c0016be8: e03e sd a5,0(sp) - c0016bea: 4881 li a7,0 - c0016bec: ffff0817 auipc a6,0xffff0 - c0016bf0: 17080813 addi a6,a6,368 # c0006d5c - c0016bf4: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52744 -{ - c0016bf6: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52745 + c0016db6: 4785 li a5,1 + c0016db8: e03e sd a5,0(sp) + c0016dba: 4881 li a7,0 + c0016dbc: ffff0817 auipc a6,0xffff0 + c0016dc0: 08e80813 addi a6,a6,142 # c0006e4a + c0016dc4: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52752 +{ + c0016dc6: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52753 return js_array_buffer_constructor3(ctx, new_target, len, class_id, - c0016bf8: ea5ff0ef jal ra,c0016a9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52748 + c0016dc8: ea5ff0ef jal ra,c0016c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52756 } - c0016bfc: 70e2 ld ra,56(sp) - c0016bfe: 6121 addi sp,sp,64 - c0016c00: 8082 ret + c0016dcc: 70e2 ld ra,56(sp) + c0016dce: 6121 addi sp,sp,64 + c0016dd0: 8082 ret -00000000c0016c02 : +00000000c0016dd2 : js_boolean_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41176 -{ - c0016c02: 711d addi sp,sp,-96 - c0016c04: e8a2 sd s0,80(sp) - c0016c06: ec86 sd ra,88(sp) - c0016c08: e02e sd a1,0(sp) - c0016c0a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41178 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41184 +{ + c0016dd2: 711d addi sp,sp,-96 + c0016dd4: e8a2 sd s0,80(sp) + c0016dd6: ec86 sd ra,88(sp) + c0016dd8: e02e sd a1,0(sp) + c0016dda: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41186 val = JS_NewBool(ctx, JS_ToBool(ctx, argv[0])); - c0016c0c: 630c ld a1,0(a4) - c0016c0e: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41176 + c0016ddc: 630c ld a1,0(a4) + c0016dde: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41184 { - c0016c10: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41178 + c0016de0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41186 val = JS_NewBool(ctx, JS_ToBool(ctx, argv[0])); - c0016c12: a16f40ef jal ra,c000ae28 + c0016de2: 934f40ef jal ra,c000af16 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0016c16: 00a03533 snez a0,a0 - c0016c1a: c282 sw zero,68(sp) - c0016c1c: c0aa sw a0,64(sp) - c0016c1e: 6706 ld a4,64(sp) + c0016de6: 00a03533 snez a0,a0 + c0016dea: c282 sw zero,68(sp) + c0016dec: c0aa sw a0,64(sp) + c0016dee: 6706 ld a4,64(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0016c20: 6622 ld a2,8(sp) - c0016c22: 4785 li a5,1 - c0016c24: e83a sd a4,16(sp) - c0016c26: ec3e sd a5,24(sp) + c0016df0: 6622 ld a2,8(sp) + c0016df2: 4785 li a5,1 + c0016df4: e83a sd a4,16(sp) + c0016df6: ec3e sd a5,24(sp) js_boolean_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41187 if (!JS_IsUndefined(new_target)) { - c0016c28: 0006059b sext.w a1,a2 - c0016c2c: 468d li a3,3 - c0016c2e: 02d58f63 beq a1,a3,c0016c6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41180 + c0016df8: 0006059b sext.w a1,a2 + c0016dfc: 468d li a3,3 + c0016dfe: 02d58f63 beq a1,a3,c0016e3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41188 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_BOOLEAN); - c0016c32: 6582 ld a1,0(sp) - c0016c34: 4699 li a3,6 - c0016c36: 8522 mv a0,s0 - c0016c38: db3ff0ef jal ra,c00169ea - c0016c3c: f02a sd a0,32(sp) - c0016c3e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41181 + c0016e02: 6582 ld a1,0(sp) + c0016e04: 4699 li a3,6 + c0016e06: 8522 mv a0,s0 + c0016e08: db3ff0ef jal ra,c0016bba + c0016e0c: f02a sd a0,32(sp) + c0016e0e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41189 if (!JS_IsException(obj)) - c0016c40: 0005871b sext.w a4,a1 - c0016c44: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41180 + c0016e10: 0005871b sext.w a4,a1 + c0016e14: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41188 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_BOOLEAN); - c0016c46: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41181 + c0016e16: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41189 if (!JS_IsException(obj)) - c0016c48: 00f70863 beq a4,a5,c0016c58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41182 + c0016e18: 00f70863 beq a4,a5,c0016e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41190 JS_SetObjectData(ctx, obj, val); - c0016c4c: 66c2 ld a3,16(sp) - c0016c4e: 6762 ld a4,24(sp) - c0016c50: 85aa mv a1,a0 - c0016c52: 8522 mv a0,s0 - c0016c54: bdbfd0ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41183 + c0016e1c: 66c2 ld a3,16(sp) + c0016e1e: 6762 ld a4,24(sp) + c0016e20: 85aa mv a1,a0 + c0016e22: 8522 mv a0,s0 + c0016e24: af9fd0ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41191 return obj; - c0016c58: 7782 ld a5,32(sp) - c0016c5a: f83e sd a5,48(sp) - c0016c5c: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41187 + c0016e28: 7782 ld a5,32(sp) + c0016e2a: f83e sd a5,48(sp) + c0016e2c: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41195 } - c0016c5e: 60e6 ld ra,88(sp) - c0016c60: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41185 + c0016e2e: 60e6 ld ra,88(sp) + c0016e30: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41193 return val; - c0016c62: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41187 + c0016e32: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41195 } - c0016c64: 7542 ld a0,48(sp) - c0016c66: 75e2 ld a1,56(sp) - c0016c68: 6125 addi sp,sp,96 - c0016c6a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41185 + c0016e34: 7542 ld a0,48(sp) + c0016e36: 75e2 ld a1,56(sp) + c0016e38: 6125 addi sp,sp,96 + c0016e3a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41193 return val; - c0016c6c: f83a sd a4,48(sp) - c0016c6e: bfc5 j c0016c5e + c0016e3c: f83a sd a4,48(sp) + c0016e3e: bfc5 j c0016e2e -00000000c0016c70 : +00000000c0016e40 : JS_NewObjectClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4992 return JS_NewObjectProtoClass(ctx, ctx->class_proto[class_id], class_id); - c0016c70: 613c ld a5,64(a0) - c0016c72: 00459713 slli a4,a1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4983 + c0016e40: 613c ld a5,64(a0) + c0016e42: 00459713 slli a4,a1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4991 { - c0016c76: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4984 + c0016e46: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4992 return JS_NewObjectProtoClass(ctx, ctx->class_proto[class_id], class_id); - c0016c78: 97ba add a5,a5,a4 - c0016c7a: 638c ld a1,0(a5) - c0016c7c: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4983 + c0016e48: 97ba add a5,a5,a4 + c0016e4a: 638c ld a1,0(a5) + c0016e4c: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4991 { - c0016c7e: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4985 + c0016e4e: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4993 } - c0016c80: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4984 + c0016e50: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4992 return JS_NewObjectProtoClass(ctx, ctx->class_proto[class_id], class_id); - c0016c82: b07ff06f j c0016788 + c0016e52: b07ff06f j c0016958 -00000000c0016c86 : +00000000c0016e56 : JS_NewError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6688 { - c0016c86: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6681 + c0016e56: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6689 return JS_NewObjectClass(ctx, JS_CLASS_ERROR); - c0016c88: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6682 + c0016e58: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6690 } - c0016c8a: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6681 + c0016e5a: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6689 return JS_NewObjectClass(ctx, JS_CLASS_ERROR); - c0016c8c: fe5ff06f j c0016c70 + c0016e5c: fe5ff06f j c0016e40 -00000000c0016c90 : +00000000c0016e60 : js_create_map_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47565 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47573 { - c0016c90: 7159 addi sp,sp,-112 - c0016c92: f0a2 sd s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47572 + c0016e60: 7159 addi sp,sp,-112 + c0016e62: f0a2 sd s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47580 magic &= 3; - c0016c94: 0037f413 andi s0,a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47573 + c0016e64: 0037f413 andi s0,a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47581 s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0016c98: 02240693 addi a3,s0,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47565 -{ - c0016c9c: eca6 sd s1,88(sp) - c0016c9e: e0d2 sd s4,64(sp) - c0016ca0: f486 sd ra,104(sp) - c0016ca2: e8ca sd s2,80(sp) - c0016ca4: e4ce sd s3,72(sp) - c0016ca6: fc56 sd s5,56(sp) - c0016ca8: 8a2a mv s4,a0 - c0016caa: e02e sd a1,0(sp) - c0016cac: e432 sd a2,8(sp) - c0016cae: 84be mv s1,a5 + c0016e68: 02240693 addi a3,s0,34 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47573 +{ + c0016e6c: eca6 sd s1,88(sp) + c0016e6e: e0d2 sd s4,64(sp) + c0016e70: f486 sd ra,104(sp) + c0016e72: e8ca sd s2,80(sp) + c0016e74: e4ce sd s3,72(sp) + c0016e76: fc56 sd s5,56(sp) + c0016e78: 8a2a mv s4,a0 + c0016e7a: e02e sd a1,0(sp) + c0016e7c: e432 sd a2,8(sp) + c0016e7e: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47581 s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c0016cb0: 8c9fc0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47574 + c0016e80: fe6fc0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47582 if (!s) - c0016cb4: e509 bnez a0,c0016cbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47590 + c0016e84: e509 bnez a0,c0016e8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47598 return JS_EXCEPTION; - c0016cb6: 4799 li a5,6 - c0016cb8: f002 sd zero,32(sp) - c0016cba: f43e sd a5,40(sp) - c0016cbc: a8b1 j c0016d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47576 + c0016e86: 4799 li a5,6 + c0016e88: f002 sd zero,32(sp) + c0016e8a: f43e sd a5,40(sp) + c0016e8c: a8b1 j c0016ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47584 enum_obj = JS_NewObjectClass(ctx, JS_CLASS_MAP_ITERATOR + magic); - c0016cbe: 02640593 addi a1,s0,38 - c0016cc2: 8552 mv a0,s4 - c0016cc4: fadff0ef jal ra,c0016c70 - c0016cc8: e82a sd a0,16(sp) - c0016cca: ec2e sd a1,24(sp) + c0016e8e: 02640593 addi a1,s0,38 + c0016e92: 8552 mv a0,s4 + c0016e94: fadff0ef jal ra,c0016e40 + c0016e98: e82a sd a0,16(sp) + c0016e9a: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0016ccc: 00058a9b sext.w s5,a1 + c0016e9c: 00058a9b sext.w s5,a1 js_create_map_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47577 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47585 if (JS_IsException(enum_obj)) - c0016cd0: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47576 + c0016ea0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47584 enum_obj = JS_NewObjectClass(ctx, JS_CLASS_MAP_ITERATOR + magic); - c0016cd2: 89aa mv s3,a0 - c0016cd4: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47577 + c0016ea2: 89aa mv s3,a0 + c0016ea4: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47585 if (JS_IsException(enum_obj)) - c0016cd6: fefa80e3 beq s5,a5,c0016cb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47579 + c0016ea6: fefa80e3 beq s5,a5,c0016e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47587 it = js_malloc(ctx, sizeof(*it)); - c0016cda: 02000593 li a1,32 - c0016cde: 8552 mv a0,s4 - c0016ce0: f6dfd0ef jal ra,c0014c4c - c0016ce4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47580 + c0016eaa: 02000593 li a1,32 + c0016eae: 8552 mv a0,s4 + c0016eb0: e8bfd0ef jal ra,c0014d3a + c0016eb4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47588 if (!it) { - c0016ce6: e519 bnez a0,c0016cf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47581 + c0016eb6: e519 bnez a0,c0016ec4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47589 JS_FreeValue(ctx, enum_obj); - c0016ce8: 65c2 ld a1,16(sp) - c0016cea: 6662 ld a2,24(sp) - c0016cec: 8552 mv a0,s4 - c0016cee: e4bf00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47582 + c0016eb8: 65c2 ld a1,16(sp) + c0016eba: 6662 ld a2,24(sp) + c0016ebc: 8552 mv a0,s4 + c0016ebe: d69f00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47590 goto fail; - c0016cf2: b7d1 j c0016cb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47584 + c0016ec2: b7d1 j c0016e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47592 it->obj = JS_DupValue(ctx, this_val); - c0016cf4: 6502 ld a0,0(sp) - c0016cf6: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47571 + c0016ec4: 6502 ld a0,0(sp) + c0016ec6: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47579 kind = magic >> 2; - c0016cf8: 4024d49b sraiw s1,s1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47584 + c0016ec8: 4024d49b sraiw s1,s1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47592 it->obj = JS_DupValue(ctx, this_val); - c0016cfc: 973ef0ef jal ra,c000666e - c0016d00: e008 sd a0,0(s0) - c0016d02: e40c sd a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47585 + c0016ecc: 891ef0ef jal ra,c000675c + c0016ed0: e008 sd a0,0(s0) + c0016ed2: e40c sd a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47593 it->kind = kind; - c0016d04: c804 sw s1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47586 + c0016ed4: c804 sw s1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47594 it->cur_record = NULL; - c0016d06: 00043c23 sd zero,24(s0) + c0016ed6: 00043c23 sd zero,24(s0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0016d0a: 57fd li a5,-1 - c0016d0c: 00fa9463 bne s5,a5,c0016d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0016eda: 57fd li a5,-1 + c0016edc: 00fa9463 bne s5,a5,c0016ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0016d10: 0289b823 sd s0,48(s3) + c0016ee0: 0289b823 sd s0,48(s3) js_create_map_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47596 return enum_obj; - c0016d14: f04e sd s3,32(sp) - c0016d16: f44a sd s2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47591 (discriminator 1) -} - c0016d18: 70a6 ld ra,104(sp) - c0016d1a: 7406 ld s0,96(sp) - c0016d1c: 7502 ld a0,32(sp) - c0016d1e: 75a2 ld a1,40(sp) - c0016d20: 64e6 ld s1,88(sp) - c0016d22: 6946 ld s2,80(sp) - c0016d24: 69a6 ld s3,72(sp) - c0016d26: 6a06 ld s4,64(sp) - c0016d28: 7ae2 ld s5,56(sp) - c0016d2a: 6165 addi sp,sp,112 - c0016d2c: 8082 ret - -00000000c0016d2e : + c0016ee4: f04e sd s3,32(sp) + c0016ee6: f44a sd s2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47599 (discriminator 1) +} + c0016ee8: 70a6 ld ra,104(sp) + c0016eea: 7406 ld s0,96(sp) + c0016eec: 7502 ld a0,32(sp) + c0016eee: 75a2 ld a1,40(sp) + c0016ef0: 64e6 ld s1,88(sp) + c0016ef2: 6946 ld s2,80(sp) + c0016ef4: 69a6 ld s3,72(sp) + c0016ef6: 6a06 ld s4,64(sp) + c0016ef8: 7ae2 ld s5,56(sp) + c0016efa: 6165 addi sp,sp,112 + c0016efc: 8082 ret + +00000000c0016efe : JS_NewObjectProto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4988 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4996 { - c0016d2e: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4989 + c0016efe: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4997 return JS_NewObjectProtoClass(ctx, proto, JS_CLASS_OBJECT); - c0016d30: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4990 + c0016f00: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4998 } - c0016d32: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4989 + c0016f02: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4997 return JS_NewObjectProtoClass(ctx, proto, JS_CLASS_OBJECT); - c0016d34: a55ff06f j c0016788 + c0016f04: a55ff06f j c0016958 -00000000c0016d38 : +00000000c0016f08 : JS_GetImportMeta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28438 { - c0016d38: 7139 addi sp,sp,-64 - c0016d3a: f822 sd s0,48(sp) - c0016d3c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28433 + c0016f08: 7139 addi sp,sp,-64 + c0016f0a: f822 sd s0,48(sp) + c0016f0c: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28441 obj = m->meta_obj; - c0016d3e: 1085b783 ld a5,264(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28430 + c0016f0e: 1085b783 ld a5,264(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28438 { - c0016d42: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28433 + c0016f12: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28441 obj = m->meta_obj; - c0016d44: 1105b583 ld a1,272(a1) - c0016d48: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28434 + c0016f14: 1105b583 ld a1,272(a1) + c0016f18: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28442 if (JS_IsUndefined(obj)) { - c0016d4a: 478d li a5,3 - c0016d4c: 0005871b sext.w a4,a1 - c0016d50: 02f71063 bne a4,a5,c0016d70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28435 + c0016f1a: 478d li a5,3 + c0016f1c: 0005871b sext.w a4,a1 + c0016f20: 02f71063 bne a4,a5,c0016f40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28443 obj = JS_NewObjectProto(ctx, JS_NULL); - c0016d54: 4581 li a1,0 - c0016d56: 4609 li a2,2 - c0016d58: fd7ff0ef jal ra,c0016d2e - c0016d5c: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28436 + c0016f24: 4581 li a1,0 + c0016f26: 4609 li a2,2 + c0016f28: fd7ff0ef jal ra,c0016efe + c0016f2c: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28444 if (JS_IsException(obj)) - c0016d5e: 0005871b sext.w a4,a1 - c0016d62: 4799 li a5,6 - c0016d64: 00f70c63 beq a4,a5,c0016d7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28438 + c0016f2e: 0005871b sext.w a4,a1 + c0016f32: 4799 li a5,6 + c0016f34: 00f70c63 beq a4,a5,c0016f4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28446 m->meta_obj = obj; - c0016d68: 10a43423 sd a0,264(s0) - c0016d6c: 10b43823 sd a1,272(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28441 + c0016f38: 10a43423 sd a0,264(s0) + c0016f3c: 10b43823 sd a1,272(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28449 } - c0016d70: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28440 + c0016f40: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28448 return JS_DupValue(ctx, obj); - c0016d72: 6502 ld a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28441 + c0016f42: 6502 ld a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28449 } - c0016d74: 70e2 ld ra,56(sp) - c0016d76: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28440 + c0016f44: 70e2 ld ra,56(sp) + c0016f46: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28448 return JS_DupValue(ctx, obj); - c0016d78: 8f7ef06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28441 (discriminator 2) + c0016f48: 815ef06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28449 (discriminator 2) } - c0016d7c: 70e2 ld ra,56(sp) - c0016d7e: 7442 ld s0,48(sp) - c0016d80: 4501 li a0,0 - c0016d82: 4599 li a1,6 - c0016d84: 6121 addi sp,sp,64 - c0016d86: 8082 ret + c0016f4c: 70e2 ld ra,56(sp) + c0016f4e: 7442 ld s0,48(sp) + c0016f50: 4501 li a0,0 + c0016f52: 4599 li a1,6 + c0016f54: 6121 addi sp,sp,64 + c0016f56: 8082 ret -00000000c0016d88 : +00000000c0016f58 : JS_NewObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5001 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 return JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], JS_CLASS_OBJECT); - c0016d88: 613c ld a5,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4999 + c0016f58: 613c ld a5,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5007 { - c0016d8a: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5001 + c0016f5a: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 return JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], JS_CLASS_OBJECT); - c0016d8c: 4685 li a3,1 - c0016d8e: 6b8c ld a1,16(a5) - c0016d90: 6f90 ld a2,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5002 + c0016f5c: 4685 li a3,1 + c0016f5e: 6b8c ld a1,16(a5) + c0016f60: 6f90 ld a2,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5010 } - c0016d92: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5001 + c0016f62: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 return JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], JS_CLASS_OBJECT); - c0016d94: 9f5ff06f j c0016788 + c0016f64: 9f5ff06f j c0016958 -00000000c0016d98 : +00000000c0016f68 : js_create_module_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28129 if (m->func_created) - c0016d98: 0825c783 lbu a5,130(a1) - c0016d9c: c399 beqz a5,c0016da2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28122 + c0016f68: 0825c783 lbu a5,130(a1) + c0016f6c: c399 beqz a5,c0016f72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28130 return 0; - c0016d9e: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28152 + c0016f6e: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28160 } - c0016da0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28116 -{ - c0016da2: 711d addi sp,sp,-96 - c0016da4: e8a2 sd s0,80(sp) - c0016da6: e4a6 sd s1,72(sp) - c0016da8: e0ca sd s2,64(sp) - c0016daa: ec86 sd ra,88(sp) - c0016dac: fc4e sd s3,56(sp) - c0016dae: f852 sd s4,48(sp) - c0016db0: f456 sd s5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28126 + c0016f70: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28124 +{ + c0016f72: 711d addi sp,sp,-96 + c0016f74: e8a2 sd s0,80(sp) + c0016f76: e4a6 sd s1,72(sp) + c0016f78: e0ca sd s2,64(sp) + c0016f7a: ec86 sd ra,88(sp) + c0016f7c: fc4e sd s3,56(sp) + c0016f7e: f852 sd s4,48(sp) + c0016f80: f456 sd s5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28134 if (is_c_module) { - c0016db2: 7dbc ld a5,120(a1) - c0016db4: 84aa mv s1,a0 - c0016db6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28128 + c0016f82: 7dbc ld a5,120(a1) + c0016f84: 84aa mv s1,a0 + c0016f86: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28136 for(i = 0; i < m->export_entries_count; i++) { - c0016db8: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28126 + c0016f88: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28134 if (is_c_module) { - c0016dba: ebbd bnez a5,c0016e30 + c0016f8a: ebbd bnez a5,c0017000 js_create_module_bytecode_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28071 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28079 bfunc = m->func_obj; - c0016dbc: 79bc ld a5,112(a1) - c0016dbe: 0685b903 ld s2,104(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28072 + c0016f8c: 79bc ld a5,112(a1) + c0016f8e: 0685b903 ld s2,104(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28080 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0016dc2: 6930 ld a2,80(a0) - c0016dc4: 652c ld a1,72(a0) - c0016dc6: 46b5 li a3,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28071 + c0016f92: 6930 ld a2,80(a0) + c0016f94: 652c ld a1,72(a0) + c0016f96: 46b5 li a3,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28079 bfunc = m->func_obj; - c0016dc8: ec3e sd a5,24(sp) - c0016dca: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28072 + c0016f98: ec3e sd a5,24(sp) + c0016f9a: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28080 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0016dcc: 9bdff0ef jal ra,c0016788 - c0016dd0: e42e sd a1,8(sp) - c0016dd2: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28075 + c0016f9c: 9bdff0ef jal ra,c0016958 + c0016fa0: e42e sd a1,8(sp) + c0016fa2: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28083 if (JS_IsException(func_obj)) - c0016dd4: 2581 sext.w a1,a1 - c0016dd6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28072 + c0016fa4: 2581 sext.w a1,a1 + c0016fa6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28080 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0016dd8: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28075 + c0016fa8: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28083 if (JS_IsException(func_obj)) - c0016dda: 04f58663 beq a1,a5,c0016e26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28080 + c0016faa: 04f58663 beq a1,a5,c0016ff6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28088 p->u.func.function_bytecode = b; - c0016dde: 0329b823 sd s2,48(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28081 + c0016fae: 0329b823 sd s2,48(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28089 b->header.ref_count++; - c0016de2: 00092783 lw a5,0(s2) - c0016de6: 2785 addiw a5,a5,1 - c0016de8: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28082 + c0016fb2: 00092783 lw a5,0(s2) + c0016fb6: 2785 addiw a5,a5,1 + c0016fb8: 00f92023 sw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28090 p->u.func.home_object = NULL; - c0016dec: 0409b023 sd zero,64(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28083 + c0016fbc: 0409b023 sd zero,64(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28091 p->u.func.var_refs = NULL; - c0016df0: 0209bc23 sd zero,56(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28084 + c0016fc0: 0209bc23 sd zero,56(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28092 if (b->closure_var_count) { - c0016df4: 05c92583 lw a1,92(s2) - c0016df8: e1a5 bnez a1,c0016e58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28106 + c0016fc4: 05c92583 lw a1,92(s2) + c0016fc8: e1a5 bnez a1,c0017028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28114 m->func_obj = func_obj; - c0016dfa: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28107 + c0016fca: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28115 JS_FreeValue(ctx, bfunc); - c0016dfc: 65c2 ld a1,16(sp) - c0016dfe: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28106 + c0016fcc: 65c2 ld a1,16(sp) + c0016fce: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28114 m->func_obj = func_obj; - c0016e00: f43c sd a5,104(s0) - c0016e02: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28107 + c0016fd0: f43c sd a5,104(s0) + c0016fd2: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28115 JS_FreeValue(ctx, bfunc); - c0016e04: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28106 + c0016fd4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28114 m->func_obj = func_obj; - c0016e06: f83c sd a5,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28107 + c0016fd6: f83c sd a5,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28115 JS_FreeValue(ctx, bfunc); - c0016e08: d31f00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28108 + c0016fd8: c4ff00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28116 return 0; - c0016e0c: a02d j c0016e36 + c0016fdc: a02d j c0017006 js_create_module_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28129 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28137 JSExportEntry *me = &m->export_entries[i]; - c0016e0e: 741c ld a5,40(s0) - c0016e10: 00591993 slli s3,s2,0x5 - c0016e14: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28130 + c0016fde: 741c ld a5,40(s0) + c0016fe0: 00591993 slli s3,s2,0x5 + c0016fe4: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28138 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c0016e16: 0109a783 lw a5,16(s3) - c0016e1a: eb91 bnez a5,c0016e2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28131 + c0016fe6: 0109a783 lw a5,16(s3) + c0016fea: eb91 bnez a5,c0016ffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28139 var_ref = js_create_module_var(ctx, FALSE); - c0016e1c: 4581 li a1,0 - c0016e1e: 8526 mv a0,s1 - c0016e20: fbafe0ef jal ra,c00155da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28132 + c0016fec: 4581 li a1,0 + c0016fee: 8526 mv a0,s1 + c0016ff0: fbafe0ef jal ra,c00157aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28140 if (!var_ref) - c0016e24: e119 bnez a0,c0016e2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28139 + c0016ff4: e119 bnez a0,c0016ffa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28147 return -1; - c0016e26: 557d li a0,-1 - c0016e28: a839 j c0016e46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28134 + c0016ff6: 557d li a0,-1 + c0016ff8: a839 j c0017016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28142 me->u.local.var_ref = var_ref; - c0016e2a: 00a9b423 sd a0,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28128 (discriminator 2) + c0016ffa: 00a9b423 sd a0,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28136 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c0016e2e: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28128 (discriminator 1) - c0016e30: 581c lw a5,48(s0) - c0016e32: fcf94ee3 blt s2,a5,c0016e0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28141 + c0016ffe: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28136 (discriminator 1) + c0017000: 581c lw a5,48(s0) + c0017002: fcf94ee3 blt s2,a5,c0016fde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28149 m->func_created = TRUE; - c0016e36: 4785 li a5,1 - c0016e38: 08f40123 sb a5,130(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28145 + c0017006: 4785 li a5,1 + c0017008: 08f40123 sb a5,130(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28153 for(i = 0; i < m->req_module_entries_count; i++) { - c0016e3c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28145 (discriminator 1) - c0016e3e: 501c lw a5,32(s0) - c0016e40: 06f94563 blt s2,a5,c0016eaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28122 + c001700c: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28153 (discriminator 1) + c001700e: 501c lw a5,32(s0) + c0017010: 06f94563 blt s2,a5,c001707a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28130 return 0; - c0016e44: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28152 + c0017014: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28160 } - c0016e46: 60e6 ld ra,88(sp) - c0016e48: 6446 ld s0,80(sp) - c0016e4a: 64a6 ld s1,72(sp) - c0016e4c: 6906 ld s2,64(sp) - c0016e4e: 79e2 ld s3,56(sp) - c0016e50: 7a42 ld s4,48(sp) - c0016e52: 7aa2 ld s5,40(sp) - c0016e54: 6125 addi sp,sp,96 - c0016e56: 8082 ret + c0017016: 60e6 ld ra,88(sp) + c0017018: 6446 ld s0,80(sp) + c001701a: 64a6 ld s1,72(sp) + c001701c: 6906 ld s2,64(sp) + c001701e: 79e2 ld s3,56(sp) + c0017020: 7a42 ld s4,48(sp) + c0017022: 7aa2 ld s5,40(sp) + c0017024: 6125 addi sp,sp,96 + c0017026: 8082 ret js_create_module_bytecode_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28085 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28093 var_refs = js_mallocz(ctx, sizeof(var_refs[0]) * b->closure_var_count); - c0016e58: 058e slli a1,a1,0x3 - c0016e5a: 8526 mv a0,s1 - c0016e5c: e81fe0ef jal ra,c0015cdc - c0016e60: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28086 + c0017028: 058e slli a1,a1,0x3 + c001702a: 8526 mv a0,s1 + c001702c: e81fe0ef jal ra,c0015eac + c0017030: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28094 if (!var_refs) - c0016e62: cd15 beqz a0,c0016e9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28088 + c0017032: cd15 beqz a0,c001706e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28096 p->u.func.var_refs = var_refs; - c0016e64: 02a9bc23 sd a0,56(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28092 + c0017034: 02a9bc23 sd a0,56(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28100 for(i = 0; i < b->closure_var_count; i++) { - c0016e68: 4981 li s3,0 - c0016e6a: 05c92783 lw a5,92(s2) - c0016e6e: f8f9d6e3 bge s3,a5,c0016dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28093 + c0017038: 4981 li s3,0 + c001703a: 05c92783 lw a5,92(s2) + c001703e: f8f9d6e3 bge s3,a5,c0016fca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28101 JSClosureVar *cv = &b->closure_var[i]; - c0016e72: 03893783 ld a5,56(s2) - c0016e76: 00399a93 slli s5,s3,0x3 - c0016e7a: 97d6 add a5,a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28095 + c0017042: 03893783 ld a5,56(s2) + c0017046: 00399a93 slli s5,s3,0x3 + c001704a: 97d6 add a5,a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28103 if (cv->is_local) { - c0016e7c: 0007c703 lbu a4,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c0016e80: 8b05 andi a4,a4,1 - c0016e82: cf01 beqz a4,c0016e9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28096 + c001704c: 0007c703 lbu a4,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0017050: 8b05 andi a4,a4,1 + c0017052: cf01 beqz a4,c001706a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28104 var_ref = js_create_module_var(ctx, cv->is_lexical); - c0016e84: 438c lw a1,0(a5) - c0016e86: 8526 mv a0,s1 - c0016e88: 0035d59b srliw a1,a1,0x3 - c0016e8c: 8985 andi a1,a1,1 - c0016e8e: f4cfe0ef jal ra,c00155da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28097 + c0017054: 438c lw a1,0(a5) + c0017056: 8526 mv a0,s1 + c0017058: 0035d59b srliw a1,a1,0x3 + c001705c: 8985 andi a1,a1,1 + c001705e: f4cfe0ef jal ra,c00157aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28105 if (!var_ref) - c0016e92: c511 beqz a0,c0016e9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28102 + c0017062: c511 beqz a0,c001706e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28110 var_refs[i] = var_ref; - c0016e94: 9ad2 add s5,s5,s4 - c0016e96: 00aab023 sd a0,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28092 + c0017064: 9ad2 add s5,s5,s4 + c0017066: 00aab023 sd a0,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28100 for(i = 0; i < b->closure_var_count; i++) { - c0016e9a: 2985 addiw s3,s3,1 - c0016e9c: b7f9 j c0016e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28110 + c001706a: 2985 addiw s3,s3,1 + c001706c: b7f9 j c001703a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28118 JS_FreeValue(ctx, func_obj); - c0016e9e: 6582 ld a1,0(sp) - c0016ea0: 6622 ld a2,8(sp) - c0016ea2: 8526 mv a0,s1 - c0016ea4: c95f00ef jal ra,c0007b38 - c0016ea8: bfbd j c0016e26 + c001706e: 6582 ld a1,0(sp) + c0017070: 6622 ld a2,8(sp) + c0017072: 8526 mv a0,s1 + c0017074: bb3f00ef jal ra,c0007c26 + c0017078: bfbd j c0016ff6 js_create_module_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28147 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28155 if (js_create_module_function(ctx, rme->module) < 0) - c0016eaa: 6c1c ld a5,24(s0) - c0016eac: 00491713 slli a4,s2,0x4 - c0016eb0: 8526 mv a0,s1 - c0016eb2: 97ba add a5,a5,a4 - c0016eb4: 678c ld a1,8(a5) - c0016eb6: ee3ff0ef jal ra,c0016d98 - c0016eba: f60546e3 bltz a0,c0016e26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28145 (discriminator 2) + c001707a: 6c1c ld a5,24(s0) + c001707c: 00491713 slli a4,s2,0x4 + c0017080: 8526 mv a0,s1 + c0017082: 97ba add a5,a5,a4 + c0017084: 678c ld a1,8(a5) + c0017086: ee3ff0ef jal ra,c0016f68 + c001708a: f60546e3 bltz a0,c0016ff6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28153 (discriminator 2) for(i = 0; i < m->req_module_entries_count; i++) { - c0016ebe: 2905 addiw s2,s2,1 - c0016ec0: bfbd j c0016e3e + c001708e: 2905 addiw s2,s2,1 + c0017090: bfbd j c001700e -00000000c0016ec2 : +00000000c0017092 : js_proxy_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46656 -{ - c0016ec2: 7171 addi sp,sp,-176 - c0016ec4: f506 sd ra,168(sp) - c0016ec6: f122 sd s0,160(sp) - c0016ec8: ed26 sd s1,152(sp) - c0016eca: e94a sd s2,144(sp) - c0016ecc: e54e sd s3,136(sp) - c0016ece: e152 sd s4,128(sp) - c0016ed0: fcd6 sd s5,120(sp) - c0016ed2: f8da sd s6,112(sp) - c0016ed4: f4de sd s7,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46664 +{ + c0017092: 7171 addi sp,sp,-176 + c0017094: f506 sd ra,168(sp) + c0017096: f122 sd s0,160(sp) + c0017098: ed26 sd s1,152(sp) + c001709a: e94a sd s2,144(sp) + c001709c: e54e sd s3,136(sp) + c001709e: e152 sd s4,128(sp) + c00170a0: fcd6 sd s5,120(sp) + c00170a2: f8da sd s6,112(sp) + c00170a4: f4de sd s7,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46669 target = argv[0]; - c0016ed6: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46662 + c00170a6: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46670 handler = argv[1]; - c0016ed8: 01873903 ld s2,24(a4) # ffffffff9e370018 <_ebss+0xfffffffede26eef2> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46661 + c00170a8: 01873903 ld s2,24(a4) # ffffffff9e370018 <_ebss+0xfffffffede26eef2> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46669 target = argv[0]; - c0016edc: 00073a83 ld s5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46662 + c00170ac: 00073a83 ld s5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46670 handler = argv[1]; - c0016ee0: 6b14 ld a3,16(a4) - c0016ee2: f44a sd s2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46663 + c00170b0: 6b14 ld a3,16(a4) + c00170b2: f44a sd s2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46671 if (JS_VALUE_GET_TAG(target) != JS_TAG_OBJECT || - c0016ee4: 00f97933 and s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46661 + c00170b4: 00f97933 and s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46669 target = argv[0]; - c0016ee8: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46656 + c00170b8: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46664 { - c0016eea: e02e sd a1,0(sp) - c0016eec: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46661 + c00170ba: e02e sd a1,0(sp) + c00170bc: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46669 target = argv[0]; - c0016eee: e856 sd s5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46662 + c00170be: e856 sd s5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46670 handler = argv[1]; - c0016ef0: f036 sd a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46663 + c00170c0: f036 sd a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46671 if (JS_VALUE_GET_TAG(target) != JS_TAG_OBJECT || - c0016ef2: 2901 sext.w s2,s2 - c0016ef4: 57fd li a5,-1 - c0016ef6: 00f90e63 beq s2,a5,c0016f12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46682 -} - c0016efa: 740a ld s0,160(sp) - c0016efc: 70aa ld ra,168(sp) - c0016efe: 64ea ld s1,152(sp) - c0016f00: 694a ld s2,144(sp) - c0016f02: 69aa ld s3,136(sp) - c0016f04: 6a0a ld s4,128(sp) - c0016f06: 7ae6 ld s5,120(sp) - c0016f08: 7b46 ld s6,112(sp) - c0016f0a: 7ba6 ld s7,104(sp) - c0016f0c: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46665 + c00170c2: 2901 sext.w s2,s2 + c00170c4: 57fd li a5,-1 + c00170c6: 00f90e63 beq s2,a5,c00170e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46690 +} + c00170ca: 740a ld s0,160(sp) + c00170cc: 70aa ld ra,168(sp) + c00170ce: 64ea ld s1,152(sp) + c00170d0: 694a ld s2,144(sp) + c00170d2: 69aa ld s3,136(sp) + c00170d4: 6a0a ld s4,128(sp) + c00170d6: 7ae6 ld s5,120(sp) + c00170d8: 7b46 ld s6,112(sp) + c00170da: 7ba6 ld s7,104(sp) + c00170dc: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46673 return JS_ThrowTypeErrorNotAnObject(ctx); - c0016f0e: a6bfc06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46667 + c00170de: 989fc06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46675 obj = JS_NewObjectProtoClass(ctx, JS_NULL, JS_CLASS_PROXY); - c0016f12: 4789 li a5,2 - c0016f14: 02c00693 li a3,44 - c0016f18: 4581 li a1,0 - c0016f1a: 4609 li a2,2 - c0016f1c: 8a2a mv s4,a0 - c0016f1e: e082 sd zero,64(sp) - c0016f20: e4be sd a5,72(sp) - c0016f22: 867ff0ef jal ra,c0016788 - c0016f26: f82a sd a0,48(sp) - c0016f28: fc2e sd a1,56(sp) + c00170e2: 4789 li a5,2 + c00170e4: 02c00693 li a3,44 + c00170e8: 4581 li a1,0 + c00170ea: 4609 li a2,2 + c00170ec: 8a2a mv s4,a0 + c00170ee: e082 sd zero,64(sp) + c00170f0: e4be sd a5,72(sp) + c00170f2: 867ff0ef jal ra,c0016958 + c00170f6: f82a sd a0,48(sp) + c00170f8: fc2e sd a1,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c0016f2a: 00058b1b sext.w s6,a1 + c00170fa: 00058b1b sext.w s6,a1 js_proxy_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46676 if (JS_IsException(obj)) - c0016f2e: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46667 + c00170fe: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46675 obj = JS_NewObjectProtoClass(ctx, JS_NULL, JS_CLASS_PROXY); - c0016f30: 84aa mv s1,a0 - c0016f32: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46668 + c0017100: 84aa mv s1,a0 + c0017102: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46676 if (JS_IsException(obj)) - c0016f34: 017b1563 bne s6,s7,c0016f3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46681 + c0017104: 017b1563 bne s6,s7,c001710e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46689 return obj; - c0016f38: e8a6 sd s1,80(sp) - c0016f3a: ecce sd s3,88(sp) - c0016f3c: a839 j c0016f5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46670 + c0017108: e8a6 sd s1,80(sp) + c001710a: ecce sd s3,88(sp) + c001710c: a839 j c001712a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46678 s = js_malloc(ctx, sizeof(JSProxyData)); - c0016f3e: 02800593 li a1,40 - c0016f42: 8552 mv a0,s4 - c0016f44: d09fd0ef jal ra,c0014c4c - c0016f48: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46671 + c001710e: 02800593 li a1,40 + c0017112: 8552 mv a0,s4 + c0017114: c27fd0ef jal ra,c0014d3a + c0017118: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46679 if (!s) { - c0016f4a: e50d bnez a0,c0016f74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46672 + c001711a: e50d bnez a0,c0017144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46680 JS_FreeValue(ctx, obj); - c0016f4c: 75c2 ld a1,48(sp) - c0016f4e: 7662 ld a2,56(sp) - c0016f50: 8552 mv a0,s4 - c0016f52: be7f00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46673 + c001711c: 75c2 ld a1,48(sp) + c001711e: 7662 ld a2,56(sp) + c0017120: 8552 mv a0,s4 + c0017122: b05f00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46681 return JS_EXCEPTION; - c0016f56: e882 sd zero,80(sp) - c0016f58: ecde sd s7,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46682 (discriminator 1) -} - c0016f5a: 70aa ld ra,168(sp) - c0016f5c: 740a ld s0,160(sp) - c0016f5e: 6546 ld a0,80(sp) - c0016f60: 65e6 ld a1,88(sp) - c0016f62: 64ea ld s1,152(sp) - c0016f64: 694a ld s2,144(sp) - c0016f66: 69aa ld s3,136(sp) - c0016f68: 6a0a ld s4,128(sp) - c0016f6a: 7ae6 ld s5,120(sp) - c0016f6c: 7b46 ld s6,112(sp) - c0016f6e: 7ba6 ld s7,104(sp) - c0016f70: 614d addi sp,sp,176 - c0016f72: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46675 + c0017126: e882 sd zero,80(sp) + c0017128: ecde sd s7,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46690 (discriminator 1) +} + c001712a: 70aa ld ra,168(sp) + c001712c: 740a ld s0,160(sp) + c001712e: 6546 ld a0,80(sp) + c0017130: 65e6 ld a1,88(sp) + c0017132: 64ea ld s1,152(sp) + c0017134: 694a ld s2,144(sp) + c0017136: 69aa ld s3,136(sp) + c0017138: 6a0a ld s4,128(sp) + c001713a: 7ae6 ld s5,120(sp) + c001713c: 7b46 ld s6,112(sp) + c001713e: 7ba6 ld s7,104(sp) + c0017140: 614d addi sp,sp,176 + c0017142: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46683 s->target = JS_DupValue(ctx, target); - c0016f74: 6542 ld a0,16(sp) - c0016f76: 65e2 ld a1,24(sp) - c0016f78: ef6ef0ef jal ra,c000666e - c0016f7c: e008 sd a0,0(s0) - c0016f7e: e40c sd a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46676 + c0017144: 6542 ld a0,16(sp) + c0017146: 65e2 ld a1,24(sp) + c0017148: e14ef0ef jal ra,c000675c + c001714c: e008 sd a0,0(s0) + c001714e: e40c sd a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46684 s->handler = JS_DupValue(ctx, handler); - c0016f80: 7502 ld a0,32(sp) - c0016f82: 75a2 ld a1,40(sp) - c0016f84: eeaef0ef jal ra,c000666e - c0016f88: ec0c sd a1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46677 + c0017150: 7502 ld a0,32(sp) + c0017152: 75a2 ld a1,40(sp) + c0017154: e08ef0ef jal ra,c000675c + c0017158: ec0c sd a1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46685 s->is_func = JS_IsFunction(ctx, target); - c0016f8a: 6662 ld a2,24(sp) - c0016f8c: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46676 + c001715a: 6662 ld a2,24(sp) + c001715c: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46684 s->handler = JS_DupValue(ctx, handler); - c0016f8e: e808 sd a0,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46677 + c001715e: e808 sd a0,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46685 s->is_func = JS_IsFunction(ctx, target); - c0016f90: 8552 mv a0,s4 - c0016f92: f4af30ef jal ra,c000a6dc - c0016f96: 02a40023 sb a0,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46678 + c0017160: 8552 mv a0,s4 + c0017162: e68f30ef jal ra,c000a7ca + c0017166: 02a40023 sb a0,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46686 s->is_revoked = FALSE; - c0016f9a: 020400a3 sb zero,33(s0) + c001716a: 020400a3 sb zero,33(s0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0016f9e: f92b1de3 bne s6,s2,c0016f38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c001716e: f92b1de3 bne s6,s2,c0017108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0016fa2: f880 sd s0,48(s1) + c0017172: f880 sd s0,48(s1) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0016fa4: 000ab783 ld a5,0(s5) + c0017174: 000ab783 ld a5,0(s5) JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c0016fa8: 0054c703 lbu a4,5(s1) + c0017178: 0054c703 lbu a4,5(s1) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0016fac: 93b1 srli a5,a5,0x2c + c001717c: 93b1 srli a5,a5,0x2c JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c0016fae: 8b85 andi a5,a5,1 - c0016fb0: 0047979b slliw a5,a5,0x4 - c0016fb4: 9b3d andi a4,a4,-17 - c0016fb6: 8fd9 or a5,a5,a4 - c0016fb8: 00f482a3 sb a5,5(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9861 + c001717e: 8b85 andi a5,a5,1 + c0017180: 0047979b slliw a5,a5,0x4 + c0017184: 9b3d andi a4,a4,-17 + c0017186: 8fd9 or a5,a5,a4 + c0017188: 00f482a3 sb a5,5(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9869 return TRUE; - c0016fbc: bfb5 j c0016f38 + c001718c: bfb5 j c0017108 -00000000c0016fbe : +00000000c001718e : JS_NewArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5002 return JS_NewObjectFromShape(ctx, js_dup_shape(ctx->array_shape), - c0016fbe: 7d0c ld a1,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4993 + c001718e: 7d0c ld a1,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5001 { - c0016fc0: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4994 + c0017190: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5002 return JS_NewObjectFromShape(ctx, js_dup_shape(ctx->array_shape), - c0016fc2: 4609 li a2,2 + c0017192: 4609 li a2,2 js_dup_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4483 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4491 sh->header.ref_count++; - c0016fc4: 419c lw a5,0(a1) - c0016fc6: 2785 addiw a5,a5,1 - c0016fc8: c19c sw a5,0(a1) + c0017194: 419c lw a5,0(a1) + c0017196: 2785 addiw a5,a5,1 + c0017198: c19c sw a5,0(a1) JS_NewArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5004 } - c0016fca: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4994 + c001719a: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5002 return JS_NewObjectFromShape(ctx, js_dup_shape(ctx->array_shape), - c0016fcc: e58ff06f j c0016624 + c001719c: e58ff06f j c00167f4 -00000000c0016fd0 : +00000000c00171a0 : convert_fast_array_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8156 { - c0016fd0: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8154 + c00171a0: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8162 if (js_shape_prepare_update(ctx, p, NULL)) - c0016fd2: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8148 -{ - c0016fd4: f822 sd s0,48(sp) - c0016fd6: f04a sd s2,32(sp) - c0016fd8: fc06 sd ra,56(sp) - c0016fda: f426 sd s1,40(sp) - c0016fdc: ec4e sd s3,24(sp) - c0016fde: e852 sd s4,16(sp) - c0016fe0: e456 sd s5,8(sp) - c0016fe2: e05a sd s6,0(sp) - c0016fe4: 892a mv s2,a0 - c0016fe6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8154 + c00171a2: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8156 +{ + c00171a4: f822 sd s0,48(sp) + c00171a6: f04a sd s2,32(sp) + c00171a8: fc06 sd ra,56(sp) + c00171aa: f426 sd s1,40(sp) + c00171ac: ec4e sd s3,24(sp) + c00171ae: e852 sd s4,16(sp) + c00171b0: e456 sd s5,8(sp) + c00171b2: e05a sd s6,0(sp) + c00171b4: 892a mv s2,a0 + c00171b6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8162 if (js_shape_prepare_update(ctx, p, NULL)) - c0016fe8: e5bfd0ef jal ra,c0014e42 - c0016fec: cd09 beqz a0,c0017006 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8155 + c00171b8: e5bfd0ef jal ra,c0015012 + c00171bc: cd09 beqz a0,c00171d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8163 return -1; - c0016fee: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8178 -} - c0016ff0: 70e2 ld ra,56(sp) - c0016ff2: 7442 ld s0,48(sp) - c0016ff4: 7902 ld s2,32(sp) - c0016ff6: 69e2 ld s3,24(sp) - c0016ff8: 6a42 ld s4,16(sp) - c0016ffa: 6aa2 ld s5,8(sp) - c0016ffc: 6b02 ld s6,0(sp) - c0016ffe: 8526 mv a0,s1 - c0017000: 74a2 ld s1,40(sp) - c0017002: 6121 addi sp,sp,64 - c0017004: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8158 + c00171be: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8186 +} + c00171c0: 70e2 ld ra,56(sp) + c00171c2: 7442 ld s0,48(sp) + c00171c4: 7902 ld s2,32(sp) + c00171c6: 69e2 ld s3,24(sp) + c00171c8: 6a42 ld s4,16(sp) + c00171ca: 6aa2 ld s5,8(sp) + c00171cc: 6b02 ld s6,0(sp) + c00171ce: 8526 mv a0,s1 + c00171d0: 74a2 ld s1,40(sp) + c00171d2: 6121 addi sp,sp,64 + c00171d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8166 sh = p->shape; - c0017006: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8156 + c00171d6: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8164 len = p->u.array.count; - c0017008: 04042a03 lw s4,64(s0) - c001700c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8159 + c00171d8: 04042a03 lw s4,64(s0) + c00171dc: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8167 new_count = sh->prop_count + len; - c001700e: 5794 lw a3,40(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8160 + c00171de: 5794 lw a3,40(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8168 if (new_count > sh->prop_size) { - c0017010: 53dc lw a5,36(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8159 + c00171e0: 53dc lw a5,36(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8167 new_count = sh->prop_count + len; - c0017012: 014686bb addw a3,a3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8160 + c00171e2: 014686bb addw a3,a3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8168 if (new_count > sh->prop_size) { - c0017016: 02d7eb63 bltu a5,a3,c001704c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8165 + c00171e6: 02d7eb63 bltu a5,a3,c001721c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8173 tab = p->u.array.u.values; - c001701a: 03843a83 ld s5,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8166 + c00171ea: 03843a83 ld s5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8174 for(i = 0; i < len; i++) { - c001701e: 4981 li s3,0 + c00171ee: 4981 li s3,0 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c0017020: 80000b37 lui s6,0x80000 - c0017024: 0009861b sext.w a2,s3 + c00171f0: 80000b37 lui s6,0x80000 + c00171f4: 0009861b sext.w a2,s3 convert_fast_array_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8166 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8174 (discriminator 1) for(i = 0; i < len; i++) { - c0017028: 03466a63 bltu a2,s4,c001705c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8172 + c00171f8: 03466a63 bltu a2,s4,c001722c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8180 js_free(ctx, p->u.array.u.values); - c001702c: 7c0c ld a1,56(s0) - c001702e: 854a mv a0,s2 - c0017030: e0bef0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8176 + c00171fc: 7c0c ld a1,56(s0) + c00171fe: 854a mv a0,s2 + c0017200: d29ef0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8184 p->fast_array = 0; - c0017034: 00544783 lbu a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8173 + c0017204: 00544783 lbu a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8181 p->u.array.count = 0; - c0017038: 04042023 sw zero,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8174 + c0017208: 04042023 sw zero,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8182 p->u.array.u.values = NULL; /* fail safe */ - c001703c: 02043c23 sd zero,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8176 + c001720c: 02043c23 sd zero,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8184 p->fast_array = 0; - c0017040: 9bdd andi a5,a5,-9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8175 + c0017210: 9bdd andi a5,a5,-9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8183 p->u.array.u1.size = 0; - c0017042: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8176 + c0017212: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8184 p->fast_array = 0; - c0017046: 00f402a3 sb a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8177 + c0017216: 00f402a3 sb a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8185 return 0; - c001704a: b75d j c0016ff0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8161 + c001721a: b75d j c00171c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8169 if (resize_properties(ctx, &p->shape, p, new_count)) - c001704c: 8622 mv a2,s0 - c001704e: 01840593 addi a1,s0,24 - c0017052: 854a mv a0,s2 - c0017054: 906ff0ef jal ra,c001615a - c0017058: d169 beqz a0,c001701a - c001705a: bf51 j c0016fee + c001721c: 8622 mv a2,s0 + c001721e: 01840593 addi a1,s0,24 + c0017222: 854a mv a0,s2 + c0017224: 906ff0ef jal ra,c001632a + c0017228: d169 beqz a0,c00171ea + c001722a: bf51 j c00171be __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c001705c: 01666633 or a2,a2,s6 + c001722c: 01666633 or a2,a2,s6 convert_fast_array_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8177 pr = add_property(ctx, p, __JS_AtomFromUInt32(i), JS_PROP_C_W_E); - c0017060: 469d li a3,7 - c0017062: 2601 sext.w a2,a2 - c0017064: 85a2 mv a1,s0 - c0017066: 854a mv a0,s2 - c0017068: b5eff0ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8170 + c0017230: 469d li a3,7 + c0017232: 2601 sext.w a2,a2 + c0017234: 85a2 mv a1,s0 + c0017236: 854a mv a0,s2 + c0017238: b5eff0ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8178 pr->u.value = *tab++; - c001706c: 00499793 slli a5,s3,0x4 - c0017070: 97d6 add a5,a5,s5 - c0017072: 6398 ld a4,0(a5) - c0017074: 0985 addi s3,s3,1 - c0017076: e118 sd a4,0(a0) - c0017078: 679c ld a5,8(a5) - c001707a: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8166 + c001723c: 00499793 slli a5,s3,0x4 + c0017240: 97d6 add a5,a5,s5 + c0017242: 6398 ld a4,0(a5) + c0017244: 0985 addi s3,s3,1 + c0017246: e118 sd a4,0(a0) + c0017248: 679c ld a5,8(a5) + c001724a: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8174 for(i = 0; i < len; i++) { - c001707c: b765 j c0017024 + c001724c: b765 j c00171f4 -00000000c001707e : +00000000c001724e : ident_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20546 -{ - c001707e: 7139 addi sp,sp,-64 - c0017080: f426 sd s1,40(sp) - c0017082: f04a sd s2,32(sp) - c0017084: ec4e sd s3,24(sp) - c0017086: fc06 sd ra,56(sp) - c0017088: f822 sd s0,48(sp) - c001708a: e852 sd s4,16(sp) - c001708c: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20551 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20554 +{ + c001724e: 7139 addi sp,sp,-64 + c0017250: f426 sd s1,40(sp) + c0017252: f04a sd s2,32(sp) + c0017254: ec4e sd s3,24(sp) + c0017256: fc06 sd ra,56(sp) + c0017258: f822 sd s0,48(sp) + c001725a: e852 sd s4,16(sp) + c001725c: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20559 size = *psize; - c001708e: 6210 ld a2,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20552 + c001725e: 6210 ld a2,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20560 if (size >= (SIZE_MAX / 3) * 2) - c0017090: 0005d797 auipc a5,0x5d - c0017094: 7607b783 ld a5,1888(a5) # c00747f0 <_erodata+0x70> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20550 + c0017260: 0005d797 auipc a5,0x5d + c0017264: 7f07b783 ld a5,2032(a5) # c0074a50 <_erodata+0x70> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20558 buf = *pbuf; - c0017098: 0005ba03 ld s4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20546 + c0017268: 0005ba03 ld s4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20554 { - c001709c: 89ae mv s3,a1 - c001709e: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20552 + c001726c: 89ae mv s3,a1 + c001726e: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20560 if (size >= (SIZE_MAX / 3) * 2) - c00170a0: 00c7e563 bltu a5,a2,c00170aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20555 + c0017270: 00c7e563 bltu a5,a2,c001727a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20563 new_size = size + (size >> 1); - c00170a4: 00165493 srli s1,a2,0x1 - c00170a8: 94b2 add s1,s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20556 + c0017274: 00165493 srli s1,a2,0x1 + c0017278: 94b2 add s1,s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20564 if (buf == static_buf) { - c00170aa: 02da1b63 bne s4,a3,c00170e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20557 + c001727a: 02da1b63 bne s4,a3,c00172b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20565 new_buf = js_malloc(ctx, new_size); - c00170ae: 85a6 mv a1,s1 - c00170b0: e432 sd a2,8(sp) - c00170b2: b9bfd0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20558 + c001727e: 85a6 mv a1,s1 + c0017280: e432 sd a2,8(sp) + c0017282: ab9fd0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20566 if (!new_buf) - c00170b6: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20557 + c0017286: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20565 new_buf = js_malloc(ctx, new_size); - c00170b8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20558 + c0017288: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20566 if (!new_buf) - c00170ba: e911 bnez a0,c00170ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20559 + c001728a: e911 bnez a0,c001729e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20567 return -1; - c00170bc: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20569 -} - c00170be: 70e2 ld ra,56(sp) - c00170c0: 7442 ld s0,48(sp) - c00170c2: 74a2 ld s1,40(sp) - c00170c4: 7902 ld s2,32(sp) - c00170c6: 69e2 ld s3,24(sp) - c00170c8: 6a42 ld s4,16(sp) - c00170ca: 6121 addi sp,sp,64 - c00170cc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20560 + c001728c: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20577 +} + c001728e: 70e2 ld ra,56(sp) + c0017290: 7442 ld s0,48(sp) + c0017292: 74a2 ld s1,40(sp) + c0017294: 7902 ld s2,32(sp) + c0017296: 69e2 ld s3,24(sp) + c0017298: 6a42 ld s4,16(sp) + c001729a: 6121 addi sp,sp,64 + c001729c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20568 memcpy(new_buf, buf, size); - c00170ce: 85d2 mv a1,s4 - c00170d0: 10b3f0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20566 + c001729e: 85d2 mv a1,s4 + c00172a0: 10b3f0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20574 *pbuf = new_buf; - c00170d4: 0089b023 sd s0,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20567 + c00172a4: 0089b023 sd s0,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20575 *psize = new_size; - c00170d8: 00993023 sd s1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20568 + c00172a8: 00993023 sd s1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20576 return 0; - c00170dc: 4501 li a0,0 - c00170de: b7c5 j c00170be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20562 + c00172ac: 4501 li a0,0 + c00172ae: b7c5 j c001728e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20570 new_buf = js_realloc(ctx, buf, new_size); - c00170e0: 8626 mv a2,s1 - c00170e2: 85d2 mv a1,s4 - c00170e4: 846ff0ef jal ra,c001612a - c00170e8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20563 + c00172b0: 8626 mv a2,s1 + c00172b2: 85d2 mv a1,s4 + c00172b4: 846ff0ef jal ra,c00162fa + c00172b8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20571 if (!new_buf) - c00170ea: f56d bnez a0,c00170d4 - c00170ec: bfc1 j c00170bc + c00172ba: f56d bnez a0,c00172a4 + c00172bc: bfc1 j c001728c -00000000c00170ee : +00000000c00172be : delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8181 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8189 { - c00170ee: 7119 addi sp,sp,-128 - c00170f0: ecce sd s3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8232 + c00172be: 7119 addi sp,sp,-128 + c00172c0: ecce sd s3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8240 h = pr->hash_next; - c00170f2: 040009b7 lui s3,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8181 + c00172c2: 040009b7 lui s3,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8189 { - c00170f6: f8a2 sd s0,112(sp) - c00170f8: f4a6 sd s1,104(sp) - c00170fa: e8d2 sd s4,80(sp) - c00170fc: e4d6 sd s5,72(sp) - c00170fe: fc5e sd s7,56(sp) - c0017100: fc86 sd ra,120(sp) - c0017102: f0ca sd s2,96(sp) - c0017104: e0da sd s6,64(sp) - c0017106: f862 sd s8,48(sp) - c0017108: f466 sd s9,40(sp) - c001710a: 84aa mv s1,a0 - c001710c: 842e mv s0,a1 - c001710e: 8bb2 mv s7,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8191 + c00172c6: f8a2 sd s0,112(sp) + c00172c8: f4a6 sd s1,104(sp) + c00172ca: e8d2 sd s4,80(sp) + c00172cc: e4d6 sd s5,72(sp) + c00172ce: fc5e sd s7,56(sp) + c00172d0: fc86 sd ra,120(sp) + c00172d2: f0ca sd s2,96(sp) + c00172d4: e0da sd s6,64(sp) + c00172d6: f862 sd s8,48(sp) + c00172d8: f466 sd s9,40(sp) + c00172da: 84aa mv s1,a0 + c00172dc: 842e mv s0,a1 + c00172de: 8bb2 mv s7,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8199 h = prop_hash_end(sh)[-h1 - 1]; - c0017110: 5a71 li s4,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8232 - h = pr->hash_next; - c0017112: 19fd addi s3,s3,-1 + c00172e0: 5a71 li s4,-4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8240 + h = pr->hash_next; + c00172e2: 19fd addi s3,s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8248 if (p->class_id == JS_CLASS_ARRAY || - c0017114: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8189 + c00172e4: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8197 sh = p->shape; - c0017116: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8193 + c00172e6: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8201 lpr = NULL; - c0017118: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8190 + c00172e8: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8198 h1 = atom & sh->prop_hash_mask; - c001711a: 0207a903 lw s2,32(a5) - c001711e: 012bf933 and s2,s7,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8191 + c00172ea: 0207a903 lw s2,32(a5) + c00172ee: 012bf933 and s2,s7,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8199 h = prop_hash_end(sh)[-h1 - 1]; - c0017122: 1902 slli s2,s2,0x20 - c0017124: 02095913 srli s2,s2,0x20 - c0017128: 0905 addi s2,s2,1 - c001712a: 03490933 mul s2,s2,s4 - c001712e: 01278733 add a4,a5,s2 - c0017132: 00076b03 lwu s6,0(a4) + c00172f2: 1902 slli s2,s2,0x20 + c00172f4: 02095913 srli s2,s2,0x20 + c00172f8: 0905 addi s2,s2,1 + c00172fa: 03490933 mul s2,s2,s4 + c00172fe: 01278733 add a4,a5,s2 + c0017302: 00076b03 lwu s6,0(a4) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0017136: 04078793 addi a5,a5,64 + c0017306: 04078793 addi a5,a5,64 delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8203 while (h != 0) { - c001713a: 040b1e63 bnez s6,c0017196 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8235 + c001730a: 040b1e63 bnez s6,c0017366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8243 if (p->is_exotic) { - c001713e: 00544783 lbu a5,5(s0) - c0017142: 0047f713 andi a4,a5,4 - c0017146: 10070663 beqz a4,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8236 + c001730e: 00544783 lbu a5,5(s0) + c0017312: 0047f713 andi a4,a5,4 + c0017316: 10070663 beqz a4,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8244 if (p->fast_array) { - c001714a: 8ba1 andi a5,a5,8 - c001714c: 2e078a63 beqz a5,c0017440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8238 + c001731a: 8ba1 andi a5,a5,8 + c001731c: 2e078a63 beqz a5,c0017610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8246 if (JS_AtomIsArrayIndex(ctx, &idx, atom) && - c0017150: 865e mv a2,s7 - c0017152: 080c addi a1,sp,16 - c0017154: 8526 mv a0,s1 - c0017156: c7bed0ef jal ra,c0004dd0 - c001715a: 0e050c63 beqz a0,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8239 (discriminator 1) + c0017320: 865e mv a2,s7 + c0017322: 080c addi a1,sp,16 + c0017324: 8526 mv a0,s1 + c0017326: aabed0ef jal ra,c0004dd0 + c001732a: 0e050c63 beqz a0,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8247 (discriminator 1) idx < p->u.array.count) { - c001715e: 4038 lw a4,64(s0) - c0017160: 47c2 lw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8238 (discriminator 1) + c001732e: 4038 lw a4,64(s0) + c0017330: 47c2 lw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8246 (discriminator 1) if (JS_AtomIsArrayIndex(ctx, &idx, atom) && - c0017162: 0ee7f863 bgeu a5,a4,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8240 + c0017332: 0ee7f863 bgeu a5,a4,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8248 if (p->class_id == JS_CLASS_ARRAY || - c0017166: 00645683 lhu a3,6(s0) - c001716a: 01568563 beq a3,s5,c0017174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8240 (discriminator 1) - c001716e: 4621 li a2,8 - c0017170: 30c69063 bne a3,a2,c0017470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8243 + c0017336: 00645683 lhu a3,6(s0) + c001733a: 01568563 beq a3,s5,c0017344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8248 (discriminator 1) + c001733e: 4621 li a2,8 + c0017340: 30c69063 bne a3,a2,c0017640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8251 if (idx == p->u.array.count - 1) { - c0017174: 377d addiw a4,a4,-1 - c0017176: 2af71d63 bne a4,a5,c0017430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8244 + c0017344: 377d addiw a4,a4,-1 + c0017346: 2af71d63 bne a4,a5,c0017600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8252 JS_FreeValue(ctx, p->u.array.u.values[idx]); - c001717a: 7c18 ld a4,56(s0) - c001717c: 02079693 slli a3,a5,0x20 - c0017180: 01c6d793 srli a5,a3,0x1c - c0017184: 97ba add a5,a5,a4 - c0017186: 638c ld a1,0(a5) - c0017188: 6790 ld a2,8(a5) - c001718a: 8526 mv a0,s1 - c001718c: 9adf00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8245 + c001734a: 7c18 ld a4,56(s0) + c001734c: 02079693 slli a3,a5,0x20 + c0017350: 01c6d793 srli a5,a3,0x1c + c0017354: 97ba add a5,a5,a4 + c0017356: 638c ld a1,0(a5) + c0017358: 6790 ld a2,8(a5) + c001735a: 8526 mv a0,s1 + c001735c: 8cbf00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8253 p->u.array.count = idx; - c0017190: 47c2 lw a5,16(sp) - c0017192: c03c sw a5,64(s0) - c0017194: a87d j c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8196 + c0017360: 47c2 lw a5,16(sp) + c0017362: c03c sw a5,64(s0) + c0017364: a87d j c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8204 pr = &prop[h - 1]; - c0017196: 003b1713 slli a4,s6,0x3 - c001719a: 1761 addi a4,a4,-8 - c001719c: 973e add a4,a4,a5 - c001719e: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8197 + c0017366: 003b1713 slli a4,s6,0x3 + c001736a: 1761 addi a4,a4,-8 + c001736c: 973e add a4,a4,a5 + c001736e: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8205 if (likely(pr->atom == atom)) { - c00171a0: 4354 lw a3,4(a4) - c00171a2: 430c lw a1,0(a4) - c00171a4: 27769e63 bne a3,s7,c0017420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8199 + c0017370: 4354 lw a3,4(a4) + c0017372: 430c lw a1,0(a4) + c0017374: 27769e63 bne a3,s7,c00175f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8207 if (!(pr->flags & JS_PROP_CONFIGURABLE)) - c00171a8: 01a5d59b srliw a1,a1,0x1a - c00171ac: 8985 andi a1,a1,1 - c00171ae: 2c058163 beqz a1,c0017470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8194 - lpr_idx = 0; /* prevent warning */ - c00171b2: 4981 li s3,0 + c0017378: 01a5d59b srliw a1,a1,0x1a + c001737c: 8985 andi a1,a1,1 + c001737e: 2c058163 beqz a1,c0017640 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8202 + lpr_idx = 0; /* prevent warning */ + c0017382: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8210 if (lpr) - c00171b4: 000c0763 beqz s8,c00171c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8203 + c0017384: 000c0763 beqz s8,c0017392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8211 lpr_idx = lpr - get_shape_prop(sh); - c00171b8: 40fc07b3 sub a5,s8,a5 - c00171bc: 878d srai a5,a5,0x3 - c00171be: 0007899b sext.w s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8204 + c0017388: 40fc07b3 sub a5,s8,a5 + c001738c: 878d srai a5,a5,0x3 + c001738e: 0007899b sext.w s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8212 if (js_shape_prepare_update(ctx, p, &pr)) - c00171c2: 0030 addi a2,sp,8 - c00171c4: 85a2 mv a1,s0 - c00171c6: 8526 mv a0,s1 - c00171c8: c7bfd0ef jal ra,c0014e42 - c00171cc: 26051863 bnez a0,c001743c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8210 + c0017392: 0030 addi a2,sp,8 + c0017394: 85a2 mv a1,s0 + c0017396: 8526 mv a0,s1 + c0017398: c7bfd0ef jal ra,c0015012 + c001739c: 26051863 bnez a0,c001760c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8218 lpr->hash_next = pr->hash_next; - c00171d0: 67a2 ld a5,8(sp) - c00171d2: 04000737 lui a4,0x4000 - c00171d6: fff70693 addi a3,a4,-1 # 3ffffff <__clzdi2-0xbc000001> - c00171da: 4398 lw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8206 + c00173a0: 67a2 ld a5,8(sp) + c00173a2: 04000737 lui a4,0x4000 + c00173a6: fff70693 addi a3,a4,-1 # 3ffffff <__clzdi2-0xbc000001> + c00173aa: 4398 lw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8214 sh = p->shape; - c00171dc: 01843a03 ld s4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8210 + c00173ac: 01843a03 ld s4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8218 lpr->hash_next = pr->hash_next; - c00171e0: 8f75 and a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8208 + c00173b0: 8f75 and a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8216 if (lpr) { - c00171e2: 080c0663 beqz s8,c001726e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8210 + c00173b2: 080c0663 beqz s8,c001743e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8218 lpr->hash_next = pr->hash_next; - c00171e6: 02099613 slli a2,s3,0x20 - c00171ea: 01d65793 srli a5,a2,0x1d - c00171ee: 97d2 add a5,a5,s4 - c00171f0: 8f75 and a4,a4,a3 - c00171f2: 43b4 lw a3,64(a5) - c00171f4: fc000637 lui a2,0xfc000 - c00171f8: 8ef1 and a3,a3,a2 - c00171fa: 8f55 or a4,a4,a3 - c00171fc: c3b8 sw a4,64(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8214 + c00173b6: 02099613 slli a2,s3,0x20 + c00173ba: 01d65793 srli a5,a2,0x1d + c00173be: 97d2 add a5,a5,s4 + c00173c0: 8f75 and a4,a4,a3 + c00173c2: 43b4 lw a3,64(a5) + c00173c4: fc000637 lui a2,0xfc000 + c00173c8: 8ef1 and a3,a3,a2 + c00173ca: 8f55 or a4,a4,a3 + c00173cc: c3b8 sw a4,64(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8222 sh->deleted_prop_count++; - c00171fe: 02ca2783 lw a5,44(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8216 + c00173ce: 02ca2783 lw a5,44(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8224 pr1 = &p->prop[h - 1]; - c0017202: 004b1593 slli a1,s6,0x4 - c0017206: 15c1 addi a1,a1,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8214 + c00173d2: 004b1593 slli a1,s6,0x4 + c00173d6: 15c1 addi a1,a1,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8222 sh->deleted_prop_count++; - c0017208: 2785 addiw a5,a5,1 - c001720a: 02fa2623 sw a5,44(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8217 + c00173d8: 2785 addiw a5,a5,1 + c00173da: 02fa2623 sw a5,44(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8225 free_property(ctx->rt, pr1, pr->flags); - c001720e: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8216 + c00173de: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8224 pr1 = &p->prop[h - 1]; - c0017210: 02043b03 ld s6,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8217 + c00173e0: 02043b03 ld s6,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8225 free_property(ctx->rt, pr1, pr->flags); - c0017214: 6c88 ld a0,24(s1) - c0017216: 4390 lw a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8216 + c00173e4: 6c88 ld a0,24(s1) + c00173e6: 4390 lw a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8224 pr1 = &p->prop[h - 1]; - c0017218: 9b2e add s6,s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8217 + c00173e8: 9b2e add s6,s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8225 free_property(ctx->rt, pr1, pr->flags); - c001721a: 85da mv a1,s6 - c001721c: 01a6561b srliw a2,a2,0x1a - c0017220: f9bf00ef jal ra,c00081ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8218 + c00173ea: 85da mv a1,s6 + c00173ec: 01a6561b srliw a2,a2,0x1a + c00173f0: eb9f00ef jal ra,c00082a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8226 JS_FreeAtom(ctx, pr->atom); - c0017224: 67a2 ld a5,8(sp) - c0017226: 8526 mv a0,s1 - c0017228: 43cc lw a1,4(a5) - c001722a: ae2f00ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8220 + c00173f4: 67a2 ld a5,8(sp) + c00173f6: 8526 mv a0,s1 + c00173f8: 43cc lw a1,4(a5) + c00173fa: a00f00ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8228 pr->flags = 0; - c001722e: 6722 ld a4,8(sp) - c0017230: 431c lw a5,0(a4) - c0017232: 179a slli a5,a5,0x26 - c0017234: 9399 srli a5,a5,0x26 - c0017236: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8221 + c00173fe: 6722 ld a4,8(sp) + c0017400: 431c lw a5,0(a4) + c0017402: 179a slli a5,a5,0x26 + c0017404: 9399 srli a5,a5,0x26 + c0017406: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8229 pr->atom = JS_ATOM_NULL; - c0017238: 67a2 ld a5,8(sp) - c001723a: 0007a223 sw zero,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8222 + c0017408: 67a2 ld a5,8(sp) + c001740a: 0007a223 sw zero,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8230 pr1->u.value = JS_UNDEFINED; - c001723e: 478d li a5,3 - c0017240: 00fb3423 sd a5,8(s6) # ffffffff80000008 <_ebss+0xfffffffebfefeee2> - c0017244: 000b3023 sd zero,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8225 + c001740e: 478d li a5,3 + c0017410: 00fb3423 sd a5,8(s6) # ffffffff80000008 <_ebss+0xfffffffebfefeee2> + c0017414: 000b3023 sd zero,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8233 if (sh->deleted_prop_count >= 8 && - c0017248: 02ca2703 lw a4,44(s4) - c001724c: 479d li a5,7 - c001724e: 02e7c463 blt a5,a4,c0017276 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8246 + c0017418: 02ca2703 lw a4,44(s4) + c001741c: 479d li a5,7 + c001741e: 02e7c463 blt a5,a4,c0017446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8254 return TRUE; - c0017252: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8264 (discriminator 1) -} - c0017254: 70e6 ld ra,120(sp) - c0017256: 7446 ld s0,112(sp) - c0017258: 74a6 ld s1,104(sp) - c001725a: 7906 ld s2,96(sp) - c001725c: 69e6 ld s3,88(sp) - c001725e: 6a46 ld s4,80(sp) - c0017260: 6aa6 ld s5,72(sp) - c0017262: 6b06 ld s6,64(sp) - c0017264: 7be2 ld s7,56(sp) - c0017266: 7c42 ld s8,48(sp) - c0017268: 7ca2 ld s9,40(sp) - c001726a: 6109 addi sp,sp,128 - c001726c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8212 + c0017422: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8272 (discriminator 1) +} + c0017424: 70e6 ld ra,120(sp) + c0017426: 7446 ld s0,112(sp) + c0017428: 74a6 ld s1,104(sp) + c001742a: 7906 ld s2,96(sp) + c001742c: 69e6 ld s3,88(sp) + c001742e: 6a46 ld s4,80(sp) + c0017430: 6aa6 ld s5,72(sp) + c0017432: 6b06 ld s6,64(sp) + c0017434: 7be2 ld s7,56(sp) + c0017436: 7c42 ld s8,48(sp) + c0017438: 7ca2 ld s9,40(sp) + c001743a: 6109 addi sp,sp,128 + c001743c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8220 prop_hash_end(sh)[-h1 - 1] = pr->hash_next; - c001726e: 9952 add s2,s2,s4 - c0017270: 00e92023 sw a4,0(s2) - c0017274: b769 j c00171fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8226 (discriminator 1) + c001743e: 9952 add s2,s2,s4 + c0017440: 00e92023 sw a4,0(s2) + c0017444: b769 j c00173ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8234 (discriminator 1) sh->deleted_prop_count >= ((unsigned)sh->prop_count / 2)) { - c0017276: 028a2783 lw a5,40(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8225 (discriminator 1) + c0017446: 028a2783 lw a5,40(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8233 (discriminator 1) if (sh->deleted_prop_count >= 8 && - c001727a: 0017d79b srliw a5,a5,0x1 - c001727e: fcf76ae3 bltu a4,a5,c0017252 + c001744a: 0017d79b srliw a5,a5,0x1 + c001744e: fcf76ae3 bltu a4,a5,c0017422 compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4600 sh = p->shape; - c0017282: 01843b83 ld s7,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4593 + c0017452: 01843b83 ld s7,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4601 assert(!sh->is_hashed); - c0017286: 018bc783 lbu a5,24(s7) - c001728a: cb99 beqz a5,c00172a0 - c001728c: 6585 lui a1,0x1 - c001728e: 4601 li a2,0 - c0017290: 1f158593 addi a1,a1,497 # 11f1 <__clzdi2-0xbfffee0f> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4597 + c0017456: 018bc783 lbu a5,24(s7) + c001745a: cb99 beqz a5,c0017470 + c001745c: 6585 lui a1,0x1 + c001745e: 4601 li a2,0 + c0017460: 1f958593 addi a1,a1,505 # 11f9 <__clzdi2-0xbfffee07> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4605 assert(new_size <= sh->prop_size); - c0017294: 00045517 auipc a0,0x45 - c0017298: 7e450513 addi a0,a0,2020 # c005ca78 - c001729c: 77c3c0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4595 + c0017464: 00045517 auipc a0,0x45 + c0017468: 7e450513 addi a0,a0,2020 # c005cc48 + c001746c: 77c3c0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4603 new_size = max_int(JS_PROP_INITIAL_SIZE, - c00172a0: 028bac03 lw s8,40(s7) - c00172a4: 02cba783 lw a5,44(s7) - c00172a8: 40fc073b subw a4,s8,a5 - c00172ac: 4789 li a5,2 - c00172ae: 8c3a mv s8,a4 - c00172b0: 00f75363 bge a4,a5,c00172b6 - c00172b4: 4c09 li s8,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4597 + c0017470: 028bac03 lw s8,40(s7) + c0017474: 02cba783 lw a5,44(s7) + c0017478: 40fc073b subw a4,s8,a5 + c001747c: 4789 li a5,2 + c001747e: 8c3a mv s8,a4 + c0017480: 00f75363 bge a4,a5,c0017486 + c0017484: 4c09 li s8,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4605 assert(new_size <= sh->prop_size); - c00172b6: 024ba783 lw a5,36(s7) - c00172ba: 0187f763 bgeu a5,s8,c00172c8 - c00172be: 6585 lui a1,0x1 - c00172c0: 4601 li a2,0 - c00172c2: 1f558593 addi a1,a1,501 # 11f5 <__clzdi2-0xbfffee0b> - c00172c6: b7f9 j c0017294 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4599 + c0017486: 024ba783 lw a5,36(s7) + c001748a: 0187f763 bgeu a5,s8,c0017498 + c001748e: 6585 lui a1,0x1 + c0017490: 4601 li a2,0 + c0017492: 1fd58593 addi a1,a1,509 # 11fd <__clzdi2-0xbfffee03> + c0017496: b7f9 j c0017464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4607 new_hash_size = sh->prop_hash_mask + 1; - c00172c8: 020ba783 lw a5,32(s7) - c00172cc: 2785 addiw a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4600 + c0017498: 020ba783 lw a5,32(s7) + c001749c: 2785 addiw a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4608 while ((new_hash_size / 2) >= new_size) - c00172ce: 00078b1b sext.w s6,a5 - c00172d2: 0017d79b srliw a5,a5,0x1 - c00172d6: ff87fce3 bgeu a5,s8,c00172ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4606 + c001749e: 00078b1b sext.w s6,a5 + c00174a2: 0017d79b srliw a5,a5,0x1 + c00174a6: ff87fce3 bgeu a5,s8,c001749e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00172da: 020c1993 slli s3,s8,0x20 - c00172de: 0209d993 srli s3,s3,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4602 + c00174aa: 020c1993 slli s3,s8,0x20 + c00174ae: 0209d993 srli s3,s3,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4610 new_hash_mask = new_hash_size - 1; - c00172e2: fffb0a9b addiw s5,s6,-1 + c00174b2: fffb0a9b addiw s5,s6,-1 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c00172e6: 00199593 slli a1,s3,0x1 + c00174b6: 00199593 slli a1,s3,0x1 compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00172ea: 1b02 slli s6,s6,0x20 - c00172ec: 020b5b13 srli s6,s6,0x20 + c00174ba: 1b02 slli s6,s6,0x20 + c00174bc: 020b5b13 srli s6,s6,0x20 get_shape_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4302 return hash_size * sizeof(uint32_t) + sizeof(JSShape) + - c00172f0: 05c1 addi a1,a1,16 - c00172f2: 95da add a1,a1,s6 + c00174c0: 05c1 addi a1,a1,16 + c00174c2: 95da add a1,a1,s6 compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00172f4: 058a slli a1,a1,0x2 - c00172f6: 8526 mv a0,s1 - c00172f8: 955fd0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4602 + c00174c4: 058a slli a1,a1,0x2 + c00174c6: 8526 mv a0,s1 + c00174c8: 873fd0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4610 new_hash_mask = new_hash_size - 1; - c00172fc: 8a56 mv s4,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4606 + c00174cc: 8a56 mv s4,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 sh_alloc = js_malloc(ctx, get_shape_size(new_hash_size, new_size)); - c00172fe: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4607 + c00174ce: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4615 if (!sh_alloc) - c0017300: d929 beqz a0,c0017252 + c00174d0: d929 beqz a0,c0017422 get_shape_from_alloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4308 return (JSShape *)(void *)((uint32_t *)sh_alloc + hash_size); - c0017302: 0b0a slli s6,s6,0x2 - c0017304: 01650933 add s2,a0,s6 + c00174d2: 0b0a slli s6,s6,0x2 + c00174d4: 01650933 add s2,a0,s6 compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4618 list_del(&old_sh->header.link); - c0017308: 008b8513 addi a0,s7,8 - c001730c: d4fec0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4611 + c00174d8: 008b8513 addi a0,s7,8 + c00174dc: b7fec0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4619 memcpy(sh, old_sh, sizeof(JSShape)); - c0017310: 04000613 li a2,64 - c0017314: 85de mv a1,s7 - c0017316: 854a mv a0,s2 - c0017318: 6c23f0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4612 + c00174e0: 04000613 li a2,64 + c00174e4: 85de mv a1,s7 + c00174e6: 854a mv a0,s2 + c00174e8: 6c23f0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4620 list_add_tail(&sh->header.link, &ctx->rt->gc_obj_list); - c001731c: 6c9c ld a5,24(s1) - c001731e: 00890713 addi a4,s2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 + c00174ec: 6c9c ld a5,24(s1) + c00174ee: 00890713 addi a4,s2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4622 memset(prop_hash_end(sh) - new_hash_size, 0, - c0017322: 865a mv a2,s6 + c00174f2: 865a mv a2,s6 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0017324: 67d4 ld a3,136(a5) + c00174f4: 67d4 ld a3,136(a5) compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 - c0017326: 4581 li a1,0 - c0017328: 8566 mv a0,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4622 + c00174f6: 4581 li a1,0 + c00174f8: 8566 mv a0,s9 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c001732a: e698 sd a4,8(a3) + c00174fa: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c001732c: 00d93423 sd a3,8(s2) + c00174fc: 00d93423 sd a3,8(s2) compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4620 list_add_tail(&sh->header.link, &ctx->rt->gc_obj_list); - c0017330: 08878693 addi a3,a5,136 + c0017500: 08878693 addi a3,a5,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0017334: 00d93823 sd a3,16(s2) + c0017504: 00d93823 sd a3,16(s2) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0017338: e7d8 sd a4,136(a5) + c0017508: e7d8 sd a4,136(a5) compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4622 memset(prop_hash_end(sh) - new_hash_size, 0, - c001733a: 5363f0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4620 + c001750a: 5363f0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4628 prop = p->prop; - c001733e: 02043883 ld a7,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4624 + c001750e: 02043883 ld a7,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4632 pr->flags = old_pr->flags; - c0017342: 04000837 lui a6,0x4000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4618 + c0017512: 04000837 lui a6,0x4000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4626 old_pr = old_sh->prop; - c0017346: 040b8593 addi a1,s7,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4619 + c0017516: 040b8593 addi a1,s7,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4627 pr = sh->prop; - c001734a: 04090613 addi a2,s2,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4617 + c001751a: 04090613 addi a2,s2,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4625 j = 0; - c001734e: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4621 + c001751e: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4629 for(i = 0; i < sh->prop_count; i++) { - c0017350: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4624 + c0017520: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4632 pr->flags = old_pr->flags; - c0017352: 187d addi a6,a6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4626 + c0017522: 187d addi a6,a6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4634 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c0017354: 5371 li t1,-4 - c0017356: fc000e37 lui t3,0xfc000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4621 + c0017524: 5371 li t1,-4 + c0017526: fc000e37 lui t3,0xfc000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4629 for(i = 0; i < sh->prop_count; i++) { - c001735a: 02892783 lw a5,40(s2) - c001735e: 00f56c63 bltu a0,a5,c0017376 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4634 + c001752a: 02892783 lw a5,40(s2) + c001752e: 00f56c63 bltu a0,a5,c0017546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4642 assert(j == (sh->prop_count - sh->deleted_prop_count)); - c0017362: 02c92703 lw a4,44(s2) - c0017366: 9f99 subw a5,a5,a4 - c0017368: 06d78f63 beq a5,a3,c00173e6 - c001736c: 6585 lui a1,0x1 - c001736e: 4601 li a2,0 - c0017370: 21a58593 addi a1,a1,538 # 121a <__clzdi2-0xbfffede6> - c0017374: b705 j c0017294 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4622 + c0017532: 02c92703 lw a4,44(s2) + c0017536: 9f99 subw a5,a5,a4 + c0017538: 06d78f63 beq a5,a3,c00175b6 + c001753c: 6585 lui a1,0x1 + c001753e: 4601 li a2,0 + c0017540: 22258593 addi a1,a1,546 # 1222 <__clzdi2-0xbfffedde> + c0017544: b705 j c0017464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4630 if (old_pr->atom != JS_ATOM_NULL) { - c0017376: 41dc lw a5,4(a1) - c0017378: c7a5 beqz a5,c00173e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4623 + c0017546: 41dc lw a5,4(a1) + c0017548: c7a5 beqz a5,c00175b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4631 pr->atom = old_pr->atom; - c001737a: c25c sw a5,4(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4624 + c001754a: c25c sw a5,4(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4632 pr->flags = old_pr->flags; - c001737c: 4198 lw a4,0(a1) - c001737e: 01a7571b srliw a4,a4,0x1a - c0017382: 01a7179b slliw a5,a4,0x1a - c0017386: 4218 lw a4,0(a2) - c0017388: 01077733 and a4,a4,a6 - c001738c: 8f5d or a4,a4,a5 - c001738e: c218 sw a4,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4625 + c001754c: 4198 lw a4,0(a1) + c001754e: 01a7571b srliw a4,a4,0x1a + c0017552: 01a7179b slliw a5,a4,0x1a + c0017556: 4218 lw a4,0(a2) + c0017558: 01077733 and a4,a4,a6 + c001755c: 8f5d or a4,a4,a5 + c001755e: c218 sw a4,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4633 h = ((uintptr_t)old_pr->atom & new_hash_mask); - c0017390: 41dc lw a5,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4626 + c0017560: 41dc lw a5,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4634 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c0017392: 01c77733 and a4,a4,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4625 + c0017562: 01c77733 and a4,a4,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4633 h = ((uintptr_t)old_pr->atom & new_hash_mask); - c0017396: 00faf7b3 and a5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4626 + c0017566: 00faf7b3 and a5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4634 pr->hash_next = prop_hash_end(sh)[-h - 1]; - c001739a: 1782 slli a5,a5,0x20 - c001739c: 9381 srli a5,a5,0x20 - c001739e: 0785 addi a5,a5,1 - c00173a0: 026787b3 mul a5,a5,t1 - c00173a4: 97ca add a5,a5,s2 - c00173a6: 0007ae83 lw t4,0(a5) - c00173aa: 010efeb3 and t4,t4,a6 - c00173ae: 01d76733 or a4,a4,t4 - c00173b2: c218 sw a4,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4627 + c001756a: 1782 slli a5,a5,0x20 + c001756c: 9381 srli a5,a5,0x20 + c001756e: 0785 addi a5,a5,1 + c0017570: 026787b3 mul a5,a5,t1 + c0017574: 97ca add a5,a5,s2 + c0017576: 0007ae83 lw t4,0(a5) + c001757a: 010efeb3 and t4,t4,a6 + c001757e: 01d76733 or a4,a4,t4 + c0017582: c218 sw a4,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4635 prop_hash_end(sh)[-h - 1] = j + 1; - c00173b4: 0016871b addiw a4,a3,1 - c00173b8: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4628 + c0017584: 0016871b addiw a4,a3,1 + c0017588: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4636 prop[j] = prop[i]; - c00173ba: 02051e93 slli t4,a0,0x20 - c00173be: 02069793 slli a5,a3,0x20 - c00173c2: 01c7d693 srli a3,a5,0x1c - c00173c6: 01ced793 srli a5,t4,0x1c - c00173ca: 97c6 add a5,a5,a7 - c00173cc: 0007be83 ld t4,0(a5) - c00173d0: 96c6 add a3,a3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4630 + c001758a: 02051e93 slli t4,a0,0x20 + c001758e: 02069793 slli a5,a3,0x20 + c0017592: 01c7d693 srli a3,a5,0x1c + c0017596: 01ced793 srli a5,t4,0x1c + c001759a: 97c6 add a5,a5,a7 + c001759c: 0007be83 ld t4,0(a5) + c00175a0: 96c6 add a3,a3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4638 pr++; - c00173d2: 0621 addi a2,a2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4628 + c00175a2: 0621 addi a2,a2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4636 prop[j] = prop[i]; - c00173d4: 01d6b023 sd t4,0(a3) - c00173d8: 679c ld a5,8(a5) - c00173da: e69c sd a5,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4629 + c00175a4: 01d6b023 sd t4,0(a3) + c00175a8: 679c ld a5,8(a5) + c00175aa: e69c sd a5,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4637 j++; - c00173dc: 0007069b sext.w a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4632 + c00175ac: 0007069b sext.w a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4640 old_pr++; - c00173e0: 05a1 addi a1,a1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4621 + c00175b0: 05a1 addi a1,a1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4629 for(i = 0; i < sh->prop_count; i++) { - c00173e2: 2505 addiw a0,a0,1 - c00173e4: bf9d j c001735a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4635 + c00175b2: 2505 addiw a0,a0,1 + c00175b4: bf9d j c001752a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4643 sh->prop_hash_mask = new_hash_mask; - c00173e6: 03492023 sw s4,32(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4636 + c00175b6: 03492023 sw s4,32(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4644 sh->prop_size = new_size; - c00173ea: 03892223 sw s8,36(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4637 + c00175ba: 03892223 sw s8,36(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4645 sh->deleted_prop_count = 0; - c00173ee: 02092623 sw zero,44(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4638 + c00175be: 02092623 sw zero,44(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4646 sh->prop_count = j; - c00173f2: 02d92423 sw a3,40(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4640 + c00175c2: 02d92423 sw a3,40(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4648 p->shape = sh; - c00173f6: 01243c23 sd s2,24(s0) + c00175c6: 01243c23 sd s2,24(s0) get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c00173fa: 020be583 lwu a1,32(s7) + c00175ca: 020be583 lwu a1,32(s7) compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4649 js_free(ctx, get_alloc_from_shape(old_sh)); - c00173fe: 8526 mv a0,s1 + c00175ce: 8526 mv a0,s1 get_alloc_from_shape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4318 return prop_hash_end(sh) - ((intptr_t)sh->prop_hash_mask + 1); - c0017400: 058a slli a1,a1,0x2 - c0017402: 40bb85b3 sub a1,s7,a1 + c00175d0: 058a slli a1,a1,0x2 + c00175d2: 40bb85b3 sub a1,s7,a1 compact_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4649 js_free(ctx, get_alloc_from_shape(old_sh)); - c0017406: 15f1 addi a1,a1,-4 - c0017408: a33ef0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4644 + c00175d6: 15f1 addi a1,a1,-4 + c00175d8: 951ef0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4652 new_prop = js_realloc(ctx, p->prop, sizeof(new_prop[0]) * new_size); - c001740c: 700c ld a1,32(s0) - c001740e: 00499613 slli a2,s3,0x4 - c0017412: 8526 mv a0,s1 - c0017414: d17fe0ef jal ra,c001612a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4645 + c00175dc: 700c ld a1,32(s0) + c00175de: 00499613 slli a2,s3,0x4 + c00175e2: 8526 mv a0,s1 + c00175e4: d17fe0ef jal ra,c00162fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4653 if (new_prop) - c0017418: e2050de3 beqz a0,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4646 + c00175e8: e2050de3 beqz a0,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4654 p->prop = new_prop; - c001741c: f008 sd a0,32(s0) - c001741e: bd15 j c0017252 + c00175ec: f008 sd a0,32(s0) + c00175ee: bd15 j c0017422 delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8240 h = pr->hash_next; - c0017420: 00b9f5b3 and a1,s3,a1 - c0017424: 02059b13 slli s6,a1,0x20 - c0017428: 020b5b13 srli s6,s6,0x20 - c001742c: 8c3a mv s8,a4 - c001742e: b331 j c001713a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8248 + c00175f0: 00b9f5b3 and a1,s3,a1 + c00175f4: 02059b13 slli s6,a1,0x20 + c00175f8: 020b5b13 srli s6,s6,0x20 + c00175fc: 8c3a mv s8,a4 + c00175fe: b331 j c001730a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8256 if (convert_fast_array_to_array(ctx, p)) - c0017430: 85a2 mv a1,s0 - c0017432: 8526 mv a0,s1 - c0017434: b9dff0ef jal ra,c0016fd0 - c0017438: cc050fe3 beqz a0,c0017116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8205 + c0017600: 85a2 mv a1,s0 + c0017602: 8526 mv a0,s1 + c0017604: b9dff0ef jal ra,c00171a0 + c0017608: cc050fe3 beqz a0,c00172e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8213 return -1; - c001743c: 557d li a0,-1 - c001743e: bd19 j c0017254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8256 + c001760c: 557d li a0,-1 + c001760e: bd19 j c0017424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8264 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0017440: 00645703 lhu a4,6(s0) - c0017444: 02800693 li a3,40 - c0017448: 6c9c ld a5,24(s1) - c001744a: 02d70733 mul a4,a4,a3 - c001744e: 7bbc ld a5,112(a5) - c0017450: 97ba add a5,a5,a4 - c0017452: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8257 + c0017610: 00645703 lhu a4,6(s0) + c0017614: 02800693 li a3,40 + c0017618: 6c9c ld a5,24(s1) + c001761a: 02d70733 mul a4,a4,a3 + c001761e: 7bbc ld a5,112(a5) + c0017620: 97ba add a5,a5,a4 + c0017622: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8265 if (em && em->delete_property) { - c0017454: de078fe3 beqz a5,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8257 (discriminator 1) - c0017458: 6b9c ld a5,16(a5) - c001745a: de078ce3 beqz a5,c0017252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8258 + c0017624: de078fe3 beqz a5,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8265 (discriminator 1) + c0017628: 6b9c ld a5,16(a5) + c001762a: de078ce3 beqz a5,c0017422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8266 return em->delete_property(ctx, JS_MKPTR(JS_TAG_OBJECT, p), atom); - c001745e: 577d li a4,-1 - c0017460: e822 sd s0,16(sp) - c0017462: ec3a sd a4,24(sp) - c0017464: 86de mv a3,s7 - c0017466: 85a2 mv a1,s0 - c0017468: 567d li a2,-1 - c001746a: 8526 mv a0,s1 - c001746c: 9782 jalr a5 - c001746e: b3dd j c0017254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8200 + c001762e: 577d li a4,-1 + c0017630: e822 sd s0,16(sp) + c0017632: ec3a sd a4,24(sp) + c0017634: 86de mv a3,s7 + c0017636: 85a2 mv a1,s0 + c0017638: 567d li a2,-1 + c001763a: 8526 mv a0,s1 + c001763c: 9782 jalr a5 + c001763e: b3dd j c0017424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8208 return FALSE; - c0017470: 4501 li a0,0 - c0017472: b3cd j c0017254 + c0017640: 4501 li a0,0 + c0017642: b3cd j c0017424 -00000000c0017474 : +00000000c0017644 : js_realloc2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1407 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1411 { - c0017474: 7179 addi sp,sp,-48 - c0017476: f022 sd s0,32(sp) - c0017478: ec26 sd s1,24(sp) - c001747a: e84a sd s2,16(sp) - c001747c: e44e sd s3,8(sp) - c001747e: f406 sd ra,40(sp) - c0017480: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1409 + c0017644: 7179 addi sp,sp,-48 + c0017646: f022 sd s0,32(sp) + c0017648: ec26 sd s1,24(sp) + c001764a: e84a sd s2,16(sp) + c001764c: e44e sd s3,8(sp) + c001764e: f406 sd ra,40(sp) + c0017650: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1413 ret = js_realloc_rt(ctx->rt, ptr, size); - c0017482: 6d08 ld a0,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1407 + c0017652: 6d08 ld a0,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1411 { - c0017484: 84b2 mv s1,a2 - c0017486: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1409 + c0017654: 84b2 mv s1,a2 + c0017656: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1413 ret = js_realloc_rt(ctx->rt, ptr, size); - c0017488: be9ec0ef jal ra,c0004070 - c001748c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1410 + c0017658: a19ec0ef jal ra,c0004070 + c001765c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1414 if (unlikely(!ret && size != 0)) { - c001748e: ed09 bnez a0,c00174a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1410 (discriminator 1) - c0017490: cc81 beqz s1,c00174a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1411 + c001765e: ed09 bnez a0,c0017678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1414 (discriminator 1) + c0017660: cc81 beqz s1,c0017678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1415 JS_ThrowOutOfMemory(ctx); - c0017492: 854a mv a0,s2 - c0017494: f88fd0ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1419 + c0017662: 854a mv a0,s2 + c0017664: ea6fd0ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1423 } - c0017498: 70a2 ld ra,40(sp) - c001749a: 8522 mv a0,s0 - c001749c: 7402 ld s0,32(sp) - c001749e: 64e2 ld s1,24(sp) - c00174a0: 6942 ld s2,16(sp) - c00174a2: 69a2 ld s3,8(sp) - c00174a4: 6145 addi sp,sp,48 - c00174a6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1414 + c0017668: 70a2 ld ra,40(sp) + c001766a: 8522 mv a0,s0 + c001766c: 7402 ld s0,32(sp) + c001766e: 64e2 ld s1,24(sp) + c0017670: 6942 ld s2,16(sp) + c0017672: 69a2 ld s3,8(sp) + c0017674: 6145 addi sp,sp,48 + c0017676: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1418 if (pslack) { - c00174a8: fe0988e3 beqz s3,c0017498 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1415 + c0017678: fe0988e3 beqz s3,c0017668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1419 size_t new_size = js_malloc_usable_size_rt(ctx->rt, ret); - c00174ac: 01893503 ld a0,24(s2) - c00174b0: 85a2 mv a1,s0 - c00174b2: 8afef0ef jal ra,c0006d60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1416 + c001767c: 01893503 ld a0,24(s2) + c0017680: 85a2 mv a1,s0 + c0017682: fccef0ef jal ra,c0006e4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1420 *pslack = (new_size > size) ? new_size - size : 0; - c00174b6: 4781 li a5,0 - c00174b8: 00a4f463 bgeu s1,a0,c00174c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1416 (discriminator 1) - c00174bc: 409507b3 sub a5,a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1416 (discriminator 4) - c00174c0: 00f9b023 sd a5,0(s3) # 4000000 <__clzdi2-0xbc000000> - c00174c4: bfd1 j c0017498 - -00000000c00174c6 : + c0017686: 4781 li a5,0 + c0017688: 00a4f463 bgeu s1,a0,c0017690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1420 (discriminator 1) + c001768c: 409507b3 sub a5,a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1420 (discriminator 4) + c0017690: 00f9b023 sd a5,0(s3) # 4000000 <__clzdi2-0xbc000000> + c0017694: bfd1 j c0017668 + +00000000c0017696 : string_buffer_widen(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3650 { - c00174c6: 7179 addi sp,sp,-48 - c00174c8: f406 sd ra,40(sp) - c00174ca: f022 sd s0,32(sp) - c00174cc: ec26 sd s1,24(sp) - c00174ce: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3647 + c0017696: 7179 addi sp,sp,-48 + c0017698: f406 sd ra,40(sp) + c001769a: f022 sd s0,32(sp) + c001769c: ec26 sd s1,24(sp) + c001769e: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3655 if (s->error_status) - c00174d0: 4d44 lw s1,28(a0) - c00174d2: e0ad bnez s1,c0017534 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3650 + c00176a0: 4d44 lw s1,28(a0) + c00176a2: e0ad bnez s1,c0017704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3658 str = js_realloc2(s->ctx, s->str, sizeof(JSString) + (size << 1), &slack); - c00174d4: 0015961b slliw a2,a1,0x1 - c00174d8: 842a mv s0,a0 - c00174da: 892e mv s2,a1 - c00174dc: 650c ld a1,8(a0) - c00174de: 6108 ld a0,0(a0) - c00174e0: 0034 addi a3,sp,8 - c00174e2: 0641 addi a2,a2,16 - c00174e4: f91ff0ef jal ra,c0017474 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3651 + c00176a4: 0015961b slliw a2,a1,0x1 + c00176a8: 842a mv s0,a0 + c00176aa: 892e mv s2,a1 + c00176ac: 650c ld a1,8(a0) + c00176ae: 6108 ld a0,0(a0) + c00176b0: 0034 addi a3,sp,8 + c00176b2: 0641 addi a2,a2,16 + c00176b4: f91ff0ef jal ra,c0017644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3659 if (!str) - c00174e8: ed01 bnez a0,c0017500 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3652 + c00176b8: ed01 bnez a0,c00176d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3660 return string_buffer_set_error(s); - c00174ea: 8522 mv a0,s0 - c00174ec: 955ef0ef jal ra,c0006e40 - c00174f0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3661 + c00176ba: 8522 mv a0,s0 + c00176bc: 873ef0ef jal ra,c0006f2e + c00176c0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3669 } - c00174f2: 70a2 ld ra,40(sp) - c00174f4: 7402 ld s0,32(sp) - c00174f6: 6942 ld s2,16(sp) - c00174f8: 8526 mv a0,s1 - c00174fa: 64e2 ld s1,24(sp) - c00174fc: 6145 addi sp,sp,48 - c00174fe: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3653 + c00176c2: 70a2 ld ra,40(sp) + c00176c4: 7402 ld s0,32(sp) + c00176c6: 6942 ld s2,16(sp) + c00176c8: 8526 mv a0,s1 + c00176ca: 64e2 ld s1,24(sp) + c00176cc: 6145 addi sp,sp,48 + c00176ce: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3661 size += slack >> 1; - c0017500: 67a2 ld a5,8(sp) - c0017502: 8385 srli a5,a5,0x1 - c0017504: 012785bb addw a1,a5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3654 + c00176d0: 67a2 ld a5,8(sp) + c00176d2: 8385 srli a5,a5,0x1 + c00176d4: 012785bb addw a1,a5,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3662 for(i = s->len; i-- > 0;) { - c0017508: 481c lw a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3654 (discriminator 1) - c001750a: fff7871b addiw a4,a5,-1 - c001750e: 00f04763 bgtz a5,c001751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3657 + c00176d8: 481c lw a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3662 (discriminator 1) + c00176da: fff7871b addiw a4,a5,-1 + c00176de: 00f04763 bgtz a5,c00176ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3665 s->is_wide_char = 1; - c0017512: 4785 li a5,1 - c0017514: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3658 + c00176e2: 4785 li a5,1 + c00176e4: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3666 s->size = size; - c0017516: c84c sw a1,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3659 + c00176e6: c84c sw a1,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3667 s->str = str; - c0017518: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3660 + c00176e8: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3668 return 0; - c001751a: bfe1 j c00174f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3655 + c00176ea: bfe1 j c00176c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3663 str->u.str16[i] = str->u.str8[i]; - c001751c: 00e506b3 add a3,a0,a4 - c0017520: 0106c683 lbu a3,16(a3) - c0017524: 00870793 addi a5,a4,8 - c0017528: 0786 slli a5,a5,0x1 - c001752a: 97aa add a5,a5,a0 - c001752c: 00d79023 sh a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3654 + c00176ec: 00e506b3 add a3,a0,a4 + c00176f0: 0106c683 lbu a3,16(a3) + c00176f4: 00870793 addi a5,a4,8 + c00176f8: 0786 slli a5,a5,0x1 + c00176fa: 97aa add a5,a5,a0 + c00176fc: 00d79023 sh a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3662 for(i = s->len; i-- > 0;) { - c0017530: 87ba mv a5,a4 - c0017532: bfe1 j c001750a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3648 + c0017700: 87ba mv a5,a4 + c0017702: bfe1 j c00176da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3656 return -1; - c0017534: 54fd li s1,-1 - c0017536: bf75 j c00174f2 + c0017704: 54fd li s1,-1 + c0017706: bf75 j c00176c2 -00000000c0017538 : +00000000c0017708 : expand_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8392 { - c0017538: 7179 addi sp,sp,-48 - c001753a: f022 sd s0,32(sp) - c001753c: ec26 sd s1,24(sp) - c001753e: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8389 + c0017708: 7179 addi sp,sp,-48 + c001770a: f022 sd s0,32(sp) + c001770c: ec26 sd s1,24(sp) + c001770e: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8397 new_size = max_int(new_len, p->u.array.u1.size * 3 / 2); - c0017540: 5998 lw a4,48(a1) - c0017542: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8384 + c0017710: 5998 lw a4,48(a1) + c0017712: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8392 { - c0017544: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8389 + c0017714: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8397 new_size = max_int(new_len, p->u.array.u1.size * 3 / 2); - c0017546: 02e787bb mulw a5,a5,a4 - c001754a: 0017d49b srliw s1,a5,0x1 - c001754e: 0017d79b srliw a5,a5,0x1 - c0017552: 00c7d363 bge a5,a2,c0017558 - c0017556: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8390 + c0017716: 02e787bb mulw a5,a5,a4 + c001771a: 0017d49b srliw s1,a5,0x1 + c001771e: 0017d79b srliw a5,a5,0x1 + c0017722: 00c7d363 bge a5,a2,c0017728 + c0017726: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8398 new_array_prop = js_realloc2(ctx, p->u.array.u.values, sizeof(JSValue) * new_size, &slack); - c0017558: 7c0c ld a1,56(s0) - c001755a: 0004861b sext.w a2,s1 - c001755e: 0034 addi a3,sp,8 - c0017560: 0612 slli a2,a2,0x4 - c0017562: f13ff0ef jal ra,c0017474 - c0017566: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8392 + c0017728: 7c0c ld a1,56(s0) + c001772a: 0004861b sext.w a2,s1 + c001772e: 0034 addi a3,sp,8 + c0017730: 0612 slli a2,a2,0x4 + c0017732: f13ff0ef jal ra,c0017644 + c0017736: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8400 return -1; - c0017568: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8391 + c0017738: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8399 if (!new_array_prop) - c001756a: c719 beqz a4,c0017578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8393 + c001773a: c719 beqz a4,c0017748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8401 new_size += slack / sizeof(*new_array_prop); - c001756c: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8394 + c001773c: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8402 p->u.array.u.values = new_array_prop; - c001756e: fc18 sd a4,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8396 + c001773e: fc18 sd a4,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8404 return 0; - c0017570: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8393 + c0017740: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8401 new_size += slack / sizeof(*new_array_prop); - c0017572: 8391 srli a5,a5,0x4 - c0017574: 9fa5 addw a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8395 + c0017742: 8391 srli a5,a5,0x4 + c0017744: 9fa5 addw a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8403 p->u.array.u1.size = new_size; - c0017576: d81c sw a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8397 + c0017746: d81c sw a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8405 } - c0017578: 70a2 ld ra,40(sp) - c001757a: 7402 ld s0,32(sp) - c001757c: 64e2 ld s1,24(sp) - c001757e: 6145 addi sp,sp,48 - c0017580: 8082 ret + c0017748: 70a2 ld ra,40(sp) + c001774a: 7402 ld s0,32(sp) + c001774c: 64e2 ld s1,24(sp) + c001774e: 6145 addi sp,sp,48 + c0017750: 8082 ret -00000000c0017582 : +00000000c0017752 : add_fast_array_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8403 -{ - c0017582: 711d addi sp,sp,-96 - c0017584: e8a2 sd s0,80(sp) - c0017586: e4a6 sd s1,72(sp) - c0017588: fc4e sd s3,56(sp) - c001758a: ec86 sd ra,88(sp) - c001758c: e0ca sd s2,64(sp) - c001758e: f852 sd s4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8411 +{ + c0017752: 711d addi sp,sp,-96 + c0017754: e8a2 sd s0,80(sp) + c0017756: e4a6 sd s1,72(sp) + c0017758: fc4e sd s3,56(sp) + c001775a: ec86 sd ra,88(sp) + c001775c: e0ca sd s2,64(sp) + c001775e: f852 sd s4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8418 if (likely(JS_VALUE_GET_TAG(p->prop[0].u.value) == JS_TAG_INT)) { - c0017590: 0205b803 ld a6,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8407 + c0017760: 0205b803 ld a6,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 new_len = p->u.array.count + 1; - c0017594: 0405a903 lw s2,64(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8403 + c0017764: 0405a903 lw s2,64(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8411 { - c0017598: e032 sd a2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8410 + c0017768: e032 sd a2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8418 if (likely(JS_VALUE_GET_TAG(p->prop[0].u.value) == JS_TAG_INT)) { - c001759a: 00882783 lw a5,8(a6) # 4000008 <__clzdi2-0xbbfffff8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8407 + c001776a: 00882783 lw a5,8(a6) # 4000008 <__clzdi2-0xbbfffff8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 new_len = p->u.array.count + 1; - c001759e: 0019089b addiw a7,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8403 + c001776e: 0019089b addiw a7,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8411 { - c00175a2: e436 sd a3,8(sp) - c00175a4: 84aa mv s1,a0 - c00175a6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8407 + c0017772: e436 sd a3,8(sp) + c0017774: 84aa mv s1,a0 + c0017776: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 new_len = p->u.array.count + 1; - c00175a8: 89c6 mv s3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8410 + c0017778: 89c6 mv s3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8418 if (likely(JS_VALUE_GET_TAG(p->prop[0].u.value) == JS_TAG_INT)) { - c00175aa: e7a1 bnez a5,c00175f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8412 + c001777a: e7a1 bnez a5,c00177c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8420 if (new_len > array_len) { - c00175ac: 00082783 lw a5,0(a6) - c00175b0: 0517f163 bgeu a5,a7,c00175f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8413 + c001777c: 00082783 lw a5,0(a6) + c0017780: 0517f163 bgeu a5,a7,c00177c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8421 if (unlikely(!(get_shape_prop(p->shape)->flags & JS_PROP_WRITABLE))) { - c00175b4: 6d9c ld a5,24(a1) - c00175b6: 43bc lw a5,64(a5) - c00175b8: 01a7d79b srliw a5,a5,0x1a - c00175bc: 8b89 andi a5,a5,2 - c00175be: e39d bnez a5,c00175e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8414 + c0017784: 6d9c ld a5,24(a1) + c0017786: 43bc lw a5,64(a5) + c0017788: 01a7d79b srliw a5,a5,0x1a + c001778c: 8b89 andi a5,a5,2 + c001778e: e39d bnez a5,c00177b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8422 JS_FreeValue(ctx, val); - c00175c0: 85b2 mv a1,a2 - c00175c2: 8636 mv a2,a3 - c00175c4: 8a3a mv s4,a4 - c00175c6: d72f00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8429 -} - c00175ca: 6446 ld s0,80(sp) - c00175cc: 60e6 ld ra,88(sp) - c00175ce: 6906 ld s2,64(sp) - c00175d0: 79e2 ld s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 + c0017790: 85b2 mv a1,a2 + c0017792: 8636 mv a2,a3 + c0017794: 8a3a mv s4,a4 + c0017796: c90f00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8437 +} + c001779a: 6446 ld s0,80(sp) + c001779c: 60e6 ld ra,88(sp) + c001779e: 6906 ld s2,64(sp) + c00177a0: 79e2 ld s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8423 return JS_ThrowTypeErrorReadOnly(ctx, flags, JS_ATOM_length); - c00175d2: 85d2 mv a1,s4 - c00175d4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8429 + c00177a2: 85d2 mv a1,s4 + c00177a4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8437 } - c00175d6: 7a42 ld s4,48(sp) - c00175d8: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 + c00177a6: 7a42 ld s4,48(sp) + c00177a8: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8423 return JS_ThrowTypeErrorReadOnly(ctx, flags, JS_ATOM_length); - c00175da: 03000613 li a2,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8429 + c00177aa: 03000613 li a2,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8437 } - c00175de: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8415 + c00177ae: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8423 return JS_ThrowTypeErrorReadOnly(ctx, flags, JS_ATOM_length); - c00175e0: f29fb06f j c0013508 + c00177b0: e47fb06f j c00135f6 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00175e4: f002 sd zero,32(sp) - c00175e6: d046 sw a7,32(sp) - c00175e8: 7782 ld a5,32(sp) + c00177b4: f002 sd zero,32(sp) + c00177b6: d046 sw a7,32(sp) + c00177b8: 7782 ld a5,32(sp) add_fast_array_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8425 p->prop[0].u.value = JS_NewInt32(ctx, new_len); - c00175ea: 00083423 sd zero,8(a6) - c00175ee: 00f83023 sd a5,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8420 + c00177ba: 00083423 sd zero,8(a6) + c00177be: 00f83023 sd a5,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8428 if (unlikely(new_len > p->u.array.u1.size)) { - c00175f2: 581c lw a5,48(s0) - c00175f4: 0317f663 bgeu a5,a7,c0017620 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8421 + c00177c2: 581c lw a5,48(s0) + c00177c4: 0317f663 bgeu a5,a7,c00177f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8429 if (expand_fast_array(ctx, p, new_len)) { - c00175f8: 8646 mv a2,a7 - c00175fa: 85a2 mv a1,s0 - c00175fc: 8526 mv a0,s1 - c00175fe: f3bff0ef jal ra,c0017538 - c0017602: cd19 beqz a0,c0017620 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8422 + c00177c8: 8646 mv a2,a7 + c00177ca: 85a2 mv a1,s0 + c00177cc: 8526 mv a0,s1 + c00177ce: f3bff0ef jal ra,c0017708 + c00177d2: cd19 beqz a0,c00177f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8430 JS_FreeValue(ctx, val); - c0017604: 6582 ld a1,0(sp) - c0017606: 6622 ld a2,8(sp) - c0017608: 8526 mv a0,s1 - c001760a: d2ef00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8423 + c00177d4: 6582 ld a1,0(sp) + c00177d6: 6622 ld a2,8(sp) + c00177d8: 8526 mv a0,s1 + c00177da: c4cf00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8431 return -1; - c001760e: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8429 -} - c0017610: 60e6 ld ra,88(sp) - c0017612: 6446 ld s0,80(sp) - c0017614: 64a6 ld s1,72(sp) - c0017616: 6906 ld s2,64(sp) - c0017618: 79e2 ld s3,56(sp) - c001761a: 7a42 ld s4,48(sp) - c001761c: 6125 addi sp,sp,96 - c001761e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8426 + c00177de: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8437 +} + c00177e0: 60e6 ld ra,88(sp) + c00177e2: 6446 ld s0,80(sp) + c00177e4: 64a6 ld s1,72(sp) + c00177e6: 6906 ld s2,64(sp) + c00177e8: 79e2 ld s3,56(sp) + c00177ea: 7a42 ld s4,48(sp) + c00177ec: 6125 addi sp,sp,96 + c00177ee: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8434 p->u.array.u.values[new_len - 1] = val; - c0017620: 7c1c ld a5,56(s0) - c0017622: 02091713 slli a4,s2,0x20 - c0017626: 01c75913 srli s2,a4,0x1c - c001762a: 6702 ld a4,0(sp) - c001762c: 97ca add a5,a5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8428 + c00177f0: 7c1c ld a5,56(s0) + c00177f2: 02091713 slli a4,s2,0x20 + c00177f6: 01c75913 srli s2,a4,0x1c + c00177fa: 6702 ld a4,0(sp) + c00177fc: 97ca add a5,a5,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8436 return TRUE; - c001762e: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8426 + c00177fe: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8434 p->u.array.u.values[new_len - 1] = val; - c0017630: e398 sd a4,0(a5) - c0017632: 6722 ld a4,8(sp) - c0017634: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8427 + c0017800: e398 sd a4,0(a5) + c0017802: 6722 ld a4,8(sp) + c0017804: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8435 p->u.array.count = new_len; - c0017636: 05342023 sw s3,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8428 + c0017806: 05342023 sw s3,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8436 return TRUE; - c001763a: bfd9 j c0017610 + c001780a: bfd9 j c00177e0 -00000000c001763c : +00000000c001780c : js_allocate_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8439 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8447 if (len > INT32_MAX) - c001763c: 800007b7 lui a5,0x80000 - c0017640: fff7c793 not a5,a5 - c0017644: 00b7d863 bge a5,a1,c0017654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8440 + c001780c: 800007b7 lui a5,0x80000 + c0017810: fff7c793 not a5,a5 + c0017814: 00b7d863 bge a5,a1,c0017824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8448 return JS_ThrowRangeError(ctx, "invalid array length"); - c0017648: 00047597 auipc a1,0x47 - c001764c: b0058593 addi a1,a1,-1280 # c005e148 - c0017650: b0afd06f j c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8435 -{ - c0017654: 711d addi sp,sp,-96 - c0017656: e8a2 sd s0,80(sp) - c0017658: e4a6 sd s1,72(sp) - c001765a: e0ca sd s2,64(sp) - c001765c: fc4e sd s3,56(sp) - c001765e: ec86 sd ra,88(sp) - c0017660: 89aa mv s3,a0 - c0017662: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8441 + c0017818: 00047597 auipc a1,0x47 + c001781c: b9058593 addi a1,a1,-1136 # c005e3a8 + c0017820: a28fd06f j c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8443 +{ + c0017824: 711d addi sp,sp,-96 + c0017826: e8a2 sd s0,80(sp) + c0017828: e4a6 sd s1,72(sp) + c001782a: e0ca sd s2,64(sp) + c001782c: fc4e sd s3,56(sp) + c001782e: ec86 sd ra,88(sp) + c0017830: 89aa mv s3,a0 + c0017832: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8449 arr = JS_NewArray(ctx); - c0017664: 95bff0ef jal ra,c0016fbe - c0017668: e82a sd a0,16(sp) - c001766a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8442 + c0017834: 95bff0ef jal ra,c001718e + c0017838: e82a sd a0,16(sp) + c001783a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8450 if (JS_IsException(arr)) - c001766c: 0005871b sext.w a4,a1 - c0017670: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8441 + c001783c: 0005871b sext.w a4,a1 + c0017840: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8449 arr = JS_NewArray(ctx); - c0017672: 892a mv s2,a0 - c0017674: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8442 + c0017842: 892a mv s2,a0 + c0017844: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8450 if (JS_IsException(arr)) - c0017676: 00f71463 bne a4,a5,c001767e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8452 + c0017846: 00f71463 bne a4,a5,c001784e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8460 return arr; - c001767a: f04a sd s2,32(sp) - c001767c: a015 j c00176a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8444 + c001784a: f04a sd s2,32(sp) + c001784c: a015 j c0017870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8452 if (len > 0) { - c001767e: fe905ee3 blez s1,c001767a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8446 + c001784e: fe905ee3 blez s1,c001784a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8454 if (expand_fast_array(ctx, p, len) < 0) { - c0017682: 2481 sext.w s1,s1 - c0017684: 85aa mv a1,a0 - c0017686: 8626 mv a2,s1 - c0017688: 854e mv a0,s3 - c001768a: eafff0ef jal ra,c0017538 - c001768e: 02055263 bgez a0,c00176b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8447 + c0017852: 2481 sext.w s1,s1 + c0017854: 85aa mv a1,a0 + c0017856: 8626 mv a2,s1 + c0017858: 854e mv a0,s3 + c001785a: eafff0ef jal ra,c0017708 + c001785e: 02055263 bgez a0,c0017882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8455 JS_FreeValue(ctx, arr); - c0017692: 65c2 ld a1,16(sp) - c0017694: 6662 ld a2,24(sp) - c0017696: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8448 + c0017862: 65c2 ld a1,16(sp) + c0017864: 6662 ld a2,24(sp) + c0017866: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8456 return JS_EXCEPTION; - c0017698: 4419 li s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8447 + c0017868: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8455 JS_FreeValue(ctx, arr); - c001769a: c9ef00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8448 + c001786a: bbcf00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8456 return JS_EXCEPTION; - c001769e: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8453 -} - c00176a0: 60e6 ld ra,88(sp) - c00176a2: 85a2 mv a1,s0 - c00176a4: 6446 ld s0,80(sp) - c00176a6: 7502 ld a0,32(sp) - c00176a8: 64a6 ld s1,72(sp) - c00176aa: 6906 ld s2,64(sp) - c00176ac: 79e2 ld s3,56(sp) - c00176ae: 6125 addi sp,sp,96 - c00176b0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8450 + c001786e: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8461 +} + c0017870: 60e6 ld ra,88(sp) + c0017872: 85a2 mv a1,s0 + c0017874: 6446 ld s0,80(sp) + c0017876: 7502 ld a0,32(sp) + c0017878: 64a6 ld s1,72(sp) + c001787a: 6906 ld s2,64(sp) + c001787c: 79e2 ld s3,56(sp) + c001787e: 6125 addi sp,sp,96 + c0017880: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8458 p->u.array.count = len; - c00176b2: 04992023 sw s1,64(s2) - c00176b6: b7d1 j c001767a + c0017882: 04992023 sw s1,64(s2) + c0017886: b7d1 j c001784a -00000000c00176b8 : +00000000c0017888 : js_realloc_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1445 -{ - c00176b8: 7139 addi sp,sp,-64 - c00176ba: f822 sd s0,48(sp) - c00176bc: f426 sd s1,40(sp) - c00176be: f04a sd s2,32(sp) - c00176c0: ec4e sd s3,24(sp) - c00176c2: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1449 +{ + c0017888: 7139 addi sp,sp,-64 + c001788a: f822 sd s0,48(sp) + c001788c: f426 sd s1,40(sp) + c001788e: f04a sd s2,32(sp) + c0017890: ec4e sd s3,24(sp) + c0017892: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1454 new_size = max_int(req_size, *psize * 3 / 2); - c00176c4: 429c lw a5,0(a3) - c00176c6: 440d li s0,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1445 + c0017894: 429c lw a5,0(a3) + c0017896: 440d li s0,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1449 { - c00176c8: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1450 + c0017898: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1454 new_size = max_int(req_size, *psize * 3 / 2); - c00176ca: 02f4043b mulw s0,s0,a5 - c00176ce: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1445 + c001789a: 02f4043b mulw s0,s0,a5 + c001789e: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1449 { - c00176d0: 89b2 mv s3,a2 - c00176d2: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1450 + c00178a0: 89b2 mv s3,a2 + c00178a2: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1454 new_size = max_int(req_size, *psize * 3 / 2); - c00176d4: 02f447bb divw a5,s0,a5 - c00176d8: 843a mv s0,a4 - c00176da: 00e7c363 blt a5,a4,c00176e0 - c00176de: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1451 + c00178a4: 02f447bb divw a5,s0,a5 + c00178a8: 843a mv s0,a4 + c00178aa: 00e7c363 blt a5,a4,c00178b0 + c00178ae: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1455 new_array = js_realloc2(ctx, *parray, new_size * elem_size, &slack); - c00176e0: 0334063b mulw a2,s0,s3 - c00176e4: 608c ld a1,0(s1) - c00176e6: 0034 addi a3,sp,8 - c00176e8: d8dff0ef jal ra,c0017474 - c00176ec: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1453 + c00178b0: 0334063b mulw a2,s0,s3 + c00178b4: 608c ld a1,0(s1) + c00178b6: 0034 addi a3,sp,8 + c00178b8: d8dff0ef jal ra,c0017644 + c00178bc: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1457 return -1; - c00176ee: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1452 + c00178be: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1456 if (!new_array) - c00176f0: cb09 beqz a4,c0017702 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1454 + c00178c0: cb09 beqz a4,c00178d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1458 new_size += slack / elem_size; - c00176f2: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1457 + c00178c2: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1461 return 0; - c00176f4: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1454 + c00178c4: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1458 new_size += slack / elem_size; - c00176f6: 0337d633 divu a2,a5,s3 - c00176fa: 9c31 addw s0,s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1455 + c00178c6: 0337d633 divu a2,a5,s3 + c00178ca: 9c31 addw s0,s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1459 *psize = new_size; - c00176fc: 00892023 sw s0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1456 + c00178cc: 00892023 sw s0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1460 *parray = new_array; - c0017700: e098 sd a4,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1458 -} - c0017702: 70e2 ld ra,56(sp) - c0017704: 7442 ld s0,48(sp) - c0017706: 74a2 ld s1,40(sp) - c0017708: 7902 ld s2,32(sp) - c001770a: 69e2 ld s3,24(sp) - c001770c: 6121 addi sp,sp,64 - c001770e: 8082 ret - -00000000c0017710 : + c00178d0: e098 sd a4,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1462 +} + c00178d2: 70e2 ld ra,56(sp) + c00178d4: 7442 ld s0,48(sp) + c00178d6: 74a2 ld s1,40(sp) + c00178d8: 7902 ld s2,32(sp) + c00178da: 69e2 ld s3,24(sp) + c00178dc: 6121 addi sp,sp,64 + c00178de: 8082 ret + +00000000c00178e0 : js_resize_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1468 if (unlikely(req_size > *psize)) - c0017710: 429c lw a5,0(a3) - c0017712: 00e7d463 bge a5,a4,c001771a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1465 + c00178e0: 429c lw a5,0(a3) + c00178e2: 00e7d463 bge a5,a4,c00178ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1469 return js_realloc_array(ctx, parray, elem_size, psize, req_size); - c0017716: fa3ff06f j c00176b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1468 + c00178e6: fa3ff06f j c0017888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1472 } - c001771a: 4501 li a0,0 - c001771c: 8082 ret + c00178ea: 4501 li a0,0 + c00178ec: 8082 ret -00000000c001771e : +00000000c00178ee : get_exported_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27813 -{ - c001771e: 711d addi sp,sp,-96 - c0017720: e8a2 sd s0,80(sp) - c0017722: e4a6 sd s1,72(sp) - c0017724: f852 sd s4,48(sp) - c0017726: f05a sd s6,32(sp) - c0017728: ec86 sd ra,88(sp) - c001772a: e0ca sd s2,64(sp) - c001772c: fc4e sd s3,56(sp) - c001772e: f456 sd s5,40(sp) - c0017730: ec5e sd s7,24(sp) - c0017732: e862 sd s8,16(sp) - c0017734: e466 sd s9,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27821 +{ + c00178ee: 711d addi sp,sp,-96 + c00178f0: e8a2 sd s0,80(sp) + c00178f2: e4a6 sd s1,72(sp) + c00178f4: f852 sd s4,48(sp) + c00178f6: f05a sd s6,32(sp) + c00178f8: ec86 sd ra,88(sp) + c00178fa: e0ca sd s2,64(sp) + c00178fc: fc4e sd s3,56(sp) + c00178fe: f456 sd s5,40(sp) + c0017900: ec5e sd s7,24(sp) + c0017902: e862 sd s8,16(sp) + c0017904: e466 sd s9,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27826 for(i = 0; i < s->modules_count; i++) { - c0017736: 45d8 lw a4,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27813 -{ - c0017738: 8a2a mv s4,a0 - c001773a: 842e mv s0,a1 - c001773c: 84b2 mv s1,a2 - c001773e: 8b36 mv s6,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27818 + c0017906: 45d8 lw a4,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27821 +{ + c0017908: 8a2a mv s4,a0 + c001790a: 842e mv s0,a1 + c001790c: 84b2 mv s1,a2 + c001790e: 8b36 mv s6,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27826 for(i = 0; i < s->modules_count; i++) { - c0017740: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27818 (discriminator 1) - c0017742: 0007869b sext.w a3,a5 - c0017746: 00e6ce63 blt a3,a4,c0017762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27822 + c0017910: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27826 (discriminator 1) + c0017912: 0007869b sext.w a3,a5 + c0017916: 00e6ce63 blt a3,a4,c0017932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27830 if (js_resize_array(ctx, (void **)&s->modules, sizeof(s->modules[0]), - c001774a: 2705 addiw a4,a4,1 - c001774c: 00840693 addi a3,s0,8 - c0017750: 4621 li a2,8 - c0017752: 85a2 mv a1,s0 - c0017754: 8552 mv a0,s4 - c0017756: fbbff0ef jal ra,c0017710 - c001775a: 892a mv s2,a0 - c001775c: c90d beqz a0,c001778e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27824 + c001791a: 2705 addiw a4,a4,1 + c001791c: 00840693 addi a3,s0,8 + c0017920: 4621 li a2,8 + c0017922: 85a2 mv a1,s0 + c0017924: 8552 mv a0,s4 + c0017926: fbbff0ef jal ra,c00178e0 + c001792a: 892a mv s2,a0 + c001792c: c90d beqz a0,c001795e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27832 return -1; - c001775e: 557d li a0,-1 - c0017760: a811 j c0017774 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27819 + c001792e: 557d li a0,-1 + c0017930: a811 j c0017944 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27827 if (s->modules[i] == m) - c0017762: 6014 ld a3,0(s0) - c0017764: 00379613 slli a2,a5,0x3 - c0017768: 0785 addi a5,a5,1 - c001776a: 96b2 add a3,a3,a2 - c001776c: 6294 ld a3,0(a3) - c001776e: fc969ae3 bne a3,s1,c0017742 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27820 + c0017932: 6014 ld a3,0(s0) + c0017934: 00379613 slli a2,a5,0x3 + c0017938: 0785 addi a5,a5,1 + c001793a: 96b2 add a3,a3,a2 + c001793c: 6294 ld a3,0(a3) + c001793e: fc969ae3 bne a3,s1,c0017912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27828 return 0; - c0017772: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27857 -} - c0017774: 60e6 ld ra,88(sp) - c0017776: 6446 ld s0,80(sp) - c0017778: 64a6 ld s1,72(sp) - c001777a: 6906 ld s2,64(sp) - c001777c: 79e2 ld s3,56(sp) - c001777e: 7a42 ld s4,48(sp) - c0017780: 7aa2 ld s5,40(sp) - c0017782: 7b02 ld s6,32(sp) - c0017784: 6be2 ld s7,24(sp) - c0017786: 6c42 ld s8,16(sp) - c0017788: 6ca2 ld s9,8(sp) - c001778a: 6125 addi sp,sp,96 - c001778c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27825 + c0017942: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27865 +} + c0017944: 60e6 ld ra,88(sp) + c0017946: 6446 ld s0,80(sp) + c0017948: 64a6 ld s1,72(sp) + c001794a: 6906 ld s2,64(sp) + c001794c: 79e2 ld s3,56(sp) + c001794e: 7a42 ld s4,48(sp) + c0017950: 7aa2 ld s5,40(sp) + c0017952: 7b02 ld s6,32(sp) + c0017954: 6be2 ld s7,24(sp) + c0017956: 6c42 ld s8,16(sp) + c0017958: 6ca2 ld s9,8(sp) + c001795a: 6125 addi sp,sp,96 + c001795c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27833 s->modules[s->modules_count++] = m; - c001778e: 445c lw a5,12(s0) - c0017790: 6018 ld a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27827 + c001795e: 445c lw a5,12(s0) + c0017960: 6018 ld a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27835 for(i = 0; i < m->export_entries_count; i++) { - c0017792: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27825 - s->modules[s->modules_count++] = m; - c0017794: 0017869b addiw a3,a5,1 - c0017798: 078e slli a5,a5,0x3 - c001779a: c454 sw a3,12(s0) - c001779c: 97ba add a5,a5,a4 - c001779e: e384 sd s1,0(a5) + c0017962: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27833 + s->modules[s->modules_count++] = m; + c0017964: 0017869b addiw a3,a5,1 + c0017968: 078e slli a5,a5,0x3 + c001796a: c454 sw a3,12(s0) + c001796c: 97ba add a5,a5,a4 + c001796e: e384 sd s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27841 if (js_resize_array(ctx, (void **)&s->exported_names, sizeof(s->exported_names[0]), - c00177a0: 01840b93 addi s7,s0,24 - c00177a4: 01040c13 addi s8,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27829 + c0017970: 01840b93 addi s7,s0,24 + c0017974: 01040c13 addi s8,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27837 if (from_star && me->export_name == JS_ATOM_default) - c00177a8: 4cd9 li s9,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27827 (discriminator 1) + c0017978: 4cd9 li s9,22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27835 (discriminator 1) for(i = 0; i < m->export_entries_count; i++) { - c00177aa: 589c lw a5,48(s1) - c00177ac: 02fac663 blt s5,a5,c00177d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27849 (discriminator 1) + c001797a: 589c lw a5,48(s1) + c001797c: 02fac663 blt s5,a5,c00179a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27857 (discriminator 1) for(i = 0; i < m->star_export_entries_count; i++) { - c00177b0: 40bc lw a5,64(s1) - c00177b2: fcf950e3 bge s2,a5,c0017772 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27852 + c0017980: 40bc lw a5,64(s1) + c0017982: fcf950e3 bge s2,a5,c0017942 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27860 m1 = m->req_module_entries[se->req_module_idx].module; - c00177b6: 7c9c ld a5,56(s1) - c00177b8: 00291713 slli a4,s2,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27853 + c0017986: 7c9c ld a5,56(s1) + c0017988: 00291713 slli a4,s2,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27861 if (get_exported_names(ctx, s, m1, TRUE)) - c00177bc: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27852 + c001798c: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27860 m1 = m->req_module_entries[se->req_module_idx].module; - c00177be: 97ba add a5,a5,a4 - c00177c0: 4398 lw a4,0(a5) - c00177c2: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27853 + c001798e: 97ba add a5,a5,a4 + c0017990: 4398 lw a4,0(a5) + c0017992: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27861 if (get_exported_names(ctx, s, m1, TRUE)) - c00177c4: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27852 + c0017994: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27860 m1 = m->req_module_entries[se->req_module_idx].module; - c00177c6: 0712 slli a4,a4,0x4 - c00177c8: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27853 + c0017996: 0712 slli a4,a4,0x4 + c0017998: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27861 if (get_exported_names(ctx, s, m1, TRUE)) - c00177ca: 6790 ld a2,8(a5) - c00177cc: 8552 mv a0,s4 - c00177ce: f51ff0ef jal ra,c001771e - c00177d2: f551 bnez a0,c001775e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27849 (discriminator 2) + c001799a: 6790 ld a2,8(a5) + c001799c: 8552 mv a0,s4 + c001799e: f51ff0ef jal ra,c00178ee + c00179a2: f551 bnez a0,c001792e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27857 (discriminator 2) for(i = 0; i < m->star_export_entries_count; i++) { - c00177d4: 2905 addiw s2,s2,1 - c00177d6: bfe9 j c00177b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27828 + c00179a4: 2905 addiw s2,s2,1 + c00179a6: bfe9 j c0017980 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27836 JSExportEntry *me = &m->export_entries[i]; - c00177d8: 749c ld a5,40(s1) - c00177da: 005a9993 slli s3,s5,0x5 - c00177de: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27829 + c00179a8: 749c ld a5,40(s1) + c00179aa: 005a9993 slli s3,s5,0x5 + c00179ae: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27837 if (from_star && me->export_name == JS_ATOM_default) - c00177e0: 0189a503 lw a0,24(s3) - c00177e4: 000b0463 beqz s6,c00177ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27829 (discriminator 1) - c00177e8: 05950c63 beq a0,s9,c0017840 + c00179b0: 0189a503 lw a0,24(s3) + c00179b4: 000b0463 beqz s6,c00179bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27837 (discriminator 1) + c00179b8: 05950c63 beq a0,s9,c0017a10 find_exported_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27803 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27811 for(i = 0; i < s->exported_names_count; i++) { - c00177ec: 4c58 lw a4,28(s0) - c00177ee: 4601 li a2,0 - c00177f0: 0006079b sext.w a5,a2 - c00177f4: 02e7cc63 blt a5,a4,c001782c + c00179bc: 4c58 lw a4,28(s0) + c00179be: 4601 li a2,0 + c00179c0: 0006079b sext.w a5,a2 + c00179c4: 02e7cc63 blt a5,a4,c00179fc get_exported_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27841 if (js_resize_array(ctx, (void **)&s->exported_names, sizeof(s->exported_names[0]), - c00177f8: 2705 addiw a4,a4,1 - c00177fa: 86de mv a3,s7 - c00177fc: 4641 li a2,16 - c00177fe: 85e2 mv a1,s8 - c0017800: 8552 mv a0,s4 - c0017802: f0fff0ef jal ra,c0017710 - c0017806: fd21 bnez a0,c001775e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27837 + c00179c8: 2705 addiw a4,a4,1 + c00179ca: 86de mv a3,s7 + c00179cc: 4641 li a2,16 + c00179ce: 85e2 mv a1,s8 + c00179d0: 8552 mv a0,s4 + c00179d2: f0fff0ef jal ra,c00178e0 + c00179d6: fd21 bnez a0,c001792e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27845 en = &s->exported_names[s->exported_names_count++]; - c0017808: 4c58 lw a4,28(s0) - c001780a: 681c ld a5,16(s0) - c001780c: 0017069b addiw a3,a4,1 - c0017810: cc54 sw a3,28(s0) - c0017812: 0712 slli a4,a4,0x4 - c0017814: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27838 + c00179d8: 4c58 lw a4,28(s0) + c00179da: 681c ld a5,16(s0) + c00179dc: 0017069b addiw a3,a4,1 + c00179e0: cc54 sw a3,28(s0) + c00179e2: 0712 slli a4,a4,0x4 + c00179e4: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27846 en->export_name = me->export_name; - c0017816: 0189a703 lw a4,24(s3) - c001781a: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27840 + c00179e6: 0189a703 lw a4,24(s3) + c00179ea: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27848 if (from_star || me->export_type != JS_EXPORT_TYPE_LOCAL) - c001781c: 020b1063 bnez s6,c001783c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27840 (discriminator 1) - c0017820: 0109a703 lw a4,16(s3) - c0017824: ef01 bnez a4,c001783c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27843 + c00179ec: 020b1063 bnez s6,c0017a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27848 (discriminator 1) + c00179f0: 0109a703 lw a4,16(s3) + c00179f4: ef01 bnez a4,c0017a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27851 en->u.me = me; - c0017826: 0137b423 sd s3,8(a5) # ffffffff80000008 <_ebss+0xfffffffebfefeee2> - c001782a: a819 j c0017840 + c00179f6: 0137b423 sd s3,8(a5) # ffffffff80000008 <_ebss+0xfffffffebfefeee2> + c00179fa: a819 j c0017a10 find_exported_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27812 if (s->exported_names[i].export_name == name) - c001782c: 681c ld a5,16(s0) - c001782e: 00461693 slli a3,a2,0x4 - c0017832: 0605 addi a2,a2,1 - c0017834: 97b6 add a5,a5,a3 - c0017836: 4394 lw a3,0(a5) - c0017838: faa69ce3 bne a3,a0,c00177f0 + c00179fc: 681c ld a5,16(s0) + c00179fe: 00461693 slli a3,a2,0x4 + c0017a02: 0605 addi a2,a2,1 + c0017a04: 97b6 add a5,a5,a3 + c0017a06: 4394 lw a3,0(a5) + c0017a08: faa69ce3 bne a3,a0,c00179c0 get_exported_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27841 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27849 en->u.me = NULL; - c001783c: 0007b423 sd zero,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27827 (discriminator 2) + c0017a0c: 0007b423 sd zero,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27835 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c0017840: 2a85 addiw s5,s5,1 - c0017842: b7a5 j c00177aa + c0017a10: 2a85 addiw s5,s5,1 + c0017a12: b7a5 j c001797a -00000000c0017844 : +00000000c0017a14 : js_resolve_export1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27651 -{ - c0017844: 7159 addi sp,sp,-112 - c0017846: eca6 sd s1,88(sp) - c0017848: e8ca sd s2,80(sp) - c001784a: e4ce sd s3,72(sp) - c001784c: e0d2 sd s4,64(sp) - c001784e: fc56 sd s5,56(sp) - c0017850: f85a sd s6,48(sp) - c0017852: f45e sd s7,40(sp) - c0017854: f062 sd s8,32(sp) - c0017856: f486 sd ra,104(sp) - c0017858: f0a2 sd s0,96(sp) - c001785a: ec66 sd s9,24(sp) - c001785c: 8b2a mv s6,a0 - c001785e: 8aae mv s5,a1 - c0017860: 89b2 mv s3,a2 - c0017862: 84b6 mv s1,a3 - c0017864: 8a3a mv s4,a4 - c0017866: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27659 +{ + c0017a14: 7159 addi sp,sp,-112 + c0017a16: eca6 sd s1,88(sp) + c0017a18: e8ca sd s2,80(sp) + c0017a1a: e4ce sd s3,72(sp) + c0017a1c: e0d2 sd s4,64(sp) + c0017a1e: fc56 sd s5,56(sp) + c0017a20: f85a sd s6,48(sp) + c0017a22: f45e sd s7,40(sp) + c0017a24: f062 sd s8,32(sp) + c0017a26: f486 sd ra,104(sp) + c0017a28: f0a2 sd s0,96(sp) + c0017a2a: ec66 sd s9,24(sp) + c0017a2c: 8b2a mv s6,a0 + c0017a2e: 8aae mv s5,a1 + c0017a30: 89b2 mv s3,a2 + c0017a32: 84b6 mv s1,a3 + c0017a34: 8a3a mv s4,a4 + c0017a36: 893e mv s2,a5 add_resolve_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27635 if (js_resize_array(ctx, (void **)&s->array, - c0017868: 00878b93 addi s7,a5,8 + c0017a38: 00878b93 addi s7,a5,8 js_resolve_export1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27671 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27679 if (me->local_name == JS_ATOM__star_) { - c001786c: 07e00c13 li s8,126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27654 + c0017a3c: 07e00c13 li s8,126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27662 *pmodule = NULL; - c0017870: 000ab023 sd zero,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27655 + c0017a40: 000ab023 sd zero,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27663 *pme = NULL; - c0017874: 0009b023 sd zero,0(s3) + c0017a44: 0009b023 sd zero,0(s3) find_resolve_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27622 for(i = 0; i < s->count; i++) { - c0017878: 00c92703 lw a4,12(s2) - c001787c: 4781 li a5,0 - c001787e: 0007869b sext.w a3,a5 - c0017882: 04e6cc63 blt a3,a4,c00178da + c0017a48: 00c92703 lw a4,12(s2) + c0017a4c: 4781 li a5,0 + c0017a4e: 0007869b sext.w a3,a5 + c0017a52: 04e6cc63 blt a3,a4,c0017aaa add_resolve_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27635 if (js_resize_array(ctx, (void **)&s->array, - c0017886: 2705 addiw a4,a4,1 - c0017888: 86de mv a3,s7 - c001788a: 4641 li a2,16 - c001788c: 85ca mv a1,s2 - c001788e: 855a mv a0,s6 - c0017890: e81ff0ef jal ra,c0017710 - c0017894: 842a mv s0,a0 - c0017896: 10051e63 bnez a0,c00179b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27631 + c0017a56: 2705 addiw a4,a4,1 + c0017a58: 86de mv a3,s7 + c0017a5a: 4641 li a2,16 + c0017a5c: 85ca mv a1,s2 + c0017a5e: 855a mv a0,s6 + c0017a60: e81ff0ef jal ra,c00178e0 + c0017a64: 842a mv s0,a0 + c0017a66: 10051e63 bnez a0,c0017b82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27639 re = &s->array[s->count++]; - c001789a: 00c92783 lw a5,12(s2) - c001789e: 00093c83 ld s9,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27633 + c0017a6a: 00c92783 lw a5,12(s2) + c0017a6e: 00093c83 ld s9,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27641 re->name = JS_DupAtom(ctx, name); - c00178a2: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27631 + c0017a72: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27639 re = &s->array[s->count++]; - c00178a4: 0017871b addiw a4,a5,1 - c00178a8: 0792 slli a5,a5,0x4 - c00178aa: 00e92623 sw a4,12(s2) - c00178ae: 9cbe add s9,s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27632 + c0017a74: 0017871b addiw a4,a5,1 + c0017a78: 0792 slli a5,a5,0x4 + c0017a7a: 00e92623 sw a4,12(s2) + c0017a7e: 9cbe add s9,s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27640 re->module = m; - c00178b0: 009cb023 sd s1,0(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27633 + c0017a80: 009cb023 sd s1,0(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27641 re->name = JS_DupAtom(ctx, name); - c00178b4: 855a mv a0,s6 - c00178b6: c15ef0ef jal ra,c00074ca - c00178ba: 00aca423 sw a0,8(s9) + c0017a84: 855a mv a0,s6 + c0017a86: b33ef0ef jal ra,c00075b8 + c0017a8a: 00aca423 sw a0,8(s9) find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27345 for(i = 0; i < m->export_entries_count; i++) { - c00178be: 5894 lw a3,48(s1) - c00178c0: 4701 li a4,0 - c00178c2: 0007079b sext.w a5,a4 - c00178c6: 02d7c763 blt a5,a3,c00178f4 + c0017a8e: 5894 lw a3,48(s1) + c0017a90: 4701 li a4,0 + c0017a92: 0007079b sext.w a5,a4 + c0017a96: 02d7c763 blt a5,a3,c0017ac4 js_resolve_export1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27690 if (export_name != JS_ATOM_default) { - c00178ca: 47d9 li a5,22 - c00178cc: 0efa0563 beq s4,a5,c00179b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27695 + c0017a9a: 47d9 li a5,22 + c0017a9c: 0efa0563 beq s4,a5,c0017b86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27703 if (ret == JS_RESOLVE_RES_AMBIGUOUS || - c00178d0: 4c0d li s8,3 - c00178d2: 5bfd li s7,-1 - c00178d4: a0e9 j c001799e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27677 + c0017aa0: 4c0d li s8,3 + c0017aa2: 5bfd li s7,-1 + c0017aa4: a0e9 j c0017b6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27685 return js_resolve_export1(ctx, pmodule, pme, m1, - c00178d6: 84ba mv s1,a4 - c00178d8: bf61 j c0017870 + c0017aa6: 84ba mv s1,a4 + c0017aa8: bf61 j c0017a40 find_resolve_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27615 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27623 JSResolveEntry *re = &s->array[i]; - c00178da: 00093603 ld a2,0(s2) - c00178de: 00479693 slli a3,a5,0x4 - c00178e2: 96b2 add a3,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27616 + c0017aaa: 00093603 ld a2,0(s2) + c0017aae: 00479693 slli a3,a5,0x4 + c0017ab2: 96b2 add a3,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27624 if (re->module == m && re->name == name) - c00178e4: 6290 ld a2,0(a3) - c00178e6: 00c49563 bne s1,a2,c00178f0 - c00178ea: 4694 lw a3,8(a3) - c00178ec: 0d468163 beq a3,s4,c00179ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27614 + c0017ab4: 6290 ld a2,0(a3) + c0017ab6: 00c49563 bne s1,a2,c0017ac0 + c0017aba: 4694 lw a3,8(a3) + c0017abc: 0d468163 beq a3,s4,c0017b7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27622 for(i = 0; i < s->count; i++) { - c00178f0: 0785 addi a5,a5,1 - c00178f2: b771 j c001787e + c0017ac0: 0785 addi a5,a5,1 + c0017ac2: b771 j c0017a4e find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27346 me = &m->export_entries[i]; - c00178f4: 749c ld a5,40(s1) - c00178f6: 00571613 slli a2,a4,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27339 + c0017ac4: 749c ld a5,40(s1) + c0017ac6: 00571613 slli a2,a4,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27347 if (me->export_name == export_name) - c00178fa: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27338 + c0017aca: 0705 addi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27346 me = &m->export_entries[i]; - c00178fc: 97b2 add a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27339 + c0017acc: 97b2 add a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27347 if (me->export_name == export_name) - c00178fe: 4f90 lw a2,24(a5) - c0017900: fd4611e3 bne a2,s4,c00178c2 + c0017ace: 4f90 lw a2,24(a5) + c0017ad0: fd4611e3 bne a2,s4,c0017a92 js_resolve_export1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27662 - if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c0017904: 4b98 lw a4,16(a5) - c0017906: cb11 beqz a4,c001791a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27670 + if (me->export_type == JS_EXPORT_TYPE_LOCAL) { + c0017ad4: 4b98 lw a4,16(a5) + c0017ad6: cb11 beqz a4,c0017aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27678 m1 = m->req_module_entries[me->u.req_module_idx].module; - c0017908: 4394 lw a3,0(a5) - c001790a: 6c98 ld a4,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27671 + c0017ad8: 4394 lw a3,0(a5) + c0017ada: 6c98 ld a4,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27679 if (me->local_name == JS_ATOM__star_) { - c001790c: 0147aa03 lw s4,20(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27670 + c0017adc: 0147aa03 lw s4,20(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27678 m1 = m->req_module_entries[me->u.req_module_idx].module; - c0017910: 0692 slli a3,a3,0x4 - c0017912: 9736 add a4,a4,a3 - c0017914: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27671 + c0017ae0: 0692 slli a3,a3,0x4 + c0017ae2: 9736 add a4,a4,a3 + c0017ae4: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27679 if (me->local_name == JS_ATOM__star_) { - c0017916: fd8a10e3 bne s4,s8,c00178d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27673 + c0017ae6: fd8a10e3 bne s4,s8,c0017aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27681 *pmodule = m; - c001791a: 009ab023 sd s1,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27674 + c0017aea: 009ab023 sd s1,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27682 *pme = me; - c001791e: 00f9b023 sd a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27717 -} - c0017922: 70a6 ld ra,104(sp) - c0017924: 8522 mv a0,s0 - c0017926: 7406 ld s0,96(sp) - c0017928: 64e6 ld s1,88(sp) - c001792a: 6946 ld s2,80(sp) - c001792c: 69a6 ld s3,72(sp) - c001792e: 6a06 ld s4,64(sp) - c0017930: 7ae2 ld s5,56(sp) - c0017932: 7b42 ld s6,48(sp) - c0017934: 7ba2 ld s7,40(sp) - c0017936: 7c02 ld s8,32(sp) - c0017938: 6ce2 ld s9,24(sp) - c001793a: 6165 addi sp,sp,112 - c001793c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27692 + c0017aee: 00f9b023 sd a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27725 +} + c0017af2: 70a6 ld ra,104(sp) + c0017af4: 8522 mv a0,s0 + c0017af6: 7406 ld s0,96(sp) + c0017af8: 64e6 ld s1,88(sp) + c0017afa: 6946 ld s2,80(sp) + c0017afc: 69a6 ld s3,72(sp) + c0017afe: 6a06 ld s4,64(sp) + c0017b00: 7ae2 ld s5,56(sp) + c0017b02: 7b42 ld s6,48(sp) + c0017b04: 7ba2 ld s7,40(sp) + c0017b06: 7c02 ld s8,32(sp) + c0017b08: 6ce2 ld s9,24(sp) + c0017b0a: 6165 addi sp,sp,112 + c0017b0c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27700 m1 = m->req_module_entries[se->req_module_idx].module; - c001793e: 7c9c ld a5,56(s1) - c0017940: 00241713 slli a4,s0,0x2 - c0017944: 6c94 ld a3,24(s1) - c0017946: 97ba add a5,a5,a4 - c0017948: 439c lw a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27693 + c0017b0e: 7c9c ld a5,56(s1) + c0017b10: 00241713 slli a4,s0,0x2 + c0017b14: 6c94 ld a3,24(s1) + c0017b16: 97ba add a5,a5,a4 + c0017b18: 439c lw a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27701 ret = js_resolve_export1(ctx, &res_m, &res_me, m1, - c001794a: 8752 mv a4,s4 - c001794c: 0030 addi a2,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27692 + c0017b1a: 8752 mv a4,s4 + c0017b1c: 0030 addi a2,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27700 m1 = m->req_module_entries[se->req_module_idx].module; - c001794e: 0792 slli a5,a5,0x4 - c0017950: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27693 + c0017b1e: 0792 slli a5,a5,0x4 + c0017b20: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27701 ret = js_resolve_export1(ctx, &res_m, &res_me, m1, - c0017952: 6694 ld a3,8(a3) - c0017954: 87ca mv a5,s2 - c0017956: 858a mv a1,sp - c0017958: 855a mv a0,s6 - c001795a: eebff0ef jal ra,c0017844 - c001795e: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27695 + c0017b22: 6694 ld a3,8(a3) + c0017b24: 87ca mv a5,s2 + c0017b26: 858a mv a1,sp + c0017b28: 855a mv a0,s6 + c0017b2a: eebff0ef jal ra,c0017a14 + c0017b2e: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27703 if (ret == JS_RESOLVE_RES_AMBIGUOUS || - c0017960: 03850763 beq a0,s8,c001798e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27695 (discriminator 1) - c0017964: 03750563 beq a0,s7,c001798e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27698 + c0017b30: 03850763 beq a0,s8,c0017b5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27703 (discriminator 1) + c0017b34: 03750563 beq a0,s7,c0017b5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27706 } else if (ret == JS_RESOLVE_RES_FOUND) { - c0017968: e915 bnez a0,c001799c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27699 + c0017b38: e915 bnez a0,c0017b6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27707 if (*pme != NULL) { - c001796a: 0009b703 ld a4,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27700 + c0017b3a: 0009b703 ld a4,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27708 if (*pmodule != res_m || - c001796e: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27699 + c0017b3e: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27707 if (*pme != NULL) { - c0017970: c30d beqz a4,c0017992 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27700 + c0017b40: c30d beqz a4,c0017b62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27708 if (*pmodule != res_m || - c0017972: 000ab683 ld a3,0(s5) - c0017976: 00f69763 bne a3,a5,c0017984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27700 (discriminator 1) - c001797a: 67a2 ld a5,8(sp) - c001797c: 4bd4 lw a3,20(a5) - c001797e: 4b5c lw a5,20(a4) - c0017980: 00f68e63 beq a3,a5,c001799c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27702 + c0017b42: 000ab683 ld a3,0(s5) + c0017b46: 00f69763 bne a3,a5,c0017b54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27708 (discriminator 1) + c0017b4a: 67a2 ld a5,8(sp) + c0017b4c: 4bd4 lw a3,20(a5) + c0017b4e: 4b5c lw a5,20(a4) + c0017b50: 00f68e63 beq a3,a5,c0017b6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27710 *pmodule = NULL; - c0017984: 000ab023 sd zero,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27703 + c0017b54: 000ab023 sd zero,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27711 *pme = NULL; - c0017988: 0009b023 sd zero,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27704 + c0017b58: 0009b023 sd zero,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27712 return JS_RESOLVE_RES_AMBIGUOUS; - c001798c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27697 (discriminator 1) + c0017b5c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27705 (discriminator 1) return ret; - c001798e: 843e mv s0,a5 - c0017990: bf49 j c0017922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27707 + c0017b5e: 843e mv s0,a5 + c0017b60: bf49 j c0017af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27715 *pmodule = res_m; - c0017992: 00fab023 sd a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27708 + c0017b62: 00fab023 sd a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27716 *pme = res_me; - c0017996: 67a2 ld a5,8(sp) - c0017998: 00f9b023 sd a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27686 (discriminator 1) + c0017b66: 67a2 ld a5,8(sp) + c0017b68: 00f9b023 sd a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27694 (discriminator 1) for(i = 0; i < m->star_export_entries_count; i++) { - c001799c: 2405 addiw s0,s0,1 - c001799e: 40bc lw a5,64(s1) - c00179a0: f8f44fe3 blt s0,a5,c001793e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27712 + c0017b6c: 2405 addiw s0,s0,1 + c0017b6e: 40bc lw a5,64(s1) + c0017b70: f8f44fe3 blt s0,a5,c0017b0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27720 if (*pme != NULL) - c00179a4: 0009b403 ld s0,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27657 + c0017b74: 0009b403 ld s0,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27665 return JS_RESOLVE_RES_CIRCULAR; - c00179a8: 00143413 seqz s0,s0 - c00179ac: bf9d j c0017922 - c00179ae: 4409 li s0,2 - c00179b0: bf8d j c0017922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27659 + c0017b78: 00143413 seqz s0,s0 + c0017b7c: bf9d j c0017af2 + c0017b7e: 4409 li s0,2 + c0017b80: bf8d j c0017af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27667 return JS_RESOLVE_RES_EXCEPTION; - c00179b2: 547d li s0,-1 - c00179b4: b7bd j c0017922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27715 + c0017b82: 547d li s0,-1 + c0017b84: b7bd j c0017af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27723 return JS_RESOLVE_RES_NOT_FOUND; - c00179b6: 4405 li s0,1 - c00179b8: b7ad j c0017922 + c0017b86: 4405 li s0,1 + c0017b88: b7ad j c0017af2 -00000000c00179ba : +00000000c0017b8a : js_resolve_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27727 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27735 { - c00179ba: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27736 + c0017b8a: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27744 ret = js_resolve_export1(ctx, pmodule, pme, m, export_name, s); - c00179bc: 878a mv a5,sp -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27727 -{ - c00179be: f022 sd s0,32(sp) - c00179c0: ec26 sd s1,24(sp) - c00179c2: e84a sd s2,16(sp) - c00179c4: f406 sd ra,40(sp) - c00179c6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27732 + c0017b8c: 878a mv a5,sp +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27735 +{ + c0017b8e: f022 sd s0,32(sp) + c0017b90: ec26 sd s1,24(sp) + c0017b92: e84a sd s2,16(sp) + c0017b94: f406 sd ra,40(sp) + c0017b96: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27740 s->array = NULL; - c00179c8: e002 sd zero,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27733 + c0017b98: e002 sd zero,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27741 s->size = 0; - c00179ca: e402 sd zero,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27736 + c0017b9a: e402 sd zero,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27744 ret = js_resolve_export1(ctx, pmodule, pme, m, export_name, s); - c00179cc: e79ff0ef jal ra,c0017844 - c00179d0: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27738 + c0017b9c: e79ff0ef jal ra,c0017a14 + c0017ba0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27746 for(i = 0; i < s->count; i++) - c00179d2: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27738 (discriminator 1) - c00179d4: 47b2 lw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27739 (discriminator 1) + c0017ba2: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27746 (discriminator 1) + c0017ba4: 47b2 lw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27747 (discriminator 1) JS_FreeAtom(ctx, s->array[i].name); - c00179d6: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27738 (discriminator 1) + c0017ba6: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27746 (discriminator 1) for(i = 0; i < s->count; i++) - c00179d8: 00f4cc63 blt s1,a5,c00179f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27740 + c0017ba8: 00f4cc63 blt s1,a5,c0017bc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27748 js_free(ctx, s->array); - c00179dc: 8522 mv a0,s0 - c00179de: c5cef0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27743 -} - c00179e2: 70a2 ld ra,40(sp) - c00179e4: 7402 ld s0,32(sp) - c00179e6: 64e2 ld s1,24(sp) - c00179e8: 854a mv a0,s2 - c00179ea: 6942 ld s2,16(sp) - c00179ec: 6145 addi sp,sp,48 - c00179ee: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27739 (discriminator 3) + c0017bac: 8522 mv a0,s0 + c0017bae: b7aef0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27751 +} + c0017bb2: 70a2 ld ra,40(sp) + c0017bb4: 7402 ld s0,32(sp) + c0017bb6: 64e2 ld s1,24(sp) + c0017bb8: 854a mv a0,s2 + c0017bba: 6942 ld s2,16(sp) + c0017bbc: 6145 addi sp,sp,48 + c0017bbe: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27747 (discriminator 3) JS_FreeAtom(ctx, s->array[i].name); - c00179f0: 00449793 slli a5,s1,0x4 - c00179f4: 95be add a1,a1,a5 - c00179f6: 458c lw a1,8(a1) - c00179f8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27738 (discriminator 3) + c0017bc0: 00449793 slli a5,s1,0x4 + c0017bc4: 95be add a1,a1,a5 + c0017bc6: 458c lw a1,8(a1) + c0017bc8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27746 (discriminator 3) for(i = 0; i < s->count; i++) - c00179fa: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27739 (discriminator 3) + c0017bca: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27747 (discriminator 3) JS_FreeAtom(ctx, s->array[i].name); - c00179fc: b11ef0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27738 (discriminator 3) + c0017bcc: a2fef0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27746 (discriminator 3) for(i = 0; i < s->count; i++) - c0017a00: bfd1 j c00179d4 + c0017bd0: bfd1 j c0017ba4 -00000000c0017a02 : +00000000c0017bd2 : gather_available_ancestors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28674 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28682 { - c0017a02: 7139 addi sp,sp,-64 - c0017a04: f822 sd s0,48(sp) - c0017a06: f04a sd s2,32(sp) - c0017a08: ec4e sd s3,24(sp) - c0017a0a: e852 sd s4,16(sp) - c0017a0c: e456 sd s5,8(sp) - c0017a0e: e05a sd s6,0(sp) - c0017a10: fc06 sd ra,56(sp) - c0017a12: f426 sd s1,40(sp) - c0017a14: 89aa mv s3,a0 - c0017a16: 8a2e mv s4,a1 - c0017a18: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28681 + c0017bd2: 7139 addi sp,sp,-64 + c0017bd4: f822 sd s0,48(sp) + c0017bd6: f04a sd s2,32(sp) + c0017bd8: ec4e sd s3,24(sp) + c0017bda: e852 sd s4,16(sp) + c0017bdc: e456 sd s5,8(sp) + c0017bde: e05a sd s6,0(sp) + c0017be0: fc06 sd ra,56(sp) + c0017be2: f426 sd s1,40(sp) + c0017be4: 89aa mv s3,a0 + c0017be6: 8a2e mv s4,a1 + c0017be8: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28689 for(i = 0; i < module->async_parent_modules_count; i++) { - c0017a1a: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28685 + c0017bea: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28693 assert(m->status == JS_MODULE_STATUS_EVALUATING_ASYNC); - c0017a1c: 4a91 li s5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28691 + c0017bec: 4a91 li s5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28699 if (js_resize_array(ctx, (void **)&exec_list->tab, sizeof(exec_list->tab[0]), &exec_list->size, exec_list->count + 1)) { - c0017a1e: 00c60b13 addi s6,a2,12 # fffffffffc00000c <_ebss+0xffffffff3befeee6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28681 (discriminator 1) + c0017bee: 00c60b13 addi s6,a2,12 # fffffffffc00000c <_ebss+0xffffffff3befeee6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28689 (discriminator 1) for(i = 0; i < module->async_parent_modules_count; i++) { - c0017a22: 0a0a2783 lw a5,160(s4) - c0017a26: 00f94463 blt s2,a5,c0017a2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28702 + c0017bf2: 0a0a2783 lw a5,160(s4) + c0017bf6: 00f94463 blt s2,a5,c0017bfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28710 return 0; - c0017a2a: 4501 li a0,0 - c0017a2c: a869 j c0017ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28682 + c0017bfa: 4501 li a0,0 + c0017bfc: a869 j c0017c96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28690 JSModuleDef *m = module->async_parent_modules[i]; - c0017a2e: 098a3783 ld a5,152(s4) - c0017a32: 00391713 slli a4,s2,0x3 + c0017bfe: 098a3783 ld a5,152(s4) + c0017c02: 00391713 slli a4,s2,0x3 find_in_exec_module_list(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28665 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28673 for(i = 0; i < exec_list->count; i++) { - c0017a36: 4414 lw a3,8(s0) + c0017c06: 4414 lw a3,8(s0) gather_available_ancestors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28690 JSModuleDef *m = module->async_parent_modules[i]; - c0017a38: 97ba add a5,a5,a4 - c0017a3a: 6384 ld s1,0(a5) + c0017c08: 97ba add a5,a5,a4 + c0017c0a: 6384 ld s1,0(a5) find_in_exec_module_list(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28665 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28673 for(i = 0; i < exec_list->count; i++) { - c0017a3c: 4781 li a5,0 - c0017a3e: 0007871b sext.w a4,a5 - c0017a42: 02d74363 blt a4,a3,c0017a68 + c0017c0c: 4781 li a5,0 + c0017c0e: 0007871b sext.w a4,a5 + c0017c12: 02d74363 blt a4,a3,c0017c38 gather_available_ancestors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28692 !m->cycle_root->eval_has_exception) { - c0017a46: 7cdc ld a5,184(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28683 + c0017c16: 7cdc ld a5,184(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28691 if (!find_in_exec_module_list(exec_list, m) && - c0017a48: 0f07c783 lbu a5,240(a5) - c0017a4c: e795 bnez a5,c0017a78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28685 + c0017c18: 0f07c783 lbu a5,240(a5) + c0017c1c: e795 bnez a5,c0017c48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28693 assert(m->status == JS_MODULE_STATUS_EVALUATING_ASYNC); - c0017a4e: 0834c783 lbu a5,131(s1) - c0017a52: 03578563 beq a5,s5,c0017a7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28685 (discriminator 1) - c0017a56: 659d lui a1,0x7 - c0017a58: 4601 li a2,0 - c0017a5a: 05b5 addi a1,a1,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28686 (discriminator 1) + c0017c1e: 0834c783 lbu a5,131(s1) + c0017c22: 03578563 beq a5,s5,c0017c4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28693 (discriminator 1) + c0017c26: 659d lui a1,0x7 + c0017c28: 4601 li a2,0 + c0017c2a: 05d5 addi a1,a1,21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28694 (discriminator 1) assert(!m->eval_has_exception); - c0017a5c: 00045517 auipc a0,0x45 - c0017a60: 01c50513 addi a0,a0,28 # c005ca78 - c0017a64: 7b53b0ef jal ra,c0053a18 <__assert> + c0017c2c: 00045517 auipc a0,0x45 + c0017c30: 01c50513 addi a0,a0,28 # c005cc48 + c0017c34: 7b53b0ef jal ra,c0053be8 <__assert> find_in_exec_module_list(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28674 if (exec_list->tab[i] == m) - c0017a68: 6018 ld a4,0(s0) - c0017a6a: 00379613 slli a2,a5,0x3 - c0017a6e: 0785 addi a5,a5,1 - c0017a70: 9732 add a4,a4,a2 - c0017a72: 6318 ld a4,0(a4) - c0017a74: fce495e3 bne s1,a4,c0017a3e + c0017c38: 6018 ld a4,0(s0) + c0017c3a: 00379613 slli a2,a5,0x3 + c0017c3e: 0785 addi a5,a5,1 + c0017c40: 9732 add a4,a4,a2 + c0017c42: 6318 ld a4,0(a4) + c0017c44: fce495e3 bne s1,a4,c0017c0e gather_available_ancestors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28681 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28689 for(i = 0; i < module->async_parent_modules_count; i++) { - c0017a78: 2905 addiw s2,s2,1 - c0017a7a: b765 j c0017a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28686 (discriminator 2) + c0017c48: 2905 addiw s2,s2,1 + c0017c4a: b765 j c0017bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28694 (discriminator 2) assert(!m->eval_has_exception); - c0017a7c: 0f04c783 lbu a5,240(s1) - c0017a80: c789 beqz a5,c0017a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28686 (discriminator 1) - c0017a82: 659d lui a1,0x7 - c0017a84: 4601 li a2,0 - c0017a86: 05b9 addi a1,a1,14 - c0017a88: bfd1 j c0017a5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28687 (discriminator 2) + c0017c4c: 0f04c783 lbu a5,240(s1) + c0017c50: c789 beqz a5,c0017c5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28694 (discriminator 1) + c0017c52: 659d lui a1,0x7 + c0017c54: 4601 li a2,0 + c0017c56: 05d9 addi a1,a1,22 + c0017c58: bfd1 j c0017c2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28695 (discriminator 2) assert(m->async_evaluation); - c0017a8a: 0ac4a783 lw a5,172(s1) - c0017a8e: e789 bnez a5,c0017a98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28687 (discriminator 1) - c0017a90: 659d lui a1,0x7 - c0017a92: 4601 li a2,0 - c0017a94: 05bd addi a1,a1,15 - c0017a96: b7d9 j c0017a5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28688 (discriminator 2) + c0017c5a: 0ac4a783 lw a5,172(s1) + c0017c5e: e789 bnez a5,c0017c68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28695 (discriminator 1) + c0017c60: 659d lui a1,0x7 + c0017c62: 4601 li a2,0 + c0017c64: 05dd addi a1,a1,23 + c0017c66: b7d9 j c0017c2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28696 (discriminator 2) assert(m->pending_async_dependencies > 0); - c0017a98: 0a84a783 lw a5,168(s1) - c0017a9c: 00f04663 bgtz a5,c0017aa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28688 (discriminator 1) - c0017aa0: 659d lui a1,0x7 - c0017aa2: 4601 li a2,0 - c0017aa4: 05c1 addi a1,a1,16 - c0017aa6: bf5d j c0017a5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28689 (discriminator 2) + c0017c68: 0a84a783 lw a5,168(s1) + c0017c6c: 00f04663 bgtz a5,c0017c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28696 (discriminator 1) + c0017c70: 659d lui a1,0x7 + c0017c72: 4601 li a2,0 + c0017c74: 05e1 addi a1,a1,24 + c0017c76: bf5d j c0017c2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28697 (discriminator 2) m->pending_async_dependencies--; - c0017aa8: fff7871b addiw a4,a5,-1 - c0017aac: 0ae4a423 sw a4,168(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28690 (discriminator 2) + c0017c78: fff7871b addiw a4,a5,-1 + c0017c7c: 0ae4a423 sw a4,168(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28698 (discriminator 2) if (m->pending_async_dependencies == 0) { - c0017ab0: f761 bnez a4,c0017a78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28691 + c0017c80: f761 bnez a4,c0017c48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28699 if (js_resize_array(ctx, (void **)&exec_list->tab, sizeof(exec_list->tab[0]), &exec_list->size, exec_list->count + 1)) { - c0017ab2: 4418 lw a4,8(s0) - c0017ab4: 86da mv a3,s6 - c0017ab6: 4621 li a2,8 - c0017ab8: 2705 addiw a4,a4,1 - c0017aba: 85a2 mv a1,s0 - c0017abc: 854e mv a0,s3 - c0017abe: c53ff0ef jal ra,c0017710 - c0017ac2: cd01 beqz a0,c0017ada -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28692 + c0017c82: 4418 lw a4,8(s0) + c0017c84: 86da mv a3,s6 + c0017c86: 4621 li a2,8 + c0017c88: 2705 addiw a4,a4,1 + c0017c8a: 85a2 mv a1,s0 + c0017c8c: 854e mv a0,s3 + c0017c8e: c53ff0ef jal ra,c00178e0 + c0017c92: cd01 beqz a0,c0017caa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28700 return -1; - c0017ac4: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28703 + c0017c94: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28711 } - c0017ac6: 70e2 ld ra,56(sp) - c0017ac8: 7442 ld s0,48(sp) - c0017aca: 74a2 ld s1,40(sp) - c0017acc: 7902 ld s2,32(sp) - c0017ace: 69e2 ld s3,24(sp) - c0017ad0: 6a42 ld s4,16(sp) - c0017ad2: 6aa2 ld s5,8(sp) - c0017ad4: 6b02 ld s6,0(sp) - c0017ad6: 6121 addi sp,sp,64 - c0017ad8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28694 + c0017c96: 70e2 ld ra,56(sp) + c0017c98: 7442 ld s0,48(sp) + c0017c9a: 74a2 ld s1,40(sp) + c0017c9c: 7902 ld s2,32(sp) + c0017c9e: 69e2 ld s3,24(sp) + c0017ca0: 6a42 ld s4,16(sp) + c0017ca2: 6aa2 ld s5,8(sp) + c0017ca4: 6b02 ld s6,0(sp) + c0017ca6: 6121 addi sp,sp,64 + c0017ca8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28702 exec_list->tab[exec_list->count++] = m; - c0017ada: 441c lw a5,8(s0) - c0017adc: 6018 ld a4,0(s0) - c0017ade: 0017869b addiw a3,a5,1 - c0017ae2: 078e slli a5,a5,0x3 - c0017ae4: c414 sw a3,8(s0) - c0017ae6: 97ba add a5,a5,a4 - c0017ae8: e384 sd s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28695 + c0017caa: 441c lw a5,8(s0) + c0017cac: 6018 ld a4,0(s0) + c0017cae: 0017869b addiw a3,a5,1 + c0017cb2: 078e slli a5,a5,0x3 + c0017cb4: c414 sw a3,8(s0) + c0017cb6: 97ba add a5,a5,a4 + c0017cb8: e384 sd s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28703 if (!m->has_tla) { - c0017aea: 0804c783 lbu a5,128(s1) - c0017aee: f7c9 bnez a5,c0017a78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28696 + c0017cba: 0804c783 lbu a5,128(s1) + c0017cbe: f7c9 bnez a5,c0017c48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28704 if (gather_available_ancestors(ctx, m, exec_list)) - c0017af0: 8622 mv a2,s0 - c0017af2: 85a6 mv a1,s1 - c0017af4: 854e mv a0,s3 - c0017af6: f0dff0ef jal ra,c0017a02 - c0017afa: dd3d beqz a0,c0017a78 - c0017afc: b7e1 j c0017ac4 - -00000000c0017afe : + c0017cc0: 8622 mv a2,s0 + c0017cc2: 85a6 mv a1,s1 + c0017cc4: 854e mv a0,s3 + c0017cc6: f0dff0ef jal ra,c0017bd2 + c0017cca: dd3d beqz a0,c0017c48 + c0017ccc: b7e1 j c0017c94 + +00000000c0017cce : bc_atom_to_idx(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34772 -{ - c0017afe: 7179 addi sp,sp,-48 - c0017b00: e84a sd s2,16(sp) - c0017b02: f406 sd ra,40(sp) - c0017b04: f022 sd s0,32(sp) - c0017b06: ec26 sd s1,24(sp) - c0017b08: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34775 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34780 +{ + c0017cce: 7179 addi sp,sp,-48 + c0017cd0: e84a sd s2,16(sp) + c0017cd2: f406 sd ra,40(sp) + c0017cd4: f022 sd s0,32(sp) + c0017cd6: ec26 sd s1,24(sp) + c0017cd8: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34783 if (atom < s->first_atom || __JS_AtomIsTaggedInt(atom)) { - c0017b0a: 5d44 lw s1,60(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34772 + c0017cda: 5d44 lw s1,60(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34780 { - c0017b0c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34775 + c0017cdc: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34783 if (atom < s->first_atom || __JS_AtomIsTaggedInt(atom)) { - c0017b0e: 00966463 bltu a2,s1,c0017b16 - c0017b12: 00065c63 bgez a2,c0017b2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 + c0017cde: 00966463 bltu a2,s1,c0017ce6 + c0017ce2: 00065c63 bgez a2,c0017cfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34784 *pres = atom; - c0017b16: 00c92023 sw a2,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34782 + c0017ce6: 00c92023 sw a2,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34790 return 0; - c0017b1a: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34809 -} - c0017b1c: 70a2 ld ra,40(sp) - c0017b1e: 7402 ld s0,32(sp) - c0017b20: 64e2 ld s1,24(sp) - c0017b22: 6942 ld s2,16(sp) - c0017b24: 69a2 ld s3,8(sp) - c0017b26: 6145 addi sp,sp,48 - c0017b28: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34780 + c0017cea: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34817 +} + c0017cec: 70a2 ld ra,40(sp) + c0017cee: 7402 ld s0,32(sp) + c0017cf0: 64e2 ld s1,24(sp) + c0017cf2: 6942 ld s2,16(sp) + c0017cf4: 69a2 ld s3,8(sp) + c0017cf6: 6145 addi sp,sp,48 + c0017cf8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34788 if (atom < s->atom_to_idx_size && s->atom_to_idx[atom] != 0) { - c0017b2a: 04852983 lw s3,72(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34779 + c0017cfa: 04852983 lw s3,72(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34787 atom -= s->first_atom; - c0017b2e: 409604bb subw s1,a2,s1 - c0017b32: 0004879b sext.w a5,s1 - c0017b36: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34780 + c0017cfe: 409604bb subw s1,a2,s1 + c0017d02: 0004879b sext.w a5,s1 + c0017d06: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34788 if (atom < s->atom_to_idx_size && s->atom_to_idx[atom] != 0) { - c0017b38: 0337fb63 bgeu a5,s3,c0017b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34780 (discriminator 1) - c0017b3c: 613c ld a5,64(a0) - c0017b3e: 02049693 slli a3,s1,0x20 - c0017b42: 01e6d713 srli a4,a3,0x1e - c0017b46: 97ba add a5,a5,a4 - c0017b48: 439c lw a5,0(a5) - c0017b4a: e385 bnez a5,c0017b6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34795 + c0017d08: 0337fb63 bgeu a5,s3,c0017d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34788 (discriminator 1) + c0017d0c: 613c ld a5,64(a0) + c0017d0e: 02049693 slli a3,s1,0x20 + c0017d12: 01e6d713 srli a4,a3,0x1e + c0017d16: 97ba add a5,a5,a4 + c0017d18: 439c lw a5,0(a5) + c0017d1a: e385 bnez a5,c0017d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34803 if (js_resize_array(s->ctx, (void **)&s->idx_to_atom, - c0017b4c: 4c38 lw a4,88(s0) - c0017b4e: 6008 ld a0,0(s0) - c0017b50: 05c40693 addi a3,s0,92 - c0017b54: 2705 addiw a4,a4,1 - c0017b56: 4611 li a2,4 - c0017b58: 05040593 addi a1,s0,80 - c0017b5c: bb5ff0ef jal ra,c0017710 - c0017b60: cd1d beqz a0,c0017b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34807 + c0017d1c: 4c38 lw a4,88(s0) + c0017d1e: 6008 ld a0,0(s0) + c0017d20: 05c40693 addi a3,s0,92 + c0017d24: 2705 addiw a4,a4,1 + c0017d26: 4611 li a2,4 + c0017d28: 05040593 addi a1,s0,80 + c0017d2c: bb5ff0ef jal ra,c00178e0 + c0017d30: cd1d beqz a0,c0017d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34815 *pres = 0; - c0017b62: 00092023 sw zero,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34808 + c0017d32: 00092023 sw zero,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34816 return -1; - c0017b66: 557d li a0,-1 - c0017b68: bf55 j c0017b1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34781 + c0017d36: 557d li a0,-1 + c0017d38: bf55 j c0017cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34789 *pres = s->atom_to_idx[atom]; - c0017b6a: c19c sw a5,0(a1) - c0017b6c: b77d j c0017b1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34787 + c0017d3a: c19c sw a5,0(a1) + c0017d3c: b77d j c0017cea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34795 if (js_resize_array(s->ctx, (void **)&s->atom_to_idx, - c0017b6e: 04850693 addi a3,a0,72 - c0017b72: 04050593 addi a1,a0,64 - c0017b76: 6108 ld a0,0(a0) - c0017b78: 0014871b addiw a4,s1,1 - c0017b7c: 4611 li a2,4 - c0017b7e: b93ff0ef jal ra,c0017710 - c0017b82: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34790 + c0017d3e: 04850693 addi a3,a0,72 + c0017d42: 04050593 addi a1,a0,64 + c0017d46: 6108 ld a0,0(a0) + c0017d48: 0014871b addiw a4,s1,1 + c0017d4c: 4611 li a2,4 + c0017d4e: b93ff0ef jal ra,c00178e0 + c0017d52: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34798 return -1; - c0017b84: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34787 + c0017d54: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34795 if (js_resize_array(s->ctx, (void **)&s->atom_to_idx, - c0017b86: fbd9 bnez a5,c0017b1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34792 (discriminator 1) + c0017d56: fbd9 bnez a5,c0017cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34800 (discriminator 1) for(i = old_size; i < s->atom_to_idx_size; i++) - c0017b88: 443c lw a5,72(s0) - c0017b8a: fcf9d1e3 bge s3,a5,c0017b4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34793 (discriminator 3) + c0017d58: 443c lw a5,72(s0) + c0017d5a: fcf9d1e3 bge s3,a5,c0017d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34801 (discriminator 3) s->atom_to_idx[i] = 0; - c0017b8e: 603c ld a5,64(s0) - c0017b90: 00299713 slli a4,s3,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34792 (discriminator 3) + c0017d5e: 603c ld a5,64(s0) + c0017d60: 00299713 slli a4,s3,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34800 (discriminator 3) for(i = old_size; i < s->atom_to_idx_size; i++) - c0017b94: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34793 (discriminator 3) + c0017d64: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34801 (discriminator 3) s->atom_to_idx[i] = 0; - c0017b96: 97ba add a5,a5,a4 - c0017b98: 0007a023 sw zero,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34792 (discriminator 3) + c0017d66: 97ba add a5,a5,a4 + c0017d68: 0007a023 sw zero,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34800 (discriminator 3) for(i = old_size; i < s->atom_to_idx_size; i++) - c0017b9c: b7f5 j c0017b88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34800 + c0017d6c: b7f5 j c0017d58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34808 v = s->idx_to_atom_count++; - c0017b9e: 4c38 lw a4,88(s0) - c0017ba0: 0017079b addiw a5,a4,1 - c0017ba4: cc3c sw a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34801 + c0017d6e: 4c38 lw a4,88(s0) + c0017d70: 0017079b addiw a5,a4,1 + c0017d74: cc3c sw a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34809 s->idx_to_atom[v] = atom + s->first_atom; - c0017ba6: 683c ld a5,80(s0) - c0017ba8: 02071613 slli a2,a4,0x20 - c0017bac: 01e65693 srli a3,a2,0x1e - c0017bb0: 97b6 add a5,a5,a3 - c0017bb2: 5c54 lw a3,60(s0) - c0017bb4: 9ea5 addw a3,a3,s1 - c0017bb6: c394 sw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34802 + c0017d76: 683c ld a5,80(s0) + c0017d78: 02071613 slli a2,a4,0x20 + c0017d7c: 01e65693 srli a3,a2,0x1e + c0017d80: 97b6 add a5,a5,a3 + c0017d82: 5c54 lw a3,60(s0) + c0017d84: 9ea5 addw a3,a3,s1 + c0017d86: c394 sw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34810 v += s->first_atom; - c0017bb8: 5c5c lw a5,60(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34803 + c0017d88: 5c5c lw a5,60(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34811 s->atom_to_idx[atom] = v; - c0017bba: 02049693 slli a3,s1,0x20 - c0017bbe: 01e6d493 srli s1,a3,0x1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34802 + c0017d8a: 02049693 slli a3,s1,0x20 + c0017d8e: 01e6d493 srli s1,a3,0x1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34810 v += s->first_atom; - c0017bc2: 9fb9 addw a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34803 + c0017d92: 9fb9 addw a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34811 s->atom_to_idx[atom] = v; - c0017bc4: 6038 ld a4,64(s0) - c0017bc6: 94ba add s1,s1,a4 - c0017bc8: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34804 + c0017d94: 6038 ld a4,64(s0) + c0017d96: 94ba add s1,s1,a4 + c0017d98: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34812 *pres = v; - c0017bca: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34805 + c0017d9a: 00f92023 sw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34813 return 0; - c0017bce: b7b9 j c0017b1c + c0017d9e: b7b9 j c0017cec -00000000c0017bd0 : +00000000c0017da0 : bc_put_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34811 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34819 static int bc_put_atom(BCWriterState *s, JSAtom atom) - c0017bd0: 1101 addi sp,sp,-32 - c0017bd2: e822 sd s0,16(sp) - c0017bd4: ec06 sd ra,24(sp) - c0017bd6: 842a mv s0,a0 - c0017bd8: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34815 + c0017da0: 1101 addi sp,sp,-32 + c0017da2: e822 sd s0,16(sp) + c0017da4: ec06 sd ra,24(sp) + c0017da6: 842a mv s0,a0 + c0017da8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34823 if (__JS_AtomIsTaggedInt(atom)) { - c0017bda: 0205d063 bgez a1,c0017bfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34816 + c0017daa: 0205d063 bgez a1,c0017dca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34824 v = (__JS_AtomToUInt32(atom) << 1) | 1; - c0017bde: 0015961b slliw a2,a1,0x1 - c0017be2: 00166613 ori a2,a2,1 - c0017be6: c632 sw a2,12(sp) + c0017dae: 0015961b slliw a2,a1,0x1 + c0017db2: 00166613 ori a2,a2,1 + c0017db6: c632 sw a2,12(sp) bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0017be8: 45b2 lw a1,12(sp) - c0017bea: 00840513 addi a0,s0,8 - c0017bee: c36ed0ef jal ra,c0005024 + c0017db8: 45b2 lw a1,12(sp) + c0017dba: 00840513 addi a0,s0,8 + c0017dbe: a66ed0ef jal ra,c0005024 bc_put_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34832 } - c0017bf2: 60e2 ld ra,24(sp) - c0017bf4: 6442 ld s0,16(sp) - c0017bf6: 6105 addi sp,sp,32 - c0017bf8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34818 + c0017dc2: 60e2 ld ra,24(sp) + c0017dc4: 6442 ld s0,16(sp) + c0017dc6: 6105 addi sp,sp,32 + c0017dc8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34826 if (bc_atom_to_idx(s, &v, atom)) - c0017bfa: 006c addi a1,sp,12 - c0017bfc: f03ff0ef jal ra,c0017afe - c0017c00: f96d bnez a0,c0017bf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34820 + c0017dca: 006c addi a1,sp,12 + c0017dcc: f03ff0ef jal ra,c0017cce + c0017dd0: f96d bnez a0,c0017dc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34828 v <<= 1; - c0017c02: 47b2 lw a5,12(sp) - c0017c04: 0017979b slliw a5,a5,0x1 - c0017c08: c63e sw a5,12(sp) - c0017c0a: bff9 j c0017be8 + c0017dd2: 47b2 lw a5,12(sp) + c0017dd4: 0017979b slliw a5,a5,0x1 + c0017dd8: c63e sw a5,12(sp) + c0017dda: bff9 j c0017db8 -00000000c0017c0c : +00000000c0017ddc : BC_add_object_ref1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35999 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36007 if (s->allow_reference) { - c0017c0c: 03754783 lbu a5,55(a0) - c0017c10: cf9d beqz a5,c0017c4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35998 -{ - c0017c12: 1101 addi sp,sp,-32 - c0017c14: e822 sd s0,16(sp) - c0017c16: e426 sd s1,8(sp) - c0017c18: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36000 + c0017ddc: 03754783 lbu a5,55(a0) + c0017de0: cf9d beqz a5,c0017e1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36006 +{ + c0017de2: 1101 addi sp,sp,-32 + c0017de4: e822 sd s0,16(sp) + c0017de6: e426 sd s1,8(sp) + c0017de8: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36008 if (js_resize_array(s->ctx, (void *)&s->objects, - c0017c1a: 4138 lw a4,64(a0) - c0017c1c: 842a mv s0,a0 - c0017c1e: 84ae mv s1,a1 - c0017c20: 04450693 addi a3,a0,68 - c0017c24: 03850593 addi a1,a0,56 - c0017c28: 6108 ld a0,0(a0) - c0017c2a: 2705 addiw a4,a4,1 - c0017c2c: 4621 li a2,8 - c0017c2e: ae3ff0ef jal ra,c0017710 - c0017c32: e105 bnez a0,c0017c52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36004 + c0017dea: 4138 lw a4,64(a0) + c0017dec: 842a mv s0,a0 + c0017dee: 84ae mv s1,a1 + c0017df0: 04450693 addi a3,a0,68 + c0017df4: 03850593 addi a1,a0,56 + c0017df8: 6108 ld a0,0(a0) + c0017dfa: 2705 addiw a4,a4,1 + c0017dfc: 4621 li a2,8 + c0017dfe: ae3ff0ef jal ra,c00178e0 + c0017e02: e105 bnez a0,c0017e22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36012 s->objects[s->objects_count++] = p; - c0017c34: 403c lw a5,64(s0) - c0017c36: 7c18 ld a4,56(s0) - c0017c38: 0017869b addiw a3,a5,1 - c0017c3c: 078e slli a5,a5,0x3 - c0017c3e: c034 sw a3,64(s0) - c0017c40: 97ba add a5,a5,a4 - c0017c42: e384 sd s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36007 -} - c0017c44: 60e2 ld ra,24(sp) - c0017c46: 6442 ld s0,16(sp) - c0017c48: 64a2 ld s1,8(sp) - c0017c4a: 6105 addi sp,sp,32 - c0017c4c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36006 + c0017e04: 403c lw a5,64(s0) + c0017e06: 7c18 ld a4,56(s0) + c0017e08: 0017869b addiw a3,a5,1 + c0017e0c: 078e slli a5,a5,0x3 + c0017e0e: c034 sw a3,64(s0) + c0017e10: 97ba add a5,a5,a4 + c0017e12: e384 sd s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36015 +} + c0017e14: 60e2 ld ra,24(sp) + c0017e16: 6442 ld s0,16(sp) + c0017e18: 64a2 ld s1,8(sp) + c0017e1a: 6105 addi sp,sp,32 + c0017e1c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36014 return 0; - c0017c4e: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36007 + c0017e1e: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36015 } - c0017c50: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36003 + c0017e20: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 return -1; - c0017c52: 557d li a0,-1 - c0017c54: bfc5 j c0017c44 + c0017e22: 557d li a0,-1 + c0017e24: bfc5 j c0017e14 -00000000c0017c56 : +00000000c0017e26 : new_label_fd(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21599 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21607 if (label < 0) { - c0017c56: 0405db63 bgez a1,c0017cac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21596 + c0017e26: 0405db63 bgez a1,c0017e7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21604 { - c0017c5a: 1141 addi sp,sp,-16 - c0017c5c: e022 sd s0,0(sp) - c0017c5e: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21600 + c0017e2a: 1141 addi sp,sp,-16 + c0017e2c: e022 sd s0,0(sp) + c0017e2e: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21608 if (js_resize_array(fd->ctx, (void *)&fd->label_slots, - c0017c60: 17c52703 lw a4,380(a0) - c0017c64: 17050593 addi a1,a0,368 - c0017c68: 17850693 addi a3,a0,376 - c0017c6c: 842a mv s0,a0 - c0017c6e: 6108 ld a0,0(a0) - c0017c70: 2705 addiw a4,a4,1 - c0017c72: 4661 li a2,24 - c0017c74: a9dff0ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21603 + c0017e30: 17c52703 lw a4,380(a0) + c0017e34: 17050593 addi a1,a0,368 + c0017e38: 17850693 addi a3,a0,376 + c0017e3c: 842a mv s0,a0 + c0017e3e: 6108 ld a0,0(a0) + c0017e40: 2705 addiw a4,a4,1 + c0017e42: 4661 li a2,24 + c0017e44: a9dff0ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21611 return -1; - c0017c78: 55fd li a1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21600 + c0017e48: 55fd li a1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21608 if (js_resize_array(fd->ctx, (void *)&fd->label_slots, - c0017c7a: e505 bnez a0,c0017ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21604 + c0017e4a: e505 bnez a0,c0017e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21612 label = fd->label_count++; - c0017c7c: 17c42583 lw a1,380(s0) - c0017c80: 0015879b addiw a5,a1,1 - c0017c84: 16f42e23 sw a5,380(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21605 + c0017e4c: 17c42583 lw a1,380(s0) + c0017e50: 0015879b addiw a5,a1,1 + c0017e54: 16f42e23 sw a5,380(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21613 ls = &fd->label_slots[label]; - c0017c88: 47e1 li a5,24 - c0017c8a: 02f58733 mul a4,a1,a5 - c0017c8e: 17043783 ld a5,368(s0) - c0017c92: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21606 + c0017e58: 47e1 li a5,24 + c0017e5a: 02f58733 mul a4,a1,a5 + c0017e5e: 17043783 ld a5,368(s0) + c0017e62: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21614 ls->ref_count = 0; - c0017c94: 577d li a4,-1 - c0017c96: 02071693 slli a3,a4,0x20 - c0017c9a: e394 sd a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21608 + c0017e64: 577d li a4,-1 + c0017e66: 02071693 slli a3,a4,0x20 + c0017e6a: e394 sd a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21616 ls->pos2 = -1; - c0017c9c: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21610 + c0017e6c: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21618 ls->first_reloc = NULL; - c0017c9e: 0007b823 sd zero,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21613 -} - c0017ca2: 60a2 ld ra,8(sp) - c0017ca4: 6402 ld s0,0(sp) - c0017ca6: 852e mv a0,a1 - c0017ca8: 0141 addi sp,sp,16 - c0017caa: 8082 ret - c0017cac: 852e mv a0,a1 - c0017cae: 8082 ret - -00000000c0017cb0 : + c0017e6e: 0007b823 sd zero,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21621 +} + c0017e72: 60a2 ld ra,8(sp) + c0017e74: 6402 ld s0,0(sp) + c0017e76: 852e mv a0,a1 + c0017e78: 0141 addi sp,sp,16 + c0017e7a: 8082 ret + c0017e7c: 852e mv a0,a1 + c0017e7e: 8082 ret + +00000000c0017e80 : new_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21617 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21625 return new_label_fd(s->cur_func, -1); - c0017cb0: 7528 ld a0,104(a0) - c0017cb2: 55fd li a1,-1 - c0017cb4: fa3ff06f j c0017c56 + c0017e80: 7528 ld a0,104(a0) + c0017e82: 55fd li a1,-1 + c0017e84: fa3ff06f j c0017e26 -00000000c0017cb8 : +00000000c0017e88 : emit_goto(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21643 -{ - c0017cb8: 1101 addi sp,sp,-32 - c0017cba: e822 sd s0,16(sp) - c0017cbc: e426 sd s1,8(sp) - c0017cbe: e04a sd s2,0(sp) - c0017cc0: ec06 sd ra,24(sp) - c0017cc2: 84aa mv s1,a0 - c0017cc4: 892e mv s2,a1 - c0017cc6: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21651 +{ + c0017e88: 1101 addi sp,sp,-32 + c0017e8a: e822 sd s0,16(sp) + c0017e8c: e426 sd s1,8(sp) + c0017e8e: e04a sd s2,0(sp) + c0017e90: ec06 sd ra,24(sp) + c0017e92: 84aa mv s1,a0 + c0017e94: 892e mv s2,a1 + c0017e96: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21652 if (js_is_live_code(s)) { - c0017cc8: f5eec0ef jal ra,c0004426 - c0017ccc: c131 beqz a0,c0017d10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21645 + c0017e98: d8eec0ef jal ra,c0004426 + c0017e9c: c131 beqz a0,c0017ee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21653 if (label < 0) - c0017cce: 00045663 bgez s0,c0017cda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21646 + c0017e9e: 00045663 bgez s0,c0017eaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21654 label = new_label(s); - c0017cd2: 8526 mv a0,s1 - c0017cd4: fddff0ef jal ra,c0017cb0 - c0017cd8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21647 + c0017ea2: 8526 mv a0,s1 + c0017ea4: fddff0ef jal ra,c0017e80 + c0017ea8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21655 emit_op(s, opcode); - c0017cda: 0ff97593 zext.b a1,s2 - c0017cde: 8526 mv a0,s1 - c0017ce0: f5ced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21648 + c0017eaa: 0ff97593 zext.b a1,s2 + c0017eae: 8526 mv a0,s1 + c0017eb0: e7aed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21656 emit_u32(s, label); - c0017ce4: 0004059b sext.w a1,s0 - c0017ce8: 8526 mv a0,s1 - c0017cea: 8e9ed0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21649 + c0017eb4: 0004059b sext.w a1,s0 + c0017eb8: 8526 mv a0,s1 + c0017eba: 807ed0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21657 s->cur_func->label_slots[label].ref_count++; - c0017cee: 47e1 li a5,24 - c0017cf0: 02f40733 mul a4,s0,a5 - c0017cf4: 74b4 ld a3,104(s1) - c0017cf6: 1706b783 ld a5,368(a3) - c0017cfa: 97ba add a5,a5,a4 - c0017cfc: 4398 lw a4,0(a5) - c0017cfe: 2705 addiw a4,a4,1 - c0017d00: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21653 -} - c0017d02: 60e2 ld ra,24(sp) - c0017d04: 8522 mv a0,s0 - c0017d06: 6442 ld s0,16(sp) - c0017d08: 64a2 ld s1,8(sp) - c0017d0a: 6902 ld s2,0(sp) - c0017d0c: 6105 addi sp,sp,32 - c0017d0e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21652 + c0017ebe: 47e1 li a5,24 + c0017ec0: 02f40733 mul a4,s0,a5 + c0017ec4: 74b4 ld a3,104(s1) + c0017ec6: 1706b783 ld a5,368(a3) + c0017eca: 97ba add a5,a5,a4 + c0017ecc: 4398 lw a4,0(a5) + c0017ece: 2705 addiw a4,a4,1 + c0017ed0: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21661 +} + c0017ed2: 60e2 ld ra,24(sp) + c0017ed4: 8522 mv a0,s0 + c0017ed6: 6442 ld s0,16(sp) + c0017ed8: 64a2 ld s1,8(sp) + c0017eda: 6902 ld s2,0(sp) + c0017edc: 6105 addi sp,sp,32 + c0017ede: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21660 return -1; - c0017d10: 547d li s0,-1 - c0017d12: bfc5 j c0017d02 + c0017ee0: 547d li s0,-1 + c0017ee2: bfc5 j c0017ed2 -00000000c0017d14 : +00000000c0017ee4 : emit_class_field_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22849 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22857 { - c0017d14: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22852 + c0017ee4: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22860 emit_op(s, OP_scope_get_var); - c0017d16: 0b800593 li a1,184 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22849 -{ - c0017d1a: ec06 sd ra,24(sp) - c0017d1c: e822 sd s0,16(sp) - c0017d1e: e426 sd s1,8(sp) - c0017d20: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22852 + c0017ee6: 0b800593 li a1,184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22857 +{ + c0017eea: ec06 sd ra,24(sp) + c0017eec: e822 sd s0,16(sp) + c0017eee: e426 sd s1,8(sp) + c0017ef0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22860 emit_op(s, OP_scope_get_var); - c0017d22: f1aed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22853 + c0017ef2: e38ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22861 emit_atom(s, JS_ATOM_class_fields_init); - c0017d26: 8522 mv a0,s0 - c0017d28: 07700593 li a1,119 - c0017d2c: fc2ef0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22854 + c0017ef6: 8522 mv a0,s0 + c0017ef8: 07700593 li a1,119 + c0017efc: ee0ef0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22862 emit_u16(s, s->cur_func->scope_level); - c0017d30: 743c ld a5,104(s0) - c0017d32: 8522 mv a0,s0 - c0017d34: 0e07d583 lhu a1,224(a5) - c0017d38: dd2ed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22857 + c0017f00: 743c ld a5,104(s0) + c0017f02: 8522 mv a0,s0 + c0017f04: 0e07d583 lhu a1,224(a5) + c0017f08: cf0ed0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22865 emit_op(s, OP_dup); - c0017d3c: 8522 mv a0,s0 - c0017d3e: 45c5 li a1,17 - c0017d40: efced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22858 + c0017f0c: 8522 mv a0,s0 + c0017f0e: 45c5 li a1,17 + c0017f10: e1aed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22866 label_next = emit_goto(s, OP_if_false, -1); - c0017d44: 567d li a2,-1 - c0017d46: 06a00593 li a1,106 - c0017d4a: 8522 mv a0,s0 - c0017d4c: f6dff0ef jal ra,c0017cb8 - c0017d50: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22860 + c0017f14: 567d li a2,-1 + c0017f16: 06a00593 li a1,106 + c0017f1a: 8522 mv a0,s0 + c0017f1c: f6dff0ef jal ra,c0017e88 + c0017f20: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22868 emit_op(s, OP_scope_get_var); - c0017d52: 0b800593 li a1,184 - c0017d56: 8522 mv a0,s0 - c0017d58: ee4ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22861 + c0017f22: 0b800593 li a1,184 + c0017f26: 8522 mv a0,s0 + c0017f28: e02ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22869 emit_atom(s, JS_ATOM_this); - c0017d5c: 8522 mv a0,s0 - c0017d5e: 45a1 li a1,8 - c0017d60: f8eef0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22862 + c0017f2c: 8522 mv a0,s0 + c0017f2e: 45a1 li a1,8 + c0017f30: eacef0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22870 emit_u16(s, 0); - c0017d64: 8522 mv a0,s0 - c0017d66: 4581 li a1,0 - c0017d68: da2ed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22864 + c0017f34: 8522 mv a0,s0 + c0017f36: 4581 li a1,0 + c0017f38: cc0ed0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22872 emit_op(s, OP_swap); - c0017d6c: 8522 mv a0,s0 - c0017d6e: 45ed li a1,27 - c0017d70: ecced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22866 + c0017f3c: 8522 mv a0,s0 + c0017f3e: 45ed li a1,27 + c0017f40: deaed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22874 emit_op(s, OP_call_method); - c0017d74: 8522 mv a0,s0 - c0017d76: 02400593 li a1,36 - c0017d7a: ec2ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22867 + c0017f44: 8522 mv a0,s0 + c0017f46: 02400593 li a1,36 + c0017f4a: de0ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22875 emit_u16(s, 0); - c0017d7e: 8522 mv a0,s0 - c0017d80: 4581 li a1,0 - c0017d82: d88ed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22869 + c0017f4e: 8522 mv a0,s0 + c0017f50: 4581 li a1,0 + c0017f52: ca6ed0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22877 emit_label(s, label_next); - c0017d86: 85a6 mv a1,s1 - c0017d88: 8522 mv a0,s0 - c0017d8a: 851ed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22870 + c0017f56: 85a6 mv a1,s1 + c0017f58: 8522 mv a0,s0 + c0017f5a: f6eed0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22878 emit_op(s, OP_drop); - c0017d8e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22871 + c0017f5e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22879 } - c0017d90: 6442 ld s0,16(sp) - c0017d92: 60e2 ld ra,24(sp) - c0017d94: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22870 + c0017f60: 6442 ld s0,16(sp) + c0017f62: 60e2 ld ra,24(sp) + c0017f64: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22878 emit_op(s, OP_drop); - c0017d96: 45b9 li a1,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22871 + c0017f66: 45b9 li a1,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22879 } - c0017d98: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22870 + c0017f68: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22878 emit_op(s, OP_drop); - c0017d9a: ea2ed06f j c000543c + c0017f6a: dc0ed06f j c000552a -00000000c0017d9e : +00000000c0017f6e : emit_return(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25976 { - c0017d9e: 7179 addi sp,sp,-48 - c0017da0: f022 sd s0,32(sp) - c0017da2: ec26 sd s1,24(sp) - c0017da4: f406 sd ra,40(sp) - c0017da6: e84a sd s2,16(sp) - c0017da8: e44e sd s3,8(sp) - c0017daa: e052 sd s4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25971 + c0017f6e: 7179 addi sp,sp,-48 + c0017f70: f022 sd s0,32(sp) + c0017f72: ec26 sd s1,24(sp) + c0017f74: f406 sd ra,40(sp) + c0017f76: e84a sd s2,16(sp) + c0017f78: e44e sd s3,8(sp) + c0017f7a: e052 sd s4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25979 if (s->cur_func->func_kind != JS_FUNC_NORMAL) { - c0017dac: 753c ld a5,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25968 + c0017f7c: 753c ld a5,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25976 { - c0017dae: 842a mv s0,a0 - c0017db0: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25971 + c0017f7e: 842a mv s0,a0 + c0017f80: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25979 if (s->cur_func->func_kind != JS_FUNC_NORMAL) { - c0017db2: 0847c783 lbu a5,132(a5) - c0017db6: c791 beqz a5,c0017dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25972 + c0017f82: 0847c783 lbu a5,132(a5) + c0017f86: c791 beqz a5,c0017f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25980 if (!hasval) { - c0017db8: edb5 bnez a1,c0017e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25974 + c0017f88: edb5 bnez a1,c0018004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25982 emit_op(s, OP_undefined); - c0017dba: 4599 li a1,6 - c0017dbc: e80ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25975 - hasval = TRUE; - c0017dc0: 4485 li s1,1 + c0017f8a: 4599 li a1,6 + c0017f8c: d9eed0ef jal ra,c000552a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25983 + hasval = TRUE; + c0017f90: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25991 top = s->cur_func->top_break; - c0017dc2: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25997 + c0017f92: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26005 if (s->cur_func->func_kind == JS_FUNC_ASYNC_GENERATOR) { - c0017dc4: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25983 + c0017f94: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25991 top = s->cur_func->top_break; - c0017dc6: 1807b903 ld s2,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25984 + c0017f96: 1807b903 ld s2,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25992 while (top != NULL) { - c0017dca: 06091d63 bnez s2,c0017e44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26028 + c0017f9a: 06091d63 bnez s2,c0018014 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26036 if (s->cur_func->is_derived_class_constructor) { - c0017dce: 743c ld a5,104(s0) - c0017dd0: 5fb8 lw a4,120(a5) - c0017dd2: 16070663 beqz a4,c0017f3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26038 + c0017f9e: 743c ld a5,104(s0) + c0017fa0: 5fb8 lw a4,120(a5) + c0017fa2: 16070663 beqz a4,c001810e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26046 label_return = -1; - c0017dd6: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26033 + c0017fa6: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26041 if (hasval) { - c0017dd8: c08d beqz s1,c0017dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26034 + c0017fa8: c08d beqz s1,c0017fca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26042 emit_op(s, OP_check_ctor_return); - c0017dda: 02a00593 li a1,42 - c0017dde: 8522 mv a0,s0 - c0017de0: e5ced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26035 + c0017faa: 02a00593 li a1,42 + c0017fae: 8522 mv a0,s0 + c0017fb0: d7aed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26043 label_return = emit_goto(s, OP_if_false, -1); - c0017de4: 06a00593 li a1,106 - c0017de8: 567d li a2,-1 - c0017dea: 8522 mv a0,s0 - c0017dec: ecdff0ef jal ra,c0017cb8 - c0017df0: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26036 + c0017fb4: 06a00593 li a1,106 + c0017fb8: 567d li a2,-1 + c0017fba: 8522 mv a0,s0 + c0017fbc: ecdff0ef jal ra,c0017e88 + c0017fc0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26044 emit_op(s, OP_drop); - c0017df2: 45b9 li a1,14 - c0017df4: 8522 mv a0,s0 - c0017df6: e46ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26043 + c0017fc2: 45b9 li a1,14 + c0017fc4: 8522 mv a0,s0 + c0017fc6: d64ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26051 emit_op(s, OP_scope_get_var_checkthis); - c0017dfa: 0be00593 li a1,190 - c0017dfe: 8522 mv a0,s0 - c0017e00: e3ced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26044 + c0017fca: 0be00593 li a1,190 + c0017fce: 8522 mv a0,s0 + c0017fd0: d5aed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26052 emit_atom(s, JS_ATOM_this); - c0017e04: 45a1 li a1,8 - c0017e06: 8522 mv a0,s0 - c0017e08: ee6ef0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26045 + c0017fd4: 45a1 li a1,8 + c0017fd6: 8522 mv a0,s0 + c0017fd8: e04ef0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26053 emit_u16(s, 0); - c0017e0c: 4581 li a1,0 - c0017e0e: 8522 mv a0,s0 - c0017e10: cfaed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26047 + c0017fdc: 4581 li a1,0 + c0017fde: 8522 mv a0,s0 + c0017fe0: c18ed0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26055 emit_label(s, label_return); - c0017e14: 85ca mv a1,s2 - c0017e16: 8522 mv a0,s0 - c0017e18: fc2ed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26048 + c0017fe4: 85ca mv a1,s2 + c0017fe6: 8522 mv a0,s0 + c0017fe8: ee0ed0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26056 emit_op(s, OP_return); - c0017e1c: 02800593 li a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26052 + c0017fec: 02800593 li a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26060 emit_op(s, hasval ? OP_return : OP_return_undef); - c0017e20: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26054 -} - c0017e22: 7402 ld s0,32(sp) - c0017e24: 70a2 ld ra,40(sp) - c0017e26: 64e2 ld s1,24(sp) - c0017e28: 6942 ld s2,16(sp) - c0017e2a: 69a2 ld s3,8(sp) - c0017e2c: 6a02 ld s4,0(sp) - c0017e2e: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26052 + c0017ff0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26062 +} + c0017ff2: 7402 ld s0,32(sp) + c0017ff4: 70a2 ld ra,40(sp) + c0017ff6: 64e2 ld s1,24(sp) + c0017ff8: 6942 ld s2,16(sp) + c0017ffa: 69a2 ld s3,8(sp) + c0017ffc: 6a02 ld s4,0(sp) + c0017ffe: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26060 emit_op(s, hasval ? OP_return : OP_return_undef); - c0017e30: e0ced06f j c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25976 + c0018000: d2aed06f j c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25984 } else if (s->cur_func->func_kind == JS_FUNC_ASYNC_GENERATOR) { - c0017e34: 470d li a4,3 - c0017e36: f8e796e3 bne a5,a4,c0017dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25979 + c0018004: 470d li a4,3 + c0018006: f8e796e3 bne a5,a4,c0017f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25987 emit_op(s, OP_await); - c0017e3a: 08c00593 li a1,140 - c0017e3e: dfeed0ef jal ra,c000543c - c0017e42: b741 j c0017dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25985 + c001800a: 08c00593 li a1,140 + c001800e: d1ced0ef jal ra,c000552a + c0018012: b741 j c0017f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25993 if (top->has_iterator || top->label_finally != -1) { - c0017e44: 02092783 lw a5,32(s2) - c0017e48: e791 bnez a5,c0017e54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25985 (discriminator 1) - c0017e4a: 01892703 lw a4,24(s2) - c0017e4e: 57fd li a5,-1 - c0017e50: 0cf70163 beq a4,a5,c0017f12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25986 + c0018014: 02092783 lw a5,32(s2) + c0018018: e791 bnez a5,c0018024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25993 (discriminator 1) + c001801a: 01892703 lw a4,24(s2) + c001801e: 57fd li a5,-1 + c0018020: 0cf70163 beq a4,a5,c00180e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25994 if (!hasval) { - c0017e54: e489 bnez s1,c0017e5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25987 + c0018024: e489 bnez s1,c001802e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25995 emit_op(s, OP_undefined); - c0017e56: 4599 li a1,6 - c0017e58: 8522 mv a0,s0 - c0017e5a: de2ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25994 + c0018026: 4599 li a1,6 + c0018028: 8522 mv a0,s0 + c001802a: d00ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26002 emit_op(s, OP_nip_catch); - c0017e5e: 07000593 li a1,112 - c0017e62: 8522 mv a0,s0 - c0017e64: dd8ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25996 + c001802e: 07000593 li a1,112 + c0018032: 8522 mv a0,s0 + c0018034: cf6ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26004 if (top->has_iterator) { - c0017e68: 02092783 lw a5,32(s2) - c0017e6c: 0c078163 beqz a5,c0017f2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25997 + c0018038: 02092783 lw a5,32(s2) + c001803c: 0c078163 beqz a5,c00180fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26005 if (s->cur_func->func_kind == JS_FUNC_ASYNC_GENERATOR) { - c0017e70: 743c ld a5,104(s0) - c0017e72: 0847c783 lbu a5,132(a5) - c0017e76: 0b479163 bne a5,s4,c0017f18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25999 + c0018040: 743c ld a5,104(s0) + c0018042: 0847c783 lbu a5,132(a5) + c0018046: 0b479163 bne a5,s4,c00180e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26007 emit_op(s, OP_nip); /* next */ - c0017e7a: 45bd li a1,15 - c0017e7c: 8522 mv a0,s0 - c0017e7e: dbeed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26000 + c001804a: 45bd li a1,15 + c001804c: 8522 mv a0,s0 + c001804e: cdced0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26008 emit_op(s, OP_swap); - c0017e82: 45ed li a1,27 - c0017e84: 8522 mv a0,s0 - c0017e86: db6ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26001 + c0018052: 45ed li a1,27 + c0018054: 8522 mv a0,s0 + c0018056: cd4ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26009 emit_op(s, OP_get_field2); - c0017e8a: 04200593 li a1,66 - c0017e8e: 8522 mv a0,s0 - c0017e90: daced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26002 + c001805a: 04200593 li a1,66 + c001805e: 8522 mv a0,s0 + c0018060: ccaed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26010 emit_atom(s, JS_ATOM_return); - c0017e94: 4599 li a1,6 - c0017e96: 8522 mv a0,s0 - c0017e98: e56ef0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26004 + c0018064: 4599 li a1,6 + c0018066: 8522 mv a0,s0 + c0018068: d74ef0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26012 emit_op(s, OP_dup); - c0017e9c: 45c5 li a1,17 - c0017e9e: 8522 mv a0,s0 - c0017ea0: d9ced0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26005 + c001806c: 45c5 li a1,17 + c001806e: 8522 mv a0,s0 + c0018070: cbaed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26013 emit_op(s, OP_is_undefined_or_null); - c0017ea4: 0b100593 li a1,177 - c0017ea8: 8522 mv a0,s0 - c0017eaa: d92ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26006 + c0018074: 0b100593 li a1,177 + c0018078: 8522 mv a0,s0 + c001807a: cb0ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26014 label_next = emit_goto(s, OP_if_true, -1); - c0017eae: 567d li a2,-1 - c0017eb0: 06b00593 li a1,107 - c0017eb4: 8522 mv a0,s0 - c0017eb6: e03ff0ef jal ra,c0017cb8 - c0017eba: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26007 + c001807e: 567d li a2,-1 + c0018080: 06b00593 li a1,107 + c0018084: 8522 mv a0,s0 + c0018086: e03ff0ef jal ra,c0017e88 + c001808a: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26015 emit_op(s, OP_call_method); - c0017ebc: 02400593 li a1,36 - c0017ec0: 8522 mv a0,s0 - c0017ec2: d7aed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26008 + c001808c: 02400593 li a1,36 + c0018090: 8522 mv a0,s0 + c0018092: c98ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26016 emit_u16(s, 0); - c0017ec6: 4581 li a1,0 - c0017ec8: 8522 mv a0,s0 - c0017eca: c40ed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26009 + c0018096: 4581 li a1,0 + c0018098: 8522 mv a0,s0 + c001809a: b5eed0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26017 emit_op(s, OP_iterator_check_object); - c0017ece: 08300593 li a1,131 - c0017ed2: 8522 mv a0,s0 - c0017ed4: d68ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26010 + c001809e: 08300593 li a1,131 + c00180a2: 8522 mv a0,s0 + c00180a4: c86ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26018 emit_op(s, OP_await); - c0017ed8: 08c00593 li a1,140 - c0017edc: 8522 mv a0,s0 - c0017ede: d5eed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26011 + c00180a8: 08c00593 li a1,140 + c00180ac: 8522 mv a0,s0 + c00180ae: c7ced0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26019 label_next2 = emit_goto(s, OP_goto, -1); - c0017ee2: 567d li a2,-1 - c0017ee4: 06c00593 li a1,108 - c0017ee8: 8522 mv a0,s0 - c0017eea: dcfff0ef jal ra,c0017cb8 - c0017eee: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26012 + c00180b2: 567d li a2,-1 + c00180b4: 06c00593 li a1,108 + c00180b8: 8522 mv a0,s0 + c00180ba: dcfff0ef jal ra,c0017e88 + c00180be: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26020 emit_label(s, label_next); - c0017ef0: 85ce mv a1,s3 - c0017ef2: 8522 mv a0,s0 - c0017ef4: ee6ed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26013 + c00180c0: 85ce mv a1,s3 + c00180c2: 8522 mv a0,s0 + c00180c4: e04ed0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26021 emit_op(s, OP_drop); - c0017ef8: 45b9 li a1,14 - c0017efa: 8522 mv a0,s0 - c0017efc: d40ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26014 + c00180c8: 45b9 li a1,14 + c00180ca: 8522 mv a0,s0 + c00180cc: c5eed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26022 emit_label(s, label_next2); - c0017f00: 85a6 mv a1,s1 - c0017f02: 8522 mv a0,s0 - c0017f04: ed6ed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26015 + c00180d0: 85a6 mv a1,s1 + c00180d2: 8522 mv a0,s0 + c00180d4: df4ed0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26023 emit_op(s, OP_drop); - c0017f08: 45b9 li a1,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26019 + c00180d8: 45b9 li a1,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26027 emit_op(s, OP_iterator_close); - c0017f0a: 8522 mv a0,s0 - c0017f0c: d30ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26023 + c00180da: 8522 mv a0,s0 + c00180dc: c4eed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26031 emit_goto(s, OP_gosub, top->label_finally); - c0017f10: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26026 + c00180e0: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26034 top = top->prev; - c0017f12: 00093903 ld s2,0(s2) - c0017f16: bd55 j c0017dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26017 + c00180e2: 00093903 ld s2,0(s2) + c00180e6: bd55 j c0017f9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26025 emit_op(s, OP_rot3r); - c0017f18: 45f9 li a1,30 - c0017f1a: 8522 mv a0,s0 - c0017f1c: d20ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26018 + c00180e8: 45f9 li a1,30 + c00180ea: 8522 mv a0,s0 + c00180ec: c3eed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26026 emit_op(s, OP_undefined); /* dummy catch offset */ - c0017f20: 4599 li a1,6 - c0017f22: 8522 mv a0,s0 - c0017f24: d18ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26019 + c00180f0: 4599 li a1,6 + c00180f2: 8522 mv a0,s0 + c00180f4: c36ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26027 emit_op(s, OP_iterator_close); - c0017f28: 08500593 li a1,133 - c0017f2c: bff9 j c0017f0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26023 + c00180f8: 08500593 li a1,133 + c00180fc: bff9 j c00180da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26031 emit_goto(s, OP_gosub, top->label_finally); - c0017f2e: 01892603 lw a2,24(s2) - c0017f32: 06e00593 li a1,110 - c0017f36: 8522 mv a0,s0 - c0017f38: d81ff0ef jal ra,c0017cb8 - c0017f3c: bfd1 j c0017f10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26049 + c00180fe: 01892603 lw a2,24(s2) + c0018102: 06e00593 li a1,110 + c0018106: 8522 mv a0,s0 + c0018108: d81ff0ef jal ra,c0017e88 + c001810c: bfd1 j c00180e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26057 } else if (s->cur_func->func_kind != JS_FUNC_NORMAL) { - c0017f3e: 0847c783 lbu a5,132(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26050 + c001810e: 0847c783 lbu a5,132(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26058 emit_op(s, OP_return_async); - c0017f42: 02e00593 li a1,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26049 + c0018112: 02e00593 li a1,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26057 } else if (s->cur_func->func_kind != JS_FUNC_NORMAL) { - c0017f46: ec079de3 bnez a5,c0017e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26052 + c0018116: ec079de3 bnez a5,c0017ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26060 emit_op(s, hasval ? OP_return : OP_return_undef); - c0017f4a: 02900593 li a1,41 - c0017f4e: 9d85 subw a1,a1,s1 - c0017f50: 0ff5f593 zext.b a1,a1 - c0017f54: b5f1 j c0017e20 + c001811a: 02900593 li a1,41 + c001811e: 9d85 subw a1,a1,s1 + c0018120: 0ff5f593 zext.b a1,a1 + c0018124: b5f1 j c0017ff0 -00000000c0017f56 : +00000000c0018126 : optional_chain_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24382 -{ - c0017f56: 7179 addi sp,sp,-48 - c0017f58: f022 sd s0,32(sp) - c0017f5a: ec26 sd s1,24(sp) - c0017f5c: e44e sd s3,8(sp) - c0017f5e: f406 sd ra,40(sp) - c0017f60: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24390 +{ + c0018126: 7179 addi sp,sp,-48 + c0018128: f022 sd s0,32(sp) + c001812a: ec26 sd s1,24(sp) + c001812c: e44e sd s3,8(sp) + c001812e: f406 sd ra,40(sp) + c0018130: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24392 if (*poptional_chaining_label < 0) - c0017f62: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24382 + c0018132: 419c lw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24390 { - c0017f64: 842a mv s0,a0 - c0017f66: 84ae mv s1,a1 - c0017f68: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24384 + c0018134: 842a mv s0,a0 + c0018136: 84ae mv s1,a1 + c0018138: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24392 if (*poptional_chaining_label < 0) - c0017f6a: 0007d563 bgez a5,c0017f74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24385 + c001813a: 0007d563 bgez a5,c0018144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24393 *poptional_chaining_label = new_label(s); - c0017f6e: d43ff0ef jal ra,c0017cb0 - c0017f72: c088 sw a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24387 + c001813e: d43ff0ef jal ra,c0017e80 + c0018142: c088 sw a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24395 emit_op(s, OP_dup); - c0017f74: 45c5 li a1,17 - c0017f76: 8522 mv a0,s0 - c0017f78: cc4ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24388 + c0018144: 45c5 li a1,17 + c0018146: 8522 mv a0,s0 + c0018148: be2ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24396 emit_op(s, OP_is_undefined_or_null); - c0017f7c: 0b100593 li a1,177 - c0017f80: 8522 mv a0,s0 - c0017f82: cbaed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24389 + c001814c: 0b100593 li a1,177 + c0018150: 8522 mv a0,s0 + c0018152: bd8ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24397 label_next = emit_goto(s, OP_if_false, -1); - c0017f86: 567d li a2,-1 - c0017f88: 06a00593 li a1,106 - c0017f8c: 8522 mv a0,s0 - c0017f8e: d2bff0ef jal ra,c0017cb8 - c0017f92: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24391 + c0018156: 567d li a2,-1 + c0018158: 06a00593 li a1,106 + c001815c: 8522 mv a0,s0 + c001815e: d2bff0ef jal ra,c0017e88 + c0018162: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24399 emit_op(s, OP_drop); - c0017f94: 45b9 li a1,14 - c0017f96: 8522 mv a0,s0 - c0017f98: ca4ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24390 + c0018164: 45b9 li a1,14 + c0018166: 8522 mv a0,s0 + c0018168: bc2ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24398 for(i = 0; i < drop_count; i++) - c0017f9c: 4789 li a5,2 - c0017f9e: 00f99663 bne s3,a5,c0017faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24391 (discriminator 3) + c001816c: 4789 li a5,2 + c001816e: 00f99663 bne s3,a5,c001817a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24399 (discriminator 3) emit_op(s, OP_drop); - c0017fa2: 45b9 li a1,14 - c0017fa4: 8522 mv a0,s0 - c0017fa6: c96ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24392 + c0018172: 45b9 li a1,14 + c0018174: 8522 mv a0,s0 + c0018176: bb4ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24400 emit_op(s, OP_undefined); - c0017faa: 8522 mv a0,s0 - c0017fac: 4599 li a1,6 - c0017fae: c8eed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24393 + c001817a: 8522 mv a0,s0 + c001817c: 4599 li a1,6 + c001817e: baced0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24401 emit_goto(s, OP_goto, *poptional_chaining_label); - c0017fb2: 4090 lw a2,0(s1) - c0017fb4: 06c00593 li a1,108 - c0017fb8: 8522 mv a0,s0 - c0017fba: cffff0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24394 + c0018182: 4090 lw a2,0(s1) + c0018184: 06c00593 li a1,108 + c0018188: 8522 mv a0,s0 + c001818a: cffff0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24402 emit_label(s, label_next); - c0017fbe: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24395 + c001818e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24403 } - c0017fc0: 7402 ld s0,32(sp) - c0017fc2: 70a2 ld ra,40(sp) - c0017fc4: 64e2 ld s1,24(sp) - c0017fc6: 69a2 ld s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24394 + c0018190: 7402 ld s0,32(sp) + c0018192: 70a2 ld ra,40(sp) + c0018194: 64e2 ld s1,24(sp) + c0018196: 69a2 ld s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24402 emit_label(s, label_next); - c0017fc8: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24395 + c0018198: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24403 } - c0017fca: 6942 ld s2,16(sp) - c0017fcc: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24394 + c001819a: 6942 ld s2,16(sp) + c001819c: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24402 emit_label(s, label_next); - c0017fce: e0ced06f j c00055da + c001819e: d2aed06f j c00056c8 -00000000c0017fd2 : +00000000c00181a2 : js_emit_spread_code(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23887 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23895 { - c0017fd2: 1101 addi sp,sp,-32 - c0017fd4: e426 sd s1,8(sp) - c0017fd6: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23894 + c00181a2: 1101 addi sp,sp,-32 + c00181a4: e426 sd s1,8(sp) + c00181a6: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23902 emit_op(s, OP_array_from); - c0017fd8: 02600593 li a1,38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23887 + c00181a8: 02600593 li a1,38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23895 { - c0017fdc: ec06 sd ra,24(sp) - c0017fde: e822 sd s0,16(sp) - c0017fe0: e04a sd s2,0(sp) - c0017fe2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23894 + c00181ac: ec06 sd ra,24(sp) + c00181ae: e822 sd s0,16(sp) + c00181b0: e04a sd s2,0(sp) + c00181b2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23902 emit_op(s, OP_array_from); - c0017fe4: c58ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23895 + c00181b4: b76ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23903 emit_u16(s, 0); - c0017fe8: 8522 mv a0,s0 - c0017fea: 4581 li a1,0 - c0017fec: b1eed0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23896 + c00181b8: 8522 mv a0,s0 + c00181ba: 4581 li a1,0 + c00181bc: a3ced0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23904 emit_op(s, OP_push_i32); - c0017ff0: 8522 mv a0,s0 - c0017ff2: 4585 li a1,1 - c0017ff4: c48ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23897 + c00181c0: 8522 mv a0,s0 + c00181c2: 4585 li a1,1 + c00181c4: b66ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23905 emit_u32(s, 0); - c0017ff8: 4581 li a1,0 - c0017ffa: 8522 mv a0,s0 - c0017ffc: dd6ed0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23898 + c00181c8: 4581 li a1,0 + c00181ca: 8522 mv a0,s0 + c00181cc: cf4ed0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23906 emit_label(s, label_rest_next = new_label(s)); - c0018000: 8522 mv a0,s0 - c0018002: cafff0ef jal ra,c0017cb0 - c0018006: 892a mv s2,a0 - c0018008: 85aa mv a1,a0 - c001800a: 8522 mv a0,s0 - c001800c: dceed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23899 + c00181d0: 8522 mv a0,s0 + c00181d2: cafff0ef jal ra,c0017e80 + c00181d6: 892a mv s2,a0 + c00181d8: 85aa mv a1,a0 + c00181da: 8522 mv a0,s0 + c00181dc: ceced0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23907 emit_op(s, OP_for_of_next); - c0018010: 8522 mv a0,s0 - c0018012: 08200593 li a1,130 - c0018016: c26ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23900 + c00181e0: 8522 mv a0,s0 + c00181e2: 08200593 li a1,130 + c00181e6: b44ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23908 emit_u8(s, 2 + depth); - c001801a: 0024859b addiw a1,s1,2 - c001801e: 8522 mv a0,s0 - c0018020: 0ff5f593 zext.b a1,a1 - c0018024: 834ed0ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23901 + c00181ea: 0024859b addiw a1,s1,2 + c00181ee: 8522 mv a0,s0 + c00181f0: 0ff5f593 zext.b a1,a1 + c00181f4: e65ec0ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23909 label_rest_done = emit_goto(s, OP_if_true, -1); - c0018028: 567d li a2,-1 - c001802a: 06b00593 li a1,107 - c001802e: 8522 mv a0,s0 - c0018030: c89ff0ef jal ra,c0017cb8 - c0018034: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23903 + c00181f8: 567d li a2,-1 + c00181fa: 06b00593 li a1,107 + c00181fe: 8522 mv a0,s0 + c0018200: c89ff0ef jal ra,c0017e88 + c0018204: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23911 emit_op(s, OP_define_array_el); - c0018036: 05100593 li a1,81 - c001803a: 8522 mv a0,s0 - c001803c: c00ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23904 + c0018206: 05100593 li a1,81 + c001820a: 8522 mv a0,s0 + c001820c: b1eed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23912 emit_op(s, OP_inc); - c0018040: 8522 mv a0,s0 - c0018042: 09000593 li a1,144 - c0018046: bf6ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23905 + c0018210: 8522 mv a0,s0 + c0018212: 09000593 li a1,144 + c0018216: b14ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23913 emit_goto(s, OP_goto, label_rest_next); - c001804a: 864a mv a2,s2 - c001804c: 06c00593 li a1,108 - c0018050: 8522 mv a0,s0 - c0018052: c67ff0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23906 + c001821a: 864a mv a2,s2 + c001821c: 06c00593 li a1,108 + c0018220: 8522 mv a0,s0 + c0018222: c67ff0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23914 emit_label(s, label_rest_done); - c0018056: 85a6 mv a1,s1 - c0018058: 8522 mv a0,s0 - c001805a: d80ed0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23908 + c0018226: 85a6 mv a1,s1 + c0018228: 8522 mv a0,s0 + c001822a: c9eed0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23916 emit_op(s, OP_drop); - c001805e: 8522 mv a0,s0 - c0018060: 45b9 li a1,14 - c0018062: bdaed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23909 + c001822e: 8522 mv a0,s0 + c0018230: 45b9 li a1,14 + c0018232: af8ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23917 emit_op(s, OP_drop); - c0018066: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23910 + c0018236: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23918 } - c0018068: 6442 ld s0,16(sp) - c001806a: 60e2 ld ra,24(sp) - c001806c: 64a2 ld s1,8(sp) - c001806e: 6902 ld s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23909 + c0018238: 6442 ld s0,16(sp) + c001823a: 60e2 ld ra,24(sp) + c001823c: 64a2 ld s1,8(sp) + c001823e: 6902 ld s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23917 emit_op(s, OP_drop); - c0018070: 45b9 li a1,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23910 + c0018240: 45b9 li a1,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23918 } - c0018072: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23909 + c0018242: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23917 emit_op(s, OP_drop); - c0018074: bc8ed06f j c000543c + c0018244: ae6ed06f j c000552a -00000000c0018078 : +00000000c0018248 : var_object_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30254 -{ - c0018078: 7139 addi sp,sp,-64 - c001807a: f822 sd s0,48(sp) - c001807c: f426 sd s1,40(sp) - c001807e: f04a sd s2,32(sp) - c0018080: ec4e sd s3,24(sp) - c0018082: e852 sd s4,16(sp) - c0018084: e456 sd s5,8(sp) - c0018086: 893e mv s2,a5 - c0018088: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30262 +{ + c0018248: 7139 addi sp,sp,-64 + c001824a: f822 sd s0,48(sp) + c001824c: f426 sd s1,40(sp) + c001824e: f04a sd s2,32(sp) + c0018250: ec4e sd s3,24(sp) + c0018252: e852 sd s4,16(sp) + c0018254: e456 sd s5,8(sp) + c0018256: 893e mv s2,a5 + c0018258: fc06 sd ra,56(sp) get_with_scope_opcode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30066 if (op == OP_scope_get_var_undef) - c001808a: 0b700793 li a5,183 + c001825a: 0b700793 li a5,183 var_object_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30254 -{ - c001808e: 842e mv s0,a1 - c0018090: 8a2a mv s4,a0 - c0018092: 8ab2 mv s5,a2 - c0018094: 84ba mv s1,a4 - c0018096: 89c2 mv s3,a6 - c0018098: 07400593 li a1,116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30262 +{ + c001825e: 842e mv s0,a1 + c0018260: 8a2a mv s4,a0 + c0018262: 8ab2 mv s5,a2 + c0018264: 84ba mv s1,a4 + c0018266: 89c2 mv s3,a6 + c0018268: 07400593 li a1,116 get_with_scope_opcode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30066 if (op == OP_scope_get_var_undef) - c001809c: 00f68463 beq a3,a5,c00180a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30061 + c001826c: 00f68463 beq a3,a5,c0018274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30069 return OP_with_get_var + (op - OP_scope_get_var); - c00180a0: fbc6859b addiw a1,a3,-68 + c0018270: fbc6859b addiw a1,a3,-68 var_object_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30263 dbuf_putc(bc, get_with_scope_opcode(op)); - c00180a4: 0ff5f593 zext.b a1,a1 - c00180a8: 8526 mv a0,s1 - c00180aa: 4992f0ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30256 + c0018274: 0ff5f593 zext.b a1,a1 + c0018278: 8526 mv a0,s1 + c001827a: 4992f0ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30264 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c00180ae: 85d6 mv a1,s5 - c00180b0: 8552 mv a0,s4 - c00180b2: c18ef0ef jal ra,c00074ca - c00180b6: 0005059b sext.w a1,a0 - c00180ba: 8526 mv a0,s1 - c00180bc: b6ced0ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30257 + c001827e: 85d6 mv a1,s5 + c0018280: 8552 mv a0,s4 + c0018282: b36ef0ef jal ra,c00075b8 + c0018286: 0005059b sext.w a1,a0 + c001828a: 8526 mv a0,s1 + c001828c: a8aed0ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30265 *plabel_done = new_label_fd(s, *plabel_done); - c00180c0: 00092583 lw a1,0(s2) - c00180c4: 8522 mv a0,s0 - c00180c6: b91ff0ef jal ra,c0017c56 - c00180ca: 00a92023 sw a0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30258 + c0018290: 00092583 lw a1,0(s2) + c0018294: 8522 mv a0,s0 + c0018296: b91ff0ef jal ra,c0017e26 + c001829a: 00a92023 sw a0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30266 dbuf_put_u32(bc, *plabel_done); - c00180ce: 0005059b sext.w a1,a0 - c00180d2: 8526 mv a0,s1 - c00180d4: b54ed0ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30259 + c001829e: 0005059b sext.w a1,a0 + c00182a2: 8526 mv a0,s1 + c00182a4: a72ed0ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30267 dbuf_putc(bc, is_with); - c00180d8: 0ff9f593 zext.b a1,s3 - c00180dc: 8526 mv a0,s1 - c00180de: 4652f0ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30260 + c00182a8: 0ff9f593 zext.b a1,s3 + c00182ac: 8526 mv a0,s1 + c00182ae: 4652f0ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30268 update_label(s, *plabel_done, 1); - c00180e2: 00092583 lw a1,0(s2) - c00180e6: 8522 mv a0,s0 - c00180e8: 4605 li a2,1 - c00180ea: 9a9ed0ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30261 + c00182b2: 00092583 lw a1,0(s2) + c00182b6: 8522 mv a0,s0 + c00182b8: 4605 li a2,1 + c00182ba: 8c7ed0ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 s->jump_size++; - c00180ee: 1b042783 lw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30262 + c00182be: 1b042783 lw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30270 } - c00180f2: 70e2 ld ra,56(sp) - c00180f4: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30261 + c00182c2: 70e2 ld ra,56(sp) + c00182c4: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 s->jump_size++; - c00180f6: 2785 addiw a5,a5,1 - c00180f8: 1af42823 sw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30262 -} - c00180fc: 7442 ld s0,48(sp) - c00180fe: 7902 ld s2,32(sp) - c0018100: 69e2 ld s3,24(sp) - c0018102: 6a42 ld s4,16(sp) - c0018104: 6aa2 ld s5,8(sp) - c0018106: 6121 addi sp,sp,64 - c0018108: 8082 ret - -00000000c001810a : + c00182c6: 2785 addiw a5,a5,1 + c00182c8: 1af42823 sw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30270 +} + c00182cc: 7442 ld s0,48(sp) + c00182ce: 7902 ld s2,32(sp) + c00182d0: 69e2 ld s3,24(sp) + c00182d2: 6a42 ld s4,16(sp) + c00182d4: 6aa2 ld s5,8(sp) + c00182d6: 6121 addi sp,sp,64 + c00182d8: 8082 ret + +00000000c00182da : cpool_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21657 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21665 { - c001810a: 1101 addi sp,sp,-32 - c001810c: ec06 sd ra,24(sp) - c001810e: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21658 + c00182da: 1101 addi sp,sp,-32 + c00182dc: ec06 sd ra,24(sp) + c00182de: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21666 JSFunctionDef *fd = s->cur_func; - c0018110: 7520 ld s0,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21660 + c00182e0: 7520 ld s0,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21668 if (js_resize_array(s->ctx, (void *)&fd->cpool, sizeof(fd->cpool[0]), - c0018112: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21657 + c00182e2: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21665 { - c0018114: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21660 + c00182e4: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21668 if (js_resize_array(s->ctx, (void *)&fd->cpool, sizeof(fd->cpool[0]), - c0018116: 19042703 lw a4,400(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21657 + c00182e6: 19042703 lw a4,400(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21665 { - c001811a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21660 + c00182ea: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21668 if (js_resize_array(s->ctx, (void *)&fd->cpool, sizeof(fd->cpool[0]), - c001811c: 19440693 addi a3,s0,404 - c0018120: 2705 addiw a4,a4,1 - c0018122: 4641 li a2,16 - c0018124: 18840593 addi a1,s0,392 - c0018128: de8ff0ef jal ra,c0017710 - c001812c: e515 bnez a0,c0018158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21663 + c00182ec: 19440693 addi a3,s0,404 + c00182f0: 2705 addiw a4,a4,1 + c00182f2: 4641 li a2,16 + c00182f4: 18840593 addi a1,s0,392 + c00182f8: de8ff0ef jal ra,c00178e0 + c00182fc: e515 bnez a0,c0018328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21671 fd->cpool[fd->cpool_count++] = val; - c001812e: 19042703 lw a4,400(s0) - c0018132: 18843783 ld a5,392(s0) - c0018136: 0017069b addiw a3,a4,1 - c001813a: 0712 slli a4,a4,0x4 - c001813c: 97ba add a5,a5,a4 - c001813e: 6702 ld a4,0(sp) - c0018140: 18d42823 sw a3,400(s0) - c0018144: e398 sd a4,0(a5) - c0018146: 6722 ld a4,8(sp) - c0018148: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21664 + c00182fe: 19042703 lw a4,400(s0) + c0018302: 18843783 ld a5,392(s0) + c0018306: 0017069b addiw a3,a4,1 + c001830a: 0712 slli a4,a4,0x4 + c001830c: 97ba add a5,a5,a4 + c001830e: 6702 ld a4,0(sp) + c0018310: 18d42823 sw a3,400(s0) + c0018314: e398 sd a4,0(a5) + c0018316: 6722 ld a4,8(sp) + c0018318: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21672 return fd->cpool_count - 1; - c001814a: 19042503 lw a0,400(s0) - c001814e: 357d addiw a0,a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21665 -} - c0018150: 60e2 ld ra,24(sp) - c0018152: 6442 ld s0,16(sp) - c0018154: 6105 addi sp,sp,32 - c0018156: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21662 + c001831a: 19042503 lw a0,400(s0) + c001831e: 357d addiw a0,a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21673 +} + c0018320: 60e2 ld ra,24(sp) + c0018322: 6442 ld s0,16(sp) + c0018324: 6105 addi sp,sp,32 + c0018326: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21670 return -1; - c0018158: 557d li a0,-1 - c001815a: bfdd j c0018150 + c0018328: 557d li a0,-1 + c001832a: bfdd j c0018320 -00000000c001815c : +00000000c001832c : emit_push_const(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21669 -{ - c001815c: 7139 addi sp,sp,-64 - c001815e: f822 sd s0,48(sp) - c0018160: fc06 sd ra,56(sp) - c0018162: f426 sd s1,40(sp) - c0018164: e02e sd a1,0(sp) - c0018166: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21677 +{ + c001832c: 7139 addi sp,sp,-64 + c001832e: f822 sd s0,48(sp) + c0018330: fc06 sd ra,56(sp) + c0018332: f426 sd s1,40(sp) + c0018334: e02e sd a1,0(sp) + c0018336: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21680 if (JS_VALUE_GET_TAG(val) == JS_TAG_STRING && as_atom) { - c0018168: 0006071b sext.w a4,a2 - c001816c: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21669 + c0018338: 0006071b sext.w a4,a2 + c001833c: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21677 { - c001816e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21672 + c001833e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21680 if (JS_VALUE_GET_TAG(val) == JS_TAG_STRING && as_atom) { - c0018170: 02f71d63 bne a4,a5,c00181aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21672 (discriminator 1) - c0018174: ca9d beqz a3,c00181aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21675 + c0018340: 02f71d63 bne a4,a5,c001837a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21680 (discriminator 1) + c0018344: ca9d beqz a3,c001837a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21683 JS_DupValue(s->ctx, val); - c0018176: 852e mv a0,a1 - c0018178: 85b2 mv a1,a2 - c001817a: cf4ee0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21676 + c0018346: 852e mv a0,a1 + c0018348: 85b2 mv a1,a2 + c001834a: c12ee0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21684 atom = JS_NewAtomStr(s->ctx, JS_VALUE_GET_STRING(val)); - c001817e: 6582 ld a1,0(sp) - c0018180: 6008 ld a0,0(s0) - c0018182: 954ef0ef jal ra,c00072d6 - c0018186: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21677 + c001834e: 6582 ld a1,0(sp) + c0018350: 6008 ld a0,0(s0) + c0018352: 872ef0ef jal ra,c00073c4 + c0018356: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21685 if (atom != JS_ATOM_NULL && !__JS_AtomIsTaggedInt(atom)) { - c001818a: 02905063 blez s1,c00181aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21678 + c001835a: 02905063 blez s1,c001837a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21686 emit_op(s, OP_push_atom_value); - c001818e: 4591 li a1,4 - c0018190: 8522 mv a0,s0 - c0018192: aaaed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21679 + c001835e: 4591 li a1,4 + c0018360: 8522 mv a0,s0 + c0018362: 9c8ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21687 emit_u32(s, atom); - c0018196: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21688 + c0018366: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21696 emit_u32(s, idx); - c0018198: 8522 mv a0,s0 - c001819a: c38ed0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21689 + c0018368: 8522 mv a0,s0 + c001836a: b56ed0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21697 return 0; - c001819e: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21690 -} - c00181a0: 70e2 ld ra,56(sp) - c00181a2: 7442 ld s0,48(sp) - c00181a4: 74a2 ld s1,40(sp) - c00181a6: 6121 addi sp,sp,64 - c00181a8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21684 + c001836e: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21698 +} + c0018370: 70e2 ld ra,56(sp) + c0018372: 7442 ld s0,48(sp) + c0018374: 74a2 ld s1,40(sp) + c0018376: 6121 addi sp,sp,64 + c0018378: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21692 idx = cpool_add(s, JS_DupValue(s->ctx, val)); - c00181aa: 6502 ld a0,0(sp) - c00181ac: 65a2 ld a1,8(sp) - c00181ae: cc0ee0ef jal ra,c000666e - c00181b2: 862e mv a2,a1 - c00181b4: 85aa mv a1,a0 - c00181b6: 8522 mv a0,s0 - c00181b8: f53ff0ef jal ra,c001810a - c00181bc: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21686 + c001837a: 6502 ld a0,0(sp) + c001837c: 65a2 ld a1,8(sp) + c001837e: bdeee0ef jal ra,c000675c + c0018382: 862e mv a2,a1 + c0018384: 85aa mv a1,a0 + c0018386: 8522 mv a0,s0 + c0018388: f53ff0ef jal ra,c00182da + c001838c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21694 return -1; - c00181be: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21685 + c001838e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21693 if (idx < 0) - c00181c0: fe04c0e3 bltz s1,c00181a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21687 + c0018390: fe04c0e3 bltz s1,c0018370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21695 emit_op(s, OP_push_const); - c00181c4: 4589 li a1,2 - c00181c6: 8522 mv a0,s0 - c00181c8: a74ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21688 + c0018394: 4589 li a1,2 + c0018396: 8522 mv a0,s0 + c0018398: 992ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21696 emit_u32(s, idx); - c00181cc: 0004859b sext.w a1,s1 - c00181d0: b7e1 j c0018198 + c001839c: 0004859b sext.w a1,s1 + c00183a0: b7e1 j c0018368 -00000000c00181d2 : +00000000c00183a2 : emit_class_init_end(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22931 { - c00181d2: 7179 addi sp,sp,-48 - c00181d4: f406 sd ra,40(sp) - c00181d6: f022 sd s0,32(sp) - c00181d8: ec26 sd s1,24(sp) - c00181da: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22926 + c00183a2: 7179 addi sp,sp,-48 + c00183a4: f406 sd ra,40(sp) + c00183a6: f022 sd s0,32(sp) + c00183a8: ec26 sd s1,24(sp) + c00183aa: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22934 s->cur_func = cf->fields_init_fd; - c00181dc: 619c ld a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22923 + c00183ac: 619c ld a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22931 { - c00181de: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22927 + c00183ae: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22935 emit_op(s, OP_return_undef); - c00181e0: 02900593 li a1,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22926 + c00183b0: 02900593 li a1,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22934 s->cur_func = cf->fields_init_fd; - c00181e4: f53c sd a5,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22923 + c00183b4: f53c sd a5,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22931 { - c00181e6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22927 + c00183b6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22935 emit_op(s, OP_return_undef); - c00181e8: a54ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22928 + c00183b8: 972ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22936 s->cur_func = s->cur_func->parent; - c00181ec: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22930 + c00183bc: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22938 cpool_idx = cpool_add(s, JS_NULL); - c00181ee: 4609 li a2,2 - c00181f0: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22928 + c00183be: 4609 li a2,2 + c00183c0: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22936 s->cur_func = s->cur_func->parent; - c00181f2: 679c ld a5,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22930 + c00183c2: 679c ld a5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22938 cpool_idx = cpool_add(s, JS_NULL); - c00181f4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22928 + c00183c4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22936 s->cur_func = s->cur_func->parent; - c00181f6: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22930 + c00183c6: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22938 cpool_idx = cpool_add(s, JS_NULL); - c00181f8: f13ff0ef jal ra,c001810a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22931 + c00183c8: f13ff0ef jal ra,c00182da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22939 cf->fields_init_fd->parent_cpool_idx = cpool_idx; - c00181fc: 00093783 ld a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22930 + c00183cc: 00093783 ld a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22938 cpool_idx = cpool_add(s, JS_NULL); - c0018200: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22932 + c00183d0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22940 emit_op(s, OP_fclosure); - c0018202: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22931 + c00183d2: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22939 cf->fields_init_fd->parent_cpool_idx = cpool_idx; - c0018204: cb88 sw a0,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22932 + c00183d4: cb88 sw a0,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22940 emit_op(s, OP_fclosure); - c0018206: 8522 mv a0,s0 - c0018208: a34ed0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22933 + c00183d6: 8522 mv a0,s0 + c00183d8: 952ed0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22941 emit_u32(s, cpool_idx); - c001820c: 0004859b sext.w a1,s1 - c0018210: 8522 mv a0,s0 - c0018212: bc0ed0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22934 + c00183dc: 0004859b sext.w a1,s1 + c00183e0: 8522 mv a0,s0 + c00183e2: adeed0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22942 emit_op(s, OP_set_home_object); - c0018216: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22935 + c00183e6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 } - c0018218: 7402 ld s0,32(sp) - c001821a: 70a2 ld ra,40(sp) - c001821c: 64e2 ld s1,24(sp) - c001821e: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22934 + c00183e8: 7402 ld s0,32(sp) + c00183ea: 70a2 ld ra,40(sp) + c00183ec: 64e2 ld s1,24(sp) + c00183ee: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22942 emit_op(s, OP_set_home_object); - c0018220: 05000593 li a1,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22935 + c00183f0: 05000593 li a1,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 } - c0018224: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22934 + c00183f4: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22942 emit_op(s, OP_set_home_object); - c0018226: a16ed06f j c000543c + c00183f6: 934ed06f j c000552a -00000000c001822a : +00000000c00183fa : add_global_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21969 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21977 { - c001822a: 7179 addi sp,sp,-48 - c001822c: f022 sd s0,32(sp) - c001822e: ec26 sd s1,24(sp) - c0018230: e84a sd s2,16(sp) - c0018232: e44e sd s3,8(sp) - c0018234: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21972 + c00183fa: 7179 addi sp,sp,-48 + c00183fc: f022 sd s0,32(sp) + c00183fe: ec26 sd s1,24(sp) + c0018400: e84a sd s2,16(sp) + c0018402: e44e sd s3,8(sp) + c0018404: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21980 if (js_resize_array(ctx, (void **)&s->global_vars, - c0018236: 11c5a703 lw a4,284(a1) # 711c <__clzdi2-0xbfff8ee4> - c001823a: 12058693 addi a3,a1,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21969 + c0018406: 11c5a703 lw a4,284(a1) # 711c <__clzdi2-0xbfff8ee4> + c001840a: 12058693 addi a3,a1,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21977 { - c001823e: 84ae mv s1,a1 - c0018240: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21972 + c001840e: 84ae mv s1,a1 + c0018410: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21980 if (js_resize_array(ctx, (void **)&s->global_vars, - c0018242: 2705 addiw a4,a4,1 - c0018244: 4641 li a2,16 - c0018246: 12858593 addi a1,a1,296 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21969 + c0018412: 2705 addiw a4,a4,1 + c0018414: 4641 li a2,16 + c0018416: 12858593 addi a1,a1,296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21977 { - c001824a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21972 + c001841a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21980 if (js_resize_array(ctx, (void **)&s->global_vars, - c001824c: cc4ff0ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21975 + c001841c: cc4ff0ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21983 return NULL; - c0018250: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21972 + c0018420: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21980 if (js_resize_array(ctx, (void **)&s->global_vars, - c0018252: e915 bnez a0,c0018286 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21976 + c0018422: e915 bnez a0,c0018456 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21984 hf = &s->global_vars[s->global_var_count++]; - c0018254: 11c4a783 lw a5,284(s1) - c0018258: 1284b403 ld s0,296(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21982 + c0018424: 11c4a783 lw a5,284(s1) + c0018428: 1284b403 ld s0,296(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21990 hf->var_name = JS_DupAtom(ctx, name); - c001825c: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21976 + c001842c: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21984 hf = &s->global_vars[s->global_var_count++]; - c001825e: 0017871b addiw a4,a5,1 - c0018262: 0792 slli a5,a5,0x4 - c0018264: 943e add s0,s0,a5 - c0018266: 10e4ae23 sw a4,284(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21977 + c001842e: 0017871b addiw a4,a5,1 + c0018432: 0792 slli a5,a5,0x4 + c0018434: 943e add s0,s0,a5 + c0018436: 10e4ae23 sw a4,284(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21985 hf->cpool_idx = -1; - c001826a: 57fd li a5,-1 - c001826c: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21978 + c001843a: 57fd li a5,-1 + c001843c: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21986 hf->force_init = FALSE; - c001826e: 00444783 lbu a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21982 + c001843e: 00444783 lbu a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21990 hf->var_name = JS_DupAtom(ctx, name); - c0018272: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21978 + c0018442: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21986 hf->force_init = FALSE; - c0018274: 9be1 andi a5,a5,-8 - c0018276: 00f40223 sb a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21981 + c0018444: 9be1 andi a5,a5,-8 + c0018446: 00f40223 sb a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21989 hf->scope_level = s->scope_level; - c001827a: 0e04a783 lw a5,224(s1) - c001827e: c41c sw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21982 + c001844a: 0e04a783 lw a5,224(s1) + c001844e: c41c sw a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21990 hf->var_name = JS_DupAtom(ctx, name); - c0018280: a4aef0ef jal ra,c00074ca - c0018284: c448 sw a0,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21984 -} - c0018286: 70a2 ld ra,40(sp) - c0018288: 8522 mv a0,s0 - c001828a: 7402 ld s0,32(sp) - c001828c: 64e2 ld s1,24(sp) - c001828e: 6942 ld s2,16(sp) - c0018290: 69a2 ld s3,8(sp) - c0018292: 6145 addi sp,sp,48 - c0018294: 8082 ret - -00000000c0018296 : + c0018450: 968ef0ef jal ra,c00075b8 + c0018454: c448 sw a0,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21992 +} + c0018456: 70a2 ld ra,40(sp) + c0018458: 8522 mv a0,s0 + c001845a: 7402 ld s0,32(sp) + c001845c: 64e2 ld s1,24(sp) + c001845e: 6942 ld s2,16(sp) + c0018460: 69a2 ld s3,8(sp) + c0018462: 6145 addi sp,sp,48 + c0018464: 8082 ret + +00000000c0018466 : add_req_module_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27310 -{ - c0018296: 7179 addi sp,sp,-48 - c0018298: f022 sd s0,32(sp) - c001829a: ec26 sd s1,24(sp) - c001829c: e84a sd s2,16(sp) - c001829e: f406 sd ra,40(sp) - c00182a0: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27318 +{ + c0018466: 7179 addi sp,sp,-48 + c0018468: f022 sd s0,32(sp) + c001846a: ec26 sd s1,24(sp) + c001846c: e84a sd s2,16(sp) + c001846e: f406 sd ra,40(sp) + c0018470: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27323 for(i = 0; i < m->req_module_entries_count; i++) { - c00182a2: 5198 lw a4,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27310 + c0018472: 5198 lw a4,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27318 { - c00182a4: 84aa mv s1,a0 - c00182a6: 842e mv s0,a1 - c00182a8: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27315 + c0018474: 84aa mv s1,a0 + c0018476: 842e mv s0,a1 + c0018478: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27323 for(i = 0; i < m->req_module_entries_count; i++) { - c00182aa: 4781 li a5,0 - c00182ac: 0007899b sext.w s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27315 (discriminator 1) - c00182b0: 02e9cc63 blt s3,a4,c00182e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27321 + c001847a: 4781 li a5,0 + c001847c: 0007899b sext.w s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27323 (discriminator 1) + c0018480: 02e9cc63 blt s3,a4,c00184b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27329 if (js_resize_array(ctx, (void **)&m->req_module_entries, - c00182b4: 2705 addiw a4,a4,1 - c00182b6: 02440693 addi a3,s0,36 - c00182ba: 4641 li a2,16 - c00182bc: 01840593 addi a1,s0,24 - c00182c0: 8526 mv a0,s1 - c00182c2: c4eff0ef jal ra,c0017710 - c00182c6: e129 bnez a0,c0018308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27326 + c0018484: 2705 addiw a4,a4,1 + c0018486: 02440693 addi a3,s0,36 + c001848a: 4641 li a2,16 + c001848c: 01840593 addi a1,s0,24 + c0018490: 8526 mv a0,s1 + c0018492: c4eff0ef jal ra,c00178e0 + c0018496: e129 bnez a0,c00184d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27334 rme = &m->req_module_entries[m->req_module_entries_count++]; - c00182c8: 5018 lw a4,32(s0) - c00182ca: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27327 + c0018498: 5018 lw a4,32(s0) + c001849a: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27335 rme->module_name = JS_DupAtom(ctx, module_name); - c00182cc: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27326 + c001849c: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27334 rme = &m->req_module_entries[m->req_module_entries_count++]; - c00182ce: 0017069b addiw a3,a4,1 - c00182d2: d014 sw a3,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27327 + c001849e: 0017069b addiw a3,a4,1 + c00184a2: d014 sw a3,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27335 rme->module_name = JS_DupAtom(ctx, module_name); - c00182d4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27326 + c00184a4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27334 rme = &m->req_module_entries[m->req_module_entries_count++]; - c00182d6: 00471413 slli s0,a4,0x4 - c00182da: 943e add s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27327 + c00184a6: 00471413 slli s0,a4,0x4 + c00184aa: 943e add s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27335 rme->module_name = JS_DupAtom(ctx, module_name); - c00182dc: 9eeef0ef jal ra,c00074ca - c00182e0: c008 sw a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27328 + c00184ac: 90cef0ef jal ra,c00075b8 + c00184b0: c008 sw a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27336 rme->module = NULL; - c00182e2: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27329 + c00184b2: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27337 return i; - c00182e6: a809 j c00182f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27317 - if (rme->module_name == module_name) - c00182e8: 6c14 ld a3,24(s0) - c00182ea: 00479613 slli a2,a5,0x4 - c00182ee: 0785 addi a5,a5,1 - c00182f0: 96b2 add a3,a3,a2 - c00182f2: 4294 lw a3,0(a3) - c00182f4: fb269ce3 bne a3,s2,c00182ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27330 -} - c00182f8: 70a2 ld ra,40(sp) - c00182fa: 7402 ld s0,32(sp) - c00182fc: 64e2 ld s1,24(sp) - c00182fe: 6942 ld s2,16(sp) - c0018300: 854e mv a0,s3 - c0018302: 69a2 ld s3,8(sp) - c0018304: 6145 addi sp,sp,48 - c0018306: 8082 ret + c00184b6: a809 j c00184c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27325 + if (rme->module_name == module_name) + c00184b8: 6c14 ld a3,24(s0) + c00184ba: 00479613 slli a2,a5,0x4 + c00184be: 0785 addi a5,a5,1 + c00184c0: 96b2 add a3,a3,a2 + c00184c2: 4294 lw a3,0(a3) + c00184c4: fb269ce3 bne a3,s2,c001847c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27338 +} + c00184c8: 70a2 ld ra,40(sp) + c00184ca: 7402 ld s0,32(sp) + c00184cc: 64e2 ld s1,24(sp) + c00184ce: 6942 ld s2,16(sp) + c00184d0: 854e mv a0,s3 + c00184d2: 69a2 ld s3,8(sp) + c00184d4: 6145 addi sp,sp,48 + c00184d6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27333 return -1; - c0018308: 59fd li s3,-1 - c001830a: b7fd j c00182f8 + c00184d8: 59fd li s3,-1 + c00184da: b7fd j c00184c8 -00000000c001830c : +00000000c00184dc : js_map_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47224 { - c001830c: 7175 addi sp,sp,-144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47217 + c00184dc: 7175 addi sp,sp,-144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47225 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c001830e: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47216 + c00184de: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47224 { - c0018312: e122 sd s0,128(sp) - c0018314: f0d2 sd s4,96(sp) - c0018316: ecd6 sd s5,88(sp) - c0018318: e506 sd ra,136(sp) - c001831a: fca6 sd s1,120(sp) - c001831c: f8ca sd s2,112(sp) - c001831e: f4ce sd s3,104(sp) - c0018320: e8da sd s6,80(sp) - c0018322: 8a2a mv s4,a0 - c0018324: e02e sd a1,0(sp) - c0018326: e432 sd a2,8(sp) - c0018328: 843a mv s0,a4 - c001832a: 8abe mv s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47217 + c00184e2: e122 sd s0,128(sp) + c00184e4: f0d2 sd s4,96(sp) + c00184e6: ecd6 sd s5,88(sp) + c00184e8: e506 sd ra,136(sp) + c00184ea: fca6 sd s1,120(sp) + c00184ec: f8ca sd s2,112(sp) + c00184ee: f4ce sd s3,104(sp) + c00184f0: e8da sd s6,80(sp) + c00184f2: 8a2a mv s4,a0 + c00184f4: e02e sd a1,0(sp) + c00184f6: e432 sd a2,8(sp) + c00184f8: 843a mv s0,a4 + c00184fa: 8abe mv s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47225 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c001832c: a4cfb0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47221 + c00184fc: 96afb0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47229 if (!s) - c0018330: 1c050263 beqz a0,c00184f4 - c0018334: 00843903 ld s2,8(s0) + c0018500: 1c050263 beqz a0,c00186c4 + c0018504: 00843903 ld s2,8(s0) map_normalize_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47018 if (JS_TAG_IS_FLOAT64(tag) && JS_VALUE_GET_FLOAT64(key) == 0.0) { - c0018338: 479d li a5,7 - c001833a: 00043983 ld s3,0(s0) - c001833e: 0009071b sext.w a4,s2 - c0018342: 84aa mv s1,a0 - c0018344: 00f71c63 bne a4,a5,c001835c - c0018348: f20007d3 fmv.d.x fa5,zero - c001834c: f2098753 fmv.d.x fa4,s3 - c0018350: a2f727d3 feq.d a5,fa4,fa5 - c0018354: c781 beqz a5,c001835c - c0018356: e20789d3 fmv.x.d s3,fa5 - c001835a: 4901 li s2,0 + c0018508: 479d li a5,7 + c001850a: 00043983 ld s3,0(s0) + c001850e: 0009071b sext.w a4,s2 + c0018512: 84aa mv s1,a0 + c0018514: 00f71c63 bne a4,a5,c001852c + c0018518: f20007d3 fmv.d.x fa5,zero + c001851c: f2098753 fmv.d.x fa4,s3 + c0018520: a2f727d3 feq.d a5,fa4,fa5 + c0018524: c781 beqz a5,c001852c + c0018526: e20789d3 fmv.x.d s3,fa5 + c001852a: 4901 li s2,0 js_map_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47232 if (s->is_weak && !JS_IsObject(key)) - c001835c: 409c lw a5,0(s1) - c001835e: c395 beqz a5,c0018382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47224 (discriminator 1) - c0018360: 0009079b sext.w a5,s2 - c0018364: 577d li a4,-1 - c0018366: 00e78e63 beq a5,a4,c0018382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 -} - c001836a: 640a ld s0,128(sp) - c001836c: 60aa ld ra,136(sp) - c001836e: 74e6 ld s1,120(sp) - c0018370: 7946 ld s2,112(sp) - c0018372: 79a6 ld s3,104(sp) - c0018374: 6ae6 ld s5,88(sp) - c0018376: 6b46 ld s6,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47225 + c001852c: 409c lw a5,0(s1) + c001852e: c395 beqz a5,c0018552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47232 (discriminator 1) + c0018530: 0009079b sext.w a5,s2 + c0018534: 577d li a4,-1 + c0018536: 00e78e63 beq a5,a4,c0018552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47248 +} + c001853a: 640a ld s0,128(sp) + c001853c: 60aa ld ra,136(sp) + c001853e: 74e6 ld s1,120(sp) + c0018540: 7946 ld s2,112(sp) + c0018542: 79a6 ld s3,104(sp) + c0018544: 6ae6 ld s5,88(sp) + c0018546: 6b46 ld s6,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47233 return JS_ThrowTypeErrorNotAnObject(ctx); - c0018378: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 + c0018548: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47248 } - c001837a: 7a06 ld s4,96(sp) - c001837c: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47225 + c001854a: 7a06 ld s4,96(sp) + c001854c: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47233 return JS_ThrowTypeErrorNotAnObject(ctx); - c001837e: dfafb06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47226 + c001854e: d18fb06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47234 if (magic & MAGIC_SET) - c0018382: 001afa93 andi s5,s5,1 - c0018386: 040a8763 beqz s5,c00183d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47227 + c0018552: 001afa93 andi s5,s5,1 + c0018556: 040a8763 beqz s5,c00185a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47235 value = JS_UNDEFINED; - c001838a: f002 sd zero,32(sp) - c001838c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47230 + c001855a: f002 sd zero,32(sp) + c001855c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47238 mr = map_find_record(ctx, s, key); - c001838e: 864e mv a2,s3 - c0018390: 86ca mv a3,s2 - c0018392: 85a6 mv a1,s1 - c0018394: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47229 + c001855e: 864e mv a2,s3 + c0018560: 86ca mv a3,s2 + c0018562: 85a6 mv a1,s1 + c0018564: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47237 value = argv[1]; - c0018396: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47230 + c0018566: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47238 mr = map_find_record(ctx, s, key); - c0018398: e84e sd s3,16(sp) - c001839a: ec4a sd s2,24(sp) - c001839c: 981ef0ef jal ra,c0007d1c - c00183a0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47231 + c0018568: e84e sd s3,16(sp) + c001856a: ec4a sd s2,24(sp) + c001856c: 89fef0ef jal ra,c0007e0a + c0018570: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47239 if (mr) { - c00183a2: cd0d beqz a0,c00183dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47232 + c0018572: cd0d beqz a0,c00185ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 JS_FreeValue(ctx, mr->value); - c00183a4: 652c ld a1,72(a0) - c00183a6: 6930 ld a2,80(a0) - c00183a8: 8552 mv a0,s4 - c00183aa: f8eef0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47238 + c0018574: 652c ld a1,72(a0) + c0018576: 6930 ld a2,80(a0) + c0018578: 8552 mv a0,s4 + c001857a: eacef0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47246 mr->value = JS_DupValue(ctx, value); - c00183ae: 7502 ld a0,32(sp) - c00183b0: 75a2 ld a1,40(sp) - c00183b2: abcee0ef jal ra,c000666e - c00183b6: e428 sd a0,72(s0) - c00183b8: e82c sd a1,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 -} - c00183ba: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47239 + c001857e: 7502 ld a0,32(sp) + c0018580: 75a2 ld a1,40(sp) + c0018582: 9daee0ef jal ra,c000675c + c0018586: e428 sd a0,72(s0) + c0018588: e82c sd a1,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47248 +} + c001858a: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47247 return JS_DupValue(ctx, this_val); - c00183bc: 6502 ld a0,0(sp) - c00183be: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 -} - c00183c0: 60aa ld ra,136(sp) - c00183c2: 74e6 ld s1,120(sp) - c00183c4: 7946 ld s2,112(sp) - c00183c6: 79a6 ld s3,104(sp) - c00183c8: 7a06 ld s4,96(sp) - c00183ca: 6ae6 ld s5,88(sp) - c00183cc: 6b46 ld s6,80(sp) - c00183ce: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47239 + c001858c: 6502 ld a0,0(sp) + c001858e: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47248 +} + c0018590: 60aa ld ra,136(sp) + c0018592: 74e6 ld s1,120(sp) + c0018594: 7946 ld s2,112(sp) + c0018596: 79a6 ld s3,104(sp) + c0018598: 7a06 ld s4,96(sp) + c001859a: 6ae6 ld s5,88(sp) + c001859c: 6b46 ld s6,80(sp) + c001859e: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47247 return JS_DupValue(ctx, this_val); - c00183d0: a9eee06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47229 + c00185a0: 9bcee06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47237 value = argv[1]; - c00183d4: 681c ld a5,16(s0) - c00183d6: f03e sd a5,32(sp) - c00183d8: 6c1c ld a5,24(s0) - c00183da: bf55 j c001838e + c00185a4: 681c ld a5,16(s0) + c00185a6: f03e sd a5,32(sp) + c00185a8: 6c1c ld a5,24(s0) + c00185aa: bf55 j c001855e map_add_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47117 mr = js_malloc(ctx, sizeof(*mr)); - c00183dc: 05800593 li a1,88 - c00183e0: 8552 mv a0,s4 - c00183e2: 86bfc0ef jal ra,c0014c4c - c00183e6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47110 + c00185ac: 05800593 li a1,88 + c00185b0: 8552 mv a0,s4 + c00185b2: f88fc0ef jal ra,c0014d3a + c00185b6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47118 if (!mr) - c00183e8: 10050663 beqz a0,c00184f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47112 + c00185b8: 10050663 beqz a0,c00186c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47120 mr->ref_count = 1; - c00183ec: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47113 + c00185bc: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47121 mr->map = s; - c00183ee: e504 sd s1,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47112 + c00185be: e504 sd s1,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47120 mr->ref_count = 1; - c00183f0: e11c sd a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47115 + c00185c0: e11c sd a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47123 if (s->is_weak) { - c00183f2: 409c lw a5,0(s1) - c00183f4: cbd5 beqz a5,c00184a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47118 + c00185c2: 409c lw a5,0(s1) + c00185c4: cbd5 beqz a5,c0018678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47126 mr->next_weak_ref = p->first_weak_ref; - c00183f6: 0289b703 ld a4,40(s3) - c00183fa: e918 sd a4,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47119 + c00185c6: 0289b703 ld a4,40(s3) + c00185ca: e918 sd a4,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47127 p->first_weak_ref = mr; - c00183fc: 02a9b423 sd a0,40(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47123 + c00185cc: 02a9b423 sd a0,40(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47131 mr->key = (JSValue)key; - c0018400: 03343c23 sd s3,56(s0) - c0018404: 05243023 sd s2,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47124 + c00185d0: 03343c23 sd s3,56(s0) + c00185d4: 05243023 sd s2,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47132 h = map_hash_key(ctx, key) & (s->hash_size - 1); - c0018408: 854e mv a0,s3 - c001840a: 85ca mv a1,s2 - c001840c: e0ce sd s3,64(sp) - c001840e: e4ca sd s2,72(sp) - c0018410: f09ee0ef jal ra,c0007318 - c0018414: 549c lw a5,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47125 + c00185d8: 854e mv a0,s3 + c00185da: 85ca mv a1,s2 + c00185dc: e0ce sd s3,64(sp) + c00185de: e4ca sd s2,72(sp) + c00185e0: e27ee0ef jal ra,c0007406 + c00185e4: 549c lw a5,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47133 list_add_tail(&mr->hash_link, &s->hash_table[h]); - c0018416: 02840713 addi a4,s0,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47126 + c00185e6: 02840713 addi a4,s0,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47134 list_add_tail(&mr->link, &s->records); - c001841a: 00848a93 addi s5,s1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47124 + c00185ea: 00848a93 addi s5,s1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47132 h = map_hash_key(ctx, key) & (s->hash_size - 1); - c001841e: 37fd addiw a5,a5,-1 - c0018420: 8d7d and a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47125 + c00185ee: 37fd addiw a5,a5,-1 + c00185f0: 8d7d and a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47133 list_add_tail(&mr->hash_link, &s->hash_table[h]); - c0018422: 02051693 slli a3,a0,0x20 - c0018426: 7088 ld a0,32(s1) - c0018428: 01c6d793 srli a5,a3,0x1c - c001842c: 953e add a0,a0,a5 + c00185f2: 02051693 slli a3,a0,0x20 + c00185f6: 7088 ld a0,32(s1) + c00185f8: 01c6d793 srli a5,a3,0x1c + c00185fc: 953e add a0,a0,a5 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c001842e: 6114 ld a3,0(a0) + c00185fe: 6114 ld a3,0(a0) map_add_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47134 list_add_tail(&mr->link, &s->records); - c0018430: 01840793 addi a5,s0,24 + c0018600: 01840793 addi a5,s0,24 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0018434: e698 sd a4,8(a3) + c0018604: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0018436: f414 sd a3,40(s0) + c0018606: f414 sd a3,40(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0018438: f808 sd a0,48(s0) + c0018608: f808 sd a0,48(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c001843a: e118 sd a4,0(a0) + c001860a: e118 sd a4,0(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c001843c: 6498 ld a4,8(s1) + c001860c: 6498 ld a4,8(s1) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c001843e: e71c sd a5,8(a4) + c001860e: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0018440: ec18 sd a4,24(s0) + c0018610: ec18 sd a4,24(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0018442: 03543023 sd s5,32(s0) + c0018612: 03543023 sd s5,32(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0018446: e49c sd a5,8(s1) + c0018616: e49c sd a5,8(s1) map_add_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47135 s->record_count++; - c0018448: 4c9c lw a5,24(s1) - c001844a: 0017871b addiw a4,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47128 + c0018618: 4c9c lw a5,24(s1) + c001861a: 0017871b addiw a4,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47136 if (s->record_count >= s->record_count_threshold) { - c001844e: 54dc lw a5,44(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47127 + c001861e: 54dc lw a5,44(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47135 s->record_count++; - c0018450: cc98 sw a4,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47128 + c0018620: cc98 sw a4,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47136 if (s->record_count >= s->record_count_threshold) { - c0018452: f4f76ee3 bltu a4,a5,c00183ae + c0018622: f4f76ee3 bltu a4,a5,c001857e map_hash_resize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47078 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47086 if (s->hash_size == 1) - c0018456: 549c lw a5,40(s1) - c0018458: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47079 + c0018626: 549c lw a5,40(s1) + c0018628: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47087 new_hash_size = 4; - c001845a: 4911 li s2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47078 + c001862a: 4911 li s2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47086 if (s->hash_size == 1) - c001845c: 00e78463 beq a5,a4,c0018464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47081 + c001862c: 00e78463 beq a5,a4,c0018634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47089 new_hash_size = s->hash_size * 2; - c0018460: 0017991b slliw s2,a5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47082 + c0018630: 0017991b slliw s2,a5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47090 new_hash_table = js_realloc2(ctx, s->hash_table, - c0018464: 708c ld a1,32(s1) - c0018466: 02091613 slli a2,s2,0x20 - c001846a: 9201 srli a2,a2,0x20 - c001846c: 8552 mv a0,s4 - c001846e: 1814 addi a3,sp,48 - c0018470: 0612 slli a2,a2,0x4 - c0018472: 802ff0ef jal ra,c0017474 - c0018476: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47084 + c0018634: 708c ld a1,32(s1) + c0018636: 02091613 slli a2,s2,0x20 + c001863a: 9201 srli a2,a2,0x20 + c001863c: 8552 mv a0,s4 + c001863e: 1814 addi a3,sp,48 + c0018640: 0612 slli a2,a2,0x4 + c0018642: 802ff0ef jal ra,c0017644 + c0018646: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47092 if (!new_hash_table) - c0018478: d91d beqz a0,c00183ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47086 + c0018648: d91d beqz a0,c001857e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47094 new_hash_size += slack / sizeof(*new_hash_table); - c001847a: 7742 ld a4,48(sp) - c001847c: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47088 + c001864a: 7742 ld a4,48(sp) + c001864c: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47096 for(i = 0; i < new_hash_size; i++) - c001847e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47086 + c001864e: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47094 new_hash_size += slack / sizeof(*new_hash_table); - c0018480: 8311 srli a4,a4,0x4 - c0018482: 0127073b addw a4,a4,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47088 + c0018650: 8311 srli a4,a4,0x4 + c0018652: 0127073b addw a4,a4,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47096 for(i = 0; i < new_hash_size; i++) - c0018486: 03371663 bne a4,s3,c00184b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47091 + c0018656: 03371663 bne a4,s3,c0018682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47099 list_for_each(el, &s->records) { - c001848a: 0104b903 ld s2,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47094 + c001865a: 0104b903 ld s2,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47102 h = map_hash_key(ctx, mr->key) & (new_hash_size - 1); - c001848e: fff98b1b addiw s6,s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47091 - list_for_each(el, &s->records) { - c0018492: 032a9563 bne s5,s2,c00184bc + c001865e: fff98b1b addiw s6,s3,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47099 + list_for_each(el, &s->records) { + c0018662: 032a9563 bne s5,s2,c001868c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47107 s->hash_size = new_hash_size; - c0018496: 0334a423 sw s3,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47100 + c0018666: 0334a423 sw s3,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47108 s->record_count_threshold = new_hash_size * 2; - c001849a: 0019999b slliw s3,s3,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47098 + c001866a: 0019999b slliw s3,s3,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47106 s->hash_table = new_hash_table; - c001849e: 0344b023 sd s4,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47100 + c001866e: 0344b023 sd s4,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47108 s->record_count_threshold = new_hash_size * 2; - c00184a2: 0334a623 sw s3,44(s1) - c00184a6: b721 j c00183ae + c0018672: 0334a623 sw s3,44(s1) + c0018676: b721 j c001857e map_add_record(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47129 JS_DupValue(ctx, key); - c00184a8: 854e mv a0,s3 - c00184aa: 85ca mv a1,s2 - c00184ac: 9c2ee0ef jal ra,c000666e - c00184b0: bf81 j c0018400 + c0018678: 854e mv a0,s3 + c001867a: 85ca mv a1,s2 + c001867c: 8e0ee0ef jal ra,c000675c + c0018680: bf81 j c00185d0 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c00184b2: e39c sd a5,0(a5) + c0018682: e39c sd a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c00184b4: e79c sd a5,8(a5) + c0018684: e79c sd a5,8(a5) map_hash_resize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47096 for(i = 0; i < new_hash_size; i++) - c00184b6: 2985 addiw s3,s3,1 - c00184b8: 07c1 addi a5,a5,16 - c00184ba: b7f1 j c0018486 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47093 + c0018686: 2985 addiw s3,s3,1 + c0018688: 07c1 addi a5,a5,16 + c001868a: b7f1 j c0018656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47101 if (!mr->empty) { - c00184bc: fec92783 lw a5,-20(s2) - c00184c0: e79d bnez a5,c00184ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47094 + c001868c: fec92783 lw a5,-20(s2) + c0018690: e79d bnez a5,c00186be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47102 h = map_hash_key(ctx, mr->key) & (new_hash_size - 1); - c00184c2: 02093503 ld a0,32(s2) - c00184c6: 02893583 ld a1,40(s2) - c00184ca: e4fee0ef jal ra,c0007318 - c00184ce: 016577b3 and a5,a0,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47095 + c0018692: 02093503 ld a0,32(s2) + c0018696: 02893583 ld a1,40(s2) + c001869a: d6dee0ef jal ra,c0007406 + c001869e: 016577b3 and a5,a0,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47103 list_add_tail(&mr->hash_link, &new_hash_table[h]); - c00184d2: 02079693 slli a3,a5,0x20 - c00184d6: 01c6d793 srli a5,a3,0x1c - c00184da: 97d2 add a5,a5,s4 + c00186a2: 02079693 slli a3,a5,0x20 + c00186a6: 01c6d793 srli a5,a3,0x1c + c00186aa: 97d2 add a5,a5,s4 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c00184dc: 6394 ld a3,0(a5) + c00186ac: 6394 ld a3,0(a5) map_hash_resize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47095 - c00184de: 01090713 addi a4,s2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47103 + c00186ae: 01090713 addi a4,s2,16 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c00184e2: e698 sd a4,8(a3) + c00186b2: e698 sd a4,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c00184e4: 00d93823 sd a3,16(s2) + c00186b4: 00d93823 sd a3,16(s2) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c00184e8: 00f93c23 sd a5,24(s2) + c00186b8: 00f93c23 sd a5,24(s2) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c00184ec: e398 sd a4,0(a5) + c00186bc: e398 sd a4,0(a5) map_hash_resize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47099 list_for_each(el, &s->records) { - c00184ee: 00893903 ld s2,8(s2) - c00184f2: b745 j c0018492 + c00186be: 00893903 ld s2,8(s2) + c00186c2: b745 j c0018662 js_map_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47240 (discriminator 1) -} - c00184f4: 60aa ld ra,136(sp) - c00184f6: 640a ld s0,128(sp) - c00184f8: 74e6 ld s1,120(sp) - c00184fa: 7946 ld s2,112(sp) - c00184fc: 79a6 ld s3,104(sp) - c00184fe: 7a06 ld s4,96(sp) - c0018500: 6ae6 ld s5,88(sp) - c0018502: 6b46 ld s6,80(sp) - c0018504: 4501 li a0,0 - c0018506: 4599 li a1,6 - c0018508: 6149 addi sp,sp,144 - c001850a: 8082 ret - -00000000c001850c : +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47248 (discriminator 1) +} + c00186c4: 60aa ld ra,136(sp) + c00186c6: 640a ld s0,128(sp) + c00186c8: 74e6 ld s1,120(sp) + c00186ca: 7946 ld s2,112(sp) + c00186cc: 79a6 ld s3,104(sp) + c00186ce: 7a06 ld s4,96(sp) + c00186d0: 6ae6 ld s5,88(sp) + c00186d2: 6b46 ld s6,80(sp) + c00186d4: 4501 li a0,0 + c00186d6: 4599 li a1,6 + c00186d8: 6149 addi sp,sp,144 + c00186da: 8082 ret + +00000000c00186dc : push_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21799 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21807 static int push_scope(JSParseState *s) { - c001850c: 7139 addi sp,sp,-64 - c001850e: ec4e sd s3,24(sp) - c0018510: fc06 sd ra,56(sp) - c0018512: f822 sd s0,48(sp) - c0018514: f426 sd s1,40(sp) - c0018516: f04a sd s2,32(sp) - c0018518: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21800 + c00186dc: 7139 addi sp,sp,-64 + c00186de: ec4e sd s3,24(sp) + c00186e0: fc06 sd ra,56(sp) + c00186e2: f822 sd s0,48(sp) + c00186e4: f426 sd s1,40(sp) + c00186e6: f04a sd s2,32(sp) + c00186e8: e852 sd s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21808 if (s->cur_func) { - c001851a: 7520 ld s0,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21831 + c00186ea: 7520 ld s0,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21839 return 0; - c001851c: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21800 + c00186ec: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21808 if (s->cur_func) { - c001851e: c455 beqz s0,c00185ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21802 + c00186ee: c455 beqz s0,c001879a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21810 int scope = fd->scope_count; - c0018520: 0ec42983 lw s3,236(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21804 + c00186f0: 0ec42983 lw s3,236(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21812 if ((fd->scope_count + 1) > fd->scope_size) { - c0018524: 0e842603 lw a2,232(s0) - c0018528: 8a2a mv s4,a0 - c001852a: 0019869b addiw a3,s3,1 - c001852e: 04d65a63 bge a2,a3,c0018582 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21809 + c00186f4: 0e842603 lw a2,232(s0) + c00186f8: 8a2a mv s4,a0 + c00186fa: 0019869b addiw a3,s3,1 + c00186fe: 04d65a63 bge a2,a3,c0018752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21817 new_size = max_int(fd->scope_count + 1, fd->scope_size * 3 / 2); - c0018532: 478d li a5,3 - c0018534: 02c787bb mulw a5,a5,a2 - c0018538: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21810 + c0018702: 478d li a5,3 + c0018704: 02c787bb mulw a5,a5,a2 + c0018708: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21818 if (fd->scopes == fd->def_scope_array) { - c001853a: 786c ld a1,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21809 + c001870a: 786c ld a1,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21817 new_size = max_int(fd->scope_count + 1, fd->scope_size * 3 / 2); - c001853c: 02c7c63b divw a2,a5,a2 - c0018540: 87b2 mv a5,a2 - c0018542: 00d65363 bge a2,a3,c0018548 - c0018546: 87b6 mv a5,a3 - c0018548: 0007891b sext.w s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21810 + c001870c: 02c7c63b divw a2,a5,a2 + c0018710: 87b2 mv a5,a2 + c0018712: 00d65363 bge a2,a3,c0018718 + c0018716: 87b6 mv a5,a3 + c0018718: 0007891b sext.w s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21818 if (fd->scopes == fd->def_scope_array) { - c001854c: 0f840793 addi a5,s0,248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21811 + c001871c: 0f840793 addi a5,s0,248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21819 new_buf = js_realloc2(s->ctx, NULL, new_size * sizeof(*fd->scopes), &slack); - c0018550: 000a3503 ld a0,0(s4) - c0018554: 00391613 slli a2,s2,0x3 - c0018558: 0034 addi a3,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21810 + c0018720: 000a3503 ld a0,0(s4) + c0018724: 00391613 slli a2,s2,0x3 + c0018728: 0034 addi a3,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21818 if (fd->scopes == fd->def_scope_array) { - c001855a: 06f59363 bne a1,a5,c00185c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21811 + c001872a: 06f59363 bne a1,a5,c0018790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21819 new_buf = js_realloc2(s->ctx, NULL, new_size * sizeof(*fd->scopes), &slack); - c001855e: 4581 li a1,0 - c0018560: f15fe0ef jal ra,c0017474 - c0018564: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21812 + c001872e: 4581 li a1,0 + c0018730: f15fe0ef jal ra,c0017644 + c0018734: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21820 if (!new_buf) - c0018566: c12d beqz a0,c00185c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21814 + c0018736: c12d beqz a0,c0018798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21822 memcpy(new_buf, fd->scopes, fd->scope_count * sizeof(*fd->scopes)); - c0018568: 0ec42603 lw a2,236(s0) - c001856c: 786c ld a1,240(s0) - c001856e: 060e slli a2,a2,0x3 - c0018570: 46a3e0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21820 + c0018738: 0ec42603 lw a2,236(s0) + c001873c: 786c ld a1,240(s0) + c001873e: 060e slli a2,a2,0x3 + c0018740: 46a3e0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21828 new_size += slack / sizeof(*new_buf); - c0018574: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21821 + c0018744: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21829 fd->scopes = new_buf; - c0018576: f864 sd s1,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21820 + c0018746: f864 sd s1,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21828 new_size += slack / sizeof(*new_buf); - c0018578: 838d srli a5,a5,0x3 - c001857a: 012787bb addw a5,a5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21822 + c0018748: 838d srli a5,a5,0x3 + c001874a: 012787bb addw a5,a5,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21830 fd->scope_size = new_size; - c001857e: 0ef42423 sw a5,232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21824 + c001874e: 0ef42423 sw a5,232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21832 fd->scope_count++; - c0018582: 0ec42783 lw a5,236(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21825 + c0018752: 0ec42783 lw a5,236(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21833 fd->scopes[scope].parent = fd->scope_level; - c0018586: 7878 ld a4,240(s0) - c0018588: 0e042683 lw a3,224(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21824 + c0018756: 7878 ld a4,240(s0) + c0018758: 0e042683 lw a3,224(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21832 fd->scope_count++; - c001858c: 2785 addiw a5,a5,1 - c001858e: 0ef42623 sw a5,236(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21825 + c001875c: 2785 addiw a5,a5,1 + c001875e: 0ef42623 sw a5,236(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21833 fd->scopes[scope].parent = fd->scope_level; - c0018592: 00399793 slli a5,s3,0x3 - c0018596: 973e add a4,a4,a5 - c0018598: c314 sw a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21826 + c0018762: 00399793 slli a5,s3,0x3 + c0018766: 973e add a4,a4,a5 + c0018768: c314 sw a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21834 fd->scopes[scope].first = fd->scope_first; - c001859a: 7878 ld a4,240(s0) - c001859c: 0e442683 lw a3,228(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21827 + c001876a: 7878 ld a4,240(s0) + c001876c: 0e442683 lw a3,228(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21835 emit_op(s, OP_enter_scope); - c00185a0: 0b400593 li a1,180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21826 + c0018770: 0b400593 li a1,180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21834 fd->scopes[scope].first = fd->scope_first; - c00185a4: 97ba add a5,a5,a4 - c00185a6: c3d4 sw a3,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21827 + c0018774: 97ba add a5,a5,a4 + c0018776: c3d4 sw a3,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21835 emit_op(s, OP_enter_scope); - c00185a8: 8552 mv a0,s4 - c00185aa: e93ec0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21828 + c0018778: 8552 mv a0,s4 + c001877a: db1ec0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21836 emit_u16(s, scope); - c00185ae: 03099593 slli a1,s3,0x30 - c00185b2: 91c1 srli a1,a1,0x30 - c00185b4: 8552 mv a0,s4 - c00185b6: d55ec0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21829 + c001877e: 03099593 slli a1,s3,0x30 + c0018782: 91c1 srli a1,a1,0x30 + c0018784: 8552 mv a0,s4 + c0018786: c73ec0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21837 return fd->scope_level = scope; - c00185ba: 0f342023 sw s3,224(s0) - c00185be: a031 j c00185ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21816 + c001878a: 0f342023 sw s3,224(s0) + c001878e: a031 j c001879a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21824 new_buf = js_realloc2(s->ctx, fd->scopes, new_size * sizeof(*fd->scopes), &slack); - c00185c0: eb5fe0ef jal ra,c0017474 - c00185c4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21817 + c0018790: eb5fe0ef jal ra,c0017644 + c0018794: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21825 if (!new_buf) - c00185c6: f55d bnez a0,c0018574 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21813 + c0018796: f55d bnez a0,c0018744 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21821 return -1; - c00185c8: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21832 + c0018798: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21840 } - c00185ca: 70e2 ld ra,56(sp) - c00185cc: 7442 ld s0,48(sp) - c00185ce: 74a2 ld s1,40(sp) - c00185d0: 7902 ld s2,32(sp) - c00185d2: 6a42 ld s4,16(sp) - c00185d4: 854e mv a0,s3 - c00185d6: 69e2 ld s3,24(sp) - c00185d8: 6121 addi sp,sp,64 - c00185da: 8082 ret - -00000000c00185dc : + c001879a: 70e2 ld ra,56(sp) + c001879c: 7442 ld s0,48(sp) + c001879e: 74a2 ld s1,40(sp) + c00187a0: 7902 ld s2,32(sp) + c00187a2: 6a42 ld s4,16(sp) + c00187a4: 854e mv a0,s3 + c00187a6: 69e2 ld s3,24(sp) + c00187a8: 6121 addi sp,sp,64 + c00187aa: 8082 ret + +00000000c00187ac : js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10285 -{ - c00185dc: 7151 addi sp,sp,-240 - c00185de: f1a2 sd s0,224(sp) - c00185e0: e1d2 sd s4,192(sp) - c00185e2: fd56 sd s5,184(sp) - c00185e4: f55e sd s7,168(sp) - c00185e6: e96a sd s10,144(sp) - c00185e8: 843a mv s0,a4 - c00185ea: f586 sd ra,232(sp) - c00185ec: eda6 sd s1,216(sp) - c00185ee: e9ca sd s2,208(sp) - c00185f0: e5ce sd s3,200(sp) - c00185f2: f95a sd s6,176(sp) - c00185f4: f162 sd s8,160(sp) - c00185f6: ed66 sd s9,152(sp) - c00185f8: e56e sd s11,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10293 +{ + c00187ac: 7151 addi sp,sp,-240 + c00187ae: f1a2 sd s0,224(sp) + c00187b0: e1d2 sd s4,192(sp) + c00187b2: fd56 sd s5,184(sp) + c00187b4: f55e sd s7,168(sp) + c00187b6: e96a sd s10,144(sp) + c00187b8: 843a mv s0,a4 + c00187ba: f586 sd ra,232(sp) + c00187bc: eda6 sd s1,216(sp) + c00187be: e9ca sd s2,208(sp) + c00187c0: e5ce sd s3,200(sp) + c00187c2: f95a sd s6,176(sp) + c00187c4: f162 sd s8,160(sp) + c00187c6: ed66 sd s9,152(sp) + c00187c8: e56e sd s11,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10304 sep = (flags & ATOD_ACCEPT_UNDERSCORES) ? '_' : 256; - c00185fa: 02077713 andi a4,a4,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10285 + c00187ca: 02077713 andi a4,a4,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10293 { - c00185fe: 8aaa mv s5,a0 - c0018600: 8bb2 mv s7,a2 - c0018602: 8d36 mv s10,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10296 + c00187ce: 8aaa mv s5,a0 + c00187d0: 8bb2 mv s7,a2 + c00187d2: 8d36 mv s10,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10304 sep = (flags & ATOD_ACCEPT_UNDERSCORES) ? '_' : 256; - c0018604: 10000a13 li s4,256 - c0018608: c319 beqz a4,c001860e - c001860a: 05f00a13 li s4,95 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10302 (discriminator 4) + c00187d4: 10000a13 li s4,256 + c00187d8: c319 beqz a4,c00187de + c00187da: 05f00a13 li s4,95 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10310 (discriminator 4) if (p[0] == '+') { - c001860e: 0005c703 lbu a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10299 (discriminator 4) + c00187de: 0005c703 lbu a4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10307 (discriminator 4) p = str; - c0018612: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10302 (discriminator 4) + c00187e2: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10310 (discriminator 4) if (p[0] == '+') { - c0018614: 02b00693 li a3,43 - c0018618: 06d71463 bne a4,a3,c0018680 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10303 + c00187e4: 02b00693 li a3,43 + c00187e8: 06d71463 bne a4,a3,c0018850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10311 p++; - c001861c: 0585 addi a1,a1,1 - c001861e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10305 + c00187ec: 0585 addi a1,a1,1 + c00187ee: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10313 if (!(flags & ATOD_ACCEPT_PREFIX_AFTER_SIGN)) - c0018620: 40047993 andi s3,s0,1024 - c0018624: 06098863 beqz s3,c0018694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10301 + c00187f0: 40047993 andi s3,s0,1024 + c00187f4: 06098863 beqz s3,c0018864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10309 is_neg = 0; - c0018628: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10314 + c00187f8: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10322 if (p[0] == '0') { - c001862a: 6762 ld a4,24(sp) - c001862c: 03000693 li a3,48 - c0018630: 00074603 lbu a2,0(a4) - c0018634: 06d61063 bne a2,a3,c0018694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10315 + c00187fa: 6762 ld a4,24(sp) + c00187fc: 03000693 li a3,48 + c0018800: 00074603 lbu a2,0(a4) + c0018804: 06d61063 bne a2,a3,c0018864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10323 if ((p[1] == 'x' || p[1] == 'X') && - c0018638: 00174683 lbu a3,1(a4) - c001863c: 05800593 li a1,88 - c0018640: 0df6f613 andi a2,a3,223 - c0018644: 0cb61c63 bne a2,a1,c001871c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10315 (discriminator 3) - c0018648: fefd7913 andi s2,s10,-17 - c001864c: 38091263 bnez s2,c00189d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10317 + c0018808: 00174683 lbu a3,1(a4) + c001880c: 05800593 li a1,88 + c0018810: 0df6f613 andi a2,a3,223 + c0018814: 0cb61c63 bne a2,a1,c00188ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10323 (discriminator 3) + c0018818: fefd7913 andi s2,s10,-17 + c001881c: 38091263 bnez s2,c0018ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10325 p += 2; - c0018650: 0709 addi a4,a4,2 - c0018652: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10318 + c0018820: 0709 addi a4,a4,2 + c0018822: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10326 radix = 16; - c0018654: 4d41 li s10,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10342 + c0018824: 4d41 li s10,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10350 if (to_digit((uint8_t)*p) >= radix) - c0018656: 6762 ld a4,24(sp) - c0018658: 00074503 lbu a0,0(a4) - c001865c: c9beb0ef jal ra,c00042f6 - c0018660: 39a54c63 blt a0,s10,c00189f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10292 + c0018826: 6762 ld a4,24(sp) + c0018828: 00074503 lbu a0,0(a4) + c001882c: acbeb0ef jal ra,c00042f6 + c0018830: 39a54c63 blt a0,s10,c0018bc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10300 BOOL buf_allocated = FALSE; - c0018664: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10510 + c0018834: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10518 val = JS_NAN; - c0018666: 0005c797 auipc a5,0x5c - c001866a: 1227b787 fld fa5,290(a5) # c0074788 <_erodata+0x8> - c001866e: 12f7f7d3 fmul.d fa5,fa5,fa5 - c0018672: f2000753 fmv.d.x fa4,zero - c0018676: 441d li s0,7 - c0018678: 12e7f7d3 fmul.d fa5,fa5,fa4 - c001867c: a43e fsd fa5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10511 + c0018836: 0005c797 auipc a5,0x5c + c001883a: 1b27b787 fld fa5,434(a5) # c00749e8 <_erodata+0x8> + c001883e: 12f7f7d3 fmul.d fa5,fa5,fa5 + c0018842: f2000753 fmv.d.x fa4,zero + c0018846: 441d li s0,7 + c0018848: 12e7f7d3 fmul.d fa5,fa5,fa4 + c001884c: a43e fsd fa5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10519 goto done; - c001867e: a4e5 j c0018966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10307 + c001884e: a4e5 j c0018b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10315 } else if (p[0] == '-') { - c0018680: 02d00693 li a3,45 - c0018684: fad712e3 bne a4,a3,c0018628 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10308 + c0018850: 02d00693 li a3,45 + c0018854: fad712e3 bne a4,a3,c00187f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10316 p++; - c0018688: 0585 addi a1,a1,1 - c001868a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10311 + c0018858: 0585 addi a1,a1,1 + c001885a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 if (!(flags & ATOD_ACCEPT_PREFIX_AFTER_SIGN)) - c001868c: 40047713 andi a4,s0,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10310 + c001885c: 40047713 andi a4,s0,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10318 is_neg = 1; - c0018690: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10311 + c0018860: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 if (!(flags & ATOD_ACCEPT_PREFIX_AFTER_SIGN)) - c0018692: ff41 bnez a4,c001862a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10347 + c0018862: ff41 bnez a4,c00187fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10355 if (!(flags & ATOD_INT_ONLY) && - c0018694: 18147713 andi a4,s0,385 - c0018698: 10071063 bnez a4,c0018798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10353 + c0018864: 18147713 andi a4,s0,385 + c0018868: 10071063 bnez a4,c0018968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10361 strstart(p, "Infinity", &p)) { - c001869c: 6562 ld a0,24(sp) - c001869e: 0830 addi a2,sp,24 - c00186a0: 00046597 auipc a1,0x46 - c00186a4: ac058593 addi a1,a1,-1344 # c005e160 - c00186a8: 4c62f0ef jal ra,c0047b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10352 + c001886c: 6562 ld a0,24(sp) + c001886e: 0830 addi a2,sp,24 + c0018870: 00046597 auipc a1,0x46 + c0018874: b5058593 addi a1,a1,-1200 # c005e3c0 + c0018878: 4c62f0ef jal ra,c0047d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10360 ) && - c00186ac: c575 beqz a0,c0018798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10365 + c001887c: c575 beqz a0,c0018968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10373 double d = 1.0 / 0.0; - c00186ae: f2000753 fmv.d.x fa4,zero - c00186b2: 0005c797 auipc a5,0x5c - c00186b6: 0e67b787 fld fa5,230(a5) # c0074798 <_erodata+0x18> - c00186ba: 1ae7f7d3 fdiv.d fa5,fa5,fa4 - c00186be: e20787d3 fmv.x.d a5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10366 + c001887e: f2000753 fmv.d.x fa4,zero + c0018882: 0005c797 auipc a5,0x5c + c0018886: 1767b787 fld fa5,374(a5) # c00749f8 <_erodata+0x18> + c001888a: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c001888e: e20787d3 fmv.x.d a5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10374 if (is_neg) - c00186c2: 00098663 beqz s3,c00186ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10367 + c0018892: 00098663 beqz s3,c001889e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10375 d = -d; - c00186c6: 22f797d3 fneg.d fa5,fa5 - c00186ca: e20787d3 fmv.x.d a5,fa5 + c0018896: 22f797d3 fneg.d fa5,fa5 + c001889a: e20787d3 fmv.x.d a5,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c00186ce: f20787d3 fmv.d.x fa5,a5 - c00186d2: c20796d3 fcvt.w.d a3,fa5,rtz + c001889e: f20787d3 fmv.d.x fa5,a5 + c00188a2: c20796d3 fcvt.w.d a3,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c00186d6: d20687d3 fcvt.d.w fa5,a3 + c00188a6: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c00186da: 0006871b sext.w a4,a3 + c00188aa: 0006871b sext.w a4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c00186de: e2078653 fmv.x.d a2,fa5 - c00186e2: 0af61663 bne a2,a5,c001878e + c00188ae: e2078653 fmv.x.d a2,fa5 + c00188b2: 0af61663 bne a2,a5,c001895e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c00186e6: c282 sw zero,68(sp) - c00186e8: 4401 li s0,0 + c00188b6: c282 sw zero,68(sp) + c00188b8: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c00186ea: c0ba sw a4,64(sp) - c00186ec: 2786 fld fa5,64(sp) - c00186ee: a43e fsd fa5,8(sp) + c00188ba: c0ba sw a4,64(sp) + c00188bc: 2786 fld fa5,64(sp) + c00188be: a43e fsd fa5,8(sp) js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10514 if (pp) - c00186f0: 000b8563 beqz s7,c00186fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10507 - *pp = p; - c00186f4: 67e2 ld a5,24(sp) - c00186f6: 00fbb023 sd a5,0(s7) + c00188c0: 000b8563 beqz s7,c00188ca /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10515 -} - c00186fa: 70ae ld ra,232(sp) - c00186fc: 85a2 mv a1,s0 - c00186fe: 740e ld s0,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10508 + *pp = p; + c00188c4: 67e2 ld a5,24(sp) + c00188c6: 00fbb023 sd a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10523 +} + c00188ca: 70ae ld ra,232(sp) + c00188cc: 85a2 mv a1,s0 + c00188ce: 740e ld s0,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10516 return val; - c0018700: 6522 ld a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10515 -} - c0018702: 64ee ld s1,216(sp) - c0018704: 694e ld s2,208(sp) - c0018706: 69ae ld s3,200(sp) - c0018708: 6a0e ld s4,192(sp) - c001870a: 7aea ld s5,184(sp) - c001870c: 7b4a ld s6,176(sp) - c001870e: 7baa ld s7,168(sp) - c0018710: 7c0a ld s8,160(sp) - c0018712: 6cea ld s9,152(sp) - c0018714: 6d4a ld s10,144(sp) - c0018716: 6daa ld s11,136(sp) - c0018718: 616d addi sp,sp,240 - c001871a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 + c00188d0: 6522 ld a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10523 +} + c00188d2: 64ee ld s1,216(sp) + c00188d4: 694e ld s2,208(sp) + c00188d6: 69ae ld s3,200(sp) + c00188d8: 6a0e ld s4,192(sp) + c00188da: 7aea ld s5,184(sp) + c00188dc: 7b4a ld s6,176(sp) + c00188de: 7baa ld s7,168(sp) + c00188e0: 7c0a ld s8,160(sp) + c00188e2: 6cea ld s9,152(sp) + c00188e4: 6d4a ld s10,144(sp) + c00188e6: 6daa ld s11,136(sp) + c00188e8: 616d addi sp,sp,240 + c00188ea: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10327 } else if ((p[1] == 'o' || p[1] == 'O') && - c001871c: 06f00593 li a1,111 - c0018720: 2ab68463 beq a3,a1,c00189c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 (discriminator 2) - c0018724: 04f00593 li a1,79 - c0018728: 00b69d63 bne a3,a1,c0018742 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 (discriminator 3) - c001872c: 2a0d1663 bnez s10,c00189d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10320 + c00188ec: 06f00593 li a1,111 + c00188f0: 2ab68463 beq a3,a1,c0018b98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10327 (discriminator 2) + c00188f4: 04f00593 li a1,79 + c00188f8: 00b69d63 bne a3,a1,c0018912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10327 (discriminator 3) + c00188fc: 2a0d1663 bnez s10,c0018ba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10328 radix == 0 && (flags & ATOD_ACCEPT_BIN_OCT)) { - c0018730: 00447593 andi a1,s0,4 - c0018734: 38058b63 beqz a1,c0018aca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10321 + c0018900: 00447593 andi a1,s0,4 + c0018904: 38058b63 beqz a1,c0018c9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10329 p += 2; - c0018738: 0709 addi a4,a4,2 - c001873a: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10297 + c0018908: 0709 addi a4,a4,2 + c001890a: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10305 has_legacy_octal = FALSE; - c001873c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10337 + c001890c: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10345 radix = 8; - c001873e: 4d21 li s10,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10328 + c001890e: 4d21 li s10,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10336 radix == 0 && (flags & ATOD_ACCEPT_LEGACY_OCTAL)) { - c0018740: bf19 j c0018656 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10323 (discriminator 2) + c0018910: bf19 j c0018826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10331 (discriminator 2) } else if ((p[1] == 'b' || p[1] == 'B') && - c0018742: 04200593 li a1,66 - c0018746: 28b61963 bne a2,a1,c00189d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10323 (discriminator 3) - c001874a: 280d1163 bnez s10,c00189cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10324 + c0018912: 04200593 li a1,66 + c0018916: 28b61963 bne a2,a1,c0018ba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10331 (discriminator 3) + c001891a: 280d1163 bnez s10,c0018b9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10332 radix == 0 && (flags & ATOD_ACCEPT_BIN_OCT)) { - c001874e: 00447793 andi a5,s0,4 - c0018752: c7a9 beqz a5,c001879c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10325 + c001891e: 00447793 andi a5,s0,4 + c0018922: c7a9 beqz a5,c001896c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10333 p += 2; - c0018754: 0709 addi a4,a4,2 - c0018756: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10297 + c0018924: 0709 addi a4,a4,2 + c0018926: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10305 has_legacy_octal = FALSE; - c0018758: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10326 + c0018928: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10334 radix = 2; - c001875a: 4d09 li s10,2 - c001875c: bded j c0018656 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10332 + c001892a: 4d09 li s10,2 + c001892c: bded j c0018826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10340 for (i = 1; (p[i] >= '0' && p[i] <= '7'); i++) - c001875e: 2605 addiw a2,a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10332 (discriminator 1) - c0018760: 00c707b3 add a5,a4,a2 - c0018764: 0007c783 lbu a5,0(a5) - c0018768: fd07869b addiw a3,a5,-48 - c001876c: 0ff6f693 zext.b a3,a3 - c0018770: fed5f7e3 bgeu a1,a3,c001875e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10334 + c001892e: 2605 addiw a2,a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10340 (discriminator 1) + c0018930: 00c707b3 add a5,a4,a2 + c0018934: 0007c783 lbu a5,0(a5) + c0018938: fd07869b addiw a3,a5,-48 + c001893c: 0ff6f693 zext.b a3,a3 + c0018940: fed5f7e3 bgeu a1,a3,c001892e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10342 if (p[i] == '8' || p[i] == '9') - c0018774: fc87879b addiw a5,a5,-56 - c0018778: 0ff7f793 zext.b a5,a5 - c001877c: 4685 li a3,1 - c001877e: 02f6f163 bgeu a3,a5,c00187a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10336 + c0018944: fc87879b addiw a5,a5,-56 + c0018948: 0ff7f793 zext.b a5,a5 + c001894c: 4685 li a3,1 + c001894e: 02f6f163 bgeu a3,a5,c0018970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10344 p += 1; - c0018782: 0705 addi a4,a4,1 - c0018784: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10330 + c0018952: 0705 addi a4,a4,1 + c0018954: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10338 has_legacy_octal = TRUE; - c0018786: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10331 + c0018956: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10339 sep = 256; - c0018788: 10000a13 li s4,256 - c001878c: bf4d j c001873e + c0018958: 10000a13 li s4,256 + c001895c: bf4d j c001890e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001878e: e0be sd a5,64(sp) - c0018790: 0007871b sext.w a4,a5 + c001895e: e0be sd a5,64(sp) + c0018960: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0018794: 441d li s0,7 - c0018796: bf91 j c00186ea + c0018964: 441d li s0,7 + c0018966: bf91 j c00188ba js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10373 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10381 if (radix == 0) - c0018798: 220d1a63 bnez s10,c00189cc - c001879c: 4901 li s2,0 - c001879e: aca1 j c00189f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10330 + c0018968: 220d1a63 bnez s10,c0018b9c + c001896c: 4901 li s2,0 + c001896e: aca1 j c0018bc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10338 has_legacy_octal = TRUE; - c00187a0: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10331 + c0018970: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10339 sep = 256; - c00187a2: 10000a13 li s4,256 - c00187a6: ac81 j c00189f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10381 + c0018972: 10000a13 li s4,256 + c0018976: ac81 j c0018bc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10389 p++; - c00187a8: 001d8713 addi a4,s11,1 - c00187ac: ec3a sd a4,24(sp) - c00187ae: ac81 j c00189fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10391 + c0018978: 001d8713 addi a4,s11,1 + c001897c: ec3a sd a4,24(sp) + c001897e: ac81 j c0018bce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10399 p++; - c00187b0: 0c05 addi s8,s8,1 - c00187b2: ec62 sd s8,24(sp) - c00187b4: ac5d j c0018a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10395 + c0018980: 0c05 addi s8,s8,1 + c0018982: ec62 sd s8,24(sp) + c0018984: ac5d j c0018c3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10403 ((*p == 'p' || *p == 'P') && (radix == 2 || radix == 8 || radix == 16)))) { - c00187b6: 05000613 li a2,80 - c00187ba: 00c71b63 bne a4,a2,c00187d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10395 (discriminator 1) - c00187be: 4709 li a4,2 - c00187c0: 2eed0463 beq s10,a4,c0018aa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10395 (discriminator 2) - c00187c4: ff8d071b addiw a4,s10,-8 - c00187c8: 9b5d andi a4,a4,-9 - c00187ca: 2701 sext.w a4,a4 - c00187cc: 2c070e63 beqz a4,c0018aa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10410 + c0018986: 05000613 li a2,80 + c001898a: 00c71b63 bne a4,a2,c00189a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10403 (discriminator 1) + c001898e: 4709 li a4,2 + c0018990: 2eed0463 beq s10,a4,c0018c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10403 (discriminator 2) + c0018994: ff8d071b addiw a4,s10,-8 + c0018998: 9b5d andi a4,a4,-9 + c001899a: 2701 sext.w a4,a4 + c001899c: 2c070e63 beqz a4,c0018c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10418 if (p == p_start) - c00187d0: 6c62 ld s8,24(sp) - c00187d2: e96c09e3 beq s8,s6,c0018664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10415 + c00189a0: 6c62 ld s8,24(sp) + c00189a2: e96c09e3 beq s8,s6,c0018834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10423 len = p - p_start; - c00187d6: 416c0c3b subw s8,s8,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10416 + c00189a6: 416c0c3b subw s8,s8,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10424 if (unlikely((len + 2) > sizeof(buf1))) { - c00187da: 002c059b addiw a1,s8,2 - c00187de: 04000713 li a4,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10414 + c00189aa: 002c059b addiw a1,s8,2 + c00189ae: 04000713 li a4,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10422 buf_allocated = FALSE; - c00187e2: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10413 + c00189b2: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10421 buf = buf1; - c00187e4: 0084 addi s1,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10416 + c00189b4: 0084 addi s1,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10424 if (unlikely((len + 2) > sizeof(buf1))) { - c00187e6: 04b77f63 bgeu a4,a1,c0018844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10417 + c00189b6: 04b77f63 bgeu a4,a1,c0018a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10425 buf = js_malloc_rt(ctx->rt, len + 2); /* no exception raised */ - c00187ea: 018ab503 ld a0,24(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10420 + c00189ba: 018ab503 ld a0,24(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10428 buf_allocated = TRUE; - c00187ee: 4a05 li s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10417 + c00189be: 4a05 li s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10425 buf = js_malloc_rt(ctx->rt, len + 2); /* no exception raised */ - c00187f0: b72ee0ef jal ra,c0006b62 - c00187f4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10418 + c00189c0: a90ee0ef jal ra,c0006c50 + c00189c4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10426 if (!buf) - c00187f6: e539 bnez a0,c0018844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10513 + c00189c6: e539 bnez a0,c0018a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10521 val = JS_ThrowOutOfMemory(ctx); - c00187f8: 8556 mv a0,s5 - c00187fa: c22fc0ef jal ra,c0014c1c - c00187fe: e42a sd a0,8(sp) - c0018800: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10504 + c00189c8: 8556 mv a0,s5 + c00189ca: b40fc0ef jal ra,c0014d0a + c00189ce: e42a sd a0,8(sp) + c00189d0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10512 if (buf_allocated) - c0018802: b5fd j c00186f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10400 + c00189d2: b5fd j c00188c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10408 } else if (*p1 == '-') { - c0018804: 02d00593 li a1,45 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10401 + c00189d4: 02d00593 li a1,45 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10409 p1++; - c0018808: 00268713 addi a4,a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10400 + c00189d8: 00268713 addi a4,a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10408 } else if (*p1 == '-') { - c001880c: 2ab60663 beq a2,a1,c0018ab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10396 - const char *p1 = p + 1; - c0018810: 00168713 addi a4,a3,1 - c0018814: a455 j c0018ab8 + c00189dc: 2ab60663 beq a2,a1,c0018c88 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10404 + const char *p1 = p + 1; + c00189e0: 00168713 addi a4,a3,1 + c00189e4: a455 j c0018c88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10412 p = p1 + 1; - c0018816: 0705 addi a4,a4,1 - c0018818: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10405 + c00189e6: 0705 addi a4,a4,1 + c00189e8: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10413 while (is_digit((uint8_t)*p) || (*p == sep && is_digit((uint8_t)p[1]))) - c001881a: 4625 li a2,9 - c001881c: 6762 ld a4,24(sp) - c001881e: 00074683 lbu a3,0(a4) - c0018822: fd06859b addiw a1,a3,-48 - c0018826: 00b67a63 bgeu a2,a1,c001883a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10405 (discriminator 1) - c001882a: 29469e63 bne a3,s4,c0018ac6 + c00189ea: 4625 li a2,9 + c00189ec: 6762 ld a4,24(sp) + c00189ee: 00074683 lbu a3,0(a4) + c00189f2: fd06859b addiw a1,a3,-48 + c00189f6: 00b67a63 bgeu a2,a1,c0018a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10413 (discriminator 1) + c00189fa: 29469e63 bne a3,s4,c0018c96 is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 (discriminator 2) return c >= '0' && c <= '9'; - c001882e: 00174683 lbu a3,1(a4) + c00189fe: 00174683 lbu a3,1(a4) js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10405 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10413 (discriminator 2) while (is_digit((uint8_t)*p) || (*p == sep && is_digit((uint8_t)p[1]))) - c0018832: fd06869b addiw a3,a3,-48 - c0018836: 28d66863 bltu a2,a3,c0018ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10406 + c0018a02: fd06869b addiw a3,a3,-48 + c0018a06: 28d66863 bltu a2,a3,c0018c96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10414 p++; - c001883a: 0705 addi a4,a4,1 - c001883c: ec3a sd a4,24(sp) - c001883e: bff9 j c001881c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10375 + c0018a0a: 0705 addi a4,a4,1 + c0018a0c: ec3a sd a4,24(sp) + c0018a0e: bff9 j c00189ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10383 is_float = FALSE; - c0018840: 4c81 li s9,0 - c0018842: b779 j c00187d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10424 + c0018a10: 4c81 li s9,0 + c0018a12: b779 j c00189a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10432 if (is_neg) - c0018844: 00098663 beqz s3,c0018850 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10425 + c0018a14: 00098663 beqz s3,c0018a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10433 buf[j++] = '-'; - c0018848: 02d00713 li a4,45 - c001884c: 00e48023 sb a4,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10420 (discriminator 1) + c0018a18: 02d00713 li a4,45 + c0018a1c: 00e48023 sb a4,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10428 (discriminator 1) buf_allocated = TRUE; - c0018850: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10427 (discriminator 1) + c0018a20: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10435 (discriminator 1) if (p_start[i] != '_') - c0018852: 05f00593 li a1,95 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10426 (discriminator 1) + c0018a22: 05f00593 li a1,95 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10434 (discriminator 1) for (i = 0; i < len; i++) { - c0018856: 0007061b sext.w a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10428 (discriminator 1) + c0018a26: 0007061b sext.w a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10436 (discriminator 1) buf[j++] = p_start[i]; - c001885a: 013486b3 add a3,s1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10426 (discriminator 1) + c0018a2a: 013486b3 add a3,s1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10434 (discriminator 1) for (i = 0; i < len; i++) { - c001885e: 05864363 blt a2,s8,c00188a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10430 + c0018a2e: 05864363 blt a2,s8,c0018a74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10438 buf[j] = '\0'; - c0018862: 00068023 sb zero,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10432 + c0018a32: 00068023 sb zero,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10440 if (flags & ATOD_ACCEPT_SUFFIX) { - c0018866: 04047693 andi a3,s0,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10289 + c0018a36: 04047693 andi a3,s0,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10297 int atod_type = flags & ATOD_TYPE_MASK; - c001886a: 18047713 andi a4,s0,384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10432 + c0018a3a: 18047713 andi a4,s0,384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10440 if (flags & ATOD_ACCEPT_SUFFIX) { - c001886e: c2b5 beqz a3,c00188d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10433 + c0018a3e: c2b5 beqz a3,c0018aa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10441 if (*p == 'n') { - c0018870: 66e2 ld a3,24(sp) - c0018872: 06e00613 li a2,110 - c0018876: 0006c583 lbu a1,0(a3) - c001887a: 04c59063 bne a1,a2,c00188ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10434 + c0018a40: 66e2 ld a3,24(sp) + c0018a42: 06e00613 li a2,110 + c0018a46: 0006c583 lbu a1,0(a3) + c0018a4a: 04c59063 bne a1,a2,c0018a8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10442 p++; - c001887e: 0685 addi a3,a3,1 - c0018880: ec36 sd a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10482 + c0018a4e: 0685 addi a3,a3,1 + c0018a50: ec36 sd a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10490 if (has_legacy_octal || is_float) - c0018882: 012ce933 or s2,s9,s2 - c0018886: de0910e3 bnez s2,c0018666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10484 + c0018a52: 012ce933 or s2,s9,s2 + c0018a56: de0910e3 bnez s2,c0018836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10492 val = ctx->rt->bigint_ops.from_string(ctx, buf, radix, flags, NULL); - c001888a: 018ab703 ld a4,24(s5) - c001888e: 86a2 mv a3,s0 - c0018890: 866a mv a2,s10 - c0018892: 21073803 ld a6,528(a4) - c0018896: 85a6 mv a1,s1 - c0018898: 4701 li a4,0 - c001889a: 8556 mv a0,s5 - c001889c: 9802 jalr a6 - c001889e: e42a sd a0,8(sp) - c00188a0: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10485 + c0018a5a: 018ab703 ld a4,24(s5) + c0018a5e: 86a2 mv a3,s0 + c0018a60: 866a mv a2,s10 + c0018a62: 21073803 ld a6,528(a4) + c0018a66: 85a6 mv a1,s1 + c0018a68: 4701 li a4,0 + c0018a6a: 8556 mv a0,s5 + c0018a6c: 9802 jalr a6 + c0018a6e: e42a sd a0,8(sp) + c0018a70: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10493 break; - c00188a2: a0d1 j c0018966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10427 + c0018a72: a0d1 j c0018b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10435 if (p_start[i] != '_') - c00188a4: 00eb0633 add a2,s6,a4 - c00188a8: 00064603 lbu a2,0(a2) - c00188ac: 00b60563 beq a2,a1,c00188b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10428 + c0018a74: 00eb0633 add a2,s6,a4 + c0018a78: 00064603 lbu a2,0(a2) + c0018a7c: 00b60563 beq a2,a1,c0018a86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10436 buf[j++] = p_start[i]; - c00188b0: 2985 addiw s3,s3,1 - c00188b2: 00c68023 sb a2,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10426 (discriminator 2) + c0018a80: 2985 addiw s3,s3,1 + c0018a82: 00c68023 sb a2,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10434 (discriminator 2) for (i = 0; i < len; i++) { - c00188b6: 0705 addi a4,a4,1 - c00188b8: bf79 j c0018856 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10452 + c0018a86: 0705 addi a4,a4,1 + c0018a88: bf79 j c0018a26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10460 if (is_float && radix != 10) - c00188ba: 0e0c8a63 beqz s9,c00189ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10452 (discriminator 1) - c00188be: 46a9 li a3,10 - c00188c0: dadd13e3 bne s10,a3,c0018666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10472 + c0018a8a: 0e0c8a63 beqz s9,c0018b7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10460 (discriminator 1) + c0018a8e: 46a9 li a3,10 + c0018a90: dadd13e3 bne s10,a3,c0018836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10480 switch(atod_type) { - c00188c4: cf09 beqz a4,c00188de - c00188c6: 08000693 li a3,128 - c00188ca: fad70ce3 beq a4,a3,c0018882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10500 + c0018a94: cf09 beqz a4,c0018aae + c0018a96: 08000693 li a3,128 + c0018a9a: fad70ce3 beq a4,a3,c0018a52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10508 abort(); - c00188ce: 73d3c0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10456 + c0018a9e: 73d3c0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10464 if (atod_type == ATOD_TYPE_FLOAT64) { - c00188d2: fb75 bnez a4,c00188c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10466 + c0018aa2: fb75 bnez a4,c0018a96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10474 if (is_float && radix != 10) - c00188d4: 0c0c8e63 beqz s9,c00189b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10466 (discriminator 1) - c00188d8: 4729 li a4,10 - c00188da: d8ed16e3 bne s10,a4,c0018666 + c0018aa4: 0c0c8e63 beqz s9,c0018b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10474 (discriminator 1) + c0018aa8: 4729 li a4,10 + c0018aaa: d8ed16e3 bne s10,a4,c0018836 js_strtod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10177 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10185 d = strtod(str, NULL); - c00188de: 4581 li a1,0 - c00188e0: 8526 mv a0,s1 - c00188e2: 2af3d0ef jal ra,c0056390 - c00188e6: e2050453 fmv.x.d s0,fa0 - c00188ea: a8a9 j c0018944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10148 + c0018aae: 4581 li a1,0 + c0018ab0: 8526 mv a0,s1 + c0018ab2: 2af3d0ef jal ra,c0056560 + c0018ab6: e2050453 fmv.x.d s0,fa0 + c0018aba: a8a9 j c0018b14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10156 p++; - c00188ec: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10147 + c0018abc: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10155 while (*p == '0') - c00188ee: 00044683 lbu a3,0(s0) - c00188f2: fee68de3 beq a3,a4,c00188ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10150 + c0018abe: 00044683 lbu a3,0(s0) + c0018ac2: fee68de3 beq a3,a4,c0018abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10158 if (radix == 10) - c00188f6: 4729 li a4,10 - c00188f8: 08ed0263 beq s10,a4,c001897c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10153 + c0018ac6: 4729 li a4,10 + c0018ac8: 08ed0263 beq s10,a4,c0018b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10161 n_max = ((uint64_t)-1 - (radix - 1)) / radix; - c00188fc: 41a00b3b negw s6,s10 - c0018900: 03ab5b33 divu s6,s6,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10155 + c0018acc: 41a00b3b negw s6,s10 + c0018ad0: 03ab5b33 divu s6,s6,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10163 int_exp = 0; - c0018904: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10149 + c0018ad4: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10157 n = 0; - c0018906: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10163 + c0018ad6: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10171 if (radix == 10) - c0018908: 4ca9 li s9,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10156 + c0018ad8: 4ca9 li s9,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10164 while (*p != '\0') { - c001890a: 00044503 lbu a0,0(s0) - c001890e: ed25 bnez a0,c0018986 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10169 + c0018ada: 00044503 lbu a0,0(s0) + c0018ade: ed25 bnez a0,c0018b56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10177 d = n; - c0018910: d23977d3 fcvt.d.lu fa5,s2 - c0018914: e2078453 fmv.x.d s0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10170 + c0018ae0: d23977d3 fcvt.d.lu fa5,s2 + c0018ae4: e2078453 fmv.x.d s0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10178 if (int_exp != 0) { - c0018918: 00098e63 beqz s3,c0018934 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10171 + c0018ae8: 00098e63 beqz s3,c0018b04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10179 d *= pow(radix, int_exp); - c001891c: d20985d3 fcvt.d.w fa1,s3 - c0018920: d20d0553 fcvt.d.w fa0,s10 - c0018924: 1b03f0ef jal ra,c0057ad4 - c0018928: f20407d3 fmv.d.x fa5,s0 - c001892c: 12a7f7d3 fmul.d fa5,fa5,fa0 - c0018930: e2078453 fmv.x.d s0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10173 + c0018aec: d20985d3 fcvt.d.w fa1,s3 + c0018af0: d20d0553 fcvt.d.w fa0,s10 + c0018af4: 1b03f0ef jal ra,c0057ca4 + c0018af8: f20407d3 fmv.d.x fa5,s0 + c0018afc: 12a7f7d3 fmul.d fa5,fa5,fa0 + c0018b00: e2078453 fmv.x.d s0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10181 if (is_neg) - c0018934: 000c0863 beqz s8,c0018944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10174 + c0018b04: 000c0863 beqz s8,c0018b14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10182 d = -d; - c0018938: f20407d3 fmv.d.x fa5,s0 - c001893c: 22f797d3 fneg.d fa5,fa5 - c0018940: e2078453 fmv.x.d s0,fa5 + c0018b08: f20407d3 fmv.d.x fa5,s0 + c0018b0c: 22f797d3 fneg.d fa5,fa5 + c0018b10: e2078453 fmv.x.d s0,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0018944: f20407d3 fmv.d.x fa5,s0 - c0018948: c20796d3 fcvt.w.d a3,fa5,rtz + c0018b14: f20407d3 fmv.d.x fa5,s0 + c0018b18: c20796d3 fcvt.w.d a3,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001894c: d20687d3 fcvt.d.w fa5,a3 + c0018b1c: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0018950: 0006879b sext.w a5,a3 + c0018b20: 0006879b sext.w a5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0018954: e20786d3 fmv.x.d a3,fa5 - c0018958: 04d41663 bne s0,a3,c00189a4 + c0018b24: e20786d3 fmv.x.d a3,fa5 + c0018b28: 04d41663 bne s0,a3,c0018b74 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001895c: da02 sw zero,52(sp) - c001895e: 4401 li s0,0 + c0018b2c: da02 sw zero,52(sp) + c0018b2e: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0018960: d83e sw a5,48(sp) - c0018962: 37c2 fld fa5,48(sp) - c0018964: a43e fsd fa5,8(sp) + c0018b30: d83e sw a5,48(sp) + c0018b32: 37c2 fld fa5,48(sp) + c0018b34: a43e fsd fa5,8(sp) js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10512 if (buf_allocated) - c0018966: d80a05e3 beqz s4,c00186f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10505 + c0018b36: d80a05e3 beqz s4,c00188c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10513 js_free_rt(ctx->rt, buf); - c001896a: 018ab503 ld a0,24(s5) - c001896e: 85a6 mv a1,s1 - c0018970: a36ee0ef jal ra,c0006ba6 - c0018974: bbb5 j c00186f0 + c0018b3a: 018ab503 ld a0,24(s5) + c0018b3e: 85a6 mv a1,s1 + c0018b40: 954ee0ef jal ra,c0006c94 + c0018b44: bbb5 j c00188c0 js_strtod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10505 - c0018976: 8426 mv s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10513 + c0018b46: 8426 mv s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10148 is_neg = 0; - c0018978: 4c01 li s8,0 - c001897a: a0a1 j c00189c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10151 + c0018b48: 4c01 li s8,0 + c0018b4a: a0a1 j c0018b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10159 n_max = ((uint64_t)-1 - 9) / 10; /* most common case */ - c001897c: 0005cb17 auipc s6,0x5c - c0018980: e7cb3b03 ld s6,-388(s6) # c00747f8 <_erodata+0x78> - c0018984: b741 j c0018904 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10157 + c0018b4c: 0005cb17 auipc s6,0x5c + c0018b50: f0cb3b03 ld s6,-244(s6) # c0074a58 <_erodata+0x78> + c0018b54: b741 j c0018ad4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10165 c = to_digit((uint8_t)*p); - c0018986: 971eb0ef jal ra,c00042f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10158 + c0018b56: fa0eb0ef jal ra,c00042f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10166 if (c >= radix) - c001898a: f9a553e3 bge a0,s10,c0018910 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10160 + c0018b5a: f9a553e3 bge a0,s10,c0018ae0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10168 if (n <= n_max) { - c001898e: 012b6763 bltu s6,s2,c001899c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10161 + c0018b5e: 012b6763 bltu s6,s2,c0018b6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10169 n = n * radix + c; - c0018992: 032d0933 mul s2,s10,s2 - c0018996: 992a add s2,s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10167 + c0018b62: 032d0933 mul s2,s10,s2 + c0018b66: 992a add s2,s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10175 p++; - c0018998: 0405 addi s0,s0,1 - c001899a: bf85 j c001890a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10163 + c0018b68: 0405 addi s0,s0,1 + c0018b6a: bf85 j c0018ada +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10171 if (radix == 10) - c001899c: f59d01e3 beq s10,s9,c00188de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10165 + c0018b6c: f59d01e3 beq s10,s9,c0018aae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10173 int_exp++; - c00189a0: 2985 addiw s3,s3,1 - c00189a2: bfdd j c0018998 + c0018b70: 2985 addiw s3,s3,1 + c0018b72: bfdd j c0018b68 js_atof(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00189a4: f822 sd s0,48(sp) - c00189a6: 0004079b sext.w a5,s0 + c0018b74: f822 sd s0,48(sp) + c0018b76: 0004079b sext.w a5,s0 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c00189aa: 441d li s0,7 - c00189ac: bf55 j c0018960 + c0018b7a: 441d li s0,7 + c0018b7c: bf55 j c0018b30 js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10480 switch(atod_type) { - c00189ae: ff01 bnez a4,c00188c6 + c0018b7e: ff01 bnez a4,c0018a96 js_strtod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10149 if (*p == '-') { - c00189b0: 0004c683 lbu a3,0(s1) - c00189b4: 02d00713 li a4,45 - c00189b8: fae69fe3 bne a3,a4,c0018976 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10143 + c0018b80: 0004c683 lbu a3,0(s1) + c0018b84: 02d00713 li a4,45 + c0018b88: fae69fe3 bne a3,a4,c0018b46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10151 p++; - c00189bc: 00148413 addi s0,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10142 + c0018b8c: 00148413 addi s0,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10150 is_neg = 1; - c00189c0: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10147 + c0018b90: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10155 while (*p == '0') - c00189c2: 03000713 li a4,48 - c00189c6: b725 j c00188ee + c0018b92: 03000713 li a4,48 + c0018b96: b725 j c0018abe js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10319 - } else if ((p[1] == 'o' || p[1] == 'O') && - c00189c8: d60d04e3 beqz s10,c0018730 - c00189cc: 4901 li s2,0 - c00189ce: a02d j c00189f8 - c00189d0: 06f00613 li a2,111 - c00189d4: dcc682e3 beq a3,a2,c0018798 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10327 + } else if ((p[1] == 'o' || p[1] == 'O') && + c0018b98: d60d04e3 beqz s10,c0018900 + c0018b9c: 4901 li s2,0 + c0018b9e: a02d j c0018bc8 + c0018ba0: 06f00613 li a2,111 + c0018ba4: dcc682e3 beq a3,a2,c0018968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10335 } else if ((p[1] >= '0' && p[1] <= '9') && - c00189d8: fd06869b addiw a3,a3,-48 - c00189dc: 0ff6f693 zext.b a3,a3 - c00189e0: 4625 li a2,9 - c00189e2: dad66be3 bltu a2,a3,c0018798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10327 (discriminator 1) - c00189e6: fe0d13e3 bnez s10,c00189cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10328 + c0018ba8: fd06869b addiw a3,a3,-48 + c0018bac: 0ff6f693 zext.b a3,a3 + c0018bb0: 4625 li a2,9 + c0018bb2: dad66be3 bltu a2,a3,c0018968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10335 (discriminator 1) + c0018bb6: fe0d13e3 bnez s10,c0018b9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10336 radix == 0 && (flags & ATOD_ACCEPT_LEGACY_OCTAL)) { - c00189ea: 01047913 andi s2,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10332 + c0018bba: 01047913 andi s2,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10340 for (i = 1; (p[i] >= '0' && p[i] <= '7'); i++) - c00189ee: 4605 li a2,1 - c00189f0: 459d li a1,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10328 + c0018bbe: 4605 li a2,1 + c0018bc0: 459d li a1,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10336 radix == 0 && (flags & ATOD_ACCEPT_LEGACY_OCTAL)) { - c00189f2: d60917e3 bnez s2,c0018760 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10374 + c0018bc2: d60917e3 bnez s2,c0018930 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10382 radix = 10; - c00189f6: 4d29 li s10,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10376 + c0018bc6: 4d29 li s10,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10384 p_start = p; - c00189f8: 6b62 ld s6,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10379 + c0018bc8: 6b62 ld s6,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10387 p != p_start + 1 || p[-1] != '0') && - c00189fa: 001b0c93 addi s9,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10377 + c0018bca: 001b0c93 addi s9,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10385 while (to_digit((uint8_t)*p) < radix - c00189fe: 6de2 ld s11,24(sp) - c0018a00: 000dcc03 lbu s8,0(s11) - c0018a04: 000c069b sext.w a3,s8 - c0018a08: 8536 mv a0,a3 - c0018a0a: e436 sd a3,8(sp) - c0018a0c: 8ebeb0ef jal ra,c00042f6 - c0018a10: d9a54ce3 blt a0,s10,c00187a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10378 + c0018bce: 6de2 ld s11,24(sp) + c0018bd0: 000dcc03 lbu s8,0(s11) + c0018bd4: 000c069b sext.w a3,s8 + c0018bd8: 8536 mv a0,a3 + c0018bda: e436 sd a3,8(sp) + c0018bdc: f1aeb0ef jal ra,c00042f6 + c0018be0: d9a54ce3 blt a0,s10,c0018978 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10386 || (*p == sep && (radix != 10 || - c0018a14: 66a2 ld a3,8(sp) - c0018a16: 03469363 bne a3,s4,c0018a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10378 (discriminator 1) - c0018a1a: 47a9 li a5,10 - c0018a1c: 00fd1a63 bne s10,a5,c0018a30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10378 (discriminator 2) - c0018a20: 019d9863 bne s11,s9,c0018a30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10379 + c0018be4: 66a2 ld a3,8(sp) + c0018be6: 03469363 bne a3,s4,c0018c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10386 (discriminator 1) + c0018bea: 47a9 li a5,10 + c0018bec: 00fd1a63 bne s10,a5,c0018c00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10386 (discriminator 2) + c0018bf0: 019d9863 bne s11,s9,c0018c00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10387 p != p_start + 1 || p[-1] != '0') && - c0018a24: fffcc683 lbu a3,-1(s9) - c0018a28: 03000793 li a5,48 - c0018a2c: 00f68863 beq a3,a5,c0018a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10380 (discriminator 1) + c0018bf4: fffcc683 lbu a3,-1(s9) + c0018bf8: 03000793 li a5,48 + c0018bfc: 00f68863 beq a3,a5,c0018c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10388 (discriminator 1) to_digit((uint8_t)p[1]) < radix)) { - c0018a30: 001dc503 lbu a0,1(s11) - c0018a34: 8c3eb0ef jal ra,c00042f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10379 (discriminator 1) + c0018c00: 001dc503 lbu a0,1(s11) + c0018c04: ef2eb0ef jal ra,c00042f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10387 (discriminator 1) p != p_start + 1 || p[-1] != '0') && - c0018a38: d7a548e3 blt a0,s10,c00187a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10383 + c0018c08: d7a548e3 blt a0,s10,c0018978 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10391 if (!(flags & ATOD_INT_ONLY)) { - c0018a3c: 00147c93 andi s9,s0,1 - c0018a40: e00c90e3 bnez s9,c0018840 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10384 + c0018c0c: 00147c93 andi s9,s0,1 + c0018c10: e00c90e3 bnez s9,c0018a10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10392 if (*p == '.' && (p > p_start || to_digit((uint8_t)p[1]) < radix)) { - c0018a44: 02e00693 li a3,46 - c0018a48: 04dc1263 bne s8,a3,c0018a8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10384 (discriminator 1) - c0018a4c: 01bb6863 bltu s6,s11,c0018a5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10384 (discriminator 2) - c0018a50: 001dc503 lbu a0,1(s11) - c0018a54: 8a3eb0ef jal ra,c00042f6 - c0018a58: 03a55a63 bge a0,s10,c0018a8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10386 + c0018c14: 02e00693 li a3,46 + c0018c18: 04dc1263 bne s8,a3,c0018c5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10392 (discriminator 1) + c0018c1c: 01bb6863 bltu s6,s11,c0018c2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10392 (discriminator 2) + c0018c20: 001dc503 lbu a0,1(s11) + c0018c24: ed2eb0ef jal ra,c00042f6 + c0018c28: 03a55a63 bge a0,s10,c0018c5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10394 p++; - c0018a5c: 001d8693 addi a3,s11,1 - c0018a60: ec36 sd a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10387 + c0018c2c: 001d8693 addi a3,s11,1 + c0018c30: ec36 sd a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10395 if (*p == sep) - c0018a62: 001dc703 lbu a4,1(s11) - c0018a66: bf470fe3 beq a4,s4,c0018664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10389 + c0018c32: 001dc703 lbu a4,1(s11) + c0018c36: bf470fe3 beq a4,s4,c0018834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10397 while (to_digit((uint8_t)*p) < radix || - c0018a6a: 6c62 ld s8,24(sp) - c0018a6c: 000c4c83 lbu s9,0(s8) - c0018a70: 8566 mv a0,s9 - c0018a72: 885eb0ef jal ra,c00042f6 - c0018a76: d3a54de3 blt a0,s10,c00187b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10389 (discriminator 1) - c0018a7a: 014c9863 bne s9,s4,c0018a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10390 + c0018c3a: 6c62 ld s8,24(sp) + c0018c3c: 000c4c83 lbu s9,0(s8) + c0018c40: 8566 mv a0,s9 + c0018c42: eb4eb0ef jal ra,c00042f6 + c0018c46: d3a54de3 blt a0,s10,c0018980 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10397 (discriminator 1) + c0018c4a: 014c9863 bne s9,s4,c0018c5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10398 (*p == sep && to_digit((uint8_t)p[1]) < radix)) - c0018a7e: 001c4503 lbu a0,1(s8) - c0018a82: 875eb0ef jal ra,c00042f6 - c0018a86: d3a545e3 blt a0,s10,c00187b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10385 - is_float = TRUE; - c0018a8a: 4c85 li s9,1 + c0018c4e: 001c4503 lbu a0,1(s8) + c0018c52: ea4eb0ef jal ra,c00042f6 + c0018c56: d3a545e3 blt a0,s10,c0018980 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10393 + is_float = TRUE; + c0018c5a: 4c85 li s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10401 if (p > p_start && - c0018a8c: 66e2 ld a3,24(sp) - c0018a8e: d4db71e3 bgeu s6,a3,c00187d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10394 (discriminator 1) + c0018c5c: 66e2 ld a3,24(sp) + c0018c5e: d4db71e3 bgeu s6,a3,c00189a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10402 (discriminator 1) (((*p == 'e' || *p == 'E') && radix == 10) || - c0018a92: 0006c703 lbu a4,0(a3) - c0018a96: 04500613 li a2,69 - c0018a9a: 0df77713 andi a4,a4,223 - c0018a9e: d0c71ce3 bne a4,a2,c00187b6 - c0018aa2: 4729 li a4,10 - c0018aa4: d2ed16e3 bne s10,a4,c00187d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10398 + c0018c62: 0006c703 lbu a4,0(a3) + c0018c66: 04500613 li a2,69 + c0018c6a: 0df77713 andi a4,a4,223 + c0018c6e: d0c71ce3 bne a4,a2,c0018986 + c0018c72: 4729 li a4,10 + c0018c74: d2ed16e3 bne s10,a4,c00189a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10406 if (*p1 == '+') { - c0018aa8: 0016c603 lbu a2,1(a3) - c0018aac: 02b00713 li a4,43 - c0018ab0: d4e61ae3 bne a2,a4,c0018804 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10399 + c0018c78: 0016c603 lbu a2,1(a3) + c0018c7c: 02b00713 li a4,43 + c0018c80: d4e61ae3 bne a2,a4,c00189d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10407 p1++; - c0018ab4: 00268713 addi a4,a3,2 + c0018c84: 00268713 addi a4,a3,2 is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 return c >= '0' && c <= '9'; - c0018ab8: 00074683 lbu a3,0(a4) + c0018c88: 00074683 lbu a3,0(a4) js_atof(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10403 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10411 if (is_digit((uint8_t)*p1)) { - c0018abc: 4625 li a2,9 - c0018abe: fd06869b addiw a3,a3,-48 - c0018ac2: d4d67ae3 bgeu a2,a3,c0018816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10397 + c0018c8c: 4625 li a2,9 + c0018c8e: fd06869b addiw a3,a3,-48 + c0018c92: d4d67ae3 bgeu a2,a3,c00189e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10405 is_float = TRUE; - c0018ac6: 4c85 li s9,1 - c0018ac8: b321 j c00187d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10323 + c0018c96: 4c85 li s9,1 + c0018c98: b321 j c00189a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10331 } else if ((p[1] == 'b' || p[1] == 'B') && - c0018aca: 04200593 li a1,66 - c0018ace: c8b600e3 beq a2,a1,c001874e - c0018ad2: b719 j c00189d8 + c0018c9a: 04200593 li a1,66 + c0018c9e: c8b600e3 beq a2,a1,c001891e + c0018ca2: b719 j c0018ba8 -00000000c0018ad4 : +00000000c0018ca4 : JS_NewSymbol(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3069 { - c0018ad4: 7139 addi sp,sp,-64 - c0018ad6: f822 sd s0,48(sp) - c0018ad8: fc06 sd ra,56(sp) - c0018ada: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3062 + c0018ca4: 7139 addi sp,sp,-64 + c0018ca6: f822 sd s0,48(sp) + c0018ca8: fc06 sd ra,56(sp) + c0018caa: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3070 JSRuntime *rt = ctx->rt; - c0018adc: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3061 + c0018cac: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3069 { - c0018ade: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3064 + c0018cae: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3072 atom = __JS_NewAtom(rt, p, atom_type); - c0018ae0: 8526 mv a0,s1 - c0018ae2: cb4ee0ef jal ra,c0006f96 <__JS_NewAtom> - c0018ae6: 0005079b sext.w a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3065 + c0018cb0: 8526 mv a0,s1 + c0018cb2: bd2ee0ef jal ra,c0007084 <__JS_NewAtom> + c0018cb6: 0005079b sext.w a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3073 if (atom == JS_ATOM_NULL) - c0018aea: eb81 bnez a5,c0018afa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3066 + c0018cba: eb81 bnez a5,c0018cca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3074 return JS_ThrowOutOfMemory(ctx); - c0018aec: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3068 -} - c0018aee: 7442 ld s0,48(sp) - c0018af0: 70e2 ld ra,56(sp) - c0018af2: 74a2 ld s1,40(sp) - c0018af4: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3066 + c0018cbc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3076 +} + c0018cbe: 7442 ld s0,48(sp) + c0018cc0: 70e2 ld ra,56(sp) + c0018cc2: 74a2 ld s1,40(sp) + c0018cc4: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3074 return JS_ThrowOutOfMemory(ctx); - c0018af6: 926fc06f j c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3067 + c0018cc6: 844fc06f j c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3075 return JS_MKPTR(JS_TAG_SYMBOL, rt->atom_array[atom]); - c0018afa: 70a8 ld a0,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3068 + c0018cca: 70a8 ld a0,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3076 } - c0018afc: 70e2 ld ra,56(sp) - c0018afe: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3067 + c0018ccc: 70e2 ld ra,56(sp) + c0018cce: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3075 return JS_MKPTR(JS_TAG_SYMBOL, rt->atom_array[atom]); - c0018b00: 02079713 slli a4,a5,0x20 - c0018b04: 01d75793 srli a5,a4,0x1d - c0018b08: 97aa add a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3068 -} - c0018b0a: 6388 ld a0,0(a5) - c0018b0c: 74a2 ld s1,40(sp) - c0018b0e: 55e1 li a1,-8 - c0018b10: 6121 addi sp,sp,64 - c0018b12: 8082 ret - -00000000c0018b14 : + c0018cd0: 02079713 slli a4,a5,0x20 + c0018cd4: 01d75793 srli a5,a4,0x1d + c0018cd8: 97aa add a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3076 +} + c0018cda: 6388 ld a0,0(a5) + c0018cdc: 74a2 ld s1,40(sp) + c0018cde: 55e1 li a1,-8 + c0018ce0: 6121 addi sp,sp,64 + c0018ce2: 8082 ret + +00000000c0018ce4 : JS_NewSymbolFromAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3071 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3079 static JSValue JS_NewSymbolFromAtom(JSContext *ctx, JSAtom descr, - c0018b14: 7139 addi sp,sp,-64 - c0018b16: fc06 sd ra,56(sp) - c0018b18: f822 sd s0,48(sp) - c0018b1a: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3074 + c0018ce4: 7139 addi sp,sp,-64 + c0018ce6: fc06 sd ra,56(sp) + c0018ce8: f822 sd s0,48(sp) + c0018cea: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3082 JSRuntime *rt = ctx->rt; - c0018b1c: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3077 + c0018cec: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3085 assert(!__JS_AtomIsTaggedInt(descr)); - c0018b1e: 0005dc63 bgez a1,c0018b36 - c0018b22: 6585 lui a1,0x1 - c0018b24: 4601 li a2,0 - c0018b26: c0558593 addi a1,a1,-1019 # c05 <__clzdi2-0xbffff3fb> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3078 + c0018cee: 0005dc63 bgez a1,c0018d06 + c0018cf2: 6585 lui a1,0x1 + c0018cf4: 4601 li a2,0 + c0018cf6: c0d58593 addi a1,a1,-1011 # c0d <__clzdi2-0xbffff3f3> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3086 assert(descr < rt->atom_size); - c0018b2a: 00044517 auipc a0,0x44 - c0018b2e: f4e50513 addi a0,a0,-178 # c005ca78 - c0018b32: 6e73a0ef jal ra,c0053a18 <__assert> - c0018b36: 4bb8 lw a4,80(a5) - c0018b38: 00e5e763 bltu a1,a4,c0018b46 - c0018b3c: 6585 lui a1,0x1 - c0018b3e: 4601 li a2,0 - c0018b40: c0658593 addi a1,a1,-1018 # c06 <__clzdi2-0xbffff3fa> - c0018b44: b7dd j c0018b2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3079 + c0018cfa: 00044517 auipc a0,0x44 + c0018cfe: f4e50513 addi a0,a0,-178 # c005cc48 + c0018d02: 6e73a0ef jal ra,c0053be8 <__assert> + c0018d06: 4bb8 lw a4,80(a5) + c0018d08: 00e5e763 bltu a1,a4,c0018d16 + c0018d0c: 6585 lui a1,0x1 + c0018d0e: 4601 li a2,0 + c0018d10: c0e58593 addi a1,a1,-1010 # c0e <__clzdi2-0xbffff3f2> + c0018d14: b7dd j c0018cfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3087 p = rt->atom_array[descr]; - c0018b46: 73bc ld a5,96(a5) - c0018b48: 02059713 slli a4,a1,0x20 - c0018b4c: 01d75593 srli a1,a4,0x1d - c0018b50: 95be add a1,a1,a5 - c0018b52: 6184 ld s1,0(a1) - c0018b54: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3080 + c0018d16: 73bc ld a5,96(a5) + c0018d18: 02059713 slli a4,a1,0x20 + c0018d1c: 01d75593 srli a1,a4,0x1d + c0018d20: 95be add a1,a1,a5 + c0018d22: 6184 ld s1,0(a1) + c0018d24: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3088 JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, p)); - c0018b56: 55e5 li a1,-7 - c0018b58: 8526 mv a0,s1 - c0018b5a: b15ed0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3081 + c0018d26: 55e5 li a1,-7 + c0018d28: 8526 mv a0,s1 + c0018d2a: a33ed0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3089 return JS_NewSymbol(ctx, p, atom_type); - c0018b5e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3082 + c0018d2e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3090 } - c0018b60: 7442 ld s0,48(sp) - c0018b62: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3081 + c0018d30: 7442 ld s0,48(sp) + c0018d32: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3089 return JS_NewSymbol(ctx, p, atom_type); - c0018b64: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3082 + c0018d34: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3090 } - c0018b66: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3081 + c0018d36: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3089 return JS_NewSymbol(ctx, p, atom_type); - c0018b68: 4611 li a2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3082 + c0018d38: 4611 li a2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3090 } - c0018b6a: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3081 + c0018d3a: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3089 return JS_NewSymbol(ctx, p, atom_type); - c0018b6c: f69ff06f j c0018ad4 + c0018d3c: f69ff06f j c0018ca4 -00000000c0018b70 : +00000000c0018d40 : js_alloc_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1929 { - c0018b70: 1101 addi sp,sp,-32 - c0018b72: e822 sd s0,16(sp) - c0018b74: e426 sd s1,8(sp) - c0018b76: ec06 sd ra,24(sp) - c0018b78: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1923 + c0018d40: 1101 addi sp,sp,-32 + c0018d42: e822 sd s0,16(sp) + c0018d44: e426 sd s1,8(sp) + c0018d46: ec06 sd ra,24(sp) + c0018d48: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1931 p = js_alloc_string_rt(ctx->rt, max_len, is_wide_char); - c0018b7a: 6d08 ld a0,24(a0) - c0018b7c: fefed0ef jal ra,c0006b6a - c0018b80: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1924 + c0018d4a: 6d08 ld a0,24(a0) + c0018d4c: f0ded0ef jal ra,c0006c58 + c0018d50: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1932 if (unlikely(!p)) { - c0018b82: e501 bnez a0,c0018b8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1925 + c0018d52: e501 bnez a0,c0018d5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1933 JS_ThrowOutOfMemory(ctx); - c0018b84: 8526 mv a0,s1 - c0018b86: 896fc0ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1929 -} - c0018b8a: 60e2 ld ra,24(sp) - c0018b8c: 8522 mv a0,s0 - c0018b8e: 6442 ld s0,16(sp) - c0018b90: 64a2 ld s1,8(sp) - c0018b92: 6105 addi sp,sp,32 - c0018b94: 8082 ret - -00000000c0018b96 : + c0018d54: 8526 mv a0,s1 + c0018d56: fb5fb0ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1937 +} + c0018d5a: 60e2 ld ra,24(sp) + c0018d5c: 8522 mv a0,s0 + c0018d5e: 6442 ld s0,16(sp) + c0018d60: 64a2 ld s1,8(sp) + c0018d62: 6105 addi sp,sp,32 + c0018d64: 8082 ret + +00000000c0018d66 : string_buffer_init2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3603 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3611 { - c0018b96: 1141 addi sp,sp,-16 - c0018b98: e022 sd s0,0(sp) - c0018b9a: 842e mv s0,a1 - c0018b9c: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3604 + c0018d66: 1141 addi sp,sp,-16 + c0018d68: e022 sd s0,0(sp) + c0018d6a: 842e mv s0,a1 + c0018d6c: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3612 s->ctx = ctx; - c0018b9e: e008 sd a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3603 + c0018d6e: e008 sd a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3611 { - c0018ba0: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3605 + c0018d70: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3613 s->size = size; - c0018ba2: c84c sw a1,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3606 + c0018d72: c84c sw a1,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3614 s->len = 0; - c0018ba4: 00042823 sw zero,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3607 + c0018d74: 00042823 sw zero,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3615 s->is_wide_char = is_wide; - c0018ba8: cc14 sw a3,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3608 + c0018d78: cc14 sw a3,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3616 s->error_status = 0; - c0018baa: 00042e23 sw zero,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3603 + c0018d7a: 00042e23 sw zero,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3611 { - c0018bae: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3609 + c0018d7e: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3617 s->str = js_alloc_string(ctx, size, is_wide); - c0018bb0: fc1ff0ef jal ra,c0018b70 - c0018bb4: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3610 + c0018d80: fc1ff0ef jal ra,c0018d40 + c0018d84: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3618 if (unlikely(!s->str)) { - c0018bb6: e911 bnez a0,c0018bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3612 + c0018d86: e911 bnez a0,c0018d9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3620 return s->error_status = -1; - c0018bb8: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3611 + c0018d88: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3619 s->size = 0; - c0018bba: 00042a23 sw zero,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3612 + c0018d8a: 00042a23 sw zero,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3620 return s->error_status = -1; - c0018bbe: cc5c sw a5,28(s0) - c0018bc0: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3619 + c0018d8e: cc5c sw a5,28(s0) + c0018d90: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3627 } - c0018bc2: 60a2 ld ra,8(sp) - c0018bc4: 6402 ld s0,0(sp) - c0018bc6: 0141 addi sp,sp,16 - c0018bc8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3618 + c0018d92: 60a2 ld ra,8(sp) + c0018d94: 6402 ld s0,0(sp) + c0018d96: 0141 addi sp,sp,16 + c0018d98: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3626 return 0; - c0018bca: 4501 li a0,0 - c0018bcc: bfdd j c0018bc2 + c0018d9a: 4501 li a0,0 + c0018d9c: bfdd j c0018d92 -00000000c0018bce : +00000000c0018d9e : string_buffer_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3631 return string_buffer_init2(ctx, s, size, 0); - c0018bce: 4681 li a3,0 - c0018bd0: fc7ff06f j c0018b96 + c0018d9e: 4681 li a3,0 + c0018da0: fc7ff06f j c0018d66 -00000000c0018bd4 : +00000000c0018da4 : js_new_string16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3539 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3547 { - c0018bd4: 7179 addi sp,sp,-48 - c0018bd6: f022 sd s0,32(sp) - c0018bd8: 8432 mv s0,a2 - c0018bda: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3541 + c0018da4: 7179 addi sp,sp,-48 + c0018da6: f022 sd s0,32(sp) + c0018da8: 8432 mv s0,a2 + c0018daa: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3549 str = js_alloc_string(ctx, len, 1); - c0018bdc: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3539 + c0018dac: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3547 { - c0018bde: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3541 + c0018dae: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3549 str = js_alloc_string(ctx, len, 1); - c0018be0: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3539 + c0018db0: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3547 { - c0018be2: f406 sd ra,40(sp) - c0018be4: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3541 + c0018db2: f406 sd ra,40(sp) + c0018db4: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3549 str = js_alloc_string(ctx, len, 1); - c0018be6: f8bff0ef jal ra,c0018b70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3542 + c0018db6: f8bff0ef jal ra,c0018d40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3550 if (!str) - c0018bea: ed01 bnez a0,c0018c02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3543 + c0018dba: ed01 bnez a0,c0018dd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3551 return JS_EXCEPTION; - c0018bec: e002 sd zero,0(sp) - c0018bee: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3546 + c0018dbc: e002 sd zero,0(sp) + c0018dbe: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3554 } - c0018bf0: 70a2 ld ra,40(sp) - c0018bf2: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3545 + c0018dc0: 70a2 ld ra,40(sp) + c0018dc2: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3553 return JS_MKPTR(JS_TAG_STRING, str); - c0018bf4: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3546 -} - c0018bf6: 6502 ld a0,0(sp) - c0018bf8: 65a2 ld a1,8(sp) - c0018bfa: 64e2 ld s1,24(sp) - c0018bfc: 6942 ld s2,16(sp) - c0018bfe: 6145 addi sp,sp,48 - c0018c00: 8082 ret - c0018c02: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3544 + c0018dc4: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3554 +} + c0018dc6: 6502 ld a0,0(sp) + c0018dc8: 65a2 ld a1,8(sp) + c0018dca: 64e2 ld s1,24(sp) + c0018dcc: 6942 ld s2,16(sp) + c0018dce: 6145 addi sp,sp,48 + c0018dd0: 8082 ret + c0018dd2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3552 memcpy(str->u.str16, buf, len * 2); - c0018c04: 0014161b slliw a2,s0,0x1 - c0018c08: 85ca mv a1,s2 - c0018c0a: 0541 addi a0,a0,16 - c0018c0c: 5cf3d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3545 + c0018dd4: 0014161b slliw a2,s0,0x1 + c0018dd8: 85ca mv a1,s2 + c0018dda: 0541 addi a0,a0,16 + c0018ddc: 5cf3d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3553 return JS_MKPTR(JS_TAG_STRING, str); - c0018c10: 57e5 li a5,-7 - c0018c12: e026 sd s1,0(sp) - c0018c14: bff1 j c0018bf0 + c0018de0: 57e5 li a5,-7 + c0018de2: e026 sd s1,0(sp) + c0018de4: bff1 j c0018dc0 -00000000c0018c16 : +00000000c0018de6 : JS_ReadString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35765 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35773 { - c0018c16: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35771 + c0018de6: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35779 if (bc_get_leb128(s, &len)) - c0018c18: 006c addi a1,sp,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35765 + c0018de8: 006c addi a1,sp,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35773 { - c0018c1a: f822 sd s0,48(sp) - c0018c1c: fc06 sd ra,56(sp) - c0018c1e: f426 sd s1,40(sp) - c0018c20: f04a sd s2,32(sp) - c0018c22: ec4e sd s3,24(sp) - c0018c24: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35771 + c0018dea: f822 sd s0,48(sp) + c0018dec: fc06 sd ra,56(sp) + c0018dee: f426 sd s1,40(sp) + c0018df0: f04a sd s2,32(sp) + c0018df2: ec4e sd s3,24(sp) + c0018df4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35779 if (bc_get_leb128(s, &len)) - c0018c26: e24fa0ef jal ra,c001324a - c0018c2a: e921 bnez a0,c0018c7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35773 + c0018df6: d42fa0ef jal ra,c0013338 + c0018dfa: e921 bnez a0,c0018e4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35781 is_wide_char = len & 1; - c0018c2c: 45b2 lw a1,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35775 + c0018dfc: 45b2 lw a1,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35783 p = js_alloc_string(s->ctx, len, is_wide_char); - c0018c2e: 6008 ld a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35773 + c0018dfe: 6008 ld a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35781 is_wide_char = len & 1; - c0018c30: 0015f993 andi s3,a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35775 + c0018e00: 0015f993 andi s3,a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35783 p = js_alloc_string(s->ctx, len, is_wide_char); - c0018c34: 864e mv a2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35774 + c0018e04: 864e mv a2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35782 len >>= 1; - c0018c36: 0015d59b srliw a1,a1,0x1 - c0018c3a: c62e sw a1,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35775 + c0018e06: 0015d59b srliw a1,a1,0x1 + c0018e0a: c62e sw a1,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35783 p = js_alloc_string(s->ctx, len, is_wide_char); - c0018c3c: f35ff0ef jal ra,c0018b70 - c0018c40: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35776 + c0018e0c: f35ff0ef jal ra,c0018d40 + c0018e10: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35784 if (!p) { - c0018c42: e919 bnez a0,c0018c58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35777 + c0018e12: e919 bnez a0,c0018e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35785 s->error_state = -1; - c0018c44: 57fd li a5,-1 - c0018c46: d81c sw a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35795 -} - c0018c48: 70e2 ld ra,56(sp) - c0018c4a: 7442 ld s0,48(sp) - c0018c4c: 7902 ld s2,32(sp) - c0018c4e: 69e2 ld s3,24(sp) - c0018c50: 8526 mv a0,s1 - c0018c52: 74a2 ld s1,40(sp) - c0018c54: 6121 addi sp,sp,64 - c0018c56: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35780 + c0018e14: 57fd li a5,-1 + c0018e16: d81c sw a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35803 +} + c0018e18: 70e2 ld ra,56(sp) + c0018e1a: 7442 ld s0,48(sp) + c0018e1c: 7902 ld s2,32(sp) + c0018e1e: 69e2 ld s3,24(sp) + c0018e20: 8526 mv a0,s1 + c0018e22: 74a2 ld s1,40(sp) + c0018e24: 6121 addi sp,sp,64 + c0018e26: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35788 size = (size_t)len << is_wide_char; - c0018c58: 00c16903 lwu s2,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35781 + c0018e28: 00c16903 lwu s2,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35789 if ((s->buf_end - s->ptr) < size) { - c0018c5c: 680c ld a1,16(s0) - c0018c5e: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35780 + c0018e2c: 680c ld a1,16(s0) + c0018e2e: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35788 size = (size_t)len << is_wide_char; - c0018c60: 01391933 sll s2,s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35781 + c0018e30: 01391933 sll s2,s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35789 if ((s->buf_end - s->ptr) < size) { - c0018c64: 8f8d sub a5,a5,a1 - c0018c66: 0127fc63 bgeu a5,s2,c0018c7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35782 + c0018e34: 8f8d sub a5,a5,a1 + c0018e36: 0127fc63 bgeu a5,s2,c0018e4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35790 bc_read_error_end(s); - c0018c6a: 8522 mv a0,s0 - c0018c6c: d92fa0ef jal ra,c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35783 + c0018e3a: 8522 mv a0,s0 + c0018e3c: cb0fa0ef jal ra,c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35791 js_free_string(s->ctx->rt, p); - c0018c70: 601c ld a5,0(s0) - c0018c72: 85a6 mv a1,s1 - c0018c74: 6f88 ld a0,24(a5) - c0018c76: 80aee0ef jal ra,c0006c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35772 + c0018e40: 601c ld a5,0(s0) + c0018e42: 85a6 mv a1,s1 + c0018e44: 6f88 ld a0,24(a5) + c0018e46: f29ed0ef jal ra,c0006d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35780 return NULL; - c0018c7a: 4481 li s1,0 - c0018c7c: b7f1 j c0018c48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35786 + c0018e4a: 4481 li s1,0 + c0018e4c: b7f1 j c0018e18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35794 memcpy(p->u.str8, s->ptr, size); - c0018c7e: 864a mv a2,s2 - c0018c80: 0541 addi a0,a0,16 - c0018c82: 5593d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35787 + c0018e4e: 864a mv a2,s2 + c0018e50: 0541 addi a0,a0,16 + c0018e52: 5593d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35795 s->ptr += size; - c0018c86: 681c ld a5,16(s0) - c0018c88: 97ca add a5,a5,s2 - c0018c8a: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35788 + c0018e56: 681c ld a5,16(s0) + c0018e58: 97ca add a5,a5,s2 + c0018e5a: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35796 if (!is_wide_char) { - c0018c8c: fa099ee3 bnez s3,c0018c48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35789 + c0018e5c: fa099ee3 bnez s3,c0018e18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35797 p->u.str8[size] = '\0'; /* add the trailing zero for 8 bit strings */ - c0018c90: 9926 add s2,s2,s1 - c0018c92: 00090823 sb zero,16(s2) - c0018c96: bf4d j c0018c48 + c0018e60: 9926 add s2,s2,s1 + c0018e62: 00090823 sb zero,16(s2) + c0018e66: bf4d j c0018e18 -00000000c0018c98 : +00000000c0018e68 : JS_NewBigInt64_1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12123 -{ - c0018c98: 715d addi sp,sp,-80 - c0018c9a: e0a2 sd s0,64(sp) - c0018c9c: fc26 sd s1,56(sp) - c0018c9e: f84a sd s2,48(sp) - c0018ca0: f44e sd s3,40(sp) - c0018ca2: e486 sd ra,72(sp) - c0018ca4: 892a mv s2,a0 - c0018ca6: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12131 +{ + c0018e68: 715d addi sp,sp,-80 + c0018e6a: e0a2 sd s0,64(sp) + c0018e6c: fc26 sd s1,56(sp) + c0018e6e: f84a sd s2,48(sp) + c0018e70: f44e sd s3,40(sp) + c0018e72: e486 sd ra,72(sp) + c0018e74: 892a mv s2,a0 + c0018e76: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12134 val = JS_NewBigInt(ctx); - c0018ca8: 8f3fc0ef jal ra,c001559a - c0018cac: e02a sd a0,0(sp) - c0018cae: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12127 + c0018e78: 8f3fc0ef jal ra,c001576a + c0018e7c: e02a sd a0,0(sp) + c0018e7e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 if (JS_IsException(val)) - c0018cb0: 0005871b sext.w a4,a1 - c0018cb4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12126 + c0018e80: 0005871b sext.w a4,a1 + c0018e84: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12134 val = JS_NewBigInt(ctx); - c0018cb6: 84aa mv s1,a0 - c0018cb8: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12127 + c0018e86: 84aa mv s1,a0 + c0018e88: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 if (JS_IsException(val)) - c0018cba: 00f71d63 bne a4,a5,c0018cd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12134 + c0018e8a: 00f71d63 bne a4,a5,c0018ea4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12142 return val; - c0018cbe: ec22 sd s0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 + c0018e8e: ec22 sd s0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 } - c0018cc0: 60a6 ld ra,72(sp) - c0018cc2: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12134 + c0018e90: 60a6 ld ra,72(sp) + c0018e92: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12142 return val; - c0018cc4: e826 sd s1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 + c0018e94: e826 sd s1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 } - c0018cc6: 6542 ld a0,16(sp) - c0018cc8: 65e2 ld a1,24(sp) - c0018cca: 74e2 ld s1,56(sp) - c0018ccc: 7942 ld s2,48(sp) - c0018cce: 79a2 ld s3,40(sp) - c0018cd0: 6161 addi sp,sp,80 - c0018cd2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12130 + c0018e96: 6542 ld a0,16(sp) + c0018e98: 65e2 ld a1,24(sp) + c0018e9a: 74e2 ld s1,56(sp) + c0018e9c: 7942 ld s2,48(sp) + c0018e9e: 79a2 ld s3,40(sp) + c0018ea0: 6161 addi sp,sp,80 + c0018ea2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12138 if (bf_set_si(a, v)) { - c0018cd4: 85ce mv a1,s3 - c0018cd6: 00848513 addi a0,s1,8 - c0018cda: 400340ef jal ra,c004d0da - c0018cde: d165 beqz a0,c0018cbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12131 + c0018ea4: 85ce mv a1,s3 + c0018ea6: 00848513 addi a0,s1,8 + c0018eaa: 400340ef jal ra,c004d2aa + c0018eae: d165 beqz a0,c0018e8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12139 JS_FreeValue(ctx, val); - c0018ce0: 6582 ld a1,0(sp) - c0018ce2: 6622 ld a2,8(sp) - c0018ce4: 854a mv a0,s2 - c0018ce6: e53ee0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 + c0018eb0: 6582 ld a1,0(sp) + c0018eb2: 6622 ld a2,8(sp) + c0018eb4: 854a mv a0,s2 + c0018eb6: d71ee0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 } - c0018cea: 6406 ld s0,64(sp) - c0018cec: 60a6 ld ra,72(sp) - c0018cee: 74e2 ld s1,56(sp) - c0018cf0: 79a2 ld s3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12132 + c0018eba: 6406 ld s0,64(sp) + c0018ebc: 60a6 ld ra,72(sp) + c0018ebe: 74e2 ld s1,56(sp) + c0018ec0: 79a2 ld s3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12140 return JS_ThrowOutOfMemory(ctx); - c0018cf2: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12135 + c0018ec2: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 } - c0018cf4: 7942 ld s2,48(sp) - c0018cf6: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12132 + c0018ec4: 7942 ld s2,48(sp) + c0018ec6: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12140 return JS_ThrowOutOfMemory(ctx); - c0018cf8: f25fb06f j c0014c1c + c0018ec8: e43fb06f j c0014d0a -00000000c0018cfc : +00000000c0018ecc : JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12146 { - c0018cfc: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12145 + c0018ecc: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12153 } - c0018cfe: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 + c0018ece: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c0018d00: f99ff06f j c0018c98 + c0018ed0: f99ff06f j c0018e68 -00000000c0018d04 : - c0018d04: 618c ld a1,0(a1) +00000000c0018ed4 : + c0018ed4: 618c ld a1,0(a1) js_TA_get_int64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54306 static JSValue js_TA_get_int64(JSContext *ctx, const void *a) { - c0018d06: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54300 + c0018ed6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54308 } - c0018d08: 6105 addi sp,sp,32 + c0018ed8: 6105 addi sp,sp,32 JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c0018d0a: f8fff06f j c0018c98 + c0018eda: f8fff06f j c0018e68 -00000000c0018d0e : +00000000c0018ede : JS_NewBigUint64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12148 -{ - c0018d0e: 715d addi sp,sp,-80 - c0018d10: e0a2 sd s0,64(sp) - c0018d12: fc26 sd s1,56(sp) - c0018d14: f84a sd s2,48(sp) - c0018d16: f44e sd s3,40(sp) - c0018d18: e486 sd ra,72(sp) - c0018d1a: 892a mv s2,a0 - c0018d1c: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12154 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12156 +{ + c0018ede: 715d addi sp,sp,-80 + c0018ee0: e0a2 sd s0,64(sp) + c0018ee2: fc26 sd s1,56(sp) + c0018ee4: f84a sd s2,48(sp) + c0018ee6: f44e sd s3,40(sp) + c0018ee8: e486 sd ra,72(sp) + c0018eea: 892a mv s2,a0 + c0018eec: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12162 val = JS_NewBigInt(ctx); - c0018d1e: 87dfc0ef jal ra,c001559a - c0018d22: e02a sd a0,0(sp) - c0018d24: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12155 + c0018eee: 87dfc0ef jal ra,c001576a + c0018ef2: e02a sd a0,0(sp) + c0018ef4: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12163 if (JS_IsException(val)) - c0018d26: 0005871b sext.w a4,a1 - c0018d2a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12154 + c0018ef6: 0005871b sext.w a4,a1 + c0018efa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12162 val = JS_NewBigInt(ctx); - c0018d2c: 84aa mv s1,a0 - c0018d2e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12155 - if (JS_IsException(val)) - c0018d30: 00f71d63 bne a4,a5,c0018d4a + c0018efc: 84aa mv s1,a0 + c0018efe: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12163 + if (JS_IsException(val)) + c0018f00: 00f71d63 bne a4,a5,c0018f1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12171 return val; - c0018d34: ec22 sd s0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12164 + c0018f04: ec22 sd s0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12172 } - c0018d36: 60a6 ld ra,72(sp) - c0018d38: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12163 + c0018f06: 60a6 ld ra,72(sp) + c0018f08: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12171 return val; - c0018d3a: e826 sd s1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12164 -} - c0018d3c: 6542 ld a0,16(sp) - c0018d3e: 65e2 ld a1,24(sp) - c0018d40: 74e2 ld s1,56(sp) - c0018d42: 7942 ld s2,48(sp) - c0018d44: 79a2 ld s3,40(sp) - c0018d46: 6161 addi sp,sp,80 - c0018d48: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12158 + c0018f0a: e826 sd s1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12172 +} + c0018f0c: 6542 ld a0,16(sp) + c0018f0e: 65e2 ld a1,24(sp) + c0018f10: 74e2 ld s1,56(sp) + c0018f12: 7942 ld s2,48(sp) + c0018f14: 79a2 ld s3,40(sp) + c0018f16: 6161 addi sp,sp,80 + c0018f18: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12166 if (bf_set_ui(a, v)) { - c0018d4a: 85ce mv a1,s3 - c0018d4c: 00848513 addi a0,s1,8 - c0018d50: 32c340ef jal ra,c004d07c - c0018d54: d165 beqz a0,c0018d34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12159 + c0018f1a: 85ce mv a1,s3 + c0018f1c: 00848513 addi a0,s1,8 + c0018f20: 32c340ef jal ra,c004d24c + c0018f24: d165 beqz a0,c0018f04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12167 JS_FreeValue(ctx, val); - c0018d56: 6582 ld a1,0(sp) - c0018d58: 6622 ld a2,8(sp) - c0018d5a: 854a mv a0,s2 - c0018d5c: dddee0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12164 -} - c0018d60: 6406 ld s0,64(sp) - c0018d62: 60a6 ld ra,72(sp) - c0018d64: 74e2 ld s1,56(sp) - c0018d66: 79a2 ld s3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12160 + c0018f26: 6582 ld a1,0(sp) + c0018f28: 6622 ld a2,8(sp) + c0018f2a: 854a mv a0,s2 + c0018f2c: cfbee0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12172 +} + c0018f30: 6406 ld s0,64(sp) + c0018f32: 60a6 ld ra,72(sp) + c0018f34: 74e2 ld s1,56(sp) + c0018f36: 79a2 ld s3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12168 return JS_ThrowOutOfMemory(ctx); - c0018d68: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12164 + c0018f38: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12172 } - c0018d6a: 7942 ld s2,48(sp) - c0018d6c: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12160 + c0018f3a: 7942 ld s2,48(sp) + c0018f3c: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12168 return JS_ThrowOutOfMemory(ctx); - c0018d6e: eaffb06f j c0014c1c + c0018f3e: dcdfb06f j c0014d0a -00000000c0018d72 : +00000000c0018f42 : js_TA_get_uint64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54303 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54311 return JS_NewBigUint64(ctx, *(uint64_t *)a); - c0018d72: 618c ld a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54302 + c0018f42: 618c ld a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54310 static JSValue js_TA_get_uint64(JSContext *ctx, const void *a) { - c0018d74: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54304 + c0018f44: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54312 } - c0018d76: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54303 + c0018f46: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54311 return JS_NewBigUint64(ctx, *(uint64_t *)a); - c0018d78: f97ff06f j c0018d0e + c0018f48: f97ff06f j c0018ede -00000000c0018d7c : +00000000c0018f4c : js_string_to_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10207 -{ - c0018d7c: 715d addi sp,sp,-80 - c0018d7e: e0a2 sd s0,64(sp) - c0018d80: fc26 sd s1,56(sp) - c0018d82: e486 sd ra,72(sp) - c0018d84: 842a mv s0,a0 - c0018d86: 84ae mv s1,a1 - c0018d88: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10211 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10215 +{ + c0018f4c: 715d addi sp,sp,-80 + c0018f4e: e0a2 sd s0,64(sp) + c0018f50: fc26 sd s1,56(sp) + c0018f52: e486 sd ra,72(sp) + c0018f54: 842a mv s0,a0 + c0018f56: 84ae mv s1,a1 + c0018f58: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10219 val = JS_NewBigInt(ctx); - c0018d8a: 811fc0ef jal ra,c001559a - c0018d8e: e82a sd a0,16(sp) - c0018d90: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10212 + c0018f5a: 811fc0ef jal ra,c001576a + c0018f5e: e82a sd a0,16(sp) + c0018f60: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10220 if (JS_IsException(val)) - c0018d92: 0005871b sext.w a4,a1 - c0018d96: 4799 li a5,6 - c0018d98: 66a2 ld a3,8(sp) - c0018d9a: 00f71b63 bne a4,a5,c0018db0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10226 -} - c0018d9e: 60a6 ld ra,72(sp) - c0018da0: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10225 + c0018f62: 0005871b sext.w a4,a1 + c0018f66: 4799 li a5,6 + c0018f68: 66a2 ld a3,8(sp) + c0018f6a: 00f71b63 bne a4,a5,c0018f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10234 +} + c0018f6e: 60a6 ld ra,72(sp) + c0018f70: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10233 return val; - c0018da2: f02a sd a0,32(sp) - c0018da4: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10226 -} - c0018da6: 7502 ld a0,32(sp) - c0018da8: 75a2 ld a1,40(sp) - c0018daa: 74e2 ld s1,56(sp) - c0018dac: 6161 addi sp,sp,80 - c0018dae: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10215 + c0018f72: f02a sd a0,32(sp) + c0018f74: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10234 +} + c0018f76: 7502 ld a0,32(sp) + c0018f78: 75a2 ld a1,40(sp) + c0018f7a: 74e2 ld s1,56(sp) + c0018f7c: 6161 addi sp,sp,80 + c0018f7e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10223 ret = bf_atof(a, buf, NULL, radix, BF_PREC_INF, BF_RNDZ); - c0018db0: 577d li a4,-1 - c0018db2: 4601 li a2,0 - c0018db4: 85a6 mv a1,s1 - c0018db6: 4785 li a5,1 - c0018db8: 8309 srli a4,a4,0x2 - c0018dba: 0521 addi a0,a0,8 - c0018dbc: 4fd370ef jal ra,c0050ab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10216 + c0018f80: 577d li a4,-1 + c0018f82: 4601 li a2,0 + c0018f84: 85a6 mv a1,s1 + c0018f86: 4785 li a5,1 + c0018f88: 8309 srli a4,a4,0x2 + c0018f8a: 0521 addi a0,a0,8 + c0018f8c: 4fd370ef jal ra,c0050c88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10224 if (ret & BF_ST_MEM_ERROR) { - c0018dc0: 02057513 andi a0,a0,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10217 + c0018f90: 02057513 andi a0,a0,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10225 JS_FreeValue(ctx, val); - c0018dc4: 65c2 ld a1,16(sp) - c0018dc6: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10216 + c0018f94: 65c2 ld a1,16(sp) + c0018f96: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10224 if (ret & BF_ST_MEM_ERROR) { - c0018dc8: c919 beqz a0,c0018dde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10217 + c0018f98: c919 beqz a0,c0018fae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10225 JS_FreeValue(ctx, val); - c0018dca: 8522 mv a0,s0 - c0018dcc: d6dee0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10218 - return JS_ThrowOutOfMemory(ctx); - c0018dd0: 8522 mv a0,s0 + c0018f9a: 8522 mv a0,s0 + c0018f9c: c8bee0ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10226 + return JS_ThrowOutOfMemory(ctx); + c0018fa0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10234 } - c0018dd2: 6406 ld s0,64(sp) - c0018dd4: 60a6 ld ra,72(sp) - c0018dd6: 74e2 ld s1,56(sp) - c0018dd8: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10218 + c0018fa2: 6406 ld s0,64(sp) + c0018fa4: 60a6 ld ra,72(sp) + c0018fa6: 74e2 ld s1,56(sp) + c0018fa8: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10226 return JS_ThrowOutOfMemory(ctx); - c0018dda: e43fb06f j c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10223 + c0018faa: d61fb06f j c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10231 val = JS_CompactBigInt1(ctx, val, FALSE); - c0018dde: 8522 mv a0,s0 - c0018de0: d82ed0ef jal ra,c0006362 - c0018de4: bf6d j c0018d9e + c0018fae: 8522 mv a0,s0 + c0018fb0: ca0ed0ef jal ra,c0006450 + c0018fb4: bf6d j c0018f6e -00000000c0018de6 : +00000000c0018fb6 : throw_bf_exception(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12408 if (status & BF_ST_MEM_ERROR) - c0018de6: 0205f713 andi a4,a1,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12397 + c0018fb6: 0205f713 andi a4,a1,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12405 static JSValue throw_bf_exception(JSContext *ctx, int status) - c0018dea: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12400 + c0018fba: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12408 if (status & BF_ST_MEM_ERROR) - c0018dec: c701 beqz a4,c0018df4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12410 + c0018fbc: c701 beqz a4,c0018fc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12418 } - c0018dee: 6105 addi sp,sp,32 + c0018fbe: 6105 addi sp,sp,32 JS_NewSymbol(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3074 return JS_ThrowOutOfMemory(ctx); - c0018df0: e2dfb06f j c0014c1c + c0018fc0: d4bfb06f j c0014d0a throw_bf_exception(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12410 if (status & BF_ST_DIVIDE_ZERO) { - c0018df4: 0025f713 andi a4,a1,2 - c0018df8: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12403 + c0018fc4: 0025f713 andi a4,a1,2 + c0018fc8: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12411 str = "division by zero"; - c0018dfa: 00045617 auipc a2,0x45 - c0018dfe: 37660613 addi a2,a2,886 # c005e170 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 + c0018fca: 00045617 auipc a2,0x45 + c0018fce: 40660613 addi a2,a2,1030 # c005e3d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12410 if (status & BF_ST_DIVIDE_ZERO) { - c0018e02: eb19 bnez a4,c0018e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12404 + c0018fd2: eb19 bnez a4,c0018fe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12412 } else if (status & BF_ST_INVALID_OP) { - c0018e04: 8985 andi a1,a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12405 + c0018fd4: 8985 andi a1,a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12413 str = "invalid operation"; - c0018e06: 00045617 auipc a2,0x45 - c0018e0a: 38260613 addi a2,a2,898 # c005e188 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12404 + c0018fd6: 00045617 auipc a2,0x45 + c0018fda: 41260613 addi a2,a2,1042 # c005e3e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12412 } else if (status & BF_ST_INVALID_OP) { - c0018e0e: e589 bnez a1,c0018e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12407 + c0018fde: e589 bnez a1,c0018fe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12415 str = "integer overflow"; - c0018e10: 00045617 auipc a2,0x45 - c0018e14: 39060613 addi a2,a2,912 # c005e1a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12409 + c0018fe0: 00045617 auipc a2,0x45 + c0018fe4: 42060613 addi a2,a2,1056 # c005e400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12417 return JS_ThrowRangeError(ctx, "%s", str); - c0018e18: 00045597 auipc a1,0x45 - c0018e1c: 3a058593 addi a1,a1,928 # c005e1b8 - c0018e20: 853e mv a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12410 + c0018fe8: 00045597 auipc a1,0x45 + c0018fec: 43058593 addi a1,a1,1072 # c005e418 + c0018ff0: 853e mv a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12418 } - c0018e22: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12409 + c0018ff2: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12417 return JS_ThrowRangeError(ctx, "%s", str); - c0018e24: b37fb06f j c001495a + c0018ff4: a55fb06f j c0014a48 -00000000c0018e28 : +00000000c0018ff8 : string_buffer_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3672 { - c0018e28: 7179 addi sp,sp,-48 - c0018e2a: f406 sd ra,40(sp) - c0018e2c: f022 sd s0,32(sp) - c0018e2e: ec26 sd s1,24(sp) - c0018e30: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3669 + c0018ff8: 7179 addi sp,sp,-48 + c0018ffa: f406 sd ra,40(sp) + c0018ffc: f022 sd s0,32(sp) + c0018ffe: ec26 sd s1,24(sp) + c0019000: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3677 if (s->error_status) - c0018e32: 01c52903 lw s2,28(a0) - c0018e36: 0a091663 bnez s2,c0018ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3672 + c0019002: 01c52903 lw s2,28(a0) + c0019006: 0a091663 bnez s2,c00190b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3680 if (new_len > JS_STRING_LEN_MAX) { - c0018e3a: 400007b7 lui a5,0x40000 - c0018e3e: 842a mv s0,a0 - c0018e40: 02f5c163 blt a1,a5,c0018e62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3673 + c001900a: 400007b7 lui a5,0x40000 + c001900e: 842a mv s0,a0 + c0019010: 02f5c163 blt a1,a5,c0019032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3681 JS_ThrowInternalError(s->ctx, "string too long"); - c0018e44: 6108 ld a0,0(a0) - c0018e46: 00045597 auipc a1,0x45 - c0018e4a: 37a58593 addi a1,a1,890 # c005e1c0 - c0018e4e: b37fb0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3674 + c0019014: 6108 ld a0,0(a0) + c0019016: 00045597 auipc a1,0x45 + c001901a: 40a58593 addi a1,a1,1034 # c005e420 + c001901e: a55fb0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3682 return string_buffer_set_error(s); - c0018e52: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 + c0019022: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3696 } - c0018e54: 7402 ld s0,32(sp) - c0018e56: 70a2 ld ra,40(sp) - c0018e58: 64e2 ld s1,24(sp) - c0018e5a: 6942 ld s2,16(sp) - c0018e5c: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3674 + c0019024: 7402 ld s0,32(sp) + c0019026: 70a2 ld ra,40(sp) + c0019028: 64e2 ld s1,24(sp) + c001902a: 6942 ld s2,16(sp) + c001902c: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3682 return string_buffer_set_error(s); - c0018e5e: fe3ed06f j c0006e40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3676 + c001902e: f01ed06f j c0006f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3684 new_size = min_int(max_int(new_len, s->size * 3 / 2), JS_STRING_LEN_MAX); - c0018e62: 495c lw a5,20(a0) - c0018e64: 448d li s1,3 - c0018e66: 02f484bb mulw s1,s1,a5 - c0018e6a: 4789 li a5,2 - c0018e6c: 02f4c7bb divw a5,s1,a5 - c0018e70: 84be mv s1,a5 - c0018e72: 00b7d463 bge a5,a1,c0018e7a - c0018e76: 0005849b sext.w s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3677 + c0019032: 495c lw a5,20(a0) + c0019034: 448d li s1,3 + c0019036: 02f484bb mulw s1,s1,a5 + c001903a: 4789 li a5,2 + c001903c: 02f4c7bb divw a5,s1,a5 + c0019040: 84be mv s1,a5 + c0019042: 00b7d463 bge a5,a1,c001904a + c0019046: 0005849b sext.w s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3685 if (!s->is_wide_char && c >= 0x100) { - c0018e7a: 4c1c lw a5,24(s0) - c0018e7c: ef91 bnez a5,c0018e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3677 (discriminator 1) - c0018e7e: 0ff00713 li a4,255 - c0018e82: 00c75b63 bge a4,a2,c0018e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3678 + c001904a: 4c1c lw a5,24(s0) + c001904c: ef91 bnez a5,c0019068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3685 (discriminator 1) + c001904e: 0ff00713 li a4,255 + c0019052: 00c75b63 bge a4,a2,c0019068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3686 return string_buffer_widen(s, new_size); - c0018e86: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 + c0019056: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3696 } - c0018e88: 7402 ld s0,32(sp) - c0018e8a: 70a2 ld ra,40(sp) - c0018e8c: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3678 + c0019058: 7402 ld s0,32(sp) + c001905a: 70a2 ld ra,40(sp) + c001905c: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3686 return string_buffer_widen(s, new_size); - c0018e8e: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 + c001905e: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3696 } - c0018e90: 64e2 ld s1,24(sp) - c0018e92: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3678 + c0019060: 64e2 ld s1,24(sp) + c0019062: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3686 return string_buffer_widen(s, new_size); - c0018e94: e32fe06f j c00174c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3680 + c0019064: e32fe06f j c0017696 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 new_size_bytes = sizeof(JSString) + (new_size << s->is_wide_char) + 1 - s->is_wide_char; - c0018e98: 00f4963b sllw a2,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3681 + c0019068: 00f4963b sllw a2,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3689 new_str = js_realloc2(s->ctx, s->str, new_size_bytes, &slack); - c0018e9c: 640c ld a1,8(s0) - c0018e9e: 6008 ld a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3680 + c001906c: 640c ld a1,8(s0) + c001906e: 6008 ld a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 new_size_bytes = sizeof(JSString) + (new_size << s->is_wide_char) + 1 - s->is_wide_char; - c0018ea0: 8e1d sub a2,a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3681 + c0019070: 8e1d sub a2,a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3689 new_str = js_realloc2(s->ctx, s->str, new_size_bytes, &slack); - c0018ea2: 0034 addi a3,sp,8 - c0018ea4: 0645 addi a2,a2,17 - c0018ea6: dcefe0ef jal ra,c0017474 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3682 + c0019072: 0034 addi a3,sp,8 + c0019074: 0645 addi a2,a2,17 + c0019076: dcefe0ef jal ra,c0017644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3690 if (!new_str) - c0018eaa: ed01 bnez a0,c0018ec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3683 + c001907a: ed01 bnez a0,c0019092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3691 return string_buffer_set_error(s); - c0018eac: 8522 mv a0,s0 - c0018eae: f93ed0ef jal ra,c0006e40 - c0018eb2: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3688 + c001907c: 8522 mv a0,s0 + c001907e: eb1ed0ef jal ra,c0006f2e + c0019082: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3696 } - c0018eb4: 70a2 ld ra,40(sp) - c0018eb6: 7402 ld s0,32(sp) - c0018eb8: 64e2 ld s1,24(sp) - c0018eba: 854a mv a0,s2 - c0018ebc: 6942 ld s2,16(sp) - c0018ebe: 6145 addi sp,sp,48 - c0018ec0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3684 + c0019084: 70a2 ld ra,40(sp) + c0019086: 7402 ld s0,32(sp) + c0019088: 64e2 ld s1,24(sp) + c001908a: 854a mv a0,s2 + c001908c: 6942 ld s2,16(sp) + c001908e: 6145 addi sp,sp,48 + c0019090: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3692 new_size = min_int(new_size + (slack >> s->is_wide_char), JS_STRING_LEN_MAX); - c0018ec2: 4c18 lw a4,24(s0) - c0018ec4: 67a2 ld a5,8(sp) - c0018ec6: 00e7d7b3 srl a5,a5,a4 - c0018eca: 9cbd addw s1,s1,a5 + c0019092: 4c18 lw a4,24(s0) + c0019094: 67a2 ld a5,8(sp) + c0019096: 00e7d7b3 srl a5,a5,a4 + c001909a: 9cbd addw s1,s1,a5 min_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c0018ecc: 400007b7 lui a5,0x40000 - c0018ed0: ffe78713 addi a4,a5,-2 # 3ffffffe <__clzdi2-0x80000002> - c0018ed4: 00975463 bge a4,s1,c0018edc + c001909c: 400007b7 lui a5,0x40000 + c00190a0: ffe78713 addi a4,a5,-2 # 3ffffffe <__clzdi2-0x80000002> + c00190a4: 00975463 bge a4,s1,c00190ac /Users/Luppy/riscv/quickjs-nuttx/cutils.h:82 return b; - c0018ed8: fff78493 addi s1,a5,-1 + c00190a8: fff78493 addi s1,a5,-1 string_buffer_realloc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3685 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3693 s->size = new_size; - c0018edc: c844 sw s1,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3686 + c00190ac: c844 sw s1,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3694 s->str = new_str; - c0018ede: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3687 + c00190ae: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3695 return 0; - c0018ee0: bfd1 j c0018eb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3670 + c00190b0: bfd1 j c0019084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3678 return -1; - c0018ee2: 597d li s2,-1 - c0018ee4: bfc1 j c0018eb4 + c00190b2: 597d li s2,-1 + c00190b4: bfc1 j c0019084 -00000000c0018ee6 : +00000000c00190b6 : string_buffer_write8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3776 -{ - c0018ee6: 7179 addi sp,sp,-48 - c0018ee8: f022 sd s0,32(sp) - c0018eea: ec26 sd s1,24(sp) - c0018eec: e44e sd s3,8(sp) - c0018eee: f406 sd ra,40(sp) - c0018ef0: e84a sd s2,16(sp) - c0018ef2: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3779 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3784 +{ + c00190b6: 7179 addi sp,sp,-48 + c00190b8: f022 sd s0,32(sp) + c00190ba: ec26 sd s1,24(sp) + c00190bc: e44e sd s3,8(sp) + c00190be: f406 sd ra,40(sp) + c00190c0: e84a sd s2,16(sp) + c00190c2: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3787 if (s->len + len > s->size) { - c0018ef4: 490c lw a1,16(a0) - c0018ef6: 495c lw a5,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3776 + c00190c4: 490c lw a1,16(a0) + c00190c6: 495c lw a5,20(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3784 { - c0018ef8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3779 + c00190c8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3787 if (s->len + len > s->size) { - c0018efa: 9db1 addw a1,a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3776 + c00190ca: 9db1 addw a1,a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3784 { - c0018efc: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3779 + c00190cc: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3787 if (s->len + len > s->size) { - c0018efe: 02b7c363 blt a5,a1,c0018f24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3783 + c00190ce: 02b7c363 blt a5,a1,c00190f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3791 if (s->is_wide_char) { - c0018f02: 01842903 lw s2,24(s0) - c0018f06: 4701 li a4,0 - c0018f08: 04091763 bnez s2,c0018f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3789 + c00190d2: 01842903 lw s2,24(s0) + c00190d6: 4701 li a4,0 + c00190d8: 04091763 bnez s2,c0019126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3797 memcpy(&s->str->u.str8[s->len], p, len); - c0018f0c: 481c lw a5,16(s0) - c0018f0e: 6408 ld a0,8(s0) - c0018f10: 8626 mv a2,s1 - c0018f12: 07c1 addi a5,a5,16 - c0018f14: 85ce mv a1,s3 - c0018f16: 953e add a0,a0,a5 - c0018f18: 2c33d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3790 + c00190dc: 481c lw a5,16(s0) + c00190de: 6408 ld a0,8(s0) + c00190e0: 8626 mv a2,s1 + c00190e2: 07c1 addi a5,a5,16 + c00190e4: 85ce mv a1,s3 + c00190e6: 953e add a0,a0,a5 + c00190e8: 2c33d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3798 s->len += len; - c0018f1c: 4810 lw a2,16(s0) - c0018f1e: 9cb1 addw s1,s1,a2 - c0018f20: c804 sw s1,16(s0) - c0018f22: a031 j c0018f2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3780 + c00190ec: 4810 lw a2,16(s0) + c00190ee: 9cb1 addw s1,s1,a2 + c00190f0: c804 sw s1,16(s0) + c00190f2: a031 j c00190fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3788 if (string_buffer_realloc(s, s->len + len, 0)) - c0018f24: 4601 li a2,0 - c0018f26: f03ff0ef jal ra,c0018e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3781 + c00190f4: 4601 li a2,0 + c00190f6: f03ff0ef jal ra,c0018ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3789 return -1; - c0018f2a: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3780 + c00190fa: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3788 if (string_buffer_realloc(s, s->len + len, 0)) - c0018f2c: d979 beqz a0,c0018f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3793 -} - c0018f2e: 70a2 ld ra,40(sp) - c0018f30: 7402 ld s0,32(sp) - c0018f32: 64e2 ld s1,24(sp) - c0018f34: 69a2 ld s3,8(sp) - c0018f36: 854a mv a0,s2 - c0018f38: 6942 ld s2,16(sp) - c0018f3a: 6145 addi sp,sp,48 - c0018f3c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3785 (discriminator 3) + c00190fc: d979 beqz a0,c00190d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3801 +} + c00190fe: 70a2 ld ra,40(sp) + c0019100: 7402 ld s0,32(sp) + c0019102: 64e2 ld s1,24(sp) + c0019104: 69a2 ld s3,8(sp) + c0019106: 854a mv a0,s2 + c0019108: 6942 ld s2,16(sp) + c001910a: 6145 addi sp,sp,48 + c001910c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3793 (discriminator 3) s->str->u.str16[s->len + i] = p[i]; - c0018f3e: 6414 ld a3,8(s0) - c0018f40: 9fb1 addw a5,a5,a2 - c0018f42: 07a1 addi a5,a5,8 - c0018f44: 0786 slli a5,a5,0x1 - c0018f46: 97b6 add a5,a5,a3 - c0018f48: 00e986b3 add a3,s3,a4 - c0018f4c: 0006c683 lbu a3,0(a3) - c0018f50: 0705 addi a4,a4,1 - c0018f52: 00d79023 sh a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3784 (discriminator 3) + c001910e: 6414 ld a3,8(s0) + c0019110: 9fb1 addw a5,a5,a2 + c0019112: 07a1 addi a5,a5,8 + c0019114: 0786 slli a5,a5,0x1 + c0019116: 97b6 add a5,a5,a3 + c0019118: 00e986b3 add a3,s3,a4 + c001911c: 0006c683 lbu a3,0(a3) + c0019120: 0705 addi a4,a4,1 + c0019122: 00d79023 sh a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3792 (discriminator 3) for (i = 0; i < len; i++) { - c0018f56: 0007079b sext.w a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3785 (discriminator 1) + c0019126: 0007079b sext.w a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3793 (discriminator 1) s->str->u.str16[s->len + i] = p[i]; - c0018f5a: 4810 lw a2,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3784 (discriminator 1) + c001912a: 4810 lw a2,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3792 (discriminator 1) for (i = 0; i < len; i++) { - c0018f5c: fe97c1e3 blt a5,s1,c0018f3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3787 + c001912c: fe97c1e3 blt a5,s1,c001910e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3795 s->len += len; - c0018f60: 9cb1 addw s1,s1,a2 - c0018f62: c804 sw s1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3792 + c0019130: 9cb1 addw s1,s1,a2 + c0019132: c804 sw s1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3800 return 0; - c0018f64: 4901 li s2,0 - c0018f66: b7e1 j c0018f2e + c0019134: 4901 li s2,0 + c0019136: b7e1 j c00190fe -00000000c0018f68 : +00000000c0019138 : string_buffer_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3838 if (to <= from) - c0018f68: 0ed67063 bgeu a2,a3,c0019048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3829 -{ - c0018f6c: 7179 addi sp,sp,-48 - c0018f6e: ec26 sd s1,24(sp) - c0018f70: e84a sd s2,16(sp) - c0018f72: e44e sd s3,8(sp) - c0018f74: f406 sd ra,40(sp) - c0018f76: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 + c0019138: 0ed67063 bgeu a2,a3,c0019218 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3837 +{ + c001913c: 7179 addi sp,sp,-48 + c001913e: ec26 sd s1,24(sp) + c0019140: e84a sd s2,16(sp) + c0019142: e44e sd s3,8(sp) + c0019144: f406 sd ra,40(sp) + c0019146: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3840 if (p->is_wide_char) - c0018f78: 41d8 lw a4,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3833 + c0019148: 41d8 lw a4,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3841 return string_buffer_write16(s, p->u.str16 + from, to - from); - c0018f7a: 02061793 slli a5,a2,0x20 - c0018f7e: 40c689bb subw s3,a3,a2 - c0018f82: 01058913 addi s2,a1,16 - c0018f86: 9381 srli a5,a5,0x20 - c0018f88: 84ce mv s1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 + c001914a: 02061793 slli a5,a2,0x20 + c001914e: 40c689bb subw s3,a3,a2 + c0019152: 01058913 addi s2,a1,16 + c0019156: 9381 srli a5,a5,0x20 + c0019158: 84ce mv s1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3840 if (p->is_wide_char) - c0018f8a: 0a075463 bgez a4,c0019032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3833 + c001915a: 0a075463 bgez a4,c0019202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3841 return string_buffer_write16(s, p->u.str16 + from, to - from); - c0018f8e: 0786 slli a5,a5,0x1 - c0018f90: 993e add s2,s2,a5 - c0018f92: 842a mv s0,a0 + c001915e: 0786 slli a5,a5,0x1 + c0019160: 993e add s2,s2,a5 + c0019162: 842a mv s0,a0 string_buffer_write16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3799 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3807 for (i = 0; i < len; i++) { - c0018f94: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3797 + c0019164: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3805 int c = 0, i; - c0018f96: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3799 + c0019166: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3807 for (i = 0; i < len; i++) { - c0018f98: 0007871b sext.w a4,a5 - c0018f9c: 03374d63 blt a4,s3,c0018fd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3802 + c0019168: 0007871b sext.w a4,a5 + c001916c: 03374d63 blt a4,s3,c00191a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3810 if (s->len + len > s->size) { - c0018fa0: 481c lw a5,16(s0) - c0018fa2: 484c lw a1,20(s0) - c0018fa4: 9fa5 addw a5,a5,s1 - c0018fa6: 04f5d863 bge a1,a5,c0018ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3803 + c0019170: 481c lw a5,16(s0) + c0019172: 484c lw a1,20(s0) + c0019174: 9fa5 addw a5,a5,s1 + c0019176: 04f5d863 bge a1,a5,c00191c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3811 if (string_buffer_realloc(s, s->len + len, c)) - c0018faa: 85be mv a1,a5 - c0018fac: 8522 mv a0,s0 - c0018fae: e7bff0ef jal ra,c0018e28 - c0018fb2: e915 bnez a0,c0018fe6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3809 + c001917a: 85be mv a1,a5 + c001917c: 8522 mv a0,s0 + c001917e: e7bff0ef jal ra,c0018ff8 + c0019182: e915 bnez a0,c00191b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3817 if (s->is_wide_char) { - c0018fb4: 4c1c lw a5,24(s0) - c0018fb6: cfa5 beqz a5,c001902e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3810 + c0019184: 4c1c lw a5,24(s0) + c0019186: cfa5 beqz a5,c00191fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3818 memcpy(&s->str->u.str16[s->len], p, len << 1); - c0018fb8: 481c lw a5,16(s0) - c0018fba: 6408 ld a0,8(s0) - c0018fbc: 0014961b slliw a2,s1,0x1 - c0018fc0: 07a1 addi a5,a5,8 - c0018fc2: 0786 slli a5,a5,0x1 - c0018fc4: 85ca mv a1,s2 - c0018fc6: 953e add a0,a0,a5 - c0018fc8: 2133d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3811 + c0019188: 481c lw a5,16(s0) + c001918a: 6408 ld a0,8(s0) + c001918c: 0014961b slliw a2,s1,0x1 + c0019190: 07a1 addi a5,a5,8 + c0019192: 0786 slli a5,a5,0x1 + c0019194: 85ca mv a1,s2 + c0019196: 953e add a0,a0,a5 + c0019198: 2133d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3819 s->len += len; - c0018fcc: 4814 lw a3,16(s0) - c0018fce: 9cb5 addw s1,s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3816 + c001919c: 4814 lw a3,16(s0) + c001919e: 9cb5 addw s1,s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 s->len += len; - c0018fd0: c804 sw s1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3818 + c00191a0: c804 sw s1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3826 return 0; - c0018fd2: 4501 li a0,0 - c0018fd4: a811 j c0018fe8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3800 + c00191a2: 4501 li a0,0 + c00191a4: a811 j c00191b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3808 c |= p[i]; - c0018fd6: 00179713 slli a4,a5,0x1 - c0018fda: 974a add a4,a4,s2 - c0018fdc: 00075703 lhu a4,0(a4) - c0018fe0: 0785 addi a5,a5,1 - c0018fe2: 8e59 or a2,a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3799 + c00191a6: 00179713 slli a4,a5,0x1 + c00191aa: 974a add a4,a4,s2 + c00191ac: 00075703 lhu a4,0(a4) + c00191b0: 0785 addi a5,a5,1 + c00191b2: 8e59 or a2,a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3807 for (i = 0; i < len; i++) { - c0018fe4: bf55 j c0018f98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3804 + c00191b4: bf55 j c0019168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3812 return -1; - c0018fe6: 557d li a0,-1 + c00191b6: 557d li a0,-1 string_buffer_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3836 -} - c0018fe8: 70a2 ld ra,40(sp) - c0018fea: 7402 ld s0,32(sp) - c0018fec: 64e2 ld s1,24(sp) - c0018fee: 6942 ld s2,16(sp) - c0018ff0: 69a2 ld s3,8(sp) - c0018ff2: 6145 addi sp,sp,48 - c0018ff4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 +} + c00191b8: 70a2 ld ra,40(sp) + c00191ba: 7402 ld s0,32(sp) + c00191bc: 64e2 ld s1,24(sp) + c00191be: 6942 ld s2,16(sp) + c00191c0: 69a2 ld s3,8(sp) + c00191c2: 6145 addi sp,sp,48 + c00191c4: 8082 ret string_buffer_write16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3805 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3813 } else if (!s->is_wide_char && c >= 0x100) { - c0018ff6: 4c1c lw a5,24(s0) - c0018ff8: f3e1 bnez a5,c0018fb8 - c0018ffa: 0ff00793 li a5,255 - c0018ffe: 02c7d863 bge a5,a2,c001902e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3806 - if (string_buffer_widen(s, s->size)) - c0019002: 8522 mv a0,s0 - c0019004: cc2fe0ef jal ra,c00174c6 - c0019008: b76d j c0018fb2 + c00191c6: 4c1c lw a5,24(s0) + c00191c8: f3e1 bnez a5,c0019188 + c00191ca: 0ff00793 li a5,255 + c00191ce: 02c7d863 bge a5,a2,c00191fe /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3814 + if (string_buffer_widen(s, s->size)) + c00191d2: 8522 mv a0,s0 + c00191d4: cc2fe0ef jal ra,c0017696 + c00191d8: b76d j c0019182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3822 s->str->u.str8[s->len + i] = p[i]; - c001900a: 6414 ld a3,8(s0) - c001900c: 9fb1 addw a5,a5,a2 - c001900e: 97b6 add a5,a5,a3 - c0019010: 00171693 slli a3,a4,0x1 - c0019014: 96ca add a3,a3,s2 - c0019016: 0006d683 lhu a3,0(a3) - c001901a: 0705 addi a4,a4,1 - c001901c: 00d78823 sb a3,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3813 + c00191da: 6414 ld a3,8(s0) + c00191dc: 9fb1 addw a5,a5,a2 + c00191de: 97b6 add a5,a5,a3 + c00191e0: 00171693 slli a3,a4,0x1 + c00191e4: 96ca add a3,a3,s2 + c00191e6: 0006d683 lhu a3,0(a3) + c00191ea: 0705 addi a4,a4,1 + c00191ec: 00d78823 sb a3,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3821 for (i = 0; i < len; i++) { - c0019020: 0007079b sext.w a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3814 + c00191f0: 0007079b sext.w a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3822 s->str->u.str8[s->len + i] = p[i]; - c0019024: 4810 lw a2,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3813 + c00191f4: 4810 lw a2,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3821 for (i = 0; i < len; i++) { - c0019026: ff37c2e3 blt a5,s3,c001900a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3816 + c00191f6: ff37c2e3 blt a5,s3,c00191da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 s->len += len; - c001902a: 9cb1 addw s1,s1,a2 - c001902c: b755 j c0018fd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3797 + c00191fa: 9cb1 addw s1,s1,a2 + c00191fc: b755 j c00191a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3805 int c = 0, i; - c001902e: 4701 li a4,0 - c0019030: bfc5 j c0019020 + c00191fe: 4701 li a4,0 + c0019200: bfc5 j c00191f0 string_buffer_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 } - c0019032: 7402 ld s0,32(sp) - c0019034: 70a2 ld ra,40(sp) - c0019036: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3835 + c0019202: 7402 ld s0,32(sp) + c0019204: 70a2 ld ra,40(sp) + c0019206: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3843 return string_buffer_write8(s, p->u.str8 + from, to - from); - c0019038: 864e mv a2,s3 - c001903a: 00f905b3 add a1,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3836 -} - c001903e: 69a2 ld s3,8(sp) - c0019040: 6942 ld s2,16(sp) - c0019042: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3835 + c0019208: 864e mv a2,s3 + c001920a: 00f905b3 add a1,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 +} + c001920e: 69a2 ld s3,8(sp) + c0019210: 6942 ld s2,16(sp) + c0019212: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3843 return string_buffer_write8(s, p->u.str8 + from, to - from); - c0019044: ea3ff06f j c0018ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3831 + c0019214: ea3ff06f j c00190b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3839 return 0; - c0019048: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3836 + c0019218: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 } - c001904a: 8082 ret + c001921a: 8082 ret -00000000c001904c : +00000000c001921c : string_buffer_puts8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3823 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3831 { - c001904c: 1101 addi sp,sp,-32 - c001904e: e822 sd s0,16(sp) - c0019050: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 + c001921c: 1101 addi sp,sp,-32 + c001921e: e822 sd s0,16(sp) + c0019220: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 return string_buffer_write8(s, (const uint8_t *)str, strlen(str)); - c0019052: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3823 + c0019222: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3831 { - c0019054: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 + c0019224: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 return string_buffer_write8(s, (const uint8_t *)str, strlen(str)); - c0019056: e42e sd a1,8(sp) - c0019058: 1593d0ef jal ra,c00569b0 - c001905c: 0005061b sext.w a2,a0 - c0019060: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3825 + c0019226: e42e sd a1,8(sp) + c0019228: 1593d0ef jal ra,c0056b80 + c001922c: 0005061b sext.w a2,a0 + c0019230: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3833 } - c0019062: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 + c0019232: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 return string_buffer_write8(s, (const uint8_t *)str, strlen(str)); - c0019064: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3825 + c0019234: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3833 } - c0019066: 60e2 ld ra,24(sp) - c0019068: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3824 + c0019236: 60e2 ld ra,24(sp) + c0019238: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3832 return string_buffer_write8(s, (const uint8_t *)str, strlen(str)); - c001906a: e7dff06f j c0018ee6 + c001923a: e7dff06f j c00190b6 -00000000c001906e : +00000000c001923e : encodeURI_hex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49236 static int encodeURI_hex(StringBuffer *b, int c) { - c001906e: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49233 + c001923e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49241 buf[n++] = '%'; - c0019070: 02500793 li a5,37 - c0019074: 00f10423 sb a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49228 + c0019240: 02500793 li a5,37 + c0019244: 00f10423 sb a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49236 static int encodeURI_hex(StringBuffer *b, int c) { - c0019078: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49234 + c0019248: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49242 if (c >= 256) { - c001907a: 0ff00713 li a4,255 - c001907e: 00044797 auipc a5,0x44 - c0019082: aaa78793 addi a5,a5,-1366 # c005cb28 - c0019086: 4605 li a2,1 - c0019088: 02b75763 bge a4,a1,c00190b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49235 + c001924a: 0ff00713 li a4,255 + c001924e: 00044797 auipc a5,0x44 + c0019252: b0a78793 addi a5,a5,-1270 # c005cd58 + c0019256: 4605 li a2,1 + c0019258: 02b75763 bge a4,a1,c0019286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49243 buf[n++] = 'u'; - c001908c: 07500713 li a4,117 - c0019090: 00e104a3 sb a4,9(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49236 + c001925c: 07500713 li a4,117 + c0019260: 00e104a3 sb a4,9(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49244 buf[n++] = hex[(c >> 12) & 15]; - c0019094: 40c5d71b sraiw a4,a1,0xc - c0019098: 8b3d andi a4,a4,15 - c001909a: 973e add a4,a4,a5 - c001909c: 00074703 lbu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49237 + c0019264: 40c5d71b sraiw a4,a1,0xc + c0019268: 8b3d andi a4,a4,15 + c001926a: 973e add a4,a4,a5 + c001926c: 00074703 lbu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49245 buf[n++] = hex[(c >> 8) & 15]; - c00190a0: 4611 li a2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49236 + c0019270: 4611 li a2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49244 buf[n++] = hex[(c >> 12) & 15]; - c00190a2: 00e10523 sb a4,10(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49237 + c0019272: 00e10523 sb a4,10(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49245 buf[n++] = hex[(c >> 8) & 15]; - c00190a6: 4085d71b sraiw a4,a1,0x8 - c00190aa: 8b3d andi a4,a4,15 - c00190ac: 973e add a4,a4,a5 - c00190ae: 00074703 lbu a4,0(a4) - c00190b2: 00e105a3 sb a4,11(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49239 + c0019276: 4085d71b sraiw a4,a1,0x8 + c001927a: 8b3d andi a4,a4,15 + c001927c: 973e add a4,a4,a5 + c001927e: 00074703 lbu a4,0(a4) + c0019282: 00e105a3 sb a4,11(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 buf[n++] = hex[(c >> 4) & 15]; - c00190b6: 0818 addi a4,sp,16 - c00190b8: 00c706b3 add a3,a4,a2 - c00190bc: 4045d71b sraiw a4,a1,0x4 - c00190c0: 8b3d andi a4,a4,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49240 + c0019286: 0818 addi a4,sp,16 + c0019288: 00c706b3 add a3,a4,a2 + c001928c: 4045d71b sraiw a4,a1,0x4 + c0019290: 8b3d andi a4,a4,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49248 buf[n++] = hex[(c >> 0) & 15]; - c00190c2: 89bd andi a1,a1,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49239 + c0019292: 89bd andi a1,a1,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 buf[n++] = hex[(c >> 4) & 15]; - c00190c4: 973e add a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49240 + c0019294: 973e add a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49248 buf[n++] = hex[(c >> 0) & 15]; - c00190c6: 95be add a1,a1,a5 - c00190c8: 0005c783 lbu a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49239 + c0019296: 95be add a1,a1,a5 + c0019298: 0005c783 lbu a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 buf[n++] = hex[(c >> 4) & 15]; - c00190cc: 00074703 lbu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49241 + c001929c: 00074703 lbu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49249 return string_buffer_write8(b, buf, n); - c00190d0: 002c addi a1,sp,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49240 + c00192a0: 002c addi a1,sp,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49248 buf[n++] = hex[(c >> 0) & 15]; - c00190d2: fef68ca3 sb a5,-7(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49239 + c00192a2: fef68ca3 sb a5,-7(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 buf[n++] = hex[(c >> 4) & 15]; - c00190d6: fee68c23 sb a4,-8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49241 + c00192a6: fee68c23 sb a4,-8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49249 return string_buffer_write8(b, buf, n); - c00190da: 0609 addi a2,a2,2 - c00190dc: e0bff0ef jal ra,c0018ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49242 + c00192aa: 0609 addi a2,a2,2 + c00192ac: e0bff0ef jal ra,c00190b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49250 } - c00190e0: 60e2 ld ra,24(sp) - c00190e2: 6105 addi sp,sp,32 - c00190e4: 8082 ret + c00192b0: 60e2 ld ra,24(sp) + c00192b2: 6105 addi sp,sp,32 + c00192b4: 8082 ret -00000000c00190e6 : +00000000c00192b6 : string_buffer_putc8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3718 { - c00190e6: 1101 addi sp,sp,-32 - c00190e8: e822 sd s0,16(sp) - c00190ea: e426 sd s1,8(sp) - c00190ec: ec06 sd ra,24(sp) - c00190ee: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3711 + c00192b6: 1101 addi sp,sp,-32 + c00192b8: e822 sd s0,16(sp) + c00192ba: e426 sd s1,8(sp) + c00192bc: ec06 sd ra,24(sp) + c00192be: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3719 if (unlikely(s->len >= s->size)) { - c00190f0: 495c lw a5,20(a0) - c00190f2: 490c lw a1,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3710 + c00192c0: 495c lw a5,20(a0) + c00192c2: 490c lw a1,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3718 { - c00190f4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3711 + c00192c4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3719 if (unlikely(s->len >= s->size)) { - c00190f6: 00f5dd63 bge a1,a5,c0019110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3716 + c00192c6: 00f5dd63 bge a1,a5,c00192e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3724 s->str->u.str16[s->len++] = c; - c00190fa: 481c lw a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3715 + c00192ca: 481c lw a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3723 if (s->is_wide_char) { - c00190fc: 4c14 lw a3,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3716 + c00192cc: 4c14 lw a3,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3724 s->str->u.str16[s->len++] = c; - c00190fe: 6418 ld a4,8(s0) - c0019100: 0017861b addiw a2,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3715 + c00192ce: 6418 ld a4,8(s0) + c00192d0: 0017861b addiw a2,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3723 if (s->is_wide_char) { - c0019104: e295 bnez a3,c0019128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3718 + c00192d4: e295 bnez a3,c00192f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3726 s->str->u.str8[s->len++] = c; - c0019106: c810 sw a2,16(s0) - c0019108: 97ba add a5,a5,a4 - c001910a: 00978823 sb s1,16(a5) - c001910e: a039 j c001911c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3712 + c00192d6: c810 sw a2,16(s0) + c00192d8: 97ba add a5,a5,a4 + c00192da: 00978823 sb s1,16(a5) + c00192de: a039 j c00192ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3720 if (string_buffer_realloc(s, s->len + 1, c)) - c0019110: 8626 mv a2,s1 - c0019112: 2585 addiw a1,a1,1 - c0019114: d15ff0ef jal ra,c0018e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3713 + c00192e0: 8626 mv a2,s1 + c00192e2: 2585 addiw a1,a1,1 + c00192e4: d15ff0ef jal ra,c0018ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3721 return -1; - c0019118: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3712 + c00192e8: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3720 if (string_buffer_realloc(s, s->len + 1, c)) - c001911a: d165 beqz a0,c00190fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3721 -} - c001911c: 60e2 ld ra,24(sp) - c001911e: 6442 ld s0,16(sp) - c0019120: 64a2 ld s1,8(sp) - c0019122: 8536 mv a0,a3 - c0019124: 6105 addi sp,sp,32 - c0019126: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3716 + c00192ea: d165 beqz a0,c00192ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3729 +} + c00192ec: 60e2 ld ra,24(sp) + c00192ee: 6442 ld s0,16(sp) + c00192f0: 64a2 ld s1,8(sp) + c00192f2: 8536 mv a0,a3 + c00192f4: 6105 addi sp,sp,32 + c00192f6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3724 s->str->u.str16[s->len++] = c; - c0019128: 07a1 addi a5,a5,8 - c001912a: 0786 slli a5,a5,0x1 - c001912c: c810 sw a2,16(s0) - c001912e: 97ba add a5,a5,a4 - c0019130: 00979023 sh s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3720 + c00192f8: 07a1 addi a5,a5,8 + c00192fa: 0786 slli a5,a5,0x1 + c00192fc: c810 sw a2,16(s0) + c00192fe: 97ba add a5,a5,a4 + c0019300: 00979023 sh s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3728 return 0; - c0019134: 4681 li a3,0 - c0019136: b7dd j c001911c + c0019304: 4681 li a3,0 + c0019306: b7dd j c00192ec -00000000c0019138 : +00000000c0019308 : string_buffer_putc_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3691 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3699 { - c0019138: 1101 addi sp,sp,-32 - c001913a: e822 sd s0,16(sp) - c001913c: e426 sd s1,8(sp) - c001913e: ec06 sd ra,24(sp) - c0019140: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3692 + c0019308: 1101 addi sp,sp,-32 + c001930a: e822 sd s0,16(sp) + c001930c: e426 sd s1,8(sp) + c001930e: ec06 sd ra,24(sp) + c0019310: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3700 if (unlikely(s->len >= s->size)) { - c0019142: 495c lw a5,20(a0) - c0019144: 490c lw a1,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3691 + c0019312: 495c lw a5,20(a0) + c0019314: 490c lw a1,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3699 { - c0019146: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3692 + c0019316: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3700 if (unlikely(s->len >= s->size)) { - c0019148: 02f5d163 bge a1,a5,c001916a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3696 + c0019318: 02f5d163 bge a1,a5,c001933a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3704 if (s->is_wide_char) { - c001914c: 4c08 lw a0,24(s0) - c001914e: e90d bnez a0,c0019180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3698 + c001931c: 4c08 lw a0,24(s0) + c001931e: e90d bnez a0,c0019350 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3706 } else if (c < 0x100) { - c0019150: 0ff00793 li a5,255 - c0019154: 0497e263 bltu a5,s1,c0019198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3699 + c0019320: 0ff00793 li a5,255 + c0019324: 0497e263 bltu a5,s1,c0019368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3707 s->str->u.str8[s->len++] = c; - c0019158: 4818 lw a4,16(s0) - c001915a: 641c ld a5,8(s0) - c001915c: 0017069b addiw a3,a4,1 - c0019160: c814 sw a3,16(s0) - c0019162: 97ba add a5,a5,a4 - c0019164: 00978823 sb s1,16(a5) - c0019168: a039 j c0019176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3693 + c0019328: 4818 lw a4,16(s0) + c001932a: 641c ld a5,8(s0) + c001932c: 0017069b addiw a3,a4,1 + c0019330: c814 sw a3,16(s0) + c0019332: 97ba add a5,a5,a4 + c0019334: 00978823 sb s1,16(a5) + c0019338: a039 j c0019346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3701 if (string_buffer_realloc(s, s->len + 1, c)) - c001916a: 8626 mv a2,s1 - c001916c: 2585 addiw a1,a1,1 - c001916e: cbbff0ef jal ra,c0018e28 - c0019172: dd69 beqz a0,c001914c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3694 + c001933a: 8626 mv a2,s1 + c001933c: 2585 addiw a1,a1,1 + c001933e: cbbff0ef jal ra,c0018ff8 + c0019342: dd69 beqz a0,c001931c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3702 return -1; - c0019174: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3706 -} - c0019176: 60e2 ld ra,24(sp) - c0019178: 6442 ld s0,16(sp) - c001917a: 64a2 ld s1,8(sp) - c001917c: 6105 addi sp,sp,32 - c001917e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3697 - s->str->u.str16[s->len++] = c; - c0019180: 481c lw a5,16(s0) - c0019182: 6418 ld a4,8(s0) + c0019344: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3714 +} + c0019346: 60e2 ld ra,24(sp) + c0019348: 6442 ld s0,16(sp) + c001934a: 64a2 ld s1,8(sp) + c001934c: 6105 addi sp,sp,32 + c001934e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3705 + s->str->u.str16[s->len++] = c; + c0019350: 481c lw a5,16(s0) + c0019352: 6418 ld a4,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3713 return 0; - c0019184: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3697 + c0019354: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3705 s->str->u.str16[s->len++] = c; - c0019186: 0017869b addiw a3,a5,1 - c001918a: 07a1 addi a5,a5,8 - c001918c: 0786 slli a5,a5,0x1 - c001918e: c814 sw a3,16(s0) - c0019190: 97ba add a5,a5,a4 - c0019192: 00979023 sh s1,0(a5) - c0019196: b7c5 j c0019176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3701 + c0019356: 0017869b addiw a3,a5,1 + c001935a: 07a1 addi a5,a5,8 + c001935c: 0786 slli a5,a5,0x1 + c001935e: c814 sw a3,16(s0) + c0019360: 97ba add a5,a5,a4 + c0019362: 00979023 sh s1,0(a5) + c0019366: b7c5 j c0019346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3709 if (string_buffer_widen(s, s->size)) - c0019198: 484c lw a1,20(s0) - c001919a: 8522 mv a0,s0 - c001919c: b2afe0ef jal ra,c00174c6 - c00191a0: f971 bnez a0,c0019174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3703 + c0019368: 484c lw a1,20(s0) + c001936a: 8522 mv a0,s0 + c001936c: b2afe0ef jal ra,c0017696 + c0019370: f971 bnez a0,c0019344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3711 s->str->u.str16[s->len++] = c; - c00191a2: 481c lw a5,16(s0) - c00191a4: 6418 ld a4,8(s0) - c00191a6: 0017869b addiw a3,a5,1 - c00191aa: 07a1 addi a5,a5,8 - c00191ac: 0786 slli a5,a5,0x1 - c00191ae: c814 sw a3,16(s0) - c00191b0: 97ba add a5,a5,a4 - c00191b2: 00979023 sh s1,0(a5) - c00191b6: b7c1 j c0019176 - -00000000c00191b8 : + c0019372: 481c lw a5,16(s0) + c0019374: 6418 ld a4,8(s0) + c0019376: 0017869b addiw a3,a5,1 + c001937a: 07a1 addi a5,a5,8 + c001937c: 0786 slli a5,a5,0x1 + c001937e: c814 sw a3,16(s0) + c0019380: 97ba add a5,a5,a4 + c0019382: 00979023 sh s1,0(a5) + c0019386: b7c1 j c0019346 + +00000000c0019388 : string_buffer_putc16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3734 if (likely(s->len < s->size)) { - c00191b8: 491c lw a5,16(a0) - c00191ba: 4958 lw a4,20(a0) - c00191bc: 02e7db63 bge a5,a4,c00191f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3727 + c0019388: 491c lw a5,16(a0) + c001938a: 4958 lw a4,20(a0) + c001938c: 02e7db63 bge a5,a4,c00193c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3735 if (s->is_wide_char) { - c00191c0: 4d18 lw a4,24(a0) - c00191c2: cf01 beqz a4,c00191da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3728 - s->str->u.str16[s->len++] = c; - c00191c4: 6518 ld a4,8(a0) - c00191c6: 0017869b addiw a3,a5,1 - c00191ca: 07a1 addi a5,a5,8 - c00191cc: 0786 slli a5,a5,0x1 - c00191ce: c914 sw a3,16(a0) - c00191d0: 97ba add a5,a5,a4 - c00191d2: 00b79023 sh a1,0(a5) + c0019390: 4d18 lw a4,24(a0) + c0019392: cf01 beqz a4,c00193aa /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3736 + s->str->u.str16[s->len++] = c; + c0019394: 6518 ld a4,8(a0) + c0019396: 0017869b addiw a3,a5,1 + c001939a: 07a1 addi a5,a5,8 + c001939c: 0786 slli a5,a5,0x1 + c001939e: c914 sw a3,16(a0) + c00193a0: 97ba add a5,a5,a4 + c00193a2: 00b79023 sh a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3744 } - c00191d6: 4501 li a0,0 - c00191d8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3730 + c00193a6: 4501 li a0,0 + c00193a8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3738 } else if (c < 0x100) { - c00191da: 0ff00713 li a4,255 - c00191de: 00b76a63 bltu a4,a1,c00191f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3731 + c00193aa: 0ff00713 li a4,255 + c00193ae: 00b76a63 bltu a4,a1,c00193c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3739 s->str->u.str8[s->len++] = c; - c00191e2: 6518 ld a4,8(a0) - c00191e4: 0017869b addiw a3,a5,1 - c00191e8: c914 sw a3,16(a0) - c00191ea: 97ba add a5,a5,a4 - c00191ec: 00b78823 sb a1,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3732 + c00193b2: 6518 ld a4,8(a0) + c00193b4: 0017869b addiw a3,a5,1 + c00193b8: c914 sw a3,16(a0) + c00193ba: 97ba add a5,a5,a4 + c00193bc: 00b78823 sb a1,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3740 return 0; - c00191f0: b7dd j c00191d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3735 + c00193c0: b7dd j c00193a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3743 return string_buffer_putc_slow(s, c); - c00191f2: f47ff06f j c0019138 + c00193c2: f47ff06f j c0019308 -00000000c00191f6 : +00000000c00193c6 : string_buffer_putc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3748 { - c00191f6: 1101 addi sp,sp,-32 - c00191f8: e04a sd s2,0(sp) - c00191fa: ec06 sd ra,24(sp) - c00191fc: e822 sd s0,16(sp) - c00191fe: e426 sd s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3741 + c00193c6: 1101 addi sp,sp,-32 + c00193c8: e04a sd s2,0(sp) + c00193ca: ec06 sd ra,24(sp) + c00193cc: e822 sd s0,16(sp) + c00193ce: e426 sd s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3749 if (unlikely(c >= 0x10000)) { - c0019200: 67c1 lui a5,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3740 + c00193d0: 67c1 lui a5,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3748 { - c0019202: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3741 + c00193d2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3749 if (unlikely(c >= 0x10000)) { - c0019204: 02f5e263 bltu a1,a5,c0019228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3743 + c00193d4: 02f5e263 bltu a1,a5,c00193f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3751 c -= 0x10000; - c0019208: 74c1 lui s1,0xffff0 - c001920a: 9cad addw s1,s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3744 + c00193d8: 74c1 lui s1,0xffff0 + c00193da: 9cad addw s1,s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 if (string_buffer_putc16(s, (c >> 10) + 0xd800)) - c001920c: 6439 lui s0,0xe - c001920e: 00a4d59b srliw a1,s1,0xa - c0019212: 8004079b addiw a5,s0,-2048 - c0019216: 9dbd addw a1,a1,a5 - c0019218: fa1ff0ef jal ra,c00191b8 - c001921c: ed11 bnez a0,c0019238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3746 + c00193dc: 6439 lui s0,0xe + c00193de: 00a4d59b srliw a1,s1,0xa + c00193e2: 8004079b addiw a5,s0,-2048 + c00193e6: 9dbd addw a1,a1,a5 + c00193e8: fa1ff0ef jal ra,c0019388 + c00193ec: ed11 bnez a0,c0019408 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3754 c = (c & 0x3ff) + 0xdc00; - c001921e: 3ff4f493 andi s1,s1,1023 - c0019222: c004059b addiw a1,s0,-1024 - c0019226: 9da5 addw a1,a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3749 -} - c0019228: 6442 ld s0,16(sp) - c001922a: 60e2 ld ra,24(sp) - c001922c: 64a2 ld s1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3748 + c00193ee: 3ff4f493 andi s1,s1,1023 + c00193f2: c004059b addiw a1,s0,-1024 + c00193f6: 9da5 addw a1,a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3757 +} + c00193f8: 6442 ld s0,16(sp) + c00193fa: 60e2 ld ra,24(sp) + c00193fc: 64a2 ld s1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3756 return string_buffer_putc16(s, c); - c001922e: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3749 + c00193fe: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3757 } - c0019230: 6902 ld s2,0(sp) - c0019232: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3748 + c0019400: 6902 ld s2,0(sp) + c0019402: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3756 return string_buffer_putc16(s, c); - c0019234: f85ff06f j c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3749 -} - c0019238: 60e2 ld ra,24(sp) - c001923a: 6442 ld s0,16(sp) - c001923c: 64a2 ld s1,8(sp) - c001923e: 6902 ld s2,0(sp) - c0019240: 557d li a0,-1 - c0019242: 6105 addi sp,sp,32 - c0019244: 8082 ret - -00000000c0019246 : + c0019404: f85ff06f j c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3757 +} + c0019408: 60e2 ld ra,24(sp) + c001940a: 6442 ld s0,16(sp) + c001940c: 64a2 ld s1,8(sp) + c001940e: 6902 ld s2,0(sp) + c0019410: 557d li a0,-1 + c0019412: 6105 addi sp,sp,32 + c0019414: 8082 ret + +00000000c0019416 : string_buffer_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3883 -{ - c0019246: 1101 addi sp,sp,-32 - c0019248: e822 sd s0,16(sp) - c001924a: e426 sd s1,8(sp) - c001924c: e04a sd s2,0(sp) - c001924e: ec06 sd ra,24(sp) - c0019250: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3885 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3891 +{ + c0019416: 1101 addi sp,sp,-32 + c0019418: e822 sd s0,16(sp) + c001941a: e426 sd s1,8(sp) + c001941c: e04a sd s2,0(sp) + c001941e: ec06 sd ra,24(sp) + c0019420: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3893 if (s->len + count > s->size) { - c0019252: 490c lw a1,16(a0) - c0019254: 495c lw a5,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3883 + c0019422: 490c lw a1,16(a0) + c0019424: 495c lw a5,20(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3891 { - c0019256: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3885 + c0019426: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3893 if (s->len + count > s->size) { - c0019258: 9db1 addw a1,a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3883 + c0019428: 9db1 addw a1,a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3891 { - c001925a: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3885 + c001942a: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3893 if (s->len + count > s->size) { - c001925c: 02b7d763 bge a5,a1,c001928a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3886 + c001942c: 02b7d763 bge a5,a1,c001945a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3894 if (string_buffer_realloc(s, s->len + count, c)) - c0019260: 8626 mv a2,s1 - c0019262: bc7ff0ef jal ra,c0018e28 - c0019266: c115 beqz a0,c001928a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3887 + c0019430: 8626 mv a2,s1 + c0019432: bc7ff0ef jal ra,c0018ff8 + c0019436: c115 beqz a0,c001945a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3895 return -1; - c0019268: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3894 + c0019438: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3902 } - c001926a: 60e2 ld ra,24(sp) - c001926c: 6442 ld s0,16(sp) - c001926e: 64a2 ld s1,8(sp) - c0019270: 6902 ld s2,0(sp) - c0019272: 6105 addi sp,sp,32 - c0019274: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3890 + c001943a: 60e2 ld ra,24(sp) + c001943c: 6442 ld s0,16(sp) + c001943e: 64a2 ld s1,8(sp) + c0019440: 6902 ld s2,0(sp) + c0019442: 6105 addi sp,sp,32 + c0019444: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3898 if (string_buffer_putc16(s, c)) - c0019276: 85a6 mv a1,s1 - c0019278: 854a mv a0,s2 - c001927a: f3fff0ef jal ra,c00191b8 - c001927e: 347d addiw s0,s0,-1 - c0019280: f565 bnez a0,c0019268 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3889 + c0019446: 85a6 mv a1,s1 + c0019448: 854a mv a0,s2 + c001944a: f3fff0ef jal ra,c0019388 + c001944e: 347d addiw s0,s0,-1 + c0019450: f565 bnez a0,c0019438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3897 while (count-- > 0) { - c0019282: fe804ae3 bgtz s0,c0019276 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3893 + c0019452: fe804ae3 bgtz s0,c0019446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3901 return 0; - c0019286: 4501 li a0,0 - c0019288: b7cd j c001926a - c001928a: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3890 + c0019456: 4501 li a0,0 + c0019458: b7cd j c001943a + c001945a: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3898 if (string_buffer_putc16(s, c)) - c001928c: 2481 sext.w s1,s1 - c001928e: bfd5 j c0019282 + c001945c: 2481 sext.w s1,s1 + c001945e: bfd5 j c0019452 -00000000c0019290 : +00000000c0019460 : JS_NewStringLen(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3930 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3938 { - c0019290: 7175 addi sp,sp,-144 - c0019292: e122 sd s0,128(sp) - c0019294: fca6 sd s1,120(sp) - c0019296: f8ca sd s2,112(sp) - c0019298: e506 sd ra,136(sp) - c001929a: f4ce sd s3,104(sp) - c001929c: f0d2 sd s4,96(sp) - c001929e: ecd6 sd s5,88(sp) - c00192a0: e8da sd s6,80(sp) - c00192a2: e4de sd s7,72(sp) - c00192a4: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3937 + c0019460: 7175 addi sp,sp,-144 + c0019462: e122 sd s0,128(sp) + c0019464: fca6 sd s1,120(sp) + c0019466: f8ca sd s2,112(sp) + c0019468: e506 sd ra,136(sp) + c001946a: f4ce sd s3,104(sp) + c001946c: f0d2 sd s4,96(sp) + c001946e: ecd6 sd s5,88(sp) + c0019470: e8da sd s6,80(sp) + c0019472: e4de sd s7,72(sp) + c0019474: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3945 p_end = p_start + buf_len; - c00192a6: 00c58933 add s2,a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3938 + c0019476: 00c58933 add s2,a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3946 p = p_start; - c00192aa: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3939 + c001947a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3947 while (p < p_end && *p < 128) - c00192ac: 01247663 bgeu s0,s2,c00192b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3939 (discriminator 1) - c00192b0: 00040783 lb a5,0(s0) # e000 <__clzdi2-0xbfff2000> - c00192b4: 0207d863 bgez a5,c00192e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3941 + c001947c: 01247663 bgeu s0,s2,c0019488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3947 (discriminator 1) + c0019480: 00040783 lb a5,0(s0) # e000 <__clzdi2-0xbfff2000> + c0019484: 0207d863 bgez a5,c00194b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3949 len1 = p - p_start; - c00192b8: 409409b3 sub s3,s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3942 + c0019488: 409409b3 sub s3,s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3950 if (len1 > JS_STRING_LEN_MAX) - c00192bc: 400007b7 lui a5,0x40000 - c00192c0: 02f9e463 bltu s3,a5,c00192e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3987 -} - c00192c4: 640a ld s0,128(sp) - c00192c6: 60aa ld ra,136(sp) - c00192c8: 74e6 ld s1,120(sp) - c00192ca: 7946 ld s2,112(sp) - c00192cc: 79a6 ld s3,104(sp) - c00192ce: 7a06 ld s4,96(sp) - c00192d0: 6ae6 ld s5,88(sp) - c00192d2: 6b46 ld s6,80(sp) - c00192d4: 6ba6 ld s7,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3943 + c001948c: 400007b7 lui a5,0x40000 + c0019490: 02f9e463 bltu s3,a5,c00194b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3995 +} + c0019494: 640a ld s0,128(sp) + c0019496: 60aa ld ra,136(sp) + c0019498: 74e6 ld s1,120(sp) + c001949a: 7946 ld s2,112(sp) + c001949c: 79a6 ld s3,104(sp) + c001949e: 7a06 ld s4,96(sp) + c00194a0: 6ae6 ld s5,88(sp) + c00194a2: 6b46 ld s6,80(sp) + c00194a4: 6ba6 ld s7,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3951 return JS_ThrowInternalError(ctx, "string too long"); - c00192d6: 00045597 auipc a1,0x45 - c00192da: eea58593 addi a1,a1,-278 # c005e1c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3987 + c00194a6: 00045597 auipc a1,0x45 + c00194aa: f7a58593 addi a1,a1,-134 # c005e420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3995 } - c00192de: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3943 + c00194ae: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3951 return JS_ThrowInternalError(ctx, "string too long"); - c00192e0: ea4fb06f j c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3940 + c00194b0: dc2fb06f j c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3948 p++; - c00192e4: 0405 addi s0,s0,1 - c00192e6: b7d9 j c00192ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3946 + c00194b4: 0405 addi s0,s0,1 + c00194b6: b7d9 j c001947c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3954 return js_new_string8(ctx, (const uint8_t *)buf, buf_len); - c00192e8: 2601 sext.w a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3944 + c00194b8: 2601 sext.w a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3952 if (p == p_end) { - c00192ea: 01241f63 bne s0,s2,c0019308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3987 -} - c00192ee: 640a ld s0,128(sp) - c00192f0: 60aa ld ra,136(sp) - c00192f2: 7946 ld s2,112(sp) - c00192f4: 79a6 ld s3,104(sp) - c00192f6: 7a06 ld s4,96(sp) - c00192f8: 6ae6 ld s5,88(sp) - c00192fa: 6b46 ld s6,80(sp) - c00192fc: 6ba6 ld s7,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3946 + c00194ba: 01241f63 bne s0,s2,c00194d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3995 +} + c00194be: 640a ld s0,128(sp) + c00194c0: 60aa ld ra,136(sp) + c00194c2: 7946 ld s2,112(sp) + c00194c4: 79a6 ld s3,104(sp) + c00194c6: 7a06 ld s4,96(sp) + c00194c8: 6ae6 ld s5,88(sp) + c00194ca: 6b46 ld s6,80(sp) + c00194cc: 6ba6 ld s7,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3954 return js_new_string8(ctx, (const uint8_t *)buf, buf_len); - c00192fe: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3987 + c00194ce: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3995 } - c0019300: 74e6 ld s1,120(sp) - c0019302: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3946 + c00194d0: 74e6 ld s1,120(sp) + c00194d2: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3954 return js_new_string8(ctx, (const uint8_t *)buf, buf_len); - c0019304: 4af0006f j c0019fb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3948 + c00194d4: 4af0006f j c001a182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3956 if (string_buffer_init(ctx, b, buf_len)) - c0019308: 100c addi a1,sp,32 - c001930a: 8c5ff0ef jal ra,c0018bce - c001930e: c505 beqz a0,c0019336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3985 + c00194d8: 100c addi a1,sp,32 + c00194da: 8c5ff0ef jal ra,c0018d9e + c00194de: c505 beqz a0,c0019506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3993 string_buffer_free(b); - c0019310: 1008 addi a0,sp,32 - c0019312: b55ed0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3986 + c00194e0: 1008 addi a0,sp,32 + c00194e2: a73ed0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3994 return JS_EXCEPTION; - c0019316: 4799 li a5,6 - c0019318: e802 sd zero,16(sp) - c001931a: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3987 -} - c001931c: 60aa ld ra,136(sp) - c001931e: 640a ld s0,128(sp) - c0019320: 6542 ld a0,16(sp) - c0019322: 65e2 ld a1,24(sp) - c0019324: 74e6 ld s1,120(sp) - c0019326: 7946 ld s2,112(sp) - c0019328: 79a6 ld s3,104(sp) - c001932a: 7a06 ld s4,96(sp) - c001932c: 6ae6 ld s5,88(sp) - c001932e: 6b46 ld s6,80(sp) - c0019330: 6ba6 ld s7,72(sp) - c0019332: 6149 addi sp,sp,144 - c0019334: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3950 + c00194e6: 4799 li a5,6 + c00194e8: e802 sd zero,16(sp) + c00194ea: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3995 +} + c00194ec: 60aa ld ra,136(sp) + c00194ee: 640a ld s0,128(sp) + c00194f0: 6542 ld a0,16(sp) + c00194f2: 65e2 ld a1,24(sp) + c00194f4: 74e6 ld s1,120(sp) + c00194f6: 7946 ld s2,112(sp) + c00194f8: 79a6 ld s3,104(sp) + c00194fa: 7a06 ld s4,96(sp) + c00194fc: 6ae6 ld s5,88(sp) + c00194fe: 6b46 ld s6,80(sp) + c0019500: 6ba6 ld s7,72(sp) + c0019502: 6149 addi sp,sp,144 + c0019504: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3958 string_buffer_write8(b, p_start, len1); - c0019336: 0009861b sext.w a2,s3 - c001933a: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3963 + c0019506: 0009861b sext.w a2,s3 + c001950a: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3971 string_buffer_putc16(b, (c >> 10) + 0xd800); - c001933c: 69b9 lui s3,0xe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3950 + c001950c: 69b9 lui s3,0xe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3958 string_buffer_write8(b, p_start, len1); - c001933e: 1008 addi a0,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3957 + c001950e: 1008 addi a0,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3965 if (c < 0x10000) { - c0019340: 6ac1 lui s5,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3963 + c0019510: 6ac1 lui s5,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3971 string_buffer_putc16(b, (c >> 10) + 0xd800); - c0019342: 80098b9b addiw s7,s3,-2048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3950 + c0019512: 80098b9b addiw s7,s3,-2048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3958 string_buffer_write8(b, p_start, len1); - c0019346: ba1ff0ef jal ra,c0018ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3970 + c0019516: ba1ff0ef jal ra,c00190b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3978 while (p < p_end && (*p >= 0x80 && *p < 0xc0)) - c001934a: 03f00b13 li s6,63 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3967 + c001951a: 03f00b13 li s6,63 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3975 c = 0xfffd; - c001934e: ffda8a13 addi s4,s5,-3 # fffd <__clzdi2-0xbfff0003> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3964 + c001951e: ffda8a13 addi s4,s5,-3 # fffd <__clzdi2-0xbfff0003> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3972 c = (c & 0x3ff) + 0xdc00; - c0019352: c009899b addiw s3,s3,-1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3951 + c0019522: c009899b addiw s3,s3,-1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3959 while (p < p_end) { - c0019356: 01246863 bltu s0,s2,c0019366 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3982 + c0019526: 01246863 bltu s0,s2,c0019536 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3990 return string_buffer_end(b); - c001935a: 1008 addi a0,sp,32 - c001935c: 1af000ef jal ra,c0019d0a - c0019360: e82a sd a0,16(sp) - c0019362: ec2e sd a1,24(sp) - c0019364: bf65 j c001931c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3952 + c001952a: 1008 addi a0,sp,32 + c001952c: 1af000ef jal ra,c0019eda + c0019530: e82a sd a0,16(sp) + c0019532: ec2e sd a1,24(sp) + c0019534: bf65 j c00194ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3960 if (*p < 128) { - c0019366: 00044583 lbu a1,0(s0) - c001936a: 0185979b slliw a5,a1,0x18 - c001936e: 4187d79b sraiw a5,a5,0x18 - c0019372: 0007c763 bltz a5,c0019380 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3953 + c0019536: 00044583 lbu a1,0(s0) + c001953a: 0185979b slliw a5,a1,0x18 + c001953e: 4187d79b sraiw a5,a5,0x18 + c0019542: 0007c763 bltz a5,c0019550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3961 string_buffer_putc8(b, *p++); - c0019376: 1008 addi a0,sp,32 - c0019378: 0405 addi s0,s0,1 - c001937a: d6dff0ef jal ra,c00190e6 - c001937e: bfe1 j c0019356 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3956 + c0019546: 1008 addi a0,sp,32 + c0019548: 0405 addi s0,s0,1 + c001954a: d6dff0ef jal ra,c00192b6 + c001954e: bfe1 j c0019526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3964 c = unicode_from_utf8(p, p_end - p, &p_next); - c0019380: 408905bb subw a1,s2,s0 - c0019384: 0030 addi a2,sp,8 - c0019386: 8522 mv a0,s0 - c0019388: 3932e0ef jal ra,c0047f1a - c001938c: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3957 + c0019550: 408905bb subw a1,s2,s0 + c0019554: 0030 addi a2,sp,8 + c0019556: 8522 mv a0,s0 + c0019558: 3932e0ef jal ra,c00480ea + c001955c: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3965 if (c < 0x10000) { - c0019390: 0155f763 bgeu a1,s5,c001939e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3958 + c0019560: 0155f763 bgeu a1,s5,c001956e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3966 p = p_next; - c0019394: 6422 ld s0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3978 + c0019564: 6422 ld s0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3986 string_buffer_putc16(b, c); - c0019396: 1008 addi a0,sp,32 - c0019398: e21ff0ef jal ra,c00191b8 - c001939c: bf6d j c0019356 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3959 + c0019566: 1008 addi a0,sp,32 + c0019568: e21ff0ef jal ra,c0019388 + c001956c: bf6d j c0019526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3967 } else if (c <= 0x10FFFF) { - c001939e: 001107b7 lui a5,0x110 - c00193a2: 02f5f363 bgeu a1,a5,c00193c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3962 + c001956e: 001107b7 lui a5,0x110 + c0019572: 02f5f363 bgeu a1,a5,c0019598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3970 c -= 0x10000; - c00193a6: 74c1 lui s1,0xffff0 - c00193a8: 9cad addw s1,s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3963 + c0019576: 74c1 lui s1,0xffff0 + c0019578: 9cad addw s1,s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3971 string_buffer_putc16(b, (c >> 10) + 0xd800); - c00193aa: 00a4d59b srliw a1,s1,0xa - c00193ae: 017585bb addw a1,a1,s7 - c00193b2: 1008 addi a0,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3960 + c001957a: 00a4d59b srliw a1,s1,0xa + c001957e: 017585bb addw a1,a1,s7 + c0019582: 1008 addi a0,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3968 p = p_next; - c00193b4: 6422 ld s0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3963 + c0019584: 6422 ld s0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3971 string_buffer_putc16(b, (c >> 10) + 0xd800); - c00193b6: e03ff0ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3964 + c0019586: e03ff0ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3972 c = (c & 0x3ff) + 0xdc00; - c00193ba: 3ff4f593 andi a1,s1,1023 - c00193be: 00b985bb addw a1,s3,a1 - c00193c2: bfd1 j c0019396 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3970 + c001958a: 3ff4f593 andi a1,s1,1023 + c001958e: 00b985bb addw a1,s3,a1 + c0019592: bfd1 j c0019566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3978 while (p < p_end && (*p >= 0x80 && *p < 0xc0)) - c00193c4: 02890163 beq s2,s0,c00193e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3970 (discriminator 1) - c00193c8: 00044783 lbu a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3971 (discriminator 1) + c0019594: 02890163 beq s2,s0,c00195b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3978 (discriminator 1) + c0019598: 00044783 lbu a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3979 (discriminator 1) p++; - c00193cc: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3970 (discriminator 1) + c001959c: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3978 (discriminator 1) while (p < p_end && (*p >= 0x80 && *p < 0xc0)) - c00193ce: 0807c793 xori a5,a5,128 - c00193d2: fefb79e3 bgeu s6,a5,c00193c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3974 + c001959e: 0807c793 xori a5,a5,128 + c00195a2: fefb79e3 bgeu s6,a5,c0019594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3982 while (p < p_end && (*p >= 0x80 && *p < 0xc0)) - c00193d6: 01247863 bgeu s0,s2,c00193e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3974 (discriminator 1) - c00193da: 00044783 lbu a5,0(s0) - c00193de: 0807c793 xori a5,a5,128 - c00193e2: 00fb7463 bgeu s6,a5,c00193ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3967 - c = 0xfffd; - c00193e6: 85d2 mv a1,s4 - c00193e8: b77d j c0019396 + c00195a6: 01247863 bgeu s0,s2,c00195b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3982 (discriminator 1) + c00195aa: 00044783 lbu a5,0(s0) + c00195ae: 0807c793 xori a5,a5,128 + c00195b2: 00fb7463 bgeu s6,a5,c00195ba /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3975 + c = 0xfffd; + c00195b6: 85d2 mv a1,s4 + c00195b8: b77d j c0019566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3983 p++; - c00193ea: 0405 addi s0,s0,1 - c00193ec: b7ed j c00193d6 + c00195ba: 0405 addi s0,s0,1 + c00195bc: b7ed j c00195a6 -00000000c00193ee : +00000000c00195be : JS_NewAtomLen(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3008 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3016 { - c00193ee: 7179 addi sp,sp,-48 - c00193f0: f022 sd s0,32(sp) - c00193f2: f406 sd ra,40(sp) - c00193f4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3011 + c00195be: 7179 addi sp,sp,-48 + c00195c0: f022 sd s0,32(sp) + c00195c2: f406 sd ra,40(sp) + c00195c4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3019 if (len == 0 || !is_digit(*str)) { - c00193f6: c20d beqz a2,c0019418 + c00195c6: c20d beqz a2,c00195e8 is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 (discriminator 1) return c >= '0' && c <= '9'; - c00193f8: 0005c783 lbu a5,0(a1) + c00195c8: 0005c783 lbu a5,0(a1) JS_NewAtomLen(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3011 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3019 (discriminator 1) if (len == 0 || !is_digit(*str)) { - c00193fc: 4725 li a4,9 - c00193fe: fd07879b addiw a5,a5,-48 - c0019402: 00f76b63 bltu a4,a5,c0019418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3016 + c00195cc: 4725 li a4,9 + c00195ce: fd07879b addiw a5,a5,-48 + c00195d2: 00f76b63 bltu a4,a5,c00195e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3024 val = JS_NewStringLen(ctx, str, len); - c0019406: 8522 mv a0,s0 - c0019408: e89ff0ef jal ra,c0019290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3017 + c00195d6: 8522 mv a0,s0 + c00195d8: e89ff0ef jal ra,c0019460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3025 if (JS_IsException(val)) - c001940c: 2581 sext.w a1,a1 - c001940e: 4799 li a5,6 - c0019410: 02f59163 bne a1,a5,c0019432 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3018 + c00195dc: 2581 sext.w a1,a1 + c00195de: 4799 li a5,6 + c00195e0: 02f59163 bne a1,a5,c0019602 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3026 return JS_ATOM_NULL; - c0019414: 4501 li a0,0 - c0019416: a811 j c001942a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3012 + c00195e4: 4501 li a0,0 + c00195e6: a811 j c00195fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3020 JSAtom atom = __JS_FindAtom(ctx->rt, str, len, JS_ATOM_TYPE_STRING); - c0019418: 6c08 ld a0,24(s0) - c001941a: e432 sd a2,8(sp) - c001941c: e02e sd a1,0(sp) - c001941e: f91ed0ef jal ra,c00073ae <__JS_FindAtom.constprop.0> - c0019422: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3013 + c00195e8: 6c08 ld a0,24(s0) + c00195ea: e432 sd a2,8(sp) + c00195ec: e02e sd a1,0(sp) + c00195ee: eafed0ef jal ra,c000749c <__JS_FindAtom.constprop.0> + c00195f2: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3021 if (atom) - c0019424: 6582 ld a1,0(sp) - c0019426: 6622 ld a2,8(sp) - c0019428: dd79 beqz a0,c0019406 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3020 + c00195f4: 6582 ld a1,0(sp) + c00195f6: 6622 ld a2,8(sp) + c00195f8: dd79 beqz a0,c00195d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3028 } - c001942a: 70a2 ld ra,40(sp) - c001942c: 7402 ld s0,32(sp) - c001942e: 6145 addi sp,sp,48 - c0019430: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3019 + c00195fa: 70a2 ld ra,40(sp) + c00195fc: 7402 ld s0,32(sp) + c00195fe: 6145 addi sp,sp,48 + c0019600: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3027 return JS_NewAtomStr(ctx, JS_VALUE_GET_STRING(val)); - c0019432: 85aa mv a1,a0 - c0019434: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3020 + c0019602: 85aa mv a1,a0 + c0019604: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3028 } - c0019436: 7402 ld s0,32(sp) - c0019438: 70a2 ld ra,40(sp) - c001943a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3019 + c0019606: 7402 ld s0,32(sp) + c0019608: 70a2 ld ra,40(sp) + c001960a: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3027 return JS_NewAtomStr(ctx, JS_VALUE_GET_STRING(val)); - c001943c: e9bed06f j c00072d6 + c001960c: db9ed06f j c00073c4 -00000000c0019440 : +00000000c0019610 : JS_NewAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3031 { - c0019440: 1101 addi sp,sp,-32 - c0019442: e822 sd s0,16(sp) - c0019444: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3024 + c0019610: 1101 addi sp,sp,-32 + c0019612: e822 sd s0,16(sp) + c0019614: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3032 return JS_NewAtomLen(ctx, str, strlen(str)); - c0019446: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3023 + c0019616: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3031 { - c0019448: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3024 + c0019618: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3032 return JS_NewAtomLen(ctx, str, strlen(str)); - c001944a: e42e sd a1,8(sp) - c001944c: 5643d0ef jal ra,c00569b0 - c0019450: 862a mv a2,a0 - c0019452: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3025 -} - c0019454: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3024 + c001961a: e42e sd a1,8(sp) + c001961c: 5643d0ef jal ra,c0056b80 + c0019620: 862a mv a2,a0 + c0019622: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3033 +} + c0019624: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3032 return JS_NewAtomLen(ctx, str, strlen(str)); - c0019456: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3025 + c0019626: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3033 } - c0019458: 60e2 ld ra,24(sp) - c001945a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3024 + c0019628: 60e2 ld ra,24(sp) + c001962a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3032 return JS_NewAtomLen(ctx, str, strlen(str)); - c001945c: f93ff06f j c00193ee + c001962c: f93ff06f j c00195be -00000000c0019460 : +00000000c0019630 : js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27533 -{ - c0019460: 715d addi sp,sp,-80 - c0019462: fc26 sd s1,56(sp) - c0019464: e486 sd ra,72(sp) - c0019466: e0a2 sd s0,64(sp) - c0019468: f84a sd s2,48(sp) - c001946a: f44e sd s3,40(sp) - c001946c: f052 sd s4,32(sp) - c001946e: ec56 sd s5,24(sp) - c0019470: e85a sd s6,16(sp) - c0019472: e45e sd s7,8(sp) - c0019474: e062 sd s8,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27541 +{ + c0019630: 715d addi sp,sp,-80 + c0019632: fc26 sd s1,56(sp) + c0019634: e486 sd ra,72(sp) + c0019636: e0a2 sd s0,64(sp) + c0019638: f84a sd s2,48(sp) + c001963a: f44e sd s3,40(sp) + c001963c: f052 sd s4,32(sp) + c001963e: ec56 sd s5,24(sp) + c0019640: e85a sd s6,16(sp) + c0019642: e45e sd s7,8(sp) + c0019644: e062 sd s8,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27542 JSRuntime *rt = ctx->rt; - c0019476: 01853a83 ld s5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27533 + c0019646: 01853a83 ld s5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27541 { - c001947a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27539 + c001964a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27547 if (!rt->module_normalize_func) { - c001947c: 130ab783 ld a5,304(s5) - c0019480: 10079c63 bnez a5,c0019598 + c001964c: 130ab783 ld a5,304(s5) + c0019650: 10079c63 bnez a5,c0019768 js_default_module_normalize_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27474 if (name[0] != '.') { - c0019484: 00064703 lbu a4,0(a2) - c0019488: 02e00793 li a5,46 - c001948c: 8932 mv s2,a2 - c001948e: 00f70963 beq a4,a5,c00194a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27468 + c0019654: 00064703 lbu a4,0(a2) + c0019658: 02e00793 li a5,46 + c001965c: 8932 mv s2,a2 + c001965e: 00f70963 beq a4,a5,c0019670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27476 return js_strdup(ctx, name); - c0019492: 85b2 mv a1,a2 - c0019494: 815fb0ef jal ra,c0014ca8 + c0019662: 85b2 mv a1,a2 + c0019664: 815fb0ef jal ra,c0014e78 js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27550 cname = rt->module_normalize_func(ctx, base_cname, cname1, - c0019498: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27545 + c0019668: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27553 if (!cname) - c001949a: 0e051263 bnez a0,c001957e - c001949e: a035 j c00194ca - c00194a0: 8a2e mv s4,a1 + c001966a: 0e051263 bnez a0,c001974e + c001966e: a035 j c001969a + c0019670: 8a2e mv s4,a1 js_default_module_normalize_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27479 p = strrchr(base_name, '/'); - c00194a2: 8552 mv a0,s4 - c00194a4: 02f00593 li a1,47 - c00194a8: 2f83d0ef jal ra,c00567a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27475 + c0019672: 8552 mv a0,s4 + c0019674: 02f00593 li a1,47 + c0019678: 2f83d0ef jal ra,c0056970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27483 len = 0; - c00194ac: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27472 + c001967c: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27480 if (p) - c00194ae: c119 beqz a0,c00194b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27473 + c001967e: c119 beqz a0,c0019684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27481 len = p - base_name; - c00194b0: 414509bb subw s3,a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27477 + c0019680: 414509bb subw s3,a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27485 filename = js_malloc(ctx, len + strlen(name) + 1 + 1); - c00194b4: 854a mv a0,s2 - c00194b6: 4fa3d0ef jal ra,c00569b0 - c00194ba: 00250593 addi a1,a0,2 - c00194be: 95ce add a1,a1,s3 - c00194c0: 8526 mv a0,s1 - c00194c2: f8afb0ef jal ra,c0014c4c - c00194c6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27478 + c0019684: 854a mv a0,s2 + c0019686: 4fa3d0ef jal ra,c0056b80 + c001968a: 00250593 addi a1,a0,2 + c001968e: 95ce add a1,a1,s3 + c0019690: 8526 mv a0,s1 + c0019692: ea8fb0ef jal ra,c0014d3a + c0019696: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27486 if (!filename) - c00194c8: ed19 bnez a0,c00194e6 + c0019698: ed19 bnez a0,c00196b6 js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27578 return NULL; - c00194ca: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27576 -} - c00194cc: 60a6 ld ra,72(sp) - c00194ce: 6406 ld s0,64(sp) - c00194d0: 74e2 ld s1,56(sp) - c00194d2: 79a2 ld s3,40(sp) - c00194d4: 7a02 ld s4,32(sp) - c00194d6: 6ae2 ld s5,24(sp) - c00194d8: 6b42 ld s6,16(sp) - c00194da: 6ba2 ld s7,8(sp) - c00194dc: 6c02 ld s8,0(sp) - c00194de: 854a mv a0,s2 - c00194e0: 7942 ld s2,48(sp) - c00194e2: 6161 addi sp,sp,80 - c00194e4: 8082 ret + c001969a: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27584 +} + c001969c: 60a6 ld ra,72(sp) + c001969e: 6406 ld s0,64(sp) + c00196a0: 74e2 ld s1,56(sp) + c00196a2: 79a2 ld s3,40(sp) + c00196a4: 7a02 ld s4,32(sp) + c00196a6: 6ae2 ld s5,24(sp) + c00196a8: 6b42 ld s6,16(sp) + c00196aa: 6ba2 ld s7,8(sp) + c00196ac: 6c02 ld s8,0(sp) + c00196ae: 854a mv a0,s2 + c00196b0: 7942 ld s2,48(sp) + c00196b2: 6161 addi sp,sp,80 + c00196b4: 8082 ret js_default_module_normalize_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27488 memcpy(filename, base_name, len); - c00194e6: 864e mv a2,s3 - c00194e8: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27481 + c00196b6: 864e mv a2,s3 + c00196b8: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27489 filename[len] = '\0'; - c00194ea: 99a2 add s3,s3,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27480 + c00196ba: 99a2 add s3,s3,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27488 memcpy(filename, base_name, len); - c00194ec: 4ee3d0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27486 + c00196bc: 4ee3d0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27494 if (r[0] == '.' && r[1] == '/') { - c00194f0: 02e00a13 li s4,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27481 + c00196c0: 02e00a13 li s4,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27489 filename[len] = '\0'; - c00194f4: 00098023 sb zero,0(s3) # e000 <__clzdi2-0xbfff2000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27486 + c00196c4: 00098023 sb zero,0(s3) # e000 <__clzdi2-0xbfff2000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27494 if (r[0] == '.' && r[1] == '/') { - c00194f8: 02f00b13 li s6,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27498 + c00196c8: 02f00b13 li s6,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27506 if (!strcmp(p, ".") || !strcmp(p, "..")) - c00194fc: 00045b97 auipc s7,0x45 - c0019500: cd4b8b93 addi s7,s7,-812 # c005e1d0 - c0019504: 00046c17 auipc s8,0x46 - c0019508: 794c0c13 addi s8,s8,1940 # c005fc98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27486 + c00196cc: 00045b97 auipc s7,0x45 + c00196d0: d64b8b93 addi s7,s7,-668 # c005e430 + c00196d4: 00047c17 auipc s8,0x47 + c00196d8: 824c0c13 addi s8,s8,-2012 # c005fef8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27494 if (r[0] == '.' && r[1] == '/') { - c001950c: 00094703 lbu a4,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27491 + c00196dc: 00094703 lbu a4,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27499 if (filename[0] == '\0') - c0019510: 00044783 lbu a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27486 + c00196e0: 00044783 lbu a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27494 if (r[0] == '.' && r[1] == '/') { - c0019514: 05471963 bne a4,s4,c0019566 - c0019518: 00194703 lbu a4,1(s2) - c001951c: 01671463 bne a4,s6,c0019524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27487 + c00196e4: 05471963 bne a4,s4,c0019736 + c00196e8: 00194703 lbu a4,1(s2) + c00196ec: 01671463 bne a4,s6,c00196f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27495 r += 2; - c0019520: 0909 addi s2,s2,2 - c0019522: b7ed j c001950c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27488 + c00196f0: 0909 addi s2,s2,2 + c00196f2: b7ed j c00196dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27496 } else if (r[0] == '.' && r[1] == '.' && r[2] == '/') { - c0019524: 05471163 bne a4,s4,c0019566 - c0019528: 00294703 lbu a4,2(s2) - c001952c: 03671d63 bne a4,s6,c0019566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27491 + c00196f4: 05471163 bne a4,s4,c0019736 + c00196f8: 00294703 lbu a4,2(s2) + c00196fc: 03671d63 bne a4,s6,c0019736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27499 if (filename[0] == '\0') - c0019530: c3b9 beqz a5,c0019576 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27493 + c0019700: c3b9 beqz a5,c0019746 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27501 p = strrchr(filename, '/'); - c0019532: 02f00593 li a1,47 - c0019536: 8522 mv a0,s0 - c0019538: 2683d0ef jal ra,c00567a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27494 + c0019702: 02f00593 li a1,47 + c0019706: 8522 mv a0,s0 + c0019708: 2683d0ef jal ra,c0056970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27502 if (!p) - c001953c: 89a2 mv s3,s0 - c001953e: c119 beqz a0,c0019544 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27497 + c001970c: 89a2 mv s3,s0 + c001970e: c119 beqz a0,c0019714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27505 p++; - c0019540: 00150993 addi s3,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27498 + c0019710: 00150993 addi s3,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27506 if (!strcmp(p, ".") || !strcmp(p, "..")) - c0019544: 85de mv a1,s7 - c0019546: 854e mv a0,s3 - c0019548: 4063d0ef jal ra,c005694e - c001954c: cd11 beqz a0,c0019568 - c001954e: 85e2 mv a1,s8 - c0019550: 854e mv a0,s3 - c0019552: 3fc3d0ef jal ra,c005694e - c0019556: c909 beqz a0,c0019568 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27500 + c0019714: 85de mv a1,s7 + c0019716: 854e mv a0,s3 + c0019718: 4063d0ef jal ra,c0056b1e + c001971c: cd11 beqz a0,c0019738 + c001971e: 85e2 mv a1,s8 + c0019720: 854e mv a0,s3 + c0019722: 3fc3d0ef jal ra,c0056b1e + c0019726: c909 beqz a0,c0019738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27508 if (p > filename) - c0019558: 01347363 bgeu s0,s3,c001955e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27501 + c0019728: 01347363 bgeu s0,s3,c001972e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27509 p--; - c001955c: 19fd addi s3,s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27502 + c001972c: 19fd addi s3,s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27510 *p = '\0'; - c001955e: 00098023 sb zero,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27503 + c001972e: 00098023 sb zero,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27511 r += 3; - c0019562: 090d addi s2,s2,3 - c0019564: b765 j c001950c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27508 + c0019732: 090d addi s2,s2,3 + c0019734: b765 j c00196dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27516 if (filename[0] != '\0') - c0019566: cb81 beqz a5,c0019576 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27509 + c0019736: cb81 beqz a5,c0019746 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27517 strcat(filename, "/"); - c0019568: 00045597 auipc a1,0x45 - c001956c: c7058593 addi a1,a1,-912 # c005e1d8 - c0019570: 8522 mv a0,s0 - c0019572: 1883d0ef jal ra,c00566fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27510 + c0019738: 00045597 auipc a1,0x45 + c001973c: d0058593 addi a1,a1,-768 # c005e438 + c0019740: 8522 mv a0,s0 + c0019742: 1883d0ef jal ra,c00568ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27518 strcat(filename, r); - c0019576: 85ca mv a1,s2 - c0019578: 8522 mv a0,s0 - c001957a: 1803d0ef jal ra,c00566fa + c0019746: 85ca mv a1,s2 + c0019748: 8522 mv a0,s0 + c001974a: 1803d0ef jal ra,c00568ca js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27556 module_name = JS_NewAtom(ctx, cname); - c001957e: 85a2 mv a1,s0 - c0019580: 8526 mv a0,s1 - c0019582: ebfff0ef jal ra,c0019440 - c0019586: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27549 + c001974e: 85a2 mv a1,s0 + c0019750: 8526 mv a0,s1 + c0019752: ebfff0ef jal ra,c0019610 + c0019756: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27557 if (module_name == JS_ATOM_NULL) { - c001958a: 00099b63 bnez s3,c00195a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27569 + c001975a: 00099b63 bnez s3,c0019770 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27577 js_free(ctx, cname); - c001958e: 85a2 mv a1,s0 - c0019590: 8526 mv a0,s1 - c0019592: 8a9ed0ef jal ra,c0006e3a - c0019596: bf15 j c00194ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27542 + c001975e: 85a2 mv a1,s0 + c0019760: 8526 mv a0,s1 + c0019762: fc6ed0ef jal ra,c0006f28 + c0019766: bf15 j c001969a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27550 cname = rt->module_normalize_func(ctx, base_cname, cname1, - c0019598: 140ab683 ld a3,320(s5) - c001959c: 9782 jalr a5 - c001959e: bded j c0019498 + c0019768: 140ab683 ld a3,320(s5) + c001976c: 9782 jalr a5 + c001976e: bded j c0019668 js_find_loaded_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27529 list_for_each(el, &ctx->loaded_modules) { - c00195a0: 1a84b903 ld s2,424(s1) # ffffffffffff01a8 <_ebss+0xffffffff3feef082> - c00195a4: 1a048793 addi a5,s1,416 - c00195a8: 02f91263 bne s2,a5,c00195cc + c0019770: 1a84b903 ld s2,424(s1) # ffffffffffff01a8 <_ebss+0xffffffff3feef082> + c0019774: 1a048793 addi a5,s1,416 + c0019778: 02f91263 bne s2,a5,c001979c js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27570 JS_FreeAtom(ctx, module_name); - c00195ac: 85ce mv a1,s3 - c00195ae: 8526 mv a0,s1 - c00195b0: f5ded0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27565 + c001977c: 85ce mv a1,s3 + c001977e: 8526 mv a0,s1 + c0019780: e7bed0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27573 if (!rt->module_loader_func) { - c00195b4: 138ab783 ld a5,312(s5) - c00195b8: e38d bnez a5,c00195da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27567 + c0019784: 138ab783 ld a5,312(s5) + c0019788: e38d bnez a5,c00197aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27575 JS_ThrowReferenceError(ctx, "could not load module '%s'", - c00195ba: 8622 mv a2,s0 - c00195bc: 8526 mv a0,s1 - c00195be: 00045597 auipc a1,0x45 - c00195c2: c2258593 addi a1,a1,-990 # c005e1e0 - c00195c6: ae8fb0ef jal ra,c00148ae - c00195ca: b7d1 j c001958e + c001978a: 8622 mv a2,s0 + c001978c: 8526 mv a0,s1 + c001978e: 00045597 auipc a1,0x45 + c0019792: cb258593 addi a1,a1,-846 # c005e440 + c0019796: a06fb0ef jal ra,c001499c + c001979a: b7d1 j c001975e js_find_loaded_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27523 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27531 if (m->module_name == name) - c00195cc: ffc92703 lw a4,-4(s2) - c00195d0: 03370063 beq a4,s3,c00195f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27521 + c001979c: ffc92703 lw a4,-4(s2) + c00197a0: 03370063 beq a4,s3,c00197c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27529 list_for_each(el, &ctx->loaded_modules) { - c00195d4: 00893903 ld s2,8(s2) - c00195d8: bfc1 j c00195a8 + c00197a4: 00893903 ld s2,8(s2) + c00197a8: bfc1 j c0019778 js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27573 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27581 m = rt->module_loader_func(ctx, cname, rt->module_loader_opaque); - c00195da: 140ab603 ld a2,320(s5) - c00195de: 85a2 mv a1,s0 - c00195e0: 8526 mv a0,s1 - c00195e2: 9782 jalr a5 - c00195e4: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27574 + c00197aa: 140ab603 ld a2,320(s5) + c00197ae: 85a2 mv a1,s0 + c00197b0: 8526 mv a0,s1 + c00197b2: 9782 jalr a5 + c00197b4: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27582 js_free(ctx, cname); - c00195e6: 85a2 mv a1,s0 - c00195e8: 8526 mv a0,s1 - c00195ea: 851ed0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27575 + c00197b6: 85a2 mv a1,s0 + c00197b8: 8526 mv a0,s1 + c00197ba: f6eed0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27583 return m; - c00195ee: bdf9 j c00194cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27557 + c00197be: bdf9 j c001969c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27565 js_free(ctx, cname); - c00195f0: 85a2 mv a1,s0 - c00195f2: 8526 mv a0,s1 - c00195f4: 847ed0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27558 + c00197c0: 85a2 mv a1,s0 + c00197c2: 8526 mv a0,s1 + c00197c4: f64ed0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27566 JS_FreeAtom(ctx, module_name); - c00195f8: 85ce mv a1,s3 - c00195fa: 8526 mv a0,s1 + c00197c8: 85ce mv a1,s3 + c00197ca: 8526 mv a0,s1 js_find_loaded_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27530 m = list_entry(el, JSModuleDef, link); - c00195fc: 1961 addi s2,s2,-8 + c00197cc: 1961 addi s2,s2,-8 js_host_resolve_imported_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27566 JS_FreeAtom(ctx, module_name); - c00195fe: f0fed0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27559 + c00197ce: e2ded0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27567 return m; - c0019602: b5e9 j c00194cc + c00197d2: b5e9 j c001969c -00000000c0019604 : +00000000c00197d4 : JS_GetPropertyStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8100 { - c0019604: 711d addi sp,sp,-96 - c0019606: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8095 + c00197d4: 711d addi sp,sp,-96 + c00197d6: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8103 atom = JS_NewAtom(ctx, prop); - c0019608: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8092 -{ - c001960a: ec86 sd ra,88(sp) - c001960c: e8a2 sd s0,80(sp) - c001960e: e4a6 sd s1,72(sp) - c0019610: 842a mv s0,a0 - c0019612: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8095 + c00197d8: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8100 +{ + c00197da: ec86 sd ra,88(sp) + c00197dc: e8a2 sd s0,80(sp) + c00197de: e4a6 sd s1,72(sp) + c00197e0: 842a mv s0,a0 + c00197e2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8103 atom = JS_NewAtom(ctx, prop); - c0019614: e2dff0ef jal ra,c0019440 - c0019618: 6702 ld a4,0(sp) - c001961a: 67a2 ld a5,8(sp) - c001961c: 0005049b sext.w s1,a0 + c00197e4: e2dff0ef jal ra,c0019610 + c00197e8: 6702 ld a4,0(sp) + c00197ea: 67a2 ld a5,8(sp) + c00197ec: 0005049b sext.w s1,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0019620: 86a6 mv a3,s1 - c0019622: 4801 li a6,0 - c0019624: 85ba mv a1,a4 - c0019626: 863e mv a2,a5 - c0019628: 8522 mv a0,s0 - c001962a: f03a sd a4,32(sp) - c001962c: f43e sd a5,40(sp) - c001962e: a14f80ef jal ra,c0011842 - c0019632: e82a sd a0,16(sp) - c0019634: ec2e sd a1,24(sp) + c00197f0: 86a6 mv a3,s1 + c00197f2: 4801 li a6,0 + c00197f4: 85ba mv a1,a4 + c00197f6: 863e mv a2,a5 + c00197f8: 8522 mv a0,s0 + c00197fa: f03a sd a4,32(sp) + c00197fc: f43e sd a5,40(sp) + c00197fe: 932f80ef jal ra,c0011930 + c0019802: e82a sd a0,16(sp) + c0019804: ec2e sd a1,24(sp) JS_GetPropertyStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8097 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8105 JS_FreeAtom(ctx, atom); - c0019636: 8522 mv a0,s0 - c0019638: 85a6 mv a1,s1 - c001963a: ed3ed0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8099 -} - c001963e: 60e6 ld ra,88(sp) - c0019640: 6446 ld s0,80(sp) - c0019642: 6542 ld a0,16(sp) - c0019644: 65e2 ld a1,24(sp) - c0019646: 64a6 ld s1,72(sp) - c0019648: 6125 addi sp,sp,96 - c001964a: 8082 ret - -00000000c001964c : + c0019806: 8522 mv a0,s0 + c0019808: 85a6 mv a1,s1 + c001980a: df1ed0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8107 +} + c001980e: 60e6 ld ra,88(sp) + c0019810: 6446 ld s0,80(sp) + c0019812: 6542 ld a0,16(sp) + c0019814: 65e2 ld a1,24(sp) + c0019816: 64a6 ld s1,72(sp) + c0019818: 6125 addi sp,sp,96 + c001981a: 8082 ret + +00000000c001981c : JS_NewCModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27402 -{ - c001964c: 1101 addi sp,sp,-32 - c001964e: e822 sd s0,16(sp) - c0019650: e426 sd s1,8(sp) - c0019652: ec06 sd ra,24(sp) - c0019654: 84aa mv s1,a0 - c0019656: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27410 +{ + c001981c: 1101 addi sp,sp,-32 + c001981e: e822 sd s0,16(sp) + c0019820: e426 sd s1,8(sp) + c0019822: ec06 sd ra,24(sp) + c0019824: 84aa mv s1,a0 + c0019826: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27413 name = JS_NewAtom(ctx, name_str); - c0019658: de9ff0ef jal ra,c0019440 - c001965c: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27407 + c0019828: de9ff0ef jal ra,c0019610 + c001982c: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27415 return NULL; - c0019660: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27406 + c0019830: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27414 if (name == JS_ATOM_NULL) - c0019662: c589 beqz a1,c001966c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27408 + c0019832: c589 beqz a1,c001983c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27416 m = js_new_module_def(ctx, name); - c0019664: 8526 mv a0,s1 - c0019666: a45fc0ef jal ra,c00160aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27409 + c0019834: 8526 mv a0,s1 + c0019836: a45fc0ef jal ra,c001627a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27417 m->init_func = func; - c001966a: fd20 sd s0,120(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27411 + c001983a: fd20 sd s0,120(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27419 } - c001966c: 60e2 ld ra,24(sp) - c001966e: 6442 ld s0,16(sp) - c0019670: 64a2 ld s1,8(sp) - c0019672: 6105 addi sp,sp,32 - c0019674: 8082 ret + c001983c: 60e2 ld ra,24(sp) + c001983e: 6442 ld s0,16(sp) + c0019840: 64a2 ld s1,8(sp) + c0019842: 6105 addi sp,sp,32 + c0019844: 8082 ret -00000000c0019676 : +00000000c0019846 : JS_SetModuleExport(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27431 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27439 { - c0019676: 7179 addi sp,sp,-48 - c0019678: e84a sd s2,16(sp) - c001967a: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27434 + c0019846: 7179 addi sp,sp,-48 + c0019848: e84a sd s2,16(sp) + c001984a: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27442 name = JS_NewAtom(ctx, export_name); - c001967c: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27431 + c001984c: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27439 { - c001967e: ec26 sd s1,24(sp) - c0019680: f406 sd ra,40(sp) - c0019682: f022 sd s0,32(sp) - c0019684: 84aa mv s1,a0 - c0019686: e036 sd a3,0(sp) - c0019688: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27434 + c001984e: ec26 sd s1,24(sp) + c0019850: f406 sd ra,40(sp) + c0019852: f022 sd s0,32(sp) + c0019854: 84aa mv s1,a0 + c0019856: e036 sd a3,0(sp) + c0019858: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27442 name = JS_NewAtom(ctx, export_name); - c001968a: db7ff0ef jal ra,c0019440 - c001968e: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27435 + c001985a: db7ff0ef jal ra,c0019610 + c001985e: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27443 if (name == JS_ATOM_NULL) - c0019692: c5a9 beqz a1,c00196dc + c0019862: c5a9 beqz a1,c00198ac find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27345 for(i = 0; i < m->export_entries_count; i++) { - c0019694: 03092683 lw a3,48(s2) - c0019698: 4781 li a5,0 - c001969a: 0007871b sext.w a4,a5 - c001969e: 00d74463 blt a4,a3,c00196a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27342 + c0019864: 03092683 lw a3,48(s2) + c0019868: 4781 li a5,0 + c001986a: 0007871b sext.w a4,a5 + c001986e: 00d74463 blt a4,a3,c0019876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27350 return NULL; - c00196a2: 4401 li s0,0 - c00196a4: a811 j c00196b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27338 + c0019872: 4401 li s0,0 + c0019874: a811 j c0019888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27346 me = &m->export_entries[i]; - c00196a6: 02893403 ld s0,40(s2) - c00196aa: 00579713 slli a4,a5,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27339 + c0019876: 02893403 ld s0,40(s2) + c001987a: 00579713 slli a4,a5,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27347 if (me->export_name == export_name) - c00196ae: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27338 + c001987e: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27346 me = &m->export_entries[i]; - c00196b0: 943a add s0,s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27339 + c0019880: 943a add s0,s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27347 if (me->export_name == export_name) - c00196b2: 4c18 lw a4,24(s0) - c00196b4: feb713e3 bne a4,a1,c001969a + c0019882: 4c18 lw a4,24(s0) + c0019884: feb713e3 bne a4,a1,c001986a JS_SetModuleExport(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27446 JS_FreeAtom(ctx, name); - c00196b8: 8526 mv a0,s1 - c00196ba: e53ed0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27439 + c0019888: 8526 mv a0,s1 + c001988a: d71ed0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27447 if (!me) - c00196be: cc19 beqz s0,c00196dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27441 + c001988e: cc19 beqz s0,c00198ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27449 set_value(ctx, me->u.local.var_ref->pvalue, val); - c00196c0: 641c ld a5,8(s0) - c00196c2: 6602 ld a2,0(sp) - c00196c4: 66a2 ld a3,8(sp) - c00196c6: 6f8c ld a1,24(a5) - c00196c8: 8526 mv a0,s1 - c00196ca: 8b9ee0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27442 + c0019890: 641c ld a5,8(s0) + c0019892: 6602 ld a2,0(sp) + c0019894: 66a2 ld a3,8(sp) + c0019896: 6f8c ld a1,24(a5) + c0019898: 8526 mv a0,s1 + c001989a: fd6ee0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27450 return 0; - c00196ce: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27446 + c001989e: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27454 } - c00196d0: 70a2 ld ra,40(sp) - c00196d2: 7402 ld s0,32(sp) - c00196d4: 64e2 ld s1,24(sp) - c00196d6: 6942 ld s2,16(sp) - c00196d8: 6145 addi sp,sp,48 - c00196da: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27444 + c00198a0: 70a2 ld ra,40(sp) + c00198a2: 7402 ld s0,32(sp) + c00198a4: 64e2 ld s1,24(sp) + c00198a6: 6942 ld s2,16(sp) + c00198a8: 6145 addi sp,sp,48 + c00198aa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27452 JS_FreeValue(ctx, val); - c00196dc: 6582 ld a1,0(sp) - c00196de: 6622 ld a2,8(sp) - c00196e0: 8526 mv a0,s1 - c00196e2: c56ee0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27445 + c00198ac: 6582 ld a1,0(sp) + c00198ae: 6622 ld a2,8(sp) + c00198b0: 8526 mv a0,s1 + c00198b2: b74ee0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27453 return -1; - c00196e6: 557d li a0,-1 - c00196e8: b7e5 j c00196d0 + c00198b6: 557d li a0,-1 + c00198b8: b7e5 j c00198a0 -00000000c00196ea : +00000000c00198ba : find_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36767 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36775 if (*name == '[') { - c00196ea: 0005c703 lbu a4,0(a1) - c00196ee: 05b00793 li a5,91 - c00196f2: 08f71463 bne a4,a5,c001977a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36763 -{ - c00196f6: 715d addi sp,sp,-80 - c00196f8: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36768 + c00198ba: 0005c703 lbu a4,0(a1) + c00198be: 05b00793 li a5,91 + c00198c2: 08f71463 bne a4,a5,c001994a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36771 +{ + c00198c6: 715d addi sp,sp,-80 + c00198c8: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36776 name++; - c00196fa: 00158413 addi s0,a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36763 + c00198ca: 00158413 addi s0,a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36771 { - c00196fe: f44e sd s3,40(sp) - c0019700: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36769 + c00198ce: f44e sd s3,40(sp) + c00198d0: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36777 len = strlen(name) - 1; - c0019702: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36763 -{ - c0019704: fc26 sd s1,56(sp) - c0019706: f84a sd s2,48(sp) - c0019708: f052 sd s4,32(sp) - c001970a: ec56 sd s5,24(sp) - c001970c: e85a sd s6,16(sp) - c001970e: e486 sd ra,72(sp) - c0019710: e45e sd s7,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36769 + c00198d2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36771 +{ + c00198d4: fc26 sd s1,56(sp) + c00198d6: f84a sd s2,48(sp) + c00198d8: f052 sd s4,32(sp) + c00198da: ec56 sd s5,24(sp) + c00198dc: e85a sd s6,16(sp) + c00198de: e486 sd ra,72(sp) + c00198e0: e45e sd s7,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36777 len = strlen(name) - 1; - c0019712: 29e3d0ef jal ra,c00569b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36773 + c00198e2: 29e3d0ef jal ra,c0056b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36781 JSAtomStruct *p = ctx->rt->atom_array[atom]; - c0019716: 0189b783 ld a5,24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36775 + c00198e6: 0189b783 ld a5,24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36783 if (str->len == len && !memcmp(str->u.str8, name, len)) - c001971a: 80000a37 lui s4,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36769 + c00198ea: 80000a37 lui s4,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36777 len = strlen(name) - 1; - c001971e: fff5091b addiw s2,a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36773 + c00198ee: fff5091b addiw s2,a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36781 JSAtomStruct *p = ctx->rt->atom_array[atom]; - c0019722: 0607bb03 ld s6,96(a5) # 110060 <__clzdi2-0xbfeeffa0> - c0019726: 0cb00493 li s1,203 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36775 + c00198f2: 0607bb03 ld s6,96(a5) # 110060 <__clzdi2-0xbfeeffa0> + c00198f6: 0cb00493 li s1,203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36783 if (str->len == len && !memcmp(str->u.str8, name, len)) - c001972a: fffa4a13 not s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36772 + c00198fa: fffa4a13 not s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36780 for(atom = JS_ATOM_Symbol_toPrimitive; atom < JS_ATOM_END; atom++) { - c001972e: 0d800a93 li s5,216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36773 + c00198fe: 0d800a93 li s5,216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36781 JSAtomStruct *p = ctx->rt->atom_array[atom]; - c0019732: 00349793 slli a5,s1,0x3 - c0019736: 97da add a5,a5,s6 - c0019738: 6388 ld a0,0(a5) - c001973a: 00048b9b sext.w s7,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36775 - if (str->len == len && !memcmp(str->u.str8, name, len)) - c001973e: 415c lw a5,4(a0) - c0019740: 00fa77b3 and a5,s4,a5 - c0019744: 02f91663 bne s2,a5,c0019770 - c0019748: 864a mv a2,s2 - c001974a: 85a2 mv a1,s0 - c001974c: 0541 addi a0,a0,16 - c001974e: 0b43d0ef jal ra,c0056802 - c0019752: ed19 bnez a0,c0019770 + c0019902: 00349793 slli a5,s1,0x3 + c0019906: 97da add a5,a5,s6 + c0019908: 6388 ld a0,0(a5) + c001990a: 00048b9b sext.w s7,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36783 + if (str->len == len && !memcmp(str->u.str8, name, len)) + c001990e: 415c lw a5,4(a0) + c0019910: 00fa77b3 and a5,s4,a5 + c0019914: 02f91663 bne s2,a5,c0019940 + c0019918: 864a mv a2,s2 + c001991a: 85a2 mv a1,s0 + c001991c: 0541 addi a0,a0,16 + c001991e: 0b43d0ef jal ra,c00569d2 + c0019922: ed19 bnez a0,c0019940 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36791 } - c0019754: 6406 ld s0,64(sp) - c0019756: 60a6 ld ra,72(sp) - c0019758: 74e2 ld s1,56(sp) - c001975a: 7942 ld s2,48(sp) - c001975c: 7a02 ld s4,32(sp) - c001975e: 6ae2 ld s5,24(sp) - c0019760: 6b42 ld s6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36776 + c0019924: 6406 ld s0,64(sp) + c0019926: 60a6 ld ra,72(sp) + c0019928: 74e2 ld s1,56(sp) + c001992a: 7942 ld s2,48(sp) + c001992c: 7a02 ld s4,32(sp) + c001992e: 6ae2 ld s5,24(sp) + c0019930: 6b42 ld s6,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36784 return JS_DupAtom(ctx, atom); - c0019762: 85de mv a1,s7 - c0019764: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36783 + c0019932: 85de mv a1,s7 + c0019934: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36791 } - c0019766: 6ba2 ld s7,8(sp) - c0019768: 79a2 ld s3,40(sp) - c001976a: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36776 + c0019936: 6ba2 ld s7,8(sp) + c0019938: 79a2 ld s3,40(sp) + c001993a: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36784 return JS_DupAtom(ctx, atom); - c001976c: d5fed06f j c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36772 + c001993c: c7ded06f j c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36780 for(atom = JS_ATOM_Symbol_toPrimitive; atom < JS_ATOM_END; atom++) { - c0019770: 0485 addi s1,s1,1 - c0019772: fd5490e3 bne s1,s5,c0019732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36778 + c0019940: 0485 addi s1,s1,1 + c0019942: fd5490e3 bne s1,s5,c0019902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36786 abort(); - c0019776: 0943c0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36780 + c0019946: 0943c0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36788 atom = JS_NewAtom(ctx, name); - c001977a: cc7ff06f j c0019440 + c001994a: cc7ff06f j c0019610 -00000000c001977e : +00000000c001994e : js_new_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29409 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29417 { - c001977e: 7139 addi sp,sp,-64 - c0019780: f426 sd s1,40(sp) - c0019782: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29412 + c001994e: 7139 addi sp,sp,-64 + c0019950: f426 sd s1,40(sp) + c0019952: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29420 fd = js_mallocz(ctx, sizeof(*fd)); - c0019784: 22800593 li a1,552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29409 -{ - c0019788: f822 sd s0,48(sp) - c001978a: f04a sd s2,32(sp) - c001978c: ec4e sd s3,24(sp) - c001978e: e852 sd s4,16(sp) - c0019790: e456 sd s5,8(sp) - c0019792: e05a sd s6,0(sp) - c0019794: fc06 sd ra,56(sp) - c0019796: 892a mv s2,a0 - c0019798: 8b32 mv s6,a2 - c001979a: 8ab6 mv s5,a3 - c001979c: 8a3a mv s4,a4 - c001979e: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29412 + c0019954: 22800593 li a1,552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29417 +{ + c0019958: f822 sd s0,48(sp) + c001995a: f04a sd s2,32(sp) + c001995c: ec4e sd s3,24(sp) + c001995e: e852 sd s4,16(sp) + c0019960: e456 sd s5,8(sp) + c0019962: e05a sd s6,0(sp) + c0019964: fc06 sd ra,56(sp) + c0019966: 892a mv s2,a0 + c0019968: 8b32 mv s6,a2 + c001996a: 8ab6 mv s5,a3 + c001996c: 8a3a mv s4,a4 + c001996e: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29420 fd = js_mallocz(ctx, sizeof(*fd)); - c00197a0: d3cfc0ef jal ra,c0015cdc - c00197a4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29413 + c0019970: d3cfc0ef jal ra,c0015eac + c0019974: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29421 if (!fd) - c00197a6: cd59 beqz a0,c0019844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29417 + c0019976: cd59 beqz a0,c0019a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29425 init_list_head(&fd->child_list); - c00197a8: 01850793 addi a5,a0,24 + c0019978: 01850793 addi a5,a0,24 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c00197ac: ed1c sd a5,24(a0) + c001997c: ed1c sd a5,24(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c00197ae: f11c sd a5,32(a0) + c001997e: f11c sd a5,32(a0) js_new_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29421 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29429 fd->parent_cpool_idx = -1; - c00197b0: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29416 + c0019980: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29424 fd->ctx = ctx; - c00197b2: 01253023 sd s2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29420 + c0019982: 01253023 sd s2,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29428 fd->parent = parent; - c00197b6: e504 sd s1,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29421 + c0019986: e504 sd s1,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29429 fd->parent_cpool_idx = -1; - c00197b8: c91c sw a5,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29422 + c0019988: c91c sw a5,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29430 if (parent) { - c00197ba: c08d beqz s1,c00197dc + c001998a: c08d beqz s1,c00199ac list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c00197bc: 6c98 ld a4,24(s1) + c001998c: 6c98 ld a4,24(s1) js_new_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29423 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29431 list_add_tail(&fd->link, &parent->child_list); - c00197be: 02850793 addi a5,a0,40 + c001998e: 02850793 addi a5,a0,40 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c00197c2: e71c sd a5,8(a4) + c0019992: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c00197c4: f518 sd a4,40(a0) + c0019994: f518 sd a4,40(a0) js_new_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29423 - c00197c6: 01848713 addi a4,s1,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29431 + c0019996: 01848713 addi a4,s1,24 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c00197ca: f918 sd a4,48(a0) + c001999a: f918 sd a4,48(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c00197cc: ec9c sd a5,24(s1) + c001999c: ec9c sd a5,24(s1) js_new_function_def(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29432 fd->js_mode = parent->js_mode; - c00197ce: 0864c783 lbu a5,134(s1) - c00197d2: 08f50323 sb a5,134(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29425 + c001999e: 0864c783 lbu a5,134(s1) + c00199a2: 08f50323 sb a5,134(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29433 fd->parent_scope_level = parent->scope_level; - c00197d6: 0e04a783 lw a5,224(s1) - c00197da: c95c sw a5,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29430 + c00199a6: 0e04a783 lw a5,224(s1) + c00199aa: c95c sw a5,20(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29438 js_dbuf_init(ctx, &fd->byte_code); - c00197dc: 13040593 addi a1,s0,304 - c00197e0: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29428 + c00199ac: 13040593 addi a1,s0,304 + c00199b0: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29436 fd->is_eval = is_eval; - c00197e2: 03642c23 sw s6,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29429 + c00199b2: 03642c23 sw s6,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29437 fd->is_func_expr = is_func_expr; - c00197e6: 05542223 sw s5,68(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29430 + c00199b6: 05542223 sw s5,68(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29438 js_dbuf_init(ctx, &fd->byte_code); - c00197ea: 879eb0ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29431 + c00199ba: ea8eb0ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29439 fd->last_opcode_pos = -1; - c00197ee: 56fd li a3,-1 - c00197f0: 10040493 addi s1,s0,256 - c00197f4: d0b4 sw a3,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29432 + c00199be: 56fd li a3,-1 + c00199c0: 10040493 addi s1,s0,256 + c00199c4: d0b4 sw a3,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29440 fd->func_name = JS_ATOM_NULL; - c00197f6: 08042423 sw zero,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29433 + c00199c6: 08042423 sw zero,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29441 fd->var_object_idx = -1; - c00197fa: 08040793 addi a5,s0,128 - c00197fe: dbd4 sw a3,52(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29434 + c00199ca: 08040793 addi a5,s0,128 + c00199ce: dbd4 sw a3,52(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29442 fd->arg_var_object_idx = -1; - c0019800: fc54 sd a3,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29436 + c00199d0: fc54 sd a3,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29444 fd->arguments_arg_idx = -1; - c0019802: e074 sd a3,192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29438 + c00199d2: e074 sd a3,192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29446 fd->eval_ret_idx = -1; - c0019804: e474 sd a3,200(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29440 + c00199d4: e474 sd a3,200(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29448 fd->new_target_var_idx = -1; - c0019806: e874 sd a3,208(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29442 + c00199d6: e874 sd a3,208(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29450 fd->home_object_var_idx = -1; - c0019808: cfb4 sw a3,88(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29445 + c00199d8: cfb4 sw a3,88(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29453 fd->scopes = fd->def_scope_array; - c001980a: 0f840713 addi a4,s0,248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29446 + c00199da: 0f840713 addi a4,s0,248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29454 fd->scope_size = countof(fd->def_scope_array); - c001980e: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29445 + c00199de: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29453 fd->scopes = fd->def_scope_array; - c0019810: f878 sd a4,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29446 + c00199e0: f878 sd a4,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29454 fd->scope_size = countof(fd->def_scope_array); - c0019812: 1602 slli a2,a2,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29448 + c00199e2: 1602 slli a2,a2,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29456 fd->scopes[0].first = -1; - c0019814: dff4 sw a3,124(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29449 + c00199e4: dff4 sw a3,124(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29457 fd->scopes[0].parent = -1; - c0019816: dfb4 sw a3,120(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29446 + c00199e6: dfb4 sw a3,120(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29454 fd->scope_size = countof(fd->def_scope_array); - c0019818: 0611 addi a2,a2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29450 + c00199e8: 0611 addi a2,a2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29458 fd->scope_level = 0; /* 0: var/arg scope */ - c001981a: 02069793 slli a5,a3,0x20 - c001981e: f07c sd a5,224(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29446 + c00199ea: 02069793 slli a5,a3,0x20 + c00199ee: f07c sd a5,224(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29454 fd->scope_size = countof(fd->def_scope_array); - c0019820: f470 sd a2,232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29452 + c00199f0: f470 sd a2,232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29460 fd->body_scope = -1; - c0019822: cc94 sw a3,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29454 + c00199f2: cc94 sw a3,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29462 fd->filename = JS_NewAtom(ctx, filename); - c0019824: 85d2 mv a1,s4 - c0019826: 854a mv a0,s2 - c0019828: c19ff0ef jal ra,c0019440 - c001982c: 18040793 addi a5,s0,384 - c0019830: cba8 sw a0,80(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29455 + c00199f4: 85d2 mv a1,s4 + c00199f6: 854a mv a0,s2 + c00199f8: c19ff0ef jal ra,c0019610 + c00199fc: 18040793 addi a5,s0,384 + c0019a00: cba8 sw a0,80(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29463 fd->line_num = line_num; - c0019832: 0537aa23 sw s3,84(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29457 + c0019a02: 0537aa23 sw s3,84(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29465 js_dbuf_init(ctx, &fd->pc2line); - c0019836: 1d840593 addi a1,s0,472 - c001983a: 854a mv a0,s2 - c001983c: 827eb0ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29460 + c0019a06: 1d840593 addi a1,s0,472 + c0019a0a: 854a mv a0,s2 + c0019a0c: e56eb0ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29468 fd->last_opcode_line_num = line_num; - c0019840: 0734a223 sw s3,100(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29463 -} - c0019844: 70e2 ld ra,56(sp) - c0019846: 8522 mv a0,s0 - c0019848: 7442 ld s0,48(sp) - c001984a: 74a2 ld s1,40(sp) - c001984c: 7902 ld s2,32(sp) - c001984e: 69e2 ld s3,24(sp) - c0019850: 6a42 ld s4,16(sp) - c0019852: 6aa2 ld s5,8(sp) - c0019854: 6b02 ld s6,0(sp) - c0019856: 6121 addi sp,sp,64 - c0019858: 8082 ret - -00000000c001985a : + c0019a10: 0734a223 sw s3,100(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29471 +} + c0019a14: 70e2 ld ra,56(sp) + c0019a16: 8522 mv a0,s0 + c0019a18: 7442 ld s0,48(sp) + c0019a1a: 74a2 ld s1,40(sp) + c0019a1c: 7902 ld s2,32(sp) + c0019a1e: 69e2 ld s3,24(sp) + c0019a20: 6a42 ld s4,16(sp) + c0019a22: 6aa2 ld s5,8(sp) + c0019a24: 6b02 ld s6,0(sp) + c0019a26: 6121 addi sp,sp,64 + c0019a28: 8082 ret + +00000000c0019a2a : emit_class_init_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22889 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22897 { - c001985a: 1101 addi sp,sp,-32 - c001985c: e822 sd s0,16(sp) - c001985e: e426 sd s1,8(sp) - c0019860: ec06 sd ra,24(sp) + c0019a2a: 1101 addi sp,sp,-32 + c0019a2c: e822 sd s0,16(sp) + c0019a2e: e426 sd s1,8(sp) + c0019a30: ec06 sd ra,24(sp) js_parse_function_class_fields_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33655 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33663 fd = js_new_function_def(s->ctx, s->cur_func, FALSE, FALSE, - c0019862: 6918 ld a4,16(a0) + c0019a32: 6918 ld a4,16(a0) emit_class_init_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22889 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22897 { - c0019864: 842a mv s0,a0 - c0019866: 84ae mv s1,a1 + c0019a34: 842a mv s0,a0 + c0019a36: 84ae mv s1,a1 js_parse_function_class_fields_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33655 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33663 fd = js_new_function_def(s->ctx, s->cur_func, FALSE, FALSE, - c0019868: 752c ld a1,104(a0) - c001986a: 6108 ld a0,0(a0) - c001986c: 4781 li a5,0 - c001986e: 4681 li a3,0 - c0019870: 4601 li a2,0 - c0019872: f0dff0ef jal ra,c001977e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33657 + c0019a38: 752c ld a1,104(a0) + c0019a3a: 6108 ld a0,0(a0) + c0019a3c: 4781 li a5,0 + c0019a3e: 4681 li a3,0 + c0019a40: 4601 li a2,0 + c0019a42: f0dff0ef jal ra,c001994e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33665 if (!fd) - c0019876: e909 bnez a0,c0019888 + c0019a46: e909 bnez a0,c0019a58 emit_class_init_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22892 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22900 cf->fields_init_fd = js_parse_function_class_fields_init(s); - c0019878: 0004b023 sd zero,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22894 + c0019a48: 0004b023 sd zero,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22902 return -1; - c001987c: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22920 + c0019a4c: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22928 } - c001987e: 60e2 ld ra,24(sp) - c0019880: 6442 ld s0,16(sp) - c0019882: 64a2 ld s1,8(sp) - c0019884: 6105 addi sp,sp,32 - c0019886: 8082 ret + c0019a4e: 60e2 ld ra,24(sp) + c0019a50: 6442 ld s0,16(sp) + c0019a52: 64a2 ld s1,8(sp) + c0019a54: 6105 addi sp,sp,32 + c0019a56: 8082 ret js_parse_function_class_fields_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33669 fd->has_home_object = TRUE; - c0019888: 4785 li a5,1 - c001988a: e53c sd a5,72(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33666 + c0019a58: 4785 li a5,1 + c0019a5a: e53c sd a5,72(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33674 fd->new_target_allowed = TRUE; - c001988c: f53c sd a5,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33668 + c0019a5c: f53c sd a5,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33676 fd->super_allowed = fd->has_home_object; - c001988e: f93c sd a5,112(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33663 - fd->has_arguments_binding = FALSE; - c0019890: 02079713 slli a4,a5,0x20 + c0019a5e: f93c sd a5,112(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33671 + fd->has_arguments_binding = FALSE; + c0019a60: 02079713 slli a4,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33679 fd->func_kind = JS_FUNC_NORMAL; - c0019894: 60000793 li a5,1536 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33659 + c0019a64: 60000793 li a5,1536 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33667 fd->func_name = JS_ATOM_NULL; - c0019898: 08052423 sw zero,136(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33663 + c0019a68: 08052423 sw zero,136(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33671 fd->has_arguments_binding = FALSE; - c001989c: f138 sd a4,96(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33665 + c0019a6c: f138 sd a4,96(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33673 fd->is_derived_class_constructor = FALSE; - c001989e: 06052c23 sw zero,120(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33671 + c0019a6e: 06052c23 sw zero,120(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33679 fd->func_kind = JS_FUNC_NORMAL; - c00198a2: 08f51223 sh a5,132(a0) + c0019a72: 08f51223 sh a5,132(a0) emit_class_init_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22892 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22900 cf->fields_init_fd = js_parse_function_class_fields_init(s); - c00198a6: e088 sd a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22896 + c0019a76: e088 sd a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22904 s->cur_func = cf->fields_init_fd; - c00198a8: f428 sd a0,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22898 + c0019a78: f428 sd a0,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22906 if (!cf->is_static) { - c00198aa: 48dc lw a5,20(s1) - c00198ac: e7a5 bnez a5,c0019914 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22902 + c0019a7a: 48dc lw a5,20(s1) + c0019a7c: e7a5 bnez a5,c0019ae4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22910 emit_op(s, OP_push_false); /* will be patched later */ - c00198ae: 45a5 li a1,9 - c00198b0: 8522 mv a0,s0 - c00198b2: b8beb0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22903 + c0019a7e: 45a5 li a1,9 + c0019a80: 8522 mv a0,s0 + c0019a82: aa9eb0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22911 cf->brand_push_pos = cf->fields_init_fd->last_opcode_pos; - c00198b6: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22904 + c0019a86: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22912 label_add_brand = emit_goto(s, OP_if_false, -1); - c00198b8: 567d li a2,-1 - c00198ba: 06a00593 li a1,106 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22903 + c0019a88: 567d li a2,-1 + c0019a8a: 06a00593 li a1,106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22911 cf->brand_push_pos = cf->fields_init_fd->last_opcode_pos; - c00198be: 1607a783 lw a5,352(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22904 + c0019a8e: 1607a783 lw a5,352(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22912 label_add_brand = emit_goto(s, OP_if_false, -1); - c00198c2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22903 + c0019a92: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22911 cf->brand_push_pos = cf->fields_init_fd->last_opcode_pos; - c00198c4: c89c sw a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22904 + c0019a94: c89c sw a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22912 label_add_brand = emit_goto(s, OP_if_false, -1); - c00198c6: bf2fe0ef jal ra,c0017cb8 - c00198ca: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22906 + c0019a96: bf2fe0ef jal ra,c0017e88 + c0019a9a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22914 emit_op(s, OP_scope_get_var); - c00198cc: 0b800593 li a1,184 - c00198d0: 8522 mv a0,s0 - c00198d2: b6beb0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22907 + c0019a9c: 0b800593 li a1,184 + c0019aa0: 8522 mv a0,s0 + c0019aa2: a89eb0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22915 emit_atom(s, JS_ATOM_this); - c00198d6: 45a1 li a1,8 - c00198d8: 8522 mv a0,s0 - c00198da: c15ed0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22908 + c0019aa6: 45a1 li a1,8 + c0019aa8: 8522 mv a0,s0 + c0019aaa: b33ed0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22916 emit_u16(s, 0); - c00198de: 4581 li a1,0 - c00198e0: 8522 mv a0,s0 - c00198e2: a29eb0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22910 + c0019aae: 4581 li a1,0 + c0019ab0: 8522 mv a0,s0 + c0019ab2: 947eb0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22918 emit_op(s, OP_scope_get_var); - c00198e6: 0b800593 li a1,184 - c00198ea: 8522 mv a0,s0 - c00198ec: b51eb0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22911 + c0019ab6: 0b800593 li a1,184 + c0019aba: 8522 mv a0,s0 + c0019abc: a6feb0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22919 emit_atom(s, JS_ATOM_home_object); - c00198f0: 07400593 li a1,116 - c00198f4: 8522 mv a0,s0 - c00198f6: bf9ed0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22912 + c0019ac0: 07400593 li a1,116 + c0019ac4: 8522 mv a0,s0 + c0019ac6: b17ed0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22920 emit_u16(s, 0); - c00198fa: 4581 li a1,0 - c00198fc: 8522 mv a0,s0 - c00198fe: a0deb0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22914 + c0019aca: 4581 li a1,0 + c0019acc: 8522 mv a0,s0 + c0019ace: 92beb0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22922 emit_op(s, OP_add_brand); - c0019902: 02d00593 li a1,45 - c0019906: 8522 mv a0,s0 - c0019908: b35eb0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22916 + c0019ad2: 02d00593 li a1,45 + c0019ad6: 8522 mv a0,s0 + c0019ad8: a53eb0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22924 emit_label(s, label_add_brand); - c001990c: 85a6 mv a1,s1 - c001990e: 8522 mv a0,s0 - c0019910: ccbeb0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22918 + c0019adc: 85a6 mv a1,s1 + c0019ade: 8522 mv a0,s0 + c0019ae0: be9eb0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22926 s->cur_func = s->cur_func->parent; - c0019914: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22919 + c0019ae4: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22927 return 0; - c0019916: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22918 + c0019ae6: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22926 s->cur_func = s->cur_func->parent; - c0019918: 679c ld a5,8(a5) - c001991a: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22919 + c0019ae8: 679c ld a5,8(a5) + c0019aea: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22927 return 0; - c001991c: b78d j c001987e + c0019aec: b78d j c0019a4e -00000000c001991e : +00000000c0019aee : parse_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20616 -{ - c001991e: 7111 addi sp,sp,-256 - c0019920: e5d6 sd s5,200(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20624 +{ + c0019aee: 7111 addi sp,sp,-256 + c0019af0: e5d6 sd s5,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20632 ident_size = sizeof(ident_buf); - c0019922: 08000793 li a5,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20623 + c0019af2: 08000793 li a5,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20631 buf = ident_buf; - c0019926: 02010a93 addi s5,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20616 + c0019af6: 02010a93 addi s5,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20624 { - c001992a: f9a2 sd s0,240(sp) - c001992c: f5a6 sd s1,232(sp) - c001992e: f1ca sd s2,224(sp) - c0019930: edce sd s3,216(sp) - c0019932: e1da sd s6,192(sp) - c0019934: fd86 sd ra,248(sp) - c0019936: e9d2 sd s4,208(sp) - c0019938: fd5e sd s7,184(sp) - c001993a: f962 sd s8,176(sp) - c001993c: f566 sd s9,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20623 + c0019afa: f9a2 sd s0,240(sp) + c0019afc: f5a6 sd s1,232(sp) + c0019afe: f1ca sd s2,224(sp) + c0019b00: edce sd s3,216(sp) + c0019b02: e1da sd s6,192(sp) + c0019b04: fd86 sd ra,248(sp) + c0019b06: e9d2 sd s4,208(sp) + c0019b08: fd5e sd s7,184(sp) + c0019b0a: f962 sd s8,176(sp) + c0019b0c: f566 sd s9,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20631 buf = ident_buf; - c001993e: e856 sd s5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20624 + c0019b0e: e856 sd s5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20632 ident_size = sizeof(ident_buf); - c0019940: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20622 + c0019b10: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20630 p = *pp; - c0019942: 0005ba03 ld s4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20616 + c0019b12: 0005ba03 ld s4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20624 { - c0019946: 892a mv s2,a0 - c0019948: 89ae mv s3,a1 - c001994a: 8b32 mv s6,a2 - c001994c: 8436 mv s0,a3 - c001994e: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20626 + c0019b16: 892a mv s2,a0 + c0019b18: 89ae mv s3,a1 + c0019b1a: 8b32 mv s6,a2 + c0019b1c: 8436 mv s0,a3 + c0019b1e: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20634 if (is_private) - c0019950: c711 beqz a4,c001995c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20627 + c0019b20: c711 beqz a4,c0019b2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20635 buf[ident_pos++] = '#'; - c0019952: 02300793 li a5,35 - c0019956: 02f10023 sb a5,32(sp) - c001995a: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20631 + c0019b22: 02300793 li a5,35 + c0019b26: 02f10023 sb a5,32(sp) + c0019b2a: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20639 if (c < 128) { - c001995c: 07f00b93 li s7,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20637 + c0019b2c: 07f00b93 li s7,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20645 if (c == '\\' && *p1 == 'u') { - c0019960: 05c00c13 li s8,92 - c0019964: 07500c93 li s9,117 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20632 + c0019b30: 05c00c13 li s8,92 + c0019b34: 07500c93 li s9,117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20640 buf[ident_pos++] = c; - c0019968: 6542 ld a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20629 + c0019b38: 6542 ld a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20637 p1 = p; - c001996a: e452 sd s4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20632 + c0019b3a: e452 sd s4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20640 buf[ident_pos++] = c; - c001996c: 9526 add a0,a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20631 + c0019b3c: 9526 add a0,a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20639 if (c < 128) { - c001996e: 048bcc63 blt s7,s0,c00199c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20632 + c0019b3e: 048bcc63 blt s7,s0,c0019b96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20640 buf[ident_pos++] = c; - c0019972: 0485 addi s1,s1,1 - c0019974: 00850023 sb s0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20636 + c0019b42: 0485 addi s1,s1,1 + c0019b44: 00850023 sb s0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20644 c = *p1++; - c0019978: 67a2 ld a5,8(sp) - c001997a: 00178713 addi a4,a5,1 - c001997e: e43a sd a4,8(sp) - c0019980: 0007c403 lbu s0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20637 + c0019b48: 67a2 ld a5,8(sp) + c0019b4a: 00178713 addi a4,a5,1 + c0019b4e: e43a sd a4,8(sp) + c0019b50: 0007c403 lbu s0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20645 if (c == '\\' && *p1 == 'u') { - c0019984: 05841763 bne s0,s8,c00199d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20637 (discriminator 1) - c0019988: 0017c783 lbu a5,1(a5) - c001998c: 01979a63 bne a5,s9,c00199a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20638 + c0019b54: 05841763 bne s0,s8,c0019ba2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20645 (discriminator 1) + c0019b58: 0017c783 lbu a5,1(a5) + c0019b5c: 01979a63 bne a5,s9,c0019b70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20646 c = lre_parse_escape(&p1, TRUE); - c0019990: 4585 li a1,1 - c0019992: 0028 addi a0,sp,8 - c0019994: 77c2a0ef jal ra,c0044110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20639 + c0019b60: 4585 li a1,1 + c0019b62: 0028 addi a0,sp,8 + c0019b64: 77c2a0ef jal ra,c00442e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20647 *pident_has_escape = TRUE; - c0019998: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20638 + c0019b68: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20646 c = lre_parse_escape(&p1, TRUE); - c001999a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20639 + c0019b6a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20647 *pident_has_escape = TRUE; - c001999c: 00fb2023 sw a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20643 + c0019b6c: 00fb2023 sw a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20651 if (!lre_js_is_ident_next(c)) - c00199a0: 8522 mv a0,s0 - c00199a2: b26ec0ef jal ra,c0005cc8 - c00199a6: cd1d beqz a0,c00199e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20646 + c0019b70: 8522 mv a0,s0 + c0019b72: a44ec0ef jal ra,c0005db6 + c0019b76: cd1d beqz a0,c0019bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20654 if (unlikely(ident_pos >= ident_size - UTF8_CHAR_LEN_MAX)) { - c00199a8: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20645 + c0019b78: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20653 p = p1; - c00199aa: 6a22 ld s4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20646 + c0019b7a: 6a22 ld s4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20654 if (unlikely(ident_pos >= ident_size - UTF8_CHAR_LEN_MAX)) { - c00199ac: 17e9 addi a5,a5,-6 - c00199ae: faf4ede3 bltu s1,a5,c0019968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20647 + c0019b7c: 17e9 addi a5,a5,-6 + c0019b7e: faf4ede3 bltu s1,a5,c0019b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20655 if (ident_realloc(s->ctx, &buf, &ident_size, ident_buf)) { - c00199b2: 00093503 ld a0,0(s2) - c00199b6: 86d6 mv a3,s5 - c00199b8: 0830 addi a2,sp,24 - c00199ba: 080c addi a1,sp,16 - c00199bc: ec2fd0ef jal ra,c001707e - c00199c0: d545 beqz a0,c0019968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20648 + c0019b82: 00093503 ld a0,0(s2) + c0019b86: 86d6 mv a3,s5 + c0019b88: 0830 addi a2,sp,24 + c0019b8a: 080c addi a1,sp,16 + c0019b8c: ec2fd0ef jal ra,c001724e + c0019b90: d545 beqz a0,c0019b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20656 atom = JS_ATOM_NULL; - c00199c2: 4401 li s0,0 - c00199c4: a805 j c00199f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20634 + c0019b92: 4401 li s0,0 + c0019b94: a805 j c0019bc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20642 ident_pos += unicode_to_utf8((uint8_t*)buf + ident_pos, c); - c00199c6: 0004059b sext.w a1,s0 - c00199ca: 4622e0ef jal ra,c0047e2c - c00199ce: 94aa add s1,s1,a0 - c00199d0: b765 j c0019978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20640 + c0019b96: 0004059b sext.w a1,s0 + c0019b9a: 4622e0ef jal ra,c0047ffc + c0019b9e: 94aa add s1,s1,a0 + c0019ba0: b765 j c0019b48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20648 } else if (c >= 128) { - c00199d2: fc8bd7e3 bge s7,s0,c00199a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20641 + c0019ba2: fc8bd7e3 bge s7,s0,c0019b70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20649 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1); - c00199d6: 0030 addi a2,sp,8 - c00199d8: 4599 li a1,6 - c00199da: 8552 mv a0,s4 - c00199dc: 53e2e0ef jal ra,c0047f1a - c00199e0: 842a mv s0,a0 - c00199e2: bf7d j c00199a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20653 + c0019ba6: 0030 addi a2,sp,8 + c0019ba8: 4599 li a1,6 + c0019baa: 8552 mv a0,s4 + c0019bac: 53e2e0ef jal ra,c00480ea + c0019bb0: 842a mv s0,a0 + c0019bb2: bf7d j c0019b70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20661 atom = JS_NewAtomLen(s->ctx, buf, ident_pos); - c00199e4: 65c2 ld a1,16(sp) - c00199e6: 00093503 ld a0,0(s2) - c00199ea: 8626 mv a2,s1 - c00199ec: a03ff0ef jal ra,c00193ee - c00199f0: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20655 + c0019bb4: 65c2 ld a1,16(sp) + c0019bb6: 00093503 ld a0,0(s2) + c0019bba: 8626 mv a2,s1 + c0019bbc: a03ff0ef jal ra,c00195be + c0019bc0: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20663 if (unlikely(buf != ident_buf)) - c00199f4: 65c2 ld a1,16(sp) - c00199f6: 01558663 beq a1,s5,c0019a02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20656 + c0019bc4: 65c2 ld a1,16(sp) + c0019bc6: 01558663 beq a1,s5,c0019bd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20664 js_free(s->ctx, buf); - c00199fa: 00093503 ld a0,0(s2) - c00199fe: c3ced0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20659 -} - c0019a02: 70ee ld ra,248(sp) - c0019a04: 8522 mv a0,s0 - c0019a06: 744e ld s0,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20657 + c0019bca: 00093503 ld a0,0(s2) + c0019bce: b5aed0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20667 +} + c0019bd2: 70ee ld ra,248(sp) + c0019bd4: 8522 mv a0,s0 + c0019bd6: 744e ld s0,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20665 *pp = p; - c0019a08: 0149b023 sd s4,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20659 -} - c0019a0c: 74ae ld s1,232(sp) - c0019a0e: 790e ld s2,224(sp) - c0019a10: 69ee ld s3,216(sp) - c0019a12: 6a4e ld s4,208(sp) - c0019a14: 6aae ld s5,200(sp) - c0019a16: 6b0e ld s6,192(sp) - c0019a18: 7bea ld s7,184(sp) - c0019a1a: 7c4a ld s8,176(sp) - c0019a1c: 7caa ld s9,168(sp) - c0019a1e: 6111 addi sp,sp,256 - c0019a20: 8082 ret - -00000000c0019a22 : + c0019bd8: 0149b023 sd s4,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20667 +} + c0019bdc: 74ae ld s1,232(sp) + c0019bde: 790e ld s2,224(sp) + c0019be0: 69ee ld s3,216(sp) + c0019be2: 6a4e ld s4,208(sp) + c0019be4: 6aae ld s5,200(sp) + c0019be6: 6b0e ld s6,192(sp) + c0019be8: 7bea ld s7,184(sp) + c0019bea: 7c4a ld s8,176(sp) + c0019bec: 7caa ld s9,168(sp) + c0019bee: 6111 addi sp,sp,256 + c0019bf0: 8082 ret + +00000000c0019bf2 : JS_NewString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4021 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4029 { - c0019a22: 7179 addi sp,sp,-48 - c0019a24: f022 sd s0,32(sp) - c0019a26: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4022 + c0019bf2: 7179 addi sp,sp,-48 + c0019bf4: f022 sd s0,32(sp) + c0019bf6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4030 return JS_NewStringLen(ctx, str, strlen(str)); - c0019a28: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4021 + c0019bf8: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4029 { - c0019a2a: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4022 + c0019bfa: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4030 return JS_NewStringLen(ctx, str, strlen(str)); - c0019a2c: e42e sd a1,8(sp) - c0019a2e: 7833c0ef jal ra,c00569b0 - c0019a32: 862a mv a2,a0 - c0019a34: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4023 -} - c0019a36: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4022 + c0019bfc: e42e sd a1,8(sp) + c0019bfe: 7833c0ef jal ra,c0056b80 + c0019c02: 862a mv a2,a0 + c0019c04: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4031 +} + c0019c06: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4030 return JS_NewStringLen(ctx, str, strlen(str)); - c0019a38: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4023 + c0019c08: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4031 } - c0019a3a: 70a2 ld ra,40(sp) - c0019a3c: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4022 + c0019c0a: 70a2 ld ra,40(sp) + c0019c0c: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4030 return JS_NewStringLen(ctx, str, strlen(str)); - c0019a3e: 853ff06f j c0019290 + c0019c0e: 853ff06f j c0019460 -00000000c0019a42 : +00000000c0019c12 : JS_NewAtomUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3036 { - c0019a42: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3029 + c0019c12: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3037 if (n <= JS_ATOM_MAX_INT) { - c0019a44: 0005c663 bltz a1,c0019a50 + c0019c14: 0005c663 bltz a1,c0019c20 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c0019a48: 80000537 lui a0,0x80000 - c0019a4c: 8d4d or a0,a0,a1 + c0019c18: 80000537 lui a0,0x80000 + c0019c1c: 8d4d or a0,a0,a1 JS_NewAtomUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3049 } - c0019a4e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3028 + c0019c1e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3036 { - c0019a50: 7179 addi sp,sp,-48 - c0019a52: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3034 + c0019c20: 7179 addi sp,sp,-48 + c0019c22: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3042 snprintf(buf, sizeof(buf), "%u", n); - c0019a54: 00043617 auipc a2,0x43 - c0019a58: 0c460613 addi a2,a2,196 # c005cb18 - c0019a5c: 842a mv s0,a0 - c0019a5e: 45ad li a1,11 - c0019a60: 850a mv a0,sp -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3028 + c0019c24: 00043617 auipc a2,0x43 + c0019c28: 12460613 addi a2,a2,292 # c005cd48 + c0019c2c: 842a mv s0,a0 + c0019c2e: 45ad li a1,11 + c0019c30: 850a mv a0,sp +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3036 { - c0019a62: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3034 + c0019c32: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3042 snprintf(buf, sizeof(buf), "%u", n); - c0019a64: 7a03a0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3035 + c0019c34: 7a03a0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3043 val = JS_NewString(ctx, buf); - c0019a68: 858a mv a1,sp - c0019a6a: 8522 mv a0,s0 - c0019a6c: fb7ff0ef jal ra,c0019a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3036 + c0019c38: 858a mv a1,sp + c0019c3a: 8522 mv a0,s0 + c0019c3c: fb7ff0ef jal ra,c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3044 if (JS_IsException(val)) - c0019a70: 2581 sext.w a1,a1 - c0019a72: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3035 + c0019c40: 2581 sext.w a1,a1 + c0019c42: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3043 val = JS_NewString(ctx, buf); - c0019a74: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3037 + c0019c44: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3045 return JS_ATOM_NULL; - c0019a76: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3036 + c0019c46: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3044 if (JS_IsException(val)) - c0019a78: 00e58863 beq a1,a4,c0019a88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3038 + c0019c48: 00e58863 beq a1,a4,c0019c58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3046 return __JS_NewAtom(ctx->rt, JS_VALUE_GET_STRING(val), - c0019a7c: 6c08 ld a0,24(s0) - c0019a7e: 4605 li a2,1 - c0019a80: 85be mv a1,a5 - c0019a82: d14ed0ef jal ra,c0006f96 <__JS_NewAtom> - c0019a86: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3041 (discriminator 1) -} - c0019a88: 70a2 ld ra,40(sp) - c0019a8a: 7402 ld s0,32(sp) - c0019a8c: 6145 addi sp,sp,48 - c0019a8e: 8082 ret - -00000000c0019a90 <__JS_AtomToValue>: + c0019c4c: 6c08 ld a0,24(s0) + c0019c4e: 4605 li a2,1 + c0019c50: 85be mv a1,a5 + c0019c52: c32ed0ef jal ra,c0007084 <__JS_NewAtom> + c0019c56: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3049 (discriminator 1) +} + c0019c58: 70a2 ld ra,40(sp) + c0019c5a: 7402 ld s0,32(sp) + c0019c5c: 6145 addi sp,sp,48 + c0019c5e: 8082 ret + +00000000c0019c60 <__JS_AtomToValue>: __JS_AtomToValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3150 { - c0019a90: 711d addi sp,sp,-96 - c0019a92: e8a2 sd s0,80(sp) - c0019a94: ec86 sd ra,88(sp) - c0019a96: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3145 + c0019c60: 711d addi sp,sp,-96 + c0019c62: e8a2 sd s0,80(sp) + c0019c64: ec86 sd ra,88(sp) + c0019c66: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3153 if (__JS_AtomIsTaggedInt(atom)) { - c0019a98: 0205da63 bgez a1,c0019acc <__JS_AtomToValue+0x3c> + c0019c68: 0205da63 bgez a1,c0019c9c <__JS_AtomToValue+0x3c> __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0019a9c: 1586 slli a1,a1,0x21 + c0019c6c: 1586 slli a1,a1,0x21 __JS_AtomToValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3154 snprintf(buf, sizeof(buf), "%u", __JS_AtomToUInt32(atom)); - c0019a9e: 0215d693 srli a3,a1,0x21 - c0019aa2: 00043617 auipc a2,0x43 - c0019aa6: 07660613 addi a2,a2,118 # c005cb18 - c0019aaa: 04000593 li a1,64 - c0019aae: 0808 addi a0,sp,16 - c0019ab0: 7543a0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3147 + c0019c6e: 0215d693 srli a3,a1,0x21 + c0019c72: 00043617 auipc a2,0x43 + c0019c76: 0d660613 addi a2,a2,214 # c005cd48 + c0019c7a: 04000593 li a1,64 + c0019c7e: 0808 addi a0,sp,16 + c0019c80: 7543a0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3155 return JS_NewString(ctx, buf); - c0019ab4: 080c addi a1,sp,16 - c0019ab6: 8522 mv a0,s0 - c0019ab8: f6bff0ef jal ra,c0019a22 - c0019abc: e02a sd a0,0(sp) - c0019abe: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3166 (discriminator 1) -} - c0019ac0: 60e6 ld ra,88(sp) - c0019ac2: 6446 ld s0,80(sp) - c0019ac4: 6502 ld a0,0(sp) - c0019ac6: 65a2 ld a1,8(sp) - c0019ac8: 6125 addi sp,sp,96 - c0019aca: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3149 + c0019c84: 080c addi a1,sp,16 + c0019c86: 8522 mv a0,s0 + c0019c88: f6bff0ef jal ra,c0019bf2 + c0019c8c: e02a sd a0,0(sp) + c0019c8e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3174 (discriminator 1) +} + c0019c90: 60e6 ld ra,88(sp) + c0019c92: 6446 ld s0,80(sp) + c0019c94: 6502 ld a0,0(sp) + c0019c96: 65a2 ld a1,8(sp) + c0019c98: 6125 addi sp,sp,96 + c0019c9a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3157 JSRuntime *rt = ctx->rt; - c0019acc: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3151 + c0019c9c: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3159 assert(atom < rt->atom_size); - c0019ace: 4bb8 lw a4,80(a5) - c0019ad0: 00e5ec63 bltu a1,a4,c0019ae8 <__JS_AtomToValue+0x58> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3151 (discriminator 1) - c0019ad4: 6585 lui a1,0x1 - c0019ad6: 4601 li a2,0 - c0019ad8: c4f58593 addi a1,a1,-945 # c4f <__clzdi2-0xbffff3b1> - c0019adc: 00043517 auipc a0,0x43 - c0019ae0: f9c50513 addi a0,a0,-100 # c005ca78 - c0019ae4: 735390ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3152 (discriminator 2) + c0019c9e: 4bb8 lw a4,80(a5) + c0019ca0: 00e5ec63 bltu a1,a4,c0019cb8 <__JS_AtomToValue+0x58> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3159 (discriminator 1) + c0019ca4: 6585 lui a1,0x1 + c0019ca6: 4601 li a2,0 + c0019ca8: c5758593 addi a1,a1,-937 # c57 <__clzdi2-0xbffff3a9> + c0019cac: 00043517 auipc a0,0x43 + c0019cb0: f9c50513 addi a0,a0,-100 # c005cc48 + c0019cb4: 735390ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3160 (discriminator 2) p = rt->atom_array[atom]; - c0019ae8: 73b4 ld a3,96(a5) - c0019aea: 02059793 slli a5,a1,0x20 - c0019aee: 01d7d593 srli a1,a5,0x1d - c0019af2: 95b6 add a1,a1,a3 - c0019af4: 619c ld a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3153 (discriminator 2) + c0019cb8: 73b4 ld a3,96(a5) + c0019cba: 02059793 slli a5,a1,0x20 + c0019cbe: 01d7d593 srli a1,a5,0x1d + c0019cc2: 95b6 add a1,a1,a3 + c0019cc4: 619c ld a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3161 (discriminator 2) if (p->atom_type == JS_ATOM_TYPE_STRING) { - c0019af6: c00005b7 lui a1,0xc0000 - c0019afa: 4798 lw a4,8(a5) - c0019afc: 8f6d and a4,a4,a1 - c0019afe: 2701 sext.w a4,a4 - c0019b00: 400005b7 lui a1,0x40000 - c0019b04: 00b70a63 beq a4,a1,c0019b18 <__JS_AtomToValue+0x88> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3155 + c0019cc6: c00005b7 lui a1,0xc0000 + c0019cca: 4798 lw a4,8(a5) + c0019ccc: 8f6d and a4,a4,a1 + c0019cce: 2701 sext.w a4,a4 + c0019cd0: 400005b7 lui a1,0x40000 + c0019cd4: 00b70a63 beq a4,a1,c0019ce8 <__JS_AtomToValue+0x88> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3163 } else if (force_string) { - c0019b08: ce19 beqz a2,c0019b26 <__JS_AtomToValue+0x96> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3156 + c0019cd8: ce19 beqz a2,c0019cf6 <__JS_AtomToValue+0x96> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3164 if (p->len == 0 && p->is_wide_char != 0) { - c0019b0a: 43d0 lw a2,4(a5) - c0019b0c: 80000737 lui a4,0x80000 - c0019b10: 00e61463 bne a2,a4,c0019b18 <__JS_AtomToValue+0x88> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3158 + c0019cda: 43d0 lw a2,4(a5) + c0019cdc: 80000737 lui a4,0x80000 + c0019ce0: 00e61463 bne a2,a4,c0019ce8 <__JS_AtomToValue+0x88> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3166 p = rt->atom_array[JS_ATOM_empty_string]; - c0019b14: 1786b783 ld a5,376(a3) + c0019ce4: 1786b783 ld a5,376(a3) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0019b18: 4398 lw a4,0(a5) - c0019b1a: e03e sd a5,0(sp) - c0019b1c: 2705 addiw a4,a4,1 - c0019b1e: c398 sw a4,0(a5) + c0019ce8: 4398 lw a4,0(a5) + c0019cea: e03e sd a5,0(sp) + c0019cec: 2705 addiw a4,a4,1 + c0019cee: c398 sw a4,0(a5) __JS_AtomToValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c0019b20: 57e5 li a5,-7 - c0019b22: e43e sd a5,8(sp) - c0019b24: bf71 j c0019ac0 <__JS_AtomToValue+0x30> + c0019cf0: 57e5 li a5,-7 + c0019cf2: e43e sd a5,8(sp) + c0019cf4: bf71 j c0019c90 <__JS_AtomToValue+0x30> JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0019b26: 4398 lw a4,0(a5) - c0019b28: e03e sd a5,0(sp) - c0019b2a: 2705 addiw a4,a4,1 - c0019b2c: c398 sw a4,0(a5) + c0019cf6: 4398 lw a4,0(a5) + c0019cf8: e03e sd a5,0(sp) + c0019cfa: 2705 addiw a4,a4,1 + c0019cfc: c398 sw a4,0(a5) __JS_AtomToValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c0019b2e: 57e1 li a5,-8 - c0019b30: bfcd j c0019b22 <__JS_AtomToValue+0x92> + c0019cfe: 57e1 li a5,-8 + c0019d00: bfcd j c0019cf2 <__JS_AtomToValue+0x92> -00000000c0019b32 : +00000000c0019d02 : JS_AtomToValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3177 { - c0019b32: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3170 + c0019d02: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3178 return __JS_AtomToValue(ctx, atom, FALSE); - c0019b34: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3171 + c0019d04: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3179 } - c0019b36: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3170 + c0019d06: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3178 return __JS_AtomToValue(ctx, atom, FALSE); - c0019b38: f59ff06f j c0019a90 <__JS_AtomToValue> + c0019d08: f59ff06f j c0019c60 <__JS_AtomToValue> -00000000c0019b3c : +00000000c0019d0c : JS_AtomToString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3182 { - c0019b3c: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3175 + c0019d0c: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3183 return __JS_AtomToValue(ctx, atom, TRUE); - c0019b3e: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3176 + c0019d0e: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3184 } - c0019b40: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3175 + c0019d10: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3183 return __JS_AtomToValue(ctx, atom, TRUE); - c0019b42: f4fff06f j c0019a90 <__JS_AtomToValue> + c0019d12: f4fff06f j c0019c60 <__JS_AtomToValue> -00000000c0019b46 : +00000000c0019d16 : JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9935 -{ - c0019b46: 7131 addi sp,sp,-192 - c0019b48: f526 sd s1,168(sp) - c0019b4a: fd06 sd ra,184(sp) - c0019b4c: f922 sd s0,176(sp) - c0019b4e: f14a sd s2,160(sp) - c0019b50: ed4e sd s3,152(sp) - c0019b52: e952 sd s4,144(sp) - c0019b54: e556 sd s5,136(sp) - c0019b56: e15a sd s6,128(sp) - c0019b58: fcde sd s7,120(sp) - c0019b5a: e82e sd a1,16(sp) - c0019b5c: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9943 +{ + c0019d16: 7131 addi sp,sp,-192 + c0019d18: f526 sd s1,168(sp) + c0019d1a: fd06 sd ra,184(sp) + c0019d1c: f922 sd s0,176(sp) + c0019d1e: f14a sd s2,160(sp) + c0019d20: ed4e sd s3,152(sp) + c0019d22: e952 sd s4,144(sp) + c0019d24: e556 sd s5,136(sp) + c0019d26: e15a sd s6,128(sp) + c0019d28: fcde sd s7,120(sp) + c0019d2a: e82e sd a1,16(sp) + c0019d2c: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9949 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0019b5e: 0006071b sext.w a4,a2 - c0019b62: 57fd li a5,-1 - c0019b64: 84b2 mv s1,a2 - c0019b66: 02f70163 beq a4,a5,c0019b88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9942 + c0019d2e: 0006071b sext.w a4,a2 + c0019d32: 57fd li a5,-1 + c0019d34: 84b2 mv s1,a2 + c0019d36: 02f70163 beq a4,a5,c0019d58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9950 return val; - c0019b6a: e8ae sd a1,80(sp) - c0019b6c: ecb2 sd a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10006 -} - c0019b6e: 70ea ld ra,184(sp) - c0019b70: 744a ld s0,176(sp) - c0019b72: 6546 ld a0,80(sp) - c0019b74: 65e6 ld a1,88(sp) - c0019b76: 74aa ld s1,168(sp) - c0019b78: 790a ld s2,160(sp) - c0019b7a: 69ea ld s3,152(sp) - c0019b7c: 6a4a ld s4,144(sp) - c0019b7e: 6aaa ld s5,136(sp) - c0019b80: 6b0a ld s6,128(sp) - c0019b82: 7be6 ld s7,120(sp) - c0019b84: 6129 addi sp,sp,192 - c0019b86: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9944 + c0019d3a: e8ae sd a1,80(sp) + c0019d3c: ecb2 sd a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10014 +} + c0019d3e: 70ea ld ra,184(sp) + c0019d40: 744a ld s0,176(sp) + c0019d42: 6546 ld a0,80(sp) + c0019d44: 65e6 ld a1,88(sp) + c0019d46: 74aa ld s1,168(sp) + c0019d48: 790a ld s2,160(sp) + c0019d4a: 69ea ld s3,152(sp) + c0019d4c: 6a4a ld s4,144(sp) + c0019d4e: 6aaa ld s5,136(sp) + c0019d50: 6b0a ld s6,128(sp) + c0019d52: 7be6 ld s7,120(sp) + c0019d54: 6129 addi sp,sp,192 + c0019d56: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9952 hint &= ~HINT_FORCE_ORDINARY; - c0019b88: fef6f993 andi s3,a3,-17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9945 + c0019d58: fef6f993 andi s3,a3,-17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9953 if (!force_ordinary) { - c0019b8c: 8ac1 andi a3,a3,16 - c0019b8e: 842a mv s0,a0 - c0019b90: e6cd bnez a3,c0019c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9946 + c0019d5c: 8ac1 andi a3,a3,16 + c0019d5e: 842a mv s0,a0 + c0019d60: e6cd bnez a3,c0019e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9954 method = JS_GetProperty(ctx, val, JS_ATOM_Symbol_toPrimitive); - c0019b92: 872e mv a4,a1 + c0019d62: 872e mv a4,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0019b94: 87b2 mv a5,a2 - c0019b96: 4801 li a6,0 - c0019b98: 0cb00693 li a3,203 - c0019b9c: f0ae sd a1,96(sp) - c0019b9e: f4b2 sd a2,104(sp) - c0019ba0: ca3f70ef jal ra,c0011842 - c0019ba4: f02a sd a0,32(sp) - c0019ba6: f42e sd a1,40(sp) + c0019d64: 87b2 mv a5,a2 + c0019d66: 4801 li a6,0 + c0019d68: 0cb00693 li a3,203 + c0019d6c: f0ae sd a1,96(sp) + c0019d6e: f4b2 sd a2,104(sp) + c0019d70: bc1f70ef jal ra,c0011930 + c0019d74: f02a sd a0,32(sp) + c0019d76: f42e sd a1,40(sp) JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9947 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9955 if (JS_IsException(method)) - c0019ba8: 0005871b sext.w a4,a1 - c0019bac: 4799 li a5,6 - c0019bae: 12f70263 beq a4,a5,c0019cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9951 (discriminator 1) + c0019d78: 0005871b sext.w a4,a1 + c0019d7c: 4799 li a5,6 + c0019d7e: 12f70263 beq a4,a5,c0019ea2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9959 (discriminator 1) if (!JS_IsUndefined(method) && !JS_IsNull(method)) { - c0019bb2: 35f9 addiw a1,a1,-2 - c0019bb4: 4785 li a5,1 - c0019bb6: 08b7f263 bgeu a5,a1,c0019c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9956 + c0019d82: 35f9 addiw a1,a1,-2 + c0019d84: 4785 li a5,1 + c0019d86: 08b7f263 bgeu a5,a1,c0019e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9964 atom = JS_ATOM_string; - c0019bba: 04900593 li a1,73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9954 + c0019d8a: 04900593 li a1,73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9962 switch(hint) { - c0019bbe: 00098763 beqz s3,c0019bcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9963 + c0019d8e: 00098763 beqz s3,c0019d9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9971 atom = JS_ATOM_default; - c0019bc2: 45d9 li a1,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9954 + c0019d92: 45d9 li a1,22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9962 switch(hint) { - c0019bc4: 00f99463 bne s3,a5,c0019bcc - c0019bc8: 04700593 li a1,71 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9966 + c0019d94: 00f99463 bne s3,a5,c0019d9c + c0019d98: 04700593 li a1,71 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9974 arg = JS_AtomToString(ctx, atom); - c0019bcc: 8522 mv a0,s0 - c0019bce: f6fff0ef jal ra,c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9967 + c0019d9c: 8522 mv a0,s0 + c0019d9e: f6fff0ef jal ra,c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9975 ret = JS_CallFree(ctx, method, val, 1, (JSValueConst *)&arg); - c0019bd2: 66c2 ld a3,16(sp) - c0019bd4: 6762 ld a4,24(sp) - c0019bd6: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9966 + c0019da2: 66c2 ld a3,16(sp) + c0019da4: 6762 ld a4,24(sp) + c0019da6: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9974 arg = JS_AtomToString(ctx, atom); - c0019bd8: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9967 + c0019da8: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9975 ret = JS_CallFree(ctx, method, val, 1, (JSValueConst *)&arg); - c0019bda: 7582 ld a1,32(sp) - c0019bdc: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9966 + c0019daa: 7582 ld a1,32(sp) + c0019dac: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9974 arg = JS_AtomToString(ctx, atom); - c0019bde: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9967 + c0019dae: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9975 ret = JS_CallFree(ctx, method, val, 1, (JSValueConst *)&arg); - c0019be0: 06010813 addi a6,sp,96 - c0019be4: 8522 mv a0,s0 - c0019be6: c27f70ef jal ra,c001180c - c0019bea: 892e mv s2,a1 - c0019bec: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9968 + c0019db0: 06010813 addi a6,sp,96 + c0019db4: 8522 mv a0,s0 + c0019db6: b45f70ef jal ra,c00118fa + c0019dba: 892e mv s2,a1 + c0019dbc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9976 JS_FreeValue(ctx, arg); - c0019bee: 7626 ld a2,104(sp) - c0019bf0: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9967 + c0019dbe: 7626 ld a2,104(sp) + c0019dc0: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9975 ret = JS_CallFree(ctx, method, val, 1, (JSValueConst *)&arg); - c0019bf2: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9968 + c0019dc2: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9976 JS_FreeValue(ctx, arg); - c0019bf4: 8522 mv a0,s0 - c0019bf6: f43ed0ef jal ra,c0007b38 + c0019dc4: 8522 mv a0,s0 + c0019dc6: e61ed0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0019bfa: 2901 sext.w s2,s2 + c0019dca: 2901 sext.w s2,s2 JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9969 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9977 if (JS_IsException(ret)) - c0019bfc: 4799 li a5,6 - c0019bfe: 0cf90a63 beq s2,a5,c0019cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9971 + c0019dcc: 4799 li a5,6 + c0019dce: 0cf90a63 beq s2,a5,c0019ea2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9979 JS_FreeValue(ctx, val); - c0019c02: 65c2 ld a1,16(sp) - c0019c04: 6662 ld a2,24(sp) - c0019c06: 8522 mv a0,s0 - c0019c08: f31ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9972 + c0019dd2: 65c2 ld a1,16(sp) + c0019dd4: 6662 ld a2,24(sp) + c0019dd6: 8522 mv a0,s0 + c0019dd8: e4fed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9980 if (JS_VALUE_GET_TAG(ret) != JS_TAG_OBJECT) - c0019c0c: 57fd li a5,-1 - c0019c0e: 00f90763 beq s2,a5,c0019c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9995 + c0019ddc: 57fd li a5,-1 + c0019dde: 00f90763 beq s2,a5,c0019dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10003 return ret; - c0019c12: 77c2 ld a5,48(sp) - c0019c14: e8be sd a5,80(sp) - c0019c16: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10005 + c0019de2: 77c2 ld a5,48(sp) + c0019de4: e8be sd a5,80(sp) + c0019de6: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10013 return JS_EXCEPTION; - c0019c18: ecbe sd a5,88(sp) - c0019c1a: bf91 j c0019b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9974 + c0019de8: ecbe sd a5,88(sp) + c0019dea: bf91 j c0019d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9982 JS_FreeValue(ctx, ret); - c0019c1c: 75c2 ld a1,48(sp) - c0019c1e: 7662 ld a2,56(sp) - c0019c20: 8522 mv a0,s0 - c0019c22: f17ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9975 + c0019dec: 75c2 ld a1,48(sp) + c0019dee: 7662 ld a2,56(sp) + c0019df0: 8522 mv a0,s0 + c0019df2: e35ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9983 return JS_ThrowTypeError(ctx, "toPrimitive"); - c0019c26: 00044597 auipc a1,0x44 - c0019c2a: 5da58593 addi a1,a1,1498 # c005e200 - c0019c2e: 8522 mv a0,s0 - c0019c30: fc6f90ef jal ra,c00133f6 - c0019c34: e8aa sd a0,80(sp) - c0019c36: ecae sd a1,88(sp) - c0019c38: bf1d j c0019b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9979 + c0019df6: 00044597 auipc a1,0x44 + c0019dfa: 66a58593 addi a1,a1,1642 # c005e460 + c0019dfe: 8522 mv a0,s0 + c0019e00: ee4f90ef jal ra,c00134e4 + c0019e04: e8aa sd a0,80(sp) + c0019e06: ecae sd a1,88(sp) + c0019e08: bf1d j c0019d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9987 hint = HINT_NUMBER; - c0019c3a: 013039b3 snez s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9980 + c0019e0a: 013039b3 snez s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9988 for(i = 0; i < 2; i++) { - c0019c3e: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9987 + c0019e0e: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9995 if (JS_IsException(method)) - c0019c40: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9993 + c0019e10: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10001 if (JS_VALUE_GET_TAG(ret) != JS_TAG_OBJECT) { - c0019c42: 5bfd li s7,-1 - c0019c44: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9982 + c0019e12: 5bfd li s7,-1 + c0019e14: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9990 method_name = JS_ATOM_toString; - c0019c46: 03800693 li a3,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9981 + c0019e16: 03800693 li a3,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9989 if ((i ^ hint) == 0) { - c0019c4a: 01498463 beq s3,s4,c0019c52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9984 + c0019e1a: 01498463 beq s3,s4,c0019e22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9992 method_name = JS_ATOM_valueOf; - c0019c4e: 03a00693 li a3,58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9986 + c0019e1e: 03a00693 li a3,58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9994 method = JS_GetProperty(ctx, val, method_name); - c0019c52: 6742 ld a4,16(sp) + c0019e22: 6742 ld a4,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0019c54: 87a6 mv a5,s1 - c0019c56: 8626 mv a2,s1 - c0019c58: 4801 li a6,0 - c0019c5a: 85ba mv a1,a4 - c0019c5c: 8522 mv a0,s0 - c0019c5e: ec26 sd s1,24(sp) - c0019c60: e8ba sd a4,80(sp) - c0019c62: eca6 sd s1,88(sp) - c0019c64: bdff70ef jal ra,c0011842 - c0019c68: f0aa sd a0,96(sp) - c0019c6a: f4ae sd a1,104(sp) + c0019e24: 87a6 mv a5,s1 + c0019e26: 8626 mv a2,s1 + c0019e28: 4801 li a6,0 + c0019e2a: 85ba mv a1,a4 + c0019e2c: 8522 mv a0,s0 + c0019e2e: ec26 sd s1,24(sp) + c0019e30: e8ba sd a4,80(sp) + c0019e32: eca6 sd s1,88(sp) + c0019e34: afdf70ef jal ra,c0011930 + c0019e38: f0aa sd a0,96(sp) + c0019e3a: f4ae sd a1,104(sp) JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9987 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9995 if (JS_IsException(method)) - c0019c6c: 0005879b sext.w a5,a1 + c0019e3c: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0019c70: 892a mv s2,a0 - c0019c72: 862e mv a2,a1 + c0019e40: 892a mv s2,a0 + c0019e42: 862e mv a2,a1 JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9987 - c0019c74: 05578f63 beq a5,s5,c0019cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9989 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9995 + c0019e44: 05578f63 beq a5,s5,c0019ea2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9997 if (JS_IsFunction(ctx, method)) { - c0019c78: 85aa mv a1,a0 - c0019c7a: 8522 mv a0,s0 - c0019c7c: e432 sd a2,8(sp) - c0019c7e: a5ff00ef jal ra,c000a6dc - c0019c82: 6622 ld a2,8(sp) - c0019c84: cd39 beqz a0,c0019ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9990 + c0019e48: 85aa mv a1,a0 + c0019e4a: 8522 mv a0,s0 + c0019e4c: e432 sd a2,8(sp) + c0019e4e: 97df00ef jal ra,c000a7ca + c0019e52: 6622 ld a2,8(sp) + c0019e54: cd39 beqz a0,c0019eb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9998 ret = JS_CallFree(ctx, method, val, 0, NULL); - c0019c86: 66c2 ld a3,16(sp) - c0019c88: 6762 ld a4,24(sp) - c0019c8a: 4781 li a5,0 - c0019c8c: 4801 li a6,0 - c0019c8e: 85ca mv a1,s2 - c0019c90: 8522 mv a0,s0 - c0019c92: b7bf70ef jal ra,c001180c - c0019c96: f82a sd a0,48(sp) - c0019c98: fc2e sd a1,56(sp) + c0019e56: 66c2 ld a3,16(sp) + c0019e58: 6762 ld a4,24(sp) + c0019e5a: 4781 li a5,0 + c0019e5c: 4801 li a6,0 + c0019e5e: 85ca mv a1,s2 + c0019e60: 8522 mv a0,s0 + c0019e62: a99f70ef jal ra,c00118fa + c0019e66: f82a sd a0,48(sp) + c0019e68: fc2e sd a1,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0019c9a: 0005879b sext.w a5,a1 + c0019e6a: 0005879b sext.w a5,a1 JS_ToPrimitiveFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9990 - c0019c9e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9991 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9998 + c0019e6e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9999 if (JS_IsException(ret)) - c0019ca0: 03578963 beq a5,s5,c0019cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9993 + c0019e70: 03578963 beq a5,s5,c0019ea2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10001 if (JS_VALUE_GET_TAG(ret) != JS_TAG_OBJECT) { - c0019ca4: 01778a63 beq a5,s7,c0019cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9994 + c0019e74: 01778a63 beq a5,s7,c0019e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10002 JS_FreeValue(ctx, val); - c0019ca8: 65c2 ld a1,16(sp) - c0019caa: 6662 ld a2,24(sp) - c0019cac: 8522 mv a0,s0 - c0019cae: e8bed0ef jal ra,c0007b38 - c0019cb2: b785 j c0019c12 - c0019cb4: 4a05 li s4,1 - c0019cb6: bf41 j c0019c46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9997 + c0019e78: 65c2 ld a1,16(sp) + c0019e7a: 6662 ld a2,24(sp) + c0019e7c: 8522 mv a0,s0 + c0019e7e: da9ed0ef jal ra,c0007c26 + c0019e82: b785 j c0019de2 + c0019e84: 4a05 li s4,1 + c0019e86: bf41 j c0019e16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10005 JS_FreeValue(ctx, ret); - c0019cb8: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9999 + c0019e88: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10007 JS_FreeValue(ctx, method); - c0019cba: 8522 mv a0,s0 - c0019cbc: e7ded0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9980 + c0019e8a: 8522 mv a0,s0 + c0019e8c: d9bed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9988 for(i = 0; i < 2; i++) { - c0019cc0: ff6a1ae3 bne s4,s6,c0019cb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10002 + c0019e90: ff6a1ae3 bne s4,s6,c0019e84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10010 JS_ThrowTypeError(ctx, "toPrimitive"); - c0019cc4: 00044597 auipc a1,0x44 - c0019cc8: 53c58593 addi a1,a1,1340 # c005e200 - c0019ccc: 8522 mv a0,s0 - c0019cce: f28f90ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10004 + c0019e94: 00044597 auipc a1,0x44 + c0019e98: 5cc58593 addi a1,a1,1484 # c005e460 + c0019e9c: 8522 mv a0,s0 + c0019e9e: e46f90ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10012 JS_FreeValue(ctx, val); - c0019cd2: 65c2 ld a1,16(sp) - c0019cd4: 8626 mv a2,s1 - c0019cd6: 8522 mv a0,s0 - c0019cd8: e61ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10005 + c0019ea2: 65c2 ld a1,16(sp) + c0019ea4: 8626 mv a2,s1 + c0019ea6: 8522 mv a0,s0 + c0019ea8: d7fed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10013 return JS_EXCEPTION; - c0019cdc: 4799 li a5,6 - c0019cde: e882 sd zero,80(sp) - c0019ce0: bf25 j c0019c18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9999 + c0019eac: 4799 li a5,6 + c0019eae: e882 sd zero,80(sp) + c0019eb0: bf25 j c0019de8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10007 JS_FreeValue(ctx, method); - c0019ce2: 85ca mv a1,s2 - c0019ce4: bfd9 j c0019cba + c0019eb2: 85ca mv a1,s2 + c0019eb4: bfd9 j c0019e8a -00000000c0019ce6 : +00000000c0019eb6 : JS_ToPrimitive(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10017 { - c0019ce6: 715d addi sp,sp,-80 - c0019ce8: e0a2 sd s0,64(sp) - c0019cea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10010 + c0019eb6: 715d addi sp,sp,-80 + c0019eb8: e0a2 sd s0,64(sp) + c0019eba: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10018 return JS_ToPrimitiveFree(ctx, JS_DupValue(ctx, val), hint); - c0019cec: 852e mv a0,a1 - c0019cee: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10009 + c0019ebc: 852e mv a0,a1 + c0019ebe: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10017 { - c0019cf0: e486 sd ra,72(sp) - c0019cf2: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10010 + c0019ec0: e486 sd ra,72(sp) + c0019ec2: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10018 return JS_ToPrimitiveFree(ctx, JS_DupValue(ctx, val), hint); - c0019cf4: 97bec0ef jal ra,c000666e - c0019cf8: 862e mv a2,a1 - c0019cfa: 85aa mv a1,a0 - c0019cfc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10011 + c0019ec4: 899ec0ef jal ra,c000675c + c0019ec8: 862e mv a2,a1 + c0019eca: 85aa mv a1,a0 + c0019ecc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10019 } - c0019cfe: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10010 + c0019ece: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10018 return JS_ToPrimitiveFree(ctx, JS_DupValue(ctx, val), hint); - c0019d00: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10011 + c0019ed0: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10019 } - c0019d02: 60a6 ld ra,72(sp) - c0019d04: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10010 + c0019ed2: 60a6 ld ra,72(sp) + c0019ed4: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10018 return JS_ToPrimitiveFree(ctx, JS_DupValue(ctx, val), hint); - c0019d06: e41ff06f j c0019b46 + c0019ed6: e41ff06f j c0019d16 -00000000c0019d0a : +00000000c0019eda : string_buffer_end(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3897 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3905 { - c0019d0a: 1101 addi sp,sp,-32 - c0019d0c: ec06 sd ra,24(sp) - c0019d0e: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3900 + c0019eda: 1101 addi sp,sp,-32 + c0019edc: ec06 sd ra,24(sp) + c0019ede: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3908 if (s->error_status) - c0019d10: 4d5c lw a5,28(a0) - c0019d12: cb91 beqz a5,c0019d26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3901 + c0019ee0: 4d5c lw a5,28(a0) + c0019ee2: cb91 beqz a5,c0019ef6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3909 return JS_EXCEPTION; - c0019d14: e002 sd zero,0(sp) - c0019d16: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3926 + c0019ee4: e002 sd zero,0(sp) + c0019ee6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3934 } - c0019d18: 60e2 ld ra,24(sp) - c0019d1a: 6442 ld s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3925 + c0019ee8: 60e2 ld ra,24(sp) + c0019eea: 6442 ld s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3933 return JS_MKPTR(JS_TAG_STRING, str); - c0019d1c: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3926 -} - c0019d1e: 6502 ld a0,0(sp) - c0019d20: 65a2 ld a1,8(sp) - c0019d22: 6105 addi sp,sp,32 - c0019d24: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3902 + c0019eec: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3934 +} + c0019eee: 6502 ld a0,0(sp) + c0019ef0: 65a2 ld a1,8(sp) + c0019ef2: 6105 addi sp,sp,32 + c0019ef4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3910 if (s->len == 0) { - c0019d26: 4910 lw a2,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3899 + c0019ef6: 4910 lw a2,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3907 str = s->str; - c0019d28: 650c ld a1,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3902 + c0019ef8: 650c ld a1,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3910 if (s->len == 0) { - c0019d2a: 842a mv s0,a0 - c0019d2c: ee11 bnez a2,c0019d48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3903 + c0019efa: 842a mv s0,a0 + c0019efc: ee11 bnez a2,c0019f18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3911 js_free(s->ctx, str); - c0019d2e: 6108 ld a0,0(a0) - c0019d30: 90aed0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3904 + c0019efe: 6108 ld a0,0(a0) + c0019f00: 828ed0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3912 s->str = NULL; - c0019d34: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3905 + c0019f04: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3913 return JS_AtomToString(s->ctx, JS_ATOM_empty_string); - c0019d38: 6008 ld a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3926 + c0019f08: 6008 ld a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3934 } - c0019d3a: 6442 ld s0,16(sp) - c0019d3c: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3905 + c0019f0a: 6442 ld s0,16(sp) + c0019f0c: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3913 return JS_AtomToString(s->ctx, JS_ATOM_empty_string); - c0019d3e: 02f00593 li a1,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3926 + c0019f0e: 02f00593 li a1,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3934 } - c0019d42: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3905 + c0019f12: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3913 return JS_AtomToString(s->ctx, JS_ATOM_empty_string); - c0019d44: df9ff06f j c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3907 + c0019f14: df9ff06f j c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3915 if (s->len < s->size) { - c0019d48: 495c lw a5,20(a0) - c0019d4a: 00f65e63 bge a2,a5,c0019d66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3912 + c0019f18: 495c lw a5,20(a0) + c0019f1a: 00f65e63 bge a2,a5,c0019f36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3920 (s->len << s->is_wide_char) + 1 - s->is_wide_char); - c0019d4e: 4d1c lw a5,24(a0) - c0019d50: 00f6163b sllw a2,a2,a5 - c0019d54: 8e1d sub a2,a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3911 + c0019f1e: 4d1c lw a5,24(a0) + c0019f20: 00f6163b sllw a2,a2,a5 + c0019f24: 8e1d sub a2,a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3919 str = js_realloc_rt(s->ctx->rt, str, sizeof(JSString) + - c0019d56: 611c ld a5,0(a0) - c0019d58: 0645 addi a2,a2,17 - c0019d5a: 6f88 ld a0,24(a5) - c0019d5c: b14ea0ef jal ra,c0004070 - c0019d60: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3913 + c0019f26: 611c ld a5,0(a0) + c0019f28: 0645 addi a2,a2,17 + c0019f2a: 6f88 ld a0,24(a5) + c0019f2c: 944ea0ef jal ra,c0004070 + c0019f30: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3921 if (str == NULL) - c0019d62: e111 bnez a0,c0019d66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3914 + c0019f32: e111 bnez a0,c0019f36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3922 str = s->str; - c0019d64: 640c ld a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3917 + c0019f34: 640c ld a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3925 if (!s->is_wide_char) - c0019d66: 4c1c lw a5,24(s0) - c0019d68: e789 bnez a5,c0019d72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3918 + c0019f36: 4c1c lw a5,24(s0) + c0019f38: e789 bnez a5,c0019f42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3926 str->u.str8[s->len] = 0; - c0019d6a: 481c lw a5,16(s0) - c0019d6c: 97ae add a5,a5,a1 - c0019d6e: 00078823 sb zero,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3922 + c0019f3a: 481c lw a5,16(s0) + c0019f3c: 97ae add a5,a5,a1 + c0019f3e: 00078823 sb zero,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3930 str->is_wide_char = s->is_wide_char; - c0019d72: 4c1c lw a5,24(s0) - c0019d74: 80000737 lui a4,0x80000 - c0019d78: fff74713 not a4,a4 - c0019d7c: 01f7969b slliw a3,a5,0x1f - c0019d80: 41dc lw a5,4(a1) - c0019d82: 8ff9 and a5,a5,a4 - c0019d84: 8fd5 or a5,a5,a3 - c0019d86: c1dc sw a5,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3923 + c0019f42: 4c1c lw a5,24(s0) + c0019f44: 80000737 lui a4,0x80000 + c0019f48: fff74713 not a4,a4 + c0019f4c: 01f7969b slliw a3,a5,0x1f + c0019f50: 41dc lw a5,4(a1) + c0019f52: 8ff9 and a5,a5,a4 + c0019f54: 8fd5 or a5,a5,a3 + c0019f56: c1dc sw a5,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3931 str->len = s->len; - c0019d88: 4814 lw a3,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3925 + c0019f58: 4814 lw a3,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3933 return JS_MKPTR(JS_TAG_STRING, str); - c0019d8a: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3923 + c0019f5a: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3931 str->len = s->len; - c0019d8c: 8f75 and a4,a4,a3 - c0019d8e: 800006b7 lui a3,0x80000 - c0019d92: 8ff5 and a5,a5,a3 - c0019d94: 8fd9 or a5,a5,a4 - c0019d96: c1dc sw a5,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3924 + c0019f5c: 8f75 and a4,a4,a3 + c0019f5e: 800006b7 lui a3,0x80000 + c0019f62: 8ff5 and a5,a5,a3 + c0019f64: 8fd9 or a5,a5,a4 + c0019f66: c1dc sw a5,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3932 s->str = NULL; - c0019d98: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3925 + c0019f68: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3933 return JS_MKPTR(JS_TAG_STRING, str); - c0019d9c: 57e5 li a5,-7 - c0019d9e: bfad j c0019d18 + c0019f6c: 57e5 li a5,-7 + c0019f6e: bfad j c0019ee8 -00000000c0019da0 : +00000000c0019f70 : JS_NewAtomString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4026 -{ - c0019da0: 7139 addi sp,sp,-64 - c0019da2: f822 sd s0,48(sp) - c0019da4: f426 sd s1,40(sp) - c0019da6: fc06 sd ra,56(sp) - c0019da8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4027 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4034 +{ + c0019f70: 7139 addi sp,sp,-64 + c0019f72: f822 sd s0,48(sp) + c0019f74: f426 sd s1,40(sp) + c0019f76: fc06 sd ra,56(sp) + c0019f78: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4035 JSAtom atom = JS_NewAtom(ctx, str); - c0019daa: e96ff0ef jal ra,c0019440 - c0019dae: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4028 + c0019f7a: e96ff0ef jal ra,c0019610 + c0019f7e: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4036 if (atom == JS_ATOM_NULL) - c0019db2: e819 bnez s0,c0019dc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4029 + c0019f82: e819 bnez s0,c0019f98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4037 return JS_EXCEPTION; - c0019db4: e802 sd zero,16(sp) - c0019db6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4033 + c0019f84: e802 sd zero,16(sp) + c0019f86: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4041 } - c0019db8: 70e2 ld ra,56(sp) - c0019dba: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4032 + c0019f88: 70e2 ld ra,56(sp) + c0019f8a: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4040 return val; - c0019dbc: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4033 -} - c0019dbe: 6542 ld a0,16(sp) - c0019dc0: 65e2 ld a1,24(sp) - c0019dc2: 74a2 ld s1,40(sp) - c0019dc4: 6121 addi sp,sp,64 - c0019dc6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4030 + c0019f8c: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4041 +} + c0019f8e: 6542 ld a0,16(sp) + c0019f90: 65e2 ld a1,24(sp) + c0019f92: 74a2 ld s1,40(sp) + c0019f94: 6121 addi sp,sp,64 + c0019f96: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4038 JSValue val = JS_AtomToString(ctx, atom); - c0019dc8: 85a2 mv a1,s0 - c0019dca: 8526 mv a0,s1 - c0019dcc: d71ff0ef jal ra,c0019b3c - c0019dd0: e02a sd a0,0(sp) - c0019dd2: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4031 + c0019f98: 85a2 mv a1,s0 + c0019f9a: 8526 mv a0,s1 + c0019f9c: d71ff0ef jal ra,c0019d0c + c0019fa0: e02a sd a0,0(sp) + c0019fa2: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4039 JS_FreeAtom(ctx, atom); - c0019dd4: 8526 mv a0,s1 - c0019dd6: 85a2 mv a1,s0 - c0019dd8: f34ed0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4032 + c0019fa4: 8526 mv a0,s1 + c0019fa6: 85a2 mv a1,s0 + c0019fa8: e52ed0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4040 return val; - c0019ddc: 6782 ld a5,0(sp) - c0019dde: e83e sd a5,16(sp) - c0019de0: 67a2 ld a5,8(sp) - c0019de2: bfd9 j c0019db8 + c0019fac: 6782 ld a5,0(sp) + c0019fae: e83e sd a5,16(sp) + c0019fb0: 67a2 ld a5,8(sp) + c0019fb2: bfd9 j c0019f88 -00000000c0019de4 : +00000000c0019fb4 : exported_names_cmp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27870 -{ - c0019de4: 7139 addi sp,sp,-64 - c0019de6: fc06 sd ra,56(sp) - c0019de8: f822 sd s0,48(sp) - c0019dea: f426 sd s1,40(sp) - c0019dec: f04a sd s2,32(sp) - c0019dee: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27878 - str1 = JS_AtomToString(ctx, me1->export_name); - c0019df0: 410c lw a1,0(a0) - c0019df2: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27870 { - c0019df4: 8432 mv s0,a2 + c0019fb4: 7139 addi sp,sp,-64 + c0019fb6: fc06 sd ra,56(sp) + c0019fb8: f822 sd s0,48(sp) + c0019fba: f426 sd s1,40(sp) + c0019fbc: f04a sd s2,32(sp) + c0019fbe: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27886 + str1 = JS_AtomToString(ctx, me1->export_name); + c0019fc0: 410c lw a1,0(a0) + c0019fc2: 8532 mv a0,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27878 +{ + c0019fc4: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27886 str1 = JS_AtomToString(ctx, me1->export_name); - c0019df6: d47ff0ef jal ra,c0019b3c - c0019dfa: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27879 + c0019fc6: d47ff0ef jal ra,c0019d0c + c0019fca: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27887 str2 = JS_AtomToString(ctx, me2->export_name); - c0019dfc: 408c lw a1,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27878 + c0019fcc: 408c lw a1,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27886 str1 = JS_AtomToString(ctx, me1->export_name); - c0019dfe: e02a sd a0,0(sp) - c0019e00: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27879 + c0019fce: e02a sd a0,0(sp) + c0019fd0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27887 str2 = JS_AtomToString(ctx, me2->export_name); - c0019e02: 8522 mv a0,s0 - c0019e04: d39ff0ef jal ra,c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27880 + c0019fd2: 8522 mv a0,s0 + c0019fd4: d39ff0ef jal ra,c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 if (JS_IsException(str1) || JS_IsException(str2)) { - c0019e08: 4722 lw a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27879 + c0019fd8: 4722 lw a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27887 str2 = JS_AtomToString(ctx, me2->export_name); - c0019e0a: e82a sd a0,16(sp) - c0019e0c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27880 + c0019fda: e82a sd a0,16(sp) + c0019fdc: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 if (JS_IsException(str1) || JS_IsException(str2)) { - c0019e0e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27882 + c0019fde: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27890 ret = 0; - c0019e10: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27880 + c0019fe0: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 if (JS_IsException(str1) || JS_IsException(str2)) { - c0019e12: 00f70b63 beq a4,a5,c0019e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27880 (discriminator 1) - c0019e16: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27882 (discriminator 1) + c0019fe2: 00f70b63 beq a4,a5,c0019ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 (discriminator 1) + c0019fe6: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27890 (discriminator 1) ret = 0; - c0019e18: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27880 (discriminator 1) + c0019fe8: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 (discriminator 1) if (JS_IsException(str1) || JS_IsException(str2)) { - c0019e1a: 00f58763 beq a1,a5,c0019e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27884 + c0019fea: 00f58763 beq a1,a5,c0019ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27892 ret = js_string_compare(ctx, JS_VALUE_GET_STRING(str1), - c0019e1e: 85aa mv a1,a0 - c0019e20: 854a mv a0,s2 - c0019e22: c8bec0ef jal ra,c0006aac - c0019e26: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27887 + c0019fee: 85aa mv a1,a0 + c0019ff0: 854a mv a0,s2 + c0019ff2: ba9ec0ef jal ra,c0006b9a + c0019ff6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27895 JS_FreeValue(ctx, str1); - c0019e28: 6582 ld a1,0(sp) - c0019e2a: 6622 ld a2,8(sp) - c0019e2c: 8522 mv a0,s0 - c0019e2e: d0bed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27888 + c0019ff8: 6582 ld a1,0(sp) + c0019ffa: 6622 ld a2,8(sp) + c0019ffc: 8522 mv a0,s0 + c0019ffe: c29ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27896 JS_FreeValue(ctx, str2); - c0019e32: 65c2 ld a1,16(sp) - c0019e34: 6662 ld a2,24(sp) - c0019e36: 8522 mv a0,s0 - c0019e38: d01ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27890 -} - c0019e3c: 70e2 ld ra,56(sp) - c0019e3e: 7442 ld s0,48(sp) - c0019e40: 7902 ld s2,32(sp) - c0019e42: 8526 mv a0,s1 - c0019e44: 74a2 ld s1,40(sp) - c0019e46: 6121 addi sp,sp,64 - c0019e48: 8082 ret - -00000000c0019e4a : + c001a002: 65c2 ld a1,16(sp) + c001a004: 6662 ld a2,24(sp) + c001a006: 8522 mv a0,s0 + c001a008: c1fed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27898 +} + c001a00c: 70e2 ld ra,56(sp) + c001a00e: 7442 ld s0,48(sp) + c001a010: 7902 ld s2,32(sp) + c001a012: 8526 mv a0,s1 + c001a014: 74a2 ld s1,40(sp) + c001a016: 6121 addi sp,sp,64 + c001a018: 8082 ret + +00000000c001a01a : js_symbol_get_description(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46814 -{ - c0019e4a: 711d addi sp,sp,-96 - c0019e4c: e8a2 sd s0,80(sp) - c0019e4e: ec86 sd ra,88(sp) - c0019e50: e4a6 sd s1,72(sp) - c0019e52: e0ca sd s2,64(sp) - c0019e54: 842a mv s0,a0 - c0019e56: e02e sd a1,0(sp) - c0019e58: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46822 +{ + c001a01a: 711d addi sp,sp,-96 + c001a01c: e8a2 sd s0,80(sp) + c001a01e: ec86 sd ra,88(sp) + c001a020: e4a6 sd s1,72(sp) + c001a022: e0ca sd s2,64(sp) + c001a024: 842a mv s0,a0 + c001a026: e02e sd a1,0(sp) + c001a028: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46826 val = js_thisSymbolValue(ctx, this_val); - c0019e5a: 822fa0ef jal ra,c0013e7c - c0019e5e: e82a sd a0,16(sp) - c0019e60: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46819 + c001a02a: f41f90ef jal ra,c0013f6a + c001a02e: e82a sd a0,16(sp) + c001a030: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46827 if (JS_IsException(val)) - c0019e62: 0005871b sext.w a4,a1 - c0019e66: 4799 li a5,6 - c0019e68: 00f71c63 bne a4,a5,c0019e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46820 + c001a032: 0005871b sext.w a4,a1 + c001a036: 4799 li a5,6 + c001a038: 00f71c63 bne a4,a5,c001a050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46828 return val; - c0019e6c: f82a sd a0,48(sp) - c0019e6e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46829 -} - c0019e70: 60e6 ld ra,88(sp) - c0019e72: 6446 ld s0,80(sp) - c0019e74: 7542 ld a0,48(sp) - c0019e76: 75e2 ld a1,56(sp) - c0019e78: 64a6 ld s1,72(sp) - c0019e7a: 6906 ld s2,64(sp) - c0019e7c: 6125 addi sp,sp,96 - c0019e7e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46822 + c001a03c: f82a sd a0,48(sp) + c001a03e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46837 +} + c001a040: 60e6 ld ra,88(sp) + c001a042: 6446 ld s0,80(sp) + c001a044: 7542 ld a0,48(sp) + c001a046: 75e2 ld a1,56(sp) + c001a048: 64a6 ld s1,72(sp) + c001a04a: 6906 ld s2,64(sp) + c001a04c: 6125 addi sp,sp,96 + c001a04e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46830 if (p->len == 0 && p->is_wide_char != 0) { - c0019e80: 4158 lw a4,4(a0) - c0019e82: 800007b7 lui a5,0x80000 - c0019e86: 02f70563 beq a4,a5,c0019eb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46825 + c001a050: 4158 lw a4,4(a0) + c001a052: 800007b7 lui a5,0x80000 + c001a056: 02f70563 beq a4,a5,c001a080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46833 ret = JS_AtomToString(ctx, js_get_atom_index(ctx->rt, p)); - c0019e8a: 85aa mv a1,a0 - c0019e8c: 6c08 ld a0,24(s0) - c0019e8e: b43eb0ef jal ra,c00059d0 - c0019e92: 0005059b sext.w a1,a0 - c0019e96: 8522 mv a0,s0 - c0019e98: ca5ff0ef jal ra,c0019b3c - c0019e9c: 892a mv s2,a0 - c0019e9e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46827 + c001a05a: 85aa mv a1,a0 + c001a05c: 6c08 ld a0,24(s0) + c001a05e: a61eb0ef jal ra,c0005abe + c001a062: 0005059b sext.w a1,a0 + c001a066: 8522 mv a0,s0 + c001a068: ca5ff0ef jal ra,c0019d0c + c001a06c: 892a mv s2,a0 + c001a06e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46835 JS_FreeValue(ctx, val); - c0019ea0: 65c2 ld a1,16(sp) - c0019ea2: 6662 ld a2,24(sp) - c0019ea4: 8522 mv a0,s0 - c0019ea6: c93ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46828 + c001a070: 65c2 ld a1,16(sp) + c001a072: 6662 ld a2,24(sp) + c001a074: 8522 mv a0,s0 + c001a076: bb1ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46836 return ret; - c0019eaa: f84a sd s2,48(sp) - c0019eac: fc26 sd s1,56(sp) - c0019eae: b7c9 j c0019e70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46823 + c001a07a: f84a sd s2,48(sp) + c001a07c: fc26 sd s1,56(sp) + c001a07e: b7c9 j c001a040 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46831 ret = JS_UNDEFINED; - c0019eb0: 448d li s1,3 - c0019eb2: 4901 li s2,0 - c0019eb4: b7f5 j c0019ea0 + c001a080: 448d li s1,3 + c001a082: 4901 li s2,0 + c001a084: b7f5 j c001a070 -00000000c0019eb6 : +00000000c001a086 : js_boolean_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41214 { - c0019eb6: 7139 addi sp,sp,-64 - c0019eb8: f822 sd s0,48(sp) - c0019eba: fc06 sd ra,56(sp) - c0019ebc: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41207 + c001a086: 7139 addi sp,sp,-64 + c001a088: f822 sd s0,48(sp) + c001a08a: fc06 sd ra,56(sp) + c001a08c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41215 JSValue val = js_thisBooleanValue(ctx, this_val); - c0019ebe: 85afa0ef jal ra,c0013f18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41208 + c001a08e: f79f90ef jal ra,c0014006 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41216 if (JS_IsException(val)) - c0019ec2: 0005871b sext.w a4,a1 - c0019ec6: 4699 li a3,6 - c0019ec8: 00d70d63 beq a4,a3,c0019ee2 - c0019ecc: 0005079b sext.w a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 + c001a092: 0005871b sext.w a4,a1 + c001a096: 4699 li a3,6 + c001a098: 00d70d63 beq a4,a3,c001a0b2 + c001a09c: 0005079b sext.w a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41218 return JS_AtomToString(ctx, JS_VALUE_GET_BOOL(val) ? - c0019ed0: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41212 + c001a0a0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41220 } - c0019ed2: 7442 ld s0,48(sp) - c0019ed4: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 + c001a0a2: 7442 ld s0,48(sp) + c001a0a4: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41218 return JS_AtomToString(ctx, JS_VALUE_GET_BOOL(val) ? - c0019ed6: 00f035b3 snez a1,a5 - c0019eda: 0589 addi a1,a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41212 + c001a0a6: 00f035b3 snez a1,a5 + c001a0aa: 0589 addi a1,a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41220 } - c0019edc: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41210 + c001a0ac: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41218 return JS_AtomToString(ctx, JS_VALUE_GET_BOOL(val) ? - c0019ede: c5fff06f j c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41212 + c001a0ae: c5fff06f j c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41220 } - c0019ee2: 70e2 ld ra,56(sp) - c0019ee4: 7442 ld s0,48(sp) - c0019ee6: 6121 addi sp,sp,64 - c0019ee8: 8082 ret + c001a0b2: 70e2 ld ra,56(sp) + c001a0b4: 7442 ld s0,48(sp) + c001a0b6: 6121 addi sp,sp,64 + c001a0b8: 8082 ret -00000000c0019eea : +00000000c001a0ba : js_function_proto_fileName(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14771 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14779 { - c0019eea: 7179 addi sp,sp,-48 - c0019eec: f022 sd s0,32(sp) - c0019eee: e02e sd a1,0(sp) - c0019ef0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14772 + c001a0ba: 7179 addi sp,sp,-48 + c001a0bc: f022 sd s0,32(sp) + c001a0be: e02e sd a1,0(sp) + c001a0c0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14780 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c0019ef2: 852e mv a0,a1 - c0019ef4: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14771 + c001a0c2: 852e mv a0,a1 + c001a0c4: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14779 { - c0019ef6: f406 sd ra,40(sp) - c0019ef8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14772 + c001a0c6: f406 sd ra,40(sp) + c001a0c8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14780 JSFunctionBytecode *b = JS_GetFunctionBytecode(this_val); - c0019efa: 87deb0ef jal ra,c0005776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14773 + c001a0ca: f9aeb0ef jal ra,c0005864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14781 if (b && b->has_debug) { - c0019efe: cd01 beqz a0,c0019f16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14773 (discriminator 1) - c0019f00: 01a54783 lbu a5,26(a0) - c0019f04: 8b91 andi a5,a5,4 - c0019f06: cb81 beqz a5,c0019f16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14774 + c001a0ce: cd01 beqz a0,c001a0e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14781 (discriminator 1) + c001a0d0: 01a54783 lbu a5,26(a0) + c001a0d4: 8b91 andi a5,a5,4 + c001a0d6: cb81 beqz a5,c001a0e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14782 return JS_AtomToString(ctx, b->debug.filename); - c0019f08: 512c lw a1,96(a0) - c0019f0a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14777 -} - c0019f0c: 7402 ld s0,32(sp) - c0019f0e: 70a2 ld ra,40(sp) - c0019f10: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14774 + c001a0d8: 512c lw a1,96(a0) + c001a0da: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14785 +} + c001a0dc: 7402 ld s0,32(sp) + c001a0de: 70a2 ld ra,40(sp) + c001a0e0: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14782 return JS_AtomToString(ctx, b->debug.filename); - c0019f12: c2bff06f j c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14777 + c001a0e2: c2bff06f j c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14785 } - c0019f16: 70a2 ld ra,40(sp) - c0019f18: 7402 ld s0,32(sp) - c0019f1a: 4501 li a0,0 - c0019f1c: 458d li a1,3 - c0019f1e: 6145 addi sp,sp,48 - c0019f20: 8082 ret + c001a0e6: 70a2 ld ra,40(sp) + c001a0e8: 7402 ld s0,32(sp) + c001a0ea: 4501 li a0,0 + c001a0ec: 458d li a1,3 + c001a0ee: 6145 addi sp,sp,48 + c001a0f0: 8082 ret -00000000c0019f22 : +00000000c001a0f2 : js_object___getClass(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38005 -{ - c0019f22: 7139 addi sp,sp,-64 - c0019f24: f426 sd s1,40(sp) - c0019f26: fc06 sd ra,56(sp) - c0019f28: f822 sd s0,48(sp) - c0019f2a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38013 +{ + c001a0f2: 7139 addi sp,sp,-64 + c001a0f4: f426 sd s1,40(sp) + c001a0f6: fc06 sd ra,56(sp) + c001a0f8: f822 sd s0,48(sp) + c001a0fa: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38019 tag = JS_VALUE_GET_NORM_TAG(argv[0]); - c0019f2c: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38005 + c001a0fc: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38013 { - c0019f2e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38012 + c001a0fe: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38020 if (tag == JS_TAG_OBJECT) { - c0019f30: 57fd li a5,-1 - c0019f32: 0006069b sext.w a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38005 + c001a100: 57fd li a5,-1 + c001a102: 0006069b sext.w a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38013 { - c0019f36: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38019 + c001a106: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38027 atom = JS_ATOM_empty_string; - c0019f38: 02f00593 li a1,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38012 + c001a108: 02f00593 li a1,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38020 if (tag == JS_TAG_OBJECT) { - c0019f3c: 02f69563 bne a3,a5,c0019f66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38014 + c001a10c: 02f69563 bne a3,a5,c001a136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38022 class_id = p->class_id; - c0019f40: 630c ld a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38015 + c001a110: 630c ld a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38023 if (class_id == JS_CLASS_PROXY && JS_IsFunction(ctx, argv[0])) - c0019f42: 02c00793 li a5,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38014 + c001a112: 02c00793 li a5,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38022 class_id = p->class_id; - c0019f46: 0065d403 lhu s0,6(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38015 + c001a116: 0065d403 lhu s0,6(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38023 if (class_id == JS_CLASS_PROXY && JS_IsFunction(ctx, argv[0])) - c0019f4a: 00f41663 bne s0,a5,c0019f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38015 (discriminator 1) - c0019f4e: f8ef00ef jal ra,c000a6dc - c0019f52: c111 beqz a0,c0019f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38016 + c001a11a: 00f41663 bne s0,a5,c001a126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38023 (discriminator 1) + c001a11e: eacf00ef jal ra,c000a7ca + c001a122: c111 beqz a0,c001a126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38024 class_id = JS_CLASS_BYTECODE_FUNCTION; - c0019f54: 4435 li s0,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38017 + c001a124: 4435 li s0,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38025 atom = ctx->rt->class_array[class_id].class_name; - c0019f56: 02800713 li a4,40 - c0019f5a: 02e40433 mul s0,s0,a4 - c0019f5e: 6c9c ld a5,24(s1) - c0019f60: 7bbc ld a5,112(a5) - c0019f62: 943e add s0,s0,a5 - c0019f64: 404c lw a1,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38022 -} - c0019f66: 7442 ld s0,48(sp) - c0019f68: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38021 + c001a126: 02800713 li a4,40 + c001a12a: 02e40433 mul s0,s0,a4 + c001a12e: 6c9c ld a5,24(s1) + c001a130: 7bbc ld a5,112(a5) + c001a132: 943e add s0,s0,a5 + c001a134: 404c lw a1,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38030 +} + c001a136: 7442 ld s0,48(sp) + c001a138: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38029 return JS_AtomToString(ctx, atom); - c0019f6a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38022 + c001a13a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38030 } - c0019f6c: 74a2 ld s1,40(sp) - c0019f6e: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38021 + c001a13c: 74a2 ld s1,40(sp) + c001a13e: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38029 return JS_AtomToString(ctx, atom); - c0019f70: bcdff06f j c0019b3c + c001a140: bcdff06f j c0019d0c -00000000c0019f74 : +00000000c001a144 : js_typed_array_get_toStringTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53168 { - c0019f74: 1101 addi sp,sp,-32 - c0019f76: e432 sd a2,8(sp) - c0019f78: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53162 + c001a144: 1101 addi sp,sp,-32 + c001a146: e432 sd a2,8(sp) + c001a148: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53170 if (JS_VALUE_GET_TAG(this_val) != JS_TAG_OBJECT) - c0019f7a: 2601 sext.w a2,a2 - c0019f7c: 57fd li a5,-1 - c0019f7e: 02f61663 bne a2,a5,c0019faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53165 + c001a14a: 2601 sext.w a2,a2 + c001a14c: 57fd li a5,-1 + c001a14e: 02f61663 bne a2,a5,c001a17a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53173 if (!(p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0019f82: 0065d783 lhu a5,6(a1) - c0019f86: 4629 li a2,10 - c0019f88: feb7869b addiw a3,a5,-21 - c0019f8c: 16c2 slli a3,a3,0x30 - c0019f8e: 92c1 srli a3,a3,0x30 - c0019f90: 00d66d63 bltu a2,a3,c0019faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53168 + c001a152: 0065d783 lhu a5,6(a1) + c001a156: 4629 li a2,10 + c001a158: feb7869b addiw a3,a5,-21 + c001a15c: 16c2 slli a3,a3,0x30 + c001a15e: 92c1 srli a3,a3,0x30 + c001a160: 00d66d63 bltu a2,a3,c001a17a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53176 return JS_AtomToString(ctx, ctx->rt->class_array[p->class_id].class_name); - c0019f94: 02800693 li a3,40 - c0019f98: 02d787b3 mul a5,a5,a3 - c0019f9c: 6d18 ld a4,24(a0) - c0019f9e: 7b38 ld a4,112(a4) - c0019fa0: 97ba add a5,a5,a4 - c0019fa2: 43cc lw a1,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53169 -} - c0019fa4: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53168 + c001a164: 02800693 li a3,40 + c001a168: 02d787b3 mul a5,a5,a3 + c001a16c: 6d18 ld a4,24(a0) + c001a16e: 7b38 ld a4,112(a4) + c001a170: 97ba add a5,a5,a4 + c001a172: 43cc lw a1,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53177 +} + c001a174: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53176 return JS_AtomToString(ctx, ctx->rt->class_array[p->class_id].class_name); - c0019fa6: b97ff06f j c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53169 (discriminator 1) + c001a176: b97ff06f j c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53177 (discriminator 1) } - c0019faa: 4501 li a0,0 - c0019fac: 458d li a1,3 - c0019fae: 6105 addi sp,sp,32 - c0019fb0: 8082 ret + c001a17a: 4501 li a0,0 + c001a17c: 458d li a1,3 + c001a17e: 6105 addi sp,sp,32 + c001a180: 8082 ret -00000000c0019fb2 : +00000000c001a182 : js_new_string8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3535 if (len <= 0) { - c0019fb2: 00c04663 bgtz a2,c0019fbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3528 + c001a182: 00c04663 bgtz a2,c001a18e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3536 return JS_AtomToString(ctx, JS_ATOM_empty_string); - c0019fb6: 02f00593 li a1,47 - c0019fba: b83ff06f j c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3524 + c001a186: 02f00593 li a1,47 + c001a18a: b83ff06f j c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3532 { - c0019fbe: 7139 addi sp,sp,-64 - c0019fc0: f822 sd s0,48(sp) - c0019fc2: 8432 mv s0,a2 - c0019fc4: f04a sd s2,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3530 + c001a18e: 7139 addi sp,sp,-64 + c001a190: f822 sd s0,48(sp) + c001a192: 8432 mv s0,a2 + c001a194: f04a sd s2,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3538 str = js_alloc_string(ctx, len, 0); - c0019fc6: 4601 li a2,0 - c0019fc8: 892e mv s2,a1 - c0019fca: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3524 + c001a196: 4601 li a2,0 + c001a198: 892e mv s2,a1 + c001a19a: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3532 { - c0019fcc: f426 sd s1,40(sp) - c0019fce: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3530 + c001a19c: f426 sd s1,40(sp) + c001a19e: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3538 str = js_alloc_string(ctx, len, 0); - c0019fd0: ba1fe0ef jal ra,c0018b70 - c0019fd4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3531 + c001a1a0: ba1fe0ef jal ra,c0018d40 + c001a1a4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3539 if (!str) - c0019fd6: ed01 bnez a0,c0019fee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3532 + c001a1a6: ed01 bnez a0,c001a1be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3540 return JS_EXCEPTION; - c0019fd8: e002 sd zero,0(sp) - c0019fda: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3536 + c001a1a8: e002 sd zero,0(sp) + c001a1aa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3544 } - c0019fdc: 70e2 ld ra,56(sp) - c0019fde: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3535 + c001a1ac: 70e2 ld ra,56(sp) + c001a1ae: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3543 return JS_MKPTR(JS_TAG_STRING, str); - c0019fe0: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3536 + c001a1b0: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3544 } - c0019fe2: 6502 ld a0,0(sp) - c0019fe4: 65a2 ld a1,8(sp) - c0019fe6: 74a2 ld s1,40(sp) - c0019fe8: 7902 ld s2,32(sp) - c0019fea: 6121 addi sp,sp,64 - c0019fec: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3533 + c001a1b2: 6502 ld a0,0(sp) + c001a1b4: 65a2 ld a1,8(sp) + c001a1b6: 74a2 ld s1,40(sp) + c001a1b8: 7902 ld s2,32(sp) + c001a1ba: 6121 addi sp,sp,64 + c001a1bc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3541 memcpy(str->u.str8, buf, len); - c0019fee: 8622 mv a2,s0 - c0019ff0: 85ca mv a1,s2 - c0019ff2: 0541 addi a0,a0,16 - c0019ff4: 1e73c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3534 + c001a1be: 8622 mv a2,s0 + c001a1c0: 85ca mv a1,s2 + c001a1c2: 0541 addi a0,a0,16 + c001a1c4: 1e73c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3542 str->u.str8[len] = '\0'; - c0019ff8: 9426 add s0,s0,s1 - c0019ffa: 00040823 sb zero,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3535 + c001a1c8: 9426 add s0,s0,s1 + c001a1ca: 00040823 sb zero,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3543 return JS_MKPTR(JS_TAG_STRING, str); - c0019ffe: e026 sd s1,0(sp) - c001a000: 57e5 li a5,-7 - c001a002: bfe9 j c0019fdc + c001a1ce: e026 sd s1,0(sp) + c001a1d0: 57e5 li a5,-7 + c001a1d2: bfe9 j c001a1ac -00000000c001a004 : +00000000c001a1d4 : js_new_string_char(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3557 { - c001a004: 7179 addi sp,sp,-48 - c001a006: f406 sd ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3550 + c001a1d4: 7179 addi sp,sp,-48 + c001a1d6: f406 sd ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3558 if (c < 0x100) { - c001a008: 0ff00793 li a5,255 - c001a00c: 00b7ef63 bltu a5,a1,c001a02a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3551 + c001a1d8: 0ff00793 li a5,255 + c001a1dc: 00b7ef63 bltu a5,a1,c001a1fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3559 uint8_t ch8 = c; - c001a010: 00b10023 sb a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3552 + c001a1e0: 00b10023 sb a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3560 return js_new_string8(ctx, &ch8, 1); - c001a014: 4605 li a2,1 - c001a016: 858a mv a1,sp - c001a018: f9bff0ef jal ra,c0019fb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3557 + c001a1e4: 4605 li a2,1 + c001a1e6: 858a mv a1,sp + c001a1e8: f9bff0ef jal ra,c001a182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3565 } - c001a01c: 70a2 ld ra,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3555 + c001a1ec: 70a2 ld ra,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3563 return js_new_string16(ctx, &ch16, 1); - c001a01e: e02a sd a0,0(sp) - c001a020: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3557 + c001a1ee: e02a sd a0,0(sp) + c001a1f0: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3565 } - c001a022: 6502 ld a0,0(sp) - c001a024: 65a2 ld a1,8(sp) - c001a026: 6145 addi sp,sp,48 - c001a028: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3554 + c001a1f2: 6502 ld a0,0(sp) + c001a1f4: 65a2 ld a1,8(sp) + c001a1f6: 6145 addi sp,sp,48 + c001a1f8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3562 uint16_t ch16 = c; - c001a02a: 00b11823 sh a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3555 + c001a1fa: 00b11823 sh a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3563 return js_new_string16(ctx, &ch16, 1); - c001a02e: 4605 li a2,1 - c001a030: 080c addi a1,sp,16 - c001a032: ba3fe0ef jal ra,c0018bd4 - c001a036: b7dd j c001a01c + c001a1fe: 4605 li a2,1 + c001a200: 080c addi a1,sp,16 + c001a202: ba3fe0ef jal ra,c0018da4 + c001a206: b7dd j c001a1ec -00000000c001a038 : +00000000c001a208 : js_string_get_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41230 -{ - c001a038: 1101 addi sp,sp,-32 - c001a03a: ec06 sd ra,24(sp) - c001a03c: e822 sd s0,16(sp) - c001a03e: e032 sd a2,0(sp) - c001a040: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41236 - if (__JS_AtomIsTaggedInt(prop)) { - c001a042: 06075663 bgez a4,c001a0ae /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41238 +{ + c001a208: 1101 addi sp,sp,-32 + c001a20a: ec06 sd ra,24(sp) + c001a20c: e822 sd s0,16(sp) + c001a20e: e032 sd a2,0(sp) + c001a210: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41244 + if (__JS_AtomIsTaggedInt(prop)) { + c001a212: 06075663 bgez a4,c001a27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41246 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c001a046: 5e14 lw a3,56(a2) - c001a048: 57e5 li a5,-7 - c001a04a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41256 + c001a216: 5e14 lw a3,56(a2) + c001a218: 57e5 li a5,-7 + c001a21a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41264 return FALSE; - c001a04c: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41238 + c001a21c: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41246 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c001a04e: 04f69763 bne a3,a5,c001a09c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41239 + c001a21e: 04f69763 bne a3,a5,c001a26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41247 p1 = JS_VALUE_GET_STRING(p->u.object_data); - c001a052: 7a14 ld a3,48(a2) + c001a222: 7a14 ld a3,48(a2) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c001a054: 800007b7 lui a5,0x80000 - c001a058: fff7c793 not a5,a5 + c001a224: 800007b7 lui a5,0x80000 + c001a228: fff7c793 not a5,a5 js_string_get_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41241 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41249 if (idx < p1->len) { - c001a05c: 42d0 lw a2,4(a3) + c001a22c: 42d0 lw a2,4(a3) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c001a05e: 8f7d and a4,a4,a5 + c001a22e: 8f7d and a4,a4,a5 js_string_get_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41241 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41249 if (idx < p1->len) { - c001a060: 8ff1 and a5,a5,a2 - c001a062: 2781 sext.w a5,a5 - c001a064: 02f77c63 bgeu a4,a5,c001a09c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41252 + c001a230: 8ff1 and a5,a5,a2 + c001a232: 2781 sext.w a5,a5 + c001a234: 02f77c63 bgeu a4,a5,c001a26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41260 return TRUE; - c001a068: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41242 + c001a238: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41250 if (desc) { - c001a06a: c80d beqz s0,c001a09c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41243 + c001a23a: c80d beqz s0,c001a26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41251 if (p1->is_wide_char) - c001a06c: 1702 slli a4,a4,0x20 - c001a06e: 2601 sext.w a2,a2 - c001a070: 9301 srli a4,a4,0x20 - c001a072: 02065a63 bgez a2,c001a0a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41244 + c001a23c: 1702 slli a4,a4,0x20 + c001a23e: 2601 sext.w a2,a2 + c001a240: 9301 srli a4,a4,0x20 + c001a242: 02065a63 bgez a2,c001a276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41252 ch = p1->u.str16[idx]; - c001a076: 0721 addi a4,a4,8 - c001a078: 0706 slli a4,a4,0x1 - c001a07a: 9736 add a4,a4,a3 - c001a07c: 00075583 lhu a1,0(a4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41247 + c001a246: 0721 addi a4,a4,8 + c001a248: 0706 slli a4,a4,0x1 + c001a24a: 9736 add a4,a4,a3 + c001a24c: 00075583 lhu a1,0(a4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41255 desc->flags = JS_PROP_ENUMERABLE; - c001a080: 4791 li a5,4 - c001a082: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41248 + c001a250: 4791 li a5,4 + c001a252: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41256 desc->value = js_new_string_char(ctx, ch); - c001a084: f81ff0ef jal ra,c001a004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41249 + c001a254: f81ff0ef jal ra,c001a1d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41257 desc->getter = JS_UNDEFINED; - c001a088: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41248 + c001a258: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41256 desc->value = js_new_string_char(ctx, ch); - c001a08a: e80c sd a1,16(s0) - c001a08c: e408 sd a0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41249 + c001a25a: e80c sd a1,16(s0) + c001a25c: e408 sd a0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41257 desc->getter = JS_UNDEFINED; - c001a08e: 00043c23 sd zero,24(s0) - c001a092: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41250 + c001a25e: 00043c23 sd zero,24(s0) + c001a262: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41258 desc->setter = JS_UNDEFINED; - c001a094: 02043423 sd zero,40(s0) - c001a098: f81c sd a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41252 + c001a264: 02043423 sd zero,40(s0) + c001a268: f81c sd a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41260 return TRUE; - c001a09a: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41257 -} - c001a09c: 60e2 ld ra,24(sp) - c001a09e: 6442 ld s0,16(sp) - c001a0a0: 852e mv a0,a1 - c001a0a2: 6105 addi sp,sp,32 - c001a0a4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41246 + c001a26a: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41265 +} + c001a26c: 60e2 ld ra,24(sp) + c001a26e: 6442 ld s0,16(sp) + c001a270: 852e mv a0,a1 + c001a272: 6105 addi sp,sp,32 + c001a274: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41254 ch = p1->u.str8[idx]; - c001a0a6: 9736 add a4,a4,a3 - c001a0a8: 01074583 lbu a1,16(a4) - c001a0ac: bfd1 j c001a080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41256 + c001a276: 9736 add a4,a4,a3 + c001a278: 01074583 lbu a1,16(a4) + c001a27c: bfd1 j c001a250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41264 return FALSE; - c001a0ae: 4581 li a1,0 - c001a0b0: b7f5 j c001a09c + c001a27e: 4581 li a1,0 + c001a280: b7f5 j c001a26c -00000000c001a0b2 : +00000000c001a282 : js_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42840 { - c001a0b2: 7159 addi sp,sp,-112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42837 + c001a282: 7159 addi sp,sp,-112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42845 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_STRING_ITERATOR); - c001a0b4: 02900693 li a3,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42832 -{ - c001a0b8: eca6 sd s1,88(sp) - c001a0ba: e0d2 sd s4,64(sp) - c001a0bc: f486 sd ra,104(sp) - c001a0be: f0a2 sd s0,96(sp) - c001a0c0: e8ca sd s2,80(sp) - c001a0c2: e4ce sd s3,72(sp) - c001a0c4: fc56 sd s5,56(sp) - c001a0c6: 84aa mv s1,a0 - c001a0c8: e02e sd a1,0(sp) - c001a0ca: e432 sd a2,8(sp) - c001a0cc: 8a3e mv s4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42837 + c001a284: 02900693 li a3,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42840 +{ + c001a288: eca6 sd s1,88(sp) + c001a28a: e0d2 sd s4,64(sp) + c001a28c: f486 sd ra,104(sp) + c001a28e: f0a2 sd s0,96(sp) + c001a290: e8ca sd s2,80(sp) + c001a292: e4ce sd s3,72(sp) + c001a294: fc56 sd s5,56(sp) + c001a296: 84aa mv s1,a0 + c001a298: e02e sd a1,0(sp) + c001a29a: e432 sd a2,8(sp) + c001a29c: 8a3e mv s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42845 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_STRING_ITERATOR); - c001a0ce: caaf90ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42838 + c001a29e: bc8f90ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42846 if (!it) { - c001a0d2: e10d bnez a0,c001a0f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42839 + c001a2a2: e10d bnez a0,c001a2c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42847 *pdone = FALSE; - c001a0d4: 000a2023 sw zero,0(s4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42840 + c001a2a4: 000a2023 sw zero,0(s4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42848 return JS_EXCEPTION; - c001a0d8: f002 sd zero,32(sp) - c001a0da: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42851 + c001a2a8: f002 sd zero,32(sp) + c001a2aa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42859 return JS_UNDEFINED; - c001a0dc: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42863 (discriminator 1) -} - c001a0de: 70a6 ld ra,104(sp) - c001a0e0: 7406 ld s0,96(sp) - c001a0e2: 7502 ld a0,32(sp) - c001a0e4: 75a2 ld a1,40(sp) - c001a0e6: 64e6 ld s1,88(sp) - c001a0e8: 6946 ld s2,80(sp) - c001a0ea: 69a6 ld s3,72(sp) - c001a0ec: 6a06 ld s4,64(sp) - c001a0ee: 7ae2 ld s5,56(sp) - c001a0f0: 6165 addi sp,sp,112 - c001a0f2: 8082 ret + c001a2ac: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42871 (discriminator 1) +} + c001a2ae: 70a6 ld ra,104(sp) + c001a2b0: 7406 ld s0,96(sp) + c001a2b2: 7502 ld a0,32(sp) + c001a2b4: 75a2 ld a1,40(sp) + c001a2b6: 64e6 ld s1,88(sp) + c001a2b8: 6946 ld s2,80(sp) + c001a2ba: 69a6 ld s3,72(sp) + c001a2bc: 6a06 ld s4,64(sp) + c001a2be: 7ae2 ld s5,56(sp) + c001a2c0: 6165 addi sp,sp,112 + c001a2c2: 8082 ret JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001a0f4: 6510 ld a2,8(a0) + c001a2c4: 6510 ld a2,8(a0) js_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42850 if (JS_IsUndefined(it->obj)) - c001a0f6: 4a8d li s5,3 - c001a0f8: 842a mv s0,a0 - c001a0fa: 0006079b sext.w a5,a2 - c001a0fe: 03578563 beq a5,s5,c001a128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42844 + c001a2c6: 4a8d li s5,3 + c001a2c8: 842a mv s0,a0 + c001a2ca: 0006079b sext.w a5,a2 + c001a2ce: 03578563 beq a5,s5,c001a2f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42852 p = JS_VALUE_GET_STRING(it->obj); - c001a102: 00053983 ld s3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42845 + c001a2d2: 00053983 ld s3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42853 idx = it->idx; - c001a106: 01452903 lw s2,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42846 + c001a2d6: 01452903 lw s2,20(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42854 if (idx >= p->len) { - c001a10a: 0049a783 lw a5,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42845 + c001a2da: 0049a783 lw a5,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42853 idx = it->idx; - c001a10e: ce4a sw s2,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42846 + c001a2de: ce4a sw s2,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42854 if (idx >= p->len) { - c001a110: 1786 slli a5,a5,0x21 - c001a112: 9385 srli a5,a5,0x21 - c001a114: 02f96063 bltu s2,a5,c001a134 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42847 + c001a2e0: 1786 slli a5,a5,0x21 + c001a2e2: 9385 srli a5,a5,0x21 + c001a2e4: 02f96063 bltu s2,a5,c001a304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42855 JS_FreeValue(ctx, it->obj); - c001a118: 610c ld a1,0(a0) - c001a11a: 8526 mv a0,s1 - c001a11c: a1ded0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42848 + c001a2e8: 610c ld a1,0(a0) + c001a2ea: 8526 mv a0,s1 + c001a2ec: 93bed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42856 it->obj = JS_UNDEFINED; - c001a120: 00043023 sd zero,0(s0) - c001a124: 01543423 sd s5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42850 + c001a2f0: 00043023 sd zero,0(s0) + c001a2f4: 01543423 sd s5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42858 *pdone = TRUE; - c001a128: 4785 li a5,1 - c001a12a: 00fa2023 sw a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42851 + c001a2f8: 4785 li a5,1 + c001a2fa: 00fa2023 sw a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42859 return JS_UNDEFINED; - c001a12e: f002 sd zero,32(sp) - c001a130: 478d li a5,3 - c001a132: b76d j c001a0dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42855 + c001a2fe: f002 sd zero,32(sp) + c001a300: 478d li a5,3 + c001a302: b76d j c001a2ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42863 c = string_getc(p, (int *)&idx); - c001a134: 086c addi a1,sp,28 - c001a136: 854e mv a0,s3 - c001a138: 848ea0ef jal ra,c0004180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42856 + c001a304: 086c addi a1,sp,28 + c001a306: 854e mv a0,s3 + c001a308: e79e90ef jal ra,c0004180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42864 it->idx = idx; - c001a13c: 47f2 lw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42858 + c001a30c: 47f2 lw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42866 if (c <= 0xffff) { - c001a13e: 0005071b sext.w a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42856 + c001a30e: 0005071b sext.w a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42864 it->idx = idx; - c001a142: c85c sw a5,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42857 + c001a312: c85c sw a5,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42865 *pdone = FALSE; - c001a144: 000a2023 sw zero,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42858 + c001a314: 000a2023 sw zero,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42866 if (c <= 0xffff) { - c001a148: 67c1 lui a5,0x10 - c001a14a: 00f77b63 bgeu a4,a5,c001a160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42859 + c001a318: 67c1 lui a5,0x10 + c001a31a: 00f77b63 bgeu a4,a5,c001a330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42867 return js_new_string_char(ctx, c); - c001a14e: 03051593 slli a1,a0,0x30 - c001a152: 91c1 srli a1,a1,0x30 - c001a154: 8526 mv a0,s1 - c001a156: eafff0ef jal ra,c001a004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42861 + c001a31e: 03051593 slli a1,a0,0x30 + c001a322: 91c1 srli a1,a1,0x30 + c001a324: 8526 mv a0,s1 + c001a326: eafff0ef jal ra,c001a1d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42869 return js_new_string16(ctx, p->u.str16 + start, 2); - c001a15a: f02a sd a0,32(sp) - c001a15c: f42e sd a1,40(sp) - c001a15e: b741 j c001a0de - c001a160: 02091793 slli a5,s2,0x20 - c001a164: 01098593 addi a1,s3,16 - c001a168: 01f7d913 srli s2,a5,0x1f - c001a16c: 4609 li a2,2 - c001a16e: 95ca add a1,a1,s2 - c001a170: 8526 mv a0,s1 - c001a172: a63fe0ef jal ra,c0018bd4 - c001a176: b7d5 j c001a15a - -00000000c001a178 : + c001a32a: f02a sd a0,32(sp) + c001a32c: f42e sd a1,40(sp) + c001a32e: b741 j c001a2ae + c001a330: 02091793 slli a5,s2,0x20 + c001a334: 01098593 addi a1,s3,16 + c001a338: 01f7d913 srli s2,a5,0x1f + c001a33c: 4609 li a2,2 + c001a33e: 95ca add a1,a1,s2 + c001a340: 8526 mv a0,s1 + c001a342: a63fe0ef jal ra,c0018da4 + c001a346: b7d5 j c001a32a + +00000000c001a348 : js_sub_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3568 { - c001a178: 7179 addi sp,sp,-48 - c001a17a: f022 sd s0,32(sp) - c001a17c: ec26 sd s1,24(sp) - c001a17e: e84a sd s2,16(sp) - c001a180: f406 sd ra,40(sp) - c001a182: 41dc lw a5,4(a1) - c001a184: 842e mv s0,a1 - c001a186: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3561 + c001a348: 7179 addi sp,sp,-48 + c001a34a: f022 sd s0,32(sp) + c001a34c: ec26 sd s1,24(sp) + c001a34e: e84a sd s2,16(sp) + c001a350: f406 sd ra,40(sp) + c001a352: 41dc lw a5,4(a1) + c001a354: 842e mv s0,a1 + c001a356: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3569 int len = end - start; - c001a188: 40c684bb subw s1,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3562 + c001a358: 40c684bb subw s1,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3570 if (start == 0 && end == p->len) { - c001a18c: ee01 bnez a2,c001a1a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3562 (discriminator 1) - c001a18e: 02179713 slli a4,a5,0x21 - c001a192: 9305 srli a4,a4,0x21 - c001a194: 00971863 bne a4,s1,c001a1a4 + c001a35c: ee01 bnez a2,c001a374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3570 (discriminator 1) + c001a35e: 02179713 slli a4,a5,0x21 + c001a362: 9305 srli a4,a4,0x21 + c001a364: 00971863 bne a4,s1,c001a374 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c001a198: 419c lw a5,0(a1) - c001a19a: e02e sd a1,0(sp) - c001a19c: 2785 addiw a5,a5,1 - c001a19e: c19c sw a5,0(a1) + c001a368: 419c lw a5,0(a1) + c001a36a: e02e sd a1,0(sp) + c001a36c: 2785 addiw a5,a5,1 + c001a36e: c19c sw a5,0(a1) js_sub_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3590 return JS_MKPTR(JS_TAG_STRING, str); - c001a1a0: 57e5 li a5,-7 - c001a1a2: a899 j c001a1f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3565 + c001a370: 57e5 li a5,-7 + c001a372: a899 j c001a3c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 if (p->is_wide_char && len > 0) { - c001a1a4: 2781 sext.w a5,a5 - c001a1a6: 0807d763 bgez a5,c001a234 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3565 (discriminator 1) - c001a1aa: 08905563 blez s1,c001a234 - c001a1ae: 00191893 slli a7,s2,0x1 - c001a1b2: 01140833 add a6,s0,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3565 - c001a1b6: 874a mv a4,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3568 + c001a374: 2781 sext.w a5,a5 + c001a376: 0807d763 bgez a5,c001a404 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 (discriminator 1) + c001a37a: 08905563 blez s1,c001a404 + c001a37e: 00191893 slli a7,s2,0x1 + c001a382: 01140833 add a6,s0,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 + c001a386: 874a mv a4,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3576 uint16_t c = 0; - c001a1b8: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3569 (discriminator 1) + c001a388: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3577 (discriminator 1) for (i = start; i < end; i++) { - c001a1ba: 0809 addi a6,a6,2 - c001a1bc: 02d74163 blt a4,a3,c001a1de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3572 + c001a38a: 0809 addi a6,a6,2 + c001a38c: 02d74163 blt a4,a3,c001a3ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3580 if (c > 0xFF) - c001a1c0: 0ff00713 li a4,255 - c001a1c4: 02f77263 bgeu a4,a5,c001a1e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 + c001a390: 0ff00713 li a4,255 + c001a394: 02f77263 bgeu a4,a5,c001a3b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3581 return js_new_string16(ctx, p->u.str16 + start, len); - c001a1c8: 01040593 addi a1,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 + c001a398: 01040593 addi a1,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 } - c001a1cc: 7402 ld s0,32(sp) - c001a1ce: 70a2 ld ra,40(sp) - c001a1d0: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 + c001a39c: 7402 ld s0,32(sp) + c001a39e: 70a2 ld ra,40(sp) + c001a3a0: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3581 return js_new_string16(ctx, p->u.str16 + start, len); - c001a1d2: 8626 mv a2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 + c001a3a2: 8626 mv a2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 } - c001a1d4: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 + c001a3a4: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3581 return js_new_string16(ctx, p->u.str16 + start, len); - c001a1d6: 95c6 add a1,a1,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 + c001a3a6: 95c6 add a1,a1,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 } - c001a1d8: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3573 + c001a3a8: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3581 return js_new_string16(ctx, p->u.str16 + start, len); - c001a1da: 9fbfe06f j c0018bd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3570 (discriminator 3) + c001a3aa: 9fbfe06f j c0018da4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3578 (discriminator 3) c |= p->u.str16[i]; - c001a1de: 00e85603 lhu a2,14(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3569 (discriminator 3) + c001a3ae: 00e85603 lhu a2,14(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3577 (discriminator 3) for (i = start; i < end; i++) { - c001a1e2: 2705 addiw a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3570 (discriminator 3) + c001a3b2: 2705 addiw a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3578 (discriminator 3) c |= p->u.str16[i]; - c001a1e4: 8fd1 or a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3569 (discriminator 3) + c001a3b4: 8fd1 or a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3577 (discriminator 3) for (i = start; i < end; i++) { - c001a1e6: bfd1 j c001a1ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3575 + c001a3b6: bfd1 j c001a38a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3583 str = js_alloc_string(ctx, len, 0); - c001a1e8: 4601 li a2,0 - c001a1ea: 85a6 mv a1,s1 - c001a1ec: 985fe0ef jal ra,c0018b70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3576 + c001a3b8: 4601 li a2,0 + c001a3ba: 85a6 mv a1,s1 + c001a3bc: 985fe0ef jal ra,c0018d40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3584 if (!str) - c001a1f0: 4701 li a4,0 - c001a1f2: ed01 bnez a0,c001a20a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3577 + c001a3c0: 4701 li a4,0 + c001a3c2: ed01 bnez a0,c001a3da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3585 return JS_EXCEPTION; - c001a1f4: e002 sd zero,0(sp) - c001a1f6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 + c001a3c4: e002 sd zero,0(sp) + c001a3c6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 } - c001a1f8: 70a2 ld ra,40(sp) - c001a1fa: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3582 + c001a3c8: 70a2 ld ra,40(sp) + c001a3ca: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3590 return JS_MKPTR(JS_TAG_STRING, str); - c001a1fc: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 -} - c001a1fe: 6502 ld a0,0(sp) - c001a200: 65a2 ld a1,8(sp) - c001a202: 64e2 ld s1,24(sp) - c001a204: 6942 ld s2,16(sp) - c001a206: 6145 addi sp,sp,48 - c001a208: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3579 (discriminator 3) + c001a3cc: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 +} + c001a3ce: 6502 ld a0,0(sp) + c001a3d0: 65a2 ld a1,8(sp) + c001a3d2: 64e2 ld s1,24(sp) + c001a3d4: 6942 ld s2,16(sp) + c001a3d6: 6145 addi sp,sp,48 + c001a3d8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3587 (discriminator 3) str->u.str8[i] = p->u.str16[start + i]; - c001a20a: 012707bb addw a5,a4,s2 - c001a20e: 07a1 addi a5,a5,8 - c001a210: 0786 slli a5,a5,0x1 - c001a212: 97a2 add a5,a5,s0 - c001a214: 0007d783 lhu a5,0(a5) # 10000 <__clzdi2-0xbfff0000> - c001a218: 00e506b3 add a3,a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3578 (discriminator 3) + c001a3da: 012707bb addw a5,a4,s2 + c001a3de: 07a1 addi a5,a5,8 + c001a3e0: 0786 slli a5,a5,0x1 + c001a3e2: 97a2 add a5,a5,s0 + c001a3e4: 0007d783 lhu a5,0(a5) # 10000 <__clzdi2-0xbfff0000> + c001a3e8: 00e506b3 add a3,a0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 (discriminator 3) for (i = 0; i < len; i++) { - c001a21c: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3579 (discriminator 3) + c001a3ec: 0705 addi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3587 (discriminator 3) str->u.str8[i] = p->u.str16[start + i]; - c001a21e: 00f68823 sb a5,16(a3) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3578 (discriminator 3) + c001a3ee: 00f68823 sb a5,16(a3) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 (discriminator 3) for (i = 0; i < len; i++) { - c001a222: 0007079b sext.w a5,a4 - c001a226: fe97c2e3 blt a5,s1,c001a20a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3581 + c001a3f2: 0007079b sext.w a5,a4 + c001a3f6: fe97c2e3 blt a5,s1,c001a3da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3589 str->u.str8[len] = '\0'; - c001a22a: 94aa add s1,s1,a0 - c001a22c: 00048823 sb zero,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3582 + c001a3fa: 94aa add s1,s1,a0 + c001a3fc: 00048823 sb zero,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3590 return JS_MKPTR(JS_TAG_STRING, str); - c001a230: e02a sd a0,0(sp) - c001a232: b7bd j c001a1a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3584 + c001a400: e02a sd a0,0(sp) + c001a402: b7bd j c001a370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3592 return js_new_string8(ctx, p->u.str8 + start, len); - c001a234: 0441 addi s0,s0,16 - c001a236: 012405b3 add a1,s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 -} - c001a23a: 7402 ld s0,32(sp) - c001a23c: 70a2 ld ra,40(sp) - c001a23e: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3584 + c001a404: 0441 addi s0,s0,16 + c001a406: 012405b3 add a1,s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 +} + c001a40a: 7402 ld s0,32(sp) + c001a40c: 70a2 ld ra,40(sp) + c001a40e: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3592 return js_new_string8(ctx, p->u.str8 + start, len); - c001a240: 8626 mv a2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3586 + c001a410: 8626 mv a2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3594 } - c001a242: 64e2 ld s1,24(sp) - c001a244: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3584 + c001a412: 64e2 ld s1,24(sp) + c001a414: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3592 return js_new_string8(ctx, p->u.str8 + start, len); - c001a246: d6dff06f j c0019fb2 + c001a416: d6dff06f j c001a182 -00000000c001a24a : +00000000c001a41a : JS_NewAtomInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3045 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3053 if ((uint64_t)n <= JS_ATOM_MAX_INT) { - c001a24a: 800007b7 lui a5,0x80000 - c001a24e: fff7c793 not a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3044 + c001a41a: 800007b7 lui a5,0x80000 + c001a41e: fff7c793 not a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3052 { - c001a252: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3045 + c001a422: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3053 if ((uint64_t)n <= JS_ATOM_MAX_INT) { - c001a254: 00b7e763 bltu a5,a1,c001a262 + c001a424: 00b7e763 bltu a5,a1,c001a432 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c001a258: 80000537 lui a0,0x80000 - c001a25c: 8d4d or a0,a0,a1 - c001a25e: 2501 sext.w a0,a0 + c001a428: 80000537 lui a0,0x80000 + c001a42c: 8d4d or a0,a0,a1 + c001a42e: 2501 sext.w a0,a0 JS_NewAtomInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3057 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3065 } - c001a260: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3044 + c001a430: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3052 { - c001a262: 7139 addi sp,sp,-64 - c001a264: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3050 + c001a432: 7139 addi sp,sp,-64 + c001a434: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3058 snprintf(buf, sizeof(buf), "%" PRId64 , n); - c001a266: 00044617 auipc a2,0x44 - c001a26a: faa60613 addi a2,a2,-86 # c005e210 - c001a26e: 842a mv s0,a0 - c001a270: 45e1 li a1,24 - c001a272: 0828 addi a0,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3044 + c001a436: 00044617 auipc a2,0x44 + c001a43a: 03a60613 addi a2,a2,58 # c005e470 + c001a43e: 842a mv s0,a0 + c001a440: 45e1 li a1,24 + c001a442: 0828 addi a0,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3052 { - c001a274: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3050 + c001a444: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3058 snprintf(buf, sizeof(buf), "%" PRId64 , n); - c001a276: 78f390ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3051 + c001a446: 78f390ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3059 val = JS_NewString(ctx, buf); - c001a27a: 082c addi a1,sp,24 - c001a27c: 8522 mv a0,s0 - c001a27e: fa4ff0ef jal ra,c0019a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3052 + c001a44a: 082c addi a1,sp,24 + c001a44c: 8522 mv a0,s0 + c001a44e: fa4ff0ef jal ra,c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3060 if (JS_IsException(val)) - c001a282: 2581 sext.w a1,a1 - c001a284: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3051 + c001a452: 2581 sext.w a1,a1 + c001a454: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3059 val = JS_NewString(ctx, buf); - c001a286: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3053 + c001a456: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3061 return JS_ATOM_NULL; - c001a288: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3052 + c001a458: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3060 if (JS_IsException(val)) - c001a28a: 00e58863 beq a1,a4,c001a29a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3054 + c001a45a: 00e58863 beq a1,a4,c001a46a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3062 return __JS_NewAtom(ctx->rt, JS_VALUE_GET_STRING(val), - c001a28e: 6c08 ld a0,24(s0) - c001a290: 4605 li a2,1 - c001a292: 85be mv a1,a5 - c001a294: d03ec0ef jal ra,c0006f96 <__JS_NewAtom> - c001a298: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3057 (discriminator 1) -} - c001a29a: 70e2 ld ra,56(sp) - c001a29c: 7442 ld s0,48(sp) - c001a29e: 6121 addi sp,sp,64 - c001a2a0: 8082 ret - -00000000c001a2a2 : + c001a45e: 6c08 ld a0,24(s0) + c001a460: 4605 li a2,1 + c001a462: 85be mv a1,a5 + c001a464: c21ec0ef jal ra,c0007084 <__JS_NewAtom> + c001a468: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3065 (discriminator 1) +} + c001a46a: 70e2 ld ra,56(sp) + c001a46c: 7442 ld s0,48(sp) + c001a46e: 6121 addi sp,sp,64 + c001a470: 8082 ret + +00000000c001a472 : js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11588 if (!isfinite(d)) { - c001a2a2: 0005a797 auipc a5,0x5a - c001a2a6: 4e67b787 fld fa5,1254(a5) # c0074788 <_erodata+0x8> - c001a2aa: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001a472: 0005a797 auipc a5,0x5a + c001a476: 5767b787 fld fa5,1398(a5) # c00749e8 <_erodata+0x8> + c001a47a: 12f7f7d3 fmul.d fa5,fa5,fa5 js_dtoa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11667 -{ - c001a2ae: 7101 addi sp,sp,-512 - c001a2b0: efce sd s3,472(sp) - c001a2b2: b722 fsd fs0,424(sp) - c001a2b4: ff86 sd ra,504(sp) - c001a2b6: fba2 sd s0,496(sp) - c001a2b8: f7a6 sd s1,488(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11675 +{ + c001a47e: 7101 addi sp,sp,-512 + c001a480: efce sd s3,472(sp) + c001a482: b722 fsd fs0,424(sp) + c001a484: ff86 sd ra,504(sp) + c001a486: fba2 sd s0,496(sp) + c001a488: f7a6 sd s1,488(sp) js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11588 if (!isfinite(d)) { - c001a2ba: a2f52753 feq.d a4,fa0,fa5 + c001a48a: a2f52753 feq.d a4,fa0,fa5 js_dtoa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11667 -{ - c001a2be: f3ca sd s2,480(sp) - c001a2c0: ebd2 sd s4,464(sp) - c001a2c2: e7d6 sd s5,456(sp) - c001a2c4: e3da sd s6,448(sp) - c001a2c6: ff5e sd s7,440(sp) - c001a2c8: 22a50453 fmv.d fs0,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11675 +{ + c001a48e: f3ca sd s2,480(sp) + c001a490: ebd2 sd s4,464(sp) + c001a492: e7d6 sd s5,456(sp) + c001a494: e3da sd s6,448(sp) + c001a496: ff5e sd s7,440(sp) + c001a498: 22a50453 fmv.d fs0,fa0 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11588 if (!isfinite(d)) { - c001a2cc: a2a527d3 feq.d a5,fa0,fa0 + c001a49c: a2a527d3 feq.d a5,fa0,fa0 js_dtoa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11675 { - c001a2d0: 89aa mv s3,a0 + c001a4a0: 89aa mv s3,a0 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11588 if (!isfinite(d)) { - c001a2d2: e349 bnez a4,c001a354 - c001a2d4: 22f797d3 fneg.d fa5,fa5 - c001a2d8: a2f52753 feq.d a4,fa0,fa5 - c001a2dc: ef25 bnez a4,c001a354 - c001a2de: cfa5 beqz a5,c001a356 - c001a2e0: 8432 mv s0,a2 - c001a2e2: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11589 + c001a4a2: e349 bnez a4,c001a524 + c001a4a4: 22f797d3 fneg.d fa5,fa5 + c001a4a8: a2f52753 feq.d a4,fa0,fa5 + c001a4ac: ef25 bnez a4,c001a524 + c001a4ae: cfa5 beqz a5,c001a526 + c001a4b0: 8432 mv s0,a2 + c001a4b2: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11597 } else if (flags == JS_DTOA_VAR_FORMAT) { - c001a2e4: e6f9 bnez a3,c001a3b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11592 + c001a4b4: e6f9 bnez a3,c001a582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11600 i64 = (int64_t)d; - c001a2e6: c2251753 fcvt.l.d a4,fa0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11593 + c001a4b6: c2251753 fcvt.l.d a4,fa0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11601 if (d != i64 || i64 > MAX_SAFE_INTEGER || i64 < -MAX_SAFE_INTEGER) - c001a2ea: d22777d3 fcvt.d.l fa5,a4 - c001a2ee: a2f527d3 feq.d a5,fa0,fa5 - c001a2f2: 14078563 beqz a5,c001a43c - c001a2f6: 57fd li a5,-1 - c001a2f8: 83ad srli a5,a5,0xb - c001a2fa: bff00693 li a3,-1025 - c001a2fe: 97ba add a5,a5,a4 - c001a300: 82a9 srli a3,a3,0xa - c001a302: 12f6ed63 bltu a3,a5,c001a43c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11596 + c001a4ba: d22777d3 fcvt.d.l fa5,a4 + c001a4be: a2f527d3 feq.d a5,fa0,fa5 + c001a4c2: 14078563 beqz a5,c001a60c + c001a4c6: 57fd li a5,-1 + c001a4c8: 83ad srli a5,a5,0xb + c001a4ca: bff00693 li a3,-1025 + c001a4ce: 97ba add a5,a5,a4 + c001a4d0: 82a9 srli a3,a3,0xa + c001a4d2: 12f6ed63 bltu a3,a5,c001a60c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11604 ptr = i64toa(buf1 + sizeof(buf1), i64, radix); - c001a306: 2581 sext.w a1,a1 + c001a4d6: 2581 sext.w a1,a1 i64toa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11422 if (n < 0) { - c001a308: 00075563 bgez a4,c001a312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11416 + c001a4d8: 00075563 bgez a4,c001a4e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11424 n = -n; - c001a30c: 40e00733 neg a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11415 + c001a4dc: 40e00733 neg a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11423 is_neg = 1; - c001a310: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11420 + c001a4e0: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11428 digit = (uint64_t)n % base; - c001a312: 02059793 slli a5,a1,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11418 + c001a4e2: 02059793 slli a5,a1,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11426 *--q = '\0'; - c001a316: 160102a3 sb zero,357(sp) - c001a31a: 16510613 addi a2,sp,357 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11420 + c001a4e6: 160102a3 sb zero,357(sp) + c001a4ea: 16510613 addi a2,sp,357 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11428 digit = (uint64_t)n % base; - c001a31e: 9381 srli a5,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11422 + c001a4ee: 9381 srli a5,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11430 if (digit < 10) - c001a320: 4825 li a6,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11420 + c001a4f0: 4825 li a6,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11428 digit = (uint64_t)n % base; - c001a322: 02f776b3 remu a3,a4,a5 - c001a326: 853a mv a0,a4 - c001a328: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11421 + c001a4f2: 02f776b3 remu a3,a4,a5 + c001a4f6: 853a mv a0,a4 + c001a4f8: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11429 n = (uint64_t)n / base; - c001a32a: 02f75733 divu a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11422 + c001a4fa: 02f75733 divu a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11430 if (digit < 10) - c001a32e: 06d84f63 blt a6,a3,c001a3ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11423 + c001a4fe: 06d84f63 blt a6,a3,c001a57c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11431 digit += '0'; - c001a332: 0306869b addiw a3,a3,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11426 + c001a502: 0306869b addiw a3,a3,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11434 *--q = digit; - c001a336: fed60fa3 sb a3,-1(a2) - c001a33a: fff60593 addi a1,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11427 + c001a506: fed60fa3 sb a3,-1(a2) + c001a50a: fff60593 addi a1,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11435 } while (n != 0); - c001a33e: 06f57563 bgeu a0,a5,c001a3a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11428 + c001a50e: 06f57563 bgeu a0,a5,c001a578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11436 if (is_neg) - c001a342: 00090e63 beqz s2,c001a35e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11429 + c001a512: 00090e63 beqz s2,c001a52e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11437 *--q = '-'; - c001a346: 02d00793 li a5,45 - c001a34a: fef58fa3 sb a5,-1(a1) - c001a34e: ffe60593 addi a1,a2,-2 - c001a352: a031 j c001a35e + c001a516: 02d00793 li a5,45 + c001a51a: fef58fa3 sb a5,-1(a1) + c001a51e: ffe60593 addi a1,a2,-2 + c001a522: a031 j c001a52e js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11581 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11589 if (isnan(d)) { - c001a354: e799 bnez a5,c001a362 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11582 + c001a524: e799 bnez a5,c001a532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11590 strcpy(buf, "NaN"); - c001a356: 00044597 auipc a1,0x44 - c001a35a: ec258593 addi a1,a1,-318 # c005e218 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11597 + c001a526: 00044597 auipc a1,0x44 + c001a52a: f5258593 addi a1,a1,-174 # c005e478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11605 strcpy(buf, ptr); - c001a35e: 1108 addi a0,sp,160 - c001a360: a00d j c001a382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11585 + c001a52e: 1108 addi a0,sp,160 + c001a530: a00d j c001a552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11593 if (d < 0) - c001a362: f20007d3 fmv.d.x fa5,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11584 + c001a532: f20007d3 fmv.d.x fa5,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11592 q = buf; - c001a366: 1108 addi a0,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11585 + c001a536: 1108 addi a0,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11593 if (d < 0) - c001a368: a2f417d3 flt.d a5,fs0,fa5 - c001a36c: c799 beqz a5,c001a37a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11586 + c001a538: a2f417d3 flt.d a5,fs0,fa5 + c001a53c: c799 beqz a5,c001a54a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11594 *q++ = '-'; - c001a36e: 02d00793 li a5,45 - c001a372: 0af10023 sb a5,160(sp) - c001a376: 0a110513 addi a0,sp,161 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11587 + c001a53e: 02d00793 li a5,45 + c001a542: 0af10023 sb a5,160(sp) + c001a546: 0a110513 addi a0,sp,161 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11595 strcpy(q, "Infinity"); - c001a37a: 00044597 auipc a1,0x44 - c001a37e: de658593 addi a1,a1,-538 # c005e160 - c001a382: 5e43c0ef jal ra,c0056966 + c001a54a: 00044597 auipc a1,0x44 + c001a54e: e7658593 addi a1,a1,-394 # c005e3c0 + c001a552: 5e43c0ef jal ra,c0056b36 js_dtoa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11678 return JS_NewString(ctx, buf); - c001a386: 110c addi a1,sp,160 - c001a388: 854e mv a0,s3 - c001a38a: e98ff0ef jal ra,c0019a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11671 -} - c001a38e: 70fe ld ra,504(sp) - c001a390: 745e ld s0,496(sp) - c001a392: 74be ld s1,488(sp) - c001a394: 791e ld s2,480(sp) - c001a396: 69fe ld s3,472(sp) - c001a398: 6a5e ld s4,464(sp) - c001a39a: 6abe ld s5,456(sp) - c001a39c: 6b1e ld s6,448(sp) - c001a39e: 7bfa ld s7,440(sp) - c001a3a0: 343a fld fs0,424(sp) - c001a3a2: 20010113 addi sp,sp,512 - c001a3a6: 8082 ret + c001a556: 110c addi a1,sp,160 + c001a558: 854e mv a0,s3 + c001a55a: e98ff0ef jal ra,c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11679 +} + c001a55e: 70fe ld ra,504(sp) + c001a560: 745e ld s0,496(sp) + c001a562: 74be ld s1,488(sp) + c001a564: 791e ld s2,480(sp) + c001a566: 69fe ld s3,472(sp) + c001a568: 6a5e ld s4,464(sp) + c001a56a: 6abe ld s5,456(sp) + c001a56c: 6b1e ld s6,448(sp) + c001a56e: 7bfa ld s7,440(sp) + c001a570: 343a fld fs0,424(sp) + c001a572: 20010113 addi sp,sp,512 + c001a576: 8082 ret i64toa(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11671 - c001a3a8: 862e mv a2,a1 - c001a3aa: bfa5 j c001a322 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11425 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11679 + c001a578: 862e mv a2,a1 + c001a57a: bfa5 j c001a4f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11433 digit += 'a' - 10; - c001a3ac: 0576869b addiw a3,a3,87 - c001a3b0: b759 j c001a336 + c001a57c: 0576869b addiw a3,a3,87 + c001a580: b759 j c001a506 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11599 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11607 if (d == 0.0) - c001a3b2: f20007d3 fmv.d.x fa5,zero - c001a3b6: a2f527d3 feq.d a5,fa0,fa5 - c001a3ba: c399 beqz a5,c001a3c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11600 + c001a582: f20007d3 fmv.d.x fa5,zero + c001a586: a2f527d3 feq.d a5,fa0,fa5 + c001a58a: c399 beqz a5,c001a590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11608 d = 0.0; /* convert -0 to 0 */ - c001a3bc: 22f78453 fmv.d fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11601 + c001a58c: 22f78453 fmv.d fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11609 if (flags == JS_DTOA_FRAC_FORMAT) { - c001a3c0: 4789 li a5,2 - c001a3c2: 06f91d63 bne s2,a5,c001a43c + c001a590: 4789 li a5,2 + c001a592: 06f91d63 bne s2,a5,c001a60c js_fcvt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11544 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11552 n1 = js_fcvt1(buf1, sizeof(buf1), d, n_digits + 1, FE_TONEAREST); - c001a3c6: 22840553 fmv.d fa0,fs0 - c001a3ca: 0014059b addiw a1,s0,1 - c001a3ce: 4601 li a2,0 - c001a3d0: 1108 addi a0,sp,160 - c001a3d2: e42e sd a1,8(sp) - c001a3d4: 84aec0ef jal ra,c000641e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11547 + c001a596: 22840553 fmv.d fa0,fs0 + c001a59a: 0014059b addiw a1,s0,1 + c001a59e: 4601 li a2,0 + c001a5a0: 1108 addi a0,sp,160 + c001a5a2: e42e sd a1,8(sp) + c001a5a4: f69eb0ef jal ra,c000650c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11555 if (buf1[n1 - 1] == '5') { - c001a3d8: 131c addi a5,sp,416 - c001a3da: 357d addiw a0,a0,-1 - c001a3dc: 953e add a0,a0,a5 - c001a3de: f0054703 lbu a4,-256(a0) # ffffffff7fffff00 <_ebss+0xfffffffebfefedda> - c001a3e2: 03500793 li a5,53 - c001a3e6: 65a2 ld a1,8(sp) - c001a3e8: 00f70b63 beq a4,a5,c001a3fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11545 + c001a5a8: 131c addi a5,sp,416 + c001a5aa: 357d addiw a0,a0,-1 + c001a5ac: 953e add a0,a0,a5 + c001a5ae: f0054703 lbu a4,-256(a0) # ffffffff7fffff00 <_ebss+0xfffffffebfefedda> + c001a5b2: 03500793 li a5,53 + c001a5b6: 65a2 ld a1,8(sp) + c001a5b8: 00f70b63 beq a4,a5,c001a5ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11553 rounding_mode = FE_TONEAREST; - c001a3ec: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11560 + c001a5bc: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11568 js_fcvt1(buf, buf_size, d, n_digits, rounding_mode); - c001a3ee: 22840553 fmv.d fa0,fs0 - c001a3f2: 864a mv a2,s2 - c001a3f4: 85a2 mv a1,s0 - c001a3f6: 1108 addi a0,sp,160 - c001a3f8: 826ec0ef jal ra,c000641e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11561 -} - c001a3fc: b769 j c001a386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11548 + c001a5be: 22840553 fmv.d fa0,fs0 + c001a5c2: 864a mv a2,s2 + c001a5c4: 85a2 mv a1,s0 + c001a5c6: 1108 addi a0,sp,160 + c001a5c8: f45eb0ef jal ra,c000650c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11569 +} + c001a5cc: b769 j c001a556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11556 n1 = js_fcvt1(buf1, sizeof(buf1), d, n_digits + 1, FE_DOWNWARD); - c001a3fe: 22840553 fmv.d fa0,fs0 - c001a402: 4609 li a2,2 - c001a404: 1108 addi a0,sp,160 - c001a406: e42e sd a1,8(sp) - c001a408: 816ec0ef jal ra,c000641e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11549 + c001a5ce: 22840553 fmv.d fa0,fs0 + c001a5d2: 4609 li a2,2 + c001a5d4: 1108 addi a0,sp,160 + c001a5d6: e42e sd a1,8(sp) + c001a5d8: f35eb0ef jal ra,c000650c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11557 n2 = js_fcvt1(buf2, sizeof(buf2), d, n_digits + 1, FE_UPWARD); - c001a40c: 65a2 ld a1,8(sp) - c001a40e: 22840553 fmv.d fa0,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11548 + c001a5dc: 65a2 ld a1,8(sp) + c001a5de: 22840553 fmv.d fa0,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11556 n1 = js_fcvt1(buf1, sizeof(buf1), d, n_digits + 1, FE_DOWNWARD); - c001a412: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11549 + c001a5e2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11557 n2 = js_fcvt1(buf2, sizeof(buf2), d, n_digits + 1, FE_UPWARD); - c001a414: 460d li a2,3 - c001a416: 1208 addi a0,sp,288 - c001a418: 806ec0ef jal ra,c000641e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11550 + c001a5e4: 460d li a2,3 + c001a5e6: 1208 addi a0,sp,288 + c001a5e8: f25eb0ef jal ra,c000650c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11558 if (n1 == n2 && memcmp(buf1, buf2, n1) == 0) { - c001a41c: fca498e3 bne s1,a0,c001a3ec - c001a420: 8626 mv a2,s1 - c001a422: 120c addi a1,sp,288 - c001a424: 1108 addi a0,sp,160 - c001a426: 3dc3c0ef jal ra,c0056802 - c001a42a: f169 bnez a0,c001a3ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11552 + c001a5ec: fca498e3 bne s1,a0,c001a5bc + c001a5f0: 8626 mv a2,s1 + c001a5f2: 120c addi a1,sp,288 + c001a5f4: 1108 addi a0,sp,160 + c001a5f6: 3dc3c0ef jal ra,c00569d2 + c001a5fa: f169 bnez a0,c001a5bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11560 if (buf1[0] == '-') - c001a42c: 0a014703 lbu a4,160(sp) - c001a430: 02d00793 li a5,45 - c001a434: faf70de3 beq a4,a5,c001a3ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11555 + c001a5fc: 0a014703 lbu a4,160(sp) + c001a600: 02d00793 li a5,45 + c001a604: faf70de3 beq a4,a5,c001a5be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11563 rounding_mode = FE_UPWARD; - c001a438: 490d li s2,3 - c001a43a: bf55 j c001a3ee + c001a608: 490d li s2,3 + c001a60a: bf55 j c001a5be js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11617 if (is_fixed) { - c001a43c: 00397793 andi a5,s2,3 - c001a440: 4705 li a4,1 - c001a442: 1ce78f63 beq a5,a4,c001a620 - c001a446: 4445 li s0,17 - c001a448: 4a85 li s5,1 + c001a60c: 00397793 andi a5,s2,3 + c001a610: 4705 li a4,1 + c001a612: 1ce78f63 beq a5,a4,c001a7f0 + c001a616: 4445 li s0,17 + c001a618: 4a85 li s5,1 js_ecvt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11482 while (n_digits >= 2 && buf[n_digits - 1] == '0') - c001a44a: 4b05 li s6,1 - c001a44c: 03000b93 li s7,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11470 + c001a61a: 4b05 li s6,1 + c001a61c: 03000b93 li s7,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11478 js_ecvt1(d, n_digits, decpt, sign, buf, FE_TONEAREST, - c001a450: 22840553 fmv.d fa0,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11469 + c001a620: 22840553 fmv.d fa0,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11477 n_digits = (n_digits_min + n_digits_max) / 2; - c001a454: 015404bb addw s1,s0,s5 - c001a458: 0014da1b srliw s4,s1,0x1 - c001a45c: 0014d49b srliw s1,s1,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11470 + c001a624: 015404bb addw s1,s0,s5 + c001a628: 0014da1b srliw s4,s1,0x1 + c001a62c: 0014d49b srliw s1,s1,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11478 js_ecvt1(d, n_digits, decpt, sign, buf, FE_TONEAREST, - c001a460: 101c addi a5,sp,32 - c001a462: 4701 li a4,0 - c001a464: 1214 addi a3,sp,288 - c001a466: 0830 addi a2,sp,24 - c001a468: 086c addi a1,sp,28 - c001a46a: 8526 mv a0,s1 - c001a46c: 818ec0ef jal ra,c0006484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11472 + c001a630: 101c addi a5,sp,32 + c001a632: 4701 li a4,0 + c001a634: 1214 addi a3,sp,288 + c001a636: 0830 addi a2,sp,24 + c001a638: 086c addi a1,sp,28 + c001a63a: 8526 mv a0,s1 + c001a63c: f37eb0ef jal ra,c0006572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11480 if (strtod(buf_tmp, NULL) == d) { - c001a470: 4581 li a1,0 - c001a472: 1008 addi a0,sp,32 - c001a474: 71d3b0ef jal ra,c0056390 - c001a478: a2a427d3 feq.d a5,fs0,fa0 - c001a47c: cfd1 beqz a5,c001a518 - c001a47e: fffa079b addiw a5,s4,-1 - c001a482: 1218 addi a4,sp,288 - c001a484: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11474 + c001a640: 4581 li a1,0 + c001a642: 1008 addi a0,sp,32 + c001a644: 71d3b0ef jal ra,c0056560 + c001a648: a2a427d3 feq.d a5,fs0,fa0 + c001a64c: cfd1 beqz a5,c001a6e8 + c001a64e: fffa079b addiw a5,s4,-1 + c001a652: 1218 addi a4,sp,288 + c001a654: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11482 while (n_digits >= 2 && buf[n_digits - 1] == '0') - c001a486: 009b5963 bge s6,s1,c001a498 - c001a48a: 0007c703 lbu a4,0(a5) - c001a48e: 17fd addi a5,a5,-1 - c001a490: fff4869b addiw a3,s1,-1 - c001a494: 09770063 beq a4,s7,c001a514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11476 + c001a656: 009b5963 bge s6,s1,c001a668 + c001a65a: 0007c703 lbu a4,0(a5) + c001a65e: 17fd addi a5,a5,-1 + c001a660: fff4869b addiw a3,s1,-1 + c001a664: 09770063 beq a4,s7,c001a6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11484 n_digits_max = n_digits; - c001a498: 0004841b sext.w s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11468 + c001a668: 0004841b sext.w s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11476 while (n_digits_min < n_digits_max) { - c001a49c: fa8aeae3 bltu s5,s0,c001a450 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11481 + c001a66c: fa8aeae3 bltu s5,s0,c001a620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11489 n_digits = n_digits_max; - c001a4a0: 2401 sext.w s0,s0 + c001a670: 2401 sext.w s0,s0 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11620 n_max = 21; - c001a4a2: 4a55 li s4,21 + c001a672: 4a55 li s4,21 js_ecvt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11490 rounding_mode = FE_TONEAREST; - c001a4a4: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11512 + c001a674: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11520 js_ecvt1(d, n_digits, decpt, sign, buf, rounding_mode, - c001a4a6: 22840553 fmv.d fa0,fs0 - c001a4aa: 101c addi a5,sp,32 - c001a4ac: 1214 addi a3,sp,288 - c001a4ae: 0830 addi a2,sp,24 - c001a4b0: 086c addi a1,sp,28 - c001a4b2: 8522 mv a0,s0 - c001a4b4: fd1eb0ef jal ra,c0006484 + c001a676: 22840553 fmv.d fa0,fs0 + c001a67a: 101c addi a5,sp,32 + c001a67c: 1214 addi a3,sp,288 + c001a67e: 0830 addi a2,sp,24 + c001a680: 086c addi a1,sp,28 + c001a682: 8522 mv a0,s0 + c001a684: eefeb0ef jal ra,c0006572 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11626 if (sign) - c001a4b8: 4762 lw a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11616 + c001a688: 4762 lw a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11624 n = decpt; /* d=10^(n-k)*(buf1) i.e. d= < x.yyyy 10^(n-1) */ - c001a4ba: 44f2 lw s1,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11617 + c001a68a: 44f2 lw s1,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11625 q = buf; - c001a4bc: 111c addi a5,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11618 + c001a68c: 111c addi a5,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11626 if (sign) - c001a4be: c719 beqz a4,c001a4cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11619 + c001a68e: c719 beqz a4,c001a69c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11627 *q++ = '-'; - c001a4c0: 02d00793 li a5,45 - c001a4c4: 0af10023 sb a5,160(sp) - c001a4c8: 0a110793 addi a5,sp,161 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11620 + c001a690: 02d00793 li a5,45 + c001a694: 0af10023 sb a5,160(sp) + c001a698: 0a110793 addi a5,sp,161 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11628 if (flags & JS_DTOA_FORCE_EXP) - c001a4cc: 00497913 andi s2,s2,4 - c001a4d0: 0e091763 bnez s2,c001a5be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11622 + c001a69c: 00497913 andi s2,s2,4 + c001a6a0: 0e091763 bnez s2,c001a78e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11630 if (n >= 1 && n <= n_max) { - c001a4d4: 0a905263 blez s1,c001a578 - c001a4d8: 0e9a4363 blt s4,s1,c001a5be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11623 + c001a6a4: 0a905263 blez s1,c001a748 + c001a6a8: 0e9a4363 blt s4,s1,c001a78e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11631 if (k <= n) { - c001a4dc: 0484ca63 blt s1,s0,c001a530 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11624 + c001a6ac: 0484ca63 blt s1,s0,c001a700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11632 memcpy(q, buf1, k); - c001a4e0: 8622 mv a2,s0 - c001a4e2: 853e mv a0,a5 - c001a4e4: 120c addi a1,sp,288 - c001a4e6: 4f43c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11627 + c001a6b0: 8622 mv a2,s0 + c001a6b2: 853e mv a0,a5 + c001a6b4: 120c addi a1,sp,288 + c001a6b6: 4f43c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11635 *q++ = '0'; - c001a4ea: 4084873b subw a4,s1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11625 + c001a6ba: 4084873b subw a4,s1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11633 q += k; - c001a4ee: 008507b3 add a5,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11627 + c001a6be: 008507b3 add a5,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11635 *q++ = '0'; - c001a4f2: 863a mv a2,a4 - c001a4f4: 00075363 bgez a4,c001a4fa - c001a4f8: 4601 li a2,0 - c001a4fa: 0006041b sext.w s0,a2 - c001a4fe: 853e mv a0,a5 - c001a500: 8622 mv a2,s0 - c001a502: 03000593 li a1,48 - c001a506: 36a3c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11628 - *q = '\0'; - c001a50a: 008507b3 add a5,a0,s0 + c001a6c2: 863a mv a2,a4 + c001a6c4: 00075363 bgez a4,c001a6ca + c001a6c8: 4601 li a2,0 + c001a6ca: 0006041b sext.w s0,a2 + c001a6ce: 853e mv a0,a5 + c001a6d0: 8622 mv a2,s0 + c001a6d2: 03000593 li a1,48 + c001a6d6: 36a3c0ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11636 *q = '\0'; - c001a50e: 00078023 sb zero,0(a5) - c001a512: bd95 j c001a386 + c001a6da: 008507b3 add a5,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11644 + *q = '\0'; + c001a6de: 00078023 sb zero,0(a5) + c001a6e2: bd95 j c001a556 js_ecvt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11483 n_digits--; - c001a514: 84b6 mv s1,a3 - c001a516: bf85 j c001a486 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11478 + c001a6e4: 84b6 mv s1,a3 + c001a6e6: bf85 j c001a656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11486 n_digits_min = n_digits + 1; - c001a518: 001a0a9b addiw s5,s4,1 - c001a51c: b741 j c001a49c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11501 + c001a6e8: 001a0a9b addiw s5,s4,1 + c001a6ec: b741 j c001a66c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11509 if (memcmp(buf1, buf2, n_digits + 1) == 0 && decpt1 == decpt2) { - c001a51e: 4742 lw a4,16(sp) - c001a520: 47e2 lw a5,24(sp) - c001a522: 14f71e63 bne a4,a5,c001a67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11503 + c001a6ee: 4742 lw a4,16(sp) + c001a6f0: 47e2 lw a5,24(sp) + c001a6f2: 14f71e63 bne a4,a5,c001a84e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11511 if (sign1) - c001a526: 4752 lw a4,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11506 + c001a6f6: 4752 lw a4,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11514 rounding_mode = FE_UPWARD; - c001a528: 00173713 seqz a4,a4 - c001a52c: 0709 addi a4,a4,2 - c001a52e: aa89 j c001a680 + c001a6f8: 00173713 seqz a4,a4 + c001a6fc: 0709 addi a4,a4,2 + c001a6fe: aa89 j c001a850 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11639 memcpy(q, buf1, n); - c001a530: 853e mv a0,a5 - c001a532: 8626 mv a2,s1 - c001a534: 120c addi a1,sp,288 - c001a536: 4a43c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11633 + c001a700: 853e mv a0,a5 + c001a702: 8626 mv a2,s1 + c001a704: 120c addi a1,sp,288 + c001a706: 4a43c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11641 *q++ = '.'; - c001a53a: 02e00713 li a4,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11632 + c001a70a: 02e00713 li a4,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11640 q += n; - c001a53e: 009507b3 add a5,a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11633 + c001a70e: 009507b3 add a5,a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11641 *q++ = '.'; - c001a542: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11634 + c001a712: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11642 for(i = 0; i < (k - n); i++) - c001a546: 9c05 subw s0,s0,s1 - c001a548: 4701 li a4,0 - c001a54a: 0007069b sext.w a3,a4 - c001a54e: 0086c963 blt a3,s0,c001a560 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11636 + c001a716: 9c05 subw s0,s0,s1 + c001a718: 4701 li a4,0 + c001a71a: 0007069b sext.w a3,a4 + c001a71e: 0086c963 blt a3,s0,c001a730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11644 *q = '\0'; - c001a552: 8722 mv a4,s0 - c001a554: 00045363 bgez s0,c001a55a - c001a558: 4701 li a4,0 - c001a55a: 2705 addiw a4,a4,1 - c001a55c: 97ba add a5,a5,a4 - c001a55e: bf45 j c001a50e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11635 + c001a722: 8722 mv a4,s0 + c001a724: 00045363 bgez s0,c001a72a + c001a728: 4701 li a4,0 + c001a72a: 2705 addiw a4,a4,1 + c001a72c: 97ba add a5,a5,a4 + c001a72e: bf45 j c001a6de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11643 *q++ = buf1[n + i]; - c001a560: 009706bb addw a3,a4,s1 - c001a564: 130c addi a1,sp,416 - c001a566: 96ae add a3,a3,a1 - c001a568: f806c683 lbu a3,-128(a3) - c001a56c: 00e78633 add a2,a5,a4 - c001a570: 0705 addi a4,a4,1 - c001a572: 00d600a3 sb a3,1(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11634 + c001a730: 009706bb addw a3,a4,s1 + c001a734: 130c addi a1,sp,416 + c001a736: 96ae add a3,a3,a1 + c001a738: f806c683 lbu a3,-128(a3) + c001a73c: 00e78633 add a2,a5,a4 + c001a740: 0705 addi a4,a4,1 + c001a742: 00d600a3 sb a3,1(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11642 for(i = 0; i < (k - n); i++) - c001a576: bfd1 j c001a54a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11638 + c001a746: bfd1 j c001a71a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11646 } else if (n >= -5 && n <= 0) { - c001a578: 0054871b addiw a4,s1,5 - c001a57c: 4695 li a3,5 - c001a57e: 04e6e063 bltu a3,a4,c001a5be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11639 + c001a748: 0054871b addiw a4,s1,5 + c001a74c: 4695 li a3,5 + c001a74e: 04e6e063 bltu a3,a4,c001a78e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11647 *q++ = '0'; - c001a582: 03000713 li a4,48 - c001a586: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11640 + c001a752: 03000713 li a4,48 + c001a756: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11648 *q++ = '.'; - c001a58a: 02e00693 li a3,46 - c001a58e: 00278713 addi a4,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11642 + c001a75a: 02e00693 li a3,46 + c001a75e: 00278713 addi a4,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11650 *q++ = '0'; - c001a592: 409004bb negw s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11640 + c001a762: 409004bb negw s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11648 *q++ = '.'; - c001a596: 00d780a3 sb a3,1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11642 + c001a766: 00d780a3 sb a3,1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11650 *q++ = '0'; - c001a59a: 8626 mv a2,s1 - c001a59c: 03000593 li a1,48 - c001a5a0: 853a mv a0,a4 - c001a5a2: 2ce3c0ef jal ra,c0056870 - c001a5a6: 00950733 add a4,a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11643 + c001a76a: 8626 mv a2,s1 + c001a76c: 03000593 li a1,48 + c001a770: 853a mv a0,a4 + c001a772: 2ce3c0ef jal ra,c0056a40 + c001a776: 00950733 add a4,a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11651 memcpy(q, buf1, k); - c001a5aa: 853a mv a0,a4 - c001a5ac: 8622 mv a2,s0 - c001a5ae: 120c addi a1,sp,288 - c001a5b0: 42a3c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11645 + c001a77a: 853a mv a0,a4 + c001a77c: 8622 mv a2,s0 + c001a77e: 120c addi a1,sp,288 + c001a780: 42a3c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11653 *q = '\0'; - c001a5b4: 00850733 add a4,a0,s0 - c001a5b8: 00070023 sb zero,0(a4) - c001a5bc: b3e9 j c001a386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11649 + c001a784: 00850733 add a4,a0,s0 + c001a788: 00070023 sb zero,0(a4) + c001a78c: b3e9 j c001a556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11657 *q++ = buf1[0]; - c001a5be: 12014703 lbu a4,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11650 + c001a78e: 12014703 lbu a4,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11658 if (k > 1) { - c001a5c2: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11649 + c001a792: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11657 *q++ = buf1[0]; - c001a5c4: 00e78023 sb a4,0(a5) - c001a5c8: 00178713 addi a4,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11650 + c001a794: 00e78023 sb a4,0(a5) + c001a798: 00178713 addi a4,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11658 if (k > 1) { - c001a5cc: 0286d363 bge a3,s0,c001a5f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11653 + c001a79c: 0286d363 bge a3,s0,c001a7c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11661 *q++ = buf1[i]; - c001a5d0: 347d addiw s0,s0,-1 - c001a5d2: 1402 slli s0,s0,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11651 + c001a7a0: 347d addiw s0,s0,-1 + c001a7a2: 1402 slli s0,s0,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11659 *q++ = '.'; - c001a5d4: 00278713 addi a4,a5,2 - c001a5d8: 02e00693 li a3,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11653 + c001a7a4: 00278713 addi a4,a5,2 + c001a7a8: 02e00693 li a3,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11661 *q++ = buf1[i]; - c001a5dc: 9001 srli s0,s0,0x20 - c001a5de: 853a mv a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11651 + c001a7ac: 9001 srli s0,s0,0x20 + c001a7ae: 853a mv a0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11659 *q++ = '.'; - c001a5e0: 00d780a3 sb a3,1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11653 + c001a7b0: 00d780a3 sb a3,1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11661 *q++ = buf1[i]; - c001a5e4: 8622 mv a2,s0 - c001a5e6: 12110593 addi a1,sp,289 - c001a5ea: 3f03c0ef jal ra,c00569da - c001a5ee: 00850733 add a4,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11655 + c001a7b4: 8622 mv a2,s0 + c001a7b6: 12110593 addi a1,sp,289 + c001a7ba: 3f03c0ef jal ra,c0056baa + c001a7be: 00850733 add a4,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11663 *q++ = 'e'; - c001a5f2: 06500793 li a5,101 - c001a5f6: 00f70023 sb a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11656 + c001a7c2: 06500793 li a5,101 + c001a7c6: 00f70023 sb a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11664 p = n - 1; - c001a5fa: fff4861b addiw a2,s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11655 + c001a7ca: fff4861b addiw a2,s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11663 *q++ = 'e'; - c001a5fe: 00170513 addi a0,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11657 + c001a7ce: 00170513 addi a0,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11665 if (p >= 0) - c001a602: 00064863 bltz a2,c001a612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11658 + c001a7d2: 00064863 bltz a2,c001a7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11666 *q++ = '+'; - c001a606: 02b00793 li a5,43 - c001a60a: 00270513 addi a0,a4,2 - c001a60e: 00f700a3 sb a5,1(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11659 + c001a7d6: 02b00793 li a5,43 + c001a7da: 00270513 addi a0,a4,2 + c001a7de: 00f700a3 sb a5,1(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11667 sprintf(q, "%d", p); - c001a612: 00044597 auipc a1,0x44 - c001a616: c0e58593 addi a1,a1,-1010 # c005e220 - c001a61a: 3b3390ef jal ra,c00541cc - c001a61e: b3a5 j c001a386 + c001a7e2: 00044597 auipc a1,0x44 + c001a7e6: c9e58593 addi a1,a1,-866 # c005e480 + c001a7ea: 3b3390ef jal ra,c005439c + c001a7ee: b3a5 j c001a556 js_ecvt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11493 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11501 js_ecvt1(d, n_digits + 1, &decpt1, &sign1, buf1, FE_TONEAREST, - c001a620: 22840553 fmv.d fa0,fs0 - c001a624: 0014049b addiw s1,s0,1 - c001a628: 101c addi a5,sp,32 - c001a62a: 4701 li a4,0 - c001a62c: 1114 addi a3,sp,160 - c001a62e: 0850 addi a2,sp,20 - c001a630: 080c addi a1,sp,16 - c001a632: 8526 mv a0,s1 - c001a634: e51eb0ef jal ra,c0006484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11496 + c001a7f0: 22840553 fmv.d fa0,fs0 + c001a7f4: 0014049b addiw s1,s0,1 + c001a7f8: 101c addi a5,sp,32 + c001a7fa: 4701 li a4,0 + c001a7fc: 1114 addi a3,sp,160 + c001a7fe: 0850 addi a2,sp,20 + c001a800: 080c addi a1,sp,16 + c001a802: 8526 mv a0,s1 + c001a804: d6feb0ef jal ra,c0006572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11504 if (buf1[n_digits] == '5') { - c001a638: 131c addi a5,sp,416 - c001a63a: 97a2 add a5,a5,s0 - c001a63c: f007c703 lbu a4,-256(a5) - c001a640: 03500793 li a5,53 - c001a644: 02f71d63 bne a4,a5,c001a67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11497 + c001a808: 131c addi a5,sp,416 + c001a80a: 97a2 add a5,a5,s0 + c001a80c: f007c703 lbu a4,-256(a5) + c001a810: 03500793 li a5,53 + c001a814: 02f71d63 bne a4,a5,c001a84e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11505 js_ecvt1(d, n_digits + 1, &decpt1, &sign1, buf1, FE_DOWNWARD, - c001a648: 22840553 fmv.d fa0,fs0 - c001a64c: 101c addi a5,sp,32 - c001a64e: 4709 li a4,2 - c001a650: 1114 addi a3,sp,160 - c001a652: 0850 addi a2,sp,20 - c001a654: 080c addi a1,sp,16 - c001a656: 8526 mv a0,s1 - c001a658: e2deb0ef jal ra,c0006484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11499 + c001a818: 22840553 fmv.d fa0,fs0 + c001a81c: 101c addi a5,sp,32 + c001a81e: 4709 li a4,2 + c001a820: 1114 addi a3,sp,160 + c001a822: 0850 addi a2,sp,20 + c001a824: 080c addi a1,sp,16 + c001a826: 8526 mv a0,s1 + c001a828: d4beb0ef jal ra,c0006572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11507 js_ecvt1(d, n_digits + 1, &decpt2, &sign2, buf2, FE_UPWARD, - c001a65c: 22840553 fmv.d fa0,fs0 - c001a660: 0870 addi a2,sp,28 - c001a662: 082c addi a1,sp,24 - c001a664: 8526 mv a0,s1 - c001a666: 101c addi a5,sp,32 - c001a668: 470d li a4,3 - c001a66a: 1214 addi a3,sp,288 - c001a66c: e19eb0ef jal ra,c0006484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11501 + c001a82c: 22840553 fmv.d fa0,fs0 + c001a830: 0870 addi a2,sp,28 + c001a832: 082c addi a1,sp,24 + c001a834: 8526 mv a0,s1 + c001a836: 101c addi a5,sp,32 + c001a838: 470d li a4,3 + c001a83a: 1214 addi a3,sp,288 + c001a83c: d37eb0ef jal ra,c0006572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11509 if (memcmp(buf1, buf2, n_digits + 1) == 0 && decpt1 == decpt2) { - c001a670: 8626 mv a2,s1 - c001a672: 120c addi a1,sp,288 - c001a674: 1108 addi a0,sp,160 - c001a676: 18c3c0ef jal ra,c0056802 - c001a67a: ea0502e3 beqz a0,c001a51e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11484 + c001a840: 8626 mv a2,s1 + c001a842: 120c addi a1,sp,288 + c001a844: 1108 addi a0,sp,160 + c001a846: 18c3c0ef jal ra,c00569d2 + c001a84a: ea0502e3 beqz a0,c001a6ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11492 rounding_mode = FE_TONEAREST; - c001a67e: 4701 li a4,0 + c001a84e: 4701 li a4,0 js_dtoa1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11618 n_max = n_digits; - c001a680: 8a22 mv s4,s0 - c001a682: b515 j c001a4a6 + c001a850: 8a22 mv s4,s0 + c001a852: b515 j c001a676 -00000000c001a684 : +00000000c001a854 : JS_ToStringInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11674 -{ - c001a684: 7159 addi sp,sp,-112 - c001a686: f0a2 sd s0,96(sp) - c001a688: e432 sd a2,8(sp) - c001a68a: f486 sd ra,104(sp) - c001a68c: eca6 sd s1,88(sp) - c001a68e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11679 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11682 +{ + c001a854: 7159 addi sp,sp,-112 + c001a856: f0a2 sd s0,96(sp) + c001a858: e432 sd a2,8(sp) + c001a85a: f486 sd ra,104(sp) + c001a85c: eca6 sd s1,88(sp) + c001a85e: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11687 tag = JS_VALUE_GET_NORM_TAG(val); - c001a690: 2601 sext.w a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11680 + c001a860: 2601 sext.w a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11688 switch(tag) { - c001a692: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11674 + c001a862: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11682 { - c001a694: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11680 + c001a864: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11688 switch(tag) { - c001a696: 04c7f763 bgeu a5,a2,c001a6e4 - c001a69a: 57d5 li a5,-11 - c001a69c: 00c7e763 bltu a5,a2,c001a6aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11728 + c001a866: 04c7f763 bgeu a5,a2,c001a8b4 + c001a86a: 57d5 li a5,-11 + c001a86c: 00c7e763 bltu a5,a2,c001a87a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11736 str = "[unsupported type]"; - c001a6a0: 00044597 auipc a1,0x44 - c001a6a4: b8858593 addi a1,a1,-1144 # c005e228 - c001a6a8: a805 j c001a6d8 - c001a6aa: 2629 addiw a2,a2,10 - c001a6ac: 0006071b sext.w a4,a2 - c001a6b0: 47a5 li a5,9 - c001a6b2: fee7e7e3 bltu a5,a4,c001a6a0 - c001a6b6: 02061793 slli a5,a2,0x20 - c001a6ba: 01e7d613 srli a2,a5,0x1e - c001a6be: 00044717 auipc a4,0x44 - c001a6c2: bba70713 addi a4,a4,-1094 # c005e278 - c001a6c6: 963a add a2,a2,a4 - c001a6c8: 421c lw a5,0(a2) - c001a6ca: 84b6 mv s1,a3 - c001a6cc: 97ba add a5,a5,a4 - c001a6ce: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11680 + c001a870: 00044597 auipc a1,0x44 + c001a874: c1858593 addi a1,a1,-1000 # c005e488 + c001a878: a805 j c001a8a8 + c001a87a: 2629 addiw a2,a2,10 + c001a87c: 0006071b sext.w a4,a2 + c001a880: 47a5 li a5,9 + c001a882: fee7e7e3 bltu a5,a4,c001a870 + c001a886: 02061793 slli a5,a2,0x20 + c001a88a: 01e7d613 srli a2,a5,0x1e + c001a88e: 00044717 auipc a4,0x44 + c001a892: c4a70713 addi a4,a4,-950 # c005e4d8 + c001a896: 963a add a2,a2,a4 + c001a898: 421c lw a5,0(a2) + c001a89a: 84b6 mv s1,a3 + c001a89c: 97ba add a5,a5,a4 + c001a89e: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11688 switch(tag) { - c001a6d0: 00044597 auipc a1,0x44 - c001a6d4: b7058593 addi a1,a1,-1168 # c005e240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11730 + c001a8a0: 00044597 auipc a1,0x44 + c001a8a4: c0058593 addi a1,a1,-1024 # c005e4a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11738 return JS_NewString(ctx, str); - c001a6d8: 8522 mv a0,s0 - c001a6da: b48ff0ef jal ra,c0019a22 - c001a6de: f02a sd a0,32(sp) - c001a6e0: f42e sd a1,40(sp) - c001a6e2: a895 j c001a756 - c001a6e4: 00044717 auipc a4,0x44 - c001a6e8: bbc70713 addi a4,a4,-1092 # c005e2a0 - c001a6ec: 060a slli a2,a2,0x2 - c001a6ee: 963a add a2,a2,a4 - c001a6f0: 421c lw a5,0(a2) - c001a6f2: 97ba add a5,a5,a4 - c001a6f4: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11684 + c001a8a8: 8522 mv a0,s0 + c001a8aa: b48ff0ef jal ra,c0019bf2 + c001a8ae: f02a sd a0,32(sp) + c001a8b0: f42e sd a1,40(sp) + c001a8b2: a895 j c001a926 + c001a8b4: 00044717 auipc a4,0x44 + c001a8b8: c4c70713 addi a4,a4,-948 # c005e500 + c001a8bc: 060a slli a2,a2,0x2 + c001a8be: 963a add a2,a2,a4 + c001a8c0: 421c lw a5,0(a2) + c001a8c2: 97ba add a5,a5,a4 + c001a8c4: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11692 snprintf(buf, sizeof(buf), "%d", JS_VALUE_GET_INT(val)); - c001a6f6: 4682 lw a3,0(sp) - c001a6f8: 02000593 li a1,32 - c001a6fc: 00044617 auipc a2,0x44 - c001a700: b2460613 addi a2,a2,-1244 # c005e220 - c001a704: 1808 addi a0,sp,48 - c001a706: 2ff390ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11685 + c001a8c6: 4682 lw a3,0(sp) + c001a8c8: 02000593 li a1,32 + c001a8cc: 00044617 auipc a2,0x44 + c001a8d0: bb460613 addi a2,a2,-1100 # c005e480 + c001a8d4: 1808 addi a0,sp,48 + c001a8d6: 2ff390ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11693 str = buf; - c001a70a: 180c addi a1,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11686 + c001a8da: 180c addi a1,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11694 goto new_string; - c001a70c: b7f1 j c001a6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11688 + c001a8dc: b7f1 j c001a8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11696 return JS_AtomToString(ctx, JS_VALUE_GET_BOOL(val) ? - c001a70e: 4582 lw a1,0(sp) - c001a710: 00b035b3 snez a1,a1 - c001a714: 0589 addi a1,a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11691 + c001a8de: 4582 lw a1,0(sp) + c001a8e0: 00b035b3 snez a1,a1 + c001a8e4: 0589 addi a1,a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11699 return JS_AtomToString(ctx, JS_ATOM_null); - c001a716: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 -} - c001a718: 7406 ld s0,96(sp) - c001a71a: 70a6 ld ra,104(sp) - c001a71c: 64e6 ld s1,88(sp) - c001a71e: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11691 + c001a8e6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 +} + c001a8e8: 7406 ld s0,96(sp) + c001a8ea: 70a6 ld ra,104(sp) + c001a8ec: 64e6 ld s1,88(sp) + c001a8ee: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11699 return JS_AtomToString(ctx, JS_ATOM_null); - c001a720: c1cff06f j c0019b3c - c001a724: 4585 li a1,1 - c001a726: bfc5 j c001a716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11693 + c001a8f0: c1cff06f j c0019d0c + c001a8f4: 4585 li a1,1 + c001a8f6: bfc5 j c001a8e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11701 return JS_AtomToString(ctx, JS_ATOM_undefined); - c001a728: 04600593 li a1,70 - c001a72c: b7ed j c001a716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11695 + c001a8f8: 04600593 li a1,70 + c001a8fc: b7ed j c001a8e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11703 return JS_EXCEPTION; - c001a72e: f002 sd zero,32(sp) - c001a730: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11704 + c001a8fe: f002 sd zero,32(sp) + c001a900: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11712 return ret; - c001a732: f43e sd a5,40(sp) - c001a734: a00d j c001a756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11699 + c001a902: f43e sd a5,40(sp) + c001a904: a00d j c001a926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11707 val1 = JS_ToPrimitive(ctx, val, HINT_STRING); - c001a736: 6622 ld a2,8(sp) - c001a738: 6582 ld a1,0(sp) - c001a73a: 4681 li a3,0 - c001a73c: 8522 mv a0,s0 - c001a73e: da8ff0ef jal ra,c0019ce6 - c001a742: e82a sd a0,16(sp) - c001a744: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11700 + c001a906: 6622 ld a2,8(sp) + c001a908: 6582 ld a1,0(sp) + c001a90a: 4681 li a3,0 + c001a90c: 8522 mv a0,s0 + c001a90e: da8ff0ef jal ra,c0019eb6 + c001a912: e82a sd a0,16(sp) + c001a914: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11708 if (JS_IsException(val1)) - c001a746: 0005871b sext.w a4,a1 - c001a74a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11699 + c001a916: 0005871b sext.w a4,a1 + c001a91a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11707 val1 = JS_ToPrimitive(ctx, val, HINT_STRING); - c001a74c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11700 + c001a91c: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11708 if (JS_IsException(val1)) - c001a74e: 00f71b63 bne a4,a5,c001a764 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11701 + c001a91e: 00f71b63 bne a4,a5,c001a934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11709 return val1; - c001a752: f02a sd a0,32(sp) - c001a754: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 (discriminator 1) -} - c001a756: 70a6 ld ra,104(sp) - c001a758: 7406 ld s0,96(sp) - c001a75a: 7502 ld a0,32(sp) - c001a75c: 75a2 ld a1,40(sp) - c001a75e: 64e6 ld s1,88(sp) - c001a760: 6165 addi sp,sp,112 - c001a762: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11702 + c001a922: f02a sd a0,32(sp) + c001a924: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 (discriminator 1) +} + c001a926: 70a6 ld ra,104(sp) + c001a928: 7406 ld s0,96(sp) + c001a92a: 7502 ld a0,32(sp) + c001a92c: 75a2 ld a1,40(sp) + c001a92e: 64e6 ld s1,88(sp) + c001a930: 6165 addi sp,sp,112 + c001a932: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11710 ret = JS_ToStringInternal(ctx, val1, is_ToPropertyKey); - c001a764: 86a6 mv a3,s1 - c001a766: 85aa mv a1,a0 - c001a768: 8522 mv a0,s0 - c001a76a: f1bff0ef jal ra,c001a684 - c001a76e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11703 + c001a934: 86a6 mv a3,s1 + c001a936: 85aa mv a1,a0 + c001a938: 8522 mv a0,s0 + c001a93a: f1bff0ef jal ra,c001a854 + c001a93e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11711 JS_FreeValue(ctx, val1); - c001a770: 6662 ld a2,24(sp) - c001a772: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11702 + c001a940: 6662 ld a2,24(sp) + c001a942: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11710 ret = JS_ToStringInternal(ctx, val1, is_ToPropertyKey); - c001a774: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11703 + c001a944: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11711 JS_FreeValue(ctx, val1); - c001a776: 8522 mv a0,s0 - c001a778: bc0ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11704 + c001a946: 8522 mv a0,s0 + c001a948: adeed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11712 return ret; - c001a77c: 77c2 ld a5,48(sp) - c001a77e: f03e sd a5,32(sp) - c001a780: 77e2 ld a5,56(sp) - c001a782: bf45 j c001a732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11711 + c001a94c: 77c2 ld a5,48(sp) + c001a94e: f03e sd a5,32(sp) + c001a950: 77e2 ld a5,56(sp) + c001a952: bf45 j c001a902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11719 if (is_ToPropertyKey) { - c001a784: ca89 beqz a3,c001a796 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a954: ca89 beqz a3,c001a966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a786: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11712 + c001a956: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 return JS_DupValue(ctx, val); - c001a788: 6502 ld a0,0(sp) - c001a78a: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a958: 6502 ld a0,0(sp) + c001a95a: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a78c: 70a6 ld ra,104(sp) - c001a78e: 64e6 ld s1,88(sp) - c001a790: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11712 + c001a95c: 70a6 ld ra,104(sp) + c001a95e: 64e6 ld s1,88(sp) + c001a960: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 return JS_DupValue(ctx, val); - c001a792: eddeb06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11714 + c001a962: dfbeb06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11722 return JS_ThrowTypeError(ctx, "cannot convert symbol to string"); - c001a796: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a966: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a798: 7406 ld s0,96(sp) - c001a79a: 70a6 ld ra,104(sp) - c001a79c: 64e6 ld s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11714 + c001a968: 7406 ld s0,96(sp) + c001a96a: 70a6 ld ra,104(sp) + c001a96c: 64e6 ld s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11722 return JS_ThrowTypeError(ctx, "cannot convert symbol to string"); - c001a79e: 00044597 auipc a1,0x44 - c001a7a2: aba58593 addi a1,a1,-1350 # c005e258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a96e: 00044597 auipc a1,0x44 + c001a972: b4a58593 addi a1,a1,-1206 # c005e4b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7a6: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11714 + c001a976: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11722 return JS_ThrowTypeError(ctx, "cannot convert symbol to string"); - c001a7a8: c4ff806f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a978: b6df806f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7ac: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11717 + c001a97c: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11725 return js_dtoa(ctx, JS_VALUE_GET_FLOAT64(val), 10, 0, - c001a7ae: 2502 fld fa0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a97e: 2502 fld fa0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7b0: 70a6 ld ra,104(sp) - c001a7b2: 64e6 ld s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11717 + c001a980: 70a6 ld ra,104(sp) + c001a982: 64e6 ld s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11725 return js_dtoa(ctx, JS_VALUE_GET_FLOAT64(val), 10, 0, - c001a7b4: 4681 li a3,0 - c001a7b6: 4601 li a2,0 - c001a7b8: 45a9 li a1,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a984: 4681 li a3,0 + c001a986: 4601 li a2,0 + c001a988: 45a9 li a1,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7ba: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11717 + c001a98a: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11725 return js_dtoa(ctx, JS_VALUE_GET_FLOAT64(val), 10, 0, - c001a7bc: ae7ff06f j c001a2a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 + c001a98c: ae7ff06f j c001a472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11728 return ctx->rt->bigint_ops.to_string(ctx, val); - c001a7c0: 6c1c ld a5,24(s0) - c001a7c2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a990: 6c1c ld a5,24(s0) + c001a992: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7c4: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 + c001a994: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11728 return ctx->rt->bigint_ops.to_string(ctx, val); - c001a7c6: 6582 ld a1,0(sp) - c001a7c8: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a996: 6582 ld a1,0(sp) + c001a998: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7ca: 70a6 ld ra,104(sp) - c001a7cc: 64e6 ld s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 + c001a99a: 70a6 ld ra,104(sp) + c001a99c: 64e6 ld s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11728 return ctx->rt->bigint_ops.to_string(ctx, val); - c001a7ce: 2087b783 ld a5,520(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11732 + c001a99e: 2087b783 ld a5,520(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 } - c001a7d2: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11720 + c001a9a2: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11728 return ctx->rt->bigint_ops.to_string(ctx, val); - c001a7d4: 8782 jr a5 + c001a9a4: 8782 jr a5 -00000000c001a7d6 : +00000000c001a9a6 : JS_ToString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11735 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11743 { - c001a7d6: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11736 + c001a9a6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11744 return JS_ToStringInternal(ctx, val, FALSE); - c001a7d8: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11737 + c001a9a8: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11745 } - c001a7da: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11736 + c001a9aa: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11744 return JS_ToStringInternal(ctx, val, FALSE); - c001a7dc: ea9ff06f j c001a684 + c001a9ac: ea9ff06f j c001a854 -00000000c001a7e0 : +00000000c001a9b0 : JS_ToStringFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11748 { - c001a7e0: 7139 addi sp,sp,-64 - c001a7e2: fc06 sd ra,56(sp) - c001a7e4: f822 sd s0,48(sp) - c001a7e6: e432 sd a2,8(sp) - c001a7e8: 842a mv s0,a0 - c001a7ea: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11742 + c001a9b0: 7139 addi sp,sp,-64 + c001a9b2: fc06 sd ra,56(sp) + c001a9b4: f822 sd s0,48(sp) + c001a9b6: e432 sd a2,8(sp) + c001a9b8: 842a mv s0,a0 + c001a9ba: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11750 ret = JS_ToString(ctx, val); - c001a7ec: febff0ef jal ra,c001a7d6 - c001a7f0: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11743 + c001a9bc: febff0ef jal ra,c001a9a6 + c001a9c0: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11751 JS_FreeValue(ctx, val); - c001a7f2: 6622 ld a2,8(sp) - c001a7f4: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11742 + c001a9c2: 6622 ld a2,8(sp) + c001a9c4: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11750 ret = JS_ToString(ctx, val); - c001a7f6: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11743 + c001a9c6: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11751 JS_FreeValue(ctx, val); - c001a7f8: 8522 mv a0,s0 - c001a7fa: b3eed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11745 -} - c001a7fe: 70e2 ld ra,56(sp) - c001a800: 7442 ld s0,48(sp) - c001a802: 6542 ld a0,16(sp) - c001a804: 65e2 ld a1,24(sp) - c001a806: 6121 addi sp,sp,64 - c001a808: 8082 ret - -00000000c001a80a : + c001a9c8: 8522 mv a0,s0 + c001a9ca: a5ced0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11753 +} + c001a9ce: 70e2 ld ra,56(sp) + c001a9d0: 7442 ld s0,48(sp) + c001a9d2: 6542 ld a0,16(sp) + c001a9d4: 65e2 ld a1,24(sp) + c001a9d6: 6121 addi sp,sp,64 + c001a9d8: 8082 ret + +00000000c001a9da : JS_ConcatString3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3991 -{ - c001a80a: 7175 addi sp,sp,-144 - c001a80c: e122 sd s0,128(sp) - c001a80e: fca6 sd s1,120(sp) - c001a810: f8ca sd s2,112(sp) - c001a812: f4ce sd s3,104(sp) - c001a814: ecd6 sd s5,88(sp) - c001a816: 89ba mv s3,a4 - c001a818: e506 sd ra,136(sp) - c001a81a: f0d2 sd s4,96(sp) - c001a81c: e8da sd s6,80(sp) - c001a81e: e4de sd s7,72(sp) - c001a820: e032 sd a2,0(sp) - c001a822: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3999 +{ + c001a9da: 7175 addi sp,sp,-144 + c001a9dc: e122 sd s0,128(sp) + c001a9de: fca6 sd s1,120(sp) + c001a9e0: f8ca sd s2,112(sp) + c001a9e2: f4ce sd s3,104(sp) + c001a9e4: ecd6 sd s5,88(sp) + c001a9e6: 89ba mv s3,a4 + c001a9e8: e506 sd ra,136(sp) + c001a9ea: f0d2 sd s4,96(sp) + c001a9ec: e8da sd s6,80(sp) + c001a9ee: e4de sd s7,72(sp) + c001a9f0: e032 sd a2,0(sp) + c001a9f2: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4004 if (unlikely(JS_VALUE_GET_TAG(str2) != JS_TAG_STRING)) { - c001a824: 0006871b sext.w a4,a3 - c001a828: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3991 -{ - c001a82a: 892a mv s2,a0 - c001a82c: 8aae mv s5,a1 - c001a82e: 8432 mv s0,a2 - c001a830: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3996 + c001a9f4: 0006871b sext.w a4,a3 + c001a9f8: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3999 +{ + c001a9fa: 892a mv s2,a0 + c001a9fc: 8aae mv s5,a1 + c001a9fe: 8432 mv s0,a2 + c001aa00: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4004 if (unlikely(JS_VALUE_GET_TAG(str2) != JS_TAG_STRING)) { - c001a832: 00f70f63 beq a4,a5,c001a850 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3997 + c001aa02: 00f70f63 beq a4,a5,c001aa20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4005 str2 = JS_ToStringFree(ctx, str2); - c001a836: 85b2 mv a1,a2 - c001a838: 8636 mv a2,a3 - c001a83a: fa7ff0ef jal ra,c001a7e0 - c001a83e: e02a sd a0,0(sp) - c001a840: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3998 + c001aa06: 85b2 mv a1,a2 + c001aa08: 8636 mv a2,a3 + c001aa0a: fa7ff0ef jal ra,c001a9b0 + c001aa0e: e02a sd a0,0(sp) + c001aa10: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4006 if (JS_IsException(str2)) - c001a842: 0005871b sext.w a4,a1 - c001a846: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3997 + c001aa12: 0005871b sext.w a4,a1 + c001aa16: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4005 str2 = JS_ToStringFree(ctx, str2); - c001a848: 842a mv s0,a0 - c001a84a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3998 + c001aa18: 842a mv s0,a0 + c001aa1a: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4006 if (JS_IsException(str2)) - c001a84c: 08f70763 beq a4,a5,c001a8da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4002 + c001aa1c: 08f70763 beq a4,a5,c001aaaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4010 len1 = strlen(str1); - c001a850: 8556 mv a0,s5 - c001a852: 15e3c0ef jal ra,c00569b0 - c001a856: 00050b1b sext.w s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4003 + c001aa20: 8556 mv a0,s5 + c001aa22: 15e3c0ef jal ra,c0056b80 + c001aa26: 00050b1b sext.w s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4011 len3 = strlen(str3); - c001a85a: 854e mv a0,s3 - c001a85c: 1543c0ef jal ra,c00569b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4005 + c001aa2a: 854e mv a0,s3 + c001aa2c: 1543c0ef jal ra,c0056b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4013 if (string_buffer_init2(ctx, b, len1 + p->len + len3, p->is_wide_char)) - c001a860: 4054 lw a3,4(s0) - c001a862: 80000a37 lui s4,0x80000 - c001a866: fffa4a13 not s4,s4 - c001a86a: 0146f633 and a2,a3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4003 + c001aa30: 4054 lw a3,4(s0) + c001aa32: 80000a37 lui s4,0x80000 + c001aa36: fffa4a13 not s4,s4 + c001aa3a: 0146f633 and a2,a3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4011 len3 = strlen(str3); - c001a86e: 00050b9b sext.w s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4005 + c001aa3e: 00050b9b sext.w s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4013 if (string_buffer_init2(ctx, b, len1 + p->len + len3, p->is_wide_char)) - c001a872: 0165053b addw a0,a0,s6 - c001a876: 9e29 addw a2,a2,a0 - c001a878: 01f6d69b srliw a3,a3,0x1f - c001a87c: 100c addi a1,sp,32 - c001a87e: 854a mv a0,s2 - c001a880: b16fe0ef jal ra,c0018b96 - c001a884: e939 bnez a0,c001a8da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4008 + c001aa42: 0165053b addw a0,a0,s6 + c001aa46: 9e29 addw a2,a2,a0 + c001aa48: 01f6d69b srliw a3,a3,0x1f + c001aa4c: 100c addi a1,sp,32 + c001aa4e: 854a mv a0,s2 + c001aa50: b16fe0ef jal ra,c0018d66 + c001aa54: e939 bnez a0,c001aaaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4016 string_buffer_write8(b, (const uint8_t *)str1, len1); - c001a886: 865a mv a2,s6 - c001a888: 85d6 mv a1,s5 - c001a88a: 1008 addi a0,sp,32 - c001a88c: e5afe0ef jal ra,c0018ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4009 + c001aa56: 865a mv a2,s6 + c001aa58: 85d6 mv a1,s5 + c001aa5a: 1008 addi a0,sp,32 + c001aa5c: e5afe0ef jal ra,c00190b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4017 string_buffer_concat(b, p, 0, p->len); - c001a890: 4054 lw a3,4(s0) - c001a892: 4601 li a2,0 - c001a894: 85a2 mv a1,s0 - c001a896: 0146f6b3 and a3,a3,s4 - c001a89a: 2681 sext.w a3,a3 - c001a89c: 1008 addi a0,sp,32 - c001a89e: ecafe0ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4010 + c001aa60: 4054 lw a3,4(s0) + c001aa62: 4601 li a2,0 + c001aa64: 85a2 mv a1,s0 + c001aa66: 0146f6b3 and a3,a3,s4 + c001aa6a: 2681 sext.w a3,a3 + c001aa6c: 1008 addi a0,sp,32 + c001aa6e: ecafe0ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4018 string_buffer_write8(b, (const uint8_t *)str3, len3); - c001a8a2: 865e mv a2,s7 - c001a8a4: 85ce mv a1,s3 - c001a8a6: 1008 addi a0,sp,32 - c001a8a8: e3efe0ef jal ra,c0018ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4012 + c001aa72: 865e mv a2,s7 + c001aa74: 85ce mv a1,s3 + c001aa76: 1008 addi a0,sp,32 + c001aa78: e3efe0ef jal ra,c00190b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4020 JS_FreeValue(ctx, str2); - c001a8ac: 85a2 mv a1,s0 - c001a8ae: 8626 mv a2,s1 - c001a8b0: 854a mv a0,s2 - c001a8b2: a86ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4013 + c001aa7c: 85a2 mv a1,s0 + c001aa7e: 8626 mv a2,s1 + c001aa80: 854a mv a0,s2 + c001aa82: 9a4ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4021 return string_buffer_end(b); - c001a8b6: 1008 addi a0,sp,32 - c001a8b8: c52ff0ef jal ra,c0019d0a - c001a8bc: e82a sd a0,16(sp) - c001a8be: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4018 + c001aa86: 1008 addi a0,sp,32 + c001aa88: c52ff0ef jal ra,c0019eda + c001aa8c: e82a sd a0,16(sp) + c001aa8e: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4026 } - c001a8c0: 60aa ld ra,136(sp) - c001a8c2: 640a ld s0,128(sp) - c001a8c4: 6542 ld a0,16(sp) - c001a8c6: 65e2 ld a1,24(sp) - c001a8c8: 74e6 ld s1,120(sp) - c001a8ca: 7946 ld s2,112(sp) - c001a8cc: 79a6 ld s3,104(sp) - c001a8ce: 7a06 ld s4,96(sp) - c001a8d0: 6ae6 ld s5,88(sp) - c001a8d2: 6b46 ld s6,80(sp) - c001a8d4: 6ba6 ld s7,72(sp) - c001a8d6: 6149 addi sp,sp,144 - c001a8d8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4016 + c001aa90: 60aa ld ra,136(sp) + c001aa92: 640a ld s0,128(sp) + c001aa94: 6542 ld a0,16(sp) + c001aa96: 65e2 ld a1,24(sp) + c001aa98: 74e6 ld s1,120(sp) + c001aa9a: 7946 ld s2,112(sp) + c001aa9c: 79a6 ld s3,104(sp) + c001aa9e: 7a06 ld s4,96(sp) + c001aaa0: 6ae6 ld s5,88(sp) + c001aaa2: 6b46 ld s6,80(sp) + c001aaa4: 6ba6 ld s7,72(sp) + c001aaa6: 6149 addi sp,sp,144 + c001aaa8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4024 JS_FreeValue(ctx, str2); - c001a8da: 85a2 mv a1,s0 - c001a8dc: 8626 mv a2,s1 - c001a8de: 854a mv a0,s2 - c001a8e0: a58ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4017 + c001aaaa: 85a2 mv a1,s0 + c001aaac: 8626 mv a2,s1 + c001aaae: 854a mv a0,s2 + c001aab0: 976ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4025 return JS_EXCEPTION; - c001a8e4: 4799 li a5,6 - c001a8e6: e802 sd zero,16(sp) - c001a8e8: ec3e sd a5,24(sp) - c001a8ea: bfd9 j c001a8c0 + c001aab4: 4799 li a5,6 + c001aab6: e802 sd zero,16(sp) + c001aab8: ec3e sd a5,24(sp) + c001aaba: bfd9 j c001aa90 -00000000c001a8ec : +00000000c001aabc : js_get_function_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 { - c001a8ec: 7139 addi sp,sp,-64 - c001a8ee: f822 sd s0,48(sp) - c001a8f0: f426 sd s1,40(sp) - c001a8f2: fc06 sd ra,56(sp) - c001a8f4: 84aa mv s1,a0 - c001a8f6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5066 + c001aabc: 7139 addi sp,sp,-64 + c001aabe: f822 sd s0,48(sp) + c001aac0: f426 sd s1,40(sp) + c001aac2: fc06 sd ra,56(sp) + c001aac4: 84aa mv s1,a0 + c001aac6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5074 name_str = JS_AtomToString(ctx, name); - c001a8f8: a44ff0ef jal ra,c0019b3c - c001a8fc: e02a sd a0,0(sp) - c001a8fe: e42e sd a1,8(sp) + c001aac8: a44ff0ef jal ra,c0019d0c + c001aacc: e02a sd a0,0(sp) + c001aace: e42e sd a1,8(sp) JS_AtomSymbolHasDescription(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3319 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3327 if (__JS_AtomIsTaggedInt(v)) - c001a900: 04044a63 bltz s0,c001a954 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3321 + c001aad0: 04044a63 bltz s0,c001ab24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3329 p = rt->atom_array[v]; - c001a904: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3324 + c001aad4: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3332 p->atom_type == JS_ATOM_TYPE_GLOBAL_SYMBOL) && - c001a906: c00006b7 lui a3,0xc0000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3321 + c001aad6: c00006b7 lui a3,0xc0000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3329 p = rt->atom_array[v]; - c001a90a: 73ac ld a1,96(a5) - c001a90c: 02041793 slli a5,s0,0x20 - c001a910: 01d7d413 srli s0,a5,0x1d - c001a914: 942e add s0,s0,a1 - c001a916: 6018 ld a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3322 + c001aada: 73ac ld a1,96(a5) + c001aadc: 02041793 slli a5,s0,0x20 + c001aae0: 01d7d413 srli s0,a5,0x1d + c001aae4: 942e add s0,s0,a1 + c001aae6: 6018 ld a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3330 return (((p->atom_type == JS_ATOM_TYPE_SYMBOL && - c001a918: 471c lw a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3324 + c001aae8: 471c lw a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3332 p->atom_type == JS_ATOM_TYPE_GLOBAL_SYMBOL) && - c001a91a: 00d78763 beq a5,a3,c001a928 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3323 + c001aaea: 00d78763 beq a5,a3,c001aaf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3331 p->hash == JS_ATOM_HASH_SYMBOL) || - c001a91e: 8ff5 and a5,a5,a3 - c001a920: 800006b7 lui a3,0x80000 - c001a924: 02d79863 bne a5,a3,c001a954 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3324 + c001aaee: 8ff5 and a5,a5,a3 + c001aaf0: 800006b7 lui a3,0x80000 + c001aaf4: 02d79863 bne a5,a3,c001ab24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3332 p->atom_type == JS_ATOM_TYPE_GLOBAL_SYMBOL) && - c001a928: 4358 lw a4,4(a4) - c001a92a: 800007b7 lui a5,0x80000 - c001a92e: 02f70363 beq a4,a5,c001a954 + c001aaf8: 4358 lw a4,4(a4) + c001aafa: 800007b7 lui a5,0x80000 + c001aafe: 02f70363 beq a4,a5,c001ab24 js_get_function_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5079 } - c001a932: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5068 + c001ab02: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5076 name_str = JS_ConcatString3(ctx, "[", name_str, "]"); - c001a934: 6602 ld a2,0(sp) - c001a936: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 + c001ab04: 6602 ld a2,0(sp) + c001ab06: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5079 } - c001a938: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5068 + c001ab08: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5076 name_str = JS_ConcatString3(ctx, "[", name_str, "]"); - c001a93a: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 + c001ab0a: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5079 } - c001a93c: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5068 + c001ab0c: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5076 name_str = JS_ConcatString3(ctx, "[", name_str, "]"); - c001a93e: 00047717 auipc a4,0x47 - c001a942: 06a70713 addi a4,a4,106 # c00619a8 - c001a946: 00044597 auipc a1,0x44 - c001a94a: 97a58593 addi a1,a1,-1670 # c005e2c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 -} - c001a94e: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5068 + c001ab0e: 00047717 auipc a4,0x47 + c001ab12: 0fa70713 addi a4,a4,250 # c0061c08 + c001ab16: 00044597 auipc a1,0x44 + c001ab1a: a0a58593 addi a1,a1,-1526 # c005e520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5079 +} + c001ab1e: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5076 name_str = JS_ConcatString3(ctx, "[", name_str, "]"); - c001a950: ebbff06f j c001a80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5071 -} - c001a954: 70e2 ld ra,56(sp) - c001a956: 7442 ld s0,48(sp) - c001a958: 6502 ld a0,0(sp) - c001a95a: 65a2 ld a1,8(sp) - c001a95c: 74a2 ld s1,40(sp) - c001a95e: 6121 addi sp,sp,64 - c001a960: 8082 ret - -00000000c001a962 : + c001ab20: ebbff06f j c001a9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5079 +} + c001ab24: 70e2 ld ra,56(sp) + c001ab26: 7442 ld s0,48(sp) + c001ab28: 6502 ld a0,0(sp) + c001ab2a: 65a2 ld a1,8(sp) + c001ab2c: 74a2 ld s1,40(sp) + c001ab2e: 6121 addi sp,sp,64 + c001ab30: 8082 ret + +00000000c001ab32 : JS_ConcatString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4244 -{ - c001a962: 7135 addi sp,sp,-160 - c001a964: e526 sd s1,136(sp) - c001a966: fcce sd s3,120(sp) - c001a968: f4d6 sd s5,104(sp) - c001a96a: e43a sd a4,8(sp) - c001a96c: 89ba mv s3,a4 - c001a96e: ed06 sd ra,152(sp) - c001a970: e922 sd s0,144(sp) - c001a972: e14a sd s2,128(sp) - c001a974: f8d2 sd s4,112(sp) - c001a976: f0da sd s6,96(sp) - c001a978: ecde sd s7,88(sp) - c001a97a: e8e2 sd s8,80(sp) - c001a97c: e4e6 sd s9,72(sp) - c001a97e: e82e sd a1,16(sp) - c001a980: ec32 sd a2,24(sp) - c001a982: e036 sd a3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4252 +{ + c001ab32: 7135 addi sp,sp,-160 + c001ab34: e526 sd s1,136(sp) + c001ab36: fcce sd s3,120(sp) + c001ab38: f4d6 sd s5,104(sp) + c001ab3a: e43a sd a4,8(sp) + c001ab3c: 89ba mv s3,a4 + c001ab3e: ed06 sd ra,152(sp) + c001ab40: e922 sd s0,144(sp) + c001ab42: e14a sd s2,128(sp) + c001ab44: f8d2 sd s4,112(sp) + c001ab46: f0da sd s6,96(sp) + c001ab48: ecde sd s7,88(sp) + c001ab4a: e8e2 sd s8,80(sp) + c001ab4c: e4e6 sd s9,72(sp) + c001ab4e: e82e sd a1,16(sp) + c001ab50: ec32 sd a2,24(sp) + c001ab52: e036 sd a3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4256 if (unlikely(JS_VALUE_GET_TAG(op1) != JS_TAG_STRING)) { - c001a984: 0006071b sext.w a4,a2 - c001a988: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4244 + c001ab54: 0006071b sext.w a4,a2 + c001ab58: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4252 { - c001a98a: 8aaa mv s5,a0 - c001a98c: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4248 + c001ab5a: 8aaa mv s5,a0 + c001ab5c: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4256 if (unlikely(JS_VALUE_GET_TAG(op1) != JS_TAG_STRING)) { - c001a98e: 04f70363 beq a4,a5,c001a9d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4249 + c001ab5e: 04f70363 beq a4,a5,c001aba4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4257 op1 = JS_ToStringFree(ctx, op1); - c001a992: e4fff0ef jal ra,c001a7e0 - c001a996: e82a sd a0,16(sp) - c001a998: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4250 + c001ab62: e4fff0ef jal ra,c001a9b0 + c001ab66: e82a sd a0,16(sp) + c001ab68: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4258 if (JS_IsException(op1)) { - c001a99a: 00058a1b sext.w s4,a1 - c001a99e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4249 + c001ab6a: 00058a1b sext.w s4,a1 + c001ab6e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4257 op1 = JS_ToStringFree(ctx, op1); - c001a9a0: 842a mv s0,a0 - c001a9a2: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4250 + c001ab70: 842a mv s0,a0 + c001ab72: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4258 if (JS_IsException(op1)) { - c001a9a4: 02fa1a63 bne s4,a5,c001a9d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4251 + c001ab74: 02fa1a63 bne s4,a5,c001aba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4259 JS_FreeValue(ctx, op2); - c001a9a8: 6582 ld a1,0(sp) - c001a9aa: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4258 + c001ab78: 6582 ld a1,0(sp) + c001ab7a: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4266 JS_FreeValue(ctx, op1); - c001a9ac: 8556 mv a0,s5 - c001a9ae: 98aed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4259 + c001ab7c: 8556 mv a0,s5 + c001ab7e: 8a8ed0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4267 return JS_EXCEPTION; - c001a9b2: f002 sd zero,32(sp) - c001a9b4: f452 sd s4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4288 (discriminator 1) -} - c001a9b6: 60ea ld ra,152(sp) - c001a9b8: 644a ld s0,144(sp) - c001a9ba: 7502 ld a0,32(sp) - c001a9bc: 75a2 ld a1,40(sp) - c001a9be: 64aa ld s1,136(sp) - c001a9c0: 690a ld s2,128(sp) - c001a9c2: 79e6 ld s3,120(sp) - c001a9c4: 7a46 ld s4,112(sp) - c001a9c6: 7aa6 ld s5,104(sp) - c001a9c8: 7b06 ld s6,96(sp) - c001a9ca: 6be6 ld s7,88(sp) - c001a9cc: 6c46 ld s8,80(sp) - c001a9ce: 6ca6 ld s9,72(sp) - c001a9d0: 610d addi sp,sp,160 - c001a9d2: 8082 ret - c001a9d4: 842e mv s0,a1 - c001a9d6: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4255 + c001ab82: f002 sd zero,32(sp) + c001ab84: f452 sd s4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4296 (discriminator 1) +} + c001ab86: 60ea ld ra,152(sp) + c001ab88: 644a ld s0,144(sp) + c001ab8a: 7502 ld a0,32(sp) + c001ab8c: 75a2 ld a1,40(sp) + c001ab8e: 64aa ld s1,136(sp) + c001ab90: 690a ld s2,128(sp) + c001ab92: 79e6 ld s3,120(sp) + c001ab94: 7a46 ld s4,112(sp) + c001ab96: 7aa6 ld s5,104(sp) + c001ab98: 7b06 ld s6,96(sp) + c001ab9a: 6be6 ld s7,88(sp) + c001ab9c: 6c46 ld s8,80(sp) + c001ab9e: 6ca6 ld s9,72(sp) + c001aba0: 610d addi sp,sp,160 + c001aba2: 8082 ret + c001aba4: 842e mv s0,a1 + c001aba6: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4263 if (unlikely(JS_VALUE_GET_TAG(op2) != JS_TAG_STRING)) { - c001a9d8: 0009879b sext.w a5,s3 - c001a9dc: 5765 li a4,-7 - c001a9de: 02e78363 beq a5,a4,c001aa04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4256 + c001aba8: 0009879b sext.w a5,s3 + c001abac: 5765 li a4,-7 + c001abae: 02e78363 beq a5,a4,c001abd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4264 op2 = JS_ToStringFree(ctx, op2); - c001a9e2: 6582 ld a1,0(sp) - c001a9e4: 6622 ld a2,8(sp) - c001a9e6: 8556 mv a0,s5 - c001a9e8: df9ff0ef jal ra,c001a7e0 - c001a9ec: e02a sd a0,0(sp) - c001a9ee: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4257 + c001abb2: 6582 ld a1,0(sp) + c001abb4: 6622 ld a2,8(sp) + c001abb6: 8556 mv a0,s5 + c001abb8: df9ff0ef jal ra,c001a9b0 + c001abbc: e02a sd a0,0(sp) + c001abbe: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4265 if (JS_IsException(op2)) { - c001a9f0: 00058a1b sext.w s4,a1 - c001a9f4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4256 + c001abc0: 00058a1b sext.w s4,a1 + c001abc4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4264 op2 = JS_ToStringFree(ctx, op2); - c001a9f6: 84aa mv s1,a0 - c001a9f8: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4257 + c001abc6: 84aa mv s1,a0 + c001abc8: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4265 if (JS_IsException(op2)) { - c001a9fa: 00fa1563 bne s4,a5,c001aa04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4258 - JS_FreeValue(ctx, op1); - c001a9fe: 85a2 mv a1,s0 - c001aa00: 864a mv a2,s2 - c001aa02: b76d j c001a9ac + c001abca: 00fa1563 bne s4,a5,c001abd4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4266 + JS_FreeValue(ctx, op1); + c001abce: 85a2 mv a1,s0 + c001abd0: 864a mv a2,s2 + c001abd2: b76d j c001ab7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4274 if (p2->len == 0) { - c001aa04: 40dc lw a5,4(s1) - c001aa06: 80000a37 lui s4,0x80000 - c001aa0a: fffa4a13 not s4,s4 - c001aa0e: 0147f733 and a4,a5,s4 - c001aa12: c351 beqz a4,c001aa96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4269 + c001abd4: 40dc lw a5,4(s1) + c001abd6: 80000a37 lui s4,0x80000 + c001abda: fffa4a13 not s4,s4 + c001abde: 0147f733 and a4,a5,s4 + c001abe2: c351 beqz a4,c001ac66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4277 if (p1->header.ref_count == 1 && p1->is_wide_char == p2->is_wide_char - c001aa14: 4014 lw a3,0(s0) - c001aa16: 4705 li a4,1 - c001aa18: 0ce69263 bne a3,a4,c001aadc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4269 (discriminator 1) - c001aa1c: 4058 lw a4,4(s0) - c001aa1e: 8fb9 xor a5,a5,a4 - c001aa20: 0a07ce63 bltz a5,c001aadc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4270 + c001abe4: 4014 lw a3,0(s0) + c001abe6: 4705 li a4,1 + c001abe8: 0ce69263 bne a3,a4,c001acac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4277 (discriminator 1) + c001abec: 4058 lw a4,4(s0) + c001abee: 8fb9 xor a5,a5,a4 + c001abf0: 0a07ce63 bltz a5,c001acac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4278 && js_malloc_usable_size(ctx, p1) >= sizeof(*p1) + ((p1->len + p2->len) << p2->is_wide_char) + 1 - p1->is_wide_char) { - c001aa24: 85a2 mv a1,s0 - c001aa26: 8556 mv a0,s5 - c001aa28: c5aec0ef jal ra,c0006e82 - c001aa2c: 4054 lw a3,4(s0) - c001aa2e: 40cc lw a1,4(s1) - c001aa30: 0146f8b3 and a7,a3,s4 - c001aa34: 0145f7b3 and a5,a1,s4 - c001aa38: 0007861b sext.w a2,a5 - c001aa3c: 01f5d59b srliw a1,a1,0x1f - c001aa40: 011787bb addw a5,a5,a7 - c001aa44: 00b797bb sllw a5,a5,a1 - c001aa48: 01f6d59b srliw a1,a3,0x1f - c001aa4c: 8f8d sub a5,a5,a1 - c001aa4e: 07c5 addi a5,a5,17 - c001aa50: 0008871b sext.w a4,a7 - c001aa54: 08f56463 bltu a0,a5,c001aadc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4273 + c001abf4: 85a2 mv a1,s0 + c001abf6: 8556 mv a0,s5 + c001abf8: b78ec0ef jal ra,c0006f70 + c001abfc: 4054 lw a3,4(s0) + c001abfe: 40cc lw a1,4(s1) + c001ac00: 0146f8b3 and a7,a3,s4 + c001ac04: 0145f7b3 and a5,a1,s4 + c001ac08: 0007861b sext.w a2,a5 + c001ac0c: 01f5d59b srliw a1,a1,0x1f + c001ac10: 011787bb addw a5,a5,a7 + c001ac14: 00b797bb sllw a5,a5,a1 + c001ac18: 01f6d59b srliw a1,a3,0x1f + c001ac1c: 8f8d sub a5,a5,a1 + c001ac1e: 07c5 addi a5,a5,17 + c001ac20: 0008871b sext.w a4,a7 + c001ac24: 08f56463 bltu a0,a5,c001acac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4281 memcpy(p1->u.str16 + p1->len, p2->u.str16, p2->len << 1); - c001aa58: 02071793 slli a5,a4,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4272 + c001ac28: 02071793 slli a5,a4,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4280 if (p1->is_wide_char) { - c001aa5c: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4273 + c001ac2c: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4281 memcpy(p1->u.str16 + p1->len, p2->u.str16, p2->len << 1); - c001aa5e: 9381 srli a5,a5,0x20 - c001aa60: 01040513 addi a0,s0,16 - c001aa64: 01048593 addi a1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4272 + c001ac2e: 9381 srli a5,a5,0x20 + c001ac30: 01040513 addi a0,s0,16 + c001ac34: 01048593 addi a1,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4280 if (p1->is_wide_char) { - c001aa68: 0206df63 bgez a3,c001aaa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4273 + c001ac38: 0206df63 bgez a3,c001ac76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4281 memcpy(p1->u.str16 + p1->len, p2->u.str16, p2->len << 1); - c001aa6c: 0786 slli a5,a5,0x1 - c001aa6e: 953e add a0,a0,a5 - c001aa70: 0016161b slliw a2,a2,0x1 - c001aa74: 7673b0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4274 + c001ac3c: 0786 slli a5,a5,0x1 + c001ac3e: 953e add a0,a0,a5 + c001ac40: 0016161b slliw a2,a2,0x1 + c001ac44: 7673b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4282 p1->len += p2->len; - c001aa78: 405c lw a5,4(s0) - c001aa7a: 40d4 lw a3,4(s1) - c001aa7c: 0147f733 and a4,a5,s4 - c001aa80: 0146f6b3 and a3,a3,s4 - c001aa84: 9f35 addw a4,a4,a3 - c001aa86: 01477a33 and s4,a4,s4 - c001aa8a: 80000737 lui a4,0x80000 - c001aa8e: 8ff9 and a5,a5,a4 - c001aa90: 0147e7b3 or a5,a5,s4 - c001aa94: c05c sw a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4281 + c001ac48: 405c lw a5,4(s0) + c001ac4a: 40d4 lw a3,4(s1) + c001ac4c: 0147f733 and a4,a5,s4 + c001ac50: 0146f6b3 and a3,a3,s4 + c001ac54: 9f35 addw a4,a4,a3 + c001ac56: 01477a33 and s4,a4,s4 + c001ac5a: 80000737 lui a4,0x80000 + c001ac5e: 8ff9 and a5,a5,a4 + c001ac60: 0147e7b3 or a5,a5,s4 + c001ac64: c05c sw a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4289 JS_FreeValue(ctx, op2); - c001aa96: 85a6 mv a1,s1 - c001aa98: 864e mv a2,s3 - c001aa9a: 8556 mv a0,s5 - c001aa9c: 89ced0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4282 + c001ac66: 85a6 mv a1,s1 + c001ac68: 864e mv a2,s3 + c001ac6a: 8556 mv a0,s5 + c001ac6c: fbbec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4290 return op1; - c001aaa0: f022 sd s0,32(sp) - c001aaa2: f44a sd s2,40(sp) - c001aaa4: bf09 j c001a9b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4276 + c001ac70: f022 sd s0,32(sp) + c001ac72: f44a sd s2,40(sp) + c001ac74: bf09 j c001ab86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4284 memcpy(p1->u.str8 + p1->len, p2->u.str8, p2->len); - c001aaa6: 1602 slli a2,a2,0x20 - c001aaa8: 9201 srli a2,a2,0x20 - c001aaaa: 953e add a0,a0,a5 - c001aaac: 72f3b0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4277 + c001ac76: 1602 slli a2,a2,0x20 + c001ac78: 9201 srli a2,a2,0x20 + c001ac7a: 953e add a0,a0,a5 + c001ac7c: 72f3b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4285 p1->len += p2->len; - c001aab0: 405c lw a5,4(s0) - c001aab2: 40d4 lw a3,4(s1) - c001aab4: 80000637 lui a2,0x80000 - c001aab8: 0147f733 and a4,a5,s4 - c001aabc: 0146f6b3 and a3,a3,s4 - c001aac0: 9f35 addw a4,a4,a3 - c001aac2: 0007069b sext.w a3,a4 - c001aac6: 8ff1 and a5,a5,a2 - c001aac8: 00ea7733 and a4,s4,a4 - c001aacc: 8fd9 or a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4278 + c001ac80: 405c lw a5,4(s0) + c001ac82: 40d4 lw a3,4(s1) + c001ac84: 80000637 lui a2,0x80000 + c001ac88: 0147f733 and a4,a5,s4 + c001ac8c: 0146f6b3 and a3,a3,s4 + c001ac90: 9f35 addw a4,a4,a3 + c001ac92: 0007069b sext.w a3,a4 + c001ac96: 8ff1 and a5,a5,a2 + c001ac98: 00ea7733 and a4,s4,a4 + c001ac9c: 8fd9 or a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4286 p1->u.str8[p1->len] = '\0'; - c001aace: 0146fa33 and s4,a3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4277 + c001ac9e: 0146fa33 and s4,a3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4285 p1->len += p2->len; - c001aad2: c05c sw a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4278 + c001aca2: c05c sw a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4286 p1->u.str8[p1->len] = '\0'; - c001aad4: 9a22 add s4,s4,s0 - c001aad6: 000a0823 sb zero,16(s4) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> - c001aada: bf75 j c001aa96 + c001aca4: 9a22 add s4,s4,s0 + c001aca6: 000a0823 sb zero,16(s4) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> + c001acaa: bf75 j c001ac66 JS_ConcatString1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4223 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4231 len = p1->len + p2->len; - c001aadc: 4050 lw a2,4(s0) - c001aade: 0044ac03 lw s8,4(s1) - c001aae2: 80000b37 lui s6,0x80000 - c001aae6: fffb4b13 not s6,s6 - c001aaea: 016c77b3 and a5,s8,s6 - c001aaee: 01667bb3 and s7,a2,s6 - c001aaf2: 00fb8bbb addw s7,s7,a5 - c001aaf6: 000b859b sext.w a1,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4224 + c001acac: 4050 lw a2,4(s0) + c001acae: 0044ac03 lw s8,4(s1) + c001acb2: 80000b37 lui s6,0x80000 + c001acb6: fffb4b13 not s6,s6 + c001acba: 016c77b3 and a5,s8,s6 + c001acbe: 01667bb3 and s7,a2,s6 + c001acc2: 00fb8bbb addw s7,s7,a5 + c001acc6: 000b859b sext.w a1,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4232 if (len > JS_STRING_LEN_MAX) - c001aafa: 400007b7 lui a5,0x40000 - c001aafe: 02f5e863 bltu a1,a5,c001ab2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4225 + c001acca: 400007b7 lui a5,0x40000 + c001acce: 02f5e863 bltu a1,a5,c001acfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4233 return JS_ThrowInternalError(ctx, "string too long"); - c001ab02: 00043597 auipc a1,0x43 - c001ab06: 6be58593 addi a1,a1,1726 # c005e1c0 - c001ab0a: 8556 mv a0,s5 - c001ab0c: e79f90ef jal ra,c0014984 - c001ab10: 8a2a mv s4,a0 - c001ab12: 8cae mv s9,a1 + c001acd2: 00043597 auipc a1,0x43 + c001acd6: 74e58593 addi a1,a1,1870 # c005e420 + c001acda: 8556 mv a0,s5 + c001acdc: d97f90ef jal ra,c0014a72 + c001ace0: 8a2a mv s4,a0 + c001ace2: 8cae mv s9,a1 JS_ConcatString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4293 JS_FreeValue(ctx, op1); - c001ab14: 85a2 mv a1,s0 - c001ab16: 864a mv a2,s2 - c001ab18: 8556 mv a0,s5 - c001ab1a: 81eed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4286 + c001ace4: 85a2 mv a1,s0 + c001ace6: 864a mv a2,s2 + c001ace8: 8556 mv a0,s5 + c001acea: f3dec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4294 JS_FreeValue(ctx, op2); - c001ab1e: 85a6 mv a1,s1 - c001ab20: 864e mv a2,s3 - c001ab22: 8556 mv a0,s5 - c001ab24: 814ed0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4287 + c001acee: 85a6 mv a1,s1 + c001acf0: 864e mv a2,s3 + c001acf2: 8556 mv a0,s5 + c001acf4: f33ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4295 return ret; - c001ab28: f052 sd s4,32(sp) - c001ab2a: f466 sd s9,40(sp) - c001ab2c: b569 j c001a9b6 + c001acf8: f052 sd s4,32(sp) + c001acfa: f466 sd s9,40(sp) + c001acfc: b569 j c001ab86 JS_ConcatString1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4226 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4234 is_wide_char = p1->is_wide_char | p2->is_wide_char; - c001ab2e: 00cc6c33 or s8,s8,a2 - c001ab32: 01fc5c1b srliw s8,s8,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4227 + c001acfe: 00cc6c33 or s8,s8,a2 + c001ad02: 01fc5c1b srliw s8,s8,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4235 p = js_alloc_string(ctx, len, is_wide_char); - c001ab36: 8662 mv a2,s8 - c001ab38: 8556 mv a0,s5 - c001ab3a: 836fe0ef jal ra,c0018b70 - c001ab3e: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4229 + c001ad06: 8662 mv a2,s8 + c001ad08: 8556 mv a0,s5 + c001ad0a: 836fe0ef jal ra,c0018d40 + c001ad0e: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4237 return JS_EXCEPTION; - c001ab40: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4228 + c001ad10: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4236 if (!p) - c001ab42: d969 beqz a0,c001ab14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4231 + c001ad12: d969 beqz a0,c001ace4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4239 memcpy(p->u.str8, p1->u.str8, p1->len); - c001ab44: 4050 lw a2,4(s0) - c001ab46: 01050c93 addi s9,a0,16 - c001ab4a: 00cb7633 and a2,s6,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4230 + c001ad14: 4050 lw a2,4(s0) + c001ad16: 01050c93 addi s9,a0,16 + c001ad1a: 00cb7633 and a2,s6,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4238 if (!is_wide_char) { - c001ab4e: 040c1063 bnez s8,c001ab8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4231 + c001ad1e: 040c1063 bnez s8,c001ad5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4239 memcpy(p->u.str8, p1->u.str8, p1->len); - c001ab52: 1602 slli a2,a2,0x20 - c001ab54: 9201 srli a2,a2,0x20 - c001ab56: 01040593 addi a1,s0,16 - c001ab5a: 8566 mv a0,s9 - c001ab5c: 67f3b0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4232 + c001ad22: 1602 slli a2,a2,0x20 + c001ad24: 9201 srli a2,a2,0x20 + c001ad26: 01040593 addi a1,s0,16 + c001ad2a: 8566 mv a0,s9 + c001ad2c: 67f3b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4240 memcpy(p->u.str8 + p1->len, p2->u.str8, p2->len); - c001ab60: 4048 lw a0,4(s0) - c001ab62: 40d0 lw a2,4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4233 + c001ad30: 4048 lw a0,4(s0) + c001ad32: 40d0 lw a2,4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4241 p->u.str8[len] = '\0'; - c001ab64: 1b82 slli s7,s7,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4232 + c001ad34: 1b82 slli s7,s7,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4240 memcpy(p->u.str8 + p1->len, p2->u.str8, p2->len); - c001ab66: 01657533 and a0,a0,s6 - c001ab6a: 1502 slli a0,a0,0x20 - c001ab6c: 01667633 and a2,a2,s6 - c001ab70: 9101 srli a0,a0,0x20 - c001ab72: 1602 slli a2,a2,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4233 + c001ad36: 01657533 and a0,a0,s6 + c001ad3a: 1502 slli a0,a0,0x20 + c001ad3c: 01667633 and a2,a2,s6 + c001ad40: 9101 srli a0,a0,0x20 + c001ad42: 1602 slli a2,a2,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4241 p->u.str8[len] = '\0'; - c001ab74: 020bdb93 srli s7,s7,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4232 + c001ad44: 020bdb93 srli s7,s7,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4240 memcpy(p->u.str8 + p1->len, p2->u.str8, p2->len); - c001ab78: 9201 srli a2,a2,0x20 - c001ab7a: 01048593 addi a1,s1,16 - c001ab7e: 9566 add a0,a0,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4233 + c001ad48: 9201 srli a2,a2,0x20 + c001ad4a: 01048593 addi a1,s1,16 + c001ad4e: 9566 add a0,a0,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4241 p->u.str8[len] = '\0'; - c001ab80: 9bd2 add s7,s7,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4232 + c001ad50: 9bd2 add s7,s7,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4240 memcpy(p->u.str8 + p1->len, p2->u.str8, p2->len); - c001ab82: 6593b0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4233 + c001ad52: 6593b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4241 p->u.str8[len] = '\0'; - c001ab86: 000b8823 sb zero,16(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4238 + c001ad56: 000b8823 sb zero,16(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4246 return JS_MKPTR(JS_TAG_STRING, p); - c001ab8a: 5ce5 li s9,-7 - c001ab8c: b761 j c001ab14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4235 + c001ad5a: 5ce5 li s9,-7 + c001ad5c: b761 j c001ace4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4243 copy_str16(p->u.str16, p1, 0, p1->len); - c001ab8e: 85a2 mv a1,s0 - c001ab90: 8566 mv a0,s9 - c001ab92: 857eb0ef jal ra,c00063e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4236 + c001ad5e: 85a2 mv a1,s0 + c001ad60: 8566 mv a0,s9 + c001ad62: f74eb0ef jal ra,c00064d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4244 copy_str16(p->u.str16 + p1->len, p2, 0, p2->len); - c001ab96: 4048 lw a0,4(s0) - c001ab98: 40d0 lw a2,4(s1) - c001ab9a: 85a6 mv a1,s1 - c001ab9c: 01657533 and a0,a0,s6 - c001aba0: 02051793 slli a5,a0,0x20 - c001aba4: 01f7d513 srli a0,a5,0x1f - c001aba8: 00cb7633 and a2,s6,a2 - c001abac: 9566 add a0,a0,s9 - c001abae: 83beb0ef jal ra,c00063e8 - c001abb2: bfe1 j c001ab8a - -00000000c001abb4 : + c001ad66: 4048 lw a0,4(s0) + c001ad68: 40d0 lw a2,4(s1) + c001ad6a: 85a6 mv a1,s1 + c001ad6c: 01657533 and a0,a0,s6 + c001ad70: 02051793 slli a5,a0,0x20 + c001ad74: 01f7d513 srli a0,a5,0x1f + c001ad78: 00cb7633 and a2,s6,a2 + c001ad7c: 9566 add a0,a0,s9 + c001ad7e: f58eb0ef jal ra,c00064d6 + c001ad82: bfe1 j c001ad5a + +00000000c001ad84 : js_error_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38759 -{ - c001abb4: 7175 addi sp,sp,-144 - c001abb6: e506 sd ra,136(sp) - c001abb8: e122 sd s0,128(sp) - c001abba: fca6 sd s1,120(sp) - c001abbc: f8ca sd s2,112(sp) - c001abbe: f4ce sd s3,104(sp) - c001abc0: e02e sd a1,0(sp) - c001abc2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38767 +{ + c001ad84: 7175 addi sp,sp,-144 + c001ad86: e506 sd ra,136(sp) + c001ad88: e122 sd s0,128(sp) + c001ad8a: fca6 sd s1,120(sp) + c001ad8c: f8ca sd s2,112(sp) + c001ad8e: f4ce sd s3,104(sp) + c001ad90: e02e sd a1,0(sp) + c001ad92: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38770 if (!JS_IsObject(this_val)) - c001abc4: 0006069b sext.w a3,a2 - c001abc8: 577d li a4,-1 - c001abca: 00e68a63 beq a3,a4,c001abde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 -} - c001abce: 640a ld s0,128(sp) - c001abd0: 60aa ld ra,136(sp) - c001abd2: 74e6 ld s1,120(sp) - c001abd4: 7946 ld s2,112(sp) - c001abd6: 79a6 ld s3,104(sp) - c001abd8: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38763 + c001ad94: 0006069b sext.w a3,a2 + c001ad98: 577d li a4,-1 + c001ad9a: 00e68a63 beq a3,a4,c001adae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38792 +} + c001ad9e: 640a ld s0,128(sp) + c001ada0: 60aa ld ra,136(sp) + c001ada2: 74e6 ld s1,120(sp) + c001ada4: 7946 ld s2,112(sp) + c001ada6: 79a6 ld s3,104(sp) + c001ada8: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38771 return JS_ThrowTypeErrorNotAnObject(ctx); - c001abda: d9ff806f j c0013978 - c001abde: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38764 + c001adaa: cbdf806f j c0013a66 + c001adae: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38772 name = JS_GetProperty(ctx, this_val, JS_ATOM_name); - c001abe0: 872e mv a4,a1 + c001adb0: 872e mv a4,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001abe2: 4801 li a6,0 - c001abe4: 03700693 li a3,55 - c001abe8: ecb2 sd a2,88(sp) - c001abea: 84aa mv s1,a0 - c001abec: e8ae sd a1,80(sp) - c001abee: c55f60ef jal ra,c0011842 + c001adb2: 4801 li a6,0 + c001adb4: 03700693 li a3,55 + c001adb8: ecb2 sd a2,88(sp) + c001adba: 84aa mv s1,a0 + c001adbc: e8ae sd a1,80(sp) + c001adbe: b73f60ef jal ra,c0011930 js_error_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38765 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38773 if (JS_IsUndefined(name)) - c001abf2: 0005871b sext.w a4,a1 - c001abf6: 478d li a5,3 + c001adc2: 0005871b sext.w a4,a1 + c001adc6: 478d li a5,3 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001abf8: 862e mv a2,a1 + c001adc8: 862e mv a2,a1 js_error_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38765 - c001abfa: 02f71963 bne a4,a5,c001ac2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38766 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38773 + c001adca: 02f71963 bne a4,a5,c001adfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38774 name = JS_AtomToString(ctx, JS_ATOM_Error); - c001abfe: 09400593 li a1,148 - c001ac02: 8526 mv a0,s1 - c001ac04: f39fe0ef jal ra,c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38768 + c001adce: 09400593 li a1,148 + c001add2: 8526 mv a0,s1 + c001add4: f39fe0ef jal ra,c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 name = JS_ToStringFree(ctx, name); - c001ac08: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38769 + c001add8: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38777 if (JS_IsException(name)) - c001ac0a: 0005879b sext.w a5,a1 - c001ac0e: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38768 + c001adda: 0005879b sext.w a5,a1 + c001adde: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 name = JS_ToStringFree(ctx, name); - c001ac10: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38769 + c001ade0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38777 if (JS_IsException(name)) - c001ac12: 02e79263 bne a5,a4,c001ac36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38770 + c001ade2: 02e79263 bne a5,a4,c001ae06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38778 return JS_EXCEPTION; - c001ac16: e082 sd zero,64(sp) - c001ac18: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 (discriminator 1) -} - c001ac1a: 60aa ld ra,136(sp) - c001ac1c: 640a ld s0,128(sp) - c001ac1e: 6506 ld a0,64(sp) - c001ac20: 65a6 ld a1,72(sp) - c001ac22: 74e6 ld s1,120(sp) - c001ac24: 7946 ld s2,112(sp) - c001ac26: 79a6 ld s3,104(sp) - c001ac28: 6149 addi sp,sp,144 - c001ac2a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38768 + c001ade6: e082 sd zero,64(sp) + c001ade8: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38792 (discriminator 1) +} + c001adea: 60aa ld ra,136(sp) + c001adec: 640a ld s0,128(sp) + c001adee: 6506 ld a0,64(sp) + c001adf0: 65a6 ld a1,72(sp) + c001adf2: 74e6 ld s1,120(sp) + c001adf4: 7946 ld s2,112(sp) + c001adf6: 79a6 ld s3,104(sp) + c001adf8: 6149 addi sp,sp,144 + c001adfa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 name = JS_ToStringFree(ctx, name); - c001ac2c: 85aa mv a1,a0 - c001ac2e: 8526 mv a0,s1 - c001ac30: bb1ff0ef jal ra,c001a7e0 - c001ac34: bfd1 j c001ac08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38772 + c001adfc: 85aa mv a1,a0 + c001adfe: 8526 mv a0,s1 + c001ae00: bb1ff0ef jal ra,c001a9b0 + c001ae04: bfd1 j c001add8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38780 msg = JS_GetProperty(ctx, this_val, JS_ATOM_message); - c001ac36: 6702 ld a4,0(sp) - c001ac38: 67a2 ld a5,8(sp) + c001ae06: 6702 ld a4,0(sp) + c001ae08: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001ac3a: 4801 li a6,0 - c001ac3c: 85ba mv a1,a4 - c001ac3e: 863e mv a2,a5 - c001ac40: 03300693 li a3,51 - c001ac44: 8526 mv a0,s1 - c001ac46: e0ba sd a4,64(sp) - c001ac48: e4be sd a5,72(sp) - c001ac4a: bf9f60ef jal ra,c0011842 - c001ac4e: e8aa sd a0,80(sp) - c001ac50: ecae sd a1,88(sp) + c001ae0a: 4801 li a6,0 + c001ae0c: 85ba mv a1,a4 + c001ae0e: 863e mv a2,a5 + c001ae10: 03300693 li a3,51 + c001ae14: 8526 mv a0,s1 + c001ae16: e0ba sd a4,64(sp) + c001ae18: e4be sd a5,72(sp) + c001ae1a: b17f60ef jal ra,c0011930 + c001ae1e: e8aa sd a0,80(sp) + c001ae20: ecae sd a1,88(sp) js_error_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38773 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38781 if (JS_IsUndefined(msg)) - c001ac52: 0005871b sext.w a4,a1 - c001ac56: 478d li a5,3 + c001ae22: 0005871b sext.w a4,a1 + c001ae26: 478d li a5,3 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001ac58: 862e mv a2,a1 + c001ae28: 862e mv a2,a1 js_error_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38773 - c001ac5a: 02f71663 bne a4,a5,c001ac86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38781 + c001ae2a: 02f71663 bne a4,a5,c001ae56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38782 msg = JS_AtomToString(ctx, JS_ATOM_empty_string); - c001ac5e: 02f00593 li a1,47 - c001ac62: 8526 mv a0,s1 - c001ac64: ed9fe0ef jal ra,c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 + c001ae2e: 02f00593 li a1,47 + c001ae32: 8526 mv a0,s1 + c001ae34: ed9fe0ef jal ra,c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 msg = JS_ToStringFree(ctx, msg); - c001ac68: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38777 + c001ae38: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38785 if (JS_IsException(msg)) { - c001ac6a: 0005899b sext.w s3,a1 - c001ac6e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 + c001ae3a: 0005899b sext.w s3,a1 + c001ae3e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 msg = JS_ToStringFree(ctx, msg); - c001ac70: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38777 + c001ae40: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38785 if (JS_IsException(msg)) { - c001ac72: 00f99f63 bne s3,a5,c001ac90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38778 + c001ae42: 00f99f63 bne s3,a5,c001ae60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38786 JS_FreeValue(ctx, name); - c001ac76: 65c2 ld a1,16(sp) - c001ac78: 8622 mv a2,s0 - c001ac7a: 8526 mv a0,s1 - c001ac7c: ebdec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38779 + c001ae46: 65c2 ld a1,16(sp) + c001ae48: 8622 mv a2,s0 + c001ae4a: 8526 mv a0,s1 + c001ae4c: ddbec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38787 return JS_EXCEPTION; - c001ac80: e082 sd zero,64(sp) - c001ac82: e4ce sd s3,72(sp) - c001ac84: bf59 j c001ac1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38776 + c001ae50: e082 sd zero,64(sp) + c001ae52: e4ce sd s3,72(sp) + c001ae54: bf59 j c001adea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 msg = JS_ToStringFree(ctx, msg); - c001ac86: 85aa mv a1,a0 - c001ac88: 8526 mv a0,s1 - c001ac8a: b57ff0ef jal ra,c001a7e0 - c001ac8e: bfe9 j c001ac68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38781 + c001ae56: 85aa mv a1,a0 + c001ae58: 8526 mv a0,s1 + c001ae5a: b57ff0ef jal ra,c001a9b0 + c001ae5e: bfe9 j c001ae38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38789 if (!JS_IsEmptyString(name) && !JS_IsEmptyString(msg)) - c001ac90: 6542 ld a0,16(sp) - c001ac92: 85a2 mv a1,s0 - c001ac94: cb4e90ef jal ra,c0004148 - c001ac98: e50d bnez a0,c001acc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38781 (discriminator 1) - c001ac9a: 7502 ld a0,32(sp) - c001ac9c: 85ca mv a1,s2 - c001ac9e: caae90ef jal ra,c0004148 - c001aca2: e105 bnez a0,c001acc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38782 + c001ae60: 6542 ld a0,16(sp) + c001ae62: 85a2 mv a1,s0 + c001ae64: ae4e90ef jal ra,c0004148 + c001ae68: e50d bnez a0,c001ae92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38789 (discriminator 1) + c001ae6a: 7502 ld a0,32(sp) + c001ae6c: 85ca mv a1,s2 + c001ae6e: adae90ef jal ra,c0004148 + c001ae72: e105 bnez a0,c001ae92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38790 name = JS_ConcatString3(ctx, "", name, ": "); - c001aca4: 6642 ld a2,16(sp) - c001aca6: 86a2 mv a3,s0 - c001aca8: 00043717 auipc a4,0x43 - c001acac: 62070713 addi a4,a4,1568 # c005e2c8 - c001acb0: 00042597 auipc a1,0x42 - c001acb4: 32058593 addi a1,a1,800 # c005cfd0 - c001acb8: 8526 mv a0,s1 - c001acba: b51ff0ef jal ra,c001a80a - c001acbe: e82a sd a0,16(sp) - c001acc0: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38783 + c001ae74: 6642 ld a2,16(sp) + c001ae76: 86a2 mv a3,s0 + c001ae78: 00043717 auipc a4,0x43 + c001ae7c: 6b070713 addi a4,a4,1712 # c005e528 + c001ae80: 00042597 auipc a1,0x42 + c001ae84: 38058593 addi a1,a1,896 # c005d200 + c001ae88: 8526 mv a0,s1 + c001ae8a: b51ff0ef jal ra,c001a9da + c001ae8e: e82a sd a0,16(sp) + c001ae90: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38791 return JS_ConcatString(ctx, name, msg); - c001acc2: 8622 mv a2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 + c001ae92: 8622 mv a2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38792 } - c001acc4: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38783 + c001ae94: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38791 return JS_ConcatString(ctx, name, msg); - c001acc6: 7682 ld a3,32(sp) - c001acc8: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 + c001ae96: 7682 ld a3,32(sp) + c001ae98: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38792 } - c001acca: 60aa ld ra,136(sp) - c001accc: 79a6 ld s3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38783 + c001ae9a: 60aa ld ra,136(sp) + c001ae9c: 79a6 ld s3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38791 return JS_ConcatString(ctx, name, msg); - c001acce: 874a mv a4,s2 - c001acd0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38784 -} - c001acd2: 7946 ld s2,112(sp) - c001acd4: 74e6 ld s1,120(sp) - c001acd6: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38783 + c001ae9e: 874a mv a4,s2 + c001aea0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38792 +} + c001aea2: 7946 ld s2,112(sp) + c001aea4: 74e6 ld s1,120(sp) + c001aea6: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38791 return JS_ConcatString(ctx, name, msg); - c001acd8: c8bff06f j c001a962 + c001aea8: c8bff06f j c001ab32 -00000000c001acdc : +00000000c001aeac : string_buffer_concat_value_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3862 -{ - c001acdc: 7139 addi sp,sp,-64 - c001acde: f04a sd s2,32(sp) - c001ace0: fc06 sd ra,56(sp) - c001ace2: f822 sd s0,48(sp) - c001ace4: f426 sd s1,40(sp) - c001ace6: ec4e sd s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3870 +{ + c001aeac: 7139 addi sp,sp,-64 + c001aeae: f04a sd s2,32(sp) + c001aeb0: fc06 sd ra,56(sp) + c001aeb2: f822 sd s0,48(sp) + c001aeb4: f426 sd s1,40(sp) + c001aeb6: ec4e sd s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3874 if (s->error_status) { - c001ace8: 4d5c lw a5,28(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3862 + c001aeb8: 4d5c lw a5,28(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3870 { - c001acea: e02e sd a1,0(sp) - c001acec: e432 sd a2,8(sp) - c001acee: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3866 + c001aeba: e02e sd a1,0(sp) + c001aebc: e432 sd a2,8(sp) + c001aebe: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3874 if (s->error_status) { - c001acf0: cf89 beqz a5,c001ad0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3868 + c001aec0: cf89 beqz a5,c001aeda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3876 JS_FreeValue(s->ctx, v); - c001acf2: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3869 + c001aec2: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3877 return -1; - c001acf4: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3868 + c001aec4: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3876 JS_FreeValue(s->ctx, v); - c001acf6: e43ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3880 -} - c001acfa: 70e2 ld ra,56(sp) - c001acfc: 7442 ld s0,48(sp) - c001acfe: 74a2 ld s1,40(sp) - c001ad00: 7902 ld s2,32(sp) - c001ad02: 854e mv a0,s3 - c001ad04: 69e2 ld s3,24(sp) - c001ad06: 6121 addi sp,sp,64 - c001ad08: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3871 + c001aec6: d61ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3888 +} + c001aeca: 70e2 ld ra,56(sp) + c001aecc: 7442 ld s0,48(sp) + c001aece: 74a2 ld s1,40(sp) + c001aed0: 7902 ld s2,32(sp) + c001aed2: 854e mv a0,s3 + c001aed4: 69e2 ld s3,24(sp) + c001aed6: 6121 addi sp,sp,64 + c001aed8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3879 if (unlikely(JS_VALUE_GET_TAG(v) != JS_TAG_STRING)) { - c001ad0a: 0006079b sext.w a5,a2 - c001ad0e: 5765 li a4,-7 - c001ad10: 84ae mv s1,a1 - c001ad12: 8432 mv s0,a2 - c001ad14: 02e78763 beq a5,a4,c001ad42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3872 + c001aeda: 0006079b sext.w a5,a2 + c001aede: 5765 li a4,-7 + c001aee0: 84ae mv s1,a1 + c001aee2: 8432 mv s0,a2 + c001aee4: 02e78763 beq a5,a4,c001af12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3880 v = JS_ToStringFree(s->ctx, v); - c001ad18: 6108 ld a0,0(a0) - c001ad1a: ac7ff0ef jal ra,c001a7e0 - c001ad1e: e02a sd a0,0(sp) - c001ad20: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3873 + c001aee8: 6108 ld a0,0(a0) + c001aeea: ac7ff0ef jal ra,c001a9b0 + c001aeee: e02a sd a0,0(sp) + c001aef0: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3881 if (JS_IsException(v)) - c001ad22: 0005871b sext.w a4,a1 - c001ad26: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3872 + c001aef2: 0005871b sext.w a4,a1 + c001aef6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3880 v = JS_ToStringFree(s->ctx, v); - c001ad28: 84aa mv s1,a0 - c001ad2a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3873 + c001aef8: 84aa mv s1,a0 + c001aefa: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3881 if (JS_IsException(v)) - c001ad2c: 00f71b63 bne a4,a5,c001ad42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3880 -} - c001ad30: 7442 ld s0,48(sp) - c001ad32: 70e2 ld ra,56(sp) - c001ad34: 74a2 ld s1,40(sp) - c001ad36: 69e2 ld s3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3874 + c001aefc: 00f71b63 bne a4,a5,c001af12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3888 +} + c001af00: 7442 ld s0,48(sp) + c001af02: 70e2 ld ra,56(sp) + c001af04: 74a2 ld s1,40(sp) + c001af06: 69e2 ld s3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3882 return string_buffer_set_error(s); - c001ad38: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3880 + c001af08: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3888 } - c001ad3a: 7902 ld s2,32(sp) - c001ad3c: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3874 + c001af0a: 7902 ld s2,32(sp) + c001af0c: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3882 return string_buffer_set_error(s); - c001ad3e: 902ec06f j c0006e40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3877 + c001af0e: 820ec06f j c0006f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3885 res = string_buffer_concat(s, p, 0, p->len); - c001ad42: 40d4 lw a3,4(s1) - c001ad44: 85a6 mv a1,s1 - c001ad46: 4601 li a2,0 - c001ad48: 1686 slli a3,a3,0x21 - c001ad4a: 9285 srli a3,a3,0x21 - c001ad4c: 854a mv a0,s2 - c001ad4e: a1afe0ef jal ra,c0018f68 - c001ad52: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3878 + c001af12: 40d4 lw a3,4(s1) + c001af14: 85a6 mv a1,s1 + c001af16: 4601 li a2,0 + c001af18: 1686 slli a3,a3,0x21 + c001af1a: 9285 srli a3,a3,0x21 + c001af1c: 854a mv a0,s2 + c001af1e: a1afe0ef jal ra,c0019138 + c001af22: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3886 JS_FreeValue(s->ctx, v); - c001ad54: 00093503 ld a0,0(s2) - c001ad58: 85a6 mv a1,s1 - c001ad5a: 8622 mv a2,s0 - c001ad5c: dddec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3879 + c001af24: 00093503 ld a0,0(s2) + c001af28: 85a6 mv a1,s1 + c001af2a: 8622 mv a2,s0 + c001af2c: cfbec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3887 return res; - c001ad60: bf69 j c001acfa + c001af30: bf69 j c001aeca -00000000c001ad62 : +00000000c001af32 : js_regexp_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43803 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43811 { - c001ad62: 7175 addi sp,sp,-144 - c001ad64: e432 sd a2,8(sp) - c001ad66: e506 sd ra,136(sp) - c001ad68: e122 sd s0,128(sp) - c001ad6a: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43807 + c001af32: 7175 addi sp,sp,-144 + c001af34: e432 sd a2,8(sp) + c001af36: e506 sd ra,136(sp) + c001af38: e122 sd s0,128(sp) + c001af3a: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43815 if (!JS_IsObject(this_val)) - c001ad6c: 2601 sext.w a2,a2 - c001ad6e: 57fd li a5,-1 - c001ad70: 00f60763 beq a2,a5,c001ad7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43824 -} - c001ad74: 640a ld s0,128(sp) - c001ad76: 60aa ld ra,136(sp) - c001ad78: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43808 + c001af3c: 2601 sext.w a2,a2 + c001af3e: 57fd li a5,-1 + c001af40: 00f60763 beq a2,a5,c001af4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43832 +} + c001af44: 640a ld s0,128(sp) + c001af46: 60aa ld ra,136(sp) + c001af48: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43816 return JS_ThrowTypeErrorNotAnObject(ctx); - c001ad7a: bfff806f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43810 + c001af4a: b1df806f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43818 string_buffer_init(ctx, b, 0); - c001ad7e: 4601 li a2,0 - c001ad80: 108c addi a1,sp,96 - c001ad82: 842a mv s0,a0 - c001ad84: e4bfd0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43811 + c001af4e: 4601 li a2,0 + c001af50: 108c addi a1,sp,96 + c001af52: 842a mv s0,a0 + c001af54: e4bfd0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43819 string_buffer_putc8(b, '/'); - c001ad88: 02f00593 li a1,47 - c001ad8c: 1088 addi a0,sp,96 - c001ad8e: b58fe0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43812 + c001af58: 02f00593 li a1,47 + c001af5c: 1088 addi a0,sp,96 + c001af5e: b58fe0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43820 pattern = JS_GetProperty(ctx, this_val, JS_ATOM_source); - c001ad92: 6702 ld a4,0(sp) - c001ad94: 67a2 ld a5,8(sp) + c001af62: 6702 ld a4,0(sp) + c001af64: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001ad96: 4801 li a6,0 - c001ad98: 06d00693 li a3,109 - c001ad9c: 863e mv a2,a5 - c001ad9e: 85ba mv a1,a4 - c001ada0: 8522 mv a0,s0 - c001ada2: e8ba sd a4,80(sp) - c001ada4: ecbe sd a5,88(sp) - c001ada6: a9df60ef jal ra,c0011842 - c001adaa: 862e mv a2,a1 + c001af66: 4801 li a6,0 + c001af68: 06d00693 li a3,109 + c001af6c: 863e mv a2,a5 + c001af6e: 85ba mv a1,a4 + c001af70: 8522 mv a0,s0 + c001af72: e8ba sd a4,80(sp) + c001af74: ecbe sd a5,88(sp) + c001af76: 9bbf60ef jal ra,c0011930 + c001af7a: 862e mv a2,a1 js_regexp_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43813 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43821 if (string_buffer_concat_value_free(b, pattern)) - c001adac: 85aa mv a1,a0 - c001adae: 1088 addi a0,sp,96 - c001adb0: f2dff0ef jal ra,c001acdc - c001adb4: e529 bnez a0,c001adfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43815 + c001af7c: 85aa mv a1,a0 + c001af7e: 1088 addi a0,sp,96 + c001af80: f2dff0ef jal ra,c001aeac + c001af84: e529 bnez a0,c001afce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43823 string_buffer_putc8(b, '/'); - c001adb6: 02f00593 li a1,47 - c001adba: 1088 addi a0,sp,96 - c001adbc: b2afe0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43816 + c001af86: 02f00593 li a1,47 + c001af8a: 1088 addi a0,sp,96 + c001af8c: b2afe0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43824 flags = JS_GetProperty(ctx, this_val, JS_ATOM_flags); - c001adc0: 6702 ld a4,0(sp) - c001adc2: 67a2 ld a5,8(sp) + c001af90: 6702 ld a4,0(sp) + c001af92: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001adc4: 4801 li a6,0 - c001adc6: 06e00693 li a3,110 - c001adca: 863e mv a2,a5 - c001adcc: 85ba mv a1,a4 - c001adce: 8522 mv a0,s0 - c001add0: e0ba sd a4,64(sp) - c001add2: e4be sd a5,72(sp) - c001add4: a6ff60ef jal ra,c0011842 - c001add8: 862e mv a2,a1 - c001adda: e8aa sd a0,80(sp) - c001addc: ecae sd a1,88(sp) + c001af94: 4801 li a6,0 + c001af96: 06e00693 li a3,110 + c001af9a: 863e mv a2,a5 + c001af9c: 85ba mv a1,a4 + c001af9e: 8522 mv a0,s0 + c001afa0: e0ba sd a4,64(sp) + c001afa2: e4be sd a5,72(sp) + c001afa4: 98df60ef jal ra,c0011930 + c001afa8: 862e mv a2,a1 + c001afaa: e8aa sd a0,80(sp) + c001afac: ecae sd a1,88(sp) js_regexp_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43817 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43825 if (string_buffer_concat_value_free(b, flags)) - c001adde: 85aa mv a1,a0 - c001ade0: 1088 addi a0,sp,96 - c001ade2: efbff0ef jal ra,c001acdc - c001ade6: ed01 bnez a0,c001adfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43819 + c001afae: 85aa mv a1,a0 + c001afb0: 1088 addi a0,sp,96 + c001afb2: efbff0ef jal ra,c001aeac + c001afb6: ed01 bnez a0,c001afce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43827 return string_buffer_end(b); - c001ade8: 1088 addi a0,sp,96 - c001adea: f21fe0ef jal ra,c0019d0a - c001adee: e0aa sd a0,64(sp) - c001adf0: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43824 -} - c001adf2: 60aa ld ra,136(sp) - c001adf4: 640a ld s0,128(sp) - c001adf6: 6506 ld a0,64(sp) - c001adf8: 65a6 ld a1,72(sp) - c001adfa: 6149 addi sp,sp,144 - c001adfc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43822 + c001afb8: 1088 addi a0,sp,96 + c001afba: f21fe0ef jal ra,c0019eda + c001afbe: e0aa sd a0,64(sp) + c001afc0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43832 +} + c001afc2: 60aa ld ra,136(sp) + c001afc4: 640a ld s0,128(sp) + c001afc6: 6506 ld a0,64(sp) + c001afc8: 65a6 ld a1,72(sp) + c001afca: 6149 addi sp,sp,144 + c001afcc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43830 string_buffer_free(b); - c001adfe: 1088 addi a0,sp,96 - c001ae00: 866ec0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43823 + c001afce: 1088 addi a0,sp,96 + c001afd0: f85eb0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43831 return JS_EXCEPTION; - c001ae04: 4799 li a5,6 - c001ae06: e082 sd zero,64(sp) - c001ae08: e4be sd a5,72(sp) - c001ae0a: b7e5 j c001adf2 + c001afd4: 4799 li a5,6 + c001afd6: e082 sd zero,64(sp) + c001afd8: e4be sd a5,72(sp) + c001afda: b7e5 j c001afc2 -00000000c001ae0c : +00000000c001afdc : check_regexp_g_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41867 -{ - c001ae0c: 7159 addi sp,sp,-112 - c001ae0e: f0a2 sd s0,96(sp) - c001ae10: f486 sd ra,104(sp) - c001ae12: eca6 sd s1,88(sp) - c001ae14: e8ca sd s2,80(sp) - c001ae16: e4ce sd s3,72(sp) - c001ae18: 842a mv s0,a0 - c001ae1a: e02e sd a1,0(sp) - c001ae1c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41871 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41875 +{ + c001afdc: 7159 addi sp,sp,-112 + c001afde: f0a2 sd s0,96(sp) + c001afe0: f486 sd ra,104(sp) + c001afe2: eca6 sd s1,88(sp) + c001afe4: e8ca sd s2,80(sp) + c001afe6: e4ce sd s3,72(sp) + c001afe8: 842a mv s0,a0 + c001afea: e02e sd a1,0(sp) + c001afec: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41879 ret = js_is_regexp(ctx, regexp); - c001ae1e: e0bf60ef jal ra,c0011c28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41872 + c001afee: d29f60ef jal ra,c0011d16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41880 if (ret < 0) - c001ae22: 00055463 bgez a0,c001ae2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41889 + c001aff2: 00055463 bgez a0,c001affa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41897 return -1; - c001ae26: 557d li a0,-1 - c001ae28: a019 j c001ae2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41874 + c001aff6: 557d li a0,-1 + c001aff8: a019 j c001affe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41882 if (ret) { - c001ae2a: e909 bnez a0,c001ae3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41892 + c001affa: e909 bnez a0,c001b00c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41900 return 0; - c001ae2c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41893 -} - c001ae2e: 70a6 ld ra,104(sp) - c001ae30: 7406 ld s0,96(sp) - c001ae32: 64e6 ld s1,88(sp) - c001ae34: 6946 ld s2,80(sp) - c001ae36: 69a6 ld s3,72(sp) - c001ae38: 6165 addi sp,sp,112 - c001ae3a: 8082 ret + c001affc: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41901 +} + c001affe: 70a6 ld ra,104(sp) + c001b000: 7406 ld s0,96(sp) + c001b002: 64e6 ld s1,88(sp) + c001b004: 6946 ld s2,80(sp) + c001b006: 69a6 ld s3,72(sp) + c001b008: 6165 addi sp,sp,112 + c001b00a: 8082 ret JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001ae3c: 67a2 ld a5,8(sp) - c001ae3e: 6702 ld a4,0(sp) - c001ae40: 4801 li a6,0 - c001ae42: 863e mv a2,a5 - c001ae44: 06e00693 li a3,110 - c001ae48: 85ba mv a1,a4 - c001ae4a: 8522 mv a0,s0 - c001ae4c: 9f7f60ef jal ra,c0011842 + c001b00c: 67a2 ld a5,8(sp) + c001b00e: 6702 ld a4,0(sp) + c001b010: 4801 li a6,0 + c001b012: 863e mv a2,a5 + c001b014: 06e00693 li a3,110 + c001b018: 85ba mv a1,a4 + c001b01a: 8522 mv a0,s0 + c001b01c: 915f60ef jal ra,c0011930 check_regexp_g_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41884 if (JS_IsException(flags)) - c001ae50: 0005879b sext.w a5,a1 - c001ae54: 4919 li s2,6 + c001b020: 0005879b sext.w a5,a1 + c001b024: 4919 li s2,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001ae56: 862e mv a2,a1 + c001b026: 862e mv a2,a1 check_regexp_g_flag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41876 - c001ae58: fd2787e3 beq a5,s2,c001ae26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41878 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41884 + c001b028: fd2787e3 beq a5,s2,c001aff6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41886 (discriminator 1) if (JS_IsUndefined(flags) || JS_IsNull(flags)) { - c001ae5c: ffe5879b addiw a5,a1,-2 - c001ae60: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41879 (discriminator 1) + c001b02c: ffe5879b addiw a5,a1,-2 + c001b030: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41887 (discriminator 1) JS_ThrowTypeError(ctx, "cannot convert to object"); - c001ae62: 00043597 auipc a1,0x43 - c001ae66: 46e58593 addi a1,a1,1134 # c005e2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41878 (discriminator 1) + c001b032: 00043597 auipc a1,0x43 + c001b036: 4fe58593 addi a1,a1,1278 # c005e530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41886 (discriminator 1) if (JS_IsUndefined(flags) || JS_IsNull(flags)) { - c001ae6a: 02f77d63 bgeu a4,a5,c001aea4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41882 + c001b03a: 02f77d63 bgeu a4,a5,c001b074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41890 flags = JS_ToStringFree(ctx, flags); - c001ae6e: 85aa mv a1,a0 - c001ae70: 8522 mv a0,s0 - c001ae72: 96fff0ef jal ra,c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41883 + c001b03e: 85aa mv a1,a0 + c001b040: 8522 mv a0,s0 + c001b042: 96fff0ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41891 if (JS_IsException(flags)) - c001ae76: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41882 + c001b046: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41890 flags = JS_ToStringFree(ctx, flags); - c001ae7a: 89aa mv s3,a0 - c001ae7c: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41883 + c001b04a: 89aa mv s3,a0 + c001b04c: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41891 if (JS_IsException(flags)) - c001ae7e: fb2784e3 beq a5,s2,c001ae26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41885 + c001b04e: fb2784e3 beq a5,s2,c001aff6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41893 ret = string_indexof_char(JS_VALUE_GET_STRING(flags), 'g', 0); - c001ae82: 4601 li a2,0 - c001ae84: 06700593 li a1,103 - c001ae88: 803e90ef jal ra,c000468a - c001ae8c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41886 + c001b052: 4601 li a2,0 + c001b054: 06700593 li a1,103 + c001b058: e32e90ef jal ra,c000468a + c001b05c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41894 JS_FreeValue(ctx, flags); - c001ae8e: 85ce mv a1,s3 - c001ae90: 8626 mv a2,s1 - c001ae92: 8522 mv a0,s0 - c001ae94: ca5ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41887 + c001b05e: 85ce mv a1,s3 + c001b060: 8626 mv a2,s1 + c001b062: 8522 mv a0,s0 + c001b064: bc3ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41895 if (ret < 0) { - c001ae98: f8095ae3 bgez s2,c001ae2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41888 + c001b068: f8095ae3 bgez s2,c001affc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41896 JS_ThrowTypeError(ctx, "regexp must have the 'g' flag"); - c001ae9c: 00043597 auipc a1,0x43 - c001aea0: 45458593 addi a1,a1,1108 # c005e2f0 - c001aea4: 8522 mv a0,s0 - c001aea6: d50f80ef jal ra,c00133f6 - c001aeaa: bfb5 j c001ae26 + c001b06c: 00043597 auipc a1,0x43 + c001b070: 4e458593 addi a1,a1,1252 # c005e550 + c001b074: 8522 mv a0,s0 + c001b076: c6ef80ef jal ra,c00134e4 + c001b07a: bfb5 j c001aff6 -00000000c001aeac : +00000000c001b07c : JS_ToStringCheckObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11770 if (tag == JS_TAG_NULL || tag == JS_TAG_UNDEFINED) - c001aeac: ffe6079b addiw a5,a2,-2 - c001aeb0: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11760 + c001b07c: ffe6079b addiw a5,a2,-2 + c001b080: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11768 { - c001aeb2: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11762 + c001b082: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11770 if (tag == JS_TAG_NULL || tag == JS_TAG_UNDEFINED) - c001aeb4: 00f76963 bltu a4,a5,c001aec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11763 + c001b084: 00f76963 bltu a4,a5,c001b096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11771 return JS_ThrowTypeError(ctx, "null or undefined are forbidden"); - c001aeb8: 00043597 auipc a1,0x43 - c001aebc: 45858593 addi a1,a1,1112 # c005e310 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11765 + c001b088: 00043597 auipc a1,0x43 + c001b08c: 4e858593 addi a1,a1,1256 # c005e570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11773 } - c001aec0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11763 + c001b090: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11771 return JS_ThrowTypeError(ctx, "null or undefined are forbidden"); - c001aec2: d34f806f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11765 + c001b092: c52f806f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11773 } - c001aec6: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11764 + c001b096: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11772 return JS_ToString(ctx, val); - c001aec8: 90fff06f j c001a7d6 + c001b098: 90fff06f j c001a9a6 -00000000c001aecc : +00000000c001b09c : JS_ToQuotedString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11768 -{ - c001aecc: 7131 addi sp,sp,-192 - c001aece: f922 sd s0,176(sp) - c001aed0: f526 sd s1,168(sp) - c001aed2: fd06 sd ra,184(sp) - c001aed4: f14a sd s2,160(sp) - c001aed6: ed4e sd s3,152(sp) - c001aed8: e952 sd s4,144(sp) - c001aeda: e556 sd s5,136(sp) - c001aedc: e15a sd s6,128(sp) - c001aede: fcde sd s7,120(sp) - c001aee0: 84aa mv s1,a0 - c001aee2: e02e sd a1,0(sp) - c001aee4: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11776 +{ + c001b09c: 7131 addi sp,sp,-192 + c001b09e: f922 sd s0,176(sp) + c001b0a0: f526 sd s1,168(sp) + c001b0a2: fd06 sd ra,184(sp) + c001b0a4: f14a sd s2,160(sp) + c001b0a6: ed4e sd s3,152(sp) + c001b0a8: e952 sd s4,144(sp) + c001b0aa: e556 sd s5,136(sp) + c001b0ac: e15a sd s6,128(sp) + c001b0ae: fcde sd s7,120(sp) + c001b0b0: 84aa mv s1,a0 + c001b0b2: e02e sd a1,0(sp) + c001b0b4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11784 val = JS_ToStringCheckObject(ctx, val1); - c001aee6: fc7ff0ef jal ra,c001aeac - c001aeea: f02a sd a0,32(sp) - c001aeec: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11777 + c001b0b6: fc7ff0ef jal ra,c001b07c + c001b0ba: f02a sd a0,32(sp) + c001b0bc: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11785 if (JS_IsException(val)) - c001aeee: 0005871b sext.w a4,a1 - c001aef2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11776 + c001b0be: 0005871b sext.w a4,a1 + c001b0c2: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11784 val = JS_ToStringCheckObject(ctx, val1); - c001aef4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11777 + c001b0c4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11785 if (JS_IsException(val)) - c001aef6: 02f71163 bne a4,a5,c001af18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11778 + c001b0c6: 02f71163 bne a4,a5,c001b0e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11786 return val; - c001aefa: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11827 + c001b0ca: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11835 return string_buffer_end(b); - c001aefc: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11832 -} - c001aefe: 70ea ld ra,184(sp) - c001af00: 744a ld s0,176(sp) - c001af02: 6506 ld a0,64(sp) - c001af04: 65a6 ld a1,72(sp) - c001af06: 74aa ld s1,168(sp) - c001af08: 790a ld s2,160(sp) - c001af0a: 69ea ld s3,152(sp) - c001af0c: 6a4a ld s4,144(sp) - c001af0e: 6aaa ld s5,136(sp) - c001af10: 6b0a ld s6,128(sp) - c001af12: 7be6 ld s7,120(sp) - c001af14: 6129 addi sp,sp,192 - c001af16: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11781 + c001b0cc: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11840 +} + c001b0ce: 70ea ld ra,184(sp) + c001b0d0: 744a ld s0,176(sp) + c001b0d2: 6506 ld a0,64(sp) + c001b0d4: 65a6 ld a1,72(sp) + c001b0d6: 74aa ld s1,168(sp) + c001b0d8: 790a ld s2,160(sp) + c001b0da: 69ea ld s3,152(sp) + c001b0dc: 6a4a ld s4,144(sp) + c001b0de: 6aaa ld s5,136(sp) + c001b0e0: 6b0a ld s6,128(sp) + c001b0e2: 7be6 ld s7,120(sp) + c001b0e4: 6129 addi sp,sp,192 + c001b0e6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11789 if (string_buffer_init(ctx, b, p->len + 2)) - c001af18: 4150 lw a2,4(a0) - c001af1a: 80000937 lui s2,0x80000 - c001af1e: fff94913 not s2,s2 - c001af22: 01267633 and a2,a2,s2 - c001af26: 2609 addiw a2,a2,2 - c001af28: 088c addi a1,sp,80 - c001af2a: 8526 mv a0,s1 - c001af2c: ca3fd0ef jal ra,c0018bce - c001af30: ed51 bnez a0,c001afcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11784 + c001b0e8: 4150 lw a2,4(a0) + c001b0ea: 80000937 lui s2,0x80000 + c001b0ee: fff94913 not s2,s2 + c001b0f2: 01267633 and a2,a2,s2 + c001b0f6: 2609 addiw a2,a2,2 + c001b0f8: 088c addi a1,sp,80 + c001b0fa: 8526 mv a0,s1 + c001b0fc: ca3fd0ef jal ra,c0018d9e + c001b100: ed51 bnez a0,c001b19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11792 if (string_buffer_putc8(b, '\"')) - c001af32: 02200593 li a1,34 - c001af36: 0888 addi a0,sp,80 - c001af38: 9aefe0ef jal ra,c00190e6 - c001af3c: e941 bnez a0,c001afcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11813 + c001b102: 02200593 li a1,34 + c001b106: 0888 addi a0,sp,80 + c001b108: 9aefe0ef jal ra,c00192b6 + c001b10c: e941 bnez a0,c001b19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11821 if (c < 32 || (c >= 0xd800 && c < 0xe000)) { - c001af3e: 79cd lui s3,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11786 + c001b10e: 79cd lui s3,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11794 for(i = 0; i < p->len; ) { - c001af40: ce02 sw zero,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11788 + c001b110: ce02 sw zero,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11796 switch(c) { - c001af42: 4ab5 li s5,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11813 + c001b112: 4ab5 li s5,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11821 if (c < 32 || (c >= 0xd800 && c < 0xe000)) { - c001af44: 4b7d li s6,31 - c001af46: 8009899b addiw s3,s3,-2048 - c001af4a: 00043a17 auipc s4,0x43 - c001af4e: 3eea0a13 addi s4,s4,1006 # c005e338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11786 (discriminator 1) + c001b114: 4b7d li s6,31 + c001b116: 8009899b addiw s3,s3,-2048 + c001b11a: 00043a17 auipc s4,0x43 + c001b11e: 47ea0a13 addi s4,s4,1150 # c005e598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11794 (discriminator 1) for(i = 0; i < p->len; ) { - c001af52: 405c lw a5,4(s0) - c001af54: 4772 lw a4,28(sp) - c001af56: 00f977b3 and a5,s2,a5 - c001af5a: 02f74263 blt a4,a5,c001af7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11824 + c001b122: 405c lw a5,4(s0) + c001b124: 4772 lw a4,28(sp) + c001b126: 00f977b3 and a5,s2,a5 + c001b12a: 02f74263 blt a4,a5,c001b14e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11832 if (string_buffer_putc8(b, '\"')) - c001af5e: 02200593 li a1,34 - c001af62: 0888 addi a0,sp,80 - c001af64: 982fe0ef jal ra,c00190e6 - c001af68: e135 bnez a0,c001afcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11826 + c001b12e: 02200593 li a1,34 + c001b132: 0888 addi a0,sp,80 + c001b134: 982fe0ef jal ra,c00192b6 + c001b138: e135 bnez a0,c001b19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11834 JS_FreeValue(ctx, val); - c001af6a: 7582 ld a1,32(sp) - c001af6c: 7622 ld a2,40(sp) - c001af6e: 8526 mv a0,s1 - c001af70: bc9ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11827 + c001b13a: 7582 ld a1,32(sp) + c001b13c: 7622 ld a2,40(sp) + c001b13e: 8526 mv a0,s1 + c001b140: ae7ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11835 return string_buffer_end(b); - c001af74: 0888 addi a0,sp,80 - c001af76: d95fe0ef jal ra,c0019d0a - c001af7a: e0aa sd a0,64(sp) - c001af7c: b741 j c001aefc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11787 + c001b144: 0888 addi a0,sp,80 + c001b146: d95fe0ef jal ra,c0019eda + c001b14a: e0aa sd a0,64(sp) + c001b14c: b741 j c001b0cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11795 c = string_getc(p, &i); - c001af7e: 086c addi a1,sp,28 - c001af80: 8522 mv a0,s0 - c001af82: 9fee90ef jal ra,c0004180 - c001af86: 0005069b sext.w a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11788 + c001b14e: 086c addi a1,sp,28 + c001b150: 8522 mv a0,s0 + c001b152: 82ee90ef jal ra,c0004180 + c001b156: 0005069b sext.w a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11796 switch(c) { - c001af8a: 04aacd63 blt s5,a0,c001afe4 - c001af8e: 479d li a5,7 - c001af90: 06a7d263 bge a5,a0,c001aff4 - c001af94: ff85079b addiw a5,a0,-8 - c001af98: 0007861b sext.w a2,a5 - c001af9c: 4715 li a4,5 - c001af9e: 04c76b63 bltu a4,a2,c001aff4 - c001afa2: 02079713 slli a4,a5,0x20 - c001afa6: 01e75793 srli a5,a4,0x1e - c001afaa: 97d2 add a5,a5,s4 - c001afac: 439c lw a5,0(a5) - c001afae: 97d2 add a5,a5,s4 - c001afb0: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11793 + c001b15a: 04aacd63 blt s5,a0,c001b1b4 + c001b15e: 479d li a5,7 + c001b160: 06a7d263 bge a5,a0,c001b1c4 + c001b164: ff85079b addiw a5,a0,-8 + c001b168: 0007861b sext.w a2,a5 + c001b16c: 4715 li a4,5 + c001b16e: 04c76b63 bltu a4,a2,c001b1c4 + c001b172: 02079713 slli a4,a5,0x20 + c001b176: 01e75793 srli a5,a4,0x1e + c001b17a: 97d2 add a5,a5,s4 + c001b17c: 439c lw a5,0(a5) + c001b17e: 97d2 add a5,a5,s4 + c001b180: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11801 c = 'r'; - c001afb2: 07200b93 li s7,114 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11807 + c001b182: 07200b93 li s7,114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11815 if (string_buffer_putc8(b, '\\')) - c001afb6: 05c00593 li a1,92 - c001afba: 0888 addi a0,sp,80 - c001afbc: 92afe0ef jal ra,c00190e6 - c001afc0: e511 bnez a0,c001afcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11809 + c001b186: 05c00593 li a1,92 + c001b18a: 0888 addi a0,sp,80 + c001b18c: 92afe0ef jal ra,c00192b6 + c001b190: e511 bnez a0,c001b19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11817 if (string_buffer_putc8(b, c)) - c001afc2: 85de mv a1,s7 - c001afc4: 0888 addi a0,sp,80 - c001afc6: 920fe0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11818 + c001b192: 85de mv a1,s7 + c001b194: 0888 addi a0,sp,80 + c001b196: 920fe0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11826 if (string_buffer_putc(b, c)) - c001afca: d541 beqz a0,c001af52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11829 + c001b19a: d541 beqz a0,c001b122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11837 JS_FreeValue(ctx, val); - c001afcc: 7582 ld a1,32(sp) - c001afce: 7622 ld a2,40(sp) - c001afd0: 8526 mv a0,s1 - c001afd2: b67ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11830 + c001b19c: 7582 ld a1,32(sp) + c001b19e: 7622 ld a2,40(sp) + c001b1a0: 8526 mv a0,s1 + c001b1a2: a85ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11838 string_buffer_free(b); - c001afd6: 0888 addi a0,sp,80 - c001afd8: e8feb0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11831 + c001b1a6: 0888 addi a0,sp,80 + c001b1a8: dadeb0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11839 return JS_EXCEPTION; - c001afdc: 4799 li a5,6 - c001afde: e082 sd zero,64(sp) - c001afe0: e4be sd a5,72(sp) - c001afe2: bf31 j c001aefe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11788 + c001b1ac: 4799 li a5,6 + c001b1ae: e082 sd zero,64(sp) + c001b1b0: e4be sd a5,72(sp) + c001b1b2: bf31 j c001b0ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11796 switch(c) { - c001afe4: 02200793 li a5,34 - c001afe8: 04f50763 beq a0,a5,c001b036 - c001afec: 05c00b93 li s7,92 - c001aff0: fd7503e3 beq a0,s7,c001afb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11813 + c001b1b4: 02200793 li a5,34 + c001b1b8: 04f50763 beq a0,a5,c001b206 + c001b1bc: 05c00b93 li s7,92 + c001b1c0: fd7503e3 beq a0,s7,c001b186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11821 if (c < 32 || (c >= 0xd800 && c < 0xe000)) { - c001aff4: 00db7863 bgeu s6,a3,c001b004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11813 (discriminator 1) - c001aff8: 00d987bb addw a5,s3,a3 - c001affc: 7ff00713 li a4,2047 - c001b000: 02f76e63 bltu a4,a5,c001b03c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11814 + c001b1c4: 00db7863 bgeu s6,a3,c001b1d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11821 (discriminator 1) + c001b1c8: 00d987bb addw a5,s3,a3 + c001b1cc: 7ff00713 li a4,2047 + c001b1d0: 02f76e63 bltu a4,a5,c001b20c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11822 snprintf(buf, sizeof(buf), "\\u%04x", c); - c001b004: 00043617 auipc a2,0x43 - c001b008: 32c60613 addi a2,a2,812 # c005e330 - c001b00c: 45c1 li a1,16 - c001b00e: 1808 addi a0,sp,48 - c001b010: 1f4390ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11815 + c001b1d4: 00043617 auipc a2,0x43 + c001b1d8: 3bc60613 addi a2,a2,956 # c005e590 + c001b1dc: 45c1 li a1,16 + c001b1de: 1808 addi a0,sp,48 + c001b1e0: 1f4390ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11823 if (string_buffer_puts8(b, buf)) - c001b014: 180c addi a1,sp,48 - c001b016: 0888 addi a0,sp,80 - c001b018: 834fe0ef jal ra,c001904c - c001b01c: b77d j c001afca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11796 + c001b1e4: 180c addi a1,sp,48 + c001b1e6: 0888 addi a0,sp,80 + c001b1e8: 834fe0ef jal ra,c001921c + c001b1ec: b77d j c001b19a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11804 c = 'n'; - c001b01e: 06e00b93 li s7,110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11797 + c001b1ee: 06e00b93 li s7,110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11805 goto quote; - c001b022: bf51 j c001afb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11799 + c001b1f2: bf51 j c001b186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11807 c = 'b'; - c001b024: 06200b93 li s7,98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11800 + c001b1f4: 06200b93 li s7,98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11808 goto quote; - c001b028: b779 j c001afb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11802 + c001b1f8: b779 j c001b186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11810 c = 'f'; - c001b02a: 06600b93 li s7,102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11803 + c001b1fa: 06600b93 li s7,102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11811 goto quote; - c001b02e: b761 j c001afb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11788 + c001b1fe: b761 j c001b186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11796 switch(c) { - c001b030: 07400b93 li s7,116 - c001b034: b749 j c001afb6 - c001b036: 02200b93 li s7,34 - c001b03a: bfb5 j c001afb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11818 + c001b200: 07400b93 li s7,116 + c001b204: b749 j c001b186 + c001b206: 02200b93 li s7,34 + c001b20a: bfb5 j c001b186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11826 if (string_buffer_putc(b, c)) - c001b03c: 85b6 mv a1,a3 - c001b03e: 0888 addi a0,sp,80 - c001b040: 9b6fe0ef jal ra,c00191f6 - c001b044: b759 j c001afca + c001b20c: 85b6 mv a1,a3 + c001b20e: 0888 addi a0,sp,80 + c001b210: 9b6fe0ef jal ra,c00193c6 + c001b214: b759 j c001b19a -00000000c001b046 : +00000000c001b216 : JS_ToQuotedStringFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45225 static JSValue JS_ToQuotedStringFree(JSContext *ctx, JSValue val) { - c001b046: 7139 addi sp,sp,-64 - c001b048: fc06 sd ra,56(sp) - c001b04a: f822 sd s0,48(sp) - c001b04c: e432 sd a2,8(sp) - c001b04e: 842a mv s0,a0 - c001b050: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45218 + c001b216: 7139 addi sp,sp,-64 + c001b218: fc06 sd ra,56(sp) + c001b21a: f822 sd s0,48(sp) + c001b21c: e432 sd a2,8(sp) + c001b21e: 842a mv s0,a0 + c001b220: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45226 JSValue r = JS_ToQuotedString(ctx, val); - c001b052: e7bff0ef jal ra,c001aecc - c001b056: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45219 + c001b222: e7bff0ef jal ra,c001b09c + c001b226: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45227 JS_FreeValue(ctx, val); - c001b058: 6622 ld a2,8(sp) - c001b05a: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45218 + c001b228: 6622 ld a2,8(sp) + c001b22a: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45226 JSValue r = JS_ToQuotedString(ctx, val); - c001b05c: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45219 + c001b22c: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45227 JS_FreeValue(ctx, val); - c001b05e: 8522 mv a0,s0 - c001b060: ad9ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45221 -} - c001b064: 70e2 ld ra,56(sp) - c001b066: 7442 ld s0,48(sp) - c001b068: 6542 ld a0,16(sp) - c001b06a: 65e2 ld a1,24(sp) - c001b06c: 6121 addi sp,sp,64 - c001b06e: 8082 ret - -00000000c001b070 : + c001b22e: 8522 mv a0,s0 + c001b230: 9f7ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45229 +} + c001b234: 70e2 ld ra,56(sp) + c001b236: 7442 ld s0,48(sp) + c001b238: 6542 ld a0,16(sp) + c001b23a: 65e2 ld a1,24(sp) + c001b23c: 6121 addi sp,sp,64 + c001b23e: 8082 ret + +00000000c001b240 : js_string___quote(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42497 { - c001b070: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42491 + c001b240: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42499 } - c001b072: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42490 + c001b242: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42498 return JS_ToQuotedString(ctx, this_val); - c001b074: e59ff06f j c001aecc + c001b244: e59ff06f j c001b09c -00000000c001b078 : +00000000c001b248 : js_string_CreateHTML(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42884 -{ - c001b078: 7135 addi sp,sp,-160 - c001b07a: e922 sd s0,144(sp) - c001b07c: e526 sd s1,136(sp) - c001b07e: e14a sd s2,128(sp) - c001b080: f8d2 sd s4,112(sp) - c001b082: ed06 sd ra,152(sp) - c001b084: fcce sd s3,120(sp) - c001b086: f4d6 sd s5,104(sp) - c001b088: f0da sd s6,96(sp) - c001b08a: 84aa mv s1,a0 - c001b08c: e02e sd a1,0(sp) - c001b08e: e432 sd a2,8(sp) - c001b090: 893a mv s2,a4 - c001b092: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42895 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42892 +{ + c001b248: 7135 addi sp,sp,-160 + c001b24a: e922 sd s0,144(sp) + c001b24c: e526 sd s1,136(sp) + c001b24e: e14a sd s2,128(sp) + c001b250: f8d2 sd s4,112(sp) + c001b252: ed06 sd ra,152(sp) + c001b254: fcce sd s3,120(sp) + c001b256: f4d6 sd s5,104(sp) + c001b258: f0da sd s6,96(sp) + c001b25a: 84aa mv s1,a0 + c001b25c: e02e sd a1,0(sp) + c001b25e: e432 sd a2,8(sp) + c001b260: 893a mv s2,a4 + c001b262: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42903 str = JS_ToStringCheckObject(ctx, this_val); - c001b094: e19ff0ef jal ra,c001aeac - c001b098: ec2e sd a1,24(sp) - c001b09a: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42896 + c001b264: e19ff0ef jal ra,c001b07c + c001b268: ec2e sd a1,24(sp) + c001b26a: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42904 if (JS_IsException(str)) - c001b09c: 2581 sext.w a1,a1 - c001b09e: 4a19 li s4,6 - c001b0a0: 01459563 bne a1,s4,c001b0aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42897 + c001b26c: 2581 sext.w a1,a1 + c001b26e: 4a19 li s4,6 + c001b270: 01459563 bne a1,s4,c001b27a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42905 return JS_EXCEPTION; - c001b0a4: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42933 + c001b274: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42941 return string_buffer_end(b); - c001b0a6: fc2e sd a1,56(sp) - c001b0a8: a8d5 j c001b19c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42898 + c001b276: fc2e sd a1,56(sp) + c001b278: a8d5 j c001b36c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42906 string_buffer_init(ctx, b, 7); - c001b0aa: 461d li a2,7 - c001b0ac: 008c addi a1,sp,64 - c001b0ae: 8526 mv a0,s1 - c001b0b0: b1ffd0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42899 + c001b27a: 461d li a2,7 + c001b27c: 008c addi a1,sp,64 + c001b27e: 8526 mv a0,s1 + c001b280: b1ffd0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42907 string_buffer_putc8(b, '<'); - c001b0b4: 03c00593 li a1,60 - c001b0b8: 0088 addi a0,sp,64 - c001b0ba: 82cfe0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42900 + c001b284: 03c00593 li a1,60 + c001b288: 0088 addi a0,sp,64 + c001b28a: 82cfe0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42908 string_buffer_puts8(b, defs[magic].tag); - c001b0be: 00047797 auipc a5,0x47 - c001b0c2: fea78793 addi a5,a5,-22 # c00620a8 - c001b0c6: 0412 slli s0,s0,0x4 - c001b0c8: 943e add s0,s0,a5 - c001b0ca: 00043a83 ld s5,0(s0) - c001b0ce: 0088 addi a0,sp,64 - c001b0d0: 85d6 mv a1,s5 - c001b0d2: f7bfd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42901 + c001b28e: 00047797 auipc a5,0x47 + c001b292: 07a78793 addi a5,a5,122 # c0062308 + c001b296: 0412 slli s0,s0,0x4 + c001b298: 943e add s0,s0,a5 + c001b29a: 00043a83 ld s5,0(s0) + c001b29e: 0088 addi a0,sp,64 + c001b2a0: 85d6 mv a1,s5 + c001b2a2: f7bfd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42909 if (defs[magic].attr) { - c001b0d6: 6400 ld s0,8(s0) - c001b0d8: c82d beqz s0,c001b14a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42906 + c001b2a6: 6400 ld s0,8(s0) + c001b2a8: c82d beqz s0,c001b31a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42914 string_buffer_putc8(b, ' '); - c001b0da: 02000593 li a1,32 - c001b0de: 0088 addi a0,sp,64 - c001b0e0: 806fe0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42907 + c001b2aa: 02000593 li a1,32 + c001b2ae: 0088 addi a0,sp,64 + c001b2b0: 806fe0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42915 string_buffer_puts8(b, defs[magic].attr); - c001b0e4: 85a2 mv a1,s0 - c001b0e6: 0088 addi a0,sp,64 - c001b0e8: f65fd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42908 + c001b2b4: 85a2 mv a1,s0 + c001b2b6: 0088 addi a0,sp,64 + c001b2b8: f65fd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42916 string_buffer_puts8(b, "=\""); - c001b0ec: 00043597 auipc a1,0x43 - c001b0f0: 26458593 addi a1,a1,612 # c005e350 - c001b0f4: 0088 addi a0,sp,64 - c001b0f6: f57fd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42909 + c001b2bc: 00043597 auipc a1,0x43 + c001b2c0: 2f458593 addi a1,a1,756 # c005e5b0 + c001b2c4: 0088 addi a0,sp,64 + c001b2c6: f57fd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42917 value = JS_ToStringCheckObject(ctx, argv[0]); - c001b0fa: 00093583 ld a1,0(s2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c001b0fe: 00893603 ld a2,8(s2) - c001b102: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42916 + c001b2ca: 00093583 ld a1,0(s2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c001b2ce: 00893603 ld a2,8(s2) + c001b2d2: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42924 for (i = 0; i < p->len; i++) { - c001b104: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42909 + c001b2d4: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42917 value = JS_ToStringCheckObject(ctx, argv[0]); - c001b106: da7ff0ef jal ra,c001aeac - c001b10a: f02a sd a0,32(sp) - c001b10c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42910 + c001b2d6: da7ff0ef jal ra,c001b07c + c001b2da: f02a sd a0,32(sp) + c001b2dc: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42918 if (JS_IsException(value)) { - c001b10e: 0005841b sext.w s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42909 + c001b2de: 0005841b sext.w s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42917 value = JS_ToStringCheckObject(ctx, argv[0]); - c001b112: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42910 + c001b2e2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42918 if (JS_IsException(value)) { - c001b114: 07440a63 beq s0,s4,c001b188 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42916 + c001b2e4: 07440a63 beq s0,s4,c001b358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42924 for (i = 0; i < p->len; i++) { - c001b118: 80000437 lui s0,0x80000 - c001b11c: fff44413 not s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42918 + c001b2e8: 80000437 lui s0,0x80000 + c001b2ec: fff44413 not s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42926 if (c == '"') { - c001b120: 02200a13 li s4,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42919 + c001b2f0: 02200a13 li s4,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42927 string_buffer_puts8(b, """); - c001b124: 00043b17 auipc s6,0x43 - c001b128: 234b0b13 addi s6,s6,564 # c005e358 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42916 (discriminator 1) + c001b2f4: 00043b17 auipc s6,0x43 + c001b2f8: 2c4b0b13 addi s6,s6,708 # c005e5b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42924 (discriminator 1) for (i = 0; i < p->len; i++) { - c001b12c: 00492783 lw a5,4(s2) - c001b130: 8fe1 and a5,a5,s0 - c001b132: 08f9c163 blt s3,a5,c001b1b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42924 + c001b2fc: 00492783 lw a5,4(s2) + c001b300: 8fe1 and a5,a5,s0 + c001b302: 08f9c163 blt s3,a5,c001b384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42932 JS_FreeValue(ctx, value); - c001b136: 7582 ld a1,32(sp) - c001b138: 7622 ld a2,40(sp) - c001b13a: 8526 mv a0,s1 - c001b13c: 9fdec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42925 + c001b306: 7582 ld a1,32(sp) + c001b308: 7622 ld a2,40(sp) + c001b30a: 8526 mv a0,s1 + c001b30c: 91bec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42933 string_buffer_putc8(b, '\"'); - c001b140: 02200593 li a1,34 - c001b144: 0088 addi a0,sp,64 - c001b146: fa1fd0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42928 + c001b310: 02200593 li a1,34 + c001b314: 0088 addi a0,sp,64 + c001b316: fa1fd0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42936 string_buffer_putc8(b, '>'); - c001b14a: 03e00593 li a1,62 - c001b14e: 0088 addi a0,sp,64 - c001b150: f97fd0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42929 + c001b31a: 03e00593 li a1,62 + c001b31e: 0088 addi a0,sp,64 + c001b320: f97fd0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42937 string_buffer_concat_value_free(b, str); - c001b154: 6662 ld a2,24(sp) - c001b156: 65c2 ld a1,16(sp) - c001b158: 0088 addi a0,sp,64 - c001b15a: b83ff0ef jal ra,c001acdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42930 + c001b324: 6662 ld a2,24(sp) + c001b326: 65c2 ld a1,16(sp) + c001b328: 0088 addi a0,sp,64 + c001b32a: b83ff0ef jal ra,c001aeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42938 string_buffer_puts8(b, " - c001b166: 0088 addi a0,sp,64 - c001b168: ee5fd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42931 + c001b32e: 00043597 auipc a1,0x43 + c001b332: 29258593 addi a1,a1,658 # c005e5c0 + c001b336: 0088 addi a0,sp,64 + c001b338: ee5fd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42939 string_buffer_puts8(b, defs[magic].tag); - c001b16c: 85d6 mv a1,s5 - c001b16e: 0088 addi a0,sp,64 - c001b170: eddfd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42932 + c001b33c: 85d6 mv a1,s5 + c001b33e: 0088 addi a0,sp,64 + c001b340: eddfd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42940 string_buffer_putc8(b, '>'); - c001b174: 03e00593 li a1,62 - c001b178: 0088 addi a0,sp,64 - c001b17a: f6dfd0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42933 + c001b344: 03e00593 li a1,62 + c001b348: 0088 addi a0,sp,64 + c001b34a: f6dfd0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42941 return string_buffer_end(b); - c001b17e: 0088 addi a0,sp,64 - c001b180: b8bfe0ef jal ra,c0019d0a - c001b184: f82a sd a0,48(sp) - c001b186: b705 j c001b0a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42911 + c001b34e: 0088 addi a0,sp,64 + c001b350: b8bfe0ef jal ra,c0019eda + c001b354: f82a sd a0,48(sp) + c001b356: b705 j c001b276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42919 JS_FreeValue(ctx, str); - c001b188: 65c2 ld a1,16(sp) - c001b18a: 6662 ld a2,24(sp) - c001b18c: 8526 mv a0,s1 - c001b18e: 9abec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42912 + c001b358: 65c2 ld a1,16(sp) + c001b35a: 6662 ld a2,24(sp) + c001b35c: 8526 mv a0,s1 + c001b35e: 8c9ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42920 string_buffer_free(b); - c001b192: 0088 addi a0,sp,64 - c001b194: cd3eb0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42913 + c001b362: 0088 addi a0,sp,64 + c001b364: bf1eb0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42921 return JS_EXCEPTION; - c001b198: f802 sd zero,48(sp) - c001b19a: fc22 sd s0,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42934 (discriminator 3) -} - c001b19c: 60ea ld ra,152(sp) - c001b19e: 644a ld s0,144(sp) - c001b1a0: 7542 ld a0,48(sp) - c001b1a2: 75e2 ld a1,56(sp) - c001b1a4: 64aa ld s1,136(sp) - c001b1a6: 690a ld s2,128(sp) - c001b1a8: 79e6 ld s3,120(sp) - c001b1aa: 7a46 ld s4,112(sp) - c001b1ac: 7aa6 ld s5,104(sp) - c001b1ae: 7b06 ld s6,96(sp) - c001b1b0: 610d addi sp,sp,160 - c001b1b2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42917 + c001b368: f802 sd zero,48(sp) + c001b36a: fc22 sd s0,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42942 (discriminator 3) +} + c001b36c: 60ea ld ra,152(sp) + c001b36e: 644a ld s0,144(sp) + c001b370: 7542 ld a0,48(sp) + c001b372: 75e2 ld a1,56(sp) + c001b374: 64aa ld s1,136(sp) + c001b376: 690a ld s2,128(sp) + c001b378: 79e6 ld s3,120(sp) + c001b37a: 7a46 ld s4,112(sp) + c001b37c: 7aa6 ld s5,104(sp) + c001b37e: 7b06 ld s6,96(sp) + c001b380: 610d addi sp,sp,160 + c001b382: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42925 int c = string_get(p, i); - c001b1b4: 85ce mv a1,s3 - c001b1b6: 854a mv a0,s2 - c001b1b8: fafe80ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42918 + c001b384: 85ce mv a1,s3 + c001b386: 854a mv a0,s2 + c001b388: ddfe80ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42926 if (c == '"') { - c001b1bc: 01451863 bne a0,s4,c001b1cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42919 + c001b38c: 01451863 bne a0,s4,c001b39c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42927 string_buffer_puts8(b, """); - c001b1c0: 85da mv a1,s6 - c001b1c2: 0088 addi a0,sp,64 - c001b1c4: e89fd0ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42916 (discriminator 2) + c001b390: 85da mv a1,s6 + c001b392: 0088 addi a0,sp,64 + c001b394: e89fd0ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42924 (discriminator 2) for (i = 0; i < p->len; i++) { - c001b1c8: 2985 addiw s3,s3,1 - c001b1ca: b78d j c001b12c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42921 + c001b398: 2985 addiw s3,s3,1 + c001b39a: b78d j c001b2fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42929 string_buffer_putc16(b, c); - c001b1cc: 0005059b sext.w a1,a0 - c001b1d0: 0088 addi a0,sp,64 - c001b1d2: fe7fd0ef jal ra,c00191b8 - c001b1d6: bfcd j c001b1c8 + c001b39c: 0005059b sext.w a1,a0 + c001b3a0: 0088 addi a0,sp,64 + c001b3a2: fe7fd0ef jal ra,c0019388 + c001b3a6: bfcd j c001b398 -00000000c001b1d8 : +00000000c001b3a8 : js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42556 { - c001b1d8: 7155 addi sp,sp,-208 - c001b1da: e1a2 sd s0,192(sp) - c001b1dc: f94a sd s2,176(sp) - c001b1de: f152 sd s4,160(sp) - c001b1e0: e586 sd ra,200(sp) - c001b1e2: 8a3e mv s4,a5 - c001b1e4: fd26 sd s1,184(sp) - c001b1e6: f54e sd s3,168(sp) - c001b1e8: ed56 sd s5,152(sp) - c001b1ea: e95a sd s6,144(sp) - c001b1ec: e55e sd s7,136(sp) - c001b1ee: e162 sd s8,128(sp) - c001b1f0: fce6 sd s9,120(sp) - c001b1f2: f8ea sd s10,112(sp) - c001b1f4: 892a mv s2,a0 - c001b1f6: e02e sd a1,0(sp) - c001b1f8: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42555 + c001b3a8: 7155 addi sp,sp,-208 + c001b3aa: e1a2 sd s0,192(sp) + c001b3ac: f94a sd s2,176(sp) + c001b3ae: f152 sd s4,160(sp) + c001b3b0: e586 sd ra,200(sp) + c001b3b2: 8a3e mv s4,a5 + c001b3b4: fd26 sd s1,184(sp) + c001b3b6: f54e sd s3,168(sp) + c001b3b8: ed56 sd s5,152(sp) + c001b3ba: e95a sd s6,144(sp) + c001b3bc: e55e sd s7,136(sp) + c001b3be: e162 sd s8,128(sp) + c001b3c0: fce6 sd s9,120(sp) + c001b3c2: f8ea sd s10,112(sp) + c001b3c4: 892a mv s2,a0 + c001b3c6: e02e sd a1,0(sp) + c001b3c8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42563 val = JS_ToStringCheckObject(ctx, this_val); - c001b1fa: cb3ff0ef jal ra,c001aeac - c001b1fe: f82a sd a0,48(sp) - c001b200: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42556 + c001b3ca: cb3ff0ef jal ra,c001b07c + c001b3ce: f82a sd a0,48(sp) + c001b3d0: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42564 if (JS_IsException(val)) - c001b202: 0005871b sext.w a4,a1 - c001b206: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42555 + c001b3d2: 0005871b sext.w a4,a1 + c001b3d6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42563 val = JS_ToStringCheckObject(ctx, this_val); - c001b208: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42556 + c001b3d8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42564 if (JS_IsException(val)) - c001b20a: 02f71463 bne a4,a5,c001b232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42560 + c001b3da: 02f71463 bne a4,a5,c001b402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42568 return val; - c001b20e: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42577 + c001b3de: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42585 return string_buffer_end(b); - c001b210: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42582 -} - c001b212: 60ae ld ra,200(sp) - c001b214: 640e ld s0,192(sp) - c001b216: 6506 ld a0,64(sp) - c001b218: 65a6 ld a1,72(sp) - c001b21a: 74ea ld s1,184(sp) - c001b21c: 794a ld s2,176(sp) - c001b21e: 79aa ld s3,168(sp) - c001b220: 7a0a ld s4,160(sp) - c001b222: 6aea ld s5,152(sp) - c001b224: 6b4a ld s6,144(sp) - c001b226: 6baa ld s7,136(sp) - c001b228: 6c0a ld s8,128(sp) - c001b22a: 7ce6 ld s9,120(sp) - c001b22c: 7d46 ld s10,112(sp) - c001b22e: 6169 addi sp,sp,208 - c001b230: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42559 + c001b3e0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42590 +} + c001b3e2: 60ae ld ra,200(sp) + c001b3e4: 640e ld s0,192(sp) + c001b3e6: 6506 ld a0,64(sp) + c001b3e8: 65a6 ld a1,72(sp) + c001b3ea: 74ea ld s1,184(sp) + c001b3ec: 794a ld s2,176(sp) + c001b3ee: 79aa ld s3,168(sp) + c001b3f0: 7a0a ld s4,160(sp) + c001b3f2: 6aea ld s5,152(sp) + c001b3f4: 6b4a ld s6,144(sp) + c001b3f6: 6baa ld s7,136(sp) + c001b3f8: 6c0a ld s8,128(sp) + c001b3fa: 7ce6 ld s9,120(sp) + c001b3fc: 7d46 ld s10,112(sp) + c001b3fe: 6169 addi sp,sp,208 + c001b400: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42567 if (p->len == 0) - c001b232: 4150 lw a2,4(a0) - c001b234: 800009b7 lui s3,0x80000 - c001b238: fff9c993 not s3,s3 - c001b23c: 00c9f633 and a2,s3,a2 - c001b240: d679 beqz a2,c001b20e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42561 + c001b402: 4150 lw a2,4(a0) + c001b404: 800009b7 lui s3,0x80000 + c001b408: fff9c993 not s3,s3 + c001b40c: 00c9f633 and a2,s3,a2 + c001b410: d679 beqz a2,c001b3de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42569 if (string_buffer_init(ctx, b, p->len)) - c001b242: 088c addi a1,sp,80 - c001b244: 854a mv a0,s2 - c001b246: 989fd0ef jal ra,c0018bce - c001b24a: 12051a63 bnez a0,c001b37e + c001b412: 088c addi a1,sp,80 + c001b414: 854a mv a0,s2 + c001b416: 989fd0ef jal ra,c0018d9e + c001b41a: 12051a63 bnez a0,c001b54e string_prevc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 if (c >= 0xdc00 && c < 0xe000 && idx > 0) { - c001b24e: 7b49 lui s6,0xffff2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42506 + c001b41e: 7b49 lui s6,0xffff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42514 if (c1 >= 0xd800 && c1 <= 0xdc00) { - c001b250: 7bcd lui s7,0xffff3 + c001b420: 7bcd lui s7,0xffff3 js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42571 for(i = 0; i < p->len;) { - c001b252: ce02 sw zero,28(sp) + c001b422: ce02 sw zero,28(sp) string_prevc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 if (c >= 0xdc00 && c < 0xe000 && idx > 0) { - c001b254: 400b0b1b addiw s6,s6,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42506 + c001b424: 400b0b1b addiw s6,s6,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42514 if (c1 >= 0xd800 && c1 <= 0xdc00) { - c001b258: 800b8b9b addiw s7,s7,-2048 + c001b428: 800b8b9b addiw s7,s7,-2048 js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42563 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42571 (discriminator 1) for(i = 0; i < p->len;) { - c001b25c: 405c lw a5,4(s0) - c001b25e: 4772 lw a4,28(sp) - c001b260: 00f9f7b3 and a5,s3,a5 - c001b264: 00f74c63 blt a4,a5,c001b27c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42576 + c001b42c: 405c lw a5,4(s0) + c001b42e: 4772 lw a4,28(sp) + c001b430: 00f9f7b3 and a5,s3,a5 + c001b434: 00f74c63 blt a4,a5,c001b44c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42584 JS_FreeValue(ctx, val); - c001b268: 75c2 ld a1,48(sp) - c001b26a: 7662 ld a2,56(sp) - c001b26c: 854a mv a0,s2 - c001b26e: 8cbec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42577 + c001b438: 75c2 ld a1,48(sp) + c001b43a: 7662 ld a2,56(sp) + c001b43c: 854a mv a0,s2 + c001b43e: fe8ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42585 return string_buffer_end(b); - c001b272: 0888 addi a0,sp,80 - c001b274: a97fe0ef jal ra,c0019d0a - c001b278: e0aa sd a0,64(sp) - c001b27a: bf59 j c001b210 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42564 + c001b442: 0888 addi a0,sp,80 + c001b444: a97fe0ef jal ra,c0019eda + c001b448: e0aa sd a0,64(sp) + c001b44a: bf59 j c001b3e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42572 c = string_getc(p, &i); - c001b27c: 086c addi a1,sp,28 - c001b27e: 8522 mv a0,s0 - c001b280: f01e80ef jal ra,c0004180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 + c001b44c: 086c addi a1,sp,28 + c001b44e: 8522 mv a0,s0 + c001b450: d31e80ef jal ra,c0004180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 if (c == 0x3a3 && to_lower && test_final_sigma(p, i - 1)) { - c001b284: 3a300793 li a5,931 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42564 + c001b454: 3a300793 li a5,931 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42572 c = string_getc(p, &i); - c001b288: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 + c001b458: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 if (c == 0x3a3 && to_lower && test_final_sigma(p, i - 1)) { - c001b28a: 0ef51263 bne a0,a5,c001b36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 (discriminator 1) - c001b28e: 0e0a0063 beqz s4,c001b36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 (discriminator 2) - c001b292: 4c72 lw s8,28(sp) + c001b45a: 0ef51263 bne a0,a5,c001b53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 (discriminator 1) + c001b45e: 0e0a0063 beqz s4,c001b53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 (discriminator 2) + c001b462: 4c72 lw s8,28(sp) string_prevc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42507 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42515 (discriminator 2) c = (((c1 & 0x3ff) << 10) | (c & 0x3ff)) + 0x10000; - c001b294: 00100cb7 lui s9,0x100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42504 (discriminator 2) + c001b464: 00100cb7 lui s9,0x100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 (discriminator 2) if (c >= 0xdc00 && c < 0xe000 && idx > 0) { - c001b298: 3ff00d13 li s10,1023 + c001b468: 3ff00d13 li s10,1023 js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 (discriminator 2) if (c == 0x3a3 && to_lower && test_final_sigma(p, i - 1)) { - c001b29c: fffc079b addiw a5,s8,-1 + c001b46c: fffc079b addiw a5,s8,-1 test_final_sigma(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42524 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42532 (discriminator 2) k = sigma_pos; - c001b2a0: c0be sw a5,64(sp) + c001b470: c0be sw a5,64(sp) string_prevc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42507 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42515 (discriminator 2) c = (((c1 & 0x3ff) << 10) | (c & 0x3ff)) + 0x10000; - c001b2a2: c00c8c93 addi s9,s9,-1024 # ffc00 <__clzdi2-0xbff00400> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42498 + c001b472: c00c8c93 addi s9,s9,-1024 # ffc00 <__clzdi2-0xbff00400> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42506 idx = *pidx; - c001b2a6: 4786 lw a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42500 + c001b476: 4786 lw a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42508 return 0; - c001b2a8: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42499 + c001b478: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42507 if (idx <= 0) - c001b2aa: 04f05c63 blez a5,c001b302 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42502 + c001b47a: 04f05c63 blez a5,c001b4d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42510 if (p->is_wide_char) { - c001b2ae: 4058 lw a4,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42501 + c001b47e: 4058 lw a4,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42509 idx--; - c001b2b0: fff7861b addiw a2,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42502 + c001b480: fff7861b addiw a2,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42510 if (p->is_wide_char) { - c001b2b4: 0a075863 bgez a4,c001b364 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42503 + c001b484: 0a075863 bgez a4,c001b534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42511 c = p->u.str16[idx]; - c001b2b8: 00860713 addi a4,a2,8 - c001b2bc: 0706 slli a4,a4,0x1 - c001b2be: 9722 add a4,a4,s0 - c001b2c0: 00075583 lhu a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42504 + c001b488: 00860713 addi a4,a2,8 + c001b48c: 0706 slli a4,a4,0x1 + c001b48e: 9722 add a4,a4,s0 + c001b490: 00075583 lhu a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 if (c >= 0xdc00 && c < 0xe000 && idx > 0) { - c001b2c4: 00bb06bb addw a3,s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42503 + c001b494: 00bb06bb addw a3,s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42511 c = p->u.str16[idx]; - c001b2c8: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42504 + c001b498: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 if (c >= 0xdc00 && c < 0xe000 && idx > 0) { - c001b2cc: 02dd6a63 bltu s10,a3,c001b300 - c001b2d0: ca05 beqz a2,c001b300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42505 + c001b49c: 02dd6a63 bltu s10,a3,c001b4d0 + c001b4a0: ca05 beqz a2,c001b4d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42513 c1 = p->u.str16[idx - 1]; - c001b2d2: 37f9 addiw a5,a5,-2 - c001b2d4: 00878693 addi a3,a5,8 - c001b2d8: 0686 slli a3,a3,0x1 - c001b2da: 96a2 add a3,a3,s0 - c001b2dc: 0006d683 lhu a3,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42506 + c001b4a2: 37f9 addiw a5,a5,-2 + c001b4a4: 00878693 addi a3,a5,8 + c001b4a8: 0686 slli a3,a3,0x1 + c001b4aa: 96a2 add a3,a3,s0 + c001b4ac: 0006d683 lhu a3,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42514 if (c1 >= 0xd800 && c1 <= 0xdc00) { - c001b2e0: 40000513 li a0,1024 - c001b2e4: 00db883b addw a6,s7,a3 - c001b2e8: 01056c63 bltu a0,a6,c001b300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42507 + c001b4b0: 40000513 li a0,1024 + c001b4b4: 00db883b addw a6,s7,a3 + c001b4b8: 01056c63 bltu a0,a6,c001b4d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42515 c = (((c1 & 0x3ff) << 10) | (c & 0x3ff)) + 0x10000; - c001b2ec: 00a6969b slliw a3,a3,0xa - c001b2f0: 0196f733 and a4,a3,s9 - c001b2f4: 3ff5f693 andi a3,a1,1023 - c001b2f8: 8ed9 or a3,a3,a4 - c001b2fa: 6741 lui a4,0x10 - c001b2fc: 9f35 addw a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42508 + c001b4bc: 00a6969b slliw a3,a3,0xa + c001b4c0: 0196f733 and a4,a3,s9 + c001b4c4: 3ff5f693 andi a3,a1,1023 + c001b4c8: 8ed9 or a3,a3,a4 + c001b4ca: 6741 lui a4,0x10 + c001b4cc: 9f35 addw a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42516 idx--; - c001b2fe: 863e mv a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42514 + c001b4ce: 863e mv a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42522 *pidx = idx; - c001b300: c0b2 sw a2,64(sp) + c001b4d0: c0b2 sw a2,64(sp) test_final_sigma(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42535 if (!lre_is_case_ignorable(c1)) - c001b302: 0007049b sext.w s1,a4 - c001b306: 8526 mv a0,s1 - c001b308: 4c82b0ef jal ra,c00467d0 - c001b30c: fd49 bnez a0,c001b2a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42530 + c001b4d2: 0007049b sext.w s1,a4 + c001b4d6: 8526 mv a0,s1 + c001b4d8: 4c82b0ef jal ra,c00469a0 + c001b4dc: fd49 bnez a0,c001b476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42538 if (!lre_is_cased(c1)) - c001b30e: 8526 mv a0,s1 - c001b310: 45e2b0ef jal ra,c004676e - c001b314: cd29 beqz a0,c001b36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42535 + c001b4de: 8526 mv a0,s1 + c001b4e0: 45e2b0ef jal ra,c004693e + c001b4e4: cd29 beqz a0,c001b53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42543 k = sigma_pos + 1; - c001b316: c0e2 sw s8,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42537 + c001b4e6: c0e2 sw s8,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42545 if (k >= p->len) - c001b318: 405c lw a5,4(s0) - c001b31a: 4706 lw a4,64(sp) - c001b31c: 00f9f7b3 and a5,s3,a5 - c001b320: 02f75063 bge a4,a5,c001b340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42539 + c001b4e8: 405c lw a5,4(s0) + c001b4ea: 4706 lw a4,64(sp) + c001b4ec: 00f9f7b3 and a5,s3,a5 + c001b4f0: 02f75063 bge a4,a5,c001b510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42547 c1 = string_getc(p, &k); - c001b324: 008c addi a1,sp,64 - c001b326: 8522 mv a0,s0 - c001b328: e59e80ef jal ra,c0004180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42540 + c001b4f4: 008c addi a1,sp,64 + c001b4f6: 8522 mv a0,s0 + c001b4f8: c89e80ef jal ra,c0004180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42548 if (!lre_is_case_ignorable(c1)) - c001b32c: 0005049b sext.w s1,a0 - c001b330: 8526 mv a0,s1 - c001b332: 49e2b0ef jal ra,c00467d0 - c001b336: f16d bnez a0,c001b318 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42543 + c001b4fc: 0005049b sext.w s1,a0 + c001b500: 8526 mv a0,s1 + c001b502: 49e2b0ef jal ra,c00469a0 + c001b506: f16d bnez a0,c001b4e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42551 return !lre_is_cased(c1); - c001b338: 8526 mv a0,s1 - c001b33a: 4342b0ef jal ra,c004676e + c001b508: 8526 mv a0,s1 + c001b50a: 4342b0ef jal ra,c004693e js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42565 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42573 if (c == 0x3a3 && to_lower && test_final_sigma(p, i - 1)) { - c001b33e: e905 bnez a0,c001b36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42566 + c001b50e: e905 bnez a0,c001b53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42574 res[0] = 0x3c2; /* final sigma */ - c001b340: 3c200793 li a5,962 - c001b344: d03e sw a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42567 + c001b510: 3c200793 li a5,962 + c001b514: d03e sw a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42575 l = 1; - c001b346: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42571 + c001b516: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42579 for(j = 0; j < l; j++) { - c001b348: 02010c13 addi s8,sp,32 - c001b34c: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42571 (discriminator 1) - c001b34e: f09ad7e3 bge s5,s1,c001b25c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42572 + c001b518: 02010c13 addi s8,sp,32 + c001b51c: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42579 (discriminator 1) + c001b51e: f09ad7e3 bge s5,s1,c001b42c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42580 if (string_buffer_putc(b, res[j])) - c001b352: 000c2583 lw a1,0(s8) - c001b356: 0888 addi a0,sp,80 - c001b358: 0c11 addi s8,s8,4 - c001b35a: e9dfd0ef jal ra,c00191f6 - c001b35e: e105 bnez a0,c001b37e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42571 (discriminator 2) + c001b522: 000c2583 lw a1,0(s8) + c001b526: 0888 addi a0,sp,80 + c001b528: 0c11 addi s8,s8,4 + c001b52a: e9dfd0ef jal ra,c00193c6 + c001b52e: e105 bnez a0,c001b54e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42579 (discriminator 2) for(j = 0; j < l; j++) { - c001b360: 2a85 addiw s5,s5,1 - c001b362: b7f5 j c001b34e + c001b530: 2a85 addiw s5,s5,1 + c001b532: b7f5 j c001b51e string_prevc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42520 c = p->u.str8[idx]; - c001b364: 00c407b3 add a5,s0,a2 - c001b368: 0107c703 lbu a4,16(a5) - c001b36c: bf51 j c001b300 + c001b534: 00c407b3 add a5,s0,a2 + c001b538: 0107c703 lbu a4,16(a5) + c001b53c: bf51 j c001b4d0 js_string_toLowerCase(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42569 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42577 l = lre_case_conv(res, c, to_lower); - c001b36e: 8652 mv a2,s4 - c001b370: 000a859b sext.w a1,s5 - c001b374: 1008 addi a0,sp,32 - c001b376: 01c2b0ef jal ra,c0046392 - c001b37a: 84aa mv s1,a0 - c001b37c: b7f1 j c001b348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42579 + c001b53e: 8652 mv a2,s4 + c001b540: 000a859b sext.w a1,s5 + c001b544: 1008 addi a0,sp,32 + c001b546: 01c2b0ef jal ra,c0046562 + c001b54a: 84aa mv s1,a0 + c001b54c: b7f1 j c001b518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42587 JS_FreeValue(ctx, val); - c001b37e: 75c2 ld a1,48(sp) - c001b380: 7662 ld a2,56(sp) - c001b382: 854a mv a0,s2 - c001b384: fb4ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42580 + c001b54e: 75c2 ld a1,48(sp) + c001b550: 7662 ld a2,56(sp) + c001b552: 854a mv a0,s2 + c001b554: ed2ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42588 string_buffer_free(b); - c001b388: 0888 addi a0,sp,80 - c001b38a: addeb0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42581 + c001b558: 0888 addi a0,sp,80 + c001b55a: 9fbeb0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42589 return JS_EXCEPTION; - c001b38e: 4799 li a5,6 - c001b390: e082 sd zero,64(sp) - c001b392: e4be sd a5,72(sp) - c001b394: bdbd j c001b212 + c001b55e: 4799 li a5,6 + c001b560: e082 sd zero,64(sp) + c001b562: e4be sd a5,72(sp) + c001b564: bdbd j c001b3e2 -00000000c001b396 : +00000000c001b566 : js_string_isWellFormed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41679 -{ - c001b396: 711d addi sp,sp,-96 - c001b398: e4a6 sd s1,72(sp) - c001b39a: ec86 sd ra,88(sp) - c001b39c: e8a2 sd s0,80(sp) - c001b39e: 84aa mv s1,a0 - c001b3a0: e02e sd a1,0(sp) - c001b3a2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41687 +{ + c001b566: 711d addi sp,sp,-96 + c001b568: e4a6 sd s1,72(sp) + c001b56a: ec86 sd ra,88(sp) + c001b56c: e8a2 sd s0,80(sp) + c001b56e: 84aa mv s1,a0 + c001b570: e02e sd a1,0(sp) + c001b572: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41692 str = JS_ToStringCheckObject(ctx, this_val); - c001b3a4: b09ff0ef jal ra,c001aeac - c001b3a8: ec2e sd a1,24(sp) - c001b3aa: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41685 + c001b574: b09ff0ef jal ra,c001b07c + c001b578: ec2e sd a1,24(sp) + c001b57a: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41693 if (JS_IsException(str)) - c001b3ac: 2581 sext.w a1,a1 - c001b3ae: 4719 li a4,6 - c001b3b0: 00e59b63 bne a1,a4,c001b3c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41686 + c001b57c: 2581 sext.w a1,a1 + c001b57e: 4719 li a4,6 + c001b580: 00e59b63 bne a1,a4,c001b596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41694 return JS_EXCEPTION; - c001b3b4: f002 sd zero,32(sp) - c001b3b6: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41691 (discriminator 1) -} - c001b3b8: 60e6 ld ra,88(sp) - c001b3ba: 6446 ld s0,80(sp) - c001b3bc: 7502 ld a0,32(sp) - c001b3be: 75a2 ld a1,40(sp) - c001b3c0: 64a6 ld s1,72(sp) - c001b3c2: 6125 addi sp,sp,96 - c001b3c4: 8082 ret + c001b584: f002 sd zero,32(sp) + c001b586: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41699 (discriminator 1) +} + c001b588: 60e6 ld ra,88(sp) + c001b58a: 6446 ld s0,80(sp) + c001b58c: 7502 ld a0,32(sp) + c001b58e: 75a2 ld a1,40(sp) + c001b590: 64a6 ld s1,72(sp) + c001b592: 6125 addi sp,sp,96 + c001b594: 8082 ret js_string_find_invalid_codepoint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 if (!p->is_wide_char) - c001b3c6: 415c lw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41662 + c001b596: 415c lw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41670 return -1; - c001b3c8: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41661 + c001b598: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 if (!p->is_wide_char) - c001b3ca: 0007d563 bgez a5,c001b3d4 - c001b3ce: d9cea0ef jal ra,c000596a - c001b3d2: 842a mv s0,a0 + c001b59a: 0007d563 bgez a5,c001b5a4 + c001b59e: cbaea0ef jal ra,c0005a58 + c001b5a2: 842a mv s0,a0 js_string_isWellFormed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41697 JS_FreeValue(ctx, str); - c001b3d4: 65c2 ld a1,16(sp) - c001b3d6: 6662 ld a2,24(sp) - c001b3d8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41688 + c001b5a4: 65c2 ld a1,16(sp) + c001b5a6: 6662 ld a2,24(sp) + c001b5a8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41696 ret = (js_string_find_invalid_codepoint(p) < 0); - c001b3da: 01f4541b srliw s0,s0,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41689 + c001b5aa: 01f4541b srliw s0,s0,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41697 JS_FreeValue(ctx, str); - c001b3de: f5aec0ef jal ra,c0007b38 + c001b5ae: e78ec0ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001b3e2: da02 sw zero,52(sp) - c001b3e4: d822 sw s0,48(sp) - c001b3e6: 77c2 ld a5,48(sp) - c001b3e8: f03e sd a5,32(sp) - c001b3ea: 4785 li a5,1 - c001b3ec: f43e sd a5,40(sp) - c001b3ee: b7e9 j c001b3b8 - -00000000c001b3f0 : + c001b5b2: da02 sw zero,52(sp) + c001b5b4: d822 sw s0,48(sp) + c001b5b6: 77c2 ld a5,48(sp) + c001b5b8: f03e sd a5,32(sp) + c001b5ba: 4785 li a5,1 + c001b5bc: f43e sd a5,40(sp) + c001b5be: b7e9 j c001b588 + +00000000c001b5c0 : js_string_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41582 -{ - c001b3f0: 7119 addi sp,sp,-128 - c001b3f2: f8a2 sd s0,112(sp) - c001b3f4: f4a6 sd s1,104(sp) - c001b3f6: f0ca sd s2,96(sp) - c001b3f8: ecce sd s3,88(sp) - c001b3fa: e8d2 sd s4,80(sp) - c001b3fc: fc86 sd ra,120(sp) - c001b3fe: 892a mv s2,a0 - c001b400: 84b6 mv s1,a3 - c001b402: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41589 - r = JS_ToStringCheckObject(ctx, this_val); - c001b404: aa9ff0ef jal ra,c001aeac - c001b408: f02a sd a0,32(sp) - c001b40a: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41590 +{ + c001b5c0: 7119 addi sp,sp,-128 + c001b5c2: f8a2 sd s0,112(sp) + c001b5c4: f4a6 sd s1,104(sp) + c001b5c6: f0ca sd s2,96(sp) + c001b5c8: ecce sd s3,88(sp) + c001b5ca: e8d2 sd s4,80(sp) + c001b5cc: fc86 sd ra,120(sp) + c001b5ce: 892a mv s2,a0 + c001b5d0: 84b6 mv s1,a3 + c001b5d2: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41597 + r = JS_ToStringCheckObject(ctx, this_val); + c001b5d4: aa9ff0ef jal ra,c001b07c + c001b5d8: f02a sd a0,32(sp) + c001b5da: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41598 for (i = 0; i < argc; i++) { - c001b40c: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41591 + c001b5dc: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41599 if (JS_IsException(r)) - c001b40e: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41590 (discriminator 1) + c001b5de: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41598 (discriminator 1) for (i = 0; i < argc; i++) { - c001b410: 0004079b sext.w a5,s0 - c001b414: 0097cc63 blt a5,s1,c001b42c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41596 + c001b5e0: 0004079b sext.w a5,s0 + c001b5e4: 0097cc63 blt a5,s1,c001b5fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41604 } - c001b418: 70e6 ld ra,120(sp) - c001b41a: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41595 + c001b5e8: 70e6 ld ra,120(sp) + c001b5ea: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41603 return r; - c001b41c: 7502 ld a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41596 -} - c001b41e: 74a6 ld s1,104(sp) - c001b420: 7906 ld s2,96(sp) - c001b422: 69e6 ld s3,88(sp) - c001b424: 6a46 ld s4,80(sp) - c001b426: 85b2 mv a1,a2 - c001b428: 6109 addi sp,sp,128 - c001b42a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41591 + c001b5ec: 7502 ld a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41604 +} + c001b5ee: 74a6 ld s1,104(sp) + c001b5f0: 7906 ld s2,96(sp) + c001b5f2: 69e6 ld s3,88(sp) + c001b5f4: 6a46 ld s4,80(sp) + c001b5f6: 85b2 mv a1,a2 + c001b5f8: 6109 addi sp,sp,128 + c001b5fa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41599 if (JS_IsException(r)) - c001b42c: 0006079b sext.w a5,a2 - c001b430: ff4784e3 beq a5,s4,c001b418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41593 (discriminator 2) + c001b5fc: 0006079b sext.w a5,a2 + c001b600: ff4784e3 beq a5,s4,c001b5e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41601 (discriminator 2) r = JS_ConcatString(ctx, r, JS_DupValue(ctx, argv[i])); - c001b434: 00441793 slli a5,s0,0x4 - c001b438: 97ce add a5,a5,s3 - c001b43a: 6388 ld a0,0(a5) - c001b43c: 678c ld a1,8(a5) - c001b43e: e432 sd a2,8(sp) - c001b440: 0405 addi s0,s0,1 - c001b442: a2ceb0ef jal ra,c000666e - c001b446: 6622 ld a2,8(sp) - c001b448: 872e mv a4,a1 - c001b44a: 7582 ld a1,32(sp) - c001b44c: 86aa mv a3,a0 - c001b44e: 854a mv a0,s2 - c001b450: d12ff0ef jal ra,c001a962 - c001b454: f02a sd a0,32(sp) - c001b456: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41590 (discriminator 2) + c001b604: 00441793 slli a5,s0,0x4 + c001b608: 97ce add a5,a5,s3 + c001b60a: 6388 ld a0,0(a5) + c001b60c: 678c ld a1,8(a5) + c001b60e: e432 sd a2,8(sp) + c001b610: 0405 addi s0,s0,1 + c001b612: 94aeb0ef jal ra,c000675c + c001b616: 6622 ld a2,8(sp) + c001b618: 872e mv a4,a1 + c001b61a: 7582 ld a1,32(sp) + c001b61c: 86aa mv a3,a0 + c001b61e: 854a mv a0,s2 + c001b620: d12ff0ef jal ra,c001ab32 + c001b624: f02a sd a0,32(sp) + c001b626: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41598 (discriminator 2) for (i = 0; i < argc; i++) { - c001b458: bf65 j c001b410 + c001b628: bf65 j c001b5e0 -00000000c001b45a : +00000000c001b62a : js_string_toWellFormed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41695 -{ - c001b45a: 7119 addi sp,sp,-128 - c001b45c: e8d2 sd s4,80(sp) - c001b45e: e4d6 sd s5,72(sp) - c001b460: fc86 sd ra,120(sp) - c001b462: f8a2 sd s0,112(sp) - c001b464: f4a6 sd s1,104(sp) - c001b466: f0ca sd s2,96(sp) - c001b468: ecce sd s3,88(sp) - c001b46a: 8a2a mv s4,a0 - c001b46c: e02e sd a1,0(sp) - c001b46e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41703 +{ + c001b62a: 7119 addi sp,sp,-128 + c001b62c: e8d2 sd s4,80(sp) + c001b62e: e4d6 sd s5,72(sp) + c001b630: fc86 sd ra,120(sp) + c001b632: f8a2 sd s0,112(sp) + c001b634: f4a6 sd s1,104(sp) + c001b636: f0ca sd s2,96(sp) + c001b638: ecce sd s3,88(sp) + c001b63a: 8a2a mv s4,a0 + c001b63c: e02e sd a1,0(sp) + c001b63e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41708 str = JS_ToStringCheckObject(ctx, this_val); - c001b470: a3dff0ef jal ra,c001aeac - c001b474: e82a sd a0,16(sp) - c001b476: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41701 + c001b640: a3dff0ef jal ra,c001b07c + c001b644: e82a sd a0,16(sp) + c001b646: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41709 if (JS_IsException(str)) - c001b478: 0005879b sext.w a5,a1 - c001b47c: 4a99 li s5,6 - c001b47e: 03579063 bne a5,s5,c001b49e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41702 + c001b648: 0005879b sext.w a5,a1 + c001b64c: 4a99 li s5,6 + c001b64e: 03579063 bne a5,s5,c001b66e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41710 return JS_EXCEPTION; - c001b482: 4799 li a5,6 - c001b484: f802 sd zero,48(sp) - c001b486: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41732 (discriminator 1) -} - c001b488: 70e6 ld ra,120(sp) - c001b48a: 7446 ld s0,112(sp) - c001b48c: 7542 ld a0,48(sp) - c001b48e: 75e2 ld a1,56(sp) - c001b490: 74a6 ld s1,104(sp) - c001b492: 7906 ld s2,96(sp) - c001b494: 69e6 ld s3,88(sp) - c001b496: 6a46 ld s4,80(sp) - c001b498: 6aa6 ld s5,72(sp) - c001b49a: 6109 addi sp,sp,128 - c001b49c: 8082 ret + c001b652: 4799 li a5,6 + c001b654: f802 sd zero,48(sp) + c001b656: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41740 (discriminator 1) +} + c001b658: 70e6 ld ra,120(sp) + c001b65a: 7446 ld s0,112(sp) + c001b65c: 7542 ld a0,48(sp) + c001b65e: 75e2 ld a1,56(sp) + c001b660: 74a6 ld s1,104(sp) + c001b662: 7906 ld s2,96(sp) + c001b664: 69e6 ld s3,88(sp) + c001b666: 6a46 ld s4,80(sp) + c001b668: 6aa6 ld s5,72(sp) + c001b66a: 6109 addi sp,sp,128 + c001b66c: 8082 ret js_string_find_invalid_codepoint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41669 if (!p->is_wide_char) - c001b49e: 00452983 lw s3,4(a0) - c001b4a2: 84aa mv s1,a0 - c001b4a4: 892e mv s2,a1 - c001b4a6: 0009879b sext.w a5,s3 - c001b4aa: 0007d763 bgez a5,c001b4b8 - c001b4ae: cbcea0ef jal ra,c000596a - c001b4b2: 842a mv s0,a0 + c001b66e: 00452983 lw s3,4(a0) + c001b672: 84aa mv s1,a0 + c001b674: 892e mv s2,a1 + c001b676: 0009879b sext.w a5,s3 + c001b67a: 0007d763 bgez a5,c001b688 + c001b67e: bdaea0ef jal ra,c0005a58 + c001b682: 842a mv s0,a0 js_string_toWellFormed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41707 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41715 if (i < 0) - c001b4b4: 00055563 bgez a0,c001b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41708 + c001b684: 00055563 bgez a0,c001b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41716 return str; - c001b4b8: f826 sd s1,48(sp) - c001b4ba: fc4a sd s2,56(sp) - c001b4bc: b7f1 j c001b488 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41710 + c001b688: f826 sd s1,48(sp) + c001b68a: fc4a sd s2,56(sp) + c001b68c: b7f1 j c001b658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41718 ret = js_new_string16(ctx, p->u.str16, p->len); - c001b4be: 80000937 lui s2,0x80000 - c001b4c2: fff94913 not s2,s2 - c001b4c6: 0129f633 and a2,s3,s2 - c001b4ca: 2601 sext.w a2,a2 - c001b4cc: 01048593 addi a1,s1,16 - c001b4d0: 8552 mv a0,s4 - c001b4d2: f02fd0ef jal ra,c0018bd4 - c001b4d6: 89ae mv s3,a1 - c001b4d8: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41711 + c001b68e: 80000937 lui s2,0x80000 + c001b692: fff94913 not s2,s2 + c001b696: 0129f633 and a2,s3,s2 + c001b69a: 2601 sext.w a2,a2 + c001b69c: 01048593 addi a1,s1,16 + c001b6a0: 8552 mv a0,s4 + c001b6a2: f02fd0ef jal ra,c0018da4 + c001b6a6: 89ae mv s3,a1 + c001b6a8: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 JS_FreeValue(ctx, str); - c001b4da: 6662 ld a2,24(sp) - c001b4dc: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41710 + c001b6aa: 6662 ld a2,24(sp) + c001b6ac: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41718 ret = js_new_string16(ctx, p->u.str16, p->len); - c001b4de: f02a sd a0,32(sp) - c001b4e0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41711 + c001b6ae: f02a sd a0,32(sp) + c001b6b0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 JS_FreeValue(ctx, str); - c001b4e2: 8552 mv a0,s4 - c001b4e4: e54ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41712 + c001b6b2: 8552 mv a0,s4 + c001b6b4: d72ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41720 if (JS_IsException(ret)) - c001b4e8: 0009879b sext.w a5,s3 - c001b4ec: f9578be3 beq a5,s5,c001b482 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41716 + c001b6b8: 0009879b sext.w a5,s3 + c001b6bc: f9578be3 beq a5,s5,c001b652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41724 for (; i < p->len; i++) { - c001b4f0: 40dc lw a5,4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41718 + c001b6c0: 40dc lw a5,4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41726 if (c >= 0xD800 && c <= 0xDFFF) { - c001b4f2: 76cd lui a3,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 + c001b6c2: 76cd lui a3,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41727 if (c >= 0xDC00 || (i + 1) >= p->len) { - c001b4f4: 6639 lui a2,0xe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41723 + c001b6c4: 6639 lui a2,0xe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41731 if (c < 0xDC00 || c > 0xDFFF) { - c001b4f6: 75c9 lui a1,0xffff2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41716 + c001b6c6: 75c9 lui a1,0xffff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41724 for (; i < p->len; i++) { - c001b4f8: 00f97933 and s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41718 + c001b6c8: 00f97933 and s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41726 if (c >= 0xD800 && c <= 0xDFFF) { - c001b4fc: 8006869b addiw a3,a3,-2048 - c001b500: 7ff00893 li a7,2047 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 + c001b6cc: 8006869b addiw a3,a3,-2048 + c001b6d0: 7ff00893 li a7,2047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41727 if (c >= 0xDC00 || (i + 1) >= p->len) { - c001b504: bff60613 addi a2,a2,-1025 # dbff <__clzdi2-0xbfff2401> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41720 + c001b6d4: bff60613 addi a2,a2,-1025 # dbff <__clzdi2-0xbfff2401> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41728 p->u.str16[i] = 0xFFFD; - c001b508: 5875 li a6,-3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41723 + c001b6d8: 5875 li a6,-3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41731 if (c < 0xDC00 || c > 0xDFFF) { - c001b50a: 4005859b addiw a1,a1,1024 - c001b50e: 3ff00313 li t1,1023 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41716 (discriminator 1) + c001b6da: 4005859b addiw a1,a1,1024 + c001b6de: 3ff00313 li t1,1023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41724 (discriminator 1) for (; i < p->len; i++) { - c001b512: 01244563 blt s0,s2,c001b51c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41731 + c001b6e2: 01244563 blt s0,s2,c001b6ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41739 return ret; - c001b516: f826 sd s1,48(sp) - c001b518: fc4e sd s3,56(sp) - c001b51a: b7bd j c001b488 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41717 + c001b6e6: f826 sd s1,48(sp) + c001b6e8: fc4e sd s3,56(sp) + c001b6ea: b7bd j c001b658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41725 c = p->u.str16[i]; - c001b51c: 00141793 slli a5,s0,0x1 - c001b520: 97a6 add a5,a5,s1 - c001b522: 0107d703 lhu a4,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41718 + c001b6ec: 00141793 slli a5,s0,0x1 + c001b6f0: 97a6 add a5,a5,s1 + c001b6f2: 0107d703 lhu a4,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41726 if (c >= 0xD800 && c <= 0xDFFF) { - c001b526: 00e6853b addw a0,a3,a4 - c001b52a: 00a8ea63 bltu a7,a0,c001b53e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 + c001b6f6: 00e6853b addw a0,a3,a4 + c001b6fa: 00a8ea63 bltu a7,a0,c001b70e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41727 if (c >= 0xDC00 || (i + 1) >= p->len) { - c001b52e: 00e66663 bltu a2,a4,c001b53a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41719 (discriminator 1) - c001b532: 0014051b addiw a0,s0,1 - c001b536: 01254663 blt a0,s2,c001b542 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41724 + c001b6fe: 00e66663 bltu a2,a4,c001b70a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41727 (discriminator 1) + c001b702: 0014051b addiw a0,s0,1 + c001b706: 01254663 blt a0,s2,c001b712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41732 p->u.str16[i] = 0xFFFD; - c001b53a: 01079823 sh a6,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41716 + c001b70a: 01079823 sh a6,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41724 for (; i < p->len; i++) { - c001b53e: 2405 addiw s0,s0,1 - c001b540: bfc9 j c001b512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41722 + c001b70e: 2405 addiw s0,s0,1 + c001b710: bfc9 j c001b6e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41730 c = p->u.str16[i + 1]; - c001b542: 00850713 addi a4,a0,8 - c001b546: 0706 slli a4,a4,0x1 - c001b548: 9726 add a4,a4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41723 + c001b712: 00850713 addi a4,a0,8 + c001b716: 0706 slli a4,a4,0x1 + c001b718: 9726 add a4,a4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41731 if (c < 0xDC00 || c > 0xDFFF) { - c001b54a: 00075703 lhu a4,0(a4) # 10000 <__clzdi2-0xbfff0000> - c001b54e: 9f2d addw a4,a4,a1 - c001b550: fee365e3 bltu t1,a4,c001b53a - c001b554: 842a mv s0,a0 - c001b556: b7e5 j c001b53e + c001b71a: 00075703 lhu a4,0(a4) # 10000 <__clzdi2-0xbfff0000> + c001b71e: 9f2d addw a4,a4,a1 + c001b720: fee365e3 bltu t1,a4,c001b70a + c001b724: 842a mv s0,a0 + c001b726: b7e5 j c001b70e -00000000c001b558 : +00000000c001b728 : js_string_trim(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42463 -{ - c001b558: 7159 addi sp,sp,-112 - c001b55a: eca6 sd s1,88(sp) - c001b55c: e4ce sd s3,72(sp) - c001b55e: e0d2 sd s4,64(sp) - c001b560: 89be mv s3,a5 - c001b562: f486 sd ra,104(sp) - c001b564: f0a2 sd s0,96(sp) - c001b566: e8ca sd s2,80(sp) - c001b568: 8a2a mv s4,a0 - c001b56a: e02e sd a1,0(sp) - c001b56c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42471 +{ + c001b728: 7159 addi sp,sp,-112 + c001b72a: eca6 sd s1,88(sp) + c001b72c: e4ce sd s3,72(sp) + c001b72e: e0d2 sd s4,64(sp) + c001b730: 89be mv s3,a5 + c001b732: f486 sd ra,104(sp) + c001b734: f0a2 sd s0,96(sp) + c001b736: e8ca sd s2,80(sp) + c001b738: 8a2a mv s4,a0 + c001b73a: e02e sd a1,0(sp) + c001b73c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42476 str = JS_ToStringCheckObject(ctx, this_val); - c001b56e: 93fff0ef jal ra,c001aeac - c001b572: e82a sd a0,16(sp) - c001b574: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42469 + c001b73e: 93fff0ef jal ra,c001b07c + c001b742: e82a sd a0,16(sp) + c001b744: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42477 if (JS_IsException(str)) - c001b576: 0005871b sext.w a4,a1 - c001b57a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42468 + c001b746: 0005871b sext.w a4,a1 + c001b74a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42476 str = JS_ToStringCheckObject(ctx, this_val); - c001b57c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42469 + c001b74c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42477 if (JS_IsException(str)) - c001b57e: 00f71e63 bne a4,a5,c001b59a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42470 + c001b74e: 00f71e63 bne a4,a5,c001b76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42478 return str; - c001b582: f82a sd a0,48(sp) - c001b584: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42485 -} - c001b586: 70a6 ld ra,104(sp) - c001b588: 7406 ld s0,96(sp) - c001b58a: 7542 ld a0,48(sp) - c001b58c: 75e2 ld a1,56(sp) - c001b58e: 64e6 ld s1,88(sp) - c001b590: 6946 ld s2,80(sp) - c001b592: 69a6 ld s3,72(sp) - c001b594: 6a06 ld s4,64(sp) - c001b596: 6165 addi sp,sp,112 - c001b598: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42473 + c001b752: f82a sd a0,48(sp) + c001b754: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42493 +} + c001b756: 70a6 ld ra,104(sp) + c001b758: 7406 ld s0,96(sp) + c001b75a: 7542 ld a0,48(sp) + c001b75c: 75e2 ld a1,56(sp) + c001b75e: 64e6 ld s1,88(sp) + c001b760: 6946 ld s2,80(sp) + c001b762: 69a6 ld s3,72(sp) + c001b764: 6a06 ld s4,64(sp) + c001b766: 6165 addi sp,sp,112 + c001b768: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42481 b = len = p->len; - c001b59a: 4140 lw s0,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42474 + c001b76a: 4140 lw s0,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42482 if (magic & 1) { - c001b59c: 0019f913 andi s2,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42473 + c001b76c: 0019f913 andi s2,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42481 b = len = p->len; - c001b5a0: 1406 slli s0,s0,0x21 - c001b5a2: 9005 srli s0,s0,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42474 + c001b770: 1406 slli s0,s0,0x21 + c001b772: 9005 srli s0,s0,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42482 if (magic & 1) { - c001b5a4: 04091e63 bnez s2,c001b600 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42478 + c001b774: 04091e63 bnez s2,c001b7d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42486 if (magic & 2) { - c001b5a8: 0029f993 andi s3,s3,2 - c001b5ac: 00098d63 beqz s3,c001b5c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42479 + c001b778: 0029f993 andi s3,s3,2 + c001b77c: 00098d63 beqz s3,c001b796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42487 while (b > a && lre_is_space(string_get(p, b - 1))) - c001b5b0: 00895b63 bge s2,s0,c001b5c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42479 (discriminator 1) - c001b5b4: fff4099b addiw s3,s0,-1 - c001b5b8: 85ce mv a1,s3 - c001b5ba: 8526 mv a0,s1 - c001b5bc: babe80ef jal ra,c0004166 - c001b5c0: 323280ef jal ra,c00440e2 - c001b5c4: e121 bnez a0,c001b604 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42482 + c001b780: 00895b63 bge s2,s0,c001b796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42487 (discriminator 1) + c001b784: fff4099b addiw s3,s0,-1 + c001b788: 85ce mv a1,s3 + c001b78a: 8526 mv a0,s1 + c001b78c: 9dbe80ef jal ra,c0004166 + c001b790: 323280ef jal ra,c00442b2 + c001b794: e121 bnez a0,c001b7d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42490 ret = js_sub_string(ctx, p, a, b); - c001b5c6: 86a2 mv a3,s0 - c001b5c8: 864a mv a2,s2 - c001b5ca: 85a6 mv a1,s1 - c001b5cc: 8552 mv a0,s4 - c001b5ce: babfe0ef jal ra,c001a178 - c001b5d2: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42483 + c001b796: 86a2 mv a3,s0 + c001b798: 864a mv a2,s2 + c001b79a: 85a6 mv a1,s1 + c001b79c: 8552 mv a0,s4 + c001b79e: babfe0ef jal ra,c001a348 + c001b7a2: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42491 JS_FreeValue(ctx, str); - c001b5d4: 6662 ld a2,24(sp) - c001b5d6: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42482 + c001b7a4: 6662 ld a2,24(sp) + c001b7a6: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42490 ret = js_sub_string(ctx, p, a, b); - c001b5d8: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42483 + c001b7a8: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42491 JS_FreeValue(ctx, str); - c001b5da: 8552 mv a0,s4 - c001b5dc: d5cec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42484 + c001b7aa: 8552 mv a0,s4 + c001b7ac: c7aec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42492 return ret; - c001b5e0: 7782 ld a5,32(sp) - c001b5e2: f83e sd a5,48(sp) - c001b5e4: 77a2 ld a5,40(sp) - c001b5e6: fc3e sd a5,56(sp) - c001b5e8: bf79 j c001b586 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42476 + c001b7b0: 7782 ld a5,32(sp) + c001b7b2: f83e sd a5,48(sp) + c001b7b4: 77a2 ld a5,40(sp) + c001b7b6: fc3e sd a5,56(sp) + c001b7b8: bf79 j c001b756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42484 a++; - c001b5ea: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42475 + c001b7ba: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42483 while (a < len && lre_is_space(string_get(p, a))) - c001b5ec: fa895ee3 bge s2,s0,c001b5a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42475 (discriminator 1) - c001b5f0: 85ca mv a1,s2 - c001b5f2: 8526 mv a0,s1 - c001b5f4: b73e80ef jal ra,c0004166 - c001b5f8: 2eb280ef jal ra,c00440e2 - c001b5fc: f57d bnez a0,c001b5ea - c001b5fe: b76d j c001b5a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42472 - a = 0; - c001b600: 4901 li s2,0 - c001b602: b7ed j c001b5ec + c001b7bc: fa895ee3 bge s2,s0,c001b778 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42483 (discriminator 1) + c001b7c0: 85ca mv a1,s2 + c001b7c2: 8526 mv a0,s1 + c001b7c4: 9a3e80ef jal ra,c0004166 + c001b7c8: 2eb280ef jal ra,c00442b2 + c001b7cc: f57d bnez a0,c001b7ba + c001b7ce: b76d j c001b778 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42480 + a = 0; + c001b7d0: 4901 li s2,0 + c001b7d2: b7ed j c001b7bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42488 b--; - c001b604: 844e mv s0,s3 - c001b606: b76d j c001b5b0 + c001b7d4: 844e mv s0,s3 + c001b7d6: b76d j c001b780 -00000000c001b608 : +00000000c001b7d8 : js_string_normalize1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42634 -{ - c001b608: 7119 addi sp,sp,-128 - c001b60a: e8d2 sd s4,80(sp) - c001b60c: e032 sd a2,0(sp) - c001b60e: f032 sd a2,32(sp) - c001b610: 8a2e mv s4,a1 - c001b612: 85b2 mv a1,a2 - c001b614: 8636 mv a2,a3 - c001b616: f4a6 sd s1,104(sp) - c001b618: e0da sd s6,64(sp) - c001b61a: fc86 sd ra,120(sp) - c001b61c: 8b3a mv s6,a4 - c001b61e: f8a2 sd s0,112(sp) - c001b620: f0ca sd s2,96(sp) - c001b622: ecce sd s3,88(sp) - c001b624: e4d6 sd s5,72(sp) - c001b626: 84aa mv s1,a0 - c001b628: e436 sd a3,8(sp) - c001b62a: f436 sd a3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42642 +{ + c001b7d8: 7119 addi sp,sp,-128 + c001b7da: e8d2 sd s4,80(sp) + c001b7dc: e032 sd a2,0(sp) + c001b7de: f032 sd a2,32(sp) + c001b7e0: 8a2e mv s4,a1 + c001b7e2: 85b2 mv a1,a2 + c001b7e4: 8636 mv a2,a3 + c001b7e6: f4a6 sd s1,104(sp) + c001b7e8: e0da sd s6,64(sp) + c001b7ea: fc86 sd ra,120(sp) + c001b7ec: 8b3a mv s6,a4 + c001b7ee: f8a2 sd s0,112(sp) + c001b7f0: f0ca sd s2,96(sp) + c001b7f2: ecce sd s3,88(sp) + c001b7f4: e4d6 sd s5,72(sp) + c001b7f6: 84aa mv s1,a0 + c001b7f8: e436 sd a3,8(sp) + c001b7fa: f436 sd a3,40(sp) JS_ToUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42602 val = JS_ToString(ctx, val1); - c001b62c: 9aaff0ef jal ra,c001a7d6 - c001b630: f82a sd a0,48(sp) - c001b632: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42595 + c001b7fc: 9aaff0ef jal ra,c001a9a6 + c001b800: f82a sd a0,48(sp) + c001b802: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42603 if (JS_IsException(val)) - c001b634: 0005879b sext.w a5,a1 - c001b638: 4719 li a4,6 - c001b63a: 00e79e63 bne a5,a4,c001b656 + c001b804: 0005879b sext.w a5,a1 + c001b808: 4719 li a4,6 + c001b80a: 00e79e63 bne a5,a4,c001b826 js_string_normalize1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42640 - return -1; - c001b63e: 547d li s0,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42648 -} - c001b640: 70e6 ld ra,120(sp) - c001b642: 8522 mv a0,s0 - c001b644: 7446 ld s0,112(sp) - c001b646: 74a6 ld s1,104(sp) - c001b648: 7906 ld s2,96(sp) - c001b64a: 69e6 ld s3,88(sp) - c001b64c: 6a46 ld s4,80(sp) - c001b64e: 6aa6 ld s5,72(sp) - c001b650: 6b06 ld s6,64(sp) - c001b652: 6109 addi sp,sp,128 - c001b654: 8082 ret + return -1; + c001b80e: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42656 +} + c001b810: 70e6 ld ra,120(sp) + c001b812: 8522 mv a0,s0 + c001b814: 7446 ld s0,112(sp) + c001b816: 74a6 ld s1,104(sp) + c001b818: 7906 ld s2,96(sp) + c001b81a: 69e6 ld s3,88(sp) + c001b81c: 6a46 ld s4,80(sp) + c001b81e: 6aa6 ld s5,72(sp) + c001b820: 6b06 ld s6,64(sp) + c001b822: 6109 addi sp,sp,128 + c001b824: 8082 ret JS_ToUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42606 len = p->len; - c001b656: 4140 lw s0,4(a0) - c001b658: 8aaa mv s5,a0 - c001b65a: 1406 slli s0,s0,0x21 - c001b65c: 9005 srli s0,s0,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42600 + c001b826: 4140 lw s0,4(a0) + c001b828: 8aaa mv s5,a0 + c001b82a: 1406 slli s0,s0,0x21 + c001b82c: 9005 srli s0,s0,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42608 buf = js_malloc(ctx, sizeof(buf[0]) * max_int(len, 1)); - c001b65e: 0004059b sext.w a1,s0 - c001b662: 00804363 bgtz s0,c001b668 - c001b666: 4585 li a1,1 - c001b668: 058a slli a1,a1,0x2 - c001b66a: 8526 mv a0,s1 - c001b66c: de0f90ef jal ra,c0014c4c - c001b670: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42601 + c001b82e: 0004059b sext.w a1,s0 + c001b832: 00804363 bgtz s0,c001b838 + c001b836: 4585 li a1,1 + c001b838: 058a slli a1,a1,0x2 + c001b83a: 8526 mv a0,s1 + c001b83c: cfef90ef jal ra,c0014d3a + c001b840: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42609 if (!buf) { - c001b672: e519 bnez a0,c001b680 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42602 + c001b842: e519 bnez a0,c001b850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42610 JS_FreeValue(ctx, val); - c001b674: 75c2 ld a1,48(sp) - c001b676: 7662 ld a2,56(sp) - c001b678: 8526 mv a0,s1 - c001b67a: cbeec0ef jal ra,c0007b38 + c001b844: 75c2 ld a1,48(sp) + c001b846: 7662 ld a2,56(sp) + c001b848: 8526 mv a0,s1 + c001b84a: bdcec0ef jal ra,c0007c26 js_string_normalize1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42647 if (buf_len < 0) - c001b67e: b7c1 j c001b63e + c001b84e: b7c1 j c001b80e JS_ToUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42613 for(i = j = 0; i < len;) - c001b680: ce02 sw zero,28(sp) - c001b682: 4981 li s3,0 - c001b684: 47f2 lw a5,28(sp) - c001b686: 0287cf63 blt a5,s0,c001b6c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42607 + c001b850: ce02 sw zero,28(sp) + c001b852: 4981 li s3,0 + c001b854: 47f2 lw a5,28(sp) + c001b856: 0287cf63 blt a5,s0,c001b894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42615 JS_FreeValue(ctx, val); - c001b68a: 75c2 ld a1,48(sp) - c001b68c: 7662 ld a2,56(sp) - c001b68e: 8526 mv a0,s1 - c001b690: ca8ec0ef jal ra,c0007b38 + c001b85a: 75c2 ld a1,48(sp) + c001b85c: 7662 ld a2,56(sp) + c001b85e: 8526 mv a0,s1 + c001b860: bc6ec0ef jal ra,c0007c26 js_string_normalize1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42647 if (buf_len < 0) - c001b694: fa09c5e3 bltz s3,c001b63e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42641 + c001b864: fa09c5e3 bltz s3,c001b80e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42649 out_len = unicode_normalize(&out_buf, buf, buf_len, n_type, - c001b698: 6c98 ld a4,24(s1) - c001b69a: 85ca mv a1,s2 - c001b69c: fffe9797 auipc a5,0xfffe9 - c001b6a0: 9d478793 addi a5,a5,-1580 # c0004070 - c001b6a4: 86da mv a3,s6 - c001b6a6: 864e mv a2,s3 - c001b6a8: 1808 addi a0,sp,48 - c001b6aa: 15d2b0ef jal ra,c0047006 - c001b6ae: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42643 + c001b868: 6c98 ld a4,24(s1) + c001b86a: 85ca mv a1,s2 + c001b86c: fffe9797 auipc a5,0xfffe9 + c001b870: 80478793 addi a5,a5,-2044 # c0004070 + c001b874: 86da mv a3,s6 + c001b876: 864e mv a2,s3 + c001b878: 1808 addi a0,sp,48 + c001b87a: 15d2b0ef jal ra,c00471d6 + c001b87e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42651 js_free(ctx, buf); - c001b6b0: 85ca mv a1,s2 - c001b6b2: 8526 mv a0,s1 - c001b6b4: f86eb0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42644 + c001b880: 85ca mv a1,s2 + c001b882: 8526 mv a0,s1 + c001b884: ea4eb0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42652 if (out_len < 0) - c001b6b8: f80443e3 bltz s0,c001b63e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42646 + c001b888: f80443e3 bltz s0,c001b80e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42654 *pout_buf = out_buf; - c001b6bc: 77c2 ld a5,48(sp) - c001b6be: 00fa3023 sd a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42647 + c001b88c: 77c2 ld a5,48(sp) + c001b88e: 00fa3023 sd a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42655 return out_len; - c001b6c2: bfbd j c001b640 + c001b892: bfbd j c001b810 JS_ToUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42614 buf[j++] = string_getc(p, &i); - c001b6c4: 086c addi a1,sp,28 - c001b6c6: 8556 mv a0,s5 - c001b6c8: ab9e80ef jal ra,c0004180 - c001b6cc: 00299793 slli a5,s3,0x2 - c001b6d0: 97ca add a5,a5,s2 - c001b6d2: c388 sw a0,0(a5) - c001b6d4: 2985 addiw s3,s3,1 - c001b6d6: b77d j c001b684 - -00000000c001b6d8 : + c001b894: 086c addi a1,sp,28 + c001b896: 8556 mv a0,s5 + c001b898: 8e9e80ef jal ra,c0004180 + c001b89c: 00299793 slli a5,s3,0x2 + c001b8a0: 97ca add a5,a5,s2 + c001b8a2: c388 sw a0,0(a5) + c001b8a4: 2985 addiw s3,s3,1 + c001b8a6: b77d j c001b854 + +00000000c001b8a8 : string_buffer_concat_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3847 { - c001b6d8: 7139 addi sp,sp,-64 - c001b6da: fc06 sd ra,56(sp) - c001b6dc: f822 sd s0,48(sp) - c001b6de: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 + c001b8a8: 7139 addi sp,sp,-64 + c001b8aa: fc06 sd ra,56(sp) + c001b8ac: f822 sd s0,48(sp) + c001b8ae: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3852 if (s->error_status) { - c001b6e0: 4d5c lw a5,28(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3839 + c001b8b0: 4d5c lw a5,28(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3847 { - c001b6e2: e02e sd a1,0(sp) - c001b6e4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3844 + c001b8b2: e02e sd a1,0(sp) + c001b8b4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3852 if (s->error_status) { - c001b6e6: e7ad bnez a5,c001b750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3848 + c001b8b6: e7ad bnez a5,c001b920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3856 if (unlikely(JS_VALUE_GET_TAG(v) != JS_TAG_STRING)) { - c001b6e8: 0006079b sext.w a5,a2 - c001b6ec: 5765 li a4,-7 - c001b6ee: 04e78763 beq a5,a4,c001b73c - c001b6f2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3849 + c001b8b8: 0006079b sext.w a5,a2 + c001b8bc: 5765 li a4,-7 + c001b8be: 04e78763 beq a5,a4,c001b90c + c001b8c2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3857 v1 = JS_ToString(s->ctx, v); - c001b6f4: 6108 ld a0,0(a0) - c001b6f6: 8e0ff0ef jal ra,c001a7d6 - c001b6fa: ec2e sd a1,24(sp) - c001b6fc: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3850 + c001b8c4: 6108 ld a0,0(a0) + c001b8c6: 8e0ff0ef jal ra,c001a9a6 + c001b8ca: ec2e sd a1,24(sp) + c001b8cc: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3858 if (JS_IsException(v1)) - c001b6fe: 2581 sext.w a1,a1 - c001b700: 4799 li a5,6 - c001b702: 00f59963 bne a1,a5,c001b714 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3851 - return string_buffer_set_error(s); - c001b706: 8522 mv a0,s0 + c001b8ce: 2581 sext.w a1,a1 + c001b8d0: 4799 li a5,6 + c001b8d2: 00f59963 bne a1,a5,c001b8e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3859 + return string_buffer_set_error(s); + c001b8d6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3867 } - c001b708: 7442 ld s0,48(sp) - c001b70a: 70e2 ld ra,56(sp) - c001b70c: 74a2 ld s1,40(sp) - c001b70e: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3851 + c001b8d8: 7442 ld s0,48(sp) + c001b8da: 70e2 ld ra,56(sp) + c001b8dc: 74a2 ld s1,40(sp) + c001b8de: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3859 return string_buffer_set_error(s); - c001b710: f30eb06f j c0006e40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3853 + c001b8e0: e4eeb06f j c0006f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3861 res = string_buffer_concat(s, p, 0, p->len); - c001b714: 4154 lw a3,4(a0) - c001b716: 85aa mv a1,a0 - c001b718: 4601 li a2,0 - c001b71a: 1686 slli a3,a3,0x21 - c001b71c: 9285 srli a3,a3,0x21 - c001b71e: 8522 mv a0,s0 - c001b720: 849fd0ef jal ra,c0018f68 - c001b724: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3854 + c001b8e4: 4154 lw a3,4(a0) + c001b8e6: 85aa mv a1,a0 + c001b8e8: 4601 li a2,0 + c001b8ea: 1686 slli a3,a3,0x21 + c001b8ec: 9285 srli a3,a3,0x21 + c001b8ee: 8522 mv a0,s0 + c001b8f0: 849fd0ef jal ra,c0019138 + c001b8f4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3862 JS_FreeValue(s->ctx, v1); - c001b726: 65c2 ld a1,16(sp) - c001b728: 6662 ld a2,24(sp) - c001b72a: 6008 ld a0,0(s0) - c001b72c: c0cec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3859 -} - c001b730: 70e2 ld ra,56(sp) - c001b732: 7442 ld s0,48(sp) - c001b734: 8526 mv a0,s1 - c001b736: 74a2 ld s1,40(sp) - c001b738: 6121 addi sp,sp,64 - c001b73a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3858 + c001b8f6: 65c2 ld a1,16(sp) + c001b8f8: 6662 ld a2,24(sp) + c001b8fa: 6008 ld a0,0(s0) + c001b8fc: b2aec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3867 +} + c001b900: 70e2 ld ra,56(sp) + c001b902: 7442 ld s0,48(sp) + c001b904: 8526 mv a0,s1 + c001b906: 74a2 ld s1,40(sp) + c001b908: 6121 addi sp,sp,64 + c001b90a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3866 return string_buffer_concat(s, p, 0, p->len); - c001b73c: 41d4 lw a3,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3859 + c001b90c: 41d4 lw a3,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3867 } - c001b73e: 7442 ld s0,48(sp) - c001b740: 70e2 ld ra,56(sp) - c001b742: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3858 + c001b90e: 7442 ld s0,48(sp) + c001b910: 70e2 ld ra,56(sp) + c001b912: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3866 return string_buffer_concat(s, p, 0, p->len); - c001b744: 1686 slli a3,a3,0x21 - c001b746: 9285 srli a3,a3,0x21 - c001b748: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3859 + c001b914: 1686 slli a3,a3,0x21 + c001b916: 9285 srli a3,a3,0x21 + c001b918: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3867 } - c001b74a: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3858 + c001b91a: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3866 return string_buffer_concat(s, p, 0, p->len); - c001b74c: 81dfd06f j c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3846 + c001b91c: 81dfd06f j c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3854 return -1; - c001b750: 54fd li s1,-1 - c001b752: bff9 j c001b730 + c001b920: 54fd li s1,-1 + c001b922: bff9 j c001b900 -00000000c001b754 : +00000000c001b924 : js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49968 { - c001b754: 714d addi sp,sp,-336 - c001b756: f252 sd s4,288(sp) - c001b758: e82e sd a1,16(sp) - c001b75a: 8a2a mv s4,a0 - c001b75c: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49963 - int64_t fields[] = { 0, 1, 1, 0, 0, 0, 0 }; - c001b75e: 0003d597 auipc a1,0x3d - c001b762: a1258593 addi a1,a1,-1518 # c0058170 <_srodata> - c001b766: 03800613 li a2,56 - c001b76a: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49960 -{ - c001b76c: e686 sd ra,328(sp) - c001b76e: e2a2 sd s0,320(sp) - c001b770: ada2 fsd fs0,216(sp) - c001b772: 843a mv s0,a4 - c001b774: fe26 sd s1,312(sp) - c001b776: fa4a sd s2,304(sp) - c001b778: f64e sd s3,296(sp) - c001b77a: ee56 sd s5,280(sp) - c001b77c: ea5a sd s6,272(sp) - c001b77e: e65e sd s7,264(sp) - c001b780: e262 sd s8,256(sp) - c001b782: fde6 sd s9,248(sp) - c001b784: f9ea sd s10,240(sp) - c001b786: f5ee sd s11,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49963 + c001b924: 714d addi sp,sp,-336 + c001b926: f252 sd s4,288(sp) + c001b928: e82e sd a1,16(sp) + c001b92a: 8a2a mv s4,a0 + c001b92c: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 int64_t fields[] = { 0, 1, 1, 0, 0, 0, 0 }; - c001b788: 2523b0ef jal ra,c00569da + c001b92e: 0003d597 auipc a1,0x3d + c001b932: a1258593 addi a1,a1,-1518 # c0058340 <_srodata> + c001b936: 03800613 li a2,56 + c001b93a: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49968 +{ + c001b93c: e686 sd ra,328(sp) + c001b93e: e2a2 sd s0,320(sp) + c001b940: ada2 fsd fs0,216(sp) + c001b942: 843a mv s0,a4 + c001b944: fe26 sd s1,312(sp) + c001b946: fa4a sd s2,304(sp) + c001b948: f64e sd s3,296(sp) + c001b94a: ee56 sd s5,280(sp) + c001b94c: ea5a sd s6,272(sp) + c001b94e: e65e sd s7,264(sp) + c001b950: e262 sd s8,256(sp) + c001b952: fde6 sd s9,248(sp) + c001b954: f9ea sd s10,240(sp) + c001b956: f5ee sd s11,232(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + int64_t fields[] = { 0, 1, 1, 0, 0, 0, 0 }; + c001b958: 2523b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b78c: 00059797 auipc a5,0x59 - c001b790: ffc7b407 fld fs0,-4(a5) # c0074788 <_erodata+0x8> - c001b794: 12847453 fmul.d fs0,fs0,fs0 - c001b798: f20007d3 fmv.d.x fa5,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49973 + c001b95c: 00059797 auipc a5,0x59 + c001b960: 08c7b407 fld fs0,140(a5) # c00749e8 <_erodata+0x8> + c001b964: 12847453 fmul.d fs0,fs0,fs0 + c001b968: f20007d3 fmv.d.x fa5,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49981 s = JS_ToString(ctx, argv[0]); - c001b79c: 600c ld a1,0(s0) - c001b79e: 6410 ld a2,8(s0) - c001b7a0: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001b96c: 600c ld a1,0(s0) + c001b96e: 6410 ld a2,8(s0) + c001b970: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b7a2: 12f47453 fmul.d fs0,fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49973 + c001b972: 12f47453 fmul.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49981 s = JS_ToString(ctx, argv[0]); - c001b7a6: 830ff0ef jal ra,c001a7d6 - c001b7aa: e4ae sd a1,72(sp) - c001b7ac: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49974 + c001b976: 830ff0ef jal ra,c001a9a6 + c001b97a: e4ae sd a1,72(sp) + c001b97c: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49982 if (JS_IsException(s)) - c001b7ae: 2581 sext.w a1,a1 - c001b7b0: 4799 li a5,6 - c001b7b2: 02f59663 bne a1,a5,c001b7de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49975 + c001b97e: 2581 sext.w a1,a1 + c001b980: 4799 li a5,6 + c001b982: 02f59663 bne a1,a5,c001b9ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49983 return JS_EXCEPTION; - c001b7b6: e882 sd zero,80(sp) - c001b7b8: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50119 (discriminator 1) -} - c001b7ba: 60b6 ld ra,328(sp) - c001b7bc: 6416 ld s0,320(sp) - c001b7be: 6546 ld a0,80(sp) - c001b7c0: 65e6 ld a1,88(sp) - c001b7c2: 74f2 ld s1,312(sp) - c001b7c4: 7952 ld s2,304(sp) - c001b7c6: 79b2 ld s3,296(sp) - c001b7c8: 7a12 ld s4,288(sp) - c001b7ca: 6af2 ld s5,280(sp) - c001b7cc: 6b52 ld s6,272(sp) - c001b7ce: 6bb2 ld s7,264(sp) - c001b7d0: 6c12 ld s8,256(sp) - c001b7d2: 7cee ld s9,248(sp) - c001b7d4: 7d4e ld s10,240(sp) - c001b7d6: 7dae ld s11,232(sp) - c001b7d8: 246e fld fs0,216(sp) - c001b7da: 6171 addi sp,sp,336 - c001b7dc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 + c001b986: e882 sd zero,80(sp) + c001b988: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50127 (discriminator 1) +} + c001b98a: 60b6 ld ra,328(sp) + c001b98c: 6416 ld s0,320(sp) + c001b98e: 6546 ld a0,80(sp) + c001b990: 65e6 ld a1,88(sp) + c001b992: 74f2 ld s1,312(sp) + c001b994: 7952 ld s2,304(sp) + c001b996: 79b2 ld s3,296(sp) + c001b998: 7a12 ld s4,288(sp) + c001b99a: 6af2 ld s5,280(sp) + c001b99c: 6b52 ld s6,272(sp) + c001b99e: 6bb2 ld s7,264(sp) + c001b9a0: 6c12 ld s8,256(sp) + c001b9a2: 7cee ld s9,248(sp) + c001b9a4: 7d4e ld s10,240(sp) + c001b9a6: 7dae ld s11,232(sp) + c001b9a8: 246e fld fs0,216(sp) + c001b9aa: 6171 addi sp,sp,336 + c001b9ac: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49987 if (p < sp->len && (((c = string_get(sp, p)) >= '0' && c <= '9') || c == '+' || c == '-')) { - c001b7de: 415c lw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49978 + c001b9ae: 415c lw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49986 p = 0; - c001b7e0: d602 sw zero,44(sp) - c001b7e2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 + c001b9b0: d602 sw zero,44(sp) + c001b9b2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49987 if (p < sp->len && (((c = string_get(sp, p)) >= '0' && c <= '9') || c == '+' || c == '-')) { - c001b7e4: 02179713 slli a4,a5,0x21 - c001b7e8: 02175913 srli s2,a4,0x21 - c001b7ec: cf11 beqz a4,c001b808 + c001b9b4: 02179713 slli a4,a5,0x21 + c001b9b8: 02175913 srli s2,a4,0x21 + c001b9bc: cf11 beqz a4,c001b9d8 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c001b7ee: 2781 sext.w a5,a5 - c001b7f0: 0207d063 bgez a5,c001b810 - c001b7f4: 01055783 lhu a5,16(a0) + c001b9be: 2781 sext.w a5,a5 + c001b9c0: 0207d063 bgez a5,c001b9e0 + c001b9c4: 01055783 lhu a5,16(a0) js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49987 if (p < sp->len && (((c = string_get(sp, p)) >= '0' && c <= '9') || c == '+' || c == '-')) { - c001b7f8: 02f00713 li a4,47 - c001b7fc: 00f75d63 bge a4,a5,c001b816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 (discriminator 2) - c001b800: 03900713 li a4,57 - c001b804: 00f75e63 bge a4,a5,c001b820 + c001b9c8: 02f00713 li a4,47 + c001b9cc: 00f75d63 bge a4,a5,c001b9e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49987 (discriminator 2) + c001b9d0: 03900713 li a4,57 + c001b9d4: 00f75e63 bge a4,a5,c001b9f0 string_skip_non_spaces(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49844 while (*pp < sp->len && string_get(sp, *pp) != ' ') - c001b808: 2901 sext.w s2,s2 - c001b80a: 02000993 li s3,32 - c001b80e: a421 j c001ba16 + c001b9d8: 2901 sext.w s2,s2 + c001b9da: 02000993 li s3,32 + c001b9de: a421 j c001bbe6 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c001b810: 01054783 lbu a5,16(a0) - c001b814: b7d5 j c001b7f8 + c001b9e0: 01054783 lbu a5,16(a0) + c001b9e4: b7d5 j c001b9c8 js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49987 (discriminator 4) if (p < sp->len && (((c = string_get(sp, p)) >= '0' && c <= '9') || c == '+' || c == '-')) { - c001b816: fd57879b addiw a5,a5,-43 - c001b81a: 9bf5 andi a5,a5,-3 - c001b81c: 2781 sext.w a5,a5 - c001b81e: f7ed bnez a5,c001b808 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49982 + c001b9e6: fd57879b addiw a5,a5,-43 + c001b9ea: 9bf5 andi a5,a5,-3 + c001b9ec: 2781 sext.w a5,a5 + c001b9ee: f7ed bnez a5,c001b9d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49990 if (string_get_signed_digits(sp, &p, &fields[0])) - c001b820: 1090 addi a2,sp,96 - c001b822: 106c addi a1,sp,44 - c001b824: 8522 mv a0,s0 - c001b826: 99ce90ef jal ra,c00049c2 - c001b82a: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001b9f0: 1090 addi a2,sp,96 + c001b9f2: 106c addi a1,sp,44 + c001b9f4: 8522 mv a0,s0 + c001b9f6: fcde80ef jal ra,c00049c2 + c001b9fa: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b82c: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49982 + c001b9fc: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49990 if (string_get_signed_digits(sp, &p, &fields[0])) - c001b82e: 1c051163 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49986 + c001b9fe: 1c051163 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49994 if (p >= sp->len) - c001b832: 80000b37 lui s6,0x80000 - c001b836: 06810a93 addi s5,sp,104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49985 + c001ba02: 80000b37 lui s6,0x80000 + c001ba06: 06810a93 addi s5,sp,104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49993 for (i = 1; i < 7; i++) { - c001b83a: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49986 + c001ba0a: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49994 if (p >= sp->len) - c001b83c: fffb4b13 not s6,s6 + c001ba0c: fffb4b13 not s6,s6 string_get_milliseconds(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49918 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49926 if (mul == 1 && c >= '5') - c001b840: 4c05 li s8,1 - c001b842: 03400c93 li s9,52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49920 + c001ba10: 4c05 li s8,1 + c001ba12: 03400c93 li s9,52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49928 ms += (c - '0') * (mul /= 10); - c001b846: 4d29 li s10,10 + c001ba16: 4d29 li s10,10 js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49986 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49994 if (p >= sp->len) - c001b848: 4058 lw a4,4(s0) - c001b84a: 54b2 lw s1,44(sp) - c001b84c: 00eb7bb3 and s7,s6,a4 - c001b850: 0974dd63 bge s1,s7,c001b8ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49988 + c001ba18: 4058 lw a4,4(s0) + c001ba1a: 54b2 lw s1,44(sp) + c001ba1c: 00eb7bb3 and s7,s6,a4 + c001ba20: 0974dd63 bge s1,s7,c001baba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49996 switch(i) { - c001b854: ffd9079b addiw a5,s2,-3 - c001b858: 0007861b sext.w a2,a5 - c001b85c: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49986 + c001ba24: ffd9079b addiw a5,s2,-3 + c001ba28: 0007861b sext.w a2,a5 + c001ba2c: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49994 if (p >= sp->len) - c001b85e: 02d00d93 li s11,45 - c001b862: 00c6eb63 bltu a3,a2,c001b878 - c001b866: 1782 slli a5,a5,0x20 - c001b868: 9381 srli a5,a5,0x20 - c001b86a: 00059717 auipc a4,0x59 - c001b86e: 10670713 addi a4,a4,262 # c0074970 - c001b872: 97ba add a5,a5,a4 - c001b874: 00078d83 lb s11,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50004 + c001ba2e: 02d00d93 li s11,45 + c001ba32: 00c6eb63 bltu a3,a2,c001ba48 + c001ba36: 1782 slli a5,a5,0x20 + c001ba38: 9381 srli a5,a5,0x20 + c001ba3a: 00059717 auipc a4,0x59 + c001ba3e: 19670713 addi a4,a4,406 # c0074bd0 + c001ba42: 97ba add a5,a5,a4 + c001ba44: 00078d83 lb s11,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50012 if (string_get(sp, p) != c) - c001b878: 85a6 mv a1,s1 - c001b87a: 8522 mv a0,s0 - c001b87c: 8ebe80ef jal ra,c0004166 - c001b880: 07b51563 bne a0,s11,c001b8ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50006 + c001ba48: 85a6 mv a1,s1 + c001ba4a: 8522 mv a0,s0 + c001ba4c: f1ae80ef jal ra,c0004166 + c001ba50: 07b51563 bne a0,s11,c001baba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50014 p++; - c001b884: 0014861b addiw a2,s1,1 - c001b888: d632 sw a2,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50007 + c001ba54: 0014861b addiw a2,s1,1 + c001ba58: d632 sw a2,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50015 if (i == 6) { - c001b88a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50006 + c001ba5a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50014 p++; - c001b88c: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50007 + c001ba5c: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50015 if (i == 6) { - c001b88e: 06f91c63 bne s2,a5,c001b906 + c001ba5e: 06f91c63 bne s2,a5,c001bad6 string_get_milliseconds(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49915 if (p >= sp->len) - c001b892: 03765563 bge a2,s7,c001b8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49906 + c001ba62: 03765563 bge a2,s7,c001ba8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49914 int mul = 1000, ms = 0, p = *pp, c, p_start; - c001b896: 4d81 li s11,0 - c001b898: 3e800693 li a3,1000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49911 + c001ba66: 4d81 li s11,0 + c001ba68: 3e800693 li a3,1000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49919 c = string_get(sp, p); - c001b89c: 85a6 mv a1,s1 - c001b89e: 8522 mv a0,s0 - c001b8a0: e436 sd a3,8(sp) - c001b8a2: e032 sd a2,0(sp) - c001b8a4: 8c3e80ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49912 + c001ba6c: 85a6 mv a1,s1 + c001ba6e: 8522 mv a0,s0 + c001ba70: e436 sd a3,8(sp) + c001ba72: e032 sd a2,0(sp) + c001ba74: ef2e80ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49920 if (!(c >= '0' && c <= '9')) { - c001b8a8: fd05059b addiw a1,a0,-48 - c001b8ac: 4825 li a6,9 - c001b8ae: 6602 ld a2,0(sp) - c001b8b0: 66a2 ld a3,8(sp) - c001b8b2: 87ae mv a5,a1 - c001b8b4: 00b87663 bgeu a6,a1,c001b8c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49913 + c001ba78: fd05059b addiw a1,a0,-48 + c001ba7c: 4825 li a6,9 + c001ba7e: 6602 ld a2,0(sp) + c001ba80: 66a2 ld a3,8(sp) + c001ba82: 87ae mv a5,a1 + c001ba84: 00b87663 bgeu a6,a1,c001ba90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49921 if (p == p_start) - c001b8b8: 02961263 bne a2,s1,c001b8dc + c001ba88: 02961263 bne a2,s1,c001baac js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b8bc: 491d li s2,7 - c001b8be: aa0d j c001b9f0 + c001ba8c: 491d li s2,7 + c001ba8e: aa0d j c001bbc0 string_get_milliseconds(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49918 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49926 if (mul == 1 && c >= '5') - c001b8c0: 01869563 bne a3,s8,c001b8ca - c001b8c4: 00acd363 bge s9,a0,c001b8ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49919 + c001ba90: 01869563 bne a3,s8,c001ba9a + c001ba94: 00acd363 bge s9,a0,c001ba9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49927 ms += 1; - c001b8c8: 2d85 addiw s11,s11,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49920 + c001ba98: 2d85 addiw s11,s11,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49928 ms += (c - '0') * (mul /= 10); - c001b8ca: 03a6c6bb divw a3,a3,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49921 + c001ba9a: 03a6c6bb divw a3,a3,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49929 p++; - c001b8ce: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49920 + c001ba9e: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49928 ms += (c - '0') * (mul /= 10); - c001b8d0: 02d787bb mulw a5,a5,a3 - c001b8d4: 01b78dbb addw s11,a5,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49910 + c001baa0: 02d787bb mulw a5,a5,a3 + c001baa4: 01b78dbb addw s11,a5,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49918 while (p < sp->len) { - c001b8d8: fd74c2e3 blt s1,s7,c001b89c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49923 + c001baa8: fd74c2e3 blt s1,s7,c001ba6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49931 *pval = ms; - c001b8dc: e96e sd s11,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49924 + c001baac: e96e sd s11,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49932 *pp = p; - c001b8de: d626 sw s1,44(sp) + c001baae: d626 sw s1,44(sp) js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49985 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49993 (discriminator 2) for (i = 1; i < 7; i++) { - c001b8e0: 2905 addiw s2,s2,1 - c001b8e2: 479d li a5,7 - c001b8e4: 0aa1 addi s5,s5,8 - c001b8e6: f6f911e3 bne s2,a5,c001b848 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50017 + c001bab0: 2905 addiw s2,s2,1 + c001bab2: 479d li a5,7 + c001bab4: 0aa1 addi s5,s5,8 + c001bab6: f6f911e3 bne s2,a5,c001ba18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50025 fields[1] -= 1; - c001b8ea: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50021 + c001baba: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50029 if (p < sp->len) { - c001b8ec: 5ab2 lw s5,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50017 + c001babc: 5ab2 lw s5,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50025 fields[1] -= 1; - c001b8ee: 17fd addi a5,a5,-1 - c001b8f0: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50021 + c001babe: 17fd addi a5,a5,-1 + c001bac0: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50029 if (p < sp->len) { - c001b8f2: 4044 lw s1,4(s0) - c001b8f4: 1486 slli s1,s1,0x21 - c001b8f6: 9085 srli s1,s1,0x21 - c001b8f8: 009ace63 blt s5,s1,c001b914 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50016 + c001bac2: 4044 lw s1,4(s0) + c001bac4: 1486 slli s1,s1,0x21 + c001bac6: 9085 srli s1,s1,0x21 + c001bac8: 009ace63 blt s5,s1,c001bae4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50024 is_local = (i > 3); - c001b8fc: 498d li s3,3 - c001b8fe: 0129a9b3 slt s3,s3,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 + c001bacc: 498d li s3,3 + c001bace: 0129a9b3 slt s3,s3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 for (tz = 0; p < sp->len; p++) { - c001b902: 4481 li s1,0 - c001b904: a859 j c001b99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50011 + c001bad2: 4481 li s1,0 + c001bad4: a859 j c001bb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50019 if (string_get_digits(sp, &p, &fields[i])) - c001b906: 8656 mv a2,s5 - c001b908: 106c addi a1,sp,44 - c001b90a: 8522 mv a0,s0 - c001b90c: 832e90ef jal ra,c000493e - c001b910: d961 beqz a0,c001b8e0 - c001b912: b76d j c001b8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50022 + c001bad6: 8656 mv a2,s5 + c001bad8: 106c addi a1,sp,44 + c001bada: 8522 mv a0,s0 + c001badc: e63e80ef jal ra,c000493e + c001bae0: d961 beqz a0,c001bab0 + c001bae2: b76d j c001ba8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50030 sgn = string_get(sp, p); - c001b914: 85d6 mv a1,s5 - c001b916: 8522 mv a0,s0 - c001b918: 84fe80ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50023 + c001bae4: 85d6 mv a1,s5 + c001bae6: 8522 mv a0,s0 + c001bae8: e7ee80ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50031 if (sgn == '+' || sgn == '-') { - c001b91c: fd55079b addiw a5,a0,-43 - c001b920: 9bf5 andi a5,a5,-3 - c001b922: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50022 + c001baec: fd55079b addiw a5,a0,-43 + c001baf0: 9bf5 andi a5,a5,-3 + c001baf2: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50030 sgn = string_get(sp, p); - c001b924: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50023 + c001baf4: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50031 if (sgn == '+' || sgn == '-') { - c001b926: efe9 bnez a5,c001ba00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50024 + c001baf6: efe9 bnez a5,c001bbd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50032 p++; - c001b928: 2a85 addiw s5,s5,1 - c001b92a: d656 sw s5,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50025 + c001baf8: 2a85 addiw s5,s5,1 + c001bafa: d656 sw s5,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50033 l = sp->len - p; - c001b92c: 41548abb subw s5,s1,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50026 + c001bafc: 41548abb subw s5,s1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50034 if (l != 4 && l != 5) - c001b930: ffca849b addiw s1,s5,-4 - c001b934: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bb00: ffca849b addiw s1,s5,-4 + c001bb04: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b936: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50026 + c001bb06: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50034 if (l != 4 && l != 5) - c001b938: 0a97ec63 bltu a5,s1,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50028 + c001bb08: 0a97ec63 bltu a5,s1,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50036 if (string_get_fixed_width_digits(sp, &p, 2, &hh)) - c001b93c: 1810 addi a2,sp,48 - c001b93e: 106c addi a1,sp,44 - c001b940: 8522 mv a0,s0 - c001b942: 803ea0ef jal ra,c0006144 - c001b946: e54d bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50030 + c001bb0c: 1810 addi a2,sp,48 + c001bb0e: 106c addi a1,sp,44 + c001bb10: 8522 mv a0,s0 + c001bb12: f20ea0ef jal ra,c0006232 + c001bb16: e54d bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50038 if (l == 5) { - c001b948: 4795 li a5,5 - c001b94a: 00fa9d63 bne s5,a5,c001b964 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50031 + c001bb18: 4795 li a5,5 + c001bb1a: 00fa9d63 bne s5,a5,c001bb34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50039 if (string_get(sp, p) != ':') - c001b94e: 54b2 lw s1,44(sp) - c001b950: 8522 mv a0,s0 - c001b952: 85a6 mv a1,s1 - c001b954: 813e80ef jal ra,c0004166 - c001b958: 03a00793 li a5,58 - c001b95c: 08f51a63 bne a0,a5,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50033 + c001bb1e: 54b2 lw s1,44(sp) + c001bb20: 8522 mv a0,s0 + c001bb22: 85a6 mv a1,s1 + c001bb24: e42e80ef jal ra,c0004166 + c001bb28: 03a00793 li a5,58 + c001bb2c: 08f51a63 bne a0,a5,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50041 p++; - c001b960: 2485 addiw s1,s1,1 - c001b962: d626 sw s1,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50035 + c001bb30: 2485 addiw s1,s1,1 + c001bb32: d626 sw s1,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50043 if (string_get_fixed_width_digits(sp, &p, 2, &mm)) - c001b964: 1830 addi a2,sp,56 - c001b966: 106c addi a1,sp,44 - c001b968: 8522 mv a0,s0 - c001b96a: fdaea0ef jal ra,c0006144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bb34: 1830 addi a2,sp,56 + c001bb36: 106c addi a1,sp,44 + c001bb38: 8522 mv a0,s0 + c001bb3a: ef8ea0ef jal ra,c0006232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b96e: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50035 + c001bb3e: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50043 if (string_get_fixed_width_digits(sp, &p, 2, &mm)) - c001b970: e141 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50037 + c001bb40: e141 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50045 tz = hh * 60 + mm; - c001b972: 77c2 ld a5,48(sp) - c001b974: 03c00493 li s1,60 - c001b978: 02f484b3 mul s1,s1,a5 - c001b97c: 77e2 ld a5,56(sp) - c001b97e: 94be add s1,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50038 + c001bb42: 77c2 ld a5,48(sp) + c001bb44: 03c00493 li s1,60 + c001bb48: 02f484b3 mul s1,s1,a5 + c001bb4c: 77e2 ld a5,56(sp) + c001bb4e: 94be add s1,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50046 if (sgn == '-') - c001b980: 02d00793 li a5,45 - c001b984: 00fb1463 bne s6,a5,c001b98c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50039 + c001bb50: 02d00793 li a5,45 + c001bb54: 00fb1463 bne s6,a5,c001bb5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50047 tz = -tz; - c001b988: 409004b3 neg s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50048 + c001bb58: 409004b3 neg s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50056 if (p != sp->len) - c001b98c: 405c lw a5,4(s0) - c001b98e: 5732 lw a4,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bb5c: 405c lw a5,4(s0) + c001bb5e: 5732 lw a4,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001b990: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50048 + c001bb60: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50056 if (p != sp->len) - c001b992: 1786 slli a5,a5,0x21 - c001b994: 9385 srli a5,a5,0x21 - c001b996: 04f71d63 bne a4,a5,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 + c001bb62: 1786 slli a5,a5,0x21 + c001bb64: 9385 srli a5,a5,0x21 + c001bb66: 04f71d63 bne a4,a5,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 for (tz = 0; p < sp->len; p++) { - c001b99a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50111 + c001bb6a: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50119 for(i = 0; i < 7; i++) - c001b99c: 03800713 li a4,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50112 (discriminator 3) + c001bb6c: 03800713 li a4,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50120 (discriminator 3) fields1[i] = fields[i]; - c001b9a0: 1090 addi a2,sp,96 - c001b9a2: 963e add a2,a2,a5 - c001b9a4: 6210 ld a2,0(a2) - c001b9a6: 0934 addi a3,sp,152 - c001b9a8: 96be add a3,a3,a5 - c001b9aa: d22677d3 fcvt.d.l fa5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50111 (discriminator 3) + c001bb70: 1090 addi a2,sp,96 + c001bb72: 963e add a2,a2,a5 + c001bb74: 6210 ld a2,0(a2) + c001bb76: 0934 addi a3,sp,152 + c001bb78: 96be add a3,a3,a5 + c001bb7a: d22677d3 fcvt.d.l fa5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50119 (discriminator 3) for(i = 0; i < 7; i++) - c001b9ae: 07a1 addi a5,a5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50112 (discriminator 3) + c001bb7e: 07a1 addi a5,a5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50120 (discriminator 3) fields1[i] = fields[i]; - c001b9b0: a29c fsd fa5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50111 (discriminator 3) + c001bb80: a29c fsd fa5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50119 (discriminator 3) for(i = 0; i < 7; i++) - c001b9b2: fee797e3 bne a5,a4,c001b9a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50113 + c001bb82: fee797e3 bne a5,a4,c001bb70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50121 d = set_date_fields(fields1, is_local) - tz * 60000; - c001b9b6: 85ce mv a1,s3 - c001b9b8: 0928 addi a0,sp,152 - c001b9ba: f47ea0ef jal ra,c0006900 - c001b9be: 67bd lui a5,0xf - c001b9c0: a6078793 addi a5,a5,-1440 # ea60 <__clzdi2-0xbfff15a0> - c001b9c4: 02f484b3 mul s1,s1,a5 - c001b9c8: d224f7d3 fcvt.d.l fa5,s1 - c001b9cc: 0af577d3 fsub.d fa5,fa0,fa5 + c001bb86: 85ce mv a1,s3 + c001bb88: 0928 addi a0,sp,152 + c001bb8a: e65ea0ef jal ra,c00069ee + c001bb8e: 67bd lui a5,0xf + c001bb90: a6078793 addi a5,a5,-1440 # ea60 <__clzdi2-0xbfff15a0> + c001bb94: 02f484b3 mul s1,s1,a5 + c001bb98: d224f7d3 fcvt.d.l fa5,s1 + c001bb9c: 0af577d3 fsub.d fa5,fa0,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001b9d0: c20796d3 fcvt.w.d a3,fa5,rtz + c001bba0: c20796d3 fcvt.w.d a3,fa5,rtz js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50113 - c001b9d4: e20787d3 fmv.x.d a5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50121 + c001bba4: e20787d3 fmv.x.d a5,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001b9d8: d20687d3 fcvt.d.w fa5,a3 + c001bba8: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001b9dc: 0006871b sext.w a4,a3 + c001bbac: 0006871b sext.w a4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001b9e0: e2078653 fmv.x.d a2,fa5 - c001b9e4: 16f61c63 bne a2,a5,c001bb5c + c001bbb0: e2078653 fmv.x.d a2,fa5 + c001bbb4: 16f61c63 bne a2,a5,c001bd2c /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001b9e8: ca82 sw zero,84(sp) - c001b9ea: 4901 li s2,0 + c001bbb8: ca82 sw zero,84(sp) + c001bbba: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001b9ec: c8ba sw a4,80(sp) - c001b9ee: 2446 fld fs0,80(sp) + c001bbbc: c8ba sw a4,80(sp) + c001bbbe: 2446 fld fs0,80(sp) js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50125 JS_FreeValue(ctx, s); - c001b9f0: 6626 ld a2,72(sp) - c001b9f2: 85a2 mv a1,s0 - c001b9f4: 8552 mv a0,s4 - c001b9f6: 942ec0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50118 + c001bbc0: 6626 ld a2,72(sp) + c001bbc2: 85a2 mv a1,s0 + c001bbc4: 8552 mv a0,s4 + c001bbc6: 860ec0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50126 return rv; - c001b9fa: a8a2 fsd fs0,80(sp) - c001b9fc: ecca sd s2,88(sp) - c001b9fe: bb75 j c001b7ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50041 + c001bbca: a8a2 fsd fs0,80(sp) + c001bbcc: ecca sd s2,88(sp) + c001bbce: bb75 j c001b98a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50049 } else if (sgn == 'Z') { - c001ba00: 05a00793 li a5,90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bbd0: 05a00793 li a5,90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001ba04: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50041 + c001bbd4: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50049 } else if (sgn == 'Z') { - c001ba06: fef515e3 bne a0,a5,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50042 + c001bbd6: fef515e3 bne a0,a5,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50050 p++; - c001ba0a: 2a85 addiw s5,s5,1 - c001ba0c: d656 sw s5,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50020 + c001bbda: 2a85 addiw s5,s5,1 + c001bbdc: d656 sw s5,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50028 tz = 0; - c001ba0e: 4481 li s1,0 - c001ba10: bfb5 j c001b98c + c001bbde: 4481 li s1,0 + c001bbe0: bfb5 j c001bb5c string_skip_non_spaces(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49837 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49845 *pp += 1; - c001ba12: 2485 addiw s1,s1,1 - c001ba14: d626 sw s1,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49836 + c001bbe2: 2485 addiw s1,s1,1 + c001bbe4: d626 sw s1,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49844 while (*pp < sp->len && string_get(sp, *pp) != ' ') - c001ba16: 54b2 lw s1,44(sp) - c001ba18: 0124d863 bge s1,s2,c001ba28 - c001ba1c: 85a6 mv a1,s1 - c001ba1e: 8522 mv a0,s0 - c001ba20: f46e80ef jal ra,c0004166 - c001ba24: ff3517e3 bne a0,s3,c001ba12 + c001bbe6: 54b2 lw s1,44(sp) + c001bbe8: 0124d863 bge s1,s2,c001bbf8 + c001bbec: 85a6 mv a1,s1 + c001bbee: 8522 mv a0,s0 + c001bbf0: d76e80ef jal ra,c0004166 + c001bbf4: ff3517e3 bne a0,s3,c001bbe2 js_Date_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50055 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50063 string_skip_spaces(sp, &p); - c001ba28: 106c addi a1,sp,44 - c001ba2a: 8522 mv a0,s0 - c001ba2c: ec3e80ef jal ra,c00048ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50056 + c001bbf8: 106c addi a1,sp,44 + c001bbfa: 8522 mv a0,s0 + c001bbfc: cf3e80ef jal ra,c00048ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50064 if (p >= sp->len) - c001ba30: 405c lw a5,4(s0) - c001ba32: 55b2 lw a1,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bc00: 405c lw a5,4(s0) + c001bc02: 55b2 lw a1,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001ba34: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50056 + c001bc04: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50064 if (p >= sp->len) - c001ba36: 1786 slli a5,a5,0x21 - c001ba38: 9385 srli a5,a5,0x21 - c001ba3a: faf5dbe3 bge a1,a5,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50058 + c001bc06: 1786 slli a5,a5,0x21 + c001bc08: 9385 srli a5,a5,0x21 + c001bc0a: faf5dbe3 bge a1,a5,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50066 c = string_get(sp, p); - c001ba3e: 8522 mv a0,s0 - c001ba40: f26e80ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50059 + c001bc0e: 8522 mv a0,s0 + c001bc10: d56e80ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50067 if (c >= '0' && c <= '9') { - c001ba44: fd05051b addiw a0,a0,-48 - c001ba48: 47a5 li a5,9 - c001ba4a: 0ca7e563 bltu a5,a0,c001bb14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50061 + c001bc14: fd05051b addiw a0,a0,-48 + c001bc18: 47a5 li a5,9 + c001bc1a: 0ca7e563 bltu a5,a0,c001bce4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50069 if (string_get_digits(sp, &p, &fields[2])) - c001ba4e: 1890 addi a2,sp,112 - c001ba50: 106c addi a1,sp,44 - c001ba52: 8522 mv a0,s0 - c001ba54: eebe80ef jal ra,c000493e - c001ba58: fd41 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50063 + c001bc1e: 1890 addi a2,sp,112 + c001bc20: 106c addi a1,sp,44 + c001bc22: 8522 mv a0,s0 + c001bc24: d1be80ef jal ra,c000493e + c001bc28: fd41 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50071 if (string_get_month(sp, &p, &fields[1])) - c001ba5a: 10b0 addi a2,sp,104 - c001ba5c: 106c addi a1,sp,44 - c001ba5e: 8522 mv a0,s0 - c001ba60: e3eea0ef jal ra,c000609e - c001ba64: f551 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50074 + c001bc2a: 10b0 addi a2,sp,104 + c001bc2c: 106c addi a1,sp,44 + c001bc2e: 8522 mv a0,s0 + c001bc30: d5cea0ef jal ra,c000618c + c001bc34: f551 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50082 string_skip_spaces(sp, &p); - c001ba66: 106c addi a1,sp,44 - c001ba68: 8522 mv a0,s0 - c001ba6a: e85e80ef jal ra,c00048ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50075 + c001bc36: 106c addi a1,sp,44 + c001bc38: 8522 mv a0,s0 + c001bc3a: cb5e80ef jal ra,c00048ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50083 if (string_get_signed_digits(sp, &p, &fields[0])) - c001ba6e: 1090 addi a2,sp,96 - c001ba70: 106c addi a1,sp,44 - c001ba72: 8522 mv a0,s0 - c001ba74: f4fe80ef jal ra,c00049c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bc3e: 1090 addi a2,sp,96 + c001bc40: 106c addi a1,sp,44 + c001bc42: 8522 mv a0,s0 + c001bc44: d7fe80ef jal ra,c00049c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001ba78: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50075 + c001bc48: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50083 if (string_get_signed_digits(sp, &p, &fields[0])) - c001ba7a: f93d bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50079 + c001bc4a: f93d bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50087 string_skip_spaces(sp, &p); - c001ba7c: 106c addi a1,sp,44 - c001ba7e: 8522 mv a0,s0 - c001ba80: 800004b7 lui s1,0x80000 - c001ba84: e6be80ef jal ra,c00048ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50081 + c001bc4c: 106c addi a1,sp,44 + c001bc4e: 8522 mv a0,s0 + c001bc50: 800004b7 lui s1,0x80000 + c001bc54: c9be80ef jal ra,c00048ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50089 if (i == 1 || i == 2) { - c001ba88: 07810c13 addi s8,sp,120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50079 + c001bc58: 07810c13 addi s8,sp,120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50087 string_skip_spaces(sp, &p); - c001ba8c: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50080 + c001bc5c: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50088 for(i = 0; i < 3; i++) { - c001ba8e: 4a89 li s5,2 - c001ba90: fff4c493 not s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50084 + c001bc5e: 4a89 li s5,2 + c001bc60: fff4c493 not s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50092 if (string_get(sp, p) != ':') - c001ba94: 03a00b13 li s6,58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50088 + c001bc64: 03a00b13 li s6,58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 if (string_get_digits(sp, &p, &fields[3 + i])) - c001ba98: 8662 mv a2,s8 - c001ba9a: 106c addi a1,sp,44 - c001ba9c: 8522 mv a0,s0 - c001ba9e: ea1e80ef jal ra,c000493e - c001baa2: 89aa mv s3,a0 - c001baa4: e0051ce3 bnez a0,c001b8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50080 (discriminator 2) + c001bc68: 8662 mv a2,s8 + c001bc6a: 106c addi a1,sp,44 + c001bc6c: 8522 mv a0,s0 + c001bc6e: cd1e80ef jal ra,c000493e + c001bc72: 89aa mv s3,a0 + c001bc74: e0051ce3 bnez a0,c001ba8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50088 (discriminator 2) for(i = 0; i < 3; i++) { - c001baa8: 405c lw a5,4(s0) - c001baaa: 095b9763 bne s7,s5,c001bb38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 + c001bc78: 405c lw a5,4(s0) + c001bc7a: 095b9763 bne s7,s5,c001bd08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 for (tz = 0; p < sp->len; p++) { - c001baae: 8cfd and s1,s1,a5 - c001bab0: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50098 + c001bc7e: 8cfd and s1,s1,a5 + c001bc80: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50106 if (sgn == '+' || sgn == '-') { - c001bab2: 02b00b13 li s6,43 - c001bab6: 02d00b93 li s7,45 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 (discriminator 1) + c001bc82: 02b00b13 li s6,43 + c001bc86: 02d00b93 li s7,45 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 (discriminator 1) for (tz = 0; p < sp->len; p++) { - c001baba: 5932 lw s2,44(sp) - c001babc: e49953e3 bge s2,s1,c001b902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50097 + c001bc8a: 5932 lw s2,44(sp) + c001bc8c: e49953e3 bge s2,s1,c001bad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50105 sgn = string_get(sp, p); - c001bac0: 85ca mv a1,s2 - c001bac2: 8522 mv a0,s0 - c001bac4: ea2e80ef jal ra,c0004166 - c001bac8: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 + c001bc90: 85ca mv a1,s2 + c001bc92: 8522 mv a0,s0 + c001bc94: cd2e80ef jal ra,c0004166 + c001bc98: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 for (tz = 0; p < sp->len; p++) { - c001baca: 0019079b addiw a5,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50098 + c001bc9a: 0019079b addiw a5,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50106 if (sgn == '+' || sgn == '-') { - c001bace: 01650463 beq a0,s6,c001bad6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50098 (discriminator 1) - c001bad2: 09751363 bne a0,s7,c001bb58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50100 + c001bc9e: 01650463 beq a0,s6,c001bca6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50106 (discriminator 1) + c001bca2: 09751363 bne a0,s7,c001bd28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50108 if (string_get_fixed_width_digits(sp, &p, 2, &hh)) - c001bad6: 1810 addi a2,sp,48 - c001bad8: 106c addi a1,sp,44 - c001bada: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50099 + c001bca6: 1810 addi a2,sp,48 + c001bca8: 106c addi a1,sp,44 + c001bcaa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50107 p++; - c001badc: d63e sw a5,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50100 + c001bcac: d63e sw a5,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50108 if (string_get_fixed_width_digits(sp, &p, 2, &hh)) - c001bade: e66ea0ef jal ra,c0006144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bcae: d84ea0ef jal ra,c0006232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001bae2: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50100 + c001bcb2: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50108 if (string_get_fixed_width_digits(sp, &p, 2, &hh)) - c001bae4: f00516e3 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50102 + c001bcb4: f00516e3 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50110 if (string_get_fixed_width_digits(sp, &p, 2, &mm)) - c001bae8: 1830 addi a2,sp,56 - c001baea: 106c addi a1,sp,44 - c001baec: 8522 mv a0,s0 - c001baee: e56ea0ef jal ra,c0006144 - c001baf2: 89aa mv s3,a0 - c001baf4: ee051ee3 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 + c001bcb8: 1830 addi a2,sp,56 + c001bcba: 106c addi a1,sp,44 + c001bcbc: 8522 mv a0,s0 + c001bcbe: d74ea0ef jal ra,c0006232 + c001bcc2: 89aa mv s3,a0 + c001bcc4: ee051ee3 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50112 tz = hh * 60 + mm; - c001baf8: 77c2 ld a5,48(sp) - c001bafa: 03c00493 li s1,60 - c001bafe: 02f484b3 mul s1,s1,a5 - c001bb02: 77e2 ld a5,56(sp) - c001bb04: 94be add s1,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50105 + c001bcc8: 77c2 ld a5,48(sp) + c001bcca: 03c00493 li s1,60 + c001bcce: 02f484b3 mul s1,s1,a5 + c001bcd2: 77e2 ld a5,56(sp) + c001bcd4: 94be add s1,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50113 if (sgn == '-') - c001bb06: 02d00793 li a5,45 - c001bb0a: e8fa98e3 bne s5,a5,c001b99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50106 + c001bcd6: 02d00793 li a5,45 + c001bcda: e8fa98e3 bne s5,a5,c001bb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50114 tz = -tz; - c001bb0e: 409004b3 neg s1,s1 - c001bb12: b561 j c001b99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50067 + c001bcde: 409004b3 neg s1,s1 + c001bce2: b561 j c001bb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50075 if (string_get_month(sp, &p, &fields[1])) - c001bb14: 10b0 addi a2,sp,104 - c001bb16: 106c addi a1,sp,44 - c001bb18: 8522 mv a0,s0 - c001bb1a: d84ea0ef jal ra,c000609e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49971 + c001bce4: 10b0 addi a2,sp,104 + c001bce6: 106c addi a1,sp,44 + c001bce8: 8522 mv a0,s0 + c001bcea: ca2ea0ef jal ra,c000618c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49979 rv = JS_NAN; - c001bb1e: 491d li s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50067 + c001bcee: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50075 if (string_get_month(sp, &p, &fields[1])) - c001bb20: ec0518e3 bnez a0,c001b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50069 + c001bcf0: ec0518e3 bnez a0,c001bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50077 string_skip_spaces(sp, &p); - c001bb24: 106c addi a1,sp,44 - c001bb26: 8522 mv a0,s0 - c001bb28: dc7e80ef jal ra,c00048ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50070 + c001bcf4: 106c addi a1,sp,44 + c001bcf6: 8522 mv a0,s0 + c001bcf8: bf7e80ef jal ra,c00048ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50078 if (string_get_digits(sp, &p, &fields[2])) - c001bb2c: 1890 addi a2,sp,112 - c001bb2e: 106c addi a1,sp,44 - c001bb30: 8522 mv a0,s0 - c001bb32: e0de80ef jal ra,c000493e - c001bb36: b73d j c001ba64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50082 + c001bcfc: 1890 addi a2,sp,112 + c001bcfe: 106c addi a1,sp,44 + c001bd00: 8522 mv a0,s0 + c001bd02: c3de80ef jal ra,c000493e + c001bd06: b73d j c001bc34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50090 if (p >= sp->len) - c001bb38: 5932 lw s2,44(sp) - c001bb3a: 8fe5 and a5,a5,s1 - c001bb3c: 2781 sext.w a5,a5 - c001bb3e: d6f95fe3 bge s2,a5,c001b8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50084 + c001bd08: 5932 lw s2,44(sp) + c001bd0a: 8fe5 and a5,a5,s1 + c001bd0c: 2781 sext.w a5,a5 + c001bd0e: d6f95fe3 bge s2,a5,c001ba8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50092 if (string_get(sp, p) != ':') - c001bb42: 85ca mv a1,s2 - c001bb44: 8522 mv a0,s0 - c001bb46: e20e80ef jal ra,c0004166 - c001bb4a: d76519e3 bne a0,s6,c001b8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50086 + c001bd12: 85ca mv a1,s2 + c001bd14: 8522 mv a0,s0 + c001bd16: c50e80ef jal ra,c0004166 + c001bd1a: d76519e3 bne a0,s6,c001ba8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50094 p++; - c001bb4e: 2905 addiw s2,s2,1 - c001bb50: d64a sw s2,44(sp) - c001bb52: 0b85 addi s7,s7,1 - c001bb54: 0c21 addi s8,s8,8 - c001bb56: b789 j c001ba98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50096 (discriminator 2) + c001bd1e: 2905 addiw s2,s2,1 + c001bd20: d64a sw s2,44(sp) + c001bd22: 0b85 addi s7,s7,1 + c001bd24: 0c21 addi s8,s8,8 + c001bd26: b789 j c001bc68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50104 (discriminator 2) for (tz = 0; p < sp->len; p++) { - c001bb58: d63e sw a5,44(sp) - c001bb5a: b785 j c001baba + c001bd28: d63e sw a5,44(sp) + c001bd2a: b785 j c001bc8a /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001bb5c: e8be sd a5,80(sp) - c001bb5e: 0007871b sext.w a4,a5 + c001bd2c: e8be sd a5,80(sp) + c001bd2e: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001bb62: 491d li s2,7 - c001bb64: b561 j c001b9ec + c001bd32: 491d li s2,7 + c001bd34: b561 j c001bbbc -00000000c001bb66 : +00000000c001bd36 : js_symbol_for(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46853 str = JS_ToString(ctx, argv[0]); - c001bb66: 630c ld a1,0(a4) - c001bb68: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46842 -{ - c001bb6a: 7139 addi sp,sp,-64 - c001bb6c: f822 sd s0,48(sp) - c001bb6e: fc06 sd ra,56(sp) - c001bb70: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46845 + c001bd36: 630c ld a1,0(a4) + c001bd38: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46850 +{ + c001bd3a: 7139 addi sp,sp,-64 + c001bd3c: f822 sd s0,48(sp) + c001bd3e: fc06 sd ra,56(sp) + c001bd40: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46853 str = JS_ToString(ctx, argv[0]); - c001bb72: c65fe0ef jal ra,c001a7d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46846 + c001bd42: c65fe0ef jal ra,c001a9a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46854 if (JS_IsException(str)) - c001bb76: 2581 sext.w a1,a1 - c001bb78: 4799 li a5,6 - c001bb7a: 00f58a63 beq a1,a5,c001bb8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46848 + c001bd46: 2581 sext.w a1,a1 + c001bd48: 4799 li a5,6 + c001bd4a: 00f58a63 beq a1,a5,c001bd5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46856 return JS_NewSymbol(ctx, JS_VALUE_GET_STRING(str), JS_ATOM_TYPE_GLOBAL_SYMBOL); - c001bb7e: 85aa mv a1,a0 - c001bb80: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46849 + c001bd4e: 85aa mv a1,a0 + c001bd50: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46857 } - c001bb82: 7442 ld s0,48(sp) - c001bb84: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46848 + c001bd52: 7442 ld s0,48(sp) + c001bd54: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46856 return JS_NewSymbol(ctx, JS_VALUE_GET_STRING(str), JS_ATOM_TYPE_GLOBAL_SYMBOL); - c001bb86: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46849 + c001bd56: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46857 } - c001bb88: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46848 + c001bd58: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46856 return JS_NewSymbol(ctx, JS_VALUE_GET_STRING(str), JS_ATOM_TYPE_GLOBAL_SYMBOL); - c001bb8a: f4bfc06f j c0018ad4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46849 (discriminator 1) + c001bd5a: f4bfc06f j c0018ca4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46857 (discriminator 1) } - c001bb8e: 70e2 ld ra,56(sp) - c001bb90: 7442 ld s0,48(sp) - c001bb92: 4501 li a0,0 - c001bb94: 4599 li a1,6 - c001bb96: 6121 addi sp,sp,64 - c001bb98: 8082 ret + c001bd5e: 70e2 ld ra,56(sp) + c001bd60: 7442 ld s0,48(sp) + c001bd62: 4501 li a0,0 + c001bd64: 4599 li a1,6 + c001bd66: 6121 addi sp,sp,64 + c001bd68: 8082 ret -00000000c001bb9a : +00000000c001bd6a : js_symbol_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46766 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46774 if (!JS_IsUndefined(new_target)) - c001bb9a: 0006079b sext.w a5,a2 - c001bb9e: 460d li a2,3 - c001bba0: 00c78863 beq a5,a2,c001bbb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46767 + c001bd6a: 0006079b sext.w a5,a2 + c001bd6e: 460d li a2,3 + c001bd70: 00c78863 beq a5,a2,c001bd80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46775 return JS_ThrowTypeError(ctx, "not a constructor"); - c001bba4: 00042597 auipc a1,0x42 - c001bba8: 02458593 addi a1,a1,36 # c005dbc8 - c001bbac: 84bf706f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46762 -{ - c001bbb0: 7139 addi sp,sp,-64 - c001bbb2: f822 sd s0,48(sp) - c001bbb4: fc06 sd ra,56(sp) - c001bbb6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46768 + c001bd74: 00042597 auipc a1,0x42 + c001bd78: 08458593 addi a1,a1,132 # c005ddf8 + c001bd7c: f68f706f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46770 +{ + c001bd80: 7139 addi sp,sp,-64 + c001bd82: f822 sd s0,48(sp) + c001bd84: fc06 sd ra,56(sp) + c001bd86: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46776 if (argc == 0 || JS_IsUndefined(argv[0])) { - c001bbb8: ca8d beqz a3,c001bbea + c001bd88: ca8d beqz a3,c001bdba JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001bbba: 6710 ld a2,8(a4) + c001bd8a: 6710 ld a2,8(a4) js_symbol_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46777 p = NULL; - c001bbbc: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46768 + c001bd8c: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46776 if (argc == 0 || JS_IsUndefined(argv[0])) { - c001bbbe: 0006069b sext.w a3,a2 - c001bbc2: 02f68563 beq a3,a5,c001bbec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46771 + c001bd8e: 0006069b sext.w a3,a2 + c001bd92: 02f68563 beq a3,a5,c001bdbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46779 str = JS_ToString(ctx, argv[0]); - c001bbc6: 630c ld a1,0(a4) - c001bbc8: c0ffe0ef jal ra,c001a7d6 - c001bbcc: 87ae mv a5,a1 - c001bbce: ec2e sd a1,24(sp) - c001bbd0: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46772 + c001bd96: 630c ld a1,0(a4) + c001bd98: c0ffe0ef jal ra,c001a9a6 + c001bd9c: 87ae mv a5,a1 + c001bd9e: ec2e sd a1,24(sp) + c001bda0: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46780 if (JS_IsException(str)) - c001bbd2: 2781 sext.w a5,a5 - c001bbd4: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46771 + c001bda2: 2781 sext.w a5,a5 + c001bda4: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46779 str = JS_ToString(ctx, argv[0]); - c001bbd6: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46772 + c001bda6: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46780 if (JS_IsException(str)) - c001bbd8: 00e79a63 bne a5,a4,c001bbec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46773 + c001bda8: 00e79a63 bne a5,a4,c001bdbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46781 return JS_EXCEPTION; - c001bbdc: f002 sd zero,32(sp) - c001bbde: 4599 li a1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46777 + c001bdac: f002 sd zero,32(sp) + c001bdae: 4599 li a1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46785 } - c001bbe0: 70e2 ld ra,56(sp) - c001bbe2: 7442 ld s0,48(sp) - c001bbe4: 7502 ld a0,32(sp) - c001bbe6: 6121 addi sp,sp,64 - c001bbe8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46769 + c001bdb0: 70e2 ld ra,56(sp) + c001bdb2: 7442 ld s0,48(sp) + c001bdb4: 7502 ld a0,32(sp) + c001bdb6: 6121 addi sp,sp,64 + c001bdb8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46777 p = NULL; - c001bbea: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46776 + c001bdba: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46784 return JS_NewSymbol(ctx, p, JS_ATOM_TYPE_SYMBOL); - c001bbec: 460d li a2,3 - c001bbee: 8522 mv a0,s0 - c001bbf0: ee5fc0ef jal ra,c0018ad4 - c001bbf4: f02a sd a0,32(sp) - c001bbf6: b7ed j c001bbe0 + c001bdbc: 460d li a2,3 + c001bdbe: 8522 mv a0,s0 + c001bdc0: ee5fc0ef jal ra,c0018ca4 + c001bdc4: f02a sd a0,32(sp) + c001bdc6: b7ed j c001bdb0 -00000000c001bbf8 : +00000000c001bdc8 : js_string_localeCompare(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42734 { - c001bbf8: 7175 addi sp,sp,-144 - c001bbfa: e122 sd s0,128(sp) - c001bbfc: fca6 sd s1,120(sp) - c001bbfe: f0d2 sd s4,96(sp) - c001bc00: e506 sd ra,136(sp) - c001bc02: f8ca sd s2,112(sp) - c001bc04: f4ce sd s3,104(sp) - c001bc06: 842a mv s0,a0 - c001bc08: e02e sd a1,0(sp) - c001bc0a: e432 sd a2,8(sp) - c001bc0c: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42731 + c001bdc8: 7175 addi sp,sp,-144 + c001bdca: e122 sd s0,128(sp) + c001bdcc: fca6 sd s1,120(sp) + c001bdce: f0d2 sd s4,96(sp) + c001bdd0: e506 sd ra,136(sp) + c001bdd2: f8ca sd s2,112(sp) + c001bdd4: f4ce sd s3,104(sp) + c001bdd6: 842a mv s0,a0 + c001bdd8: e02e sd a1,0(sp) + c001bdda: e432 sd a2,8(sp) + c001bddc: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42739 a = JS_ToStringCheckObject(ctx, this_val); - c001bc0e: a9eff0ef jal ra,c001aeac - c001bc12: f42e sd a1,40(sp) - c001bc14: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42732 + c001bdde: a9eff0ef jal ra,c001b07c + c001bde2: f42e sd a1,40(sp) + c001bde4: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42740 if (JS_IsException(a)) - c001bc16: 2581 sext.w a1,a1 - c001bc18: 4a19 li s4,6 - c001bc1a: 01459e63 bne a1,s4,c001bc36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42733 + c001bde6: 2581 sext.w a1,a1 + c001bde8: 4a19 li s4,6 + c001bdea: 01459e63 bne a1,s4,c001be06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42741 return JS_EXCEPTION; - c001bc1e: e082 sd zero,64(sp) - c001bc20: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42756 (discriminator 1) -} - c001bc22: 60aa ld ra,136(sp) - c001bc24: 640a ld s0,128(sp) - c001bc26: 6506 ld a0,64(sp) - c001bc28: 65a6 ld a1,72(sp) - c001bc2a: 74e6 ld s1,120(sp) - c001bc2c: 7946 ld s2,112(sp) - c001bc2e: 79a6 ld s3,104(sp) - c001bc30: 7a06 ld s4,96(sp) - c001bc32: 6149 addi sp,sp,144 - c001bc34: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42734 + c001bdee: e082 sd zero,64(sp) + c001bdf0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42764 (discriminator 1) +} + c001bdf2: 60aa ld ra,136(sp) + c001bdf4: 640a ld s0,128(sp) + c001bdf6: 6506 ld a0,64(sp) + c001bdf8: 65a6 ld a1,72(sp) + c001bdfa: 74e6 ld s1,120(sp) + c001bdfc: 7946 ld s2,112(sp) + c001bdfe: 79a6 ld s3,104(sp) + c001be00: 7a06 ld s4,96(sp) + c001be02: 6149 addi sp,sp,144 + c001be04: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42742 b = JS_ToString(ctx, argv[0]); - c001bc36: 608c ld a1,0(s1) - c001bc38: 6490 ld a2,8(s1) - c001bc3a: 8522 mv a0,s0 - c001bc3c: b9bfe0ef jal ra,c001a7d6 - c001bc40: f82a sd a0,48(sp) - c001bc42: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42735 + c001be06: 608c ld a1,0(s1) + c001be08: 6490 ld a2,8(s1) + c001be0a: 8522 mv a0,s0 + c001be0c: b9bfe0ef jal ra,c001a9a6 + c001be10: f82a sd a0,48(sp) + c001be12: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42743 if (JS_IsException(b)) { - c001bc44: 0005849b sext.w s1,a1 - c001bc48: 01449a63 bne s1,s4,c001bc5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42736 + c001be14: 0005849b sext.w s1,a1 + c001be18: 01449a63 bne s1,s4,c001be2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42744 JS_FreeValue(ctx, a); - c001bc4c: 7582 ld a1,32(sp) - c001bc4e: 7622 ld a2,40(sp) - c001bc50: 8522 mv a0,s0 - c001bc52: ee7eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42737 + c001be1c: 7582 ld a1,32(sp) + c001be1e: 7622 ld a2,40(sp) + c001be20: 8522 mv a0,s0 + c001be22: e05eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42745 return JS_EXCEPTION; - c001bc56: e082 sd zero,64(sp) - c001bc58: e4a6 sd s1,72(sp) - c001bc5a: b7e1 j c001bc22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42739 + c001be26: e082 sd zero,64(sp) + c001be28: e4a6 sd s1,72(sp) + c001be2a: b7e1 j c001bdf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42747 a_len = js_string_normalize1(ctx, &a_buf, a, UNICODE_NFC); - c001bc5c: 7602 ld a2,32(sp) - c001bc5e: 76a2 ld a3,40(sp) - c001bc60: 080c addi a1,sp,16 - c001bc62: 4701 li a4,0 - c001bc64: 8522 mv a0,s0 - c001bc66: 9a3ff0ef jal ra,c001b608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42740 + c001be2c: 7602 ld a2,32(sp) + c001be2e: 76a2 ld a3,40(sp) + c001be30: 080c addi a1,sp,16 + c001be32: 4701 li a4,0 + c001be34: 8522 mv a0,s0 + c001be36: 9a3ff0ef jal ra,c001b7d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42748 JS_FreeValue(ctx, a); - c001bc6a: 7582 ld a1,32(sp) - c001bc6c: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42739 + c001be3a: 7582 ld a1,32(sp) + c001be3c: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42747 a_len = js_string_normalize1(ctx, &a_buf, a, UNICODE_NFC); - c001bc6e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42740 + c001be3e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42748 JS_FreeValue(ctx, a); - c001bc70: 8522 mv a0,s0 - c001bc72: ec7eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42741 + c001be40: 8522 mv a0,s0 + c001be42: de5eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42749 if (a_len < 0) { - c001bc76: 0009da63 bgez s3,c001bc8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42742 - JS_FreeValue(ctx, b); - c001bc7a: 75c2 ld a1,48(sp) - c001bc7c: 7662 ld a2,56(sp) - c001bc7e: 8522 mv a0,s0 - c001bc80: eb9eb0ef jal ra,c0007b38 + c001be46: 0009da63 bgez s3,c001be5a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42750 + JS_FreeValue(ctx, b); + c001be4a: 75c2 ld a1,48(sp) + c001be4c: 7662 ld a2,56(sp) + c001be4e: 8522 mv a0,s0 + c001be50: dd7eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42758 return JS_EXCEPTION; - c001bc84: e082 sd zero,64(sp) - c001bc86: e4d2 sd s4,72(sp) - c001bc88: bf69 j c001bc22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42746 + c001be54: e082 sd zero,64(sp) + c001be56: e4d2 sd s4,72(sp) + c001be58: bf69 j c001bdf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42754 b_len = js_string_normalize1(ctx, &b_buf, b, UNICODE_NFC); - c001bc8a: 7642 ld a2,48(sp) - c001bc8c: 76e2 ld a3,56(sp) - c001bc8e: 4701 li a4,0 - c001bc90: 082c addi a1,sp,24 - c001bc92: 8522 mv a0,s0 - c001bc94: 975ff0ef jal ra,c001b608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42747 + c001be5a: 7642 ld a2,48(sp) + c001be5c: 76e2 ld a3,56(sp) + c001be5e: 4701 li a4,0 + c001be60: 082c addi a1,sp,24 + c001be62: 8522 mv a0,s0 + c001be64: 975ff0ef jal ra,c001b7d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42755 JS_FreeValue(ctx, b); - c001bc98: 75c2 ld a1,48(sp) - c001bc9a: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42746 + c001be68: 75c2 ld a1,48(sp) + c001be6a: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42754 b_len = js_string_normalize1(ctx, &b_buf, b, UNICODE_NFC); - c001bc9c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42747 + c001be6c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42755 JS_FreeValue(ctx, b); - c001bc9e: 8522 mv a0,s0 - c001bca0: e99eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42748 + c001be6e: 8522 mv a0,s0 + c001be70: db7eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42756 if (b_len < 0) { - c001bca4: 65c2 ld a1,16(sp) - c001bca6: 00095663 bgez s2,c001bcb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42749 + c001be74: 65c2 ld a1,16(sp) + c001be76: 00095663 bgez s2,c001be82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42757 js_free(ctx, a_buf); - c001bcaa: 8522 mv a0,s0 - c001bcac: 98eeb0ef jal ra,c0006e3a - c001bcb0: bfd1 j c001bc84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42752 + c001be7a: 8522 mv a0,s0 + c001be7c: 8aceb0ef jal ra,c0006f28 + c001be80: bfd1 j c001be54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42760 cmp = js_UTF32_compare(a_buf, a_len, b_buf, b_len); - c001bcb2: 6662 ld a2,24(sp) + c001be82: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c001bcb4: 0009879b sext.w a5,s3 - c001bcb8: 01395463 bge s2,s3,c001bcc0 - c001bcbc: 0009079b sext.w a5,s2 + c001be84: 0009879b sext.w a5,s3 + c001be88: 01395463 bge s2,s3,c001be90 + c001be8c: 0009079b sext.w a5,s2 js_UTF32_compare(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42717 for(i = 0; i < len; i++) { - c001bcc0: 4701 li a4,0 - c001bcc2: 0007069b sext.w a3,a4 - c001bcc6: 00f6ca63 blt a3,a5,c001bcda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42716 + c001be90: 4701 li a4,0 + c001be92: 0007069b sext.w a3,a4 + c001be96: 00f6ca63 blt a3,a5,c001beaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42724 res = 0; - c001bcca: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42715 + c001be9a: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42723 if (buf1_len == buf2_len) - c001bccc: 03298163 beq s3,s2,c001bcee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42718 + c001be9c: 03298163 beq s3,s2,c001bebe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42726 res = -1; - c001bcd0: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42717 + c001bea0: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42725 else if (buf1_len < buf2_len) - c001bcd2: 0129ce63 blt s3,s2,c001bcee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42720 + c001bea2: 0129ce63 blt s3,s2,c001bebe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42728 res = 1; - c001bcd6: 4485 li s1,1 - c001bcd8: a819 j c001bcee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42711 + c001bea6: 4485 li s1,1 + c001bea8: a819 j c001bebe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42719 c = buf1[i] - buf2[i]; - c001bcda: 00271693 slli a3,a4,0x2 - c001bcde: 00d58533 add a0,a1,a3 - c001bce2: 96b2 add a3,a3,a2 - c001bce4: 4104 lw s1,0(a0) - c001bce6: 4294 lw a3,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42712 + c001beaa: 00271693 slli a3,a4,0x2 + c001beae: 00d58533 add a0,a1,a3 + c001beb2: 96b2 add a3,a3,a2 + c001beb4: 4104 lw s1,0(a0) + c001beb6: 4294 lw a3,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42720 if (c != 0) - c001bce8: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42711 + c001beb8: 0705 addi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42719 c = buf1[i] - buf2[i]; - c001bcea: 9c95 subw s1,s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42712 + c001beba: 9c95 subw s1,s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42720 if (c != 0) - c001bcec: d8f9 beqz s1,c001bcc2 + c001bebc: d8f9 beqz s1,c001be92 js_string_localeCompare(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42761 js_free(ctx, a_buf); - c001bcee: 8522 mv a0,s0 - c001bcf0: 94aeb0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42754 + c001bebe: 8522 mv a0,s0 + c001bec0: 868eb0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42762 js_free(ctx, b_buf); - c001bcf4: 65e2 ld a1,24(sp) - c001bcf6: 8522 mv a0,s0 - c001bcf8: 942eb0ef jal ra,c0006e3a + c001bec4: 65e2 ld a1,24(sp) + c001bec6: 8522 mv a0,s0 + c001bec8: 860eb0ef jal ra,c0006f28 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001bcfc: ca82 sw zero,84(sp) - c001bcfe: c8a6 sw s1,80(sp) - c001bd00: 67c6 ld a5,80(sp) - c001bd02: e482 sd zero,72(sp) - c001bd04: e0be sd a5,64(sp) - c001bd06: bf31 j c001bc22 - -00000000c001bd08 : + c001becc: ca82 sw zero,84(sp) + c001bece: c8a6 sw s1,80(sp) + c001bed0: 67c6 ld a5,80(sp) + c001bed2: e482 sd zero,72(sp) + c001bed4: e0be sd a5,64(sp) + c001bed6: bf31 j c001bdf2 + +00000000c001bed8 : js_global_unescape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49337 -{ - c001bd08: 7135 addi sp,sp,-160 - c001bd0a: e526 sd s1,136(sp) - c001bd0c: fcce sd s3,120(sp) - c001bd0e: ed06 sd ra,152(sp) - c001bd10: e922 sd s0,144(sp) - c001bd12: e14a sd s2,128(sp) - c001bd14: f8d2 sd s4,112(sp) - c001bd16: f4d6 sd s5,104(sp) - c001bd18: f0da sd s6,96(sp) - c001bd1a: ecde sd s7,88(sp) - c001bd1c: e02e sd a1,0(sp) - c001bd1e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49343 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49345 +{ + c001bed8: 7135 addi sp,sp,-160 + c001beda: e526 sd s1,136(sp) + c001bedc: fcce sd s3,120(sp) + c001bede: ed06 sd ra,152(sp) + c001bee0: e922 sd s0,144(sp) + c001bee2: e14a sd s2,128(sp) + c001bee4: f8d2 sd s4,112(sp) + c001bee6: f4d6 sd s5,104(sp) + c001bee8: f0da sd s6,96(sp) + c001beea: ecde sd s7,88(sp) + c001beec: e02e sd a1,0(sp) + c001beee: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49351 str = JS_ToString(ctx, argv[0]); - c001bd20: 630c ld a1,0(a4) - c001bd22: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49337 + c001bef0: 630c ld a1,0(a4) + c001bef2: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49345 { - c001bd24: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49343 + c001bef4: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49351 str = JS_ToString(ctx, argv[0]); - c001bd26: ab1fe0ef jal ra,c001a7d6 - c001bd2a: e82a sd a0,16(sp) - c001bd2c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49344 + c001bef6: ab1fe0ef jal ra,c001a9a6 + c001befa: e82a sd a0,16(sp) + c001befc: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49352 if (JS_IsException(str)) - c001bd2e: 0005871b sext.w a4,a1 - c001bd32: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49343 + c001befe: 0005871b sext.w a4,a1 + c001bf02: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49351 str = JS_ToString(ctx, argv[0]); - c001bd34: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49344 + c001bf04: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49352 if (JS_IsException(str)) - c001bd36: 02f71163 bne a4,a5,c001bd58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49345 + c001bf06: 02f71163 bne a4,a5,c001bf28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49353 return str; - c001bd3a: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49368 + c001bf0a: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49376 } - c001bd3c: 60ea ld ra,152(sp) - c001bd3e: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49367 + c001bf0c: 60ea ld ra,152(sp) + c001bf0e: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49375 return string_buffer_end(b); - c001bd40: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49368 -} - c001bd42: 7502 ld a0,32(sp) - c001bd44: 75a2 ld a1,40(sp) - c001bd46: 64aa ld s1,136(sp) - c001bd48: 690a ld s2,128(sp) - c001bd4a: 79e6 ld s3,120(sp) - c001bd4c: 7a46 ld s4,112(sp) - c001bd4e: 7aa6 ld s5,104(sp) - c001bd50: 7b06 ld s6,96(sp) - c001bd52: 6be6 ld s7,88(sp) - c001bd54: 610d addi sp,sp,160 - c001bd56: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49347 + c001bf10: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49376 +} + c001bf12: 7502 ld a0,32(sp) + c001bf14: 75a2 ld a1,40(sp) + c001bf16: 64aa ld s1,136(sp) + c001bf18: 690a ld s2,128(sp) + c001bf1a: 79e6 ld s3,120(sp) + c001bf1c: 7a46 ld s4,112(sp) + c001bf1e: 7aa6 ld s5,104(sp) + c001bf20: 7b06 ld s6,96(sp) + c001bf22: 6be6 ld s7,88(sp) + c001bf24: 610d addi sp,sp,160 + c001bf26: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49355 string_buffer_init(ctx, b, 0); - c001bd58: 4601 li a2,0 - c001bd5a: 180c addi a1,sp,48 - c001bd5c: 854e mv a0,s3 - c001bd5e: e71fc0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49349 + c001bf28: 4601 li a2,0 + c001bf2a: 180c addi a1,sp,48 + c001bf2c: 854e mv a0,s3 + c001bf2e: e71fc0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49357 for (i = 0, len = p->len; i < len; i++) { - c001bd62: 0044a903 lw s2,4(s1) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c001bd66: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49351 + c001bf32: 0044a903 lw s2,4(s1) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c001bf36: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49359 if (c == '%') { - c001bd68: 02500b13 li s6,37 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49349 + c001bf38: 02500b13 li s6,37 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49357 for (i = 0, len = p->len; i < len; i++) { - c001bd6c: 1906 slli s2,s2,0x21 - c001bd6e: 02195913 srli s2,s2,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49353 + c001bf3c: 1906 slli s2,s2,0x21 + c001bf3e: 02195913 srli s2,s2,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49361 && string_get(p, i + 1) == 'u' - c001bd72: 07500b93 li s7,117 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49349 (discriminator 1) + c001bf42: 07500b93 li s7,117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49357 (discriminator 1) for (i = 0, len = p->len; i < len; i++) { - c001bd76: 01244c63 blt s0,s2,c001bd8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49366 + c001bf46: 01244c63 blt s0,s2,c001bf5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49374 JS_FreeValue(ctx, str); - c001bd7a: 65c2 ld a1,16(sp) - c001bd7c: 6662 ld a2,24(sp) - c001bd7e: 854e mv a0,s3 - c001bd80: db9eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49367 + c001bf4a: 65c2 ld a1,16(sp) + c001bf4c: 6662 ld a2,24(sp) + c001bf4e: 854e mv a0,s3 + c001bf50: cd7eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49375 return string_buffer_end(b); - c001bd84: 1808 addi a0,sp,48 - c001bd86: f85fd0ef jal ra,c0019d0a - c001bd8a: f02a sd a0,32(sp) - c001bd8c: bf45 j c001bd3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49350 + c001bf54: 1808 addi a0,sp,48 + c001bf56: f85fd0ef jal ra,c0019eda + c001bf5a: f02a sd a0,32(sp) + c001bf5c: bf45 j c001bf0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49358 c = string_get(p, i); - c001bd8e: 85a2 mv a1,s0 - c001bd90: 8526 mv a0,s1 - c001bd92: bd4e80ef jal ra,c0004166 - c001bd96: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49351 + c001bf5e: 85a2 mv a1,s0 + c001bf60: 8526 mv a0,s1 + c001bf62: a04e80ef jal ra,c0004166 + c001bf66: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49359 if (c == '%') { - c001bd98: 03651863 bne a0,s6,c001bdc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49352 + c001bf68: 03651863 bne a0,s6,c001bf98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49360 if (i + 6 <= len - c001bd9c: 0064079b addiw a5,s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49353 + c001bf6c: 0064079b addiw a5,s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49361 && string_get(p, i + 1) == 'u' - c001bda0: 00140a9b addiw s5,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49352 + c001bf70: 00140a9b addiw s5,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49360 if (i + 6 <= len - c001bda4: 02f94963 blt s2,a5,c001bdd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49353 + c001bf74: 02f94963 blt s2,a5,c001bfa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49361 && string_get(p, i + 1) == 'u' - c001bda8: 85d6 mv a1,s5 - c001bdaa: 8526 mv a0,s1 - c001bdac: bbae80ef jal ra,c0004166 - c001bdb0: 03751363 bne a0,s7,c001bdd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49354 + c001bf78: 85d6 mv a1,s5 + c001bf7a: 8526 mv a0,s1 + c001bf7c: 9eae80ef jal ra,c0004166 + c001bf80: 03751363 bne a0,s7,c001bfa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49362 && (n = string_get_hex(p, i + 2, 4)) >= 0) { - c001bdb4: 4611 li a2,4 - c001bdb6: 0024059b addiw a1,s0,2 - c001bdba: 8526 mv a0,s1 - c001bdbc: a8fe80ef jal ra,c000484a - c001bdc0: 00054b63 bltz a0,c001bdd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49356 + c001bf84: 4611 li a2,4 + c001bf86: 0024059b addiw a1,s0,2 + c001bf8a: 8526 mv a0,s1 + c001bf8c: 8bfe80ef jal ra,c000484a + c001bf90: 00054b63 bltz a0,c001bfa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49364 i += 6 - 1; - c001bdc4: 2415 addiw s0,s0,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49361 + c001bf94: 2415 addiw s0,s0,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49369 i += 3 - 1; - c001bdc6: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49364 (discriminator 2) + c001bf96: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49372 (discriminator 2) string_buffer_putc16(b, c); - c001bdc8: 000a059b sext.w a1,s4 - c001bdcc: 1808 addi a0,sp,48 - c001bdce: beafd0ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49349 (discriminator 2) + c001bf98: 000a059b sext.w a1,s4 + c001bf9c: 1808 addi a0,sp,48 + c001bf9e: beafd0ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49357 (discriminator 2) for (i = 0, len = p->len; i < len; i++) { - c001bdd2: 2405 addiw s0,s0,1 - c001bdd4: b74d j c001bd76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49358 + c001bfa2: 2405 addiw s0,s0,1 + c001bfa4: b74d j c001bf46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49366 if (i + 3 <= len - c001bdd6: 0034079b addiw a5,s0,3 - c001bdda: fef947e3 blt s2,a5,c001bdc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49359 + c001bfa6: 0034079b addiw a5,s0,3 + c001bfaa: fef947e3 blt s2,a5,c001bf98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49367 && (n = string_get_hex(p, i + 1, 2)) >= 0) { - c001bdde: 4609 li a2,2 - c001bde0: 85d6 mv a1,s5 - c001bde2: 8526 mv a0,s1 - c001bde4: a67e80ef jal ra,c000484a - c001bde8: fe0540e3 bltz a0,c001bdc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49361 + c001bfae: 4609 li a2,2 + c001bfb0: 85d6 mv a1,s5 + c001bfb2: 8526 mv a0,s1 + c001bfb4: 897e80ef jal ra,c000484a + c001bfb8: fe0540e3 bltz a0,c001bf98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49369 i += 3 - 1; - c001bdec: 2409 addiw s0,s0,2 - c001bdee: bfe1 j c001bdc6 + c001bfbc: 2409 addiw s0,s0,2 + c001bfbe: bfe1 j c001bf96 -00000000c001bdf0 : +00000000c001bfc0 : js_global_escape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49311 -{ - c001bdf0: 7135 addi sp,sp,-160 - c001bdf2: e922 sd s0,144(sp) - c001bdf4: e14a sd s2,128(sp) - c001bdf6: ed06 sd ra,152(sp) - c001bdf8: e526 sd s1,136(sp) - c001bdfa: fcce sd s3,120(sp) - c001bdfc: f8d2 sd s4,112(sp) - c001bdfe: f4d6 sd s5,104(sp) - c001be00: e82e sd a1,16(sp) - c001be02: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49319 +{ + c001bfc0: 7135 addi sp,sp,-160 + c001bfc2: e922 sd s0,144(sp) + c001bfc4: e14a sd s2,128(sp) + c001bfc6: ed06 sd ra,152(sp) + c001bfc8: e526 sd s1,136(sp) + c001bfca: fcce sd s3,120(sp) + c001bfcc: f8d2 sd s4,112(sp) + c001bfce: f4d6 sd s5,104(sp) + c001bfd0: e82e sd a1,16(sp) + c001bfd2: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49325 str = JS_ToString(ctx, argv[0]); - c001be04: 630c ld a1,0(a4) - c001be06: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49311 + c001bfd4: 630c ld a1,0(a4) + c001bfd6: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49319 { - c001be08: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49317 + c001bfd8: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49325 str = JS_ToString(ctx, argv[0]); - c001be0a: 9cdfe0ef jal ra,c001a7d6 - c001be0e: f02a sd a0,32(sp) - c001be10: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49318 + c001bfda: 9cdfe0ef jal ra,c001a9a6 + c001bfde: f02a sd a0,32(sp) + c001bfe0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49326 if (JS_IsException(str)) - c001be12: 0005871b sext.w a4,a1 - c001be16: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49317 + c001bfe2: 0005871b sext.w a4,a1 + c001bfe6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49325 str = JS_ToString(ctx, argv[0]); - c001be18: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49318 + c001bfe8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49326 if (JS_IsException(str)) - c001be1a: 00f71f63 bne a4,a5,c001be38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49319 + c001bfea: 00f71f63 bne a4,a5,c001c008 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49327 return str; - c001be1e: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49333 + c001bfee: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49341 } - c001be20: 60ea ld ra,152(sp) - c001be22: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49332 + c001bff0: 60ea ld ra,152(sp) + c001bff2: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49340 return string_buffer_end(b); - c001be24: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49333 -} - c001be26: 7542 ld a0,48(sp) - c001be28: 75e2 ld a1,56(sp) - c001be2a: 64aa ld s1,136(sp) - c001be2c: 690a ld s2,128(sp) - c001be2e: 79e6 ld s3,120(sp) - c001be30: 7a46 ld s4,112(sp) - c001be32: 7aa6 ld s5,104(sp) - c001be34: 610d addi sp,sp,160 - c001be36: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49322 + c001bff4: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49341 +} + c001bff6: 7542 ld a0,48(sp) + c001bff8: 75e2 ld a1,56(sp) + c001bffa: 64aa ld s1,136(sp) + c001bffc: 690a ld s2,128(sp) + c001bffe: 79e6 ld s3,120(sp) + c001c000: 7a46 ld s4,112(sp) + c001c002: 7aa6 ld s5,104(sp) + c001c004: 610d addi sp,sp,160 + c001c006: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49330 string_buffer_init(ctx, b, p->len); - c001be38: 4150 lw a2,4(a0) - c001be3a: 800004b7 lui s1,0x80000 - c001be3e: fff4c493 not s1,s1 - c001be42: 8e65 and a2,a2,s1 - c001be44: 008c addi a1,sp,64 - c001be46: 854a mv a0,s2 - c001be48: d87fc0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49323 + c001c008: 4150 lw a2,4(a0) + c001c00a: 800004b7 lui s1,0x80000 + c001c00e: fff4c493 not s1,s1 + c001c012: 8e65 and a2,a2,s1 + c001c014: 008c addi a1,sp,64 + c001c016: 854a mv a0,s2 + c001c018: d87fc0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49331 for (i = 0, len = p->len; i < len; i++) { - c001be4c: 405c lw a5,4(s0) - c001be4e: 4981 li s3,0 + c001c01c: 405c lw a5,4(s0) + c001c01e: 4981 li s3,0 isUnescaped(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49215 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49223 return c < 0x100 && - c001be50: 0ff00a13 li s4,255 + c001c020: 0ff00a13 li s4,255 js_global_escape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49331 for (i = 0, len = p->len; i < len; i++) { - c001be54: 8cfd and s1,s1,a5 + c001c024: 8cfd and s1,s1,a5 isUnescaped(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49224 memchr(unescaped_chars, c, sizeof(unescaped_chars) - 1); - c001be56: 0004ba97 auipc s5,0x4b - c001be5a: 0f2a8a93 addi s5,s5,242 # c0066f48 + c001c026: 0004ba97 auipc s5,0x4b + c001c02a: 182a8a93 addi s5,s5,386 # c00671a8 js_global_escape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49323 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49331 (discriminator 1) for (i = 0, len = p->len; i < len; i++) { - c001be5e: 0099cc63 blt s3,s1,c001be76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49331 + c001c02e: 0099cc63 blt s3,s1,c001c046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49339 JS_FreeValue(ctx, str); - c001be62: 7582 ld a1,32(sp) - c001be64: 7622 ld a2,40(sp) - c001be66: 854a mv a0,s2 - c001be68: cd1eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49332 + c001c032: 7582 ld a1,32(sp) + c001c034: 7622 ld a2,40(sp) + c001c036: 854a mv a0,s2 + c001c038: befeb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49340 return string_buffer_end(b); - c001be6c: 0088 addi a0,sp,64 - c001be6e: e9dfd0ef jal ra,c0019d0a - c001be72: f82a sd a0,48(sp) - c001be74: b775 j c001be20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49324 + c001c03c: 0088 addi a0,sp,64 + c001c03e: e9dfd0ef jal ra,c0019eda + c001c042: f82a sd a0,48(sp) + c001c044: b775 j c001bff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49332 c = string_get(p, i); - c001be76: 85ce mv a1,s3 - c001be78: 8522 mv a0,s0 - c001be7a: aece80ef jal ra,c0004166 - c001be7e: 85aa mv a1,a0 + c001c046: 85ce mv a1,s3 + c001c048: 8522 mv a0,s0 + c001c04a: 91ce80ef jal ra,c0004166 + c001c04e: 85aa mv a1,a0 isUnescaped(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49215 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49223 return c < 0x100 && - c001be80: 02aa4063 blt s4,a0,c001bea0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49216 + c001c050: 02aa4063 blt s4,a0,c001c070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49224 memchr(unescaped_chars, c, sizeof(unescaped_chars) - 1); - c001be84: e42a sd a0,8(sp) - c001be86: 04500613 li a2,69 - c001be8a: 8556 mv a0,s5 - c001be8c: 15d3a0ef jal ra,c00567e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49215 + c001c054: e42a sd a0,8(sp) + c001c056: 04500613 li a2,69 + c001c05a: 8556 mv a0,s5 + c001c05c: 15d3a0ef jal ra,c00569b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49223 return c < 0x100 && - c001be90: 65a2 ld a1,8(sp) - c001be92: c519 beqz a0,c001bea0 + c001c060: 65a2 ld a1,8(sp) + c001c062: c519 beqz a0,c001c070 js_global_escape(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49334 string_buffer_putc16(b, c); - c001be94: 2581 sext.w a1,a1 - c001be96: 0088 addi a0,sp,64 - c001be98: b20fd0ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49323 (discriminator 2) + c001c064: 2581 sext.w a1,a1 + c001c066: 0088 addi a0,sp,64 + c001c068: b20fd0ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49331 (discriminator 2) for (i = 0, len = p->len; i < len; i++) { - c001be9c: 2985 addiw s3,s3,1 - c001be9e: b7c1 j c001be5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49328 + c001c06c: 2985 addiw s3,s3,1 + c001c06e: b7c1 j c001c02e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49336 encodeURI_hex(b, c); - c001bea0: 0088 addi a0,sp,64 - c001bea2: 9ccfd0ef jal ra,c001906e - c001bea6: bfdd j c001be9c + c001c070: 0088 addi a0,sp,64 + c001c072: 9ccfd0ef jal ra,c001923e + c001c076: bfdd j c001c06c -00000000c001bea8 : +00000000c001c078 : JS_ToCStringLen2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4047 { - c001bea8: 7175 addi sp,sp,-144 - c001beaa: f0d2 sd s4,96(sp) - c001beac: ecd6 sd s5,88(sp) - c001beae: e4de sd s7,72(sp) - c001beb0: e506 sd ra,136(sp) - c001beb2: 8bba mv s7,a4 - c001beb4: e122 sd s0,128(sp) - c001beb6: fca6 sd s1,120(sp) - c001beb8: f8ca sd s2,112(sp) - c001beba: f4ce sd s3,104(sp) - c001bebc: e8da sd s6,80(sp) - c001bebe: e0e2 sd s8,64(sp) - c001bec0: fc66 sd s9,56(sp) - c001bec2: f86a sd s10,48(sp) - c001bec4: f46e sd s11,40(sp) - c001bec6: e032 sd a2,0(sp) - c001bec8: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4045 + c001c078: 7175 addi sp,sp,-144 + c001c07a: f0d2 sd s4,96(sp) + c001c07c: ecd6 sd s5,88(sp) + c001c07e: e4de sd s7,72(sp) + c001c080: e506 sd ra,136(sp) + c001c082: 8bba mv s7,a4 + c001c084: e122 sd s0,128(sp) + c001c086: fca6 sd s1,120(sp) + c001c088: f8ca sd s2,112(sp) + c001c08a: f4ce sd s3,104(sp) + c001c08c: e8da sd s6,80(sp) + c001c08e: e0e2 sd s8,64(sp) + c001c090: fc66 sd s9,56(sp) + c001c092: f86a sd s10,48(sp) + c001c094: f46e sd s11,40(sp) + c001c096: e032 sd a2,0(sp) + c001c098: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4053 if (JS_VALUE_GET_TAG(val1) != JS_TAG_STRING) { - c001beca: 0006871b sext.w a4,a3 - c001bece: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4039 + c001c09a: 0006871b sext.w a4,a3 + c001c09e: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4047 { - c001bed0: 8aaa mv s5,a0 - c001bed2: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4045 + c001c0a0: 8aaa mv s5,a0 + c001c0a2: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4053 if (JS_VALUE_GET_TAG(val1) != JS_TAG_STRING) { - c001bed4: 02f70363 beq a4,a5,c001befa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4046 + c001c0a4: 02f70363 beq a4,a5,c001c0ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4054 val = JS_ToString(ctx, val1); - c001bed8: 85b2 mv a1,a2 - c001beda: 8636 mv a2,a3 - c001bedc: 8fbfe0ef jal ra,c001a7d6 - c001bee0: ec2e sd a1,24(sp) - c001bee2: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4047 + c001c0a8: 85b2 mv a1,a2 + c001c0aa: 8636 mv a2,a3 + c001c0ac: 8fbfe0ef jal ra,c001a9a6 + c001c0b0: ec2e sd a1,24(sp) + c001c0b2: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4055 if (JS_IsException(val)) - c001bee4: 2581 sext.w a1,a1 - c001bee6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4046 + c001c0b4: 2581 sext.w a1,a1 + c001c0b6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4054 val = JS_ToString(ctx, val1); - c001bee8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4047 + c001c0b8: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4055 if (JS_IsException(val)) - c001beea: 00f59f63 bne a1,a5,c001bf08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4132 + c001c0ba: 00f59f63 bne a1,a5,c001c0d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4140 return NULL; - c001beee: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4130 + c001c0be: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4138 if (plen) - c001bef0: 0a0a0463 beqz s4,c001bf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4131 + c001c0c0: 0a0a0463 beqz s4,c001c168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4139 *plen = 0; - c001bef4: 000a3023 sd zero,0(s4) - c001bef8: a045 j c001bf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4050 + c001c0c4: 000a3023 sd zero,0(s4) + c001c0c8: a045 j c001c168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4058 val = JS_DupValue(ctx, val1); - c001befa: 8532 mv a0,a2 - c001befc: 85b6 mv a1,a3 - c001befe: f70ea0ef jal ra,c000666e - c001bf02: 84aa mv s1,a0 - c001bf04: e82a sd a0,16(sp) - c001bf06: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4054 + c001c0ca: 8532 mv a0,a2 + c001c0cc: 85b6 mv a1,a3 + c001c0ce: e8eea0ef jal ra,c000675c + c001c0d2: 84aa mv s1,a0 + c001c0d4: e82a sd a0,16(sp) + c001c0d6: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4062 len = str->len; - c001bf08: 40dc lw a5,4(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4056 + c001c0d8: 40dc lw a5,4(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4064 const uint8_t *src = str->u.str8; - c001bf0a: 01048b13 addi s6,s1,16 # ffffffff80000010 <_ebss+0xfffffffebfefeeea> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4054 + c001c0da: 01048b13 addi s6,s1,16 # ffffffff80000010 <_ebss+0xfffffffebfefeeea> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4062 len = str->len; - c001bf0e: 02179993 slli s3,a5,0x21 - c001bf12: 0219d693 srli a3,s3,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4055 + c001c0de: 02179993 slli s3,a5,0x21 + c001c0e2: 0219d693 srli a3,s3,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4063 if (!str->is_wide_char) { - c001bf16: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4054 + c001c0e6: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4062 len = str->len; - c001bf18: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4055 + c001c0e8: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4063 if (!str->is_wide_char) { - c001bf1a: 0807df63 bgez a5,c001bfb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4092 + c001c0ea: 0807df63 bgez a5,c001c188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4100 str_new = js_alloc_string(ctx, len * 3, 0); - c001bf1e: 458d li a1,3 - c001bf20: 02d585bb mulw a1,a1,a3 - c001bf24: 4601 li a2,0 - c001bf26: 8556 mv a0,s5 - c001bf28: c49fc0ef jal ra,c0018b70 - c001bf2c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4093 + c001c0ee: 458d li a1,3 + c001c0f0: 02d585bb mulw a1,a1,a3 + c001c0f4: 4601 li a2,0 + c001c0f6: 8556 mv a0,s5 + c001c0f8: c49fc0ef jal ra,c0018d40 + c001c0fc: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4101 if (!str_new) - c001bf2e: d161 beqz a0,c001beee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4102 + c001c0fe: d161 beqz a0,c001c0be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4110 if (c >= 0xd800 && c < 0xdc00) { - c001bf30: 7ccd lui s9,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4105 + c001c100: 7ccd lui s9,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4113 if (c1 >= 0xdc00 && c1 < 0xe000) { - c001bf32: 7d49 lui s10,0xffff2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4108 + c001c102: 7d49 lui s10,0xffff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4116 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c001bf34: 00100db7 lui s11,0x100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4095 + c001c104: 00100db7 lui s11,0x100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4103 q = str_new->u.str8; - c001bf38: 01050413 addi s0,a0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4096 + c001c108: 01050413 addi s0,a0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4104 pos = 0; - c001bf3c: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4099 + c001c10c: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4107 if (c < 0x80) { - c001bf3e: 07f00813 li a6,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4102 + c001c10e: 07f00813 li a6,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4110 if (c >= 0xd800 && c < 0xdc00) { - c001bf42: 800c8c9b addiw s9,s9,-2048 - c001bf46: 3ff00613 li a2,1023 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4105 + c001c112: 800c8c9b addiw s9,s9,-2048 + c001c116: 3ff00613 li a2,1023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4113 if (c1 >= 0xdc00 && c1 < 0xe000) { - c001bf4a: 400d0d1b addiw s10,s10,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4108 + c001c11a: 400d0d1b addiw s10,s10,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4116 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c001bf4e: c00d8d93 addi s11,s11,-1024 # ffc00 <__clzdi2-0xbff00400> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4097 + c001c11e: c00d8d93 addi s11,s11,-1024 # ffc00 <__clzdi2-0xbff00400> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4105 while (pos < len) { - c001bf52: 09375763 bge a4,s3,c001bfe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4098 + c001c122: 09375763 bge a4,s3,c001c1b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4106 c = src[pos++]; - c001bf56: 00171793 slli a5,a4,0x1 - c001bf5a: 97da add a5,a5,s6 - c001bf5c: 0007d783 lhu a5,0(a5) - c001bf60: 00170c1b addiw s8,a4,1 - c001bf64: 0007859b sext.w a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4099 + c001c126: 00171793 slli a5,a4,0x1 + c001c12a: 97da add a5,a5,s6 + c001c12c: 0007d783 lhu a5,0(a5) + c001c130: 00170c1b addiw s8,a4,1 + c001c134: 0007859b sext.w a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4107 if (c < 0x80) { - c001bf68: 0ef84a63 blt a6,a5,c001c05c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4100 + c001c138: 0ef84a63 blt a6,a5,c001c22c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4108 *q++ = c; - c001bf6c: 00f40023 sb a5,0(s0) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c001bf70: 0405 addi s0,s0,1 - c001bf72: 8762 mv a4,s8 - c001bf74: bff9 j c001bf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4067 (discriminator 3) + c001c13c: 00f40023 sb a5,0(s0) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c001c140: 0405 addi s0,s0,1 + c001c142: 8762 mv a4,s8 + c001c144: bff9 j c001c122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4075 (discriminator 3) count += src[pos] >> 7; - c001bf76: 00f48733 add a4,s1,a5 - c001bf7a: 01074703 lbu a4,16(a4) - c001bf7e: 0785 addi a5,a5,1 - c001bf80: 0077571b srliw a4,a4,0x7 - c001bf84: 9db9 addw a1,a1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4066 (discriminator 1) + c001c146: 00f48733 add a4,s1,a5 + c001c14a: 01074703 lbu a4,16(a4) + c001c14e: 0785 addi a5,a5,1 + c001c150: 0077571b srliw a4,a4,0x7 + c001c154: 9db9 addw a1,a1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4074 (discriminator 1) for (pos = 0; pos < len; pos++) { - c001bf86: 0007871b sext.w a4,a5 - c001bf8a: ff3746e3 blt a4,s3,c001bf76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4069 + c001c156: 0007871b sext.w a4,a5 + c001c15a: ff3746e3 blt a4,s3,c001c146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4077 if (count == 0) { - c001bf8e: e985 bnez a1,c001bfbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4070 + c001c15e: e985 bnez a1,c001c18e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4078 if (plen) - c001bf90: 000a0463 beqz s4,c001bf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4071 + c001c160: 000a0463 beqz s4,c001c168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4079 *plen = len; - c001bf94: 00da3023 sd a3,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4133 -} - c001bf98: 60aa ld ra,136(sp) - c001bf9a: 640a ld s0,128(sp) - c001bf9c: 74e6 ld s1,120(sp) - c001bf9e: 7946 ld s2,112(sp) - c001bfa0: 79a6 ld s3,104(sp) - c001bfa2: 7a06 ld s4,96(sp) - c001bfa4: 6ae6 ld s5,88(sp) - c001bfa6: 6ba6 ld s7,72(sp) - c001bfa8: 6c06 ld s8,64(sp) - c001bfaa: 7ce2 ld s9,56(sp) - c001bfac: 7d42 ld s10,48(sp) - c001bfae: 7da2 ld s11,40(sp) - c001bfb0: 855a mv a0,s6 - c001bfb2: 6b46 ld s6,80(sp) - c001bfb4: 6149 addi sp,sp,144 - c001bfb6: 8082 ret - c001bfb8: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4065 + c001c164: 00da3023 sd a3,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4141 +} + c001c168: 60aa ld ra,136(sp) + c001c16a: 640a ld s0,128(sp) + c001c16c: 74e6 ld s1,120(sp) + c001c16e: 7946 ld s2,112(sp) + c001c170: 79a6 ld s3,104(sp) + c001c172: 7a06 ld s4,96(sp) + c001c174: 6ae6 ld s5,88(sp) + c001c176: 6ba6 ld s7,72(sp) + c001c178: 6c06 ld s8,64(sp) + c001c17a: 7ce2 ld s9,56(sp) + c001c17c: 7d42 ld s10,48(sp) + c001c17e: 7da2 ld s11,40(sp) + c001c180: 855a mv a0,s6 + c001c182: 6b46 ld s6,80(sp) + c001c184: 6149 addi sp,sp,144 + c001c186: 8082 ret + c001c188: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4073 count = 0; - c001bfba: 4581 li a1,0 - c001bfbc: b7e9 j c001bf86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4074 + c001c18a: 4581 li a1,0 + c001c18c: b7e9 j c001c156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4082 str_new = js_alloc_string(ctx, len + count, 0); - c001bfbe: 4601 li a2,0 - c001bfc0: 013585bb addw a1,a1,s3 - c001bfc4: 8556 mv a0,s5 - c001bfc6: babfc0ef jal ra,c0018b70 - c001bfca: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4075 + c001c18e: 4601 li a2,0 + c001c190: 013585bb addw a1,a1,s3 + c001c194: 8556 mv a0,s5 + c001c196: babfc0ef jal ra,c0018d40 + c001c19a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4083 if (!str_new) - c001bfcc: d10d beqz a0,c001beee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4077 + c001c19c: d10d beqz a0,c001c0be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4085 q = str_new->u.str8; - c001bfce: 01050413 addi s0,a0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4078 + c001c19e: 01050413 addi s0,a0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4086 for (pos = 0; pos < len; pos++) { - c001bfd2: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4080 + c001c1a2: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4088 if (c < 0x80) { - c001bfd4: 07f00613 li a2,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4078 (discriminator 1) + c001c1a4: 07f00613 li a2,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4086 (discriminator 1) for (pos = 0; pos < len; pos++) { - c001bfd8: 0006879b sext.w a5,a3 - c001bfdc: 0537c563 blt a5,s3,c001c026 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4123 + c001c1a8: 0006879b sext.w a5,a3 + c001c1ac: 0537c563 blt a5,s3,c001c1f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4131 *q = '\0'; - c001bfe0: 00040023 sb zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4124 + c001c1b0: 00040023 sb zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4132 str_new->len = q - str_new->u.str8; - c001bfe4: 00492703 lw a4,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c001bfe8: 800007b7 lui a5,0x80000 - c001bfec: 01090b13 addi s6,s2,16 - c001bff0: 41640433 sub s0,s0,s6 - c001bff4: fff7c993 not s3,a5 - c001bff8: 01347433 and s0,s0,s3 - c001bffc: 8f7d and a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4125 + c001c1b4: 00492703 lw a4,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c001c1b8: 800007b7 lui a5,0x80000 + c001c1bc: 01090b13 addi s6,s2,16 + c001c1c0: 41640433 sub s0,s0,s6 + c001c1c4: fff7c993 not s3,a5 + c001c1c8: 01347433 and s0,s0,s3 + c001c1cc: 8f7d and a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4133 JS_FreeValue(ctx, val); - c001bffe: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4124 + c001c1ce: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4132 str_new->len = q - str_new->u.str8; - c001c000: 8c59 or s0,s0,a4 - c001c002: 00892223 sw s0,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4125 + c001c1d0: 8c59 or s0,s0,a4 + c001c1d2: 00892223 sw s0,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4133 JS_FreeValue(ctx, val); - c001c006: 85a6 mv a1,s1 - c001c008: 8556 mv a0,s5 - c001c00a: e826 sd s1,16(sp) - c001c00c: b2deb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4126 + c001c1d6: 85a6 mv a1,s1 + c001c1d8: 8556 mv a0,s5 + c001c1da: e826 sd s1,16(sp) + c001c1dc: a4beb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4134 if (plen) - c001c010: f80a04e3 beqz s4,c001bf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4127 + c001c1e0: f80a04e3 beqz s4,c001c168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4135 *plen = str_new->len; - c001c014: 00492783 lw a5,4(s2) - c001c018: 0137f7b3 and a5,a5,s3 - c001c01c: 1782 slli a5,a5,0x20 - c001c01e: 9381 srli a5,a5,0x20 - c001c020: 00fa3023 sd a5,0(s4) - c001c024: bf95 j c001bf98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4079 + c001c1e4: 00492783 lw a5,4(s2) + c001c1e8: 0137f7b3 and a5,a5,s3 + c001c1ec: 1782 slli a5,a5,0x20 + c001c1ee: 9381 srli a5,a5,0x20 + c001c1f0: 00fa3023 sd a5,0(s4) + c001c1f4: bf95 j c001c168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4087 c = src[pos]; - c001c026: 00d487b3 add a5,s1,a3 - c001c02a: 0107c783 lbu a5,16(a5) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> - c001c02e: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4080 + c001c1f6: 00d487b3 add a5,s1,a3 + c001c1fa: 0107c783 lbu a5,16(a5) # ffffffff80000010 <_ebss+0xfffffffebfefeeea> + c001c1fe: 0007871b sext.w a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4088 if (c < 0x80) { - c001c032: 00f64763 blt a2,a5,c001c040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4081 + c001c202: 00f64763 blt a2,a5,c001c210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4089 *q++ = c; - c001c036: 00f40023 sb a5,0(s0) - c001c03a: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4078 (discriminator 2) + c001c206: 00f40023 sb a5,0(s0) + c001c20a: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4086 (discriminator 2) for (pos = 0; pos < len; pos++) { - c001c03c: 0685 addi a3,a3,1 - c001c03e: bf69 j c001bfd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4083 + c001c20c: 0685 addi a3,a3,1 + c001c20e: bf69 j c001c1a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4091 *q++ = (c >> 6) | 0xc0; - c001c040: 4067571b sraiw a4,a4,0x6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4084 + c001c210: 4067571b sraiw a4,a4,0x6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4092 *q++ = (c & 0x3f) | 0x80; - c001c044: 03f7f793 andi a5,a5,63 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4083 + c001c214: 03f7f793 andi a5,a5,63 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4091 *q++ = (c >> 6) | 0xc0; - c001c048: fc076713 ori a4,a4,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4084 + c001c218: fc076713 ori a4,a4,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4092 *q++ = (c & 0x3f) | 0x80; - c001c04c: f807e793 ori a5,a5,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4083 + c001c21c: f807e793 ori a5,a5,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4091 *q++ = (c >> 6) | 0xc0; - c001c050: 00e40023 sb a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4084 + c001c220: 00e40023 sb a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4092 *q++ = (c & 0x3f) | 0x80; - c001c054: 00f400a3 sb a5,1(s0) - c001c058: 0409 addi s0,s0,2 - c001c05a: b7cd j c001c03c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4102 + c001c224: 00f400a3 sb a5,1(s0) + c001c228: 0409 addi s0,s0,2 + c001c22a: b7cd j c001c20c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4110 if (c >= 0xd800 && c < 0xdc00) { - c001c05c: 00fc87bb addw a5,s9,a5 - c001c060: 02f66a63 bltu a2,a5,c001c094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4103 + c001c22c: 00fc87bb addw a5,s9,a5 + c001c230: 02f66a63 bltu a2,a5,c001c264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4111 if (pos < len && !cesu8) { - c001c064: 033c5863 bge s8,s3,c001c094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4103 (discriminator 1) - c001c068: 020b9663 bnez s7,c001c094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4104 + c001c234: 033c5863 bge s8,s3,c001c264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4111 (discriminator 1) + c001c238: 020b9663 bnez s7,c001c264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4112 c1 = src[pos]; - c001c06c: 001c1793 slli a5,s8,0x1 - c001c070: 97da add a5,a5,s6 - c001c072: 0007d683 lhu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4105 + c001c23c: 001c1793 slli a5,s8,0x1 + c001c240: 97da add a5,a5,s6 + c001c242: 0007d683 lhu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4113 if (c1 >= 0xdc00 && c1 < 0xe000) { - c001c076: 00dd07bb addw a5,s10,a3 - c001c07a: 00f66d63 bltu a2,a5,c001c094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4108 + c001c246: 00dd07bb addw a5,s10,a3 + c001c24a: 00f66d63 bltu a2,a5,c001c264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4116 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c001c07e: 00a5979b slliw a5,a1,0xa - c001c082: 01b7f7b3 and a5,a5,s11 - c001c086: 3ff6f593 andi a1,a3,1023 - c001c08a: 8fcd or a5,a5,a1 - c001c08c: 65c1 lui a1,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4106 + c001c24e: 00a5979b slliw a5,a1,0xa + c001c252: 01b7f7b3 and a5,a5,s11 + c001c256: 3ff6f593 andi a1,a3,1023 + c001c25a: 8fcd or a5,a5,a1 + c001c25c: 65c1 lui a1,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4114 pos++; - c001c08e: 00270c1b addiw s8,a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4108 + c001c25e: 00270c1b addiw s8,a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4116 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c001c092: 9dbd addw a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4118 + c001c262: 9dbd addw a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4126 q += unicode_to_utf8(q, c); - c001c094: 8522 mv a0,s0 - c001c096: 5972b0ef jal ra,c0047e2c - c001c09a: 942a add s0,s0,a0 - c001c09c: 3ff00613 li a2,1023 - c001c0a0: 07f00813 li a6,127 - c001c0a4: b5f9 j c001bf72 - -00000000c001c0a6 : + c001c264: 8522 mv a0,s0 + c001c266: 5972b0ef jal ra,c0047ffc + c001c26a: 942a add s0,s0,a0 + c001c26c: 3ff00613 li a2,1023 + c001c270: 07f00813 li a6,127 + c001c274: b5f9 j c001c142 + +00000000c001c276 : JS_ToNumberHintFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10532 -{ - c001c0a6: 7135 addi sp,sp,-160 - c001c0a8: e922 sd s0,144(sp) - c001c0aa: e526 sd s1,136(sp) - c001c0ac: e14a sd s2,128(sp) - c001c0ae: fcce sd s3,120(sp) - c001c0b0: f8d2 sd s4,112(sp) - c001c0b2: f4d6 sd s5,104(sp) - c001c0b4: f0da sd s6,96(sp) - c001c0b6: e02e sd a1,0(sp) - c001c0b8: ed06 sd ra,152(sp) - c001c0ba: aca2 fsd fs0,88(sp) - c001c0bc: 84aa mv s1,a0 - c001c0be: 8936 mv s2,a3 - c001c0c0: 8432 mv s0,a2 - c001c0c2: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10540 +{ + c001c276: 7135 addi sp,sp,-160 + c001c278: e922 sd s0,144(sp) + c001c27a: e526 sd s1,136(sp) + c001c27c: e14a sd s2,128(sp) + c001c27e: fcce sd s3,120(sp) + c001c280: f8d2 sd s4,112(sp) + c001c282: f4d6 sd s5,104(sp) + c001c284: f0da sd s6,96(sp) + c001c286: e02e sd a1,0(sp) + c001c288: ed06 sd ra,152(sp) + c001c28a: aca2 fsd fs0,88(sp) + c001c28c: 84aa mv s1,a0 + c001c28e: 8936 mv s2,a3 + c001c290: 8432 mv s0,a2 + c001c292: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10546 switch(tag) { - c001c0c4: 5a59 li s4,-10 - c001c0c6: 5ae5 li s5,-7 - c001c0c8: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10576 + c001c294: 5a59 li s4,-10 + c001c296: 5ae5 li s5,-7 + c001c298: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10584 if (JS_IsException(val)) - c001c0ca: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10537 + c001c29a: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10545 tag = JS_VALUE_GET_NORM_TAG(val); - c001c0cc: 0004079b sext.w a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10538 + c001c29c: 0004079b sext.w a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10546 switch(tag) { - c001c0d0: 07478963 beq a5,s4,c001c142 - c001c0d4: 04fa6563 bltu s4,a5,c001c11e - c001c0d8: 470d li a4,3 - c001c0da: 00e78d63 beq a5,a4,c001c0f4 - c001c0de: 02f76763 bltu a4,a5,c001c10c - c001c0e2: cb8d beqz a5,c001c114 - c001c0e4: 08e79963 bne a5,a4,c001c176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10611 + c001c2a0: 07478963 beq a5,s4,c001c312 + c001c2a4: 04fa6563 bltu s4,a5,c001c2ee + c001c2a8: 470d li a4,3 + c001c2aa: 00e78d63 beq a5,a4,c001c2c4 + c001c2ae: 02f76763 bltu a4,a5,c001c2dc + c001c2b2: cb8d beqz a5,c001c2e4 + c001c2b4: 08e79963 bne a5,a4,c001c346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10619 JS_FreeValue(ctx, val); - c001c0e8: c02e sw a1,0(sp) - c001c0ea: 6582 ld a1,0(sp) - c001c0ec: 8622 mv a2,s0 - c001c0ee: 8526 mv a0,s1 - c001c0f0: a49eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10612 + c001c2b8: c02e sw a1,0(sp) + c001c2ba: 6582 ld a1,0(sp) + c001c2bc: 8622 mv a2,s0 + c001c2be: 8526 mv a0,s1 + c001c2c0: 967eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10620 ret = JS_NAN; - c001c0f4: 00058797 auipc a5,0x58 - c001c0f8: 6947b407 fld fs0,1684(a5) # c0074788 <_erodata+0x8> - c001c0fc: 12847453 fmul.d fs0,fs0,fs0 - c001c100: f20007d3 fmv.d.x fa5,zero - c001c104: 441d li s0,7 - c001c106: 12f47453 fmul.d fs0,fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10613 + c001c2c4: 00058797 auipc a5,0x58 + c001c2c8: 7247b407 fld fs0,1828(a5) # c00749e8 <_erodata+0x8> + c001c2cc: 12847453 fmul.d fs0,fs0,fs0 + c001c2d0: f20007d3 fmv.d.x fa5,zero + c001c2d4: 441d li s0,7 + c001c2d6: 12f47453 fmul.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10621 break; - c001c10a: a039 j c001c118 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10538 + c001c2da: a039 j c001c2e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10546 switch(tag) { - c001c10c: 37e9 addiw a5,a5,-6 - c001c10e: 4705 li a4,1 - c001c110: fcf76ce3 bltu a4,a5,c001c0e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10565 + c001c2dc: 37e9 addiw a5,a5,-6 + c001c2de: 4705 li a4,1 + c001c2e0: fcf76ce3 bltu a4,a5,c001c2b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10573 ret = val; - c001c114: c02e sw a1,0(sp) - c001c116: 2402 fld fs0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10615 + c001c2e4: c02e sw a1,0(sp) + c001c2e6: 2402 fld fs0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10623 return ret; - c001c118: b822 fsd fs0,48(sp) - c001c11a: fc22 sd s0,56(sp) - c001c11c: a059 j c001c1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10538 + c001c2e8: b822 fsd fs0,48(sp) + c001c2ea: fc22 sd s0,56(sp) + c001c2ec: a059 j c001c372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10546 switch(tag) { - c001c11e: 09578f63 beq a5,s5,c001c1bc - c001c122: 05678f63 beq a5,s6,c001c180 - c001c126: 5761 li a4,-8 - c001c128: fce790e3 bne a5,a4,c001c0e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10608 + c001c2ee: 09578f63 beq a5,s5,c001c38c + c001c2f2: 05678f63 beq a5,s6,c001c350 + c001c2f6: 5761 li a4,-8 + c001c2f8: fce790e3 bne a5,a4,c001c2b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10616 JS_FreeValue(ctx, val); - c001c12c: c02e sw a1,0(sp) - c001c12e: 6582 ld a1,0(sp) - c001c130: 8622 mv a2,s0 - c001c132: 8526 mv a0,s1 - c001c134: a05eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10609 + c001c2fc: c02e sw a1,0(sp) + c001c2fe: 6582 ld a1,0(sp) + c001c300: 8622 mv a2,s0 + c001c302: 8526 mv a0,s1 + c001c304: 923eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10617 return JS_ThrowTypeError(ctx, "cannot convert symbol to number"); - c001c138: 00042597 auipc a1,0x42 - c001c13c: 25058593 addi a1,a1,592 # c005e388 - c001c140: a831 j c001c15c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10540 + c001c308: 00042597 auipc a1,0x42 + c001c30c: 2e058593 addi a1,a1,736 # c005e5e8 + c001c310: a831 j c001c32c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10548 if (flag != TON_FLAG_NUMERIC) { - c001c142: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10541 + c001c312: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10549 JS_FreeValue(ctx, val); - c001c144: c02e sw a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10540 + c001c314: c02e sw a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10548 if (flag != TON_FLAG_NUMERIC) { - c001c146: fcf908e3 beq s2,a5,c001c116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10541 + c001c316: fcf908e3 beq s2,a5,c001c2e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10549 JS_FreeValue(ctx, val); - c001c14a: 6582 ld a1,0(sp) - c001c14c: 8622 mv a2,s0 - c001c14e: 8526 mv a0,s1 - c001c150: 9e9eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10542 + c001c31a: 6582 ld a1,0(sp) + c001c31c: 8622 mv a2,s0 + c001c31e: 8526 mv a0,s1 + c001c320: 907eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10550 return JS_ThrowTypeError(ctx, "cannot convert bigint to number"); - c001c154: 00042597 auipc a1,0x42 - c001c158: 21458593 addi a1,a1,532 # c005e368 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10616 + c001c324: 00042597 auipc a1,0x42 + c001c328: 2a458593 addi a1,a1,676 # c005e5c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10624 } - c001c15c: 644a ld s0,144(sp) - c001c15e: 60ea ld ra,152(sp) - c001c160: 690a ld s2,128(sp) - c001c162: 79e6 ld s3,120(sp) - c001c164: 7a46 ld s4,112(sp) - c001c166: 7aa6 ld s5,104(sp) - c001c168: 7b06 ld s6,96(sp) - c001c16a: 2466 fld fs0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10609 + c001c32c: 644a ld s0,144(sp) + c001c32e: 60ea ld ra,152(sp) + c001c330: 690a ld s2,128(sp) + c001c332: 79e6 ld s3,120(sp) + c001c334: 7a46 ld s4,112(sp) + c001c336: 7aa6 ld s5,104(sp) + c001c338: 7b06 ld s6,96(sp) + c001c33a: 2466 fld fs0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10617 return JS_ThrowTypeError(ctx, "cannot convert symbol to number"); - c001c16c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10616 + c001c33c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10624 } - c001c16e: 64aa ld s1,136(sp) - c001c170: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10609 + c001c33e: 64aa ld s1,136(sp) + c001c340: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10617 return JS_ThrowTypeError(ctx, "cannot convert symbol to number"); - c001c172: a84f706f j c00133f6 + c001c342: 9a2f706f j c00134e4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001c176: e082 sd zero,64(sp) - c001c178: c0ae sw a1,64(sp) - c001c17a: 2406 fld fs0,64(sp) - c001c17c: 4401 li s0,0 - c001c17e: bf69 j c001c118 + c001c346: e082 sd zero,64(sp) + c001c348: c0ae sw a1,64(sp) + c001c34a: 2406 fld fs0,64(sp) + c001c34c: 4401 li s0,0 + c001c34e: bf69 j c001c2e8 JS_ToNumberHintFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10575 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10583 val = JS_ToPrimitiveFree(ctx, val, HINT_NUMBER); - c001c180: c02e sw a1,0(sp) - c001c182: 6582 ld a1,0(sp) - c001c184: 8622 mv a2,s0 - c001c186: 4685 li a3,1 - c001c188: 8526 mv a0,s1 - c001c18a: 9bdfd0ef jal ra,c0019b46 - c001c18e: 842e mv s0,a1 - c001c190: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10576 + c001c350: c02e sw a1,0(sp) + c001c352: 6582 ld a1,0(sp) + c001c354: 8622 mv a2,s0 + c001c356: 4685 li a3,1 + c001c358: 8526 mv a0,s1 + c001c35a: 9bdfd0ef jal ra,c0019d16 + c001c35e: 842e mv s0,a1 + c001c360: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10584 if (JS_IsException(val)) - c001c192: 0004079b sext.w a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10575 + c001c362: 0004079b sext.w a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10583 val = JS_ToPrimitiveFree(ctx, val, HINT_NUMBER); - c001c196: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10576 + c001c366: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10584 if (JS_IsException(val)) - c001c19a: f33799e3 bne a5,s3,c001c0cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10577 + c001c36a: f33799e3 bne a5,s3,c001c29c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10585 return JS_EXCEPTION; - c001c19e: f802 sd zero,48(sp) - c001c1a0: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10616 + c001c36e: f802 sd zero,48(sp) + c001c370: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10624 } - c001c1a2: 60ea ld ra,152(sp) - c001c1a4: 644a ld s0,144(sp) - c001c1a6: 7542 ld a0,48(sp) - c001c1a8: 75e2 ld a1,56(sp) - c001c1aa: 64aa ld s1,136(sp) - c001c1ac: 690a ld s2,128(sp) - c001c1ae: 79e6 ld s3,120(sp) - c001c1b0: 7a46 ld s4,112(sp) - c001c1b2: 7aa6 ld s5,104(sp) - c001c1b4: 7b06 ld s6,96(sp) - c001c1b6: 2466 fld fs0,88(sp) - c001c1b8: 610d addi sp,sp,160 - c001c1ba: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10585 + c001c372: 60ea ld ra,152(sp) + c001c374: 644a ld s0,144(sp) + c001c376: 7542 ld a0,48(sp) + c001c378: 75e2 ld a1,56(sp) + c001c37a: 64aa ld s1,136(sp) + c001c37c: 690a ld s2,128(sp) + c001c37e: 79e6 ld s3,120(sp) + c001c380: 7a46 ld s4,112(sp) + c001c382: 7aa6 ld s5,104(sp) + c001c384: 7b06 ld s6,96(sp) + c001c386: 2466 fld fs0,88(sp) + c001c388: 610d addi sp,sp,160 + c001c38a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10593 str = JS_ToCStringLen(ctx, &len, val); - c001c1bc: c02e sw a1,0(sp) - c001c1be: 6602 ld a2,0(sp) + c001c38c: c02e sw a1,0(sp) + c001c38e: 6602 ld a2,0(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c001c1c0: 082c addi a1,sp,24 - c001c1c2: 4701 li a4,0 - c001c1c4: 86a2 mv a3,s0 - c001c1c6: 8526 mv a0,s1 - c001c1c8: e0b2 sd a2,64(sp) - c001c1ca: e422 sd s0,8(sp) - c001c1cc: e4a2 sd s0,72(sp) - c001c1ce: cdbff0ef jal ra,c001bea8 + c001c390: 082c addi a1,sp,24 + c001c392: 4701 li a4,0 + c001c394: 86a2 mv a3,s0 + c001c396: 8526 mv a0,s1 + c001c398: e0b2 sd a2,64(sp) + c001c39a: e422 sd s0,8(sp) + c001c39c: e4a2 sd s0,72(sp) + c001c39e: cdbff0ef jal ra,c001c078 JS_ToNumberHintFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10594 JS_FreeValue(ctx, val); - c001c1d2: 6582 ld a1,0(sp) - c001c1d4: 6622 ld a2,8(sp) + c001c3a2: 6582 ld a1,0(sp) + c001c3a4: 6622 ld a2,8(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c001c1d6: 892a mv s2,a0 + c001c3a6: 892a mv s2,a0 JS_ToNumberHintFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10586 - c001c1d8: 8526 mv a0,s1 - c001c1da: 95feb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10587 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10594 + c001c3a8: 8526 mv a0,s1 + c001c3aa: 87deb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10595 if (!str) - c001c1de: 00091663 bnez s2,c001c1ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10588 + c001c3ae: 00091663 bnez s2,c001c3ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10596 return JS_EXCEPTION; - c001c1e2: 4799 li a5,6 - c001c1e4: f802 sd zero,48(sp) - c001c1e6: fc3e sd a5,56(sp) - c001c1e8: bf6d j c001c1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10590 + c001c3b2: 4799 li a5,6 + c001c3b4: f802 sd zero,48(sp) + c001c3b6: fc3e sd a5,56(sp) + c001c3b8: bf6d j c001c372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10598 p += skip_spaces(p); - c001c1ea: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10589 + c001c3ba: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10597 p = str; - c001c1ec: e0ca sd s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10590 + c001c3bc: e0ca sd s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10598 p += skip_spaces(p); - c001c1ee: ddbe80ef jal ra,c0004fc8 - c001c1f2: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10591 + c001c3be: c0be80ef jal ra,c0004fc8 + c001c3c2: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10599 if ((p - str) == len) { - c001c1f4: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10590 + c001c3c4: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10598 p += skip_spaces(p); - c001c1f6: 95aa add a1,a1,a0 - c001c1f8: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10591 + c001c3c6: 95aa add a1,a1,a0 + c001c3c8: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10599 if ((p - str) == len) { - c001c1fa: 41258733 sub a4,a1,s2 - c001c1fe: 06f70263 beq a4,a5,c001c262 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10595 + c001c3ca: 41258733 sub a4,a1,s2 + c001c3ce: 06f70263 beq a4,a5,c001c432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10603 ret = js_atof(ctx, p, &p, 0, flags); - c001c202: 4711 li a4,4 - c001c204: 4681 li a3,0 - c001c206: 0090 addi a2,sp,64 - c001c208: 8526 mv a0,s1 - c001c20a: bd2fc0ef jal ra,c00185dc - c001c20e: f02a sd a0,32(sp) - c001c210: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10596 + c001c3d2: 4711 li a4,4 + c001c3d4: 4681 li a3,0 + c001c3d6: 0090 addi a2,sp,64 + c001c3d8: 8526 mv a0,s1 + c001c3da: bd2fc0ef jal ra,c00187ac + c001c3de: f02a sd a0,32(sp) + c001c3e0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10604 if (!JS_IsException(ret)) { - c001c212: 0005871b sext.w a4,a1 - c001c216: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10595 + c001c3e2: 0005871b sext.w a4,a1 + c001c3e6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10603 ret = js_atof(ctx, p, &p, 0, flags); - c001c218: f2050453 fmv.d.x fs0,a0 - c001c21c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10596 + c001c3e8: f2050453 fmv.d.x fs0,a0 + c001c3ec: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10604 if (!JS_IsException(ret)) { - c001c21e: 02f70d63 beq a4,a5,c001c258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10597 + c001c3ee: 02f70d63 beq a4,a5,c001c428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10605 p += skip_spaces(p); - c001c222: 6506 ld a0,64(sp) - c001c224: da5e80ef jal ra,c0004fc8 - c001c228: 6786 ld a5,64(sp) - c001c22a: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10598 + c001c3f2: 6506 ld a0,64(sp) + c001c3f4: bd5e80ef jal ra,c0004fc8 + c001c3f8: 6786 ld a5,64(sp) + c001c3fa: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10606 if ((p - str) != len) { - c001c22c: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10597 + c001c3fc: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10605 p += skip_spaces(p); - c001c22e: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10598 + c001c3fe: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10606 if ((p - str) != len) { - c001c230: 41250533 sub a0,a0,s2 - c001c234: 02f50263 beq a0,a5,c001c258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10599 + c001c400: 41250533 sub a0,a0,s2 + c001c404: 02f50263 beq a0,a5,c001c428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10607 JS_FreeValue(ctx, ret); - c001c238: 7582 ld a1,32(sp) - c001c23a: 7622 ld a2,40(sp) - c001c23c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10600 + c001c408: 7582 ld a1,32(sp) + c001c40a: 7622 ld a2,40(sp) + c001c40c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10608 ret = JS_NAN; - c001c23e: 441d li s0,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10599 + c001c40e: 441d li s0,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10607 JS_FreeValue(ctx, ret); - c001c240: 8f9eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10600 + c001c410: 817eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10608 ret = JS_NAN; - c001c244: 00058797 auipc a5,0x58 - c001c248: 5447b407 fld fs0,1348(a5) # c0074788 <_erodata+0x8> - c001c24c: 12847453 fmul.d fs0,fs0,fs0 - c001c250: f20007d3 fmv.d.x fa5,zero - c001c254: 12f47453 fmul.d fs0,fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10604 (discriminator 2) + c001c414: 00058797 auipc a5,0x58 + c001c418: 5d47b407 fld fs0,1492(a5) # c00749e8 <_erodata+0x8> + c001c41c: 12847453 fmul.d fs0,fs0,fs0 + c001c420: f20007d3 fmv.d.x fa5,zero + c001c424: 12f47453 fmul.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10612 (discriminator 2) JS_FreeCString(ctx, str); - c001c258: 85ca mv a1,s2 - c001c25a: 8526 mv a0,s1 - c001c25c: c25ec0ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10606 (discriminator 2) + c001c428: 85ca mv a1,s2 + c001c42a: 8526 mv a0,s1 + c001c42c: b43ec0ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10614 (discriminator 2) break; - c001c260: bd65 j c001c118 - c001c262: f2000453 fmv.d.x fs0,zero - c001c266: 4401 li s0,0 - c001c268: bfc5 j c001c258 + c001c430: bd65 j c001c2e8 + c001c432: f2000453 fmv.d.x fs0,zero + c001c436: 4401 li s0,0 + c001c438: bfc5 j c001c428 -00000000c001c26a : +00000000c001c43a : JS_ToNumberFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10619 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10627 { - c001c26a: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10620 + c001c43a: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10628 return JS_ToNumberHintFree(ctx, val, TON_FLAG_NUMBER); - c001c26c: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10621 + c001c43c: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10629 } - c001c26e: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10620 + c001c43e: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10628 return JS_ToNumberHintFree(ctx, val, TON_FLAG_NUMBER); - c001c270: e37ff06f j c001c0a6 + c001c440: e37ff06f j c001c276 -00000000c001c274 : +00000000c001c444 : JS_ToInt32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10989 -{ - c001c274: 7139 addi sp,sp,-64 - c001c276: f822 sd s0,48(sp) - c001c278: f426 sd s1,40(sp) - c001c27a: f04a sd s2,32(sp) - c001c27c: ec4e sd s3,24(sp) - c001c27e: e852 sd s4,16(sp) - c001c280: e032 sd a2,0(sp) - c001c282: fc06 sd ra,56(sp) - c001c284: 84aa mv s1,a0 - c001c286: 842e mv s0,a1 - c001c288: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10995 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10997 +{ + c001c444: 7139 addi sp,sp,-64 + c001c446: f822 sd s0,48(sp) + c001c448: f426 sd s1,40(sp) + c001c44a: f04a sd s2,32(sp) + c001c44c: ec4e sd s3,24(sp) + c001c44e: e852 sd s4,16(sp) + c001c450: e032 sd a2,0(sp) + c001c452: fc06 sd ra,56(sp) + c001c454: 84aa mv s1,a0 + c001c456: 842e mv s0,a1 + c001c458: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11003 switch(tag) { - c001c28a: 498d li s3,3 - c001c28c: 4a1d li s4,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11039 + c001c45a: 498d li s3,3 + c001c45c: 4a1d li s4,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11047 if (JS_IsException(val)) { - c001c28e: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10994 + c001c45e: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11002 tag = JS_VALUE_GET_NORM_TAG(val); - c001c290: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10995 + c001c460: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11003 switch(tag) { - c001c294: 02f9f963 bgeu s3,a5,c001c2c6 - c001c298: 03478b63 beq a5,s4,c001c2ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11038 + c001c464: 02f9f963 bgeu s3,a5,c001c496 + c001c468: 03478b63 beq a5,s4,c001c49e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11046 val = JS_ToNumberFree(ctx, val); - c001c29c: 6582 ld a1,0(sp) - c001c29e: 8526 mv a0,s1 - c001c2a0: fcbff0ef jal ra,c001c26a - c001c2a4: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11039 + c001c46c: 6582 ld a1,0(sp) + c001c46e: 8526 mv a0,s1 + c001c470: fcbff0ef jal ra,c001c43a + c001c474: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11047 if (JS_IsException(val)) { - c001c2a6: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11038 + c001c476: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11046 val = JS_ToNumberFree(ctx, val); - c001c2aa: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11039 + c001c47a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11047 if (JS_IsException(val)) { - c001c2ac: ff2792e3 bne a5,s2,c001c290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11040 + c001c47c: ff2792e3 bne a5,s2,c001c460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11048 *pres = 0; - c001c2b0: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11041 + c001c480: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11049 return -1; - c001c2b4: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11047 -} - c001c2b6: 70e2 ld ra,56(sp) - c001c2b8: 7442 ld s0,48(sp) - c001c2ba: 74a2 ld s1,40(sp) - c001c2bc: 7902 ld s2,32(sp) - c001c2be: 69e2 ld s3,24(sp) - c001c2c0: 6a42 ld s4,16(sp) - c001c2c2: 6121 addi sp,sp,64 - c001c2c4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11000 + c001c484: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11055 +} + c001c486: 70e2 ld ra,56(sp) + c001c488: 7442 ld s0,48(sp) + c001c48a: 74a2 ld s1,40(sp) + c001c48c: 7902 ld s2,32(sp) + c001c48e: 69e2 ld s3,24(sp) + c001c490: 6a42 ld s4,16(sp) + c001c492: 6121 addi sp,sp,64 + c001c494: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11008 ret = JS_VALUE_GET_INT(val); - c001c2c6: 4702 lw a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11045 + c001c496: 4702 lw a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11053 *pres = ret; - c001c2c8: c018 sw a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11046 + c001c498: c018 sw a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11054 return 0; - c001c2ca: 4501 li a0,0 - c001c2cc: b7ed j c001c2b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11007 + c001c49a: 4501 li a0,0 + c001c49c: b7ed j c001c486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11015 d = JS_VALUE_GET_FLOAT64(val); - c001c2ce: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11011 + c001c49e: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11019 if (likely(e <= (1023 + 30))) { - c001c2d0: 41d00713 li a4,1053 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11010 + c001c4a0: 41d00713 li a4,1053 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11018 e = (u.u64 >> 52) & 0x7ff; - c001c2d4: 0347d693 srli a3,a5,0x34 - c001c2d8: 7ff6f693 andi a3,a3,2047 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11008 + c001c4a4: 0347d693 srli a3,a5,0x34 + c001c4a8: 7ff6f693 andi a3,a3,2047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11016 u.d = d; - c001c2dc: 863e mv a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11011 + c001c4ac: 863e mv a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11019 if (likely(e <= (1023 + 30))) { - c001c2de: 00d74963 blt a4,a3,c001c2f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11013 + c001c4ae: 00d74963 blt a4,a3,c001c4c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11021 ret = (int32_t)d; - c001c2e2: f20787d3 fmv.d.x fa5,a5 - c001c2e6: c20797d3 fcvt.w.d a5,fa5,rtz - c001c2ea: 0007871b sext.w a4,a5 - c001c2ee: bfe9 j c001c2c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11014 + c001c4b2: f20787d3 fmv.d.x fa5,a5 + c001c4b6: c20797d3 fcvt.w.d a5,fa5,rtz + c001c4ba: 0007871b sext.w a4,a5 + c001c4be: bfe9 j c001c498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11022 } else if (e <= (1023 + 30 + 53)) { - c001c2f0: 45200593 li a1,1106 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11024 + c001c4c0: 45200593 li a1,1106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11032 ret = 0; /* also handles NaN and +inf */ - c001c2f4: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11014 + c001c4c4: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11022 } else if (e <= (1023 + 30 + 53)) { - c001c2f6: fcd5c9e3 blt a1,a3,c001c2c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11017 + c001c4c6: fcd5c9e3 blt a1,a3,c001c498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11025 v = (u.u64 & (((uint64_t)1 << 52) - 1)) | ((uint64_t)1 << 52); - c001c2fa: 07b2 slli a5,a5,0xc - c001c2fc: 4705 li a4,1 - c001c2fe: 1752 slli a4,a4,0x34 - c001c300: 83b1 srli a5,a5,0xc - c001c302: 8fd9 or a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11018 + c001c4ca: 07b2 slli a5,a5,0xc + c001c4cc: 4705 li a4,1 + c001c4ce: 1752 slli a4,a4,0x34 + c001c4d0: 83b1 srli a5,a5,0xc + c001c4d2: 8fd9 or a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11026 v = v << ((e - 1023) - 52 + 32); - c001c304: bed6869b addiw a3,a3,-1043 - c001c308: 00d797b3 sll a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11019 + c001c4d4: bed6869b addiw a3,a3,-1043 + c001c4d8: 00d797b3 sll a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11027 ret = v >> 32; - c001c30c: 4207d713 srai a4,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11021 + c001c4dc: 4207d713 srai a4,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11029 if (u.u64 >> 63) - c001c310: fa065ce3 bgez a2,c001c2c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11022 + c001c4e0: fa065ce3 bgez a2,c001c498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11030 ret = -ret; - c001c314: 40e0073b negw a4,a4 - c001c318: bf45 j c001c2c8 + c001c4e4: 40e0073b negw a4,a4 + c001c4e8: bf45 j c001c498 -00000000c001c31a : +00000000c001c4ea : js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 { - c001c31a: 711d addi sp,sp,-96 - c001c31c: 87b6 mv a5,a3 - c001c31e: 8732 mv a4,a2 - c001c320: e8a2 sd s0,80(sp) - c001c322: f832 sd a2,48(sp) - c001c324: fc36 sd a3,56(sp) - c001c326: 842e mv s0,a1 + c001c4ea: 711d addi sp,sp,-96 + c001c4ec: 87b6 mv a5,a3 + c001c4ee: 8732 mv a4,a2 + c001c4f0: e8a2 sd s0,80(sp) + c001c4f2: f832 sd a2,48(sp) + c001c4f4: fc36 sd a3,56(sp) + c001c4f6: 842e mv s0,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001c328: 4801 li a6,0 - c001c32a: 85b2 mv a1,a2 - c001c32c: 03000693 li a3,48 - c001c330: 863e mv a2,a5 + c001c4f8: 4801 li a6,0 + c001c4fa: 85b2 mv a1,a2 + c001c4fc: 03000693 li a3,48 + c001c500: 863e mv a2,a5 js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38380 - c001c332: e4a6 sd s1,72(sp) - c001c334: ec86 sd ra,88(sp) - c001c336: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 + c001c502: e4a6 sd s1,72(sp) + c001c504: ec86 sd ra,88(sp) + c001c506: 84aa mv s1,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001c338: d0af50ef jal ra,c0011842 + c001c508: c28f50ef jal ra,c0011930 js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38383 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38391 if (JS_IsException(len_val)) { - c001c33c: 0005871b sext.w a4,a1 - c001c340: 4799 li a5,6 - c001c342: 00f70e63 beq a4,a5,c001c35e - c001c346: fc2e sd a1,56(sp) - c001c348: 86ae mv a3,a1 + c001c50c: 0005871b sext.w a4,a1 + c001c510: 4799 li a5,6 + c001c512: 00f70e63 beq a4,a5,c001c52e + c001c516: fc2e sd a1,56(sp) + c001c518: 86ae mv a3,a1 JS_ToUint32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11064 return JS_ToInt32Free(ctx, (int32_t *)pres, val); - c001c34a: 85a2 mv a1,s0 + c001c51a: 85a2 mv a1,s0 js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38396 } - c001c34c: 6446 ld s0,80(sp) - c001c34e: f82a sd a0,48(sp) - c001c350: 60e6 ld ra,88(sp) - c001c352: 862a mv a2,a0 + c001c51c: 6446 ld s0,80(sp) + c001c51e: f82a sd a0,48(sp) + c001c520: 60e6 ld ra,88(sp) + c001c522: 862a mv a2,a0 JS_ToUint32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11064 return JS_ToInt32Free(ctx, (int32_t *)pres, val); - c001c354: 8526 mv a0,s1 + c001c524: 8526 mv a0,s1 js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38396 } - c001c356: 64a6 ld s1,72(sp) - c001c358: 6125 addi sp,sp,96 + c001c526: 64a6 ld s1,72(sp) + c001c528: 6125 addi sp,sp,96 JS_ToUint32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11064 return JS_ToInt32Free(ctx, (int32_t *)pres, val); - c001c35a: f1bff06f j c001c274 + c001c52a: f1bff06f j c001c444 js_get_length32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38396 } - c001c35e: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38384 + c001c52e: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38392 *pres = 0; - c001c360: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38388 + c001c530: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38396 } - c001c364: 6446 ld s0,80(sp) - c001c366: 64a6 ld s1,72(sp) - c001c368: 557d li a0,-1 - c001c36a: 6125 addi sp,sp,96 - c001c36c: 8082 ret + c001c534: 6446 ld s0,80(sp) + c001c536: 64a6 ld s1,72(sp) + c001c538: 557d li a0,-1 + c001c53a: 6125 addi sp,sp,96 + c001c53c: 8082 ret -00000000c001c36e : +00000000c001c53e : JS_ToInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11050 -{ - c001c36e: 7139 addi sp,sp,-64 - c001c370: f822 sd s0,48(sp) - c001c372: f426 sd s1,40(sp) - c001c374: 842a mv s0,a0 - c001c376: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11058 +{ + c001c53e: 7139 addi sp,sp,-64 + c001c540: f822 sd s0,48(sp) + c001c542: f426 sd s1,40(sp) + c001c544: 842a mv s0,a0 + c001c546: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11059 return JS_ToInt32Free(ctx, pres, JS_DupValue(ctx, val)); - c001c378: 8532 mv a0,a2 - c001c37a: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11050 + c001c548: 8532 mv a0,a2 + c001c54a: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11058 { - c001c37c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11051 + c001c54c: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11059 return JS_ToInt32Free(ctx, pres, JS_DupValue(ctx, val)); - c001c37e: af0ea0ef jal ra,c000666e - c001c382: 862a mv a2,a0 - c001c384: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11052 -} - c001c386: 7442 ld s0,48(sp) - c001c388: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11051 + c001c54e: a0eea0ef jal ra,c000675c + c001c552: 862a mv a2,a0 + c001c554: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11060 +} + c001c556: 7442 ld s0,48(sp) + c001c558: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11059 return JS_ToInt32Free(ctx, pres, JS_DupValue(ctx, val)); - c001c38a: 86ae mv a3,a1 - c001c38c: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11052 + c001c55a: 86ae mv a3,a1 + c001c55c: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11060 } - c001c38e: 74a2 ld s1,40(sp) - c001c390: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11051 + c001c55e: 74a2 ld s1,40(sp) + c001c560: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11059 return JS_ToInt32Free(ctx, pres, JS_DupValue(ctx, val)); - c001c392: ee3ff06f j c001c274 + c001c562: ee3ff06f j c001c444 -00000000c001c396 : +00000000c001c566 : js_string_codePointRange(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41459 -{ - c001c396: 7159 addi sp,sp,-112 - c001c398: f0a2 sd s0,96(sp) - c001c39a: eca6 sd s1,88(sp) - c001c39c: f486 sd ra,104(sp) - c001c39e: 6310 ld a2,0(a4) - c001c3a0: 6714 ld a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41467 +{ + c001c566: 7159 addi sp,sp,-112 + c001c568: f0a2 sd s0,96(sp) + c001c56a: eca6 sd s1,88(sp) + c001c56c: f486 sd ra,104(sp) + c001c56e: 6310 ld a2,0(a4) + c001c570: 6714 ld a3,8(a4) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c001c3a2: 082c addi a1,sp,24 + c001c572: 082c addi a1,sp,24 js_string_codePointRange(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41459 - c001c3a4: 84aa mv s1,a0 - c001c3a6: 843a mv s0,a4 - c001c3a8: f832 sd a2,48(sp) - c001c3aa: fc36 sd a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41467 + c001c574: 84aa mv s1,a0 + c001c576: 843a mv s0,a4 + c001c578: f832 sd a2,48(sp) + c001c57a: fc36 sd a3,56(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c001c3ac: fc3ff0ef jal ra,c001c36e + c001c57c: fc3ff0ef jal ra,c001c53e js_string_codePointRange(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41463 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41471 if (JS_ToUint32(ctx, &start, argv[0]) || - c001c3b0: e911 bnez a0,c001c3c4 - c001c3b2: 6810 ld a2,16(s0) - c001c3b4: 6c14 ld a3,24(s0) + c001c580: e911 bnez a0,c001c594 + c001c582: 6810 ld a2,16(s0) + c001c584: 6c14 ld a3,24(s0) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 (discriminator 1) - c001c3b6: 086c addi a1,sp,28 - c001c3b8: 8526 mv a0,s1 - c001c3ba: f832 sd a2,48(sp) - c001c3bc: fc36 sd a3,56(sp) - c001c3be: fb1ff0ef jal ra,c001c36e + c001c586: 086c addi a1,sp,28 + c001c588: 8526 mv a0,s1 + c001c58a: f832 sd a2,48(sp) + c001c58c: fc36 sd a3,56(sp) + c001c58e: fb1ff0ef jal ra,c001c53e js_string_codePointRange(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41463 (discriminator 1) - c001c3c2: c919 beqz a0,c001c3d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41471 (discriminator 1) + c001c592: c919 beqz a0,c001c5a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41473 return JS_EXCEPTION; - c001c3c4: 4799 li a5,6 - c001c3c6: f002 sd zero,32(sp) - c001c3c8: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41481 (discriminator 1) -} - c001c3ca: 70a6 ld ra,104(sp) - c001c3cc: 7406 ld s0,96(sp) - c001c3ce: 7502 ld a0,32(sp) - c001c3d0: 75a2 ld a1,40(sp) - c001c3d2: 64e6 ld s1,88(sp) - c001c3d4: 6165 addi sp,sp,112 - c001c3d6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41466 + c001c594: 4799 li a5,6 + c001c596: f002 sd zero,32(sp) + c001c598: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41489 (discriminator 1) +} + c001c59a: 70a6 ld ra,104(sp) + c001c59c: 7406 ld s0,96(sp) + c001c59e: 7502 ld a0,32(sp) + c001c5a0: 75a2 ld a1,40(sp) + c001c5a2: 64e6 ld s1,88(sp) + c001c5a4: 6165 addi sp,sp,112 + c001c5a6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41474 end = min_uint32(end, 0x10ffff + 1); - c001c3d8: 47f2 lw a5,28(sp) + c001c5a8: 47f2 lw a5,28(sp) min_uint32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:95 if (a < b) - c001c3da: 00110737 lui a4,0x110 - c001c3de: 00e7e463 bltu a5,a4,c001c3e6 + c001c5aa: 00110737 lui a4,0x110 + c001c5ae: 00e7e463 bltu a5,a4,c001c5b6 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:98 return b; - c001c3e2: 001107b7 lui a5,0x110 + c001c5b2: 001107b7 lui a5,0x110 js_string_codePointRange(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41476 if (start > end) { - c001c3e6: 4762 lw a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41466 + c001c5b6: 4762 lw a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41474 end = min_uint32(end, 0x10ffff + 1); - c001c3e8: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41468 + c001c5b8: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41476 if (start > end) { - c001c3ea: 00e7f363 bgeu a5,a4,c001c3f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41469 + c001c5ba: 00e7f363 bgeu a5,a4,c001c5c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41477 start = end; - c001c3ee: cc3e sw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41471 + c001c5be: cc3e sw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41479 n = end - start; - c001c3f0: 4762 lw a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41472 + c001c5c0: 4762 lw a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41480 if (end > 0x10000) { - c001c3f2: 65c1 lui a1,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41471 + c001c5c2: 65c1 lui a1,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41479 n = end - start; - c001c3f4: 40e7863b subw a2,a5,a4 - c001c3f8: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41472 + c001c5c4: 40e7863b subw a2,a5,a4 + c001c5c8: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41480 if (end > 0x10000) { - c001c3fa: 00f5f963 bgeu a1,a5,c001c40c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41473 + c001c5ca: 00f5f963 bgeu a1,a5,c001c5dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41481 n += end - max_uint32(start, 0x10000); - c001c3fe: 863a mv a2,a4 - c001c400: 00b77363 bgeu a4,a1,c001c406 - c001c404: 6641 lui a2,0x10 - c001c406: 40c7863b subw a2,a5,a2 - c001c40a: 9e35 addw a2,a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41475 + c001c5ce: 863a mv a2,a4 + c001c5d0: 00b77363 bgeu a4,a1,c001c5d6 + c001c5d4: 6641 lui a2,0x10 + c001c5d6: 40c7863b subw a2,a5,a2 + c001c5da: 9e35 addw a2,a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41483 if (string_buffer_init2(ctx, b, n, end >= 0x100)) - c001c40c: 0ff00693 li a3,255 - c001c410: 00f6b6b3 sltu a3,a3,a5 - c001c414: 180c addi a1,sp,48 - c001c416: 8526 mv a0,s1 - c001c418: f7efc0ef jal ra,c0018b96 - c001c41c: f545 bnez a0,c001c3c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41477 + c001c5dc: 0ff00693 li a3,255 + c001c5e0: 00f6b6b3 sltu a3,a3,a5 + c001c5e4: 180c addi a1,sp,48 + c001c5e6: 8526 mv a0,s1 + c001c5e8: f7efc0ef jal ra,c0018d66 + c001c5ec: f545 bnez a0,c001c594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41485 for(i = start; i < end; i++) { - c001c41e: 4462 lw s0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41477 (discriminator 1) - c001c420: 47f2 lw a5,28(sp) - c001c422: 00f46863 bltu s0,a5,c001c432 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41480 + c001c5ee: 4462 lw s0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41485 (discriminator 1) + c001c5f0: 47f2 lw a5,28(sp) + c001c5f2: 00f46863 bltu s0,a5,c001c602 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41488 return string_buffer_end(b); - c001c426: 1808 addi a0,sp,48 - c001c428: 8e3fd0ef jal ra,c0019d0a - c001c42c: f02a sd a0,32(sp) - c001c42e: f42e sd a1,40(sp) - c001c430: bf69 j c001c3ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41478 (discriminator 3) + c001c5f6: 1808 addi a0,sp,48 + c001c5f8: 8e3fd0ef jal ra,c0019eda + c001c5fc: f02a sd a0,32(sp) + c001c5fe: f42e sd a1,40(sp) + c001c600: bf69 j c001c59a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41486 (discriminator 3) string_buffer_putc(b, i); - c001c432: 85a2 mv a1,s0 - c001c434: 1808 addi a0,sp,48 - c001c436: dc1fc0ef jal ra,c00191f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41477 (discriminator 3) + c001c602: 85a2 mv a1,s0 + c001c604: 1808 addi a0,sp,48 + c001c606: dc1fc0ef jal ra,c00193c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41485 (discriminator 3) for(i = start; i < end; i++) { - c001c43a: 2405 addiw s0,s0,1 - c001c43c: b7d5 j c001c420 + c001c60a: 2405 addiw s0,s0,1 + c001c60c: b7d5 j c001c5f0 -00000000c001c43e : +00000000c001c60e : js_math_clz32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43198 if (JS_ToUint32(ctx, &a, argv[0])) - c001c43e: 6310 ld a2,0(a4) - c001c440: 6714 ld a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43187 + c001c60e: 6310 ld a2,0(a4) + c001c610: 6714 ld a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43195 { - c001c442: 715d addi sp,sp,-80 + c001c612: 715d addi sp,sp,-80 JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c001c444: 086c addi a1,sp,28 + c001c614: 086c addi a1,sp,28 js_math_clz32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43187 - c001c446: e486 sd ra,72(sp) - c001c448: f832 sd a2,48(sp) - c001c44a: fc36 sd a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43195 + c001c616: e486 sd ra,72(sp) + c001c618: f832 sd a2,48(sp) + c001c61a: fc36 sd a3,56(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c001c44c: f23ff0ef jal ra,c001c36e + c001c61c: f23ff0ef jal ra,c001c53e js_math_clz32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43198 if (JS_ToUint32(ctx, &a, argv[0])) - c001c450: c909 beqz a0,c001c462 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43191 + c001c620: c909 beqz a0,c001c632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43199 return JS_EXCEPTION; - c001c452: 4799 li a5,6 - c001c454: f002 sd zero,32(sp) - c001c456: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43197 (discriminator 1) -} - c001c458: 60a6 ld ra,72(sp) - c001c45a: 7502 ld a0,32(sp) - c001c45c: 75a2 ld a1,40(sp) - c001c45e: 6161 addi sp,sp,80 - c001c460: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43192 + c001c622: 4799 li a5,6 + c001c624: f002 sd zero,32(sp) + c001c626: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43205 (discriminator 1) +} + c001c628: 60a6 ld ra,72(sp) + c001c62a: 7502 ld a0,32(sp) + c001c62c: 75a2 ld a1,40(sp) + c001c62e: 6161 addi sp,sp,80 + c001c630: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43200 if (a == 0) - c001c462: 4572 lw a0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43193 + c001c632: 4572 lw a0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43201 r = 32; - c001c464: 02000793 li a5,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43192 + c001c634: 02000793 li a5,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43200 if (a == 0) - c001c468: c519 beqz a0,c001c476 + c001c638: c519 beqz a0,c001c646 clz32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:120 return __builtin_clz(a); - c001c46a: 1502 slli a0,a0,0x20 - c001c46c: 9101 srli a0,a0,0x20 - c001c46e: b93e30ef jal ra,c0000000 <__clzdi2> + c001c63a: 1502 slli a0,a0,0x20 + c001c63c: 9101 srli a0,a0,0x20 + c001c63e: 9c3e30ef jal ra,c0000000 <__clzdi2> js_math_clz32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43203 r = clz32(a); - c001c472: fe05079b addiw a5,a0,-32 + c001c642: fe05079b addiw a5,a0,-32 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001c476: da02 sw zero,52(sp) - c001c478: d83e sw a5,48(sp) - c001c47a: 77c2 ld a5,48(sp) - c001c47c: f402 sd zero,40(sp) - c001c47e: f03e sd a5,32(sp) - c001c480: bfe1 j c001c458 - -00000000c001c482 : + c001c646: da02 sw zero,52(sp) + c001c648: d83e sw a5,48(sp) + c001c64a: 77c2 ld a5,48(sp) + c001c64c: f402 sd zero,40(sp) + c001c64e: f03e sd a5,32(sp) + c001c650: bfe1 j c001c628 + +00000000c001c652 : js_math_imul(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43182 { - c001c482: 711d addi sp,sp,-96 - c001c484: e8a2 sd s0,80(sp) - c001c486: e4a6 sd s1,72(sp) - c001c488: ec86 sd ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43177 + c001c652: 711d addi sp,sp,-96 + c001c654: e8a2 sd s0,80(sp) + c001c656: e4a6 sd s1,72(sp) + c001c658: ec86 sd ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43185 if (JS_ToInt32(ctx, &a, argv[0])) - c001c48a: 6310 ld a2,0(a4) - c001c48c: 6714 ld a3,8(a4) - c001c48e: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43174 + c001c65a: 6310 ld a2,0(a4) + c001c65c: 6714 ld a3,8(a4) + c001c65e: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43182 { - c001c490: 84aa mv s1,a0 - c001c492: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43177 + c001c660: 84aa mv s1,a0 + c001c662: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43185 if (JS_ToInt32(ctx, &a, argv[0])) - c001c494: edbff0ef jal ra,c001c36e - c001c498: c919 beqz a0,c001c4ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43178 + c001c664: edbff0ef jal ra,c001c53e + c001c668: c919 beqz a0,c001c67e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43186 return JS_EXCEPTION; - c001c49a: 4799 li a5,6 - c001c49c: f002 sd zero,32(sp) - c001c49e: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43183 (discriminator 1) -} - c001c4a0: 60e6 ld ra,88(sp) - c001c4a2: 6446 ld s0,80(sp) - c001c4a4: 7502 ld a0,32(sp) - c001c4a6: 75a2 ld a1,40(sp) - c001c4a8: 64a6 ld s1,72(sp) - c001c4aa: 6125 addi sp,sp,96 - c001c4ac: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43179 + c001c66a: 4799 li a5,6 + c001c66c: f002 sd zero,32(sp) + c001c66e: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43191 (discriminator 1) +} + c001c670: 60e6 ld ra,88(sp) + c001c672: 6446 ld s0,80(sp) + c001c674: 7502 ld a0,32(sp) + c001c676: 75a2 ld a1,40(sp) + c001c678: 64a6 ld s1,72(sp) + c001c67a: 6125 addi sp,sp,96 + c001c67c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43187 if (JS_ToInt32(ctx, &b, argv[1])) - c001c4ae: 6810 ld a2,16(s0) - c001c4b0: 6c14 ld a3,24(s0) - c001c4b2: 086c addi a1,sp,28 - c001c4b4: 8526 mv a0,s1 - c001c4b6: eb9ff0ef jal ra,c001c36e - c001c4ba: f165 bnez a0,c001c49a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43182 + c001c67e: 6810 ld a2,16(s0) + c001c680: 6c14 ld a3,24(s0) + c001c682: 086c addi a1,sp,28 + c001c684: 8526 mv a0,s1 + c001c686: eb9ff0ef jal ra,c001c53e + c001c68a: f165 bnez a0,c001c66a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43190 return JS_NewInt32(ctx, a * b); - c001c4bc: 47e2 lw a5,24(sp) - c001c4be: 4772 lw a4,28(sp) + c001c68c: 47e2 lw a5,24(sp) + c001c68e: 4772 lw a4,28(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001c4c0: da02 sw zero,52(sp) - c001c4c2: f402 sd zero,40(sp) + c001c690: da02 sw zero,52(sp) + c001c692: f402 sd zero,40(sp) js_math_imul(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43182 - c001c4c4: 02e787bb mulw a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43190 + c001c694: 02e787bb mulw a5,a5,a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001c4c8: d83e sw a5,48(sp) - c001c4ca: 77c2 ld a5,48(sp) - c001c4cc: f03e sd a5,32(sp) - c001c4ce: bfc9 j c001c4a0 + c001c698: d83e sw a5,48(sp) + c001c69a: 77c2 ld a5,48(sp) + c001c69c: f03e sd a5,32(sp) + c001c69e: bfc9 j c001c670 -00000000c001c4d0 : +00000000c001c6a0 : js_string_fromCharCode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 { - c001c4d0: 7119 addi sp,sp,-128 - c001c4d2: e8d2 sd s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41370 + c001c6a0: 7119 addi sp,sp,-128 + c001c6a2: e8d2 sd s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41378 string_buffer_init(ctx, b, argc); - c001c4d4: 8636 mv a2,a3 - c001c4d6: 180c addi a1,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 + c001c6a4: 8636 mv a2,a3 + c001c6a6: 180c addi a1,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41382 if (JS_ToInt32(ctx, &c, argv[i]) || string_buffer_putc16(b, c & 0xffff)) { - c001c4d8: 6a41 lui s4,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41366 + c001c6a8: 6a41 lui s4,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 { - c001c4da: f8a2 sd s0,112(sp) - c001c4dc: f4a6 sd s1,104(sp) - c001c4de: f0ca sd s2,96(sp) - c001c4e0: ecce sd s3,88(sp) - c001c4e2: fc86 sd ra,120(sp) - c001c4e4: 892a mv s2,a0 - c001c4e6: 8436 mv s0,a3 - c001c4e8: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41372 + c001c6aa: f8a2 sd s0,112(sp) + c001c6ac: f4a6 sd s1,104(sp) + c001c6ae: f0ca sd s2,96(sp) + c001c6b0: ecce sd s3,88(sp) + c001c6b2: fc86 sd ra,120(sp) + c001c6b4: 892a mv s2,a0 + c001c6b6: 8436 mv s0,a3 + c001c6b8: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41380 for(i = 0; i < argc; i++) { - c001c4ea: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41370 + c001c6ba: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41378 string_buffer_init(ctx, b, argc); - c001c4ec: ee2fc0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 + c001c6bc: ee2fc0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41382 if (JS_ToInt32(ctx, &c, argv[i]) || string_buffer_putc16(b, c & 0xffff)) { - c001c4f0: 1a7d addi s4,s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41372 (discriminator 1) + c001c6c0: 1a7d addi s4,s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41380 (discriminator 1) for(i = 0; i < argc; i++) { - c001c4f2: 0004879b sext.w a5,s1 - c001c4f6: 0087c863 blt a5,s0,c001c506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41379 + c001c6c2: 0004879b sext.w a5,s1 + c001c6c6: 0087c863 blt a5,s0,c001c6d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41387 return string_buffer_end(b); - c001c4fa: 1808 addi a0,sp,48 - c001c4fc: 80ffd0ef jal ra,c0019d0a - c001c500: f02a sd a0,32(sp) - c001c502: f42e sd a1,40(sp) - c001c504: a00d j c001c526 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 + c001c6ca: 1808 addi a0,sp,48 + c001c6cc: 80ffd0ef jal ra,c0019eda + c001c6d0: f02a sd a0,32(sp) + c001c6d2: f42e sd a1,40(sp) + c001c6d4: a00d j c001c6f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41382 if (JS_ToInt32(ctx, &c, argv[i]) || string_buffer_putc16(b, c & 0xffff)) { - c001c506: 00449793 slli a5,s1,0x4 - c001c50a: 97ce add a5,a5,s3 - c001c50c: 6390 ld a2,0(a5) - c001c50e: 6794 ld a3,8(a5) - c001c510: 086c addi a1,sp,28 - c001c512: 854a mv a0,s2 - c001c514: e5bff0ef jal ra,c001c36e - c001c518: c10d beqz a0,c001c53a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41375 + c001c6d6: 00449793 slli a5,s1,0x4 + c001c6da: 97ce add a5,a5,s3 + c001c6dc: 6390 ld a2,0(a5) + c001c6de: 6794 ld a3,8(a5) + c001c6e0: 086c addi a1,sp,28 + c001c6e2: 854a mv a0,s2 + c001c6e4: e5bff0ef jal ra,c001c53e + c001c6e8: c10d beqz a0,c001c70a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41383 string_buffer_free(b); - c001c51a: 1808 addi a0,sp,48 - c001c51c: 94bea0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41376 + c001c6ea: 1808 addi a0,sp,48 + c001c6ec: 869ea0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41384 return JS_EXCEPTION; - c001c520: 4799 li a5,6 - c001c522: f002 sd zero,32(sp) - c001c524: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41380 (discriminator 2) -} - c001c526: 70e6 ld ra,120(sp) - c001c528: 7446 ld s0,112(sp) - c001c52a: 7502 ld a0,32(sp) - c001c52c: 75a2 ld a1,40(sp) - c001c52e: 74a6 ld s1,104(sp) - c001c530: 7906 ld s2,96(sp) - c001c532: 69e6 ld s3,88(sp) - c001c534: 6a46 ld s4,80(sp) - c001c536: 6109 addi sp,sp,128 - c001c538: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41374 (discriminator 1) + c001c6f0: 4799 li a5,6 + c001c6f2: f002 sd zero,32(sp) + c001c6f4: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41388 (discriminator 2) +} + c001c6f6: 70e6 ld ra,120(sp) + c001c6f8: 7446 ld s0,112(sp) + c001c6fa: 7502 ld a0,32(sp) + c001c6fc: 75a2 ld a1,40(sp) + c001c6fe: 74a6 ld s1,104(sp) + c001c700: 7906 ld s2,96(sp) + c001c702: 69e6 ld s3,88(sp) + c001c704: 6a46 ld s4,80(sp) + c001c706: 6109 addi sp,sp,128 + c001c708: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41382 (discriminator 1) if (JS_ToInt32(ctx, &c, argv[i]) || string_buffer_putc16(b, c & 0xffff)) { - c001c53a: 45f2 lw a1,28(sp) - c001c53c: 1808 addi a0,sp,48 - c001c53e: 0485 addi s1,s1,1 - c001c540: 00ba75b3 and a1,s4,a1 - c001c544: c75fc0ef jal ra,c00191b8 - c001c548: d54d beqz a0,c001c4f2 - c001c54a: bfc1 j c001c51a - -00000000c001c54c : + c001c70a: 45f2 lw a1,28(sp) + c001c70c: 1808 addi a0,sp,48 + c001c70e: 0485 addi s1,s1,1 + c001c710: 00ba75b3 and a1,s4,a1 + c001c714: c75fc0ef jal ra,c0019388 + c001c718: d54d beqz a0,c001c6c2 + c001c71a: bfc1 j c001c6ea + +00000000c001c71c : JS_ToUint8ClampFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11068 { - c001c54c: 7139 addi sp,sp,-64 - c001c54e: f822 sd s0,48(sp) - c001c550: f426 sd s1,40(sp) - c001c552: f04a sd s2,32(sp) - c001c554: ec4e sd s3,24(sp) - c001c556: e852 sd s4,16(sp) - c001c558: e032 sd a2,0(sp) - c001c55a: fc06 sd ra,56(sp) - c001c55c: 84aa mv s1,a0 - c001c55e: 842e mv s0,a1 - c001c560: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11066 + c001c71c: 7139 addi sp,sp,-64 + c001c71e: f822 sd s0,48(sp) + c001c720: f426 sd s1,40(sp) + c001c722: f04a sd s2,32(sp) + c001c724: ec4e sd s3,24(sp) + c001c726: e852 sd s4,16(sp) + c001c728: e032 sd a2,0(sp) + c001c72a: fc06 sd ra,56(sp) + c001c72c: 84aa mv s1,a0 + c001c72e: 842e mv s0,a1 + c001c730: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11074 switch(tag) { - c001c562: 498d li s3,3 - c001c564: 4a1d li s4,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11108 + c001c732: 498d li s3,3 + c001c734: 4a1d li s4,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11116 if (JS_IsException(val)) { - c001c566: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11065 + c001c736: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11073 tag = JS_VALUE_GET_NORM_TAG(val); - c001c568: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11066 + c001c738: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11074 switch(tag) { - c001c56c: 02f9f963 bgeu s3,a5,c001c59e - c001c570: 05478963 beq a5,s4,c001c5c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11107 + c001c73c: 02f9f963 bgeu s3,a5,c001c76e + c001c740: 05478963 beq a5,s4,c001c792 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11115 val = JS_ToNumberFree(ctx, val); - c001c574: 6582 ld a1,0(sp) - c001c576: 8526 mv a0,s1 - c001c578: cf3ff0ef jal ra,c001c26a - c001c57c: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11108 + c001c744: 6582 ld a1,0(sp) + c001c746: 8526 mv a0,s1 + c001c748: cf3ff0ef jal ra,c001c43a + c001c74c: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11116 if (JS_IsException(val)) { - c001c57e: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11107 + c001c74e: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11115 val = JS_ToNumberFree(ctx, val); - c001c582: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11108 + c001c752: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11116 if (JS_IsException(val)) { - c001c584: ff2792e3 bne a5,s2,c001c568 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11109 + c001c754: ff2792e3 bne a5,s2,c001c738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11117 *pres = 0; - c001c588: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11110 + c001c758: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11118 return -1; - c001c58c: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11116 + c001c75c: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11124 } - c001c58e: 70e2 ld ra,56(sp) - c001c590: 7442 ld s0,48(sp) - c001c592: 74a2 ld s1,40(sp) - c001c594: 7902 ld s2,32(sp) - c001c596: 69e2 ld s3,24(sp) - c001c598: 6a42 ld s4,16(sp) - c001c59a: 6121 addi sp,sp,64 - c001c59c: 8082 ret + c001c75e: 70e2 ld ra,56(sp) + c001c760: 7442 ld s0,48(sp) + c001c762: 74a2 ld s1,40(sp) + c001c764: 7902 ld s2,32(sp) + c001c766: 69e2 ld s3,24(sp) + c001c768: 6a42 ld s4,16(sp) + c001c76a: 6121 addi sp,sp,64 + c001c76c: 8082 ret min_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c001c59e: 4502 lw a0,0(sp) - c001c5a0: 0005079b sext.w a5,a0 - c001c5a4: 0007d363 bgez a5,c001c5aa - c001c5a8: 4501 li a0,0 - c001c5aa: 0005079b sext.w a5,a0 - c001c5ae: 0ff00713 li a4,255 - c001c5b2: 00f75463 bge a4,a5,c001c5ba - c001c5b6: 0ff00513 li a0,255 + c001c76e: 4502 lw a0,0(sp) + c001c770: 0005079b sext.w a5,a0 + c001c774: 0007d363 bgez a5,c001c77a + c001c778: 4501 li a0,0 + c001c77a: 0005079b sext.w a5,a0 + c001c77e: 0ff00713 li a4,255 + c001c782: 00f75463 bge a4,a5,c001c78a + c001c786: 0ff00513 li a0,255 JS_ToUint8ClampFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11096 res = lrint(d); - c001c5ba: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11114 + c001c78a: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11122 *pres = res; - c001c5bc: c008 sw a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11115 + c001c78c: c008 sw a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11123 return 0; - c001c5be: 4501 li a0,0 - c001c5c0: b7f9 j c001c58e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11079 + c001c78e: 4501 li a0,0 + c001c790: b7f9 j c001c75e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11087 double d = JS_VALUE_GET_FLOAT64(val); - c001c5c2: 2502 fld fa0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11081 + c001c792: 2502 fld fa0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11089 res = 0; - c001c5c4: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11080 + c001c794: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11088 if (isnan(d)) { - c001c5c6: a2a527d3 feq.d a5,fa0,fa0 - c001c5ca: dbed beqz a5,c001c5bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11083 + c001c796: a2a527d3 feq.d a5,fa0,fa0 + c001c79a: dbed beqz a5,c001c78c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11091 if (d < 0) - c001c5cc: f20007d3 fmv.d.x fa5,zero - c001c5d0: a2f517d3 flt.d a5,fa0,fa5 - c001c5d4: f7e5 bnez a5,c001c5bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11085 + c001c79c: f20007d3 fmv.d.x fa5,zero + c001c7a0: a2f517d3 flt.d a5,fa0,fa5 + c001c7a4: f7e5 bnez a5,c001c78c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11093 else if (d > 255) - c001c5d6: 00058797 auipc a5,0x58 - c001c5da: 22a7b787 fld fa5,554(a5) # c0074800 <_erodata+0x80> - c001c5de: a2a797d3 flt.d a5,fa5,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11086 + c001c7a6: 00058797 auipc a5,0x58 + c001c7aa: 2ba7b787 fld fa5,698(a5) # c0074a60 <_erodata+0x80> + c001c7ae: a2a797d3 flt.d a5,fa5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11094 res = 255; - c001c5e2: 0ff00513 li a0,255 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11085 + c001c7b2: 0ff00513 li a0,255 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11093 else if (d > 255) - c001c5e6: fbf9 bnez a5,c001c5bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11088 + c001c7b6: fbf9 bnez a5,c001c78c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11096 res = lrint(d); - c001c5e8: 78c360ef jal ra,c0052d74 - c001c5ec: b7f9 j c001c5ba + c001c7b8: 78c360ef jal ra,c0052f44 + c001c7bc: b7f9 j c001c78a -00000000c001c5ee : +00000000c001c7be : JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10673 -{ - c001c5ee: 715d addi sp,sp,-80 - c001c5f0: e0a2 sd s0,64(sp) - c001c5f2: e486 sd ra,72(sp) - c001c5f4: fc26 sd s1,56(sp) - c001c5f6: f84a sd s2,48(sp) - c001c5f8: e032 sd a2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10681 +{ + c001c7be: 715d addi sp,sp,-80 + c001c7c0: e0a2 sd s0,64(sp) + c001c7c2: e486 sd ra,72(sp) + c001c7c4: fc26 sd s1,56(sp) + c001c7c6: f84a sd s2,48(sp) + c001c7c8: e032 sd a2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10684 tag = JS_VALUE_GET_TAG(val); - c001c5fa: 0006879b sext.w a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10677 + c001c7ca: 0006879b sext.w a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10685 if (tag <= JS_TAG_NULL) { - c001c5fe: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10673 + c001c7ce: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10681 { - c001c600: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10677 + c001c7d0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10685 if (tag <= JS_TAG_NULL) { - c001c602: 00f76863 bltu a4,a5,c001c612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10678 + c001c7d2: 00f76863 bltu a4,a5,c001c7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10686 *pres = JS_VALUE_GET_INT(val); - c001c606: 4782 lw a5,0(sp) - c001c608: d20787d3 fcvt.d.w fa5,a5 + c001c7d6: 4782 lw a5,0(sp) + c001c7d8: d20787d3 fcvt.d.w fa5,a5 __JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10676 *pres = d; - c001c60c: a01c fsd fa5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10669 + c001c7dc: a01c fsd fa5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10677 return 0; - c001c60e: 4501 li a0,0 + c001c7de: 4501 li a0,0 JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10692 return __JS_ToFloat64Free(ctx, pres, val); - c001c610: a835 j c001c64c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10680 + c001c7e0: a835 j c001c81c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10688 } else if (JS_TAG_IS_FLOAT64(tag)) { - c001c612: 491d li s2,7 - c001c614: 01279463 bne a5,s2,c001c61c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10681 + c001c7e2: 491d li s2,7 + c001c7e4: 01279463 bne a5,s2,c001c7ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10689 *pres = JS_VALUE_GET_FLOAT64(val); - c001c618: 2782 fld fa5,0(sp) - c001c61a: bfcd j c001c60c + c001c7e8: 2782 fld fa5,0(sp) + c001c7ea: bfcd j c001c7dc __JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10647 val = JS_ToNumberFree(ctx, val); - c001c61c: 85b2 mv a1,a2 - c001c61e: 8636 mv a2,a3 - c001c620: 84aa mv s1,a0 - c001c622: c49ff0ef jal ra,c001c26a - c001c626: f02a sd a0,32(sp) - c001c628: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10640 + c001c7ec: 85b2 mv a1,a2 + c001c7ee: 8636 mv a2,a3 + c001c7f0: 84aa mv s1,a0 + c001c7f2: c49ff0ef jal ra,c001c43a + c001c7f6: f02a sd a0,32(sp) + c001c7f8: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10648 if (JS_IsException(val)) { - c001c62a: 0005879b sext.w a5,a1 - c001c62e: 4719 li a4,6 - c001c630: 02e79463 bne a5,a4,c001c658 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10641 + c001c7fa: 0005879b sext.w a5,a1 + c001c7fe: 4719 li a4,6 + c001c800: 02e79463 bne a5,a4,c001c828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10649 *pres = JS_FLOAT64_NAN; - c001c634: 00058797 auipc a5,0x58 - c001c638: 1547b787 fld fa5,340(a5) # c0074788 <_erodata+0x8> - c001c63c: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001c640: f2000753 fmv.d.x fa4,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10642 + c001c804: 00058797 auipc a5,0x58 + c001c808: 1e47b787 fld fa5,484(a5) # c00749e8 <_erodata+0x8> + c001c80c: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001c810: f2000753 fmv.d.x fa4,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10650 return -1; - c001c644: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10641 + c001c814: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10649 *pres = JS_FLOAT64_NAN; - c001c646: 12e7f7d3 fmul.d fa5,fa5,fa4 - c001c64a: a01c fsd fa5,0(s0) + c001c816: 12e7f7d3 fmul.d fa5,fa5,fa4 + c001c81a: a01c fsd fa5,0(s0) JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10686 -} - c001c64c: 60a6 ld ra,72(sp) - c001c64e: 6406 ld s0,64(sp) - c001c650: 74e2 ld s1,56(sp) - c001c652: 7942 ld s2,48(sp) - c001c654: 6161 addi sp,sp,80 - c001c656: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10694 +} + c001c81c: 60a6 ld ra,72(sp) + c001c81e: 6406 ld s0,64(sp) + c001c820: 74e2 ld s1,56(sp) + c001c822: 7942 ld s2,48(sp) + c001c824: 6161 addi sp,sp,80 + c001c826: 8082 ret __JS_ToFloat64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10645 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10653 switch(tag) { - c001c658: 01278c63 beq a5,s2,c001c670 - c001c65c: 5759 li a4,-10 - c001c65e: 00e78b63 beq a5,a4,c001c674 - c001c662: e785 bnez a5,c001c68a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10647 + c001c828: 01278c63 beq a5,s2,c001c840 + c001c82c: 5759 li a4,-10 + c001c82e: 00e78b63 beq a5,a4,c001c844 + c001c832: e785 bnez a5,c001c85a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10655 d = JS_VALUE_GET_INT(val); - c001c664: 5782 lw a5,32(sp) - c001c666: d20787d3 fcvt.d.w fa5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10650 + c001c834: 5782 lw a5,32(sp) + c001c836: d20787d3 fcvt.d.w fa5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10658 d = JS_VALUE_GET_FLOAT64(val); - c001c66a: ac3e fsd fa5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10668 + c001c83a: ac3e fsd fa5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10676 *pres = d; - c001c66c: 27e2 fld fa5,24(sp) - c001c66e: bf79 j c001c60c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10650 + c001c83c: 27e2 fld fa5,24(sp) + c001c83e: bf79 j c001c7dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10658 d = JS_VALUE_GET_FLOAT64(val); - c001c670: 3782 fld fa5,32(sp) - c001c672: bfe5 j c001c66a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10661 + c001c840: 3782 fld fa5,32(sp) + c001c842: bfe5 j c001c83a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10669 bf_get_float64(&p->num, &d, BF_RNDN); - c001c674: 082c addi a1,sp,24 - c001c676: 4601 li a2,0 - c001c678: 0521 addi a0,a0,8 - c001c67a: 1c9330ef jal ra,c0050042 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10662 + c001c844: 082c addi a1,sp,24 + c001c846: 4601 li a2,0 + c001c848: 0521 addi a0,a0,8 + c001c84a: 1c9330ef jal ra,c0050212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10670 JS_FreeValue(ctx, val); - c001c67e: 7582 ld a1,32(sp) - c001c680: 7622 ld a2,40(sp) - c001c682: 8526 mv a0,s1 - c001c684: cb4eb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10664 + c001c84e: 7582 ld a1,32(sp) + c001c850: 7622 ld a2,40(sp) + c001c852: 8526 mv a0,s1 + c001c854: bd2eb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10672 break; - c001c688: b7d5 j c001c66c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10666 + c001c858: b7d5 j c001c83c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10674 abort(); - c001c68a: 180390ef jal ra,c005580a + c001c85a: 180390ef jal ra,c00559da -00000000c001c68e : +00000000c001c85e : JS_ToFloat64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10689 -{ - c001c68e: 7139 addi sp,sp,-64 - c001c690: f822 sd s0,48(sp) - c001c692: f426 sd s1,40(sp) - c001c694: 842a mv s0,a0 - c001c696: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10697 +{ + c001c85e: 7139 addi sp,sp,-64 + c001c860: f822 sd s0,48(sp) + c001c862: f426 sd s1,40(sp) + c001c864: 842a mv s0,a0 + c001c866: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10698 return JS_ToFloat64Free(ctx, pres, JS_DupValue(ctx, val)); - c001c698: 8532 mv a0,a2 - c001c69a: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10689 + c001c868: 8532 mv a0,a2 + c001c86a: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10697 { - c001c69c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10690 + c001c86c: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10698 return JS_ToFloat64Free(ctx, pres, JS_DupValue(ctx, val)); - c001c69e: fd1e90ef jal ra,c000666e - c001c6a2: 862a mv a2,a0 - c001c6a4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10691 -} - c001c6a6: 7442 ld s0,48(sp) - c001c6a8: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10690 + c001c86e: eefe90ef jal ra,c000675c + c001c872: 862a mv a2,a0 + c001c874: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10699 +} + c001c876: 7442 ld s0,48(sp) + c001c878: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10698 return JS_ToFloat64Free(ctx, pres, JS_DupValue(ctx, val)); - c001c6aa: 86ae mv a3,a1 - c001c6ac: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10691 + c001c87a: 86ae mv a3,a1 + c001c87c: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10699 } - c001c6ae: 74a2 ld s1,40(sp) - c001c6b0: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10690 + c001c87e: 74a2 ld s1,40(sp) + c001c880: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10698 return JS_ToFloat64Free(ctx, pres, JS_DupValue(ctx, val)); - c001c6b2: f3dff06f j c001c5ee + c001c882: f3dff06f j c001c7be -00000000c001c6b6 : +00000000c001c886 : JS_NumberIsInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11238 { - c001c6b6: 7139 addi sp,sp,-64 - c001c6b8: e432 sd a2,8(sp) - c001c6ba: fc06 sd ra,56(sp) - c001c6bc: b422 fsd fs0,40(sp) - c001c6be: e02e sd a1,0(sp) + c001c886: 7139 addi sp,sp,-64 + c001c888: e432 sd a2,8(sp) + c001c88a: fc06 sd ra,56(sp) + c001c88c: b422 fsd fs0,40(sp) + c001c88e: e02e sd a1,0(sp) JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c001c6c0: 2601 sext.w a2,a2 + c001c890: 2601 sext.w a2,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c001c6c2: c601 beqz a2,c001c6ca - c001c6c4: 479d li a5,7 - c001c6c6: 04f61363 bne a2,a5,c001c70c + c001c892: c601 beqz a2,c001c89a + c001c894: 479d li a5,7 + c001c896: 04f61363 bne a2,a5,c001c8dc JS_NumberIsInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11242 if (unlikely(JS_ToFloat64(ctx, &d, val))) - c001c6ca: 6602 ld a2,0(sp) - c001c6cc: 66a2 ld a3,8(sp) - c001c6ce: 082c addi a1,sp,24 - c001c6d0: fbfff0ef jal ra,c001c68e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11235 + c001c89a: 6602 ld a2,0(sp) + c001c89c: 66a2 ld a3,8(sp) + c001c89e: 082c addi a1,sp,24 + c001c8a0: fbfff0ef jal ra,c001c85e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11243 return -1; - c001c6d4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11234 + c001c8a4: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11242 if (unlikely(JS_ToFloat64(ctx, &d, val))) - c001c6d6: ed05 bnez a0,c001c70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11236 + c001c8a6: ed05 bnez a0,c001c8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 return isfinite(d) && floor(d) == d; - c001c6d8: 00058797 auipc a5,0x58 - c001c6dc: 0b07b787 fld fa5,176(a5) # c0074788 <_erodata+0x8> - c001c6e0: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001c6e4: 2462 fld fs0,24(sp) - c001c6e6: a2f427d3 feq.d a5,fs0,fa5 - c001c6ea: e38d bnez a5,c001c70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11236 (discriminator 1) - c001c6ec: 22f797d3 fneg.d fa5,fa5 - c001c6f0: a2f427d3 feq.d a5,fs0,fa5 - c001c6f4: ef81 bnez a5,c001c70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11236 (discriminator 3) - c001c6f6: a28427d3 feq.d a5,fs0,fs0 - c001c6fa: cb89 beqz a5,c001c70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11236 (discriminator 5) - c001c6fc: 22840553 fmv.d fa0,fs0 - c001c700: 1253b0ef jal ra,c0058024 - c001c704: a2a42753 feq.d a4,fs0,fa0 - c001c708: 4785 li a5,1 - c001c70a: e311 bnez a4,c001c70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11236 (discriminator 8) - c001c70c: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11237 -} - c001c70e: 70e2 ld ra,56(sp) - c001c710: 3422 fld fs0,40(sp) - c001c712: 853e mv a0,a5 - c001c714: 6121 addi sp,sp,64 - c001c716: 8082 ret - -00000000c001c718 : + c001c8a8: 00058797 auipc a5,0x58 + c001c8ac: 1407b787 fld fa5,320(a5) # c00749e8 <_erodata+0x8> + c001c8b0: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001c8b4: 2462 fld fs0,24(sp) + c001c8b6: a2f427d3 feq.d a5,fs0,fa5 + c001c8ba: e38d bnez a5,c001c8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 (discriminator 1) + c001c8bc: 22f797d3 fneg.d fa5,fa5 + c001c8c0: a2f427d3 feq.d a5,fs0,fa5 + c001c8c4: ef81 bnez a5,c001c8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 (discriminator 3) + c001c8c6: a28427d3 feq.d a5,fs0,fs0 + c001c8ca: cb89 beqz a5,c001c8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 (discriminator 5) + c001c8cc: 22840553 fmv.d fa0,fs0 + c001c8d0: 1253b0ef jal ra,c00581f4 + c001c8d4: a2a42753 feq.d a4,fs0,fa0 + c001c8d8: 4785 li a5,1 + c001c8da: e311 bnez a4,c001c8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11244 (discriminator 8) + c001c8dc: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11245 +} + c001c8de: 70e2 ld ra,56(sp) + c001c8e0: 3422 fld fs0,40(sp) + c001c8e2: 853e mv a0,a5 + c001c8e4: 6121 addi sp,sp,64 + c001c8e6: 8082 ret + +00000000c001c8e8 : js_number_isInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40949 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40957 ret = JS_NumberIsInteger(ctx, argv[0]); - c001c718: 630c ld a1,0(a4) - c001c71a: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40947 + c001c8e8: 630c ld a1,0(a4) + c001c8ea: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40955 { - c001c71c: 7139 addi sp,sp,-64 - c001c71e: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40949 + c001c8ec: 7139 addi sp,sp,-64 + c001c8ee: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40957 ret = JS_NumberIsInteger(ctx, argv[0]); - c001c720: f97ff0ef jal ra,c001c6b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40950 + c001c8f0: f97ff0ef jal ra,c001c886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40958 if (ret < 0) - c001c724: 00055a63 bgez a0,c001c738 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40951 + c001c8f4: 00055a63 bgez a0,c001c908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40959 return JS_EXCEPTION; - c001c728: e802 sd zero,16(sp) - c001c72a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40954 -} - c001c72c: 70e2 ld ra,56(sp) - c001c72e: ec3e sd a5,24(sp) - c001c730: 6542 ld a0,16(sp) - c001c732: 65e2 ld a1,24(sp) - c001c734: 6121 addi sp,sp,64 - c001c736: 8082 ret + c001c8f8: e802 sd zero,16(sp) + c001c8fa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40962 +} + c001c8fc: 70e2 ld ra,56(sp) + c001c8fe: ec3e sd a5,24(sp) + c001c900: 6542 ld a0,16(sp) + c001c902: 65e2 ld a1,24(sp) + c001c904: 6121 addi sp,sp,64 + c001c906: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001c738: 00a03533 snez a0,a0 - c001c73c: d202 sw zero,36(sp) - c001c73e: d02a sw a0,32(sp) - c001c740: 7782 ld a5,32(sp) - c001c742: e83e sd a5,16(sp) - c001c744: 4785 li a5,1 - c001c746: b7dd j c001c72c - -00000000c001c748 : + c001c908: 00a03533 snez a0,a0 + c001c90c: d202 sw zero,36(sp) + c001c90e: d02a sw a0,32(sp) + c001c910: 7782 ld a5,32(sp) + c001c912: e83e sd a5,16(sp) + c001c914: 4785 li a5,1 + c001c916: b7dd j c001c8fc + +00000000c001c918 : js_Date_UTC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49807 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49815 { - c001c748: 7131 addi sp,sp,-192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49809 + c001c918: 7131 addi sp,sp,-192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49817 double fields[] = { 0, 0, 1, 0, 0, 0, 0 }; - c001c74a: 00058797 auipc a5,0x58 - c001c74e: 04e7b787 fld fa5,78(a5) # c0074798 <_erodata+0x18> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49807 + c001c91a: 00058797 auipc a5,0x58 + c001c91e: 0de7b787 fld fa5,222(a5) # c00749f8 <_erodata+0x18> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49815 { - c001c752: fd06 sd ra,184(sp) - c001c754: f922 sd s0,176(sp) - c001c756: f526 sd s1,168(sp) - c001c758: f14a sd s2,160(sp) - c001c75a: ed4e sd s3,152(sp) - c001c75c: e952 sd s4,144(sp) - c001c75e: e556 sd s5,136(sp) - c001c760: e15a sd s6,128(sp) - c001c762: bca2 fsd fs0,120(sp) - c001c764: b8a6 fsd fs1,112(sp) - c001c766: b4ca fsd fs2,104(sp) - c001c768: b0ce fsd fs3,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49809 + c001c922: fd06 sd ra,184(sp) + c001c924: f922 sd s0,176(sp) + c001c926: f526 sd s1,168(sp) + c001c928: f14a sd s2,160(sp) + c001c92a: ed4e sd s3,152(sp) + c001c92c: e952 sd s4,144(sp) + c001c92e: e556 sd s5,136(sp) + c001c930: e15a sd s6,128(sp) + c001c932: bca2 fsd fs0,120(sp) + c001c934: b8a6 fsd fs1,112(sp) + c001c936: b4ca fsd fs2,104(sp) + c001c938: b0ce fsd fs3,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49817 double fields[] = { 0, 0, 1, 0, 0, 0, 0 }; - c001c76a: f402 sd zero,40(sp) - c001c76c: f802 sd zero,48(sp) - c001c76e: bc3e fsd fa5,56(sp) - c001c770: e082 sd zero,64(sp) - c001c772: e482 sd zero,72(sp) - c001c774: e882 sd zero,80(sp) - c001c776: ec82 sd zero,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49814 + c001c93a: f402 sd zero,40(sp) + c001c93c: f802 sd zero,48(sp) + c001c93e: bc3e fsd fa5,56(sp) + c001c940: e082 sd zero,64(sp) + c001c942: e482 sd zero,72(sp) + c001c944: e882 sd zero,80(sp) + c001c946: ec82 sd zero,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49822 if (n == 0) - c001c778: ee91 bnez a3,c001c794 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49815 + c001c948: ee91 bnez a3,c001c964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49823 return JS_NAN; - c001c77a: 00058797 auipc a5,0x58 - c001c77e: 00e7b787 fld fa5,14(a5) # c0074788 <_erodata+0x8> - c001c782: 12f7f7d3 fmul.d fa5,fa5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49822 + c001c94a: 00058797 auipc a5,0x58 + c001c94e: 09e7b787 fld fa5,158(a5) # c00749e8 <_erodata+0x8> + c001c952: 12f7f7d3 fmul.d fa5,fa5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49830 return JS_NAN; - c001c786: f2000753 fmv.d.x fa4,zero - c001c78a: 479d li a5,7 - c001c78c: 12e7f7d3 fmul.d fa5,fa5,fa4 - c001c790: ac3e fsd fa5,24(sp) - c001c792: a8bd j c001c810 - c001c794: 479d li a5,7 - c001c796: 89aa mv s3,a0 - c001c798: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49816 - if (n > 7) - c001c79a: 0006841b sext.w s0,a3 - c001c79e: 00d7d363 bge a5,a3,c001c7a4 - c001c7a2: 441d li s0,7 + c001c956: f2000753 fmv.d.x fa4,zero + c001c95a: 479d li a5,7 + c001c95c: 12e7f7d3 fmul.d fa5,fa5,fa4 + c001c960: ac3e fsd fa5,24(sp) + c001c962: a8bd j c001c9e0 + c001c964: 479d li a5,7 + c001c966: 89aa mv s3,a0 + c001c968: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49824 + if (n > 7) + c001c96a: 0006841b sext.w s0,a3 + c001c96e: 00d7d363 bge a5,a3,c001c974 + c001c972: 441d li s0,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c001c7a4: f20004d3 fmv.d.x fs1,zero - c001c7a8: 02810913 addi s2,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49818 + c001c974: f20004d3 fmv.d.x fs1,zero + c001c978: 02810913 addi s2,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49826 for(i = 0; i < n; i++) { - c001c7ac: 4481 li s1,0 - c001c7ae: 8aca mv s5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49821 + c001c97c: 4481 li s1,0 + c001c97e: 8aca mv s5,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49829 if (!isfinite(a)) - c001c7b0: 00058797 auipc a5,0x58 - c001c7b4: fd87b407 fld fs0,-40(a5) # c0074788 <_erodata+0x8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49824 + c001c980: 00058797 auipc a5,0x58 + c001c984: 0687b407 fld fs0,104(a5) # c00749e8 <_erodata+0x8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c001c7b8: 00058797 auipc a5,0x58 - c001c7bc: 0507b907 fld fs2,80(a5) # c0074808 <_erodata+0x88> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49825 + c001c988: 00058797 auipc a5,0x58 + c001c98c: 0e07b907 fld fs2,224(a5) # c0074a68 <_erodata+0x88> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49833 fields[0] += 1900; - c001c7c0: 00058797 auipc a5,0x58 - c001c7c4: 0507b987 fld fs3,80(a5) # c0074810 <_erodata+0x90> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49818 (discriminator 1) + c001c990: 00058797 auipc a5,0x58 + c001c994: 0e07b987 fld fs3,224(a5) # c0074a70 <_erodata+0x90> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49826 (discriminator 1) for(i = 0; i < n; i++) { - c001c7c8: 00048b1b sext.w s6,s1 - c001c7cc: 028b4663 blt s6,s0,c001c7f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49827 + c001c998: 00048b1b sext.w s6,s1 + c001c99c: 028b4663 blt s6,s0,c001c9c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49835 return JS_NewFloat64(ctx, set_date_fields(fields, 0)); - c001c7d0: 4581 li a1,0 - c001c7d2: 8556 mv a0,s5 - c001c7d4: 92cea0ef jal ra,c0006900 + c001c9a0: 4581 li a1,0 + c001c9a2: 8556 mv a0,s5 + c001c9a4: 84aea0ef jal ra,c00069ee JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001c7d8: c2051653 fcvt.w.d a2,fa0,rtz + c001c9a8: c2051653 fcvt.w.d a2,fa0,rtz js_Date_UTC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49827 - c001c7dc: e20507d3 fmv.x.d a5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49835 + c001c9ac: e20507d3 fmv.x.d a5,fa0 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001c7e0: d20607d3 fcvt.d.w fa5,a2 + c001c9b0: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001c7e4: 0006071b sext.w a4,a2 + c001c9b4: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001c7e8: e2078653 fmv.x.d a2,fa5 - c001c7ec: 08c79463 bne a5,a2,c001c874 + c001c9b8: e2078653 fmv.x.d a2,fa5 + c001c9bc: 08c79463 bne a5,a2,c001ca44 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001c7f0: ce02 sw zero,28(sp) - c001c7f2: 4781 li a5,0 + c001c9c0: ce02 sw zero,28(sp) + c001c9c2: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001c7f4: cc3a sw a4,24(sp) - c001c7f6: a829 j c001c810 + c001c9c4: cc3a sw a4,24(sp) + c001c9c6: a829 j c001c9e0 js_Date_UTC(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49819 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49827 if (JS_ToFloat64(ctx, &a, argv[i])) - c001c7f8: 00449793 slli a5,s1,0x4 - c001c7fc: 97d2 add a5,a5,s4 - c001c7fe: 6390 ld a2,0(a5) - c001c800: 6794 ld a3,8(a5) - c001c802: 080c addi a1,sp,16 - c001c804: 854e mv a0,s3 - c001c806: e89ff0ef jal ra,c001c68e - c001c80a: c505 beqz a0,c001c832 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49820 - return JS_EXCEPTION; - c001c80c: ec02 sd zero,24(sp) - c001c80e: 4799 li a5,6 + c001c9c8: 00449793 slli a5,s1,0x4 + c001c9cc: 97d2 add a5,a5,s4 + c001c9ce: 6390 ld a2,0(a5) + c001c9d0: 6794 ld a3,8(a5) + c001c9d2: 080c addi a1,sp,16 + c001c9d4: 854e mv a0,s3 + c001c9d6: e89ff0ef jal ra,c001c85e + c001c9da: c505 beqz a0,c001ca02 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49828 + return JS_EXCEPTION; + c001c9dc: ec02 sd zero,24(sp) + c001c9de: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49836 } - c001c810: 70ea ld ra,184(sp) - c001c812: 744a ld s0,176(sp) - c001c814: f03e sd a5,32(sp) - c001c816: 6562 ld a0,24(sp) - c001c818: 7582 ld a1,32(sp) - c001c81a: 74aa ld s1,168(sp) - c001c81c: 790a ld s2,160(sp) - c001c81e: 69ea ld s3,152(sp) - c001c820: 6a4a ld s4,144(sp) - c001c822: 6aaa ld s5,136(sp) - c001c824: 6b0a ld s6,128(sp) - c001c826: 3466 fld fs0,120(sp) - c001c828: 34c6 fld fs1,112(sp) - c001c82a: 3926 fld fs2,104(sp) - c001c82c: 3986 fld fs3,96(sp) - c001c82e: 6129 addi sp,sp,192 - c001c830: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49821 + c001c9e0: 70ea ld ra,184(sp) + c001c9e2: 744a ld s0,176(sp) + c001c9e4: f03e sd a5,32(sp) + c001c9e6: 6562 ld a0,24(sp) + c001c9e8: 7582 ld a1,32(sp) + c001c9ea: 74aa ld s1,168(sp) + c001c9ec: 790a ld s2,160(sp) + c001c9ee: 69ea ld s3,152(sp) + c001c9f0: 6a4a ld s4,144(sp) + c001c9f2: 6aaa ld s5,136(sp) + c001c9f4: 6b0a ld s6,128(sp) + c001c9f6: 3466 fld fs0,120(sp) + c001c9f8: 34c6 fld fs1,112(sp) + c001c9fa: 3926 fld fs2,104(sp) + c001c9fc: 3986 fld fs3,96(sp) + c001c9fe: 6129 addi sp,sp,192 + c001ca00: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49829 if (!isfinite(a)) - c001c832: 128477d3 fmul.d fa5,fs0,fs0 - c001c836: 2542 fld fa0,16(sp) - c001c838: a2f527d3 feq.d a5,fa0,fa5 - c001c83c: f7a9 bnez a5,c001c786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49821 (discriminator 1) - c001c83e: 22f79753 fneg.d fa4,fa5 - c001c842: a2e527d3 feq.d a5,fa0,fa4 - c001c846: f3a1 bnez a5,c001c786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49821 (discriminator 2) - c001c848: a2a527d3 feq.d a5,fa0,fa0 - c001c84c: df8d beqz a5,c001c786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49823 + c001ca02: 128477d3 fmul.d fa5,fs0,fs0 + c001ca06: 2542 fld fa0,16(sp) + c001ca08: a2f527d3 feq.d a5,fa0,fa5 + c001ca0c: f7a9 bnez a5,c001c956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49829 (discriminator 1) + c001ca0e: 22f79753 fneg.d fa4,fa5 + c001ca12: a2e527d3 feq.d a5,fa0,fa4 + c001ca16: f3a1 bnez a5,c001c956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49829 (discriminator 2) + c001ca18: a2a527d3 feq.d a5,fa0,fa0 + c001ca1c: df8d beqz a5,c001c956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49831 fields[i] = trunc(a); - c001c84e: 09f3b0ef jal ra,c00580ec - c001c852: 00a93027 fsd fa0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49824 + c001ca1e: 09f3b0ef jal ra,c00582bc + c001ca22: 00a93027 fsd fa0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c001c856: 000b1c63 bnez s6,c001c86e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49824 (discriminator 1) - c001c85a: 37a2 fld fa5,40(sp) - c001c85c: a2f487d3 fle.d a5,fs1,fa5 - c001c860: c799 beqz a5,c001c86e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49824 (discriminator 2) - c001c862: a32797d3 flt.d a5,fa5,fs2 - c001c866: c781 beqz a5,c001c86e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49825 + c001ca26: 000b1c63 bnez s6,c001ca3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 (discriminator 1) + c001ca2a: 37a2 fld fa5,40(sp) + c001ca2c: a2f487d3 fle.d a5,fs1,fa5 + c001ca30: c799 beqz a5,c001ca3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49832 (discriminator 2) + c001ca32: a32797d3 flt.d a5,fa5,fs2 + c001ca36: c781 beqz a5,c001ca3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49833 fields[0] += 1900; - c001c868: 0337f7d3 fadd.d fa5,fa5,fs3 - c001c86c: b43e fsd fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49818 (discriminator 2) + c001ca38: 0337f7d3 fadd.d fa5,fa5,fs3 + c001ca3c: b43e fsd fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49826 (discriminator 2) for(i = 0; i < n; i++) { - c001c86e: 0485 addi s1,s1,1 - c001c870: 0921 addi s2,s2,8 - c001c872: bf99 j c001c7c8 + c001ca3e: 0485 addi s1,s1,1 + c001ca40: 0921 addi s2,s2,8 + c001ca42: bf99 j c001c998 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001c874: 0007871b sext.w a4,a5 - c001c878: ac2a fsd fa0,24(sp) + c001ca44: 0007871b sext.w a4,a5 + c001ca48: ac2a fsd fa0,24(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001c87a: 479d li a5,7 - c001c87c: bfa5 j c001c7f4 + c001ca4a: 479d li a5,7 + c001ca4c: bfa5 j c001c9c4 -00000000c001c87e : +00000000c001ca4e : JS_ThisTimeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49415 { - c001c87e: 1101 addi sp,sp,-32 - c001c880: e436 sd a3,8(sp) - c001c882: ec06 sd ra,24(sp) - c001c884: e032 sd a2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 + c001ca4e: 1101 addi sp,sp,-32 + c001ca50: e436 sd a3,8(sp) + c001ca52: ec06 sd ra,24(sp) + c001ca54: e032 sd a2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49416 if (JS_VALUE_GET_TAG(this_val) == JS_TAG_OBJECT) { - c001c886: 2681 sext.w a3,a3 - c001c888: 57fd li a5,-1 - c001c88a: 02f69363 bne a3,a5,c001c8b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49410 + c001ca56: 2681 sext.w a3,a3 + c001ca58: 57fd li a5,-1 + c001ca5a: 02f69363 bne a3,a5,c001ca80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49418 if (p->class_id == JS_CLASS_DATE && JS_IsNumber(p->u.object_data)) - c001c88e: 00665683 lhu a3,6(a2) # 10006 <__clzdi2-0xbffefffa> - c001c892: 4729 li a4,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49409 + c001ca5e: 00665683 lhu a3,6(a2) # 10006 <__clzdi2-0xbffefffa> + c001ca62: 4729 li a4,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49417 JSObject *p = JS_VALUE_GET_OBJ(this_val); - c001c894: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49410 + c001ca64: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49418 if (p->class_id == JS_CLASS_DATE && JS_IsNumber(p->u.object_data)) - c001c896: 00e69d63 bne a3,a4,c001c8b0 + c001ca66: 00e69d63 bne a3,a4,c001ca80 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 (discriminator 1) int tag = JS_VALUE_GET_TAG(v); - c001c89a: 5e18 lw a4,56(a2) + c001ca6a: 5e18 lw a4,56(a2) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 (discriminator 1) return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c001c89c: c701 beqz a4,c001c8a4 + c001ca6c: c701 beqz a4,c001ca74 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 - c001c89e: 469d li a3,7 - c001c8a0: 00d71863 bne a4,a3,c001c8b0 + c001ca6e: 469d li a3,7 + c001ca70: 00d71863 bne a4,a3,c001ca80 JS_ThisTimeValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49415 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49423 } - c001c8a4: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49411 + c001ca74: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49419 return JS_ToFloat64(ctx, valp, p->u.object_data); - c001c8a6: 7b90 ld a2,48(a5) - c001c8a8: 7f94 ld a3,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49415 + c001ca76: 7b90 ld a2,48(a5) + c001ca78: 7f94 ld a3,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49423 } - c001c8aa: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49411 + c001ca7a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49419 return JS_ToFloat64(ctx, valp, p->u.object_data); - c001c8ac: de3ff06f j c001c68e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49413 + c001ca7c: de3ff06f j c001c85e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49421 JS_ThrowTypeError(ctx, "not a Date object"); - c001c8b0: 00041597 auipc a1,0x41 - c001c8b4: 36058593 addi a1,a1,864 # c005dc10 - c001c8b8: b3ff60ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49415 + c001ca80: 00041597 auipc a1,0x41 + c001ca84: 3c058593 addi a1,a1,960 # c005de40 + c001ca88: a5df60ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49423 } - c001c8bc: 60e2 ld ra,24(sp) - c001c8be: 557d li a0,-1 - c001c8c0: 6105 addi sp,sp,32 - c001c8c2: 8082 ret + c001ca8c: 60e2 ld ra,24(sp) + c001ca8e: 557d li a0,-1 + c001ca90: 6105 addi sp,sp,32 + c001ca92: 8082 ret -00000000c001c8c4 : +00000000c001ca94 : get_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49476 { - c001c8c4: 7119 addi sp,sp,-128 - c001c8c6: 8832 mv a6,a2 - c001c8c8: e0da sd s6,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49472 + c001ca94: 7119 addi sp,sp,-128 + c001ca96: 8832 mv a6,a2 + c001ca98: e0da sd s6,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49480 if (JS_ThisTimeValue(ctx, &dval, obj)) - c001c8ca: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49468 + c001ca9a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49476 { - c001c8cc: 8b36 mv s6,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49472 + c001ca9c: 8b36 mv s6,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49480 if (JS_ThisTimeValue(ctx, &dval, obj)) - c001c8ce: 082c addi a1,sp,24 - c001c8d0: 86c2 mv a3,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49468 -{ - c001c8d2: f8a2 sd s0,112(sp) - c001c8d4: f4a6 sd s1,104(sp) - c001c8d6: fc86 sd ra,120(sp) - c001c8d8: f0ca sd s2,96(sp) - c001c8da: ecce sd s3,88(sp) - c001c8dc: e8d2 sd s4,80(sp) - c001c8de: e4d6 sd s5,72(sp) - c001c8e0: fc5e sd s7,56(sp) - c001c8e2: f862 sd s8,48(sp) - c001c8e4: f466 sd s9,40(sp) - c001c8e6: 84ba mv s1,a4 - c001c8e8: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49472 + c001ca9e: 082c addi a1,sp,24 + c001caa0: 86c2 mv a3,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49476 +{ + c001caa2: f8a2 sd s0,112(sp) + c001caa4: f4a6 sd s1,104(sp) + c001caa6: fc86 sd ra,120(sp) + c001caa8: f0ca sd s2,96(sp) + c001caaa: ecce sd s3,88(sp) + c001caac: e8d2 sd s4,80(sp) + c001caae: e4d6 sd s5,72(sp) + c001cab0: fc5e sd s7,56(sp) + c001cab2: f862 sd s8,48(sp) + c001cab4: f466 sd s9,40(sp) + c001cab6: 84ba mv s1,a4 + c001cab8: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49480 if (JS_ThisTimeValue(ctx, &dval, obj)) - c001c8ea: f95ff0ef jal ra,c001c87e - c001c8ee: 16051663 bnez a0,c001ca5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49475 + c001caba: f95ff0ef jal ra,c001ca4e + c001cabe: 16051663 bnez a0,c001cc2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49483 if (isnan(dval)) { - c001c8f2: 27e2 fld fa5,24(sp) - c001c8f4: a2f7a7d3 feq.d a5,fa5,fa5 - c001c8f8: e3cd bnez a5,c001c99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49476 + c001cac2: 27e2 fld fa5,24(sp) + c001cac4: a2f7a7d3 feq.d a5,fa5,fa5 + c001cac8: e3cd bnez a5,c001cb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49484 if (!force) - c001c8fa: 14040263 beqz s0,c001ca3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49470 - int64_t d, days, wd, y, i, md, h, m, s, ms, tz = 0; - c001c8fe: 4c01 li s8,0 + c001caca: 14040263 beqz s0,c001cc0e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49478 + int64_t d, days, wd, y, i, md, h, m, s, ms, tz = 0; + c001cace: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49486 d = 0; /* initialize all fields to 0 */ - c001c900: 4401 li s0,0 + c001cad0: 4401 li s0,0 math_mod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49401 int64_t m = a % b; - c001c902: 05266cb7 lui s9,0x5266 - c001c906: c00c8c93 addi s9,s9,-1024 # 5265c00 <__clzdi2-0xbad9a400> - c001c90a: 03946733 rem a4,s0,s9 + c001cad2: 05266cb7 lui s9,0x5266 + c001cad6: c00c8c93 addi s9,s9,-1024 # 5265c00 <__clzdi2-0xbad9a400> + c001cada: 03946733 rem a4,s0,s9 get_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49500 s = h % 60; - c001c90e: 03c00493 li s1,60 + c001cade: 03c00493 li s1,60 math_mod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49402 return m + (m < 0) * b; - c001c912: 43f75793 srai a5,a4,0x3f - c001c916: 0197f7b3 and a5,a5,s9 - c001c91a: 97ba add a5,a5,a4 + c001cae2: 43f75793 srai a5,a4,0x3f + c001cae6: 0197f7b3 and a5,a5,s9 + c001caea: 97ba add a5,a5,a4 get_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49498 ms = h % 1000; - c001c91c: 3e800713 li a4,1000 - c001c920: 02e7e933 rem s2,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49489 + c001caec: 3e800713 li a4,1000 + c001caf0: 02e7e933 rem s2,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49497 days = (d - h) / 86400000; - c001c924: 8c1d sub s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49491 + c001caf4: 8c1d sub s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49499 h = (h - ms) / 1000; - c001c926: 412787b3 sub a5,a5,s2 - c001c92a: 02e7c7b3 div a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49492 + c001caf6: 412787b3 sub a5,a5,s2 + c001cafa: 02e7c7b3 div a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49500 s = h % 60; - c001c92e: 0297e9b3 rem s3,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49493 + c001cafe: 0297e9b3 rem s3,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49501 h = (h - s) / 60; - c001c932: 413787b3 sub a5,a5,s3 - c001c936: 0297c7b3 div a5,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49494 + c001cb02: 413787b3 sub a5,a5,s3 + c001cb06: 0297c7b3 div a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49502 m = h % 60; - c001c93a: 0297ea33 rem s4,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49489 + c001cb0a: 0297ea33 rem s4,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49497 days = (d - h) / 86400000; - c001c93e: 03944cb3 div s9,s0,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49495 + c001cb0e: 03944cb3 div s9,s0,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49503 h = (h - m) / 60; - c001c942: 414787b3 sub a5,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49496 + c001cb12: 414787b3 sub a5,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49504 wd = math_mod(days + 4, 7); /* week day */ - c001c946: 004c8a93 addi s5,s9,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49495 + c001cb16: 004c8a93 addi s5,s9,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49503 h = (h - m) / 60; - c001c94a: 0297c4b3 div s1,a5,s1 + c001cb1a: 0297c4b3 div s1,a5,s1 math_mod(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49401 int64_t m = a % b; - c001c94e: 479d li a5,7 - c001c950: 02fae7b3 rem a5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49394 + c001cb1e: 479d li a5,7 + c001cb20: 02fae7b3 rem a5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49402 return m + (m < 0) * b; - c001c954: 4a81 li s5,0 - c001c956: 0007d363 bgez a5,c001c95c - c001c95a: 4a9d li s5,7 - c001c95c: 9abe add s5,s5,a5 + c001cb24: 4a81 li s5,0 + c001cb26: 0007d363 bgez a5,c001cb2c + c001cb2a: 4a9d li s5,7 + c001cb2c: 9abe add s5,s5,a5 year_from_days(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49450 y = floor_div(d * 10000, 3652425) + 1970; - c001c95e: 6789 lui a5,0x2 - c001c960: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> - c001c964: 02fc87b3 mul a5,s9,a5 + c001cb2e: 6789 lui a5,0x2 + c001cb30: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> + c001cb34: 02fc87b3 mul a5,s9,a5 floor_div(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49407 int64_t m = a % b; - c001c968: 0037c437 lui s0,0x37c - c001c96c: b4940693 addi a3,s0,-1207 # 37bb49 <__clzdi2-0xbfc844b7> - c001c970: 02d7e733 rem a4,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49400 + c001cb38: 0037c437 lui s0,0x37c + c001cb3c: b4940693 addi a3,s0,-1207 # 37bb49 <__clzdi2-0xbfc844b7> + c001cb40: 02d7e733 rem a4,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49408 return (a - (m + (m < 0) * b)) / b; - c001c974: 43f75413 srai s0,a4,0x3f - c001c978: 8f99 sub a5,a5,a4 - c001c97a: 8c75 and s0,s0,a3 - c001c97c: 40878433 sub s0,a5,s0 - c001c980: 02d44433 div s0,s0,a3 + c001cb44: 43f75413 srai s0,a4,0x3f + c001cb48: 8f99 sub a5,a5,a4 + c001cb4a: 8c75 and s0,s0,a3 + c001cb4c: 40878433 sub s0,a5,s0 + c001cb50: 02d44433 div s0,s0,a3 year_from_days(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49450 y = floor_div(d * 10000, 3652425) + 1970; - c001c984: 7b240413 addi s0,s0,1970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49446 + c001cb54: 7b240413 addi s0,s0,1970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49454 d1 = d - days_from_year(y); - c001c988: 8522 mv a0,s0 - c001c98a: ef5e90ef jal ra,c000687e - c001c98e: 40ac8bb3 sub s7,s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49447 + c001cb58: 8522 mv a0,s0 + c001cb5a: e13e90ef jal ra,c000696c + c001cb5e: 40ac8bb3 sub s7,s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49455 if (d1 < 0) { - c001c992: 020bd463 bgez s7,c001c9ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49448 + c001cb62: 020bd463 bgez s7,c001cb8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49456 y--; - c001c996: 147d addi s0,s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49449 + c001cb66: 147d addi s0,s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49457 d1 += days_in_year(y); - c001c998: bfc5 j c001c988 + c001cb68: bfc5 j c001cb58 get_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49488 d = dval; - c001c99a: c2279453 fcvt.l.d s0,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49470 + c001cb6a: c2279453 fcvt.l.d s0,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49478 int64_t d, days, wd, y, i, md, h, m, s, ms, tz = 0; - c001c99e: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49481 + c001cb6e: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49489 if (is_local) { - c001c9a0: d0ad beqz s1,c001c902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49482 + c001cb70: d0ad beqz s1,c001cad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49490 tz = -getTimezoneOffset(d); - c001c9a2: 8522 mv a0,s0 - c001c9a4: d0fe80ef jal ra,c00056b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49483 + c001cb72: 8522 mv a0,s0 + c001cb74: c2de80ef jal ra,c00057a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49491 d += tz * 60000; - c001c9a8: 67bd lui a5,0xf -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49482 + c001cb78: 67bd lui a5,0xf +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49490 tz = -getTimezoneOffset(d); - c001c9aa: 40a00c3b negw s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49483 + c001cb7a: 40a00c3b negw s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49491 d += tz * 60000; - c001c9ae: a6078793 addi a5,a5,-1440 # ea60 <__clzdi2-0xbfff15a0> - c001c9b2: 02fc07b3 mul a5,s8,a5 - c001c9b6: 943e add s0,s0,a5 - c001c9b8: b7a9 j c001c902 + c001cb7e: a6078793 addi a5,a5,-1440 # ea60 <__clzdi2-0xbfff15a0> + c001cb82: 02fc07b3 mul a5,s8,a5 + c001cb86: 943e add s0,s0,a5 + c001cb88: b7a9 j c001cad2 year_from_days(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49451 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49459 nd = days_in_year(y); - c001c9ba: 8522 mv a0,s0 - c001c9bc: f05e70ef jal ra,c00048c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49452 + c001cb8a: 8522 mv a0,s0 + c001cb8c: d35e70ef jal ra,c00048c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49460 if (d1 < nd) - c001c9c0: 00abc463 blt s7,a0,c001c9c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49455 + c001cb90: 00abc463 blt s7,a0,c001cb98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49463 y++; - c001c9c4: 0405 addi s0,s0,1 - c001c9c6: b7c9 j c001c988 - c001c9c8: 0004a697 auipc a3,0x4a - c001c9cc: 06068693 addi a3,a3,96 # c0066a28 + c001cb94: 0405 addi s0,s0,1 + c001cb96: b7c9 j c001cb58 + c001cb98: 0004a697 auipc a3,0x4a + c001cb9c: 0f068693 addi a3,a3,240 # c0066c88 get_date_fields(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 for(i = 0; i < 11; i++) { - c001c9d0: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49501 + c001cba0: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49509 if (i == 1) - c001c9d2: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49502 + c001cba2: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49510 md += days_in_year(y) - 365; - c001c9d4: e9350513 addi a0,a0,-365 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49499 + c001cba4: e9350513 addi a0,a0,-365 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 for(i = 0; i < 11; i++) { - c001c9d8: 462d li a2,11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49500 + c001cba8: 462d li a2,11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49508 md = month_days[i]; - c001c9da: 4298 lw a4,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49501 + c001cbaa: 4298 lw a4,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49509 if (i == 1) - c001c9dc: 00b79363 bne a5,a1,c001c9e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49502 + c001cbac: 00b79363 bne a5,a1,c001cbb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49510 md += days_in_year(y) - 365; - c001c9e0: 972a add a4,a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49503 + c001cbb0: 972a add a4,a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49511 if (days < md) - c001c9e2: 00ebc863 blt s7,a4,c001c9f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49499 (discriminator 2) + c001cbb2: 00ebc863 blt s7,a4,c001cbc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 (discriminator 2) for(i = 0; i < 11; i++) { - c001c9e6: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49505 (discriminator 2) + c001cbb6: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49513 (discriminator 2) days -= md; - c001c9e8: 40eb8bb3 sub s7,s7,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49499 (discriminator 2) + c001cbb8: 40eb8bb3 sub s7,s7,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 (discriminator 2) for(i = 0; i < 11; i++) { - c001c9ec: 0691 addi a3,a3,4 - c001c9ee: fec796e3 bne a5,a2,c001c9da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 + c001cbbc: 0691 addi a3,a3,4 + c001cbbe: fec796e3 bne a5,a2,c001cbaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49515 fields[0] = y; - c001c9f2: d22477d3 fcvt.d.l fa5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49509 + c001cbc2: d22477d3 fcvt.d.l fa5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49517 fields[2] = days + 1; - c001c9f6: 0b85 addi s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49516 + c001cbc6: 0b85 addi s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49524 return TRUE; - c001c9f8: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49507 + c001cbc8: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49515 fields[0] = y; - c001c9fa: 00fb3027 fsd fa5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49508 + c001cbca: 00fb3027 fsd fa5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49516 fields[1] = i; - c001c9fe: d227f7d3 fcvt.d.l fa5,a5 - c001ca02: 00fb3427 fsd fa5,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49509 + c001cbce: d227f7d3 fcvt.d.l fa5,a5 + c001cbd2: 00fb3427 fsd fa5,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49517 fields[2] = days + 1; - c001ca06: d22bf7d3 fcvt.d.l fa5,s7 - c001ca0a: 00fb3827 fsd fa5,16(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49510 + c001cbd6: d22bf7d3 fcvt.d.l fa5,s7 + c001cbda: 00fb3827 fsd fa5,16(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49518 fields[3] = h; - c001ca0e: d224f7d3 fcvt.d.l fa5,s1 - c001ca12: 00fb3c27 fsd fa5,24(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49511 + c001cbde: d224f7d3 fcvt.d.l fa5,s1 + c001cbe2: 00fb3c27 fsd fa5,24(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49519 fields[4] = m; - c001ca16: d22a77d3 fcvt.d.l fa5,s4 - c001ca1a: 02fb3027 fsd fa5,32(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49512 + c001cbe6: d22a77d3 fcvt.d.l fa5,s4 + c001cbea: 02fb3027 fsd fa5,32(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49520 fields[5] = s; - c001ca1e: d229f7d3 fcvt.d.l fa5,s3 - c001ca22: 02fb3427 fsd fa5,40(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49513 + c001cbee: d229f7d3 fcvt.d.l fa5,s3 + c001cbf2: 02fb3427 fsd fa5,40(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49521 fields[6] = ms; - c001ca26: d22977d3 fcvt.d.l fa5,s2 - c001ca2a: 02fb3827 fsd fa5,48(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49514 + c001cbf6: d22977d3 fcvt.d.l fa5,s2 + c001cbfa: 02fb3827 fsd fa5,48(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49522 fields[7] = wd; - c001ca2e: d22af7d3 fcvt.d.l fa5,s5 - c001ca32: 02fb3c27 fsd fa5,56(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49515 + c001cbfe: d22af7d3 fcvt.d.l fa5,s5 + c001cc02: 02fb3c27 fsd fa5,56(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49523 fields[8] = tz; - c001ca36: d22c77d3 fcvt.d.l fa5,s8 - c001ca3a: 04fb3027 fsd fa5,64(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49517 -} - c001ca3e: 70e6 ld ra,120(sp) - c001ca40: 8522 mv a0,s0 - c001ca42: 7446 ld s0,112(sp) - c001ca44: 74a6 ld s1,104(sp) - c001ca46: 7906 ld s2,96(sp) - c001ca48: 69e6 ld s3,88(sp) - c001ca4a: 6a46 ld s4,80(sp) - c001ca4c: 6aa6 ld s5,72(sp) - c001ca4e: 6b06 ld s6,64(sp) - c001ca50: 7be2 ld s7,56(sp) - c001ca52: 7c42 ld s8,48(sp) - c001ca54: 7ca2 ld s9,40(sp) - c001ca56: 6109 addi sp,sp,128 - c001ca58: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49473 + c001cc06: d22c77d3 fcvt.d.l fa5,s8 + c001cc0a: 04fb3027 fsd fa5,64(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49525 +} + c001cc0e: 70e6 ld ra,120(sp) + c001cc10: 8522 mv a0,s0 + c001cc12: 7446 ld s0,112(sp) + c001cc14: 74a6 ld s1,104(sp) + c001cc16: 7906 ld s2,96(sp) + c001cc18: 69e6 ld s3,88(sp) + c001cc1a: 6a46 ld s4,80(sp) + c001cc1c: 6aa6 ld s5,72(sp) + c001cc1e: 6b06 ld s6,64(sp) + c001cc20: 7be2 ld s7,56(sp) + c001cc22: 7c42 ld s8,48(sp) + c001cc24: 7ca2 ld s9,40(sp) + c001cc26: 6109 addi sp,sp,128 + c001cc28: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49481 return -1; - c001ca5a: 547d li s0,-1 - c001ca5c: b7cd j c001ca3e + c001cc2a: 547d li s0,-1 + c001cc2c: b7cd j c001cc0e -00000000c001ca5e : +00000000c001cc2e : get_date_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49557 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49565 { - c001ca5e: 7119 addi sp,sp,-128 - c001ca60: f8a2 sd s0,112(sp) - c001ca62: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49564 + c001cc2e: 7119 addi sp,sp,-128 + c001cc30: f8a2 sd s0,112(sp) + c001cc32: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49572 res = get_date_fields(ctx, this_val, fields, is_local, 0); - c001ca64: 00f47713 andi a4,s0,15 - c001ca68: 4781 li a5,0 - c001ca6a: 1034 addi a3,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49557 + c001cc34: 00f47713 andi a4,s0,15 + c001cc38: 4781 li a5,0 + c001cc3a: 1034 addi a3,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49565 { - c001ca6c: fc86 sd ra,120(sp) - c001ca6e: e02e sd a1,0(sp) - c001ca70: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49564 + c001cc3c: fc86 sd ra,120(sp) + c001cc3e: e02e sd a1,0(sp) + c001cc40: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49572 res = get_date_fields(ctx, this_val, fields, is_local, 0); - c001ca72: e53ff0ef jal ra,c001c8c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49565 + c001cc42: e53ff0ef jal ra,c001ca94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49573 if (res < 0) - c001ca76: 00055b63 bgez a0,c001ca8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49566 - return JS_EXCEPTION; - c001ca7a: ec02 sd zero,24(sp) - c001ca7c: 4799 li a5,6 + c001cc46: 00055b63 bgez a0,c001cc5c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49574 -} - c001ca7e: 70e6 ld ra,120(sp) - c001ca80: 7446 ld s0,112(sp) - c001ca82: f03e sd a5,32(sp) - c001ca84: 6562 ld a0,24(sp) - c001ca86: 7582 ld a1,32(sp) - c001ca88: 6109 addi sp,sp,128 - c001ca8a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49567 + return JS_EXCEPTION; + c001cc4a: ec02 sd zero,24(sp) + c001cc4c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49582 +} + c001cc4e: 70e6 ld ra,120(sp) + c001cc50: 7446 ld s0,112(sp) + c001cc52: f03e sd a5,32(sp) + c001cc54: 6562 ld a0,24(sp) + c001cc56: 7582 ld a1,32(sp) + c001cc58: 6109 addi sp,sp,128 + c001cc5a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49575 if (!res) - c001ca8c: ed11 bnez a0,c001caa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49568 + c001cc5c: ed11 bnez a0,c001cc78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49576 return JS_NAN; - c001ca8e: 00058797 auipc a5,0x58 - c001ca92: cfa7b787 fld fa5,-774(a5) # c0074788 <_erodata+0x8> - c001ca96: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001ca9a: f2000753 fmv.d.x fa4,zero - c001ca9e: 479d li a5,7 - c001caa0: 12e7f7d3 fmul.d fa5,fa5,fa4 - c001caa4: ac3e fsd fa5,24(sp) - c001caa6: bfe1 j c001ca7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49570 + c001cc5e: 00058797 auipc a5,0x58 + c001cc62: d8a7b787 fld fa5,-630(a5) # c00749e8 <_erodata+0x8> + c001cc66: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001cc6a: f2000753 fmv.d.x fa4,zero + c001cc6e: 479d li a5,7 + c001cc70: 12e7f7d3 fmul.d fa5,fa5,fa4 + c001cc74: ac3e fsd fa5,24(sp) + c001cc76: bfe1 j c001cc4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 if (magic & 0x100) { // getYear - c001caa8: 10047793 andi a5,s0,256 - c001caac: cb89 beqz a5,c001cabe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49571 + c001cc78: 10047793 andi a5,s0,256 + c001cc7c: cb89 beqz a5,c001cc8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49579 fields[0] -= 1900; - c001caae: 37a2 fld fa5,40(sp) - c001cab0: 00058797 auipc a5,0x58 - c001cab4: d607b707 fld fa4,-672(a5) # c0074810 <_erodata+0x90> - c001cab8: 0ae7f7d3 fsub.d fa5,fa5,fa4 - c001cabc: b43e fsd fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49573 + c001cc7e: 37a2 fld fa5,40(sp) + c001cc80: 00058797 auipc a5,0x58 + c001cc84: df07b707 fld fa4,-528(a5) # c0074a70 <_erodata+0x90> + c001cc88: 0ae7f7d3 fsub.d fa5,fa5,fa4 + c001cc8c: b43e fsd fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49581 return JS_NewFloat64(ctx, fields[n]); - c001cabe: 8005 srli s0,s0,0x1 - c001cac0: 189c addi a5,sp,112 - c001cac2: 07847413 andi s0,s0,120 - c001cac6: 943e add s0,s0,a5 - c001cac8: fb843783 ld a5,-72(s0) + c001cc8e: 8005 srli s0,s0,0x1 + c001cc90: 189c addi a5,sp,112 + c001cc92: 07847413 andi s0,s0,120 + c001cc96: 943e add s0,s0,a5 + c001cc98: fb843783 ld a5,-72(s0) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cacc: f20787d3 fmv.d.x fa5,a5 - c001cad0: c2079653 fcvt.w.d a2,fa5,rtz + c001cc9c: f20787d3 fmv.d.x fa5,a5 + c001cca0: c2079653 fcvt.w.d a2,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cad4: d20607d3 fcvt.d.w fa5,a2 + c001cca4: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cad8: 0006071b sext.w a4,a2 + c001cca8: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cadc: e2078653 fmv.x.d a2,fa5 - c001cae0: 00c79663 bne a5,a2,c001caec + c001ccac: e2078653 fmv.x.d a2,fa5 + c001ccb0: 00c79663 bne a5,a2,c001ccbc /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001cae4: ce02 sw zero,28(sp) - c001cae6: 4781 li a5,0 + c001ccb4: ce02 sw zero,28(sp) + c001ccb6: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001cae8: cc3a sw a4,24(sp) - c001caea: bf51 j c001ca7e + c001ccb8: cc3a sw a4,24(sp) + c001ccba: bf51 j c001cc4e get_date_field(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001caec: ec3e sd a5,24(sp) - c001caee: 0007871b sext.w a4,a5 + c001ccbc: ec3e sd a5,24(sp) + c001ccbe: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001caf2: 479d li a5,7 - c001caf4: bfd5 j c001cae8 + c001ccc2: 479d li a5,7 + c001ccc4: bfd5 j c001ccb8 -00000000c001caf6 : +00000000c001ccc6 : js_date_getTimezoneOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50172 { - c001caf6: 711d addi sp,sp,-96 - c001caf8: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 + c001ccc6: 711d addi sp,sp,-96 + c001ccc8: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50176 if (JS_ThisTimeValue(ctx, &v, this_val)) - c001cafa: 862e mv a2,a1 - c001cafc: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50164 + c001ccca: 862e mv a2,a1 + c001cccc: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50172 { - c001cafe: ec86 sd ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 + c001ccce: ec86 sd ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50176 if (JS_ThisTimeValue(ctx, &v, this_val)) - c001cb00: d7fff0ef jal ra,c001c87e - c001cb04: c909 beqz a0,c001cb16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50169 + c001ccd0: d7fff0ef jal ra,c001ca4e + c001ccd4: c909 beqz a0,c001cce6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50177 return JS_EXCEPTION; - c001cb06: f002 sd zero,32(sp) - c001cb08: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50171 + c001ccd6: f002 sd zero,32(sp) + c001ccd8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50179 return JS_NAN; - c001cb0a: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50174 (discriminator 1) -} - c001cb0c: 60e6 ld ra,88(sp) - c001cb0e: 7502 ld a0,32(sp) - c001cb10: 75a2 ld a1,40(sp) - c001cb12: 6125 addi sp,sp,96 - c001cb14: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50170 + c001ccda: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50182 (discriminator 1) +} + c001ccdc: 60e6 ld ra,88(sp) + c001ccde: 7502 ld a0,32(sp) + c001cce0: 75a2 ld a1,40(sp) + c001cce2: 6125 addi sp,sp,96 + c001cce4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50178 if (isnan(v)) - c001cb16: 27e2 fld fa5,24(sp) - c001cb18: a2f7a7d3 feq.d a5,fa5,fa5 - c001cb1c: ef91 bnez a5,c001cb38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50171 + c001cce6: 27e2 fld fa5,24(sp) + c001cce8: a2f7a7d3 feq.d a5,fa5,fa5 + c001ccec: ef91 bnez a5,c001cd08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50179 return JS_NAN; - c001cb1e: 00058797 auipc a5,0x58 - c001cb22: c6a7b787 fld fa5,-918(a5) # c0074788 <_erodata+0x8> - c001cb26: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001cb2a: f2000753 fmv.d.x fa4,zero - c001cb2e: 479d li a5,7 - c001cb30: 12e7f7d3 fmul.d fa5,fa5,fa4 - c001cb34: b03e fsd fa5,32(sp) - c001cb36: bfd1 j c001cb0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50173 + c001ccee: 00058797 auipc a5,0x58 + c001ccf2: cfa7b787 fld fa5,-774(a5) # c00749e8 <_erodata+0x8> + c001ccf6: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001ccfa: f2000753 fmv.d.x fa4,zero + c001ccfe: 479d li a5,7 + c001cd00: 12e7f7d3 fmul.d fa5,fa5,fa4 + c001cd04: b03e fsd fa5,32(sp) + c001cd06: bfd1 j c001ccda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50181 return JS_NewInt64(ctx, getTimezoneOffset((int64_t)trunc(v))); - c001cb38: c2279553 fcvt.l.d a0,fa5,rtz - c001cb3c: b77e80ef jal ra,c00056b2 + c001cd08: c2279553 fcvt.l.d a0,fa5,rtz + c001cd0c: a95e80ef jal ra,c00057a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001cb40: d82a sw a0,48(sp) - c001cb42: da02 sw zero,52(sp) - c001cb44: 77c2 ld a5,48(sp) - c001cb46: f402 sd zero,40(sp) + c001cd10: d82a sw a0,48(sp) + c001cd12: da02 sw zero,52(sp) + c001cd14: 77c2 ld a5,48(sp) + c001cd16: f402 sd zero,40(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c001cb48: f03e sd a5,32(sp) + c001cd18: f03e sd a5,32(sp) js_date_getTimezoneOffset(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50173 - c001cb4a: b7c9 j c001cb0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50181 + c001cd1a: b7c9 j c001ccdc -00000000c001cb4c : +00000000c001cd1c : js_date_getTime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50178 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50186 { - c001cb4c: 7139 addi sp,sp,-64 - c001cb4e: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50182 + c001cd1c: 7139 addi sp,sp,-64 + c001cd1e: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50190 if (JS_ThisTimeValue(ctx, &v, this_val)) - c001cb50: 862e mv a2,a1 - c001cb52: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50178 + c001cd20: 862e mv a2,a1 + c001cd22: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50186 { - c001cb54: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50182 + c001cd24: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50190 if (JS_ThisTimeValue(ctx, &v, this_val)) - c001cb56: d29ff0ef jal ra,c001c87e - c001cb5a: c909 beqz a0,c001cb6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50183 + c001cd26: d29ff0ef jal ra,c001ca4e + c001cd2a: c909 beqz a0,c001cd3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50191 return JS_EXCEPTION; - c001cb5c: f002 sd zero,32(sp) - c001cb5e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50185 -} - c001cb60: 70e2 ld ra,56(sp) - c001cb62: f43e sd a5,40(sp) - c001cb64: 7502 ld a0,32(sp) - c001cb66: 75a2 ld a1,40(sp) - c001cb68: 6121 addi sp,sp,64 - c001cb6a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50184 + c001cd2c: f002 sd zero,32(sp) + c001cd2e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50193 +} + c001cd30: 70e2 ld ra,56(sp) + c001cd32: f43e sd a5,40(sp) + c001cd34: 7502 ld a0,32(sp) + c001cd36: 75a2 ld a1,40(sp) + c001cd38: 6121 addi sp,sp,64 + c001cd3a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50192 return JS_NewFloat64(ctx, v); - c001cb6c: 67e2 ld a5,24(sp) + c001cd3c: 67e2 ld a5,24(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cb6e: f20787d3 fmv.d.x fa5,a5 - c001cb72: c2079653 fcvt.w.d a2,fa5,rtz + c001cd3e: f20787d3 fmv.d.x fa5,a5 + c001cd42: c2079653 fcvt.w.d a2,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cb76: d20607d3 fcvt.d.w fa5,a2 + c001cd46: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cb7a: 0006071b sext.w a4,a2 + c001cd4a: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cb7e: e2078653 fmv.x.d a2,fa5 - c001cb82: 00c79663 bne a5,a2,c001cb8e + c001cd4e: e2078653 fmv.x.d a2,fa5 + c001cd52: 00c79663 bne a5,a2,c001cd5e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001cb86: d202 sw zero,36(sp) - c001cb88: 4781 li a5,0 + c001cd56: d202 sw zero,36(sp) + c001cd58: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001cb8a: d03a sw a4,32(sp) - c001cb8c: bfd1 j c001cb60 + c001cd5a: d03a sw a4,32(sp) + c001cd5c: bfd1 j c001cd30 js_date_getTime(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001cb8e: f03e sd a5,32(sp) - c001cb90: 0007871b sext.w a4,a5 + c001cd5e: f03e sd a5,32(sp) + c001cd60: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cb94: 479d li a5,7 - c001cb96: bfd5 j c001cb8a + c001cd64: 479d li a5,7 + c001cd66: bfd5 j c001cd5a -00000000c001cb98 : +00000000c001cd68 : set_date_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cb98: 7115 addi sp,sp,-224 - c001cb9a: e9a2 sd s0,208(sp) - c001cb9c: a126 fsd fs1,128(sp) - c001cb9e: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49584 + c001cd68: 7115 addi sp,sp,-224 + c001cd6a: e9a2 sd s0,208(sp) + c001cd6c: a126 fsd fs1,128(sp) + c001cd6e: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49592 d = NAN; - c001cba0: 00058797 auipc a5,0x58 - c001cba4: be87b487 fld fs1,-1048(a5) # c0074788 <_erodata+0x8> - c001cba8: 1294f4d3 fmul.d fs1,fs1,fs1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 + c001cd70: 00058797 auipc a5,0x58 + c001cd74: c787b487 fld fs1,-904(a5) # c00749e8 <_erodata+0x8> + c001cd78: 1294f4d3 fmul.d fs1,fs1,fs1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cbac: f556 sd s5,168(sp) - c001cbae: a522 fsd fs0,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49585 + c001cd7c: f556 sd s5,168(sp) + c001cd7e: a522 fsd fs0,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49593 first_field = (magic >> 8) & 0x0F; - c001cbb0: 40845a9b sraiw s5,s0,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49584 + c001cd80: 40845a9b sraiw s5,s0,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49592 d = NAN; - c001cbb4: f2000453 fmv.d.x fs0,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 + c001cd84: f2000453 fmv.d.x fs0,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cbb8: f15a sd s6,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49585 + c001cd88: f15a sd s6,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49593 first_field = (magic >> 8) & 0x0F; - c001cbba: 00fafa93 andi s5,s5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49587 + c001cd8a: 00fafa93 andi s5,s5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49595 is_local = magic & 0x0F; - c001cbbe: 00f47b13 andi s6,s0,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 + c001cd8e: 00f47b13 andi s6,s0,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cbc2: e1ca sd s2,192(sp) - c001cbc4: f952 sd s4,176(sp) - c001cbc6: 8936 mv s2,a3 - c001cbc8: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49589 + c001cd92: e1ca sd s2,192(sp) + c001cd94: f952 sd s4,176(sp) + c001cd96: 8936 mv s2,a3 + c001cd98: 8a3a mv s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49597 res = get_date_fields(ctx, this_val, fields, is_local, first_field == 0); - c001cbca: 001ab793 seqz a5,s5 - c001cbce: 875a mv a4,s6 - c001cbd0: 1034 addi a3,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 + c001cd9a: 001ab793 seqz a5,s5 + c001cd9e: 875a mv a4,s6 + c001cda0: 1034 addi a3,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cbd2: fd4e sd s3,184(sp) - c001cbd4: ed86 sd ra,216(sp) - c001cbd6: e5a6 sd s1,200(sp) - c001cbd8: ed5e sd s7,152(sp) - c001cbda: e962 sd s8,144(sp) - c001cbdc: bcca fsd fs2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49584 + c001cda2: fd4e sd s3,184(sp) + c001cda4: ed86 sd ra,216(sp) + c001cda6: e5a6 sd s1,200(sp) + c001cda8: ed5e sd s7,152(sp) + c001cdaa: e962 sd s8,144(sp) + c001cdac: bcca fsd fs2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49592 d = NAN; - c001cbde: 1284f453 fmul.d fs0,fs1,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49578 + c001cdae: 1284f453 fmul.d fs0,fs1,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 { - c001cbe2: 89aa mv s3,a0 - c001cbe4: e02e sd a1,0(sp) - c001cbe6: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49589 + c001cdb2: 89aa mv s3,a0 + c001cdb4: e02e sd a1,0(sp) + c001cdb6: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49597 res = get_date_fields(ctx, this_val, fields, is_local, first_field == 0); - c001cbe8: cddff0ef jal ra,c001c8c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49590 + c001cdb8: cddff0ef jal ra,c001ca94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 if (res < 0) - c001cbec: 02055663 bgez a0,c001cc18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49591 + c001cdbc: 02055663 bgez a0,c001cde8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49599 return JS_EXCEPTION; - c001cbf0: 4799 li a5,6 - c001cbf2: ec02 sd zero,24(sp) - c001cbf4: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 (discriminator 1) -} - c001cbf6: 60ee ld ra,216(sp) - c001cbf8: 644e ld s0,208(sp) - c001cbfa: 6562 ld a0,24(sp) - c001cbfc: 7582 ld a1,32(sp) - c001cbfe: 64ae ld s1,200(sp) - c001cc00: 690e ld s2,192(sp) - c001cc02: 79ea ld s3,184(sp) - c001cc04: 7a4a ld s4,176(sp) - c001cc06: 7aaa ld s5,168(sp) - c001cc08: 7b0a ld s6,160(sp) - c001cc0a: 6bea ld s7,152(sp) - c001cc0c: 6c4a ld s8,144(sp) - c001cc0e: 242a fld fs0,136(sp) - c001cc10: 248a fld fs1,128(sp) - c001cc12: 3966 fld fs2,120(sp) - c001cc14: 612d addi sp,sp,224 - c001cc16: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49586 - end_field = (magic >> 4) & 0x0F; - c001cc18: 4044541b sraiw s0,s0,0x4 - c001cc1c: 883d andi s0,s0,15 + c001cdc0: 4799 li a5,6 + c001cdc2: ec02 sd zero,24(sp) + c001cdc4: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49614 (discriminator 1) +} + c001cdc6: 60ee ld ra,216(sp) + c001cdc8: 644e ld s0,208(sp) + c001cdca: 6562 ld a0,24(sp) + c001cdcc: 7582 ld a1,32(sp) + c001cdce: 64ae ld s1,200(sp) + c001cdd0: 690e ld s2,192(sp) + c001cdd2: 79ea ld s3,184(sp) + c001cdd4: 7a4a ld s4,176(sp) + c001cdd6: 7aaa ld s5,168(sp) + c001cdd8: 7b0a ld s6,160(sp) + c001cdda: 6bea ld s7,152(sp) + c001cddc: 6c4a ld s8,144(sp) + c001cdde: 242a fld fs0,136(sp) + c001cde0: 248a fld fs1,128(sp) + c001cde2: 3966 fld fs2,120(sp) + c001cde4: 612d addi sp,sp,224 + c001cde6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49594 + end_field = (magic >> 4) & 0x0F; + c001cde8: 4044541b sraiw s0,s0,0x4 + c001cdec: 883d andi s0,s0,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49602 n = min_int(argc, end_field - first_field); - c001cc1e: 415407bb subw a5,s0,s5 - c001cc22: 84aa mv s1,a0 - c001cc24: 843e mv s0,a5 - c001cc26: 00f95463 bge s2,a5,c001cc2e - c001cc2a: 0009041b sext.w s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 + c001cdee: 415407bb subw a5,s0,s5 + c001cdf2: 84aa mv s1,a0 + c001cdf4: 843e mv s0,a5 + c001cdf6: 00f95463 bge s2,a5,c001cdfe + c001cdfa: 0009041b sext.w s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 if (!isfinite(a)) - c001cc2e: 22949953 fneg.d fs2,fs1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49595 + c001cdfe: 22949953 fneg.d fs2,fs1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49603 for(i = 0; i < n; i++) { - c001cc32: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49595 (discriminator 1) - c001cc34: 000b879b sext.w a5,s7 - c001cc38: 0287c563 blt a5,s0,c001cc62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49602 + c001ce02: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49603 (discriminator 1) + c001ce04: 000b879b sext.w a5,s7 + c001ce08: 0287c563 blt a5,s0,c001ce32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49610 if (res && argc > 0) { - c001cc3c: c889 beqz s1,c001cc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49602 (discriminator 1) - c001cc3e: 01205863 blez s2,c001cc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49603 + c001ce0c: c889 beqz s1,c001ce1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49610 (discriminator 1) + c001ce0e: 01205863 blez s2,c001ce1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49611 d = set_date_fields(fields, is_local); - c001cc42: 85da mv a1,s6 - c001cc44: 1028 addi a0,sp,40 - c001cc46: cbbe90ef jal ra,c0006900 - c001cc4a: 22a50453 fmv.d fs0,fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49605 + c001ce12: 85da mv a1,s6 + c001ce14: 1028 addi a0,sp,40 + c001ce16: bd9e90ef jal ra,c00069ee + c001ce1a: 22a50453 fmv.d fs0,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49613 return JS_SetThisTimeValue(ctx, this_val, d); - c001cc4e: 22840553 fmv.d fa0,fs0 - c001cc52: 6582 ld a1,0(sp) - c001cc54: 6622 ld a2,8(sp) - c001cc56: 854e mv a0,s3 - c001cc58: 908f70ef jal ra,c0013d60 - c001cc5c: ec2a sd a0,24(sp) - c001cc5e: f02e sd a1,32(sp) - c001cc60: bf59 j c001cbf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49596 + c001ce1e: 22840553 fmv.d fa0,fs0 + c001ce22: 6582 ld a1,0(sp) + c001ce24: 6622 ld a2,8(sp) + c001ce26: 854e mv a0,s3 + c001ce28: 826f70ef jal ra,c0013e4e + c001ce2c: ec2a sd a0,24(sp) + c001ce2e: f02e sd a1,32(sp) + c001ce30: bf59 j c001cdc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49604 if (JS_ToFloat64(ctx, &a, argv[i])) - c001cc62: 004b9793 slli a5,s7,0x4 - c001cc66: 97d2 add a5,a5,s4 - c001cc68: 6390 ld a2,0(a5) - c001cc6a: 6794 ld a3,8(a5) - c001cc6c: 080c addi a1,sp,16 - c001cc6e: 854e mv a0,s3 - c001cc70: a1fff0ef jal ra,c001c68e - c001cc74: 8c2a mv s8,a0 - c001cc76: fd2d bnez a0,c001cbf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 + c001ce32: 004b9793 slli a5,s7,0x4 + c001ce36: 97d2 add a5,a5,s4 + c001ce38: 6390 ld a2,0(a5) + c001ce3a: 6794 ld a3,8(a5) + c001ce3c: 080c addi a1,sp,16 + c001ce3e: 854e mv a0,s3 + c001ce40: a1fff0ef jal ra,c001c85e + c001ce44: 8c2a mv s8,a0 + c001ce46: fd2d bnez a0,c001cdc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 if (!isfinite(a)) - c001cc78: 2542 fld fa0,16(sp) - c001cc7a: a2a4a7d3 feq.d a5,fs1,fa0 - c001cc7e: eb81 bnez a5,c001cc8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 (discriminator 1) - c001cc80: a32527d3 feq.d a5,fa0,fs2 - c001cc84: e789 bnez a5,c001cc8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 (discriminator 2) - c001cc86: a2a527d3 feq.d a5,fa0,fa0 - c001cc8a: c391 beqz a5,c001cc8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49598 - c001cc8c: 8c26 mv s8,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49600 (discriminator 2) + c001ce48: 2542 fld fa0,16(sp) + c001ce4a: a2a4a7d3 feq.d a5,fs1,fa0 + c001ce4e: eb81 bnez a5,c001ce5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 (discriminator 1) + c001ce50: a32527d3 feq.d a5,fa0,fs2 + c001ce54: e789 bnez a5,c001ce5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 (discriminator 2) + c001ce56: a2a527d3 feq.d a5,fa0,fa0 + c001ce5a: c391 beqz a5,c001ce5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49606 + c001ce5c: 8c26 mv s8,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49608 (discriminator 2) fields[first_field + i] = trunc(a); - c001cc8e: 45e3b0ef jal ra,c00580ec - c001cc92: 017a87bb addw a5,s5,s7 - c001cc96: 078e slli a5,a5,0x3 - c001cc98: 1898 addi a4,sp,112 - c001cc9a: 97ba add a5,a5,a4 - c001cc9c: faa7bc27 fsd fa0,-72(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49595 (discriminator 2) + c001ce5e: 45e3b0ef jal ra,c00582bc + c001ce62: 017a87bb addw a5,s5,s7 + c001ce66: 078e slli a5,a5,0x3 + c001ce68: 1898 addi a4,sp,112 + c001ce6a: 97ba add a5,a5,a4 + c001ce6c: faa7bc27 fsd fa0,-72(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49603 (discriminator 2) for(i = 0; i < n; i++) { - c001cca0: 0b85 addi s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49600 (discriminator 2) + c001ce70: 0b85 addi s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49608 (discriminator 2) fields[first_field + i] = trunc(a); - c001cca2: 84e2 mv s1,s8 - c001cca4: bf41 j c001cc34 + c001ce72: 84e2 mv s1,s8 + c001ce74: bf41 j c001ce04 -00000000c001cca6 : +00000000c001ce76 : js_date_setYear(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 { - c001cca6: 711d addi sp,sp,-96 - c001cca8: e02e sd a1,0(sp) - c001ccaa: 86b2 mv a3,a2 - c001ccac: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50205 + c001ce76: 711d addi sp,sp,-96 + c001ce78: e02e sd a1,0(sp) + c001ce7a: 86b2 mv a3,a2 + c001ce7c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 if (JS_ThisTimeValue(ctx, &y, this_val) || JS_ToFloat64(ctx, &y, argv[0])) - c001ccae: 862e mv a2,a1 - c001ccb0: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50200 -{ - c001ccb2: e8a2 sd s0,80(sp) - c001ccb4: e4a6 sd s1,72(sp) - c001ccb6: ec86 sd ra,88(sp) - c001ccb8: 842a mv s0,a0 - c001ccba: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50205 + c001ce7e: 862e mv a2,a1 + c001ce80: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 +{ + c001ce82: e8a2 sd s0,80(sp) + c001ce84: e4a6 sd s1,72(sp) + c001ce86: ec86 sd ra,88(sp) + c001ce88: 842a mv s0,a0 + c001ce8a: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 if (JS_ThisTimeValue(ctx, &y, this_val) || JS_ToFloat64(ctx, &y, argv[0])) - c001ccbc: bc3ff0ef jal ra,c001c87e - c001ccc0: c919 beqz a0,c001ccd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50206 + c001ce8c: bc3ff0ef jal ra,c001ca4e + c001ce90: c919 beqz a0,c001cea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50214 return JS_EXCEPTION; - c001ccc2: 4799 li a5,6 - c001ccc4: f802 sd zero,48(sp) - c001ccc6: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50215 (discriminator 1) -} - c001ccc8: 60e6 ld ra,88(sp) - c001ccca: 6446 ld s0,80(sp) - c001cccc: 7542 ld a0,48(sp) - c001ccce: 75e2 ld a1,56(sp) - c001ccd0: 64a6 ld s1,72(sp) - c001ccd2: 6125 addi sp,sp,96 - c001ccd4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50205 (discriminator 1) + c001ce92: 4799 li a5,6 + c001ce94: f802 sd zero,48(sp) + c001ce96: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50223 (discriminator 1) +} + c001ce98: 60e6 ld ra,88(sp) + c001ce9a: 6446 ld s0,80(sp) + c001ce9c: 7542 ld a0,48(sp) + c001ce9e: 75e2 ld a1,56(sp) + c001cea0: 64a6 ld s1,72(sp) + c001cea2: 6125 addi sp,sp,96 + c001cea4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 (discriminator 1) if (JS_ThisTimeValue(ctx, &y, this_val) || JS_ToFloat64(ctx, &y, argv[0])) - c001ccd6: 6090 ld a2,0(s1) - c001ccd8: 6494 ld a3,8(s1) - c001ccda: 082c addi a1,sp,24 - c001ccdc: 8522 mv a0,s0 - c001ccde: 9b1ff0ef jal ra,c001c68e - c001cce2: f165 bnez a0,c001ccc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 + c001cea6: 6090 ld a2,0(s1) + c001cea8: 6494 ld a3,8(s1) + c001ceaa: 082c addi a1,sp,24 + c001ceac: 8522 mv a0,s0 + c001ceae: 9b1ff0ef jal ra,c001c85e + c001ceb2: f165 bnez a0,c001ce92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50216 if (isfinite(y)) { - c001cce4: 00058797 auipc a5,0x58 - c001cce8: aa47b787 fld fa5,-1372(a5) # c0074788 <_erodata+0x8> - c001ccec: 12f7f7d3 fmul.d fa5,fa5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50207 + c001ceb4: 00058797 auipc a5,0x58 + c001ceb8: b347b787 fld fa5,-1228(a5) # c00749e8 <_erodata+0x8> + c001cebc: 12f7f7d3 fmul.d fa5,fa5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50215 y = +y; - c001ccf0: 2562 fld fa0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 + c001cec0: 2562 fld fa0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50216 if (isfinite(y)) { - c001ccf2: a2f527d3 feq.d a5,fa0,fa5 - c001ccf6: ef9d bnez a5,c001cd34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 (discriminator 1) - c001ccf8: 22f797d3 fneg.d fa5,fa5 - c001ccfc: a2f527d3 feq.d a5,fa0,fa5 - c001cd00: eb95 bnez a5,c001cd34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50208 (discriminator 2) - c001cd02: a2a527d3 feq.d a5,fa0,fa0 - c001cd06: c79d beqz a5,c001cd34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50209 + c001cec2: a2f527d3 feq.d a5,fa0,fa5 + c001cec6: ef9d bnez a5,c001cf04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50216 (discriminator 1) + c001cec8: 22f797d3 fneg.d fa5,fa5 + c001cecc: a2f527d3 feq.d a5,fa0,fa5 + c001ced0: eb95 bnez a5,c001cf04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50216 (discriminator 2) + c001ced2: a2a527d3 feq.d a5,fa0,fa0 + c001ced6: c79d beqz a5,c001cf04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50217 y = trunc(y); - c001cd08: 3e43b0ef jal ra,c00580ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50210 + c001ced8: 3e43b0ef jal ra,c00582bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50218 if (y >= 0 && y < 100) - c001cd0c: f20007d3 fmv.d.x fa5,zero -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50209 + c001cedc: f20007d3 fmv.d.x fa5,zero +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50217 y = trunc(y); - c001cd10: ac2a fsd fa0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50210 + c001cee0: ac2a fsd fa0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50218 if (y >= 0 && y < 100) - c001cd12: a2a787d3 fle.d a5,fa5,fa0 - c001cd16: cf99 beqz a5,c001cd34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50210 (discriminator 1) - c001cd18: 00058797 auipc a5,0x58 - c001cd1c: af07b787 fld fa5,-1296(a5) # c0074808 <_erodata+0x88> - c001cd20: a2f517d3 flt.d a5,fa0,fa5 - c001cd24: cb81 beqz a5,c001cd34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50211 + c001cee2: a2a787d3 fle.d a5,fa5,fa0 + c001cee6: cf99 beqz a5,c001cf04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50218 (discriminator 1) + c001cee8: 00058797 auipc a5,0x58 + c001ceec: b807b787 fld fa5,-1152(a5) # c0074a68 <_erodata+0x88> + c001cef0: a2f517d3 flt.d a5,fa0,fa5 + c001cef4: cb81 beqz a5,c001cf04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50219 y += 1900; - c001cd26: 00058797 auipc a5,0x58 - c001cd2a: aea7b787 fld fa5,-1302(a5) # c0074810 <_erodata+0x90> - c001cd2e: 02f57553 fadd.d fa0,fa0,fa5 - c001cd32: ac2a fsd fa0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 + c001cef6: 00058797 auipc a5,0x58 + c001cefa: b7a7b787 fld fa5,-1158(a5) # c0074a70 <_erodata+0x90> + c001cefe: 02f57553 fadd.d fa0,fa0,fa5 + c001cf02: ac2a fsd fa0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50221 args[0] = JS_NewFloat64(ctx, y); - c001cd34: 67e2 ld a5,24(sp) + c001cf04: 67e2 ld a5,24(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cd36: f20787d3 fmv.d.x fa5,a5 - c001cd3a: c2079653 fcvt.w.d a2,fa5,rtz + c001cf06: f20787d3 fmv.d.x fa5,a5 + c001cf0a: c2079653 fcvt.w.d a2,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cd3e: d20607d3 fcvt.d.w fa5,a2 + c001cf0e: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cd42: 0006071b sext.w a4,a2 + c001cf12: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cd46: e2078653 fmv.x.d a2,fa5 - c001cd4a: 02c79363 bne a5,a2,c001cd70 + c001cf16: e2078653 fmv.x.d a2,fa5 + c001cf1a: 02c79363 bne a5,a2,c001cf40 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001cd4e: da02 sw zero,52(sp) - c001cd50: 4781 li a5,0 + c001cf1e: da02 sw zero,52(sp) + c001cf20: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001cd52: d83a sw a4,48(sp) - c001cd54: 37c2 fld fa5,48(sp) + c001cf22: d83a sw a4,48(sp) + c001cf24: 37c2 fld fa5,48(sp) js_date_setYear(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50222 return set_date_field(ctx, this_val, 1, args, 0x011); - c001cd56: 6582 ld a1,0(sp) - c001cd58: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 + c001cf26: 6582 ld a1,0(sp) + c001cf28: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50221 args[0] = JS_NewFloat64(ctx, y); - c001cd5a: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50214 + c001cf2a: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50222 return set_date_field(ctx, this_val, 1, args, 0x011); - c001cd5c: 1018 addi a4,sp,32 - c001cd5e: 47c5 li a5,17 - c001cd60: 4685 li a3,1 - c001cd62: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50213 + c001cf2c: 1018 addi a4,sp,32 + c001cf2e: 47c5 li a5,17 + c001cf30: 4685 li a3,1 + c001cf32: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50221 args[0] = JS_NewFloat64(ctx, y); - c001cd64: b03e fsd fa5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50214 + c001cf34: b03e fsd fa5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50222 return set_date_field(ctx, this_val, 1, args, 0x011); - c001cd66: e33ff0ef jal ra,c001cb98 - c001cd6a: f82a sd a0,48(sp) - c001cd6c: fc2e sd a1,56(sp) - c001cd6e: bfa9 j c001ccc8 + c001cf36: e33ff0ef jal ra,c001cd68 + c001cf3a: f82a sd a0,48(sp) + c001cf3c: fc2e sd a1,56(sp) + c001cf3e: bfa9 j c001ce98 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001cd70: f83e sd a5,48(sp) - c001cd72: 0007871b sext.w a4,a5 + c001cf40: f83e sd a5,48(sp) + c001cf42: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cd76: 479d li a5,7 - c001cd78: bfe9 j c001cd52 + c001cf46: 479d li a5,7 + c001cf48: bfe9 j c001cf22 -00000000c001cd7a : +00000000c001cf4a : js_date_setTime(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50197 { - c001cd7a: 715d addi sp,sp,-80 - c001cd7c: e02e sd a1,0(sp) - c001cd7e: 86b2 mv a3,a2 - c001cd80: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50193 + c001cf4a: 715d addi sp,sp,-80 + c001cf4c: e02e sd a1,0(sp) + c001cf4e: 86b2 mv a3,a2 + c001cf50: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50201 if (JS_ThisTimeValue(ctx, &v, this_val) || JS_ToFloat64(ctx, &v, argv[0])) - c001cd82: 862e mv a2,a1 - c001cd84: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50189 -{ - c001cd86: e0a2 sd s0,64(sp) - c001cd88: fc26 sd s1,56(sp) - c001cd8a: e486 sd ra,72(sp) - c001cd8c: 842a mv s0,a0 - c001cd8e: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50193 + c001cf52: 862e mv a2,a1 + c001cf54: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50197 +{ + c001cf56: e0a2 sd s0,64(sp) + c001cf58: fc26 sd s1,56(sp) + c001cf5a: e486 sd ra,72(sp) + c001cf5c: 842a mv s0,a0 + c001cf5e: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50201 if (JS_ThisTimeValue(ctx, &v, this_val) || JS_ToFloat64(ctx, &v, argv[0])) - c001cd90: aefff0ef jal ra,c001c87e - c001cd94: c919 beqz a0,c001cdaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50194 + c001cf60: aefff0ef jal ra,c001ca4e + c001cf64: c919 beqz a0,c001cf7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50202 return JS_EXCEPTION; - c001cd96: 4799 li a5,6 - c001cd98: f002 sd zero,32(sp) - c001cd9a: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50196 (discriminator 1) -} - c001cd9c: 60a6 ld ra,72(sp) - c001cd9e: 6406 ld s0,64(sp) - c001cda0: 7502 ld a0,32(sp) - c001cda2: 75a2 ld a1,40(sp) - c001cda4: 74e2 ld s1,56(sp) - c001cda6: 6161 addi sp,sp,80 - c001cda8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50193 (discriminator 1) + c001cf66: 4799 li a5,6 + c001cf68: f002 sd zero,32(sp) + c001cf6a: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50204 (discriminator 1) +} + c001cf6c: 60a6 ld ra,72(sp) + c001cf6e: 6406 ld s0,64(sp) + c001cf70: 7502 ld a0,32(sp) + c001cf72: 75a2 ld a1,40(sp) + c001cf74: 74e2 ld s1,56(sp) + c001cf76: 6161 addi sp,sp,80 + c001cf78: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50201 (discriminator 1) if (JS_ThisTimeValue(ctx, &v, this_val) || JS_ToFloat64(ctx, &v, argv[0])) - c001cdaa: 6090 ld a2,0(s1) - c001cdac: 6494 ld a3,8(s1) - c001cdae: 082c addi a1,sp,24 - c001cdb0: 8522 mv a0,s0 - c001cdb2: 8ddff0ef jal ra,c001c68e - c001cdb6: f165 bnez a0,c001cd96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50195 + c001cf7a: 6090 ld a2,0(s1) + c001cf7c: 6494 ld a3,8(s1) + c001cf7e: 082c addi a1,sp,24 + c001cf80: 8522 mv a0,s0 + c001cf82: 8ddff0ef jal ra,c001c85e + c001cf86: f165 bnez a0,c001cf66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50203 return JS_SetThisTimeValue(ctx, this_val, time_clip(v)); - c001cdb8: 2562 fld fa0,24(sp) - c001cdba: e45e80ef jal ra,c0005bfe - c001cdbe: 6582 ld a1,0(sp) - c001cdc0: 6622 ld a2,8(sp) - c001cdc2: 8522 mv a0,s0 - c001cdc4: f9df60ef jal ra,c0013d60 - c001cdc8: f02a sd a0,32(sp) - c001cdca: f42e sd a1,40(sp) - c001cdcc: bfc1 j c001cd9c - -00000000c001cdce : + c001cf88: 2562 fld fa0,24(sp) + c001cf8a: d63e80ef jal ra,c0005cec + c001cf8e: 6582 ld a1,0(sp) + c001cf90: 6622 ld a2,8(sp) + c001cf92: 8522 mv a0,s0 + c001cf94: ebbf60ef jal ra,c0013e4e + c001cf98: f02a sd a0,32(sp) + c001cf9a: f42e sd a1,40(sp) + c001cf9c: bfc1 j c001cf6c + +00000000c001cf9e : js_math_hypot(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43145 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43153 { - c001cdce: 711d addi sp,sp,-96 - c001cdd0: ec86 sd ra,88(sp) - c001cdd2: e8a2 sd s0,80(sp) - c001cdd4: e4a6 sd s1,72(sp) - c001cdd6: e0ca sd s2,64(sp) - c001cdd8: fc4e sd s3,56(sp) - c001cdda: e02e sd a1,0(sp) - c001cddc: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43149 + c001cf9e: 711d addi sp,sp,-96 + c001cfa0: ec86 sd ra,88(sp) + c001cfa2: e8a2 sd s0,80(sp) + c001cfa4: e4a6 sd s1,72(sp) + c001cfa6: e0ca sd s2,64(sp) + c001cfa8: fc4e sd s3,56(sp) + c001cfaa: e02e sd a1,0(sp) + c001cfac: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43157 r = 0; - c001cdde: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43150 + c001cfae: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43158 if (argc > 0) { - c001cde0: 02d05e63 blez a3,c001ce1c - c001cde4: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43151 + c001cfb0: 02d05e63 blez a3,c001cfec + c001cfb4: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43159 if (JS_ToFloat64(ctx, &r, argv[0])) - c001cde6: 6310 ld a2,0(a4) - c001cde8: 6714 ld a3,8(a4) - c001cdea: 080c addi a1,sp,16 - c001cdec: 89aa mv s3,a0 - c001cdee: 843a mv s0,a4 - c001cdf0: 89fff0ef jal ra,c001c68e - c001cdf4: cd09 beqz a0,c001ce0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43152 + c001cfb6: 6310 ld a2,0(a4) + c001cfb8: 6714 ld a3,8(a4) + c001cfba: 080c addi a1,sp,16 + c001cfbc: 89aa mv s3,a0 + c001cfbe: 843a mv s0,a4 + c001cfc0: 89fff0ef jal ra,c001c85e + c001cfc4: cd09 beqz a0,c001cfde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43160 return JS_EXCEPTION; - c001cdf6: f002 sd zero,32(sp) - c001cdf8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43165 -} - c001cdfa: 60e6 ld ra,88(sp) - c001cdfc: 6446 ld s0,80(sp) - c001cdfe: f43e sd a5,40(sp) - c001ce00: 7502 ld a0,32(sp) - c001ce02: 75a2 ld a1,40(sp) - c001ce04: 64a6 ld s1,72(sp) - c001ce06: 6906 ld s2,64(sp) - c001ce08: 79e2 ld s3,56(sp) - c001ce0a: 6125 addi sp,sp,96 - c001ce0c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43153 + c001cfc6: f002 sd zero,32(sp) + c001cfc8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43173 +} + c001cfca: 60e6 ld ra,88(sp) + c001cfcc: 6446 ld s0,80(sp) + c001cfce: f43e sd a5,40(sp) + c001cfd0: 7502 ld a0,32(sp) + c001cfd2: 75a2 ld a1,40(sp) + c001cfd4: 64a6 ld s1,72(sp) + c001cfd6: 6906 ld s2,64(sp) + c001cfd8: 79e2 ld s3,56(sp) + c001cfda: 6125 addi sp,sp,96 + c001cfdc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43161 if (argc == 1) { - c001ce0e: 4785 li a5,1 - c001ce10: 02f49763 bne s1,a5,c001ce3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43154 + c001cfde: 4785 li a5,1 + c001cfe0: 02f49763 bne s1,a5,c001d00e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43162 r = fabs(r); - c001ce14: 27c2 fld fa5,16(sp) - c001ce16: 22f7a7d3 fabs.d fa5,fa5 - c001ce1a: a83e fsd fa5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43164 + c001cfe4: 27c2 fld fa5,16(sp) + c001cfe6: 22f7a7d3 fabs.d fa5,fa5 + c001cfea: a83e fsd fa5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43172 return JS_NewFloat64(ctx, r); - c001ce1c: 67c2 ld a5,16(sp) + c001cfec: 67c2 ld a5,16(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001ce1e: f20787d3 fmv.d.x fa5,a5 - c001ce22: c2079653 fcvt.w.d a2,fa5,rtz + c001cfee: f20787d3 fmv.d.x fa5,a5 + c001cff2: c2079653 fcvt.w.d a2,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ce26: d20607d3 fcvt.d.w fa5,a2 + c001cff6: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001ce2a: 0006071b sext.w a4,a2 + c001cffa: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ce2e: e2078653 fmv.x.d a2,fa5 - c001ce32: 02c79963 bne a5,a2,c001ce64 + c001cffe: e2078653 fmv.x.d a2,fa5 + c001d002: 02c79963 bne a5,a2,c001d034 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001ce36: d202 sw zero,36(sp) - c001ce38: 4781 li a5,0 + c001d006: d202 sw zero,36(sp) + c001d008: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001ce3a: d03a sw a4,32(sp) - c001ce3c: bf7d j c001cdfa - c001ce3e: 0441 addi s0,s0,16 + c001d00a: d03a sw a4,32(sp) + c001d00c: bf7d j c001cfca + c001d00e: 0441 addi s0,s0,16 js_math_hypot(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43165 for (i = 1; i < argc; i++) { - c001ce40: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43158 + c001d010: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43166 if (JS_ToFloat64(ctx, &a, argv[i])) - c001ce42: 6010 ld a2,0(s0) - c001ce44: 6414 ld a3,8(s0) - c001ce46: 082c addi a1,sp,24 - c001ce48: 854e mv a0,s3 - c001ce4a: 845ff0ef jal ra,c001c68e - c001ce4e: f545 bnez a0,c001cdf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43160 (discriminator 2) + c001d012: 6010 ld a2,0(s0) + c001d014: 6414 ld a3,8(s0) + c001d016: 082c addi a1,sp,24 + c001d018: 854e mv a0,s3 + c001d01a: 845ff0ef jal ra,c001c85e + c001d01e: f545 bnez a0,c001cfc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43168 (discriminator 2) r = hypot(r, a); - c001ce50: 25e2 fld fa1,24(sp) - c001ce52: 2542 fld fa0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43157 (discriminator 2) + c001d020: 25e2 fld fa1,24(sp) + c001d022: 2542 fld fa0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43165 (discriminator 2) for (i = 1; i < argc; i++) { - c001ce54: 2905 addiw s2,s2,1 - c001ce56: 0441 addi s0,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43160 (discriminator 2) + c001d024: 2905 addiw s2,s2,1 + c001d026: 0441 addi s0,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43168 (discriminator 2) r = hypot(r, a); - c001ce58: 6f1350ef jal ra,c0052d48 - c001ce5c: a82a fsd fa0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43157 (discriminator 2) + c001d028: 6f1350ef jal ra,c0052f18 + c001d02c: a82a fsd fa0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43165 (discriminator 2) for (i = 1; i < argc; i++) { - c001ce5e: fe9942e3 blt s2,s1,c001ce42 - c001ce62: bf6d j c001ce1c + c001d02e: fe9942e3 blt s2,s1,c001d012 + c001d032: bf6d j c001cfec /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001ce64: f03e sd a5,32(sp) - c001ce66: 0007871b sext.w a4,a5 + c001d034: f03e sd a5,32(sp) + c001d036: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ce6a: 479d li a5,7 - c001ce6c: b7f9 j c001ce3a + c001d03a: 479d li a5,7 + c001d03c: b7f9 j c001d00a -00000000c001ce6e : +00000000c001d03e : js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43054 -{ - c001ce6e: 7119 addi sp,sp,-128 - c001ce70: ecce sd s3,88(sp) - c001ce72: fc86 sd ra,120(sp) - c001ce74: f8a2 sd s0,112(sp) - c001ce76: f4a6 sd s1,104(sp) - c001ce78: f0ca sd s2,96(sp) - c001ce7a: e8d2 sd s4,80(sp) - c001ce7c: a4a2 fsd fs0,72(sp) - c001ce7e: e02e sd a1,0(sp) - c001ce80: e432 sd a2,8(sp) - c001ce82: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43062 +{ + c001d03e: 7119 addi sp,sp,-128 + c001d040: ecce sd s3,88(sp) + c001d042: fc86 sd ra,120(sp) + c001d044: f8a2 sd s0,112(sp) + c001d046: f4a6 sd s1,104(sp) + c001d048: f0ca sd s2,96(sp) + c001d04a: e8d2 sd s4,80(sp) + c001d04c: a4a2 fsd fs0,72(sp) + c001d04e: e02e sd a1,0(sp) + c001d050: e432 sd a2,8(sp) + c001d052: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43068 if (unlikely(argc == 0)) { - c001ce84: e29d bnez a3,c001ceaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43061 + c001d054: e29d bnez a3,c001d07a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43069 return __JS_NewFloat64(ctx, is_max ? -1.0 / 0.0 : 1.0 / 0.0); - c001ce86: cf89 beqz a5,c001cea0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43061 (discriminator 1) - c001ce88: 00058797 auipc a5,0x58 - c001ce8c: 9087b787 fld fa5,-1784(a5) # c0074790 <_erodata+0x10> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43061 (discriminator 2) - c001ce90: f2000753 fmv.d.x fa4,zero - c001ce94: 479d li a5,7 - c001ce96: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c001d056: cf89 beqz a5,c001d070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43069 (discriminator 1) + c001d058: 00058797 auipc a5,0x58 + c001d05c: 9987b787 fld fa5,-1640(a5) # c00749f0 <_erodata+0x10> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43069 (discriminator 2) + c001d060: f2000753 fmv.d.x fa4,zero + c001d064: 479d li a5,7 + c001d066: 1ae7f7d3 fdiv.d fa5,fa5,fa4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 (discriminator 2) return v; - c001ce9a: b03e fsd fa5,32(sp) - c001ce9c: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43101 + c001d06a: b03e fsd fa5,32(sp) + c001d06c: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43109 return JS_NewFloat64(ctx, r); - c001ce9e: a805 j c001cece -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43061 (discriminator 2) + c001d06e: a805 j c001d09e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43069 (discriminator 2) return __JS_NewFloat64(ctx, is_max ? -1.0 / 0.0 : 1.0 / 0.0); - c001cea0: 00058797 auipc a5,0x58 - c001cea4: 8f87b787 fld fa5,-1800(a5) # c0074798 <_erodata+0x18> - c001cea8: b7e5 j c001ce90 - c001ceaa: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43064 + c001d070: 00058797 auipc a5,0x58 + c001d074: 9887b787 fld fa5,-1656(a5) # c00749f8 <_erodata+0x18> + c001d078: b7e5 j c001d060 + c001d07a: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43072 tag = JS_VALUE_GET_TAG(argv[0]); - c001ceac: 6714 ld a3,8(a4) - c001ceae: 8a2a mv s4,a0 - c001ceb0: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43065 + c001d07c: 6714 ld a3,8(a4) + c001d07e: 8a2a mv s4,a0 + c001d080: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43073 if (tag == JS_TAG_INT) { - c001ceb2: 0006879b sext.w a5,a3 - c001ceb6: e7c9 bnez a5,c001cf40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43066 + c001d082: 0006879b sext.w a5,a3 + c001d086: e7c9 bnez a5,c001d110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43074 int a1, r1 = JS_VALUE_GET_INT(argv[0]); - c001ceb8: 4310 lw a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43067 + c001d088: 4310 lw a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43075 for(i = 1; i < argc; i++) { - c001ceba: 01070793 addi a5,a4,16 # 110010 <__clzdi2-0xbfeefff0> - c001cebe: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43067 (discriminator 1) - c001cec0: 03244263 blt s0,s2,c001cee4 + c001d08a: 01070793 addi a5,a4,16 # 110010 <__clzdi2-0xbfeefff0> + c001d08e: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43075 (discriminator 1) + c001d090: 03244263 blt s0,s2,c001d0b4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001cec4: da02 sw zero,52(sp) - c001cec6: d832 sw a2,48(sp) - c001cec8: 77c2 ld a5,48(sp) - c001ceca: f402 sd zero,40(sp) - c001cecc: f03e sd a5,32(sp) + c001d094: da02 sw zero,52(sp) + c001d096: d832 sw a2,48(sp) + c001d098: 77c2 ld a5,48(sp) + c001d09a: f402 sd zero,40(sp) + c001d09c: f03e sd a5,32(sp) js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43103 (discriminator 1) -} - c001cece: 70e6 ld ra,120(sp) - c001ced0: 7446 ld s0,112(sp) - c001ced2: 7502 ld a0,32(sp) - c001ced4: 75a2 ld a1,40(sp) - c001ced6: 74a6 ld s1,104(sp) - c001ced8: 7906 ld s2,96(sp) - c001ceda: 69e6 ld s3,88(sp) - c001cedc: 6a46 ld s4,80(sp) - c001cede: 2426 fld fs0,72(sp) - c001cee0: 6109 addi sp,sp,128 - c001cee2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43069 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43111 (discriminator 1) +} + c001d09e: 70e6 ld ra,120(sp) + c001d0a0: 7446 ld s0,112(sp) + c001d0a2: 7502 ld a0,32(sp) + c001d0a4: 75a2 ld a1,40(sp) + c001d0a6: 74a6 ld s1,104(sp) + c001d0a8: 7906 ld s2,96(sp) + c001d0aa: 69e6 ld s3,88(sp) + c001d0ac: 6a46 ld s4,80(sp) + c001d0ae: 2426 fld fs0,72(sp) + c001d0b0: 6109 addi sp,sp,128 + c001d0b2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43077 if (tag != JS_TAG_INT) { - c001cee4: 4798 lw a4,8(a5) - c001cee6: cf15 beqz a4,c001cf22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43070 + c001d0b4: 4798 lw a4,8(a5) + c001d0b6: cf15 beqz a4,c001d0f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43078 r = r1; - c001cee8: d20607d3 fcvt.d.w fa5,a2 - c001ceec: a83e fsd fa5,16(sp) + c001d0b8: d20607d3 fcvt.d.w fa5,a2 + c001d0bc: a83e fsd fa5,16(sp) js_fmin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43027 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43035 if (a == 0 && b == 0) { - c001ceee: f2000453 fmv.d.x fs0,zero - c001cef2: 00441713 slli a4,s0,0x4 - c001cef6: 94ba add s1,s1,a4 + c001d0be: f2000453 fmv.d.x fs0,zero + c001d0c2: 00441713 slli a4,s0,0x4 + c001d0c6: 94ba add s1,s1,a4 js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43094 while (i < argc) { - c001cef8: 05244d63 blt s0,s2,c001cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43101 + c001d0c8: 05244d63 blt s0,s2,c001d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43109 return JS_NewFloat64(ctx, r); - c001cefc: 67c2 ld a5,16(sp) + c001d0cc: 67c2 ld a5,16(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cefe: f20787d3 fmv.d.x fa5,a5 - c001cf02: c20796d3 fcvt.w.d a3,fa5,rtz + c001d0ce: f20787d3 fmv.d.x fa5,a5 + c001d0d2: c20796d3 fcvt.w.d a3,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cf06: d20687d3 fcvt.d.w fa5,a3 + c001d0d6: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001cf0a: 0006871b sext.w a4,a3 + c001d0da: 0006871b sext.w a4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cf0e: e2078653 fmv.x.d a2,fa5 - c001cf12: 0af61e63 bne a2,a5,c001cfce + c001d0de: e2078653 fmv.x.d a2,fa5 + c001d0e2: 0af61e63 bne a2,a5,c001d19e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001cf16: da02 sw zero,52(sp) - c001cf18: 4781 li a5,0 + c001d0e6: da02 sw zero,52(sp) + c001d0e8: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001cf1a: d83a sw a4,48(sp) - c001cf1c: 37c2 fld fa5,48(sp) - c001cf1e: b03e fsd fa5,32(sp) - c001cf20: bfb5 j c001ce9c + c001d0ea: d83a sw a4,48(sp) + c001d0ec: 37c2 fld fa5,48(sp) + c001d0ee: b03e fsd fa5,32(sp) + c001d0f0: bfb5 j c001d06c js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43073 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43081 a1 = JS_VALUE_GET_INT(argv[i]); - c001cf22: 4398 lw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43074 + c001d0f2: 4398 lw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43082 if (is_max) - c001cf24: 86b2 mv a3,a2 - c001cf26: 00098663 beqz s3,c001cf32 + c001d0f4: 86b2 mv a3,a2 + c001d0f6: 00098663 beqz s3,c001d102 max_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:71 if (a > b) - c001cf2a: 00e65663 bge a2,a4,c001cf36 - c001cf2e: 86ba mv a3,a4 - c001cf30: a019 j c001cf36 + c001d0fa: 00e65663 bge a2,a4,c001d106 + c001d0fe: 86ba mv a3,a4 + c001d100: a019 j c001d106 min_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c001cf32: fec74ee3 blt a4,a2,c001cf2e - c001cf36: 0006861b sext.w a2,a3 + c001d102: fec74ee3 blt a4,a2,c001d0fe + c001d106: 0006861b sext.w a2,a3 js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43075 for(i = 1; i < argc; i++) { - c001cf3a: 2405 addiw s0,s0,1 - c001cf3c: 07c1 addi a5,a5,16 - c001cf3e: b749 j c001cec0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43082 + c001d10a: 2405 addiw s0,s0,1 + c001d10c: 07c1 addi a5,a5,16 + c001d10e: b749 j c001d090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43090 if (JS_ToFloat64(ctx, &r, argv[0])) - c001cf40: 6310 ld a2,0(a4) - c001cf42: 080c addi a1,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43084 + c001d110: 6310 ld a2,0(a4) + c001d112: 080c addi a1,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43092 i = 1; - c001cf44: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43082 + c001d114: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43090 if (JS_ToFloat64(ctx, &r, argv[0])) - c001cf46: f48ff0ef jal ra,c001c68e - c001cf4a: d155 beqz a0,c001ceee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43083 + c001d116: f48ff0ef jal ra,c001c85e + c001d11a: d155 beqz a0,c001d0be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43091 return JS_EXCEPTION; - c001cf4c: f002 sd zero,32(sp) - c001cf4e: 4799 li a5,6 - c001cf50: b7b1 j c001ce9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43087 + c001d11c: f002 sd zero,32(sp) + c001d11e: 4799 li a5,6 + c001d120: b7b1 j c001d06c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43095 if (JS_ToFloat64(ctx, &a, argv[i])) - c001cf52: 6090 ld a2,0(s1) - c001cf54: 6494 ld a3,8(s1) - c001cf56: 082c addi a1,sp,24 - c001cf58: 8552 mv a0,s4 - c001cf5a: f34ff0ef jal ra,c001c68e - c001cf5e: f57d bnez a0,c001cf4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43089 + c001d122: 6090 ld a2,0(s1) + c001d124: 6494 ld a3,8(s1) + c001d126: 082c addi a1,sp,24 + c001d128: 8552 mv a0,s4 + c001d12a: f34ff0ef jal ra,c001c85e + c001d12e: f57d bnez a0,c001d11c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43097 if (!isnan(r)) { - c001cf60: 6742 ld a4,16(sp) - c001cf62: f20707d3 fmv.d.x fa5,a4 - c001cf66: a2f7a7d3 feq.d a5,fa5,fa5 - c001cf6a: cb81 beqz a5,c001cf7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43090 + c001d130: 6742 ld a4,16(sp) + c001d132: f20707d3 fmv.d.x fa5,a4 + c001d136: a2f7a7d3 feq.d a5,fa5,fa5 + c001d13a: cb81 beqz a5,c001d14a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43098 if (isnan(a)) { - c001cf6c: 6662 ld a2,24(sp) - c001cf6e: f20607d3 fmv.d.x fa5,a2 - c001cf72: a2f7a7d3 feq.d a5,fa5,fa5 - c001cf76: e789 bnez a5,c001cf80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43091 - r = a; - c001cf78: e832 sd a2,16(sp) + c001d13c: 6662 ld a2,24(sp) + c001d13e: f20607d3 fmv.d.x fa5,a2 + c001d142: a2f7a7d3 feq.d a5,fa5,fa5 + c001d146: e789 bnez a5,c001d150 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43099 + r = a; + c001d148: e832 sd a2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43107 i++; - c001cf7a: 2405 addiw s0,s0,1 - c001cf7c: 04c1 addi s1,s1,16 - c001cf7e: bfad j c001cef8 + c001d14a: 2405 addiw s0,s0,1 + c001d14c: 04c1 addi s1,s1,16 + c001d14e: bfad j c001d0c8 js_fmax(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43049 if (a == 0 && b == 0) { - c001cf80: f20707d3 fmv.d.x fa5,a4 - c001cf84: a287a7d3 feq.d a5,fa5,fs0 + c001d150: f20707d3 fmv.d.x fa5,a4 + c001d154: a287a7d3 feq.d a5,fa5,fs0 js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43093 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43101 if (is_max) - c001cf88: 02098463 beqz s3,c001cfb0 + c001d158: 02098463 beqz s3,c001d180 js_fmax(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43049 if (a == 0 && b == 0) { - c001cf8c: cb89 beqz a5,c001cf9e - c001cf8e: f20607d3 fmv.d.x fa5,a2 - c001cf92: a287a7d3 feq.d a5,fa5,fs0 - c001cf96: c781 beqz a5,c001cf9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43046 + c001d15c: cb89 beqz a5,c001d16e + c001d15e: f20607d3 fmv.d.x fa5,a2 + c001d162: a287a7d3 feq.d a5,fa5,fs0 + c001d166: c781 beqz a5,c001d16e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43054 return a1.d; - c001cf98: 8f71 and a4,a4,a2 + c001d168: 8f71 and a4,a4,a2 js_math_min_max(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43104 r = js_fmin(r, a); - c001cf9a: e83a sd a4,16(sp) - c001cf9c: bff9 j c001cf7a + c001d16a: e83a sd a4,16(sp) + c001d16c: bff9 j c001d14a js_fmax(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43056 return fmax(a, b); - c001cf9e: f20605d3 fmv.d.x fa1,a2 - c001cfa2: f2070553 fmv.d.x fa0,a4 - c001cfa6: 0223b0ef jal ra,c0057fc8 + c001d16e: f20605d3 fmv.d.x fa1,a2 + c001d172: f2070553 fmv.d.x fa0,a4 + c001d176: 0223b0ef jal ra,c0058198 js_fmin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43034 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43042 return fmin(a, b); - c001cfaa: e2050753 fmv.x.d a4,fa0 - c001cfae: b7f5 j c001cf9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43027 + c001d17a: e2050753 fmv.x.d a4,fa0 + c001d17e: b7f5 j c001d16a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43035 if (a == 0 && b == 0) { - c001cfb0: cb81 beqz a5,c001cfc0 - c001cfb2: f20607d3 fmv.d.x fa5,a2 - c001cfb6: a287a7d3 feq.d a5,fa5,fs0 - c001cfba: c399 beqz a5,c001cfc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43032 + c001d180: cb81 beqz a5,c001d190 + c001d182: f20607d3 fmv.d.x fa5,a2 + c001d186: a287a7d3 feq.d a5,fa5,fs0 + c001d18a: c399 beqz a5,c001d190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43040 return a1.d; - c001cfbc: 8f51 or a4,a4,a2 - c001cfbe: bff1 j c001cf9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43034 + c001d18c: 8f51 or a4,a4,a2 + c001d18e: bff1 j c001d16a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43042 return fmin(a, b); - c001cfc0: f20605d3 fmv.d.x fa1,a2 - c001cfc4: f2070553 fmv.d.x fa0,a4 - c001cfc8: 00c3b0ef jal ra,c0057fd4 - c001cfcc: bff9 j c001cfaa + c001d190: f20605d3 fmv.d.x fa1,a2 + c001d194: f2070553 fmv.d.x fa0,a4 + c001d198: 00c3b0ef jal ra,c00581a4 + c001d19c: bff9 j c001d17a js_math_min_max(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001cfce: f83e sd a5,48(sp) - c001cfd0: 0007871b sext.w a4,a5 + c001d19e: f83e sd a5,48(sp) + c001d1a0: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001cfd4: 479d li a5,7 - c001cfd6: b791 j c001cf1a + c001d1a4: 479d li a5,7 + c001d1a6: b791 j c001d0ea -00000000c001cfd8 : +00000000c001d1a8 : js_string_fromCodePoint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41392 { - c001cfd8: 7175 addi sp,sp,-144 - c001cfda: e02e sd a1,0(sp) - c001cfdc: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41391 + c001d1a8: 7175 addi sp,sp,-144 + c001d1aa: e02e sd a1,0(sp) + c001d1ac: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41399 if (string_buffer_init(ctx, b, argc)) - c001cfde: 180c addi a1,sp,48 - c001cfe0: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41384 -{ - c001cfe2: e122 sd s0,128(sp) - c001cfe4: f8ca sd s2,112(sp) - c001cfe6: f4ce sd s3,104(sp) - c001cfe8: e506 sd ra,136(sp) - c001cfea: fca6 sd s1,120(sp) - c001cfec: f0d2 sd s4,96(sp) - c001cfee: aca2 fsd fs0,88(sp) - c001cff0: a8a6 fsd fs1,80(sp) - c001cff2: 892a mv s2,a0 - c001cff4: 89b6 mv s3,a3 - c001cff6: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41391 + c001d1ae: 180c addi a1,sp,48 + c001d1b0: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41392 +{ + c001d1b2: e122 sd s0,128(sp) + c001d1b4: f8ca sd s2,112(sp) + c001d1b6: f4ce sd s3,104(sp) + c001d1b8: e506 sd ra,136(sp) + c001d1ba: fca6 sd s1,120(sp) + c001d1bc: f0d2 sd s4,96(sp) + c001d1be: aca2 fsd fs0,88(sp) + c001d1c0: a8a6 fsd fs1,80(sp) + c001d1c2: 892a mv s2,a0 + c001d1c4: 89b6 mv s3,a3 + c001d1c6: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41399 if (string_buffer_init(ctx, b, argc)) - c001cff8: bd7fb0ef jal ra,c0018bce - c001cffc: e939 bnez a0,c001d052 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 + c001d1c8: bd7fb0ef jal ra,c0018d9e + c001d1cc: e939 bnez a0,c001d222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41409 if (d < 0 || d > 0x10ffff || (c = (int)d) != d) - c001cffe: f2000453 fmv.d.x fs0,zero - c001d002: 84aa mv s1,a0 - c001d004: 00058797 auipc a5,0x58 - c001d008: 8147b487 fld fs1,-2028(a5) # c0074818 <_erodata+0x98> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41396 + c001d1ce: f2000453 fmv.d.x fs0,zero + c001d1d2: 84aa mv s1,a0 + c001d1d4: 00058797 auipc a5,0x58 + c001d1d8: 8a47b487 fld fs1,-1884(a5) # c0074a78 <_erodata+0x98> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41404 if (c < 0 || c > 0x10ffff) - c001d00c: 00110a37 lui s4,0x110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41393 (discriminator 1) + c001d1dc: 00110a37 lui s4,0x110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 (discriminator 1) for(i = 0; i < argc; i++) { - c001d010: 0334c363 blt s1,s3,c001d036 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41407 + c001d1e0: 0334c363 blt s1,s3,c001d206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41415 return string_buffer_end(b); - c001d014: 1808 addi a0,sp,48 - c001d016: cf5fc0ef jal ra,c0019d0a - c001d01a: f02a sd a0,32(sp) - c001d01c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41414 -} - c001d01e: 60aa ld ra,136(sp) - c001d020: 640a ld s0,128(sp) - c001d022: 7502 ld a0,32(sp) - c001d024: 75a2 ld a1,40(sp) - c001d026: 74e6 ld s1,120(sp) - c001d028: 7946 ld s2,112(sp) - c001d02a: 79a6 ld s3,104(sp) - c001d02c: 7a06 ld s4,96(sp) - c001d02e: 2466 fld fs0,88(sp) - c001d030: 24c6 fld fs1,80(sp) - c001d032: 6149 addi sp,sp,144 - c001d034: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41394 + c001d1e4: 1808 addi a0,sp,48 + c001d1e6: cf5fc0ef jal ra,c0019eda + c001d1ea: f02a sd a0,32(sp) + c001d1ec: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41422 +} + c001d1ee: 60aa ld ra,136(sp) + c001d1f0: 640a ld s0,128(sp) + c001d1f2: 7502 ld a0,32(sp) + c001d1f4: 75a2 ld a1,40(sp) + c001d1f6: 74e6 ld s1,120(sp) + c001d1f8: 7946 ld s2,112(sp) + c001d1fa: 79a6 ld s3,104(sp) + c001d1fc: 7a06 ld s4,96(sp) + c001d1fe: 2466 fld fs0,88(sp) + c001d200: 24c6 fld fs1,80(sp) + c001d202: 6149 addi sp,sp,144 + c001d204: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41402 if (JS_VALUE_GET_TAG(argv[i]) == JS_TAG_INT) { - c001d036: 6414 ld a3,8(s0) - c001d038: 0006879b sext.w a5,a3 - c001d03c: e395 bnez a5,c001d060 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41395 + c001d206: 6414 ld a3,8(s0) + c001d208: 0006879b sext.w a5,a3 + c001d20c: e395 bnez a5,c001d230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41403 c = JS_VALUE_GET_INT(argv[i]); - c001d03e: 400c lw a1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41396 + c001d20e: 400c lw a1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41404 if (c < 0 || c > 0x10ffff) - c001d040: 0545e663 bltu a1,s4,c001d08c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41410 + c001d210: 0545e663 bltu a1,s4,c001d25c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41418 JS_ThrowRangeError(ctx, "invalid code point"); - c001d044: 00041597 auipc a1,0x41 - c001d048: 36458593 addi a1,a1,868 # c005e3a8 - c001d04c: 854a mv a0,s2 - c001d04e: 90df70ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41412 + c001d214: 00041597 auipc a1,0x41 + c001d218: 3f458593 addi a1,a1,1012 # c005e608 + c001d21c: 854a mv a0,s2 + c001d21e: 82bf70ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41420 string_buffer_free(b); - c001d052: 1808 addi a0,sp,48 - c001d054: e13e90ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41413 + c001d222: 1808 addi a0,sp,48 + c001d224: d31e90ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41421 return JS_EXCEPTION; - c001d058: 4799 li a5,6 - c001d05a: f002 sd zero,32(sp) - c001d05c: f43e sd a5,40(sp) - c001d05e: b7c1 j c001d01e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41399 + c001d228: 4799 li a5,6 + c001d22a: f002 sd zero,32(sp) + c001d22c: f43e sd a5,40(sp) + c001d22e: b7c1 j c001d1ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41407 if (JS_ToFloat64(ctx, &d, argv[i])) - c001d060: 6010 ld a2,0(s0) - c001d062: 082c addi a1,sp,24 - c001d064: 854a mv a0,s2 - c001d066: e28ff0ef jal ra,c001c68e - c001d06a: f565 bnez a0,c001d052 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 + c001d230: 6010 ld a2,0(s0) + c001d232: 082c addi a1,sp,24 + c001d234: 854a mv a0,s2 + c001d236: e28ff0ef jal ra,c001c85e + c001d23a: f565 bnez a0,c001d222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41409 if (d < 0 || d > 0x10ffff || (c = (int)d) != d) - c001d06c: 27e2 fld fa5,24(sp) - c001d06e: a28797d3 flt.d a5,fa5,fs0 - c001d072: fbe9 bnez a5,c001d044 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 (discriminator 1) - c001d074: a2f497d3 flt.d a5,fs1,fa5 - c001d078: f7f1 bnez a5,c001d044 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 (discriminator 2) - c001d07a: c20797d3 fcvt.w.d a5,fa5,rtz - c001d07e: d2078753 fcvt.d.w fa4,a5 - c001d082: 0007859b sext.w a1,a5 - c001d086: a2e7a7d3 feq.d a5,fa5,fa4 - c001d08a: dfcd beqz a5,c001d044 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41404 + c001d23c: 27e2 fld fa5,24(sp) + c001d23e: a28797d3 flt.d a5,fa5,fs0 + c001d242: fbe9 bnez a5,c001d214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41409 (discriminator 1) + c001d244: a2f497d3 flt.d a5,fs1,fa5 + c001d248: f7f1 bnez a5,c001d214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41409 (discriminator 2) + c001d24a: c20797d3 fcvt.w.d a5,fa5,rtz + c001d24e: d2078753 fcvt.d.w fa4,a5 + c001d252: 0007859b sext.w a1,a5 + c001d256: a2e7a7d3 feq.d a5,fa5,fa4 + c001d25a: dfcd beqz a5,c001d214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41412 if (string_buffer_putc(b, c)) - c001d08c: 1808 addi a0,sp,48 - c001d08e: 968fc0ef jal ra,c00191f6 - c001d092: 0441 addi s0,s0,16 - c001d094: fd5d bnez a0,c001d052 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41393 (discriminator 2) + c001d25c: 1808 addi a0,sp,48 + c001d25e: 968fc0ef jal ra,c00193c6 + c001d262: 0441 addi s0,s0,16 + c001d264: fd5d bnez a0,c001d222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41401 (discriminator 2) for(i = 0; i < argc; i++) { - c001d096: 2485 addiw s1,s1,1 - c001d098: bfa5 j c001d010 + c001d266: 2485 addiw s1,s1,1 + c001d268: bfa5 j c001d1e0 -00000000c001d09a : +00000000c001d26a : js_number_isSafeInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40966 { - c001d09a: 711d addi sp,sp,-96 - c001d09c: ec86 sd ra,88(sp) - c001d09e: e8a2 sd s0,80(sp) - c001d0a0: a4a2 fsd fs0,72(sp) + c001d26a: 711d addi sp,sp,-96 + c001d26c: ec86 sd ra,88(sp) + c001d26e: e8a2 sd s0,80(sp) + c001d270: a4a2 fsd fs0,72(sp) JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c001d0a2: 471c lw a5,8(a4) + c001d272: 471c lw a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c001d0a4: cf91 beqz a5,c001d0c0 - c001d0a6: 469d li a3,7 - c001d0a8: 00d78c63 beq a5,a3,c001d0c0 + c001d274: cf91 beqz a5,c001d290 + c001d276: 469d li a3,7 + c001d278: 00d78c63 beq a5,a3,c001d290 js_number_isSafeInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40961 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40969 return JS_FALSE; - c001d0ac: e802 sd zero,16(sp) - c001d0ae: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40965 -} - c001d0b0: 60e6 ld ra,88(sp) - c001d0b2: 6446 ld s0,80(sp) - c001d0b4: ec3e sd a5,24(sp) - c001d0b6: 6542 ld a0,16(sp) - c001d0b8: 65e2 ld a1,24(sp) - c001d0ba: 2426 fld fs0,72(sp) - c001d0bc: 6125 addi sp,sp,96 - c001d0be: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40962 + c001d27c: e802 sd zero,16(sp) + c001d27e: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40973 +} + c001d280: 60e6 ld ra,88(sp) + c001d282: 6446 ld s0,80(sp) + c001d284: ec3e sd a5,24(sp) + c001d286: 6542 ld a0,16(sp) + c001d288: 65e2 ld a1,24(sp) + c001d28a: 2426 fld fs0,72(sp) + c001d28c: 6125 addi sp,sp,96 + c001d28e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40970 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d0c0: 6310 ld a2,0(a4) - c001d0c2: 6714 ld a3,8(a4) - c001d0c4: 080c addi a1,sp,16 - c001d0c6: dc8ff0ef jal ra,c001c68e - c001d0ca: 842a mv s0,a0 - c001d0cc: c511 beqz a0,c001d0d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40963 + c001d290: 6310 ld a2,0(a4) + c001d292: 6714 ld a3,8(a4) + c001d294: 080c addi a1,sp,16 + c001d296: dc8ff0ef jal ra,c001c85e + c001d29a: 842a mv s0,a0 + c001d29c: c511 beqz a0,c001d2a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40971 return JS_EXCEPTION; - c001d0ce: f002 sd zero,32(sp) - c001d0d0: 4799 li a5,6 - c001d0d2: 7702 ld a4,32(sp) - c001d0d4: e83a sd a4,16(sp) - c001d0d6: bfe9 j c001d0b0 + c001d29e: f002 sd zero,32(sp) + c001d2a0: 4799 li a5,6 + c001d2a2: 7702 ld a4,32(sp) + c001d2a4: e83a sd a4,16(sp) + c001d2a6: bfe9 j c001d280 is_safe_integer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11208 return isfinite(d) && floor(d) == d && - c001d0d8: 00057797 auipc a5,0x57 - c001d0dc: 6b07b787 fld fa5,1712(a5) # c0074788 <_erodata+0x8> - c001d0e0: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001d2a8: 00057797 auipc a5,0x57 + c001d2ac: 7407b787 fld fa5,1856(a5) # c00749e8 <_erodata+0x8> + c001d2b0: 12f7f7d3 fmul.d fa5,fa5,fa5 js_number_isSafeInteger(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40972 return JS_NewBool(ctx, is_safe_integer(d)); - c001d0e4: 2442 fld fs0,16(sp) + c001d2b4: 2442 fld fs0,16(sp) is_safe_integer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11208 return isfinite(d) && floor(d) == d && - c001d0e6: a2f427d3 feq.d a5,fs0,fa5 - c001d0ea: eb85 bnez a5,c001d11a - c001d0ec: 22f797d3 fneg.d fa5,fa5 - c001d0f0: a2f427d3 feq.d a5,fs0,fa5 - c001d0f4: e39d bnez a5,c001d11a - c001d0f6: a28427d3 feq.d a5,fs0,fs0 - c001d0fa: c385 beqz a5,c001d11a - c001d0fc: 22840553 fmv.d fa0,fs0 - c001d100: 7253a0ef jal ra,c0058024 - c001d104: a2a427d3 feq.d a5,fs0,fa0 - c001d108: cb89 beqz a5,c001d11a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11201 + c001d2b6: a2f427d3 feq.d a5,fs0,fa5 + c001d2ba: eb85 bnez a5,c001d2ea + c001d2bc: 22f797d3 fneg.d fa5,fa5 + c001d2c0: a2f427d3 feq.d a5,fs0,fa5 + c001d2c4: e39d bnez a5,c001d2ea + c001d2c6: a28427d3 feq.d a5,fs0,fs0 + c001d2ca: c385 beqz a5,c001d2ea + c001d2cc: 22840553 fmv.d fa0,fs0 + c001d2d0: 7253a0ef jal ra,c00581f4 + c001d2d4: a2a427d3 feq.d a5,fs0,fa0 + c001d2d8: cb89 beqz a5,c001d2ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11209 fabs(d) <= (double)MAX_SAFE_INTEGER; - c001d10a: 22842453 fabs.d fs0,fs0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11200 + c001d2da: 22842453 fabs.d fs0,fs0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11208 return isfinite(d) && floor(d) == d && - c001d10e: 00057797 auipc a5,0x57 - c001d112: 7127b787 fld fa5,1810(a5) # c0074820 <_erodata+0xa0> - c001d116: a2f40453 fle.d s0,fs0,fa5 + c001d2de: 00057797 auipc a5,0x57 + c001d2e2: 7a27b787 fld fa5,1954(a5) # c0074a80 <_erodata+0xa0> + c001d2e6: a2f40453 fle.d s0,fs0,fa5 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001d11a: da02 sw zero,52(sp) - c001d11c: d822 sw s0,48(sp) - c001d11e: 77c2 ld a5,48(sp) - c001d120: f03e sd a5,32(sp) - c001d122: 4785 li a5,1 - c001d124: b77d j c001d0d2 - -00000000c001d126 : + c001d2ea: da02 sw zero,52(sp) + c001d2ec: d822 sw s0,48(sp) + c001d2ee: 77c2 ld a5,48(sp) + c001d2f0: f03e sd a5,32(sp) + c001d2f2: 4785 li a5,1 + c001d2f4: b77d j c001d2a2 + +00000000c001d2f6 : js_global_isFinite(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37040 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37048 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d126: 6310 ld a2,0(a4) - c001d128: 6714 ld a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37037 + c001d2f6: 6310 ld a2,0(a4) + c001d2f8: 6714 ld a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37045 { - c001d12a: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37040 + c001d2fa: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37048 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d12c: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37037 + c001d2fc: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37045 { - c001d12e: e486 sd ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37040 + c001d2fe: e486 sd ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37048 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d130: d5eff0ef jal ra,c001c68e - c001d134: c909 beqz a0,c001d146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37041 + c001d300: d5eff0ef jal ra,c001c85e + c001d304: c909 beqz a0,c001d316 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37049 return JS_EXCEPTION; - c001d136: f002 sd zero,32(sp) - c001d138: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37044 (discriminator 8) -} - c001d13a: 60a6 ld ra,72(sp) - c001d13c: f43e sd a5,40(sp) - c001d13e: 7502 ld a0,32(sp) - c001d140: 75a2 ld a1,40(sp) - c001d142: 6161 addi sp,sp,80 - c001d144: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37042 + c001d306: f002 sd zero,32(sp) + c001d308: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37052 (discriminator 8) +} + c001d30a: 60a6 ld ra,72(sp) + c001d30c: f43e sd a5,40(sp) + c001d30e: 7502 ld a0,32(sp) + c001d310: 75a2 ld a1,40(sp) + c001d312: 6161 addi sp,sp,80 + c001d314: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37050 res = isfinite(d); - c001d146: 00057797 auipc a5,0x57 - c001d14a: 6427b787 fld fa5,1602(a5) # c0074788 <_erodata+0x8> - c001d14e: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001d152: 2762 fld fa4,24(sp) - c001d154: a2f727d3 feq.d a5,fa4,fa5 - c001d158: eb81 bnez a5,c001d168 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37042 (discriminator 1) - c001d15a: 22f797d3 fneg.d fa5,fa5 - c001d15e: a2f727d3 feq.d a5,fa4,fa5 - c001d162: e399 bnez a5,c001d168 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37042 (discriminator 3) - c001d164: a2e72553 feq.d a0,fa4,fa4 + c001d316: 00057797 auipc a5,0x57 + c001d31a: 6d27b787 fld fa5,1746(a5) # c00749e8 <_erodata+0x8> + c001d31e: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001d322: 2762 fld fa4,24(sp) + c001d324: a2f727d3 feq.d a5,fa4,fa5 + c001d328: eb81 bnez a5,c001d338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37050 (discriminator 1) + c001d32a: 22f797d3 fneg.d fa5,fa5 + c001d32e: a2f727d3 feq.d a5,fa4,fa5 + c001d332: e399 bnez a5,c001d338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37050 (discriminator 3) + c001d334: a2e72553 feq.d a0,fa4,fa4 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 (discriminator 8) - c001d168: da02 sw zero,52(sp) - c001d16a: d82a sw a0,48(sp) - c001d16c: 77c2 ld a5,48(sp) - c001d16e: f03e sd a5,32(sp) - c001d170: 4785 li a5,1 - c001d172: b7e1 j c001d13a - -00000000c001d174 : + c001d338: da02 sw zero,52(sp) + c001d33a: d82a sw a0,48(sp) + c001d33c: 77c2 ld a5,48(sp) + c001d33e: f03e sd a5,32(sp) + c001d340: 4785 li a5,1 + c001d342: b7e1 j c001d30a + +00000000c001d344 : JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c001d174: 471c lw a5,8(a4) + c001d344: 471c lw a5,8(a4) js_number_isFinite(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40939 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40947 { - c001d176: 1101 addi sp,sp,-32 - c001d178: e02e sd a1,0(sp) - c001d17a: e432 sd a2,8(sp) + c001d346: 1101 addi sp,sp,-32 + c001d348: e02e sd a1,0(sp) + c001d34a: e432 sd a2,8(sp) JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c001d17c: c781 beqz a5,c001d184 - c001d17e: 461d li a2,7 - c001d180: 00c79763 bne a5,a2,c001d18e + c001d34c: c781 beqz a5,c001d354 + c001d34e: 461d li a2,7 + c001d350: 00c79763 bne a5,a2,c001d35e js_number_isFinite(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40942 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40950 return js_global_isFinite(ctx, this_val, argc, argv); - c001d184: 6582 ld a1,0(sp) - c001d186: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40943 + c001d354: 6582 ld a1,0(sp) + c001d356: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40951 } - c001d188: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40942 + c001d358: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40950 return js_global_isFinite(ctx, this_val, argc, argv); - c001d18a: f9dff06f j c001d126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40943 (discriminator 1) + c001d35a: f9dff06f j c001d2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40951 (discriminator 1) } - c001d18e: 4501 li a0,0 - c001d190: 4585 li a1,1 - c001d192: 6105 addi sp,sp,32 - c001d194: 8082 ret + c001d35e: 4501 li a0,0 + c001d360: 4585 li a1,1 + c001d362: 6105 addi sp,sp,32 + c001d364: 8082 ret -00000000c001d196 : +00000000c001d366 : js_global_isNaN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37038 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d196: 6310 ld a2,0(a4) - c001d198: 6714 ld a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37026 + c001d366: 6310 ld a2,0(a4) + c001d368: 6714 ld a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37034 { - c001d19a: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37030 + c001d36a: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37038 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d19c: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37026 + c001d36c: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37034 { - c001d19e: e486 sd ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37030 + c001d36e: e486 sd ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37038 if (unlikely(JS_ToFloat64(ctx, &d, argv[0]))) - c001d1a0: ceeff0ef jal ra,c001c68e - c001d1a4: c909 beqz a0,c001d1b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37031 + c001d370: ceeff0ef jal ra,c001c85e + c001d374: c909 beqz a0,c001d386 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37039 return JS_EXCEPTION; - c001d1a6: f002 sd zero,32(sp) - c001d1a8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37033 -} - c001d1aa: 60a6 ld ra,72(sp) - c001d1ac: f43e sd a5,40(sp) - c001d1ae: 7502 ld a0,32(sp) - c001d1b0: 75a2 ld a1,40(sp) - c001d1b2: 6161 addi sp,sp,80 - c001d1b4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37032 + c001d376: f002 sd zero,32(sp) + c001d378: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37041 +} + c001d37a: 60a6 ld ra,72(sp) + c001d37c: f43e sd a5,40(sp) + c001d37e: 7502 ld a0,32(sp) + c001d380: 75a2 ld a1,40(sp) + c001d382: 6161 addi sp,sp,80 + c001d384: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37040 return JS_NewBool(ctx, isnan(d)); - c001d1b6: 27e2 fld fa5,24(sp) + c001d386: 27e2 fld fa5,24(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001d1b8: da02 sw zero,52(sp) + c001d388: da02 sw zero,52(sp) js_global_isNaN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37032 - c001d1ba: a2f7a7d3 feq.d a5,fa5,fa5 - c001d1be: 0017b793 seqz a5,a5 - c001d1c2: d83e sw a5,48(sp) - c001d1c4: 77c2 ld a5,48(sp) - c001d1c6: f03e sd a5,32(sp) - c001d1c8: 4785 li a5,1 - c001d1ca: b7c5 j c001d1aa - -00000000c001d1cc : +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37040 + c001d38a: a2f7a7d3 feq.d a5,fa5,fa5 + c001d38e: 0017b793 seqz a5,a5 + c001d392: d83e sw a5,48(sp) + c001d394: 77c2 ld a5,48(sp) + c001d396: f03e sd a5,32(sp) + c001d398: 4785 li a5,1 + c001d39a: b7c5 j c001d37a + +00000000c001d39c : JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c001d1cc: 471c lw a5,8(a4) + c001d39c: 471c lw a5,8(a4) js_number_isNaN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40931 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40939 { - c001d1ce: 1101 addi sp,sp,-32 - c001d1d0: e02e sd a1,0(sp) - c001d1d2: e432 sd a2,8(sp) + c001d39e: 1101 addi sp,sp,-32 + c001d3a0: e02e sd a1,0(sp) + c001d3a2: e432 sd a2,8(sp) JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c001d1d4: c781 beqz a5,c001d1dc - c001d1d6: 461d li a2,7 - c001d1d8: 00c79763 bne a5,a2,c001d1e6 + c001d3a4: c781 beqz a5,c001d3ac + c001d3a6: 461d li a2,7 + c001d3a8: 00c79763 bne a5,a2,c001d3b6 js_number_isNaN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40942 return js_global_isNaN(ctx, this_val, argc, argv); - c001d1dc: 6582 ld a1,0(sp) - c001d1de: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40935 + c001d3ac: 6582 ld a1,0(sp) + c001d3ae: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40943 } - c001d1e0: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40934 + c001d3b0: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40942 return js_global_isNaN(ctx, this_val, argc, argv); - c001d1e2: fb5ff06f j c001d196 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40935 (discriminator 1) + c001d3b2: fb5ff06f j c001d366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40943 (discriminator 1) } - c001d1e6: 4501 li a0,0 - c001d1e8: 4585 li a1,1 - c001d1ea: 6105 addi sp,sp,32 - c001d1ec: 8082 ret + c001d3b6: 4501 li a0,0 + c001d3b8: 4585 li a1,1 + c001d3ba: 6105 addi sp,sp,32 + c001d3bc: 8082 ret -00000000c001d1ee : +00000000c001d3be : JS_ToArrayLengthFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11120 -{ - c001d1ee: 711d addi sp,sp,-96 - c001d1f0: e8a2 sd s0,80(sp) - c001d1f2: e0ca sd s2,64(sp) - c001d1f4: ec86 sd ra,88(sp) - c001d1f6: 892e mv s2,a1 - c001d1f8: e4a6 sd s1,72(sp) - c001d1fa: e032 sd a2,0(sp) - c001d1fc: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11128 +{ + c001d3be: 711d addi sp,sp,-96 + c001d3c0: e8a2 sd s0,80(sp) + c001d3c2: e0ca sd s2,64(sp) + c001d3c4: ec86 sd ra,88(sp) + c001d3c6: 892e mv s2,a1 + c001d3c8: e4a6 sd s1,72(sp) + c001d3ca: e032 sd a2,0(sp) + c001d3cc: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11131 tag = JS_VALUE_GET_TAG(val); - c001d1fe: 0006859b sext.w a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11124 + c001d3ce: 0006859b sext.w a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11132 switch(tag) { - c001d202: 4809 li a6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11120 + c001d3d2: 4809 li a6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11128 { - c001d204: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11124 + c001d3d4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11132 switch(tag) { - c001d206: 02b87263 bgeu a6,a1,c001d22a - c001d20a: 5859 li a6,-10 - c001d20c: 03058863 beq a1,a6,c001d23c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11155 + c001d3d6: 02b87263 bgeu a6,a1,c001d3fa + c001d3da: 5859 li a6,-10 + c001d3dc: 03058863 beq a1,a6,c001d40c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11163 if (JS_TAG_IS_FLOAT64(tag)) { - c001d210: 481d li a6,7 - c001d212: 07059c63 bne a1,a6,c001d28a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11157 + c001d3e0: 481d li a6,7 + c001d3e2: 07059c63 bne a1,a6,c001d45a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11165 d = JS_VALUE_GET_FLOAT64(val); - c001d216: 2782 fld fa5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11158 + c001d3e6: 2782 fld fa5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11166 len = (uint32_t)d; - c001d218: c21797d3 fcvt.wu.d a5,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11159 + c001d3e8: c21797d3 fcvt.wu.d a5,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11167 if (len != d) - c001d21c: d2178753 fcvt.d.wu fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11158 + c001d3ec: d2178753 fcvt.d.wu fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11166 len = (uint32_t)d; - c001d220: ca3e sw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11159 + c001d3f0: ca3e sw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11167 if (len != d) - c001d222: a2f727d3 feq.d a5,fa4,fa5 - c001d226: e791 bnez a5,c001d232 - c001d228: a889 j c001d27a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11130 + c001d3f2: a2f727d3 feq.d a5,fa4,fa5 + c001d3f6: e791 bnez a5,c001d402 + c001d3f8: a889 j c001d44a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11138 v = JS_VALUE_GET_INT(val); - c001d22a: 4782 lw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11131 + c001d3fa: 4782 lw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11139 if (v < 0) - c001d22c: 0407c763 bltz a5,c001d27a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11133 + c001d3fc: 0407c763 bltz a5,c001d44a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11141 len = v; - c001d230: ca3e sw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11192 + c001d400: ca3e sw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11200 *plen = len; - c001d232: 47d2 lw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11193 + c001d402: 47d2 lw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11201 return 0; - c001d234: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11192 + c001d404: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11200 *plen = len; - c001d236: 00f92023 sw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11193 + c001d406: 00f92023 sw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11201 return 0; - c001d23a: a89d j c001d2b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11144 + c001d40a: a89d j c001d480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11152 bf_get_int32((int32_t *)&len, &p->num, BF_GET_INT_MOD); - c001d23c: 00860493 addi s1,a2,8 - c001d240: 85a6 mv a1,s1 - c001d242: 4605 li a2,1 - c001d244: 0848 addi a0,sp,20 - c001d246: 753320ef jal ra,c0050198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11145 + c001d40c: 00860493 addi s1,a2,8 + c001d410: 85a6 mv a1,s1 + c001d412: 4605 li a2,1 + c001d414: 0848 addi a0,sp,20 + c001d416: 753320ef jal ra,c0050368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11153 bf_init(ctx->bf_ctx, &a); - c001d24a: 19043503 ld a0,400(s0) - c001d24e: 082c addi a1,sp,24 - c001d250: 5bd2f0ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11146 + c001d41a: 19043503 ld a0,400(s0) + c001d41e: 082c addi a1,sp,24 + c001d420: 5bd2f0ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11154 bf_set_ui(&a, len); - c001d254: 01416583 lwu a1,20(sp) - c001d258: 0828 addi a0,sp,24 - c001d25a: 6232f0ef jal ra,c004d07c + c001d424: 01416583 lwu a1,20(sp) + c001d428: 0828 addi a0,sp,24 + c001d42a: 6232f0ef jal ra,c004d24c bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 - c001d25e: 85a6 mv a1,s1 - c001d260: 0828 addi a0,sp,24 - c001d262: 3a9300ef jal ra,c004de0a - c001d266: 84aa mv s1,a0 + c001d42e: 85a6 mv a1,s1 + c001d430: 0828 addi a0,sp,24 + c001d432: 3a9300ef jal ra,c004dfda + c001d436: 84aa mv s1,a0 JS_ToArrayLengthFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11156 bf_delete(&a); - c001d268: 0828 addi a0,sp,24 - c001d26a: c40e90ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11149 + c001d438: 0828 addi a0,sp,24 + c001d43a: b5ee90ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11157 JS_FreeValue(ctx, val); - c001d26e: 6582 ld a1,0(sp) - c001d270: 6622 ld a2,8(sp) - c001d272: 8522 mv a0,s0 - c001d274: 8c5ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11150 + c001d43e: 6582 ld a1,0(sp) + c001d440: 6622 ld a2,8(sp) + c001d442: 8522 mv a0,s0 + c001d444: fe2ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11158 if (!res) - c001d278: dccd beqz s1,c001d232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11185 + c001d448: dccd beqz s1,c001d402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11193 JS_ThrowRangeError(ctx, "invalid array length"); - c001d27a: 8522 mv a0,s0 - c001d27c: 00041597 auipc a1,0x41 - c001d280: ecc58593 addi a1,a1,-308 # c005e148 - c001d284: ed6f70ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11186 + c001d44a: 8522 mv a0,s0 + c001d44c: 00041597 auipc a1,0x41 + c001d450: f5c58593 addi a1,a1,-164 # c005e3a8 + c001d454: df4f70ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11194 return -1; - c001d288: a01d j c001d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11164 + c001d458: a01d j c001d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11172 if (is_array_ctor) { - c001d28a: cb0d beqz a4,c001d2bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11165 + c001d45a: cb0d beqz a4,c001d48c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11173 val = JS_ToNumberFree(ctx, val); - c001d28c: 85b2 mv a1,a2 - c001d28e: 8636 mv a2,a3 - c001d290: fdbfe0ef jal ra,c001c26a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11166 + c001d45c: 85b2 mv a1,a2 + c001d45e: 8636 mv a2,a3 + c001d460: fdbfe0ef jal ra,c001c43a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11174 if (JS_IsException(val)) - c001d294: 0005871b sext.w a4,a1 - c001d298: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11165 + c001d464: 0005871b sext.w a4,a1 + c001d468: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11173 val = JS_ToNumberFree(ctx, val); - c001d29a: 862a mv a2,a0 - c001d29c: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11166 + c001d46a: 862a mv a2,a0 + c001d46c: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11174 if (JS_IsException(val)) - c001d29e: 00f70863 beq a4,a5,c001d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11169 + c001d46e: 00f70863 beq a4,a5,c001d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11177 if (JS_ToArrayLengthFree(ctx, &len, val, TRUE)) - c001d2a2: 4705 li a4,1 - c001d2a4: 084c addi a1,sp,20 - c001d2a6: 8522 mv a0,s0 - c001d2a8: f47ff0ef jal ra,c001d1ee - c001d2ac: d159 beqz a0,c001d232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11167 (discriminator 1) + c001d472: 4705 li a4,1 + c001d474: 084c addi a1,sp,20 + c001d476: 8522 mv a0,s0 + c001d478: f47ff0ef jal ra,c001d3be + c001d47c: d159 beqz a0,c001d402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11175 (discriminator 1) return -1; - c001d2ae: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11194 -} - c001d2b0: 60e6 ld ra,88(sp) - c001d2b2: 6446 ld s0,80(sp) - c001d2b4: 64a6 ld s1,72(sp) - c001d2b6: 6906 ld s2,64(sp) - c001d2b8: 6125 addi sp,sp,96 - c001d2ba: 8082 ret + c001d47e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11202 +} + c001d480: 60e6 ld ra,88(sp) + c001d482: 6446 ld s0,80(sp) + c001d484: 64a6 ld s1,72(sp) + c001d486: 6906 ld s2,64(sp) + c001d488: 6125 addi sp,sp,96 + c001d48a: 8082 ret JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c001d2bc: 084c addi a1,sp,20 - c001d2be: ec32 sd a2,24(sp) - c001d2c0: f036 sd a3,32(sp) - c001d2c2: 8acff0ef jal ra,c001c36e + c001d48c: 084c addi a1,sp,20 + c001d48e: ec32 sd a2,24(sp) + c001d490: f036 sd a3,32(sp) + c001d492: 8acff0ef jal ra,c001c53e JS_ToArrayLengthFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11182 JS_FreeValue(ctx, val); - c001d2c6: 6582 ld a1,0(sp) - c001d2c8: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11173 + c001d496: 6582 ld a1,0(sp) + c001d498: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11181 if (JS_ToUint32(ctx, &len, val)) { - c001d2ca: c509 beqz a0,c001d2d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11174 + c001d49a: c509 beqz a0,c001d4a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11182 JS_FreeValue(ctx, val); - c001d2cc: 8522 mv a0,s0 - c001d2ce: 86bea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11175 + c001d49c: 8522 mv a0,s0 + c001d49e: f88ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11183 return -1; - c001d2d2: bff1 j c001d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11177 + c001d4a2: bff1 j c001d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11185 val = JS_ToNumberFree(ctx, val); - c001d2d4: 8522 mv a0,s0 - c001d2d6: f95fe0ef jal ra,c001c26a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11178 + c001d4a4: 8522 mv a0,s0 + c001d4a6: f95fe0ef jal ra,c001c43a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11186 if (JS_IsException(val)) - c001d2da: 0005871b sext.w a4,a1 - c001d2de: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11177 + c001d4aa: 0005871b sext.w a4,a1 + c001d4ae: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11185 val = JS_ToNumberFree(ctx, val); - c001d2e0: 862a mv a2,a0 - c001d2e2: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11178 + c001d4b0: 862a mv a2,a0 + c001d4b2: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11186 if (JS_IsException(val)) - c001d2e4: fcf705e3 beq a4,a5,c001d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11181 + c001d4b4: fcf705e3 beq a4,a5,c001d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11189 if (JS_ToArrayLengthFree(ctx, &len1, val, FALSE)) - c001d2e8: 4701 li a4,0 - c001d2ea: 082c addi a1,sp,24 - c001d2ec: 8522 mv a0,s0 - c001d2ee: f01ff0ef jal ra,c001d1ee - c001d2f2: fd55 bnez a0,c001d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11183 + c001d4b8: 4701 li a4,0 + c001d4ba: 082c addi a1,sp,24 + c001d4bc: 8522 mv a0,s0 + c001d4be: f01ff0ef jal ra,c001d3be + c001d4c2: fd55 bnez a0,c001d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11191 if (len1 != len) { - c001d2f4: 4762 lw a4,24(sp) - c001d2f6: 47d2 lw a5,20(sp) - c001d2f8: f2f70de3 beq a4,a5,c001d232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11184 + c001d4c4: 4762 lw a4,24(sp) + c001d4c6: 47d2 lw a5,20(sp) + c001d4c8: f2f70de3 beq a4,a5,c001d402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11192 fail: - c001d2fc: bfbd j c001d27a + c001d4cc: bfbd j c001d44a -00000000c001d2fe : +00000000c001d4ce : set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8294 -{ - c001d2fe: 7135 addi sp,sp,-160 - c001d300: e922 sd s0,144(sp) - c001d302: f4d6 sd s5,104(sp) - c001d304: 842e mv s0,a1 - c001d306: 8aba mv s5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8302 +{ + c001d4ce: 7135 addi sp,sp,-160 + c001d4d0: e922 sd s0,144(sp) + c001d4d2: f4d6 sd s5,104(sp) + c001d4d4: 842e mv s0,a1 + c001d4d6: 8aba mv s5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8307 ret = JS_ToArrayLengthFree(ctx, &len, val, FALSE); - c001d308: 084c addi a1,sp,20 - c001d30a: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8294 -{ - c001d30c: e526 sd s1,136(sp) - c001d30e: ed06 sd ra,152(sp) - c001d310: e14a sd s2,128(sp) - c001d312: fcce sd s3,120(sp) - c001d314: f8d2 sd s4,112(sp) - c001d316: f0da sd s6,96(sp) - c001d318: ecde sd s7,88(sp) - c001d31a: 84aa mv s1,a0 - c001d31c: e032 sd a2,0(sp) - c001d31e: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8299 + c001d4d8: 084c addi a1,sp,20 + c001d4da: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8302 +{ + c001d4dc: e526 sd s1,136(sp) + c001d4de: ed06 sd ra,152(sp) + c001d4e0: e14a sd s2,128(sp) + c001d4e2: fcce sd s3,120(sp) + c001d4e4: f8d2 sd s4,112(sp) + c001d4e6: f0da sd s6,96(sp) + c001d4e8: ecde sd s7,88(sp) + c001d4ea: 84aa mv s1,a0 + c001d4ec: e032 sd a2,0(sp) + c001d4ee: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8307 ret = JS_ToArrayLengthFree(ctx, &len, val, FALSE); - c001d320: ecfff0ef jal ra,c001d1ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8300 + c001d4f0: ecfff0ef jal ra,c001d3be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8308 if (ret) - c001d324: 1c051363 bnez a0,c001d4ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8303 + c001d4f4: 1c051363 bnez a0,c001d6ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8311 if (unlikely(!(p->shape->prop[0].flags & JS_PROP_WRITABLE))) - c001d328: 6c1c ld a5,24(s0) - c001d32a: 63bc ld a5,64(a5) - c001d32c: 83e9 srli a5,a5,0x1a - c001d32e: 8b89 andi a5,a5,2 - c001d330: e395 bnez a5,c001d354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8304 + c001d4f8: 6c1c ld a5,24(s0) + c001d4fa: 63bc ld a5,64(a5) + c001d4fc: 83e9 srli a5,a5,0x1a + c001d4fe: 8b89 andi a5,a5,2 + c001d500: e395 bnez a5,c001d524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8312 return JS_ThrowTypeErrorReadOnly(ctx, flags, JS_ATOM_length); - c001d332: 03000613 li a2,48 - c001d336: 85d6 mv a1,s5 - c001d338: 8526 mv a0,s1 - c001d33a: 9cef60ef jal ra,c0013508 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8380 -} - c001d33e: 60ea ld ra,152(sp) - c001d340: 644a ld s0,144(sp) - c001d342: 64aa ld s1,136(sp) - c001d344: 690a ld s2,128(sp) - c001d346: 79e6 ld s3,120(sp) - c001d348: 7a46 ld s4,112(sp) - c001d34a: 7aa6 ld s5,104(sp) - c001d34c: 7b06 ld s6,96(sp) - c001d34e: 6be6 ld s7,88(sp) - c001d350: 610d addi sp,sp,160 - c001d352: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8306 + c001d502: 03000613 li a2,48 + c001d506: 85d6 mv a1,s5 + c001d508: 8526 mv a0,s1 + c001d50a: 8ecf60ef jal ra,c00135f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8388 +} + c001d50e: 60ea ld ra,152(sp) + c001d510: 644a ld s0,144(sp) + c001d512: 64aa ld s1,136(sp) + c001d514: 690a ld s2,128(sp) + c001d516: 79e6 ld s3,120(sp) + c001d518: 7a46 ld s4,112(sp) + c001d51a: 7aa6 ld s5,104(sp) + c001d51c: 7b06 ld s6,96(sp) + c001d51e: 6be6 ld s7,88(sp) + c001d520: 610d addi sp,sp,160 + c001d522: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8314 if (likely(p->fast_array)) { - c001d354: 00544783 lbu a5,5(s0) - c001d358: 8ba1 andi a5,a5,8 - c001d35a: c3a5 beqz a5,c001d3ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8307 + c001d524: 00544783 lbu a5,5(s0) + c001d528: 8ba1 andi a5,a5,8 + c001d52a: c3a5 beqz a5,c001d58a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8315 uint32_t old_len = p->u.array.count; - c001d35c: 403c lw a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8308 + c001d52c: 403c lw a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8316 if (len < old_len) { - c001d35e: 4952 lw s2,20(sp) - c001d360: 00f97963 bgeu s2,a5,c001d372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8309 + c001d52e: 4952 lw s2,20(sp) + c001d530: 00f97963 bgeu s2,a5,c001d542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8317 for(i = len; i < old_len; i++) { - c001d364: 2901 sext.w s2,s2 - c001d366: 0007899b sext.w s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8309 (discriminator 1) - c001d36a: 03391563 bne s2,s3,c001d394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8312 + c001d534: 2901 sext.w s2,s2 + c001d536: 0007899b sext.w s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8317 (discriminator 1) + c001d53a: 03391563 bne s2,s3,c001d564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8320 p->u.array.count = len; - c001d36e: 47d2 lw a5,20(sp) - c001d370: c03c sw a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8314 + c001d53e: 47d2 lw a5,20(sp) + c001d540: c03c sw a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8322 p->prop[0].u.value = JS_NewUint32(ctx, len); - c001d372: 4752 lw a4,20(sp) - c001d374: 7014 ld a3,32(s0) + c001d542: 4752 lw a4,20(sp) + c001d544: 7014 ld a3,32(s0) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c001d376: 0007079b sext.w a5,a4 - c001d37a: 02074863 bltz a4,c001d3aa + c001d546: 0007079b sext.w a5,a4 + c001d54a: 02074863 bltz a4,c001d57a JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001d37e: da02 sw zero,52(sp) - c001d380: d83e sw a5,48(sp) - c001d382: 7742 ld a4,48(sp) - c001d384: e0ba sd a4,64(sp) - c001d386: 4701 li a4,0 + c001d54e: da02 sw zero,52(sp) + c001d550: d83e sw a5,48(sp) + c001d552: 7742 ld a4,48(sp) + c001d554: e0ba sd a4,64(sp) + c001d556: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c001d388: c0be sw a5,64(sp) - c001d38a: 2786 fld fa5,64(sp) + c001d558: c0be sw a5,64(sp) + c001d55a: 2786 fld fa5,64(sp) set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8314 - c001d38c: e698 sd a4,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8379 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8322 + c001d55c: e698 sd a4,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8387 return TRUE; - c001d38e: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8314 + c001d55e: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8322 p->prop[0].u.value = JS_NewUint32(ctx, len); - c001d390: a29c fsd fa5,0(a3) - c001d392: b775 j c001d33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8310 (discriminator 3) + c001d560: a29c fsd fa5,0(a3) + c001d562: b775 j c001d50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8318 (discriminator 3) JS_FreeValue(ctx, p->u.array.u.values[i]); - c001d394: 7c1c ld a5,56(s0) - c001d396: 00491713 slli a4,s2,0x4 - c001d39a: 8526 mv a0,s1 - c001d39c: 97ba add a5,a5,a4 - c001d39e: 638c ld a1,0(a5) - c001d3a0: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8309 (discriminator 3) + c001d564: 7c1c ld a5,56(s0) + c001d566: 00491713 slli a4,s2,0x4 + c001d56a: 8526 mv a0,s1 + c001d56c: 97ba add a5,a5,a4 + c001d56e: 638c ld a1,0(a5) + c001d570: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8317 (discriminator 3) for(i = len; i < old_len; i++) { - c001d3a2: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8310 (discriminator 3) + c001d572: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8318 (discriminator 3) JS_FreeValue(ctx, p->u.array.u.values[i]); - c001d3a4: f94ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8309 (discriminator 3) + c001d574: eb2ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8317 (discriminator 3) for(i = len; i < old_len; i++) { - c001d3a8: b7c9 j c001d36a + c001d578: b7c9 j c001d53a JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c001d3aa: d21707d3 fcvt.d.wu fa5,a4 - c001d3ae: 471d li a4,7 - c001d3b0: e20787d3 fmv.x.d a5,fa5 + c001d57a: d21707d3 fcvt.d.wu fa5,a4 + c001d57e: 471d li a4,7 + c001d580: e20787d3 fmv.x.d a5,fa5 set_array_length(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001d3b4: a0be fsd fa5,64(sp) - c001d3b6: 2781 sext.w a5,a5 - c001d3b8: bfc1 j c001d388 - c001d3ba: 701c ld a5,32(s0) - c001d3bc: 89aa mv s3,a0 + c001d584: a0be fsd fa5,64(sp) + c001d586: 2781 sext.w a5,a5 + c001d588: bfc1 j c001d558 + c001d58a: 701c ld a5,32(s0) + c001d58c: 89aa mv s3,a0 JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c001d3be: 086c addi a1,sp,28 - c001d3c0: 6390 ld a2,0(a5) - c001d3c2: 6794 ld a3,8(a5) - c001d3c4: 8526 mv a0,s1 - c001d3c6: e0b2 sd a2,64(sp) - c001d3c8: e4b6 sd a3,72(sp) - c001d3ca: fa5fe0ef jal ra,c001c36e + c001d58e: 086c addi a1,sp,28 + c001d590: 6390 ld a2,0(a5) + c001d592: 6794 ld a3,8(a5) + c001d594: 8526 mv a0,s1 + c001d596: e0b2 sd a2,64(sp) + c001d598: e4b6 sd a3,72(sp) + c001d59a: fa5fe0ef jal ra,c001c53e set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8319 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8327 if (len < cur_len) { - c001d3ce: 47d2 lw a5,20(sp) - c001d3d0: 4772 lw a4,28(sp) - c001d3d2: 10e7f263 bgeu a5,a4,c001d4d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8325 + c001d59e: 47d2 lw a5,20(sp) + c001d5a0: 4772 lw a4,28(sp) + c001d5a2: 10e7f263 bgeu a5,a4,c001d6a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8333 sh = p->shape; - c001d3d6: 01843a03 ld s4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8326 + c001d5a6: 01843a03 ld s4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8334 if (d <= sh->prop_count) { - c001d3da: 9f1d subw a4,a4,a5 - c001d3dc: 028a2683 lw a3,40(s4) # 110028 <__clzdi2-0xbfeeffd8> - c001d3e0: 08e6f063 bgeu a3,a4,c001d460 + c001d5aa: 9f1d subw a4,a4,a5 + c001d5ac: 028a2683 lw a3,40(s4) # 110028 <__clzdi2-0xbfeeffd8> + c001d5b0: 08e6f063 bgeu a3,a4,c001d630 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c001d3e4: 040a0913 addi s2,s4,64 + c001d5b4: 040a0913 addi s2,s4,64 set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8345 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8353 cur_len = len; - c001d3e8: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8346 + c001d5b8: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8354 for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; - c001d3ea: 8b4a mv s6,s2 - c001d3ec: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8346 (discriminator 1) - c001d3ee: 028a2783 lw a5,40(s4) - c001d3f2: 0afbcb63 blt s7,a5,c001d4a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8357 (discriminator 1) + c001d5ba: 8b4a mv s6,s2 + c001d5bc: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8354 (discriminator 1) + c001d5be: 028a2783 lw a5,40(s4) + c001d5c2: 0afbcb63 blt s7,a5,c001d678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8365 (discriminator 1) for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; - c001d3f6: 028a2783 lw a5,40(s4) - c001d3fa: 06f9d763 bge s3,a5,c001d468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8359 + c001d5c6: 028a2783 lw a5,40(s4) + c001d5ca: 06f9d763 bge s3,a5,c001d638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8367 if (pr->atom != JS_ATOM_NULL && - c001d3fe: 00492603 lw a2,4(s2) - c001d402: c61d beqz a2,c001d430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8360 (discriminator 1) + c001d5ce: 00492603 lw a2,4(s2) + c001d5d2: c61d beqz a2,c001d600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8368 (discriminator 1) JS_AtomIsArrayIndex(ctx, &idx, pr->atom)) { - c001d404: 082c addi a1,sp,24 - c001d406: 8526 mv a0,s1 - c001d408: 9c9e70ef jal ra,c0004dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8359 (discriminator 1) + c001d5d4: 082c addi a1,sp,24 + c001d5d6: 8526 mv a0,s1 + c001d5d8: ff8e70ef jal ra,c0004dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8367 (discriminator 1) if (pr->atom != JS_ATOM_NULL && - c001d40c: c115 beqz a0,c001d430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8361 + c001d5dc: c115 beqz a0,c001d600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8369 if (idx >= cur_len) { - c001d40e: 4762 lw a4,24(sp) - c001d410: 47f2 lw a5,28(sp) - c001d412: 00f76f63 bltu a4,a5,c001d430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8363 + c001d5de: 4762 lw a4,24(sp) + c001d5e0: 47f2 lw a5,28(sp) + c001d5e2: 00f76f63 bltu a4,a5,c001d600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8371 delete_property(ctx, p, pr->atom); - c001d416: 00492603 lw a2,4(s2) - c001d41a: 85a2 mv a1,s0 - c001d41c: 8526 mv a0,s1 - c001d41e: cd1f90ef jal ra,c00170ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8365 + c001d5e6: 00492603 lw a2,4(s2) + c001d5ea: 85a2 mv a1,s0 + c001d5ec: 8526 mv a0,s1 + c001d5ee: cd1f90ef jal ra,c00172be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8373 sh = p->shape; - c001d422: 01843a03 ld s4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8366 + c001d5f2: 01843a03 ld s4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8374 pr = get_shape_prop(sh) + i; - c001d426: 00399793 slli a5,s3,0x3 + c001d5f6: 00399793 slli a5,s3,0x3 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c001d42a: 040a0913 addi s2,s4,64 + c001d5fa: 040a0913 addi s2,s4,64 set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8374 pr = get_shape_prop(sh) + i; - c001d42e: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8358 + c001d5fe: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8366 i++, pr++) { - c001d430: 2985 addiw s3,s3,1 - c001d432: 0921 addi s2,s2,8 - c001d434: b7c9 j c001d3f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8331 + c001d600: 2985 addiw s3,s3,1 + c001d602: 0921 addi s2,s2,8 + c001d604: b7c9 j c001d5c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8339 atom = JS_NewAtomUInt32(ctx, cur_len - 1); - c001d436: 35fd addiw a1,a1,-1 - c001d438: 8526 mv a0,s1 - c001d43a: e08fc0ef jal ra,c0019a42 - c001d43e: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8332 + c001d606: 35fd addiw a1,a1,-1 + c001d608: 8526 mv a0,s1 + c001d60a: e08fc0ef jal ra,c0019c12 + c001d60e: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8340 ret = delete_property(ctx, p, atom); - c001d442: 85a2 mv a1,s0 - c001d444: 864a mv a2,s2 - c001d446: 8526 mv a0,s1 - c001d448: ca7f90ef jal ra,c00170ee - c001d44c: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8333 + c001d612: 85a2 mv a1,s0 + c001d614: 864a mv a2,s2 + c001d616: 8526 mv a0,s1 + c001d618: ca7f90ef jal ra,c00172be + c001d61c: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8341 JS_FreeAtom(ctx, atom); - c001d44e: 85ca mv a1,s2 - c001d450: 8526 mv a0,s1 - c001d452: 8baea0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8334 + c001d61e: 85ca mv a1,s2 + c001d620: 8526 mv a0,s1 + c001d622: fd9e90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8342 if (unlikely(!ret)) { - c001d456: 00098963 beqz s3,c001d468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8339 + c001d626: 00098963 beqz s3,c001d638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8347 cur_len--; - c001d45a: 47f2 lw a5,28(sp) - c001d45c: 37fd addiw a5,a5,-1 - c001d45e: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8330 + c001d62a: 47f2 lw a5,28(sp) + c001d62c: 37fd addiw a5,a5,-1 + c001d62e: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8338 while (cur_len > len) { - c001d460: 45f2 lw a1,28(sp) - c001d462: 47d2 lw a5,20(sp) - c001d464: fcb7e9e3 bltu a5,a1,c001d436 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8374 + c001d630: 45f2 lw a1,28(sp) + c001d632: 47d2 lw a5,20(sp) + c001d634: fcb7e9e3 bltu a5,a1,c001d606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8382 set_value(ctx, &p->prop[0].u.value, JS_NewUint32(ctx, cur_len)); - c001d468: 4772 lw a4,28(sp) - c001d46a: 700c ld a1,32(s0) + c001d638: 4772 lw a4,28(sp) + c001d63a: 700c ld a1,32(s0) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c001d46c: 0007079b sext.w a5,a4 - c001d470: 06074563 bltz a4,c001d4da + c001d63c: 0007079b sext.w a5,a4 + c001d640: 06074563 bltz a4,c001d6aa JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001d474: c282 sw zero,68(sp) - c001d476: c0be sw a5,64(sp) - c001d478: 6706 ld a4,64(sp) - c001d47a: e482 sd zero,72(sp) - c001d47c: fc02 sd zero,56(sp) - c001d47e: f83a sd a4,48(sp) - c001d480: 4681 li a3,0 + c001d644: c282 sw zero,68(sp) + c001d646: c0be sw a5,64(sp) + c001d648: 6706 ld a4,64(sp) + c001d64a: e482 sd zero,72(sp) + c001d64c: fc02 sd zero,56(sp) + c001d64e: f83a sd a4,48(sp) + c001d650: 4681 li a3,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c001d482: d83e sw a5,48(sp) + c001d652: d83e sw a5,48(sp) set_array_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8374 - c001d484: 7642 ld a2,48(sp) - c001d486: 8526 mv a0,s1 - c001d488: afbea0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8375 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8382 + c001d654: 7642 ld a2,48(sp) + c001d656: 8526 mv a0,s1 + c001d658: a19ea0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8383 if (unlikely(cur_len > len)) { - c001d48c: 4772 lw a4,28(sp) - c001d48e: 47d2 lw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8379 + c001d65c: 4772 lw a4,28(sp) + c001d65e: 47d2 lw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8387 return TRUE; - c001d490: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8375 + c001d660: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8383 if (unlikely(cur_len > len)) { - c001d492: eae7f6e3 bgeu a5,a4,c001d33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8376 + c001d662: eae7f6e3 bgeu a5,a4,c001d50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8384 return JS_ThrowTypeErrorOrFalse(ctx, flags, "not configurable"); - c001d496: 00041617 auipc a2,0x41 - c001d49a: f2a60613 addi a2,a2,-214 # c005e3c0 - c001d49e: 85d6 mv a1,s5 - c001d4a0: 8526 mv a0,s1 - c001d4a2: c27f50ef jal ra,c00130c8 - c001d4a6: bd61 j c001d33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8348 + c001d666: 00041617 auipc a2,0x41 + c001d66a: fba60613 addi a2,a2,-70 # c005e620 + c001d66e: 85d6 mv a1,s5 + c001d670: 8526 mv a0,s1 + c001d672: b45f50ef jal ra,c00131b6 + c001d676: bd61 j c001d50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8356 if (pr->atom != JS_ATOM_NULL && - c001d4a8: 004b2603 lw a2,4(s6) - c001d4ac: c215 beqz a2,c001d4d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8349 (discriminator 1) + c001d678: 004b2603 lw a2,4(s6) + c001d67c: c215 beqz a2,c001d6a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8357 (discriminator 1) JS_AtomIsArrayIndex(ctx, &idx, pr->atom)) { - c001d4ae: 082c addi a1,sp,24 - c001d4b0: 8526 mv a0,s1 - c001d4b2: 91fe70ef jal ra,c0004dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8348 (discriminator 1) + c001d67e: 082c addi a1,sp,24 + c001d680: 8526 mv a0,s1 + c001d682: f4ee70ef jal ra,c0004dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8356 (discriminator 1) if (pr->atom != JS_ATOM_NULL && - c001d4b6: cd09 beqz a0,c001d4d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8350 + c001d686: cd09 beqz a0,c001d6a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8358 if (idx >= cur_len && - c001d4b8: 4762 lw a4,24(sp) - c001d4ba: 47f2 lw a5,28(sp) - c001d4bc: 00f76a63 bltu a4,a5,c001d4d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8351 (discriminator 1) + c001d688: 4762 lw a4,24(sp) + c001d68a: 47f2 lw a5,28(sp) + c001d68c: 00f76a63 bltu a4,a5,c001d6a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8359 (discriminator 1) !(pr->flags & JS_PROP_CONFIGURABLE)) { - c001d4c0: 000b2783 lw a5,0(s6) - c001d4c4: 01a7d79b srliw a5,a5,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8350 (discriminator 1) + c001d690: 000b2783 lw a5,0(s6) + c001d694: 01a7d79b srliw a5,a5,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8358 (discriminator 1) if (idx >= cur_len && - c001d4c8: 8b85 andi a5,a5,1 - c001d4ca: e399 bnez a5,c001d4d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8352 + c001d698: 8b85 andi a5,a5,1 + c001d69a: e399 bnez a5,c001d6a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8360 cur_len = idx + 1; - c001d4cc: 2705 addiw a4,a4,1 - c001d4ce: ce3a sw a4,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8347 + c001d69c: 2705 addiw a4,a4,1 + c001d69e: ce3a sw a4,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8355 i++, pr++) { - c001d4d0: 2b85 addiw s7,s7,1 - c001d4d2: 0b21 addi s6,s6,8 - c001d4d4: bf29 j c001d3ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8372 + c001d6a0: 2b85 addiw s7,s7,1 + c001d6a2: 0b21 addi s6,s6,8 + c001d6a4: bf29 j c001d5be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8380 cur_len = len; - c001d4d6: ce3e sw a5,28(sp) - c001d4d8: bf41 j c001d468 + c001d6a6: ce3e sw a5,28(sp) + c001d6a8: bf41 j c001d638 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c001d4da: d21707d3 fcvt.d.wu fa5,a4 - c001d4de: 469d li a3,7 - c001d4e0: e20787d3 fmv.x.d a5,fa5 + c001d6aa: d21707d3 fcvt.d.wu fa5,a4 + c001d6ae: 469d li a3,7 + c001d6b0: e20787d3 fmv.x.d a5,fa5 set_array_length(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001d4e4: b83e fsd fa5,48(sp) - c001d4e6: 2781 sext.w a5,a5 - c001d4e8: bf69 j c001d482 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8301 + c001d6b4: b83e fsd fa5,48(sp) + c001d6b6: 2781 sext.w a5,a5 + c001d6b8: bf69 j c001d652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8309 return -1; - c001d4ea: 557d li a0,-1 - c001d4ec: bd89 j c001d33e + c001d6ba: 557d li a0,-1 + c001d6bc: bd89 j c001d50e -00000000c001d4ee : +00000000c001d6be : JS_ToInt32SatFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10768 -{ - c001d4ee: 7139 addi sp,sp,-64 - c001d4f0: f822 sd s0,48(sp) - c001d4f2: f426 sd s1,40(sp) - c001d4f4: f04a sd s2,32(sp) - c001d4f6: ec4e sd s3,24(sp) - c001d4f8: e852 sd s4,16(sp) - c001d4fa: e032 sd a2,0(sp) - c001d4fc: fc06 sd ra,56(sp) - c001d4fe: 892a mv s2,a0 - c001d500: 842e mv s0,a1 - c001d502: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10776 +{ + c001d6be: 7139 addi sp,sp,-64 + c001d6c0: f822 sd s0,48(sp) + c001d6c2: f426 sd s1,40(sp) + c001d6c4: f04a sd s2,32(sp) + c001d6c6: ec4e sd s3,24(sp) + c001d6c8: e852 sd s4,16(sp) + c001d6ca: e032 sd a2,0(sp) + c001d6cc: fc06 sd ra,56(sp) + c001d6ce: 892a mv s2,a0 + c001d6d0: 842e mv s0,a1 + c001d6d2: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10782 switch(tag) { - c001d504: 4499 li s1,6 - c001d506: 499d li s3,7 - c001d508: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10773 + c001d6d4: 4499 li s1,6 + c001d6d6: 499d li s3,7 + c001d6d8: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10781 tag = JS_VALUE_GET_NORM_TAG(val); - c001d50a: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10774 + c001d6da: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10782 switch(tag) { - c001d50e: 02978063 beq a5,s1,c001d52e - c001d512: 02f4e963 bltu s1,a5,c001d544 - c001d516: 06fa7463 bgeu s4,a5,c001d57e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10809 + c001d6de: 02978063 beq a5,s1,c001d6fe + c001d6e2: 02f4e963 bltu s1,a5,c001d714 + c001d6e6: 06fa7463 bgeu s4,a5,c001d74e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10817 val = JS_ToNumberFree(ctx, val); - c001d51a: 6582 ld a1,0(sp) - c001d51c: 854a mv a0,s2 - c001d51e: d4dfe0ef jal ra,c001c26a - c001d522: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10810 + c001d6ea: 6582 ld a1,0(sp) + c001d6ec: 854a mv a0,s2 + c001d6ee: d4dfe0ef jal ra,c001c43a + c001d6f2: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10818 if (JS_IsException(val)) { - c001d524: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10809 + c001d6f4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10817 val = JS_ToNumberFree(ctx, val); - c001d528: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10810 + c001d6f8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10818 if (JS_IsException(val)) { - c001d52a: fe9790e3 bne a5,s1,c001d50a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10811 + c001d6fa: fe9790e3 bne a5,s1,c001d6da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10819 *pres = 0; - c001d52e: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10812 + c001d6fe: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10820 return -1; - c001d532: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10818 -} - c001d534: 70e2 ld ra,56(sp) - c001d536: 7442 ld s0,48(sp) - c001d538: 74a2 ld s1,40(sp) - c001d53a: 7902 ld s2,32(sp) - c001d53c: 69e2 ld s3,24(sp) - c001d53e: 6a42 ld s4,16(sp) - c001d540: 6121 addi sp,sp,64 - c001d542: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10774 + c001d702: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10826 +} + c001d704: 70e2 ld ra,56(sp) + c001d706: 7442 ld s0,48(sp) + c001d708: 74a2 ld s1,40(sp) + c001d70a: 7902 ld s2,32(sp) + c001d70c: 69e2 ld s3,24(sp) + c001d70e: 6a42 ld s4,16(sp) + c001d710: 6121 addi sp,sp,64 + c001d712: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10782 switch(tag) { - c001d544: fd379be3 bne a5,s3,c001d51a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10786 + c001d714: fd379be3 bne a5,s3,c001d6ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10794 double d = JS_VALUE_GET_FLOAT64(val); - c001d548: 2782 fld fa5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10788 + c001d718: 2782 fld fa5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10796 ret = 0; - c001d54a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10787 + c001d71a: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10795 if (isnan(d)) { - c001d54c: a2f7a753 feq.d a4,fa5,fa5 - c001d550: cb05 beqz a4,c001d580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10790 + c001d71c: a2f7a753 feq.d a4,fa5,fa5 + c001d720: cb05 beqz a4,c001d750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10798 if (d < INT32_MIN) - c001d552: 00057797 auipc a5,0x57 - c001d556: 2d67b707 fld fa4,726(a5) # c0074828 <_erodata+0xa8> - c001d55a: a2e79753 flt.d a4,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10791 + c001d722: 00057797 auipc a5,0x57 + c001d726: 3667b707 fld fa4,870(a5) # c0074a88 <_erodata+0xa8> + c001d72a: a2e79753 flt.d a4,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10799 ret = INT32_MIN; - c001d55e: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10790 + c001d72e: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10798 if (d < INT32_MIN) - c001d562: ef19 bnez a4,c001d580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10792 + c001d732: ef19 bnez a4,c001d750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10800 else if (d > INT32_MAX) - c001d564: 00057717 auipc a4,0x57 - c001d568: 2cc73707 fld fa4,716(a4) # c0074830 <_erodata+0xb0> - c001d56c: a2f71753 flt.d a4,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10793 + c001d734: 00057717 auipc a4,0x57 + c001d738: 35c73707 fld fa4,860(a4) # c0074a90 <_erodata+0xb0> + c001d73c: a2f71753 flt.d a4,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10801 ret = INT32_MAX; - c001d570: fff7c793 not a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10792 + c001d740: fff7c793 not a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10800 else if (d > INT32_MAX) - c001d574: e711 bnez a4,c001d580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10795 + c001d744: e711 bnez a4,c001d750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10803 ret = (int)d; - c001d576: c20797d3 fcvt.w.d a5,fa5,rtz - c001d57a: 2781 sext.w a5,a5 - c001d57c: a011 j c001d580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10779 + c001d746: c20797d3 fcvt.w.d a5,fa5,rtz + c001d74a: 2781 sext.w a5,a5 + c001d74c: a011 j c001d750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10787 ret = JS_VALUE_GET_INT(val); - c001d57e: 4782 lw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10816 + c001d74e: 4782 lw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10824 *pres = ret; - c001d580: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10817 + c001d750: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10825 return 0; - c001d582: 4501 li a0,0 - c001d584: bf45 j c001d534 + c001d752: 4501 li a0,0 + c001d754: bf45 j c001d704 -00000000c001d586 : +00000000c001d756 : JS_ToInt32Sat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10821 -{ - c001d586: 7139 addi sp,sp,-64 - c001d588: f822 sd s0,48(sp) - c001d58a: f426 sd s1,40(sp) - c001d58c: 842a mv s0,a0 - c001d58e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10822 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10829 +{ + c001d756: 7139 addi sp,sp,-64 + c001d758: f822 sd s0,48(sp) + c001d75a: f426 sd s1,40(sp) + c001d75c: 842a mv s0,a0 + c001d75e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10830 return JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001d590: 8532 mv a0,a2 - c001d592: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10821 + c001d760: 8532 mv a0,a2 + c001d762: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10829 { - c001d594: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10822 + c001d764: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10830 return JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001d596: 8d8e90ef jal ra,c000666e - c001d59a: 862a mv a2,a0 - c001d59c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10823 -} - c001d59e: 7442 ld s0,48(sp) - c001d5a0: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10822 + c001d766: ff7e80ef jal ra,c000675c + c001d76a: 862a mv a2,a0 + c001d76c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10831 +} + c001d76e: 7442 ld s0,48(sp) + c001d770: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10830 return JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001d5a2: 86ae mv a3,a1 - c001d5a4: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10823 + c001d772: 86ae mv a3,a1 + c001d774: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10831 } - c001d5a6: 74a2 ld s1,40(sp) - c001d5a8: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10822 + c001d776: 74a2 ld s1,40(sp) + c001d778: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10830 return JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001d5aa: f45ff06f j c001d4ee + c001d77a: f45ff06f j c001d6be -00000000c001d5ae : +00000000c001d77e : js_get_radix(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41017 { - c001d5ae: 7179 addi sp,sp,-48 - c001d5b0: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41011 + c001d77e: 7179 addi sp,sp,-48 + c001d780: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41019 if (JS_ToInt32Sat(ctx, &radix, val)) - c001d5b2: 862e mv a2,a1 - c001d5b4: 086c addi a1,sp,28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41009 -{ - c001d5b6: f022 sd s0,32(sp) - c001d5b8: f406 sd ra,40(sp) - c001d5ba: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41011 + c001d782: 862e mv a2,a1 + c001d784: 086c addi a1,sp,28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41017 +{ + c001d786: f022 sd s0,32(sp) + c001d788: f406 sd ra,40(sp) + c001d78a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41019 if (JS_ToInt32Sat(ctx, &radix, val)) - c001d5bc: fcbff0ef jal ra,c001d586 - c001d5c0: ed19 bnez a0,c001d5de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41013 + c001d78c: fcbff0ef jal ra,c001d756 + c001d790: ed19 bnez a0,c001d7ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41021 if (radix < 2 || radix > 36) { - c001d5c2: 4572 lw a0,28(sp) - c001d5c4: 02200793 li a5,34 - c001d5c8: ffe5071b addiw a4,a0,-2 - c001d5cc: 00e7fa63 bgeu a5,a4,c001d5e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41014 + c001d792: 4572 lw a0,28(sp) + c001d794: 02200793 li a5,34 + c001d798: ffe5071b addiw a4,a0,-2 + c001d79c: 00e7fa63 bgeu a5,a4,c001d7b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41022 JS_ThrowRangeError(ctx, "radix must be between 2 and 36"); - c001d5d0: 00041597 auipc a1,0x41 - c001d5d4: e0858593 addi a1,a1,-504 # c005e3d8 - c001d5d8: 8522 mv a0,s0 - c001d5da: b80f70ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41012 + c001d7a0: 00041597 auipc a1,0x41 + c001d7a4: e9858593 addi a1,a1,-360 # c005e638 + c001d7a8: 8522 mv a0,s0 + c001d7aa: a9ef70ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41020 return -1; - c001d5de: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41018 + c001d7ae: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41026 } - c001d5e0: 70a2 ld ra,40(sp) - c001d5e2: 7402 ld s0,32(sp) - c001d5e4: 6145 addi sp,sp,48 - c001d5e6: 8082 ret + c001d7b0: 70a2 ld ra,40(sp) + c001d7b2: 7402 ld s0,32(sp) + c001d7b4: 6145 addi sp,sp,48 + c001d7b6: 8082 ret -00000000c001d5e8 : +00000000c001d7b8 : js_number_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41030 { - c001d5e8: 7159 addi sp,sp,-112 - c001d5ea: f0a2 sd s0,96(sp) - c001d5ec: eca6 sd s1,88(sp) - c001d5ee: e8ca sd s2,80(sp) - c001d5f0: e4ce sd s3,72(sp) - c001d5f2: 843e mv s0,a5 - c001d5f4: f486 sd ra,104(sp) - c001d5f6: 84aa mv s1,a0 - c001d5f8: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41027 + c001d7b8: 7159 addi sp,sp,-112 + c001d7ba: f0a2 sd s0,96(sp) + c001d7bc: eca6 sd s1,88(sp) + c001d7be: e8ca sd s2,80(sp) + c001d7c0: e4ce sd s3,72(sp) + c001d7c2: 843e mv s0,a5 + c001d7c4: f486 sd ra,104(sp) + c001d7c6: 84aa mv s1,a0 + c001d7c8: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41035 val = js_thisNumberValue(ctx, this_val); - c001d5fa: 971f60ef jal ra,c0013f6a - c001d5fe: f02a sd a0,32(sp) - c001d600: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41028 + c001d7ca: 88ff60ef jal ra,c0014058 + c001d7ce: f02a sd a0,32(sp) + c001d7d0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41036 if (JS_IsException(val)) - c001d602: 0005879b sext.w a5,a1 - c001d606: 4999 li s3,6 - c001d608: 01379563 bne a5,s3,c001d612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41039 + c001d7d2: 0005879b sext.w a5,a1 + c001d7d6: 4999 li s3,6 + c001d7d8: 01379563 bne a5,s3,c001d7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41047 return js_dtoa(ctx, d, base, 0, JS_DTOA_VAR_FORMAT); - c001d60c: f82a sd a0,48(sp) - c001d60e: fc2e sd a1,56(sp) - c001d610: a80d j c001d642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41030 + c001d7dc: f82a sd a0,48(sp) + c001d7de: fc2e sd a1,56(sp) + c001d7e0: a80d j c001d812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41038 if (magic || JS_IsUndefined(argv[0])) { - c001d612: e029 bnez s0,c001d654 + c001d7e2: e029 bnez s0,c001d824 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001d614: 00893603 ld a2,8(s2) + c001d7e4: 00893603 ld a2,8(s2) js_number_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41030 (discriminator 1) - c001d618: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41031 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41038 (discriminator 1) + c001d7e8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41039 (discriminator 1) base = 10; - c001d61a: 4429 li s0,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41030 (discriminator 1) + c001d7ea: 4429 li s0,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41038 (discriminator 1) if (magic || JS_IsUndefined(argv[0])) { - c001d61c: 0006071b sext.w a4,a2 - c001d620: 02f70b63 beq a4,a5,c001d656 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41033 + c001d7ec: 0006071b sext.w a4,a2 + c001d7f0: 02f70b63 beq a4,a5,c001d826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41041 base = js_get_radix(ctx, argv[0]); - c001d624: 00093583 ld a1,0(s2) - c001d628: 8526 mv a0,s1 - c001d62a: f85ff0ef jal ra,c001d5ae - c001d62e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41034 + c001d7f4: 00093583 ld a1,0(s2) + c001d7f8: 8526 mv a0,s1 + c001d7fa: f85ff0ef jal ra,c001d77e + c001d7fe: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41042 if (base < 0) - c001d630: 02055363 bgez a0,c001d656 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41041 + c001d800: 02055363 bgez a0,c001d826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41049 JS_FreeValue(ctx, val); - c001d634: 7582 ld a1,32(sp) - c001d636: 7622 ld a2,40(sp) - c001d638: 8526 mv a0,s1 - c001d63a: cfeea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41042 + c001d804: 7582 ld a1,32(sp) + c001d806: 7622 ld a2,40(sp) + c001d808: 8526 mv a0,s1 + c001d80a: c1cea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41050 return JS_EXCEPTION; - c001d63e: f802 sd zero,48(sp) - c001d640: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41043 (discriminator 1) -} - c001d642: 70a6 ld ra,104(sp) - c001d644: 7406 ld s0,96(sp) - c001d646: 7542 ld a0,48(sp) - c001d648: 75e2 ld a1,56(sp) - c001d64a: 64e6 ld s1,88(sp) - c001d64c: 6946 ld s2,80(sp) - c001d64e: 69a6 ld s3,72(sp) - c001d650: 6165 addi sp,sp,112 - c001d652: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41031 + c001d80e: f802 sd zero,48(sp) + c001d810: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41051 (discriminator 1) +} + c001d812: 70a6 ld ra,104(sp) + c001d814: 7406 ld s0,96(sp) + c001d816: 7542 ld a0,48(sp) + c001d818: 75e2 ld a1,56(sp) + c001d81a: 64e6 ld s1,88(sp) + c001d81c: 6946 ld s2,80(sp) + c001d81e: 69a6 ld s3,72(sp) + c001d820: 6165 addi sp,sp,112 + c001d822: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41039 base = 10; - c001d654: 4429 li s0,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41037 + c001d824: 4429 li s0,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41045 if (JS_ToFloat64Free(ctx, &d, val)) - c001d656: 7602 ld a2,32(sp) - c001d658: 76a2 ld a3,40(sp) - c001d65a: 082c addi a1,sp,24 - c001d65c: 8526 mv a0,s1 - c001d65e: f91fe0ef jal ra,c001c5ee - c001d662: c509 beqz a0,c001d66c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41038 + c001d826: 7602 ld a2,32(sp) + c001d828: 76a2 ld a3,40(sp) + c001d82a: 082c addi a1,sp,24 + c001d82c: 8526 mv a0,s1 + c001d82e: f91fe0ef jal ra,c001c7be + c001d832: c509 beqz a0,c001d83c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41046 return JS_EXCEPTION; - c001d664: 4799 li a5,6 - c001d666: f802 sd zero,48(sp) - c001d668: fc3e sd a5,56(sp) - c001d66a: bfe1 j c001d642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41039 + c001d834: 4799 li a5,6 + c001d836: f802 sd zero,48(sp) + c001d838: fc3e sd a5,56(sp) + c001d83a: bfe1 j c001d812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41047 return js_dtoa(ctx, d, base, 0, JS_DTOA_VAR_FORMAT); - c001d66c: 2562 fld fa0,24(sp) - c001d66e: 4681 li a3,0 - c001d670: 4601 li a2,0 - c001d672: 85a2 mv a1,s0 - c001d674: 8526 mv a0,s1 - c001d676: c2dfc0ef jal ra,c001a2a2 - c001d67a: bf49 j c001d60c - -00000000c001d67c : + c001d83c: 2562 fld fa0,24(sp) + c001d83e: 4681 li a3,0 + c001d840: 4601 li a2,0 + c001d842: 85a2 mv a1,s0 + c001d844: 8526 mv a0,s1 + c001d846: c2dfc0ef jal ra,c001a472 + c001d84a: bf49 j c001d7dc + +00000000c001d84c : js_string_codePointAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41557 -{ - c001d67c: 7175 addi sp,sp,-144 - c001d67e: e122 sd s0,128(sp) - c001d680: fca6 sd s1,120(sp) - c001d682: f8ca sd s2,112(sp) - c001d684: f4ce sd s3,104(sp) - c001d686: e506 sd ra,136(sp) - c001d688: 892a mv s2,a0 - c001d68a: e02e sd a1,0(sp) - c001d68c: e432 sd a2,8(sp) - c001d68e: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41565 +{ + c001d84c: 7175 addi sp,sp,-144 + c001d84e: e122 sd s0,128(sp) + c001d850: fca6 sd s1,120(sp) + c001d852: f8ca sd s2,112(sp) + c001d854: f4ce sd s3,104(sp) + c001d856: e506 sd ra,136(sp) + c001d858: 892a mv s2,a0 + c001d85a: e02e sd a1,0(sp) + c001d85c: e432 sd a2,8(sp) + c001d85e: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41570 val = JS_ToStringCheckObject(ctx, this_val); - c001d690: 81dfd0ef jal ra,c001aeac - c001d694: f02a sd a0,32(sp) - c001d696: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41563 + c001d860: 81dfd0ef jal ra,c001b07c + c001d864: f02a sd a0,32(sp) + c001d866: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41571 if (JS_IsException(val)) - c001d698: 0005879b sext.w a5,a1 - c001d69c: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41562 + c001d868: 0005879b sext.w a5,a1 + c001d86c: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41570 val = JS_ToStringCheckObject(ctx, this_val); - c001d69e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41563 + c001d86e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41571 if (JS_IsException(val)) - c001d6a0: 01379d63 bne a5,s3,c001d6ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41564 + c001d870: 01379d63 bne a5,s3,c001d88a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41572 return val; - c001d6a4: e0aa sd a0,64(sp) - c001d6a6: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41578 (discriminator 1) -} - c001d6a8: 60aa ld ra,136(sp) - c001d6aa: 640a ld s0,128(sp) - c001d6ac: 6506 ld a0,64(sp) - c001d6ae: 65a6 ld a1,72(sp) - c001d6b0: 74e6 ld s1,120(sp) - c001d6b2: 7946 ld s2,112(sp) - c001d6b4: 79a6 ld s3,104(sp) - c001d6b6: 6149 addi sp,sp,144 - c001d6b8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41566 + c001d874: e0aa sd a0,64(sp) + c001d876: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41586 (discriminator 1) +} + c001d878: 60aa ld ra,136(sp) + c001d87a: 640a ld s0,128(sp) + c001d87c: 6506 ld a0,64(sp) + c001d87e: 65a6 ld a1,72(sp) + c001d880: 74e6 ld s1,120(sp) + c001d882: 7946 ld s2,112(sp) + c001d884: 79a6 ld s3,104(sp) + c001d886: 6149 addi sp,sp,144 + c001d888: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41574 if (JS_ToInt32Sat(ctx, &idx, argv[0])) { - c001d6ba: 6010 ld a2,0(s0) - c001d6bc: 6414 ld a3,8(s0) - c001d6be: 086c addi a1,sp,28 - c001d6c0: 854a mv a0,s2 - c001d6c2: ec5ff0ef jal ra,c001d586 - c001d6c6: 842a mv s0,a0 - c001d6c8: c909 beqz a0,c001d6da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41567 + c001d88a: 6010 ld a2,0(s0) + c001d88c: 6414 ld a3,8(s0) + c001d88e: 086c addi a1,sp,28 + c001d890: 854a mv a0,s2 + c001d892: ec5ff0ef jal ra,c001d756 + c001d896: 842a mv s0,a0 + c001d898: c909 beqz a0,c001d8aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41575 JS_FreeValue(ctx, val); - c001d6ca: 7582 ld a1,32(sp) - c001d6cc: 7622 ld a2,40(sp) - c001d6ce: 854a mv a0,s2 - c001d6d0: c68ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41568 + c001d89a: 7582 ld a1,32(sp) + c001d89c: 7622 ld a2,40(sp) + c001d89e: 854a mv a0,s2 + c001d8a0: b86ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41576 return JS_EXCEPTION; - c001d6d4: e082 sd zero,64(sp) - c001d6d6: e4ce sd s3,72(sp) - c001d6d8: bfc1 j c001d6a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41570 + c001d8a4: e082 sd zero,64(sp) + c001d8a6: e4ce sd s3,72(sp) + c001d8a8: bfc1 j c001d878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41578 if (idx < 0 || idx >= p->len) { - c001d6da: 4772 lw a4,28(sp) - c001d6dc: 00074763 bltz a4,c001d6ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41570 (discriminator 1) - c001d6e0: 40dc lw a5,4(s1) - c001d6e2: 1786 slli a5,a5,0x21 - c001d6e4: 9385 srli a5,a5,0x21 - c001d6e6: 00f74e63 blt a4,a5,c001d702 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41571 + c001d8aa: 4772 lw a4,28(sp) + c001d8ac: 00074763 bltz a4,c001d8ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41578 (discriminator 1) + c001d8b0: 40dc lw a5,4(s1) + c001d8b2: 1786 slli a5,a5,0x21 + c001d8b4: 9385 srli a5,a5,0x21 + c001d8b6: 00f74e63 blt a4,a5,c001d8d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41579 ret = JS_UNDEFINED; - c001d6ea: da02 sw zero,52(sp) - c001d6ec: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41576 + c001d8ba: da02 sw zero,52(sp) + c001d8bc: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41584 JS_FreeValue(ctx, val); - c001d6ee: 7582 ld a1,32(sp) - c001d6f0: 7622 ld a2,40(sp) - c001d6f2: 854a mv a0,s2 - c001d6f4: c44ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41577 + c001d8be: 7582 ld a1,32(sp) + c001d8c0: 7622 ld a2,40(sp) + c001d8c2: 854a mv a0,s2 + c001d8c4: b62ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41585 return ret; - c001d6f8: d822 sw s0,48(sp) - c001d6fa: 77c2 ld a5,48(sp) - c001d6fc: e4a6 sd s1,72(sp) - c001d6fe: e0be sd a5,64(sp) - c001d700: b765 j c001d6a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41573 + c001d8c8: d822 sw s0,48(sp) + c001d8ca: 77c2 ld a5,48(sp) + c001d8cc: e4a6 sd s1,72(sp) + c001d8ce: e0be sd a5,64(sp) + c001d8d0: b765 j c001d878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41581 c = string_getc(p, &idx); - c001d702: 8526 mv a0,s1 - c001d704: 086c addi a1,sp,28 - c001d706: a7be60ef jal ra,c0004180 - c001d70a: c8aa sw a0,80(sp) + c001d8d2: 8526 mv a0,s1 + c001d8d4: 086c addi a1,sp,28 + c001d8d6: 8abe60ef jal ra,c0004180 + c001d8da: c8aa sw a0,80(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001d70c: ca82 sw zero,84(sp) - c001d70e: 67c6 ld a5,80(sp) + c001d8dc: ca82 sw zero,84(sp) + c001d8de: 67c6 ld a5,80(sp) js_string_codePointAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41573 - c001d710: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41581 + c001d8e0: 842a mv s0,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001d712: 4481 li s1,0 - c001d714: f83e sd a5,48(sp) - c001d716: bfe1 j c001d6ee + c001d8e2: 4481 li s1,0 + c001d8e4: f83e sd a5,48(sp) + c001d8e6: bfe1 j c001d8be -00000000c001d718 : +00000000c001d8e8 : js_string_charCodeAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41496 -{ - c001d718: 7175 addi sp,sp,-144 - c001d71a: e122 sd s0,128(sp) - c001d71c: fca6 sd s1,120(sp) - c001d71e: f8ca sd s2,112(sp) - c001d720: f4ce sd s3,104(sp) - c001d722: e506 sd ra,136(sp) - c001d724: aca2 fsd fs0,88(sp) - c001d726: 84aa mv s1,a0 - c001d728: e02e sd a1,0(sp) - c001d72a: e432 sd a2,8(sp) - c001d72c: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41501 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41504 +{ + c001d8e8: 7175 addi sp,sp,-144 + c001d8ea: e122 sd s0,128(sp) + c001d8ec: fca6 sd s1,120(sp) + c001d8ee: f8ca sd s2,112(sp) + c001d8f0: f4ce sd s3,104(sp) + c001d8f2: e506 sd ra,136(sp) + c001d8f4: aca2 fsd fs0,88(sp) + c001d8f6: 84aa mv s1,a0 + c001d8f8: e02e sd a1,0(sp) + c001d8fa: e432 sd a2,8(sp) + c001d8fc: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41509 val = JS_ToStringCheckObject(ctx, this_val); - c001d72e: f7efd0ef jal ra,c001aeac - c001d732: f02a sd a0,32(sp) - c001d734: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41502 + c001d8fe: f7efd0ef jal ra,c001b07c + c001d902: f02a sd a0,32(sp) + c001d904: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41510 if (JS_IsException(val)) - c001d736: 0005879b sext.w a5,a1 - c001d73a: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41501 + c001d906: 0005879b sext.w a5,a1 + c001d90a: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41509 val = JS_ToStringCheckObject(ctx, this_val); - c001d73c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41502 + c001d90c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41510 if (JS_IsException(val)) - c001d73e: 01379e63 bne a5,s3,c001d75a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41503 + c001d90e: 01379e63 bne a5,s3,c001d92a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41511 return val; - c001d742: f82a sd a0,48(sp) - c001d744: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41520 (discriminator 1) -} - c001d746: 60aa ld ra,136(sp) - c001d748: 640a ld s0,128(sp) - c001d74a: 7542 ld a0,48(sp) - c001d74c: 75e2 ld a1,56(sp) - c001d74e: 74e6 ld s1,120(sp) - c001d750: 7946 ld s2,112(sp) - c001d752: 79a6 ld s3,104(sp) - c001d754: 2466 fld fs0,88(sp) - c001d756: 6149 addi sp,sp,144 - c001d758: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41505 + c001d912: f82a sd a0,48(sp) + c001d914: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41528 (discriminator 1) +} + c001d916: 60aa ld ra,136(sp) + c001d918: 640a ld s0,128(sp) + c001d91a: 7542 ld a0,48(sp) + c001d91c: 75e2 ld a1,56(sp) + c001d91e: 74e6 ld s1,120(sp) + c001d920: 7946 ld s2,112(sp) + c001d922: 79a6 ld s3,104(sp) + c001d924: 2466 fld fs0,88(sp) + c001d926: 6149 addi sp,sp,144 + c001d928: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41513 if (JS_ToInt32Sat(ctx, &idx, argv[0])) { - c001d75a: 00093603 ld a2,0(s2) - c001d75e: 00893683 ld a3,8(s2) - c001d762: 086c addi a1,sp,28 - c001d764: 8526 mv a0,s1 - c001d766: e21ff0ef jal ra,c001d586 - c001d76a: c909 beqz a0,c001d77c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41506 + c001d92a: 00093603 ld a2,0(s2) + c001d92e: 00893683 ld a3,8(s2) + c001d932: 086c addi a1,sp,28 + c001d934: 8526 mv a0,s1 + c001d936: e21ff0ef jal ra,c001d756 + c001d93a: c909 beqz a0,c001d94c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41514 JS_FreeValue(ctx, val); - c001d76c: 7582 ld a1,32(sp) - c001d76e: 7622 ld a2,40(sp) - c001d770: 8526 mv a0,s1 - c001d772: bc6ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41507 + c001d93c: 7582 ld a1,32(sp) + c001d93e: 7622 ld a2,40(sp) + c001d940: 8526 mv a0,s1 + c001d942: ae4ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41515 return JS_EXCEPTION; - c001d776: f802 sd zero,48(sp) - c001d778: fc4e sd s3,56(sp) - c001d77a: b7f1 j c001d746 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41509 + c001d946: f802 sd zero,48(sp) + c001d948: fc4e sd s3,56(sp) + c001d94a: b7f1 j c001d916 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41517 if (idx < 0 || idx >= p->len) { - c001d77c: 47f2 lw a5,28(sp) - c001d77e: 0007c863 bltz a5,c001d78e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41509 (discriminator 1) - c001d782: 4058 lw a4,4(s0) - c001d784: 02171693 slli a3,a4,0x21 - c001d788: 9285 srli a3,a3,0x21 - c001d78a: 02d7c563 blt a5,a3,c001d7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41510 - ret = JS_NAN; - c001d78e: 00057797 auipc a5,0x57 - c001d792: ffa7b407 fld fs0,-6(a5) # c0074788 <_erodata+0x8> - c001d796: 12847453 fmul.d fs0,fs0,fs0 - c001d79a: f20007d3 fmv.d.x fa5,zero - c001d79e: 441d li s0,7 - c001d7a0: 12f47453 fmul.d fs0,fs0,fa5 + c001d94c: 47f2 lw a5,28(sp) + c001d94e: 0007c863 bltz a5,c001d95e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41517 (discriminator 1) + c001d952: 4058 lw a4,4(s0) + c001d954: 02171693 slli a3,a4,0x21 + c001d958: 9285 srli a3,a3,0x21 + c001d95a: 02d7c563 blt a5,a3,c001d984 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41518 + ret = JS_NAN; + c001d95e: 00057797 auipc a5,0x57 + c001d962: 08a7b407 fld fs0,138(a5) # c00749e8 <_erodata+0x8> + c001d966: 12847453 fmul.d fs0,fs0,fs0 + c001d96a: f20007d3 fmv.d.x fa5,zero + c001d96e: 441d li s0,7 + c001d970: 12f47453 fmul.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41526 JS_FreeValue(ctx, val); - c001d7a4: 7582 ld a1,32(sp) - c001d7a6: 7622 ld a2,40(sp) - c001d7a8: 8526 mv a0,s1 - c001d7aa: b8eea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41519 + c001d974: 7582 ld a1,32(sp) + c001d976: 7622 ld a2,40(sp) + c001d978: 8526 mv a0,s1 + c001d97a: aacea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41527 return ret; - c001d7ae: b822 fsd fs0,48(sp) - c001d7b0: fc22 sd s0,56(sp) - c001d7b2: bf51 j c001d746 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41512 + c001d97e: b822 fsd fs0,48(sp) + c001d980: fc22 sd s0,56(sp) + c001d982: bf51 j c001d916 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41520 if (p->is_wide_char) - c001d7b4: 2701 sext.w a4,a4 - c001d7b6: 00075c63 bgez a4,c001d7ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41513 + c001d984: 2701 sext.w a4,a4 + c001d986: 00075c63 bgez a4,c001d99e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41521 c = p->u.str16[idx]; - c001d7ba: 07a1 addi a5,a5,8 - c001d7bc: 0786 slli a5,a5,0x1 - c001d7be: 943e add s0,s0,a5 - c001d7c0: 00045783 lhu a5,0(s0) + c001d98a: 07a1 addi a5,a5,8 + c001d98c: 0786 slli a5,a5,0x1 + c001d98e: 943e add s0,s0,a5 + c001d990: 00045783 lhu a5,0(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001d7c4: e082 sd zero,64(sp) - c001d7c6: c0be sw a5,64(sp) - c001d7c8: 2406 fld fs0,64(sp) - c001d7ca: 4401 li s0,0 - c001d7cc: bfe1 j c001d7a4 + c001d994: e082 sd zero,64(sp) + c001d996: c0be sw a5,64(sp) + c001d998: 2406 fld fs0,64(sp) + c001d99a: 4401 li s0,0 + c001d99c: bfe1 j c001d974 js_string_charCodeAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41515 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41523 c = p->u.str8[idx]; - c001d7ce: 943e add s0,s0,a5 - c001d7d0: 01044783 lbu a5,16(s0) - c001d7d4: bfc5 j c001d7c4 + c001d99e: 943e add s0,s0,a5 + c001d9a0: 01044783 lbu a5,16(s0) + c001d9a4: bfc5 j c001d994 -00000000c001d7d6 : +00000000c001d9a6 : js_string_charAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41524 -{ - c001d7d6: 7175 addi sp,sp,-144 - c001d7d8: e122 sd s0,128(sp) - c001d7da: fca6 sd s1,120(sp) - c001d7dc: f8ca sd s2,112(sp) - c001d7de: f4ce sd s3,104(sp) - c001d7e0: f0d2 sd s4,96(sp) - c001d7e2: 84be mv s1,a5 - c001d7e4: e506 sd ra,136(sp) - c001d7e6: 892a mv s2,a0 - c001d7e8: e02e sd a1,0(sp) - c001d7ea: e432 sd a2,8(sp) - c001d7ec: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41529 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41532 +{ + c001d9a6: 7175 addi sp,sp,-144 + c001d9a8: e122 sd s0,128(sp) + c001d9aa: fca6 sd s1,120(sp) + c001d9ac: f8ca sd s2,112(sp) + c001d9ae: f4ce sd s3,104(sp) + c001d9b0: f0d2 sd s4,96(sp) + c001d9b2: 84be mv s1,a5 + c001d9b4: e506 sd ra,136(sp) + c001d9b6: 892a mv s2,a0 + c001d9b8: e02e sd a1,0(sp) + c001d9ba: e432 sd a2,8(sp) + c001d9bc: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41537 val = JS_ToStringCheckObject(ctx, this_val); - c001d7ee: ebefd0ef jal ra,c001aeac - c001d7f2: f02a sd a0,32(sp) - c001d7f4: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41530 + c001d9be: ebefd0ef jal ra,c001b07c + c001d9c2: f02a sd a0,32(sp) + c001d9c4: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41538 if (JS_IsException(val)) - c001d7f6: 0005879b sext.w a5,a1 - c001d7fa: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41529 + c001d9c6: 0005879b sext.w a5,a1 + c001d9ca: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41537 val = JS_ToStringCheckObject(ctx, this_val); - c001d7fc: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41530 + c001d9cc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41538 if (JS_IsException(val)) - c001d7fe: 01479e63 bne a5,s4,c001d81a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41531 + c001d9ce: 01479e63 bne a5,s4,c001d9ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41539 return val; - c001d802: e0aa sd a0,64(sp) - c001d804: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41553 (discriminator 1) -} - c001d806: 60aa ld ra,136(sp) - c001d808: 640a ld s0,128(sp) - c001d80a: 6506 ld a0,64(sp) - c001d80c: 65a6 ld a1,72(sp) - c001d80e: 74e6 ld s1,120(sp) - c001d810: 7946 ld s2,112(sp) - c001d812: 79a6 ld s3,104(sp) - c001d814: 7a06 ld s4,96(sp) - c001d816: 6149 addi sp,sp,144 - c001d818: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41533 + c001d9d2: e0aa sd a0,64(sp) + c001d9d4: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41561 (discriminator 1) +} + c001d9d6: 60aa ld ra,136(sp) + c001d9d8: 640a ld s0,128(sp) + c001d9da: 6506 ld a0,64(sp) + c001d9dc: 65a6 ld a1,72(sp) + c001d9de: 74e6 ld s1,120(sp) + c001d9e0: 7946 ld s2,112(sp) + c001d9e2: 79a6 ld s3,104(sp) + c001d9e4: 7a06 ld s4,96(sp) + c001d9e6: 6149 addi sp,sp,144 + c001d9e8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41541 if (JS_ToInt32Sat(ctx, &idx, argv[0])) { - c001d81a: 0009b603 ld a2,0(s3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c001d81e: 0089b683 ld a3,8(s3) - c001d822: 086c addi a1,sp,28 - c001d824: 854a mv a0,s2 - c001d826: d61ff0ef jal ra,c001d586 - c001d82a: c909 beqz a0,c001d83c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41534 + c001d9ea: 0009b603 ld a2,0(s3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c001d9ee: 0089b683 ld a3,8(s3) + c001d9f2: 086c addi a1,sp,28 + c001d9f4: 854a mv a0,s2 + c001d9f6: d61ff0ef jal ra,c001d756 + c001d9fa: c909 beqz a0,c001da0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41542 JS_FreeValue(ctx, val); - c001d82c: 7582 ld a1,32(sp) - c001d82e: 7622 ld a2,40(sp) - c001d830: 854a mv a0,s2 - c001d832: b06ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41535 + c001d9fc: 7582 ld a1,32(sp) + c001d9fe: 7622 ld a2,40(sp) + c001da00: 854a mv a0,s2 + c001da02: a24ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41543 return JS_EXCEPTION; - c001d836: e082 sd zero,64(sp) - c001d838: e4d2 sd s4,72(sp) - c001d83a: b7f1 j c001d806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41537 + c001da06: e082 sd zero,64(sp) + c001da08: e4d2 sd s4,72(sp) + c001da0a: b7f1 j c001d9d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41545 if (idx < 0 && is_at) - c001d83c: 47f2 lw a5,28(sp) - c001d83e: 0007d863 bgez a5,c001d84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41537 (discriminator 1) - c001d842: c491 beqz s1,c001d84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41538 + c001da0c: 47f2 lw a5,28(sp) + c001da0e: 0007d863 bgez a5,c001da1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41545 (discriminator 1) + c001da12: c491 beqz s1,c001da1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41546 idx += p->len; - c001d844: 4058 lw a4,4(s0) - c001d846: 1706 slli a4,a4,0x21 - c001d848: 9305 srli a4,a4,0x21 - c001d84a: 9f3d addw a4,a4,a5 - c001d84c: ce3a sw a4,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41539 + c001da14: 4058 lw a4,4(s0) + c001da16: 1706 slli a4,a4,0x21 + c001da18: 9305 srli a4,a4,0x21 + c001da1a: 9f3d addw a4,a4,a5 + c001da1c: ce3a sw a4,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41547 if (idx < 0 || idx >= p->len) { - c001d84e: 4772 lw a4,28(sp) - c001d850: 00074863 bltz a4,c001d860 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41539 (discriminator 1) - c001d854: 4054 lw a3,4(s0) - c001d856: 02169793 slli a5,a3,0x21 - c001d85a: 9385 srli a5,a5,0x21 - c001d85c: 02f74263 blt a4,a5,c001d880 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41540 + c001da1e: 4772 lw a4,28(sp) + c001da20: 00074863 bltz a4,c001da30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41547 (discriminator 1) + c001da24: 4054 lw a3,4(s0) + c001da26: 02169793 slli a5,a3,0x21 + c001da2a: 9385 srli a5,a5,0x21 + c001da2c: 02f74263 blt a4,a5,c001da50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41548 if (is_at) - c001d860: e0a1 bnez s1,c001d8a0 + c001da30: e0a1 bnez s1,c001da70 js_new_string8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3536 return JS_AtomToString(ctx, JS_ATOM_empty_string); - c001d862: 02f00593 li a1,47 - c001d866: 854a mv a0,s2 - c001d868: ad4fc0ef jal ra,c0019b3c + c001da32: 02f00593 li a1,47 + c001da36: 854a mv a0,s2 + c001da38: ad4fc0ef jal ra,c0019d0c js_string_charAt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41549 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41557 ret = js_new_string_char(ctx, c); - c001d86c: 84aa mv s1,a0 - c001d86e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41551 + c001da3c: 84aa mv s1,a0 + c001da3e: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41559 JS_FreeValue(ctx, val); - c001d870: 7582 ld a1,32(sp) - c001d872: 7622 ld a2,40(sp) - c001d874: 854a mv a0,s2 - c001d876: ac2ea0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41552 + c001da40: 7582 ld a1,32(sp) + c001da42: 7622 ld a2,40(sp) + c001da44: 854a mv a0,s2 + c001da46: 9e0ea0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41560 return ret; - c001d87a: e0a6 sd s1,64(sp) - c001d87c: e4a2 sd s0,72(sp) - c001d87e: b761 j c001d806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41545 + c001da4a: e0a6 sd s1,64(sp) + c001da4c: e4a2 sd s0,72(sp) + c001da4e: b761 j c001d9d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41553 if (p->is_wide_char) - c001d880: 2681 sext.w a3,a3 - c001d882: 0006db63 bgez a3,c001d898 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41546 + c001da50: 2681 sext.w a3,a3 + c001da52: 0006db63 bgez a3,c001da68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41554 c = p->u.str16[idx]; - c001d886: 0721 addi a4,a4,8 - c001d888: 0706 slli a4,a4,0x1 - c001d88a: 943a add s0,s0,a4 - c001d88c: 00045583 lhu a1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41549 + c001da56: 0721 addi a4,a4,8 + c001da58: 0706 slli a4,a4,0x1 + c001da5a: 943a add s0,s0,a4 + c001da5c: 00045583 lhu a1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41557 ret = js_new_string_char(ctx, c); - c001d890: 854a mv a0,s2 - c001d892: f72fc0ef jal ra,c001a004 - c001d896: bfd9 j c001d86c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41548 + c001da60: 854a mv a0,s2 + c001da62: f72fc0ef jal ra,c001a1d4 + c001da66: bfd9 j c001da3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41556 c = p->u.str8[idx]; - c001d898: 943a add s0,s0,a4 - c001d89a: 01044583 lbu a1,16(s0) - c001d89e: bfcd j c001d890 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41541 + c001da68: 943a add s0,s0,a4 + c001da6a: 01044583 lbu a1,16(s0) + c001da6e: bfcd j c001da60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41549 ret = JS_UNDEFINED; - c001d8a0: 440d li s0,3 - c001d8a2: 4481 li s1,0 - c001d8a4: b7f1 j c001d870 + c001da70: 440d li s0,3 + c001da72: 4481 li s1,0 + c001da74: b7f1 j c001da40 -00000000c001d8a6 : +00000000c001da76 : js_number_toPrecision(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41107 { - c001d8a6: 7159 addi sp,sp,-112 - c001d8a8: f0a2 sd s0,96(sp) - c001d8aa: eca6 sd s1,88(sp) - c001d8ac: f486 sd ra,104(sp) - c001d8ae: 84ba mv s1,a4 - c001d8b0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41104 + c001da76: 7159 addi sp,sp,-112 + c001da78: f0a2 sd s0,96(sp) + c001da7a: eca6 sd s1,88(sp) + c001da7c: f486 sd ra,104(sp) + c001da7e: 84ba mv s1,a4 + c001da80: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41112 val = js_thisNumberValue(ctx, this_val); - c001d8b2: eb8f60ef jal ra,c0013f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41105 + c001da82: dd6f60ef jal ra,c0014058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41113 if (JS_IsException(val)) - c001d8b6: 0005871b sext.w a4,a1 - c001d8ba: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41104 + c001da86: 0005871b sext.w a4,a1 + c001da8a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41112 val = js_thisNumberValue(ctx, this_val); - c001d8bc: 862a mv a2,a0 - c001d8be: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41105 + c001da8c: 862a mv a2,a0 + c001da8e: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41113 if (JS_IsException(val)) - c001d8c0: 00f71b63 bne a4,a5,c001d8d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41106 + c001da90: 00f71b63 bne a4,a5,c001daa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41114 return val; - c001d8c4: f82a sd a0,48(sp) - c001d8c6: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41120 (discriminator 1) -} - c001d8c8: 70a6 ld ra,104(sp) - c001d8ca: 7406 ld s0,96(sp) - c001d8cc: 7542 ld a0,48(sp) - c001d8ce: 75e2 ld a1,56(sp) - c001d8d0: 64e6 ld s1,88(sp) - c001d8d2: 6165 addi sp,sp,112 - c001d8d4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41107 + c001da94: f82a sd a0,48(sp) + c001da96: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41128 (discriminator 1) +} + c001da98: 70a6 ld ra,104(sp) + c001da9a: 7406 ld s0,96(sp) + c001da9c: 7542 ld a0,48(sp) + c001da9e: 75e2 ld a1,56(sp) + c001daa0: 64e6 ld s1,88(sp) + c001daa2: 6165 addi sp,sp,112 + c001daa4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41115 if (JS_ToFloat64Free(ctx, &d, val)) - c001d8d6: 082c addi a1,sp,24 - c001d8d8: 8522 mv a0,s0 - c001d8da: d15fe0ef jal ra,c001c5ee - c001d8de: c509 beqz a0,c001d8e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41108 + c001daa6: 082c addi a1,sp,24 + c001daa8: 8522 mv a0,s0 + c001daaa: d15fe0ef jal ra,c001c7be + c001daae: c509 beqz a0,c001dab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41116 return JS_EXCEPTION; - c001d8e0: 4799 li a5,6 - c001d8e2: f802 sd zero,48(sp) - c001d8e4: fc3e sd a5,56(sp) - c001d8e6: b7cd j c001d8c8 + c001dab0: 4799 li a5,6 + c001dab2: f802 sd zero,48(sp) + c001dab4: fc3e sd a5,56(sp) + c001dab6: b7cd j c001da98 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001d8e8: 6494 ld a3,8(s1) + c001dab8: 6494 ld a3,8(s1) js_number_toPrecision(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41117 if (JS_IsUndefined(argv[0])) - c001d8ea: 478d li a5,3 - c001d8ec: 0006871b sext.w a4,a3 - c001d8f0: 00f71a63 bne a4,a5,c001d904 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41115 + c001daba: 478d li a5,3 + c001dabc: 0006871b sext.w a4,a3 + c001dac0: 00f71a63 bne a4,a5,c001dad4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41123 return JS_ToStringFree(ctx, __JS_NewFloat64(ctx, d)); - c001d8f4: 65e2 ld a1,24(sp) - c001d8f6: 461d li a2,7 - c001d8f8: 8522 mv a0,s0 - c001d8fa: ee7fc0ef jal ra,c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41119 + c001dac4: 65e2 ld a1,24(sp) + c001dac6: 461d li a2,7 + c001dac8: 8522 mv a0,s0 + c001daca: ee7fc0ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41127 return js_dtoa(ctx, d, 10, p, JS_DTOA_FIXED_FORMAT); - c001d8fe: f82a sd a0,48(sp) - c001d900: fc2e sd a1,56(sp) - c001d902: b7d9 j c001d8c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41111 + c001dace: f82a sd a0,48(sp) + c001dad0: fc2e sd a1,56(sp) + c001dad2: b7d9 j c001da98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41119 if (JS_ToInt32Sat(ctx, &p, argv[0])) - c001d904: 6090 ld a2,0(s1) - c001d906: 084c addi a1,sp,20 - c001d908: 8522 mv a0,s0 - c001d90a: c7dff0ef jal ra,c001d586 - c001d90e: f969 bnez a0,c001d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41113 + c001dad4: 6090 ld a2,0(s1) + c001dad6: 084c addi a1,sp,20 + c001dad8: 8522 mv a0,s0 + c001dada: c7dff0ef jal ra,c001d756 + c001dade: f969 bnez a0,c001dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41121 if (!isfinite(d)) { - c001d910: 00057797 auipc a5,0x57 - c001d914: e787b787 fld fa5,-392(a5) # c0074788 <_erodata+0x8> - c001d918: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001d91c: 2562 fld fa0,24(sp) - c001d91e: a2f527d3 feq.d a5,fa0,fa5 - c001d922: fbe9 bnez a5,c001d8f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41113 (discriminator 1) - c001d924: 22f797d3 fneg.d fa5,fa5 - c001d928: a2f527d3 feq.d a5,fa0,fa5 - c001d92c: f7e1 bnez a5,c001d8f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41113 (discriminator 2) - c001d92e: a2a527d3 feq.d a5,fa0,fa0 - c001d932: d3e9 beqz a5,c001d8f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41117 + c001dae0: 00057797 auipc a5,0x57 + c001dae4: f087b787 fld fa5,-248(a5) # c00749e8 <_erodata+0x8> + c001dae8: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001daec: 2562 fld fa0,24(sp) + c001daee: a2f527d3 feq.d a5,fa0,fa5 + c001daf2: fbe9 bnez a5,c001dac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41121 (discriminator 1) + c001daf4: 22f797d3 fneg.d fa5,fa5 + c001daf8: a2f527d3 feq.d a5,fa0,fa5 + c001dafc: f7e1 bnez a5,c001dac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41121 (discriminator 2) + c001dafe: a2a527d3 feq.d a5,fa0,fa0 + c001db02: d3e9 beqz a5,c001dac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41125 if (p < 1 || p > 100) - c001d934: 4652 lw a2,20(sp) - c001d936: 06300793 li a5,99 - c001d93a: fff6071b addiw a4,a2,-1 - c001d93e: 00e7fa63 bgeu a5,a4,c001d952 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41118 + c001db04: 4652 lw a2,20(sp) + c001db06: 06300793 li a5,99 + c001db0a: fff6071b addiw a4,a2,-1 + c001db0e: 00e7fa63 bgeu a5,a4,c001db22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41126 return JS_ThrowRangeError(ctx, "invalid number of digits"); - c001d942: 8522 mv a0,s0 - c001d944: 00041597 auipc a1,0x41 - c001d948: ab458593 addi a1,a1,-1356 # c005e3f8 - c001d94c: 80ef70ef jal ra,c001495a - c001d950: b77d j c001d8fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41119 + c001db12: 8522 mv a0,s0 + c001db14: 00041597 auipc a1,0x41 + c001db18: b4458593 addi a1,a1,-1212 # c005e658 + c001db1c: f2df60ef jal ra,c0014a48 + c001db20: b77d j c001dace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41127 return js_dtoa(ctx, d, 10, p, JS_DTOA_FIXED_FORMAT); - c001d952: 4685 li a3,1 - c001d954: 8522 mv a0,s0 - c001d956: 45a9 li a1,10 - c001d958: 94bfc0ef jal ra,c001a2a2 - c001d95c: b74d j c001d8fe + c001db22: 4685 li a3,1 + c001db24: 8522 mv a0,s0 + c001db26: 45a9 li a1,10 + c001db28: 94bfc0ef jal ra,c001a472 + c001db2c: b74d j c001dace -00000000c001d95e : +00000000c001db2e : js_number_toFixed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41055 { - c001d95e: 7159 addi sp,sp,-112 - c001d960: f0a2 sd s0,96(sp) - c001d962: eca6 sd s1,88(sp) - c001d964: f486 sd ra,104(sp) - c001d966: 84ba mv s1,a4 - c001d968: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41052 + c001db2e: 7159 addi sp,sp,-112 + c001db30: f0a2 sd s0,96(sp) + c001db32: eca6 sd s1,88(sp) + c001db34: f486 sd ra,104(sp) + c001db36: 84ba mv s1,a4 + c001db38: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41060 val = js_thisNumberValue(ctx, this_val); - c001d96a: e00f60ef jal ra,c0013f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41053 + c001db3a: d1ef60ef jal ra,c0014058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41061 if (JS_IsException(val)) - c001d96e: 0005871b sext.w a4,a1 - c001d972: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41052 + c001db3e: 0005871b sext.w a4,a1 + c001db42: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41060 val = js_thisNumberValue(ctx, this_val); - c001d974: 862a mv a2,a0 - c001d976: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41053 + c001db44: 862a mv a2,a0 + c001db46: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41061 if (JS_IsException(val)) - c001d978: 00f71b63 bne a4,a5,c001d98e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41054 + c001db48: 00f71b63 bne a4,a5,c001db5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41062 return val; - c001d97c: f82a sd a0,48(sp) - c001d97e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41066 (discriminator 1) -} - c001d980: 70a6 ld ra,104(sp) - c001d982: 7406 ld s0,96(sp) - c001d984: 7542 ld a0,48(sp) - c001d986: 75e2 ld a1,56(sp) - c001d988: 64e6 ld s1,88(sp) - c001d98a: 6165 addi sp,sp,112 - c001d98c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41055 + c001db4c: f82a sd a0,48(sp) + c001db4e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41074 (discriminator 1) +} + c001db50: 70a6 ld ra,104(sp) + c001db52: 7406 ld s0,96(sp) + c001db54: 7542 ld a0,48(sp) + c001db56: 75e2 ld a1,56(sp) + c001db58: 64e6 ld s1,88(sp) + c001db5a: 6165 addi sp,sp,112 + c001db5c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41063 if (JS_ToFloat64Free(ctx, &d, val)) - c001d98e: 082c addi a1,sp,24 - c001d990: 8522 mv a0,s0 - c001d992: c5dfe0ef jal ra,c001c5ee - c001d996: c509 beqz a0,c001d9a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41056 + c001db5e: 082c addi a1,sp,24 + c001db60: 8522 mv a0,s0 + c001db62: c5dfe0ef jal ra,c001c7be + c001db66: c509 beqz a0,c001db70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41064 return JS_EXCEPTION; - c001d998: 4799 li a5,6 - c001d99a: f802 sd zero,48(sp) - c001d99c: fc3e sd a5,56(sp) - c001d99e: b7cd j c001d980 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41057 + c001db68: 4799 li a5,6 + c001db6a: f802 sd zero,48(sp) + c001db6c: fc3e sd a5,56(sp) + c001db6e: b7cd j c001db50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41065 if (JS_ToInt32Sat(ctx, &f, argv[0])) - c001d9a0: 6090 ld a2,0(s1) - c001d9a2: 6494 ld a3,8(s1) - c001d9a4: 084c addi a1,sp,20 - c001d9a6: 8522 mv a0,s0 - c001d9a8: bdfff0ef jal ra,c001d586 - c001d9ac: f575 bnez a0,c001d998 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41059 + c001db70: 6090 ld a2,0(s1) + c001db72: 6494 ld a3,8(s1) + c001db74: 084c addi a1,sp,20 + c001db76: 8522 mv a0,s0 + c001db78: bdfff0ef jal ra,c001d756 + c001db7c: f575 bnez a0,c001db68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41067 if (f < 0 || f > 100) - c001d9ae: 4652 lw a2,20(sp) - c001d9b0: 06400793 li a5,100 - c001d9b4: 00c7fc63 bgeu a5,a2,c001d9cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41060 + c001db7e: 4652 lw a2,20(sp) + c001db80: 06400793 li a5,100 + c001db84: 00c7fc63 bgeu a5,a2,c001db9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41068 return JS_ThrowRangeError(ctx, "invalid number of digits"); - c001d9b8: 00041597 auipc a1,0x41 - c001d9bc: a4058593 addi a1,a1,-1472 # c005e3f8 - c001d9c0: 8522 mv a0,s0 - c001d9c2: f99f60ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41064 + c001db88: 00041597 auipc a1,0x41 + c001db8c: ad058593 addi a1,a1,-1328 # c005e658 + c001db90: 8522 mv a0,s0 + c001db92: eb7f60ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41072 return js_dtoa(ctx, d, 10, f, JS_DTOA_FRAC_FORMAT); - c001d9c6: f82a sd a0,48(sp) - c001d9c8: fc2e sd a1,56(sp) - c001d9ca: bf5d j c001d980 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41061 + c001db96: f82a sd a0,48(sp) + c001db98: fc2e sd a1,56(sp) + c001db9a: bf5d j c001db50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41069 if (fabs(d) >= 1e21) { - c001d9cc: 67e2 ld a5,24(sp) - c001d9ce: f20787d3 fmv.d.x fa5,a5 - c001d9d2: 22f7a753 fabs.d fa4,fa5 - c001d9d6: 00057717 auipc a4,0x57 - c001d9da: e6273787 fld fa5,-414(a4) # c0074838 <_erodata+0xb8> - c001d9de: a2e78753 fle.d a4,fa5,fa4 - c001d9e2: c719 beqz a4,c001d9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41062 + c001db9c: 67e2 ld a5,24(sp) + c001db9e: f20787d3 fmv.d.x fa5,a5 + c001dba2: 22f7a753 fabs.d fa4,fa5 + c001dba6: 00057717 auipc a4,0x57 + c001dbaa: ef273787 fld fa5,-270(a4) # c0074a98 <_erodata+0xb8> + c001dbae: a2e78753 fle.d a4,fa5,fa4 + c001dbb2: c719 beqz a4,c001dbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41070 return JS_ToStringFree(ctx, __JS_NewFloat64(ctx, d)); - c001d9e4: 85be mv a1,a5 - c001d9e6: 461d li a2,7 - c001d9e8: 8522 mv a0,s0 - c001d9ea: df7fc0ef jal ra,c001a7e0 - c001d9ee: bfe1 j c001d9c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41064 + c001dbb4: 85be mv a1,a5 + c001dbb6: 461d li a2,7 + c001dbb8: 8522 mv a0,s0 + c001dbba: df7fc0ef jal ra,c001a9b0 + c001dbbe: bfe1 j c001db96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41072 return js_dtoa(ctx, d, 10, f, JS_DTOA_FRAC_FORMAT); - c001d9f0: f2078553 fmv.d.x fa0,a5 - c001d9f4: 4689 li a3,2 - c001d9f6: 8522 mv a0,s0 - c001d9f8: 45a9 li a1,10 - c001d9fa: 8a9fc0ef jal ra,c001a2a2 - c001d9fe: b7e1 j c001d9c6 - -00000000c001da00 : + c001dbc0: f2078553 fmv.d.x fa0,a5 + c001dbc4: 4689 li a3,2 + c001dbc6: 8522 mv a0,s0 + c001dbc8: 45a9 li a1,10 + c001dbca: 8a9fc0ef jal ra,c001a472 + c001dbce: b7e1 j c001db96 + +00000000c001dbd0 : js_number_toExponential(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41078 { - c001da00: 7159 addi sp,sp,-112 - c001da02: f0a2 sd s0,96(sp) - c001da04: eca6 sd s1,88(sp) - c001da06: f486 sd ra,104(sp) - c001da08: 84ba mv s1,a4 - c001da0a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41075 + c001dbd0: 7159 addi sp,sp,-112 + c001dbd2: f0a2 sd s0,96(sp) + c001dbd4: eca6 sd s1,88(sp) + c001dbd6: f486 sd ra,104(sp) + c001dbd8: 84ba mv s1,a4 + c001dbda: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41083 val = js_thisNumberValue(ctx, this_val); - c001da0c: d5ef60ef jal ra,c0013f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41076 + c001dbdc: c7cf60ef jal ra,c0014058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41084 if (JS_IsException(val)) - c001da10: 0005871b sext.w a4,a1 - c001da14: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41075 + c001dbe0: 0005871b sext.w a4,a1 + c001dbe4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41083 val = js_thisNumberValue(ctx, this_val); - c001da16: 862a mv a2,a0 - c001da18: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41076 + c001dbe6: 862a mv a2,a0 + c001dbe8: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41084 if (JS_IsException(val)) - c001da1a: 00f71b63 bne a4,a5,c001da30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41077 + c001dbea: 00f71b63 bne a4,a5,c001dc00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41085 return val; - c001da1e: f82a sd a0,48(sp) - c001da20: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41095 (discriminator 1) -} - c001da22: 70a6 ld ra,104(sp) - c001da24: 7406 ld s0,96(sp) - c001da26: 7542 ld a0,48(sp) - c001da28: 75e2 ld a1,56(sp) - c001da2a: 64e6 ld s1,88(sp) - c001da2c: 6165 addi sp,sp,112 - c001da2e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41078 + c001dbee: f82a sd a0,48(sp) + c001dbf0: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41103 (discriminator 1) +} + c001dbf2: 70a6 ld ra,104(sp) + c001dbf4: 7406 ld s0,96(sp) + c001dbf6: 7542 ld a0,48(sp) + c001dbf8: 75e2 ld a1,56(sp) + c001dbfa: 64e6 ld s1,88(sp) + c001dbfc: 6165 addi sp,sp,112 + c001dbfe: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41086 if (JS_ToFloat64Free(ctx, &d, val)) - c001da30: 082c addi a1,sp,24 - c001da32: 8522 mv a0,s0 - c001da34: bbbfe0ef jal ra,c001c5ee - c001da38: c509 beqz a0,c001da42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41079 + c001dc00: 082c addi a1,sp,24 + c001dc02: 8522 mv a0,s0 + c001dc04: bbbfe0ef jal ra,c001c7be + c001dc08: c509 beqz a0,c001dc12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41087 return JS_EXCEPTION; - c001da3a: 4799 li a5,6 - c001da3c: f802 sd zero,48(sp) - c001da3e: fc3e sd a5,56(sp) - c001da40: b7cd j c001da22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41080 + c001dc0a: 4799 li a5,6 + c001dc0c: f802 sd zero,48(sp) + c001dc0e: fc3e sd a5,56(sp) + c001dc10: b7cd j c001dbf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41088 if (JS_ToInt32Sat(ctx, &f, argv[0])) - c001da42: 6090 ld a2,0(s1) - c001da44: 6494 ld a3,8(s1) - c001da46: 084c addi a1,sp,20 - c001da48: 8522 mv a0,s0 - c001da4a: b3dff0ef jal ra,c001d586 - c001da4e: f575 bnez a0,c001da3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41082 + c001dc12: 6090 ld a2,0(s1) + c001dc14: 6494 ld a3,8(s1) + c001dc16: 084c addi a1,sp,20 + c001dc18: 8522 mv a0,s0 + c001dc1a: b3dff0ef jal ra,c001d756 + c001dc1e: f575 bnez a0,c001dc0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41090 if (!isfinite(d)) { - c001da50: 00057717 auipc a4,0x57 - c001da54: d3873787 fld fa5,-712(a4) # c0074788 <_erodata+0x8> - c001da58: 12f7f7d3 fmul.d fa5,fa5,fa5 - c001da5c: 67e2 ld a5,24(sp) - c001da5e: f2078753 fmv.d.x fa4,a5 - c001da62: a2f72753 feq.d a4,fa4,fa5 - c001da66: eb09 bnez a4,c001da78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41082 (discriminator 1) - c001da68: 22f797d3 fneg.d fa5,fa5 - c001da6c: a2f72753 feq.d a4,fa4,fa5 - c001da70: e701 bnez a4,c001da78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41082 (discriminator 2) - c001da72: a2e72753 feq.d a4,fa4,fa4 - c001da76: eb09 bnez a4,c001da88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41083 + c001dc20: 00057717 auipc a4,0x57 + c001dc24: dc873787 fld fa5,-568(a4) # c00749e8 <_erodata+0x8> + c001dc28: 12f7f7d3 fmul.d fa5,fa5,fa5 + c001dc2c: 67e2 ld a5,24(sp) + c001dc2e: f2078753 fmv.d.x fa4,a5 + c001dc32: a2f72753 feq.d a4,fa4,fa5 + c001dc36: eb09 bnez a4,c001dc48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41090 (discriminator 1) + c001dc38: 22f797d3 fneg.d fa5,fa5 + c001dc3c: a2f72753 feq.d a4,fa4,fa5 + c001dc40: e701 bnez a4,c001dc48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41090 (discriminator 2) + c001dc42: a2e72753 feq.d a4,fa4,fa4 + c001dc46: eb09 bnez a4,c001dc58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41091 return JS_ToStringFree(ctx, __JS_NewFloat64(ctx, d)); - c001da78: 85be mv a1,a5 - c001da7a: 461d li a2,7 - c001da7c: 8522 mv a0,s0 - c001da7e: d63fc0ef jal ra,c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41094 + c001dc48: 85be mv a1,a5 + c001dc4a: 461d li a2,7 + c001dc4c: 8522 mv a0,s0 + c001dc4e: d63fc0ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41102 return js_dtoa(ctx, d, 10, f, flags | JS_DTOA_FORCE_EXP); - c001da82: f82a sd a0,48(sp) - c001da84: fc2e sd a1,56(sp) - c001da86: bf71 j c001da22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41085 + c001dc52: f82a sd a0,48(sp) + c001dc54: fc2e sd a1,56(sp) + c001dc56: bf71 j c001dbf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41093 if (JS_IsUndefined(argv[0])) { - c001da88: 4494 lw a3,8(s1) - c001da8a: 470d li a4,3 - c001da8c: 00e69f63 bne a3,a4,c001daaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41087 + c001dc58: 4494 lw a3,8(s1) + c001dc5a: 470d li a4,3 + c001dc5c: 00e69f63 bne a3,a4,c001dc7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41095 f = 0; - c001da90: ca02 sw zero,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41094 + c001dc60: ca02 sw zero,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41102 return js_dtoa(ctx, d, 10, f, flags | JS_DTOA_FORCE_EXP); - c001da92: 4652 lw a2,20(sp) - c001da94: f2078553 fmv.d.x fa0,a5 - c001da98: 00456513 ori a0,a0,4 - c001da9c: 0005069b sext.w a3,a0 - c001daa0: 45a9 li a1,10 - c001daa2: 8522 mv a0,s0 - c001daa4: ffefc0ef jal ra,c001a2a2 - c001daa8: bfe9 j c001da82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41089 + c001dc62: 4652 lw a2,20(sp) + c001dc64: f2078553 fmv.d.x fa0,a5 + c001dc68: 00456513 ori a0,a0,4 + c001dc6c: 0005069b sext.w a3,a0 + c001dc70: 45a9 li a1,10 + c001dc72: 8522 mv a0,s0 + c001dc74: ffefc0ef jal ra,c001a472 + c001dc78: bfe9 j c001dc52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41097 if (f < 0 || f > 100) - c001daaa: 4752 lw a4,20(sp) - c001daac: 06400693 li a3,100 - c001dab0: 00e6fa63 bgeu a3,a4,c001dac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41090 + c001dc7a: 4752 lw a4,20(sp) + c001dc7c: 06400693 li a3,100 + c001dc80: 00e6fa63 bgeu a3,a4,c001dc94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41098 return JS_ThrowRangeError(ctx, "invalid number of digits"); - c001dab4: 8522 mv a0,s0 - c001dab6: 00041597 auipc a1,0x41 - c001daba: 94258593 addi a1,a1,-1726 # c005e3f8 - c001dabe: e9df60ef jal ra,c001495a - c001dac2: b7c1 j c001da82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41091 + c001dc84: 8522 mv a0,s0 + c001dc86: 00041597 auipc a1,0x41 + c001dc8a: 9d258593 addi a1,a1,-1582 # c005e658 + c001dc8e: dbbf60ef jal ra,c0014a48 + c001dc92: b7c1 j c001dc52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41099 f++; - c001dac4: 2705 addiw a4,a4,1 - c001dac6: ca3a sw a4,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41092 + c001dc94: 2705 addiw a4,a4,1 + c001dc96: ca3a sw a4,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41100 flags = JS_DTOA_FIXED_FORMAT; - c001dac8: 4505 li a0,1 - c001daca: b7e1 j c001da92 + c001dc98: 4505 li a0,1 + c001dc9a: b7e1 j c001dc62 -00000000c001dacc : +00000000c001dc9c : JS_ToInt32Clamp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10827 -{ - c001dacc: 715d addi sp,sp,-80 - c001dace: e0a2 sd s0,64(sp) - c001dad0: f052 sd s4,32(sp) - c001dad2: 842e mv s0,a1 - c001dad4: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10835 +{ + c001dc9c: 715d addi sp,sp,-80 + c001dc9e: e0a2 sd s0,64(sp) + c001dca0: f052 sd s4,32(sp) + c001dca2: 842e mv s0,a1 + c001dca4: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10836 int res = JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001dad6: 85b6 mv a1,a3 - c001dad8: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10827 -{ - c001dada: fc26 sd s1,56(sp) - c001dadc: f84a sd s2,48(sp) - c001dade: f44e sd s3,40(sp) - c001dae0: e486 sd ra,72(sp) - c001dae2: 893a mv s2,a4 - c001dae4: 89be mv s3,a5 - c001dae6: 84c2 mv s1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10828 + c001dca6: 85b6 mv a1,a3 + c001dca8: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10835 +{ + c001dcaa: fc26 sd s1,56(sp) + c001dcac: f84a sd s2,48(sp) + c001dcae: f44e sd s3,40(sp) + c001dcb0: e486 sd ra,72(sp) + c001dcb2: 893a mv s2,a4 + c001dcb4: 89be mv s3,a5 + c001dcb6: 84c2 mv s1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10836 int res = JS_ToInt32SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001dae8: b87e80ef jal ra,c000666e - c001daec: 862a mv a2,a0 - c001daee: 86ae mv a3,a1 - c001daf0: 8552 mv a0,s4 - c001daf2: 85a2 mv a1,s0 - c001daf4: 9fbff0ef jal ra,c001d4ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10829 + c001dcb8: aa5e80ef jal ra,c000675c + c001dcbc: 862a mv a2,a0 + c001dcbe: 86ae mv a3,a1 + c001dcc0: 8552 mv a0,s4 + c001dcc2: 85a2 mv a1,s0 + c001dcc4: 9fbff0ef jal ra,c001d6be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10837 if (res == 0) { - c001daf8: e911 bnez a0,c001db0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10830 + c001dcc8: e911 bnez a0,c001dcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10838 if (*pres < min) { - c001dafa: 00042803 lw a6,0(s0) - c001dafe: 03285263 bge a6,s2,c001db22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10831 + c001dcca: 00042803 lw a6,0(s0) + c001dcce: 03285263 bge a6,s2,c001dcf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10839 *pres += min_offset; - c001db02: 010487bb addw a5,s1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10832 + c001dcd2: 010487bb addw a5,s1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10840 if (*pres < min) - c001db06: 0127cb63 blt a5,s2,c001db1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10831 + c001dcd6: 0127cb63 blt a5,s2,c001dcec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10839 *pres += min_offset; - c001db0a: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10840 + c001dcda: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10848 } - c001db0c: 60a6 ld ra,72(sp) - c001db0e: 6406 ld s0,64(sp) - c001db10: 74e2 ld s1,56(sp) - c001db12: 7942 ld s2,48(sp) - c001db14: 79a2 ld s3,40(sp) - c001db16: 7a02 ld s4,32(sp) - c001db18: 6161 addi sp,sp,80 - c001db1a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10833 + c001dcdc: 60a6 ld ra,72(sp) + c001dcde: 6406 ld s0,64(sp) + c001dce0: 74e2 ld s1,56(sp) + c001dce2: 7942 ld s2,48(sp) + c001dce4: 79a2 ld s3,40(sp) + c001dce6: 7a02 ld s4,32(sp) + c001dce8: 6161 addi sp,sp,80 + c001dcea: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10841 *pres = min; - c001db1c: 01242023 sw s2,0(s0) - c001db20: b7f5 j c001db0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10835 + c001dcec: 01242023 sw s2,0(s0) + c001dcf0: b7f5 j c001dcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10843 if (*pres > max) - c001db22: ff09d5e3 bge s3,a6,c001db0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10836 + c001dcf2: ff09d5e3 bge s3,a6,c001dcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10844 *pres = max; - c001db26: 01342023 sw s3,0(s0) - c001db2a: b7cd j c001db0c + c001dcf6: 01342023 sw s3,0(s0) + c001dcfa: b7cd j c001dcdc -00000000c001db2c : +00000000c001dcfc : js_typed_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53734 -{ - c001db2c: 7135 addi sp,sp,-160 - c001db2e: e922 sd s0,144(sp) - c001db30: e526 sd s1,136(sp) - c001db32: e14a sd s2,128(sp) - c001db34: fcce sd s3,120(sp) - c001db36: ed06 sd ra,152(sp) - c001db38: f8d2 sd s4,112(sp) - c001db3a: f4d6 sd s5,104(sp) - c001db3c: 892a mv s2,a0 - c001db3e: e02e sd a1,0(sp) - c001db40: e432 sd a2,8(sp) - c001db42: 89b6 mv s3,a3 - c001db44: 843a mv s0,a4 - c001db46: 84be mv s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53741 - len = js_typed_array_get_length_internal(ctx, this_val); - c001db48: ccef60ef jal ra,c0014016 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53742 +{ + c001dcfc: 7135 addi sp,sp,-160 + c001dcfe: e922 sd s0,144(sp) + c001dd00: e526 sd s1,136(sp) + c001dd02: e14a sd s2,128(sp) + c001dd04: fcce sd s3,120(sp) + c001dd06: ed06 sd ra,152(sp) + c001dd08: f8d2 sd s4,112(sp) + c001dd0a: f4d6 sd s5,104(sp) + c001dd0c: 892a mv s2,a0 + c001dd0e: e02e sd a1,0(sp) + c001dd10: e432 sd a2,8(sp) + c001dd12: 89b6 mv s3,a3 + c001dd14: 843a mv s0,a4 + c001dd16: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53749 + len = js_typed_array_get_length_internal(ctx, this_val); + c001dd18: becf60ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53750 if (len < 0) - c001db4c: 32054d63 bltz a0,c001de86 - c001db50: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53744 + c001dd1c: 32054d63 bltz a0,c001e056 + c001dd20: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53752 if (len == 0) - c001db52: e119 bnez a0,c001db58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53820 + c001dd22: e119 bnez a0,c001dd28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53828 switch (p->class_id) { - c001db54: 557d li a0,-1 - c001db56: a241 j c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53747 + c001dd24: 557d li a0,-1 + c001dd26: a241 j c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53755 if (special == special_lastIndexOf) { - c001db58: 4785 li a5,1 - c001db5a: 08f49c63 bne s1,a5,c001dbf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53748 + c001dd28: 4785 li a5,1 + c001dd2a: 08f49c63 bne s1,a5,c001ddc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53756 k = len - 1; - c001db5e: fff5079b addiw a5,a0,-1 - c001db62: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53749 + c001dd2e: fff5079b addiw a5,a0,-1 + c001dd32: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53757 if (argc > 1) { - c001db64: 0534c063 blt s1,s3,c001dba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53768 + c001dd34: 0534c063 blt s1,s3,c001dd74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53776 inc = -1; - c001db68: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53767 + c001dd38: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53775 stop = -1; - c001db6a: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53779 + c001dd3a: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53787 p = JS_VALUE_GET_OBJ(this_val); - c001db6c: 6a82 ld s5,0(sp) + c001dd3c: 6a82 ld s5,0(sp) typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001db6e: 030ab783 ld a5,48(s5) - c001db72: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c001dd3e: 030ab783 ld a5,48(s5) + c001dd42: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c001db74: 7b9c ld a5,48(a5) + c001dd44: 7b9c ld a5,48(a5) js_typed_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53790 if (typed_array_is_detached(ctx, p)) { - c001db76: 0047c783 lbu a5,4(a5) - c001db7a: cfc9 beqz a5,c001dc14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53784 + c001dd46: 0047c783 lbu a5,4(a5) + c001dd4a: cfc9 beqz a5,c001dde4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53792 if (special == special_includes && JS_IsUndefined(argv[0]) && len > 0) - c001db7c: 57fd li a5,-1 - c001db7e: 06f49863 bne s1,a5,c001dbee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53784 (discriminator 1) - c001db82: 4408 lw a0,8(s0) - c001db84: 1575 addi a0,a0,-3 - c001db86: 00a03533 snez a0,a0 - c001db8a: 40a00533 neg a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53960 + c001dd4c: 57fd li a5,-1 + c001dd4e: 06f49863 bne s1,a5,c001ddbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53792 (discriminator 1) + c001dd52: 4408 lw a0,8(s0) + c001dd54: 1575 addi a0,a0,-3 + c001dd56: 00a03533 snez a0,a0 + c001dd5a: 40a00533 neg a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53968 return JS_NewBool(ctx, res >= 0); - c001db8e: fff54513 not a0,a0 - c001db92: 01f5551b srliw a0,a0,0x1f + c001dd5e: fff54513 not a0,a0 + c001dd62: 01f5551b srliw a0,a0,0x1f JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c001db96: c282 sw zero,68(sp) - c001db98: c0aa sw a0,64(sp) - c001db9a: 6786 ld a5,64(sp) - c001db9c: f83e sd a5,48(sp) - c001db9e: 4785 li a5,1 + c001dd66: c282 sw zero,68(sp) + c001dd68: c0aa sw a0,64(sp) + c001dd6a: 6786 ld a5,64(sp) + c001dd6c: f83e sd a5,48(sp) + c001dd6e: 4785 li a5,1 js_typed_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53965 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53973 return JS_EXCEPTION; - c001dba0: fc3e sd a5,56(sp) - c001dba2: a291 j c001dce6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53750 + c001dd70: fc3e sd a5,56(sp) + c001dd72: a291 j c001deb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53758 if (JS_ToFloat64(ctx, &d, argv[1])) - c001dba4: 6810 ld a2,16(s0) - c001dba6: 6c14 ld a3,24(s0) - c001dba8: 102c addi a1,sp,40 - c001dbaa: 854a mv a0,s2 - c001dbac: ae3fe0ef jal ra,c001c68e - c001dbb0: 2c051b63 bnez a0,c001de86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53752 + c001dd74: 6810 ld a2,16(s0) + c001dd76: 6c14 ld a3,24(s0) + c001dd78: 102c addi a1,sp,40 + c001dd7a: 854a mv a0,s2 + c001dd7c: ae3fe0ef jal ra,c001c85e + c001dd80: 2c051b63 bnez a0,c001e056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53760 if (isnan(d)) { - c001dbb4: 37a2 fld fa5,40(sp) - c001dbb6: a2f7a7d3 feq.d a5,fa5,fa5 - c001dbba: e399 bnez a5,c001dbc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53753 + c001dd84: 37a2 fld fa5,40(sp) + c001dd86: a2f7a7d3 feq.d a5,fa5,fa5 + c001dd8a: e399 bnez a5,c001dd90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53761 k = 0; - c001dbbc: ce02 sw zero,28(sp) - c001dbbe: b76d j c001db68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53755 + c001dd8c: ce02 sw zero,28(sp) + c001dd8e: b76d j c001dd38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53763 if (d >= 0) { - c001dbc0: f20006d3 fmv.d.x fa3,zero - c001dbc4: a2f687d3 fle.d a5,fa3,fa5 - c001dbc8: cb99 beqz a5,c001dbde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53756 + c001dd90: f20006d3 fmv.d.x fa3,zero + c001dd94: a2f687d3 fle.d a5,fa3,fa5 + c001dd98: cb99 beqz a5,c001ddae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53764 if (d < k) { - c001dbca: 47f2 lw a5,28(sp) - c001dbcc: d2078753 fcvt.d.w fa4,a5 - c001dbd0: a2e797d3 flt.d a5,fa5,fa4 - c001dbd4: dbd1 beqz a5,c001db68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53763 + c001dd9a: 47f2 lw a5,28(sp) + c001dd9c: d2078753 fcvt.d.w fa4,a5 + c001dda0: a2e797d3 flt.d a5,fa5,fa4 + c001dda4: dbd1 beqz a5,c001dd38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53771 k = d; - c001dbd6: c20797d3 fcvt.w.d a5,fa5,rtz - c001dbda: ce3e sw a5,28(sp) - c001dbdc: b771 j c001db68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53760 + c001dda6: c20797d3 fcvt.w.d a5,fa5,rtz + c001ddaa: ce3e sw a5,28(sp) + c001ddac: b771 j c001dd38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53768 d += len; - c001dbde: d20a0753 fcvt.d.w fa4,s4 - c001dbe2: 02f777d3 fadd.d fa5,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53761 + c001ddae: d20a0753 fcvt.d.w fa4,s4 + c001ddb2: 02f777d3 fadd.d fa5,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53769 if (d < 0) - c001dbe6: a2d797d3 flt.d a5,fa5,fa3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53760 + c001ddb6: a2d797d3 flt.d a5,fa5,fa3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53768 d += len; - c001dbea: b43e fsd fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53761 + c001ddba: b43e fsd fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53769 if (d < 0) - c001dbec: d7ed beqz a5,c001dbd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53736 + c001ddbc: d7ed beqz a5,c001dda6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53744 int len, tag, is_int, is_bigint, k, stop, inc, res = -1; - c001dbee: 557d li a0,-1 - c001dbf0: a0f5 j c001dcdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53770 + c001ddbe: 557d li a0,-1 + c001ddc0: a0f5 j c001deac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53778 k = 0; - c001dbf2: ce02 sw zero,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53771 + c001ddc2: ce02 sw zero,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53779 if (argc > 1) { - c001dbf4: 0137dd63 bge a5,s3,c001dc0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53772 + c001ddc4: 0137dd63 bge a5,s3,c001ddde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53780 if (JS_ToInt32Clamp(ctx, &k, argv[1], 0, len, len)) - c001dbf8: 6810 ld a2,16(s0) - c001dbfa: 6c14 ld a3,24(s0) - c001dbfc: 882a mv a6,a0 - c001dbfe: 87aa mv a5,a0 - c001dc00: 4701 li a4,0 - c001dc02: 086c addi a1,sp,28 - c001dc04: 854a mv a0,s2 - c001dc06: ec7ff0ef jal ra,c001dacc - c001dc0a: 26051e63 bnez a0,c001de86 - c001dc0e: 89d2 mv s3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53776 + c001ddc8: 6810 ld a2,16(s0) + c001ddca: 6c14 ld a3,24(s0) + c001ddcc: 882a mv a6,a0 + c001ddce: 87aa mv a5,a0 + c001ddd0: 4701 li a4,0 + c001ddd2: 086c addi a1,sp,28 + c001ddd4: 854a mv a0,s2 + c001ddd6: ec7ff0ef jal ra,c001dc9c + c001ddda: 26051e63 bnez a0,c001e056 + c001ddde: 89d2 mv s3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53784 inc = 1; - c001dc10: 4905 li s2,1 - c001dc12: bfa9 j c001db6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53792 + c001dde0: 4905 li s2,1 + c001dde2: bfa9 j c001dd3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53800 tag = JS_VALUE_GET_NORM_TAG(argv[0]); - c001dc14: 4414 lw a3,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53791 + c001dde4: 4414 lw a3,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53799 v64 = 0; /* avoid warning */ - c001dc16: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53793 + c001dde6: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53801 if (tag == JS_TAG_INT) { - c001dc18: ea95 bnez a3,c001dc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53795 + c001dde8: ea95 bnez a3,c001de1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53803 v64 = JS_VALUE_GET_INT(argv[0]); - c001dc1a: 401c lw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53794 + c001ddea: 401c lw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53802 is_int = 1; - c001dc1c: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53796 + c001ddec: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53804 d = v64; - c001dc1e: d20787d3 fcvt.d.w fa5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53795 + c001ddee: d20787d3 fcvt.d.w fa5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53803 v64 = JS_VALUE_GET_INT(argv[0]); - c001dc22: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53796 + c001ddf2: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53804 d = v64; - c001dc24: b43e fsd fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53820 + c001ddf4: b43e fsd fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53828 switch (p->class_id) { - c001dc26: 006ad703 lhu a4,6(s5) - c001dc2a: 47a9 li a5,10 - c001dc2c: 372d addiw a4,a4,-21 - c001dc2e: 03071613 slli a2,a4,0x30 - c001dc32: 9241 srli a2,a2,0x30 - c001dc34: f2c7e0e3 bltu a5,a2,c001db54 - c001dc38: 00261713 slli a4,a2,0x2 - c001dc3c: 00040617 auipc a2,0x40 - c001dc40: 7d860613 addi a2,a2,2008 # c005e414 - c001dc44: 9732 add a4,a4,a2 - c001dc46: 431c lw a5,0(a4) - c001dc48: 97b2 add a5,a5,a2 - c001dc4a: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53798 + c001ddf6: 006ad703 lhu a4,6(s5) + c001ddfa: 47a9 li a5,10 + c001ddfc: 372d addiw a4,a4,-21 + c001ddfe: 03071613 slli a2,a4,0x30 + c001de02: 9241 srli a2,a2,0x30 + c001de04: f2c7e0e3 bltu a5,a2,c001dd24 + c001de08: 00261713 slli a4,a2,0x2 + c001de0c: 00041617 auipc a2,0x41 + c001de10: 86860613 addi a2,a2,-1944 # c005e674 + c001de14: 9732 add a4,a4,a2 + c001de16: 431c lw a5,0(a4) + c001de18: 97b2 add a5,a5,a2 + c001de1a: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53806 if (tag == JS_TAG_FLOAT64) { - c001dc4c: 479d li a5,7 - c001dc4e: 00f69d63 bne a3,a5,c001dc68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53799 + c001de1c: 479d li a5,7 + c001de1e: 00f69d63 bne a3,a5,c001de38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53807 d = JS_VALUE_GET_FLOAT64(argv[0]); - c001dc52: 201c fld fa5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53789 + c001de22: 201c fld fa5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53797 is_bigint = 0; - c001dc54: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53800 + c001de24: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53808 v64 = d; - c001dc56: c22797d3 fcvt.l.d a5,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53799 + c001de26: c22797d3 fcvt.l.d a5,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53807 d = JS_VALUE_GET_FLOAT64(argv[0]); - c001dc5a: b43e fsd fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53801 + c001de2a: b43e fsd fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53809 is_int = (v64 == d); - c001dc5c: d227f753 fcvt.d.l fa4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53800 + c001de2c: d227f753 fcvt.d.l fa4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53808 v64 = d; - c001dc60: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53801 + c001de30: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53809 is_int = (v64 == d); - c001dc62: a2f725d3 feq.d a1,fa4,fa5 - c001dc66: b7c1 j c001dc26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53802 + c001de32: a2f725d3 feq.d a1,fa4,fa5 + c001de36: b7c1 j c001ddf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53810 } else if (tag == JS_TAG_BIG_INT) { - c001dc68: 57d9 li a5,-10 - c001dc6a: eef695e3 bne a3,a5,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53805 + c001de38: 57d9 li a5,-10 + c001de3a: eef695e3 bne a3,a5,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53813 if (p->class_id == JS_CLASS_BIG_INT64_ARRAY) { - c001dc6e: 006ad783 lhu a5,6(s5) - c001dc72: 4771 li a4,28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53803 + c001de3e: 006ad783 lhu a5,6(s5) + c001de42: 4771 li a4,28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53811 JSBigFloat *p1 = JS_VALUE_GET_PTR(argv[0]); - c001dc74: 600c ld a1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53805 + c001de44: 600c ld a1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53813 if (p->class_id == JS_CLASS_BIG_INT64_ARRAY) { - c001dc76: 00e79d63 bne a5,a4,c001dc90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53806 + c001de46: 00e79d63 bne a5,a4,c001de60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53814 if (bf_get_int64(&v64, &p1->num, 0) != 0) - c001dc7a: 4601 li a2,0 - c001dc7c: 05a1 addi a1,a1,8 - c001dc7e: 1008 addi a0,sp,32 - c001dc80: 5dc320ef jal ra,c005025c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53809 + c001de4a: 4601 li a2,0 + c001de4c: 05a1 addi a1,a1,8 + c001de4e: 1008 addi a0,sp,32 + c001de50: 5dc320ef jal ra,c005042c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53817 if (bf_get_uint64((uint64_t *)&v64, &p1->num) != 0) - c001dc84: ec0518e3 bnez a0,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53814 + c001de54: ec0518e3 bnez a0,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53822 d = 0; - c001dc88: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53815 + c001de58: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53823 is_bigint = 1; - c001dc8a: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53790 + c001de5a: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53798 is_int = 0; /* avoid warning */ - c001dc8c: 4581 li a1,0 - c001dc8e: bf61 j c001dc26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53808 + c001de5c: 4581 li a1,0 + c001de5e: bf61 j c001ddf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53816 } else if (p->class_id == JS_CLASS_BIG_UINT64_ARRAY) { - c001dc90: 4775 li a4,29 - c001dc92: ece791e3 bne a5,a4,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53809 + c001de60: 4775 li a4,29 + c001de62: ece791e3 bne a5,a4,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53817 if (bf_get_uint64((uint64_t *)&v64, &p1->num) != 0) - c001dc96: 05a1 addi a1,a1,8 - c001dc98: 1008 addi a0,sp,32 - c001dc9a: 766320ef jal ra,c0050400 - c001dc9e: b7dd j c001dc84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53822 + c001de66: 05a1 addi a1,a1,8 + c001de68: 1008 addi a0,sp,32 + c001de6a: 766320ef jal ra,c00505d0 + c001de6e: b7dd j c001de54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53830 if (is_int && (int8_t)v64 == v64) - c001dca0: ea058ae3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53822 (discriminator 1) - c001dca4: 7782 ld a5,32(sp) - c001dca6: 0187971b slliw a4,a5,0x18 - c001dcaa: 4187571b sraiw a4,a4,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53827 (discriminator 1) + c001de70: ea058ae3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53830 (discriminator 1) + c001de74: 7782 ld a5,32(sp) + c001de76: 0187971b slliw a4,a5,0x18 + c001de7a: 4187571b sraiw a4,a4,0x18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53835 (discriminator 1) if (is_int && (uint8_t)v64 == v64) { - c001dcae: eae793e3 bne a5,a4,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53832 + c001de7e: eae793e3 bne a5,a4,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53840 v = v64; - c001dcb2: 02015583 lhu a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53833 + c001de82: 02015583 lhu a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53841 if (inc > 0) { - c001dcb6: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53831 - pv = p->u.array.u.uint8_ptr; - c001dcb8: 038ab403 ld s0,56(s5) + c001de86: 4705 li a4,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53839 + pv = p->u.array.u.uint8_ptr; + c001de88: 038ab403 ld s0,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53847 if (pv[k] == v) { - c001dcbc: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53833 + c001de8c: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53841 if (inc > 0) { - c001dcc0: 04e91d63 bne s2,a4,c001dd1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53834 + c001de90: 04e91d63 bne s2,a4,c001deea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53842 pp = memchr(pv + k, v, len - k); - c001dcc4: 4572 lw a0,28(sp) - c001dcc6: 40aa063b subw a2,s4,a0 - c001dcca: 9522 add a0,a0,s0 - c001dccc: 31d380ef jal ra,c00567e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53835 + c001de94: 4572 lw a0,28(sp) + c001de96: 40aa063b subw a2,s4,a0 + c001de9a: 9522 add a0,a0,s0 + c001de9c: 31d380ef jal ra,c00569b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53843 if (pp) - c001dcd0: e80502e3 beqz a0,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53836 + c001dea0: e80502e3 beqz a0,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53844 res = pp - pv; - c001dcd4: 9d01 subw a0,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53959 + c001dea4: 9d01 subw a0,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53967 if (special == special_includes) - c001dcd6: 57fd li a5,-1 - c001dcd8: eaf48be3 beq s1,a5,c001db8e + c001dea6: 57fd li a5,-1 + c001dea8: eaf48be3 beq s1,a5,c001dd5e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001dcdc: ca82 sw zero,84(sp) - c001dcde: c8aa sw a0,80(sp) - c001dce0: 67c6 ld a5,80(sp) - c001dce2: fc02 sd zero,56(sp) - c001dce4: f83e sd a5,48(sp) + c001deac: ca82 sw zero,84(sp) + c001deae: c8aa sw a0,80(sp) + c001deb0: 67c6 ld a5,80(sp) + c001deb2: fc02 sd zero,56(sp) + c001deb4: f83e sd a5,48(sp) js_typed_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53966 -} - c001dce6: 60ea ld ra,152(sp) - c001dce8: 644a ld s0,144(sp) - c001dcea: 7542 ld a0,48(sp) - c001dcec: 75e2 ld a1,56(sp) - c001dcee: 64aa ld s1,136(sp) - c001dcf0: 690a ld s2,128(sp) - c001dcf2: 79e6 ld s3,120(sp) - c001dcf4: 7a46 ld s4,112(sp) - c001dcf6: 7aa6 ld s5,104(sp) - c001dcf8: 610d addi sp,sp,160 - c001dcfa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53827 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53974 +} + c001deb6: 60ea ld ra,152(sp) + c001deb8: 644a ld s0,144(sp) + c001deba: 7542 ld a0,48(sp) + c001debc: 75e2 ld a1,56(sp) + c001debe: 64aa ld s1,136(sp) + c001dec0: 690a ld s2,128(sp) + c001dec2: 79e6 ld s3,120(sp) + c001dec4: 7a46 ld s4,112(sp) + c001dec6: 7aa6 ld s5,104(sp) + c001dec8: 610d addi sp,sp,160 + c001deca: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53835 if (is_int && (uint8_t)v64 == v64) { - c001dcfc: e4058ce3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53827 (discriminator 1) - c001dd00: 7782 ld a5,32(sp) - c001dd02: 0ff7f713 zext.b a4,a5 - c001dd06: b765 j c001dcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53839 + c001decc: e4058ce3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53835 (discriminator 1) + c001ded0: 7782 ld a5,32(sp) + c001ded2: 0ff7f713 zext.b a4,a5 + c001ded6: b765 j c001de7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53847 if (pv[k] == v) { - c001dd08: 00a40733 add a4,s0,a0 - c001dd0c: 00074703 lbu a4,0(a4) - c001dd10: fcf703e3 beq a4,a5,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53838 + c001ded8: 00a40733 add a4,s0,a0 + c001dedc: 00074703 lbu a4,0(a4) + c001dee0: fcf703e3 beq a4,a5,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53846 for (; k != stop; k += inc) { - c001dd14: 0125053b addw a0,a0,s2 - c001dd18: ce2a sw a0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53838 (discriminator 1) - c001dd1a: 4572 lw a0,28(sp) - c001dd1c: ff3516e3 bne a0,s3,c001dd08 - c001dd20: bd15 j c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53848 + c001dee4: 0125053b addw a0,a0,s2 + c001dee8: ce2a sw a0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53846 (discriminator 1) + c001deea: 4572 lw a0,28(sp) + c001deec: ff3516e3 bne a0,s3,c001ded8 + c001def0: bd15 j c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53856 if (is_int && (int16_t)v64 == v64) - c001dd22: e20589e3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53848 (discriminator 1) - c001dd26: 7782 ld a5,32(sp) - c001dd28: 0107971b slliw a4,a5,0x10 - c001dd2c: 4107571b sraiw a4,a4,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53852 (discriminator 1) + c001def2: e20589e3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53856 (discriminator 1) + c001def6: 7782 ld a5,32(sp) + c001def8: 0107971b slliw a4,a5,0x10 + c001defc: 4107571b sraiw a4,a4,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53860 (discriminator 1) if (is_int && (uint16_t)v64 == v64) { - c001dd30: e2e792e3 bne a5,a4,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53856 + c001df00: e2e792e3 bne a5,a4,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53864 pv = p->u.array.u.uint16_ptr; - c001dd34: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53859 + c001df04: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53867 if (pv[k] == v) { - c001dd38: 02015683 lhu a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53858 (discriminator 1) + c001df08: 02015683 lhu a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53866 (discriminator 1) for (; k != stop; k += inc) { - c001dd3c: 4572 lw a0,28(sp) - c001dd3e: e1350be3 beq a0,s3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53859 + c001df0c: 4572 lw a0,28(sp) + c001df0e: e1350be3 beq a0,s3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53867 if (pv[k] == v) { - c001dd42: 00151793 slli a5,a0,0x1 - c001dd46: 97ba add a5,a5,a4 - c001dd48: 0007d783 lhu a5,0(a5) - c001dd4c: f8d785e3 beq a5,a3,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53858 + c001df12: 00151793 slli a5,a0,0x1 + c001df16: 97ba add a5,a5,a4 + c001df18: 0007d783 lhu a5,0(a5) + c001df1c: f8d785e3 beq a5,a3,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53866 for (; k != stop; k += inc) { - c001dd50: 0125053b addw a0,a0,s2 - c001dd54: ce2a sw a0,28(sp) - c001dd56: b7dd j c001dd3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53852 + c001df20: 0125053b addw a0,a0,s2 + c001df24: ce2a sw a0,28(sp) + c001df26: b7dd j c001df0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53860 if (is_int && (uint16_t)v64 == v64) { - c001dd58: de058ee3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53852 (discriminator 1) - c001dd5c: 7782 ld a5,32(sp) - c001dd5e: 03079713 slli a4,a5,0x30 - c001dd62: 9341 srli a4,a4,0x30 - c001dd64: b7f1 j c001dd30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53867 + c001df28: de058ee3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53860 (discriminator 1) + c001df2c: 7782 ld a5,32(sp) + c001df2e: 03079713 slli a4,a5,0x30 + c001df32: 9341 srli a4,a4,0x30 + c001df34: b7f1 j c001df00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53875 if (is_int && (int32_t)v64 == v64) - c001dd66: de0587e3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53867 (discriminator 1) - c001dd6a: 7782 ld a5,32(sp) - c001dd6c: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53871 (discriminator 1) + c001df36: de0587e3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53875 (discriminator 1) + c001df3a: 7782 ld a5,32(sp) + c001df3c: 0007871b sext.w a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53879 (discriminator 1) if (is_int && (uint32_t)v64 == v64) { - c001dd70: dee792e3 bne a5,a4,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53875 + c001df40: dee792e3 bne a5,a4,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53883 pv = p->u.array.u.uint32_ptr; - c001dd74: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53876 + c001df44: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53884 v = v64; - c001dd78: 5682 lw a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53877 (discriminator 1) + c001df48: 5682 lw a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53885 (discriminator 1) for (; k != stop; k += inc) { - c001dd7a: 4572 lw a0,28(sp) - c001dd7c: dd350ce3 beq a0,s3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53878 + c001df4a: 4572 lw a0,28(sp) + c001df4c: dd350ce3 beq a0,s3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53886 if (pv[k] == v) { - c001dd80: 00251793 slli a5,a0,0x2 - c001dd84: 97ba add a5,a5,a4 - c001dd86: 439c lw a5,0(a5) - c001dd88: f4d787e3 beq a5,a3,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53877 + c001df50: 00251793 slli a5,a0,0x2 + c001df54: 97ba add a5,a5,a4 + c001df56: 439c lw a5,0(a5) + c001df58: f4d787e3 beq a5,a3,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53885 for (; k != stop; k += inc) { - c001dd8c: 0125053b addw a0,a0,s2 - c001dd90: ce2a sw a0,28(sp) - c001dd92: b7e5 j c001dd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53871 + c001df5c: 0125053b addw a0,a0,s2 + c001df60: ce2a sw a0,28(sp) + c001df62: b7e5 j c001df4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53879 if (is_int && (uint32_t)v64 == v64) { - c001dd94: dc0580e3 beqz a1,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53871 (discriminator 1) - c001dd98: 7782 ld a5,32(sp) - c001dd9a: 02079713 slli a4,a5,0x20 - c001dd9e: 9301 srli a4,a4,0x20 - c001dda0: bfc1 j c001dd70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53886 + c001df64: dc0580e3 beqz a1,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53879 (discriminator 1) + c001df68: 7782 ld a5,32(sp) + c001df6a: 02079713 slli a4,a5,0x20 + c001df6e: 9301 srli a4,a4,0x20 + c001df70: bfc1 j c001df40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53894 if (is_bigint) - c001dda2: da0699e3 bnez a3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53888 + c001df72: da0699e3 bnez a3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53896 if (isnan(d)) { - c001dda6: 37a2 fld fa5,40(sp) - c001dda8: a2f7a7d3 feq.d a5,fa5,fa5 - c001ddac: eb85 bnez a5,c001dddc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53891 + c001df76: 37a2 fld fa5,40(sp) + c001df78: a2f7a7d3 feq.d a5,fa5,fa5 + c001df7c: eb85 bnez a5,c001dfac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53899 if (special != special_includes) - c001ddae: 57fd li a5,-1 - c001ddb0: e2f49fe3 bne s1,a5,c001dbee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53889 + c001df7e: 57fd li a5,-1 + c001df80: e2f49fe3 bne s1,a5,c001ddbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53897 const float *pv = p->u.array.u.float_ptr; - c001ddb4: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53893 (discriminator 1) + c001df84: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53901 (discriminator 1) for (; k != stop; k += inc) { - c001ddb8: 4572 lw a0,28(sp) - c001ddba: 01351463 bne a0,s3,c001ddc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53736 + c001df88: 4572 lw a0,28(sp) + c001df8a: 01351463 bne a0,s3,c001df92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53744 int len, tag, is_int, is_bigint, k, stop, inc, res = -1; - c001ddbe: 557d li a0,-1 - c001ddc0: b3f9 j c001db8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53894 + c001df8e: 557d li a0,-1 + c001df90: b3f9 j c001dd5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53902 if (isnan(pv[k])) { - c001ddc2: 00251793 slli a5,a0,0x2 - c001ddc6: 97ba add a5,a5,a4 - c001ddc8: 0007a787 flw fa5,0(a5) - c001ddcc: a0f7a7d3 feq.s a5,fa5,fa5 - c001ddd0: da078fe3 beqz a5,c001db8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53893 + c001df92: 00251793 slli a5,a0,0x2 + c001df96: 97ba add a5,a5,a4 + c001df98: 0007a787 flw fa5,0(a5) + c001df9c: a0f7a7d3 feq.s a5,fa5,fa5 + c001dfa0: da078fe3 beqz a5,c001dd5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53901 for (; k != stop; k += inc) { - c001ddd4: 0125053b addw a0,a0,s2 - c001ddd8: ce2a sw a0,28(sp) - c001ddda: bff9 j c001ddb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53899 + c001dfa4: 0125053b addw a0,a0,s2 + c001dfa8: ce2a sw a0,28(sp) + c001dfaa: bff9 j c001df88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53907 } else if ((f = (float)d) == d) { - c001dddc: 4017f753 fcvt.s.d fa4,fa5 - c001dde0: 420706d3 fcvt.d.s fa3,fa4 - c001dde4: a2d7a7d3 feq.d a5,fa5,fa3 - c001dde8: d60786e3 beqz a5,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53900 + c001dfac: 4017f753 fcvt.s.d fa4,fa5 + c001dfb0: 420706d3 fcvt.d.s fa3,fa4 + c001dfb4: a2d7a7d3 feq.d a5,fa5,fa3 + c001dfb8: d60786e3 beqz a5,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53908 const float *pv = p->u.array.u.float_ptr; - c001ddec: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53901 (discriminator 1) + c001dfbc: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53909 (discriminator 1) for (; k != stop; k += inc) { - c001ddf0: 4572 lw a0,28(sp) - c001ddf2: d73501e3 beq a0,s3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53902 + c001dfc0: 4572 lw a0,28(sp) + c001dfc2: d73501e3 beq a0,s3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53910 if (pv[k] == f) { - c001ddf6: 00251793 slli a5,a0,0x2 - c001ddfa: 97ba add a5,a5,a4 - c001ddfc: 0007a787 flw fa5,0(a5) - c001de00: a0e7a7d3 feq.s a5,fa5,fa4 - c001de04: ec0799e3 bnez a5,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53901 + c001dfc6: 00251793 slli a5,a0,0x2 + c001dfca: 97ba add a5,a5,a4 + c001dfcc: 0007a787 flw fa5,0(a5) + c001dfd0: a0e7a7d3 feq.s a5,fa5,fa4 + c001dfd4: ec0799e3 bnez a5,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53909 for (; k != stop; k += inc) { - c001de08: 0125053b addw a0,a0,s2 - c001de0c: ce2a sw a0,28(sp) - c001de0e: b7cd j c001ddf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53910 + c001dfd8: 0125053b addw a0,a0,s2 + c001dfdc: ce2a sw a0,28(sp) + c001dfde: b7cd j c001dfc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53918 if (is_bigint) - c001de10: d40692e3 bnez a3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53912 + c001dfe0: d40692e3 bnez a3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53920 if (isnan(d)) { - c001de14: 37a2 fld fa5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53831 + c001dfe4: 37a2 fld fa5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53839 pv = p->u.array.u.uint8_ptr; - c001de16: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53912 + c001dfe6: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53920 if (isnan(d)) { - c001de1a: a2f7a7d3 feq.d a5,fa5,fa5 - c001de1e: ef95 bnez a5,c001de5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53915 + c001dfea: a2f7a7d3 feq.d a5,fa5,fa5 + c001dfee: ef95 bnez a5,c001e02a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53923 if (special != special_includes) - c001de20: 57fd li a5,-1 - c001de22: dcf496e3 bne s1,a5,c001dbee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53917 (discriminator 1) + c001dff0: 57fd li a5,-1 + c001dff2: dcf496e3 bne s1,a5,c001ddbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53925 (discriminator 1) for (; k != stop; k += inc) { - c001de26: 4572 lw a0,28(sp) - c001de28: f9350be3 beq a0,s3,c001ddbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53918 + c001dff6: 4572 lw a0,28(sp) + c001dff8: f9350be3 beq a0,s3,c001df8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53926 if (isnan(pv[k])) { - c001de2c: 00351793 slli a5,a0,0x3 - c001de30: 97ba add a5,a5,a4 - c001de32: 239c fld fa5,0(a5) - c001de34: a2f7a7d3 feq.d a5,fa5,fa5 - c001de38: d4078be3 beqz a5,c001db8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53917 + c001dffc: 00351793 slli a5,a0,0x3 + c001e000: 97ba add a5,a5,a4 + c001e002: 239c fld fa5,0(a5) + c001e004: a2f7a7d3 feq.d a5,fa5,fa5 + c001e008: d4078be3 beqz a5,c001dd5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53925 for (; k != stop; k += inc) { - c001de3c: 0125053b addw a0,a0,s2 - c001de40: ce2a sw a0,28(sp) - c001de42: b7d5 j c001de26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53926 + c001e00c: 0125053b addw a0,a0,s2 + c001e010: ce2a sw a0,28(sp) + c001e012: b7d5 j c001dff6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53934 if (pv[k] == d) { - c001de44: 00351793 slli a5,a0,0x3 - c001de48: 97ba add a5,a5,a4 - c001de4a: 2398 fld fa4,0(a5) - c001de4c: a2e7a7d3 feq.d a5,fa5,fa4 - c001de50: e80793e3 bnez a5,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53925 + c001e014: 00351793 slli a5,a0,0x3 + c001e018: 97ba add a5,a5,a4 + c001e01a: 2398 fld fa4,0(a5) + c001e01c: a2e7a7d3 feq.d a5,fa5,fa4 + c001e020: e80793e3 bnez a5,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53933 for (; k != stop; k += inc) { - c001de54: 0125053b addw a0,a0,s2 - c001de58: ce2a sw a0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53925 (discriminator 1) - c001de5a: 4572 lw a0,28(sp) - c001de5c: ff3514e3 bne a0,s3,c001de44 - c001de60: b9d5 j c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53941 + c001e024: 0125053b addw a0,a0,s2 + c001e028: ce2a sw a0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53933 (discriminator 1) + c001e02a: 4572 lw a0,28(sp) + c001e02c: ff3514e3 bne a0,s3,c001e014 + c001e030: b9d5 j c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53949 if (is_bigint || (is_math_mode(ctx) && is_int && - c001de62: ce0689e3 beqz a3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53946 + c001e032: ce0689e3 beqz a3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53954 pv = p->u.array.u.uint64_ptr; - c001de66: 038ab703 ld a4,56(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53947 + c001e036: 038ab703 ld a4,56(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53955 v = v64; - c001de6a: 7682 ld a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53948 (discriminator 1) + c001e03a: 7682 ld a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53956 (discriminator 1) for (; k != stop; k += inc) { - c001de6c: 4572 lw a0,28(sp) - c001de6e: cf3503e3 beq a0,s3,c001db54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53949 + c001e03c: 4572 lw a0,28(sp) + c001e03e: cf3503e3 beq a0,s3,c001dd24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53957 if (pv[k] == v) { - c001de72: 00351793 slli a5,a0,0x3 - c001de76: 97ba add a5,a5,a4 - c001de78: 639c ld a5,0(a5) - c001de7a: e4d78ee3 beq a5,a3,c001dcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53948 + c001e042: 00351793 slli a5,a0,0x3 + c001e046: 97ba add a5,a5,a4 + c001e048: 639c ld a5,0(a5) + c001e04a: e4d78ee3 beq a5,a3,c001dea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53956 for (; k != stop; k += inc) { - c001de7e: 0125053b addw a0,a0,s2 - c001de82: ce2a sw a0,28(sp) - c001de84: b7e5 j c001de6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53965 + c001e04e: 0125053b addw a0,a0,s2 + c001e052: ce2a sw a0,28(sp) + c001e054: b7e5 j c001e03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53973 return JS_EXCEPTION; - c001de86: f802 sd zero,48(sp) - c001de88: 4799 li a5,6 - c001de8a: bb19 j c001dba0 + c001e056: f802 sd zero,48(sp) + c001e058: 4799 li a5,6 + c001e05a: bb19 j c001dd70 -00000000c001de8c : +00000000c001e05c : js_typed_array_copyWithin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53554 { - c001de8c: 711d addi sp,sp,-96 - c001de8e: e4a6 sd s1,72(sp) - c001de90: e0ca sd s2,64(sp) - c001de92: fc4e sd s3,56(sp) - c001de94: ec86 sd ra,88(sp) - c001de96: e8a2 sd s0,80(sp) - c001de98: 892a mv s2,a0 - c001de9a: e02e sd a1,0(sp) - c001de9c: e432 sd a2,8(sp) - c001de9e: 89b6 mv s3,a3 - c001dea0: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53550 + c001e05c: 711d addi sp,sp,-96 + c001e05e: e4a6 sd s1,72(sp) + c001e060: e0ca sd s2,64(sp) + c001e062: fc4e sd s3,56(sp) + c001e064: ec86 sd ra,88(sp) + c001e066: e8a2 sd s0,80(sp) + c001e068: 892a mv s2,a0 + c001e06a: e02e sd a1,0(sp) + c001e06c: e432 sd a2,8(sp) + c001e06e: 89b6 mv s3,a3 + c001e070: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53558 len = js_typed_array_get_length_internal(ctx, this_val); - c001dea2: 974f60ef jal ra,c0014016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53551 + c001e072: 892f60ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53559 if (len < 0) - c001dea6: 00055e63 bgez a0,c001dec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53552 + c001e076: 00055e63 bgez a0,c001e092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53560 return JS_EXCEPTION; - c001deaa: 4799 li a5,6 - c001deac: f002 sd zero,32(sp) - c001deae: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53577 (discriminator 1) -} - c001deb0: 60e6 ld ra,88(sp) - c001deb2: 6446 ld s0,80(sp) - c001deb4: 7502 ld a0,32(sp) - c001deb6: 75a2 ld a1,40(sp) - c001deb8: 64a6 ld s1,72(sp) - c001deba: 6906 ld s2,64(sp) - c001debc: 79e2 ld s3,56(sp) - c001debe: 6125 addi sp,sp,96 - c001dec0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53554 + c001e07a: 4799 li a5,6 + c001e07c: f002 sd zero,32(sp) + c001e07e: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53585 (discriminator 1) +} + c001e080: 60e6 ld ra,88(sp) + c001e082: 6446 ld s0,80(sp) + c001e084: 7502 ld a0,32(sp) + c001e086: 75a2 ld a1,40(sp) + c001e088: 64a6 ld s1,72(sp) + c001e08a: 6906 ld s2,64(sp) + c001e08c: 79e2 ld s3,56(sp) + c001e08e: 6125 addi sp,sp,96 + c001e090: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53562 if (JS_ToInt32Clamp(ctx, &to, argv[0], 0, len, len)) - c001dec2: 6090 ld a2,0(s1) - c001dec4: 6494 ld a3,8(s1) - c001dec6: 842a mv s0,a0 - c001dec8: 882a mv a6,a0 - c001deca: 87aa mv a5,a0 - c001decc: 4701 li a4,0 - c001dece: 084c addi a1,sp,20 - c001ded0: 854a mv a0,s2 - c001ded2: bfbff0ef jal ra,c001dacc - c001ded6: f971 bnez a0,c001deaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53557 + c001e092: 6090 ld a2,0(s1) + c001e094: 6494 ld a3,8(s1) + c001e096: 842a mv s0,a0 + c001e098: 882a mv a6,a0 + c001e09a: 87aa mv a5,a0 + c001e09c: 4701 li a4,0 + c001e09e: 084c addi a1,sp,20 + c001e0a0: 854a mv a0,s2 + c001e0a2: bfbff0ef jal ra,c001dc9c + c001e0a6: f971 bnez a0,c001e07a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53565 if (JS_ToInt32Clamp(ctx, &from, argv[1], 0, len, len)) - c001ded8: 6890 ld a2,16(s1) - c001deda: 6c94 ld a3,24(s1) - c001dedc: 8822 mv a6,s0 - c001dede: 87a2 mv a5,s0 - c001dee0: 4701 li a4,0 - c001dee2: 082c addi a1,sp,24 - c001dee4: 854a mv a0,s2 - c001dee6: be7ff0ef jal ra,c001dacc - c001deea: f161 bnez a0,c001deaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53560 + c001e0a8: 6890 ld a2,16(s1) + c001e0aa: 6c94 ld a3,24(s1) + c001e0ac: 8822 mv a6,s0 + c001e0ae: 87a2 mv a5,s0 + c001e0b0: 4701 li a4,0 + c001e0b2: 082c addi a1,sp,24 + c001e0b4: 854a mv a0,s2 + c001e0b6: be7ff0ef jal ra,c001dc9c + c001e0ba: f161 bnez a0,c001e07a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53568 final = len; - c001deec: ce22 sw s0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53561 + c001e0bc: ce22 sw s0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53569 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c001deee: 4789 li a5,2 - c001def0: 0337d163 bge a5,s3,c001df12 + c001e0be: 4789 li a5,2 + c001e0c0: 0337d163 bge a5,s3,c001e0e2 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001def4: 7494 ld a3,40(s1) + c001e0c4: 7494 ld a3,40(s1) js_typed_array_copyWithin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53561 (discriminator 1) - c001def6: 478d li a5,3 - c001def8: 0006871b sext.w a4,a3 - c001defc: 00f70b63 beq a4,a5,c001df12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53569 (discriminator 1) + c001e0c6: 478d li a5,3 + c001e0c8: 0006871b sext.w a4,a3 + c001e0cc: 00f70b63 beq a4,a5,c001e0e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53570 if (JS_ToInt32Clamp(ctx, &final, argv[2], 0, len, len)) - c001df00: 7090 ld a2,32(s1) - c001df02: 8822 mv a6,s0 - c001df04: 87a2 mv a5,s0 - c001df06: 4701 li a4,0 - c001df08: 086c addi a1,sp,28 - c001df0a: 854a mv a0,s2 - c001df0c: bc1ff0ef jal ra,c001dacc - c001df10: fd49 bnez a0,c001deaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53566 + c001e0d0: 7090 ld a2,32(s1) + c001e0d2: 8822 mv a6,s0 + c001e0d4: 87a2 mv a5,s0 + c001e0d6: 4701 li a4,0 + c001e0d8: 086c addi a1,sp,28 + c001e0da: 854a mv a0,s2 + c001e0dc: bc1ff0ef jal ra,c001dc9c + c001e0e0: fd49 bnez a0,c001e07a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53574 count = min_int(final - from, len - to); - c001df12: 4672 lw a2,28(sp) - c001df14: 45e2 lw a1,24(sp) - c001df16: 47d2 lw a5,20(sp) + c001e0e2: 4672 lw a2,28(sp) + c001e0e4: 45e2 lw a1,24(sp) + c001e0e6: 47d2 lw a5,20(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 - c001df18: 40b606bb subw a3,a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53566 - c001df1c: 40f4073b subw a4,s0,a5 - c001df20: 8636 mv a2,a3 - c001df22: 00d75463 bge a4,a3,c001df2a - c001df26: 0007061b sext.w a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53567 + c001e0e8: 40b606bb subw a3,a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53574 + c001e0ec: 40f4073b subw a4,s0,a5 + c001e0f0: 8636 mv a2,a3 + c001e0f2: 00d75463 bge a4,a3,c001e0fa + c001e0f6: 0007061b sext.w a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53575 if (count > 0) { - c001df2a: 04c05563 blez a2,c001df74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53568 + c001e0fa: 04c05563 blez a2,c001e144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53576 p = JS_VALUE_GET_OBJ(this_val); - c001df2e: 6682 ld a3,0(sp) + c001e0fe: 6682 ld a3,0(sp) typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001df30: 7a98 ld a4,48(a3) - c001df32: 6f18 ld a4,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c001e100: 7a98 ld a4,48(a3) + c001e102: 6f18 ld a4,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c001df34: 7b18 ld a4,48(a4) + c001e104: 7b18 ld a4,48(a4) js_typed_array_copyWithin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53569 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53577 if (typed_array_is_detached(ctx, p)) - c001df36: 00474703 lbu a4,4(a4) - c001df3a: c719 beqz a4,c001df48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53570 + c001e106: 00474703 lbu a4,4(a4) + c001e10a: c719 beqz a4,c001e118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53578 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001df3c: 854a mv a0,s2 - c001df3e: d95f50ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53576 + c001e10c: 854a mv a0,s2 + c001e10e: cb3f50ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53584 return JS_DupValue(ctx, this_val); - c001df42: f02a sd a0,32(sp) - c001df44: f42e sd a1,40(sp) - c001df46: b7ad j c001deb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53571 + c001e112: f02a sd a0,32(sp) + c001e114: f42e sd a1,40(sp) + c001e116: b7ad j c001e080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53579 shift = typed_array_size_log2(p->class_id); - c001df48: 0066d703 lhu a4,6(a3) - c001df4c: feb7051b addiw a0,a4,-21 - c001df50: 00049717 auipc a4,0x49 - c001df54: fe870713 addi a4,a4,-24 # c0066f38 - c001df58: 972a add a4,a4,a0 - c001df5a: 00074703 lbu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53572 + c001e118: 0066d703 lhu a4,6(a3) + c001e11c: feb7051b addiw a0,a4,-21 + c001e120: 00049717 auipc a4,0x49 + c001e124: 07870713 addi a4,a4,120 # c0067198 + c001e128: 972a add a4,a4,a0 + c001e12a: 00074703 lbu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53580 memmove(p->u.array.u.uint8_ptr + (to << shift), - c001df5e: 7e88 ld a0,56(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53573 + c001e12e: 7e88 ld a0,56(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53581 p->u.array.u.uint8_ptr + (from << shift), - c001df60: 00e595bb sllw a1,a1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53572 + c001e130: 00e595bb sllw a1,a1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53580 memmove(p->u.array.u.uint8_ptr + (to << shift), - c001df64: 00e797bb sllw a5,a5,a4 - c001df68: 95aa add a1,a1,a0 - c001df6a: 00e6163b sllw a2,a2,a4 - c001df6e: 953e add a0,a0,a5 - c001df70: 0bf380ef jal ra,c005682e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53576 + c001e134: 00e797bb sllw a5,a5,a4 + c001e138: 95aa add a1,a1,a0 + c001e13a: 00e6163b sllw a2,a2,a4 + c001e13e: 953e add a0,a0,a5 + c001e140: 0bf380ef jal ra,c00569fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53584 return JS_DupValue(ctx, this_val); - c001df74: 6502 ld a0,0(sp) - c001df76: 65a2 ld a1,8(sp) - c001df78: ef6e80ef jal ra,c000666e - c001df7c: b7d9 j c001df42 + c001e144: 6502 ld a0,0(sp) + c001e146: 65a2 ld a1,8(sp) + c001e148: e14e80ef jal ra,c000675c + c001e14c: b7d9 j c001e112 -00000000c001df7e : +00000000c001e14e : js_string_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42320 -{ - c001df7e: 7119 addi sp,sp,-128 - c001df80: f8a2 sd s0,112(sp) - c001df82: f4a6 sd s1,104(sp) - c001df84: f0ca sd s2,96(sp) - c001df86: fc86 sd ra,120(sp) - c001df88: 893a mv s2,a4 - c001df8a: 842a mv s0,a0 - c001df8c: e82e sd a1,16(sp) - c001df8e: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42325 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42328 +{ + c001e14e: 7119 addi sp,sp,-128 + c001e150: f8a2 sd s0,112(sp) + c001e152: f4a6 sd s1,104(sp) + c001e154: f0ca sd s2,96(sp) + c001e156: fc86 sd ra,120(sp) + c001e158: 893a mv s2,a4 + c001e15a: 842a mv s0,a0 + c001e15c: e82e sd a1,16(sp) + c001e15e: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42333 str = JS_ToStringCheckObject(ctx, this_val); - c001df90: f1dfc0ef jal ra,c001aeac - c001df94: f82a sd a0,48(sp) - c001df96: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42326 + c001e160: f1dfc0ef jal ra,c001b07c + c001e164: f82a sd a0,48(sp) + c001e166: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42334 if (JS_IsException(str)) - c001df98: 0005871b sext.w a4,a1 - c001df9c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42325 + c001e168: 0005871b sext.w a4,a1 + c001e16c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42333 str = JS_ToStringCheckObject(ctx, this_val); - c001df9e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42326 + c001e16e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42334 if (JS_IsException(str)) - c001dfa0: 00f71c63 bne a4,a5,c001dfb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42327 + c001e170: 00f71c63 bne a4,a5,c001e188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42335 return str; - c001dfa4: e8aa sd a0,80(sp) - c001dfa6: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42344 (discriminator 1) -} - c001dfa8: 70e6 ld ra,120(sp) - c001dfaa: 7446 ld s0,112(sp) - c001dfac: 6546 ld a0,80(sp) - c001dfae: 65e6 ld a1,88(sp) - c001dfb0: 74a6 ld s1,104(sp) - c001dfb2: 7906 ld s2,96(sp) - c001dfb4: 6109 addi sp,sp,128 - c001dfb6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42329 + c001e174: e8aa sd a0,80(sp) + c001e176: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42352 (discriminator 1) +} + c001e178: 70e6 ld ra,120(sp) + c001e17a: 7446 ld s0,112(sp) + c001e17c: 6546 ld a0,80(sp) + c001e17e: 65e6 ld a1,88(sp) + c001e180: 74a6 ld s1,104(sp) + c001e182: 7906 ld s2,96(sp) + c001e184: 6109 addi sp,sp,128 + c001e186: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42337 len = p->len; - c001dfb8: 00452803 lw a6,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42330 + c001e188: 00452803 lw a6,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42338 if (JS_ToInt32Clamp(ctx, &start, argv[0], 0, len, len)) { - c001dfbc: 00093603 ld a2,0(s2) - c001dfc0: 00893683 ld a3,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42329 + c001e18c: 00093603 ld a2,0(s2) + c001e190: 00893683 ld a3,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42337 len = p->len; - c001dfc4: 1806 slli a6,a6,0x21 - c001dfc6: 02185813 srli a6,a6,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42330 + c001e194: 1806 slli a6,a6,0x21 + c001e196: 02185813 srli a6,a6,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42338 if (JS_ToInt32Clamp(ctx, &start, argv[0], 0, len, len)) { - c001dfca: 87c2 mv a5,a6 - c001dfcc: 4701 li a4,0 - c001dfce: 102c addi a1,sp,40 - c001dfd0: 8522 mv a0,s0 - c001dfd2: e442 sd a6,8(sp) - c001dfd4: af9ff0ef jal ra,c001dacc - c001dfd8: 6822 ld a6,8(sp) - c001dfda: c911 beqz a0,c001dfee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42331 + c001e19a: 87c2 mv a5,a6 + c001e19c: 4701 li a4,0 + c001e19e: 102c addi a1,sp,40 + c001e1a0: 8522 mv a0,s0 + c001e1a2: e442 sd a6,8(sp) + c001e1a4: af9ff0ef jal ra,c001dc9c + c001e1a8: 6822 ld a6,8(sp) + c001e1aa: c911 beqz a0,c001e1be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42339 JS_FreeValue(ctx, str); - c001dfdc: 75c2 ld a1,48(sp) - c001dfde: 7662 ld a2,56(sp) - c001dfe0: 8522 mv a0,s0 - c001dfe2: b57e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42332 + c001e1ac: 75c2 ld a1,48(sp) + c001e1ae: 7662 ld a2,56(sp) + c001e1b0: 8522 mv a0,s0 + c001e1b2: a75e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42340 return JS_EXCEPTION; - c001dfe6: 4799 li a5,6 - c001dfe8: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42343 + c001e1b6: 4799 li a5,6 + c001e1b8: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42351 return ret; - c001dfea: ecbe sd a5,88(sp) - c001dfec: bf75 j c001dfa8 + c001e1ba: ecbe sd a5,88(sp) + c001e1bc: bf75 j c001e178 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 - c001dfee: 01893683 ld a3,24(s2) + c001e1be: 01893683 ld a3,24(s2) js_string_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42334 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42342 end = len; - c001dff2: d642 sw a6,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42335 + c001e1c2: d642 sw a6,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42343 if (!JS_IsUndefined(argv[1])) { - c001dff4: 478d li a5,3 - c001dff6: 0006871b sext.w a4,a3 - c001dffa: 00f70b63 beq a4,a5,c001e010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42336 + c001e1c4: 478d li a5,3 + c001e1c6: 0006871b sext.w a4,a3 + c001e1ca: 00f70b63 beq a4,a5,c001e1e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42344 if (JS_ToInt32Clamp(ctx, &end, argv[1], 0, len, len)) { - c001dffe: 01093603 ld a2,16(s2) - c001e002: 87c2 mv a5,a6 - c001e004: 4701 li a4,0 - c001e006: 106c addi a1,sp,44 - c001e008: 8522 mv a0,s0 - c001e00a: ac3ff0ef jal ra,c001dacc - c001e00e: f579 bnez a0,c001dfdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42341 + c001e1ce: 01093603 ld a2,16(s2) + c001e1d2: 87c2 mv a5,a6 + c001e1d4: 4701 li a4,0 + c001e1d6: 106c addi a1,sp,44 + c001e1d8: 8522 mv a0,s0 + c001e1da: ac3ff0ef jal ra,c001dc9c + c001e1de: f579 bnez a0,c001e1ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42349 ret = js_sub_string(ctx, p, start, max_int(end, start)); - c001e010: 56b2 lw a3,44(sp) - c001e012: 5622 lw a2,40(sp) - c001e014: 0006879b sext.w a5,a3 - c001e018: 00c7d363 bge a5,a2,c001e01e - c001e01c: 86b2 mv a3,a2 - c001e01e: 2681 sext.w a3,a3 - c001e020: 85a6 mv a1,s1 - c001e022: 8522 mv a0,s0 - c001e024: 954fc0ef jal ra,c001a178 - c001e028: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42342 + c001e1e0: 56b2 lw a3,44(sp) + c001e1e2: 5622 lw a2,40(sp) + c001e1e4: 0006879b sext.w a5,a3 + c001e1e8: 00c7d363 bge a5,a2,c001e1ee + c001e1ec: 86b2 mv a3,a2 + c001e1ee: 2681 sext.w a3,a3 + c001e1f0: 85a6 mv a1,s1 + c001e1f2: 8522 mv a0,s0 + c001e1f4: 954fc0ef jal ra,c001a348 + c001e1f8: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42350 JS_FreeValue(ctx, str); - c001e02a: 7662 ld a2,56(sp) - c001e02c: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42341 + c001e1fa: 7662 ld a2,56(sp) + c001e1fc: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42349 ret = js_sub_string(ctx, p, start, max_int(end, start)); - c001e02e: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42342 + c001e1fe: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42350 JS_FreeValue(ctx, str); - c001e030: 8522 mv a0,s0 - c001e032: b07e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42343 + c001e200: 8522 mv a0,s0 + c001e202: a25e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42351 return ret; - c001e036: 6786 ld a5,64(sp) - c001e038: e8be sd a5,80(sp) - c001e03a: 67a6 ld a5,72(sp) - c001e03c: b77d j c001dfea + c001e206: 6786 ld a5,64(sp) + c001e208: e8be sd a5,80(sp) + c001e20a: 67a6 ld a5,72(sp) + c001e20c: b77d j c001e1ba -00000000c001e03e : +00000000c001e20e : js_string_substr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42292 -{ - c001e03e: 7119 addi sp,sp,-128 - c001e040: f4a6 sd s1,104(sp) - c001e042: f0ca sd s2,96(sp) - c001e044: ecce sd s3,88(sp) - c001e046: fc86 sd ra,120(sp) - c001e048: 89ba mv s3,a4 - c001e04a: f8a2 sd s0,112(sp) - c001e04c: 84aa mv s1,a0 - c001e04e: e02e sd a1,0(sp) - c001e050: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42300 +{ + c001e20e: 7119 addi sp,sp,-128 + c001e210: f4a6 sd s1,104(sp) + c001e212: f0ca sd s2,96(sp) + c001e214: ecce sd s3,88(sp) + c001e216: fc86 sd ra,120(sp) + c001e218: 89ba mv s3,a4 + c001e21a: f8a2 sd s0,112(sp) + c001e21c: 84aa mv s1,a0 + c001e21e: e02e sd a1,0(sp) + c001e220: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42305 str = JS_ToStringCheckObject(ctx, this_val); - c001e052: e5bfc0ef jal ra,c001aeac - c001e056: f02a sd a0,32(sp) - c001e058: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42298 + c001e222: e5bfc0ef jal ra,c001b07c + c001e226: f02a sd a0,32(sp) + c001e228: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42306 if (JS_IsException(str)) - c001e05a: 0005871b sext.w a4,a1 - c001e05e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42297 + c001e22a: 0005871b sext.w a4,a1 + c001e22e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42305 str = JS_ToStringCheckObject(ctx, this_val); - c001e060: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42298 + c001e230: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42306 if (JS_IsException(str)) - c001e062: 00f71d63 bne a4,a5,c001e07c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42299 + c001e232: 00f71d63 bne a4,a5,c001e24c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42307 return str; - c001e066: e0aa sd a0,64(sp) - c001e068: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42316 (discriminator 1) -} - c001e06a: 70e6 ld ra,120(sp) - c001e06c: 7446 ld s0,112(sp) - c001e06e: 6506 ld a0,64(sp) - c001e070: 65a6 ld a1,72(sp) - c001e072: 74a6 ld s1,104(sp) - c001e074: 7906 ld s2,96(sp) - c001e076: 69e6 ld s3,88(sp) - c001e078: 6109 addi sp,sp,128 - c001e07a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42301 + c001e236: e0aa sd a0,64(sp) + c001e238: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42324 (discriminator 1) +} + c001e23a: 70e6 ld ra,120(sp) + c001e23c: 7446 ld s0,112(sp) + c001e23e: 6506 ld a0,64(sp) + c001e240: 65a6 ld a1,72(sp) + c001e242: 74a6 ld s1,104(sp) + c001e244: 7906 ld s2,96(sp) + c001e246: 69e6 ld s3,88(sp) + c001e248: 6109 addi sp,sp,128 + c001e24a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42309 len = p->len; - c001e07c: 4140 lw s0,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42302 + c001e24c: 4140 lw s0,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42310 if (JS_ToInt32Clamp(ctx, &a, argv[0], 0, len, len)) { - c001e07e: 0009b603 ld a2,0(s3) - c001e082: 0089b683 ld a3,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42301 + c001e24e: 0009b603 ld a2,0(s3) + c001e252: 0089b683 ld a3,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42309 len = p->len; - c001e086: 1406 slli s0,s0,0x21 - c001e088: 9005 srli s0,s0,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42302 + c001e256: 1406 slli s0,s0,0x21 + c001e258: 9005 srli s0,s0,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42310 if (JS_ToInt32Clamp(ctx, &a, argv[0], 0, len, len)) { - c001e08a: 8822 mv a6,s0 - c001e08c: 87a2 mv a5,s0 - c001e08e: 4701 li a4,0 - c001e090: 082c addi a1,sp,24 - c001e092: 8526 mv a0,s1 - c001e094: a39ff0ef jal ra,c001dacc - c001e098: c911 beqz a0,c001e0ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42303 + c001e25a: 8822 mv a6,s0 + c001e25c: 87a2 mv a5,s0 + c001e25e: 4701 li a4,0 + c001e260: 082c addi a1,sp,24 + c001e262: 8526 mv a0,s1 + c001e264: a39ff0ef jal ra,c001dc9c + c001e268: c911 beqz a0,c001e27c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42311 JS_FreeValue(ctx, str); - c001e09a: 7582 ld a1,32(sp) - c001e09c: 7622 ld a2,40(sp) - c001e09e: 8526 mv a0,s1 - c001e0a0: a99e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42304 + c001e26a: 7582 ld a1,32(sp) + c001e26c: 7622 ld a2,40(sp) + c001e26e: 8526 mv a0,s1 + c001e270: 9b7e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42312 return JS_EXCEPTION; - c001e0a4: 4799 li a5,6 - c001e0a6: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42315 + c001e274: 4799 li a5,6 + c001e276: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42323 return ret; - c001e0a8: e4be sd a5,72(sp) - c001e0aa: b7c1 j c001e06a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42306 + c001e278: e4be sd a5,72(sp) + c001e27a: b7c1 j c001e23a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42314 n = len - a; - c001e0ac: 47e2 lw a5,24(sp) + c001e27c: 47e2 lw a5,24(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 - c001e0ae: 0189b683 ld a3,24(s3) + c001e27e: 0189b683 ld a3,24(s3) js_string_substr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42315 if (!JS_IsUndefined(argv[1])) { - c001e0b2: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42306 + c001e282: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42314 n = len - a; - c001e0b4: 40f407bb subw a5,s0,a5 - c001e0b8: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42307 + c001e284: 40f407bb subw a5,s0,a5 + c001e288: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42315 if (!JS_IsUndefined(argv[1])) { - c001e0ba: 0006861b sext.w a2,a3 - c001e0be: 00e60b63 beq a2,a4,c001e0d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42308 + c001e28a: 0006861b sext.w a2,a3 + c001e28e: 00e60b63 beq a2,a4,c001e2a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42316 if (JS_ToInt32Clamp(ctx, &n, argv[1], 0, len - a, 0)) { - c001e0c2: 0109b603 ld a2,16(s3) - c001e0c6: 4801 li a6,0 - c001e0c8: 4701 li a4,0 - c001e0ca: 086c addi a1,sp,28 - c001e0cc: 8526 mv a0,s1 - c001e0ce: 9ffff0ef jal ra,c001dacc - c001e0d2: f561 bnez a0,c001e09a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42313 + c001e292: 0109b603 ld a2,16(s3) + c001e296: 4801 li a6,0 + c001e298: 4701 li a4,0 + c001e29a: 086c addi a1,sp,28 + c001e29c: 8526 mv a0,s1 + c001e29e: 9ffff0ef jal ra,c001dc9c + c001e2a2: f561 bnez a0,c001e26a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42321 ret = js_sub_string(ctx, p, a, a + n); - c001e0d4: 4662 lw a2,24(sp) - c001e0d6: 46f2 lw a3,28(sp) - c001e0d8: 85ca mv a1,s2 - c001e0da: 8526 mv a0,s1 - c001e0dc: 9eb1 addw a3,a3,a2 - c001e0de: 89afc0ef jal ra,c001a178 - c001e0e2: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42314 + c001e2a4: 4662 lw a2,24(sp) + c001e2a6: 46f2 lw a3,28(sp) + c001e2a8: 85ca mv a1,s2 + c001e2aa: 8526 mv a0,s1 + c001e2ac: 9eb1 addw a3,a3,a2 + c001e2ae: 89afc0ef jal ra,c001a348 + c001e2b2: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42322 JS_FreeValue(ctx, str); - c001e0e4: 7622 ld a2,40(sp) - c001e0e6: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42313 + c001e2b4: 7622 ld a2,40(sp) + c001e2b6: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42321 ret = js_sub_string(ctx, p, a, a + n); - c001e0e8: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42314 + c001e2b8: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42322 JS_FreeValue(ctx, str); - c001e0ea: 8526 mv a0,s1 - c001e0ec: a4de90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42315 + c001e2ba: 8526 mv a0,s1 + c001e2bc: 96be90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42323 return ret; - c001e0f0: 77c2 ld a5,48(sp) - c001e0f2: e0be sd a5,64(sp) - c001e0f4: 77e2 ld a5,56(sp) - c001e0f6: bf4d j c001e0a8 + c001e2c0: 77c2 ld a5,48(sp) + c001e2c2: e0be sd a5,64(sp) + c001e2c4: 77e2 ld a5,56(sp) + c001e2c6: bf4d j c001e278 -00000000c001e0f8 : +00000000c001e2c8 : js_string_substring(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42258 -{ - c001e0f8: 7119 addi sp,sp,-128 - c001e0fa: f8a2 sd s0,112(sp) - c001e0fc: f4a6 sd s1,104(sp) - c001e0fe: ecce sd s3,88(sp) - c001e100: fc86 sd ra,120(sp) - c001e102: 89ba mv s3,a4 - c001e104: f0ca sd s2,96(sp) - c001e106: 842a mv s0,a0 - c001e108: e02e sd a1,0(sp) - c001e10a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42266 +{ + c001e2c8: 7119 addi sp,sp,-128 + c001e2ca: f8a2 sd s0,112(sp) + c001e2cc: f4a6 sd s1,104(sp) + c001e2ce: ecce sd s3,88(sp) + c001e2d0: fc86 sd ra,120(sp) + c001e2d2: 89ba mv s3,a4 + c001e2d4: f0ca sd s2,96(sp) + c001e2d6: 842a mv s0,a0 + c001e2d8: e02e sd a1,0(sp) + c001e2da: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42271 str = JS_ToStringCheckObject(ctx, this_val); - c001e10c: da1fc0ef jal ra,c001aeac - c001e110: f02a sd a0,32(sp) - c001e112: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42264 + c001e2dc: da1fc0ef jal ra,c001b07c + c001e2e0: f02a sd a0,32(sp) + c001e2e2: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42272 if (JS_IsException(str)) - c001e114: 0005871b sext.w a4,a1 - c001e118: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42263 + c001e2e4: 0005871b sext.w a4,a1 + c001e2e8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42271 str = JS_ToStringCheckObject(ctx, this_val); - c001e11a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42264 + c001e2ea: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42272 if (JS_IsException(str)) - c001e11c: 00f71d63 bne a4,a5,c001e136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42265 + c001e2ec: 00f71d63 bne a4,a5,c001e306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42273 return str; - c001e120: e0aa sd a0,64(sp) - c001e122: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42288 (discriminator 1) -} - c001e124: 70e6 ld ra,120(sp) - c001e126: 7446 ld s0,112(sp) - c001e128: 6506 ld a0,64(sp) - c001e12a: 65a6 ld a1,72(sp) - c001e12c: 74a6 ld s1,104(sp) - c001e12e: 7906 ld s2,96(sp) - c001e130: 69e6 ld s3,88(sp) - c001e132: 6109 addi sp,sp,128 - c001e134: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42267 + c001e2f0: e0aa sd a0,64(sp) + c001e2f2: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42296 (discriminator 1) +} + c001e2f4: 70e6 ld ra,120(sp) + c001e2f6: 7446 ld s0,112(sp) + c001e2f8: 6506 ld a0,64(sp) + c001e2fa: 65a6 ld a1,72(sp) + c001e2fc: 74a6 ld s1,104(sp) + c001e2fe: 7906 ld s2,96(sp) + c001e300: 69e6 ld s3,88(sp) + c001e302: 6109 addi sp,sp,128 + c001e304: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42275 if (JS_ToInt32Clamp(ctx, &a, argv[0], 0, p->len, 0)) { - c001e136: 415c lw a5,4(a0) - c001e138: 80000937 lui s2,0x80000 - c001e13c: 0009b603 ld a2,0(s3) - c001e140: 0089b683 ld a3,8(s3) - c001e144: fff94913 not s2,s2 - c001e148: 4801 li a6,0 - c001e14a: 00f977b3 and a5,s2,a5 - c001e14e: 4701 li a4,0 - c001e150: 082c addi a1,sp,24 - c001e152: 8522 mv a0,s0 - c001e154: 979ff0ef jal ra,c001dacc - c001e158: c911 beqz a0,c001e16c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42268 + c001e306: 415c lw a5,4(a0) + c001e308: 80000937 lui s2,0x80000 + c001e30c: 0009b603 ld a2,0(s3) + c001e310: 0089b683 ld a3,8(s3) + c001e314: fff94913 not s2,s2 + c001e318: 4801 li a6,0 + c001e31a: 00f977b3 and a5,s2,a5 + c001e31e: 4701 li a4,0 + c001e320: 082c addi a1,sp,24 + c001e322: 8522 mv a0,s0 + c001e324: 979ff0ef jal ra,c001dc9c + c001e328: c911 beqz a0,c001e33c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42276 JS_FreeValue(ctx, str); - c001e15a: 7582 ld a1,32(sp) - c001e15c: 7622 ld a2,40(sp) - c001e15e: 8522 mv a0,s0 - c001e160: 9d9e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42269 + c001e32a: 7582 ld a1,32(sp) + c001e32c: 7622 ld a2,40(sp) + c001e32e: 8522 mv a0,s0 + c001e330: 8f7e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42277 return JS_EXCEPTION; - c001e164: 4799 li a5,6 - c001e166: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42287 + c001e334: 4799 li a5,6 + c001e336: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42295 return ret; - c001e168: e4be sd a5,72(sp) - c001e16a: bf6d j c001e124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42271 + c001e338: e4be sd a5,72(sp) + c001e33a: bf6d j c001e2f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42279 b = p->len; - c001e16c: 40dc lw a5,4(s1) + c001e33c: 40dc lw a5,4(s1) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 - c001e16e: 0189b683 ld a3,24(s3) + c001e33e: 0189b683 ld a3,24(s3) js_string_substring(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42280 if (!JS_IsUndefined(argv[1])) { - c001e172: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42271 + c001e342: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42279 b = p->len; - c001e174: 00f977b3 and a5,s2,a5 - c001e178: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42272 + c001e344: 00f977b3 and a5,s2,a5 + c001e348: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42280 if (!JS_IsUndefined(argv[1])) { - c001e17a: 0006861b sext.w a2,a3 - c001e17e: 00e60b63 beq a2,a4,c001e194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42273 + c001e34a: 0006861b sext.w a2,a3 + c001e34e: 00e60b63 beq a2,a4,c001e364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42281 if (JS_ToInt32Clamp(ctx, &b, argv[1], 0, p->len, 0)) { - c001e182: 0109b603 ld a2,16(s3) - c001e186: 4801 li a6,0 - c001e188: 4701 li a4,0 - c001e18a: 086c addi a1,sp,28 - c001e18c: 8522 mv a0,s0 - c001e18e: 93fff0ef jal ra,c001dacc - c001e192: f561 bnez a0,c001e15a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42278 + c001e352: 0109b603 ld a2,16(s3) + c001e356: 4801 li a6,0 + c001e358: 4701 li a4,0 + c001e35a: 086c addi a1,sp,28 + c001e35c: 8522 mv a0,s0 + c001e35e: 93fff0ef jal ra,c001dc9c + c001e362: f561 bnez a0,c001e32a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42286 if (a < b) { - c001e194: 4662 lw a2,24(sp) - c001e196: 46f2 lw a3,28(sp) - c001e198: 87b2 mv a5,a2 - c001e19a: 00d64463 blt a2,a3,c001e1a2 - c001e19e: 8636 mv a2,a3 - c001e1a0: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42285 + c001e364: 4662 lw a2,24(sp) + c001e366: 46f2 lw a3,28(sp) + c001e368: 87b2 mv a5,a2 + c001e36a: 00d64463 blt a2,a3,c001e372 + c001e36e: 8636 mv a2,a3 + c001e370: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42293 ret = js_sub_string(ctx, p, start, end); - c001e1a2: 85a6 mv a1,s1 - c001e1a4: 8522 mv a0,s0 - c001e1a6: fd3fb0ef jal ra,c001a178 - c001e1aa: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42286 + c001e372: 85a6 mv a1,s1 + c001e374: 8522 mv a0,s0 + c001e376: fd3fb0ef jal ra,c001a348 + c001e37a: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42294 JS_FreeValue(ctx, str); - c001e1ac: 7622 ld a2,40(sp) - c001e1ae: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42285 + c001e37c: 7622 ld a2,40(sp) + c001e37e: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42293 ret = js_sub_string(ctx, p, start, end); - c001e1b0: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42286 + c001e380: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42294 JS_FreeValue(ctx, str); - c001e1b2: 8522 mv a0,s0 - c001e1b4: 985e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42287 + c001e382: 8522 mv a0,s0 + c001e384: 8a3e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42295 return ret; - c001e1b8: 77c2 ld a5,48(sp) - c001e1ba: e0be sd a5,64(sp) - c001e1bc: 77e2 ld a5,56(sp) - c001e1be: b76d j c001e168 + c001e388: 77c2 ld a5,48(sp) + c001e38a: e0be sd a5,64(sp) + c001e38c: 77e2 ld a5,56(sp) + c001e38e: b76d j c001e338 -00000000c001e1c0 : +00000000c001e390 : JS_ToInt64SatFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10843 -{ - c001e1c0: 7139 addi sp,sp,-64 - c001e1c2: f822 sd s0,48(sp) - c001e1c4: f426 sd s1,40(sp) - c001e1c6: f04a sd s2,32(sp) - c001e1c8: ec4e sd s3,24(sp) - c001e1ca: e852 sd s4,16(sp) - c001e1cc: e032 sd a2,0(sp) - c001e1ce: fc06 sd ra,56(sp) - c001e1d0: 892a mv s2,a0 - c001e1d2: 842e mv s0,a1 - c001e1d4: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10851 +{ + c001e390: 7139 addi sp,sp,-64 + c001e392: f822 sd s0,48(sp) + c001e394: f426 sd s1,40(sp) + c001e396: f04a sd s2,32(sp) + c001e398: ec4e sd s3,24(sp) + c001e39a: e852 sd s4,16(sp) + c001e39c: e032 sd a2,0(sp) + c001e39e: fc06 sd ra,56(sp) + c001e3a0: 892a mv s2,a0 + c001e3a2: 842e mv s0,a1 + c001e3a4: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10856 switch(tag) { - c001e1d6: 4499 li s1,6 - c001e1d8: 499d li s3,7 - c001e1da: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10847 + c001e3a6: 4499 li s1,6 + c001e3a8: 499d li s3,7 + c001e3aa: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10855 tag = JS_VALUE_GET_NORM_TAG(val); - c001e1dc: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10848 + c001e3ac: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10856 switch(tag) { - c001e1e0: 02978063 beq a5,s1,c001e200 - c001e1e4: 02f4e263 bltu s1,a5,c001e208 - c001e1e8: 04fa7163 bgeu s4,a5,c001e22a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10883 + c001e3b0: 02978063 beq a5,s1,c001e3d0 + c001e3b4: 02f4e263 bltu s1,a5,c001e3d8 + c001e3b8: 04fa7163 bgeu s4,a5,c001e3fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10891 val = JS_ToNumberFree(ctx, val); - c001e1ec: 6582 ld a1,0(sp) - c001e1ee: 854a mv a0,s2 - c001e1f0: 87afe0ef jal ra,c001c26a - c001e1f4: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10884 + c001e3bc: 6582 ld a1,0(sp) + c001e3be: 854a mv a0,s2 + c001e3c0: 87afe0ef jal ra,c001c43a + c001e3c4: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10892 if (JS_IsException(val)) { - c001e1f6: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10883 + c001e3c6: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10891 val = JS_ToNumberFree(ctx, val); - c001e1fa: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10884 + c001e3ca: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10892 if (JS_IsException(val)) { - c001e1fc: fe9790e3 bne a5,s1,c001e1dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10885 + c001e3cc: fe9790e3 bne a5,s1,c001e3ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10893 *pres = 0; - c001e200: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10886 + c001e3d0: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10894 return -1; - c001e204: 557d li a0,-1 - c001e206: a811 j c001e21a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10848 + c001e3d4: 557d li a0,-1 + c001e3d6: a811 j c001e3ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10856 switch(tag) { - c001e208: ff3792e3 bne a5,s3,c001e1ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10860 + c001e3d8: ff3792e3 bne a5,s3,c001e3bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10868 double d = JS_VALUE_GET_FLOAT64(val); - c001e20c: 2782 fld fa5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10861 + c001e3dc: 2782 fld fa5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10869 if (isnan(d)) { - c001e20e: a2f7a7d3 feq.d a5,fa5,fa5 - c001e212: ef99 bnez a5,c001e230 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10862 + c001e3de: a2f7a7d3 feq.d a5,fa5,fa5 + c001e3e2: ef99 bnez a5,c001e400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10870 *pres = 0; - c001e214: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10872 + c001e3e4: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10880 return 0; - c001e218: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10890 -} - c001e21a: 70e2 ld ra,56(sp) - c001e21c: 7442 ld s0,48(sp) - c001e21e: 74a2 ld s1,40(sp) - c001e220: 7902 ld s2,32(sp) - c001e222: 69e2 ld s3,24(sp) - c001e224: 6a42 ld s4,16(sp) - c001e226: 6121 addi sp,sp,64 - c001e228: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10853 + c001e3e8: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10898 +} + c001e3ea: 70e2 ld ra,56(sp) + c001e3ec: 7442 ld s0,48(sp) + c001e3ee: 74a2 ld s1,40(sp) + c001e3f0: 7902 ld s2,32(sp) + c001e3f2: 69e2 ld s3,24(sp) + c001e3f4: 6a42 ld s4,16(sp) + c001e3f6: 6121 addi sp,sp,64 + c001e3f8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10861 *pres = JS_VALUE_GET_INT(val); - c001e22a: 4782 lw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10867 + c001e3fa: 4782 lw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10875 *pres = INT64_MAX; - c001e22c: e01c sd a5,0(s0) - c001e22e: b7ed j c001e218 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10864 + c001e3fc: e01c sd a5,0(s0) + c001e3fe: b7ed j c001e3e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10872 if (d < INT64_MIN) - c001e230: 00056797 auipc a5,0x56 - c001e234: 6107b707 fld fa4,1552(a5) # c0074840 <_erodata+0xc0> - c001e238: a2e797d3 flt.d a5,fa5,fa4 - c001e23c: c781 beqz a5,c001e244 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10865 + c001e400: 00056797 auipc a5,0x56 + c001e404: 6a07b707 fld fa4,1696(a5) # c0074aa0 <_erodata+0xc0> + c001e408: a2e797d3 flt.d a5,fa5,fa4 + c001e40c: c781 beqz a5,c001e414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10873 *pres = INT64_MIN; - c001e23e: 57fd li a5,-1 - c001e240: 17fe slli a5,a5,0x3f - c001e242: b7ed j c001e22c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10866 + c001e40e: 57fd li a5,-1 + c001e410: 17fe slli a5,a5,0x3f + c001e412: b7ed j c001e3fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10874 else if (d >= 0x1p63) /* must use INT64_MAX + 1 because INT64_MAX cannot be exactly represented as a double */ - c001e244: 00056797 auipc a5,0x56 - c001e248: 6047b707 fld fa4,1540(a5) # c0074848 <_erodata+0xc8> - c001e24c: a2f707d3 fle.d a5,fa4,fa5 - c001e250: c781 beqz a5,c001e258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10867 + c001e414: 00056797 auipc a5,0x56 + c001e418: 6947b707 fld fa4,1684(a5) # c0074aa8 <_erodata+0xc8> + c001e41c: a2f707d3 fle.d a5,fa4,fa5 + c001e420: c781 beqz a5,c001e428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10875 *pres = INT64_MAX; - c001e252: 57fd li a5,-1 - c001e254: 8385 srli a5,a5,0x1 - c001e256: bfd9 j c001e22c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10869 + c001e422: 57fd li a5,-1 + c001e424: 8385 srli a5,a5,0x1 + c001e426: bfd9 j c001e3fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10877 *pres = (int64_t)d; - c001e258: c22797d3 fcvt.l.d a5,fa5,rtz - c001e25c: bfc1 j c001e22c + c001e428: c22797d3 fcvt.l.d a5,fa5,rtz + c001e42c: bfc1 j c001e3fc -00000000c001e25e : +00000000c001e42e : JS_ToInt64Sat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10893 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10901 { - c001e25e: 7139 addi sp,sp,-64 - c001e260: f822 sd s0,48(sp) - c001e262: f426 sd s1,40(sp) - c001e264: 842a mv s0,a0 - c001e266: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10894 + c001e42e: 7139 addi sp,sp,-64 + c001e430: f822 sd s0,48(sp) + c001e432: f426 sd s1,40(sp) + c001e434: 842a mv s0,a0 + c001e436: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10902 return JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e268: 8532 mv a0,a2 - c001e26a: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10893 + c001e438: 8532 mv a0,a2 + c001e43a: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10901 { - c001e26c: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10894 + c001e43c: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10902 return JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e26e: c00e80ef jal ra,c000666e - c001e272: 862a mv a2,a0 - c001e274: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10895 + c001e43e: b1ee80ef jal ra,c000675c + c001e442: 862a mv a2,a0 + c001e444: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10903 } - c001e276: 7442 ld s0,48(sp) - c001e278: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10894 + c001e446: 7442 ld s0,48(sp) + c001e448: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10902 return JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e27a: 86ae mv a3,a1 - c001e27c: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10895 + c001e44a: 86ae mv a3,a1 + c001e44c: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10903 } - c001e27e: 74a2 ld s1,40(sp) - c001e280: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10894 + c001e44e: 74a2 ld s1,40(sp) + c001e450: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10902 return JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e282: f3fff06f j c001e1c0 + c001e452: f3fff06f j c001e390 -00000000c001e286 : +00000000c001e456 : JS_ToIndex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11213 { - c001e286: 7139 addi sp,sp,-64 - c001e288: f822 sd s0,48(sp) - c001e28a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11207 + c001e456: 7139 addi sp,sp,-64 + c001e458: f822 sd s0,48(sp) + c001e45a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11215 if (JS_ToInt64Sat(ctx, &v, val)) - c001e28c: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11205 + c001e45c: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11213 { - c001e28e: f426 sd s1,40(sp) - c001e290: fc06 sd ra,56(sp) - c001e292: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11207 + c001e45e: f426 sd s1,40(sp) + c001e460: fc06 sd ra,56(sp) + c001e462: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11215 if (JS_ToInt64Sat(ctx, &v, val)) - c001e294: fcbff0ef jal ra,c001e25e - c001e298: ed19 bnez a0,c001e2b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11209 + c001e464: fcbff0ef jal ra,c001e42e + c001e468: ed19 bnez a0,c001e486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11217 if (v < 0 || v > MAX_SAFE_INTEGER) { - c001e29a: 6762 ld a4,24(sp) - c001e29c: 57fd li a5,-1 - c001e29e: 83ad srli a5,a5,0xb - c001e2a0: 00e7fd63 bgeu a5,a4,c001e2ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11210 + c001e46a: 6762 ld a4,24(sp) + c001e46c: 57fd li a5,-1 + c001e46e: 83ad srli a5,a5,0xb + c001e470: 00e7fd63 bgeu a5,a4,c001e48a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11218 JS_ThrowRangeError(ctx, "invalid array index"); - c001e2a4: 00040597 auipc a1,0x40 - c001e2a8: 19c58593 addi a1,a1,412 # c005e440 - c001e2ac: 8526 mv a0,s1 - c001e2ae: eacf60ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11211 + c001e474: 00040597 auipc a1,0x40 + c001e478: 22c58593 addi a1,a1,556 # c005e6a0 + c001e47c: 8526 mv a0,s1 + c001e47e: dcaf60ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11219 *plen = 0; - c001e2b2: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11208 + c001e482: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11216 return -1; - c001e2b6: 557d li a0,-1 - c001e2b8: a011 j c001e2bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11214 + c001e486: 557d li a0,-1 + c001e488: a011 j c001e48c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11222 *plen = v; - c001e2ba: e018 sd a4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11216 + c001e48a: e018 sd a4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11224 } - c001e2bc: 70e2 ld ra,56(sp) - c001e2be: 7442 ld s0,48(sp) - c001e2c0: 74a2 ld s1,40(sp) - c001e2c2: 6121 addi sp,sp,64 - c001e2c4: 8082 ret + c001e48c: 70e2 ld ra,56(sp) + c001e48e: 7442 ld s0,48(sp) + c001e490: 74a2 ld s1,40(sp) + c001e492: 6121 addi sp,sp,64 + c001e494: 8082 ret -00000000c001e2c6 : +00000000c001e496 : js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54870 static JSValue js_dataview_constructor(JSContext *ctx, JSValueConst new_target, int argc, JSValueConst *argv) { - c001e2c6: 7135 addi sp,sp,-160 - c001e2c8: e922 sd s0,144(sp) - c001e2ca: e526 sd s1,136(sp) - c001e2cc: f8d2 sd s4,112(sp) - c001e2ce: ed06 sd ra,152(sp) - c001e2d0: e14a sd s2,128(sp) - c001e2d2: fcce sd s3,120(sp) - c001e2d4: f4d6 sd s5,104(sp) - c001e2d6: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54871 + c001e496: 7135 addi sp,sp,-160 + c001e498: e922 sd s0,144(sp) + c001e49a: e526 sd s1,136(sp) + c001e49c: f8d2 sd s4,112(sp) + c001e49e: ed06 sd ra,152(sp) + c001e4a0: e14a sd s2,128(sp) + c001e4a2: fcce sd s3,120(sp) + c001e4a4: f4d6 sd s5,104(sp) + c001e4a6: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54879 JSValueConst buffer; JSValue obj; JSTypedArray *ta; JSObject *p; buffer = argv[0]; - c001e2d8: 641c ld a5,8(s0) - c001e2da: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54862 + c001e4a8: 641c ld a5,8(s0) + c001e4aa: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54870 { - c001e2dc: 8a36 mv s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54871 + c001e4ac: 8a36 mv s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54879 buffer = argv[0]; - c001e2de: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54862 + c001e4ae: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54870 { - c001e2e0: e02e sd a1,0(sp) - c001e2e2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54871 + c001e4b0: e02e sd a1,0(sp) + c001e4b2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54879 buffer = argv[0]; - c001e2e4: f03a sd a4,32(sp) + c001e4b4: f03a sd a4,32(sp) js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52910 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c001e2e6: 2781 sext.w a5,a5 - c001e2e8: 56fd li a3,-1 + c001e4b6: 2781 sext.w a5,a5 + c001e4b8: 56fd li a3,-1 js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54870 { - c001e2ea: 84aa mv s1,a0 + c001e4ba: 84aa mv s1,a0 js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52910 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c001e2ec: 00d79a63 bne a5,a3,c001e300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52905 + c001e4bc: 00d79a63 bne a5,a3,c001e4d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52913 if (p->class_id != JS_CLASS_ARRAY_BUFFER && - c001e2f0: 00675783 lhu a5,6(a4) - c001e2f4: 4685 li a3,1 - c001e2f6: 37b5 addiw a5,a5,-19 - c001e2f8: 17c2 slli a5,a5,0x30 - c001e2fa: 93c1 srli a5,a5,0x30 - c001e2fc: 00f6fa63 bgeu a3,a5,c001e310 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52908 + c001e4c0: 00675783 lhu a5,6(a4) + c001e4c4: 4685 li a3,1 + c001e4c6: 37b5 addiw a5,a5,-19 + c001e4c8: 17c2 slli a5,a5,0x30 + c001e4ca: 93c1 srli a5,a5,0x30 + c001e4cc: 00f6fa63 bgeu a3,a5,c001e4e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52916 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_ARRAY_BUFFER); - c001e300: 45cd li a1,19 - c001e302: 8526 mv a0,s1 - c001e304: a4cf50ef jal ra,c0013550 + c001e4d0: 45cd li a1,19 + c001e4d2: 8526 mv a0,s1 + c001e4d4: 96af50ef jal ra,c001363e js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54914 } ta = js_malloc(ctx, sizeof(*ta)); if (!ta) { fail: JS_FreeValue(ctx, obj); return JS_EXCEPTION; - c001e308: 4799 li a5,6 - c001e30a: e082 sd zero,64(sp) - c001e30c: e4be sd a5,72(sp) - c001e30e: a035 j c001e33a + c001e4d8: 4799 li a5,6 + c001e4da: e082 sd zero,64(sp) + c001e4dc: e4be sd a5,72(sp) + c001e4de: a035 j c001e50a js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52911 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52919 return p->u.array_buffer; - c001e310: 03073903 ld s2,48(a4) + c001e4e0: 03073903 ld s2,48(a4) js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54873 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54881 if (!abuf) - c001e314: fe090ae3 beqz s2,c001e308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54875 + c001e4e4: fe090ae3 beqz s2,c001e4d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54883 offset = 0; - c001e318: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54876 + c001e4e8: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54884 if (argc > 1) { - c001e31a: 0146d863 bge a3,s4,c001e32a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54877 + c001e4ea: 0146d863 bge a3,s4,c001e4fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54885 if (JS_ToIndex(ctx, &offset, argv[1])) - c001e31e: 6810 ld a2,16(s0) - c001e320: 6c14 ld a3,24(s0) - c001e322: 082c addi a1,sp,24 - c001e324: f63ff0ef jal ra,c001e286 - c001e328: f165 bnez a0,c001e308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54880 + c001e4ee: 6810 ld a2,16(s0) + c001e4f0: 6c14 ld a3,24(s0) + c001e4f2: 082c addi a1,sp,24 + c001e4f4: f63ff0ef jal ra,c001e456 + c001e4f8: f165 bnez a0,c001e4d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54888 if (abuf->detached) - c001e32a: 00494783 lbu a5,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c001e32e: c38d beqz a5,c001e350 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54881 + c001e4fa: 00494783 lbu a5,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c001e4fe: c38d beqz a5,c001e520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54889 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001e330: 8526 mv a0,s1 - c001e332: 9a1f50ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54890 + c001e500: 8526 mv a0,s1 + c001e502: 8bff50ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54898 return JS_ThrowRangeError(ctx, "invalid byteLength"); - c001e336: e0aa sd a0,64(sp) - c001e338: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54916 (discriminator 4) + c001e506: e0aa sd a0,64(sp) + c001e508: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54924 (discriminator 4) ta->offset = offset; ta->length = len; list_add_tail(&ta->link, &abuf->array_list); p->u.typed_array = ta; return obj; } - c001e33a: 60ea ld ra,152(sp) - c001e33c: 644a ld s0,144(sp) - c001e33e: 6506 ld a0,64(sp) - c001e340: 65a6 ld a1,72(sp) - c001e342: 64aa ld s1,136(sp) - c001e344: 690a ld s2,128(sp) - c001e346: 79e6 ld s3,120(sp) - c001e348: 7a46 ld s4,112(sp) - c001e34a: 7aa6 ld s5,104(sp) - c001e34c: 610d addi sp,sp,160 - c001e34e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54882 + c001e50a: 60ea ld ra,152(sp) + c001e50c: 644a ld s0,144(sp) + c001e50e: 6506 ld a0,64(sp) + c001e510: 65a6 ld a1,72(sp) + c001e512: 64aa ld s1,136(sp) + c001e514: 690a ld s2,128(sp) + c001e516: 79e6 ld s3,120(sp) + c001e518: 7a46 ld s4,112(sp) + c001e51a: 7aa6 ld s5,104(sp) + c001e51c: 610d addi sp,sp,160 + c001e51e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54890 if (offset > abuf->byte_length) - c001e350: 00092983 lw s3,0(s2) - c001e354: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54883 + c001e520: 00092983 lw s3,0(s2) + c001e524: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54891 return JS_ThrowRangeError(ctx, "invalid byteOffset"); - c001e356: 00040597 auipc a1,0x40 - c001e35a: 10258593 addi a1,a1,258 # c005e458 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54882 + c001e526: 00040597 auipc a1,0x40 + c001e52a: 19258593 addi a1,a1,402 # c005e6b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54890 if (offset > abuf->byte_length) - c001e35e: 04f9e163 bltu s3,a5,c001e3a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54884 + c001e52e: 04f9e163 bltu s3,a5,c001e570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54892 len = abuf->byte_length - offset; - c001e362: 40f989bb subw s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54885 + c001e532: 40f989bb subw s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54893 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c001e366: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54884 + c001e536: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54892 len = abuf->byte_length - offset; - c001e368: 00098a9b sext.w s5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54885 + c001e538: 00098a9b sext.w s5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54893 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c001e36c: 0347de63 bge a5,s4,c001e3a8 + c001e53c: 0347de63 bge a5,s4,c001e578 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) - c001e370: 7414 ld a3,40(s0) + c001e540: 7414 ld a3,40(s0) js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54885 (discriminator 1) - c001e372: 478d li a5,3 - c001e374: 0006871b sext.w a4,a3 - c001e378: 02f70863 beq a4,a5,c001e3a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54887 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54893 (discriminator 1) + c001e542: 478d li a5,3 + c001e544: 0006871b sext.w a4,a3 + c001e548: 02f70863 beq a4,a5,c001e578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54895 if (JS_ToIndex(ctx, &l, argv[2])) - c001e37c: 7010 ld a2,32(s0) - c001e37e: 088c addi a1,sp,80 - c001e380: 8526 mv a0,s1 - c001e382: f05ff0ef jal ra,c001e286 - c001e386: f149 bnez a0,c001e308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54889 + c001e54c: 7010 ld a2,32(s0) + c001e54e: 088c addi a1,sp,80 + c001e550: 8526 mv a0,s1 + c001e552: f05ff0ef jal ra,c001e456 + c001e556: f149 bnez a0,c001e4d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54897 if (l > len) - c001e388: 67c6 ld a5,80(sp) - c001e38a: 1982 slli s3,s3,0x20 - c001e38c: 0209d993 srli s3,s3,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54891 + c001e558: 67c6 ld a5,80(sp) + c001e55a: 1982 slli s3,s3,0x20 + c001e55c: 0209d993 srli s3,s3,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54899 len = l; - c001e390: 00078a9b sext.w s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54889 + c001e560: 00078a9b sext.w s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54897 if (l > len) - c001e394: 00f9fa63 bgeu s3,a5,c001e3a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54890 + c001e564: 00f9fa63 bgeu s3,a5,c001e578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54898 return JS_ThrowRangeError(ctx, "invalid byteLength"); - c001e398: 00040597 auipc a1,0x40 - c001e39c: 0d858593 addi a1,a1,216 # c005e470 - c001e3a0: 8526 mv a0,s1 - c001e3a2: db8f60ef jal ra,c001495a - c001e3a6: bf41 j c001e336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54894 + c001e568: 00040597 auipc a1,0x40 + c001e56c: 16858593 addi a1,a1,360 # c005e6d0 + c001e570: 8526 mv a0,s1 + c001e572: cd6f60ef jal ra,c0014a48 + c001e576: bf41 j c001e506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54902 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_DATAVIEW); - c001e3a8: 6582 ld a1,0(sp) - c001e3aa: 6622 ld a2,8(sp) - c001e3ac: 02000693 li a3,32 - c001e3b0: 8526 mv a0,s1 - c001e3b2: e38f80ef jal ra,c00169ea - c001e3b6: f82a sd a0,48(sp) - c001e3b8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54895 + c001e578: 6582 ld a1,0(sp) + c001e57a: 6622 ld a2,8(sp) + c001e57c: 02000693 li a3,32 + c001e580: 8526 mv a0,s1 + c001e582: e38f80ef jal ra,c0016bba + c001e586: f82a sd a0,48(sp) + c001e588: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54903 if (JS_IsException(obj)) - c001e3ba: 0005871b sext.w a4,a1 - c001e3be: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54894 + c001e58a: 0005871b sext.w a4,a1 + c001e58e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54902 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_DATAVIEW); - c001e3c0: 89aa mv s3,a0 - c001e3c2: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54895 + c001e590: 89aa mv s3,a0 + c001e592: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54903 if (JS_IsException(obj)) - c001e3c4: f4f702e3 beq a4,a5,c001e308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54897 + c001e594: f4f702e3 beq a4,a5,c001e4d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54905 if (abuf->detached) { - c001e3c8: 00494783 lbu a5,4(s2) - c001e3cc: cb91 beqz a5,c001e3e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54899 + c001e598: 00494783 lbu a5,4(s2) + c001e59c: cb91 beqz a5,c001e5b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54907 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001e3ce: 8526 mv a0,s1 - c001e3d0: 903f50ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54905 + c001e59e: 8526 mv a0,s1 + c001e5a0: 821f50ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54913 JS_FreeValue(ctx, obj); - c001e3d4: 75c2 ld a1,48(sp) - c001e3d6: 7662 ld a2,56(sp) - c001e3d8: 8526 mv a0,s1 - c001e3da: f5ee90ef jal ra,c0007b38 - c001e3de: b72d j c001e308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54902 + c001e5a4: 75c2 ld a1,48(sp) + c001e5a6: 7662 ld a2,56(sp) + c001e5a8: 8526 mv a0,s1 + c001e5aa: e7ce90ef jal ra,c0007c26 + c001e5ae: b72d j c001e4d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54910 ta = js_malloc(ctx, sizeof(*ta)); - c001e3e0: 02800593 li a1,40 - c001e3e4: 8526 mv a0,s1 - c001e3e6: 867f60ef jal ra,c0014c4c - c001e3ea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54903 + c001e5b0: 02800593 li a1,40 + c001e5b4: 8526 mv a0,s1 + c001e5b6: f84f60ef jal ra,c0014d3a + c001e5ba: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54911 if (!ta) { - c001e3ec: d565 beqz a0,c001e3d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54909 + c001e5bc: d565 beqz a0,c001e5a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54917 ta->obj = p; - c001e3ee: 01353823 sd s3,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54910 + c001e5be: 01353823 sd s3,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54918 ta->buffer = JS_VALUE_GET_OBJ(JS_DupValue(ctx, buffer)); - c001e3f2: 75a2 ld a1,40(sp) - c001e3f4: 7502 ld a0,32(sp) - c001e3f6: a78e80ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54911 + c001e5c2: 75a2 ld a1,40(sp) + c001e5c4: 7502 ld a0,32(sp) + c001e5c6: 996e80ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54919 ta->offset = offset; - c001e3fa: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54910 + c001e5ca: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54918 ta->buffer = JS_VALUE_GET_OBJ(JS_DupValue(ctx, buffer)); - c001e3fc: e8aa sd a0,80(sp) - c001e3fe: ecae sd a1,88(sp) - c001e400: ec08 sd a0,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54911 + c001e5cc: e8aa sd a0,80(sp) + c001e5ce: ecae sd a1,88(sp) + c001e5d0: ec08 sd a0,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54919 ta->offset = offset; - c001e402: d01c sw a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54912 + c001e5d2: d01c sw a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54920 ta->length = len; - c001e404: 03542223 sw s5,36(s0) + c001e5d4: 03542223 sw s5,36(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c001e408: 01093783 ld a5,16(s2) + c001e5d8: 01093783 ld a5,16(s2) js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54923 return obj; - c001e40c: e0ce sd s3,64(sp) - c001e40e: e4d2 sd s4,72(sp) + c001e5dc: e0ce sd s3,64(sp) + c001e5de: e4d2 sd s4,72(sp) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c001e410: e780 sd s0,8(a5) + c001e5e0: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c001e412: e01c sd a5,0(s0) + c001e5e2: e01c sd a5,0(s0) js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54921 list_add_tail(&ta->link, &abuf->array_list); - c001e414: 01090793 addi a5,s2,16 + c001e5e4: 01090793 addi a5,s2,16 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c001e418: e41c sd a5,8(s0) + c001e5e8: e41c sd a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c001e41a: 00893823 sd s0,16(s2) + c001e5ea: 00893823 sd s0,16(s2) js_dataview_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54922 p->u.typed_array = ta; - c001e41e: 0289b823 sd s0,48(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54915 + c001e5ee: 0289b823 sd s0,48(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54923 return obj; - c001e422: bf21 j c001e33a + c001e5f2: bf21 j c001e50a -00000000c001e424 : +00000000c001e5f4 : js_shared_array_buffer_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52798 { - c001e424: 7139 addi sp,sp,-64 - c001e426: f822 sd s0,48(sp) - c001e428: fc06 sd ra,56(sp) - c001e42a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52792 + c001e5f4: 7139 addi sp,sp,-64 + c001e5f6: f822 sd s0,48(sp) + c001e5f8: fc06 sd ra,56(sp) + c001e5fa: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52800 if (JS_ToIndex(ctx, &len, argv[0])) - c001e42c: 6714 ld a3,8(a4) - c001e42e: 6310 ld a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 + c001e5fc: 6714 ld a3,8(a4) + c001e5fe: 6310 ld a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52798 { - c001e430: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52792 + c001e600: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52800 if (JS_ToIndex(ctx, &len, argv[0])) - c001e432: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 + c001e602: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52798 { - c001e434: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52792 + c001e604: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52800 if (JS_ToIndex(ctx, &len, argv[0])) - c001e436: e51ff0ef jal ra,c001e286 - c001e43a: c911 beqz a0,c001e44e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52793 + c001e606: e51ff0ef jal ra,c001e456 + c001e60a: c911 beqz a0,c001e61e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52801 return JS_EXCEPTION; - c001e43c: 4799 li a5,6 - c001e43e: f002 sd zero,32(sp) - c001e440: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52796 (discriminator 1) -} - c001e442: 70e2 ld ra,56(sp) - c001e444: 7442 ld s0,48(sp) - c001e446: 7502 ld a0,32(sp) - c001e448: 75a2 ld a1,40(sp) - c001e44a: 6121 addi sp,sp,64 - c001e44c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52794 + c001e60c: 4799 li a5,6 + c001e60e: f002 sd zero,32(sp) + c001e610: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52804 (discriminator 1) +} + c001e612: 70e2 ld ra,56(sp) + c001e614: 7442 ld s0,48(sp) + c001e616: 7502 ld a0,32(sp) + c001e618: 75a2 ld a1,40(sp) + c001e61a: 6121 addi sp,sp,64 + c001e61c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52802 return js_array_buffer_constructor2(ctx, new_target, len, - c001e44e: 66e2 ld a3,24(sp) - c001e450: 6582 ld a1,0(sp) - c001e452: 6622 ld a2,8(sp) - c001e454: 4751 li a4,20 - c001e456: 8522 mv a0,s0 - c001e458: f8cf80ef jal ra,c0016be4 - c001e45c: f02a sd a0,32(sp) - c001e45e: f42e sd a1,40(sp) - c001e460: b7cd j c001e442 - -00000000c001e462 : + c001e61e: 66e2 ld a3,24(sp) + c001e620: 6582 ld a1,0(sp) + c001e622: 6622 ld a2,8(sp) + c001e624: 4751 li a4,20 + c001e626: 8522 mv a0,s0 + c001e628: f8cf80ef jal ra,c0016db4 + c001e62c: f02a sd a0,32(sp) + c001e62e: f42e sd a1,40(sp) + c001e630: b7cd j c001e612 + +00000000c001e632 : js_array_buffer_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52788 { - c001e462: 711d addi sp,sp,-96 - c001e464: e8a2 sd s0,80(sp) - c001e466: ec86 sd ra,88(sp) - c001e468: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52782 + c001e632: 711d addi sp,sp,-96 + c001e634: e8a2 sd s0,80(sp) + c001e636: ec86 sd ra,88(sp) + c001e638: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 if (JS_ToIndex(ctx, &len, argv[0])) - c001e46a: 6714 ld a3,8(a4) - c001e46c: 6310 ld a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52780 + c001e63a: 6714 ld a3,8(a4) + c001e63c: 6310 ld a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52788 { - c001e46e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52782 + c001e63e: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 if (JS_ToIndex(ctx, &len, argv[0])) - c001e470: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52780 + c001e640: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52788 { - c001e472: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52782 + c001e642: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52790 if (JS_ToIndex(ctx, &len, argv[0])) - c001e474: e13ff0ef jal ra,c001e286 - c001e478: c911 beqz a0,c001e48c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52783 + c001e644: e13ff0ef jal ra,c001e456 + c001e648: c911 beqz a0,c001e65c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52791 return JS_EXCEPTION; - c001e47a: 4799 li a5,6 - c001e47c: f002 sd zero,32(sp) - c001e47e: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52785 (discriminator 1) -} - c001e480: 60e6 ld ra,88(sp) - c001e482: 6446 ld s0,80(sp) - c001e484: 7502 ld a0,32(sp) - c001e486: 75a2 ld a1,40(sp) - c001e488: 6125 addi sp,sp,96 - c001e48a: 8082 ret + c001e64a: 4799 li a5,6 + c001e64c: f002 sd zero,32(sp) + c001e64e: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52793 (discriminator 1) +} + c001e650: 60e6 ld ra,88(sp) + c001e652: 6446 ld s0,80(sp) + c001e654: 7502 ld a0,32(sp) + c001e656: 75a2 ld a1,40(sp) + c001e658: 6125 addi sp,sp,96 + c001e65a: 8082 ret js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c001e48c: 66e2 ld a3,24(sp) - c001e48e: 6582 ld a1,0(sp) - c001e490: 6622 ld a2,8(sp) - c001e492: 474d li a4,19 - c001e494: 8522 mv a0,s0 - c001e496: f4ef80ef jal ra,c0016be4 - c001e49a: f02a sd a0,32(sp) - c001e49c: f42e sd a1,40(sp) + c001e65c: 66e2 ld a3,24(sp) + c001e65e: 6582 ld a1,0(sp) + c001e660: 6622 ld a2,8(sp) + c001e662: 474d li a4,19 + c001e664: 8522 mv a0,s0 + c001e666: f4ef80ef jal ra,c0016db4 + c001e66a: f02a sd a0,32(sp) + c001e66c: f42e sd a1,40(sp) js_array_buffer_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52792 return js_array_buffer_constructor1(ctx, new_target, len); - c001e49e: b7cd j c001e480 + c001e66e: b7cd j c001e650 -00000000c001e4a0 : +00000000c001e670 : js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54929 static JSValue js_dataview_getValue(JSContext *ctx, JSValueConst this_obj, int argc, JSValueConst *argv, int class_id) { - c001e4a0: 7115 addi sp,sp,-224 - c001e4a2: f952 sd s4,176(sp) - c001e4a4: 8a36 mv s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54929 + c001e670: 7115 addi sp,sp,-224 + c001e672: f952 sd s4,176(sp) + c001e674: 8a36 mv s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54937 int is_swap, size; uint8_t *ptr; uint32_t v; uint64_t pos; ta = JS_GetOpaque2(ctx, this_obj, JS_CLASS_DATAVIEW); - c001e4a6: 02000693 li a3,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54921 -{ - c001e4aa: e9a2 sd s0,208(sp) - c001e4ac: e5a6 sd s1,200(sp) - c001e4ae: fd4e sd s3,184(sp) - c001e4b0: ed86 sd ra,216(sp) - c001e4b2: e1ca sd s2,192(sp) - c001e4b4: f556 sd s5,168(sp) - c001e4b6: 84aa mv s1,a0 - c001e4b8: e02e sd a1,0(sp) - c001e4ba: e432 sd a2,8(sp) - c001e4bc: 89ba mv s3,a4 - c001e4be: 843e mv s0,a5 + c001e676: 02000693 li a3,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54929 +{ + c001e67a: e9a2 sd s0,208(sp) + c001e67c: e5a6 sd s1,200(sp) + c001e67e: fd4e sd s3,184(sp) + c001e680: ed86 sd ra,216(sp) + c001e682: e1ca sd s2,192(sp) + c001e684: f556 sd s5,168(sp) + c001e686: 84aa mv s1,a0 + c001e688: e02e sd a1,0(sp) + c001e68a: e432 sd a2,8(sp) + c001e68c: 89ba mv s3,a4 + c001e68e: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54937 ta = JS_GetOpaque2(ctx, this_obj, JS_CLASS_DATAVIEW); - c001e4c0: 8b8f50ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54930 + c001e690: fd7f40ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54938 if (!ta) - c001e4c4: e509 bnez a0,c001e4ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54931 + c001e694: e509 bnez a0,c001e69e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54939 return JS_EXCEPTION; - c001e4c6: f002 sd zero,32(sp) - c001e4c8: 4799 li a5,6 - c001e4ca: f43e sd a5,40(sp) - c001e4cc: a865 j c001e584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54933 + c001e696: f002 sd zero,32(sp) + c001e698: 4799 li a5,6 + c001e69a: f43e sd a5,40(sp) + c001e69c: a865 j c001e754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54941 size = 1 << typed_array_size_log2(class_id); if (JS_ToIndex(ctx, &pos, argv[0])) - c001e4ce: 0009b603 ld a2,0(s3) - c001e4d2: 0089b683 ld a3,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54932 + c001e69e: 0009b603 ld a2,0(s3) + c001e6a2: 0089b683 ld a3,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54940 size = 1 << typed_array_size_log2(class_id); - c001e4d6: feb4071b addiw a4,s0,-21 - c001e4da: 00049797 auipc a5,0x49 - c001e4de: a5e78793 addi a5,a5,-1442 # c0066f38 - c001e4e2: 97ba add a5,a5,a4 - c001e4e4: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54933 + c001e6a6: feb4071b addiw a4,s0,-21 + c001e6aa: 00049797 auipc a5,0x49 + c001e6ae: aee78793 addi a5,a5,-1298 # c0067198 + c001e6b2: 97ba add a5,a5,a4 + c001e6b4: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54941 if (JS_ToIndex(ctx, &pos, argv[0])) - c001e4e6: 082c addi a1,sp,24 - c001e4e8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54932 + c001e6b6: 082c addi a1,sp,24 + c001e6b8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54940 size = 1 << typed_array_size_log2(class_id); - c001e4ea: 0007ca83 lbu s5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54933 + c001e6ba: 0007ca83 lbu s5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54941 if (JS_ToIndex(ctx, &pos, argv[0])) - c001e4ee: d99ff0ef jal ra,c001e286 - c001e4f2: 862a mv a2,a0 - c001e4f4: f969 bnez a0,c001e4c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54936 + c001e6be: d99ff0ef jal ra,c001e456 + c001e6c2: 862a mv a2,a0 + c001e6c4: f969 bnez a0,c001e696 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54944 return JS_EXCEPTION; is_swap = FALSE; if (argc > 1) - c001e4f6: 4785 li a5,1 - c001e4f8: 0147da63 bge a5,s4,c001e50c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54937 + c001e6c6: 4785 li a5,1 + c001e6c8: 0147da63 bge a5,s4,c001e6dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54945 is_swap = JS_ToBool(ctx, argv[1]); - c001e4fc: 0189b603 ld a2,24(s3) - c001e500: 0109b583 ld a1,16(s3) - c001e504: 8526 mv a0,s1 - c001e506: 923ec0ef jal ra,c000ae28 - c001e50a: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54941 + c001e6cc: 0189b603 ld a2,24(s3) + c001e6d0: 0109b583 ld a1,16(s3) + c001e6d4: 8526 mv a0,s1 + c001e6d6: 841ec0ef jal ra,c000af16 + c001e6da: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54949 #ifndef WORDS_BIGENDIAN is_swap ^= 1; #endif abuf = ta->buffer->u.array_buffer; - c001e50c: 01893783 ld a5,24(s2) - c001e510: 7b94 ld a3,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54942 + c001e6dc: 01893783 ld a5,24(s2) + c001e6e0: 7b94 ld a3,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54950 if (abuf->detached) - c001e512: 0046c783 lbu a5,4(a3) - c001e516: c799 beqz a5,c001e524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54943 + c001e6e2: 0046c783 lbu a5,4(a3) + c001e6e6: c799 beqz a5,c001e6f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54951 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001e518: 8526 mv a0,s1 - c001e51a: fb8f50ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54988 + c001e6e8: 8526 mv a0,s1 + c001e6ea: ed6f50ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54996 { uint64_t v; v = get_u64(ptr); if (is_swap) v = bswap64(v); return JS_NewBigUint64(ctx, v); - c001e51e: f02a sd a0,32(sp) - c001e520: f42e sd a1,40(sp) - c001e522: a08d j c001e584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54944 + c001e6ee: f02a sd a0,32(sp) + c001e6f0: f42e sd a1,40(sp) + c001e6f2: a08d j c001e754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54952 if ((pos + size) > ta->length) - c001e524: 65e2 ld a1,24(sp) - c001e526: 4785 li a5,1 - c001e528: 02496703 lwu a4,36(s2) - c001e52c: 015797bb sllw a5,a5,s5 - c001e530: 97ae add a5,a5,a1 - c001e532: 00f77a63 bgeu a4,a5,c001e546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54945 + c001e6f4: 65e2 ld a1,24(sp) + c001e6f6: 4785 li a5,1 + c001e6f8: 02496703 lwu a4,36(s2) + c001e6fc: 015797bb sllw a5,a5,s5 + c001e700: 97ae add a5,a5,a1 + c001e702: 00f77a63 bgeu a4,a5,c001e716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54953 return JS_ThrowRangeError(ctx, "out of bound"); - c001e536: 8526 mv a0,s1 - c001e538: 00040597 auipc a1,0x40 - c001e53c: f5058593 addi a1,a1,-176 # c005e488 - c001e540: c1af60ef jal ra,c001495a - c001e544: bfe9 j c001e51e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54946 + c001e706: 8526 mv a0,s1 + c001e708: 00040597 auipc a1,0x40 + c001e70c: fe058593 addi a1,a1,-32 # c005e6e8 + c001e710: b38f60ef jal ra,c0014a48 + c001e714: bfe9 j c001e6ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54954 ptr = abuf->data + ta->offset + pos; - c001e546: 02096703 lwu a4,32(s2) - c001e54a: 3429 addiw s0,s0,-22 - c001e54c: 00b707b3 add a5,a4,a1 - c001e550: 6698 ld a4,8(a3) - c001e552: 0004069b sext.w a3,s0 - c001e556: 973e add a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54948 + c001e716: 02096703 lwu a4,32(s2) + c001e71a: 3429 addiw s0,s0,-22 + c001e71c: 00b707b3 add a5,a4,a1 + c001e720: 6698 ld a4,8(a3) + c001e722: 0004069b sext.w a3,s0 + c001e726: 973e add a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54956 switch(class_id) { - c001e558: 47a5 li a5,9 - c001e55a: 24d7e863 bltu a5,a3,c001e7aa - c001e55e: 02041793 slli a5,s0,0x20 - c001e562: 01e7d413 srli s0,a5,0x1e - c001e566: 00040697 auipc a3,0x40 - c001e56a: f3268693 addi a3,a3,-206 # c005e498 - c001e56e: 9436 add s0,s0,a3 - c001e570: 401c lw a5,0(s0) - c001e572: 97b6 add a5,a5,a3 - c001e574: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54950 + c001e728: 47a5 li a5,9 + c001e72a: 24d7e863 bltu a5,a3,c001e97a + c001e72e: 02041793 slli a5,s0,0x20 + c001e732: 01e7d413 srli s0,a5,0x1e + c001e736: 00040697 auipc a3,0x40 + c001e73a: fc268693 addi a3,a3,-62 # c005e6f8 + c001e73e: 9436 add s0,s0,a3 + c001e740: 401c lw a5,0(s0) + c001e742: 97b6 add a5,a5,a3 + c001e744: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54958 return JS_NewInt32(ctx, *(int8_t *)ptr); - c001e576: 00070783 lb a5,0(a4) + c001e746: 00070783 lb a5,0(a4) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001e57a: da02 sw zero,52(sp) - c001e57c: d83e sw a5,48(sp) - c001e57e: 77c2 ld a5,48(sp) - c001e580: f03e sd a5,32(sp) - c001e582: f402 sd zero,40(sp) + c001e74a: da02 sw zero,52(sp) + c001e74c: d83e sw a5,48(sp) + c001e74e: 77c2 ld a5,48(sp) + c001e750: f03e sd a5,32(sp) + c001e752: f402 sd zero,40(sp) js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55017 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55025 (discriminator 1) return __JS_NewFloat64(ctx, u.f); } default: abort(); } } - c001e584: 60ee ld ra,216(sp) - c001e586: 644e ld s0,208(sp) - c001e588: 7502 ld a0,32(sp) - c001e58a: 75a2 ld a1,40(sp) - c001e58c: 64ae ld s1,200(sp) - c001e58e: 690e ld s2,192(sp) - c001e590: 79ea ld s3,184(sp) - c001e592: 7a4a ld s4,176(sp) - c001e594: 7aaa ld s5,168(sp) - c001e596: 612d addi sp,sp,224 - c001e598: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54952 + c001e754: 60ee ld ra,216(sp) + c001e756: 644e ld s0,208(sp) + c001e758: 7502 ld a0,32(sp) + c001e75a: 75a2 ld a1,40(sp) + c001e75c: 64ae ld s1,200(sp) + c001e75e: 690e ld s2,192(sp) + c001e760: 79ea ld s3,184(sp) + c001e762: 7a4a ld s4,176(sp) + c001e764: 7aaa ld s5,168(sp) + c001e766: 612d addi sp,sp,224 + c001e768: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54960 return JS_NewInt32(ctx, *(uint8_t *)ptr); - c001e59a: 00074783 lbu a5,0(a4) + c001e76a: 00074783 lbu a5,0(a4) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001e59e: c282 sw zero,68(sp) - c001e5a0: c0be sw a5,64(sp) - c001e5a2: 6786 ld a5,64(sp) - c001e5a4: bff1 j c001e580 + c001e76e: c282 sw zero,68(sp) + c001e770: c0be sw a5,64(sp) + c001e772: 6786 ld a5,64(sp) + c001e774: bff1 j c001e750 js_dataview_getValue(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c001e5a6: 00174783 lbu a5,1(a4) - c001e5aa: 00074683 lbu a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54955 + c001e776: 00174783 lbu a5,1(a4) + c001e77a: 00074683 lbu a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54963 if (is_swap) - c001e5ae: 4705 li a4,1 - c001e5b0: 07a2 slli a5,a5,0x8 - c001e5b2: 8fd5 or a5,a5,a3 - c001e5b4: 00e60963 beq a2,a4,c001e5c6 - c001e5b8: 0087971b slliw a4,a5,0x8 - c001e5bc: 0087d79b srliw a5,a5,0x8 - c001e5c0: 8fd9 or a5,a5,a4 - c001e5c2: 17c2 slli a5,a5,0x30 - c001e5c4: 93c1 srli a5,a5,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54957 + c001e77e: 4705 li a4,1 + c001e780: 07a2 slli a5,a5,0x8 + c001e782: 8fd5 or a5,a5,a3 + c001e784: 00e60963 beq a2,a4,c001e796 + c001e788: 0087971b slliw a4,a5,0x8 + c001e78c: 0087d79b srliw a5,a5,0x8 + c001e790: 8fd9 or a5,a5,a4 + c001e792: 17c2 slli a5,a5,0x30 + c001e794: 93c1 srli a5,a5,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54965 return JS_NewInt32(ctx, (int16_t)v); - c001e5c6: 0107979b slliw a5,a5,0x10 - c001e5ca: 4107d79b sraiw a5,a5,0x10 + c001e796: 0107979b slliw a5,a5,0x10 + c001e79a: 4107d79b sraiw a5,a5,0x10 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001e5ce: ca82 sw zero,84(sp) + c001e79e: ca82 sw zero,84(sp) js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54957 - c001e5d0: c8be sw a5,80(sp) - c001e5d2: 67c6 ld a5,80(sp) - c001e5d4: b775 j c001e580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54965 + c001e7a0: c8be sw a5,80(sp) + c001e7a2: 67c6 ld a5,80(sp) + c001e7a4: b775 j c001e750 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c001e5d6: 00174783 lbu a5,1(a4) - c001e5da: 00074683 lbu a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54960 + c001e7a6: 00174783 lbu a5,1(a4) + c001e7aa: 00074683 lbu a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54968 if (is_swap) - c001e5de: 4705 li a4,1 - c001e5e0: 07a2 slli a5,a5,0x8 - c001e5e2: 8fd5 or a5,a5,a3 - c001e5e4: 00e60963 beq a2,a4,c001e5f6 - c001e5e8: 0087971b slliw a4,a5,0x8 - c001e5ec: 0087d79b srliw a5,a5,0x8 - c001e5f0: 8fd9 or a5,a5,a4 - c001e5f2: 17c2 slli a5,a5,0x30 - c001e5f4: 93c1 srli a5,a5,0x30 + c001e7ae: 4705 li a4,1 + c001e7b0: 07a2 slli a5,a5,0x8 + c001e7b2: 8fd5 or a5,a5,a3 + c001e7b4: 00e60963 beq a2,a4,c001e7c6 + c001e7b8: 0087971b slliw a4,a5,0x8 + c001e7bc: 0087d79b srliw a5,a5,0x8 + c001e7c0: 8fd9 or a5,a5,a4 + c001e7c2: 17c2 slli a5,a5,0x30 + c001e7c4: 93c1 srli a5,a5,0x30 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001e5f6: d282 sw zero,100(sp) + c001e7c6: d282 sw zero,100(sp) js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54970 return JS_NewInt32(ctx, v); - c001e5f8: d0be sw a5,96(sp) - c001e5fa: 7786 ld a5,96(sp) - c001e5fc: b751 j c001e580 + c001e7c8: d0be sw a5,96(sp) + c001e7ca: 7786 ld a5,96(sp) + c001e7cc: b751 j c001e750 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c001e5fe: 00174783 lbu a5,1(a4) - c001e602: 00074503 lbu a0,0(a4) - c001e606: 07a2 slli a5,a5,0x8 - c001e608: 8fc9 or a5,a5,a0 - c001e60a: 00274503 lbu a0,2(a4) - c001e60e: 0542 slli a0,a0,0x10 - c001e610: 8fc9 or a5,a5,a0 - c001e612: 00374503 lbu a0,3(a4) - c001e616: 0562 slli a0,a0,0x18 - c001e618: 8d5d or a0,a0,a5 + c001e7ce: 00174783 lbu a5,1(a4) + c001e7d2: 00074503 lbu a0,0(a4) + c001e7d6: 07a2 slli a5,a5,0x8 + c001e7d8: 8fc9 or a5,a5,a0 + c001e7da: 00274503 lbu a0,2(a4) + c001e7de: 0542 slli a0,a0,0x10 + c001e7e0: 8fc9 or a5,a5,a0 + c001e7e2: 00374503 lbu a0,3(a4) + c001e7e6: 0562 slli a0,a0,0x18 + c001e7e8: 8d5d or a0,a0,a5 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54965 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54973 if (is_swap) - c001e61a: 4785 li a5,1 + c001e7ea: 4785 li a5,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c001e61c: 2501 sext.w a0,a0 + c001e7ec: 2501 sext.w a0,a0 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54965 - c001e61e: 00f60563 beq a2,a5,c001e628 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54973 + c001e7ee: 00f60563 beq a2,a5,c001e7f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54974 v = bswap32(v); - c001e622: 9bbe50ef jal ra,c0003fdc - c001e626: 2501 sext.w a0,a0 + c001e7f2: feae50ef jal ra,c0003fdc + c001e7f6: 2501 sext.w a0,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001e628: da82 sw zero,116(sp) - c001e62a: d8aa sw a0,112(sp) - c001e62c: 77c6 ld a5,112(sp) - c001e62e: bf89 j c001e580 + c001e7f8: da82 sw zero,116(sp) + c001e7fa: d8aa sw a0,112(sp) + c001e7fc: 77c6 ld a5,112(sp) + c001e7fe: bf89 j c001e750 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c001e630: 00174783 lbu a5,1(a4) - c001e634: 00074503 lbu a0,0(a4) - c001e638: 07a2 slli a5,a5,0x8 - c001e63a: 8fc9 or a5,a5,a0 - c001e63c: 00274503 lbu a0,2(a4) - c001e640: 0542 slli a0,a0,0x10 - c001e642: 8fc9 or a5,a5,a0 - c001e644: 00374503 lbu a0,3(a4) - c001e648: 0562 slli a0,a0,0x18 - c001e64a: 8d5d or a0,a0,a5 + c001e800: 00174783 lbu a5,1(a4) + c001e804: 00074503 lbu a0,0(a4) + c001e808: 07a2 slli a5,a5,0x8 + c001e80a: 8fc9 or a5,a5,a0 + c001e80c: 00274503 lbu a0,2(a4) + c001e810: 0542 slli a0,a0,0x10 + c001e812: 8fc9 or a5,a5,a0 + c001e814: 00374503 lbu a0,3(a4) + c001e818: 0562 slli a0,a0,0x18 + c001e81a: 8d5d or a0,a0,a5 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54978 if (is_swap) - c001e64c: 4785 li a5,1 + c001e81c: 4785 li a5,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c001e64e: 2501 sext.w a0,a0 + c001e81e: 2501 sext.w a0,a0 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54970 - c001e650: 00f60563 beq a2,a5,c001e65a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54971 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54978 + c001e820: 00f60563 beq a2,a5,c001e82a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54979 v = bswap32(v); - c001e654: 989e50ef jal ra,c0003fdc - c001e658: 2501 sext.w a0,a0 + c001e824: fb8e50ef jal ra,c0003fdc + c001e828: 2501 sext.w a0,a0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c001e65a: 0005079b sext.w a5,a0 - c001e65e: 00054c63 bltz a0,c001e676 + c001e82a: 0005079b sext.w a5,a0 + c001e82e: 00054c63 bltz a0,c001e846 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001e662: c302 sw zero,132(sp) - c001e664: c13e sw a5,128(sp) - c001e666: 670a ld a4,128(sp) - c001e668: e93a sd a4,144(sp) - c001e66a: 4701 li a4,0 + c001e832: c302 sw zero,132(sp) + c001e834: c13e sw a5,128(sp) + c001e836: 670a ld a4,128(sp) + c001e838: e93a sd a4,144(sp) + c001e83a: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c001e66c: c93e sw a5,144(sp) - c001e66e: 27ca fld fa5,144(sp) - c001e670: f43a sd a4,40(sp) - c001e672: b03e fsd fa5,32(sp) - c001e674: bf01 j c001e584 + c001e83c: c93e sw a5,144(sp) + c001e83e: 27ca fld fa5,144(sp) + c001e840: f43a sd a4,40(sp) + c001e842: b03e fsd fa5,32(sp) + c001e844: bf01 j c001e754 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c001e676: d21507d3 fcvt.d.wu fa5,a0 - c001e67a: 471d li a4,7 - c001e67c: e20787d3 fmv.x.d a5,fa5 + c001e846: d21507d3 fcvt.d.wu fa5,a0 + c001e84a: 471d li a4,7 + c001e84c: e20787d3 fmv.x.d a5,fa5 js_dataview_getValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001e680: a93e fsd fa5,144(sp) - c001e682: 2781 sext.w a5,a5 - c001e684: b7e5 j c001e66c + c001e850: a93e fsd fa5,144(sp) + c001e852: 2781 sext.w a5,a5 + c001e854: b7e5 j c001e83c get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 return ((const struct packed_u64 *)tab)->v; - c001e686: 00174503 lbu a0,1(a4) - c001e68a: 00074583 lbu a1,0(a4) + c001e856: 00174503 lbu a0,1(a4) + c001e85a: 00074583 lbu a1,0(a4) js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54977 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54985 if (is_swap) - c001e68e: 4785 li a5,1 + c001e85e: 4785 li a5,1 get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 - c001e690: 0522 slli a0,a0,0x8 - c001e692: 8dc9 or a1,a1,a0 - c001e694: 00274503 lbu a0,2(a4) - c001e698: 0542 slli a0,a0,0x10 - c001e69a: 8d4d or a0,a0,a1 - c001e69c: 00374583 lbu a1,3(a4) - c001e6a0: 05e2 slli a1,a1,0x18 - c001e6a2: 8d4d or a0,a0,a1 - c001e6a4: 00474583 lbu a1,4(a4) - c001e6a8: 1582 slli a1,a1,0x20 - c001e6aa: 8dc9 or a1,a1,a0 - c001e6ac: 00574503 lbu a0,5(a4) - c001e6b0: 1522 slli a0,a0,0x28 - c001e6b2: 8dc9 or a1,a1,a0 - c001e6b4: 00674503 lbu a0,6(a4) - c001e6b8: 1542 slli a0,a0,0x30 - c001e6ba: 8d4d or a0,a0,a1 - c001e6bc: 00774583 lbu a1,7(a4) - c001e6c0: 15e2 slli a1,a1,0x38 - c001e6c2: 8d4d or a0,a0,a1 + c001e860: 0522 slli a0,a0,0x8 + c001e862: 8dc9 or a1,a1,a0 + c001e864: 00274503 lbu a0,2(a4) + c001e868: 0542 slli a0,a0,0x10 + c001e86a: 8d4d or a0,a0,a1 + c001e86c: 00374583 lbu a1,3(a4) + c001e870: 05e2 slli a1,a1,0x18 + c001e872: 8d4d or a0,a0,a1 + c001e874: 00474583 lbu a1,4(a4) + c001e878: 1582 slli a1,a1,0x20 + c001e87a: 8dc9 or a1,a1,a0 + c001e87c: 00574503 lbu a0,5(a4) + c001e880: 1522 slli a0,a0,0x28 + c001e882: 8dc9 or a1,a1,a0 + c001e884: 00674503 lbu a0,6(a4) + c001e888: 1542 slli a0,a0,0x30 + c001e88a: 8d4d or a0,a0,a1 + c001e88c: 00774583 lbu a1,7(a4) + c001e890: 15e2 slli a1,a1,0x38 + c001e892: 8d4d or a0,a0,a1 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54977 - c001e6c4: 00f60463 beq a2,a5,c001e6cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54978 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54985 + c001e894: 00f60463 beq a2,a5,c001e89c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54986 v = bswap64(v); - c001e6c8: 93de50ef jal ra,c0004004 + c001e898: f6ce50ef jal ra,c0004004 JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c001e6cc: 85aa mv a1,a0 - c001e6ce: 8526 mv a0,s1 - c001e6d0: dc8fa0ef jal ra,c0018c98 - c001e6d4: b5a9 j c001e51e + c001e89c: 85aa mv a1,a0 + c001e89e: 8526 mv a0,s1 + c001e8a0: dc8fa0ef jal ra,c0018e68 + c001e8a4: b5a9 j c001e6ee get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 - c001e6d6: 00174503 lbu a0,1(a4) - c001e6da: 00074583 lbu a1,0(a4) + c001e8a6: 00174503 lbu a0,1(a4) + c001e8aa: 00074583 lbu a1,0(a4) js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54986 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54994 if (is_swap) - c001e6de: 4785 li a5,1 + c001e8ae: 4785 li a5,1 get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 - c001e6e0: 0522 slli a0,a0,0x8 - c001e6e2: 8dc9 or a1,a1,a0 - c001e6e4: 00274503 lbu a0,2(a4) - c001e6e8: 0542 slli a0,a0,0x10 - c001e6ea: 8d4d or a0,a0,a1 - c001e6ec: 00374583 lbu a1,3(a4) - c001e6f0: 05e2 slli a1,a1,0x18 - c001e6f2: 8d4d or a0,a0,a1 - c001e6f4: 00474583 lbu a1,4(a4) - c001e6f8: 1582 slli a1,a1,0x20 - c001e6fa: 8dc9 or a1,a1,a0 - c001e6fc: 00574503 lbu a0,5(a4) - c001e700: 1522 slli a0,a0,0x28 - c001e702: 8dc9 or a1,a1,a0 - c001e704: 00674503 lbu a0,6(a4) - c001e708: 1542 slli a0,a0,0x30 - c001e70a: 8d4d or a0,a0,a1 - c001e70c: 00774583 lbu a1,7(a4) - c001e710: 15e2 slli a1,a1,0x38 - c001e712: 8d4d or a0,a0,a1 + c001e8b0: 0522 slli a0,a0,0x8 + c001e8b2: 8dc9 or a1,a1,a0 + c001e8b4: 00274503 lbu a0,2(a4) + c001e8b8: 0542 slli a0,a0,0x10 + c001e8ba: 8d4d or a0,a0,a1 + c001e8bc: 00374583 lbu a1,3(a4) + c001e8c0: 05e2 slli a1,a1,0x18 + c001e8c2: 8d4d or a0,a0,a1 + c001e8c4: 00474583 lbu a1,4(a4) + c001e8c8: 1582 slli a1,a1,0x20 + c001e8ca: 8dc9 or a1,a1,a0 + c001e8cc: 00574503 lbu a0,5(a4) + c001e8d0: 1522 slli a0,a0,0x28 + c001e8d2: 8dc9 or a1,a1,a0 + c001e8d4: 00674503 lbu a0,6(a4) + c001e8d8: 1542 slli a0,a0,0x30 + c001e8da: 8d4d or a0,a0,a1 + c001e8dc: 00774583 lbu a1,7(a4) + c001e8e0: 15e2 slli a1,a1,0x38 + c001e8e2: 8d4d or a0,a0,a1 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54986 - c001e714: 00f60463 beq a2,a5,c001e71c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54987 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54994 + c001e8e4: 00f60463 beq a2,a5,c001e8ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54995 v = bswap64(v); - c001e718: 8ede50ef jal ra,c0004004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54988 + c001e8e8: f1ce50ef jal ra,c0004004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54996 return JS_NewBigUint64(ctx, v); - c001e71c: 85aa mv a1,a0 - c001e71e: 8526 mv a0,s1 - c001e720: deefa0ef jal ra,c0018d0e - c001e724: bbed j c001e51e + c001e8ec: 85aa mv a1,a0 + c001e8ee: 8526 mv a0,s1 + c001e8f0: deefa0ef jal ra,c0018ede + c001e8f4: bbed j c001e6ee get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c001e726: 00174783 lbu a5,1(a4) - c001e72a: 00074503 lbu a0,0(a4) - c001e72e: 07a2 slli a5,a5,0x8 - c001e730: 8fc9 or a5,a5,a0 - c001e732: 00274503 lbu a0,2(a4) - c001e736: 0542 slli a0,a0,0x10 - c001e738: 8d5d or a0,a0,a5 - c001e73a: 00374783 lbu a5,3(a4) - c001e73e: 07e2 slli a5,a5,0x18 - c001e740: 8fc9 or a5,a5,a0 - c001e742: 0007851b sext.w a0,a5 + c001e8f6: 00174783 lbu a5,1(a4) + c001e8fa: 00074503 lbu a0,0(a4) + c001e8fe: 07a2 slli a5,a5,0x8 + c001e900: 8fc9 or a5,a5,a0 + c001e902: 00274503 lbu a0,2(a4) + c001e906: 0542 slli a0,a0,0x10 + c001e908: 8d5d or a0,a0,a5 + c001e90a: 00374783 lbu a5,3(a4) + c001e90e: 07e2 slli a5,a5,0x18 + c001e910: 8fc9 or a5,a5,a0 + c001e912: 0007851b sext.w a0,a5 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55006 if (is_swap) - c001e746: 4785 li a5,1 - c001e748: 00f60563 beq a2,a5,c001e752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54999 + c001e916: 4785 li a5,1 + c001e918: 00f60563 beq a2,a5,c001e922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55007 v = bswap32(v); - c001e74c: 891e50ef jal ra,c0003fdc - c001e750: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55001 + c001e91c: ec0e50ef jal ra,c0003fdc + c001e920: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55009 return __JS_NewFloat64(ctx, u.f); - c001e752: f00507d3 fmv.w.x fa5,a0 - c001e756: 420787d3 fcvt.d.s fa5,fa5 - c001e75a: b03e fsd fa5,32(sp) - c001e75c: 479d li a5,7 - c001e75e: b3b5 j c001e4ca + c001e922: f00507d3 fmv.w.x fa5,a0 + c001e926: 420787d3 fcvt.d.s fa5,fa5 + c001e92a: b03e fsd fa5,32(sp) + c001e92c: 479d li a5,7 + c001e92e: b3b5 j c001e69a get_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:155 return ((const struct packed_u64 *)tab)->v; - c001e760: 00174783 lbu a5,1(a4) - c001e764: 00074503 lbu a0,0(a4) - c001e768: 07a2 slli a5,a5,0x8 - c001e76a: 8fc9 or a5,a5,a0 - c001e76c: 00274503 lbu a0,2(a4) - c001e770: 0542 slli a0,a0,0x10 - c001e772: 8fc9 or a5,a5,a0 - c001e774: 00374503 lbu a0,3(a4) - c001e778: 0562 slli a0,a0,0x18 - c001e77a: 8d5d or a0,a0,a5 - c001e77c: 00474783 lbu a5,4(a4) - c001e780: 1782 slli a5,a5,0x20 - c001e782: 8d5d or a0,a0,a5 - c001e784: 00574783 lbu a5,5(a4) - c001e788: 17a2 slli a5,a5,0x28 - c001e78a: 8fc9 or a5,a5,a0 - c001e78c: 00674503 lbu a0,6(a4) - c001e790: 1542 slli a0,a0,0x30 - c001e792: 8fc9 or a5,a5,a0 - c001e794: 00774503 lbu a0,7(a4) - c001e798: 1562 slli a0,a0,0x38 - c001e79a: 8d5d or a0,a0,a5 + c001e930: 00174783 lbu a5,1(a4) + c001e934: 00074503 lbu a0,0(a4) + c001e938: 07a2 slli a5,a5,0x8 + c001e93a: 8fc9 or a5,a5,a0 + c001e93c: 00274503 lbu a0,2(a4) + c001e940: 0542 slli a0,a0,0x10 + c001e942: 8fc9 or a5,a5,a0 + c001e944: 00374503 lbu a0,3(a4) + c001e948: 0562 slli a0,a0,0x18 + c001e94a: 8d5d or a0,a0,a5 + c001e94c: 00474783 lbu a5,4(a4) + c001e950: 1782 slli a5,a5,0x20 + c001e952: 8d5d or a0,a0,a5 + c001e954: 00574783 lbu a5,5(a4) + c001e958: 17a2 slli a5,a5,0x28 + c001e95a: 8fc9 or a5,a5,a0 + c001e95c: 00674503 lbu a0,6(a4) + c001e960: 1542 slli a0,a0,0x30 + c001e962: 8fc9 or a5,a5,a0 + c001e964: 00774503 lbu a0,7(a4) + c001e968: 1562 slli a0,a0,0x38 + c001e96a: 8d5d or a0,a0,a5 js_dataview_getValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55018 if (is_swap) - c001e79c: 4785 li a5,1 - c001e79e: 00f60463 beq a2,a5,c001e7a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55011 + c001e96c: 4785 li a5,1 + c001e96e: 00f60463 beq a2,a5,c001e976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55019 u.i = bswap64(u.i); - c001e7a2: 863e50ef jal ra,c0004004 + c001e972: e92e50ef jal ra,c0004004 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 - c001e7a6: f02a sd a0,32(sp) - c001e7a8: bf55 j c001e75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55015 + c001e976: f02a sd a0,32(sp) + c001e978: bf55 j c001e92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55023 abort(); - c001e7aa: 060370ef jal ra,c005580a + c001e97a: 060370ef jal ra,c00559da -00000000c001e7ae : +00000000c001e97e : JS_ToInt64Clamp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10899 -{ - c001e7ae: 715d addi sp,sp,-80 - c001e7b0: e0a2 sd s0,64(sp) - c001e7b2: f052 sd s4,32(sp) - c001e7b4: 842e mv s0,a1 - c001e7b6: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10907 +{ + c001e97e: 715d addi sp,sp,-80 + c001e980: e0a2 sd s0,64(sp) + c001e982: f052 sd s4,32(sp) + c001e984: 842e mv s0,a1 + c001e986: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10908 int res = JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e7b8: 85b6 mv a1,a3 - c001e7ba: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10899 -{ - c001e7bc: fc26 sd s1,56(sp) - c001e7be: f84a sd s2,48(sp) - c001e7c0: f44e sd s3,40(sp) - c001e7c2: e486 sd ra,72(sp) - c001e7c4: 89ba mv s3,a4 - c001e7c6: 893e mv s2,a5 - c001e7c8: 84c2 mv s1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10900 + c001e988: 85b6 mv a1,a3 + c001e98a: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10907 +{ + c001e98c: fc26 sd s1,56(sp) + c001e98e: f84a sd s2,48(sp) + c001e990: f44e sd s3,40(sp) + c001e992: e486 sd ra,72(sp) + c001e994: 89ba mv s3,a4 + c001e996: 893e mv s2,a5 + c001e998: 84c2 mv s1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10908 int res = JS_ToInt64SatFree(ctx, pres, JS_DupValue(ctx, val)); - c001e7ca: ea5e70ef jal ra,c000666e - c001e7ce: 862a mv a2,a0 - c001e7d0: 86ae mv a3,a1 - c001e7d2: 8552 mv a0,s4 - c001e7d4: 85a2 mv a1,s0 - c001e7d6: 9ebff0ef jal ra,c001e1c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10901 + c001e99a: dc3e70ef jal ra,c000675c + c001e99e: 862a mv a2,a0 + c001e9a0: 86ae mv a3,a1 + c001e9a2: 8552 mv a0,s4 + c001e9a4: 85a2 mv a1,s0 + c001e9a6: 9ebff0ef jal ra,c001e390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10909 if (res == 0) { - c001e7da: ed01 bnez a0,c001e7f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10902 + c001e9aa: ed01 bnez a0,c001e9c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10910 if (*pres < 0) - c001e7dc: 00043803 ld a6,0(s0) - c001e7e0: 00085463 bgez a6,c001e7e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10903 + c001e9ac: 00043803 ld a6,0(s0) + c001e9b0: 00085463 bgez a6,c001e9b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10911 *pres += neg_offset; - c001e7e4: 94c2 add s1,s1,a6 - c001e7e6: e004 sd s1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10904 + c001e9b4: 94c2 add s1,s1,a6 + c001e9b6: e004 sd s1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10912 if (*pres < min) - c001e7e8: 601c ld a5,0(s0) - c001e7ea: 0137dc63 bge a5,s3,c001e802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10905 + c001e9b8: 601c ld a5,0(s0) + c001e9ba: 0137dc63 bge a5,s3,c001e9d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10913 *pres = min; - c001e7ee: 01343023 sd s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10910 -} - c001e7f2: 60a6 ld ra,72(sp) - c001e7f4: 6406 ld s0,64(sp) - c001e7f6: 74e2 ld s1,56(sp) - c001e7f8: 7942 ld s2,48(sp) - c001e7fa: 79a2 ld s3,40(sp) - c001e7fc: 7a02 ld s4,32(sp) - c001e7fe: 6161 addi sp,sp,80 - c001e800: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10906 + c001e9be: 01343023 sd s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10918 +} + c001e9c2: 60a6 ld ra,72(sp) + c001e9c4: 6406 ld s0,64(sp) + c001e9c6: 74e2 ld s1,56(sp) + c001e9c8: 7942 ld s2,48(sp) + c001e9ca: 79a2 ld s3,40(sp) + c001e9cc: 7a02 ld s4,32(sp) + c001e9ce: 6161 addi sp,sp,80 + c001e9d0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10914 else if (*pres > max) - c001e802: fef958e3 bge s2,a5,c001e7f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10907 + c001e9d2: fef958e3 bge s2,a5,c001e9c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10915 *pres = max; - c001e806: 01243023 sd s2,0(s0) - c001e80a: b7e5 j c001e7f2 + c001e9d6: 01243023 sd s2,0(s0) + c001e9da: b7e5 j c001e9c2 -00000000c001e80c : +00000000c001e9dc : JS_ToLengthFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11223 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11231 int res = JS_ToInt64Clamp(ctx, plen, val, 0, MAX_SAFE_INTEGER, 0); - c001e80c: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11222 + c001e9dc: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11230 { - c001e80e: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11223 + c001e9de: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11231 int res = JS_ToInt64Clamp(ctx, plen, val, 0, MAX_SAFE_INTEGER, 0); - c001e810: 4801 li a6,0 - c001e812: 83ad srli a5,a5,0xb - c001e814: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11222 + c001e9e0: 4801 li a6,0 + c001e9e2: 83ad srli a5,a5,0xb + c001e9e4: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11230 { - c001e816: f406 sd ra,40(sp) - c001e818: f022 sd s0,32(sp) - c001e81a: ec26 sd s1,24(sp) - c001e81c: e032 sd a2,0(sp) - c001e81e: 84aa mv s1,a0 - c001e820: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11223 + c001e9e6: f406 sd ra,40(sp) + c001e9e8: f022 sd s0,32(sp) + c001e9ea: ec26 sd s1,24(sp) + c001e9ec: e032 sd a2,0(sp) + c001e9ee: 84aa mv s1,a0 + c001e9f0: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11231 int res = JS_ToInt64Clamp(ctx, plen, val, 0, MAX_SAFE_INTEGER, 0); - c001e822: f8dff0ef jal ra,c001e7ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11224 + c001e9f2: f8dff0ef jal ra,c001e97e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11232 JS_FreeValue(ctx, val); - c001e826: 6582 ld a1,0(sp) - c001e828: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11223 + c001e9f6: 6582 ld a1,0(sp) + c001e9f8: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11231 int res = JS_ToInt64Clamp(ctx, plen, val, 0, MAX_SAFE_INTEGER, 0); - c001e82a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11224 + c001e9fa: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11232 JS_FreeValue(ctx, val); - c001e82c: 8526 mv a0,s1 - c001e82e: b0ae90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11226 -} - c001e832: 70a2 ld ra,40(sp) - c001e834: 8522 mv a0,s0 - c001e836: 7402 ld s0,32(sp) - c001e838: 64e2 ld s1,24(sp) - c001e83a: 6145 addi sp,sp,48 - c001e83c: 8082 ret - -00000000c001e83e : + c001e9fc: 8526 mv a0,s1 + c001e9fe: a28e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11234 +} + c001ea02: 70a2 ld ra,40(sp) + c001ea04: 8522 mv a0,s0 + c001ea06: 7402 ld s0,32(sp) + c001ea08: 64e2 ld s1,24(sp) + c001ea0a: 6145 addi sp,sp,48 + c001ea0c: 8082 ret + +00000000c001ea0e : js_get_length64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 { - c001e83e: 711d addi sp,sp,-96 - c001e840: 87b6 mv a5,a3 - c001e842: 8732 mv a4,a2 - c001e844: e8a2 sd s0,80(sp) + c001ea0e: 711d addi sp,sp,-96 + c001ea10: 87b6 mv a5,a3 + c001ea12: 8732 mv a4,a2 + c001ea14: e8a2 sd s0,80(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c001e846: 4801 li a6,0 + c001ea16: 4801 li a6,0 js_get_length64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38392 - c001e848: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea18: 842e mv s0,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001e84a: 03000693 li a3,48 - c001e84e: 85b2 mv a1,a2 - c001e850: 863e mv a2,a5 + c001ea1a: 03000693 li a3,48 + c001ea1e: 85b2 mv a1,a2 + c001ea20: 863e mv a2,a5 js_get_length64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38392 - c001e852: e4a6 sd s1,72(sp) - c001e854: ec86 sd ra,88(sp) - c001e856: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea22: e4a6 sd s1,72(sp) + c001ea24: ec86 sd ra,88(sp) + c001ea26: 84aa mv s1,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c001e858: febf20ef jal ra,c0011842 + c001ea28: f09f20ef jal ra,c0011930 js_get_length64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38395 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38403 if (JS_IsException(len_val)) { - c001e85c: 0005871b sext.w a4,a1 - c001e860: 4799 li a5,6 - c001e862: 00f70c63 beq a4,a5,c001e87a - c001e866: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38399 + c001ea2c: 0005871b sext.w a4,a1 + c001ea30: 4799 li a5,6 + c001ea32: 00f70c63 beq a4,a5,c001ea4a + c001ea36: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38407 return JS_ToLengthFree(ctx, pres, len_val); - c001e868: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea38: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 } - c001e86a: 6446 ld s0,80(sp) - c001e86c: 60e6 ld ra,88(sp) - c001e86e: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38399 + c001ea3a: 6446 ld s0,80(sp) + c001ea3c: 60e6 ld ra,88(sp) + c001ea3e: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38407 return JS_ToLengthFree(ctx, pres, len_val); - c001e870: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea40: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 } - c001e872: 64a6 ld s1,72(sp) - c001e874: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38399 + c001ea42: 64a6 ld s1,72(sp) + c001ea44: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38407 return JS_ToLengthFree(ctx, pres, len_val); - c001e876: f97ff06f j c001e80c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea46: f97ff06f j c001e9dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 } - c001e87a: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38396 + c001ea4a: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38404 *pres = 0; - c001e87c: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38400 + c001ea4c: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38408 } - c001e880: 6446 ld s0,80(sp) - c001e882: 64a6 ld s1,72(sp) - c001e884: 557d li a0,-1 - c001e886: 6125 addi sp,sp,96 - c001e888: 8082 ret + c001ea50: 6446 ld s0,80(sp) + c001ea52: 64a6 ld s1,72(sp) + c001ea54: 557d li a0,-1 + c001ea56: 6125 addi sp,sp,96 + c001ea58: 8082 ret -00000000c001e88a : +00000000c001ea5a : JS_ToInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10975 -{ - c001e88a: 711d addi sp,sp,-96 - c001e88c: e8a2 sd s0,80(sp) - c001e88e: e4a6 sd s1,72(sp) - c001e890: 842e mv s0,a1 - c001e892: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10983 +{ + c001ea5a: 711d addi sp,sp,-96 + c001ea5c: e8a2 sd s0,80(sp) + c001ea5e: e4a6 sd s1,72(sp) + c001ea60: 842e mv s0,a1 + c001ea62: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10984 return JS_ToInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001e894: 85b6 mv a1,a3 - c001e896: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10975 -{ - c001e898: e0ca sd s2,64(sp) - c001e89a: fc4e sd s3,56(sp) - c001e89c: f852 sd s4,48(sp) - c001e89e: ec86 sd ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10976 + c001ea64: 85b6 mv a1,a3 + c001ea66: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10983 +{ + c001ea68: e0ca sd s2,64(sp) + c001ea6a: fc4e sd s3,56(sp) + c001ea6c: f852 sd s4,48(sp) + c001ea6e: ec86 sd ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10984 return JS_ToInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001e8a0: dcfe70ef jal ra,c000666e - c001e8a4: f02a sd a0,32(sp) - c001e8a6: 862e mv a2,a1 + c001ea70: cede70ef jal ra,c000675c + c001ea74: f02a sd a0,32(sp) + c001ea76: 862e mv a2,a1 JS_ToInt64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10929 switch(tag) { - c001e8a8: 498d li s3,3 - c001e8aa: 4a1d li s4,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10964 + c001ea78: 498d li s3,3 + c001ea7a: 4a1d li s4,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10972 if (JS_IsException(val)) { - c001e8ac: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10920 + c001ea7c: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10928 tag = JS_VALUE_GET_NORM_TAG(val); - c001e8ae: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10921 + c001ea7e: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10929 switch(tag) { - c001e8b2: 02f9f963 bgeu s3,a5,c001e8e4 - c001e8b6: 03478b63 beq a5,s4,c001e8ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10963 + c001ea82: 02f9f963 bgeu s3,a5,c001eab4 + c001ea86: 03478b63 beq a5,s4,c001eabc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10971 val = JS_ToNumberFree(ctx, val); - c001e8ba: 7582 ld a1,32(sp) - c001e8bc: 8526 mv a0,s1 - c001e8be: 9adfd0ef jal ra,c001c26a - c001e8c2: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10964 + c001ea8a: 7582 ld a1,32(sp) + c001ea8c: 8526 mv a0,s1 + c001ea8e: 9adfd0ef jal ra,c001c43a + c001ea92: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10972 if (JS_IsException(val)) { - c001e8c4: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10963 + c001ea94: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10971 val = JS_ToNumberFree(ctx, val); - c001e8c8: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10964 + c001ea98: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10972 if (JS_IsException(val)) { - c001e8ca: ff2792e3 bne a5,s2,c001e8ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10965 + c001ea9a: ff2792e3 bne a5,s2,c001ea7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10973 *pres = 0; - c001e8ce: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10966 + c001ea9e: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10974 return -1; - c001e8d2: 557d li a0,-1 + c001eaa2: 557d li a0,-1 JS_ToInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10977 -} - c001e8d4: 60e6 ld ra,88(sp) - c001e8d6: 6446 ld s0,80(sp) - c001e8d8: 64a6 ld s1,72(sp) - c001e8da: 6906 ld s2,64(sp) - c001e8dc: 79e2 ld s3,56(sp) - c001e8de: 7a42 ld s4,48(sp) - c001e8e0: 6125 addi sp,sp,96 - c001e8e2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10985 +} + c001eaa4: 60e6 ld ra,88(sp) + c001eaa6: 6446 ld s0,80(sp) + c001eaa8: 64a6 ld s1,72(sp) + c001eaaa: 6906 ld s2,64(sp) + c001eaac: 79e2 ld s3,56(sp) + c001eaae: 7a42 ld s4,48(sp) + c001eab0: 6125 addi sp,sp,96 + c001eab2: 8082 ret JS_ToInt64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10934 ret = JS_VALUE_GET_INT(val); - c001e8e4: 5682 lw a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10970 + c001eab4: 5682 lw a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10978 *pres = ret; - c001e8e6: e014 sd a3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10971 + c001eab6: e014 sd a3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10979 return 0; - c001e8e8: 4501 li a0,0 - c001e8ea: b7ed j c001e8d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10933 + c001eab8: 4501 li a0,0 + c001eaba: b7ed j c001eaa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10941 d = JS_VALUE_GET_FLOAT64(val); - c001e8ec: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10937 + c001eabc: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10945 if (likely(e <= (1023 + 62))) { - c001e8ee: 43d00693 li a3,1085 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10936 + c001eabe: 43d00693 li a3,1085 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10944 e = (u.u64 >> 52) & 0x7ff; - c001e8f2: 0347d713 srli a4,a5,0x34 - c001e8f6: 7ff77713 andi a4,a4,2047 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10934 + c001eac2: 0347d713 srli a4,a5,0x34 + c001eac6: 7ff77713 andi a4,a4,2047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10942 u.d = d; - c001e8fa: 863e mv a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10937 + c001eaca: 863e mv a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10945 if (likely(e <= (1023 + 62))) { - c001e8fc: 00e6c763 blt a3,a4,c001e90a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10939 + c001eacc: 00e6c763 blt a3,a4,c001eada +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10947 ret = (int64_t)d; - c001e900: f20787d3 fmv.d.x fa5,a5 - c001e904: c22796d3 fcvt.l.d a3,fa5,rtz - c001e908: bff9 j c001e8e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10940 + c001ead0: f20787d3 fmv.d.x fa5,a5 + c001ead4: c22796d3 fcvt.l.d a3,fa5,rtz + c001ead8: bff9 j c001eab6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10948 } else if (e <= (1023 + 62 + 53)) { - c001e90a: 47200593 li a1,1138 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10949 + c001eada: 47200593 li a1,1138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10957 ret = 0; /* also handles NaN and +inf */ - c001e90e: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10940 + c001eade: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10948 } else if (e <= (1023 + 62 + 53)) { - c001e910: fce5cbe3 blt a1,a4,c001e8e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10943 + c001eae0: fce5cbe3 blt a1,a4,c001eab6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10951 v = (u.u64 & (((uint64_t)1 << 52) - 1)) | ((uint64_t)1 << 52); - c001e914: 07b2 slli a5,a5,0xc - c001e916: 4685 li a3,1 - c001e918: 16d2 slli a3,a3,0x34 - c001e91a: 83b1 srli a5,a5,0xc - c001e91c: 8fd5 or a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10944 + c001eae4: 07b2 slli a5,a5,0xc + c001eae6: 4685 li a3,1 + c001eae8: 16d2 slli a3,a3,0x34 + c001eaea: 83b1 srli a5,a5,0xc + c001eaec: 8fd5 or a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10952 ret = v << ((e - 1023) - 52); - c001e91e: bcd7071b addiw a4,a4,-1075 - c001e922: 00e796b3 sll a3,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10946 + c001eaee: bcd7071b addiw a4,a4,-1075 + c001eaf2: 00e796b3 sll a3,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10954 if (u.u64 >> 63) - c001e926: fc0650e3 bgez a2,c001e8e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10947 + c001eaf6: fc0650e3 bgez a2,c001eab6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10955 ret = -ret; - c001e92a: 40d006b3 neg a3,a3 - c001e92e: bf65 j c001e8e6 + c001eafa: 40d006b3 neg a3,a3 + c001eafe: bf65 j c001eab6 -00000000c001e930 : +00000000c001eb00 : JS_ToNumericFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10632 { - c001e930: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10625 + c001eb00: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10633 return JS_ToNumberHintFree(ctx, val, TON_FLAG_NUMERIC); - c001e932: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10626 + c001eb02: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10634 } - c001e934: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10625 + c001eb04: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10633 return JS_ToNumberHintFree(ctx, val, TON_FLAG_NUMERIC); - c001e936: f70fd06f j c001c0a6 + c001eb06: f70fd06f j c001c276 -00000000c001e93a : +00000000c001eb0a : js_add_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13641 -{ - c001e93a: 7119 addi sp,sp,-128 - c001e93c: f8a2 sd s0,112(sp) - c001e93e: f4a6 sd s1,104(sp) - c001e940: fc86 sd ra,120(sp) - c001e942: f0ca sd s2,96(sp) - c001e944: ecce sd s3,88(sp) - c001e946: e8d2 sd s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13645 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13649 +{ + c001eb0a: 7119 addi sp,sp,-128 + c001eb0c: f8a2 sd s0,112(sp) + c001eb0e: f4a6 sd s1,104(sp) + c001eb10: fc86 sd ra,120(sp) + c001eb12: f0ca sd s2,96(sp) + c001eb14: ecce sd s3,88(sp) + c001eb16: e8d2 sd s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13653 op1 = sp[-2]; - c001e948: fe05b783 ld a5,-32(a1) - c001e94c: fe85b903 ld s2,-24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13646 + c001eb18: fe05b783 ld a5,-32(a1) + c001eb1c: fe85b903 ld s2,-24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13654 op2 = sp[-1]; - c001e950: ff85b703 ld a4,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13645 + c001eb20: ff85b703 ld a4,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13653 op1 = sp[-2]; - c001e954: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13646 + c001eb24: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13654 op2 = sp[-1]; - c001e956: ff05b783 ld a5,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13645 + c001eb26: ff05b783 ld a5,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13653 op1 = sp[-2]; - c001e95a: ec4a sd s2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13646 + c001eb2a: ec4a sd s2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13654 op2 = sp[-1]; - c001e95c: f43a sd a4,40(sp) - c001e95e: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13651 + c001eb2c: f43a sd a4,40(sp) + c001eb2e: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 if (tag1 == JS_TAG_FLOAT64 && tag2 == JS_TAG_FLOAT64) { - c001e960: 461d li a2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13648 + c001eb30: 461d li a2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13656 tag1 = JS_VALUE_GET_NORM_TAG(op1); - c001e962: 0009079b sext.w a5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13641 -{ - c001e966: 84aa mv s1,a0 - c001e968: 842e mv s0,a1 + c001eb32: 0009079b sext.w a5,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13649 +{ + c001eb36: 84aa mv s1,a0 + c001eb38: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13657 tag2 = JS_VALUE_GET_NORM_TAG(op2); - c001e96a: 0007069b sext.w a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13651 + c001eb3a: 0007069b sext.w a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 if (tag1 == JS_TAG_FLOAT64 && tag2 == JS_TAG_FLOAT64) { - c001e96e: 02c79563 bne a5,a2,c001e998 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13651 (discriminator 1) - c001e972: 18f69163 bne a3,a5,c001eaf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13655 + c001eb3e: 02c79563 bne a5,a2,c001eb68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 (discriminator 1) + c001eb42: 18f69163 bne a3,a5,c001ecc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13663 sp[-2] = __JS_NewFloat64(ctx, d1 + d2); - c001e976: 27c2 fld fa5,16(sp) - c001e978: 3702 fld fa4,32(sp) - c001e97a: fed5b423 sd a3,-24(a1) - c001e97e: 02e7f7d3 fadd.d fa5,fa5,fa4 - c001e982: fef5b027 fsd fa5,-32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13752 + c001eb46: 27c2 fld fa5,16(sp) + c001eb48: 3702 fld fa4,32(sp) + c001eb4a: fed5b423 sd a3,-24(a1) + c001eb4e: 02e7f7d3 fadd.d fa5,fa5,fa4 + c001eb52: fef5b027 fsd fa5,-32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13760 return 0; - c001e986: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13757 -} - c001e988: 70e6 ld ra,120(sp) - c001e98a: 7446 ld s0,112(sp) - c001e98c: 74a6 ld s1,104(sp) - c001e98e: 7906 ld s2,96(sp) - c001e990: 69e6 ld s3,88(sp) - c001e992: 6a46 ld s4,80(sp) - c001e994: 6109 addi sp,sp,128 - c001e996: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 + c001eb56: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13765 +} + c001eb58: 70e6 ld ra,120(sp) + c001eb5a: 7446 ld s0,112(sp) + c001eb5c: 74a6 ld s1,104(sp) + c001eb5e: 7906 ld s2,96(sp) + c001eb60: 69e6 ld s3,88(sp) + c001eb62: 6a46 ld s4,80(sp) + c001eb64: 6109 addi sp,sp,128 + c001eb66: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13667 if (tag1 == JS_TAG_OBJECT || tag2 == JS_TAG_OBJECT) { - c001e998: 567d li a2,-1 - c001e99a: 00c78463 beq a5,a2,c001e9a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 (discriminator 1) - c001e99e: 04c69463 bne a3,a2,c001e9e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13683 + c001eb68: 567d li a2,-1 + c001eb6a: 00c78463 beq a5,a2,c001eb72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13667 (discriminator 1) + c001eb6e: 04c69463 bne a3,a2,c001ebb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13691 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c001e9a2: 65c2 ld a1,16(sp) - c001e9a4: 6662 ld a2,24(sp) - c001e9a6: 4689 li a3,2 - c001e9a8: 8526 mv a0,s1 - c001e9aa: 99cfb0ef jal ra,c0019b46 - c001e9ae: e82a sd a0,16(sp) - c001e9b0: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13684 + c001eb72: 65c2 ld a1,16(sp) + c001eb74: 6662 ld a2,24(sp) + c001eb76: 4689 li a3,2 + c001eb78: 8526 mv a0,s1 + c001eb7a: 99cfb0ef jal ra,c0019d16 + c001eb7e: e82a sd a0,16(sp) + c001eb80: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13692 if (JS_IsException(op1)) { - c001e9b2: 0005899b sext.w s3,a1 - c001e9b6: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13683 + c001eb82: 0005899b sext.w s3,a1 + c001eb86: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13691 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c001e9b8: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13684 + c001eb88: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13692 if (JS_IsException(op1)) { - c001e9ba: 01499563 bne s3,s4,c001e9c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13743 + c001eb8a: 01499563 bne s3,s4,c001eb94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13751 JS_FreeValue(ctx, op2); - c001e9be: 7582 ld a1,32(sp) - c001e9c0: 7622 ld a2,40(sp) - c001e9c2: a005 j c001e9e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13689 + c001eb8e: 7582 ld a1,32(sp) + c001eb90: 7622 ld a2,40(sp) + c001eb92: a005 j c001ebb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13697 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - c001e9c4: 7582 ld a1,32(sp) - c001e9c6: 7622 ld a2,40(sp) - c001e9c8: 4689 li a3,2 - c001e9ca: 8526 mv a0,s1 - c001e9cc: 97afb0ef jal ra,c0019b46 - c001e9d0: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13695 + c001eb94: 7582 ld a1,32(sp) + c001eb96: 7622 ld a2,40(sp) + c001eb98: 4689 li a3,2 + c001eb9a: 8526 mv a0,s1 + c001eb9c: 97afb0ef jal ra,c0019d16 + c001eba0: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13703 tag2 = JS_VALUE_GET_NORM_TAG(op2); - c001e9d2: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13689 + c001eba2: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13697 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - c001e9d6: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13694 + c001eba6: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13702 tag1 = JS_VALUE_GET_NORM_TAG(op1); - c001e9d8: 87ce mv a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13690 + c001eba8: 87ce mv a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13698 if (JS_IsException(op2)) { - c001e9da: 01469663 bne a3,s4,c001e9e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13691 + c001ebaa: 01469663 bne a3,s4,c001ebb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13699 JS_FreeValue(ctx, op1); - c001e9de: 65c2 ld a1,16(sp) - c001e9e0: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13743 + c001ebae: 65c2 ld a1,16(sp) + c001ebb0: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13751 JS_FreeValue(ctx, op2); - c001e9e2: 8526 mv a0,s1 - c001e9e4: a08d j c001ea46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13698 + c001ebb2: 8526 mv a0,s1 + c001ebb4: a08d j c001ec16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13706 if (tag1 == JS_TAG_STRING || tag2 == JS_TAG_STRING) { - c001e9e6: 5665 li a2,-7 - c001e9e8: 00c78563 beq a5,a2,c001e9f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13698 (discriminator 1) - c001e9ec: 57e5 li a5,-7 - c001e9ee: 02f69b63 bne a3,a5,c001ea24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13699 + c001ebb6: 5665 li a2,-7 + c001ebb8: 00c78563 beq a5,a2,c001ebc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13706 (discriminator 1) + c001ebbc: 57e5 li a5,-7 + c001ebbe: 02f69b63 bne a3,a5,c001ebf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13707 sp[-2] = JS_ConcatString(ctx, op1, op2); - c001e9f2: 7682 ld a3,32(sp) - c001e9f4: 65c2 ld a1,16(sp) - c001e9f6: 864a mv a2,s2 - c001e9f8: 8526 mv a0,s1 - c001e9fa: f69fb0ef jal ra,c001a962 - c001e9fe: feb43423 sd a1,-24(s0) - c001ea02: fea43023 sd a0,-32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13700 + c001ebc2: 7682 ld a3,32(sp) + c001ebc4: 65c2 ld a1,16(sp) + c001ebc6: 864a mv a2,s2 + c001ebc8: 8526 mv a0,s1 + c001ebca: f69fb0ef jal ra,c001ab32 + c001ebce: feb43423 sd a1,-24(s0) + c001ebd2: fea43023 sd a0,-32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13708 if (JS_IsException(sp[-2])) - c001ea06: 2581 sext.w a1,a1 - c001ea08: 4799 li a5,6 - c001ea0a: f6f59ee3 bne a1,a5,c001e986 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13754 + c001ebd6: 2581 sext.w a1,a1 + c001ebd8: 4799 li a5,6 + c001ebda: f6f59ee3 bne a1,a5,c001eb56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13762 sp[-2] = JS_UNDEFINED; - c001ea0e: 478d li a5,3 - c001ea10: fe043023 sd zero,-32(s0) - c001ea14: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13755 + c001ebde: 478d li a5,3 + c001ebe0: fe043023 sd zero,-32(s0) + c001ebe4: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13763 sp[-1] = JS_UNDEFINED; - c001ea18: fe043823 sd zero,-16(s0) - c001ea1c: fef43c23 sd a5,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13756 + c001ebe8: fe043823 sd zero,-16(s0) + c001ebec: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13764 return -1; - c001ea20: 557d li a0,-1 - c001ea22: b79d j c001e988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13705 + c001ebf0: 557d li a0,-1 + c001ebf2: b79d j c001eb58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13713 op1 = JS_ToNumericFree(ctx, op1); - c001ea24: 65c2 ld a1,16(sp) - c001ea26: 864a mv a2,s2 - c001ea28: 8526 mv a0,s1 - c001ea2a: e43a sd a4,8(sp) - c001ea2c: f05ff0ef jal ra,c001e930 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13706 + c001ebf4: 65c2 ld a1,16(sp) + c001ebf6: 864a mv a2,s2 + c001ebf8: 8526 mv a0,s1 + c001ebfa: e43a sd a4,8(sp) + c001ebfc: f05ff0ef jal ra,c001eb00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13714 if (JS_IsException(op1)) { - c001ea30: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13705 + c001ec00: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13713 op1 = JS_ToNumericFree(ctx, op1); - c001ea32: e82a sd a0,16(sp) - c001ea34: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13706 + c001ec02: e82a sd a0,16(sp) + c001ec04: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13714 if (JS_IsException(op1)) { - c001ea36: 0005891b sext.w s2,a1 - c001ea3a: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13707 + c001ec06: 0005891b sext.w s2,a1 + c001ec0a: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13715 JS_FreeValue(ctx, op2); - c001ea3c: 7582 ld a1,32(sp) - c001ea3e: 863a mv a2,a4 - c001ea40: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13706 + c001ec0c: 7582 ld a1,32(sp) + c001ec0e: 863a mv a2,a4 + c001ec10: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13714 if (JS_IsException(op1)) { - c001ea42: 01391563 bne s2,s3,c001ea4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13743 + c001ec12: 01391563 bne s2,s3,c001ec1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13751 JS_FreeValue(ctx, op2); - c001ea46: 8f2e90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13744 + c001ec16: 810e90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13752 goto exception; - c001ea4a: b7d1 j c001ea0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13710 + c001ec1a: b7d1 j c001ebde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13718 op2 = JS_ToNumericFree(ctx, op2); - c001ea4c: ee5ff0ef jal ra,c001e930 - c001ea50: f42e sd a1,40(sp) - c001ea52: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13711 + c001ec1c: ee5ff0ef jal ra,c001eb00 + c001ec20: f42e sd a1,40(sp) + c001ec22: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13719 if (JS_IsException(op2)) { - c001ea54: 2581 sext.w a1,a1 - c001ea56: f93584e3 beq a1,s3,c001e9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13718 + c001ec24: 2581 sext.w a1,a1 + c001ec26: f93584e3 beq a1,s3,c001ebae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13726 if (tag1 == JS_TAG_INT && tag2 == JS_TAG_INT) { - c001ea5a: 02091e63 bnez s2,c001ea96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13718 (discriminator 1) - c001ea5e: ed9d bnez a1,c001ea9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13721 + c001ec2a: 02091e63 bnez s2,c001ec66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13726 (discriminator 1) + c001ec2e: ed9d bnez a1,c001ec6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13729 v1 = JS_VALUE_GET_INT(op1); - c001ea60: 4742 lw a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13722 + c001ec30: 4742 lw a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13730 v2 = JS_VALUE_GET_INT(op2); - c001ea62: 5782 lw a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13723 + c001ec32: 5782 lw a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13731 v = (int64_t)v1 + (int64_t)v2; - c001ea64: 00f706b3 add a3,a4,a5 + c001ec34: 00f706b3 add a3,a4,a5 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c001ea68: 9fb9 addw a5,a5,a4 - c001ea6a: 00f69e63 bne a3,a5,c001ea86 + c001ec38: 9fb9 addw a5,a5,a4 + c001ec3a: 00f69e63 bne a3,a5,c001ec56 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001ea6e: c282 sw zero,68(sp) - c001ea70: c0be sw a5,64(sp) - c001ea72: 6706 ld a4,64(sp) - c001ea74: f83a sd a4,48(sp) - c001ea76: 4701 li a4,0 + c001ec3e: c282 sw zero,68(sp) + c001ec40: c0be sw a5,64(sp) + c001ec42: 6706 ld a4,64(sp) + c001ec44: f83a sd a4,48(sp) + c001ec46: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c001ea78: d83e sw a5,48(sp) - c001ea7a: 37c2 fld fa5,48(sp) + c001ec48: d83e sw a5,48(sp) + c001ec4a: 37c2 fld fa5,48(sp) js_add_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13732 sp[-2] = JS_NewInt64(ctx, v); - c001ea7c: fee43423 sd a4,-24(s0) - c001ea80: fef43027 fsd fa5,-32(s0) - c001ea84: b709 j c001e986 + c001ec4c: fee43423 sd a4,-24(s0) + c001ec50: fef43027 fsd fa5,-32(s0) + c001ec54: b709 j c001eb56 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c001ea86: d226f7d3 fcvt.d.l fa5,a3 - c001ea8a: 471d li a4,7 - c001ea8c: e20787d3 fmv.x.d a5,fa5 + c001ec56: d226f7d3 fcvt.d.l fa5,a3 + c001ec5a: 471d li a4,7 + c001ec5c: e20787d3 fmv.x.d a5,fa5 js_add_slow(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001ea90: b83e fsd fa5,48(sp) - c001ea92: 2781 sext.w a5,a5 - c001ea94: b7d5 j c001ea78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13735 + c001ec60: b83e fsd fa5,48(sp) + c001ec62: 2781 sext.w a5,a5 + c001ec64: b7d5 j c001ec48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13743 if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { - c001ea96: 57d9 li a5,-10 - c001ea98: 00f90563 beq s2,a5,c001eaa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13735 (discriminator 1) - c001ea9c: 57d9 li a5,-10 - c001ea9e: 02f59263 bne a1,a5,c001eac2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13737 + c001ec66: 57d9 li a5,-10 + c001ec68: 00f90563 beq s2,a5,c001ec72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13743 (discriminator 1) + c001ec6c: 57d9 li a5,-10 + c001ec6e: 02f59263 bne a1,a5,c001ec92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13745 if (ctx->rt->bigint_ops.binary_arith(ctx, OP_add, sp - 2, op1, op2)) - c001eaa2: 6c9c ld a5,24(s1) - c001eaa4: 7822 ld a6,40(sp) - c001eaa6: 66c2 ld a3,16(sp) - c001eaa8: 2207b883 ld a7,544(a5) - c001eaac: 6762 ld a4,24(sp) - c001eaae: 7782 ld a5,32(sp) - c001eab0: fe040613 addi a2,s0,-32 - c001eab4: 09e00593 li a1,158 - c001eab8: 8526 mv a0,s1 - c001eaba: 9882 jalr a7 - c001eabc: ec0505e3 beqz a0,c001e986 - c001eac0: b7b9 j c001ea0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13742 + c001ec72: 6c9c ld a5,24(s1) + c001ec74: 7822 ld a6,40(sp) + c001ec76: 66c2 ld a3,16(sp) + c001ec78: 2207b883 ld a7,544(a5) + c001ec7c: 6762 ld a4,24(sp) + c001ec7e: 7782 ld a5,32(sp) + c001ec80: fe040613 addi a2,s0,-32 + c001ec84: 09e00593 li a1,158 + c001ec88: 8526 mv a0,s1 + c001ec8a: 9882 jalr a7 + c001ec8c: ec0505e3 beqz a0,c001eb56 + c001ec90: b7b9 j c001ebde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13750 if (JS_ToFloat64Free(ctx, &d1, op1)) { - c001eac2: 6642 ld a2,16(sp) - c001eac4: 66e2 ld a3,24(sp) - c001eac6: 180c addi a1,sp,48 - c001eac8: 8526 mv a0,s1 - c001eaca: b25fd0ef jal ra,c001c5ee - c001eace: ee0518e3 bnez a0,c001e9be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13746 + c001ec92: 6642 ld a2,16(sp) + c001ec94: 66e2 ld a3,24(sp) + c001ec96: 180c addi a1,sp,48 + c001ec98: 8526 mv a0,s1 + c001ec9a: b25fd0ef jal ra,c001c7be + c001ec9e: ee0518e3 bnez a0,c001eb8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13754 if (JS_ToFloat64Free(ctx, &d2, op2)) - c001ead2: 7602 ld a2,32(sp) - c001ead4: 76a2 ld a3,40(sp) - c001ead6: 008c addi a1,sp,64 - c001ead8: 8526 mv a0,s1 - c001eada: b15fd0ef jal ra,c001c5ee - c001eade: f905 bnez a0,c001ea0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13750 + c001eca2: 7602 ld a2,32(sp) + c001eca4: 76a2 ld a3,40(sp) + c001eca6: 008c addi a1,sp,64 + c001eca8: 8526 mv a0,s1 + c001ecaa: b15fd0ef jal ra,c001c7be + c001ecae: f905 bnez a0,c001ebde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13758 sp[-2] = __JS_NewFloat64(ctx, d1 + d2); - c001eae0: 37c2 fld fa5,48(sp) - c001eae2: 2706 fld fa4,64(sp) - c001eae4: 479d li a5,7 - c001eae6: fef43423 sd a5,-24(s0) - c001eaea: 02e7f7d3 fadd.d fa5,fa5,fa4 - c001eaee: fef43027 fsd fa5,-32(s0) - c001eaf2: bd59 j c001e988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13659 + c001ecb0: 37c2 fld fa5,48(sp) + c001ecb2: 2706 fld fa4,64(sp) + c001ecb4: 479d li a5,7 + c001ecb6: fef43423 sd a5,-24(s0) + c001ecba: 02e7f7d3 fadd.d fa5,fa5,fa4 + c001ecbe: fef43027 fsd fa5,-32(s0) + c001ecc2: bd59 j c001eb58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13667 if (tag1 == JS_TAG_OBJECT || tag2 == JS_TAG_OBJECT) { - c001eaf4: 57fd li a5,-1 - c001eaf6: eef69be3 bne a3,a5,c001e9ec - c001eafa: b565 j c001e9a2 + c001ecc4: 57fd li a5,-1 + c001ecc6: eef69be3 bne a3,a5,c001ebbc + c001ecca: b565 j c001eb72 -00000000c001eafc : +00000000c001eccc : js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13468 -{ - c001eafc: 7159 addi sp,sp,-112 - c001eafe: f0a2 sd s0,96(sp) - c001eb00: eca6 sd s1,88(sp) - c001eb02: e8ca sd s2,80(sp) - c001eb04: f486 sd ra,104(sp) - c001eb06: e4ce sd s3,72(sp) - c001eb08: e0d2 sd s4,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13473 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13476 +{ + c001eccc: 7159 addi sp,sp,-112 + c001ecce: f0a2 sd s0,96(sp) + c001ecd0: eca6 sd s1,88(sp) + c001ecd2: e8ca sd s2,80(sp) + c001ecd4: f486 sd ra,104(sp) + c001ecd6: e4ce sd s3,72(sp) + c001ecd8: e0d2 sd s4,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13481 op1 = sp[-2]; - c001eb0a: fe05b783 ld a5,-32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13474 + c001ecda: fe05b783 ld a5,-32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13482 op2 = sp[-1]; - c001eb0e: ff05b703 ld a4,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13478 + c001ecde: ff05b703 ld a4,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13486 if (tag1 == JS_TAG_FLOAT64 && tag2 == JS_TAG_FLOAT64) { - c001eb12: 469d li a3,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13473 + c001ece2: 469d li a3,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13481 op1 = sp[-2]; - c001eb14: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13474 + c001ece4: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13482 op2 = sp[-1]; - c001eb16: e83a sd a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13473 + c001ece6: e83a sd a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13481 op1 = sp[-2]; - c001eb18: fe85b783 ld a5,-24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13474 + c001ece8: fe85b783 ld a5,-24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13482 op2 = sp[-1]; - c001eb1c: ff85b703 ld a4,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13468 + c001ecec: ff85b703 ld a4,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13476 { - c001eb20: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13473 + c001ecf0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13481 op1 = sp[-2]; - c001eb22: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13474 + c001ecf2: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13482 op2 = sp[-1]; - c001eb24: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13478 + c001ecf4: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13486 if (tag1 == JS_TAG_FLOAT64 && tag2 == JS_TAG_FLOAT64) { - c001eb26: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13468 + c001ecf6: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13476 { - c001eb28: 842e mv s0,a1 - c001eb2a: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13478 + c001ecf8: 842e mv s0,a1 + c001ecfa: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13486 if (tag1 == JS_TAG_FLOAT64 && tag2 == JS_TAG_FLOAT64) { - c001eb2c: 02d79c63 bne a5,a3,c001eb64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13478 (discriminator 1) - c001eb30: 2701 sext.w a4,a4 - c001eb32: 02f71963 bne a4,a5,c001eb64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13479 + c001ecfc: 02d79c63 bne a5,a3,c001ed34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13486 (discriminator 1) + c001ed00: 2701 sext.w a4,a4 + c001ed02: 02f71963 bne a4,a5,c001ed34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13487 d1 = JS_VALUE_GET_FLOAT64(op1); - c001eb36: 2782 fld fa5,0(sp) - c001eb38: b03e fsd fa5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13480 + c001ed06: 2782 fld fa5,0(sp) + c001ed08: b03e fsd fa5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13488 d2 = JS_VALUE_GET_FLOAT64(op2); - c001eb3a: 27c2 fld fa5,16(sp) - c001eb3c: b83e fsd fa5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13603 + c001ed0a: 27c2 fld fa5,16(sp) + c001ed0c: b83e fsd fa5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13611 switch(op) { - c001eb3e: f654849b addiw s1,s1,-155 - c001eb42: 0004871b sext.w a4,s1 - c001eb46: 4795 li a5,5 - c001eb48: 16e7ea63 bltu a5,a4,c001ecbc - c001eb4c: 02049793 slli a5,s1,0x20 - c001eb50: 01e7d493 srli s1,a5,0x1e - c001eb54: 00040717 auipc a4,0x40 - c001eb58: 96c70713 addi a4,a4,-1684 # c005e4c0 - c001eb5c: 94ba add s1,s1,a4 - c001eb5e: 409c lw a5,0(s1) - c001eb60: 97ba add a5,a5,a4 - c001eb62: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13505 + c001ed0e: f654849b addiw s1,s1,-155 + c001ed12: 0004871b sext.w a4,s1 + c001ed16: 4795 li a5,5 + c001ed18: 16e7ea63 bltu a5,a4,c001ee8c + c001ed1c: 02049793 slli a5,s1,0x20 + c001ed20: 01e7d493 srli s1,a5,0x1e + c001ed24: 00040717 auipc a4,0x40 + c001ed28: 9fc70713 addi a4,a4,-1540 # c005e720 + c001ed2c: 94ba add s1,s1,a4 + c001ed2e: 409c lw a5,0(s1) + c001ed30: 97ba add a5,a5,a4 + c001ed32: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13513 op1 = JS_ToNumericFree(ctx, op1); - c001eb64: 6582 ld a1,0(sp) - c001eb66: 6622 ld a2,8(sp) - c001eb68: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13506 + c001ed34: 6582 ld a1,0(sp) + c001ed36: 6622 ld a2,8(sp) + c001ed38: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13514 if (JS_IsException(op1)) { - c001eb6a: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13505 + c001ed3a: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13513 op1 = JS_ToNumericFree(ctx, op1); - c001eb6c: dc5ff0ef jal ra,c001e930 - c001eb70: e02a sd a0,0(sp) - c001eb72: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13506 + c001ed3c: dc5ff0ef jal ra,c001eb00 + c001ed40: e02a sd a0,0(sp) + c001ed42: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13514 if (JS_IsException(op1)) { - c001eb74: 0005899b sext.w s3,a1 - c001eb78: 03499263 bne s3,s4,c001eb9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13507 + c001ed44: 0005899b sext.w s3,a1 + c001ed48: 03499263 bne s3,s4,c001ed6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13515 JS_FreeValue(ctx, op2); - c001eb7c: 65c2 ld a1,16(sp) - c001eb7e: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13512 + c001ed4c: 65c2 ld a1,16(sp) + c001ed4e: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13520 JS_FreeValue(ctx, op1); - c001eb80: 854a mv a0,s2 - c001eb82: fb7e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13635 + c001ed50: 854a mv a0,s2 + c001ed52: ed5e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13643 sp[-2] = JS_UNDEFINED; - c001eb86: 478d li a5,3 - c001eb88: fe043023 sd zero,-32(s0) - c001eb8c: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13636 + c001ed56: 478d li a5,3 + c001ed58: fe043023 sd zero,-32(s0) + c001ed5c: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13644 sp[-1] = JS_UNDEFINED; - c001eb90: fe043823 sd zero,-16(s0) - c001eb94: fef43c23 sd a5,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13637 + c001ed60: fe043823 sd zero,-16(s0) + c001ed64: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13645 return -1; - c001eb98: 557d li a0,-1 - c001eb9a: a851 j c001ec2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13510 + c001ed68: 557d li a0,-1 + c001ed6a: a851 j c001edfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13518 op2 = JS_ToNumericFree(ctx, op2); - c001eb9c: 65c2 ld a1,16(sp) - c001eb9e: 6662 ld a2,24(sp) - c001eba0: 854a mv a0,s2 - c001eba2: d8fff0ef jal ra,c001e930 - c001eba6: ec2e sd a1,24(sp) - c001eba8: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13511 + c001ed6c: 65c2 ld a1,16(sp) + c001ed6e: 6662 ld a2,24(sp) + c001ed70: 854a mv a0,s2 + c001ed72: d8fff0ef jal ra,c001eb00 + c001ed76: ec2e sd a1,24(sp) + c001ed78: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13519 if (JS_IsException(op2)) { - c001ebaa: 2581 sext.w a1,a1 - c001ebac: 01459563 bne a1,s4,c001ebb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13512 + c001ed7a: 2581 sext.w a1,a1 + c001ed7c: 01459563 bne a1,s4,c001ed86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13520 JS_FreeValue(ctx, op1); - c001ebb0: 6582 ld a1,0(sp) - c001ebb2: 6622 ld a2,8(sp) - c001ebb4: b7f1 j c001eb80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13518 + c001ed80: 6582 ld a1,0(sp) + c001ed82: 6622 ld a2,8(sp) + c001ed84: b7f1 j c001ed50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13526 if (tag1 == JS_TAG_INT && tag2 == JS_TAG_INT) { - c001ebb6: 10099d63 bnez s3,c001ecd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13518 (discriminator 1) - c001ebba: 10059e63 bnez a1,c001ecd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13521 + c001ed86: 10099d63 bnez s3,c001eea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13526 (discriminator 1) + c001ed8a: 10059e63 bnez a1,c001eea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13529 v1 = JS_VALUE_GET_INT(op1); - c001ebbe: f654849b addiw s1,s1,-155 - c001ebc2: 0004861b sext.w a2,s1 - c001ebc6: 4695 li a3,5 - c001ebc8: 4782 lw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13522 + c001ed8e: f654849b addiw s1,s1,-155 + c001ed92: 0004861b sext.w a2,s1 + c001ed96: 4695 li a3,5 + c001ed98: 4782 lw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13530 v2 = JS_VALUE_GET_INT(op2); - c001ebca: 4742 lw a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13523 + c001ed9a: 4742 lw a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13531 switch(op) { - c001ebcc: 0ec6e863 bltu a3,a2,c001ecbc - c001ebd0: 02049693 slli a3,s1,0x20 - c001ebd4: 01e6d493 srli s1,a3,0x1e - c001ebd8: 00040617 auipc a2,0x40 - c001ebdc: 90060613 addi a2,a2,-1792 # c005e4d8 - c001ebe0: 94b2 add s1,s1,a2 - c001ebe2: 4094 lw a3,0(s1) - c001ebe4: 96b2 add a3,a3,a2 - c001ebe6: 8682 jr a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13525 + c001ed9c: 0ec6e863 bltu a3,a2,c001ee8c + c001eda0: 02049693 slli a3,s1,0x20 + c001eda4: 01e6d493 srli s1,a3,0x1e + c001eda8: 00040617 auipc a2,0x40 + c001edac: 99060613 addi a2,a2,-1648 # c005e738 + c001edb0: 94b2 add s1,s1,a2 + c001edb2: 4094 lw a3,0(s1) + c001edb4: 96b2 add a3,a3,a2 + c001edb6: 8682 jr a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13533 v = (int64_t)v1 - (int64_t)v2; - c001ebe8: 40e786b3 sub a3,a5,a4 + c001edb8: 40e786b3 sub a3,a5,a4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c001ebec: 0006879b sext.w a5,a3 - c001ebf0: 0cf69863 bne a3,a5,c001ecc0 + c001edbc: 0006879b sext.w a5,a3 + c001edc0: 0cf69863 bne a3,a5,c001ee90 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001ebf4: da02 sw zero,52(sp) - c001ebf6: d83e sw a5,48(sp) - c001ebf8: 7742 ld a4,48(sp) - c001ebfa: f03a sd a4,32(sp) - c001ebfc: 4701 li a4,0 + c001edc4: da02 sw zero,52(sp) + c001edc6: d83e sw a5,48(sp) + c001edc8: 7742 ld a4,48(sp) + c001edca: f03a sd a4,32(sp) + c001edcc: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c001ebfe: d03e sw a5,32(sp) - c001ec00: 3782 fld fa5,32(sp) + c001edce: d03e sw a5,32(sp) + c001edd0: 3782 fld fa5,32(sp) js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13584 sp[-2] = JS_NewInt64(ctx, v); - c001ec02: fee43423 sd a4,-24(s0) - c001ec06: fef43027 fsd fa5,-32(s0) - c001ec0a: a00d j c001ec2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13528 + c001edd2: fee43423 sd a4,-24(s0) + c001edd6: fef43027 fsd fa5,-32(s0) + c001edda: a00d j c001edfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13536 v = (int64_t)v1 * (int64_t)v2; - c001ec0c: 02e786b3 mul a3,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13532 + c001eddc: 02e786b3 mul a3,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13540 if (v == 0 && (v1 | v2) < 0) { - c001ec10: fef1 bnez a3,c001ebec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13532 (discriminator 1) - c001ec12: 8f5d or a4,a4,a5 - c001ec14: 4781 li a5,0 - c001ec16: fc075fe3 bgez a4,c001ebf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13533 + c001ede0: fef1 bnez a3,c001edbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13540 (discriminator 1) + c001ede2: 8f5d or a4,a4,a5 + c001ede4: 4781 li a5,0 + c001ede6: fc075fe3 bgez a4,c001edc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13541 sp[-2] = __JS_NewFloat64(ctx, -0.0); - c001ec1a: 00056797 auipc a5,0x56 - c001ec1e: bc67b787 fld fa5,-1082(a5) # c00747e0 <_erodata+0x60> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13540 + c001edea: 00056797 auipc a5,0x56 + c001edee: c567b787 fld fa5,-938(a5) # c0074a40 <_erodata+0x60> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13548 sp[-2] = __JS_NewFloat64(ctx, (double)v1 / (double)v2); - c001ec22: fef43027 fsd fa5,-32(s0) - c001ec26: 479d li a5,7 - c001ec28: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13541 + c001edf2: fef43027 fsd fa5,-32(s0) + c001edf6: 479d li a5,7 + c001edf8: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13549 return 0; - c001ec2c: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13638 -} - c001ec2e: 70a6 ld ra,104(sp) - c001ec30: 7406 ld s0,96(sp) - c001ec32: 64e6 ld s1,88(sp) - c001ec34: 6946 ld s2,80(sp) - c001ec36: 69a6 ld s3,72(sp) - c001ec38: 6a06 ld s4,64(sp) - c001ec3a: 6165 addi sp,sp,112 - c001ec3c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13540 + c001edfc: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13646 +} + c001edfe: 70a6 ld ra,104(sp) + c001ee00: 7406 ld s0,96(sp) + c001ee02: 64e6 ld s1,88(sp) + c001ee04: 6946 ld s2,80(sp) + c001ee06: 69a6 ld s3,72(sp) + c001ee08: 6a06 ld s4,64(sp) + c001ee0a: 6165 addi sp,sp,112 + c001ee0c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13548 sp[-2] = __JS_NewFloat64(ctx, (double)v1 / (double)v2); - c001ec3e: d20787d3 fcvt.d.w fa5,a5 - c001ec42: d2070753 fcvt.d.w fa4,a4 - c001ec46: 1ae7f7d3 fdiv.d fa5,fa5,fa4 - c001ec4a: bfe1 j c001ec22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13558 + c001ee0e: d20787d3 fcvt.d.w fa5,a5 + c001ee12: d2070753 fcvt.d.w fa4,a4 + c001ee16: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c001ee1a: bfe1 j c001edf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13566 if (v1 < 0 || v2 <= 0) { - c001ec4c: 0007c463 bltz a5,c001ec54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13558 (discriminator 1) - c001ec50: 02e04c63 bgtz a4,c001ec88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13559 + c001ee1c: 0007c463 bltz a5,c001ee24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13566 (discriminator 1) + c001ee20: 02e04c63 bgtz a4,c001ee58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13567 sp[-2] = JS_NewFloat64(ctx, fmod(v1, v2)); - c001ec54: d20705d3 fcvt.d.w fa1,a4 - c001ec58: d2078553 fcvt.d.w fa0,a5 - c001ec5c: 4df380ef jal ra,c005793a + c001ee24: d20705d3 fcvt.d.w fa1,a4 + c001ee28: d2078553 fcvt.d.w fa0,a5 + c001ee2c: 4df380ef jal ra,c0057b0a JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001ec60: c20516d3 fcvt.w.d a3,fa0,rtz + c001ee30: c20516d3 fcvt.w.d a3,fa0,rtz js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13559 - c001ec64: e20507d3 fmv.x.d a5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13567 + c001ee34: e20507d3 fmv.x.d a5,fa0 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ec68: d20687d3 fcvt.d.w fa5,a3 + c001ee38: d20687d3 fcvt.d.w fa5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001ec6c: 0006871b sext.w a4,a3 + c001ee3c: 0006871b sext.w a4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ec70: 86be mv a3,a5 - c001ec72: e2078653 fmv.x.d a2,fa5 - c001ec76: 02c69e63 bne a3,a2,c001ecb2 + c001ee40: 86be mv a3,a5 + c001ee42: e2078653 fmv.x.d a2,fa5 + c001ee46: 02c69e63 bne a3,a2,c001ee82 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c001ec7a: da02 sw zero,52(sp) - c001ec7c: 4781 li a5,0 + c001ee4a: da02 sw zero,52(sp) + c001ee4c: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c001ec7e: d83a sw a4,48(sp) - c001ec80: 37c2 fld fa5,48(sp) + c001ee4e: d83a sw a4,48(sp) + c001ee50: 37c2 fld fa5,48(sp) js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13575 sp[-2] = JS_NewFloat64(ctx, js_pow(v1, v2)); - c001ec82: fef43027 fsd fa5,-32(s0) - c001ec86: b74d j c001ec28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13562 + c001ee52: fef43027 fsd fa5,-32(s0) + c001ee56: b74d j c001edf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13570 v = (int64_t)v1 % (int64_t)v2; - c001ec88: 02e7e6b3 rem a3,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13564 + c001ee58: 02e7e6b3 rem a3,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13572 break; - c001ec8c: b785 j c001ebec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13567 + c001ee5c: b785 j c001edbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13575 sp[-2] = JS_NewFloat64(ctx, js_pow(v1, v2)); - c001ec8e: d20705d3 fcvt.d.w fa1,a4 - c001ec92: d2078553 fcvt.d.w fa0,a5 - c001ec96: a54e60ef jal ra,c0004eea + c001ee5e: d20705d3 fcvt.d.w fa1,a4 + c001ee62: d2078553 fcvt.d.w fa0,a5 + c001ee66: 884e60ef jal ra,c0004eea JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001ec9a: c2051653 fcvt.w.d a2,fa0,rtz + c001ee6a: c2051653 fcvt.w.d a2,fa0,rtz js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13567 - c001ec9e: e20507d3 fmv.x.d a5,fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13575 + c001ee6e: e20507d3 fmv.x.d a5,fa0 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001eca2: d20607d3 fcvt.d.w fa5,a2 + c001ee72: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c001eca6: 0006071b sext.w a4,a2 + c001ee76: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ecaa: 86be mv a3,a5 - c001ecac: e2078653 fmv.x.d a2,fa5 - c001ecb0: b7d9 j c001ec76 + c001ee7a: 86be mv a3,a5 + c001ee7c: e2078653 fmv.x.d a2,fa5 + c001ee80: b7d9 j c001ee46 js_binary_arith_slow(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001ecb2: f83e sd a5,48(sp) - c001ecb4: 0006871b sext.w a4,a3 + c001ee82: f83e sd a5,48(sp) + c001ee84: 0006871b sext.w a4,a3 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c001ecb8: 479d li a5,7 - c001ecba: b7d1 j c001ec7e + c001ee88: 479d li a5,7 + c001ee8a: b7d1 j c001ee4e js_binary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13582 abort(); - c001ecbc: 34f360ef jal ra,c005580a + c001ee8c: 34f360ef jal ra,c00559da JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c001ecc0: d226f7d3 fcvt.d.l fa5,a3 - c001ecc4: 471d li a4,7 - c001ecc6: e20787d3 fmv.x.d a5,fa5 + c001ee90: d226f7d3 fcvt.d.l fa5,a3 + c001ee94: 471d li a4,7 + c001ee96: e20787d3 fmv.x.d a5,fa5 js_binary_arith_slow(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001ecca: b03e fsd fa5,32(sp) - c001eccc: 2781 sext.w a5,a5 - c001ecce: bf05 j c001ebfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13587 + c001ee9a: b03e fsd fa5,32(sp) + c001ee9c: 2781 sext.w a5,a5 + c001ee9e: bf05 j c001edce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13595 if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { - c001ecd0: 57d9 li a5,-10 - c001ecd2: 00f98563 beq s3,a5,c001ecdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13587 (discriminator 1) - c001ecd6: 57d9 li a5,-10 - c001ecd8: 02f59163 bne a1,a5,c001ecfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13589 + c001eea0: 57d9 li a5,-10 + c001eea2: 00f98563 beq s3,a5,c001eeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13595 (discriminator 1) + c001eea6: 57d9 li a5,-10 + c001eea8: 02f59163 bne a1,a5,c001eeca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13597 if (ctx->rt->bigint_ops.binary_arith(ctx, op, sp - 2, op1, op2)) - c001ecdc: 01893783 ld a5,24(s2) - c001ece0: 6862 ld a6,24(sp) - c001ece2: 6682 ld a3,0(sp) - c001ece4: 2207b883 ld a7,544(a5) - c001ece8: 6722 ld a4,8(sp) - c001ecea: 67c2 ld a5,16(sp) - c001ecec: fe040613 addi a2,s0,-32 - c001ecf0: 85a6 mv a1,s1 - c001ecf2: 854a mv a0,s2 - c001ecf4: 9882 jalr a7 - c001ecf6: dd05 beqz a0,c001ec2e - c001ecf8: b579 j c001eb86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13594 + c001eeac: 01893783 ld a5,24(s2) + c001eeb0: 6862 ld a6,24(sp) + c001eeb2: 6682 ld a3,0(sp) + c001eeb4: 2207b883 ld a7,544(a5) + c001eeb8: 6722 ld a4,8(sp) + c001eeba: 67c2 ld a5,16(sp) + c001eebc: fe040613 addi a2,s0,-32 + c001eec0: 85a6 mv a1,s1 + c001eec2: 854a mv a0,s2 + c001eec4: 9882 jalr a7 + c001eec6: dd05 beqz a0,c001edfe + c001eec8: b579 j c001ed56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13602 if (JS_ToFloat64Free(ctx, &d1, op1)) { - c001ecfa: 6602 ld a2,0(sp) - c001ecfc: 66a2 ld a3,8(sp) - c001ecfe: 100c addi a1,sp,32 - c001ed00: 854a mv a0,s2 - c001ed02: 8edfd0ef jal ra,c001c5ee - c001ed06: e6051be3 bnez a0,c001eb7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13598 + c001eeca: 6602 ld a2,0(sp) + c001eecc: 66a2 ld a3,8(sp) + c001eece: 100c addi a1,sp,32 + c001eed0: 854a mv a0,s2 + c001eed2: 8edfd0ef jal ra,c001c7be + c001eed6: e6051be3 bnez a0,c001ed4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13606 if (JS_ToFloat64Free(ctx, &d2, op2)) - c001ed0a: 6642 ld a2,16(sp) - c001ed0c: 66e2 ld a3,24(sp) - c001ed0e: 180c addi a1,sp,48 - c001ed10: 854a mv a0,s2 - c001ed12: 8ddfd0ef jal ra,c001c5ee - c001ed16: e20504e3 beqz a0,c001eb3e - c001ed1a: b5b5 j c001eb86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13605 + c001eeda: 6642 ld a2,16(sp) + c001eedc: 66e2 ld a3,24(sp) + c001eede: 180c addi a1,sp,48 + c001eee0: 854a mv a0,s2 + c001eee2: 8ddfd0ef jal ra,c001c7be + c001eee6: e20504e3 beqz a0,c001ed0e + c001eeea: b5b5 j c001ed56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13613 dr = d1 - d2; - c001ed1c: 3502 fld fa0,32(sp) - c001ed1e: 37c2 fld fa5,48(sp) - c001ed20: 0af57553 fsub.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13631 + c001eeec: 3502 fld fa0,32(sp) + c001eeee: 37c2 fld fa5,48(sp) + c001eef0: 0af57553 fsub.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13639 sp[-2] = __JS_NewFloat64(ctx, dr); - c001ed24: fea43027 fsd fa0,-32(s0) - c001ed28: bdfd j c001ec26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13608 + c001eef4: fea43027 fsd fa0,-32(s0) + c001eef8: bdfd j c001edf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13616 dr = d1 * d2; - c001ed2a: 3502 fld fa0,32(sp) - c001ed2c: 37c2 fld fa5,48(sp) - c001ed2e: 12f57553 fmul.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13609 + c001eefa: 3502 fld fa0,32(sp) + c001eefc: 37c2 fld fa5,48(sp) + c001eefe: 12f57553 fmul.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13617 break; - c001ed32: bfcd j c001ed24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13611 + c001ef02: bfcd j c001eef4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13619 dr = d1 / d2; - c001ed34: 3502 fld fa0,32(sp) - c001ed36: 37c2 fld fa5,48(sp) - c001ed38: 1af57553 fdiv.d fa0,fa0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13612 + c001ef04: 3502 fld fa0,32(sp) + c001ef06: 37c2 fld fa5,48(sp) + c001ef08: 1af57553 fdiv.d fa0,fa0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13620 break; - c001ed3c: b7e5 j c001ed24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13614 + c001ef0c: b7e5 j c001eef4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13622 dr = fmod(d1, d2); - c001ed3e: 35c2 fld fa1,48(sp) - c001ed40: 3502 fld fa0,32(sp) - c001ed42: 3f9380ef jal ra,c005793a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13615 + c001ef0e: 35c2 fld fa1,48(sp) + c001ef10: 3502 fld fa0,32(sp) + c001ef12: 3f9380ef jal ra,c0057b0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13623 break; - c001ed46: bff9 j c001ed24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13626 + c001ef16: bff9 j c001eef4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13634 dr = js_pow(d1, d2); - c001ed48: 35c2 fld fa1,48(sp) - c001ed4a: 3502 fld fa0,32(sp) - c001ed4c: 99ee60ef jal ra,c0004eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13627 + c001ef18: 35c2 fld fa1,48(sp) + c001ef1a: 3502 fld fa0,32(sp) + c001ef1c: fcfe50ef jal ra,c0004eea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13635 break; - c001ed50: bfd1 j c001ed24 + c001ef20: bfd1 j c001eef4 -00000000c001ed52 : +00000000c001ef22 : js_unary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12992 -{ - c001ed52: 711d addi sp,sp,-96 - c001ed54: e8a2 sd s0,80(sp) - c001ed56: e4a6 sd s1,72(sp) - c001ed58: fc4e sd s3,56(sp) - c001ed5a: 84ae mv s1,a1 - c001ed5c: ec86 sd ra,88(sp) - c001ed5e: e0ca sd s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12997 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13000 +{ + c001ef22: 711d addi sp,sp,-96 + c001ef24: e8a2 sd s0,80(sp) + c001ef26: e4a6 sd s1,72(sp) + c001ef28: fc4e sd s3,56(sp) + c001ef2a: 84ae mv s1,a1 + c001ef2c: ec86 sd ra,88(sp) + c001ef2e: e0ca sd s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13005 op1 = sp[-1]; - c001ed60: ff05b583 ld a1,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12992 + c001ef30: ff05b583 ld a1,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13000 { - c001ed64: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12997 + c001ef34: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13005 op1 = sp[-1]; - c001ed66: ff84b603 ld a2,-8(s1) - c001ed6a: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12999 + c001ef36: ff84b603 ld a2,-8(s1) + c001ef3a: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13007 if (JS_TAG_IS_FLOAT64(JS_VALUE_GET_TAG(op1))) - c001ed6c: 499d li s3,7 - c001ed6e: 0006079b sext.w a5,a2 - c001ed72: 03378263 beq a5,s3,c001ed96 - c001ed76: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13014 + c001ef3c: 499d li s3,7 + c001ef3e: 0006079b sext.w a5,a2 + c001ef42: 03378263 beq a5,s3,c001ef66 + c001ef46: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13022 op1 = JS_ToNumericFree(ctx, op1); - c001ed78: bb9ff0ef jal ra,c001e930 - c001ed7c: e02a sd a0,0(sp) - c001ed7e: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13015 + c001ef48: bb9ff0ef jal ra,c001eb00 + c001ef4c: e02a sd a0,0(sp) + c001ef4e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13023 if (JS_IsException(op1)) - c001ed80: 0005879b sext.w a5,a1 - c001ed84: 4619 li a2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13014 + c001ef50: 0005879b sext.w a5,a1 + c001ef54: 4619 li a2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13022 op1 = JS_ToNumericFree(ctx, op1); - c001ed86: 86aa mv a3,a0 - c001ed88: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13015 + c001ef56: 86aa mv a3,a0 + c001ef58: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13023 if (JS_IsException(op1)) - c001ed8a: 0cc78563 beq a5,a2,c001ee54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13018 + c001ef5a: 0cc78563 beq a5,a2,c001f024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13026 switch(tag) { - c001ed8e: c79d beqz a5,c001edbc - c001ed90: 5659 li a2,-10 - c001ed92: 0ac78763 beq a5,a2,c001ee40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13066 + c001ef5e: c79d beqz a5,c001ef8c + c001ef60: 5659 li a2,-10 + c001ef62: 0ac78763 beq a5,a2,c001f010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13074 d = JS_VALUE_GET_FLOAT64(op1); - c001ed96: 08e00793 li a5,142 - c001ed9a: 2782 fld fa5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13067 + c001ef66: 08e00793 li a5,142 + c001ef6a: 2782 fld fa5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13075 switch(op) { - c001ed9c: 00f40a63 beq s0,a5,c001edb0 - c001eda0: 0c87e163 bltu a5,s0,c001ee62 - c001eda4: 08d00793 li a5,141 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13076 + c001ef6c: 00f40a63 beq s0,a5,c001ef80 + c001ef70: 0c87e163 bltu a5,s0,c001f032 + c001ef74: 08d00793 li a5,141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13084 d = -d; - c001eda8: 22f797d3 fneg.d fa5,fa5 - c001edac: 02f41363 bne s0,a5,c001edd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13081 + c001ef78: 22f797d3 fneg.d fa5,fa5 + c001ef7c: 02f41363 bne s0,a5,c001efa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13089 sp[-1] = __JS_NewFloat64(ctx, d); - c001edb0: 479d li a5,7 - c001edb2: fef4b827 fsd fa5,-16(s1) - c001edb6: fef4bc23 sd a5,-8(s1) - c001edba: a085 j c001ee1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13022 + c001ef80: 479d li a5,7 + c001ef82: fef4b827 fsd fa5,-16(s1) + c001ef86: fef4bc23 sd a5,-8(s1) + c001ef8a: a085 j c001efea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13030 v64 = JS_VALUE_GET_INT(op1); - c001edbc: 08e00793 li a5,142 - c001edc0: 4702 lw a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13023 + c001ef8c: 08e00793 li a5,142 + c001ef90: 4702 lw a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13031 switch(op) { - c001edc2: 02f40363 beq s0,a5,c001ede8 - c001edc6: 0087e863 bltu a5,s0,c001edd6 - c001edca: 08d00793 li a5,141 - c001edce: 02f40d63 beq s0,a5,c001ee08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13040 + c001ef92: 02f40363 beq s0,a5,c001efb8 + c001ef96: 0087e863 bltu a5,s0,c001efa6 + c001ef9a: 08d00793 li a5,141 + c001ef9e: 02f40d63 beq s0,a5,c001efd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13048 abort(); - c001edd2: 239360ef jal ra,c005580a - c001edd6: f714069b addiw a3,s0,-143 - c001edda: 4785 li a5,1 - c001eddc: fed7ebe3 bltu a5,a3,c001edd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13026 + c001efa2: 239360ef jal ra,c00559da + c001efa6: f714069b addiw a3,s0,-143 + c001efaa: 4785 li a5,1 + c001efac: fed7ebe3 bltu a5,a3,c001efa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13034 v = 2 * (op - OP_dec) - 1; - c001ede0: 0016941b slliw s0,a3,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13027 + c001efb0: 0016941b slliw s0,a3,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13035 v64 += v; - c001ede4: 347d addiw s0,s0,-1 - c001ede6: 9722 add a4,a4,s0 + c001efb4: 347d addiw s0,s0,-1 + c001efb6: 9722 add a4,a4,s0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c001ede8: 0007079b sext.w a5,a4 - c001edec: 04f71263 bne a4,a5,c001ee30 + c001efb8: 0007079b sext.w a5,a4 + c001efbc: 04f71263 bne a4,a5,c001f000 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001edf0: d202 sw zero,36(sp) - c001edf2: d03e sw a5,32(sp) - c001edf4: 7702 ld a4,32(sp) - c001edf6: e83a sd a4,16(sp) - c001edf8: 4701 li a4,0 + c001efc0: d202 sw zero,36(sp) + c001efc2: d03e sw a5,32(sp) + c001efc4: 7702 ld a4,32(sp) + c001efc6: e83a sd a4,16(sp) + c001efc8: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c001edfa: c83e sw a5,16(sp) - c001edfc: 27c2 fld fa5,16(sp) + c001efca: c83e sw a5,16(sp) + c001efcc: 27c2 fld fa5,16(sp) js_unary_arith_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13050 sp[-1] = JS_NewInt64(ctx, v64); - c001edfe: fee4bc23 sd a4,-8(s1) - c001ee02: fef4b827 fsd fa5,-16(s1) - c001ee06: a811 j c001ee1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13032 + c001efce: fee4bc23 sd a4,-8(s1) + c001efd2: fef4b827 fsd fa5,-16(s1) + c001efd6: a811 j c001efea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13040 if (v64 == 0) { - c001ee08: e30d bnez a4,c001ee2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13033 + c001efd8: e30d bnez a4,c001effa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13041 sp[-1] = __JS_NewFloat64(ctx, -0.0); - c001ee0a: 00056797 auipc a5,0x56 - c001ee0e: 9d67b787 fld fa5,-1578(a5) # c00747e0 <_erodata+0x60> - c001ee12: fef4b827 fsd fa5,-16(s1) - c001ee16: ff34bc23 sd s3,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13085 + c001efda: 00056797 auipc a5,0x56 + c001efde: a667b787 fld fa5,-1434(a5) # c0074a40 <_erodata+0x60> + c001efe2: fef4b827 fsd fa5,-16(s1) + c001efe6: ff34bc23 sd s3,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13093 return 0; - c001ee1a: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13089 + c001efea: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13097 } - c001ee1c: 60e6 ld ra,88(sp) - c001ee1e: 6446 ld s0,80(sp) - c001ee20: 64a6 ld s1,72(sp) - c001ee22: 6906 ld s2,64(sp) - c001ee24: 79e2 ld s3,56(sp) - c001ee26: 6125 addi sp,sp,96 - c001ee28: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13036 + c001efec: 60e6 ld ra,88(sp) + c001efee: 6446 ld s0,80(sp) + c001eff0: 64a6 ld s1,72(sp) + c001eff2: 6906 ld s2,64(sp) + c001eff4: 79e2 ld s3,56(sp) + c001eff6: 6125 addi sp,sp,96 + c001eff8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13044 v64 = -v64; - c001ee2a: 40e00733 neg a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13038 + c001effa: 40e00733 neg a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13046 break; - c001ee2e: bf6d j c001ede8 + c001effe: bf6d j c001efb8 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c001ee30: d22777d3 fcvt.d.l fa5,a4 - c001ee34: 471d li a4,7 - c001ee36: e20787d3 fmv.x.d a5,fa5 + c001f000: d22777d3 fcvt.d.l fa5,a4 + c001f004: 471d li a4,7 + c001f006: e20787d3 fmv.x.d a5,fa5 js_unary_arith_slow(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001ee3a: a83e fsd fa5,16(sp) - c001ee3c: 2781 sext.w a5,a5 - c001ee3e: bf75 j c001edfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13047 + c001f00a: a83e fsd fa5,16(sp) + c001f00c: 2781 sext.w a5,a5 + c001f00e: bf75 j c001efca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13055 if (ctx->rt->bigint_ops.unary_arith(ctx, sp - 1, op, op1)) - c001ee40: 01893783 ld a5,24(s2) - c001ee44: 8622 mv a2,s0 - c001ee46: ff048593 addi a1,s1,-16 - c001ee4a: 2187b783 ld a5,536(a5) - c001ee4e: 854a mv a0,s2 - c001ee50: 9782 jalr a5 - c001ee52: d569 beqz a0,c001ee1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13087 + c001f010: 01893783 ld a5,24(s2) + c001f014: 8622 mv a2,s0 + c001f016: ff048593 addi a1,s1,-16 + c001f01a: 2187b783 ld a5,536(a5) + c001f01e: 854a mv a0,s2 + c001f020: 9782 jalr a5 + c001f022: d569 beqz a0,c001efec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13095 sp[-1] = JS_UNDEFINED; - c001ee54: 478d li a5,3 - c001ee56: fe04b823 sd zero,-16(s1) - c001ee5a: fef4bc23 sd a5,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13088 + c001f024: 478d li a5,3 + c001f026: fe04b823 sd zero,-16(s1) + c001f02a: fef4bc23 sd a5,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13096 return -1; - c001ee5e: 557d li a0,-1 - c001ee60: bf75 j c001ee1c - c001ee62: f714071b addiw a4,s0,-143 - c001ee66: 4785 li a5,1 - c001ee68: f6e7e5e3 bltu a5,a4,c001edd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13070 + c001f02e: 557d li a0,-1 + c001f030: bf75 j c001efec + c001f032: f714071b addiw a4,s0,-143 + c001f036: 4785 li a5,1 + c001f038: f6e7e5e3 bltu a5,a4,c001efa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13078 v = 2 * (op - OP_dec) - 1; - c001ee6c: 0017141b slliw s0,a4,0x1 - c001ee70: 347d addiw s0,s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13071 + c001f03c: 0017141b slliw s0,a4,0x1 + c001f040: 347d addiw s0,s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13079 d += v; - c001ee72: d2040753 fcvt.d.w fa4,s0 - c001ee76: 02e7f7d3 fadd.d fa5,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13072 + c001f042: d2040753 fcvt.d.w fa4,s0 + c001f046: 02e7f7d3 fadd.d fa5,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13080 break; - c001ee7a: bf1d j c001edb0 + c001f04a: bf1d j c001ef80 -00000000c001ee7c : +00000000c001f04c : js_not_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13117 { - c001ee7c: 711d addi sp,sp,-96 - c001ee7e: e8a2 sd s0,80(sp) - c001ee80: e4a6 sd s1,72(sp) - c001ee82: ec86 sd ra,88(sp) - c001ee84: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13126 + c001f04c: 711d addi sp,sp,-96 + c001f04e: e8a2 sd s0,80(sp) + c001f050: e4a6 sd s1,72(sp) + c001f052: ec86 sd ra,88(sp) + c001f054: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13134 op1 = JS_ToNumericFree(ctx, op1); - c001ee86: ff843603 ld a2,-8(s0) - c001ee8a: ff05b583 ld a1,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13109 + c001f056: ff843603 ld a2,-8(s0) + c001f05a: ff05b583 ld a1,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13117 { - c001ee8e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13126 + c001f05e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13134 op1 = JS_ToNumericFree(ctx, op1); - c001ee90: aa1ff0ef jal ra,c001e930 - c001ee94: e82a sd a0,16(sp) - c001ee96: ec2e sd a1,24(sp) + c001f060: aa1ff0ef jal ra,c001eb00 + c001f064: e82a sd a0,16(sp) + c001f066: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c001ee98: 0005879b sext.w a5,a1 + c001f068: 0005879b sext.w a5,a1 js_not_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13135 if (JS_IsException(op1)) - c001ee9c: 4619 li a2,6 - c001ee9e: 02c78163 beq a5,a2,c001eec0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13129 (discriminator 1) + c001f06c: 4619 li a2,6 + c001f06e: 02c78163 beq a5,a2,c001f090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13137 (discriminator 1) if (is_math_mode(ctx) || JS_VALUE_GET_TAG(op1) == JS_TAG_BIG_INT) { - c001eea2: 5659 li a2,-10 - c001eea4: 86aa mv a3,a0 - c001eea6: 872e mv a4,a1 - c001eea8: 02c79363 bne a5,a2,c001eece -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13130 + c001f072: 5659 li a2,-10 + c001f074: 86aa mv a3,a0 + c001f076: 872e mv a4,a1 + c001f078: 02c79363 bne a5,a2,c001f09e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13138 if (ctx->rt->bigint_ops.unary_arith(ctx, sp - 1, OP_not, op1)) - c001eeac: 6c9c ld a5,24(s1) - c001eeae: 09600613 li a2,150 - c001eeb2: ff040593 addi a1,s0,-16 - c001eeb6: 2187b783 ld a5,536(a5) - c001eeba: 8526 mv a0,s1 - c001eebc: 9782 jalr a5 - c001eebe: c90d beqz a0,c001eef0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13140 + c001f07c: 6c9c ld a5,24(s1) + c001f07e: 09600613 li a2,150 + c001f082: ff040593 addi a1,s0,-16 + c001f086: 2187b783 ld a5,536(a5) + c001f08a: 8526 mv a0,s1 + c001f08c: 9782 jalr a5 + c001f08e: c90d beqz a0,c001f0c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13148 sp[-1] = JS_UNDEFINED; - c001eec0: 478d li a5,3 - c001eec2: fe043823 sd zero,-16(s0) - c001eec6: fef43c23 sd a5,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13141 + c001f090: 478d li a5,3 + c001f092: fe043823 sd zero,-16(s0) + c001f096: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13149 return -1; - c001eeca: 557d li a0,-1 - c001eecc: a015 j c001eef0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13134 + c001f09a: 557d li a0,-1 + c001f09c: a015 j c001f0c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13142 if (unlikely(JS_ToInt32Free(ctx, &v1, op1))) - c001eece: 862a mv a2,a0 - c001eed0: 86ae mv a3,a1 - c001eed2: 8526 mv a0,s1 - c001eed4: 006c addi a1,sp,12 - c001eed6: b9efd0ef jal ra,c001c274 - c001eeda: f17d bnez a0,c001eec0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13136 + c001f09e: 862a mv a2,a0 + c001f0a0: 86ae mv a3,a1 + c001f0a2: 8526 mv a0,s1 + c001f0a4: 006c addi a1,sp,12 + c001f0a6: b9efd0ef jal ra,c001c444 + c001f0aa: f17d bnez a0,c001f090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13144 sp[-1] = JS_NewInt32(ctx, ~v1); - c001eedc: 47b2 lw a5,12(sp) + c001f0ac: 47b2 lw a5,12(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001eede: f802 sd zero,48(sp) + c001f0ae: f802 sd zero,48(sp) js_not_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13136 - c001eee0: fe043c23 sd zero,-8(s0) - c001eee4: fff7c793 not a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13144 + c001f0b0: fe043c23 sd zero,-8(s0) + c001f0b4: fff7c793 not a5,a5 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001eee8: d83e sw a5,48(sp) - c001eeea: 77c2 ld a5,48(sp) + c001f0b8: d83e sw a5,48(sp) + c001f0ba: 77c2 ld a5,48(sp) js_not_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13136 - c001eeec: fef43823 sd a5,-16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13144 + c001f0bc: fef43823 sd a5,-16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13150 } - c001eef0: 60e6 ld ra,88(sp) - c001eef2: 6446 ld s0,80(sp) - c001eef4: 64a6 ld s1,72(sp) - c001eef6: 6125 addi sp,sp,96 - c001eef8: 8082 ret + c001f0c0: 60e6 ld ra,88(sp) + c001f0c2: 6446 ld s0,80(sp) + c001f0c4: 64a6 ld s1,72(sp) + c001f0c6: 6125 addi sp,sp,96 + c001f0c8: 8082 ret -00000000c001eefa : +00000000c001f0ca : js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14289 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14297 { - c001eefa: 7119 addi sp,sp,-128 - c001eefc: f8a2 sd s0,112(sp) - c001eefe: f4a6 sd s1,104(sp) - c001ef00: f0ca sd s2,96(sp) - c001ef02: ecce sd s3,88(sp) - c001ef04: fc86 sd ra,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14294 + c001f0ca: 7119 addi sp,sp,-128 + c001f0cc: f8a2 sd s0,112(sp) + c001f0ce: f4a6 sd s1,104(sp) + c001f0d0: f0ca sd s2,96(sp) + c001f0d2: ecce sd s3,88(sp) + c001f0d4: fc86 sd ra,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14302 op2 = sp[-1]; - c001ef06: ff05b783 ld a5,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14289 + c001f0d6: ff05b783 ld a5,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14297 { - c001ef0a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14295 + c001f0da: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14303 op1 = JS_ToNumericFree(ctx, op1); - c001ef0c: fe843603 ld a2,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14294 + c001f0dc: fe843603 ld a2,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14302 op2 = sp[-1]; - c001ef10: f03e sd a5,32(sp) - c001ef12: ff85b783 ld a5,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14295 + c001f0e0: f03e sd a5,32(sp) + c001f0e2: ff85b783 ld a5,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14303 op1 = JS_ToNumericFree(ctx, op1); - c001ef16: fe05b583 ld a1,-32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14289 + c001f0e6: fe05b583 ld a1,-32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14297 { - c001ef1a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14294 + c001f0ea: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14302 op2 = sp[-1]; - c001ef1c: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14295 + c001f0ec: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14303 op1 = JS_ToNumericFree(ctx, op1); - c001ef1e: a13ff0ef jal ra,c001e930 - c001ef22: e82a sd a0,16(sp) - c001ef24: ec2e sd a1,24(sp) + c001f0ee: a13ff0ef jal ra,c001eb00 + c001f0f2: e82a sd a0,16(sp) + c001f0f4: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c001ef26: 0005891b sext.w s2,a1 + c001f0f6: 0005891b sext.w s2,a1 js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14304 if (JS_IsException(op1)) { - c001ef2a: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14297 + c001f0fa: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14305 JS_FreeValue(ctx, op2); - c001ef2c: 7582 ld a1,32(sp) - c001ef2e: 7622 ld a2,40(sp) - c001ef30: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14296 + c001f0fc: 7582 ld a1,32(sp) + c001f0fe: 7622 ld a2,40(sp) + c001f100: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14304 if (JS_IsException(op1)) { - c001ef32: 03391563 bne s2,s3,c001ef5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14311 + c001f102: 03391563 bne s2,s3,c001f12c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14319 JS_FreeValue(ctx, op2); - c001ef36: c03e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14321 + c001f106: b21e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14329 sp[-2] = JS_UNDEFINED; - c001ef3a: 478d li a5,3 - c001ef3c: fe043023 sd zero,-32(s0) - c001ef40: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14322 + c001f10a: 478d li a5,3 + c001f10c: fe043023 sd zero,-32(s0) + c001f110: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14330 sp[-1] = JS_UNDEFINED; - c001ef44: fe043823 sd zero,-16(s0) - c001ef48: fef43c23 sd a5,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14323 + c001f114: fe043823 sd zero,-16(s0) + c001f118: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14331 return -1; - c001ef4c: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14324 -} - c001ef4e: 70e6 ld ra,120(sp) - c001ef50: 7446 ld s0,112(sp) - c001ef52: 74a6 ld s1,104(sp) - c001ef54: 7906 ld s2,96(sp) - c001ef56: 69e6 ld s3,88(sp) - c001ef58: 6109 addi sp,sp,128 - c001ef5a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14300 + c001f11c: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14332 +} + c001f11e: 70e6 ld ra,120(sp) + c001f120: 7446 ld s0,112(sp) + c001f122: 74a6 ld s1,104(sp) + c001f124: 7906 ld s2,96(sp) + c001f126: 69e6 ld s3,88(sp) + c001f128: 6109 addi sp,sp,128 + c001f12a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14308 op2 = JS_ToNumericFree(ctx, op2); - c001ef5c: 9d5ff0ef jal ra,c001e930 - c001ef60: f42e sd a1,40(sp) - c001ef62: f02a sd a0,32(sp) + c001f12c: 9d5ff0ef jal ra,c001eb00 + c001f130: f42e sd a1,40(sp) + c001f132: f02a sd a0,32(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c001ef64: 2581 sext.w a1,a1 + c001f134: 2581 sext.w a1,a1 js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14309 if (JS_IsException(op2)) { - c001ef66: 01359663 bne a1,s3,c001ef72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14302 + c001f136: 01359663 bne a1,s3,c001f142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14310 JS_FreeValue(ctx, op1); - c001ef6a: 65c2 ld a1,16(sp) - c001ef6c: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14311 + c001f13a: 65c2 ld a1,16(sp) + c001f13c: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14319 JS_FreeValue(ctx, op2); - c001ef6e: 8526 mv a0,s1 - c001ef70: b7d9 j c001ef36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14306 (discriminator 1) + c001f13e: 8526 mv a0,s1 + c001f140: b7d9 j c001f106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14314 (discriminator 1) if (!is_math_mode(ctx) && - c001ef72: 57d9 li a5,-10 - c001ef74: 00f90463 beq s2,a5,c001ef7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14307 + c001f142: 57d9 li a5,-10 + c001f144: 00f90463 beq s2,a5,c001f14c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14315 (JS_VALUE_GET_TAG(op1) == JS_TAG_BIG_INT || - c001ef78: 02f59163 bne a1,a5,c001ef9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14309 + c001f148: 02f59163 bne a1,a5,c001f16a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14317 JS_ThrowTypeError(ctx, "bigint operands are forbidden for >>>"); - c001ef7c: 0003f597 auipc a1,0x3f - c001ef80: 57458593 addi a1,a1,1396 # c005e4f0 - c001ef84: 8526 mv a0,s1 - c001ef86: c70f40ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14310 + c001f14c: 0003f597 auipc a1,0x3f + c001f150: 60458593 addi a1,a1,1540 # c005e750 + c001f154: 8526 mv a0,s1 + c001f156: b8ef40ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14318 JS_FreeValue(ctx, op1); - c001ef8a: 65c2 ld a1,16(sp) - c001ef8c: 6662 ld a2,24(sp) - c001ef8e: 8526 mv a0,s1 - c001ef90: ba9e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14311 + c001f15a: 65c2 ld a1,16(sp) + c001f15c: 6662 ld a2,24(sp) + c001f15e: 8526 mv a0,s1 + c001f160: ac7e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14319 JS_FreeValue(ctx, op2); - c001ef94: 7582 ld a1,32(sp) - c001ef96: 7622 ld a2,40(sp) - c001ef98: bfd9 j c001ef6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14315 + c001f164: 7582 ld a1,32(sp) + c001f166: 7622 ld a2,40(sp) + c001f168: bfd9 j c001f13e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14323 JS_ToUint32Free(ctx, &v1, op1); - c001ef9a: 6642 ld a2,16(sp) - c001ef9c: 66e2 ld a3,24(sp) + c001f16a: 6642 ld a2,16(sp) + c001f16c: 66e2 ld a3,24(sp) JS_ToUint32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11064 return JS_ToInt32Free(ctx, (int32_t *)pres, val); - c001ef9e: 002c addi a1,sp,8 - c001efa0: 8526 mv a0,s1 - c001efa2: e0b2 sd a2,64(sp) - c001efa4: e4b6 sd a3,72(sp) - c001efa6: acefd0ef jal ra,c001c274 + c001f16e: 002c addi a1,sp,8 + c001f170: 8526 mv a0,s1 + c001f172: e0b2 sd a2,64(sp) + c001f174: e4b6 sd a3,72(sp) + c001f176: acefd0ef jal ra,c001c444 js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14316 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14324 JS_ToUint32Free(ctx, &v2, op2); - c001efaa: 7602 ld a2,32(sp) - c001efac: 76a2 ld a3,40(sp) + c001f17a: 7602 ld a2,32(sp) + c001f17c: 76a2 ld a3,40(sp) JS_ToUint32Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11064 return JS_ToInt32Free(ctx, (int32_t *)pres, val); - c001efae: 006c addi a1,sp,12 - c001efb0: 8526 mv a0,s1 - c001efb2: e0b2 sd a2,64(sp) - c001efb4: e4b6 sd a3,72(sp) - c001efb6: abefd0ef jal ra,c001c274 + c001f17e: 006c addi a1,sp,12 + c001f180: 8526 mv a0,s1 + c001f182: e0b2 sd a2,64(sp) + c001f184: e4b6 sd a3,72(sp) + c001f186: abefd0ef jal ra,c001c444 js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14325 r = v1 >> (v2 & 0x1f); - c001efba: 47b2 lw a5,12(sp) - c001efbc: 4722 lw a4,8(sp) - c001efbe: 00f757bb srlw a5,a4,a5 + c001f18a: 47b2 lw a5,12(sp) + c001f18c: 4722 lw a4,8(sp) + c001f18e: 00f757bb srlw a5,a4,a5 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c001efc2: 0007cf63 bltz a5,c001efe0 + c001f192: 0007cf63 bltz a5,c001f1b0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001efc6: c282 sw zero,68(sp) - c001efc8: c0be sw a5,64(sp) - c001efca: 6706 ld a4,64(sp) - c001efcc: f83a sd a4,48(sp) - c001efce: 4701 li a4,0 + c001f196: c282 sw zero,68(sp) + c001f198: c0be sw a5,64(sp) + c001f19a: 6706 ld a4,64(sp) + c001f19c: f83a sd a4,48(sp) + c001f19e: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c001efd0: d83e sw a5,48(sp) - c001efd2: 37c2 fld fa5,48(sp) + c001f1a0: d83e sw a5,48(sp) + c001f1a2: 37c2 fld fa5,48(sp) js_shr_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14326 sp[-2] = JS_NewUint32(ctx, r); - c001efd4: fee43423 sd a4,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14319 + c001f1a4: fee43423 sd a4,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14327 return 0; - c001efd8: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14318 + c001f1a8: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14326 sp[-2] = JS_NewUint32(ctx, r); - c001efda: fef43027 fsd fa5,-32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14319 + c001f1aa: fef43027 fsd fa5,-32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14327 return 0; - c001efde: bf85 j c001ef4e + c001f1ae: bf85 j c001f11e JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c001efe0: d21787d3 fcvt.d.wu fa5,a5 - c001efe4: 471d li a4,7 - c001efe6: e20787d3 fmv.x.d a5,fa5 + c001f1b0: d21787d3 fcvt.d.wu fa5,a5 + c001f1b4: 471d li a4,7 + c001f1b6: e20787d3 fmv.x.d a5,fa5 js_shr_slow(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001efea: b83e fsd fa5,48(sp) - c001efec: 2781 sext.w a5,a5 - c001efee: b7cd j c001efd0 + c001f1ba: b83e fsd fa5,48(sp) + c001f1bc: 2781 sext.w a5,a5 + c001f1be: b7cd j c001f1a0 -00000000c001eff0 : +00000000c001f1c0 : js_binary_logic_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13762 -{ - c001eff0: 7119 addi sp,sp,-128 - c001eff2: f8a2 sd s0,112(sp) - c001eff4: f4a6 sd s1,104(sp) - c001eff6: f0ca sd s2,96(sp) - c001eff8: ecce sd s3,88(sp) - c001effa: e8d2 sd s4,80(sp) - c001effc: fc86 sd ra,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13770 +{ + c001f1c0: 7119 addi sp,sp,-128 + c001f1c2: f8a2 sd s0,112(sp) + c001f1c4: f4a6 sd s1,104(sp) + c001f1c6: f0ca sd s2,96(sp) + c001f1c8: ecce sd s3,88(sp) + c001f1ca: e8d2 sd s4,80(sp) + c001f1cc: fc86 sd ra,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13776 op2 = sp[-1]; - c001effe: ff05b783 ld a5,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13762 + c001f1ce: ff05b783 ld a5,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13770 { - c001f002: 842e mv s0,a1 - c001f004: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13768 + c001f1d2: 842e mv s0,a1 + c001f1d4: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13776 op2 = sp[-1]; - c001f006: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13793 + c001f1d6: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13801 op1 = JS_ToNumericFree(ctx, op1); - c001f008: fe843603 ld a2,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13768 + c001f1d8: fe843603 ld a2,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13776 op2 = sp[-1]; - c001f00c: ff85b783 ld a5,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13793 + c001f1dc: ff85b783 ld a5,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13801 op1 = JS_ToNumericFree(ctx, op1); - c001f010: fe05b583 ld a1,-32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13762 + c001f1e0: fe05b583 ld a1,-32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13770 { - c001f014: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13768 + c001f1e4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13776 op2 = sp[-1]; - c001f016: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13793 + c001f1e6: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13801 op1 = JS_ToNumericFree(ctx, op1); - c001f018: 919ff0ef jal ra,c001e930 - c001f01c: e82a sd a0,16(sp) - c001f01e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13794 + c001f1e8: 919ff0ef jal ra,c001eb00 + c001f1ec: e82a sd a0,16(sp) + c001f1ee: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13802 if (JS_IsException(op1)) { - c001f020: 0005899b sext.w s3,a1 - c001f024: 4a19 li s4,6 - c001f026: 03499263 bne s3,s4,c001f04a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13795 + c001f1f0: 0005899b sext.w s3,a1 + c001f1f4: 4a19 li s4,6 + c001f1f6: 03499263 bne s3,s4,c001f21a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13803 JS_FreeValue(ctx, op2); - c001f02a: 7582 ld a1,32(sp) - c001f02c: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13800 + c001f1fa: 7582 ld a1,32(sp) + c001f1fc: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13808 JS_FreeValue(ctx, op1); - c001f02e: 8526 mv a0,s1 - c001f030: b09e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13850 + c001f1fe: 8526 mv a0,s1 + c001f200: a27e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13858 sp[-2] = JS_UNDEFINED; - c001f034: 478d li a5,3 - c001f036: fe043023 sd zero,-32(s0) - c001f03a: fef43423 sd a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13851 + c001f204: 478d li a5,3 + c001f206: fe043023 sd zero,-32(s0) + c001f20a: fef43423 sd a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13859 sp[-1] = JS_UNDEFINED; - c001f03e: fe043823 sd zero,-16(s0) - c001f042: fef43c23 sd a5,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13852 + c001f20e: fe043823 sd zero,-16(s0) + c001f212: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13860 return -1; - c001f046: 557d li a0,-1 - c001f048: a05d j c001f0ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13798 + c001f216: 557d li a0,-1 + c001f218: a05d j c001f2be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13806 op2 = JS_ToNumericFree(ctx, op2); - c001f04a: 7582 ld a1,32(sp) - c001f04c: 7622 ld a2,40(sp) - c001f04e: 8526 mv a0,s1 - c001f050: 8e1ff0ef jal ra,c001e930 - c001f054: f02a sd a0,32(sp) - c001f056: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13799 + c001f21a: 7582 ld a1,32(sp) + c001f21c: 7622 ld a2,40(sp) + c001f21e: 8526 mv a0,s1 + c001f220: 8e1ff0ef jal ra,c001eb00 + c001f224: f02a sd a0,32(sp) + c001f226: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13807 if (JS_IsException(op2)) { - c001f058: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13798 + c001f228: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13806 op2 = JS_ToNumericFree(ctx, op2); - c001f05c: 87aa mv a5,a0 - c001f05e: 882e mv a6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13799 + c001f22c: 87aa mv a5,a0 + c001f22e: 882e mv a6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13807 if (JS_IsException(op2)) { - c001f060: 01471563 bne a4,s4,c001f06a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13800 + c001f230: 01471563 bne a4,s4,c001f23a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13808 JS_FreeValue(ctx, op1); - c001f064: 65c2 ld a1,16(sp) - c001f066: 6662 ld a2,24(sp) - c001f068: b7d9 j c001f02e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13809 + c001f234: 65c2 ld a1,16(sp) + c001f236: 6662 ld a2,24(sp) + c001f238: b7d9 j c001f1fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13817 if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { - c001f06a: 56d9 li a3,-10 - c001f06c: 04d98263 beq s3,a3,c001f0b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13809 (discriminator 1) - c001f070: 04d70263 beq a4,a3,c001f0b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13821 + c001f23a: 56d9 li a3,-10 + c001f23c: 04d98263 beq s3,a3,c001f280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13817 (discriminator 1) + c001f240: 04d70263 beq a4,a3,c001f284 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13829 if (unlikely(JS_ToInt32Free(ctx, (int32_t *)&v1, op1))) { - c001f074: 6642 ld a2,16(sp) - c001f076: 66e2 ld a3,24(sp) - c001f078: 002c addi a1,sp,8 - c001f07a: 8526 mv a0,s1 - c001f07c: 9f8fd0ef jal ra,c001c274 - c001f080: f54d bnez a0,c001f02a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13825 + c001f244: 6642 ld a2,16(sp) + c001f246: 66e2 ld a3,24(sp) + c001f248: 002c addi a1,sp,8 + c001f24a: 8526 mv a0,s1 + c001f24c: 9f8fd0ef jal ra,c001c444 + c001f250: f54d bnez a0,c001f1fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13833 if (unlikely(JS_ToInt32Free(ctx, (int32_t *)&v2, op2))) - c001f082: 7602 ld a2,32(sp) - c001f084: 76a2 ld a3,40(sp) - c001f086: 006c addi a1,sp,12 - c001f088: 8526 mv a0,s1 - c001f08a: 9eafd0ef jal ra,c001c274 - c001f08e: f15d bnez a0,c001f034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13827 + c001f252: 7602 ld a2,32(sp) + c001f254: 76a2 ld a3,40(sp) + c001f256: 006c addi a1,sp,12 + c001f258: 8526 mv a0,s1 + c001f25a: 9eafd0ef jal ra,c001c444 + c001f25e: f15d bnez a0,c001f204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13835 switch(op) { - c001f090: 0ae00793 li a5,174 - c001f094: 0af90263 beq s2,a5,c001f138 - c001f098: 0727e363 bltu a5,s2,c001f0fe - c001f09c: 0a100793 li a5,161 - c001f0a0: 06f90b63 beq s2,a5,c001f116 - c001f0a4: 0a200793 li a5,162 - c001f0a8: 08f90363 beq s2,a5,c001f12e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13844 + c001f260: 0ae00793 li a5,174 + c001f264: 0af90263 beq s2,a5,c001f308 + c001f268: 0727e363 bltu a5,s2,c001f2ce + c001f26c: 0a100793 li a5,161 + c001f270: 06f90b63 beq s2,a5,c001f2e6 + c001f274: 0a200793 li a5,162 + c001f278: 08f90363 beq s2,a5,c001f2fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13852 abort(); - c001f0ac: 75e360ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13810 + c001f27c: 75e360ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13818 if (tag1 != tag2) { - c001f0b0: 03370463 beq a4,s3,c001f0d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13811 + c001f280: 03370463 beq a4,s3,c001f2a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13819 JS_FreeValue(ctx, op1); - c001f0b4: 65c2 ld a1,16(sp) - c001f0b6: 6662 ld a2,24(sp) - c001f0b8: 8526 mv a0,s1 - c001f0ba: a7fe80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13812 + c001f284: 65c2 ld a1,16(sp) + c001f286: 6662 ld a2,24(sp) + c001f288: 8526 mv a0,s1 + c001f28a: 99de80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13820 JS_FreeValue(ctx, op2); - c001f0be: 7582 ld a1,32(sp) - c001f0c0: 7622 ld a2,40(sp) - c001f0c2: 8526 mv a0,s1 - c001f0c4: a75e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13813 + c001f28e: 7582 ld a1,32(sp) + c001f290: 7622 ld a2,40(sp) + c001f292: 8526 mv a0,s1 + c001f294: 993e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13821 JS_ThrowTypeError(ctx, "both operands must be bigint"); - c001f0c8: 8526 mv a0,s1 - c001f0ca: 0003f597 auipc a1,0x3f - c001f0ce: 44e58593 addi a1,a1,1102 # c005e518 - c001f0d2: b24f40ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13814 + c001f298: 8526 mv a0,s1 + c001f29a: 0003f597 auipc a1,0x3f + c001f29e: 4de58593 addi a1,a1,1246 # c005e778 + c001f2a2: a42f40ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13822 goto exception; - c001f0d6: bfb9 j c001f034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13817 + c001f2a6: bfb9 j c001f204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13825 if (ctx->rt->bigint_ops.binary_arith(ctx, op, sp - 2, op1, op2)) - c001f0d8: 6c98 ld a4,24(s1) - c001f0da: 66c2 ld a3,16(sp) - c001f0dc: fe040613 addi a2,s0,-32 - c001f0e0: 22073883 ld a7,544(a4) - c001f0e4: 6762 ld a4,24(sp) - c001f0e6: 85ca mv a1,s2 - c001f0e8: 8526 mv a0,s1 - c001f0ea: 9882 jalr a7 - c001f0ec: f521 bnez a0,c001f034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13853 -} - c001f0ee: 70e6 ld ra,120(sp) - c001f0f0: 7446 ld s0,112(sp) - c001f0f2: 74a6 ld s1,104(sp) - c001f0f4: 7906 ld s2,96(sp) - c001f0f6: 69e6 ld s3,88(sp) - c001f0f8: 6a46 ld s4,80(sp) - c001f0fa: 6109 addi sp,sp,128 - c001f0fc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13827 + c001f2a8: 6c98 ld a4,24(s1) + c001f2aa: 66c2 ld a3,16(sp) + c001f2ac: fe040613 addi a2,s0,-32 + c001f2b0: 22073883 ld a7,544(a4) + c001f2b4: 6762 ld a4,24(sp) + c001f2b6: 85ca mv a1,s2 + c001f2b8: 8526 mv a0,s1 + c001f2ba: 9882 jalr a7 + c001f2bc: f521 bnez a0,c001f204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13861 +} + c001f2be: 70e6 ld ra,120(sp) + c001f2c0: 7446 ld s0,112(sp) + c001f2c2: 74a6 ld s1,104(sp) + c001f2c4: 7906 ld s2,96(sp) + c001f2c6: 69e6 ld s3,88(sp) + c001f2c8: 6a46 ld s4,80(sp) + c001f2ca: 6109 addi sp,sp,128 + c001f2cc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13835 switch(op) { - c001f0fe: 0af00793 li a5,175 - c001f102: 04f90063 beq s2,a5,c001f142 - c001f106: 0b000793 li a5,176 - c001f10a: faf911e3 bne s2,a5,c001f0ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13838 + c001f2ce: 0af00793 li a5,175 + c001f2d2: 04f90063 beq s2,a5,c001f312 + c001f2d6: 0b000793 li a5,176 + c001f2da: faf911e3 bne s2,a5,c001f27c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13846 r = v1 | v2; - c001f10e: 47a2 lw a5,8(sp) - c001f110: 4732 lw a4,12(sp) - c001f112: 8fd9 or a5,a5,a4 - c001f114: a02d j c001f13e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13829 + c001f2de: 47a2 lw a5,8(sp) + c001f2e0: 4732 lw a4,12(sp) + c001f2e2: 8fd9 or a5,a5,a4 + c001f2e4: a02d j c001f30e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13837 r = v1 << (v2 & 0x1f); - c001f116: 4732 lw a4,12(sp) - c001f118: 47a2 lw a5,8(sp) - c001f11a: 00e797bb sllw a5,a5,a4 + c001f2e6: 4732 lw a4,12(sp) + c001f2e8: 47a2 lw a5,8(sp) + c001f2ea: 00e797bb sllw a5,a5,a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001f11e: e082 sd zero,64(sp) - c001f120: c0be sw a5,64(sp) - c001f122: 6786 ld a5,64(sp) + c001f2ee: e082 sd zero,64(sp) + c001f2f0: c0be sw a5,64(sp) + c001f2f2: 6786 ld a5,64(sp) js_binary_logic_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13854 sp[-2] = JS_NewInt32(ctx, r); - c001f124: fe043423 sd zero,-24(s0) - c001f128: fef43023 sd a5,-32(s0) - c001f12c: b7c9 j c001f0ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13832 + c001f2f4: fe043423 sd zero,-24(s0) + c001f2f8: fef43023 sd a5,-32(s0) + c001f2fc: b7c9 j c001f2be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13840 r = (int)v1 >> (v2 & 0x1f); - c001f12e: 4732 lw a4,12(sp) - c001f130: 47a2 lw a5,8(sp) - c001f132: 40e7d7bb sraw a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13833 + c001f2fe: 4732 lw a4,12(sp) + c001f300: 47a2 lw a5,8(sp) + c001f302: 40e7d7bb sraw a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13841 break; - c001f136: b7e5 j c001f11e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13835 + c001f306: b7e5 j c001f2ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13843 r = v1 & v2; - c001f138: 47a2 lw a5,8(sp) - c001f13a: 4732 lw a4,12(sp) - c001f13c: 8ff9 and a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13841 + c001f308: 47a2 lw a5,8(sp) + c001f30a: 4732 lw a4,12(sp) + c001f30c: 8ff9 and a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13849 r = v1 ^ v2; - c001f13e: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13842 + c001f30e: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13850 break; - c001f140: bff9 j c001f11e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13841 + c001f310: bff9 j c001f2ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13849 r = v1 ^ v2; - c001f142: 47a2 lw a5,8(sp) - c001f144: 4732 lw a4,12(sp) - c001f146: 8fb9 xor a5,a5,a4 - c001f148: bfdd j c001f13e + c001f312: 47a2 lw a5,8(sp) + c001f314: 4732 lw a4,12(sp) + c001f316: 8fb9 xor a5,a5,a4 + c001f318: bfdd j c001f30e -00000000c001f14a : +00000000c001f31a : js_number_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40867 -{ - c001f14a: 7175 addi sp,sp,-144 - c001f14c: e122 sd s0,128(sp) - c001f14e: e506 sd ra,136(sp) - c001f150: fca6 sd s1,120(sp) - c001f152: e82e sd a1,16(sp) - c001f154: ec32 sd a2,24(sp) - c001f156: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40869 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40875 +{ + c001f31a: 7175 addi sp,sp,-144 + c001f31c: e122 sd s0,128(sp) + c001f31e: e506 sd ra,136(sp) + c001f320: fca6 sd s1,120(sp) + c001f322: e82e sd a1,16(sp) + c001f324: ec32 sd a2,24(sp) + c001f326: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40877 if (argc == 0) { - c001f158: cec9 beqz a3,c001f1f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40872 + c001f328: cec9 beqz a3,c001f3c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40880 val = JS_ToNumeric(ctx, argv[0]); - c001f15a: 6308 ld a0,0(a4) - c001f15c: 670c ld a1,8(a4) - c001f15e: e0aa sd a0,64(sp) - c001f160: e4ae sd a1,72(sp) + c001f32a: 6308 ld a0,0(a4) + c001f32c: 670c ld a1,8(a4) + c001f32e: e0aa sd a0,64(sp) + c001f330: e4ae sd a1,72(sp) JS_ToNumeric(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10638 return JS_ToNumericFree(ctx, JS_DupValue(ctx, val)); - c001f162: d0ce70ef jal ra,c000666e - c001f166: 862e mv a2,a1 - c001f168: 85aa mv a1,a0 - c001f16a: 8522 mv a0,s0 - c001f16c: fc4ff0ef jal ra,c001e930 - c001f170: f02a sd a0,32(sp) - c001f172: f42e sd a1,40(sp) + c001f332: c2ae70ef jal ra,c000675c + c001f336: 862e mv a2,a1 + c001f338: 85aa mv a1,a0 + c001f33a: 8522 mv a0,s0 + c001f33c: fc4ff0ef jal ra,c001eb00 + c001f340: f02a sd a0,32(sp) + c001f342: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c001f174: 0005879b sext.w a5,a1 + c001f344: 0005879b sext.w a5,a1 js_number_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40873 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40881 if (JS_IsException(val)) - c001f178: 4699 li a3,6 - c001f17a: 84aa mv s1,a0 - c001f17c: 872e mv a4,a1 - c001f17e: 00d79b63 bne a5,a3,c001f194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40874 + c001f348: 4699 li a3,6 + c001f34a: 84aa mv s1,a0 + c001f34c: 872e mv a4,a1 + c001f34e: 00d79b63 bne a5,a3,c001f364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40882 return val; - c001f182: e0aa sd a0,64(sp) - c001f184: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40910 -} - c001f186: 60aa ld ra,136(sp) - c001f188: 640a ld s0,128(sp) - c001f18a: 6506 ld a0,64(sp) - c001f18c: 65a6 ld a1,72(sp) - c001f18e: 74e6 ld s1,120(sp) - c001f190: 6149 addi sp,sp,144 - c001f192: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40875 - switch(JS_VALUE_GET_TAG(val)) { - c001f194: 56d9 li a3,-10 - c001f196: 00d79f63 bne a5,a3,c001f1b4 + c001f352: e0aa sd a0,64(sp) + c001f354: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40918 +} + c001f356: 60aa ld ra,136(sp) + c001f358: 640a ld s0,128(sp) + c001f35a: 6506 ld a0,64(sp) + c001f35c: 65a6 ld a1,72(sp) + c001f35e: 74e6 ld s1,120(sp) + c001f360: 6149 addi sp,sp,144 + c001f362: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40883 + switch(JS_VALUE_GET_TAG(val)) { + c001f364: 56d9 li a3,-10 + c001f366: 00d79f63 bne a5,a3,c001f384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40891 bf_get_float64(&p->num, &d, BF_RNDN); - c001f19a: 4601 li a2,0 - c001f19c: 008c addi a1,sp,64 - c001f19e: 00848513 addi a0,s1,8 - c001f1a2: 6a1300ef jal ra,c0050042 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40884 + c001f36a: 4601 li a2,0 + c001f36c: 008c addi a1,sp,64 + c001f36e: 00848513 addi a0,s1,8 + c001f372: 6a1300ef jal ra,c0050212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40892 JS_FreeValue(ctx, val); - c001f1a6: 7582 ld a1,32(sp) - c001f1a8: 7622 ld a2,40(sp) - c001f1aa: 8522 mv a0,s0 - c001f1ac: 98de80ef jal ra,c0007b38 + c001f376: 7582 ld a1,32(sp) + c001f378: 7622 ld a2,40(sp) + c001f37a: 8522 mv a0,s0 + c001f37c: 8abe80ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c001f1b0: 6486 ld s1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40887 + c001f380: 6486 ld s1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40895 break; - c001f1b2: 471d li a4,7 + c001f382: 471d li a4,7 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001f1b4: 6662 ld a2,24(sp) + c001f384: 6662 ld a2,24(sp) js_number_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40910 if (!JS_IsUndefined(new_target)) { - c001f1b6: 478d li a5,3 - c001f1b8: 0006069b sext.w a3,a2 - c001f1bc: 02f68e63 beq a3,a5,c001f1f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40903 + c001f386: 478d li a5,3 + c001f388: 0006069b sext.w a3,a2 + c001f38c: 02f68e63 beq a3,a5,c001f3c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40911 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_NUMBER); - c001f1c0: 65c2 ld a1,16(sp) - c001f1c2: 4691 li a3,4 - c001f1c4: 8522 mv a0,s0 - c001f1c6: e43a sd a4,8(sp) - c001f1c8: 823f70ef jal ra,c00169ea - c001f1cc: f82a sd a0,48(sp) - c001f1ce: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40904 + c001f390: 65c2 ld a1,16(sp) + c001f392: 4691 li a3,4 + c001f394: 8522 mv a0,s0 + c001f396: e43a sd a4,8(sp) + c001f398: 823f70ef jal ra,c0016bba + c001f39c: f82a sd a0,48(sp) + c001f39e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40912 if (!JS_IsException(obj)) - c001f1d0: 0005869b sext.w a3,a1 - c001f1d4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40903 + c001f3a0: 0005869b sext.w a3,a1 + c001f3a4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40911 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_NUMBER); - c001f1d6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40904 + c001f3a6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40912 if (!JS_IsException(obj)) - c001f1d8: 00f68863 beq a3,a5,c001f1e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40905 + c001f3a8: 00f68863 beq a3,a5,c001f3b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40913 JS_SetObjectData(ctx, obj, val); - c001f1dc: 6722 ld a4,8(sp) - c001f1de: 85aa mv a1,a0 - c001f1e0: 86a6 mv a3,s1 - c001f1e2: 8522 mv a0,s0 - c001f1e4: e4af50ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40906 + c001f3ac: 6722 ld a4,8(sp) + c001f3ae: 85aa mv a1,a0 + c001f3b0: 86a6 mv a3,s1 + c001f3b2: 8522 mv a0,s0 + c001f3b4: d68f50ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40914 return obj; - c001f1e8: 77c2 ld a5,48(sp) - c001f1ea: e0be sd a5,64(sp) - c001f1ec: 77e2 ld a5,56(sp) - c001f1ee: e4be sd a5,72(sp) - c001f1f0: bf59 j c001f186 - c001f1f2: 4701 li a4,0 - c001f1f4: 4481 li s1,0 - c001f1f6: bf7d j c001f1b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40908 + c001f3b8: 77c2 ld a5,48(sp) + c001f3ba: e0be sd a5,64(sp) + c001f3bc: 77e2 ld a5,56(sp) + c001f3be: e4be sd a5,72(sp) + c001f3c0: bf59 j c001f356 + c001f3c2: 4701 li a4,0 + c001f3c4: 4481 li s1,0 + c001f3c6: bf7d j c001f384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40916 return val; - c001f1f8: e0a6 sd s1,64(sp) - c001f1fa: e4ba sd a4,72(sp) - c001f1fc: b769 j c001f186 + c001f3c8: e0a6 sd s1,64(sp) + c001f3ca: e4ba sd a4,72(sp) + c001f3cc: b769 j c001f356 -00000000c001f1fe : +00000000c001f3ce : JS_ToCString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:709 { - c001f1fe: 1141 addi sp,sp,-16 - c001f200: 86b2 mv a3,a2 + c001f3ce: 1141 addi sp,sp,-16 + c001f3d0: 86b2 mv a3,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:710 return JS_ToCStringLen2(ctx, NULL, val1, 0); - c001f202: 862e mv a2,a1 - c001f204: 4701 li a4,0 - c001f206: 4581 li a1,0 + c001f3d2: 862e mv a2,a1 + c001f3d4: 4701 li a4,0 + c001f3d6: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:711 } - c001f208: 0141 addi sp,sp,16 + c001f3d8: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:710 return JS_ToCStringLen2(ctx, NULL, val1, 0); - c001f20a: c9ffc06f j c001bea8 + c001f3da: c9ffc06f j c001c078 -00000000c001f20e : +00000000c001f3de : JS_AtomToCString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3368 -{ - c001f20e: 7179 addi sp,sp,-48 - c001f210: f022 sd s0,32(sp) - c001f212: ec26 sd s1,24(sp) - c001f214: f406 sd ra,40(sp) - c001f216: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3376 +{ + c001f3de: 7179 addi sp,sp,-48 + c001f3e0: f022 sd s0,32(sp) + c001f3e2: ec26 sd s1,24(sp) + c001f3e4: f406 sd ra,40(sp) + c001f3e6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3380 str = JS_AtomToString(ctx, atom); - c001f218: 925fa0ef jal ra,c0019b3c - c001f21c: e02a sd a0,0(sp) - c001f21e: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3373 + c001f3e8: 925fa0ef jal ra,c0019d0c + c001f3ec: e02a sd a0,0(sp) + c001f3ee: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3381 if (JS_IsException(str)) - c001f220: 0005871b sext.w a4,a1 - c001f224: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3374 + c001f3f0: 0005871b sext.w a4,a1 + c001f3f4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3382 return NULL; - c001f226: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3373 + c001f3f6: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3381 if (JS_IsException(str)) - c001f228: 00f70d63 beq a4,a5,c001f242 - c001f22c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3375 + c001f3f8: 00f70d63 beq a4,a5,c001f412 + c001f3fc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3383 cstr = JS_ToCString(ctx, str); - c001f22e: 85aa mv a1,a0 - c001f230: 8526 mv a0,s1 - c001f232: fcdff0ef jal ra,c001f1fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3376 + c001f3fe: 85aa mv a1,a0 + c001f400: 8526 mv a0,s1 + c001f402: fcdff0ef jal ra,c001f3ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3384 JS_FreeValue(ctx, str); - c001f236: 6582 ld a1,0(sp) - c001f238: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3375 + c001f406: 6582 ld a1,0(sp) + c001f408: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3383 cstr = JS_ToCString(ctx, str); - c001f23a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3376 + c001f40a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3384 JS_FreeValue(ctx, str); - c001f23c: 8526 mv a0,s1 - c001f23e: 8fbe80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3378 -} - c001f242: 70a2 ld ra,40(sp) - c001f244: 8522 mv a0,s0 - c001f246: 7402 ld s0,32(sp) - c001f248: 64e2 ld s1,24(sp) - c001f24a: 6145 addi sp,sp,48 - c001f24c: 8082 ret - -00000000c001f24e : + c001f40c: 8526 mv a0,s1 + c001f40e: 819e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3386 +} + c001f412: 70a2 ld ra,40(sp) + c001f414: 8522 mv a0,s0 + c001f416: 7402 ld s0,32(sp) + c001f418: 64e2 ld s1,24(sp) + c001f41a: 6145 addi sp,sp,48 + c001f41c: 8082 ret + +00000000c001f41e : build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6598 { - c001f24e: 716d addi sp,sp,-272 - c001f250: f9ca sd s2,240(sp) - c001f252: e82e sd a1,16(sp) - c001f254: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6599 + c001f41e: 716d addi sp,sp,-272 + c001f420: f9ca sd s2,240(sp) + c001f422: e82e sd a1,16(sp) + c001f424: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6607 js_dbuf_init(ctx, &dbuf); - c001f256: 188c addi a1,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6590 -{ - c001f258: e222 sd s0,256(sp) - c001f25a: fda6 sd s1,248(sp) - c001f25c: f1d2 sd s4,224(sp) - c001f25e: e606 sd ra,264(sp) - c001f260: f5ce sd s3,232(sp) - c001f262: edd6 sd s5,216(sp) - c001f264: e9da sd s6,208(sp) - c001f266: e5de sd s7,200(sp) - c001f268: e1e2 sd s8,192(sp) - c001f26a: fd66 sd s9,184(sp) - c001f26c: f96a sd s10,176(sp) - c001f26e: f56e sd s11,168(sp) - c001f270: 84aa mv s1,a0 - c001f272: ec32 sd a2,24(sp) - c001f274: 843a mv s0,a4 - c001f276: 8a3e mv s4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6599 + c001f426: 188c addi a1,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6598 +{ + c001f428: e222 sd s0,256(sp) + c001f42a: fda6 sd s1,248(sp) + c001f42c: f1d2 sd s4,224(sp) + c001f42e: e606 sd ra,264(sp) + c001f430: f5ce sd s3,232(sp) + c001f432: edd6 sd s5,216(sp) + c001f434: e9da sd s6,208(sp) + c001f436: e5de sd s7,200(sp) + c001f438: e1e2 sd s8,192(sp) + c001f43a: fd66 sd s9,184(sp) + c001f43c: f96a sd s10,176(sp) + c001f43e: f56e sd s11,168(sp) + c001f440: 84aa mv s1,a0 + c001f442: ec32 sd a2,24(sp) + c001f444: 843a mv s0,a4 + c001f446: 8a3e mv s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6607 js_dbuf_init(ctx, &dbuf); - c001f278: debe50ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6600 + c001f448: c1be50ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6608 if (filename) { - c001f27c: 02091763 bnez s2,c001f2aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 + c001f44c: 02091763 bnez s2,c001f47a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6621 for(sf = ctx->rt->current_stack_frame; sf != NULL; sf = sf->prev_frame) { - c001f280: 6c9c ld a5,24(s1) + c001f450: 6c9c ld a5,24(s1) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001f282: 04000bb7 lui s7,0x4000 + c001f452: 04000bb7 lui s7,0x4000 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6647 dbuf_printf(&dbuf, " (%s", - c001f286: 0003ec97 auipc s9,0x3e - c001f28a: 89ac8c93 addi s9,s9,-1894 # c005cb20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 + c001f456: 0003ec97 auipc s9,0x3e + c001f45a: 8fac8c93 addi s9,s9,-1798 # c005cd50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6621 for(sf = ctx->rt->current_stack_frame; sf != NULL; sf = sf->prev_frame) { - c001f28e: 0f87b983 ld s3,248(a5) + c001f45e: 0f87b983 ld s3,248(a5) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001f292: 1bfd addi s7,s7,-1 + c001f462: 1bfd addi s7,s7,-1 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6621 (discriminator 1) for(sf = ctx->rt->current_stack_frame; sf != NULL; sf = sf->prev_frame) { - c001f294: 08098463 beqz s3,c001f31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6614 + c001f464: 08098463 beqz s3,c001f4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6622 if (backtrace_flags & JS_BACKTRACE_FLAG_SKIP_FIRST_LEVEL) { - c001f298: 001a7a93 andi s5,s4,1 - c001f29c: 080a8e63 beqz s5,c001f338 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6615 + c001f468: 001a7a93 andi s5,s4,1 + c001f46c: 080a8e63 beqz s5,c001f508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6623 backtrace_flags &= ~JS_BACKTRACE_FLAG_SKIP_FIRST_LEVEL; - c001f2a0: ffea7a13 andi s4,s4,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 (discriminator 2) + c001f470: ffea7a13 andi s4,s4,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6621 (discriminator 2) for(sf = ctx->rt->current_stack_frame; sf != NULL; sf = sf->prev_frame) { - c001f2a4: 0009b983 ld s3,0(s3) - c001f2a8: b7f5 j c001f294 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6601 + c001f474: 0009b983 ld s3,0(s3) + c001f478: b7f5 j c001f464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6609 dbuf_printf(&dbuf, " at %s", filename); - c001f2aa: 864a mv a2,s2 - c001f2ac: 0003f597 auipc a1,0x3f - c001f2b0: 29c58593 addi a1,a1,668 # c005e548 - c001f2b4: 1888 addi a0,sp,112 - c001f2b6: 2c5280ef jal ra,c0047d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6602 + c001f47a: 864a mv a2,s2 + c001f47c: 0003f597 auipc a1,0x3f + c001f480: 32c58593 addi a1,a1,812 # c005e7a8 + c001f484: 1888 addi a0,sp,112 + c001f486: 2c5280ef jal ra,c0047f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6610 if (line_num != -1) - c001f2ba: 57fd li a5,-1 - c001f2bc: 00f40a63 beq s0,a5,c001f2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6603 + c001f48a: 57fd li a5,-1 + c001f48c: 00f40a63 beq s0,a5,c001f4a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6611 dbuf_printf(&dbuf, ":%d", line_num); - c001f2c0: 8622 mv a2,s0 - c001f2c2: 0003f597 auipc a1,0x3f - c001f2c6: 29658593 addi a1,a1,662 # c005e558 - c001f2ca: 1888 addi a0,sp,112 - c001f2cc: 2af280ef jal ra,c0047d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6604 + c001f490: 8622 mv a2,s0 + c001f492: 0003f597 auipc a1,0x3f + c001f496: 32658593 addi a1,a1,806 # c005e7b8 + c001f49a: 1888 addi a0,sp,112 + c001f49c: 2af280ef jal ra,c0047f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6612 dbuf_putc(&dbuf, '\n'); - c001f2d0: 45a9 li a1,10 - c001f2d2: 1888 addi a0,sp,112 - c001f2d4: 26f280ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6605 + c001f4a0: 45a9 li a1,10 + c001f4a2: 1888 addi a0,sp,112 + c001f4a4: 26f280ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 str = JS_NewString(ctx, filename); - c001f2d8: 85ca mv a1,s2 - c001f2da: 8526 mv a0,s1 - c001f2dc: f46fa0ef jal ra,c0019a22 - c001f2e0: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6606 + c001f4a8: 85ca mv a1,s2 + c001f4aa: 8526 mv a0,s1 + c001f4ac: f46fa0ef jal ra,c0019bf2 + c001f4b0: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6614 JS_DefinePropertyValue(ctx, error_obj, JS_ATOM_fileName, str, - c001f2e2: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6605 + c001f4b2: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 str = JS_NewString(ctx, filename); - c001f2e4: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6606 + c001f4b4: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6614 JS_DefinePropertyValue(ctx, error_obj, JS_ATOM_fileName, str, - c001f2e6: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6605 + c001f4b6: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6613 str = JS_NewString(ctx, filename); - c001f2e8: 872a mv a4,a0 - c001f2ea: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6606 + c001f4b8: 872a mv a4,a0 + c001f4ba: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6614 JS_DefinePropertyValue(ctx, error_obj, JS_ATOM_fileName, str, - c001f2ec: 480d li a6,3 - c001f2ee: 03100693 li a3,49 - c001f2f2: 8526 mv a0,s1 - c001f2f4: cc3f30ef jal ra,c0012fb6 + c001f4bc: 480d li a6,3 + c001f4be: 03100693 li a3,49 + c001f4c2: 8526 mv a0,s1 + c001f4c4: be1f30ef jal ra,c00130a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c001f2f8: e882 sd zero,80(sp) - c001f2fa: c8a2 sw s0,80(sp) - c001f2fc: 6746 ld a4,80(sp) + c001f4c8: e882 sd zero,80(sp) + c001f4ca: c8a2 sw s0,80(sp) + c001f4cc: 6746 ld a4,80(sp) build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6616 JS_DefinePropertyValue(ctx, error_obj, JS_ATOM_lineNumber, JS_NewInt32(ctx, line_num), - c001f2fe: 65c2 ld a1,16(sp) - c001f300: 6662 ld a2,24(sp) - c001f302: 4781 li a5,0 - c001f304: 480d li a6,3 - c001f306: 03200693 li a3,50 - c001f30a: 8526 mv a0,s1 + c001f4ce: 65c2 ld a1,16(sp) + c001f4d0: 6662 ld a2,24(sp) + c001f4d2: 4781 li a5,0 + c001f4d4: 480d li a6,3 + c001f4d6: 03200693 li a3,50 + c001f4da: 8526 mv a0,s1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c001f30c: ec82 sd zero,88(sp) - c001f30e: e0ba sd a4,64(sp) - c001f310: e482 sd zero,72(sp) + c001f4dc: ec82 sd zero,88(sp) + c001f4de: e0ba sd a4,64(sp) + c001f4e0: e482 sd zero,72(sp) build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6608 - c001f312: ca5f30ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6616 + c001f4e2: bc3f30ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6618 if (backtrace_flags & JS_BACKTRACE_FLAG_SINGLE_LEVEL) - c001f316: 002a7793 andi a5,s4,2 - c001f31a: d3bd beqz a5,c001f280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6655 + c001f4e6: 002a7793 andi a5,s4,2 + c001f4ea: d3bd beqz a5,c001f450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6663 dbuf_putc(&dbuf, '\0'); - c001f31c: 4581 li a1,0 - c001f31e: 1888 addi a0,sp,112 - c001f320: 223280ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6656 + c001f4ec: 4581 li a1,0 + c001f4ee: 1888 addi a0,sp,112 + c001f4f0: 223280ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6664 if (dbuf_error(&dbuf)) - c001f324: 47aa lw a5,136(sp) - c001f326: 1c079e63 bnez a5,c001f502 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6659 + c001f4f4: 47aa lw a5,136(sp) + c001f4f6: 1c079e63 bnez a5,c001f6d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6667 str = JS_NewString(ctx, (char *)dbuf.buf); - c001f32a: 75c6 ld a1,112(sp) - c001f32c: 8526 mv a0,s1 - c001f32e: ef4fa0ef jal ra,c0019a22 - c001f332: f82a sd a0,48(sp) - c001f334: fc2e sd a1,56(sp) - c001f336: aac9 j c001f508 + c001f4fa: 75c6 ld a1,112(sp) + c001f4fc: 8526 mv a0,s1 + c001f4fe: ef4fa0ef jal ra,c0019bf2 + c001f502: f82a sd a0,48(sp) + c001f504: fc2e sd a1,56(sp) + c001f506: aac9 j c001f6d8 get_func_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6576 if (JS_VALUE_GET_TAG(func) != JS_TAG_OBJECT) - c001f338: 0109a703 lw a4,16(s3) - c001f33c: 57fd li a5,-1 - c001f33e: 0ef70563 beq a4,a5,c001f428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6569 + c001f508: 0109a703 lw a4,16(s3) + c001f50c: 57fd li a5,-1 + c001f50e: 0ef70563 beq a4,a5,c001f5f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6577 return NULL; - c001f342: 4401 li s0,0 + c001f512: 4401 li s0,0 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6628 str1 = ""; - c001f344: 0003f617 auipc a2,0x3f - c001f348: 1f460613 addi a2,a2,500 # c005e538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6623 + c001f514: 0003f617 auipc a2,0x3f + c001f518: 28460613 addi a2,a2,644 # c005e798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6631 dbuf_printf(&dbuf, " at %s", str1); - c001f34c: 0003f597 auipc a1,0x3f - c001f350: 1fc58593 addi a1,a1,508 # c005e548 - c001f354: 1888 addi a0,sp,112 - c001f356: 225280ef jal ra,c0047d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6624 + c001f51c: 0003f597 auipc a1,0x3f + c001f520: 28c58593 addi a1,a1,652 # c005e7a8 + c001f524: 1888 addi a0,sp,112 + c001f526: 225280ef jal ra,c0047f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6632 JS_FreeCString(ctx, func_name_str); - c001f35a: 85a2 mv a1,s0 - c001f35c: 8526 mv a0,s1 - c001f35e: b23e90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6626 + c001f52a: 85a2 mv a1,s0 + c001f52c: 8526 mv a0,s1 + c001f52e: a41e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6634 p = JS_VALUE_GET_OBJ(sf->cur_func); - c001f362: 0089b403 ld s0,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6628 + c001f532: 0089b403 ld s0,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6636 if (js_class_has_bytecode(p->class_id)) { - c001f366: 00645503 lhu a0,6(s0) - c001f36a: be8e60ef jal ra,c0005752 - c001f36e: 892a mv s2,a0 - c001f370: 18050163 beqz a0,c001f4f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6633 + c001f536: 00645503 lhu a0,6(s0) + c001f53a: b06e60ef jal ra,c0005840 + c001f53e: 892a mv s2,a0 + c001f540: 18050163 beqz a0,c001f6c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6641 b = p->u.func.function_bytecode; - c001f374: 03043d03 ld s10,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6634 + c001f544: 03043d03 ld s10,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6642 backtrace_barrier = b->backtrace_barrier; - c001f378: 018d3903 ld s2,24(s10) # ffffffffffff2018 <_ebss+0xffffffff3fef0ef2> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6635 + c001f548: 018d3903 ld s2,24(s10) # ffffffffffff2018 <_ebss+0xffffffff3fef0ef2> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6643 if (b->has_debug) { - c001f37c: 01ad4783 lbu a5,26(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6634 + c001f54c: 01ad4783 lbu a5,26(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6642 backtrace_barrier = b->backtrace_barrier; - c001f380: 01395913 srli s2,s2,0x13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6635 + c001f550: 01395913 srli s2,s2,0x13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6643 if (b->has_debug) { - c001f384: 8b91 andi a5,a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6634 + c001f554: 8b91 andi a5,a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6642 backtrace_barrier = b->backtrace_barrier; - c001f386: 00197913 andi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6635 + c001f556: 00197913 andi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6643 if (b->has_debug) { - c001f38a: cbc1 beqz a5,c001f41a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6637 + c001f55a: cbc1 beqz a5,c001f5ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6645 sf->cur_pc - b->byte_code_buf - 1); - c001f38c: 0389bb03 ld s6,56(s3) - c001f390: 020d3783 ld a5,32(s10) + c001f55c: 0389bb03 ld s6,56(s3) + c001f560: 020d3783 ld a5,32(s10) find_line_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6529 if (!b->has_debug || !b->debug.pc2line_buf) { - c001f394: 070d3703 ld a4,112(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6523 + c001f564: 070d3703 ld a4,112(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6531 return -1; - c001f398: 5dfd li s11,-1 + c001f568: 5dfd li s11,-1 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6637 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6645 sf->cur_pc - b->byte_code_buf - 1); - c001f39a: 40fb0b33 sub s6,s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6636 + c001f56a: 40fb0b33 sub s6,s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6644 line_num1 = find_line_num(ctx, b, - c001f39e: 3b7d addiw s6,s6,-1 + c001f56e: 3b7d addiw s6,s6,-1 find_line_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6529 if (!b->has_debug || !b->debug.pc2line_buf) { - c001f3a0: cb0d beqz a4,c001f3d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6527 + c001f570: cb0d beqz a4,c001f5a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6535 p_end = p + b->debug.pc2line_len; - c001f3a2: 06cd2603 lw a2,108(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6529 + c001f572: 06cd2603 lw a2,108(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6537 line_num = b->debug.line_num; - c001f3a6: 064d2d83 lw s11,100(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6549 + c001f576: 064d2d83 lw s11,100(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6557 pc += (op / PC2LINE_RANGE); - c001f3aa: 4c15 li s8,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6527 + c001f57a: 4c15 li s8,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6535 p_end = p + b->debug.pc2line_len; - c001f3ac: 963a add a2,a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6530 + c001f57c: 963a add a2,a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6538 while (p < p_end) { - c001f3ae: 02c77263 bgeu a4,a2,c001f3d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6531 + c001f57e: 02c77263 bgeu a4,a2,c001f5a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6539 op = *p++; - c001f3b2: 00170413 addi s0,a4,1 - c001f3b6: 00074703 lbu a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6532 + c001f582: 00170413 addi s0,a4,1 + c001f586: 00074703 lbu a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6540 if (op == 0) { - c001f3ba: 10071f63 bnez a4,c001f4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6534 + c001f58a: 10071f63 bnez a4,c001f6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6542 ret = get_leb128(&val, p, p_end); - c001f3be: 85a2 mv a1,s0 - c001f3c0: 1088 addi a0,sp,96 - c001f3c2: e432 sd a2,8(sp) - c001f3c4: 995e50ef jal ra,c0004d58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6535 - if (ret < 0) - c001f3c8: 6622 ld a2,8(sp) - c001f3ca: 0e055263 bgez a0,c001f4ae + c001f58e: 85a2 mv a1,s0 + c001f590: 1088 addi a0,sp,96 + c001f592: e432 sd a2,8(sp) + c001f594: fc4e50ef jal ra,c0004d58 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6543 + if (ret < 0) + c001f598: 6622 ld a2,8(sp) + c001f59a: 0e055263 bgez a0,c001f67e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6551 return b->debug.line_num; - c001f3ce: 064d2d83 lw s11,100(s10) + c001f59e: 064d2d83 lw s11,100(s10) build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6646 atom_str = JS_AtomToCString(ctx, b->debug.filename); - c001f3d2: 060d2583 lw a1,96(s10) - c001f3d6: 8526 mv a0,s1 - c001f3d8: e37ff0ef jal ra,c001f20e - c001f3dc: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6639 + c001f5a2: 060d2583 lw a1,96(s10) + c001f5a6: 8526 mv a0,s1 + c001f5a8: e37ff0ef jal ra,c001f3de + c001f5ac: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6647 dbuf_printf(&dbuf, " (%s", - c001f3de: 862a mv a2,a0 - c001f3e0: e111 bnez a0,c001f3e4 - c001f3e2: 8666 mv a2,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6639 (discriminator 4) - c001f3e4: 0003f597 auipc a1,0x3f - c001f3e8: 17c58593 addi a1,a1,380 # c005e560 - c001f3ec: 1888 addi a0,sp,112 - c001f3ee: 18d280ef jal ra,c0047d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6641 (discriminator 4) + c001f5ae: 862a mv a2,a0 + c001f5b0: e111 bnez a0,c001f5b4 + c001f5b2: 8666 mv a2,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6647 (discriminator 4) + c001f5b4: 0003f597 auipc a1,0x3f + c001f5b8: 20c58593 addi a1,a1,524 # c005e7c0 + c001f5bc: 1888 addi a0,sp,112 + c001f5be: 18d280ef jal ra,c0047f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6649 (discriminator 4) JS_FreeCString(ctx, atom_str); - c001f3f2: 85a2 mv a1,s0 - c001f3f4: 8526 mv a0,s1 - c001f3f6: a8be90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6642 (discriminator 4) + c001f5c2: 85a2 mv a1,s0 + c001f5c4: 8526 mv a0,s1 + c001f5c6: 9a9e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6650 (discriminator 4) if (line_num1 != -1) - c001f3fa: 57fd li a5,-1 - c001f3fc: 00fd8a63 beq s11,a5,c001f410 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6643 + c001f5ca: 57fd li a5,-1 + c001f5cc: 00fd8a63 beq s11,a5,c001f5e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6651 dbuf_printf(&dbuf, ":%d", line_num1); - c001f400: 866e mv a2,s11 - c001f402: 0003f597 auipc a1,0x3f - c001f406: 15658593 addi a1,a1,342 # c005e558 - c001f40a: 1888 addi a0,sp,112 - c001f40c: 16f280ef jal ra,c0047d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6644 + c001f5d0: 866e mv a2,s11 + c001f5d2: 0003f597 auipc a1,0x3f + c001f5d6: 1e658593 addi a1,a1,486 # c005e7b8 + c001f5da: 1888 addi a0,sp,112 + c001f5dc: 16f280ef jal ra,c0047f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6652 dbuf_putc(&dbuf, ')'); - c001f410: 02900593 li a1,41 - c001f414: 1888 addi a0,sp,112 - c001f416: 12d280ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6649 + c001f5e0: 02900593 li a1,41 + c001f5e4: 1888 addi a0,sp,112 + c001f5e6: 12d280ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6657 dbuf_putc(&dbuf, '\n'); - c001f41a: 45a9 li a1,10 - c001f41c: 1888 addi a0,sp,112 - c001f41e: 125280ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6651 + c001f5ea: 45a9 li a1,10 + c001f5ec: 1888 addi a0,sp,112 + c001f5ee: 125280ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6659 if (backtrace_barrier) - c001f422: e80901e3 beqz s2,c001f2a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6654 + c001f5f2: e80901e3 beqz s2,c001f474 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6662 done: - c001f426: bddd j c001f31c - c001f428: 0089b603 ld a2,8(s3) + c001f5f6: bddd j c001f4ec + c001f5f8: 0089b603 ld a2,8(s3) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001f42c: 5771 li a4,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c001f5fc: 5771 li a4,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c001f42e: 03700593 li a1,55 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 + c001f5fe: 03700593 li a1,55 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c001f432: 6e14 ld a3,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 + c001f602: 6e14 ld a3,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c001f434: 529c lw a5,32(a3) - c001f436: 0377f793 andi a5,a5,55 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c001f604: 529c lw a5,32(a3) + c001f606: 0377f793 andi a5,a5,55 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c001f43a: 0785 addi a5,a5,1 - c001f43c: 02e787b3 mul a5,a5,a4 - c001f440: 97b6 add a5,a5,a3 - c001f442: 0007e703 lwu a4,0(a5) + c001f60a: 0785 addi a5,a5,1 + c001f60c: 02e787b3 mul a5,a5,a4 + c001f610: 97b6 add a5,a5,a3 + c001f612: 0007e703 lwu a4,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c001f446: 04068693 addi a3,a3,64 + c001f616: 04068693 addi a3,a3,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c001f44a: ee070ce3 beqz a4,c001f342 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 + c001f61a: ee070ce3 beqz a4,c001f512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c001f44e: 00371793 slli a5,a4,0x3 - c001f452: 17e1 addi a5,a5,-8 - c001f454: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c001f61e: 00371793 slli a5,a4,0x3 + c001f622: 17e1 addi a5,a5,-8 + c001f624: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c001f456: 43c8 lw a0,4(a5) - c001f458: 439c lw a5,0(a5) - c001f45a: 04b51463 bne a0,a1,c001f4a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c001f626: 43c8 lw a0,4(a5) + c001f628: 439c lw a5,0(a5) + c001f62a: 04b51463 bne a0,a1,c001f672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c001f45e: 7214 ld a3,32(a2) - c001f460: 0712 slli a4,a4,0x4 + c001f62e: 7214 ld a3,32(a2) + c001f630: 0712 slli a4,a4,0x4 get_func_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6573 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6581 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_NORMAL) - c001f462: 01a7d79b srliw a5,a5,0x1a + c001f632: 01a7d79b srliw a5,a5,0x1a find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c001f466: 1741 addi a4,a4,-16 + c001f636: 1741 addi a4,a4,-16 get_func_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6573 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6581 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_NORMAL) - c001f468: 0307f793 andi a5,a5,48 + c001f638: 0307f793 andi a5,a5,48 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c001f46c: 9736 add a4,a4,a3 + c001f63c: 9736 add a4,a4,a3 get_func_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6573 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6581 if ((prs->flags & JS_PROP_TMASK) != JS_PROP_NORMAL) - c001f46e: ec079ae3 bnez a5,c001f342 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6575 + c001f63e: ec079ae3 bnez a5,c001f512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6583 val = pr->u.value; - c001f472: 630c ld a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6576 + c001f642: 630c ld a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6584 if (JS_VALUE_GET_TAG(val) != JS_TAG_STRING) - c001f474: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6575 + c001f644: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6583 val = pr->u.value; - c001f476: f0ae sd a1,96(sp) - c001f478: 6710 ld a2,8(a4) - c001f47a: f4b2 sd a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6576 + c001f646: f0ae sd a1,96(sp) + c001f648: 6710 ld a2,8(a4) + c001f64a: f4b2 sd a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6584 if (JS_VALUE_GET_TAG(val) != JS_TAG_STRING) - c001f47c: 4718 lw a4,8(a4) - c001f47e: ecf712e3 bne a4,a5,c001f342 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6578 + c001f64c: 4718 lw a4,8(a4) + c001f64e: ecf712e3 bne a4,a5,c001f512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6586 return JS_ToCString(ctx, val); - c001f482: 8526 mv a0,s1 - c001f484: d7bff0ef jal ra,c001f1fe - c001f488: 842a mv s0,a0 + c001f652: 8526 mv a0,s1 + c001f654: d7bff0ef jal ra,c001f3ce + c001f658: 842a mv s0,a0 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6628 str1 = ""; - c001f48a: 0003f617 auipc a2,0x3f - c001f48e: 0ae60613 addi a2,a2,174 # c005e538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6619 + c001f65a: 0003f617 auipc a2,0x3f + c001f65e: 13e60613 addi a2,a2,318 # c005e798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6627 if (!func_name_str || func_name_str[0] == '\0') - c001f492: ea050de3 beqz a0,c001f34c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6619 (discriminator 1) - c001f496: 00054783 lbu a5,0(a0) - c001f49a: ea0789e3 beqz a5,c001f34c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6619 - c001f49e: 862a mv a2,a0 - c001f4a0: b575 j c001f34c + c001f662: ea050de3 beqz a0,c001f51c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6627 (discriminator 1) + c001f666: 00054783 lbu a5,0(a0) + c001f66a: ea0789e3 beqz a5,c001f51c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6627 + c001f66e: 862a mv a2,a0 + c001f670: b575 j c001f51c find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c001f4a2: 00fbf7b3 and a5,s7,a5 - c001f4a6: 02079713 slli a4,a5,0x20 - c001f4aa: 9301 srli a4,a4,0x20 - c001f4ac: bf79 j c001f44a + c001f672: 00fbf7b3 and a5,s7,a5 + c001f676: 02079713 slli a4,a5,0x20 + c001f67a: 9301 srli a4,a4,0x20 + c001f67c: bf79 j c001f61a find_line_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6537 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6545 pc += val; - c001f4ae: 5786 lw a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6538 + c001f67e: 5786 lw a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6546 p += ret; - c001f4b0: 942a add s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6539 + c001f680: 942a add s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6547 ret = get_sleb128(&v, p, p_end); - c001f4b2: 85a2 mv a1,s0 - c001f4b4: 1068 addi a0,sp,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6537 + c001f682: 85a2 mv a1,s0 + c001f684: 1068 addi a0,sp,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6545 pc += val; - c001f4b6: 01578abb addw s5,a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6539 + c001f686: 01578abb addw s5,a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6547 ret = get_sleb128(&v, p, p_end); - c001f4ba: e432 sd a2,8(sp) - c001f4bc: 8e1e50ef jal ra,c0004d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6540 + c001f68a: e432 sd a2,8(sp) + c001f68c: f10e50ef jal ra,c0004d9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6548 if (ret < 0) { - c001f4c0: f00547e3 bltz a0,c001f3ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6546 + c001f690: f00547e3 bltz a0,c001f59e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6554 new_line_num = line_num + v; - c001f4c4: 57b2 lw a5,44(sp) - c001f4c6: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6545 + c001f694: 57b2 lw a5,44(sp) + c001f696: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6553 p += ret; - c001f4c8: 00a40733 add a4,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6546 + c001f698: 00a40733 add a4,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6554 new_line_num = line_num + v; - c001f4cc: 01b787bb addw a5,a5,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6552 + c001f69c: 01b787bb addw a5,a5,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6560 if (pc_value < pc) - c001f4d0: f15b61e3 bltu s6,s5,c001f3d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6554 + c001f6a0: f15b61e3 bltu s6,s5,c001f5a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6562 line_num = new_line_num; - c001f4d4: 8dbe mv s11,a5 - c001f4d6: bde1 j c001f3ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6548 + c001f6a4: 8dbe mv s11,a5 + c001f6a6: bde1 j c001f57e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6556 op -= PC2LINE_OP_FIRST; - c001f4d8: fff7079b addiw a5,a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6549 + c001f6a8: fff7079b addiw a5,a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6557 pc += (op / PC2LINE_RANGE); - c001f4dc: 0387d73b divuw a4,a5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6550 + c001f6ac: 0387d73b divuw a4,a5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6558 new_line_num = line_num + (op % PC2LINE_RANGE) + PC2LINE_BASE; - c001f4e0: 0387f7bb remuw a5,a5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6549 + c001f6b0: 0387f7bb remuw a5,a5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6557 pc += (op / PC2LINE_RANGE); - c001f4e4: 01570abb addw s5,a4,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6550 + c001f6b4: 01570abb addw s5,a4,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6558 new_line_num = line_num + (op % PC2LINE_RANGE) + PC2LINE_BASE; - c001f4e8: fffd871b addiw a4,s11,-1 - c001f4ec: 9fb9 addw a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6531 + c001f6b8: fffd871b addiw a4,s11,-1 + c001f6bc: 9fb9 addw a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6539 op = *p++; - c001f4ee: 8722 mv a4,s0 - c001f4f0: b7c5 j c001f4d0 + c001f6be: 8722 mv a4,s0 + c001f6c0: b7c5 j c001f6a0 build_backtrace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6655 dbuf_printf(&dbuf, " (native)"); - c001f4f2: 0003f597 auipc a1,0x3f - c001f4f6: 07658593 addi a1,a1,118 # c005e568 - c001f4fa: 1888 addi a0,sp,112 - c001f4fc: 07f280ef jal ra,c0047d7a - c001f500: bf29 j c001f41a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6657 + c001f6c2: 0003f597 auipc a1,0x3f + c001f6c6: 10658593 addi a1,a1,262 # c005e7c8 + c001f6ca: 1888 addi a0,sp,112 + c001f6cc: 07f280ef jal ra,c0047f4a + c001f6d0: bf29 j c001f5ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6665 str = JS_NULL; - c001f502: 4789 li a5,2 - c001f504: f802 sd zero,48(sp) - c001f506: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6660 + c001f6d2: 4789 li a5,2 + c001f6d4: f802 sd zero,48(sp) + c001f6d6: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6668 dbuf_free(&dbuf); - c001f508: 1888 addi a0,sp,112 - c001f50a: 0fd280ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6661 + c001f6d8: 1888 addi a0,sp,112 + c001f6da: 0fd280ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6669 JS_DefinePropertyValue(ctx, error_obj, JS_ATOM_stack, str, - c001f50e: 7742 ld a4,48(sp) - c001f510: 77e2 ld a5,56(sp) - c001f512: 65c2 ld a1,16(sp) - c001f514: 6662 ld a2,24(sp) - c001f516: 8526 mv a0,s1 - c001f518: 480d li a6,3 - c001f51a: 03600693 li a3,54 - c001f51e: a99f30ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6663 -} - c001f522: 60b2 ld ra,264(sp) - c001f524: 6412 ld s0,256(sp) - c001f526: 74ee ld s1,248(sp) - c001f528: 794e ld s2,240(sp) - c001f52a: 79ae ld s3,232(sp) - c001f52c: 7a0e ld s4,224(sp) - c001f52e: 6aee ld s5,216(sp) - c001f530: 6b4e ld s6,208(sp) - c001f532: 6bae ld s7,200(sp) - c001f534: 6c0e ld s8,192(sp) - c001f536: 7cea ld s9,184(sp) - c001f538: 7d4a ld s10,176(sp) - c001f53a: 7daa ld s11,168(sp) - c001f53c: 6151 addi sp,sp,272 - c001f53e: 8082 ret - -00000000c001f540 : + c001f6de: 7742 ld a4,48(sp) + c001f6e0: 77e2 ld a5,56(sp) + c001f6e2: 65c2 ld a1,16(sp) + c001f6e4: 6662 ld a2,24(sp) + c001f6e6: 8526 mv a0,s1 + c001f6e8: 480d li a6,3 + c001f6ea: 03600693 li a3,54 + c001f6ee: 9b7f30ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6671 +} + c001f6f2: 60b2 ld ra,264(sp) + c001f6f4: 6412 ld s0,256(sp) + c001f6f6: 74ee ld s1,248(sp) + c001f6f8: 794e ld s2,240(sp) + c001f6fa: 79ae ld s3,232(sp) + c001f6fc: 7a0e ld s4,224(sp) + c001f6fe: 6aee ld s5,216(sp) + c001f700: 6b4e ld s6,208(sp) + c001f702: 6bae ld s7,200(sp) + c001f704: 6c0e ld s8,192(sp) + c001f706: 7cea ld s9,184(sp) + c001f708: 7d4a ld s10,176(sp) + c001f70a: 7daa ld s11,168(sp) + c001f70c: 6151 addi sp,sp,272 + c001f70e: 8082 ret + +00000000c001f710 : js_resolve_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28028 if (m->resolved) - c001f540: 0815c783 lbu a5,129(a1) - c001f544: c399 beqz a5,c001f54a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28021 + c001f710: 0815c783 lbu a5,129(a1) + c001f714: c399 beqz a5,c001f71a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28029 return 0; - c001f546: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28043 + c001f716: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28051 } - c001f548: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28016 -{ - c001f54a: 7139 addi sp,sp,-64 - c001f54c: f822 sd s0,48(sp) - c001f54e: f426 sd s1,40(sp) - c001f550: e456 sd s5,8(sp) - c001f552: fc06 sd ra,56(sp) - c001f554: f04a sd s2,32(sp) - c001f556: ec4e sd s3,24(sp) - c001f558: e852 sd s4,16(sp) - c001f55a: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28028 + c001f718: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28024 +{ + c001f71a: 7139 addi sp,sp,-64 + c001f71c: f822 sd s0,48(sp) + c001f71e: f426 sd s1,40(sp) + c001f720: e456 sd s5,8(sp) + c001f722: fc06 sd ra,56(sp) + c001f724: f04a sd s2,32(sp) + c001f726: ec4e sd s3,24(sp) + c001f728: e852 sd s4,16(sp) + c001f72a: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28036 m->resolved = TRUE; - c001f55c: 4785 li a5,1 - c001f55e: 842a mv s0,a0 - c001f560: 84ae mv s1,a1 - c001f562: 08f580a3 sb a5,129(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28030 + c001f72c: 4785 li a5,1 + c001f72e: 842a mv s0,a0 + c001f730: 84ae mv s1,a1 + c001f732: 08f580a3 sb a5,129(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28038 for(i = 0; i < m->req_module_entries_count; i++) { - c001f566: 4a81 li s5,0 - c001f568: 509c lw a5,32(s1) - c001f56a: 00facd63 blt s5,a5,c001f584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28021 + c001f736: 4a81 li s5,0 + c001f738: 509c lw a5,32(s1) + c001f73a: 00facd63 blt s5,a5,c001f754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28029 return 0; - c001f56e: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28043 + c001f73e: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28051 } - c001f570: 70e2 ld ra,56(sp) - c001f572: 7442 ld s0,48(sp) - c001f574: 74a2 ld s1,40(sp) - c001f576: 7902 ld s2,32(sp) - c001f578: 69e2 ld s3,24(sp) - c001f57a: 6a42 ld s4,16(sp) - c001f57c: 6aa2 ld s5,8(sp) - c001f57e: 6b02 ld s6,0(sp) - c001f580: 6121 addi sp,sp,64 - c001f582: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28031 + c001f740: 70e2 ld ra,56(sp) + c001f742: 7442 ld s0,48(sp) + c001f744: 74a2 ld s1,40(sp) + c001f746: 7902 ld s2,32(sp) + c001f748: 69e2 ld s3,24(sp) + c001f74a: 6a42 ld s4,16(sp) + c001f74c: 6aa2 ld s5,8(sp) + c001f74e: 6b02 ld s6,0(sp) + c001f750: 6121 addi sp,sp,64 + c001f752: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28039 JSReqModuleEntry *rme = &m->req_module_entries[i]; - c001f584: 6c9c ld a5,24(s1) + c001f754: 6c9c ld a5,24(s1) js_host_resolve_imported_module_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27593 base_cname = JS_AtomToCString(ctx, base_module_name); - c001f586: 40cc lw a1,4(s1) + c001f756: 40cc lw a1,4(s1) js_resolve_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28031 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28039 JSReqModuleEntry *rme = &m->req_module_entries[i]; - c001f588: 004a9b13 slli s6,s5,0x4 - c001f58c: 9b3e add s6,s6,a5 + c001f758: 004a9b13 slli s6,s5,0x4 + c001f75c: 9b3e add s6,s6,a5 js_host_resolve_imported_module_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27593 base_cname = JS_AtomToCString(ctx, base_module_name); - c001f58e: 8522 mv a0,s0 + c001f75e: 8522 mv a0,s0 js_resolve_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28040 m1 = js_host_resolve_imported_module_atom(ctx, m->module_name, - c001f590: 000b2983 lw s3,0(s6) + c001f760: 000b2983 lw s3,0(s6) js_host_resolve_imported_module_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27593 base_cname = JS_AtomToCString(ctx, base_module_name); - c001f594: c7bff0ef jal ra,c001f20e - c001f598: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27586 + c001f764: c7bff0ef jal ra,c001f3de + c001f768: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27594 if (!base_cname) - c001f59a: e119 bnez a0,c001f5a0 + c001f76a: e119 bnez a0,c001f770 js_resolve_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28035 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28043 return -1; - c001f59c: 557d li a0,-1 - c001f59e: bfc9 j c001f570 + c001f76c: 557d li a0,-1 + c001f76e: bfc9 j c001f740 js_host_resolve_imported_module_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27596 cname = JS_AtomToCString(ctx, module_name1); - c001f5a0: 85ce mv a1,s3 - c001f5a2: 8522 mv a0,s0 - c001f5a4: c6bff0ef jal ra,c001f20e - c001f5a8: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27589 + c001f770: 85ce mv a1,s3 + c001f772: 8522 mv a0,s0 + c001f774: c6bff0ef jal ra,c001f3de + c001f778: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27597 if (!cname) { - c001f5aa: e511 bnez a0,c001f5b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27590 + c001f77a: e511 bnez a0,c001f786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27598 JS_FreeCString(ctx, base_cname); - c001f5ac: 85ca mv a1,s2 - c001f5ae: 8522 mv a0,s0 - c001f5b0: 8d1e90ef jal ra,c0008e80 - c001f5b4: b7e5 j c001f59c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27593 + c001f77c: 85ca mv a1,s2 + c001f77e: 8522 mv a0,s0 + c001f780: feee90ef jal ra,c0008f6e + c001f784: b7e5 j c001f76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27601 m = js_host_resolve_imported_module(ctx, base_cname, cname); - c001f5b6: 862a mv a2,a0 - c001f5b8: 85ca mv a1,s2 - c001f5ba: 8522 mv a0,s0 - c001f5bc: ea5f90ef jal ra,c0019460 - c001f5c0: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27594 + c001f786: 862a mv a2,a0 + c001f788: 85ca mv a1,s2 + c001f78a: 8522 mv a0,s0 + c001f78c: ea5f90ef jal ra,c0019630 + c001f790: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27602 JS_FreeCString(ctx, base_cname); - c001f5c2: 85ca mv a1,s2 - c001f5c4: 8522 mv a0,s0 - c001f5c6: 8bbe90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27595 + c001f792: 85ca mv a1,s2 + c001f794: 8522 mv a0,s0 + c001f796: fd8e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27603 JS_FreeCString(ctx, cname); - c001f5ca: 85d2 mv a1,s4 - c001f5cc: 8522 mv a0,s0 - c001f5ce: 8b3e90ef jal ra,c0008e80 + c001f79a: 85d2 mv a1,s4 + c001f79c: 8522 mv a0,s0 + c001f79e: fd0e90ef jal ra,c0008f6e js_resolve_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28034 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28042 if (!m1) - c001f5d2: fc0985e3 beqz s3,c001f59c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28036 + c001f7a2: fc0985e3 beqz s3,c001f76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28044 rme->module = m1; - c001f5d6: 013b3423 sd s3,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28039 + c001f7a6: 013b3423 sd s3,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28047 if (js_resolve_module(ctx, m1) < 0) - c001f5da: 85ce mv a1,s3 - c001f5dc: 8522 mv a0,s0 - c001f5de: f63ff0ef jal ra,c001f540 - c001f5e2: fa054de3 bltz a0,c001f59c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28030 + c001f7aa: 85ce mv a1,s3 + c001f7ac: 8522 mv a0,s0 + c001f7ae: f63ff0ef jal ra,c001f710 + c001f7b2: fa054de3 bltz a0,c001f76c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28038 for(i = 0; i < m->req_module_entries_count; i++) { - c001f5e6: 2a85 addiw s5,s5,1 - c001f5e8: b741 j c001f568 + c001f7b6: 2a85 addiw s5,s5,1 + c001f7b8: b741 j c001f738 -00000000c001f5ea : +00000000c001f7ba : JS_ResolveModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34529 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34537 if (JS_VALUE_GET_TAG(obj) == JS_TAG_MODULE) { - c001f5ea: 2601 sext.w a2,a2 - c001f5ec: 57f5 li a5,-3 - c001f5ee: 00f60963 beq a2,a5,c001f600 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34536 + c001f7ba: 2601 sext.w a2,a2 + c001f7bc: 57f5 li a5,-3 + c001f7be: 00f60963 beq a2,a5,c001f7d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34544 return 0; - c001f5f2: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34537 + c001f7c2: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34545 } - c001f5f4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34536 + c001f7c4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34544 return 0; - c001f5f6: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34537 + c001f7c6: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34545 } - c001f5f8: 60e2 ld ra,24(sp) - c001f5fa: 6442 ld s0,16(sp) - c001f5fc: 6105 addi sp,sp,32 - c001f5fe: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34528 + c001f7c8: 60e2 ld ra,24(sp) + c001f7ca: 6442 ld s0,16(sp) + c001f7cc: 6105 addi sp,sp,32 + c001f7ce: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34536 { - c001f600: 1101 addi sp,sp,-32 - c001f602: e822 sd s0,16(sp) - c001f604: ec06 sd ra,24(sp) - c001f606: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34531 + c001f7d0: 1101 addi sp,sp,-32 + c001f7d2: e822 sd s0,16(sp) + c001f7d4: ec06 sd ra,24(sp) + c001f7d6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34539 if (js_resolve_module(ctx, m) < 0) { - c001f608: f39ff0ef jal ra,c001f540 - c001f60c: fe0555e3 bgez a0,c001f5f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34532 + c001f7d8: f39ff0ef jal ra,c001f710 + c001f7dc: fe0555e3 bgez a0,c001f7c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34540 js_free_modules(ctx, JS_FREE_MODULE_NOT_RESOLVED); - c001f610: 8522 mv a0,s0 - c001f612: 4585 li a1,1 - c001f614: b24e90ef jal ra,c0008938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34533 + c001f7e0: 8522 mv a0,s0 + c001f7e2: 4585 li a1,1 + c001f7e4: a42e90ef jal ra,c0008a26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34541 return -1; - c001f618: 557d li a0,-1 - c001f61a: bff9 j c001f5f8 + c001f7e8: 557d li a0,-1 + c001f7ea: bff9 j c001f7c8 -00000000c001f61c : +00000000c001f7ec : js_parseFloat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41167 { - c001f61c: 715d addi sp,sp,-80 - c001f61e: fc26 sd s1,56(sp) - c001f620: e486 sd ra,72(sp) - c001f622: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41163 + c001f7ec: 715d addi sp,sp,-80 + c001f7ee: fc26 sd s1,56(sp) + c001f7f0: e486 sd ra,72(sp) + c001f7f2: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41171 str = JS_ToCString(ctx, argv[0]); - c001f624: 630c ld a1,0(a4) - c001f626: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41159 + c001f7f4: 630c ld a1,0(a4) + c001f7f6: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41167 { - c001f628: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41163 + c001f7f8: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41171 str = JS_ToCString(ctx, argv[0]); - c001f62a: bd5ff0ef jal ra,c001f1fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41164 + c001f7fa: bd5ff0ef jal ra,c001f3ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41172 if (!str) - c001f62e: e919 bnez a0,c001f644 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41165 + c001f7fe: e919 bnez a0,c001f814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41173 return JS_EXCEPTION; - c001f630: f002 sd zero,32(sp) - c001f632: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41171 + c001f800: f002 sd zero,32(sp) + c001f802: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41179 } - c001f634: 60a6 ld ra,72(sp) - c001f636: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41170 + c001f804: 60a6 ld ra,72(sp) + c001f806: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41178 return ret; - c001f638: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41171 + c001f808: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41179 } - c001f63a: 7502 ld a0,32(sp) - c001f63c: 75a2 ld a1,40(sp) - c001f63e: 74e2 ld s1,56(sp) - c001f640: 6161 addi sp,sp,80 - c001f642: 8082 ret - c001f644: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41167 + c001f80a: 7502 ld a0,32(sp) + c001f80c: 75a2 ld a1,40(sp) + c001f80e: 74e2 ld s1,56(sp) + c001f810: 6161 addi sp,sp,80 + c001f812: 8082 ret + c001f814: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41175 p += skip_spaces(p); - c001f646: 983e50ef jal ra,c0004fc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41168 + c001f816: fb2e50ef jal ra,c0004fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41176 ret = js_atof(ctx, p, NULL, 10, 0); - c001f64a: 4701 li a4,0 - c001f64c: 46a9 li a3,10 - c001f64e: 4601 li a2,0 - c001f650: 00a405b3 add a1,s0,a0 - c001f654: 8526 mv a0,s1 - c001f656: f87f80ef jal ra,c00185dc - c001f65a: e82a sd a0,16(sp) - c001f65c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41169 + c001f81a: 4701 li a4,0 + c001f81c: 46a9 li a3,10 + c001f81e: 4601 li a2,0 + c001f820: 00a405b3 add a1,s0,a0 + c001f824: 8526 mv a0,s1 + c001f826: f87f80ef jal ra,c00187ac + c001f82a: e82a sd a0,16(sp) + c001f82c: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41177 JS_FreeCString(ctx, str); - c001f65e: 8526 mv a0,s1 - c001f660: 85a2 mv a1,s0 - c001f662: 81fe90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41170 + c001f82e: 8526 mv a0,s1 + c001f830: 85a2 mv a1,s0 + c001f832: f3ce90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41178 return ret; - c001f666: 67c2 ld a5,16(sp) - c001f668: f03e sd a5,32(sp) - c001f66a: 67e2 ld a5,24(sp) - c001f66c: b7e1 j c001f634 + c001f836: 67c2 ld a5,16(sp) + c001f838: f03e sd a5,32(sp) + c001f83a: 67e2 ld a5,24(sp) + c001f83c: b7e1 j c001f804 -00000000c001f66e : +00000000c001f83e : js_parseInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41133 -{ - c001f66e: 7119 addi sp,sp,-128 - c001f670: f4a6 sd s1,104(sp) - c001f672: f0ca sd s2,96(sp) - c001f674: fc86 sd ra,120(sp) - c001f676: f8a2 sd s0,112(sp) - c001f678: aca2 fsd fs0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41141 +{ + c001f83e: 7119 addi sp,sp,-128 + c001f840: f4a6 sd s1,104(sp) + c001f842: f0ca sd s2,96(sp) + c001f844: fc86 sd ra,120(sp) + c001f846: f8a2 sd s0,112(sp) + c001f848: aca2 fsd fs0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41146 str = JS_ToCString(ctx, argv[0]); - c001f67a: 630c ld a1,0(a4) - c001f67c: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41133 + c001f84a: 630c ld a1,0(a4) + c001f84c: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41141 { - c001f67e: 84aa mv s1,a0 - c001f680: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41138 + c001f84e: 84aa mv s1,a0 + c001f850: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41146 str = JS_ToCString(ctx, argv[0]); - c001f682: b7dff0ef jal ra,c001f1fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41139 + c001f852: b7dff0ef jal ra,c001f3ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41147 if (!str) - c001f686: ed09 bnez a0,c001f6a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41143 + c001f856: ed09 bnez a0,c001f870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41151 return JS_EXCEPTION; - c001f688: 4799 li a5,6 - c001f68a: e082 sd zero,64(sp) - c001f68c: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41155 (discriminator 1) -} - c001f68e: 70e6 ld ra,120(sp) - c001f690: 7446 ld s0,112(sp) - c001f692: 6506 ld a0,64(sp) - c001f694: 65a6 ld a1,72(sp) - c001f696: 74a6 ld s1,104(sp) - c001f698: 7906 ld s2,96(sp) - c001f69a: 2466 fld fs0,88(sp) - c001f69c: 6109 addi sp,sp,128 - c001f69e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41141 + c001f858: 4799 li a5,6 + c001f85a: e082 sd zero,64(sp) + c001f85c: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41163 (discriminator 1) +} + c001f85e: 70e6 ld ra,120(sp) + c001f860: 7446 ld s0,112(sp) + c001f862: 6506 ld a0,64(sp) + c001f864: 65a6 ld a1,72(sp) + c001f866: 74a6 ld s1,104(sp) + c001f868: 7906 ld s2,96(sp) + c001f86a: 2466 fld fs0,88(sp) + c001f86c: 6109 addi sp,sp,128 + c001f86e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41149 if (JS_ToInt32(ctx, &radix, argv[1])) { - c001f6a0: 01093603 ld a2,16(s2) - c001f6a4: 01893683 ld a3,24(s2) - c001f6a8: 842a mv s0,a0 - c001f6aa: 106c addi a1,sp,44 - c001f6ac: 8526 mv a0,s1 - c001f6ae: cc1fc0ef jal ra,c001c36e - c001f6b2: c511 beqz a0,c001f6be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41142 + c001f870: 01093603 ld a2,16(s2) + c001f874: 01893683 ld a3,24(s2) + c001f878: 842a mv s0,a0 + c001f87a: 106c addi a1,sp,44 + c001f87c: 8526 mv a0,s1 + c001f87e: cc1fc0ef jal ra,c001c53e + c001f882: c511 beqz a0,c001f88e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41150 JS_FreeCString(ctx, str); - c001f6b4: 85a2 mv a1,s0 - c001f6b6: 8526 mv a0,s1 - c001f6b8: fc8e90ef jal ra,c0008e80 - c001f6bc: b7f1 j c001f688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41145 + c001f884: 85a2 mv a1,s0 + c001f886: 8526 mv a0,s1 + c001f888: ee6e90ef jal ra,c0008f6e + c001f88c: b7f1 j c001f858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41153 if (radix != 0 && (radix < 2 || radix > 36)) { - c001f6be: 57b2 lw a5,44(sp) - c001f6c0: cb85 beqz a5,c001f6f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41145 (discriminator 1) - c001f6c2: 37f9 addiw a5,a5,-2 - c001f6c4: 02200713 li a4,34 - c001f6c8: 02f77463 bgeu a4,a5,c001f6f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41146 + c001f88e: 57b2 lw a5,44(sp) + c001f890: cb85 beqz a5,c001f8c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41153 (discriminator 1) + c001f892: 37f9 addiw a5,a5,-2 + c001f894: 02200713 li a4,34 + c001f898: 02f77463 bgeu a4,a5,c001f8c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41154 ret = JS_NAN; - c001f6cc: 00055797 auipc a5,0x55 - c001f6d0: 0bc7b407 fld fs0,188(a5) # c0074788 <_erodata+0x8> - c001f6d4: 12847453 fmul.d fs0,fs0,fs0 - c001f6d8: f20007d3 fmv.d.x fa5,zero - c001f6dc: 491d li s2,7 - c001f6de: 12f47453 fmul.d fs0,fs0,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41153 + c001f89c: 00055797 auipc a5,0x55 + c001f8a0: 14c7b407 fld fs0,332(a5) # c00749e8 <_erodata+0x8> + c001f8a4: 12847453 fmul.d fs0,fs0,fs0 + c001f8a8: f20007d3 fmv.d.x fa5,zero + c001f8ac: 491d li s2,7 + c001f8ae: 12f47453 fmul.d fs0,fs0,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41161 JS_FreeCString(ctx, str); - c001f6e2: 85a2 mv a1,s0 - c001f6e4: 8526 mv a0,s1 - c001f6e6: f9ae90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41154 + c001f8b2: 85a2 mv a1,s0 + c001f8b4: 8526 mv a0,s1 + c001f8b6: eb8e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41162 return ret; - c001f6ea: a0a2 fsd fs0,64(sp) - c001f6ec: e4ca sd s2,72(sp) - c001f6ee: b745 j c001f68e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41149 + c001f8ba: a0a2 fsd fs0,64(sp) + c001f8bc: e4ca sd s2,72(sp) + c001f8be: b745 j c001f85e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41157 p += skip_spaces(p); - c001f6f0: 8522 mv a0,s0 - c001f6f2: 8d7e50ef jal ra,c0004fc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41151 + c001f8c0: 8522 mv a0,s0 + c001f8c2: f06e50ef jal ra,c0004fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41159 ret = js_atof(ctx, p, NULL, radix, flags); - c001f6f6: 56b2 lw a3,44(sp) - c001f6f8: 00a405b3 add a1,s0,a0 - c001f6fc: 40100713 li a4,1025 - c001f700: 4601 li a2,0 - c001f702: 8526 mv a0,s1 - c001f704: ed9f80ef jal ra,c00185dc - c001f708: e42a sd a0,8(sp) - c001f70a: 2422 fld fs0,8(sp) - c001f70c: 892e mv s2,a1 - c001f70e: bfd1 j c001f6e2 - -00000000c001f710 : + c001f8c6: 56b2 lw a3,44(sp) + c001f8c8: 00a405b3 add a1,s0,a0 + c001f8cc: 40100713 li a4,1025 + c001f8d0: 4601 li a2,0 + c001f8d2: 8526 mv a0,s1 + c001f8d4: ed9f80ef jal ra,c00187ac + c001f8d8: e42a sd a0,8(sp) + c001f8da: 2422 fld fs0,8(sp) + c001f8dc: 892e mv s2,a1 + c001f8de: bfd1 j c001f8b2 + +00000000c001f8e0 : js_compile_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43397 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43405 { - c001f710: 7171 addi sp,sp,-176 - c001f712: f122 sd s0,160(sp) - c001f714: ec32 sd a2,24(sp) - c001f716: e43a sd a4,8(sp) + c001f8e0: 7171 addi sp,sp,-176 + c001f8e2: f122 sd s0,160(sp) + c001f8e4: ec32 sd a2,24(sp) + c001f8e6: e43a sd a4,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001f718: 87ba mv a5,a4 + c001f8e8: 87ba mv a5,a4 js_compile_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43407 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43415 if (!JS_IsUndefined(flags)) { - c001f71a: 0007061b sext.w a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43397 -{ - c001f71e: f506 sd ra,168(sp) - c001f720: ed26 sd s1,152(sp) - c001f722: e94a sd s2,144(sp) - c001f724: e82e sd a1,16(sp) - c001f726: e036 sd a3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43407 + c001f8ea: 0007061b sext.w a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43405 +{ + c001f8ee: f506 sd ra,168(sp) + c001f8f0: ed26 sd s1,152(sp) + c001f8f2: e94a sd s2,144(sp) + c001f8f4: e82e sd a1,16(sp) + c001f8f6: e036 sd a3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43415 if (!JS_IsUndefined(flags)) { - c001f728: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43397 + c001f8f8: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43405 { - c001f72a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43407 + c001f8fa: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43415 if (!JS_IsUndefined(flags)) { - c001f72c: 10e60763 beq a2,a4,c001f83a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43408 + c001f8fc: 10e60763 beq a2,a4,c001fa0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43416 str = JS_ToCStringLen(ctx, &len, flags); - c001f730: 8636 mv a2,a3 - c001f732: e8b6 sd a3,80(sp) + c001f900: 8636 mv a2,a3 + c001f902: e8b6 sd a3,80(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c001f734: 102c addi a1,sp,40 - c001f736: 4701 li a4,0 - c001f738: 86be mv a3,a5 - c001f73a: ecbe sd a5,88(sp) - c001f73c: f6cfc0ef jal ra,c001bea8 - c001f740: 85aa mv a1,a0 + c001f904: 102c addi a1,sp,40 + c001f906: 4701 li a4,0 + c001f908: 86be mv a3,a5 + c001f90a: ecbe sd a5,88(sp) + c001f90c: f6cfc0ef jal ra,c001c078 + c001f910: 85aa mv a1,a0 js_compile_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43409 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43417 if (!str) - c001f742: c92d beqz a0,c001f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43412 + c001f912: c92d beqz a0,c001f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43420 for (i = 0; i < len; i++) { - c001f744: 7622 ld a2,40(sp) - c001f746: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43406 + c001f914: 7622 ld a2,40(sp) + c001f916: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43414 re_flags = 0; - c001f748: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43413 + c001f918: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43421 switch(str[i]) { - c001f74a: 07500513 li a0,117 - c001f74e: 07900813 li a6,121 - c001f752: 06300893 li a7,99 - c001f756: 4345 li t1,17 - c001f758: 0003f697 auipc a3,0x3f - c001f75c: e4468693 addi a3,a3,-444 # c005e59c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43412 (discriminator 1) + c001f91a: 07500513 li a0,117 + c001f91e: 07900813 li a6,121 + c001f922: 06300893 li a7,99 + c001f926: 4345 li t1,17 + c001f928: 0003f697 auipc a3,0x3f + c001f92c: ed468693 addi a3,a3,-300 # c005e7fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43420 (discriminator 1) for (i = 0; i < len; i++) { - c001f760: 04f61e63 bne a2,a5,c001f7bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43445 + c001f930: 04f61e63 bne a2,a5,c001f98c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43453 JS_FreeCString(ctx, str); - c001f764: 8522 mv a0,s0 - c001f766: f1ae90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43448 + c001f934: 8522 mv a0,s0 + c001f936: e38e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43456 str = JS_ToCStringLen2(ctx, &len, pattern, !(re_flags & LRE_FLAG_UTF16)); - c001f76a: 6642 ld a2,16(sp) - c001f76c: 66e2 ld a3,24(sp) - c001f76e: 4044d71b sraiw a4,s1,0x4 - c001f772: 00174713 xori a4,a4,1 - c001f776: 8b05 andi a4,a4,1 - c001f778: 102c addi a1,sp,40 - c001f77a: 8522 mv a0,s0 - c001f77c: f2cfc0ef jal ra,c001bea8 - c001f780: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43449 + c001f93a: 6642 ld a2,16(sp) + c001f93c: 66e2 ld a3,24(sp) + c001f93e: 4044d71b sraiw a4,s1,0x4 + c001f942: 00174713 xori a4,a4,1 + c001f946: 8b05 andi a4,a4,1 + c001f948: 102c addi a1,sp,40 + c001f94a: 8522 mv a0,s0 + c001f94c: f2cfc0ef jal ra,c001c078 + c001f950: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43457 if (!str) - c001f782: c90d beqz a0,c001f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43451 + c001f952: c90d beqz a0,c001f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43459 re_bytecode_buf = lre_compile(&re_bytecode_len, error_msg, - c001f784: 7722 ld a4,40(sp) - c001f786: 87a6 mv a5,s1 - c001f788: 86aa mv a3,a0 - c001f78a: 088c addi a1,sp,80 - c001f78c: 8822 mv a6,s0 - c001f78e: 04000613 li a2,64 - c001f792: 1048 addi a0,sp,36 - c001f794: 0a0260ef jal ra,c0045834 - c001f798: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43453 + c001f954: 7722 ld a4,40(sp) + c001f956: 87a6 mv a5,s1 + c001f958: 86aa mv a3,a0 + c001f95a: 088c addi a1,sp,80 + c001f95c: 8822 mv a6,s0 + c001f95e: 04000613 li a2,64 + c001f962: 1048 addi a0,sp,36 + c001f964: 0a0260ef jal ra,c0045a04 + c001f968: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43461 JS_FreeCString(ctx, str); - c001f79a: 85ca mv a1,s2 - c001f79c: 8522 mv a0,s0 - c001f79e: ee2e90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43454 + c001f96a: 85ca mv a1,s2 + c001f96c: 8522 mv a0,s0 + c001f96e: e00e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43462 if (!re_bytecode_buf) { - c001f7a2: ecd1 bnez s1,c001f83e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43455 + c001f972: ecd1 bnez s1,c001fa0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43463 JS_ThrowSyntaxError(ctx, "%s", error_msg); - c001f7a4: 0890 addi a2,sp,80 - c001f7a6: 0003f597 auipc a1,0x3f - c001f7aa: a1258593 addi a1,a1,-1518 # c005e1b8 - c001f7ae: 8522 mv a0,s0 - c001f7b0: 95df30ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43456 + c001f974: 0890 addi a2,sp,80 + c001f976: 0003f597 auipc a1,0x3f + c001f97a: aa258593 addi a1,a1,-1374 # c005e418 + c001f97e: 8522 mv a0,s0 + c001f980: 87bf30ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43464 return JS_EXCEPTION; - c001f7b4: e082 sd zero,64(sp) - c001f7b6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43461 + c001f984: e082 sd zero,64(sp) + c001f986: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43469 return ret; - c001f7b8: e4be sd a5,72(sp) - c001f7ba: a891 j c001f80e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43413 + c001f988: e4be sd a5,72(sp) + c001f98a: a891 j c001f9de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43421 switch(str[i]) { - c001f7bc: 00f58733 add a4,a1,a5 - c001f7c0: 00074703 lbu a4,0(a4) - c001f7c4: 02e56763 bltu a0,a4,c001f7f2 - c001f7c8: 02e8f763 bgeu a7,a4,c001f7f6 - c001f7cc: f9c7071b addiw a4,a4,-100 - c001f7d0: 0ff77713 zext.b a4,a4 - c001f7d4: 02e36163 bltu t1,a4,c001f7f6 - c001f7d8: 070a slli a4,a4,0x2 - c001f7da: 9736 add a4,a4,a3 - c001f7dc: 4318 lw a4,0(a4) - c001f7de: 9736 add a4,a4,a3 - c001f7e0: 8702 jr a4 - c001f7e2: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43438 + c001f98c: 00f58733 add a4,a1,a5 + c001f990: 00074703 lbu a4,0(a4) + c001f994: 02e56763 bltu a0,a4,c001f9c2 + c001f998: 02e8f763 bgeu a7,a4,c001f9c6 + c001f99c: f9c7071b addiw a4,a4,-100 + c001f9a0: 0ff77713 zext.b a4,a4 + c001f9a4: 02e36163 bltu t1,a4,c001f9c6 + c001f9a8: 070a slli a4,a4,0x2 + c001f9aa: 9736 add a4,a4,a3 + c001f9ac: 4318 lw a4,0(a4) + c001f9ae: 9736 add a4,a4,a3 + c001f9b0: 8702 jr a4 + c001f9b2: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43446 if ((re_flags & mask) != 0) { - c001f7e4: 00e4fe33 and t3,s1,a4 - c001f7e8: 000e1763 bnez t3,c001f7f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43443 (discriminator 2) + c001f9b4: 00e4fe33 and t3,s1,a4 + c001f9b8: 000e1763 bnez t3,c001f9c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43451 (discriminator 2) re_flags |= mask; - c001f7ec: 8cd9 or s1,s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43412 (discriminator 2) + c001f9bc: 8cd9 or s1,s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43420 (discriminator 2) for (i = 0; i < len; i++) { - c001f7ee: 0785 addi a5,a5,1 - c001f7f0: bf85 j c001f760 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43413 + c001f9be: 0785 addi a5,a5,1 + c001f9c0: bf85 j c001f930 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43421 switch(str[i]) { - c001f7f2: 05070163 beq a4,a6,c001f834 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43440 + c001f9c2: 05070163 beq a4,a6,c001fa04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43448 JS_FreeCString(ctx, str); - c001f7f6: 8522 mv a0,s0 - c001f7f8: e88e90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43441 + c001f9c6: 8522 mv a0,s0 + c001f9c8: da6e90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43449 return JS_ThrowSyntaxError(ctx, "invalid regular expression flags"); - c001f7fc: 0003f597 auipc a1,0x3f - c001f800: d7c58593 addi a1,a1,-644 # c005e578 - c001f804: 8522 mv a0,s0 - c001f806: 907f30ef jal ra,c001310c - c001f80a: e0aa sd a0,64(sp) - c001f80c: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43462 (discriminator 1) -} - c001f80e: 70aa ld ra,168(sp) - c001f810: 740a ld s0,160(sp) - c001f812: 6506 ld a0,64(sp) - c001f814: 65a6 ld a1,72(sp) - c001f816: 64ea ld s1,152(sp) - c001f818: 694a ld s2,144(sp) - c001f81a: 614d addi sp,sp,176 - c001f81c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43421 + c001f9cc: 0003f597 auipc a1,0x3f + c001f9d0: e0c58593 addi a1,a1,-500 # c005e7d8 + c001f9d4: 8522 mv a0,s0 + c001f9d6: 825f30ef jal ra,c00131fa + c001f9da: e0aa sd a0,64(sp) + c001f9dc: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43470 (discriminator 1) +} + c001f9de: 70aa ld ra,168(sp) + c001f9e0: 740a ld s0,160(sp) + c001f9e2: 6506 ld a0,64(sp) + c001f9e4: 65a6 ld a1,72(sp) + c001f9e6: 64ea ld s1,152(sp) + c001f9e8: 694a ld s2,144(sp) + c001f9ea: 614d addi sp,sp,176 + c001f9ec: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43429 mask = LRE_FLAG_IGNORECASE; - c001f81e: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43422 + c001f9ee: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43430 break; - c001f820: b7d1 j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43424 + c001f9f0: b7d1 j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43432 mask = LRE_FLAG_MULTILINE; - c001f822: 4711 li a4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43425 + c001f9f2: 4711 li a4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43433 break; - c001f824: b7c1 j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43427 + c001f9f4: b7c1 j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43435 mask = LRE_FLAG_DOTALL; - c001f826: 4721 li a4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43428 + c001f9f6: 4721 li a4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43436 break; - c001f828: bf75 j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43430 + c001f9f8: bf75 j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43438 mask = LRE_FLAG_UTF16; - c001f82a: 4741 li a4,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43431 + c001f9fa: 4741 li a4,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43439 break; - c001f82c: bf65 j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43415 + c001f9fc: bf65 j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43423 mask = LRE_FLAG_INDICES; - c001f82e: 04000713 li a4,64 - c001f832: bf4d j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43433 + c001f9fe: 04000713 li a4,64 + c001fa02: bf4d j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43441 mask = LRE_FLAG_STICKY; - c001f834: 02000713 li a4,32 - c001f838: b775 j c001f7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43406 + c001fa04: 02000713 li a4,32 + c001fa08: b775 j c001f9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43414 re_flags = 0; - c001f83a: 4481 li s1,0 - c001f83c: b73d j c001f76a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43459 + c001fa0a: 4481 li s1,0 + c001fa0c: b73d j c001f93a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43467 ret = js_new_string8(ctx, re_bytecode_buf, re_bytecode_len); - c001f83e: 5612 lw a2,36(sp) - c001f840: 85a6 mv a1,s1 - c001f842: 8522 mv a0,s0 - c001f844: f6efa0ef jal ra,c0019fb2 - c001f848: f82a sd a0,48(sp) - c001f84a: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43460 + c001fa0e: 5612 lw a2,36(sp) + c001fa10: 85a6 mv a1,s1 + c001fa12: 8522 mv a0,s0 + c001fa14: f6efa0ef jal ra,c001a182 + c001fa18: f82a sd a0,48(sp) + c001fa1a: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43468 js_free(ctx, re_bytecode_buf); - c001f84c: 8522 mv a0,s0 - c001f84e: 85a6 mv a1,s1 - c001f850: deae70ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43461 + c001fa1c: 8522 mv a0,s0 + c001fa1e: 85a6 mv a1,s1 + c001fa20: d08e70ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43469 return ret; - c001f854: 77c2 ld a5,48(sp) - c001f856: e0be sd a5,64(sp) - c001f858: 77e2 ld a5,56(sp) - c001f85a: bfb9 j c001f7b8 + c001fa24: 77c2 ld a5,48(sp) + c001fa26: e0be sd a5,64(sp) + c001fa28: 77e2 ld a5,56(sp) + c001fa2a: bfb9 j c001f988 -00000000c001f85c : +00000000c001fa2c : JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12176 { - c001f85c: 7119 addi sp,sp,-128 - c001f85e: e42e sd a1,8(sp) - c001f860: ec32 sd a2,24(sp) - c001f862: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12173 + c001fa2c: 7119 addi sp,sp,-128 + c001fa2e: e42e sd a1,8(sp) + c001fa30: ec32 sd a2,24(sp) + c001fa32: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12181 str = JS_ToCStringLen(ctx, &len, val); - c001f864: e4b2 sd a2,72(sp) + c001fa34: e4b2 sd a2,72(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c001f866: 6622 ld a2,8(sp) + c001fa36: 6622 ld a2,8(sp) JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12176 { - c001f868: e82e sd a1,16(sp) - c001f86a: e0ae sd a1,64(sp) + c001fa38: e82e sd a1,16(sp) + c001fa3a: e0ae sd a1,64(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c001f86c: 4701 li a4,0 - c001f86e: 102c addi a1,sp,40 + c001fa3c: 4701 li a4,0 + c001fa3e: 102c addi a1,sp,40 JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12168 - c001f870: f4a6 sd s1,104(sp) - c001f872: f0ca sd s2,96(sp) - c001f874: fc86 sd ra,120(sp) - c001f876: f8a2 sd s0,112(sp) - c001f878: aca2 fsd fs0,88(sp) - c001f87a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12176 + c001fa40: f4a6 sd s1,104(sp) + c001fa42: f0ca sd s2,96(sp) + c001fa44: fc86 sd ra,120(sp) + c001fa46: f8a2 sd s0,112(sp) + c001fa48: aca2 fsd fs0,88(sp) + c001fa4a: 892a mv s2,a0 JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c001f87c: e2cfc0ef jal ra,c001bea8 + c001fa4c: e2cfc0ef jal ra,c001c078 JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12182 JS_FreeValue(ctx, val); - c001f880: 65c2 ld a1,16(sp) - c001f882: 6662 ld a2,24(sp) + c001fa50: 65c2 ld a1,16(sp) + c001fa52: 6662 ld a2,24(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c001f884: 84aa mv s1,a0 + c001fa54: 84aa mv s1,a0 JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12174 - c001f886: 854a mv a0,s2 - c001f888: ab0e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12175 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12182 + c001fa56: 854a mv a0,s2 + c001fa58: 9cee80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12183 if (!str) - c001f88c: ec89 bnez s1,c001f8a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12176 + c001fa5c: ec89 bnez s1,c001fa76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12184 return JS_EXCEPTION; - c001f88e: 4799 li a5,6 - c001f890: f802 sd zero,48(sp) - c001f892: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12198 (discriminator 1) -} - c001f894: 70e6 ld ra,120(sp) - c001f896: 7446 ld s0,112(sp) - c001f898: 7542 ld a0,48(sp) - c001f89a: 75e2 ld a1,56(sp) - c001f89c: 74a6 ld s1,104(sp) - c001f89e: 7906 ld s2,96(sp) - c001f8a0: 2466 fld fs0,88(sp) - c001f8a2: 6109 addi sp,sp,128 - c001f8a4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12178 + c001fa5e: 4799 li a5,6 + c001fa60: f802 sd zero,48(sp) + c001fa62: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12206 (discriminator 1) +} + c001fa64: 70e6 ld ra,120(sp) + c001fa66: 7446 ld s0,112(sp) + c001fa68: 7542 ld a0,48(sp) + c001fa6a: 75e2 ld a1,56(sp) + c001fa6c: 74a6 ld s1,104(sp) + c001fa6e: 7906 ld s2,96(sp) + c001fa70: 2466 fld fs0,88(sp) + c001fa72: 6109 addi sp,sp,128 + c001fa74: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12186 p += skip_spaces(p); - c001f8a6: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12177 + c001fa76: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12185 p = str; - c001f8a8: f026 sd s1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12178 + c001fa78: f026 sd s1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12186 p += skip_spaces(p); - c001f8aa: f1ee50ef jal ra,c0004fc8 - c001f8ae: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12179 + c001fa7a: d4ee50ef jal ra,c0004fc8 + c001fa7e: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12187 if ((p - str) == len) { - c001f8b0: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12178 + c001fa80: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12186 p += skip_spaces(p); - c001f8b2: 95aa add a1,a1,a0 - c001f8b4: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12179 + c001fa82: 95aa add a1,a1,a0 + c001fa84: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12187 if ((p - str) == len) { - c001f8b6: 40958733 sub a4,a1,s1 - c001f8ba: 02f71263 bne a4,a5,c001f8de + c001fa86: 40958733 sub a4,a1,s1 + c001fa8a: 02f71263 bne a4,a5,c001faae JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c001f8be: 4581 li a1,0 - c001f8c0: 854a mv a0,s2 - c001f8c2: bd6f90ef jal ra,c0018c98 - c001f8c6: f2050453 fmv.d.x fs0,a0 - c001f8ca: 842e mv s0,a1 - c001f8cc: e0aa sd a0,64(sp) - c001f8ce: e4ae sd a1,72(sp) + c001fa8e: 4581 li a1,0 + c001fa90: 854a mv a0,s2 + c001fa92: bd6f90ef jal ra,c0018e68 + c001fa96: f2050453 fmv.d.x fs0,a0 + c001fa9a: 842e mv s0,a1 + c001fa9c: e0aa sd a0,64(sp) + c001fa9e: e4ae sd a1,72(sp) JS_StringToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12204 JS_FreeCString(ctx, str); - c001f8d0: 85a6 mv a1,s1 - c001f8d2: 854a mv a0,s2 - c001f8d4: dace90ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12197 + c001faa0: 85a6 mv a1,s1 + c001faa2: 854a mv a0,s2 + c001faa4: ccae90ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12205 return val; - c001f8d8: b822 fsd fs0,48(sp) - c001f8da: fc22 sd s0,56(sp) - c001f8dc: bf65 j c001f894 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12187 + c001faa8: b822 fsd fs0,48(sp) + c001faaa: fc22 sd s0,56(sp) + c001faac: bf65 j c001fa64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12195 val = js_atof(ctx, p, &p, 0, flags); - c001f8de: 08500713 li a4,133 - c001f8e2: 4681 li a3,0 - c001f8e4: 1010 addi a2,sp,32 - c001f8e6: 854a mv a0,s2 - c001f8e8: cf5f80ef jal ra,c00185dc - c001f8ec: e82a sd a0,16(sp) - c001f8ee: f2050453 fmv.d.x fs0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12188 + c001faae: 08500713 li a4,133 + c001fab2: 4681 li a3,0 + c001fab4: 1010 addi a2,sp,32 + c001fab6: 854a mv a0,s2 + c001fab8: cf5f80ef jal ra,c00187ac + c001fabc: e82a sd a0,16(sp) + c001fabe: f2050453 fmv.d.x fs0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12196 p += skip_spaces(p); - c001f8f2: 7502 ld a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12187 + c001fac2: 7502 ld a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12195 val = js_atof(ctx, p, &p, 0, flags); - c001f8f4: 842e mv s0,a1 - c001f8f6: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12188 + c001fac4: 842e mv s0,a1 + c001fac6: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12196 p += skip_spaces(p); - c001f8f8: ed0e50ef jal ra,c0004fc8 - c001f8fc: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12189 + c001fac8: d00e50ef jal ra,c0004fc8 + c001facc: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12197 if (!JS_IsException(val)) { - c001f8fe: 0004071b sext.w a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12188 + c001face: 0004071b sext.w a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12196 p += skip_spaces(p); - c001f902: 953e add a0,a0,a5 - c001f904: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12189 + c001fad2: 953e add a0,a0,a5 + c001fad4: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12197 if (!JS_IsException(val)) { - c001f906: 4799 li a5,6 - c001f908: fcf704e3 beq a4,a5,c001f8d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12190 + c001fad6: 4799 li a5,6 + c001fad8: fcf704e3 beq a4,a5,c001faa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12198 if ((p - str) != len) { - c001f90c: 77a2 ld a5,40(sp) - c001f90e: 8d05 sub a0,a0,s1 - c001f910: fcf500e3 beq a0,a5,c001f8d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12191 + c001fadc: 77a2 ld a5,40(sp) + c001fade: 8d05 sub a0,a0,s1 + c001fae0: fcf500e3 beq a0,a5,c001faa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12199 JS_FreeValue(ctx, val); - c001f914: 65c2 ld a1,16(sp) - c001f916: 6662 ld a2,24(sp) - c001f918: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12192 + c001fae4: 65c2 ld a1,16(sp) + c001fae6: 6662 ld a2,24(sp) + c001fae8: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12200 val = JS_NAN; - c001f91a: 441d li s0,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12191 + c001faea: 441d li s0,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12199 JS_FreeValue(ctx, val); - c001f91c: a1ce80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12192 + c001faec: 93ae80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12200 val = JS_NAN; - c001f920: 00055797 auipc a5,0x55 - c001f924: e687b407 fld fs0,-408(a5) # c0074788 <_erodata+0x8> - c001f928: 12847453 fmul.d fs0,fs0,fs0 - c001f92c: f20007d3 fmv.d.x fa5,zero - c001f930: 12f47453 fmul.d fs0,fs0,fa5 - c001f934: bf71 j c001f8d0 - -00000000c001f936 : + c001faf0: 00055797 auipc a5,0x55 + c001faf4: ef87b407 fld fs0,-264(a5) # c00749e8 <_erodata+0x8> + c001faf8: 12847453 fmul.d fs0,fs0,fs0 + c001fafc: f20007d3 fmv.d.x fa5,zero + c001fb00: 12f47453 fmul.d fs0,fs0,fa5 + c001fb04: bf71 j c001faa0 + +00000000c001fb06 : JS_StringToBigIntErr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12201 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12209 { - c001f936: 715d addi sp,sp,-80 - c001f938: e0a2 sd s0,64(sp) - c001f93a: e486 sd ra,72(sp) - c001f93c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12202 + c001fb06: 715d addi sp,sp,-80 + c001fb08: e0a2 sd s0,64(sp) + c001fb0a: e486 sd ra,72(sp) + c001fb0c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12210 val = JS_StringToBigInt(ctx, val); - c001f93e: f1fff0ef jal ra,c001f85c - c001f942: e42a sd a0,8(sp) + c001fb0e: f1fff0ef jal ra,c001fa2c + c001fb12: e42a sd a0,8(sp) JS_VALUE_IS_NAN(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:239 if (v.tag != JS_TAG_FLOAT64) - c001f944: 479d li a5,7 + c001fb14: 479d li a5,7 JS_StringToBigIntErr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12202 - c001f946: 6522 ld a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12210 + c001fb16: 6522 ld a0,8(sp) JS_VALUE_IS_NAN(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:239 - c001f948: 02f59463 bne a1,a5,c001f970 + c001fb18: 02f59463 bne a1,a5,c001fb40 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:242 return (u.u64 & 0x7fffffffffffffff) > 0x7ff0000000000000; - c001f94c: 00151713 slli a4,a0,0x1 + c001fb1c: 00151713 slli a4,a0,0x1 JS_StringToBigIntErr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12211 if (JS_VALUE_IS_NAN(val)) - c001f950: 7ff00793 li a5,2047 + c001fb20: 7ff00793 li a5,2047 JS_VALUE_IS_NAN(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:242 - c001f954: 8305 srli a4,a4,0x1 + c001fb24: 8305 srli a4,a4,0x1 JS_StringToBigIntErr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12203 - c001f956: 17d2 slli a5,a5,0x34 - c001f958: 00e7fc63 bgeu a5,a4,c001f970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12211 + c001fb26: 17d2 slli a5,a5,0x34 + c001fb28: 00e7fc63 bgeu a5,a4,c001fb40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12212 return JS_ThrowSyntaxError(ctx, "invalid bigint literal"); - c001f95c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12206 + c001fb2c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12214 } - c001f95e: 6406 ld s0,64(sp) - c001f960: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12204 + c001fb2e: 6406 ld s0,64(sp) + c001fb30: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12212 return JS_ThrowSyntaxError(ctx, "invalid bigint literal"); - c001f962: 0003f597 auipc a1,0x3f - c001f966: c8658593 addi a1,a1,-890 # c005e5e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12206 + c001fb32: 0003f597 auipc a1,0x3f + c001fb36: d1658593 addi a1,a1,-746 # c005e848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12214 } - c001f96a: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12204 + c001fb3a: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12212 return JS_ThrowSyntaxError(ctx, "invalid bigint literal"); - c001f96c: fa0f306f j c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12206 + c001fb3c: ebef306f j c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12214 } - c001f970: 60a6 ld ra,72(sp) - c001f972: 6406 ld s0,64(sp) - c001f974: 6161 addi sp,sp,80 - c001f976: 8082 ret + c001fb40: 60a6 ld ra,72(sp) + c001fb42: 6406 ld s0,64(sp) + c001fb44: 6161 addi sp,sp,80 + c001fb46: 8082 ret -00000000c001f978 : +00000000c001fb48 : JS_ToBigIntFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12211 -{ - c001f978: 7139 addi sp,sp,-64 - c001f97a: f822 sd s0,48(sp) - c001f97c: f426 sd s1,40(sp) - c001f97e: f04a sd s2,32(sp) - c001f980: ec4e sd s3,24(sp) - c001f982: e852 sd s4,16(sp) - c001f984: e032 sd a2,0(sp) - c001f986: fc06 sd ra,56(sp) - c001f988: 84aa mv s1,a0 - c001f98a: 842e mv s0,a1 - c001f98c: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12218 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12219 +{ + c001fb48: 7139 addi sp,sp,-64 + c001fb4a: f822 sd s0,48(sp) + c001fb4c: f426 sd s1,40(sp) + c001fb4e: f04a sd s2,32(sp) + c001fb50: ec4e sd s3,24(sp) + c001fb52: e852 sd s4,16(sp) + c001fb54: e032 sd a2,0(sp) + c001fb56: fc06 sd ra,56(sp) + c001fb58: 84aa mv s1,a0 + c001fb5a: 842e mv s0,a1 + c001fb5c: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12226 switch(tag) { - c001f98e: 59e5 li s3,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12263 + c001fb5e: 59e5 li s3,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12271 if (JS_IsException(val)) - c001f990: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12218 + c001fb60: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12226 switch(tag) { - c001f992: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12217 + c001fb62: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12225 tag = JS_VALUE_GET_NORM_TAG(val); - c001f994: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12218 + c001fb64: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12226 switch(tag) { - c001f998: 07378363 beq a5,s3,c001f9fe - c001f99c: 02f9e463 bltu s3,a5,c001f9c4 - c001f9a0: 4705 li a4,1 - c001f9a2: 02e78963 beq a5,a4,c001f9d4 - c001f9a6: 5759 li a4,-10 - c001f9a8: 04e78863 beq a5,a4,c001f9f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12273 + c001fb68: 07378363 beq a5,s3,c001fbce + c001fb6c: 02f9e463 bltu s3,a5,c001fb94 + c001fb70: 4705 li a4,1 + c001fb72: 02e78963 beq a5,a4,c001fba4 + c001fb76: 5759 li a4,-10 + c001fb78: 04e78863 beq a5,a4,c001fbc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12281 JS_FreeValue(ctx, val); - c001f9ac: 6582 ld a1,0(sp) - c001f9ae: 8526 mv a0,s1 - c001f9b0: 988e80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12274 + c001fb7c: 6582 ld a1,0(sp) + c001fb7e: 8526 mv a0,s1 + c001fb80: 8a6e80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12282 JS_ThrowTypeError(ctx, "cannot convert to bigint"); - c001f9b4: 8526 mv a0,s1 - c001f9b6: 0003f597 auipc a1,0x3f - c001f9ba: c4a58593 addi a1,a1,-950 # c005e600 - c001f9be: a39f30ef jal ra,c00133f6 - c001f9c2: a881 j c001fa12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12218 + c001fb84: 8526 mv a0,s1 + c001fb86: 0003f597 auipc a1,0x3f + c001fb8a: cda58593 addi a1,a1,-806 # c005e860 + c001fb8e: 957f30ef jal ra,c00134e4 + c001fb92: a881 j c001fbe2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12226 switch(tag) { - c001f9c4: ff4794e3 bne a5,s4,c001f9ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12267 + c001fb94: ff4794e3 bne a5,s4,c001fb7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12275 val = JS_ToPrimitiveFree(ctx, val, HINT_NUMBER); - c001f9c8: 6582 ld a1,0(sp) - c001f9ca: 4685 li a3,1 - c001f9cc: 8526 mv a0,s1 - c001f9ce: 978fa0ef jal ra,c0019b46 - c001f9d2: a815 j c001fa06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12227 + c001fb98: 6582 ld a1,0(sp) + c001fb9a: 4685 li a3,1 + c001fb9c: 8526 mv a0,s1 + c001fb9e: 978fa0ef jal ra,c0019d16 + c001fba2: a815 j c001fbd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12235 bf_init(ctx->bf_ctx, r); - c001f9d4: 1904b503 ld a0,400(s1) - c001f9d8: 85a2 mv a1,s0 - c001f9da: 6322d0ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12228 + c001fba4: 1904b503 ld a0,400(s1) + c001fba8: 85a2 mv a1,s0 + c001fbaa: 6322d0ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12236 bf_set_si(r, JS_VALUE_GET_INT(val)); - c001f9de: 4582 lw a1,0(sp) - c001f9e0: 8522 mv a0,s0 - c001f9e2: 6f82d0ef jal ra,c004d0da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12278 -} - c001f9e6: 70e2 ld ra,56(sp) - c001f9e8: 8522 mv a0,s0 - c001f9ea: 7442 ld s0,48(sp) - c001f9ec: 74a2 ld s1,40(sp) - c001f9ee: 7902 ld s2,32(sp) - c001f9f0: 69e2 ld s3,24(sp) - c001f9f2: 6a42 ld s4,16(sp) - c001f9f4: 6121 addi sp,sp,64 - c001f9f6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12245 + c001fbae: 4582 lw a1,0(sp) + c001fbb0: 8522 mv a0,s0 + c001fbb2: 6f82d0ef jal ra,c004d2aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12286 +} + c001fbb6: 70e2 ld ra,56(sp) + c001fbb8: 8522 mv a0,s0 + c001fbba: 7442 ld s0,48(sp) + c001fbbc: 74a2 ld s1,40(sp) + c001fbbe: 7902 ld s2,32(sp) + c001fbc0: 69e2 ld s3,24(sp) + c001fbc2: 6a42 ld s4,16(sp) + c001fbc4: 6121 addi sp,sp,64 + c001fbc6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12253 r = &p->num; - c001f9f8: 6402 ld s0,0(sp) - c001f9fa: 0421 addi s0,s0,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12246 + c001fbc8: 6402 ld s0,0(sp) + c001fbca: 0421 addi s0,s0,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12254 break; - c001f9fc: b7ed j c001f9e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12262 + c001fbcc: b7ed j c001fbb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12270 val = JS_StringToBigIntErr(ctx, val); - c001f9fe: 6582 ld a1,0(sp) - c001fa00: 8526 mv a0,s1 - c001fa02: f35ff0ef jal ra,c001f936 - c001fa06: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12263 + c001fbce: 6582 ld a1,0(sp) + c001fbd0: 8526 mv a0,s1 + c001fbd2: f35ff0ef jal ra,c001fb06 + c001fbd6: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12271 if (JS_IsException(val)) - c001fa08: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12262 + c001fbd8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12270 val = JS_StringToBigIntErr(ctx, val); - c001fa0c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12263 + c001fbdc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12271 if (JS_IsException(val)) - c001fa0e: f92793e3 bne a5,s2,c001f994 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12275 + c001fbde: f92793e3 bne a5,s2,c001fb64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12283 return NULL; - c001fa12: 4401 li s0,0 - c001fa14: bfc9 j c001f9e6 + c001fbe2: 4401 li s0,0 + c001fbe4: bfc9 j c001fbb6 -00000000c001fa16 : +00000000c001fbe6 : JS_ToBigInt64Free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12327 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12335 { - c001fa16: 7159 addi sp,sp,-112 - c001fa18: f0a2 sd s0,96(sp) - c001fa1a: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12330 + c001fbe6: 7159 addi sp,sp,-112 + c001fbe8: f0a2 sd s0,96(sp) + c001fbea: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12338 a = JS_ToBigIntFree(ctx, &a_s, val); - c001fa1c: 102c addi a1,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12327 + c001fbec: 102c addi a1,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12335 { - c001fa1e: eca6 sd s1,88(sp) - c001fa20: f486 sd ra,104(sp) - c001fa22: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12330 + c001fbee: eca6 sd s1,88(sp) + c001fbf0: f486 sd ra,104(sp) + c001fbf2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12338 a = JS_ToBigIntFree(ctx, &a_s, val); - c001fa24: f55ff0ef jal ra,c001f978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12331 + c001fbf4: f55ff0ef jal ra,c001fb48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12339 if (!a) { - c001fa28: e909 bnez a0,c001fa3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12332 + c001fbf8: e909 bnez a0,c001fc0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12340 *pres = 0; - c001fa2a: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12333 + c001fbfa: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12341 return -1; - c001fa2e: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12338 -} - c001fa30: 70a6 ld ra,104(sp) - c001fa32: 7406 ld s0,96(sp) - c001fa34: 64e6 ld s1,88(sp) - c001fa36: 6165 addi sp,sp,112 - c001fa38: 8082 ret - c001fa3a: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12335 + c001fbfe: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12346 +} + c001fc00: 70a6 ld ra,104(sp) + c001fc02: 7406 ld s0,96(sp) + c001fc04: 64e6 ld s1,88(sp) + c001fc06: 6165 addi sp,sp,112 + c001fc08: 8082 ret + c001fc0a: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12343 bf_get_int64(pres, a, BF_GET_INT_MOD); - c001fa3c: 4605 li a2,1 - c001fa3e: e42a sd a0,8(sp) - c001fa40: 8522 mv a0,s0 - c001fa42: 01b300ef jal ra,c005025c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12336 + c001fc0c: 4605 li a2,1 + c001fc0e: e42a sd a0,8(sp) + c001fc10: 8522 mv a0,s0 + c001fc12: 01b300ef jal ra,c005042c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12344 JS_FreeBigInt(ctx, a, &a_s); - c001fa46: 65a2 ld a1,8(sp) - c001fa48: 8526 mv a0,s1 - c001fa4a: 1030 addi a2,sp,40 - c001fa4c: d1ee80ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12337 + c001fc16: 65a2 ld a1,8(sp) + c001fc18: 8526 mv a0,s1 + c001fc1a: 1030 addi a2,sp,40 + c001fc1c: c3ce80ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12345 return 0; - c001fa50: 4501 li a0,0 - c001fa52: bff9 j c001fa30 + c001fc20: 4501 li a0,0 + c001fc22: bff9 j c001fc00 -00000000c001fa54 : +00000000c001fc24 : JS_ToBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12341 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12349 { - c001fa54: 7139 addi sp,sp,-64 - c001fa56: f822 sd s0,48(sp) - c001fa58: f426 sd s1,40(sp) - c001fa5a: 842a mv s0,a0 - c001fa5c: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12342 + c001fc24: 7139 addi sp,sp,-64 + c001fc26: f822 sd s0,48(sp) + c001fc28: f426 sd s1,40(sp) + c001fc2a: 842a mv s0,a0 + c001fc2c: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12350 return JS_ToBigInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001fa5e: 8532 mv a0,a2 - c001fa60: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12341 + c001fc2e: 8532 mv a0,a2 + c001fc30: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12349 { - c001fa62: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12342 + c001fc32: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12350 return JS_ToBigInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001fa64: c0be60ef jal ra,c000666e - c001fa68: 862a mv a2,a0 - c001fa6a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12343 + c001fc34: b29e60ef jal ra,c000675c + c001fc38: 862a mv a2,a0 + c001fc3a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12351 } - c001fa6c: 7442 ld s0,48(sp) - c001fa6e: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12342 + c001fc3c: 7442 ld s0,48(sp) + c001fc3e: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12350 return JS_ToBigInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001fa70: 86ae mv a3,a1 - c001fa72: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12343 + c001fc40: 86ae mv a3,a1 + c001fc42: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12351 } - c001fa74: 74a2 ld s1,40(sp) - c001fa76: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12342 + c001fc44: 74a2 ld s1,40(sp) + c001fc46: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12350 return JS_ToBigInt64Free(ctx, pres, JS_DupValue(ctx, val)); - c001fa78: f9fff06f j c001fa16 + c001fc48: f9fff06f j c001fbe6 -00000000c001fa7c : +00000000c001fc4c : JS_ToInt64Ext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10981 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10989 if (JS_IsBigInt(ctx, val)) - c001fa7c: 0006879b sext.w a5,a3 - c001fa80: 5759 li a4,-10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10980 + c001fc4c: 0006879b sext.w a5,a3 + c001fc50: 5759 li a4,-10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10988 { - c001fa82: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10981 + c001fc52: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10989 if (JS_IsBigInt(ctx, val)) - c001fa84: 00e79563 bne a5,a4,c001fa8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10985 + c001fc54: 00e79563 bne a5,a4,c001fc5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10993 } - c001fa88: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10982 + c001fc58: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10990 return JS_ToBigInt64(ctx, pres, val); - c001fa8a: fcbff06f j c001fa54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10985 + c001fc5a: fcbff06f j c001fc24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10993 } - c001fa8e: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10984 + c001fc5e: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10992 return JS_ToInt64(ctx, pres, val); - c001fa90: dfbfe06f j c001e88a + c001fc60: dfbfe06f j c001ea5a -00000000c001fa94 : +00000000c001fc64 : js_dataview_setValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55030 static JSValue js_dataview_setValue(JSContext *ctx, JSValueConst this_obj, int argc, JSValueConst *argv, int class_id) { - c001fa94: 7175 addi sp,sp,-144 - c001fa96: ecd6 sd s5,88(sp) - c001fa98: 8ab6 mv s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55032 + c001fc64: 7175 addi sp,sp,-144 + c001fc66: ecd6 sd s5,88(sp) + c001fc68: 8ab6 mv s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55040 uint64_t v64; uint32_t v; uint64_t pos; JSValueConst val; ta = JS_GetOpaque2(ctx, this_obj, JS_CLASS_DATAVIEW); - c001fa9a: 02000693 li a3,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55022 -{ - c001fa9e: e122 sd s0,128(sp) - c001faa0: fca6 sd s1,120(sp) - c001faa2: f4ce sd s3,104(sp) - c001faa4: e506 sd ra,136(sp) - c001faa6: f8ca sd s2,112(sp) - c001faa8: f0d2 sd s4,96(sp) - c001faaa: e8da sd s6,80(sp) - c001faac: 89aa mv s3,a0 - c001faae: e02e sd a1,0(sp) - c001fab0: e432 sd a2,8(sp) - c001fab2: 843a mv s0,a4 - c001fab4: 84be mv s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55032 + c001fc6a: 02000693 li a3,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55030 +{ + c001fc6e: e122 sd s0,128(sp) + c001fc70: fca6 sd s1,120(sp) + c001fc72: f4ce sd s3,104(sp) + c001fc74: e506 sd ra,136(sp) + c001fc76: f8ca sd s2,112(sp) + c001fc78: f0d2 sd s4,96(sp) + c001fc7a: e8da sd s6,80(sp) + c001fc7c: 89aa mv s3,a0 + c001fc7e: e02e sd a1,0(sp) + c001fc80: e432 sd a2,8(sp) + c001fc82: 843a mv s0,a4 + c001fc84: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55040 ta = JS_GetOpaque2(ctx, this_obj, JS_CLASS_DATAVIEW); - c001fab6: ac3f30ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55033 + c001fc86: 9e1f30ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55041 if (!ta) - c001faba: e509 bnez a0,c001fac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55050 + c001fc8a: e509 bnez a0,c001fc94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55058 if (JS_ToBigInt64(ctx, (int64_t *)&v64, val)) return JS_EXCEPTION; } else { double d; if (JS_ToFloat64(ctx, &d, val)) return JS_EXCEPTION; - c001fabc: e082 sd zero,64(sp) - c001fabe: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55105 + c001fc8c: e082 sd zero,64(sp) + c001fc8e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55113 put_u64(ptr, v64); break; default: abort(); } return JS_UNDEFINED; - c001fac0: e4be sd a5,72(sp) - c001fac2: a0bd j c001fb30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55036 + c001fc90: e4be sd a5,72(sp) + c001fc92: a0bd j c001fd00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55044 if (JS_ToIndex(ctx, &pos, argv[0])) - c001fac4: 6010 ld a2,0(s0) - c001fac6: 6414 ld a3,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55035 + c001fc94: 6010 ld a2,0(s0) + c001fc96: 6414 ld a3,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55043 size = 1 << typed_array_size_log2(class_id); - c001fac8: feb4871b addiw a4,s1,-21 - c001facc: 00047797 auipc a5,0x47 - c001fad0: 46c78793 addi a5,a5,1132 # c0066f38 - c001fad4: 97ba add a5,a5,a4 - c001fad6: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55036 + c001fc98: feb4871b addiw a4,s1,-21 + c001fc9c: 00047797 auipc a5,0x47 + c001fca0: 4fc78793 addi a5,a5,1276 # c0067198 + c001fca4: 97ba add a5,a5,a4 + c001fca6: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55044 if (JS_ToIndex(ctx, &pos, argv[0])) - c001fad8: 100c addi a1,sp,32 - c001fada: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55035 + c001fca8: 100c addi a1,sp,32 + c001fcaa: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55043 size = 1 << typed_array_size_log2(class_id); - c001fadc: 0007cb03 lbu s6,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55036 + c001fcac: 0007cb03 lbu s6,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55044 if (JS_ToIndex(ctx, &pos, argv[0])) - c001fae0: fa6fe0ef jal ra,c001e286 - c001fae4: 892a mv s2,a0 - c001fae6: f979 bnez a0,c001fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55038 + c001fcb0: fa6fe0ef jal ra,c001e456 + c001fcb4: 892a mv s2,a0 + c001fcb6: f979 bnez a0,c001fc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55046 val = argv[1]; - c001fae8: 6810 ld a2,16(s0) - c001faea: 6c14 ld a3,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55039 + c001fcb8: 6810 ld a2,16(s0) + c001fcba: 6c14 ld a3,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55047 v = 0; /* avoid warning */ - c001faec: ca02 sw zero,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55038 + c001fcbc: ca02 sw zero,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55046 val = argv[1]; - c001faee: f832 sd a2,48(sp) - c001faf0: fc36 sd a3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55040 + c001fcbe: f832 sd a2,48(sp) + c001fcc0: fc36 sd a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55048 v64 = 0; /* avoid warning */ - c001faf2: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55041 + c001fcc2: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55049 if (class_id <= JS_CLASS_UINT32_ARRAY) { - c001faf4: 47ed li a5,27 - c001faf6: 0497c963 blt a5,s1,c001fb48 + c001fcc4: 47ed li a5,27 + c001fcc6: 0497c963 blt a5,s1,c001fd18 JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c001fafa: 084c addi a1,sp,20 - c001fafc: 854e mv a0,s3 - c001fafe: e0b2 sd a2,64(sp) - c001fb00: e4b6 sd a3,72(sp) - c001fb02: 86dfc0ef jal ra,c001c36e + c001fcca: 084c addi a1,sp,20 + c001fccc: 854e mv a0,s3 + c001fcce: e0b2 sd a2,64(sp) + c001fcd0: e4b6 sd a3,72(sp) + c001fcd2: 86dfc0ef jal ra,c001c53e js_dataview_setValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55045 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55053 if (JS_ToBigInt64(ctx, (int64_t *)&v64, val)) - c001fb06: f95d bnez a0,c001fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55065 + c001fcd6: f95d bnez a0,c001fc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55073 if (argc > 2) - c001fb08: 4789 li a5,2 - c001fb0a: 0157d863 bge a5,s5,c001fb1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55066 + c001fcd8: 4789 li a5,2 + c001fcda: 0157d863 bge a5,s5,c001fcea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55074 is_swap = JS_ToBool(ctx, argv[2]); - c001fb0e: 700c ld a1,32(s0) - c001fb10: 7410 ld a2,40(s0) - c001fb12: 854e mv a0,s3 - c001fb14: b14eb0ef jal ra,c000ae28 - c001fb18: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55070 + c001fcde: 700c ld a1,32(s0) + c001fce0: 7410 ld a2,40(s0) + c001fce2: 854e mv a0,s3 + c001fce4: a32eb0ef jal ra,c000af16 + c001fce8: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55078 abuf = ta->buffer->u.array_buffer; - c001fb1a: 018a3783 ld a5,24(s4) - c001fb1e: 7b98 ld a4,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55071 + c001fcea: 018a3783 ld a5,24(s4) + c001fcee: 7b98 ld a4,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55079 if (abuf->detached) - c001fb20: 00474783 lbu a5,4(a4) - c001fb24: cfa9 beqz a5,c001fb7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55072 + c001fcf0: 00474783 lbu a5,4(a4) + c001fcf4: cfa9 beqz a5,c001fd4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55080 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001fb26: 854e mv a0,s3 - c001fb28: 9aaf40ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55074 + c001fcf6: 854e mv a0,s3 + c001fcf8: 8c8f40ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55082 return JS_ThrowRangeError(ctx, "out of bound"); - c001fb2c: e0aa sd a0,64(sp) - c001fb2e: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55106 (discriminator 8) -} - c001fb30: 60aa ld ra,136(sp) - c001fb32: 640a ld s0,128(sp) - c001fb34: 6506 ld a0,64(sp) - c001fb36: 65a6 ld a1,72(sp) - c001fb38: 74e6 ld s1,120(sp) - c001fb3a: 7946 ld s2,112(sp) - c001fb3c: 79a6 ld s3,104(sp) - c001fb3e: 7a06 ld s4,96(sp) - c001fb40: 6ae6 ld s5,88(sp) - c001fb42: 6b46 ld s6,80(sp) - c001fb44: 6149 addi sp,sp,144 - c001fb46: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55044 + c001fcfc: e0aa sd a0,64(sp) + c001fcfe: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55114 (discriminator 8) +} + c001fd00: 60aa ld ra,136(sp) + c001fd02: 640a ld s0,128(sp) + c001fd04: 6506 ld a0,64(sp) + c001fd06: 65a6 ld a1,72(sp) + c001fd08: 74e6 ld s1,120(sp) + c001fd0a: 7946 ld s2,112(sp) + c001fd0c: 79a6 ld s3,104(sp) + c001fd0e: 7a06 ld s4,96(sp) + c001fd10: 6ae6 ld s5,88(sp) + c001fd12: 6b46 ld s6,80(sp) + c001fd14: 6149 addi sp,sp,144 + c001fd16: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55052 } else if (class_id <= JS_CLASS_BIG_UINT64_ARRAY) { - c001fb48: 47f5 li a5,29 - c001fb4a: 0097c763 blt a5,s1,c001fb58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55045 + c001fd18: 47f5 li a5,29 + c001fd1a: 0097c763 blt a5,s1,c001fd28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55053 if (JS_ToBigInt64(ctx, (int64_t *)&v64, val)) - c001fb4e: 082c addi a1,sp,24 - c001fb50: 854e mv a0,s3 - c001fb52: f03ff0ef jal ra,c001fa54 - c001fb56: bf45 j c001fb06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55049 + c001fd1e: 082c addi a1,sp,24 + c001fd20: 854e mv a0,s3 + c001fd22: f03ff0ef jal ra,c001fc24 + c001fd26: bf45 j c001fcd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55057 if (JS_ToFloat64(ctx, &d, val)) - c001fb58: 102c addi a1,sp,40 - c001fb5a: 854e mv a0,s3 - c001fb5c: b33fc0ef jal ra,c001c68e - c001fb60: fd31 bnez a0,c001fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55051 + c001fd28: 102c addi a1,sp,40 + c001fd2a: 854e mv a0,s3 + c001fd2c: b33fc0ef jal ra,c001c85e + c001fd30: fd31 bnez a0,c001fc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55059 if (class_id == JS_CLASS_FLOAT32_ARRAY) { - c001fb62: 4779 li a4,30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55056 + c001fd32: 4779 li a4,30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55064 u.f = d; - c001fb64: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55051 + c001fd34: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55059 if (class_id == JS_CLASS_FLOAT32_ARRAY) { - c001fb66: 00e49a63 bne s1,a4,c001fb7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55056 + c001fd36: 00e49a63 bne s1,a4,c001fd4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55064 u.f = d; - c001fb6a: f20787d3 fmv.d.x fa5,a5 - c001fb6e: 4017f7d3 fcvt.s.d fa5,fa5 - c001fb72: e00787d3 fmv.x.w a5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55057 + c001fd3a: f20787d3 fmv.d.x fa5,a5 + c001fd3e: 4017f7d3 fcvt.s.d fa5,fa5 + c001fd42: e00787d3 fmv.x.w a5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55065 v = u.i; - c001fb76: ca3e sw a5,20(sp) - c001fb78: bf41 j c001fb08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55061 (discriminator 7) + c001fd46: ca3e sw a5,20(sp) + c001fd48: bf41 j c001fcd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55069 (discriminator 7) v64 = u.u64; - c001fb7a: ec3e sd a5,24(sp) - c001fb7c: b771 j c001fb08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55073 + c001fd4a: ec3e sd a5,24(sp) + c001fd4c: b771 j c001fcd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55081 if ((pos + size) > ta->length) - c001fb7e: 7682 ld a3,32(sp) - c001fb80: 4785 li a5,1 - c001fb82: 024a6603 lwu a2,36(s4) - c001fb86: 016797bb sllw a5,a5,s6 - c001fb8a: 97b6 add a5,a5,a3 - c001fb8c: 00f67a63 bgeu a2,a5,c001fba0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55074 + c001fd4e: 7682 ld a3,32(sp) + c001fd50: 4785 li a5,1 + c001fd52: 024a6603 lwu a2,36(s4) + c001fd56: 016797bb sllw a5,a5,s6 + c001fd5a: 97b6 add a5,a5,a3 + c001fd5c: 00f67a63 bgeu a2,a5,c001fd70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55082 return JS_ThrowRangeError(ctx, "out of bound"); - c001fb90: 854e mv a0,s3 - c001fb92: 0003f597 auipc a1,0x3f - c001fb96: 8f658593 addi a1,a1,-1802 # c005e488 - c001fb9a: dc1f40ef jal ra,c001495a - c001fb9e: b779 j c001fb2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55075 + c001fd60: 854e mv a0,s3 + c001fd62: 0003f597 auipc a1,0x3f + c001fd66: 98658593 addi a1,a1,-1658 # c005e6e8 + c001fd6a: cdff40ef jal ra,c0014a48 + c001fd6e: b779 j c001fcfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55083 ptr = abuf->data + ta->offset + pos; - c001fba0: 020a6403 lwu s0,32(s4) - c001fba4: 34a9 addiw s1,s1,-22 - c001fba6: 00d407b3 add a5,s0,a3 - c001fbaa: 6700 ld s0,8(a4) - c001fbac: 0004871b sext.w a4,s1 - c001fbb0: 943e add s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55077 + c001fd70: 020a6403 lwu s0,32(s4) + c001fd74: 34a9 addiw s1,s1,-22 + c001fd76: 00d407b3 add a5,s0,a3 + c001fd7a: 6700 ld s0,8(a4) + c001fd7c: 0004871b sext.w a4,s1 + c001fd80: 943e add s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55085 switch(class_id) { - c001fbb2: 47a5 li a5,9 - c001fbb4: 0ce7eb63 bltu a5,a4,c001fc8a - c001fbb8: 02049793 slli a5,s1,0x20 - c001fbbc: 01e7d493 srli s1,a5,0x1e - c001fbc0: 0003f717 auipc a4,0x3f - c001fbc4: a5c70713 addi a4,a4,-1444 # c005e61c - c001fbc8: 94ba add s1,s1,a4 - c001fbca: 409c lw a5,0(s1) - c001fbcc: 97ba add a5,a5,a4 - c001fbce: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55080 + c001fd82: 47a5 li a5,9 + c001fd84: 0ce7eb63 bltu a5,a4,c001fe5a + c001fd88: 02049793 slli a5,s1,0x20 + c001fd8c: 01e7d493 srli s1,a5,0x1e + c001fd90: 0003f717 auipc a4,0x3f + c001fd94: aec70713 addi a4,a4,-1300 # c005e87c + c001fd98: 94ba add s1,s1,a4 + c001fd9a: 409c lw a5,0(s1) + c001fd9c: 97ba add a5,a5,a4 + c001fd9e: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55088 *ptr = v; - c001fbd0: 47d2 lw a5,20(sp) - c001fbd2: 00f40023 sb a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55105 + c001fda0: 47d2 lw a5,20(sp) + c001fda2: 00f40023 sb a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55113 return JS_UNDEFINED; - c001fbd6: e082 sd zero,64(sp) - c001fbd8: 478d li a5,3 - c001fbda: b5dd j c001fac0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55084 + c001fda6: e082 sd zero,64(sp) + c001fda8: 478d li a5,3 + c001fdaa: b5dd j c001fc90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55092 if (is_swap) - c001fbdc: 4785 li a5,1 - c001fbde: 02f90263 beq s2,a5,c001fc02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55085 + c001fdac: 4785 li a5,1 + c001fdae: 02f90263 beq s2,a5,c001fdd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55093 v = bswap16(v); - c001fbe2: 01415783 lhu a5,20(sp) - c001fbe6: 0087971b slliw a4,a5,0x8 - c001fbea: 0107979b slliw a5,a5,0x10 - c001fbee: 0107d79b srliw a5,a5,0x10 - c001fbf2: 0087d79b srliw a5,a5,0x8 - c001fbf6: 8fd9 or a5,a5,a4 - c001fbf8: 0107979b slliw a5,a5,0x10 - c001fbfc: 0107d79b srliw a5,a5,0x10 - c001fc00: ca3e sw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55086 + c001fdb2: 01415783 lhu a5,20(sp) + c001fdb6: 0087971b slliw a4,a5,0x8 + c001fdba: 0107979b slliw a5,a5,0x10 + c001fdbe: 0107d79b srliw a5,a5,0x10 + c001fdc2: 0087d79b srliw a5,a5,0x8 + c001fdc6: 8fd9 or a5,a5,a4 + c001fdc8: 0107979b slliw a5,a5,0x10 + c001fdcc: 0107d79b srliw a5,a5,0x10 + c001fdd0: ca3e sw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55094 put_u16(ptr, v); - c001fc02: 47d2 lw a5,20(sp) + c001fdd2: 47d2 lw a5,20(sp) put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c001fc04: 00f40023 sb a5,0(s0) - c001fc08: 83a1 srli a5,a5,0x8 - c001fc0a: 00f400a3 sb a5,1(s0) + c001fdd4: 00f40023 sb a5,0(s0) + c001fdd8: 83a1 srli a5,a5,0x8 + c001fdda: 00f400a3 sb a5,1(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:196 } - c001fc0e: b7e1 j c001fbd6 + c001fdde: b7e1 j c001fda6 js_dataview_setValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55099 if (is_swap) - c001fc10: 4785 li a5,1 - c001fc12: 00f90663 beq s2,a5,c001fc1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55092 + c001fde0: 4785 li a5,1 + c001fde2: 00f90663 beq s2,a5,c001fdee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55100 v = bswap32(v); - c001fc16: 4552 lw a0,20(sp) - c001fc18: bc4e40ef jal ra,c0003fdc - c001fc1c: ca2a sw a0,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55093 + c001fde6: 4552 lw a0,20(sp) + c001fde8: 9f4e40ef jal ra,c0003fdc + c001fdec: ca2a sw a0,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55101 put_u32(ptr, v); - c001fc1e: 47d2 lw a5,20(sp) + c001fdee: 47d2 lw a5,20(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c001fc20: 0087d71b srliw a4,a5,0x8 - c001fc24: 00f40023 sb a5,0(s0) - c001fc28: 00e400a3 sb a4,1(s0) - c001fc2c: 0107d71b srliw a4,a5,0x10 - c001fc30: 0187d79b srliw a5,a5,0x18 - c001fc34: 00e40123 sb a4,2(s0) - c001fc38: 00f401a3 sb a5,3(s0) + c001fdf0: 0087d71b srliw a4,a5,0x8 + c001fdf4: 00f40023 sb a5,0(s0) + c001fdf8: 00e400a3 sb a4,1(s0) + c001fdfc: 0107d71b srliw a4,a5,0x10 + c001fe00: 0187d79b srliw a5,a5,0x18 + c001fe04: 00e40123 sb a4,2(s0) + c001fe08: 00f401a3 sb a5,3(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:181 } - c001fc3c: bf69 j c001fbd6 + c001fe0c: bf69 j c001fda6 js_dataview_setValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55098 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55106 if (is_swap) - c001fc3e: 4785 li a5,1 - c001fc40: 00f90663 beq s2,a5,c001fc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55099 + c001fe0e: 4785 li a5,1 + c001fe10: 00f90663 beq s2,a5,c001fe1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55107 v64 = bswap64(v64); - c001fc44: 6562 ld a0,24(sp) - c001fc46: bbee40ef jal ra,c0004004 - c001fc4a: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55100 + c001fe14: 6562 ld a0,24(sp) + c001fe16: 9eee40ef jal ra,c0004004 + c001fe1a: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55108 put_u64(ptr, v64); - c001fc4c: 67e2 ld a5,24(sp) + c001fe1c: 67e2 ld a5,24(sp) put_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:165 ((struct packed_u64 *)tab)->v = val; - c001fc4e: 0087d713 srli a4,a5,0x8 - c001fc52: 00e400a3 sb a4,1(s0) - c001fc56: 0107d713 srli a4,a5,0x10 - c001fc5a: 00e40123 sb a4,2(s0) - c001fc5e: 0187d71b srliw a4,a5,0x18 - c001fc62: 00e401a3 sb a4,3(s0) - c001fc66: 0207d713 srli a4,a5,0x20 - c001fc6a: 00e40223 sb a4,4(s0) - c001fc6e: 0287d713 srli a4,a5,0x28 - c001fc72: 00f40023 sb a5,0(s0) - c001fc76: 00e402a3 sb a4,5(s0) - c001fc7a: 0307d713 srli a4,a5,0x30 - c001fc7e: 93e1 srli a5,a5,0x38 - c001fc80: 00e40323 sb a4,6(s0) - c001fc84: 00f403a3 sb a5,7(s0) + c001fe1e: 0087d713 srli a4,a5,0x8 + c001fe22: 00e400a3 sb a4,1(s0) + c001fe26: 0107d713 srli a4,a5,0x10 + c001fe2a: 00e40123 sb a4,2(s0) + c001fe2e: 0187d71b srliw a4,a5,0x18 + c001fe32: 00e401a3 sb a4,3(s0) + c001fe36: 0207d713 srli a4,a5,0x20 + c001fe3a: 00e40223 sb a4,4(s0) + c001fe3e: 0287d713 srli a4,a5,0x28 + c001fe42: 00f40023 sb a5,0(s0) + c001fe46: 00e402a3 sb a4,5(s0) + c001fe4a: 0307d713 srli a4,a5,0x30 + c001fe4e: 93e1 srli a5,a5,0x38 + c001fe50: 00e40323 sb a4,6(s0) + c001fe54: 00f403a3 sb a5,7(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:166 } - c001fc88: b7b9 j c001fbd6 + c001fe58: b7b9 j c001fda6 js_dataview_setValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55111 abort(); - c001fc8a: 381350ef jal ra,c005580a + c001fe5a: 381350ef jal ra,c00559da -00000000c001fc8e : +00000000c001fe5e : js_typed_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53581 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53589 { - c001fc8e: 7159 addi sp,sp,-112 - c001fc90: f0a2 sd s0,96(sp) - c001fc92: eca6 sd s1,88(sp) - c001fc94: e0d2 sd s4,64(sp) - c001fc96: f486 sd ra,104(sp) - c001fc98: e8ca sd s2,80(sp) - c001fc9a: e4ce sd s3,72(sp) - c001fc9c: 84aa mv s1,a0 - c001fc9e: e02e sd a1,0(sp) - c001fca0: e432 sd a2,8(sp) - c001fca2: 8a36 mv s4,a3 - c001fca4: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53586 + c001fe5e: 7159 addi sp,sp,-112 + c001fe60: f0a2 sd s0,96(sp) + c001fe62: eca6 sd s1,88(sp) + c001fe64: e0d2 sd s4,64(sp) + c001fe66: f486 sd ra,104(sp) + c001fe68: e8ca sd s2,80(sp) + c001fe6a: e4ce sd s3,72(sp) + c001fe6c: 84aa mv s1,a0 + c001fe6e: e02e sd a1,0(sp) + c001fe70: e432 sd a2,8(sp) + c001fe72: 8a36 mv s4,a3 + c001fe74: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53594 len = js_typed_array_get_length_internal(ctx, this_val); - c001fca6: b70f40ef jal ra,c0014016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53587 + c001fe76: a8ef40ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53595 if (len < 0) - c001fcaa: 00055f63 bgez a0,c001fcc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53607 + c001fe7a: 00055f63 bgez a0,c001fe98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53615 return JS_EXCEPTION; - c001fcae: 4799 li a5,6 - c001fcb0: f002 sd zero,32(sp) - c001fcb2: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53663 (discriminator 12) -} - c001fcb4: 70a6 ld ra,104(sp) - c001fcb6: 7406 ld s0,96(sp) - c001fcb8: 7502 ld a0,32(sp) - c001fcba: 75a2 ld a1,40(sp) - c001fcbc: 64e6 ld s1,88(sp) - c001fcbe: 6946 ld s2,80(sp) - c001fcc0: 69a6 ld s3,72(sp) - c001fcc2: 6a06 ld s4,64(sp) - c001fcc4: 6165 addi sp,sp,112 - c001fcc6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53589 + c001fe7e: 4799 li a5,6 + c001fe80: f002 sd zero,32(sp) + c001fe82: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53671 (discriminator 12) +} + c001fe84: 70a6 ld ra,104(sp) + c001fe86: 7406 ld s0,96(sp) + c001fe88: 7502 ld a0,32(sp) + c001fe8a: 75a2 ld a1,40(sp) + c001fe8c: 64e6 ld s1,88(sp) + c001fe8e: 6946 ld s2,80(sp) + c001fe90: 69a6 ld s3,72(sp) + c001fe92: 6a06 ld s4,64(sp) + c001fe94: 6165 addi sp,sp,112 + c001fe96: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53597 p = JS_VALUE_GET_OBJ(this_val); - c001fcc8: 6902 ld s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53591 + c001fe98: 6902 ld s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53599 if (p->class_id == JS_CLASS_UINT8C_ARRAY) { - c001fcca: 4755 li a4,21 - c001fccc: 89aa mv s3,a0 - c001fcce: 00695783 lhu a5,6(s2) - c001fcd2: 06e79f63 bne a5,a4,c001fd50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53593 + c001fe9a: 4755 li a4,21 + c001fe9c: 89aa mv s3,a0 + c001fe9e: 00695783 lhu a5,6(s2) + c001fea2: 06e79f63 bne a5,a4,c001ff20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53601 if (JS_ToUint8ClampFree(ctx, &v, JS_DupValue(ctx, argv[0]))) - c001fcd6: 6008 ld a0,0(s0) - c001fcd8: 640c ld a1,8(s0) - c001fcda: 995e60ef jal ra,c000666e - c001fcde: 862a mv a2,a0 - c001fce0: 86ae mv a3,a1 - c001fce2: f82a sd a0,48(sp) - c001fce4: fc2e sd a1,56(sp) - c001fce6: 8526 mv a0,s1 - c001fce8: 084c addi a1,sp,20 - c001fcea: 863fc0ef jal ra,c001c54c - c001fcee: f161 bnez a0,c001fcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53595 + c001fea6: 6008 ld a0,0(s0) + c001fea8: 640c ld a1,8(s0) + c001feaa: 8b3e60ef jal ra,c000675c + c001feae: 862a mv a2,a0 + c001feb0: 86ae mv a3,a1 + c001feb2: f82a sd a0,48(sp) + c001feb4: fc2e sd a1,56(sp) + c001feb6: 8526 mv a0,s1 + c001feb8: 084c addi a1,sp,20 + c001feba: 863fc0ef jal ra,c001c71c + c001febe: f161 bnez a0,c001fe7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53603 v64 = v; - c001fcf0: 47d2 lw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53600 + c001fec0: 47d2 lw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53608 v64 = v; - c001fcf2: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53622 + c001fec2: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53630 k = 0; - c001fcf4: c802 sw zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53623 + c001fec4: c802 sw zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53631 if (argc > 1) { - c001fcf6: 4785 li a5,1 - c001fcf8: 0147dc63 bge a5,s4,c001fd10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53624 + c001fec6: 4785 li a5,1 + c001fec8: 0147dc63 bge a5,s4,c001fee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53632 if (JS_ToInt32Clamp(ctx, &k, argv[1], 0, len, len)) - c001fcfc: 6810 ld a2,16(s0) - c001fcfe: 6c14 ld a3,24(s0) - c001fd00: 884e mv a6,s3 - c001fd02: 87ce mv a5,s3 - c001fd04: 4701 li a4,0 - c001fd06: 080c addi a1,sp,16 - c001fd08: 8526 mv a0,s1 - c001fd0a: dc3fd0ef jal ra,c001dacc - c001fd0e: f145 bnez a0,c001fcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53628 + c001fecc: 6810 ld a2,16(s0) + c001fece: 6c14 ld a3,24(s0) + c001fed0: 884e mv a6,s3 + c001fed2: 87ce mv a5,s3 + c001fed4: 4701 li a4,0 + c001fed6: 080c addi a1,sp,16 + c001fed8: 8526 mv a0,s1 + c001feda: dc3fd0ef jal ra,c001dc9c + c001fede: f145 bnez a0,c001fe7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53636 final = len; - c001fd10: ca4e sw s3,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53629 + c001fee0: ca4e sw s3,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53637 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c001fd12: 4789 li a5,2 - c001fd14: 0347d163 bge a5,s4,c001fd36 + c001fee2: 4789 li a5,2 + c001fee4: 0347d163 bge a5,s4,c001ff06 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c001fd18: 7414 ld a3,40(s0) + c001fee8: 7414 ld a3,40(s0) js_typed_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53629 (discriminator 1) - c001fd1a: 478d li a5,3 - c001fd1c: 0006871b sext.w a4,a3 - c001fd20: 00f70b63 beq a4,a5,c001fd36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53637 (discriminator 1) + c001feea: 478d li a5,3 + c001feec: 0006871b sext.w a4,a3 + c001fef0: 00f70b63 beq a4,a5,c001ff06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53638 if (JS_ToInt32Clamp(ctx, &final, argv[2], 0, len, len)) - c001fd24: 7010 ld a2,32(s0) - c001fd26: 884e mv a6,s3 - c001fd28: 87ce mv a5,s3 - c001fd2a: 4701 li a4,0 - c001fd2c: 084c addi a1,sp,20 - c001fd2e: 8526 mv a0,s1 - c001fd30: d9dfd0ef jal ra,c001dacc - c001fd34: fd2d bnez a0,c001fcae + c001fef4: 7010 ld a2,32(s0) + c001fef6: 884e mv a6,s3 + c001fef8: 87ce mv a5,s3 + c001fefa: 4701 li a4,0 + c001fefc: 084c addi a1,sp,20 + c001fefe: 8526 mv a0,s1 + c001ff00: d9dfd0ef jal ra,c001dc9c + c001ff04: fd2d bnez a0,c001fe7e typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c001fd36: 03093783 ld a5,48(s2) - c001fd3a: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c001ff06: 03093783 ld a5,48(s2) + c001ff0a: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c001fd3c: 7b9c ld a5,48(a5) + c001ff0c: 7b9c ld a5,48(a5) js_typed_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53642 if (typed_array_is_detached(ctx, p)) - c001fd3e: 0047c783 lbu a5,4(a5) - c001fd42: cba5 beqz a5,c001fdb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53635 + c001ff0e: 0047c783 lbu a5,4(a5) + c001ff12: cba5 beqz a5,c001ff82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53643 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c001fd44: 8526 mv a0,s1 - c001fd46: f8df30ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53662 + c001ff14: 8526 mv a0,s1 + c001ff16: eabf30ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53670 return JS_DupValue(ctx, this_val); - c001fd4a: f02a sd a0,32(sp) - c001fd4c: f42e sd a1,40(sp) - c001fd4e: b79d j c001fcb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53596 + c001ff1a: f02a sd a0,32(sp) + c001ff1c: f42e sd a1,40(sp) + c001ff1e: b79d j c001fe84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53604 } else if (p->class_id <= JS_CLASS_UINT32_ARRAY) { - c001fd50: 476d li a4,27 - c001fd52: 00f76e63 bltu a4,a5,c001fd6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53598 + c001ff20: 476d li a4,27 + c001ff22: 00f76e63 bltu a4,a5,c001ff3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53606 if (JS_ToUint32(ctx, &v, argv[0])) - c001fd56: 6010 ld a2,0(s0) - c001fd58: 6414 ld a3,8(s0) + c001ff26: 6010 ld a2,0(s0) + c001ff28: 6414 ld a3,8(s0) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c001fd5a: 084c addi a1,sp,20 - c001fd5c: 8526 mv a0,s1 - c001fd5e: f832 sd a2,48(sp) - c001fd60: fc36 sd a3,56(sp) - c001fd62: e0cfc0ef jal ra,c001c36e + c001ff2a: 084c addi a1,sp,20 + c001ff2c: 8526 mv a0,s1 + c001ff2e: f832 sd a2,48(sp) + c001ff30: fc36 sd a3,56(sp) + c001ff32: e0cfc0ef jal ra,c001c53e js_typed_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53598 - c001fd66: f521 bnez a0,c001fcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53606 + c001ff36: f521 bnez a0,c001fe7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53608 v64 = v; - c001fd68: 01416783 lwu a5,20(sp) - c001fd6c: b759 j c001fcf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53601 + c001ff38: 01416783 lwu a5,20(sp) + c001ff3c: b759 j c001fec2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53609 } else if (p->class_id <= JS_CLASS_BIG_UINT64_ARRAY) { - c001fd6e: 4775 li a4,29 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53602 + c001ff3e: 4775 li a4,29 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53610 if (JS_ToBigInt64(ctx, (int64_t *)&v64, argv[0])) - c001fd70: 6010 ld a2,0(s0) - c001fd72: 6414 ld a3,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53601 + c001ff40: 6010 ld a2,0(s0) + c001ff42: 6414 ld a3,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53609 } else if (p->class_id <= JS_CLASS_BIG_UINT64_ARRAY) { - c001fd74: 00f76863 bltu a4,a5,c001fd84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53602 + c001ff44: 00f76863 bltu a4,a5,c001ff54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53610 if (JS_ToBigInt64(ctx, (int64_t *)&v64, argv[0])) - c001fd78: 082c addi a1,sp,24 - c001fd7a: 8526 mv a0,s1 - c001fd7c: cd9ff0ef jal ra,c001fa54 - c001fd80: d935 beqz a0,c001fcf4 - c001fd82: b735 j c001fcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53606 + c001ff48: 082c addi a1,sp,24 + c001ff4a: 8526 mv a0,s1 + c001ff4c: cd9ff0ef jal ra,c001fc24 + c001ff50: d935 beqz a0,c001fec4 + c001ff52: b735 j c001fe7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53614 if (JS_ToFloat64(ctx, &d, argv[0])) - c001fd84: 180c addi a1,sp,48 - c001fd86: 8526 mv a0,s1 - c001fd88: 907fc0ef jal ra,c001c68e - c001fd8c: f10d bnez a0,c001fcae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53613 + c001ff54: 180c addi a1,sp,48 + c001ff56: 8526 mv a0,s1 + c001ff58: 907fc0ef jal ra,c001c85e + c001ff5c: f10d bnez a0,c001fe7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53621 u.f = d; - c001fd8e: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53608 + c001ff5e: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53616 if (p->class_id == JS_CLASS_FLOAT32_ARRAY) { - c001fd90: 00695603 lhu a2,6(s2) - c001fd94: 46f9 li a3,30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53617 + c001ff60: 00695603 lhu a2,6(s2) + c001ff64: 46f9 li a3,30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53625 u.d = d; - c001fd96: 873e mv a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53608 + c001ff66: 873e mv a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53616 if (p->class_id == JS_CLASS_FLOAT32_ARRAY) { - c001fd98: 00d61b63 bne a2,a3,c001fdae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53613 + c001ff68: 00d61b63 bne a2,a3,c001ff7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53621 u.f = d; - c001fd9c: f20787d3 fmv.d.x fa5,a5 - c001fda0: 4017f7d3 fcvt.s.d fa5,fa5 - c001fda4: e00787d3 fmv.x.w a5,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53614 + c001ff6c: f20787d3 fmv.d.x fa5,a5 + c001ff70: 4017f7d3 fcvt.s.d fa5,fa5 + c001ff74: e00787d3 fmv.x.w a5,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53622 v64 = u.u32; - c001fda8: 02079713 slli a4,a5,0x20 - c001fdac: 9301 srli a4,a4,0x20 - c001fdae: ec3a sd a4,24(sp) - c001fdb0: b791 j c001fcf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53637 + c001ff78: 02079713 slli a4,a5,0x20 + c001ff7c: 9301 srli a4,a4,0x20 + c001ff7e: ec3a sd a4,24(sp) + c001ff80: b791 j c001fec4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53645 shift = typed_array_size_log2(p->class_id); - c001fdb2: 00695783 lhu a5,6(s2) - c001fdb6: feb7871b addiw a4,a5,-21 - c001fdba: 00047797 auipc a5,0x47 - c001fdbe: 17e78793 addi a5,a5,382 # c0066f38 - c001fdc2: 97ba add a5,a5,a4 - c001fdc4: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53638 + c001ff82: 00695783 lhu a5,6(s2) + c001ff86: feb7871b addiw a4,a5,-21 + c001ff8a: 00047797 auipc a5,0x47 + c001ff8e: 20e78793 addi a5,a5,526 # c0067198 + c001ff92: 97ba add a5,a5,a4 + c001ff94: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53646 switch(shift) { - c001fdc8: 4709 li a4,2 - c001fdca: 06e78263 beq a5,a4,c001fe2e - c001fdce: 02f76263 bltu a4,a5,c001fdf2 - c001fdd2: c78d beqz a5,c001fdfc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53645 (discriminator 1) + c001ff98: 4709 li a4,2 + c001ff9a: 06e78263 beq a5,a4,c001fffe + c001ff9e: 02f76263 bltu a4,a5,c001ffc2 + c001ffa2: c78d beqz a5,c001ffcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53653 (discriminator 1) for(; k < final; k++) { - c001fdd4: 47c2 lw a5,16(sp) - c001fdd6: 4752 lw a4,20(sp) - c001fdd8: 02e7dd63 bge a5,a4,c001fe12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53646 (discriminator 2) + c001ffa4: 47c2 lw a5,16(sp) + c001ffa6: 4752 lw a4,20(sp) + c001ffa8: 02e7dd63 bge a5,a4,c001ffe2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53654 (discriminator 2) p->u.array.u.uint16_ptr[k] = v64; - c001fddc: 03893703 ld a4,56(s2) - c001fde0: 0786 slli a5,a5,0x1 - c001fde2: 97ba add a5,a5,a4 - c001fde4: 6762 ld a4,24(sp) - c001fde6: 00e79023 sh a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53645 (discriminator 2) + c001ffac: 03893703 ld a4,56(s2) + c001ffb0: 0786 slli a5,a5,0x1 + c001ffb2: 97ba add a5,a5,a4 + c001ffb4: 6762 ld a4,24(sp) + c001ffb6: 00e79023 sh a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53653 (discriminator 2) for(; k < final; k++) { - c001fdea: 47c2 lw a5,16(sp) - c001fdec: 2785 addiw a5,a5,1 - c001fdee: c83e sw a5,16(sp) - c001fdf0: b7d5 j c001fdd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53638 + c001ffba: 47c2 lw a5,16(sp) + c001ffbc: 2785 addiw a5,a5,1 + c001ffbe: c83e sw a5,16(sp) + c001ffc0: b7d5 j c001ffa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53646 switch(shift) { - c001fdf2: 470d li a4,3 - c001fdf4: 04e78b63 beq a5,a4,c001fe4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53660 + c001ffc2: 470d li a4,3 + c001ffc4: 04e78b63 beq a5,a4,c002001a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53668 abort(); - c001fdf8: 213350ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53640 + c001ffc8: 213350ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53648 if (k < final) { - c001fdfc: 47c2 lw a5,16(sp) - c001fdfe: 4652 lw a2,20(sp) - c001fe00: 00c7d963 bge a5,a2,c001fe12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53641 + c001ffcc: 47c2 lw a5,16(sp) + c001ffce: 4652 lw a2,20(sp) + c001ffd0: 00c7d963 bge a5,a2,c001ffe2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53649 memset(p->u.array.u.uint8_ptr + k, v64, final - k); - c001fe04: 03893503 ld a0,56(s2) - c001fe08: 45e2 lw a1,24(sp) - c001fe0a: 9e1d subw a2,a2,a5 - c001fe0c: 953e add a0,a0,a5 - c001fe0e: 263360ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53662 + c001ffd4: 03893503 ld a0,56(s2) + c001ffd8: 45e2 lw a1,24(sp) + c001ffda: 9e1d subw a2,a2,a5 + c001ffdc: 953e add a0,a0,a5 + c001ffde: 263360ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53670 return JS_DupValue(ctx, this_val); - c001fe12: 6502 ld a0,0(sp) - c001fe14: 65a2 ld a1,8(sp) - c001fe16: 859e60ef jal ra,c000666e - c001fe1a: bf05 j c001fd4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53651 (discriminator 2) + c001ffe2: 6502 ld a0,0(sp) + c001ffe4: 65a2 ld a1,8(sp) + c001ffe6: f76e60ef jal ra,c000675c + c001ffea: bf05 j c001ff1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53659 (discriminator 2) p->u.array.u.uint32_ptr[k] = v64; - c001fe1c: 03893703 ld a4,56(s2) - c001fe20: 078a slli a5,a5,0x2 - c001fe22: 97ba add a5,a5,a4 - c001fe24: 6762 ld a4,24(sp) - c001fe26: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53650 (discriminator 2) + c001ffec: 03893703 ld a4,56(s2) + c001fff0: 078a slli a5,a5,0x2 + c001fff2: 97ba add a5,a5,a4 + c001fff4: 6762 ld a4,24(sp) + c001fff6: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53658 (discriminator 2) for(; k < final; k++) { - c001fe28: 47c2 lw a5,16(sp) - c001fe2a: 2785 addiw a5,a5,1 - c001fe2c: c83e sw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53650 (discriminator 1) - c001fe2e: 47c2 lw a5,16(sp) - c001fe30: 4752 lw a4,20(sp) - c001fe32: fee7c5e3 blt a5,a4,c001fe1c - c001fe36: bff1 j c001fe12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53656 (discriminator 2) + c001fff8: 47c2 lw a5,16(sp) + c001fffa: 2785 addiw a5,a5,1 + c001fffc: c83e sw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53658 (discriminator 1) + c001fffe: 47c2 lw a5,16(sp) + c0020000: 4752 lw a4,20(sp) + c0020002: fee7c5e3 blt a5,a4,c001ffec + c0020006: bff1 j c001ffe2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53664 (discriminator 2) p->u.array.u.uint64_ptr[k] = v64; - c001fe38: 03893703 ld a4,56(s2) - c001fe3c: 078e slli a5,a5,0x3 - c001fe3e: 97ba add a5,a5,a4 - c001fe40: 6762 ld a4,24(sp) - c001fe42: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53655 (discriminator 2) + c0020008: 03893703 ld a4,56(s2) + c002000c: 078e slli a5,a5,0x3 + c002000e: 97ba add a5,a5,a4 + c0020010: 6762 ld a4,24(sp) + c0020012: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53663 (discriminator 2) for(; k < final; k++) { - c001fe44: 47c2 lw a5,16(sp) - c001fe46: 2785 addiw a5,a5,1 - c001fe48: c83e sw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53655 (discriminator 1) - c001fe4a: 47c2 lw a5,16(sp) - c001fe4c: 4752 lw a4,20(sp) - c001fe4e: fee7c5e3 blt a5,a4,c001fe38 - c001fe52: b7c1 j c001fe12 - -00000000c001fe54 : + c0020014: 47c2 lw a5,16(sp) + c0020016: 2785 addiw a5,a5,1 + c0020018: c83e sw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53663 (discriminator 1) + c002001a: 47c2 lw a5,16(sp) + c002001c: 4752 lw a4,20(sp) + c002001e: fee7c5e3 blt a5,a4,c0020008 + c0020022: b7c1 j c001ffe2 + +00000000c0020024 : JS_ToBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12281 -{ - c001fe54: 7139 addi sp,sp,-64 - c001fe56: f822 sd s0,48(sp) - c001fe58: f426 sd s1,40(sp) - c001fe5a: 842a mv s0,a0 - c001fe5c: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12282 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12289 +{ + c0020024: 7139 addi sp,sp,-64 + c0020026: f822 sd s0,48(sp) + c0020028: f426 sd s1,40(sp) + c002002a: 842a mv s0,a0 + c002002c: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12290 return JS_ToBigIntFree(ctx, buf, JS_DupValue(ctx, val)); - c001fe5e: 8532 mv a0,a2 - c001fe60: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12281 + c002002e: 8532 mv a0,a2 + c0020030: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12289 { - c001fe62: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12282 + c0020032: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12290 return JS_ToBigIntFree(ctx, buf, JS_DupValue(ctx, val)); - c001fe64: 80be60ef jal ra,c000666e - c001fe68: 862a mv a2,a0 - c001fe6a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12283 -} - c001fe6c: 7442 ld s0,48(sp) - c001fe6e: 70e2 ld ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12282 + c0020034: f28e60ef jal ra,c000675c + c0020038: 862a mv a2,a0 + c002003a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12291 +} + c002003c: 7442 ld s0,48(sp) + c002003e: 70e2 ld ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12290 return JS_ToBigIntFree(ctx, buf, JS_DupValue(ctx, val)); - c001fe70: 86ae mv a3,a1 - c001fe72: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12283 + c0020040: 86ae mv a3,a1 + c0020042: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12291 } - c001fe74: 74a2 ld s1,40(sp) - c001fe76: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12282 + c0020044: 74a2 ld s1,40(sp) + c0020046: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12290 return JS_ToBigIntFree(ctx, buf, JS_DupValue(ctx, val)); - c001fe78: b01ff06f j c001f978 + c0020048: b01ff06f j c001fb48 -00000000c001fe7c : +00000000c002004c : js_bigint_asUintN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50901 -{ - c001fe7c: 7151 addi sp,sp,-240 - c001fe7e: f1a2 sd s0,224(sp) - c001fe80: eda6 sd s1,216(sp) - c001fe82: f95a sd s6,176(sp) - c001fe84: f586 sd ra,232(sp) - c001fe86: e9ca sd s2,208(sp) - c001fe88: e5ce sd s3,200(sp) - c001fe8a: e1d2 sd s4,192(sp) - c001fe8c: fd56 sd s5,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50909 +{ + c002004c: 7151 addi sp,sp,-240 + c002004e: f1a2 sd s0,224(sp) + c0020050: eda6 sd s1,216(sp) + c0020052: f95a sd s6,176(sp) + c0020054: f586 sd ra,232(sp) + c0020056: e9ca sd s2,208(sp) + c0020058: e5ce sd s3,200(sp) + c002005a: e1d2 sd s4,192(sp) + c002005c: fd56 sd s5,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50914 if (JS_ToIndex(ctx, &bits, argv[0])) - c001fe8e: 6310 ld a2,0(a4) - c001fe90: 6714 ld a3,8(a4) - c001fe92: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50901 -{ - c001fe94: 842a mv s0,a0 - c001fe96: 84ba mv s1,a4 - c001fe98: 8b3e mv s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50906 + c002005e: 6310 ld a2,0(a4) + c0020060: 6714 ld a3,8(a4) + c0020062: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50909 +{ + c0020064: 842a mv s0,a0 + c0020066: 84ba mv s1,a4 + c0020068: 8b3e mv s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50914 if (JS_ToIndex(ctx, &bits, argv[0])) - c001fe9a: becfe0ef jal ra,c001e286 - c001fe9e: c105 beqz a0,c001febe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50907 + c002006a: becfe0ef jal ra,c001e456 + c002006e: c105 beqz a0,c002008e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50915 return JS_EXCEPTION; - c001fea0: 4799 li a5,6 - c001fea2: f802 sd zero,48(sp) - c001fea4: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50936 (discriminator 1) -} - c001fea6: 70ae ld ra,232(sp) - c001fea8: 740e ld s0,224(sp) - c001feaa: 7542 ld a0,48(sp) - c001feac: 75e2 ld a1,56(sp) - c001feae: 64ee ld s1,216(sp) - c001feb0: 694e ld s2,208(sp) - c001feb2: 69ae ld s3,200(sp) - c001feb4: 6a0e ld s4,192(sp) - c001feb6: 7aea ld s5,184(sp) - c001feb8: 7b4a ld s6,176(sp) - c001feba: 616d addi sp,sp,240 - c001febc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50908 + c0020070: 4799 li a5,6 + c0020072: f802 sd zero,48(sp) + c0020074: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50944 (discriminator 1) +} + c0020076: 70ae ld ra,232(sp) + c0020078: 740e ld s0,224(sp) + c002007a: 7542 ld a0,48(sp) + c002007c: 75e2 ld a1,56(sp) + c002007e: 64ee ld s1,216(sp) + c0020080: 694e ld s2,208(sp) + c0020082: 69ae ld s3,200(sp) + c0020084: 6a0e ld s4,192(sp) + c0020086: 7aea ld s5,184(sp) + c0020088: 7b4a ld s6,176(sp) + c002008a: 616d addi sp,sp,240 + c002008c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50916 res = JS_NewBigInt(ctx); - c001febe: 8522 mv a0,s0 - c001fec0: edaf50ef jal ra,c001559a - c001fec4: f02a sd a0,32(sp) - c001fec6: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50909 + c002008e: 8522 mv a0,s0 + c0020090: edaf50ef jal ra,c001576a + c0020094: f02a sd a0,32(sp) + c0020096: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50917 if (JS_IsException(res)) - c001fec8: 0005879b sext.w a5,a1 - c001fecc: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50908 + c0020098: 0005879b sext.w a5,a1 + c002009c: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50916 res = JS_NewBigInt(ctx); - c001fece: 89aa mv s3,a0 - c001fed0: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50909 + c002009e: 89aa mv s3,a0 + c00200a0: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50917 if (JS_IsException(res)) - c001fed2: fd4787e3 beq a5,s4,c001fea0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50912 + c00200a2: fd4787e3 beq a5,s4,c0020070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50920 a = JS_ToBigInt(ctx, &a_s, argv[1]); - c001fed6: 6890 ld a2,16(s1) - c001fed8: 6c94 ld a3,24(s1) + c00200a6: 6890 ld a2,16(s1) + c00200a8: 6c94 ld a3,24(s1) JS_GetBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1160 return &p->num; - c001feda: 00850a93 addi s5,a0,8 + c00200aa: 00850a93 addi s5,a0,8 js_bigint_asUintN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50920 a = JS_ToBigInt(ctx, &a_s, argv[1]); - c001fede: 108c addi a1,sp,96 - c001fee0: 8522 mv a0,s0 - c001fee2: f73ff0ef jal ra,c001fe54 - c001fee6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50913 + c00200ae: 108c addi a1,sp,96 + c00200b0: 8522 mv a0,s0 + c00200b2: f73ff0ef jal ra,c0020024 + c00200b6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50921 if (!a) { - c001fee8: e909 bnez a0,c001fefa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50914 + c00200b8: e909 bnez a0,c00200ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50922 JS_FreeValue(ctx, res); - c001feea: 7582 ld a1,32(sp) - c001feec: 7622 ld a2,40(sp) - c001feee: 8522 mv a0,s0 - c001fef0: c49e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50915 + c00200ba: 7582 ld a1,32(sp) + c00200bc: 7622 ld a2,40(sp) + c00200be: 8522 mv a0,s0 + c00200c0: b67e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50923 return JS_EXCEPTION; - c001fef4: f802 sd zero,48(sp) - c001fef6: fc52 sd s4,56(sp) - c001fef8: b77d j c001fea6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50919 + c00200c4: f802 sd zero,48(sp) + c00200c6: fc52 sd s4,56(sp) + c00200c8: b77d j c0020076 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50927 bf_init(ctx->bf_ctx, mask); - c001fefa: 19043503 ld a0,400(s0) - c001fefe: 012c addi a1,sp,136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50921 + c00200ca: 19043503 ld a0,400(s0) + c00200ce: 012c addi a1,sp,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50929 bf_mul_2exp(mask, bits, BF_PREC_INF, BF_RNDZ); - c001ff00: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50919 + c00200d0: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50927 bf_init(ctx->bf_ctx, mask); - c001ff02: 10a2d0ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50920 + c00200d2: 10a2d0ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50928 bf_set_ui(mask, 1); - c001ff06: 4585 li a1,1 - c001ff08: 0128 addi a0,sp,136 - c001ff0a: 1722d0ef jal ra,c004d07c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50921 + c00200d6: 4585 li a1,1 + c00200d8: 0128 addi a0,sp,136 + c00200da: 1722d0ef jal ra,c004d24c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50929 bf_mul_2exp(mask, bits, BF_PREC_INF, BF_RNDZ); - c001ff0e: 65e2 ld a1,24(sp) - c001ff10: 4685 li a3,1 - c001ff12: 002a5613 srli a2,s4,0x2 - c001ff16: 0128 addi a0,sp,136 - c001ff18: 42f2e0ef jal ra,c004eb46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50922 + c00200de: 65e2 ld a1,24(sp) + c00200e0: 4685 li a3,1 + c00200e2: 002a5613 srli a2,s4,0x2 + c00200e6: 0128 addi a0,sp,136 + c00200e8: 42f2e0ef jal ra,c004ed16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50930 bf_add_si(mask, mask, -1, BF_PREC_INF, BF_RNDZ); - c001ff1c: 012c addi a1,sp,136 - c001ff1e: 567d li a2,-1 - c001ff20: 852e mv a0,a1 - c001ff22: 4705 li a4,1 - c001ff24: 002a5693 srli a3,s4,0x2 - c001ff28: 5ae2f0ef jal ra,c004f4d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50923 + c00200ec: 012c addi a1,sp,136 + c00200ee: 567d li a2,-1 + c00200f0: 852e mv a0,a1 + c00200f2: 4705 li a4,1 + c00200f4: 002a5693 srli a3,s4,0x2 + c00200f8: 5ae2f0ef jal ra,c004f6a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50931 bf_logic_and(r, a, mask); - c001ff2c: 0130 addi a2,sp,136 - c001ff2e: 85a6 mv a1,s1 - c001ff30: 8556 mv a0,s5 - c001ff32: 10a300ef jal ra,c005003c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50924 + c00200fc: 0130 addi a2,sp,136 + c00200fe: 85a6 mv a1,s1 + c0020100: 8556 mv a0,s5 + c0020102: 10a300ef jal ra,c005020c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50932 if (asIntN && bits != 0) { - c001ff36: 040b0963 beqz s6,c001ff88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50924 (discriminator 1) - c001ff3a: 67e2 ld a5,24(sp) - c001ff3c: c7b1 beqz a5,c001ff88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50925 + c0020106: 040b0963 beqz s6,c0020158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50932 (discriminator 1) + c002010a: 67e2 ld a5,24(sp) + c002010c: c7b1 beqz a5,c0020158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50933 bf_set_ui(mask, 1); - c001ff3e: 4585 li a1,1 - c001ff40: 0128 addi a0,sp,136 - c001ff42: 13a2d0ef jal ra,c004d07c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50926 + c002010e: 4585 li a1,1 + c0020110: 0128 addi a0,sp,136 + c0020112: 13a2d0ef jal ra,c004d24c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50934 bf_mul_2exp(mask, bits - 1, BF_PREC_INF, BF_RNDZ); - c001ff46: 65e2 ld a1,24(sp) - c001ff48: 4685 li a3,1 - c001ff4a: 002a5613 srli a2,s4,0x2 - c001ff4e: 15fd addi a1,a1,-1 - c001ff50: 0128 addi a0,sp,136 - c001ff52: 3f52e0ef jal ra,c004eb46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50927 + c0020116: 65e2 ld a1,24(sp) + c0020118: 4685 li a3,1 + c002011a: 002a5613 srli a2,s4,0x2 + c002011e: 15fd addi a1,a1,-1 + c0020120: 0128 addi a0,sp,136 + c0020122: 3f52e0ef jal ra,c004ed16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50935 if (bf_cmpu(r, mask) >= 0) { - c001ff56: 012c addi a1,sp,136 - c001ff58: 8556 mv a0,s5 - c001ff5a: 1f32d0ef jal ra,c004d94c - c001ff5e: 02054563 bltz a0,c001ff88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50928 + c0020126: 012c addi a1,sp,136 + c0020128: 8556 mv a0,s5 + c002012a: 1f32d0ef jal ra,c004db1c + c002012e: 02054563 bltz a0,c0020158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50936 bf_set_ui(mask, 1); - c001ff62: 4585 li a1,1 - c001ff64: 0128 addi a0,sp,136 - c001ff66: 1162d0ef jal ra,c004d07c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50929 + c0020132: 4585 li a1,1 + c0020134: 0128 addi a0,sp,136 + c0020136: 1162d0ef jal ra,c004d24c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50937 bf_mul_2exp(mask, bits, BF_PREC_INF, BF_RNDZ); - c001ff6a: 65e2 ld a1,24(sp) - c001ff6c: 4685 li a3,1 - c001ff6e: 002a5613 srli a2,s4,0x2 - c001ff72: 0128 addi a0,sp,136 - c001ff74: 3d32e0ef jal ra,c004eb46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50930 + c002013a: 65e2 ld a1,24(sp) + c002013c: 4685 li a3,1 + c002013e: 002a5613 srli a2,s4,0x2 + c0020142: 0128 addi a0,sp,136 + c0020144: 3d32e0ef jal ra,c004ed16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50938 bf_sub(r, r, mask, BF_PREC_INF, BF_RNDZ); - c001ff78: 4705 li a4,1 - c001ff7a: 002a5693 srli a3,s4,0x2 - c001ff7e: 0130 addi a2,sp,136 - c001ff80: 85d6 mv a1,s5 - c001ff82: 8556 mv a0,s5 - c001ff84: 1962f0ef jal ra,c004f11a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50933 + c0020148: 4705 li a4,1 + c002014a: 002a5693 srli a3,s4,0x2 + c002014e: 0130 addi a2,sp,136 + c0020150: 85d6 mv a1,s5 + c0020152: 8556 mv a0,s5 + c0020154: 1962f0ef jal ra,c004f2ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50941 bf_delete(mask); - c001ff88: 0128 addi a0,sp,136 - c001ff8a: f20e60ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50934 + c0020158: 0128 addi a0,sp,136 + c002015a: e3ee60ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50942 JS_FreeBigInt(ctx, a, &a_s); - c001ff8e: 1090 addi a2,sp,96 - c001ff90: 85a6 mv a1,s1 - c001ff92: 8522 mv a0,s0 - c001ff94: fd7e70ef jal ra,c0007f6a + c002015e: 1090 addi a2,sp,96 + c0020160: 85a6 mv a1,s1 + c0020162: 8522 mv a0,s0 + c0020164: ef5e70ef jal ra,c0008058 JS_CompactBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); - c001ff98: 85ce mv a1,s3 - c001ff9a: 864a mv a2,s2 - c001ff9c: 8522 mv a0,s0 - c001ff9e: bc4e60ef jal ra,c0006362 - c001ffa2: f82a sd a0,48(sp) - c001ffa4: fc2e sd a1,56(sp) + c0020168: 85ce mv a1,s3 + c002016a: 864a mv a2,s2 + c002016c: 8522 mv a0,s0 + c002016e: ae2e60ef jal ra,c0006450 + c0020172: f82a sd a0,48(sp) + c0020174: fc2e sd a1,56(sp) js_bigint_asUintN(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50943 return JS_CompactBigInt(ctx, res); - c001ffa6: b701 j c001fea6 + c0020176: b701 j c0020076 -00000000c001ffa8 : +00000000c0020178 : js_binary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13146 -{ - c001ffa8: 712d addi sp,sp,-288 - c001ffaa: ea22 sd s0,272(sp) - c001ffac: e626 sd s1,264(sp) - c001ffae: f1da sd s6,224(sp) - c001ffb0: ec3a sd a4,24(sp) - c001ffb2: e03e sd a5,0(sp) - c001ffb4: ee06 sd ra,280(sp) - c001ffb6: e24a sd s2,256(sp) - c001ffb8: fdce sd s3,248(sp) - c001ffba: f9d2 sd s4,240(sp) - c001ffbc: f5d6 sd s5,232(sp) - c001ffbe: edde sd s7,216(sp) - c001ffc0: 84aa mv s1,a0 - c001ffc2: 842e mv s0,a1 - c001ffc4: 8b32 mv s6,a2 - c001ffc6: e836 sd a3,16(sp) - c001ffc8: e442 sd a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13151 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13154 +{ + c0020178: 712d addi sp,sp,-288 + c002017a: ea22 sd s0,272(sp) + c002017c: e626 sd s1,264(sp) + c002017e: f1da sd s6,224(sp) + c0020180: ec3a sd a4,24(sp) + c0020182: e03e sd a5,0(sp) + c0020184: ee06 sd ra,280(sp) + c0020186: e24a sd s2,256(sp) + c0020188: fdce sd s3,248(sp) + c002018a: f9d2 sd s4,240(sp) + c002018c: f5d6 sd s5,232(sp) + c002018e: edde sd s7,216(sp) + c0020190: 84aa mv s1,a0 + c0020192: 842e mv s0,a1 + c0020194: 8b32 mv s6,a2 + c0020196: e836 sd a3,16(sp) + c0020198: e442 sd a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13159 res = JS_NewBigInt(ctx); - c001ffca: dd0f50ef jal ra,c001559a - c001ffce: f42a sd a0,40(sp) - c001ffd0: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13152 + c002019a: dd0f50ef jal ra,c001576a + c002019e: f42a sd a0,40(sp) + c00201a0: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13160 if (JS_IsException(res)) - c001ffd2: 0005871b sext.w a4,a1 - c001ffd6: 4799 li a5,6 - c001ffd8: 02f70963 beq a4,a5,c002000a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13154 + c00201a2: 0005871b sext.w a4,a1 + c00201a6: 4799 li a5,6 + c00201a8: 02f70963 beq a4,a5,c00201da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13162 a = JS_ToBigInt(ctx, &a_s, op1); - c001ffdc: 6642 ld a2,16(sp) - c001ffde: 66e2 ld a3,24(sp) - c001ffe0: 8aaa mv s5,a0 - c001ffe2: 8a2e mv s4,a1 - c001ffe4: 8526 mv a0,s1 - c001ffe6: 08ac addi a1,sp,88 - c001ffe8: e6dff0ef jal ra,c001fe54 - c001ffec: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13155 + c00201ac: 6642 ld a2,16(sp) + c00201ae: 66e2 ld a3,24(sp) + c00201b0: 8aaa mv s5,a0 + c00201b2: 8a2e mv s4,a1 + c00201b4: 8526 mv a0,s1 + c00201b6: 08ac addi a1,sp,88 + c00201b8: e6dff0ef jal ra,c0020024 + c00201bc: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13163 if (!a) - c001ffee: cd11 beqz a0,c002000a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13157 + c00201be: cd11 beqz a0,c00201da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13165 b = JS_ToBigInt(ctx, &b_s, op2); - c001fff0: 6602 ld a2,0(sp) - c001fff2: 66a2 ld a3,8(sp) - c001fff4: 010c addi a1,sp,128 - c001fff6: 8526 mv a0,s1 - c001fff8: e5dff0ef jal ra,c001fe54 - c001fffc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13158 + c00201c0: 6602 ld a2,0(sp) + c00201c2: 66a2 ld a3,8(sp) + c00201c4: 010c addi a1,sp,128 + c00201c6: 8526 mv a0,s1 + c00201c8: e5dff0ef jal ra,c0020024 + c00201cc: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13166 if (!b) { - c001fffe: e515 bnez a0,c002002a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13159 + c00201ce: e515 bnez a0,c00201fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13167 JS_FreeBigInt(ctx, a, &a_s); - c0020000: 08b0 addi a2,sp,88 - c0020002: 85ce mv a1,s3 - c0020004: 8526 mv a0,s1 - c0020006: f65e70ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13299 + c00201d0: 08b0 addi a2,sp,88 + c00201d2: 85ce mv a1,s3 + c00201d4: 8526 mv a0,s1 + c00201d6: e83e70ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13307 JS_FreeValue(ctx, res); - c002000a: 75a2 ld a1,40(sp) - c002000c: 7642 ld a2,48(sp) - c002000e: 8526 mv a0,s1 - c0020010: b29e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13300 + c00201da: 75a2 ld a1,40(sp) + c00201dc: 7642 ld a2,48(sp) + c00201de: 8526 mv a0,s1 + c00201e0: a47e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13308 JS_FreeValue(ctx, op1); - c0020014: 65c2 ld a1,16(sp) - c0020016: 6662 ld a2,24(sp) - c0020018: 8526 mv a0,s1 - c002001a: b1fe70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13301 + c00201e4: 65c2 ld a1,16(sp) + c00201e6: 6662 ld a2,24(sp) + c00201e8: 8526 mv a0,s1 + c00201ea: a3de70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13309 JS_FreeValue(ctx, op2); - c002001e: 6582 ld a1,0(sp) - c0020020: 6622 ld a2,8(sp) - c0020022: 8526 mv a0,s1 - c0020024: b15e70ef jal ra,c0007b38 - c0020028: a8b5 j c00200a4 + c00201ee: 6582 ld a1,0(sp) + c00201f0: 6622 ld a2,8(sp) + c00201f2: 8526 mv a0,s1 + c00201f4: a33e70ef jal ra,c0007c26 + c00201f8: a8b5 j c0020274 JS_GetBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1160 return &p->num; - c002002a: f654079b addiw a5,s0,-155 - c002002e: 0007869b sext.w a3,a5 - c0020032: 4755 li a4,21 - c0020034: 008a8b93 addi s7,s5,8 + c00201fa: f654079b addiw a5,s0,-155 + c00201fe: 0007869b sext.w a3,a5 + c0020202: 4755 li a4,21 + c0020204: 008a8b93 addi s7,s5,8 js_binary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13172 switch(op) { - c0020038: 16d76663 bltu a4,a3,c00201a4 - c002003c: 02079713 slli a4,a5,0x20 - c0020040: 01e75793 srli a5,a4,0x1e - c0020044: 0003e717 auipc a4,0x3e - c0020048: 60070713 addi a4,a4,1536 # c005e644 - c002004c: 97ba add a5,a5,a4 - c002004e: 439c lw a5,0(a5) - c0020050: 97ba add a5,a5,a4 - c0020052: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13166 + c0020208: 16d76663 bltu a4,a3,c0020374 + c002020c: 02079713 slli a4,a5,0x20 + c0020210: 01e75793 srli a5,a4,0x1e + c0020214: 0003e717 auipc a4,0x3e + c0020218: 69070713 addi a4,a4,1680 # c005e8a4 + c002021c: 97ba add a5,a5,a4 + c002021e: 439c lw a5,0(a5) + c0020220: 97ba add a5,a5,a4 + c0020222: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13174 ret = bf_add(r, a, b, BF_PREC_INF, BF_RNDZ); - c0020054: 56fd li a3,-1 - c0020056: 862a mv a2,a0 - c0020058: 4705 li a4,1 - c002005a: 8289 srli a3,a3,0x2 - c002005c: 85ce mv a1,s3 - c002005e: 855e mv a0,s7 - c0020060: 5972e0ef jal ra,c004edf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13169 + c0020224: 56fd li a3,-1 + c0020226: 862a mv a2,a0 + c0020228: 4705 li a4,1 + c002022a: 8289 srli a3,a3,0x2 + c002022c: 85ce mv a1,s3 + c002022e: 855e mv a0,s7 + c0020230: 5972e0ef jal ra,c004efc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13177 ret = bf_sub(r, a, b, BF_PREC_INF, BF_RNDZ); - c0020064: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13287 + c0020234: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13295 JS_FreeBigInt(ctx, a, &a_s); - c0020066: 08b0 addi a2,sp,88 - c0020068: 85ce mv a1,s3 - c002006a: 8526 mv a0,s1 - c002006c: effe70ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13288 + c0020236: 08b0 addi a2,sp,88 + c0020238: 85ce mv a1,s3 + c002023a: 8526 mv a0,s1 + c002023c: e1de70ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13296 JS_FreeBigInt(ctx, b, &b_s); - c0020070: 0110 addi a2,sp,128 - c0020072: 85ca mv a1,s2 - c0020074: 8526 mv a0,s1 - c0020076: ef5e70ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13289 + c0020240: 0110 addi a2,sp,128 + c0020242: 85ca mv a1,s2 + c0020244: 8526 mv a0,s1 + c0020246: e13e70ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13297 JS_FreeValue(ctx, op1); - c002007a: 65c2 ld a1,16(sp) - c002007c: 6662 ld a2,24(sp) - c002007e: 8526 mv a0,s1 - c0020080: ab9e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13290 + c002024a: 65c2 ld a1,16(sp) + c002024c: 6662 ld a2,24(sp) + c002024e: 8526 mv a0,s1 + c0020250: 9d7e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13298 JS_FreeValue(ctx, op2); - c0020084: 6582 ld a1,0(sp) - c0020086: 6622 ld a2,8(sp) - c0020088: 8526 mv a0,s1 - c002008a: aafe70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13291 + c0020254: 6582 ld a1,0(sp) + c0020256: 6622 ld a2,8(sp) + c0020258: 8526 mv a0,s1 + c002025a: 9cde70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13299 if (unlikely(ret)) { - c002008e: 10040d63 beqz s0,c00201a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13292 + c002025e: 10040d63 beqz s0,c0020378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13300 JS_FreeValue(ctx, res); - c0020092: 75a2 ld a1,40(sp) - c0020094: 7642 ld a2,48(sp) - c0020096: 8526 mv a0,s1 - c0020098: aa1e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13293 + c0020262: 75a2 ld a1,40(sp) + c0020264: 7642 ld a2,48(sp) + c0020266: 8526 mv a0,s1 + c0020268: 9bfe70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13301 throw_bf_exception(ctx, ret); - c002009c: 85a2 mv a1,s0 - c002009e: 8526 mv a0,s1 - c00200a0: d47f80ef jal ra,c0018de6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13302 + c002026c: 85a2 mv a1,s0 + c002026e: 8526 mv a0,s1 + c0020270: d47f80ef jal ra,c0018fb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13310 return -1; - c00200a4: 547d li s0,-1 - c00200a6: aa11 j c00201ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13169 + c0020274: 547d li s0,-1 + c0020276: aa11 j c002038a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13177 ret = bf_sub(r, a, b, BF_PREC_INF, BF_RNDZ); - c00200a8: 56fd li a3,-1 - c00200aa: 862a mv a2,a0 - c00200ac: 4705 li a4,1 - c00200ae: 8289 srli a3,a3,0x2 - c00200b0: 85ce mv a1,s3 - c00200b2: 855e mv a0,s7 - c00200b4: 0662f0ef jal ra,c004f11a - c00200b8: b775 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13172 + c0020278: 56fd li a3,-1 + c002027a: 862a mv a2,a0 + c002027c: 4705 li a4,1 + c002027e: 8289 srli a3,a3,0x2 + c0020280: 85ce mv a1,s3 + c0020282: 855e mv a0,s7 + c0020284: 0662f0ef jal ra,c004f2ea + c0020288: b775 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13180 ret = bf_mul(r, a, b, BF_PREC_INF, BF_RNDZ); - c00200ba: 56fd li a3,-1 - c00200bc: 862a mv a2,a0 - c00200be: 4705 li a4,1 - c00200c0: 8289 srli a3,a3,0x2 - c00200c2: 85ce mv a1,s3 - c00200c4: 855e mv a0,s7 - c00200c6: 0152e0ef jal ra,c004e8da - c00200ca: bf69 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13177 + c002028a: 56fd li a3,-1 + c002028c: 862a mv a2,a0 + c002028e: 4705 li a4,1 + c0020290: 8289 srli a3,a3,0x2 + c0020292: 85ce mv a1,s3 + c0020294: 855e mv a0,s7 + c0020296: 0152e0ef jal ra,c004eaaa + c002029a: bf69 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13185 bf_init(ctx->bf_ctx, rem); - c00200cc: 1904b503 ld a0,400(s1) - c00200d0: 112c addi a1,sp,168 - c00200d2: 73b2c0ef jal ra,c004d00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13178 + c002029c: 1904b503 ld a0,400(s1) + c00202a0: 112c addi a1,sp,168 + c00202a2: 73b2c0ef jal ra,c004d1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13186 ret = bf_divrem(r, rem, a, b, BF_PREC_INF, BF_RNDZ, - c00200d6: 577d li a4,-1 - c00200d8: 4805 li a6,1 - c00200da: 4785 li a5,1 - c00200dc: 8309 srli a4,a4,0x2 - c00200de: 86ca mv a3,s2 - c00200e0: 864e mv a2,s3 - c00200e2: 112c addi a1,sp,168 - c00200e4: 855e mv a0,s7 - c00200e6: 4a52f0ef jal ra,c004fd8a - c00200ea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13180 + c00202a6: 577d li a4,-1 + c00202a8: 4805 li a6,1 + c00202aa: 4785 li a5,1 + c00202ac: 8309 srli a4,a4,0x2 + c00202ae: 86ca mv a3,s2 + c00202b0: 864e mv a2,s3 + c00202b2: 112c addi a1,sp,168 + c00202b4: 855e mv a0,s7 + c00202b6: 4a52f0ef jal ra,c004ff5a + c00202ba: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13188 bf_delete(rem); - c00200ec: 1128 addi a0,sp,168 - c00200ee: dbce60ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13184 + c00202bc: 1128 addi a0,sp,168 + c00202be: cdae60ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13192 break; - c00200f2: bf95 j c0020066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13193 + c00202c2: bf95 j c0020236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13201 ret = bf_rem(r, a, b, BF_PREC_INF, BF_RNDZ, - c00200f4: 56fd li a3,-1 - c00200f6: 862a mv a2,a0 - c00200f8: 4785 li a5,1 - c00200fa: 4705 li a4,1 - c00200fc: 8289 srli a3,a3,0x2 - c00200fe: 85ce mv a1,s3 - c0020100: 855e mv a0,s7 - c0020102: 6f32f0ef jal ra,c004fff4 - c0020106: 00157413 andi s0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13195 + c00202c4: 56fd li a3,-1 + c00202c6: 862a mv a2,a0 + c00202c8: 4785 li a5,1 + c00202ca: 4705 li a4,1 + c00202cc: 8289 srli a3,a3,0x2 + c00202ce: 85ce mv a1,s3 + c00202d0: 855e mv a0,s7 + c00202d2: 6f32f0ef jal ra,c00501c4 + c00202d6: 00157413 andi s0,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13203 break; - c002010a: bfb1 j c0020066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13197 + c00202da: bfb1 j c0020236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13205 if (b->sign) { - c002010c: 451c lw a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13199 + c00202dc: 451c lw a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13207 ret = BF_ST_INVALID_OP; - c002010e: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13197 + c00202de: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13205 if (b->sign) { - c0020110: fbb9 bnez a5,c0020066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13248 + c00202e0: fbb9 bnez a5,c0020236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13256 ret = bf_pow(r, a, b, BF_PREC_INF, BF_RNDZ | BF_POW_JS_QUIRKS); - c0020112: 6741 lui a4,0x10 - c0020114: 56fd li a3,-1 - c0020116: 862a mv a2,a0 - c0020118: 0705 addi a4,a4,1 - c002011a: 8289 srli a3,a3,0x2 - c002011c: 85ce mv a1,s3 - c002011e: 855e mv a0,s7 - c0020120: 65b310ef jal ra,c0051f7a - c0020124: b781 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13262 + c00202e2: 6741 lui a4,0x10 + c00202e4: 56fd li a3,-1 + c00202e6: 862a mv a2,a0 + c00202e8: 0705 addi a4,a4,1 + c00202ea: 8289 srli a3,a3,0x2 + c00202ec: 85ce mv a1,s3 + c00202ee: 855e mv a0,s7 + c00202f0: 65b310ef jal ra,c005214a + c00202f4: b781 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13270 bf_get_int64(&v2, b, 0); - c0020126: 85aa mv a1,a0 - c0020128: 4601 li a2,0 - c002012a: 1128 addi a0,sp,168 - c002012c: 130300ef jal ra,c005025c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13263 + c00202f6: 85aa mv a1,a0 + c00202f8: 4601 li a2,0 + c00202fa: 1128 addi a0,sp,168 + c00202fc: 130300ef jal ra,c005042c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13271 if (v2 == INT64_MIN) - c0020130: 77aa ld a5,168(sp) - c0020132: 577d li a4,-1 - c0020134: 177e slli a4,a4,0x3f - c0020136: 00e79463 bne a5,a4,c002013e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13264 + c0020300: 77aa ld a5,168(sp) + c0020302: 577d li a4,-1 + c0020304: 177e slli a4,a4,0x3f + c0020306: 00e79463 bne a5,a4,c002030e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13272 v2 = INT64_MIN + 1; - c002013a: 0785 addi a5,a5,1 - c002013c: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13266 + c002030a: 0785 addi a5,a5,1 + c002030c: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13274 if (op == OP_sar) - c002013e: 0a200793 li a5,162 - c0020142: 00f41663 bne s0,a5,c002014e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13267 + c002030e: 0a200793 li a5,162 + c0020312: 00f41663 bne s0,a5,c002031e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13275 v2 = -v2; - c0020146: 77aa ld a5,168(sp) - c0020148: 40f007b3 neg a5,a5 - c002014c: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13268 + c0020316: 77aa ld a5,168(sp) + c0020318: 40f007b3 neg a5,a5 + c002031c: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13276 ret = bf_set(r, a); - c002014e: 85ce mv a1,s3 - c0020150: 855e mv a0,s7 - c0020152: 36e2d0ef jal ra,c004d4c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13269 + c002031e: 85ce mv a1,s3 + c0020320: 855e mv a0,s7 + c0020322: 36e2d0ef jal ra,c004d690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13277 ret |= bf_mul_2exp(r, v2, BF_PREC_INF, BF_RNDZ); - c0020156: 75aa ld a1,168(sp) - c0020158: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13268 + c0020326: 75aa ld a1,168(sp) + c0020328: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13276 ret = bf_set(r, a); - c002015a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13269 + c002032a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13277 ret |= bf_mul_2exp(r, v2, BF_PREC_INF, BF_RNDZ); - c002015c: 4685 li a3,1 - c002015e: 8209 srli a2,a2,0x2 - c0020160: 855e mv a0,s7 - c0020162: 1e52e0ef jal ra,c004eb46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13270 + c002032c: 4685 li a3,1 + c002032e: 8209 srli a2,a2,0x2 + c0020330: 855e mv a0,s7 + c0020332: 1e52e0ef jal ra,c004ed16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13278 if (v2 < 0) { - c0020166: 77aa ld a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13269 + c0020336: 77aa ld a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13277 ret |= bf_mul_2exp(r, v2, BF_PREC_INF, BF_RNDZ); - c0020168: 8c49 or s0,s0,a0 - c002016a: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13270 + c0020338: 8c49 or s0,s0,a0 + c002033a: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13278 if (v2 < 0) { - c002016c: ee07dde3 bgez a5,c0020066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13271 + c002033c: ee07dde3 bgez a5,c0020236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13279 ret |= bf_rint(r, BF_RNDD) & (BF_ST_OVERFLOW | BF_ST_MEM_ERROR); - c0020170: 4589 li a1,2 - c0020172: 855e mv a0,s7 - c0020174: 5de2f0ef jal ra,c004f752 - c0020178: 02457513 andi a0,a0,36 - c002017c: 8c49 or s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13274 + c0020340: 4589 li a1,2 + c0020342: 855e mv a0,s7 + c0020344: 5de2f0ef jal ra,c004f922 + c0020348: 02457513 andi a0,a0,36 + c002034c: 8c49 or s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13282 break; - c002017e: b5e5 j c0020066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13276 + c002034e: b5e5 j c0020236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13284 ret = bf_logic_and(r, a, b); - c0020180: 862a mv a2,a0 - c0020182: 85ce mv a1,s3 - c0020184: 855e mv a0,s7 - c0020186: 6b72f0ef jal ra,c005003c - c002018a: bde9 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13279 + c0020350: 862a mv a2,a0 + c0020352: 85ce mv a1,s3 + c0020354: 855e mv a0,s7 + c0020356: 6b72f0ef jal ra,c005020c + c002035a: bde9 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13287 ret = bf_logic_or(r, a, b); - c002018c: 862a mv a2,a0 - c002018e: 85ce mv a1,s3 - c0020190: 855e mv a0,s7 - c0020192: 69f2f0ef jal ra,c0050030 - c0020196: b5f9 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13282 + c002035c: 862a mv a2,a0 + c002035e: 85ce mv a1,s3 + c0020360: 855e mv a0,s7 + c0020362: 69f2f0ef jal ra,c0050200 + c0020366: b5f9 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13290 ret = bf_logic_xor(r, a, b); - c0020198: 862a mv a2,a0 - c002019a: 85ce mv a1,s3 - c002019c: 855e mv a0,s7 - c002019e: 6992f0ef jal ra,c0050036 - c00201a2: b5c9 j c0020064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13285 + c0020368: 862a mv a2,a0 + c002036a: 85ce mv a1,s3 + c002036c: 855e mv a0,s7 + c002036e: 6992f0ef jal ra,c0050206 + c0020372: b5c9 j c0020234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13293 abort(); - c00201a4: 666350ef jal ra,c005580a + c0020374: 666350ef jal ra,c00559da JS_CompactBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); - c00201a8: 85d6 mv a1,s5 - c00201aa: 8652 mv a2,s4 - c00201ac: 8526 mv a0,s1 - c00201ae: 9b4e60ef jal ra,c0006362 + c0020378: 85d6 mv a1,s5 + c002037a: 8652 mv a2,s4 + c002037c: 8526 mv a0,s1 + c002037e: 8d2e60ef jal ra,c0006450 js_binary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13304 *pres = JS_CompactBigInt(ctx, res); - c00201b2: 00ab3023 sd a0,0(s6) - c00201b6: 00bb3423 sd a1,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13303 -} - c00201ba: 60f2 ld ra,280(sp) - c00201bc: 8522 mv a0,s0 - c00201be: 6452 ld s0,272(sp) - c00201c0: 64b2 ld s1,264(sp) - c00201c2: 6912 ld s2,256(sp) - c00201c4: 79ee ld s3,248(sp) - c00201c6: 7a4e ld s4,240(sp) - c00201c8: 7aae ld s5,232(sp) - c00201ca: 7b0e ld s6,224(sp) - c00201cc: 6bee ld s7,216(sp) - c00201ce: 6115 addi sp,sp,288 - c00201d0: 8082 ret - -00000000c00201d2 : + c0020382: 00ab3023 sd a0,0(s6) + c0020386: 00bb3423 sd a1,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13311 +} + c002038a: 60f2 ld ra,280(sp) + c002038c: 8522 mv a0,s0 + c002038e: 6452 ld s0,272(sp) + c0020390: 64b2 ld s1,264(sp) + c0020392: 6912 ld s2,256(sp) + c0020394: 79ee ld s3,248(sp) + c0020396: 7a4e ld s4,240(sp) + c0020398: 7aae ld s5,232(sp) + c002039a: 7b0e ld s6,224(sp) + c002039c: 6bee ld s7,216(sp) + c002039e: 6115 addi sp,sp,288 + c00203a0: 8082 ret + +00000000c00203a2 : js_unary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12934 -{ - c00201d2: 7131 addi sp,sp,-192 - c00201d4: f526 sd s1,168(sp) - c00201d6: fcde sd s7,120(sp) - c00201d8: fd06 sd ra,184(sp) - c00201da: f922 sd s0,176(sp) - c00201dc: f14a sd s2,160(sp) - c00201de: ed4e sd s3,152(sp) - c00201e0: e952 sd s4,144(sp) - c00201e2: e556 sd s5,136(sp) - c00201e4: e15a sd s6,128(sp) - c00201e6: e036 sd a3,0(sp) - c00201e8: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12939 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12942 +{ + c00203a2: 7131 addi sp,sp,-192 + c00203a4: f526 sd s1,168(sp) + c00203a6: fcde sd s7,120(sp) + c00203a8: fd06 sd ra,184(sp) + c00203aa: f922 sd s0,176(sp) + c00203ac: f14a sd s2,160(sp) + c00203ae: ed4e sd s3,152(sp) + c00203b0: e952 sd s4,144(sp) + c00203b2: e556 sd s5,136(sp) + c00203b4: e15a sd s6,128(sp) + c00203b6: e036 sd a3,0(sp) + c00203b8: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12947 if (op == OP_plus && !is_math_mode(ctx)) { - c00201ea: 08e00b93 li s7,142 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12934 + c00203ba: 08e00b93 li s7,142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12942 { - c00201ee: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12939 + c00203be: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12947 if (op == OP_plus && !is_math_mode(ctx)) { - c00201f0: 03761a63 bne a2,s7,c0020224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12940 + c00203c0: 03761a63 bne a2,s7,c00203f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12948 JS_ThrowTypeError(ctx, "bigint argument with unary +"); - c00201f4: 0003e597 auipc a1,0x3e - c00201f8: 4ac58593 addi a1,a1,1196 # c005e6a0 - c00201fc: 9faf30ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12953 + c00203c4: 0003e597 auipc a1,0x3e + c00203c8: 53c58593 addi a1,a1,1340 # c005e900 + c00203cc: 918f30ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12961 JS_FreeValue(ctx, op1); - c0020200: 6582 ld a1,0(sp) - c0020202: 6622 ld a2,8(sp) - c0020204: 8526 mv a0,s1 - c0020206: 933e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12982 + c00203d0: 6582 ld a1,0(sp) + c00203d2: 6622 ld a2,8(sp) + c00203d4: 8526 mv a0,s1 + c00203d6: 851e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12990 return -1; - c002020a: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12987 -} - c002020c: 70ea ld ra,184(sp) - c002020e: 8522 mv a0,s0 - c0020210: 744a ld s0,176(sp) - c0020212: 74aa ld s1,168(sp) - c0020214: 790a ld s2,160(sp) - c0020216: 69ea ld s3,152(sp) - c0020218: 6a4a ld s4,144(sp) - c002021a: 6aaa ld s5,136(sp) - c002021c: 6b0a ld s6,128(sp) - c002021e: 7be6 ld s7,120(sp) - c0020220: 6129 addi sp,sp,192 - c0020222: 8082 ret - c0020224: 8a2e mv s4,a1 - c0020226: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12944 + c00203da: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12995 +} + c00203dc: 70ea ld ra,184(sp) + c00203de: 8522 mv a0,s0 + c00203e0: 744a ld s0,176(sp) + c00203e2: 74aa ld s1,168(sp) + c00203e4: 790a ld s2,160(sp) + c00203e6: 69ea ld s3,152(sp) + c00203e8: 6a4a ld s4,144(sp) + c00203ea: 6aaa ld s5,136(sp) + c00203ec: 6b0a ld s6,128(sp) + c00203ee: 7be6 ld s7,120(sp) + c00203f0: 6129 addi sp,sp,192 + c00203f2: 8082 ret + c00203f4: 8a2e mv s4,a1 + c00203f6: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12952 res = JS_NewBigInt(ctx); - c0020228: b72f50ef jal ra,c001559a - c002022c: ec2a sd a0,24(sp) - c002022e: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12945 + c00203f8: b72f50ef jal ra,c001576a + c00203fc: ec2a sd a0,24(sp) + c00203fe: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12953 if (JS_IsException(res)) { - c0020230: 0005871b sext.w a4,a1 - c0020234: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12944 + c0020400: 0005871b sext.w a4,a1 + c0020404: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12952 res = JS_NewBigInt(ctx); - c0020236: 892a mv s2,a0 - c0020238: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12945 + c0020406: 892a mv s2,a0 + c0020408: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12953 if (JS_IsException(res)) { - c002023a: fcf703e3 beq a4,a5,c0020200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12950 + c002040a: fcf703e3 beq a4,a5,c00203d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12958 a = JS_ToBigInt(ctx, &a_s, op1); - c002023e: 6602 ld a2,0(sp) - c0020240: 66a2 ld a3,8(sp) + c002040e: 6602 ld a2,0(sp) + c0020410: 66a2 ld a3,8(sp) JS_GetBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1160 return &p->num; - c0020242: 00850b13 addi s6,a0,8 + c0020412: 00850b13 addi s6,a0,8 js_unary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12950 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12958 a = JS_ToBigInt(ctx, &a_s, op1); - c0020246: 00ac addi a1,sp,72 - c0020248: 8526 mv a0,s1 - c002024a: c0bff0ef jal ra,c001fe54 - c002024e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12951 + c0020416: 00ac addi a1,sp,72 + c0020418: 8526 mv a0,s1 + c002041a: c0bff0ef jal ra,c0020024 + c002041e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12959 if (!a) { - c0020250: e519 bnez a0,c002025e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12952 + c0020420: e519 bnez a0,c002042e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12960 JS_FreeValue(ctx, res); - c0020252: 65e2 ld a1,24(sp) - c0020254: 7602 ld a2,32(sp) - c0020256: 8526 mv a0,s1 - c0020258: 8e1e70ef jal ra,c0007b38 - c002025c: b755 j c0020200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12957 + c0020422: 65e2 ld a1,24(sp) + c0020424: 7602 ld a2,32(sp) + c0020426: 8526 mv a0,s1 + c0020428: ffee70ef jal ra,c0007c26 + c002042c: b755 j c00203d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12965 switch(op) { - c002025e: 09000793 li a5,144 - c0020262: 0087ea63 bltu a5,s0,c0020276 - c0020266: 028be563 bltu s7,s0,c0020290 - c002026a: 08d00793 li a5,141 - c002026e: 06f40263 beq s0,a5,c00202d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12975 + c002042e: 09000793 li a5,144 + c0020432: 0087ea63 bltu a5,s0,c0020446 + c0020436: 028be563 bltu s7,s0,c0020460 + c002043a: 08d00793 li a5,141 + c002043e: 06f40263 beq s0,a5,c00204a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12983 abort(); - c0020272: 598350ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12957 + c0020442: 598350ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12965 switch(op) { - c0020276: 09600793 li a5,150 - c002027a: fef41ce3 bne s0,a5,c0020272 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12971 + c0020446: 09600793 li a5,150 + c002044a: fef41ce3 bne s0,a5,c0020442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12979 ret = bf_add_si(r, a, 1, BF_PREC_INF, BF_RNDZ); - c002027e: 56fd li a3,-1 - c0020280: 85aa mv a1,a0 - c0020282: 4705 li a4,1 - c0020284: 8289 srli a3,a3,0x2 - c0020286: 4605 li a2,1 - c0020288: 855a mv a0,s6 - c002028a: 24c2f0ef jal ra,c004f4d6 - c002028e: a0b1 j c00202da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12960 + c002044e: 56fd li a3,-1 + c0020450: 85aa mv a1,a0 + c0020452: 4705 li a4,1 + c0020454: 8289 srli a3,a3,0x2 + c0020456: 4605 li a2,1 + c0020458: 855a mv a0,s6 + c002045a: 24c2f0ef jal ra,c004f6a6 + c002045e: a0b1 j c00204aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12968 v = 2 * (op - OP_dec) - 1; - c0020290: 0014161b slliw a2,s0,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12961 + c0020460: 0014161b slliw a2,s0,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12969 ret = bf_add_si(r, a, v, BF_PREC_INF, BF_RNDZ); - c0020294: 56fd li a3,-1 - c0020296: 85aa mv a1,a0 - c0020298: 4705 li a4,1 - c002029a: 8289 srli a3,a3,0x2 - c002029c: ee16061b addiw a2,a2,-287 - c00202a0: 855a mv a0,s6 - c00202a2: 2342f0ef jal ra,c004f4d6 - c00202a6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12977 + c0020464: 56fd li a3,-1 + c0020466: 85aa mv a1,a0 + c0020468: 4705 li a4,1 + c002046a: 8289 srli a3,a3,0x2 + c002046c: ee16061b addiw a2,a2,-287 + c0020470: 855a mv a0,s6 + c0020472: 2342f0ef jal ra,c004f6a6 + c0020476: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12985 JS_FreeBigInt(ctx, a, &a_s); - c00202a8: 00b0 addi a2,sp,72 - c00202aa: 85ce mv a1,s3 - c00202ac: 8526 mv a0,s1 - c00202ae: cbde70ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12978 + c0020478: 00b0 addi a2,sp,72 + c002047a: 85ce mv a1,s3 + c002047c: 8526 mv a0,s1 + c002047e: bdbe70ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12986 JS_FreeValue(ctx, op1); - c00202b2: 6582 ld a1,0(sp) - c00202b4: 6622 ld a2,8(sp) - c00202b6: 8526 mv a0,s1 - c00202b8: 881e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12979 + c0020482: 6582 ld a1,0(sp) + c0020484: 6622 ld a2,8(sp) + c0020486: 8526 mv a0,s1 + c0020488: f9ee70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12987 if (unlikely(ret)) { - c00202bc: c41d beqz s0,c00202ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12980 + c002048c: c41d beqz s0,c00204ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12988 JS_FreeValue(ctx, res); - c00202be: 65e2 ld a1,24(sp) - c00202c0: 7602 ld a2,32(sp) - c00202c2: 8526 mv a0,s1 - c00202c4: 875e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12981 + c002048e: 65e2 ld a1,24(sp) + c0020490: 7602 ld a2,32(sp) + c0020492: 8526 mv a0,s1 + c0020494: f92e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12989 throw_bf_exception(ctx, ret); - c00202c8: 85a2 mv a1,s0 - c00202ca: 8526 mv a0,s1 - c00202cc: b1bf80ef jal ra,c0018de6 - c00202d0: bf2d j c002020a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12967 + c0020498: 85a2 mv a1,s0 + c002049a: 8526 mv a0,s1 + c002049c: b1bf80ef jal ra,c0018fb6 + c00204a0: bf2d j c00203da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12975 ret = bf_set(r, a); - c00202d2: 85aa mv a1,a0 - c00202d4: 855a mv a0,s6 - c00202d6: 1ea2d0ef jal ra,c004d4c0 + c00204a2: 85aa mv a1,a0 + c00204a4: 855a mv a0,s6 + c00204a6: 1ea2d0ef jal ra,c004d690 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 r->sign ^= 1; - c00202da: 01092783 lw a5,16(s2) + c00204aa: 01092783 lw a5,16(s2) js_unary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12971 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12979 ret = bf_add_si(r, a, 1, BF_PREC_INF, BF_RNDZ); - c00202de: 842a mv s0,a0 + c00204ae: 842a mv s0,a0 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c00202e0: 0017c793 xori a5,a5,1 - c00202e4: 00f92823 sw a5,16(s2) + c00204b0: 0017c793 xori a5,a5,1 + c00204b4: 00f92823 sw a5,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.h:232 } - c00202e8: b7c1 j c00202a8 + c00204b8: b7c1 j c0020478 JS_CompactBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); - c00202ea: 85ca mv a1,s2 - c00202ec: 8656 mv a2,s5 - c00202ee: 8526 mv a0,s1 - c00202f0: 872e60ef jal ra,c0006362 + c00204ba: 85ca mv a1,s2 + c00204bc: 8656 mv a2,s5 + c00204be: 8526 mv a0,s1 + c00204c0: f91e50ef jal ra,c0006450 js_unary_arith_bigint(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12985 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12993 *pres = res; - c00202f4: 00aa3023 sd a0,0(s4) - c00202f8: 00ba3423 sd a1,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12986 + c00204c4: 00aa3023 sd a0,0(s4) + c00204c8: 00ba3423 sd a1,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12994 return 0; - c00202fc: bf01 j c002020c + c00204cc: bf01 j c00203dc -00000000c00202fe : +00000000c00204ce : js_bigint_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50715 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50723 { - c00202fe: 7115 addi sp,sp,-224 - c0020300: e432 sd a2,8(sp) - c0020302: ed86 sd ra,216(sp) - c0020304: e9a2 sd s0,208(sp) - c0020306: e5a6 sd s1,200(sp) - c0020308: e1ca sd s2,192(sp) - c002030a: fd4e sd s3,184(sp) - c002030c: f952 sd s4,176(sp) - c002030e: f556 sd s5,168(sp) - c0020310: f15a sd s6,160(sp) - c0020312: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50716 + c00204ce: 7115 addi sp,sp,-224 + c00204d0: e432 sd a2,8(sp) + c00204d2: ed86 sd ra,216(sp) + c00204d4: e9a2 sd s0,208(sp) + c00204d6: e5a6 sd s1,200(sp) + c00204d8: e1ca sd s2,192(sp) + c00204da: fd4e sd s3,184(sp) + c00204dc: f952 sd s4,176(sp) + c00204de: f556 sd s5,168(sp) + c00204e0: f15a sd s6,160(sp) + c00204e2: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50724 if (!JS_IsUndefined(new_target)) - c0020314: 2601 sext.w a2,a2 - c0020316: 478d li a5,3 - c0020318: 02f60163 beq a2,a5,c002033a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50719 -} - c002031c: 644e ld s0,208(sp) - c002031e: 60ee ld ra,216(sp) - c0020320: 64ae ld s1,200(sp) - c0020322: 690e ld s2,192(sp) - c0020324: 79ea ld s3,184(sp) - c0020326: 7a4a ld s4,176(sp) - c0020328: 7aaa ld s5,168(sp) - c002032a: 7b0a ld s6,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50717 + c00204e4: 2601 sext.w a2,a2 + c00204e6: 478d li a5,3 + c00204e8: 02f60163 beq a2,a5,c002050a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50727 +} + c00204ec: 644e ld s0,208(sp) + c00204ee: 60ee ld ra,216(sp) + c00204f0: 64ae ld s1,200(sp) + c00204f2: 690e ld s2,192(sp) + c00204f4: 79ea ld s3,184(sp) + c00204f6: 7a4a ld s4,176(sp) + c00204f8: 7aaa ld s5,168(sp) + c00204fa: 7b0a ld s6,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50725 return JS_ThrowTypeError(ctx, "not a constructor"); - c002032c: 0003e597 auipc a1,0x3e - c0020330: 89c58593 addi a1,a1,-1892 # c005dbc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50719 + c00204fc: 0003e597 auipc a1,0x3e + c0020500: 8fc58593 addi a1,a1,-1796 # c005ddf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50727 } - c0020334: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50717 + c0020504: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50725 return JS_ThrowTypeError(ctx, "not a constructor"); - c0020336: 8c0f306f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50718 + c0020506: fdff206f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50726 return JS_ToBigIntCtorFree(ctx, JS_DupValue(ctx, argv[0])); - c002033a: 670c ld a1,8(a4) - c002033c: 8a2a mv s4,a0 - c002033e: 6308 ld a0,0(a4) + c002050a: 670c ld a1,8(a4) + c002050c: 8a2a mv s4,a0 + c002050e: 6308 ld a0,0(a4) JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50648 switch(tag) { - c0020340: 5959 li s2,-10 - c0020342: 5ae5 li s5,-7 + c0020510: 5959 li s2,-10 + c0020512: 5ae5 li s5,-7 js_bigint_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50718 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50726 return JS_ToBigIntCtorFree(ctx, JS_DupValue(ctx, argv[0])); - c0020344: b2ae60ef jal ra,c000666e - c0020348: 842e mv s0,a1 - c002034a: f42a sd a0,40(sp) - c002034c: f82e sd a1,48(sp) - c002034e: fc2a sd a0,56(sp) - c0020350: e0ae sd a1,64(sp) - c0020352: 0005049b sext.w s1,a0 + c0020514: a48e60ef jal ra,c000675c + c0020518: 842e mv s0,a1 + c002051a: f42a sd a0,40(sp) + c002051c: f82e sd a1,48(sp) + c002051e: fc2a sd a0,56(sp) + c0020520: e0ae sd a1,64(sp) + c0020522: 0005049b sext.w s1,a0 JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50648 switch(tag) { - c0020356: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50700 + c0020526: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50708 if (JS_IsException(val)) - c0020358: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50639 + c0020528: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50647 tag = JS_VALUE_GET_NORM_TAG(val); - c002035a: 0004079b sext.w a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50640 + c002052a: 0004079b sext.w a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50648 switch(tag) { - c002035e: 07278963 beq a5,s2,c00203d0 - c0020362: 02f96963 bltu s2,a5,c0020394 - c0020366: 4705 li a4,1 - c0020368: 04f77c63 bgeu a4,a5,c00203c0 - c002036c: 471d li a4,7 - c002036e: 06e78563 beq a5,a4,c00203d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50706 + c002052e: 07278963 beq a5,s2,c00205a0 + c0020532: 02f96963 bltu s2,a5,c0020564 + c0020536: 4705 li a4,1 + c0020538: 04f77c63 bgeu a4,a5,c0020590 + c002053c: 471d li a4,7 + c002053e: 06e78563 beq a5,a4,c00205a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50714 JS_FreeValue(ctx, val); - c0020372: dc26 sw s1,56(sp) - c0020374: 75e2 ld a1,56(sp) - c0020376: 8622 mv a2,s0 - c0020378: 8552 mv a0,s4 - c002037a: e0a2 sd s0,64(sp) - c002037c: fbce70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50707 + c0020542: dc26 sw s1,56(sp) + c0020544: 75e2 ld a1,56(sp) + c0020546: 8622 mv a2,s0 + c0020548: 8552 mv a0,s4 + c002054a: e0a2 sd s0,64(sp) + c002054c: edae70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50715 return JS_ThrowTypeError(ctx, "cannot convert to bigint"); - c0020380: 0003e597 auipc a1,0x3e - c0020384: 28058593 addi a1,a1,640 # c005e600 - c0020388: 8552 mv a0,s4 - c002038a: 86cf30ef jal ra,c00133f6 - c002038e: ecaa sd a0,88(sp) - c0020390: 842e mv s0,a1 - c0020392: a0b5 j c00203fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50640 + c0020550: 0003e597 auipc a1,0x3e + c0020554: 31058593 addi a1,a1,784 # c005e860 + c0020558: 8552 mv a0,s4 + c002055a: f8bf20ef jal ra,c00134e4 + c002055e: ecaa sd a0,88(sp) + c0020560: 842e mv s0,a1 + c0020562: a0b5 j c00205ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50648 switch(tag) { - c0020394: 13578b63 beq a5,s5,c00204ca - c0020398: fd679de3 bne a5,s6,c0020372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50699 + c0020564: 13578b63 beq a5,s5,c002069a + c0020568: fd679de3 bne a5,s6,c0020542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50707 val = JS_ToPrimitiveFree(ctx, val, HINT_NUMBER); - c002039c: dc26 sw s1,56(sp) - c002039e: 75e2 ld a1,56(sp) - c00203a0: 8622 mv a2,s0 - c00203a2: 4685 li a3,1 - c00203a4: 8552 mv a0,s4 - c00203a6: e0a2 sd s0,64(sp) - c00203a8: f9ef90ef jal ra,c0019b46 - c00203ac: fc2a sd a0,56(sp) - c00203ae: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50700 + c002056c: dc26 sw s1,56(sp) + c002056e: 75e2 ld a1,56(sp) + c0020570: 8622 mv a2,s0 + c0020572: 4685 li a3,1 + c0020574: 8552 mv a0,s4 + c0020576: e0a2 sd s0,64(sp) + c0020578: f9ef90ef jal ra,c0019d16 + c002057c: fc2a sd a0,56(sp) + c002057e: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50708 if (JS_IsException(val)) - c00203b0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50699 + c0020580: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50707 val = JS_ToPrimitiveFree(ctx, val, HINT_NUMBER); - c00203b4: 842e mv s0,a1 - c00203b6: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50700 + c0020584: 842e mv s0,a1 + c0020586: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50708 if (JS_IsException(val)) - c00203ba: fb3790e3 bne a5,s3,c002035a - c00203be: a809 j c00203d0 + c002058a: fb3790e3 bne a5,s3,c002052a + c002058e: a809 j c00205a0 JS_NewBigInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12151 return JS_NewBigInt64_1(ctx, v); - c00203c0: 85a6 mv a1,s1 - c00203c2: 8552 mv a0,s4 - c00203c4: 8d5f80ef jal ra,c0018c98 - c00203c8: 0005049b sext.w s1,a0 - c00203cc: 842e mv s0,a1 - c00203ce: fc2a sd a0,56(sp) + c0020590: 85a6 mv a1,s1 + c0020592: 8552 mv a0,s4 + c0020594: 8d5f80ef jal ra,c0018e68 + c0020598: 0005049b sext.w s1,a0 + c002059c: 842e mv s0,a1 + c002059e: fc2a sd a0,56(sp) JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50717 return val; - c00203d0: dc26 sw s1,56(sp) - c00203d2: 77e2 ld a5,56(sp) - c00203d4: ecbe sd a5,88(sp) - c00203d6: a025 j c00203fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50654 + c00205a0: dc26 sw s1,56(sp) + c00205a2: 77e2 ld a5,56(sp) + c00205a4: ecbe sd a5,88(sp) + c00205a6: a025 j c00205ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50662 a = JS_ToBigFloat(ctx, &a_s, val); - c00203d8: dc26 sw s1,56(sp) - c00203da: 7662 ld a2,56(sp) - c00203dc: 07810993 addi s3,sp,120 - c00203e0: 86a2 mv a3,s0 - c00203e2: 85ce mv a1,s3 - c00203e4: 8552 mv a0,s4 - c00203e6: e0a2 sd s0,64(sp) - c00203e8: ad4e60ef jal ra,c00066bc - c00203ec: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50655 + c00205a8: dc26 sw s1,56(sp) + c00205aa: 7662 ld a2,56(sp) + c00205ac: 07810993 addi s3,sp,120 + c00205b0: 86a2 mv a3,s0 + c00205b2: 85ce mv a1,s3 + c00205b4: 8552 mv a0,s4 + c00205b6: e0a2 sd s0,64(sp) + c00205b8: 9f2e60ef jal ra,c00067aa + c00205bc: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50663 if (!a) { - c00203ee: e505 bnez a0,c0020416 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50656 + c00205be: e505 bnez a0,c00205e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50664 JS_FreeValue(ctx, val); - c00203f0: 75e2 ld a1,56(sp) - c00203f2: 6606 ld a2,64(sp) - c00203f4: 8552 mv a0,s4 - c00203f6: 4419 li s0,6 - c00203f8: f40e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50657 + c00205c0: 75e2 ld a1,56(sp) + c00205c2: 6606 ld a2,64(sp) + c00205c4: 8552 mv a0,s4 + c00205c6: 4419 li s0,6 + c00205c8: e5ee70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50665 return JS_EXCEPTION; - c00203fc: ec82 sd zero,88(sp) + c00205cc: ec82 sd zero,88(sp) js_bigint_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50719 -} - c00203fe: 60ee ld ra,216(sp) - c0020400: 85a2 mv a1,s0 - c0020402: 644e ld s0,208(sp) - c0020404: 6566 ld a0,88(sp) - c0020406: 64ae ld s1,200(sp) - c0020408: 690e ld s2,192(sp) - c002040a: 79ea ld s3,184(sp) - c002040c: 7a4a ld s4,176(sp) - c002040e: 7aaa ld s5,168(sp) - c0020410: 7b0a ld s6,160(sp) - c0020412: 612d addi sp,sp,224 - c0020414: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50727 +} + c00205ce: 60ee ld ra,216(sp) + c00205d0: 85a2 mv a1,s0 + c00205d2: 644e ld s0,208(sp) + c00205d4: 6566 ld a0,88(sp) + c00205d6: 64ae ld s1,200(sp) + c00205d8: 690e ld s2,192(sp) + c00205da: 79ea ld s3,184(sp) + c00205dc: 7a4a ld s4,176(sp) + c00205de: 7aaa ld s5,168(sp) + c00205e0: 7b0a ld s6,160(sp) + c00205e2: 612d addi sp,sp,224 + c00205e4: 8082 ret JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50659 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50667 if (!bf_is_finite(a)) { - c0020416: 6918 ld a4,16(a0) - c0020418: 57ed li a5,-5 - c002041a: 8385 srli a5,a5,0x1 - c002041c: 00e7df63 bge a5,a4,c002043a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50660 + c00205e6: 6918 ld a4,16(a0) + c00205e8: 57ed li a5,-5 + c00205ea: 8385 srli a5,a5,0x1 + c00205ec: 00e7df63 bge a5,a4,c002060a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50668 JS_FreeValue(ctx, val); - c0020420: 75e2 ld a1,56(sp) - c0020422: 6606 ld a2,64(sp) - c0020424: 8552 mv a0,s4 - c0020426: f12e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50661 + c00205f0: 75e2 ld a1,56(sp) + c00205f2: 6606 ld a2,64(sp) + c00205f4: 8552 mv a0,s4 + c00205f6: e30e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50669 val = JS_ThrowRangeError(ctx, "cannot convert NaN or Infinity to bigint"); - c002042a: 0003e597 auipc a1,0x3e - c002042e: 29658593 addi a1,a1,662 # c005e6c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50679 + c00205fa: 0003e597 auipc a1,0x3e + c00205fe: 32658593 addi a1,a1,806 # c005e920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50687 val = JS_ThrowRangeError(ctx, "cannot convert to bigint: not an integer"); - c0020432: 8552 mv a0,s4 - c0020434: d26f40ef jal ra,c001495a - c0020438: a891 j c002048c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50663 + c0020602: 8552 mv a0,s4 + c0020604: c44f40ef jal ra,c0014a48 + c0020608: a891 j c002065c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50671 JSValue val1 = JS_NewBigInt(ctx); - c002043a: 8552 mv a0,s4 - c002043c: 95ef50ef jal ra,c001559a - c0020440: e4aa sd a0,72(sp) - c0020442: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50666 + c002060a: 8552 mv a0,s4 + c002060c: 95ef50ef jal ra,c001576a + c0020610: e4aa sd a0,72(sp) + c0020612: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50674 if (JS_IsException(val1)) { - c0020444: 0005871b sext.w a4,a1 - c0020448: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50663 + c0020614: 0005871b sext.w a4,a1 + c0020618: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50671 JSValue val1 = JS_NewBigInt(ctx); - c002044a: 8aaa mv s5,a0 - c002044c: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50666 + c002061a: 8aaa mv s5,a0 + c002061c: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50674 if (JS_IsException(val1)) { - c002044e: faf701e3 beq a4,a5,c00203f0 + c002061e: faf701e3 beq a4,a5,c00205c0 JS_GetBigInt(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1160 return &p->num; - c0020452: 00850b13 addi s6,a0,8 + c0020622: 00850b13 addi s6,a0,8 JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50671 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50679 ret = bf_set(r, a); - c0020456: 85ca mv a1,s2 - c0020458: 855a mv a0,s6 - c002045a: 0662d0ef jal ra,c004d4c0 - c002045e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50672 + c0020626: 85ca mv a1,s2 + c0020628: 855a mv a0,s6 + c002062a: 0662d0ef jal ra,c004d690 + c002062e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50680 ret |= bf_rint(r, BF_RNDZ); - c0020460: 4585 li a1,1 - c0020462: 855a mv a0,s6 - c0020464: 2ee2f0ef jal ra,c004f752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50673 + c0020630: 4585 li a1,1 + c0020632: 855a mv a0,s6 + c0020634: 2ee2f0ef jal ra,c004f922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50681 JS_FreeValue(ctx, val); - c0020468: 75e2 ld a1,56(sp) - c002046a: 6606 ld a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50672 + c0020638: 75e2 ld a1,56(sp) + c002063a: 6606 ld a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50680 ret |= bf_rint(r, BF_RNDZ); - c002046c: 8c49 or s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50673 + c002063c: 8c49 or s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50681 JS_FreeValue(ctx, val); - c002046e: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50672 + c002063e: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50680 ret |= bf_rint(r, BF_RNDZ); - c0020470: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50673 + c0020640: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50681 JS_FreeValue(ctx, val); - c0020472: ec6e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50674 + c0020642: de4e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50682 if (ret & BF_ST_MEM_ERROR) { - c0020476: 02047793 andi a5,s0,32 - c002047a: c785 beqz a5,c00204a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50675 + c0020646: 02047793 andi a5,s0,32 + c002064a: c785 beqz a5,c0020672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50683 JS_FreeValue(ctx, val1); - c002047c: 65a6 ld a1,72(sp) - c002047e: 6646 ld a2,80(sp) - c0020480: 8552 mv a0,s4 - c0020482: eb6e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50676 + c002064c: 65a6 ld a1,72(sp) + c002064e: 6646 ld a2,80(sp) + c0020650: 8552 mv a0,s4 + c0020652: dd4e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50684 val = JS_ThrowOutOfMemory(ctx); - c0020486: 8552 mv a0,s4 - c0020488: f94f40ef jal ra,c0014c1c - c002048c: fc2a sd a0,56(sp) - c002048e: e0ae sd a1,64(sp) + c0020656: 8552 mv a0,s4 + c0020658: eb2f40ef jal ra,c0014d0a + c002065c: fc2a sd a0,56(sp) + c002065e: e0ae sd a1,64(sp) JS_CompactBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); - c0020490: 842e mv s0,a1 - c0020492: 0005049b sext.w s1,a0 + c0020660: 842e mv s0,a1 + c0020662: 0005049b sext.w s1,a0 JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50692 if (a == &a_s) - c0020496: f3391de3 bne s2,s3,c00203d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50685 + c0020666: f3391de3 bne s2,s3,c00205a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50693 bf_delete(a); - c002049a: 854a mv a0,s2 - c002049c: a0ee60ef jal ra,c00066aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50687 + c002066a: 854a mv a0,s2 + c002066c: 92ce60ef jal ra,c0006798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50695 break; - c00204a0: bf05 j c00203d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50677 + c0020670: bf05 j c00205a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50685 } else if (ret & BF_ST_INEXACT) { - c00204a2: 8841 andi s0,s0,16 - c00204a4: c819 beqz s0,c00204ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50678 + c0020672: 8841 andi s0,s0,16 + c0020674: c819 beqz s0,c002068a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50686 JS_FreeValue(ctx, val1); - c00204a6: 65a6 ld a1,72(sp) - c00204a8: 6646 ld a2,80(sp) - c00204aa: 8552 mv a0,s4 - c00204ac: e8ce70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50679 + c0020676: 65a6 ld a1,72(sp) + c0020678: 6646 ld a2,80(sp) + c002067a: 8552 mv a0,s4 + c002067c: daae70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50687 val = JS_ThrowRangeError(ctx, "cannot convert to bigint: not an integer"); - c00204b0: 0003e597 auipc a1,0x3e - c00204b4: 24058593 addi a1,a1,576 # c005e6f0 - c00204b8: bfad j c0020432 + c0020680: 0003e597 auipc a1,0x3e + c0020684: 2d058593 addi a1,a1,720 # c005e950 + c0020688: bfad j c0020602 JS_CompactBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12402 return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); - c00204ba: 85d6 mv a1,s5 - c00204bc: 8626 mv a2,s1 - c00204be: 8552 mv a0,s4 - c00204c0: ecd6 sd s5,88(sp) - c00204c2: f0a6 sd s1,96(sp) - c00204c4: e9fe50ef jal ra,c0006362 - c00204c8: b7d1 j c002048c + c002068a: 85d6 mv a1,s5 + c002068c: 8626 mv a2,s1 + c002068e: 8552 mv a0,s4 + c0020690: ecd6 sd s5,88(sp) + c0020692: f0a6 sd s1,96(sp) + c0020694: dbde50ef jal ra,c0006450 + c0020698: b7d1 j c002065c JS_ToBigIntCtorFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50696 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50704 val = JS_StringToBigIntErr(ctx, val); - c00204ca: dc26 sw s1,56(sp) - c00204cc: 75e2 ld a1,56(sp) - c00204ce: 8622 mv a2,s0 - c00204d0: 8552 mv a0,s4 - c00204d2: e0a2 sd s0,64(sp) - c00204d4: c62ff0ef jal ra,c001f936 - c00204d8: fc2a sd a0,56(sp) - c00204da: 0005049b sext.w s1,a0 - c00204de: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50697 + c002069a: dc26 sw s1,56(sp) + c002069c: 75e2 ld a1,56(sp) + c002069e: 8622 mv a2,s0 + c00206a0: 8552 mv a0,s4 + c00206a2: e0a2 sd s0,64(sp) + c00206a4: c62ff0ef jal ra,c001fb06 + c00206a8: fc2a sd a0,56(sp) + c00206aa: 0005049b sext.w s1,a0 + c00206ae: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50705 break; - c00204e0: bdc5 j c00203d0 + c00206b0: bdc5 j c00205a0 -00000000c00204e2 : +00000000c00206b2 : js_relational_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13952 -{ - c00204e2: 7175 addi sp,sp,-144 - c00204e4: f8ca sd s2,112(sp) - c00204e6: f4ce sd s3,104(sp) - c00204e8: f0d2 sd s4,96(sp) - c00204ea: e8da sd s6,80(sp) - c00204ec: e4de sd s7,72(sp) - c00204ee: e506 sd ra,136(sp) - c00204f0: e122 sd s0,128(sp) - c00204f2: fca6 sd s1,120(sp) - c00204f4: ecd6 sd s5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13960 +{ + c00206b2: 7175 addi sp,sp,-144 + c00206b4: f8ca sd s2,112(sp) + c00206b6: f4ce sd s3,104(sp) + c00206b8: f0d2 sd s4,96(sp) + c00206ba: e8da sd s6,80(sp) + c00206bc: e4de sd s7,72(sp) + c00206be: e506 sd ra,136(sp) + c00206c0: e122 sd s0,128(sp) + c00206c2: fca6 sd s1,120(sp) + c00206c4: ecd6 sd s5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13966 op2 = sp[-1]; - c00204f6: ff05b783 ld a5,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13952 + c00206c6: ff05b783 ld a5,-16(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13960 { - c00204fa: 89ae mv s3,a1 - c00204fc: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13958 + c00206ca: 89ae mv s3,a1 + c00206cc: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13966 op2 = sp[-1]; - c00204fe: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13982 + c00206ce: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13990 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NUMBER); - c0020500: fe89b603 ld a2,-24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13958 + c00206d0: fe89b603 ld a2,-24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13966 op2 = sp[-1]; - c0020504: ff85b783 ld a5,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13982 + c00206d4: ff85b783 ld a5,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13990 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NUMBER); - c0020508: fe05b583 ld a1,-32(a1) - c002050c: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13952 + c00206d8: fe05b583 ld a1,-32(a1) + c00206dc: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13960 { - c002050e: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13958 + c00206de: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13966 op2 = sp[-1]; - c0020510: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13982 + c00206e0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13990 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NUMBER); - c0020512: e34f90ef jal ra,c0019b46 - c0020516: e02a sd a0,0(sp) - c0020518: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13983 + c00206e2: e34f90ef jal ra,c0019d16 + c00206e6: e02a sd a0,0(sp) + c00206e8: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13991 if (JS_IsException(op1)) { - c002051a: 00058b1b sext.w s6,a1 - c002051e: 4b99 li s7,6 - c0020520: 037b1263 bne s6,s7,c0020544 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13984 + c00206ea: 00058b1b sext.w s6,a1 + c00206ee: 4b99 li s7,6 + c00206f0: 037b1263 bne s6,s7,c0020714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13992 JS_FreeValue(ctx, op2); - c0020524: 65c2 ld a1,16(sp) - c0020526: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13989 + c00206f4: 65c2 ld a1,16(sp) + c00206f6: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13997 JS_FreeValue(ctx, op1); - c0020528: 854a mv a0,s2 - c002052a: e0ee70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14107 + c00206f8: 854a mv a0,s2 + c00206fa: d2ce70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14115 sp[-2] = JS_UNDEFINED; - c002052e: 478d li a5,3 - c0020530: fe09b023 sd zero,-32(s3) - c0020534: fef9b423 sd a5,-24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14108 + c00206fe: 478d li a5,3 + c0020700: fe09b023 sd zero,-32(s3) + c0020704: fef9b423 sd a5,-24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14116 sp[-1] = JS_UNDEFINED; - c0020538: fe09b823 sd zero,-16(s3) - c002053c: fef9bc23 sd a5,-8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14109 + c0020708: fe09b823 sd zero,-16(s3) + c002070c: fef9bc23 sd a5,-8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14117 return -1; - c0020540: 557d li a0,-1 - c0020542: a059 j c00205c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13987 + c0020710: 557d li a0,-1 + c0020712: a059 j c0020798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13995 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NUMBER); - c0020544: 6662 ld a2,24(sp) - c0020546: 842e mv s0,a1 - c0020548: 65c2 ld a1,16(sp) - c002054a: 4685 li a3,1 - c002054c: 854a mv a0,s2 - c002054e: df8f90ef jal ra,c0019b46 - c0020552: e82a sd a0,16(sp) - c0020554: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13988 + c0020714: 6662 ld a2,24(sp) + c0020716: 842e mv s0,a1 + c0020718: 65c2 ld a1,16(sp) + c002071a: 4685 li a3,1 + c002071c: 854a mv a0,s2 + c002071e: df8f90ef jal ra,c0019d16 + c0020722: e82a sd a0,16(sp) + c0020724: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13996 if (JS_IsException(op2)) { - c0020556: 00058a9b sext.w s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13987 + c0020726: 00058a9b sext.w s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13995 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NUMBER); - c002055a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13988 + c002072a: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13996 if (JS_IsException(op2)) { - c002055c: 017a9563 bne s5,s7,c0020566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13989 + c002072c: 017a9563 bne s5,s7,c0020736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13997 JS_FreeValue(ctx, op1); - c0020560: 6582 ld a1,0(sp) - c0020562: 6622 ld a2,8(sp) - c0020564: b7d1 j c0020528 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13995 + c0020730: 6582 ld a1,0(sp) + c0020732: 6622 ld a2,8(sp) + c0020734: b7d1 j c00206f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14003 if (tag1 == JS_TAG_STRING && tag2 == JS_TAG_STRING) { - c0020566: 5765 li a4,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13993 + c0020736: 5765 li a4,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14001 tag2 = JS_VALUE_GET_NORM_TAG(op2); - c0020568: 87d6 mv a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13995 + c0020738: 87d6 mv a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14003 if (tag1 == JS_TAG_STRING && tag2 == JS_TAG_STRING) { - c002056a: 06eb1d63 bne s6,a4,c00205e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13995 (discriminator 1) - c002056e: 176a9463 bne s5,s6,c00206d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:13999 + c002073a: 06eb1d63 bne s6,a4,c00207b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14003 (discriminator 1) + c002073e: 176a9463 bne s5,s6,c00208a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14007 res = js_string_compare(ctx, p1, p2); - c0020572: 85aa mv a1,a0 - c0020574: 6502 ld a0,0(sp) - c0020576: d36e60ef jal ra,c0006aac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14000 + c0020742: 85aa mv a1,a0 + c0020744: 6502 ld a0,0(sp) + c0020746: c54e60ef jal ra,c0006b9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14008 switch(op) { - c002057a: 0a500793 li a5,165 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14005 + c002074a: 0a500793 li a5,165 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14013 res = (res <= 0); - c002057e: 00152413 slti s0,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14000 - switch(op) { - c0020582: 00fa0e63 beq s4,a5,c002059e - c0020586: 0a600793 li a5,166 + c002074e: 00152413 slti s0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14008 + switch(op) { + c0020752: 00fa0e63 beq s4,a5,c002076e + c0020756: 0a600793 li a5,166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14016 res = (res > 0); - c002058a: 00a02433 sgtz s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14000 + c002075a: 00a02433 sgtz s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14008 switch(op) { - c002058e: 00fa0863 beq s4,a5,c002059e - c0020592: 0a400793 li a5,164 - c0020596: 04fa1463 bne s4,a5,c00205de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14012 + c002075e: 00fa0863 beq s4,a5,c002076e + c0020762: 0a400793 li a5,164 + c0020766: 04fa1463 bne s4,a5,c00207ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14020 res = (res >= 0); - c002059a: 01f5541b srliw s0,a0,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14015 + c002076a: 01f5541b srliw s0,a0,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14023 JS_FreeValue(ctx, op1); - c002059e: 6582 ld a1,0(sp) - c00205a0: 6622 ld a2,8(sp) - c00205a2: 854a mv a0,s2 - c00205a4: d94e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14016 + c002076e: 6582 ld a1,0(sp) + c0020770: 6622 ld a2,8(sp) + c0020772: 854a mv a0,s2 + c0020774: cb2e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14024 JS_FreeValue(ctx, op2); - c00205a8: 65c2 ld a1,16(sp) - c00205aa: 6662 ld a2,24(sp) - c00205ac: 854a mv a0,s2 - c00205ae: d8ae70ef jal ra,c0007b38 + c0020778: 65c2 ld a1,16(sp) + c002077a: 6662 ld a2,24(sp) + c002077c: 854a mv a0,s2 + c002077e: ca8e70ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00205b2: 00803433 snez s0,s0 - c00205b6: da02 sw zero,52(sp) - c00205b8: d822 sw s0,48(sp) - c00205ba: 77c2 ld a5,48(sp) + c0020782: 00803433 snez s0,s0 + c0020786: da02 sw zero,52(sp) + c0020788: d822 sw s0,48(sp) + c002078a: 77c2 ld a5,48(sp) js_relational_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14105 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14113 return 0; - c00205bc: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14104 + c002078c: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14112 sp[-2] = JS_NewBool(ctx, res); - c00205be: fef9b023 sd a5,-32(s3) - c00205c2: 4785 li a5,1 - c00205c4: fef9b423 sd a5,-24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14110 -} - c00205c8: 60aa ld ra,136(sp) - c00205ca: 640a ld s0,128(sp) - c00205cc: 74e6 ld s1,120(sp) - c00205ce: 7946 ld s2,112(sp) - c00205d0: 79a6 ld s3,104(sp) - c00205d2: 7a06 ld s4,96(sp) - c00205d4: 6ae6 ld s5,88(sp) - c00205d6: 6b46 ld s6,80(sp) - c00205d8: 6ba6 ld s7,72(sp) - c00205da: 6149 addi sp,sp,144 - c00205dc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14012 + c002078e: fef9b023 sd a5,-32(s3) + c0020792: 4785 li a5,1 + c0020794: fef9b423 sd a5,-24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14118 +} + c0020798: 60aa ld ra,136(sp) + c002079a: 640a ld s0,128(sp) + c002079c: 74e6 ld s1,120(sp) + c002079e: 7946 ld s2,112(sp) + c00207a0: 79a6 ld s3,104(sp) + c00207a2: 7a06 ld s4,96(sp) + c00207a4: 6ae6 ld s5,88(sp) + c00207a6: 6b46 ld s6,80(sp) + c00207a8: 6ba6 ld s7,72(sp) + c00207aa: 6149 addi sp,sp,144 + c00207ac: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14020 res = (res >= 0); - c00205de: fff54513 not a0,a0 - c00205e2: bf65 j c002059a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14017 + c00207ae: fff54513 not a0,a0 + c00207b2: bf65 j c002076a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14025 } else if ((tag1 <= JS_TAG_NULL || tag1 == JS_TAG_FLOAT64) && - c00205e4: 4709 li a4,2 - c00205e6: 03677863 bgeu a4,s6,c0020616 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14017 (discriminator 2) - c00205ea: 469d li a3,7 - c00205ec: 0edb0063 beq s6,a3,c00206cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14022 + c00207b4: 4709 li a4,2 + c00207b6: 03677863 bgeu a4,s6,c00207e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14025 (discriminator 2) + c00207ba: 469d li a3,7 + c00207bc: 0edb0063 beq s6,a3,c002089c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14030 if (((tag1 == JS_TAG_BIG_INT && tag2 == JS_TAG_STRING) || - c00205f0: 57d9 li a5,-10 - c00205f2: 02fb1863 bne s6,a5,c0020622 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14022 (discriminator 1) - c00205f6: 57e5 li a5,-7 - c00205f8: 02fa9563 bne s5,a5,c0020622 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14031 + c00207c0: 57d9 li a5,-10 + c00207c2: 02fb1863 bne s6,a5,c00207f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14030 (discriminator 1) + c00207c6: 57e5 li a5,-7 + c00207c8: 02fa9563 bne s5,a5,c00207f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14039 op2 = JS_StringToBigInt(ctx, op2); - c00205fc: 65c2 ld a1,16(sp) - c00205fe: 6662 ld a2,24(sp) - c0020600: 854a mv a0,s2 - c0020602: a5aff0ef jal ra,c001f85c - c0020606: e82a sd a0,16(sp) - c0020608: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14032 + c00207cc: 65c2 ld a1,16(sp) + c00207ce: 6662 ld a2,24(sp) + c00207d0: 854a mv a0,s2 + c00207d2: a5aff0ef jal ra,c001fa2c + c00207d6: e82a sd a0,16(sp) + c00207d8: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14040 if (JS_VALUE_GET_TAG(op2) != JS_TAG_BIG_INT) { - c002060a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14031 + c00207da: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14039 op2 = JS_StringToBigInt(ctx, op2); - c002060e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14032 + c00207de: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14040 if (JS_VALUE_GET_TAG(op2) != JS_TAG_BIG_INT) { - c0020610: 0f679263 bne a5,s6,c00206f4 - c0020614: a081 j c0020654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14017 (discriminator 3) + c00207e0: 0f679263 bne a5,s6,c00208c4 + c00207e4: a081 j c0020824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14025 (discriminator 3) } else if ((tag1 <= JS_TAG_NULL || tag1 == JS_TAG_FLOAT64) && - c0020616: 0f576b63 bltu a4,s5,c002070c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14079 + c00207e6: 0f576b63 bltu a4,s5,c00208dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14087 d1 = JS_VALUE_GET_INT(op1); - c002061a: 4702 lw a4,0(sp) - c002061c: d2070753 fcvt.d.w fa4,a4 - c0020620: a0b5 j c002068c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14041 + c00207ea: 4702 lw a4,0(sp) + c00207ec: d2070753 fcvt.d.w fa4,a4 + c00207f0: a0b5 j c002085c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14049 op1 = JS_ToNumericFree(ctx, op1); - c0020622: 6582 ld a1,0(sp) - c0020624: 6622 ld a2,8(sp) - c0020626: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14042 + c00207f2: 6582 ld a1,0(sp) + c00207f4: 6622 ld a2,8(sp) + c00207f6: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14050 if (JS_IsException(op1)) { - c0020628: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14041 + c00207f8: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14049 op1 = JS_ToNumericFree(ctx, op1); - c002062a: b06fe0ef jal ra,c001e930 - c002062e: e02a sd a0,0(sp) - c0020630: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14042 + c00207fa: b06fe0ef jal ra,c001eb00 + c00207fe: e02a sd a0,0(sp) + c0020800: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14050 if (JS_IsException(op1)) { - c0020632: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14041 + c0020802: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14049 op1 = JS_ToNumericFree(ctx, op1); - c0020636: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14042 + c0020806: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14050 if (JS_IsException(op1)) { - c0020638: ef5786e3 beq a5,s5,c0020524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14046 + c0020808: ef5786e3 beq a5,s5,c00206f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14054 op2 = JS_ToNumericFree(ctx, op2); - c002063c: 65c2 ld a1,16(sp) - c002063e: 6662 ld a2,24(sp) - c0020640: 854a mv a0,s2 - c0020642: aeefe0ef jal ra,c001e930 - c0020646: e82a sd a0,16(sp) - c0020648: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14047 + c002080c: 65c2 ld a1,16(sp) + c002080e: 6662 ld a2,24(sp) + c0020810: 854a mv a0,s2 + c0020812: aeefe0ef jal ra,c001eb00 + c0020816: e82a sd a0,16(sp) + c0020818: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14055 if (JS_IsException(op2)) { - c002064a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14046 + c002081a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14054 op2 = JS_ToNumericFree(ctx, op2); - c002064e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14047 + c002081e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14055 if (JS_IsException(op2)) { - c0020650: f15788e3 beq a5,s5,c0020560 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14053 + c0020820: f15788e3 beq a5,s5,c0020730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14061 tag1 = JS_VALUE_GET_NORM_TAG(op1); - c0020654: 0004071b sext.w a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14067 + c0020824: 0004071b sext.w a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14075 if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { - c0020658: 56d9 li a3,-10 - c002065a: 00d70663 beq a4,a3,c0020666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14054 (discriminator 1) + c0020828: 56d9 li a3,-10 + c002082a: 00d70663 beq a4,a3,c0020836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14062 (discriminator 1) tag2 = JS_VALUE_GET_NORM_TAG(op2); - c002065e: 0004879b sext.w a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14067 (discriminator 1) + c002082e: 0004879b sext.w a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14075 (discriminator 1) if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { - c0020662: 02d79163 bne a5,a3,c0020684 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14068 + c0020832: 02d79163 bne a5,a3,c0020854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14076 res = ctx->rt->bigint_ops.compare(ctx, op, op1, op2); - c0020666: 01893783 ld a5,24(s2) - c002066a: 6742 ld a4,16(sp) - c002066c: 6602 ld a2,0(sp) - c002066e: 2287b803 ld a6,552(a5) - c0020672: 86a2 mv a3,s0 - c0020674: 87a6 mv a5,s1 - c0020676: 85d2 mv a1,s4 - c0020678: 854a mv a0,s2 - c002067a: 9802 jalr a6 - c002067c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14069 + c0020836: 01893783 ld a5,24(s2) + c002083a: 6742 ld a4,16(sp) + c002083c: 6602 ld a2,0(sp) + c002083e: 2287b803 ld a6,552(a5) + c0020842: 86a2 mv a3,s0 + c0020844: 87a6 mv a5,s1 + c0020846: 85d2 mv a1,s4 + c0020848: 854a mv a0,s2 + c002084a: 9802 jalr a6 + c002084c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14077 if (res < 0) - c002067e: f2055ae3 bgez a0,c00205b2 - c0020682: b575 j c002052e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14076 + c002084e: f2055ae3 bgez a0,c0020782 + c0020852: b575 j c00206fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14084 if (tag1 == JS_TAG_FLOAT64) { - c0020684: 469d li a3,7 - c0020686: f8d71ae3 bne a4,a3,c002061a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14077 + c0020854: 469d li a3,7 + c0020856: f8d71ae3 bne a4,a3,c00207ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14085 d1 = JS_VALUE_GET_FLOAT64(op1); - c002068a: 2702 fld fa4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14081 + c002085a: 2702 fld fa4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14089 if (tag2 == JS_TAG_FLOAT64) { - c002068c: 471d li a4,7 - c002068e: 02e79263 bne a5,a4,c00206b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14082 + c002085c: 471d li a4,7 + c002085e: 02e79263 bne a5,a4,c0020882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14090 d2 = JS_VALUE_GET_FLOAT64(op2); - c0020692: 27c2 fld fa5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14086 + c0020862: 27c2 fld fa5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14094 switch(op) { - c0020694: 0a500793 li a5,165 - c0020698: 02fa0163 beq s4,a5,c00206ba - c002069c: 0a600793 li a5,166 - c00206a0: 02fa0063 beq s4,a5,c00206c0 - c00206a4: 0a400793 li a5,164 - c00206a8: 00fa1f63 bne s4,a5,c00206c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14088 + c0020864: 0a500793 li a5,165 + c0020868: 02fa0163 beq s4,a5,c002088a + c002086c: 0a600793 li a5,166 + c0020870: 02fa0063 beq s4,a5,c0020890 + c0020874: 0a400793 li a5,164 + c0020878: 00fa1f63 bne s4,a5,c0020896 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14096 res = (d1 < d2); /* if NaN return false */ - c00206ac: a2f71453 flt.d s0,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14089 + c002087c: a2f71453 flt.d s0,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14097 break; - c00206b0: b709 j c00205b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14084 + c0020880: b709 j c0020782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14092 d2 = JS_VALUE_GET_INT(op2); - c00206b2: 47c2 lw a5,16(sp) - c00206b4: d20787d3 fcvt.d.w fa5,a5 - c00206b8: bff1 j c0020694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14091 + c0020882: 47c2 lw a5,16(sp) + c0020884: d20787d3 fcvt.d.w fa5,a5 + c0020888: bff1 j c0020864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14099 res = (d1 <= d2); /* if NaN return false */ - c00206ba: a2f70453 fle.d s0,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14092 + c002088a: a2f70453 fle.d s0,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14100 break; - c00206be: bdd5 j c00205b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14094 + c002088e: bdd5 j c0020782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14102 res = (d1 > d2); /* if NaN return false */ - c00206c0: a2e79453 flt.d s0,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14095 + c0020890: a2e79453 flt.d s0,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14103 break; - c00206c4: b5fd j c00205b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14098 + c0020894: b5fd j c0020782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14106 res = (d1 >= d2); /* if NaN return false */ - c00206c6: a2e78453 fle.d s0,fa5,fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14099 + c0020896: a2e78453 fle.d s0,fa5,fa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14107 break; - c00206ca: b5e5 j c00205b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14017 + c002089a: b5e5 j c0020782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14025 } else if ((tag1 <= JS_TAG_NULL || tag1 == JS_TAG_FLOAT64) && - c00206cc: fb577fe3 bgeu a4,s5,c002068a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14018 + c002089c: fb577fe3 bgeu a4,s5,c002085a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14026 (tag2 <= JS_TAG_NULL || tag2 == JS_TAG_FLOAT64)) { - c00206d0: f36a90e3 bne s5,s6,c00205f0 - c00206d4: bf5d j c002068a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14022 + c00208a0: f36a90e3 bne s5,s6,c00207c0 + c00208a4: bf5d j c002085a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14030 if (((tag1 == JS_TAG_BIG_INT && tag2 == JS_TAG_STRING) || - c00206d6: 57d9 li a5,-10 - c00206d8: f4fa95e3 bne s5,a5,c0020622 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14026 + c00208a6: 57d9 li a5,-10 + c00208a8: f4fa95e3 bne s5,a5,c00207f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14034 op1 = JS_StringToBigInt(ctx, op1); - c00206dc: 6582 ld a1,0(sp) - c00206de: 6622 ld a2,8(sp) - c00206e0: 854a mv a0,s2 - c00206e2: 97aff0ef jal ra,c001f85c - c00206e6: e02a sd a0,0(sp) - c00206e8: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14027 + c00208ac: 6582 ld a1,0(sp) + c00208ae: 6622 ld a2,8(sp) + c00208b0: 854a mv a0,s2 + c00208b2: 97aff0ef jal ra,c001fa2c + c00208b6: e02a sd a0,0(sp) + c00208b8: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14035 if (JS_VALUE_GET_TAG(op1) != JS_TAG_BIG_INT) - c00206ea: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14026 + c00208ba: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14034 op1 = JS_StringToBigInt(ctx, op1); - c00206ee: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14027 + c00208be: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14035 if (JS_VALUE_GET_TAG(op1) != JS_TAG_BIG_INT) - c00206f0: f75782e3 beq a5,s5,c0020654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14034 + c00208c0: f75782e3 beq a5,s5,c0020824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14042 JS_FreeValue(ctx, op1); - c00206f4: 6582 ld a1,0(sp) - c00206f6: 8622 mv a2,s0 - c00206f8: 854a mv a0,s2 - c00206fa: c3ee70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14035 + c00208c4: 6582 ld a1,0(sp) + c00208c6: 8622 mv a2,s0 + c00208c8: 854a mv a0,s2 + c00208ca: b5ce70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14043 JS_FreeValue(ctx, op2); - c00206fe: 65c2 ld a1,16(sp) - c0020700: 8626 mv a2,s1 - c0020702: 854a mv a0,s2 - c0020704: c34e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14036 + c00208ce: 65c2 ld a1,16(sp) + c00208d0: 8626 mv a2,s1 + c00208d2: 854a mv a0,s2 + c00208d4: b52e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14044 res = FALSE; - c0020708: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14037 + c00208d8: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14045 goto done; - c002070a: b565 j c00205b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14018 + c00208da: b565 j c0020782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14026 (tag2 <= JS_TAG_NULL || tag2 == JS_TAG_FLOAT64)) { - c002070c: 471d li a4,7 - c002070e: eeea91e3 bne s5,a4,c00205f0 - c0020712: b721 j c002061a + c00208dc: 471d li a4,7 + c00208de: eeea91e3 bne s5,a4,c00207c0 + c00208e2: b721 j c00207ea -00000000c0020714 : +00000000c00208e4 : js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14124 -{ - c0020714: 7115 addi sp,sp,-224 - c0020716: e1ca sd s2,192(sp) - c0020718: fd4e sd s3,184(sp) - c002071a: f952 sd s4,176(sp) - c002071c: f15a sd s6,160(sp) - c002071e: e962 sd s8,144(sp) - c0020720: e16a sd s10,128(sp) - c0020722: fcee sd s11,120(sp) - c0020724: ed86 sd ra,216(sp) - c0020726: e9a2 sd s0,208(sp) - c0020728: e5a6 sd s1,200(sp) - c002072a: f556 sd s5,168(sp) - c002072c: ed5e sd s7,152(sp) - c002072e: e566 sd s9,136(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14132 +{ + c00208e4: 7115 addi sp,sp,-224 + c00208e6: e1ca sd s2,192(sp) + c00208e8: fd4e sd s3,184(sp) + c00208ea: f952 sd s4,176(sp) + c00208ec: f15a sd s6,160(sp) + c00208ee: e962 sd s8,144(sp) + c00208f0: e16a sd s10,128(sp) + c00208f2: fcee sd s11,120(sp) + c00208f4: ed86 sd ra,216(sp) + c00208f6: e9a2 sd s0,208(sp) + c00208f8: e5a6 sd s1,200(sp) + c00208fa: f556 sd s5,168(sp) + c00208fc: ed5e sd s7,152(sp) + c00208fe: e566 sd s9,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14140 op1 = sp[-2]; - c0020730: fe05b783 ld a5,-32(a1) - c0020734: fe85b403 ld s0,-24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14133 + c0020900: fe05b783 ld a5,-32(a1) + c0020904: fe85b403 ld s0,-24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14141 op2 = sp[-1]; - c0020738: ff85b483 ld s1,-8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14132 + c0020908: ff85b483 ld s1,-8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14140 op1 = sp[-2]; - c002073c: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14133 + c002090c: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14141 op2 = sp[-1]; - c002073e: ff05b783 ld a5,-16(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14124 -{ - c0020742: 8a2a mv s4,a0 - c0020744: 89ae mv s3,a1 - c0020746: e432 sd a2,8(sp) + c002090e: ff05b783 ld a5,-16(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14132 +{ + c0020912: 8a2a mv s4,a0 + c0020914: 89ae mv s3,a1 + c0020916: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14140 op1 = sp[-2]; - c0020748: ec22 sd s0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14133 + c0020918: ec22 sd s0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14141 op2 = sp[-1]; - c002074a: f03e sd a5,32(sp) - c002074c: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14193 + c002091a: f03e sd a5,32(sp) + c002091c: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14201 } else if ((tag1 == JS_TAG_NULL && tag2 == JS_TAG_UNDEFINED) || - c002074e: 4d0d li s10,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14235 + c002091e: 4d0d li s10,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14243 } else if ((tag1 == JS_TAG_OBJECT && - c0020750: 5dfd li s11,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14256 + c0020920: 5dfd li s11,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14264 if (JS_IsException(op1)) { - c0020752: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14238 + c0020922: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14246 (tag_is_number(tag1) || tag1 == JS_TAG_STRING || tag1 == JS_TAG_SYMBOL))) { - c0020754: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 + c0020924: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 } else if ((tag1 == JS_TAG_STRING && tag_is_number(tag2)) || - c0020756: 5c65 li s8,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14135 + c0020926: 5c65 li s8,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14143 tag1 = JS_VALUE_GET_NORM_TAG(op1); - c0020758: 00040a9b sext.w s5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14137 + c0020928: 00040a9b sext.w s5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14145 if (tag_is_number(tag1) && tag_is_number(tag2)) { - c002075c: 8556 mv a0,s5 - c002075e: 994e50ef jal ra,c00058f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14136 + c002092c: 8556 mv a0,s5 + c002092e: 8b2e50ef jal ra,c00059e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14144 tag2 = JS_VALUE_GET_NORM_TAG(op2); - c0020762: 00048c9b sext.w s9,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14137 + c0020932: 00048c9b sext.w s9,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14145 if (tag_is_number(tag1) && tag_is_number(tag2)) { - c0020766: 8baa mv s7,a0 - c0020768: c94d beqz a0,c002081a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14137 (discriminator 1) - c002076a: 8566 mv a0,s9 - c002076c: 986e50ef jal ra,c00058f2 - c0020770: c54d beqz a0,c002081a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14138 + c0020936: 8baa mv s7,a0 + c0020938: c94d beqz a0,c00209ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14145 (discriminator 1) + c002093a: 8566 mv a0,s9 + c002093c: 8a4e50ef jal ra,c00059e0 + c0020940: c54d beqz a0,c00209ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14146 if (tag1 == JS_TAG_INT && tag2 == JS_TAG_INT) { - c0020772: 040a9763 bnez s5,c00207c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14138 (discriminator 1) - c0020776: 200c9363 bnez s9,c002097c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14139 + c0020942: 040a9763 bnez s5,c0020990 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14146 (discriminator 1) + c0020946: 200c9363 bnez s9,c0020b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14147 res = JS_VALUE_GET_INT(op1) == JS_VALUE_GET_INT(op2); - c002077a: 5902 lw s2,32(sp) - c002077c: 4542 lw a0,16(sp) - c002077e: 41250533 sub a0,a0,s2 - c0020782: 00153913 seqz s2,a0 + c002094a: 5902 lw s2,32(sp) + c002094c: 4542 lw a0,16(sp) + c002094e: 41250533 sub a0,a0,s2 + c0020952: 00153913 seqz s2,a0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0020786: 67a2 ld a5,8(sp) - c0020788: d282 sw zero,100(sp) + c0020956: 67a2 ld a5,8(sp) + c0020958: d282 sw zero,100(sp) js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14281 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14289 return 0; - c002078a: 4501 li a0,0 + c002095a: 4501 li a0,0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c002078c: 40f90933 sub s2,s2,a5 - c0020790: 01203933 snez s2,s2 - c0020794: d0ca sw s2,96(sp) - c0020796: 7786 ld a5,96(sp) + c002095c: 40f90933 sub s2,s2,a5 + c0020960: 01203933 snez s2,s2 + c0020964: d0ca sw s2,96(sp) + c0020966: 7786 ld a5,96(sp) js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14288 sp[-2] = JS_NewBool(ctx, res ^ is_neq); - c0020798: fef9b023 sd a5,-32(s3) - c002079c: 4785 li a5,1 - c002079e: fef9b423 sd a5,-24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14286 -} - c00207a2: 60ee ld ra,216(sp) - c00207a4: 644e ld s0,208(sp) - c00207a6: 64ae ld s1,200(sp) - c00207a8: 690e ld s2,192(sp) - c00207aa: 79ea ld s3,184(sp) - c00207ac: 7a4a ld s4,176(sp) - c00207ae: 7aaa ld s5,168(sp) - c00207b0: 7b0a ld s6,160(sp) - c00207b2: 6bea ld s7,152(sp) - c00207b4: 6c4a ld s8,144(sp) - c00207b6: 6caa ld s9,136(sp) - c00207b8: 6d0a ld s10,128(sp) - c00207ba: 7de6 ld s11,120(sp) - c00207bc: 612d addi sp,sp,224 - c00207be: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14140 + c0020968: fef9b023 sd a5,-32(s3) + c002096c: 4785 li a5,1 + c002096e: fef9b423 sd a5,-24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14294 +} + c0020972: 60ee ld ra,216(sp) + c0020974: 644e ld s0,208(sp) + c0020976: 64ae ld s1,200(sp) + c0020978: 690e ld s2,192(sp) + c002097a: 79ea ld s3,184(sp) + c002097c: 7a4a ld s4,176(sp) + c002097e: 7aaa ld s5,168(sp) + c0020980: 7b0a ld s6,160(sp) + c0020982: 6bea ld s7,152(sp) + c0020984: 6c4a ld s8,144(sp) + c0020986: 6caa ld s9,136(sp) + c0020988: 6d0a ld s10,128(sp) + c002098a: 7de6 ld s11,120(sp) + c002098c: 612d addi sp,sp,224 + c002098e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14148 } else if ((tag1 == JS_TAG_FLOAT64 && - c00207c0: 469d li a3,7 - c00207c2: 02da9263 bne s5,a3,c00207e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14140 (discriminator 1) - c00207c6: 000c8463 beqz s9,c00207ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14141 + c0020990: 469d li a3,7 + c0020992: 02da9263 bne s5,a3,c00209b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14148 (discriminator 1) + c0020996: 000c8463 beqz s9,c002099e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14149 (tag2 == JS_TAG_INT || tag2 == JS_TAG_FLOAT64)) || - c00207ca: 015c9e63 bne s9,s5,c00207e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14150 + c002099a: 015c9e63 bne s9,s5,c00209b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14158 if (tag2 == JS_TAG_FLOAT64) { - c00207ce: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14146 + c002099e: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14154 d1 = JS_VALUE_GET_FLOAT64(op1); - c00207d0: 27c2 fld fa5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14150 + c00209a0: 27c2 fld fa5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14158 if (tag2 == JS_TAG_FLOAT64) { - c00207d2: 00fc9663 bne s9,a5,c00207de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14151 + c00209a2: 00fc9663 bne s9,a5,c00209ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14159 d2 = JS_VALUE_GET_FLOAT64(op2); - c00207d6: 3702 fld fa4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14155 + c00209a6: 3702 fld fa4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14163 res = (d1 == d2); - c00207d8: a2f72953 feq.d s2,fa4,fa5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14143 + c00209a8: a2f72953 feq.d s2,fa4,fa5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14151 (tag1 == JS_TAG_INT || tag1 == JS_TAG_FLOAT64))) { - c00207dc: b76d j c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14153 + c00209ac: b76d j c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14161 d2 = JS_VALUE_GET_INT(op2); - c00207de: 5782 lw a5,32(sp) - c00207e0: d2078753 fcvt.d.w fa4,a5 - c00207e4: bfd5 j c00207d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14169 + c00209ae: 5782 lw a5,32(sp) + c00209b0: d2078753 fcvt.d.w fa4,a5 + c00209b4: bfd5 j c00209a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14177 res = ctx->rt->bigint_ops.compare(ctx, OP_eq, op1, op2); - c00207e6: 018a3783 ld a5,24(s4) - c00207ea: 7702 ld a4,32(sp) - c00207ec: 6642 ld a2,16(sp) - c00207ee: 2287b803 ld a6,552(a5) - c00207f2: 86a2 mv a3,s0 - c00207f4: 87a6 mv a5,s1 - c00207f6: 0aa00593 li a1,170 - c00207fa: 8552 mv a0,s4 - c00207fc: 9802 jalr a6 - c00207fe: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14170 + c00209b6: 018a3783 ld a5,24(s4) + c00209ba: 7702 ld a4,32(sp) + c00209bc: 6642 ld a2,16(sp) + c00209be: 2287b803 ld a6,552(a5) + c00209c2: 86a2 mv a3,s0 + c00209c4: 87a6 mv a5,s1 + c00209c6: 0aa00593 li a1,170 + c00209ca: 8552 mv a0,s4 + c00209cc: 9802 jalr a6 + c00209ce: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14178 if (res < 0) - c0020800: f80553e3 bgez a0,c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14283 + c00209d0: f80553e3 bgez a0,c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14291 sp[-2] = JS_UNDEFINED; - c0020804: 478d li a5,3 - c0020806: fe09b023 sd zero,-32(s3) - c002080a: fef9b423 sd a5,-24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14284 + c00209d4: 478d li a5,3 + c00209d6: fe09b023 sd zero,-32(s3) + c00209da: fef9b423 sd a5,-24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14292 sp[-1] = JS_UNDEFINED; - c002080e: fe09b823 sd zero,-16(s3) - c0020812: fef9bc23 sd a5,-8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14285 + c00209de: fe09b823 sd zero,-16(s3) + c00209e2: fef9bc23 sd a5,-8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14293 return -1; - c0020816: 557d li a0,-1 - c0020818: b769 j c00207a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14173 + c00209e6: 557d li a0,-1 + c00209e8: b769 j c0020972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14181 } else if (tag1 == tag2) { - c002081a: 019a9c63 bne s5,s9,c0020832 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14192 + c00209ea: 019a9c63 bne s5,s9,c0020a02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14200 res = js_strict_eq2(ctx, op1, op2, JS_EQ_STRICT); - c002081e: 7682 ld a3,32(sp) - c0020820: 65c2 ld a1,16(sp) - c0020822: 4781 li a5,0 - c0020824: 8726 mv a4,s1 + c00209ee: 7682 ld a3,32(sp) + c00209f0: 65c2 ld a1,16(sp) + c00209f2: 4781 li a5,0 + c00209f4: 8726 mv a4,s1 js_strict_eq(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 return js_strict_eq2(ctx, op1, op2, JS_EQ_STRICT); - c0020826: 8622 mv a2,s0 - c0020828: 8552 mv a0,s4 - c002082a: b32e70ef jal ra,c0007b5c - c002082e: 892a mv s2,a0 + c00209f6: 8622 mv a2,s0 + c00209f8: 8552 mv a0,s4 + c00209fa: a50e70ef jal ra,c0007c4a + c00209fe: 892a mv s2,a0 js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14236 res = js_strict_eq(ctx, op1, op2); - c0020830: bf99 j c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14193 + c0020a00: bf99 j c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14201 } else if ((tag1 == JS_TAG_NULL && tag2 == JS_TAG_UNDEFINED) || - c0020832: 4789 li a5,2 - c0020834: 00fa9463 bne s5,a5,c002083c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14193 (discriminator 1) - c0020838: 01ac8763 beq s9,s10,c0020846 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14193 (discriminator 3) - c002083c: 4789 li a5,2 - c002083e: 00fc9663 bne s9,a5,c002084a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14194 + c0020a02: 4789 li a5,2 + c0020a04: 00fa9463 bne s5,a5,c0020a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14201 (discriminator 1) + c0020a08: 01ac8763 beq s9,s10,c0020a16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14201 (discriminator 3) + c0020a0c: 4789 li a5,2 + c0020a0e: 00fc9663 bne s9,a5,c0020a1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14202 (tag2 == JS_TAG_NULL && tag1 == JS_TAG_UNDEFINED)) { - c0020842: 17aa9163 bne s5,s10,c00209a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14195 + c0020a12: 17aa9163 bne s5,s10,c0020b74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14203 res = TRUE; - c0020846: 4905 li s2,1 - c0020848: bf3d j c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 + c0020a16: 4905 li s2,1 + c0020a18: bf3d j c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 } else if ((tag1 == JS_TAG_STRING && tag_is_number(tag2)) || - c002084a: 038a9d63 bne s5,s8,c0020884 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 (discriminator 1) - c002084e: 8566 mv a0,s9 - c0020850: 8a2e50ef jal ra,c00058f2 - c0020854: 12050b63 beqz a0,c002098a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14199 + c0020a1a: 038a9d63 bne s5,s8,c0020a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 (discriminator 1) + c0020a1e: 8566 mv a0,s9 + c0020a20: fc1e40ef jal ra,c00059e0 + c0020a24: 12050b63 beqz a0,c0020b5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14207 if ((tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) && - c0020858: 57d9 li a5,-10 - c002085a: 06fc8063 beq s9,a5,c00208ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14217 + c0020a28: 57d9 li a5,-10 + c0020a2a: 06fc8063 beq s9,a5,c0020a8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14225 op1 = JS_ToNumericFree(ctx, op1); - c002085e: 65c2 ld a1,16(sp) - c0020860: 8622 mv a2,s0 - c0020862: 8552 mv a0,s4 - c0020864: 8ccfe0ef jal ra,c001e930 - c0020868: e82a sd a0,16(sp) - c002086a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14218 + c0020a2e: 65c2 ld a1,16(sp) + c0020a30: 8622 mv a2,s0 + c0020a32: 8552 mv a0,s4 + c0020a34: 8ccfe0ef jal ra,c001eb00 + c0020a38: e82a sd a0,16(sp) + c0020a3a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14226 if (JS_IsException(op1)) { - c002086c: 0005879b sext.w a5,a1 - c0020870: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14217 + c0020a3c: 0005879b sext.w a5,a1 + c0020a40: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14225 op1 = JS_ToNumericFree(ctx, op1); - c0020872: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14219 + c0020a42: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14227 JS_FreeValue(ctx, op2); - c0020874: 8626 mv a2,s1 - c0020876: 7582 ld a1,32(sp) - c0020878: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14218 + c0020a44: 8626 mv a2,s1 + c0020a46: 7582 ld a1,32(sp) + c0020a48: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14226 if (JS_IsException(op1)) { - c002087a: 07279763 bne a5,s2,c00208e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14257 + c0020a4a: 07279763 bne a5,s2,c0020ab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14265 JS_FreeValue(ctx, op2); - c002087e: abae70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14258 + c0020a4e: 9d8e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14266 goto exception; - c0020882: b749 j c0020804 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 (discriminator 3) + c0020a52: b749 j c00209d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 (discriminator 3) } else if ((tag1 == JS_TAG_STRING && tag_is_number(tag2)) || - c0020884: 078c9e63 bne s9,s8,c0020900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14197 + c0020a54: 078c9e63 bne s9,s8,c0020ad0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14205 (tag2 == JS_TAG_STRING && tag_is_number(tag1))) { - c0020888: 120b8063 beqz s7,c00209a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14199 - if ((tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) && - c002088c: 5759 li a4,-10 - c002088e: fcea98e3 bne s5,a4,c002085e + c0020a58: 120b8063 beqz s7,c0020b78 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14207 + if ((tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) && + c0020a5c: 5759 li a4,-10 + c0020a5e: fcea98e3 bne s5,a4,c0020a2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14215 op2 = JS_StringToBigInt(ctx, op2); - c0020892: 7582 ld a1,32(sp) - c0020894: 8626 mv a2,s1 - c0020896: 8552 mv a0,s4 - c0020898: fc5fe0ef jal ra,c001f85c - c002089c: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14208 + c0020a62: 7582 ld a1,32(sp) + c0020a64: 8626 mv a2,s1 + c0020a66: 8552 mv a0,s4 + c0020a68: fc5fe0ef jal ra,c001fa2c + c0020a6c: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14216 if (JS_VALUE_GET_TAG(op2) != JS_TAG_BIG_INT) { - c002089e: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14207 + c0020a6e: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14215 op2 = JS_StringToBigInt(ctx, op2); - c00208a2: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14208 + c0020a72: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14216 if (JS_VALUE_GET_TAG(op2) != JS_TAG_BIG_INT) { - c00208a4: 03571663 bne a4,s5,c00208d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14228 + c0020a74: 03571663 bne a4,s5,c0020aa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14236 res = js_strict_eq(ctx, op1, op2); - c00208a8: 65c2 ld a1,16(sp) - c00208aa: 7682 ld a3,32(sp) - c00208ac: eca2 sd s0,88(sp) - c00208ae: e8ae sd a1,80(sp) - c00208b0: f0b6 sd a3,96(sp) - c00208b2: f4a6 sd s1,104(sp) + c0020a78: 65c2 ld a1,16(sp) + c0020a7a: 7682 ld a3,32(sp) + c0020a7c: eca2 sd s0,88(sp) + c0020a7e: e8ae sd a1,80(sp) + c0020a80: f0b6 sd a3,96(sp) + c0020a82: f4a6 sd s1,104(sp) js_strict_eq(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14548 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14556 return js_strict_eq2(ctx, op1, op2, JS_EQ_STRICT); - c00208b4: 4781 li a5,0 - c00208b6: 8726 mv a4,s1 - c00208b8: b7bd j c0020826 + c0020a84: 4781 li a5,0 + c0020a86: 8726 mv a4,s1 + c0020a88: b7bd j c00209f6 js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14210 op1 = JS_StringToBigInt(ctx, op1); - c00208ba: 65c2 ld a1,16(sp) - c00208bc: 8622 mv a2,s0 - c00208be: 8552 mv a0,s4 - c00208c0: f9dfe0ef jal ra,c001f85c - c00208c4: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14203 + c0020a8a: 65c2 ld a1,16(sp) + c0020a8c: 8622 mv a2,s0 + c0020a8e: 8552 mv a0,s4 + c0020a90: f9dfe0ef jal ra,c001fa2c + c0020a94: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14211 if (JS_VALUE_GET_TAG(op1) != JS_TAG_BIG_INT) - c00208c6: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14202 + c0020a96: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14210 op1 = JS_StringToBigInt(ctx, op1); - c00208ca: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14203 + c0020a9a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14211 if (JS_VALUE_GET_TAG(op1) != JS_TAG_BIG_INT) - c00208cc: fd978ee3 beq a5,s9,c00208a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14210 + c0020a9c: fd978ee3 beq a5,s9,c0020a78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14218 JS_FreeValue(ctx, op1); - c00208d0: 65c2 ld a1,16(sp) - c00208d2: 8622 mv a2,s0 - c00208d4: 8552 mv a0,s4 - c00208d6: a62e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14211 + c0020aa0: 65c2 ld a1,16(sp) + c0020aa2: 8622 mv a2,s0 + c0020aa4: 8552 mv a0,s4 + c0020aa6: 980e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14219 JS_FreeValue(ctx, op2); - c00208da: 7582 ld a1,32(sp) - c00208dc: 8626 mv a2,s1 - c00208de: 8552 mv a0,s4 - c00208e0: a58e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14212 + c0020aaa: 7582 ld a1,32(sp) + c0020aac: 8626 mv a2,s1 + c0020aae: 8552 mv a0,s4 + c0020ab0: 976e70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14220 res = FALSE; - c00208e4: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14213 + c0020ab4: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14221 goto done; - c00208e6: b545 j c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14222 + c0020ab6: b545 j c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14230 op2 = JS_ToNumericFree(ctx, op2); - c00208e8: 848fe0ef jal ra,c001e930 - c00208ec: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14223 + c0020ab8: 848fe0ef jal ra,c001eb00 + c0020abc: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14231 if (JS_IsException(op2)) { - c00208ee: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14222 + c0020abe: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14230 op2 = JS_ToNumericFree(ctx, op2); - c00208f2: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14223 + c0020ac2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14231 if (JS_IsException(op2)) { - c00208f4: fb279ae3 bne a5,s2,c00208a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14224 + c0020ac4: fb279ae3 bne a5,s2,c0020a78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14232 JS_FreeValue(ctx, op1); - c00208f8: 65c2 ld a1,16(sp) - c00208fa: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14257 + c0020ac8: 65c2 ld a1,16(sp) + c0020aca: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14265 JS_FreeValue(ctx, op2); - c00208fc: 8552 mv a0,s4 - c00208fe: b741 j c002087e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14229 + c0020acc: 8552 mv a0,s4 + c0020ace: b741 j c0020a4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14237 } else if (tag1 == JS_TAG_BOOL) { - c0020900: 096a9763 bne s5,s6,c002098e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14230 + c0020ad0: 096a9763 bne s5,s6,c0020b5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14238 op1 = JS_NewInt32(ctx, JS_VALUE_GET_INT(op1)); - c0020904: 47c2 lw a5,16(sp) + c0020ad4: 47c2 lw a5,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0020906: da02 sw zero,52(sp) - c0020908: fc02 sd zero,56(sp) - c002090a: d83e sw a5,48(sp) - c002090c: 77c2 ld a5,48(sp) - c002090e: ec02 sd zero,24(sp) + c0020ad6: da02 sw zero,52(sp) + c0020ad8: fc02 sd zero,56(sp) + c0020ada: d83e sw a5,48(sp) + c0020adc: 77c2 ld a5,48(sp) + c0020ade: ec02 sd zero,24(sp) js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14239 goto redo; - c0020910: 4401 li s0,0 - c0020912: e83e sd a5,16(sp) - c0020914: b591 j c0020758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14260 + c0020ae0: 4401 li s0,0 + c0020ae2: e83e sd a5,16(sp) + c0020ae4: b591 j c0020928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14268 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - c0020916: 7582 ld a1,32(sp) - c0020918: 8626 mv a2,s1 - c002091a: 4689 li a3,2 - c002091c: 8552 mv a0,s4 - c002091e: a28f90ef jal ra,c0019b46 - c0020922: f02a sd a0,32(sp) - c0020924: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14261 + c0020ae6: 7582 ld a1,32(sp) + c0020ae8: 8626 mv a2,s1 + c0020aea: 4689 li a3,2 + c0020aec: 8552 mv a0,s4 + c0020aee: a28f90ef jal ra,c0019d16 + c0020af2: f02a sd a0,32(sp) + c0020af4: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14269 if (JS_IsException(op2)) { - c0020926: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14260 + c0020af6: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14268 op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - c002092a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14261 + c0020afa: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14269 if (JS_IsException(op2)) { - c002092c: e32796e3 bne a5,s2,c0020758 - c0020930: b7e1 j c00208f8 + c0020afc: e32796e3 bne a5,s2,c0020928 + c0020b00: b7e1 j c0020ac8 JS_IsHTMLDDA(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10033 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0020932: 56fd li a3,-1 - c0020934: 00da9c63 bne s5,a3,c002094c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10028 + c0020b02: 56fd li a3,-1 + c0020b04: 00da9c63 bne s5,a3,c0020b1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10036 return p->is_HTMLDDA; - c0020938: 66c2 ld a3,16(sp) - c002093a: 6294 ld a3,0(a3) - c002093c: 92bd srli a3,a3,0x2f + c0020b08: 66c2 ld a3,16(sp) + c0020b0a: 6294 ld a3,0(a3) + c0020b0c: 92bd srli a3,a3,0x2f js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14276 if ((JS_IsHTMLDDA(ctx, op1) && - c002093e: 8a85 andi a3,a3,1 - c0020940: c691 beqz a3,c002094c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14268 (discriminator 1) - c0020942: ffec869b addiw a3,s9,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14272 (discriminator 1) + c0020b0e: 8a85 andi a3,a3,1 + c0020b10: c691 beqz a3,c0020b1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14276 (discriminator 1) + c0020b12: ffec869b addiw a3,s9,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14280 (discriminator 1) res = TRUE; - c0020946: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14268 (discriminator 1) + c0020b16: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14276 (discriminator 1) if ((JS_IsHTMLDDA(ctx, op1) && - c0020948: 00d97f63 bgeu s2,a3,c0020966 + c0020b18: 00d97f63 bgeu s2,a3,c0020b36 JS_IsHTMLDDA(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10033 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c002094c: 56fd li a3,-1 + c0020b1c: 56fd li a3,-1 js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14282 res = FALSE; - c002094e: 4901 li s2,0 + c0020b1e: 4901 li s2,0 JS_IsHTMLDDA(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10033 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0020950: 00dc9b63 bne s9,a3,c0020966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10028 + c0020b20: 00dc9b63 bne s9,a3,c0020b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10036 return p->is_HTMLDDA; - c0020954: 7702 ld a4,32(sp) - c0020956: 6318 ld a4,0(a4) - c0020958: 933d srli a4,a4,0x2f + c0020b24: 7702 ld a4,32(sp) + c0020b26: 6318 ld a4,0(a4) + c0020b28: 933d srli a4,a4,0x2f js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14269 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14277 (tag2 == JS_TAG_NULL || tag2 == JS_TAG_UNDEFINED)) || - c002095a: 8b05 andi a4,a4,1 - c002095c: c709 beqz a4,c0020966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14270 + c0020b2a: 8b05 andi a4,a4,1 + c0020b2c: c709 beqz a4,c0020b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14278 (JS_IsHTMLDDA(ctx, op2) && - c002095e: ffea879b addiw a5,s5,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14272 + c0020b2e: ffea879b addiw a5,s5,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14280 res = TRUE; - c0020962: 0027b913 sltiu s2,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14276 + c0020b32: 0027b913 sltiu s2,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14284 JS_FreeValue(ctx, op1); - c0020966: 65c2 ld a1,16(sp) - c0020968: 8622 mv a2,s0 - c002096a: 8552 mv a0,s4 - c002096c: 9cce70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14277 + c0020b36: 65c2 ld a1,16(sp) + c0020b38: 8622 mv a2,s0 + c0020b3a: 8552 mv a0,s4 + c0020b3c: 8eae70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14285 JS_FreeValue(ctx, op2); - c0020970: 7582 ld a1,32(sp) - c0020972: 8626 mv a2,s1 - c0020974: 8552 mv a0,s4 - c0020976: 9c2e70ef jal ra,c0007b38 - c002097a: b531 j c0020786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14141 + c0020b40: 7582 ld a1,32(sp) + c0020b42: 8626 mv a2,s1 + c0020b44: 8552 mv a0,s4 + c0020b46: 8e0e70ef jal ra,c0007c26 + c0020b4a: b531 j c0020956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14149 (tag2 == JS_TAG_INT || tag2 == JS_TAG_FLOAT64)) || - c002097c: 479d li a5,7 - c002097e: e6fc94e3 bne s9,a5,c00207e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14148 + c0020b4c: 479d li a5,7 + c0020b4e: e6fc94e3 bne s9,a5,c00209b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14156 d1 = JS_VALUE_GET_INT(op1); - c0020982: 47c2 lw a5,16(sp) - c0020984: d20787d3 fcvt.d.w fa5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14150 + c0020b52: 47c2 lw a5,16(sp) + c0020b54: d20787d3 fcvt.d.w fa5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14158 if (tag2 == JS_TAG_FLOAT64) { - c0020988: b5b9 j c00207d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 + c0020b58: b5b9 j c00209a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 } else if ((tag1 == JS_TAG_STRING && tag_is_number(tag2)) || - c002098a: ef8c8fe3 beq s9,s8,c0020888 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14232 + c0020b5a: ef8c8fe3 beq s9,s8,c0020a58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14240 } else if (tag2 == JS_TAG_BOOL) { - c002098e: 016c9f63 bne s9,s6,c00209ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14233 + c0020b5e: 016c9f63 bne s9,s6,c0020b7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14241 op2 = JS_NewInt32(ctx, JS_VALUE_GET_INT(op2)); - c0020992: 5782 lw a5,32(sp) + c0020b62: 5782 lw a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0020994: c282 sw zero,68(sp) - c0020996: e482 sd zero,72(sp) - c0020998: c0be sw a5,64(sp) - c002099a: 6786 ld a5,64(sp) - c002099c: f402 sd zero,40(sp) + c0020b64: c282 sw zero,68(sp) + c0020b66: e482 sd zero,72(sp) + c0020b68: c0be sw a5,64(sp) + c0020b6a: 6786 ld a5,64(sp) + c0020b6c: f402 sd zero,40(sp) js_eq_slow(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14242 goto redo; - c002099e: 4481 li s1,0 - c00209a0: f03e sd a5,32(sp) - c00209a2: bb5d j c0020758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14196 + c0020b6e: 4481 li s1,0 + c0020b70: f03e sd a5,32(sp) + c0020b72: bb5d j c0020928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14204 } else if ((tag1 == JS_TAG_STRING && tag_is_number(tag2)) || - c00209a4: eb8a85e3 beq s5,s8,c002084e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14229 + c0020b74: eb8a85e3 beq s5,s8,c0020a1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14237 } else if (tag1 == JS_TAG_BOOL) { - c00209a8: f56a8ee3 beq s5,s6,c0020904 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14235 + c0020b78: f56a8ee3 beq s5,s6,c0020ad4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14243 } else if ((tag1 == JS_TAG_OBJECT && - c00209ac: 01ba9a63 bne s5,s11,c00209c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14236 (discriminator 1) + c0020b7c: 01ba9a63 bne s5,s11,c0020b90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14244 (discriminator 1) (tag_is_number(tag2) || tag2 == JS_TAG_STRING || tag2 == JS_TAG_SYMBOL)) || - c00209b0: 8566 mv a0,s9 - c00209b2: f41e40ef jal ra,c00058f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14235 (discriminator 1) + c0020b80: 8566 mv a0,s9 + c0020b82: e5fe40ef jal ra,c00059e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14243 (discriminator 1) } else if ((tag1 == JS_TAG_OBJECT && - c00209b6: ed09 bnez a0,c00209d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14236 (discriminator 1) + c0020b86: ed09 bnez a0,c0020ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14244 (discriminator 1) (tag_is_number(tag2) || tag2 == JS_TAG_STRING || tag2 == JS_TAG_SYMBOL)) || - c00209b8: 008c869b addiw a3,s9,8 - c00209bc: 00db7a63 bgeu s6,a3,c00209d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14236 (discriminator 2) - c00209c0: f7bc99e3 bne s9,s11,c0020932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14237 + c0020b88: 008c869b addiw a3,s9,8 + c0020b8c: 00db7a63 bgeu s6,a3,c0020ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14244 (discriminator 2) + c0020b90: f7bc99e3 bne s9,s11,c0020b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14245 (tag2 == JS_TAG_OBJECT && - c00209c4: 000b9663 bnez s7,c00209d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14238 (discriminator 1) + c0020b94: 000b9663 bnez s7,c0020ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14246 (discriminator 1) (tag_is_number(tag1) || tag1 == JS_TAG_STRING || tag1 == JS_TAG_SYMBOL))) { - c00209c8: 008a869b addiw a3,s5,8 - c00209cc: f6db63e3 bltu s6,a3,c0020932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14255 + c0020b98: 008a869b addiw a3,s5,8 + c0020b9c: f6db63e3 bltu s6,a3,c0020b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14263 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c00209d0: 65c2 ld a1,16(sp) - c00209d2: 8622 mv a2,s0 - c00209d4: 4689 li a3,2 - c00209d6: 8552 mv a0,s4 - c00209d8: 96ef90ef jal ra,c0019b46 - c00209dc: e82a sd a0,16(sp) - c00209de: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14256 + c0020ba0: 65c2 ld a1,16(sp) + c0020ba2: 8622 mv a2,s0 + c0020ba4: 4689 li a3,2 + c0020ba6: 8552 mv a0,s4 + c0020ba8: 96ef90ef jal ra,c0019d16 + c0020bac: e82a sd a0,16(sp) + c0020bae: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14264 if (JS_IsException(op1)) { - c00209e0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14255 + c0020bb0: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14263 op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - c00209e4: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14256 + c0020bb4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14264 if (JS_IsException(op1)) { - c00209e6: f32798e3 bne a5,s2,c0020916 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14257 + c0020bb6: f32798e3 bne a5,s2,c0020ae6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14265 JS_FreeValue(ctx, op2); - c00209ea: 7582 ld a1,32(sp) - c00209ec: 8626 mv a2,s1 - c00209ee: b739 j c00208fc + c0020bba: 7582 ld a1,32(sp) + c0020bbc: 8626 mv a2,s1 + c0020bbe: b739 j c0020acc -00000000c00209f0 : +00000000c0020bc0 : js_atom_concat_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3390 { - c00209f0: 711d addi sp,sp,-96 - c00209f2: e8a2 sd s0,80(sp) - c00209f4: f852 sd s4,48(sp) - c00209f6: ec86 sd ra,88(sp) - c00209f8: e4a6 sd s1,72(sp) - c00209fa: e0ca sd s2,64(sp) - c00209fc: fc4e sd s3,56(sp) - c00209fe: 842a mv s0,a0 - c0020a00: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3389 + c0020bc0: 711d addi sp,sp,-96 + c0020bc2: e8a2 sd s0,80(sp) + c0020bc4: f852 sd s4,48(sp) + c0020bc6: ec86 sd ra,88(sp) + c0020bc8: e4a6 sd s1,72(sp) + c0020bca: e0ca sd s2,64(sp) + c0020bcc: fc4e sd s3,56(sp) + c0020bce: 842a mv s0,a0 + c0020bd0: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3397 str = JS_AtomToString(ctx, name); - c0020a02: 93af90ef jal ra,c0019b3c - c0020a06: e82a sd a0,16(sp) - c0020a08: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3390 + c0020bd2: 93af90ef jal ra,c0019d0c + c0020bd6: e82a sd a0,16(sp) + c0020bd8: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3398 if (JS_IsException(str)) - c0020a0a: 0005871b sext.w a4,a1 - c0020a0e: 4799 li a5,6 - c0020a10: 08f70e63 beq a4,a5,c0020aac - c0020a14: 862a mv a2,a0 - c0020a16: 86ae mv a3,a1 + c0020bda: 0005871b sext.w a4,a1 + c0020bde: 4799 li a5,6 + c0020be0: 08f70e63 beq a4,a5,c0020c7c + c0020be4: 862a mv a2,a0 + c0020be6: 86ae mv a3,a1 JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c0020a18: 4701 li a4,0 - c0020a1a: 002c addi a1,sp,8 - c0020a1c: 8522 mv a0,s0 - c0020a1e: c8afb0ef jal ra,c001bea8 - c0020a22: 892a mv s2,a0 + c0020be8: 4701 li a4,0 + c0020bea: 002c addi a1,sp,8 + c0020bec: 8522 mv a0,s0 + c0020bee: c8afb0ef jal ra,c001c078 + c0020bf2: 892a mv s2,a0 js_atom_concat_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3401 if (!cstr) - c0020a24: c93d beqz a0,c0020a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3395 + c0020bf4: c93d beqz a0,c0020c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3403 len1 = strlen(str1); - c0020a26: 8552 mv a0,s4 - c0020a28: 789350ef jal ra,c00569b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3396 + c0020bf6: 8552 mv a0,s4 + c0020bf8: 789350ef jal ra,c0056b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3404 cstr2 = js_malloc(ctx, len + len1 + 1); - c0020a2c: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3395 + c0020bfc: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3403 len1 = strlen(str1); - c0020a2e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3396 + c0020bfe: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3404 cstr2 = js_malloc(ctx, len + len1 + 1); - c0020a30: 0585 addi a1,a1,1 - c0020a32: 95aa add a1,a1,a0 - c0020a34: 8522 mv a0,s0 - c0020a36: a16f40ef jal ra,c0014c4c - c0020a3a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3397 + c0020c00: 0585 addi a1,a1,1 + c0020c02: 95aa add a1,a1,a0 + c0020c04: 8522 mv a0,s0 + c0020c06: 934f40ef jal ra,c0014d3a + c0020c0a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3405 if (!cstr2) - c0020a3c: cd39 beqz a0,c0020a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3399 + c0020c0c: cd39 beqz a0,c0020c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3407 memcpy(cstr2, cstr, len); - c0020a3e: 6622 ld a2,8(sp) - c0020a40: 85ca mv a1,s2 - c0020a42: 799350ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3400 + c0020c0e: 6622 ld a2,8(sp) + c0020c10: 85ca mv a1,s2 + c0020c12: 799350ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3408 memcpy(cstr2 + len, str1, len1); - c0020a46: 6522 ld a0,8(sp) - c0020a48: 864e mv a2,s3 - c0020a4a: 85d2 mv a1,s4 - c0020a4c: 9526 add a0,a0,s1 - c0020a4e: 78d350ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3401 + c0020c16: 6522 ld a0,8(sp) + c0020c18: 864e mv a2,s3 + c0020c1a: 85d2 mv a1,s4 + c0020c1c: 9526 add a0,a0,s1 + c0020c1e: 78d350ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3409 cstr2[len + len1] = '\0'; - c0020a52: 6722 ld a4,8(sp) - c0020a54: 013487b3 add a5,s1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3402 + c0020c22: 6722 ld a4,8(sp) + c0020c24: 013487b3 add a5,s1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3410 atom = JS_NewAtomLen(ctx, cstr2, len + len1); - c0020a58: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3401 + c0020c28: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3409 cstr2[len + len1] = '\0'; - c0020a5a: 97ba add a5,a5,a4 - c0020a5c: 00078023 sb zero,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3402 + c0020c2a: 97ba add a5,a5,a4 + c0020c2c: 00078023 sb zero,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3410 atom = JS_NewAtomLen(ctx, cstr2, len + len1); - c0020a60: 6622 ld a2,8(sp) - c0020a62: 8522 mv a0,s0 - c0020a64: 964e add a2,a2,s3 - c0020a66: 989f80ef jal ra,c00193ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3403 + c0020c30: 6622 ld a2,8(sp) + c0020c32: 8522 mv a0,s0 + c0020c34: 964e add a2,a2,s3 + c0020c36: 989f80ef jal ra,c00195be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3411 js_free(ctx, cstr2); - c0020a6a: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3402 + c0020c3a: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3410 atom = JS_NewAtomLen(ctx, cstr2, len + len1); - c0020a6c: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3403 + c0020c3c: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3411 js_free(ctx, cstr2); - c0020a70: 8522 mv a0,s0 - c0020a72: bc8e60ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3404 + c0020c40: 8522 mv a0,s0 + c0020c42: ae6e60ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3412 JS_FreeCString(ctx, cstr); - c0020a76: 85ca mv a1,s2 - c0020a78: 8522 mv a0,s0 - c0020a7a: c06e80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3405 + c0020c46: 85ca mv a1,s2 + c0020c48: 8522 mv a0,s0 + c0020c4a: b24e80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3413 JS_FreeValue(ctx, str); - c0020a7e: 65c2 ld a1,16(sp) - c0020a80: 6662 ld a2,24(sp) - c0020a82: 8522 mv a0,s0 - c0020a84: 8b4e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3411 -} - c0020a88: 60e6 ld ra,88(sp) - c0020a8a: 6446 ld s0,80(sp) - c0020a8c: 64a6 ld s1,72(sp) - c0020a8e: 6906 ld s2,64(sp) - c0020a90: 7a42 ld s4,48(sp) - c0020a92: 854e mv a0,s3 - c0020a94: 79e2 ld s3,56(sp) - c0020a96: 6125 addi sp,sp,96 - c0020a98: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3408 + c0020c4e: 65c2 ld a1,16(sp) + c0020c50: 6662 ld a2,24(sp) + c0020c52: 8522 mv a0,s0 + c0020c54: fd3e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3419 +} + c0020c58: 60e6 ld ra,88(sp) + c0020c5a: 6446 ld s0,80(sp) + c0020c5c: 64a6 ld s1,72(sp) + c0020c5e: 6906 ld s2,64(sp) + c0020c60: 7a42 ld s4,48(sp) + c0020c62: 854e mv a0,s3 + c0020c64: 79e2 ld s3,56(sp) + c0020c66: 6125 addi sp,sp,96 + c0020c68: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3416 JS_FreeCString(ctx, cstr); - c0020a9a: 85ca mv a1,s2 - c0020a9c: 8522 mv a0,s0 - c0020a9e: be2e80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3409 + c0020c6a: 85ca mv a1,s2 + c0020c6c: 8522 mv a0,s0 + c0020c6e: b00e80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3417 JS_FreeValue(ctx, str); - c0020aa2: 65c2 ld a1,16(sp) - c0020aa4: 6662 ld a2,24(sp) - c0020aa6: 8522 mv a0,s0 - c0020aa8: 890e70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3391 + c0020c72: 65c2 ld a1,16(sp) + c0020c74: 6662 ld a2,24(sp) + c0020c76: 8522 mv a0,s0 + c0020c78: fafe60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3399 return JS_ATOM_NULL; - c0020aac: 4981 li s3,0 - c0020aae: bfe9 j c0020a88 + c0020c7c: 4981 li s3,0 + c0020c7e: bfe9 j c0020c58 -00000000c0020ab0 : +00000000c0020c80 : js_string_normalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42652 -{ - c0020ab0: 7175 addi sp,sp,-144 - c0020ab2: e122 sd s0,128(sp) - c0020ab4: fca6 sd s1,120(sp) - c0020ab6: f8ca sd s2,112(sp) - c0020ab8: e506 sd ra,136(sp) - c0020aba: 893a mv s2,a4 - c0020abc: f4ce sd s3,104(sp) - c0020abe: 842a mv s0,a0 - c0020ac0: e02e sd a1,0(sp) - c0020ac2: e432 sd a2,8(sp) - c0020ac4: 84b6 mv s1,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42660 +{ + c0020c80: 7175 addi sp,sp,-144 + c0020c82: e122 sd s0,128(sp) + c0020c84: fca6 sd s1,120(sp) + c0020c86: f8ca sd s2,112(sp) + c0020c88: e506 sd ra,136(sp) + c0020c8a: 893a mv s2,a4 + c0020c8c: f4ce sd s3,104(sp) + c0020c8e: 842a mv s0,a0 + c0020c90: e02e sd a1,0(sp) + c0020c92: e432 sd a2,8(sp) + c0020c94: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42668 val = JS_ToStringCheckObject(ctx, this_val); - c0020ac6: be6fa0ef jal ra,c001aeac - c0020aca: f02a sd a0,32(sp) - c0020acc: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42661 + c0020c96: be6fa0ef jal ra,c001b07c + c0020c9a: f02a sd a0,32(sp) + c0020c9c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42669 if (JS_IsException(val)) - c0020ace: 0005871b sext.w a4,a1 - c0020ad2: 4799 li a5,6 - c0020ad4: 00f71d63 bne a4,a5,c0020aee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42662 + c0020c9e: 0005871b sext.w a4,a1 + c0020ca2: 4799 li a5,6 + c0020ca4: 00f71d63 bne a4,a5,c0020cbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42670 return val; - c0020ad8: e0aa sd a0,64(sp) - c0020ada: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42701 (discriminator 1) -} - c0020adc: 60aa ld ra,136(sp) - c0020ade: 640a ld s0,128(sp) - c0020ae0: 6506 ld a0,64(sp) - c0020ae2: 65a6 ld a1,72(sp) - c0020ae4: 74e6 ld s1,120(sp) - c0020ae6: 7946 ld s2,112(sp) - c0020ae8: 79a6 ld s3,104(sp) - c0020aea: 6149 addi sp,sp,144 - c0020aec: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42664 + c0020ca8: e0aa sd a0,64(sp) + c0020caa: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42709 (discriminator 1) +} + c0020cac: 60aa ld ra,136(sp) + c0020cae: 640a ld s0,128(sp) + c0020cb0: 6506 ld a0,64(sp) + c0020cb2: 65a6 ld a1,72(sp) + c0020cb4: 74e6 ld s1,120(sp) + c0020cb6: 7946 ld s2,112(sp) + c0020cb8: 79a6 ld s3,104(sp) + c0020cba: 6149 addi sp,sp,144 + c0020cbc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42672 if (argc == 0 || JS_IsUndefined(argv[0])) { - c0020aee: 0e048b63 beqz s1,c0020be4 + c0020cbe: 0e048b63 beqz s1,c0020db4 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0020af2: 00893683 ld a3,8(s2) + c0020cc2: 00893683 ld a3,8(s2) js_string_normalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42664 (discriminator 1) - c0020af6: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42665 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42672 (discriminator 1) + c0020cc6: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42673 (discriminator 1) n_type = UNICODE_NFC; - c0020af8: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42664 (discriminator 1) + c0020cc8: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42672 (discriminator 1) if (argc == 0 || JS_IsUndefined(argv[0])) { - c0020afa: 0006871b sext.w a4,a3 - c0020afe: 08f70f63 beq a4,a5,c0020b9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42667 + c0020cca: 0006871b sext.w a4,a3 + c0020cce: 08f70f63 beq a4,a5,c0020d6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42675 form = JS_ToCStringLen(ctx, &form_len, argv[0]); - c0020b02: 00093603 ld a2,0(s2) + c0020cd2: 00093603 ld a2,0(s2) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c0020b06: 080c addi a1,sp,16 - c0020b08: 4701 li a4,0 - c0020b0a: 8522 mv a0,s0 - c0020b0c: e0b2 sd a2,64(sp) - c0020b0e: e4b6 sd a3,72(sp) - c0020b10: b98fb0ef jal ra,c001bea8 - c0020b14: 85aa mv a1,a0 + c0020cd6: 080c addi a1,sp,16 + c0020cd8: 4701 li a4,0 + c0020cda: 8522 mv a0,s0 + c0020cdc: e0b2 sd a2,64(sp) + c0020cde: e4b6 sd a3,72(sp) + c0020ce0: b98fb0ef jal ra,c001c078 + c0020ce4: 85aa mv a1,a0 js_string_normalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42676 if (!form) - c0020b16: cd31 beqz a0,c0020b72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42671 + c0020ce6: cd31 beqz a0,c0020d42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42679 if (p[0] != 'N' || p[1] != 'F') - c0020b18: 00054703 lbu a4,0(a0) - c0020b1c: 04e00793 li a5,78 - c0020b20: 02f71f63 bne a4,a5,c0020b5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42671 (discriminator 1) - c0020b24: 00154703 lbu a4,1(a0) - c0020b28: 04600793 li a5,70 - c0020b2c: 02f71963 bne a4,a5,c0020b5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42675 + c0020ce8: 00054703 lbu a4,0(a0) + c0020cec: 04e00793 li a5,78 + c0020cf0: 02f71f63 bne a4,a5,c0020d2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42679 (discriminator 1) + c0020cf4: 00154703 lbu a4,1(a0) + c0020cf8: 04600793 li a5,70 + c0020cfc: 02f71963 bne a4,a5,c0020d2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42683 if (*p == 'K') { - c0020b30: 00254703 lbu a4,2(a0) - c0020b34: 04b00793 li a5,75 - c0020b38: 04f70663 beq a4,a5,c0020b84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42673 + c0020d00: 00254703 lbu a4,2(a0) + c0020d04: 04b00793 li a5,75 + c0020d08: 04f70663 beq a4,a5,c0020d54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42681 p += 2; - c0020b3c: 00250793 addi a5,a0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42674 + c0020d0c: 00250793 addi a5,a0,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42682 is_compat = FALSE; - c0020b40: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42679 + c0020d10: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42687 if (*p == 'C' || *p == 'D') { - c0020b42: 0007c603 lbu a2,0(a5) - c0020b46: 4505 li a0,1 - c0020b48: fbd6069b addiw a3,a2,-67 - c0020b4c: 0ff6f693 zext.b a3,a3 - c0020b50: 00d56763 bltu a0,a3,c0020b5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42681 + c0020d12: 0007c603 lbu a2,0(a5) + c0020d16: 4505 li a0,1 + c0020d18: fbd6069b addiw a3,a2,-67 + c0020d1c: 0ff6f693 zext.b a3,a3 + c0020d20: 00d56763 bltu a0,a3,c0020d2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42689 if ((p + 1 - form) != form_len) - c0020b54: 66c2 ld a3,16(sp) - c0020b56: 0785 addi a5,a5,1 - c0020b58: 8f8d sub a5,a5,a1 - c0020b5a: 02d78963 beq a5,a3,c0020b8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42685 + c0020d24: 66c2 ld a3,16(sp) + c0020d26: 0785 addi a5,a5,1 + c0020d28: 8f8d sub a5,a5,a1 + c0020d2a: 02d78963 beq a5,a3,c0020d5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42693 JS_FreeCString(ctx, form); - c0020b5e: 8522 mv a0,s0 - c0020b60: b20e80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42686 + c0020d2e: 8522 mv a0,s0 + c0020d30: a3ee80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42694 JS_ThrowRangeError(ctx, "bad normalization form"); - c0020b64: 0003e597 auipc a1,0x3e - c0020b68: bbc58593 addi a1,a1,-1092 # c005e720 - c0020b6c: 8522 mv a0,s0 - c0020b6e: dedf30ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42688 + c0020d34: 0003e597 auipc a1,0x3e + c0020d38: c4c58593 addi a1,a1,-948 # c005e980 + c0020d3c: 8522 mv a0,s0 + c0020d3e: d0bf30ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42696 JS_FreeValue(ctx, val); - c0020b72: 7582 ld a1,32(sp) - c0020b74: 7622 ld a2,40(sp) - c0020b76: 8522 mv a0,s0 - c0020b78: fc1e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42697 + c0020d42: 7582 ld a1,32(sp) + c0020d44: 7622 ld a2,40(sp) + c0020d46: 8522 mv a0,s0 + c0020d48: edfe60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42705 return JS_EXCEPTION; - c0020b7c: e082 sd zero,64(sp) - c0020b7e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42700 + c0020d4c: e082 sd zero,64(sp) + c0020d4e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42708 return val; - c0020b80: e4be sd a5,72(sp) - c0020b82: bfa9 j c0020adc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42677 + c0020d50: e4be sd a5,72(sp) + c0020d52: bfa9 j c0020cac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42685 p++; - c0020b84: 00350793 addi a5,a0,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42676 + c0020d54: 00350793 addi a5,a0,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42684 is_compat = TRUE; - c0020b88: 4705 li a4,1 - c0020b8a: bf65 j c0020b42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42680 + c0020d58: 4705 li a4,1 + c0020d5a: bf65 j c0020d12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42688 n_type = UNICODE_NFC + is_compat * 2 + (*p - 'C'); - c0020b8c: 0017149b slliw s1,a4,0x1 - c0020b90: fbd4849b addiw s1,s1,-67 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42691 + c0020d5c: 0017149b slliw s1,a4,0x1 + c0020d60: fbd4849b addiw s1,s1,-67 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42699 JS_FreeCString(ctx, form); - c0020b94: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42680 + c0020d64: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42688 n_type = UNICODE_NFC + is_compat * 2 + (*p - 'C'); - c0020b96: 9cb1 addw s1,s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42691 + c0020d66: 9cb1 addw s1,s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42699 JS_FreeCString(ctx, form); - c0020b98: ae8e80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42694 + c0020d68: a06e80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42702 out_len = js_string_normalize1(ctx, &out_buf, val, n_type); - c0020b9c: 7602 ld a2,32(sp) - c0020b9e: 76a2 ld a3,40(sp) - c0020ba0: 8726 mv a4,s1 - c0020ba2: 082c addi a1,sp,24 - c0020ba4: 8522 mv a0,s0 - c0020ba6: a63fa0ef jal ra,c001b608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42695 + c0020d6c: 7602 ld a2,32(sp) + c0020d6e: 76a2 ld a3,40(sp) + c0020d70: 8726 mv a4,s1 + c0020d72: 082c addi a1,sp,24 + c0020d74: 8522 mv a0,s0 + c0020d76: a63fa0ef jal ra,c001b7d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42703 JS_FreeValue(ctx, val); - c0020baa: 7582 ld a1,32(sp) - c0020bac: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42694 + c0020d7a: 7582 ld a1,32(sp) + c0020d7c: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42702 out_len = js_string_normalize1(ctx, &out_buf, val, n_type); - c0020bae: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42695 + c0020d7e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42703 JS_FreeValue(ctx, val); - c0020bb0: 8522 mv a0,s0 - c0020bb2: f87e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42696 + c0020d80: 8522 mv a0,s0 + c0020d82: ea5e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42704 if (out_len < 0) - c0020bb6: fc04c3e3 bltz s1,c0020b7c + c0020d86: fc04c3e3 bltz s1,c0020d4c JS_NewUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42619 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42627 if (string_buffer_init(ctx, b, len)) - c0020bba: 8626 mv a2,s1 - c0020bbc: 008c addi a1,sp,64 - c0020bbe: 8522 mv a0,s0 + c0020d8a: 8626 mv a2,s1 + c0020d8c: 008c addi a1,sp,64 + c0020d8e: 8522 mv a0,s0 js_string_normalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42698 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42706 val = JS_NewUTF32String(ctx, out_buf, out_len); - c0020bc0: 69e2 ld s3,24(sp) + c0020d90: 69e2 ld s3,24(sp) JS_NewUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42619 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42627 if (string_buffer_init(ctx, b, len)) - c0020bc2: 80cf80ef jal ra,c0018bce - c0020bc6: 4901 li s2,0 - c0020bc8: cd0d beqz a0,c0020c02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42628 + c0020d92: 80cf80ef jal ra,c0018d9e + c0020d96: 4901 li s2,0 + c0020d98: cd0d beqz a0,c0020dd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42636 return JS_EXCEPTION; - c0020bca: f802 sd zero,48(sp) - c0020bcc: 4599 li a1,6 - c0020bce: 77c2 ld a5,48(sp) - c0020bd0: f42e sd a1,40(sp) + c0020d9a: f802 sd zero,48(sp) + c0020d9c: 4599 li a1,6 + c0020d9e: 77c2 ld a5,48(sp) + c0020da0: f42e sd a1,40(sp) js_string_normalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42707 js_free(ctx, out_buf); - c0020bd2: 65e2 ld a1,24(sp) - c0020bd4: 8522 mv a0,s0 - c0020bd6: f03e sd a5,32(sp) - c0020bd8: a62e60ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42700 + c0020da2: 65e2 ld a1,24(sp) + c0020da4: 8522 mv a0,s0 + c0020da6: f03e sd a5,32(sp) + c0020da8: 980e60ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42708 return val; - c0020bdc: 7782 ld a5,32(sp) - c0020bde: e0be sd a5,64(sp) - c0020be0: 77a2 ld a5,40(sp) - c0020be2: bf79 j c0020b80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42665 + c0020dac: 7782 ld a5,32(sp) + c0020dae: e0be sd a5,64(sp) + c0020db0: 77a2 ld a5,40(sp) + c0020db2: bf79 j c0020d50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42673 n_type = UNICODE_NFC; - c0020be4: 4481 li s1,0 - c0020be6: bf5d j c0020b9c + c0020db4: 4481 li s1,0 + c0020db6: bf5d j c0020d6c JS_NewUTF32String(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42622 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42630 if (string_buffer_putc(b, buf[i])) - c0020be8: 00291793 slli a5,s2,0x2 - c0020bec: 97ce add a5,a5,s3 - c0020bee: 438c lw a1,0(a5) - c0020bf0: 0088 addi a0,sp,64 - c0020bf2: 0905 addi s2,s2,1 - c0020bf4: e02f80ef jal ra,c00191f6 - c0020bf8: c509 beqz a0,c0020c02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42627 + c0020db8: 00291793 slli a5,s2,0x2 + c0020dbc: 97ce add a5,a5,s3 + c0020dbe: 438c lw a1,0(a5) + c0020dc0: 0088 addi a0,sp,64 + c0020dc2: 0905 addi s2,s2,1 + c0020dc4: e02f80ef jal ra,c00193c6 + c0020dc8: c509 beqz a0,c0020dd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42635 string_buffer_free(b); - c0020bfa: 0088 addi a0,sp,64 - c0020bfc: a6ae60ef jal ra,c0006e66 - c0020c00: b7e9 j c0020bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42621 + c0020dca: 0088 addi a0,sp,64 + c0020dcc: 988e60ef jal ra,c0006f54 + c0020dd0: b7e9 j c0020d9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42629 for(i = 0; i < len; i++) { - c0020c02: 0009079b sext.w a5,s2 - c0020c06: fe97c1e3 blt a5,s1,c0020be8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42625 + c0020dd2: 0009079b sext.w a5,s2 + c0020dd6: fe97c1e3 blt a5,s1,c0020db8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42633 return string_buffer_end(b); - c0020c0a: 0088 addi a0,sp,64 - c0020c0c: 8fef90ef jal ra,c0019d0a - c0020c10: f82a sd a0,48(sp) - c0020c12: bf75 j c0020bce + c0020dda: 0088 addi a0,sp,64 + c0020ddc: 8fef90ef jal ra,c0019eda + c0020de0: f82a sd a0,48(sp) + c0020de2: bf75 j c0020d9e -00000000c0020c14 : +00000000c0020de4 : JS_EvalObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34497 { - c0020c14: 7119 addi sp,sp,-128 - c0020c16: f0ca sd s2,96(sp) - c0020c18: f02e sd a1,32(sp) - c0020c1a: 893e mv s2,a5 + c0020de4: 7119 addi sp,sp,-128 + c0020de6: f0ca sd s2,96(sp) + c0020de8: f02e sd a1,32(sp) + c0020dea: 893e mv s2,a5 JS_IsString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:620 return JS_VALUE_GET_TAG(v) == JS_TAG_STRING; - c0020c1c: 85ba mv a1,a4 + c0020dec: 85ba mv a1,a4 JS_EvalObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34489 - c0020c1e: fc86 sd ra,120(sp) - c0020c20: f8a2 sd s0,112(sp) - c0020c22: f4a6 sd s1,104(sp) - c0020c24: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34497 + c0020dee: fc86 sd ra,120(sp) + c0020df0: f8a2 sd s0,112(sp) + c0020df2: f4a6 sd s1,104(sp) + c0020df4: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34502 if (!JS_IsString(val)) - c0020c26: 2701 sext.w a4,a4 - c0020c28: 57e5 li a5,-7 - c0020c2a: 00f70a63 beq a4,a5,c0020c3e + c0020df6: 2701 sext.w a4,a4 + c0020df8: 57e5 li a5,-7 + c0020dfa: 00f70a63 beq a4,a5,c0020e0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34511 +} + c0020dfe: 7446 ld s0,112(sp) + c0020e00: 70e6 ld ra,120(sp) + c0020e02: 74a6 ld s1,104(sp) + c0020e04: 7906 ld s2,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34503 -} - c0020c2e: 7446 ld s0,112(sp) - c0020c30: 70e6 ld ra,120(sp) - c0020c32: 74a6 ld s1,104(sp) - c0020c34: 7906 ld s2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34495 return JS_DupValue(ctx, val); - c0020c36: 8536 mv a0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34503 + c0020e06: 8536 mv a0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34511 } - c0020c38: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34495 + c0020e08: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34503 return JS_DupValue(ctx, val); - c0020c3a: a35e506f j c000666e - c0020c3e: 8636 mv a2,a3 - c0020c40: e8b6 sd a3,80(sp) - c0020c42: ecae sd a1,88(sp) + c0020e0a: 953e506f j c000675c + c0020e0e: 8636 mv a2,a3 + c0020e10: e8b6 sd a3,80(sp) + c0020e12: ecae sd a1,88(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c0020c44: 86ae mv a3,a1 - c0020c46: 4701 li a4,0 - c0020c48: 182c addi a1,sp,56 - c0020c4a: 84aa mv s1,a0 - c0020c4c: e442 sd a6,8(sp) - c0020c4e: a5afb0ef jal ra,c001bea8 + c0020e14: 86ae mv a3,a1 + c0020e16: 4701 li a4,0 + c0020e18: 182c addi a1,sp,56 + c0020e1a: 84aa mv s1,a0 + c0020e1c: e442 sd a6,8(sp) + c0020e1e: a5afb0ef jal ra,c001c078 JS_EvalObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34505 if (!str) - c0020c52: 68a2 ld a7,8(sp) + c0020e22: 68a2 ld a7,8(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c0020c54: 842a mv s0,a0 + c0020e24: 842a mv s0,a0 JS_EvalObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34497 - c0020c56: ed01 bnez a0,c0020c6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34505 + c0020e26: ed01 bnez a0,c0020e3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34506 return JS_EXCEPTION; - c0020c58: e882 sd zero,80(sp) - c0020c5a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34503 + c0020e28: e882 sd zero,80(sp) + c0020e2a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34511 } - c0020c5c: 70e6 ld ra,120(sp) - c0020c5e: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34501 + c0020e2c: 70e6 ld ra,120(sp) + c0020e2e: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34509 return ret; - c0020c60: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34503 -} - c0020c62: 6546 ld a0,80(sp) - c0020c64: 65e6 ld a1,88(sp) - c0020c66: 74a6 ld s1,104(sp) - c0020c68: 7906 ld s2,96(sp) - c0020c6a: 6109 addi sp,sp,128 - c0020c6c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34499 + c0020e30: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34511 +} + c0020e32: 6546 ld a0,80(sp) + c0020e34: 65e6 ld a1,88(sp) + c0020e36: 74a6 ld s1,104(sp) + c0020e38: 7906 ld s2,96(sp) + c0020e3a: 6109 addi sp,sp,128 + c0020e3c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34507 ret = JS_EvalInternal(ctx, this_obj, str, len, "", flags, scope_idx); - c0020c6e: 7762 ld a4,56(sp) - c0020c70: 7622 ld a2,40(sp) - c0020c72: 7582 ld a1,32(sp) - c0020c74: 00038797 auipc a5,0x38 - c0020c78: d4c78793 addi a5,a5,-692 # c00589c0 <__clz_tab+0x6c0> - c0020c7c: 86aa mv a3,a0 - c0020c7e: 884a mv a6,s2 - c0020c80: 8526 mv a0,s1 - c0020c82: b73f20ef jal ra,c00137f4 - c0020c86: e0aa sd a0,64(sp) - c0020c88: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34500 + c0020e3e: 7762 ld a4,56(sp) + c0020e40: 7622 ld a2,40(sp) + c0020e42: 7582 ld a1,32(sp) + c0020e44: 00038797 auipc a5,0x38 + c0020e48: d4c78793 addi a5,a5,-692 # c0058b90 <__clz_tab+0x6c0> + c0020e4c: 86aa mv a3,a0 + c0020e4e: 884a mv a6,s2 + c0020e50: 8526 mv a0,s1 + c0020e52: a91f20ef jal ra,c00138e2 + c0020e56: e0aa sd a0,64(sp) + c0020e58: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34508 JS_FreeCString(ctx, str); - c0020c8a: 8526 mv a0,s1 - c0020c8c: 85a2 mv a1,s0 - c0020c8e: 9f2e80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34501 + c0020e5a: 8526 mv a0,s1 + c0020e5c: 85a2 mv a1,s0 + c0020e5e: 910e80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34509 return ret; - c0020c92: 6786 ld a5,64(sp) - c0020c94: e8be sd a5,80(sp) - c0020c96: 67a6 ld a5,72(sp) - c0020c98: b7d1 j c0020c5c + c0020e62: 6786 ld a5,64(sp) + c0020e64: e8be sd a5,80(sp) + c0020e66: 67a6 ld a5,72(sp) + c0020e68: b7d1 j c0020e2c -00000000c0020c9a : +00000000c0020e6a : js_function_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38318 { - c0020c9a: 7131 addi sp,sp,-192 - c0020c9c: e556 sd s5,136(sp) - c0020c9e: e02e sd a1,0(sp) - c0020ca0: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38316 + c0020e6a: 7131 addi sp,sp,-192 + c0020e6c: e556 sd s5,136(sp) + c0020e6e: e02e sd a1,0(sp) + c0020e70: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38324 string_buffer_init(ctx, b, 0); - c0020ca2: 108c addi a1,sp,96 - c0020ca4: 8ab2 mv s5,a2 - c0020ca6: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38310 -{ - c0020ca8: fd06 sd ra,184(sp) - c0020caa: f922 sd s0,176(sp) - c0020cac: f526 sd s1,168(sp) - c0020cae: f14a sd s2,160(sp) - c0020cb0: ed4e sd s3,152(sp) - c0020cb2: 893a mv s2,a4 - c0020cb4: 89be mv s3,a5 - c0020cb6: e952 sd s4,144(sp) - c0020cb8: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38311 + c0020e72: 108c addi a1,sp,96 + c0020e74: 8ab2 mv s5,a2 + c0020e76: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38318 +{ + c0020e78: fd06 sd ra,184(sp) + c0020e7a: f922 sd s0,176(sp) + c0020e7c: f526 sd s1,168(sp) + c0020e7e: f14a sd s2,160(sp) + c0020e80: ed4e sd s3,152(sp) + c0020e82: 893a mv s2,a4 + c0020e84: 89be mv s3,a5 + c0020e86: e952 sd s4,144(sp) + c0020e88: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38319 JSFunctionKindEnum func_kind = magic; - c0020cba: 00078a1b sext.w s4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38310 + c0020e8a: 00078a1b sext.w s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38318 { - c0020cbe: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38313 + c0020e8e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38321 JSValue s, proto, obj = JS_UNDEFINED; - c0020cc0: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38316 + c0020e90: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38324 string_buffer_init(ctx, b, 0); - c0020cc2: f0df70ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38317 + c0020e92: f0df70ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38325 string_buffer_putc8(b, '('); - c0020cc6: 02800593 li a1,40 - c0020cca: 1088 addi a0,sp,96 - c0020ccc: c1af80ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38319 + c0020e96: 02800593 li a1,40 + c0020e9a: 1088 addi a0,sp,96 + c0020e9c: c1af80ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38327 if (func_kind == JS_FUNC_ASYNC || func_kind == JS_FUNC_ASYNC_GENERATOR) { - c0020cd0: ffea071b addiw a4,s4,-2 - c0020cd4: 4785 li a5,1 - c0020cd6: 00e7e963 bltu a5,a4,c0020ce8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38320 + c0020ea0: ffea071b addiw a4,s4,-2 + c0020ea4: 4785 li a5,1 + c0020ea6: 00e7e963 bltu a5,a4,c0020eb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38328 string_buffer_puts8(b, "async "); - c0020cda: 0003e597 auipc a1,0x3e - c0020cde: a5e58593 addi a1,a1,-1442 # c005e738 - c0020ce2: 1088 addi a0,sp,96 - c0020ce4: b68f80ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38322 + c0020eaa: 0003e597 auipc a1,0x3e + c0020eae: aee58593 addi a1,a1,-1298 # c005e998 + c0020eb2: 1088 addi a0,sp,96 + c0020eb4: b68f80ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38330 string_buffer_puts8(b, "function"); - c0020ce8: 0003f597 auipc a1,0x3f - c0020cec: 2d058593 addi a1,a1,720 # c005ffb8 - c0020cf0: 1088 addi a0,sp,96 - c0020cf2: b5af80ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38324 + c0020eb8: 0003f597 auipc a1,0x3f + c0020ebc: 36058593 addi a1,a1,864 # c0060218 + c0020ec0: 1088 addi a0,sp,96 + c0020ec2: b5af80ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38332 if (func_kind == JS_FUNC_GENERATOR || func_kind == JS_FUNC_ASYNC_GENERATOR) { - c0020cf6: ffd9f993 andi s3,s3,-3 - c0020cfa: 4785 li a5,1 - c0020cfc: 00f99763 bne s3,a5,c0020d0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38325 + c0020ec6: ffd9f993 andi s3,s3,-3 + c0020eca: 4785 li a5,1 + c0020ecc: 00f99763 bne s3,a5,c0020eda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38333 string_buffer_putc8(b, '*'); - c0020d00: 02a00593 li a1,42 - c0020d04: 1088 addi a0,sp,96 - c0020d06: be0f80ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38327 + c0020ed0: 02a00593 li a1,42 + c0020ed4: 1088 addi a0,sp,96 + c0020ed6: be0f80ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38335 string_buffer_puts8(b, " anonymous("); - c0020d0a: 0003e597 auipc a1,0x3e - c0020d0e: a3658593 addi a1,a1,-1482 # c005e740 - c0020d12: 1088 addi a0,sp,96 - c0020d14: b38f80ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38329 + c0020eda: 0003e597 auipc a1,0x3e + c0020ede: ac658593 addi a1,a1,-1338 # c005e9a0 + c0020ee2: 1088 addi a0,sp,96 + c0020ee4: b38f80ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38337 n = argc - 1; - c0020d18: 34fd addiw s1,s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38330 + c0020ee8: 34fd addiw s1,s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38338 for(i = 0; i < n; i++) { - c0020d1a: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38330 (discriminator 1) - c0020d1c: 0009879b sext.w a5,s3 - c0020d20: 0497c063 blt a5,s1,c0020d60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38337 + c0020eea: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38338 (discriminator 1) + c0020eec: 0009879b sext.w a5,s3 + c0020ef0: 0497c063 blt a5,s1,c0020f30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38345 string_buffer_puts8(b, "\n) {\n"); - c0020d24: 0003e597 auipc a1,0x3e - c0020d28: a2c58593 addi a1,a1,-1492 # c005e750 - c0020d2c: 1088 addi a0,sp,96 - c0020d2e: b1ef80ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38338 + c0020ef4: 0003e597 auipc a1,0x3e + c0020ef8: abc58593 addi a1,a1,-1348 # c005e9b0 + c0020efc: 1088 addi a0,sp,96 + c0020efe: b1ef80ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38346 if (n >= 0) { - c0020d32: 0404db63 bgez s1,c0020d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38342 + c0020f02: 0404db63 bgez s1,c0020f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38350 string_buffer_puts8(b, "\n})"); - c0020d36: 0003e597 auipc a1,0x3e - c0020d3a: a2258593 addi a1,a1,-1502 # c005e758 - c0020d3e: 1088 addi a0,sp,96 - c0020d40: b0cf80ef jal ra,c001904c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38343 + c0020f06: 0003e597 auipc a1,0x3e + c0020f0a: ab258593 addi a1,a1,-1358 # c005e9b8 + c0020f0e: 1088 addi a0,sp,96 + c0020f10: b0cf80ef jal ra,c001921c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38351 s = string_buffer_end(b); - c0020d44: 1088 addi a0,sp,96 - c0020d46: fc5f80ef jal ra,c0019d0a - c0020d4a: e82a sd a0,16(sp) - c0020d4c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38344 + c0020f14: 1088 addi a0,sp,96 + c0020f16: fc5f80ef jal ra,c0019eda + c0020f1a: e82a sd a0,16(sp) + c0020f1c: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38352 if (JS_IsException(s)) - c0020d4e: 0005879b sext.w a5,a1 - c0020d52: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38343 + c0020f1e: 0005879b sext.w a5,a1 + c0020f22: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38351 s = string_buffer_end(b); - c0020d54: 86aa mv a3,a0 - c0020d56: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38344 + c0020f24: 86aa mv a3,a0 + c0020f26: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38352 if (JS_IsException(s)) - c0020d58: 05279163 bne a5,s2,c0020d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38313 + c0020f28: 05279163 bne a5,s2,c0020f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38321 JSValue s, proto, obj = JS_UNDEFINED; - c0020d5c: 448d li s1,3 - c0020d5e: aa29 j c0020e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38331 + c0020f2c: 448d li s1,3 + c0020f2e: aa29 j c0021048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38339 if (i != 0) { - c0020d60: c791 beqz a5,c0020d6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38332 + c0020f30: c791 beqz a5,c0020f3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38340 string_buffer_putc8(b, ','); - c0020d62: 02c00593 li a1,44 - c0020d66: 1088 addi a0,sp,96 - c0020d68: b7ef80ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38334 + c0020f32: 02c00593 li a1,44 + c0020f36: 1088 addi a0,sp,96 + c0020f38: b7ef80ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38342 if (string_buffer_concat_value(b, argv[i])) - c0020d6c: 00499793 slli a5,s3,0x4 - c0020d70: 97ca add a5,a5,s2 - c0020d72: 638c ld a1,0(a5) - c0020d74: 6790 ld a2,8(a5) - c0020d76: 1088 addi a0,sp,96 - c0020d78: 0985 addi s3,s3,1 - c0020d7a: 95ffa0ef jal ra,c001b6d8 - c0020d7e: dd59 beqz a0,c0020d1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38372 + c0020f3c: 00499793 slli a5,s3,0x4 + c0020f40: 97ca add a5,a5,s2 + c0020f42: 638c ld a1,0(a5) + c0020f44: 6790 ld a2,8(a5) + c0020f46: 1088 addi a0,sp,96 + c0020f48: 0985 addi s3,s3,1 + c0020f4a: 95ffa0ef jal ra,c001b8a8 + c0020f4e: dd59 beqz a0,c0020eec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38380 string_buffer_free(b); - c0020d80: 1088 addi a0,sp,96 - c0020d82: 8e4e60ef jal ra,c0006e66 - c0020d86: bfd9 j c0020d5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38339 - if (string_buffer_concat_value(b, argv[n])) - c0020d88: 0492 slli s1,s1,0x4 - c0020d8a: 94ca add s1,s1,s2 - c0020d8c: 608c ld a1,0(s1) - c0020d8e: 6490 ld a2,8(s1) - c0020d90: 1088 addi a0,sp,96 - c0020d92: 947fa0ef jal ra,c001b6d8 - c0020d96: d145 beqz a0,c0020d36 - c0020d98: b7e5 j c0020d80 + c0020f50: 1088 addi a0,sp,96 + c0020f52: 802e60ef jal ra,c0006f54 + c0020f56: bfd9 j c0020f2c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38347 + if (string_buffer_concat_value(b, argv[n])) + c0020f58: 0492 slli s1,s1,0x4 + c0020f5a: 94ca add s1,s1,s2 + c0020f5c: 608c ld a1,0(s1) + c0020f5e: 6490 ld a2,8(s1) + c0020f60: 1088 addi a0,sp,96 + c0020f62: 947fa0ef jal ra,c001b8a8 + c0020f66: d145 beqz a0,c0020f06 + c0020f68: b7e5 j c0020f50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38355 obj = JS_EvalObject(ctx, ctx->global_obj, s, JS_EVAL_TYPE_INDIRECT, -1); - c0020d9a: 17043603 ld a2,368(s0) - c0020d9e: 16843583 ld a1,360(s0) - c0020da2: 478d li a5,3 - c0020da4: 587d li a6,-1 - c0020da6: 8522 mv a0,s0 - c0020da8: e6dff0ef jal ra,c0020c14 - c0020dac: 84ae mv s1,a1 - c0020dae: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38348 + c0020f6a: 17043603 ld a2,368(s0) + c0020f6e: 16843583 ld a1,360(s0) + c0020f72: 478d li a5,3 + c0020f74: 587d li a6,-1 + c0020f76: 8522 mv a0,s0 + c0020f78: e6dff0ef jal ra,c0020de4 + c0020f7c: 84ae mv s1,a1 + c0020f7e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38356 JS_FreeValue(ctx, s); - c0020db0: 6662 ld a2,24(sp) - c0020db2: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38347 + c0020f80: 6662 ld a2,24(sp) + c0020f82: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38355 obj = JS_EvalObject(ctx, ctx->global_obj, s, JS_EVAL_TYPE_INDIRECT, -1); - c0020db4: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38348 + c0020f84: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38356 JS_FreeValue(ctx, s); - c0020db6: 8522 mv a0,s0 - c0020db8: d81e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38349 + c0020f86: 8522 mv a0,s0 + c0020f88: c9fe60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38357 if (JS_IsException(obj)) - c0020dbc: 0004879b sext.w a5,s1 - c0020dc0: 0b278c63 beq a5,s2,c0020e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38351 + c0020f8c: 0004879b sext.w a5,s1 + c0020f90: 0b278c63 beq a5,s2,c0021048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38359 if (!JS_IsUndefined(new_target)) { - c0020dc4: 2a81 sext.w s5,s5 - c0020dc6: 478d li a5,3 - c0020dc8: 02fa9163 bne s5,a5,c0020dea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38369 + c0020f94: 2a81 sext.w s5,s5 + c0020f96: 478d li a5,3 + c0020f98: 02fa9163 bne s5,a5,c0020fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38377 return obj; - c0020dcc: 77c2 ld a5,48(sp) - c0020dce: e0be sd a5,64(sp) - c0020dd0: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38376 -} - c0020dd2: 70ea ld ra,184(sp) - c0020dd4: 744a ld s0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38375 + c0020f9c: 77c2 ld a5,48(sp) + c0020f9e: e0be sd a5,64(sp) + c0020fa0: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38384 +} + c0020fa2: 70ea ld ra,184(sp) + c0020fa4: 744a ld s0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38383 return JS_EXCEPTION; - c0020dd6: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38376 -} - c0020dd8: 6506 ld a0,64(sp) - c0020dda: 65a6 ld a1,72(sp) - c0020ddc: 74aa ld s1,168(sp) - c0020dde: 790a ld s2,160(sp) - c0020de0: 69ea ld s3,152(sp) - c0020de2: 6a4a ld s4,144(sp) - c0020de4: 6aaa ld s5,136(sp) - c0020de6: 6129 addi sp,sp,192 - c0020de8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38353 + c0020fa6: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38384 +} + c0020fa8: 6506 ld a0,64(sp) + c0020faa: 65a6 ld a1,72(sp) + c0020fac: 74aa ld s1,168(sp) + c0020fae: 790a ld s2,160(sp) + c0020fb0: 69ea ld s3,152(sp) + c0020fb2: 6a4a ld s4,144(sp) + c0020fb4: 6aaa ld s5,136(sp) + c0020fb6: 6129 addi sp,sp,192 + c0020fb8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38361 proto = JS_GetProperty(ctx, new_target, JS_ATOM_prototype); - c0020dea: 6702 ld a4,0(sp) - c0020dec: 67a2 ld a5,8(sp) + c0020fba: 6702 ld a4,0(sp) + c0020fbc: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0020dee: 4801 li a6,0 - c0020df0: 85ba mv a1,a4 - c0020df2: 863e mv a2,a5 - c0020df4: 03c00693 li a3,60 - c0020df8: 8522 mv a0,s0 - c0020dfa: e0ba sd a4,64(sp) - c0020dfc: e4be sd a5,72(sp) - c0020dfe: a45f00ef jal ra,c0011842 - c0020e02: e8aa sd a0,80(sp) - c0020e04: ecae sd a1,88(sp) - c0020e06: f02a sd a0,32(sp) - c0020e08: f42e sd a1,40(sp) + c0020fbe: 4801 li a6,0 + c0020fc0: 85ba mv a1,a4 + c0020fc2: 863e mv a2,a5 + c0020fc4: 03c00693 li a3,60 + c0020fc8: 8522 mv a0,s0 + c0020fca: e0ba sd a4,64(sp) + c0020fcc: e4be sd a5,72(sp) + c0020fce: 963f00ef jal ra,c0011930 + c0020fd2: e8aa sd a0,80(sp) + c0020fd4: ecae sd a1,88(sp) + c0020fd6: f02a sd a0,32(sp) + c0020fd8: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0020e0a: 0005879b sext.w a5,a1 + c0020fda: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0020e0e: 872e mv a4,a1 + c0020fde: 872e mv a4,a1 js_function_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38362 if (JS_IsException(proto)) - c0020e10: 07278463 beq a5,s2,c0020e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38356 + c0020fe0: 07278463 beq a5,s2,c0021048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38364 if (!JS_IsObject(proto)) { - c0020e14: 56fd li a3,-1 - c0020e16: 04d78163 beq a5,a3,c0020e58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38358 + c0020fe4: 56fd li a3,-1 + c0020fe6: 04d78163 beq a5,a3,c0021028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38366 JS_FreeValue(ctx, proto); - c0020e1a: 85aa mv a1,a0 - c0020e1c: 863a mv a2,a4 - c0020e1e: 8522 mv a0,s0 - c0020e20: d19e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38359 + c0020fea: 85aa mv a1,a0 + c0020fec: 863a mv a2,a4 + c0020fee: 8522 mv a0,s0 + c0020ff0: c37e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38367 realm = JS_GetFunctionRealm(ctx, new_target); - c0020e24: 6582 ld a1,0(sp) - c0020e26: 6622 ld a2,8(sp) - c0020e28: 8522 mv a0,s0 - c0020e2a: 991f30ef jal ra,c00147ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38360 + c0020ff4: 6582 ld a1,0(sp) + c0020ff6: 6622 ld a2,8(sp) + c0020ff8: 8522 mv a0,s0 + c0020ffa: 8aff30ef jal ra,c00148a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38368 if (!realm) - c0020e2e: c529 beqz a0,c0020e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38362 + c0020ffe: c529 beqz a0,c0021048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38370 proto = JS_DupValue(ctx, realm->class_proto[func_kind_to_class_id[func_kind]]); - c0020e30: 020a1793 slli a5,s4,0x20 - c0020e34: 01f7da13 srli s4,a5,0x1f - c0020e38: 00054797 auipc a5,0x54 - c0020e3c: b4878793 addi a5,a5,-1208 # c0074980 - c0020e40: 9a3e add s4,s4,a5 - c0020e42: 000a5703 lhu a4,0(s4) - c0020e46: 613c ld a5,64(a0) - c0020e48: 0712 slli a4,a4,0x4 - c0020e4a: 97ba add a5,a5,a4 - c0020e4c: 6388 ld a0,0(a5) - c0020e4e: 678c ld a1,8(a5) - c0020e50: 81fe50ef jal ra,c000666e - c0020e54: f02a sd a0,32(sp) - c0020e56: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38364 + c0021000: 020a1793 slli a5,s4,0x20 + c0021004: 01f7da13 srli s4,a5,0x1f + c0021008: 00054797 auipc a5,0x54 + c002100c: bd878793 addi a5,a5,-1064 # c0074be0 + c0021010: 9a3e add s4,s4,a5 + c0021012: 000a5703 lhu a4,0(s4) + c0021016: 613c ld a5,64(a0) + c0021018: 0712 slli a4,a4,0x4 + c002101a: 97ba add a5,a5,a4 + c002101c: 6388 ld a0,0(a5) + c002101e: 678c ld a1,8(a5) + c0021020: f3ce50ef jal ra,c000675c + c0021024: f02a sd a0,32(sp) + c0021026: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38372 ret = JS_SetPrototypeInternal(ctx, obj, proto, TRUE); - c0020e58: 75c2 ld a1,48(sp) - c0020e5a: 7662 ld a2,56(sp) - c0020e5c: 7682 ld a3,32(sp) - c0020e5e: 4785 li a5,1 - c0020e60: 8522 mv a0,s0 - c0020e62: f43a sd a4,40(sp) - c0020e64: 8f4f40ef jal ra,c0014f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38365 + c0021028: 75c2 ld a1,48(sp) + c002102a: 7662 ld a2,56(sp) + c002102c: 7682 ld a3,32(sp) + c002102e: 4785 li a5,1 + c0021030: 8522 mv a0,s0 + c0021032: f43a sd a4,40(sp) + c0021034: 8f4f40ef jal ra,c0015128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38373 JS_FreeValue(ctx, proto); - c0020e68: 7582 ld a1,32(sp) - c0020e6a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38364 + c0021038: 7582 ld a1,32(sp) + c002103a: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38372 ret = JS_SetPrototypeInternal(ctx, obj, proto, TRUE); - c0020e6c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38365 + c002103c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38373 JS_FreeValue(ctx, proto); - c0020e6e: 8522 mv a0,s0 - c0020e70: cc9e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38366 - if (ret < 0) - c0020e74: f4095ce3 bgez s2,c0020dcc + c002103e: 8522 mv a0,s0 + c0021040: be7e60ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38374 + if (ret < 0) + c0021044: f4095ce3 bgez s2,c0020f9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38382 JS_FreeValue(ctx, obj); - c0020e78: 75c2 ld a1,48(sp) - c0020e7a: 8626 mv a2,s1 - c0020e7c: 8522 mv a0,s0 - c0020e7e: cbbe60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38375 + c0021048: 75c2 ld a1,48(sp) + c002104a: 8626 mv a2,s1 + c002104c: 8522 mv a0,s0 + c002104e: bd9e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38383 return JS_EXCEPTION; - c0020e82: 4799 li a5,6 - c0020e84: e082 sd zero,64(sp) - c0020e86: b7b1 j c0020dd2 + c0021052: 4799 li a5,6 + c0021054: e082 sd zero,64(sp) + c0021056: b7b1 j c0020fa2 -00000000c0020e88 : +00000000c0021058 : js_global_eval(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37029 return JS_EvalObject(ctx, ctx->global_obj, argv[0], JS_EVAL_TYPE_INDIRECT, -1); - c0020e88: 6314 ld a3,0(a4) - c0020e8a: 16853583 ld a1,360(a0) - c0020e8e: 6718 ld a4,8(a4) - c0020e90: 17053603 ld a2,368(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37020 -{ - c0020e94: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 + c0021058: 6314 ld a3,0(a4) + c002105a: 16853583 ld a1,360(a0) + c002105e: 6718 ld a4,8(a4) + c0021060: 17053603 ld a2,368(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37028 +{ + c0021064: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37029 return JS_EvalObject(ctx, ctx->global_obj, argv[0], JS_EVAL_TYPE_INDIRECT, -1); - c0020e96: 587d li a6,-1 - c0020e98: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37022 + c0021066: 587d li a6,-1 + c0021068: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37030 } - c0020e9a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 + c002106a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37029 return JS_EvalObject(ctx, ctx->global_obj, argv[0], JS_EVAL_TYPE_INDIRECT, -1); - c0020e9c: d79ff06f j c0020c14 + c002106c: d79ff06f j c0020de4 -00000000c0020ea0 : +00000000c0021070 : JS_AtomIsNumericIndex1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3207 -{ - c0020ea0: 7171 addi sp,sp,-176 - c0020ea2: f506 sd ra,168(sp) - c0020ea4: f122 sd s0,160(sp) - c0020ea6: ed26 sd s1,152(sp) - c0020ea8: e94a sd s2,144(sp) - c0020eaa: e54e sd s3,136(sp) - c0020eac: e152 sd s4,128(sp) - c0020eae: fcd6 sd s5,120(sp) - c0020eb0: b4a2 fsd fs0,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3215 +{ + c0021070: 7171 addi sp,sp,-176 + c0021072: f506 sd ra,168(sp) + c0021074: f122 sd s0,160(sp) + c0021076: ed26 sd s1,152(sp) + c0021078: e94a sd s2,144(sp) + c002107a: e54e sd s3,136(sp) + c002107c: e152 sd s4,128(sp) + c002107e: fcd6 sd s5,120(sp) + c0021080: b4a2 fsd fs0,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3222 if (__JS_AtomIsTaggedInt(atom)) - c0020eb2: 0205d563 bgez a1,c0020edc + c0021082: 0205d563 bgez a1,c00210ac __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0020eb6: 1586 slli a1,a1,0x21 - c0020eb8: 9185 srli a1,a1,0x21 + c0021086: 1586 slli a1,a1,0x21 + c0021088: 9185 srli a1,a1,0x21 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0020eba: da02 sw zero,52(sp) - c0020ebc: d82e sw a1,48(sp) - c0020ebe: 77c2 ld a5,48(sp) - c0020ec0: f402 sd zero,40(sp) - c0020ec2: f03e sd a5,32(sp) + c002108a: da02 sw zero,52(sp) + c002108c: d82e sw a1,48(sp) + c002108e: 77c2 ld a5,48(sp) + c0021090: f402 sd zero,40(sp) + c0021092: f03e sd a5,32(sp) JS_AtomIsNumericIndex1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3285 (discriminator 6) -} - c0020ec4: 70aa ld ra,168(sp) - c0020ec6: 740a ld s0,160(sp) - c0020ec8: 7502 ld a0,32(sp) - c0020eca: 75a2 ld a1,40(sp) - c0020ecc: 64ea ld s1,152(sp) - c0020ece: 694a ld s2,144(sp) - c0020ed0: 69aa ld s3,136(sp) - c0020ed2: 6a0a ld s4,128(sp) - c0020ed4: 7ae6 ld s5,120(sp) - c0020ed6: 3426 fld fs0,104(sp) - c0020ed8: 614d addi sp,sp,176 - c0020eda: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3208 - JSRuntime *rt = ctx->rt; - c0020edc: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3293 (discriminator 6) +} + c0021094: 70aa ld ra,168(sp) + c0021096: 740a ld s0,160(sp) + c0021098: 7502 ld a0,32(sp) + c002109a: 75a2 ld a1,40(sp) + c002109c: 64ea ld s1,152(sp) + c002109e: 694a ld s2,144(sp) + c00210a0: 69aa ld s3,136(sp) + c00210a2: 6a0a ld s4,128(sp) + c00210a4: 7ae6 ld s5,120(sp) + c00210a6: 3426 fld fs0,104(sp) + c00210a8: 614d addi sp,sp,176 + c00210aa: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3216 + JSRuntime *rt = ctx->rt; + c00210ac: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3224 assert(atom < rt->atom_size); - c0020ede: 84aa mv s1,a0 - c0020ee0: 4bb8 lw a4,80(a5) - c0020ee2: 00e5ec63 bltu a1,a4,c0020efa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3216 (discriminator 1) - c0020ee6: 6585 lui a1,0x1 - c0020ee8: 4601 li a2,0 - c0020eea: c9058593 addi a1,a1,-880 # c90 <__clzdi2-0xbffff370> - c0020eee: 0003c517 auipc a0,0x3c - c0020ef2: b8a50513 addi a0,a0,-1142 # c005ca78 - c0020ef6: 323320ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3217 (discriminator 2) + c00210ae: 84aa mv s1,a0 + c00210b0: 4bb8 lw a4,80(a5) + c00210b2: 00e5ec63 bltu a1,a4,c00210ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3224 (discriminator 1) + c00210b6: 6585 lui a1,0x1 + c00210b8: 4601 li a2,0 + c00210ba: c9858593 addi a1,a1,-872 # c98 <__clzdi2-0xbffff368> + c00210be: 0003c517 auipc a0,0x3c + c00210c2: b8a50513 addi a0,a0,-1142 # c005cc48 + c00210c6: 323320ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3225 (discriminator 2) p1 = rt->atom_array[atom]; - c0020efa: 73bc ld a5,96(a5) - c0020efc: 02059713 slli a4,a1,0x20 - c0020f00: 01d75593 srli a1,a4,0x1d - c0020f04: 95be add a1,a1,a5 - c0020f06: 6180 ld s0,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3218 (discriminator 2) + c00210ca: 73bc ld a5,96(a5) + c00210cc: 02059713 slli a4,a1,0x20 + c00210d0: 01d75593 srli a1,a4,0x1d + c00210d4: 95be add a1,a1,a5 + c00210d6: 6180 ld s0,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3226 (discriminator 2) if (p1->atom_type != JS_ATOM_TYPE_STRING) - c0020f08: c0000737 lui a4,0xc0000 - c0020f0c: 441c lw a5,8(s0) - c0020f0e: 8ff9 and a5,a5,a4 - c0020f10: 2781 sext.w a5,a5 - c0020f12: 40000737 lui a4,0x40000 - c0020f16: 00e78563 beq a5,a4,c0020f20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3283 + c00210d8: c0000737 lui a4,0xc0000 + c00210dc: 441c lw a5,8(s0) + c00210de: 8ff9 and a5,a5,a4 + c00210e0: 2781 sext.w a5,a5 + c00210e2: 40000737 lui a4,0x40000 + c00210e6: 00e78563 beq a5,a4,c00210f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3291 return JS_UNDEFINED; - c0020f1a: f002 sd zero,32(sp) - c0020f1c: 478d li a5,3 - c0020f1e: a0e5 j c0021006 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3221 + c00210ea: f002 sd zero,32(sp) + c00210ec: 478d li a5,3 + c00210ee: a0e5 j c00211d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3229 len = p->len; - c0020f20: 4058 lw a4,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3223 + c00210f0: 4058 lw a4,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3231 const uint16_t *r = p->u.str16, *r_end = p->u.str16 + len; - c0020f22: 01040513 addi a0,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3221 + c00210f2: 01040513 addi a0,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3229 len = p->len; - c0020f26: 02171793 slli a5,a4,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3222 + c00210f6: 02171793 slli a5,a4,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3230 if (p->is_wide_char) { - c0020f2a: 2701 sext.w a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3221 + c00210fa: 2701 sext.w a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3229 len = p->len; - c0020f2c: 0217d693 srli a3,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3222 + c00210fc: 0217d693 srli a3,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3230 if (p->is_wide_char) { - c0020f30: 0a075063 bgez a4,c0020fd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3223 + c0021100: 0a075063 bgez a4,c00211a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3231 const uint16_t *r = p->u.str16, *r_end = p->u.str16 + len; - c0020f34: 00169793 slli a5,a3,0x1 - c0020f38: 97aa add a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3224 + c0021104: 00169793 slli a5,a3,0x1 + c0021108: 97aa add a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3232 if (r >= r_end) - c0020f3a: fef570e3 bgeu a0,a5,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3226 + c002110a: fef570e3 bgeu a0,a5,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3234 c = *r; - c0020f3e: 01045703 lhu a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3227 + c002110e: 01045703 lhu a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3235 if (c == '-') { - c0020f42: 02d00613 li a2,45 - c0020f46: 00c71d63 bne a4,a2,c0020f60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3231 + c0021112: 02d00613 li a2,45 + c0021116: 00c71d63 bne a4,a2,c0021130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3239 c = *r; - c0020f4a: 01245703 lhu a4,18(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3233 + c002111a: 01245703 lhu a4,18(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3241 if (c == '0' && len == 2) - c0020f4e: 03000613 li a2,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3230 + c002111e: 03000613 li a2,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3238 r++; - c0020f52: 01240513 addi a0,s0,18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3233 + c0021122: 01240513 addi a0,s0,18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3241 if (c == '0' && len == 2) - c0020f56: 00c71563 bne a4,a2,c0020f60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3233 (discriminator 1) - c0020f5a: 4609 li a2,2 - c0020f5c: 08c68f63 beq a3,a2,c0020ffa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3237 + c0021126: 00c71563 bne a4,a2,c0021130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3241 (discriminator 1) + c002112a: 4609 li a2,2 + c002112c: 08c68f63 beq a3,a2,c00211ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3245 if (!is_num(c)) { - c0020f60: fd07069b addiw a3,a4,-48 - c0020f64: 4625 li a2,9 - c0020f66: 02d67d63 bgeu a2,a3,c0020fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3239 + c0021130: fd07069b addiw a3,a4,-48 + c0021134: 4625 li a2,9 + c0021136: 02d67d63 bgeu a2,a3,c0021170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3247 const uint16_t nfinity16[7] = { 'n', 'f', 'i', 'n', 'i', 't', 'y' }; - c0020f6a: 00054697 auipc a3,0x54 - c0020f6e: 8e66b683 ld a3,-1818(a3) # c0074850 <_erodata+0xd0> - c0020f72: e8b6 sd a3,80(sp) - c0020f74: 007406b7 lui a3,0x740 - c0020f78: 06968693 addi a3,a3,105 # 740069 <__clzdi2-0xbf8bff97> - c0020f7c: ccb6 sw a3,88(sp) - c0020f7e: 07900693 li a3,121 - c0020f82: 04d11e23 sh a3,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3240 + c002113a: 00054697 auipc a3,0x54 + c002113e: 9766b683 ld a3,-1674(a3) # c0074ab0 <_erodata+0xd0> + c0021142: e8b6 sd a3,80(sp) + c0021144: 007406b7 lui a3,0x740 + c0021148: 06968693 addi a3,a3,105 # 740069 <__clzdi2-0xbf8bff97> + c002114c: ccb6 sw a3,88(sp) + c002114e: 07900693 li a3,121 + c0021152: 04d11e23 sh a3,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3248 if (!(c =='I' && (r_end - r) == 8 && - c0020f86: 04900693 li a3,73 - c0020f8a: f8d718e3 bne a4,a3,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3240 (discriminator 1) - c0020f8e: 17c1 addi a5,a5,-16 - c0020f90: f8a795e3 bne a5,a0,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3241 (discriminator 2) + c0021156: 04900693 li a3,73 + c002115a: f8d718e3 bne a4,a3,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3248 (discriminator 1) + c002115e: 17c1 addi a5,a5,-16 + c0021160: f8a795e3 bne a5,a0,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3249 (discriminator 2) !memcmp(r + 1, nfinity16, sizeof(nfinity16)))) - c0020f94: 4639 li a2,14 - c0020f96: 088c addi a1,sp,80 - c0020f98: 0509 addi a0,a0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3262 (discriminator 2) + c0021164: 4639 li a2,14 + c0021166: 088c addi a1,sp,80 + c0021168: 0509 addi a0,a0,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3270 (discriminator 2) !memcmp(r + 1, "nfinity", 7))) - c0020f9a: 069350ef jal ra,c0056802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3261 (discriminator 2) + c002116a: 069350ef jal ra,c00569d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3269 (discriminator 2) if (!(c =='I' && (r_end - r) == 8 && - c0020f9e: fd35 bnez a0,c0020f1a + c002116e: fd35 bnez a0,c00210ea JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0020fa0: 401c lw a5,0(s0) + c0021170: 401c lw a5,0(s0) JS_ToNumber(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10695 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10703 return JS_ToNumberFree(ctx, JS_DupValue(ctx, val)); - c0020fa2: 85a2 mv a1,s0 - c0020fa4: 5665 li a2,-7 + c0021172: 85a2 mv a1,s0 + c0021174: 5665 li a2,-7 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0020fa6: 2785 addiw a5,a5,1 - c0020fa8: c01c sw a5,0(s0) + c0021176: 2785 addiw a5,a5,1 + c0021178: c01c sw a5,0(s0) JS_ToNumber(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10695 - c0020faa: 8526 mv a0,s1 - c0020fac: 57e5 li a5,-7 - c0020fae: ecbe sd a5,88(sp) - c0020fb0: e8a2 sd s0,80(sp) - c0020fb2: ab8fb0ef jal ra,c001c26a - c0020fb6: e02a sd a0,0(sp) - c0020fb8: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10703 + c002117a: 8526 mv a0,s1 + c002117c: 57e5 li a5,-7 + c002117e: ecbe sd a5,88(sp) + c0021180: e8a2 sd s0,80(sp) + c0021182: ab8fb0ef jal ra,c001c43a + c0021186: e02a sd a0,0(sp) + c0021188: e42e sd a1,8(sp) JS_AtomIsNumericIndex1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3278 if (JS_IsException(num)) - c0020fba: 0005879b sext.w a5,a1 - c0020fbe: 4a99 li s5,6 + c002118a: 0005879b sext.w a5,a1 + c002118e: 4a99 li s5,6 JS_ToNumber(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10695 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:10703 return JS_ToNumberFree(ctx, JS_DupValue(ctx, val)); - c0020fc0: f2050453 fmv.d.x fs0,a0 - c0020fc4: 892e mv s2,a1 + c0021190: f2050453 fmv.d.x fs0,a0 + c0021194: 892e mv s2,a1 JS_AtomIsNumericIndex1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3278 if (JS_IsException(num)) - c0020fc6: 07579563 bne a5,s5,c0021030 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3280 + c0021196: 07579563 bne a5,s5,c0021200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3288 return num; - c0020fca: b022 fsd fs0,32(sp) - c0020fcc: f44a sd s2,40(sp) - c0020fce: bddd j c0020ec4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3245 + c002119a: b022 fsd fs0,32(sp) + c002119c: f44a sd s2,40(sp) + c002119e: bddd j c0021094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3253 const uint8_t *r = p->u.str8, *r_end = p->u.str8 + len; - c0020fd0: 00d507b3 add a5,a0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3246 + c00211a0: 00d507b3 add a5,a0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3254 if (r >= r_end) - c0020fd4: f4f573e3 bgeu a0,a5,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3248 + c00211a4: f4f573e3 bgeu a0,a5,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3256 c = *r; - c0020fd8: 01044703 lbu a4,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3249 + c00211a8: 01044703 lbu a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3257 if (c == '-') { - c0020fdc: 02d00613 li a2,45 - c0020fe0: 02c71563 bne a4,a2,c002100a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3253 + c00211ac: 02d00613 li a2,45 + c00211b0: 02c71563 bne a4,a2,c00211da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3261 c = *r; - c0020fe4: 01144703 lbu a4,17(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3255 + c00211b4: 01144703 lbu a4,17(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3263 if (c == '0' && len == 2) { - c0020fe8: 03000613 li a2,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3252 + c00211b8: 03000613 li a2,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3260 r++; - c0020fec: 01140513 addi a0,s0,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3255 + c00211bc: 01140513 addi a0,s0,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3263 if (c == '0' && len == 2) { - c0020ff0: 00c71d63 bne a4,a2,c002100a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3255 (discriminator 1) - c0020ff4: 4609 li a2,2 - c0020ff6: 00c69a63 bne a3,a2,c002100a + c00211c0: 00c71d63 bne a4,a2,c00211da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3263 (discriminator 1) + c00211c4: 4609 li a2,2 + c00211c6: 00c69a63 bne a3,a2,c00211da /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0020ffa: 00053797 auipc a5,0x53 - c0020ffe: 7e67b787 fld fa5,2022(a5) # c00747e0 <_erodata+0x60> - c0021002: b03e fsd fa5,32(sp) - c0021004: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3283 + c00211ca: 00054797 auipc a5,0x54 + c00211ce: 8767b787 fld fa5,-1930(a5) # c0074a40 <_erodata+0x60> + c00211d2: b03e fsd fa5,32(sp) + c00211d4: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3291 return JS_UNDEFINED; - c0021006: f43e sd a5,40(sp) - c0021008: bd75 j c0020ec4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3260 + c00211d6: f43e sd a5,40(sp) + c00211d8: bd75 j c0021094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3268 if (!is_num(c)) { - c002100a: fd07069b addiw a3,a4,-48 - c002100e: 4625 li a2,9 - c0021010: f8d678e3 bgeu a2,a3,c0020fa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3261 + c00211da: fd07069b addiw a3,a4,-48 + c00211de: 4625 li a2,9 + c00211e0: f8d678e3 bgeu a2,a3,c0021170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3269 if (!(c =='I' && (r_end - r) == 8 && - c0021014: 04900693 li a3,73 - c0021018: f0d711e3 bne a4,a3,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3261 (discriminator 1) - c002101c: 17e1 addi a5,a5,-8 - c002101e: eea79ee3 bne a5,a0,c0020f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3262 (discriminator 2) + c00211e4: 04900693 li a3,73 + c00211e8: f0d711e3 bne a4,a3,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3269 (discriminator 1) + c00211ec: 17e1 addi a5,a5,-8 + c00211ee: eea79ee3 bne a5,a0,c00210ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3270 (discriminator 2) !memcmp(r + 1, "nfinity", 7))) - c0021022: 461d li a2,7 - c0021024: 0003d597 auipc a1,0x3d - c0021028: 73c58593 addi a1,a1,1852 # c005e760 - c002102c: 0505 addi a0,a0,1 - c002102e: b7b5 j c0020f9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3272 + c00211f2: 461d li a2,7 + c00211f4: 0003d597 auipc a1,0x3d + c00211f8: 7cc58593 addi a1,a1,1996 # c005e9c0 + c00211fc: 0505 addi a0,a0,1 + c00211fe: b7b5 j c002116a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3280 str = JS_ToString(ctx, num); - c0021030: 85aa mv a1,a0 - c0021032: 864a mv a2,s2 - c0021034: 8526 mv a0,s1 - c0021036: fa0f90ef jal ra,c001a7d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3273 + c0021200: 85aa mv a1,a0 + c0021202: 864a mv a2,s2 + c0021204: 8526 mv a0,s1 + c0021206: fa0f90ef jal ra,c001a9a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3281 if (JS_IsException(str)) { - c002103a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3272 + c002120a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3280 str = JS_ToString(ctx, num); - c002103e: 8a2a mv s4,a0 - c0021040: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3273 + c002120e: 8a2a mv s4,a0 + c0021210: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3281 if (JS_IsException(str)) { - c0021042: 01579a63 bne a5,s5,c0021056 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3274 + c0021212: 01579a63 bne a5,s5,c0021226 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3282 JS_FreeValue(ctx, num); - c0021046: 6582 ld a1,0(sp) - c0021048: 6622 ld a2,8(sp) - c002104a: 8526 mv a0,s1 - c002104c: aede60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3275 + c0021216: 6582 ld a1,0(sp) + c0021218: 6622 ld a2,8(sp) + c002121a: 8526 mv a0,s1 + c002121c: a0be60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3283 return str; - c0021050: f052 sd s4,32(sp) - c0021052: f44e sd s3,40(sp) - c0021054: bd85 j c0020ec4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3277 + c0021220: f052 sd s4,32(sp) + c0021222: f44e sd s3,40(sp) + c0021224: bd85 j c0021094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3285 ret = js_string_compare(ctx, p, JS_VALUE_GET_STRING(str)); - c0021056: 85aa mv a1,a0 - c0021058: 8522 mv a0,s0 - c002105a: a53e50ef jal ra,c0006aac - c002105e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3278 + c0021226: 85aa mv a1,a0 + c0021228: 8522 mv a0,s0 + c002122a: 971e50ef jal ra,c0006b9a + c002122e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3286 JS_FreeValue(ctx, str); - c0021060: 85d2 mv a1,s4 - c0021062: 864e mv a2,s3 - c0021064: 8526 mv a0,s1 - c0021066: ad3e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3279 + c0021230: 85d2 mv a1,s4 + c0021232: 864e mv a2,s3 + c0021234: 8526 mv a0,s1 + c0021236: 9f1e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3287 if (ret == 0) { - c002106a: d025 beqz s0,c0020fca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3282 + c002123a: d025 beqz s0,c002119a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3290 JS_FreeValue(ctx, num); - c002106c: 6582 ld a1,0(sp) - c002106e: 6622 ld a2,8(sp) - c0021070: 8526 mv a0,s1 - c0021072: ac7e60ef jal ra,c0007b38 - c0021076: b555 j c0020f1a + c002123c: 6582 ld a1,0(sp) + c002123e: 6622 ld a2,8(sp) + c0021240: 8526 mv a0,s1 + c0021242: 9e5e60ef jal ra,c0007c26 + c0021246: b555 j c00210ea -00000000c0021078 : +00000000c0021248 : JS_AtomIsNumericIndex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3289 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3297 { - c0021078: 1101 addi sp,sp,-32 - c002107a: e822 sd s0,16(sp) - c002107c: ec06 sd ra,24(sp) - c002107e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3291 + c0021248: 1101 addi sp,sp,-32 + c002124a: e822 sd s0,16(sp) + c002124c: ec06 sd ra,24(sp) + c002124e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3299 num = JS_AtomIsNumericIndex1(ctx, atom); - c0021080: e21ff0ef jal ra,c0020ea0 + c0021250: e21ff0ef jal ra,c0021070 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0021084: 0005871b sext.w a4,a1 + c0021254: 0005871b sext.w a4,a1 JS_AtomIsNumericIndex(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3300 if (likely(JS_IsUndefined(num))) - c0021088: 468d li a3,3 - c002108a: 02d70163 beq a4,a3,c00210ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3294 + c0021258: 468d li a3,3 + c002125a: 02d70163 beq a4,a3,c002127c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3302 if (JS_IsException(num)) - c002108e: 4699 li a3,6 - c0021090: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3295 + c002125e: 4699 li a3,6 + c0021260: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3303 return -1; - c0021092: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3294 + c0021262: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3302 if (JS_IsException(num)) - c0021094: 00d70863 beq a4,a3,c00210a4 - c0021098: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3296 + c0021264: 00d70863 beq a4,a3,c0021274 + c0021268: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3304 JS_FreeValue(ctx, num); - c002109a: 8522 mv a0,s0 - c002109c: 85be mv a1,a5 - c002109e: a9be60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3297 + c002126a: 8522 mv a0,s0 + c002126c: 85be mv a1,a5 + c002126e: 9b9e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3305 return TRUE; - c00210a2: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3298 -} - c00210a4: 60e2 ld ra,24(sp) - c00210a6: 6442 ld s0,16(sp) - c00210a8: 6105 addi sp,sp,32 - c00210aa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3293 + c0021272: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3306 +} + c0021274: 60e2 ld ra,24(sp) + c0021276: 6442 ld s0,16(sp) + c0021278: 6105 addi sp,sp,32 + c002127a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3301 return FALSE; - c00210ac: 4501 li a0,0 - c00210ae: bfdd j c00210a4 + c002127c: 4501 li a0,0 + c002127e: bfdd j c0021274 -00000000c00210b0 : +00000000c0021280 : JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8922 -{ - c00210b0: 7115 addi sp,sp,-224 - c00210b2: fd26 sd s1,184(sp) - c00210b4: f94a sd s2,176(sp) - c00210b6: f54e sd s3,168(sp) - c00210b8: 892e mv s2,a1 - c00210ba: 84aa mv s1,a0 - c00210bc: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8930 +{ + c0021280: 7115 addi sp,sp,-224 + c0021282: fd26 sd s1,184(sp) + c0021284: f94a sd s2,176(sp) + c0021286: f54e sd s3,168(sp) + c0021288: 892e mv s2,a1 + c002128a: 84aa mv s1,a0 + c002128c: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8931 write(1, "JS_CreateProperty: a\n", 21);//// - c00210be: 0003d597 auipc a1,0x3d - c00210c2: 6aa58593 addi a1,a1,1706 # c005e768 - c00210c6: 4655 li a2,21 - c00210c8: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8922 -{ - c00210ca: e1a2 sd s0,192(sp) - c00210cc: fc3a sd a4,56(sp) - c00210ce: f03e sd a5,32(sp) - c00210d0: 542e lw s0,232(sp) - c00210d2: e586 sd ra,200(sp) - c00210d4: f152 sd s4,160(sp) - c00210d6: f836 sd a3,48(sp) - c00210d8: f442 sd a6,40(sp) - c00210da: edc6 sd a7,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8923 + c002128e: 0003d597 auipc a1,0x3d + c0021292: 73a58593 addi a1,a1,1850 # c005e9c8 + c0021296: 4655 li a2,21 + c0021298: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8930 +{ + c002129a: e1a2 sd s0,192(sp) + c002129c: fc3a sd a4,56(sp) + c002129e: f03e sd a5,32(sp) + c00212a0: 542e lw s0,232(sp) + c00212a2: e586 sd ra,200(sp) + c00212a4: f152 sd s4,160(sp) + c00212a6: f836 sd a3,48(sp) + c00212a8: f442 sd a6,40(sp) + c00212aa: edc6 sd a7,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8931 write(1, "JS_CreateProperty: a\n", 21);//// - c00210dc: 56c360ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8928 + c00212ac: 56c360ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8936 if (p->is_exotic) { - c00210e0: 00594703 lbu a4,5(s2) - c00210e4: 00477793 andi a5,a4,4 - c00210e8: c7e9 beqz a5,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8929 + c00212b0: 00594703 lbu a4,5(s2) + c00212b4: 00477793 andi a5,a4,4 + c00212b8: c7e9 beqz a5,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8937 if (p->class_id == JS_CLASS_ARRAY) { - c00210ea: 00695783 lhu a5,6(s2) - c00210ee: 4689 li a3,2 - c00210f0: 18d79463 bne a5,a3,c0021278 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8932 + c00212ba: 00695783 lhu a5,6(s2) + c00212be: 4689 li a3,2 + c00212c0: 18d79463 bne a5,a3,c0021448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8940 if (p->fast_array) { - c00210f4: 00877793 andi a5,a4,8 - c00210f8: 12078f63 beqz a5,c0021236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8933 + c00212c4: 00877793 andi a5,a4,8 + c00212c8: 12078f63 beqz a5,c0021406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8941 if (__JS_AtomIsTaggedInt(prop)) { - c00210fc: 0a09d563 bgez s3,c00211a6 + c00212cc: 0a09d563 bgez s3,c0021376 __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0021100: 02199793 slli a5,s3,0x21 + c00212d0: 02199793 slli a5,s3,0x21 JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8943 if (idx == p->u.array.count) { - c0021104: 04092683 lw a3,64(s2) + c00212d4: 04092683 lw a3,64(s2) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c0021108: 9385 srli a5,a5,0x21 + c00212d8: 9385 srli a5,a5,0x21 JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8942 idx = __JS_AtomToUInt32(prop); - c002110a: c6be sw a5,76(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8935 + c00212da: c6be sw a5,76(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8943 if (idx == p->u.array.count) { - c002110c: 04f68963 beq a3,a5,c002115e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8951 + c00212dc: 04f68963 beq a3,a5,c002132e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8959 if (convert_fast_array_to_array(ctx, p)) - c0021110: 85ca mv a1,s2 - c0021112: 8526 mv a0,s1 - c0021114: ebdf50ef jal ra,c0016fd0 - c0021118: 18051263 bnez a0,c002129c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8960 + c00212e0: 85ca mv a1,s2 + c00212e2: 8526 mv a0,s1 + c00212e4: ebdf50ef jal ra,c00171a0 + c00212e8: 18051263 bnez a0,c002146c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8968 plen = &p->prop[0]; - c002111c: 02093a03 ld s4,32(s2) + c00212ec: 02093a03 ld s4,32(s2) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c0021120: 188c addi a1,sp,112 - c0021122: 8526 mv a0,s1 - c0021124: 008a3683 ld a3,8(s4) - c0021128: 000a3603 ld a2,0(s4) - c002112c: ed36 sd a3,152(sp) - c002112e: e932 sd a2,144(sp) - c0021130: a3efb0ef jal ra,c001c36e + c00212f0: 188c addi a1,sp,112 + c00212f2: 8526 mv a0,s1 + c00212f4: 008a3683 ld a3,8(s4) + c00212f8: 000a3603 ld a2,0(s4) + c00212fc: ed36 sd a3,152(sp) + c00212fe: e932 sd a2,144(sp) + c0021300: a3efb0ef jal ra,c001c53e JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8970 if ((idx + 1) > len) { - c0021134: 4736 lw a4,76(sp) - c0021136: 56c6 lw a3,112(sp) - c0021138: 0017079b addiw a5,a4,1 - c002113c: 06f6fb63 bgeu a3,a5,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8964 + c0021304: 4736 lw a4,76(sp) + c0021306: 56c6 lw a3,112(sp) + c0021308: 0017079b addiw a5,a4,1 + c002130c: 06f6fb63 bgeu a3,a5,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8972 if (unlikely(!(pslen->flags & JS_PROP_WRITABLE))) - c0021140: 01893683 ld a3,24(s2) - c0021144: 42b4 lw a3,64(a3) - c0021146: 01a6d69b srliw a3,a3,0x1a - c002114a: 8a89 andi a3,a3,2 - c002114c: 0e069d63 bnez a3,c0021246 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8965 + c0021310: 01893683 ld a3,24(s2) + c0021314: 42b4 lw a3,64(a3) + c0021316: 01a6d69b srliw a3,a3,0x1a + c002131a: 8a89 andi a3,a3,2 + c002131c: 0e069d63 bnez a3,c0021416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8973 return JS_ThrowTypeErrorReadOnly(ctx, flags, JS_ATOM_length); - c0021150: 03000613 li a2,48 - c0021154: 85a2 mv a1,s0 - c0021156: 8526 mv a0,s1 - c0021158: bb0f20ef jal ra,c0013508 - c002115c: a81d j c0021192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8936 + c0021320: 03000613 li a2,48 + c0021324: 85a2 mv a1,s0 + c0021326: 8526 mv a0,s1 + c0021328: acef20ef jal ra,c00135f6 + c002132c: a81d j c0021362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8944 if (!p->extensible) - c002115e: 8b05 andi a4,a4,1 - c0021160: 18070e63 beqz a4,c00212fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8938 + c002132e: 8b05 andi a4,a4,1 + c0021330: 18070e63 beqz a4,c00214cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8946 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) - c0021164: 6789 lui a5,0x2 - c0021166: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> - c002116a: 8fe1 and a5,a5,s0 - c002116c: f3d5 bnez a5,c0021110 + c0021334: 6789 lui a5,0x2 + c0021336: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> + c002133a: 8fe1 and a5,a5,s0 + c002133c: f3d5 bnez a5,c00212e0 get_prop_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8922 mask = (flags >> JS_PROP_HAS_SHIFT) & JS_PROP_C_W_E; - c002116e: 4084579b sraiw a5,s0,0x8 + c002133e: 4084579b sraiw a5,s0,0x8 JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8949 if (prop_flags != JS_PROP_C_W_E) - c0021172: 8fe1 and a5,a5,s0 - c0021174: 8b9d andi a5,a5,7 - c0021176: 471d li a4,7 - c0021178: f8e79ce3 bne a5,a4,c0021110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8943 + c0021342: 8fe1 and a5,a5,s0 + c0021344: 8b9d andi a5,a5,7 + c0021346: 471d li a4,7 + c0021348: f8e79ce3 bne a5,a4,c00212e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8951 return add_fast_array_element(ctx, p, - c002117c: 7542 ld a0,48(sp) - c002117e: 75e2 ld a1,56(sp) - c0021180: ceee50ef jal ra,c000666e - c0021184: 862a mv a2,a0 - c0021186: 86ae mv a3,a1 - c0021188: 8722 mv a4,s0 - c002118a: 85ca mv a1,s2 - c002118c: 8526 mv a0,s1 - c002118e: bf4f60ef jal ra,c0017582 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8984 + c002134c: 7542 ld a0,48(sp) + c002134e: 75e2 ld a1,56(sp) + c0021350: c0ce50ef jal ra,c000675c + c0021354: 862a mv a2,a0 + c0021356: 86ae mv a3,a1 + c0021358: 8722 mv a4,s0 + c002135a: 85ca mv a1,s2 + c002135c: 8526 mv a0,s1 + c002135e: bf4f60ef jal ra,c0017752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8992 return em->define_own_property(ctx, JS_MKPTR(JS_TAG_OBJECT, p), - c0021192: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9035 (discriminator 4) -} - c0021194: 60ae ld ra,200(sp) - c0021196: 640e ld s0,192(sp) - c0021198: 74ea ld s1,184(sp) - c002119a: 79aa ld s3,168(sp) - c002119c: 7a0a ld s4,160(sp) - c002119e: 854a mv a0,s2 - c00211a0: 794a ld s2,176(sp) - c00211a2: 612d addi sp,sp,224 - c00211a4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8948 + c0021362: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9043 (discriminator 4) +} + c0021364: 60ae ld ra,200(sp) + c0021366: 640e ld s0,192(sp) + c0021368: 74ea ld s1,184(sp) + c002136a: 79aa ld s3,168(sp) + c002136c: 7a0a ld s4,160(sp) + c002136e: 854a mv a0,s2 + c0021370: 794a ld s2,176(sp) + c0021372: 612d addi sp,sp,224 + c0021374: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8956 } else if (JS_AtomIsArrayIndex(ctx, &idx, prop)) { - c00211a6: 864e mv a2,s3 - c00211a8: 00ec addi a1,sp,76 - c00211aa: 8526 mv a0,s1 - c00211ac: c25e30ef jal ra,c0004dd0 - c00211b0: f125 bnez a0,c0021110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8997 + c0021376: 864e mv a2,s3 + c0021378: 00ec addi a1,sp,76 + c002137a: 8526 mv a0,s1 + c002137c: a55e30ef jal ra,c0004dd0 + c0021380: f125 bnez a0,c00212e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9005 if (!p->extensible) { - c00211b2: 00594783 lbu a5,5(s2) - c00211b6: 8b85 andi a5,a5,1 - c00211b8: 14078263 beqz a5,c00212fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9003 + c0021382: 00594783 lbu a5,5(s2) + c0021386: 8b85 andi a5,a5,1 + c0021388: 14078263 beqz a5,c00214cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9011 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c00211bc: 6a09 lui s4,0x2 - c00211be: 800a0a13 addi s4,s4,-2048 # 1800 <__clzdi2-0xbfffe800> - c00211c2: 01447a33 and s4,s0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9007 + c002138c: 6a09 lui s4,0x2 + c002138e: 800a0a13 addi s4,s4,-2048 # 1800 <__clzdi2-0xbfffe800> + c0021392: 01447a33 and s4,s0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9015 prop_flags = flags & JS_PROP_C_W_E; - c00211c6: 00747693 andi a3,s0,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9003 + c0021396: 00747693 andi a3,s0,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9011 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c00211ca: 000a0663 beqz s4,c00211d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9004 + c002139a: 000a0663 beqz s4,c00213a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9012 prop_flags = (flags & (JS_PROP_CONFIGURABLE | JS_PROP_ENUMERABLE)) | - c00211ce: 00547693 andi a3,s0,5 - c00211d2: 0106e693 ori a3,a3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9010 + c002139e: 00547693 andi a3,s0,5 + c00213a2: 0106e693 ori a3,a3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9018 pr = add_property(ctx, p, prop, prop_flags); - c00211d6: 864e mv a2,s3 - c00211d8: 85ca mv a1,s2 - c00211da: 8526 mv a0,s1 - c00211dc: 9eaf50ef jal ra,c00163c6 - c00211e0: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9012 + c00213a6: 864e mv a2,s3 + c00213a8: 85ca mv a1,s2 + c00213aa: 8526 mv a0,s1 + c00213ac: 9eaf50ef jal ra,c0016596 + c00213b0: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9020 if (unlikely(!pr)) - c00211e2: cd4d beqz a0,c002129c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9015 + c00213b2: cd4d beqz a0,c002146c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9023 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c00211e4: 120a0b63 beqz s4,c002131a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9017 + c00213b4: 120a0b63 beqz s4,c00214ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9025 if ((flags & JS_PROP_HAS_GET) && JS_IsFunction(ctx, getter)) { - c00211e8: 00b45793 srli a5,s0,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9016 + c00213b8: 00b45793 srli a5,s0,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9024 pr->u.getset.getter = NULL; - c00211ec: 00053023 sd zero,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9017 + c00213bc: 00053023 sd zero,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9025 if ((flags & JS_PROP_HAS_GET) && JS_IsFunction(ctx, getter)) { - c00211f0: 8b85 andi a5,a5,1 - c00211f2: cf99 beqz a5,c0021210 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9017 (discriminator 1) - c00211f4: 7582 ld a1,32(sp) - c00211f6: 7622 ld a2,40(sp) - c00211f8: 8526 mv a0,s1 - c00211fa: ce2e90ef jal ra,c000a6dc - c00211fe: c909 beqz a0,c0021210 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9019 + c00213c0: 8b85 andi a5,a5,1 + c00213c2: cf99 beqz a5,c00213e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9025 (discriminator 1) + c00213c4: 7582 ld a1,32(sp) + c00213c6: 7622 ld a2,40(sp) + c00213c8: 8526 mv a0,s1 + c00213ca: c00e90ef jal ra,c000a7ca + c00213ce: c909 beqz a0,c00213e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9027 JS_VALUE_GET_OBJ(JS_DupValue(ctx, getter)); - c0021200: 7502 ld a0,32(sp) - c0021202: 75a2 ld a1,40(sp) - c0021204: c6ae50ef jal ra,c000666e - c0021208: f8aa sd a0,112(sp) - c002120a: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9018 + c00213d0: 7502 ld a0,32(sp) + c00213d2: 75a2 ld a1,40(sp) + c00213d4: b88e50ef jal ra,c000675c + c00213d8: f8aa sd a0,112(sp) + c00213da: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9026 pr->u.getset.getter = - c002120c: 00a9b023 sd a0,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9022 + c00213dc: 00a9b023 sd a0,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9030 if ((flags & JS_PROP_HAS_SET) && JS_IsFunction(ctx, setter)) { - c0021210: 8031 srli s0,s0,0xc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9021 + c00213e0: 8031 srli s0,s0,0xc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9029 pr->u.getset.setter = NULL; - c0021212: 0009b423 sd zero,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9022 + c00213e2: 0009b423 sd zero,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9030 if ((flags & JS_PROP_HAS_SET) && JS_IsFunction(ctx, setter)) { - c0021216: 8805 andi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9034 + c00213e6: 8805 andi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9042 return TRUE; - c0021218: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9022 + c00213e8: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9030 if ((flags & JS_PROP_HAS_SET) && JS_IsFunction(ctx, setter)) { - c002121a: dc2d beqz s0,c0021194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9022 (discriminator 1) - c002121c: 65ee ld a1,216(sp) - c002121e: 760e ld a2,224(sp) - c0021220: 8526 mv a0,s1 - c0021222: cbae90ef jal ra,c000a6dc - c0021226: d53d beqz a0,c0021194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9024 + c00213ea: dc2d beqz s0,c0021364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9030 (discriminator 1) + c00213ec: 65ee ld a1,216(sp) + c00213ee: 760e ld a2,224(sp) + c00213f0: 8526 mv a0,s1 + c00213f2: bd8e90ef jal ra,c000a7ca + c00213f6: d53d beqz a0,c0021364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9032 JS_VALUE_GET_OBJ(JS_DupValue(ctx, setter)); - c0021228: 656e ld a0,216(sp) - c002122a: 758e ld a1,224(sp) - c002122c: c42e50ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9023 + c00213f8: 656e ld a0,216(sp) + c00213fa: 758e ld a1,224(sp) + c00213fc: b60e50ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9031 pr->u.getset.setter = - c0021230: 00a9b423 sd a0,8(s3) - c0021234: b785 j c0021194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8955 + c0021400: 00a9b423 sd a0,8(s3) + c0021404: b785 j c0021364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8963 } else if (JS_AtomIsArrayIndex(ctx, &idx, prop)) { - c0021236: 864e mv a2,s3 - c0021238: 00ec addi a1,sp,76 - c002123a: 8526 mv a0,s1 - c002123c: b95e30ef jal ra,c0004dd0 - c0021240: ec051ee3 bnez a0,c002111c - c0021244: b7bd j c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8968 + c0021406: 864e mv a2,s3 + c0021408: 00ec addi a1,sp,76 + c002140a: 8526 mv a0,s1 + c002140c: 9c5e30ef jal ra,c0004dd0 + c0021410: ec051ee3 bnez a0,c00212ec + c0021414: b7bd j c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8976 len = idx + 1; - c0021246: d8be sw a5,112(sp) + c0021416: d8be sw a5,112(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0021248: 0207c063 bltz a5,c0021268 + c0021418: 0207c063 bltz a5,c0021438 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c002124c: cb02 sw zero,148(sp) - c002124e: c93e sw a5,144(sp) - c0021250: 674a ld a4,144(sp) - c0021252: ed02 sd zero,152(sp) - c0021254: e502 sd zero,136(sp) - c0021256: e13a sd a4,128(sp) - c0021258: 4681 li a3,0 + c002141c: cb02 sw zero,148(sp) + c002141e: c93e sw a5,144(sp) + c0021420: 674a ld a4,144(sp) + c0021422: ed02 sd zero,152(sp) + c0021424: e502 sd zero,136(sp) + c0021426: e13a sd a4,128(sp) + c0021428: 4681 li a3,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c002125a: c13e sw a5,128(sp) + c002142a: c13e sw a5,128(sp) JS_CreateProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8969 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8977 set_value(ctx, &plen->u.value, JS_NewUint32(ctx, len)); - c002125c: 660a ld a2,128(sp) - c002125e: 85d2 mv a1,s4 - c0021260: 8526 mv a0,s1 - c0021262: d21e60ef jal ra,c0007f82 - c0021266: b7b1 j c00211b2 + c002142c: 660a ld a2,128(sp) + c002142e: 85d2 mv a1,s4 + c0021430: 8526 mv a0,s1 + c0021432: c3fe60ef jal ra,c0008070 + c0021436: b7b1 j c0021382 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0021268: d21787d3 fcvt.d.wu fa5,a5 - c002126c: 469d li a3,7 - c002126e: e20787d3 fmv.x.d a5,fa5 + c0021438: d21787d3 fcvt.d.wu fa5,a5 + c002143c: 469d li a3,7 + c002143e: e20787d3 fmv.x.d a5,fa5 JS_CreateProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0021272: a13e fsd fa5,128(sp) - c0021274: 2781 sext.w a5,a5 - c0021276: b7d5 j c002125a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8972 + c0021442: a13e fsd fa5,128(sp) + c0021444: 2781 sext.w a5,a5 + c0021446: b7d5 j c002142a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8980 } else if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0021278: feb7871b addiw a4,a5,-21 - c002127c: 1742 slli a4,a4,0x30 - c002127e: 9341 srli a4,a4,0x30 - c0021280: 46a9 li a3,10 - c0021282: 00e6ef63 bltu a3,a4,c00212a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8974 + c0021448: feb7871b addiw a4,a5,-21 + c002144c: 1742 slli a4,a4,0x30 + c002144e: 9341 srli a4,a4,0x30 + c0021450: 46a9 li a3,10 + c0021452: 00e6ef63 bltu a3,a4,c0021470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8982 ret = JS_AtomIsNumericIndex(ctx, prop); - c0021286: 85ce mv a1,s3 - c0021288: 8526 mv a0,s1 - c002128a: defff0ef jal ra,c0021078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8975 + c0021456: 85ce mv a1,s3 + c0021458: 8526 mv a0,s1 + c002145a: defff0ef jal ra,c0021248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8983 if (ret != 0) { - c002128e: d115 beqz a0,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8978 + c002145e: d115 beqz a0,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8986 return JS_ThrowTypeErrorOrFalse(ctx, flags, "cannot create numeric index in typed array"); - c0021290: 0003d617 auipc a2,0x3d - c0021294: 4f060613 addi a2,a2,1264 # c005e780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8976 + c0021460: 0003d617 auipc a2,0x3d + c0021464: 58060613 addi a2,a2,1408 # c005e9e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8984 if (ret < 0) - c0021298: 06055663 bgez a0,c0021304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8989 + c0021468: 06055663 bgez a0,c00214d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8997 return -1; - c002129c: 597d li s2,-1 - c002129e: bddd j c0021194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8980 + c002146c: 597d li s2,-1 + c002146e: bddd j c0021364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8988 } else if (!(flags & JS_PROP_NO_EXOTIC)) { - c00212a0: 01145713 srli a4,s0,0x11 - c00212a4: 8b05 andi a4,a4,1 - c00212a6: f00716e3 bnez a4,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8981 + c0021470: 01145713 srli a4,s0,0x11 + c0021474: 8b05 andi a4,a4,1 + c0021476: f00716e3 bnez a4,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8989 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c00212aa: 02800693 li a3,40 - c00212ae: 02d787b3 mul a5,a5,a3 - c00212b2: 6c98 ld a4,24(s1) - c00212b4: 7b38 ld a4,112(a4) - c00212b6: 97ba add a5,a5,a4 - c00212b8: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8982 + c002147a: 02800693 li a3,40 + c002147e: 02d787b3 mul a5,a5,a3 + c0021482: 6c98 ld a4,24(s1) + c0021484: 7b38 ld a4,112(a4) + c0021486: 97ba add a5,a5,a4 + c0021488: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8990 if (em) { - c00212ba: ee078ce3 beqz a5,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8983 + c002148a: ee078ce3 beqz a5,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8991 if (em->define_own_property) { - c00212be: 0187b303 ld t1,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8984 + c002148e: 0187b303 ld t1,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8992 return em->define_own_property(ctx, JS_MKPTR(JS_TAG_OBJECT, p), - c00212c2: 57fd li a5,-1 - c00212c4: e94a sd s2,144(sp) - c00212c6: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8983 + c0021492: 57fd li a5,-1 + c0021494: e94a sd s2,144(sp) + c0021496: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8991 if (em->define_own_property) { - c00212c8: 02030163 beqz t1,c00212ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8984 + c0021498: 02030163 beqz t1,c00214ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8992 return em->define_own_property(ctx, JS_MKPTR(JS_TAG_OBJECT, p), - c00212cc: 67ee ld a5,216(sp) - c00212ce: 7802 ld a6,32(sp) - c00212d0: 78a2 ld a7,40(sp) - c00212d2: e03e sd a5,0(sp) - c00212d4: 778e ld a5,224(sp) - c00212d6: 7742 ld a4,48(sp) - c00212d8: e822 sd s0,16(sp) - c00212da: e43e sd a5,8(sp) - c00212dc: 77e2 ld a5,56(sp) - c00212de: 86ce mv a3,s3 - c00212e0: 85ca mv a1,s2 - c00212e2: 567d li a2,-1 - c00212e4: 8526 mv a0,s1 - c00212e6: 9302 jalr t1 - c00212e8: b56d j c0021192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8987 + c002149c: 67ee ld a5,216(sp) + c002149e: 7802 ld a6,32(sp) + c00214a0: 78a2 ld a7,40(sp) + c00214a2: e03e sd a5,0(sp) + c00214a4: 778e ld a5,224(sp) + c00214a6: 7742 ld a4,48(sp) + c00214a8: e822 sd s0,16(sp) + c00214aa: e43e sd a5,8(sp) + c00214ac: 77e2 ld a5,56(sp) + c00214ae: 86ce mv a3,s3 + c00214b0: 85ca mv a1,s2 + c00214b2: 567d li a2,-1 + c00214b4: 8526 mv a0,s1 + c00214b6: 9302 jalr t1 + c00214b8: b56d j c0021362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8995 ret = JS_IsExtensible(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c00212ea: 85ca mv a1,s2 - c00212ec: 567d li a2,-1 - c00212ee: 8526 mv a0,s1 - c00212f0: 8eef30ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8988 + c00214ba: 85ca mv a1,s2 + c00214bc: 567d li a2,-1 + c00214be: 8526 mv a0,s1 + c00214c0: 80cf30ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8996 if (ret < 0) - c00212f4: fa0544e3 bltz a0,c002129c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8990 + c00214c4: fa0544e3 bltz a0,c002146c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8998 if (!ret) - c00212f8: ea051de3 bnez a0,c00211b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8999 + c00214c8: ea051de3 bnez a0,c0021382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9007 return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); - c00212fc: 0003c617 auipc a2,0x3c - c0021300: 58460613 addi a2,a2,1412 # c005d880 - c0021304: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9035 + c00214cc: 0003c617 auipc a2,0x3c + c00214d0: 5e460613 addi a2,a2,1508 # c005dab0 + c00214d4: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9043 } - c0021306: 640e ld s0,192(sp) - c0021308: 60ae ld ra,200(sp) - c002130a: 794a ld s2,176(sp) - c002130c: 79aa ld s3,168(sp) - c002130e: 7a0a ld s4,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8999 + c00214d6: 640e ld s0,192(sp) + c00214d8: 60ae ld ra,200(sp) + c00214da: 794a ld s2,176(sp) + c00214dc: 79aa ld s3,168(sp) + c00214de: 7a0a ld s4,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9007 return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); - c0021310: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9035 + c00214e0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9043 } - c0021312: 74ea ld s1,184(sp) - c0021314: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8999 + c00214e2: 74ea ld s1,184(sp) + c00214e4: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9007 return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); - c0021316: db3f106f j c00130c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9027 + c00214e6: cd1f106f j c00131b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9035 if (flags & JS_PROP_HAS_VALUE) { - c002131a: 8035 srli s0,s0,0xd - c002131c: 8805 andi s0,s0,1 - c002131e: c819 beqz s0,c0021334 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9028 + c00214ea: 8035 srli s0,s0,0xd + c00214ec: 8805 andi s0,s0,1 + c00214ee: c819 beqz s0,c0021504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9036 pr->u.value = JS_DupValue(ctx, val); - c0021320: 7542 ld a0,48(sp) - c0021322: 75e2 ld a1,56(sp) - c0021324: b4ae50ef jal ra,c000666e - c0021328: 00a9b023 sd a0,0(s3) - c002132c: 00b9b423 sd a1,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9034 + c00214f0: 7542 ld a0,48(sp) + c00214f2: 75e2 ld a1,56(sp) + c00214f4: a68e50ef jal ra,c000675c + c00214f8: 00a9b023 sd a0,0(s3) + c00214fc: 00b9b423 sd a1,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9042 return TRUE; - c0021330: 4905 li s2,1 - c0021332: b58d j c0021194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9030 + c0021500: 4905 li s2,1 + c0021502: b58d j c0021364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9038 pr->u.value = JS_UNDEFINED; - c0021334: 478d li a5,3 - c0021336: 00053023 sd zero,0(a0) - c002133a: e51c sd a5,8(a0) - c002133c: bfd5 j c0021330 + c0021504: 478d li a5,3 + c0021506: 00053023 sd zero,0(a0) + c002150a: e51c sd a5,8(a0) + c002150c: bfd5 j c0021500 -00000000c002133e : +00000000c002150e : js_string_includes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41812 { - c002133e: 7131 addi sp,sp,-192 - c0021340: f526 sd s1,168(sp) - c0021342: f14a sd s2,160(sp) - c0021344: ed4e sd s3,152(sp) - c0021346: e952 sd s4,144(sp) - c0021348: e15a sd s6,128(sp) - c002134a: f8e2 sd s8,112(sp) - c002134c: 8a3e mv s4,a5 - c002134e: fd06 sd ra,184(sp) - c0021350: f922 sd s0,176(sp) - c0021352: e556 sd s5,136(sp) - c0021354: fcde sd s7,120(sp) - c0021356: f4e6 sd s9,104(sp) - c0021358: f0ea sd s10,96(sp) - c002135a: 84aa mv s1,a0 - c002135c: e02e sd a1,0(sp) - c002135e: e432 sd a2,8(sp) - c0021360: 8b36 mv s6,a3 - c0021362: 8c3a mv s8,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41810 + c002150e: 7131 addi sp,sp,-192 + c0021510: f526 sd s1,168(sp) + c0021512: f14a sd s2,160(sp) + c0021514: ed4e sd s3,152(sp) + c0021516: e952 sd s4,144(sp) + c0021518: e15a sd s6,128(sp) + c002151a: f8e2 sd s8,112(sp) + c002151c: 8a3e mv s4,a5 + c002151e: fd06 sd ra,184(sp) + c0021520: f922 sd s0,176(sp) + c0021522: e556 sd s5,136(sp) + c0021524: fcde sd s7,120(sp) + c0021526: f4e6 sd s9,104(sp) + c0021528: f0ea sd s10,96(sp) + c002152a: 84aa mv s1,a0 + c002152c: e02e sd a1,0(sp) + c002152e: e432 sd a2,8(sp) + c0021530: 8b36 mv s6,a3 + c0021532: 8c3a mv s8,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41818 str = JS_ToStringCheckObject(ctx, this_val); - c0021364: b49f90ef jal ra,c001aeac - c0021368: f02a sd a0,32(sp) - c002136a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41811 + c0021534: b49f90ef jal ra,c001b07c + c0021538: f02a sd a0,32(sp) + c002153a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41819 if (JS_IsException(str)) - c002136c: 0005879b sext.w a5,a1 - c0021370: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41810 + c002153c: 0005879b sext.w a5,a1 + c0021540: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41818 str = JS_ToStringCheckObject(ctx, this_val); - c0021372: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41811 + c0021542: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41819 if (JS_IsException(str)) - c0021374: 03279463 bne a5,s2,c002139c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41812 + c0021544: 03279463 bne a5,s2,c002156c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41820 return str; - c0021378: e0aa sd a0,64(sp) - c002137a: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41864 + c0021548: e0aa sd a0,64(sp) + c002154a: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41872 } - c002137c: 70ea ld ra,184(sp) - c002137e: 744a ld s0,176(sp) - c0021380: 6506 ld a0,64(sp) - c0021382: 65a6 ld a1,72(sp) - c0021384: 74aa ld s1,168(sp) - c0021386: 790a ld s2,160(sp) - c0021388: 69ea ld s3,152(sp) - c002138a: 6a4a ld s4,144(sp) - c002138c: 6aaa ld s5,136(sp) - c002138e: 6b0a ld s6,128(sp) - c0021390: 7be6 ld s7,120(sp) - c0021392: 7c46 ld s8,112(sp) - c0021394: 7ca6 ld s9,104(sp) - c0021396: 7d06 ld s10,96(sp) - c0021398: 6129 addi sp,sp,192 - c002139a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41813 + c002154c: 70ea ld ra,184(sp) + c002154e: 744a ld s0,176(sp) + c0021550: 6506 ld a0,64(sp) + c0021552: 65a6 ld a1,72(sp) + c0021554: 74aa ld s1,168(sp) + c0021556: 790a ld s2,160(sp) + c0021558: 69ea ld s3,152(sp) + c002155a: 6a4a ld s4,144(sp) + c002155c: 6aaa ld s5,136(sp) + c002155e: 6b0a ld s6,128(sp) + c0021560: 7be6 ld s7,120(sp) + c0021562: 7c46 ld s8,112(sp) + c0021564: 7ca6 ld s9,104(sp) + c0021566: 7d06 ld s10,96(sp) + c0021568: 6129 addi sp,sp,192 + c002156a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41821 ret = js_is_regexp(ctx, argv[0]); - c002139c: 000c3583 ld a1,0(s8) - c00213a0: 008c3603 ld a2,8(s8) - c00213a4: 8526 mv a0,s1 - c00213a6: 883f00ef jal ra,c0011c28 - c00213aa: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41814 + c002156c: 000c3583 ld a1,0(s8) + c0021570: 008c3603 ld a2,8(s8) + c0021574: 8526 mv a0,s1 + c0021576: fa0f00ef jal ra,c0011d16 + c002157a: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41822 if (ret) { - c00213ac: cd09 beqz a0,c00213c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41815 + c002157c: cd09 beqz a0,c0021596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41823 if (ret > 0) - c00213ae: 00a05963 blez a0,c00213c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41816 + c002157e: 00a05963 blez a0,c0021590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41824 JS_ThrowTypeError(ctx, "regex not supported"); - c00213b2: 0003d597 auipc a1,0x3d - c00213b6: 3fe58593 addi a1,a1,1022 # c005e7b0 - c00213ba: 8526 mv a0,s1 - c00213bc: 83af20ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41805 + c0021582: 0003d597 auipc a1,0x3d + c0021586: 48e58593 addi a1,a1,1166 # c005ea10 + c002158a: 8526 mv a0,s1 + c002158c: f59f10ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41813 JSValue str, v = JS_UNDEFINED; - c00213c0: 440d li s0,3 - c00213c2: 4d01 li s10,0 - c00213c4: a04d j c0021466 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41819 + c0021590: 440d li s0,3 + c0021592: 4d01 li s10,0 + c0021594: a04d j c0021636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41827 v = JS_ToString(ctx, argv[0]); - c00213c6: 000c3583 ld a1,0(s8) - c00213ca: 008c3603 ld a2,8(s8) - c00213ce: 8526 mv a0,s1 - c00213d0: c06f90ef jal ra,c001a7d6 - c00213d4: f82a sd a0,48(sp) - c00213d6: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41820 + c0021596: 000c3583 ld a1,0(s8) + c002159a: 008c3603 ld a2,8(s8) + c002159e: 8526 mv a0,s1 + c00215a0: c06f90ef jal ra,c001a9a6 + c00215a4: f82a sd a0,48(sp) + c00215a6: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41828 if (JS_IsException(v)) - c00213d8: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41819 + c00215a8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41827 v = JS_ToString(ctx, argv[0]); - c00213dc: 8caa mv s9,a0 - c00213de: 842e mv s0,a1 - c00213e0: 8d2a mv s10,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41820 + c00215ac: 8caa mv s9,a0 + c00215ae: 842e mv s0,a1 + c00215b0: 8d2a mv s10,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41828 if (JS_IsException(v)) - c00213e2: 09278263 beq a5,s2,c0021466 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41824 + c00215b2: 09278263 beq a5,s2,c0021636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41832 len = p->len; - c00213e6: 0049a903 lw s2,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41825 + c00215b6: 0049a903 lw s2,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41833 v_len = p1->len; - c00213ea: 00452b83 lw s7,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41824 + c00215ba: 00452b83 lw s7,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41832 len = p->len; - c00213ee: 80000637 lui a2,0x80000 - c00213f2: fff64613 not a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41826 + c00215be: 80000637 lui a2,0x80000 + c00215c2: fff64613 not a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41834 pos = (magic == 2) ? len : 0; - c00213f6: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41824 + c00215c6: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41832 len = p->len; - c00213f8: 01267933 and s2,a2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41825 + c00215c8: 01267933 and s2,a2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41833 v_len = p1->len; - c00213fc: 01767bb3 and s7,a2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41826 + c00215cc: 01767bb3 and s7,a2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41834 pos = (magic == 2) ? len : 0; - c0021400: 4781 li a5,0 - c0021402: 00ea1363 bne s4,a4,c0021408 - c0021406: 87ca mv a5,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41826 (discriminator 4) - c0021408: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41827 (discriminator 4) + c00215d0: 4781 li a5,0 + c00215d2: 00ea1363 bne s4,a4,c00215d8 + c00215d6: 87ca mv a5,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41834 (discriminator 4) + c00215d8: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41835 (discriminator 4) if (argc > 1 && !JS_IsUndefined(argv[1])) { - c002140a: 4785 li a5,1 - c002140c: 0367cc63 blt a5,s6,c0021444 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41834 + c00215da: 4785 li a5,1 + c00215dc: 0367cc63 blt a5,s6,c0021614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41842 start = pos; - c0021410: 4472 lw s0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41831 + c00215e0: 4472 lw s0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41839 len -= v_len; - c0021412: 4179093b subw s2,s2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41833 + c00215e2: 4179093b subw s2,s2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41841 if (magic == 0) { - c0021416: 060a0563 beqz s4,c0021480 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41837 + c00215e6: 060a0563 beqz s4,c0021650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41845 if (magic == 1) { - c002141a: 4785 li a5,1 - c002141c: 08fa1563 bne s4,a5,c00214a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41838 + c00215ea: 4785 li a5,1 + c00215ec: 08fa1563 bne s4,a5,c0021676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41846 if (pos > len) - c0021420: 06894263 blt s2,s0,c0021484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41843 + c00215f0: 06894263 blt s2,s0,c0021654 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41851 start = stop = pos; - c0021424: 4472 lw s0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41845 + c00215f4: 4472 lw s0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41853 if (start >= 0 && start <= stop) { - c0021426: 8922 mv s2,s0 - c0021428: 04044e63 bltz s0,c0021484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41847 + c00215f6: 8922 mv s2,s0 + c00215f8: 04044e63 bltz s0,c0021654 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41855 if (!string_cmp(p, p1, i, 0, v_len)) { - c002142c: 875e mv a4,s7 - c002142e: 4681 li a3,0 - c0021430: 8622 mv a2,s0 - c0021432: 85e6 mv a1,s9 - c0021434: 854e mv a0,s3 - c0021436: 9f0e30ef jal ra,c0004626 - c002143a: cd2d beqz a0,c00214b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41851 + c00215fc: 875e mv a4,s7 + c00215fe: 4681 li a3,0 + c0021600: 8622 mv a2,s0 + c0021602: 85e6 mv a1,s9 + c0021604: 854e mv a0,s3 + c0021606: 820e30ef jal ra,c0004626 + c002160a: cd2d beqz a0,c0021684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41859 if (i == stop) - c002143c: 05240463 beq s0,s2,c0021484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41846 + c002160c: 05240463 beq s0,s2,c0021654 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41854 for (i = start;; i++) { - c0021440: 2405 addiw s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41847 + c0021610: 2405 addiw s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41855 if (!string_cmp(p, p1, i, 0, v_len)) { - c0021442: b7ed j c002142c + c0021612: b7ed j c00215fc JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0021444: 018c3683 ld a3,24(s8) + c0021614: 018c3683 ld a3,24(s8) js_string_includes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41827 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41835 (discriminator 1) if (argc > 1 && !JS_IsUndefined(argv[1])) { - c0021448: 478d li a5,3 - c002144a: 0006871b sext.w a4,a3 - c002144e: fcf701e3 beq a4,a5,c0021410 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41828 + c0021618: 478d li a5,3 + c002161a: 0006871b sext.w a4,a3 + c002161e: fcf701e3 beq a4,a5,c00215e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41836 if (JS_ToInt32Clamp(ctx, &pos, argv[1], 0, len, 0)) - c0021452: 010c3603 ld a2,16(s8) - c0021456: 4801 li a6,0 - c0021458: 87ca mv a5,s2 - c002145a: 4701 li a4,0 - c002145c: 086c addi a1,sp,28 - c002145e: 8526 mv a0,s1 - c0021460: e6cfc0ef jal ra,c001dacc - c0021464: d555 beqz a0,c0021410 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41861 + c0021622: 010c3603 ld a2,16(s8) + c0021626: 4801 li a6,0 + c0021628: 87ca mv a5,s2 + c002162a: 4701 li a4,0 + c002162c: 086c addi a1,sp,28 + c002162e: 8526 mv a0,s1 + c0021630: e6cfc0ef jal ra,c001dc9c + c0021634: d555 beqz a0,c00215e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41869 JS_FreeValue(ctx, str); - c0021466: 7582 ld a1,32(sp) - c0021468: 7622 ld a2,40(sp) - c002146a: 8526 mv a0,s1 - c002146c: ecce60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41862 + c0021636: 7582 ld a1,32(sp) + c0021638: 7622 ld a2,40(sp) + c002163a: 8526 mv a0,s1 + c002163c: deae60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41870 JS_FreeValue(ctx, v); - c0021470: 85ea mv a1,s10 - c0021472: 8622 mv a2,s0 - c0021474: 8526 mv a0,s1 - c0021476: ec2e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41863 + c0021640: 85ea mv a1,s10 + c0021642: 8622 mv a2,s0 + c0021644: 8526 mv a0,s1 + c0021646: de0e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41871 return JS_EXCEPTION; - c002147a: 4799 li a5,6 - c002147c: e082 sd zero,64(sp) - c002147e: a015 j c00214a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41845 + c002164a: 4799 li a5,6 + c002164c: e082 sd zero,64(sp) + c002164e: a015 j c0021672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41853 if (start >= 0 && start <= stop) { - c0021480: 02045763 bgez s0,c00214ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41856 + c0021650: 02045763 bgez s0,c002167e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41864 JS_FreeValue(ctx, str); - c0021484: 7582 ld a1,32(sp) - c0021486: 7622 ld a2,40(sp) - c0021488: 8526 mv a0,s1 - c002148a: eaee60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41857 + c0021654: 7582 ld a1,32(sp) + c0021656: 7622 ld a2,40(sp) + c0021658: 8526 mv a0,s1 + c002165a: dcce60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41865 JS_FreeValue(ctx, v); - c002148e: 75c2 ld a1,48(sp) - c0021490: 7662 ld a2,56(sp) - c0021492: 8526 mv a0,s1 - c0021494: ea4e60ef jal ra,c0007b38 + c002165e: 75c2 ld a1,48(sp) + c0021660: 7662 ld a2,56(sp) + c0021662: 8526 mv a0,s1 + c0021664: dc2e60ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0021498: ca82 sw zero,84(sp) - c002149a: c8d6 sw s5,80(sp) - c002149c: 67c6 ld a5,80(sp) - c002149e: e0be sd a5,64(sp) - c00214a0: 4785 li a5,1 + c0021668: ca82 sw zero,84(sp) + c002166a: c8d6 sw s5,80(sp) + c002166c: 67c6 ld a5,80(sp) + c002166e: e0be sd a5,64(sp) + c0021670: 4785 li a5,1 js_string_includes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41863 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41871 return JS_EXCEPTION; - c00214a2: e4be sd a5,72(sp) - c00214a4: bde1 j c002137c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41841 + c0021672: e4be sd a5,72(sp) + c0021674: bde1 j c002154c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41849 pos -= v_len; - c00214a6: 4174043b subw s0,s0,s7 - c00214aa: ce22 sw s0,28(sp) - c00214ac: bfa5 j c0021424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41845 (discriminator 1) + c0021676: 4174043b subw s0,s0,s7 + c002167a: ce22 sw s0,28(sp) + c002167c: bfa5 j c00215f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41853 (discriminator 1) if (start >= 0 && start <= stop) { - c00214ae: fc894be3 blt s2,s0,c0021484 - c00214b2: bfad j c002142c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41848 + c002167e: fc894be3 blt s2,s0,c0021654 + c0021682: bfad j c00215fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41856 ret = 1; - c00214b4: 4a85 li s5,1 - c00214b6: b7f9 j c0021484 + c0021684: 4a85 li s5,1 + c0021686: b7f9 j c0021654 -00000000c00214b8 : +00000000c0021688 : js_string_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41736 -{ - c00214b8: 7171 addi sp,sp,-176 - c00214ba: f122 sd s0,160(sp) - c00214bc: ed26 sd s1,152(sp) - c00214be: e94a sd s2,144(sp) - c00214c0: e54e sd s3,136(sp) - c00214c2: f8da sd s6,112(sp) - c00214c4: f4de sd s7,104(sp) - c00214c6: f506 sd ra,168(sp) - c00214c8: 8bbe mv s7,a5 - c00214ca: e152 sd s4,128(sp) - c00214cc: fcd6 sd s5,120(sp) - c00214ce: 84aa mv s1,a0 - c00214d0: e02e sd a1,0(sp) - c00214d2: e432 sd a2,8(sp) - c00214d4: 8b36 mv s6,a3 - c00214d6: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41742 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41744 +{ + c0021688: 7171 addi sp,sp,-176 + c002168a: f122 sd s0,160(sp) + c002168c: ed26 sd s1,152(sp) + c002168e: e94a sd s2,144(sp) + c0021690: e54e sd s3,136(sp) + c0021692: f8da sd s6,112(sp) + c0021694: f4de sd s7,104(sp) + c0021696: f506 sd ra,168(sp) + c0021698: 8bbe mv s7,a5 + c002169a: e152 sd s4,128(sp) + c002169c: fcd6 sd s5,120(sp) + c002169e: 84aa mv s1,a0 + c00216a0: e02e sd a1,0(sp) + c00216a2: e432 sd a2,8(sp) + c00216a4: 8b36 mv s6,a3 + c00216a6: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41750 str = JS_ToStringCheckObject(ctx, this_val); - c00214d8: 9d5f90ef jal ra,c001aeac - c00214dc: f02a sd a0,32(sp) - c00214de: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41743 + c00216a8: 9d5f90ef jal ra,c001b07c + c00216ac: f02a sd a0,32(sp) + c00216ae: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41751 if (JS_IsException(str)) - c00214e0: 0005879b sext.w a5,a1 - c00214e4: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41742 + c00216b0: 0005879b sext.w a5,a1 + c00216b4: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41750 str = JS_ToStringCheckObject(ctx, this_val); - c00214e6: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41743 + c00216b6: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41751 if (JS_IsException(str)) - c00214e8: 03279163 bne a5,s2,c002150a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41744 + c00216b8: 03279163 bne a5,s2,c00216da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41752 return str; - c00214ec: e0aa sd a0,64(sp) - c00214ee: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41797 + c00216bc: e0aa sd a0,64(sp) + c00216be: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41805 } - c00214f0: 70aa ld ra,168(sp) - c00214f2: 740a ld s0,160(sp) - c00214f4: 6506 ld a0,64(sp) - c00214f6: 65a6 ld a1,72(sp) - c00214f8: 64ea ld s1,152(sp) - c00214fa: 694a ld s2,144(sp) - c00214fc: 69aa ld s3,136(sp) - c00214fe: 6a0a ld s4,128(sp) - c0021500: 7ae6 ld s5,120(sp) - c0021502: 7b46 ld s6,112(sp) - c0021504: 7ba6 ld s7,104(sp) - c0021506: 614d addi sp,sp,176 - c0021508: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41745 + c00216c0: 70aa ld ra,168(sp) + c00216c2: 740a ld s0,160(sp) + c00216c4: 6506 ld a0,64(sp) + c00216c6: 65a6 ld a1,72(sp) + c00216c8: 64ea ld s1,152(sp) + c00216ca: 694a ld s2,144(sp) + c00216cc: 69aa ld s3,136(sp) + c00216ce: 6a0a ld s4,128(sp) + c00216d0: 7ae6 ld s5,120(sp) + c00216d2: 7b46 ld s6,112(sp) + c00216d4: 7ba6 ld s7,104(sp) + c00216d6: 614d addi sp,sp,176 + c00216d8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41753 v = JS_ToString(ctx, argv[0]); - c002150a: 600c ld a1,0(s0) - c002150c: 6410 ld a2,8(s0) - c002150e: 8526 mv a0,s1 - c0021510: ac6f90ef jal ra,c001a7d6 - c0021514: fc2e sd a1,56(sp) - c0021516: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41746 + c00216da: 600c ld a1,0(s0) + c00216dc: 6410 ld a2,8(s0) + c00216de: 8526 mv a0,s1 + c00216e0: ac6f90ef jal ra,c001a9a6 + c00216e4: fc2e sd a1,56(sp) + c00216e6: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41754 if (JS_IsException(v)) - c0021518: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41745 + c00216e8: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41753 v = JS_ToString(ctx, argv[0]); - c002151a: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41746 + c00216ea: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41754 if (JS_IsException(v)) - c002151c: 0b258c63 beq a1,s2,c00215d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41750 + c00216ec: 0b258c63 beq a1,s2,c00217a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41758 len = p->len; - c0021520: 0049aa03 lw s4,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41751 + c00216f0: 0049aa03 lw s4,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41759 v_len = p1->len; - c0021524: 004aa783 lw a5,4(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41750 + c00216f4: 004aa783 lw a5,4(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41758 len = p->len; - c0021528: 80000937 lui s2,0x80000 - c002152c: fff94913 not s2,s2 - c0021530: 01497a33 and s4,s2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41751 + c00216f8: 80000937 lui s2,0x80000 + c00216fc: fff94913 not s2,s2 + c0021700: 01497a33 and s4,s2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41759 v_len = p1->len; - c0021534: 00f97933 and s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41752 + c0021704: 00f97933 and s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41760 if (lastIndexOf) { - c0021538: 060b8b63 beqz s7,c00215ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41753 + c0021708: 060b8b63 beqz s7,c002177e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41761 pos = len - v_len; - c002153c: 412a07bb subw a5,s4,s2 - c0021540: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41754 + c002170c: 412a07bb subw a5,s4,s2 + c0021710: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41762 if (argc > 1) { - c0021542: 4785 li a5,1 - c0021544: 0367d363 bge a5,s6,c002156a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41756 + c0021712: 4785 li a5,1 + c0021714: 0367d363 bge a5,s6,c002173a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41764 if (JS_ToFloat64(ctx, &d, argv[1])) - c0021548: 6810 ld a2,16(s0) - c002154a: 6c14 ld a3,24(s0) - c002154c: 088c addi a1,sp,80 - c002154e: 8526 mv a0,s1 - c0021550: 93efb0ef jal ra,c001c68e - c0021554: e141 bnez a0,c00215d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41758 + c0021718: 6810 ld a2,16(s0) + c002171a: 6c14 ld a3,24(s0) + c002171c: 088c addi a1,sp,80 + c002171e: 8526 mv a0,s1 + c0021720: 93efb0ef jal ra,c001c85e + c0021724: e141 bnez a0,c00217a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41766 if (!isnan(d)) { - c0021556: 27c6 fld fa5,80(sp) - c0021558: a2f7a7d3 feq.d a5,fa5,fa5 - c002155c: c799 beqz a5,c002156a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41759 + c0021726: 27c6 fld fa5,80(sp) + c0021728: a2f7a7d3 feq.d a5,fa5,fa5 + c002172c: c799 beqz a5,c002173a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41767 if (d <= 0) - c002155e: f2000753 fmv.d.x fa4,zero - c0021562: a2e787d3 fle.d a5,fa5,fa4 - c0021566: cb95 beqz a5,c002159a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41760 + c002172e: f2000753 fmv.d.x fa4,zero + c0021732: a2e787d3 fle.d a5,fa5,fa4 + c0021736: cb95 beqz a5,c002176a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41768 pos = 0; - c0021568: ce02 sw zero,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41765 + c0021738: ce02 sw zero,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41773 start = pos; - c002156a: 4472 lw s0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41767 + c002173a: 4472 lw s0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41775 inc = -1; - c002156c: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41766 + c002173c: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41774 stop = 0; - c002156e: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41779 + c002173e: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41787 if (len >= v_len && inc * (stop - start) >= 0) { - c0021570: 092a4063 blt s4,s2,c00215f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41779 (discriminator 1) - c0021574: 408b87bb subw a5,s7,s0 - c0021578: 036787bb mulw a5,a5,s6 - c002157c: 0607ca63 bltz a5,c00215f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41781 + c0021740: 092a4063 blt s4,s2,c00217c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41787 (discriminator 1) + c0021744: 408b87bb subw a5,s7,s0 + c0021748: 036787bb mulw a5,a5,s6 + c002174c: 0607ca63 bltz a5,c00217c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41789 if (!string_cmp(p, p1, i, 0, v_len)) { - c0021580: 874a mv a4,s2 - c0021582: 4681 li a3,0 - c0021584: 8622 mv a2,s0 - c0021586: 85d6 mv a1,s5 - c0021588: 854e mv a0,s3 - c002158a: 89ce30ef jal ra,c0004626 - c002158e: c135 beqz a0,c00215f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41785 + c0021750: 874a mv a4,s2 + c0021752: 4681 li a3,0 + c0021754: 8622 mv a2,s0 + c0021756: 85d6 mv a1,s5 + c0021758: 854e mv a0,s3 + c002175a: ecde20ef jal ra,c0004626 + c002175e: c135 beqz a0,c00217c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41793 if (i == stop) - c0021590: 07740063 beq s0,s7,c00215f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41780 + c0021760: 07740063 beq s0,s7,c00217c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41788 for (i = start;; i += inc) { - c0021594: 0164043b addw s0,s0,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41781 + c0021764: 0164043b addw s0,s0,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41789 if (!string_cmp(p, p1, i, 0, v_len)) { - c0021598: b7e5 j c0021580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41761 + c0021768: b7e5 j c0021750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41769 else if (d < pos) - c002159a: 47f2 lw a5,28(sp) - c002159c: d2078753 fcvt.d.w fa4,a5 - c00215a0: a2e797d3 flt.d a5,fa5,fa4 - c00215a4: d3f9 beqz a5,c002156a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41762 + c002176a: 47f2 lw a5,28(sp) + c002176c: d2078753 fcvt.d.w fa4,a5 + c0021770: a2e797d3 flt.d a5,fa5,fa4 + c0021774: d3f9 beqz a5,c002173a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41770 pos = d; - c00215a6: c20797d3 fcvt.w.d a5,fa5,rtz - c00215aa: ce3e sw a5,28(sp) - c00215ac: bf7d j c002156a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41769 + c0021776: c20797d3 fcvt.w.d a5,fa5,rtz + c002177a: ce3e sw a5,28(sp) + c002177c: bf7d j c002173a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41777 pos = 0; - c00215ae: ce02 sw zero,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41770 + c002177e: ce02 sw zero,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41778 if (argc > 1) { - c00215b0: 4785 li a5,1 - c00215b2: 0167c763 blt a5,s6,c00215c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41774 + c0021780: 4785 li a5,1 + c0021782: 0167c763 blt a5,s6,c0021790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41782 start = pos; - c00215b6: 4472 lw s0,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41775 + c0021786: 4472 lw s0,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41783 stop = len - v_len; - c00215b8: 412a0bbb subw s7,s4,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41776 + c0021788: 412a0bbb subw s7,s4,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41784 inc = 1; - c00215bc: 4b05 li s6,1 - c00215be: bf4d j c0021570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41771 + c002178c: 4b05 li s6,1 + c002178e: bf4d j c0021740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41779 if (JS_ToInt32Clamp(ctx, &pos, argv[1], 0, len, 0)) - c00215c0: 6810 ld a2,16(s0) - c00215c2: 6c14 ld a3,24(s0) - c00215c4: 4801 li a6,0 - c00215c6: 87d2 mv a5,s4 - c00215c8: 4701 li a4,0 - c00215ca: 086c addi a1,sp,28 - c00215cc: 8526 mv a0,s1 - c00215ce: cfefc0ef jal ra,c001dacc - c00215d2: d175 beqz a0,c00215b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41794 + c0021790: 6810 ld a2,16(s0) + c0021792: 6c14 ld a3,24(s0) + c0021794: 4801 li a6,0 + c0021796: 87d2 mv a5,s4 + c0021798: 4701 li a4,0 + c002179a: 086c addi a1,sp,28 + c002179c: 8526 mv a0,s1 + c002179e: cfefc0ef jal ra,c001dc9c + c00217a2: d175 beqz a0,c0021786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41802 JS_FreeValue(ctx, str); - c00215d4: 7582 ld a1,32(sp) - c00215d6: 7622 ld a2,40(sp) - c00215d8: 8526 mv a0,s1 - c00215da: d5ee60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41795 + c00217a4: 7582 ld a1,32(sp) + c00217a6: 7622 ld a2,40(sp) + c00217a8: 8526 mv a0,s1 + c00217aa: c7ce60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41803 JS_FreeValue(ctx, v); - c00215de: 75c2 ld a1,48(sp) - c00215e0: 7662 ld a2,56(sp) - c00215e2: 8526 mv a0,s1 - c00215e4: d54e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41796 + c00217ae: 75c2 ld a1,48(sp) + c00217b0: 7662 ld a2,56(sp) + c00217b2: 8526 mv a0,s1 + c00217b4: c72e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41804 return JS_EXCEPTION; - c00215e8: 4799 li a5,6 - c00215ea: e082 sd zero,64(sp) - c00215ec: e4be sd a5,72(sp) - c00215ee: b709 j c00214f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41778 + c00217b8: 4799 li a5,6 + c00217ba: e082 sd zero,64(sp) + c00217bc: e4be sd a5,72(sp) + c00217be: b709 j c00216c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41786 ret = -1; - c00215f0: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41789 + c00217c0: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41797 JS_FreeValue(ctx, str); - c00215f2: 7582 ld a1,32(sp) - c00215f4: 7622 ld a2,40(sp) - c00215f6: 8526 mv a0,s1 - c00215f8: d40e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41790 + c00217c2: 7582 ld a1,32(sp) + c00217c4: 7622 ld a2,40(sp) + c00217c6: 8526 mv a0,s1 + c00217c8: c5ee60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41798 JS_FreeValue(ctx, v); - c00215fc: 75c2 ld a1,48(sp) - c00215fe: 7662 ld a2,56(sp) - c0021600: 8526 mv a0,s1 - c0021602: d36e60ef jal ra,c0007b38 + c00217cc: 75c2 ld a1,48(sp) + c00217ce: 7662 ld a2,56(sp) + c00217d0: 8526 mv a0,s1 + c00217d2: c54e60ef jal ra,c0007c26 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0021606: ca82 sw zero,84(sp) - c0021608: c8a2 sw s0,80(sp) - c002160a: 67c6 ld a5,80(sp) - c002160c: e482 sd zero,72(sp) - c002160e: e0be sd a5,64(sp) - c0021610: b5c5 j c00214f0 - -00000000c0021612 : + c00217d6: ca82 sw zero,84(sp) + c00217d8: c8a2 sw s0,80(sp) + c00217da: 67c6 ld a5,80(sp) + c00217dc: e482 sd zero,72(sp) + c00217de: e0be sd a5,64(sp) + c00217e0: b5c5 j c00216c0 + +00000000c00217e2 : JS_ToPropertyKey(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11755 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11763 { - c0021612: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11756 + c00217e2: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11764 return JS_ToStringInternal(ctx, val, TRUE); - c0021614: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11757 + c00217e4: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11765 } - c0021616: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11756 + c00217e6: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11764 return JS_ToStringInternal(ctx, val, TRUE); - c0021618: 86cf906f j c001a684 + c00217e8: 86cf906f j c001a854 -00000000c002161c : +00000000c00217ec : JS_ValueToAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7949 { - c002161c: 7179 addi sp,sp,-48 - c002161e: f022 sd s0,32(sp) - c0021620: e432 sd a2,8(sp) - c0021622: f406 sd ra,40(sp) - c0021624: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 + c00217ec: 7179 addi sp,sp,-48 + c00217ee: f022 sd s0,32(sp) + c00217f0: e432 sd a2,8(sp) + c00217f2: f406 sd ra,40(sp) + c00217f4: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7952 tag = JS_VALUE_GET_TAG(val); - c0021626: 2601 sext.w a2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7941 + c00217f6: 2601 sext.w a2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7949 { - c0021628: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7945 + c00217f8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7953 if (tag == JS_TAG_INT && - c002162a: ea19 bnez a2,c0021640 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7946 (discriminator 1) + c00217fa: ea19 bnez a2,c0021810 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7954 (discriminator 1) (uint32_t)JS_VALUE_GET_INT(val) <= JS_ATOM_MAX_INT) { - c002162c: 4502 lw a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7945 (discriminator 1) + c00217fc: 4502 lw a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7953 (discriminator 1) if (tag == JS_TAG_INT && - c002162e: 02054763 bltz a0,c002165c + c00217fe: 02054763 bltz a0,c002182c __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c0021632: 800007b7 lui a5,0x80000 - c0021636: 8d5d or a0,a0,a5 + c0021802: 800007b7 lui a5,0x80000 + c0021806: 8d5d or a0,a0,a5 JS_ValueToAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 } - c0021638: 70a2 ld ra,40(sp) - c002163a: 7402 ld s0,32(sp) - c002163c: 6145 addi sp,sp,48 - c002163e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7949 + c0021808: 70a2 ld ra,40(sp) + c002180a: 7402 ld s0,32(sp) + c002180c: 6145 addi sp,sp,48 + c002180e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7957 } else if (tag == JS_TAG_SYMBOL) { - c0021640: 57e1 li a5,-8 - c0021642: 00f61d63 bne a2,a5,c002165c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7951 + c0021810: 57e1 li a5,-8 + c0021812: 00f61d63 bne a2,a5,c002182c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7959 atom = JS_DupAtom(ctx, js_get_atom_index(ctx->rt, p)); - c0021646: 6d08 ld a0,24(a0) - c0021648: b88e40ef jal ra,c00059d0 - c002164c: 0005059b sext.w a1,a0 - c0021650: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7964 + c0021816: 6d08 ld a0,24(a0) + c0021818: aa6e40ef jal ra,c0005abe + c002181c: 0005059b sext.w a1,a0 + c0021820: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 } - c0021652: 7402 ld s0,32(sp) - c0021654: 70a2 ld ra,40(sp) - c0021656: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7951 + c0021822: 7402 ld s0,32(sp) + c0021824: 70a2 ld ra,40(sp) + c0021826: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7959 atom = JS_DupAtom(ctx, js_get_atom_index(ctx->rt, p)); - c0021658: e73e506f j c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7954 + c0021828: d91e506f j c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7962 str = JS_ToPropertyKey(ctx, val); - c002165c: 6582 ld a1,0(sp) - c002165e: 6622 ld a2,8(sp) - c0021660: 8522 mv a0,s0 - c0021662: fb1ff0ef jal ra,c0021612 + c002182c: 6582 ld a1,0(sp) + c002182e: 6622 ld a2,8(sp) + c0021830: 8522 mv a0,s0 + c0021832: fb1ff0ef jal ra,c00217e2 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0021666: 2581 sext.w a1,a1 + c0021836: 2581 sext.w a1,a1 JS_ValueToAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7955 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7963 if (JS_IsException(str)) - c0021668: 4799 li a5,6 - c002166a: 02f58363 beq a1,a5,c0021690 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7957 + c0021838: 4799 li a5,6 + c002183a: 02f58363 beq a1,a5,c0021860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7965 if (JS_VALUE_GET_TAG(str) == JS_TAG_SYMBOL) { - c002166e: 57e1 li a5,-8 - c0021670: 00f59963 bne a1,a5,c0021682 + c002183e: 57e1 li a5,-8 + c0021840: 00f59963 bne a1,a5,c0021852 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c0021674: 85aa mv a1,a0 - c0021676: 6c08 ld a0,24(s0) + c0021844: 85aa mv a1,a0 + c0021846: 6c08 ld a0,24(s0) JS_ValueToAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 } - c0021678: 7402 ld s0,32(sp) - c002167a: 70a2 ld ra,40(sp) - c002167c: 6145 addi sp,sp,48 + c0021848: 7402 ld s0,32(sp) + c002184a: 70a2 ld ra,40(sp) + c002184c: 6145 addi sp,sp,48 js_symbol_to_atom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7944 return js_get_atom_index(ctx->rt, p); - c002167e: b52e406f j c00059d0 + c002184e: a70e406f j c0005abe JS_ValueToAtom(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7968 atom = JS_NewAtomStr(ctx, JS_VALUE_GET_STRING(str)); - c0021682: 85aa mv a1,a0 - c0021684: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7964 + c0021852: 85aa mv a1,a0 + c0021854: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7972 } - c0021686: 7402 ld s0,32(sp) - c0021688: 70a2 ld ra,40(sp) - c002168a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7960 + c0021856: 7402 ld s0,32(sp) + c0021858: 70a2 ld ra,40(sp) + c002185a: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7968 atom = JS_NewAtomStr(ctx, JS_VALUE_GET_STRING(str)); - c002168c: c4be506f j c00072d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7956 + c002185c: b69e506f j c00073c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7964 return JS_ATOM_NULL; - c0021690: 4501 li a0,0 - c0021692: b75d j c0021638 + c0021860: 4501 li a0,0 + c0021862: b75d j c0021808 -00000000c0021694 : +00000000c0021864 : js_date_Symbol_toPrimitive(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50138 { - c0021694: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50132 + c0021864: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50140 JSValueConst obj = this_val; - c0021696: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50130 + c0021866: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50138 { - c0021698: e486 sd ra,72(sp) - c002169a: e0a2 sd s0,64(sp) - c002169c: fc26 sd s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50132 + c0021868: e486 sd ra,72(sp) + c002186a: e0a2 sd s0,64(sp) + c002186c: fc26 sd s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50140 JSValueConst obj = this_val; - c002169e: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50136 + c002186e: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50144 if (!JS_IsObject(obj)) - c00216a0: 2601 sext.w a2,a2 - c00216a2: 57fd li a5,-1 - c00216a4: 00f60863 beq a2,a5,c00216b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 -} - c00216a8: 6406 ld s0,64(sp) - c00216aa: 60a6 ld ra,72(sp) - c00216ac: 74e2 ld s1,56(sp) - c00216ae: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50137 + c0021870: 2601 sext.w a2,a2 + c0021872: 57fd li a5,-1 + c0021874: 00f60863 beq a2,a5,c0021884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 +} + c0021878: 6406 ld s0,64(sp) + c002187a: 60a6 ld ra,72(sp) + c002187c: 74e2 ld s1,56(sp) + c002187e: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50145 return JS_ThrowTypeErrorNotAnObject(ctx); - c00216b0: ac8f206f j c0013978 + c0021880: 9e6f206f j c0013a66 JS_IsString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:620 return JS_VALUE_GET_TAG(v) == JS_TAG_STRING; - c00216b4: 6710 ld a2,8(a4) + c0021884: 6710 ld a2,8(a4) js_date_Symbol_toPrimitive(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50147 if (JS_IsString(argv[0])) { - c00216b6: 57e5 li a5,-7 - c00216b8: 84aa mv s1,a0 - c00216ba: 0006069b sext.w a3,a2 - c00216be: 02f69763 bne a3,a5,c00216ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50140 + c0021886: 57e5 li a5,-7 + c0021888: 84aa mv s1,a0 + c002188a: 0006069b sext.w a3,a2 + c002188e: 02f69763 bne a3,a5,c00218bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50148 hint = JS_ValueToAtom(ctx, argv[0]); - c00216c2: 630c ld a1,0(a4) - c00216c4: f59ff0ef jal ra,c002161c - c00216c8: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50141 + c0021892: 630c ld a1,0(a4) + c0021894: f59ff0ef jal ra,c00217ec + c0021898: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50149 if (hint == JS_ATOM_NULL) - c00216cc: c829 beqz s0,c002171e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50143 + c002189c: c829 beqz s0,c00218ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50151 JS_FreeAtom(ctx, hint); - c00216ce: 85a2 mv a1,s0 - c00216d0: 8526 mv a0,s1 - c00216d2: e3be50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50145 + c002189e: 85a2 mv a1,s0 + c00218a0: 8526 mv a0,s1 + c00218a2: d59e50ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50153 switch (hint) { - c00216d6: 04700793 li a5,71 - c00216da: 02f40463 beq s0,a5,c0021702 - c00216de: 04900793 li a5,73 - c00216e2: 02f40c63 beq s0,a5,c002171a - c00216e6: 47d9 li a5,22 - c00216e8: 02f40963 beq s0,a5,c002171a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 -} - c00216ec: 6406 ld s0,64(sp) - c00216ee: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50157 + c00218a6: 04700793 li a5,71 + c00218aa: 02f40463 beq s0,a5,c00218d2 + c00218ae: 04900793 li a5,73 + c00218b2: 02f40c63 beq s0,a5,c00218ea + c00218b6: 47d9 li a5,22 + c00218b8: 02f40963 beq s0,a5,c00218ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 +} + c00218bc: 6406 ld s0,64(sp) + c00218be: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50165 return JS_ThrowTypeError(ctx, "invalid hint"); - c00216f0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218c0: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c00216f2: 74e2 ld s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50157 + c00218c2: 74e2 ld s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50165 return JS_ThrowTypeError(ctx, "invalid hint"); - c00216f4: 0003d597 auipc a1,0x3d - c00216f8: 0d458593 addi a1,a1,212 # c005e7c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218c4: 0003d597 auipc a1,0x3d + c00218c8: 16458593 addi a1,a1,356 # c005ea28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c00216fc: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50157 + c00218cc: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50165 return JS_ThrowTypeError(ctx, "invalid hint"); - c00216fe: cf9f106f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50150 + c00218ce: c17f106f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50158 hint_num = HINT_NUMBER; - c0021702: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218d2: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c0021704: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50159 + c00218d4: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50167 return JS_ToPrimitive(ctx, obj, hint_num | HINT_FORCE_ORDINARY); - c0021706: 65c2 ld a1,16(sp) - c0021708: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218d6: 65c2 ld a1,16(sp) + c00218d8: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c002170a: 60a6 ld ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50159 + c00218da: 60a6 ld ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50167 return JS_ToPrimitive(ctx, obj, hint_num | HINT_FORCE_ORDINARY); - c002170c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218dc: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c002170e: 74e2 ld s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50159 + c00218de: 74e2 ld s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50167 return JS_ToPrimitive(ctx, obj, hint_num | HINT_FORCE_ORDINARY); - c0021710: 0106e693 ori a3,a3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 + c00218e0: 0106e693 ori a3,a3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 } - c0021714: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50159 + c00218e4: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50167 return JS_ToPrimitive(ctx, obj, hint_num | HINT_FORCE_ORDINARY); - c0021716: dd0f806f j c0019ce6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50145 + c00218e6: dd0f806f j c0019eb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50153 switch (hint) { - c002171a: 4681 li a3,0 - c002171c: b7e5 j c0021704 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50160 (discriminator 1) -} - c002171e: 60a6 ld ra,72(sp) - c0021720: 6406 ld s0,64(sp) - c0021722: 74e2 ld s1,56(sp) - c0021724: 4501 li a0,0 - c0021726: 4599 li a1,6 - c0021728: 6161 addi sp,sp,80 - c002172a: 8082 ret - -00000000c002172c : + c00218ea: 4681 li a3,0 + c00218ec: b7e5 j c00218d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50168 (discriminator 1) +} + c00218ee: 60a6 ld ra,72(sp) + c00218f0: 6406 ld s0,64(sp) + c00218f2: 74e2 ld s1,56(sp) + c00218f4: 4501 li a0,0 + c00218f6: 4599 li a1,6 + c00218f8: 6161 addi sp,sp,80 + c00218fa: 8082 ret + +00000000c00218fc : js_regexp_get_source(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43667 -{ - c002172c: 7171 addi sp,sp,-176 - c002172e: e94a sd s2,144(sp) - c0021730: f506 sd ra,168(sp) - c0021732: f122 sd s0,160(sp) - c0021734: ed26 sd s1,152(sp) - c0021736: e54e sd s3,136(sp) - c0021738: e152 sd s4,128(sp) - c002173a: fcd6 sd s5,120(sp) - c002173c: f8da sd s6,112(sp) - c002173e: f4de sd s7,104(sp) - c0021740: f0e2 sd s8,96(sp) - c0021742: ece6 sd s9,88(sp) - c0021744: e8ea sd s10,80(sp) - c0021746: e4ee sd s11,72(sp) - c0021748: e02e sd a1,0(sp) - c002174a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43673 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43675 +{ + c00218fc: 7171 addi sp,sp,-176 + c00218fe: e94a sd s2,144(sp) + c0021900: f506 sd ra,168(sp) + c0021902: f122 sd s0,160(sp) + c0021904: ed26 sd s1,152(sp) + c0021906: e54e sd s3,136(sp) + c0021908: e152 sd s4,128(sp) + c002190a: fcd6 sd s5,120(sp) + c002190c: f8da sd s6,112(sp) + c002190e: f4de sd s7,104(sp) + c0021910: f0e2 sd s8,96(sp) + c0021912: ece6 sd s9,88(sp) + c0021914: e8ea sd s10,80(sp) + c0021916: e4ee sd s11,72(sp) + c0021918: e02e sd a1,0(sp) + c002191a: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43681 if (JS_VALUE_GET_TAG(this_val) != JS_TAG_OBJECT) - c002174c: 0006091b sext.w s2,a2 - c0021750: 57fd li a5,-1 - c0021752: 02f90263 beq s2,a5,c0021776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43730 -} - c0021756: 740a ld s0,160(sp) - c0021758: 70aa ld ra,168(sp) - c002175a: 64ea ld s1,152(sp) - c002175c: 694a ld s2,144(sp) - c002175e: 69aa ld s3,136(sp) - c0021760: 6a0a ld s4,128(sp) - c0021762: 7ae6 ld s5,120(sp) - c0021764: 7b46 ld s6,112(sp) - c0021766: 7ba6 ld s7,104(sp) - c0021768: 7c06 ld s8,96(sp) - c002176a: 6ce6 ld s9,88(sp) - c002176c: 6d46 ld s10,80(sp) - c002176e: 6da6 ld s11,72(sp) - c0021770: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43674 + c002191c: 0006091b sext.w s2,a2 + c0021920: 57fd li a5,-1 + c0021922: 02f90263 beq s2,a5,c0021946 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43738 +} + c0021926: 740a ld s0,160(sp) + c0021928: 70aa ld ra,168(sp) + c002192a: 64ea ld s1,152(sp) + c002192c: 694a ld s2,144(sp) + c002192e: 69aa ld s3,136(sp) + c0021930: 6a0a ld s4,128(sp) + c0021932: 7ae6 ld s5,120(sp) + c0021934: 7b46 ld s6,112(sp) + c0021936: 7ba6 ld s7,104(sp) + c0021938: 7c06 ld s8,96(sp) + c002193a: 6ce6 ld s9,88(sp) + c002193c: 6d46 ld s10,80(sp) + c002193e: 6da6 ld s11,72(sp) + c0021940: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43682 return JS_ThrowTypeErrorNotAnObject(ctx); - c0021772: a06f206f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43676 + c0021942: 924f206f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43684 if (js_same_value(ctx, this_val, ctx->class_proto[JS_CLASS_REGEXP])) - c0021776: 613c ld a5,64(a0) - c0021778: 842a mv s0,a0 - c002177a: 1207b683 ld a3,288(a5) # ffffffff80000120 <_ebss+0xfffffffebfefeffa> - c002177e: 1287b703 ld a4,296(a5) - c0021782: d40e60ef jal ra,c0007cc2 - c0021786: e551 bnez a0,c0021812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43679 + c0021946: 613c ld a5,64(a0) + c0021948: 842a mv s0,a0 + c002194a: 1207b683 ld a3,288(a5) # ffffffff80000120 <_ebss+0xfffffffebfefeffa> + c002194e: 1287b703 ld a4,296(a5) + c0021952: c5ee60ef jal ra,c0007db0 + c0021956: e551 bnez a0,c00219e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43687 re = js_get_regexp(ctx, this_val, TRUE); - c0021788: 6782 ld a5,0(sp) + c0021958: 6782 ld a5,0(sp) js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c002178a: 4749 li a4,18 - c002178c: 0067d683 lhu a3,6(a5) - c0021790: 04e69963 bne a3,a4,c00217e2 + c002195a: 4749 li a4,18 + c002195c: 0067d683 lhu a3,6(a5) + c0021960: 04e69963 bne a3,a4,c00219b2 js_regexp_get_source(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43683 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43691 p = re->pattern; - c0021794: 0307ba03 ld s4,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43685 + c0021964: 0307ba03 ld s4,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43693 if (p->len == 0) { - c0021798: 800009b7 lui s3,0x80000 - c002179c: fff9c993 not s3,s3 - c00217a0: 004a2683 lw a3,4(s4) - c00217a4: 0136f633 and a2,a3,s3 - c00217a8: 2601 sext.w a2,a2 - c00217aa: c625 beqz a2,c0021812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43689 + c0021968: 800009b7 lui s3,0x80000 + c002196c: fff9c993 not s3,s3 + c0021970: 004a2683 lw a3,4(s4) + c0021974: 0136f633 and a2,a3,s3 + c0021978: 2601 sext.w a2,a2 + c002197a: c625 beqz a2,c00219e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43697 string_buffer_init2(ctx, b, p->len, p->is_wide_char); - c00217ac: 01f6d69b srliw a3,a3,0x1f - c00217b0: 100c addi a1,sp,32 - c00217b2: 8522 mv a0,s0 - c00217b4: be2f70ef jal ra,c0018b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43693 + c002197c: 01f6d69b srliw a3,a3,0x1f + c0021980: 100c addi a1,sp,32 + c0021982: 8522 mv a0,s0 + c0021984: be2f70ef jal ra,c0018d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43701 for (i = 0, n = p->len; i < n;) { - c00217b8: 004a2783 lw a5,4(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43692 + c0021988: 004a2783 lw a5,4(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43700 bra = 0; - c00217bc: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43693 + c002198c: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43701 for (i = 0, n = p->len; i < n;) { - c00217be: 4d01 li s10,0 - c00217c0: 00f9f9b3 and s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 + c002198e: 4d01 li s10,0 + c0021990: 00f9f9b3 and s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43703 switch (c = string_get(p, i++)) { - c00217c4: 05b00a93 li s5,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43705 + c0021994: 05b00a93 li s5,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43713 if (i < n && string_get(p, i) == ']') - c00217c8: 05d00b13 li s6,93 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 + c0021998: 05d00b13 li s6,93 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43703 switch (c = string_get(p, i++)) { - c00217cc: 05c00b93 li s7,92 - c00217d0: 4c35 li s8,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43693 (discriminator 1) + c002199c: 05c00b93 li s7,92 + c00219a0: 4c35 li s8,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43701 (discriminator 1) for (i = 0, n = p->len; i < n;) { - c00217d2: 073d4563 blt s10,s3,c002183c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43729 + c00219a2: 073d4563 blt s10,s3,c0021a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43737 return string_buffer_end(b); - c00217d6: 1008 addi a0,sp,32 - c00217d8: d32f80ef jal ra,c0019d0a - c00217dc: e82a sd a0,16(sp) - c00217de: ec2e sd a1,24(sp) - c00217e0: a801 j c00217f0 + c00219a6: 1008 addi a0,sp,32 + c00219a8: d32f80ef jal ra,c0019eda + c00219ac: e82a sd a0,16(sp) + c00219ae: ec2e sd a1,24(sp) + c00219b0: a801 j c00219c0 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43511 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c00217e2: 45c9 li a1,18 - c00217e4: 8522 mv a0,s0 - c00217e6: d6bf10ef jal ra,c0013550 + c00219b2: 45c9 li a1,18 + c00219b4: 8522 mv a0,s0 + c00219b6: c89f10ef jal ra,c001363e js_regexp_get_source(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43681 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43689 return JS_EXCEPTION; - c00217ea: 4799 li a5,6 - c00217ec: e802 sd zero,16(sp) - c00217ee: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43730 (discriminator 1) -} - c00217f0: 70aa ld ra,168(sp) - c00217f2: 740a ld s0,160(sp) - c00217f4: 6542 ld a0,16(sp) - c00217f6: 65e2 ld a1,24(sp) - c00217f8: 64ea ld s1,152(sp) - c00217fa: 694a ld s2,144(sp) - c00217fc: 69aa ld s3,136(sp) - c00217fe: 6a0a ld s4,128(sp) - c0021800: 7ae6 ld s5,120(sp) - c0021802: 7b46 ld s6,112(sp) - c0021804: 7ba6 ld s7,104(sp) - c0021806: 7c06 ld s8,96(sp) - c0021808: 6ce6 ld s9,88(sp) - c002180a: 6d46 ld s10,80(sp) - c002180c: 6da6 ld s11,72(sp) - c002180e: 614d addi sp,sp,176 - c0021810: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43687 - return JS_NewString(ctx, "(?:)"); - c0021812: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43730 -} - c0021814: 740a ld s0,160(sp) - c0021816: 70aa ld ra,168(sp) - c0021818: 64ea ld s1,152(sp) - c002181a: 694a ld s2,144(sp) - c002181c: 69aa ld s3,136(sp) - c002181e: 6a0a ld s4,128(sp) - c0021820: 7ae6 ld s5,120(sp) - c0021822: 7b46 ld s6,112(sp) - c0021824: 7ba6 ld s7,104(sp) - c0021826: 7c06 ld s8,96(sp) - c0021828: 6ce6 ld s9,88(sp) - c002182a: 6d46 ld s10,80(sp) - c002182c: 6da6 ld s11,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43687 + c00219ba: 4799 li a5,6 + c00219bc: e802 sd zero,16(sp) + c00219be: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43738 (discriminator 1) +} + c00219c0: 70aa ld ra,168(sp) + c00219c2: 740a ld s0,160(sp) + c00219c4: 6542 ld a0,16(sp) + c00219c6: 65e2 ld a1,24(sp) + c00219c8: 64ea ld s1,152(sp) + c00219ca: 694a ld s2,144(sp) + c00219cc: 69aa ld s3,136(sp) + c00219ce: 6a0a ld s4,128(sp) + c00219d0: 7ae6 ld s5,120(sp) + c00219d2: 7b46 ld s6,112(sp) + c00219d4: 7ba6 ld s7,104(sp) + c00219d6: 7c06 ld s8,96(sp) + c00219d8: 6ce6 ld s9,88(sp) + c00219da: 6d46 ld s10,80(sp) + c00219dc: 6da6 ld s11,72(sp) + c00219de: 614d addi sp,sp,176 + c00219e0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 return JS_NewString(ctx, "(?:)"); - c002182e: 0003d597 auipc a1,0x3d - c0021832: faa58593 addi a1,a1,-86 # c005e7d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43730 + c00219e2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43738 } - c0021836: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43687 + c00219e4: 740a ld s0,160(sp) + c00219e6: 70aa ld ra,168(sp) + c00219e8: 64ea ld s1,152(sp) + c00219ea: 694a ld s2,144(sp) + c00219ec: 69aa ld s3,136(sp) + c00219ee: 6a0a ld s4,128(sp) + c00219f0: 7ae6 ld s5,120(sp) + c00219f2: 7b46 ld s6,112(sp) + c00219f4: 7ba6 ld s7,104(sp) + c00219f6: 7c06 ld s8,96(sp) + c00219f8: 6ce6 ld s9,88(sp) + c00219fa: 6d46 ld s10,80(sp) + c00219fc: 6da6 ld s11,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 return JS_NewString(ctx, "(?:)"); - c0021838: 9eaf806f j c0019a22 + c00219fe: 0003d597 auipc a1,0x3d + c0021a02: 03a58593 addi a1,a1,58 # c005ea38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43738 +} + c0021a06: 614d addi sp,sp,176 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 + return JS_NewString(ctx, "(?:)"); + c0021a08: 9eaf806f j c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43703 switch (c = string_get(p, i++)) { - c002183c: 85ea mv a1,s10 - c002183e: 8552 mv a0,s4 - c0021840: 927e20ef jal ra,c0004166 - c0021844: 001d0d9b addiw s11,s10,1 - c0021848: 84aa mv s1,a0 - c002184a: 05550f63 beq a0,s5,c00218a8 - c002184e: 00aacf63 blt s5,a0,c002186c - c0021852: 09850363 beq a0,s8,c00218d8 - c0021856: 02f00793 li a5,47 - c002185a: 06f50763 beq a0,a5,c00218c8 - c002185e: 47a9 li a5,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43712 + c0021a0c: 85ea mv a1,s10 + c0021a0e: 8552 mv a0,s4 + c0021a10: f56e20ef jal ra,c0004166 + c0021a14: 001d0d9b addiw s11,s10,1 + c0021a18: 84aa mv s1,a0 + c0021a1a: 05550f63 beq a0,s5,c0021a78 + c0021a1e: 00aacf63 blt s5,a0,c0021a3c + c0021a22: 09850363 beq a0,s8,c0021aa8 + c0021a26: 02f00793 li a5,47 + c0021a2a: 06f50763 beq a0,a5,c0021a98 + c0021a2e: 47a9 li a5,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43720 c2 = 'n'; - c0021860: 06e00413 li s0,110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 + c0021a30: 06e00413 li s0,110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43703 switch (c = string_get(p, i++)) { - c0021864: 06f50763 beq a0,a5,c00218d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43694 + c0021a34: 06f50763 beq a0,a5,c0021aa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43702 c2 = -1; - c0021868: 844a mv s0,s2 - c002186a: a00d j c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43695 + c0021a38: 844a mv s0,s2 + c0021a3a: a00d j c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43703 switch (c = string_get(p, i++)) { - c002186c: 01750663 beq a0,s7,c0021878 - c0021870: ff651ce3 bne a0,s6,c0021868 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43701 + c0021a3c: 01750663 beq a0,s7,c0021a48 + c0021a40: ff651ce3 bne a0,s6,c0021a38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43709 bra = 0; - c0021874: 4c81 li s9,0 - c0021876: bfcd j c0021868 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43694 + c0021a44: 4c81 li s9,0 + c0021a46: bfcd j c0021a38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43702 c2 = -1; - c0021878: 844a mv s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43697 + c0021a48: 844a mv s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43705 if (i < n) - c002187a: 013dd963 bge s11,s3,c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43698 + c0021a4a: 013dd963 bge s11,s3,c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43706 c2 = string_get(p, i++); - c002187e: 85ee mv a1,s11 - c0021880: 8552 mv a0,s4 - c0021882: 2d09 addiw s10,s10,2 - c0021884: 8e3e20ef jal ra,c0004166 - c0021888: 842a mv s0,a0 - c002188a: 8dea mv s11,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43725 + c0021a4e: 85ee mv a1,s11 + c0021a50: 8552 mv a0,s4 + c0021a52: 2d09 addiw s10,s10,2 + c0021a54: f12e20ef jal ra,c0004166 + c0021a58: 842a mv s0,a0 + c0021a5a: 8dea mv s11,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43733 string_buffer_putc16(b, c); - c002188c: 0004859b sext.w a1,s1 - c0021890: 1008 addi a0,sp,32 - c0021892: 927f70ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43726 + c0021a5c: 0004859b sext.w a1,s1 + c0021a60: 1008 addi a0,sp,32 + c0021a62: 927f70ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43734 if (c2 >= 0) - c0021896: 00044763 bltz s0,c00218a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43727 + c0021a66: 00044763 bltz s0,c0021a74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43735 string_buffer_putc16(b, c2); - c002189a: 0004059b sext.w a1,s0 - c002189e: 1008 addi a0,sp,32 - c00218a0: 919f70ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43720 (discriminator 1) + c0021a6a: 0004059b sext.w a1,s0 + c0021a6e: 1008 addi a0,sp,32 + c0021a70: 919f70ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43728 (discriminator 1) c = '\\'; - c00218a4: 8d6e mv s10,s11 - c00218a6: b735 j c00217d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43694 + c0021a74: 8d6e mv s10,s11 + c0021a76: b735 j c00219a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43702 c2 = -1; - c00218a8: 844a mv s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43704 + c0021a78: 844a mv s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43712 if (!bra) { - c00218aa: fe0c91e3 bnez s9,c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43707 + c0021a7a: fe0c91e3 bnez s9,c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43715 bra = 1; - c00218ae: 4c85 li s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43705 + c0021a7e: 4c85 li s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43713 if (i < n && string_get(p, i) == ']') - c00218b0: fd3ddee3 bge s11,s3,c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43705 (discriminator 1) - c00218b4: 85ee mv a1,s11 - c00218b6: 8552 mv a0,s4 - c00218b8: 8afe20ef jal ra,c0004166 - c00218bc: 842a mv s0,a0 - c00218be: 03651063 bne a0,s6,c00218de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43706 + c0021a80: fd3ddee3 bge s11,s3,c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43713 (discriminator 1) + c0021a84: 85ee mv a1,s11 + c0021a86: 8552 mv a0,s4 + c0021a88: edee20ef jal ra,c0004166 + c0021a8c: 842a mv s0,a0 + c0021a8e: 03651063 bne a0,s6,c0021aae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43714 c2 = string_get(p, i++); - c00218c2: 002d0d9b addiw s11,s10,2 - c00218c6: b7d9 j c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43694 + c0021a92: 002d0d9b addiw s11,s10,2 + c0021a96: b7d9 j c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43702 c2 = -1; - c00218c8: 844a mv s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43719 + c0021a98: 844a mv s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43727 if (!bra) { - c00218ca: fc0c91e3 bnez s9,c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43721 + c0021a9a: fc0c91e3 bnez s9,c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43729 c2 = '/'; - c00218ce: 02f00413 li s0,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43711 + c0021a9e: 02f00413 li s0,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43719 c = '\\'; - c00218d2: 05c00493 li s1,92 - c00218d6: bf5d j c002188c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43716 + c0021aa2: 05c00493 li s1,92 + c0021aa6: bf5d j c0021a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43724 c2 = 'r'; - c00218d8: 07200413 li s0,114 - c00218dc: bfdd j c00218d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43694 + c0021aa8: 07200413 li s0,114 + c0021aac: bfdd j c0021aa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43702 c2 = -1; - c00218de: 844a mv s0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43707 + c0021aae: 844a mv s0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43715 bra = 1; - c00218e0: 4c85 li s9,1 - c00218e2: b76d j c002188c + c0021ab0: 4c85 li s9,1 + c0021ab2: b76d j c0021a5c -00000000c00218e4 : +00000000c0021ab4 : js_bigint_to_string1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11283 -{ - c00218e4: 7175 addi sp,sp,-144 - c00218e6: 87b2 mv a5,a2 - c00218e8: fca6 sd s1,120(sp) - c00218ea: e82e sd a1,16(sp) - c00218ec: ec32 sd a2,24(sp) - c00218ee: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11289 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11291 +{ + c0021ab4: 7175 addi sp,sp,-144 + c0021ab6: 87b2 mv a5,a2 + c0021ab8: fca6 sd s1,120(sp) + c0021aba: e82e sd a1,16(sp) + c0021abc: ec32 sd a2,24(sp) + c0021abe: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11297 a = JS_ToBigInt(ctx, &a_s, val); - c00218f0: 862e mv a2,a1 - c00218f2: 86be mv a3,a5 - c00218f4: 00ac addi a1,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11283 -{ - c00218f6: e122 sd s0,128(sp) - c00218f8: e506 sd ra,136(sp) - c00218fa: f8ca sd s2,112(sp) - c00218fc: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11289 + c0021ac0: 862e mv a2,a1 + c0021ac2: 86be mv a3,a5 + c0021ac4: 00ac addi a1,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11291 +{ + c0021ac6: e122 sd s0,128(sp) + c0021ac8: e506 sd ra,136(sp) + c0021aca: f8ca sd s2,112(sp) + c0021acc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11297 a = JS_ToBigInt(ctx, &a_s, val); - c00218fe: d56fe0ef jal ra,c001fe54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11290 + c0021ace: d56fe0ef jal ra,c0020024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11298 if (!a) - c0021902: e509 bnez a0,c002190c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11291 + c0021ad2: e509 bnez a0,c0021adc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11299 return JS_EXCEPTION; - c0021904: fc02 sd zero,56(sp) - c0021906: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11303 + c0021ad4: fc02 sd zero,56(sp) + c0021ad6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11311 return ret; - c0021908: e0be sd a5,64(sp) - c002190a: a091 j c002194e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11293 + c0021ad8: e0be sd a5,64(sp) + c0021ada: a091 j c0021b1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11301 if (a->expn == BF_EXP_ZERO) - c002190c: 6918 ld a4,16(a0) - c002190e: 57fd li a5,-1 - c0021910: 17fe slli a5,a5,0x3f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11292 + c0021adc: 6918 ld a4,16(a0) + c0021ade: 57fd li a5,-1 + c0021ae0: 17fe slli a5,a5,0x3f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11300 saved_sign = a->sign; - c0021912: 00852903 lw s2,8(a0) - c0021916: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11293 + c0021ae2: 00852903 lw s2,8(a0) + c0021ae6: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11301 if (a->expn == BF_EXP_ZERO) - c0021918: 00f71463 bne a4,a5,c0021920 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11294 + c0021ae8: 00f71463 bne a4,a5,c0021af0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11302 a->sign = 0; - c002191c: 00052423 sw zero,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11295 + c0021aec: 00052423 sw zero,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11303 str = bf_ftoa(NULL, a, radix, 0, BF_RNDZ | BF_FTOA_FORMAT_FRAC | - c0021920: 00410737 lui a4,0x410 - c0021924: 8626 mv a2,s1 - c0021926: 0705 addi a4,a4,1 - c0021928: 4681 li a3,0 - c002192a: 4501 li a0,0 - c002192c: e42e sd a1,8(sp) - c002192e: 4122f0ef jal ra,c0050d40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11297 + c0021af0: 00410737 lui a4,0x410 + c0021af4: 8626 mv a2,s1 + c0021af6: 0705 addi a4,a4,1 + c0021af8: 4681 li a3,0 + c0021afa: 4501 li a0,0 + c0021afc: e42e sd a1,8(sp) + c0021afe: 4122f0ef jal ra,c0050f10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11305 a->sign = saved_sign; - c0021932: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11295 + c0021b02: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11303 str = bf_ftoa(NULL, a, radix, 0, BF_RNDZ | BF_FTOA_FORMAT_FRAC | - c0021934: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11298 + c0021b04: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11306 JS_FreeBigInt(ctx, a, &a_s); - c0021936: 00b0 addi a2,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11297 + c0021b06: 00b0 addi a2,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11305 a->sign = saved_sign; - c0021938: 0125a423 sw s2,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11298 + c0021b08: 0125a423 sw s2,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11306 JS_FreeBigInt(ctx, a, &a_s); - c002193c: 8522 mv a0,s0 - c002193e: e2ce60ef jal ra,c0007f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11299 + c0021b0c: 8522 mv a0,s0 + c0021b0e: d4ae60ef jal ra,c0008058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11307 if (!str) - c0021942: ec91 bnez s1,c002195e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11300 + c0021b12: ec91 bnez s1,c0021b2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11308 return JS_ThrowOutOfMemory(ctx); - c0021944: 8522 mv a0,s0 - c0021946: ad6f30ef jal ra,c0014c1c - c002194a: fc2a sd a0,56(sp) - c002194c: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11304 (discriminator 1) -} - c002194e: 60aa ld ra,136(sp) - c0021950: 640a ld s0,128(sp) - c0021952: 7562 ld a0,56(sp) - c0021954: 6586 ld a1,64(sp) - c0021956: 74e6 ld s1,120(sp) - c0021958: 7946 ld s2,112(sp) - c002195a: 6149 addi sp,sp,144 - c002195c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11301 + c0021b14: 8522 mv a0,s0 + c0021b16: 9f4f30ef jal ra,c0014d0a + c0021b1a: fc2a sd a0,56(sp) + c0021b1c: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11312 (discriminator 1) +} + c0021b1e: 60aa ld ra,136(sp) + c0021b20: 640a ld s0,128(sp) + c0021b22: 7562 ld a0,56(sp) + c0021b24: 6586 ld a1,64(sp) + c0021b26: 74e6 ld s1,120(sp) + c0021b28: 7946 ld s2,112(sp) + c0021b2a: 6149 addi sp,sp,144 + c0021b2c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11309 ret = JS_NewString(ctx, str); - c002195e: 85a6 mv a1,s1 - c0021960: 8522 mv a0,s0 - c0021962: 8c0f80ef jal ra,c0019a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11302 + c0021b2e: 85a6 mv a1,s1 + c0021b30: 8522 mv a0,s0 + c0021b32: 8c0f80ef jal ra,c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11310 bf_free(ctx->bf_ctx, str); - c0021966: 19043783 ld a5,400(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11301 + c0021b36: 19043783 ld a5,400(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11309 ret = JS_NewString(ctx, str); - c002196a: f42a sd a0,40(sp) - c002196c: f82e sd a1,48(sp) + c0021b3a: f42a sd a0,40(sp) + c0021b3c: f82e sd a1,48(sp) bf_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:202 return s->realloc_func(s->realloc_opaque, ptr, size); - c002196e: 6798 ld a4,8(a5) - c0021970: 6388 ld a0,0(a5) - c0021972: 4601 li a2,0 - c0021974: 85a6 mv a1,s1 - c0021976: 9702 jalr a4 + c0021b3e: 6798 ld a4,8(a5) + c0021b40: 6388 ld a0,0(a5) + c0021b42: 4601 li a2,0 + c0021b44: 85a6 mv a1,s1 + c0021b46: 9702 jalr a4 js_bigint_to_string1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11303 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11311 return ret; - c0021978: 77a2 ld a5,40(sp) - c002197a: fc3e sd a5,56(sp) - c002197c: 77c2 ld a5,48(sp) - c002197e: b769 j c0021908 + c0021b48: 77a2 ld a5,40(sp) + c0021b4a: fc3e sd a5,56(sp) + c0021b4c: 77c2 ld a5,48(sp) + c0021b4e: b769 j c0021ad8 -00000000c0021980 : +00000000c0021b50 : js_bigint_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50746 { - c0021980: 7159 addi sp,sp,-112 - c0021982: f0a2 sd s0,96(sp) - c0021984: eca6 sd s1,88(sp) - c0021986: e8ca sd s2,80(sp) - c0021988: e4ce sd s3,72(sp) - c002198a: f486 sd ra,104(sp) - c002198c: 842a mv s0,a0 - c002198e: 8936 mv s2,a3 - c0021990: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50743 + c0021b50: 7159 addi sp,sp,-112 + c0021b52: f0a2 sd s0,96(sp) + c0021b54: eca6 sd s1,88(sp) + c0021b56: e8ca sd s2,80(sp) + c0021b58: e4ce sd s3,72(sp) + c0021b5a: f486 sd ra,104(sp) + c0021b5c: 842a mv s0,a0 + c0021b5e: 8936 mv s2,a3 + c0021b60: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50751 val = js_thisBigIntValue(ctx, this_val); - c0021992: c4ef20ef jal ra,c0013de0 - c0021996: e82a sd a0,16(sp) - c0021998: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50744 + c0021b62: b6cf20ef jal ra,c0013ece + c0021b66: e82a sd a0,16(sp) + c0021b68: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50752 if (JS_IsException(val)) - c002199a: 0005879b sext.w a5,a1 - c002199e: 4999 li s3,6 - c00219a0: 01379d63 bne a5,s3,c00219ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50745 + c0021b6a: 0005879b sext.w a5,a1 + c0021b6e: 4999 li s3,6 + c0021b70: 01379d63 bne a5,s3,c0021b8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50753 return val; - c00219a4: f82a sd a0,48(sp) - c00219a6: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50759 -} - c00219a8: 70a6 ld ra,104(sp) - c00219aa: 7406 ld s0,96(sp) - c00219ac: 7542 ld a0,48(sp) - c00219ae: 75e2 ld a1,56(sp) - c00219b0: 64e6 ld s1,88(sp) - c00219b2: 6946 ld s2,80(sp) - c00219b4: 69a6 ld s3,72(sp) - c00219b6: 6165 addi sp,sp,112 - c00219b8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50746 + c0021b74: f82a sd a0,48(sp) + c0021b76: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50767 +} + c0021b78: 70a6 ld ra,104(sp) + c0021b7a: 7406 ld s0,96(sp) + c0021b7c: 7542 ld a0,48(sp) + c0021b7e: 75e2 ld a1,56(sp) + c0021b80: 64e6 ld s1,88(sp) + c0021b82: 6946 ld s2,80(sp) + c0021b84: 69a6 ld s3,72(sp) + c0021b86: 6165 addi sp,sp,112 + c0021b88: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50754 if (argc == 0 || JS_IsUndefined(argv[0])) { - c00219ba: 02090863 beqz s2,c00219ea + c0021b8a: 02090863 beqz s2,c0021bba JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00219be: 6490 ld a2,8(s1) + c0021b8e: 6490 ld a2,8(s1) js_bigint_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50746 (discriminator 1) - c00219c0: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50747 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50754 (discriminator 1) + c0021b90: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50755 (discriminator 1) base = 10; - c00219c2: 46a9 li a3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50746 (discriminator 1) + c0021b92: 46a9 li a3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50754 (discriminator 1) if (argc == 0 || JS_IsUndefined(argv[0])) { - c00219c4: 0006071b sext.w a4,a2 - c00219c8: 02f70263 beq a4,a5,c00219ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50749 + c0021b94: 0006071b sext.w a4,a2 + c0021b98: 02f70263 beq a4,a5,c0021bbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50757 base = js_get_radix(ctx, argv[0]); - c00219cc: 608c ld a1,0(s1) - c00219ce: 8522 mv a0,s0 - c00219d0: bdffb0ef jal ra,c001d5ae - c00219d4: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50750 + c0021b9c: 608c ld a1,0(s1) + c0021b9e: 8522 mv a0,s0 + c0021ba0: bdffb0ef jal ra,c001d77e + c0021ba4: 86aa mv a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50758 if (base < 0) - c00219d6: 00055b63 bgez a0,c00219ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50757 + c0021ba6: 00055b63 bgez a0,c0021bbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50765 JS_FreeValue(ctx, val); - c00219da: 65c2 ld a1,16(sp) - c00219dc: 6662 ld a2,24(sp) - c00219de: 8522 mv a0,s0 - c00219e0: 958e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50758 + c0021baa: 65c2 ld a1,16(sp) + c0021bac: 6662 ld a2,24(sp) + c0021bae: 8522 mv a0,s0 + c0021bb0: 876e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50766 return JS_EXCEPTION; - c00219e4: f802 sd zero,48(sp) - c00219e6: fc4e sd s3,56(sp) - c00219e8: b7c1 j c00219a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50747 + c0021bb4: f802 sd zero,48(sp) + c0021bb6: fc4e sd s3,56(sp) + c0021bb8: b7c1 j c0021b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50755 base = 10; - c00219ea: 46a9 li a3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50753 + c0021bba: 46a9 li a3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50761 ret = js_bigint_to_string1(ctx, val, base); - c00219ec: 6662 ld a2,24(sp) - c00219ee: 65c2 ld a1,16(sp) - c00219f0: 8522 mv a0,s0 - c00219f2: ef3ff0ef jal ra,c00218e4 - c00219f6: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50754 + c0021bbc: 6662 ld a2,24(sp) + c0021bbe: 65c2 ld a1,16(sp) + c0021bc0: 8522 mv a0,s0 + c0021bc2: ef3ff0ef jal ra,c0021ab4 + c0021bc6: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50762 JS_FreeValue(ctx, val); - c00219f8: 6662 ld a2,24(sp) - c00219fa: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50753 + c0021bc8: 6662 ld a2,24(sp) + c0021bca: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50761 ret = js_bigint_to_string1(ctx, val, base); - c00219fc: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50754 + c0021bcc: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50762 JS_FreeValue(ctx, val); - c00219fe: 8522 mv a0,s0 - c0021a00: 938e60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50755 + c0021bce: 8522 mv a0,s0 + c0021bd0: 856e60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50763 return ret; - c0021a04: 7782 ld a5,32(sp) - c0021a06: f83e sd a5,48(sp) - c0021a08: 77a2 ld a5,40(sp) - c0021a0a: fc3e sd a5,56(sp) - c0021a0c: bf71 j c00219a8 + c0021bd4: 7782 ld a5,32(sp) + c0021bd6: f83e sd a5,48(sp) + c0021bd8: 77a2 ld a5,40(sp) + c0021bda: fc3e sd a5,56(sp) + c0021bdc: bf71 j c0021b78 -00000000c0021a0e : +00000000c0021bde : js_bigint_to_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11307 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11315 { - c0021a0e: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11308 + c0021bde: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11316 return js_bigint_to_string1(ctx, val, 10); - c0021a10: 46a9 li a3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11309 + c0021be0: 46a9 li a3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11317 } - c0021a12: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11308 + c0021be2: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11316 return js_bigint_to_string1(ctx, val, 10); - c0021a14: ed1ff06f j c00218e4 + c0021be4: ed1ff06f j c0021ab4 -00000000c0021a18 : +00000000c0021be8 : get_date_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49626 { - c0021a18: 7169 addi sp,sp,-304 - c0021a1a: ea4a sd s2,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49625 + c0021be8: 7169 addi sp,sp,-304 + c0021bea: ea4a sd s2,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49633 fmt = (magic >> 4) & 0x0F; - c0021a1c: 4047d913 srai s2,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49618 + c0021bec: 4047d913 srai s2,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49626 { - c0021a20: e64e sd s3,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49628 + c0021bf0: e64e sd s3,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49636 res = get_date_fields(ctx, this_val, fields, fmt & 1, 0); - c0021a22: 00197713 andi a4,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49618 + c0021bf2: 00197713 andi a4,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49626 { - c0021a26: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49628 + c0021bf6: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49636 res = get_date_fields(ctx, this_val, fields, fmt & 1, 0); - c0021a28: 18b4 addi a3,sp,120 - c0021a2a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49618 -{ - c0021a2c: ee26 sd s1,280(sp) - c0021a2e: f606 sd ra,296(sp) - c0021a30: f222 sd s0,288(sp) - c0021a32: e252 sd s4,256(sp) - c0021a34: fdd6 sd s5,248(sp) - c0021a36: b5a2 fsd fs0,232(sp) - c0021a38: b1a6 fsd fs1,224(sp) - c0021a3a: adca fsd fs2,216(sp) - c0021a3c: a9ce fsd fs3,208(sp) - c0021a3e: a5d2 fsd fs4,200(sp) - c0021a40: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49628 + c0021bf8: 18b4 addi a3,sp,120 + c0021bfa: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49626 +{ + c0021bfc: ee26 sd s1,280(sp) + c0021bfe: f606 sd ra,296(sp) + c0021c00: f222 sd s0,288(sp) + c0021c02: e252 sd s4,256(sp) + c0021c04: fdd6 sd s5,248(sp) + c0021c06: b5a2 fsd fs0,232(sp) + c0021c08: b1a6 fsd fs1,224(sp) + c0021c0a: adca fsd fs2,216(sp) + c0021c0c: a9ce fsd fs3,208(sp) + c0021c0e: a5d2 fsd fs4,200(sp) + c0021c10: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49636 res = get_date_fields(ctx, this_val, fields, fmt & 1, 0); - c0021a42: e83fa0ef jal ra,c001c8c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49629 + c0021c12: e83fa0ef jal ra,c001ca94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49637 if (res < 0) - c0021a46: 02055563 bgez a0,c0021a70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49630 + c0021c16: 02055563 bgez a0,c0021c40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49638 return JS_EXCEPTION; - c0021a4a: 4799 li a5,6 - c0021a4c: f402 sd zero,40(sp) - c0021a4e: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49720 (discriminator 1) -} - c0021a50: 70b2 ld ra,296(sp) - c0021a52: 7412 ld s0,288(sp) - c0021a54: 7522 ld a0,40(sp) - c0021a56: 75c2 ld a1,48(sp) - c0021a58: 64f2 ld s1,280(sp) - c0021a5a: 6952 ld s2,272(sp) - c0021a5c: 69b2 ld s3,264(sp) - c0021a5e: 6a12 ld s4,256(sp) - c0021a60: 7aee ld s5,248(sp) - c0021a62: 342e fld fs0,232(sp) - c0021a64: 348e fld fs1,224(sp) - c0021a66: 296e fld fs2,216(sp) - c0021a68: 29ce fld fs3,208(sp) - c0021a6a: 2a2e fld fs4,200(sp) - c0021a6c: 6155 addi sp,sp,304 - c0021a6e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49625 + c0021c1a: 4799 li a5,6 + c0021c1c: f402 sd zero,40(sp) + c0021c1e: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49728 (discriminator 1) +} + c0021c20: 70b2 ld ra,296(sp) + c0021c22: 7412 ld s0,288(sp) + c0021c24: 7522 ld a0,40(sp) + c0021c26: 75c2 ld a1,48(sp) + c0021c28: 64f2 ld s1,280(sp) + c0021c2a: 6952 ld s2,272(sp) + c0021c2c: 69b2 ld s3,264(sp) + c0021c2e: 6a12 ld s4,256(sp) + c0021c30: 7aee ld s5,248(sp) + c0021c32: 342e fld fs0,232(sp) + c0021c34: 348e fld fs1,224(sp) + c0021c36: 296e fld fs2,216(sp) + c0021c38: 29ce fld fs3,208(sp) + c0021c3a: 2a2e fld fs4,200(sp) + c0021c3c: 6155 addi sp,sp,304 + c0021c3e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49633 fmt = (magic >> 4) & 0x0F; - c0021a70: 00f97913 andi s2,s2,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49631 + c0021c40: 00f97913 andi s2,s2,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49639 if (!res) { - c0021a74: e515 bnez a0,c0021aa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49632 + c0021c44: e515 bnez a0,c0021c70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49640 if (fmt == 2) - c0021a76: 4789 li a5,2 - c0021a78: 00f91c63 bne s2,a5,c0021a90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49633 + c0021c46: 4789 li a5,2 + c0021c48: 00f91c63 bne s2,a5,c0021c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49641 return JS_ThrowRangeError(ctx, "Date value is NaN"); - c0021a7c: 0003d597 auipc a1,0x3d - c0021a80: d6458593 addi a1,a1,-668 # c005e7e0 - c0021a84: 8526 mv a0,s1 - c0021a86: ed5f20ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49719 + c0021c4c: 0003d597 auipc a1,0x3d + c0021c50: df458593 addi a1,a1,-524 # c005ea40 + c0021c54: 8526 mv a0,s1 + c0021c56: df3f20ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49727 return JS_NewStringLen(ctx, buf, pos); - c0021a8a: f42a sd a0,40(sp) - c0021a8c: f82e sd a1,48(sp) - c0021a8e: b7c9 j c0021a50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49635 + c0021c5a: f42a sd a0,40(sp) + c0021c5c: f82e sd a1,48(sp) + c0021c5e: b7c9 j c0021c20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49643 return JS_NewString(ctx, "Invalid Date"); - c0021a90: 8526 mv a0,s1 - c0021a92: 0003d597 auipc a1,0x3d - c0021a96: d6658593 addi a1,a1,-666 # c005e7f8 - c0021a9a: f89f70ef jal ra,c0019a22 - c0021a9e: b7f5 j c0021a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49650 + c0021c60: 8526 mv a0,s1 + c0021c62: 0003d597 auipc a1,0x3d + c0021c66: df658593 addi a1,a1,-522 # c005ea58 + c0021c6a: f89f70ef jal ra,c0019bf2 + c0021c6e: b7f5 j c0021c5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49658 if (part & 1) { /* date part */ - c0021aa0: 0019f413 andi s0,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49641 + c0021c70: 0019f413 andi s0,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49649 h = fields[3]; - c0021aa4: 2a4a fld fs4,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49642 + c0021c74: 2a4a fld fs4,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49650 m = fields[4]; - c0021aa6: 29ea fld fs3,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49643 + c0021c76: 29ea fld fs3,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 s = fields[5]; - c0021aa8: 390a fld fs2,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49644 + c0021c78: 390a fld fs2,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49652 ms = fields[6]; - c0021aaa: 342a fld fs0,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 + c0021c7a: 342a fld fs0,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49654 tz = fields[8]; - c0021aac: 34ea fld fs1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49650 + c0021c7c: 34ea fld fs1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49658 if (part & 1) { /* date part */ - c0021aae: cc05 beqz s0,c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49638 + c0021c7e: cc05 beqz s0,c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 y = fields[0]; - c0021ab0: 37e6 fld fa5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 + c0021c80: 37e6 fld fa5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 switch(fmt) { - c0021ab2: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49626 + c0021c82: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49634 part = magic & 0x0F; - c0021ab4: 00f9fa93 andi s5,s3,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49638 + c0021c84: 00f9fa93 andi s5,s3,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 y = fields[0]; - c0021ab8: c20798d3 fcvt.w.d a7,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49639 + c0021c88: c20798d3 fcvt.w.d a7,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49647 mon = fields[1]; - c0021abc: 278a fld fa5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49638 + c0021c8c: 278a fld fa5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 y = fields[0]; - c0021abe: 2881 sext.w a7,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49639 + c0021c8e: 2881 sext.w a7,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49647 mon = fields[1]; - c0021ac0: c2079a53 fcvt.w.d s4,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49640 + c0021c90: c2079a53 fcvt.w.d s4,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49648 d = fields[2]; - c0021ac4: 27aa fld fa5,136(sp) - c0021ac6: c2079753 fcvt.w.d a4,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49645 + c0021c94: 27aa fld fa5,136(sp) + c0021c96: c2079753 fcvt.w.d a4,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49653 wd = fields[7]; - c0021aca: 37ca fld fa5,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49640 + c0021c9a: 37ca fld fa5,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49648 d = fields[2]; - c0021acc: 2701 sext.w a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49645 + c0021c9c: 2701 sext.w a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49653 wd = fields[7]; - c0021ace: c20796d3 fcvt.w.d a3,fa5,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 + c0021c9e: c20796d3 fcvt.w.d a3,fa5,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 switch(fmt) { - c0021ad2: 12f90363 beq s2,a5,c0021bf8 - c0021ad6: 0527c563 blt a5,s2,c0021b20 - c0021ada: 08090963 beqz s2,c0021b6c - c0021ade: 4785 li a5,1 - c0021ae0: 0cf90363 beq s2,a5,c0021ba6 - c0021ae4: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49688 + c0021ca2: 12f90363 beq s2,a5,c0021dc8 + c0021ca6: 0527c563 blt a5,s2,c0021cf0 + c0021caa: 08090963 beqz s2,c0021d3c + c0021cae: 4785 li a5,1 + c0021cb0: 0cf90363 beq s2,a5,c0021d76 + c0021cb4: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49696 if (part & 2) { /* time part */ - c0021ae6: 0029f793 andi a5,s3,2 - c0021aea: c78d beqz a5,c0021b14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49641 + c0021cb6: 0029f793 andi a5,s3,2 + c0021cba: c78d beqz a5,c0021ce4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49649 h = fields[3]; - c0021aec: c20a1653 fcvt.w.d a2,fs4,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49642 + c0021cbc: c20a1653 fcvt.w.d a2,fs4,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49650 m = fields[4]; - c0021af0: c2099753 fcvt.w.d a4,fs3,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49643 + c0021cc0: c2099753 fcvt.w.d a4,fs3,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 s = fields[5]; - c0021af4: c20917d3 fcvt.w.d a5,fs2,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49689 + c0021cc4: c20917d3 fcvt.w.d a5,fs2,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49697 switch(fmt) { - c0021af8: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49641 + c0021cc8: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49649 h = fields[3]; - c0021afa: 0006069b sext.w a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49642 + c0021cca: 0006069b sext.w a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49650 m = fields[4]; - c0021afe: 2701 sext.w a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49643 + c0021cce: 2701 sext.w a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 s = fields[5]; - c0021b00: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49689 + c0021cd0: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49697 switch(fmt) { - c0021b02: 20b90263 beq s2,a1,c0021d06 - c0021b06: 1525c663 blt a1,s2,c0021c52 - c0021b0a: 16090f63 beqz s2,c0021c88 - c0021b0e: 4605 li a2,1 - c0021b10: 18c90963 beq s2,a2,c0021ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49719 + c0021cd2: 20b90263 beq s2,a1,c0021ed6 + c0021cd6: 1525c663 blt a1,s2,c0021e22 + c0021cda: 16090f63 beqz s2,c0021e58 + c0021cde: 4605 li a2,1 + c0021ce0: 18c90963 beq s2,a2,c0021e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49727 return JS_NewStringLen(ctx, buf, pos); - c0021b14: 8622 mv a2,s0 - c0021b16: 182c addi a1,sp,56 - c0021b18: 8526 mv a0,s1 - c0021b1a: f76f70ef jal ra,c0019290 - c0021b1e: b7b5 j c0021a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49651 + c0021ce4: 8622 mv a2,s0 + c0021ce6: 182c addi a1,sp,56 + c0021ce8: 8526 mv a0,s1 + c0021cea: f76f70ef jal ra,c0019460 + c0021cee: b7b5 j c0021c5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 switch(fmt) { - c0021b20: 478d li a5,3 - c0021b22: fcf911e3 bne s2,a5,c0021ae4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49679 + c0021cf0: 478d li a5,3 + c0021cf2: fcf911e3 bne s2,a5,c0021cb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49687 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021b26: 0008a793 slti a5,a7,0 - c0021b2a: 8846 mv a6,a7 - c0021b2c: 0791 addi a5,a5,4 - c0021b2e: 001a069b addiw a3,s4,1 - c0021b32: 0003d617 auipc a2,0x3d - c0021b36: d2660613 addi a2,a2,-730 # c005e858 - c0021b3a: 04000593 li a1,64 - c0021b3e: 1828 addi a0,sp,56 - c0021b40: 6c4320ef jal ra,c0054204 - c0021b44: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49681 + c0021cf6: 0008a793 slti a5,a7,0 + c0021cfa: 8846 mv a6,a7 + c0021cfc: 0791 addi a5,a5,4 + c0021cfe: 001a069b addiw a3,s4,1 + c0021d02: 0003d617 auipc a2,0x3d + c0021d06: db660613 addi a2,a2,-586 # c005eab8 + c0021d0a: 04000593 li a1,64 + c0021d0e: 1828 addi a0,sp,56 + c0021d10: 6c4320ef jal ra,c00543d4 + c0021d14: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49689 if (part == 3) { - c0021b46: fb2a90e3 bne s5,s2,c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49682 + c0021d16: fb2a90e3 bne s5,s2,c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49690 buf[pos++] = ','; - c0021b4a: 0198 addi a4,sp,192 - c0021b4c: 972a add a4,a4,a0 - c0021b4e: 02c00693 li a3,44 - c0021b52: f6d70c23 sb a3,-136(a4) # 40ff78 <__clzdi2-0xbfbf0088> - c0021b56: 0015079b addiw a5,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49683 + c0021d1a: 0198 addi a4,sp,192 + c0021d1c: 972a add a4,a4,a0 + c0021d1e: 02c00693 li a3,44 + c0021d22: f6d70c23 sb a3,-136(a4) # 40ff78 <__clzdi2-0xbfbf0088> + c0021d26: 0015079b addiw a5,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49691 buf[pos++] = ' '; - c0021b5a: 0198 addi a4,sp,192 - c0021b5c: 97ba add a5,a5,a4 - c0021b5e: 02000713 li a4,32 - c0021b62: 0025041b addiw s0,a0,2 - c0021b66: f6e78c23 sb a4,-136(a5) - c0021b6a: bfb5 j c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49655 + c0021d2a: 0198 addi a4,sp,192 + c0021d2c: 97ba add a5,a5,a4 + c0021d2e: 02000713 li a4,32 + c0021d32: 0025041b addiw s0,a0,2 + c0021d36: f6e78c23 sb a4,-136(a5) + c0021d3a: bfb5 j c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49663 day_names + wd * 3, d, - c0021b6c: 478d li a5,3 - c0021b6e: 02d786bb mulw a3,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49653 + c0021d3c: 478d li a5,3 + c0021d3e: 02d786bb mulw a3,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49661 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021b72: 00045617 auipc a2,0x45 - c0021b76: ee660613 addi a2,a2,-282 # c0066a58 - c0021b7a: 0008a813 slti a6,a7,0 - c0021b7e: 0811 addi a6,a6,4 - c0021b80: 04000593 li a1,64 - c0021b84: 1828 addi a0,sp,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49656 + c0021d42: 00045617 auipc a2,0x45 + c0021d46: f7660613 addi a2,a2,-138 # c0066cb8 + c0021d4a: 0008a813 slti a6,a7,0 + c0021d4e: 0811 addi a6,a6,4 + c0021d50: 04000593 li a1,64 + c0021d54: 1828 addi a0,sp,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49664 month_names + mon * 3, 4 + (y < 0), y); - c0021b86: 034787bb mulw a5,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49653 + c0021d56: 034787bb mulw a5,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49661 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021b8a: 97b2 add a5,a5,a2 - c0021b8c: 00040617 auipc a2,0x40 - c0021b90: 4e460613 addi a2,a2,1252 # c0062070 - c0021b94: 96b2 add a3,a3,a2 - c0021b96: 0003d617 auipc a2,0x3d - c0021b9a: c7260613 addi a2,a2,-910 # c005e808 - c0021b9e: 666320ef jal ra,c0054204 - c0021ba2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49657 + c0021d5a: 97b2 add a5,a5,a2 + c0021d5c: 00040617 auipc a2,0x40 + c0021d60: 57460613 addi a2,a2,1396 # c00622d0 + c0021d64: 96b2 add a3,a3,a2 + c0021d66: 0003d617 auipc a2,0x3d + c0021d6a: d0260613 addi a2,a2,-766 # c005ea68 + c0021d6e: 666320ef jal ra,c00543d4 + c0021d72: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49665 break; - c0021ba4: b789 j c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49661 + c0021d74: b789 j c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49669 day_names + wd * 3, - c0021ba6: 478d li a5,3 - c0021ba8: 02d786bb mulw a3,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 + c0021d76: 478d li a5,3 + c0021d78: 02d786bb mulw a3,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49667 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021bac: 0008a813 slti a6,a7,0 - c0021bb0: 00040617 auipc a2,0x40 - c0021bb4: 4c060613 addi a2,a2,1216 # c0062070 - c0021bb8: 0811 addi a6,a6,4 - c0021bba: 04000593 li a1,64 - c0021bbe: 1828 addi a0,sp,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49662 + c0021d7c: 0008a813 slti a6,a7,0 + c0021d80: 00040617 auipc a2,0x40 + c0021d84: 55060613 addi a2,a2,1360 # c00622d0 + c0021d88: 0811 addi a6,a6,4 + c0021d8a: 04000593 li a1,64 + c0021d8e: 1828 addi a0,sp,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49670 month_names + mon * 3, d, 4 + (y < 0), y); - c0021bc0: 03478a3b mulw s4,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 + c0021d90: 03478a3b mulw s4,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49667 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021bc4: 87ba mv a5,a4 - c0021bc6: 00045717 auipc a4,0x45 - c0021bca: e9270713 addi a4,a4,-366 # c0066a58 - c0021bce: 96b2 add a3,a3,a2 - c0021bd0: 0003d617 auipc a2,0x3d - c0021bd4: c5060613 addi a2,a2,-944 # c005e820 - c0021bd8: 9752 add a4,a4,s4 - c0021bda: 62a320ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49663 + c0021d94: 87ba mv a5,a4 + c0021d96: 00045717 auipc a4,0x45 + c0021d9a: f2270713 addi a4,a4,-222 # c0066cb8 + c0021d9e: 96b2 add a3,a3,a2 + c0021da0: 0003d617 auipc a2,0x3d + c0021da4: ce060613 addi a2,a2,-800 # c005ea80 + c0021da8: 9752 add a4,a4,s4 + c0021daa: 62a320ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49671 if (part == 3) { - c0021bde: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49659 + c0021dae: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49667 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021be0: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49663 + c0021db0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49671 if (part == 3) { - c0021be2: f0fa92e3 bne s5,a5,c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49664 + c0021db2: f0fa92e3 bne s5,a5,c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49672 buf[pos++] = ' '; - c0021be6: 019c addi a5,sp,192 - c0021be8: 97aa add a5,a5,a0 - c0021bea: 02000713 li a4,32 - c0021bee: f6e78c23 sb a4,-136(a5) - c0021bf2: 0015041b addiw s0,a0,1 - c0021bf6: bdc5 j c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49668 + c0021db6: 019c addi a5,sp,192 + c0021db8: 97aa add a5,a5,a0 + c0021dba: 02000713 li a4,32 + c0021dbe: f6e78c23 sb a4,-136(a5) + c0021dc2: 0015041b addiw s0,a0,1 + c0021dc6: bdc5 j c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49676 if (y >= 0 && y <= 9999) { - c0021bf8: 6789 lui a5,0x2 - c0021bfa: 70f78793 addi a5,a5,1807 # 270f <__clzdi2-0xbfffd8f1> - c0021bfe: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49669 + c0021dc8: 6789 lui a5,0x2 + c0021dca: 70f78793 addi a5,a5,1807 # 270f <__clzdi2-0xbfffd8f1> + c0021dce: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49677 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c00: 86c6 mv a3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49668 + c0021dd0: 86c6 mv a3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49676 if (y >= 0 && y <= 9999) { - c0021c02: 0317ed63 bltu a5,a7,c0021c3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49669 + c0021dd2: 0317ed63 bltu a5,a7,c0021e0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49677 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c06: 0003d617 auipc a2,0x3d - c0021c0a: c3260613 addi a2,a2,-974 # c005e838 - c0021c0e: 04000593 li a1,64 - c0021c12: 1828 addi a0,sp,56 - c0021c14: 5f0320ef jal ra,c0054204 - c0021c18: 4411 li s0,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49672 + c0021dd6: 0003d617 auipc a2,0x3d + c0021dda: cc260613 addi a2,a2,-830 # c005ea98 + c0021dde: 04000593 li a1,64 + c0021de2: 1828 addi a0,sp,56 + c0021de4: 5f0320ef jal ra,c00543d4 + c0021de8: 4411 li s0,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49680 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c1a: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49675 + c0021dea: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49683 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c1c: 183c addi a5,sp,56 - c0021c1e: 04000593 li a1,64 - c0021c22: 8d81 sub a1,a1,s0 - c0021c24: 00878533 add a0,a5,s0 - c0021c28: 001a069b addiw a3,s4,1 - c0021c2c: 0003d617 auipc a2,0x3d - c0021c30: c1c60613 addi a2,a2,-996 # c005e848 - c0021c34: 5d0320ef jal ra,c0054204 - c0021c38: 9c29 addw s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49677 + c0021dec: 183c addi a5,sp,56 + c0021dee: 04000593 li a1,64 + c0021df2: 8d81 sub a1,a1,s0 + c0021df4: 00878533 add a0,a5,s0 + c0021df8: 001a069b addiw a3,s4,1 + c0021dfc: 0003d617 auipc a2,0x3d + c0021e00: cac60613 addi a2,a2,-852 # c005eaa8 + c0021e04: 5d0320ef jal ra,c00543d4 + c0021e08: 9c29 addw s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49685 break; - c0021c3a: b575 j c0021ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49672 + c0021e0a: b575 j c0021cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49680 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c3c: 0003d617 auipc a2,0x3d - c0021c40: c0460613 addi a2,a2,-1020 # c005e840 - c0021c44: 04000593 li a1,64 - c0021c48: 1828 addi a0,sp,56 - c0021c4a: 5ba320ef jal ra,c0054204 - c0021c4e: 842a mv s0,a0 - c0021c50: b7e9 j c0021c1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49689 + c0021e0c: 0003d617 auipc a2,0x3d + c0021e10: c9460613 addi a2,a2,-876 # c005eaa0 + c0021e14: 04000593 li a1,64 + c0021e18: 1828 addi a0,sp,56 + c0021e1a: 5ba320ef jal ra,c00543d4 + c0021e1e: 842a mv s0,a0 + c0021e20: b7e9 j c0021dea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49697 switch(fmt) { - c0021c52: 458d li a1,3 - c0021c54: ecb910e3 bne s2,a1,c0021b14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49714 + c0021e22: 458d li a1,3 + c0021e24: ecb910e3 bne s2,a1,c0021ce4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49722 "%02d:%02d:%02d %cM", (h + 11) % 12 + 1, m, s, - c0021c58: 4831 li a6,12 - c0021c5a: 262d addiw a2,a2,11 - c0021c5c: 0306663b remw a2,a2,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49713 + c0021e28: 4831 li a6,12 + c0021e2a: 262d addiw a2,a2,11 + c0021e2c: 0306663b remw a2,a2,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49721 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c60: 182c addi a1,sp,56 - c0021c62: 00858533 add a0,a1,s0 - c0021c66: 48ad li a7,11 - c0021c68: 04000593 li a1,64 - c0021c6c: 8d81 sub a1,a1,s0 - c0021c6e: 04100813 li a6,65 - c0021c72: 2605 addiw a2,a2,1 - c0021c74: 00d8d463 bge a7,a3,c0021c7c - c0021c78: 05000813 li a6,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49713 (discriminator 4) - c0021c7c: 86b2 mv a3,a2 - c0021c7e: 0003d617 auipc a2,0x3d - c0021c82: c2a60613 addi a2,a2,-982 # c005e8a8 - c0021c86: a861 j c0021d1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49691 + c0021e30: 182c addi a1,sp,56 + c0021e32: 00858533 add a0,a1,s0 + c0021e36: 48ad li a7,11 + c0021e38: 04000593 li a1,64 + c0021e3c: 8d81 sub a1,a1,s0 + c0021e3e: 04100813 li a6,65 + c0021e42: 2605 addiw a2,a2,1 + c0021e44: 00d8d463 bge a7,a3,c0021e4c + c0021e48: 05000813 li a6,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49721 (discriminator 4) + c0021e4c: 86b2 mv a3,a2 + c0021e4e: 0003d617 auipc a2,0x3d + c0021e52: cba60613 addi a2,a2,-838 # c005eb08 + c0021e56: a861 j c0021eee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49699 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c88: 04000593 li a1,64 - c0021c8c: 1828 addi a0,sp,56 - c0021c8e: 0003d617 auipc a2,0x3d - c0021c92: bda60613 addi a2,a2,-1062 # c005e868 - c0021c96: 8d81 sub a1,a1,s0 - c0021c98: 9522 add a0,a0,s0 - c0021c9a: 56a320ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49713 (discriminator 4) + c0021e58: 04000593 li a1,64 + c0021e5c: 1828 addi a0,sp,56 + c0021e5e: 0003d617 auipc a2,0x3d + c0021e62: c6a60613 addi a2,a2,-918 # c005eac8 + c0021e66: 8d81 sub a1,a1,s0 + c0021e68: 9522 add a0,a0,s0 + c0021e6a: 56a320ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49721 (discriminator 4) pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021c9e: 9c29 addw s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49716 (discriminator 4) + c0021e6e: 9c29 addw s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49724 (discriminator 4) break; - c0021ca0: bd95 j c0021b14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 + c0021e70: bd95 j c0021ce4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49654 tz = fields[8]; - c0021ca2: c20499d3 fcvt.w.d s3,fs1,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49695 + c0021e72: c20499d3 fcvt.w.d s3,fs1,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49703 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021ca6: 04000593 li a1,64 - c0021caa: 1828 addi a0,sp,56 - c0021cac: 8d81 sub a1,a1,s0 - c0021cae: 9522 add a0,a0,s0 - c0021cb0: 0003d617 auipc a2,0x3d - c0021cb4: bb860613 addi a2,a2,-1096 # c005e868 - c0021cb8: 54c320ef jal ra,c0054204 - c0021cbc: 00a407bb addw a5,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49646 + c0021e76: 04000593 li a1,64 + c0021e7a: 1828 addi a0,sp,56 + c0021e7c: 8d81 sub a1,a1,s0 + c0021e7e: 9522 add a0,a0,s0 + c0021e80: 0003d617 auipc a2,0x3d + c0021e84: c4860613 addi a2,a2,-952 # c005eac8 + c0021e88: 54c320ef jal ra,c00543d4 + c0021e8c: 00a407bb addw a5,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49654 tz = fields[8]; - c0021cc0: 0009891b sext.w s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49697 + c0021e90: 0009891b sext.w s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49705 if (tz < 0) { - c0021cc4: 0017841b addiw s0,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49701 + c0021e94: 0017841b addiw s0,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49709 buf[pos++] = '+'; - c0021cc8: 02b00713 li a4,43 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49697 + c0021e98: 02b00713 li a4,43 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49705 if (tz < 0) { - c0021ccc: 00095663 bgez s2,c0021cd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49699 + c0021e9c: 00095663 bgez s2,c0021ea8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49707 tz = -tz; - c0021cd0: 4130093b negw s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49698 + c0021ea0: 4130093b negw s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49706 buf[pos++] = '-'; - c0021cd4: 02d00713 li a4,45 - c0021cd8: 0194 addi a3,sp,192 - c0021cda: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49704 + c0021ea4: 02d00713 li a4,45 + c0021ea8: 0194 addi a3,sp,192 + c0021eaa: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49712 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021cdc: 03c00693 li a3,60 - c0021ce0: f6e78c23 sb a4,-136(a5) - c0021ce4: 02d9673b remw a4,s2,a3 - c0021ce8: 183c addi a5,sp,56 - c0021cea: 04000593 li a1,64 - c0021cee: 0003d617 auipc a2,0x3d - c0021cf2: b9260613 addi a2,a2,-1134 # c005e880 - c0021cf6: 8d81 sub a1,a1,s0 - c0021cf8: 00878533 add a0,a5,s0 - c0021cfc: 02d946bb divw a3,s2,a3 - c0021d00: 504320ef jal ra,c0054204 - c0021d04: bf69 j c0021c9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49644 + c0021eac: 03c00693 li a3,60 + c0021eb0: f6e78c23 sb a4,-136(a5) + c0021eb4: 02d9673b remw a4,s2,a3 + c0021eb8: 183c addi a5,sp,56 + c0021eba: 04000593 li a1,64 + c0021ebe: 0003d617 auipc a2,0x3d + c0021ec2: c2260613 addi a2,a2,-990 # c005eae0 + c0021ec6: 8d81 sub a1,a1,s0 + c0021ec8: 00878533 add a0,a5,s0 + c0021ecc: 02d946bb divw a3,s2,a3 + c0021ed0: 504320ef jal ra,c00543d4 + c0021ed4: bf69 j c0021e6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49652 ms = fields[6]; - c0021d06: c2041853 fcvt.w.d a6,fs0,rtz -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49709 + c0021ed6: c2041853 fcvt.w.d a6,fs0,rtz +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49717 pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021d0a: 04000593 li a1,64 - c0021d0e: 1828 addi a0,sp,56 - c0021d10: 2801 sext.w a6,a6 - c0021d12: 0003d617 auipc a2,0x3d - c0021d16: b7e60613 addi a2,a2,-1154 # c005e890 - c0021d1a: 8d81 sub a1,a1,s0 - c0021d1c: 9522 add a0,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49713 (discriminator 4) + c0021eda: 04000593 li a1,64 + c0021ede: 1828 addi a0,sp,56 + c0021ee0: 2801 sext.w a6,a6 + c0021ee2: 0003d617 auipc a2,0x3d + c0021ee6: c0e60613 addi a2,a2,-1010 # c005eaf0 + c0021eea: 8d81 sub a1,a1,s0 + c0021eec: 9522 add a0,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49721 (discriminator 4) pos += snprintf(buf + pos, sizeof(buf) - pos, - c0021d1e: 4e6320ef jal ra,c0054204 - c0021d22: bfb5 j c0021c9e + c0021eee: 4e6320ef jal ra,c00543d4 + c0021ef2: bfb5 j c0021e6e -00000000c0021d24 : +00000000c0021ef4 : js_date_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49731 -{ - c0021d24: 7151 addi sp,sp,-240 - c0021d26: eda6 sd s1,216(sp) - c0021d28: e5ce sd s3,200(sp) - c0021d2a: f586 sd ra,232(sp) - c0021d2c: f1a2 sd s0,224(sp) - c0021d2e: e9ca sd s2,208(sp) - c0021d30: e1d2 sd s4,192(sp) - c0021d32: fd56 sd s5,184(sp) - c0021d34: f95a sd s6,176(sp) - c0021d36: f55e sd s7,168(sp) - c0021d38: ad22 fsd fs0,152(sp) - c0021d3a: a926 fsd fs1,144(sp) - c0021d3c: a54a fsd fs2,136(sp) - c0021d3e: a14e fsd fs3,128(sp) - c0021d40: e02e sd a1,0(sp) - c0021d42: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49739 +{ + c0021ef4: 7151 addi sp,sp,-240 + c0021ef6: eda6 sd s1,216(sp) + c0021ef8: e5ce sd s3,200(sp) + c0021efa: f586 sd ra,232(sp) + c0021efc: f1a2 sd s0,224(sp) + c0021efe: e9ca sd s2,208(sp) + c0021f00: e1d2 sd s4,192(sp) + c0021f02: fd56 sd s5,184(sp) + c0021f04: f95a sd s6,176(sp) + c0021f06: f55e sd s7,168(sp) + c0021f08: ad22 fsd fs0,152(sp) + c0021f0a: a926 fsd fs1,144(sp) + c0021f0c: a54a fsd fs2,136(sp) + c0021f0e: a14e fsd fs3,128(sp) + c0021f10: e02e sd a1,0(sp) + c0021f12: e432 sd a2,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 - c0021d44: 0006099b sext.w s3,a2 + c0021f14: 0006099b sext.w s3,a2 js_date_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49737 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49745 if (JS_IsUndefined(new_target)) { - c0021d48: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49731 + c0021f18: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49739 { - c0021d4a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49737 + c0021f1a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49745 if (JS_IsUndefined(new_target)) { - c0021d4c: 00f98363 beq s3,a5,c0021d52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49742 + c0021f1c: 00f98363 beq s3,a5,c0021f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49750 if (n == 0) { - c0021d50: e6c1 bnez a3,c0021dd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49743 + c0021f20: e6c1 bnez a3,c0021fa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49751 val = date_now(); - c0021d52: 9a7e30ef jal ra,c00056f8 - c0021d56: d22577d3 fcvt.d.l fa5,a0 - c0021d5a: a83e fsd fa5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49791 + c0021f22: 8c5e30ef jal ra,c00057e6 + c0021f26: d22577d3 fcvt.d.l fa5,a0 + c0021f2a: a83e fsd fa5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49799 rv = js_create_from_ctor(ctx, new_target, JS_CLASS_DATE); - c0021d5c: 6582 ld a1,0(sp) - c0021d5e: 6622 ld a2,8(sp) - c0021d60: 46a9 li a3,10 - c0021d62: 8526 mv a0,s1 - c0021d64: c87f40ef jal ra,c00169ea - c0021d68: f42a sd a0,40(sp) - c0021d6a: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49792 + c0021f2c: 6582 ld a1,0(sp) + c0021f2e: 6622 ld a2,8(sp) + c0021f30: 46a9 li a3,10 + c0021f32: 8526 mv a0,s1 + c0021f34: c87f40ef jal ra,c0016bba + c0021f38: f42a sd a0,40(sp) + c0021f3a: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49800 if (!JS_IsException(rv)) - c0021d6c: 0005871b sext.w a4,a1 - c0021d70: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49791 + c0021f3c: 0005871b sext.w a4,a1 + c0021f40: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49799 rv = js_create_from_ctor(ctx, new_target, JS_CLASS_DATE); - c0021d72: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49792 + c0021f42: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49800 if (!JS_IsException(rv)) - c0021d74: 04f70e63 beq a4,a5,c0021dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49793 + c0021f44: 04f70e63 beq a4,a5,c0021fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49801 JS_SetObjectData(ctx, rv, JS_NewFloat64(ctx, val)); - c0021d78: 67c2 ld a5,16(sp) + c0021f48: 67c2 ld a5,16(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0021d7a: f20787d3 fmv.d.x fa5,a5 - c0021d7e: c2079753 fcvt.w.d a4,fa5,rtz + c0021f4a: f20787d3 fmv.d.x fa5,a5 + c0021f4e: c2079753 fcvt.w.d a4,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0021d82: d20707d3 fcvt.d.w fa5,a4 + c0021f52: d20707d3 fcvt.d.w fa5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0021d86: 0007069b sext.w a3,a4 + c0021f56: 0007069b sext.w a3,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0021d8a: e2078653 fmv.x.d a2,fa5 - c0021d8e: 1cf61863 bne a2,a5,c0021f5e + c0021f5a: e2078653 fmv.x.d a2,fa5 + c0021f5e: 1cf61863 bne a2,a5,c002212e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c0021d92: c682 sw zero,76(sp) - c0021d94: 4701 li a4,0 + c0021f62: c682 sw zero,76(sp) + c0021f64: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0021d96: c4b6 sw a3,72(sp) + c0021f66: c4b6 sw a3,72(sp) js_date_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49793 - c0021d98: 66a6 ld a3,72(sp) - c0021d9a: 75a2 ld a1,40(sp) - c0021d9c: 7642 ld a2,48(sp) - c0021d9e: 8526 mv a0,s1 - c0021da0: e8ba sd a4,80(sp) - c0021da2: a8df20ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49795 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49801 + c0021f68: 66a6 ld a3,72(sp) + c0021f6a: 75a2 ld a1,40(sp) + c0021f6c: 7642 ld a2,48(sp) + c0021f6e: 8526 mv a0,s1 + c0021f70: e8ba sd a4,80(sp) + c0021f72: 9abf20ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49803 if (!JS_IsException(rv) && JS_IsUndefined(new_target)) { - c0021da6: 478d li a5,3 - c0021da8: 02f99463 bne s3,a5,c0021dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49798 + c0021f76: 478d li a5,3 + c0021f78: 02f99463 bne s3,a5,c0021fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49806 s = get_date_string(ctx, rv, 0, NULL, 0x13); - c0021dac: 7642 ld a2,48(sp) - c0021dae: 75a2 ld a1,40(sp) - c0021db0: 47cd li a5,19 - c0021db2: 4701 li a4,0 - c0021db4: 4681 li a3,0 - c0021db6: 8526 mv a0,s1 - c0021db8: c61ff0ef jal ra,c0021a18 - c0021dbc: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49799 + c0021f7c: 7642 ld a2,48(sp) + c0021f7e: 75a2 ld a1,40(sp) + c0021f80: 47cd li a5,19 + c0021f82: 4701 li a4,0 + c0021f84: 4681 li a3,0 + c0021f86: 8526 mv a0,s1 + c0021f88: c61ff0ef jal ra,c0021be8 + c0021f8c: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49807 JS_FreeValue(ctx, rv); - c0021dbe: 7642 ld a2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49798 + c0021f8e: 7642 ld a2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49806 s = get_date_string(ctx, rv, 0, NULL, 0x13); - c0021dc0: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49799 + c0021f90: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49807 JS_FreeValue(ctx, rv); - c0021dc2: 75a2 ld a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49798 + c0021f92: 75a2 ld a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49806 s = get_date_string(ctx, rv, 0, NULL, 0x13); - c0021dc4: fc2a sd a0,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49799 + c0021f94: fc2a sd a0,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49807 JS_FreeValue(ctx, rv); - c0021dc6: 8526 mv a0,s1 - c0021dc8: d71e50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49800 + c0021f96: 8526 mv a0,s1 + c0021f98: c8fe50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49808 rv = s; - c0021dcc: 77e2 ld a5,56(sp) - c0021dce: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49802 + c0021f9c: 77e2 ld a5,56(sp) + c0021f9e: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49810 return rv; - c0021dd0: 77a2 ld a5,40(sp) - c0021dd2: e0a2 sd s0,64(sp) - c0021dd4: fc3e sd a5,56(sp) - c0021dd6: a849 j c0021e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49744 + c0021fa0: 77a2 ld a5,40(sp) + c0021fa2: e0a2 sd s0,64(sp) + c0021fa4: fc3e sd a5,56(sp) + c0021fa6: a849 j c0022038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49752 } else if (n == 1) { - c0021dd8: 4785 li a5,1 - c0021dda: 843a mv s0,a4 - c0021ddc: 0af69d63 bne a3,a5,c0021e96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49746 + c0021fa8: 4785 li a5,1 + c0021faa: 843a mv s0,a4 + c0021fac: 0af69d63 bne a3,a5,c0022066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49754 if (JS_VALUE_GET_TAG(argv[0]) == JS_TAG_OBJECT) { - c0021de0: 4718 lw a4,8(a4) - c0021de2: 57fd li a5,-1 - c0021de4: 02f71963 bne a4,a5,c0021e16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49747 + c0021fb0: 4718 lw a4,8(a4) + c0021fb2: 57fd li a5,-1 + c0021fb4: 02f71963 bne a4,a5,c0021fe6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49755 JSObject *p = JS_VALUE_GET_OBJ(argv[0]); - c0021de8: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49748 + c0021fb8: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49756 if (p->class_id == JS_CLASS_DATE && JS_IsNumber(p->u.object_data)) { - c0021dea: 4729 li a4,10 - c0021dec: 0067d683 lhu a3,6(a5) - c0021df0: 02e69363 bne a3,a4,c0021e16 + c0021fba: 4729 li a4,10 + c0021fbc: 0067d683 lhu a3,6(a5) + c0021fc0: 02e69363 bne a3,a4,c0021fe6 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 (discriminator 1) int tag = JS_VALUE_GET_TAG(v); - c0021df4: 5f98 lw a4,56(a5) + c0021fc4: 5f98 lw a4,56(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 (discriminator 1) return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c0021df6: c701 beqz a4,c0021dfe + c0021fc6: c701 beqz a4,c0021fce /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 - c0021df8: 469d li a3,7 - c0021dfa: 00d71e63 bne a4,a3,c0021e16 + c0021fc8: 469d li a3,7 + c0021fca: 00d71e63 bne a4,a3,c0021fe6 js_date_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49749 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49757 if (JS_ToFloat64(ctx, &val, p->u.object_data)) - c0021dfe: 7b90 ld a2,48(a5) - c0021e00: 7f94 ld a3,56(a5) - c0021e02: 080c addi a1,sp,16 - c0021e04: 8526 mv a0,s1 - c0021e06: 889fa0ef jal ra,c001c68e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49764 + c0021fce: 7b90 ld a2,48(a5) + c0021fd0: 7f94 ld a3,56(a5) + c0021fd2: 080c addi a1,sp,16 + c0021fd4: 8526 mv a0,s1 + c0021fd6: 889fa0ef jal ra,c001c85e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49772 if (JS_ToFloat64Free(ctx, &val, v)) - c0021e0a: ed21 bnez a0,c0021e62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49767 + c0021fda: ed21 bnez a0,c0022032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49775 val = time_clip(val); - c0021e0c: 2542 fld fa0,16(sp) - c0021e0e: df1e30ef jal ra,c0005bfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49781 (discriminator 4) + c0021fdc: 2542 fld fa0,16(sp) + c0021fde: d0fe30ef jal ra,c0005cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49789 (discriminator 4) val = (i == n) ? set_date_fields(fields, 1) : NAN; - c0021e12: a82a fsd fa0,16(sp) - c0021e14: b7a1 j c0021d5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49755 + c0021fe2: a82a fsd fa0,16(sp) + c0021fe4: b7a1 j c0021f2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49763 v = JS_ToPrimitive(ctx, argv[0], HINT_NONE); - c0021e16: 6410 ld a2,8(s0) - c0021e18: 600c ld a1,0(s0) - c0021e1a: 4689 li a3,2 - c0021e1c: 8526 mv a0,s1 - c0021e1e: ec9f70ef jal ra,c0019ce6 - c0021e22: ec2a sd a0,24(sp) - c0021e24: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49756 + c0021fe6: 6410 ld a2,8(s0) + c0021fe8: 600c ld a1,0(s0) + c0021fea: 4689 li a3,2 + c0021fec: 8526 mv a0,s1 + c0021fee: ec9f70ef jal ra,c0019eb6 + c0021ff2: ec2a sd a0,24(sp) + c0021ff4: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49764 if (JS_IsString(v)) { - c0021e26: 0005871b sext.w a4,a1 - c0021e2a: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49755 + c0021ff6: 0005871b sext.w a4,a1 + c0021ffa: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49763 v = JS_ToPrimitive(ctx, argv[0], HINT_NONE); - c0021e2c: 862a mv a2,a0 - c0021e2e: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49756 + c0021ffc: 862a mv a2,a0 + c0021ffe: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49764 if (JS_IsString(v)) { - c0021e30: 04f71e63 bne a4,a5,c0021e8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49757 + c0022000: 04f71e63 bne a4,a5,c002205c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49765 dv = js_Date_parse(ctx, JS_UNDEFINED, 1, (JSValueConst *)&v); - c0021e34: 478d li a5,3 - c0021e36: 0838 addi a4,sp,24 - c0021e38: 4685 li a3,1 - c0021e3a: 460d li a2,3 - c0021e3c: 4581 li a1,0 - c0021e3e: 8526 mv a0,s1 - c0021e40: e8be sd a5,80(sp) - c0021e42: e482 sd zero,72(sp) - c0021e44: 911f90ef jal ra,c001b754 - c0021e48: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49758 + c0022004: 478d li a5,3 + c0022006: 0838 addi a4,sp,24 + c0022008: 4685 li a3,1 + c002200a: 460d li a2,3 + c002200c: 4581 li a1,0 + c002200e: 8526 mv a0,s1 + c0022010: e8be sd a5,80(sp) + c0022012: e482 sd zero,72(sp) + c0022014: 911f90ef jal ra,c001b924 + c0022018: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49766 JS_FreeValue(ctx, v); - c0021e4a: 7602 ld a2,32(sp) - c0021e4c: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49757 + c002201a: 7602 ld a2,32(sp) + c002201c: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49765 dv = js_Date_parse(ctx, JS_UNDEFINED, 1, (JSValueConst *)&v); - c0021e4e: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49758 + c002201e: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49766 JS_FreeValue(ctx, v); - c0021e50: 8526 mv a0,s1 - c0021e52: ce7e50ef jal ra,c0007b38 + c0022020: 8526 mv a0,s1 + c0022022: c05e50ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0021e56: 76c2 ld a3,48(sp) + c0022026: 76c2 ld a3,48(sp) js_date_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49767 if (JS_IsException(dv)) - c0021e58: 4799 li a5,6 - c0021e5a: 0006871b sext.w a4,a3 - c0021e5e: 02f71663 bne a4,a5,c0021e8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49774 + c0022028: 4799 li a5,6 + c002202a: 0006871b sext.w a4,a3 + c002202e: 02f71663 bne a4,a5,c002205a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49782 return JS_EXCEPTION; - c0021e62: 4799 li a5,6 - c0021e64: fc02 sd zero,56(sp) - c0021e66: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49803 (discriminator 10) -} - c0021e68: 70ae ld ra,232(sp) - c0021e6a: 740e ld s0,224(sp) - c0021e6c: 7562 ld a0,56(sp) - c0021e6e: 6586 ld a1,64(sp) - c0021e70: 64ee ld s1,216(sp) - c0021e72: 694e ld s2,208(sp) - c0021e74: 69ae ld s3,200(sp) - c0021e76: 6a0e ld s4,192(sp) - c0021e78: 7aea ld s5,184(sp) - c0021e7a: 7b4a ld s6,176(sp) - c0021e7c: 7baa ld s7,168(sp) - c0021e7e: 246a fld fs0,152(sp) - c0021e80: 24ca fld fs1,144(sp) - c0021e82: 292a fld fs2,136(sp) - c0021e84: 298a fld fs3,128(sp) - c0021e86: 616d addi sp,sp,240 - c0021e88: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49761 + c0022032: 4799 li a5,6 + c0022034: fc02 sd zero,56(sp) + c0022036: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49811 (discriminator 10) +} + c0022038: 70ae ld ra,232(sp) + c002203a: 740e ld s0,224(sp) + c002203c: 7562 ld a0,56(sp) + c002203e: 6586 ld a1,64(sp) + c0022040: 64ee ld s1,216(sp) + c0022042: 694e ld s2,208(sp) + c0022044: 69ae ld s3,200(sp) + c0022046: 6a0e ld s4,192(sp) + c0022048: 7aea ld s5,184(sp) + c002204a: 7b4a ld s6,176(sp) + c002204c: 7baa ld s7,168(sp) + c002204e: 246a fld fs0,152(sp) + c0022050: 24ca fld fs1,144(sp) + c0022052: 292a fld fs2,136(sp) + c0022054: 298a fld fs3,128(sp) + c0022056: 616d addi sp,sp,240 + c0022058: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49769 if (JS_ToFloat64Free(ctx, &val, dv)) - c0021e8a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49764 + c002205a: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49772 if (JS_ToFloat64Free(ctx, &val, v)) - c0021e8c: 080c addi a1,sp,16 - c0021e8e: 8526 mv a0,s1 - c0021e90: f5efa0ef jal ra,c001c5ee - c0021e94: bf9d j c0021e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49769 + c002205c: 080c addi a1,sp,16 + c002205e: 8526 mv a0,s1 + c0022060: f5efa0ef jal ra,c001c7be + c0022064: bf9d j c0021fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49777 double fields[] = { 0, 0, 1, 0, 0, 0, 0 }; - c0021e96: 00053797 auipc a5,0x53 - c0021e9a: 9027b787 fld fa5,-1790(a5) # c0074798 <_erodata+0x18> - c0021e9e: e482 sd zero,72(sp) - c0021ea0: e882 sd zero,80(sp) - c0021ea2: acbe fsd fa5,88(sp) - c0021ea4: f082 sd zero,96(sp) - c0021ea6: f482 sd zero,104(sp) - c0021ea8: f882 sd zero,112(sp) - c0021eaa: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49770 - if (n > 7) - c0021eac: 479d li a5,7 - c0021eae: 0006891b sext.w s2,a3 - c0021eb2: 00d7d363 bge a5,a3,c0021eb8 - c0021eb6: 491d li s2,7 + c0022066: 00053797 auipc a5,0x53 + c002206a: 9927b787 fld fa5,-1646(a5) # c00749f8 <_erodata+0x18> + c002206e: e482 sd zero,72(sp) + c0022070: e882 sd zero,80(sp) + c0022072: acbe fsd fa5,88(sp) + c0022074: f082 sd zero,96(sp) + c0022076: f482 sd zero,104(sp) + c0022078: f882 sd zero,112(sp) + c002207a: fc82 sd zero,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49778 + if (n > 7) + c002207c: 479d li a5,7 + c002207e: 0006891b sext.w s2,a3 + c0022082: 00d7d363 bge a5,a3,c0022088 + c0022086: 491d li s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49786 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c0021eb8: f20004d3 fmv.d.x fs1,zero - c0021ebc: 04810a93 addi s5,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49772 + c0022088: f20004d3 fmv.d.x fs1,zero + c002208c: 04810a93 addi s5,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49780 for(i = 0; i < n; i++) { - c0021ec0: 4a01 li s4,0 - c0021ec2: 8b56 mv s6,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49775 + c0022090: 4a01 li s4,0 + c0022092: 8b56 mv s6,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49783 if (!isfinite(a)) - c0021ec4: 00053797 auipc a5,0x53 - c0021ec8: 8c47b407 fld fs0,-1852(a5) # c0074788 <_erodata+0x8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49778 + c0022094: 00053797 auipc a5,0x53 + c0022098: 9547b407 fld fs0,-1708(a5) # c00749e8 <_erodata+0x8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49786 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c0021ecc: 00053797 auipc a5,0x53 - c0021ed0: 93c7b907 fld fs2,-1732(a5) # c0074808 <_erodata+0x88> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49779 + c002209c: 00053797 auipc a5,0x53 + c00220a0: 9cc7b907 fld fs2,-1588(a5) # c0074a68 <_erodata+0x88> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49787 fields[0] += 1900; - c0021ed4: 00053797 auipc a5,0x53 - c0021ed8: 93c7b987 fld fs3,-1732(a5) # c0074810 <_erodata+0x90> - c0021edc: 000a0b9b sext.w s7,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49772 (discriminator 1) + c00220a4: 00053797 auipc a5,0x53 + c00220a8: 9cc7b987 fld fs3,-1588(a5) # c0074a70 <_erodata+0x90> + c00220ac: 000a0b9b sext.w s7,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49780 (discriminator 1) for(i = 0; i < n; i++) { - c0021ee0: 012bc963 blt s7,s2,c0021ef2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49781 + c00220b0: 012bc963 blt s7,s2,c00220c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49789 val = (i == n) ? set_date_fields(fields, 1) : NAN; - c0021ee4: 072b9263 bne s7,s2,c0021f48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49781 (discriminator 1) - c0021ee8: 4585 li a1,1 - c0021eea: 855a mv a0,s6 - c0021eec: a15e40ef jal ra,c0006900 - c0021ef0: b70d j c0021e12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49773 + c00220b4: 072b9263 bne s7,s2,c0022118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49789 (discriminator 1) + c00220b8: 4585 li a1,1 + c00220ba: 855a mv a0,s6 + c00220bc: 933e40ef jal ra,c00069ee + c00220c0: b70d j c0021fe2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49781 if (JS_ToFloat64(ctx, &a, argv[i])) - c0021ef2: 004a1793 slli a5,s4,0x4 - c0021ef6: 97a2 add a5,a5,s0 - c0021ef8: 6390 ld a2,0(a5) - c0021efa: 6794 ld a3,8(a5) - c0021efc: 082c addi a1,sp,24 - c0021efe: 8526 mv a0,s1 - c0021f00: f8efa0ef jal ra,c001c68e - c0021f04: fd39 bnez a0,c0021e62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49775 + c00220c2: 004a1793 slli a5,s4,0x4 + c00220c6: 97a2 add a5,a5,s0 + c00220c8: 6390 ld a2,0(a5) + c00220ca: 6794 ld a3,8(a5) + c00220cc: 082c addi a1,sp,24 + c00220ce: 8526 mv a0,s1 + c00220d0: f8efa0ef jal ra,c001c85e + c00220d4: fd39 bnez a0,c0022032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49783 if (!isfinite(a)) - c0021f06: 128477d3 fmul.d fa5,fs0,fs0 - c0021f0a: 2562 fld fa0,24(sp) - c0021f0c: a2f527d3 feq.d a5,fa0,fa5 - c0021f10: ef85 bnez a5,c0021f48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49775 (discriminator 1) - c0021f12: 22f797d3 fneg.d fa5,fa5 - c0021f16: a2f527d3 feq.d a5,fa0,fa5 - c0021f1a: e79d bnez a5,c0021f48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49775 (discriminator 2) - c0021f1c: a2a527d3 feq.d a5,fa0,fa0 - c0021f20: c785 beqz a5,c0021f48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49777 + c00220d6: 128477d3 fmul.d fa5,fs0,fs0 + c00220da: 2562 fld fa0,24(sp) + c00220dc: a2f527d3 feq.d a5,fa0,fa5 + c00220e0: ef85 bnez a5,c0022118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49783 (discriminator 1) + c00220e2: 22f797d3 fneg.d fa5,fa5 + c00220e6: a2f527d3 feq.d a5,fa0,fa5 + c00220ea: e79d bnez a5,c0022118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49783 (discriminator 2) + c00220ec: a2a527d3 feq.d a5,fa0,fa0 + c00220f0: c785 beqz a5,c0022118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49785 fields[i] = trunc(a); - c0021f22: 1ca360ef jal ra,c00580ec - c0021f26: 00aab027 fsd fa0,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49778 + c00220f2: 1ca360ef jal ra,c00582bc + c00220f6: 00aab027 fsd fa0,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49786 if (i == 0 && fields[0] >= 0 && fields[0] < 100) - c0021f2a: 000b9c63 bnez s7,c0021f42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49778 (discriminator 1) - c0021f2e: 27a6 fld fa5,72(sp) - c0021f30: a2f487d3 fle.d a5,fs1,fa5 - c0021f34: c799 beqz a5,c0021f42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49778 (discriminator 2) - c0021f36: a32797d3 flt.d a5,fa5,fs2 - c0021f3a: c781 beqz a5,c0021f42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49779 + c00220fa: 000b9c63 bnez s7,c0022112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49786 (discriminator 1) + c00220fe: 27a6 fld fa5,72(sp) + c0022100: a2f487d3 fle.d a5,fs1,fa5 + c0022104: c799 beqz a5,c0022112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49786 (discriminator 2) + c0022106: a32797d3 flt.d a5,fa5,fs2 + c002210a: c781 beqz a5,c0022112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49787 fields[0] += 1900; - c0021f3c: 0337f7d3 fadd.d fa5,fa5,fs3 - c0021f40: a4be fsd fa5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49772 (discriminator 2) + c002210c: 0337f7d3 fadd.d fa5,fa5,fs3 + c0022110: a4be fsd fa5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49780 (discriminator 2) for(i = 0; i < n; i++) { - c0021f42: 0a05 addi s4,s4,1 - c0021f44: 0aa1 addi s5,s5,8 - c0021f46: bf59 j c0021edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49781 + c0022112: 0a05 addi s4,s4,1 + c0022114: 0aa1 addi s5,s5,8 + c0022116: bf59 j c00220ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49789 val = (i == n) ? set_date_fields(fields, 1) : NAN; - c0021f48: 00053797 auipc a5,0x53 - c0021f4c: 8407b507 fld fa0,-1984(a5) # c0074788 <_erodata+0x8> - c0021f50: 12a57553 fmul.d fa0,fa0,fa0 - c0021f54: f20007d3 fmv.d.x fa5,zero - c0021f58: 12f57553 fmul.d fa0,fa0,fa5 - c0021f5c: bd5d j c0021e12 + c0022118: 00053797 auipc a5,0x53 + c002211c: 8d07b507 fld fa0,-1840(a5) # c00749e8 <_erodata+0x8> + c0022120: 12a57553 fmul.d fa0,fa0,fa0 + c0022124: f20007d3 fmv.d.x fa5,zero + c0022128: 12f57553 fmul.d fa0,fa0,fa5 + c002212c: bd5d j c0021fe2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0021f5e: e4be sd a5,72(sp) - c0021f60: 0007869b sext.w a3,a5 + c002212e: e4be sd a5,72(sp) + c0022130: 0007869b sext.w a3,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0021f64: 471d li a4,7 - c0021f66: bd05 j c0021d96 + c0022134: 471d li a4,7 + c0022136: bd05 j c0021f66 -00000000c0021f68 : +00000000c0022138 : add_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21876 { - c0021f68: 7179 addi sp,sp,-48 - c0021f6a: f406 sd ra,40(sp) - c0021f6c: f022 sd s0,32(sp) - c0021f6e: ec26 sd s1,24(sp) - c0021f70: e84a sd s2,16(sp) - c0021f72: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21872 + c0022138: 7179 addi sp,sp,-48 + c002213a: f406 sd ra,40(sp) + c002213c: f022 sd s0,32(sp) + c002213e: ec26 sd s1,24(sp) + c0022140: e84a sd s2,16(sp) + c0022142: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21880 if (fd->var_count >= JS_MAX_LOCAL_VARS) { - c0021f74: 09c5a703 lw a4,156(a1) - c0021f78: 67c1 lui a5,0x10 - c0021f7a: 17f9 addi a5,a5,-2 - c0021f7c: 02e7d163 bge a5,a4,c0021f9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21873 + c0022144: 09c5a703 lw a4,156(a1) + c0022148: 67c1 lui a5,0x10 + c002214a: 17f9 addi a5,a5,-2 + c002214c: 02e7d163 bge a5,a4,c002216e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21881 JS_ThrowInternalError(ctx, "too many local variables"); - c0021f80: 0003d597 auipc a1,0x3d - c0021f84: 94058593 addi a1,a1,-1728 # c005e8c0 - c0021f88: 9fdf20ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21874 + c0022150: 0003d597 auipc a1,0x3d + c0022154: 9d058593 addi a1,a1,-1584 # c005eb20 + c0022158: 91bf20ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21882 return -1; - c0021f8c: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21884 + c002215c: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21892 } - c0021f8e: 70a2 ld ra,40(sp) - c0021f90: 7402 ld s0,32(sp) - c0021f92: 64e2 ld s1,24(sp) - c0021f94: 6942 ld s2,16(sp) - c0021f96: 69a2 ld s3,8(sp) - c0021f98: 853e mv a0,a5 - c0021f9a: 6145 addi sp,sp,48 - c0021f9c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21876 + c002215e: 70a2 ld ra,40(sp) + c0022160: 7402 ld s0,32(sp) + c0022162: 64e2 ld s1,24(sp) + c0022164: 6942 ld s2,16(sp) + c0022166: 69a2 ld s3,8(sp) + c0022168: 853e mv a0,a5 + c002216a: 6145 addi sp,sp,48 + c002216c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21884 if (js_resize_array(ctx, (void **)&fd->vars, sizeof(fd->vars[0]), - c0021f9e: 09858693 addi a3,a1,152 - c0021fa2: 842e mv s0,a1 - c0021fa4: 89b2 mv s3,a2 - c0021fa6: 2705 addiw a4,a4,1 - c0021fa8: 4641 li a2,16 - c0021faa: 09058593 addi a1,a1,144 - c0021fae: 892a mv s2,a0 - c0021fb0: f60f50ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21878 + c002216e: 09858693 addi a3,a1,152 + c0022172: 842e mv s0,a1 + c0022174: 89b2 mv s3,a2 + c0022176: 2705 addiw a4,a4,1 + c0022178: 4641 li a2,16 + c002217a: 09058593 addi a1,a1,144 + c002217e: 892a mv s2,a0 + c0022180: f60f50ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21886 return -1; - c0021fb4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21876 + c0022184: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21884 if (js_resize_array(ctx, (void **)&fd->vars, sizeof(fd->vars[0]), - c0021fb6: fd61 bnez a0,c0021f8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21879 + c0022186: fd61 bnez a0,c002215e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21887 vd = &fd->vars[fd->var_count++]; - c0021fb8: 09c42783 lw a5,156(s0) - c0021fbc: 6844 ld s1,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21880 + c0022188: 09c42783 lw a5,156(s0) + c002218c: 6844 ld s1,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21888 memset(vd, 0, sizeof(*vd)); - c0021fbe: 4641 li a2,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21879 + c002218e: 4641 li a2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21887 vd = &fd->vars[fd->var_count++]; - c0021fc0: 0017871b addiw a4,a5,1 - c0021fc4: 0792 slli a5,a5,0x4 - c0021fc6: 94be add s1,s1,a5 - c0021fc8: 08e42e23 sw a4,156(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21880 + c0022190: 0017871b addiw a4,a5,1 + c0022194: 0792 slli a5,a5,0x4 + c0022196: 94be add s1,s1,a5 + c0022198: 08e42e23 sw a4,156(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21888 memset(vd, 0, sizeof(*vd)); - c0021fcc: 4581 li a1,0 - c0021fce: 8526 mv a0,s1 - c0021fd0: 0a1340ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21881 + c002219c: 4581 li a1,0 + c002219e: 8526 mv a0,s1 + c00221a0: 0a1340ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21889 vd->var_name = JS_DupAtom(ctx, name); - c0021fd4: 85ce mv a1,s3 - c0021fd6: 854a mv a0,s2 - c0021fd8: cf2e50ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21882 + c00221a4: 85ce mv a1,s3 + c00221a6: 854a mv a0,s2 + c00221a8: c10e50ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21890 vd->func_pool_idx = -1; - c0021fdc: 44dc lw a5,12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21881 + c00221ac: 44dc lw a5,12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21889 vd->var_name = JS_DupAtom(ctx, name); - c0021fde: c088 sw a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21882 + c00221ae: c088 sw a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21890 vd->func_pool_idx = -1; - c0021fe0: f007e793 ori a5,a5,-256 - c0021fe4: c4dc sw a5,12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21883 + c00221b0: f007e793 ori a5,a5,-256 + c00221b4: c4dc sw a5,12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21891 return fd->var_count - 1; - c0021fe6: 09c42783 lw a5,156(s0) - c0021fea: 37fd addiw a5,a5,-1 - c0021fec: b74d j c0021f8e + c00221b6: 09c42783 lw a5,156(s0) + c00221ba: 37fd addiw a5,a5,-1 + c00221bc: b74d j c002215e -00000000c0021fee : +00000000c00221be : add_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21896 { - c0021fee: 1101 addi sp,sp,-32 - c0021ff0: e822 sd s0,16(sp) - c0021ff2: e426 sd s1,8(sp) - c0021ff4: ec06 sd ra,24(sp) - c0021ff6: 842e mv s0,a1 - c0021ff8: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21889 + c00221be: 1101 addi sp,sp,-32 + c00221c0: e822 sd s0,16(sp) + c00221c2: e426 sd s1,8(sp) + c00221c4: ec06 sd ra,24(sp) + c00221c6: 842e mv s0,a1 + c00221c8: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21897 int idx = add_var(ctx, fd, name); - c0021ffa: f6fff0ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21890 + c00221ca: f6fff0ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21898 if (idx >= 0) { - c0021ffe: 02054c63 bltz a0,c0022036 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21891 + c00221ce: 02054c63 bltz a0,c0022206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21899 JSVarDef *vd = &fd->vars[idx]; - c0022002: 6858 ld a4,144(s0) - c0022004: 00451793 slli a5,a0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21892 + c00221d2: 6858 ld a4,144(s0) + c00221d4: 00451793 slli a5,a0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21900 vd->var_kind = var_kind; - c0022008: 88bd andi s1,s1,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21891 + c00221d8: 88bd andi s1,s1,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21899 JSVarDef *vd = &fd->vars[idx]; - c002200a: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21892 + c00221da: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21900 vd->var_kind = var_kind; - c002200c: 47d8 lw a4,12(a5) - c002200e: 0044949b slliw s1,s1,0x4 - c0022012: f0f77713 andi a4,a4,-241 - c0022016: 8cd9 or s1,s1,a4 - c0022018: c7c4 sw s1,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21893 + c00221dc: 47d8 lw a4,12(a5) + c00221de: 0044949b slliw s1,s1,0x4 + c00221e2: f0f77713 andi a4,a4,-241 + c00221e6: 8cd9 or s1,s1,a4 + c00221e8: c7c4 sw s1,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21901 vd->scope_level = fd->scope_level; - c002201a: 0e042703 lw a4,224(s0) - c002201e: c3d8 sw a4,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21894 + c00221ea: 0e042703 lw a4,224(s0) + c00221ee: c3d8 sw a4,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21902 vd->scope_next = fd->scope_first; - c0022020: 0e442703 lw a4,228(s0) - c0022024: c798 sw a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21895 + c00221f0: 0e442703 lw a4,228(s0) + c00221f4: c798 sw a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21903 fd->scopes[fd->scope_level].first = idx; - c0022026: 0e042703 lw a4,224(s0) - c002202a: 787c ld a5,240(s0) - c002202c: 070e slli a4,a4,0x3 - c002202e: 97ba add a5,a5,a4 - c0022030: c3c8 sw a0,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21896 + c00221f6: 0e042703 lw a4,224(s0) + c00221fa: 787c ld a5,240(s0) + c00221fc: 070e slli a4,a4,0x3 + c00221fe: 97ba add a5,a5,a4 + c0022200: c3c8 sw a0,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21904 fd->scope_first = idx; - c0022032: 0ea42223 sw a0,228(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21899 + c0022202: 0ea42223 sw a0,228(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21907 } - c0022036: 60e2 ld ra,24(sp) - c0022038: 6442 ld s0,16(sp) - c002203a: 64a2 ld s1,8(sp) - c002203c: 6105 addi sp,sp,32 - c002203e: 8082 ret + c0022206: 60e2 ld ra,24(sp) + c0022208: 6442 ld s0,16(sp) + c002220a: 64a2 ld s1,8(sp) + c002220c: 6105 addi sp,sp,32 + c002220e: 8082 ret -00000000c0022040 : +00000000c0022210 : add_private_class_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22135 { - c0022040: 1101 addi sp,sp,-32 - c0022042: e822 sd s0,16(sp) - c0022044: e426 sd s1,8(sp) - c0022046: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22132 + c0022210: 1101 addi sp,sp,-32 + c0022212: e822 sd s0,16(sp) + c0022214: e426 sd s1,8(sp) + c0022216: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22140 idx = add_scope_var(ctx, fd, name, var_kind); - c0022048: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22127 + c0022218: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22135 { - c002204a: 84ae mv s1,a1 - c002204c: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22132 + c002221a: 84ae mv s1,a1 + c002221c: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22140 idx = add_scope_var(ctx, fd, name, var_kind); - c002204e: fa1ff0ef jal ra,c0021fee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22133 + c002221e: fa1ff0ef jal ra,c00221be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22141 if (idx < 0) - c0022052: 02054163 bltz a0,c0022074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22135 + c0022222: 02054163 bltz a0,c0022244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22143 vd = &fd->vars[idx]; - c0022056: 68d8 ld a4,144(s1) - c0022058: 00451793 slli a5,a0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22137 + c0022226: 68d8 ld a4,144(s1) + c0022228: 00451793 slli a5,a0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22145 vd->is_const = 1; - c002205c: 0034141b slliw s0,s0,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22135 + c002222c: 0034141b slliw s0,s0,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22143 vd = &fd->vars[idx]; - c0022060: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22137 + c0022230: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22145 vd->is_const = 1; - c0022062: 00c7c703 lbu a4,12(a5) # 1000c <__clzdi2-0xbffefff4> - c0022066: 00346413 ori s0,s0,3 - c002206a: 882d andi s0,s0,11 - c002206c: 9b51 andi a4,a4,-12 - c002206e: 8c59 or s0,s0,a4 - c0022070: 00878623 sb s0,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22140 -} - c0022074: 60e2 ld ra,24(sp) - c0022076: 6442 ld s0,16(sp) - c0022078: 64a2 ld s1,8(sp) - c002207a: 6105 addi sp,sp,32 - c002207c: 8082 ret - -00000000c002207e : + c0022232: 00c7c703 lbu a4,12(a5) # 1000c <__clzdi2-0xbffefff4> + c0022236: 00346413 ori s0,s0,3 + c002223a: 882d andi s0,s0,11 + c002223c: 9b51 andi a4,a4,-12 + c002223e: 8c59 or s0,s0,a4 + c0022240: 00878623 sb s0,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22148 +} + c0022244: 60e2 ld ra,24(sp) + c0022246: 6442 ld s0,16(sp) + c0022248: 64a2 ld s1,8(sp) + c002224a: 6105 addi sp,sp,32 + c002224c: 8082 ret + +00000000c002224e : add_var_this(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30206 { - c002207e: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30200 + c002224e: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30208 idx = add_var(ctx, fd, JS_ATOM_this); - c0022080: 4621 li a2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30198 + c0022250: 4621 li a2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30206 { - c0022082: e022 sd s0,0(sp) - c0022084: e406 sd ra,8(sp) - c0022086: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30200 + c0022252: e022 sd s0,0(sp) + c0022254: e406 sd ra,8(sp) + c0022256: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30208 idx = add_var(ctx, fd, JS_ATOM_this); - c0022088: ee1ff0ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30201 + c0022258: ee1ff0ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30209 if (idx >= 0 && fd->is_derived_class_constructor) { - c002208c: 00054c63 bltz a0,c00220a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30201 (discriminator 1) - c0022090: 5c3c lw a5,120(s0) - c0022092: cb89 beqz a5,c00220a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30204 + c002225c: 00054c63 bltz a0,c0022274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30209 (discriminator 1) + c0022260: 5c3c lw a5,120(s0) + c0022262: cb89 beqz a5,c0022274 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30212 vd->is_lexical = 1; /* used to trigger 'uninitialized' checks - c0022094: 685c ld a5,144(s0) - c0022096: 00451713 slli a4,a0,0x4 - c002209a: 97ba add a5,a5,a4 - c002209c: 47d8 lw a4,12(a5) - c002209e: 00276713 ori a4,a4,2 - c00220a2: c7d8 sw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30208 + c0022264: 685c ld a5,144(s0) + c0022266: 00451713 slli a4,a0,0x4 + c002226a: 97ba add a5,a5,a4 + c002226c: 47d8 lw a4,12(a5) + c002226e: 00276713 ori a4,a4,2 + c0022272: c7d8 sw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30216 } - c00220a4: 60a2 ld ra,8(sp) - c00220a6: 6402 ld s0,0(sp) - c00220a8: 0141 addi sp,sp,16 - c00220aa: 8082 ret + c0022274: 60a2 ld ra,8(sp) + c0022276: 6402 ld s0,0(sp) + c0022278: 0141 addi sp,sp,16 + c002227a: 8082 ret -00000000c00220ac : +00000000c002227c : add_arguments_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21923 int idx = fd->arguments_var_idx; - c00220ac: 0bc5a783 lw a5,188(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21916 + c002227c: 0bc5a783 lw a5,188(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21924 if (idx < 0 && (idx = add_var(ctx, fd, JS_ATOM_arguments)) >= 0) { - c00220b0: 0207d463 bgez a5,c00220d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21914 + c0022280: 0207d463 bgez a5,c00222a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21922 { - c00220b4: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21916 + c0022284: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21924 if (idx < 0 && (idx = add_var(ctx, fd, JS_ATOM_arguments)) >= 0) { - c00220b6: 04e00613 li a2,78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21914 + c0022286: 04e00613 li a2,78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21922 { - c00220ba: e022 sd s0,0(sp) - c00220bc: e406 sd ra,8(sp) - c00220be: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21916 + c002228a: e022 sd s0,0(sp) + c002228c: e406 sd ra,8(sp) + c002228e: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21924 if (idx < 0 && (idx = add_var(ctx, fd, JS_ATOM_arguments)) >= 0) { - c00220c0: ea9ff0ef jal ra,c0021f68 - c00220c4: 87aa mv a5,a0 - c00220c6: 00054463 bltz a0,c00220ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21917 + c0022290: ea9ff0ef jal ra,c0022138 + c0022294: 87aa mv a5,a0 + c0022296: 00054463 bltz a0,c002229e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21925 fd->arguments_var_idx = idx; - c00220ca: 0aa42e23 sw a0,188(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21920 -} - c00220ce: 60a2 ld ra,8(sp) - c00220d0: 6402 ld s0,0(sp) - c00220d2: 853e mv a0,a5 - c00220d4: 0141 addi sp,sp,16 - c00220d6: 8082 ret - c00220d8: 853e mv a0,a5 - c00220da: 8082 ret - -00000000c00220dc : + c002229a: 0aa42e23 sw a0,188(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21928 +} + c002229e: 60a2 ld ra,8(sp) + c00222a0: 6402 ld s0,0(sp) + c00222a2: 853e mv a0,a5 + c00222a4: 0141 addi sp,sp,16 + c00222a6: 8082 ret + c00222a8: 853e mv a0,a5 + c00222aa: 8082 ret + +00000000c00222ac : add_func_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21903 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21911 int idx = fd->func_var_idx; - c00220dc: 0c45a783 lw a5,196(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21904 + c00222ac: 0c45a783 lw a5,196(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21912 if (idx < 0 && (idx = add_var(ctx, fd, name)) >= 0) { - c00220e0: 0407d663 bgez a5,c002212c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21902 -{ - c00220e4: 1141 addi sp,sp,-16 - c00220e6: e022 sd s0,0(sp) - c00220e8: e406 sd ra,8(sp) - c00220ea: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21904 + c00222b0: 0407d663 bgez a5,c00222fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21910 +{ + c00222b4: 1141 addi sp,sp,-16 + c00222b6: e022 sd s0,0(sp) + c00222b8: e406 sd ra,8(sp) + c00222ba: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21912 if (idx < 0 && (idx = add_var(ctx, fd, name)) >= 0) { - c00220ec: e7dff0ef jal ra,c0021f68 - c00220f0: 87aa mv a5,a0 - c00220f2: 02054863 bltz a0,c0022122 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21906 + c00222bc: e7dff0ef jal ra,c0022138 + c00222c0: 87aa mv a5,a0 + c00222c2: 02054863 bltz a0,c00222f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21914 fd->vars[idx].var_kind = JS_VAR_FUNCTION_NAME; - c00220f6: 6854 ld a3,144(s0) - c00220f8: 00451613 slli a2,a0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21905 + c00222c6: 6854 ld a3,144(s0) + c00222c8: 00451613 slli a2,a0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21913 fd->func_var_idx = idx; - c00220fc: 0ca42223 sw a0,196(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21906 + c00222cc: 0ca42223 sw a0,196(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21914 fd->vars[idx].var_kind = JS_VAR_FUNCTION_NAME; - c0022100: 96b2 add a3,a3,a2 - c0022102: 46d8 lw a4,12(a3) - c0022104: f0f77713 andi a4,a4,-241 - c0022108: 04076713 ori a4,a4,64 - c002210c: c6d8 sw a4,12(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21907 + c00222d0: 96b2 add a3,a3,a2 + c00222d2: 46d8 lw a4,12(a3) + c00222d4: f0f77713 andi a4,a4,-241 + c00222d8: 04076713 ori a4,a4,64 + c00222dc: c6d8 sw a4,12(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21915 if (fd->js_mode & JS_MODE_STRICT) - c002210e: 08644683 lbu a3,134(s0) - c0022112: 8a85 andi a3,a3,1 - c0022114: c699 beqz a3,c0022122 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21908 + c00222de: 08644683 lbu a3,134(s0) + c00222e2: 8a85 andi a3,a3,1 + c00222e4: c699 beqz a3,c00222f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21916 fd->vars[idx].is_const = TRUE; - c0022116: 6858 ld a4,144(s0) - c0022118: 9732 add a4,a4,a2 - c002211a: 4754 lw a3,12(a4) - c002211c: 0016e693 ori a3,a3,1 - c0022120: c754 sw a3,12(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21911 -} - c0022122: 60a2 ld ra,8(sp) - c0022124: 6402 ld s0,0(sp) - c0022126: 853e mv a0,a5 - c0022128: 0141 addi sp,sp,16 - c002212a: 8082 ret - c002212c: 853e mv a0,a5 - c002212e: 8082 ret - -00000000c0022130 : + c00222e6: 6858 ld a4,144(s0) + c00222e8: 9732 add a4,a4,a2 + c00222ea: 4754 lw a3,12(a4) + c00222ec: 0016e693 ori a3,a3,1 + c00222f0: c754 sw a3,12(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21919 +} + c00222f2: 60a2 ld ra,8(sp) + c00222f4: 6402 ld s0,0(sp) + c00222f6: 853e mv a0,a5 + c00222f8: 0141 addi sp,sp,16 + c00222fa: 8082 ret + c00222fc: 853e mv a0,a5 + c00222fe: 8082 ret + +00000000c0022300 : resolve_pseudo_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30215 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30223 if (!s->has_this_binding) - c0022130: 51fc lw a5,100(a1) - c0022132: cbc9 beqz a5,c00221c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30212 + c0022300: 51fc lw a5,100(a1) + c0022302: cbc9 beqz a5,c0022394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30220 { - c0022134: 1141 addi sp,sp,-16 - c0022136: e022 sd s0,0(sp) - c0022138: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30217 + c0022304: 1141 addi sp,sp,-16 + c0022306: e022 sd s0,0(sp) + c0022308: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30225 switch(var_name) { - c002213a: 07300793 li a5,115 - c002213e: 842e mv s0,a1 - c0022140: 04f60163 beq a2,a5,c0022182 - c0022144: 00c7ef63 bltu a5,a2,c0022162 - c0022148: 47a1 li a5,8 - c002214a: 06f60263 beq a2,a5,c00221ae - c002214e: 07200793 li a5,114 - c0022152: 04f60363 beq a2,a5,c0022198 - c0022156: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30247 + c002230a: 07300793 li a5,115 + c002230e: 842e mv s0,a1 + c0022310: 04f60163 beq a2,a5,c0022352 + c0022314: 00c7ef63 bltu a5,a2,c0022332 + c0022318: 47a1 li a5,8 + c002231a: 06f60263 beq a2,a5,c002237e + c002231e: 07200793 li a5,114 + c0022322: 04f60363 beq a2,a5,c0022368 + c0022326: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30255 } - c0022158: 60a2 ld ra,8(sp) - c002215a: 6402 ld s0,0(sp) - c002215c: 853e mv a0,a5 - c002215e: 0141 addi sp,sp,16 - c0022160: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30217 + c0022328: 60a2 ld ra,8(sp) + c002232a: 6402 ld s0,0(sp) + c002232c: 853e mv a0,a5 + c002232e: 0141 addi sp,sp,16 + c0022330: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30225 switch(var_name) { - c0022162: 07400693 li a3,116 - c0022166: 57fd li a5,-1 - c0022168: fed618e3 bne a2,a3,c0022158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30220 + c0022332: 07400693 li a3,116 + c0022336: 57fd li a5,-1 + c0022338: fed618e3 bne a2,a3,c0022328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30228 if (s->home_object_var_idx < 0) - c002216c: 0d85a783 lw a5,216(a1) - c0022170: 0007d663 bgez a5,c002217c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30221 + c002233c: 0d85a783 lw a5,216(a1) + c0022340: 0007d663 bgez a5,c002234c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30229 s->home_object_var_idx = add_var(ctx, s, var_name); - c0022174: df5ff0ef jal ra,c0021f68 - c0022178: 0ca42c23 sw a0,216(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30222 + c0022344: df5ff0ef jal ra,c0022138 + c0022348: 0ca42c23 sw a0,216(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30230 var_idx = s->home_object_var_idx; - c002217c: 0d842783 lw a5,216(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30223 + c002234c: 0d842783 lw a5,216(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30231 break; - c0022180: bfe1 j c0022158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30226 + c0022350: bfe1 j c0022328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30234 if (s->this_active_func_var_idx < 0) - c0022182: 0d45a783 lw a5,212(a1) - c0022186: 0007d663 bgez a5,c0022192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30227 + c0022352: 0d45a783 lw a5,212(a1) + c0022356: 0007d663 bgez a5,c0022362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30235 s->this_active_func_var_idx = add_var(ctx, s, var_name); - c002218a: ddfff0ef jal ra,c0021f68 - c002218e: 0ca42a23 sw a0,212(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30228 + c002235a: ddfff0ef jal ra,c0022138 + c002235e: 0ca42a23 sw a0,212(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30236 var_idx = s->this_active_func_var_idx; - c0022192: 0d442783 lw a5,212(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30229 + c0022362: 0d442783 lw a5,212(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30237 break; - c0022196: b7c9 j c0022158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30232 + c0022366: b7c9 j c0022328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30240 if (s->new_target_var_idx < 0) - c0022198: 0d05a783 lw a5,208(a1) - c002219c: 0007d663 bgez a5,c00221a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30233 + c0022368: 0d05a783 lw a5,208(a1) + c002236c: 0007d663 bgez a5,c0022378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30241 s->new_target_var_idx = add_var(ctx, s, var_name); - c00221a0: dc9ff0ef jal ra,c0021f68 - c00221a4: 0ca42823 sw a0,208(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30234 + c0022370: dc9ff0ef jal ra,c0022138 + c0022374: 0ca42823 sw a0,208(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30242 var_idx = s->new_target_var_idx; - c00221a8: 0d042783 lw a5,208(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30235 + c0022378: 0d042783 lw a5,208(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30243 break; - c00221ac: b775 j c0022158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30238 + c002237c: b775 j c0022328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30246 if (s->this_var_idx < 0) - c00221ae: 0cc5a783 lw a5,204(a1) - c00221b2: 0007d663 bgez a5,c00221be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30239 + c002237e: 0cc5a783 lw a5,204(a1) + c0022382: 0007d663 bgez a5,c002238e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30247 s->this_var_idx = add_var_this(ctx, s); - c00221b6: ec9ff0ef jal ra,c002207e - c00221ba: 0ca42623 sw a0,204(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30240 + c0022386: ec9ff0ef jal ra,c002224e + c002238a: 0ca42623 sw a0,204(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30248 var_idx = s->this_var_idx; - c00221be: 0cc42783 lw a5,204(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30241 + c002238e: 0cc42783 lw a5,204(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30249 break; - c00221c2: bf59 j c0022158 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30216 + c0022392: bf59 j c0022328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30224 return -1; - c00221c4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30247 + c0022394: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30255 } - c00221c6: 853e mv a0,a5 - c00221c8: 8082 ret + c0022396: 853e mv a0,a5 + c0022398: 8082 ret -00000000c00221ca : +00000000c002239a : add_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21948 -{ - c00221ca: 7179 addi sp,sp,-48 - c00221cc: f406 sd ra,40(sp) - c00221ce: f022 sd s0,32(sp) - c00221d0: ec26 sd s1,24(sp) - c00221d2: e84a sd s2,16(sp) - c00221d4: e44e sd s3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21956 +{ + c002239a: 7179 addi sp,sp,-48 + c002239c: f406 sd ra,40(sp) + c002239e: f022 sd s0,32(sp) + c00223a0: ec26 sd s1,24(sp) + c00223a2: e84a sd s2,16(sp) + c00223a4: e44e sd s3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21960 if (fd->arg_count >= JS_MAX_LOCAL_VARS) { - c00221d6: 0ac5a703 lw a4,172(a1) - c00221da: 67c1 lui a5,0x10 - c00221dc: 17f9 addi a5,a5,-2 - c00221de: 02e7d163 bge a5,a4,c0022200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21953 + c00223a6: 0ac5a703 lw a4,172(a1) + c00223aa: 67c1 lui a5,0x10 + c00223ac: 17f9 addi a5,a5,-2 + c00223ae: 02e7d163 bge a5,a4,c00223d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21961 JS_ThrowInternalError(ctx, "too many arguments"); - c00221e2: 0003c597 auipc a1,0x3c - c00221e6: 6fe58593 addi a1,a1,1790 # c005e8e0 - c00221ea: f9af20ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21954 + c00223b2: 0003c597 auipc a1,0x3c + c00223b6: 78e58593 addi a1,a1,1934 # c005eb40 + c00223ba: eb8f20ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21962 return -1; - c00221ee: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21964 + c00223be: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21972 } - c00221f0: 70a2 ld ra,40(sp) - c00221f2: 7402 ld s0,32(sp) - c00221f4: 64e2 ld s1,24(sp) - c00221f6: 6942 ld s2,16(sp) - c00221f8: 69a2 ld s3,8(sp) - c00221fa: 853e mv a0,a5 - c00221fc: 6145 addi sp,sp,48 - c00221fe: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21956 + c00223c0: 70a2 ld ra,40(sp) + c00223c2: 7402 ld s0,32(sp) + c00223c4: 64e2 ld s1,24(sp) + c00223c6: 6942 ld s2,16(sp) + c00223c8: 69a2 ld s3,8(sp) + c00223ca: 853e mv a0,a5 + c00223cc: 6145 addi sp,sp,48 + c00223ce: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21964 if (js_resize_array(ctx, (void **)&fd->args, sizeof(fd->args[0]), - c0022200: 0a858693 addi a3,a1,168 - c0022204: 842e mv s0,a1 - c0022206: 89b2 mv s3,a2 - c0022208: 2705 addiw a4,a4,1 - c002220a: 4641 li a2,16 - c002220c: 0a058593 addi a1,a1,160 - c0022210: 892a mv s2,a0 - c0022212: cfef50ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21958 + c00223d0: 0a858693 addi a3,a1,168 + c00223d4: 842e mv s0,a1 + c00223d6: 89b2 mv s3,a2 + c00223d8: 2705 addiw a4,a4,1 + c00223da: 4641 li a2,16 + c00223dc: 0a058593 addi a1,a1,160 + c00223e0: 892a mv s2,a0 + c00223e2: cfef50ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21966 return -1; - c0022216: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21956 + c00223e6: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21964 if (js_resize_array(ctx, (void **)&fd->args, sizeof(fd->args[0]), - c0022218: fd61 bnez a0,c00221f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21959 + c00223e8: fd61 bnez a0,c00223c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21967 vd = &fd->args[fd->arg_count++]; - c002221a: 0ac42783 lw a5,172(s0) - c002221e: 7044 ld s1,160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21960 + c00223ea: 0ac42783 lw a5,172(s0) + c00223ee: 7044 ld s1,160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21968 memset(vd, 0, sizeof(*vd)); - c0022220: 4641 li a2,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21959 + c00223f0: 4641 li a2,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21967 vd = &fd->args[fd->arg_count++]; - c0022222: 0017871b addiw a4,a5,1 - c0022226: 0792 slli a5,a5,0x4 - c0022228: 94be add s1,s1,a5 - c002222a: 0ae42623 sw a4,172(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21960 + c00223f2: 0017871b addiw a4,a5,1 + c00223f6: 0792 slli a5,a5,0x4 + c00223f8: 94be add s1,s1,a5 + c00223fa: 0ae42623 sw a4,172(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21968 memset(vd, 0, sizeof(*vd)); - c002222e: 4581 li a1,0 - c0022230: 8526 mv a0,s1 - c0022232: 63e340ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21961 + c00223fe: 4581 li a1,0 + c0022400: 8526 mv a0,s1 + c0022402: 63e340ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21969 vd->var_name = JS_DupAtom(ctx, name); - c0022236: 85ce mv a1,s3 - c0022238: 854a mv a0,s2 - c002223a: a90e50ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21962 + c0022406: 85ce mv a1,s3 + c0022408: 854a mv a0,s2 + c002240a: 9aee50ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21970 vd->func_pool_idx = -1; - c002223e: 44dc lw a5,12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21961 + c002240e: 44dc lw a5,12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21969 vd->var_name = JS_DupAtom(ctx, name); - c0022240: c088 sw a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21962 + c0022410: c088 sw a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21970 vd->func_pool_idx = -1; - c0022242: f007e793 ori a5,a5,-256 - c0022246: c4dc sw a5,12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21963 + c0022412: f007e793 ori a5,a5,-256 + c0022416: c4dc sw a5,12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21971 return fd->arg_count - 1; - c0022248: 0ac42783 lw a5,172(s0) - c002224c: 37fd addiw a5,a5,-1 - c002224e: b74d j c00221f0 + c0022418: 0ac42783 lw a5,172(s0) + c002241c: 37fd addiw a5,a5,-1 + c002241e: b74d j c00223c0 -00000000c0022250 : +00000000c0022420 : add_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29980 -{ - c0022250: 715d addi sp,sp,-80 - c0022252: e45e sd s7,8(sp) - c0022254: e062 sd s8,0(sp) - c0022256: e486 sd ra,72(sp) - c0022258: e0a2 sd s0,64(sp) - c002225a: fc26 sd s1,56(sp) - c002225c: f84a sd s2,48(sp) - c002225e: f44e sd s3,40(sp) - c0022260: f052 sd s4,32(sp) - c0022262: ec56 sd s5,24(sp) - c0022264: e85a sd s6,16(sp) - c0022266: 8c3a mv s8,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29988 +{ + c0022420: 715d addi sp,sp,-80 + c0022422: e45e sd s7,8(sp) + c0022424: e062 sd s8,0(sp) + c0022426: e486 sd ra,72(sp) + c0022428: e0a2 sd s0,64(sp) + c002242a: fc26 sd s1,56(sp) + c002242c: f84a sd s2,48(sp) + c002242e: f44e sd s3,40(sp) + c0022430: f052 sd s4,32(sp) + c0022432: ec56 sd s5,24(sp) + c0022434: e85a sd s6,16(sp) + c0022436: 8c3a mv s8,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29992 if (s->closure_var_count >= JS_MAX_LOCAL_VARS) { - c0022268: 1985a703 lw a4,408(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29980 + c0022438: 1985a703 lw a4,408(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29988 { - c002226c: 8bbe mv s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29984 + c002243c: 8bbe mv s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29992 if (s->closure_var_count >= JS_MAX_LOCAL_VARS) { - c002226e: 67c1 lui a5,0x10 - c0022270: 17f9 addi a5,a5,-2 - c0022272: 02e7d663 bge a5,a4,c002229e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29985 + c002243e: 67c1 lui a5,0x10 + c0022440: 17f9 addi a5,a5,-2 + c0022442: 02e7d663 bge a5,a4,c002246e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29993 JS_ThrowInternalError(ctx, "too many closure variables"); - c0022276: 0003c597 auipc a1,0x3c - c002227a: 68258593 addi a1,a1,1666 # c005e8f8 - c002227e: f06f20ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29986 + c0022446: 0003c597 auipc a1,0x3c + c002244a: 71258593 addi a1,a1,1810 # c005eb58 + c002244e: e24f20ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29994 return -1; - c0022282: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30002 + c0022452: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30010 } - c0022284: 60a6 ld ra,72(sp) - c0022286: 6406 ld s0,64(sp) - c0022288: 74e2 ld s1,56(sp) - c002228a: 7942 ld s2,48(sp) - c002228c: 79a2 ld s3,40(sp) - c002228e: 7a02 ld s4,32(sp) - c0022290: 6ae2 ld s5,24(sp) - c0022292: 6b42 ld s6,16(sp) - c0022294: 6ba2 ld s7,8(sp) - c0022296: 6c02 ld s8,0(sp) - c0022298: 8532 mv a0,a2 - c002229a: 6161 addi sp,sp,80 - c002229c: 8082 ret - c002229e: 84ae mv s1,a1 - c00222a0: 8432 mv s0,a2 - c00222a2: 8ab6 mv s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29989 + c0022454: 60a6 ld ra,72(sp) + c0022456: 6406 ld s0,64(sp) + c0022458: 74e2 ld s1,56(sp) + c002245a: 7942 ld s2,48(sp) + c002245c: 79a2 ld s3,40(sp) + c002245e: 7a02 ld s4,32(sp) + c0022460: 6ae2 ld s5,24(sp) + c0022462: 6b42 ld s6,16(sp) + c0022464: 6ba2 ld s7,8(sp) + c0022466: 6c02 ld s8,0(sp) + c0022468: 8532 mv a0,a2 + c002246a: 6161 addi sp,sp,80 + c002246c: 8082 ret + c002246e: 84ae mv s1,a1 + c0022470: 8432 mv s0,a2 + c0022472: 8ab6 mv s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29997 if (js_resize_array(ctx, (void **)&s->closure_var, - c00222a4: 4621 li a2,8 - c00222a6: 19c58693 addi a3,a1,412 - c00222aa: 2705 addiw a4,a4,1 - c00222ac: 1a058593 addi a1,a1,416 - c00222b0: 8b2a mv s6,a0 - c00222b2: 8a42 mv s4,a6 - c00222b4: 89c6 mv s3,a7 - c00222b6: c5af50ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29992 + c0022474: 4621 li a2,8 + c0022476: 19c58693 addi a3,a1,412 + c002247a: 2705 addiw a4,a4,1 + c002247c: 1a058593 addi a1,a1,416 + c0022480: 8b2a mv s6,a0 + c0022482: 8a42 mv s4,a6 + c0022484: 89c6 mv s3,a7 + c0022486: c5af50ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30000 return -1; - c00222ba: 567d li a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29989 + c002248a: 567d li a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29997 if (js_resize_array(ctx, (void **)&s->closure_var, - c00222bc: f561 bnez a0,c0022284 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29993 + c002248c: f561 bnez a0,c0022454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30001 cv = &s->closure_var[s->closure_var_count++]; - c00222be: 1984a683 lw a3,408(s1) - c00222c2: 1a04b903 ld s2,416(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29994 + c002248e: 1984a683 lw a3,408(s1) + c0022492: 1a04b903 ld s2,416(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30002 cv->is_local = is_local; - c00222c6: 001a9a9b slliw s5,s5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29993 + c0022496: 001a9a9b slliw s5,s5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30001 cv = &s->closure_var[s->closure_var_count++]; - c00222ca: 0016879b addiw a5,a3,1 - c00222ce: 068e slli a3,a3,0x3 - c00222d0: 18f4ac23 sw a5,408(s1) - c00222d4: 9936 add s2,s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29994 + c002249a: 0016879b addiw a5,a3,1 + c002249e: 068e slli a3,a3,0x3 + c00224a0: 18f4ac23 sw a5,408(s1) + c00224a4: 9936 add s2,s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30002 cv->is_local = is_local; - c00222d6: 47c6 lw a5,80(sp) - c00222d8: 00147693 andi a3,s0,1 - c00222dc: 0156e6b3 or a3,a3,s5 - c00222e0: 002a1a1b slliw s4,s4,0x2 - c00222e4: 0146e6b3 or a3,a3,s4 - c00222e8: 0039999b slliw s3,s3,0x3 - c00222ec: 0047979b slliw a5,a5,0x4 - c00222f0: 0136e6b3 or a3,a3,s3 - c00222f4: 8edd or a3,a3,a5 - c00222f6: 00d90023 sb a3,0(s2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29999 + c00224a6: 47c6 lw a5,80(sp) + c00224a8: 00147693 andi a3,s0,1 + c00224ac: 0156e6b3 or a3,a3,s5 + c00224b0: 002a1a1b slliw s4,s4,0x2 + c00224b4: 0146e6b3 or a3,a3,s4 + c00224b8: 0039999b slliw s3,s3,0x3 + c00224bc: 0047979b slliw a5,a5,0x4 + c00224c0: 0136e6b3 or a3,a3,s3 + c00224c4: 8edd or a3,a3,a5 + c00224c6: 00d90023 sb a3,0(s2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30007 cv->var_idx = var_idx; - c00222fa: 01891123 sh s8,2(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30000 + c00224ca: 01891123 sh s8,2(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30008 cv->var_name = JS_DupAtom(ctx, var_name); - c00222fe: 85de mv a1,s7 - c0022300: 855a mv a0,s6 - c0022302: 9c8e50ef jal ra,c00074ca - c0022306: 00a92223 sw a0,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30001 + c00224ce: 85de mv a1,s7 + c00224d0: 855a mv a0,s6 + c00224d2: 8e6e50ef jal ra,c00075b8 + c00224d6: 00a92223 sw a0,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30009 return s->closure_var_count - 1; - c002230a: 1984a603 lw a2,408(s1) - c002230e: 367d addiw a2,a2,-1 - c0022310: bf95 j c0022284 + c00224da: 1984a603 lw a2,408(s1) + c00224de: 367d addiw a2,a2,-1 + c00224e0: bf95 j c0022454 -00000000c0022312 : +00000000c00224e2 : get_closure_var2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30024 -{ - c0022312: 715d addi sp,sp,-80 - c0022314: e0a2 sd s0,64(sp) - c0022316: fc26 sd s1,56(sp) - c0022318: f84a sd s2,48(sp) - c002231a: f44e sd s3,40(sp) - c002231c: f052 sd s4,32(sp) - c002231e: ec56 sd s5,24(sp) - c0022320: e85a sd s6,16(sp) - c0022322: e486 sd ra,72(sp) - c0022324: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30027 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30032 +{ + c00224e2: 715d addi sp,sp,-80 + c00224e4: e0a2 sd s0,64(sp) + c00224e6: fc26 sd s1,56(sp) + c00224e8: f84a sd s2,48(sp) + c00224ea: f44e sd s3,40(sp) + c00224ec: f052 sd s4,32(sp) + c00224ee: ec56 sd s5,24(sp) + c00224f0: e85a sd s6,16(sp) + c00224f2: e486 sd ra,72(sp) + c00224f4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30035 if (fd != s->parent) { - c0022326: 658c ld a1,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30024 -{ - c0022328: 4ac6 lw s5,80(sp) - c002232a: 4b66 lw s6,88(sp) - c002232c: 892a mv s2,a0 - c002232e: 84ba mv s1,a4 - c0022330: 89c2 mv s3,a6 - c0022332: 8a46 mv s4,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30027 + c00224f6: 658c ld a1,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30032 +{ + c00224f8: 4ac6 lw s5,80(sp) + c00224fa: 4b66 lw s6,88(sp) + c00224fc: 892a mv s2,a0 + c00224fe: 84ba mv s1,a4 + c0022500: 89c2 mv s3,a6 + c0022502: 8a46 mv s4,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30035 if (fd != s->parent) { - c0022334: 02c58563 beq a1,a2,c002235e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30028 + c0022504: 02c58563 beq a1,a2,c002252e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30036 var_idx = get_closure_var2(ctx, s->parent, fd, is_local, - c0022338: e45a sd s6,8(sp) - c002233a: e056 sd s5,0(sp) - c002233c: fd7ff0ef jal ra,c0022312 - c0022340: 832a mv t1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30033 + c0022508: e45a sd s6,8(sp) + c002250a: e056 sd s5,0(sp) + c002250c: fd7ff0ef jal ra,c00224e2 + c0022510: 832a mv t1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 is_local = FALSE; - c0022342: 4e01 li t3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30031 + c0022512: 4e01 li t3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30039 if (var_idx < 0) - c0022344: 00055f63 bgez a0,c0022362 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30032 + c0022514: 00055f63 bgez a0,c0022532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30040 return -1; - c0022348: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c0022518: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c002234a: 60a6 ld ra,72(sp) - c002234c: 6406 ld s0,64(sp) - c002234e: 74e2 ld s1,56(sp) - c0022350: 7942 ld s2,48(sp) - c0022352: 79a2 ld s3,40(sp) - c0022354: 7a02 ld s4,32(sp) - c0022356: 6ae2 ld s5,24(sp) - c0022358: 6b42 ld s6,16(sp) - c002235a: 6161 addi sp,sp,80 - c002235c: 8082 ret - c002235e: 8e36 mv t3,a3 - c0022360: 833e mv t1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30035 + c002251a: 60a6 ld ra,72(sp) + c002251c: 6406 ld s0,64(sp) + c002251e: 74e2 ld s1,56(sp) + c0022520: 7942 ld s2,48(sp) + c0022522: 79a2 ld s3,40(sp) + c0022524: 7a02 ld s4,32(sp) + c0022526: 6ae2 ld s5,24(sp) + c0022528: 6b42 ld s6,16(sp) + c002252a: 6161 addi sp,sp,80 + c002252c: 8082 ret + c002252e: 8e36 mv t3,a3 + c0022530: 833e mv t1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 for(i = 0; i < s->closure_var_count; i++) { - c0022362: 19842583 lw a1,408(s0) - c0022366: 4701 li a4,0 - c0022368: 0007051b sext.w a0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30035 (discriminator 1) - c002236c: 02b54663 blt a0,a1,c0022398 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c0022532: 19842583 lw a1,408(s0) + c0022536: 4701 li a4,0 + c0022538: 0007051b sext.w a0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 (discriminator 1) + c002253c: 02b54663 blt a0,a1,c0022568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c0022370: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c0022540: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c0022372: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c0022542: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c0022374: e8da sd s6,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c0022544: e8da sd s6,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c0022376: 60a6 ld ra,72(sp) - c0022378: 6b42 ld s6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c0022546: 60a6 ld ra,72(sp) + c0022548: 6b42 ld s6,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c002237a: 88d6 mv a7,s5 - c002237c: 8852 mv a6,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c002254a: 88d6 mv a7,s5 + c002254c: 8852 mv a6,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c002237e: 6ae2 ld s5,24(sp) - c0022380: 7a02 ld s4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c002254e: 6ae2 ld s5,24(sp) + c0022550: 7a02 ld s4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c0022382: 87ce mv a5,s3 - c0022384: 86a6 mv a3,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c0022552: 87ce mv a5,s3 + c0022554: 86a6 mv a3,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c0022386: 79a2 ld s3,40(sp) - c0022388: 74e2 ld s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c0022556: 79a2 ld s3,40(sp) + c0022558: 74e2 ld s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c002238a: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c002255a: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c002238c: 7942 ld s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c002255c: 7942 ld s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c002238e: 871a mv a4,t1 - c0022390: 8672 mv a2,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 + c002255e: 871a mv a4,t1 + c0022560: 8672 mv a2,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 } - c0022392: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30041 + c0022562: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30049 return add_closure_var(ctx, s, is_local, is_arg, var_idx, var_name, - c0022394: ebdff06f j c0022250 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30036 + c0022564: ebdff06f j c0022420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30044 JSClosureVar *cv = &s->closure_var[i]; - c0022398: 1a043603 ld a2,416(s0) - c002239c: 00371693 slli a3,a4,0x3 - c00223a0: 96b2 add a3,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30037 + c0022568: 1a043603 ld a2,416(s0) + c002256c: 00371693 slli a3,a4,0x3 + c0022570: 96b2 add a3,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30045 if (cv->var_idx == var_idx && cv->is_arg == is_arg && - c00223a2: 0026d783 lhu a5,2(a3) - c00223a6: 00679b63 bne a5,t1,c00223bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30037 (discriminator 1) - c00223aa: 4294 lw a3,0(a3) - c00223ac: 0016d79b srliw a5,a3,0x1 - c00223b0: 8b85 andi a5,a5,1 - c00223b2: 00979563 bne a5,s1,c00223bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30037 (discriminator 2) - c00223b6: 8a85 andi a3,a3,1 - c00223b8: f9c689e3 beq a3,t3,c002234a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30035 (discriminator 2) + c0022572: 0026d783 lhu a5,2(a3) + c0022576: 00679b63 bne a5,t1,c002258c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30045 (discriminator 1) + c002257a: 4294 lw a3,0(a3) + c002257c: 0016d79b srliw a5,a3,0x1 + c0022580: 8b85 andi a5,a5,1 + c0022582: 00979563 bne a5,s1,c002258c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30045 (discriminator 2) + c0022586: 8a85 andi a3,a3,1 + c0022588: f9c689e3 beq a3,t3,c002251a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30043 (discriminator 2) for(i = 0; i < s->closure_var_count; i++) { - c00223bc: 0705 addi a4,a4,1 - c00223be: b76d j c0022368 + c002258c: 0705 addi a4,a4,1 + c002258e: b76d j c0022538 -00000000c00223c0 : +00000000c0022590 : resolve_scope_private_field1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30733 -{ - c00223c0: 7139 addi sp,sp,-64 - c00223c2: f426 sd s1,40(sp) - c00223c4: f04a sd s2,32(sp) - c00223c6: ec4e sd s3,24(sp) - c00223c8: 84ae mv s1,a1 - c00223ca: 8932 mv s2,a2 - c00223cc: fc06 sd ra,56(sp) - c00223ce: f822 sd s0,48(sp) - c00223d0: 85b6 mv a1,a3 - c00223d2: 883a mv a6,a4 - c00223d4: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30739 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30741 +{ + c0022590: 7139 addi sp,sp,-64 + c0022592: f426 sd s1,40(sp) + c0022594: f04a sd s2,32(sp) + c0022596: ec4e sd s3,24(sp) + c0022598: 84ae mv s1,a1 + c002259a: 8932 mv s2,a2 + c002259c: fc06 sd ra,56(sp) + c002259e: f822 sd s0,48(sp) + c00225a0: 85b6 mv a1,a3 + c00225a2: 883a mv a6,a4 + c00225a4: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30747 is_ref = FALSE; - c00223d6: 4981 li s3,0 + c00225a6: 4981 li s3,0 find_private_class_field_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30717 idx = fd->scopes[scope_level].first; - c00223d8: 7a78 ld a4,240(a2) - c00223da: 078e slli a5,a5,0x3 - c00223dc: 97ba add a5,a5,a4 - c00223de: 43dc lw a5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30710 + c00225a8: 7a78 ld a4,240(a2) + c00225aa: 078e slli a5,a5,0x3 + c00225ac: 97ba add a5,a5,a4 + c00225ae: 43dc lw a5,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30718 while (idx >= 0) { - c00223e0: 0007d863 bgez a5,c00223f0 + c00225b0: 0007d863 bgez a5,c00225c0 resolve_scope_private_field1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30761 if (!fd->parent) { - c00223e4: 6618 ld a4,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30752 + c00225b4: 6618 ld a4,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30760 scope_level = fd->parent_scope_level; - c00223e6: 4a5c lw a5,20(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30782 + c00225b6: 4a5c lw a5,20(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30790 is_ref = TRUE; - c00223e8: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30753 + c00225b8: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30761 if (!fd->parent) { - c00223ea: c731 beqz a4,c0022436 - c00223ec: 863a mv a2,a4 - c00223ee: b7ed j c00223d8 + c00225ba: c731 beqz a4,c0022606 + c00225bc: 863a mv a2,a4 + c00225be: b7ed j c00225a8 find_private_class_field_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30711 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30719 if (fd->vars[idx].var_name == name) - c00223f0: 6a54 ld a3,144(a2) - c00223f2: 00479713 slli a4,a5,0x4 - c00223f6: 9736 add a4,a4,a3 - c00223f8: 4314 lw a3,0(a4) - c00223fa: 03069c63 bne a3,a6,c0022432 + c00225c0: 6a54 ld a3,144(a2) + c00225c2: 00479713 slli a4,a5,0x4 + c00225c6: 9736 add a4,a4,a3 + c00225c8: 4314 lw a3,0(a4) + c00225ca: 03069c63 bne a3,a6,c0022602 resolve_scope_private_field1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30743 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30751 var_kind = fd->vars[idx].var_kind; - c00223fe: 4740 lw s0,12(a4) - c0022400: 0044541b srliw s0,s0,0x4 - c0022404: 883d andi s0,s0,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30744 + c00225ce: 4740 lw s0,12(a4) + c00225d0: 0044541b srliw s0,s0,0x4 + c00225d4: 883d andi s0,s0,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30752 if (is_ref) { - c0022406: 0a098163 beqz s3,c00224a8 + c00225d6: 0a098163 beqz s3,c0022678 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c002240a: 4705 li a4,1 - c002240c: e03a sd a4,0(sp) - c002240e: e402 sd zero,8(sp) - c0022410: 4885 li a7,1 - c0022412: 4701 li a4,0 - c0022414: 4685 li a3,1 - c0022416: efdff0ef jal ra,c0022312 - c002241a: 87aa mv a5,a0 + c00225da: 4705 li a4,1 + c00225dc: e03a sd a4,0(sp) + c00225de: e402 sd zero,8(sp) + c00225e0: 4885 li a7,1 + c00225e2: 4701 li a4,0 + c00225e4: 4685 li a3,1 + c00225e6: efdff0ef jal ra,c00224e2 + c00225ea: 87aa mv a5,a0 resolve_scope_private_field1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30747 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30755 if (idx < 0) - c002241c: 08055663 bgez a0,c00224a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30778 + c00225ec: 08055663 bgez a0,c0022678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30786 return -1; - c0022420: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30788 -} - c0022422: 70e2 ld ra,56(sp) - c0022424: 7442 ld s0,48(sp) - c0022426: 74a2 ld s1,40(sp) - c0022428: 7902 ld s2,32(sp) - c002242a: 69e2 ld s3,24(sp) - c002242c: 853e mv a0,a5 - c002242e: 6121 addi sp,sp,64 - c0022430: 8082 ret + c00225f0: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30796 +} + c00225f2: 70e2 ld ra,56(sp) + c00225f4: 7442 ld s0,48(sp) + c00225f6: 74a2 ld s1,40(sp) + c00225f8: 7902 ld s2,32(sp) + c00225fa: 69e2 ld s3,24(sp) + c00225fc: 853e mv a0,a5 + c00225fe: 6121 addi sp,sp,64 + c0022600: 8082 ret find_private_class_field_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30713 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30721 idx = fd->vars[idx].scope_next; - c0022432: 471c lw a5,8(a4) - c0022434: b775 j c00223e0 + c0022602: 471c lw a5,8(a4) + c0022604: b775 j c00225b0 resolve_scope_private_field1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30762 if (fd->is_eval) { - c0022436: 5e1c lw a5,56(a2) - c0022438: cb81 beqz a5,c0022448 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30756 + c0022606: 5e1c lw a5,56(a2) + c0022608: cb81 beqz a5,c0022618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30764 for (idx = 0; idx < fd->closure_var_count; idx++) { - c002243a: 19862883 lw a7,408(a2) - c002243e: 4701 li a4,0 - c0022440: 0007079b sext.w a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30756 (discriminator 1) - c0022444: 0117ce63 blt a5,a7,c0022460 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30776 + c002260a: 19862883 lw a7,408(a2) + c002260e: 4701 li a4,0 + c0022610: 0007079b sext.w a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30764 (discriminator 1) + c0022614: 0117ce63 blt a5,a7,c0022630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30784 JS_ThrowSyntaxErrorAtom(ctx, "undefined private field '%s'", - c0022448: 0003b697 auipc a3,0x3b - c002244c: b8868693 addi a3,a3,-1144 # c005cfd0 - c0022450: 0003c617 auipc a2,0x3c - c0022454: 4c860613 addi a2,a2,1224 # c005e918 - c0022458: 85c2 mv a1,a6 - c002245a: cddf00ef jal ra,c0013136 <__JS_ThrowSyntaxErrorAtom> - c002245e: b7c9 j c0022420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30757 + c0022618: 0003b697 auipc a3,0x3b + c002261c: be868693 addi a3,a3,-1048 # c005d200 + c0022620: 0003c617 auipc a2,0x3c + c0022624: 55860613 addi a2,a2,1368 # c005eb78 + c0022628: 85c2 mv a1,a6 + c002262a: bfbf00ef jal ra,c0013224 <__JS_ThrowSyntaxErrorAtom> + c002262e: b7c9 j c00225f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30765 JSClosureVar *cv = &fd->closure_var[idx]; - c0022460: 1a063683 ld a3,416(a2) - c0022464: 00371313 slli t1,a4,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30758 + c0022630: 1a063683 ld a3,416(a2) + c0022634: 00371313 slli t1,a4,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30766 if (cv->var_name == var_name) { - c0022468: 0705 addi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30757 + c0022638: 0705 addi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30765 JSClosureVar *cv = &fd->closure_var[idx]; - c002246a: 969a add a3,a3,t1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30758 + c002263a: 969a add a3,a3,t1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30766 if (cv->var_name == var_name) { - c002246c: 0046a303 lw t1,4(a3) - c0022470: fd0318e3 bne t1,a6,c0022440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30759 + c002263c: 0046a303 lw t1,4(a3) + c0022640: fd0318e3 bne t1,a6,c0022610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30767 var_kind = cv->var_kind; - c0022474: 4298 lw a4,0(a3) - c0022476: 0047541b srliw s0,a4,0x4 - c002247a: 883d andi s0,s0,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30761 + c0022644: 4298 lw a4,0(a3) + c0022646: 0047541b srliw s0,a4,0x4 + c002264a: 883d andi s0,s0,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30769 if (fd != s) { - c002247c: 02b60563 beq a2,a1,c00224a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30762 + c002264c: 02b60563 beq a2,a1,c0022676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30770 idx = get_closure_var2(ctx, s, fd, - c0022480: e422 sd s0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30766 + c0022650: e422 sd s0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30774 cv->is_lexical, - c0022482: 4294 lw a3,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30765 + c0022652: 4294 lw a3,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30773 cv->var_name, cv->is_const, - c0022484: 0027589b srliw a7,a4,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30764 + c0022654: 0027589b srliw a7,a4,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30772 cv->is_arg, idx, - c0022488: 0017571b srliw a4,a4,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30766 + c0022658: 0017571b srliw a4,a4,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30774 cv->is_lexical, - c002248c: 0036d69b srliw a3,a3,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30762 + c002265c: 0036d69b srliw a3,a3,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30770 idx = get_closure_var2(ctx, s, fd, - c0022490: 8a85 andi a3,a3,1 - c0022492: e036 sd a3,0(sp) - c0022494: 0018f893 andi a7,a7,1 - c0022498: 8b05 andi a4,a4,1 - c002249a: 4681 li a3,0 - c002249c: e77ff0ef jal ra,c0022312 - c00224a0: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30768 + c0022660: 8a85 andi a3,a3,1 + c0022662: e036 sd a3,0(sp) + c0022664: 0018f893 andi a7,a7,1 + c0022668: 8b05 andi a4,a4,1 + c002266a: 4681 li a3,0 + c002266c: e77ff0ef jal ra,c00224e2 + c0022670: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30776 if (idx < 0) - c00224a2: f6054fe3 bltz a0,c0022420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30760 + c0022672: f6054fe3 bltz a0,c00225f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30768 is_ref = TRUE; - c00224a6: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30785 + c0022676: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30793 *pis_ref = is_ref; - c00224a8: 0134a023 sw s3,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30786 + c0022678: 0134a023 sw s3,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30794 *pvar_kind = var_kind; - c00224ac: 00892023 sw s0,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30787 + c002267c: 00892023 sw s0,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30795 return idx; - c00224b0: bf8d j c0022422 + c0022680: bf8d j c00225f2 -00000000c00224b2 : +00000000c0022682 : resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30277 { - c00224b2: 7135 addi sp,sp,-160 - c00224b4: e922 sd s0,144(sp) - c00224b6: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30276 + c0022682: 7135 addi sp,sp,-160 + c0022684: e922 sd s0,144(sp) + c0022686: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30284 label_done = -1; - c00224b8: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 -{ - c00224ba: e526 sd s1,136(sp) - c00224bc: e14a sd s2,128(sp) - c00224be: fcce sd s3,120(sp) - c00224c0: f4d6 sd s5,104(sp) - c00224c2: f0da sd s6,96(sp) - c00224c4: ecde sd s7,88(sp) - c00224c6: e8e2 sd s8,80(sp) - c00224c8: e4e6 sd s9,72(sp) - c00224ca: 8aba mv s5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30276 + c0022688: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30277 +{ + c002268a: e526 sd s1,136(sp) + c002268c: e14a sd s2,128(sp) + c002268e: fcce sd s3,120(sp) + c0022690: f4d6 sd s5,104(sp) + c0022692: f0da sd s6,96(sp) + c0022694: ecde sd s7,88(sp) + c0022696: e8e2 sd s8,80(sp) + c0022698: e4e6 sd s9,72(sp) + c002269a: 8aba mv s5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30284 label_done = -1; - c00224cc: d63e sw a5,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 + c002269c: d63e sw a5,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30277 { - c00224ce: ed06 sd ra,152(sp) - c00224d0: f8d2 sd s4,112(sp) - c00224d2: e0ea sd s10,64(sp) - c00224d4: fc6e sd s11,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30282 + c002269e: ed06 sd ra,152(sp) + c00226a0: f8d2 sd s4,112(sp) + c00226a2: e0ea sd s10,64(sp) + c00226a4: fc6e sd s11,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30290 var_name == JS_ATOM_new_target || - c00224d6: f8e6071b addiw a4,a2,-114 - c00224da: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30269 -{ - c00224dc: 5b8a lw s7,160(sp) - c00224de: 892a mv s2,a0 - c00224e0: 89ae mv s3,a1 - c00224e2: 84b2 mv s1,a2 - c00224e4: 8b42 mv s6,a6 - c00224e6: 8cc6 mv s9,a7 - c00224e8: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30282 + c00226a6: f8e6071b addiw a4,a2,-114 + c00226aa: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30277 +{ + c00226ac: 5b8a lw s7,160(sp) + c00226ae: 892a mv s2,a0 + c00226b0: 89ae mv s3,a1 + c00226b2: 84b2 mv s1,a2 + c00226b4: 8b42 mv s6,a6 + c00226b6: 8cc6 mv s9,a7 + c00226b8: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30290 var_name == JS_ATOM_new_target || - c00224ea: 00e7f663 bgeu a5,a4,c00224f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30282 (discriminator 2) - c00224ee: ff860c13 addi s8,a2,-8 - c00224f2: 001c3c13 seqz s8,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30287 + c00226ba: 00e7f663 bgeu a5,a4,c00226c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30290 (discriminator 2) + c00226be: ff860c13 addi s8,a2,-8 + c00226c2: 001c3c13 seqz s8,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30295 for (idx = s->scopes[scope_level].first; idx >= 0;) { - c00224f6: 0f09b783 ld a5,240(s3) # ffffffff800000f0 <_ebss+0xfffffffebfefefca> - c00224fa: 068e slli a3,a3,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30301 + c00226c6: 0f09b783 ld a5,240(s3) # ffffffff800000f0 <_ebss+0xfffffffebfefefca> + c00226ca: 068e slli a3,a3,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30309 if (vd->var_name == JS_ATOM__with_ && !is_pseudo_var) { - c00224fc: 05500a13 li s4,85 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30287 + c00226cc: 05500a13 li s4,85 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30295 for (idx = s->scopes[scope_level].first; idx >= 0;) { - c0022500: 96be add a3,a3,a5 - c0022502: 0046ad03 lw s10,4(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30287 (discriminator 1) - c0022506: 100d5a63 bgez s10,c002261a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30312 + c00226d0: 96be add a3,a3,a5 + c00226d2: 0046ad03 lw s10,4(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30295 (discriminator 1) + c00226d6: 100d5a63 bgez s10,c00227ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30320 if (!is_arg_scope) { - c002250a: 57f9 li a5,-2 - c002250c: 00fd0a63 beq s10,a5,c0022520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30313 + c00226da: 57f9 li a5,-2 + c00226dc: 00fd0a63 beq s10,a5,c00226f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30321 var_idx = find_var(ctx, s, var_name); - c0022510: 8626 mv a2,s1 - c0022512: 85ce mv a1,s3 - c0022514: 854a mv a0,s2 - c0022516: b20e40ef jal ra,c0006836 - c002251a: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30316 + c00226e0: 8626 mv a2,s1 + c00226e2: 85ce mv a1,s3 + c00226e4: 854a mv a0,s2 + c00226e6: a3ee40ef jal ra,c0006924 + c00226ea: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30324 if (var_idx < 0 && is_pseudo_var) - c002251c: 18055663 bgez a0,c00226a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30316 (discriminator 1) - c0022520: 160c1c63 bnez s8,c0022698 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30319 + c00226ec: 18055663 bgez a0,c0022878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30324 (discriminator 1) + c00226f0: 160c1c63 bnez s8,c0022868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30327 if (var_idx < 0 && var_name == JS_ATOM_arguments && - c0022524: 04e00793 li a5,78 - c0022528: 00f49c63 bne s1,a5,c0022540 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30319 (discriminator 2) - c002252c: 0609a783 lw a5,96(s3) - c0022530: cb81 beqz a5,c0022540 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30322 + c00226f4: 04e00793 li a5,78 + c00226f8: 00f49c63 bne s1,a5,c0022710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30327 (discriminator 2) + c00226fc: 0609a783 lw a5,96(s3) + c0022700: cb81 beqz a5,c0022710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30330 var_idx = add_arguments_var(ctx, s); - c0022532: 85ce mv a1,s3 - c0022534: 854a mv a0,s2 - c0022536: b77ff0ef jal ra,c00220ac - c002253a: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30324 + c0022702: 85ce mv a1,s3 + c0022704: 854a mv a0,s2 + c0022706: b77ff0ef jal ra,c002227c + c002270a: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30332 if (var_idx < 0 && s->is_func_expr && var_name == s->func_name) { - c002253c: 16055663 bgez a0,c00226a8 - c0022540: 0449a783 lw a5,68(s3) - c0022544: 1a079763 bnez a5,c00226f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30432 + c002270c: 16055663 bgez a0,c0022878 + c0022710: 0449a783 lw a5,68(s3) + c0022714: 1a079763 bnez a5,c00228c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30440 if (!is_arg_scope && s->var_object_idx >= 0 && !is_pseudo_var) { - c0022548: 57f9 li a5,-2 - c002254a: 02fd0b63 beq s10,a5,c0022580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30432 (discriminator 1) - c002254e: 0b49a783 lw a5,180(s3) - c0022552: 0207c763 bltz a5,c0022580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30432 (discriminator 2) - c0022556: 020c1563 bnez s8,c0022580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30433 + c0022718: 57f9 li a5,-2 + c002271a: 02fd0b63 beq s10,a5,c0022750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30440 (discriminator 1) + c002271e: 0b49a783 lw a5,180(s3) + c0022722: 0207c763 bltz a5,c0022750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30440 (discriminator 2) + c0022726: 020c1563 bnez s8,c0022750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30441 dbuf_putc(bc, OP_get_loc); - c002255a: 05800593 li a1,88 - c002255e: 8522 mv a0,s0 - c0022560: 7e2250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30434 + c002272a: 05800593 li a1,88 + c002272e: 8522 mv a0,s0 + c0022730: 7e2250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30442 dbuf_put_u16(bc, s->var_object_idx); - c0022564: 0b49d583 lhu a1,180(s3) - c0022568: 8522 mv a0,s0 - c002256a: d89e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30435 + c0022734: 0b49d583 lhu a1,180(s3) + c0022738: 8522 mv a0,s0 + c002273a: ca7e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30443 var_object_test(ctx, s, var_name, op, bc, &label_done, 0); - c002256e: 4801 li a6,0 - c0022570: 107c addi a5,sp,44 - c0022572: 8722 mv a4,s0 - c0022574: 86d6 mv a3,s5 - c0022576: 8626 mv a2,s1 - c0022578: 85ce mv a1,s3 - c002257a: 854a mv a0,s2 - c002257c: afdf50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30438 + c002273e: 4801 li a6,0 + c0022740: 107c addi a5,sp,44 + c0022742: 8722 mv a4,s0 + c0022744: 86d6 mv a3,s5 + c0022746: 8626 mv a2,s1 + c0022748: 85ce mv a1,s3 + c002274a: 854a mv a0,s2 + c002274c: afdf50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30446 if (s->arg_var_object_idx >= 0 && !is_pseudo_var) { - c0022580: 0b89a783 lw a5,184(s3) - c0022584: 0207c763 bltz a5,c00225b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30438 (discriminator 1) - c0022588: 020c1563 bnez s8,c00225b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30439 + c0022750: 0b89a783 lw a5,184(s3) + c0022754: 0207c763 bltz a5,c0022782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30446 (discriminator 1) + c0022758: 020c1563 bnez s8,c0022782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30447 dbuf_putc(bc, OP_get_loc); - c002258c: 05800593 li a1,88 - c0022590: 8522 mv a0,s0 - c0022592: 7b0250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30440 + c002275c: 05800593 li a1,88 + c0022760: 8522 mv a0,s0 + c0022762: 7b0250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30448 dbuf_put_u16(bc, s->arg_var_object_idx); - c0022596: 0b89d583 lhu a1,184(s3) - c002259a: 8522 mv a0,s0 - c002259c: d57e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30441 + c0022766: 0b89d583 lhu a1,184(s3) + c002276a: 8522 mv a0,s0 + c002276c: c75e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30449 var_object_test(ctx, s, var_name, op, bc, &label_done, 0); - c00225a0: 4801 li a6,0 - c00225a2: 107c addi a5,sp,44 - c00225a4: 8722 mv a4,s0 - c00225a6: 86d6 mv a3,s5 - c00225a8: 8626 mv a2,s1 - c00225aa: 85ce mv a1,s3 - c00225ac: 854a mv a0,s2 - c00225ae: acbf50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30391 (discriminator 1) + c0022770: 4801 li a6,0 + c0022772: 107c addi a5,sp,44 + c0022774: 8722 mv a4,s0 + c0022776: 86d6 mv a3,s5 + c0022778: 8626 mv a2,s1 + c002277a: 85ce mv a1,s3 + c002277c: 854a mv a0,s2 + c002277e: acbf50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30399 (discriminator 1) is_put = (op == OP_scope_put_var || op == OP_scope_put_var_init); - c00225b2: 8d4e mv s10,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30476 (discriminator 1) + c0022782: 8d4e mv s10,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30484 (discriminator 1) if (!is_arg_scope) { - c00225b4: 5a79 li s4,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30445 (discriminator 1) + c0022784: 5a79 li s4,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30453 (discriminator 1) for (fd = s; fd->parent;) { - c00225b6: 8e6a mv t3,s10 - c00225b8: 008d3d03 ld s10,8(s10) - c00225bc: 040d0863 beqz s10,c002260c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30448 + c0022786: 8e6a mv t3,s10 + c0022788: 008d3d03 ld s10,8(s10) + c002278c: 040d0863 beqz s10,c00227dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30456 for (idx = fd->scopes[scope_level].first; idx >= 0;) { - c00225c0: 014e2703 lw a4,20(t3) # fffffffffc000014 <_ebss+0xffffffff3befeeee> - c00225c4: 0f0d3783 ld a5,240(s10) - c00225c8: 070e slli a4,a4,0x3 - c00225ca: 97ba add a5,a5,a4 - c00225cc: 43dc lw a5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30448 (discriminator 1) - c00225ce: 3007d763 bgez a5,c00228dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30476 + c0022790: 014e2703 lw a4,20(t3) # fffffffffc000014 <_ebss+0xffffffff3befeeee> + c0022794: 0f0d3783 ld a5,240(s10) + c0022798: 070e slli a4,a4,0x3 + c002279a: 97ba add a5,a5,a4 + c002279c: 43dc lw a5,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30456 (discriminator 1) + c002279e: 3007d763 bgez a5,c0022aac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30484 if (!is_arg_scope) { - c00225d2: 01478b63 beq a5,s4,c00225e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30477 + c00227a2: 01478b63 beq a5,s4,c00227b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30485 var_idx = find_var(ctx, fd, var_name); - c00225d6: 8626 mv a2,s1 - c00225d8: 85ea mv a1,s10 - c00225da: 854a mv a0,s2 - c00225dc: e83e sd a5,16(sp) - c00225de: a58e40ef jal ra,c0006836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30478 + c00227a6: 8626 mv a2,s1 + c00227a8: 85ea mv a1,s10 + c00227aa: 854a mv a0,s2 + c00227ac: e83e sd a5,16(sp) + c00227ae: 976e40ef jal ra,c0006924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30486 if (var_idx >= 0) - c00225e2: 67c2 ld a5,16(sp) - c00225e4: 3c055e63 bgez a0,c00229c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30481 + c00227b2: 67c2 ld a5,16(sp) + c00227b4: 3c055e63 bgez a0,c0022b90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30489 if (is_pseudo_var) { - c00225e8: 3c0c1363 bnez s8,c00229ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30486 + c00227b8: 3c0c1363 bnez s8,c0022b7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30494 if (var_name == JS_ATOM_arguments && fd->has_arguments_binding) { - c00225ec: 04e00713 li a4,78 - c00225f0: 3ce49a63 bne s1,a4,c00229c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30486 (discriminator 1) - c00225f4: 060d2703 lw a4,96(s10) - c00225f8: 3c070663 beqz a4,c00229c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30487 + c00227bc: 04e00713 li a4,78 + c00227c0: 3ce49a63 bne s1,a4,c0022b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30494 (discriminator 1) + c00227c4: 060d2703 lw a4,96(s10) + c00227c8: 3c070663 beqz a4,c0022b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30495 var_idx = add_arguments_var(ctx, fd); - c00225fc: 85ea mv a1,s10 - c00225fe: 854a mv a0,s2 - c0022600: aadff0ef jal ra,c00220ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30492 + c00227cc: 85ea mv a1,s10 + c00227ce: 854a mv a0,s2 + c00227d0: aadff0ef jal ra,c002227c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30500 var_idx = add_func_var(ctx, fd, var_name); - c0022604: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30528 + c00227d4: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30536 if (var_idx < 0 && fd->is_eval) { - c0022606: 8e6a mv t3,s10 - c0022608: 2e055f63 bgez a0,c0022906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30528 (discriminator 1) - c002260c: 038e2783 lw a5,56(t3) - c0022610: 5a078763 beqz a5,c0022bbe - c0022614: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30543 (discriminator 1) + c00227d6: 8e6a mv t3,s10 + c00227d8: 2e055f63 bgez a0,c0022ad6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30536 (discriminator 1) + c00227dc: 038e2783 lw a5,56(t3) + c00227e0: 5a078763 beqz a5,c0022d8e + c00227e4: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30551 (discriminator 1) } else if ((cv->var_name == JS_ATOM__var_ || - c0022616: 4d89 li s11,2 - c0022618: ab79 j c0022bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30288 + c00227e6: 4d89 li s11,2 + c00227e8: ab79 j c0022d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30296 vd = &s->vars[idx]; - c002261a: 0909b783 ld a5,144(s3) - c002261e: 004d1d93 slli s11,s10,0x4 - c0022622: 9dbe add s11,s11,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30289 + c00227ea: 0909b783 ld a5,144(s3) + c00227ee: 004d1d93 slli s11,s10,0x4 + c00227f2: 9dbe add s11,s11,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30297 if (vd->var_name == var_name) { - c0022624: 000da783 lw a5,0(s11) - c0022628: 02979d63 bne a5,s1,c0022662 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30290 + c00227f4: 000da783 lw a5,0(s11) + c00227f8: 02979d63 bne a5,s1,c0022832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30298 if (op == OP_scope_put_var || op == OP_scope_make_ref) { - c002262c: ffdaf793 andi a5,s5,-3 - c0022630: 0b900713 li a4,185 - c0022634: 8a6a mv s4,s10 - c0022636: 02e798e3 bne a5,a4,c0022e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30291 + c00227fc: ffdaf793 andi a5,s5,-3 + c0022800: 0b900713 li a4,185 + c0022804: 8a6a mv s4,s10 + c0022806: 02e798e3 bne a5,a4,c0023036 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30299 if (vd->is_const) { - c002263a: 00cda783 lw a5,12(s11) - c002263e: 8b85 andi a5,a5,1 - c0022640: c7a5 beqz a5,c00226a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30583 + c002280a: 00cda783 lw a5,12(s11) + c002280e: 8b85 andi a5,a5,1 + c0022810: c7a5 beqz a5,c0022878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30591 dbuf_putc(bc, OP_throw_error); - c0022642: 03000593 li a1,48 - c0022646: 8522 mv a0,s0 - c0022648: 6fa250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30584 + c0022812: 03000593 li a1,48 + c0022816: 8522 mv a0,s0 + c0022818: 6fa250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30592 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c002264c: 85a6 mv a1,s1 - c002264e: 854a mv a0,s2 - c0022650: e7be40ef jal ra,c00074ca - c0022654: 0005059b sext.w a1,a0 - c0022658: 8522 mv a0,s0 - c002265a: dcfe20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30585 + c002281c: 85a6 mv a1,s1 + c002281e: 854a mv a0,s2 + c0022820: d99e40ef jal ra,c00075b8 + c0022824: 0005059b sext.w a1,a0 + c0022828: 8522 mv a0,s0 + c002282a: cede20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30593 dbuf_putc(bc, JS_THROW_VAR_RO); - c002265e: 4581 li a1,0 - c0022660: a435 j c002288c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30301 + c002282e: 4581 li a1,0 + c0022830: a435 j c0022a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30309 if (vd->var_name == JS_ATOM__with_ && !is_pseudo_var) { - c0022662: 03479863 bne a5,s4,c0022692 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30301 (discriminator 1) - c0022666: 020c1663 bnez s8,c0022692 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30302 + c0022832: 03479863 bne a5,s4,c0022862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30309 (discriminator 1) + c0022836: 020c1663 bnez s8,c0022862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30310 dbuf_putc(bc, OP_get_loc); - c002266a: 05800593 li a1,88 - c002266e: 8522 mv a0,s0 - c0022670: 6d2250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30303 + c002283a: 05800593 li a1,88 + c002283e: 8522 mv a0,s0 + c0022840: 6d2250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30311 dbuf_put_u16(bc, idx); - c0022674: 030d1593 slli a1,s10,0x30 - c0022678: 91c1 srli a1,a1,0x30 - c002267a: 8522 mv a0,s0 - c002267c: c77e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30304 + c0022844: 030d1593 slli a1,s10,0x30 + c0022848: 91c1 srli a1,a1,0x30 + c002284a: 8522 mv a0,s0 + c002284c: b95e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30312 var_object_test(ctx, s, var_name, op, bc, &label_done, 1); - c0022680: 4805 li a6,1 - c0022682: 107c addi a5,sp,44 - c0022684: 8722 mv a4,s0 - c0022686: 86d6 mv a3,s5 - c0022688: 8626 mv a2,s1 - c002268a: 85ce mv a1,s3 - c002268c: 854a mv a0,s2 - c002268e: 9ebf50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30306 + c0022850: 4805 li a6,1 + c0022852: 107c addi a5,sp,44 + c0022854: 8722 mv a4,s0 + c0022856: 86d6 mv a3,s5 + c0022858: 8626 mv a2,s1 + c002285a: 85ce mv a1,s3 + c002285c: 854a mv a0,s2 + c002285e: 9ebf50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30314 idx = vd->scope_next; - c0022692: 008dad03 lw s10,8(s11) - c0022696: bd85 j c0022506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30317 + c0022862: 008dad03 lw s10,8(s11) + c0022866: bd85 j c00226d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30325 var_idx = resolve_pseudo_var(ctx, s, var_name); - c0022698: 8626 mv a2,s1 - c002269a: 85ce mv a1,s3 - c002269c: 854a mv a0,s2 - c002269e: a93ff0ef jal ra,c0022130 - c00226a2: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30319 + c0022868: 8626 mv a2,s1 + c002286a: 85ce mv a1,s3 + c002286c: 854a mv a0,s2 + c002286e: a93ff0ef jal ra,c0022300 + c0022872: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30327 if (var_idx < 0 && var_name == JS_ATOM_arguments && - c00226a4: e80540e3 bltz a0,c0022524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30330 + c0022874: e80540e3 bltz a0,c00226f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30338 if ((op == OP_scope_put_var || op == OP_scope_make_ref) && - c00226a8: ffdaf793 andi a5,s5,-3 - c00226ac: 0b900713 li a4,185 - c00226b0: 7ae79b63 bne a5,a4,c0022e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30331 (discriminator 3) + c0022878: ffdaf793 andi a5,s5,-3 + c002287c: 0b900713 li a4,185 + c0022880: 7ae79b63 bne a5,a4,c0023036 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30339 (discriminator 3) !(var_idx & ARGUMENT_VAR_OFFSET) && - c00226b4: 01da5793 srli a5,s4,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30330 (discriminator 3) + c0022884: 01da5793 srli a5,s4,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30338 (discriminator 3) if ((op == OP_scope_put_var || op == OP_scope_make_ref) && - c00226b8: 8b85 andi a5,a5,1 - c00226ba: eb89 bnez a5,c00226cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30331 + c0022888: 8b85 andi a5,a5,1 + c002288a: eb89 bnez a5,c002289c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30339 !(var_idx & ARGUMENT_VAR_OFFSET) && - c00226bc: 0909b783 ld a5,144(s3) - c00226c0: 004a1713 slli a4,s4,0x4 - c00226c4: 97ba add a5,a5,a4 - c00226c6: 47dc lw a5,12(a5) - c00226c8: 8b85 andi a5,a5,1 - c00226ca: ffa5 bnez a5,c0022642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30343 + c002288c: 0909b783 ld a5,144(s3) + c0022890: 004a1713 slli a4,s4,0x4 + c0022894: 97ba add a5,a5,a4 + c0022896: 47dc lw a5,12(a5) + c0022898: 8b85 andi a5,a5,1 + c002289a: ffa5 bnez a5,c0022812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30351 switch (op) { - c00226cc: f46a879b addiw a5,s5,-186 - c00226d0: 0007869b sext.w a3,a5 - c00226d4: 4705 li a4,1 - c00226d6: 14d76363 bltu a4,a3,c002281c - c00226da: 02079713 slli a4,a5,0x20 - c00226de: 01e75793 srli a5,a4,0x1e - c00226e2: 0003c717 auipc a4,0x3c - c00226e6: 25670713 addi a4,a4,598 # c005e938 - c00226ea: 97ba add a5,a5,a4 - c00226ec: 439c lw a5,0(a5) - c00226ee: 97ba add a5,a5,a4 - c00226f0: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30324 (discriminator 2) + c002289c: f46a879b addiw a5,s5,-186 + c00228a0: 0007869b sext.w a3,a5 + c00228a4: 4705 li a4,1 + c00228a6: 14d76363 bltu a4,a3,c00229ec + c00228aa: 02079713 slli a4,a5,0x20 + c00228ae: 01e75793 srli a5,a4,0x1e + c00228b2: 0003c717 auipc a4,0x3c + c00228b6: 2e670713 addi a4,a4,742 # c005eb98 + c00228ba: 97ba add a5,a5,a4 + c00228bc: 439c lw a5,0(a5) + c00228be: 97ba add a5,a5,a4 + c00228c0: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30332 (discriminator 2) if (var_idx < 0 && s->is_func_expr && var_name == s->func_name) { - c00226f2: 0889a783 lw a5,136(s3) - c00226f6: e49799e3 bne a5,s1,c0022548 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30326 + c00228c2: 0889a783 lw a5,136(s3) + c00228c6: e49799e3 bne a5,s1,c0022718 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30334 var_idx = add_func_var(ctx, s, var_name); - c00226fa: 8626 mv a2,s1 - c00226fc: 85ce mv a1,s3 - c00226fe: 854a mv a0,s2 - c0022700: 9ddff0ef jal ra,c00220dc - c0022704: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30329 + c00228ca: 8626 mv a2,s1 + c00228cc: 85ce mv a1,s3 + c00228ce: 854a mv a0,s2 + c00228d0: 9ddff0ef jal ra,c00222ac + c00228d4: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30337 if (var_idx >= 0) { - c0022706: e40541e3 bltz a0,c0022548 - c002270a: bf79 j c00226a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30345 + c00228d6: e40541e3 bltz a0,c0022718 + c00228da: bf79 j c0022878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30353 if (!(var_idx & ARGUMENT_VAR_OFFSET) && - c002270c: 20000ab7 lui s5,0x20000 - c0022710: 015a7ab3 and s5,s4,s5 - c0022714: 060a9963 bnez s5,c0022786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30346 (discriminator 1) + c00228dc: 20000ab7 lui s5,0x20000 + c00228e0: 015a7ab3 and s5,s4,s5 + c00228e4: 060a9963 bnez s5,c0022956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30354 (discriminator 1) s->vars[var_idx].var_kind == JS_VAR_FUNCTION_NAME) { - c0022718: 0909b783 ld a5,144(s3) - c002271c: 004a1713 slli a4,s4,0x4 - c0022720: 97ba add a5,a5,a4 - c0022722: 47dc lw a5,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30345 (discriminator 1) + c00228e8: 0909b783 ld a5,144(s3) + c00228ec: 004a1713 slli a4,s4,0x4 + c00228f0: 97ba add a5,a5,a4 + c00228f2: 47dc lw a5,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30353 (discriminator 1) if (!(var_idx & ARGUMENT_VAR_OFFSET) && - c0022724: 04000713 li a4,64 - c0022728: 0f07f793 andi a5,a5,240 - c002272c: 04e79d63 bne a5,a4,c0022786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30348 + c00228f4: 04000713 li a4,64 + c00228f8: 0f07f793 andi a5,a5,240 + c00228fc: 04e79d63 bne a5,a4,c0022956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30356 dbuf_putc(bc, OP_object); - c0022730: 45ad li a1,11 - c0022732: 8522 mv a0,s0 - c0022734: 60e250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30349 + c0022900: 45ad li a1,11 + c0022902: 8522 mv a0,s0 + c0022904: 60e250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30357 dbuf_putc(bc, OP_get_loc); - c0022738: 05800593 li a1,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30593 + c0022908: 05800593 li a1,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30601 dbuf_putc(bc, OP_get_var_ref); - c002273c: 8522 mv a0,s0 - c002273e: 604250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30594 + c002290c: 8522 mv a0,s0 + c002290e: 604250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30602 dbuf_put_u16(bc, idx); - c0022742: 030a1593 slli a1,s4,0x30 - c0022746: 91c1 srli a1,a1,0x30 - c0022748: 8522 mv a0,s0 - c002274a: ba9e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30595 + c0022912: 030a1593 slli a1,s4,0x30 + c0022916: 91c1 srli a1,a1,0x30 + c0022918: 8522 mv a0,s0 + c002291a: ac7e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30603 dbuf_putc(bc, OP_define_field); - c002274e: 04c00593 li a1,76 - c0022752: 8522 mv a0,s0 - c0022754: 5ee250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30596 + c002291e: 04c00593 li a1,76 + c0022922: 8522 mv a0,s0 + c0022924: 5ee250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30604 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c0022758: 85a6 mv a1,s1 - c002275a: 854a mv a0,s2 - c002275c: d6fe40ef jal ra,c00074ca - c0022760: 0005059b sext.w a1,a0 - c0022764: 8522 mv a0,s0 - c0022766: cc3e20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30597 + c0022928: 85a6 mv a1,s1 + c002292a: 854a mv a0,s2 + c002292c: c8de40ef jal ra,c00075b8 + c0022930: 0005059b sext.w a1,a0 + c0022934: 8522 mv a0,s0 + c0022936: be1e20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30605 dbuf_putc(bc, OP_push_atom_value); - c002276a: 4591 li a1,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30690 + c002293a: 4591 li a1,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30698 dbuf_putc(bc, OP_delete_var); - c002276c: 8522 mv a0,s0 - c002276e: 5d4250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30691 + c002293c: 8522 mv a0,s0 + c002293e: 5d4250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30699 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c0022772: 85a6 mv a1,s1 - c0022774: 854a mv a0,s2 - c0022776: d55e40ef jal ra,c00074ca - c002277a: 0005059b sext.w a1,a0 - c002277e: 8522 mv a0,s0 - c0022780: ca9e20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30692 + c0022942: 85a6 mv a1,s1 + c0022944: 854a mv a0,s2 + c0022946: c73e40ef jal ra,c00075b8 + c002294a: 0005059b sext.w a1,a0 + c002294e: 8522 mv a0,s0 + c0022950: bc7e20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30700 break; - c0022784: a239 j c0022892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30356 + c0022954: a239 j c0022a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30364 if (label_done == -1 && can_opt_put_ref_value(bc_buf, ls->pos)) { - c0022786: 5732 lw a4,44(sp) - c0022788: 57fd li a5,-1 - c002278a: 04f71663 bne a4,a5,c00227d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30356 (discriminator 1) - c002278e: 004ca583 lw a1,4(s9) - c0022792: 855a mv a0,s6 - c0022794: d3de10ef jal ra,c00044d0 - c0022798: cd1d beqz a0,c00227d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30358 + c0022956: 5732 lw a4,44(sp) + c0022958: 57fd li a5,-1 + c002295a: 04f71663 bne a4,a5,c00229a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30364 (discriminator 1) + c002295e: 004ca583 lw a1,4(s9) + c0022962: 855a mv a0,s6 + c0022964: b6de10ef jal ra,c00044d0 + c0022968: cd1d beqz a0,c00229a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30366 if (var_idx & ARGUMENT_VAR_OFFSET) { - c002279a: 020a8163 beqz s5,c00227bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30360 + c002296a: 020a8163 beqz s5,c002298c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30368 var_idx -= ARGUMENT_VAR_OFFSET; - c002279e: e00007b7 lui a5,0xe0000 - c00227a2: 01478a3b addw s4,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30359 + c002296e: e00007b7 lui a5,0xe0000 + c0022972: 01478a3b addw s4,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30367 get_op = OP_get_arg; - c00227a6: 05b00713 li a4,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30607 + c0022976: 05b00713 li a4,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30615 pos_next = optimize_scope_make_ref(ctx, s, bc, bc_buf, ls, - c00227aa: 86de mv a3,s7 - c00227ac: 87d2 mv a5,s4 - c00227ae: 8666 mv a2,s9 - c00227b0: 85da mv a1,s6 - c00227b2: 8522 mv a0,s0 - c00227b4: a49e30ef jal ra,c00061fc - c00227b8: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30601 + c002297a: 86de mv a3,s7 + c002297c: 87d2 mv a5,s4 + c002297e: 8666 mv a2,s9 + c0022980: 85da mv a1,s6 + c0022982: 8522 mv a0,s0 + c0022984: 967e30ef jal ra,c00062ea + c0022988: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30609 can_opt_put_ref_value(bc_buf, ls->pos)) { - c00227ba: a8e1 j c0022892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30362 + c002298a: a8e1 j c0022a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30370 if (s->vars[var_idx].is_lexical) - c00227bc: 0909b783 ld a5,144(s3) - c00227c0: 004a1713 slli a4,s4,0x4 - c00227c4: 97ba add a5,a5,a4 - c00227c6: 47dc lw a5,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30363 + c002298c: 0909b783 ld a5,144(s3) + c0022990: 004a1713 slli a4,s4,0x4 + c0022994: 97ba add a5,a5,a4 + c0022996: 47dc lw a5,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30371 get_op = OP_get_loc_check; - c00227c8: 06200713 li a4,98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30362 + c0022998: 06200713 li a4,98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30370 if (s->vars[var_idx].is_lexical) - c00227cc: 8b89 andi a5,a5,2 - c00227ce: fff1 bnez a5,c00227aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30365 + c002299c: 8b89 andi a5,a5,2 + c002299e: fff1 bnez a5,c002297a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30373 get_op = OP_get_loc; - c00227d0: 05800713 li a4,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30367 + c00229a0: 05800713 li a4,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30375 pos_next = optimize_scope_make_ref(ctx, s, bc, bc_buf, ls, - c00227d4: bfd9 j c00227aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30350 + c00229a4: bfd9 j c002297a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30358 dbuf_put_u16(bc, var_idx); - c00227d6: 1a42 slli s4,s4,0x30 - c00227d8: 030a5a13 srli s4,s4,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30373 + c00229a6: 1a42 slli s4,s4,0x30 + c00229a8: 030a5a13 srli s4,s4,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30381 dbuf_putc(bc, OP_make_arg_ref); - c00227dc: 07b00593 li a1,123 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30372 + c00229ac: 07b00593 li a1,123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30380 if (var_idx & ARGUMENT_VAR_OFFSET) { - c00227e0: 000a9463 bnez s5,c00227e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30377 + c00229b0: 000a9463 bnez s5,c00229b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30385 dbuf_putc(bc, OP_make_loc_ref); - c00227e4: 07a00593 li a1,122 - c00227e8: 8522 mv a0,s0 - c00227ea: 558250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30378 + c00229b4: 07a00593 li a1,122 + c00229b8: 8522 mv a0,s0 + c00229ba: 558250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30386 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c00227ee: 85a6 mv a1,s1 - c00227f0: 854a mv a0,s2 - c00227f2: cd9e40ef jal ra,c00074ca - c00227f6: 0005059b sext.w a1,a0 - c00227fa: 8522 mv a0,s0 - c00227fc: c2de20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30379 + c00229be: 85a6 mv a1,s1 + c00229c0: 854a mv a0,s2 + c00229c2: bf7e40ef jal ra,c00075b8 + c00229c6: 0005059b sext.w a1,a0 + c00229ca: 8522 mv a0,s0 + c00229cc: b4be20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30387 dbuf_put_u16(bc, var_idx); - c0022800: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30650 + c00229d0: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30658 dbuf_put_u16(bc, idx); - c0022802: 8522 mv a0,s0 - c0022804: aefe20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30651 + c00229d2: 8522 mv a0,s0 + c00229d4: a0de20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30659 break; - c0022808: a069 j c0022892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30384 + c00229d8: a069 j c0022a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30392 dbuf_putc(bc, OP_undefined); - c002280a: 4599 li a1,6 - c002280c: 8522 mv a0,s0 - c002280e: 534250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30391 (discriminator 2) + c00229da: 4599 li a1,6 + c00229dc: 8522 mv a0,s0 + c00229de: 534250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30399 (discriminator 2) is_put = (op == OP_scope_put_var || op == OP_scope_put_var_init); - c0022812: f43a8593 addi a1,s5,-189 # 1fffff43 <__clzdi2-0xa00000bd> - c0022816: 0015b593 seqz a1,a1 - c002281a: a031 j c0022826 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30391 - c002281c: 0b900793 li a5,185 - c0022820: 4585 li a1,1 - c0022822: fefa98e3 bne s5,a5,c0022812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30392 (discriminator 6) + c00229e2: f43a8593 addi a1,s5,-189 # 1fffff43 <__clzdi2-0xa00000bd> + c00229e6: 0015b593 seqz a1,a1 + c00229ea: a031 j c00229f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30399 + c00229ec: 0b900793 li a5,185 + c00229f0: 4585 li a1,1 + c00229f2: fefa98e3 bne s5,a5,c00229e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30400 (discriminator 6) if (var_idx & ARGUMENT_VAR_OFFSET) { - c0022826: 01da5793 srli a5,s4,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30394 (discriminator 6) + c00229f6: 01da5793 srli a5,s4,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30402 (discriminator 6) dbuf_put_u16(bc, var_idx - ARGUMENT_VAR_OFFSET); - c002282a: 030a1913 slli s2,s4,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30392 (discriminator 6) + c00229fa: 030a1913 slli s2,s4,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30400 (discriminator 6) if (var_idx & ARGUMENT_VAR_OFFSET) { - c002282e: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30394 (discriminator 6) + c00229fe: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30402 (discriminator 6) dbuf_put_u16(bc, var_idx - ARGUMENT_VAR_OFFSET); - c0022830: 03095913 srli s2,s2,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30392 (discriminator 6) + c0022a00: 03095913 srli s2,s2,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30400 (discriminator 6) if (var_idx & ARGUMENT_VAR_OFFSET) { - c0022834: cb81 beqz a5,c0022844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30393 + c0022a04: cb81 beqz a5,c0022a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30401 dbuf_putc(bc, OP_get_arg + is_put); - c0022836: 05b58593 addi a1,a1,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30419 + c0022a06: 05b58593 addi a1,a1,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30427 dbuf_putc(bc, OP_get_loc); - c002283a: 8522 mv a0,s0 - c002283c: 506250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30422 + c0022a0a: 8522 mv a0,s0 + c0022a0c: 506250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30430 dbuf_put_u16(bc, var_idx); - c0022840: 85ca mv a1,s2 - c0022842: b7c1 j c0022802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30397 + c0022a10: 85ca mv a1,s2 + c0022a12: b7c1 j c00229d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30405 if (s->vars[var_idx].is_lexical) { - c0022844: 0909b783 ld a5,144(s3) - c0022848: 004a1513 slli a0,s4,0x4 - c002284c: 97aa add a5,a5,a0 - c002284e: 47dc lw a5,12(a5) - c0022850: 8b89 andi a5,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30396 + c0022a14: 0909b783 ld a5,144(s3) + c0022a18: 004a1513 slli a0,s4,0x4 + c0022a1c: 97aa add a5,a5,a0 + c0022a1e: 47dc lw a5,12(a5) + c0022a20: 8b89 andi a5,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30404 if (is_put) { - c0022852: c185 beqz a1,c0022872 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30397 + c0022a22: c185 beqz a1,c0022a42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30405 if (s->vars[var_idx].is_lexical) { - c0022854: cf81 beqz a5,c002286c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30398 + c0022a24: cf81 beqz a5,c0022a3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30406 if (op == OP_scope_put_var_init) { - c0022856: 0bd00793 li a5,189 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30405 + c0022a26: 0bd00793 li a5,189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30413 dbuf_putc(bc, OP_put_loc_check); - c002285a: 06300593 li a1,99 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30398 + c0022a2a: 06300593 li a1,99 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30406 if (op == OP_scope_put_var_init) { - c002285e: fcfa9ee3 bne s5,a5,c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30400 + c0022a2e: fcfa9ee3 bne s5,a5,c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30408 if (var_name == JS_ATOM_this) - c0022862: 47a1 li a5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30401 + c0022a32: 47a1 li a5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30409 dbuf_putc(bc, OP_put_loc_check_init); - c0022864: 06400593 li a1,100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30400 + c0022a34: 06400593 li a1,100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30408 if (var_name == JS_ATOM_this) - c0022868: fcf489e3 beq s1,a5,c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30403 + c0022a38: fcf489e3 beq s1,a5,c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30411 dbuf_putc(bc, OP_put_loc); - c002286c: 05900593 li a1,89 - c0022870: b7e9 j c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30419 + c0022a3c: 05900593 li a1,89 + c0022a40: b7e9 j c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30427 dbuf_putc(bc, OP_get_loc); - c0022872: 05800593 li a1,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30411 + c0022a42: 05800593 li a1,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30419 if (s->vars[var_idx].is_lexical) { - c0022876: d3f1 beqz a5,c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30412 + c0022a46: d3f1 beqz a5,c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30420 if (op == OP_scope_get_var_checkthis) { - c0022878: 0be00793 li a5,190 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30414 + c0022a48: 0be00793 li a5,190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30422 dbuf_putc(bc, OP_get_loc_checkthis); - c002287c: 06500593 li a1,101 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30412 + c0022a4c: 06500593 li a1,101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30420 if (op == OP_scope_get_var_checkthis) { - c0022880: fafa8de3 beq s5,a5,c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30416 + c0022a50: fafa8de3 beq s5,a5,c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30424 dbuf_putc(bc, OP_get_loc_check); - c0022884: 06200593 li a1,98 - c0022888: bf4d j c002283a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30426 + c0022a54: 06200593 li a1,98 + c0022a58: bf4d j c0022a0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30434 dbuf_putc(bc, OP_push_false); - c002288a: 45a5 li a1,9 - c002288c: 8522 mv a0,s0 - c002288e: 4b4250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30695 + c0022a5a: 45a5 li a1,9 + c0022a5c: 8522 mv a0,s0 + c0022a5e: 4b4250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30703 if (label_done >= 0) { - c0022892: 57b2 lw a5,44(sp) - c0022894: 0207c463 bltz a5,c00228bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30696 + c0022a62: 57b2 lw a5,44(sp) + c0022a64: 0207c463 bltz a5,c0022a8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30704 dbuf_putc(bc, OP_label); - c0022898: 0b600593 li a1,182 - c002289c: 8522 mv a0,s0 - c002289e: 4a4250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30697 + c0022a68: 0b600593 li a1,182 + c0022a6c: 8522 mv a0,s0 + c0022a6e: 4a4250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30705 dbuf_put_u32(bc, label_done); - c00228a2: 55b2 lw a1,44(sp) - c00228a4: 8522 mv a0,s0 - c00228a6: b83e20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30698 + c0022a72: 55b2 lw a1,44(sp) + c0022a74: 8522 mv a0,s0 + c0022a76: aa1e20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30706 s->label_slots[label_done].pos2 = bc->size; - c00228aa: 5732 lw a4,44(sp) - c00228ac: 46e1 li a3,24 - c00228ae: 1709b783 ld a5,368(s3) - c00228b2: 02d70733 mul a4,a4,a3 - c00228b6: 97ba add a5,a5,a4 - c00228b8: 6418 ld a4,8(s0) - c00228ba: c798 sw a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30701 -} - c00228bc: 60ea ld ra,152(sp) - c00228be: 644a ld s0,144(sp) - c00228c0: 64aa ld s1,136(sp) - c00228c2: 690a ld s2,128(sp) - c00228c4: 79e6 ld s3,120(sp) - c00228c6: 7a46 ld s4,112(sp) - c00228c8: 7aa6 ld s5,104(sp) - c00228ca: 7b06 ld s6,96(sp) - c00228cc: 6c46 ld s8,80(sp) - c00228ce: 6ca6 ld s9,72(sp) - c00228d0: 6d06 ld s10,64(sp) - c00228d2: 7de2 ld s11,56(sp) - c00228d4: 855e mv a0,s7 - c00228d6: 6be6 ld s7,88(sp) - c00228d8: 610d addi sp,sp,160 - c00228da: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30449 + c0022a7a: 5732 lw a4,44(sp) + c0022a7c: 46e1 li a3,24 + c0022a7e: 1709b783 ld a5,368(s3) + c0022a82: 02d70733 mul a4,a4,a3 + c0022a86: 97ba add a5,a5,a4 + c0022a88: 6418 ld a4,8(s0) + c0022a8a: c798 sw a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30709 +} + c0022a8c: 60ea ld ra,152(sp) + c0022a8e: 644a ld s0,144(sp) + c0022a90: 64aa ld s1,136(sp) + c0022a92: 690a ld s2,128(sp) + c0022a94: 79e6 ld s3,120(sp) + c0022a96: 7a46 ld s4,112(sp) + c0022a98: 7aa6 ld s5,104(sp) + c0022a9a: 7b06 ld s6,96(sp) + c0022a9c: 6c46 ld s8,80(sp) + c0022a9e: 6ca6 ld s9,72(sp) + c0022aa0: 6d06 ld s10,64(sp) + c0022aa2: 7de2 ld s11,56(sp) + c0022aa4: 855e mv a0,s7 + c0022aa6: 6be6 ld s7,88(sp) + c0022aa8: 610d addi sp,sp,160 + c0022aaa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30457 vd = &fd->vars[idx]; - c00228dc: 090d3703 ld a4,144(s10) - c00228e0: 00479e13 slli t3,a5,0x4 - c00228e4: 01c70db3 add s11,a4,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30450 + c0022aac: 090d3703 ld a4,144(s10) + c0022ab0: 00479e13 slli t3,a5,0x4 + c0022ab4: 01c70db3 add s11,a4,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30458 if (vd->var_name == var_name) { - c00228e8: 000da703 lw a4,0(s11) - c00228ec: 04971e63 bne a4,s1,c0022948 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30451 + c0022ab8: 000da703 lw a4,0(s11) + c0022abc: 04971e63 bne a4,s1,c0022b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30459 if (op == OP_scope_put_var || op == OP_scope_make_ref) { - c00228f0: ffdaf713 andi a4,s5,-3 - c00228f4: 0b900693 li a3,185 - c00228f8: 00d71763 bne a4,a3,c0022906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30452 + c0022ac0: ffdaf713 andi a4,s5,-3 + c0022ac4: 0b900693 li a3,185 + c0022ac8: 00d71763 bne a4,a3,c0022ad6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30460 if (vd->is_const) { - c00228fc: 00cda703 lw a4,12(s11) - c0022900: 8b05 andi a4,a4,1 - c0022902: d40710e3 bnez a4,c0022642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30565 + c0022acc: 00cda703 lw a4,12(s11) + c0022ad0: 8b05 andi a4,a4,1 + c0022ad2: d40710e3 bnez a4,c0022812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30573 if (var_idx & ARGUMENT_VAR_OFFSET) { - c0022906: 01d7d713 srli a4,a5,0x1d - c002290a: 8b05 andi a4,a4,1 - c002290c: 2c071c63 bnez a4,c0022be4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30571 + c0022ad6: 01d7d713 srli a4,a5,0x1d + c0022ada: 8b05 andi a4,a4,1 + c0022adc: 2c071c63 bnez a4,c0022db4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30579 fd->vars[var_idx].is_captured = 1; - c0022910: 090d3683 ld a3,144(s10) - c0022914: 00479593 slli a1,a5,0x4 + c0022ae0: 090d3683 ld a3,144(s10) + c0022ae4: 00479593 slli a1,a5,0x4 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022918: 8826 mv a6,s1 + c0022ae8: 8826 mv a6,s1 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30571 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30579 fd->vars[var_idx].is_captured = 1; - c002291a: 96ae add a3,a3,a1 - c002291c: 46d0 lw a2,12(a3) - c002291e: 00466613 ori a2,a2,4 - c0022922: c6d0 sw a2,12(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30575 + c0022aea: 96ae add a3,a3,a1 + c0022aec: 46d0 lw a2,12(a3) + c0022aee: 00466613 ori a2,a2,4 + c0022af2: c6d0 sw a2,12(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30583 fd->vars[var_idx].is_const, - c0022924: 090d3703 ld a4,144(s10) - c0022928: 972e add a4,a4,a1 - c002292a: 00c72883 lw a7,12(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30577 + c0022af4: 090d3703 ld a4,144(s10) + c0022af8: 972e add a4,a4,a1 + c0022afa: 00c72883 lw a7,12(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30585 fd->vars[var_idx].var_kind); - c002292e: 0048d69b srliw a3,a7,0x4 + c0022afe: 0048d69b srliw a3,a7,0x4 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022932: 8abd andi a3,a3,15 - c0022934: e436 sd a3,8(sp) + c0022b02: 8abd andi a3,a3,15 + c0022b04: e436 sd a3,8(sp) resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30584 fd->vars[var_idx].is_lexical, - c0022936: 4758 lw a4,12(a4) + c0022b06: 4758 lw a4,12(a4) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022938: 0018f893 andi a7,a7,1 + c0022b08: 0018f893 andi a7,a7,1 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30584 fd->vars[var_idx].is_lexical, - c002293c: 0017571b srliw a4,a4,0x1 + c0022b0c: 0017571b srliw a4,a4,0x1 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022940: 8b05 andi a4,a4,1 - c0022942: e03a sd a4,0(sp) - c0022944: 4701 li a4,0 - c0022946: a4c1 j c0022c06 + c0022b10: 8b05 andi a4,a4,1 + c0022b12: e03a sd a4,0(sp) + c0022b14: 4701 li a4,0 + c0022b16: a4c1 j c0022dd6 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30469 } else if (vd->var_name == JS_ATOM__with_ && !is_pseudo_var) { - c0022948: 05500693 li a3,85 - c002294c: 04d71e63 bne a4,a3,c00229a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30461 (discriminator 1) - c0022950: 040c1c63 bnez s8,c00229a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30462 + c0022b18: 05500693 li a3,85 + c0022b1c: 04d71e63 bne a4,a3,c0022b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30469 (discriminator 1) + c0022b20: 040c1c63 bnez s8,c0022b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30470 vd->is_captured = 1; - c0022954: 00cda703 lw a4,12(s11) + c0022b24: 00cda703 lw a4,12(s11) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022958: 4881 li a7,0 - c002295a: 05500813 li a6,85 + c0022b28: 4881 li a7,0 + c0022b2a: 05500813 li a6,85 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30470 vd->is_captured = 1; - c002295e: 00476713 ori a4,a4,4 - c0022962: 00eda623 sw a4,12(s11) + c0022b2e: 00476713 ori a4,a4,4 + c0022b32: 00eda623 sw a4,12(s11) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022966: e402 sd zero,8(sp) - c0022968: e002 sd zero,0(sp) - c002296a: 4701 li a4,0 - c002296c: 4685 li a3,1 - c002296e: 866a mv a2,s10 - c0022970: 85ce mv a1,s3 - c0022972: 854a mv a0,s2 - c0022974: 99fff0ef jal ra,c0022312 + c0022b36: e402 sd zero,8(sp) + c0022b38: e002 sd zero,0(sp) + c0022b3a: 4701 li a4,0 + c0022b3c: 4685 li a3,1 + c0022b3e: 866a mv a2,s10 + c0022b40: 85ce mv a1,s3 + c0022b42: 854a mv a0,s2 + c0022b44: 99fff0ef jal ra,c00224e2 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30472 if (idx >= 0) { - c0022978: e82a sd a0,16(sp) - c002297a: 02054763 bltz a0,c00229a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30465 + c0022b48: e82a sd a0,16(sp) + c0022b4a: 02054763 bltz a0,c0022b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30473 dbuf_putc(bc, OP_get_var_ref); - c002297e: 05e00593 li a1,94 - c0022982: 8522 mv a0,s0 - c0022984: 3be250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30466 + c0022b4e: 05e00593 li a1,94 + c0022b52: 8522 mv a0,s0 + c0022b54: 3be250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30474 dbuf_put_u16(bc, idx); - c0022988: 67c2 ld a5,16(sp) - c002298a: 8522 mv a0,s0 - c002298c: 03079593 slli a1,a5,0x30 - c0022990: 91c1 srli a1,a1,0x30 - c0022992: 961e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30467 + c0022b58: 67c2 ld a5,16(sp) + c0022b5a: 8522 mv a0,s0 + c0022b5c: 03079593 slli a1,a5,0x30 + c0022b60: 91c1 srli a1,a1,0x30 + c0022b62: 87fe20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30475 var_object_test(ctx, s, var_name, op, bc, &label_done, 1); - c0022996: 4805 li a6,1 - c0022998: 107c addi a5,sp,44 - c002299a: 8722 mv a4,s0 - c002299c: 86d6 mv a3,s5 - c002299e: 8626 mv a2,s1 - c00229a0: 85ce mv a1,s3 - c00229a2: 854a mv a0,s2 - c00229a4: ed4f50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30470 + c0022b66: 4805 li a6,1 + c0022b68: 107c addi a5,sp,44 + c0022b6a: 8722 mv a4,s0 + c0022b6c: 86d6 mv a3,s5 + c0022b6e: 8626 mv a2,s1 + c0022b70: 85ce mv a1,s3 + c0022b72: 854a mv a0,s2 + c0022b74: ed4f50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30478 idx = vd->scope_next; - c00229a8: 008da783 lw a5,8(s11) - c00229ac: b10d j c00225ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30482 + c0022b78: 008da783 lw a5,8(s11) + c0022b7c: b10d j c002279e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30490 var_idx = resolve_pseudo_var(ctx, fd, var_name); - c00229ae: 8626 mv a2,s1 - c00229b0: 85ea mv a1,s10 - c00229b2: 854a mv a0,s2 - c00229b4: e83e sd a5,16(sp) - c00229b6: f7aff0ef jal ra,c0022130 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30483 + c0022b7e: 8626 mv a2,s1 + c0022b80: 85ea mv a1,s10 + c0022b82: 854a mv a0,s2 + c0022b84: e83e sd a5,16(sp) + c0022b86: f7aff0ef jal ra,c0022300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30491 if (var_idx >= 0) - c00229ba: 67c2 ld a5,16(sp) - c00229bc: c20548e3 bltz a0,c00225ec - c00229c0: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30528 + c0022b8a: 67c2 ld a5,16(sp) + c0022b8c: c20548e3 bltz a0,c00227bc + c0022b90: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30536 if (var_idx < 0 && fd->is_eval) { - c00229c2: b791 j c0022906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30490 + c0022b92: b791 j c0022ad6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30498 if (fd->is_func_expr && fd->func_name == var_name) { - c00229c4: 044d2703 lw a4,68(s10) - c00229c8: cb19 beqz a4,c00229de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30490 (discriminator 1) - c00229ca: 088d2703 lw a4,136(s10) - c00229ce: 00971863 bne a4,s1,c00229de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30492 + c0022b94: 044d2703 lw a4,68(s10) + c0022b98: cb19 beqz a4,c0022bae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30498 (discriminator 1) + c0022b9a: 088d2703 lw a4,136(s10) + c0022b9e: 00971863 bne a4,s1,c0022bae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30500 var_idx = add_func_var(ctx, fd, var_name); - c00229d2: 8626 mv a2,s1 - c00229d4: 85ea mv a1,s10 - c00229d6: 854a mv a0,s2 - c00229d8: f04ff0ef jal ra,c00220dc - c00229dc: b125 j c0022604 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30497 + c0022ba2: 8626 mv a2,s1 + c0022ba4: 85ea mv a1,s10 + c0022ba6: 854a mv a0,s2 + c0022ba8: f04ff0ef jal ra,c00222ac + c0022bac: b125 j c00227d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30505 if (!is_arg_scope && fd->var_object_idx >= 0 && !is_pseudo_var) { - c00229de: 07478563 beq a5,s4,c0022a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30497 (discriminator 1) - c00229e2: 0b4d2783 lw a5,180(s10) - c00229e6: 0607c163 bltz a5,c0022a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30497 (discriminator 2) - c00229ea: 040c1f63 bnez s8,c0022a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30498 + c0022bae: 07478563 beq a5,s4,c0022c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30505 (discriminator 1) + c0022bb2: 0b4d2783 lw a5,180(s10) + c0022bb6: 0607c163 bltz a5,c0022c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30505 (discriminator 2) + c0022bba: 040c1f63 bnez s8,c0022c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30506 vd = &fd->vars[fd->var_object_idx]; - c00229ee: 00479713 slli a4,a5,0x4 - c00229f2: 090d3783 ld a5,144(s10) + c0022bbe: 00479713 slli a4,a5,0x4 + c0022bc2: 090d3783 ld a5,144(s10) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c00229f6: 4685 li a3,1 - c00229f8: 866a mv a2,s10 + c0022bc6: 4685 li a3,1 + c0022bc8: 866a mv a2,s10 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30506 vd = &fd->vars[fd->var_object_idx]; - c00229fa: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30499 + c0022bca: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30507 vd->is_captured = 1; - c00229fc: 47d8 lw a4,12(a5) + c0022bcc: 47d8 lw a4,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c00229fe: 0007a803 lw a6,0(a5) # ffffffffe0000000 <_ebss+0xffffffff1fefeeda> - c0022a02: 4881 li a7,0 + c0022bce: 0007a803 lw a6,0(a5) # ffffffffe0000000 <_ebss+0xffffffff1fefeeda> + c0022bd2: 4881 li a7,0 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30507 vd->is_captured = 1; - c0022a04: 00476713 ori a4,a4,4 - c0022a08: c7d8 sw a4,12(a5) + c0022bd4: 00476713 ori a4,a4,4 + c0022bd8: c7d8 sw a4,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022a0a: 0b4d2783 lw a5,180(s10) - c0022a0e: 4701 li a4,0 - c0022a10: 85ce mv a1,s3 - c0022a12: e402 sd zero,8(sp) - c0022a14: e002 sd zero,0(sp) - c0022a16: 854a mv a0,s2 - c0022a18: 8fbff0ef jal ra,c0022312 - c0022a1c: e82a sd a0,16(sp) + c0022bda: 0b4d2783 lw a5,180(s10) + c0022bde: 4701 li a4,0 + c0022be0: 85ce mv a1,s3 + c0022be2: e402 sd zero,8(sp) + c0022be4: e002 sd zero,0(sp) + c0022be6: 854a mv a0,s2 + c0022be8: 8fbff0ef jal ra,c00224e2 + c0022bec: e82a sd a0,16(sp) resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30511 dbuf_putc(bc, OP_get_var_ref); - c0022a1e: 05e00593 li a1,94 - c0022a22: 8522 mv a0,s0 - c0022a24: 31e250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30504 + c0022bee: 05e00593 li a1,94 + c0022bf2: 8522 mv a0,s0 + c0022bf4: 31e250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30512 dbuf_put_u16(bc, idx); - c0022a28: 67c2 ld a5,16(sp) - c0022a2a: 8522 mv a0,s0 - c0022a2c: 03079593 slli a1,a5,0x30 - c0022a30: 91c1 srli a1,a1,0x30 - c0022a32: 8c1e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30505 + c0022bf8: 67c2 ld a5,16(sp) + c0022bfa: 8522 mv a0,s0 + c0022bfc: 03079593 slli a1,a5,0x30 + c0022c00: 91c1 srli a1,a1,0x30 + c0022c02: fdee20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30513 var_object_test(ctx, s, var_name, op, bc, &label_done, 0); - c0022a36: 4801 li a6,0 - c0022a38: 107c addi a5,sp,44 - c0022a3a: 8722 mv a4,s0 - c0022a3c: 86d6 mv a3,s5 - c0022a3e: 8626 mv a2,s1 - c0022a40: 85ce mv a1,s3 - c0022a42: 854a mv a0,s2 - c0022a44: e34f50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30509 + c0022c06: 4801 li a6,0 + c0022c08: 107c addi a5,sp,44 + c0022c0a: 8722 mv a4,s0 + c0022c0c: 86d6 mv a3,s5 + c0022c0e: 8626 mv a2,s1 + c0022c10: 85ce mv a1,s3 + c0022c12: 854a mv a0,s2 + c0022c14: e34f50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30517 if (fd->arg_var_object_idx >= 0 && !is_pseudo_var) { - c0022a48: 0b8d2783 lw a5,184(s10) - c0022a4c: 0607c163 bltz a5,c0022aae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30509 (discriminator 1) - c0022a50: 040c1f63 bnez s8,c0022aae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30510 + c0022c18: 0b8d2783 lw a5,184(s10) + c0022c1c: 0607c163 bltz a5,c0022c7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30517 (discriminator 1) + c0022c20: 040c1f63 bnez s8,c0022c7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30518 vd = &fd->vars[fd->arg_var_object_idx]; - c0022a54: 00479713 slli a4,a5,0x4 - c0022a58: 090d3783 ld a5,144(s10) + c0022c24: 00479713 slli a4,a5,0x4 + c0022c28: 090d3783 ld a5,144(s10) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022a5c: 4685 li a3,1 - c0022a5e: 866a mv a2,s10 + c0022c2c: 4685 li a3,1 + c0022c2e: 866a mv a2,s10 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30518 vd = &fd->vars[fd->arg_var_object_idx]; - c0022a60: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30511 + c0022c30: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30519 vd->is_captured = 1; - c0022a62: 47d8 lw a4,12(a5) + c0022c32: 47d8 lw a4,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022a64: 0007a803 lw a6,0(a5) - c0022a68: 4881 li a7,0 + c0022c34: 0007a803 lw a6,0(a5) + c0022c38: 4881 li a7,0 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30511 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30519 vd->is_captured = 1; - c0022a6a: 00476713 ori a4,a4,4 - c0022a6e: c7d8 sw a4,12(a5) + c0022c3a: 00476713 ori a4,a4,4 + c0022c3e: c7d8 sw a4,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022a70: 0b8d2783 lw a5,184(s10) - c0022a74: 4701 li a4,0 - c0022a76: 85ce mv a1,s3 - c0022a78: e402 sd zero,8(sp) - c0022a7a: e002 sd zero,0(sp) - c0022a7c: 854a mv a0,s2 - c0022a7e: 895ff0ef jal ra,c0022312 - c0022a82: e82a sd a0,16(sp) + c0022c40: 0b8d2783 lw a5,184(s10) + c0022c44: 4701 li a4,0 + c0022c46: 85ce mv a1,s3 + c0022c48: e402 sd zero,8(sp) + c0022c4a: e002 sd zero,0(sp) + c0022c4c: 854a mv a0,s2 + c0022c4e: 895ff0ef jal ra,c00224e2 + c0022c52: e82a sd a0,16(sp) resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30515 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30523 dbuf_putc(bc, OP_get_var_ref); - c0022a84: 05e00593 li a1,94 - c0022a88: 8522 mv a0,s0 - c0022a8a: 2b8250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30516 + c0022c54: 05e00593 li a1,94 + c0022c58: 8522 mv a0,s0 + c0022c5a: 2b8250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30524 dbuf_put_u16(bc, idx); - c0022a8e: 67c2 ld a5,16(sp) - c0022a90: 8522 mv a0,s0 - c0022a92: 03079593 slli a1,a5,0x30 - c0022a96: 91c1 srli a1,a1,0x30 - c0022a98: 85be20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30517 + c0022c5e: 67c2 ld a5,16(sp) + c0022c60: 8522 mv a0,s0 + c0022c62: 03079593 slli a1,a5,0x30 + c0022c66: 91c1 srli a1,a1,0x30 + c0022c68: f78e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30525 var_object_test(ctx, s, var_name, op, bc, &label_done, 0); - c0022a9c: 4801 li a6,0 - c0022a9e: 107c addi a5,sp,44 - c0022aa0: 8722 mv a4,s0 - c0022aa2: 86d6 mv a3,s5 - c0022aa4: 8626 mv a2,s1 - c0022aa6: 85ce mv a1,s3 - c0022aa8: 854a mv a0,s2 - c0022aaa: dcef50ef jal ra,c0018078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30520 + c0022c6c: 4801 li a6,0 + c0022c6e: 107c addi a5,sp,44 + c0022c70: 8722 mv a4,s0 + c0022c72: 86d6 mv a3,s5 + c0022c74: 8626 mv a2,s1 + c0022c76: 85ce mv a1,s3 + c0022c78: 854a mv a0,s2 + c0022c7a: dcef50ef jal ra,c0018248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30528 if (fd->is_eval) - c0022aae: 038d2783 lw a5,56(s10) - c0022ab2: b00782e3 beqz a5,c00225b6 - c0022ab6: 8e6a mv t3,s10 - c0022ab8: beb1 j c0022614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30531 + c0022c7e: 038d2783 lw a5,56(s10) + c0022c82: b00782e3 beqz a5,c0022786 + c0022c86: 8e6a mv t3,s10 + c0022c88: beb1 j c00227e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30539 JSClosureVar *cv = &fd->closure_var[idx1]; - c0022aba: 1a0e3783 ld a5,416(t3) - c0022abe: 003a1693 slli a3,s4,0x3 - c0022ac2: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30532 + c0022c8a: 1a0e3783 ld a5,416(t3) + c0022c8e: 003a1693 slli a3,s4,0x3 + c0022c92: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30540 if (var_name == cv->var_name) { - c0022ac4: 0046a803 lw a6,4(a3) - c0022ac8: 08981163 bne a6,s1,c0022b4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30533 + c0022c94: 0046a803 lw a6,4(a3) + c0022c98: 08981163 bne a6,s1,c0022d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30541 if (fd != s) { - c0022acc: 03c98c63 beq s3,t3,c0022b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30537 + c0022c9c: 03c98c63 beq s3,t3,c0022cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30545 cv->var_name, cv->is_const, - c0022ad0: 429c lw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30534 + c0022ca0: 429c lw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30542 idx = get_closure_var2(ctx, s, fd, - c0022ad2: 8826 mv a6,s1 - c0022ad4: 8672 mv a2,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30537 + c0022ca2: 8826 mv a6,s1 + c0022ca4: 8672 mv a2,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30545 cv->var_name, cv->is_const, - c0022ad6: 0027d89b srliw a7,a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30536 + c0022ca6: 0027d89b srliw a7,a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30544 cv->is_arg, idx1, - c0022ada: 0017d71b srliw a4,a5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30538 + c0022caa: 0017d71b srliw a4,a5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30546 cv->is_lexical, cv->var_kind); - c0022ade: 0047d79b srliw a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30534 + c0022cae: 0047d79b srliw a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30542 idx = get_closure_var2(ctx, s, fd, - c0022ae2: 8bbd andi a5,a5,15 - c0022ae4: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30538 + c0022cb2: 8bbd andi a5,a5,15 + c0022cb4: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30546 cv->is_lexical, cv->var_kind); - c0022ae6: 429c lw a5,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30534 + c0022cb6: 429c lw a5,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30542 idx = get_closure_var2(ctx, s, fd, - c0022ae8: 0018f893 andi a7,a7,1 - c0022aec: 8b05 andi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30538 + c0022cb8: 0018f893 andi a7,a7,1 + c0022cbc: 8b05 andi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30546 cv->is_lexical, cv->var_kind); - c0022aee: 0037d79b srliw a5,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30534 + c0022cbe: 0037d79b srliw a5,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30542 idx = get_closure_var2(ctx, s, fd, - c0022af2: 8b85 andi a5,a5,1 - c0022af4: e03e sd a5,0(sp) - c0022af6: 4681 li a3,0 - c0022af8: 87d2 mv a5,s4 - c0022afa: 85ce mv a1,s3 - c0022afc: 854a mv a0,s2 - c0022afe: 815ff0ef jal ra,c0022312 - c0022b02: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30581 + c0022cc2: 8b85 andi a5,a5,1 + c0022cc4: e03e sd a5,0(sp) + c0022cc6: 4681 li a3,0 + c0022cc8: 87d2 mv a5,s4 + c0022cca: 85ce mv a1,s3 + c0022ccc: 854a mv a0,s2 + c0022cce: 815ff0ef jal ra,c00224e2 + c0022cd2: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30589 if ((op == OP_scope_put_var || op == OP_scope_make_ref) && - c0022b04: ffdaf713 andi a4,s5,-3 - c0022b08: 0b900793 li a5,185 - c0022b0c: 38f71063 bne a4,a5,c0022e8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30581 (discriminator 3) - c0022b10: 1a09b783 ld a5,416(s3) - c0022b14: 003a1693 slli a3,s4,0x3 - c0022b18: 97b6 add a5,a5,a3 - c0022b1a: 0007c783 lbu a5,0(a5) - c0022b1e: 8b91 andi a5,a5,4 - c0022b20: b20791e3 bnez a5,c0022642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30588 + c0022cd4: ffdaf713 andi a4,s5,-3 + c0022cd8: 0b900793 li a5,185 + c0022cdc: 38f71063 bne a4,a5,c002305c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30589 (discriminator 3) + c0022ce0: 1a09b783 ld a5,416(s3) + c0022ce4: 003a1693 slli a3,s4,0x3 + c0022ce8: 97b6 add a5,a5,a3 + c0022cea: 0007c783 lbu a5,0(a5) + c0022cee: 8b91 andi a5,a5,4 + c0022cf0: b20791e3 bnez a5,c0022812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30596 switch (op) { - c0022b24: f46a879b addiw a5,s5,-186 - c0022b28: 0007861b sext.w a2,a5 - c0022b2c: 4685 li a3,1 - c0022b2e: 18c6e163 bltu a3,a2,c0022cb0 - c0022b32: 02079713 slli a4,a5,0x20 - c0022b36: 01e75793 srli a5,a4,0x1e - c0022b3a: 0003c717 auipc a4,0x3c - c0022b3e: e0670713 addi a4,a4,-506 # c005e940 - c0022b42: 97ba add a5,a5,a4 - c0022b44: 439c lw a5,0(a5) - c0022b46: 97ba add a5,a5,a4 - c0022b48: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30543 + c0022cf4: f46a879b addiw a5,s5,-186 + c0022cf8: 0007861b sext.w a2,a5 + c0022cfc: 4685 li a3,1 + c0022cfe: 18c6e163 bltu a3,a2,c0022e80 + c0022d02: 02079713 slli a4,a5,0x20 + c0022d06: 01e75793 srli a5,a4,0x1e + c0022d0a: 0003c717 auipc a4,0x3c + c0022d0e: e9670713 addi a4,a4,-362 # c005eba0 + c0022d12: 97ba add a5,a5,a4 + c0022d14: 439c lw a5,0(a5) + c0022d16: 97ba add a5,a5,a4 + c0022d18: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30551 } else if ((cv->var_name == JS_ATOM__var_ || - c0022b4a: fad8079b addiw a5,a6,-83 - c0022b4e: 06fde363 bltu s11,a5,c0022bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30545 + c0022d1a: fad8079b addiw a5,a6,-83 + c0022d1e: 06fde363 bltu s11,a5,c0022d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30553 cv->var_name == JS_ATOM__with_) && !is_pseudo_var) { - c0022b52: 060c1163 bnez s8,c0022bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30546 + c0022d22: 060c1163 bnez s8,c0022d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30554 int is_with = (cv->var_name == JS_ATOM__with_); - c0022b56: fab80d13 addi s10,a6,-85 - c0022b5a: 001d3d13 seqz s10,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30547 + c0022d26: fab80d13 addi s10,a6,-85 + c0022d2a: 001d3d13 seqz s10,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30555 if (fd != s) { - c0022b5e: 87d2 mv a5,s4 - c0022b60: 03c98263 beq s3,t3,c0022b84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30550 + c0022d2e: 87d2 mv a5,s4 + c0022d30: 03c98263 beq s3,t3,c0022d54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30558 cv->is_arg, idx1, - c0022b64: 4298 lw a4,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30548 + c0022d34: 4298 lw a4,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30556 idx = get_closure_var2(ctx, s, fd, - c0022b66: 8672 mv a2,t3 - c0022b68: e402 sd zero,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30550 + c0022d36: 8672 mv a2,t3 + c0022d38: e402 sd zero,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30558 cv->is_arg, idx1, - c0022b6a: 0017571b srliw a4,a4,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30548 - idx = get_closure_var2(ctx, s, fd, - c0022b6e: e002 sd zero,0(sp) - c0022b70: 4881 li a7,0 - c0022b72: 8b05 andi a4,a4,1 - c0022b74: 4681 li a3,0 - c0022b76: 85ce mv a1,s3 - c0022b78: 854a mv a0,s2 - c0022b7a: e872 sd t3,16(sp) - c0022b7c: f96ff0ef jal ra,c0022312 - c0022b80: 6e42 ld t3,16(sp) - c0022b82: 87aa mv a5,a0 + c0022d3a: 0017571b srliw a4,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30556 + idx = get_closure_var2(ctx, s, fd, + c0022d3e: e002 sd zero,0(sp) + c0022d40: 4881 li a7,0 + c0022d42: 8b05 andi a4,a4,1 + c0022d44: 4681 li a3,0 + c0022d46: 85ce mv a1,s3 + c0022d48: 854a mv a0,s2 + c0022d4a: e872 sd t3,16(sp) + c0022d4c: f96ff0ef jal ra,c00224e2 + c0022d50: 6e42 ld t3,16(sp) + c0022d52: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30564 dbuf_putc(bc, OP_get_var_ref); - c0022b84: 05e00593 li a1,94 - c0022b88: 8522 mv a0,s0 - c0022b8a: ec72 sd t3,24(sp) - c0022b8c: e83e sd a5,16(sp) - c0022b8e: 1b4250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30557 + c0022d54: 05e00593 li a1,94 + c0022d58: 8522 mv a0,s0 + c0022d5a: ec72 sd t3,24(sp) + c0022d5c: e83e sd a5,16(sp) + c0022d5e: 1b4250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30565 dbuf_put_u16(bc, idx); - c0022b92: 67c2 ld a5,16(sp) - c0022b94: 8522 mv a0,s0 - c0022b96: 03079593 slli a1,a5,0x30 - c0022b9a: 91c1 srli a1,a1,0x30 - c0022b9c: f56e20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30558 + c0022d62: 67c2 ld a5,16(sp) + c0022d64: 8522 mv a0,s0 + c0022d66: 03079593 slli a1,a5,0x30 + c0022d6a: 91c1 srli a1,a1,0x30 + c0022d6c: e74e20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30566 var_object_test(ctx, s, var_name, op, bc, &label_done, is_with); - c0022ba0: 886a mv a6,s10 - c0022ba2: 107c addi a5,sp,44 - c0022ba4: 8722 mv a4,s0 - c0022ba6: 86d6 mv a3,s5 - c0022ba8: 8626 mv a2,s1 - c0022baa: 85ce mv a1,s3 - c0022bac: 854a mv a0,s2 - c0022bae: ccaf50ef jal ra,c0018078 - c0022bb2: 6e62 ld t3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30530 (discriminator 2) + c0022d70: 886a mv a6,s10 + c0022d72: 107c addi a5,sp,44 + c0022d74: 8722 mv a4,s0 + c0022d76: 86d6 mv a3,s5 + c0022d78: 8626 mv a2,s1 + c0022d7a: 85ce mv a1,s3 + c0022d7c: 854a mv a0,s2 + c0022d7e: ccaf50ef jal ra,c0018248 + c0022d82: 6e62 ld t3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30538 (discriminator 2) for (idx1 = 0; idx1 < fd->closure_var_count; idx1++) { - c0022bb4: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30530 (discriminator 1) - c0022bb6: 198e2783 lw a5,408(t3) - c0022bba: f0fa40e3 blt s4,a5,c0022aba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30662 + c0022d84: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30538 (discriminator 1) + c0022d86: 198e2783 lw a5,408(t3) + c0022d8a: f0fa40e3 blt s4,a5,c0022c8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30670 switch (op) { - c0022bbe: f49a879b addiw a5,s5,-183 - c0022bc2: 0007869b sext.w a3,a5 - c0022bc6: 4719 li a4,6 - c0022bc8: ccd765e3 bltu a4,a3,c0022892 - c0022bcc: 02079713 slli a4,a5,0x20 - c0022bd0: 01e75793 srli a5,a4,0x1e - c0022bd4: 0003c717 auipc a4,0x3c - c0022bd8: d7470713 addi a4,a4,-652 # c005e948 - c0022bdc: 97ba add a5,a5,a4 - c0022bde: 439c lw a5,0(a5) - c0022be0: 97ba add a5,a5,a4 - c0022be2: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30566 + c0022d8e: f49a879b addiw a5,s5,-183 + c0022d92: 0007869b sext.w a3,a5 + c0022d96: 4719 li a4,6 + c0022d98: ccd765e3 bltu a4,a3,c0022a62 + c0022d9c: 02079713 slli a4,a5,0x20 + c0022da0: 01e75793 srli a5,a4,0x1e + c0022da4: 0003c717 auipc a4,0x3c + c0022da8: e0470713 addi a4,a4,-508 # c005eba8 + c0022dac: 97ba add a5,a5,a4 + c0022dae: 439c lw a5,0(a5) + c0022db0: 97ba add a5,a5,a4 + c0022db2: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30574 fd->args[var_idx - ARGUMENT_VAR_OFFSET].is_captured = 1; - c0022be4: 0a0d3703 ld a4,160(s10) - c0022be8: e0000537 lui a0,0xe0000 - c0022bec: 9fa9 addw a5,a5,a0 - c0022bee: 00479693 slli a3,a5,0x4 - c0022bf2: 9736 add a4,a4,a3 - c0022bf4: 4754 lw a3,12(a4) + c0022db4: 0a0d3703 ld a4,160(s10) + c0022db8: e0000537 lui a0,0xe0000 + c0022dbc: 9fa9 addw a5,a5,a0 + c0022dbe: 00479693 slli a3,a5,0x4 + c0022dc2: 9736 add a4,a4,a3 + c0022dc4: 4754 lw a3,12(a4) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022bf6: 4881 li a7,0 - c0022bf8: 8826 mv a6,s1 + c0022dc6: 4881 li a7,0 + c0022dc8: 8826 mv a6,s1 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30574 fd->args[var_idx - ARGUMENT_VAR_OFFSET].is_captured = 1; - c0022bfa: 0046e693 ori a3,a3,4 - c0022bfe: c754 sw a3,12(a4) + c0022dca: 0046e693 ori a3,a3,4 + c0022dce: c754 sw a3,12(a4) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0022c00: e402 sd zero,8(sp) - c0022c02: e002 sd zero,0(sp) - c0022c04: 4705 li a4,1 - c0022c06: 4685 li a3,1 - c0022c08: 866a mv a2,s10 - c0022c0a: 85ce mv a1,s3 - c0022c0c: 854a mv a0,s2 - c0022c0e: f04ff0ef jal ra,c0022312 - c0022c12: 8a2a mv s4,a0 + c0022dd0: e402 sd zero,8(sp) + c0022dd2: e002 sd zero,0(sp) + c0022dd4: 4705 li a4,1 + c0022dd6: 4685 li a3,1 + c0022dd8: 866a mv a2,s10 + c0022dda: 85ce mv a1,s3 + c0022ddc: 854a mv a0,s2 + c0022dde: f04ff0ef jal ra,c00224e2 + c0022de2: 8a2a mv s4,a0 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30579 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30587 if (idx >= 0) { - c0022c14: ee0558e3 bgez a0,c0022b04 - c0022c18: b75d j c0022bbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30590 + c0022de4: ee0558e3 bgez a0,c0022cd4 + c0022de8: b75d j c0022d8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30598 if (s->closure_var[idx].var_kind == JS_VAR_FUNCTION_NAME) { - c0022c1a: 1a09b783 ld a5,416(s3) - c0022c1e: 003a1713 slli a4,s4,0x3 - c0022c22: 97ba add a5,a5,a4 - c0022c24: 0007ca83 lbu s5,0(a5) - c0022c28: 04000793 li a5,64 - c0022c2c: 0f0af713 andi a4,s5,240 - c0022c30: 00f71963 bne a4,a5,c0022c42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30592 + c0022dea: 1a09b783 ld a5,416(s3) + c0022dee: 003a1713 slli a4,s4,0x3 + c0022df2: 97ba add a5,a5,a4 + c0022df4: 0007ca83 lbu s5,0(a5) + c0022df8: 04000793 li a5,64 + c0022dfc: 0f0af713 andi a4,s5,240 + c0022e00: 00f71963 bne a4,a5,c0022e12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30600 dbuf_putc(bc, OP_object); - c0022c34: 45ad li a1,11 - c0022c36: 8522 mv a0,s0 - c0022c38: 10a250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30593 + c0022e04: 45ad li a1,11 + c0022e06: 8522 mv a0,s0 + c0022e08: 10a250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30601 dbuf_putc(bc, OP_get_var_ref); - c0022c3c: 05e00593 li a1,94 - c0022c40: bcf5 j c002273c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30600 + c0022e0c: 05e00593 li a1,94 + c0022e10: bcf5 j c002290c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30608 if (label_done == -1 && - c0022c42: 5732 lw a4,44(sp) - c0022c44: 57fd li a5,-1 - c0022c46: 02f71163 bne a4,a5,c0022c68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30601 (discriminator 1) + c0022e12: 5732 lw a4,44(sp) + c0022e14: 57fd li a5,-1 + c0022e16: 02f71163 bne a4,a5,c0022e38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30609 (discriminator 1) can_opt_put_ref_value(bc_buf, ls->pos)) { - c0022c4a: 004ca583 lw a1,4(s9) - c0022c4e: 855a mv a0,s6 - c0022c50: 881e10ef jal ra,c00044d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30600 (discriminator 1) + c0022e1a: 004ca583 lw a1,4(s9) + c0022e1e: 855a mv a0,s6 + c0022e20: eb0e10ef jal ra,c00044d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30608 (discriminator 1) if (label_done == -1 && - c0022c54: c911 beqz a0,c0022c68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30603 + c0022e24: c911 beqz a0,c0022e38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30611 if (s->closure_var[idx].is_lexical) - c0022c56: 008afa93 andi s5,s5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30604 + c0022e26: 008afa93 andi s5,s5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30612 get_op = OP_get_var_ref_check; - c0022c5a: 06600713 li a4,102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30603 + c0022e2a: 06600713 li a4,102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30611 if (s->closure_var[idx].is_lexical) - c0022c5e: b40a96e3 bnez s5,c00227aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30606 + c0022e2e: b40a96e3 bnez s5,c002297a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30614 get_op = OP_get_var_ref; - c0022c62: 05e00713 li a4,94 - c0022c66: b691 j c00227aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30613 + c0022e32: 05e00713 li a4,94 + c0022e36: b691 j c002297a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30621 dbuf_putc(bc, OP_make_var_ref_ref); - c0022c68: 07c00593 li a1,124 - c0022c6c: 8522 mv a0,s0 - c0022c6e: 0d4250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30614 + c0022e38: 07c00593 li a1,124 + c0022e3c: 8522 mv a0,s0 + c0022e3e: 0d4250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30622 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c0022c72: 85a6 mv a1,s1 - c0022c74: 854a mv a0,s2 - c0022c76: 855e40ef jal ra,c00074ca - c0022c7a: 0005059b sext.w a1,a0 - c0022c7e: 8522 mv a0,s0 - c0022c80: fa8e20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30650 + c0022e42: 85a6 mv a1,s1 + c0022e44: 854a mv a0,s2 + c0022e46: f72e40ef jal ra,c00075b8 + c0022e4a: 0005059b sext.w a1,a0 + c0022e4e: 8522 mv a0,s0 + c0022e50: ec6e20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30658 dbuf_put_u16(bc, idx); - c0022c84: 030a1593 slli a1,s4,0x30 - c0022c88: 91c1 srli a1,a1,0x30 - c0022c8a: bea5 j c0022802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30621 + c0022e54: 030a1593 slli a1,s4,0x30 + c0022e58: 91c1 srli a1,a1,0x30 + c0022e5a: bea5 j c00229d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30629 dbuf_putc(bc, OP_undefined); - c0022c8c: 4599 li a1,6 - c0022c8e: 8522 mv a0,s0 - c0022c90: 0b2250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30644 + c0022e5c: 4599 li a1,6 + c0022e5e: 8522 mv a0,s0 + c0022e60: 0b2250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30652 if (s->closure_var[idx].is_lexical) { - c0022c94: 1a09b783 ld a5,416(s3) - c0022c98: 003a1713 slli a4,s4,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30645 + c0022e64: 1a09b783 ld a5,416(s3) + c0022e68: 003a1713 slli a4,s4,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30653 dbuf_putc(bc, OP_get_var_ref_check); - c0022c9c: 06600593 li a1,102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30644 + c0022e6c: 06600593 li a1,102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30652 if (s->closure_var[idx].is_lexical) { - c0022ca0: 97ba add a5,a5,a4 - c0022ca2: 0007c783 lbu a5,0(a5) - c0022ca6: 8ba1 andi a5,a5,8 - c0022ca8: ef85 bnez a5,c0022ce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30647 + c0022e70: 97ba add a5,a5,a4 + c0022e72: 0007c783 lbu a5,0(a5) + c0022e76: 8ba1 andi a5,a5,8 + c0022e78: ef85 bnez a5,c0022eb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30655 dbuf_putc(bc, OP_get_var_ref); - c0022caa: 05e00593 li a1,94 - c0022cae: a80d j c0022ce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30627 + c0022e7a: 05e00593 li a1,94 + c0022e7e: a80d j c0022eb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30635 is_put = (op == OP_scope_put_var || - c0022cb0: feea92e3 bne s5,a4,c0022c94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30630 + c0022e80: feea92e3 bne s5,a4,c0022e64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30638 if (s->closure_var[idx].is_lexical) { - c0022cb4: 1a09b783 ld a5,416(s3) - c0022cb8: 003a1713 slli a4,s4,0x3 - c0022cbc: 97ba add a5,a5,a4 - c0022cbe: 0007c783 lbu a5,0(a5) - c0022cc2: 8ba1 andi a5,a5,8 - c0022cc4: cf81 beqz a5,c0022cdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30631 + c0022e84: 1a09b783 ld a5,416(s3) + c0022e88: 003a1713 slli a4,s4,0x3 + c0022e8c: 97ba add a5,a5,a4 + c0022e8e: 0007c783 lbu a5,0(a5) + c0022e92: 8ba1 andi a5,a5,8 + c0022e94: cf81 beqz a5,c0022eac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30639 if (op == OP_scope_put_var_init) { - c0022cc6: 0bd00793 li a5,189 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30638 + c0022e96: 0bd00793 li a5,189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30646 dbuf_putc(bc, OP_put_var_ref_check); - c0022cca: 06700593 li a1,103 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30631 + c0022e9a: 06700593 li a1,103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30639 if (op == OP_scope_put_var_init) { - c0022cce: 00fa9963 bne s5,a5,c0022ce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30633 + c0022e9e: 00fa9963 bne s5,a5,c0022eb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30641 if (var_name == JS_ATOM_this) - c0022cd2: 47a1 li a5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30634 + c0022ea2: 47a1 li a5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30642 dbuf_putc(bc, OP_put_var_ref_check_init); - c0022cd4: 06800593 li a1,104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30633 + c0022ea4: 06800593 li a1,104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30641 if (var_name == JS_ATOM_this) - c0022cd8: 00f48463 beq s1,a5,c0022ce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30636 + c0022ea8: 00f48463 beq s1,a5,c0022eb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30644 dbuf_putc(bc, OP_put_var_ref); - c0022cdc: 05f00593 li a1,95 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30647 + c0022eac: 05f00593 li a1,95 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30655 dbuf_putc(bc, OP_get_var_ref); - c0022ce0: 8522 mv a0,s0 - c0022ce2: 060250ef jal ra,c0047d42 - c0022ce6: bf79 j c0022c84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30627 (discriminator 2) + c0022eb0: 8522 mv a0,s0 + c0022eb2: 060250ef jal ra,c0047f12 + c0022eb6: bf79 j c0022e54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30635 (discriminator 2) is_put = (op == OP_scope_put_var || - c0022ce8: 0bd00793 li a5,189 - c0022cec: fcfa84e3 beq s5,a5,c0022cb4 - c0022cf0: b755 j c0022c94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30664 + c0022eb8: 0bd00793 li a5,189 + c0022ebc: fcfa84e3 beq s5,a5,c0022e84 + c0022ec0: b755 j c0022e64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30672 if (label_done == -1 && can_opt_put_global_ref_value(bc_buf, ls->pos)) { - c0022cf2: 5732 lw a4,44(sp) - c0022cf4: 57fd li a5,-1 - c0022cf6: 14f71363 bne a4,a5,c0022e3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30664 (discriminator 1) - c0022cfa: 004ca583 lw a1,4(s9) - c0022cfe: 855a mv a0,s6 - c0022d00: fd0e10ef jal ra,c00044d0 - c0022d04: 12050c63 beqz a0,c0022e3c + c0022ec2: 5732 lw a4,44(sp) + c0022ec4: 57fd li a5,-1 + c0022ec6: 14f71363 bne a4,a5,c002300c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30672 (discriminator 1) + c0022eca: 004ca583 lw a1,4(s9) + c0022ece: 855a mv a0,s6 + c0022ed0: e00e10ef jal ra,c00044d0 + c0022ed4: 12050c63 beqz a0,c002300c optimize_scope_make_global_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30143 is_strict = ((s->js_mode & JS_MODE_STRICT) != 0); - c0022d08: 0869cc03 lbu s8,134(s3) - c0022d0c: 001c7c13 andi s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30139 + c0022ed8: 0869cc03 lbu s8,134(s3) + c0022edc: 001c7c13 andi s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30147 if (is_strict) { - c0022d10: 020c0063 beqz s8,c0022d30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30143 + c0022ee0: 020c0063 beqz s8,c0022f00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30151 dbuf_putc(bc, OP_check_var); - c0022d14: 03600593 li a1,54 - c0022d18: 8522 mv a0,s0 - c0022d1a: 028250ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30144 + c0022ee4: 03600593 li a1,54 + c0022ee8: 8522 mv a0,s0 + c0022eea: 028250ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30152 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c0022d1e: 85a6 mv a1,s1 - c0022d20: 854a mv a0,s2 - c0022d22: fa8e40ef jal ra,c00074ca - c0022d26: 0005059b sext.w a1,a0 - c0022d2a: 8522 mv a0,s0 - c0022d2c: efce20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30148 + c0022eee: 85a6 mv a1,s1 + c0022ef0: 854a mv a0,s2 + c0022ef2: ec6e40ef jal ra,c00075b8 + c0022ef6: 0005059b sext.w a1,a0 + c0022efa: 8522 mv a0,s0 + c0022efc: e1ae20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30156 if (bc_buf[pos_next] == OP_get_ref_value) { - c0022d30: 017b07b3 add a5,s6,s7 - c0022d34: 0007c703 lbu a4,0(a5) - c0022d38: 03c00793 li a5,60 - c0022d3c: 02f71163 bne a4,a5,c0022d5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30149 + c0022f00: 017b07b3 add a5,s6,s7 + c0022f04: 0007c703 lbu a4,0(a5) + c0022f08: 03c00793 li a5,60 + c0022f0c: 02f71163 bne a4,a5,c0022f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30157 dbuf_putc(bc, OP_get_var); - c0022d40: 03800593 li a1,56 - c0022d44: 8522 mv a0,s0 - c0022d46: 7fd240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30150 + c0022f10: 03800593 li a1,56 + c0022f14: 8522 mv a0,s0 + c0022f16: 7fd240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30158 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c0022d4a: 85a6 mv a1,s1 - c0022d4c: 854a mv a0,s2 - c0022d4e: f7ce40ef jal ra,c00074ca - c0022d52: 0005059b sext.w a1,a0 - c0022d56: 8522 mv a0,s0 - c0022d58: ed0e20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30151 + c0022f1a: 85a6 mv a1,s1 + c0022f1c: 854a mv a0,s2 + c0022f1e: e9ae40ef jal ra,c00075b8 + c0022f22: 0005059b sext.w a1,a0 + c0022f26: 8522 mv a0,s0 + c0022f28: deee20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30159 pos_next++; - c0022d5c: 2b85 addiw s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30156 + c0022f2c: 2b85 addiw s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30164 label_pos = ls->pos; - c0022d5e: 004caa83 lw s5,4(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30158 + c0022f2e: 004caa83 lw s5,4(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30166 assert(bc_buf[pos] == OP_label); - c0022d62: 0b600793 li a5,182 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30157 + c0022f32: 0b600793 li a5,182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30165 pos = label_pos - 5; - c0022d66: ffba8a1b addiw s4,s5,-5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30158 + c0022f36: ffba8a1b addiw s4,s5,-5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30166 assert(bc_buf[pos] == OP_label); - c0022d6a: 014b0733 add a4,s6,s4 - c0022d6e: 00074683 lbu a3,0(a4) - c0022d72: 00f68c63 beq a3,a5,c0022d8a - c0022d76: 659d lui a1,0x7 - c0022d78: 4601 li a2,0 - c0022d7a: 5ce58593 addi a1,a1,1486 # 75ce <__clzdi2-0xbfff8a32> - c0022d7e: 0003a517 auipc a0,0x3a - c0022d82: cfa50513 addi a0,a0,-774 # c005ca78 - c0022d86: 493300ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30160 + c0022f3a: 014b0733 add a4,s6,s4 + c0022f3e: 00074683 lbu a3,0(a4) + c0022f42: 00f68c63 beq a3,a5,c0022f5a + c0022f46: 659d lui a1,0x7 + c0022f48: 4601 li a2,0 + c0022f4a: 5d658593 addi a1,a1,1494 # 75d6 <__clzdi2-0xbfff8a2a> + c0022f4e: 0003a517 auipc a0,0x3a + c0022f52: cfa50513 addi a0,a0,-774 # c005cc48 + c0022f56: 493300ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30168 op = bc_buf[label_pos]; - c0022d8a: 015b07b3 add a5,s6,s5 - c0022d8e: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30159 + c0022f5a: 015b07b3 add a5,s6,s5 + c0022f5e: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30167 end_pos = label_pos + 2; - c0022d92: 002a8c9b addiw s9,s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30160 + c0022f62: 002a8c9b addiw s9,s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30168 op = bc_buf[label_pos]; - c0022d96: 0007869b sext.w a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30161 + c0022f66: 0007869b sext.w a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30169 if (is_strict) { - c0022d9a: 080c0463 beqz s8,c0022e22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30162 + c0022f6a: 080c0463 beqz s8,c0022ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30170 if (op != OP_nop) { - c0022d9e: 0b300613 li a2,179 - c0022da2: 02c68463 beq a3,a2,c0022dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30163 - switch(op) { - c0022da6: 46e5 li a3,25 - c0022da8: 00d78c63 beq a5,a3,c0022dc0 - c0022dac: 4675 li a2,29 + c0022f6e: 0b300613 li a2,179 + c0022f72: 02c68463 beq a3,a2,c0022f9a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30171 + switch(op) { + c0022f76: 46e5 li a3,25 + c0022f78: 00d78c63 beq a5,a3,c0022f90 + c0022f7c: 4675 li a2,29 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30179 op = OP_swap; - c0022dae: 46ed li a3,27 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30163 + c0022f7e: 46ed li a3,27 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30171 switch(op) { - c0022db0: 00c78963 beq a5,a2,c0022dc2 - c0022db4: 4659 li a2,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30165 + c0022f80: 00c78963 beq a5,a2,c0022f92 + c0022f84: 4659 li a2,22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30173 op = OP_insert2; - c0022db6: 46d5 li a3,21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30163 + c0022f86: 46d5 li a3,21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30171 switch(op) { - c0022db8: 00c78563 beq a5,a2,c0022dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30174 + c0022f88: 00c78563 beq a5,a2,c0022f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30182 abort(); - c0022dbc: 24f320ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30163 + c0022f8c: 24f320ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30171 switch(op) { - c0022dc0: 46e1 li a3,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30176 + c0022f90: 46e1 li a3,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30184 bc_buf[pos++] = op; - c0022dc2: ffca8a1b addiw s4,s5,-4 - c0022dc6: 00d70023 sb a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30183 + c0022f92: ffca8a1b addiw s4,s5,-4 + c0022f96: 00d70023 sb a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30191 bc_buf[pos] = OP_put_var_strict; - c0022dca: 014b07b3 add a5,s6,s4 - c0022dce: 03b00713 li a4,59 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30186 + c0022f9a: 014b07b3 add a5,s6,s4 + c0022f9e: 03b00713 li a4,59 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30194 bc_buf[pos] = OP_put_var; - c0022dd2: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30189 + c0022fa2: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30197 put_u32(bc_buf + pos + 1, JS_DupAtom(ctx, var_name)); - c0022dd6: 85a6 mv a1,s1 - c0022dd8: 854a mv a0,s2 - c0022dda: ef0e40ef jal ra,c00074ca - c0022dde: 001a0c13 addi s8,s4,1 - c0022de2: 9c5a add s8,s8,s6 + c0022fa6: 85a6 mv a1,s1 + c0022fa8: 854a mv a0,s2 + c0022faa: e0ee40ef jal ra,c00075b8 + c0022fae: 001a0c13 addi s8,s4,1 + c0022fb2: 9c5a add s8,s8,s6 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0022de4: 0085579b srliw a5,a0,0x8 - c0022de8: 00ac0023 sb a0,0(s8) - c0022dec: 00fc00a3 sb a5,1(s8) - c0022df0: 0105579b srliw a5,a0,0x10 - c0022df4: 0185551b srliw a0,a0,0x18 - c0022df8: 00ac01a3 sb a0,3(s8) - c0022dfc: 00fc0123 sb a5,2(s8) + c0022fb4: 0085579b srliw a5,a0,0x8 + c0022fb8: 00ac0023 sb a0,0(s8) + c0022fbc: 00fc00a3 sb a5,1(s8) + c0022fc0: 0105579b srliw a5,a0,0x10 + c0022fc4: 0185551b srliw a0,a0,0x18 + c0022fc8: 00ac01a3 sb a0,3(s8) + c0022fcc: 00fc0123 sb a5,2(s8) optimize_scope_make_global_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30198 pos += 5; - c0022e00: 005a051b addiw a0,s4,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30193 + c0022fd0: 005a051b addiw a0,s4,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30201 bc_buf[pos++] = OP_nop; - c0022e04: 4601 li a2,0 - c0022e06: 00acc863 blt s9,a0,c0022e16 - c0022e0a: ffda861b addiw a2,s5,-3 - c0022e0e: 4146063b subw a2,a2,s4 - c0022e12: 1602 slli a2,a2,0x20 - c0022e14: 9201 srli a2,a2,0x20 - c0022e16: 0b300593 li a1,179 - c0022e1a: 955a add a0,a0,s6 - c0022e1c: 255330ef jal ra,c0056870 - c0022e20: bc8d j c0022892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30179 + c0022fd4: 4601 li a2,0 + c0022fd6: 00acc863 blt s9,a0,c0022fe6 + c0022fda: ffda861b addiw a2,s5,-3 + c0022fde: 4146063b subw a2,a2,s4 + c0022fe2: 1602 slli a2,a2,0x20 + c0022fe4: 9201 srli a2,a2,0x20 + c0022fe6: 0b300593 li a1,179 + c0022fea: 955a add a0,a0,s6 + c0022fec: 255330ef jal ra,c0056a40 + c0022ff0: bc8d j c0022a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30187 if (op == OP_insert3) - c0022e22: 47d9 li a5,22 - c0022e24: 00f69763 bne a3,a5,c0022e32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30180 + c0022ff2: 47d9 li a5,22 + c0022ff4: 00f69763 bne a3,a5,c0023002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30188 bc_buf[pos++] = OP_dup; - c0022e28: 47c5 li a5,17 - c0022e2a: ffca8a1b addiw s4,s5,-4 - c0022e2e: 00f70023 sb a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30186 + c0022ff8: 47c5 li a5,17 + c0022ffa: ffca8a1b addiw s4,s5,-4 + c0022ffe: 00f70023 sb a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30194 bc_buf[pos] = OP_put_var; - c0022e32: 014b07b3 add a5,s6,s4 - c0022e36: 03900713 li a4,57 - c0022e3a: bf61 j c0022dd2 + c0023002: 014b07b3 add a5,s6,s4 + c0023006: 03900713 li a4,57 + c002300a: bf61 j c0022fa2 resolve_scope_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30676 dbuf_putc(bc, OP_make_var_ref); - c0022e3c: 07d00593 li a1,125 - c0022e40: b235 j c002276c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30675 + c002300c: 07d00593 li a1,125 + c0023010: b235 j c002293c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30683 dbuf_putc(bc, OP_undefined); - c0022e42: 4599 li a1,6 - c0022e44: 8522 mv a0,s0 - c0022e46: 6fd240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30676 + c0023012: 4599 li a1,6 + c0023014: 8522 mv a0,s0 + c0023016: 6fd240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30684 dbuf_putc(bc, OP_get_var); - c0022e4a: 03800593 li a1,56 - c0022e4e: ba39 j c002276c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30682 + c002301a: 03800593 li a1,56 + c002301e: ba39 j c002293c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30690 dbuf_putc(bc, OP_get_var_undef + (op - OP_scope_get_var_undef)); - c0022e50: f80a859b addiw a1,s5,-128 - c0022e54: 0ff5f593 zext.b a1,a1 - c0022e58: ba11 j c002276c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30686 + c0023020: f80a859b addiw a1,s5,-128 + c0023024: 0ff5f593 zext.b a1,a1 + c0023028: ba11 j c002293c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30694 dbuf_putc(bc, OP_put_var_init); - c0022e5a: 03a00593 li a1,58 - c0022e5e: b239 j c002276c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30690 + c002302a: 03a00593 li a1,58 + c002302e: b239 j c002293c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30698 dbuf_putc(bc, OP_delete_var); - c0022e60: 09a00593 li a1,154 - c0022e64: b221 j c002276c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30343 + c0023030: 09a00593 li a1,154 + c0023034: b221 j c002293c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30351 switch (op) { - c0022e66: f49a879b addiw a5,s5,-183 - c0022e6a: 0007869b sext.w a3,a5 - c0022e6e: 471d li a4,7 - c0022e70: a2d761e3 bltu a4,a3,c0022892 - c0022e74: 02079713 slli a4,a5,0x20 - c0022e78: 01e75793 srli a5,a4,0x1e - c0022e7c: 0003c717 auipc a4,0x3c - c0022e80: ae870713 addi a4,a4,-1304 # c005e964 - c0022e84: 97ba add a5,a5,a4 - c0022e86: 439c lw a5,0(a5) - c0022e88: 97ba add a5,a5,a4 - c0022e8a: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30588 + c0023036: f49a879b addiw a5,s5,-183 + c002303a: 0007869b sext.w a3,a5 + c002303e: 471d li a4,7 + c0023040: a2d761e3 bltu a4,a3,c0022a62 + c0023044: 02079713 slli a4,a5,0x20 + c0023048: 01e75793 srli a5,a4,0x1e + c002304c: 0003c717 auipc a4,0x3c + c0023050: b7870713 addi a4,a4,-1160 # c005ebc4 + c0023054: 97ba add a5,a5,a4 + c0023056: 439c lw a5,0(a5) + c0023058: 97ba add a5,a5,a4 + c002305a: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30596 switch (op) { - c0022e8c: f49a879b addiw a5,s5,-183 - c0022e90: 0007869b sext.w a3,a5 - c0022e94: 4719 li a4,6 - c0022e96: 9ed76ee3 bltu a4,a3,c0022892 - c0022e9a: 02079713 slli a4,a5,0x20 - c0022e9e: 01e75793 srli a5,a4,0x1e - c0022ea2: 0003c717 auipc a4,0x3c - c0022ea6: ae270713 addi a4,a4,-1310 # c005e984 - c0022eaa: 97ba add a5,a5,a4 - c0022eac: 439c lw a5,0(a5) - c0022eae: 97ba add a5,a5,a4 - c0022eb0: 8782 jr a5 - -00000000c0022eb2 : + c002305c: f49a879b addiw a5,s5,-183 + c0023060: 0007869b sext.w a3,a5 + c0023064: 4719 li a4,6 + c0023066: 9ed76ee3 bltu a4,a3,c0022a62 + c002306a: 02079713 slli a4,a5,0x20 + c002306e: 01e75793 srli a5,a4,0x1e + c0023072: 0003c717 auipc a4,0x3c + c0023076: b7270713 addi a4,a4,-1166 # c005ebe4 + c002307a: 97ba add a5,a5,a4 + c002307c: 439c lw a5,0(a5) + c002307e: 97ba add a5,a5,a4 + c0023080: 8782 jr a5 + +00000000c0023082 : resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31484 -{ - c0022eb2: 7111 addi sp,sp,-256 - c0022eb4: f9a2 sd s0,240(sp) - c0022eb6: f5a6 sd s1,232(sp) - c0022eb8: edce sd s3,216(sp) - c0022eba: e9d2 sd s4,208(sp) - c0022ebc: e5d6 sd s5,200(sp) - c0022ebe: fd86 sd ra,248(sp) - c0022ec0: f1ca sd s2,224(sp) - c0022ec2: e1da sd s6,192(sp) - c0022ec4: fd5e sd s7,184(sp) - c0022ec6: f962 sd s8,176(sp) - c0022ec8: f566 sd s9,168(sp) - c0022eca: f16a sd s10,160(sp) - c0022ecc: ed6e sd s11,152(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31492 +{ + c0023082: 7111 addi sp,sp,-256 + c0023084: f9a2 sd s0,240(sp) + c0023086: f5a6 sd s1,232(sp) + c0023088: edce sd s3,216(sp) + c002308a: e9d2 sd s4,208(sp) + c002308c: e5d6 sd s5,200(sp) + c002308e: fd86 sd ra,248(sp) + c0023090: f1ca sd s2,224(sp) + c0023092: e1da sd s6,192(sp) + c0023094: fd5e sd s7,184(sp) + c0023096: f962 sd s8,176(sp) + c0023098: f566 sd s9,168(sp) + c002309a: f16a sd s10,160(sp) + c002309c: ed6e sd s11,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31500 cc.bc_buf = bc_buf = s->byte_code.buf; - c0022ece: 1305bb83 ld s7,304(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31493 + c002309e: 1305bb83 ld s7,304(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31501 cc.bc_len = bc_len = s->byte_code.size; - c0022ed2: 1385ac03 lw s8,312(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31484 + c00230a2: 1385ac03 lw s8,312(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31492 { - c0022ed6: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31494 + c00230a6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31502 js_dbuf_init(ctx, &bc_out); - c0022ed8: 108c addi a1,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31484 -{ - c0022eda: 84aa mv s1,a0 + c00230a8: 108c addi a1,sp,96 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31492 +{ + c00230aa: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31500 cc.bc_buf = bc_buf = s->byte_code.buf; - c0022edc: fc5e sd s7,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31493 + c00230ac: fc5e sd s7,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31501 cc.bc_len = bc_len = s->byte_code.size; - c0022ede: c0e2 sw s8,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31498 + c00230ae: c0e2 sw s8,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 for(i = 0; i < s->global_var_count; i++) { - c0022ee0: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31494 + c00230b0: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31502 js_dbuf_init(ctx, &bc_out); - c0022ee2: 980e20ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31519 + c00230b2: fb1e10ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31527 if (cv->var_name == JS_ATOM__var_ || - c0022ee6: 4a05 li s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 + c00230b6: 4a05 li s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31514 if (s->eval_type == JS_EVAL_TYPE_DIRECT && - c0022ee8: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31498 (discriminator 1) + c00230b8: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 (discriminator 1) for(i = 0; i < s->global_var_count; i++) { - c0022eea: 11c42783 lw a5,284(s0) - c0022eee: 04f9c763 blt s3,a5,c0022f3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31535 + c00230ba: 11c42783 lw a5,284(s0) + c00230be: 04f9c763 blt s3,a5,c002310c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31543 line_num = 0; /* avoid warning */ - c0022ef2: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31536 + c00230c2: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31544 for (pos = 0; pos < bc_len; pos = pos_next) { - c0022ef4: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31536 (discriminator 1) - c0022ef6: 0f8dc863 blt s11,s8,c0022fe6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31824 + c00230c4: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31544 (discriminator 1) + c00230c6: 0f8dc863 blt s11,s8,c00231b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31832 dbuf_free(&s->byte_code); - c0022efa: 13040513 addi a0,s0,304 - c0022efe: ec2a sd a0,24(sp) - c0022f00: 707240ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31825 + c00230ca: 13040513 addi a0,s0,304 + c00230ce: ec2a sd a0,24(sp) + c00230d0: 707240ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31833 s->byte_code = bc_out; - c0022f04: 6562 ld a0,24(sp) - c0022f06: 03000613 li a2,48 - c0022f0a: 108c addi a1,sp,96 - c0022f0c: 2cf330ef jal ra,c00569da + c00230d4: 6562 ld a0,24(sp) + c00230d6: 03000613 li a2,48 + c00230da: 108c addi a1,sp,96 + c00230dc: 2cf330ef jal ra,c0056baa dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 return s->error; - c0022f10: 14842503 lw a0,328(s0) + c00230e0: 14842503 lw a0,328(s0) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31834 if (dbuf_error(&s->byte_code)) { - c0022f14: c509 beqz a0,c0022f1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31827 + c00230e4: c509 beqz a0,c00230ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31835 JS_ThrowOutOfMemory(ctx); - c0022f16: 8526 mv a0,s1 - c0022f18: d05f10ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31842 + c00230e6: 8526 mv a0,s1 + c00230e8: c23f10ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31850 return -1; - c0022f1c: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31843 -} - c0022f1e: 70ee ld ra,248(sp) - c0022f20: 744e ld s0,240(sp) - c0022f22: 74ae ld s1,232(sp) - c0022f24: 790e ld s2,224(sp) - c0022f26: 69ee ld s3,216(sp) - c0022f28: 6a4e ld s4,208(sp) - c0022f2a: 6aae ld s5,200(sp) - c0022f2c: 6b0e ld s6,192(sp) - c0022f2e: 7bea ld s7,184(sp) - c0022f30: 7c4a ld s8,176(sp) - c0022f32: 7caa ld s9,168(sp) - c0022f34: 7d0a ld s10,160(sp) - c0022f36: 6dea ld s11,152(sp) - c0022f38: 6111 addi sp,sp,256 - c0022f3a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31499 + c00230ec: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31851 +} + c00230ee: 70ee ld ra,248(sp) + c00230f0: 744e ld s0,240(sp) + c00230f2: 74ae ld s1,232(sp) + c00230f4: 790e ld s2,224(sp) + c00230f6: 69ee ld s3,216(sp) + c00230f8: 6a4e ld s4,208(sp) + c00230fa: 6aae ld s5,200(sp) + c00230fc: 6b0e ld s6,192(sp) + c00230fe: 7bea ld s7,184(sp) + c0023100: 7c4a ld s8,176(sp) + c0023102: 7caa ld s9,168(sp) + c0023104: 7d0a ld s10,160(sp) + c0023106: 6dea ld s11,152(sp) + c0023108: 6111 addi sp,sp,256 + c002310a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31507 JSGlobalVar *hf = &s->global_vars[i]; - c0022f3c: 12843783 ld a5,296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31503 + c002310c: 12843783 ld a5,296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31511 for(idx = 0; idx < s->closure_var_count; idx++) { - c0022f40: 19842603 lw a2,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31499 + c0023110: 19842603 lw a2,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31507 JSGlobalVar *hf = &s->global_vars[i]; - c0022f44: 00499913 slli s2,s3,0x4 - c0022f48: 993e add s2,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31503 + c0023114: 00499913 slli s2,s3,0x4 + c0023118: 993e add s2,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31511 for(idx = 0; idx < s->closure_var_count; idx++) { - c0022f4a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31503 (discriminator 1) - c0022f4c: 0007871b sext.w a4,a5 - c0022f50: 02c74f63 blt a4,a2,c0022f8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31524 + c002311a: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31511 (discriminator 1) + c002311c: 0007871b sext.w a4,a5 + c0023120: 02c74f63 blt a4,a2,c002315e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31532 dbuf_putc(&bc_out, OP_check_define_var); - c0022f54: 03f00593 li a1,63 - c0022f58: 1088 addi a0,sp,96 - c0022f5a: 5e9240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31525 + c0023124: 03f00593 li a1,63 + c0023128: 1088 addi a0,sp,96 + c002312a: 5e9240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31533 dbuf_put_u32(&bc_out, JS_DupAtom(ctx, hf->var_name)); - c0022f5e: 00c92583 lw a1,12(s2) - c0022f62: 8526 mv a0,s1 - c0022f64: d66e40ef jal ra,c00074ca - c0022f68: 0005059b sext.w a1,a0 - c0022f6c: 1088 addi a0,sp,96 - c0022f6e: cbae20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31527 + c002312e: 00c92583 lw a1,12(s2) + c0023132: 8526 mv a0,s1 + c0023134: c84e40ef jal ra,c00075b8 + c0023138: 0005059b sext.w a1,a0 + c002313c: 1088 addi a0,sp,96 + c002313e: bd8e20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31535 if (hf->is_lexical) - c0022f72: 00494583 lbu a1,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31529 + c0023142: 00494583 lbu a1,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31537 if (hf->cpool_idx >= 0) - c0022f76: 00092783 lw a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31528 + c0023146: 00092783 lw a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31536 flags |= DEFINE_GLOBAL_LEX_VAR; - c0022f7a: 059a slli a1,a1,0x6 - c0022f7c: 0805f593 andi a1,a1,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31529 + c002314a: 059a slli a1,a1,0x6 + c002314c: 0805f593 andi a1,a1,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31537 if (hf->cpool_idx >= 0) - c0022f80: 0007c463 bltz a5,c0022f88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31530 + c0023150: 0007c463 bltz a5,c0023158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31538 flags |= DEFINE_GLOBAL_FUNC_VAR; - c0022f84: 0405e593 ori a1,a1,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31531 + c0023154: 0405e593 ori a1,a1,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31539 dbuf_putc(&bc_out, flags); - c0022f88: 0c15f593 andi a1,a1,193 - c0022f8c: a091 j c0022fd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31504 + c0023158: 0c15f593 andi a1,a1,193 + c002315c: a091 j c00231a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31512 JSClosureVar *cv = &s->closure_var[idx]; - c0022f8e: 1a043703 ld a4,416(s0) - c0022f92: 00379693 slli a3,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31505 + c002315e: 1a043703 ld a4,416(s0) + c0023162: 00379693 slli a3,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31513 if (cv->var_name == hf->var_name) { - c0022f96: 00c92583 lw a1,12(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31504 + c0023166: 00c92583 lw a1,12(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31512 JSClosureVar *cv = &s->closure_var[idx]; - c0022f9a: 96ba add a3,a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31505 + c002316a: 96ba add a3,a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31513 if (cv->var_name == hf->var_name) { - c0022f9c: 42d8 lw a4,4(a3) - c0022f9e: 02e59d63 bne a1,a4,c0022fd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 + c002316c: 42d8 lw a4,4(a3) + c002316e: 02e59d63 bne a1,a4,c00231a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31514 if (s->eval_type == JS_EVAL_TYPE_DIRECT && - c0022fa2: 5c5c lw a5,60(s0) - c0022fa4: 03579f63 bne a5,s5,c0022fe2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 (discriminator 1) - c0022fa8: 0006c783 lbu a5,0(a3) - c0022fac: 8ba1 andi a5,a5,8 - c0022fae: cb95 beqz a5,c0022fe2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31513 + c0023172: 5c5c lw a5,60(s0) + c0023174: 03579f63 bne a5,s5,c00231b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31514 (discriminator 1) + c0023178: 0006c783 lbu a5,0(a3) + c002317c: 8ba1 andi a5,a5,8 + c002317e: cb95 beqz a5,c00231b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31521 dbuf_putc(&bc_out, OP_throw_error); - c0022fb0: 03000593 li a1,48 - c0022fb4: 1088 addi a0,sp,96 - c0022fb6: 58d240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31514 + c0023180: 03000593 li a1,48 + c0023184: 1088 addi a0,sp,96 + c0023186: 58d240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31522 dbuf_put_u32(&bc_out, JS_DupAtom(ctx, hf->var_name)); - c0022fba: 00c92583 lw a1,12(s2) - c0022fbe: 8526 mv a0,s1 - c0022fc0: d0ae40ef jal ra,c00074ca - c0022fc4: 0005059b sext.w a1,a0 - c0022fc8: 1088 addi a0,sp,96 - c0022fca: c5ee20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31515 + c002318a: 00c92583 lw a1,12(s2) + c002318e: 8526 mv a0,s1 + c0023190: c28e40ef jal ra,c00075b8 + c0023194: 0005059b sext.w a1,a0 + c0023198: 1088 addi a0,sp,96 + c002319a: b7ce20ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31523 dbuf_putc(&bc_out, JS_THROW_VAR_REDECL); - c0022fce: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31531 + c002319e: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31539 dbuf_putc(&bc_out, flags); - c0022fd0: 1088 addi a0,sp,96 - c0022fd2: 571240ef jal ra,c0047d42 - c0022fd6: a031 j c0022fe2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31519 + c00231a0: 1088 addi a0,sp,96 + c00231a2: 571240ef jal ra,c0047f12 + c00231a6: a031 j c00231b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31527 if (cv->var_name == JS_ATOM__var_ || - c0022fd8: fad7071b addiw a4,a4,-83 - c0022fdc: 0785 addi a5,a5,1 - c0022fde: f6ea67e3 bltu s4,a4,c0022f4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31498 (discriminator 2) + c00231a8: fad7071b addiw a4,a4,-83 + c00231ac: 0785 addi a5,a5,1 + c00231ae: f6ea67e3 bltu s4,a4,c002311c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31506 (discriminator 2) for(i = 0; i < s->global_var_count; i++) { - c0022fe2: 2985 addiw s3,s3,1 - c0022fe4: b719 j c0022eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31537 + c00231b2: 2985 addiw s3,s3,1 + c00231b4: b719 j c00230ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31545 op = bc_buf[pos]; - c0022fe6: 01bb8d33 add s10,s7,s11 - c0022fea: 000d4a83 lbu s5,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31538 + c00231b6: 01bb8d33 add s10,s7,s11 + c00231ba: 000d4a83 lbu s5,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31546 len = opcode_info[op].size; - c0022fee: 00044717 auipc a4,0x44 - c0022ff2: b2270713 addi a4,a4,-1246 # c0066b10 - c0022ff6: 002a9793 slli a5,s5,0x2 - c0022ffa: 97ba add a5,a5,a4 - c0022ffc: 0007c983 lbu s3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31540 + c00231be: 00044717 auipc a4,0x44 + c00231c2: bb270713 addi a4,a4,-1102 # c0066d70 + c00231c6: 002a9793 slli a5,s5,0x2 + c00231ca: 97ba add a5,a5,a4 + c00231cc: 0007c983 lbu s3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31548 switch(op) { - c0023000: 0c600793 li a5,198 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31537 + c00231d0: 0c600793 li a5,198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31545 op = bc_buf[pos]; - c0023004: 000a8c9b sext.w s9,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31539 + c00231d4: 000a8c9b sext.w s9,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31547 pos_next = pos + len; - c0023008: 01b9893b addw s2,s3,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31540 + c00231d8: 01b9893b addw s2,s3,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31548 switch(op) { - c002300c: 0357e463 bltu a5,s5,c0023034 - c0023010: 0b200793 li a5,178 - c0023014: 0357e663 bltu a5,s5,c0023040 - c0023018: 03200793 li a5,50 - c002301c: 0757e363 bltu a5,s5,c0023082 - c0023020: 02200793 li a5,34 - c0023024: 0357ee63 bltu a5,s5,c0023060 - c0023028: 47c5 li a5,17 - c002302a: 12fa8ee3 beq s5,a5,c0023966 - c002302e: 47d9 li a5,22 - c0023030: 46fa8663 beq s5,a5,c002349c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31818 + c00231dc: 0357e463 bltu a5,s5,c0023204 + c00231e0: 0b200793 li a5,178 + c00231e4: 0357e663 bltu a5,s5,c0023210 + c00231e8: 03200793 li a5,50 + c00231ec: 0757e363 bltu a5,s5,c0023252 + c00231f0: 02200793 li a5,34 + c00231f4: 0357ee63 bltu a5,s5,c0023230 + c00231f8: 47c5 li a5,17 + c00231fa: 12fa8ee3 beq s5,a5,c0023b36 + c00231fe: 47d9 li a5,22 + c0023200: 46fa8663 beq s5,a5,c002366c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31826 dbuf_put(&bc_out, bc_buf + pos, len); - c0023034: 864e mv a2,s3 - c0023036: 85ea mv a1,s10 - c0023038: 1088 addi a0,sp,96 - c002303a: 477240ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31819 + c0023204: 864e mv a2,s3 + c0023206: 85ea mv a1,s10 + c0023208: 1088 addi a0,sp,96 + c002320a: 477240ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31827 break; - c002303e: a0f5 j c002312a - c0023040: 04ca879b addiw a5,s5,76 - c0023044: 0ff7f793 zext.b a5,a5 - c0023048: 4749 li a4,18 - c002304a: 0ef76063 bltu a4,a5,c002312a - c002304e: 0003c717 auipc a4,0x3c - c0023052: 95a70713 addi a4,a4,-1702 # c005e9a8 - c0023056: 078a slli a5,a5,0x2 - c0023058: 97ba add a5,a5,a4 - c002305a: 439c lw a5,0(a5) - c002305c: 97ba add a5,a5,a4 - c002305e: 8782 jr a5 - c0023060: fdda8a9b addiw s5,s5,-35 - c0023064: 0ffafa93 zext.b s5,s5 - c0023068: 47bd li a5,15 - c002306a: fd57e5e3 bltu a5,s5,c0023034 - c002306e: 0003c717 auipc a4,0x3c - c0023072: 98670713 addi a4,a4,-1658 # c005e9f4 - c0023076: 0a8a slli s5,s5,0x2 - c0023078: 9aba add s5,s5,a4 - c002307a: 000aa783 lw a5,0(s5) - c002307e: 97ba add a5,a5,a4 - c0023080: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31540 + c002320e: a0f5 j c00232fa + c0023210: 04ca879b addiw a5,s5,76 + c0023214: 0ff7f793 zext.b a5,a5 + c0023218: 4749 li a4,18 + c002321a: 0ef76063 bltu a4,a5,c00232fa + c002321e: 0003c717 auipc a4,0x3c + c0023222: 9ea70713 addi a4,a4,-1558 # c005ec08 + c0023226: 078a slli a5,a5,0x2 + c0023228: 97ba add a5,a5,a4 + c002322a: 439c lw a5,0(a5) + c002322c: 97ba add a5,a5,a4 + c002322e: 8782 jr a5 + c0023230: fdda8a9b addiw s5,s5,-35 + c0023234: 0ffafa93 zext.b s5,s5 + c0023238: 47bd li a5,15 + c002323a: fd57e5e3 bltu a5,s5,c0023204 + c002323e: 0003c717 auipc a4,0x3c + c0023242: a1670713 addi a4,a4,-1514 # c005ec54 + c0023246: 0a8a slli s5,s5,0x2 + c0023248: 9aba add s5,s5,a4 + c002324a: 000aa783 lw a5,0(s5) + c002324e: 97ba add a5,a5,a4 + c0023250: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31548 switch(op) { - c0023082: 04d00793 li a5,77 - c0023086: 0afa87e3 beq s5,a5,c0023934 - c002308a: f96a8a9b addiw s5,s5,-106 - c002308e: 0ffafa93 zext.b s5,s5 - c0023092: 4795 li a5,5 - c0023094: fb57e0e3 bltu a5,s5,c0023034 - c0023098: 0003c717 auipc a4,0x3c - c002309c: 99c70713 addi a4,a4,-1636 # c005ea34 - c00230a0: 0a8a slli s5,s5,0x2 - c00230a2: 9aba add s5,s5,a4 - c00230a4: 000aa783 lw a5,0(s5) - c00230a8: 97ba add a5,a5,a4 - c00230aa: 8782 jr a5 + c0023252: 04d00793 li a5,77 + c0023256: 0afa87e3 beq s5,a5,c0023b04 + c002325a: f96a8a9b addiw s5,s5,-106 + c002325e: 0ffafa93 zext.b s5,s5 + c0023262: 4795 li a5,5 + c0023264: fb57e0e3 bltu a5,s5,c0023204 + c0023268: 0003c717 auipc a4,0x3c + c002326c: a2c70713 addi a4,a4,-1492 # c005ec94 + c0023270: 0a8a slli s5,s5,0x2 + c0023272: 9aba add s5,s5,a4 + c0023274: 000aa783 lw a5,0(s5) + c0023278: 97ba add a5,a5,a4 + c002327a: 8782 jr a5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00230ac: 002d4783 lbu a5,2(s10) - c00230b0: 001d4a03 lbu s4,1(s10) - c00230b4: 07a2 slli a5,a5,0x8 - c00230b6: 0147e7b3 or a5,a5,s4 - c00230ba: 003d4a03 lbu s4,3(s10) - c00230be: 0a42 slli s4,s4,0x10 - c00230c0: 00fa67b3 or a5,s4,a5 - c00230c4: 004d4a03 lbu s4,4(s10) - c00230c8: 0a62 slli s4,s4,0x18 - c00230ca: 00fa6a33 or s4,s4,a5 + c002327c: 002d4783 lbu a5,2(s10) + c0023280: 001d4a03 lbu s4,1(s10) + c0023284: 07a2 slli a5,a5,0x8 + c0023286: 0147e7b3 or a5,a5,s4 + c002328a: 003d4a03 lbu s4,3(s10) + c002328e: 0a42 slli s4,s4,0x10 + c0023290: 00fa67b3 or a5,s4,a5 + c0023294: 004d4a03 lbu s4,4(s10) + c0023298: 0a62 slli s4,s4,0x18 + c002329a: 00fa6a33 or s4,s4,a5 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31543 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31551 s->line_number_size++; - c00230ce: 1c042783 lw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31542 + c002329e: 1c042783 lw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31550 line_num = get_u32(bc_buf + pos + 1); - c00230d2: 2a01 sext.w s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31543 + c00232a2: 2a01 sext.w s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31551 s->line_number_size++; - c00230d4: 2785 addiw a5,a5,1 - c00230d6: 1cf42023 sw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31544 + c00232a4: 2785 addiw a5,a5,1 + c00232a6: 1cf42023 sw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31552 goto no_change; - c00230da: bfa9 j c0023034 + c00232aa: bfa9 j c0023204 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c00230dc: 002d4a83 lbu s5,2(s10) - c00230e0: 001d4783 lbu a5,1(s10) - c00230e4: 004d4983 lbu s3,4(s10) - c00230e8: 0aa2 slli s5,s5,0x8 - c00230ea: 00faeab3 or s5,s5,a5 - c00230ee: 003d4783 lbu a5,3(s10) - c00230f2: 09a2 slli s3,s3,0x8 + c00232ac: 002d4a83 lbu s5,2(s10) + c00232b0: 001d4783 lbu a5,1(s10) + c00232b4: 004d4983 lbu s3,4(s10) + c00232b8: 0aa2 slli s5,s5,0x8 + c00232ba: 00faeab3 or s5,s5,a5 + c00232be: 003d4783 lbu a5,3(s10) + c00232c2: 09a2 slli s3,s3,0x8 mark_eval_captured_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30897 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30905 for (idx = s->scopes[scope_level].first; idx >= 0;) { - c00230f4: 00f9e9b3 or s3,s3,a5 - c00230f8: 787c ld a5,240(s0) - c00230fa: 098e slli s3,s3,0x3 - c00230fc: 97ce add a5,a5,s3 - c00230fe: 43dc lw a5,4(a5) - c0023100: 0207d763 bgez a5,c002312e + c00232c4: 00f9e9b3 or s3,s3,a5 + c00232c8: 787c ld a5,240(s0) + c00232ca: 098e slli s3,s3,0x3 + c00232cc: 97ce add a5,a5,s3 + c00232ce: 43dc lw a5,4(a5) + c00232d0: 0207d763 bgez a5,c00232fe resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31551 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31559 dbuf_putc(&bc_out, op); - c0023104: 03100593 li a1,49 - c0023108: 1088 addi a0,sp,96 - c002310a: 439240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31552 - dbuf_put_u16(&bc_out, call_argc); - c002310e: 85d6 mv a1,s5 - c0023110: 1088 addi a0,sp,96 - c0023112: 9e0e20ef jal ra,c00052f2 + c00232d4: 03100593 li a1,49 + c00232d8: 1088 addi a0,sp,96 + c00232da: 439240ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31560 + dbuf_put_u16(&bc_out, call_argc); + c00232de: 85d6 mv a1,s5 + c00232e0: 1088 addi a0,sp,96 + c00232e2: 8fee20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31568 dbuf_put_u16(&bc_out, s->scopes[scope].first + 1); - c0023116: 787c ld a5,240(s0) - c0023118: 1088 addi a0,sp,96 - c002311a: 99be add s3,s3,a5 - c002311c: 0049a583 lw a1,4(s3) - c0023120: 2585 addiw a1,a1,1 - c0023122: 15c2 slli a1,a1,0x30 - c0023124: 91c1 srli a1,a1,0x30 - c0023126: 9cce20ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31785 (discriminator 1) + c00232e6: 787c ld a5,240(s0) + c00232e8: 1088 addi a0,sp,96 + c00232ea: 99be add s3,s3,a5 + c00232ec: 0049a583 lw a1,4(s3) + c00232f0: 2585 addiw a1,a1,1 + c00232f2: 15c2 slli a1,a1,0x30 + c00232f4: 91c1 srli a1,a1,0x30 + c00232f6: 8eae20ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31793 (discriminator 1) pos_next = pos1; - c002312a: 8dca mv s11,s2 - c002312c: b3e9 j c0022ef6 + c00232fa: 8dca mv s11,s2 + c00232fc: b3e9 j c00230c6 mark_eval_captured_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30906 vd = &s->vars[idx]; - c002312e: 6858 ld a4,144(s0) - c0023130: 0792 slli a5,a5,0x4 - c0023132: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30899 + c00232fe: 6858 ld a4,144(s0) + c0023300: 0792 slli a5,a5,0x4 + c0023302: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30907 vd->is_captured = 1; - c0023134: 47d8 lw a4,12(a5) - c0023136: 00476713 ori a4,a4,4 - c002313a: c7d8 sw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30900 + c0023304: 47d8 lw a4,12(a5) + c0023306: 00476713 ori a4,a4,4 + c002330a: c7d8 sw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30908 idx = vd->scope_next; - c002313c: 479c lw a5,8(a5) - c002313e: b7c9 j c0023100 + c002330c: 479c lw a5,8(a5) + c002330e: b7c9 j c00232d0 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0023140: 002d4983 lbu s3,2(s10) - c0023144: 001d4783 lbu a5,1(s10) - c0023148: 09a2 slli s3,s3,0x8 + c0023310: 002d4983 lbu s3,2(s10) + c0023314: 001d4783 lbu a5,1(s10) + c0023318: 09a2 slli s3,s3,0x8 mark_eval_captured_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30897 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30905 for (idx = s->scopes[scope_level].first; idx >= 0;) { - c002314a: 00f9e9b3 or s3,s3,a5 - c002314e: 787c ld a5,240(s0) - c0023150: 098e slli s3,s3,0x3 - c0023152: 97ce add a5,a5,s3 - c0023154: 43dc lw a5,4(a5) - c0023156: 0007d863 bgez a5,c0023166 + c002331a: 00f9e9b3 or s3,s3,a5 + c002331e: 787c ld a5,240(s0) + c0023320: 098e slli s3,s3,0x3 + c0023322: 97ce add a5,a5,s3 + c0023324: 43dc lw a5,4(a5) + c0023326: 0007d863 bgez a5,c0023336 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31559 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31567 dbuf_putc(&bc_out, op); - c002315a: 03200593 li a1,50 - c002315e: 1088 addi a0,sp,96 - c0023160: 3e3240ef jal ra,c0047d42 - c0023164: bf4d j c0023116 + c002332a: 03200593 li a1,50 + c002332e: 1088 addi a0,sp,96 + c0023330: 3e3240ef jal ra,c0047f12 + c0023334: bf4d j c00232e6 mark_eval_captured_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30906 vd = &s->vars[idx]; - c0023166: 6858 ld a4,144(s0) - c0023168: 0792 slli a5,a5,0x4 - c002316a: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30899 + c0023336: 6858 ld a4,144(s0) + c0023338: 0792 slli a5,a5,0x4 + c002333a: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30907 vd->is_captured = 1; - c002316c: 47d8 lw a4,12(a5) - c002316e: 00476713 ori a4,a4,4 - c0023172: c7d8 sw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30900 + c002333c: 47d8 lw a4,12(a5) + c002333e: 00476713 ori a4,a4,4 + c0023342: c7d8 sw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30908 idx = vd->scope_next; - c0023174: 479c lw a5,8(a5) - c0023176: b7c5 j c0023156 + c0023344: 479c lw a5,8(a5) + c0023346: b7c5 j c0023326 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023178: 002d4603 lbu a2,2(s10) - c002317c: 001d4983 lbu s3,1(s10) + c0023348: 002d4603 lbu a2,2(s10) + c002334c: 001d4983 lbu s3,1(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0023180: 006d4683 lbu a3,6(s10) + c0023350: 006d4683 lbu a3,6(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023184: 0622 slli a2,a2,0x8 - c0023186: 01366633 or a2,a2,s3 - c002318a: 003d4983 lbu s3,3(s10) + c0023354: 0622 slli a2,a2,0x8 + c0023356: 01366633 or a2,a2,s3 + c002335a: 003d4983 lbu s3,3(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002318e: 06a2 slli a3,a3,0x8 + c002335e: 06a2 slli a3,a3,0x8 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31571 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31579 pos_next = resolve_scope_var(ctx, s, var_name, scope, op, &bc_out, - c0023190: 4881 li a7,0 + c0023360: 4881 li a7,0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023192: 09c2 slli s3,s3,0x10 - c0023194: 00c9e633 or a2,s3,a2 - c0023198: 004d4983 lbu s3,4(s10) + c0023362: 09c2 slli s3,s3,0x10 + c0023364: 00c9e633 or a2,s3,a2 + c0023368: 004d4983 lbu s3,4(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31571 - c002319c: 4801 li a6,0 - c002319e: 109c addi a5,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31579 + c002336c: 4801 li a6,0 + c002336e: 109c addi a5,sp,96 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00231a0: 09e2 slli s3,s3,0x18 - c00231a2: 00c9e9b3 or s3,s3,a2 - c00231a6: 2981 sext.w s3,s3 + c0023370: 09e2 slli s3,s3,0x18 + c0023372: 00c9e9b3 or s3,s3,a2 + c0023376: 2981 sext.w s3,s3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c00231a8: 005d4603 lbu a2,5(s10) + c0023378: 005d4603 lbu a2,5(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31571 - c00231ac: 8766 mv a4,s9 - c00231ae: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31579 + c002337c: 8766 mv a4,s9 + c002337e: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31592 pos_next = resolve_scope_var(ctx, s, var_name, scope, op, &bc_out, - c00231b0: 8ed1 or a3,a3,a2 - c00231b2: 85a2 mv a1,s0 - c00231b4: 864e mv a2,s3 - c00231b6: 8526 mv a0,s1 - c00231b8: afaff0ef jal ra,c00224b2 - c00231bc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31600 + c0023380: 8ed1 or a3,a3,a2 + c0023382: 85a2 mv a1,s0 + c0023384: 864e mv a2,s3 + c0023386: 8526 mv a0,s1 + c0023388: afaff0ef jal ra,c0022682 + c002338c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31608 JS_FreeAtom(ctx, var_name); - c00231be: 85ce mv a1,s3 - c00231c0: 8526 mv a0,s1 - c00231c2: b4ae40ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31602 + c002338e: 85ce mv a1,s3 + c0023390: 8526 mv a0,s1 + c0023392: a68e40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31610 break; - c00231c6: b795 j c002312a + c0023396: b795 j c00232fa get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00231c8: 006d4783 lbu a5,6(s10) - c00231cc: 005d4883 lbu a7,5(s10) - c00231d0: 002d4603 lbu a2,2(s10) - c00231d4: 07a2 slli a5,a5,0x8 - c00231d6: 0117e7b3 or a5,a5,a7 - c00231da: 007d4883 lbu a7,7(s10) - c00231de: 001d4983 lbu s3,1(s10) - c00231e2: 0622 slli a2,a2,0x8 - c00231e4: 08c2 slli a7,a7,0x10 - c00231e6: 00f8e7b3 or a5,a7,a5 - c00231ea: 008d4883 lbu a7,8(s10) - c00231ee: 01366633 or a2,a2,s3 - c00231f2: 003d4983 lbu s3,3(s10) - c00231f6: 08e2 slli a7,a7,0x18 - c00231f8: 00f8e8b3 or a7,a7,a5 + c0023398: 006d4783 lbu a5,6(s10) + c002339c: 005d4883 lbu a7,5(s10) + c00233a0: 002d4603 lbu a2,2(s10) + c00233a4: 07a2 slli a5,a5,0x8 + c00233a6: 0117e7b3 or a5,a5,a7 + c00233aa: 007d4883 lbu a7,7(s10) + c00233ae: 001d4983 lbu s3,1(s10) + c00233b2: 0622 slli a2,a2,0x8 + c00233b4: 08c2 slli a7,a7,0x10 + c00233b6: 00f8e7b3 or a5,a7,a5 + c00233ba: 008d4883 lbu a7,8(s10) + c00233be: 01366633 or a2,a2,s3 + c00233c2: 003d4983 lbu s3,3(s10) + c00233c6: 08e2 slli a7,a7,0x18 + c00233c8: 00f8e8b3 or a7,a7,a5 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31590 ls = &s->label_slots[label]; - c00231fc: 2881 sext.w a7,a7 - c00231fe: 47e1 li a5,24 - c0023200: 02f888b3 mul a7,a7,a5 - c0023204: 17043783 ld a5,368(s0) + c00233cc: 2881 sext.w a7,a7 + c00233ce: 47e1 li a5,24 + c00233d0: 02f888b3 mul a7,a7,a5 + c00233d4: 17043783 ld a5,368(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023208: 09c2 slli s3,s3,0x10 - c002320a: 00c9e633 or a2,s3,a2 - c002320e: 004d4983 lbu s3,4(s10) + c00233d8: 09c2 slli s3,s3,0x10 + c00233da: 00c9e633 or a2,s3,a2 + c00233de: 004d4983 lbu s3,4(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0023212: 00ad4683 lbu a3,10(s10) + c00233e2: 00ad4683 lbu a3,10(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31592 pos_next = resolve_scope_var(ctx, s, var_name, scope, op, &bc_out, - c0023216: 885e mv a6,s7 + c00233e6: 885e mv a6,s7 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023218: 09e2 slli s3,s3,0x18 - c002321a: 00c9e9b3 or s3,s3,a2 + c00233e8: 09e2 slli s3,s3,0x18 + c00233ea: 00c9e9b3 or s3,s3,a2 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002321e: 009d4603 lbu a2,9(s10) + c00233ee: 009d4603 lbu a2,9(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31590 ls = &s->label_slots[label]; - c0023222: 98be add a7,a7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31583 + c00233f2: 98be add a7,a7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31591 ls->ref_count--; /* always remove label reference */ - c0023224: 0008a783 lw a5,0(a7) + c00233f4: 0008a783 lw a5,0(a7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023228: 2981 sext.w s3,s3 + c00233f8: 2981 sext.w s3,s3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002322a: 06a2 slli a3,a3,0x8 + c00233fa: 06a2 slli a3,a3,0x8 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31583 - c002322c: 37fd addiw a5,a5,-1 - c002322e: 00f8a023 sw a5,0(a7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31591 + c00233fc: 37fd addiw a5,a5,-1 + c00233fe: 00f8a023 sw a5,0(a7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31592 pos_next = resolve_scope_var(ctx, s, var_name, scope, op, &bc_out, - c0023232: e04a sd s2,0(sp) - c0023234: 109c addi a5,sp,96 - c0023236: 0bb00713 li a4,187 - c002323a: bf9d j c00231b0 + c0023402: e04a sd s2,0(sp) + c0023404: 109c addi a5,sp,96 + c0023406: 0bb00713 li a4,187 + c002340a: bf9d j c0023380 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c002323c: 002d4783 lbu a5,2(s10) - c0023240: 001d4983 lbu s3,1(s10) + c002340c: 002d4783 lbu a5,2(s10) + c0023410: 001d4983 lbu s3,1(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0023244: 006d4b03 lbu s6,6(s10) + c0023414: 006d4b03 lbu s6,6(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023248: 07a2 slli a5,a5,0x8 - c002324a: 0137e7b3 or a5,a5,s3 - c002324e: 003d4983 lbu s3,3(s10) + c0023418: 07a2 slli a5,a5,0x8 + c002341a: 0137e7b3 or a5,a5,s3 + c002341e: 003d4983 lbu s3,3(s10) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0023252: 0b22 slli s6,s6,0x8 + c0023422: 0b22 slli s6,s6,0x8 resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30806 idx = resolve_scope_private_field1(ctx, &is_ref, &var_kind, s, - c0023254: 1810 addi a2,sp,48 + c0023424: 1810 addi a2,sp,48 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023256: 09c2 slli s3,s3,0x10 - c0023258: 00f9e7b3 or a5,s3,a5 - c002325c: 004d4983 lbu s3,4(s10) + c0023426: 09c2 slli s3,s3,0x10 + c0023428: 00f9e7b3 or a5,s3,a5 + c002342c: 004d4983 lbu s3,4(s10) resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30798 - c0023260: 86a2 mv a3,s0 - c0023262: 184c addi a1,sp,52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30806 + c0023430: 86a2 mv a3,s0 + c0023432: 184c addi a1,sp,52 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023264: 09e2 slli s3,s3,0x18 - c0023266: 00f9e9b3 or s3,s3,a5 + c0023434: 09e2 slli s3,s3,0x18 + c0023436: 00f9e9b3 or s3,s3,a5 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002326a: 005d4783 lbu a5,5(s10) + c002343a: 005d4783 lbu a5,5(s10) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c002326e: 2981 sext.w s3,s3 + c002343e: 2981 sext.w s3,s3 resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30798 - c0023270: 874e mv a4,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30806 + c0023440: 874e mv a4,s3 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31604 scope = get_u16(bc_buf + pos + 5); - c0023272: 00fb6b33 or s6,s6,a5 + c0023442: 00fb6b33 or s6,s6,a5 resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30806 idx = resolve_scope_private_field1(ctx, &is_ref, &var_kind, s, - c0023276: 87da mv a5,s6 - c0023278: 8526 mv a0,s1 - c002327a: 946ff0ef jal ra,c00223c0 - c002327e: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30800 + c0023446: 87da mv a5,s6 + c0023448: 8526 mv a0,s1 + c002344a: 946ff0ef jal ra,c0022590 + c002344e: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30808 if (idx < 0) - c0023280: 040542e3 bltz a0,c0023ac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30802 + c0023450: 040542e3 bltz a0,c0023c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30810 assert(var_kind != JS_VAR_NORMAL); - c0023284: 5742 lw a4,48(sp) - c0023286: eb19 bnez a4,c002329c - c0023288: 65a1 lui a1,0x8 - c002328a: 4601 li a2,0 - c002328c: 85258593 addi a1,a1,-1966 # 7852 <__clzdi2-0xbfff87ae> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30863 + c0023454: 5742 lw a4,48(sp) + c0023456: eb19 bnez a4,c002346c + c0023458: 65a1 lui a1,0x8 + c002345a: 4601 li a2,0 + c002345c: 85a58593 addi a1,a1,-1958 # 785a <__clzdi2-0xbfff87a6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30871 assert(var_kind == JS_VAR_PRIVATE_SETTER); - c0023290: 00039517 auipc a0,0x39 - c0023294: 7e850513 addi a0,a0,2024 # c005ca78 - c0023298: 780300ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30803 + c0023460: 00039517 auipc a0,0x39 + c0023464: 7e850513 addi a0,a0,2024 # c005cc48 + c0023468: 780300ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30811 switch (op) { - c002329c: 0c100793 li a5,193 - c00232a0: 0afa8863 beq s5,a5,c0023350 - c00232a4: 0c200793 li a5,194 - c00232a8: 16fa8e63 beq s5,a5,c0023424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30806 + c002346c: 0c100793 li a5,193 + c0023470: 0afa8863 beq s5,a5,c0023520 + c0023474: 0c200793 li a5,194 + c0023478: 16fa8e63 beq s5,a5,c00235f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30814 switch(var_kind) { - c00232ac: 376d addiw a4,a4,-5 - c00232ae: 0007069b sext.w a3,a4 - c00232b2: 4791 li a5,4 - c00232b4: 0ad7e663 bltu a5,a3,c0023360 - c00232b8: 02071793 slli a5,a4,0x20 - c00232bc: 01e7d713 srli a4,a5,0x1e - c00232c0: 0003b697 auipc a3,0x3b - c00232c4: 78c68693 addi a3,a3,1932 # c005ea4c - c00232c8: 9736 add a4,a4,a3 - c00232ca: 431c lw a5,0(a4) - c00232cc: 97b6 add a5,a5,a3 - c00232ce: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30808 + c002347c: 376d addiw a4,a4,-5 + c002347e: 0007069b sext.w a3,a4 + c0023482: 4791 li a5,4 + c0023484: 0ad7e663 bltu a5,a3,c0023530 + c0023488: 02071793 slli a5,a4,0x20 + c002348c: 01e7d713 srli a4,a5,0x1e + c0023490: 0003c697 auipc a3,0x3c + c0023494: 81c68693 addi a3,a3,-2020 # c005ecac + c0023498: 9736 add a4,a4,a3 + c002349a: 431c lw a5,0(a4) + c002349c: 97b6 add a5,a5,a3 + c002349e: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30816 if (op == OP_scope_get_private_field2) - c00232d0: 0c000793 li a5,192 - c00232d4: 00fc9863 bne s9,a5,c00232e4 - c00232d8: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30809 + c00234a0: 0c000793 li a5,192 + c00234a4: 00fc9863 bne s9,a5,c00234b4 + c00234a8: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30817 dbuf_putc(bc, OP_dup); - c00232da: 45c5 li a1,17 - c00232dc: 1088 addi a0,sp,96 - c00232de: 265240ef jal ra,c0047d42 - c00232e2: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30810 + c00234aa: 45c5 li a1,17 + c00234ac: 1088 addi a0,sp,96 + c00234ae: 265240ef jal ra,c0047f12 + c00234b2: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30818 get_loc_or_ref(bc, is_ref, idx); - c00232e4: 55d2 lw a1,52(sp) - c00232e6: 1088 addi a0,sp,96 - c00232e8: 82ae20ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30811 + c00234b4: 55d2 lw a1,52(sp) + c00234b6: 1088 addi a0,sp,96 + c00234b8: f49e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30819 dbuf_putc(bc, OP_get_private_field); - c00232ec: 04400593 li a1,68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30883 + c00234bc: 04400593 li a1,68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30891 dbuf_putc(bc, OP_private_in); - c00232f0: 1088 addi a0,sp,96 - c00232f2: 251240ef jal ra,c0047d42 + c00234c0: 1088 addi a0,sp,96 + c00234c2: 251240ef jal ra,c0047f12 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31606 if (ret < 0) - c00232f6: b5e1 j c00231be + c00234c6: b5e1 j c002338e resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30822 get_loc_or_ref(bc, is_ref, idx); - c00232f8: 55d2 lw a1,52(sp) - c00232fa: 1088 addi a0,sp,96 - c00232fc: 816e20ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30815 + c00234c8: 55d2 lw a1,52(sp) + c00234ca: 1088 addi a0,sp,96 + c00234cc: f35e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30823 dbuf_putc(bc, OP_check_brand); - c0023300: 02c00593 li a1,44 - c0023304: 1088 addi a0,sp,96 - c0023306: 23d240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30816 + c00234d0: 02c00593 li a1,44 + c00234d4: 1088 addi a0,sp,96 + c00234d6: 23d240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30824 if (op != OP_scope_get_private_field2) - c002330a: 0c000793 li a5,192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30817 + c00234da: 0c000793 li a5,192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30825 dbuf_putc(bc, OP_nip); - c002330e: 45bd li a1,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30816 + c00234de: 45bd li a1,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30824 if (op != OP_scope_get_private_field2) - c0023310: eafc87e3 beq s9,a5,c00231be - c0023314: bff1 j c00232f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30821 + c00234e0: eafc87e3 beq s9,a5,c002338e + c00234e4: bff1 j c00234c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30829 if (op == OP_scope_get_private_field2) - c0023316: 0c000793 li a5,192 - c002331a: 00fc9863 bne s9,a5,c002332a - c002331e: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30822 + c00234e6: 0c000793 li a5,192 + c00234ea: 00fc9863 bne s9,a5,c00234fa + c00234ee: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30830 dbuf_putc(bc, OP_dup); - c0023320: 45c5 li a1,17 - c0023322: 1088 addi a0,sp,96 - c0023324: 21f240ef jal ra,c0047d42 - c0023328: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30823 + c00234f0: 45c5 li a1,17 + c00234f2: 1088 addi a0,sp,96 + c00234f4: 21f240ef jal ra,c0047f12 + c00234f8: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30831 get_loc_or_ref(bc, is_ref, idx); - c002332a: 55d2 lw a1,52(sp) - c002332c: 1088 addi a0,sp,96 - c002332e: fe5e10ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30824 + c00234fa: 55d2 lw a1,52(sp) + c00234fc: 1088 addi a0,sp,96 + c00234fe: f03e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30832 dbuf_putc(bc, OP_check_brand); - c0023332: 02c00593 li a1,44 - c0023336: 1088 addi a0,sp,96 - c0023338: 20b240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30825 + c0023502: 02c00593 li a1,44 + c0023506: 1088 addi a0,sp,96 + c0023508: 20b240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30833 dbuf_putc(bc, OP_call_method); - c002333c: 02400593 li a1,36 - c0023340: 1088 addi a0,sp,96 - c0023342: 201240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30826 + c002350c: 02400593 li a1,36 + c0023510: 1088 addi a0,sp,96 + c0023512: 201240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30834 dbuf_put_u16(bc, 0); - c0023346: 4581 li a1,0 - c0023348: 1088 addi a0,sp,96 - c002334a: fa9e10ef jal ra,c00052f2 + c0023516: 4581 li a1,0 + c0023518: 1088 addi a0,sp,96 + c002351a: ec7e10ef jal ra,c00053e0 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31606 if (ret < 0) - c002334e: bd85 j c00231be + c002351e: bd85 j c002338e resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30847 switch(var_kind) { - c0023350: 479d li a5,7 - c0023352: 00e7c963 blt a5,a4,c0023364 - c0023356: 4795 li a5,5 - c0023358: 06e7c663 blt a5,a4,c00233c4 - c002335c: 04f70d63 beq a4,a5,c00233b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30835 + c0023520: 479d li a5,7 + c0023522: 00e7c963 blt a5,a4,c0023534 + c0023526: 4795 li a5,5 + c0023528: 06e7c663 blt a5,a4,c0023594 + c002352c: 04f70d63 beq a4,a5,c0023586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30843 abort(); - c0023360: 4aa320ef jal ra,c005580a - c0023364: 3761 addiw a4,a4,-8 - c0023366: 4785 li a5,1 - c0023368: fee7ece3 bltu a5,a4,c0023360 + c0023530: 4aa320ef jal ra,c00559da + c0023534: 3761 addiw a4,a4,-8 + c0023536: 4785 li a5,1 + c0023538: fee7ece3 bltu a5,a4,c0023530 get_private_setter_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22884 return js_atom_concat_str(ctx, name, ""); - c002336c: 0003b617 auipc a2,0x3b - c0023370: 63460613 addi a2,a2,1588 # c005e9a0 - c0023374: 85ce mv a1,s3 - c0023376: 8526 mv a0,s1 - c0023378: e78fd0ef jal ra,c00209f0 - c002337c: 00050a9b sext.w s5,a0 + c002353c: 0003b617 auipc a2,0x3b + c0023540: 6c460613 addi a2,a2,1732 # c005ec00 + c0023544: 85ce mv a1,s3 + c0023546: 8526 mv a0,s1 + c0023548: e78fd0ef jal ra,c0020bc0 + c002354c: 00050a9b sext.w s5,a0 resolve_scope_private_field(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30863 if (setter_name == JS_ATOM_NULL) - c0023380: 740a8263 beqz s5,c0023ac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30857 + c0023550: 740a8263 beqz s5,c0023c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30865 idx = resolve_scope_private_field1(ctx, &is_ref, - c0023384: 1810 addi a2,sp,48 - c0023386: 87da mv a5,s6 - c0023388: 8756 mv a4,s5 - c002338a: 86a2 mv a3,s0 - c002338c: 184c addi a1,sp,52 - c002338e: 8526 mv a0,s1 - c0023390: 830ff0ef jal ra,c00223c0 - c0023394: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30860 + c0023554: 1810 addi a2,sp,48 + c0023556: 87da mv a5,s6 + c0023558: 8756 mv a4,s5 + c002355a: 86a2 mv a3,s0 + c002355c: 184c addi a1,sp,52 + c002355e: 8526 mv a0,s1 + c0023560: 830ff0ef jal ra,c0022590 + c0023564: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30868 JS_FreeAtom(ctx, setter_name); - c0023396: 85d6 mv a1,s5 - c0023398: 8526 mv a0,s1 - c002339a: 972e40ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30861 + c0023566: 85d6 mv a1,s5 + c0023568: 8526 mv a0,s1 + c002356a: 890e40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30869 if (idx < 0) - c002339e: 6662 ld a2,24(sp) - c00233a0: 72064263 bltz a2,c0023ac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30863 + c002356e: 6662 ld a2,24(sp) + c0023570: 72064263 bltz a2,c0023c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30871 assert(var_kind == JS_VAR_PRIVATE_SETTER); - c00233a4: 5742 lw a4,48(sp) - c00233a6: 47a1 li a5,8 - c00233a8: 02f70e63 beq a4,a5,c00233e4 - c00233ac: 65a1 lui a1,0x8 - c00233ae: 4601 li a2,0 - c00233b0: 88f58593 addi a1,a1,-1905 # 788f <__clzdi2-0xbfff8771> - c00233b4: bdf1 j c0023290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30841 + c0023574: 5742 lw a4,48(sp) + c0023576: 47a1 li a5,8 + c0023578: 02f70e63 beq a4,a5,c00235b4 + c002357c: 65a1 lui a1,0x8 + c002357e: 4601 li a2,0 + c0023580: 89758593 addi a1,a1,-1897 # 7897 <__clzdi2-0xbfff8769> + c0023584: bdf1 j c0023460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30849 get_loc_or_ref(bc, is_ref, idx); - c00233b6: 55d2 lw a1,52(sp) - c00233b8: 1088 addi a0,sp,96 - c00233ba: f59e10ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30842 + c0023586: 55d2 lw a1,52(sp) + c0023588: 1088 addi a0,sp,96 + c002358a: e77e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30850 dbuf_putc(bc, OP_put_private_field); - c00233be: 04500593 li a1,69 - c00233c2: b73d j c00232f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30847 + c002358e: 04500593 li a1,69 + c0023592: b73d j c00234c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30855 dbuf_putc(bc, OP_throw_error); - c00233c4: 03000593 li a1,48 - c00233c8: 1088 addi a0,sp,96 - c00233ca: 179240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30848 + c0023594: 03000593 li a1,48 + c0023598: 1088 addi a0,sp,96 + c002359a: 179240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30856 dbuf_put_u32(bc, JS_DupAtom(ctx, var_name)); - c00233ce: 85ce mv a1,s3 - c00233d0: 8526 mv a0,s1 - c00233d2: 8f8e40ef jal ra,c00074ca - c00233d6: 0005059b sext.w a1,a0 - c00233da: 1088 addi a0,sp,96 - c00233dc: 84ce20ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30849 + c002359e: 85ce mv a1,s3 + c00235a0: 8526 mv a0,s1 + c00235a2: 816e40ef jal ra,c00075b8 + c00235a6: 0005059b sext.w a1,a0 + c00235aa: 1088 addi a0,sp,96 + c00235ac: f6be10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30857 dbuf_putc(bc, JS_THROW_VAR_RO); - c00233e0: 4581 li a1,0 - c00233e2: b739 j c00232f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30864 + c00235b0: 4581 li a1,0 + c00235b2: b739 j c00234c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30872 get_loc_or_ref(bc, is_ref, idx); - c00233e4: 55d2 lw a1,52(sp) - c00233e6: 1088 addi a0,sp,96 - c00233e8: f2be10ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30865 + c00235b4: 55d2 lw a1,52(sp) + c00235b6: 1088 addi a0,sp,96 + c00235b8: e49e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30873 dbuf_putc(bc, OP_swap); - c00233ec: 45ed li a1,27 - c00233ee: 1088 addi a0,sp,96 - c00233f0: 153240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30867 + c00235bc: 45ed li a1,27 + c00235be: 1088 addi a0,sp,96 + c00235c0: 153240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30875 dbuf_putc(bc, OP_rot3r); - c00233f4: 45f9 li a1,30 - c00233f6: 1088 addi a0,sp,96 - c00233f8: 14b240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30869 + c00235c4: 45f9 li a1,30 + c00235c6: 1088 addi a0,sp,96 + c00235c8: 14b240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30877 dbuf_putc(bc, OP_check_brand); - c00233fc: 02c00593 li a1,44 - c0023400: 1088 addi a0,sp,96 - c0023402: 141240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30870 + c00235cc: 02c00593 li a1,44 + c00235d0: 1088 addi a0,sp,96 + c00235d2: 141240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30878 dbuf_putc(bc, OP_rot3l); - c0023406: 45f5 li a1,29 - c0023408: 1088 addi a0,sp,96 - c002340a: 139240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30872 + c00235d6: 45f5 li a1,29 + c00235d8: 1088 addi a0,sp,96 + c00235da: 139240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30880 dbuf_putc(bc, OP_call_method); - c002340e: 02400593 li a1,36 - c0023412: 1088 addi a0,sp,96 - c0023414: 12f240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30873 + c00235de: 02400593 li a1,36 + c00235e2: 1088 addi a0,sp,96 + c00235e4: 12f240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30881 dbuf_put_u16(bc, 1); - c0023418: 4585 li a1,1 - c002341a: 1088 addi a0,sp,96 - c002341c: ed7e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30874 - dbuf_putc(bc, OP_drop); - c0023420: 45b9 li a1,14 - c0023422: b5f9 j c00232f0 + c00235e8: 4585 li a1,1 + c00235ea: 1088 addi a0,sp,96 + c00235ec: df5e10ef jal ra,c00053e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30882 + dbuf_putc(bc, OP_drop); + c00235f0: 45b9 li a1,14 + c00235f2: b5f9 j c00234c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30890 get_loc_or_ref(bc, is_ref, idx); - c0023424: 55d2 lw a1,52(sp) - c0023426: 1088 addi a0,sp,96 - c0023428: eebe10ef jal ra,c0005312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30883 + c00235f4: 55d2 lw a1,52(sp) + c00235f6: 1088 addi a0,sp,96 + c00235f8: e09e10ef jal ra,c0005400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30891 dbuf_putc(bc, OP_private_in); - c002342c: 0b200593 li a1,178 - c0023430: b5c1 j c00232f0 + c00235fc: 0b200593 li a1,178 + c0023600: b5c1 j c00234c0 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31604 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31612 s->jump_size++; - c0023432: 1b042783 lw a5,432(s0) - c0023436: 2785 addiw a5,a5,1 - c0023438: 1af42823 sw a5,432(s0) + c0023602: 1b042783 lw a5,432(s0) + c0023606: 2785 addiw a5,a5,1 + c0023608: 1af42823 sw a5,432(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002343c: 002d4703 lbu a4,2(s10) - c0023440: 001d4783 lbu a5,1(s10) - c0023444: 0722 slli a4,a4,0x8 - c0023446: 8f5d or a4,a4,a5 - c0023448: 003d4783 lbu a5,3(s10) - c002344c: 07c2 slli a5,a5,0x10 - c002344e: 8f5d or a4,a4,a5 - c0023450: 004d4783 lbu a5,4(s10) - c0023454: 07e2 slli a5,a5,0x18 - c0023456: 8fd9 or a5,a5,a4 + c002360c: 002d4703 lbu a4,2(s10) + c0023610: 001d4783 lbu a5,1(s10) + c0023614: 0722 slli a4,a4,0x8 + c0023616: 8f5d or a4,a4,a5 + c0023618: 003d4783 lbu a5,3(s10) + c002361c: 07c2 slli a5,a5,0x10 + c002361e: 8f5d or a4,a4,a5 + c0023620: 004d4783 lbu a5,4(s10) + c0023624: 07e2 slli a5,a5,0x18 + c0023626: 8fd9 or a5,a5,a4 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31618 label = get_u32(bc_buf + pos + 1); - c0023458: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31611 + c0023628: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31619 assert(label >= 0 && label < s->label_count); - c002345a: 0007c663 bltz a5,c0023466 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31611 (discriminator 2) - c002345e: 17c42703 lw a4,380(s0) - c0023462: 00e7c763 blt a5,a4,c0023470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31611 (discriminator 3) - c0023466: 65a1 lui a1,0x8 - c0023468: 4601 li a2,0 - c002346a: b7b58593 addi a1,a1,-1157 # 7b7b <__clzdi2-0xbfff8485> - c002346e: b50d j c0023290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31612 (discriminator 4) + c002362a: 0007c663 bltz a5,c0023636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31619 (discriminator 2) + c002362e: 17c42703 lw a4,380(s0) + c0023632: 00e7c763 blt a5,a4,c0023640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31619 (discriminator 3) + c0023636: 65a1 lui a1,0x8 + c0023638: 4601 li a2,0 + c002363a: b8358593 addi a1,a1,-1149 # 7b83 <__clzdi2-0xbfff847d> + c002363e: b50d j c0023460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31620 (discriminator 4) ls = &s->label_slots[label]; - c0023470: 4761 li a4,24 - c0023472: 02e787b3 mul a5,a5,a4 - c0023476: 17043a83 ld s5,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31613 (discriminator 4) + c0023640: 4761 li a4,24 + c0023642: 02e787b3 mul a5,a5,a4 + c0023646: 17043a83 ld s5,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31621 (discriminator 4) if (code_match(&cc, ls->pos, OP_ret, -1)) { - c002347a: 56fd li a3,-1 - c002347c: 06f00613 li a2,111 - c0023480: 1828 addi a0,sp,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31612 (discriminator 4) + c002364a: 56fd li a3,-1 + c002364c: 06f00613 li a2,111 + c0023650: 1828 addi a0,sp,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31620 (discriminator 4) ls = &s->label_slots[label]; - c0023482: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31613 (discriminator 4) + c0023652: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31621 (discriminator 4) if (code_match(&cc, ls->pos, OP_ret, -1)) { - c0023484: 004aa583 lw a1,4(s5) - c0023488: bede10ef jal ra,c0005074 - c002348c: ba0504e3 beqz a0,c0023034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31614 + c0023654: 004aa583 lw a1,4(s5) + c0023658: a1de10ef jal ra,c0005074 + c002365c: ba0504e3 beqz a0,c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31622 ls->ref_count--; - c0023490: 000aa783 lw a5,0(s5) - c0023494: 37fd addiw a5,a5,-1 - c0023496: 00faa023 sw a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31615 + c0023660: 000aa783 lw a5,0(s5) + c0023664: 37fd addiw a5,a5,-1 + c0023666: 00faa023 sw a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31623 break; - c002349a: b941 j c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31645 + c002366a: b941 j c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31653 if (code_match(&cc, pos_next, M2(OP_put_array_el, OP_put_ref_value), OP_drop, -1)) { - c002349c: 6611 lui a2,0x4 - c002349e: 577d li a4,-1 - c00234a0: 46b9 li a3,14 - c00234a2: d4960613 addi a2,a2,-695 # 3d49 <__clzdi2-0xbfffc2b7> - c00234a6: 85ca mv a1,s2 - c00234a8: 1828 addi a0,sp,56 - c00234aa: bcbe10ef jal ra,c0005074 - c00234ae: b80503e3 beqz a0,c0023034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31646 + c002366c: 6611 lui a2,0x4 + c002366e: 577d li a4,-1 + c0023670: 46b9 li a3,14 + c0023672: d4960613 addi a2,a2,-695 # 3d49 <__clzdi2-0xbfffc2b7> + c0023676: 85ca mv a1,s2 + c0023678: 1828 addi a0,sp,56 + c002367a: 9fbe10ef jal ra,c0005074 + c002367e: b80503e3 beqz a0,c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31654 dbuf_putc(&bc_out, cc.op); - c00234b2: 04c14583 lbu a1,76(sp) - c00234b6: 1088 addi a0,sp,96 - c00234b8: 08b240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31648 + c0023682: 04c14583 lbu a1,76(sp) + c0023686: 1088 addi a0,sp,96 + c0023688: 08b240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31656 if (cc.line_num != -1 && cc.line_num != line_num) { - c00234bc: 49a6 lw s3,72(sp) - c00234be: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31647 + c002368c: 49a6 lw s3,72(sp) + c002368e: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31655 pos_next = cc.pos; - c00234c0: 4916 lw s2,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31648 + c0023690: 4916 lw s2,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31656 if (cc.line_num != -1 && cc.line_num != line_num) { - c00234c2: c6f984e3 beq s3,a5,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31648 (discriminator 1) - c00234c6: 03498063 beq s3,s4,c00234e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31677 + c0023692: c6f984e3 beq s3,a5,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31656 (discriminator 1) + c0023696: 03498063 beq s3,s4,c00236b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31685 s->line_number_size++; - c00234ca: 1c042783 lw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31678 + c002369a: 1c042783 lw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31686 dbuf_putc(&bc_out, OP_line_num); - c00234ce: 0c600593 li a1,198 - c00234d2: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31677 + c002369e: 0c600593 li a1,198 + c00236a2: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31685 s->line_number_size++; - c00234d4: 2785 addiw a5,a5,1 - c00234d6: 1cf42023 sw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31678 + c00236a4: 2785 addiw a5,a5,1 + c00236a6: 1cf42023 sw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31686 dbuf_putc(&bc_out, OP_line_num); - c00234da: 069240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31679 + c00236aa: 069240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31687 dbuf_put_u32(&bc_out, line_num); - c00234de: 85ce mv a1,s3 - c00234e0: 1088 addi a0,sp,96 - c00234e2: f47e10ef jal ra,c0005428 - c00234e6: 8a4e mv s4,s3 - c00234e8: b189 j c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31660 + c00236ae: 85ce mv a1,s3 + c00236b0: 1088 addi a0,sp,96 + c00236b2: e65e10ef jal ra,c0005516 + c00236b6: 8a4e mv s4,s3 + c00236b8: b189 j c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31668 s->jump_size++; - c00234ea: 1b042783 lw a5,432(s0) - c00234ee: 2785 addiw a5,a5,1 - c00234f0: 1af42823 sw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31671 + c00236ba: 1b042783 lw a5,432(s0) + c00236be: 2785 addiw a5,a5,1 + c00236c0: 1af42823 sw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31679 int line = -1; - c00234f4: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31672 + c00236c4: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31680 dbuf_put(&bc_out, bc_buf + pos, len); - c00234f6: 864e mv a2,s3 - c00234f8: 85ea mv a1,s10 - c00234fa: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31671 + c00236c6: 864e mv a2,s3 + c00236c8: 85ea mv a1,s10 + c00236ca: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31679 int line = -1; - c00234fc: da3e sw a5,52(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31672 + c00236cc: da3e sw a5,52(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31680 dbuf_put(&bc_out, bc_buf + pos, len); - c00234fe: 7b2240ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31673 + c00236ce: 7b2240ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31681 pos = skip_dead_code(s, bc_buf, bc_len, pos + len, &line); - c0023502: 86ca mv a3,s2 - c0023504: 1858 addi a4,sp,52 - c0023506: 8662 mv a2,s8 - c0023508: 85de mv a1,s7 - c002350a: 8522 mv a0,s0 - c002350c: b36e40ef jal ra,c0007842 - c0023510: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31675 + c00236d2: 86ca mv a3,s2 + c00236d4: 1858 addi a4,sp,52 + c00236d6: 8662 mv a2,s8 + c00236d8: 85de mv a1,s7 + c00236da: 8522 mv a0,s0 + c00236dc: a54e40ef jal ra,c0007930 + c00236e0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31683 if (pos < bc_len && line >= 0 && line_num != line) { - c0023512: c1855ce3 bge a0,s8,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31675 (discriminator 1) - c0023516: 59d2 lw s3,52(sp) - c0023518: c009c9e3 bltz s3,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31675 (discriminator 2) - c002351c: c14987e3 beq s3,s4,c002312a - c0023520: b76d j c00234ca + c00236e2: c1855ce3 bge a0,s8,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31683 (discriminator 1) + c00236e6: 59d2 lw s3,52(sp) + c00236e8: c009c9e3 bltz s3,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31683 (discriminator 2) + c00236ec: c14987e3 beq s3,s4,c00232fa + c00236f0: b76d j c002369a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023522: 002d4703 lbu a4,2(s10) - c0023526: 001d4783 lbu a5,1(s10) - c002352a: 0722 slli a4,a4,0x8 - c002352c: 8f5d or a4,a4,a5 - c002352e: 003d4783 lbu a5,3(s10) - c0023532: 07c2 slli a5,a5,0x10 - c0023534: 8f5d or a4,a4,a5 - c0023536: 004d4783 lbu a5,4(s10) - c002353a: 07e2 slli a5,a5,0x18 - c002353c: 8fd9 or a5,a5,a4 + c00236f2: 002d4703 lbu a4,2(s10) + c00236f6: 001d4783 lbu a5,1(s10) + c00236fa: 0722 slli a4,a4,0x8 + c00236fc: 8f5d or a4,a4,a5 + c00236fe: 003d4783 lbu a5,3(s10) + c0023702: 07c2 slli a5,a5,0x10 + c0023704: 8f5d or a4,a4,a5 + c0023706: 004d4783 lbu a5,4(s10) + c002370a: 07e2 slli a5,a5,0x18 + c002370c: 8fd9 or a5,a5,a4 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31698 label = get_u32(bc_buf + pos + 1); - c002353e: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31691 + c002370e: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31699 assert(label >= 0 && label < s->label_count); - c0023540: 0007c663 bltz a5,c002354c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31691 (discriminator 2) - c0023544: 17c42703 lw a4,380(s0) - c0023548: 00e7c763 blt a5,a4,c0023556 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31691 (discriminator 3) - c002354c: 65a1 lui a1,0x8 - c002354e: 4601 li a2,0 - c0023550: bcb58593 addi a1,a1,-1077 # 7bcb <__clzdi2-0xbfff8435> - c0023554: bb35 j c0023290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31693 (discriminator 4) + c0023710: 0007c663 bltz a5,c002371c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31699 (discriminator 2) + c0023714: 17c42703 lw a4,380(s0) + c0023718: 00e7c763 blt a5,a4,c0023726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31699 (discriminator 3) + c002371c: 65a1 lui a1,0x8 + c002371e: 4601 li a2,0 + c0023720: bd358593 addi a1,a1,-1069 # 7bd3 <__clzdi2-0xbfff842d> + c0023724: bb35 j c0023460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31701 (discriminator 4) ls->pos2 = bc_out.size + opcode_info[op].size; - c0023556: 46e1 li a3,24 - c0023558: 02d787b3 mul a5,a5,a3 - c002355c: 17043703 ld a4,368(s0) - c0023560: 97ba add a5,a5,a4 - c0023562: 7726 ld a4,104(sp) - c0023564: 0137073b addw a4,a4,s3 - c0023568: c798 sw a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31695 (discriminator 4) + c0023726: 46e1 li a3,24 + c0023728: 02d787b3 mul a5,a5,a3 + c002372c: 17043703 ld a4,368(s0) + c0023730: 97ba add a5,a5,a4 + c0023732: 7726 ld a4,104(sp) + c0023734: 0137073b addw a4,a4,s3 + c0023738: c798 sw a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31703 (discriminator 4) goto no_change; - c002356a: b4e9 j c0023034 + c002373a: b4e9 j c0023204 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002356c: 002d4783 lbu a5,2(s10) - c0023570: 001d4703 lbu a4,1(s10) - c0023574: 07a2 slli a5,a5,0x8 - c0023576: 00e7e6b3 or a3,a5,a4 + c002373c: 002d4783 lbu a5,2(s10) + c0023740: 001d4703 lbu a4,1(s10) + c0023744: 07a2 slli a5,a5,0x8 + c0023746: 00e7e6b3 or a3,a5,a4 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31701 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31709 if (scope == s->body_scope) { - c002357a: 11842783 lw a5,280(s0) + c002374a: 11842783 lw a5,280(s0) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c002357e: f036 sd a3,32(sp) + c002374e: f036 sd a3,32(sp) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31707 int scope_idx, scope = get_u16(bc_buf + pos + 1); - c0023580: ec36 sd a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31701 + c0023750: ec36 sd a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31709 if (scope == s->body_scope) { - c0023582: 0ed79863 bne a5,a3,c0023672 + c0023752: 0ed79863 bne a5,a3,c0023842 instantiate_hoisted_definitions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31279 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31287 for(i = 0; i < s->arg_count; i++) { - c0023586: 4981 li s3,0 - c0023588: a081 j c00235c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31280 + c0023756: 4981 li s3,0 + c0023758: a081 j c0023798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31288 JSVarDef *vd = &s->args[i]; - c002358a: 705c ld a5,160(s0) - c002358c: 00499a93 slli s5,s3,0x4 - c0023590: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31281 + c002375a: 705c ld a5,160(s0) + c002375c: 00499a93 slli s5,s3,0x4 + c0023760: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31289 if (vd->func_pool_idx >= 0) { - c0023592: 00caa783 lw a5,12(s5) - c0023596: 0207c863 bltz a5,c00235c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31282 + c0023762: 00caa783 lw a5,12(s5) + c0023766: 0207c863 bltz a5,c0023796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31290 dbuf_putc(bc, OP_fclosure); - c002359a: 458d li a1,3 - c002359c: 1088 addi a0,sp,96 - c002359e: 7a4240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31283 + c002376a: 458d li a1,3 + c002376c: 1088 addi a0,sp,96 + c002376e: 7a4240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31291 dbuf_put_u32(bc, vd->func_pool_idx); - c00235a2: 00caa583 lw a1,12(s5) - c00235a6: 1088 addi a0,sp,96 - c00235a8: 4085d59b sraiw a1,a1,0x8 - c00235ac: e7de10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31284 + c0023772: 00caa583 lw a1,12(s5) + c0023776: 1088 addi a0,sp,96 + c0023778: 4085d59b sraiw a1,a1,0x8 + c002377c: d9be10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31292 dbuf_putc(bc, OP_put_arg); - c00235b0: 05c00593 li a1,92 - c00235b4: 1088 addi a0,sp,96 - c00235b6: 78c240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31285 + c0023780: 05c00593 li a1,92 + c0023784: 1088 addi a0,sp,96 + c0023786: 78c240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31293 dbuf_put_u16(bc, i); - c00235ba: 03099593 slli a1,s3,0x30 - c00235be: 91c1 srli a1,a1,0x30 - c00235c0: 1088 addi a0,sp,96 - c00235c2: d31e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31279 + c002378a: 03099593 slli a1,s3,0x30 + c002378e: 91c1 srli a1,a1,0x30 + c0023790: 1088 addi a0,sp,96 + c0023792: c4fe10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31287 for(i = 0; i < s->arg_count; i++) { - c00235c6: 2985 addiw s3,s3,1 - c00235c8: 0ac42783 lw a5,172(s0) - c00235cc: faf9cfe3 blt s3,a5,c002358a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31288 + c0023796: 2985 addiw s3,s3,1 + c0023798: 0ac42783 lw a5,172(s0) + c002379c: faf9cfe3 blt s3,a5,c002375a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31296 for(i = 0; i < s->var_count; i++) { - c00235d0: 4981 li s3,0 - c00235d2: 09c42783 lw a5,156(s0) - c00235d6: 10f9c763 blt s3,a5,c00236e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31301 + c00237a0: 4981 li s3,0 + c00237a2: 09c42783 lw a5,156(s0) + c00237a6: 10f9c763 blt s3,a5,c00238b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31309 if (s->module) { - c00235da: 21843783 ld a5,536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31276 + c00237aa: 21843783 ld a5,536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31284 int i, idx, label_next = -1; - c00235de: 5afd li s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31301 + c00237ae: 5afd li s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31309 if (s->module) { - c00235e0: cf95 beqz a5,c002361c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31302 + c00237b0: cf95 beqz a5,c00237ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31310 label_next = new_label_fd(s, -1); - c00235e2: 55fd li a1,-1 - c00235e4: 8522 mv a0,s0 - c00235e6: e70f40ef jal ra,c0017c56 - c00235ea: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31305 + c00237b2: 55fd li a1,-1 + c00237b4: 8522 mv a0,s0 + c00237b6: e70f40ef jal ra,c0017e26 + c00237ba: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31313 dbuf_putc(bc, OP_push_this); - c00235ec: 45a1 li a1,8 - c00235ee: 1088 addi a0,sp,96 - c00235f0: 752240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31306 + c00237bc: 45a1 li a1,8 + c00237be: 1088 addi a0,sp,96 + c00237c0: 752240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31314 dbuf_putc(bc, OP_if_false); - c00235f4: 06a00593 li a1,106 - c00235f8: 1088 addi a0,sp,96 - c00235fa: 748240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31307 + c00237c4: 06a00593 li a1,106 + c00237c8: 1088 addi a0,sp,96 + c00237ca: 748240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31315 dbuf_put_u32(bc, label_next); - c00235fe: 000a859b sext.w a1,s5 - c0023602: 1088 addi a0,sp,96 - c0023604: e25e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31308 + c00237ce: 000a859b sext.w a1,s5 + c00237d2: 1088 addi a0,sp,96 + c00237d4: d43e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31316 update_label(s, label_next, 1); - c0023608: 4605 li a2,1 - c002360a: 85d6 mv a1,s5 - c002360c: 8522 mv a0,s0 - c002360e: c84e20ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31309 + c00237d8: 4605 li a2,1 + c00237da: 85d6 mv a1,s5 + c00237dc: 8522 mv a0,s0 + c00237de: ba2e20ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31317 s->jump_size++; - c0023612: 1b042783 lw a5,432(s0) - c0023616: 2785 addiw a5,a5,1 - c0023618: 1af42823 sw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31314 + c00237e2: 1b042783 lw a5,432(s0) + c00237e6: 2785 addiw a5,a5,1 + c00237e8: 1af42823 sw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31322 for(i = 0; i < s->global_var_count; i++) { - c002361c: 4c81 li s9,0 - c002361e: 11c42783 lw a5,284(s0) - c0023622: 10fcc463 blt s9,a5,c002372a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31394 + c00237ec: 4c81 li s9,0 + c00237ee: 11c42783 lw a5,284(s0) + c00237f2: 10fcc463 blt s9,a5,c00238fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31402 if (s->module) { - c0023626: 21843783 ld a5,536(s0) - c002362a: cb8d beqz a5,c002365c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31395 + c00237f6: 21843783 ld a5,536(s0) + c00237fa: cb8d beqz a5,c002382c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31403 dbuf_putc(bc, OP_return_undef); - c002362c: 02900593 li a1,41 - c0023630: 1088 addi a0,sp,96 - c0023632: 710240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31397 + c00237fc: 02900593 li a1,41 + c0023800: 1088 addi a0,sp,96 + c0023802: 710240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31405 dbuf_putc(bc, OP_label); - c0023636: 0b600593 li a1,182 - c002363a: 1088 addi a0,sp,96 - c002363c: 706240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31398 + c0023806: 0b600593 li a1,182 + c002380a: 1088 addi a0,sp,96 + c002380c: 706240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31406 dbuf_put_u32(bc, label_next); - c0023640: 000a859b sext.w a1,s5 - c0023644: 1088 addi a0,sp,96 - c0023646: de3e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31399 + c0023810: 000a859b sext.w a1,s5 + c0023814: 1088 addi a0,sp,96 + c0023816: d01e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31407 s->label_slots[label_next].pos2 = bc->size; - c002364a: 4561 li a0,24 - c002364c: 02aa8ab3 mul s5,s5,a0 - c0023650: 17043783 ld a5,368(s0) - c0023654: 9abe add s5,s5,a5 - c0023656: 77a6 ld a5,104(sp) - c0023658: 00faa423 sw a5,8(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31402 + c002381a: 4561 li a0,24 + c002381c: 02aa8ab3 mul s5,s5,a0 + c0023820: 17043783 ld a5,368(s0) + c0023824: 9abe add s5,s5,a5 + c0023826: 77a6 ld a5,104(sp) + c0023828: 00faa423 sw a5,8(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31410 js_free(ctx, s->global_vars); - c002365c: 12843583 ld a1,296(s0) - c0023660: 8526 mv a0,s1 - c0023662: fd8e30ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31403 + c002382c: 12843583 ld a1,296(s0) + c0023830: 8526 mv a0,s1 + c0023832: ef6e30ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31411 s->global_vars = NULL; - c0023666: 12043423 sd zero,296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31404 + c0023836: 12043423 sd zero,296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31412 s->global_var_count = 0; - c002366a: 10042e23 sw zero,284(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31405 + c002383a: 10042e23 sw zero,284(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31413 s->global_var_size = 0; - c002366e: 12042023 sw zero,288(s0) + c002383e: 12042023 sw zero,288(s0) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31705 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31713 for(scope_idx = s->scopes[scope].first; scope_idx >= 0;) { - c0023672: 7702 ld a4,32(sp) - c0023674: 787c ld a5,240(s0) - c0023676: 070e slli a4,a4,0x3 - c0023678: 97ba add a5,a5,a4 - c002367a: 0047a983 lw s3,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31705 (discriminator 1) - c002367e: aa09c6e3 bltz s3,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31706 + c0023842: 7702 ld a4,32(sp) + c0023844: 787c ld a5,240(s0) + c0023846: 070e slli a4,a4,0x3 + c0023848: 97ba add a5,a5,a4 + c002384a: 0047a983 lw s3,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31713 (discriminator 1) + c002384e: aa09c6e3 bltz s3,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31714 JSVarDef *vd = &s->vars[scope_idx]; - c0023682: 685c ld a5,144(s0) - c0023684: 00499a93 slli s5,s3,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31707 + c0023852: 685c ld a5,144(s0) + c0023854: 00499a93 slli s5,s3,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31715 if (vd->scope_level == scope) { - c0023688: 6762 ld a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31706 + c0023858: 6762 ld a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31714 JSVarDef *vd = &s->vars[scope_idx]; - c002368a: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31707 + c002385a: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31715 if (vd->scope_level == scope) { - c002368c: 004aa783 lw a5,4(s5) - c0023690: a8e79de3 bne a5,a4,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31708 + c002385c: 004aa783 lw a5,4(s5) + c0023860: a8e79de3 bne a5,a4,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31716 if (scope_idx != s->arguments_arg_idx) { - c0023694: 0c042783 lw a5,192(s0) - c0023698: 05378363 beq a5,s3,c00236de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31709 + c0023864: 0c042783 lw a5,192(s0) + c0023868: 05378363 beq a5,s3,c00238ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31717 if (vd->var_kind == JS_VAR_FUNCTION_DECL || - c002369c: 00caa783 lw a5,12(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31715 + c002386c: 00caa783 lw a5,12(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31723 dbuf_put_u16(&bc_out, scope_idx); - c00236a0: 19c2 slli s3,s3,0x30 - c00236a2: 0309d993 srli s3,s3,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31709 + c0023870: 19c2 slli s3,s3,0x30 + c0023872: 0309d993 srli s3,s3,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31717 if (vd->var_kind == JS_VAR_FUNCTION_DECL || - c00236a6: 0f07f793 andi a5,a5,240 - c00236aa: 37c1 addiw a5,a5,-16 - c00236ac: 9bbd andi a5,a5,-17 - c00236ae: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31719 + c0023876: 0f07f793 andi a5,a5,240 + c002387a: 37c1 addiw a5,a5,-16 + c002387c: 9bbd andi a5,a5,-17 + c002387e: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31727 dbuf_putc(&bc_out, OP_set_loc_uninitialized); - c00236b0: 06100593 li a1,97 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31709 + c0023880: 06100593 li a1,97 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31717 if (vd->var_kind == JS_VAR_FUNCTION_DECL || - c00236b4: ef91 bnez a5,c00236d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31712 + c0023884: ef91 bnez a5,c00238a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31720 dbuf_putc(&bc_out, OP_fclosure); - c00236b6: 458d li a1,3 - c00236b8: 1088 addi a0,sp,96 - c00236ba: 688240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31713 + c0023886: 458d li a1,3 + c0023888: 1088 addi a0,sp,96 + c002388a: 688240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31721 dbuf_put_u32(&bc_out, vd->func_pool_idx); - c00236be: 00caa583 lw a1,12(s5) - c00236c2: 1088 addi a0,sp,96 - c00236c4: 4085d59b sraiw a1,a1,0x8 - c00236c8: d61e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31714 + c002388e: 00caa583 lw a1,12(s5) + c0023892: 1088 addi a0,sp,96 + c0023894: 4085d59b sraiw a1,a1,0x8 + c0023898: c7fe10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31722 dbuf_putc(&bc_out, OP_put_loc); - c00236cc: 05900593 li a1,89 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31719 + c002389c: 05900593 li a1,89 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31727 dbuf_putc(&bc_out, OP_set_loc_uninitialized); - c00236d0: 1088 addi a0,sp,96 - c00236d2: 670240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31720 + c00238a0: 1088 addi a0,sp,96 + c00238a2: 670240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31728 dbuf_put_u16(&bc_out, scope_idx); - c00236d6: 85ce mv a1,s3 - c00236d8: 1088 addi a0,sp,96 - c00236da: c19e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31723 + c00238a6: 85ce mv a1,s3 + c00238a8: 1088 addi a0,sp,96 + c00238aa: b37e10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31731 scope_idx = vd->scope_next; - c00236de: 008aa983 lw s3,8(s5) - c00236e2: bf71 j c002367e + c00238ae: 008aa983 lw s3,8(s5) + c00238b2: bf71 j c002384e instantiate_hoisted_definitions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31289 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31297 JSVarDef *vd = &s->vars[i]; - c00236e4: 685c ld a5,144(s0) - c00236e6: 00499a93 slli s5,s3,0x4 - c00236ea: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31290 + c00238b4: 685c ld a5,144(s0) + c00238b6: 00499a93 slli s5,s3,0x4 + c00238ba: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31298 if (vd->scope_level == 0 && vd->func_pool_idx >= 0) { - c00236ec: 004aa783 lw a5,4(s5) - c00236f0: eb9d bnez a5,c0023726 - c00236f2: 00caa783 lw a5,12(s5) - c00236f6: 0207c863 bltz a5,c0023726 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31291 + c00238bc: 004aa783 lw a5,4(s5) + c00238c0: eb9d bnez a5,c00238f6 + c00238c2: 00caa783 lw a5,12(s5) + c00238c6: 0207c863 bltz a5,c00238f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31299 dbuf_putc(bc, OP_fclosure); - c00236fa: 458d li a1,3 - c00236fc: 1088 addi a0,sp,96 - c00236fe: 644240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31292 + c00238ca: 458d li a1,3 + c00238cc: 1088 addi a0,sp,96 + c00238ce: 644240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31300 dbuf_put_u32(bc, vd->func_pool_idx); - c0023702: 00caa583 lw a1,12(s5) - c0023706: 1088 addi a0,sp,96 - c0023708: 4085d59b sraiw a1,a1,0x8 - c002370c: d1de10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31293 + c00238d2: 00caa583 lw a1,12(s5) + c00238d6: 1088 addi a0,sp,96 + c00238d8: 4085d59b sraiw a1,a1,0x8 + c00238dc: c3be10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31301 dbuf_putc(bc, OP_put_loc); - c0023710: 05900593 li a1,89 - c0023714: 1088 addi a0,sp,96 - c0023716: 62c240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31294 + c00238e0: 05900593 li a1,89 + c00238e4: 1088 addi a0,sp,96 + c00238e6: 62c240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31302 dbuf_put_u16(bc, i); - c002371a: 03099593 slli a1,s3,0x30 - c002371e: 91c1 srli a1,a1,0x30 - c0023720: 1088 addi a0,sp,96 - c0023722: bd1e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31288 + c00238ea: 03099593 slli a1,s3,0x30 + c00238ee: 91c1 srli a1,a1,0x30 + c00238f0: 1088 addi a0,sp,96 + c00238f2: aefe10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31296 for(i = 0; i < s->var_count; i++) { - c0023726: 2985 addiw s3,s3,1 - c0023728: b56d j c00235d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31315 + c00238f6: 2985 addiw s3,s3,1 + c00238f8: b56d j c00237a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31323 JSGlobalVar *hf = &s->global_vars[i]; - c002372a: 12843783 ld a5,296(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31322 + c00238fa: 12843783 ld a5,296(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31330 for(idx = 0; idx < s->closure_var_count; idx++) { - c002372e: 19842703 lw a4,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31315 + c00238fe: 19842703 lw a4,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31323 JSGlobalVar *hf = &s->global_vars[i]; - c0023732: 004c9993 slli s3,s9,0x4 - c0023736: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31322 + c0023902: 004c9993 slli s3,s9,0x4 + c0023906: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31330 for(idx = 0; idx < s->closure_var_count; idx++) { - c0023738: 4b01 li s6,0 - c002373a: 000b079b sext.w a5,s6 - c002373e: 04e7cf63 blt a5,a4,c002379c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31342 + c0023908: 4b01 li s6,0 + c002390a: 000b079b sext.w a5,s6 + c002390e: 04e7cf63 blt a5,a4,c002396c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31350 if (s->eval_type != JS_EVAL_TYPE_GLOBAL) - c0023742: 03c42d03 lw s10,60(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31344 + c0023912: 03c42d03 lw s10,60(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31352 if (hf->cpool_idx >= 0 && !hf->is_lexical) { - c0023746: 0049c783 lbu a5,4(s3) - c002374a: 0009a683 lw a3,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31342 + c0023916: 0049c783 lbu a5,4(s3) + c002391a: 0009a683 lw a3,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31350 if (s->eval_type != JS_EVAL_TYPE_GLOBAL) - c002374e: 01a03633 snez a2,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31341 + c002391e: 01a03633 snez a2,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31349 flags = 0; - c0023752: 8d32 mv s10,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31344 + c0023922: 8d32 mv s10,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31352 if (hf->cpool_idx >= 0 && !hf->is_lexical) { - c0023754: 0027f713 andi a4,a5,2 - c0023758: 0806df63 bgez a3,c00237f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31355 + c0023924: 0027f713 andi a4,a5,2 + c0023928: 0806df63 bgez a3,c00239c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31363 if (hf->is_lexical) { - c002375c: c711 beqz a4,c0023768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31357 + c002392c: c711 beqz a4,c0023938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31365 if (!hf->is_const) - c002375e: 8b91 andi a5,a5,4 - c0023760: 0c078b63 beqz a5,c0023836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31356 + c002392e: 8b91 andi a5,a5,4 + c0023930: 0c078b63 beqz a5,c0023a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31364 flags |= DEFINE_GLOBAL_LEX_VAR; - c0023764: 080d6d13 ori s10,s10,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31317 + c0023934: 080d6d13 ori s10,s10,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31325 BOOL force_init = hf->force_init; - c0023768: 0049a783 lw a5,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31360 + c0023938: 0049a783 lw a5,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31368 dbuf_putc(bc, OP_define_var); - c002376c: 03e00593 li a1,62 - c0023770: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31317 + c002393c: 03e00593 li a1,62 + c0023940: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31325 BOOL force_init = hf->force_init; - c0023772: 0017fd93 andi s11,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31360 + c0023942: 0017fd93 andi s11,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31368 dbuf_putc(bc, OP_define_var); - c0023776: 5cc240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31361 + c0023946: 5cc240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31369 dbuf_put_u32(bc, JS_DupAtom(ctx, hf->var_name)); - c002377a: 00c9a583 lw a1,12(s3) - c002377e: 8526 mv a0,s1 - c0023780: d4be30ef jal ra,c00074ca - c0023784: 0005059b sext.w a1,a0 - c0023788: 1088 addi a0,sp,96 - c002378a: c9fe10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31362 + c002394a: 00c9a583 lw a1,12(s3) + c002394e: 8526 mv a0,s1 + c0023950: c69e30ef jal ra,c00075b8 + c0023954: 0005059b sext.w a1,a0 + c0023958: 1088 addi a0,sp,96 + c002395a: bbde10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31370 dbuf_putc(bc, flags); - c002378e: 0ffd7593 zext.b a1,s10 - c0023792: 1088 addi a0,sp,96 - c0023794: 5ae240ef jal ra,c0047d42 - c0023798: 4d01 li s10,0 - c002379a: a83d j c00237d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31324 + c002395e: 0ffd7593 zext.b a1,s10 + c0023962: 1088 addi a0,sp,96 + c0023964: 5ae240ef jal ra,c0047f12 + c0023968: 4d01 li s10,0 + c002396a: a83d j c00239a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31332 if (cv->var_name == hf->var_name) { - c002379c: 1a043783 ld a5,416(s0) - c00237a0: 003b1693 slli a3,s6,0x3 - c00237a4: 97b6 add a5,a5,a3 - c00237a6: 43dc lw a5,4(a5) - c00237a8: 00c9a683 lw a3,12(s3) - c00237ac: 08f68863 beq a3,a5,c002383c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31329 + c002396c: 1a043783 ld a5,416(s0) + c0023970: 003b1693 slli a3,s6,0x3 + c0023974: 97b6 add a5,a5,a3 + c0023976: 43dc lw a5,4(a5) + c0023978: 00c9a683 lw a3,12(s3) + c002397c: 08f68863 beq a3,a5,c0023a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31337 if (cv->var_name == JS_ATOM__var_ || - c00237b0: fad7879b addiw a5,a5,-83 - c00237b4: 4605 li a2,1 - c00237b6: 001b0693 addi a3,s6,1 - c00237ba: 02f66c63 bltu a2,a5,c00237f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31331 + c0023980: fad7879b addiw a5,a5,-83 + c0023984: 4605 li a2,1 + c0023986: 001b0693 addi a3,s6,1 + c002398a: 02f66c63 bltu a2,a5,c00239c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31339 dbuf_putc(bc, OP_get_var_ref); - c00237be: 05e00593 li a1,94 - c00237c2: 1088 addi a0,sp,96 - c00237c4: 57e240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31332 + c002398e: 05e00593 li a1,94 + c0023992: 1088 addi a0,sp,96 + c0023994: 57e240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31340 dbuf_put_u16(bc, idx); - c00237c8: 030b1593 slli a1,s6,0x30 - c00237cc: 91c1 srli a1,a1,0x30 - c00237ce: 1088 addi a0,sp,96 - c00237d0: b23e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31334 + c0023998: 030b1593 slli a1,s6,0x30 + c002399c: 91c1 srli a1,a1,0x30 + c002399e: 1088 addi a0,sp,96 + c00239a0: a41e10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31342 force_init = TRUE; - c00237d4: 4d85 li s11,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31333 + c00239a4: 4d85 li s11,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31341 has_closure = 1; - c00237d6: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31365 + c00239a6: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31373 if (hf->cpool_idx >= 0 || force_init) { - c00237d8: 0009a703 lw a4,0(s3) - c00237dc: 06075363 bgez a4,c0023842 - c00237e0: 0a0d9863 bnez s11,c0023890 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31391 + c00239a8: 0009a703 lw a4,0(s3) + c00239ac: 06075363 bgez a4,c0023a12 + c00239b0: 0a0d9863 bnez s11,c0023a60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31399 JS_FreeAtom(ctx, hf->var_name); - c00237e4: 00c9a583 lw a1,12(s3) - c00237e8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31314 + c00239b4: 00c9a583 lw a1,12(s3) + c00239b8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31322 for(i = 0; i < s->global_var_count; i++) { - c00237ea: 2c85 addiw s9,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31391 + c00239ba: 2c85 addiw s9,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31399 JS_FreeAtom(ctx, hf->var_name); - c00237ec: d21e30ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31314 + c00239bc: c3fe30ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31322 for(i = 0; i < s->global_var_count; i++) { - c00237f0: b53d j c002361e - c00237f2: 8b36 mv s6,a3 - c00237f4: b799 j c002373a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31344 + c00239c0: b53d j c00237ee + c00239c2: 8b36 mv s6,a3 + c00239c4: b799 j c002390a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31352 if (hf->cpool_idx >= 0 && !hf->is_lexical) { - c00237f6: f725 bnez a4,c002375e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31346 + c00239c6: f725 bnez a4,c002392e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31354 dbuf_putc(bc, OP_fclosure); - c00237f8: 458d li a1,3 - c00237fa: 1088 addi a0,sp,96 - c00237fc: f432 sd a2,40(sp) - c00237fe: 544240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31347 + c00239c8: 458d li a1,3 + c00239ca: 1088 addi a0,sp,96 + c00239cc: f432 sd a2,40(sp) + c00239ce: 544240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31355 dbuf_put_u32(bc, hf->cpool_idx); - c0023802: 0009a583 lw a1,0(s3) - c0023806: 1088 addi a0,sp,96 - c0023808: c21e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31349 + c00239d2: 0009a583 lw a1,0(s3) + c00239d6: 1088 addi a0,sp,96 + c00239d8: b3fe10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31357 dbuf_putc(bc, OP_define_func); - c002380c: 04000593 li a1,64 - c0023810: 1088 addi a0,sp,96 - c0023812: 530240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31350 + c00239dc: 04000593 li a1,64 + c00239e0: 1088 addi a0,sp,96 + c00239e2: 530240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31358 dbuf_put_u32(bc, JS_DupAtom(ctx, hf->var_name)); - c0023816: 00c9a583 lw a1,12(s3) - c002381a: 8526 mv a0,s1 - c002381c: cafe30ef jal ra,c00074ca - c0023820: 0005059b sext.w a1,a0 - c0023824: 1088 addi a0,sp,96 - c0023826: c03e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31351 + c00239e6: 00c9a583 lw a1,12(s3) + c00239ea: 8526 mv a0,s1 + c00239ec: bcde30ef jal ra,c00075b8 + c00239f0: 0005059b sext.w a1,a0 + c00239f4: 1088 addi a0,sp,96 + c00239f6: b21e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31359 dbuf_putc(bc, flags); - c002382a: 7622 ld a2,40(sp) - c002382c: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31383 + c00239fa: 7622 ld a2,40(sp) + c00239fc: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31391 dbuf_putc(bc, OP_drop); - c002382e: 1088 addi a0,sp,96 - c0023830: 512240ef jal ra,c0047d42 - c0023834: bf45 j c00237e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31358 + c00239fe: 1088 addi a0,sp,96 + c0023a00: 512240ef jal ra,c0047f12 + c0023a04: bf45 j c00239b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31366 flags |= JS_PROP_WRITABLE; - c0023836: 082d6d13 ori s10,s10,130 - c002383a: b73d j c0023768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31326 + c0023a06: 082d6d13 ori s10,s10,130 + c0023a0a: b73d j c0023938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31334 force_init = FALSE; - c002383c: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31325 + c0023a0c: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31333 has_closure = 2; - c002383e: 4d09 li s10,2 - c0023840: bf61 j c00237d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31367 + c0023a0e: 4d09 li s10,2 + c0023a10: bf61 j c00239a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31375 dbuf_putc(bc, OP_fclosure); - c0023842: 458d li a1,3 - c0023844: 1088 addi a0,sp,96 - c0023846: 4fc240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31368 + c0023a12: 458d li a1,3 + c0023a14: 1088 addi a0,sp,96 + c0023a16: 4fc240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31376 dbuf_put_u32(bc, hf->cpool_idx); - c002384a: 0009a583 lw a1,0(s3) - c002384e: 1088 addi a0,sp,96 - c0023850: bd9e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31369 + c0023a1a: 0009a583 lw a1,0(s3) + c0023a1e: 1088 addi a0,sp,96 + c0023a20: af7e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31377 if (hf->var_name == JS_ATOM__default_) { - c0023854: 00c9a783 lw a5,12(s3) - c0023858: 07d00713 li a4,125 - c002385c: 00e79b63 bne a5,a4,c0023872 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31371 + c0023a24: 00c9a783 lw a5,12(s3) + c0023a28: 07d00713 li a4,125 + c0023a2c: 00e79b63 bne a5,a4,c0023a42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31379 dbuf_putc(bc, OP_set_name); - c0023860: 04d00593 li a1,77 - c0023864: 1088 addi a0,sp,96 - c0023866: 4dc240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31372 + c0023a30: 04d00593 li a1,77 + c0023a34: 1088 addi a0,sp,96 + c0023a36: 4dc240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31380 dbuf_put_u32(bc, JS_DupAtom(ctx, JS_ATOM_default)); - c002386a: 45d9 li a1,22 - c002386c: 1088 addi a0,sp,96 - c002386e: bbbe10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31377 + c0023a3a: 45d9 li a1,22 + c0023a3c: 1088 addi a0,sp,96 + c0023a3e: ad9e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31385 if (has_closure == 2) { - c0023872: 4789 li a5,2 - c0023874: 02fd1363 bne s10,a5,c002389a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31378 + c0023a42: 4789 li a5,2 + c0023a44: 02fd1363 bne s10,a5,c0023a6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31386 dbuf_putc(bc, OP_put_var_ref); - c0023878: 05f00593 li a1,95 - c002387c: 1088 addi a0,sp,96 - c002387e: 4c4240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31379 + c0023a48: 05f00593 li a1,95 + c0023a4c: 1088 addi a0,sp,96 + c0023a4e: 4c4240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31387 dbuf_put_u16(bc, idx); - c0023882: 030b1593 slli a1,s6,0x30 - c0023886: 91c1 srli a1,a1,0x30 - c0023888: 1088 addi a0,sp,96 - c002388a: a69e10ef jal ra,c00052f2 - c002388e: bf99 j c00237e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31375 + c0023a52: 030b1593 slli a1,s6,0x30 + c0023a56: 91c1 srli a1,a1,0x30 + c0023a58: 1088 addi a0,sp,96 + c0023a5a: 987e10ef jal ra,c00053e0 + c0023a5e: bf99 j c00239b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31383 dbuf_putc(bc, OP_undefined); - c0023890: 4599 li a1,6 - c0023892: 1088 addi a0,sp,96 - c0023894: 4ae240ef jal ra,c0047d42 - c0023898: bfe9 j c0023872 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31380 + c0023a60: 4599 li a1,6 + c0023a62: 1088 addi a0,sp,96 + c0023a64: 4ae240ef jal ra,c0047f12 + c0023a68: bfe9 j c0023a42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31388 } else if (has_closure == 1) { - c002389a: 4785 li a5,1 - c002389c: 02fd1363 bne s10,a5,c00238c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31381 + c0023a6a: 4785 li a5,1 + c0023a6c: 02fd1363 bne s10,a5,c0023a92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31389 dbuf_putc(bc, OP_define_field); - c00238a0: 04c00593 li a1,76 - c00238a4: 1088 addi a0,sp,96 - c00238a6: 49c240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31382 + c0023a70: 04c00593 li a1,76 + c0023a74: 1088 addi a0,sp,96 + c0023a76: 49c240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31390 dbuf_put_u32(bc, JS_DupAtom(ctx, hf->var_name)); - c00238aa: 00c9a583 lw a1,12(s3) - c00238ae: 8526 mv a0,s1 - c00238b0: c1be30ef jal ra,c00074ca - c00238b4: 0005059b sext.w a1,a0 - c00238b8: 1088 addi a0,sp,96 - c00238ba: b6fe10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31383 + c0023a7a: 00c9a583 lw a1,12(s3) + c0023a7e: 8526 mv a0,s1 + c0023a80: b39e30ef jal ra,c00075b8 + c0023a84: 0005059b sext.w a1,a0 + c0023a88: 1088 addi a0,sp,96 + c0023a8a: a8de10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31391 dbuf_putc(bc, OP_drop); - c00238be: 45b9 li a1,14 - c00238c0: b7bd j c002382e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31386 + c0023a8e: 45b9 li a1,14 + c0023a90: b7bd j c00239fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31394 dbuf_putc(bc, OP_put_var); - c00238c2: 03900593 li a1,57 - c00238c6: 1088 addi a0,sp,96 - c00238c8: 47a240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31387 + c0023a92: 03900593 li a1,57 + c0023a96: 1088 addi a0,sp,96 + c0023a98: 47a240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31395 dbuf_put_u32(bc, JS_DupAtom(ctx, hf->var_name)); - c00238cc: 00c9a583 lw a1,12(s3) - c00238d0: 8526 mv a0,s1 - c00238d2: bf9e30ef jal ra,c00074ca - c00238d6: 0005059b sext.w a1,a0 - c00238da: 1088 addi a0,sp,96 - c00238dc: b4de10ef jal ra,c0005428 - c00238e0: b711 j c00237e4 + c0023a9c: 00c9a583 lw a1,12(s3) + c0023aa0: 8526 mv a0,s1 + c0023aa2: b17e30ef jal ra,c00075b8 + c0023aa6: 0005059b sext.w a1,a0 + c0023aaa: 1088 addi a0,sp,96 + c0023aac: a6be10ef jal ra,c0005516 + c0023ab0: b711 j c00239b4 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c00238e2: 002d4783 lbu a5,2(s10) - c00238e6: 001d4983 lbu s3,1(s10) - c00238ea: 07a2 slli a5,a5,0x8 - c00238ec: 0137e733 or a4,a5,s3 + c0023ab2: 002d4783 lbu a5,2(s10) + c0023ab6: 001d4983 lbu s3,1(s10) + c0023aba: 07a2 slli a5,a5,0x8 + c0023abc: 0137e733 or a4,a5,s3 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31735 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31743 for(scope_idx = s->scopes[scope].first; scope_idx >= 0;) { - c00238f0: 787c ld a5,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31733 + c0023ac0: 787c ld a5,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31741 int scope_idx, scope = get_u16(bc_buf + pos + 1); - c00238f2: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31735 + c0023ac2: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31743 for(scope_idx = s->scopes[scope].first; scope_idx >= 0;) { - c00238f4: 070e slli a4,a4,0x3 - c00238f6: 97ba add a5,a5,a4 - c00238f8: 0047ab03 lw s6,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31735 (discriminator 1) - c00238fc: 820b47e3 bltz s6,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31736 + c0023ac4: 070e slli a4,a4,0x3 + c0023ac6: 97ba add a5,a5,a4 + c0023ac8: 0047ab03 lw s6,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31743 (discriminator 1) + c0023acc: 820b47e3 bltz s6,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31744 JSVarDef *vd = &s->vars[scope_idx]; - c0023900: 685c ld a5,144(s0) - c0023902: 004b1a93 slli s5,s6,0x4 - c0023906: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31737 + c0023ad0: 685c ld a5,144(s0) + c0023ad2: 004b1a93 slli s5,s6,0x4 + c0023ad6: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31745 if (vd->scope_level == scope) { - c0023908: 004aa783 lw a5,4(s5) - c002390c: 81379fe3 bne a5,s3,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31738 + c0023ad8: 004aa783 lw a5,4(s5) + c0023adc: 81379fe3 bne a5,s3,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31746 if (vd->is_captured) { - c0023910: 00caa783 lw a5,12(s5) - c0023914: 8b91 andi a5,a5,4 - c0023916: cf81 beqz a5,c002392e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31739 + c0023ae0: 00caa783 lw a5,12(s5) + c0023ae4: 8b91 andi a5,a5,4 + c0023ae6: cf81 beqz a5,c0023afe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31747 dbuf_putc(&bc_out, OP_close_loc); - c0023918: 06900593 li a1,105 - c002391c: 1088 addi a0,sp,96 - c002391e: 424240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31740 + c0023ae8: 06900593 li a1,105 + c0023aec: 1088 addi a0,sp,96 + c0023aee: 424240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31748 dbuf_put_u16(&bc_out, scope_idx); - c0023922: 030b1593 slli a1,s6,0x30 - c0023926: 91c1 srli a1,a1,0x30 - c0023928: 1088 addi a0,sp,96 - c002392a: 9c9e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31742 + c0023af2: 030b1593 slli a1,s6,0x30 + c0023af6: 91c1 srli a1,a1,0x30 + c0023af8: 1088 addi a0,sp,96 + c0023afa: 8e7e10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31750 scope_idx = vd->scope_next; - c002392e: 008aab03 lw s6,8(s5) - c0023932: b7e9 j c00238fc + c0023afe: 008aab03 lw s6,8(s5) + c0023b02: b7e9 j c0023acc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0023934: 002d4703 lbu a4,2(s10) - c0023938: 001d4783 lbu a5,1(s10) - c002393c: 0722 slli a4,a4,0x8 - c002393e: 8f5d or a4,a4,a5 - c0023940: 003d4783 lbu a5,3(s10) - c0023944: 07c2 slli a5,a5,0x10 - c0023946: 8f5d or a4,a4,a5 - c0023948: 004d4783 lbu a5,4(s10) - c002394c: 07e2 slli a5,a5,0x18 - c002394e: 8fd9 or a5,a5,a4 + c0023b04: 002d4703 lbu a4,2(s10) + c0023b08: 001d4783 lbu a5,1(s10) + c0023b0c: 0722 slli a4,a4,0x8 + c0023b0e: 8f5d or a4,a4,a5 + c0023b10: 003d4783 lbu a5,3(s10) + c0023b14: 07c2 slli a5,a5,0x10 + c0023b16: 8f5d or a4,a4,a5 + c0023b18: 004d4783 lbu a5,4(s10) + c0023b1c: 07e2 slli a5,a5,0x18 + c0023b1e: 8fd9 or a5,a5,a4 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31754 - if (name == JS_ATOM_NULL) - c0023950: fc078d63 beqz a5,c002312a - c0023954: ee0ff06f j c0023034 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31762 + if (name == JS_ATOM_NULL) + c0023b20: fc078d63 beqz a5,c00232fa + c0023b24: ee0ff06f j c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31770 s->jump_size++; - c0023958: 1b042783 lw a5,432(s0) - c002395c: 2785 addiw a5,a5,1 - c002395e: 1af42823 sw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31763 + c0023b28: 1b042783 lw a5,432(s0) + c0023b2c: 2785 addiw a5,a5,1 + c0023b2e: 1af42823 sw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31771 goto no_change; - c0023962: ed2ff06f j c0023034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31769 + c0023b32: ed2ff06f j c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31777 if (code_match(&cc, pos_next, M2(OP_if_false, OP_if_true), OP_drop, -1)) { - c0023966: 661d lui a2,0x7 - c0023968: 577d li a4,-1 - c002396a: 46b9 li a3,14 - c002396c: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> - c0023970: 85ca mv a1,s2 - c0023972: 1828 addi a0,sp,56 - c0023974: f00e10ef jal ra,c0005074 - c0023978: ea050e63 beqz a0,c0023034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31771 + c0023b36: 661d lui a2,0x7 + c0023b38: 577d li a4,-1 + c0023b3a: 46b9 li a3,14 + c0023b3c: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> + c0023b40: 85ca mv a1,s2 + c0023b42: 1828 addi a0,sp,56 + c0023b44: d30e10ef jal ra,c0005074 + c0023b48: ea050e63 beqz a0,c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31779 lab0 = lab1 = cc.label; - c002397c: 4dd6 lw s11,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31772 + c0023b4c: 4dd6 lw s11,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31780 assert(lab1 >= 0 && lab1 < s->label_count); - c002397e: 000dc663 bltz s11,c002398a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31772 (discriminator 2) - c0023982: 17c42783 lw a5,380(s0) - c0023986: 00fdc863 blt s11,a5,c0023996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31772 (discriminator 3) - c002398a: 65a1 lui a1,0x8 - c002398c: 4601 li a2,0 - c002398e: c1c58593 addi a1,a1,-996 # 7c1c <__clzdi2-0xbfff83e4> - c0023992: 8ffff06f j c0023290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31773 (discriminator 4) + c0023b4e: 000dc663 bltz s11,c0023b5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31780 (discriminator 2) + c0023b52: 17c42783 lw a5,380(s0) + c0023b56: 00fdc863 blt s11,a5,c0023b66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31780 (discriminator 3) + c0023b5a: 65a1 lui a1,0x8 + c0023b5c: 4601 li a2,0 + c0023b5e: c2458593 addi a1,a1,-988 # 7c24 <__clzdi2-0xbfff83dc> + c0023b62: 8ffff06f j c0023460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31781 (discriminator 4) op1 = cc.op; - c0023996: 4b36 lw s6,76(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31774 (discriminator 4) + c0023b66: 4b36 lw s6,76(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31782 (discriminator 4) pos1 = cc.pos; - c0023998: 4c96 lw s9,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31775 (discriminator 4) + c0023b68: 4c96 lw s9,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31783 (discriminator 4) line1 = cc.line_num; - c002399a: 4aa6 lw s5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31776 (discriminator 4) + c0023b6a: 4aa6 lw s5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31784 (discriminator 4) while (code_match(&cc, (pos2 = get_label_pos(s, lab1)), OP_dup, op1, OP_drop, -1)) { - c002399c: 87ee mv a5,s11 + c0023b6c: 87ee mv a5,s11 get_label_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31462 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31470 (discriminator 4) pos = s->label_slots[label].pos; - c002399e: 48e1 li a7,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31464 (discriminator 4) + c0023b6e: 48e1 li a7,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31472 (discriminator 4) switch (s->byte_code.buf[pos]) { - c00239a0: 06c00313 li t1,108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31462 + c0023b70: 06c00313 li t1,108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31470 pos = s->label_slots[label].pos; - c00239a4: 17043603 ld a2,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31464 + c0023b74: 17043603 ld a2,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31472 switch (s->byte_code.buf[pos]) { - c00239a8: 13043503 ld a0,304(s0) - c00239ac: 46d1 li a3,20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31462 + c0023b78: 13043503 ld a0,304(s0) + c0023b7c: 46d1 li a3,20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31470 pos = s->label_slots[label].pos; - c00239ae: 031787b3 mul a5,a5,a7 - c00239b2: 97b2 add a5,a5,a2 - c00239b4: 43cc lw a1,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31464 + c0023b7e: 031787b3 mul a5,a5,a7 + c0023b82: 97b2 add a5,a5,a2 + c0023b84: 43cc lw a1,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31472 switch (s->byte_code.buf[pos]) { - c00239b6: 00b50e33 add t3,a0,a1 - c00239ba: 000e4703 lbu a4,0(t3) - c00239be: 04a7079b addiw a5,a4,74 - c00239c2: 0ef7f793 andi a5,a5,239 - c00239c6: cbcd beqz a5,c0023a78 - c00239c8: 02671363 bne a4,t1,c00239ee + c0023b86: 00b50e33 add t3,a0,a1 + c0023b8a: 000e4703 lbu a4,0(t3) + c0023b8e: 04a7079b addiw a5,a4,74 + c0023b92: 0ef7f793 andi a5,a5,239 + c0023b96: cbcd beqz a5,c0023c48 + c0023b98: 02671363 bne a4,t1,c0023bbe get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00239cc: 002e4703 lbu a4,2(t3) - c00239d0: 001e4783 lbu a5,1(t3) + c0023b9c: 002e4703 lbu a4,2(t3) + c0023ba0: 001e4783 lbu a5,1(t3) get_label_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31469 for (i = 0; i < 20; i++) { - c00239d4: 36fd addiw a3,a3,-1 + c0023ba4: 36fd addiw a3,a3,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00239d6: 0722 slli a4,a4,0x8 - c00239d8: 8f5d or a4,a4,a5 - c00239da: 003e4783 lbu a5,3(t3) - c00239de: 07c2 slli a5,a5,0x10 - c00239e0: 8f5d or a4,a4,a5 - c00239e2: 004e4783 lbu a5,4(t3) - c00239e6: 07e2 slli a5,a5,0x18 - c00239e8: 8fd9 or a5,a5,a4 + c0023ba6: 0722 slli a4,a4,0x8 + c0023ba8: 8f5d or a4,a4,a5 + c0023baa: 003e4783 lbu a5,3(t3) + c0023bae: 07c2 slli a5,a5,0x10 + c0023bb0: 8f5d or a4,a4,a5 + c0023bb2: 004e4783 lbu a5,4(t3) + c0023bb6: 07e2 slli a5,a5,0x18 + c0023bb8: 8fd9 or a5,a5,a4 get_label_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31478 label = get_u32(s->byte_code.buf + pos + 1); - c00239ea: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31461 + c0023bba: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31469 for (i = 0; i < 20; i++) { - c00239ec: f2e9 bnez a3,c00239ae + c0023bbc: f2e9 bnez a3,c0023b7e resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31784 while (code_match(&cc, (pos2 = get_label_pos(s, lab1)), OP_dup, op1, OP_drop, -1)) { - c00239ee: 57fd li a5,-1 - c00239f0: 4739 li a4,14 - c00239f2: 86da mv a3,s6 - c00239f4: 4645 li a2,17 - c00239f6: 1828 addi a0,sp,56 - c00239f8: ec2e sd a1,24(sp) - c00239fa: e7ae10ef jal ra,c0005074 - c00239fe: 65e2 ld a1,24(sp) - c0023a00: 48e1 li a7,24 - c0023a02: 06c00313 li t1,108 - c0023a06: e53d bnez a0,c0023a74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31779 + c0023bbe: 57fd li a5,-1 + c0023bc0: 4739 li a4,14 + c0023bc2: 86da mv a3,s6 + c0023bc4: 4645 li a2,17 + c0023bc6: 1828 addi a0,sp,56 + c0023bc8: ec2e sd a1,24(sp) + c0023bca: caae10ef jal ra,c0005074 + c0023bce: 65e2 ld a1,24(sp) + c0023bd0: 48e1 li a7,24 + c0023bd2: 06c00313 li t1,108 + c0023bd6: e53d bnez a0,c0023c44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31787 if (code_match(&cc, pos2, op1, -1)) { - c0023a08: 56fd li a3,-1 - c0023a0a: 865a mv a2,s6 - c0023a0c: 1828 addi a0,sp,56 - c0023a0e: e66e10ef jal ra,c0005074 - c0023a12: e2050163 beqz a0,c0023034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31780 + c0023bd8: 56fd li a3,-1 + c0023bda: 865a mv a2,s6 + c0023bdc: 1828 addi a0,sp,56 + c0023bde: c96e10ef jal ra,c0005074 + c0023be2: e2050163 beqz a0,c0023204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31788 s->jump_size++; - c0023a16: 1b042783 lw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31781 + c0023be6: 1b042783 lw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31789 update_label(s, lab0, -1); - c0023a1a: 567d li a2,-1 - c0023a1c: 85ee mv a1,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31780 + c0023bea: 567d li a2,-1 + c0023bec: 85ee mv a1,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31788 s->jump_size++; - c0023a1e: 2785 addiw a5,a5,1 - c0023a20: 1af42823 sw a5,432(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31781 + c0023bee: 2785 addiw a5,a5,1 + c0023bf0: 1af42823 sw a5,432(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31789 update_label(s, lab0, -1); - c0023a24: 8522 mv a0,s0 - c0023a26: 86ce20ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31782 + c0023bf4: 8522 mv a0,s0 + c0023bf6: f8be10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31790 update_label(s, cc.label, +1); - c0023a2a: 45d6 lw a1,84(sp) - c0023a2c: 4605 li a2,1 - c0023a2e: 8522 mv a0,s0 - c0023a30: 862e20ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31783 + c0023bfa: 45d6 lw a1,84(sp) + c0023bfc: 4605 li a2,1 + c0023bfe: 8522 mv a0,s0 + c0023c00: f81e10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31791 dbuf_putc(&bc_out, op1); - c0023a34: 0ffb7593 zext.b a1,s6 - c0023a38: 1088 addi a0,sp,96 - c0023a3a: 308240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31784 + c0023c04: 0ffb7593 zext.b a1,s6 + c0023c08: 1088 addi a0,sp,96 + c0023c0a: 308240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31792 dbuf_put_u32(&bc_out, cc.label); - c0023a3e: 45d6 lw a1,84(sp) - c0023a40: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31785 + c0023c0e: 45d6 lw a1,84(sp) + c0023c10: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31793 pos_next = pos1; - c0023a42: 8966 mv s2,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31784 + c0023c12: 8966 mv s2,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31792 dbuf_put_u32(&bc_out, cc.label); - c0023a44: 9e5e10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31786 + c0023c14: 903e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31794 if (line1 != -1 && line1 != line_num) { - c0023a48: 57fd li a5,-1 - c0023a4a: eefa8063 beq s5,a5,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31786 (discriminator 1) - c0023a4e: ed5a0e63 beq s4,s5,c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31788 + c0023c18: 57fd li a5,-1 + c0023c1a: eefa8063 beq s5,a5,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31794 (discriminator 1) + c0023c1e: ed5a0e63 beq s4,s5,c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31796 s->line_number_size++; - c0023a52: 1c042783 lw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31789 + c0023c22: 1c042783 lw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31797 dbuf_putc(&bc_out, OP_line_num); - c0023a56: 0c600593 li a1,198 - c0023a5a: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31788 + c0023c26: 0c600593 li a1,198 + c0023c2a: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31796 s->line_number_size++; - c0023a5c: 2785 addiw a5,a5,1 - c0023a5e: 1cf42023 sw a5,448(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31789 + c0023c2c: 2785 addiw a5,a5,1 + c0023c2e: 1cf42023 sw a5,448(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31797 dbuf_putc(&bc_out, OP_line_num); - c0023a62: 2e0240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31790 + c0023c32: 2e0240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31798 dbuf_put_u32(&bc_out, line_num); - c0023a66: 85d6 mv a1,s5 - c0023a68: 1088 addi a0,sp,96 - c0023a6a: 9bfe10ef jal ra,c0005428 - c0023a6e: 8a56 mv s4,s5 - c0023a70: ebaff06f j c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31777 + c0023c36: 85d6 mv a1,s5 + c0023c38: 1088 addi a0,sp,96 + c0023c3a: 8dde10ef jal ra,c0005516 + c0023c3e: 8a56 mv s4,s5 + c0023c40: ebaff06f j c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31785 lab1 = cc.label; - c0023a74: 47d6 lw a5,84(sp) - c0023a76: b73d j c00239a4 + c0023c44: 47d6 lw a5,84(sp) + c0023c46: b73d j c0023b74 get_label_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31467 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31475 pos += 5; - c0023a78: 2595 addiw a1,a1,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31464 + c0023c48: 2595 addiw a1,a1,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31472 switch (s->byte_code.buf[pos]) { - c0023a7a: bf35 j c00239b6 + c0023c4a: bf35 j c0023b86 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023a7c: 002d4783 lbu a5,2(s10) - c0023a80: 001d4983 lbu s3,1(s10) + c0023c4c: 002d4783 lbu a5,2(s10) + c0023c50: 001d4983 lbu s3,1(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31816 dbuf_putc(&bc_out, OP_get_field); - c0023a84: 04100593 li a1,65 + c0023c54: 04100593 li a1,65 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023a88: 07a2 slli a5,a5,0x8 - c0023a8a: 0137e7b3 or a5,a5,s3 - c0023a8e: 003d4983 lbu s3,3(s10) + c0023c58: 07a2 slli a5,a5,0x8 + c0023c5a: 0137e7b3 or a5,a5,s3 + c0023c5e: 003d4983 lbu s3,3(s10) resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31808 - c0023a92: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31816 + c0023c62: 1088 addi a0,sp,96 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0023a94: 09c2 slli s3,s3,0x10 - c0023a96: 00f9e7b3 or a5,s3,a5 - c0023a9a: 004d4983 lbu s3,4(s10) - c0023a9e: 09e2 slli s3,s3,0x18 - c0023aa0: 00f9e9b3 or s3,s3,a5 - c0023aa4: 2981 sext.w s3,s3 + c0023c64: 09c2 slli s3,s3,0x10 + c0023c66: 00f9e7b3 or a5,s3,a5 + c0023c6a: 004d4983 lbu s3,4(s10) + c0023c6e: 09e2 slli s3,s3,0x18 + c0023c70: 00f9e9b3 or s3,s3,a5 + c0023c74: 2981 sext.w s3,s3 resolve_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31808 - c0023aa6: 29c240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31816 + c0023c76: 29c240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31817 dbuf_put_u32(&bc_out, name); - c0023aaa: 85ce mv a1,s3 - c0023aac: 1088 addi a0,sp,96 - c0023aae: 97be10ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31811 + c0023c7a: 85ce mv a1,s3 + c0023c7c: 1088 addi a0,sp,96 + c0023c7e: 899e10ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31819 break; - c0023ab2: e78ff06f j c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31813 + c0023c82: e78ff06f j c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31821 dbuf_putc(&bc_out, OP_get_array_el); - c0023ab6: 04700593 li a1,71 - c0023aba: 1088 addi a0,sp,96 - c0023abc: 286240ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31814 + c0023c86: 04700593 li a1,71 + c0023c8a: 1088 addi a0,sp,96 + c0023c8c: 286240ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31822 break; - c0023ac0: e6aff06f j c002312a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31835 (discriminator 2) + c0023c90: e6aff06f j c00232fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31843 (discriminator 2) op = bc_buf[pos]; - c0023ac4: 01bb85b3 add a1,s7,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31836 (discriminator 2) + c0023c94: 01bb85b3 add a1,s7,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31844 (discriminator 2) len = opcode_info[op].size; - c0023ac8: 0005c783 lbu a5,0(a1) - c0023acc: 00043717 auipc a4,0x43 - c0023ad0: 04470713 addi a4,a4,68 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31838 (discriminator 2) + c0023c98: 0005c783 lbu a5,0(a1) + c0023c9c: 00043717 auipc a4,0x43 + c0023ca0: 0d470713 addi a4,a4,212 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31846 (discriminator 2) dbuf_put(&bc_out, bc_buf + pos, len); - c0023ad4: 1088 addi a0,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31836 (discriminator 2) + c0023ca4: 1088 addi a0,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31844 (discriminator 2) len = opcode_info[op].size; - c0023ad6: 078a slli a5,a5,0x2 - c0023ad8: 97ba add a5,a5,a4 - c0023ada: 0007c603 lbu a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31837 (discriminator 2) + c0023ca6: 078a slli a5,a5,0x2 + c0023ca8: 97ba add a5,a5,a4 + c0023caa: 0007c603 lbu a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31845 (discriminator 2) pos_next = pos + len; - c0023ade: 01b60dbb addw s11,a2,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31838 (discriminator 2) + c0023cae: 01b60dbb addw s11,a2,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31846 (discriminator 2) dbuf_put(&bc_out, bc_buf + pos, len); - c0023ae2: 1ce240ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31834 (discriminator 2) + c0023cb2: 1ce240ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31842 (discriminator 2) for (; pos < bc_len; pos = pos_next) { - c0023ae6: fd8dcfe3 blt s11,s8,c0023ac4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31840 + c0023cb6: fd8dcfe3 blt s11,s8,c0023c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31848 dbuf_free(&s->byte_code); - c0023aea: 13040513 addi a0,s0,304 - c0023aee: ec2a sd a0,24(sp) - c0023af0: 316240ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31841 + c0023cba: 13040513 addi a0,s0,304 + c0023cbe: ec2a sd a0,24(sp) + c0023cc0: 316240ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31849 s->byte_code = bc_out; - c0023af4: 6562 ld a0,24(sp) - c0023af6: 03000613 li a2,48 - c0023afa: 108c addi a1,sp,96 - c0023afc: 6df320ef jal ra,c00569da - c0023b00: c1cff06f j c0022f1c + c0023cc4: 6562 ld a0,24(sp) + c0023cc6: 03000613 li a2,48 + c0023cca: 108c addi a1,sp,96 + c0023ccc: 6df320ef jal ra,c0056baa + c0023cd0: c1cff06f j c00230ec -00000000c0023b04 : +00000000c0023cd4 : add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30916 -{ - c0023b04: 711d addi sp,sp,-96 - c0023b06: e8a2 sd s0,80(sp) - c0023b08: e0ca sd s2,64(sp) - c0023b0a: ec86 sd ra,88(sp) - c0023b0c: e4a6 sd s1,72(sp) - c0023b0e: fc4e sd s3,56(sp) - c0023b10: f852 sd s4,48(sp) - c0023b12: f456 sd s5,40(sp) - c0023b14: f05a sd s6,32(sp) - c0023b16: ec5e sd s7,24(sp) - c0023b18: e862 sd s8,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30924 - if (!s->is_eval && !(s->js_mode & JS_MODE_STRICT)) { - c0023b1a: 5d9c lw a5,56(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30916 { - c0023b1c: 892a mv s2,a0 - c0023b1e: 842e mv s0,a1 + c0023cd4: 711d addi sp,sp,-96 + c0023cd6: e8a2 sd s0,80(sp) + c0023cd8: e0ca sd s2,64(sp) + c0023cda: ec86 sd ra,88(sp) + c0023cdc: e4a6 sd s1,72(sp) + c0023cde: fc4e sd s3,56(sp) + c0023ce0: f852 sd s4,48(sp) + c0023ce2: f456 sd s5,40(sp) + c0023ce4: f05a sd s6,32(sp) + c0023ce6: ec5e sd s7,24(sp) + c0023ce8: e862 sd s8,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30932 + if (!s->is_eval && !(s->js_mode & JS_MODE_STRICT)) { + c0023cea: 5d9c lw a5,56(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30924 +{ + c0023cec: 892a mv s2,a0 + c0023cee: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30932 if (!s->is_eval && !(s->js_mode & JS_MODE_STRICT)) { - c0023b20: e78d bnez a5,c0023b4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30924 (discriminator 1) - c0023b22: 0865c783 lbu a5,134(a1) - c0023b26: 8b85 andi a5,a5,1 - c0023b28: e38d bnez a5,c0023b4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30925 + c0023cf0: e78d bnez a5,c0023d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30932 (discriminator 1) + c0023cf2: 0865c783 lbu a5,134(a1) + c0023cf6: 8b85 andi a5,a5,1 + c0023cf8: e38d bnez a5,c0023d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30933 s->var_object_idx = add_var(ctx, s, JS_ATOM__var_); - c0023b2a: 05300613 li a2,83 - c0023b2e: c3afe0ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30926 + c0023cfa: 05300613 li a2,83 + c0023cfe: c3afe0ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30934 if (s->has_parameter_expressions) { - c0023b32: 487c lw a5,84(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30925 + c0023d02: 487c lw a5,84(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30933 s->var_object_idx = add_var(ctx, s, JS_ATOM__var_); - c0023b34: 0aa42a23 sw a0,180(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30926 + c0023d04: 0aa42a23 sw a0,180(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30934 if (s->has_parameter_expressions) { - c0023b38: cb89 beqz a5,c0023b4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30929 + c0023d08: cb89 beqz a5,c0023d1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30937 s->arg_var_object_idx = add_var(ctx, s, JS_ATOM__arg_var_); - c0023b3a: 05400613 li a2,84 - c0023b3e: 85a2 mv a1,s0 - c0023b40: 854a mv a0,s2 - c0023b42: c26fe0ef jal ra,c0021f68 - c0023b46: 0aa42c23 sw a0,184(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30934 + c0023d0a: 05400613 li a2,84 + c0023d0e: 85a2 mv a1,s0 + c0023d10: 854a mv a0,s2 + c0023d12: c26fe0ef jal ra,c0022138 + c0023d16: 0aa42c23 sw a0,184(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30942 has_this_binding = s->has_this_binding; - c0023b4a: 06442a03 lw s4,100(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30935 + c0023d1a: 06442a03 lw s4,100(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30943 if (has_this_binding) { - c0023b4e: 060a0463 beqz s4,c0023bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30936 + c0023d1e: 060a0463 beqz s4,c0023d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30944 if (s->this_var_idx < 0) - c0023b52: 0cc42783 lw a5,204(s0) - c0023b56: 0007d863 bgez a5,c0023b66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30937 + c0023d22: 0cc42783 lw a5,204(s0) + c0023d26: 0007d863 bgez a5,c0023d36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30945 s->this_var_idx = add_var_this(ctx, s); - c0023b5a: 85a2 mv a1,s0 - c0023b5c: 854a mv a0,s2 - c0023b5e: d20fe0ef jal ra,c002207e - c0023b62: 0ca42623 sw a0,204(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30938 + c0023d2a: 85a2 mv a1,s0 + c0023d2c: 854a mv a0,s2 + c0023d2e: d20fe0ef jal ra,c002224e + c0023d32: 0ca42623 sw a0,204(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30946 if (s->new_target_var_idx < 0) - c0023b66: 0d042783 lw a5,208(s0) - c0023b6a: 0007da63 bgez a5,c0023b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30939 + c0023d36: 0d042783 lw a5,208(s0) + c0023d3a: 0007da63 bgez a5,c0023d4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30947 s->new_target_var_idx = add_var(ctx, s, JS_ATOM_new_target); - c0023b6e: 07200613 li a2,114 - c0023b72: 85a2 mv a1,s0 - c0023b74: 854a mv a0,s2 - c0023b76: bf2fe0ef jal ra,c0021f68 - c0023b7a: 0ca42823 sw a0,208(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30940 + c0023d3e: 07200613 li a2,114 + c0023d42: 85a2 mv a1,s0 + c0023d44: 854a mv a0,s2 + c0023d46: bf2fe0ef jal ra,c0022138 + c0023d4a: 0ca42823 sw a0,208(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30948 if (s->is_derived_class_constructor && s->this_active_func_var_idx < 0) - c0023b7e: 5c3c lw a5,120(s0) - c0023b80: cf89 beqz a5,c0023b9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30940 (discriminator 1) - c0023b82: 0d442783 lw a5,212(s0) - c0023b86: 0007da63 bgez a5,c0023b9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30941 + c0023d4e: 5c3c lw a5,120(s0) + c0023d50: cf89 beqz a5,c0023d6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30948 (discriminator 1) + c0023d52: 0d442783 lw a5,212(s0) + c0023d56: 0007da63 bgez a5,c0023d6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30949 s->this_active_func_var_idx = add_var(ctx, s, JS_ATOM_this_active_func); - c0023b8a: 07300613 li a2,115 - c0023b8e: 85a2 mv a1,s0 - c0023b90: 854a mv a0,s2 - c0023b92: bd6fe0ef jal ra,c0021f68 - c0023b96: 0ca42a23 sw a0,212(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30942 + c0023d5a: 07300613 li a2,115 + c0023d5e: 85a2 mv a1,s0 + c0023d60: 854a mv a0,s2 + c0023d62: bd6fe0ef jal ra,c0022138 + c0023d66: 0ca42a23 sw a0,212(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30950 if (s->has_home_object && s->home_object_var_idx < 0) - c0023b9a: 443c lw a5,72(s0) - c0023b9c: cf89 beqz a5,c0023bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30942 (discriminator 1) - c0023b9e: 0d842783 lw a5,216(s0) - c0023ba2: 0007da63 bgez a5,c0023bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30943 + c0023d6a: 443c lw a5,72(s0) + c0023d6c: cf89 beqz a5,c0023d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30950 (discriminator 1) + c0023d6e: 0d842783 lw a5,216(s0) + c0023d72: 0007da63 bgez a5,c0023d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30951 s->home_object_var_idx = add_var(ctx, s, JS_ATOM_home_object); - c0023ba6: 07400613 li a2,116 - c0023baa: 85a2 mv a1,s0 - c0023bac: 854a mv a0,s2 - c0023bae: bbafe0ef jal ra,c0021f68 - c0023bb2: 0ca42c23 sw a0,216(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30945 + c0023d76: 07400613 li a2,116 + c0023d7a: 85a2 mv a1,s0 + c0023d7c: 854a mv a0,s2 + c0023d7e: bbafe0ef jal ra,c0022138 + c0023d82: 0ca42c23 sw a0,216(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30953 has_arguments_binding = s->has_arguments_binding; - c0023bb6: 06042a83 lw s5,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30946 + c0023d86: 06042a83 lw s5,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30954 if (has_arguments_binding) { - c0023bba: 060a8463 beqz s5,c0023c22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30947 + c0023d8a: 060a8463 beqz s5,c0023df2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30955 add_arguments_var(ctx, s); - c0023bbe: 85a2 mv a1,s0 - c0023bc0: 854a mv a0,s2 - c0023bc2: ceafe0ef jal ra,c00220ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30951 + c0023d8e: 85a2 mv a1,s0 + c0023d90: 854a mv a0,s2 + c0023d92: ceafe0ef jal ra,c002227c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30959 if (s->has_parameter_expressions && !(s->js_mode & JS_MODE_STRICT)) - c0023bc6: 487c lw a5,84(s0) - c0023bc8: cfa9 beqz a5,c0023c22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30951 (discriminator 1) - c0023bca: 08644783 lbu a5,134(s0) - c0023bce: 8b85 andi a5,a5,1 - c0023bd0: eba9 bnez a5,c0023c22 + c0023d96: 487c lw a5,84(s0) + c0023d98: cfa9 beqz a5,c0023df2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30959 (discriminator 1) + c0023d9a: 08644783 lbu a5,134(s0) + c0023d9e: 8b85 andi a5,a5,1 + c0023da0: eba9 bnez a5,c0023df2 add_arguments_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21927 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21935 if (fd->arguments_arg_idx < 0) { - c0023bd2: 0c042783 lw a5,192(s0) - c0023bd6: 0407d663 bgez a5,c0023c22 + c0023da2: 0c042783 lw a5,192(s0) + c0023da6: 0407d663 bgez a5,c0023df2 find_var_in_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21719 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21727 for(scope_idx = fd->scopes[scope_level].first; scope_idx >= 0; - c0023bda: 787c ld a5,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21721 + c0023daa: 787c ld a5,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21729 if (fd->vars[scope_idx].scope_level != scope_level) - c0023bdc: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21723 + c0023dac: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21731 if (fd->vars[scope_idx].var_name == name) - c0023bde: 04e00613 li a2,78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21719 + c0023dae: 04e00613 li a2,78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21727 for(scope_idx = fd->scopes[scope_level].first; scope_idx >= 0; - c0023be2: 47dc lw a5,12(a5) - c0023be4: 0607d863 bgez a5,c0023c54 + c0023db2: 47dc lw a5,12(a5) + c0023db4: 0607d863 bgez a5,c0023e24 add_arguments_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21933 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21941 idx = add_var(ctx, fd, JS_ATOM_arguments); - c0023be8: 04e00613 li a2,78 - c0023bec: 85a2 mv a1,s0 - c0023bee: 854a mv a0,s2 - c0023bf0: b78fe0ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21934 + c0023db8: 04e00613 li a2,78 + c0023dbc: 85a2 mv a1,s0 + c0023dbe: 854a mv a0,s2 + c0023dc0: b78fe0ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21942 if (idx < 0) - c0023bf4: 02054763 bltz a0,c0023c22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21936 + c0023dc4: 02054763 bltz a0,c0023df2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21944 fd->vars[idx].scope_next = fd->scopes[ARG_SCOPE_INDEX].first; - c0023bf8: 787c ld a5,240(s0) - c0023bfa: 00451713 slli a4,a0,0x4 - c0023bfe: 47d4 lw a3,12(a5) - c0023c00: 685c ld a5,144(s0) - c0023c02: 97ba add a5,a5,a4 - c0023c04: c794 sw a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21937 + c0023dc8: 787c ld a5,240(s0) + c0023dca: 00451713 slli a4,a0,0x4 + c0023dce: 47d4 lw a3,12(a5) + c0023dd0: 685c ld a5,144(s0) + c0023dd2: 97ba add a5,a5,a4 + c0023dd4: c794 sw a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21945 fd->scopes[ARG_SCOPE_INDEX].first = idx; - c0023c06: 787c ld a5,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21938 + c0023dd6: 787c ld a5,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21946 fd->vars[idx].scope_level = ARG_SCOPE_INDEX; - c0023c08: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21937 + c0023dd8: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21945 fd->scopes[ARG_SCOPE_INDEX].first = idx; - c0023c0a: c7c8 sw a0,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21938 + c0023dda: c7c8 sw a0,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21946 fd->vars[idx].scope_level = ARG_SCOPE_INDEX; - c0023c0c: 685c ld a5,144(s0) - c0023c0e: 97ba add a5,a5,a4 - c0023c10: c3d4 sw a3,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21939 + c0023ddc: 685c ld a5,144(s0) + c0023dde: 97ba add a5,a5,a4 + c0023de0: c3d4 sw a3,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21947 fd->vars[idx].is_lexical = TRUE; - c0023c12: 685c ld a5,144(s0) - c0023c14: 97ba add a5,a5,a4 - c0023c16: 47d8 lw a4,12(a5) - c0023c18: 00276713 ori a4,a4,2 - c0023c1c: c7d8 sw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21941 + c0023de2: 685c ld a5,144(s0) + c0023de4: 97ba add a5,a5,a4 + c0023de6: 47d8 lw a4,12(a5) + c0023de8: 00276713 ori a4,a4,2 + c0023dec: c7d8 sw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21949 fd->arguments_arg_idx = idx; - c0023c1e: 0ca42023 sw a0,192(s0) + c0023dee: 0ca42023 sw a0,192(s0) add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30962 if (s->is_func_expr && s->func_name != JS_ATOM_NULL) - c0023c22: 407c lw a5,68(s0) - c0023c24: cb81 beqz a5,c0023c34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30954 (discriminator 1) - c0023c26: 08842603 lw a2,136(s0) - c0023c2a: c609 beqz a2,c0023c34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30955 + c0023df2: 407c lw a5,68(s0) + c0023df4: cb81 beqz a5,c0023e04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30962 (discriminator 1) + c0023df6: 08842603 lw a2,136(s0) + c0023dfa: c609 beqz a2,c0023e04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30963 add_func_var(ctx, s, s->func_name); - c0023c2c: 85a2 mv a1,s0 - c0023c2e: 854a mv a0,s2 - c0023c30: cacfe0ef jal ra,c00220dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30961 + c0023dfc: 85a2 mv a1,s0 + c0023dfe: 854a mv a0,s2 + c0023e00: cacfe0ef jal ra,c00222ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30969 assert(s->is_eval || s->closure_var_count == 0); - c0023c34: 5c1c lw a5,56(s0) - c0023c36: 84a2 mv s1,s0 - c0023c38: eb8d bnez a5,c0023c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30961 (discriminator 1) - c0023c3a: 19842783 lw a5,408(s0) - c0023c3e: c795 beqz a5,c0023c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30961 (discriminator 3) - c0023c40: 65a1 lui a1,0x8 - c0023c42: 4601 li a2,0 - c0023c44: 8f158593 addi a1,a1,-1807 # 78f1 <__clzdi2-0xbfff870f> - c0023c48: 00039517 auipc a0,0x39 - c0023c4c: e3050513 addi a0,a0,-464 # c005ca78 - c0023c50: 5c92f0ef jal ra,c0053a18 <__assert> + c0023e04: 5c1c lw a5,56(s0) + c0023e06: 84a2 mv s1,s0 + c0023e08: eb8d bnez a5,c0023e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30969 (discriminator 1) + c0023e0a: 19842783 lw a5,408(s0) + c0023e0e: c795 beqz a5,c0023e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30969 (discriminator 3) + c0023e10: 65a1 lui a1,0x8 + c0023e12: 4601 li a2,0 + c0023e14: 8f958593 addi a1,a1,-1799 # 78f9 <__clzdi2-0xbfff8707> + c0023e18: 00039517 auipc a0,0x39 + c0023e1c: e3050513 addi a0,a0,-464 # c005cc48 + c0023e20: 5c92f0ef jal ra,c0053be8 <__assert> find_var_in_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21721 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21729 if (fd->vars[scope_idx].scope_level != scope_level) - c0023c54: 6858 ld a4,144(s0) - c0023c56: 0792 slli a5,a5,0x4 - c0023c58: 97ba add a5,a5,a4 - c0023c5a: 43d8 lw a4,4(a5) - c0023c5c: f8d716e3 bne a4,a3,c0023be8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21723 + c0023e24: 6858 ld a4,144(s0) + c0023e26: 0792 slli a5,a5,0x4 + c0023e28: 97ba add a5,a5,a4 + c0023e2a: 43d8 lw a4,4(a5) + c0023e2c: f8d716e3 bne a4,a3,c0023db8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21731 if (fd->vars[scope_idx].var_name == name) - c0023c60: 4398 lw a4,0(a5) - c0023c62: fcc700e3 beq a4,a2,c0023c22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21720 + c0023e30: 4398 lw a4,0(a5) + c0023e32: fcc700e3 beq a4,a2,c0023df2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21728 scope_idx = fd->vars[scope_idx].scope_next) { - c0023c66: 479c lw a5,8(a5) - c0023c68: bfb5 j c0023be4 + c0023e36: 479c lw a5,8(a5) + c0023e38: bfb5 j c0023db4 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31001 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31009 if (!is_arg_scope) { - c0023c6a: 5b79 li s6,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31015 + c0023e3a: 5b79 li s6,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31023 if (vd->scope_level == 0 && - c0023c6c: 05200b93 li s7,82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30966 + c0023e3c: 05200b93 li s7,82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30974 scope_level = fd->parent_scope_level; - c0023c70: 0144a983 lw s3,20(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30967 + c0023e40: 0144a983 lw s3,20(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30975 fd = fd->parent; - c0023c74: 6484 ld s1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30968 + c0023e44: 6484 ld s1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30976 if (!fd) - c0023c76: 20048663 beqz s1,c0023e82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30971 + c0023e46: 20048663 beqz s1,c0024052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30979 if (!has_this_binding && fd->has_this_binding) { - c0023c7a: 060a1963 bnez s4,c0023cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30971 (discriminator 1) - c0023c7e: 0644aa03 lw s4,100(s1) - c0023c82: 060a0563 beqz s4,c0023cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30972 + c0023e4a: 060a1963 bnez s4,c0023ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30979 (discriminator 1) + c0023e4e: 0644aa03 lw s4,100(s1) + c0023e52: 060a0563 beqz s4,c0023ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30980 if (fd->this_var_idx < 0) - c0023c86: 0cc4a783 lw a5,204(s1) - c0023c8a: 0007d863 bgez a5,c0023c9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30973 + c0023e56: 0cc4a783 lw a5,204(s1) + c0023e5a: 0007d863 bgez a5,c0023e6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30981 fd->this_var_idx = add_var_this(ctx, fd); - c0023c8e: 85a6 mv a1,s1 - c0023c90: 854a mv a0,s2 - c0023c92: becfe0ef jal ra,c002207e - c0023c96: 0ca4a623 sw a0,204(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30974 + c0023e5e: 85a6 mv a1,s1 + c0023e60: 854a mv a0,s2 + c0023e62: becfe0ef jal ra,c002224e + c0023e66: 0ca4a623 sw a0,204(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30982 if (fd->new_target_var_idx < 0) - c0023c9a: 0d04a783 lw a5,208(s1) - c0023c9e: 0007da63 bgez a5,c0023cb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30975 + c0023e6a: 0d04a783 lw a5,208(s1) + c0023e6e: 0007da63 bgez a5,c0023e82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30983 fd->new_target_var_idx = add_var(ctx, fd, JS_ATOM_new_target); - c0023ca2: 07200613 li a2,114 - c0023ca6: 85a6 mv a1,s1 - c0023ca8: 854a mv a0,s2 - c0023caa: abefe0ef jal ra,c0021f68 - c0023cae: 0ca4a823 sw a0,208(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30976 + c0023e72: 07200613 li a2,114 + c0023e76: 85a6 mv a1,s1 + c0023e78: 854a mv a0,s2 + c0023e7a: abefe0ef jal ra,c0022138 + c0023e7e: 0ca4a823 sw a0,208(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30984 if (fd->is_derived_class_constructor && fd->this_active_func_var_idx < 0) - c0023cb2: 5cbc lw a5,120(s1) - c0023cb4: cf89 beqz a5,c0023cce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30976 (discriminator 1) - c0023cb6: 0d44a783 lw a5,212(s1) - c0023cba: 0007da63 bgez a5,c0023cce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30977 + c0023e82: 5cbc lw a5,120(s1) + c0023e84: cf89 beqz a5,c0023e9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30984 (discriminator 1) + c0023e86: 0d44a783 lw a5,212(s1) + c0023e8a: 0007da63 bgez a5,c0023e9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30985 fd->this_active_func_var_idx = add_var(ctx, fd, JS_ATOM_this_active_func); - c0023cbe: 07300613 li a2,115 - c0023cc2: 85a6 mv a1,s1 - c0023cc4: 854a mv a0,s2 - c0023cc6: aa2fe0ef jal ra,c0021f68 - c0023cca: 0ca4aa23 sw a0,212(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30978 + c0023e8e: 07300613 li a2,115 + c0023e92: 85a6 mv a1,s1 + c0023e94: 854a mv a0,s2 + c0023e96: aa2fe0ef jal ra,c0022138 + c0023e9a: 0ca4aa23 sw a0,212(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30986 if (fd->has_home_object && fd->home_object_var_idx < 0) - c0023cce: 44bc lw a5,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30980 + c0023e9e: 44bc lw a5,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30988 has_this_binding = TRUE; - c0023cd0: 4a05 li s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30978 + c0023ea0: 4a05 li s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30986 if (fd->has_home_object && fd->home_object_var_idx < 0) - c0023cd2: cf89 beqz a5,c0023cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30978 (discriminator 1) - c0023cd4: 0d84a783 lw a5,216(s1) - c0023cd8: 0007da63 bgez a5,c0023cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30979 + c0023ea2: cf89 beqz a5,c0023ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30986 (discriminator 1) + c0023ea4: 0d84a783 lw a5,216(s1) + c0023ea8: 0007da63 bgez a5,c0023ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30987 fd->home_object_var_idx = add_var(ctx, fd, JS_ATOM_home_object); - c0023cdc: 07400613 li a2,116 - c0023ce0: 85a6 mv a1,s1 - c0023ce2: 854a mv a0,s2 - c0023ce4: a84fe0ef jal ra,c0021f68 - c0023ce8: 0ca4ac23 sw a0,216(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30983 + c0023eac: 07400613 li a2,116 + c0023eb0: 85a6 mv a1,s1 + c0023eb2: 854a mv a0,s2 + c0023eb4: a84fe0ef jal ra,c0022138 + c0023eb8: 0ca4ac23 sw a0,216(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30991 if (!has_arguments_binding && fd->has_arguments_binding) { - c0023cec: 000a9b63 bnez s5,c0023d02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30983 (discriminator 1) - c0023cf0: 0604aa83 lw s5,96(s1) - c0023cf4: 000a8763 beqz s5,c0023d02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30984 + c0023ebc: 000a9b63 bnez s5,c0023ed2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30991 (discriminator 1) + c0023ec0: 0604aa83 lw s5,96(s1) + c0023ec4: 000a8763 beqz s5,c0023ed2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30992 add_arguments_var(ctx, fd); - c0023cf8: 85a6 mv a1,s1 - c0023cfa: 854a mv a0,s2 - c0023cfc: bb0fe0ef jal ra,c00220ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30985 + c0023ec8: 85a6 mv a1,s1 + c0023eca: 854a mv a0,s2 + c0023ecc: bb0fe0ef jal ra,c002227c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30993 has_arguments_binding = TRUE; - c0023d00: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30988 + c0023ed0: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30996 if (fd->is_func_expr && fd->func_name != JS_ATOM_NULL) - c0023d02: 40fc lw a5,68(s1) - c0023d04: cb81 beqz a5,c0023d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30988 (discriminator 1) - c0023d06: 0884a603 lw a2,136(s1) - c0023d0a: c609 beqz a2,c0023d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30989 + c0023ed2: 40fc lw a5,68(s1) + c0023ed4: cb81 beqz a5,c0023ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30996 (discriminator 1) + c0023ed6: 0884a603 lw a2,136(s1) + c0023eda: c609 beqz a2,c0023ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30997 add_func_var(ctx, fd, fd->func_name); - c0023d0c: 85a6 mv a1,s1 - c0023d0e: 854a mv a0,s2 - c0023d10: bccfe0ef jal ra,c00220dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30992 + c0023edc: 85a6 mv a1,s1 + c0023ede: 854a mv a0,s2 + c0023ee0: bccfe0ef jal ra,c00222ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31000 scope_idx = fd->scopes[scope_level].first; - c0023d14: 78fc ld a5,240(s1) - c0023d16: 098e slli s3,s3,0x3 - c0023d18: 97ce add a5,a5,s3 - c0023d1a: 43dc lw a5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30993 + c0023ee4: 78fc ld a5,240(s1) + c0023ee6: 098e slli s3,s3,0x3 + c0023ee8: 97ce add a5,a5,s3 + c0023eea: 43dc lw a5,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31001 while (scope_idx >= 0) { - c0023d1c: 0207d363 bgez a5,c0023d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31004 + c0023eec: 0207d363 bgez a5,c0023f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 for(i = 0; i < fd->arg_count; i++) { - c0023d20: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31024 + c0023ef0: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31032 for(i = 0; i < fd->var_count; i++) { - c0023d22: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31001 + c0023ef2: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31009 if (!is_arg_scope) { - c0023d24: 11678563 beq a5,s6,c0023e2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31004 (discriminator 1) + c0023ef4: 11678563 beq a5,s6,c0023ffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 (discriminator 1) for(i = 0; i < fd->arg_count; i++) { - c0023d28: 0ac4a783 lw a5,172(s1) - c0023d2c: 04f9ce63 blt s3,a5,c0023d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 + c0023ef8: 0ac4a783 lw a5,172(s1) + c0023efc: 04f9ce63 blt s3,a5,c0023f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31020 for(i = 0; i < fd->var_count; i++) { - c0023d30: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 (discriminator 1) - c0023d32: 09c4a783 lw a5,156(s1) - c0023d36: 08f9c263 blt s3,a5,c0023dba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31034 + c0023f00: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31020 (discriminator 1) + c0023f02: 09c4a783 lw a5,156(s1) + c0023f06: 08f9c263 blt s3,a5,c0023f8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31042 if (fd->is_eval) { - c0023d3a: 5c9c lw a5,56(s1) - c0023d3c: db95 beqz a5,c0023c70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31038 + c0023f0a: 5c9c lw a5,56(s1) + c0023f0c: db95 beqz a5,c0023e40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31046 for (idx = 0; idx < fd->closure_var_count; idx++) { - c0023d3e: 4981 li s3,0 - c0023d40: aa25 j c0023e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30994 + c0023f0e: 4981 li s3,0 + c0023f10: aa25 j c0024048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31002 vd = &fd->vars[scope_idx]; - c0023d42: 0904b983 ld s3,144(s1) - c0023d46: 00479713 slli a4,a5,0x4 + c0023f12: 0904b983 ld s3,144(s1) + c0023f16: 00479713 slli a4,a5,0x4 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d4a: 4685 li a3,1 + c0023f1a: 4685 li a3,1 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30994 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31002 vd = &fd->vars[scope_idx]; - c0023d4c: 99ba add s3,s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30995 + c0023f1c: 99ba add s3,s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31003 vd->is_captured = 1; - c0023d4e: 00c9a883 lw a7,12(s3) + c0023f1e: 00c9a883 lw a7,12(s3) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d52: 0009a803 lw a6,0(s3) - c0023d56: 8626 mv a2,s1 + c0023f22: 0009a803 lw a6,0(s3) + c0023f26: 8626 mv a2,s1 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30995 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31003 vd->is_captured = 1; - c0023d58: 0048e893 ori a7,a7,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30997 + c0023f28: 0048e893 ori a7,a7,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31005 vd->var_name, vd->is_const, vd->is_lexical, vd->var_kind); - c0023d5c: 0048d71b srliw a4,a7,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30995 + c0023f2c: 0048d71b srliw a4,a7,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31003 vd->is_captured = 1; - c0023d60: 0119a623 sw a7,12(s3) + c0023f30: 0119a623 sw a7,12(s3) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d64: 8b3d andi a4,a4,15 - c0023d66: e43a sd a4,8(sp) + c0023f34: 8b3d andi a4,a4,15 + c0023f36: e43a sd a4,8(sp) add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30997 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31005 vd->var_name, vd->is_const, vd->is_lexical, vd->var_kind); - c0023d68: 00c9a703 lw a4,12(s3) + c0023f38: 00c9a703 lw a4,12(s3) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d6c: 0018f893 andi a7,a7,1 - c0023d70: 85a2 mv a1,s0 + c0023f3c: 0018f893 andi a7,a7,1 + c0023f40: 85a2 mv a1,s0 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30997 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31005 vd->var_name, vd->is_const, vd->is_lexical, vd->var_kind); - c0023d72: 0017571b srliw a4,a4,0x1 + c0023f42: 0017571b srliw a4,a4,0x1 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d76: 8b05 andi a4,a4,1 - c0023d78: e03a sd a4,0(sp) - c0023d7a: 854a mv a0,s2 - c0023d7c: 4701 li a4,0 - c0023d7e: d94fe0ef jal ra,c0022312 + c0023f46: 8b05 andi a4,a4,1 + c0023f48: e03a sd a4,0(sp) + c0023f4a: 854a mv a0,s2 + c0023f4c: 4701 li a4,0 + c0023f4e: d94fe0ef jal ra,c00224e2 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31006 scope_idx = vd->scope_next; - c0023d82: 0089a783 lw a5,8(s3) - c0023d86: bf59 j c0023d1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31005 + c0023f52: 0089a783 lw a5,8(s3) + c0023f56: bf59 j c0023eec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31013 vd = &fd->args[i]; - c0023d88: 70d8 ld a4,160(s1) - c0023d8a: 00499793 slli a5,s3,0x4 - c0023d8e: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31006 + c0023f58: 70d8 ld a4,160(s1) + c0023f5a: 00499793 slli a5,s3,0x4 + c0023f5e: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31014 if (vd->var_name != JS_ATOM_NULL) { - c0023d90: 0007a803 lw a6,0(a5) - c0023d94: 02080163 beqz a6,c0023db6 + c0023f60: 0007a803 lw a6,0(a5) + c0023f64: 02080163 beqz a6,c0023f86 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d98: e402 sd zero,8(sp) + c0023f68: e402 sd zero,8(sp) add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31017 vd->is_lexical, JS_VAR_NORMAL); - c0023d9a: 47dc lw a5,12(a5) + c0023f6a: 47dc lw a5,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023d9c: 4881 li a7,0 - c0023d9e: 4705 li a4,1 + c0023f6c: 4881 li a7,0 + c0023f6e: 4705 li a4,1 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31017 vd->is_lexical, JS_VAR_NORMAL); - c0023da0: 0017d79b srliw a5,a5,0x1 + c0023f70: 0017d79b srliw a5,a5,0x1 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023da4: 8b85 andi a5,a5,1 - c0023da6: e03e sd a5,0(sp) - c0023da8: 4685 li a3,1 - c0023daa: 87ce mv a5,s3 - c0023dac: 8626 mv a2,s1 - c0023dae: 85a2 mv a1,s0 - c0023db0: 854a mv a0,s2 - c0023db2: d60fe0ef jal ra,c0022312 + c0023f74: 8b85 andi a5,a5,1 + c0023f76: e03e sd a5,0(sp) + c0023f78: 4685 li a3,1 + c0023f7a: 87ce mv a5,s3 + c0023f7c: 8626 mv a2,s1 + c0023f7e: 85a2 mv a1,s0 + c0023f80: 854a mv a0,s2 + c0023f82: d60fe0ef jal ra,c00224e2 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31004 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 (discriminator 2) for(i = 0; i < fd->arg_count; i++) { - c0023db6: 2985 addiw s3,s3,1 - c0023db8: bf85 j c0023d28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31013 + c0023f86: 2985 addiw s3,s3,1 + c0023f88: bf85 j c0023ef8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31021 vd = &fd->vars[i]; - c0023dba: 68d8 ld a4,144(s1) - c0023dbc: 00499793 slli a5,s3,0x4 - c0023dc0: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31015 + c0023f8a: 68d8 ld a4,144(s1) + c0023f8c: 00499793 slli a5,s3,0x4 + c0023f90: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31023 if (vd->scope_level == 0 && - c0023dc2: 43d8 lw a4,4(a5) - c0023dc4: e70d bnez a4,c0023dee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31016 (discriminator 1) + c0023f92: 43d8 lw a4,4(a5) + c0023f94: e70d bnez a4,c0023fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31024 (discriminator 1) vd->var_name != JS_ATOM__ret_ && - c0023dc6: 0007a803 lw a6,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31015 (discriminator 1) + c0023f96: 0007a803 lw a6,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31023 (discriminator 1) if (vd->scope_level == 0 && - c0023dca: 03780263 beq a6,s7,c0023dee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31016 + c0023f9a: 03780263 beq a6,s7,c0023fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31024 vd->var_name != JS_ATOM__ret_ && - c0023dce: 02080063 beqz a6,c0023dee + c0023f9e: 02080063 beqz a6,c0023fbe get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023dd2: e402 sd zero,8(sp) + c0023fa2: e402 sd zero,8(sp) add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31028 vd->is_lexical, JS_VAR_NORMAL); - c0023dd4: 47dc lw a5,12(a5) + c0023fa4: 47dc lw a5,12(a5) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023dd6: 4881 li a7,0 - c0023dd8: 4685 li a3,1 + c0023fa6: 4881 li a7,0 + c0023fa8: 4685 li a3,1 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31028 vd->is_lexical, JS_VAR_NORMAL); - c0023dda: 0017d79b srliw a5,a5,0x1 + c0023faa: 0017d79b srliw a5,a5,0x1 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023dde: 8b85 andi a5,a5,1 - c0023de0: e03e sd a5,0(sp) - c0023de2: 8626 mv a2,s1 - c0023de4: 87ce mv a5,s3 - c0023de6: 85a2 mv a1,s0 - c0023de8: 854a mv a0,s2 - c0023dea: d28fe0ef jal ra,c0022312 + c0023fae: 8b85 andi a5,a5,1 + c0023fb0: e03e sd a5,0(sp) + c0023fb2: 8626 mv a2,s1 + c0023fb4: 87ce mv a5,s3 + c0023fb6: 85a2 mv a1,s0 + c0023fb8: 854a mv a0,s2 + c0023fba: d28fe0ef jal ra,c00224e2 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31012 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31020 (discriminator 2) for(i = 0; i < fd->var_count; i++) { - c0023dee: 2985 addiw s3,s3,1 - c0023df0: b789 j c0023d32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31025 + c0023fbe: 2985 addiw s3,s3,1 + c0023fc0: b789 j c0023f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31033 vd = &fd->vars[i]; - c0023df2: 68d8 ld a4,144(s1) - c0023df4: 004c1993 slli s3,s8,0x4 - c0023df8: 99ba add s3,s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31027 + c0023fc2: 68d8 ld a4,144(s1) + c0023fc4: 004c1993 slli s3,s8,0x4 + c0023fc8: 99ba add s3,s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31035 if (vd->scope_level == 0 && is_var_in_arg_scope(vd)) { - c0023dfa: 0049a783 lw a5,4(s3) - c0023dfe: e79d bnez a5,c0023e2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31027 (discriminator 1) - c0023e00: 854e mv a0,s3 - c0023e02: b09e10ef jal ra,c000590a - c0023e06: c11d beqz a0,c0023e2c + c0023fca: 0049a783 lw a5,4(s3) + c0023fce: e79d bnez a5,c0023ffc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31035 (discriminator 1) + c0023fd0: 854e mv a0,s3 + c0023fd2: a27e10ef jal ra,c00059f8 + c0023fd6: c11d beqz a0,c0023ffc get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023e08: 0009a803 lw a6,0(s3) - c0023e0c: e402 sd zero,8(sp) + c0023fd8: 0009a803 lw a6,0(s3) + c0023fdc: e402 sd zero,8(sp) add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31038 vd->is_lexical, JS_VAR_NORMAL); - c0023e0e: 00c9a783 lw a5,12(s3) + c0023fde: 00c9a783 lw a5,12(s3) get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023e12: 4881 li a7,0 - c0023e14: 4701 li a4,0 + c0023fe2: 4881 li a7,0 + c0023fe4: 4701 li a4,0 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31038 vd->is_lexical, JS_VAR_NORMAL); - c0023e16: 0017d79b srliw a5,a5,0x1 + c0023fe6: 0017d79b srliw a5,a5,0x1 get_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30059 return get_closure_var2(ctx, s, fd, TRUE, is_arg, - c0023e1a: 8b85 andi a5,a5,1 - c0023e1c: e03e sd a5,0(sp) - c0023e1e: 4685 li a3,1 - c0023e20: 87e2 mv a5,s8 - c0023e22: 8626 mv a2,s1 - c0023e24: 85a2 mv a1,s0 - c0023e26: 854a mv a0,s2 - c0023e28: ceafe0ef jal ra,c0022312 + c0023fea: 8b85 andi a5,a5,1 + c0023fec: e03e sd a5,0(sp) + c0023fee: 4685 li a3,1 + c0023ff0: 87e2 mv a5,s8 + c0023ff2: 8626 mv a2,s1 + c0023ff4: 85a2 mv a1,s0 + c0023ff6: 854a mv a0,s2 + c0023ff8: ceafe0ef jal ra,c00224e2 add_eval_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31024 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31032 (discriminator 2) for(i = 0; i < fd->var_count; i++) { - c0023e2c: 2c05 addiw s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31024 (discriminator 1) - c0023e2e: 09c4a783 lw a5,156(s1) - c0023e32: fcfc40e3 blt s8,a5,c0023df2 - c0023e36: b711 j c0023d3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31039 (discriminator 3) + c0023ffc: 2c05 addiw s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31032 (discriminator 1) + c0023ffe: 09c4a783 lw a5,156(s1) + c0024002: fcfc40e3 blt s8,a5,c0023fc2 + c0024006: b711 j c0023f0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31047 (discriminator 3) JSClosureVar *cv = &fd->closure_var[idx]; - c0023e38: 1a04b783 ld a5,416(s1) - c0023e3c: 00399713 slli a4,s3,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31040 (discriminator 3) + c0024008: 1a04b783 ld a5,416(s1) + c002400c: 00399713 slli a4,s3,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31048 (discriminator 3) get_closure_var2(ctx, s, fd, - c0023e40: 8626 mv a2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31039 (discriminator 3) + c0024010: 8626 mv a2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31047 (discriminator 3) JSClosureVar *cv = &fd->closure_var[idx]; - c0023e42: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31042 (discriminator 3) + c0024012: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31050 (discriminator 3) idx, cv->var_name, cv->is_const, - c0023e44: 4394 lw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31040 (discriminator 3) + c0024014: 4394 lw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31048 (discriminator 3) get_closure_var2(ctx, s, fd, - c0023e46: 0047a803 lw a6,4(a5) - c0023e4a: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31042 (discriminator 3) + c0024016: 0047a803 lw a6,4(a5) + c002401a: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31050 (discriminator 3) idx, cv->var_name, cv->is_const, - c0023e4c: 0026d89b srliw a7,a3,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31041 (discriminator 3) + c002401c: 0026d89b srliw a7,a3,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31049 (discriminator 3) FALSE, cv->is_arg, - c0023e50: 0016d71b srliw a4,a3,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31043 (discriminator 3) + c0024020: 0016d71b srliw a4,a3,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31051 (discriminator 3) cv->is_lexical, cv->var_kind); - c0023e54: 0046d69b srliw a3,a3,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31040 (discriminator 3) + c0024024: 0046d69b srliw a3,a3,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31048 (discriminator 3) get_closure_var2(ctx, s, fd, - c0023e58: 8abd andi a3,a3,15 - c0023e5a: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31043 (discriminator 3) + c0024028: 8abd andi a3,a3,15 + c002402a: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31051 (discriminator 3) cv->is_lexical, cv->var_kind); - c0023e5c: 439c lw a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31040 (discriminator 3) + c002402c: 439c lw a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31048 (discriminator 3) get_closure_var2(ctx, s, fd, - c0023e5e: 0018f893 andi a7,a7,1 - c0023e62: 8b05 andi a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31043 (discriminator 3) + c002402e: 0018f893 andi a7,a7,1 + c0024032: 8b05 andi a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31051 (discriminator 3) cv->is_lexical, cv->var_kind); - c0023e64: 0037d79b srliw a5,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31040 (discriminator 3) + c0024034: 0037d79b srliw a5,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31048 (discriminator 3) get_closure_var2(ctx, s, fd, - c0023e68: 8b85 andi a5,a5,1 - c0023e6a: e03e sd a5,0(sp) - c0023e6c: 4681 li a3,0 - c0023e6e: 87ce mv a5,s3 - c0023e70: 854a mv a0,s2 - c0023e72: ca0fe0ef jal ra,c0022312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31038 (discriminator 3) + c0024038: 8b85 andi a5,a5,1 + c002403a: e03e sd a5,0(sp) + c002403c: 4681 li a3,0 + c002403e: 87ce mv a5,s3 + c0024040: 854a mv a0,s2 + c0024042: ca0fe0ef jal ra,c00224e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31046 (discriminator 3) for (idx = 0; idx < fd->closure_var_count; idx++) { - c0023e76: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31038 (discriminator 1) - c0023e78: 1984a783 lw a5,408(s1) - c0023e7c: faf9cee3 blt s3,a5,c0023e38 - c0023e80: bbc5 j c0023c70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31047 -} - c0023e82: 60e6 ld ra,88(sp) - c0023e84: 6446 ld s0,80(sp) - c0023e86: 64a6 ld s1,72(sp) - c0023e88: 6906 ld s2,64(sp) - c0023e8a: 79e2 ld s3,56(sp) - c0023e8c: 7a42 ld s4,48(sp) - c0023e8e: 7aa2 ld s5,40(sp) - c0023e90: 7b02 ld s6,32(sp) - c0023e92: 6be2 ld s7,24(sp) - c0023e94: 6c42 ld s8,16(sp) - c0023e96: 6125 addi sp,sp,96 - c0023e98: 8082 ret - -00000000c0023e9a : + c0024046: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31046 (discriminator 1) + c0024048: 1984a783 lw a5,408(s1) + c002404c: faf9cee3 blt s3,a5,c0024008 + c0024050: bbc5 j c0023e40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31055 +} + c0024052: 60e6 ld ra,88(sp) + c0024054: 6446 ld s0,80(sp) + c0024056: 64a6 ld s1,72(sp) + c0024058: 6906 ld s2,64(sp) + c002405a: 79e2 ld s3,56(sp) + c002405c: 7a42 ld s4,48(sp) + c002405e: 7aa2 ld s5,40(sp) + c0024060: 7b02 ld s6,32(sp) + c0024062: 6be2 ld s7,24(sp) + c0024064: 6c42 ld s8,16(sp) + c0024066: 6125 addi sp,sp,96 + c0024068: 8082 ret + +00000000c002406a : ss_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32956 -{ - c0023e9a: 1101 addi sp,sp,-32 - c0023e9c: e822 sd s0,16(sp) - c0023e9e: e426 sd s1,8(sp) - c0023ea0: ec06 sd ra,24(sp) - c0023ea2: 84b2 mv s1,a2 - c0023ea4: 8636 mv a2,a3 - c0023ea6: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32957 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32964 +{ + c002406a: 1101 addi sp,sp,-32 + c002406c: e822 sd s0,16(sp) + c002406e: e426 sd s1,8(sp) + c0024070: ec06 sd ra,24(sp) + c0024072: 84b2 mv s1,a2 + c0024074: 8636 mv a2,a3 + c0024076: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32965 if ((unsigned)pos >= s->bc_len) { - c0023ea8: 419c lw a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32956 + c0024078: 419c lw a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32964 { - c0023eaa: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32957 + c002407a: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32965 if ((unsigned)pos >= s->bc_len) { - c0023eac: 00f4eb63 bltu s1,a5,c0023ec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32958 + c002407c: 00f4eb63 bltu s1,a5,c0024092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32966 JS_ThrowInternalError(ctx, "bytecode buffer overflow (op=%d, pc=%d)", op, pos); - c0023eb0: 86a6 mv a3,s1 - c0023eb2: 0003b597 auipc a1,0x3b - c0023eb6: bae58593 addi a1,a1,-1106 # c005ea60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32964 + c0024080: 86a6 mv a3,s1 + c0024082: 0003b597 auipc a1,0x3b + c0024086: c3e58593 addi a1,a1,-962 # c005ecc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32972 JS_ThrowInternalError(ctx, "stack overflow (op=%d, pc=%d)", op, pos); - c0023eba: acbf00ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32990 + c002408a: 9e9f00ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32998 return -1; - c0023ebe: 557d li a0,-1 - c0023ec0: a879 j c0023f5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32961 + c002408e: 557d li a0,-1 + c0024090: a879 j c002412e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32969 if (stack_len > s->stack_len_max) { - c0023ec2: 405c lw a5,4(s0) - c0023ec4: 882a mv a6,a0 - c0023ec6: 85ba mv a1,a4 - c0023ec8: 00e7dd63 bge a5,a4,c0023ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32963 + c0024092: 405c lw a5,4(s0) + c0024094: 882a mv a6,a0 + c0024096: 85ba mv a1,a4 + c0024098: 00e7dd63 bge a5,a4,c00240b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32971 if (s->stack_len_max > JS_STACK_SIZE_MAX) { - c0023ecc: 67c1 lui a5,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32962 + c002409c: 67c1 lui a5,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32970 s->stack_len_max = stack_len; - c0023ece: c058 sw a4,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32963 + c002409e: c058 sw a4,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32971 if (s->stack_len_max > JS_STACK_SIZE_MAX) { - c0023ed0: 17f9 addi a5,a5,-2 - c0023ed2: 00e7d863 bge a5,a4,c0023ee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32964 + c00240a0: 17f9 addi a5,a5,-2 + c00240a2: 00e7d863 bge a5,a4,c00240b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32972 JS_ThrowInternalError(ctx, "stack overflow (op=%d, pc=%d)", op, pos); - c0023ed6: 86a6 mv a3,s1 - c0023ed8: 0003b597 auipc a1,0x3b - c0023edc: bb058593 addi a1,a1,-1104 # c005ea88 - c0023ee0: bfe9 j c0023eba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32968 + c00240a6: 86a6 mv a3,s1 + c00240a8: 0003b597 auipc a1,0x3b + c00240ac: c4058593 addi a1,a1,-960 # c005ece8 + c00240b0: bfe9 j c002408a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32976 if (s->stack_level_tab[pos] != 0xffff) { - c0023ee2: 6418 ld a4,8(s0) - c0023ee4: 00149793 slli a5,s1,0x1 - c0023ee8: 97ba add a5,a5,a4 - c0023eea: 0007d603 lhu a2,0(a5) # 10000 <__clzdi2-0xbfff0000> - c0023eee: 6741 lui a4,0x10 - c0023ef0: 177d addi a4,a4,-1 - c0023ef2: 02e60c63 beq a2,a4,c0023f2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32970 + c00240b2: 6418 ld a4,8(s0) + c00240b4: 00149793 slli a5,s1,0x1 + c00240b8: 97ba add a5,a5,a4 + c00240ba: 0007d603 lhu a2,0(a5) # 10000 <__clzdi2-0xbfff0000> + c00240be: 6741 lui a4,0x10 + c00240c0: 177d addi a4,a4,-1 + c00240c2: 02e60c63 beq a2,a4,c00240fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32978 if (s->stack_level_tab[pos] != stack_len) { - c0023ef6: 00b60c63 beq a2,a1,c0023f0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32971 + c00240c6: 00b60c63 beq a2,a1,c00240de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32979 JS_ThrowInternalError(ctx, "inconsistent stack size: %d %d (pc=%d)", - c0023efa: 86ae mv a3,a1 - c0023efc: 8726 mv a4,s1 - c0023efe: 0003b597 auipc a1,0x3b - c0023f02: baa58593 addi a1,a1,-1110 # c005eaa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32975 + c00240ca: 86ae mv a3,a1 + c00240cc: 8726 mv a4,s1 + c00240ce: 0003b597 auipc a1,0x3b + c00240d2: c3a58593 addi a1,a1,-966 # c005ed08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32983 JS_ThrowInternalError(ctx, "inconsistent catch position: %d %d (pc=%d)", - c0023f06: 8542 mv a0,a6 - c0023f08: a7df00ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32977 + c00240d6: 8542 mv a0,a6 + c00240d8: 99bf00ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32985 return -1; - c0023f0c: bf4d j c0023ebe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32974 + c00240dc: bf4d j c002408e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32982 } else if (s->catch_pos_tab[pos] != catch_pos) { - c0023f0e: 681c ld a5,16(s0) - c0023f10: 00249713 slli a4,s1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32979 + c00240de: 681c ld a5,16(s0) + c00240e0: 00249713 slli a4,s1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32987 return 0; - c0023f14: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32974 + c00240e4: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32982 } else if (s->catch_pos_tab[pos] != catch_pos) { - c0023f16: 97ba add a5,a5,a4 - c0023f18: 4390 lw a2,0(a5) - c0023f1a: 04d60263 beq a2,a3,c0023f5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32975 + c00240e6: 97ba add a5,a5,a4 + c00240e8: 4390 lw a2,0(a5) + c00240ea: 04d60263 beq a2,a3,c002412e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32983 JS_ThrowInternalError(ctx, "inconsistent catch position: %d %d (pc=%d)", - c0023f1e: 8726 mv a4,s1 - c0023f20: 0003b597 auipc a1,0x3b - c0023f24: bb058593 addi a1,a1,-1104 # c005ead0 - c0023f28: bff9 j c0023f06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32984 + c00240ee: 8726 mv a4,s1 + c00240f0: 0003b597 auipc a1,0x3b + c00240f4: c4058593 addi a1,a1,-960 # c005ed30 + c00240f8: bff9 j c00240d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32992 s->stack_level_tab[pos] = stack_len; - c0023f2a: 00b79023 sh a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32985 + c00240fa: 00b79023 sh a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32993 s->catch_pos_tab[pos] = catch_pos; - c0023f2e: 681c ld a5,16(s0) - c0023f30: 00249713 slli a4,s1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32988 + c00240fe: 681c ld a5,16(s0) + c0024100: 00249713 slli a4,s1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32996 if (js_resize_array(ctx, (void **)&s->pc_stack, sizeof(s->pc_stack[0]), - c0023f34: 4611 li a2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32985 + c0024104: 4611 li a2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32993 s->catch_pos_tab[pos] = catch_pos; - c0023f36: 97ba add a5,a5,a4 - c0023f38: c394 sw a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32988 + c0024106: 97ba add a5,a5,a4 + c0024108: c394 sw a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32996 if (js_resize_array(ctx, (void **)&s->pc_stack, sizeof(s->pc_stack[0]), - c0023f3a: 5018 lw a4,32(s0) - c0023f3c: 02440693 addi a3,s0,36 - c0023f40: 01840593 addi a1,s0,24 - c0023f44: 2705 addiw a4,a4,1 - c0023f46: 8542 mv a0,a6 - c0023f48: fc8f30ef jal ra,c0017710 - c0023f4c: f92d bnez a0,c0023ebe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32991 + c002410a: 5018 lw a4,32(s0) + c002410c: 02440693 addi a3,s0,36 + c0024110: 01840593 addi a1,s0,24 + c0024114: 2705 addiw a4,a4,1 + c0024116: 8542 mv a0,a6 + c0024118: fc8f30ef jal ra,c00178e0 + c002411c: f92d bnez a0,c002408e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32999 s->pc_stack[s->pc_stack_len++] = pos; - c0023f4e: 501c lw a5,32(s0) - c0023f50: 6c18 ld a4,24(s0) - c0023f52: 0017869b addiw a3,a5,1 - c0023f56: 078a slli a5,a5,0x2 - c0023f58: d014 sw a3,32(s0) - c0023f5a: 97ba add a5,a5,a4 - c0023f5c: c384 sw s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32993 -} - c0023f5e: 60e2 ld ra,24(sp) - c0023f60: 6442 ld s0,16(sp) - c0023f62: 64a2 ld s1,8(sp) - c0023f64: 6105 addi sp,sp,32 - c0023f66: 8082 ret - -00000000c0023f68 : + c002411e: 501c lw a5,32(s0) + c0024120: 6c18 ld a4,24(s0) + c0024122: 0017869b addiw a3,a5,1 + c0024126: 078a slli a5,a5,0x2 + c0024128: d014 sw a3,32(s0) + c002412a: 97ba add a5,a5,a4 + c002412c: c384 sw s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33001 +} + c002412e: 60e2 ld ra,24(sp) + c0024130: 6442 ld s0,16(sp) + c0024132: 64a2 ld s1,8(sp) + c0024134: 6105 addi sp,sp,32 + c0024136: 8082 ret + +00000000c0024138 : js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33235 -{ - c0023f68: 716d addi sp,sp,-272 - c0023f6a: e222 sd s0,256(sp) - c0023f6c: f56e sd s11,168(sp) - c0023f6e: e606 sd ra,264(sp) - c0023f70: fda6 sd s1,248(sp) - c0023f72: f9ca sd s2,240(sp) - c0023f74: f5ce sd s3,232(sp) - c0023f76: f1d2 sd s4,224(sp) - c0023f78: edd6 sd s5,216(sp) - c0023f7a: e9da sd s6,208(sp) - c0023f7c: e5de sd s7,200(sp) - c0023f7e: e1e2 sd s8,192(sp) - c0023f80: fd66 sd s9,184(sp) - c0023f82: f96a sd s10,176(sp) - c0023f84: 8daa mv s11,a0 - c0023f86: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33243 +{ + c0024138: 716d addi sp,sp,-272 + c002413a: e222 sd s0,256(sp) + c002413c: f56e sd s11,168(sp) + c002413e: e606 sd ra,264(sp) + c0024140: fda6 sd s1,248(sp) + c0024142: f9ca sd s2,240(sp) + c0024144: f5ce sd s3,232(sp) + c0024146: f1d2 sd s4,224(sp) + c0024148: edd6 sd s5,216(sp) + c002414a: e9da sd s6,208(sp) + c002414c: e5de sd s7,200(sp) + c002414e: e1e2 sd s8,192(sp) + c0024150: fd66 sd s9,184(sp) + c0024152: f96a sd s10,176(sp) + c0024154: 8daa mv s11,a0 + c0024156: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 for (scope = 0; scope < fd->scope_count; scope++) { - c0023f88: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33245 + c0024158: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33253 fd->scopes[scope].first = -1; - c0023f8a: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33244 (discriminator 1) + c002415a: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 (discriminator 1) for (scope = 0; scope < fd->scope_count; scope++) { - c0023f8c: 0ec42703 lw a4,236(s0) - c0023f90: 00e7c963 blt a5,a4,c0023fa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33247 + c002415c: 0ec42703 lw a4,236(s0) + c0024160: 00e7c963 blt a5,a4,c0024172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33255 if (fd->has_parameter_expressions) { - c0023f94: 487c lw a5,84(s0) - c0023f96: c781 beqz a5,c0023f9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33249 + c0024164: 487c lw a5,84(s0) + c0024166: c781 beqz a5,c002416e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33257 fd->scopes[ARG_SCOPE_INDEX].first = ARG_SCOPE_END; - c0023f98: 787c ld a5,240(s0) - c0023f9a: 5779 li a4,-2 - c0023f9c: c7d8 sw a4,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33244 (discriminator 1) + c0024168: 787c ld a5,240(s0) + c002416a: 5779 li a4,-2 + c002416c: c7d8 sw a4,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 (discriminator 1) for (scope = 0; scope < fd->scope_count; scope++) { - c0023f9e: 4781 li a5,0 - c0023fa0: a035 j c0023fcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33245 (discriminator 3) + c002416e: 4781 li a5,0 + c0024170: a035 j c002419c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33253 (discriminator 3) fd->scopes[scope].first = -1; - c0023fa2: 7878 ld a4,240(s0) - c0023fa4: 00379613 slli a2,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33244 (discriminator 3) + c0024172: 7878 ld a4,240(s0) + c0024174: 00379613 slli a2,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 (discriminator 3) for (scope = 0; scope < fd->scope_count; scope++) { - c0023fa8: 2785 addiw a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33245 (discriminator 3) + c0024178: 2785 addiw a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33253 (discriminator 3) fd->scopes[scope].first = -1; - c0023faa: 9732 add a4,a4,a2 - c0023fac: c354 sw a3,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33244 (discriminator 3) - for (scope = 0; scope < fd->scope_count; scope++) { - c0023fae: bff9 j c0023f8c + c002417a: 9732 add a4,a4,a2 + c002417c: c354 sw a3,4(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 (discriminator 3) + for (scope = 0; scope < fd->scope_count; scope++) { + c002417e: bff9 j c002415c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33260 (discriminator 3) JSVarDef *vd = &fd->vars[idx]; - c0023fb0: 6854 ld a3,144(s0) - c0023fb2: 00479713 slli a4,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33253 (discriminator 3) + c0024180: 6854 ld a3,144(s0) + c0024182: 00479713 slli a4,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33261 (discriminator 3) vd->scope_next = fd->scopes[vd->scope_level].first; - c0023fb6: 7870 ld a2,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33252 (discriminator 3) + c0024186: 7870 ld a2,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33260 (discriminator 3) JSVarDef *vd = &fd->vars[idx]; - c0023fb8: 96ba add a3,a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33253 (discriminator 3) + c0024188: 96ba add a3,a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33261 (discriminator 3) vd->scope_next = fd->scopes[vd->scope_level].first; - c0023fba: 42d8 lw a4,4(a3) - c0023fbc: 070e slli a4,a4,0x3 - c0023fbe: 963a add a2,a2,a4 - c0023fc0: 4250 lw a2,4(a2) - c0023fc2: c690 sw a2,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33254 (discriminator 3) + c002418a: 42d8 lw a4,4(a3) + c002418c: 070e slli a4,a4,0x3 + c002418e: 963a add a2,a2,a4 + c0024190: 4250 lw a2,4(a2) + c0024192: c690 sw a2,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33262 (discriminator 3) fd->scopes[vd->scope_level].first = idx; - c0023fc4: 7874 ld a3,240(s0) - c0023fc6: 9736 add a4,a4,a3 - c0023fc8: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33251 (discriminator 3) + c0024194: 7874 ld a3,240(s0) + c0024196: 9736 add a4,a4,a3 + c0024198: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33259 (discriminator 3) for (idx = 0; idx < fd->var_count; idx++) { - c0023fca: 2785 addiw a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33251 (discriminator 1) - c0023fcc: 09c42703 lw a4,156(s0) - c0023fd0: fee7c0e3 blt a5,a4,c0023fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33256 + c002419a: 2785 addiw a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33259 (discriminator 1) + c002419c: 09c42703 lw a4,156(s0) + c00241a0: fee7c0e3 blt a5,a4,c0024180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33264 for (scope = 2; scope < fd->scope_count; scope++) { - c0023fd4: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33256 (discriminator 1) - c0023fd6: 0ec42783 lw a5,236(s0) - c0023fda: 28f74463 blt a4,a5,c0024262 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33261 + c00241a4: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33264 (discriminator 1) + c00241a6: 0ec42783 lw a5,236(s0) + c00241aa: 28f74463 blt a4,a5,c0024432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33269 for (idx = 0; idx < fd->var_count; idx++) { - c0023fde: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33263 + c00241ae: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33271 if (vd->scope_next < 0 && vd->scope_level > 1) { - c0023fe0: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33261 (discriminator 1) + c00241b0: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33269 (discriminator 1) for (idx = 0; idx < fd->var_count; idx++) { - c0023fe2: 09c42783 lw a5,156(s0) - c0023fe6: 28f6cc63 blt a3,a5,c002427e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33273 + c00241b2: 09c42783 lw a5,156(s0) + c00241b6: 28f6cc63 blt a3,a5,c002444e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33281 if (fd->has_eval_call) - c0023fea: 4c7c lw a5,92(s0) - c0023fec: c789 beqz a5,c0023ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33274 + c00241ba: 4c7c lw a5,92(s0) + c00241bc: c789 beqz a5,c00241c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33282 add_eval_variables(ctx, fd); - c0023fee: 85a2 mv a1,s0 - c0023ff0: 856e mv a0,s11 - c0023ff2: b13ff0ef jal ra,c0023b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33277 + c00241be: 85a2 mv a1,s0 + c00241c0: 856e mv a0,s11 + c00241c2: b13ff0ef jal ra,c0023cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33285 if (fd->module) { - c0023ff6: 21843903 ld s2,536(s0) + c00241c6: 21843903 ld s2,536(s0) add_module_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33216 for(i = 0; i < fd->global_var_count; i++) { - c0023ffa: 4481 li s1,0 + c00241ca: 4481 li s1,0 js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33285 if (fd->module) { - c0023ffc: 2e091063 bnez s2,c00242dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33283 + c00241cc: 2e091063 bnez s2,c00244ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33291 list_for_each_safe(el, el1, &fd->child_list) { - c0024000: 700c ld a1,32(s0) - c0024002: 01840993 addi s3,s0,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33290 + c00241d0: 700c ld a1,32(s0) + c00241d2: 01840993 addi s3,s0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33298 if (JS_IsException(func_obj)) - c0024006: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33283 + c00241d6: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33291 list_for_each_safe(el, el1, &fd->child_list) { - c0024008: 0085b903 ld s2,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33283 (discriminator 2) - c002400c: 33359e63 bne a1,s3,c0024348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33309 + c00241d8: 0085b903 ld s2,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33291 (discriminator 2) + c00241dc: 33359e63 bne a1,s3,c0024518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33317 if (resolve_variables(ctx, fd)) - c0024010: 85a2 mv a1,s0 - c0024012: 856e mv a0,s11 - c0024014: e9ffe0ef jal ra,c0022eb2 - c0024018: 8b2a mv s6,a0 - c002401a: 30051363 bnez a0,c0024320 + c00241e0: 85a2 mv a1,s0 + c00241e2: 856e mv a0,s11 + c00241e4: e9ffe0ef jal ra,c0023082 + c00241e8: 8b2a mv s6,a0 + c00241ea: 30051363 bnez a0,c00244f0 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32073 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32081 label_slots = s->label_slots; - c002401e: 17043783 ld a5,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32077 + c00241ee: 17043783 ld a5,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32085 cc.bc_buf = bc_buf = s->byte_code.buf; - c0024022: 13043b83 ld s7,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32078 + c00241f2: 13043b83 ld s7,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32086 cc.bc_len = bc_len = s->byte_code.size; - c0024026: 13842c83 lw s9,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32073 + c00241f6: 13842c83 lw s9,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32081 label_slots = s->label_slots; - c002402a: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32075 + c00241fa: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32083 line_num = s->line_num; - c002402c: 1d442783 lw a5,468(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32079 + c00241fc: 1d442783 lw a5,468(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32087 js_dbuf_init(ctx, &bc_out); - c0024030: 188c addi a1,sp,112 - c0024032: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32075 + c0024200: 188c addi a1,sp,112 + c0024202: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32083 line_num = s->line_num; - c0024034: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32077 + c0024204: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32085 cc.bc_buf = bc_buf = s->byte_code.buf; - c0024036: e4de sd s7,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32078 + c0024206: e4de sd s7,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32086 cc.bc_len = bc_len = s->byte_code.size; - c0024038: c8e6 sw s9,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32079 + c0024208: c8e6 sw s9,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32087 js_dbuf_init(ctx, &bc_out); - c002403a: 828e10ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32082 + c002420a: e59e00ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32090 if (s->jump_size) { - c002403e: 1b042583 lw a1,432(s0) - c0024042: 34059663 bnez a1,c002438e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32089 + c002420e: 1b042583 lw a1,432(s0) + c0024212: 34059663 bnez a1,c002455e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32097 if (s->line_number_size && !(s->js_mode & JS_MODE_STRIP)) { - c0024046: 1c042583 lw a1,448(s0) - c002404a: 34059b63 bnez a1,c00243a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32098 + c0024216: 1c042583 lw a1,448(s0) + c002421a: 34059b63 bnez a1,c0024570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32106 if (s->home_object_var_idx >= 0) { - c002404e: 0d842783 lw a5,216(s0) - c0024052: 0207c163 bltz a5,c0024074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32099 + c002421e: 0d842783 lw a5,216(s0) + c0024222: 0207c163 bltz a5,c0024244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32107 dbuf_putc(&bc_out, OP_special_object); - c0024056: 45b1 li a1,12 - c0024058: 1888 addi a0,sp,112 - c002405a: 4e9230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32100 + c0024226: 45b1 li a1,12 + c0024228: 1888 addi a0,sp,112 + c002422a: 4e9230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32108 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_HOME_OBJECT); - c002405e: 4591 li a1,4 - c0024060: 1888 addi a0,sp,112 - c0024062: 4e1230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32101 + c002422e: 4591 li a1,4 + c0024230: 1888 addi a0,sp,112 + c0024232: 4e1230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32109 put_short_code(&bc_out, OP_put_loc, s->home_object_var_idx); - c0024066: 0d842603 lw a2,216(s0) - c002406a: 05900593 li a1,89 - c002406e: 1888 addi a0,sp,112 - c0024070: ad0e10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32104 + c0024236: 0d842603 lw a2,216(s0) + c002423a: 05900593 li a1,89 + c002423e: 1888 addi a0,sp,112 + c0024240: 9eee10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32112 if (s->this_active_func_var_idx >= 0) { - c0024074: 0d442783 lw a5,212(s0) - c0024078: 0207c163 bltz a5,c002409a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32105 + c0024244: 0d442783 lw a5,212(s0) + c0024248: 0207c163 bltz a5,c002426a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32113 dbuf_putc(&bc_out, OP_special_object); - c002407c: 45b1 li a1,12 - c002407e: 1888 addi a0,sp,112 - c0024080: 4c3230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32106 + c002424c: 45b1 li a1,12 + c002424e: 1888 addi a0,sp,112 + c0024250: 4c3230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32114 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_THIS_FUNC); - c0024084: 4589 li a1,2 - c0024086: 1888 addi a0,sp,112 - c0024088: 4bb230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32107 + c0024254: 4589 li a1,2 + c0024256: 1888 addi a0,sp,112 + c0024258: 4bb230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32115 put_short_code(&bc_out, OP_put_loc, s->this_active_func_var_idx); - c002408c: 0d442603 lw a2,212(s0) - c0024090: 05900593 li a1,89 - c0024094: 1888 addi a0,sp,112 - c0024096: aaae10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32110 + c002425c: 0d442603 lw a2,212(s0) + c0024260: 05900593 li a1,89 + c0024264: 1888 addi a0,sp,112 + c0024266: 9c8e10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32118 if (s->new_target_var_idx >= 0) { - c002409a: 0d042783 lw a5,208(s0) - c002409e: 0207c163 bltz a5,c00240c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32111 + c002426a: 0d042783 lw a5,208(s0) + c002426e: 0207c163 bltz a5,c0024290 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32119 dbuf_putc(&bc_out, OP_special_object); - c00240a2: 45b1 li a1,12 - c00240a4: 1888 addi a0,sp,112 - c00240a6: 49d230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32112 + c0024272: 45b1 li a1,12 + c0024274: 1888 addi a0,sp,112 + c0024276: 49d230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32120 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_NEW_TARGET); - c00240aa: 458d li a1,3 - c00240ac: 1888 addi a0,sp,112 - c00240ae: 495230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32113 + c002427a: 458d li a1,3 + c002427c: 1888 addi a0,sp,112 + c002427e: 495230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32121 put_short_code(&bc_out, OP_put_loc, s->new_target_var_idx); - c00240b2: 0d042603 lw a2,208(s0) - c00240b6: 05900593 li a1,89 - c00240ba: 1888 addi a0,sp,112 - c00240bc: a84e10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32117 + c0024282: 0d042603 lw a2,208(s0) + c0024286: 05900593 li a1,89 + c002428a: 1888 addi a0,sp,112 + c002428c: 9a2e10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32125 if (s->this_var_idx >= 0) { - c00240c0: 0cc42783 lw a5,204(s0) - c00240c4: 0007cf63 bltz a5,c00240e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32118 + c0024290: 0cc42783 lw a5,204(s0) + c0024294: 0007cf63 bltz a5,c00242b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32126 if (s->is_derived_class_constructor) { - c00240c8: 5c3c lw a5,120(s0) - c00240ca: 2e078e63 beqz a5,c00243c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32119 + c0024298: 5c3c lw a5,120(s0) + c002429a: 2e078e63 beqz a5,c0024596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32127 dbuf_putc(&bc_out, OP_set_loc_uninitialized); - c00240ce: 06100593 li a1,97 - c00240d2: 1888 addi a0,sp,112 - c00240d4: 46f230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32120 + c002429e: 06100593 li a1,97 + c00242a2: 1888 addi a0,sp,112 + c00242a4: 46f230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32128 dbuf_put_u16(&bc_out, s->this_var_idx); - c00240d8: 0cc45583 lhu a1,204(s0) - c00240dc: 1888 addi a0,sp,112 - c00240de: a14e10ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32127 + c00242a8: 0cc45583 lhu a1,204(s0) + c00242ac: 1888 addi a0,sp,112 + c00242ae: 932e10ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32135 if (s->arguments_var_idx >= 0) { - c00240e2: 0bc42783 lw a5,188(s0) - c00240e6: 0407c163 bltz a5,c0024128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32128 + c00242b2: 0bc42783 lw a5,188(s0) + c00242b6: 0407c163 bltz a5,c00242f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32136 if ((s->js_mode & JS_MODE_STRICT) || !s->has_simple_parameter_list) { - c00240ea: 08644783 lbu a5,134(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32129 + c00242ba: 08644783 lbu a5,134(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32137 dbuf_putc(&bc_out, OP_special_object); - c00240ee: 45b1 li a1,12 - c00240f0: 1888 addi a0,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32128 + c00242be: 45b1 li a1,12 + c00242c0: 1888 addi a0,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32136 if ((s->js_mode & JS_MODE_STRICT) || !s->has_simple_parameter_list) { - c00240f2: 8b85 andi a5,a5,1 - c00240f4: e781 bnez a5,c00240fc - c00240f6: 483c lw a5,80(s0) - c00240f8: 2e079363 bnez a5,c00243de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32129 + c00242c2: 8b85 andi a5,a5,1 + c00242c4: e781 bnez a5,c00242cc + c00242c6: 483c lw a5,80(s0) + c00242c8: 2e079363 bnez a5,c00245ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32137 dbuf_putc(&bc_out, OP_special_object); - c00240fc: 447230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32130 + c00242cc: 447230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32138 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_ARGUMENTS); - c0024100: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32133 + c00242d0: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32141 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_MAPPED_ARGUMENTS); - c0024102: 1888 addi a0,sp,112 - c0024104: 43f230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32135 + c00242d2: 1888 addi a0,sp,112 + c00242d4: 43f230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32143 if (s->arguments_arg_idx >= 0) - c0024108: 0c042603 lw a2,192(s0) - c002410c: 00064763 bltz a2,c002411a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32136 + c00242d8: 0c042603 lw a2,192(s0) + c00242dc: 00064763 bltz a2,c00242ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32144 put_short_code(&bc_out, OP_set_loc, s->arguments_arg_idx); - c0024110: 05a00593 li a1,90 - c0024114: 1888 addi a0,sp,112 - c0024116: a2ae10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32137 + c00242e0: 05a00593 li a1,90 + c00242e4: 1888 addi a0,sp,112 + c00242e6: 948e10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32145 put_short_code(&bc_out, OP_put_loc, s->arguments_var_idx); - c002411a: 0bc42603 lw a2,188(s0) - c002411e: 05900593 li a1,89 - c0024122: 1888 addi a0,sp,112 - c0024124: a1ce10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32140 + c00242ea: 0bc42603 lw a2,188(s0) + c00242ee: 05900593 li a1,89 + c00242f2: 1888 addi a0,sp,112 + c00242f4: 93ae10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32148 if (s->func_var_idx >= 0) { - c0024128: 0c442783 lw a5,196(s0) - c002412c: 0207c163 bltz a5,c002414e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32141 + c00242f8: 0c442783 lw a5,196(s0) + c00242fc: 0207c163 bltz a5,c002431e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32149 dbuf_putc(&bc_out, OP_special_object); - c0024130: 45b1 li a1,12 - c0024132: 1888 addi a0,sp,112 - c0024134: 40f230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32142 + c0024300: 45b1 li a1,12 + c0024302: 1888 addi a0,sp,112 + c0024304: 40f230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32150 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_THIS_FUNC); - c0024138: 4589 li a1,2 - c002413a: 1888 addi a0,sp,112 - c002413c: 407230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32143 + c0024308: 4589 li a1,2 + c002430a: 1888 addi a0,sp,112 + c002430c: 407230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32151 put_short_code(&bc_out, OP_put_loc, s->func_var_idx); - c0024140: 0c442603 lw a2,196(s0) - c0024144: 05900593 li a1,89 - c0024148: 1888 addi a0,sp,112 - c002414a: 9f6e10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32146 + c0024310: 0c442603 lw a2,196(s0) + c0024314: 05900593 li a1,89 + c0024318: 1888 addi a0,sp,112 + c002431a: 914e10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32154 if (s->var_object_idx >= 0) { - c002414e: 0b442783 lw a5,180(s0) - c0024152: 0207c163 bltz a5,c0024174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32147 + c002431e: 0b442783 lw a5,180(s0) + c0024322: 0207c163 bltz a5,c0024344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32155 dbuf_putc(&bc_out, OP_special_object); - c0024156: 45b1 li a1,12 - c0024158: 1888 addi a0,sp,112 - c002415a: 3e9230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32148 + c0024326: 45b1 li a1,12 + c0024328: 1888 addi a0,sp,112 + c002432a: 3e9230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32156 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_VAR_OBJECT); - c002415e: 4595 li a1,5 - c0024160: 1888 addi a0,sp,112 - c0024162: 3e1230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32149 + c002432e: 4595 li a1,5 + c0024330: 1888 addi a0,sp,112 + c0024332: 3e1230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32157 put_short_code(&bc_out, OP_put_loc, s->var_object_idx); - c0024166: 0b442603 lw a2,180(s0) - c002416a: 05900593 li a1,89 - c002416e: 1888 addi a0,sp,112 - c0024170: 9d0e10ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32151 + c0024336: 0b442603 lw a2,180(s0) + c002433a: 05900593 li a1,89 + c002433e: 1888 addi a0,sp,112 + c0024340: 8eee10ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32159 if (s->arg_var_object_idx >= 0) { - c0024174: 0b842783 lw a5,184(s0) - c0024178: 0207c163 bltz a5,c002419a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32152 + c0024344: 0b842783 lw a5,184(s0) + c0024348: 0207c163 bltz a5,c002436a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32160 dbuf_putc(&bc_out, OP_special_object); - c002417c: 45b1 li a1,12 - c002417e: 1888 addi a0,sp,112 - c0024180: 3c3230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32153 + c002434c: 45b1 li a1,12 + c002434e: 1888 addi a0,sp,112 + c0024350: 3c3230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32161 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_VAR_OBJECT); - c0024184: 4595 li a1,5 - c0024186: 1888 addi a0,sp,112 - c0024188: 3bb230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32154 + c0024354: 4595 li a1,5 + c0024356: 1888 addi a0,sp,112 + c0024358: 3bb230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 put_short_code(&bc_out, OP_put_loc, s->arg_var_object_idx); - c002418c: 0b842603 lw a2,184(s0) - c0024190: 05900593 li a1,89 - c0024194: 1888 addi a0,sp,112 - c0024196: 9aae10ef jal ra,c0005340 - c002419a: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32342 + c002435c: 0b842603 lw a2,184(s0) + c0024360: 05900593 li a1,89 + c0024364: 1888 addi a0,sp,112 + c0024366: 8c8e10ef jal ra,c000542e + c002436a: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32350 jp->size = 2; - c002419c: 4d09 li s10,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32157 + c002436c: 4d09 li s10,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32165 for (pos = 0; pos < bc_len; pos = pos_next) { - c002419e: 259a4463 blt s4,s9,c00243e6 - c00241a2: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32838 + c002436e: 259a4463 blt s4,s9,c00245b6 + c0024372: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32846 for(i = 0; i < s->label_count; i++) { - c00241a4: 17c42703 lw a4,380(s0) - c00241a8: 01078a93 addi s5,a5,16 - c00241ac: 4781 li a5,0 - c00241ae: 00e7d463 bge a5,a4,c00241b6 - c00241b2: 7a50006f j c0025156 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32845 + c0024374: 17c42703 lw a4,380(s0) + c0024378: 01078a93 addi s5,a5,16 + c002437c: 4781 li a5,0 + c002437e: 00e7d463 bge a5,a4,c0024386 + c0024382: 7a50006f j c0025326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32853 for (i = 0, jp = s->jump_slots; i < s->jump_count; i++, jp++) { - c00241b6: 1a843483 ld s1,424(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32844 + c0024386: 1a843483 ld s1,424(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32852 int patch_offsets = 0; - c00241ba: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32845 + c002438a: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32853 for (i = 0, jp = s->jump_slots; i < s->jump_count; i++, jp++) { - c00241bc: 4a01 li s4,0 - c00241be: 04c1 addi s1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32851 - switch (op = jp->op) { - c00241c0: 06c00c13 li s8,108 + c002438c: 4a01 li s4,0 + c002438e: 04c1 addi s1,s1,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32859 + switch (op = jp->op) { + c0024390: 06c00c13 li s8,108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32867 diff = s->label_slots[jp->label].addr - pos; - c00241c4: 4ce1 li s9,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32860 + c0024394: 4ce1 li s9,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32868 if (diff >= -128 && diff <= 127 + delta) { - c00241c6: f8000d13 li s10,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32872 + c0024396: f8000d13 li s10,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32880 jp->size = 2; - c00241ca: 4309 li t1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32874 + c002439a: 4309 li t1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32882 bc_out.buf[pos - 1] = jp->op = OP_goto16; - c00241cc: 0ed00b93 li s7,237 - c00241d0: 5835 li a6,-19 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32862 + c002439c: 0ed00b93 li s7,237 + c00243a0: 5835 li a6,-19 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32870 jp->size = 1; - c00241d2: 4885 li a7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32845 + c00243a2: 4885 li a7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32853 for (i = 0, jp = s->jump_slots; i < s->jump_count; i++, jp++) { - c00241d4: 1b442783 lw a5,436(s0) - c00241d8: 00fa5463 bge s4,a5,c00241e0 - c00241dc: 7950006f j c0025170 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32898 + c00243a4: 1b442783 lw a5,436(s0) + c00243a8: 00fa5463 bge s4,a5,c00243b0 + c00243ac: 7950006f j c0025340 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32906 if (patch_offsets) { - c00241e0: 000a8f63 beqz s5,c00241fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32901 + c00243b0: 000a8f63 beqz s5,c00243ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32909 for (j = 0, jp1 = s->jump_slots; j < s->jump_count; j++, jp1++) { - c00241e4: 1a843583 ld a1,424(s0) - c00241e8: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32902 + c00243b4: 1a843583 ld a1,424(s0) + c00243b8: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32910 int diff1 = s->label_slots[jp1->label].addr - jp1->pos; - c00241ea: 4861 li a6,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32903 + c00243ba: 4861 li a6,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32911 switch (jp1->size) { - c00241ec: 4889 li a7,2 - c00241ee: 4311 li t1,4 - c00241f0: 4e05 li t3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32901 + c00243bc: 4889 li a7,2 + c00243be: 4311 li t1,4 + c00243c0: 4e05 li t3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32909 for (j = 0, jp1 = s->jump_slots; j < s->jump_count; j++, jp1++) { - c00241f2: 1b442783 lw a5,436(s0) - c00241f6: 00f55463 bge a0,a5,c00241fe - c00241fa: 0a60106f j c00252a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32917 + c00243c2: 1b442783 lw a5,436(s0) + c00243c6: 00f55463 bge a0,a5,c00243ce + c00243ca: 0a60106f j c0025470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32925 js_free(ctx, s->jump_slots); - c00241fe: 1a843583 ld a1,424(s0) - c0024202: 856e mv a0,s11 - c0024204: c37e20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32920 + c00243ce: 1a843583 ld a1,424(s0) + c00243d2: 856e mv a0,s11 + c00243d4: b55e20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32928 js_free(ctx, s->label_slots); - c0024208: 17043583 ld a1,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32918 + c00243d8: 17043583 ld a1,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32926 s->jump_slots = NULL; - c002420c: 1a043423 sd zero,424(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32920 + c00243dc: 1a043423 sd zero,424(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32928 js_free(ctx, s->label_slots); - c0024210: 856e mv a0,s11 - c0024212: c29e20ef jal ra,c0006e3a + c00243e0: 856e mv a0,s11 + c00243e2: b47e20ef jal ra,c0006f28 compute_pc2line_info(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31870 if (!(s->js_mode & JS_MODE_STRIP) && s->line_number_slots) { - c0024216: 08644783 lbu a5,134(s0) + c00243e6: 08644783 lbu a5,134(s0) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32921 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32929 s->label_slots = NULL; - c002421a: 16043823 sd zero,368(s0) + c00243ea: 16043823 sd zero,368(s0) compute_pc2line_info(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31870 if (!(s->js_mode & JS_MODE_STRIP) && s->line_number_slots) { - c002421e: 8b89 andi a5,a5,2 - c0024220: e399 bnez a5,c0024226 - c0024222: 0e40106f j c0025306 + c00243ee: 8b89 andi a5,a5,2 + c00243f0: e399 bnez a5,c00243f6 + c00243f2: 0e40106f j c00254d6 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32932 js_free(ctx, s->line_number_slots); - c0024226: 1b843583 ld a1,440(s0) - c002422a: 856e mv a0,s11 - c002422c: c0fe20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32927 + c00243f6: 1b843583 ld a1,440(s0) + c00243fa: 856e mv a0,s11 + c00243fc: b2de20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32935 dbuf_free(&s->byte_code); - c0024230: 13040513 addi a0,s0,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32925 + c0024400: 13040513 addi a0,s0,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32933 s->line_number_slots = NULL; - c0024234: 1a043c23 sd zero,440(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32927 + c0024404: 1a043c23 sd zero,440(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32935 dbuf_free(&s->byte_code); - c0024238: e82a sd a0,16(sp) - c002423a: 3cd230ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32928 + c0024408: e82a sd a0,16(sp) + c002440a: 3cd230ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32936 s->byte_code = bc_out; - c002423e: 6542 ld a0,16(sp) - c0024240: 03000613 li a2,48 - c0024244: 188c addi a1,sp,112 - c0024246: 794320ef jal ra,c00569da + c002440e: 6542 ld a0,16(sp) + c0024410: 03000613 li a2,48 + c0024414: 188c addi a1,sp,112 + c0024416: 794320ef jal ra,c0056baa dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 return s->error; - c002424a: 14842483 lw s1,328(s0) + c002441a: 14842483 lw s1,328(s0) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32929 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32937 s->use_short_opcodes = TRUE; - c002424e: 4785 li a5,1 - c0024250: 16f42423 sw a5,360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32930 + c002441e: 4785 li a5,1 + c0024420: 16f42423 sw a5,360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32938 if (dbuf_error(&s->byte_code)) { - c0024254: e099 bnez s1,c002425a - c0024256: 1520106f j c00253a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32931 + c0024424: e099 bnez s1,c002442a + c0024426: 1520106f j c0025578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32939 JS_ThrowOutOfMemory(ctx); - c002425a: 856e mv a0,s11 - c002425c: 9c1f00ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32932 + c002442a: 856e mv a0,s11 + c002442c: 8dff00ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32940 return -1; - c0024260: a0c1 j c0024320 + c0024430: a0c1 j c00244f0 js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33257 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33265 JSVarScope *sd = &fd->scopes[scope]; - c0024262: 7874 ld a3,240(s0) - c0024264: 00371793 slli a5,a4,0x3 - c0024268: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33258 + c0024432: 7874 ld a3,240(s0) + c0024434: 00371793 slli a5,a4,0x3 + c0024438: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33266 if (sd->first < 0) - c002426a: 43d0 lw a2,4(a5) - c002426c: 00065763 bgez a2,c002427a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33259 + c002443a: 43d0 lw a2,4(a5) + c002443c: 00065763 bgez a2,c002444a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33267 sd->first = fd->scopes[sd->parent].first; - c0024270: 4390 lw a2,0(a5) - c0024272: 060e slli a2,a2,0x3 - c0024274: 96b2 add a3,a3,a2 - c0024276: 42d4 lw a3,4(a3) - c0024278: c3d4 sw a3,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33256 (discriminator 2) + c0024440: 4390 lw a2,0(a5) + c0024442: 060e slli a2,a2,0x3 + c0024444: 96b2 add a3,a3,a2 + c0024446: 42d4 lw a3,4(a3) + c0024448: c3d4 sw a3,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33264 (discriminator 2) for (scope = 2; scope < fd->scope_count; scope++) { - c002427a: 2705 addiw a4,a4,1 - c002427c: bba9 j c0023fd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33262 + c002444a: 2705 addiw a4,a4,1 + c002444c: bba9 j c00241a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33270 JSVarDef *vd = &fd->vars[idx]; - c002427e: 685c ld a5,144(s0) - c0024280: 00469713 slli a4,a3,0x4 - c0024284: 973e add a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33263 + c002444e: 685c ld a5,144(s0) + c0024450: 00469713 slli a4,a3,0x4 + c0024454: 973e add a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33271 if (vd->scope_next < 0 && vd->scope_level > 1) { - c0024286: 471c lw a5,8(a4) - c0024288: 0007dd63 bgez a5,c00242a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33263 (discriminator 1) - c002428c: 435c lw a5,4(a4) - c002428e: 00f5da63 bge a1,a5,c00242a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33264 + c0024456: 471c lw a5,8(a4) + c0024458: 0007dd63 bgez a5,c0024472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33271 (discriminator 1) + c002445c: 435c lw a5,4(a4) + c002445e: 00f5da63 bge a1,a5,c0024472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33272 scope = fd->scopes[vd->scope_level].parent; - c0024292: 7870 ld a2,240(s0) - c0024294: 078e slli a5,a5,0x3 - c0024296: 97b2 add a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33265 + c0024462: 7870 ld a2,240(s0) + c0024464: 078e slli a5,a5,0x3 + c0024466: 97b2 add a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33273 vd->scope_next = fd->scopes[scope].first; - c0024298: 439c lw a5,0(a5) - c002429a: 078e slli a5,a5,0x3 - c002429c: 963e add a2,a2,a5 - c002429e: 425c lw a5,4(a2) - c00242a0: c71c sw a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33261 (discriminator 2) + c0024468: 439c lw a5,0(a5) + c002446a: 078e slli a5,a5,0x3 + c002446c: 963e add a2,a2,a5 + c002446e: 425c lw a5,4(a2) + c0024470: c71c sw a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33269 (discriminator 2) for (idx = 0; idx < fd->var_count; idx++) { - c00242a2: 2685 addiw a3,a3,1 - c00242a4: bb3d j c0023fe2 + c0024472: 2685 addiw a3,a3,1 + c0024474: bb3d j c00241b2 add_module_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33209 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33217 hf = &fd->global_vars[i]; - c00242a6: 12843703 ld a4,296(s0) - c00242aa: 00449793 slli a5,s1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33210 + c0024476: 12843703 ld a4,296(s0) + c002447a: 00449793 slli a5,s1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33218 if (add_closure_var(ctx, fd, TRUE, FALSE, i, hf->var_name, hf->is_const, - c00242ae: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33209 + c002447e: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33217 hf = &fd->global_vars[i]; - c00242b0: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33211 + c0024480: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33219 hf->is_lexical, FALSE) < 0) - c00242b2: 0047a803 lw a6,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33210 + c0024482: 0047a803 lw a6,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33218 if (add_closure_var(ctx, fd, TRUE, FALSE, i, hf->var_name, hf->is_const, - c00242b6: 47dc lw a5,12(a5) - c00242b8: 8726 mv a4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33211 + c0024486: 47dc lw a5,12(a5) + c0024488: 8726 mv a4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33219 hf->is_lexical, FALSE) < 0) - c00242ba: 0018589b srliw a7,a6,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33210 + c002448a: 0018589b srliw a7,a6,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33218 if (add_closure_var(ctx, fd, TRUE, FALSE, i, hf->var_name, hf->is_const, - c00242be: 0028581b srliw a6,a6,0x2 - c00242c2: e002 sd zero,0(sp) - c00242c4: 0018f893 andi a7,a7,1 - c00242c8: 00187813 andi a6,a6,1 - c00242cc: 4605 li a2,1 - c00242ce: 85a2 mv a1,s0 - c00242d0: 856e mv a0,s11 - c00242d2: f7ffd0ef jal ra,c0022250 - c00242d6: 04054563 bltz a0,c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33208 - for(i = 0; i < fd->global_var_count; i++) { - c00242da: 2485 addiw s1,s1,1 - c00242dc: 11c42783 lw a5,284(s0) - c00242e0: fcf4c3e3 blt s1,a5,c00242a6 + c002448e: 0028581b srliw a6,a6,0x2 + c0024492: e002 sd zero,0(sp) + c0024494: 0018f893 andi a7,a7,1 + c0024498: 00187813 andi a6,a6,1 + c002449c: 4605 li a2,1 + c002449e: 85a2 mv a1,s0 + c00244a0: 856e mv a0,s11 + c00244a2: f7ffd0ef jal ra,c0022420 + c00244a6: 04054563 bltz a0,c00244f0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33216 + for(i = 0; i < fd->global_var_count; i++) { + c00244aa: 2485 addiw s1,s1,1 + c00244ac: 11c42783 lw a5,284(s0) + c00244b0: fcf4c3e3 blt s1,a5,c0024476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33224 for(i = 0; i < m->export_entries_count; i++) { - c00242e4: 4681 li a3,0 - c00242e6: 03092783 lw a5,48(s2) - c00242ea: d0f6dbe3 bge a3,a5,c0024000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33217 + c00244b4: 4681 li a3,0 + c00244b6: 03092783 lw a5,48(s2) + c00244ba: d0f6dbe3 bge a3,a5,c00241d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33225 me = &m->export_entries[i]; - c00242ee: 02893703 ld a4,40(s2) - c00242f2: 00569793 slli a5,a3,0x5 - c00242f6: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33218 + c00244be: 02893703 ld a4,40(s2) + c00244c2: 00569793 slli a5,a3,0x5 + c00244c6: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33226 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c00242f8: 4b98 lw a4,16(a5) - c00242fa: e729 bnez a4,c0024344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33219 + c00244c8: 4b98 lw a4,16(a5) + c00244ca: e729 bnez a4,c0024514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33227 idx = find_closure_var(ctx, fd, me->local_name); - c00242fc: 4bcc lw a1,20(a5) + c00244cc: 4bcc lw a1,20(a5) find_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30008 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30016 for(i = 0; i < s->closure_var_count; i++) { - c00242fe: 19842803 lw a6,408(s0) - c0024302: 0007051b sext.w a0,a4 - c0024306: 03054563 blt a0,a6,c0024330 + c00244ce: 19842803 lw a6,408(s0) + c00244d2: 0007051b sext.w a0,a4 + c00244d6: 03054563 blt a0,a6,c0024500 add_module_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33221 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33229 JS_ThrowSyntaxErrorAtom(ctx, "exported variable '%s' does not exist", - c002430a: 00039697 auipc a3,0x39 - c002430e: cc668693 addi a3,a3,-826 # c005cfd0 - c0024312: 0003a617 auipc a2,0x3a - c0024316: 7ee60613 addi a2,a2,2030 # c005eb00 - c002431a: 856e mv a0,s11 - c002431c: e1bee0ef jal ra,c0013136 <__JS_ThrowSyntaxErrorAtom> + c00244da: 00039697 auipc a3,0x39 + c00244de: d2668693 addi a3,a3,-730 # c005d200 + c00244e2: 0003b617 auipc a2,0x3b + c00244e6: 87e60613 addi a2,a2,-1922 # c005ed60 + c00244ea: 856e mv a0,s11 + c00244ec: d39ee0ef jal ra,c0013224 <__JS_ThrowSyntaxErrorAtom> js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33465 js_free_function_def(ctx, fd); - c0024320: 85a2 mv a1,s0 - c0024322: 856e mv a0,s11 - c0024324: c3fe40ef jal ra,c0008f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33458 + c00244f0: 85a2 mv a1,s0 + c00244f2: 856e mv a0,s11 + c00244f4: b5de40ef jal ra,c0009050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33466 return JS_EXCEPTION; - c0024328: 4799 li a5,6 - c002432a: f882 sd zero,112(sp) - c002432c: 7b60106f j c0025ae2 + c00244f8: 4799 li a5,6 + c00244fa: f882 sd zero,112(sp) + c00244fc: 7b60106f j c0025cb2 find_closure_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:30018 if (cv->var_name == var_name) - c0024330: 1a043603 ld a2,416(s0) - c0024334: 00371893 slli a7,a4,0x3 - c0024338: 0705 addi a4,a4,1 - c002433a: 9646 add a2,a2,a7 - c002433c: 4250 lw a2,4(a2) - c002433e: fcc592e3 bne a1,a2,c0024302 + c0024500: 1a043603 ld a2,416(s0) + c0024504: 00371893 slli a7,a4,0x3 + c0024508: 0705 addi a4,a4,1 + c002450a: 9646 add a2,a2,a7 + c002450c: 4250 lw a2,4(a2) + c002450e: fcc592e3 bne a1,a2,c00244d2 add_module_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33225 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33233 me->u.local.var_idx = idx; - c0024342: c388 sw a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33216 + c0024512: c388 sw a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33224 for(i = 0; i < m->export_entries_count; i++) { - c0024344: 2685 addiw a3,a3,1 - c0024346: b745 j c00242e6 + c0024514: 2685 addiw a3,a3,1 + c0024516: b745 j c00244b6 js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33296 cpool_idx = fd1->parent_cpool_idx; - c0024348: fe85a483 lw s1,-24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33289 + c0024518: fe85a483 lw s1,-24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33297 func_obj = js_create_function(ctx, fd1); - c002434c: 856e mv a0,s11 - c002434e: fd858593 addi a1,a1,-40 - c0024352: c17ff0ef jal ra,c0023f68 - c0024356: fc2a sd a0,56(sp) - c0024358: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33290 + c002451c: 856e mv a0,s11 + c002451e: fd858593 addi a1,a1,-40 + c0024522: c17ff0ef jal ra,c0024138 + c0024526: fc2a sd a0,56(sp) + c0024528: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33298 if (JS_IsException(func_obj)) - c002435a: 0005879b sext.w a5,a1 - c002435e: fd4781e3 beq a5,s4,c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33293 + c002452a: 0005879b sext.w a5,a1 + c002452e: fd4781e3 beq a5,s4,c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33301 assert(cpool_idx >= 0); - c0024362: 0004dc63 bgez s1,c002437a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33293 (discriminator 1) - c0024366: 65a1 lui a1,0x8 - c0024368: 4601 li a2,0 - c002436a: 20d58593 addi a1,a1,525 # 820d <__clzdi2-0xbfff7df3> + c0024532: 0004dc63 bgez s1,c002454a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33301 (discriminator 1) + c0024536: 65a1 lui a1,0x8 + c0024538: 4601 li a2,0 + c002453a: 21558593 addi a1,a1,533 # 8215 <__clzdi2-0xbfff7deb> resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32173 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32181 assert(label >= 0 && label < s->label_count); - c002436e: 00038517 auipc a0,0x38 - c0024372: 70a50513 addi a0,a0,1802 # c005ca78 - c0024376: 6a22f0ef jal ra,c0053a18 <__assert> + c002453e: 00038517 auipc a0,0x38 + c0024542: 70a50513 addi a0,a0,1802 # c005cc48 + c0024546: 6a22f0ef jal ra,c0053be8 <__assert> js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33294 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33302 (discriminator 2) fd->cpool[cpool_idx] = func_obj; - c002437a: 18843783 ld a5,392(s0) - c002437e: 0492 slli s1,s1,0x4 - c0024380: 97a6 add a5,a5,s1 - c0024382: e78c sd a1,8(a5) - c0024384: e388 sd a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33283 (discriminator 2) + c002454a: 18843783 ld a5,392(s0) + c002454e: 0492 slli s1,s1,0x4 + c0024550: 97a6 add a5,a5,s1 + c0024552: e78c sd a1,8(a5) + c0024554: e388 sd a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33291 (discriminator 2) list_for_each_safe(el, el1, &fd->child_list) { - c0024386: 85ca mv a1,s2 - c0024388: 00893903 ld s2,8(s2) - c002438c: b141 j c002400c + c0024556: 85ca mv a1,s2 + c0024558: 00893903 ld s2,8(s2) + c002455c: b141 j c00241dc resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32083 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32091 s->jump_slots = js_mallocz(s->ctx, sizeof(*s->jump_slots) * s->jump_size); - c002438e: 6008 ld a0,0(s0) - c0024390: 0592 slli a1,a1,0x4 - c0024392: 94bf10ef jal ra,c0015cdc - c0024396: 1aa43423 sd a0,424(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32084 + c002455e: 6008 ld a0,0(s0) + c0024560: 0592 slli a1,a1,0x4 + c0024562: 94bf10ef jal ra,c0015eac + c0024566: 1aa43423 sd a0,424(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32092 if (s->jump_slots == NULL) - c002439a: ca0516e3 bnez a0,c0024046 - c002439e: b749 j c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32089 + c002456a: ca0516e3 bnez a0,c0024216 + c002456e: b749 j c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32097 if (s->line_number_size && !(s->js_mode & JS_MODE_STRIP)) { - c00243a0: 08644783 lbu a5,134(s0) - c00243a4: 8b89 andi a5,a5,2 - c00243a6: ca0794e3 bnez a5,c002404e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32090 + c0024570: 08644783 lbu a5,134(s0) + c0024574: 8b89 andi a5,a5,2 + c0024576: ca0794e3 bnez a5,c002421e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32098 s->line_number_slots = js_mallocz(s->ctx, sizeof(*s->line_number_slots) * s->line_number_size); - c00243aa: 6008 ld a0,0(s0) - c00243ac: 058e slli a1,a1,0x3 - c00243ae: 92ff10ef jal ra,c0015cdc - c00243b2: 1aa43c23 sd a0,440(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32091 + c002457a: 6008 ld a0,0(s0) + c002457c: 058e slli a1,a1,0x3 + c002457e: 92ff10ef jal ra,c0015eac + c0024582: 1aa43c23 sd a0,440(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32099 if (s->line_number_slots == NULL) - c00243b6: d52d beqz a0,c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32093 + c0024586: d52d beqz a0,c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32101 s->line_number_last = s->line_num; - c00243b8: 1d442783 lw a5,468(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32094 + c0024588: 1d442783 lw a5,468(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32102 s->line_number_last_pc = 0; - c00243bc: 1c042623 sw zero,460(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32093 + c002458c: 1c042623 sw zero,460(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32101 s->line_number_last = s->line_num; - c00243c0: 1cf42423 sw a5,456(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32094 + c0024590: 1cf42423 sw a5,456(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32102 s->line_number_last_pc = 0; - c00243c4: b169 j c002404e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32122 + c0024594: b169 j c002421e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32130 dbuf_putc(&bc_out, OP_push_this); - c00243c6: 45a1 li a1,8 - c00243c8: 1888 addi a0,sp,112 - c00243ca: 179230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32123 + c0024596: 45a1 li a1,8 + c0024598: 1888 addi a0,sp,112 + c002459a: 179230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32131 put_short_code(&bc_out, OP_put_loc, s->this_var_idx); - c00243ce: 0cc42603 lw a2,204(s0) - c00243d2: 05900593 li a1,89 - c00243d6: 1888 addi a0,sp,112 - c00243d8: f69e00ef jal ra,c0005340 - c00243dc: b319 j c00240e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32132 + c002459e: 0cc42603 lw a2,204(s0) + c00245a2: 05900593 li a1,89 + c00245a6: 1888 addi a0,sp,112 + c00245a8: e87e00ef jal ra,c000542e + c00245ac: b319 j c00242b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32140 dbuf_putc(&bc_out, OP_special_object); - c00243de: 165230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32133 + c00245ae: 165230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32141 dbuf_putc(&bc_out, OP_SPECIAL_OBJECT_MAPPED_ARGUMENTS); - c00243e2: 4585 li a1,1 - c00243e4: bb39 j c0024102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32159 + c00245b2: 4585 li a1,1 + c00245b4: bb39 j c00242d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32167 op = bc_buf[pos]; - c00243e6: 014b8ab3 add s5,s7,s4 - c00243ea: 000ac983 lbu s3,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32160 + c00245b6: 014b8ab3 add s5,s7,s4 + c00245ba: 000ac983 lbu s3,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32168 len = opcode_info[op].size; - c00243ee: 00042717 auipc a4,0x42 - c00243f2: 72270713 addi a4,a4,1826 # c0066b10 - c00243f6: 00299793 slli a5,s3,0x2 - c00243fa: 97ba add a5,a5,a4 - c00243fc: 0007cc03 lbu s8,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c00245be: 00042717 auipc a4,0x42 + c00245c2: 7b270713 addi a4,a4,1970 # c0066d70 + c00245c6: 00299793 slli a5,s3,0x2 + c00245ca: 97ba add a5,a5,a4 + c00245cc: 0007cc03 lbu s8,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c0024400: 07900793 li a5,121 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32159 + c00245d0: 07900793 li a5,121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32167 op = bc_buf[pos]; - c0024404: 0009891b sext.w s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32161 + c00245d4: 0009891b sext.w s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32169 pos_next = pos + len; - c0024408: 014c04bb addw s1,s8,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c00245d8: 014c04bb addw s1,s8,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c002440c: 0b37e663 bltu a5,s3,c00244b8 - c0024410: 05700793 li a5,87 - c0024414: 0337e363 bltu a5,s3,c002443a - c0024418: 03000693 li a3,48 - c002441c: 0736e163 bltu a3,s3,c002447e - c0024420: 02099e63 bnez s3,c002445c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32831 + c00245dc: 0b37e663 bltu a5,s3,c0024688 + c00245e0: 05700793 li a5,87 + c00245e4: 0337e363 bltu a5,s3,c002460a + c00245e8: 03000693 li a3,48 + c00245ec: 0736e163 bltu a3,s3,c002464e + c00245f0: 02099e63 bnez s3,c002462c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32839 add_pc2line_info(s, bc_out.size, line_num); - c0024424: 5642 lw a2,48(sp) - c0024426: 55e6 lw a1,120(sp) - c0024428: 8522 mv a0,s0 - c002442a: 8e2e00ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32832 + c00245f4: 5642 lw a2,48(sp) + c00245f6: 55e6 lw a1,120(sp) + c00245f8: 8522 mv a0,s0 + c00245fa: f13df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32840 dbuf_put(&bc_out, bc_buf + pos, len); - c002442e: 8662 mv a2,s8 - c0024430: 85d6 mv a1,s5 - c0024432: 1888 addi a0,sp,112 - c0024434: 07d230ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32833 + c00245fe: 8662 mv a2,s8 + c0024600: 85d6 mv a1,s5 + c0024602: 1888 addi a0,sp,112 + c0024604: 07d230ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32841 break; - c0024438: aafd j c0024636 - c002443a: fa89879b addiw a5,s3,-88 - c002443e: 0ff7f793 zext.b a5,a5 - c0024442: 02100713 li a4,33 - c0024446: fcf76fe3 bltu a4,a5,c0024424 - c002444a: 0003a717 auipc a4,0x3a - c002444e: 73e70713 addi a4,a4,1854 # c005eb88 - c0024452: 078a slli a5,a5,0x2 - c0024454: 97ba add a5,a5,a4 - c0024456: 439c lw a5,0(a5) - c0024458: 97ba add a5,a5,a4 - c002445a: 8782 jr a5 - c002445c: fff9879b addiw a5,s3,-1 - c0024460: 0ff7f793 zext.b a5,a5 - c0024464: 02f00713 li a4,47 - c0024468: faf76ee3 bltu a4,a5,c0024424 - c002446c: 0003a717 auipc a4,0x3a - c0024470: 7a470713 addi a4,a4,1956 # c005ec10 - c0024474: 078a slli a5,a5,0x2 - c0024476: 97ba add a5,a5,a4 - c0024478: 439c lw a5,0(a5) - c002447a: 97ba add a5,a5,a4 - c002447c: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c0024608: aafd j c0024806 + c002460a: fa89879b addiw a5,s3,-88 + c002460e: 0ff7f793 zext.b a5,a5 + c0024612: 02100713 li a4,33 + c0024616: fcf76fe3 bltu a4,a5,c00245f4 + c002461a: 0003a717 auipc a4,0x3a + c002461e: 7ce70713 addi a4,a4,1998 # c005ede8 + c0024622: 078a slli a5,a5,0x2 + c0024624: 97ba add a5,a5,a4 + c0024626: 439c lw a5,0(a5) + c0024628: 97ba add a5,a5,a4 + c002462a: 8782 jr a5 + c002462c: fff9879b addiw a5,s3,-1 + c0024630: 0ff7f793 zext.b a5,a5 + c0024634: 02f00713 li a4,47 + c0024638: faf76ee3 bltu a4,a5,c00245f4 + c002463c: 0003b717 auipc a4,0x3b + c0024640: 83470713 addi a4,a4,-1996 # c005ee70 + c0024644: 078a slli a5,a5,0x2 + c0024646: 97ba add a5,a5,a4 + c0024648: 439c lw a5,0(a5) + c002464a: 97ba add a5,a5,a4 + c002464c: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c002447e: 04100793 li a5,65 - c0024482: faf991e3 bne s3,a5,c0024424 + c002464e: 04100793 li a5,65 + c0024652: faf991e3 bne s3,a5,c00245f4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0024486: 002ac703 lbu a4,2(s5) - c002448a: 001ac783 lbu a5,1(s5) - c002448e: 0722 slli a4,a4,0x8 - c0024490: 8f5d or a4,a4,a5 - c0024492: 003ac783 lbu a5,3(s5) - c0024496: 07c2 slli a5,a5,0x10 - c0024498: 8f5d or a4,a4,a5 - c002449a: 004ac783 lbu a5,4(s5) - c002449e: 07e2 slli a5,a5,0x18 - c00244a0: 8fd9 or a5,a5,a4 + c0024656: 002ac703 lbu a4,2(s5) + c002465a: 001ac783 lbu a5,1(s5) + c002465e: 0722 slli a4,a4,0x8 + c0024660: 8f5d or a4,a4,a5 + c0024662: 003ac783 lbu a5,3(s5) + c0024666: 07c2 slli a5,a5,0x10 + c0024668: 8f5d or a4,a4,a5 + c002466a: 004ac783 lbu a5,4(s5) + c002466e: 07e2 slli a5,a5,0x18 + c0024670: 8fd9 or a5,a5,a4 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32515 if (atom == JS_ATOM_length) { - c00244a2: 2781 sext.w a5,a5 - c00244a4: f8d790e3 bne a5,a3,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32509 + c0024672: 2781 sext.w a5,a5 + c0024674: f8d790e3 bne a5,a3,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32517 add_pc2line_info(s, bc_out.size, line_num); - c00244a8: 55e6 lw a1,120(sp) - c00244aa: 5642 lw a2,48(sp) - c00244ac: 8522 mv a0,s0 - c00244ae: 85ee00ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32510 + c0024678: 55e6 lw a1,120(sp) + c002467a: 5642 lw a2,48(sp) + c002467c: 8522 mv a0,s0 + c002467e: e8fdf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32518 dbuf_putc(&bc_out, OP_get_length); - c00244b2: 0e900593 li a1,233 - c00244b6: a6f9 j c0024884 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c0024682: 0e900593 li a1,233 + c0024686: a6f9 j c0024a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c00244b8: 0b600793 li a5,182 - c00244bc: 10f98b63 beq s3,a5,c00245d2 - c00244c0: 0f37e563 bltu a5,s3,c00245aa - c00244c4: 09200793 li a5,146 - c00244c8: 0737e863 bltu a5,s3,c0024538 - c00244cc: 09000793 li a5,144 - c00244d0: f537fae3 bgeu a5,s3,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32752 + c0024688: 0b600793 li a5,182 + c002468c: 10f98b63 beq s3,a5,c00247a2 + c0024690: 0f37e563 bltu a5,s3,c002477a + c0024694: 09200793 li a5,146 + c0024698: 0737e863 bltu a5,s3,c0024708 + c002469c: 09000793 li a5,144 + c00246a0: f537fae3 bgeu a5,s3,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32760 if (code_match(&cc, pos_next, M3(OP_put_loc, OP_put_arg, OP_put_var_ref), -1, OP_drop, -1)) { - c00244d4: 005f6637 lui a2,0x5f6 - c00244d8: 57fd li a5,-1 - c00244da: 4739 li a4,14 - c00244dc: 56fd li a3,-1 - c00244de: c5960613 addi a2,a2,-935 # 5f5c59 <__clzdi2-0xbfa0a3a7> - c00244e2: 85a6 mv a1,s1 - c00244e4: 00a8 addi a0,sp,72 - c00244e6: b8fe00ef jal ra,c0005074 - c00244ea: 3a0508e3 beqz a0,c002509a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32753 + c00246a4: 005f6637 lui a2,0x5f6 + c00246a8: 57fd li a5,-1 + c00246aa: 4739 li a4,14 + c00246ac: 56fd li a3,-1 + c00246ae: c5960613 addi a2,a2,-935 # 5f5c59 <__clzdi2-0xbfa0a3a7> + c00246b2: 85a6 mv a1,s1 + c00246b4: 00a8 addi a0,sp,72 + c00246b6: 9bfe00ef jal ra,c0005074 + c00246ba: 3a0508e3 beqz a0,c002526a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32761 if (cc.line_num >= 0) line_num = cc.line_num; - c00244ee: 47e6 lw a5,88(sp) - c00244f0: 0007c363 bltz a5,c00244f6 - c00244f4: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32754 + c00246be: 47e6 lw a5,88(sp) + c00246c0: 0007c363 bltz a5,c00246c6 + c00246c4: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32762 op1 = cc.op; - c00244f6: 4976 lw s2,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32755 + c00246c6: 4976 lw s2,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32763 idx = cc.idx; - c00244f8: 5a06 lw s4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32756 + c00246c8: 5a06 lw s4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32764 pos_next = cc.pos; - c00244fa: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32757 + c00246ca: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32765 if (code_match(&cc, cc.pos, op1 - 1, idx, -1)) { - c00244fc: 577d li a4,-1 - c00244fe: 86d2 mv a3,s4 - c0024500: fff9061b addiw a2,s2,-1 - c0024504: 85a6 mv a1,s1 - c0024506: 00a8 addi a0,sp,72 - c0024508: b6de00ef jal ra,c0005074 - c002450c: c519 beqz a0,c002451a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32758 + c00246cc: 577d li a4,-1 + c00246ce: 86d2 mv a3,s4 + c00246d0: fff9061b addiw a2,s2,-1 + c00246d4: 85a6 mv a1,s1 + c00246d6: 00a8 addi a0,sp,72 + c00246d8: 99de00ef jal ra,c0005074 + c00246dc: c519 beqz a0,c00246ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32766 if (cc.line_num >= 0) line_num = cc.line_num; - c002450e: 47e6 lw a5,88(sp) - c0024510: 0007c363 bltz a5,c0024516 - c0024514: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32760 + c00246de: 47e6 lw a5,88(sp) + c00246e0: 0007c363 bltz a5,c00246e6 + c00246e4: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32768 pos_next = cc.pos; - c0024516: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32759 + c00246e6: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32767 op1 += 1; /* put_x(n) get_x(n) -> set_x(n) */ - c0024518: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32762 + c00246e8: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32770 add_pc2line_info(s, bc_out.size, line_num); - c002451a: 5642 lw a2,48(sp) - c002451c: 55e6 lw a1,120(sp) - c002451e: 8522 mv a0,s0 - c0024520: feddf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32763 + c00246ea: 5642 lw a2,48(sp) + c00246ec: 55e6 lw a1,120(sp) + c00246ee: 8522 mv a0,s0 + c00246f0: e1ddf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32771 dbuf_putc(&bc_out, OP_dec + (op - OP_post_dec)); - c0024524: ffe9859b addiw a1,s3,-2 - c0024528: 0ff5f593 zext.b a1,a1 - c002452c: 1888 addi a0,sp,112 - c002452e: 015230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32764 + c00246f4: ffe9859b addiw a1,s3,-2 + c00246f8: 0ff5f593 zext.b a1,a1 + c00246fc: 1888 addi a0,sp,112 + c00246fe: 015230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32772 put_short_code(&bc_out, op1, idx); - c0024532: 8652 mv a2,s4 - c0024534: 31b0006f j c002504e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c0024702: 8652 mv a2,s4 + c0024704: 31b0006f j c002521e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c0024538: 09800793 li a5,152 - c002453c: eef994e3 bne s3,a5,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32791 + c0024708: 09800793 li a5,152 + c002470c: eef994e3 bne s3,a5,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32799 if (code_match(&cc, pos_next, OP_push_atom_value, M4(OP_strict_eq, OP_strict_neq, OP_eq, OP_neq), -1)) { - c0024540: abaab6b7 lui a3,0xabaab - c0024544: 577d li a4,-1 - c0024546: dac68693 addi a3,a3,-596 # ffffffffabaaadac <_ebss+0xfffffffeeb9a9c86> - c002454a: 4611 li a2,4 - c002454c: 85a6 mv a1,s1 - c002454e: 00a8 addi a0,sp,72 - c0024550: b25e00ef jal ra,c0005074 - c0024554: ec0508e3 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32792 + c0024710: abaab6b7 lui a3,0xabaab + c0024714: 577d li a4,-1 + c0024716: dac68693 addi a3,a3,-596 # ffffffffabaaadac <_ebss+0xfffffffeeb9a9c86> + c002471a: 4611 li a2,4 + c002471c: 85a6 mv a1,s1 + c002471e: 00a8 addi a0,sp,72 + c0024720: 955e00ef jal ra,c0005074 + c0024724: ec0508e3 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32800 if (cc.line_num >= 0) line_num = cc.line_num; - c0024558: 47e6 lw a5,88(sp) - c002455a: 0007c363 bltz a5,c0024560 - c002455e: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32793 + c0024728: 47e6 lw a5,88(sp) + c002472a: 0007c363 bltz a5,c0024730 + c002472e: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32801 int op1 = (cc.op == OP_strict_eq || cc.op == OP_eq) ? OP_strict_eq : OP_strict_neq; - c0024560: 47f6 lw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32795 + c0024730: 47f6 lw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32803 switch (cc.atom) { - c0024562: 5736 lw a4,108(sp) - c0024564: 46ed li a3,27 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32793 + c0024732: 5736 lw a4,108(sp) + c0024734: 46ed li a3,27 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32801 int op1 = (cc.op == OP_strict_eq || cc.op == OP_eq) ? OP_strict_eq : OP_strict_neq; - c0024566: f567879b addiw a5,a5,-170 - c002456a: 9bf5 andi a5,a5,-3 - c002456c: 2781 sext.w a5,a5 - c002456e: 00f037b3 snez a5,a5 - c0024572: 0ac78793 addi a5,a5,172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32795 + c0024736: f567879b addiw a5,a5,-170 + c002473a: 9bf5 andi a5,a5,-3 + c002473c: 2781 sext.w a5,a5 + c002473e: 00f037b3 snez a5,a5 + c0024742: 0ac78793 addi a5,a5,172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32803 switch (cc.atom) { - c0024576: 38d70ce3 beq a4,a3,c002510e - c002457a: 04600693 li a3,70 - c002457e: 0f400913 li s2,244 - c0024582: ead711e3 bne a4,a3,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32805 + c0024746: 38d70ce3 beq a4,a3,c00252de + c002474a: 04600693 li a3,70 + c002474e: 0f400913 li s2,244 + c0024752: ead711e3 bne a4,a3,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32813 if (op1 == OP_strict_eq) { - c0024586: 0ac00713 li a4,172 - c002458a: 38e796e3 bne a5,a4,c0025116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32806 + c0024756: 0ac00713 li a4,172 + c002475a: 38e796e3 bne a5,a4,c00252e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32814 add_pc2line_info(s, bc_out.size, line_num); - c002458e: 5642 lw a2,48(sp) - c0024590: 55e6 lw a1,120(sp) - c0024592: 8522 mv a0,s0 - c0024594: f79df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32807 + c002475e: 5642 lw a2,48(sp) + c0024760: 55e6 lw a1,120(sp) + c0024762: 8522 mv a0,s0 + c0024764: da9df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32815 dbuf_putc(&bc_out, op2); - c0024598: 85ca mv a1,s2 - c002459a: 1888 addi a0,sp,112 - c002459c: 7a6230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32808 + c0024768: 85ca mv a1,s2 + c002476a: 1888 addi a0,sp,112 + c002476c: 7a6230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32816 JS_FreeAtom(ctx, cc.atom); - c00245a0: 55b6 lw a1,108(sp) - c00245a2: 856e mv a0,s11 - c00245a4: f69e20ef jal ra,c000750c - c00245a8: ad49 j c0024c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32162 + c0024770: 55b6 lw a1,108(sp) + c0024772: 856e mv a0,s11 + c0024774: e87e20ef jal ra,c00075fa + c0024778: ad49 j c0024e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32170 switch(op) { - c00245aa: 0c600793 li a5,198 - c00245ae: e6f99be3 bne s3,a5,c0024424 + c002477a: 0c600793 li a5,198 + c002477e: e6f99be3 bne s3,a5,c00245f4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00245b2: 002ac703 lbu a4,2(s5) - c00245b6: 001ac783 lbu a5,1(s5) - c00245ba: 0722 slli a4,a4,0x8 - c00245bc: 8f5d or a4,a4,a5 - c00245be: 003ac783 lbu a5,3(s5) - c00245c2: 07c2 slli a5,a5,0x10 - c00245c4: 8f5d or a4,a4,a5 - c00245c6: 004ac783 lbu a5,4(s5) - c00245ca: 07e2 slli a5,a5,0x18 - c00245cc: 8fd9 or a5,a5,a4 + c0024782: 002ac703 lbu a4,2(s5) + c0024786: 001ac783 lbu a5,1(s5) + c002478a: 0722 slli a4,a4,0x8 + c002478c: 8f5d or a4,a4,a5 + c002478e: 003ac783 lbu a5,3(s5) + c0024792: 07c2 slli a5,a5,0x10 + c0024794: 8f5d or a4,a4,a5 + c0024796: 004ac783 lbu a5,4(s5) + c002479a: 07e2 slli a5,a5,0x18 + c002479c: 8fd9 or a5,a5,a4 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32408 if (cc.line_num >= 0) line_num = cc.line_num; - c00245ce: d83e sw a5,48(sp) - c00245d0: a09d j c0024636 + c002479e: d83e sw a5,48(sp) + c00247a0: a09d j c0024806 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00245d2: 002ac703 lbu a4,2(s5) - c00245d6: 001ac783 lbu a5,1(s5) - c00245da: 0722 slli a4,a4,0x8 - c00245dc: 8f5d or a4,a4,a5 - c00245de: 003ac783 lbu a5,3(s5) - c00245e2: 07c2 slli a5,a5,0x10 - c00245e4: 8f5d or a4,a4,a5 - c00245e6: 004ac783 lbu a5,4(s5) - c00245ea: 07e2 slli a5,a5,0x18 - c00245ec: 8fd9 or a5,a5,a4 + c00247a2: 002ac703 lbu a4,2(s5) + c00247a6: 001ac783 lbu a5,1(s5) + c00247aa: 0722 slli a4,a4,0x8 + c00247ac: 8f5d or a4,a4,a5 + c00247ae: 003ac783 lbu a5,3(s5) + c00247b2: 07c2 slli a5,a5,0x10 + c00247b4: 8f5d or a4,a4,a5 + c00247b6: 004ac783 lbu a5,4(s5) + c00247ba: 07e2 slli a5,a5,0x18 + c00247bc: 8fd9 or a5,a5,a4 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32180 label = get_u32(bc_buf + pos + 1); - c00245ee: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32173 + c00247be: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32181 assert(label >= 0 && label < s->label_count); - c00245f0: 0007c663 bltz a5,c00245fc - c00245f4: 17c42703 lw a4,380(s0) - c00245f8: 00e7c763 blt a5,a4,c0024606 - c00245fc: 65a1 lui a1,0x8 - c00245fe: 4601 li a2,0 - c0024600: dad58593 addi a1,a1,-595 # 7dad <__clzdi2-0xbfff8253> - c0024604: b3ad j c002436e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32174 + c00247c0: 0007c663 bltz a5,c00247cc + c00247c4: 17c42703 lw a4,380(s0) + c00247c8: 00e7c763 blt a5,a4,c00247d6 + c00247cc: 65a1 lui a1,0x8 + c00247ce: 4601 li a2,0 + c00247d0: db558593 addi a1,a1,-587 # 7db5 <__clzdi2-0xbfff824b> + c00247d4: b3ad j c002453e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32182 ls = &label_slots[label]; - c0024606: 4761 li a4,24 - c0024608: 02e787b3 mul a5,a5,a4 - c002460c: 6742 ld a4,16(sp) - c002460e: 00f70933 add s2,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32175 + c00247d6: 4761 li a4,24 + c00247d8: 02e787b3 mul a5,a5,a4 + c00247dc: 6742 ld a4,16(sp) + c00247de: 00f70933 add s2,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32183 assert(ls->addr == -1); - c0024612: 00c92703 lw a4,12(s2) - c0024616: 57fd li a5,-1 - c0024618: 00f70763 beq a4,a5,c0024626 - c002461c: 65a1 lui a1,0x8 - c002461e: 4601 li a2,0 - c0024620: daf58593 addi a1,a1,-593 # 7daf <__clzdi2-0xbfff8251> - c0024624: b3a9 j c002436e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32176 + c00247e2: 00c92703 lw a4,12(s2) + c00247e6: 57fd li a5,-1 + c00247e8: 00f70763 beq a4,a5,c00247f6 + c00247ec: 65a1 lui a1,0x8 + c00247ee: 4601 li a2,0 + c00247f0: db758593 addi a1,a1,-585 # 7db7 <__clzdi2-0xbfff8249> + c00247f4: b3a9 j c002453e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32184 ls->addr = bc_out.size; - c0024626: 77e6 ld a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32178 + c00247f6: 77e6 ld a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32186 for(re = ls->first_reloc; re != NULL; re = re_next) { - c0024628: 01093583 ld a1,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32176 + c00247f8: 01093583 ld a1,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32184 ls->addr = bc_out.size; - c002462c: 00f92623 sw a5,12(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32178 + c00247fc: 00f92623 sw a5,12(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32186 for(re = ls->first_reloc; re != NULL; re = re_next) { - c0024630: e589 bnez a1,c002463a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32196 + c0024800: e589 bnez a1,c002480a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32204 ls->first_reloc = NULL; - c0024632: 00093823 sd zero,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32198 + c0024802: 00093823 sd zero,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32206 break; - c0024636: 8a26 mv s4,s1 - c0024638: b69d j c002419e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32179 + c0024806: 8a26 mv s4,s1 + c0024808: b69d j c002436e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32187 int diff = ls->addr - re->addr; - c002463a: 4598 lw a4,8(a1) - c002463c: 00c92683 lw a3,12(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32181 + c002480a: 4598 lw a4,8(a1) + c002480c: 00c92683 lw a3,12(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32189 switch (re->size) { - c0024640: 45dc lw a5,12(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32180 + c0024810: 45dc lw a5,12(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32188 re_next = re->next; - c0024642: 0005b983 ld s3,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32179 + c0024812: 0005b983 ld s3,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32187 int diff = ls->addr - re->addr; - c0024646: 9e99 subw a3,a3,a4 - c0024648: 0006861b sext.w a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32181 + c0024816: 9e99 subw a3,a3,a4 + c0024818: 0006861b sext.w a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32189 switch (re->size) { - c002464c: 05a78a63 beq a5,s10,c00246a0 - c0024650: 4511 li a0,4 - c0024652: 02a78063 beq a5,a0,c0024672 - c0024656: 4685 li a3,1 - c0024658: 02d79f63 bne a5,a3,c0024696 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32190 + c002481c: 05a78a63 beq a5,s10,c0024870 + c0024820: 4511 li a0,4 + c0024822: 02a78063 beq a5,a0,c0024842 + c0024826: 4685 li a3,1 + c0024828: 02d79f63 bne a5,a3,c0024866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32198 assert(diff == (int8_t)diff); - c002465c: 0186179b slliw a5,a2,0x18 - c0024660: 4187d79b sraiw a5,a5,0x18 - c0024664: 06c78363 beq a5,a2,c00246ca - c0024668: 65a1 lui a1,0x8 - c002466a: 4601 li a2,0 - c002466c: dbe58593 addi a1,a1,-578 # 7dbe <__clzdi2-0xbfff8242> - c0024670: b9fd j c002436e + c002482c: 0186179b slliw a5,a2,0x18 + c0024830: 4187d79b sraiw a5,a5,0x18 + c0024834: 06c78363 beq a5,a2,c002489a + c0024838: 65a1 lui a1,0x8 + c002483a: 4601 li a2,0 + c002483c: dc658593 addi a1,a1,-570 # 7dc6 <__clzdi2-0xbfff823a> + c0024840: b9fd j c002453e put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0024672: 7646 ld a2,112(sp) + c0024842: 7646 ld a2,112(sp) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32191 put_u32(bc_out.buf + re->addr, diff); - c0024674: 1702 slli a4,a4,0x20 - c0024676: 9301 srli a4,a4,0x20 + c0024844: 1702 slli a4,a4,0x20 + c0024846: 9301 srli a4,a4,0x20 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0024678: 9732 add a4,a4,a2 - c002467a: 0086d79b srliw a5,a3,0x8 - c002467e: 00d70023 sb a3,0(a4) - c0024682: 00f700a3 sb a5,1(a4) - c0024686: 0106d79b srliw a5,a3,0x10 - c002468a: 0186d69b srliw a3,a3,0x18 - c002468e: 00f70123 sb a5,2(a4) - c0024692: 00d701a3 sb a3,3(a4) + c0024848: 9732 add a4,a4,a2 + c002484a: 0086d79b srliw a5,a3,0x8 + c002484e: 00d70023 sb a3,0(a4) + c0024852: 00f700a3 sb a5,1(a4) + c0024856: 0106d79b srliw a5,a3,0x10 + c002485a: 0186d69b srliw a3,a3,0x18 + c002485e: 00f70123 sb a5,2(a4) + c0024862: 00d701a3 sb a3,3(a4) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32202 js_free(ctx, re); - c0024696: 856e mv a0,s11 - c0024698: fa2e20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32178 - for(re = ls->first_reloc; re != NULL; re = re_next) { - c002469c: 85ce mv a1,s3 - c002469e: bf49 j c0024630 + c0024866: 856e mv a0,s11 + c0024868: ec0e20ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32186 + for(re = ls->first_reloc; re != NULL; re = re_next) { + c002486c: 85ce mv a1,s3 + c002486e: bf49 j c0024800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32194 assert(diff == (int16_t)diff); - c00246a0: 0106169b slliw a3,a2,0x10 - c00246a4: 4106d69b sraiw a3,a3,0x10 - c00246a8: 00c68763 beq a3,a2,c00246b6 - c00246ac: 65a1 lui a1,0x8 - c00246ae: 4601 li a2,0 - c00246b0: dba58593 addi a1,a1,-582 # 7dba <__clzdi2-0xbfff8246> - c00246b4: b96d j c002436e + c0024870: 0106169b slliw a3,a2,0x10 + c0024874: 4106d69b sraiw a3,a3,0x10 + c0024878: 00c68763 beq a3,a2,c0024886 + c002487c: 65a1 lui a1,0x8 + c002487e: 4601 li a2,0 + c0024880: dc258593 addi a1,a1,-574 # 7dc2 <__clzdi2-0xbfff823e> + c0024884: b96d j c002453e put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c00246b6: 77c6 ld a5,112(sp) + c0024886: 77c6 ld a5,112(sp) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32195 put_u16(bc_out.buf + re->addr, diff); - c00246b8: 1702 slli a4,a4,0x20 - c00246ba: 9301 srli a4,a4,0x20 + c0024888: 1702 slli a4,a4,0x20 + c002488a: 9301 srli a4,a4,0x20 put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 - c00246bc: 973e add a4,a4,a5 - c00246be: 00d70023 sb a3,0(a4) - c00246c2: 82a1 srli a3,a3,0x8 - c00246c4: 00d700a3 sb a3,1(a4) + c002488c: 973e add a4,a4,a5 + c002488e: 00d70023 sb a3,0(a4) + c0024892: 82a1 srli a3,a3,0x8 + c0024894: 00d700a3 sb a3,1(a4) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:196 } - c00246c8: b7f9 j c0024696 + c0024898: b7f9 j c0024866 put_u8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:210 *tab = val; - c00246ca: 76c6 ld a3,112(sp) + c002489a: 76c6 ld a3,112(sp) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32191 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32199 put_u8(bc_out.buf + re->addr, diff); - c00246cc: 1702 slli a4,a4,0x20 - c00246ce: 9301 srli a4,a4,0x20 + c002489c: 1702 slli a4,a4,0x20 + c002489e: 9301 srli a4,a4,0x20 put_u8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:210 - c00246d0: 9736 add a4,a4,a3 + c00248a0: 9736 add a4,a4,a3 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32191 - c00246d2: 00f70023 sb a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32199 + c00248a2: 00f70023 sb a5,0(a4) put_u8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:211 } - c00246d6: b7c1 j c0024696 + c00248a6: b7c1 j c0024866 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c00246d8: 002ac983 lbu s3,2(s5) - c00246dc: 001ac783 lbu a5,1(s5) + c00248a8: 002ac983 lbu s3,2(s5) + c00248ac: 001ac783 lbu a5,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32214 if (code_match(&cc, pos_next, OP_return, -1)) { - c00246e0: 85a6 mv a1,s1 + c00248b0: 85a6 mv a1,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c00246e2: 09a2 slli s3,s3,0x8 + c00248b2: 09a2 slli s3,s3,0x8 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32206 - c00246e4: 56fd li a3,-1 - c00246e6: 02800613 li a2,40 - c00246ea: 00a8 addi a0,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32214 + c00248b4: 56fd li a3,-1 + c00248b6: 02800613 li a2,40 + c00248ba: 00a8 addi a0,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32213 argc = get_u16(bc_buf + pos + 1); - c00246ec: 00f9e9b3 or s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32206 + c00248bc: 00f9e9b3 or s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32214 if (code_match(&cc, pos_next, OP_return, -1)) { - c00246f0: 985e00ef jal ra,c0005074 - c00246f4: 75e6 ld a1,120(sp) - c00246f6: 18050fe3 beqz a0,c0025094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32207 + c00248c0: fb4e00ef jal ra,c0005074 + c00248c4: 75e6 ld a1,120(sp) + c00248c6: 18050fe3 beqz a0,c0025264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32215 if (cc.line_num >= 0) line_num = cc.line_num; - c00246fa: 47e6 lw a5,88(sp) - c00246fc: 0007c363 bltz a5,c0024702 - c0024700: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32208 + c00248ca: 47e6 lw a5,88(sp) + c00248cc: 0007c363 bltz a5,c00248d2 + c00248d0: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32216 add_pc2line_info(s, bc_out.size, line_num); - c0024702: 5642 lw a2,48(sp) - c0024704: 2581 sext.w a1,a1 - c0024706: 8522 mv a0,s0 - c0024708: e05df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32209 + c00248d2: 5642 lw a2,48(sp) + c00248d4: 2581 sext.w a1,a1 + c00248d6: 8522 mv a0,s0 + c00248d8: c35df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32217 put_short_code(&bc_out, op + 1, argc); - c002470c: 864e mv a2,s3 - c002470e: 0019059b addiw a1,s2,1 - c0024712: 1888 addi a0,sp,112 - c0024714: c2de00ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32210 + c00248dc: 864e mv a2,s3 + c00248de: 0019059b addiw a1,s2,1 + c00248e2: 1888 addi a0,sp,112 + c00248e4: b4be00ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32218 pos_next = skip_dead_code(s, bc_buf, bc_len, cc.pos, &line_num); - c0024718: 46d6 lw a3,84(sp) - c002471a: 1818 addi a4,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32246 + c00248e8: 46d6 lw a3,84(sp) + c00248ea: 1818 addi a4,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32254 pos_next = skip_dead_code(s, bc_buf, bc_len, pos_next, &line_num); - c002471c: 8666 mv a2,s9 - c002471e: 85de mv a1,s7 - c0024720: 8522 mv a0,s0 - c0024722: 920e30ef jal ra,c0007842 - c0024726: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32247 + c00248ec: 8666 mv a2,s9 + c00248ee: 85de mv a1,s7 + c00248f0: 8522 mv a0,s0 + c00248f2: 83ee30ef jal ra,c0007930 + c00248f6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32255 break; - c0024728: b739 j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32224 + c00248f8: b739 j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32232 pos_next = skip_dead_code(s, bc_buf, bc_len, pos_next, &line_num); - c002472a: 86a6 mv a3,s1 - c002472c: 1818 addi a4,sp,48 - c002472e: 8666 mv a2,s9 - c0024730: 85de mv a1,s7 - c0024732: 8522 mv a0,s0 - c0024734: 90ee30ef jal ra,c0007842 - c0024738: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32225 + c00248fa: 86a6 mv a3,s1 + c00248fc: 1818 addi a4,sp,48 + c00248fe: 8666 mv a2,s9 + c0024900: 85de mv a1,s7 + c0024902: 8522 mv a0,s0 + c0024904: 82ce30ef jal ra,c0007930 + c0024908: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32233 goto no_change; - c002473a: b1ed j c0024424 + c002490a: b1ed j c00245f4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c002473c: 002ac783 lbu a5,2(s5) - c0024740: 001ac583 lbu a1,1(s5) - c0024744: 07a2 slli a5,a5,0x8 - c0024746: 8fcd or a5,a5,a1 - c0024748: 003ac583 lbu a1,3(s5) - c002474c: 05c2 slli a1,a1,0x10 - c002474e: 8fcd or a5,a5,a1 - c0024750: 004ac583 lbu a1,4(s5) - c0024754: 05e2 slli a1,a1,0x18 - c0024756: 8ddd or a1,a1,a5 + c002490c: 002ac783 lbu a5,2(s5) + c0024910: 001ac583 lbu a1,1(s5) + c0024914: 07a2 slli a5,a5,0x8 + c0024916: 8fcd or a5,a5,a1 + c0024918: 003ac583 lbu a1,3(s5) + c002491c: 05c2 slli a1,a1,0x10 + c002491e: 8fcd or a5,a5,a1 + c0024920: 004ac583 lbu a1,4(s5) + c0024924: 05e2 slli a1,a1,0x18 + c0024926: 8ddd or a1,a1,a5 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32236 label = get_u32(bc_buf + pos + 1); - c0024758: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32231 + c0024928: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32239 int line1 = -1; - c002475a: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32233 + c002492a: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32241 label = find_jump_target(s, label, &op1, &line1); - c002475c: 1070 addi a2,sp,44 - c002475e: 1854 addi a3,sp,52 - c0024760: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32231 + c002492c: 1070 addi a2,sp,44 + c002492e: 1854 addi a3,sp,52 + c0024930: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32239 int line1 = -1; - c0024762: da3e sw a5,52(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32233 + c0024932: da3e sw a5,52(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32241 label = find_jump_target(s, label, &op1, &line1); - c0024764: b7ae10ef jal ra,c0005ade - c0024768: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32234 + c0024934: a98e10ef jal ra,c0005bcc + c0024938: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32242 if (code_has_label(&cc, pos_next, label)) { - c002476a: 862a mv a2,a0 - c002476c: 85a6 mv a1,s1 - c002476e: 00a8 addi a0,sp,72 - c0024770: de3df0ef jal ra,c0004552 - c0024774: c519 beqz a0,c0024782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32236 + c002493a: 862a mv a2,a0 + c002493c: 85a6 mv a1,s1 + c002493e: 00a8 addi a0,sp,72 + c0024940: c13df0ef jal ra,c0004552 + c0024944: c519 beqz a0,c0024952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32244 update_label(s, label, -1); - c0024776: 567d li a2,-1 - c0024778: 85d6 mv a1,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32450 + c0024946: 567d li a2,-1 + c0024948: 85d6 mv a1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32458 update_label(s, cc.label, -1); - c002477a: 8522 mv a0,s0 - c002477c: b16e10ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32451 + c002494a: 8522 mv a0,s0 + c002494c: a34e10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32459 break; - c0024780: bd5d j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32239 + c0024950: bd5d j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32247 if (op1 == OP_return || op1 == OP_return_undef || op1 == OP_throw) { - c0024782: 5732 lw a4,44(sp) - c0024784: 4785 li a5,1 - c0024786: fd87069b addiw a3,a4,-40 - c002478a: 00d7f663 bgeu a5,a3,c0024796 - c002478e: 02f00693 li a3,47 - c0024792: 02d71463 bne a4,a3,c00247ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32243 + c0024952: 5732 lw a4,44(sp) + c0024954: 4785 li a5,1 + c0024956: fd87069b addiw a3,a4,-40 + c002495a: 00d7f663 bgeu a5,a3,c0024966 + c002495e: 02f00693 li a3,47 + c0024962: 02d71463 bne a4,a3,c002498a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32251 update_label(s, label, -1); - c0024796: 567d li a2,-1 - c0024798: 85d6 mv a1,s5 - c002479a: 8522 mv a0,s0 - c002479c: af6e10ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32244 + c0024966: 567d li a2,-1 + c0024968: 85d6 mv a1,s5 + c002496a: 8522 mv a0,s0 + c002496c: a14e10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32252 add_pc2line_info(s, bc_out.size, line_num); - c00247a0: 5642 lw a2,48(sp) - c00247a2: 55e6 lw a1,120(sp) - c00247a4: 8522 mv a0,s0 - c00247a6: d67df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32245 + c0024970: 5642 lw a2,48(sp) + c0024972: 55e6 lw a1,120(sp) + c0024974: 8522 mv a0,s0 + c0024976: b97df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32253 dbuf_putc(&bc_out, op1); - c00247aa: 02c14583 lbu a1,44(sp) - c00247ae: 1888 addi a0,sp,112 - c00247b0: 592230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32246 + c002497a: 02c14583 lbu a1,44(sp) + c002497e: 1888 addi a0,sp,112 + c0024980: 592230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32254 pos_next = skip_dead_code(s, bc_buf, bc_len, pos_next, &line_num); - c00247b4: 1818 addi a4,sp,48 - c00247b6: 86a6 mv a3,s1 - c00247b8: b795 j c002471c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32256 + c0024984: 1818 addi a4,sp,48 + c0024986: 86a6 mv a3,s1 + c0024988: b795 j c00248ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32264 goto has_label; - c00247ba: 06c00913 li s2,108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32299 + c002498a: 06c00913 li s2,108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32307 add_pc2line_info(s, bc_out.size, line_num); - c00247be: 5642 lw a2,48(sp) - c00247c0: 55e6 lw a1,120(sp) - c00247c2: 8522 mv a0,s0 - c00247c4: d49df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32300 + c002498e: 5642 lw a2,48(sp) + c0024990: 55e6 lw a1,120(sp) + c0024992: 8522 mv a0,s0 + c0024994: b79df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32308 if (op == OP_goto) { - c00247c8: 06c00713 li a4,108 - c00247cc: 00e91a63 bne s2,a4,c00247e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32301 + c0024998: 06c00713 li a4,108 + c002499c: 00e91a63 bne s2,a4,c00249b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32309 pos_next = skip_dead_code(s, bc_buf, bc_len, pos_next, &line_num); - c00247d0: 86a6 mv a3,s1 - c00247d2: 1818 addi a4,sp,48 - c00247d4: 8666 mv a2,s9 - c00247d6: 85de mv a1,s7 - c00247d8: 8522 mv a0,s0 - c00247da: 868e30ef jal ra,c0007842 - c00247de: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32303 + c00249a0: 86a6 mv a3,s1 + c00249a2: 1818 addi a4,sp,48 + c00249a4: 8666 mv a2,s9 + c00249a6: 85de mv a1,s7 + c00249a8: 8522 mv a0,s0 + c00249aa: f87e20ef jal ra,c0007930 + c00249ae: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32311 assert(label >= 0 && label < s->label_count); - c00247e0: 000ac663 bltz s5,c00247ec - c00247e4: 17c42703 lw a4,380(s0) - c00247e8: 0eeac063 blt s5,a4,c00248c8 - c00247ec: 65a1 lui a1,0x8 - c00247ee: 4601 li a2,0 - c00247f0: e2f58593 addi a1,a1,-465 # 7e2f <__clzdi2-0xbfff81d1> - c00247f4: bead j c002436e + c00249b0: 000ac663 bltz s5,c00249bc + c00249b4: 17c42703 lw a4,380(s0) + c00249b8: 0eeac063 blt s5,a4,c0024a98 + c00249bc: 65a1 lui a1,0x8 + c00249be: 4601 li a2,0 + c00249c0: e3758593 addi a1,a1,-457 # 7e37 <__clzdi2-0xbfff81c9> + c00249c4: bead j c002453e get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00247f6: 002ac503 lbu a0,2(s5) - c00247fa: 001ac783 lbu a5,1(s5) + c00249c6: 002ac503 lbu a0,2(s5) + c00249ca: 001ac783 lbu a5,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32276 goto has_label; - c00247fe: 06e00913 li s2,110 + c00249ce: 06e00913 li s2,110 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024802: 0522 slli a0,a0,0x8 - c0024804: 8d5d or a0,a0,a5 - c0024806: 003ac783 lbu a5,3(s5) - c002480a: 07c2 slli a5,a5,0x10 - c002480c: 8d5d or a0,a0,a5 - c002480e: 004ac783 lbu a5,4(s5) - c0024812: 07e2 slli a5,a5,0x18 - c0024814: 8fc9 or a5,a5,a0 + c00249d2: 0522 slli a0,a0,0x8 + c00249d4: 8d5d or a0,a0,a5 + c00249d6: 003ac783 lbu a5,3(s5) + c00249da: 07c2 slli a5,a5,0x10 + c00249dc: 8d5d or a0,a0,a5 + c00249de: 004ac783 lbu a5,4(s5) + c00249e2: 07e2 slli a5,a5,0x18 + c00249e4: 8fc9 or a5,a5,a0 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32267 label = get_u32(bc_buf + pos + 1); - c0024816: 00078a9b sext.w s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32268 + c00249e6: 00078a9b sext.w s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32276 goto has_label; - c002481a: b755 j c00247be + c00249ea: b755 j c002498e get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002481c: 002ac503 lbu a0,2(s5) - c0024820: 001ac783 lbu a5,1(s5) + c00249ec: 002ac503 lbu a0,2(s5) + c00249f0: 001ac783 lbu a5,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32280 goto has_label; - c0024824: 06d00913 li s2,109 + c00249f4: 06d00913 li s2,109 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024828: 0522 slli a0,a0,0x8 - c002482a: 8d5d or a0,a0,a5 - c002482c: 003ac783 lbu a5,3(s5) - c0024830: 07c2 slli a5,a5,0x10 - c0024832: 8d5d or a0,a0,a5 - c0024834: 004ac783 lbu a5,4(s5) - c0024838: 07e2 slli a5,a5,0x18 - c002483a: 8fc9 or a5,a5,a0 + c00249f8: 0522 slli a0,a0,0x8 + c00249fa: 8d5d or a0,a0,a5 + c00249fc: 003ac783 lbu a5,3(s5) + c0024a00: 07c2 slli a5,a5,0x10 + c0024a02: 8d5d or a0,a0,a5 + c0024a04: 004ac783 lbu a5,4(s5) + c0024a08: 07e2 slli a5,a5,0x18 + c0024a0a: 8fc9 or a5,a5,a0 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32271 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32279 label = get_u32(bc_buf + pos + 1); - c002483c: 00078a9b sext.w s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32272 + c0024a0c: 00078a9b sext.w s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32280 goto has_label; - c0024840: bfbd j c00247be + c0024a10: bfbd j c002498e get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024842: 002ac783 lbu a5,2(s5) - c0024846: 001ac583 lbu a1,1(s5) + c0024a12: 002ac783 lbu a5,2(s5) + c0024a16: 001ac583 lbu a1,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32286 label = find_jump_target(s, label, &op1, NULL); - c002484a: 1070 addi a2,sp,44 + c0024a1a: 1070 addi a2,sp,44 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002484c: 07a2 slli a5,a5,0x8 - c002484e: 8fcd or a5,a5,a1 - c0024850: 003ac583 lbu a1,3(s5) + c0024a1c: 07a2 slli a5,a5,0x8 + c0024a1e: 8fcd or a5,a5,a1 + c0024a20: 003ac583 lbu a1,3(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32278 - c0024854: 4681 li a3,0 - c0024856: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32286 + c0024a24: 4681 li a3,0 + c0024a26: 8522 mv a0,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024858: 05c2 slli a1,a1,0x10 - c002485a: 8fcd or a5,a5,a1 - c002485c: 004ac583 lbu a1,4(s5) - c0024860: 05e2 slli a1,a1,0x18 - c0024862: 8ddd or a1,a1,a5 + c0024a28: 05c2 slli a1,a1,0x10 + c0024a2a: 8fcd or a5,a5,a1 + c0024a2c: 004ac583 lbu a1,4(s5) + c0024a30: 05e2 slli a1,a1,0x18 + c0024a32: 8ddd or a1,a1,a5 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32278 - c0024864: 2581 sext.w a1,a1 - c0024866: a78e10ef jal ra,c0005ade - c002486a: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32280 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32286 + c0024a34: 2581 sext.w a1,a1 + c0024a36: 996e10ef jal ra,c0005bcc + c0024a3a: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32288 if (code_has_label(&cc, pos_next, label)) { - c002486c: 862a mv a2,a0 - c002486e: 85a6 mv a1,s1 - c0024870: 00a8 addi a0,sp,72 - c0024872: ce1df0ef jal ra,c0004552 - c0024876: c919 beqz a0,c002488c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32281 + c0024a3c: 862a mv a2,a0 + c0024a3e: 85a6 mv a1,s1 + c0024a40: 00a8 addi a0,sp,72 + c0024a42: b11df0ef jal ra,c0004552 + c0024a46: c919 beqz a0,c0024a5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32289 update_label(s, label, -1); - c0024878: 85d6 mv a1,s5 - c002487a: 567d li a2,-1 - c002487c: 8522 mv a0,s0 - c002487e: a14e10ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32282 + c0024a48: 85d6 mv a1,s5 + c0024a4a: 567d li a2,-1 + c0024a4c: 8522 mv a0,s0 + c0024a4e: 932e10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32290 dbuf_putc(&bc_out, OP_drop); - c0024882: 45b9 li a1,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32530 + c0024a52: 45b9 li a1,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32538 dbuf_putc(&bc_out, OP_push_empty_string); - c0024884: 1888 addi a0,sp,112 - c0024886: 4bc230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32531 + c0024a54: 1888 addi a0,sp,112 + c0024a56: 4bc230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32539 break; - c002488a: b375 j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32286 + c0024a5a: b375 j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32294 if (code_match(&cc, pos_next, OP_goto, -1)) { - c002488c: 56fd li a3,-1 - c002488e: 06c00613 li a2,108 - c0024892: 85a6 mv a1,s1 - c0024894: 00a8 addi a0,sp,72 - c0024896: fdee00ef jal ra,c0005074 - c002489a: d115 beqz a0,c00247be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32287 + c0024a5c: 56fd li a3,-1 + c0024a5e: 06c00613 li a2,108 + c0024a62: 85a6 mv a1,s1 + c0024a64: 00a8 addi a0,sp,72 + c0024a66: e0ee00ef jal ra,c0005074 + c0024a6a: d115 beqz a0,c002498e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32295 int pos1 = cc.pos; - c002489c: 4c56 lw s8,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32289 + c0024a6c: 4c56 lw s8,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32297 if (code_has_label(&cc, pos1, label)) { - c002489e: 8656 mv a2,s5 - c00248a0: 00a8 addi a0,sp,72 - c00248a2: 85e2 mv a1,s8 - c00248a4: cafdf0ef jal ra,c0004552 - c00248a8: f0050be3 beqz a0,c00247be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32288 + c0024a6e: 8656 mv a2,s5 + c0024a70: 00a8 addi a0,sp,72 + c0024a72: 85e2 mv a1,s8 + c0024a74: adfdf0ef jal ra,c0004552 + c0024a78: f0050be3 beqz a0,c002498e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32296 int line1 = cc.line_num; - c00248ac: 4766 lw a4,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32290 + c0024a7c: 4766 lw a4,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32298 if (line1 >= 0) line_num = line1; - c00248ae: 00074363 bltz a4,c00248b4 - c00248b2: d83a sw a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32292 + c0024a7e: 00074363 bltz a4,c0024a84 + c0024a82: d83a sw a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32300 update_label(s, label, -1); - c00248b4: 85d6 mv a1,s5 - c00248b6: 567d li a2,-1 - c00248b8: 8522 mv a0,s0 - c00248ba: 9d8e10ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32294 + c0024a84: 85d6 mv a1,s5 + c0024a86: 567d li a2,-1 + c0024a88: 8522 mv a0,s0 + c0024a8a: 8f6e10ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32302 op ^= OP_if_true ^ OP_if_false; - c00248be: 0019c913 xori s2,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32293 + c0024a8e: 0019c913 xori s2,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32301 label = cc.label; - c00248c2: 5a96 lw s5,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32291 + c0024a92: 5a96 lw s5,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32299 pos_next = pos1; - c00248c4: 84e2 mv s1,s8 - c00248c6: bde5 j c00247be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32304 + c0024a94: 84e2 mv s1,s8 + c0024a96: bde5 j c002498e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32312 ls = &label_slots[label]; - c00248c8: 4c61 li s8,24 - c00248ca: 038a8c33 mul s8,s5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32306 + c0024a98: 4c61 li s8,24 + c0024a9a: 038a8c33 mul s8,s5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32314 jp = &s->jump_slots[s->jump_count++]; - c00248ce: 1b442683 lw a3,436(s0) - c00248d2: 1a843703 ld a4,424(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32304 + c0024a9e: 1b442683 lw a3,436(s0) + c0024aa2: 1a843703 ld a4,424(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32312 ls = &label_slots[label]; - c00248d6: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32306 + c0024aa6: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32314 jp = &s->jump_slots[s->jump_count++]; - c00248d8: 0016861b addiw a2,a3,1 - c00248dc: 0692 slli a3,a3,0x4 - c00248de: 1ac42a23 sw a2,436(s0) - c00248e2: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32307 + c0024aa8: 0016861b addiw a2,a3,1 + c0024aac: 0692 slli a3,a3,0x4 + c0024aae: 1ac42a23 sw a2,436(s0) + c0024ab2: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32315 jp->op = op; - c00248e4: 01272023 sw s2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32304 + c0024ab4: 01272023 sw s2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32312 ls = &label_slots[label]; - c00248e8: 9c3e add s8,s8,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32308 + c0024ab8: 9c3e add s8,s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32316 jp->size = 4; - c00248ea: 4791 li a5,4 - c00248ec: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32309 + c0024aba: 4791 li a5,4 + c0024abc: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32317 jp->pos = bc_out.size + 1; - c00248ee: 76e6 ld a3,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32310 + c0024abe: 76e6 ld a3,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32318 jp->label = label; - c00248f0: 01572623 sw s5,12(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32309 + c0024ac0: 01572623 sw s5,12(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32317 jp->pos = bc_out.size + 1; - c00248f4: 2685 addiw a3,a3,1 - c00248f6: c714 sw a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32312 + c0024ac4: 2685 addiw a3,a3,1 + c0024ac6: c714 sw a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32320 if (ls->addr == -1) { - c00248f8: 00cc2783 lw a5,12(s8) - c00248fc: 56fd li a3,-1 - c00248fe: 08d79663 bne a5,a3,c002498a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32313 + c0024ac8: 00cc2783 lw a5,12(s8) + c0024acc: 56fd li a3,-1 + c0024ace: 08d79663 bne a5,a3,c0024b5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32321 int diff = ls->pos2 - pos - 1; - c0024902: 008c2783 lw a5,8(s8) - c0024906: fffa4a13 not s4,s4 - c002490a: 01478a3b addw s4,a5,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32314 + c0024ad2: 008c2783 lw a5,8(s8) + c0024ad6: fffa4a13 not s4,s4 + c0024ada: 01478a3b addw s4,a5,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32322 if (diff < 128 && (op == OP_if_false || op == OP_if_true || op == OP_goto)) { - c002490e: 07f00793 li a5,127 - c0024912: 0547c363 blt a5,s4,c0024958 - c0024916: f969079b addiw a5,s2,-106 - c002491a: 0efd6163 bltu s10,a5,c00249fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32315 + c0024ade: 07f00793 li a5,127 + c0024ae2: 0547c363 blt a5,s4,c0024b28 + c0024ae6: f969079b addiw a5,s2,-106 + c0024aea: 0efd6163 bltu s10,a5,c0024bcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32323 jp->size = 1; - c002491e: 4785 li a5,1 - c0024920: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32317 + c0024aee: 4785 li a5,1 + c0024af0: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32325 dbuf_putc(&bc_out, OP_if_false8 + (op - OP_if_false)); - c0024922: f809059b addiw a1,s2,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32316 + c0024af2: f809059b addiw a1,s2,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32324 jp->op = OP_if_false8 + (op - OP_if_false); - c0024926: 0809079b addiw a5,s2,128 - c002492a: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32317 + c0024af6: 0809079b addiw a5,s2,128 + c0024afa: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32325 dbuf_putc(&bc_out, OP_if_false8 + (op - OP_if_false)); - c002492c: 0ff5f593 zext.b a1,a1 - c0024930: 1888 addi a0,sp,112 - c0024932: 410230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32318 + c0024afc: 0ff5f593 zext.b a1,a1 + c0024b00: 1888 addi a0,sp,112 + c0024b02: 410230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32326 dbuf_putc(&bc_out, 0); - c0024936: 4581 li a1,0 - c0024938: 1888 addi a0,sp,112 - c002493a: 408230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32319 + c0024b06: 4581 li a1,0 + c0024b08: 1888 addi a0,sp,112 + c0024b0a: 408230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32327 if (!add_reloc(ctx, ls, bc_out.size - 1, 1)) - c002493e: 7666 ld a2,120(sp) - c0024940: 4685 li a3,1 - c0024942: 367d addiw a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32354 + c0024b0e: 7666 ld a2,120(sp) + c0024b10: 4685 li a3,1 + c0024b12: 367d addiw a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32362 if (!add_reloc(ctx, ls, bc_out.size - 4, 4)) - c0024944: 85e2 mv a1,s8 - c0024946: 856e mv a0,s11 - c0024948: ceff00ef jal ra,c0015636 - c002494c: ce0515e3 bnez a0,c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32937 + c0024b14: 85e2 mv a1,s8 + c0024b16: 856e mv a0,s11 + c0024b18: ceff00ef jal ra,c0015806 + c0024b1c: ce0515e3 bnez a0,c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32945 dbuf_free(&bc_out); - c0024950: 1888 addi a0,sp,112 - c0024952: 4b4230ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32938 + c0024b20: 1888 addi a0,sp,112 + c0024b22: 4b4230ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32946 return -1; - c0024956: b2e9 j c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32323 + c0024b26: b2e9 j c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32331 if (diff < 32768 && op == OP_goto) { - c0024958: 67a1 lui a5,0x8 - c002495a: 0afa5163 bge s4,a5,c00249fc - c002495e: 06c00793 li a5,108 - c0024962: 08f91d63 bne s2,a5,c00249fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32325 + c0024b28: 67a1 lui a5,0x8 + c0024b2a: 0afa5163 bge s4,a5,c0024bcc + c0024b2e: 06c00793 li a5,108 + c0024b32: 08f91d63 bne s2,a5,c0024bcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32333 jp->op = OP_goto16; - c0024966: 0ed00793 li a5,237 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32324 + c0024b36: 0ed00793 li a5,237 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32332 jp->size = 2; - c002496a: 01a72223 sw s10,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32325 + c0024b3a: 01a72223 sw s10,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32333 jp->op = OP_goto16; - c002496e: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32326 + c0024b3e: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32334 dbuf_putc(&bc_out, OP_goto16); - c0024970: 0ed00593 li a1,237 - c0024974: 1888 addi a0,sp,112 - c0024976: 3cc230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32327 + c0024b40: 0ed00593 li a1,237 + c0024b44: 1888 addi a0,sp,112 + c0024b46: 3cc230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32335 dbuf_put_u16(&bc_out, 0); - c002497a: 4581 li a1,0 - c002497c: 1888 addi a0,sp,112 - c002497e: 975e00ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32328 + c0024b4a: 4581 li a1,0 + c0024b4c: 1888 addi a0,sp,112 + c0024b4e: 893e00ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32336 if (!add_reloc(ctx, ls, bc_out.size - 2, 2)) - c0024982: 7666 ld a2,120(sp) - c0024984: 4689 li a3,2 - c0024986: 3679 addiw a2,a2,-2 - c0024988: bf75 j c0024944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32333 + c0024b52: 7666 ld a2,120(sp) + c0024b54: 4689 li a3,2 + c0024b56: 3679 addiw a2,a2,-2 + c0024b58: bf75 j c0024b14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32341 int diff = ls->addr - bc_out.size - 1; - c002498a: 79e6 ld s3,120(sp) - c002498c: fff9c993 not s3,s3 - c0024990: 00f989bb addw s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32334 + c0024b5a: 79e6 ld s3,120(sp) + c0024b5c: fff9c993 not s3,s3 + c0024b60: 00f989bb addw s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32342 if (diff == (int8_t)diff && (op == OP_if_false || op == OP_if_true || op == OP_goto)) { - c0024994: 01899a1b slliw s4,s3,0x18 - c0024998: 418a5a1b sraiw s4,s4,0x18 - c002499c: 033a1563 bne s4,s3,c00249c6 - c00249a0: f969079b addiw a5,s2,-106 - c00249a4: 02fd6163 bltu s10,a5,c00249c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32335 + c0024b64: 01899a1b slliw s4,s3,0x18 + c0024b68: 418a5a1b sraiw s4,s4,0x18 + c0024b6c: 033a1563 bne s4,s3,c0024b96 + c0024b70: f969079b addiw a5,s2,-106 + c0024b74: 02fd6163 bltu s10,a5,c0024b96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32343 jp->size = 1; - c00249a8: 4785 li a5,1 - c00249aa: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32337 + c0024b78: 4785 li a5,1 + c0024b7a: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32345 dbuf_putc(&bc_out, OP_if_false8 + (op - OP_if_false)); - c00249ac: f809059b addiw a1,s2,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32336 + c0024b7c: f809059b addiw a1,s2,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32344 jp->op = OP_if_false8 + (op - OP_if_false); - c00249b0: 0809079b addiw a5,s2,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32337 + c0024b80: 0809079b addiw a5,s2,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32345 dbuf_putc(&bc_out, OP_if_false8 + (op - OP_if_false)); - c00249b4: 0ff5f593 zext.b a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32336 + c0024b84: 0ff5f593 zext.b a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32344 jp->op = OP_if_false8 + (op - OP_if_false); - c00249b8: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32337 + c0024b88: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32345 dbuf_putc(&bc_out, OP_if_false8 + (op - OP_if_false)); - c00249ba: 1888 addi a0,sp,112 - c00249bc: 386230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32338 + c0024b8a: 1888 addi a0,sp,112 + c0024b8c: 386230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32346 dbuf_putc(&bc_out, diff); - c00249c0: 0ffa7593 zext.b a1,s4 - c00249c4: b5c1 j c0024884 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32341 + c0024b90: 0ffa7593 zext.b a1,s4 + c0024b94: b5c1 j c0024a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32349 if (diff == (int16_t)diff && op == OP_goto) { - c00249c6: 0109979b slliw a5,s3,0x10 - c00249ca: 4107d79b sraiw a5,a5,0x10 - c00249ce: 03379763 bne a5,s3,c00249fc - c00249d2: 06c00793 li a5,108 - c00249d6: 02f91363 bne s2,a5,c00249fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32343 + c0024b96: 0109979b slliw a5,s3,0x10 + c0024b9a: 4107d79b sraiw a5,a5,0x10 + c0024b9e: 03379763 bne a5,s3,c0024bcc + c0024ba2: 06c00793 li a5,108 + c0024ba6: 02f91363 bne s2,a5,c0024bcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32351 jp->op = OP_goto16; - c00249da: 0ed00793 li a5,237 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32342 + c0024baa: 0ed00793 li a5,237 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32350 jp->size = 2; - c00249de: 01a72223 sw s10,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32343 + c0024bae: 01a72223 sw s10,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32351 jp->op = OP_goto16; - c00249e2: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32344 + c0024bb2: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32352 dbuf_putc(&bc_out, OP_goto16); - c00249e4: 0ed00593 li a1,237 - c00249e8: 1888 addi a0,sp,112 - c00249ea: 358230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32345 + c0024bb4: 0ed00593 li a1,237 + c0024bb8: 1888 addi a0,sp,112 + c0024bba: 358230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32353 dbuf_put_u16(&bc_out, diff); - c00249ee: 03099593 slli a1,s3,0x30 - c00249f2: 91c1 srli a1,a1,0x30 - c00249f4: 1888 addi a0,sp,112 - c00249f6: 8fde00ef jal ra,c00052f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32346 + c0024bbe: 03099593 slli a1,s3,0x30 + c0024bc2: 91c1 srli a1,a1,0x30 + c0024bc4: 1888 addi a0,sp,112 + c0024bc6: 81be00ef jal ra,c00053e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32354 break; - c00249fa: b935 j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32350 + c0024bca: b935 j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32358 dbuf_putc(&bc_out, op); - c00249fc: 0ff97593 zext.b a1,s2 - c0024a00: 1888 addi a0,sp,112 - c0024a02: 340230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32351 + c0024bcc: 0ff97593 zext.b a1,s2 + c0024bd0: 1888 addi a0,sp,112 + c0024bd2: 340230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32359 dbuf_put_u32(&bc_out, ls->addr - bc_out.size); - c0024a06: 77e6 ld a5,120(sp) - c0024a08: 00cc2583 lw a1,12(s8) - c0024a0c: 1888 addi a0,sp,112 - c0024a0e: 9d9d subw a1,a1,a5 - c0024a10: a19e00ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32352 + c0024bd6: 77e6 ld a5,120(sp) + c0024bd8: 00cc2583 lw a1,12(s8) + c0024bdc: 1888 addi a0,sp,112 + c0024bde: 9d9d subw a1,a1,a5 + c0024be0: 937e00ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32360 if (ls->addr == -1) { - c0024a14: 00cc2703 lw a4,12(s8) - c0024a18: 57fd li a5,-1 - c0024a1a: c0f71ee3 bne a4,a5,c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32354 + c0024be4: 00cc2703 lw a4,12(s8) + c0024be8: 57fd li a5,-1 + c0024bea: c0f71ee3 bne a4,a5,c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32362 if (!add_reloc(ctx, ls, bc_out.size - 4, 4)) - c0024a1e: 7666 ld a2,120(sp) - c0024a20: 4691 li a3,4 - c0024a22: 3671 addiw a2,a2,-4 - c0024a24: b705 j c0024944 + c0024bee: 7666 ld a2,120(sp) + c0024bf0: 4691 li a3,4 + c0024bf2: 3671 addiw a2,a2,-4 + c0024bf4: b705 j c0024b14 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024a26: 002ac783 lbu a5,2(s5) - c0024a2a: 001acc03 lbu s8,1(s5) - c0024a2e: 005ac583 lbu a1,5(s5) - c0024a32: 07a2 slli a5,a5,0x8 - c0024a34: 0187e7b3 or a5,a5,s8 - c0024a38: 003acc03 lbu s8,3(s5) + c0024bf6: 002ac783 lbu a5,2(s5) + c0024bfa: 001acc03 lbu s8,1(s5) + c0024bfe: 005ac583 lbu a1,5(s5) + c0024c02: 07a2 slli a5,a5,0x8 + c0024c04: 0187e7b3 or a5,a5,s8 + c0024c08: 003acc03 lbu s8,3(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32378 is_with = bc_buf[pos + 9]; - c0024a3c: 2a25 addiw s4,s4,9 - c0024a3e: 9a5e add s4,s4,s7 + c0024c0c: 2a25 addiw s4,s4,9 + c0024c0e: 9a5e add s4,s4,s7 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024a40: 0c42 slli s8,s8,0x10 - c0024a42: 00fc67b3 or a5,s8,a5 - c0024a46: 004acc03 lbu s8,4(s5) + c0024c10: 0c42 slli s8,s8,0x10 + c0024c12: 00fc67b3 or a5,s8,a5 + c0024c16: 004acc03 lbu s8,4(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32380 label = find_jump_target(s, label, &op1, NULL); - c0024a4a: 4681 li a3,0 - c0024a4c: 1070 addi a2,sp,44 + c0024c1a: 4681 li a3,0 + c0024c1c: 1070 addi a2,sp,44 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024a4e: 0c62 slli s8,s8,0x18 - c0024a50: 00fc6c33 or s8,s8,a5 - c0024a54: 006ac783 lbu a5,6(s5) + c0024c1e: 0c62 slli s8,s8,0x18 + c0024c20: 00fc6c33 or s8,s8,a5 + c0024c24: 006ac783 lbu a5,6(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32372 - c0024a58: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32380 + c0024c28: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32378 is_with = bc_buf[pos + 9]; - c0024a5a: 000a4a03 lbu s4,0(s4) + c0024c2a: 000a4a03 lbu s4,0(s4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024a5e: 07a2 slli a5,a5,0x8 - c0024a60: 8fcd or a5,a5,a1 - c0024a62: 007ac583 lbu a1,7(s5) - c0024a66: 2c01 sext.w s8,s8 - c0024a68: 05c2 slli a1,a1,0x10 - c0024a6a: 8fcd or a5,a5,a1 - c0024a6c: 008ac583 lbu a1,8(s5) - c0024a70: 05e2 slli a1,a1,0x18 - c0024a72: 8ddd or a1,a1,a5 + c0024c2e: 07a2 slli a5,a5,0x8 + c0024c30: 8fcd or a5,a5,a1 + c0024c32: 007ac583 lbu a1,7(s5) + c0024c36: 2c01 sext.w s8,s8 + c0024c38: 05c2 slli a1,a1,0x10 + c0024c3a: 8fcd or a5,a5,a1 + c0024c3c: 008ac583 lbu a1,8(s5) + c0024c40: 05e2 slli a1,a1,0x18 + c0024c42: 8ddd or a1,a1,a5 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32380 label = find_jump_target(s, label, &op1, NULL); - c0024a74: 2581 sext.w a1,a1 - c0024a76: 868e10ef jal ra,c0005ade -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32374 + c0024c44: 2581 sext.w a1,a1 + c0024c46: f87e00ef jal ra,c0005bcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32382 assert(label >= 0 && label < s->label_count); - c0024a7a: 00054663 bltz a0,c0024a86 - c0024a7e: 17c42783 lw a5,380(s0) - c0024a82: 00f54763 blt a0,a5,c0024a90 - c0024a86: 65a1 lui a1,0x8 - c0024a88: 4601 li a2,0 - c0024a8a: e7658593 addi a1,a1,-394 # 7e76 <__clzdi2-0xbfff818a> - c0024a8e: b0c5 j c002436e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32375 + c0024c4a: 00054663 bltz a0,c0024c56 + c0024c4e: 17c42783 lw a5,380(s0) + c0024c52: 00f54763 blt a0,a5,c0024c60 + c0024c56: 65a1 lui a1,0x8 + c0024c58: 4601 li a2,0 + c0024c5a: e7e58593 addi a1,a1,-386 # 7e7e <__clzdi2-0xbfff8182> + c0024c5e: b0c5 j c002453e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32383 ls = &label_slots[label]; - c0024a90: 47e1 li a5,24 - c0024a92: 02f507b3 mul a5,a0,a5 - c0024a96: 6742 ld a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32376 + c0024c60: 47e1 li a5,24 + c0024c62: 02f507b3 mul a5,a0,a5 + c0024c66: 6742 ld a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32384 add_pc2line_info(s, bc_out.size, line_num); - c0024a98: 5642 lw a2,48(sp) - c0024a9a: 55e6 lw a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32375 + c0024c68: 5642 lw a2,48(sp) + c0024c6a: 55e6 lw a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32383 ls = &label_slots[label]; - c0024a9c: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32376 + c0024c6c: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32384 add_pc2line_info(s, bc_out.size, line_num); - c0024a9e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32375 + c0024c6e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32383 ls = &label_slots[label]; - c0024aa0: 00f70ab3 add s5,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32376 + c0024c70: 00f70ab3 add s5,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32384 add_pc2line_info(s, bc_out.size, line_num); - c0024aa4: a69df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32378 + c0024c74: 899df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32386 jp = &s->jump_slots[s->jump_count++]; - c0024aa8: 1b442603 lw a2,436(s0) - c0024aac: 1a843703 ld a4,424(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32380 + c0024c78: 1b442603 lw a2,436(s0) + c0024c7c: 1a843703 ld a4,424(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32388 jp->size = 4; - c0024ab0: 4791 li a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32378 + c0024c80: 4791 li a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32386 jp = &s->jump_slots[s->jump_count++]; - c0024ab2: 0016059b addiw a1,a2,1 - c0024ab6: 0612 slli a2,a2,0x4 - c0024ab8: 9732 add a4,a4,a2 - c0024aba: 1ab42a23 sw a1,436(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32380 + c0024c82: 0016059b addiw a1,a2,1 + c0024c86: 0612 slli a2,a2,0x4 + c0024c88: 9732 add a4,a4,a2 + c0024c8a: 1ab42a23 sw a1,436(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32388 jp->size = 4; - c0024abe: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32379 + c0024c8e: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32387 jp->op = op; - c0024ac0: 01272023 sw s2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32381 + c0024c90: 01272023 sw s2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32389 jp->pos = bc_out.size + 5; - c0024ac4: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32382 + c0024c94: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32390 jp->label = label; - c0024ac6: 66e2 ld a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32384 + c0024c96: 66e2 ld a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32392 dbuf_putc(&bc_out, op); - c0024ac8: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32381 + c0024c98: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32389 jp->pos = bc_out.size + 5; - c0024aca: 2615 addiw a2,a2,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32382 + c0024c9a: 2615 addiw a2,a2,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32390 jp->label = label; - c0024acc: c754 sw a3,12(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32381 + c0024c9c: c754 sw a3,12(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32389 jp->pos = bc_out.size + 5; - c0024ace: c710 sw a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32384 + c0024c9e: c710 sw a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32392 dbuf_putc(&bc_out, op); - c0024ad0: 1888 addi a0,sp,112 - c0024ad2: 270230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32385 + c0024ca0: 1888 addi a0,sp,112 + c0024ca2: 270230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32393 dbuf_put_u32(&bc_out, atom); - c0024ad6: 85e2 mv a1,s8 - c0024ad8: 1888 addi a0,sp,112 - c0024ada: 94fe00ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32386 + c0024ca6: 85e2 mv a1,s8 + c0024ca8: 1888 addi a0,sp,112 + c0024caa: 86de00ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32394 dbuf_put_u32(&bc_out, ls->addr - bc_out.size); - c0024ade: 7766 ld a4,120(sp) - c0024ae0: 00caa583 lw a1,12(s5) - c0024ae4: 1888 addi a0,sp,112 - c0024ae6: 9d99 subw a1,a1,a4 - c0024ae8: 941e00ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32387 + c0024cae: 7766 ld a4,120(sp) + c0024cb0: 00caa583 lw a1,12(s5) + c0024cb4: 1888 addi a0,sp,112 + c0024cb6: 9d99 subw a1,a1,a4 + c0024cb8: 85fe00ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32395 if (ls->addr == -1) { - c0024aec: 00caa683 lw a3,12(s5) - c0024af0: 577d li a4,-1 - c0024af2: 00e68463 beq a3,a4,c0024afa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32392 + c0024cbc: 00caa683 lw a3,12(s5) + c0024cc0: 577d li a4,-1 + c0024cc2: 00e68463 beq a3,a4,c0024cca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32400 dbuf_putc(&bc_out, is_with); - c0024af6: 85d2 mv a1,s4 - c0024af8: b371 j c0024884 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32389 + c0024cc6: 85d2 mv a1,s4 + c0024cc8: b371 j c0024a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32397 if (!add_reloc(ctx, ls, bc_out.size - 4, 4)) - c0024afa: 7666 ld a2,120(sp) - c0024afc: 4691 li a3,4 - c0024afe: 85d6 mv a1,s5 - c0024b00: 3671 addiw a2,a2,-4 - c0024b02: 856e mv a0,s11 - c0024b04: b33f00ef jal ra,c0015636 - c0024b08: f57d bnez a0,c0024af6 - c0024b0a: b599 j c0024950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32399 + c0024cca: 7666 ld a2,120(sp) + c0024ccc: 4691 li a3,4 + c0024cce: 85d6 mv a1,s5 + c0024cd0: 3671 addiw a2,a2,-4 + c0024cd2: 856e mv a0,s11 + c0024cd4: b33f00ef jal ra,c0015806 + c0024cd8: f57d bnez a0,c0024cc6 + c0024cda: b599 j c0024b20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32407 if (code_match(&cc, pos_next, OP_return_undef, -1)) { - c0024b0c: 56fd li a3,-1 - c0024b0e: 02900613 li a2,41 - c0024b12: 85a6 mv a1,s1 - c0024b14: 00a8 addi a0,sp,72 - c0024b16: d5ee00ef jal ra,c0005074 - c0024b1a: 900505e3 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32400 + c0024cdc: 56fd li a3,-1 + c0024cde: 02900613 li a2,41 + c0024ce2: 85a6 mv a1,s1 + c0024ce4: 00a8 addi a0,sp,72 + c0024ce6: b8ee00ef jal ra,c0005074 + c0024cea: 900505e3 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32408 if (cc.line_num >= 0) line_num = cc.line_num; - c0024b1e: 47e6 lw a5,88(sp) - c0024b20: aa07d7e3 bgez a5,c00245ce - c0024b24: be09 j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32410 + c0024cee: 47e6 lw a5,88(sp) + c0024cf0: aa07d7e3 bgez a5,c002479e + c0024cf4: be09 j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32418 if (code_match(&cc, pos_next, OP_strict_eq, -1)) { - c0024b26: 56fd li a3,-1 - c0024b28: 0ac00613 li a2,172 - c0024b2c: 85a6 mv a1,s1 - c0024b2e: 00a8 addi a0,sp,72 - c0024b30: d44e00ef jal ra,c0005074 - c0024b34: c105 beqz a0,c0024b54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32411 + c0024cf6: 56fd li a3,-1 + c0024cf8: 0ac00613 li a2,172 + c0024cfc: 85a6 mv a1,s1 + c0024cfe: 00a8 addi a0,sp,72 + c0024d00: b74e00ef jal ra,c0005074 + c0024d04: c105 beqz a0,c0024d24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32419 if (cc.line_num >= 0) line_num = cc.line_num; - c0024b36: 47e6 lw a5,88(sp) - c0024b38: 0007c363 bltz a5,c0024b3e - c0024b3c: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32412 + c0024d06: 47e6 lw a5,88(sp) + c0024d08: 0007c363 bltz a5,c0024d0e + c0024d0c: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32420 add_pc2line_info(s, bc_out.size, line_num); - c0024b3e: 55e6 lw a1,120(sp) - c0024b40: 5642 lw a2,48(sp) - c0024b42: 8522 mv a0,s0 - c0024b44: 9c9df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32413 + c0024d0e: 55e6 lw a1,120(sp) + c0024d10: 5642 lw a2,48(sp) + c0024d12: 8522 mv a0,s0 + c0024d14: ff8df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32421 dbuf_putc(&bc_out, OP_is_null); - c0024b48: 0f300593 li a1,243 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32780 + c0024d18: 0f300593 li a1,243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32788 dbuf_putc(&bc_out, OP_put_array_el); - c0024b4c: 1888 addi a0,sp,112 - c0024b4e: 1f4230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32781 + c0024d1c: 1888 addi a0,sp,112 + c0024d1e: 1f4230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32789 pos_next = cc.pos; - c0024b52: a0e5 j c0024c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32418 + c0024d22: a0e5 j c0024e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32426 if (code_match(&cc, pos_next, OP_strict_neq, M2(OP_if_false, OP_if_true), -1)) { - c0024b54: 669d lui a3,0x7 - c0024b56: 577d li a4,-1 - c0024b58: b6a68693 addi a3,a3,-1174 # 6b6a <__clzdi2-0xbfff9496> - c0024b5c: 0ad00613 li a2,173 - c0024b60: 85a6 mv a1,s1 - c0024b62: 00a8 addi a0,sp,72 - c0024b64: d10e00ef jal ra,c0005074 - c0024b68: c50d beqz a0,c0024b92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32419 + c0024d24: 669d lui a3,0x7 + c0024d26: 577d li a4,-1 + c0024d28: b6a68693 addi a3,a3,-1174 # 6b6a <__clzdi2-0xbfff9496> + c0024d2c: 0ad00613 li a2,173 + c0024d30: 85a6 mv a1,s1 + c0024d32: 00a8 addi a0,sp,72 + c0024d34: b40e00ef jal ra,c0005074 + c0024d38: c50d beqz a0,c0024d62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32427 if (cc.line_num >= 0) line_num = cc.line_num; - c0024b6a: 47e6 lw a5,88(sp) - c0024b6c: 0007c363 bltz a5,c0024b72 - c0024b70: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32420 + c0024d3a: 47e6 lw a5,88(sp) + c0024d3c: 0007c363 bltz a5,c0024d42 + c0024d40: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32428 add_pc2line_info(s, bc_out.size, line_num); - c0024b72: 55e6 lw a1,120(sp) - c0024b74: 5642 lw a2,48(sp) - c0024b76: 8522 mv a0,s0 - c0024b78: 995df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32421 + c0024d42: 55e6 lw a1,120(sp) + c0024d44: 5642 lw a2,48(sp) + c0024d46: 8522 mv a0,s0 + c0024d48: fc4df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32429 dbuf_putc(&bc_out, OP_is_null); - c0024b7c: 0f300593 li a1,243 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32583 + c0024d4c: 0f300593 li a1,243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32591 dbuf_putc(&bc_out, OP_is_undefined); - c0024b80: 1888 addi a0,sp,112 - c0024b82: 1c0230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32586 + c0024d50: 1888 addi a0,sp,112 + c0024d52: 1c0230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32594 op = cc.op ^ OP_if_false ^ OP_if_true; - c0024b86: 4976 lw s2,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32584 + c0024d56: 4976 lw s2,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32592 pos_next = cc.pos; - c0024b88: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32585 + c0024d58: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32593 label = cc.label; - c0024b8a: 5a96 lw s5,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32586 + c0024d5a: 5a96 lw s5,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32594 op = cc.op ^ OP_if_false ^ OP_if_true; - c0024b8c: 00194913 xori s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32587 + c0024d5c: 00194913 xori s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32595 goto has_label; - c0024b90: b13d j c00247be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32434 + c0024d60: b13d j c002498e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32442 if (code_match(&cc, pos_next, M2(OP_if_false, OP_if_true), -1)) { - c0024b92: 661d lui a2,0x7 - c0024b94: 56fd li a3,-1 - c0024b96: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> - c0024b9a: 85a6 mv a1,s1 - c0024b9c: 00a8 addi a0,sp,72 - c0024b9e: cd6e00ef jal ra,c0005074 - c0024ba2: 880501e3 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32433 + c0024d62: 661d lui a2,0x7 + c0024d64: 56fd li a3,-1 + c0024d66: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> + c0024d6a: 85a6 mv a1,s1 + c0024d6c: 00a8 addi a0,sp,72 + c0024d6e: b06e00ef jal ra,c0005074 + c0024d72: 880501e3 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32441 val = (op == OP_push_true); - c0024ba6: 1959 addi s2,s2,-10 - c0024ba8: 00193913 seqz s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32436 + c0024d76: 1959 addi s2,s2,-10 + c0024d78: 00193913 seqz s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32444 if (cc.line_num >= 0) line_num = cc.line_num; - c0024bac: 47e6 lw a5,88(sp) - c0024bae: 0007c363 bltz a5,c0024bb4 - c0024bb2: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32437 + c0024d7c: 47e6 lw a5,88(sp) + c0024d7e: 0007c363 bltz a5,c0024d84 + c0024d82: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32445 if (val == cc.op - OP_if_false) { - c0024bb4: 47f6 lw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32441 + c0024d84: 47f6 lw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32449 pos_next = cc.pos; - c0024bb6: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32443 + c0024d86: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32451 label = cc.label; - c0024bb8: 5596 lw a1,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32437 + c0024d88: 5596 lw a1,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32445 if (val == cc.op - OP_if_false) { - c0024bba: f967879b addiw a5,a5,-106 - c0024bbe: b9278ee3 beq a5,s2,c002475a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32450 + c0024d8a: f967879b addiw a5,a5,-106 + c0024d8e: b9278ee3 beq a5,s2,c002492a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32458 update_label(s, cc.label, -1); - c0024bc2: 567d li a2,-1 - c0024bc4: be5d j c002477a + c0024d92: 567d li a2,-1 + c0024d94: be5d j c002494a get_i32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:175 return (int32_t)((const struct packed_u32 *)tab)->v; - c0024bc6: 002ac503 lbu a0,2(s5) - c0024bca: 001ac903 lbu s2,1(s5) + c0024d96: 002ac503 lbu a0,2(s5) + c0024d9a: 001ac903 lbu s2,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32469 if ((val != INT32_MIN && val != 0) - c0024bce: 800007b7 lui a5,0x80000 + c0024d9e: 800007b7 lui a5,0x80000 get_i32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:175 - c0024bd2: 0522 slli a0,a0,0x8 - c0024bd4: 01256533 or a0,a0,s2 - c0024bd8: 003ac903 lbu s2,3(s5) - c0024bdc: 0942 slli s2,s2,0x10 - c0024bde: 00a96533 or a0,s2,a0 - c0024be2: 004ac903 lbu s2,4(s5) - c0024be6: 0962 slli s2,s2,0x18 - c0024be8: 00a96933 or s2,s2,a0 - c0024bec: 2901 sext.w s2,s2 + c0024da2: 0522 slli a0,a0,0x8 + c0024da4: 01256533 or a0,a0,s2 + c0024da8: 003ac903 lbu s2,3(s5) + c0024dac: 0942 slli s2,s2,0x10 + c0024dae: 00a96533 or a0,s2,a0 + c0024db2: 004ac903 lbu s2,4(s5) + c0024db6: 0962 slli s2,s2,0x18 + c0024db8: 00a96933 or s2,s2,a0 + c0024dbc: 2901 sext.w s2,s2 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32461 - c0024bee: 04f90863 beq s2,a5,c0024c3e - c0024bf2: 04090663 beqz s2,c0024c3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32469 + c0024dbe: 04f90863 beq s2,a5,c0024e0e + c0024dc2: 04090663 beqz s2,c0024e0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32470 && code_match(&cc, pos_next, OP_neg, -1)) { - c0024bf6: 56fd li a3,-1 - c0024bf8: 08d00613 li a2,141 - c0024bfc: 85a6 mv a1,s1 - c0024bfe: 00a8 addi a0,sp,72 - c0024c00: c74e00ef jal ra,c0005074 - c0024c04: cd0d beqz a0,c0024c3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32463 + c0024dc6: 56fd li a3,-1 + c0024dc8: 08d00613 li a2,141 + c0024dcc: 85a6 mv a1,s1 + c0024dce: 00a8 addi a0,sp,72 + c0024dd0: aa4e00ef jal ra,c0005074 + c0024dd4: cd0d beqz a0,c0024e0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32471 if (cc.line_num >= 0) line_num = cc.line_num; - c0024c06: 47e6 lw a5,88(sp) - c0024c08: 0007c363 bltz a5,c0024c0e - c0024c0c: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32464 + c0024dd6: 47e6 lw a5,88(sp) + c0024dd8: 0007c363 bltz a5,c0024dde + c0024ddc: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32472 if (code_match(&cc, cc.pos, OP_drop, -1)) { - c0024c0e: 45d6 lw a1,84(sp) - c0024c10: 56fd li a3,-1 - c0024c12: 4639 li a2,14 - c0024c14: 00a8 addi a0,sp,72 - c0024c16: c5ee00ef jal ra,c0005074 - c0024c1a: c511 beqz a0,c0024c26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32553 + c0024dde: 45d6 lw a1,84(sp) + c0024de0: 56fd li a3,-1 + c0024de2: 4639 li a2,14 + c0024de4: 00a8 addi a0,sp,72 + c0024de6: a8ee00ef jal ra,c0005074 + c0024dea: c511 beqz a0,c0024df6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32561 if (cc.line_num >= 0) line_num = cc.line_num; - c0024c1c: 47e6 lw a5,88(sp) - c0024c1e: 0007ce63 bltz a5,c0024c3a - c0024c22: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32554 + c0024dec: 47e6 lw a5,88(sp) + c0024dee: 0007ce63 bltz a5,c0024e0a + c0024df2: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32562 pos_next = cc.pos; - c0024c24: a819 j c0024c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32467 + c0024df4: a819 j c0024e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32475 add_pc2line_info(s, bc_out.size, line_num); - c0024c26: 55e6 lw a1,120(sp) - c0024c28: 5642 lw a2,48(sp) - c0024c2a: 8522 mv a0,s0 - c0024c2c: 8e1df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32468 + c0024df6: 55e6 lw a1,120(sp) + c0024df8: 5642 lw a2,48(sp) + c0024dfa: 8522 mv a0,s0 + c0024dfc: f10df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32476 push_short_int(&bc_out, -val); - c0024c30: 412005bb negw a1,s2 - c0024c34: 1888 addi a0,sp,112 - c0024c36: 9efe00ef jal ra,c0005624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32809 + c0024e00: 412005bb negw a1,s2 + c0024e04: 1888 addi a0,sp,112 + c0024e06: 90de00ef jal ra,c0005712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32817 pos_next = cc.pos; - c0024c3a: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32810 + c0024e0a: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32818 break; - c0024c3c: baed j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32474 + c0024e0c: baed j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32482 if (code_match(&cc, pos_next, OP_drop, -1)) { - c0024c3e: 56fd li a3,-1 - c0024c40: 4639 li a2,14 - c0024c42: 85a6 mv a1,s1 - c0024c44: 00a8 addi a0,sp,72 - c0024c46: c2ee00ef jal ra,c0005074 - c0024c4a: f969 bnez a0,c0024c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32480 + c0024e0e: 56fd li a3,-1 + c0024e10: 4639 li a2,14 + c0024e12: 85a6 mv a1,s1 + c0024e14: 00a8 addi a0,sp,72 + c0024e16: a5ee00ef jal ra,c0005074 + c0024e1a: f969 bnez a0,c0024dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32488 if (code_match(&cc, pos_next, M2(OP_if_false, OP_if_true), -1)) { - c0024c4c: 661d lui a2,0x7 - c0024c4e: 56fd li a3,-1 - c0024c50: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> - c0024c54: 85a6 mv a1,s1 - c0024c56: 00a8 addi a0,sp,72 - c0024c58: c1ce00ef jal ra,c0005074 - c0024c5c: c501 beqz a0,c0024c64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32481 + c0024e1c: 661d lui a2,0x7 + c0024e1e: 56fd li a3,-1 + c0024e20: b6a60613 addi a2,a2,-1174 # 6b6a <__clzdi2-0xbfff9496> + c0024e24: 85a6 mv a1,s1 + c0024e26: 00a8 addi a0,sp,72 + c0024e28: a4ce00ef jal ra,c0005074 + c0024e2c: c501 beqz a0,c0024e34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32489 val = (val != 0); - c0024c5e: 01203933 snez s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32482 + c0024e2e: 01203933 snez s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32490 goto has_constant_test; - c0024c62: b7a9 j c0024bac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32484 + c0024e32: b7a9 j c0024d7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32492 add_pc2line_info(s, bc_out.size, line_num); - c0024c64: 55e6 lw a1,120(sp) - c0024c66: 5642 lw a2,48(sp) - c0024c68: 8522 mv a0,s0 - c0024c6a: 8a3df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32485 + c0024e34: 55e6 lw a1,120(sp) + c0024e36: 5642 lw a2,48(sp) + c0024e38: 8522 mv a0,s0 + c0024e3a: ed2df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32493 push_short_int(&bc_out, val); - c0024c6e: 85ca mv a1,s2 - c0024c70: 1888 addi a0,sp,112 - c0024c72: 9b3e00ef jal ra,c0005624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32486 + c0024e3e: 85ca mv a1,s2 + c0024e40: 1888 addi a0,sp,112 + c0024e42: 8d1e00ef jal ra,c0005712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32494 break; - c0024c76: b2c1 j c0024636 + c0024e46: b2c1 j c0024806 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0024c78: 002ac703 lbu a4,2(s5) - c0024c7c: 001ac783 lbu a5,1(s5) - c0024c80: 0722 slli a4,a4,0x8 - c0024c82: 8f5d or a4,a4,a5 - c0024c84: 003ac783 lbu a5,3(s5) - c0024c88: 07c2 slli a5,a5,0x10 - c0024c8a: 8f5d or a4,a4,a5 - c0024c8c: 004ac783 lbu a5,4(s5) - c0024c90: 07e2 slli a5,a5,0x18 - c0024c92: 8fd9 or a5,a5,a4 - c0024c94: 0007891b sext.w s2,a5 + c0024e48: 002ac703 lbu a4,2(s5) + c0024e4c: 001ac783 lbu a5,1(s5) + c0024e50: 0722 slli a4,a4,0x8 + c0024e52: 8f5d or a4,a4,a5 + c0024e54: 003ac783 lbu a5,3(s5) + c0024e58: 07c2 slli a5,a5,0x10 + c0024e5a: 8f5d or a4,a4,a5 + c0024e5c: 004ac783 lbu a5,4(s5) + c0024e60: 07e2 slli a5,a5,0x18 + c0024e62: 8fd9 or a5,a5,a4 + c0024e64: 0007891b sext.w s2,a5 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32495 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32503 if (idx < 256) { - c0024c98: 0ff00713 li a4,255 - c0024c9c: f9274463 blt a4,s2,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32496 + c0024e68: 0ff00713 li a4,255 + c0024e6c: f9274463 blt a4,s2,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32504 add_pc2line_info(s, bc_out.size, line_num); - c0024ca0: 5642 lw a2,48(sp) - c0024ca2: 55e6 lw a1,120(sp) - c0024ca4: 8522 mv a0,s0 - c0024ca6: 867df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32497 + c0024e70: 5642 lw a2,48(sp) + c0024e72: 55e6 lw a1,120(sp) + c0024e74: 8522 mv a0,s0 + c0024e76: e96df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32505 dbuf_putc(&bc_out, OP_push_const8 + op - OP_push_const); - c0024caa: fbd9859b addiw a1,s3,-67 - c0024cae: 0ff5f593 zext.b a1,a1 - c0024cb2: 1888 addi a0,sp,112 - c0024cb4: 08e230ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32498 + c0024e7a: fbd9859b addiw a1,s3,-67 + c0024e7e: 0ff5f593 zext.b a1,a1 + c0024e82: 1888 addi a0,sp,112 + c0024e84: 08e230ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32506 dbuf_putc(&bc_out, idx); - c0024cb8: 0ff97593 zext.b a1,s2 - c0024cbc: b6e1 j c0024884 + c0024e88: 0ff97593 zext.b a1,s2 + c0024e8c: b6e1 j c0024a54 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024cbe: 002ac783 lbu a5,2(s5) - c0024cc2: 001ac903 lbu s2,1(s5) + c0024e8e: 002ac783 lbu a5,2(s5) + c0024e92: 001ac903 lbu s2,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32528 if (code_match(&cc, pos_next, OP_drop, -1)) { - c0024cc6: 56fd li a3,-1 + c0024e96: 56fd li a3,-1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024cc8: 07a2 slli a5,a5,0x8 - c0024cca: 0127e7b3 or a5,a5,s2 - c0024cce: 003ac903 lbu s2,3(s5) + c0024e98: 07a2 slli a5,a5,0x8 + c0024e9a: 0127e7b3 or a5,a5,s2 + c0024e9e: 003ac903 lbu s2,3(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32520 - c0024cd2: 4639 li a2,14 - c0024cd4: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32528 + c0024ea2: 4639 li a2,14 + c0024ea4: 85a6 mv a1,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024cd6: 0942 slli s2,s2,0x10 - c0024cd8: 00f967b3 or a5,s2,a5 - c0024cdc: 004ac903 lbu s2,4(s5) + c0024ea6: 0942 slli s2,s2,0x10 + c0024ea8: 00f967b3 or a5,s2,a5 + c0024eac: 004ac903 lbu s2,4(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32520 - c0024ce0: 00a8 addi a0,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32528 + c0024eb0: 00a8 addi a0,sp,72 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0024ce2: 0962 slli s2,s2,0x18 - c0024ce4: 00f96933 or s2,s2,a5 - c0024ce8: 2901 sext.w s2,s2 + c0024eb2: 0962 slli s2,s2,0x18 + c0024eb4: 00f96933 or s2,s2,a5 + c0024eb8: 2901 sext.w s2,s2 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32520 - c0024cea: b8ae00ef jal ra,c0005074 - c0024cee: c511 beqz a0,c0024cfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32528 + c0024eba: 9bae00ef jal ra,c0005074 + c0024ebe: c511 beqz a0,c0024eca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32529 JS_FreeAtom(ctx, atom); - c0024cf0: 85ca mv a1,s2 - c0024cf2: 856e mv a0,s11 - c0024cf4: 819e20ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32522 + c0024ec0: 85ca mv a1,s2 + c0024ec2: 856e mv a0,s11 + c0024ec4: f36e20ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32530 if (cc.line_num >= 0) line_num = cc.line_num; - c0024cf8: b715 j c0024c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32527 + c0024ec8: b715 j c0024dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32535 if (atom == JS_ATOM_empty_string) { - c0024cfa: 02f00793 li a5,47 - c0024cfe: f2f91363 bne s2,a5,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32529 + c0024eca: 02f00793 li a5,47 + c0024ece: f2f91363 bne s2,a5,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32537 add_pc2line_info(s, bc_out.size, line_num); - c0024d02: 55e6 lw a1,120(sp) - c0024d04: 5642 lw a2,48(sp) - c0024d06: 8522 mv a0,s0 - c0024d08: 805df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32530 + c0024ed2: 55e6 lw a1,120(sp) + c0024ed4: 5642 lw a2,48(sp) + c0024ed6: 8522 mv a0,s0 + c0024ed8: e34df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32538 dbuf_putc(&bc_out, OP_push_empty_string); - c0024d0c: 0c100593 li a1,193 - c0024d10: be95 j c0024884 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32541 + c0024edc: 0c100593 li a1,193 + c0024ee0: be95 j c0024a54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32549 if (code_match(&cc, pos_next, M3(OP_get_loc, OP_get_arg, OP_get_var_ref), -1, OP_put_array_el, -1) - c0024d12: 005e6637 lui a2,0x5e6 - c0024d16: 57fd li a5,-1 - c0024d18: 04900713 li a4,73 - c0024d1c: 56fd li a3,-1 - c0024d1e: b5860613 addi a2,a2,-1192 # 5e5b58 <__clzdi2-0xbfa1a4a8> - c0024d22: 85a6 mv a1,s1 - c0024d24: 00a8 addi a0,sp,72 - c0024d26: b4ee00ef jal ra,c0005074 - c0024d2a: 900516e3 bnez a0,c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32542 + c0024ee2: 005e6637 lui a2,0x5e6 + c0024ee6: 57fd li a5,-1 + c0024ee8: 04900713 li a4,73 + c0024eec: 56fd li a3,-1 + c0024eee: b5860613 addi a2,a2,-1192 # 5e5b58 <__clzdi2-0xbfa1a4a8> + c0024ef2: 85a6 mv a1,s1 + c0024ef4: 00a8 addi a0,sp,72 + c0024ef6: 97ee00ef jal ra,c0005074 + c0024efa: 900516e3 bnez a0,c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32550 || code_match(&cc, pos_next, M3(OP_push_i32, OP_push_const, OP_push_atom_value), OP_put_array_el, -1) - c0024d2e: 00040637 lui a2,0x40 - c0024d32: 577d li a4,-1 - c0024d34: 04900693 li a3,73 - c0024d38: 20160613 addi a2,a2,513 # 40201 <__clzdi2-0xbffbfdff> - c0024d3c: 85a6 mv a1,s1 - c0024d3e: 00a8 addi a0,sp,72 - c0024d40: b34e00ef jal ra,c0005074 - c0024d44: 8e0519e3 bnez a0,c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32543 + c0024efe: 00040637 lui a2,0x40 + c0024f02: 577d li a4,-1 + c0024f04: 04900693 li a3,73 + c0024f08: 20160613 addi a2,a2,513 # 40201 <__clzdi2-0xbffbfdff> + c0024f0c: 85a6 mv a1,s1 + c0024f0e: 00a8 addi a0,sp,72 + c0024f10: 964e00ef jal ra,c0005074 + c0024f14: 8e0519e3 bnez a0,c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32551 || code_match(&cc, pos_next, M4(OP_undefined, OP_null, OP_push_true, OP_push_false), OP_put_array_el, -1)) { - c0024d48: 090a0637 lui a2,0x90a0 - c0024d4c: 577d li a4,-1 - c0024d4e: 04900693 li a3,73 - c0024d52: 70660613 addi a2,a2,1798 # 90a0706 <__clzdi2-0xb6f5f8fa> - c0024d56: 85a6 mv a1,s1 - c0024d58: 00a8 addi a0,sp,72 - c0024d5a: b1ae00ef jal ra,c0005074 - c0024d5e: 8c051ce3 bnez a0,c0024636 - c0024d62: ec2ff06f j c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32552 + c0024f18: 090a0637 lui a2,0x90a0 + c0024f1c: 577d li a4,-1 + c0024f1e: 04900693 li a3,73 + c0024f22: 70660613 addi a2,a2,1798 # 90a0706 <__clzdi2-0xb6f5f8fa> + c0024f26: 85a6 mv a1,s1 + c0024f28: 00a8 addi a0,sp,72 + c0024f2a: 94ae00ef jal ra,c0005074 + c0024f2e: 8c051ce3 bnez a0,c0024806 + c0024f32: ec2ff06f j c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32560 if (code_match(&cc, pos_next, OP_drop, -1)) { - c0024d66: 56fd li a3,-1 - c0024d68: 4639 li a2,14 - c0024d6a: 85a6 mv a1,s1 - c0024d6c: 00a8 addi a0,sp,72 - c0024d6e: b06e00ef jal ra,c0005074 - c0024d72: ea0515e3 bnez a0,c0024c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32558 + c0024f36: 56fd li a3,-1 + c0024f38: 4639 li a2,14 + c0024f3a: 85a6 mv a1,s1 + c0024f3c: 00a8 addi a0,sp,72 + c0024f3e: 936e00ef jal ra,c0005074 + c0024f42: ea0515e3 bnez a0,c0024dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32566 if (code_match(&cc, pos_next, OP_return, -1)) { - c0024d76: 56fd li a3,-1 - c0024d78: 02800613 li a2,40 - c0024d7c: 85a6 mv a1,s1 - c0024d7e: 00a8 addi a0,sp,72 - c0024d80: af4e00ef jal ra,c0005074 - c0024d84: 892a mv s2,a0 - c0024d86: cd09 beqz a0,c0024da0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32559 + c0024f46: 56fd li a3,-1 + c0024f48: 02800613 li a2,40 + c0024f4c: 85a6 mv a1,s1 + c0024f4e: 00a8 addi a0,sp,72 + c0024f50: 924e00ef jal ra,c0005074 + c0024f54: 892a mv s2,a0 + c0024f56: cd09 beqz a0,c0024f70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32567 if (cc.line_num >= 0) line_num = cc.line_num; - c0024d88: 47e6 lw a5,88(sp) - c0024d8a: 0007c363 bltz a5,c0024d90 - c0024d8e: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32560 + c0024f58: 47e6 lw a5,88(sp) + c0024f5a: 0007c363 bltz a5,c0024f60 + c0024f5e: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32568 add_pc2line_info(s, bc_out.size, line_num); - c0024d90: 55e6 lw a1,120(sp) - c0024d92: 5642 lw a2,48(sp) - c0024d94: 8522 mv a0,s0 - c0024d96: f76df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32561 + c0024f60: 55e6 lw a1,120(sp) + c0024f62: 5642 lw a2,48(sp) + c0024f64: 8522 mv a0,s0 + c0024f66: da6df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32569 dbuf_putc(&bc_out, OP_return_undef); - c0024d9a: 02900593 li a1,41 - c0024d9e: b37d j c0024b4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32566 + c0024f6a: 02900593 li a1,41 + c0024f6e: b37d j c0024d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32574 if (code_match(&cc, pos_next, M2(OP_if_false, OP_if_true), -1)) { - c0024da0: 699d lui s3,0x7 - c0024da2: 56fd li a3,-1 - c0024da4: b6a98613 addi a2,s3,-1174 # 6b6a <__clzdi2-0xbfff9496> - c0024da8: 85a6 mv a1,s1 - c0024daa: 00a8 addi a0,sp,72 - c0024dac: ac8e00ef jal ra,c0005074 - c0024db0: de051ee3 bnez a0,c0024bac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32572 + c0024f70: 699d lui s3,0x7 + c0024f72: 56fd li a3,-1 + c0024f74: b6a98613 addi a2,s3,-1174 # 6b6a <__clzdi2-0xbfff9496> + c0024f78: 85a6 mv a1,s1 + c0024f7a: 00a8 addi a0,sp,72 + c0024f7c: 8f8e00ef jal ra,c0005074 + c0024f80: de051ee3 bnez a0,c0024d7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32580 if (code_match(&cc, pos_next, OP_strict_eq, -1)) { - c0024db4: 56fd li a3,-1 - c0024db6: 0ac00613 li a2,172 - c0024dba: 85a6 mv a1,s1 - c0024dbc: 00a8 addi a0,sp,72 - c0024dbe: ab6e00ef jal ra,c0005074 - c0024dc2: cd09 beqz a0,c0024ddc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32573 + c0024f84: 56fd li a3,-1 + c0024f86: 0ac00613 li a2,172 + c0024f8a: 85a6 mv a1,s1 + c0024f8c: 00a8 addi a0,sp,72 + c0024f8e: 8e6e00ef jal ra,c0005074 + c0024f92: cd09 beqz a0,c0024fac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32581 if (cc.line_num >= 0) line_num = cc.line_num; - c0024dc4: 47e6 lw a5,88(sp) - c0024dc6: 0007c363 bltz a5,c0024dcc - c0024dca: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32574 + c0024f94: 47e6 lw a5,88(sp) + c0024f96: 0007c363 bltz a5,c0024f9c + c0024f9a: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32582 add_pc2line_info(s, bc_out.size, line_num); - c0024dcc: 55e6 lw a1,120(sp) - c0024dce: 5642 lw a2,48(sp) - c0024dd0: 8522 mv a0,s0 - c0024dd2: f3adf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32575 + c0024f9c: 55e6 lw a1,120(sp) + c0024f9e: 5642 lw a2,48(sp) + c0024fa0: 8522 mv a0,s0 + c0024fa2: d6adf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32583 dbuf_putc(&bc_out, OP_is_undefined); - c0024dd6: 0f200593 li a1,242 - c0024dda: bb8d j c0024b4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32580 + c0024fa6: 0f200593 li a1,242 + c0024faa: bb8d j c0024d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32588 if (code_match(&cc, pos_next, OP_strict_neq, M2(OP_if_false, OP_if_true), -1)) { - c0024ddc: 577d li a4,-1 - c0024dde: b6a98693 addi a3,s3,-1174 - c0024de2: 0ad00613 li a2,173 - c0024de6: 85a6 mv a1,s1 - c0024de8: 00a8 addi a0,sp,72 - c0024dea: a8ae00ef jal ra,c0005074 - c0024dee: e2050b63 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32581 + c0024fac: 577d li a4,-1 + c0024fae: b6a98693 addi a3,s3,-1174 + c0024fb2: 0ad00613 li a2,173 + c0024fb6: 85a6 mv a1,s1 + c0024fb8: 00a8 addi a0,sp,72 + c0024fba: 8bae00ef jal ra,c0005074 + c0024fbe: e2050b63 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32589 if (cc.line_num >= 0) line_num = cc.line_num; - c0024df2: 47e6 lw a5,88(sp) - c0024df4: 0007c363 bltz a5,c0024dfa - c0024df8: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32582 + c0024fc2: 47e6 lw a5,88(sp) + c0024fc4: 0007c363 bltz a5,c0024fca + c0024fc8: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32590 add_pc2line_info(s, bc_out.size, line_num); - c0024dfa: 55e6 lw a1,120(sp) - c0024dfc: 5642 lw a2,48(sp) - c0024dfe: 8522 mv a0,s0 - c0024e00: f0cdf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32583 + c0024fca: 55e6 lw a1,120(sp) + c0024fcc: 5642 lw a2,48(sp) + c0024fce: 8522 mv a0,s0 + c0024fd0: d3cdf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32591 dbuf_putc(&bc_out, OP_is_undefined); - c0024e04: 0f200593 li a1,242 - c0024e08: bba5 j c0024b80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32599 + c0024fd4: 0f200593 li a1,242 + c0024fd8: bba5 j c0024d50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32607 if (code_match(&cc, pos_next, M2(OP_put_field, OP_put_var_strict), OP_drop, -1)) { - c0024e0a: 6611 lui a2,0x4 - c0024e0c: 577d li a4,-1 - c0024e0e: 46b9 li a3,14 - c0024e10: b4360613 addi a2,a2,-1213 # 3b43 <__clzdi2-0xbfffc4bd> - c0024e14: 85a6 mv a1,s1 - c0024e16: 00a8 addi a0,sp,72 - c0024e18: a5ce00ef jal ra,c0005074 - c0024e1c: e0050463 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32600 + c0024fda: 6611 lui a2,0x4 + c0024fdc: 577d li a4,-1 + c0024fde: 46b9 li a3,14 + c0024fe0: b4360613 addi a2,a2,-1213 # 3b43 <__clzdi2-0xbfffc4bd> + c0024fe4: 85a6 mv a1,s1 + c0024fe6: 00a8 addi a0,sp,72 + c0024fe8: 88ce00ef jal ra,c0005074 + c0024fec: e0050463 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32608 if (cc.line_num >= 0) line_num = cc.line_num; - c0024e20: 47e6 lw a5,88(sp) - c0024e22: 0007c363 bltz a5,c0024e28 - c0024e26: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32601 + c0024ff0: 47e6 lw a5,88(sp) + c0024ff2: 0007c363 bltz a5,c0024ff8 + c0024ff6: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32609 add_pc2line_info(s, bc_out.size, line_num); - c0024e28: 5642 lw a2,48(sp) - c0024e2a: 55e6 lw a1,120(sp) - c0024e2c: 8522 mv a0,s0 - c0024e2e: ededf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32771 + c0024ff8: 5642 lw a2,48(sp) + c0024ffa: 55e6 lw a1,120(sp) + c0024ffc: 8522 mv a0,s0 + c0024ffe: d0edf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32779 dbuf_putc(&bc_out, cc.op); - c0024e32: 05c14583 lbu a1,92(sp) - c0024e36: 1888 addi a0,sp,112 - c0024e38: 70b220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32772 + c0025002: 05c14583 lbu a1,92(sp) + c0025006: 1888 addi a0,sp,112 + c0025008: 70b220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32780 dbuf_put_u32(&bc_out, cc.atom); - c0024e3c: 55b6 lw a1,108(sp) - c0024e3e: 1888 addi a0,sp,112 - c0024e40: de8e00ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32773 + c002500c: 55b6 lw a1,108(sp) + c002500e: 1888 addi a0,sp,112 + c0025010: d06e00ef jal ra,c0005516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32781 pos_next = cc.pos; - c0024e44: bbdd j c0024c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32615 + c0025014: bbdd j c0024e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32623 if (code_match(&cc, pos_next, M3(OP_put_loc, OP_put_arg, OP_put_var_ref), -1, -1)) { - c0024e46: 005f6637 lui a2,0x5f6 - c0024e4a: 577d li a4,-1 - c0024e4c: 56fd li a3,-1 - c0024e4e: c5960613 addi a2,a2,-935 # 5f5c59 <__clzdi2-0xbfa0a3a7> - c0024e52: 85a6 mv a1,s1 - c0024e54: 00a8 addi a0,sp,72 - c0024e56: a1ee00ef jal ra,c0005074 - c0024e5a: dc050563 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32616 + c0025016: 005f6637 lui a2,0x5f6 + c002501a: 577d li a4,-1 + c002501c: 56fd li a3,-1 + c002501e: c5960613 addi a2,a2,-935 # 5f5c59 <__clzdi2-0xbfa0a3a7> + c0025022: 85a6 mv a1,s1 + c0025024: 00a8 addi a0,sp,72 + c0025026: 84ee00ef jal ra,c0005074 + c002502a: dc050563 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32624 if (cc.line_num >= 0) line_num = cc.line_num; - c0024e5e: 47e6 lw a5,88(sp) - c0024e60: 0007c363 bltz a5,c0024e66 - c0024e64: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32618 + c002502e: 47e6 lw a5,88(sp) + c0025030: 0007c363 bltz a5,c0025036 + c0025034: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32626 pos_next = cc.pos; - c0024e66: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32617 + c0025036: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32625 op1 = cc.op + 1; /* put_x -> set_x */ - c0024e68: 4a76 lw s4,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32619 + c0025038: 4a76 lw s4,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32627 if (code_match(&cc, cc.pos, OP_drop, -1)) { - c0024e6a: 56fd li a3,-1 - c0024e6c: 4639 li a2,14 - c0024e6e: 85a6 mv a1,s1 - c0024e70: 00a8 addi a0,sp,72 - c0024e72: a02e00ef jal ra,c0005074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32617 + c002503a: 56fd li a3,-1 + c002503c: 4639 li a2,14 + c002503e: 85a6 mv a1,s1 + c0025040: 00a8 addi a0,sp,72 + c0025042: 832e00ef jal ra,c0005074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32625 op1 = cc.op + 1; /* put_x -> set_x */ - c0024e76: 001a091b addiw s2,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32613 + c0025046: 001a091b addiw s2,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32621 int op1, line2 = -1; - c0024e7a: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32619 + c002504a: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32627 if (code_match(&cc, cc.pos, OP_drop, -1)) { - c0024e7c: c10d beqz a0,c0024e9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32620 + c002504c: c10d beqz a0,c002506e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32628 if (cc.line_num >= 0) line_num = cc.line_num; - c0024e7e: 47e6 lw a5,88(sp) - c0024e80: 0007c363 bltz a5,c0024e86 - c0024e84: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32622 + c002504e: 47e6 lw a5,88(sp) + c0025050: 0007c363 bltz a5,c0025056 + c0025054: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32630 pos_next = cc.pos; - c0024e86: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32623 + c0025056: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32631 if (code_match(&cc, cc.pos, op1 - 1, cc.idx, -1)) { - c0024e88: 5686 lw a3,96(sp) - c0024e8a: 577d li a4,-1 - c0024e8c: fffa061b addiw a2,s4,-1 - c0024e90: 85a6 mv a1,s1 - c0024e92: 00a8 addi a0,sp,72 - c0024e94: 9e0e00ef jal ra,c0005074 - c0024e98: c115 beqz a0,c0024ebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32624 + c0025058: 5686 lw a3,96(sp) + c002505a: 577d li a4,-1 + c002505c: fffa061b addiw a2,s4,-1 + c0025060: 85a6 mv a1,s1 + c0025062: 00a8 addi a0,sp,72 + c0025064: 810e00ef jal ra,c0005074 + c0025068: c115 beqz a0,c002508c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32632 line2 = cc.line_num; /* delay line number update */ - c0024e9a: 49e6 lw s3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32626 + c002506a: 49e6 lw s3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32634 pos_next = cc.pos; - c0024e9c: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32629 + c002506c: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32637 add_pc2line_info(s, bc_out.size, line_num); - c0024e9e: 5642 lw a2,48(sp) - c0024ea0: 55e6 lw a1,120(sp) - c0024ea2: 8522 mv a0,s0 - c0024ea4: e68df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32630 + c002506e: 5642 lw a2,48(sp) + c0025070: 55e6 lw a1,120(sp) + c0025072: 8522 mv a0,s0 + c0025074: c98df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32638 put_short_code(&bc_out, op1, cc.idx); - c0024ea8: 5606 lw a2,96(sp) - c0024eaa: 85ca mv a1,s2 - c0024eac: 1888 addi a0,sp,112 - c0024eae: c92e00ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32631 + c0025078: 5606 lw a2,96(sp) + c002507a: 85ca mv a1,s2 + c002507c: 1888 addi a0,sp,112 + c002507e: bb0e00ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32639 if (line2 >= 0) line_num = line2; - c0024eb2: f809c263 bltz s3,c0024636 - c0024eb6: d84e sw s3,48(sp) - c0024eb8: f7eff06f j c0024636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32621 + c0025082: f809c263 bltz s3,c0024806 + c0025086: d84e sw s3,48(sp) + c0025088: f7eff06f j c0024806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32629 op1 -= 1; /* set_x drop -> put_x */ - c0024ebc: 8952 mv s2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32613 + c002508c: 8952 mv s2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32621 int op1, line2 = -1; - c0024ebe: 59fd li s3,-1 - c0024ec0: bff9 j c0024e9e + c002508e: 59fd li s3,-1 + c0025090: bff9 j c002506e get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0024ec2: 002ac903 lbu s2,2(s5) - c0024ec6: 001ac783 lbu a5,1(s5) - c0024eca: 0922 slli s2,s2,0x8 - c0024ecc: 00f969b3 or s3,s2,a5 + c0025092: 002ac903 lbu s2,2(s5) + c0025096: 001ac783 lbu a5,1(s5) + c002509a: 0922 slli s2,s2,0x8 + c002509c: 00f969b3 or s3,s2,a5 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32655 if (idx >= 256) - c0024ed0: 0ff00793 li a5,255 - c0024ed4: d537c863 blt a5,s3,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32649 + c00250a0: 0ff00793 li a5,255 + c00250a4: d537c863 blt a5,s3,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32657 if (code_match(&cc, pos_next, M2(OP_post_dec, OP_post_inc), OP_put_loc, idx, OP_drop, -1) || - c0024ed8: 6a25 lui s4,0x9 - c0024eda: 587d li a6,-1 - c0024edc: 47b9 li a5,14 - c0024ede: 874e mv a4,s3 - c0024ee0: 05900693 li a3,89 - c0024ee4: 291a0613 addi a2,s4,657 # 9291 <__clzdi2-0xbfff6d6f> - c0024ee8: 85a6 mv a1,s1 - c0024eea: 00a8 addi a0,sp,72 - c0024eec: 988e00ef jal ra,c0005074 - c0024ef0: c90d beqz a0,c0024f22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32651 + c00250a8: 6a25 lui s4,0x9 + c00250aa: 587d li a6,-1 + c00250ac: 47b9 li a5,14 + c00250ae: 874e mv a4,s3 + c00250b0: 05900693 li a3,89 + c00250b4: 291a0613 addi a2,s4,657 # 9291 <__clzdi2-0xbfff6d6f> + c00250b8: 85a6 mv a1,s1 + c00250ba: 00a8 addi a0,sp,72 + c00250bc: fb9df0ef jal ra,c0005074 + c00250c0: c90d beqz a0,c00250f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32659 if (cc.line_num >= 0) line_num = cc.line_num; - c0024ef2: 47e6 lw a5,88(sp) - c0024ef4: 0807d963 bgez a5,c0024f86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32652 + c00250c2: 47e6 lw a5,88(sp) + c00250c4: 0807d963 bgez a5,c0025156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32660 add_pc2line_info(s, bc_out.size, line_num); - c0024ef8: 55e6 lw a1,120(sp) - c0024efa: 5642 lw a2,48(sp) - c0024efc: 8522 mv a0,s0 - c0024efe: e0edf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32653 + c00250c8: 55e6 lw a1,120(sp) + c00250ca: 5642 lw a2,48(sp) + c00250cc: 8522 mv a0,s0 + c00250ce: c3edf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32661 dbuf_putc(&bc_out, (cc.op == OP_inc || cc.op == OP_post_inc) ? OP_inc_loc : OP_dec_loc); - c0024f02: 47f6 lw a5,92(sp) - c0024f04: 09000713 li a4,144 - c0024f08: 09400593 li a1,148 - c0024f0c: 9bf5 andi a5,a5,-3 - c0024f0e: 00e78463 beq a5,a4,c0024f16 - c0024f12: 09300593 li a1,147 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32700 + c00250d2: 47f6 lw a5,92(sp) + c00250d4: 09000713 li a4,144 + c00250d8: 09400593 li a1,148 + c00250dc: 9bf5 andi a5,a5,-3 + c00250de: 00e78463 beq a5,a4,c00250e6 + c00250e2: 09300593 li a1,147 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32708 dbuf_putc(&bc_out, OP_add_loc); - c0024f16: 1888 addi a0,sp,112 - c0024f18: 62b220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32701 + c00250e6: 1888 addi a0,sp,112 + c00250e8: 62b220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32709 dbuf_putc(&bc_out, idx); - c0024f1c: 0ff9f593 zext.b a1,s3 - c0024f20: b135 j c0024b4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32650 + c00250ec: 0ff9f593 zext.b a1,s3 + c00250f0: b135 j c0024d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32658 code_match(&cc, pos_next, M2(OP_dec, OP_inc), OP_dup, OP_put_loc, idx, OP_drop, -1)) { - c0024f22: 58fd li a7,-1 - c0024f24: 4839 li a6,14 - c0024f26: 87ce mv a5,s3 - c0024f28: 05900713 li a4,89 - c0024f2c: 46c5 li a3,17 - c0024f2e: 08fa0613 addi a2,s4,143 - c0024f32: 85a6 mv a1,s1 - c0024f34: 00a8 addi a0,sp,72 - c0024f36: 93ee00ef jal ra,c0005074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32649 + c00250f2: 58fd li a7,-1 + c00250f4: 4839 li a6,14 + c00250f6: 87ce mv a5,s3 + c00250f8: 05900713 li a4,89 + c00250fc: 46c5 li a3,17 + c00250fe: 08fa0613 addi a2,s4,143 + c0025102: 85a6 mv a1,s1 + c0025104: 00a8 addi a0,sp,72 + c0025106: f6fdf0ef jal ra,c0005074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32657 if (code_match(&cc, pos_next, M2(OP_post_dec, OP_post_inc), OP_put_loc, idx, OP_drop, -1) || - c0024f3a: fd45 bnez a0,c0024ef2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32661 + c002510a: fd45 bnez a0,c00250c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32669 if (code_match(&cc, pos_next, OP_push_atom_value, OP_add, OP_dup, OP_put_loc, idx, OP_drop, -1)) { - c0024f3c: 5a7d li s4,-1 - c0024f3e: e052 sd s4,0(sp) - c0024f40: 48b9 li a7,14 - c0024f42: 884e mv a6,s3 - c0024f44: 05900793 li a5,89 - c0024f48: 4745 li a4,17 - c0024f4a: 09e00693 li a3,158 - c0024f4e: 4611 li a2,4 - c0024f50: 85a6 mv a1,s1 - c0024f52: 00a8 addi a0,sp,72 - c0024f54: 920e00ef jal ra,c0005074 - c0024f58: c131 beqz a0,c0024f9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32662 + c002510c: 5a7d li s4,-1 + c002510e: e052 sd s4,0(sp) + c0025110: 48b9 li a7,14 + c0025112: 884e mv a6,s3 + c0025114: 05900793 li a5,89 + c0025118: 4745 li a4,17 + c002511a: 09e00693 li a3,158 + c002511e: 4611 li a2,4 + c0025120: 85a6 mv a1,s1 + c0025122: 00a8 addi a0,sp,72 + c0025124: f51df0ef jal ra,c0005074 + c0025128: c131 beqz a0,c002516c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32670 if (cc.line_num >= 0) line_num = cc.line_num; - c0024f5a: 47e6 lw a5,88(sp) - c0024f5c: 0007c363 bltz a5,c0024f62 - c0024f60: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32663 + c002512a: 47e6 lw a5,88(sp) + c002512c: 0007c363 bltz a5,c0025132 + c0025130: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32671 add_pc2line_info(s, bc_out.size, line_num); - c0024f62: 5642 lw a2,48(sp) - c0024f64: 55e6 lw a1,120(sp) - c0024f66: 8522 mv a0,s0 - c0024f68: da4df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32665 + c0025132: 5642 lw a2,48(sp) + c0025134: 55e6 lw a1,120(sp) + c0025136: 8522 mv a0,s0 + c0025138: bd4df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32673 if (cc.atom == JS_ATOM_empty_string) { - c0024f6c: 5736 lw a4,108(sp) - c0024f6e: 02f00793 li a5,47 - c0024f72: 00f71c63 bne a4,a5,c0024f8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32667 + c002513c: 5736 lw a4,108(sp) + c002513e: 02f00793 li a5,47 + c0025142: 00f71c63 bne a4,a5,c002515a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32675 dbuf_putc(&bc_out, OP_push_empty_string); - c0024f76: 0c100593 li a1,193 - c0024f7a: 1888 addi a0,sp,112 - c0024f7c: 5c7220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32700 + c0025146: 0c100593 li a1,193 + c002514a: 1888 addi a0,sp,112 + c002514c: 5c7220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32708 dbuf_putc(&bc_out, OP_add_loc); - c0024f80: 09500593 li a1,149 - c0024f84: bf49 j c0024f16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32651 + c0025150: 09500593 li a1,149 + c0025154: bf49 j c00250e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32659 if (cc.line_num >= 0) line_num = cc.line_num; - c0024f86: d83e sw a5,48(sp) - c0024f88: bf85 j c0024ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32671 + c0025156: d83e sw a5,48(sp) + c0025158: bf85 j c00250c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32679 dbuf_putc(&bc_out, OP_push_atom_value); - c0024f8a: 4591 li a1,4 - c0024f8c: 1888 addi a0,sp,112 - c0024f8e: 5b5220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32672 + c002515a: 4591 li a1,4 + c002515c: 1888 addi a0,sp,112 + c002515e: 5b5220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32680 dbuf_put_u32(&bc_out, cc.atom); - c0024f92: 55b6 lw a1,108(sp) - c0024f94: 1888 addi a0,sp,112 - c0024f96: c92e00ef jal ra,c0005428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32674 - dbuf_putc(&bc_out, OP_add_loc); - c0024f9a: b7dd j c0024f80 + c0025162: 55b6 lw a1,108(sp) + c0025164: 1888 addi a0,sp,112 + c0025166: bb0e00ef jal ra,c0005516 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32682 + dbuf_putc(&bc_out, OP_add_loc); + c002516a: b7dd j c0025150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32690 if (code_match(&cc, pos_next, OP_push_i32, OP_add, OP_dup, OP_put_loc, idx, OP_drop, -1)) { - c0024f9c: e052 sd s4,0(sp) - c0024f9e: 48b9 li a7,14 - c0024fa0: 884e mv a6,s3 - c0024fa2: 05900793 li a5,89 - c0024fa6: 4745 li a4,17 - c0024fa8: 09e00693 li a3,158 - c0024fac: 4605 li a2,1 - c0024fae: 85a6 mv a1,s1 - c0024fb0: 00a8 addi a0,sp,72 - c0024fb2: 8c2e00ef jal ra,c0005074 - c0024fb6: cd19 beqz a0,c0024fd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32683 + c002516c: e052 sd s4,0(sp) + c002516e: 48b9 li a7,14 + c0025170: 884e mv a6,s3 + c0025172: 05900793 li a5,89 + c0025176: 4745 li a4,17 + c0025178: 09e00693 li a3,158 + c002517c: 4605 li a2,1 + c002517e: 85a6 mv a1,s1 + c0025180: 00a8 addi a0,sp,72 + c0025182: ef3df0ef jal ra,c0005074 + c0025186: cd19 beqz a0,c00251a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32691 if (cc.line_num >= 0) line_num = cc.line_num; - c0024fb8: 47e6 lw a5,88(sp) - c0024fba: 0007c363 bltz a5,c0024fc0 - c0024fbe: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32684 + c0025188: 47e6 lw a5,88(sp) + c002518a: 0007c363 bltz a5,c0025190 + c002518e: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32692 add_pc2line_info(s, bc_out.size, line_num); - c0024fc0: 55e6 lw a1,120(sp) - c0024fc2: 5642 lw a2,48(sp) - c0024fc4: 8522 mv a0,s0 - c0024fc6: d46df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32685 + c0025190: 55e6 lw a1,120(sp) + c0025192: 5642 lw a2,48(sp) + c0025194: 8522 mv a0,s0 + c0025196: b76df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32693 push_short_int(&bc_out, cc.label); - c0024fca: 5596 lw a1,100(sp) - c0024fcc: 1888 addi a0,sp,112 - c0024fce: e56e00ef jal ra,c0005624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32686 + c002519a: 5596 lw a1,100(sp) + c002519c: 1888 addi a0,sp,112 + c002519e: d74e00ef jal ra,c0005712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32694 dbuf_putc(&bc_out, OP_add_loc); - c0024fd2: b77d j c0024f80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32696 + c00251a2: b77d j c0025150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32704 if (code_match(&cc, pos_next, M3(OP_get_loc, OP_get_arg, OP_get_var_ref), -1, OP_add, OP_dup, OP_put_loc, idx, OP_drop, -1)) { - c0024fd4: 47b9 li a5,14 - c0024fd6: 005e6637 lui a2,0x5e6 - c0024fda: e03e sd a5,0(sp) - c0024fdc: 85a6 mv a1,s1 - c0024fde: e452 sd s4,8(sp) - c0024fe0: 88ce mv a7,s3 - c0024fe2: 05900813 li a6,89 - c0024fe6: 47c5 li a5,17 - c0024fe8: 09e00713 li a4,158 - c0024fec: 56fd li a3,-1 - c0024fee: b5860613 addi a2,a2,-1192 # 5e5b58 <__clzdi2-0xbfa1a4a8> - c0024ff2: 00a8 addi a0,sp,72 - c0024ff4: 880e00ef jal ra,c0005074 - c0024ff8: 75e6 ld a1,120(sp) - c0024ffa: c105 beqz a0,c002501a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32697 + c00251a4: 47b9 li a5,14 + c00251a6: 005e6637 lui a2,0x5e6 + c00251aa: e03e sd a5,0(sp) + c00251ac: 85a6 mv a1,s1 + c00251ae: e452 sd s4,8(sp) + c00251b0: 88ce mv a7,s3 + c00251b2: 05900813 li a6,89 + c00251b6: 47c5 li a5,17 + c00251b8: 09e00713 li a4,158 + c00251bc: 56fd li a3,-1 + c00251be: b5860613 addi a2,a2,-1192 # 5e5b58 <__clzdi2-0xbfa1a4a8> + c00251c2: 00a8 addi a0,sp,72 + c00251c4: eb1df0ef jal ra,c0005074 + c00251c8: 75e6 ld a1,120(sp) + c00251ca: c105 beqz a0,c00251ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32705 if (cc.line_num >= 0) line_num = cc.line_num; - c0024ffc: 47e6 lw a5,88(sp) - c0024ffe: 0007c363 bltz a5,c0025004 - c0025002: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32698 + c00251cc: 47e6 lw a5,88(sp) + c00251ce: 0007c363 bltz a5,c00251d4 + c00251d2: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32706 add_pc2line_info(s, bc_out.size, line_num); - c0025004: 5642 lw a2,48(sp) - c0025006: 8522 mv a0,s0 - c0025008: 2581 sext.w a1,a1 - c002500a: d02df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32699 + c00251d4: 5642 lw a2,48(sp) + c00251d6: 8522 mv a0,s0 + c00251d8: 2581 sext.w a1,a1 + c00251da: b32df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32707 put_short_code(&bc_out, cc.op, cc.idx); - c002500e: 5606 lw a2,96(sp) - c0025010: 45f6 lw a1,92(sp) - c0025012: 1888 addi a0,sp,112 - c0025014: b2ce00ef jal ra,c0005340 - c0025018: b7a5 j c0024f80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32705 + c00251de: 5606 lw a2,96(sp) + c00251e0: 45f6 lw a1,92(sp) + c00251e2: 1888 addi a0,sp,112 + c00251e4: a4ae00ef jal ra,c000542e + c00251e8: b7a5 j c0025150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32713 add_pc2line_info(s, bc_out.size, line_num); - c002501a: 5642 lw a2,48(sp) - c002501c: 2581 sext.w a1,a1 - c002501e: 8522 mv a0,s0 - c0025020: cecdf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32706 + c00251ea: 5642 lw a2,48(sp) + c00251ec: 2581 sext.w a1,a1 + c00251ee: 8522 mv a0,s0 + c00251f0: b1cdf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32714 put_short_code(&bc_out, op, idx); - c0025024: 864e mv a2,s3 - c0025026: 05800593 li a1,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32764 + c00251f4: 864e mv a2,s3 + c00251f6: 05800593 li a1,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32772 put_short_code(&bc_out, op1, idx); - c002502a: 1888 addi a0,sp,112 - c002502c: b14e00ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32765 + c00251fa: 1888 addi a0,sp,112 + c00251fc: a32e00ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32773 break; - c0025030: e06ff06f j c0024636 + c0025200: e06ff06f j c0024806 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0025034: 002ac983 lbu s3,2(s5) - c0025038: 001ac783 lbu a5,1(s5) + c0025204: 002ac983 lbu s3,2(s5) + c0025208: 001ac783 lbu a5,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32724 add_pc2line_info(s, bc_out.size, line_num); - c002503c: 5642 lw a2,48(sp) - c002503e: 55e6 lw a1,120(sp) + c002520c: 5642 lw a2,48(sp) + c002520e: 55e6 lw a1,120(sp) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0025040: 09a2 slli s3,s3,0x8 + c0025210: 09a2 slli s3,s3,0x8 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32715 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32723 idx = get_u16(bc_buf + pos + 1); - c0025042: 00f9e9b3 or s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32736 + c0025212: 00f9e9b3 or s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32744 add_pc2line_info(s, bc_out.size, line_num); - c0025046: 8522 mv a0,s0 - c0025048: cc4df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32737 + c0025216: 8522 mv a0,s0 + c0025218: af4df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32745 put_short_code(&bc_out, op, idx); - c002504c: 864e mv a2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32764 + c002521c: 864e mv a2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32772 put_short_code(&bc_out, op1, idx); - c002504e: 85ca mv a1,s2 - c0025050: bfe9 j c002502a + c002521e: 85ca mv a1,s2 + c0025220: bfe9 j c00251fa get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0025052: 002ac983 lbu s3,2(s5) - c0025056: 001ac783 lbu a5,1(s5) + c0025222: 002ac983 lbu s3,2(s5) + c0025226: 001ac783 lbu a5,1(s5) resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32729 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32737 if (code_match(&cc, pos_next, op - 1, idx, -1)) { - c002505a: 85a6 mv a1,s1 + c002522a: 85a6 mv a1,s1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c002505c: 09a2 slli s3,s3,0x8 + c002522c: 09a2 slli s3,s3,0x8 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32736 idx = get_u16(bc_buf + pos + 1); - c002505e: 00f9e9b3 or s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32729 + c002522e: 00f9e9b3 or s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32737 if (code_match(&cc, pos_next, op - 1, idx, -1)) { - c0025062: 577d li a4,-1 - c0025064: 86ce mv a3,s3 - c0025066: fff9061b addiw a2,s2,-1 - c002506a: 00a8 addi a0,sp,72 - c002506c: 808e00ef jal ra,c0005074 - c0025070: 75e6 ld a1,120(sp) - c0025072: c10d beqz a0,c0025094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32730 + c0025232: 577d li a4,-1 + c0025234: 86ce mv a3,s3 + c0025236: fff9061b addiw a2,s2,-1 + c002523a: 00a8 addi a0,sp,72 + c002523c: e39df0ef jal ra,c0005074 + c0025240: 75e6 ld a1,120(sp) + c0025242: c10d beqz a0,c0025264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32738 if (cc.line_num >= 0) line_num = cc.line_num; - c0025074: 47e6 lw a5,88(sp) - c0025076: 0007c363 bltz a5,c002507c - c002507a: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32731 + c0025244: 47e6 lw a5,88(sp) + c0025246: 0007c363 bltz a5,c002524c + c002524a: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32739 add_pc2line_info(s, bc_out.size, line_num); - c002507c: 5642 lw a2,48(sp) - c002507e: 8522 mv a0,s0 - c0025080: 2581 sext.w a1,a1 - c0025082: c8adf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32732 + c002524c: 5642 lw a2,48(sp) + c002524e: 8522 mv a0,s0 + c0025250: 2581 sext.w a1,a1 + c0025252: abadf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32740 put_short_code(&bc_out, op + 1, idx); - c0025086: 864e mv a2,s3 - c0025088: 0019059b addiw a1,s2,1 - c002508c: 1888 addi a0,sp,112 - c002508e: ab2e00ef jal ra,c0005340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32733 + c0025256: 864e mv a2,s3 + c0025258: 0019059b addiw a1,s2,1 + c002525c: 1888 addi a0,sp,112 + c002525e: 9d0e00ef jal ra,c000542e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32741 pos_next = cc.pos; - c0025092: b665 j c0024c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32736 + c0025262: b665 j c0024e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32744 add_pc2line_info(s, bc_out.size, line_num); - c0025094: 5642 lw a2,48(sp) - c0025096: 2581 sext.w a1,a1 - c0025098: b77d j c0025046 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32767 + c0025264: 5642 lw a2,48(sp) + c0025266: 2581 sext.w a1,a1 + c0025268: b77d j c0025216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32775 if (code_match(&cc, pos_next, OP_perm3, M2(OP_put_field, OP_put_var_strict), OP_drop, -1)) { - c002509a: 6691 lui a3,0x4 - c002509c: 57fd li a5,-1 - c002509e: 4739 li a4,14 - c00250a0: b4368693 addi a3,a3,-1213 # 3b43 <__clzdi2-0xbfffc4bd> - c00250a4: 4661 li a2,24 - c00250a6: 85a6 mv a1,s1 - c00250a8: 00a8 addi a0,sp,72 - c00250aa: fcbdf0ef jal ra,c0005074 - c00250ae: c115 beqz a0,c00250d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32768 + c002526a: 6691 lui a3,0x4 + c002526c: 57fd li a5,-1 + c002526e: 4739 li a4,14 + c0025270: b4368693 addi a3,a3,-1213 # 3b43 <__clzdi2-0xbfffc4bd> + c0025274: 4661 li a2,24 + c0025276: 85a6 mv a1,s1 + c0025278: 00a8 addi a0,sp,72 + c002527a: dfbdf0ef jal ra,c0005074 + c002527e: c115 beqz a0,c00252a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32776 if (cc.line_num >= 0) line_num = cc.line_num; - c00250b0: 47e6 lw a5,88(sp) - c00250b2: 0007c363 bltz a5,c00250b8 - c00250b6: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32769 + c0025280: 47e6 lw a5,88(sp) + c0025282: 0007c363 bltz a5,c0025288 + c0025286: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32777 add_pc2line_info(s, bc_out.size, line_num); - c00250b8: 55e6 lw a1,120(sp) - c00250ba: 5642 lw a2,48(sp) - c00250bc: 8522 mv a0,s0 - c00250be: c4edf0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32770 + c0025288: 55e6 lw a1,120(sp) + c002528a: 5642 lw a2,48(sp) + c002528c: 8522 mv a0,s0 + c002528e: a7edf0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32778 dbuf_putc(&bc_out, OP_dec + (op - OP_post_dec)); - c00250c2: ffe9859b addiw a1,s3,-2 - c00250c6: 0ff5f593 zext.b a1,a1 - c00250ca: 1888 addi a0,sp,112 - c00250cc: 477220ef jal ra,c0047d42 - c00250d0: b38d j c0024e32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32776 + c0025292: ffe9859b addiw a1,s3,-2 + c0025296: 0ff5f593 zext.b a1,a1 + c002529a: 1888 addi a0,sp,112 + c002529c: 477220ef jal ra,c0047f12 + c00252a0: b38d j c0025002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32784 if (code_match(&cc, pos_next, OP_perm4, OP_put_array_el, OP_drop, -1)) { - c00250d2: 57fd li a5,-1 - c00250d4: 4739 li a4,14 - c00250d6: 04900693 li a3,73 - c00250da: 4665 li a2,25 - c00250dc: 85a6 mv a1,s1 - c00250de: 00a8 addi a0,sp,72 - c00250e0: f95df0ef jal ra,c0005074 - c00250e4: b4050063 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32777 + c00252a2: 57fd li a5,-1 + c00252a4: 4739 li a4,14 + c00252a6: 04900693 li a3,73 + c00252aa: 4665 li a2,25 + c00252ac: 85a6 mv a1,s1 + c00252ae: 00a8 addi a0,sp,72 + c00252b0: dc5df0ef jal ra,c0005074 + c00252b4: b4050063 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32785 if (cc.line_num >= 0) line_num = cc.line_num; - c00250e8: 47e6 lw a5,88(sp) - c00250ea: 0007c363 bltz a5,c00250f0 - c00250ee: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32778 + c00252b8: 47e6 lw a5,88(sp) + c00252ba: 0007c363 bltz a5,c00252c0 + c00252be: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32786 add_pc2line_info(s, bc_out.size, line_num); - c00250f0: 5642 lw a2,48(sp) - c00250f2: 55e6 lw a1,120(sp) - c00250f4: 8522 mv a0,s0 - c00250f6: c16df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32779 + c00252c0: 5642 lw a2,48(sp) + c00252c2: 55e6 lw a1,120(sp) + c00252c4: 8522 mv a0,s0 + c00252c6: a46df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32787 dbuf_putc(&bc_out, OP_dec + (op - OP_post_dec)); - c00250fa: ffe9859b addiw a1,s3,-2 - c00250fe: 0ff5f593 zext.b a1,a1 - c0025102: 1888 addi a0,sp,112 - c0025104: 43f220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32780 + c00252ca: ffe9859b addiw a1,s3,-2 + c00252ce: 0ff5f593 zext.b a1,a1 + c00252d2: 1888 addi a0,sp,112 + c00252d4: 43f220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32788 dbuf_putc(&bc_out, OP_put_array_el); - c0025108: 04900593 li a1,73 - c002510c: b481 j c0024b4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32800 + c00252d8: 04900593 li a1,73 + c00252dc: b481 j c0024d1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32808 op2 = OP_typeof_is_function; - c002510e: 0f500913 li s2,245 - c0025112: c74ff06f j c0024586 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32812 + c00252de: 0f500913 li s2,245 + c00252e2: c74ff06f j c0024756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32820 if (op1 == OP_strict_neq && code_match(&cc, cc.pos, OP_if_false, -1)) { - c0025116: 45d6 lw a1,84(sp) - c0025118: 56fd li a3,-1 - c002511a: 06a00613 li a2,106 - c002511e: 00a8 addi a0,sp,72 - c0025120: f55df0ef jal ra,c0005074 - c0025124: b0050063 beqz a0,c0024424 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32814 + c00252e6: 45d6 lw a1,84(sp) + c00252e8: 56fd li a3,-1 + c00252ea: 06a00613 li a2,106 + c00252ee: 00a8 addi a0,sp,72 + c00252f0: d85df0ef jal ra,c0005074 + c00252f4: b0050063 beqz a0,c00245f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32822 if (cc.line_num >= 0) line_num = cc.line_num; - c0025128: 47e6 lw a5,88(sp) - c002512a: 0007c363 bltz a5,c0025130 - c002512e: d83e sw a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32815 + c00252f8: 47e6 lw a5,88(sp) + c00252fa: 0007c363 bltz a5,c0025300 + c00252fe: d83e sw a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32823 add_pc2line_info(s, bc_out.size, line_num); - c0025130: 5642 lw a2,48(sp) - c0025132: 55e6 lw a1,120(sp) - c0025134: 8522 mv a0,s0 - c0025136: bd6df0ef jal ra,c000450c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32816 + c0025300: 5642 lw a2,48(sp) + c0025302: 55e6 lw a1,120(sp) + c0025304: 8522 mv a0,s0 + c0025306: a06df0ef jal ra,c000450c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32824 dbuf_putc(&bc_out, op2); - c002513a: 85ca mv a1,s2 - c002513c: 1888 addi a0,sp,112 - c002513e: 405220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32817 + c002530a: 85ca mv a1,s2 + c002530c: 1888 addi a0,sp,112 + c002530e: 405220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32825 JS_FreeAtom(ctx, cc.atom); - c0025142: 55b6 lw a1,108(sp) - c0025144: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32820 + c0025312: 55b6 lw a1,108(sp) + c0025314: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32828 op = OP_if_true; - c0025146: 06b00913 li s2,107 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32817 + c0025316: 06b00913 li s2,107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32825 JS_FreeAtom(ctx, cc.atom); - c002514a: bc2e20ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32818 + c002531a: ae0e20ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32826 pos_next = cc.pos; - c002514e: 44d6 lw s1,84(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32819 + c002531e: 44d6 lw s1,84(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32827 label = cc.label; - c0025150: 5a96 lw s5,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32821 + c0025320: 5a96 lw s5,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32829 goto has_label; - c0025152: e6cff06f j c00247be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32839 + c0025322: e6cff06f j c002498e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32847 assert(label_slots[i].first_reloc == NULL); - c0025156: 000ab683 ld a3,0(s5) - c002515a: 0ae1 addi s5,s5,24 - c002515c: c699 beqz a3,c002516a - c002515e: 65a1 lui a1,0x8 - c0025160: 4601 li a2,0 - c0025162: 04758593 addi a1,a1,71 # 8047 <__clzdi2-0xbfff7fb9> - c0025166: a08ff06f j c002436e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32838 + c0025326: 000ab683 ld a3,0(s5) + c002532a: 0ae1 addi s5,s5,24 + c002532c: c699 beqz a3,c002533a + c002532e: 65a1 lui a1,0x8 + c0025330: 4601 li a2,0 + c0025332: 04f58593 addi a1,a1,79 # 804f <__clzdi2-0xbfff7fb1> + c0025336: a08ff06f j c002453e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32846 for(i = 0; i < s->label_count; i++) { - c002516a: 2785 addiw a5,a5,1 - c002516c: 842ff06f j c00241ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32851 - switch (op = jp->op) { - c0025170: ff04a703 lw a4,-16(s1) - c0025174: 87a6 mv a5,s1 - c0025176: 0cec4163 blt s8,a4,c0025238 - c002517a: 06900693 li a3,105 - c002517e: 0ce6d063 bge a3,a4,c002523e - c0025182: 490d li s2,3 + c002533a: 2785 addiw a5,a5,1 + c002533c: 842ff06f j c002437e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32859 + switch (op = jp->op) { + c0025340: ff04a703 lw a4,-16(s1) + c0025344: 87a6 mv a5,s1 + c0025346: 0cec4163 blt s8,a4,c0025408 + c002534a: 06900693 li a3,105 + c002534e: 0ce6d063 bge a3,a4,c002540e + c0025352: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32867 diff = s->label_slots[jp->label].addr - pos; - c0025184: ffc4a603 lw a2,-4(s1) - c0025188: 17043683 ld a3,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32858 + c0025354: ffc4a603 lw a2,-4(s1) + c0025358: 17043683 ld a3,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32866 pos = jp->pos; - c002518c: ff84a983 lw s3,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32859 + c002535c: ff84a983 lw s3,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32867 diff = s->label_slots[jp->label].addr - pos; - c0025190: 03960633 mul a2,a2,s9 - c0025194: 96b2 add a3,a3,a2 - c0025196: 46d4 lw a3,12(a3) - c0025198: 413686bb subw a3,a3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32860 + c0025360: 03960633 mul a2,a2,s9 + c0025364: 96b2 add a3,a3,a2 + c0025366: 46d4 lw a3,12(a3) + c0025368: 413686bb subw a3,a3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32868 if (diff >= -128 && diff <= 127 + delta) { - c002519c: 0ba6cc63 blt a3,s10,c0025254 - c00251a0: 07f90613 addi a2,s2,127 - c00251a4: 0ad64863 blt a2,a3,c0025254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32862 + c002536c: 0ba6cc63 blt a3,s10,c0025424 + c0025370: 07f90613 addi a2,s2,127 + c0025374: 0ad64863 blt a2,a3,c0025424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32870 jp->size = 1; - c00251a8: ff14aa23 sw a7,-12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32864 + c0025378: ff14aa23 sw a7,-12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32872 bc_out.buf[pos - 1] = jp->op = OP_goto8; - c00251ac: fff9861b addiw a2,s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32863 + c002537c: fff9861b addiw a2,s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32871 if (op == OP_goto16) { - c00251b0: 09771b63 bne a4,s7,c0025246 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32864 + c0025380: 09771b63 bne a4,s7,c0025416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32872 bc_out.buf[pos - 1] = jp->op = OP_goto8; - c00251b4: 0ec00713 li a4,236 - c00251b8: fee4a823 sw a4,-16(s1) - c00251bc: 76c6 ld a3,112(sp) - c00251be: 5731 li a4,-20 - c00251c0: 96b2 add a3,a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32866 + c0025384: 0ec00713 li a4,236 + c0025388: fee4a823 sw a4,-16(s1) + c002538c: 76c6 ld a3,112(sp) + c002538e: 5731 li a4,-20 + c0025390: 96b2 add a3,a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32874 bc_out.buf[pos - 1] = jp->op = OP_if_false8 + (op - OP_if_false); - c00251c2: 00e68023 sb a4,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32877 + c0025392: 00e68023 sb a4,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32885 memmove(bc_out.buf + pos + jp->size, bc_out.buf + pos + jp->size + delta, - c00251c6: ff44a703 lw a4,-12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32878 + c0025396: ff44a703 lw a4,-12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32886 bc_out.size - pos - jp->size - delta); - c00251ca: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32877 + c002539a: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32885 memmove(bc_out.buf + pos + jp->size, bc_out.buf + pos + jp->size + delta, - c00251cc: 7546 ld a0,112(sp) - c00251ce: 974e add a4,a4,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32878 + c002539c: 7546 ld a0,112(sp) + c002539e: 974e add a4,a4,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32886 bc_out.size - pos - jp->size - delta); - c00251d0: 8e19 sub a2,a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32877 + c00253a0: 8e19 sub a2,a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32885 memmove(bc_out.buf + pos + jp->size, bc_out.buf + pos + jp->size + delta, - c00251d2: 012705b3 add a1,a4,s2 - c00251d6: 41260633 sub a2,a2,s2 - c00251da: 95aa add a1,a1,a0 - c00251dc: 953a add a0,a0,a4 - c00251de: e83e sd a5,16(sp) - c00251e0: 64e310ef jal ra,c005682e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32879 + c00253a2: 012705b3 add a1,a4,s2 + c00253a6: 41260633 sub a2,a2,s2 + c00253aa: 95aa add a1,a1,a0 + c00253ac: 953a add a0,a0,a4 + c00253ae: e83e sd a5,16(sp) + c00253b0: 64e310ef jal ra,c00569fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32887 bc_out.size -= delta; - c00251e4: 7766 ld a4,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32881 + c00253b4: 7766 ld a4,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 for (j = 0, ls = s->label_slots; j < s->label_count; j++, ls++) { - c00251e6: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32880 + c00253b6: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32888 patch_offsets++; - c00251e8: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32879 + c00253b8: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32887 bc_out.size -= delta; - c00251ea: 41270733 sub a4,a4,s2 - c00251ee: fcba sd a4,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32881 + c00253ba: 41270733 sub a4,a4,s2 + c00253be: fcba sd a4,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 for (j = 0, ls = s->label_slots; j < s->label_count; j++, ls++) { - c00251f0: 17043703 ld a4,368(s0) - c00251f4: 4601 li a2,0 - c00251f6: 4309 li t1,2 - c00251f8: 5835 li a6,-19 - c00251fa: 4885 li a7,1 - c00251fc: 17c42683 lw a3,380(s0) - c0025200: 06d64e63 blt a2,a3,c002527c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32885 + c00253c0: 17043703 ld a4,368(s0) + c00253c4: 4601 li a2,0 + c00253c6: 4309 li t1,2 + c00253c8: 5835 li a6,-19 + c00253ca: 4885 li a7,1 + c00253cc: 17c42683 lw a3,380(s0) + c00253d0: 06d64e63 blt a2,a3,c002544c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32893 for (j = i + 1, jp1 = jp + 1; j < s->jump_count; j++, jp1++) { - c0025204: 001a069b addiw a3,s4,1 - c0025208: 1b442703 lw a4,436(s0) - c002520c: 08e6c163 blt a3,a4,c002528e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 + c00253d4: 001a069b addiw a3,s4,1 + c00253d8: 1b442703 lw a4,436(s0) + c00253dc: 08e6c163 blt a3,a4,c002545e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32897 for (j = 0; j < s->line_number_count; j++) { - c0025210: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32890 + c00253e0: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32898 if (s->line_number_slots[j].pc > pos) - c0025212: 0009879b sext.w a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 + c00253e2: 0009879b sext.w a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32897 for (j = 0; j < s->line_number_count; j++) { - c0025216: 1c442683 lw a3,452(s0) - c002521a: 02d75263 bge a4,a3,c002523e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32890 + c00253e6: 1c442683 lw a3,452(s0) + c00253ea: 02d75263 bge a4,a3,c002540e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32898 if (s->line_number_slots[j].pc > pos) - c002521e: 1b843603 ld a2,440(s0) - c0025222: 00371693 slli a3,a4,0x3 - c0025226: 96b2 add a3,a3,a2 - c0025228: 4290 lw a2,0(a3) - c002522a: 00c7f563 bgeu a5,a2,c0025234 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32891 + c00253ee: 1b843603 ld a2,440(s0) + c00253f2: 00371693 slli a3,a4,0x3 + c00253f6: 96b2 add a3,a3,a2 + c00253f8: 4290 lw a2,0(a3) + c00253fa: 00c7f563 bgeu a5,a2,c0025404 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32899 s->line_number_slots[j].pc -= delta; - c002522e: 4126063b subw a2,a2,s2 - c0025232: c290 sw a2,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 + c00253fe: 4126063b subw a2,a2,s2 + c0025402: c290 sw a2,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32897 for (j = 0; j < s->line_number_count; j++) { - c0025234: 2705 addiw a4,a4,1 - c0025236: b7c5 j c0025216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32853 + c0025404: 2705 addiw a4,a4,1 + c0025406: b7c5 j c00253e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32861 delta = 1; - c0025238: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32851 + c0025408: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32859 switch (op = jp->op) { - c002523a: f57705e3 beq a4,s7,c0025184 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32845 + c002540a: f57705e3 beq a4,s7,c0025354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32853 for (i = 0, jp = s->jump_slots; i < s->jump_count; i++, jp++) { - c002523e: 2a05 addiw s4,s4,1 - c0025240: 04c1 addi s1,s1,16 - c0025242: f93fe06f j c00241d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32866 + c002540e: 2a05 addiw s4,s4,1 + c0025410: 04c1 addi s1,s1,16 + c0025412: f93fe06f j c00243a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32874 bc_out.buf[pos - 1] = jp->op = OP_if_false8 + (op - OP_if_false); - c0025246: 0807071b addiw a4,a4,128 - c002524a: fee4a823 sw a4,-16(s1) - c002524e: 76c6 ld a3,112(sp) - c0025250: 96b2 add a3,a3,a2 - c0025252: bf85 j c00251c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32870 + c0025416: 0807071b addiw a4,a4,128 + c002541a: fee4a823 sw a4,-16(s1) + c002541e: 76c6 ld a3,112(sp) + c0025420: 96b2 add a3,a3,a2 + c0025422: bf85 j c0025392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32878 if (diff == (int16_t)diff && op == OP_goto) { - c0025254: 0106961b slliw a2,a3,0x10 - c0025258: 4106561b sraiw a2,a2,0x10 - c002525c: fed611e3 bne a2,a3,c002523e - c0025260: fd871fe3 bne a4,s8,c002523e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32872 + c0025424: 0106961b slliw a2,a3,0x10 + c0025428: 4106561b sraiw a2,a2,0x10 + c002542c: fed611e3 bne a2,a3,c002540e + c0025430: fd871fe3 bne a4,s8,c002540e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32880 jp->size = 2; - c0025264: fe64aa23 sw t1,-12(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32874 + c0025434: fe64aa23 sw t1,-12(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32882 bc_out.buf[pos - 1] = jp->op = OP_goto16; - c0025268: ff74a823 sw s7,-16(s1) - c002526c: 76c6 ld a3,112(sp) - c002526e: fff9871b addiw a4,s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32873 + c0025438: ff74a823 sw s7,-16(s1) + c002543c: 76c6 ld a3,112(sp) + c002543e: fff9871b addiw a4,s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32881 delta = 2; - c0025272: 4909 li s2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32874 - bc_out.buf[pos - 1] = jp->op = OP_goto16; - c0025274: 9736 add a4,a4,a3 - c0025276: 01070023 sb a6,0(a4) - c002527a: b7b1 j c00251c6 + c0025442: 4909 li s2,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32882 + bc_out.buf[pos - 1] = jp->op = OP_goto16; + c0025444: 9736 add a4,a4,a3 + c0025446: 01070023 sb a6,0(a4) + c002544a: b7b1 j c0025396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32890 if (ls->addr > pos) - c002527c: 4754 lw a3,12(a4) - c002527e: 00d9d563 bge s3,a3,c0025288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32883 + c002544c: 4754 lw a3,12(a4) + c002544e: 00d9d563 bge s3,a3,c0025458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32891 ls->addr -= delta; - c0025282: 412686bb subw a3,a3,s2 - c0025286: c754 sw a3,12(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32881 + c0025452: 412686bb subw a3,a3,s2 + c0025456: c754 sw a3,12(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32889 for (j = 0, ls = s->label_slots; j < s->label_count; j++, ls++) { - c0025288: 2605 addiw a2,a2,1 - c002528a: 0761 addi a4,a4,24 - c002528c: bf85 j c00251fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32886 + c0025458: 2605 addiw a2,a2,1 + c002545a: 0761 addi a4,a4,24 + c002545c: bf85 j c00253cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32894 if (jp1->pos > pos) - c002528e: 4798 lw a4,8(a5) - c0025290: 00e9d563 bge s3,a4,c002529a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32887 + c002545e: 4798 lw a4,8(a5) + c0025460: 00e9d563 bge s3,a4,c002546a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32895 jp1->pos -= delta; - c0025294: 4127073b subw a4,a4,s2 - c0025298: c798 sw a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32885 + c0025464: 4127073b subw a4,a4,s2 + c0025468: c798 sw a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32893 for (j = i + 1, jp1 = jp + 1; j < s->jump_count; j++, jp1++) { - c002529a: 2685 addiw a3,a3,1 - c002529c: 07c1 addi a5,a5,16 - c002529e: b7ad j c0025208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32902 + c002546a: 2685 addiw a3,a3,1 + c002546c: 07c1 addi a5,a5,16 + c002546e: b7ad j c00253d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32910 int diff1 = s->label_slots[jp1->label].addr - jp1->pos; - c00252a0: 45d8 lw a4,12(a1) - c00252a2: 17043783 ld a5,368(s0) - c00252a6: 4590 lw a2,8(a1) - c00252a8: 03070733 mul a4,a4,a6 - c00252ac: 97ba add a5,a5,a4 - c00252ae: 47dc lw a5,12(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32903 + c0025470: 45d8 lw a4,12(a1) + c0025472: 17043783 ld a5,368(s0) + c0025476: 4590 lw a2,8(a1) + c0025478: 03070733 mul a4,a4,a6 + c002547c: 97ba add a5,a5,a4 + c002547e: 47dc lw a5,12(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32911 switch (jp1->size) { - c00252b0: 41d8 lw a4,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32902 + c0025480: 41d8 lw a4,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32910 int diff1 = s->label_slots[jp1->label].addr - jp1->pos; - c00252b2: 9f91 subw a5,a5,a2 - c00252b4: 0007869b sext.w a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32903 + c0025482: 9f91 subw a5,a5,a2 + c0025484: 0007869b sext.w a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32911 switch (jp1->size) { - c00252b8: 01170e63 beq a4,a7,c00252d4 - c00252bc: 02670463 beq a4,t1,c00252e4 - c00252c0: 01c71663 bne a4,t3,c00252cc + c0025488: 01170e63 beq a4,a7,c00254a4 + c002548c: 02670463 beq a4,t1,c00254b4 + c0025490: 01c71663 bne a4,t3,c002549c put_u8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:210 *tab = val; - c00252c4: 7746 ld a4,112(sp) - c00252c6: 9732 add a4,a4,a2 + c0025494: 7746 ld a4,112(sp) + c0025496: 9732 add a4,a4,a2 resolve_labels(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32913 put_u8(bc_out.buf + jp1->pos, diff1); - c00252c8: 00d70023 sb a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32901 + c0025498: 00d70023 sb a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:32909 for (j = 0, jp1 = s->jump_slots; j < s->jump_count; j++, jp1++) { - c00252cc: 2505 addiw a0,a0,1 - c00252ce: 05c1 addi a1,a1,16 - c00252d0: f23fe06f j c00241f2 + c002549c: 2505 addiw a0,a0,1 + c002549e: 05c1 addi a1,a1,16 + c00254a0: f23fe06f j c00243c2 put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c00252d4: 7746 ld a4,112(sp) - c00252d6: 9732 add a4,a4,a2 - c00252d8: 00d70023 sb a3,0(a4) - c00252dc: 82a1 srli a3,a3,0x8 - c00252de: 00d700a3 sb a3,1(a4) + c00254a4: 7746 ld a4,112(sp) + c00254a6: 9732 add a4,a4,a2 + c00254a8: 00d70023 sb a3,0(a4) + c00254ac: 82a1 srli a3,a3,0x8 + c00254ae: 00d700a3 sb a3,1(a4) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:196 } - c00252e2: b7ed j c00252cc + c00254b2: b7ed j c002549c put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c00252e4: 7746 ld a4,112(sp) - c00252e6: 0087d69b srliw a3,a5,0x8 - c00252ea: 9732 add a4,a4,a2 - c00252ec: 00f70023 sb a5,0(a4) - c00252f0: 00d700a3 sb a3,1(a4) - c00252f4: 0107d69b srliw a3,a5,0x10 - c00252f8: 0187d79b srliw a5,a5,0x18 - c00252fc: 00d70123 sb a3,2(a4) - c0025300: 00f701a3 sb a5,3(a4) + c00254b4: 7746 ld a4,112(sp) + c00254b6: 0087d69b srliw a3,a5,0x8 + c00254ba: 9732 add a4,a4,a2 + c00254bc: 00f70023 sb a5,0(a4) + c00254c0: 00d700a3 sb a3,1(a4) + c00254c4: 0107d69b srliw a3,a5,0x10 + c00254c8: 0187d79b srliw a5,a5,0x18 + c00254cc: 00d70123 sb a3,2(a4) + c00254d0: 00f701a3 sb a5,3(a4) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:181 } - c0025304: b7e1 j c00252cc + c00254d4: b7e1 j c002549c compute_pc2line_info(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31870 if (!(s->js_mode & JS_MODE_STRIP) && s->line_number_slots) { - c0025306: 1b843783 ld a5,440(s0) - c002530a: e399 bnez a5,c0025310 - c002530c: f1bfe06f j c0024226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31867 + c00254d6: 1b843783 ld a5,440(s0) + c00254da: e399 bnez a5,c00254e0 + c00254dc: f1bfe06f j c00243f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31875 js_dbuf_init(s->ctx, &s->pc2line); - c0025310: 6008 ld a0,0(s0) - c0025312: 1d840913 addi s2,s0,472 - c0025316: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31863 + c00254e0: 6008 ld a0,0(s0) + c00254e2: 1d840913 addi s2,s0,472 + c00254e6: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31871 int last_line_num = s->line_num; - c0025318: 1d442c03 lw s8,468(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31867 + c00254e8: 1d442c03 lw s8,468(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31875 js_dbuf_init(s->ctx, &s->pc2line); - c002531c: d47df0ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31864 + c00254ec: b77df0ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31872 uint32_t last_pc = 0; - c0025320: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31881 + c00254f0: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31889 if (diff_line >= PC2LINE_BASE && - c0025322: 4991 li s3,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31882 + c00254f2: 4991 li s3,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31890 diff_line < PC2LINE_BASE + PC2LINE_RANGE && - c0025324: 03200a13 li s4,50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31884 + c00254f4: 03200a13 li s4,50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31892 dbuf_putc(&s->pc2line, (diff_line - PC2LINE_BASE) + - c0025328: 4a95 li s5,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31868 + c00254f8: 4a95 li s5,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31876 for (i = 0; i < s->line_number_count; i++) { - c002532a: 1c442683 lw a3,452(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31869 + c00254fa: 1c442683 lw a3,452(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31877 uint32_t pc = s->line_number_slots[i].pc; - c002532e: 1b843783 ld a5,440(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31868 + c00254fe: 1b843783 ld a5,440(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31876 for (i = 0; i < s->line_number_count; i++) { - c0025332: 00db4463 blt s6,a3,c002533a - c0025336: ef1fe06f j c0024226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31869 + c0025502: 00db4463 blt s6,a3,c002550a + c0025506: ef1fe06f j c00243f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31877 uint32_t pc = s->line_number_slots[i].pc; - c002533a: 003b1693 slli a3,s6,0x3 - c002533e: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31870 + c002550a: 003b1693 slli a3,s6,0x3 + c002550e: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31878 int line_num = s->line_number_slots[i].line_num; - c0025340: 0047ab83 lw s7,4(a5) # ffffffff80000004 <_ebss+0xfffffffebfefeede> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31873 + c0025510: 0047ab83 lw s7,4(a5) # ffffffff80000004 <_ebss+0xfffffffebfefeede> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31881 if (line_num < 0) - c0025344: 020bce63 bltz s7,c0025380 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31877 + c0025514: 020bce63 bltz s7,c0025550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31885 diff_line = line_num - last_line_num; - c0025348: 418b86bb subw a3,s7,s8 - c002534c: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31878 + c0025518: 418b86bb subw a3,s7,s8 + c002551c: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31886 if (diff_line == 0 || diff_pc < 0) - c002534e: ca8d beqz a3,c0025380 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31869 + c002551e: ca8d beqz a3,c0025550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31877 uint32_t pc = s->line_number_slots[i].pc; - c0025350: 0007ac83 lw s9,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31876 + c0025520: 0007ac83 lw s9,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31884 diff_pc = pc - last_pc; - c0025354: 40ec8d3b subw s10,s9,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31878 + c0025524: 40ec8d3b subw s10,s9,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31886 if (diff_line == 0 || diff_pc < 0) - c0025358: 020d4463 bltz s10,c0025380 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31881 + c0025528: 020d4463 bltz s10,c0025550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31889 if (diff_line >= PC2LINE_BASE && - c002535c: 0016879b addiw a5,a3,1 - c0025360: 02f9e263 bltu s3,a5,c0025384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31882 + c002552c: 0016879b addiw a5,a3,1 + c0025530: 02f9e263 bltu s3,a5,c0025554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31890 diff_line < PC2LINE_BASE + PC2LINE_RANGE && - c0025364: 03aa4063 blt s4,s10,c0025384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31884 + c0025534: 03aa4063 blt s4,s10,c0025554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31892 dbuf_putc(&s->pc2line, (diff_line - PC2LINE_BASE) + - c0025368: 035d05bb mulw a1,s10,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31885 + c0025538: 035d05bb mulw a1,s10,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31893 diff_pc * PC2LINE_RANGE + PC2LINE_OP_FIRST); - c002536c: 0026849b addiw s1,a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31884 + c002553c: 0026849b addiw s1,a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31892 dbuf_putc(&s->pc2line, (diff_line - PC2LINE_BASE) + - c0025370: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31885 + c0025540: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31893 diff_pc * PC2LINE_RANGE + PC2LINE_OP_FIRST); - c0025372: 9da5 addw a1,a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31884 - dbuf_putc(&s->pc2line, (diff_line - PC2LINE_BASE) + - c0025374: 0ff5f593 zext.b a1,a1 - c0025378: 1cb220ef jal ra,c0047d42 + c0025542: 9da5 addw a1,a1,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31892 + dbuf_putc(&s->pc2line, (diff_line - PC2LINE_BASE) + + c0025544: 0ff5f593 zext.b a1,a1 + c0025548: 1cb220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31900 last_pc = pc; - c002537c: 8766 mv a4,s9 + c002554c: 8766 mv a4,s9 dbuf_put_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6486 } - c002537e: 8c5e mv s8,s7 + c002554e: 8c5e mv s8,s7 compute_pc2line_info(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31876 for (i = 0; i < s->line_number_count; i++) { - c0025380: 2b05 addiw s6,s6,1 - c0025382: b765 j c002532a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31888 + c0025550: 2b05 addiw s6,s6,1 + c0025552: b765 j c00254fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31896 dbuf_putc(&s->pc2line, 0); - c0025384: 4581 li a1,0 - c0025386: 854a mv a0,s2 - c0025388: 1bb220ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31889 + c0025554: 4581 li a1,0 + c0025556: 854a mv a0,s2 + c0025558: 1bb220ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31897 dbuf_put_leb128(&s->pc2line, diff_pc); - c002538c: 85ea mv a1,s10 - c002538e: 854a mv a0,s2 - c0025390: c95df0ef jal ra,c0005024 + c002555c: 85ea mv a1,s10 + c002555e: 854a mv a0,s2 + c0025560: ac5df0ef jal ra,c0005024 dbuf_put_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6485 dbuf_put_leb128(s, (2 * v) ^ -(v >> 31)); - c0025394: 0014959b slliw a1,s1,0x1 - c0025398: 41f4d49b sraiw s1,s1,0x1f - c002539c: 8da5 xor a1,a1,s1 - c002539e: 2581 sext.w a1,a1 - c00253a0: 854a mv a0,s2 - c00253a2: c83df0ef jal ra,c0005024 - c00253a6: bfd9 j c002537c + c0025564: 0014959b slliw a1,s1,0x1 + c0025568: 41f4d49b sraiw s1,s1,0x1f + c002556c: 8da5 xor a1,a1,s1 + c002556e: 2581 sext.w a1,a1 + c0025570: 854a mv a0,s2 + c0025572: ab3df0ef jal ra,c0005024 + c0025576: bfd9 j c002554c compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33005 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33013 s->bc_len = fd->byte_code.size; - c00253a8: 13842583 lw a1,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33007 + c0025578: 13842583 lw a1,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33015 s->stack_level_tab = js_malloc(ctx, sizeof(s->stack_level_tab[0]) * - c00253ac: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33004 + c002557c: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33012 bc_buf = fd->byte_code.buf; - c00253ae: 13043a83 ld s5,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33005 + c002557e: 13043a83 ld s5,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33013 s->bc_len = fd->byte_code.size; - c00253b2: d8ae sw a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33007 + c0025582: d8ae sw a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33015 s->stack_level_tab = js_malloc(ctx, sizeof(s->stack_level_tab[0]) * - c00253b4: 0586 slli a1,a1,0x1 - c00253b6: 897ef0ef jal ra,c0014c4c - c00253ba: fcaa sd a0,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33012 + c0025584: 0586 slli a1,a1,0x1 + c0025586: fb4ef0ef jal ra,c0014d3a + c002558a: fcaa sd a0,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33020 s->stack_level_tab[i] = 0xffff; - c00253bc: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33009 + c002558c: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33017 if (!s->stack_level_tab) - c00253be: e119 bnez a0,c00253c4 - c00253c0: f61fe06f j c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33011 + c002558e: e119 bnez a0,c0025594 + c0025590: f61fe06f j c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33019 for(i = 0; i < s->bc_len; i++) - c00253c4: 55c6 lw a1,112(sp) - c00253c6: 14b4c763 blt s1,a1,c0025514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33014 + c0025594: 55c6 lw a1,112(sp) + c0025596: 14b4c763 blt s1,a1,c00256e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33022 s->catch_pos_tab = js_malloc(ctx, sizeof(s->catch_pos_tab[0]) * - c00253ca: 058a slli a1,a1,0x2 - c00253cc: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33013 + c002559a: 058a slli a1,a1,0x2 + c002559c: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33021 s->pc_stack = NULL; - c00253ce: e502 sd zero,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33014 + c002559e: e502 sd zero,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33022 s->catch_pos_tab = js_malloc(ctx, sizeof(s->catch_pos_tab[0]) * - c00253d0: 87def0ef jal ra,c0014c4c - c00253d4: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33016 - if (!s->catch_pos_tab) - c00253d6: 18050d63 beqz a0,c0025570 + c00255a0: f9aef0ef jal ra,c0014d3a + c00255a4: e12a sd a0,128(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33024 + if (!s->catch_pos_tab) + c00255a6: 18050d63 beqz a0,c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33032 if (ss_check(ctx, s, 0, OP_invalid, 0, -1)) - c00253da: 57fd li a5,-1 - c00253dc: 4701 li a4,0 - c00253de: 4681 li a3,0 - c00253e0: 4601 li a2,0 - c00253e2: 188c addi a1,sp,112 - c00253e4: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33019 + c00255aa: 57fd li a5,-1 + c00255ac: 4701 li a4,0 + c00255ae: 4681 li a3,0 + c00255b0: 4601 li a2,0 + c00255b2: 188c addi a1,sp,112 + c00255b4: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33027 s->stack_len_max = 0; - c00253e6: da82 sw zero,116(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33020 + c00255b6: da82 sw zero,116(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33028 s->pc_stack_len = 0; - c00253e8: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33024 + c00255b8: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33032 if (ss_check(ctx, s, 0, OP_invalid, 0, -1)) - c00253ea: ab1fe0ef jal ra,c0023e9a - c00253ee: 18051163 bnez a0,c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33064 + c00255ba: ab1fe0ef jal ra,c002406a + c00255be: 18051163 bnez a0,c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33072 if (s->stack_len_max > JS_STACK_SIZE_MAX) { - c00253f2: 6b41 lui s6,0x10 - c00253f4: 03865bb7 lui s7,0x3865 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33040 + c00255c2: 6b41 lui s6,0x10 + c00255c4: 03865bb7 lui s7,0x3865 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33048 pos_next = pos + oi->size; - c00253f8: 00041c17 auipc s8,0x41 - c00253fc: 718c0c13 addi s8,s8,1816 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33064 + c00255c8: 00041c17 auipc s8,0x41 + c00255cc: 7a8c0c13 addi s8,s8,1960 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33072 if (s->stack_len_max > JS_STACK_SIZE_MAX) { - c0025400: 1b79 addi s6,s6,-2 - c0025402: 0ba2 slli s7,s7,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33041 + c00255d0: 1b79 addi s6,s6,-2 + c00255d2: 0ba2 slli s7,s7,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33049 if (pos_next > s->bc_len) { - c0025404: 57c6 lw a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33028 + c00255d4: 57c6 lw a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33036 pos = s->pc_stack[--s->pc_stack_len]; - c0025406: 65aa ld a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33029 + c00255d6: 65aa ld a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33037 stack_len = s->stack_level_tab[pos]; - c0025408: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33030 + c00255d8: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33038 catch_pos = s->catch_pos_tab[pos]; - c002540a: 680a ld a6,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33041 + c00255da: 680a ld a6,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33049 if (pos_next > s->bc_len) { - c002540c: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33051 + c00255dc: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33059 if (oi->fmt == OP_FMT_npopx) { - c002540e: 48b9 li a7,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 + c00255de: 48b9 li a7,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33077 switch(op) { - c0025410: 06900f93 li t6,105 - c0025414: 42ed li t0,27 - c0025416: 0003a317 auipc t1,0x3a - c002541a: 8ba30313 addi t1,t1,-1862 # c005ecd0 - c002541e: 02100393 li t2,33 - c0025422: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33027 + c00255e0: 06900f93 li t6,105 + c00255e4: 42ed li t0,27 + c00255e6: 0003a317 auipc t1,0x3a + c00255ea: 94a30313 addi t1,t1,-1718 # c005ef30 + c00255ee: 02100393 li t2,33 + c00255f2: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33035 while (s->pc_stack_len > 0) { - c0025424: 47ca lw a5,144(sp) - c0025426: 0ef04f63 bgtz a5,c0025524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33184 + c00255f4: 47ca lw a5,144(sp) + c00255f6: 0ef04f63 bgtz a5,c00256f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33192 js_free(ctx, s->pc_stack); - c002542a: 856e mv a0,s11 - c002542c: a0fe10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33185 + c00255fa: 856e mv a0,s11 + c00255fc: 92de10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33193 js_free(ctx, s->catch_pos_tab); - c0025430: 658a ld a1,128(sp) - c0025432: 856e mv a0,s11 + c0025600: 658a ld a1,128(sp) + c0025602: 856e mv a0,s11 js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33331 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33339 function_size = offsetof(JSFunctionBytecode, debug); - c0025434: 06000a13 li s4,96 + c0025604: 06000a13 li s4,96 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33193 js_free(ctx, s->catch_pos_tab); - c0025438: a03e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33186 + c0025608: 921e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33194 js_free(ctx, s->stack_level_tab); - c002543c: 75e6 ld a1,120(sp) - c002543e: 856e mv a0,s11 - c0025440: 9fbe10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33187 + c002560c: 75e6 ld a1,120(sp) + c002560e: 856e mv a0,s11 + c0025610: 919e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33195 *pstack_size = s->stack_len_max; - c0025444: 08644703 lbu a4,134(s0) - c0025448: 5ad6 lw s5,116(sp) + c0025614: 08644703 lbu a4,134(s0) + c0025618: 5ad6 lw s5,116(sp) js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33338 if (fd->js_mode & JS_MODE_STRIP) { - c002544a: 8b09 andi a4,a4,2 - c002544c: e319 bnez a4,c0025452 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33333 + c002561a: 8b09 andi a4,a4,2 + c002561c: e319 bnez a4,c0025622 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33341 function_size = sizeof(*b); - c002544e: 08000a13 li s4,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33336 + c002561e: 08000a13 li s4,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33344 function_size += fd->cpool_count * sizeof(*fd->cpool); - c0025452: 19042783 lw a5,400(s0) - c0025456: 0047979b slliw a5,a5,0x4 - c002545a: 01478b3b addw s6,a5,s4 - c002545e: 87da mv a5,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33338 + c0025622: 19042783 lw a5,400(s0) + c0025626: 0047979b slliw a5,a5,0x4 + c002562a: 01478b3b addw s6,a5,s4 + c002562e: 87da mv a5,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33346 if (!(fd->js_mode & JS_MODE_STRIP) || fd->has_eval_call) { - c0025460: c701 beqz a4,c0025468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33338 (discriminator 1) - c0025462: 4c78 lw a4,92(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33336 (discriminator 1) + c0025630: c701 beqz a4,c0025638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33346 (discriminator 1) + c0025632: 4c78 lw a4,92(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33344 (discriminator 1) function_size += fd->cpool_count * sizeof(*fd->cpool); - c0025464: 89da mv s3,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33338 (discriminator 1) + c0025634: 89da mv s3,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33346 (discriminator 1) if (!(fd->js_mode & JS_MODE_STRIP) || fd->has_eval_call) { - c0025466: cb19 beqz a4,c002547c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33339 + c0025636: cb19 beqz a4,c002564c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33347 function_size += (fd->arg_count + fd->var_count) * sizeof(*b->vardefs); - c0025468: 0ac42983 lw s3,172(s0) - c002546c: 09c42503 lw a0,156(s0) - c0025470: 00a989bb addw s3,s3,a0 - c0025474: 0049999b slliw s3,s3,0x4 - c0025478: 00f989bb addw s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33342 + c0025638: 0ac42983 lw s3,172(s0) + c002563c: 09c42503 lw a0,156(s0) + c0025640: 00a989bb addw s3,s3,a0 + c0025644: 0049999b slliw s3,s3,0x4 + c0025648: 00f989bb addw s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33350 function_size += fd->closure_var_count * sizeof(*fd->closure_var); - c002547c: 19842903 lw s2,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33344 + c002564c: 19842903 lw s2,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33352 function_size += fd->byte_code.size; - c0025480: 13843583 ld a1,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33346 + c0025650: 13843583 ld a1,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33354 b = js_mallocz(ctx, function_size); - c0025484: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33342 + c0025654: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33350 function_size += fd->closure_var_count * sizeof(*fd->closure_var); - c0025486: 0039191b slliw s2,s2,0x3 - c002548a: 0139093b addw s2,s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33346 + c0025656: 0039191b slliw s2,s2,0x3 + c002565a: 0139093b addw s2,s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33354 b = js_mallocz(ctx, function_size); - c002548e: 00b905bb addw a1,s2,a1 - c0025492: 84bf00ef jal ra,c0015cdc - c0025496: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33347 + c002565e: 00b905bb addw a1,s2,a1 + c0025662: 84bf00ef jal ra,c0015eac + c0025666: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33355 if (!b) - c0025498: e119 bnez a0,c002549e - c002549a: e87fe06f j c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33349 + c0025668: e119 bnez a0,c002566e + c002566a: e87fe06f j c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33357 b->header.ref_count = 1; - c002549e: 4785 li a5,1 - c00254a0: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33351 + c002566e: 4785 li a5,1 + c0025670: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33359 b->byte_code_buf = (void *)((uint8_t*)b + byte_code_offset); - c00254a2: 954a add a0,a0,s2 - c00254a4: f088 sd a0,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33352 + c0025672: 954a add a0,a0,s2 + c0025674: f088 sd a0,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33360 b->byte_code_len = fd->byte_code.size; - c00254a6: 13843783 ld a5,312(s0) - c00254aa: d49c sw a5,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33353 + c0025676: 13843783 ld a5,312(s0) + c002567a: d49c sw a5,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33361 memcpy(b->byte_code_buf, fd->byte_code.buf, fd->byte_code.size); - c00254ac: 13843603 ld a2,312(s0) - c00254b0: 13043583 ld a1,304(s0) - c00254b4: 526310ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33354 + c002567c: 13843603 ld a2,312(s0) + c0025680: 13043583 ld a1,304(s0) + c0025684: 526310ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33362 js_free(ctx, fd->byte_code.buf); - c00254b8: 13043583 ld a1,304(s0) - c00254bc: 856e mv a0,s11 - c00254be: 97de10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33357 + c0025688: 13043583 ld a1,304(s0) + c002568c: 856e mv a0,s11 + c002568e: 89be10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 b->func_name = fd->func_name; - c00254c2: 08842783 lw a5,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33355 + c0025692: 08842783 lw a5,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33363 fd->byte_code.buf = NULL; - c00254c6: 12043823 sd zero,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33357 + c0025696: 12043823 sd zero,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 b->func_name = fd->func_name; - c00254ca: d4dc sw a5,44(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33358 + c002569a: d4dc sw a5,44(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33366 if (fd->arg_count + fd->var_count > 0) { - c00254cc: 0ac42783 lw a5,172(s0) - c00254d0: 09c42703 lw a4,156(s0) - c00254d4: 9fb9 addw a5,a5,a4 - c00254d6: 46f05563 blez a5,c0025940 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33359 + c002569c: 0ac42783 lw a5,172(s0) + c00256a0: 09c42703 lw a4,156(s0) + c00256a4: 9fb9 addw a5,a5,a4 + c00256a6: 46f05563 blez a5,c0025b10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33367 if ((fd->js_mode & JS_MODE_STRIP) && !fd->has_eval_call) { - c00254da: 08644783 lbu a5,134(s0) - c00254de: 8b89 andi a5,a5,2 - c00254e0: c789 beqz a5,c00254ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33359 (discriminator 1) - c00254e2: 05c42903 lw s2,92(s0) - c00254e6: 62090063 beqz s2,c0025b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33373 + c00256aa: 08644783 lbu a5,134(s0) + c00256ae: 8b89 andi a5,a5,2 + c00256b0: c789 beqz a5,c00256ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33367 (discriminator 1) + c00256b2: 05c42903 lw s2,92(s0) + c00256b6: 62090063 beqz s2,c0025cd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33381 b->vardefs = (void *)((uint8_t*)b + vardefs_offset); - c00254ea: 01648533 add a0,s1,s6 - c00254ee: f888 sd a0,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33374 + c00256ba: 01648533 add a0,s1,s6 + c00256be: f888 sd a0,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33382 memcpy(b->vardefs, fd->args, fd->arg_count * sizeof(fd->args[0])); - c00254f0: 0ac42603 lw a2,172(s0) - c00254f4: 704c ld a1,160(s0) - c00254f6: 0612 slli a2,a2,0x4 - c00254f8: 4e2310ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33375 + c00256c0: 0ac42603 lw a2,172(s0) + c00256c4: 704c ld a1,160(s0) + c00256c6: 0612 slli a2,a2,0x4 + c00256c8: 4e2310ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33383 memcpy(b->vardefs + fd->arg_count, fd->vars, fd->var_count * sizeof(fd->vars[0])); - c00254fc: 0ac42783 lw a5,172(s0) - c0025500: 7888 ld a0,48(s1) - c0025502: 09c42603 lw a2,156(s0) - c0025506: 684c ld a1,144(s0) - c0025508: 0792 slli a5,a5,0x4 - c002550a: 0612 slli a2,a2,0x4 - c002550c: 953e add a0,a0,a5 - c002550e: 4cc310ef jal ra,c00569da - c0025512: a119 j c0025918 + c00256cc: 0ac42783 lw a5,172(s0) + c00256d0: 7888 ld a0,48(s1) + c00256d2: 09c42603 lw a2,156(s0) + c00256d6: 684c ld a1,144(s0) + c00256d8: 0792 slli a5,a5,0x4 + c00256da: 0612 slli a2,a2,0x4 + c00256dc: 953e add a0,a0,a5 + c00256de: 4cc310ef jal ra,c0056baa + c00256e2: a119 j c0025ae8 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33020 s->stack_level_tab[i] = 0xffff; - c0025514: 77e6 ld a5,120(sp) - c0025516: 00149693 slli a3,s1,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33011 + c00256e4: 77e6 ld a5,120(sp) + c00256e6: 00149693 slli a3,s1,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33019 for(i = 0; i < s->bc_len; i++) - c002551a: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33012 + c00256ea: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33020 s->stack_level_tab[i] = 0xffff; - c002551c: 97b6 add a5,a5,a3 - c002551e: 00e79023 sh a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33011 + c00256ec: 97b6 add a5,a5,a3 + c00256ee: 00e79023 sh a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33019 for(i = 0; i < s->bc_len; i++) - c0025522: b54d j c00253c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33028 + c00256f2: b54d j c0025594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33036 pos = s->pc_stack[--s->pc_stack_len]; - c0025524: fff7871b addiw a4,a5,-1 - c0025528: 00271793 slli a5,a4,0x2 - c002552c: c93a sw a4,144(sp) - c002552e: 97ae add a5,a5,a1 - c0025530: 4384 lw s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33029 + c00256f4: fff7871b addiw a4,a5,-1 + c00256f8: 00271793 slli a5,a4,0x2 + c00256fc: c93a sw a4,144(sp) + c00256fe: 97ae add a5,a5,a1 + c0025700: 4384 lw s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33037 stack_len = s->stack_level_tab[pos]; - c0025532: 00149793 slli a5,s1,0x1 - c0025536: 97b2 add a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025702: 00149793 slli a5,s1,0x1 + c0025706: 97b2 add a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025538: 009a8533 add a0,s5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33029 + c0025708: 009a8533 add a0,s5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33037 stack_len = s->stack_level_tab[pos]; - c002553c: 0007dc83 lhu s9,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c002570c: 0007dc83 lhu s9,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025540: 00054683 lbu a3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33030 + c0025710: 00054683 lbu a3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33038 catch_pos = s->catch_pos_tab[pos]; - c0025544: 00249793 slli a5,s1,0x2 - c0025548: 97c2 add a5,a5,a6 - c002554a: 0007a903 lw s2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33029 + c0025714: 00249793 slli a5,s1,0x2 + c0025718: 97c2 add a5,a5,a6 + c002571a: 0007a903 lw s2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33037 stack_len = s->stack_level_tab[pos]; - c002554e: 8e66 mv t3,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c002571e: 8e66 mv t3,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025550: 0006899b sext.w s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33032 + c0025720: 0006899b sext.w s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33040 if (op == 0 || op >= OP_COUNT) { - c0025554: c689 beqz a3,c002555e - c0025556: 0f500793 li a5,245 - c002555a: 0337d963 bge a5,s3,c002558c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33033 + c0025724: c689 beqz a3,c002572e + c0025726: 0f500793 li a5,245 + c002572a: 0337d963 bge a5,s3,c002575c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33041 JS_ThrowInternalError(ctx, "invalid opcode (op=%d, pc=%d)", op, pos); - c002555e: 86a6 mv a3,s1 - c0025560: 864e mv a2,s3 - c0025562: 00039597 auipc a1,0x39 - c0025566: 5c658593 addi a1,a1,1478 # c005eb28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33042 + c002572e: 86a6 mv a3,s1 + c0025730: 864e mv a2,s3 + c0025732: 00039597 auipc a1,0x39 + c0025736: 65658593 addi a1,a1,1622 # c005ed88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33050 JS_ThrowInternalError(ctx, "bytecode buffer overflow (op=%d, pc=%d)", op, pos); - c002556a: 856e mv a0,s11 - c002556c: c18ef0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33190 + c002573a: 856e mv a0,s11 + c002573c: b36ef0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33198 js_free(ctx, s->pc_stack); - c0025570: 65aa ld a1,136(sp) - c0025572: 856e mv a0,s11 - c0025574: 8c7e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33191 + c0025740: 65aa ld a1,136(sp) + c0025742: 856e mv a0,s11 + c0025744: fe4e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33199 js_free(ctx, s->catch_pos_tab); - c0025578: 658a ld a1,128(sp) - c002557a: 856e mv a0,s11 - c002557c: 8bfe10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33192 + c0025748: 658a ld a1,128(sp) + c002574a: 856e mv a0,s11 + c002574c: fdce10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33200 js_free(ctx, s->stack_level_tab); - c0025580: 75e6 ld a1,120(sp) - c0025582: 856e mv a0,s11 - c0025584: 8b7e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33194 + c0025750: 75e6 ld a1,120(sp) + c0025752: 856e mv a0,s11 + c0025754: fd4e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33202 return -1; - c0025588: d99fe06f j c0024320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33036 + c0025758: d99fe06f j c00244f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33044 oi = &short_opcode_info(op); - c002558c: 0b300793 li a5,179 - c0025590: 874e mv a4,s3 - c0025592: 0137d463 bge a5,s3,c002559a - c0025596: 01398713 addi a4,s3,19 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33040 + c002575c: 0b300793 li a5,179 + c0025760: 874e mv a4,s3 + c0025762: 0137d463 bge a5,s3,c002576a + c0025766: 01398713 addi a4,s3,19 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33048 pos_next = pos + oi->size; - c002559a: 070a slli a4,a4,0x2 - c002559c: 00ec07b3 add a5,s8,a4 - c00255a0: 0007ca03 lbu s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33041 + c002576a: 070a slli a4,a4,0x2 + c002576c: 00ec07b3 add a5,s8,a4 + c0025770: 0007ca03 lbu s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33049 if (pos_next > s->bc_len) { - c00255a4: 6ec2 ld t4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33040 + c0025774: 6ec2 ld t4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33048 pos_next = pos + oi->size; - c00255a6: 009a0a3b addw s4,s4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33041 + c0025776: 009a0a3b addw s4,s4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33049 if (pos_next > s->bc_len) { - c00255aa: 014ed963 bge t4,s4,c00255bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33042 + c002577a: 014ed963 bge t4,s4,c002578c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33050 JS_ThrowInternalError(ctx, "bytecode buffer overflow (op=%d, pc=%d)", op, pos); - c00255ae: 86a6 mv a3,s1 - c00255b0: 864e mv a2,s3 - c00255b2: 00039597 auipc a1,0x39 - c00255b6: 4ae58593 addi a1,a1,1198 # c005ea60 - c00255ba: bf45 j c002556a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33047 + c002577e: 86a6 mv a3,s1 + c0025780: 864e mv a2,s3 + c0025782: 00039597 auipc a1,0x39 + c0025786: 53e58593 addi a1,a1,1342 # c005ecc0 + c002578a: bf45 j c002573a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33055 if (oi->fmt == OP_FMT_npop || oi->fmt == OP_FMT_npop_u16) { - c00255bc: 0037c083 lbu ra,3(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33045 + c002578c: 0037c083 lbu ra,3(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33053 n_pop = oi->n_pop; - c00255c0: 0017ce83 lbu t4,1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33047 + c0025790: 0017ce83 lbu t4,1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33055 if (oi->fmt == OP_FMT_npop || oi->fmt == OP_FMT_npop_u16) { - c00255c4: 4f35 li t5,13 - c00255c6: 0fd0f793 andi a5,ra,253 - c00255ca: 03e79463 bne a5,t5,c00255f2 + c0025794: 4f35 li t5,13 + c0025796: 0fd0f793 andi a5,ra,253 + c002579a: 03e79463 bne a5,t5,c00257c2 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c00255ce: 00254783 lbu a5,2(a0) - c00255d2: 00154083 lbu ra,1(a0) - c00255d6: 07a2 slli a5,a5,0x8 - c00255d8: 0017e7b3 or a5,a5,ra + c002579e: 00254783 lbu a5,2(a0) + c00257a2: 00154083 lbu ra,1(a0) + c00257a6: 07a2 slli a5,a5,0x8 + c00257a8: 0017e7b3 or a5,a5,ra compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33060 n_pop += op - OP_call0; - c00255dc: 01d78ebb addw t4,a5,t4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33057 + c00257ac: 01d78ebb addw t4,a5,t4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33065 if (stack_len < n_pop) { - c00255e0: 01dcdf63 bge s9,t4,c00255fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33058 + c00257b0: 01dcdf63 bge s9,t4,c00257ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33066 JS_ThrowInternalError(ctx, "stack underflow (op=%d, pc=%d)", op, pos); - c00255e4: 86a6 mv a3,s1 - c00255e6: 864e mv a2,s3 - c00255e8: 00039597 auipc a1,0x39 - c00255ec: 56058593 addi a1,a1,1376 # c005eb48 - c00255f0: bfad j c002556a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33045 + c00257b4: 86a6 mv a3,s1 + c00257b6: 864e mv a2,s3 + c00257b8: 00039597 auipc a1,0x39 + c00257bc: 5f058593 addi a1,a1,1520 # c005eda8 + c00257c0: bfad j c002573a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33053 n_pop = oi->n_pop; - c00255f2: 2e81 sext.w t4,t4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33051 + c00257c2: 2e81 sext.w t4,t4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33059 if (oi->fmt == OP_FMT_npopx) { - c00255f4: ff1096e3 bne ra,a7,c00255e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33052 + c00257c4: ff1096e3 bne ra,a7,c00257b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33060 n_pop += op - OP_call0; - c00255f8: f129879b addiw a5,s3,-238 - c00255fc: b7c5 j c00255dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33061 + c00257c8: f129879b addiw a5,s3,-238 + c00257cc: b7c5 j c00257ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 stack_len += oi->n_push - n_pop; - c00255fe: 9762 add a4,a4,s8 - c0025600: 00274783 lbu a5,2(a4) - c0025604: 01c78e3b addw t3,a5,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33062 + c00257ce: 9762 add a4,a4,s8 + c00257d0: 00274783 lbu a5,2(a4) + c00257d4: 01c78e3b addw t3,a5,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33070 if (stack_len > s->stack_len_max) { - c0025608: 57d6 lw a5,116(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33061 + c00257d8: 57d6 lw a5,116(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 stack_len += oi->n_push - n_pop; - c002560a: 41de0cbb subw s9,t3,t4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33062 + c00257da: 41de0cbb subw s9,t3,t4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33070 if (stack_len > s->stack_len_max) { - c002560e: 0197dc63 bge a5,s9,c0025626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33063 + c00257de: 0197dc63 bge a5,s9,c00257f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33071 s->stack_len_max = stack_len; - c0025612: dae6 sw s9,116(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33064 + c00257e2: dae6 sw s9,116(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33072 if (s->stack_len_max > JS_STACK_SIZE_MAX) { - c0025614: 019b5963 bge s6,s9,c0025626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33065 + c00257e4: 019b5963 bge s6,s9,c00257f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33073 JS_ThrowInternalError(ctx, "stack overflow (op=%d, pc=%d)", op, pos); - c0025618: 86a6 mv a3,s1 - c002561a: 864e mv a2,s3 - c002561c: 00039597 auipc a1,0x39 - c0025620: 46c58593 addi a1,a1,1132 # c005ea88 - c0025624: b799 j c002556a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 + c00257e8: 86a6 mv a3,s1 + c00257ea: 864e mv a2,s3 + c00257ec: 00039597 auipc a1,0x39 + c00257f0: 4fc58593 addi a1,a1,1276 # c005ece8 + c00257f4: b799 j c002573a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33077 switch(op) { - c0025626: 08500793 li a5,133 - c002562a: 06d7ec63 bltu a5,a3,c00256a2 - c002562e: 04dfef63 bltu t6,a3,c002568c - c0025632: 27168763 beq a3,a7,c00258a0 - c0025636: 36c5 addiw a3,a3,-15 - c0025638: 0ff6f693 zext.b a3,a3 - c002563c: 06d3ef63 bltu t2,a3,c00256ba - c0025640: 00dd16b3 sll a3,s10,a3 - c0025644: 0176f7b3 and a5,a3,s7 - c0025648: dc079ee3 bnez a5,c0025424 - c002564c: 0026f793 andi a5,a3,2 - c0025650: 22079f63 bnez a5,c002588e - c0025654: 8a85 andi a3,a3,1 - c0025656: c2b5 beqz a3,c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33144 + c00257f6: 08500793 li a5,133 + c00257fa: 06d7ec63 bltu a5,a3,c0025872 + c00257fe: 04dfef63 bltu t6,a3,c002585c + c0025802: 27168763 beq a3,a7,c0025a70 + c0025806: 36c5 addiw a3,a3,-15 + c0025808: 0ff6f693 zext.b a3,a3 + c002580c: 06d3ef63 bltu t2,a3,c002588a + c0025810: 00dd16b3 sll a3,s10,a3 + c0025814: 0176f7b3 and a5,a3,s7 + c0025818: dc079ee3 bnez a5,c00255f4 + c002581c: 0026f793 andi a5,a3,2 + c0025820: 22079f63 bnez a5,c0025a5e + c0025824: 8a85 andi a3,a3,1 + c0025826: c2b5 beqz a3,c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33152 catch_level = stack_len - 1; - c0025658: fffc879b addiw a5,s9,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025828: fffc879b addiw a5,s9,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c002565c: 49bd li s3,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33155 + c002582c: 49bd li s3,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33163 if (catch_pos >= 0) { - c002565e: 04094e63 bltz s2,c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33157 + c002582e: 04094e63 bltz s2,c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33165 level = s->stack_level_tab[catch_pos]; - c0025662: 00191713 slli a4,s2,0x1 - c0025666: 963a add a2,a2,a4 - c0025668: 00065703 lhu a4,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33158 + c0025832: 00191713 slli a4,s2,0x1 + c0025836: 963a add a2,a2,a4 + c0025838: 00065703 lhu a4,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33166 if (bc_buf[catch_pos] != OP_catch) - c002566c: 012a8633 add a2,s5,s2 - c0025670: 00064583 lbu a1,0(a2) - c0025674: 06d00613 li a2,109 - c0025678: 00c58363 beq a1,a2,c002567e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33159 + c002583c: 012a8633 add a2,s5,s2 + c0025840: 00064583 lbu a1,0(a2) + c0025844: 06d00613 li a2,109 + c0025848: 00c58363 beq a1,a2,c002584e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33167 level++; /* for_of_start, for_wait_of_start */ - c002567c: 2705 addiw a4,a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33161 + c002584c: 2705 addiw a4,a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33169 if (catch_level == level) { - c002567e: 02e79e63 bne a5,a4,c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33162 + c002584e: 02e79e63 bne a5,a4,c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33170 catch_pos = s->catch_pos_tab[catch_pos]; - c0025682: 090a slli s2,s2,0x2 - c0025684: 984a add a6,a6,s2 - c0025686: 00082903 lw s2,0(a6) - c002568a: a805 j c00256ba - c002568c: f966869b addiw a3,a3,-106 - c0025690: 0ff6f693 zext.b a3,a3 - c0025694: 02d2e363 bltu t0,a3,c00256ba - c0025698: 068a slli a3,a3,0x2 - c002569a: 969a add a3,a3,t1 - c002569c: 429c lw a5,0(a3) - c002569e: 979a add a5,a5,t1 - c00256a0: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 + c0025852: 090a slli s2,s2,0x2 + c0025854: 984a add a6,a6,s2 + c0025856: 00082903 lw s2,0(a6) + c002585a: a805 j c002588a + c002585c: f966869b addiw a3,a3,-106 + c0025860: 0ff6f693 zext.b a3,a3 + c0025864: 02d2e363 bltu t0,a3,c002588a + c0025868: 068a slli a3,a3,0x2 + c002586a: 969a add a3,a3,t1 + c002586c: 429c lw a5,0(a3) + c002586e: 979a add a5,a5,t1 + c0025870: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33077 switch(op) { - c00256a2: 0ec00793 li a5,236 - c00256a6: 08f68363 beq a3,a5,c002572c - c00256aa: 02d7e363 bltu a5,a3,c00256d0 - c00256ae: 26d9 addiw a3,a3,22 - c00256b0: 0ff6f693 zext.b a3,a3 - c00256b4: 4785 li a5,1 - c00256b6: 08d7f663 bgeu a5,a3,c0025742 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33180 + c0025872: 0ec00793 li a5,236 + c0025876: 08f68363 beq a3,a5,c00258fc + c002587a: 02d7e363 bltu a5,a3,c00258a0 + c002587e: 26d9 addiw a3,a3,22 + c0025880: 0ff6f693 zext.b a3,a3 + c0025884: 4785 li a5,1 + c0025886: 08d7f663 bgeu a5,a3,c0025912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33188 if (ss_check(ctx, s, pos_next, op, stack_len, catch_pos)) - c00256ba: 87ca mv a5,s2 - c00256bc: 8766 mv a4,s9 - c00256be: 86ce mv a3,s3 - c00256c0: 8652 mv a2,s4 - c00256c2: 188c addi a1,sp,112 - c00256c4: 856e mv a0,s11 - c00256c6: fd4fe0ef jal ra,c0023e9a - c00256ca: d2050de3 beqz a0,c0025404 - c00256ce: b54d j c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 + c002588a: 87ca mv a5,s2 + c002588c: 8766 mv a4,s9 + c002588e: 86ce mv a3,s3 + c0025890: 8652 mv a2,s4 + c0025892: 188c addi a1,sp,112 + c0025894: 856e mv a0,s11 + c0025896: fd4fe0ef jal ra,c002406a + c002589a: d2050de3 beqz a0,c00255d4 + c002589e: b54d j c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33077 switch(op) { - c00256d0: 0ed00793 li a5,237 - c00256d4: fef693e3 bne a3,a5,c00256ba + c00258a0: 0ed00793 li a5,237 + c00258a4: fef693e3 bne a3,a5,c002588a get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c00256d8: 00254a03 lbu s4,2(a0) - c00256dc: 00154783 lbu a5,1(a0) + c00258a8: 00254a03 lbu s4,2(a0) + c00258ac: 00154783 lbu a5,1(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33094 pos_next = pos + 1 + diff; - c00256e0: 0014861b addiw a2,s1,1 + c00258b0: 0014861b addiw a2,s1,1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c00256e4: 0a22 slli s4,s4,0x8 - c00256e6: 00fa6a33 or s4,s4,a5 + c00258b4: 0a22 slli s4,s4,0x8 + c00258b6: 00fa6a33 or s4,s4,a5 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33085 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33093 diff = (int16_t)get_u16(bc_buf + pos + 1); - c00256ea: 010a1a1b slliw s4,s4,0x10 - c00256ee: 410a5a1b sraiw s4,s4,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33086 + c00258ba: 010a1a1b slliw s4,s4,0x10 + c00258be: 410a5a1b sraiw s4,s4,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33094 pos_next = pos + 1 + diff; - c00256f2: 00ca0a3b addw s4,s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c00258c2: 00ca0a3b addw s4,s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c00256f6: 0ed00993 li s3,237 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33087 + c00258c6: 0ed00993 li s3,237 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33095 break; - c00256fa: b7c1 j c00256ba + c00258ca: b7c1 j c002588a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00256fc: 00254783 lbu a5,2(a0) - c0025700: 00154a03 lbu s4,1(a0) + c00258cc: 00254783 lbu a5,2(a0) + c00258d0: 00154a03 lbu s4,1(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33081 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33089 pos_next = pos + 1 + diff; - c0025704: 0014861b addiw a2,s1,1 + c00258d4: 0014861b addiw a2,s1,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025708: 07a2 slli a5,a5,0x8 - c002570a: 0147e7b3 or a5,a5,s4 - c002570e: 00354a03 lbu s4,3(a0) + c00258d8: 07a2 slli a5,a5,0x8 + c00258da: 0147e7b3 or a5,a5,s4 + c00258de: 00354a03 lbu s4,3(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025712: 06c00993 li s3,108 + c00258e2: 06c00993 li s3,108 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025716: 0a42 slli s4,s4,0x10 - c0025718: 00fa67b3 or a5,s4,a5 - c002571c: 00454a03 lbu s4,4(a0) - c0025720: 0a62 slli s4,s4,0x18 - c0025722: 00fa6a33 or s4,s4,a5 + c00258e6: 0a42 slli s4,s4,0x10 + c00258e8: 00fa67b3 or a5,s4,a5 + c00258ec: 00454a03 lbu s4,4(a0) + c00258f0: 0a62 slli s4,s4,0x18 + c00258f2: 00fa6a33 or s4,s4,a5 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33081 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33089 pos_next = pos + 1 + diff; - c0025726: 01460a3b addw s4,a2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33082 + c00258f6: 01460a3b addw s4,a2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33090 break; - c002572a: bf41 j c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33089 + c00258fa: bf41 j c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33097 diff = (int8_t)bc_buf[pos + 1]; - c002572c: 0014879b addiw a5,s1,1 - c0025730: 863e mv a2,a5 - c0025732: 97d6 add a5,a5,s5 - c0025734: 00078a03 lb s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c00258fc: 0014879b addiw a5,s1,1 + c0025900: 863e mv a2,a5 + c0025902: 97d6 add a5,a5,s5 + c0025904: 00078a03 lb s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025738: 0ec00993 li s3,236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33090 + c0025908: 0ec00993 li s3,236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33098 pos_next = pos + 1 + diff; - c002573c: 00ca0a3b addw s4,s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33091 + c002590c: 00ca0a3b addw s4,s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33099 break; - c0025740: bfad j c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33094 - diff = (int8_t)bc_buf[pos + 1]; - c0025742: 0014879b addiw a5,s1,1 - c0025746: 863e mv a2,a5 - c0025748: 97d6 add a5,a5,s5 - c002574a: 00078583 lb a1,0(a5) + c0025910: bfad j c002588a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33102 + diff = (int8_t)bc_buf[pos + 1]; + c0025912: 0014879b addiw a5,s1,1 + c0025916: 863e mv a2,a5 + c0025918: 97d6 add a5,a5,s5 + c002591a: 00078583 lb a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33110 if (ss_check(ctx, s, pos + 1 + diff, op, stack_len, catch_pos)) - c002574e: 87ca mv a5,s2 - c0025750: 8766 mv a4,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33120 + c002591e: 87ca mv a5,s2 + c0025920: 8766 mv a4,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33128 if (ss_check(ctx, s, pos + 5 + diff, op, stack_len + 2, catch_pos)) - c0025752: 9e2d addw a2,a2,a1 - c0025754: 86ce mv a3,s3 - c0025756: 188c addi a1,sp,112 - c0025758: 856e mv a0,s11 - c002575a: f40fe0ef jal ra,c0023e9a - c002575e: dd31 beqz a0,c00256ba - c0025760: bd01 j c0025570 + c0025922: 9e2d addw a2,a2,a1 + c0025924: 86ce mv a3,s3 + c0025926: 188c addi a1,sp,112 + c0025928: 856e mv a0,s11 + c002592a: f40fe0ef jal ra,c002406a + c002592e: dd31 beqz a0,c002588a + c0025930: bd01 j c0025740 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025762: 00254583 lbu a1,2(a0) - c0025766: 00154603 lbu a2,1(a0) - c002576a: 05a2 slli a1,a1,0x8 - c002576c: 8dd1 or a1,a1,a2 - c002576e: 00354603 lbu a2,3(a0) - c0025772: 0642 slli a2,a2,0x10 - c0025774: 8e4d or a2,a2,a1 - c0025776: 00454583 lbu a1,4(a0) - c002577a: 05e2 slli a1,a1,0x18 - c002577c: 8dd1 or a1,a1,a2 + c0025932: 00254583 lbu a1,2(a0) + c0025936: 00154603 lbu a2,1(a0) + c002593a: 05a2 slli a1,a1,0x8 + c002593c: 8dd1 or a1,a1,a2 + c002593e: 00354603 lbu a2,3(a0) + c0025942: 0642 slli a2,a2,0x10 + c0025944: 8e4d or a2,a2,a1 + c0025946: 00454583 lbu a1,4(a0) + c002594a: 05e2 slli a1,a1,0x18 + c002594c: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33102 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33110 if (ss_check(ctx, s, pos + 1 + diff, op, stack_len, catch_pos)) - c002577e: 0014861b addiw a2,s1,1 - c0025782: b7f1 j c002574e + c002594e: 0014861b addiw a2,s1,1 + c0025952: b7f1 j c002591e get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025784: 00254583 lbu a1,2(a0) - c0025788: 00154603 lbu a2,1(a0) + c0025954: 00254583 lbu a1,2(a0) + c0025958: 00154603 lbu a2,1(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33115 if (ss_check(ctx, s, pos + 1 + diff, op, stack_len + 1, catch_pos)) - c002578c: 87ca mv a5,s2 + c002595c: 87ca mv a5,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002578e: 05a2 slli a1,a1,0x8 - c0025790: 8dd1 or a1,a1,a2 - c0025792: 00354603 lbu a2,3(a0) + c002595e: 05a2 slli a1,a1,0x8 + c0025960: 8dd1 or a1,a1,a2 + c0025962: 00354603 lbu a2,3(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33107 - c0025796: 001c871b addiw a4,s9,1 - c002579a: 06e00693 li a3,110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33115 + c0025966: 001c871b addiw a4,s9,1 + c002596a: 06e00693 li a3,110 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002579e: 0642 slli a2,a2,0x10 - c00257a0: 8e4d or a2,a2,a1 - c00257a2: 00454583 lbu a1,4(a0) + c002596e: 0642 slli a2,a2,0x10 + c0025970: 8e4d or a2,a2,a1 + c0025972: 00454583 lbu a1,4(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33107 - c00257a6: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33115 + c0025976: 856e mv a0,s11 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257a8: 05e2 slli a1,a1,0x18 - c00257aa: 8dd1 or a1,a1,a2 + c0025978: 05e2 slli a1,a1,0x18 + c002597a: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33107 - c00257ac: 0014861b addiw a2,s1,1 - c00257b0: 9e2d addw a2,a2,a1 - c00257b2: 188c addi a1,sp,112 - c00257b4: ee6fe0ef jal ra,c0023e9a - c00257b8: da051ce3 bnez a0,c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33115 + c002597c: 0014861b addiw a2,s1,1 + c0025980: 9e2d addw a2,a2,a1 + c0025982: 188c addi a1,sp,112 + c0025984: ee6fe0ef jal ra,c002406a + c0025988: da051ce3 bnez a0,c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c00257bc: 06e00993 li s3,110 - c00257c0: bded j c00256ba + c002598c: 06e00993 li s3,110 + c0025990: bded j c002588a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257c2: 00654583 lbu a1,6(a0) - c00257c6: 00554603 lbu a2,5(a0) + c0025992: 00654583 lbu a1,6(a0) + c0025996: 00554603 lbu a2,5(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33121 if (ss_check(ctx, s, pos + 5 + diff, op, stack_len + 1, catch_pos)) - c00257ca: 87ca mv a5,s2 + c002599a: 87ca mv a5,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257cc: 05a2 slli a1,a1,0x8 - c00257ce: 8dd1 or a1,a1,a2 - c00257d0: 00754603 lbu a2,7(a0) + c002599c: 05a2 slli a1,a1,0x8 + c002599e: 8dd1 or a1,a1,a2 + c00259a0: 00754603 lbu a2,7(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33113 - c00257d4: 001c871b addiw a4,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33121 + c00259a4: 001c871b addiw a4,s9,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257d8: 0642 slli a2,a2,0x10 - c00257da: 8e4d or a2,a2,a1 - c00257dc: 00854583 lbu a1,8(a0) - c00257e0: 05e2 slli a1,a1,0x18 - c00257e2: 8dd1 or a1,a1,a2 + c00259a8: 0642 slli a2,a2,0x10 + c00259aa: 8e4d or a2,a2,a1 + c00259ac: 00854583 lbu a1,8(a0) + c00259b0: 05e2 slli a1,a1,0x18 + c00259b2: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33113 - c00257e4: 0054861b addiw a2,s1,5 - c00257e8: b7ad j c0025752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33121 + c00259b4: 0054861b addiw a2,s1,5 + c00259b8: b7ad j c0025922 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257ea: 00654583 lbu a1,6(a0) - c00257ee: 00554603 lbu a2,5(a0) + c00259ba: 00654583 lbu a1,6(a0) + c00259be: 00554603 lbu a2,5(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33128 if (ss_check(ctx, s, pos + 5 + diff, op, stack_len + 2, catch_pos)) - c00257f2: 87ca mv a5,s2 + c00259c2: 87ca mv a5,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00257f4: 05a2 slli a1,a1,0x8 - c00257f6: 8dd1 or a1,a1,a2 - c00257f8: 00754603 lbu a2,7(a0) + c00259c4: 05a2 slli a1,a1,0x8 + c00259c6: 8dd1 or a1,a1,a2 + c00259c8: 00754603 lbu a2,7(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33120 - c00257fc: 002c871b addiw a4,s9,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33128 + c00259cc: 002c871b addiw a4,s9,2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025800: 0642 slli a2,a2,0x10 - c0025802: 8e4d or a2,a2,a1 - c0025804: 00854583 lbu a1,8(a0) - c0025808: 05e2 slli a1,a1,0x18 - c002580a: 8dd1 or a1,a1,a2 + c00259d0: 0642 slli a2,a2,0x10 + c00259d2: 8e4d or a2,a2,a1 + c00259d4: 00854583 lbu a1,8(a0) + c00259d8: 05e2 slli a1,a1,0x18 + c00259da: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33120 - c002580c: 0054861b addiw a2,s1,5 - c0025810: b789 j c0025752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33128 + c00259dc: 0054861b addiw a2,s1,5 + c00259e0: b789 j c0025922 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025812: 00654583 lbu a1,6(a0) - c0025816: 00554603 lbu a2,5(a0) + c00259e2: 00654583 lbu a1,6(a0) + c00259e6: 00554603 lbu a2,5(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33133 if (ss_check(ctx, s, pos + 5 + diff, op, stack_len - 1, catch_pos)) - c002581a: 87ca mv a5,s2 + c00259ea: 87ca mv a5,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002581c: 05a2 slli a1,a1,0x8 - c002581e: 8dd1 or a1,a1,a2 - c0025820: 00754603 lbu a2,7(a0) + c00259ec: 05a2 slli a1,a1,0x8 + c00259ee: 8dd1 or a1,a1,a2 + c00259f0: 00754603 lbu a2,7(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33125 - c0025824: fffc871b addiw a4,s9,-1 - c0025828: 07500693 li a3,117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33133 + c00259f4: fffc871b addiw a4,s9,-1 + c00259f8: 07500693 li a3,117 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002582c: 0642 slli a2,a2,0x10 - c002582e: 8e4d or a2,a2,a1 - c0025830: 00854583 lbu a1,8(a0) + c00259fc: 0642 slli a2,a2,0x10 + c00259fe: 8e4d or a2,a2,a1 + c0025a00: 00854583 lbu a1,8(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33125 - c0025834: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33133 + c0025a04: 856e mv a0,s11 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025836: 05e2 slli a1,a1,0x18 - c0025838: 8dd1 or a1,a1,a2 + c0025a06: 05e2 slli a1,a1,0x18 + c0025a08: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33125 - c002583a: 0054861b addiw a2,s1,5 - c002583e: 9e2d addw a2,a2,a1 - c0025840: 188c addi a1,sp,112 - c0025842: e58fe0ef jal ra,c0023e9a - c0025846: d20515e3 bnez a0,c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33133 + c0025a0a: 0054861b addiw a2,s1,5 + c0025a0e: 9e2d addw a2,a2,a1 + c0025a10: 188c addi a1,sp,112 + c0025a12: e58fe0ef jal ra,c002406a + c0025a16: d20515e3 bnez a0,c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c002584a: 07500993 li s3,117 - c002584e: b5b5 j c00256ba + c0025a1a: 07500993 li s3,117 + c0025a1e: b5b5 j c002588a get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025850: 00254583 lbu a1,2(a0) - c0025854: 00154603 lbu a2,1(a0) + c0025a20: 00254583 lbu a1,2(a0) + c0025a24: 00154603 lbu a2,1(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33138 if (ss_check(ctx, s, pos + 1 + diff, op, stack_len, catch_pos)) - c0025858: 87ca mv a5,s2 + c0025a28: 87ca mv a5,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002585a: 05a2 slli a1,a1,0x8 - c002585c: 8dd1 or a1,a1,a2 - c002585e: 00354603 lbu a2,3(a0) + c0025a2a: 05a2 slli a1,a1,0x8 + c0025a2c: 8dd1 or a1,a1,a2 + c0025a2e: 00354603 lbu a2,3(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33130 - c0025862: 8766 mv a4,s9 - c0025864: 06d00693 li a3,109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33138 + c0025a32: 8766 mv a4,s9 + c0025a34: 06d00693 li a3,109 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025868: 0642 slli a2,a2,0x10 - c002586a: 8e4d or a2,a2,a1 - c002586c: 00454583 lbu a1,4(a0) + c0025a38: 0642 slli a2,a2,0x10 + c0025a3a: 8e4d or a2,a2,a1 + c0025a3c: 00454583 lbu a1,4(a0) compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33130 - c0025870: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33138 + c0025a40: 856e mv a0,s11 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0025872: 05e2 slli a1,a1,0x18 - c0025874: 8dd1 or a1,a1,a2 + c0025a42: 05e2 slli a1,a1,0x18 + c0025a44: 8dd1 or a1,a1,a2 compute_stack_size(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33130 - c0025876: 0014861b addiw a2,s1,1 - c002587a: 9e2d addw a2,a2,a1 - c002587c: 188c addi a1,sp,112 - c002587e: e1cfe0ef jal ra,c0023e9a - c0025882: ce0517e3 bnez a0,c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33138 + c0025a46: 0014861b addiw a2,s1,1 + c0025a4a: 9e2d addw a2,a2,a1 + c0025a4c: 188c addi a1,sp,112 + c0025a4e: e1cfe0ef jal ra,c002406a + c0025a52: ce0517e3 bnez a0,c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33036 pos = s->pc_stack[--s->pc_stack_len]; - c0025886: 8926 mv s2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025a56: 8926 mv s2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025888: 06d00993 li s3,109 - c002588c: b53d j c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33147 + c0025a58: 06d00993 li s3,109 + c0025a5c: b53d j c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33155 catch_level = stack_len - 1; - c002588e: fffc879b addiw a5,s9,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025a5e: fffc879b addiw a5,s9,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c0025892: 49c1 li s3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33148 + c0025a62: 49c1 li s3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33156 goto check_catch; - c0025894: b3e9 j c002565e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33150 + c0025a64: b3e9 j c002582e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33158 catch_level = stack_len + 2; - c0025896: 002c879b addiw a5,s9,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025a66: 002c879b addiw a5,s9,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c002589a: 08500993 li s3,133 - c002589e: b3c1 j c002565e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33061 - stack_len += oi->n_push - n_pop; - c00258a0: 87e6 mv a5,s9 + c0025a6a: 08500993 li s3,133 + c0025a6e: b3c1 j c002582e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33069 + stack_len += oi->n_push - n_pop; + c0025a70: 87e6 mv a5,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33077 switch(op) { - c00258a2: 49b9 li s3,14 - c00258a4: bb6d j c002565e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33167 + c0025a72: 49b9 li s3,14 + c0025a74: bb6d j c002582e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33175 if (catch_pos < 0) { - c00258a6: 00095b63 bgez s2,c00258bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33168 + c0025a76: 00095b63 bgez s2,c0025a8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33176 JS_ThrowInternalError(ctx, "nip_catch: no catch op (pc=%d)", pos); - c00258aa: 8626 mv a2,s1 - c00258ac: 856e mv a0,s11 - c00258ae: 00039597 auipc a1,0x39 - c00258b2: 2ba58593 addi a1,a1,698 # c005eb68 - c00258b6: 8ceef0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33169 + c0025a7a: 8626 mv a2,s1 + c0025a7c: 856e mv a0,s11 + c0025a7e: 00039597 auipc a1,0x39 + c0025a82: 34a58593 addi a1,a1,842 # c005edc8 + c0025a86: fedee0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33177 goto fail; - c00258ba: b95d j c0025570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33172 + c0025a8a: b95d j c0025740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33180 if (bc_buf[catch_pos] != OP_catch) - c00258bc: 012a8733 add a4,s5,s2 - c00258c0: 00074683 lbu a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33171 + c0025a8c: 012a8733 add a4,s5,s2 + c0025a90: 00074683 lbu a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33179 stack_len = s->stack_level_tab[catch_pos]; - c00258c4: 00191793 slli a5,s2,0x1 - c00258c8: 963e add a2,a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33172 + c0025a94: 00191793 slli a5,s2,0x1 + c0025a98: 963e add a2,a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33180 if (bc_buf[catch_pos] != OP_catch) - c00258ca: 06d00713 li a4,109 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33171 + c0025a9a: 06d00713 li a4,109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33179 stack_len = s->stack_level_tab[catch_pos]; - c00258ce: 00065c83 lhu s9,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33172 + c0025a9e: 00065c83 lhu s9,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33180 if (bc_buf[catch_pos] != OP_catch) - c00258d2: 00e68363 beq a3,a4,c00258d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33159 + c0025aa2: 00e68363 beq a3,a4,c0025aa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33167 level++; /* for_of_start, for_wait_of_start */ - c00258d6: 2c85 addiw s9,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33175 + c0025aa6: 2c85 addiw s9,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33183 catch_pos = s->catch_pos_tab[catch_pos]; - c00258d8: 090a slli s2,s2,0x2 - c00258da: 984a add a6,a6,s2 - c00258dc: 00082903 lw s2,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33174 + c0025aa8: 090a slli s2,s2,0x2 + c0025aaa: 984a add a6,a6,s2 + c0025aac: 00082903 lw s2,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33182 stack_len++; /* no stack overflow is possible by construction */ - c00258e0: 0c85 addi s9,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33031 + c0025ab0: 0c85 addi s9,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33039 op = bc_buf[pos]; - c00258e2: 07000993 li s3,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33176 + c0025ab2: 07000993 li s3,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33184 break; - c00258e6: bbd1 j c00256ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33028 + c0025ab6: bbd1 j c002588a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33036 pos = s->pc_stack[--s->pc_stack_len]; - c00258e8: 8926 mv s2,s1 - c00258ea: bbc1 j c00256ba + c0025ab8: 8926 mv s2,s1 + c0025aba: bbc1 j c002588a js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33363 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33371 (discriminator 3) JS_FreeAtom(ctx, fd->vars[i].var_name); - c00258ec: 685c ld a5,144(s0) - c00258ee: 004b1713 slli a4,s6,0x4 - c00258f2: 856e mv a0,s11 - c00258f4: 97ba add a5,a5,a4 - c00258f6: 438c lw a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33362 (discriminator 3) + c0025abc: 685c ld a5,144(s0) + c0025abe: 004b1713 slli a4,s6,0x4 + c0025ac2: 856e mv a0,s11 + c0025ac4: 97ba add a5,a5,a4 + c0025ac6: 438c lw a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33370 (discriminator 3) for(i = 0; i < fd->var_count; i++) { - c00258f8: 2b05 addiw s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33363 (discriminator 3) + c0025ac8: 2b05 addiw s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33371 (discriminator 3) JS_FreeAtom(ctx, fd->vars[i].var_name); - c00258fa: c13e10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33362 (discriminator 1) + c0025aca: b31e10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33370 (discriminator 1) for(i = 0; i < fd->var_count; i++) { - c00258fe: 09c42783 lw a5,156(s0) - c0025902: fefb45e3 blt s6,a5,c00258ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 + c0025ace: 09c42783 lw a5,156(s0) + c0025ad2: fefb45e3 blt s6,a5,c0025abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33373 for(i = 0; i < fd->arg_count; i++) { - c0025906: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 (discriminator 1) - c0025908: 0ac42783 lw a5,172(s0) - c002590c: 1efb4f63 blt s6,a5,c0025b0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33368 (discriminator 1) + c0025ad6: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33373 (discriminator 1) + c0025ad8: 0ac42783 lw a5,172(s0) + c0025adc: 1efb4f63 blt s6,a5,c0025cda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33376 (discriminator 1) for(i = 0; i < fd->closure_var_count; i++) { - c0025910: 19842783 lw a5,408(s0) - c0025914: 20f94563 blt s2,a5,c0025b1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33377 + c0025ae0: 19842783 lw a5,408(s0) + c0025ae4: 20f94563 blt s2,a5,c0025cee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33385 b->var_count = fd->var_count; - c0025918: 09c42783 lw a5,156(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33380 + c0025ae8: 09c42783 lw a5,156(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33388 js_free(ctx, fd->args); - c002591c: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33377 + c0025aec: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33385 b->var_count = fd->var_count; - c002591e: 04f49123 sh a5,66(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33378 + c0025aee: 04f49123 sh a5,66(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33386 b->arg_count = fd->arg_count; - c0025922: 0ac42783 lw a5,172(s0) - c0025926: 04f49023 sh a5,64(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33379 + c0025af2: 0ac42783 lw a5,172(s0) + c0025af6: 04f49023 sh a5,64(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33387 b->defined_arg_count = fd->defined_arg_count; - c002592a: 0b042783 lw a5,176(s0) - c002592e: 04f49223 sh a5,68(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33380 + c0025afa: 0b042783 lw a5,176(s0) + c0025afe: 04f49223 sh a5,68(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33388 js_free(ctx, fd->args); - c0025932: 704c ld a1,160(s0) - c0025934: d06e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33381 + c0025b02: 704c ld a1,160(s0) + c0025b04: c24e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33389 js_free(ctx, fd->vars); - c0025938: 684c ld a1,144(s0) - c002593a: 856e mv a0,s11 - c002593c: cfee10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33383 + c0025b08: 684c ld a1,144(s0) + c0025b0a: 856e mv a0,s11 + c0025b0c: c1ce10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33391 b->cpool_count = fd->cpool_count; - c0025940: 19042603 lw a2,400(s0) - c0025944: ccb0 sw a2,88(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33384 + c0025b10: 19042603 lw a2,400(s0) + c0025b14: ccb0 sw a2,88(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33392 if (b->cpool_count) { - c0025946: ca09 beqz a2,c0025958 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33385 + c0025b16: ca09 beqz a2,c0025b28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33393 b->cpool = (void *)((uint8_t*)b + cpool_offset); - c0025948: 01448533 add a0,s1,s4 - c002594c: e8a8 sd a0,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33386 + c0025b18: 01448533 add a0,s1,s4 + c0025b1c: e8a8 sd a0,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33394 memcpy(b->cpool, fd->cpool, b->cpool_count * sizeof(*b->cpool)); - c002594e: 18843583 ld a1,392(s0) - c0025952: 0612 slli a2,a2,0x4 - c0025954: 086310ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33388 + c0025b1e: 18843583 ld a1,392(s0) + c0025b22: 0612 slli a2,a2,0x4 + c0025b24: 086310ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33396 js_free(ctx, fd->cpool); - c0025958: 18843583 ld a1,392(s0) - c002595c: 856e mv a0,s11 - c002595e: cdce10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33389 + c0025b28: 18843583 ld a1,392(s0) + c0025b2c: 856e mv a0,s11 + c0025b2e: bfae10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33397 fd->cpool = NULL; - c0025962: 18043423 sd zero,392(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33391 + c0025b32: 18043423 sd zero,392(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33399 b->stack_size = stack_size; - c0025966: 05549323 sh s5,70(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33393 + c0025b36: 05549323 sh s5,70(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33401 if (fd->js_mode & JS_MODE_STRIP) { - c002596a: 08644783 lbu a5,134(s0) - c002596e: 8b89 andi a5,a5,2 - c0025970: 1c078763 beqz a5,c0025b3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33394 + c0025b3a: 08644783 lbu a5,134(s0) + c0025b3e: 8b89 andi a5,a5,2 + c0025b40: 1c078763 beqz a5,c0025d0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33402 JS_FreeAtom(ctx, fd->filename); - c0025974: 1d042583 lw a1,464(s0) - c0025978: 856e mv a0,s11 - c002597a: b93e10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33395 + c0025b44: 1d042583 lw a1,464(s0) + c0025b48: 856e mv a0,s11 + c0025b4a: ab1e10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33403 dbuf_free(&fd->pc2line); // probably useless - c002597e: 1d840513 addi a0,s0,472 - c0025982: 484220ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33414 + c0025b4e: 1d840513 addi a0,s0,472 + c0025b52: 484220ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33422 if (fd->scopes != fd->def_scope_array) - c0025986: 786c ld a1,240(s0) - c0025988: 0f840793 addi a5,s0,248 - c002598c: 00f58563 beq a1,a5,c0025996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33415 + c0025b56: 786c ld a1,240(s0) + c0025b58: 0f840793 addi a5,s0,248 + c0025b5c: 00f58563 beq a1,a5,c0025b66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33423 js_free(ctx, fd->scopes); - c0025990: 856e mv a0,s11 - c0025992: ca8e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33417 + c0025b60: 856e mv a0,s11 + c0025b62: bc6e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33425 b->closure_var_count = fd->closure_var_count; - c0025996: 19842603 lw a2,408(s0) - c002599a: ccf0 sw a2,92(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33418 + c0025b66: 19842603 lw a2,408(s0) + c0025b6a: ccf0 sw a2,92(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33426 if (b->closure_var_count) { - c002599c: ca09 beqz a2,c00259ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33419 + c0025b6c: ca09 beqz a2,c0025b7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33427 b->closure_var = (void *)((uint8_t*)b + closure_var_offset); - c002599e: 01348533 add a0,s1,s3 - c00259a2: fc88 sd a0,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33420 + c0025b6e: 01348533 add a0,s1,s3 + c0025b72: fc88 sd a0,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33428 memcpy(b->closure_var, fd->closure_var, b->closure_var_count * sizeof(*b->closure_var)); - c00259a4: 1a043583 ld a1,416(s0) - c00259a8: 060e slli a2,a2,0x3 - c00259aa: 030310ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33422 + c0025b74: 1a043583 ld a1,416(s0) + c0025b78: 060e slli a2,a2,0x3 + c0025b7a: 030310ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33430 js_free(ctx, fd->closure_var); - c00259ae: 1a043583 ld a1,416(s0) - c00259b2: 856e mv a0,s11 - c00259b4: c86e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33425 + c0025b7e: 1a043583 ld a1,416(s0) + c0025b82: 856e mv a0,s11 + c0025b84: ba4e10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33433 b->has_prototype = fd->has_prototype; - c00259b8: 4474 lw a3,76(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33423 + c0025b88: 4474 lw a3,76(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33431 fd->closure_var = NULL; - c00259ba: 1a043023 sd zero,416(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33425 + c0025b8a: 1a043023 sd zero,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33433 b->has_prototype = fd->has_prototype; - c00259be: 0016f713 andi a4,a3,1 - c00259c2: 0194c683 lbu a3,25(s1) - c00259c6: 9af9 andi a3,a3,-2 - c00259c8: 8ed9 or a3,a3,a4 - c00259ca: 00d48ca3 sb a3,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33426 + c0025b8e: 0016f713 andi a4,a3,1 + c0025b92: 0194c683 lbu a3,25(s1) + c0025b96: 9af9 andi a3,a3,-2 + c0025b98: 8ed9 or a3,a3,a4 + c0025b9a: 00d48ca3 sb a3,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33434 b->has_simple_parameter_list = fd->has_simple_parameter_list; - c00259ce: 4838 lw a4,80(s0) - c00259d0: 8b05 andi a4,a4,1 - c00259d2: 0017179b slliw a5,a4,0x1 - c00259d6: ffd6f713 andi a4,a3,-3 - c00259da: 8f5d or a4,a4,a5 - c00259dc: 00e48ca3 sb a4,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33427 + c0025b9e: 4838 lw a4,80(s0) + c0025ba0: 8b05 andi a4,a4,1 + c0025ba2: 0017179b slliw a5,a4,0x1 + c0025ba6: ffd6f713 andi a4,a3,-3 + c0025baa: 8f5d or a4,a4,a5 + c0025bac: 00e48ca3 sb a4,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33435 b->js_mode = fd->js_mode; - c00259e0: 08644783 lbu a5,134(s0) - c00259e4: 00f48c23 sb a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33428 + c0025bb0: 08644783 lbu a5,134(s0) + c0025bb4: 00f48c23 sb a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33436 b->is_derived_class_constructor = fd->is_derived_class_constructor; - c00259e8: 5c3c lw a5,120(s0) - c00259ea: 8b85 andi a5,a5,1 - c00259ec: 0027969b slliw a3,a5,0x2 - c00259f0: ffb77793 andi a5,a4,-5 - c00259f4: 8fd5 or a5,a5,a3 - c00259f6: 00f48ca3 sb a5,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33429 + c0025bb8: 5c3c lw a5,120(s0) + c0025bba: 8b85 andi a5,a5,1 + c0025bbc: 0027969b slliw a3,a5,0x2 + c0025bc0: ffb77793 andi a5,a4,-5 + c0025bc4: 8fd5 or a5,a5,a3 + c0025bc6: 00f48ca3 sb a5,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33437 b->func_kind = fd->func_kind; - c00259fa: 08444703 lbu a4,132(s0) - c00259fe: fcf7f793 andi a5,a5,-49 - c0025a02: 8b0d andi a4,a4,3 - c0025a04: 0047171b slliw a4,a4,0x4 - c0025a08: 8fd9 or a5,a5,a4 - c0025a0a: 00f48ca3 sb a5,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33430 + c0025bca: 08444703 lbu a4,132(s0) + c0025bce: fcf7f793 andi a5,a5,-49 + c0025bd2: 8b0d andi a4,a4,3 + c0025bd4: 0047171b slliw a4,a4,0x4 + c0025bd8: 8fd9 or a5,a5,a4 + c0025bda: 00f48ca3 sb a5,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33438 b->need_home_object = (fd->home_object_var_idx >= 0 || - c0025a0e: 0d842783 lw a5,216(s0) - c0025a12: 4705 li a4,1 - c0025a14: 0007d663 bgez a5,c0025a20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33430 (discriminator 2) - c0025a18: 0dc42703 lw a4,220(s0) - c0025a1c: 00e03733 snez a4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33430 (discriminator 6) - c0025a20: 0037179b slliw a5,a4,0x3 - c0025a24: 0194c703 lbu a4,25(s1) - c0025a28: 9b5d andi a4,a4,-9 - c0025a2a: 8f5d or a4,a4,a5 - c0025a2c: 00e48ca3 sb a4,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33432 (discriminator 6) + c0025bde: 0d842783 lw a5,216(s0) + c0025be2: 4705 li a4,1 + c0025be4: 0007d663 bgez a5,c0025bf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33438 (discriminator 2) + c0025be8: 0dc42703 lw a4,220(s0) + c0025bec: 00e03733 snez a4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33438 (discriminator 6) + c0025bf0: 0037179b slliw a5,a4,0x3 + c0025bf4: 0194c703 lbu a4,25(s1) + c0025bf8: 9b5d andi a4,a4,-9 + c0025bfa: 8f5d or a4,a4,a5 + c0025bfc: 00e48ca3 sb a4,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33440 (discriminator 6) b->new_target_allowed = fd->new_target_allowed; - c0025a30: 543c lw a5,104(s0) - c0025a32: 8b85 andi a5,a5,1 - c0025a34: 0067969b slliw a3,a5,0x6 - c0025a38: fbf77793 andi a5,a4,-65 - c0025a3c: 8fd5 or a5,a5,a3 - c0025a3e: 00f48ca3 sb a5,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33433 (discriminator 6) + c0025c00: 543c lw a5,104(s0) + c0025c02: 8b85 andi a5,a5,1 + c0025c04: 0067969b slliw a3,a5,0x6 + c0025c08: fbf77793 andi a5,a4,-65 + c0025c0c: 8fd5 or a5,a5,a3 + c0025c0e: 00f48ca3 sb a5,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33441 (discriminator 6) b->super_call_allowed = fd->super_call_allowed; - c0025a42: 5478 lw a4,108(s0) - c0025a44: 07f7f793 andi a5,a5,127 - c0025a48: 0077171b slliw a4,a4,0x7 - c0025a4c: 8fd9 or a5,a5,a4 - c0025a4e: 00f48ca3 sb a5,25(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33434 (discriminator 6) + c0025c12: 5478 lw a4,108(s0) + c0025c14: 07f7f793 andi a5,a5,127 + c0025c18: 0077171b slliw a4,a4,0x7 + c0025c1c: 8fd9 or a5,a5,a4 + c0025c1e: 00f48ca3 sb a5,25(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33442 (discriminator 6) b->super_allowed = fd->super_allowed; - c0025a52: 5834 lw a3,112(s0) - c0025a54: 0016f713 andi a4,a3,1 - c0025a58: 01a4c683 lbu a3,26(s1) - c0025a5c: 9af9 andi a3,a3,-2 - c0025a5e: 8ed9 or a3,a3,a4 - c0025a60: 00d48d23 sb a3,26(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33435 (discriminator 6) + c0025c22: 5834 lw a3,112(s0) + c0025c24: 0016f713 andi a4,a3,1 + c0025c28: 01a4c683 lbu a3,26(s1) + c0025c2c: 9af9 andi a3,a3,-2 + c0025c2e: 8ed9 or a3,a3,a4 + c0025c30: 00d48d23 sb a3,26(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33443 (discriminator 6) b->arguments_allowed = fd->arguments_allowed; - c0025a64: 5878 lw a4,116(s0) - c0025a66: 8b05 andi a4,a4,1 - c0025a68: 0017179b slliw a5,a4,0x1 - c0025a6c: ffd6f713 andi a4,a3,-3 - c0025a70: 8f5d or a4,a4,a5 - c0025a72: 00e48d23 sb a4,26(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33436 (discriminator 6) + c0025c34: 5878 lw a4,116(s0) + c0025c36: 8b05 andi a4,a4,1 + c0025c38: 0017179b slliw a5,a4,0x1 + c0025c3c: ffd6f713 andi a4,a3,-3 + c0025c40: 8f5d or a4,a4,a5 + c0025c42: 00e48d23 sb a4,26(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33444 (discriminator 6) b->backtrace_barrier = fd->backtrace_barrier; - c0025a76: 08042783 lw a5,128(s0) - c0025a7a: 8b85 andi a5,a5,1 - c0025a7c: 0037969b slliw a3,a5,0x3 - c0025a80: ff777793 andi a5,a4,-9 - c0025a84: 8fd5 or a5,a5,a3 - c0025a86: 00f48d23 sb a5,26(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33437 (discriminator 6) + c0025c46: 08042783 lw a5,128(s0) + c0025c4a: 8b85 andi a5,a5,1 + c0025c4c: 0037969b slliw a3,a5,0x3 + c0025c50: ff777793 andi a5,a4,-9 + c0025c54: 8fd5 or a5,a5,a3 + c0025c56: 00f48d23 sb a5,26(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33445 (discriminator 6) b->is_direct_or_indirect_eval = (fd->eval_type == JS_EVAL_TYPE_DIRECT || - c0025a8a: 5c58 lw a4,60(s0) - c0025a8c: fdf7f793 andi a5,a5,-33 - c0025a90: 3779 addiw a4,a4,-2 - c0025a92: 00273713 sltiu a4,a4,2 - c0025a96: 0057171b slliw a4,a4,0x5 - c0025a9a: 8fd9 or a5,a5,a4 - c0025a9c: 00f48d23 sb a5,26(s1) + c0025c5a: 5c58 lw a4,60(s0) + c0025c5c: fdf7f793 andi a5,a5,-33 + c0025c60: 3779 addiw a4,a4,-2 + c0025c62: 00273713 sltiu a4,a4,2 + c0025c66: 0057171b slliw a4,a4,0x5 + c0025c6a: 8fd9 or a5,a5,a4 + c0025c6c: 00f48d23 sb a5,26(s1) JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 (discriminator 6) ctx->header.ref_count++; - c0025aa0: 000da783 lw a5,0(s11) - c0025aa4: 2785 addiw a5,a5,1 - c0025aa6: 00fda023 sw a5,0(s11) + c0025c70: 000da783 lw a5,0(s11) + c0025c74: 2785 addiw a5,a5,1 + c0025c76: 00fda023 sw a5,0(s11) js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33439 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33447 (discriminator 6) b->realm = JS_DupContext(ctx); - c0025aaa: 05b4b423 sd s11,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33441 (discriminator 6) + c0025c7a: 05b4b423 sd s11,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33449 (discriminator 6) add_gc_object(ctx->rt, &b->header, JS_GC_OBJ_TYPE_FUNCTION_BYTECODE); - c0025aae: 018db703 ld a4,24(s11) + c0025c7e: 018db703 ld a4,24(s11) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 (discriminator 6) h->gc_obj_type = type; - c0025ab2: 4785 li a5,1 - c0025ab4: 00f48223 sb a5,4(s1) + c0025c82: 4785 li a5,1 + c0025c84: 00f48223 sb a5,4(s1) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 (discriminator 6) __list_add(el, head->prev, head); - c0025ab8: 6754 ld a3,136(a4) + c0025c88: 6754 ld a3,136(a4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 (discriminator 6) list_add_tail(&h->link, &rt->gc_obj_list); - c0025aba: 00848793 addi a5,s1,8 + c0025c8a: 00848793 addi a5,s1,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 (discriminator 6) prev->next = el; - c0025abe: e69c sd a5,8(a3) + c0025c8e: e69c sd a5,8(a3) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 (discriminator 6) el->prev = prev; - c0025ac0: e494 sd a3,8(s1) + c0025c90: e494 sd a3,8(s1) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 (discriminator 6) - c0025ac2: 08870693 addi a3,a4,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 (discriminator 6) + c0025c92: 08870693 addi a3,a4,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 (discriminator 6) el->next = next; - c0025ac6: e894 sd a3,16(s1) + c0025c96: e894 sd a3,16(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 (discriminator 6) next->prev = el; - c0025ac8: e75c sd a5,136(a4) + c0025c98: e75c sd a5,136(a4) js_create_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33449 (discriminator 6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33457 (discriminator 6) if (fd->parent) { - c0025aca: 641c ld a5,8(s0) - c0025acc: c789 beqz a5,c0025ad6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33451 + c0025c9a: 641c ld a5,8(s0) + c0025c9c: c789 beqz a5,c0025ca6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33459 list_del(&fd->link); - c0025ace: 02840513 addi a0,s0,40 - c0025ad2: d88de0ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33454 + c0025c9e: 02840513 addi a0,s0,40 + c0025ca2: bb8de0ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33462 js_free(ctx, fd); - c0025ad6: 85a2 mv a1,s0 - c0025ad8: 856e mv a0,s11 - c0025ada: b60e10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33455 + c0025ca6: 85a2 mv a1,s0 + c0025ca8: 856e mv a0,s11 + c0025caa: a7ee10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33463 return JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b); - c0025ade: 57f9 li a5,-2 - c0025ae0: f8a6 sd s1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33459 + c0025cae: 57f9 li a5,-2 + c0025cb0: f8a6 sd s1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33467 } - c0025ae2: 60b2 ld ra,264(sp) - c0025ae4: 6412 ld s0,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33458 + c0025cb2: 60b2 ld ra,264(sp) + c0025cb4: 6412 ld s0,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33466 return JS_EXCEPTION; - c0025ae6: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33459 -} - c0025ae8: 7546 ld a0,112(sp) - c0025aea: 75e6 ld a1,120(sp) - c0025aec: 74ee ld s1,248(sp) - c0025aee: 794e ld s2,240(sp) - c0025af0: 79ae ld s3,232(sp) - c0025af2: 7a0e ld s4,224(sp) - c0025af4: 6aee ld s5,216(sp) - c0025af6: 6b4e ld s6,208(sp) - c0025af8: 6bae ld s7,200(sp) - c0025afa: 6c0e ld s8,192(sp) - c0025afc: 7cea ld s9,184(sp) - c0025afe: 7d4a ld s10,176(sp) - c0025b00: 7daa ld s11,168(sp) - c0025b02: 6151 addi sp,sp,272 - c0025b04: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33362 + c0025cb6: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33467 +} + c0025cb8: 7546 ld a0,112(sp) + c0025cba: 75e6 ld a1,120(sp) + c0025cbc: 74ee ld s1,248(sp) + c0025cbe: 794e ld s2,240(sp) + c0025cc0: 79ae ld s3,232(sp) + c0025cc2: 7a0e ld s4,224(sp) + c0025cc4: 6aee ld s5,216(sp) + c0025cc6: 6b4e ld s6,208(sp) + c0025cc8: 6bae ld s7,200(sp) + c0025cca: 6c0e ld s8,192(sp) + c0025ccc: 7cea ld s9,184(sp) + c0025cce: 7d4a ld s10,176(sp) + c0025cd0: 7daa ld s11,168(sp) + c0025cd2: 6151 addi sp,sp,272 + c0025cd4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33370 for(i = 0; i < fd->var_count; i++) { - c0025b06: 4b01 li s6,0 - c0025b08: bbdd j c00258fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33366 (discriminator 3) + c0025cd6: 4b01 li s6,0 + c0025cd8: bbdd j c0025ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33374 (discriminator 3) JS_FreeAtom(ctx, fd->args[i].var_name); - c0025b0a: 705c ld a5,160(s0) - c0025b0c: 004b1713 slli a4,s6,0x4 - c0025b10: 856e mv a0,s11 - c0025b12: 97ba add a5,a5,a4 - c0025b14: 438c lw a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 (discriminator 3) + c0025cda: 705c ld a5,160(s0) + c0025cdc: 004b1713 slli a4,s6,0x4 + c0025ce0: 856e mv a0,s11 + c0025ce2: 97ba add a5,a5,a4 + c0025ce4: 438c lw a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33373 (discriminator 3) for(i = 0; i < fd->arg_count; i++) { - c0025b16: 2b05 addiw s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33366 (discriminator 3) + c0025ce6: 2b05 addiw s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33374 (discriminator 3) JS_FreeAtom(ctx, fd->args[i].var_name); - c0025b18: 9f5e10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33365 (discriminator 3) + c0025ce8: 913e10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33373 (discriminator 3) for(i = 0; i < fd->arg_count; i++) { - c0025b1c: b3f5 j c0025908 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33369 (discriminator 3) + c0025cec: b3f5 j c0025ad8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33377 (discriminator 3) JS_FreeAtom(ctx, fd->closure_var[i].var_name); - c0025b1e: 1a043703 ld a4,416(s0) - c0025b22: 00391b13 slli s6,s2,0x3 - c0025b26: 856e mv a0,s11 - c0025b28: 975a add a4,a4,s6 - c0025b2a: 434c lw a1,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33368 (discriminator 3) + c0025cee: 1a043703 ld a4,416(s0) + c0025cf2: 00391b13 slli s6,s2,0x3 + c0025cf6: 856e mv a0,s11 + c0025cf8: 975a add a4,a4,s6 + c0025cfa: 434c lw a1,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33376 (discriminator 3) for(i = 0; i < fd->closure_var_count; i++) { - c0025b2c: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33369 (discriminator 3) + c0025cfc: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33377 (discriminator 3) JS_FreeAtom(ctx, fd->closure_var[i].var_name); - c0025b2e: 9dfe10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33370 (discriminator 3) + c0025cfe: 8fde10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33378 (discriminator 3) fd->closure_var[i].var_name = JS_ATOM_NULL; - c0025b32: 1a043783 ld a5,416(s0) - c0025b36: 97da add a5,a5,s6 - c0025b38: 0007a223 sw zero,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33368 (discriminator 3) + c0025d02: 1a043783 ld a5,416(s0) + c0025d06: 97da add a5,a5,s6 + c0025d08: 0007a223 sw zero,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33376 (discriminator 3) for(i = 0; i < fd->closure_var_count; i++) { - c0025b3c: bbd1 j c0025910 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33400 + c0025d0c: bbd1 j c0025ae0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33408 b->has_debug = 1; - c0025b3e: 01a4c783 lbu a5,26(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33407 + c0025d0e: 01a4c783 lbu a5,26(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33415 b->debug.pc2line_buf = js_realloc(ctx, fd->pc2line.buf, fd->pc2line.size); - c0025b42: 856e mv a0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33400 + c0025d12: 856e mv a0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33408 b->has_debug = 1; - c0025b44: 0047e793 ori a5,a5,4 - c0025b48: 00f48d23 sb a5,26(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33401 + c0025d14: 0047e793 ori a5,a5,4 + c0025d18: 00f48d23 sb a5,26(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33409 b->debug.filename = fd->filename; - c0025b4c: 1d042783 lw a5,464(s0) - c0025b50: d0bc sw a5,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33402 + c0025d1c: 1d042783 lw a5,464(s0) + c0025d20: d0bc sw a5,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33410 b->debug.line_num = fd->line_num; - c0025b52: 1d442783 lw a5,468(s0) - c0025b56: d0fc sw a5,100(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33407 + c0025d22: 1d442783 lw a5,468(s0) + c0025d26: d0fc sw a5,100(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33415 b->debug.pc2line_buf = js_realloc(ctx, fd->pc2line.buf, fd->pc2line.size); - c0025b58: 1e043603 ld a2,480(s0) - c0025b5c: 1d843583 ld a1,472(s0) - c0025b60: dcaf00ef jal ra,c001612a - c0025b64: f8a8 sd a0,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33408 + c0025d28: 1e043603 ld a2,480(s0) + c0025d2c: 1d843583 ld a1,472(s0) + c0025d30: dcaf00ef jal ra,c00162fa + c0025d34: f8a8 sd a0,112(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33416 if (!b->debug.pc2line_buf) - c0025b66: e501 bnez a0,c0025b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33409 + c0025d36: e501 bnez a0,c0025d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33417 b->debug.pc2line_buf = fd->pc2line.buf; - c0025b68: 1d843783 ld a5,472(s0) - c0025b6c: f8bc sd a5,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33410 + c0025d38: 1d843783 ld a5,472(s0) + c0025d3c: f8bc sd a5,112(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33418 b->debug.pc2line_len = fd->pc2line.size; - c0025b6e: 1e043783 ld a5,480(s0) - c0025b72: d4fc sw a5,108(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33411 + c0025d3e: 1e043783 ld a5,480(s0) + c0025d42: d4fc sw a5,108(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33419 b->debug.source = fd->source; - c0025b74: 20843783 ld a5,520(s0) - c0025b78: fcbc sd a5,120(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33412 + c0025d44: 20843783 ld a5,520(s0) + c0025d48: fcbc sd a5,120(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33420 b->debug.source_len = fd->source_len; - c0025b7a: 21042783 lw a5,528(s0) - c0025b7e: d4bc sw a5,104(s1) - c0025b80: b519 j c0025986 + c0025d4a: 21042783 lw a5,528(s0) + c0025d4e: d4bc sw a5,104(s1) + c0025d50: b519 j c0025b56 -00000000c0025b82 : +00000000c0025d52 : js_string_pad(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42348 -{ - c0025b82: 7155 addi sp,sp,-208 - c0025b84: e1a2 sd s0,192(sp) - c0025b86: f152 sd s4,160(sp) - c0025b88: ed56 sd s5,152(sp) - c0025b8a: e95a sd s6,144(sp) - c0025b8c: fce6 sd s9,120(sp) - c0025b8e: 8b3e mv s6,a5 - c0025b90: e586 sd ra,200(sp) - c0025b92: fd26 sd s1,184(sp) - c0025b94: f94a sd s2,176(sp) - c0025b96: f54e sd s3,168(sp) - c0025b98: e55e sd s7,136(sp) - c0025b9a: e162 sd s8,128(sp) - c0025b9c: f8ea sd s10,112(sp) - c0025b9e: 842a mv s0,a0 - c0025ba0: e02e sd a1,0(sp) - c0025ba2: e432 sd a2,8(sp) - c0025ba4: 8ab6 mv s5,a3 - c0025ba6: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42356 +{ + c0025d52: 7155 addi sp,sp,-208 + c0025d54: e1a2 sd s0,192(sp) + c0025d56: f152 sd s4,160(sp) + c0025d58: ed56 sd s5,152(sp) + c0025d5a: e95a sd s6,144(sp) + c0025d5c: fce6 sd s9,120(sp) + c0025d5e: 8b3e mv s6,a5 + c0025d60: e586 sd ra,200(sp) + c0025d62: fd26 sd s1,184(sp) + c0025d64: f94a sd s2,176(sp) + c0025d66: f54e sd s3,168(sp) + c0025d68: e55e sd s7,136(sp) + c0025d6a: e162 sd s8,128(sp) + c0025d6c: f8ea sd s10,112(sp) + c0025d6e: 842a mv s0,a0 + c0025d70: e02e sd a1,0(sp) + c0025d72: e432 sd a2,8(sp) + c0025d74: 8ab6 mv s5,a3 + c0025d76: 8a3a mv s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42362 str = JS_ToStringCheckObject(ctx, this_val); - c0025ba8: b04f50ef jal ra,c001aeac - c0025bac: f02a sd a0,32(sp) - c0025bae: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42355 + c0025d78: b04f50ef jal ra,c001b07c + c0025d7c: f02a sd a0,32(sp) + c0025d7e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42363 if (JS_IsException(str)) - c0025bb0: 0005879b sext.w a5,a1 - c0025bb4: 4c99 li s9,6 - c0025bb6: 0d978563 beq a5,s9,c0025c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42357 + c0025d80: 0005879b sext.w a5,a1 + c0025d84: 4c99 li s9,6 + c0025d86: 0d978563 beq a5,s9,c0025e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42365 if (JS_ToInt32Sat(ctx, &n, argv[0])) - c0025bba: 000a3603 ld a2,0(s4) - c0025bbe: 008a3683 ld a3,8(s4) - c0025bc2: 84aa mv s1,a0 - c0025bc4: 89ae mv s3,a1 - c0025bc6: 8522 mv a0,s0 - c0025bc8: 086c addi a1,sp,28 - c0025bca: 9bdf70ef jal ra,c001d586 - c0025bce: e545 bnez a0,c0025c76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42360 + c0025d8a: 000a3603 ld a2,0(s4) + c0025d8e: 008a3683 ld a3,8(s4) + c0025d92: 84aa mv s1,a0 + c0025d94: 89ae mv s3,a1 + c0025d96: 8522 mv a0,s0 + c0025d98: 086c addi a1,sp,28 + c0025d9a: 9bdf70ef jal ra,c001d756 + c0025d9e: e545 bnez a0,c0025e46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42368 len = p->len; - c0025bd0: 0044ac03 lw s8,4(s1) - c0025bd4: 80000937 lui s2,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42361 + c0025da0: 0044ac03 lw s8,4(s1) + c0025da4: 80000937 lui s2,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42369 if (len >= n) - c0025bd8: 47f2 lw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42360 + c0025da8: 47f2 lw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42368 len = p->len; - c0025bda: fff94913 not s2,s2 - c0025bde: 01897bb3 and s7,s2,s8 - c0025be2: 8c5e mv s8,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42361 + c0025daa: fff94913 not s2,s2 + c0025dae: 01897bb3 and s7,s2,s8 + c0025db2: 8c5e mv s8,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42369 if (len >= n) - c0025be4: 02fbc463 blt s7,a5,c0025c0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42370 + c0025db4: 02fbc463 blt s7,a5,c0025ddc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42378 return str; - c0025be8: e0a6 sd s1,64(sp) - c0025bea: e4ce sd s3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42415 -} - c0025bec: 60ae ld ra,200(sp) - c0025bee: 640e ld s0,192(sp) - c0025bf0: 6506 ld a0,64(sp) - c0025bf2: 65a6 ld a1,72(sp) - c0025bf4: 74ea ld s1,184(sp) - c0025bf6: 794a ld s2,176(sp) - c0025bf8: 79aa ld s3,168(sp) - c0025bfa: 7a0a ld s4,160(sp) - c0025bfc: 6aea ld s5,152(sp) - c0025bfe: 6b4a ld s6,144(sp) - c0025c00: 6baa ld s7,136(sp) - c0025c02: 6c0a ld s8,128(sp) - c0025c04: 7ce6 ld s9,120(sp) - c0025c06: 7d46 ld s10,112(sp) - c0025c08: 6169 addi sp,sp,208 - c0025c0a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42363 + c0025db8: e0a6 sd s1,64(sp) + c0025dba: e4ce sd s3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42423 +} + c0025dbc: 60ae ld ra,200(sp) + c0025dbe: 640e ld s0,192(sp) + c0025dc0: 6506 ld a0,64(sp) + c0025dc2: 65a6 ld a1,72(sp) + c0025dc4: 74ea ld s1,184(sp) + c0025dc6: 794a ld s2,176(sp) + c0025dc8: 79aa ld s3,168(sp) + c0025dca: 7a0a ld s4,160(sp) + c0025dcc: 6aea ld s5,152(sp) + c0025dce: 6b4a ld s6,144(sp) + c0025dd0: 6baa ld s7,136(sp) + c0025dd2: 6c0a ld s8,128(sp) + c0025dd4: 7ce6 ld s9,120(sp) + c0025dd6: 7d46 ld s10,112(sp) + c0025dd8: 6169 addi sp,sp,208 + c0025dda: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42371 if (argc > 1 && !JS_IsUndefined(argv[1])) { - c0025c0c: 4d05 li s10,1 - c0025c0e: 095d5063 bge s10,s5,c0025c8e + c0025ddc: 4d05 li s10,1 + c0025dde: 095d5063 bge s10,s5,c0025e5e JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0025c12: 018a3603 ld a2,24(s4) + c0025de2: 018a3603 ld a2,24(s4) js_string_pad(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42363 (discriminator 1) - c0025c16: 478d li a5,3 - c0025c18: 0006071b sext.w a4,a2 - c0025c1c: 06f70963 beq a4,a5,c0025c8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42371 (discriminator 1) + c0025de6: 478d li a5,3 + c0025de8: 0006071b sext.w a4,a2 + c0025dec: 06f70963 beq a4,a5,c0025e5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42372 v = JS_ToString(ctx, argv[1]); - c0025c20: 010a3583 ld a1,16(s4) - c0025c24: 8522 mv a0,s0 - c0025c26: bb1f40ef jal ra,c001a7d6 - c0025c2a: f82a sd a0,48(sp) - c0025c2c: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42365 + c0025df0: 010a3583 ld a1,16(s4) + c0025df4: 8522 mv a0,s0 + c0025df6: bb1f40ef jal ra,c001a9a6 + c0025dfa: f82a sd a0,48(sp) + c0025dfc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42373 if (JS_IsException(v)) - c0025c2e: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42364 + c0025dfe: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42372 v = JS_ToString(ctx, argv[1]); - c0025c32: 862e mv a2,a1 - c0025c34: 8a2a mv s4,a0 - c0025c36: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42365 + c0025e02: 862e mv a2,a1 + c0025e04: 8a2a mv s4,a0 + c0025e06: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42373 if (JS_IsException(v)) - c0025c38: 03978f63 beq a5,s9,c0025c76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42368 + c0025e08: 03978f63 beq a5,s9,c0025e46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42376 if (p1->len == 0) { - c0025c3c: 415c lw a5,4(a0) - c0025c3e: 0127f933 and s2,a5,s2 - c0025c42: 00091763 bnez s2,c0025c50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42369 + c0025e0c: 415c lw a5,4(a0) + c0025e0e: 0127f933 and s2,a5,s2 + c0025e12: 00091763 bnez s2,c0025e20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42377 JS_FreeValue(ctx, v); - c0025c46: 85aa mv a1,a0 - c0025c48: 8522 mv a0,s0 - c0025c4a: eefe10ef jal ra,c0007b38 - c0025c4e: bf69 j c0025be8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42372 + c0025e16: 85aa mv a1,a0 + c0025e18: 8522 mv a0,s0 + c0025e1a: e0de10ef jal ra,c0007c26 + c0025e1e: bf69 j c0025db8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42380 if (p1->len == 1) { - c0025c50: 05a91463 bne s2,s10,c0025c98 + c0025e20: 05a91463 bne s2,s10,c0025e68 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c0025c54: 0207da63 bgez a5,c0025c88 - c0025c58: 01055c83 lhu s9,16(a0) + c0025e24: 0207da63 bgez a5,c0025e58 + c0025e28: 01055c83 lhu s9,16(a0) js_string_pad(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42359 JSString *p, *p1 = NULL; - c0025c5c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42377 + c0025e2c: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42385 if (n > JS_STRING_LEN_MAX) { - c0025c5e: 4672 lw a2,28(sp) - c0025c60: 400007b7 lui a5,0x40000 - c0025c64: 02f64e63 blt a2,a5,c0025ca0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42378 + c0025e2e: 4672 lw a2,28(sp) + c0025e30: 400007b7 lui a5,0x40000 + c0025e34: 02f64e63 blt a2,a5,c0025e70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42386 JS_ThrowInternalError(ctx, "string too long"); - c0025c68: 00038597 auipc a1,0x38 - c0025c6c: 55858593 addi a1,a1,1368 # c005e1c0 - c0025c70: 8522 mv a0,s0 - c0025c72: d13ee0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42412 + c0025e38: 00038597 auipc a1,0x38 + c0025e3c: 5e858593 addi a1,a1,1512 # c005e420 + c0025e40: 8522 mv a0,s0 + c0025e42: c31ee0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42420 JS_FreeValue(ctx, str); - c0025c76: 85a6 mv a1,s1 - c0025c78: 864e mv a2,s3 - c0025c7a: 8522 mv a0,s0 - c0025c7c: ebde10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42414 + c0025e46: 85a6 mv a1,s1 + c0025e48: 864e mv a2,s3 + c0025e4a: 8522 mv a0,s0 + c0025e4c: ddbe10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42422 return JS_EXCEPTION; - c0025c80: 4799 li a5,6 - c0025c82: e082 sd zero,64(sp) - c0025c84: e4be sd a5,72(sp) - c0025c86: b79d j c0025bec + c0025e50: 4799 li a5,6 + c0025e52: e082 sd zero,64(sp) + c0025e54: e4be sd a5,72(sp) + c0025e56: b79d j c0025dbc string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c0025c88: 01054c83 lbu s9,16(a0) - c0025c8c: bfc1 j c0025c5c + c0025e58: 01054c83 lbu s9,16(a0) + c0025e5c: bfc1 j c0025e2c js_string_pad(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42349 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42357 JSValue str, v = JS_UNDEFINED; - c0025c8e: 4a8d li s5,3 - c0025c90: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42352 + c0025e5e: 4a8d li s5,3 + c0025e60: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42360 int n, len, c = ' '; - c0025c92: 02000c93 li s9,32 - c0025c96: b7d9 j c0025c5c - c0025c98: 892a mv s2,a0 - c0025c9a: 02000c93 li s9,32 - c0025c9e: b7c1 j c0025c5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42381 + c0025e62: 02000c93 li s9,32 + c0025e66: b7d9 j c0025e2c + c0025e68: 892a mv s2,a0 + c0025e6a: 02000c93 li s9,32 + c0025e6e: b7c1 j c0025e2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42389 if (string_buffer_init(ctx, b, n)) - c0025ca0: 088c addi a1,sp,80 - c0025ca2: 8522 mv a0,s0 - c0025ca4: f2bf20ef jal ra,c0018bce - c0025ca8: ed21 bnez a0,c0025d00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42383 + c0025e70: 088c addi a1,sp,80 + c0025e72: 8522 mv a0,s0 + c0025e74: f2bf20ef jal ra,c0018d9e + c0025e78: ed21 bnez a0,c0025ed0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42391 n -= len; - c0025caa: 47f2 lw a5,28(sp) - c0025cac: 41878c3b subw s8,a5,s8 - c0025cb0: ce62 sw s8,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42384 + c0025e7a: 47f2 lw a5,28(sp) + c0025e7c: 41878c3b subw s8,a5,s8 + c0025e80: ce62 sw s8,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42392 if (padEnd) { - c0025cb2: 020b1d63 bnez s6,c0025cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42388 + c0025e82: 020b1d63 bnez s6,c0025ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42396 if (p1) { - c0025cb6: 08090163 beqz s2,c0025d38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42390 + c0025e86: 08090163 beqz s2,c0025f08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42398 int chunk = min_int(n, p1->len); - c0025cba: 80000c37 lui s8,0x80000 - c0025cbe: fffc4c13 not s8,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42389 + c0025e8a: 80000c37 lui s8,0x80000 + c0025e8e: fffc4c13 not s8,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42397 while (n > 0) { - c0025cc2: 47f2 lw a5,28(sp) - c0025cc4: 04f04463 bgtz a5,c0025d0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42399 + c0025e92: 47f2 lw a5,28(sp) + c0025e94: 04f04463 bgtz a5,c0025edc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42407 if (!padEnd) { - c0025cc8: 060b0f63 beqz s6,c0025d46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42403 + c0025e98: 060b0f63 beqz s6,c0025f16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42411 JS_FreeValue(ctx, v); - c0025ccc: 85d2 mv a1,s4 - c0025cce: 8656 mv a2,s5 - c0025cd0: 8522 mv a0,s0 - c0025cd2: e67e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42404 + c0025e9c: 85d2 mv a1,s4 + c0025e9e: 8656 mv a2,s5 + c0025ea0: 8522 mv a0,s0 + c0025ea2: d85e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42412 JS_FreeValue(ctx, str); - c0025cd6: 7582 ld a1,32(sp) - c0025cd8: 7622 ld a2,40(sp) - c0025cda: 8522 mv a0,s0 - c0025cdc: e5de10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42405 + c0025ea6: 7582 ld a1,32(sp) + c0025ea8: 7622 ld a2,40(sp) + c0025eaa: 8522 mv a0,s0 + c0025eac: d7be10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42413 return string_buffer_end(b); - c0025ce0: 0888 addi a0,sp,80 - c0025ce2: 828f40ef jal ra,c0019d0a - c0025ce6: e0aa sd a0,64(sp) - c0025ce8: e4ae sd a1,72(sp) - c0025cea: b709 j c0025bec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42385 + c0025eb0: 0888 addi a0,sp,80 + c0025eb2: 828f40ef jal ra,c0019eda + c0025eb6: e0aa sd a0,64(sp) + c0025eb8: e4ae sd a1,72(sp) + c0025eba: b709 j c0025dbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42393 if (string_buffer_concat(b, p, 0, len)) - c0025cec: 86de mv a3,s7 - c0025cee: 4601 li a2,0 - c0025cf0: 85a6 mv a1,s1 - c0025cf2: 0888 addi a0,sp,80 - c0025cf4: a74f30ef jal ra,c0018f68 - c0025cf8: dd5d beqz a0,c0025cb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42408 + c0025ebc: 86de mv a3,s7 + c0025ebe: 4601 li a2,0 + c0025ec0: 85a6 mv a1,s1 + c0025ec2: 0888 addi a0,sp,80 + c0025ec4: a74f30ef jal ra,c0019138 + c0025ec8: dd5d beqz a0,c0025e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42416 string_buffer_free(b); - c0025cfa: 0888 addi a0,sp,80 - c0025cfc: 96ae10ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42410 + c0025eca: 0888 addi a0,sp,80 + c0025ecc: 888e10ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42418 JS_FreeValue(ctx, v); - c0025d00: 85d2 mv a1,s4 - c0025d02: 8656 mv a2,s5 - c0025d04: 8522 mv a0,s0 - c0025d06: e33e10ef jal ra,c0007b38 - c0025d0a: b7b5 j c0025c76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42390 + c0025ed0: 85d2 mv a1,s4 + c0025ed2: 8656 mv a2,s5 + c0025ed4: 8522 mv a0,s0 + c0025ed6: d51e10ef jal ra,c0007c26 + c0025eda: b7b5 j c0025e46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42398 int chunk = min_int(n, p1->len); - c0025d0c: 00492703 lw a4,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c0025d10: 01877733 and a4,a4,s8 - c0025d14: 8cba mv s9,a4 - c0025d16: 2701 sext.w a4,a4 - c0025d18: 00e7d363 bge a5,a4,c0025d1e - c0025d1c: 8cbe mv s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42391 + c0025edc: 00492703 lw a4,4(s2) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c0025ee0: 01877733 and a4,a4,s8 + c0025ee4: 8cba mv s9,a4 + c0025ee6: 2701 sext.w a4,a4 + c0025ee8: 00e7d363 bge a5,a4,c0025eee + c0025eec: 8cbe mv s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42399 if (string_buffer_concat(b, p1, 0, chunk)) - c0025d1e: 000c869b sext.w a3,s9 - c0025d22: 4601 li a2,0 - c0025d24: 85ca mv a1,s2 - c0025d26: 0888 addi a0,sp,80 - c0025d28: a40f30ef jal ra,c0018f68 - c0025d2c: f579 bnez a0,c0025cfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42393 + c0025eee: 000c869b sext.w a3,s9 + c0025ef2: 4601 li a2,0 + c0025ef4: 85ca mv a1,s2 + c0025ef6: 0888 addi a0,sp,80 + c0025ef8: a40f30ef jal ra,c0019138 + c0025efc: f579 bnez a0,c0025eca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42401 n -= chunk; - c0025d2e: 47f2 lw a5,28(sp) - c0025d30: 419787bb subw a5,a5,s9 - c0025d34: ce3e sw a5,28(sp) - c0025d36: b771 j c0025cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42396 + c0025efe: 47f2 lw a5,28(sp) + c0025f00: 419787bb subw a5,a5,s9 + c0025f04: ce3e sw a5,28(sp) + c0025f06: b771 j c0025e92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42404 if (string_buffer_fill(b, c, n)) - c0025d38: 4672 lw a2,28(sp) - c0025d3a: 85e6 mv a1,s9 - c0025d3c: 0888 addi a0,sp,80 - c0025d3e: d08f30ef jal ra,c0019246 - c0025d42: d159 beqz a0,c0025cc8 - c0025d44: bf5d j c0025cfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42400 + c0025f08: 4672 lw a2,28(sp) + c0025f0a: 85e6 mv a1,s9 + c0025f0c: 0888 addi a0,sp,80 + c0025f0e: d08f30ef jal ra,c0019416 + c0025f12: d159 beqz a0,c0025e98 + c0025f14: bf5d j c0025eca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42408 if (string_buffer_concat(b, p, 0, len)) - c0025d46: 86de mv a3,s7 - c0025d48: 4601 li a2,0 - c0025d4a: 85a6 mv a1,s1 - c0025d4c: 0888 addi a0,sp,80 - c0025d4e: a1af30ef jal ra,c0018f68 - c0025d52: dd2d beqz a0,c0025ccc - c0025d54: b75d j c0025cfa - -00000000c0025d56 : + c0025f16: 86de mv a3,s7 + c0025f18: 4601 li a2,0 + c0025f1a: 85a6 mv a1,s1 + c0025f1c: 0888 addi a0,sp,80 + c0025f1e: a1af30ef jal ra,c0019138 + c0025f22: dd2d beqz a0,c0025e9c + c0025f24: b75d j c0025eca + +00000000c0025f26 : js_string_repeat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42419 -{ - c0025d56: 7135 addi sp,sp,-160 - c0025d58: e922 sd s0,144(sp) - c0025d5a: e14a sd s2,128(sp) - c0025d5c: 843a mv s0,a4 - c0025d5e: ed06 sd ra,152(sp) - c0025d60: e526 sd s1,136(sp) - c0025d62: fcce sd s3,120(sp) - c0025d64: f8d2 sd s4,112(sp) - c0025d66: f4d6 sd s5,104(sp) - c0025d68: 892a mv s2,a0 - c0025d6a: e02e sd a1,0(sp) - c0025d6c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42426 - str = JS_ToStringCheckObject(ctx, this_val); - c0025d6e: 93ef50ef jal ra,c001aeac - c0025d72: f02a sd a0,32(sp) - c0025d74: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42427 +{ + c0025f26: 7135 addi sp,sp,-160 + c0025f28: e922 sd s0,144(sp) + c0025f2a: e14a sd s2,128(sp) + c0025f2c: 843a mv s0,a4 + c0025f2e: ed06 sd ra,152(sp) + c0025f30: e526 sd s1,136(sp) + c0025f32: fcce sd s3,120(sp) + c0025f34: f8d2 sd s4,112(sp) + c0025f36: f4d6 sd s5,104(sp) + c0025f38: 892a mv s2,a0 + c0025f3a: e02e sd a1,0(sp) + c0025f3c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42434 + str = JS_ToStringCheckObject(ctx, this_val); + c0025f3e: 93ef50ef jal ra,c001b07c + c0025f42: f02a sd a0,32(sp) + c0025f44: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42435 if (JS_IsException(str)) - c0025d76: 0005871b sext.w a4,a1 - c0025d7a: 4799 li a5,6 - c0025d7c: 02f70963 beq a4,a5,c0025dae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42429 + c0025f46: 0005871b sext.w a4,a1 + c0025f4a: 4799 li a5,6 + c0025f4c: 02f70963 beq a4,a5,c0025f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42437 if (JS_ToInt64Sat(ctx, &val, argv[0])) - c0025d80: 6010 ld a2,0(s0) - c0025d82: 6414 ld a3,8(s0) - c0025d84: 84aa mv s1,a0 - c0025d86: 89ae mv s3,a1 - c0025d88: 854a mv a0,s2 - c0025d8a: 082c addi a1,sp,24 - c0025d8c: cd2f80ef jal ra,c001e25e - c0025d90: ed19 bnez a0,c0025dae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42431 + c0025f50: 6010 ld a2,0(s0) + c0025f52: 6414 ld a3,8(s0) + c0025f54: 84aa mv s1,a0 + c0025f56: 89ae mv s3,a1 + c0025f58: 854a mv a0,s2 + c0025f5a: 082c addi a1,sp,24 + c0025f5c: cd2f80ef jal ra,c001e42e + c0025f60: ed19 bnez a0,c0025f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42439 if (val < 0 || val > 2147483647) { - c0025d92: 6662 ld a2,24(sp) - c0025d94: 80000437 lui s0,0x80000 - c0025d98: fff44413 not s0,s0 - c0025d9c: 02c47263 bgeu s0,a2,c0025dc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42432 + c0025f62: 6662 ld a2,24(sp) + c0025f64: 80000437 lui s0,0x80000 + c0025f68: fff44413 not s0,s0 + c0025f6c: 02c47263 bgeu s0,a2,c0025f90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42440 JS_ThrowRangeError(ctx, "invalid repeat count"); - c0025da0: 00039597 auipc a1,0x39 - c0025da4: fa058593 addi a1,a1,-96 # c005ed40 - c0025da8: 854a mv a0,s2 - c0025daa: bb1ee0ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42457 + c0025f70: 00039597 auipc a1,0x39 + c0025f74: 03058593 addi a1,a1,48 # c005efa0 + c0025f78: 854a mv a0,s2 + c0025f7a: acfee0ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42465 JS_FreeValue(ctx, str); - c0025dae: 7582 ld a1,32(sp) - c0025db0: 7622 ld a2,40(sp) - c0025db2: 854a mv a0,s2 - c0025db4: d85e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42458 + c0025f7e: 7582 ld a1,32(sp) + c0025f80: 7622 ld a2,40(sp) + c0025f82: 854a mv a0,s2 + c0025f84: ca3e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42466 return JS_EXCEPTION; - c0025db8: 4799 li a5,6 - c0025dba: f802 sd zero,48(sp) - c0025dbc: fc3e sd a5,56(sp) - c0025dbe: a821 j c0025dd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42437 + c0025f88: 4799 li a5,6 + c0025f8a: f802 sd zero,48(sp) + c0025f8c: fc3e sd a5,56(sp) + c0025f8e: a821 j c0025fa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42445 len = p->len; - c0025dc0: 40d4 lw a3,4(s1) - c0025dc2: 8c75 and s0,s0,a3 - c0025dc4: 00040a1b sext.w s4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42438 + c0025f90: 40d4 lw a3,4(s1) + c0025f92: 8c75 and s0,s0,a3 + c0025f94: 00040a1b sext.w s4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42446 if (len == 0 || n == 1) - c0025dc8: 000a0563 beqz s4,c0025dd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42438 (discriminator 1) - c0025dcc: 4a85 li s5,1 - c0025dce: 01561f63 bne a2,s5,c0025dec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42439 + c0025f98: 000a0563 beqz s4,c0025fa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42446 (discriminator 1) + c0025f9c: 4a85 li s5,1 + c0025f9e: 01561f63 bne a2,s5,c0025fbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42447 return str; - c0025dd2: f826 sd s1,48(sp) - c0025dd4: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42459 -} - c0025dd6: 60ea ld ra,152(sp) - c0025dd8: 644a ld s0,144(sp) - c0025dda: 7542 ld a0,48(sp) - c0025ddc: 75e2 ld a1,56(sp) - c0025dde: 64aa ld s1,136(sp) - c0025de0: 690a ld s2,128(sp) - c0025de2: 79e6 ld s3,120(sp) - c0025de4: 7a46 ld s4,112(sp) - c0025de6: 7aa6 ld s5,104(sp) - c0025de8: 610d addi sp,sp,160 - c0025dea: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42440 + c0025fa2: f826 sd s1,48(sp) + c0025fa4: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42467 +} + c0025fa6: 60ea ld ra,152(sp) + c0025fa8: 644a ld s0,144(sp) + c0025faa: 7542 ld a0,48(sp) + c0025fac: 75e2 ld a1,56(sp) + c0025fae: 64aa ld s1,136(sp) + c0025fb0: 690a ld s2,128(sp) + c0025fb2: 79e6 ld s3,120(sp) + c0025fb4: 7a46 ld s4,112(sp) + c0025fb6: 7aa6 ld s5,104(sp) + c0025fb8: 610d addi sp,sp,160 + c0025fba: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42448 if (val * len > JS_STRING_LEN_MAX) { - c0025dec: 020a1793 slli a5,s4,0x20 - c0025df0: 9381 srli a5,a5,0x20 - c0025df2: 02c787b3 mul a5,a5,a2 - c0025df6: 40000737 lui a4,0x40000 - c0025dfa: 00e7ca63 blt a5,a4,c0025e0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42441 + c0025fbc: 020a1793 slli a5,s4,0x20 + c0025fc0: 9381 srli a5,a5,0x20 + c0025fc2: 02c787b3 mul a5,a5,a2 + c0025fc6: 40000737 lui a4,0x40000 + c0025fca: 00e7ca63 blt a5,a4,c0025fde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42449 JS_ThrowInternalError(ctx, "string too long"); - c0025dfe: 854a mv a0,s2 - c0025e00: 00038597 auipc a1,0x38 - c0025e04: 3c058593 addi a1,a1,960 # c005e1c0 - c0025e08: b7dee0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42442 + c0025fce: 854a mv a0,s2 + c0025fd0: 00038597 auipc a1,0x38 + c0025fd4: 45058593 addi a1,a1,1104 # c005e420 + c0025fd8: a9bee0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42450 goto fail; - c0025e0c: b74d j c0025dae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42435 + c0025fdc: b74d j c0025f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42443 n = val; - c0025e0e: 0006099b sext.w s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42444 + c0025fde: 0006099b sext.w s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42452 if (string_buffer_init2(ctx, b, n * len, p->is_wide_char)) - c0025e12: 0346063b mulw a2,a2,s4 - c0025e16: 01f6d69b srliw a3,a3,0x1f - c0025e1a: 008c addi a1,sp,64 - c0025e1c: 854a mv a0,s2 - c0025e1e: d79f20ef jal ra,c0018b96 - c0025e22: f551 bnez a0,c0025dae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42446 + c0025fe2: 0346063b mulw a2,a2,s4 + c0025fe6: 01f6d69b srliw a3,a3,0x1f + c0025fea: 008c addi a1,sp,64 + c0025fec: 854a mv a0,s2 + c0025fee: d79f20ef jal ra,c0018d66 + c0025ff2: f551 bnez a0,c0025f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42454 if (len == 1) { - c0025e24: 055a1063 bne s4,s5,c0025e64 + c0025ff4: 055a1063 bne s4,s5,c0026034 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c0025e28: 40dc lw a5,4(s1) - c0025e2a: 0207d363 bgez a5,c0025e50 - c0025e2e: 0104d583 lhu a1,16(s1) + c0025ff8: 40dc lw a5,4(s1) + c0025ffa: 0207d363 bgez a5,c0026020 + c0025ffe: 0104d583 lhu a1,16(s1) js_string_repeat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42447 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42455 string_buffer_fill(b, string_get(p, 0), n); - c0025e32: 864e mv a2,s3 - c0025e34: 0088 addi a0,sp,64 - c0025e36: c10f30ef jal ra,c0019246 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42453 + c0026002: 864e mv a2,s3 + c0026004: 0088 addi a0,sp,64 + c0026006: c10f30ef jal ra,c0019416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42461 JS_FreeValue(ctx, str); - c0025e3a: 7582 ld a1,32(sp) - c0025e3c: 7622 ld a2,40(sp) - c0025e3e: 854a mv a0,s2 - c0025e40: cf9e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42454 + c002600a: 7582 ld a1,32(sp) + c002600c: 7622 ld a2,40(sp) + c002600e: 854a mv a0,s2 + c0026010: c17e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42462 return string_buffer_end(b); - c0025e44: 0088 addi a0,sp,64 - c0025e46: ec5f30ef jal ra,c0019d0a - c0025e4a: f82a sd a0,48(sp) - c0025e4c: fc2e sd a1,56(sp) - c0025e4e: b761 j c0025dd6 + c0026014: 0088 addi a0,sp,64 + c0026016: ec5f30ef jal ra,c0019eda + c002601a: f82a sd a0,48(sp) + c002601c: fc2e sd a1,56(sp) + c002601e: b761 j c0025fa6 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c0025e50: 0104c583 lbu a1,16(s1) - c0025e54: bff9 j c0025e32 + c0026020: 0104c583 lbu a1,16(s1) + c0026024: bff9 j c0026002 js_string_repeat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42458 string_buffer_concat(b, p, 0, len); - c0025e56: 86d2 mv a3,s4 - c0025e58: 4601 li a2,0 - c0025e5a: 85a6 mv a1,s1 - c0025e5c: 0088 addi a0,sp,64 - c0025e5e: 90af30ef jal ra,c0018f68 - c0025e62: 39fd addiw s3,s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42449 + c0026026: 86d2 mv a3,s4 + c0026028: 4601 li a2,0 + c002602a: 85a6 mv a1,s1 + c002602c: 0088 addi a0,sp,64 + c002602e: 90af30ef jal ra,c0019138 + c0026032: 39fd addiw s3,s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42457 while (n-- > 0) { - c0025e64: fe0999e3 bnez s3,c0025e56 - c0025e68: bfc9 j c0025e3a + c0026034: fe0999e3 bnez s3,c0026026 + c0026038: bfc9 j c002600a -00000000c0025e6a : +00000000c002603a : js_throw_URIError(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49120 { - c0025e6a: 715d addi sp,sp,-80 - c0025e6c: f032 sd a2,32(sp) - c0025e6e: f436 sd a3,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49116 + c002603a: 715d addi sp,sp,-80 + c002603c: f032 sd a2,32(sp) + c002603e: f436 sd a3,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 JS_ThrowError(ctx, JS_URI_ERROR, fmt, ap); - c0025e70: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49115 + c0026040: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49123 va_start(ap, fmt); - c0025e72: 1014 addi a3,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49116 + c0026042: 1014 addi a3,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 JS_ThrowError(ctx, JS_URI_ERROR, fmt, ap); - c0025e74: 4595 li a1,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49112 -{ - c0025e76: ec06 sd ra,24(sp) - c0025e78: f83a sd a4,48(sp) - c0025e7a: fc3e sd a5,56(sp) - c0025e7c: e0c2 sd a6,64(sp) - c0025e7e: e4c6 sd a7,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49115 + c0026044: 4595 li a1,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49120 +{ + c0026046: ec06 sd ra,24(sp) + c0026048: f83a sd a4,48(sp) + c002604a: fc3e sd a5,56(sp) + c002604c: e0c2 sd a6,64(sp) + c002604e: e4c6 sd a7,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49123 va_start(ap, fmt); - c0025e80: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49116 + c0026050: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 JS_ThrowError(ctx, JS_URI_ERROR, fmt, ap); - c0025e82: a04ed0ef jal ra,c0013086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49119 + c0026052: 922ed0ef jal ra,c0013174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49127 } - c0025e86: 60e2 ld ra,24(sp) - c0025e88: 557d li a0,-1 - c0025e8a: 6161 addi sp,sp,80 - c0025e8c: 8082 ret + c0026056: 60e2 ld ra,24(sp) + c0026058: 557d li a0,-1 + c002605a: 6161 addi sp,sp,80 + c002605c: 8082 ret -00000000c0025e8e : +00000000c002605e : js_global_encodeURI(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49255 { - c0025e8e: 7155 addi sp,sp,-208 - c0025e90: fd26 sd s1,184(sp) - c0025e92: f94a sd s2,176(sp) - c0025e94: e586 sd ra,200(sp) - c0025e96: e1a2 sd s0,192(sp) - c0025e98: f54e sd s3,168(sp) - c0025e9a: f152 sd s4,160(sp) - c0025e9c: ed56 sd s5,152(sp) - c0025e9e: e95a sd s6,144(sp) - c0025ea0: e55e sd s7,136(sp) - c0025ea2: e162 sd s8,128(sp) - c0025ea4: fce6 sd s9,120(sp) - c0025ea6: f8ea sd s10,112(sp) - c0025ea8: f4ee sd s11,104(sp) - c0025eaa: e82e sd a1,16(sp) - c0025eac: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49253 + c002605e: 7155 addi sp,sp,-208 + c0026060: fd26 sd s1,184(sp) + c0026062: f94a sd s2,176(sp) + c0026064: e586 sd ra,200(sp) + c0026066: e1a2 sd s0,192(sp) + c0026068: f54e sd s3,168(sp) + c002606a: f152 sd s4,160(sp) + c002606c: ed56 sd s5,152(sp) + c002606e: e95a sd s6,144(sp) + c0026070: e55e sd s7,136(sp) + c0026072: e162 sd s8,128(sp) + c0026074: fce6 sd s9,120(sp) + c0026076: f8ea sd s10,112(sp) + c0026078: f4ee sd s11,104(sp) + c002607a: e82e sd a1,16(sp) + c002607c: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49261 str = JS_ToString(ctx, argv[0]); - c0025eae: 630c ld a1,0(a4) - c0025eb0: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 + c002607e: 630c ld a1,0(a4) + c0026080: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49255 { - c0025eb2: e43e sd a5,8(sp) - c0025eb4: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49253 + c0026082: e43e sd a5,8(sp) + c0026084: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49261 str = JS_ToString(ctx, argv[0]); - c0025eb6: 921f40ef jal ra,c001a7d6 - c0025eba: f02a sd a0,32(sp) - c0025ebc: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49254 + c0026086: 921f40ef jal ra,c001a9a6 + c002608a: f02a sd a0,32(sp) + c002608c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49262 if (JS_IsException(str)) - c0025ebe: 0005871b sext.w a4,a1 - c0025ec2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49253 + c002608e: 0005871b sext.w a4,a1 + c0026092: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49261 str = JS_ToString(ctx, argv[0]); - c0025ec4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49254 + c0026094: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49262 if (JS_IsException(str)) - c0025ec6: 00f71563 bne a4,a5,c0025ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49255 + c0026096: 00f71563 bne a4,a5,c00260a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49263 return str; - c0025eca: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49301 + c002609a: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49309 return string_buffer_end(b); - c0025ecc: fc2e sd a1,56(sp) - c0025ece: a0d5 j c0025fb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49258 + c002609c: fc2e sd a1,56(sp) + c002609e: a0d5 j c0026182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49266 string_buffer_init(ctx, b, p->len); - c0025ed0: 4150 lw a2,4(a0) - c0025ed2: 80000a37 lui s4,0x80000 - c0025ed6: fffa4a13 not s4,s4 - c0025eda: 00ca7633 and a2,s4,a2 - c0025ede: 008c addi a1,sp,64 - c0025ee0: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49265 + c00260a0: 4150 lw a2,4(a0) + c00260a2: 80000a37 lui s4,0x80000 + c00260a6: fffa4a13 not s4,s4 + c00260aa: 00ca7633 and a2,s4,a2 + c00260ae: 008c addi a1,sp,64 + c00260b0: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49273 if (c >= 0xdc00 && c <= 0xdfff) { - c0025ee2: 7ac9 lui s5,0xffff2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49268 + c00260b2: 7ac9 lui s5,0xffff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49276 } else if (c >= 0xd800 && c <= 0xdbff) { - c0025ee4: 7c4d lui s8,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49279 + c00260b4: 7c4d lui s8,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49287 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c0025ee6: 00100cb7 lui s9,0x100 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49258 + c00260b6: 00100cb7 lui s9,0x100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49266 string_buffer_init(ctx, b, p->len); - c0025eea: ce5f20ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49259 + c00260ba: ce5f20ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49267 for (k = 0; k < p->len;) { - c0025eee: 4981 li s3,0 + c00260be: 4981 li s3,0 isURIUnescaped(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49220 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49228 return c < 0x100 && - c0025ef0: 0ff00d13 li s10,255 + c00260c0: 0ff00d13 li s10,255 js_global_encodeURI(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49265 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49273 if (c >= 0xdc00 && c <= 0xdfff) { - c0025ef4: 400a8a9b addiw s5,s5,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49268 + c00260c4: 400a8a9b addiw s5,s5,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49276 } else if (c >= 0xd800 && c <= 0xdbff) { - c0025ef8: 800c0c1b addiw s8,s8,-2048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49279 + c00260c8: 800c0c1b addiw s8,s8,-2048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49287 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c0025efc: c00c8c93 addi s9,s9,-1024 # ffc00 <__clzdi2-0xbff00400> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49259 (discriminator 1) + c00260cc: c00c8c93 addi s9,s9,-1024 # ffc00 <__clzdi2-0xbff00400> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49267 (discriminator 1) for (k = 0; k < p->len;) { - c0025f00: 0044ad83 lw s11,4(s1) - c0025f04: 01ba7db3 and s11,s4,s11 - c0025f08: 01b9cc63 blt s3,s11,c0025f20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49300 + c00260d0: 0044ad83 lw s11,4(s1) + c00260d4: 01ba7db3 and s11,s4,s11 + c00260d8: 01b9cc63 blt s3,s11,c00260f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49308 JS_FreeValue(ctx, str); - c0025f0c: 7582 ld a1,32(sp) - c0025f0e: 7622 ld a2,40(sp) - c0025f10: 854a mv a0,s2 - c0025f12: c27e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49301 + c00260dc: 7582 ld a1,32(sp) + c00260de: 7622 ld a2,40(sp) + c00260e0: 854a mv a0,s2 + c00260e2: b45e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49309 return string_buffer_end(b); - c0025f16: 0088 addi a0,sp,64 - c0025f18: df3f30ef jal ra,c0019d0a - c0025f1c: f82a sd a0,48(sp) - c0025f1e: b77d j c0025ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49260 + c00260e6: 0088 addi a0,sp,64 + c00260e8: df3f30ef jal ra,c0019eda + c00260ec: f82a sd a0,48(sp) + c00260ee: b77d j c002609c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49268 c = string_get(p, k); - c0025f20: 85ce mv a1,s3 - c0025f22: 8526 mv a0,s1 - c0025f24: a42de0ef jal ra,c0004166 - c0025f28: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49261 + c00260f0: 85ce mv a1,s3 + c00260f2: 8526 mv a0,s1 + c00260f4: 872de0ef jal ra,c0004166 + c00260f8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49269 k++; - c0025f2a: 00198b1b addiw s6,s3,1 + c00260fa: 00198b1b addiw s6,s3,1 isURIUnescaped(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49221 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49229 ((c >= 0x61 && c <= 0x7a) || - c0025f2e: 00050b9b sext.w s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49220 + c00260fe: 00050b9b sext.w s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49228 return c < 0x100 && - c0025f32: 04ad4863 blt s10,a0,c0025f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49221 + c0026102: 04ad4863 blt s10,a0,c0026152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49229 ((c >= 0x61 && c <= 0x7a) || - c0025f36: fdfbf713 andi a4,s7,-33 - c0025f3a: fbf7071b addiw a4,a4,-65 - c0025f3e: 46e5 li a3,25 - c0025f40: 02e6fb63 bgeu a3,a4,c0025f76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49222 + c0026106: fdfbf713 andi a4,s7,-33 + c002610a: fbf7071b addiw a4,a4,-65 + c002610e: 46e5 li a3,25 + c0026110: 02e6fb63 bgeu a3,a4,c0026146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49230 (c >= 0x41 && c <= 0x5a) || - c0025f44: fd0b871b addiw a4,s7,-48 - c0025f48: 46a5 li a3,9 - c0025f4a: 02e6f663 bgeu a3,a4,c0025f76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49224 + c0026114: fd0b871b addiw a4,s7,-48 + c0026118: 46a5 li a3,9 + c002611a: 02e6f663 bgeu a3,a4,c0026146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49232 memchr("-_.!~*'()", c, sizeof("-_.!~*'()") - 1) != NULL || - c0025f4e: 85aa mv a1,a0 - c0025f50: 4625 li a2,9 - c0025f52: 00039517 auipc a0,0x39 - c0025f56: e0650513 addi a0,a0,-506 # c005ed58 - c0025f5a: 08f300ef jal ra,c00567e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49223 + c002611e: 85aa mv a1,a0 + c0026120: 4625 li a2,9 + c0026122: 00039517 auipc a0,0x39 + c0026126: e9650513 addi a0,a0,-362 # c005efb8 + c002612a: 08f300ef jal ra,c00569b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49231 (c >= 0x30 && c <= 0x39) || - c0025f5e: ed01 bnez a0,c0025f76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49224 + c002612e: ed01 bnez a0,c0026146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49232 memchr("-_.!~*'()", c, sizeof("-_.!~*'()") - 1) != NULL || - c0025f60: 67a2 ld a5,8(sp) - c0025f62: e385 bnez a5,c0025f82 + c0026130: 67a2 ld a5,8(sp) + c0026132: e385 bnez a5,c0026152 isURIReserved(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49116 return c < 0x100 && memchr(";/?:@&=+$,#", c, sizeof(";/?:@&=+$,#") - 1) != NULL; - c0025f64: 462d li a2,11 - c0025f66: 85a2 mv a1,s0 - c0025f68: 00039517 auipc a0,0x39 - c0025f6c: e0050513 addi a0,a0,-512 # c005ed68 - c0025f70: 079300ef jal ra,c00567e8 - c0025f74: c519 beqz a0,c0025f82 + c0026134: 462d li a2,11 + c0026136: 85a2 mv a1,s0 + c0026138: 00039517 auipc a0,0x39 + c002613c: e9050513 addi a0,a0,-368 # c005efc8 + c0026140: 079300ef jal ra,c00569b8 + c0026144: c519 beqz a0,c0026152 js_global_encodeURI(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49271 string_buffer_putc16(b, c); - c0025f76: 85de mv a1,s7 - c0025f78: 0088 addi a0,sp,64 - c0025f7a: a3ef30ef jal ra,c00191b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49247 (discriminator 1) -{ - c0025f7e: 89da mv s3,s6 - c0025f80: b741 j c0025f00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49265 + c0026146: 85de mv a1,s7 + c0026148: 0088 addi a0,sp,64 + c002614a: a3ef30ef jal ra,c0019388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49255 (discriminator 1) +{ + c002614e: 89da mv s3,s6 + c0026150: b741 j c00260d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49273 if (c >= 0xdc00 && c <= 0xdfff) { - c0025f82: 017a86bb addw a3,s5,s7 - c0025f86: 3ff00713 li a4,1023 - c0025f8a: 04d76563 bltu a4,a3,c0025fd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49266 + c0026152: 017a86bb addw a3,s5,s7 + c0026156: 3ff00713 li a4,1023 + c002615a: 04d76563 bltu a4,a3,c00261a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49274 js_throw_URIError(ctx, "invalid character"); - c0025f8e: 00039597 auipc a1,0x39 - c0025f92: dea58593 addi a1,a1,-534 # c005ed78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49270 + c002615e: 00039597 auipc a1,0x39 + c0026162: e7a58593 addi a1,a1,-390 # c005efd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49278 js_throw_URIError(ctx, "expecting surrogate pair"); - c0025f96: 854a mv a0,s2 - c0025f98: ed3ff0ef jal ra,c0025e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49304 + c0026166: 854a mv a0,s2 + c0026168: ed3ff0ef jal ra,c002603a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49312 JS_FreeValue(ctx, str); - c0025f9c: 7582 ld a1,32(sp) - c0025f9e: 7622 ld a2,40(sp) - c0025fa0: 854a mv a0,s2 - c0025fa2: b97e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49305 + c002616c: 7582 ld a1,32(sp) + c002616e: 7622 ld a2,40(sp) + c0026170: 854a mv a0,s2 + c0026172: ab5e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49313 string_buffer_free(b); - c0025fa6: 0088 addi a0,sp,64 - c0025fa8: ebfe00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49306 + c0026176: 0088 addi a0,sp,64 + c0026178: ddde00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49314 return JS_EXCEPTION; - c0025fac: 4799 li a5,6 - c0025fae: f802 sd zero,48(sp) - c0025fb0: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49307 -} - c0025fb2: 60ae ld ra,200(sp) - c0025fb4: 640e ld s0,192(sp) - c0025fb6: 7542 ld a0,48(sp) - c0025fb8: 75e2 ld a1,56(sp) - c0025fba: 74ea ld s1,184(sp) - c0025fbc: 794a ld s2,176(sp) - c0025fbe: 79aa ld s3,168(sp) - c0025fc0: 7a0a ld s4,160(sp) - c0025fc2: 6aea ld s5,152(sp) - c0025fc4: 6b4a ld s6,144(sp) - c0025fc6: 6baa ld s7,136(sp) - c0025fc8: 6c0a ld s8,128(sp) - c0025fca: 7ce6 ld s9,120(sp) - c0025fcc: 7d46 ld s10,112(sp) - c0025fce: 7da6 ld s11,104(sp) - c0025fd0: 6169 addi sp,sp,208 - c0025fd2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49268 + c002617c: 4799 li a5,6 + c002617e: f802 sd zero,48(sp) + c0026180: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49315 +} + c0026182: 60ae ld ra,200(sp) + c0026184: 640e ld s0,192(sp) + c0026186: 7542 ld a0,48(sp) + c0026188: 75e2 ld a1,56(sp) + c002618a: 74ea ld s1,184(sp) + c002618c: 794a ld s2,176(sp) + c002618e: 79aa ld s3,168(sp) + c0026190: 7a0a ld s4,160(sp) + c0026192: 6aea ld s5,152(sp) + c0026194: 6b4a ld s6,144(sp) + c0026196: 6baa ld s7,136(sp) + c0026198: 6c0a ld s8,128(sp) + c002619a: 7ce6 ld s9,120(sp) + c002619c: 7d46 ld s10,112(sp) + c002619e: 7da6 ld s11,104(sp) + c00261a0: 6169 addi sp,sp,208 + c00261a2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49276 } else if (c >= 0xd800 && c <= 0xdbff) { - c0025fd4: 017c07bb addw a5,s8,s7 - c0025fd8: 04f76d63 bltu a4,a5,c0026032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49269 + c00261a4: 017c07bb addw a5,s8,s7 + c00261a8: 04f76d63 bltu a4,a5,c0026202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49277 if (k >= p->len) { - c0025fdc: 01bb4763 blt s6,s11,c0025fea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49270 + c00261ac: 01bb4763 blt s6,s11,c00261ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49278 js_throw_URIError(ctx, "expecting surrogate pair"); - c0025fe0: 00039597 auipc a1,0x39 - c0025fe4: db058593 addi a1,a1,-592 # c005ed90 - c0025fe8: b77d j c0025f96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49273 + c00261b0: 00039597 auipc a1,0x39 + c00261b4: e4058593 addi a1,a1,-448 # c005eff0 + c00261b8: b77d j c0026166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49281 c1 = string_get(p, k); - c0025fea: 85da mv a1,s6 - c0025fec: 8526 mv a0,s1 - c0025fee: 978de0ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49275 + c00261ba: 85da mv a1,s6 + c00261bc: 8526 mv a0,s1 + c00261be: fa9dd0ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49283 if (c1 < 0xdc00 || c1 > 0xdfff) { - c0025ff2: 00aa87bb addw a5,s5,a0 - c0025ff6: 3ff00713 li a4,1023 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49274 + c00261c2: 00aa87bb addw a5,s5,a0 + c00261c6: 3ff00713 li a4,1023 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49282 k++; - c0025ffa: 00298b1b addiw s6,s3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49275 + c00261ca: 00298b1b addiw s6,s3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49283 if (c1 < 0xdc00 || c1 > 0xdfff) { - c0025ffe: fef761e3 bltu a4,a5,c0025fe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49279 + c00261ce: fef761e3 bltu a4,a5,c00261b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49287 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c0026002: 00a4141b slliw s0,s0,0xa - c0026006: 01947433 and s0,s0,s9 - c002600a: 3ff57513 andi a0,a0,1023 - c002600e: 8d41 or a0,a0,s0 - c0026010: 6441 lui s0,0x10 - c0026012: 9c29 addw s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49291 + c00261d2: 00a4141b slliw s0,s0,0xa + c00261d6: 01947433 and s0,s0,s9 + c00261da: 3ff57513 andi a0,a0,1023 + c00261de: 8d41 or a0,a0,s0 + c00261e0: 6441 lui s0,0x10 + c00261e2: 9c29 addw s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49299 encodeURI_hex(b, (c >> 18) | 0xf0); - c0026014: 4124559b sraiw a1,s0,0x12 - c0026018: 0f05e593 ori a1,a1,240 - c002601c: 2581 sext.w a1,a1 - c002601e: 0088 addi a0,sp,64 - c0026020: 84ef30ef jal ra,c001906e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49292 + c00261e4: 4124559b sraiw a1,s0,0x12 + c00261e8: 0f05e593 ori a1,a1,240 + c00261ec: 2581 sext.w a1,a1 + c00261ee: 0088 addi a0,sp,64 + c00261f0: 84ef30ef jal ra,c001923e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49300 encodeURI_hex(b, ((c >> 12) & 0x3f) | 0x80); - c0026024: 40c4559b sraiw a1,s0,0xc - c0026028: 03f5f593 andi a1,a1,63 - c002602c: 0805e593 ori a1,a1,128 - c0026030: a089 j c0026072 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49281 + c00261f4: 40c4559b sraiw a1,s0,0xc + c00261f8: 03f5f593 andi a1,a1,63 + c00261fc: 0805e593 ori a1,a1,128 + c0026200: a089 j c0026242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49289 if (c < 0x80) { - c0026032: 07f00793 li a5,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49282 + c0026202: 07f00793 li a5,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49290 encodeURI_hex(b, c); - c0026036: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49281 + c0026206: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49289 if (c < 0x80) { - c0026038: 0287d263 bge a5,s0,c002605c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49285 + c0026208: 0287d263 bge a5,s0,c002622c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49293 if (c < 0x800) { - c002603c: 7ff00793 li a5,2047 - c0026040: 0287c263 blt a5,s0,c0026064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49286 - encodeURI_hex(b, (c >> 6) | 0xc0); - c0026044: 4064559b sraiw a1,s0,0x6 - c0026048: 0c05e593 ori a1,a1,192 - c002604c: 2581 sext.w a1,a1 + c002620c: 7ff00793 li a5,2047 + c0026210: 0287c263 blt a5,s0,c0026234 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49294 + encodeURI_hex(b, (c >> 6) | 0xc0); + c0026214: 4064559b sraiw a1,s0,0x6 + c0026218: 0c05e593 ori a1,a1,192 + c002621c: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49302 encodeURI_hex(b, ((c >> 6) & 0x3f) | 0x80); - c002604e: 0088 addi a0,sp,64 - c0026050: 81ef30ef jal ra,c001906e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49296 + c002621e: 0088 addi a0,sp,64 + c0026220: 81ef30ef jal ra,c001923e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49304 encodeURI_hex(b, (c & 0x3f) | 0x80); - c0026054: 03f47593 andi a1,s0,63 - c0026058: 0805e593 ori a1,a1,128 - c002605c: 0088 addi a0,sp,64 - c002605e: 810f30ef jal ra,c001906e - c0026062: bf31 j c0025f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49289 + c0026224: 03f47593 andi a1,s0,63 + c0026228: 0805e593 ori a1,a1,128 + c002622c: 0088 addi a0,sp,64 + c002622e: 810f30ef jal ra,c001923e + c0026232: bf31 j c002614e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49297 encodeURI_hex(b, (c >> 12) | 0xe0); - c0026064: 40c4559b sraiw a1,s0,0xc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49288 + c0026234: 40c4559b sraiw a1,s0,0xc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49296 if (c < 0x10000) { - c0026068: 67c1 lui a5,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49289 + c0026238: 67c1 lui a5,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49297 encodeURI_hex(b, (c >> 12) | 0xe0); - c002606a: 0e05e593 ori a1,a1,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49288 + c002623a: 0e05e593 ori a1,a1,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49296 if (c < 0x10000) { - c002606e: faf453e3 bge s0,a5,c0026014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49292 + c002623e: faf453e3 bge s0,a5,c00261e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49300 encodeURI_hex(b, ((c >> 12) & 0x3f) | 0x80); - c0026072: 0088 addi a0,sp,64 - c0026074: ffbf20ef jal ra,c001906e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49294 + c0026242: 0088 addi a0,sp,64 + c0026244: ffbf20ef jal ra,c001923e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49302 encodeURI_hex(b, ((c >> 6) & 0x3f) | 0x80); - c0026078: 4064559b sraiw a1,s0,0x6 - c002607c: 03f5f593 andi a1,a1,63 - c0026080: 0805e593 ori a1,a1,128 - c0026084: b7e9 j c002604e + c0026248: 4064559b sraiw a1,s0,0x6 + c002624c: 03f5f593 andi a1,a1,63 + c0026250: 0805e593 ori a1,a1,128 + c0026254: b7e9 j c002621e -00000000c0026086 : +00000000c0026256 : hex_decode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49129 static int hex_decode(JSContext *ctx, JSString *p, int k) { - c0026086: 7179 addi sp,sp,-48 - c0026088: e44e sd s3,8(sp) - c002608a: f406 sd ra,40(sp) - c002608c: f022 sd s0,32(sp) - c002608e: ec26 sd s1,24(sp) - c0026090: e84a sd s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 + c0026256: 7179 addi sp,sp,-48 + c0026258: e44e sd s3,8(sp) + c002625a: f406 sd ra,40(sp) + c002625c: f022 sd s0,32(sp) + c002625e: ec26 sd s1,24(sp) + c0026260: e84a sd s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49132 if (k >= p->len || string_get(p, k) != '%') - c0026092: 41c4 lw s1,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49121 + c0026262: 41c4 lw s1,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49129 static int hex_decode(JSContext *ctx, JSString *p, int k) { - c0026094: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 + c0026264: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49132 if (k >= p->len || string_get(p, k) != '%') - c0026096: 1486 slli s1,s1,0x21 - c0026098: 9085 srli s1,s1,0x21 - c002609a: 00965c63 bge a2,s1,c00260b2 - c002609e: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49124 (discriminator 1) - c00260a0: 854a mv a0,s2 - c00260a2: 85b2 mv a1,a2 - c00260a4: 8432 mv s0,a2 - c00260a6: 8c0de0ef jal ra,c0004166 - c00260aa: 02500793 li a5,37 - c00260ae: 00f50f63 beq a0,a5,c00260cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49125 + c0026266: 1486 slli s1,s1,0x21 + c0026268: 9085 srli s1,s1,0x21 + c002626a: 00965c63 bge a2,s1,c0026282 + c002626e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49132 (discriminator 1) + c0026270: 854a mv a0,s2 + c0026272: 85b2 mv a1,a2 + c0026274: 8432 mv s0,a2 + c0026276: ef1dd0ef jal ra,c0004166 + c002627a: 02500793 li a5,37 + c002627e: 00f50f63 beq a0,a5,c002629c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49133 return js_throw_URIError(ctx, "expecting %%"); - c00260b2: 00039597 auipc a1,0x39 - c00260b6: cfe58593 addi a1,a1,-770 # c005edb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49130 -} - c00260ba: 7402 ld s0,32(sp) - c00260bc: 70a2 ld ra,40(sp) - c00260be: 64e2 ld s1,24(sp) - c00260c0: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49127 + c0026282: 00039597 auipc a1,0x39 + c0026286: d8e58593 addi a1,a1,-626 # c005f010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49138 +} + c002628a: 7402 ld s0,32(sp) + c002628c: 70a2 ld ra,40(sp) + c002628e: 64e2 ld s1,24(sp) + c0026290: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49135 return js_throw_URIError(ctx, "expecting hex digit"); - c00260c2: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49130 + c0026292: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49138 } - c00260c4: 69a2 ld s3,8(sp) - c00260c6: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49127 + c0026294: 69a2 ld s3,8(sp) + c0026296: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49135 return js_throw_URIError(ctx, "expecting hex digit"); - c00260c8: da3ff06f j c0025e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49126 + c0026298: da3ff06f j c002603a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49134 if (k + 2 >= p->len || (c = string_get_hex(p, k + 1, 2)) < 0) - c00260cc: 0024079b addiw a5,s0,2 - c00260d0: 0097da63 bge a5,s1,c00260e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49126 (discriminator 1) - c00260d4: 4609 li a2,2 - c00260d6: 0014059b addiw a1,s0,1 - c00260da: 854a mv a0,s2 - c00260dc: f6ede0ef jal ra,c000484a - c00260e0: 00055763 bgez a0,c00260ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49127 + c002629c: 0024079b addiw a5,s0,2 + c00262a0: 0097da63 bge a5,s1,c00262b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49134 (discriminator 1) + c00262a4: 4609 li a2,2 + c00262a6: 0014059b addiw a1,s0,1 + c00262aa: 854a mv a0,s2 + c00262ac: d9ede0ef jal ra,c000484a + c00262b0: 00055763 bgez a0,c00262be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49135 return js_throw_URIError(ctx, "expecting hex digit"); - c00260e4: 00039597 auipc a1,0x39 - c00260e8: cdc58593 addi a1,a1,-804 # c005edc0 - c00260ec: b7f9 j c00260ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49130 -} - c00260ee: 70a2 ld ra,40(sp) - c00260f0: 7402 ld s0,32(sp) - c00260f2: 64e2 ld s1,24(sp) - c00260f4: 6942 ld s2,16(sp) - c00260f6: 69a2 ld s3,8(sp) - c00260f8: 6145 addi sp,sp,48 - c00260fa: 8082 ret - -00000000c00260fc : + c00262b4: 00039597 auipc a1,0x39 + c00262b8: d6c58593 addi a1,a1,-660 # c005f020 + c00262bc: b7f9 j c002628a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49138 +} + c00262be: 70a2 ld ra,40(sp) + c00262c0: 7402 ld s0,32(sp) + c00262c2: 64e2 ld s1,24(sp) + c00262c4: 6942 ld s2,16(sp) + c00262c6: 69a2 ld s3,8(sp) + c00262c8: 6145 addi sp,sp,48 + c00262ca: 8082 ret + +00000000c00262cc : js_global_decodeURI(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49142 { - c00260fc: 7131 addi sp,sp,-192 - c00260fe: f526 sd s1,168(sp) - c0026100: f14a sd s2,160(sp) - c0026102: e556 sd s5,136(sp) - c0026104: fd06 sd ra,184(sp) - c0026106: f922 sd s0,176(sp) - c0026108: ed4e sd s3,152(sp) - c002610a: e952 sd s4,144(sp) - c002610c: e15a sd s6,128(sp) - c002610e: fcde sd s7,120(sp) - c0026110: f8e2 sd s8,112(sp) - c0026112: f4e6 sd s9,104(sp) - c0026114: f0ea sd s10,96(sp) - c0026116: ecee sd s11,88(sp) - c0026118: e02e sd a1,0(sp) - c002611a: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49140 + c00262cc: 7131 addi sp,sp,-192 + c00262ce: f526 sd s1,168(sp) + c00262d0: f14a sd s2,160(sp) + c00262d2: e556 sd s5,136(sp) + c00262d4: fd06 sd ra,184(sp) + c00262d6: f922 sd s0,176(sp) + c00262d8: ed4e sd s3,152(sp) + c00262da: e952 sd s4,144(sp) + c00262dc: e15a sd s6,128(sp) + c00262de: fcde sd s7,120(sp) + c00262e0: f8e2 sd s8,112(sp) + c00262e2: f4e6 sd s9,104(sp) + c00262e4: f0ea sd s10,96(sp) + c00262e6: ecee sd s11,88(sp) + c00262e8: e02e sd a1,0(sp) + c00262ea: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49148 str = JS_ToString(ctx, argv[0]); - c002611c: 630c ld a1,0(a4) - c002611e: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49134 + c00262ec: 630c ld a1,0(a4) + c00262ee: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49142 { - c0026120: 8abe mv s5,a5 - c0026122: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49140 + c00262f0: 8abe mv s5,a5 + c00262f2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49148 str = JS_ToString(ctx, argv[0]); - c0026124: eb2f40ef jal ra,c001a7d6 - c0026128: e82a sd a0,16(sp) - c002612a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49141 + c00262f4: eb2f40ef jal ra,c001a9a6 + c00262f8: e82a sd a0,16(sp) + c00262fa: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49149 if (JS_IsException(str)) - c002612c: 0005871b sext.w a4,a1 - c0026130: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49140 + c00262fc: 0005871b sext.w a4,a1 + c0026300: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49148 str = JS_ToString(ctx, argv[0]); - c0026132: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49141 + c0026302: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49149 if (JS_IsException(str)) - c0026134: 02f71563 bne a4,a5,c002615e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49142 + c0026304: 02f71563 bne a4,a5,c002632e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49150 return str; - c0026138: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49201 + c0026308: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49209 return string_buffer_end(b); - c002613a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49207 -} - c002613c: 70ea ld ra,184(sp) - c002613e: 744a ld s0,176(sp) - c0026140: 7502 ld a0,32(sp) - c0026142: 75a2 ld a1,40(sp) - c0026144: 74aa ld s1,168(sp) - c0026146: 790a ld s2,160(sp) - c0026148: 69ea ld s3,152(sp) - c002614a: 6a4a ld s4,144(sp) - c002614c: 6aaa ld s5,136(sp) - c002614e: 6b0a ld s6,128(sp) - c0026150: 7be6 ld s7,120(sp) - c0026152: 7c46 ld s8,112(sp) - c0026154: 7ca6 ld s9,104(sp) - c0026156: 7d06 ld s10,96(sp) - c0026158: 6de6 ld s11,88(sp) - c002615a: 6129 addi sp,sp,192 - c002615c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49144 + c002630a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49215 +} + c002630c: 70ea ld ra,184(sp) + c002630e: 744a ld s0,176(sp) + c0026310: 7502 ld a0,32(sp) + c0026312: 75a2 ld a1,40(sp) + c0026314: 74aa ld s1,168(sp) + c0026316: 790a ld s2,160(sp) + c0026318: 69ea ld s3,152(sp) + c002631a: 6a4a ld s4,144(sp) + c002631c: 6aaa ld s5,136(sp) + c002631e: 6b0a ld s6,128(sp) + c0026320: 7be6 ld s7,120(sp) + c0026322: 7c46 ld s8,112(sp) + c0026324: 7ca6 ld s9,104(sp) + c0026326: 7d06 ld s10,96(sp) + c0026328: 6de6 ld s11,88(sp) + c002632a: 6129 addi sp,sp,192 + c002632c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49152 string_buffer_init(ctx, b, 0); - c002615e: 4601 li a2,0 - c0026160: 180c addi a1,sp,48 - c0026162: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49147 + c002632e: 4601 li a2,0 + c0026330: 180c addi a1,sp,48 + c0026332: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49155 for (k = 0; k < p->len;) { - c0026164: 80000a37 lui s4,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49190 + c0026334: 80000a37 lui s4,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49198 (c >= 0xd800 && c < 0xe000)) { - c0026168: 7b4d lui s6,0xffff3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49167 + c0026338: 7b4d lui s6,0xffff3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49175 c_min = 0x800; - c002616a: 6b85 lui s7,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49144 + c002633a: 6b85 lui s7,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49152 string_buffer_init(ctx, b, 0); - c002616c: a63f20ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49147 + c002633c: a63f20ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49155 for (k = 0; k < p->len;) { - c0026170: 4981 li s3,0 - c0026172: fffa4a13 not s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49149 + c0026340: 4981 li s3,0 + c0026342: fffa4a13 not s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49157 if (c == '%') { - c0026176: 02500c13 li s8,37 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49183 + c0026346: 02500c13 li s8,37 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49191 if ((c1 & 0xc0) != 0x80) { - c002617a: 08000c93 li s9,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49190 + c002634a: 08000c93 li s9,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49198 (c >= 0xd800 && c < 0xe000)) { - c002617e: 800b0b1b addiw s6,s6,-2048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49167 + c002634e: 800b0b1b addiw s6,s6,-2048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49175 c_min = 0x800; - c0026182: 800b8b93 addi s7,s7,-2048 # 800 <__clzdi2-0xbffff800> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49147 (discriminator 1) + c0026352: 800b8b93 addi s7,s7,-2048 # 800 <__clzdi2-0xbffff800> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49155 (discriminator 1) for (k = 0; k < p->len;) { - c0026186: 00492783 lw a5,4(s2) - c002618a: 00fa77b3 and a5,s4,a5 - c002618e: 00f9cc63 blt s3,a5,c00261a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49200 + c0026356: 00492783 lw a5,4(s2) + c002635a: 00fa77b3 and a5,s4,a5 + c002635e: 00f9cc63 blt s3,a5,c0026376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49208 JS_FreeValue(ctx, str); - c0026192: 65c2 ld a1,16(sp) - c0026194: 6662 ld a2,24(sp) - c0026196: 8526 mv a0,s1 - c0026198: 9a1e10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49201 + c0026362: 65c2 ld a1,16(sp) + c0026364: 6662 ld a2,24(sp) + c0026366: 8526 mv a0,s1 + c0026368: 8bfe10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49209 return string_buffer_end(b); - c002619c: 1808 addi a0,sp,48 - c002619e: b6df30ef jal ra,c0019d0a - c00261a2: f02a sd a0,32(sp) - c00261a4: bf59 j c002613a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49148 + c002636c: 1808 addi a0,sp,48 + c002636e: b6df30ef jal ra,c0019eda + c0026372: f02a sd a0,32(sp) + c0026374: bf59 j c002630a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49156 c = string_get(p, k); - c00261a6: 85ce mv a1,s3 - c00261a8: 854a mv a0,s2 - c00261aa: fbddd0ef jal ra,c0004166 - c00261ae: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49149 + c0026376: 85ce mv a1,s3 + c0026378: 854a mv a0,s2 + c002637a: deddd0ef jal ra,c0004166 + c002637e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49157 if (c == '%') { - c00261b0: 11851163 bne a0,s8,c00262b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49150 + c0026380: 11851163 bne a0,s8,c0026482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49158 c = hex_decode(ctx, p, k); - c00261b4: 864e mv a2,s3 - c00261b6: 85ca mv a1,s2 - c00261b8: 8526 mv a0,s1 - c00261ba: ecdff0ef jal ra,c0026086 - c00261be: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49151 + c0026384: 864e mv a2,s3 + c0026386: 85ca mv a1,s2 + c0026388: 8526 mv a0,s1 + c002638a: ecdff0ef jal ra,c0026256 + c002638e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49159 if (c < 0) - c00261c0: 0a054463 bltz a0,c0026268 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49154 + c0026390: 0a054463 bltz a0,c0026438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49162 if (c < 0x80) { - c00261c4: 07f00793 li a5,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49153 + c0026394: 07f00793 li a5,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49161 k += 3; - c00261c8: 00398d9b addiw s11,s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49154 + c0026398: 00398d9b addiw s11,s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49162 if (c < 0x80) { - c00261cc: 02a7c863 blt a5,a0,c00261fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49155 + c002639c: 02a7c863 blt a5,a0,c00263cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49163 if (!isComponent && isURIReserved(c)) { - c00261d0: 000a9f63 bnez s5,c00261ee + c00263a0: 000a9f63 bnez s5,c00263be isURIReserved(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49116 return c < 0x100 && memchr(";/?:@&=+$,#", c, sizeof(";/?:@&=+$,#") - 1) != NULL; - c00261d4: 85aa mv a1,a0 - c00261d6: 462d li a2,11 - c00261d8: 00039517 auipc a0,0x39 - c00261dc: b9050513 addi a0,a0,-1136 # c005ed68 - c00261e0: 608300ef jal ra,c00567e8 - c00261e4: c509 beqz a0,c00261ee + c00263a4: 85aa mv a1,a0 + c00263a6: 462d li a2,11 + c00263a8: 00039517 auipc a0,0x39 + c00263ac: c2050513 addi a0,a0,-992 # c005efc8 + c00263b0: 608300ef jal ra,c00569b8 + c00263b4: c509 beqz a0,c00263be js_global_decodeURI(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49165 k -= 2; - c00261e6: 00198d9b addiw s11,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49156 + c00263b6: 00198d9b addiw s11,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49164 c = '%'; - c00261ea: 02500413 li s0,37 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49198 + c00263ba: 02500413 li s0,37 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49206 string_buffer_putc(b, c); - c00261ee: 0004059b sext.w a1,s0 - c00261f2: 1808 addi a0,sp,48 - c00261f4: 802f30ef jal ra,c00191f6 - c00261f8: 89ee mv s3,s11 - c00261fa: b771 j c0026186 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49161 + c00263be: 0004059b sext.w a1,s0 + c00263c2: 1808 addi a0,sp,48 + c00263c4: 802f30ef jal ra,c00193c6 + c00263c8: 89ee mv s3,s11 + c00263ca: b771 j c0026356 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49169 if (c >= 0xc0 && c <= 0xdf) { - c00261fc: f405071b addiw a4,a0,-192 - c0026200: 46fd li a3,31 - c0026202: 0005079b sext.w a5,a0 - c0026206: 00e6e963 bltu a3,a4,c0026218 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49164 + c00263cc: f405071b addiw a4,a0,-192 + c00263d0: 46fd li a3,31 + c00263d2: 0005079b sext.w a5,a0 + c00263d6: 00e6e963 bltu a3,a4,c00263e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49172 c &= 0x1f; - c002620a: 01f57413 andi s0,a0,31 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49163 + c00263da: 01f57413 andi s0,a0,31 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49171 c_min = 0x80; - c002620e: 08000d13 li s10,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49162 + c00263de: 08000d13 li s10,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49170 n = 1; - c0026212: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49178 + c00263e2: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49186 while (n-- > 0) { - c0026214: 57fd li a5,-1 - c0026216: a895 j c002628a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49165 + c00263e4: 57fd li a5,-1 + c00263e6: a895 j c002645a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49173 } else if (c >= 0xe0 && c <= 0xef) { - c0026218: f207871b addiw a4,a5,-224 - c002621c: 46bd li a3,15 - c002621e: 00e6e763 bltu a3,a4,c002622c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49168 + c00263e8: f207871b addiw a4,a5,-224 + c00263ec: 46bd li a3,15 + c00263ee: 00e6e763 bltu a3,a4,c00263fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49176 c &= 0xf; - c0026222: 00f57413 andi s0,a0,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49167 + c00263f2: 00f57413 andi s0,a0,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49175 c_min = 0x800; - c0026226: 8d5e mv s10,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49166 + c00263f6: 8d5e mv s10,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49174 n = 2; - c0026228: 4989 li s3,2 - c002622a: b7ed j c0026214 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49169 + c00263f8: 4989 li s3,2 + c00263fa: b7ed j c00263e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49177 } else if (c >= 0xf0 && c <= 0xf7) { - c002622c: f107879b addiw a5,a5,-240 - c0026230: 471d li a4,7 - c0026232: 06f76c63 bltu a4,a5,c00262aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49172 + c00263fc: f107879b addiw a5,a5,-240 + c0026400: 471d li a4,7 + c0026402: 06f76c63 bltu a4,a5,c002647a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49180 c &= 0x7; - c0026236: 00757413 andi s0,a0,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49171 + c0026406: 00757413 andi s0,a0,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49179 c_min = 0x10000; - c002623a: 6d41 lui s10,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49170 + c002640a: 6d41 lui s10,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49178 n = 3; - c002623c: 498d li s3,3 - c002623e: bfd9 j c0026214 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49179 + c002640c: 498d li s3,3 + c002640e: bfd9 j c00263e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49187 c1 = hex_decode(ctx, p, k); - c0026240: 866e mv a2,s11 - c0026242: 85ca mv a1,s2 - c0026244: 8526 mv a0,s1 - c0026246: e41ff0ef jal ra,c0026086 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49180 + c0026410: 866e mv a2,s11 + c0026412: 85ca mv a1,s2 + c0026414: 8526 mv a0,s1 + c0026416: e41ff0ef jal ra,c0026256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49188 if (c1 < 0) - c002624a: 00054f63 bltz a0,c0026268 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49183 + c002641a: 00054f63 bltz a0,c0026438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49191 if ((c1 & 0xc0) != 0x80) { - c002624e: 0c057713 andi a4,a0,192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49182 + c002641e: 0c057713 andi a4,a0,192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49190 k += 3; - c0026252: 2d8d addiw s11,s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49183 - if ((c1 & 0xc0) != 0x80) { - c0026254: 57fd li a5,-1 - c0026256: 03970563 beq a4,s9,c0026280 + c0026422: 2d8d addiw s11,s11,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49191 + if ((c1 & 0xc0) != 0x80) { + c0026424: 57fd li a5,-1 + c0026426: 03970563 beq a4,s9,c0026450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49199 js_throw_URIError(ctx, "malformed UTF-8"); - c002625a: 00039597 auipc a1,0x39 - c002625e: b7e58593 addi a1,a1,-1154 # c005edd8 - c0026262: 8526 mv a0,s1 - c0026264: c07ff0ef jal ra,c0025e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49204 + c002642a: 00039597 auipc a1,0x39 + c002642e: c0e58593 addi a1,a1,-1010 # c005f038 + c0026432: 8526 mv a0,s1 + c0026434: c07ff0ef jal ra,c002603a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49212 JS_FreeValue(ctx, str); - c0026268: 65c2 ld a1,16(sp) - c002626a: 6662 ld a2,24(sp) - c002626c: 8526 mv a0,s1 - c002626e: 8cbe10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49205 + c0026438: 65c2 ld a1,16(sp) + c002643a: 6662 ld a2,24(sp) + c002643c: 8526 mv a0,s1 + c002643e: fe8e10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49213 string_buffer_free(b); - c0026272: 1808 addi a0,sp,48 - c0026274: bf3e00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49206 + c0026442: 1808 addi a0,sp,48 + c0026444: b11e00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49214 return JS_EXCEPTION; - c0026278: 4799 li a5,6 - c002627a: f002 sd zero,32(sp) - c002627c: f43e sd a5,40(sp) - c002627e: bd7d j c002613c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49187 + c0026448: 4799 li a5,6 + c002644a: f002 sd zero,32(sp) + c002644c: f43e sd a5,40(sp) + c002644e: bd7d j c002630c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49195 c = (c << 6) | (c1 & 0x3f); - c0026280: 0064141b slliw s0,s0,0x6 - c0026284: 03f57513 andi a0,a0,63 - c0026288: 8c49 or s0,s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49178 + c0026450: 0064141b slliw s0,s0,0x6 + c0026454: 03f57513 andi a0,a0,63 + c0026458: 8c49 or s0,s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49186 while (n-- > 0) { - c002628a: 39fd addiw s3,s3,-1 - c002628c: faf99ae3 bne s3,a5,c0026240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49189 + c002645a: 39fd addiw s3,s3,-1 + c002645c: faf99ae3 bne s3,a5,c0026410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49197 if (c < c_min || c > 0x10FFFF || - c0026290: fda445e3 blt s0,s10,c002625a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49189 (discriminator 1) - c0026294: 001107b7 lui a5,0x110 - c0026298: fcf451e3 bge s0,a5,c002625a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49189 (discriminator 2) - c002629c: 008b07bb addw a5,s6,s0 - c00262a0: 7ff00713 li a4,2047 - c00262a4: f4f765e3 bltu a4,a5,c00261ee - c00262a8: bf4d j c002625a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49175 + c0026460: fda445e3 blt s0,s10,c002642a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49197 (discriminator 1) + c0026464: 001107b7 lui a5,0x110 + c0026468: fcf451e3 bge s0,a5,c002642a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49197 (discriminator 2) + c002646c: 008b07bb addw a5,s6,s0 + c0026470: 7ff00713 li a4,2047 + c0026474: f4f765e3 bltu a4,a5,c00263be + c0026478: bf4d j c002642a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49183 c_min = 1; - c00262aa: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49174 + c002647a: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49182 n = 0; - c00262ac: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49176 + c002647c: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49184 c = 0; - c00262ae: 4401 li s0,0 - c00262b0: b795 j c0026214 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49196 + c002647e: 4401 li s0,0 + c0026480: b795 j c00263e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49204 k++; - c00262b2: 00198d9b addiw s11,s3,1 - c00262b6: bf25 j c00261ee + c0026482: 00198d9b addiw s11,s3,1 + c0026486: bf25 j c00263be -00000000c00262b8 : +00000000c0026488 : js_parse_error(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20195 -{ - c00262b8: 711d addi sp,sp,-96 - c00262ba: f022 sd s0,32(sp) - c00262bc: f832 sd a2,48(sp) - c00262be: fc36 sd a3,56(sp) - c00262c0: e0ba sd a4,64(sp) - c00262c2: e4be sd a5,72(sp) - c00262c4: f406 sd ra,40(sp) - c00262c6: ec26 sd s1,24(sp) - c00262c8: e8c2 sd a6,80(sp) - c00262ca: ecc6 sd a7,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20203 +{ + c0026488: 711d addi sp,sp,-96 + c002648a: f022 sd s0,32(sp) + c002648c: f832 sd a2,48(sp) + c002648e: fc36 sd a3,56(sp) + c0026490: e0ba sd a4,64(sp) + c0026492: e4be sd a5,72(sp) + c0026494: f406 sd ra,40(sp) + c0026496: ec26 sd s1,24(sp) + c0026498: e8c2 sd a6,80(sp) + c002649a: ecc6 sd a7,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20204 JSContext *ctx = s->ctx; - c00262cc: 6104 ld s1,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20195 + c002649c: 6104 ld s1,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20203 { - c00262ce: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20200 + c002649e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20208 va_start(ap, fmt); - c00262d0: 1814 addi a3,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20201 + c00264a0: 1814 addi a3,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20209 JS_ThrowError2(ctx, JS_SYNTAX_ERROR, fmt, ap, FALSE); - c00262d2: 862e mv a2,a1 - c00262d4: 4701 li a4,0 - c00262d6: 458d li a1,3 - c00262d8: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20200 + c00264a2: 862e mv a2,a1 + c00264a4: 4701 li a4,0 + c00264a6: 458d li a1,3 + c00264a8: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20208 va_start(ap, fmt); - c00262da: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20201 + c00264aa: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20209 JS_ThrowError2(ctx, JS_SYNTAX_ERROR, fmt, ap, FALSE); - c00262dc: d1bec0ef jal ra,c0012ff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20204 + c00264ac: c39ec0ef jal ra,c00130e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20212 if (s->cur_func && s->cur_func->backtrace_barrier) - c00262e0: 743c ld a5,104(s0) - c00262e2: c39d beqz a5,c0026308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20204 (discriminator 1) - c00262e4: 0807a783 lw a5,128(a5) # 110080 <__clzdi2-0xbfeeff80> - c00262e8: c391 beqz a5,c00262ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20205 + c00264b0: 743c ld a5,104(s0) + c00264b2: c39d beqz a5,c00264d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20212 (discriminator 1) + c00264b4: 0807a783 lw a5,128(a5) # 110080 <__clzdi2-0xbfeeff80> + c00264b8: c391 beqz a5,c00264bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20213 backtrace_flags = JS_BACKTRACE_FLAG_SINGLE_LEVEL; - c00262ea: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20206 + c00264ba: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20214 build_backtrace(ctx, ctx->rt->current_exception, s->filename, s->line_num, - c00262ec: 6c90 ld a2,24(s1) - c00262ee: 4458 lw a4,12(s0) - c00262f0: 6814 ld a3,16(s0) - c00262f2: 726c ld a1,224(a2) - c00262f4: 7670 ld a2,232(a2) - c00262f6: 8526 mv a0,s1 - c00262f8: f57f80ef jal ra,c001f24e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20209 + c00264bc: 6c90 ld a2,24(s1) + c00264be: 4458 lw a4,12(s0) + c00264c0: 6814 ld a3,16(s0) + c00264c2: 726c ld a1,224(a2) + c00264c4: 7670 ld a2,232(a2) + c00264c6: 8526 mv a0,s1 + c00264c8: f57f80ef jal ra,c001f41e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20217 } - c00262fc: 70a2 ld ra,40(sp) - c00262fe: 7402 ld s0,32(sp) - c0026300: 64e2 ld s1,24(sp) - c0026302: 557d li a0,-1 - c0026304: 6125 addi sp,sp,96 - c0026306: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20203 + c00264cc: 70a2 ld ra,40(sp) + c00264ce: 7402 ld s0,32(sp) + c00264d0: 64e2 ld s1,24(sp) + c00264d2: 557d li a0,-1 + c00264d4: 6125 addi sp,sp,96 + c00264d6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20211 backtrace_flags = 0; - c0026308: 4781 li a5,0 - c002630a: b7cd j c00262ec + c00264d8: 4781 li a5,0 + c00264da: b7cd j c00264bc -00000000c002630c : +00000000c00264dc : add_export_entry2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27349 -{ - c002630c: 7119 addi sp,sp,-128 - c002630e: f8a2 sd s0,112(sp) - c0026310: f4a6 sd s1,104(sp) - c0026312: f0ca sd s2,96(sp) - c0026314: ecce sd s3,88(sp) - c0026316: e8d2 sd s4,80(sp) - c0026318: e4d6 sd s5,72(sp) - c002631a: fc86 sd ra,120(sp) - c002631c: 84b2 mv s1,a2 - c002631e: 89ba mv s3,a4 - c0026320: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27357 +{ + c00264dc: 7119 addi sp,sp,-128 + c00264de: f8a2 sd s0,112(sp) + c00264e0: f4a6 sd s1,104(sp) + c00264e2: f0ca sd s2,96(sp) + c00264e4: ecce sd s3,88(sp) + c00264e6: e8d2 sd s4,80(sp) + c00264e8: e4d6 sd s5,72(sp) + c00264ea: fc86 sd ra,120(sp) + c00264ec: 84b2 mv s1,a2 + c00264ee: 89ba mv s3,a4 + c00264f0: 892a mv s2,a0 find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27345 for(i = 0; i < m->export_entries_count; i++) { - c0026322: 5a18 lw a4,48(a2) + c00264f2: 5a18 lw a4,48(a2) add_export_entry2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27349 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27357 { - c0026324: 842e mv s0,a1 - c0026326: 8a36 mv s4,a3 - c0026328: 8abe mv s5,a5 + c00264f4: 842e mv s0,a1 + c00264f6: 8a36 mv s4,a3 + c00264f8: 8abe mv s5,a5 find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27345 for(i = 0; i < m->export_entries_count; i++) { - c002632a: 4601 li a2,0 - c002632c: 0006079b sext.w a5,a2 - c0026330: 04e7c863 blt a5,a4,c0026380 + c00264fa: 4601 li a2,0 + c00264fc: 0006079b sext.w a5,a2 + c0026500: 04e7c863 blt a5,a4,c0026550 add_export_entry2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27363 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27371 if (js_resize_array(ctx, (void **)&m->export_entries, - c0026334: 2705 addiw a4,a4,1 - c0026336: 03448693 addi a3,s1,52 - c002633a: 02000613 li a2,32 - c002633e: 02848593 addi a1,s1,40 - c0026342: 854a mv a0,s2 - c0026344: bccf10ef jal ra,c0017710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27367 + c0026504: 2705 addiw a4,a4,1 + c0026506: 03448693 addi a3,s1,52 + c002650a: 02000613 li a2,32 + c002650e: 02848593 addi a1,s1,40 + c0026512: 854a mv a0,s2 + c0026514: bccf10ef jal ra,c00178e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27375 return NULL; - c0026348: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27363 + c0026518: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27371 if (js_resize_array(ctx, (void **)&m->export_entries, - c002634a: ed3d bnez a0,c00263c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27368 + c002651a: ed3d bnez a0,c0026598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27376 me = &m->export_entries[m->export_entries_count++]; - c002634c: 5898 lw a4,48(s1) - c002634e: 7480 ld s0,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27369 + c002651c: 5898 lw a4,48(s1) + c002651e: 7480 ld s0,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27377 memset(me, 0, sizeof(*me)); - c0026350: 02000613 li a2,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27368 + c0026520: 02000613 li a2,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27376 me = &m->export_entries[m->export_entries_count++]; - c0026354: 0017079b addiw a5,a4,1 - c0026358: 0716 slli a4,a4,0x5 - c002635a: 943a add s0,s0,a4 - c002635c: d89c sw a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27369 + c0026524: 0017079b addiw a5,a4,1 + c0026528: 0716 slli a4,a4,0x5 + c002652a: 943a add s0,s0,a4 + c002652c: d89c sw a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27377 memset(me, 0, sizeof(*me)); - c002635e: 4581 li a1,0 - c0026360: 8522 mv a0,s0 - c0026362: 50e300ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27370 + c002652e: 4581 li a1,0 + c0026530: 8522 mv a0,s0 + c0026532: 50e300ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27378 me->local_name = JS_DupAtom(ctx, local_name); - c0026366: 85d2 mv a1,s4 - c0026368: 854a mv a0,s2 - c002636a: 960e10ef jal ra,c00074ca - c002636e: c848 sw a0,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27371 + c0026536: 85d2 mv a1,s4 + c0026538: 854a mv a0,s2 + c002653a: 87ee10ef jal ra,c00075b8 + c002653e: c848 sw a0,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27379 me->export_name = JS_DupAtom(ctx, export_name); - c0026370: 85ce mv a1,s3 - c0026372: 854a mv a0,s2 - c0026374: 956e10ef jal ra,c00074ca - c0026378: cc08 sw a0,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27372 + c0026540: 85ce mv a1,s3 + c0026542: 854a mv a0,s2 + c0026544: 874e10ef jal ra,c00075b8 + c0026548: cc08 sw a0,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 me->export_type = export_type; - c002637a: 01542823 sw s5,16(s0) # 10010 <__clzdi2-0xbffefff0> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27373 + c002654a: 01542823 sw s5,16(s0) # 10010 <__clzdi2-0xbffefff0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27381 return me; - c002637e: a0a9 j c00263c8 + c002654e: a0a9 j c0026598 find_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27347 if (me->export_name == export_name) - c0026380: 749c ld a5,40(s1) - c0026382: 00561693 slli a3,a2,0x5 - c0026386: 0605 addi a2,a2,1 - c0026388: 97b6 add a5,a5,a3 - c002638a: 4f9c lw a5,24(a5) - c002638c: faf990e3 bne s3,a5,c002632c + c0026550: 749c ld a5,40(s1) + c0026552: 00561693 slli a3,a2,0x5 + c0026556: 0605 addi a2,a2,1 + c0026558: 97b6 add a5,a5,a3 + c002655a: 4f9c lw a5,24(a5) + c002655c: faf990e3 bne s3,a5,c00264fc add_export_entry2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27362 if (s) { - c0026390: ec11 bnez s0,c00263ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27358 + c0026560: ec11 bnez s0,c002657c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27366 JS_ThrowSyntaxErrorAtom(ctx, "duplicate exported name '%s'", export_name); - c0026392: 00037697 auipc a3,0x37 - c0026396: c3e68693 addi a3,a3,-962 # c005cfd0 - c002639a: 00039617 auipc a2,0x39 - c002639e: a4e60613 addi a2,a2,-1458 # c005ede8 - c00263a2: 85ce mv a1,s3 - c00263a4: 854a mv a0,s2 - c00263a6: d91ec0ef jal ra,c0013136 <__JS_ThrowSyntaxErrorAtom> - c00263aa: a831 j c00263c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27355 + c0026562: 00037697 auipc a3,0x37 + c0026566: c9e68693 addi a3,a3,-866 # c005d200 + c002656a: 00039617 auipc a2,0x39 + c002656e: ade60613 addi a2,a2,-1314 # c005f048 + c0026572: 85ce mv a1,s3 + c0026574: 854a mv a0,s2 + c0026576: cafec0ef jal ra,c0013224 <__JS_ThrowSyntaxErrorAtom> + c002657a: a831 j c0026596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27363 js_parse_error(s, "duplicate exported name '%s'", - c00263ac: 864e mv a2,s3 - c00263ae: 858a mv a1,sp - c00263b0: 854a mv a0,s2 - c00263b2: ab8e00ef jal ra,c000666a - c00263b6: 862a mv a2,a0 - c00263b8: 00039597 auipc a1,0x39 - c00263bc: a3058593 addi a1,a1,-1488 # c005ede8 - c00263c0: 8522 mv a0,s0 - c00263c2: ef7ff0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27360 + c002657c: 864e mv a2,s3 + c002657e: 858a mv a1,sp + c0026580: 854a mv a0,s2 + c0026582: 9d6e00ef jal ra,c0006758 + c0026586: 862a mv a2,a0 + c0026588: 00039597 auipc a1,0x39 + c002658c: ac058593 addi a1,a1,-1344 # c005f048 + c0026590: 8522 mv a0,s0 + c0026592: ef7ff0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27368 return NULL; - c00263c6: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27374 -} - c00263c8: 70e6 ld ra,120(sp) - c00263ca: 8522 mv a0,s0 - c00263cc: 7446 ld s0,112(sp) - c00263ce: 74a6 ld s1,104(sp) - c00263d0: 7906 ld s2,96(sp) - c00263d2: 69e6 ld s3,88(sp) - c00263d4: 6a46 ld s4,80(sp) - c00263d6: 6aa6 ld s5,72(sp) - c00263d8: 6109 addi sp,sp,128 - c00263da: 8082 ret - -00000000c00263dc : + c0026596: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27382 +} + c0026598: 70e6 ld ra,120(sp) + c002659a: 8522 mv a0,s0 + c002659c: 7446 ld s0,112(sp) + c002659e: 74a6 ld s1,104(sp) + c00265a0: 7906 ld s2,96(sp) + c00265a2: 69e6 ld s3,88(sp) + c00265a4: 6a46 ld s4,80(sp) + c00265a6: 6aa6 ld s5,72(sp) + c00265a8: 6109 addi sp,sp,128 + c00265aa: 8082 ret + +00000000c00265ac : JS_AddModuleExport(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27422 { - c00263dc: 1101 addi sp,sp,-32 - c00263de: e822 sd s0,16(sp) - c00263e0: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27417 + c00265ac: 1101 addi sp,sp,-32 + c00265ae: e822 sd s0,16(sp) + c00265b0: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27425 name = JS_NewAtom(ctx, export_name); - c00263e2: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27414 + c00265b2: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27422 { - c00263e4: e426 sd s1,8(sp) - c00263e6: e04a sd s2,0(sp) - c00263e8: ec06 sd ra,24(sp) - c00263ea: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27417 + c00265b4: e426 sd s1,8(sp) + c00265b6: e04a sd s2,0(sp) + c00265b8: ec06 sd ra,24(sp) + c00265ba: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27425 name = JS_NewAtom(ctx, export_name); - c00263ec: 854f30ef jal ra,c0019440 - c00263f0: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27419 + c00265bc: 854f30ef jal ra,c0019610 + c00265c0: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27427 return -1; - c00263f4: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27418 + c00265c4: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27426 if (name == JS_ATOM_NULL) - c00263f6: c095 beqz s1,c002641a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27420 + c00265c6: c095 beqz s1,c00265ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27428 me = add_export_entry2(ctx, NULL, m, JS_ATOM_NULL, name, - c00263f8: 8622 mv a2,s0 - c00263fa: 4781 li a5,0 - c00263fc: 8726 mv a4,s1 - c00263fe: 4681 li a3,0 - c0026400: 4581 li a1,0 - c0026402: 854a mv a0,s2 - c0026404: f09ff0ef jal ra,c002630c - c0026408: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27422 + c00265c8: 8622 mv a2,s0 + c00265ca: 4781 li a5,0 + c00265cc: 8726 mv a4,s1 + c00265ce: 4681 li a3,0 + c00265d0: 4581 li a1,0 + c00265d2: 854a mv a0,s2 + c00265d4: f09ff0ef jal ra,c00264dc + c00265d8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27430 JS_FreeAtom(ctx, name); - c002640a: 85a6 mv a1,s1 - c002640c: 854a mv a0,s2 - c002640e: 8fee10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27423 + c00265da: 85a6 mv a1,s1 + c00265dc: 854a mv a0,s2 + c00265de: 81ce10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27431 if (!me) - c0026412: 00143513 seqz a0,s0 - c0026416: 40a00533 neg a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27427 + c00265e2: 00143513 seqz a0,s0 + c00265e6: 40a00533 neg a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27435 } - c002641a: 60e2 ld ra,24(sp) - c002641c: 6442 ld s0,16(sp) - c002641e: 64a2 ld s1,8(sp) - c0026420: 6902 ld s2,0(sp) - c0026422: 6105 addi sp,sp,32 - c0026424: 8082 ret + c00265ea: 60e2 ld ra,24(sp) + c00265ec: 6442 ld s0,16(sp) + c00265ee: 64a2 ld s1,8(sp) + c00265f0: 6902 ld s2,0(sp) + c00265f2: 6105 addi sp,sp,32 + c00265f4: 8082 ret -00000000c0026426 : +00000000c00265f6 : JS_AddModuleExportList(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36917 -{ - c0026426: 7179 addi sp,sp,-48 - c0026428: f022 sd s0,32(sp) - c002642a: ec26 sd s1,24(sp) - c002642c: e84a sd s2,16(sp) - c002642e: e44e sd s3,8(sp) - c0026430: e052 sd s4,0(sp) - c0026432: f406 sd ra,40(sp) - c0026434: 892a mv s2,a0 - c0026436: 89ae mv s3,a1 - c0026438: 8a32 mv s4,a2 - c002643a: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36925 +{ + c00265f6: 7179 addi sp,sp,-48 + c00265f8: f022 sd s0,32(sp) + c00265fa: ec26 sd s1,24(sp) + c00265fc: e84a sd s2,16(sp) + c00265fe: e44e sd s3,8(sp) + c0026600: e052 sd s4,0(sp) + c0026602: f406 sd ra,40(sp) + c0026604: 892a mv s2,a0 + c0026606: 89ae mv s3,a1 + c0026608: 8a32 mv s4,a2 + c002660a: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36927 for(i = 0; i < len; i++) { - c002643c: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36919 (discriminator 1) - c002643e: 0004079b sext.w a5,s0 - c0026442: 0097cb63 blt a5,s1,c0026458 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36923 + c002660c: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36927 (discriminator 1) + c002660e: 0004079b sext.w a5,s0 + c0026612: 0097cb63 blt a5,s1,c0026628 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36931 return 0; - c0026446: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36924 -} - c0026448: 70a2 ld ra,40(sp) - c002644a: 7402 ld s0,32(sp) - c002644c: 64e2 ld s1,24(sp) - c002644e: 6942 ld s2,16(sp) - c0026450: 69a2 ld s3,8(sp) - c0026452: 6a02 ld s4,0(sp) - c0026454: 6145 addi sp,sp,48 - c0026456: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36920 + c0026616: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36932 +} + c0026618: 70a2 ld ra,40(sp) + c002661a: 7402 ld s0,32(sp) + c002661c: 64e2 ld s1,24(sp) + c002661e: 6942 ld s2,16(sp) + c0026620: 69a2 ld s3,8(sp) + c0026622: 6a02 ld s4,0(sp) + c0026624: 6145 addi sp,sp,48 + c0026626: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36928 if (JS_AddModuleExport(ctx, m, tab[i].name)) - c0026458: 00541793 slli a5,s0,0x5 - c002645c: 97d2 add a5,a5,s4 - c002645e: 6390 ld a2,0(a5) - c0026460: 85ce mv a1,s3 - c0026462: 854a mv a0,s2 - c0026464: f79ff0ef jal ra,c00263dc - c0026468: 0405 addi s0,s0,1 - c002646a: d971 beqz a0,c002643e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36921 + c0026628: 00541793 slli a5,s0,0x5 + c002662c: 97d2 add a5,a5,s4 + c002662e: 6390 ld a2,0(a5) + c0026630: 85ce mv a1,s3 + c0026632: 854a mv a0,s2 + c0026634: f79ff0ef jal ra,c00265ac + c0026638: 0405 addi s0,s0,1 + c002663a: d971 beqz a0,c002660e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36929 return -1; - c002646c: 557d li a0,-1 - c002646e: bfe9 j c0026448 + c002663c: 557d li a0,-1 + c002663e: bfe9 j c0026618 -00000000c0026470 : +00000000c0026640 : js_parse_string(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20304 -{ - c0026470: 7135 addi sp,sp,-160 - c0026472: e526 sd s1,136(sp) - c0026474: e14a sd s2,128(sp) - c0026476: fcce sd s3,120(sp) - c0026478: f4d6 sd s5,104(sp) - c002647a: e0ea sd s10,64(sp) - c002647c: ed06 sd ra,152(sp) - c002647e: e922 sd s0,144(sp) - c0026480: f8d2 sd s4,112(sp) - c0026482: f0da sd s6,96(sp) - c0026484: ecde sd s7,88(sp) - c0026486: e8e2 sd s8,80(sp) - c0026488: e4e6 sd s9,72(sp) - c002648a: 8d2a mv s10,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20312 +{ + c0026640: 7135 addi sp,sp,-160 + c0026642: e526 sd s1,136(sp) + c0026644: e14a sd s2,128(sp) + c0026646: fcce sd s3,120(sp) + c0026648: f4d6 sd s5,104(sp) + c002664a: e0ea sd s10,64(sp) + c002664c: ed06 sd ra,152(sp) + c002664e: e922 sd s0,144(sp) + c0026650: f8d2 sd s4,112(sp) + c0026652: f0da sd s6,96(sp) + c0026654: ecde sd s7,88(sp) + c0026656: e8e2 sd s8,80(sp) + c0026658: e4e6 sd s9,72(sp) + c002665a: 8d2a mv s10,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20318 if (string_buffer_init(s->ctx, b, 32)) - c002648c: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20304 + c002665c: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20312 { - c002648e: 84ae mv s1,a1 - c0026490: 8932 mv s2,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20310 + c002665e: 84ae mv s1,a1 + c0026660: 8932 mv s2,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20318 if (string_buffer_init(s->ctx, b, 32)) - c0026492: 100c addi a1,sp,32 - c0026494: 02000613 li a2,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20304 -{ - c0026498: e436 sd a3,8(sp) - c002649a: 89ba mv s3,a4 - c002649c: 8abe mv s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20310 + c0026662: 100c addi a1,sp,32 + c0026664: 02000613 li a2,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20312 +{ + c0026668: e436 sd a3,8(sp) + c002666a: 89ba mv s3,a4 + c002666c: 8abe mv s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20318 if (string_buffer_init(s->ctx, b, 32)) - c002649e: f30f20ef jal ra,c0018bce - c00264a2: ed1d bnez a0,c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20398 + c002666e: f30f20ef jal ra,c0018d9e + c0026672: ed1d bnez a0,c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20406 ret = lre_parse_escape(&p, TRUE); - c00264a4: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20394 + c0026674: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20402 if (c == CP_LS || c == CP_PS) - c00264a6: 7bf9 lui s7,0xffffe - c00264a8: 03ab1c13 slli s8,s6,0x3a - c00264ac: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20333 + c0026676: 7bf9 lui s7,0xffffe + c0026678: 03ab1c13 slli s8,s6,0x3a + c002667c: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20341 if (c == sep) - c00264ae: 00048c9b sext.w s9,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20394 + c002667e: 00048c9b sext.w s9,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20402 if (c == CP_LS || c == CP_PS) - c00264b2: fd8b8b9b addiw s7,s7,-40 - c00264b6: 021c0c13 addi s8,s8,33 # ffffffffffff3021 <_ebss+0xffffffff3fef1efb> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20313 + c0026682: fd8b8b9b addiw s7,s7,-40 + c0026686: 021c0c13 addi s8,s8,33 # ffffffffffff3021 <_ebss+0xffffffff3fef1efb> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20321 if (p >= s->buf_end) - c00264ba: 060d3703 ld a4,96(s10) # 10060 <__clzdi2-0xbffeffa0> - c00264be: 67a2 ld a5,8(sp) - c00264c0: 0ae7fe63 bgeu a5,a4,c002657c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20315 + c002668a: 060d3703 ld a4,96(s10) # 10060 <__clzdi2-0xbffeffa0> + c002668e: 67a2 ld a5,8(sp) + c0026690: 0ae7fe63 bgeu a5,a4,c002674c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20323 c = *p; - c00264c4: 0007c403 lbu s0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20316 + c0026694: 0007c403 lbu s0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20324 if (c < 0x20) { - c00264c8: 46fd li a3,31 - c00264ca: 0286ee63 bltu a3,s0,c0026506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20317 + c0026698: 46fd li a3,31 + c002669a: 0286ee63 bltu a3,s0,c00266d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20325 if (!s->cur_func) { - c00264ce: 068d3683 ld a3,104(s10) - c00264d2: ee81 bnez a3,c00264ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20319 + c002669e: 068d3683 ld a3,104(s10) + c00266a2: ee81 bnez a3,c00266ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20327 js_parse_error(s, "invalid character in a JSON string"); - c00264d4: 00039597 auipc a1,0x39 - c00264d8: 93458593 addi a1,a1,-1740 # c005ee08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20318 + c00266a4: 00039597 auipc a1,0x39 + c00266a8: 9c458593 addi a1,a1,-1596 # c005f068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20326 if (do_throw) - c00264dc: 18091863 bnez s2,c002666c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20437 + c00266ac: 18091863 bnez s2,c002683c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20445 string_buffer_free(b); - c00264e0: 1008 addi a0,sp,32 - c00264e2: 985e00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20438 + c00266b0: 1008 addi a0,sp,32 + c00266b2: 8a3e00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20446 return -1; - c00264e6: 5a7d li s4,-1 - c00264e8: a0ad j c0026552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20322 + c00266b6: 5a7d li s4,-1 + c00266b8: a0ad j c0026722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20330 if (sep == '`') { - c00264ea: 06000693 li a3,96 - c00264ee: 08d49163 bne s1,a3,c0026570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20323 + c00266ba: 06000693 li a3,96 + c00266be: 08d49163 bne s1,a3,c0026740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20331 if (c == '\r') { - c00264f2: 46b5 li a3,13 - c00264f4: 00d41963 bne s0,a3,c0026506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20324 + c00266c2: 46b5 li a3,13 + c00266c4: 00d41963 bne s0,a3,c00266d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20332 if (p[1] == '\n') - c00264f8: 0017c683 lbu a3,1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20326 + c00266c8: 0017c683 lbu a3,1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20334 c = '\n'; - c00264fc: 4429 li s0,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20324 + c00266cc: 4429 li s0,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20332 if (p[1] == '\n') - c00264fe: 00869463 bne a3,s0,c0026506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20325 + c00266ce: 00869463 bne a3,s0,c00266d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20333 p++; - c0026502: 0785 addi a5,a5,1 - c0026504: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20332 + c00266d2: 0785 addi a5,a5,1 + c00266d4: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20340 p++; - c0026506: 66a2 ld a3,8(sp) - c0026508: 00168513 addi a0,a3,1 - c002650c: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20333 + c00266d6: 66a2 ld a3,8(sp) + c00266d8: 00168513 addi a0,a3,1 + c00266dc: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20341 if (c == sep) - c002650e: 028c8263 beq s9,s0,c0026532 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20335 + c00266de: 028c8263 beq s9,s0,c0026702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20343 if (c == '$' && *p == '{' && sep == '`') { - c0026512: 02400793 li a5,36 - c0026516: 06f41a63 bne s0,a5,c002658a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20335 (discriminator 1) - c002651a: 0016c703 lbu a4,1(a3) - c002651e: 07b00793 li a5,123 - c0026522: 0cf71563 bne a4,a5,c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20335 (discriminator 2) - c0026526: 06000793 li a5,96 - c002652a: 0cf49163 bne s1,a5,c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20337 + c00266e2: 02400793 li a5,36 + c00266e6: 06f41a63 bne s0,a5,c002675a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20343 (discriminator 1) + c00266ea: 0016c703 lbu a4,1(a3) + c00266ee: 07b00793 li a5,123 + c00266f2: 0cf71563 bne a4,a5,c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20343 (discriminator 2) + c00266f6: 06000793 li a5,96 + c00266fa: 0cf49163 bne s1,a5,c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20345 p++; - c002652e: 0689 addi a3,a3,2 - c0026530: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20423 + c00266fe: 0689 addi a3,a3,2 + c0026700: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20431 token->val = TOK_STRING; - c0026532: f8100793 li a5,-127 - c0026536: 00f9a023 sw a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20424 + c0026702: f8100793 li a5,-127 + c0026706: 00f9a023 sw a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20432 token->u.str.sep = c; - c002653a: 0289a023 sw s0,32(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20425 + c002670a: 0289a023 sw s0,32(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20433 token->u.str.str = string_buffer_end(b); - c002653e: 1008 addi a0,sp,32 - c0026540: fcaf30ef jal ra,c0019d0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20426 + c002670e: 1008 addi a0,sp,32 + c0026710: fcaf30ef jal ra,c0019eda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20434 *pp = p; - c0026544: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20425 + c0026714: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20433 token->u.str.str = string_buffer_end(b); - c0026546: 00a9b823 sd a0,16(s3) - c002654a: 00b9bc23 sd a1,24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20426 + c0026716: 00a9b823 sd a0,16(s3) + c002671a: 00b9bc23 sd a1,24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20434 *pp = p; - c002654e: 00fab023 sd a5,0(s5) # ffffffffffff2000 <_ebss+0xffffffff3fef0eda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20439 + c002671e: 00fab023 sd a5,0(s5) # ffffffffffff2000 <_ebss+0xffffffff3fef0eda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20447 } - c0026552: 60ea ld ra,152(sp) - c0026554: 644a ld s0,144(sp) - c0026556: 64aa ld s1,136(sp) - c0026558: 690a ld s2,128(sp) - c002655a: 79e6 ld s3,120(sp) - c002655c: 7aa6 ld s5,104(sp) - c002655e: 7b06 ld s6,96(sp) - c0026560: 6be6 ld s7,88(sp) - c0026562: 6c46 ld s8,80(sp) - c0026564: 6ca6 ld s9,72(sp) - c0026566: 6d06 ld s10,64(sp) - c0026568: 8552 mv a0,s4 - c002656a: 7a46 ld s4,112(sp) - c002656c: 610d addi sp,sp,160 - c002656e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20329 + c0026722: 60ea ld ra,152(sp) + c0026724: 644a ld s0,144(sp) + c0026726: 64aa ld s1,136(sp) + c0026728: 690a ld s2,128(sp) + c002672a: 79e6 ld s3,120(sp) + c002672c: 7aa6 ld s5,104(sp) + c002672e: 7b06 ld s6,96(sp) + c0026730: 6be6 ld s7,88(sp) + c0026732: 6c46 ld s8,80(sp) + c0026734: 6ca6 ld s9,72(sp) + c0026736: 6d06 ld s10,64(sp) + c0026738: 8552 mv a0,s4 + c002673a: 7a46 ld s4,112(sp) + c002673c: 610d addi sp,sp,160 + c002673e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20337 } else if (c == '\n' || c == '\r') - c0026570: 47a9 li a5,10 - c0026572: 00f40563 beq s0,a5,c002657c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20329 (discriminator 1) - c0026576: 47b5 li a5,13 - c0026578: f8f417e3 bne s0,a5,c0026506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20434 + c0026740: 47a9 li a5,10 + c0026742: 00f40563 beq s0,a5,c002674c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20337 (discriminator 1) + c0026746: 47b5 li a5,13 + c0026748: f8f417e3 bne s0,a5,c00266d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20442 if (do_throw) - c002657c: f60902e3 beqz s2,c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20435 + c002674c: f60902e3 beqz s2,c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20443 js_parse_error(s, "unexpected end of string"); - c0026580: 00039597 auipc a1,0x39 - c0026584: 93058593 addi a1,a1,-1744 # c005eeb0 - c0026588: a0d5 j c002666c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20340 + c0026750: 00039597 auipc a1,0x39 + c0026754: 9c058593 addi a1,a1,-1600 # c005f110 + c0026758: a0d5 j c002683c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20348 if (c == '\\') { - c002658a: 05c00793 li a5,92 - c002658e: 12f41d63 bne s0,a5,c00266c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20341 + c002675a: 05c00793 li a5,92 + c002675e: 12f41d63 bne s0,a5,c0026898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20349 c = *p; - c0026592: 0016c803 lbu a6,1(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20344 + c0026762: 0016c803 lbu a6,1(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20352 switch(c) { - c0026596: 47b5 li a5,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20341 + c0026766: 47b5 li a5,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20349 c = *p; - c0026598: 0008041b sext.w s0,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20344 + c0026768: 0008041b sext.w s0,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20352 switch(c) { - c002659c: 06f80563 beq a6,a5,c0026606 - c00265a0: 0307e663 bltu a5,a6,c00265cc - c00265a4: 04080b63 beqz a6,c00265fa - c00265a8: 47a9 li a5,10 - c00265aa: 06f80563 beq a6,a5,c0026614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20367 + c002676c: 06f80563 beq a6,a5,c00267d6 + c0026770: 0307e663 bltu a5,a6,c002679c + c0026774: 04080b63 beqz a6,c00267ca + c0026778: 47a9 li a5,10 + c002677a: 06f80563 beq a6,a5,c00267e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20375 if (c >= '0' && c <= '9') { - c00265ae: fd04079b addiw a5,s0,-48 - c00265b2: 4725 li a4,9 - c00265b4: 0cf76563 bltu a4,a5,c002667e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20368 + c002677e: fd04079b addiw a5,s0,-48 + c0026782: 4725 li a4,9 + c0026784: 0cf76563 bltu a4,a5,c002684e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20376 if (!s->cur_func) - c00265b8: 068d3783 ld a5,104(s10) - c00265bc: ebad bnez a5,c002662e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20401 + c0026788: 068d3783 ld a5,104(s10) + c002678c: ebad bnez a5,c00267fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20409 if (do_throw) - c00265be: f20901e3 beqz s2,c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20402 + c002678e: f20901e3 beqz s2,c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20410 js_parse_error(s, "malformed escape sequence in string literal"); - c00265c2: 00039597 auipc a1,0x39 - c00265c6: 8a658593 addi a1,a1,-1882 # c005ee68 - c00265ca: a04d j c002666c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20344 + c0026792: 00039597 auipc a1,0x39 + c0026796: 93658593 addi a1,a1,-1738 # c005f0c8 + c002679a: a04d j c002683c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20352 switch(c) { - c00265cc: fde8081b addiw a6,a6,-34 - c00265d0: 0ff87813 zext.b a6,a6 - c00265d4: 03a00793 li a5,58 - c00265d8: fd07ebe3 bltu a5,a6,c00265ae - c00265dc: 010b1833 sll a6,s6,a6 - c00265e0: 01887833 and a6,a6,s8 - c00265e4: fc0805e3 beqz a6,c00265ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20353 + c002679c: fde8081b addiw a6,a6,-34 + c00267a0: 0ff87813 zext.b a6,a6 + c00267a4: 03a00793 li a5,58 + c00267a8: fd07ebe3 bltu a5,a6,c002677e + c00267ac: 010b1833 sll a6,s6,a6 + c00267b0: 01887833 and a6,a6,s8 + c00267b4: fc0805e3 beqz a6,c002677e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20361 p++; - c00265e8: 0689 addi a3,a3,2 - c00265ea: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20420 + c00267b8: 0689 addi a3,a3,2 + c00267ba: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20428 if (string_buffer_putc(b, c)) - c00265ec: 85a2 mv a1,s0 - c00265ee: 1008 addi a0,sp,32 - c00265f0: c07f20ef jal ra,c00191f6 - c00265f4: ec0503e3 beqz a0,c00264ba - c00265f8: b5e5 j c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20346 + c00267bc: 85a2 mv a1,s0 + c00267be: 1008 addi a0,sp,32 + c00267c0: c07f20ef jal ra,c00193c6 + c00267c4: ec0503e3 beqz a0,c002668a + c00267c8: b5e5 j c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20354 if (p >= s->buf_end) - c00265fa: f8e571e3 bgeu a0,a4,c002657c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20373 + c00267ca: f8e571e3 bgeu a0,a4,c002674c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20381 p++; - c00265fe: 0689 addi a3,a3,2 - c0026600: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20374 + c00267ce: 0689 addi a3,a3,2 + c00267d0: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20382 c = '\0'; - c0026602: 4401 li s0,0 - c0026604: b7e5 j c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20356 + c00267d2: 4401 li s0,0 + c00267d4: b7e5 j c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20364 if (p[1] == '\n') { - c0026606: 0026c703 lbu a4,2(a3) - c002660a: 47a9 li a5,10 - c002660c: 00f71463 bne a4,a5,c0026614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20357 + c00267d6: 0026c703 lbu a4,2(a3) + c00267da: 47a9 li a5,10 + c00267dc: 00f71463 bne a4,a5,c00267e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20365 p++; - c0026610: 0689 addi a3,a3,2 - c0026612: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20362 + c00267e0: 0689 addi a3,a3,2 + c00267e2: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20370 p++; - c0026614: 67a2 ld a5,8(sp) - c0026616: 0785 addi a5,a5,1 - c0026618: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20363 + c00267e4: 67a2 ld a5,8(sp) + c00267e6: 0785 addi a5,a5,1 + c00267e8: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20371 if (sep != '`') - c002661a: 06000793 li a5,96 - c002661e: e8f48ee3 beq s1,a5,c00264ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20364 + c00267ea: 06000793 li a5,96 + c00267ee: e8f48ee3 beq s1,a5,c002668a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20372 s->line_num++; - c0026622: 00cd2783 lw a5,12(s10) - c0026626: 2785 addiw a5,a5,1 - c0026628: 00fd2623 sw a5,12(s10) - c002662c: b579 j c00264ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20370 + c00267f2: 00cd2783 lw a5,12(s10) + c00267f6: 2785 addiw a5,a5,1 + c00267f8: 00fd2623 sw a5,12(s10) + c00267fc: b579 j c002668a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20378 if (!(s->cur_func->js_mode & JS_MODE_STRICT) && sep != '`') - c002662e: 0867c783 lbu a5,134(a5) - c0026632: 8b85 andi a5,a5,1 - c0026634: e789 bnez a5,c002663e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20370 (discriminator 1) - c0026636: 06000793 li a5,96 - c002663a: 06f49763 bne s1,a5,c00266a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20372 + c00267fe: 0867c783 lbu a5,134(a5) + c0026802: 8b85 andi a5,a5,1 + c0026804: e789 bnez a5,c002680e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20378 (discriminator 1) + c0026806: 06000793 li a5,96 + c002680a: 06f49763 bne s1,a5,c0026878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20380 if (c == '0' && !(p[1] >= '0' && p[1] <= '9')) { - c002663e: 03000793 li a5,48 - c0026642: 02f41963 bne s0,a5,c0026674 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20372 (discriminator 1) - c0026646: 0026c783 lbu a5,2(a3) - c002664a: 4725 li a4,9 - c002664c: fd07879b addiw a5,a5,-48 - c0026650: 0ff7f793 zext.b a5,a5 - c0026654: faf765e3 bltu a4,a5,c00265fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20376 (discriminator 1) + c002680e: 03000793 li a5,48 + c0026812: 02f41963 bne s0,a5,c0026844 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20380 (discriminator 1) + c0026816: 0026c783 lbu a5,2(a3) + c002681a: 4725 li a4,9 + c002681c: fd07879b addiw a5,a5,-48 + c0026820: 0ff7f793 zext.b a5,a5 + c0026824: faf765e3 bltu a4,a5,c00267ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20384 (discriminator 1) if (c >= '8' || sep == '`') { - c0026658: 06000793 li a5,96 - c002665c: f6f481e3 beq s1,a5,c00265be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20382 + c0026828: 06000793 li a5,96 + c002682c: f6f481e3 beq s1,a5,c002678e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20390 js_parse_error(s, "octal escape sequences are not allowed in strict mode"); - c0026660: 00038597 auipc a1,0x38 - c0026664: 7d058593 addi a1,a1,2000 # c005ee30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20381 + c0026830: 00039597 auipc a1,0x39 + c0026834: 86058593 addi a1,a1,-1952 # c005f090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20389 if (do_throw) - c0026668: e6090ce3 beqz s2,c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20435 + c0026838: e6090ce3 beqz s2,c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20443 js_parse_error(s, "unexpected end of string"); - c002666c: 856a mv a0,s10 - c002666e: c4bff0ef jal ra,c00262b8 - c0026672: b5bd j c00264e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20376 + c002683c: 856a mv a0,s10 + c002683e: c4bff0ef jal ra,c0026488 + c0026842: b5bd j c00266b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20384 if (c >= '8' || sep == '`') { - c0026674: 03700793 li a5,55 - c0026678: f487e3e3 bltu a5,s0,c00265be - c002667c: bff1 j c0026658 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20386 + c0026844: 03700793 li a5,55 + c0026848: f487e3e3 bltu a5,s0,c002678e + c002684c: bff1 j c0026828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20394 } else if (c >= 0x80) { - c002667e: 07f00793 li a5,127 - c0026682: 0287f363 bgeu a5,s0,c00266a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20388 + c002684e: 07f00793 li a5,127 + c0026852: 0287f363 bgeu a5,s0,c0026878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20396 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p_next); - c0026686: 0830 addi a2,sp,24 - c0026688: 4599 li a1,6 - c002668a: 091210ef jal ra,c0047f1a - c002668e: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20389 + c0026856: 0830 addi a2,sp,24 + c0026858: 4599 li a1,6 + c002685a: 091210ef jal ra,c00480ea + c002685e: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20397 if (c > 0x10FFFF) { - c0026692: 001107b7 lui a5,0x110 - c0026696: 04f47a63 bgeu s0,a5,c00266ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20392 + c0026862: 001107b7 lui a5,0x110 + c0026866: 04f47a63 bgeu s0,a5,c00268ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20400 p = p_next; - c002669a: 67e2 ld a5,24(sp) - c002669c: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20394 + c002686a: 67e2 ld a5,24(sp) + c002686c: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20402 if (c == CP_LS || c == CP_PS) - c002669e: 008b87bb addw a5,s7,s0 - c00266a2: f4fb65e3 bltu s6,a5,c00265ec - c00266a6: bd11 j c00264ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20398 + c002686e: 008b87bb addw a5,s7,s0 + c0026872: f4fb65e3 bltu s6,a5,c00267bc + c0026876: bd11 j c002668a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20406 ret = lre_parse_escape(&p, TRUE); - c00266a8: 4585 li a1,1 - c00266aa: 0028 addi a0,sp,8 - c00266ac: 2651d0ef jal ra,c0044110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20399 + c0026878: 4585 li a1,1 + c002687a: 0028 addi a0,sp,8 + c002687c: 2651d0ef jal ra,c00442e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20407 if (ret == -1) { - c00266b0: 57fd li a5,-1 - c00266b2: f0f506e3 beq a0,a5,c00265be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20404 + c0026880: 57fd li a5,-1 + c0026882: f0f506e3 beq a0,a5,c002678e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20412 } else if (ret < 0) { - c00266b6: 00055663 bgez a0,c00266c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20406 + c0026886: 00055663 bgez a0,c0026892 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20414 p++; - c00266ba: 67a2 ld a5,8(sp) - c00266bc: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20418 + c002688a: 67a2 ld a5,8(sp) + c002688c: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20426 p = p_next; - c00266be: e43e sd a5,8(sp) - c00266c0: b735 j c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20408 + c002688e: e43e sd a5,8(sp) + c0026890: b735 j c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20416 c = ret; - c00266c2: 0005041b sext.w s0,a0 - c00266c6: b71d j c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20413 + c0026892: 0005041b sext.w s0,a0 + c0026896: b71d j c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20421 } else if (c >= 0x80) { - c00266c8: 07f00793 li a5,127 - c00266cc: f287f0e3 bgeu a5,s0,c00265ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20415 + c0026898: 07f00793 li a5,127 + c002689c: f287f0e3 bgeu a5,s0,c00267bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20423 c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); - c00266d0: 0830 addi a2,sp,24 - c00266d2: 4599 li a1,6 - c00266d4: 8536 mv a0,a3 - c00266d6: 045210ef jal ra,c0047f1a - c00266da: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20416 + c00268a0: 0830 addi a2,sp,24 + c00268a2: 4599 li a1,6 + c00268a4: 8536 mv a0,a3 + c00268a6: 045210ef jal ra,c00480ea + c00268aa: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20424 if (c > 0x10FFFF) - c00266de: 001107b7 lui a5,0x110 - c00266e2: 00f47463 bgeu s0,a5,c00266ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20418 + c00268ae: 001107b7 lui a5,0x110 + c00268b2: 00f47463 bgeu s0,a5,c00268ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20426 p = p_next; - c00266e6: 67e2 ld a5,24(sp) - c00266e8: bfd9 j c00266be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20431 + c00268b6: 67e2 ld a5,24(sp) + c00268b8: bfd9 j c002688e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20439 js_parse_error(s, "invalid UTF-8 sequence"); - c00266ea: 00038597 auipc a1,0x38 - c00266ee: 7ae58593 addi a1,a1,1966 # c005ee98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20430 + c00268ba: 00039597 auipc a1,0x39 + c00268be: 83e58593 addi a1,a1,-1986 # c005f0f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20438 if (do_throw) - c00266f2: de0907e3 beqz s2,c00264e0 - c00266f6: bf9d j c002666c + c00268c2: de0907e3 beqz s2,c00266b0 + c00268c6: bf9d j c002683c -00000000c00266f8 : +00000000c00268c8 : json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21200 { - c00266f8: 7151 addi sp,sp,-240 - c00266fa: e5ce sd s3,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21201 + c00268c8: 7151 addi sp,sp,-240 + c00268ca: e5ce sd s3,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 free_token(s, &s->token); - c00266fc: 01850993 addi s3,a0,24 - c0026700: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21192 -{ - c0026702: f1a2 sd s0,224(sp) - c0026704: e9ca sd s2,208(sp) - c0026706: 842a mv s0,a0 - c0026708: e1d2 sd s4,192(sp) - c002670a: f95a sd s6,176(sp) - c002670c: f586 sd ra,232(sp) - c002670e: eda6 sd s1,216(sp) - c0026710: fd56 sd s5,184(sp) - c0026712: f55e sd s7,168(sp) - c0026714: f162 sd s8,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21201 + c00268cc: 01850993 addi s3,a0,24 + c00268d0: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21200 +{ + c00268d2: f1a2 sd s0,224(sp) + c00268d4: e9ca sd s2,208(sp) + c00268d6: 842a mv s0,a0 + c00268d8: e1d2 sd s4,192(sp) + c00268da: f95a sd s6,176(sp) + c00268dc: f586 sd ra,232(sp) + c00268de: eda6 sd s1,216(sp) + c00268e0: fd56 sd s5,184(sp) + c00268e2: f55e sd s7,168(sp) + c00268e4: f162 sd s8,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 free_token(s, &s->token); - c0026716: fc4e20ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21203 + c00268e6: ee2e20ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21211 p = s->last_ptr = s->buf_ptr; - c002671a: 6c3c ld a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21290 + c00268ea: 6c3c ld a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21298 if (c == CP_LS || c == CP_PS) { - c002671c: 7979 lui s2,0xffffe - c002671e: 00039a17 auipc s4,0x39 - c0026722: 802a0a13 addi s4,s4,-2046 # c005ef20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21203 + c00268ec: 7979 lui s2,0xffffe + c00268ee: 00039a17 auipc s4,0x39 + c00268f2: 892a0a13 addi s4,s4,-1902 # c005f180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21211 p = s->last_ptr = s->buf_ptr; - c0026726: e83c sd a5,80(s0) - c0026728: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21204 + c00268f6: e83c sd a5,80(s0) + c00268f8: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21212 s->last_line_num = s->token.line_num; - c002672a: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21285 + c00268fa: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21293 if (*p == '\r' || *p == '\n') - c002672c: 4b35 li s6,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21290 + c00268fc: 4b35 li s6,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21298 if (c == CP_LS || c == CP_PS) { - c002672e: fd89091b addiw s2,s2,-40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21204 + c00268fe: fd89091b addiw s2,s2,-40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21212 s->last_line_num = s->token.line_num; - c0026732: c41c sw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21207 + c0026902: c41c sw a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21215 s->token.ptr = p; - c0026734: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21206 + c0026904: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21214 s->token.line_num = s->line_num; - c0026736: 445c lw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 + c0026906: 445c lw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21217 switch(c) { - c0026738: 03900693 li a3,57 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21207 + c0026908: 03900693 li a3,57 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21215 s->token.ptr = p; - c002673c: f00c sd a1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21206 + c002690c: f00c sd a1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21214 s->token.line_num = s->line_num; - c002673e: cc5c sw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c002690e: cc5c sw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c0026740: 0005c483 lbu s1,0(a1) - c0026744: 00048a9b sext.w s5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 + c0026910: 0005c483 lbu s1,0(a1) + c0026914: 00048a9b sext.w s5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21217 switch(c) { - c0026748: 0696e963 bltu a3,s1,c00267ba - c002674c: 477d li a4,31 - c002674e: 04976063 bltu a4,s1,c002678e - c0026752: 049b7a63 bgeu s6,s1,c00267a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21366 + c0026918: 0696e963 bltu a3,s1,c002698a + c002691c: 477d li a4,31 + c002691e: 04976063 bltu a4,s1,c002695e + c0026922: 049b7a63 bgeu s6,s1,c0026976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21374 _d("json_next_token: c="); print_hex(c); _d("\n");//// - c0026756: 464d li a2,19 - c0026758: 00038597 auipc a1,0x38 - c002675c: 79858593 addi a1,a1,1944 # c005eef0 - c0026760: 4505 li a0,1 - c0026762: 6e7300ef jal ra,c0057648 - c0026766: 8526 mv a0,s1 - c0026768: b9ce00ef jal ra,c0006b04 - c002676c: 4605 li a2,1 - c002676e: 0004a597 auipc a1,0x4a - c0026772: 3d258593 addi a1,a1,978 # c0070b40 - c0026776: 4505 li a0,1 - c0026778: 6d1300ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21367 + c0026926: 464d li a2,19 + c0026928: 00039597 auipc a1,0x39 + c002692c: 82858593 addi a1,a1,-2008 # c005f150 + c0026930: 4505 li a0,1 + c0026932: 6e7300ef jal ra,c0057818 + c0026936: 8526 mv a0,s1 + c0026938: abae00ef jal ra,c0006bf2 + c002693c: 4605 li a2,1 + c002693e: 0004a597 auipc a1,0x4a + c0026942: 46258593 addi a1,a1,1122 # c0070da0 + c0026946: 4505 li a0,1 + c0026948: 6d1300ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21375 if (c >= 128) { - c002677c: 07f00793 li a5,127 - c0026780: 2b57de63 bge a5,s5,c0026a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21368 + c002694c: 07f00793 li a5,127 + c0026950: 2b57de63 bge a5,s5,c0026c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21376 js_parse_error(s, "unexpected character"); - c0026784: 00038597 auipc a1,0x38 - c0026788: 78458593 addi a1,a1,1924 # c005ef08 - c002678c: a2bd j c00268fa - c002678e: fe04879b addiw a5,s1,-32 - c0026792: 0ff7f793 zext.b a5,a5 - c0026796: 4765 li a4,25 - c0026798: faf76fe3 bltu a4,a5,c0026756 - c002679c: 078a slli a5,a5,0x2 - c002679e: 97d2 add a5,a5,s4 - c00267a0: 439c lw a5,0(a5) - c00267a2: 97d2 add a5,a5,s4 - c00267a4: 8782 jr a5 - c00267a6: 00038617 auipc a2,0x38 - c00267aa: 7e260613 addi a2,a2,2018 # c005ef88 - c00267ae: 00249693 slli a3,s1,0x2 - c00267b2: 96b2 add a3,a3,a2 - c00267b4: 4298 lw a4,0(a3) - c00267b6: 9732 add a4,a4,a2 - c00267b8: 8702 jr a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 + c0026954: 00039597 auipc a1,0x39 + c0026958: 81458593 addi a1,a1,-2028 # c005f168 + c002695c: a2bd j c0026aca + c002695e: fe04879b addiw a5,s1,-32 + c0026962: 0ff7f793 zext.b a5,a5 + c0026966: 4765 li a4,25 + c0026968: faf76fe3 bltu a4,a5,c0026926 + c002696c: 078a slli a5,a5,0x2 + c002696e: 97d2 add a5,a5,s4 + c0026970: 439c lw a5,0(a5) + c0026972: 97d2 add a5,a5,s4 + c0026974: 8782 jr a5 + c0026976: 00039617 auipc a2,0x39 + c002697a: 87260613 addi a2,a2,-1934 # c005f1e8 + c002697e: 00249693 slli a3,s1,0x2 + c0026982: 96b2 add a3,a3,a2 + c0026984: 4298 lw a4,0(a3) + c0026986: 9732 add a4,a4,a2 + c0026988: 8702 jr a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21217 switch(c) { - c00267ba: fbf4879b addiw a5,s1,-65 - c00267be: 0ff7f713 zext.b a4,a5 - c00267c2: f8e6eae3 bltu a3,a4,c0026756 - c00267c6: 4785 li a5,1 - c00267c8: 00e797b3 sll a5,a5,a4 - c00267cc: 0004e717 auipc a4,0x4e - c00267d0: 08c73703 ld a4,140(a4) # c0074858 <_erodata+0xd8> - c00267d4: 8ff9 and a5,a5,a4 - c00267d6: d3c1 beqz a5,c0026756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21321 + c002698a: fbf4879b addiw a5,s1,-65 + c002698e: 0ff7f713 zext.b a4,a5 + c0026992: f8e6eae3 bltu a3,a4,c0026926 + c0026996: 4785 li a5,1 + c0026998: 00e797b3 sll a5,a5,a4 + c002699c: 0004e717 auipc a4,0x4e + c00269a0: 11c73703 ld a4,284(a4) # c0074ab8 <_erodata+0xd8> + c00269a4: 8ff9 and a5,a5,a4 + c00269a6: d3c1 beqz a5,c0026926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21329 p++; - c00267d8: 00158913 addi s2,a1,1 + c00269a8: 00158913 addi s2,a1,1 json_parse_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21174 buf = ident_buf; - c00267dc: 02010993 addi s3,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21167 + c00269ac: 02010993 addi s3,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21175 ident_size = sizeof(ident_buf); - c00267e0: 08000793 li a5,128 + c00269b0: 08000793 li a5,128 json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21321 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21329 p++; - c00267e4: e44a sd s2,8(sp) + c00269b4: e44a sd s2,8(sp) json_parse_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21174 buf = ident_buf; - c00267e6: e84e sd s3,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21167 + c00269b6: e84e sd s3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21175 ident_size = sizeof(ident_buf); - c00267e8: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21168 + c00269b8: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21176 ident_pos = 0; - c00267ea: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21172 + c00269ba: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21180 if (c >= 128 || - c00267ec: 07f00a13 li s4,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21173 + c00269bc: 07f00a13 li s4,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21181 !((lre_id_continue_table_ascii[c >> 5] >> (c & 31)) & 1)) - c00267f0: 00041b17 auipc s6,0x41 - c00267f4: ce8b0b13 addi s6,s6,-792 # c00674d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21170 + c00269c0: 00041b17 auipc s6,0x41 + c00269c4: d78b0b13 addi s6,s6,-648 # c0067738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21178 buf[ident_pos++] = c; - c00267f8: 67c2 ld a5,16(sp) - c00267fa: 00170493 addi s1,a4,1 - c00267fe: 97ba add a5,a5,a4 - c0026800: 01578023 sb s5,0(a5) # 110000 <__clzdi2-0xbfef0000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21171 + c00269c8: 67c2 ld a5,16(sp) + c00269ca: 00170493 addi s1,a4,1 + c00269ce: 97ba add a5,a5,a4 + c00269d0: 01578023 sb s5,0(a5) # 110000 <__clzdi2-0xbfef0000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21179 c = *p; - c0026804: 00094683 lbu a3,0(s2) # ffffffffffffe000 <_ebss+0xffffffff3fefceda> - c0026808: 00068a9b sext.w s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21172 + c00269d4: 00094683 lbu a3,0(s2) # ffffffffffffe000 <_ebss+0xffffffff3fefceda> + c00269d8: 00068a9b sext.w s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21180 if (c >= 128 || - c002680c: 18da4e63 blt s4,a3,c00269a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21173 + c00269dc: 18da4e63 blt s4,a3,c0026b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21181 !((lre_id_continue_table_ascii[c >> 5] >> (c & 31)) & 1)) - c0026810: 005ad713 srli a4,s5,0x5 - c0026814: 070a slli a4,a4,0x2 - c0026816: 975a add a4,a4,s6 - c0026818: 431c lw a5,0(a4) - c002681a: 00d7d7bb srlw a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21172 + c00269e0: 005ad713 srli a4,s5,0x5 + c00269e4: 070a slli a4,a4,0x2 + c00269e6: 975a add a4,a4,s6 + c00269e8: 431c lw a5,0(a4) + c00269ea: 00d7d7bb srlw a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21180 if (c >= 128 || - c002681e: 8b85 andi a5,a5,1 - c0026820: 18078463 beqz a5,c00269a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21176 + c00269ee: 8b85 andi a5,a5,1 + c00269f0: 18078463 beqz a5,c0026b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21184 if (unlikely(ident_pos >= ident_size - UTF8_CHAR_LEN_MAX)) { - c0026824: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21175 + c00269f4: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21183 p++; - c0026826: 0905 addi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21176 + c00269f6: 0905 addi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21184 if (unlikely(ident_pos >= ident_size - UTF8_CHAR_LEN_MAX)) { - c0026828: 17e9 addi a5,a5,-6 - c002682a: 16f4ed63 bltu s1,a5,c00269a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21177 + c00269f8: 17e9 addi a5,a5,-6 + c00269fa: 16f4ed63 bltu s1,a5,c0026b74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21185 if (ident_realloc(s->ctx, &buf, &ident_size, ident_buf)) { - c002682e: 6008 ld a0,0(s0) - c0026830: 86ce mv a3,s3 - c0026832: 0830 addi a2,sp,24 - c0026834: 080c addi a1,sp,16 - c0026836: 849f00ef jal ra,c001707e - c002683a: 16050563 beqz a0,c00269a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21178 + c00269fe: 6008 ld a0,0(s0) + c0026a00: 86ce mv a3,s3 + c0026a02: 0830 addi a2,sp,24 + c0026a04: 080c addi a1,sp,16 + c0026a06: 849f00ef jal ra,c001724e + c0026a0a: 16050563 beqz a0,c0026b74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21186 atom = JS_ATOM_NULL; - c002683e: 4481 li s1,0 - c0026840: aa9d j c00269b6 + c0026a0e: 4481 li s1,0 + c0026a10: aa9d j c0026b86 json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21211 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21219 if (p >= s->buf_end) { - c0026842: 703c ld a5,96(s0) - c0026844: 1ef5eb63 bltu a1,a5,c0026a3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21212 + c0026a12: 703c ld a5,96(s0) + c0026a14: 1ef5eb63 bltu a1,a5,c0026c0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21220 s->token.val = TOK_EOF; - c0026848: faa00793 li a5,-86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21328 + c0026a18: faa00793 li a5,-86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21336 s->token.val = TOK_IDENT; - c002684c: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21376 + c0026a1c: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21384 s->buf_ptr = p; - c002684e: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21379 + c0026a1e: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21387 return 0; - c0026850: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21376 - s->buf_ptr = p; - c0026852: ec3c sd a5,88(s0) + c0026a20: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21384 -} - c0026854: 70ae ld ra,232(sp) - c0026856: 740e ld s0,224(sp) - c0026858: 64ee ld s1,216(sp) - c002685a: 694e ld s2,208(sp) - c002685c: 69ae ld s3,200(sp) - c002685e: 6a0e ld s4,192(sp) - c0026860: 7aea ld s5,184(sp) - c0026862: 7b4a ld s6,176(sp) - c0026864: 7baa ld s7,168(sp) - c0026866: 7c0a ld s8,160(sp) - c0026868: 616d addi sp,sp,240 - c002686a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21218 + s->buf_ptr = p; + c0026a22: ec3c sd a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21392 +} + c0026a24: 70ae ld ra,232(sp) + c0026a26: 740e ld s0,224(sp) + c0026a28: 64ee ld s1,216(sp) + c0026a2a: 694e ld s2,208(sp) + c0026a2c: 69ae ld s3,200(sp) + c0026a2e: 6a0e ld s4,192(sp) + c0026a30: 7aea ld s5,184(sp) + c0026a32: 7b4a ld s6,176(sp) + c0026a34: 7baa ld s7,168(sp) + c0026a36: 7c0a ld s8,160(sp) + c0026a38: 616d addi sp,sp,240 + c0026a3a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21226 if (!s->ext_json) { - c002686c: 5c3c lw a5,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c0026a3c: 5c3c lw a5,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c002686e: 02700513 li a0,39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21218 + c0026a3e: 02700513 li a0,39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21226 if (!s->ext_json) { - c0026872: e791 bnez a5,c002687e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c0026a42: e791 bnez a5,c0026a4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c0026874: 02700a93 li s5,39 - c0026878: a2d1 j c0026a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 + c0026a44: 02700a93 li s5,39 + c0026a48: a2d1 j c0026c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21217 switch(c) { - c002687a: 02200513 li a0,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21224 + c0026a4a: 02200513 li a0,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21232 if (js_parse_string(s, c, TRUE, p + 1, &s->token, &p)) - c002687e: 00158693 addi a3,a1,1 - c0026882: 003c addi a5,sp,8 - c0026884: 85aa mv a1,a0 - c0026886: 874e mv a4,s3 - c0026888: 4605 li a2,1 - c002688a: 8522 mv a0,s0 - c002688c: be5ff0ef jal ra,c0026470 - c0026890: dd5d beqz a0,c002684e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21382 + c0026a4e: 00158693 addi a3,a1,1 + c0026a52: 003c addi a5,sp,8 + c0026a54: 85aa mv a1,a0 + c0026a56: 874e mv a4,s3 + c0026a58: 4605 li a2,1 + c0026a5a: 8522 mv a0,s0 + c0026a5c: be5ff0ef jal ra,c0026640 + c0026a60: dd5d beqz a0,c0026a1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21390 s->token.val = TOK_ERROR; - c0026892: fa800793 li a5,-88 - c0026896: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21383 + c0026a62: fa800793 li a5,-88 + c0026a66: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21391 return -1; - c0026898: 557d li a0,-1 - c002689a: bf6d j c0026854 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21228 + c0026a68: 557d li a0,-1 + c0026a6a: bf6d j c0026a24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21236 if (p[1] == '\n') { - c002689c: 0015c683 lbu a3,1(a1) - c00268a0: 4729 li a4,10 - c00268a2: 00e69463 bne a3,a4,c00268aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21224 + c0026a6c: 0015c683 lbu a3,1(a1) + c0026a70: 4729 li a4,10 + c0026a72: 00e69463 bne a3,a4,c0026a7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21232 if (js_parse_string(s, c, TRUE, p + 1, &s->token, &p)) - c00268a6: 0585 addi a1,a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21229 + c0026a76: 0585 addi a1,a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21237 p++; - c00268a8: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21233 + c0026a78: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21241 p++; - c00268aa: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21234 + c0026a7a: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21242 s->line_num++; - c00268ac: 2785 addiw a5,a5,1 - c00268ae: c45c sw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21233 + c0026a7c: 2785 addiw a5,a5,1 + c0026a7e: c45c sw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21241 p++; - c00268b0: 0705 addi a4,a4,1 - c00268b2: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21235 + c0026a80: 0705 addi a4,a4,1 + c0026a82: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21243 goto redo; - c00268b4: b541 j c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21238 + c0026a84: b541 j c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21246 if (!s->ext_json) { - c00268b6: 5c3c lw a5,120(s0) - c00268b8: 18078263 beqz a5,c0026a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21245 + c0026a86: 5c3c lw a5,120(s0) + c0026a88: 18078263 beqz a5,c0026c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21253 p++; - c00268bc: 0585 addi a1,a1,1 - c00268be: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21246 + c0026a8c: 0585 addi a1,a1,1 + c0026a8e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21254 goto redo; - c00268c0: bd95 j c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21248 + c0026a90: bd95 j c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21256 if (!s->ext_json) { - c00268c2: 5c3c lw a5,120(s0) - c00268c4: 18078263 beqz a5,c0026a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21252 + c0026a92: 5c3c lw a5,120(s0) + c0026a94: 18078263 beqz a5,c0026c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21260 if (p[1] == '*') { - c00268c8: 0015c783 lbu a5,1(a1) - c00268cc: 02a00713 li a4,42 - c00268d0: 06e79c63 bne a5,a4,c0026948 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21254 + c0026a98: 0015c783 lbu a5,1(a1) + c0026a9c: 02a00713 li a4,42 + c0026aa0: 06e79c63 bne a5,a4,c0026b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21262 p += 2; - c00268d4: 0589 addi a1,a1,2 - c00268d6: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21260 + c0026aa4: 0589 addi a1,a1,2 + c0026aa6: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21268 if (p[0] == '*' && p[1] == '/') { - c00268d8: 02a00493 li s1,42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21264 + c0026aa8: 02a00493 li s1,42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21272 if (*p == '\n') { - c00268dc: 4aa9 li s5,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21271 + c0026aac: 4aa9 li s5,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21279 if (c == -1) { - c00268de: 5bfd li s7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21260 + c0026aae: 5bfd li s7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21268 if (p[0] == '*' && p[1] == '/') { - c00268e0: 02f00c13 li s8,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21256 + c0026ab0: 02f00c13 li s8,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21264 if (*p == '\0' && p >= s->buf_end) { - c00268e4: 6522 ld a0,8(sp) - c00268e6: 00054783 lbu a5,0(a0) - c00268ea: ef81 bnez a5,c0026902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21256 (discriminator 1) - c00268ec: 703c ld a5,96(s0) - c00268ee: 02f56863 bltu a0,a5,c002691e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21257 + c0026ab4: 6522 ld a0,8(sp) + c0026ab6: 00054783 lbu a5,0(a0) + c0026aba: ef81 bnez a5,c0026ad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21264 (discriminator 1) + c0026abc: 703c ld a5,96(s0) + c0026abe: 02f56863 bltu a0,a5,c0026aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21265 js_parse_error(s, "unexpected end of comment"); - c00268f2: 00038597 auipc a1,0x38 - c00268f6: 5de58593 addi a1,a1,1502 # c005eed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21368 + c0026ac2: 00038597 auipc a1,0x38 + c0026ac6: 66e58593 addi a1,a1,1646 # c005f130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21376 js_parse_error(s, "unexpected character"); - c00268fa: 8522 mv a0,s0 - c00268fc: 9bdff0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21369 + c0026aca: 8522 mv a0,s0 + c0026acc: 9bdff0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21377 goto fail; - c0026900: bf49 j c0026892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21260 + c0026ad0: bf49 j c0026a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21268 if (p[0] == '*' && p[1] == '/') { - c0026902: 00979963 bne a5,s1,c0026914 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21260 (discriminator 1) - c0026906: 00154783 lbu a5,1(a0) - c002690a: 01879a63 bne a5,s8,c002691e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21261 + c0026ad2: 00979963 bne a5,s1,c0026ae4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21268 (discriminator 1) + c0026ad6: 00154783 lbu a5,1(a0) + c0026ada: 01879a63 bne a5,s8,c0026aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21269 p += 2; - c002690e: 0509 addi a0,a0,2 - c0026910: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21278 + c0026ade: 0509 addi a0,a0,2 + c0026ae0: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21286 goto redo; - c0026912: b50d j c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21264 + c0026ae2: b50d j c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21272 if (*p == '\n') { - c0026914: 01579863 bne a5,s5,c0026924 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21265 + c0026ae4: 01579863 bne a5,s5,c0026af4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21273 s->line_num++; - c0026918: 445c lw a5,12(s0) - c002691a: 2785 addiw a5,a5,1 - c002691c: c45c sw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21275 + c0026ae8: 445c lw a5,12(s0) + c0026aea: 2785 addiw a5,a5,1 + c0026aec: c45c sw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21283 p++; - c002691e: 0505 addi a0,a0,1 - c0026920: e42a sd a0,8(sp) - c0026922: b7c9 j c00268e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21267 + c0026aee: 0505 addi a0,a0,1 + c0026af0: e42a sd a0,8(sp) + c0026af2: b7c9 j c0026ab4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21275 } else if (*p == '\r') { - c0026924: ff678de3 beq a5,s6,c002691e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21269 + c0026af4: ff678de3 beq a5,s6,c0026aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21277 } else if (*p >= 0x80) { - c0026928: 0187979b slliw a5,a5,0x18 - c002692c: 4187d79b sraiw a5,a5,0x18 - c0026930: fe07d7e3 bgez a5,c002691e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21270 + c0026af8: 0187979b slliw a5,a5,0x18 + c0026afc: 4187d79b sraiw a5,a5,0x18 + c0026b00: fe07d7e3 bgez a5,c0026aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21278 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0026934: 0030 addi a2,sp,8 - c0026936: 4599 li a1,6 - c0026938: 5e2210ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21271 + c0026b04: 0030 addi a2,sp,8 + c0026b06: 4599 li a1,6 + c0026b08: 5e2210ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21279 if (c == -1) { - c002693c: fb7514e3 bne a0,s7,c00268e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21272 + c0026b0c: fb7514e3 bne a0,s7,c0026ab4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21280 p++; /* skip invalid UTF-8 */ - c0026940: 67a2 ld a5,8(sp) - c0026942: 0785 addi a5,a5,1 - c0026944: e43e sd a5,8(sp) - c0026946: bf79 j c00268e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21279 + c0026b10: 67a2 ld a5,8(sp) + c0026b12: 0785 addi a5,a5,1 + c0026b14: e43e sd a5,8(sp) + c0026b16: bf79 j c0026ab4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21287 } else if (p[1] == '/') { - c0026948: 02f00713 li a4,47 - c002694c: 0ee79e63 bne a5,a4,c0026a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21281 + c0026b18: 02f00713 li a4,47 + c0026b1c: 0ee79e63 bne a5,a4,c0026c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21289 p += 2; - c0026950: 0589 addi a1,a1,2 - c0026952: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21285 + c0026b20: 0589 addi a1,a1,2 + c0026b22: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21293 if (*p == '\r' || *p == '\n') - c0026954: 44a9 li s1,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21290 + c0026b24: 44a9 li s1,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21298 if (c == CP_LS || c == CP_PS) { - c0026956: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21292 + c0026b26: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21300 } else if (c == -1) { - c0026958: 5bfd li s7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21283 + c0026b28: 5bfd li s7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21291 if (*p == '\0' && p >= s->buf_end) - c002695a: 6522 ld a0,8(sp) - c002695c: 00054783 lbu a5,0(a0) - c0026960: e799 bnez a5,c002696e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21283 (discriminator 1) - c0026962: 703c ld a5,96(s0) - c0026964: dcf578e3 bgeu a0,a5,c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21296 + c0026b2a: 6522 ld a0,8(sp) + c0026b2c: 00054783 lbu a5,0(a0) + c0026b30: e799 bnez a5,c0026b3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21291 (discriminator 1) + c0026b32: 703c ld a5,96(s0) + c0026b34: dcf578e3 bgeu a0,a5,c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21304 p++; - c0026968: 0505 addi a0,a0,1 - c002696a: e42a sd a0,8(sp) - c002696c: b7fd j c002695a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21285 + c0026b38: 0505 addi a0,a0,1 + c0026b3a: e42a sd a0,8(sp) + c0026b3c: b7fd j c0026b2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21293 if (*p == '\r' || *p == '\n') - c002696e: dd6783e3 beq a5,s6,c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21285 (discriminator 1) - c0026972: dc9781e3 beq a5,s1,c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21287 + c0026b3e: dd6783e3 beq a5,s6,c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21293 (discriminator 1) + c0026b42: dc9781e3 beq a5,s1,c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21295 if (*p >= 0x80) { - c0026976: 0187979b slliw a5,a5,0x18 - c002697a: 4187d79b sraiw a5,a5,0x18 - c002697e: fe07d5e3 bgez a5,c0026968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21288 + c0026b46: 0187979b slliw a5,a5,0x18 + c0026b4a: 4187d79b sraiw a5,a5,0x18 + c0026b4e: fe07d5e3 bgez a5,c0026b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21296 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0026982: 0030 addi a2,sp,8 - c0026984: 4599 li a1,6 - c0026986: 594210ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21290 + c0026b52: 0030 addi a2,sp,8 + c0026b54: 4599 li a1,6 + c0026b56: 594210ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21298 if (c == CP_LS || c == CP_PS) { - c002698a: 00a907bb addw a5,s2,a0 - c002698e: dafaf3e3 bgeu s5,a5,c0026734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21292 + c0026b5a: 00a907bb addw a5,s2,a0 + c0026b5e: dafaf3e3 bgeu s5,a5,c0026904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21300 } else if (c == -1) { - c0026992: fd7514e3 bne a0,s7,c002695a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21293 + c0026b62: fd7514e3 bne a0,s7,c0026b2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21301 p++; /* skip invalid UTF-8 */ - c0026996: 67a2 ld a5,8(sp) - c0026998: 0785 addi a5,a5,1 - c002699a: e43e sd a5,8(sp) - c002699c: bf7d j c002695a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21209 + c0026b66: 67a2 ld a5,8(sp) + c0026b68: 0785 addi a5,a5,1 + c0026b6a: e43e sd a5,8(sp) + c0026b6c: bf7d j c0026b2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21217 switch(c) { - c002699e: 02400a93 li s5,36 - c00269a2: bd1d j c00267d8 + c0026b6e: 02400a93 li s5,36 + c0026b72: bd1d j c00269a8 json_parse_ident(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21178 buf[ident_pos++] = c; - c00269a4: 8726 mv a4,s1 - c00269a6: bd89 j c00267f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21183 + c0026b74: 8726 mv a4,s1 + c0026b76: bd89 j c00269c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21191 atom = JS_NewAtomLen(s->ctx, buf, ident_pos); - c00269a8: 65c2 ld a1,16(sp) - c00269aa: 6008 ld a0,0(s0) - c00269ac: 8626 mv a2,s1 - c00269ae: a41f20ef jal ra,c00193ee - c00269b2: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21185 + c0026b78: 65c2 ld a1,16(sp) + c0026b7a: 6008 ld a0,0(s0) + c0026b7c: 8626 mv a2,s1 + c0026b7e: a41f20ef jal ra,c00195be + c0026b82: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21193 if (unlikely(buf != ident_buf)) - c00269b6: 65c2 ld a1,16(sp) - c00269b8: 01358563 beq a1,s3,c00269c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21186 + c0026b86: 65c2 ld a1,16(sp) + c0026b88: 01358563 beq a1,s3,c0026b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21194 js_free(s->ctx, buf); - c00269bc: 6008 ld a0,0(s0) - c00269be: c7ce00ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21187 + c0026b8c: 6008 ld a0,0(s0) + c0026b8e: b9ae00ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21195 *pp = p; - c00269c2: e44a sd s2,8(sp) + c0026b92: e44a sd s2,8(sp) json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21331 if (atom == JS_ATOM_NULL) - c00269c4: ec0487e3 beqz s1,c0026892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21325 + c0026b94: ec0487e3 beqz s1,c0026a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21333 s->token.u.ident.atom = atom; - c00269c8: d404 sw s1,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21326 + c0026b98: d404 sw s1,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21334 s->token.u.ident.has_escape = FALSE; - c00269ca: 02042623 sw zero,44(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21327 + c0026b9a: 02042623 sw zero,44(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21335 s->token.u.ident.is_reserved = FALSE; - c00269ce: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21328 + c0026b9e: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21336 s->token.val = TOK_IDENT; - c00269d2: f8300793 li a5,-125 - c00269d6: bd9d j c002684c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21331 + c0026ba2: f8300793 li a5,-125 + c0026ba6: bd9d j c0026a1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21339 if (!s->ext_json || !is_digit(p[1])) - c00269d8: 5c3c lw a5,120(s0) - c00269da: cbb5 beqz a5,c0026a4e + c0026ba8: 5c3c lw a5,120(s0) + c0026baa: cbb5 beqz a5,c0026c1e is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 (discriminator 1) return c >= '0' && c <= '9'; - c00269dc: 0015c783 lbu a5,1(a1) + c0026bac: 0015c783 lbu a5,1(a1) json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21331 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21339 (discriminator 1) if (!s->ext_json || !is_digit(p[1])) - c00269e0: 4725 li a4,9 - c00269e2: fd07879b addiw a5,a5,-48 - c00269e6: 06f76463 bltu a4,a5,c0026a4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21350 + c0026bb0: 4725 li a4,9 + c0026bb2: fd07879b addiw a5,a5,-48 + c0026bb6: 06f76463 bltu a4,a5,c0026c1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21358 if (!s->ext_json) { - c00269ea: 5c38 lw a4,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21352 + c0026bba: 5c38 lw a4,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21360 radix = 10; - c00269ec: 46a9 li a3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21350 + c0026bbc: 46a9 li a3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21358 if (!s->ext_json) { - c00269ee: c319 beqz a4,c00269f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21355 + c0026bbe: c319 beqz a4,c0026bc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21363 radix = 0; - c00269f0: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21354 + c0026bc0: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21362 flags = ATOD_ACCEPT_BIN_OCT; - c00269f2: 4711 li a4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21357 + c0026bc2: 4711 li a4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21365 ret = js_atof(s->ctx, (const char *)p, (const char **)&p, radix, - c00269f4: 6008 ld a0,0(s0) - c00269f6: 0030 addi a2,sp,8 - c00269f8: be5f10ef jal ra,c00185dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21359 + c0026bc4: 6008 ld a0,0(s0) + c0026bc6: 0030 addi a2,sp,8 + c0026bc8: be5f10ef jal ra,c00187ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21367 if (JS_IsException(ret)) - c00269fc: 0005871b sext.w a4,a1 - c0026a00: 4799 li a5,6 - c0026a02: e8f708e3 beq a4,a5,c0026892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21361 + c0026bcc: 0005871b sext.w a4,a1 + c0026bd0: 4799 li a5,6 + c0026bd2: e8f708e3 beq a4,a5,c0026a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21369 s->token.val = TOK_NUMBER; - c0026a06: f8000793 li a5,-128 - c0026a0a: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21362 + c0026bd6: f8000793 li a5,-128 + c0026bda: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21370 s->token.u.num.val = ret; - c0026a0c: f408 sd a0,40(s0) - c0026a0e: f80c sd a1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21364 + c0026bdc: f408 sd a0,40(s0) + c0026bde: f80c sd a1,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21372 break; - c0026a10: bd3d j c002684e + c0026be0: bd3d j c0026a1e is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 return c >= '0' && c <= '9'; - c0026a12: 0015c783 lbu a5,1(a1) + c0026be2: 0015c783 lbu a5,1(a1) json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21335 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21343 if (is_digit(p[1])) - c0026a16: 4725 li a4,9 - c0026a18: fd07879b addiw a5,a5,-48 - c0026a1c: fcf767e3 bltu a4,a5,c00269ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c0026be6: 4725 li a4,9 + c0026be8: fd07879b addiw a5,a5,-48 + c0026bec: fcf767e3 bltu a4,a5,c0026bba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c0026a20: 03000a93 li s5,48 - c0026a24: a821 j c0026a3c + c0026bf0: 03000a93 li s5,48 + c0026bf4: a821 j c0026c0c is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 return c >= '0' && c <= '9'; - c0026a26: 0015c783 lbu a5,1(a1) + c0026bf6: 0015c783 lbu a5,1(a1) json_next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21339 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21347 if (!is_digit(p[1])) - c0026a2a: 4725 li a4,9 - c0026a2c: fd07879b addiw a5,a5,-48 - c0026a30: faf77de3 bgeu a4,a5,c00269ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c0026bfa: 4725 li a4,9 + c0026bfc: fd07879b addiw a5,a5,-48 + c0026c00: faf77de3 bgeu a4,a5,c0026bba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c0026a34: 02d00a93 li s5,45 - c0026a38: a011 j c0026a3c - c0026a3a: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21373 + c0026c04: 02d00a93 li s5,45 + c0026c08: a011 j c0026c0c + c0026c0a: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21381 p++; - c0026a3c: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21372 + c0026c0c: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21380 s->token.val = c; - c0026a3e: 01542c23 sw s5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21373 + c0026c0e: 01542c23 sw s5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21381 p++; - c0026a42: 0785 addi a5,a5,1 - c0026a44: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21374 + c0026c12: 0785 addi a5,a5,1 + c0026c14: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21382 break; - c0026a46: b521 j c002684e - c0026a48: 02f00a93 li s5,47 - c0026a4c: bfc5 j c0026a3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21208 + c0026c16: b521 j c0026a1e + c0026c18: 02f00a93 li s5,47 + c0026c1c: bfc5 j c0026c0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21216 c = *p; - c0026a4e: 02b00a93 li s5,43 - c0026a52: b7ed j c0026a3c + c0026c1e: 02b00a93 li s5,43 + c0026c22: b7ed j c0026c0c -00000000c0026a54 : +00000000c0026c24 : json_parse_expect(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44949 if (s->token.val != tok) { - c0026a54: 4d1c lw a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44940 + c0026c24: 4d1c lw a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44948 { - c0026a56: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44941 + c0026c26: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44949 if (s->token.val != tok) { - c0026a58: 00b78863 beq a5,a1,c0026a68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44943 + c0026c28: 00b78863 beq a5,a1,c0026c38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44951 return js_parse_error(s, "expecting '%c'", tok); - c0026a5c: 00038597 auipc a1,0x38 - c0026a60: 56458593 addi a1,a1,1380 # c005efc0 - c0026a64: 855ff06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44945 + c0026c2c: 00038597 auipc a1,0x38 + c0026c30: 5f458593 addi a1,a1,1524 # c005f220 + c0026c34: 855ff06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44953 return json_next_token(s); - c0026a68: c91ff06f j c00266f8 + c0026c38: c91ff06f j c00268c8 -00000000c0026a6c : +00000000c0026c3c : js_parse_template_part(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20241 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20249 { - c0026a6c: 7175 addi sp,sp,-144 - c0026a6e: e122 sd s0,128(sp) - c0026a70: f86a sd s10,48(sp) - c0026a72: e506 sd ra,136(sp) - c0026a74: fca6 sd s1,120(sp) - c0026a76: f8ca sd s2,112(sp) - c0026a78: f4ce sd s3,104(sp) - c0026a7a: f0d2 sd s4,96(sp) - c0026a7c: ecd6 sd s5,88(sp) - c0026a7e: e8da sd s6,80(sp) - c0026a80: e4de sd s7,72(sp) - c0026a82: e0e2 sd s8,64(sp) - c0026a84: fc66 sd s9,56(sp) - c0026a86: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20246 + c0026c3c: 7175 addi sp,sp,-144 + c0026c3e: e122 sd s0,128(sp) + c0026c40: f86a sd s10,48(sp) + c0026c42: e506 sd ra,136(sp) + c0026c44: fca6 sd s1,120(sp) + c0026c46: f8ca sd s2,112(sp) + c0026c48: f4ce sd s3,104(sp) + c0026c4a: f0d2 sd s4,96(sp) + c0026c4c: ecd6 sd s5,88(sp) + c0026c4e: e8da sd s6,80(sp) + c0026c50: e4de sd s7,72(sp) + c0026c52: e0e2 sd s8,64(sp) + c0026c54: fc66 sd s9,56(sp) + c0026c56: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20254 if (string_buffer_init(s->ctx, b, 32)) - c0026a88: 6108 ld a0,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20241 + c0026c58: 6108 ld a0,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20249 { - c0026a8a: 8d2e mv s10,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20246 + c0026c5a: 8d2e mv s10,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20254 if (string_buffer_init(s->ctx, b, 32)) - c0026a8c: 02000613 li a2,32 - c0026a90: 080c addi a1,sp,16 - c0026a92: 93cf20ef jal ra,c0018bce - c0026a96: e16d bnez a0,c0026b78 - c0026a98: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20252 + c0026c5c: 02000613 li a2,32 + c0026c60: 080c addi a1,sp,16 + c0026c62: 93cf20ef jal ra,c0018d9e + c0026c66: e16d bnez a0,c0026d48 + c0026c68: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20260 if (c == '`') { - c0026a9a: 06000a13 li s4,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20256 + c0026c6a: 06000a13 li s4,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20264 if (c == '$' && *p == '{') { - c0026a9e: 02400a93 li s5,36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20261 - if (c == '\\') { - c0026aa2: 05c00b13 li s6,92 + c0026c6e: 02400a93 li s5,36 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20269 + if (c == '\\') { + c0026c72: 05c00b13 li s6,92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20277 if (c == '\r') { - c0026aa6: 4bb5 li s7,13 - c0026aa8: 49a9 li s3,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20276 + c0026c76: 4bb5 li s7,13 + c0026c78: 49a9 li s3,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20284 } else if (c >= 0x80) { - c0026aaa: 07f00c13 li s8,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20279 + c0026c7a: 07f00c13 li s8,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20287 if (c > 0x10FFFF) { - c0026aae: 00110cb7 lui s9,0x110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20249 + c0026c7e: 00110cb7 lui s9,0x110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20257 if (p >= s->buf_end) - c0026ab2: 703c ld a5,96(s0) - c0026ab4: 0cfd7c63 bgeu s10,a5,c0026b8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20251 + c0026c82: 703c ld a5,96(s0) + c0026c84: 0cfd7c63 bgeu s10,a5,c0026d5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20259 c = *p++; - c0026ab8: 000d4583 lbu a1,0(s10) - c0026abc: 001d0493 addi s1,s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20252 + c0026c88: 000d4583 lbu a1,0(s10) + c0026c8c: 001d0493 addi s1,s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20260 if (c == '`') { - c0026ac0: 0d458363 beq a1,s4,c0026b86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20256 + c0026c90: 0d458363 beq a1,s4,c0026d56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20264 if (c == '$' && *p == '{') { - c0026ac4: 05559563 bne a1,s5,c0026b0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20256 (discriminator 1) - c0026ac8: 001d4703 lbu a4,1(s10) - c0026acc: 07b00793 li a5,123 - c0026ad0: 06f71963 bne a4,a5,c0026b42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20258 + c0026c94: 05559563 bne a1,s5,c0026cde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20264 (discriminator 1) + c0026c98: 001d4703 lbu a4,1(s10) + c0026c9c: 07b00793 li a5,123 + c0026ca0: 06f71963 bne a4,a5,c0026d12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20266 p++; - c0026ad4: 002d0493 addi s1,s10,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20251 + c0026ca4: 002d0493 addi s1,s10,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20259 c = *p++; - c0026ad8: 02400793 li a5,36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20288 + c0026ca8: 02400793 li a5,36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20296 s->token.val = TOK_TEMPLATE; - c0026adc: f8200713 li a4,-126 - c0026ae0: cc18 sw a4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20289 + c0026cac: f8200713 li a4,-126 + c0026cb0: cc18 sw a4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20297 s->token.u.str.sep = c; - c0026ae2: dc1c sw a5,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20290 + c0026cb2: dc1c sw a5,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20298 s->token.u.str.str = string_buffer_end(b); - c0026ae4: 0808 addi a0,sp,16 - c0026ae6: a24f30ef jal ra,c0019d0a - c0026aea: f408 sd a0,40(s0) - c0026aec: f80c sd a1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20291 - s->buf_ptr = p; - c0026aee: ec24 sd s1,88(s0) + c0026cb4: 0808 addi a0,sp,16 + c0026cb6: a24f30ef jal ra,c0019eda + c0026cba: f408 sd a0,40(s0) + c0026cbc: f80c sd a1,48(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20299 -} - c0026af0: 60aa ld ra,136(sp) - c0026af2: 640a ld s0,128(sp) - c0026af4: 74e6 ld s1,120(sp) - c0026af6: 79a6 ld s3,104(sp) - c0026af8: 7a06 ld s4,96(sp) - c0026afa: 6ae6 ld s5,88(sp) - c0026afc: 6b46 ld s6,80(sp) - c0026afe: 6ba6 ld s7,72(sp) - c0026b00: 6c06 ld s8,64(sp) - c0026b02: 7ce2 ld s9,56(sp) - c0026b04: 7d42 ld s10,48(sp) - c0026b06: 854a mv a0,s2 - c0026b08: 7946 ld s2,112(sp) - c0026b0a: 6149 addi sp,sp,144 - c0026b0c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20261 + s->buf_ptr = p; + c0026cbe: ec24 sd s1,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20307 +} + c0026cc0: 60aa ld ra,136(sp) + c0026cc2: 640a ld s0,128(sp) + c0026cc4: 74e6 ld s1,120(sp) + c0026cc6: 79a6 ld s3,104(sp) + c0026cc8: 7a06 ld s4,96(sp) + c0026cca: 6ae6 ld s5,88(sp) + c0026ccc: 6b46 ld s6,80(sp) + c0026cce: 6ba6 ld s7,72(sp) + c0026cd0: 6c06 ld s8,64(sp) + c0026cd2: 7ce2 ld s9,56(sp) + c0026cd4: 7d42 ld s10,48(sp) + c0026cd6: 854a mv a0,s2 + c0026cd8: 7946 ld s2,112(sp) + c0026cda: 6149 addi sp,sp,144 + c0026cdc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20269 if (c == '\\') { - c0026b0e: 01659f63 bne a1,s6,c0026b2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20262 + c0026cde: 01659f63 bne a1,s6,c0026cfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20270 if (string_buffer_putc8(b, c)) - c0026b12: 05c00593 li a1,92 - c0026b16: 0808 addi a0,sp,16 - c0026b18: dcef20ef jal ra,c00190e6 - c0026b1c: ed31 bnez a0,c0026b78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20264 + c0026ce2: 05c00593 li a1,92 + c0026ce6: 0808 addi a0,sp,16 + c0026ce8: dcef20ef jal ra,c00192b6 + c0026cec: ed31 bnez a0,c0026d48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20272 if (p >= s->buf_end) - c0026b1e: 703c ld a5,96(s0) - c0026b20: 06f4f663 bgeu s1,a5,c0026b8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20266 + c0026cee: 703c ld a5,96(s0) + c0026cf0: 06f4f663 bgeu s1,a5,c0026d5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20274 c = *p++; - c0026b24: 001d4583 lbu a1,1(s10) - c0026b28: 002d0493 addi s1,s10,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20269 + c0026cf4: 001d4583 lbu a1,1(s10) + c0026cf8: 002d0493 addi s1,s10,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20277 if (c == '\r') { - c0026b2c: 03759163 bne a1,s7,c0026b4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20270 + c0026cfc: 03759163 bne a1,s7,c0026d1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20278 if (*p == '\n') - c0026b30: 0004c783 lbu a5,0(s1) - c0026b34: 01379363 bne a5,s3,c0026b3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20271 + c0026d00: 0004c783 lbu a5,0(s1) + c0026d04: 01379363 bne a5,s3,c0026d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20279 p++; - c0026b38: 0485 addi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20275 + c0026d08: 0485 addi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20283 s->line_num++; - c0026b3a: 445c lw a5,12(s0) - c0026b3c: 45a9 li a1,10 - c0026b3e: 2785 addiw a5,a5,1 - c0026b40: c45c sw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20285 + c0026d0a: 445c lw a5,12(s0) + c0026d0c: 45a9 li a1,10 + c0026d0e: 2785 addiw a5,a5,1 + c0026d10: c45c sw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20293 if (string_buffer_putc(b, c)) - c0026b42: 0808 addi a0,sp,16 - c0026b44: eb2f20ef jal ra,c00191f6 - c0026b48: e905 bnez a0,c0026b78 - c0026b4a: 8d26 mv s10,s1 - c0026b4c: b79d j c0026ab2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20274 + c0026d12: 0808 addi a0,sp,16 + c0026d14: eb2f20ef jal ra,c00193c6 + c0026d18: e905 bnez a0,c0026d48 + c0026d1a: 8d26 mv s10,s1 + c0026d1c: b79d j c0026c82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20282 if (c == '\n') { - c0026b4e: ff3586e3 beq a1,s3,c0026b3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20276 + c0026d1e: ff3586e3 beq a1,s3,c0026d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20284 } else if (c >= 0x80) { - c0026b52: febc78e3 bgeu s8,a1,c0026b42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20278 + c0026d22: febc78e3 bgeu s8,a1,c0026d12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20286 c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); - c0026b56: 4599 li a1,6 - c0026b58: 0030 addi a2,sp,8 - c0026b5a: fff48513 addi a0,s1,-1 - c0026b5e: 3bc210ef jal ra,c0047f1a - c0026b62: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20279 + c0026d26: 4599 li a1,6 + c0026d28: 0030 addi a2,sp,8 + c0026d2a: fff48513 addi a0,s1,-1 + c0026d2e: 3bc210ef jal ra,c00480ea + c0026d32: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20287 if (c > 0x10FFFF) { - c0026b66: 0195ee63 bltu a1,s9,c0026b82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20280 + c0026d36: 0195ee63 bltu a1,s9,c0026d52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20288 js_parse_error(s, "invalid UTF-8 sequence"); - c0026b6a: 00038597 auipc a1,0x38 - c0026b6e: 32e58593 addi a1,a1,814 # c005ee98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20295 + c0026d3a: 00038597 auipc a1,0x38 + c0026d3e: 3be58593 addi a1,a1,958 # c005f0f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20303 js_parse_error(s, "unexpected end of string"); - c0026b72: 8522 mv a0,s0 - c0026b74: f44ff0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20297 + c0026d42: 8522 mv a0,s0 + c0026d44: f44ff0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20305 string_buffer_free(b); - c0026b78: 0808 addi a0,sp,16 - c0026b7a: aece00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20298 + c0026d48: 0808 addi a0,sp,16 + c0026d4a: a0ae00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20306 return -1; - c0026b7e: 597d li s2,-1 - c0026b80: bf85 j c0026af0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20283 + c0026d4e: 597d li s2,-1 + c0026d50: bf85 j c0026cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20291 p = p_next; - c0026b82: 64a2 ld s1,8(sp) - c0026b84: bf7d j c0026b42 - c0026b86: 06000793 li a5,96 - c0026b8a: bf89 j c0026adc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20295 + c0026d52: 64a2 ld s1,8(sp) + c0026d54: bf7d j c0026d12 + c0026d56: 06000793 li a5,96 + c0026d5a: bf89 j c0026cac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20303 js_parse_error(s, "unexpected end of string"); - c0026b8c: 00038597 auipc a1,0x38 - c0026b90: 32458593 addi a1,a1,804 # c005eeb0 - c0026b94: bff9 j c0026b72 + c0026d5c: 00038597 auipc a1,0x38 + c0026d60: 3b458593 addi a1,a1,948 # c005f110 + c0026d64: bff9 j c0026d42 -00000000c0026b96 : +00000000c0026d66 : next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20663 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20671 { - c0026b96: 7175 addi sp,sp,-144 - c0026b98: f0d2 sd s4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20673 + c0026d66: 7175 addi sp,sp,-144 + c0026d68: f0d2 sd s4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 free_token(s, &s->token); - c0026b9a: 01850a13 addi s4,a0,24 - c0026b9e: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20663 -{ - c0026ba0: e122 sd s0,128(sp) - c0026ba2: f8ca sd s2,112(sp) - c0026ba4: 842a mv s0,a0 - c0026ba6: f4ce sd s3,104(sp) - c0026ba8: ecd6 sd s5,88(sp) - c0026baa: e8da sd s6,80(sp) - c0026bac: e506 sd ra,136(sp) - c0026bae: fca6 sd s1,120(sp) - c0026bb0: e4de sd s7,72(sp) - c0026bb2: e0e2 sd s8,64(sp) - c0026bb4: fc66 sd s9,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20673 + c0026d6a: 01850a13 addi s4,a0,24 + c0026d6e: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20671 +{ + c0026d70: e122 sd s0,128(sp) + c0026d72: f8ca sd s2,112(sp) + c0026d74: 842a mv s0,a0 + c0026d76: f4ce sd s3,104(sp) + c0026d78: ecd6 sd s5,88(sp) + c0026d7a: e8da sd s6,80(sp) + c0026d7c: e506 sd ra,136(sp) + c0026d7e: fca6 sd s1,120(sp) + c0026d80: e4de sd s7,72(sp) + c0026d82: e0e2 sd s8,64(sp) + c0026d84: fc66 sd s9,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 free_token(s, &s->token); - c0026bb6: b24e20ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20675 + c0026d86: a42e20ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20683 p = s->last_ptr = s->buf_ptr; - c0026bba: 6c3c ld a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21124 + c0026d8a: 6c3c ld a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21132 switch(c) { - c0026bbc: 7979 lui s2,0xffffe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20676 + c0026d8c: 7979 lui s2,0xffffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20684 s->got_lf = FALSE; - c0026bbe: 04042423 sw zero,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20675 + c0026d8e: 04042423 sw zero,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20683 p = s->last_ptr = s->buf_ptr; - c0026bc2: e83c sd a5,80(s0) - c0026bc4: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20677 + c0026d92: e83c sd a5,80(s0) + c0026d94: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20685 s->last_line_num = s->token.line_num; - c0026bc6: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21124 + c0026d96: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21132 switch(c) { - c0026bc8: fd89091b addiw s2,s2,-40 - c0026bcc: 00038a97 auipc s5,0x38 - c0026bd0: 4a4a8a93 addi s5,s5,1188 # c005f070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20677 + c0026d98: fd89091b addiw s2,s2,-40 + c0026d9c: 00038a97 auipc s5,0x38 + c0026da0: 534a8a93 addi s5,s5,1332 # c005f2d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20685 s->last_line_num = s->token.line_num; - c0026bd4: c41c sw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20757 + c0026da4: c41c sw a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20765 if (*p == '\r' || *p == '\n') - c0026bd6: 49b5 li s3,13 - c0026bd8: 00038b17 auipc s6,0x38 - c0026bdc: 59cb0b13 addi s6,s6,1436 # c005f174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20679 + c0026da6: 49b5 li s3,13 + c0026da8: 00038b17 auipc s6,0x38 + c0026dac: 62cb0b13 addi s6,s6,1580 # c005f3d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20687 s->token.line_num = s->line_num; - c0026be0: 445c lw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20682 + c0026db0: 445c lw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20690 _d("next_token: c0="); print_hex(c); _d("\n");//// - c0026be2: 463d li a2,15 - c0026be4: 00038597 auipc a1,0x38 - c0026be8: 3ec58593 addi a1,a1,1004 # c005efd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20679 + c0026db2: 463d li a2,15 + c0026db4: 00038597 auipc a1,0x38 + c0026db8: 47c58593 addi a1,a1,1148 # c005f230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20687 s->token.line_num = s->line_num; - c0026bec: cc5c sw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20680 + c0026dbc: cc5c sw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20688 s->token.ptr = p; - c0026bee: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20682 + c0026dbe: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20690 _d("next_token: c0="); print_hex(c); _d("\n");//// - c0026bf0: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20680 + c0026dc0: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20688 s->token.ptr = p; - c0026bf2: f01c sd a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c0026dc2: f01c sd a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c0026bf4: 0007cb83 lbu s7,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20682 + c0026dc4: 0007cb83 lbu s7,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20690 _d("next_token: c0="); print_hex(c); _d("\n");//// - c0026bf8: 251300ef jal ra,c0057648 - c0026bfc: 855e mv a0,s7 - c0026bfe: f07df0ef jal ra,c0006b04 - c0026c02: 4605 li a2,1 - c0026c04: 0004a597 auipc a1,0x4a - c0026c08: f3c58593 addi a1,a1,-196 # c0070b40 - c0026c0c: 4505 li a0,1 - c0026c0e: 23b300ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20683 + c0026dc8: 251300ef jal ra,c0057818 + c0026dcc: 855e mv a0,s7 + c0026dce: e25df0ef jal ra,c0006bf2 + c0026dd2: 4605 li a2,1 + c0026dd4: 0004a597 auipc a1,0x4a + c0026dd8: fcc58593 addi a1,a1,-52 # c0070da0 + c0026ddc: 4505 li a0,1 + c0026dde: 23b300ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20691 switch(c) { - c0026c12: 06000793 li a5,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c0026de2: 06000793 li a5,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c0026c16: 000b849b sext.w s1,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20683 + c0026de6: 000b849b sext.w s1,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20691 switch(c) { - c0026c1a: 0b77ed63 bltu a5,s7,c0026cd4 - c0026c1e: 47fd li a5,31 - c0026c20: 0977e763 bltu a5,s7,c0026cae - c0026c24: 0b79f263 bgeu s3,s7,c0026cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21119 + c0026dea: 0b77ed63 bltu a5,s7,c0026ea4 + c0026dee: 47fd li a5,31 + c0026df0: 0977e763 bltu a5,s7,c0026e7e + c0026df4: 0b79f263 bgeu s3,s7,c0026e98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21127 _d("next_token: c="); print_hex(c); _d("\n");//// - c0026c28: 4639 li a2,14 - c0026c2a: 00038597 auipc a1,0x38 - c0026c2e: 42658593 addi a1,a1,1062 # c005f050 - c0026c32: 4505 li a0,1 - c0026c34: 215300ef jal ra,c0057648 - c0026c38: 855e mv a0,s7 - c0026c3a: ecbdf0ef jal ra,c0006b04 - c0026c3e: 4605 li a2,1 - c0026c40: 0004a597 auipc a1,0x4a - c0026c44: f0058593 addi a1,a1,-256 # c0070b40 - c0026c48: 4505 li a0,1 - c0026c4a: 1ff300ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21120 + c0026df8: 4639 li a2,14 + c0026dfa: 00038597 auipc a1,0x38 + c0026dfe: 4b658593 addi a1,a1,1206 # c005f2b0 + c0026e02: 4505 li a0,1 + c0026e04: 215300ef jal ra,c0057818 + c0026e08: 855e mv a0,s7 + c0026e0a: de9df0ef jal ra,c0006bf2 + c0026e0e: 4605 li a2,1 + c0026e10: 0004a597 auipc a1,0x4a + c0026e14: f9058593 addi a1,a1,-112 # c0070da0 + c0026e18: 4505 li a0,1 + c0026e1a: 1ff300ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21128 if (c >= 128) { - c0026c4e: 07f00793 li a5,127 - c0026c52: 2897dc63 bge a5,s1,c0026eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21122 + c0026e1e: 07f00793 li a5,127 + c0026e22: 2897dc63 bge a5,s1,c00270ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21130 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0026c56: 6542 ld a0,16(sp) - c0026c58: 0810 addi a2,sp,16 - c0026c5a: 4599 li a1,6 - c0026c5c: 2be210ef jal ra,c0047f1a - c0026c60: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21123 + c0026e26: 6542 ld a0,16(sp) + c0026e28: 0810 addi a2,sp,16 + c0026e2a: 4599 li a1,6 + c0026e2c: 2be210ef jal ra,c00480ea + c0026e30: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21131 _d("next_token: c2="); print_hex(c); _d("\n");//// - c0026c62: 463d li a2,15 - c0026c64: 00038597 auipc a1,0x38 - c0026c68: 3fc58593 addi a1,a1,1020 # c005f060 - c0026c6c: 4505 li a0,1 - c0026c6e: 1db300ef jal ra,c0057648 - c0026c72: 8526 mv a0,s1 - c0026c74: e91df0ef jal ra,c0006b04 - c0026c78: 4605 li a2,1 - c0026c7a: 0004a597 auipc a1,0x4a - c0026c7e: ec658593 addi a1,a1,-314 # c0070b40 - c0026c82: 4505 li a0,1 - c0026c84: 1c5300ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21124 + c0026e32: 463d li a2,15 + c0026e34: 00038597 auipc a1,0x38 + c0026e38: 48c58593 addi a1,a1,1164 # c005f2c0 + c0026e3c: 4505 li a0,1 + c0026e3e: 1db300ef jal ra,c0057818 + c0026e42: 8526 mv a0,s1 + c0026e44: dafdf0ef jal ra,c0006bf2 + c0026e48: 4605 li a2,1 + c0026e4a: 0004a597 auipc a1,0x4a + c0026e4e: f5658593 addi a1,a1,-170 # c0070da0 + c0026e52: 4505 li a0,1 + c0026e54: 1c5300ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21132 switch(c) { - c0026c88: 0099073b addw a4,s2,s1 - c0026c8c: 4785 li a5,1 - c0026c8e: 0ce7f363 bgeu a5,a4,c0026d54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21131 + c0026e58: 0099073b addw a4,s2,s1 + c0026e5c: 4785 li a5,1 + c0026e5e: 0ce7f363 bgeu a5,a4,c0026f24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21139 if (lre_is_space(c)) { - c0026c92: 8526 mv a0,s1 - c0026c94: 44e1d0ef jal ra,c00440e2 - c0026c98: f521 bnez a0,c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21133 + c0026e62: 8526 mv a0,s1 + c0026e64: 44e1d0ef jal ra,c00442b2 + c0026e68: f521 bnez a0,c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21141 } else if (lre_js_is_ident_first(c)) { - c0026c9a: 8526 mv a0,s1 - c0026c9c: 800df0ef jal ra,c0005c9c - c0026ca0: 24051c63 bnez a0,c0026ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21137 + c0026e6a: 8526 mv a0,s1 + c0026e6c: f1fde0ef jal ra,c0005d8a + c0026e70: 24051c63 bnez a0,c00270c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21145 js_parse_error(s, "unexpected character"); - c0026ca4: 00038597 auipc a1,0x38 - c0026ca8: 26458593 addi a1,a1,612 # c005ef08 - c0026cac: a0fd j c0026d9a - c0026cae: fe0b879b addiw a5,s7,-32 - c0026cb2: 0ff7f793 zext.b a5,a5 - c0026cb6: 04000713 li a4,64 - c0026cba: f6f767e3 bltu a4,a5,c0026c28 - c0026cbe: 078a slli a5,a5,0x2 - c0026cc0: 97d6 add a5,a5,s5 - c0026cc2: 439c lw a5,0(a5) - c0026cc4: 97d6 add a5,a5,s5 - c0026cc6: 8782 jr a5 - c0026cc8: 002b9793 slli a5,s7,0x2 - c0026ccc: 97da add a5,a5,s6 - c0026cce: 439c lw a5,0(a5) - c0026cd0: 97da add a5,a5,s6 - c0026cd2: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20683 + c0026e74: 00038597 auipc a1,0x38 + c0026e78: 2f458593 addi a1,a1,756 # c005f168 + c0026e7c: a0fd j c0026f6a + c0026e7e: fe0b879b addiw a5,s7,-32 + c0026e82: 0ff7f793 zext.b a5,a5 + c0026e86: 04000713 li a4,64 + c0026e8a: f6f767e3 bltu a4,a5,c0026df8 + c0026e8e: 078a slli a5,a5,0x2 + c0026e90: 97d6 add a5,a5,s5 + c0026e92: 439c lw a5,0(a5) + c0026e94: 97d6 add a5,a5,s5 + c0026e96: 8782 jr a5 + c0026e98: 002b9793 slli a5,s7,0x2 + c0026e9c: 97da add a5,a5,s6 + c0026e9e: 439c lw a5,0(a5) + c0026ea0: 97da add a5,a5,s6 + c0026ea2: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20691 switch(c) { - c0026cd4: 07a00793 li a5,122 - c0026cd8: 2177fd63 bgeu a5,s7,c0026ef2 - c0026cdc: 07c00793 li a5,124 - c0026ce0: f4fb94e3 bne s7,a5,c0026c28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21087 + c0026ea4: 07a00793 li a5,122 + c0026ea8: 2177fd63 bgeu a5,s7,c00270c2 + c0026eac: 07c00793 li a5,124 + c0026eb0: f4fb94e3 bne s7,a5,c0026df8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21095 if (p[1] == '=') { - c0026ce4: 67c2 ld a5,16(sp) - c0026ce6: 03d00713 li a4,61 - c0026cea: 0017c683 lbu a3,1(a5) - c0026cee: 56e69f63 bne a3,a4,c002726c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21088 + c0026eb4: 67c2 ld a5,16(sp) + c0026eb6: 03d00713 li a4,61 + c0026eba: 0017c683 lbu a3,1(a5) + c0026ebe: 56e69f63 bne a3,a4,c002743c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21096 p += 2; - c0026cf2: 0789 addi a5,a5,2 - c0026cf4: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21089 + c0026ec2: 0789 addi a5,a5,2 + c0026ec4: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21097 s->token.val = TOK_OR_ASSIGN; - c0026cf6: f8f00793 li a5,-113 - c0026cfa: a039 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20685 + c0026ec6: f8f00793 li a5,-113 + c0026eca: a039 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20693 if (p >= s->buf_end) { - c0026cfc: 7038 ld a4,96(s0) - c0026cfe: 67c2 ld a5,16(sp) - c0026d00: 5ce7ef63 bltu a5,a4,c00272de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20686 + c0026ecc: 7038 ld a4,96(s0) + c0026ece: 67c2 ld a5,16(sp) + c0026ed0: 5ce7ef63 bltu a5,a4,c00274ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20694 s->token.val = TOK_EOF; - c0026d04: faa00793 li a5,-86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21096 + c0026ed4: faa00793 li a5,-86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21104 s->token.val = TOK_LOR; - c0026d08: cc1c sw a5,24(s0) - c0026d0a: aab9 j c0026e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20692 + c0026ed8: cc1c sw a5,24(s0) + c0026eda: aab9 j c0027038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20700 if (js_parse_template_part(s, p + 1)) - c0026d0c: 65c2 ld a1,16(sp) - c0026d0e: 8522 mv a0,s0 - c0026d10: 0585 addi a1,a1,1 - c0026d12: d5bff0ef jal ra,c0026a6c - c0026d16: ed19 bnez a0,c0026d34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20694 + c0026edc: 65c2 ld a1,16(sp) + c0026ede: 8522 mv a0,s0 + c0026ee0: 0585 addi a1,a1,1 + c0026ee2: d5bff0ef jal ra,c0026c3c + c0026ee6: ed19 bnez a0,c0026f04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20702 p = s->buf_ptr; - c0026d18: 6c3c ld a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21144 + c0026ee8: 6c3c ld a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21152 p++; - c0026d1a: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21145 + c0026eea: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21153 break; - c0026d1c: a2b1 j c0026e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20698 + c0026eec: a2b1 j c0027038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20706 if (js_parse_string(s, c, TRUE, p + 1, &s->token, &p)) - c0026d1e: 66c2 ld a3,16(sp) - c0026d20: 081c addi a5,sp,16 - c0026d22: 8752 mv a4,s4 - c0026d24: 0685 addi a3,a3,1 - c0026d26: 4605 li a2,1 - c0026d28: 85a6 mv a1,s1 - c0026d2a: 8522 mv a0,s0 - c0026d2c: f44ff0ef jal ra,c0026470 - c0026d30: 12050c63 beqz a0,c0026e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21153 + c0026eee: 66c2 ld a3,16(sp) + c0026ef0: 081c addi a5,sp,16 + c0026ef2: 8752 mv a4,s4 + c0026ef4: 0685 addi a3,a3,1 + c0026ef6: 4605 li a2,1 + c0026ef8: 85a6 mv a1,s1 + c0026efa: 8522 mv a0,s0 + c0026efc: f44ff0ef jal ra,c0026640 + c0026f00: 12050c63 beqz a0,c0027038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21161 s->token.val = TOK_ERROR; - c0026d34: fa800793 li a5,-88 - c0026d38: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21154 + c0026f04: fa800793 li a5,-88 + c0026f08: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21162 return -1; - c0026d3a: 557d li a0,-1 - c0026d3c: aa0d j c0026e6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20702 + c0026f0a: 557d li a0,-1 + c0026f0c: aa0d j c002703e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20710 if (p[1] == '\n') { - c0026d3e: 67c2 ld a5,16(sp) - c0026d40: 4729 li a4,10 - c0026d42: 0017c683 lbu a3,1(a5) - c0026d46: 00e69463 bne a3,a4,c0026d4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20692 + c0026f0e: 67c2 ld a5,16(sp) + c0026f10: 4729 li a4,10 + c0026f12: 0017c683 lbu a3,1(a5) + c0026f16: 00e69463 bne a3,a4,c0026f1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20700 if (js_parse_template_part(s, p + 1)) - c0026d4a: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20703 + c0026f1a: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20711 p++; - c0026d4c: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20707 + c0026f1c: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20715 p++; - c0026d4e: 67c2 ld a5,16(sp) - c0026d50: 0785 addi a5,a5,1 - c0026d52: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20709 + c0026f1e: 67c2 ld a5,16(sp) + c0026f20: 0785 addi a5,a5,1 + c0026f22: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20717 s->got_lf = TRUE; - c0026d54: 4785 li a5,1 - c0026d56: c43c sw a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20710 + c0026f24: 4785 li a5,1 + c0026f26: c43c sw a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20718 s->line_num++; - c0026d58: 445c lw a5,12(s0) - c0026d5a: 2785 addiw a5,a5,1 - c0026d5c: c45c sw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20711 + c0026f28: 445c lw a5,12(s0) + c0026f2a: 2785 addiw a5,a5,1 + c0026f2c: c45c sw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20719 goto redo; - c0026d5e: b549 j c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20716 + c0026f2e: b549 j c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20724 p++; - c0026d60: 67c2 ld a5,16(sp) - c0026d62: 0785 addi a5,a5,1 - c0026d64: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20717 + c0026f30: 67c2 ld a5,16(sp) + c0026f32: 0785 addi a5,a5,1 + c0026f34: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20725 goto redo; - c0026d66: bdad j c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20719 + c0026f36: bdad j c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20727 if (p[1] == '*') { - c0026d68: 67c2 ld a5,16(sp) - c0026d6a: 02a00693 li a3,42 - c0026d6e: 0017c703 lbu a4,1(a5) - c0026d72: 08d71463 bne a4,a3,c0026dfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20721 + c0026f38: 67c2 ld a5,16(sp) + c0026f3a: 02a00693 li a3,42 + c0026f3e: 0017c703 lbu a4,1(a5) + c0026f42: 08d71463 bne a4,a3,c0026fca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20729 p += 2; - c0026d76: 0789 addi a5,a5,2 - c0026d78: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20727 + c0026f46: 0789 addi a5,a5,2 + c0026f48: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20735 if (p[0] == '*' && p[1] == '/') { - c0026d7a: 02a00b93 li s7,42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20731 + c0026f4a: 02a00b93 li s7,42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20739 if (*p == '\n') { - c0026d7e: 4c29 li s8,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20740 + c0026f4e: 4c29 li s8,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20748 if (c == CP_LS || c == CP_PS) { - c0026d80: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20742 + c0026f50: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20750 } else if (c == -1) { - c0026d82: 5cfd li s9,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20723 + c0026f52: 5cfd li s9,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20731 if (*p == '\0' && p >= s->buf_end) { - c0026d84: 6542 ld a0,16(sp) - c0026d86: 00054783 lbu a5,0(a0) - c0026d8a: ef81 bnez a5,c0026da2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20723 (discriminator 1) - c0026d8c: 703c ld a5,96(s0) - c0026d8e: 02f56b63 bltu a0,a5,c0026dc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20724 + c0026f54: 6542 ld a0,16(sp) + c0026f56: 00054783 lbu a5,0(a0) + c0026f5a: ef81 bnez a5,c0026f72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20731 (discriminator 1) + c0026f5c: 703c ld a5,96(s0) + c0026f5e: 02f56b63 bltu a0,a5,c0026f94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20732 js_parse_error(s, "unexpected end of comment"); - c0026d92: 00038597 auipc a1,0x38 - c0026d96: 13e58593 addi a1,a1,318 # c005eed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21137 + c0026f62: 00038597 auipc a1,0x38 + c0026f66: 1ce58593 addi a1,a1,462 # c005f130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21145 js_parse_error(s, "unexpected character"); - c0026d9a: 8522 mv a0,s0 - c0026d9c: d1cff0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21138 + c0026f6a: 8522 mv a0,s0 + c0026f6c: d1cff0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21146 goto fail; - c0026da0: bf51 j c0026d34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20727 + c0026f70: bf51 j c0026f04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20735 if (p[0] == '*' && p[1] == '/') { - c0026da2: 01779b63 bne a5,s7,c0026db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20727 (discriminator 1) - c0026da6: 00154703 lbu a4,1(a0) - c0026daa: 02f00793 li a5,47 - c0026dae: 00f71b63 bne a4,a5,c0026dc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20728 + c0026f72: 01779b63 bne a5,s7,c0026f88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20735 (discriminator 1) + c0026f76: 00154703 lbu a4,1(a0) + c0026f7a: 02f00793 li a5,47 + c0026f7e: 00f71b63 bne a4,a5,c0026f94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20736 p += 2; - c0026db2: 0509 addi a0,a0,2 - c0026db4: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20749 + c0026f82: 0509 addi a0,a0,2 + c0026f84: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20757 goto redo; - c0026db6: b52d j c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20731 + c0026f86: b52d j c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20739 if (*p == '\n') { - c0026db8: 01879963 bne a5,s8,c0026dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20732 + c0026f88: 01879963 bne a5,s8,c0026f9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20740 s->line_num++; - c0026dbc: 445c lw a5,12(s0) - c0026dbe: 2785 addiw a5,a5,1 - c0026dc0: c45c sw a5,12(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20736 + c0026f8c: 445c lw a5,12(s0) + c0026f8e: 2785 addiw a5,a5,1 + c0026f90: c45c sw a5,12(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20744 s->got_lf = TRUE; /* considered as LF for ASI */ - c0026dc2: c424 sw s1,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20746 + c0026f92: c424 sw s1,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20754 p++; - c0026dc4: 0505 addi a0,a0,1 - c0026dc6: e82a sd a0,16(sp) - c0026dc8: bf75 j c0026d84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20735 + c0026f94: 0505 addi a0,a0,1 + c0026f96: e82a sd a0,16(sp) + c0026f98: bf75 j c0026f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20743 } else if (*p == '\r') { - c0026dca: ff378ce3 beq a5,s3,c0026dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20738 + c0026f9a: ff378ce3 beq a5,s3,c0026f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20746 } else if (*p >= 0x80) { - c0026dce: 0187979b slliw a5,a5,0x18 - c0026dd2: 4187d79b sraiw a5,a5,0x18 - c0026dd6: fe07d7e3 bgez a5,c0026dc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20739 + c0026f9e: 0187979b slliw a5,a5,0x18 + c0026fa2: 4187d79b sraiw a5,a5,0x18 + c0026fa6: fe07d7e3 bgez a5,c0026f94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20747 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0026dda: 0810 addi a2,sp,16 - c0026ddc: 4599 li a1,6 - c0026dde: 13c210ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20740 + c0026faa: 0810 addi a2,sp,16 + c0026fac: 4599 li a1,6 + c0026fae: 13c210ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20748 if (c == CP_LS || c == CP_PS) { - c0026de2: 00a907bb addw a5,s2,a0 - c0026de6: 00f4e463 bltu s1,a5,c0026dee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20741 + c0026fb2: 00a907bb addw a5,s2,a0 + c0026fb6: 00f4e463 bltu s1,a5,c0026fbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20749 s->got_lf = TRUE; /* considered as LF for ASI */ - c0026dea: c424 sw s1,72(s0) - c0026dec: bf61 j c0026d84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20742 + c0026fba: c424 sw s1,72(s0) + c0026fbc: bf61 j c0026f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20750 } else if (c == -1) { - c0026dee: f9951be3 bne a0,s9,c0026d84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20743 + c0026fbe: f9951be3 bne a0,s9,c0026f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20751 p++; /* skip invalid UTF-8 */ - c0026df2: 67c2 ld a5,16(sp) - c0026df4: 0785 addi a5,a5,1 - c0026df6: e83e sd a5,16(sp) - c0026df8: b771 j c0026d84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20750 + c0026fc2: 67c2 ld a5,16(sp) + c0026fc4: 0785 addi a5,a5,1 + c0026fc6: e83e sd a5,16(sp) + c0026fc8: b771 j c0026f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20758 } else if (p[1] == '/') { - c0026dfa: 02f00693 li a3,47 - c0026dfe: 04d71963 bne a4,a3,c0026e50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20752 + c0026fca: 02f00693 li a3,47 + c0026fce: 04d71963 bne a4,a3,c0027020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20760 p += 2; - c0026e02: 0789 addi a5,a5,2 - c0026e04: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20757 + c0026fd2: 0789 addi a5,a5,2 + c0026fd4: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20765 if (*p == '\r' || *p == '\n') - c0026e06: 44a9 li s1,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20762 + c0026fd6: 44a9 li s1,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20770 if (c == CP_LS || c == CP_PS) { - c0026e08: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20764 + c0026fd8: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20772 } else if (c == -1) { - c0026e0a: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20755 + c0026fda: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20763 if (*p == '\0' && p >= s->buf_end) - c0026e0c: 6542 ld a0,16(sp) - c0026e0e: 00054783 lbu a5,0(a0) - c0026e12: e799 bnez a5,c0026e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20755 (discriminator 1) - c0026e14: 703c ld a5,96(s0) - c0026e16: dcf575e3 bgeu a0,a5,c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20768 + c0026fdc: 6542 ld a0,16(sp) + c0026fde: 00054783 lbu a5,0(a0) + c0026fe2: e799 bnez a5,c0026ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20763 (discriminator 1) + c0026fe4: 703c ld a5,96(s0) + c0026fe6: dcf575e3 bgeu a0,a5,c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20776 p++; - c0026e1a: 0505 addi a0,a0,1 - c0026e1c: e82a sd a0,16(sp) - c0026e1e: b7fd j c0026e0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20757 + c0026fea: 0505 addi a0,a0,1 + c0026fec: e82a sd a0,16(sp) + c0026fee: b7fd j c0026fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20765 if (*p == '\r' || *p == '\n') - c0026e20: dd3780e3 beq a5,s3,c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20757 (discriminator 1) - c0026e24: da978ee3 beq a5,s1,c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20759 + c0026ff0: dd3780e3 beq a5,s3,c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20765 (discriminator 1) + c0026ff4: da978ee3 beq a5,s1,c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20767 if (*p >= 0x80) { - c0026e28: 0187979b slliw a5,a5,0x18 - c0026e2c: 4187d79b sraiw a5,a5,0x18 - c0026e30: fe07d5e3 bgez a5,c0026e1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20760 + c0026ff8: 0187979b slliw a5,a5,0x18 + c0026ffc: 4187d79b sraiw a5,a5,0x18 + c0027000: fe07d5e3 bgez a5,c0026fea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20768 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0026e34: 0810 addi a2,sp,16 - c0026e36: 4599 li a1,6 - c0026e38: 0e2210ef jal ra,c0047f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20762 + c0027004: 0810 addi a2,sp,16 + c0027006: 4599 li a1,6 + c0027008: 0e2210ef jal ra,c00480ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20770 if (c == CP_LS || c == CP_PS) { - c0026e3c: 00a907bb addw a5,s2,a0 - c0026e40: dafbf0e3 bgeu s7,a5,c0026be0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20764 + c002700c: 00a907bb addw a5,s2,a0 + c0027010: dafbf0e3 bgeu s7,a5,c0026db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20772 } else if (c == -1) { - c0026e44: fd8514e3 bne a0,s8,c0026e0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20765 + c0027014: fd8514e3 bne a0,s8,c0026fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20773 p++; /* skip invalid UTF-8 */ - c0026e48: 67c2 ld a5,16(sp) - c0026e4a: 0785 addi a5,a5,1 - c0026e4c: e83e sd a5,16(sp) - c0026e4e: bf7d j c0026e0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20772 + c0027018: 67c2 ld a5,16(sp) + c002701a: 0785 addi a5,a5,1 + c002701c: e83e sd a5,16(sp) + c002701e: bf7d j c0026fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20780 } else if (p[1] == '=') { - c0026e50: 03d00613 li a2,61 - c0026e54: 00c71763 bne a4,a2,c0026e62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20773 + c0027020: 03d00613 li a2,61 + c0027024: 00c71763 bne a4,a2,c0027032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20781 p += 2; - c0026e58: 0789 addi a5,a5,2 - c0026e5a: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20774 + c0027028: 0789 addi a5,a5,2 + c002702a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20782 s->token.val = TOK_DIV_ASSIGN; - c0026e5c: f8600793 li a5,-122 - c0026e60: b565 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20776 + c002702c: f8600793 li a5,-122 + c0027030: b565 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20784 p++; - c0026e62: 0785 addi a5,a5,1 - c0026e64: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20777 + c0027032: 0785 addi a5,a5,1 + c0027034: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20785 s->token.val = c; - c0026e66: cc14 sw a3,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21147 + c0027036: cc14 sw a3,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21155 s->buf_ptr = p; - c0026e68: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21150 + c0027038: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21158 return 0; - c0026e6a: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21147 - s->buf_ptr = p; - c0026e6c: ec3c sd a5,88(s0) + c002703a: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21155 -} - c0026e6e: 60aa ld ra,136(sp) - c0026e70: 640a ld s0,128(sp) - c0026e72: 74e6 ld s1,120(sp) - c0026e74: 7946 ld s2,112(sp) - c0026e76: 79a6 ld s3,104(sp) - c0026e78: 7a06 ld s4,96(sp) - c0026e7a: 6ae6 ld s5,88(sp) - c0026e7c: 6b46 ld s6,80(sp) - c0026e7e: 6ba6 ld s7,72(sp) - c0026e80: 6c06 ld s8,64(sp) - c0026e82: 7ce2 ld s9,56(sp) - c0026e84: 6149 addi sp,sp,144 - c0026e86: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20781 + s->buf_ptr = p; + c002703c: ec3c sd a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21163 +} + c002703e: 60aa ld ra,136(sp) + c0027040: 640a ld s0,128(sp) + c0027042: 74e6 ld s1,120(sp) + c0027044: 7946 ld s2,112(sp) + c0027046: 79a6 ld s3,104(sp) + c0027048: 7a06 ld s4,96(sp) + c002704a: 6ae6 ld s5,88(sp) + c002704c: 6b46 ld s6,80(sp) + c002704e: 6ba6 ld s7,72(sp) + c0027050: 6c06 ld s8,64(sp) + c0027052: 7ce2 ld s9,56(sp) + c0027054: 6149 addi sp,sp,144 + c0027056: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20789 if (p[1] == 'u') { - c0026e88: 67c2 ld a5,16(sp) - c0026e8a: 07500713 li a4,117 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c0027058: 67c2 ld a5,16(sp) + c002705a: 07500713 li a4,117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c0026e8e: 05c00493 li s1,92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20781 + c002705e: 05c00493 li s1,92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20789 if (p[1] == 'u') { - c0026e92: 0017c683 lbu a3,1(a5) - c0026e96: 04e69a63 bne a3,a4,c0026eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20692 + c0027062: 0017c683 lbu a3,1(a5) + c0027066: 04e69a63 bne a3,a4,c00270ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20700 if (js_parse_template_part(s, p + 1)) - c0026e9a: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20783 + c002706a: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20791 int c1 = lre_parse_escape(&p1, TRUE); - c0026e9c: 4585 li a1,1 - c0026e9e: 1008 addi a0,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20782 + c002706c: 4585 li a1,1 + c002706e: 1008 addi a0,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20790 const uint8_t *p1 = p + 1; - c0026ea0: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20783 + c0027070: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20791 int c1 = lre_parse_escape(&p1, TRUE); - c0026ea2: 26e1d0ef jal ra,c0044110 - c0026ea6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20784 + c0027072: 26e1d0ef jal ra,c00442e0 + c0027076: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20792 if (c1 >= 0 && lre_js_is_ident_first(c1)) { - c0026ea8: 02054f63 bltz a0,c0026ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20784 (discriminator 1) - c0026eac: df1de0ef jal ra,c0005c9c - c0026eb0: c91d beqz a0,c0026ee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20786 + c0027078: 02054f63 bltz a0,c00270b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20792 (discriminator 1) + c002707c: d0fde0ef jal ra,c0005d8a + c0027080: c91d beqz a0,c00270b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20794 p = p1; - c0026eb2: 7782 ld a5,32(sp) - c0026eb4: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20787 + c0027082: 7782 ld a5,32(sp) + c0027084: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20795 ident_has_escape = TRUE; - c0026eb6: 4785 li a5,1 - c0026eb8: cc3e sw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20814 + c0027086: 4785 li a5,1 + c0027088: cc3e sw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20822 atom = parse_ident(s, &p, &ident_has_escape, c, FALSE); - c0026eba: 4701 li a4,0 - c0026ebc: 86a6 mv a3,s1 - c0026ebe: 0830 addi a2,sp,24 - c0026ec0: 080c addi a1,sp,16 - c0026ec2: 8522 mv a0,s0 - c0026ec4: a5bf20ef jal ra,c001991e - c0026ec8: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20815 + c002708a: 4701 li a4,0 + c002708c: 86a6 mv a3,s1 + c002708e: 0830 addi a2,sp,24 + c0027090: 080c addi a1,sp,16 + c0027092: 8522 mv a0,s0 + c0027094: a5bf20ef jal ra,c0019aee + c0027098: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20823 if (atom == JS_ATOM_NULL) - c0026eca: e60505e3 beqz a0,c0026d34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20818 + c002709a: e60505e3 beqz a0,c0026f04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20826 s->token.u.ident.has_escape = ident_has_escape; - c0026ece: 47e2 lw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20817 + c002709e: 47e2 lw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20825 s->token.u.ident.atom = atom; - c0026ed0: d408 sw a0,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20819 + c00270a0: d408 sw a0,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20827 s->token.u.ident.is_reserved = FALSE; - c0026ed2: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20818 + c00270a2: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20826 s->token.u.ident.has_escape = ident_has_escape; - c0026ed6: d45c sw a5,44(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20820 + c00270a6: d45c sw a5,44(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20828 s->token.val = TOK_IDENT; - c0026ed8: f8300793 li a5,-125 - c0026edc: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20821 + c00270a8: f8300793 li a5,-125 + c00270ac: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20829 update_token_ident(s); - c0026ede: 8522 mv a0,s0 - c0026ee0: c94dd0ef jal ra,c0004374 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20822 + c00270ae: 8522 mv a0,s0 + c00270b0: ac4dd0ef jal ra,c0004374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20830 break; - c0026ee4: b751 j c0026e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c00270b4: b751 j c0027038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c0026ee6: 05c00493 li s1,92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21144 + c00270b6: 05c00493 li s1,92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21152 p++; - c0026eea: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21143 + c00270ba: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21151 s->token.val = c; - c0026eec: cc04 sw s1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21144 + c00270bc: cc04 sw s1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21152 p++; - c0026eee: 0785 addi a5,a5,1 - c0026ef0: b52d j c0026d1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20811 + c00270be: 0785 addi a5,a5,1 + c00270c0: b52d j c0026eea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20819 p++; - c0026ef2: 67c2 ld a5,16(sp) - c0026ef4: 0785 addi a5,a5,1 - c0026ef6: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20812 + c00270c2: 67c2 ld a5,16(sp) + c00270c4: 0785 addi a5,a5,1 + c00270c6: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20820 ident_has_escape = FALSE; - c0026ef8: cc02 sw zero,24(sp) - c0026efa: b7c1 j c0026eba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20827 + c00270c8: cc02 sw zero,24(sp) + c00270ca: b7c1 j c002708a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20835 p++; - c0026efc: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20829 + c00270cc: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20837 c = *p1++; - c0026efe: 00278713 addi a4,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20827 + c00270ce: 00278713 addi a4,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20835 p++; - c0026f02: 00178513 addi a0,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20829 + c00270d2: 00178513 addi a0,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20837 c = *p1++; - c0026f06: f03a sd a4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20827 + c00270d6: f03a sd a4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20835 p++; - c0026f08: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20829 + c00270d8: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20837 c = *p1++; - c0026f0a: 0017c683 lbu a3,1(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20830 + c00270da: 0017c683 lbu a3,1(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20838 if (c == '\\' && *p1 == 'u') { - c0026f0e: 05c00713 li a4,92 - c0026f12: 04e69863 bne a3,a4,c0026f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20830 (discriminator 1) - c0026f16: 0027c703 lbu a4,2(a5) - c0026f1a: 07500793 li a5,117 - c0026f1e: 00f71763 bne a4,a5,c0026f2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20831 + c00270de: 05c00713 li a4,92 + c00270e2: 04e69863 bne a3,a4,c0027132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20838 (discriminator 1) + c00270e6: 0027c703 lbu a4,2(a5) + c00270ea: 07500793 li a5,117 + c00270ee: 00f71763 bne a4,a5,c00270fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20839 c = lre_parse_escape(&p1, TRUE); - c0026f22: 4585 li a1,1 - c0026f24: 1008 addi a0,sp,32 - c0026f26: 1ea1d0ef jal ra,c0044110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20833 + c00270f2: 4585 li a1,1 + c00270f4: 1008 addi a0,sp,32 + c00270f6: 1ea1d0ef jal ra,c00442e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20841 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1); - c0026f2a: 86aa mv a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20835 + c00270fa: 86aa mv a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20843 if (!lre_js_is_ident_first(c)) { - c0026f2c: 8536 mv a0,a3 - c0026f2e: e436 sd a3,8(sp) - c0026f30: d6dde0ef jal ra,c0005c9c - c0026f34: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20836 + c00270fc: 8536 mv a0,a3 + c00270fe: e436 sd a3,8(sp) + c0027100: c8bde0ef jal ra,c0005d8a + c0027104: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20844 js_parse_error(s, "invalid first character of private name"); - c0026f36: 00038597 auipc a1,0x38 - c0026f3a: 0aa58593 addi a1,a1,170 # c005efe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20835 + c0027106: 00038597 auipc a1,0x38 + c002710a: 13a58593 addi a1,a1,314 # c005f240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20843 if (!lre_js_is_ident_first(c)) { - c0026f3e: e4050ee3 beqz a0,c0026d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20839 + c002710e: e4050ee3 beqz a0,c0026f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20847 p = p1; - c0026f42: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20841 + c0027112: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20849 atom = parse_ident(s, &p, &ident_has_escape, c, TRUE); - c0026f44: 4705 li a4,1 - c0026f46: 0830 addi a2,sp,24 - c0026f48: 080c addi a1,sp,16 - c0026f4a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20839 + c0027114: 4705 li a4,1 + c0027116: 0830 addi a2,sp,24 + c0027118: 080c addi a1,sp,16 + c002711a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20847 p = p1; - c0026f4c: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20840 + c002711c: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20848 ident_has_escape = FALSE; /* not used */ - c0026f4e: cc02 sw zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20841 + c002711e: cc02 sw zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20849 atom = parse_ident(s, &p, &ident_has_escape, c, TRUE); - c0026f50: 9cff20ef jal ra,c001991e - c0026f54: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20842 + c0027120: 9cff20ef jal ra,c0019aee + c0027124: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20850 if (atom == JS_ATOM_NULL) - c0026f56: dc050fe3 beqz a0,c0026d34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20844 + c0027126: dc050fe3 beqz a0,c0026f04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20852 s->token.u.ident.atom = atom; - c0026f5a: d408 sw a0,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20845 + c002712a: d408 sw a0,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20853 s->token.val = TOK_PRIVATE_NAME; - c0026f5c: fa900793 li a5,-87 - c0026f60: b365 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20832 + c002712c: fa900793 li a5,-87 + c0027130: b365 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20840 } else if (c >= 128) { - c0026f62: 07f00793 li a5,127 - c0026f66: fcd7d3e3 bge a5,a3,c0026f2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20833 + c0027132: 07f00793 li a5,127 + c0027136: fcd7d3e3 bge a5,a3,c00270fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20841 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1); - c0026f6a: 1010 addi a2,sp,32 - c0026f6c: 4599 li a1,6 - c0026f6e: 7ad200ef jal ra,c0047f1a - c0026f72: bf65 j c0026f2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20849 + c002713a: 1010 addi a2,sp,32 + c002713c: 4599 li a1,6 + c002713e: 7ad200ef jal ra,c00480ea + c0027142: bf65 j c00270fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20857 if (p[1] == '.' && p[2] == '.') { - c0026f74: 6742 ld a4,16(sp) - c0026f76: 02e00693 li a3,46 - c0026f7a: 00174783 lbu a5,1(a4) - c0026f7e: 00d79d63 bne a5,a3,c0026f98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20849 (discriminator 1) - c0026f82: 00274683 lbu a3,2(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 (discriminator 1) + c0027144: 6742 ld a4,16(sp) + c0027146: 02e00693 li a3,46 + c002714a: 00174783 lbu a5,1(a4) + c002714e: 00d79d63 bne a5,a3,c0027168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20857 (discriminator 1) + c0027152: 00274683 lbu a3,2(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 (discriminator 1) c = *p; - c0026f86: 02e00493 li s1,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20849 (discriminator 1) + c0027156: 02e00493 li s1,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20857 (discriminator 1) if (p[1] == '.' && p[2] == '.') { - c0026f8a: f6f690e3 bne a3,a5,c0026eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20850 + c002715a: f6f690e3 bne a3,a5,c00270ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20858 p += 3; - c0026f8e: 070d addi a4,a4,3 - c0026f90: e83a sd a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20851 + c002715e: 070d addi a4,a4,3 + c0027160: e83a sd a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20859 s->token.val = TOK_ELLIPSIS; - c0026f92: fa500793 li a5,-91 - c0026f96: bb8d j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20854 + c0027162: fa500793 li a5,-91 + c0027166: bb8d j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 if (p[1] >= '0' && p[1] <= '9') { - c0026f98: fd07879b addiw a5,a5,-48 - c0026f9c: 0ff7f793 zext.b a5,a5 - c0026fa0: 4725 li a4,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c0027168: fd07879b addiw a5,a5,-48 + c002716c: 0ff7f793 zext.b a5,a5 + c0027170: 4725 li a4,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c0026fa2: 02e00493 li s1,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20854 + c0027172: 02e00493 li s1,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 if (p[1] >= '0' && p[1] <= '9') { - c0026fa6: f4f762e3 bltu a4,a5,c0026eea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20892 + c0027176: f4f762e3 bltu a4,a5,c00270ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20900 ret = js_atof(s->ctx, (const char *)p, (const char **)&p, radix, - c0026faa: 65c2 ld a1,16(sp) - c0026fac: 6008 ld a0,0(s0) - c0026fae: 07400713 li a4,116 - c0026fb2: 4681 li a3,0 - c0026fb4: 0810 addi a2,sp,16 - c0026fb6: e26f10ef jal ra,c00185dc - c0026fba: f02a sd a0,32(sp) - c0026fbc: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20895 + c002717a: 65c2 ld a1,16(sp) + c002717c: 6008 ld a0,0(s0) + c002717e: 07400713 li a4,116 + c0027182: 4681 li a3,0 + c0027184: 0810 addi a2,sp,16 + c0027186: e26f10ef jal ra,c00187ac + c002718a: f02a sd a0,32(sp) + c002718c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20903 if (JS_IsException(ret)) - c0026fbe: 0005871b sext.w a4,a1 - c0026fc2: 4799 li a5,6 - c0026fc4: d6f708e3 beq a4,a5,c0026d34 + c002718e: 0005871b sext.w a4,a1 + c0027192: 4799 li a5,6 + c0027194: d6f708e3 beq a4,a5,c0026f04 JS_VALUE_IS_NAN(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:239 if (v.tag != JS_TAG_FLOAT64) - c0026fc8: 479d li a5,7 - c0026fca: 04f59563 bne a1,a5,c0027014 + c0027198: 479d li a5,7 + c002719a: 04f59563 bne a1,a5,c00271e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:242 return (u.u64 & 0x7fffffffffffffff) > 0x7ff0000000000000; - c0026fce: 0506 slli a0,a0,0x1 + c002719e: 0506 slli a0,a0,0x1 next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20906 if (JS_VALUE_IS_NAN(ret) || - c0026fd0: 7ff00793 li a5,2047 + c00271a0: 7ff00793 li a5,2047 JS_VALUE_IS_NAN(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:242 - c0026fd4: 8105 srli a0,a0,0x1 + c00271a4: 8105 srli a0,a0,0x1 next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20898 - c0026fd6: 17d2 slli a5,a5,0x34 - c0026fd8: 02a7fe63 bgeu a5,a0,c0027014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20906 + c00271a6: 17d2 slli a5,a5,0x34 + c00271a8: 02a7fe63 bgeu a5,a0,c00271e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20908 JS_FreeValue(s->ctx, ret); - c0026fdc: 7582 ld a1,32(sp) - c0026fde: 7622 ld a2,40(sp) - c0026fe0: 6008 ld a0,0(s0) - c0026fe2: b57e00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20901 + c00271ac: 7582 ld a1,32(sp) + c00271ae: 7622 ld a2,40(sp) + c00271b0: 6008 ld a0,0(s0) + c00271b2: a75e00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20909 js_parse_error(s, "invalid number literal"); - c0026fe6: 00038597 auipc a1,0x38 - c0026fea: 05258593 addi a1,a1,82 # c005f038 - c0026fee: b375 j c0026d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 + c00271b6: 00038597 auipc a1,0x38 + c00271ba: 0e258593 addi a1,a1,226 # c005f298 + c00271be: b375 j c0026f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20870 if (is_digit(p[1]) && (s->cur_func->js_mode & JS_MODE_STRICT)) { - c0026ff0: 67c2 ld a5,16(sp) - c0026ff2: 4725 li a4,9 + c00271c0: 67c2 ld a5,16(sp) + c00271c2: 4725 li a4,9 is_digit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:1480 return c >= '0' && c <= '9'; - c0026ff4: 0017c783 lbu a5,1(a5) + c00271c4: 0017c783 lbu a5,1(a5) next_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20870 if (is_digit(p[1]) && (s->cur_func->js_mode & JS_MODE_STRICT)) { - c0026ff8: fd07879b addiw a5,a5,-48 - c0026ffc: faf767e3 bltu a4,a5,c0026faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 (discriminator 1) - c0027000: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20863 (discriminator 1) + c00271c8: fd07879b addiw a5,a5,-48 + c00271cc: faf767e3 bltu a4,a5,c002717a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20870 (discriminator 1) + c00271d0: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20871 (discriminator 1) js_parse_error(s, "octal literals are deprecated in strict mode"); - c0027002: 00038597 auipc a1,0x38 - c0027006: 00658593 addi a1,a1,6 # c005f008 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20862 (discriminator 1) + c00271d2: 00038597 auipc a1,0x38 + c00271d6: 09658593 addi a1,a1,150 # c005f268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20870 (discriminator 1) if (is_digit(p[1]) && (s->cur_func->js_mode & JS_MODE_STRICT)) { - c002700a: 0867c783 lbu a5,134(a5) - c002700e: 8b85 andi a5,a5,1 - c0027010: dfc9 beqz a5,c0026faa - c0027012: b361 j c0026d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20899 (discriminator 1) + c00271da: 0867c783 lbu a5,134(a5) + c00271de: 8b85 andi a5,a5,1 + c00271e0: dfc9 beqz a5,c002717a + c00271e2: b361 j c0026f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20907 (discriminator 1) lre_js_is_ident_next(unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1))) { - c0027014: 6542 ld a0,16(sp) - c0027016: 0830 addi a2,sp,24 - c0027018: 4599 li a1,6 - c002701a: 701200ef jal ra,c0047f1a - c002701e: cabde0ef jal ra,c0005cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20898 (discriminator 1) + c00271e4: 6542 ld a0,16(sp) + c00271e6: 0830 addi a2,sp,24 + c00271e8: 4599 li a1,6 + c00271ea: 701200ef jal ra,c00480ea + c00271ee: bc9de0ef jal ra,c0005db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20906 (discriminator 1) if (JS_VALUE_IS_NAN(ret) || - c0027022: fd4d bnez a0,c0026fdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20904 + c00271f2: fd4d bnez a0,c00271ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20912 s->token.val = TOK_NUMBER; - c0027024: f8000793 li a5,-128 - c0027028: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20905 + c00271f4: f8000793 li a5,-128 + c00271f8: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20913 s->token.u.num.val = ret; - c002702a: 7782 ld a5,32(sp) - c002702c: f41c sd a5,40(s0) - c002702e: 77a2 ld a5,40(sp) - c0027030: f81c sd a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20907 + c00271fa: 7782 ld a5,32(sp) + c00271fc: f41c sd a5,40(s0) + c00271fe: 77a2 ld a5,40(sp) + c0027200: f81c sd a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20915 break; - c0027032: bd1d j c0026e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20909 + c0027202: bd1d j c0027038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20917 if (p[1] == '=') { - c0027034: 67c2 ld a5,16(sp) - c0027036: 03d00713 li a4,61 - c002703a: 0017c683 lbu a3,1(a5) - c002703e: 00e69763 bne a3,a4,c002704c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20910 + c0027204: 67c2 ld a5,16(sp) + c0027206: 03d00713 li a4,61 + c002720a: 0017c683 lbu a3,1(a5) + c002720e: 00e69763 bne a3,a4,c002721c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20918 p += 2; - c0027042: 0789 addi a5,a5,2 - c0027044: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20911 + c0027212: 0789 addi a5,a5,2 + c0027214: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20919 s->token.val = TOK_MUL_ASSIGN; - c0027046: f8500793 li a5,-123 - c002704a: b97d j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20912 + c0027216: f8500793 li a5,-123 + c002721a: b97d j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20920 } else if (p[1] == '*') { - c002704c: 02a00613 li a2,42 - c0027050: 28c69963 bne a3,a2,c00272e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20913 + c002721c: 02a00613 li a2,42 + c0027220: 28c69963 bne a3,a2,c00274b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20921 if (p[2] == '=') { - c0027054: 0027c683 lbu a3,2(a5) - c0027058: 00e69763 bne a3,a4,c0027066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20914 + c0027224: 0027c683 lbu a3,2(a5) + c0027228: 00e69763 bne a3,a4,c0027236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20922 p += 3; - c002705c: 078d addi a5,a5,3 - c002705e: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20915 + c002722c: 078d addi a5,a5,3 + c002722e: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20923 s->token.val = TOK_POW_ASSIGN; - c0027060: f9000793 li a5,-112 - c0027064: b155 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20917 - p += 2; - c0027066: 0789 addi a5,a5,2 - c0027068: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20918 - s->token.val = TOK_POW; - c002706a: fa300793 li a5,-93 - c002706e: b969 j c0026d08 + c0027230: f9000793 li a5,-112 + c0027234: b155 j c0026ed8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20925 - if (p[1] == '=') { - c0027070: 67c2 ld a5,16(sp) - c0027072: 03d00713 li a4,61 - c0027076: 0017c683 lbu a3,1(a5) - c002707a: 26e69763 bne a3,a4,c00272e8 + p += 2; + c0027236: 0789 addi a5,a5,2 + c0027238: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20926 - p += 2; - c002707e: 0789 addi a5,a5,2 - c0027080: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20927 - s->token.val = TOK_MOD_ASSIGN; - c0027082: f8700793 li a5,-121 - c0027086: b149 j c0026d08 + s->token.val = TOK_POW; + c002723a: fa300793 li a5,-93 + c002723e: b969 j c0026ed8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20933 if (p[1] == '=') { - c0027088: 67c2 ld a5,16(sp) - c002708a: 03d00693 li a3,61 - c002708e: 0017c703 lbu a4,1(a5) - c0027092: 00d71763 bne a4,a3,c00270a0 + c0027240: 67c2 ld a5,16(sp) + c0027242: 03d00713 li a4,61 + c0027246: 0017c683 lbu a3,1(a5) + c002724a: 26e69763 bne a3,a4,c00274b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20934 p += 2; - c0027096: 0789 addi a5,a5,2 - c0027098: e83e sd a5,16(sp) + c002724e: 0789 addi a5,a5,2 + c0027250: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20935 + s->token.val = TOK_MOD_ASSIGN; + c0027252: f8700793 li a5,-121 + c0027256: b149 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20941 + if (p[1] == '=') { + c0027258: 67c2 ld a5,16(sp) + c002725a: 03d00693 li a3,61 + c002725e: 0017c703 lbu a4,1(a5) + c0027262: 00d71763 bne a4,a3,c0027270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20942 + p += 2; + c0027266: 0789 addi a5,a5,2 + c0027268: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20943 s->token.val = TOK_PLUS_ASSIGN; - c002709a: f8800793 li a5,-120 - c002709e: b1ad j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20936 + c002726a: f8800793 li a5,-120 + c002726e: b1ad j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20944 } else if (p[1] == '+') { - c00270a0: 02b00693 li a3,43 - c00270a4: 24d71563 bne a4,a3,c00272ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20937 + c0027270: 02b00693 li a3,43 + c0027274: 24d71563 bne a4,a3,c00274be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20945 p += 2; - c00270a8: 0789 addi a5,a5,2 - c00270aa: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20938 + c0027278: 0789 addi a5,a5,2 + c002727a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20946 s->token.val = TOK_INC; - c00270ac: f9500793 li a5,-107 - c00270b0: b9a1 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20944 + c002727c: f9500793 li a5,-107 + c0027280: b9a1 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20952 if (p[1] == '=') { - c00270b2: 67c2 ld a5,16(sp) - c00270b4: 03d00693 li a3,61 - c00270b8: 0017c703 lbu a4,1(a5) - c00270bc: 00d71763 bne a4,a3,c00270ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20945 + c0027282: 67c2 ld a5,16(sp) + c0027284: 03d00693 li a3,61 + c0027288: 0017c703 lbu a4,1(a5) + c002728c: 00d71763 bne a4,a3,c002729a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20953 p += 2; - c00270c0: 0789 addi a5,a5,2 - c00270c2: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20946 + c0027290: 0789 addi a5,a5,2 + c0027292: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20954 s->token.val = TOK_MINUS_ASSIGN; - c00270c4: f8900793 li a5,-119 - c00270c8: b181 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20947 + c0027294: f8900793 li a5,-119 + c0027298: b181 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20955 } else if (p[1] == '-') { - c00270ca: 02d00693 li a3,45 - c00270ce: 22d71363 bne a4,a3,c00272f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20948 + c002729a: 02d00693 li a3,45 + c002729e: 22d71363 bne a4,a3,c00274c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20956 if (s->allow_html_comments && - c00270d2: 5878 lw a4,116(s0) - c00270d4: cb19 beqz a4,c00270ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20948 (discriminator 1) - c00270d6: 0027c683 lbu a3,2(a5) - c00270da: 03e00713 li a4,62 - c00270de: 00e69663 bne a3,a4,c00270ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20949 + c00272a2: 5878 lw a4,116(s0) + c00272a4: cb19 beqz a4,c00272ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20956 (discriminator 1) + c00272a6: 0027c683 lbu a3,2(a5) + c00272aa: 03e00713 li a4,62 + c00272ae: 00e69663 bne a3,a4,c00272ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20957 p[2] == '>' && s->last_line_num != s->line_num) { - c00270e2: 4414 lw a3,8(s0) - c00270e4: 4458 lw a4,12(s0) - c00270e6: d2e690e3 bne a3,a4,c0026e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20955 + c00272b2: 4414 lw a3,8(s0) + c00272b4: 4458 lw a4,12(s0) + c00272b6: d2e690e3 bne a3,a4,c0026fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20963 p += 2; - c00270ea: 0789 addi a5,a5,2 - c00270ec: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20956 + c00272ba: 0789 addi a5,a5,2 + c00272bc: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20964 s->token.val = TOK_DEC; - c00270ee: f9400793 li a5,-108 - c00270f2: b919 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20962 + c00272be: f9400793 li a5,-108 + c00272c2: b919 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20970 if (p[1] == '=') { - c00270f4: 67c2 ld a5,16(sp) - c00270f6: 03d00693 li a3,61 - c00270fa: 0017c703 lbu a4,1(a5) - c00270fe: 00d71763 bne a4,a3,c002710c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20963 + c00272c4: 67c2 ld a5,16(sp) + c00272c6: 03d00693 li a3,61 + c00272ca: 0017c703 lbu a4,1(a5) + c00272ce: 00d71763 bne a4,a3,c00272dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20971 p += 2; - c0027102: 0789 addi a5,a5,2 - c0027104: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20964 + c00272d2: 0789 addi a5,a5,2 + c00272d4: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20972 s->token.val = TOK_LTE; - c0027106: f9a00793 li a5,-102 - c002710a: befd j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20965 + c00272d6: f9a00793 li a5,-102 + c00272da: befd j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20973 } else if (p[1] == '<') { - c002710c: 03c00613 li a2,60 - c0027110: 02c71063 bne a4,a2,c0027130 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20966 + c00272dc: 03c00613 li a2,60 + c00272e0: 02c71063 bne a4,a2,c0027300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20974 if (p[2] == '=') { - c0027114: 0027c703 lbu a4,2(a5) - c0027118: 00d71763 bne a4,a3,c0027126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20967 + c00272e4: 0027c703 lbu a4,2(a5) + c00272e8: 00d71763 bne a4,a3,c00272f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20975 p += 3; - c002711c: 078d addi a5,a5,3 - c002711e: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20968 + c00272ec: 078d addi a5,a5,3 + c00272ee: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20976 s->token.val = TOK_SHL_ASSIGN; - c0027120: f8a00793 li a5,-118 - c0027124: b6d5 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20970 + c00272f0: f8a00793 li a5,-118 + c00272f4: b6d5 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20978 p += 2; - c0027126: 0789 addi a5,a5,2 - c0027128: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20971 + c00272f6: 0789 addi a5,a5,2 + c00272f8: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20979 s->token.val = TOK_SHL; - c002712a: f9600793 li a5,-106 - c002712e: bee9 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20973 + c00272fa: f9600793 li a5,-106 + c00272fe: bee9 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20981 } else if (s->allow_html_comments && - c0027130: 5874 lw a3,116(s0) - c0027132: ce99 beqz a3,c0027150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20973 (discriminator 1) - c0027134: 02100693 li a3,33 - c0027138: 00d71c63 bne a4,a3,c0027150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20974 - p[1] == '!' && p[2] == '-' && p[3] == '-') { - c002713c: 0027c703 lbu a4,2(a5) - c0027140: 02d00693 li a3,45 - c0027144: 00d71663 bne a4,a3,c0027150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20974 (discriminator 1) - c0027148: 0037c783 lbu a5,3(a5) - c002714c: cae78de3 beq a5,a4,c0026e06 - c0027150: 03c00493 li s1,60 - c0027154: bb59 j c0026eea + c0027300: 5874 lw a3,116(s0) + c0027302: ce99 beqz a3,c0027320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20981 (discriminator 1) + c0027304: 02100693 li a3,33 + c0027308: 00d71c63 bne a4,a3,c0027320 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20982 + p[1] == '!' && p[2] == '-' && p[3] == '-') { + c002730c: 0027c703 lbu a4,2(a5) + c0027310: 02d00693 li a3,45 + c0027314: 00d71663 bne a4,a3,c0027320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20982 (discriminator 1) + c0027318: 0037c783 lbu a5,3(a5) + c002731c: cae78de3 beq a5,a4,c0026fd6 + c0027320: 03c00493 li s1,60 + c0027324: bb59 j c00270ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20990 if (p[1] == '=') { - c0027156: 67c2 ld a5,16(sp) - c0027158: 03d00713 li a4,61 - c002715c: 0017c683 lbu a3,1(a5) - c0027160: 00e69763 bne a3,a4,c002716e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20983 + c0027326: 67c2 ld a5,16(sp) + c0027328: 03d00713 li a4,61 + c002732c: 0017c683 lbu a3,1(a5) + c0027330: 00e69763 bne a3,a4,c002733e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20991 p += 2; - c0027164: 0789 addi a5,a5,2 - c0027166: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20984 + c0027334: 0789 addi a5,a5,2 + c0027336: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20992 s->token.val = TOK_GTE; - c0027168: f9c00793 li a5,-100 - c002716c: be71 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20985 + c0027338: f9c00793 li a5,-100 + c002733c: be71 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20993 } else if (p[1] == '>') { - c002716e: 03e00613 li a2,62 - c0027172: 18c69463 bne a3,a2,c00272fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20986 + c002733e: 03e00613 li a2,62 + c0027342: 18c69463 bne a3,a2,c00274ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20994 if (p[2] == '>') { - c0027176: 0027c603 lbu a2,2(a5) - c002717a: 02d61063 bne a2,a3,c002719a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20987 + c0027346: 0027c603 lbu a2,2(a5) + c002734a: 02d61063 bne a2,a3,c002736a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20995 if (p[3] == '=') { - c002717e: 0037c683 lbu a3,3(a5) - c0027182: 00e69763 bne a3,a4,c0027190 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20988 + c002734e: 0037c683 lbu a3,3(a5) + c0027352: 00e69763 bne a3,a4,c0027360 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20996 p += 4; - c0027186: 0791 addi a5,a5,4 - c0027188: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20989 + c0027356: 0791 addi a5,a5,4 + c0027358: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20997 s->token.val = TOK_SHR_ASSIGN; - c002718a: f8c00793 li a5,-116 - c002718e: bead j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20991 + c002735a: f8c00793 li a5,-116 + c002735e: bead j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20999 p += 3; - c0027190: 078d addi a5,a5,3 - c0027192: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20992 + c0027360: 078d addi a5,a5,3 + c0027362: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21000 s->token.val = TOK_SHR; - c0027194: f9800793 li a5,-104 - c0027198: be85 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20994 + c0027364: f9800793 li a5,-104 + c0027368: be85 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21002 } else if (p[2] == '=') { - c002719a: 00e61763 bne a2,a4,c00271a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20995 + c002736a: 00e61763 bne a2,a4,c0027378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21003 p += 3; - c002719e: 078d addi a5,a5,3 - c00271a0: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20996 + c002736e: 078d addi a5,a5,3 + c0027370: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21004 s->token.val = TOK_SAR_ASSIGN; - c00271a2: f8b00793 li a5,-117 - c00271a6: b68d j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20998 + c0027372: f8b00793 li a5,-117 + c0027376: b68d j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21006 p += 2; - c00271a8: 0789 addi a5,a5,2 - c00271aa: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20999 + c0027378: 0789 addi a5,a5,2 + c002737a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21007 s->token.val = TOK_SAR; - c00271ac: f9700793 li a5,-105 - c00271b0: bea1 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21006 + c002737c: f9700793 li a5,-105 + c0027380: bea1 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21014 if (p[1] == '=') { - c00271b2: 67c2 ld a5,16(sp) - c00271b4: 03d00693 li a3,61 - c00271b8: 0017c703 lbu a4,1(a5) - c00271bc: 02d71063 bne a4,a3,c00271dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21007 + c0027382: 67c2 ld a5,16(sp) + c0027384: 03d00693 li a3,61 + c0027388: 0017c703 lbu a4,1(a5) + c002738c: 02d71063 bne a4,a3,c00273ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21015 if (p[2] == '=') { - c00271c0: 0027c683 lbu a3,2(a5) - c00271c4: 00e69763 bne a3,a4,c00271d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21008 + c0027390: 0027c683 lbu a3,2(a5) + c0027394: 00e69763 bne a3,a4,c00273a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21016 p += 3; - c00271c8: 078d addi a5,a5,3 - c00271ca: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21009 + c0027398: 078d addi a5,a5,3 + c002739a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21017 s->token.val = TOK_STRICT_EQ; - c00271cc: f9e00793 li a5,-98 - c00271d0: be25 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21011 + c002739c: f9e00793 li a5,-98 + c00273a0: be25 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21019 p += 2; - c00271d2: 0789 addi a5,a5,2 - c00271d4: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21012 + c00273a2: 0789 addi a5,a5,2 + c00273a4: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21020 s->token.val = TOK_EQ; - c00271d6: f9d00793 li a5,-99 - c00271da: b63d j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21014 + c00273a6: f9d00793 li a5,-99 + c00273aa: b63d j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21022 } else if (p[1] == '>') { - c00271dc: 03e00693 li a3,62 - c00271e0: 12d71063 bne a4,a3,c0027300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21015 + c00273ac: 03e00693 li a3,62 + c00273b0: 12d71063 bne a4,a3,c00274d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21023 p += 2; - c00271e4: 0789 addi a5,a5,2 - c00271e6: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21016 + c00273b4: 0789 addi a5,a5,2 + c00273b6: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21024 s->token.val = TOK_ARROW; - c00271e8: fa400793 li a5,-92 - c00271ec: be31 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21022 + c00273b8: fa400793 li a5,-92 + c00273bc: be31 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21030 if (p[1] == '=') { - c00271ee: 67c2 ld a5,16(sp) - c00271f0: 03d00693 li a3,61 - c00271f4: 0017c703 lbu a4,1(a5) - c00271f8: 10d71763 bne a4,a3,c0027306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21023 + c00273be: 67c2 ld a5,16(sp) + c00273c0: 03d00693 li a3,61 + c00273c4: 0017c703 lbu a4,1(a5) + c00273c8: 10d71763 bne a4,a3,c00274d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21031 if (p[2] == '=') { - c00271fc: 0027c683 lbu a3,2(a5) - c0027200: 00e69763 bne a3,a4,c002720e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21024 + c00273cc: 0027c683 lbu a3,2(a5) + c00273d0: 00e69763 bne a3,a4,c00273de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21032 p += 3; - c0027204: 078d addi a5,a5,3 - c0027206: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21025 + c00273d4: 078d addi a5,a5,3 + c00273d6: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21033 s->token.val = TOK_STRICT_NEQ; - c0027208: fa000793 li a5,-96 - c002720c: bcf5 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21027 + c00273d8: fa000793 li a5,-96 + c00273dc: bcf5 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21035 p += 2; - c002720e: 0789 addi a5,a5,2 - c0027210: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21028 + c00273de: 0789 addi a5,a5,2 + c00273e0: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21036 s->token.val = TOK_NEQ; - c0027212: f9f00793 li a5,-97 - c0027216: bccd j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21035 + c00273e2: f9f00793 li a5,-97 + c00273e6: bccd j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21043 if (p[1] == '=') { - c0027218: 67c2 ld a5,16(sp) - c002721a: 03d00713 li a4,61 - c002721e: 0017c683 lbu a3,1(a5) - c0027222: 00e69763 bne a3,a4,c0027230 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21036 + c00273e8: 67c2 ld a5,16(sp) + c00273ea: 03d00713 li a4,61 + c00273ee: 0017c683 lbu a3,1(a5) + c00273f2: 00e69763 bne a3,a4,c0027400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21044 p += 2; - c0027226: 0789 addi a5,a5,2 - c0027228: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21037 + c00273f6: 0789 addi a5,a5,2 + c00273f8: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21045 s->token.val = TOK_AND_ASSIGN; - c002722a: f8d00793 li a5,-115 - c002722e: bce9 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21038 + c00273fa: f8d00793 li a5,-115 + c00273fe: bce9 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21046 } else if (p[1] == '&') { - c0027230: 02600613 li a2,38 - c0027234: 0cc69c63 bne a3,a2,c002730c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21039 + c0027400: 02600613 li a2,38 + c0027404: 0cc69c63 bne a3,a2,c00274dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21047 if (p[2] == '=') { - c0027238: 0027c683 lbu a3,2(a5) - c002723c: 00e69763 bne a3,a4,c002724a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21040 + c0027408: 0027c683 lbu a3,2(a5) + c002740c: 00e69763 bne a3,a4,c002741a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21048 p += 3; - c0027240: 078d addi a5,a5,3 - c0027242: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21041 + c0027410: 078d addi a5,a5,3 + c0027412: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21049 s->token.val = TOK_LAND_ASSIGN; - c0027244: f9100793 li a5,-111 - c0027248: b4c1 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21043 + c0027414: f9100793 li a5,-111 + c0027418: b4c1 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21051 p += 2; - c002724a: 0789 addi a5,a5,2 - c002724c: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21044 + c002741a: 0789 addi a5,a5,2 + c002741c: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21052 s->token.val = TOK_LAND; - c002724e: fa100793 li a5,-95 - c0027252: bc5d j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21078 + c002741e: fa100793 li a5,-95 + c0027422: bc5d j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21086 if (p[1] == '=') { - c0027254: 67c2 ld a5,16(sp) - c0027256: 03d00713 li a4,61 - c002725a: 0017c683 lbu a3,1(a5) - c002725e: 0ae69a63 bne a3,a4,c0027312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21079 + c0027424: 67c2 ld a5,16(sp) + c0027426: 03d00713 li a4,61 + c002742a: 0017c683 lbu a3,1(a5) + c002742e: 0ae69a63 bne a3,a4,c00274e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21087 p += 2; - c0027262: 0789 addi a5,a5,2 - c0027264: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21080 + c0027432: 0789 addi a5,a5,2 + c0027434: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21088 s->token.val = TOK_XOR_ASSIGN; - c0027266: f8e00793 li a5,-114 - c002726a: bc79 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21090 + c0027436: f8e00793 li a5,-114 + c002743a: bc79 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21098 } else if (p[1] == '|') { - c002726c: 0b769663 bne a3,s7,c0027318 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21091 + c002743c: 0b769663 bne a3,s7,c00274e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21099 if (p[2] == '=') { - c0027270: 0027c683 lbu a3,2(a5) - c0027274: 00e69763 bne a3,a4,c0027282 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21092 + c0027440: 0027c683 lbu a3,2(a5) + c0027444: 00e69763 bne a3,a4,c0027452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21100 p += 3; - c0027278: 078d addi a5,a5,3 - c002727a: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21093 + c0027448: 078d addi a5,a5,3 + c002744a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21101 s->token.val = TOK_LOR_ASSIGN; - c002727c: f9200793 li a5,-110 - c0027280: b461 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21095 + c002744c: f9200793 li a5,-110 + c0027450: b461 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21103 p += 2; - c0027282: 0789 addi a5,a5,2 - c0027284: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21096 + c0027452: 0789 addi a5,a5,2 + c0027454: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21104 s->token.val = TOK_LOR; - c0027286: fa200793 li a5,-94 - c002728a: bcbd j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21103 + c0027456: fa200793 li a5,-94 + c002745a: bcbd j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21111 if (p[1] == '?') { - c002728c: 67c2 ld a5,16(sp) - c002728e: 03f00693 li a3,63 - c0027292: 0017c703 lbu a4,1(a5) - c0027296: 02d71263 bne a4,a3,c00272ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21104 + c002745c: 67c2 ld a5,16(sp) + c002745e: 03f00693 li a3,63 + c0027462: 0017c703 lbu a4,1(a5) + c0027466: 02d71263 bne a4,a3,c002748a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21112 if (p[2] == '=') { - c002729a: 0027c683 lbu a3,2(a5) - c002729e: 03d00713 li a4,61 - c00272a2: 00e69763 bne a3,a4,c00272b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21105 + c002746a: 0027c683 lbu a3,2(a5) + c002746e: 03d00713 li a4,61 + c0027472: 00e69763 bne a3,a4,c0027480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21113 p += 3; - c00272a6: 078d addi a5,a5,3 - c00272a8: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21106 + c0027476: 078d addi a5,a5,3 + c0027478: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21114 s->token.val = TOK_DOUBLE_QUESTION_MARK_ASSIGN; - c00272aa: f9300793 li a5,-109 - c00272ae: bca9 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21108 + c002747a: f9300793 li a5,-109 + c002747e: bca9 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21116 p += 2; - c00272b0: 0789 addi a5,a5,2 - c00272b2: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21109 + c0027480: 0789 addi a5,a5,2 + c0027482: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21117 s->token.val = TOK_DOUBLE_QUESTION_MARK; - c00272b4: fa600793 li a5,-90 - c00272b8: bc81 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21111 + c0027484: fa600793 li a5,-90 + c0027488: bc81 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21119 } else if (p[1] == '.' && !(p[2] >= '0' && p[2] <= '9')) { - c00272ba: 02e00693 li a3,46 - c00272be: 06d71063 bne a4,a3,c002731e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21111 (discriminator 1) - c00272c2: 0027c703 lbu a4,2(a5) - c00272c6: 46a5 li a3,9 - c00272c8: fd07071b addiw a4,a4,-48 - c00272cc: 0ff77713 zext.b a4,a4 - c00272d0: 04e6f763 bgeu a3,a4,c002731e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21112 + c002748a: 02e00693 li a3,46 + c002748e: 06d71063 bne a4,a3,c00274ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21119 (discriminator 1) + c0027492: 0027c703 lbu a4,2(a5) + c0027496: 46a5 li a3,9 + c0027498: fd07071b addiw a4,a4,-48 + c002749c: 0ff77713 zext.b a4,a4 + c00274a0: 04e6f763 bgeu a3,a4,c00274ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21120 p += 2; - c00272d4: 0789 addi a5,a5,2 - c00272d6: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21113 + c00274a4: 0789 addi a5,a5,2 + c00274a6: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21121 s->token.val = TOK_QUESTION_MARK_DOT; - c00272d8: fa700793 li a5,-89 - c00272dc: b435 j c0026d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20681 + c00274a8: fa700793 li a5,-89 + c00274ac: b435 j c0026ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20689 c = *p; - c00272de: 4481 li s1,0 - c00272e0: b129 j c0026eea - c00272e2: 02a00493 li s1,42 - c00272e6: b111 j c0026eea - c00272e8: 02500493 li s1,37 - c00272ec: befd j c0026eea - c00272ee: 02b00493 li s1,43 - c00272f2: bee5 j c0026eea - c00272f4: 02d00493 li s1,45 - c00272f8: becd j c0026eea - c00272fa: 03e00493 li s1,62 - c00272fe: b6f5 j c0026eea - c0027300: 03d00493 li s1,61 - c0027304: b6dd j c0026eea - c0027306: 02100493 li s1,33 - c002730a: b6c5 j c0026eea - c002730c: 02600493 li s1,38 - c0027310: bee9 j c0026eea - c0027312: 05e00493 li s1,94 - c0027316: bed1 j c0026eea - c0027318: 07c00493 li s1,124 - c002731c: b6f9 j c0026eea - c002731e: 03f00493 li s1,63 - c0027322: b6e1 j c0026eea - -00000000c0027324 : + c00274ae: 4481 li s1,0 + c00274b0: b129 j c00270ba + c00274b2: 02a00493 li s1,42 + c00274b6: b111 j c00270ba + c00274b8: 02500493 li s1,37 + c00274bc: befd j c00270ba + c00274be: 02b00493 li s1,43 + c00274c2: bee5 j c00270ba + c00274c4: 02d00493 li s1,45 + c00274c8: becd j c00270ba + c00274ca: 03e00493 li s1,62 + c00274ce: b6f5 j c00270ba + c00274d0: 03d00493 li s1,61 + c00274d4: b6dd j c00270ba + c00274d6: 02100493 li s1,33 + c00274da: b6c5 j c00270ba + c00274dc: 02600493 li s1,38 + c00274e0: bee9 j c00270ba + c00274e2: 05e00493 li s1,94 + c00274e6: bed1 j c00270ba + c00274e8: 07c00493 li s1,124 + c00274ec: b6f9 j c00270ba + c00274ee: 03f00493 li s1,63 + c00274f2: b6e1 j c00270ba + +00000000c00274f4 : js_parse_seek_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22469 s->token.line_num = sp->last_line_num; - c0027324: 4198 lw a4,0(a1) - c0027326: cd58 sw a4,28(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 + c00274f4: 4198 lw a4,0(a1) + c00274f6: cd58 sw a4,28(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22470 s->line_num = sp->line_num; - c0027328: 41d8 lw a4,4(a1) - c002732a: c558 sw a4,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 + c00274f8: 41d8 lw a4,4(a1) + c00274fa: c558 sw a4,12(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22471 s->buf_ptr = sp->ptr; - c002732c: 6998 ld a4,16(a1) - c002732e: ed38 sd a4,88(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22464 + c00274fc: 6998 ld a4,16(a1) + c00274fe: ed38 sd a4,88(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22472 s->got_lf = sp->got_lf; - c0027330: 4598 lw a4,8(a1) - c0027332: c538 sw a4,72(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22465 + c0027500: 4598 lw a4,8(a1) + c0027502: c538 sw a4,72(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22473 return next_token(s); - c0027334: 863ff06f j c0026b96 + c0027504: 863ff06f j c0026d66 -00000000c0027338 : +00000000c0027508 : js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33512 static __exception int js_parse_directives(JSParseState *s) - c0027338: 7119 addi sp,sp,-128 - c002733a: f8a2 sd s0,112(sp) - c002733c: f4a6 sd s1,104(sp) - c002733e: f0ca sd s2,96(sp) - c0027340: ecce sd s3,88(sp) - c0027342: e8d2 sd s4,80(sp) - c0027344: e4d6 sd s5,72(sp) - c0027346: e0da sd s6,64(sp) - c0027348: fc5e sd s7,56(sp) - c002734a: fc86 sd ra,120(sp) + c0027508: 7119 addi sp,sp,-128 + c002750a: f8a2 sd s0,112(sp) + c002750c: f4a6 sd s1,104(sp) + c002750e: f0ca sd s2,96(sp) + c0027510: ecce sd s3,88(sp) + c0027512: e8d2 sd s4,80(sp) + c0027514: e4d6 sd s5,72(sp) + c0027516: e0da sd s6,64(sp) + c0027518: fc5e sd s7,56(sp) + c002751a: fc86 sd ra,120(sp) js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002734c: 451c lw a5,8(a0) + c002751c: 451c lw a5,8(a0) js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33512 static __exception int js_parse_directives(JSParseState *s) - c002734e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33515 + c002751e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33523 while(s->token.val == TOK_STRING) { - c0027350: f8100913 li s2,-127 + c0027520: f8100913 li s2,-127 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c0027354: cc3e sw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 + c0027524: cc3e sw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c0027356: 4d5c lw a5,28(a0) + c0027526: 4d5c lw a5,28(a0) js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33525 snprintf(str, sizeof str, "%.*s", - c0027358: 00038997 auipc s3,0x38 - c002735c: e5898993 addi s3,s3,-424 # c005f1b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 + c0027528: 00038997 auipc s3,0x38 + c002752c: ee898993 addi s3,s3,-280 # c005f410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c0027360: fd700a13 li s4,-41 + c0027530: fd700a13 li s4,-41 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c0027364: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c0027534: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c0027366: 711c ld a5,32(a0) + c0027536: 711c ld a5,32(a0) js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c0027368: 03b00a93 li s5,59 - c002736c: 07d00b13 li s6,125 + c0027538: 03b00a93 li s5,59 + c002753c: 07d00b13 li s6,125 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c0027370: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c0027540: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c0027372: 453c lw a5,72(a0) + c0027542: 453c lw a5,72(a0) js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c0027374: faa00b93 li s7,-86 - c0027378: 00038497 auipc s1,0x38 - c002737c: e5c48493 addi s1,s1,-420 # c005f1d4 + c0027544: faa00b93 li s7,-86 + c0027548: 00038497 auipc s1,0x38 + c002754c: eec48493 addi s1,s1,-276 # c005f434 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c0027380: d03e sw a5,32(sp) + c0027550: d03e sw a5,32(sp) js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33515 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33523 while(s->token.val == TOK_STRING) { - c0027382: 4c1c lw a5,24(s0) - c0027384: 09279163 bne a5,s2,c0027406 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33518 + c0027552: 4c1c lw a5,24(s0) + c0027554: 09279163 bne a5,s2,c00275d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33526 (int)(s->buf_ptr - s->token.ptr - 2), s->token.ptr + 1); - c0027388: 7018 ld a4,32(s0) - c002738a: 6c34 ld a3,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33517 + c0027558: 7018 ld a4,32(s0) + c002755a: 6c34 ld a3,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33525 snprintf(str, sizeof str, "%.*s", - c002738c: 864e mv a2,s3 - c002738e: 45d1 li a1,20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33518 + c002755c: 864e mv a2,s3 + c002755e: 45d1 li a1,20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33526 (int)(s->buf_ptr - s->token.ptr - 2), s->token.ptr + 1); - c0027390: 8e99 sub a3,a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33517 + c0027560: 8e99 sub a3,a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33525 snprintf(str, sizeof str, "%.*s", - c0027392: 36f9 addiw a3,a3,-2 - c0027394: 0705 addi a4,a4,1 - c0027396: 850a mv a0,sp - c0027398: 66d2c0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33520 + c0027562: 36f9 addiw a3,a3,-2 + c0027564: 0705 addi a4,a4,1 + c0027566: 850a mv a0,sp + c0027568: 66d2c0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33528 if (next_token(s)) - c002739c: 8522 mv a0,s0 - c002739e: ff8ff0ef jal ra,c0026b96 - c00273a2: cd09 beqz a0,c00273bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33521 + c002756c: 8522 mv a0,s0 + c002756e: ff8ff0ef jal ra,c0026d66 + c0027572: cd09 beqz a0,c002758c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33529 return -1; - c00273a4: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33598 -} - c00273a6: 70e6 ld ra,120(sp) - c00273a8: 7446 ld s0,112(sp) - c00273aa: 74a6 ld s1,104(sp) - c00273ac: 7906 ld s2,96(sp) - c00273ae: 69e6 ld s3,88(sp) - c00273b0: 6a46 ld s4,80(sp) - c00273b2: 6aa6 ld s5,72(sp) - c00273b4: 6b06 ld s6,64(sp) - c00273b6: 7be2 ld s7,56(sp) - c00273b8: 6109 addi sp,sp,128 - c00273ba: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 + c0027574: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33606 +} + c0027576: 70e6 ld ra,120(sp) + c0027578: 7446 ld s0,112(sp) + c002757a: 74a6 ld s1,104(sp) + c002757c: 7906 ld s2,96(sp) + c002757e: 69e6 ld s3,88(sp) + c0027580: 6a46 ld s4,80(sp) + c0027582: 6aa6 ld s5,72(sp) + c0027584: 6b06 ld s6,64(sp) + c0027586: 7be2 ld s7,56(sp) + c0027588: 6109 addi sp,sp,128 + c002758a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c00273bc: 4c1c lw a5,24(s0) - c00273be: 0547d963 bge a5,s4,c0027410 - c00273c2: 0177dd63 bge a5,s7,c00273dc - c00273c6: f8500713 li a4,-123 - c00273ca: 02e7d963 bge a5,a4,c00273fc - c00273ce: f8000713 li a4,-128 - c00273d2: 02e7ca63 blt a5,a4,c0027406 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33574 + c002758c: 4c1c lw a5,24(s0) + c002758e: 0547d963 bge a5,s4,c00275e0 + c0027592: 0177dd63 bge a5,s7,c00275ac + c0027596: f8500713 li a4,-123 + c002759a: 02e7d963 bge a5,a4,c00275cc + c002759e: f8000713 li a4,-128 + c00275a2: 02e7ca63 blt a5,a4,c00275d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33582 if (s->got_lf) - c00273d6: 443c lw a5,72(s0) - c00273d8: e3a1 bnez a5,c0027418 - c00273da: a035 j c0027406 - c00273dc: 0567879b addiw a5,a5,86 - c00273e0: 0007869b sext.w a3,a5 - c00273e4: 02c00713 li a4,44 - c00273e8: 00d76f63 bltu a4,a3,c0027406 - c00273ec: 02079713 slli a4,a5,0x20 - c00273f0: 01e75793 srli a5,a4,0x1e - c00273f4: 97a6 add a5,a5,s1 - c00273f6: 439c lw a5,0(a5) - c00273f8: 97a6 add a5,a5,s1 - c00273fa: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 + c00275a6: 443c lw a5,72(s0) + c00275a8: e3a1 bnez a5,c00275e8 + c00275aa: a035 j c00275d6 + c00275ac: 0567879b addiw a5,a5,86 + c00275b0: 0007869b sext.w a3,a5 + c00275b4: 02c00713 li a4,44 + c00275b8: 00d76f63 bltu a4,a3,c00275d6 + c00275bc: 02079713 slli a4,a5,0x20 + c00275c0: 01e75793 srli a5,a4,0x1e + c00275c4: 97a6 add a5,a5,s1 + c00275c6: 439c lw a5,0(a5) + c00275c8: 97a6 add a5,a5,s1 + c00275ca: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c00273fc: 06c7879b addiw a5,a5,108 - c0027400: 4705 li a4,1 - c0027402: fcf77ae3 bgeu a4,a5,c00273d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33597 + c00275cc: 06c7879b addiw a5,a5,108 + c00275d0: 4705 li a4,1 + c00275d2: fcf77ae3 bgeu a4,a5,c00275a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33605 return js_parse_seek_token(s, &pos); - c0027406: 082c addi a1,sp,24 - c0027408: 8522 mv a0,s0 - c002740a: f1bff0ef jal ra,c0027324 - c002740e: bf61 j c00273a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33524 + c00275d6: 082c addi a1,sp,24 + c00275d8: 8522 mv a0,s0 + c00275da: f1bff0ef jal ra,c00274f4 + c00275de: bf61 j c0027576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33532 switch (s->token.val) { - c0027410: 03578763 beq a5,s5,c002743e - c0027414: ff6799e3 bne a5,s6,c0027406 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33582 + c00275e0: 03578763 beq a5,s5,c002760e + c00275e4: ff6799e3 bne a5,s6,c00275d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33590 if (!strcmp(str, "use strict")) { - c0027418: 00038597 auipc a1,0x38 - c002741c: da058593 addi a1,a1,-608 # c005f1b8 - c0027420: 850a mv a0,sp - c0027422: 52c2f0ef jal ra,c005694e - c0027426: e10d bnez a0,c0027448 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33583 + c00275e8: 00038597 auipc a1,0x38 + c00275ec: e3058593 addi a1,a1,-464 # c005f418 + c00275f0: 850a mv a0,sp + c00275f2: 52c2f0ef jal ra,c0056b1e + c00275f6: e10d bnez a0,c0027618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33591 s->cur_func->has_use_strict = TRUE; - c0027428: 743c ld a5,104(s0) - c002742a: 4705 li a4,1 - c002742c: cfb8 sw a4,88(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33584 + c00275f8: 743c ld a5,104(s0) + c00275fa: 4705 li a4,1 + c00275fc: cfb8 sw a4,88(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33592 s->cur_func->js_mode |= JS_MODE_STRICT; - c002742e: 7438 ld a4,104(s0) - c0027430: 08674783 lbu a5,134(a4) - c0027434: 0017e793 ori a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33588 + c00275fe: 7438 ld a4,104(s0) + c0027600: 08674783 lbu a5,134(a4) + c0027604: 0017e793 ori a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33596 s->cur_func->js_mode |= JS_MODE_STRIP; - c0027438: 08f70323 sb a5,134(a4) - c002743c: b799 j c0027382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33526 + c0027608: 08f70323 sb a5,134(a4) + c002760c: b799 j c0027552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33534 if (next_token(s)) - c002743e: 8522 mv a0,s0 - c0027440: f56ff0ef jal ra,c0026b96 - c0027444: d971 beqz a0,c0027418 - c0027446: bfb9 j c00273a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33587 + c002760e: 8522 mv a0,s0 + c0027610: f56ff0ef jal ra,c0026d66 + c0027614: d971 beqz a0,c00275e8 + c0027616: bfb9 j c0027574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33595 else if (!strcmp(str, "use strip")) { - c0027448: 00038597 auipc a1,0x38 - c002744c: d8058593 addi a1,a1,-640 # c005f1c8 - c0027450: 850a mv a0,sp - c0027452: 4fc2f0ef jal ra,c005694e - c0027456: f515 bnez a0,c0027382 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33588 + c0027618: 00038597 auipc a1,0x38 + c002761c: e1058593 addi a1,a1,-496 # c005f428 + c0027620: 850a mv a0,sp + c0027622: 4fc2f0ef jal ra,c0056b1e + c0027626: f515 bnez a0,c0027552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33596 s->cur_func->js_mode |= JS_MODE_STRIP; - c0027458: 7438 ld a4,104(s0) - c002745a: 08674783 lbu a5,134(a4) - c002745e: 0027e793 ori a5,a5,2 - c0027462: bfd9 j c0027438 + c0027628: 7438 ld a4,104(s0) + c002762a: 08674783 lbu a5,134(a4) + c002762e: 0027e793 ori a5,a5,2 + c0027632: bfd9 j c0027608 -00000000c0027464 : +00000000c0027634 : is_let(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26200 { - c0027464: 7139 addi sp,sp,-64 - c0027466: f04a sd s2,32(sp) - c0027468: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26195 + c0027634: 7139 addi sp,sp,-64 + c0027636: f04a sd s2,32(sp) + c0027638: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26203 if (token_is_pseudo_keyword(s, JS_ATOM_let)) { - c002746a: 02700593 li a1,39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26192 + c002763a: 02700593 li a1,39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26200 { - c002746e: f822 sd s0,48(sp) - c0027470: f426 sd s1,40(sp) - c0027472: fc06 sd ra,56(sp) - c0027474: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26195 + c002763e: f822 sd s0,48(sp) + c0027640: f426 sd s1,40(sp) + c0027642: fc06 sd ra,56(sp) + c0027644: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26203 if (token_is_pseudo_keyword(s, JS_ATOM_let)) { - c0027476: edfdc0ef jal ra,c0004354 - c002747a: 842a mv s0,a0 - c002747c: c139 beqz a0,c00274c2 + c0027646: d0fdc0ef jal ra,c0004354 + c002764a: 842a mv s0,a0 + c002764c: c139 beqz a0,c0027692 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002747e: 449c lw a5,8(s1) + c002764e: 449c lw a5,8(s1) is_let(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26208 if (next_token(s)) { - c0027480: 8526 mv a0,s1 + c0027650: 8526 mv a0,s1 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c0027482: c43e sw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 + c0027652: c43e sw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c0027484: 4cdc lw a5,28(s1) - c0027486: c63e sw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c0027654: 4cdc lw a5,28(s1) + c0027656: c63e sw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c0027488: 709c ld a5,32(s1) - c002748a: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c0027658: 709c ld a5,32(s1) + c002765a: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c002748c: 44bc lw a5,72(s1) - c002748e: c83e sw a5,16(sp) + c002765c: 44bc lw a5,72(s1) + c002765e: c83e sw a5,16(sp) is_let(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26208 if (next_token(s)) { - c0027490: f06ff0ef jal ra,c0026b96 - c0027494: 842a mv s0,a0 - c0027496: ed39 bnez a0,c00274f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26204 + c0027660: f06ff0ef jal ra,c0026d66 + c0027664: 842a mv s0,a0 + c0027666: ed39 bnez a0,c00276c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26212 if (s->token.val == '[') { - c0027498: 4c9c lw a5,24(s1) - c002749a: 05b00713 li a4,91 - c002749e: 04e78d63 beq a5,a4,c00274f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26210 + c0027668: 4c9c lw a5,24(s1) + c002766a: 05b00713 li a4,91 + c002766e: 04e78d63 beq a5,a4,c00276c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26218 if (s->token.val == '{' || - c00274a2: 07b00713 li a4,123 - c00274a6: 02e78e63 beq a5,a4,c00274e2 - c00274aa: f8300713 li a4,-125 - c00274ae: 02e79163 bne a5,a4,c00274d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26211 + c0027672: 07b00713 li a4,123 + c0027676: 02e78e63 beq a5,a4,c00276b2 + c002767a: f8300713 li a4,-125 + c002767e: 02e79163 bne a5,a4,c00276a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26219 (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved) || - c00274b2: 589c lw a5,48(s1) - c00274b4: c79d beqz a5,c00274e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26226 + c0027682: 589c lw a5,48(s1) + c0027684: c79d beqz a5,c00276b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26234 if (js_parse_seek_token(s, &pos)) { - c00274b6: 002c addi a1,sp,8 - c00274b8: 8526 mv a0,s1 - c00274ba: e6bff0ef jal ra,c0027324 - c00274be: c111 beqz a0,c00274c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26227 + c0027686: 002c addi a1,sp,8 + c0027688: 8526 mv a0,s1 + c002768a: e6bff0ef jal ra,c00274f4 + c002768e: c111 beqz a0,c0027692 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26235 res = -1; - c00274c0: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26237 -} - c00274c2: 70e2 ld ra,56(sp) - c00274c4: 8522 mv a0,s0 - c00274c6: 7442 ld s0,48(sp) - c00274c8: 74a2 ld s1,40(sp) - c00274ca: 7902 ld s2,32(sp) - c00274cc: 6121 addi sp,sp,64 - c00274ce: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26211 + c0027690: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26245 +} + c0027692: 70e2 ld ra,56(sp) + c0027694: 8522 mv a0,s0 + c0027696: 7442 ld s0,48(sp) + c0027698: 74a2 ld s1,40(sp) + c002769a: 7902 ld s2,32(sp) + c002769c: 6121 addi sp,sp,64 + c002769e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26219 (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved) || - c00274d0: fd100713 li a4,-47 - c00274d4: 00e78763 beq a5,a4,c00274e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26212 + c00276a0: fd100713 li a4,-47 + c00276a4: 00e78763 beq a5,a4,c00276b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26220 s->token.val == TOK_LET || - c00274d8: 0297879b addiw a5,a5,41 - c00274dc: 4705 li a4,1 - c00274de: fcf76ce3 bltu a4,a5,c00274b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26218 + c00276a8: 0297879b addiw a5,a5,41 + c00276ac: 4705 li a4,1 + c00276ae: fcf76ce3 bltu a4,a5,c0027686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26226 if (s->last_line_num == s->token.line_num || (decl_mask & DECL_MASK_OTHER)) { - c00274e2: 4498 lw a4,8(s1) - c00274e4: 4cdc lw a5,28(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26219 + c00276b2: 4498 lw a4,8(s1) + c00276b4: 4cdc lw a5,28(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26227 res = TRUE; - c00274e6: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26218 + c00276b6: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26226 if (s->last_line_num == s->token.line_num || (decl_mask & DECL_MASK_OTHER)) { - c00274e8: fcf707e3 beq a4,a5,c00274b6 - c00274ec: 4029541b sraiw s0,s2,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26219 + c00276b8: fcf707e3 beq a4,a5,c0027686 + c00276bc: 4029541b sraiw s0,s2,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26227 res = TRUE; - c00274f0: 8805 andi s0,s0,1 - c00274f2: b7d1 j c00274b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26201 + c00276c0: 8805 andi s0,s0,1 + c00276c2: b7d1 j c0027686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26209 res = -1; - c00274f4: 547d li s0,-1 - c00274f6: b7c1 j c00274b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26219 + c00276c4: 547d li s0,-1 + c00276c6: b7c1 j c0027686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26227 res = TRUE; - c00274f8: 4405 li s0,1 - c00274fa: bf75 j c00274b6 + c00276c8: 4405 li s0,1 + c00276ca: bf75 j c0027686 -00000000c00274fc : +00000000c00276cc : js_parse_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20447 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20455 { - c00274fc: 7131 addi sp,sp,-192 - c00274fe: f922 sd s0,176(sp) - c0027500: fd06 sd ra,184(sp) - c0027502: f526 sd s1,168(sp) - c0027504: f14a sd s2,160(sp) - c0027506: ed4e sd s3,152(sp) - c0027508: e952 sd s4,144(sp) - c002750a: e556 sd s5,136(sp) - c002750c: e15a sd s6,128(sp) - c002750e: fcde sd s7,120(sp) - c0027510: f8e2 sd s8,112(sp) - c0027512: f4e6 sd s9,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20454 + c00276cc: 7131 addi sp,sp,-192 + c00276ce: f922 sd s0,176(sp) + c00276d0: fd06 sd ra,184(sp) + c00276d2: f526 sd s1,168(sp) + c00276d4: f14a sd s2,160(sp) + c00276d6: ed4e sd s3,152(sp) + c00276d8: e952 sd s4,144(sp) + c00276da: e556 sd s5,136(sp) + c00276dc: e15a sd s6,128(sp) + c00276de: fcde sd s7,120(sp) + c00276e0: f8e2 sd s8,112(sp) + c00276e2: f4e6 sd s9,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20462 p = s->buf_ptr; - c0027514: 05853c83 ld s9,88(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20447 + c00276e4: 05853c83 ld s9,88(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20455 { - c0027518: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20457 + c00276e8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20465 if (string_buffer_init(s->ctx, b, 32)) - c002751a: 6108 ld a0,0(a0) - c002751c: 02000613 li a2,32 - c0027520: 100c addi a1,sp,32 - c0027522: eacf10ef jal ra,c0018bce - c0027526: e139 bnez a0,c002756c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20459 + c00276ea: 6108 ld a0,0(a0) + c00276ec: 02000613 li a2,32 + c00276f0: 100c addi a1,sp,32 + c00276f2: eacf10ef jal ra,c0018d9e + c00276f6: e139 bnez a0,c002773c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20467 if (string_buffer_init(s->ctx, b2, 1)) - c0027528: 6008 ld a0,0(s0) - c002752a: 4605 li a2,1 - c002752c: 008c addi a1,sp,64 - c002752e: ea0f10ef jal ra,c0018bce - c0027532: e51d bnez a0,c0027560 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20506 + c00276f8: 6008 ld a0,0(s0) + c00276fa: 4605 li a2,1 + c00276fc: 008c addi a1,sp,64 + c00276fe: ea0f10ef jal ra,c0018d9e + c0027702: e51d bnez a0,c0027730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20514 if (c == CP_LS || c == CP_PS) { - c0027534: 7979 lui s2,0xffffe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20455 + c0027704: 7979 lui s2,0xffffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20463 p++; - c0027536: 0c85 addi s9,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20456 + c0027706: 0c85 addi s9,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20464 in_class = FALSE; - c0027538: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20468 + c0027708: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20476 if (c == '\n' || c == '\r') { - c002753a: 4a29 li s4,10 - c002753c: 4ab5 li s5,13 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20470 + c002770a: 4a29 li s4,10 + c002770c: 4ab5 li s5,13 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20478 } else if (c == '/') { - c002753e: 02f00b93 li s7,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20473 + c002770e: 02f00b93 li s7,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20481 } else if (c == '[') { - c0027542: 05b00c13 li s8,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20474 + c0027712: 05b00c13 li s8,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20482 in_class = TRUE; - c0027546: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20506 + c0027716: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20514 if (c == CP_LS || c == CP_PS) { - c0027548: fd89091b addiw s2,s2,-40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20462 + c0027718: fd89091b addiw s2,s2,-40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20470 if (p >= s->buf_end) { - c002754c: 703c ld a5,96(s0) - c002754e: 02fce163 bltu s9,a5,c0027570 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20464 + c002771c: 703c ld a5,96(s0) + c002771e: 02fce163 bltu s9,a5,c0027740 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20472 js_parse_error(s, "unexpected end of regexp"); - c0027552: 00038597 auipc a1,0x38 - c0027556: d3658593 addi a1,a1,-714 # c005f288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20501 + c0027722: 00038597 auipc a1,0x38 + c0027726: dc658593 addi a1,a1,-570 # c005f4e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20509 js_parse_error(s, "invalid UTF-8 sequence"); - c002755a: 8522 mv a0,s0 - c002755c: d5dfe0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20539 + c002772a: 8522 mv a0,s0 + c002772c: d5dfe0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20547 string_buffer_free(b); - c0027560: 1008 addi a0,sp,32 - c0027562: 905df0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20540 + c0027730: 1008 addi a0,sp,32 + c0027732: 823df0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20548 string_buffer_free(b2); - c0027566: 0088 addi a0,sp,64 - c0027568: 8ffdf0ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20458 + c0027736: 0088 addi a0,sp,64 + c0027738: 81ddf0ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20466 return -1; - c002756c: 597d li s2,-1 - c002756e: aa11 j c0027682 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20467 + c002773c: 597d li s2,-1 + c002773e: aa11 j c0027852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20475 c = *p++; - c0027570: 000cc583 lbu a1,0(s9) # 110000 <__clzdi2-0xbfef0000> - c0027574: 001c8493 addi s1,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20468 + c0027740: 000cc583 lbu a1,0(s9) # 110000 <__clzdi2-0xbfef0000> + c0027744: 001c8493 addi s1,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20476 if (c == '\n' || c == '\r') { - c0027578: 0d458863 beq a1,s4,c0027648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20468 (discriminator 1) - c002757c: 0d558663 beq a1,s5,c0027648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20470 + c0027748: 0d458863 beq a1,s4,c0027818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20476 (discriminator 1) + c002774c: 0d558663 beq a1,s5,c0027818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20478 } else if (c == '/') { - c0027580: 05759563 bne a1,s7,c00275ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20471 + c0027750: 05759563 bne a1,s7,c002779a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20479 if (!in_class) - c0027584: 0c099863 bnez s3,c0027654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20520 + c0027754: 0c099863 bnez s3,c0027824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20528 if (c >= 0x80) { - c0027588: 07f00993 li s3,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20522 + c0027758: 07f00993 li s3,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20530 if (c > 0x10FFFF) { - c002758c: 00110a37 lui s4,0x110 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20519 + c002775c: 00110a37 lui s4,0x110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20527 c = *p_next++; - c0027590: 00148793 addi a5,s1,1 - c0027594: ec3e sd a5,24(sp) - c0027596: 0004c583 lbu a1,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20520 + c0027760: 00148793 addi a5,s1,1 + c0027764: ec3e sd a5,24(sp) + c0027766: 0004c583 lbu a1,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20528 if (c >= 0x80) { - c002759a: 00b9fb63 bgeu s3,a1,c00275b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20521 + c002776a: 00b9fb63 bgeu s3,a1,c0027780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20529 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p_next); - c002759e: 4599 li a1,6 - c00275a0: 0830 addi a2,sp,24 - c00275a2: 8526 mv a0,s1 - c00275a4: 177200ef jal ra,c0047f1a - c00275a8: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20522 + c002776e: 4599 li a1,6 + c0027770: 0830 addi a2,sp,24 + c0027772: 8526 mv a0,s1 + c0027774: 177200ef jal ra,c00480ea + c0027778: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20530 if (c > 0x10FFFF) { - c00275ac: 0745fc63 bgeu a1,s4,c0027624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20526 + c002777c: 0745fc63 bgeu a1,s4,c00277f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20534 if (!lre_js_is_ident_next(c)) - c00275b0: 852e mv a0,a1 - c00275b2: e42e sd a1,8(sp) - c00275b4: f14de0ef jal ra,c0005cc8 - c00275b8: 892a mv s2,a0 - c00275ba: c555 beqz a0,c0027666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20528 + c0027780: 852e mv a0,a1 + c0027782: e42e sd a1,8(sp) + c0027784: e32de0ef jal ra,c0005db6 + c0027788: 892a mv s2,a0 + c002778a: c555 beqz a0,c0027836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20536 if (string_buffer_putc(b2, c)) - c00275bc: 65a2 ld a1,8(sp) - c00275be: 0088 addi a0,sp,64 - c00275c0: c37f10ef jal ra,c00191f6 - c00275c4: fd51 bnez a0,c0027560 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20530 + c002778c: 65a2 ld a1,8(sp) + c002778e: 0088 addi a0,sp,64 + c0027790: c37f10ef jal ra,c00193c6 + c0027794: fd51 bnez a0,c0027730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20538 p = p_next; - c00275c6: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20517 + c0027796: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20525 for(;;) { - c00275c8: b7e1 j c0027590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20473 + c0027798: b7e1 j c0027760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20481 } else if (c == '[') { - c00275ca: 09858463 beq a1,s8,c0027652 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20475 + c002779a: 09858463 beq a1,s8,c0027822 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20483 } else if (c == ']') { - c00275ce: 05d00793 li a5,93 - c00275d2: 08f58863 beq a1,a5,c0027662 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20478 + c002779e: 05d00793 li a5,93 + c00277a2: 08f58863 beq a1,a5,c0027832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20486 } else if (c == '\\') { - c00275d6: 05c00793 li a5,92 - c00275da: 04f59a63 bne a1,a5,c002762e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20479 + c00277a6: 05c00793 li a5,92 + c00277aa: 04f59a63 bne a1,a5,c00277fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20487 if (string_buffer_putc8(b, c)) - c00275de: 05c00593 li a1,92 - c00275e2: 1008 addi a0,sp,32 - c00275e4: b03f10ef jal ra,c00190e6 - c00275e8: fd25 bnez a0,c0027560 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20481 + c00277ae: 05c00593 li a1,92 + c00277b2: 1008 addi a0,sp,32 + c00277b4: b03f10ef jal ra,c00192b6 + c00277b8: fd25 bnez a0,c0027730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20489 c = *p++; - c00275ea: 001cc583 lbu a1,1(s9) - c00275ee: 002c8793 addi a5,s9,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20482 + c00277ba: 001cc583 lbu a1,1(s9) + c00277be: 002c8793 addi a5,s9,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20490 if (c == '\n' || c == '\r') - c00275f2: 05458b63 beq a1,s4,c0027648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20482 (discriminator 1) - c00275f6: 05558963 beq a1,s5,c0027648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20484 + c00277c2: 05458b63 beq a1,s4,c0027818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20490 (discriminator 1) + c00277c6: 05558963 beq a1,s5,c0027818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20492 else if (c == '\0' && p >= s->buf_end) - c00275fa: e591 bnez a1,c0027606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20484 (discriminator 1) - c00275fc: 7038 ld a4,96(s0) - c00275fe: f4e7fae3 bgeu a5,a4,c0027552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20481 + c00277ca: e591 bnez a1,c00277d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20492 (discriminator 1) + c00277cc: 7038 ld a4,96(s0) + c00277ce: f4e7fae3 bgeu a5,a4,c0027722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20489 c = *p++; - c0027602: 84be mv s1,a5 - c0027604: a881 j c0027654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20486 + c00277d2: 84be mv s1,a5 + c00277d4: a881 j c0027824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20494 else if (c >= 0x80) { - c0027606: 07f00713 li a4,127 - c002760a: feb77ce3 bgeu a4,a1,c0027602 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20488 + c00277d6: 07f00713 li a4,127 + c00277da: feb77ce3 bgeu a4,a1,c00277d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20496 c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); - c002760e: 0830 addi a2,sp,24 - c0027610: 4599 li a1,6 - c0027612: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20498 + c00277de: 0830 addi a2,sp,24 + c00277e0: 4599 li a1,6 + c00277e2: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20506 c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); - c0027614: 107200ef jal ra,c0047f1a - c0027618: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20499 + c00277e4: 107200ef jal ra,c00480ea + c00277e8: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20507 if (c > 0x10FFFF) { - c002761c: 001107b7 lui a5,0x110 - c0027620: 00f5ef63 bltu a1,a5,c002763e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20501 + c00277ec: 001107b7 lui a5,0x110 + c00277f0: 00f5ef63 bltu a1,a5,c002780e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20509 js_parse_error(s, "invalid UTF-8 sequence"); - c0027624: 00038597 auipc a1,0x38 - c0027628: 87458593 addi a1,a1,-1932 # c005ee98 - c002762c: b73d j c002755a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20496 + c00277f4: 00038597 auipc a1,0x38 + c00277f8: 90458593 addi a1,a1,-1788 # c005f0f8 + c00277fc: b73d j c002772a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20504 } else if (c >= 0x80) { - c002762e: 07f00793 li a5,127 - c0027632: 02b7f163 bgeu a5,a1,c0027654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20498 - c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); - c0027636: 0830 addi a2,sp,24 - c0027638: 4599 li a1,6 - c002763a: 8566 mv a0,s9 - c002763c: bfe1 j c0027614 + c00277fe: 07f00793 li a5,127 + c0027802: 02b7f163 bgeu a5,a1,c0027824 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20506 + c = unicode_from_utf8(p - 1, UTF8_CHAR_LEN_MAX, &p_next); + c0027806: 0830 addi a2,sp,24 + c0027808: 4599 li a1,6 + c002780a: 8566 mv a0,s9 + c002780c: bfe1 j c00277e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20514 if (c == CP_LS || c == CP_PS) { - c002763e: 00b907bb addw a5,s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20504 + c002780e: 00b907bb addw a5,s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20512 p = p_next; - c0027642: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20506 + c0027812: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20514 if (c == CP_LS || c == CP_PS) { - c0027644: 00fb6863 bltu s6,a5,c0027654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20508 + c0027814: 00fb6863 bltu s6,a5,c0027824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20516 js_parse_error(s, "unexpected line terminator in regexp"); - c0027648: 00038597 auipc a1,0x38 - c002764c: c6058593 addi a1,a1,-928 # c005f2a8 - c0027650: b729 j c002755a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20474 + c0027818: 00038597 auipc a1,0x38 + c002781c: cf058593 addi a1,a1,-784 # c005f508 + c0027820: b729 j c002772a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20482 in_class = TRUE; - c0027652: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20512 + c0027822: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20520 if (string_buffer_putc(b, c)) - c0027654: 1008 addi a0,sp,32 - c0027656: ba1f10ef jal ra,c00191f6 - c002765a: f00513e3 bnez a0,c0027560 - c002765e: 8ca6 mv s9,s1 - c0027660: b5f5 j c002754c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20477 + c0027824: 1008 addi a0,sp,32 + c0027826: ba1f10ef jal ra,c00193c6 + c002782a: f00513e3 bnez a0,c0027730 + c002782e: 8ca6 mv s9,s1 + c0027830: b5f5 j c002771c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20485 in_class = FALSE; - c0027662: 4981 li s3,0 - c0027664: bfc5 j c0027654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20533 + c0027832: 4981 li s3,0 + c0027834: bfc5 j c0027824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20541 s->token.val = TOK_REGEXP; - c0027666: f8400793 li a5,-124 - c002766a: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20534 + c0027836: f8400793 li a5,-124 + c002783a: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20542 s->token.u.regexp.body = string_buffer_end(b); - c002766c: 1008 addi a0,sp,32 - c002766e: e9cf20ef jal ra,c0019d0a - c0027672: f408 sd a0,40(s0) - c0027674: f80c sd a1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20535 + c002783c: 1008 addi a0,sp,32 + c002783e: e9cf20ef jal ra,c0019eda + c0027842: f408 sd a0,40(s0) + c0027844: f80c sd a1,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20543 s->token.u.regexp.flags = string_buffer_end(b2); - c0027676: 0088 addi a0,sp,64 - c0027678: e92f20ef jal ra,c0019d0a - c002767c: fc08 sd a0,56(s0) - c002767e: e02c sd a1,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20536 + c0027846: 0088 addi a0,sp,64 + c0027848: e92f20ef jal ra,c0019eda + c002784c: fc08 sd a0,56(s0) + c002784e: e02c sd a1,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20544 s->buf_ptr = p; - c0027680: ec24 sd s1,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20542 + c0027850: ec24 sd s1,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20550 } - c0027682: 70ea ld ra,184(sp) - c0027684: 744a ld s0,176(sp) - c0027686: 74aa ld s1,168(sp) - c0027688: 69ea ld s3,152(sp) - c002768a: 6a4a ld s4,144(sp) - c002768c: 6aaa ld s5,136(sp) - c002768e: 6b0a ld s6,128(sp) - c0027690: 7be6 ld s7,120(sp) - c0027692: 7c46 ld s8,112(sp) - c0027694: 7ca6 ld s9,104(sp) - c0027696: 854a mv a0,s2 - c0027698: 790a ld s2,160(sp) - c002769a: 6129 addi sp,sp,192 - c002769c: 8082 ret - -00000000c002769e : + c0027852: 70ea ld ra,184(sp) + c0027854: 744a ld s0,176(sp) + c0027856: 74aa ld s1,168(sp) + c0027858: 69ea ld s3,152(sp) + c002785a: 6a4a ld s4,144(sp) + c002785c: 6aaa ld s5,136(sp) + c002785e: 6b0a ld s6,128(sp) + c0027860: 7be6 ld s7,120(sp) + c0027862: 7c46 ld s8,112(sp) + c0027864: 7ca6 ld s9,104(sp) + c0027866: 854a mv a0,s2 + c0027868: 790a ld s2,160(sp) + c002786a: 6129 addi sp,sp,192 + c002786c: 8082 ret + +00000000c002786e : js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22499 -{ - c002769e: 7125 addi sp,sp,-416 - c00276a0: e726 sd s1,392(sp) - c00276a2: e34a sd s2,384(sp) - c00276a4: fece sd s3,376(sp) - c00276a6: fad2 sd s4,368(sp) - c00276a8: f6d6 sd s5,360(sp) - c00276aa: f2da sd s6,352(sp) - c00276ac: eede sd s7,344(sp) - c00276ae: eae2 sd s8,336(sp) - c00276b0: e6e6 sd s9,328(sp) - c00276b2: e2ea sd s10,320(sp) - c00276b4: fe6e sd s11,312(sp) - c00276b6: ef06 sd ra,408(sp) - c00276b8: eb22 sd s0,400(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22507 +{ + c002786e: 7125 addi sp,sp,-416 + c0027870: e726 sd s1,392(sp) + c0027872: e34a sd s2,384(sp) + c0027874: fece sd s3,376(sp) + c0027876: fad2 sd s4,368(sp) + c0027878: f6d6 sd s5,360(sp) + c002787a: f2da sd s6,352(sp) + c002787c: eede sd s7,344(sp) + c002787e: eae2 sd s8,336(sp) + c0027880: e6e6 sd s9,328(sp) + c0027882: e2ea sd s10,320(sp) + c0027884: fe6e sd s11,312(sp) + c0027886: ef06 sd ra,408(sp) + c0027888: eb22 sd s0,400(sp) js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c00276ba: 4518 lw a4,8(a0) + c002788a: 4518 lw a4,8(a0) js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22507 { - c00276bc: 89aa mv s3,a0 - c00276be: 892e mv s2,a1 + c002788c: 89aa mv s3,a0 + c002788e: 892e mv s2,a1 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c00276c0: cc3a sw a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 + c0027890: cc3a sw a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c00276c2: 4d58 lw a4,28(a0) + c0027892: 4d58 lw a4,28(a0) js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22499 -{ - c00276c4: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22507 +{ + c0027894: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22515 state[level++] = 0; - c00276c6: 02010823 sb zero,48(sp) + c0027896: 02010823 sb zero,48(sp) js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c00276ca: ce3a sw a4,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c002789a: ce3a sw a4,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c00276cc: 7118 ld a4,32(a0) + c002789c: 7118 ld a4,32(a0) js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 int c, tok_len, bits = 0; - c00276ce: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22510 + c002789e: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22518 last_tok = 0; - c00276d0: 4c81 li s9,0 + c00278a0: 4c81 li s9,0 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c00276d2: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c00278a2: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c00276d4: 4538 lw a4,72(a0) + c00278a4: 4538 lw a4,72(a0) js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22507 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22515 state[level++] = 0; - c00276d6: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 + c00278a6: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22520 switch(s->token.val) { - c00276d8: 02f00b13 li s6,47 + c00278a8: 02f00b13 li s6,47 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c00276dc: d03a sw a4,32(sp) + c00278ac: d03a sw a4,32(sp) is_regexp_allowed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22479 switch (tok) { - c00276de: 05d00a13 li s4,93 - c00276e2: 02900b93 li s7,41 - c00276e6: 4a85 li s5,1 - c00276e8: 0004dd17 auipc s10,0x4d - c00276ec: 178d3d03 ld s10,376(s10) # c0074860 <_erodata+0xe0> + c00278ae: 05d00a13 li s4,93 + c00278b2: 02900b93 li s7,41 + c00278b6: 4a85 li s5,1 + c00278b8: 0004dd17 auipc s10,0x4d + c00278bc: 208d3d03 ld s10,520(s10) # c0074ac0 <_erodata+0xe0> js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22540 free_token(s, &s->token); - c00276f0: 01850d93 addi s11,a0,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 + c00278c0: 01850d93 addi s11,a0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22520 switch(s->token.val) { - c00276f4: 0189a403 lw s0,24(s3) - c00276f8: 1b640863 beq s0,s6,c00278a8 - c00276fc: 0c8b4563 blt s6,s0,c00277c6 - c0027700: fa500613 li a2,-91 - c0027704: 18c40963 beq s0,a2,c0027896 - c0027708: fa600613 li a2,-90 - c002770c: 06c45963 bge s0,a2,c002777e - c0027710: f8200613 li a2,-126 - c0027714: 16c40163 beq s0,a2,c0027876 - c0027718: f8600593 li a1,-122 - c002771c: 4609 li a2,2 - c002771e: 18b40663 beq s0,a1,c00278aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22586 + c00278c4: 0189a403 lw s0,24(s3) + c00278c8: 1b640863 beq s0,s6,c0027a78 + c00278cc: 0c8b4563 blt s6,s0,c0027996 + c00278d0: fa500613 li a2,-91 + c00278d4: 18c40963 beq s0,a2,c0027a66 + c00278d8: fa600613 li a2,-90 + c00278dc: 06c45963 bge s0,a2,c002794e + c00278e0: f8200613 li a2,-126 + c00278e4: 16c40163 beq s0,a2,c0027a46 + c00278e8: f8600593 li a1,-122 + c00278ec: 4609 li a2,2 + c00278ee: 18b40663 beq s0,a1,c0027a7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22594 if (s->token.val == TOK_IDENT && - c0027722: 0189ac83 lw s9,24(s3) - c0027726: f8300613 li a2,-125 - c002772a: 02cc9063 bne s9,a2,c002774a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22587 (discriminator 1) + c00278f2: 0189ac83 lw s9,24(s3) + c00278f6: f8300613 li a2,-125 + c00278fa: 02cc9063 bne s9,a2,c002791a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22595 (discriminator 1) (token_is_pseudo_keyword(s, JS_ATOM_of) || - c002772e: 04400593 li a1,68 - c0027732: 854e mv a0,s3 - c0027734: c21dc0ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22586 (discriminator 1) + c00278fe: 04400593 li a1,68 + c0027902: 854e mv a0,s3 + c0027904: a51dc0ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22594 (discriminator 1) if (s->token.val == TOK_IDENT && - c0027738: 1a051b63 bnez a0,c00278ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22588 + c0027908: 1a051b63 bnez a0,c0027abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22596 token_is_pseudo_keyword(s, JS_ATOM_yield))) { - c002773c: 02d00593 li a1,45 - c0027740: 854e mv a0,s3 - c0027742: c13dc0ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22587 + c002790c: 02d00593 li a1,45 + c0027910: 854e mv a0,s3 + c0027912: a43dc0ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22595 (token_is_pseudo_keyword(s, JS_ATOM_of) || - c0027746: 1a051463 bnez a0,c00278ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22593 + c0027916: 1a051463 bnez a0,c0027abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22601 if (next_token(s)) { - c002774a: 854e mv a0,s3 - c002774c: c4aff0ef jal ra,c0026b96 - c0027750: e17d bnez a0,c0027836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22597 + c002791a: 854e mv a0,s3 + c002791c: c4aff0ef jal ra,c0026d66 + c0027920: e17d bnez a0,c0027a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22605 if (level <= 1) { - c0027752: fb8ae1e3 bltu s5,s8,c00276f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22599 + c0027922: fb8ae1e3 bltu s5,s8,c00278c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22607 if (token_is_pseudo_keyword(s, JS_ATOM_of)) - c0027756: 04400593 li a1,68 - c002775a: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22598 + c0027926: 04400593 li a1,68 + c002792a: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22606 tok = s->token.val; - c002775c: 0189a403 lw s0,24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22599 + c002792c: 0189a403 lw s0,24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22607 if (token_is_pseudo_keyword(s, JS_ATOM_of)) - c0027760: bf5dc0ef jal ra,c0004354 - c0027764: c119 beqz a0,c002776a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22600 + c0027930: a25dc0ef jal ra,c0004354 + c0027934: c119 beqz a0,c002793a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22608 tok = TOK_OF; - c0027766: fd900413 li s0,-39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22601 + c0027936: fd900413 li s0,-39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22609 if (no_line_terminator && s->last_line_num != s->token.line_num) - c002776a: 67a2 ld a5,8(sp) - c002776c: c39d beqz a5,c0027792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22601 (discriminator 1) - c002776e: 0089a683 lw a3,8(s3) - c0027772: 01c9a703 lw a4,28(s3) - c0027776: 00e68e63 beq a3,a4,c0027792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22602 + c002793a: 67a2 ld a5,8(sp) + c002793c: c39d beqz a5,c0027962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22609 (discriminator 1) + c002793e: 0089a683 lw a3,8(s3) + c0027942: 01c9a703 lw a4,28(s3) + c0027946: 00e68e63 beq a3,a4,c0027962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22610 tok = '\n'; - c002777a: 4429 li s0,10 - c002777c: a819 j c0027792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 + c002794a: 4429 li s0,10 + c002794c: a819 j c0027962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22520 switch(s->token.val) { - c002777e: 02800693 li a3,40 - c0027782: 0ad40d63 beq s0,a3,c002783c - c0027786: 0d740663 beq s0,s7,c0027852 - c002778a: faa00693 li a3,-86 - c002778e: f8d41ae3 bne s0,a3,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22607 + c002794e: 02800693 li a3,40 + c0027952: 0ad40d63 beq s0,a3,c0027a0c + c0027956: 0d740663 beq s0,s7,c0027a22 + c002795a: faa00693 li a3,-86 + c002795e: f8d41ae3 bne s0,a3,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22615 if (pbits) { - c0027792: 00090463 beqz s2,c002779a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22608 + c0027962: 00090463 beqz s2,c002796a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22616 *pbits = bits; - c0027796: 00992023 sw s1,0(s2) # ffffffffffffe000 <_ebss+0xffffffff3fefceda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22610 + c0027966: 00992023 sw s1,0(s2) # ffffffffffffe000 <_ebss+0xffffffff3fefceda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22618 if (js_parse_seek_token(s, &pos)) - c002779a: 082c addi a1,sp,24 - c002779c: 854e mv a0,s3 - c002779e: b87ff0ef jal ra,c0027324 - c00277a2: c111 beqz a0,c00277a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22611 + c002796a: 082c addi a1,sp,24 + c002796c: 854e mv a0,s3 + c002796e: b87ff0ef jal ra,c00274f4 + c0027972: c111 beqz a0,c0027976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22619 return -1; - c00277a4: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22613 -} - c00277a6: 60fa ld ra,408(sp) - c00277a8: 8522 mv a0,s0 - c00277aa: 645a ld s0,400(sp) - c00277ac: 64ba ld s1,392(sp) - c00277ae: 691a ld s2,384(sp) - c00277b0: 79f6 ld s3,376(sp) - c00277b2: 7a56 ld s4,368(sp) - c00277b4: 7ab6 ld s5,360(sp) - c00277b6: 7b16 ld s6,352(sp) - c00277b8: 6bf6 ld s7,344(sp) - c00277ba: 6c56 ld s8,336(sp) - c00277bc: 6cb6 ld s9,328(sp) - c00277be: 6d16 ld s10,320(sp) - c00277c0: 7df2 ld s11,312(sp) - c00277c2: 611d addi sp,sp,416 - c00277c4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 + c0027974: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22621 +} + c0027976: 60fa ld ra,408(sp) + c0027978: 8522 mv a0,s0 + c002797a: 645a ld s0,400(sp) + c002797c: 64ba ld s1,392(sp) + c002797e: 691a ld s2,384(sp) + c0027980: 79f6 ld s3,376(sp) + c0027982: 7a56 ld s4,368(sp) + c0027984: 7ab6 ld s5,360(sp) + c0027986: 7b16 ld s6,352(sp) + c0027988: 6bf6 ld s7,344(sp) + c002798a: 6c56 ld s8,336(sp) + c002798c: 6cb6 ld s9,328(sp) + c002798e: 6d16 ld s10,320(sp) + c0027990: 7df2 ld s11,312(sp) + c0027992: 611d addi sp,sp,416 + c0027994: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22520 switch(s->token.val) { - c00277c6: 09440f63 beq s0,s4,c0027864 - c00277ca: 028a4463 blt s4,s0,c00277f2 - c00277ce: 03d00693 li a3,61 - c00277d2: 0cd40863 beq s0,a3,c00278a2 - c00277d6: 05b00693 li a3,91 - c00277da: 06d40163 beq s0,a3,c002783c - c00277de: 03b00693 li a3,59 - c00277e2: f4d410e3 bne s0,a3,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22557 + c0027996: 09440f63 beq s0,s4,c0027a34 + c002799a: 028a4463 blt s4,s0,c00279c2 + c002799e: 03d00693 li a3,61 + c00279a2: 0cd40863 beq s0,a3,c0027a72 + c00279a6: 05b00693 li a3,91 + c00279aa: 06d40163 beq s0,a3,c0027a0c + c00279ae: 03b00693 li a3,59 + c00279b2: f4d410e3 bne s0,a3,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22565 if (level == 2) { - c00277e6: 4689 li a3,2 - c00277e8: f2dc1de3 bne s8,a3,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22558 + c00279b6: 4689 li a3,2 + c00279b8: f2dc1de3 bne s8,a3,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22566 bits |= SKIP_HAS_SEMI; - c00277ec: 0014e493 ori s1,s1,1 - c00277f0: bf0d j c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22512 + c00279bc: 0014e493 ori s1,s1,1 + c00279c0: bf0d j c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22520 switch(s->token.val) { - c00277f2: 07b00693 li a3,123 - c00277f6: 04d40363 beq s0,a3,c002783c - c00277fa: 07d00613 li a2,125 - c00277fe: f2c412e3 bne s0,a2,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22529 + c00279c2: 07b00693 li a3,123 + c00279c6: 04d40363 beq s0,a3,c0027a0c + c00279ca: 07d00613 li a2,125 + c00279ce: f2c412e3 bne s0,a2,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22537 c = state[--level]; - c0027802: 1c7d addi s8,s8,-1 - c0027804: 1a1c addi a5,sp,304 - c0027806: 01878633 add a2,a5,s8 - c002780a: f0064603 lbu a2,-256(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22530 + c00279d2: 1c7d addi s8,s8,-1 + c00279d4: 1a1c addi a5,sp,304 + c00279d6: 01878633 add a2,a5,s8 + c00279da: f0064603 lbu a2,-256(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22538 if (c == '`') { - c002780e: 06000593 li a1,96 - c0027812: 04b61663 bne a2,a1,c002785e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22532 + c00279de: 06000593 li a1,96 + c00279e2: 04b61663 bne a2,a1,c0027a2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22540 free_token(s, &s->token); - c0027816: 85ee mv a1,s11 - c0027818: 854e mv a0,s3 - c002781a: ec0e10ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22536 + c00279e6: 85ee mv a1,s11 + c00279e8: 854e mv a0,s3 + c00279ea: ddee10ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22544 s->last_line_num = s->token.line_num; - c002781e: 01c9a683 lw a3,28(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22537 + c00279ee: 01c9a683 lw a3,28(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22545 if (js_parse_template_part(s, s->buf_ptr)) - c0027822: 0589b583 ld a1,88(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22535 + c00279f2: 0589b583 ld a1,88(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22543 s->got_lf = FALSE; - c0027826: 0409a423 sw zero,72(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22536 + c00279f6: 0409a423 sw zero,72(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22544 s->last_line_num = s->token.line_num; - c002782a: 00d9a423 sw a3,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22537 + c00279fa: 00d9a423 sw a3,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22545 if (js_parse_template_part(s, s->buf_ptr)) - c002782e: 854e mv a0,s3 - c0027830: a3cff0ef jal ra,c0026a6c - c0027834: c129 beqz a0,c0027876 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22503 + c00279fe: 854e mv a0,s3 + c0027a00: a3cff0ef jal ra,c0026c3c + c0027a04: c129 beqz a0,c0027a46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22511 int last_tok, tok = TOK_EOF; - c0027836: faa00413 li s0,-86 - c002783a: bfa1 j c0027792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22516 + c0027a06: faa00413 li s0,-86 + c0027a0a: bfa1 j c0027962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22524 if (level >= sizeof(state)) - c002783c: 0ff00693 li a3,255 - c0027840: ff86ebe3 bltu a3,s8,c0027836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22518 + c0027a0c: 0ff00693 li a3,255 + c0027a10: ff86ebe3 bltu a3,s8,c0027a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22526 state[level++] = s->token.val; - c0027844: 1a1c addi a5,sp,304 - c0027846: 018786b3 add a3,a5,s8 - c002784a: f0868023 sb s0,-256(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22551 + c0027a14: 1a1c addi a5,sp,304 + c0027a16: 018786b3 add a3,a5,s8 + c0027a1a: f0868023 sb s0,-256(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22559 state[level++] = '`'; - c002784e: 0c05 addi s8,s8,1 - c0027850: bdc9 j c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22521 + c0027a1e: 0c05 addi s8,s8,1 + c0027a20: bdc9 j c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22529 if (state[--level] != '(') - c0027852: 1c7d addi s8,s8,-1 - c0027854: 1a1c addi a5,sp,304 - c0027856: 01878633 add a2,a5,s8 - c002785a: f0064603 lbu a2,-256(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22540 + c0027a22: 1c7d addi s8,s8,-1 + c0027a24: 1a1c addi a5,sp,304 + c0027a26: 01878633 add a2,a5,s8 + c0027a2a: f0064603 lbu a2,-256(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22548 } else if (c != '{') { - c002785e: ecd602e3 beq a2,a3,c0027722 - c0027862: bfd1 j c0027836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22525 + c0027a2e: ecd602e3 beq a2,a3,c00278f2 + c0027a32: bfd1 j c0027a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22533 if (state[--level] != '[') - c0027864: 1c7d addi s8,s8,-1 - c0027866: 1a1c addi a5,sp,304 - c0027868: 018786b3 add a3,a5,s8 - c002786c: f006c603 lbu a2,-256(a3) - c0027870: 05b00693 li a3,91 - c0027874: b7ed j c002785e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22546 + c0027a34: 1c7d addi s8,s8,-1 + c0027a36: 1a1c addi a5,sp,304 + c0027a38: 018786b3 add a3,a5,s8 + c0027a3c: f006c603 lbu a2,-256(a3) + c0027a40: 05b00693 li a3,91 + c0027a44: b7ed j c0027a2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22554 if (s->token.u.str.sep != '`') { - c0027876: 0389a603 lw a2,56(s3) - c002787a: 06000693 li a3,96 - c002787e: ead602e3 beq a2,a3,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22549 + c0027a46: 0389a603 lw a2,56(s3) + c0027a4a: 06000693 li a3,96 + c0027a4e: ead602e3 beq a2,a3,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22557 if (level >= sizeof(state)) - c0027882: 0ff00613 li a2,255 - c0027886: fb8668e3 bltu a2,s8,c0027836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22551 + c0027a52: 0ff00613 li a2,255 + c0027a56: fb8668e3 bltu a2,s8,c0027a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22559 state[level++] = '`'; - c002788a: 1a1c addi a5,sp,304 - c002788c: 01878633 add a2,a5,s8 - c0027890: f0d60023 sb a3,-256(a2) - c0027894: bf6d j c002784e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22562 + c0027a5a: 1a1c addi a5,sp,304 + c0027a5c: 01878633 add a2,a5,s8 + c0027a60: f0d60023 sb a3,-256(a2) + c0027a64: bf6d j c0027a1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22570 if (level == 2) { - c0027896: 4689 li a3,2 - c0027898: e8dc15e3 bne s8,a3,c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22563 + c0027a66: 4689 li a3,2 + c0027a68: e8dc15e3 bne s8,a3,c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22571 bits |= SKIP_HAS_ELLIPSIS; - c002789c: 0024e493 ori s1,s1,2 - c00278a0: b549 j c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22567 + c0027a6c: 0024e493 ori s1,s1,2 + c0027a70: b549 j c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22575 bits |= SKIP_HAS_ASSIGNMENT; - c00278a2: 0044e493 ori s1,s1,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22568 + c0027a72: 0044e493 ori s1,s1,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22576 break; - c00278a6: bdb5 j c0027722 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22574 + c0027a76: bdb5 j c00278f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22582 tok_len = 1; - c00278a8: 4605 li a2,1 + c0027a78: 4605 li a2,1 is_regexp_allowed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22479 switch (tok) { - c00278aa: fb300793 li a5,-77 - c00278ae: 02fcd963 bge s9,a5,c00278e0 - c00278b2: f8000793 li a5,-128 - c00278b6: 00fcca63 blt s9,a5,c00278ca - c00278ba: 080c869b addiw a3,s9,128 - c00278be: 00da96b3 sll a3,s5,a3 - c00278c2: 01a6f6b3 and a3,a3,s10 - c00278c6: e4069ee3 bnez a3,c0027722 + c0027a7a: fb300793 li a5,-77 + c0027a7e: 02fcd963 bge s9,a5,c0027ab0 + c0027a82: f8000793 li a5,-128 + c0027a86: 00fcca63 blt s9,a5,c0027a9a + c0027a8a: 080c869b addiw a3,s9,128 + c0027a8e: 00da96b3 sll a3,s5,a3 + c0027a92: 01a6f6b3 and a3,a3,s10 + c0027a96: e4069ee3 bnez a3,c00278f2 js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22577 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22585 s->buf_ptr -= tok_len; - c00278ca: 0589b683 ld a3,88(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22578 + c0027a9a: 0589b683 ld a3,88(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22586 if (js_parse_regexp(s)) { - c00278ce: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22577 + c0027a9e: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22585 s->buf_ptr -= tok_len; - c00278d0: 8e91 sub a3,a3,a2 - c00278d2: 04d9bc23 sd a3,88(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22578 + c0027aa0: 8e91 sub a3,a3,a2 + c0027aa2: 04d9bc23 sd a3,88(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22586 if (js_parse_regexp(s)) { - c00278d6: c27ff0ef jal ra,c00274fc - c00278da: e40504e3 beqz a0,c0027722 - c00278de: bfa1 j c0027836 + c0027aa6: c27ff0ef jal ra,c00276cc + c0027aaa: e40504e3 beqz a0,c00278f2 + c0027aae: bfa1 j c0027a06 is_regexp_allowed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22479 switch (tok) { - c00278e0: fdfcf593 andi a1,s9,-33 - c00278e4: e3458fe3 beq a1,s4,c0027722 - c00278e8: ff7c91e3 bne s9,s7,c00278ca - c00278ec: bd1d j c0027722 + c0027ab0: fdfcf593 andi a1,s9,-33 + c0027ab4: e3458fe3 beq a1,s4,c00278f2 + c0027ab8: ff7c91e3 bne s9,s7,c0027a9a + c0027abc: bd1d j c00278f2 js_parse_skip_parens_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22589 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22597 last_tok = TOK_OF; - c00278ee: fd900c93 li s9,-39 - c00278f2: bda1 j c002774a + c0027abe: fd900c93 li s9,-39 + c0027ac2: bda1 j c002791a -00000000c00278f4 : +00000000c0027ac4 : js_parse_expect_semi(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20230 if (s->token.val != ';') { - c00278f4: 4d18 lw a4,24(a0) - c00278f6: 03b00693 li a3,59 - c00278fa: 02d70463 beq a4,a3,c0027922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20224 + c0027ac4: 4d18 lw a4,24(a0) + c0027ac6: 03b00693 li a3,59 + c0027aca: 02d70463 beq a4,a3,c0027af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20232 if (s->token.val == TOK_EOF || s->token.val == '}' || s->got_lf) { - c00278fe: faa00693 li a3,-86 - c0027902: 02d70263 beq a4,a3,c0027926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20224 (discriminator 1) - c0027906: 07d00693 li a3,125 - c002790a: 00d70e63 beq a4,a3,c0027926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20224 (discriminator 2) - c002790e: 453c lw a5,72(a0) - c0027910: eb99 bnez a5,c0027926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20227 + c0027ace: faa00693 li a3,-86 + c0027ad2: 02d70263 beq a4,a3,c0027af6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20232 (discriminator 1) + c0027ad6: 07d00693 li a3,125 + c0027ada: 00d70e63 beq a4,a3,c0027af6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20232 (discriminator 2) + c0027ade: 453c lw a5,72(a0) + c0027ae0: eb99 bnez a5,c0027af6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20235 return js_parse_error(s, "expecting '%c'", ';'); - c0027912: 03b00613 li a2,59 - c0027916: 00037597 auipc a1,0x37 - c002791a: 6aa58593 addi a1,a1,1706 # c005efc0 - c002791e: 99bfe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20229 + c0027ae2: 03b00613 li a2,59 + c0027ae6: 00037597 auipc a1,0x37 + c0027aea: 73a58593 addi a1,a1,1850 # c005f220 + c0027aee: 99bfe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20237 return next_token(s); - c0027922: a74ff06f j c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20230 + c0027af2: a74ff06f j c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20238 } - c0027926: 4501 li a0,0 - c0027928: 8082 ret + c0027af6: 4501 li a0,0 + c0027af8: 8082 ret -00000000c002792a : +00000000c0027afa : js_parse_check_duplicate_parameter(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23923 JSFunctionDef *fd = s->cur_func; - c002792a: 7538 ld a4,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23917 + c0027afa: 7538 ld a4,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23925 for (i = 0; i < fd->arg_count; i++) { - c002792c: 4781 li a5,0 - c002792e: 0ac72603 lw a2,172(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23917 (discriminator 1) - c0027932: 0007869b sext.w a3,a5 - c0027936: 00c6cb63 blt a3,a2,c002794c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23921 - for (i = 0; i < fd->var_count; i++) { - c002793a: 09c72603 lw a2,156(a4) - c002793e: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23921 (discriminator 1) - c0027940: 0007869b sext.w a3,a5 - c0027944: 02c6c263 blt a3,a2,c0027968 + c0027afc: 4781 li a5,0 + c0027afe: 0ac72603 lw a2,172(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23925 (discriminator 1) + c0027b02: 0007869b sext.w a3,a5 + c0027b06: 00c6cb63 blt a3,a2,c0027b1c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23929 + for (i = 0; i < fd->var_count; i++) { + c0027b0a: 09c72603 lw a2,156(a4) + c0027b0e: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23929 (discriminator 1) + c0027b10: 0007869b sext.w a3,a5 + c0027b14: 02c6c263 blt a3,a2,c0027b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23937 } - c0027948: 4501 li a0,0 - c002794a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23918 + c0027b18: 4501 li a0,0 + c0027b1a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23926 if (fd->args[i].var_name == name) - c002794c: 7354 ld a3,160(a4) - c002794e: 00479813 slli a6,a5,0x4 - c0027952: 0785 addi a5,a5,1 - c0027954: 96c2 add a3,a3,a6 - c0027956: 4294 lw a3,0(a3) - c0027958: fcb69de3 bne a3,a1,c0027932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23928 + c0027b1c: 7354 ld a3,160(a4) + c0027b1e: 00479813 slli a6,a5,0x4 + c0027b22: 0785 addi a5,a5,1 + c0027b24: 96c2 add a3,a3,a6 + c0027b26: 4294 lw a3,0(a3) + c0027b28: fcb69de3 bne a3,a1,c0027b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23936 return js_parse_error(s, "duplicate parameter names not allowed in this context"); - c002795c: 00038597 auipc a1,0x38 - c0027960: 97458593 addi a1,a1,-1676 # c005f2d0 - c0027964: 955fe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23922 + c0027b2c: 00038597 auipc a1,0x38 + c0027b30: a0458593 addi a1,a1,-1532 # c005f530 + c0027b34: 955fe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23930 if (fd->vars[i].var_name == name) - c0027968: 6b54 ld a3,144(a4) - c002796a: 00479813 slli a6,a5,0x4 - c002796e: 0785 addi a5,a5,1 - c0027970: 96c2 add a3,a3,a6 - c0027972: 4294 lw a3,0(a3) - c0027974: fcb696e3 bne a3,a1,c0027940 - c0027978: b7d5 j c002795c - -00000000c002797a : + c0027b38: 6b54 ld a3,144(a4) + c0027b3a: 00479813 slli a6,a5,0x4 + c0027b3e: 0785 addi a5,a5,1 + c0027b40: 96c2 add a3,a3,a6 + c0027b42: 4294 lw a3,0(a3) + c0027b44: fcb696e3 bne a3,a1,c0027b10 + c0027b48: b7d5 j c0027b2c + +00000000c0027b4a : get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23602 { - c002797a: 7119 addi sp,sp,-128 - c002797c: f8a2 sd s0,112(sp) - c002797e: f0ca sd s2,96(sp) - c0027980: ecce sd s3,88(sp) - c0027982: e0da sd s6,64(sp) - c0027984: f862 sd s8,48(sp) - c0027986: f466 sd s9,40(sp) - c0027988: f06a sd s10,32(sp) - c002798a: ec6e sd s11,24(sp) - c002798c: fc86 sd ra,120(sp) - c002798e: f4a6 sd s1,104(sp) - c0027990: e8d2 sd s4,80(sp) - c0027992: e4d6 sd s5,72(sp) - c0027994: fc5e sd s7,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23600 + c0027b4a: 7119 addi sp,sp,-128 + c0027b4c: f8a2 sd s0,112(sp) + c0027b4e: f0ca sd s2,96(sp) + c0027b50: ecce sd s3,88(sp) + c0027b52: e0da sd s6,64(sp) + c0027b54: f862 sd s8,48(sp) + c0027b56: f466 sd s9,40(sp) + c0027b58: f06a sd s10,32(sp) + c0027b5a: ec6e sd s11,24(sp) + c0027b5c: fc86 sd ra,120(sp) + c0027b5e: f4a6 sd s1,104(sp) + c0027b60: e8d2 sd s4,80(sp) + c0027b62: e4d6 sd s5,72(sp) + c0027b64: fc5e sd s7,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23608 fd = s->cur_func; - c0027996: 06853b83 ld s7,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23594 + c0027b66: 06853b83 ld s7,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23602 { - c002799a: 842a mv s0,a0 - c002799c: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23605 + c0027b6a: 842a mv s0,a0 + c0027b6c: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 switch(opcode = get_prev_opcode(fd)) { - c002799e: 855e mv a0,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23594 + c0027b6e: 855e mv a0,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23602 { - c00279a0: 8d2e mv s10,a1 - c00279a2: 8cb2 mv s9,a2 - c00279a4: 8c36 mv s8,a3 - c00279a6: 8b3e mv s6,a5 - c00279a8: 8dc2 mv s11,a6 - c00279aa: 89c6 mv s3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23605 + c0027b70: 8d2e mv s10,a1 + c0027b72: 8cb2 mv s9,a2 + c0027b74: 8c36 mv s8,a3 + c0027b76: 8b3e mv s6,a5 + c0027b78: 8dc2 mv s11,a6 + c0027b7a: 89c6 mv s3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 switch(opcode = get_prev_opcode(fd)) { - c00279ac: a63dc0ef jal ra,c000440e - c00279b0: 04a00713 li a4,74 - c00279b4: 892a mv s2,a0 - c00279b6: 18e50563 beq a0,a4,c0027b40 - c00279ba: 06a74a63 blt a4,a0,c0027a2e - c00279be: 04100713 li a4,65 - c00279c2: 14e50863 beq a0,a4,c0027b12 - c00279c6: 04700713 li a4,71 - c00279ca: 16e50e63 beq a0,a4,c0027b46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23634 + c0027b7c: 893dc0ef jal ra,c000440e + c0027b80: 04a00713 li a4,74 + c0027b84: 892a mv s2,a0 + c0027b86: 18e50563 beq a0,a4,c0027d10 + c0027b8a: 06a74a63 blt a4,a0,c0027bfe + c0027b8e: 04100713 li a4,65 + c0027b92: 14e50863 beq a0,a4,c0027ce2 + c0027b96: 04700713 li a4,71 + c0027b9a: 16e50e63 beq a0,a4,c0027d16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23642 if (tok == TOK_FOR) { - c00279ce: fbb00793 li a5,-69 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23635 + c0027b9e: fbb00793 li a5,-69 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23643 return js_parse_error(s, "invalid for in/of left hand-side"); - c00279d2: 00038597 auipc a1,0x38 - c00279d6: 95658593 addi a1,a1,-1706 # c005f328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23634 + c0027ba2: 00038597 auipc a1,0x38 + c0027ba6: 9e658593 addi a1,a1,-1562 # c005f588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23642 if (tok == TOK_FOR) { - c00279da: 02f98963 beq s3,a5,c0027a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23636 + c0027baa: 02f98963 beq s3,a5,c0027bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23644 } else if (tok == TOK_INC || tok == TOK_DEC) { - c00279de: 06c9879b addiw a5,s3,108 - c00279e2: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23637 + c0027bae: 06c9879b addiw a5,s3,108 + c0027bb2: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23645 return js_parse_error(s, "invalid increment/decrement operand"); - c00279e4: 00038597 auipc a1,0x38 - c00279e8: 96c58593 addi a1,a1,-1684 # c005f350 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23636 + c0027bb4: 00038597 auipc a1,0x38 + c0027bb8: 9fc58593 addi a1,a1,-1540 # c005f5b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23644 } else if (tok == TOK_INC || tok == TOK_DEC) { - c00279ec: 02f77063 bgeu a4,a5,c0027a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23638 + c0027bbc: 02f77063 bgeu a4,a5,c0027bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23646 } else if (tok == '[' || tok == '{') { - c00279f0: fdf9f993 andi s3,s3,-33 - c00279f4: 05b00793 li a5,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23639 + c0027bc0: fdf9f993 andi s3,s3,-33 + c0027bc4: 05b00793 li a5,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23647 return js_parse_error(s, "invalid destructuring target"); - c00279f8: 00038597 auipc a1,0x38 - c00279fc: 98058593 addi a1,a1,-1664 # c005f378 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23638 + c0027bc8: 00038597 auipc a1,0x38 + c0027bcc: a1058593 addi a1,a1,-1520 # c005f5d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23646 } else if (tok == '[' || tok == '{') { - c0027a00: 00f98663 beq s3,a5,c0027a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23641 + c0027bd0: 00f98663 beq s3,a5,c0027bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23649 return js_parse_error(s, "invalid assignment left-hand side"); - c0027a04: 00038597 auipc a1,0x38 - c0027a08: 99458593 addi a1,a1,-1644 # c005f398 - c0027a0c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23713 + c0027bd4: 00038597 auipc a1,0x38 + c0027bd8: a2458593 addi a1,a1,-1500 # c005f5f8 + c0027bdc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23721 } - c0027a0e: 7446 ld s0,112(sp) - c0027a10: 70e6 ld ra,120(sp) - c0027a12: 74a6 ld s1,104(sp) - c0027a14: 7906 ld s2,96(sp) - c0027a16: 69e6 ld s3,88(sp) - c0027a18: 6a46 ld s4,80(sp) - c0027a1a: 6aa6 ld s5,72(sp) - c0027a1c: 6b06 ld s6,64(sp) - c0027a1e: 7be2 ld s7,56(sp) - c0027a20: 7c42 ld s8,48(sp) - c0027a22: 7ca2 ld s9,40(sp) - c0027a24: 7d02 ld s10,32(sp) - c0027a26: 6de2 ld s11,24(sp) - c0027a28: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23641 + c0027bde: 7446 ld s0,112(sp) + c0027be0: 70e6 ld ra,120(sp) + c0027be2: 74a6 ld s1,104(sp) + c0027be4: 7906 ld s2,96(sp) + c0027be6: 69e6 ld s3,88(sp) + c0027be8: 6a46 ld s4,80(sp) + c0027bea: 6aa6 ld s5,72(sp) + c0027bec: 6b06 ld s6,64(sp) + c0027bee: 7be2 ld s7,56(sp) + c0027bf0: 7c42 ld s8,48(sp) + c0027bf2: 7ca2 ld s9,40(sp) + c0027bf4: 7d02 ld s10,32(sp) + c0027bf6: 6de2 ld s11,24(sp) + c0027bf8: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23649 return js_parse_error(s, "invalid assignment left-hand side"); - c0027a2a: 88ffe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23605 + c0027bfa: 88ffe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 switch(opcode = get_prev_opcode(fd)) { - c0027a2e: 0b800713 li a4,184 - c0027a32: 04e50363 beq a0,a4,c0027a78 - c0027a36: 0bf00713 li a4,191 - c0027a3a: f8e51ae3 bne a0,a4,c00279ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23622 + c0027bfe: 0b800713 li a4,184 + c0027c02: 04e50363 beq a0,a4,c0027c48 + c0027c06: 0bf00713 li a4,191 + c0027c0a: f8e51ae3 bne a0,a4,c0027b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23630 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c0027a3e: 160ba683 lw a3,352(s7) # ffffffffffffe160 <_ebss+0xffffffff3fefd03a> - c0027a42: 130bb703 ld a4,304(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23624 + c0027c0e: 160ba683 lw a3,352(s7) # ffffffffffffe160 <_ebss+0xffffffff3fefd03a> + c0027c12: 130bb703 ld a4,304(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23632 depth = 1; - c0027a46: 4a85 li s5,1 + c0027c16: 4a85 li s5,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0027a48: 9736 add a4,a4,a3 - c0027a4a: 00274683 lbu a3,2(a4) - c0027a4e: 00174483 lbu s1,1(a4) + c0027c18: 9736 add a4,a4,a3 + c0027c1a: 00274683 lbu a3,2(a4) + c0027c1e: 00174483 lbu s1,1(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027a52: 00674a03 lbu s4,6(a4) + c0027c22: 00674a03 lbu s4,6(a4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027a56: 06a2 slli a3,a3,0x8 - c0027a58: 8ec5 or a3,a3,s1 - c0027a5a: 00374483 lbu s1,3(a4) + c0027c26: 06a2 slli a3,a3,0x8 + c0027c28: 8ec5 or a3,a3,s1 + c0027c2a: 00374483 lbu s1,3(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027a5e: 0a22 slli s4,s4,0x8 + c0027c2e: 0a22 slli s4,s4,0x8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027a60: 04c2 slli s1,s1,0x10 - c0027a62: 8ec5 or a3,a3,s1 - c0027a64: 00474483 lbu s1,4(a4) - c0027a68: 04e2 slli s1,s1,0x18 - c0027a6a: 8cd5 or s1,s1,a3 + c0027c30: 04c2 slli s1,s1,0x10 + c0027c32: 8ec5 or a3,a3,s1 + c0027c34: 00474483 lbu s1,4(a4) + c0027c38: 04e2 slli s1,s1,0x18 + c0027c3a: 8cd5 or s1,s1,a3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027a6c: 00574683 lbu a3,5(a4) + c0027c3c: 00574683 lbu a3,5(a4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027a70: 2481 sext.w s1,s1 + c0027c40: 2481 sext.w s1,s1 get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23631 scope = get_u16(fd->byte_code.buf + fd->last_opcode_pos + 5); - c0027a72: 00da6a33 or s4,s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23625 + c0027c42: 00da6a33 or s4,s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23633 break; - c0027a76: a0ad j c0027ae0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23607 + c0027c46: a0ad j c0027cb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23615 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c0027a78: 160ba683 lw a3,352(s7) - c0027a7c: 130bb703 ld a4,304(s7) + c0027c48: 160ba683 lw a3,352(s7) + c0027c4c: 130bb703 ld a4,304(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0027a80: 9736 add a4,a4,a3 - c0027a82: 00274683 lbu a3,2(a4) - c0027a86: 00174483 lbu s1,1(a4) + c0027c50: 9736 add a4,a4,a3 + c0027c52: 00274683 lbu a3,2(a4) + c0027c56: 00174483 lbu s1,1(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027a8a: 00674a03 lbu s4,6(a4) + c0027c5a: 00674a03 lbu s4,6(a4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027a8e: 06a2 slli a3,a3,0x8 - c0027a90: 8ec5 or a3,a3,s1 - c0027a92: 00374483 lbu s1,3(a4) + c0027c5e: 06a2 slli a3,a3,0x8 + c0027c60: 8ec5 or a3,a3,s1 + c0027c62: 00374483 lbu s1,3(a4) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027a96: 0a22 slli s4,s4,0x8 + c0027c66: 0a22 slli s4,s4,0x8 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027a98: 04c2 slli s1,s1,0x10 - c0027a9a: 8ec5 or a3,a3,s1 - c0027a9c: 00474483 lbu s1,4(a4) - c0027aa0: 04e2 slli s1,s1,0x18 - c0027aa2: 8cd5 or s1,s1,a3 + c0027c68: 04c2 slli s1,s1,0x10 + c0027c6a: 8ec5 or a3,a3,s1 + c0027c6c: 00474483 lbu s1,4(a4) + c0027c70: 04e2 slli s1,s1,0x18 + c0027c72: 8cd5 or s1,s1,a3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027aa4: 00574683 lbu a3,5(a4) + c0027c74: 00574683 lbu a3,5(a4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027aa8: 2481 sext.w s1,s1 + c0027c78: 2481 sext.w s1,s1 get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23617 if ((name == JS_ATOM_arguments || name == JS_ATOM_eval) && - c0027aaa: 04e00713 li a4,78 + c0027c7a: 04e00713 li a4,78 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0027aae: 00da6a33 or s4,s4,a3 + c0027c7e: 00da6a33 or s4,s4,a3 get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23609 - c0027ab2: 00e48663 beq s1,a4,c0027abe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23609 (discriminator 2) - c0027ab6: 03b00713 li a4,59 - c0027aba: 00e49a63 bne s1,a4,c0027ace -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23609 (discriminator 3) - c0027abe: 086bc703 lbu a4,134(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23611 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23617 + c0027c82: 00e48663 beq s1,a4,c0027c8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23617 (discriminator 2) + c0027c86: 03b00713 li a4,59 + c0027c8a: 00e49a63 bne s1,a4,c0027c9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23617 (discriminator 3) + c0027c8e: 086bc703 lbu a4,134(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23619 (discriminator 3) return js_parse_error(s, "invalid lvalue in strict mode"); - c0027ac2: 00038597 auipc a1,0x38 - c0027ac6: 84658593 addi a1,a1,-1978 # c005f308 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23609 (discriminator 3) + c0027c92: 00038597 auipc a1,0x38 + c0027c96: 8d658593 addi a1,a1,-1834 # c005f568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23617 (discriminator 3) if ((name == JS_ATOM_arguments || name == JS_ATOM_eval) && - c0027aca: 8b05 andi a4,a4,1 - c0027acc: f321 bnez a4,c0027a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 + c0027c9a: 8b05 andi a4,a4,1 + c0027c9c: f321 bnez a4,c0027bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23621 if (name == JS_ATOM_this || name == JS_ATOM_new_target) - c0027ace: 4721 li a4,8 - c0027ad0: eee48fe3 beq s1,a4,c00279ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 (discriminator 1) - c0027ad4: 07200713 li a4,114 - c0027ad8: eee48be3 beq s1,a4,c00279ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23608 + c0027c9e: 4721 li a4,8 + c0027ca0: eee48fe3 beq s1,a4,c0027b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23621 (discriminator 1) + c0027ca4: 07200713 li a4,114 + c0027ca8: eee48be3 beq s1,a4,c0027b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23616 scope = get_u16(fd->byte_code.buf + fd->last_opcode_pos + 5); - c0027adc: 2a01 sext.w s4,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23615 + c0027cac: 2a01 sext.w s4,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23623 depth = 2; /* will generate OP_get_ref_value */ - c0027ade: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23645 + c0027cae: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23653 fd->byte_code.size = fd->last_opcode_pos; - c0027ae0: 160ba703 lw a4,352(s7) - c0027ae4: 12ebbc23 sd a4,312(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23646 + c0027cb0: 160ba703 lw a4,352(s7) + c0027cb4: 12ebbc23 sd a4,312(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23654 fd->last_opcode_pos = -1; - c0027ae8: 577d li a4,-1 - c0027aea: 16eba023 sw a4,352(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23650 + c0027cb8: 577d li a4,-1 + c0027cba: 16eba023 sw a4,352(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23658 switch(opcode) { - c0027aee: 04a00713 li a4,74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23648 + c0027cbe: 04a00713 li a4,74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23656 if (keep) { - c0027af2: 140d8c63 beqz s11,c0027c4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23650 + c0027cc2: 140d8c63 beqz s11,c0027e1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23658 switch(opcode) { - c0027af6: 12e90e63 beq s2,a4,c0027c32 - c0027afa: 05274963 blt a4,s2,c0027b4c - c0027afe: 04100793 li a5,65 - c0027b02: 0ef90e63 beq s2,a5,c0027bfe - c0027b06: 04700793 li a5,71 - c0027b0a: 10f90563 beq s2,a5,c0027c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23682 + c0027cc6: 12e90e63 beq s2,a4,c0027e02 + c0027cca: 05274963 blt a4,s2,c0027d1c + c0027cce: 04100793 li a5,65 + c0027cd2: 0ef90e63 beq s2,a5,c0027dce + c0027cd6: 04700793 li a5,71 + c0027cda: 10f90563 beq s2,a5,c0027de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23690 abort(); - c0027b0e: 4fd2d0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23618 + c0027cde: 4fd2d0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23626 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c0027b12: 160ba683 lw a3,352(s7) + c0027ce2: 160ba683 lw a3,352(s7) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0027b16: 130bb703 ld a4,304(s7) + c0027ce6: 130bb703 ld a4,304(s7) get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23619 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23627 depth = 1; - c0027b1a: 4a85 li s5,1 + c0027cea: 4a85 li s5,1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0027b1c: 9736 add a4,a4,a3 - c0027b1e: 00274683 lbu a3,2(a4) - c0027b22: 00174483 lbu s1,1(a4) - c0027b26: 06a2 slli a3,a3,0x8 - c0027b28: 8ec5 or a3,a3,s1 - c0027b2a: 00374483 lbu s1,3(a4) - c0027b2e: 04c2 slli s1,s1,0x10 - c0027b30: 8ec5 or a3,a3,s1 - c0027b32: 00474483 lbu s1,4(a4) - c0027b36: 04e2 slli s1,s1,0x18 - c0027b38: 8cd5 or s1,s1,a3 - c0027b3a: 2481 sext.w s1,s1 + c0027cec: 9736 add a4,a4,a3 + c0027cee: 00274683 lbu a3,2(a4) + c0027cf2: 00174483 lbu s1,1(a4) + c0027cf6: 06a2 slli a3,a3,0x8 + c0027cf8: 8ec5 or a3,a3,s1 + c0027cfa: 00374483 lbu s1,3(a4) + c0027cfe: 04c2 slli s1,s1,0x10 + c0027d00: 8ec5 or a3,a3,s1 + c0027d02: 00474483 lbu s1,4(a4) + c0027d06: 04e2 slli s1,s1,0x18 + c0027d08: 8cd5 or s1,s1,a3 + c0027d0a: 2481 sext.w s1,s1 get_lvalue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 switch(opcode = get_prev_opcode(fd)) { - c0027b3c: 4a01 li s4,0 - c0027b3e: b74d j c0027ae0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23602 + c0027d0c: 4a01 li s4,0 + c0027d0e: b74d j c0027cb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23610 name = JS_ATOM_NULL; - c0027b40: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23630 + c0027d10: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23638 depth = 3; - c0027b42: 4a8d li s5,3 - c0027b44: bfe5 j c0027b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23605 + c0027d12: 4a8d li s5,3 + c0027d14: bfe5 j c0027d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23613 switch(opcode = get_prev_opcode(fd)) { - c0027b46: 4481 li s1,0 - c0027b48: 4a89 li s5,2 - c0027b4a: bfcd j c0027b3c - c0027b4c: 030a1d93 slli s11,s4,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23650 + c0027d16: 4481 li s1,0 + c0027d18: 4a89 li s5,2 + c0027d1a: bfcd j c0027d0c + c0027d1c: 030a1d93 slli s11,s4,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23658 switch(opcode) { - c0027b50: 0b800713 li a4,184 - c0027b54: 030ddd93 srli s11,s11,0x30 - c0027b58: 02e90463 beq s2,a4,c0027b80 - c0027b5c: 0bf00793 li a5,191 - c0027b60: faf917e3 bne s2,a5,c0027b0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23666 + c0027d20: 0b800713 li a4,184 + c0027d24: 030ddd93 srli s11,s11,0x30 + c0027d28: 02e90463 beq s2,a4,c0027d50 + c0027d2c: 0bf00793 li a5,191 + c0027d30: faf917e3 bne s2,a5,c0027cde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23674 emit_op(s, OP_scope_get_private_field2); - c0027b64: 8522 mv a0,s0 - c0027b66: 0c000593 li a1,192 - c0027b6a: 8d3dd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23667 + c0027d34: 8522 mv a0,s0 + c0027d36: 0c000593 li a1,192 + c0027d3a: ff0dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23675 emit_atom(s, name); - c0027b6e: 85a6 mv a1,s1 - c0027b70: 8522 mv a0,s0 - c0027b72: 97ddf0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23668 + c0027d3e: 85a6 mv a1,s1 + c0027d40: 8522 mv a0,s0 + c0027d42: 89bdf0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23676 emit_u16(s, scope); - c0027b76: 85ee mv a1,s11 - c0027b78: 8522 mv a0,s0 - c0027b7a: f90dd0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23669 + c0027d46: 85ee mv a1,s11 + c0027d48: 8522 mv a0,s0 + c0027d4a: eaedd0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23677 break; - c0027b7e: a849 j c0027c10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23652 + c0027d4e: a849 j c0027de0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23660 label = new_label(s); - c0027b80: 8522 mv a0,s0 - c0027b82: 92ef00ef jal ra,c0017cb0 - c0027b86: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23653 + c0027d50: 8522 mv a0,s0 + c0027d52: 92ef00ef jal ra,c0017e80 + c0027d56: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23661 emit_op(s, OP_scope_make_ref); - c0027b88: 0bb00593 li a1,187 - c0027b8c: 8522 mv a0,s0 - c0027b8e: 8afdd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23654 + c0027d58: 0bb00593 li a1,187 + c0027d5c: 8522 mv a0,s0 + c0027d5e: fccdd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23662 emit_atom(s, name); - c0027b92: 85a6 mv a1,s1 - c0027b94: 8522 mv a0,s0 - c0027b96: 959df0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23655 + c0027d62: 85a6 mv a1,s1 + c0027d64: 8522 mv a0,s0 + c0027d66: 877df0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23663 emit_u32(s, label); - c0027b9a: 0009859b sext.w a1,s3 - c0027b9e: 8522 mv a0,s0 - c0027ba0: a33dd0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23656 + c0027d6a: 0009859b sext.w a1,s3 + c0027d6e: 8522 mv a0,s0 + c0027d70: 951dd0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23664 emit_u16(s, scope); - c0027ba4: 85ee mv a1,s11 - c0027ba6: 8522 mv a0,s0 - c0027ba8: f62dd0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23657 + c0027d74: 85ee mv a1,s11 + c0027d76: 8522 mv a0,s0 + c0027d78: e80dd0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23665 update_label(fd, label, 1); - c0027bac: 85ce mv a1,s3 - c0027bae: 4605 li a2,1 - c0027bb0: 855e mv a0,s7 - c0027bb2: ee1dd0ef jal ra,c0005a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23658 + c0027d7c: 85ce mv a1,s3 + c0027d7e: 4605 li a2,1 + c0027d80: 855e mv a0,s7 + c0027d82: dffdd0ef jal ra,c0005b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23666 emit_op(s, OP_get_ref_value); - c0027bb6: 03c00593 li a1,60 - c0027bba: 8522 mv a0,s0 - c0027bbc: 881dd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23693 + c0027d86: 03c00593 li a1,60 + c0027d8a: 8522 mv a0,s0 + c0027d8c: f9edd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23701 opcode = OP_get_ref_value; - c0027bc0: 03c00913 li s2,60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23704 + c0027d90: 03c00913 li s2,60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23712 *popcode = opcode; - c0027bc4: 012d2023 sw s2,0(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23709 + c0027d94: 012d2023 sw s2,0(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23717 *plabel = label; - c0027bc8: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23705 + c0027d98: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23713 *pscope = scope; - c0027bca: 014ca023 sw s4,0(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23708 + c0027d9a: 014ca023 sw s4,0(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23716 *pname = name; - c0027bce: 009c2023 sw s1,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23709 + c0027d9e: 009c2023 sw s1,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23717 *plabel = label; - c0027bd2: 0137a023 sw s3,0(a5) # 110000 <__clzdi2-0xbfef0000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23710 + c0027da2: 0137a023 sw s3,0(a5) # 110000 <__clzdi2-0xbfef0000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23718 if (pdepth) - c0027bd6: 000b0463 beqz s6,c0027bde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23711 + c0027da6: 000b0463 beqz s6,c0027dae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23719 *pdepth = depth; - c0027bda: 015b2023 sw s5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23713 -} - c0027bde: 70e6 ld ra,120(sp) - c0027be0: 7446 ld s0,112(sp) - c0027be2: 74a6 ld s1,104(sp) - c0027be4: 7906 ld s2,96(sp) - c0027be6: 69e6 ld s3,88(sp) - c0027be8: 6a46 ld s4,80(sp) - c0027bea: 6aa6 ld s5,72(sp) - c0027bec: 6b06 ld s6,64(sp) - c0027bee: 7be2 ld s7,56(sp) - c0027bf0: 7c42 ld s8,48(sp) - c0027bf2: 7ca2 ld s9,40(sp) - c0027bf4: 7d02 ld s10,32(sp) - c0027bf6: 6de2 ld s11,24(sp) - c0027bf8: 4501 li a0,0 - c0027bfa: 6109 addi sp,sp,128 - c0027bfc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23662 + c0027daa: 015b2023 sw s5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23721 +} + c0027dae: 70e6 ld ra,120(sp) + c0027db0: 7446 ld s0,112(sp) + c0027db2: 74a6 ld s1,104(sp) + c0027db4: 7906 ld s2,96(sp) + c0027db6: 69e6 ld s3,88(sp) + c0027db8: 6a46 ld s4,80(sp) + c0027dba: 6aa6 ld s5,72(sp) + c0027dbc: 6b06 ld s6,64(sp) + c0027dbe: 7be2 ld s7,56(sp) + c0027dc0: 7c42 ld s8,48(sp) + c0027dc2: 7ca2 ld s9,40(sp) + c0027dc4: 7d02 ld s10,32(sp) + c0027dc6: 6de2 ld s11,24(sp) + c0027dc8: 4501 li a0,0 + c0027dca: 6109 addi sp,sp,128 + c0027dcc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23670 emit_op(s, OP_get_field2); - c0027bfe: 04200593 li a1,66 - c0027c02: 8522 mv a0,s0 - c0027c04: 839dd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23663 + c0027dce: 04200593 li a1,66 + c0027dd2: 8522 mv a0,s0 + c0027dd4: f56dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23671 emit_atom(s, name); - c0027c08: 85a6 mv a1,s1 - c0027c0a: 8522 mv a0,s0 - c0027c0c: 8e3df0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23603 + c0027dd8: 85a6 mv a1,s1 + c0027dda: 8522 mv a0,s0 + c0027ddc: 801df0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23611 label = -1; - c0027c10: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23700 + c0027de0: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23708 break; - c0027c12: bf4d j c0027bc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23672 + c0027de2: bf4d j c0027d94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23680 emit_op(s, OP_to_propkey2); - c0027c14: 07300593 li a1,115 - c0027c18: 8522 mv a0,s0 - c0027c1a: 823dd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23673 + c0027de4: 07300593 li a1,115 + c0027de8: 8522 mv a0,s0 + c0027dea: f40dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23681 emit_op(s, OP_dup2); - c0027c1e: 45cd li a1,19 - c0027c20: 8522 mv a0,s0 - c0027c22: 81bdd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23674 + c0027dee: 45cd li a1,19 + c0027df0: 8522 mv a0,s0 + c0027df2: f38dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23682 emit_op(s, OP_get_array_el); - c0027c26: 04700593 li a1,71 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23699 + c0027df6: 04700593 li a1,71 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23707 emit_op(s, OP_to_propkey); - c0027c2a: 8522 mv a0,s0 - c0027c2c: 811dd0ef jal ra,c000543c - c0027c30: b7c5 j c0027c10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23677 + c0027dfa: 8522 mv a0,s0 + c0027dfc: f2edd0ef jal ra,c000552a + c0027e00: b7c5 j c0027de0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23685 emit_op(s, OP_to_propkey); - c0027c32: 07200593 li a1,114 - c0027c36: 8522 mv a0,s0 - c0027c38: 805dd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23678 + c0027e02: 07200593 li a1,114 + c0027e06: 8522 mv a0,s0 + c0027e08: f22dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23686 emit_op(s, OP_dup3); - c0027c3c: 45d1 li a1,20 - c0027c3e: 8522 mv a0,s0 - c0027c40: ffcdd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23679 + c0027e0c: 45d1 li a1,20 + c0027e0e: 8522 mv a0,s0 + c0027e10: f1add0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23687 emit_op(s, OP_get_super_value); - c0027c44: 04a00593 li a1,74 - c0027c48: b7cd j c0027c2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23685 + c0027e14: 04a00593 li a1,74 + c0027e18: b7cd j c0027dfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23693 switch(opcode) { - c0027c4a: 04e90963 beq s2,a4,c0027c9c - c0027c4e: 0b800713 li a4,184 - c0027c52: 00e90963 beq s2,a4,c0027c64 - c0027c56: 04700793 li a5,71 - c0027c5a: faf91be3 bne s2,a5,c0027c10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23696 + c0027e1a: 04e90963 beq s2,a4,c0027e6c + c0027e1e: 0b800713 li a4,184 + c0027e22: 00e90963 beq s2,a4,c0027e34 + c0027e26: 04700793 li a5,71 + c0027e2a: faf91be3 bne s2,a5,c0027de0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23704 emit_op(s, OP_to_propkey2); - c0027c5e: 07300593 li a1,115 - c0027c62: b7e1 j c0027c2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23687 + c0027e2e: 07300593 li a1,115 + c0027e32: b7e1 j c0027dfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23695 label = new_label(s); - c0027c64: 8522 mv a0,s0 - c0027c66: 84af00ef jal ra,c0017cb0 - c0027c6a: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23688 + c0027e34: 8522 mv a0,s0 + c0027e36: 84af00ef jal ra,c0017e80 + c0027e3a: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23696 emit_op(s, OP_scope_make_ref); - c0027c6c: 0bb00593 li a1,187 - c0027c70: 8522 mv a0,s0 - c0027c72: fcadd0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23689 + c0027e3c: 0bb00593 li a1,187 + c0027e40: 8522 mv a0,s0 + c0027e42: ee8dd0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23697 emit_atom(s, name); - c0027c76: 85a6 mv a1,s1 - c0027c78: 8522 mv a0,s0 - c0027c7a: 875df0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23690 + c0027e46: 85a6 mv a1,s1 + c0027e48: 8522 mv a0,s0 + c0027e4a: f92df0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23698 emit_u32(s, label); - c0027c7e: 0009859b sext.w a1,s3 - c0027c82: 8522 mv a0,s0 - c0027c84: 94fdd0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23691 + c0027e4e: 0009859b sext.w a1,s3 + c0027e52: 8522 mv a0,s0 + c0027e54: 86ddd0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23699 emit_u16(s, scope); - c0027c88: 85d2 mv a1,s4 - c0027c8a: 8522 mv a0,s0 - c0027c8c: e7edd0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23692 + c0027e58: 85d2 mv a1,s4 + c0027e5a: 8522 mv a0,s0 + c0027e5c: d9cdd0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23700 update_label(fd, label, 1); - c0027c90: 4605 li a2,1 - c0027c92: 85ce mv a1,s3 - c0027c94: 855e mv a0,s7 - c0027c96: dfddd0ef jal ra,c0005a92 - c0027c9a: b71d j c0027bc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23699 + c0027e60: 4605 li a2,1 + c0027e62: 85ce mv a1,s3 + c0027e64: 855e mv a0,s7 + c0027e66: d1bdd0ef jal ra,c0005b80 + c0027e6a: b71d j c0027d90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23707 emit_op(s, OP_to_propkey); - c0027c9c: 07200593 li a1,114 - c0027ca0: b769 j c0027c2a + c0027e6c: 07200593 li a1,114 + c0027e70: b769 j c0027dfa -00000000c0027ca2 : +00000000c0027e72 : js_parse_error_reserved_identifier(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20241 { - c0027ca2: 715d addi sp,sp,-80 - c0027ca4: e486 sd ra,72(sp) - c0027ca6: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20235 + c0027e72: 715d addi sp,sp,-80 + c0027e74: e486 sd ra,72(sp) + c0027e76: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20243 return js_parse_error(s, "'%s' is a reserved identifier", - c0027ca8: 5510 lw a2,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20233 + c0027e78: 5510 lw a2,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20241 { - c0027caa: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20235 + c0027e7a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20243 return js_parse_error(s, "'%s' is a reserved identifier", - c0027cac: 6108 ld a0,0(a0) - c0027cae: 858a mv a1,sp - c0027cb0: 9bbde0ef jal ra,c000666a - c0027cb4: 862a mv a2,a0 - c0027cb6: 00037597 auipc a1,0x37 - c0027cba: 70a58593 addi a1,a1,1802 # c005f3c0 - c0027cbe: 8522 mv a0,s0 - c0027cc0: df8fe0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20238 + c0027e7c: 6108 ld a0,0(a0) + c0027e7e: 858a mv a1,sp + c0027e80: 8d9de0ef jal ra,c0006758 + c0027e84: 862a mv a2,a0 + c0027e86: 00037597 auipc a1,0x37 + c0027e8a: 79a58593 addi a1,a1,1946 # c005f620 + c0027e8e: 8522 mv a0,s0 + c0027e90: df8fe0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20246 } - c0027cc4: 60a6 ld ra,72(sp) - c0027cc6: 6406 ld s0,64(sp) - c0027cc8: 6161 addi sp,sp,80 - c0027cca: 8082 ret + c0027e94: 60a6 ld ra,72(sp) + c0027e96: 6406 ld s0,64(sp) + c0027e98: 6161 addi sp,sp,80 + c0027e9a: 8082 ret -00000000c0027ccc : +00000000c0027e9c : js_parse_function_check_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33614 if (fd->js_mode & JS_MODE_STRICT) { - c0027ccc: 0865c703 lbu a4,134(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33607 + c0027e9c: 0865c703 lbu a4,134(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33615 if (!fd->has_simple_parameter_list && fd->has_use_strict) { - c0027cd0: 49b4 lw a3,80(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33602 + c0027ea0: 49b4 lw a3,80(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33610 { - c0027cd2: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33606 + c0027ea2: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33614 if (fd->js_mode & JS_MODE_STRICT) { - c0027cd4: 8b05 andi a4,a4,1 - c0027cd6: c345 beqz a4,c0027d76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33607 + c0027ea4: 8b05 andi a4,a4,1 + c0027ea6: c345 beqz a4,c0027f46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33615 if (!fd->has_simple_parameter_list && fd->has_use_strict) { - c0027cd8: ea89 bnez a3,c0027cea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33607 (discriminator 1) - c0027cda: 4db8 lw a4,88(a1) - c0027cdc: c719 beqz a4,c0027cea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33608 + c0027ea8: ea89 bnez a3,c0027eba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33615 (discriminator 1) + c0027eaa: 4db8 lw a4,88(a1) + c0027eac: c719 beqz a4,c0027eba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33616 return js_parse_error(s, "\"use strict\" not allowed in function with default or destructuring parameter"); - c0027cde: 00037597 auipc a1,0x37 - c0027ce2: 70258593 addi a1,a1,1794 # c005f3e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33647 + c0027eae: 00037597 auipc a1,0x37 + c0027eb2: 79258593 addi a1,a1,1938 # c005f640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33655 return js_parse_error(s, "duplicate argument names not allowed in this context"); - c0027ce6: dd2fe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33610 + c0027eb6: dd2fe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33618 if (func_name == JS_ATOM_eval || func_name == JS_ATOM_arguments) { - c0027cea: 03b00713 li a4,59 - c0027cee: 04e60f63 beq a2,a4,c0027d4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33610 (discriminator 1) - c0027cf2: 04e00713 li a4,78 - c0027cf6: 04e60b63 beq a2,a4,c0027d4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33613 + c0027eba: 03b00713 li a4,59 + c0027ebe: 04e60f63 beq a2,a4,c0027f1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33618 (discriminator 1) + c0027ec2: 04e00713 li a4,78 + c0027ec6: 04e60b63 beq a2,a4,c0027f1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33621 for (idx = 0; idx < fd->arg_count; idx++) { - c0027cfa: 0ac5a603 lw a2,172(a1) - c0027cfe: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33616 + c0027eca: 0ac5a603 lw a2,172(a1) + c0027ece: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33624 if (name == JS_ATOM_eval || name == JS_ATOM_arguments) { - c0027d00: 03b00513 li a0,59 - c0027d04: 04e00813 li a6,78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33613 (discriminator 1) + c0027ed0: 03b00513 li a0,59 + c0027ed4: 04e00813 li a6,78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33621 (discriminator 1) for (idx = 0; idx < fd->arg_count; idx++) { - c0027d08: 0007069b sext.w a3,a4 - c0027d0c: 04c6c663 blt a3,a2,c0027d58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33627 (discriminator 1) + c0027ed8: 0007069b sext.w a3,a4 + c0027edc: 04c6c663 blt a3,a2,c0027f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33635 (discriminator 1) for (idx = 0; idx < fd->arg_count; idx++) { - c0027d10: 0ac5a303 lw t1,172(a1) - c0027d14: 4701 li a4,0 - c0027d16: 0007051b sext.w a0,a4 - c0027d1a: 08655163 bge a0,t1,c0027d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33628 + c0027ee0: 0ac5a303 lw t1,172(a1) + c0027ee4: 4701 li a4,0 + c0027ee6: 0007051b sext.w a0,a4 + c0027eea: 08655163 bge a0,t1,c0027f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33636 name = fd->args[idx].var_name; - c0027d1e: 0a05b883 ld a7,160(a1) - c0027d22: 00471693 slli a3,a4,0x4 - c0027d26: 96c6 add a3,a3,a7 - c0027d28: 0006a803 lw a6,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33629 + c0027eee: 0a05b883 ld a7,160(a1) + c0027ef2: 00471693 slli a3,a4,0x4 + c0027ef6: 96c6 add a3,a3,a7 + c0027ef8: 0006a803 lw a6,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33637 if (name != JS_ATOM_NULL) { - c0027d2c: 00080e63 beqz a6,c0027d48 - c0027d30: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33630 (discriminator 1) + c0027efc: 00080e63 beqz a6,c0027f18 + c0027f00: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33638 (discriminator 1) for (i = 0; i < idx; i++) { - c0027d32: 0006861b sext.w a2,a3 - c0027d36: 06a64563 blt a2,a0,c0027da0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33636 + c0027f02: 0006861b sext.w a2,a3 + c0027f06: 06a64563 blt a2,a0,c0027f70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33644 for (i = 0; i < fd->var_count; i++) { - c0027d3a: 09c5a883 lw a7,156(a1) - c0027d3e: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33636 (discriminator 1) - c0027d40: 0006861b sext.w a2,a3 - c0027d44: 07164b63 blt a2,a7,c0027dba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33627 (discriminator 2) + c0027f0a: 09c5a883 lw a7,156(a1) + c0027f0e: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33644 (discriminator 1) + c0027f10: 0006861b sext.w a2,a3 + c0027f14: 07164b63 blt a2,a7,c0027f8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33635 (discriminator 2) for (idx = 0; idx < fd->arg_count; idx++) { - c0027d48: 0705 addi a4,a4,1 - c0027d4a: b7f1 j c0027d16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33611 + c0027f18: 0705 addi a4,a4,1 + c0027f1a: b7f1 j c0027ee6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33619 return js_parse_error(s, "invalid function name in strict code"); - c0027d4c: 00037597 auipc a1,0x37 - c0027d50: 6e458593 addi a1,a1,1764 # c005f430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33647 + c0027f1c: 00037597 auipc a1,0x37 + c0027f20: 77458593 addi a1,a1,1908 # c005f690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33655 return js_parse_error(s, "duplicate argument names not allowed in this context"); - c0027d54: 853e mv a0,a5 - c0027d56: bf41 j c0027ce6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33614 + c0027f24: 853e mv a0,a5 + c0027f26: bf41 j c0027eb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33622 name = fd->args[idx].var_name; - c0027d58: 71d4 ld a3,160(a1) - c0027d5a: 00471893 slli a7,a4,0x4 - c0027d5e: 96c6 add a3,a3,a7 - c0027d60: 4294 lw a3,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33616 + c0027f28: 71d4 ld a3,160(a1) + c0027f2a: 00471893 slli a7,a4,0x4 + c0027f2e: 96c6 add a3,a3,a7 + c0027f30: 4294 lw a3,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33624 if (name == JS_ATOM_eval || name == JS_ATOM_arguments) { - c0027d62: 00a68563 beq a3,a0,c0027d6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33616 (discriminator 1) - c0027d66: 0705 addi a4,a4,1 - c0027d68: fb0690e3 bne a3,a6,c0027d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33617 + c0027f32: 00a68563 beq a3,a0,c0027f3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33624 (discriminator 1) + c0027f36: 0705 addi a4,a4,1 + c0027f38: fb0690e3 bne a3,a6,c0027ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33625 return js_parse_error(s, "invalid argument name in strict code"); - c0027d6c: 00037597 auipc a1,0x37 - c0027d70: 6ec58593 addi a1,a1,1772 # c005f458 - c0027d74: b7c5 j c0027d54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33623 + c0027f3c: 00037597 auipc a1,0x37 + c0027f40: 77c58593 addi a1,a1,1916 # c005f6b8 + c0027f44: b7c5 j c0027f24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33631 || !fd->has_simple_parameter_list - c0027d76: dec9 beqz a3,c0027d10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33624 + c0027f46: dec9 beqz a3,c0027ee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33632 || (fd->func_type == JS_PARSE_FUNC_METHOD && fd->func_kind == JS_FUNC_ASYNC) - c0027d78: 61d4 ld a3,128(a1) - c0027d7a: 0ffff737 lui a4,0xffff - c0027d7e: 0752 slli a4,a4,0x14 - c0027d80: 8ef9 and a3,a3,a4 - c0027d82: 30100713 li a4,769 - c0027d86: 1706 slli a4,a4,0x21 - c0027d88: f8e684e3 beq a3,a4,c0027d10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33625 + c0027f48: 61d4 ld a3,128(a1) + c0027f4a: 0ffff737 lui a4,0xffff + c0027f4e: 0752 slli a4,a4,0x14 + c0027f50: 8ef9 and a3,a3,a4 + c0027f52: 30100713 li a4,769 + c0027f56: 1706 slli a4,a4,0x21 + c0027f58: f8e684e3 beq a3,a4,c0027ee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33633 || fd->func_type == JS_PARSE_FUNC_ARROW - c0027d8c: 0855c703 lbu a4,133(a1) - c0027d90: 468d li a3,3 - c0027d92: f6d70fe3 beq a4,a3,c0027d10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33626 + c0027f5c: 0855c703 lbu a4,133(a1) + c0027f60: 468d li a3,3 + c0027f62: f6d70fe3 beq a4,a3,c0027ee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33634 || fd->func_type == JS_PARSE_FUNC_METHOD) { - c0027d96: 4699 li a3,6 - c0027d98: f6d70ce3 beq a4,a3,c0027d10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33648 + c0027f66: 4699 li a3,6 + c0027f68: f6d70ce3 beq a4,a3,c0027ee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33656 } - c0027d9c: 4501 li a0,0 - c0027d9e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33631 + c0027f6c: 4501 li a0,0 + c0027f6e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33639 if (fd->args[i].var_name == name) - c0027da0: 0685 addi a3,a3,1 - c0027da2: 00469613 slli a2,a3,0x4 - c0027da6: 9646 add a2,a2,a7 - c0027da8: ff062603 lw a2,-16(a2) - c0027dac: f90613e3 bne a2,a6,c0027d32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33647 + c0027f70: 0685 addi a3,a3,1 + c0027f72: 00469613 slli a2,a3,0x4 + c0027f76: 9646 add a2,a2,a7 + c0027f78: ff062603 lw a2,-16(a2) + c0027f7c: f90613e3 bne a2,a6,c0027f02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33655 return js_parse_error(s, "duplicate argument names not allowed in this context"); - c0027db0: 00037597 auipc a1,0x37 - c0027db4: 6d058593 addi a1,a1,1744 # c005f480 - c0027db8: bf71 j c0027d54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33637 + c0027f80: 00037597 auipc a1,0x37 + c0027f84: 76058593 addi a1,a1,1888 # c005f6e0 + c0027f88: bf71 j c0027f24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33645 if (fd->vars[i].var_name == name && - c0027dba: 69c8 ld a0,144(a1) - c0027dbc: 00469613 slli a2,a3,0x4 - c0027dc0: 962a add a2,a2,a0 - c0027dc2: 4208 lw a0,0(a2) - c0027dc4: 01051463 bne a0,a6,c0027dcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33637 (discriminator 1) - c0027dc8: 4250 lw a2,4(a2) - c0027dca: d27d beqz a2,c0027db0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33636 (discriminator 2) + c0027f8a: 69c8 ld a0,144(a1) + c0027f8c: 00469613 slli a2,a3,0x4 + c0027f90: 962a add a2,a2,a0 + c0027f92: 4208 lw a0,0(a2) + c0027f94: 01051463 bne a0,a6,c0027f9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33645 (discriminator 1) + c0027f98: 4250 lw a2,4(a2) + c0027f9a: d27d beqz a2,c0027f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33644 (discriminator 2) for (i = 0; i < fd->var_count; i++) { - c0027dcc: 0685 addi a3,a3,1 - c0027dce: bf8d j c0027d40 + c0027f9c: 0685 addi a3,a3,1 + c0027f9e: bf8d j c0027f10 -00000000c0027dd0 : +00000000c0027fa0 : define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21998 -{ - c0027dd0: 7139 addi sp,sp,-64 - c0027dd2: fc06 sd ra,56(sp) - c0027dd4: f822 sd s0,48(sp) - c0027dd6: f426 sd s1,40(sp) - c0027dd8: f04a sd s2,32(sp) - c0027dda: ec4e sd s3,24(sp) - c0027ddc: e852 sd s4,16(sp) - c0027dde: e456 sd s5,8(sp) - c0027de0: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22003 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22006 +{ + c0027fa0: 7139 addi sp,sp,-64 + c0027fa2: fc06 sd ra,56(sp) + c0027fa4: f822 sd s0,48(sp) + c0027fa6: f426 sd s1,40(sp) + c0027fa8: f04a sd s2,32(sp) + c0027faa: ec4e sd s3,24(sp) + c0027fac: e852 sd s4,16(sp) + c0027fae: e456 sd s5,8(sp) + c0027fb0: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22011 switch (var_def_type) { - c0027de2: 4795 li a5,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21999 + c0027fb2: 4795 li a5,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22007 JSContext *ctx = s->ctx; - c0027de4: 00053a03 ld s4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22003 + c0027fb4: 00053a03 ld s4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22011 switch (var_def_type) { - c0027de8: 1cf68263 beq a3,a5,c0027fac - c0027dec: 4799 li a5,6 - c0027dee: 89aa mv s3,a0 - c0027df0: 842e mv s0,a1 - c0027df2: 8932 mv s2,a2 - c0027df4: 84b6 mv s1,a3 - c0027df6: 1cf68863 beq a3,a5,c0027fc6 - c0027dfa: fff6879b addiw a5,a3,-1 - c0027dfe: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22005 + c0027fb8: 1cf68263 beq a3,a5,c002817c + c0027fbc: 4799 li a5,6 + c0027fbe: 89aa mv s3,a0 + c0027fc0: 842e mv s0,a1 + c0027fc2: 8932 mv s2,a2 + c0027fc4: 84b6 mv s1,a3 + c0027fc6: 1cf68863 beq a3,a5,c0028196 + c0027fca: fff6879b addiw a5,a3,-1 + c0027fce: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22013 idx = add_scope_var(ctx, fd, name, JS_VAR_NORMAL); - c0027e00: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22003 + c0027fd0: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22011 switch (var_def_type) { - c0027e02: 1afb6663 bltu s6,a5,c0027fae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22012 + c0027fd2: 1afb6663 bltu s6,a5,c002817e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22020 idx = find_lexical_decl(ctx, fd, name, fd->scope_first, TRUE); - c0027e06: 0e45a603 lw a2,228(a1) - c0027e0a: 4685 li a3,1 - c0027e0c: 85ca mv a1,s2 - c0027e0e: 8522 mv a0,s0 - c0027e10: cf6de0ef jal ra,c0006306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22015 + c0027fd6: 0e45a603 lw a2,228(a1) + c0027fda: 4685 li a3,1 + c0027fdc: 85ca mv a1,s2 + c0027fde: 8522 mv a0,s0 + c0027fe0: c14de0ef jal ra,c00063f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22023 if (fd->vars[idx].scope_level == fd->scope_level) { - c0027e14: 0e042a83 lw s5,224(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22013 + c0027fe4: 0e042a83 lw s5,224(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22021 if (idx >= 0) { - c0027e18: 06054263 bltz a0,c0027e7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22014 + c0027fe8: 06054263 bltz a0,c002804c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22022 if (idx < GLOBAL_VAR_OFFSET) { - c0027e1c: 400007b7 lui a5,0x40000 - c0027e20: 0ef55663 bge a0,a5,c0027f0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22015 + c0027fec: 400007b7 lui a5,0x40000 + c0027ff0: 0ef55663 bge a0,a5,c00280dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22023 if (fd->vars[idx].scope_level == fd->scope_level) { - c0027e24: 685c ld a5,144(s0) - c0027e26: 0512 slli a0,a0,0x4 - c0027e28: 953e add a0,a0,a5 - c0027e2a: 415c lw a5,4(a0) - c0027e2c: 03579e63 bne a5,s5,c0027e68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22018 + c0027ff4: 685c ld a5,144(s0) + c0027ff6: 0512 slli a0,a0,0x4 + c0027ff8: 953e add a0,a0,a5 + c0027ffa: 415c lw a5,4(a0) + c0027ffc: 03579e63 bne a5,s5,c0028038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22026 if (!(!(fd->js_mode & JS_MODE_STRICT) && - c0027e30: 08644783 lbu a5,134(s0) - c0027e34: 8b85 andi a5,a5,1 - c0027e36: eb89 bnez a5,c0027e48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22018 (discriminator 1) - c0027e38: 01649863 bne s1,s6,c0027e48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22020 (discriminator 2) + c0028000: 08644783 lbu a5,134(s0) + c0028004: 8b85 andi a5,a5,1 + c0028006: eb89 bnez a5,c0028018 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22026 (discriminator 1) + c0028008: 01649863 bne s1,s6,c0028018 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22028 (discriminator 2) fd->vars[idx].var_kind == JS_VAR_FUNCTION_DECL)) { - c0027e3c: 455c lw a5,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22018 (discriminator 2) + c002800c: 455c lw a5,12(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22026 (discriminator 2) if (!(!(fd->js_mode & JS_MODE_STRICT) && - c0027e3e: 4741 li a4,16 - c0027e40: 0f07f793 andi a5,a5,240 - c0027e44: 06e78863 beq a5,a4,c0027eb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22030 + c002800e: 4741 li a4,16 + c0028010: 0f07f793 andi a5,a5,240 + c0028014: 06e78863 beq a5,a4,c0028084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22038 return js_parse_error(s, "invalid redefinition of lexical identifier"); - c0027e48: 00037597 auipc a1,0x37 - c0027e4c: 67058593 addi a1,a1,1648 # c005f4b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 -} - c0027e50: 7442 ld s0,48(sp) - c0027e52: 70e2 ld ra,56(sp) - c0027e54: 74a2 ld s1,40(sp) - c0027e56: 7902 ld s2,32(sp) - c0027e58: 6a42 ld s4,16(sp) - c0027e5a: 6aa2 ld s5,8(sp) - c0027e5c: 6b02 ld s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22043 + c0028018: 00037597 auipc a1,0x37 + c002801c: 70058593 addi a1,a1,1792 # c005f718 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22130 +} + c0028020: 7442 ld s0,48(sp) + c0028022: 70e2 ld ra,56(sp) + c0028024: 74a2 ld s1,40(sp) + c0028026: 7902 ld s2,32(sp) + c0028028: 6a42 ld s4,16(sp) + c002802a: 6aa2 ld s5,8(sp) + c002802c: 6b02 ld s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22051 return js_parse_error(s, "invalid redefinition of a variable"); - c0027e5e: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 + c002802e: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22130 } - c0027e60: 69e2 ld s3,24(sp) - c0027e62: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22043 + c0028030: 69e2 ld s3,24(sp) + c0028032: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22051 return js_parse_error(s, "invalid redefinition of a variable"); - c0027e64: c54fe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22023 + c0028034: c54fe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22031 } else if (fd->vars[idx].var_kind == JS_VAR_CATCH && (fd->vars[idx].scope_level + 2) == fd->scope_level) { - c0027e68: 4558 lw a4,12(a0) - c0027e6a: 03000693 li a3,48 - c0027e6e: 0f077713 andi a4,a4,240 - c0027e72: 00d71563 bne a4,a3,c0027e7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22023 (discriminator 1) - c0027e76: 2789 addiw a5,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22027 + c0028038: 4558 lw a4,12(a0) + c002803a: 03000693 li a3,48 + c002803e: 0f077713 andi a4,a4,240 + c0028042: 00d71563 bne a4,a3,c002804c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22031 (discriminator 1) + c0028046: 2789 addiw a5,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22035 if (fd->scope_level == fd->body_scope) { - c0027e78: fd5788e3 beq a5,s5,c0027e48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22034 + c0028048: fd5788e3 beq a5,s5,c0028018 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22042 if (var_def_type != JS_VAR_DEF_FUNCTION_DECL && - c0027e7c: ffd4879b addiw a5,s1,-3 - c0027e80: 4705 li a4,1 - c0027e82: 02f77963 bgeu a4,a5,c0027eb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22035 + c002804c: ffd4879b addiw a5,s1,-3 + c0028050: 4705 li a4,1 + c0028052: 02f77963 bgeu a4,a5,c0028084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22043 var_def_type != JS_VAR_DEF_NEW_FUNCTION_DECL && - c0027e86: 11842783 lw a5,280(s0) - c0027e8a: 03579563 bne a5,s5,c0027eb4 + c0028056: 11842783 lw a5,280(s0) + c002805a: 03579563 bne a5,s5,c0028084 find_arg(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21697 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21705 for(i = fd->arg_count; i-- > 0;) { - c0027e8e: 0ac42783 lw a5,172(s0) - c0027e92: 873e mv a4,a5 - c0027e94: 37fd addiw a5,a5,-1 - c0027e96: 00e05f63 blez a4,c0027eb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21698 + c002805e: 0ac42783 lw a5,172(s0) + c0028062: 873e mv a4,a5 + c0028064: 37fd addiw a5,a5,-1 + c0028066: 00e05f63 blez a4,c0028084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21706 if (fd->args[i].var_name == name) - c0027e9a: 7058 ld a4,160(s0) - c0027e9c: 00479693 slli a3,a5,0x4 - c0027ea0: 9736 add a4,a4,a3 - c0027ea2: 4318 lw a4,0(a4) - c0027ea4: ff2717e3 bne a4,s2,c0027e92 + c002806a: 7058 ld a4,160(s0) + c002806c: 00479693 slli a3,a5,0x4 + c0028070: 9736 add a4,a4,a3 + c0028072: 4318 lw a4,0(a4) + c0028074: ff2717e3 bne a4,s2,c0028062 define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22047 return js_parse_error(s, "invalid redefinition of parameter name"); - c0027ea8: 00037597 auipc a1,0x37 - c0027eac: 64058593 addi a1,a1,1600 # c005f4e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22036 + c0028078: 00037597 auipc a1,0x37 + c002807c: 6d058593 addi a1,a1,1744 # c005f748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22044 fd->scope_level == fd->body_scope && - c0027eb0: fa07d0e3 bgez a5,c0027e50 + c0028080: fa07d0e3 bgez a5,c0028020 find_var_in_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21747 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21755 for(i = 0; i < fd->var_count; i++) { - c0027eb4: 09c42603 lw a2,156(s0) - c0027eb8: 4681 li a3,0 - c0027eba: 0006879b sext.w a5,a3 - c0027ebe: 04c7ca63 blt a5,a2,c0027f12 + c0028084: 09c42603 lw a2,156(s0) + c0028088: 4681 li a3,0 + c002808a: 0006879b sext.w a5,a3 + c002808e: 04c7ca63 blt a5,a2,c00280e2 define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22054 if (fd->is_global_var) { - c0027ec2: 403c lw a5,64(s0) - c0027ec4: cb89 beqz a5,c0027ed6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22048 + c0028092: 403c lw a5,64(s0) + c0028094: cb89 beqz a5,c00280a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22056 hf = find_global_var(fd, name); - c0027ec6: 85ca mv a1,s2 - c0027ec8: 8522 mv a0,s0 - c0027eca: db4dc0ef jal ra,c000447e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22049 + c0028096: 85ca mv a1,s2 + c0028098: 8522 mv a0,s0 + c002809a: be4dc0ef jal ra,c000447e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22057 if (hf && is_child_scope(ctx, fd, hf->scope_level, - c0027ece: c501 beqz a0,c0027ed6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22049 (discriminator 1) - c0027ed0: 451c lw a5,8(a0) + c002809e: c501 beqz a0,c00280a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22057 (discriminator 1) + c00280a0: 451c lw a5,8(a0) is_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21742 while (scope >= 0) { - c0027ed2: 0607d563 bgez a5,c0027f3c + c00280a2: 0607d563 bgez a5,c002810c define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22055 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22063 if (fd->is_eval && - c0027ed6: 5c1c lw a5,56(s0) - c0027ed8: cbd1 beqz a5,c0027f6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22055 (discriminator 1) - c0027eda: 5c58 lw a4,60(s0) - c0027edc: 4785 li a5,1 - c0027ede: 08e7e763 bltu a5,a4,c0027f6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22057 + c00280a6: 5c1c lw a5,56(s0) + c00280a8: cbd1 beqz a5,c002813c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22063 (discriminator 1) + c00280aa: 5c58 lw a4,60(s0) + c00280ac: 4785 li a5,1 + c00280ae: 08e7e763 bltu a5,a4,c002813c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22065 fd->eval_type == JS_EVAL_TYPE_MODULE) && - c0027ee2: 11842783 lw a5,280(s0) - c0027ee6: 09579363 bne a5,s5,c0027f6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22060 + c00280b2: 11842783 lw a5,280(s0) + c00280b6: 09579363 bne a5,s5,c002813c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22068 hf = add_global_var(s->ctx, fd, name); - c0027eea: 864a mv a2,s2 - c0027eec: 85a2 mv a1,s0 - c0027eee: 8552 mv a0,s4 - c0027ef0: b3af00ef jal ra,c001822a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22061 + c00280ba: 864a mv a2,s2 + c00280bc: 85a2 mv a1,s0 + c00280be: 8552 mv a0,s4 + c00280c0: b3af00ef jal ra,c00183fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22069 if (!hf) - c0027ef4: e939 bnez a0,c0027f4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22062 + c00280c4: e939 bnez a0,c002811a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22070 return -1; - c0027ef6: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 -} - c0027ef8: 70e2 ld ra,56(sp) - c0027efa: 7442 ld s0,48(sp) - c0027efc: 74a2 ld s1,40(sp) - c0027efe: 7902 ld s2,32(sp) - c0027f00: 69e2 ld s3,24(sp) - c0027f02: 6a42 ld s4,16(sp) - c0027f04: 6aa2 ld s5,8(sp) - c0027f06: 6b02 ld s6,0(sp) - c0027f08: 6121 addi sp,sp,64 - c0027f0a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22027 + c00280c6: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22130 +} + c00280c8: 70e2 ld ra,56(sp) + c00280ca: 7442 ld s0,48(sp) + c00280cc: 74a2 ld s1,40(sp) + c00280ce: 7902 ld s2,32(sp) + c00280d0: 69e2 ld s3,24(sp) + c00280d2: 6a42 ld s4,16(sp) + c00280d4: 6aa2 ld s5,8(sp) + c00280d6: 6b02 ld s6,0(sp) + c00280d8: 6121 addi sp,sp,64 + c00280da: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22035 if (fd->scope_level == fd->body_scope) { - c0027f0c: 11842783 lw a5,280(s0) - c0027f10: b7a5 j c0027e78 + c00280dc: 11842783 lw a5,280(s0) + c00280e0: b7a5 j c0028048 find_var_in_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21756 JSVarDef *vd = &fd->vars[i]; - c0027f12: 6858 ld a4,144(s0) - c0027f14: 00469793 slli a5,a3,0x4 - c0027f18: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21749 + c00280e2: 6858 ld a4,144(s0) + c00280e4: 00469793 slli a5,a3,0x4 + c00280e8: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21757 if (vd->var_name == name && vd->scope_level == 0) { - c0027f1a: 4398 lw a4,0(a5) - c0027f1c: 01271763 bne a4,s2,c0027f2a - c0027f20: 43d8 lw a4,4(a5) - c0027f22: e701 bnez a4,c0027f2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21750 + c00280ea: 4398 lw a4,0(a5) + c00280ec: 01271763 bne a4,s2,c00280fa + c00280f0: 43d8 lw a4,4(a5) + c00280f2: e701 bnez a4,c00280fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21758 if (is_child_scope(ctx, fd, vd->scope_next, - c0027f24: 479c lw a5,8(a5) + c00280f4: 479c lw a5,8(a5) is_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21742 while (scope >= 0) { - c0027f26: 0007d463 bgez a5,c0027f2e + c00280f6: 0007d463 bgez a5,c00280fe find_var_in_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21747 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21755 for(i = 0; i < fd->var_count; i++) { - c0027f2a: 0685 addi a3,a3,1 - c0027f2c: b779 j c0027eba + c00280fa: 0685 addi a3,a3,1 + c00280fc: b779 j c002808a is_child_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21735 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21743 if (scope == parent_scope) - c0027f2e: 13578363 beq a5,s5,c0028054 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21737 + c00280fe: 13578363 beq a5,s5,c0028224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21745 scope = fd->scopes[scope].parent; - c0027f32: 7878 ld a4,240(s0) - c0027f34: 078e slli a5,a5,0x3 - c0027f36: 97ba add a5,a5,a4 - c0027f38: 439c lw a5,0(a5) - c0027f3a: b7f5 j c0027f26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21735 + c0028102: 7878 ld a4,240(s0) + c0028104: 078e slli a5,a5,0x3 + c0028106: 97ba add a5,a5,a4 + c0028108: 439c lw a5,0(a5) + c002810a: b7f5 j c00280f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21743 if (scope == parent_scope) - c0027f3c: 11578763 beq a5,s5,c002804a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21737 + c002810c: 11578763 beq a5,s5,c002821a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21745 scope = fd->scopes[scope].parent; - c0027f40: 7878 ld a4,240(s0) - c0027f42: 078e slli a5,a5,0x3 - c0027f44: 97ba add a5,a5,a4 - c0027f46: 439c lw a5,0(a5) - c0027f48: b769 j c0027ed2 + c0028110: 7878 ld a4,240(s0) + c0028112: 078e slli a5,a5,0x3 + c0028114: 97ba add a5,a5,a4 + c0028116: 439c lw a5,0(a5) + c0028118: b769 j c00280a2 define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22071 hf->is_lexical = TRUE; - c0027f4a: 00454703 lbu a4,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22064 + c002811a: 00454703 lbu a4,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22072 hf->is_const = (var_def_type == JS_VAR_DEF_CONST); - c0027f4e: ffe48793 addi a5,s1,-2 - c0027f52: 0017b793 seqz a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22063 + c002811e: ffe48793 addi a5,s1,-2 + c0028122: 0017b793 seqz a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22071 hf->is_lexical = TRUE; - c0027f56: 0027979b slliw a5,a5,0x2 - c0027f5a: 0027e793 ori a5,a5,2 - c0027f5e: 9b65 andi a4,a4,-7 - c0027f60: 8fd9 or a5,a5,a4 - c0027f62: 00f50223 sb a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22104 + c0028126: 0027979b slliw a5,a5,0x2 + c002812a: 0027e793 ori a5,a5,2 + c002812e: 9b65 andi a4,a4,-7 + c0028130: 8fd9 or a5,a5,a4 + c0028132: 00f50223 sb a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22112 idx = GLOBAL_VAR_OFFSET; - c0027f66: 40000537 lui a0,0x40000 - c0027f6a: b779 j c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22068 + c0028136: 40000537 lui a0,0x40000 + c002813a: b779 j c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22076 if (var_def_type == JS_VAR_DEF_FUNCTION_DECL) - c0027f6c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22069 + c002813c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22077 var_kind = JS_VAR_FUNCTION_DECL; - c0027f6e: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22068 + c002813e: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22076 if (var_def_type == JS_VAR_DEF_FUNCTION_DECL) - c0027f70: 00f48763 beq s1,a5,c0027f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22070 + c0028140: 00f48763 beq s1,a5,c002814e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22078 else if (var_def_type == JS_VAR_DEF_NEW_FUNCTION_DECL) - c0027f74: 4791 li a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22071 + c0028144: 4791 li a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22079 var_kind = JS_VAR_NEW_FUNCTION_DECL; - c0027f76: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22070 + c0028146: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22078 else if (var_def_type == JS_VAR_DEF_NEW_FUNCTION_DECL) - c0027f78: 00f48363 beq s1,a5,c0027f7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22073 + c0028148: 00f48363 beq s1,a5,c002814e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22081 var_kind = JS_VAR_NORMAL; - c0027f7c: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22074 + c002814c: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22082 idx = add_scope_var(ctx, fd, name, var_kind); - c0027f7e: 864a mv a2,s2 - c0027f80: 85a2 mv a1,s0 - c0027f82: 8552 mv a0,s4 - c0027f84: 86afa0ef jal ra,c0021fee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22075 + c002814e: 864a mv a2,s2 + c0028150: 85a2 mv a1,s0 + c0028152: 8552 mv a0,s4 + c0028154: 86afa0ef jal ra,c00221be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22083 if (idx >= 0) { - c0027f88: f60548e3 bltz a0,c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22076 + c0028158: f60548e3 bltz a0,c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22084 vd = &fd->vars[idx]; - c0027f8c: 6858 ld a4,144(s0) - c0027f8e: 00451793 slli a5,a0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22078 + c002815c: 6858 ld a4,144(s0) + c002815e: 00451793 slli a5,a0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22086 vd->is_const = (var_def_type == JS_VAR_DEF_CONST); - c0027f92: 14f9 addi s1,s1,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22076 + c0028162: 14f9 addi s1,s1,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22084 vd = &fd->vars[idx]; - c0027f94: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22078 + c0028164: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22086 vd->is_const = (var_def_type == JS_VAR_DEF_CONST); - c0027f96: 00c7c703 lbu a4,12(a5) # 4000000c <__clzdi2-0x7ffffff4> - c0027f9a: 0014b493 seqz s1,s1 - c0027f9e: 0024e493 ori s1,s1,2 - c0027fa2: 9b71 andi a4,a4,-4 - c0027fa4: 8cd9 or s1,s1,a4 - c0027fa6: 00978623 sb s1,12(a5) - c0027faa: b7b9 j c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22084 + c0028166: 00c7c703 lbu a4,12(a5) # 4000000c <__clzdi2-0x7ffffff4> + c002816a: 0014b493 seqz s1,s1 + c002816e: 0024e493 ori s1,s1,2 + c0028172: 9b71 andi a4,a4,-4 + c0028174: 8cd9 or s1,s1,a4 + c0028176: 00978623 sb s1,12(a5) + c002817a: b7b9 j c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22092 idx = add_scope_var(ctx, fd, name, JS_VAR_CATCH); - c0027fac: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 -} - c0027fae: 7442 ld s0,48(sp) - c0027fb0: 70e2 ld ra,56(sp) - c0027fb2: 74a2 ld s1,40(sp) - c0027fb4: 7902 ld s2,32(sp) - c0027fb6: 69e2 ld s3,24(sp) - c0027fb8: 6aa2 ld s5,8(sp) - c0027fba: 6b02 ld s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22084 + c002817c: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22130 +} + c002817e: 7442 ld s0,48(sp) + c0028180: 70e2 ld ra,56(sp) + c0028182: 74a2 ld s1,40(sp) + c0028184: 7902 ld s2,32(sp) + c0028186: 69e2 ld s3,24(sp) + c0028188: 6aa2 ld s5,8(sp) + c002818a: 6b02 ld s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22092 idx = add_scope_var(ctx, fd, name, JS_VAR_CATCH); - c0027fbc: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 + c002818c: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22130 } - c0027fbe: 6a42 ld s4,16(sp) - c0027fc0: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22084 + c002818e: 6a42 ld s4,16(sp) + c0028190: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22092 idx = add_scope_var(ctx, fd, name, JS_VAR_CATCH); - c0027fc2: 82cfa06f j c0021fee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22088 + c0028192: 82cfa06f j c00221be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22096 if (find_lexical_decl(ctx, fd, name, fd->scope_first, - c0027fc6: 0e45a603 lw a2,228(a1) - c0027fca: 4681 li a3,0 - c0027fcc: 85ca mv a1,s2 - c0027fce: 8522 mv a0,s0 - c0027fd0: b36de0ef jal ra,c0006306 - c0027fd4: e6055ae3 bgez a0,c0027e48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22094 + c0028196: 0e45a603 lw a2,228(a1) + c002819a: 4681 li a3,0 + c002819c: 85ca mv a1,s2 + c002819e: 8522 mv a0,s0 + c00281a0: a54de0ef jal ra,c00063f4 + c00281a4: e6055ae3 bgez a0,c0028018 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22102 if (fd->is_global_var) { - c0027fd8: 403c lw a5,64(s0) - c0027fda: cb95 beqz a5,c002800e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22096 + c00281a8: 403c lw a5,64(s0) + c00281aa: cb95 beqz a5,c00281de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22104 hf = find_global_var(fd, name); - c0027fdc: 85ca mv a1,s2 - c0027fde: 8522 mv a0,s0 - c0027fe0: c9edc0ef jal ra,c000447e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22097 + c00281ac: 85ca mv a1,s2 + c00281ae: 8522 mv a0,s0 + c00281b0: acedc0ef jal ra,c000447e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22105 if (hf && hf->is_lexical && hf->scope_level == fd->scope_level && - c0027fe4: cd11 beqz a0,c0028000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22097 (discriminator 1) - c0027fe6: 00454783 lbu a5,4(a0) # 40000004 <__clzdi2-0x7ffffffc> - c0027fea: 8b89 andi a5,a5,2 - c0027fec: cb91 beqz a5,c0028000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22097 (discriminator 2) - c0027fee: 4518 lw a4,8(a0) - c0027ff0: 0e042783 lw a5,224(s0) - c0027ff4: 00f71663 bne a4,a5,c0028000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22097 (discriminator 3) - c0027ff8: 5c58 lw a4,60(s0) - c0027ffa: 4785 li a5,1 - c0027ffc: e4f706e3 beq a4,a5,c0027e48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22101 + c00281b4: cd11 beqz a0,c00281d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22105 (discriminator 1) + c00281b6: 00454783 lbu a5,4(a0) # 40000004 <__clzdi2-0x7ffffffc> + c00281ba: 8b89 andi a5,a5,2 + c00281bc: cb91 beqz a5,c00281d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22105 (discriminator 2) + c00281be: 4518 lw a4,8(a0) + c00281c0: 0e042783 lw a5,224(s0) + c00281c4: 00f71663 bne a4,a5,c00281d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22105 (discriminator 3) + c00281c8: 5c58 lw a4,60(s0) + c00281ca: 4785 li a5,1 + c00281cc: e4f706e3 beq a4,a5,c0028018 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22109 hf = add_global_var(s->ctx, fd, name); - c0028000: 864a mv a2,s2 - c0028002: 85a2 mv a1,s0 - c0028004: 8552 mv a0,s4 - c0028006: a24f00ef jal ra,c001822a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22102 + c00281d0: 864a mv a2,s2 + c00281d2: 85a2 mv a1,s0 + c00281d4: 8552 mv a0,s4 + c00281d6: a24f00ef jal ra,c00183fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22110 if (!hf) - c002800a: fd31 bnez a0,c0027f66 - c002800c: b5ed j c0027ef6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22107 + c00281da: fd31 bnez a0,c0028136 + c00281dc: b5ed j c00280c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22115 idx = find_var(ctx, fd, name); - c002800e: 864a mv a2,s2 - c0028010: 85a2 mv a1,s0 - c0028012: 8552 mv a0,s4 - c0028014: 823de0ef jal ra,c0006836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22108 + c00281de: 864a mv a2,s2 + c00281e0: 85a2 mv a1,s0 + c00281e2: 8552 mv a0,s4 + c00281e4: f40de0ef jal ra,c0006924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22116 if (idx >= 0) - c0028018: ee0550e3 bgez a0,c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22110 + c00281e8: ee0550e3 bgez a0,c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22118 idx = add_var(ctx, fd, name); - c002801c: 864a mv a2,s2 - c002801e: 85a2 mv a1,s0 - c0028020: 8552 mv a0,s4 - c0028022: f47f90ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22111 + c00281ec: 864a mv a2,s2 + c00281ee: 85a2 mv a1,s0 + c00281f0: 8552 mv a0,s4 + c00281f2: f47f90ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22119 if (idx >= 0) { - c0028026: ec0549e3 bltz a0,c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22112 + c00281f6: ec0549e3 bltz a0,c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22120 if (name == JS_ATOM_arguments && fd->has_arguments_binding) - c002802a: 04e00793 li a5,78 - c002802e: 00f91663 bne s2,a5,c002803a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22112 (discriminator 1) - c0028032: 503c lw a5,96(s0) - c0028034: c399 beqz a5,c002803a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22113 + c00281fa: 04e00793 li a5,78 + c00281fe: 00f91663 bne s2,a5,c002820a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22120 (discriminator 1) + c0028202: 503c lw a5,96(s0) + c0028204: c399 beqz a5,c002820a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22121 fd->arguments_var_idx = idx; - c0028036: 0aa42e23 sw a0,188(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22114 + c0028206: 0aa42e23 sw a0,188(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22122 fd->vars[idx].scope_next = fd->scope_level; - c002803a: 685c ld a5,144(s0) - c002803c: 0e042703 lw a4,224(s0) - c0028040: 00451693 slli a3,a0,0x4 - c0028044: 97b6 add a5,a5,a3 - c0028046: c798 sw a4,8(a5) - c0028048: bd45 j c0027ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22051 + c002820a: 685c ld a5,144(s0) + c002820c: 0e042703 lw a4,224(s0) + c0028210: 00451693 slli a3,a0,0x4 + c0028214: 97b6 add a5,a5,a3 + c0028216: c798 sw a4,8(a5) + c0028218: bd45 j c00280c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22059 return js_parse_error(s, "invalid redefinition of global identifier"); - c002804a: 00037597 auipc a1,0x37 - c002804e: 4c658593 addi a1,a1,1222 # c005f510 - c0028052: bbfd j c0027e50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22043 + c002821a: 00037597 auipc a1,0x37 + c002821e: 55658593 addi a1,a1,1366 # c005f770 + c0028222: bbfd j c0028020 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22051 return js_parse_error(s, "invalid redefinition of a variable"); - c0028054: 00037597 auipc a1,0x37 - c0028058: 4ec58593 addi a1,a1,1260 # c005f540 - c002805c: bbd5 j c0027e50 + c0028224: 00037597 auipc a1,0x37 + c0028228: 57c58593 addi a1,a1,1404 # c005f7a0 + c002822c: bbd5 j c0028020 -00000000c002805e : +00000000c002822e : js_define_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23858 { - c002805e: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23854 + c002822e: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23862 if (name == JS_ATOM_yield && fd->func_kind == JS_FUNC_GENERATOR) { - c0028060: 02d00693 li a3,45 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23851 + c0028230: 02d00693 li a3,45 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23859 JSFunctionDef *fd = s->cur_func; - c0028064: 752c ld a1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23850 + c0028234: 752c ld a1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23858 { - c0028066: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23854 + c0028236: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23862 if (name == JS_ATOM_yield && fd->func_kind == JS_FUNC_GENERATOR) { - c0028068: 00d79d63 bne a5,a3,c0028082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23854 (discriminator 1) - c002806c: 0845c803 lbu a6,132(a1) - c0028070: 4685 li a3,1 - c0028072: 04d81c63 bne a6,a3,c00280ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23855 - return js_parse_error(s, "yield is a reserved identifier"); - c0028076: 00037597 auipc a1,0x37 - c002807a: 4f258593 addi a1,a1,1266 # c005f568 + c0028238: 00d79d63 bne a5,a3,c0028252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23862 (discriminator 1) + c002823c: 0845c803 lbu a6,132(a1) + c0028240: 4685 li a3,1 + c0028242: 04d81c63 bne a6,a3,c002829a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23863 + return js_parse_error(s, "yield is a reserved identifier"); + c0028246: 00037597 auipc a1,0x37 + c002824a: 58258593 addi a1,a1,1410 # c005f7c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23871 return js_parse_error(s, "invalid lexical variable name"); - c002807e: a3afe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23857 + c002824e: a3afe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 if ((name == JS_ATOM_arguments || name == JS_ATOM_eval) - c0028082: 04e00693 li a3,78 - c0028086: 00d78663 beq a5,a3,c0028092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23857 (discriminator 1) - c002808a: 03b00693 li a3,59 - c002808e: 00d79c63 bne a5,a3,c00280a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23858 + c0028252: 04e00693 li a3,78 + c0028256: 00d78663 beq a5,a3,c0028262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 (discriminator 1) + c002825a: 03b00693 li a3,59 + c002825e: 00d79c63 bne a5,a3,c0028276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23866 && (fd->js_mode & JS_MODE_STRICT)) { - c0028092: 0865c683 lbu a3,134(a1) - c0028096: 8a85 andi a3,a3,1 - c0028098: c699 beqz a3,c00280a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23859 + c0028262: 0865c683 lbu a3,134(a1) + c0028266: 8a85 andi a3,a3,1 + c0028268: c699 beqz a3,c0028276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23867 return js_parse_error(s, "invalid variable name in strict mode"); - c002809a: 00037597 auipc a1,0x37 - c002809e: 4ee58593 addi a1,a1,1262 # c005f588 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23863 + c002826a: 00037597 auipc a1,0x37 + c002826e: 57e58593 addi a1,a1,1406 # c005f7e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23871 return js_parse_error(s, "invalid lexical variable name"); - c00280a2: 853a mv a0,a4 - c00280a4: bfe9 j c002807e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23861 + c0028272: 853a mv a0,a4 + c0028274: bfe9 j c002824e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23869 if ((name == JS_ATOM_let || name == JS_ATOM_undefined) - c00280a6: 02700693 li a3,39 - c00280aa: 00d78663 beq a5,a3,c00280b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23861 (discriminator 1) - c00280ae: 04600693 li a3,70 - c00280b2: 00d79c63 bne a5,a3,c00280ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23862 (discriminator 1) + c0028276: 02700693 li a3,39 + c002827a: 00d78663 beq a5,a3,c0028286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23869 (discriminator 1) + c002827e: 04600693 li a3,70 + c0028282: 00d79c63 bne a5,a3,c002829a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23870 (discriminator 1) && (tok == TOK_LET || tok == TOK_CONST)) { - c00280b6: 0376069b addiw a3,a2,55 - c00280ba: 9add andi a3,a3,-9 - c00280bc: 2681 sext.w a3,a3 - c00280be: e691 bnez a3,c00280ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23863 + c0028286: 0376069b addiw a3,a2,55 + c002828a: 9add andi a3,a3,-9 + c002828c: 2681 sext.w a3,a3 + c002828e: e691 bnez a3,c002829a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23871 return js_parse_error(s, "invalid lexical variable name"); - c00280c0: 00037597 auipc a1,0x37 - c00280c4: 4f058593 addi a1,a1,1264 # c005f5b0 - c00280c8: bfe9 j c00280a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23850 + c0028290: 00037597 auipc a1,0x37 + c0028294: 58058593 addi a1,a1,1408 # c005f810 + c0028298: bfe9 j c0028272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23858 { - c00280ca: 1141 addi sp,sp,-16 - c00280cc: e406 sd ra,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 + c002829a: 1141 addi sp,sp,-16 + c002829c: e406 sd ra,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23873 switch(tok) { - c00280ce: fc900693 li a3,-55 - c00280d2: 02d60563 beq a2,a3,c00280fc - c00280d6: fca00693 li a3,-54 - c00280da: 00d65d63 bge a2,a3,c00280f4 - c00280de: fb100693 li a3,-79 - c00280e2: 02d60763 beq a2,a3,c0028110 - c00280e6: fc300513 li a0,-61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23876 + c002829e: fc900693 li a3,-55 + c00282a2: 02d60563 beq a2,a3,c00282cc + c00282a6: fca00693 li a3,-54 + c00282aa: 00d65d63 bge a2,a3,c00282c4 + c00282ae: fb100693 li a3,-79 + c00282b2: 02d60763 beq a2,a3,c00282e0 + c00282b6: fc300513 li a0,-61 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23884 var_def_type = JS_VAR_DEF_CATCH; - c00280ea: 4695 li a3,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 + c00282ba: 4695 li a3,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23873 switch(tok) { - c00280ec: 00a60963 beq a2,a0,c00280fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23879 + c00282bc: 00a60963 beq a2,a0,c00282ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23887 abort(); - c00280f0: 71a2d0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 + c00282c0: 71a2d0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23873 switch(tok) { - c00280f4: fd100513 li a0,-47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23867 + c00282c4: fd100513 li a0,-47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23875 var_def_type = JS_VAR_DEF_LET; - c00280f8: 4685 li a3,1 - c00280fa: bfcd j c00280ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23865 + c00282c8: 4685 li a3,1 + c00282ca: bfcd j c00282bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23873 switch(tok) { - c00280fc: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23881 + c00282cc: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23889 if (define_var(s, fd, name, var_def_type) < 0) - c00280fe: 863e mv a2,a5 - c0028100: 853a mv a0,a4 - c0028102: ccfff0ef jal ra,c0027dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23884 -} - c0028106: 60a2 ld ra,8(sp) - c0028108: 41f5551b sraiw a0,a0,0x1f - c002810c: 0141 addi sp,sp,16 - c002810e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23873 + c00282ce: 863e mv a2,a5 + c00282d0: 853a mv a0,a4 + c00282d2: ccfff0ef jal ra,c0027fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23892 +} + c00282d6: 60a2 ld ra,8(sp) + c00282d8: 41f5551b sraiw a0,a0,0x1f + c00282dc: 0141 addi sp,sp,16 + c00282de: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23881 var_def_type = JS_VAR_DEF_VAR; - c0028110: 4699 li a3,6 - c0028112: b7f5 j c00280fe + c00282e0: 4699 li a3,6 + c00282e2: b7f5 j c00282ce -00000000c0028114 : +00000000c00282e4 : js_parse_from_clause(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29036 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29044 { - c0028114: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29038 + c00282e4: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29046 if (!token_is_pseudo_keyword(s, JS_ATOM_from)) { - c0028116: 07b00593 li a1,123 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29036 + c00282e6: 07b00593 li a1,123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29044 { - c002811a: e822 sd s0,16(sp) - c002811c: ec06 sd ra,24(sp) - c002811e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29038 + c00282ea: e822 sd s0,16(sp) + c00282ec: ec06 sd ra,24(sp) + c00282ee: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29046 if (!token_is_pseudo_keyword(s, JS_ATOM_from)) { - c0028120: a34dc0ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29039 + c00282f0: 864dc0ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29047 js_parse_error(s, "from clause expected"); - c0028124: 00037597 auipc a1,0x37 - c0028128: 4ac58593 addi a1,a1,1196 # c005f5d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29038 + c00282f4: 00037597 auipc a1,0x37 + c00282f8: 53c58593 addi a1,a1,1340 # c005f830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29046 if (!token_is_pseudo_keyword(s, JS_ATOM_from)) { - c002812c: c505 beqz a0,c0028154 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29042 + c00282fc: c505 beqz a0,c0028324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29050 if (next_token(s)) - c002812e: 8522 mv a0,s0 - c0028130: a67fe0ef jal ra,c0026b96 - c0028134: c519 beqz a0,c0028142 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29053 + c00282fe: 8522 mv a0,s0 + c0028300: a67fe0ef jal ra,c0026d66 + c0028304: c519 beqz a0,c0028312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29061 return JS_ATOM_NULL; - c0028136: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29056 -} - c0028138: 60e2 ld ra,24(sp) - c002813a: 6442 ld s0,16(sp) - c002813c: 852e mv a0,a1 - c002813e: 6105 addi sp,sp,32 - c0028140: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29044 + c0028306: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29064 +} + c0028308: 60e2 ld ra,24(sp) + c002830a: 6442 ld s0,16(sp) + c002830c: 852e mv a0,a1 + c002830e: 6105 addi sp,sp,32 + c0028310: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29052 if (s->token.val != TOK_STRING) { - c0028142: 4c18 lw a4,24(s0) - c0028144: f8100793 li a5,-127 - c0028148: 00f70a63 beq a4,a5,c002815c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29045 + c0028312: 4c18 lw a4,24(s0) + c0028314: f8100793 li a5,-127 + c0028318: 00f70a63 beq a4,a5,c002832c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29053 js_parse_error(s, "string expected"); - c002814c: 00037597 auipc a1,0x37 - c0028150: 49c58593 addi a1,a1,1180 # c005f5e8 - c0028154: 8522 mv a0,s0 - c0028156: 962fe0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29046 + c002831c: 00037597 auipc a1,0x37 + c0028320: 52c58593 addi a1,a1,1324 # c005f848 + c0028324: 8522 mv a0,s0 + c0028326: 962fe0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29054 return JS_ATOM_NULL; - c002815a: bff1 j c0028136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29048 + c002832a: bff1 j c0028306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29056 module_name = JS_ValueToAtom(s->ctx, s->token.u.str.str); - c002815c: 740c ld a1,40(s0) - c002815e: 7810 ld a2,48(s0) - c0028160: 6008 ld a0,0(s0) - c0028162: cbaf90ef jal ra,c002161c - c0028166: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29049 + c002832c: 740c ld a1,40(s0) + c002832e: 7810 ld a2,48(s0) + c0028330: 6008 ld a0,0(s0) + c0028332: cbaf90ef jal ra,c00217ec + c0028336: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29057 if (module_name == JS_ATOM_NULL) - c002816a: e42e sd a1,8(sp) - c002816c: d5e9 beqz a1,c0028136 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29051 + c002833a: e42e sd a1,8(sp) + c002833c: d5e9 beqz a1,c0028306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29059 if (next_token(s)) { - c002816e: 8522 mv a0,s0 - c0028170: a27fe0ef jal ra,c0026b96 - c0028174: 65a2 ld a1,8(sp) - c0028176: d169 beqz a0,c0028138 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29052 + c002833e: 8522 mv a0,s0 + c0028340: a27fe0ef jal ra,c0026d66 + c0028344: 65a2 ld a1,8(sp) + c0028346: d169 beqz a0,c0028308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29060 JS_FreeAtom(s->ctx, module_name); - c0028178: 6008 ld a0,0(s0) - c002817a: b92df0ef jal ra,c000750c - c002817e: bf65 j c0028136 + c0028348: 6008 ld a0,0(s0) + c002834a: ab0df0ef jal ra,c00075fa + c002834e: bf65 j c0028306 -00000000c0028180 : +00000000c0028350 : add_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29242 if (local_name == JS_ATOM_arguments || local_name == JS_ATOM_eval) - c0028180: 04e00713 li a4,78 - c0028184: 00e60763 beq a2,a4,c0028192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29234 (discriminator 1) - c0028188: 03b00713 li a4,59 - c002818c: 87b2 mv a5,a2 - c002818e: 00e61863 bne a2,a4,c002819e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29235 + c0028350: 04e00713 li a4,78 + c0028354: 00e60763 beq a2,a4,c0028362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29242 (discriminator 1) + c0028358: 03b00713 li a4,59 + c002835c: 87b2 mv a5,a2 + c002835e: 00e61863 bne a2,a4,c002836e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29243 return js_parse_error(s, "invalid import binding"); - c0028192: 00037597 auipc a1,0x37 - c0028196: 46658593 addi a1,a1,1126 # c005f5f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29240 + c0028362: 00037597 auipc a1,0x37 + c0028366: 4f658593 addi a1,a1,1270 # c005f858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29248 return js_parse_error(s, "duplicate import binding"); - c002819a: 91efe06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29228 -{ - c002819e: 7139 addi sp,sp,-64 - c00281a0: f822 sd s0,48(sp) - c00281a2: ec4e sd s3,24(sp) - c00281a4: fc06 sd ra,56(sp) - c00281a6: f426 sd s1,40(sp) - c00281a8: f04a sd s2,32(sp) - c00281aa: e852 sd s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29237 - if (local_name != JS_ATOM_default) { - c00281ac: 4759 li a4,22 - c00281ae: 842e mv s0,a1 - c00281b0: 89b6 mv s3,a3 + c002836a: 91efe06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29236 +{ + c002836e: 7139 addi sp,sp,-64 + c0028370: f822 sd s0,48(sp) + c0028372: ec4e sd s3,24(sp) + c0028374: fc06 sd ra,56(sp) + c0028376: f426 sd s1,40(sp) + c0028378: f04a sd s2,32(sp) + c002837a: e852 sd s4,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29245 + if (local_name != JS_ATOM_default) { + c002837c: 4759 li a4,22 + c002837e: 842e mv s0,a1 + c0028380: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29253 var_idx = add_closure_var(ctx, s->cur_func, is_local, FALSE, - c00281b2: 752c ld a1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29237 + c0028382: 752c ld a1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29245 if (local_name != JS_ATOM_default) { - c00281b4: 00e60963 beq a2,a4,c00281c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29238 + c0028384: 00e60963 beq a2,a4,c0028396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29246 for (i = 0; i < s->cur_func->closure_var_count; i++) { - c00281b8: 1985a603 lw a2,408(a1) - c00281bc: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29238 (discriminator 1) - c00281be: 0007069b sext.w a3,a4 - c00281c2: 02c6cd63 blt a3,a2,c00281fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29229 + c0028388: 1985a603 lw a2,408(a1) + c002838c: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29246 (discriminator 1) + c002838e: 0007069b sext.w a3,a4 + c0028392: 02c6cd63 blt a3,a2,c00283cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29237 JSContext *ctx = s->ctx; - c00281c6: 00053a03 ld s4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29245 + c0028396: 00053a03 ld s4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29253 var_idx = add_closure_var(ctx, s->cur_func, is_local, FALSE, - c00281ca: e002 sd zero,0(sp) - c00281cc: 4838 lw a4,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29244 + c002839a: e002 sd zero,0(sp) + c002839c: 4838 lw a4,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29252 is_local = (import_name == JS_ATOM__star_); - c00281ce: f8298613 addi a2,s3,-126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29245 + c002839e: f8298613 addi a2,s3,-126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29253 var_idx = add_closure_var(ctx, s->cur_func, is_local, FALSE, - c00281d2: 4885 li a7,1 - c00281d4: 4805 li a6,1 - c00281d6: 4681 li a3,0 - c00281d8: 00163613 seqz a2,a2 - c00281dc: 8552 mv a0,s4 - c00281de: 872fa0ef jal ra,c0022250 - c00281e2: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29248 + c00283a2: 4885 li a7,1 + c00283a4: 4805 li a6,1 + c00283a6: 4681 li a3,0 + c00283a8: 00163613 seqz a2,a2 + c00283ac: 8552 mv a0,s4 + c00283ae: 872fa0ef jal ra,c0022420 + c00283b2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29256 if (var_idx < 0) - c00281e4: 04055163 bgez a0,c0028226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29249 + c00283b4: 04055163 bgez a0,c00283f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29257 return -1; - c00281e8: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29259 -} - c00281ea: 70e2 ld ra,56(sp) - c00281ec: 7442 ld s0,48(sp) - c00281ee: 7902 ld s2,32(sp) - c00281f0: 69e2 ld s3,24(sp) - c00281f2: 6a42 ld s4,16(sp) - c00281f4: 8526 mv a0,s1 - c00281f6: 74a2 ld s1,40(sp) - c00281f8: 6121 addi sp,sp,64 - c00281fa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29239 + c00283b8: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29267 +} + c00283ba: 70e2 ld ra,56(sp) + c00283bc: 7442 ld s0,48(sp) + c00283be: 7902 ld s2,32(sp) + c00283c0: 69e2 ld s3,24(sp) + c00283c2: 6a42 ld s4,16(sp) + c00283c4: 8526 mv a0,s1 + c00283c6: 74a2 ld s1,40(sp) + c00283c8: 6121 addi sp,sp,64 + c00283ca: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29247 if (s->cur_func->closure_var[i].var_name == local_name) - c00281fc: 1a05b683 ld a3,416(a1) - c0028200: 00371813 slli a6,a4,0x3 - c0028204: 0705 addi a4,a4,1 - c0028206: 96c2 add a3,a3,a6 - c0028208: 42d4 lw a3,4(a3) - c002820a: faf69ae3 bne a3,a5,c00281be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29259 -} - c002820e: 7442 ld s0,48(sp) - c0028210: 70e2 ld ra,56(sp) - c0028212: 74a2 ld s1,40(sp) - c0028214: 7902 ld s2,32(sp) - c0028216: 69e2 ld s3,24(sp) - c0028218: 6a42 ld s4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29240 + c00283cc: 1a05b683 ld a3,416(a1) + c00283d0: 00371813 slli a6,a4,0x3 + c00283d4: 0705 addi a4,a4,1 + c00283d6: 96c2 add a3,a3,a6 + c00283d8: 42d4 lw a3,4(a3) + c00283da: faf69ae3 bne a3,a5,c002838e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29267 +} + c00283de: 7442 ld s0,48(sp) + c00283e0: 70e2 ld ra,56(sp) + c00283e2: 74a2 ld s1,40(sp) + c00283e4: 7902 ld s2,32(sp) + c00283e6: 69e2 ld s3,24(sp) + c00283e8: 6a42 ld s4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29248 return js_parse_error(s, "duplicate import binding"); - c002821a: 00037597 auipc a1,0x37 - c002821e: 3f658593 addi a1,a1,1014 # c005f610 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29259 + c00283ea: 00037597 auipc a1,0x37 + c00283ee: 48658593 addi a1,a1,1158 # c005f870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29267 } - c0028222: 6121 addi sp,sp,64 - c0028224: bf9d j c002819a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29250 + c00283f2: 6121 addi sp,sp,64 + c00283f4: bf9d j c002836a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29258 if (js_resize_array(ctx, (void **)&m->import_entries, - c0028226: 4838 lw a4,80(s0) - c0028228: 05440693 addi a3,s0,84 - c002822c: 4631 li a2,12 - c002822e: 2705 addiw a4,a4,1 - c0028230: 04840593 addi a1,s0,72 - c0028234: 8552 mv a0,s4 - c0028236: cdaef0ef jal ra,c0017710 - c002823a: 84aa mv s1,a0 - c002823c: f555 bnez a0,c00281e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29255 + c00283f6: 4838 lw a4,80(s0) + c00283f8: 05440693 addi a3,s0,84 + c00283fc: 4631 li a2,12 + c00283fe: 2705 addiw a4,a4,1 + c0028400: 04840593 addi a1,s0,72 + c0028404: 8552 mv a0,s4 + c0028406: cdaef0ef jal ra,c00178e0 + c002840a: 84aa mv s1,a0 + c002840c: f555 bnez a0,c00283b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29263 mi = &m->import_entries[m->import_entries_count++]; - c002823e: 4838 lw a4,80(s0) - c0028240: 643c ld a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29256 + c002840e: 4838 lw a4,80(s0) + c0028410: 643c ld a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29264 mi->import_name = JS_DupAtom(ctx, import_name); - c0028242: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29255 + c0028412: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29263 mi = &m->import_entries[m->import_entries_count++]; - c0028244: 0017069b addiw a3,a4,1 - c0028248: c834 sw a3,80(s0) - c002824a: 4431 li s0,12 - c002824c: 02870433 mul s0,a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29256 + c0028414: 0017069b addiw a3,a4,1 + c0028418: c834 sw a3,80(s0) + c002841a: 4431 li s0,12 + c002841c: 02870433 mul s0,a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29264 mi->import_name = JS_DupAtom(ctx, import_name); - c0028250: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29255 + c0028420: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29263 mi = &m->import_entries[m->import_entries_count++]; - c0028252: 943e add s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29256 + c0028422: 943e add s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29264 mi->import_name = JS_DupAtom(ctx, import_name); - c0028254: a76df0ef jal ra,c00074ca - c0028258: c048 sw a0,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29257 + c0028424: 994df0ef jal ra,c00075b8 + c0028428: c048 sw a0,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29265 mi->var_idx = var_idx; - c002825a: 01242023 sw s2,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29258 + c002842a: 01242023 sw s2,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29266 return 0; - c002825e: b771 j c00281ea + c002842e: b771 j c00283ba -00000000c0028260 : +00000000c0028430 : js_parse_destructuring_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23931 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23939 static JSAtom js_parse_destructuring_var(JSParseState *s, int tok, int is_arg) - c0028260: 1101 addi sp,sp,-32 - c0028262: e822 sd s0,16(sp) - c0028264: ec06 sd ra,24(sp) - c0028266: e426 sd s1,8(sp) - c0028268: e04a sd s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23935 + c0028430: 1101 addi sp,sp,-32 + c0028432: e822 sd s0,16(sp) + c0028434: ec06 sd ra,24(sp) + c0028436: e426 sd s1,8(sp) + c0028438: e04a sd s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23943 if (!(s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved) - c002826a: 4d18 lw a4,24(a0) - c002826c: f8300793 li a5,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23931 + c002843a: 4d18 lw a4,24(a0) + c002843c: f8300793 li a5,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23939 static JSAtom js_parse_destructuring_var(JSParseState *s, int tok, int is_arg) - c0028270: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23935 + c0028440: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23943 if (!(s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved) - c0028272: 02f71363 bne a4,a5,c0028298 - c0028276: 591c lw a5,48(a0) - c0028278: e385 bnez a5,c0028298 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23936 + c0028442: 02f71363 bne a4,a5,c0028468 + c0028446: 591c lw a5,48(a0) + c0028448: e385 bnez a5,c0028468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23944 || ((s->cur_func->js_mode & JS_MODE_STRICT) && - c002827a: 753c ld a5,104(a0) - c002827c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23937 + c002844a: 753c ld a5,104(a0) + c002844c: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23945 (s->token.u.ident.atom == JS_ATOM_eval || s->token.u.ident.atom == JS_ATOM_arguments))) { - c002827e: 550c lw a1,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23936 + c002844e: 550c lw a1,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23944 || ((s->cur_func->js_mode & JS_MODE_STRICT) && - c0028280: 0867c783 lbu a5,134(a5) - c0028284: 8b85 andi a5,a5,1 - c0028286: cb85 beqz a5,c00282b6 - c0028288: 03b00793 li a5,59 - c002828c: 00f58663 beq a1,a5,c0028298 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23937 + c0028450: 0867c783 lbu a5,134(a5) + c0028454: 8b85 andi a5,a5,1 + c0028456: cb85 beqz a5,c0028486 + c0028458: 03b00793 li a5,59 + c002845c: 00f58663 beq a1,a5,c0028468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23945 (s->token.u.ident.atom == JS_ATOM_eval || s->token.u.ident.atom == JS_ATOM_arguments))) { - c0028290: 04e00793 li a5,78 - c0028294: 02f59163 bne a1,a5,c00282b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23938 + c0028460: 04e00793 li a5,78 + c0028464: 02f59163 bne a1,a5,c0028486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23946 js_parse_error(s, "invalid destructuring target"); - c0028298: 00037597 auipc a1,0x37 - c002829c: 0e058593 addi a1,a1,224 # c005f378 - c00282a0: 8522 mv a0,s0 - c00282a2: 816fe0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23950 + c0028468: 00037597 auipc a1,0x37 + c002846c: 17058593 addi a1,a1,368 # c005f5d8 + c0028470: 8522 mv a0,s0 + c0028472: 816fe0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23958 return JS_ATOM_NULL; - c00282a6: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23951 -} - c00282a8: 60e2 ld ra,24(sp) - c00282aa: 6442 ld s0,16(sp) - c00282ac: 6902 ld s2,0(sp) - c00282ae: 8526 mv a0,s1 - c00282b0: 64a2 ld s1,8(sp) - c00282b2: 6105 addi sp,sp,32 - c00282b4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23941 + c0028476: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23959 +} + c0028478: 60e2 ld ra,24(sp) + c002847a: 6442 ld s0,16(sp) + c002847c: 6902 ld s2,0(sp) + c002847e: 8526 mv a0,s1 + c0028480: 64a2 ld s1,8(sp) + c0028482: 6105 addi sp,sp,32 + c0028484: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23949 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c00282b6: 6008 ld a0,0(s0) - c00282b8: a12df0ef jal ra,c00074ca - c00282bc: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23942 + c0028486: 6008 ld a0,0(s0) + c0028488: 930df0ef jal ra,c00075b8 + c002848c: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23950 if (is_arg && js_parse_check_duplicate_parameter(s, name)) - c00282c0: 00091b63 bnez s2,c00282d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23944 + c0028490: 00091b63 bnez s2,c00284a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23952 if (next_token(s)) - c00282c4: 8522 mv a0,s0 - c00282c6: 8d1fe0ef jal ra,c0026b96 - c00282ca: dd79 beqz a0,c00282a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23949 + c0028494: 8522 mv a0,s0 + c0028496: 8d1fe0ef jal ra,c0026d66 + c002849a: dd79 beqz a0,c0028478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23957 JS_FreeAtom(s->ctx, name); - c00282cc: 6008 ld a0,0(s0) - c00282ce: 85a6 mv a1,s1 - c00282d0: a3cdf0ef jal ra,c000750c - c00282d4: bfc9 j c00282a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23942 + c002849c: 6008 ld a0,0(s0) + c002849e: 85a6 mv a1,s1 + c00284a0: 95adf0ef jal ra,c00075fa + c00284a4: bfc9 j c0028476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23950 if (is_arg && js_parse_check_duplicate_parameter(s, name)) - c00282d6: 85a6 mv a1,s1 - c00282d8: 8522 mv a0,s0 - c00282da: e50ff0ef jal ra,c002792a - c00282de: d17d beqz a0,c00282c4 - c00282e0: b7f5 j c00282cc + c00284a6: 85a6 mv a1,s1 + c00284a8: 8522 mv a0,s0 + c00284aa: e50ff0ef jal ra,c0027afa + c00284ae: d17d beqz a0,c0028494 + c00284b0: b7f5 j c002849c -00000000c00282e2 : +00000000c00284b2 : js_parse_expect(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20213 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20221 if (s->token.val != tok) { - c00282e2: 4d1c lw a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20212 + c00284b2: 4d1c lw a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20220 { - c00282e4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20213 + c00284b4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20221 if (s->token.val != tok) { - c00282e6: 00b78863 beq a5,a1,c00282f6 + c00284b6: 00b78863 beq a5,a1,c00284c6 json_parse_expect(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44943 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44951 return js_parse_error(s, "expecting '%c'", tok); - c00282ea: 00037597 auipc a1,0x37 - c00282ee: cd658593 addi a1,a1,-810 # c005efc0 - c00282f2: fc7fd06f j c00262b8 + c00284ba: 00037597 auipc a1,0x37 + c00284be: d6658593 addi a1,a1,-666 # c005f220 + c00284c2: fc7fd06f j c0026488 js_parse_expect(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20225 return next_token(s); - c00282f6: 8a1fe06f j c0026b96 + c00284c6: 8a1fe06f j c0026d66 -00000000c00282fa : +00000000c00284ca : js_regexp_constructor_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43476 { - c00282fa: 7119 addi sp,sp,-128 - c00282fc: f4a6 sd s1,104(sp) - c00282fe: e03e sd a5,0(sp) - c0028300: e442 sd a6,8(sp) - c0028302: fc86 sd ra,120(sp) - c0028304: f8a2 sd s0,112(sp) - c0028306: f0ca sd s2,96(sp) - c0028308: e836 sd a3,16(sp) - c002830a: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43474 + c00284ca: 7119 addi sp,sp,-128 + c00284cc: f4a6 sd s1,104(sp) + c00284ce: e03e sd a5,0(sp) + c00284d0: e442 sd a6,8(sp) + c00284d2: fc86 sd ra,120(sp) + c00284d4: f8a2 sd s0,112(sp) + c00284d6: f0ca sd s2,96(sp) + c00284d8: e836 sd a3,16(sp) + c00284da: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43482 if (JS_VALUE_GET_TAG(bc) != JS_TAG_STRING || - c002830c: 2801 sext.w a6,a6 - c002830e: 57e5 li a5,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43468 + c00284dc: 2801 sext.w a6,a6 + c00284de: 57e5 li a5,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43476 { - c0028310: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43474 + c00284e0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43482 if (JS_VALUE_GET_TAG(bc) != JS_TAG_STRING || - c0028312: 00f81563 bne a6,a5,c002831c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43474 (discriminator 1) - c0028316: 2701 sext.w a4,a4 - c0028318: 03070e63 beq a4,a6,c0028354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43476 + c00284e2: 00f81563 bne a6,a5,c00284ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43482 (discriminator 1) + c00284e6: 2701 sext.w a4,a4 + c00284e8: 03070e63 beq a4,a6,c0028524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43484 JS_ThrowTypeError(ctx, "string expected"); - c002831c: 00037597 auipc a1,0x37 - c0028320: 2cc58593 addi a1,a1,716 # c005f5e8 - c0028324: 8526 mv a0,s1 - c0028326: 8d0eb0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43478 + c00284ec: 00037597 auipc a1,0x37 + c00284f0: 35c58593 addi a1,a1,860 # c005f848 + c00284f4: 8526 mv a0,s1 + c00284f6: fefea0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43486 JS_FreeValue(ctx, bc); - c002832a: 6582 ld a1,0(sp) - c002832c: 6622 ld a2,8(sp) - c002832e: 8526 mv a0,s1 - c0028330: 809df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43479 + c00284fa: 6582 ld a1,0(sp) + c00284fc: 6622 ld a2,8(sp) + c00284fe: 8526 mv a0,s1 + c0028500: f26df0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43487 JS_FreeValue(ctx, pattern); - c0028334: 65c2 ld a1,16(sp) - c0028336: 6662 ld a2,24(sp) - c0028338: 8526 mv a0,s1 - c002833a: ffedf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43480 + c0028504: 65c2 ld a1,16(sp) + c0028506: 6662 ld a2,24(sp) + c0028508: 8526 mv a0,s1 + c002850a: f1cdf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43488 return JS_EXCEPTION; - c002833e: 4799 li a5,6 - c0028340: e082 sd zero,64(sp) - c0028342: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43493 (discriminator 1) -} - c0028344: 70e6 ld ra,120(sp) - c0028346: 7446 ld s0,112(sp) - c0028348: 6506 ld a0,64(sp) - c002834a: 65a6 ld a1,72(sp) - c002834c: 74a6 ld s1,104(sp) - c002834e: 7906 ld s2,96(sp) - c0028350: 6109 addi sp,sp,128 - c0028352: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43483 + c002850e: 4799 li a5,6 + c0028510: e082 sd zero,64(sp) + c0028512: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43501 (discriminator 1) +} + c0028514: 70e6 ld ra,120(sp) + c0028516: 7446 ld s0,112(sp) + c0028518: 6506 ld a0,64(sp) + c002851a: 65a6 ld a1,72(sp) + c002851c: 74a6 ld s1,104(sp) + c002851e: 7906 ld s2,96(sp) + c0028520: 6109 addi sp,sp,128 + c0028522: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43491 obj = js_create_from_ctor(ctx, ctor, JS_CLASS_REGEXP); - c0028354: 46c9 li a3,18 - c0028356: e94ee0ef jal ra,c00169ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43484 + c0028524: 46c9 li a3,18 + c0028526: e94ee0ef jal ra,c0016bba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43492 if (JS_IsException(obj)) - c002835a: 0005871b sext.w a4,a1 - c002835e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43483 + c002852a: 0005871b sext.w a4,a1 + c002852e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43491 obj = js_create_from_ctor(ctx, ctor, JS_CLASS_REGEXP); - c0028360: 842a mv s0,a0 - c0028362: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43484 + c0028530: 842a mv s0,a0 + c0028532: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43492 if (JS_IsException(obj)) - c0028364: fcf703e3 beq a4,a5,c002832a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43488 + c0028534: fcf703e3 beq a4,a5,c00284fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43496 re->pattern = JS_VALUE_GET_STRING(pattern); - c0028368: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43490 + c0028538: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43498 JS_DefinePropertyValue(ctx, obj, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0), - c002836a: 85aa mv a1,a0 - c002836c: 4809 li a6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43488 + c002853a: 85aa mv a1,a0 + c002853c: 4809 li a6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43496 re->pattern = JS_VALUE_GET_STRING(pattern); - c002836e: f91c sd a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43489 + c002853e: f91c sd a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 re->bytecode = JS_VALUE_GET_STRING(bc); - c0028370: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43490 + c0028540: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43498 JS_DefinePropertyValue(ctx, obj, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0), - c0028372: 4701 li a4,0 - c0028374: 05600693 li a3,86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43489 + c0028542: 4701 li a4,0 + c0028544: 05600693 li a3,86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 re->bytecode = JS_VALUE_GET_STRING(bc); - c0028378: fd1c sd a5,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43490 + c0028548: fd1c sd a5,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43498 JS_DefinePropertyValue(ctx, obj, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0), - c002837a: 864a mv a2,s2 - c002837c: 4781 li a5,0 - c002837e: 8526 mv a0,s1 - c0028380: c37ea0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43492 + c002854a: 864a mv a2,s2 + c002854c: 4781 li a5,0 + c002854e: 8526 mv a0,s1 + c0028550: b55ea0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43500 return obj; - c0028384: e0a2 sd s0,64(sp) - c0028386: e4ca sd s2,72(sp) - c0028388: bf75 j c0028344 + c0028554: e0a2 sd s0,64(sp) + c0028556: e4ca sd s2,72(sp) + c0028558: bf75 j c0028514 -00000000c002838a : +00000000c002855a : js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43525 -{ - c002838a: 712d addi sp,sp,-288 - c002838c: fdce sd s3,248(sp) - c002838e: f9d2 sd s4,240(sp) - c0028390: ee06 sd ra,280(sp) - c0028392: ea22 sd s0,272(sp) - c0028394: e626 sd s1,264(sp) - c0028396: e24a sd s2,256(sp) - c0028398: f5d6 sd s5,232(sp) - c002839a: f1da sd s6,224(sp) - c002839c: edde sd s7,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43533 +{ + c002855a: 712d addi sp,sp,-288 + c002855c: fdce sd s3,248(sp) + c002855e: f9d2 sd s4,240(sp) + c0028560: ee06 sd ra,280(sp) + c0028562: ea22 sd s0,272(sp) + c0028564: e626 sd s1,264(sp) + c0028566: e24a sd s2,256(sp) + c0028568: f5d6 sd s5,232(sp) + c002856a: f1da sd s6,224(sp) + c002856c: edde sd s7,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43539 pat = argv[0]; - c002839e: 00073a83 ld s5,0(a4) # ffff000 <__clzdi2-0xb0001000> - c00283a2: 00873b03 ld s6,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43532 + c002856e: 00073a83 ld s5,0(a4) # ffff000 <__clzdi2-0xb0001000> + c0028572: 00873b03 ld s6,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43540 flags1 = argv[1]; - c00283a6: 6b1c ld a5,16(a4) - c00283a8: 01873903 ld s2,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43525 -{ - c00283ac: e82e sd a1,16(sp) - c00283ae: ec32 sd a2,24(sp) - c00283b0: 8a32 mv s4,a2 + c0028576: 6b1c ld a5,16(a4) + c0028578: 01873903 ld s2,24(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43533 +{ + c002857c: e82e sd a1,16(sp) + c002857e: ec32 sd a2,24(sp) + c0028580: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43541 pat_is_regexp = js_is_regexp(ctx, pat); - c00283b2: 85d6 mv a1,s5 - c00283b4: 865a mv a2,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43525 + c0028582: 85d6 mv a1,s5 + c0028584: 865a mv a2,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43533 { - c00283b6: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43531 + c0028586: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43539 pat = argv[0]; - c00283b8: f0d6 sd s5,96(sp) - c00283ba: f4da sd s6,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43532 + c0028588: f0d6 sd s5,96(sp) + c002858a: f4da sd s6,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43540 flags1 = argv[1]; - c00283bc: f8be sd a5,112(sp) - c00283be: fcca sd s2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43533 + c002858c: f8be sd a5,112(sp) + c002858e: fcca sd s2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43541 pat_is_regexp = js_is_regexp(ctx, pat); - c00283c0: 869e90ef jal ra,c0011c28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43534 + c0028590: f86e90ef jal ra,c0011d16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43542 if (pat_is_regexp < 0) - c00283c4: 00055663 bgez a0,c00283d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43598 + c0028594: 00055663 bgez a0,c00285a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43606 return JS_EXCEPTION; - c00283c8: 4799 li a5,6 - c00283ca: f102 sd zero,160(sp) - c00283cc: f53e sd a5,168(sp) - c00283ce: a8b1 j c002842a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43536 + c0028598: 4799 li a5,6 + c002859a: f102 sd zero,160(sp) + c002859c: f53e sd a5,168(sp) + c002859e: a8b1 j c00285fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43544 if (JS_IsUndefined(new_target)) { - c00283d0: 000a079b sext.w a5,s4 - c00283d4: 470d li a4,3 - c00283d6: 842a mv s0,a0 - c00283d8: 0ae79163 bne a5,a4,c002847a + c00285a0: 000a079b sext.w a5,s4 + c00285a4: 470d li a4,3 + c00285a6: 842a mv s0,a0 + c00285a8: 0ae79163 bne a5,a4,c002864a JS_GetActiveFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15635 return ctx->rt->current_stack_frame->cur_func; - c00283dc: 0189b703 ld a4,24(s3) - c00283e0: 7f74 ld a3,248(a4) - c00283e2: 6698 ld a4,8(a3) - c00283e4: 0106ba03 ld s4,16(a3) - c00283e8: e1ba sd a4,192(sp) - c00283ea: e5d2 sd s4,200(sp) - c00283ec: e83a sd a4,16(sp) - c00283ee: ec52 sd s4,24(sp) + c00285ac: 0189b703 ld a4,24(s3) + c00285b0: 7f74 ld a3,248(a4) + c00285b2: 6698 ld a4,8(a3) + c00285b4: 0106ba03 ld s4,16(a3) + c00285b8: e1ba sd a4,192(sp) + c00285ba: e5d2 sd s4,200(sp) + c00285bc: e83a sd a4,16(sp) + c00285be: ec52 sd s4,24(sp) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43539 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43547 if (pat_is_regexp && JS_IsUndefined(flags1)) { - c00283f0: c549 beqz a0,c002847a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43539 (discriminator 1) - c00283f2: 0009071b sext.w a4,s2 - c00283f6: 08f71263 bne a4,a5,c002847a + c00285c0: c549 beqz a0,c002864a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43547 (discriminator 1) + c00285c2: 0009071b sext.w a4,s2 + c00285c6: 08f71263 bne a4,a5,c002864a JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00283fa: 8756 mv a4,s5 - c00283fc: 87da mv a5,s6 - c00283fe: 865a mv a2,s6 - c0028400: 4801 li a6,0 - c0028402: 03d00693 li a3,61 - c0028406: 85d6 mv a1,s5 - c0028408: 854e mv a0,s3 - c002840a: f956 sd s5,176(sp) - c002840c: fd5a sd s6,184(sp) - c002840e: c34e90ef jal ra,c0011842 - c0028412: e12a sd a0,128(sp) - c0028414: e52e sd a1,136(sp) - c0028416: e92a sd a0,144(sp) - c0028418: ed2e sd a1,152(sp) + c00285ca: 8756 mv a4,s5 + c00285cc: 87da mv a5,s6 + c00285ce: 865a mv a2,s6 + c00285d0: 4801 li a6,0 + c00285d2: 03d00693 li a3,61 + c00285d6: 85d6 mv a1,s5 + c00285d8: 854e mv a0,s3 + c00285da: f956 sd s5,176(sp) + c00285dc: fd5a sd s6,184(sp) + c00285de: b52e90ef jal ra,c0011930 + c00285e2: e12a sd a0,128(sp) + c00285e4: e52e sd a1,136(sp) + c00285e6: e92a sd a0,144(sp) + c00285e8: ed2e sd a1,152(sp) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43543 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43551 if (JS_IsException(ctor)) - c002841a: 0005871b sext.w a4,a1 - c002841e: 4799 li a5,6 + c00285ea: 0005871b sext.w a4,a1 + c00285ee: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0028420: 862e mv a2,a1 + c00285f0: 862e mv a2,a1 js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43543 - c0028422: 02f71163 bne a4,a5,c0028444 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43544 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43551 + c00285f2: 02f71163 bne a4,a5,c0028614 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43552 return ctor; - c0028426: f12a sd a0,160(sp) - c0028428: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 (discriminator 1) -} - c002842a: 60f2 ld ra,280(sp) - c002842c: 6452 ld s0,272(sp) - c002842e: 750a ld a0,160(sp) - c0028430: 75aa ld a1,168(sp) - c0028432: 64b2 ld s1,264(sp) - c0028434: 6912 ld s2,256(sp) - c0028436: 79ee ld s3,248(sp) - c0028438: 7a4e ld s4,240(sp) - c002843a: 7aae ld s5,232(sp) - c002843c: 7b0e ld s6,224(sp) - c002843e: 6bee ld s7,216(sp) - c0028440: 6115 addi sp,sp,288 - c0028442: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43545 + c00285f6: f12a sd a0,160(sp) + c00285f8: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 (discriminator 1) +} + c00285fa: 60f2 ld ra,280(sp) + c00285fc: 6452 ld s0,272(sp) + c00285fe: 750a ld a0,160(sp) + c0028600: 75aa ld a1,168(sp) + c0028602: 64b2 ld s1,264(sp) + c0028604: 6912 ld s2,256(sp) + c0028606: 79ee ld s3,248(sp) + c0028608: 7a4e ld s4,240(sp) + c002860a: 7aae ld s5,232(sp) + c002860c: 7b0e ld s6,224(sp) + c002860e: 6bee ld s7,216(sp) + c0028610: 6115 addi sp,sp,288 + c0028612: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43553 res = js_same_value(ctx, ctor, new_target); - c0028444: 66c2 ld a3,16(sp) - c0028446: 6762 ld a4,24(sp) - c0028448: 85aa mv a1,a0 - c002844a: 854e mv a0,s3 - c002844c: 877df0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43546 + c0028614: 66c2 ld a3,16(sp) + c0028616: 6762 ld a4,24(sp) + c0028618: 85aa mv a1,a0 + c002861a: 854e mv a0,s3 + c002861c: f94df0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43554 JS_FreeValue(ctx, ctor); - c0028450: 65ca ld a1,144(sp) - c0028452: 666a ld a2,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43545 + c0028620: 65ca ld a1,144(sp) + c0028622: 666a ld a2,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43553 res = js_same_value(ctx, ctor, new_target); - c0028454: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43546 + c0028624: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43554 JS_FreeValue(ctx, ctor); - c0028456: 854e mv a0,s3 - c0028458: ee0df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43547 + c0028626: 854e mv a0,s3 + c0028628: dfedf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43555 if (res) - c002845c: cc99 beqz s1,c002847a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 + c002862c: cc99 beqz s1,c002864a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 } - c002845e: 6452 ld s0,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43548 + c002862e: 6452 ld s0,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43556 return JS_DupValue(ctx, pat); - c0028460: 7506 ld a0,96(sp) - c0028462: 75a6 ld a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 -} - c0028464: 60f2 ld ra,280(sp) - c0028466: 64b2 ld s1,264(sp) - c0028468: 6912 ld s2,256(sp) - c002846a: 79ee ld s3,248(sp) - c002846c: 7a4e ld s4,240(sp) - c002846e: 7aae ld s5,232(sp) - c0028470: 7b0e ld s6,224(sp) - c0028472: 6bee ld s7,216(sp) - c0028474: 6115 addi sp,sp,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43548 + c0028630: 7506 ld a0,96(sp) + c0028632: 75a6 ld a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 +} + c0028634: 60f2 ld ra,280(sp) + c0028636: 64b2 ld s1,264(sp) + c0028638: 6912 ld s2,256(sp) + c002863a: 79ee ld s3,248(sp) + c002863c: 7a4e ld s4,240(sp) + c002863e: 7aae ld s5,232(sp) + c0028640: 7b0e ld s6,224(sp) + c0028642: 6bee ld s7,216(sp) + c0028644: 6115 addi sp,sp,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43556 return JS_DupValue(ctx, pat); - c0028476: 9f8de06f j c000666e + c0028646: 916de06f j c000675c js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c002847a: 000b079b sext.w a5,s6 - c002847e: 577d li a4,-1 - c0028480: 06e79963 bne a5,a4,c00284f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 + c002864a: 000b079b sext.w a5,s6 + c002864e: 577d li a4,-1 + c0028650: 06e79963 bne a5,a4,c00286c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0028484: 006ad703 lhu a4,6(s5) - c0028488: 47c9 li a5,18 - c002848a: 06f71463 bne a4,a5,c00284f2 + c0028654: 006ad703 lhu a4,6(s5) + c0028658: 47c9 li a5,18 + c002865a: 06f71463 bne a4,a5,c00286c2 js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43561 pattern = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c002848e: 030ab483 ld s1,48(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43554 + c002865e: 030ab483 ld s1,48(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43562 if (JS_IsUndefined(flags1)) { - c0028492: 0009071b sext.w a4,s2 + c0028662: 0009071b sext.w a4,s2 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0028496: 409c lw a5,0(s1) - c0028498: 2785 addiw a5,a5,1 - c002849a: c09c sw a5,0(s1) + c0028666: 409c lw a5,0(s1) + c0028668: 2785 addiw a5,a5,1 + c002866a: c09c sw a5,0(s1) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43554 - c002849c: 478d li a5,3 - c002849e: 02f71c63 bne a4,a5,c00284d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43555 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43562 + c002866c: 478d li a5,3 + c002866e: 02f71c63 bne a4,a5,c00286a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43563 bc = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->bytecode)); - c00284a2: 038ab783 ld a5,56(s5) + c0028672: 038ab783 ld a5,56(s5) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00284a6: 5865 li a6,-7 + c0028676: 5865 li a6,-7 js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43561 pattern = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c00284a8: 5465 li s0,-7 + c0028678: 5465 li s0,-7 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00284aa: 4398 lw a4,0(a5) - c00284ac: e0be sd a5,64(sp) - c00284ae: 2705 addiw a4,a4,1 - c00284b0: c398 sw a4,0(a5) + c002867a: 4398 lw a4,0(a5) + c002867c: e0be sd a5,64(sp) + c002867e: 2705 addiw a4,a4,1 + c0028680: c398 sw a4,0(a5) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43602 return js_regexp_constructor_internal(ctx, new_target, pattern, bc); - c00284b2: 8722 mv a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 + c0028682: 8722 mv a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 } - c00284b4: 6452 ld s0,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43594 + c0028684: 6452 ld s0,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43602 return js_regexp_constructor_internal(ctx, new_target, pattern, bc); - c00284b6: 6786 ld a5,64(sp) - c00284b8: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 -} - c00284ba: 60f2 ld ra,280(sp) - c00284bc: 6912 ld s2,256(sp) - c00284be: 7aae ld s5,232(sp) - c00284c0: 7b0e ld s6,224(sp) - c00284c2: 6bee ld s7,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43594 + c0028686: 6786 ld a5,64(sp) + c0028688: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 +} + c002868a: 60f2 ld ra,280(sp) + c002868c: 6912 ld s2,256(sp) + c002868e: 7aae ld s5,232(sp) + c0028690: 7b0e ld s6,224(sp) + c0028692: 6bee ld s7,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43602 return js_regexp_constructor_internal(ctx, new_target, pattern, bc); - c00284c4: 86a6 mv a3,s1 - c00284c6: 8652 mv a2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 + c0028694: 86a6 mv a3,s1 + c0028696: 8652 mv a2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 } - c00284c8: 64b2 ld s1,264(sp) - c00284ca: 7a4e ld s4,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43594 + c0028698: 64b2 ld s1,264(sp) + c002869a: 7a4e ld s4,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43602 return js_regexp_constructor_internal(ctx, new_target, pattern, bc); - c00284cc: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43599 + c002869c: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43607 } - c00284ce: 79ee ld s3,248(sp) - c00284d0: 6115 addi sp,sp,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43594 + c002869e: 79ee ld s3,248(sp) + c00286a0: 6115 addi sp,sp,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43602 return js_regexp_constructor_internal(ctx, new_target, pattern, bc); - c00284d2: e29ff06f j c00282fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43558 + c00286a2: e29ff06f j c00284ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43566 flags = JS_ToString(ctx, flags1); - c00284d6: 75c6 ld a1,112(sp) - c00284d8: 7666 ld a2,120(sp) - c00284da: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43553 + c00286a6: 75c6 ld a1,112(sp) + c00286a8: 7666 ld a2,120(sp) + c00286aa: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43561 pattern = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c00284dc: 5465 li s0,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43558 + c00286ac: 5465 li s0,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43566 flags = JS_ToString(ctx, flags1); - c00284de: af8f20ef jal ra,c001a7d6 - c00284e2: f82a sd a0,48(sp) - c00284e4: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43559 + c00286ae: af8f20ef jal ra,c001a9a6 + c00286b2: f82a sd a0,48(sp) + c00286b4: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43567 if (JS_IsException(flags)) - c00284e6: 0005871b sext.w a4,a1 - c00284ea: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43585 + c00286b6: 0005871b sext.w a4,a1 + c00286ba: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43593 if (JS_IsException(pattern)) - c00284ec: 0af71663 bne a4,a5,c0028598 - c00284f0: a08d j c0028552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43563 + c00286bc: 0af71663 bne a4,a5,c0028768 + c00286c0: a08d j c0028722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43571 flags = JS_UNDEFINED; - c00284f2: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43564 + c00286c2: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43572 if (pat_is_regexp) { - c00284f4: c835 beqz s0,c0028568 + c00286c4: c835 beqz s0,c0028738 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00284f6: 87da mv a5,s6 - c00284f8: 4801 li a6,0 - c00284fa: 8756 mv a4,s5 - c00284fc: 06d00693 li a3,109 - c0028500: 85d6 mv a1,s5 - c0028502: 865a mv a2,s6 - c0028504: 854e mv a0,s3 - c0028506: f956 sd s5,176(sp) - c0028508: fd5a sd s6,184(sp) - c002850a: b38e90ef jal ra,c0011842 - c002850e: e92a sd a0,144(sp) - c0028510: ed2e sd a1,152(sp) + c00286c6: 87da mv a5,s6 + c00286c8: 4801 li a6,0 + c00286ca: 8756 mv a4,s5 + c00286cc: 06d00693 li a3,109 + c00286d0: 85d6 mv a1,s5 + c00286d2: 865a mv a2,s6 + c00286d4: 854e mv a0,s3 + c00286d6: f956 sd s5,176(sp) + c00286d8: fd5a sd s6,184(sp) + c00286da: a56e90ef jal ra,c0011930 + c00286de: e92a sd a0,144(sp) + c00286e0: ed2e sd a1,152(sp) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43574 if (JS_IsException(pattern)) - c0028512: 0005879b sext.w a5,a1 - c0028516: 4b99 li s7,6 + c00286e2: 0005879b sext.w a5,a1 + c00286e6: 4b99 li s7,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0028518: 842e mv s0,a1 - c002851a: 84aa mv s1,a0 + c00286e8: 842e mv s0,a1 + c00286ea: 84aa mv s1,a0 js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43566 - c002851c: 0d778663 beq a5,s7,c00285e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43574 + c00286ec: 0d778663 beq a5,s7,c00287b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43576 if (JS_IsUndefined(flags1)) { - c0028520: 0009071b sext.w a4,s2 - c0028524: 478d li a5,3 - c0028526: 04f71763 bne a4,a5,c0028574 + c00286f0: 0009071b sext.w a4,s2 + c00286f4: 478d li a5,3 + c00286f6: 04f71763 bne a4,a5,c0028744 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c002852a: 87da mv a5,s6 - c002852c: 4801 li a6,0 - c002852e: 8756 mv a4,s5 - c0028530: 06e00693 li a3,110 - c0028534: 85d6 mv a1,s5 - c0028536: 865a mv a2,s6 - c0028538: 854e mv a0,s3 - c002853a: f156 sd s5,160(sp) - c002853c: f55a sd s6,168(sp) - c002853e: b04e90ef jal ra,c0011842 - c0028542: f92a sd a0,176(sp) - c0028544: fd2e sd a1,184(sp) - c0028546: f82a sd a0,48(sp) + c00286fa: 87da mv a5,s6 + c00286fc: 4801 li a6,0 + c00286fe: 8756 mv a4,s5 + c0028700: 06e00693 li a3,110 + c0028704: 85d6 mv a1,s5 + c0028706: 865a mv a2,s6 + c0028708: 854e mv a0,s3 + c002870a: f156 sd s5,160(sp) + c002870c: f55a sd s6,168(sp) + c002870e: a22e90ef jal ra,c0011930 + c0028712: f92a sd a0,176(sp) + c0028714: fd2e sd a1,184(sp) + c0028716: f82a sd a0,48(sp) js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43578 if (JS_IsException(flags)) - c0028548: 0005879b sext.w a5,a1 + c0028718: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c002854c: 892e mv s2,a1 + c002871c: 892e mv s2,a1 js_regexp_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43570 - c002854e: 03779963 bne a5,s7,c0028580 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43578 + c002871e: 03779963 bne a5,s7,c0028750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43604 JS_FreeValue(ctx, pattern); - c0028552: 85a6 mv a1,s1 - c0028554: 8622 mv a2,s0 - c0028556: 854e mv a0,s3 - c0028558: de0df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43597 + c0028722: 85a6 mv a1,s1 + c0028724: 8622 mv a2,s0 + c0028726: 854e mv a0,s3 + c0028728: cfedf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43605 JS_FreeValue(ctx, flags); - c002855c: 75c2 ld a1,48(sp) - c002855e: 864a mv a2,s2 - c0028560: 854e mv a0,s3 - c0028562: dd6df0ef jal ra,c0007b38 - c0028566: b58d j c00283c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43576 + c002872c: 75c2 ld a1,48(sp) + c002872e: 864a mv a2,s2 + c0028730: 854e mv a0,s3 + c0028732: cf4df0ef jal ra,c0007c26 + c0028736: b58d j c0028598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43584 pattern = JS_DupValue(ctx, pat); - c0028568: 7506 ld a0,96(sp) - c002856a: 75a6 ld a1,104(sp) - c002856c: 902de0ef jal ra,c000666e - c0028570: 84aa mv s1,a0 - c0028572: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43577 + c0028738: 7506 ld a0,96(sp) + c002873a: 75a6 ld a1,104(sp) + c002873c: 820de0ef jal ra,c000675c + c0028740: 84aa mv s1,a0 + c0028742: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43585 flags = JS_DupValue(ctx, flags1); - c0028574: 7546 ld a0,112(sp) - c0028576: 75e6 ld a1,120(sp) - c0028578: 8f6de0ef jal ra,c000666e - c002857c: f82a sd a0,48(sp) - c002857e: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43579 + c0028744: 7546 ld a0,112(sp) + c0028746: 75e6 ld a1,120(sp) + c0028748: 814de0ef jal ra,c000675c + c002874c: f82a sd a0,48(sp) + c002874e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43587 if (JS_IsUndefined(pattern)) { - c0028580: 0004079b sext.w a5,s0 - c0028584: 470d li a4,3 - c0028586: 02e79f63 bne a5,a4,c00285c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43580 + c0028750: 0004079b sext.w a5,s0 + c0028754: 470d li a4,3 + c0028756: 02e79f63 bne a5,a4,c0028794 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43588 pattern = JS_AtomToString(ctx, JS_ATOM_empty_string); - c002858a: 02f00593 li a1,47 - c002858e: 854e mv a0,s3 - c0028590: dacf10ef jal ra,c0019b3c - c0028594: 84aa mv s1,a0 - c0028596: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43589 + c002875a: 02f00593 li a1,47 + c002875e: 854e mv a0,s3 + c0028760: dacf10ef jal ra,c0019d0c + c0028764: 84aa mv s1,a0 + c0028766: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43597 bc = js_compile_regexp(ctx, pattern, flags); - c0028598: 76c2 ld a3,48(sp) - c002859a: 874a mv a4,s2 - c002859c: 85a6 mv a1,s1 - c002859e: 8622 mv a2,s0 - c00285a0: 854e mv a0,s3 - c00285a2: fc4a sd s2,56(sp) - c00285a4: 96cf70ef jal ra,c001f710 - c00285a8: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43590 + c0028768: 76c2 ld a3,48(sp) + c002876a: 874a mv a4,s2 + c002876c: 85a6 mv a1,s1 + c002876e: 8622 mv a2,s0 + c0028770: 854e mv a0,s3 + c0028772: fc4a sd s2,56(sp) + c0028774: 96cf70ef jal ra,c001f8e0 + c0028778: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43598 if (JS_IsException(bc)) - c00285aa: 0005871b sext.w a4,a1 - c00285ae: e42e sd a1,8(sp) - c00285b0: 4799 li a5,6 - c00285b2: faf700e3 beq a4,a5,c0028552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43592 + c002877a: 0005871b sext.w a4,a1 + c002877e: e42e sd a1,8(sp) + c0028780: 4799 li a5,6 + c0028782: faf700e3 beq a4,a5,c0028722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43600 JS_FreeValue(ctx, flags); - c00285b6: 75c2 ld a1,48(sp) - c00285b8: 7662 ld a2,56(sp) - c00285ba: 854e mv a0,s3 - c00285bc: d7cdf0ef jal ra,c0007b38 - c00285c0: 6822 ld a6,8(sp) - c00285c2: bdc5 j c00284b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43583 + c0028786: 75c2 ld a1,48(sp) + c0028788: 7662 ld a2,56(sp) + c002878a: 854e mv a0,s3 + c002878c: c9adf0ef jal ra,c0007c26 + c0028790: 6822 ld a6,8(sp) + c0028792: bdc5 j c0028682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43591 pattern = JS_ToString(ctx, val); - c00285c4: 8622 mv a2,s0 - c00285c6: 85a6 mv a1,s1 - c00285c8: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43582 + c0028794: 8622 mv a2,s0 + c0028796: 85a6 mv a1,s1 + c0028798: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43590 val = pattern; - c00285ca: e8a6 sd s1,80(sp) - c00285cc: eca2 sd s0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43583 + c002879a: e8a6 sd s1,80(sp) + c002879c: eca2 sd s0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43591 pattern = JS_ToString(ctx, val); - c00285ce: a08f20ef jal ra,c001a7d6 - c00285d2: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43584 + c002879e: a08f20ef jal ra,c001a9a6 + c00287a2: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43592 JS_FreeValue(ctx, val); - c00285d4: 6666 ld a2,88(sp) - c00285d6: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43583 + c00287a4: 6666 ld a2,88(sp) + c00287a6: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43591 pattern = JS_ToString(ctx, val); - c00285d8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43584 + c00287a8: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43592 JS_FreeValue(ctx, val); - c00285da: 854e mv a0,s3 - c00285dc: d5cdf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43585 + c00287aa: 854e mv a0,s3 + c00287ac: c7adf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43593 if (JS_IsException(pattern)) - c00285e0: 0004071b sext.w a4,s0 - c00285e4: 4799 li a5,6 - c00285e6: b719 j c00284ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43563 + c00287b0: 0004071b sext.w a4,s0 + c00287b4: 4799 li a5,6 + c00287b6: b719 j c00286bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43571 flags = JS_UNDEFINED; - c00285e8: 490d li s2,3 - c00285ea: b7a5 j c0028552 + c00287b8: 490d li s2,3 + c00287ba: b7a5 j c0028722 -00000000c00285ec : +00000000c00287bc : JS_ToObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37049 -{ - c00285ec: 7119 addi sp,sp,-128 - c00285ee: e432 sd a2,8(sp) - c00285f0: 2629 addiw a2,a2,10 - c00285f2: f4a6 sd s1,104(sp) - c00285f4: fc86 sd ra,120(sp) - c00285f6: f8a2 sd s0,112(sp) - c00285f8: f0ca sd s2,96(sp) - c00285fa: e02e sd a1,0(sp) - c00285fc: 0006071b sext.w a4,a2 - c0028600: 47c5 li a5,17 - c0028602: 84aa mv s1,a0 - c0028604: 00e7ee63 bltu a5,a4,c0028620 - c0028608: 02061793 slli a5,a2,0x20 - c002860c: 01e7d613 srli a2,a5,0x1e - c0028610: 00037717 auipc a4,0x37 - c0028614: 01c70713 addi a4,a4,28 # c005f62c - c0028618: 963a add a2,a2,a4 - c002861a: 421c lw a5,0(a2) - c002861c: 97ba add a5,a5,a4 - c002861e: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 -} - c0028620: 7446 ld s0,112(sp) - c0028622: 70e6 ld ra,120(sp) - c0028624: 7906 ld s2,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37057 +{ + c00287bc: 7119 addi sp,sp,-128 + c00287be: e432 sd a2,8(sp) + c00287c0: 2629 addiw a2,a2,10 + c00287c2: f4a6 sd s1,104(sp) + c00287c4: fc86 sd ra,120(sp) + c00287c6: f8a2 sd s0,112(sp) + c00287c8: f0ca sd s2,96(sp) + c00287ca: e02e sd a1,0(sp) + c00287cc: 0006071b sext.w a4,a2 + c00287d0: 47c5 li a5,17 + c00287d2: 84aa mv s1,a0 + c00287d4: 00e7ee63 bltu a5,a4,c00287f0 + c00287d8: 02061793 slli a5,a2,0x20 + c00287dc: 01e7d613 srli a2,a5,0x1e + c00287e0: 00037717 auipc a4,0x37 + c00287e4: 0ac70713 addi a4,a4,172 # c005f88c + c00287e8: 963a add a2,a2,a4 + c00287ea: 421c lw a5,0(a2) + c00287ec: 97ba add a5,a5,a4 + c00287ee: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 +} + c00287f0: 7446 ld s0,112(sp) + c00287f2: 70e6 ld ra,120(sp) + c00287f4: 7906 ld s2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37065 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c0028626: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 + c00287f6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 } - c0028628: 74a6 ld s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37057 + c00287f8: 74a6 ld s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37065 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c002862a: 00036597 auipc a1,0x36 - c002862e: ca658593 addi a1,a1,-858 # c005e2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 + c00287fa: 00036597 auipc a1,0x36 + c00287fe: d3658593 addi a1,a1,-714 # c005e530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 } - c0028632: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37057 + c0028802: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37065 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c0028634: dc3ea06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 + c0028804: ce1ea06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 } - c0028638: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37060 + c0028808: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37068 return JS_DupValue(ctx, val); - c002863a: 6502 ld a0,0(sp) - c002863c: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 -} - c002863e: 70e6 ld ra,120(sp) - c0028640: 74a6 ld s1,104(sp) - c0028642: 7906 ld s2,96(sp) - c0028644: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37060 + c002880a: 6502 ld a0,0(sp) + c002880c: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 +} + c002880e: 70e6 ld ra,120(sp) + c0028810: 74a6 ld s1,104(sp) + c0028812: 7906 ld s2,96(sp) + c0028814: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37068 return JS_DupValue(ctx, val); - c0028646: 828de06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37062 + c0028816: f47dd06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37070 obj = JS_NewObjectClass(ctx, JS_CLASS_BIG_INT); - c002864a: 02100593 li a1,33 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37088 + c002881a: 02100593 li a1,33 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37096 obj = JS_NewObjectClass(ctx, JS_CLASS_SYMBOL); - c002864e: 8526 mv a0,s1 - c0028650: e20ee0ef jal ra,c0016c70 - c0028654: e82a sd a0,16(sp) - c0028656: 842e mv s0,a1 - c0028658: a815 j c002868c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37074 + c002881e: 8526 mv a0,s1 + c0028820: e20ee0ef jal ra,c0016e40 + c0028824: e82a sd a0,16(sp) + c0028826: 842e mv s0,a1 + c0028828: a815 j c002885c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37082 obj = JS_NewObjectClass(ctx, JS_CLASS_NUMBER); - c002865a: 4591 li a1,4 - c002865c: bfcd j c002864e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37079 + c002882a: 4591 li a1,4 + c002882c: bfcd j c002881e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37087 JSString *p1 = JS_VALUE_GET_STRING(val); - c002865e: 6902 ld s2,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37080 + c002882e: 6902 ld s2,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37088 obj = JS_NewObjectClass(ctx, JS_CLASS_STRING); - c0028660: 4595 li a1,5 - c0028662: e0eee0ef jal ra,c0016c70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37081 + c0028830: 4595 li a1,5 + c0028832: e0eee0ef jal ra,c0016e40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37089 JS_DefinePropertyValue(ctx, obj, JS_ATOM_length, JS_NewInt32(ctx, p1->len), 0); - c0028666: 00492783 lw a5,4(s2) + c0028836: 00492783 lw a5,4(s2) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c002866a: e882 sd zero,80(sp) + c002883a: e882 sd zero,80(sp) JS_ToObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37088 obj = JS_NewObjectClass(ctx, JS_CLASS_STRING); - c002866c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37081 + c002883c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37089 JS_DefinePropertyValue(ctx, obj, JS_ATOM_length, JS_NewInt32(ctx, p1->len), 0); - c002866e: 1786 slli a5,a5,0x21 - c0028670: 9385 srli a5,a5,0x21 + c002883e: 1786 slli a5,a5,0x21 + c0028840: 9385 srli a5,a5,0x21 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0028672: c8be sw a5,80(sp) + c0028842: c8be sw a5,80(sp) JS_ToObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37081 - c0028674: 6746 ld a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37089 + c0028844: 6746 ld a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37088 obj = JS_NewObjectClass(ctx, JS_CLASS_STRING); - c0028676: e82a sd a0,16(sp) - c0028678: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37081 + c0028846: e82a sd a0,16(sp) + c0028848: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37089 JS_DefinePropertyValue(ctx, obj, JS_ATOM_length, JS_NewInt32(ctx, p1->len), 0); - c002867a: 4801 li a6,0 - c002867c: 85aa mv a1,a0 - c002867e: 4781 li a5,0 - c0028680: 03000693 li a3,48 - c0028684: 8622 mv a2,s0 - c0028686: 8526 mv a0,s1 - c0028688: 92fea0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37090 + c002884a: 4801 li a6,0 + c002884c: 85aa mv a1,a0 + c002884e: 4781 li a5,0 + c0028850: 03000693 li a3,48 + c0028854: 8622 mv a2,s0 + c0028856: 8526 mv a0,s1 + c0028858: 84dea0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 if (!JS_IsException(obj)) - c002868c: 0004079b sext.w a5,s0 - c0028690: 4719 li a4,6 - c0028692: 00e78d63 beq a5,a4,c00286ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37091 + c002885c: 0004079b sext.w a5,s0 + c0028860: 4719 li a4,6 + c0028862: 00e78d63 beq a5,a4,c002887c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 JS_SetObjectData(ctx, obj, JS_DupValue(ctx, val)); - c0028696: 6502 ld a0,0(sp) - c0028698: 65a2 ld a1,8(sp) - c002869a: fd5dd0ef jal ra,c000666e - c002869e: 872e mv a4,a1 - c00286a0: 65c2 ld a1,16(sp) - c00286a2: 86aa mv a3,a0 - c00286a4: 8622 mv a2,s0 - c00286a6: 8526 mv a0,s1 - c00286a8: 986ec0ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37094 -} - c00286ac: 70e6 ld ra,120(sp) - c00286ae: 85a2 mv a1,s0 - c00286b0: 7446 ld s0,112(sp) - c00286b2: 6542 ld a0,16(sp) - c00286b4: 74a6 ld s1,104(sp) - c00286b6: 7906 ld s2,96(sp) - c00286b8: 6109 addi sp,sp,128 - c00286ba: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37085 + c0028866: 6502 ld a0,0(sp) + c0028868: 65a2 ld a1,8(sp) + c002886a: ef3dd0ef jal ra,c000675c + c002886e: 872e mv a4,a1 + c0028870: 65c2 ld a1,16(sp) + c0028872: 86aa mv a3,a0 + c0028874: 8622 mv a2,s0 + c0028876: 8526 mv a0,s1 + c0028878: 8a4ec0ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37102 +} + c002887c: 70e6 ld ra,120(sp) + c002887e: 85a2 mv a1,s0 + c0028880: 7446 ld s0,112(sp) + c0028882: 6542 ld a0,16(sp) + c0028884: 74a6 ld s1,104(sp) + c0028886: 7906 ld s2,96(sp) + c0028888: 6109 addi sp,sp,128 + c002888a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37093 obj = JS_NewObjectClass(ctx, JS_CLASS_BOOLEAN); - c00286bc: 4599 li a1,6 - c00286be: bf41 j c002864e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37088 + c002888c: 4599 li a1,6 + c002888e: bf41 j c002881e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37096 obj = JS_NewObjectClass(ctx, JS_CLASS_SYMBOL); - c00286c0: 459d li a1,7 - c00286c2: b771 j c002864e + c0028890: 459d li a1,7 + c0028892: b771 j c002881e -00000000c00286c4 : +00000000c0028894 : js_object_get___proto__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38116 { - c00286c4: 715d addi sp,sp,-80 - c00286c6: e0a2 sd s0,64(sp) - c00286c8: e486 sd ra,72(sp) - c00286ca: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38111 + c0028894: 715d addi sp,sp,-80 + c0028896: e0a2 sd s0,64(sp) + c0028898: e486 sd ra,72(sp) + c002889a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38119 val = JS_ToObject(ctx, this_val); - c00286cc: f21ff0ef jal ra,c00285ec - c00286d0: e82a sd a0,16(sp) - c00286d2: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38112 + c002889c: f21ff0ef jal ra,c00287bc + c00288a0: e82a sd a0,16(sp) + c00288a2: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38120 if (JS_IsException(val)) - c00286d4: 0005871b sext.w a4,a1 - c00286d8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38111 + c00288a4: 0005871b sext.w a4,a1 + c00288a8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38119 val = JS_ToObject(ctx, this_val); - c00286da: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38112 + c00288aa: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38120 if (JS_IsException(val)) - c00286dc: 00f71a63 bne a4,a5,c00286f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38113 + c00288ac: 00f71a63 bne a4,a5,c00288c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38121 return val; - c00286e0: f82a sd a0,48(sp) - c00286e2: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38117 -} - c00286e4: 60a6 ld ra,72(sp) - c00286e6: 6406 ld s0,64(sp) - c00286e8: 7542 ld a0,48(sp) - c00286ea: 75e2 ld a1,56(sp) - c00286ec: 6161 addi sp,sp,80 - c00286ee: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38114 + c00288b0: f82a sd a0,48(sp) + c00288b2: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38125 +} + c00288b4: 60a6 ld ra,72(sp) + c00288b6: 6406 ld s0,64(sp) + c00288b8: 7542 ld a0,48(sp) + c00288ba: 75e2 ld a1,56(sp) + c00288bc: 6161 addi sp,sp,80 + c00288be: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38122 ret = JS_GetPrototype(ctx, val); - c00286f0: 85aa mv a1,a0 - c00286f2: 8522 mv a0,s0 - c00286f4: defeb0ef jal ra,c00144e2 - c00286f8: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38115 + c00288c0: 85aa mv a1,a0 + c00288c2: 8522 mv a0,s0 + c00288c4: d0deb0ef jal ra,c00145d0 + c00288c8: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38123 JS_FreeValue(ctx, val); - c00286fa: 6662 ld a2,24(sp) - c00286fc: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38114 + c00288ca: 6662 ld a2,24(sp) + c00288cc: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38122 ret = JS_GetPrototype(ctx, val); - c00286fe: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38115 + c00288ce: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38123 JS_FreeValue(ctx, val); - c0028700: 8522 mv a0,s0 - c0028702: c36df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38116 + c00288d0: 8522 mv a0,s0 + c00288d2: b54df0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38124 return ret; - c0028706: 7782 ld a5,32(sp) - c0028708: f83e sd a5,48(sp) - c002870a: 77a2 ld a5,40(sp) - c002870c: fc3e sd a5,56(sp) - c002870e: bfd9 j c00286e4 + c00288d6: 7782 ld a5,32(sp) + c00288d8: f83e sd a5,48(sp) + c00288da: 77a2 ld a5,40(sp) + c00288dc: fc3e sd a5,56(sp) + c00288de: bfd9 j c00288b4 -00000000c0028710 : +00000000c00288e0 : js_object_isPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38142 { - c0028710: 7175 addi sp,sp,-144 - c0028712: e506 sd ra,136(sp) - c0028714: e122 sd s0,128(sp) - c0028716: fca6 sd s1,120(sp) - c0028718: f8ca sd s2,112(sp) - c002871a: f4ce sd s3,104(sp) - c002871c: f0d2 sd s4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38139 + c00288e0: 7175 addi sp,sp,-144 + c00288e2: e506 sd ra,136(sp) + c00288e4: e122 sd s0,128(sp) + c00288e6: fca6 sd s1,120(sp) + c00288e8: f8ca sd s2,112(sp) + c00288ea: f4ce sd s3,104(sp) + c00288ec: f0d2 sd s4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38147 v = argv[0]; - c002871e: 631c ld a5,0(a4) - c0028720: f83e sd a5,48(sp) - c0028722: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38140 + c00288ee: 631c ld a5,0(a4) + c00288f0: f83e sd a5,48(sp) + c00288f2: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38148 if (!JS_IsObject(v)) - c0028724: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38139 + c00288f4: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38147 v = argv[0]; - c0028726: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38140 + c00288f6: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38148 if (!JS_IsObject(v)) - c0028728: 2781 sext.w a5,a5 - c002872a: 00e78663 beq a5,a4,c0028736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38141 + c00288f8: 2781 sext.w a5,a5 + c00288fa: 00e78663 beq a5,a4,c0028906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38149 return JS_FALSE; - c002872e: e082 sd zero,64(sp) - c0028730: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38169 + c00288fe: e082 sd zero,64(sp) + c0028900: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38177 return JS_EXCEPTION; - c0028732: e4be sd a5,72(sp) - c0028734: a829 j c002874e - c0028736: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38142 + c0028902: e4be sd a5,72(sp) + c0028904: a829 j c002891e + c0028906: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38150 obj = JS_ToObject(ctx, this_val); - c0028738: eb5ff0ef jal ra,c00285ec - c002873c: ec2e sd a1,24(sp) - c002873e: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38143 + c0028908: eb5ff0ef jal ra,c00287bc + c002890c: ec2e sd a1,24(sp) + c002890e: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38151 if (JS_IsException(obj)) - c0028740: 2581 sext.w a1,a1 - c0028742: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38142 + c0028910: 2581 sext.w a1,a1 + c0028912: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38150 obj = JS_ToObject(ctx, this_val); - c0028744: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38143 + c0028914: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38151 if (JS_IsException(obj)) - c0028746: 00f59e63 bne a1,a5,c0028762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38144 + c0028916: 00f59e63 bne a1,a5,c0028932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38152 return JS_EXCEPTION; - c002874a: e082 sd zero,64(sp) - c002874c: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38170 (discriminator 1) -} - c002874e: 60aa ld ra,136(sp) - c0028750: 640a ld s0,128(sp) - c0028752: 6506 ld a0,64(sp) - c0028754: 65a6 ld a1,72(sp) - c0028756: 74e6 ld s1,120(sp) - c0028758: 7946 ld s2,112(sp) - c002875a: 79a6 ld s3,104(sp) - c002875c: 7a06 ld s4,96(sp) - c002875e: 6149 addi sp,sp,144 - c0028760: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38145 + c002891a: e082 sd zero,64(sp) + c002891c: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38178 (discriminator 1) +} + c002891e: 60aa ld ra,136(sp) + c0028920: 640a ld s0,128(sp) + c0028922: 6506 ld a0,64(sp) + c0028924: 65a6 ld a1,72(sp) + c0028926: 74e6 ld s1,120(sp) + c0028928: 7946 ld s2,112(sp) + c002892a: 79a6 ld s3,104(sp) + c002892c: 7a06 ld s4,96(sp) + c002892e: 6149 addi sp,sp,144 + c0028930: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38153 v1 = JS_DupValue(ctx, v); - c0028762: 7542 ld a0,48(sp) - c0028764: 75e2 ld a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38148 + c0028932: 7542 ld a0,48(sp) + c0028934: 75e2 ld a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38156 if (JS_IsException(v1)) - c0028766: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38150 + c0028936: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38158 if (JS_IsNull(v1)) { - c0028768: 4a09 li s4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38145 + c0028938: 4a09 li s4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38153 v1 = JS_DupValue(ctx, v); - c002876a: f05dd0ef jal ra,c000666e - c002876e: f42e sd a1,40(sp) - c0028770: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38147 + c002893a: e23dd0ef jal ra,c000675c + c002893e: f42e sd a1,40(sp) + c0028940: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38155 v1 = JS_GetPrototypeFree(ctx, v1); - c0028772: 7622 ld a2,40(sp) - c0028774: 85a2 mv a1,s0 - c0028776: 8526 mv a0,s1 - c0028778: ea7eb0ef jal ra,c001461e - c002877c: f42e sd a1,40(sp) - c002877e: f02a sd a0,32(sp) + c0028942: 7622 ld a2,40(sp) + c0028944: 85a2 mv a1,s0 + c0028946: 8526 mv a0,s1 + c0028948: dc5eb0ef jal ra,c001470c + c002894c: f42e sd a1,40(sp) + c002894e: f02a sd a0,32(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0028780: 2581 sext.w a1,a1 + c0028950: 2581 sext.w a1,a1 js_object_isPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38147 - c0028782: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38155 + c0028952: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38156 if (JS_IsException(v1)) - c0028784: 01358a63 beq a1,s3,c0028798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38150 + c0028954: 01358a63 beq a1,s3,c0028968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38158 if (JS_IsNull(v1)) { - c0028788: 03458563 beq a1,s4,c00287b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38154 + c0028958: 03458563 beq a1,s4,c0028982 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38162 if (JS_VALUE_GET_OBJ(obj) == JS_VALUE_GET_OBJ(v1)) { - c002878c: 04890363 beq s2,s0,c00287d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38159 - if (js_poll_interrupts(ctx)) - c0028790: 8526 mv a0,s1 - c0028792: a68ec0ef jal ra,c00149fa - c0028796: dd71 beqz a0,c0028772 + c002895c: 04890363 beq s2,s0,c00289a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38167 + if (js_poll_interrupts(ctx)) + c0028960: 8526 mv a0,s1 + c0028962: 986ec0ef jal ra,c0014ae8 + c0028966: dd71 beqz a0,c0028942 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38175 JS_FreeValue(ctx, v1); - c0028798: 7582 ld a1,32(sp) - c002879a: 7622 ld a2,40(sp) - c002879c: 8526 mv a0,s1 - c002879e: b9adf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38168 + c0028968: 7582 ld a1,32(sp) + c002896a: 7622 ld a2,40(sp) + c002896c: 8526 mv a0,s1 + c002896e: ab8df0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38176 JS_FreeValue(ctx, obj); - c00287a2: 65c2 ld a1,16(sp) - c00287a4: 6662 ld a2,24(sp) - c00287a6: 8526 mv a0,s1 - c00287a8: b90df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38169 + c0028972: 65c2 ld a1,16(sp) + c0028974: 6662 ld a2,24(sp) + c0028976: 8526 mv a0,s1 + c0028978: aaedf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38177 return JS_EXCEPTION; - c00287ac: 4799 li a5,6 - c00287ae: e082 sd zero,64(sp) - c00287b0: b749 j c0028732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38151 + c002897c: 4799 li a5,6 + c002897e: e082 sd zero,64(sp) + c0028980: b749 j c0028902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38159 res = FALSE; - c00287b2: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38162 + c0028982: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38170 JS_FreeValue(ctx, v1); - c00287b4: 7582 ld a1,32(sp) - c00287b6: 7622 ld a2,40(sp) - c00287b8: 8526 mv a0,s1 - c00287ba: b7edf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38163 + c0028984: 7582 ld a1,32(sp) + c0028986: 7622 ld a2,40(sp) + c0028988: 8526 mv a0,s1 + c002898a: a9cdf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38171 JS_FreeValue(ctx, obj); - c00287be: 65c2 ld a1,16(sp) - c00287c0: 6662 ld a2,24(sp) - c00287c2: 8526 mv a0,s1 - c00287c4: b74df0ef jal ra,c0007b38 + c002898e: 65c2 ld a1,16(sp) + c0028990: 6662 ld a2,24(sp) + c0028992: 8526 mv a0,s1 + c0028994: a92df0ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00287c8: ca82 sw zero,84(sp) - c00287ca: c8a2 sw s0,80(sp) - c00287cc: 67c6 ld a5,80(sp) - c00287ce: e0be sd a5,64(sp) - c00287d0: b785 j c0028730 + c0028998: ca82 sw zero,84(sp) + c002899a: c8a2 sw s0,80(sp) + c002899c: 67c6 ld a5,80(sp) + c002899e: e0be sd a5,64(sp) + c00289a0: b785 j c0028900 js_object_isPrototypeOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38155 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38163 res = TRUE; - c00287d2: 4405 li s0,1 - c00287d4: b7c5 j c00287b4 + c00289a2: 4405 li s0,1 + c00289a4: b7c5 j c0028984 -00000000c00287d6 : +00000000c00289a6 : js_object_valueOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37711 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37719 { - c00287d6: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37713 + c00289a6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37721 } - c00287d8: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37712 + c00289a8: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37720 return JS_ToObject(ctx, this_val); - c00287da: e13ff06f j c00285ec + c00289aa: e13ff06f j c00287bc -00000000c00287de : +00000000c00289ae : js_object_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37246 { - c00287de: 7179 addi sp,sp,-48 - c00287e0: e02e sd a1,0(sp) - c00287e2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37240 + c00289ae: 7179 addi sp,sp,-48 + c00289b0: e02e sd a1,0(sp) + c00289b2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37248 if (!JS_IsUndefined(new_target) && - c00287e4: 0006069b sext.w a3,a2 - c00287e8: 480d li a6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37238 + c00289b4: 0006069b sext.w a3,a2 + c00289b8: 480d li a6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37246 { - c00287ea: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37240 + c00289ba: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37248 if (!JS_IsUndefined(new_target) && - c00287ec: 01068b63 beq a3,a6,c0028802 + c00289bc: 01068b63 beq a3,a6,c00289d2 JS_GetActiveFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15627 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15635 (discriminator 1) return ctx->rt->current_stack_frame->cur_func; - c00287f0: 6d14 ld a3,24(a0) - c00287f2: 7ef4 ld a3,248(a3) + c00289c0: 6d14 ld a3,24(a0) + c00289c2: 7ef4 ld a3,248(a3) js_object_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37240 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37248 (discriminator 1) if (!JS_IsUndefined(new_target) && - c00287f4: 6694 ld a3,8(a3) - c00287f6: 00b68663 beq a3,a1,c0028802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37243 + c00289c4: 6694 ld a3,8(a3) + c00289c6: 00b68663 beq a3,a1,c00289d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37251 ret = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT); - c00287fa: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37257 + c00289ca: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 } - c00287fc: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37243 + c00289cc: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37251 ret = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT); - c00287fe: 9ecee06f j c00169ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37246 + c00289ce: 9ecee06f j c0016bba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37254 switch(tag) { - c0028802: 6710 ld a2,8(a4) - c0028804: 4685 li a3,1 - c0028806: ffe6059b addiw a1,a2,-2 - c002880a: 00b6e663 bltu a3,a1,c0028816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37249 - ret = JS_NewObject(ctx); - c002880e: 853e mv a0,a5 + c00289d2: 6710 ld a2,8(a4) + c00289d4: 4685 li a3,1 + c00289d6: ffe6059b addiw a1,a2,-2 + c00289da: 00b6e663 bltu a3,a1,c00289e6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37257 + ret = JS_NewObject(ctx); + c00289de: 853e mv a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 } - c0028810: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37249 + c00289e0: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37257 ret = JS_NewObject(ctx); - c0028812: d76ee06f j c0016d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37252 + c00289e2: d76ee06f j c0016f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37260 ret = JS_ToObject(ctx, argv[0]); - c0028816: 630c ld a1,0(a4) - c0028818: 853e mv a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37257 + c00289e6: 630c ld a1,0(a4) + c00289e8: 853e mv a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 } - c002881a: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37252 + c00289ea: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37260 ret = JS_ToObject(ctx, argv[0]); - c002881c: dd1ff06f j c00285ec + c00289ec: dd1ff06f j c00287bc -00000000c0028820 : +00000000c00289f0 : JS_DeleteProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9779 -{ - c0028820: 7139 addi sp,sp,-64 - c0028822: f822 sd s0,48(sp) - c0028824: f426 sd s1,40(sp) - c0028826: f04a sd s2,32(sp) - c0028828: fc06 sd ra,56(sp) - c002882a: 84aa mv s1,a0 - c002882c: 8436 mv s0,a3 - c002882e: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9787 +{ + c00289f0: 7139 addi sp,sp,-64 + c00289f2: f822 sd s0,48(sp) + c00289f4: f426 sd s1,40(sp) + c00289f6: f04a sd s2,32(sp) + c00289f8: fc06 sd ra,56(sp) + c00289fa: 84aa mv s1,a0 + c00289fc: 8436 mv s0,a3 + c00289fe: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9792 obj1 = JS_ToObject(ctx, obj); - c0028830: dbdff0ef jal ra,c00285ec - c0028834: ec2e sd a1,24(sp) - c0028836: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9785 + c0028a00: dbdff0ef jal ra,c00287bc + c0028a04: ec2e sd a1,24(sp) + c0028a06: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9793 if (JS_IsException(obj1)) - c0028838: 2581 sext.w a1,a1 - c002883a: 4799 li a5,6 - c002883c: 04f58263 beq a1,a5,c0028880 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9788 + c0028a08: 2581 sext.w a1,a1 + c0028a0a: 4799 li a5,6 + c0028a0c: 04f58263 beq a1,a5,c0028a50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9796 res = delete_property(ctx, p, prop); - c0028840: 8622 mv a2,s0 - c0028842: 85aa mv a1,a0 - c0028844: 8526 mv a0,s1 - c0028846: 8a9ee0ef jal ra,c00170ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9789 + c0028a10: 8622 mv a2,s0 + c0028a12: 85aa mv a1,a0 + c0028a14: 8526 mv a0,s1 + c0028a16: 8a9ee0ef jal ra,c00172be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9797 JS_FreeValue(ctx, obj1); - c002884a: 65c2 ld a1,16(sp) - c002884c: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9788 + c0028a1a: 65c2 ld a1,16(sp) + c0028a1c: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9796 res = delete_property(ctx, p, prop); - c002884e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9789 + c0028a1e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9797 JS_FreeValue(ctx, obj1); - c0028850: 8526 mv a0,s1 - c0028852: ae6df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9790 + c0028a20: 8526 mv a0,s1 + c0028a22: a04df0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9798 if (res != FALSE) - c0028856: e415 bnez s0,c0028882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9792 + c0028a26: e415 bnez s0,c0028a52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9800 if ((flags & JS_PROP_THROW) || - c0028858: 00e95793 srli a5,s2,0xe - c002885c: 8b85 andi a5,a5,1 - c002885e: eb91 bnez a5,c0028872 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9793 (discriminator 1) + c0028a28: 00e95793 srli a5,s2,0xe + c0028a2c: 8b85 andi a5,a5,1 + c0028a2e: eb91 bnez a5,c0028a42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9801 (discriminator 1) ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0028860: 6421 lui s0,0x8 - c0028862: 00897433 and s0,s2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9792 (discriminator 1) + c0028a30: 6421 lui s0,0x8 + c0028a32: 00897433 and s0,s2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9800 (discriminator 1) if ((flags & JS_PROP_THROW) || - c0028866: cc11 beqz s0,c0028882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9793 + c0028a36: cc11 beqz s0,c0028a52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9801 ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0028868: 8526 mv a0,s1 - c002886a: 831db0ef jal ra,c000409a - c002886e: 842a mv s0,a0 - c0028870: c909 beqz a0,c0028882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9794 + c0028a38: 8526 mv a0,s1 + c0028a3a: e60db0ef jal ra,c000409a + c0028a3e: 842a mv s0,a0 + c0028a40: c909 beqz a0,c0028a52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9802 JS_ThrowTypeError(ctx, "could not delete property"); - c0028872: 00037597 auipc a1,0x37 - c0028876: e0658593 addi a1,a1,-506 # c005f678 - c002887a: 8526 mv a0,s1 - c002887c: b7bea0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9786 + c0028a42: 00037597 auipc a1,0x37 + c0028a46: e9658593 addi a1,a1,-362 # c005f8d8 + c0028a4a: 8526 mv a0,s1 + c0028a4c: a99ea0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9794 return -1; - c0028880: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9798 -} - c0028882: 70e2 ld ra,56(sp) - c0028884: 8522 mv a0,s0 - c0028886: 7442 ld s0,48(sp) - c0028888: 74a2 ld s1,40(sp) - c002888a: 7902 ld s2,32(sp) - c002888c: 6121 addi sp,sp,64 - c002888e: 8082 ret - -00000000c0028890 : + c0028a50: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9806 +} + c0028a52: 70e2 ld ra,56(sp) + c0028a54: 8522 mv a0,s0 + c0028a56: 7442 ld s0,48(sp) + c0028a58: 74a2 ld s1,40(sp) + c0028a5a: 7902 ld s2,32(sp) + c0028a5c: 6121 addi sp,sp,64 + c0028a5e: 8082 ret + +00000000c0028a60 : JS_DeletePropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9809 { - c0028890: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9805 + c0028a60: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9813 if ((uint64_t)idx <= JS_ATOM_MAX_INT) { - c0028892: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9801 + c0028a62: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9809 { - c0028896: fc06 sd ra,56(sp) - c0028898: f822 sd s0,48(sp) - c002889a: f426 sd s1,40(sp) - c002889c: f04a sd s2,32(sp) - c002889e: ec4e sd s3,24(sp) - c00288a0: e02e sd a1,0(sp) - c00288a2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9805 + c0028a66: fc06 sd ra,56(sp) + c0028a68: f822 sd s0,48(sp) + c0028a6a: f426 sd s1,40(sp) + c0028a6c: f04a sd s2,32(sp) + c0028a6e: ec4e sd s3,24(sp) + c0028a70: e02e sd a1,0(sp) + c0028a72: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9813 if ((uint64_t)idx <= JS_ATOM_MAX_INT) { - c00288a4: fff7c793 not a5,a5 - c00288a8: 00d7ee63 bltu a5,a3,c00288c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9815 + c0028a74: fff7c793 not a5,a5 + c0028a78: 00d7ee63 bltu a5,a3,c0028a94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9823 } - c00288ac: 7442 ld s0,48(sp) - c00288ae: 70e2 ld ra,56(sp) - c00288b0: 74a2 ld s1,40(sp) - c00288b2: 7902 ld s2,32(sp) - c00288b4: 69e2 ld s3,24(sp) + c0028a7c: 7442 ld s0,48(sp) + c0028a7e: 70e2 ld ra,56(sp) + c0028a80: 74a2 ld s1,40(sp) + c0028a82: 7902 ld s2,32(sp) + c0028a84: 69e2 ld s3,24(sp) __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c00288b6: 800007b7 lui a5,0x80000 - c00288ba: 8edd or a3,a3,a5 + c0028a86: 800007b7 lui a5,0x80000 + c0028a8a: 8edd or a3,a3,a5 JS_DeletePropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9807 - return JS_DeleteProperty(ctx, obj, __JS_AtomFromUInt32(idx), flags); - c00288bc: 2681 sext.w a3,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9815 + return JS_DeleteProperty(ctx, obj, __JS_AtomFromUInt32(idx), flags); + c0028a8c: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9823 } - c00288be: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9807 + c0028a8e: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9815 return JS_DeleteProperty(ctx, obj, __JS_AtomFromUInt32(idx), flags); - c00288c0: f61ff06f j c0028820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9809 + c0028a90: f61ff06f j c00289f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9817 prop = JS_NewAtomInt64(ctx, idx); - c00288c4: 85b6 mv a1,a3 - c00288c6: 892a mv s2,a0 - c00288c8: 89ba mv s3,a4 - c00288ca: 981f10ef jal ra,c001a24a - c00288ce: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9811 + c0028a94: 85b6 mv a1,a3 + c0028a96: 892a mv s2,a0 + c0028a98: 89ba mv s3,a4 + c0028a9a: 981f10ef jal ra,c001a41a + c0028a9e: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9819 return -1; - c00288d2: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9810 + c0028aa2: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9818 if (prop == JS_ATOM_NULL) - c00288d4: cc09 beqz s0,c00288ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9812 + c0028aa4: cc09 beqz s0,c0028abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9820 res = JS_DeleteProperty(ctx, obj, prop, flags); - c00288d6: 6582 ld a1,0(sp) - c00288d8: 6622 ld a2,8(sp) - c00288da: 874e mv a4,s3 - c00288dc: 86a2 mv a3,s0 - c00288de: 854a mv a0,s2 - c00288e0: f41ff0ef jal ra,c0028820 - c00288e4: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9813 + c0028aa6: 6582 ld a1,0(sp) + c0028aa8: 6622 ld a2,8(sp) + c0028aaa: 874e mv a4,s3 + c0028aac: 86a2 mv a3,s0 + c0028aae: 854a mv a0,s2 + c0028ab0: f41ff0ef jal ra,c00289f0 + c0028ab4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9821 JS_FreeAtom(ctx, prop); - c00288e6: 85a2 mv a1,s0 - c00288e8: 854a mv a0,s2 - c00288ea: c23de0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9815 + c0028ab6: 85a2 mv a1,s0 + c0028ab8: 854a mv a0,s2 + c0028aba: b41de0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9823 } - c00288ee: 70e2 ld ra,56(sp) - c00288f0: 7442 ld s0,48(sp) - c00288f2: 7902 ld s2,32(sp) - c00288f4: 69e2 ld s3,24(sp) - c00288f6: 8526 mv a0,s1 - c00288f8: 74a2 ld s1,40(sp) - c00288fa: 6121 addi sp,sp,64 - c00288fc: 8082 ret + c0028abe: 70e2 ld ra,56(sp) + c0028ac0: 7442 ld s0,48(sp) + c0028ac2: 7902 ld s2,32(sp) + c0028ac4: 69e2 ld s3,24(sp) + c0028ac6: 8526 mv a0,s1 + c0028ac8: 74a2 ld s1,40(sp) + c0028aca: 6121 addi sp,sp,64 + c0028acc: 8082 ret -00000000c00288fe : +00000000c0028ace : js_reflect_deleteProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45675 { - c00288fe: 711d addi sp,sp,-96 - c0028900: ec86 sd ra,88(sp) - c0028902: e8a2 sd s0,80(sp) - c0028904: e4a6 sd s1,72(sp) - c0028906: e0ca sd s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45672 + c0028ace: 711d addi sp,sp,-96 + c0028ad0: ec86 sd ra,88(sp) + c0028ad2: e8a2 sd s0,80(sp) + c0028ad4: e4a6 sd s1,72(sp) + c0028ad6: e0ca sd s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45680 obj = argv[0]; - c0028908: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45673 + c0028ad8: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45681 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c002890a: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45672 + c0028ada: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45680 obj = argv[0]; - c002890c: e83e sd a5,16(sp) - c002890e: 671c ld a5,8(a4) - c0028910: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45673 + c0028adc: e83e sd a5,16(sp) + c0028ade: 671c ld a5,8(a4) + c0028ae0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45681 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0028912: 2781 sext.w a5,a5 - c0028914: 00d78963 beq a5,a3,c0028926 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45684 -} - c0028918: 6446 ld s0,80(sp) - c002891a: 60e6 ld ra,88(sp) - c002891c: 64a6 ld s1,72(sp) - c002891e: 6906 ld s2,64(sp) - c0028920: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45674 + c0028ae2: 2781 sext.w a5,a5 + c0028ae4: 00d78963 beq a5,a3,c0028af6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45692 +} + c0028ae8: 6446 ld s0,80(sp) + c0028aea: 60e6 ld ra,88(sp) + c0028aec: 64a6 ld s1,72(sp) + c0028aee: 6906 ld s2,64(sp) + c0028af0: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45682 return JS_ThrowTypeErrorNotAnObject(ctx); - c0028922: 856eb06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45675 + c0028af2: f75ea06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45683 atom = JS_ValueToAtom(ctx, argv[1]); - c0028926: 6b0c ld a1,16(a4) - c0028928: 6f10 ld a2,24(a4) - c002892a: 892a mv s2,a0 - c002892c: cf1f80ef jal ra,c002161c - c0028930: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45676 + c0028af6: 6b0c ld a1,16(a4) + c0028af8: 6f10 ld a2,24(a4) + c0028afa: 892a mv s2,a0 + c0028afc: cf1f80ef jal ra,c00217ec + c0028b00: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45684 if (unlikely(atom == JS_ATOM_NULL)) - c0028934: ec81 bnez s1,c002894c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45677 + c0028b04: ec81 bnez s1,c0028b1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45685 return JS_EXCEPTION; - c0028936: f002 sd zero,32(sp) - c0028938: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45684 -} - c002893a: 60e6 ld ra,88(sp) - c002893c: 6446 ld s0,80(sp) - c002893e: f43e sd a5,40(sp) - c0028940: 7502 ld a0,32(sp) - c0028942: 75a2 ld a1,40(sp) - c0028944: 64a6 ld s1,72(sp) - c0028946: 6906 ld s2,64(sp) - c0028948: 6125 addi sp,sp,96 - c002894a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45678 + c0028b06: f002 sd zero,32(sp) + c0028b08: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45692 +} + c0028b0a: 60e6 ld ra,88(sp) + c0028b0c: 6446 ld s0,80(sp) + c0028b0e: f43e sd a5,40(sp) + c0028b10: 7502 ld a0,32(sp) + c0028b12: 75a2 ld a1,40(sp) + c0028b14: 64a6 ld s1,72(sp) + c0028b16: 6906 ld s2,64(sp) + c0028b18: 6125 addi sp,sp,96 + c0028b1a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45686 ret = JS_DeleteProperty(ctx, obj, atom, 0); - c002894c: 65c2 ld a1,16(sp) - c002894e: 6662 ld a2,24(sp) - c0028950: 4701 li a4,0 - c0028952: 86a6 mv a3,s1 - c0028954: 854a mv a0,s2 - c0028956: ecbff0ef jal ra,c0028820 - c002895a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45679 + c0028b1c: 65c2 ld a1,16(sp) + c0028b1e: 6662 ld a2,24(sp) + c0028b20: 4701 li a4,0 + c0028b22: 86a6 mv a3,s1 + c0028b24: 854a mv a0,s2 + c0028b26: ecbff0ef jal ra,c00289f0 + c0028b2a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45687 JS_FreeAtom(ctx, atom); - c002895c: 85a6 mv a1,s1 - c002895e: 854a mv a0,s2 - c0028960: badde0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45680 + c0028b2c: 85a6 mv a1,s1 + c0028b2e: 854a mv a0,s2 + c0028b30: acbde0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45688 if (ret < 0) - c0028964: fc0449e3 bltz s0,c0028936 + c0028b34: fc0449e3 bltz s0,c0028b06 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0028968: 00803433 snez s0,s0 - c002896c: da02 sw zero,52(sp) - c002896e: d822 sw s0,48(sp) - c0028970: 77c2 ld a5,48(sp) - c0028972: f03e sd a5,32(sp) - c0028974: 4785 li a5,1 - c0028976: b7d1 j c002893a - -00000000c0028978 : + c0028b38: 00803433 snez s0,s0 + c0028b3c: da02 sw zero,52(sp) + c0028b3e: d822 sw s0,48(sp) + c0028b40: 77c2 ld a5,48(sp) + c0028b42: f03e sd a5,32(sp) + c0028b44: 4785 li a5,1 + c0028b46: b7d1 j c0028b0a + +00000000c0028b48 : js_create_array_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40710 -{ - c0028978: 7119 addi sp,sp,-128 - c002897a: f8a2 sd s0,112(sp) - c002897c: f4a6 sd s1,104(sp) - c002897e: fc86 sd ra,120(sp) - c0028980: 84be mv s1,a5 - c0028982: f0ca sd s2,96(sp) - c0028984: ecce sd s3,88(sp) - c0028986: e8d2 sd s4,80(sp) - c0028988: e4d6 sd s5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40717 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40718 +{ + c0028b48: 7119 addi sp,sp,-128 + c0028b4a: f8a2 sd s0,112(sp) + c0028b4c: f4a6 sd s1,104(sp) + c0028b4e: fc86 sd ra,120(sp) + c0028b50: 84be mv s1,a5 + c0028b52: f0ca sd s2,96(sp) + c0028b54: ecce sd s3,88(sp) + c0028b56: e8d2 sd s4,80(sp) + c0028b58: e4d6 sd s5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40725 if (magic & 4) { - c002898a: 8b91 andi a5,a5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40710 + c0028b5a: 8b91 andi a5,a5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40718 { - c002898c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40717 + c0028b5c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40725 if (magic & 4) { - c002898e: cba9 beqz a5,c00289e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40719 + c0028b5e: cba9 beqz a5,c0028bb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40727 arr = JS_ToStringCheckObject(ctx, this_val); - c0028990: d1cf20ef jal ra,c001aeac - c0028994: f42e sd a1,40(sp) - c0028996: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40720 + c0028b60: d1cf20ef jal ra,c001b07c + c0028b64: f42e sd a1,40(sp) + c0028b66: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40728 class_id = JS_CLASS_STRING_ITERATOR; - c0028998: 02900593 li a1,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40725 + c0028b68: 02900593 li a1,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40733 if (JS_IsException(arr)) - c002899c: 57a2 lw a5,40(sp) - c002899e: 4a99 li s5,6 - c00289a0: 03578763 beq a5,s5,c00289ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40727 + c0028b6c: 57a2 lw a5,40(sp) + c0028b6e: 4a99 li s5,6 + c0028b70: 03578763 beq a5,s5,c0028b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40735 enum_obj = JS_NewObjectClass(ctx, class_id); - c00289a4: 8522 mv a0,s0 - c00289a6: acaee0ef jal ra,c0016c70 - c00289aa: e82a sd a0,16(sp) - c00289ac: ec2e sd a1,24(sp) + c0028b74: 8522 mv a0,s0 + c0028b76: acaee0ef jal ra,c0016e40 + c0028b7a: e82a sd a0,16(sp) + c0028b7c: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00289ae: 00058a1b sext.w s4,a1 + c0028b7e: 00058a1b sext.w s4,a1 js_create_array_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40727 - c00289b2: 89aa mv s3,a0 - c00289b4: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40735 + c0028b82: 89aa mv s3,a0 + c0028b84: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40736 if (JS_IsException(enum_obj)) - c00289b6: 015a0c63 beq s4,s5,c00289ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40730 + c0028b86: 015a0c63 beq s4,s5,c0028b9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40738 it = js_malloc(ctx, sizeof(*it)); - c00289ba: 45e1 li a1,24 - c00289bc: 8522 mv a0,s0 - c00289be: a8eec0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40731 - if (!it) - c00289c2: e515 bnez a0,c00289ee + c0028b8a: 45e1 li a1,24 + c0028b8c: 8522 mv a0,s0 + c0028b8e: 9acec0ef jal ra,c0014d3a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40739 + if (!it) + c0028b92: e515 bnez a0,c0028bbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40747 JS_FreeValue(ctx, enum_obj); - c00289c4: 65c2 ld a1,16(sp) - c00289c6: 6662 ld a2,24(sp) - c00289c8: 8522 mv a0,s0 - c00289ca: 96edf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40741 + c0028b94: 65c2 ld a1,16(sp) + c0028b96: 6662 ld a2,24(sp) + c0028b98: 8522 mv a0,s0 + c0028b9a: 88cdf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40749 JS_FreeValue(ctx, arr); - c00289ce: 7582 ld a1,32(sp) - c00289d0: 7622 ld a2,40(sp) - c00289d2: 8522 mv a0,s0 - c00289d4: 964df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40742 + c0028b9e: 7582 ld a1,32(sp) + c0028ba0: 7622 ld a2,40(sp) + c0028ba2: 8522 mv a0,s0 + c0028ba4: 882df0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40750 return JS_EXCEPTION; - c00289d8: 4799 li a5,6 - c00289da: f802 sd zero,48(sp) - c00289dc: fc3e sd a5,56(sp) - c00289de: a03d j c0028a0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40722 + c0028ba8: 4799 li a5,6 + c0028baa: f802 sd zero,48(sp) + c0028bac: fc3e sd a5,56(sp) + c0028bae: a03d j c0028bdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40730 arr = JS_ToObject(ctx, this_val); - c00289e0: c0dff0ef jal ra,c00285ec - c00289e4: f42e sd a1,40(sp) - c00289e6: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40723 + c0028bb0: c0dff0ef jal ra,c00287bc + c0028bb4: f42e sd a1,40(sp) + c0028bb6: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40731 class_id = JS_CLASS_ARRAY_ITERATOR; - c00289e8: 02800593 li a1,40 - c00289ec: bf45 j c002899c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40733 + c0028bb8: 02800593 li a1,40 + c0028bbc: bf45 j c0028b6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40741 it->obj = arr; - c00289ee: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40716 + c0028bbe: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40724 kind = magic & 3; - c00289f0: 888d andi s1,s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40734 + c0028bc0: 888d andi s1,s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40742 it->kind = kind; - c00289f2: c904 sw s1,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40733 + c0028bc2: c904 sw s1,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40741 it->obj = arr; - c00289f4: e11c sd a5,0(a0) - c00289f6: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40735 + c0028bc4: e11c sd a5,0(a0) + c0028bc6: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40743 it->idx = 0; - c00289f8: 00052a23 sw zero,20(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40733 + c0028bc8: 00052a23 sw zero,20(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40741 it->obj = arr; - c00289fc: e51c sd a5,8(a0) + c0028bcc: e51c sd a5,8(a0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00289fe: 57fd li a5,-1 - c0028a00: 00fa1463 bne s4,a5,c0028a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0028bce: 57fd li a5,-1 + c0028bd0: 00fa1463 bne s4,a5,c0028bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0028a04: 02a9b823 sd a0,48(s3) + c0028bd4: 02a9b823 sd a0,48(s3) js_create_array_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40737 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40745 return enum_obj; - c0028a08: f84e sd s3,48(sp) - c0028a0a: fc4a sd s2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40743 -} - c0028a0c: 70e6 ld ra,120(sp) - c0028a0e: 7446 ld s0,112(sp) - c0028a10: 7542 ld a0,48(sp) - c0028a12: 75e2 ld a1,56(sp) - c0028a14: 74a6 ld s1,104(sp) - c0028a16: 7906 ld s2,96(sp) - c0028a18: 69e6 ld s3,88(sp) - c0028a1a: 6a46 ld s4,80(sp) - c0028a1c: 6aa6 ld s5,72(sp) - c0028a1e: 6109 addi sp,sp,128 - c0028a20: 8082 ret - -00000000c0028a22 : + c0028bd8: f84e sd s3,48(sp) + c0028bda: fc4a sd s2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40751 +} + c0028bdc: 70e6 ld ra,120(sp) + c0028bde: 7446 ld s0,112(sp) + c0028be0: 7542 ld a0,48(sp) + c0028be2: 75e2 ld a1,56(sp) + c0028be4: 74a6 ld s1,104(sp) + c0028be6: 7906 ld s2,96(sp) + c0028be8: 69e6 ld s3,88(sp) + c0028bea: 6a46 ld s4,80(sp) + c0028bec: 6aa6 ld s5,72(sp) + c0028bee: 6109 addi sp,sp,128 + c0028bf0: 8082 ret + +00000000c0028bf2 : js_create_typed_array_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53325 -{ - c0028a22: 715d addi sp,sp,-80 - c0028a24: e0a2 sd s0,64(sp) - c0028a26: e486 sd ra,72(sp) - c0028a28: 842a mv s0,a0 - c0028a2a: f02e sd a1,32(sp) - c0028a2c: f432 sd a2,40(sp) - c0028a2e: ec36 sd a3,24(sp) - c0028a30: e83a sd a4,16(sp) - c0028a32: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53333 +{ + c0028bf2: 715d addi sp,sp,-80 + c0028bf4: e0a2 sd s0,64(sp) + c0028bf6: e486 sd ra,72(sp) + c0028bf8: 842a mv s0,a0 + c0028bfa: f02e sd a1,32(sp) + c0028bfc: f432 sd a2,40(sp) + c0028bfe: ec36 sd a3,24(sp) + c0028c00: e83a sd a4,16(sp) + c0028c02: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53334 if (validate_typed_array(ctx, this_val)) - c0028a34: fc4eb0ef jal ra,c00141f8 - c0028a38: ed01 bnez a0,c0028a50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53328 + c0028c04: ee2eb0ef jal ra,c00142e6 + c0028c08: ed01 bnez a0,c0028c20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53336 return js_create_array_iterator(ctx, this_val, argc, argv, magic); - c0028a3a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53329 + c0028c0a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53337 } - c0028a3c: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53328 + c0028c0c: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53336 return js_create_array_iterator(ctx, this_val, argc, argv, magic); - c0028a3e: 67a2 ld a5,8(sp) - c0028a40: 6742 ld a4,16(sp) - c0028a42: 66e2 ld a3,24(sp) - c0028a44: 7582 ld a1,32(sp) - c0028a46: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53329 + c0028c0e: 67a2 ld a5,8(sp) + c0028c10: 6742 ld a4,16(sp) + c0028c12: 66e2 ld a3,24(sp) + c0028c14: 7582 ld a1,32(sp) + c0028c16: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53337 } - c0028a48: 60a6 ld ra,72(sp) - c0028a4a: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53328 + c0028c18: 60a6 ld ra,72(sp) + c0028c1a: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53336 return js_create_array_iterator(ctx, this_val, argc, argv, magic); - c0028a4c: f2dff06f j c0028978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53329 (discriminator 1) + c0028c1c: f2dff06f j c0028b48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53337 (discriminator 1) } - c0028a50: 60a6 ld ra,72(sp) - c0028a52: 6406 ld s0,64(sp) - c0028a54: 4501 li a0,0 - c0028a56: 4599 li a1,6 - c0028a58: 6161 addi sp,sp,80 - c0028a5a: 8082 ret + c0028c20: 60a6 ld ra,72(sp) + c0028c22: 6406 ld s0,64(sp) + c0028c24: 4501 li a0,0 + c0028c26: 4599 li a1,6 + c0028c28: 6161 addi sp,sp,80 + c0028c2a: 8082 ret -00000000c0028a5c : +00000000c0028c2c : js_instantiate_prototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15715 -{ - c0028a5c: 711d addi sp,sp,-96 - c0028a5e: e8a2 sd s0,80(sp) - c0028a60: e4a6 sd s1,72(sp) - c0028a62: ec86 sd ra,88(sp) - c0028a64: 842a mv s0,a0 - c0028a66: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15720 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15723 +{ + c0028c2c: 711d addi sp,sp,-96 + c0028c2e: e8a2 sd s0,80(sp) + c0028c30: e4a6 sd s1,72(sp) + c0028c32: ec86 sd ra,88(sp) + c0028c34: 842a mv s0,a0 + c0028c36: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15728 obj = JS_NewObject(ctx); - c0028a68: b20ee0ef jal ra,c0016d88 - c0028a6c: e82a sd a0,16(sp) - c0028a6e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15721 + c0028c38: b20ee0ef jal ra,c0016f58 + c0028c3c: e82a sd a0,16(sp) + c0028c3e: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15729 if (JS_IsException(obj)) - c0028a70: 0005879b sext.w a5,a1 - c0028a74: 4499 li s1,6 - c0028a76: 6722 ld a4,8(sp) - c0028a78: 00979563 bne a5,s1,c0028a82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15722 + c0028c40: 0005879b sext.w a5,a1 + c0028c44: 4499 li s1,6 + c0028c46: 6722 ld a4,8(sp) + c0028c48: 00979563 bne a5,s1,c0028c52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15730 return JS_EXCEPTION; - c0028a7c: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15732 + c0028c4c: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15740 return obj; - c0028a7e: f43e sd a5,40(sp) - c0028a80: a035 j c0028aac + c0028c4e: f43e sd a5,40(sp) + c0028c50: a035 j c0028c7c JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0028a82: 431c lw a5,0(a4) - c0028a84: 862e mv a2,a1 + c0028c52: 431c lw a5,0(a4) + c0028c54: 862e mv a2,a1 js_instantiate_prototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15725 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15733 ret = JS_DefinePropertyValue(ctx, obj, JS_ATOM_constructor, - c0028a86: 480d li a6,3 + c0028c56: 480d li a6,3 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0028a88: 2785 addiw a5,a5,1 - c0028a8a: c31c sw a5,0(a4) + c0028c58: 2785 addiw a5,a5,1 + c0028c5a: c31c sw a5,0(a4) js_instantiate_prototype(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15725 - c0028a8c: 85aa mv a1,a0 - c0028a8e: 57fd li a5,-1 - c0028a90: 03d00693 li a3,61 - c0028a94: 8522 mv a0,s0 - c0028a96: d20ea0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15733 + c0028c5c: 85aa mv a1,a0 + c0028c5e: 57fd li a5,-1 + c0028c60: 03d00693 li a3,61 + c0028c64: 8522 mv a0,s0 + c0028c66: c3eea0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15736 if (ret < 0) { - c0028a9a: 02055063 bgez a0,c0028aba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15729 + c0028c6a: 02055063 bgez a0,c0028c8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15737 JS_FreeValue(ctx, obj); - c0028a9e: 65c2 ld a1,16(sp) - c0028aa0: 6662 ld a2,24(sp) - c0028aa2: 8522 mv a0,s0 - c0028aa4: 894df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15730 + c0028c6e: 65c2 ld a1,16(sp) + c0028c70: 6662 ld a2,24(sp) + c0028c72: 8522 mv a0,s0 + c0028c74: fb3de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15738 return JS_EXCEPTION; - c0028aa8: f002 sd zero,32(sp) - c0028aaa: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15733 (discriminator 1) -} - c0028aac: 60e6 ld ra,88(sp) - c0028aae: 6446 ld s0,80(sp) - c0028ab0: 7502 ld a0,32(sp) - c0028ab2: 75a2 ld a1,40(sp) - c0028ab4: 64a6 ld s1,72(sp) - c0028ab6: 6125 addi sp,sp,96 - c0028ab8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15732 + c0028c78: f002 sd zero,32(sp) + c0028c7a: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15741 (discriminator 1) +} + c0028c7c: 60e6 ld ra,88(sp) + c0028c7e: 6446 ld s0,80(sp) + c0028c80: 7502 ld a0,32(sp) + c0028c82: 75a2 ld a1,40(sp) + c0028c84: 64a6 ld s1,72(sp) + c0028c86: 6125 addi sp,sp,96 + c0028c88: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15740 return obj; - c0028aba: 67c2 ld a5,16(sp) - c0028abc: f03e sd a5,32(sp) - c0028abe: 67e2 ld a5,24(sp) - c0028ac0: bf7d j c0028a7e + c0028c8a: 67c2 ld a5,16(sp) + c0028c8c: f03e sd a5,32(sp) + c0028c8e: 67e2 ld a5,24(sp) + c0028c90: bf7d j c0028c4e -00000000c0028ac2 : +00000000c0028c92 : js_create_iterator_result(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15414 -{ - c0028ac2: 7159 addi sp,sp,-112 - c0028ac4: f0a2 sd s0,96(sp) - c0028ac6: eca6 sd s1,88(sp) - c0028ac8: f486 sd ra,104(sp) - c0028aca: 842a mv s0,a0 - c0028acc: e02e sd a1,0(sp) - c0028ace: e432 sd a2,8(sp) - c0028ad0: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15422 +{ + c0028c92: 7159 addi sp,sp,-112 + c0028c94: f0a2 sd s0,96(sp) + c0028c96: eca6 sd s1,88(sp) + c0028c98: f486 sd ra,104(sp) + c0028c9a: 842a mv s0,a0 + c0028c9c: e02e sd a1,0(sp) + c0028c9e: e432 sd a2,8(sp) + c0028ca0: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15424 obj = JS_NewObject(ctx); - c0028ad2: ab6ee0ef jal ra,c0016d88 - c0028ad6: e82a sd a0,16(sp) - c0028ad8: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15417 + c0028ca2: ab6ee0ef jal ra,c0016f58 + c0028ca6: e82a sd a0,16(sp) + c0028ca8: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15425 if (JS_IsException(obj)) { - c0028ada: 0005871b sext.w a4,a1 - c0028ade: 4799 li a5,6 - c0028ae0: 00f71b63 bne a4,a5,c0028af6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15418 + c0028caa: 0005871b sext.w a4,a1 + c0028cae: 4799 li a5,6 + c0028cb0: 00f71b63 bne a4,a5,c0028cc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15426 JS_FreeValue(ctx, val); - c0028ae4: 6582 ld a1,0(sp) - c0028ae6: 6622 ld a2,8(sp) - c0028ae8: 8522 mv a0,s0 - c0028aea: 84edf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15431 + c0028cb4: 6582 ld a1,0(sp) + c0028cb6: 6622 ld a2,8(sp) + c0028cb8: 8522 mv a0,s0 + c0028cba: f6dde0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15439 return obj; - c0028aee: 67c2 ld a5,16(sp) - c0028af0: f03e sd a5,32(sp) - c0028af2: 67e2 ld a5,24(sp) - c0028af4: a025 j c0028b1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15421 + c0028cbe: 67c2 ld a5,16(sp) + c0028cc0: f03e sd a5,32(sp) + c0028cc2: 67e2 ld a5,24(sp) + c0028cc4: a025 j c0028cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15429 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_value, - c0028af6: 6702 ld a4,0(sp) - c0028af8: 67a2 ld a5,8(sp) - c0028afa: 862e mv a2,a1 - c0028afc: 481d li a6,7 - c0028afe: 85aa mv a1,a0 - c0028b00: 04100693 li a3,65 - c0028b04: 8522 mv a0,s0 - c0028b06: cb0ea0ef jal ra,c0012fb6 - c0028b0a: 02055163 bgez a0,c0028b2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15428 + c0028cc6: 6702 ld a4,0(sp) + c0028cc8: 67a2 ld a5,8(sp) + c0028cca: 862e mv a2,a1 + c0028ccc: 481d li a6,7 + c0028cce: 85aa mv a1,a0 + c0028cd0: 04100693 li a3,65 + c0028cd4: 8522 mv a0,s0 + c0028cd6: bceea0ef jal ra,c00130a4 + c0028cda: 02055163 bgez a0,c0028cfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15436 JS_FreeValue(ctx, obj); - c0028b0e: 65c2 ld a1,16(sp) - c0028b10: 6662 ld a2,24(sp) - c0028b12: 8522 mv a0,s0 - c0028b14: 824df0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15429 + c0028cde: 65c2 ld a1,16(sp) + c0028ce0: 6662 ld a2,24(sp) + c0028ce2: 8522 mv a0,s0 + c0028ce4: f43de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15437 return JS_EXCEPTION; - c0028b18: 4799 li a5,6 - c0028b1a: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15432 + c0028ce8: 4799 li a5,6 + c0028cea: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15440 } - c0028b1c: 70a6 ld ra,104(sp) - c0028b1e: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15431 + c0028cec: 70a6 ld ra,104(sp) + c0028cee: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15439 return obj; - c0028b20: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15432 -} - c0028b22: 7502 ld a0,32(sp) - c0028b24: 75a2 ld a1,40(sp) - c0028b26: 64e6 ld s1,88(sp) - c0028b28: 6165 addi sp,sp,112 - c0028b2a: 8082 ret + c0028cf0: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15440 +} + c0028cf2: 7502 ld a0,32(sp) + c0028cf4: 75a2 ld a1,40(sp) + c0028cf6: 64e6 ld s1,88(sp) + c0028cf8: 6165 addi sp,sp,112 + c0028cfa: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0028b2c: 009034b3 snez s1,s1 - c0028b30: c282 sw zero,68(sp) - c0028b32: c0a6 sw s1,64(sp) + c0028cfc: 009034b3 snez s1,s1 + c0028d00: c282 sw zero,68(sp) + c0028d02: c0a6 sw s1,64(sp) js_create_iterator_result(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15425 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15433 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_done, - c0028b34: 6706 ld a4,64(sp) - c0028b36: 65c2 ld a1,16(sp) - c0028b38: 6662 ld a2,24(sp) - c0028b3a: 481d li a6,7 - c0028b3c: 4785 li a5,1 - c0028b3e: 06a00693 li a3,106 - c0028b42: 8522 mv a0,s0 - c0028b44: c72ea0ef jal ra,c0012fb6 - c0028b48: fa0553e3 bgez a0,c0028aee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15427 + c0028d04: 6706 ld a4,64(sp) + c0028d06: 65c2 ld a1,16(sp) + c0028d08: 6662 ld a2,24(sp) + c0028d0a: 481d li a6,7 + c0028d0c: 4785 li a5,1 + c0028d0e: 06a00693 li a3,106 + c0028d12: 8522 mv a0,s0 + c0028d14: b90ea0ef jal ra,c00130a4 + c0028d18: fa0553e3 bgez a0,c0028cbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15435 fail: - c0028b4c: b7c9 j c0028b0e + c0028d1c: b7c9 j c0028cde -00000000c0028b4e : +00000000c0028d1e : js_async_from_sync_iterator_unwrap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48804 { - c0028b4e: 715d addi sp,sp,-80 - c0028b50: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48797 + c0028d1e: 715d addi sp,sp,-80 + c0028d20: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48805 return js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), - c0028b52: 670c ld a1,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48796 + c0028d22: 670c ld a1,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48804 { - c0028b54: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48797 + c0028d24: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48805 return js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), - c0028b56: 6308 ld a0,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48796 + c0028d26: 6308 ld a0,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48804 { - c0028b58: e486 sd ra,72(sp) - c0028b5a: fc26 sd s1,56(sp) - c0028b5c: 84c2 mv s1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48797 + c0028d28: e486 sd ra,72(sp) + c0028d2a: fc26 sd s1,56(sp) + c0028d2c: 84c2 mv s1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48805 return js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), - c0028b5e: b11dd0ef jal ra,c000666e - c0028b62: 6490 ld a2,8(s1) - c0028b64: f42e sd a1,40(sp) - c0028b66: 608c ld a1,0(s1) - c0028b68: f02a sd a0,32(sp) - c0028b6a: 8522 mv a0,s0 - c0028b6c: abce20ef jal ra,c000ae28 - c0028b70: 86aa mv a3,a0 - c0028b72: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48799 -} - c0028b74: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48797 + c0028d2e: a2fdd0ef jal ra,c000675c + c0028d32: 6490 ld a2,8(s1) + c0028d34: f42e sd a1,40(sp) + c0028d36: 608c ld a1,0(s1) + c0028d38: f02a sd a0,32(sp) + c0028d3a: 8522 mv a0,s0 + c0028d3c: 9dae20ef jal ra,c000af16 + c0028d40: 86aa mv a3,a0 + c0028d42: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48807 +} + c0028d44: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48805 return js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), - c0028b76: 7582 ld a1,32(sp) - c0028b78: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48799 -} - c0028b7a: 60a6 ld ra,72(sp) - c0028b7c: 74e2 ld s1,56(sp) - c0028b7e: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48797 + c0028d46: 7582 ld a1,32(sp) + c0028d48: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48807 +} + c0028d4a: 60a6 ld ra,72(sp) + c0028d4c: 74e2 ld s1,56(sp) + c0028d4e: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48805 return js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), - c0028b80: f43ff06f j c0028ac2 + c0028d50: f43ff06f j c0028c92 -00000000c0028b84 : +00000000c0028d54 : js_call_c_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15942 -{ - c0028b84: 7111 addi sp,sp,-256 - c0028b86: f9a2 sd s0,240(sp) - c0028b88: edce sd s3,216(sp) - c0028b8a: 0200 addi s0,sp,256 - c0028b8c: e1da sd s6,192(sp) - c0028b8e: fd5e sd s7,184(sp) - c0028b90: fd86 sd ra,248(sp) - c0028b92: f5a6 sd s1,232(sp) - c0028b94: f1ca sd s2,224(sp) - c0028b96: e9d2 sd s4,208(sp) - c0028b98: e5d6 sd s5,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15943 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15950 +{ + c0028d54: 7111 addi sp,sp,-256 + c0028d56: f9a2 sd s0,240(sp) + c0028d58: edce sd s3,216(sp) + c0028d5a: 0200 addi s0,sp,256 + c0028d5c: e1da sd s6,192(sp) + c0028d5e: fd5e sd s7,184(sp) + c0028d60: fd86 sd ra,248(sp) + c0028d62: f5a6 sd s1,232(sp) + c0028d64: f1ca sd s2,224(sp) + c0028d66: e9d2 sd s4,208(sp) + c0028d68: e5d6 sd s5,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15951 JSRuntime *rt = ctx->rt; - c0028b9a: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15942 + c0028d6a: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15950 { - c0028b9c: f0d43823 sd a3,-240(s0) # 7f10 <__clzdi2-0xbfff80f0> - c0028ba0: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15961 + c0028d6c: f0d43823 sd a3,-240(s0) # 7f10 <__clzdi2-0xbfff80f0> + c0028d70: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15969 sf->prev_frame = prev_sf; - c0028ba2: 7cfc ld a5,248(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15953 + c0028d72: 7cfc ld a5,248(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15961 cproto = p->u.cfunc.cproto; - c0028ba4: 0415ca03 lbu s4,65(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15954 + c0028d74: 0415ca03 lbu s4,65(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15962 arg_count = p->u.cfunc.length; - c0028ba8: 0405c503 lbu a0,64(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15961 + c0028d78: 0405c503 lbu a0,64(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15969 sf->prev_frame = prev_sf; - c0028bac: f6f43023 sd a5,-160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15962 + c0028d7c: f6f43023 sd a5,-160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15970 rt->current_stack_frame = sf; - c0028bb0: f6040793 addi a5,s0,-160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15942 + c0028d80: f6040793 addi a5,s0,-160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15950 { - c0028bb4: f0e43c23 sd a4,-232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15962 + c0028d84: f0e43c23 sd a4,-232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15970 rt->current_stack_frame = sf; - c0028bb8: fcfc sd a5,248(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15942 + c0028d88: fcfc sd a5,248(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15950 { - c0028bba: f2b43023 sd a1,-224(s0) - c0028bbe: f2c43423 sd a2,-216(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15973 + c0028d8a: f2b43023 sd a1,-224(s0) + c0028d8e: f2c43423 sd a2,-216(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15981 sf->js_mode = 0; - c0028bc2: fa042223 sw zero,-92(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15975 + c0028d92: fa042223 sw zero,-92(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15983 sf->cur_func = (JSValue)func_obj; - c0028bc6: f6b43423 sd a1,-152(s0) - c0028bca: f6c43823 sd a2,-144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15976 + c0028d96: f6b43423 sd a1,-152(s0) + c0028d9a: f6c43823 sd a2,-144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15984 sf->arg_count = argc; - c0028bce: fad42023 sw a3,-96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15963 + c0028d9e: fad42023 sw a3,-96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15971 ctx = p->u.cfunc.realm; /* change the current realm */ - c0028bd2: 0305ba83 ld s5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15942 + c0028da2: 0305ba83 ld s5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15950 { - c0028bd6: 8742 mv a4,a6 - c0028bd8: 89c6 mv s3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15952 + c0028da6: 8742 mv a4,a6 + c0028da8: 89c6 mv s3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15960 p = JS_VALUE_GET_OBJ(func_obj); - c0028bda: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15953 + c0028daa: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15961 cproto = p->u.cfunc.cproto; - c0028bdc: 000a0b9b sext.w s7,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15979 + c0028dac: 000a0b9b sext.w s7,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15987 if (unlikely(argc < arg_count)) { - c0028be0: 04a6d663 bge a3,a0,c0028c2c - c0028be4: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15981 + c0028db0: 04a6d663 bge a3,a0,c0028dfc + c0028db4: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15989 arg_buf = alloca(sizeof(arg_buf[0]) * arg_count); - c0028be8: 0512 slli a0,a0,0x4 - c0028bea: 40a10133 sub sp,sp,a0 - c0028bee: 878a mv a5,sp -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15983 + c0028db8: 0512 slli a0,a0,0x4 + c0028dba: 40a10133 sub sp,sp,a0 + c0028dbe: 878a mv a5,sp +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15991 arg_buf[i] = argv[i]; - c0028bf0: 0006861b sext.w a2,a3 - c0028bf4: 0006d363 bgez a3,c0028bfa - c0028bf8: 4601 li a2,0 - c0028bfa: 85ba mv a1,a4 - c0028bfc: 0612 slli a2,a2,0x4 - c0028bfe: 853e mv a0,a5 - c0028c00: f0d43423 sd a3,-248(s0) - c0028c04: 5d72d0ef jal ra,c00569da - c0028c08: f0843683 ld a3,-248(s0) - c0028c0c: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15985 + c0028dc0: 0006861b sext.w a2,a3 + c0028dc4: 0006d363 bgez a3,c0028dca + c0028dc8: 4601 li a2,0 + c0028dca: 85ba mv a1,a4 + c0028dcc: 0612 slli a2,a2,0x4 + c0028dce: 853e mv a0,a5 + c0028dd0: f0d43423 sd a3,-248(s0) + c0028dd4: 5d72d0ef jal ra,c0056baa + c0028dd8: f0843683 ld a3,-248(s0) + c0028ddc: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15993 arg_buf[i] = JS_UNDEFINED; - c0028c0e: 458d li a1,3 - c0028c10: 00469713 slli a4,a3,0x4 - c0028c14: 972a add a4,a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15983 + c0028dde: 458d li a1,3 + c0028de0: 00469713 slli a4,a3,0x4 + c0028de4: 972a add a4,a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15991 arg_buf[i] = argv[i]; - c0028c16: 8636 mv a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15985 (discriminator 3) + c0028de6: 8636 mv a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15993 (discriminator 3) arg_buf[i] = JS_UNDEFINED; - c0028c18: 00073023 sd zero,0(a4) - c0028c1c: e70c sd a1,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15984 (discriminator 3) + c0028de8: 00073023 sd zero,0(a4) + c0028dec: e70c sd a1,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15992 (discriminator 3) for(i = argc; i < arg_count; i++) - c0028c1e: 2605 addiw a2,a2,1 - c0028c20: 0741 addi a4,a4,16 - c0028c22: ff264be3 blt a2,s2,c0028c18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15986 + c0028dee: 2605 addiw a2,a2,1 + c0028df0: 0741 addi a4,a4,16 + c0028df2: ff264be3 blt a2,s2,c0028de8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15994 sf->arg_count = arg_count; - c0028c26: fb242023 sw s2,-96(s0) - c0028c2a: 873e mv a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15988 + c0028df6: fb242023 sw s2,-96(s0) + c0028dfa: 873e mv a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15996 sf->arg_buf = (JSValue*)arg_buf; - c0028c2c: f6e43c23 sd a4,-136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15990 + c0028dfc: f6e43c23 sd a4,-136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15998 func = p->u.cfunc.c_function; - c0028c30: 47b1 li a5,12 - c0028c32: 038b3903 ld s2,56(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15991 + c0028e00: 47b1 li a5,12 + c0028e02: 038b3903 ld s2,56(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15999 switch(cproto) { - c0028c36: 1b47ec63 bltu a5,s4,c0028dee - c0028c3a: 00037617 auipc a2,0x37 - c0028c3e: a7660613 addi a2,a2,-1418 # c005f6b0 - c0028c42: 0a0a slli s4,s4,0x2 - c0028c44: 9a32 add s4,s4,a2 - c0028c46: 000a2783 lw a5,0(s4) # 110000 <__clzdi2-0xbfef0000> - c0028c4a: 97b2 add a5,a5,a2 - c0028c4c: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15994 + c0028e06: 1b47ec63 bltu a5,s4,c0028fbe + c0028e0a: 00037617 auipc a2,0x37 + c0028e0e: b0660613 addi a2,a2,-1274 # c005f910 + c0028e12: 0a0a slli s4,s4,0x2 + c0028e14: 9a32 add s4,s4,a2 + c0028e16: 000a2783 lw a5,0(s4) # 110000 <__clzdi2-0xbfef0000> + c0028e1a: 97b2 add a5,a5,a2 + c0028e1c: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16002 if (!(flags & JS_CALL_FLAG_CONSTRUCTOR)) { - c0028c4e: 0019f993 andi s3,s3,1 - c0028c52: 04099b63 bnez s3,c0028ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15995 + c0028e1e: 0019f993 andi s3,s3,1 + c0028e22: 04099b63 bnez s3,c0028e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16003 if (cproto == JS_CFUNC_constructor) { - c0028c56: 4789 li a5,2 - c0028c58: 04fb9363 bne s7,a5,c0028c9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15997 + c0028e26: 4789 li a5,2 + c0028e28: 04fb9363 bne s7,a5,c0028e6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16005 ret_val = JS_ThrowTypeError(ctx, "must be called with new"); - c0028c5c: 00037597 auipc a1,0x37 - c0028c60: a3c58593 addi a1,a1,-1476 # c005f698 - c0028c64: 8556 mv a0,s5 - c0028c66: f90ea0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16006 + c0028e2c: 00037597 auipc a1,0x37 + c0028e30: acc58593 addi a1,a1,-1332 # c005f8f8 + c0028e34: 8556 mv a0,s5 + c0028e36: eaeea0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16014 ret_val = func.generic(ctx, this_obj, argc, arg_buf); - c0028c6a: f4a43023 sd a0,-192(s0) - c0028c6e: 0005079b sext.w a5,a0 - c0028c72: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16074 + c0028e3a: f4a43023 sd a0,-192(s0) + c0028e3e: 0005079b sext.w a5,a0 + c0028e42: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16082 rt->current_stack_frame = sf->prev_frame; - c0028c74: f6043703 ld a4,-160(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16075 + c0028e44: f6043703 ld a4,-160(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16083 return ret_val; - c0028c78: f4f42023 sw a5,-192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16076 + c0028e48: f4f42023 sw a5,-192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16084 } - c0028c7c: f4043503 ld a0,-192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16074 + c0028e4c: f4043503 ld a0,-192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16082 rt->current_stack_frame = sf->prev_frame; - c0028c80: fcf8 sd a4,248(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16076 -} - c0028c82: f0040113 addi sp,s0,-256 - c0028c86: 70ee ld ra,248(sp) - c0028c88: 744e ld s0,240(sp) - c0028c8a: 74ae ld s1,232(sp) - c0028c8c: 790e ld s2,224(sp) - c0028c8e: 69ee ld s3,216(sp) - c0028c90: 6a4e ld s4,208(sp) - c0028c92: 6aae ld s5,200(sp) - c0028c94: 6b0e ld s6,192(sp) - c0028c96: 7bea ld s7,184(sp) - c0028c98: 85b2 mv a1,a2 - c0028c9a: 6111 addi sp,sp,256 - c0028c9c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16000 + c0028e50: fcf8 sd a4,248(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16084 +} + c0028e52: f0040113 addi sp,s0,-256 + c0028e56: 70ee ld ra,248(sp) + c0028e58: 744e ld s0,240(sp) + c0028e5a: 74ae ld s1,232(sp) + c0028e5c: 790e ld s2,224(sp) + c0028e5e: 69ee ld s3,216(sp) + c0028e60: 6a4e ld s4,208(sp) + c0028e62: 6aae ld s5,200(sp) + c0028e64: 6b0e ld s6,192(sp) + c0028e66: 7bea ld s7,184(sp) + c0028e68: 85b2 mv a1,a2 + c0028e6a: 6111 addi sp,sp,256 + c0028e6c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16008 this_obj = JS_UNDEFINED; - c0028c9e: 478d li a5,3 - c0028ca0: f0043823 sd zero,-240(s0) - c0028ca4: f0f43c23 sd a5,-232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16006 + c0028e6e: 478d li a5,3 + c0028e70: f0043823 sd zero,-240(s0) + c0028e74: f0f43c23 sd a5,-232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16014 ret_val = func.generic(ctx, this_obj, argc, arg_buf); - c0028ca8: f1043583 ld a1,-240(s0) - c0028cac: f1843603 ld a2,-232(s0) - c0028cb0: 8556 mv a0,s5 - c0028cb2: 9902 jalr s2 - c0028cb4: bf5d j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16010 + c0028e78: f1043583 ld a1,-240(s0) + c0028e7c: f1843603 ld a2,-232(s0) + c0028e80: 8556 mv a0,s5 + c0028e82: 9902 jalr s2 + c0028e84: bf5d j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16018 if (!(flags & JS_CALL_FLAG_CONSTRUCTOR)) { - c0028cb6: 0019f993 andi s3,s3,1 - c0028cba: 00099963 bnez s3,c0028ccc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16011 + c0028e86: 0019f993 andi s3,s3,1 + c0028e8a: 00099963 bnez s3,c0028e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16019 if (cproto == JS_CFUNC_constructor_magic) { - c0028cbe: 478d li a5,3 - c0028cc0: f8fb8ee3 beq s7,a5,c0028c5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16014 + c0028e8e: 478d li a5,3 + c0028e90: f8fb8ee3 beq s7,a5,c0028e2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16022 this_obj = JS_UNDEFINED; - c0028cc4: f0043823 sd zero,-240(s0) - c0028cc8: f0f43c23 sd a5,-232(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16019 + c0028e94: f0043823 sd zero,-240(s0) + c0028e98: f0f43c23 sd a5,-232(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16027 ret_val = func.generic_magic(ctx, this_obj, argc, arg_buf, - c0028ccc: 042b1783 lh a5,66(s6) - c0028cd0: f1043583 ld a1,-240(s0) - c0028cd4: f1843603 ld a2,-232(s0) - c0028cd8: 8556 mv a0,s5 - c0028cda: 9902 jalr s2 - c0028cdc: b779 j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16023 + c0028e9c: 042b1783 lh a5,66(s6) + c0028ea0: f1043583 ld a1,-240(s0) + c0028ea4: f1843603 ld a2,-232(s0) + c0028ea8: 8556 mv a0,s5 + c0028eaa: 9902 jalr s2 + c0028eac: b779 j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16031 ret_val = func.getter(ctx, this_obj); - c0028cde: f1043583 ld a1,-240(s0) - c0028ce2: f1843603 ld a2,-232(s0) - c0028ce6: 8556 mv a0,s5 - c0028ce8: 9902 jalr s2 - c0028cea: b741 j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16026 + c0028eae: f1043583 ld a1,-240(s0) + c0028eb2: f1843603 ld a2,-232(s0) + c0028eb6: 8556 mv a0,s5 + c0028eb8: 9902 jalr s2 + c0028eba: b741 j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16034 ret_val = func.setter(ctx, this_obj, arg_buf[0]); - c0028cec: 6314 ld a3,0(a4) - c0028cee: f1043583 ld a1,-240(s0) - c0028cf2: 6718 ld a4,8(a4) - c0028cf4: f1843603 ld a2,-232(s0) - c0028cf8: 8556 mv a0,s5 - c0028cfa: 9902 jalr s2 - c0028cfc: b7bd j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16029 + c0028ebc: 6314 ld a3,0(a4) + c0028ebe: f1043583 ld a1,-240(s0) + c0028ec2: 6718 ld a4,8(a4) + c0028ec4: f1843603 ld a2,-232(s0) + c0028ec8: 8556 mv a0,s5 + c0028eca: 9902 jalr s2 + c0028ecc: b7bd j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16037 ret_val = func.getter_magic(ctx, this_obj, p->u.cfunc.magic); - c0028cfe: 042b1683 lh a3,66(s6) - c0028d02: f1043583 ld a1,-240(s0) - c0028d06: f1843603 ld a2,-232(s0) - c0028d0a: 8556 mv a0,s5 - c0028d0c: 9902 jalr s2 - c0028d0e: bfb1 j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16032 + c0028ece: 042b1683 lh a3,66(s6) + c0028ed2: f1043583 ld a1,-240(s0) + c0028ed6: f1843603 ld a2,-232(s0) + c0028eda: 8556 mv a0,s5 + c0028edc: 9902 jalr s2 + c0028ede: bfb1 j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16040 ret_val = func.setter_magic(ctx, this_obj, arg_buf[0], p->u.cfunc.magic); - c0028d10: 6314 ld a3,0(a4) - c0028d12: 042b1783 lh a5,66(s6) - c0028d16: 6718 ld a4,8(a4) - c0028d18: f1043583 ld a1,-240(s0) - c0028d1c: f1843603 ld a2,-232(s0) - c0028d20: 8556 mv a0,s5 - c0028d22: 9902 jalr s2 - c0028d24: b799 j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16038 + c0028ee0: 6314 ld a3,0(a4) + c0028ee2: 042b1783 lh a5,66(s6) + c0028ee6: 6718 ld a4,8(a4) + c0028ee8: f1043583 ld a1,-240(s0) + c0028eec: f1843603 ld a2,-232(s0) + c0028ef0: 8556 mv a0,s5 + c0028ef2: 9902 jalr s2 + c0028ef4: b799 j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16046 if (unlikely(JS_ToFloat64(ctx, &d1, arg_buf[0]))) { - c0028d26: 6310 ld a2,0(a4) - c0028d28: 6714 ld a3,8(a4) - c0028d2a: f3840593 addi a1,s0,-200 - c0028d2e: 8556 mv a0,s5 - c0028d30: 95ff30ef jal ra,c001c68e - c0028d34: c511 beqz a0,c0028d40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16050 + c0028ef6: 6310 ld a2,0(a4) + c0028ef8: 6714 ld a3,8(a4) + c0028efa: f3840593 addi a1,s0,-200 + c0028efe: 8556 mv a0,s5 + c0028f00: 95ff30ef jal ra,c001c85e + c0028f04: c511 beqz a0,c0028f10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16058 ret_val = JS_EXCEPTION; - c0028d36: f4042223 sw zero,-188(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16051 + c0028f06: f4042223 sw zero,-188(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16059 break; - c0028d3a: 4619 li a2,6 - c0028d3c: 4781 li a5,0 - c0028d3e: bf1d j c0028c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16042 + c0028f0a: 4619 li a2,6 + c0028f0c: 4781 li a5,0 + c0028f0e: bf1d j c0028e44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16050 ret_val = JS_NewFloat64(ctx, func.f_f(d1)); - c0028d40: f3843507 fld fa0,-200(s0) - c0028d44: 9902 jalr s2 + c0028f10: f3843507 fld fa0,-200(s0) + c0028f14: 9902 jalr s2 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0028d46: c2051653 fcvt.w.d a2,fa0,rtz + c0028f16: c2051653 fcvt.w.d a2,fa0,rtz js_call_c_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16057 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16065 ret_val = JS_NewFloat64(ctx, func.f_f_f(d1, d2)); - c0028d4a: e2050753 fmv.x.d a4,fa0 + c0028f1a: e2050753 fmv.x.d a4,fa0 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0028d4e: d20607d3 fcvt.d.w fa5,a2 + c0028f1e: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0028d52: 0006079b sext.w a5,a2 + c0028f22: 0006079b sext.w a5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0028d56: e2078653 fmv.x.d a2,fa5 - c0028d5a: 04c71663 bne a4,a2,c0028da6 + c0028f26: e2078653 fmv.x.d a2,fa5 + c0028f2a: 04c71663 bne a4,a2,c0028f76 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c0028d5e: f4042a23 sw zero,-172(s0) - c0028d62: 4601 li a2,0 + c0028f2e: f4042a23 sw zero,-172(s0) + c0028f32: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0028d64: f4f42823 sw a5,-176(s0) - c0028d68: f5043787 fld fa5,-176(s0) - c0028d6c: f4f43027 fsd fa5,-192(s0) + c0028f34: f4f42823 sw a5,-176(s0) + c0028f38: f5043787 fld fa5,-176(s0) + c0028f3c: f4f43027 fsd fa5,-192(s0) js_call_c_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16059 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16067 break; - c0028d70: b711 j c0028c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16049 + c0028f40: b711 j c0028e44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16057 if (unlikely(JS_ToFloat64(ctx, &d1, arg_buf[0]))) { - c0028d72: 6310 ld a2,0(a4) - c0028d74: 6714 ld a3,8(a4) - c0028d76: f3040593 addi a1,s0,-208 - c0028d7a: 8556 mv a0,s5 - c0028d7c: f0e43423 sd a4,-248(s0) - c0028d80: 90ff30ef jal ra,c001c68e - c0028d84: f0843703 ld a4,-248(s0) - c0028d88: f55d bnez a0,c0028d36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16053 + c0028f42: 6310 ld a2,0(a4) + c0028f44: 6714 ld a3,8(a4) + c0028f46: f3040593 addi a1,s0,-208 + c0028f4a: 8556 mv a0,s5 + c0028f4c: f0e43423 sd a4,-248(s0) + c0028f50: 90ff30ef jal ra,c001c85e + c0028f54: f0843703 ld a4,-248(s0) + c0028f58: f55d bnez a0,c0028f06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16061 if (unlikely(JS_ToFloat64(ctx, &d2, arg_buf[1]))) { - c0028d8a: 6b10 ld a2,16(a4) - c0028d8c: 6f14 ld a3,24(a4) - c0028d8e: f3840593 addi a1,s0,-200 - c0028d92: 8556 mv a0,s5 - c0028d94: 8fbf30ef jal ra,c001c68e - c0028d98: fd59 bnez a0,c0028d36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16057 + c0028f5a: 6b10 ld a2,16(a4) + c0028f5c: 6f14 ld a3,24(a4) + c0028f5e: f3840593 addi a1,s0,-200 + c0028f62: 8556 mv a0,s5 + c0028f64: 8fbf30ef jal ra,c001c85e + c0028f68: fd59 bnez a0,c0028f06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16065 ret_val = JS_NewFloat64(ctx, func.f_f_f(d1, d2)); - c0028d9a: f3843587 fld fa1,-200(s0) - c0028d9e: f3043507 fld fa0,-208(s0) - c0028da2: 9902 jalr s2 - c0028da4: b74d j c0028d46 + c0028f6a: f3843587 fld fa1,-200(s0) + c0028f6e: f3043507 fld fa0,-208(s0) + c0028f72: 9902 jalr s2 + c0028f74: b74d j c0028f16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0028da6: f4a43827 fsd fa0,-176(s0) - c0028daa: 0007079b sext.w a5,a4 + c0028f76: f4a43827 fsd fa0,-176(s0) + c0028f7a: 0007079b sext.w a5,a4 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0028dae: 461d li a2,7 - c0028db0: bf55 j c0028d64 + c0028f7e: 461d li a2,7 + c0028f80: bf55 j c0028f34 js_call_c_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16071 ret_val = func.iterator_next(ctx, this_obj, argc, arg_buf, - c0028db2: f1843603 ld a2,-232(s0) - c0028db6: 042b1803 lh a6,66(s6) - c0028dba: f1043583 ld a1,-240(s0) - c0028dbe: f5040793 addi a5,s0,-176 - c0028dc2: 8556 mv a0,s5 - c0028dc4: 9902 jalr s2 - c0028dc6: f4a43023 sd a0,-192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16065 + c0028f82: f1843603 ld a2,-232(s0) + c0028f86: 042b1803 lh a6,66(s6) + c0028f8a: f1043583 ld a1,-240(s0) + c0028f8e: f5040793 addi a5,s0,-176 + c0028f92: 8556 mv a0,s5 + c0028f94: 9902 jalr s2 + c0028f96: f4a43023 sd a0,-192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16073 if (!JS_IsException(ret_val) && done != 2) { - c0028dca: 0005869b sext.w a3,a1 - c0028dce: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16063 + c0028f9a: 0005869b sext.w a3,a1 + c0028f9e: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16071 ret_val = func.iterator_next(ctx, this_obj, argc, arg_buf, - c0028dd0: 0005079b sext.w a5,a0 - c0028dd4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16065 + c0028fa0: 0005079b sext.w a5,a0 + c0028fa4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16073 if (!JS_IsException(ret_val) && done != 2) { - c0028dd6: e8e68fe3 beq a3,a4,c0028c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16065 (discriminator 1) - c0028dda: f5042683 lw a3,-176(s0) - c0028dde: 4709 li a4,2 - c0028de0: e8e68ae3 beq a3,a4,c0028c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16066 + c0028fa6: e8e68fe3 beq a3,a4,c0028e44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16073 (discriminator 1) + c0028faa: f5042683 lw a3,-176(s0) + c0028fae: 4709 li a4,2 + c0028fb0: e8e68ae3 beq a3,a4,c0028e44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16074 ret_val = js_create_iterator_result(ctx, ret_val, done); - c0028de4: 85aa mv a1,a0 - c0028de6: 8556 mv a0,s5 - c0028de8: cdbff0ef jal ra,c0028ac2 - c0028dec: bdbd j c0028c6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16071 + c0028fb4: 85aa mv a1,a0 + c0028fb6: 8556 mv a0,s5 + c0028fb8: cdbff0ef jal ra,c0028c92 + c0028fbc: bdbd j c0028e3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16079 abort(); - c0028dee: 21d2c0ef jal ra,c005580a + c0028fbe: 21d2c0ef jal ra,c00559da -00000000c0028df2 : +00000000c0028fc2 : js_function_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5006 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5014 { - c0028df2: 711d addi sp,sp,-96 + c0028fc2: 711d addi sp,sp,-96 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0028df4: f802 sd zero,48(sp) - c0028df6: d83a sw a4,48(sp) + c0028fc4: f802 sd zero,48(sp) + c0028fc6: d83a sw a4,48(sp) js_function_set_properties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5017 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_length, JS_NewInt32(ctx, len), - c0028df8: 7742 ld a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5006 + c0028fc8: 7742 ld a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5014 { - c0028dfa: e4a6 sd s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 + c0028fca: e4a6 sd s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5017 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_length, JS_NewInt32(ctx, len), - c0028dfc: 4805 li a6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5006 + c0028fcc: 4805 li a6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5014 { - c0028dfe: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 + c0028fce: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5017 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_length, JS_NewInt32(ctx, len), - c0028e00: 4781 li a5,0 - c0028e02: 03000693 li a3,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5006 -{ - c0028e06: ec86 sd ra,88(sp) - c0028e08: e8a2 sd s0,80(sp) - c0028e0a: e432 sd a2,8(sp) - c0028e0c: 842a mv s0,a0 - c0028e0e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5009 + c0028fd0: 4781 li a5,0 + c0028fd2: 03000693 li a3,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5014 +{ + c0028fd6: ec86 sd ra,88(sp) + c0028fd8: e8a2 sd s0,80(sp) + c0028fda: e432 sd a2,8(sp) + c0028fdc: 842a mv s0,a0 + c0028fde: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5017 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_length, JS_NewInt32(ctx, len), - c0028e10: 9a6ea0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5012 + c0028fe0: 8c4ea0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5020 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, - c0028e14: 85a6 mv a1,s1 - c0028e16: 8522 mv a0,s0 - c0028e18: d25f00ef jal ra,c0019b3c - c0028e1c: 872a mv a4,a0 - c0028e1e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5015 -} - c0028e20: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5012 + c0028fe4: 85a6 mv a1,s1 + c0028fe6: 8522 mv a0,s0 + c0028fe8: d25f00ef jal ra,c0019d0c + c0028fec: 872a mv a4,a0 + c0028fee: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5023 +} + c0028ff0: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5020 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, - c0028e22: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5015 + c0028ff2: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5023 } - c0028e24: 60e6 ld ra,88(sp) - c0028e26: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5012 + c0028ff4: 60e6 ld ra,88(sp) + c0028ff6: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5020 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, - c0028e28: 87ae mv a5,a1 - c0028e2a: 6582 ld a1,0(sp) - c0028e2c: 4805 li a6,1 - c0028e2e: 03700693 li a3,55 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5015 -} - c0028e32: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5012 + c0028ff8: 87ae mv a5,a1 + c0028ffa: 6582 ld a1,0(sp) + c0028ffc: 4805 li a6,1 + c0028ffe: 03700693 li a3,55 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5023 +} + c0029002: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5020 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, - c0028e34: 982ea06f j c0012fb6 + c0029004: 8a0ea06f j c00130a4 -00000000c0028e38 : +00000000c0029008 : js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47976 { - c0028e38: 7159 addi sp,sp,-112 - c0028e3a: fc56 sd s5,56(sp) - c0028e3c: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47974 + c0029008: 7159 addi sp,sp,-112 + c002900a: fc56 sd s5,56(sp) + c002900c: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47982 sr = js_malloc(ctx, sizeof(*sr)); - c0028e3e: 45a1 li a1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47968 + c002900e: 45a1 li a1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47976 { - c0028e40: eca6 sd s1,88(sp) - c0028e42: e8ca sd s2,80(sp) - c0028e44: f486 sd ra,104(sp) - c0028e46: f0a2 sd s0,96(sp) - c0028e48: e4ce sd s3,72(sp) - c0028e4a: e0d2 sd s4,64(sp) - c0028e4c: f85a sd s6,48(sp) - c0028e4e: f45e sd s7,40(sp) - c0028e50: f062 sd s8,32(sp) - c0028e52: 84aa mv s1,a0 - c0028e54: e032 sd a2,0(sp) - c0028e56: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47974 + c0029010: eca6 sd s1,88(sp) + c0029012: e8ca sd s2,80(sp) + c0029014: f486 sd ra,104(sp) + c0029016: f0a2 sd s0,96(sp) + c0029018: e4ce sd s3,72(sp) + c002901a: e0d2 sd s4,64(sp) + c002901c: f85a sd s6,48(sp) + c002901e: f45e sd s7,40(sp) + c0029020: f062 sd s8,32(sp) + c0029022: 84aa mv s1,a0 + c0029024: e032 sd a2,0(sp) + c0029026: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47982 sr = js_malloc(ctx, sizeof(*sr)); - c0028e58: df5eb0ef jal ra,c0014c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47976 + c0029028: d13eb0ef jal ra,c0014d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47984 return -1; - c0028e5c: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47975 + c002902c: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47983 if (!sr) - c0028e5e: c535 beqz a0,c0028eca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47977 + c002902e: c535 beqz a0,c002909a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47985 sr->ref_count = 1; - c0028e60: 4785 li a5,1 - c0028e62: 842a mv s0,a0 - c0028e64: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47978 + c0029030: 4785 li a5,1 + c0029032: 842a mv s0,a0 + c0029034: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47986 sr->already_resolved = FALSE; /* must be shared between the two functions */ - c0028e66: 00052223 sw zero,4(a0) - c0028e6a: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47983 + c0029036: 00052223 sw zero,4(a0) + c002903a: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47991 if (JS_IsException(obj)) - c0028e6c: 4b19 li s6,6 + c002903c: 4b19 li s6,6 JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0028e6e: 5bfd li s7,-1 + c002903e: 5bfd li s7,-1 js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47981 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47989 obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0028e70: 64ac ld a1,72(s1) - c0028e72: 68b0 ld a2,80(s1) - c0028e74: 02ea0693 addi a3,s4,46 - c0028e78: 8526 mv a0,s1 - c0028e7a: 90fed0ef jal ra,c0016788 - c0028e7e: e82a sd a0,16(sp) - c0028e80: ec2e sd a1,24(sp) + c0029040: 64ac ld a1,72(s1) + c0029042: 68b0 ld a2,80(s1) + c0029044: 02ea0693 addi a3,s4,46 + c0029048: 8526 mv a0,s1 + c002904a: 90fed0ef jal ra,c0016958 + c002904e: e82a sd a0,16(sp) + c0029050: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0028e82: 0005899b sext.w s3,a1 - c0028e86: 000a0c1b sext.w s8,s4 + c0029052: 0005899b sext.w s3,a1 + c0029056: 000a0c1b sext.w s8,s4 js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47983 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47991 if (JS_IsException(obj)) - c0028e8a: 01698d63 beq s3,s6,c0028ea4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47985 + c002905a: 01698d63 beq s3,s6,c0029074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47993 s = js_malloc(ctx, sizeof(*s)); - c0028e8e: 45e1 li a1,24 - c0028e90: 8526 mv a0,s1 - c0028e92: dbbeb0ef jal ra,c0014c4c - c0028e96: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47986 + c002905e: 45e1 li a1,24 + c0029060: 8526 mv a0,s1 + c0029062: cd9eb0ef jal ra,c0014d3a + c0029066: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47994 if (!s) { - c0028e98: e921 bnez a0,c0028ee8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47987 + c0029068: e921 bnez a0,c00290b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47995 JS_FreeValue(ctx, obj); - c0028e9a: 65c2 ld a1,16(sp) - c0028e9c: 6662 ld a2,24(sp) - c0028e9e: 8526 mv a0,s1 - c0028ea0: c99de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47992 + c002906a: 65c2 ld a1,16(sp) + c002906c: 6662 ld a2,24(sp) + c002906e: 8526 mv a0,s1 + c0029070: bb7de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48000 ret = -1; - c0028ea4: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47990 + c0029074: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47998 if (i != 0) - c0028ea6: 000c0963 beqz s8,c0028eb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47991 + c0029076: 000c0963 beqz s8,c0029088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47999 JS_FreeValue(ctx, resolving_funcs[0]); - c0028eaa: 000ab583 ld a1,0(s5) - c0028eae: 008ab603 ld a2,8(s5) - c0028eb2: 8526 mv a0,s1 - c0028eb4: c85de0ef jal ra,c0007b38 + c002907a: 000ab583 ld a1,0(s5) + c002907e: 008ab603 ld a2,8(s5) + c0029082: 8526 mv a0,s1 + c0029084: ba3de0ef jal ra,c0007c26 js_promise_resolve_function_free_resolved(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47959 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47967 if (--sr->ref_count == 0) { - c0028eb8: 401c lw a5,0(s0) + c0029088: 401c lw a5,0(s0) js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48010 js_promise_resolve_function_free_resolved(ctx->rt, sr); - c0028eba: 6c88 ld a0,24(s1) + c002908a: 6c88 ld a0,24(s1) js_promise_resolve_function_free_resolved(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47959 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47967 if (--sr->ref_count == 0) { - c0028ebc: fff7871b addiw a4,a5,-1 - c0028ec0: c018 sw a4,0(s0) - c0028ec2: e701 bnez a4,c0028eca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47960 + c002908c: fff7871b addiw a4,a5,-1 + c0029090: c018 sw a4,0(s0) + c0029092: e701 bnez a4,c002909a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47968 js_free_rt(rt, sr); - c0028ec4: 85a2 mv a1,s0 - c0028ec6: ce1dd0ef jal ra,c0006ba6 + c0029094: 85a2 mv a1,s0 + c0029096: bffdd0ef jal ra,c0006c94 js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48004 -} - c0028eca: 70a6 ld ra,104(sp) - c0028ecc: 7406 ld s0,96(sp) - c0028ece: 64e6 ld s1,88(sp) - c0028ed0: 69a6 ld s3,72(sp) - c0028ed2: 6a06 ld s4,64(sp) - c0028ed4: 7ae2 ld s5,56(sp) - c0028ed6: 7b42 ld s6,48(sp) - c0028ed8: 7ba2 ld s7,40(sp) - c0028eda: 7c02 ld s8,32(sp) - c0028edc: 854a mv a0,s2 - c0028ede: 6946 ld s2,80(sp) - c0028ee0: 6165 addi sp,sp,112 - c0028ee2: 8082 ret - c0028ee4: 4a05 li s4,1 - c0028ee6: b769 j c0028e70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47995 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48012 +} + c002909a: 70a6 ld ra,104(sp) + c002909c: 7406 ld s0,96(sp) + c002909e: 64e6 ld s1,88(sp) + c00290a0: 69a6 ld s3,72(sp) + c00290a2: 6a06 ld s4,64(sp) + c00290a4: 7ae2 ld s5,56(sp) + c00290a6: 7b42 ld s6,48(sp) + c00290a8: 7ba2 ld s7,40(sp) + c00290aa: 7c02 ld s8,32(sp) + c00290ac: 854a mv a0,s2 + c00290ae: 6946 ld s2,80(sp) + c00290b0: 6165 addi sp,sp,112 + c00290b2: 8082 ret + c00290b4: 4a05 li s4,1 + c00290b6: b769 j c0029040 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48003 (discriminator 2) sr->ref_count++; - c0028ee8: 401c lw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47997 (discriminator 2) + c00290b8: 401c lw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48005 (discriminator 2) s->promise = JS_DupValue(ctx, promise); - c0028eea: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47995 (discriminator 2) + c00290ba: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48003 (discriminator 2) sr->ref_count++; - c0028eec: 2785 addiw a5,a5,1 - c0028eee: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47996 (discriminator 2) + c00290bc: 2785 addiw a5,a5,1 + c00290be: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48004 (discriminator 2) s->presolved = sr; - c0028ef0: e900 sd s0,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47997 (discriminator 2) + c00290c0: e900 sd s0,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48005 (discriminator 2) s->promise = JS_DupValue(ctx, promise); - c0028ef2: 6502 ld a0,0(sp) - c0028ef4: f7add0ef jal ra,c000666e - c0028ef8: 00a93023 sd a0,0(s2) - c0028efc: 00b93423 sd a1,8(s2) + c00290c2: 6502 ld a0,0(sp) + c00290c4: e98dd0ef jal ra,c000675c + c00290c8: 00a93023 sd a0,0(s2) + c00290cc: 00b93423 sd a1,8(s2) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 (discriminator 2) if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0028f00: 01799563 bne s3,s7,c0028f0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c00290d0: 01799563 bne s3,s7,c00290da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0028f04: 67c2 ld a5,16(sp) - c0028f06: 0327b823 sd s2,48(a5) # ffffffff80000030 <_ebss+0xfffffffebfefef0a> + c00290d4: 67c2 ld a5,16(sp) + c00290d6: 0327b823 sd s2,48(a5) # ffffffff80000030 <_ebss+0xfffffffebfefef0a> js_create_resolving_functions(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47999 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48007 js_function_set_properties(ctx, obj, JS_ATOM_empty_string, 1); - c0028f0a: 65c2 ld a1,16(sp) - c0028f0c: 6662 ld a2,24(sp) - c0028f0e: 4705 li a4,1 - c0028f10: 02f00693 li a3,47 - c0028f14: 8526 mv a0,s1 - c0028f16: eddff0ef jal ra,c0028df2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48000 + c00290da: 65c2 ld a1,16(sp) + c00290dc: 6662 ld a2,24(sp) + c00290de: 4705 li a4,1 + c00290e0: 02f00693 li a3,47 + c00290e4: 8526 mv a0,s1 + c00290e6: eddff0ef jal ra,c0028fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48008 resolving_funcs[i] = obj; - c0028f1a: 6742 ld a4,16(sp) - c0028f1c: 004a1793 slli a5,s4,0x4 - c0028f20: 97d6 add a5,a5,s5 - c0028f22: e398 sd a4,0(a5) - c0028f24: 6762 ld a4,24(sp) - c0028f26: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47980 + c00290ea: 6742 ld a4,16(sp) + c00290ec: 004a1793 slli a5,s4,0x4 + c00290f0: 97d6 add a5,a5,s5 + c00290f2: e398 sd a4,0(a5) + c00290f4: 6762 ld a4,24(sp) + c00290f6: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47988 for(i = 0; i < 2; i++) { - c0028f28: fa0a0ee3 beqz s4,c0028ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47979 + c00290f8: fa0a0ee3 beqz s4,c00290b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47987 ret = 0; - c0028f2c: 4901 li s2,0 - c0028f2e: b769 j c0028eb8 + c00290fc: 4901 li s2,0 + c00290fe: b769 j c0029088 -00000000c0028f30 : +00000000c0029100 : JS_NewCFunction3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5102 -{ - c0028f30: 7175 addi sp,sp,-144 - c0028f32: f4ce sd s3,104(sp) - c0028f34: ecd6 sd s5,88(sp) - c0028f36: e0e2 sd s8,64(sp) - c0028f38: 89aa mv s3,a0 - c0028f3a: 8c2e mv s8,a1 - c0028f3c: 8ab2 mv s5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5110 +{ + c0029100: 7175 addi sp,sp,-144 + c0029102: f4ce sd s3,104(sp) + c0029104: ecd6 sd s5,88(sp) + c0029106: e0e2 sd s8,64(sp) + c0029108: 89aa mv s3,a0 + c002910a: 8c2e mv s8,a1 + c002910c: 8ab2 mv s5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5115 _d("JS_NewCFunction3: 0="); _d(debug_expr); _d("\n"); //// - c0028f3e: 00036597 auipc a1,0x36 - c0028f42: 7aa58593 addi a1,a1,1962 # c005f6e8 - c0028f46: 4651 li a2,20 - c0028f48: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5102 -{ - c0028f4a: e506 sd ra,136(sp) - c0028f4c: e842 sd a6,16(sp) - c0028f4e: ec46 sd a7,24(sp) - c0028f50: e122 sd s0,128(sp) - c0028f52: fca6 sd s1,120(sp) - c0028f54: f8ca sd s2,112(sp) - c0028f56: 84ba mv s1,a4 - c0028f58: f0d2 sd s4,96(sp) - c0028f5a: e8da sd s6,80(sp) - c0028f5c: e4de sd s7,72(sp) - c0028f5e: 8b36 mv s6,a3 - c0028f60: 8bbe mv s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5107 + c002910e: 00037597 auipc a1,0x37 + c0029112: 83a58593 addi a1,a1,-1990 # c005f948 + c0029116: 4651 li a2,20 + c0029118: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5110 +{ + c002911a: e506 sd ra,136(sp) + c002911c: e842 sd a6,16(sp) + c002911e: ec46 sd a7,24(sp) + c0029120: e122 sd s0,128(sp) + c0029122: fca6 sd s1,120(sp) + c0029124: f8ca sd s2,112(sp) + c0029126: 84ba mv s1,a4 + c0029128: f0d2 sd s4,96(sp) + c002912a: e8da sd s6,80(sp) + c002912c: e4de sd s7,72(sp) + c002912e: 8b36 mv s6,a3 + c0029130: 8bbe mv s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5115 _d("JS_NewCFunction3: 0="); _d(debug_expr); _d("\n"); //// - c0028f62: 000d8917 auipc s2,0xd8 - c0028f66: 18e90913 addi s2,s2,398 # c01010f0 - c0028f6a: 6de2e0ef jal ra,c0057648 - c0028f6e: 00093583 ld a1,0(s2) - c0028f72: 852e mv a0,a1 - c0028f74: e42e sd a1,8(sp) - c0028f76: 23b2d0ef jal ra,c00569b0 - c0028f7a: 65a2 ld a1,8(sp) - c0028f7c: 862a mv a2,a0 - c0028f7e: 4505 li a0,1 - c0028f80: 6c82e0ef jal ra,c0057648 - c0028f84: 4605 li a2,1 - c0028f86: 00048597 auipc a1,0x48 - c0028f8a: bba58593 addi a1,a1,-1094 # c0070b40 - c0028f8e: 4505 li a0,1 - c0028f90: 6b82e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5108 + c0029132: 000d8917 auipc s2,0xd8 + c0029136: fbe90913 addi s2,s2,-66 # c01010f0 + c002913a: 6de2e0ef jal ra,c0057818 + c002913e: 00093583 ld a1,0(s2) + c0029142: 852e mv a0,a1 + c0029144: e42e sd a1,8(sp) + c0029146: 23b2d0ef jal ra,c0056b80 + c002914a: 65a2 ld a1,8(sp) + c002914c: 862a mv a2,a0 + c002914e: 4505 li a0,1 + c0029150: 6c82e0ef jal ra,c0057818 + c0029154: 4605 li a2,1 + c0029156: 00048597 auipc a1,0x48 + c002915a: c4a58593 addi a1,a1,-950 # c0070da0 + c002915e: 4505 li a0,1 + c0029160: 6b82e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5116 func_obj = JS_NewObjectProtoClass(ctx, proto_val, JS_CLASS_C_FUNCTION); - c0028f94: 6662 ld a2,24(sp) - c0028f96: 65c2 ld a1,16(sp) - c0028f98: 46b1 li a3,12 - c0028f9a: 854e mv a0,s3 - c0028f9c: feced0ef jal ra,c0016788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5109 + c0029164: 6662 ld a2,24(sp) + c0029166: 65c2 ld a1,16(sp) + c0029168: 46b1 li a3,12 + c002916a: 854e mv a0,s3 + c002916c: feced0ef jal ra,c0016958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5117 _d("JS_NewCFunction3: 1="); _d(debug_expr); _d("\n"); //// - c0028fa0: 4651 li a2,20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5108 + c0029170: 4651 li a2,20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5116 func_obj = JS_NewObjectProtoClass(ctx, proto_val, JS_CLASS_C_FUNCTION); - c0028fa2: 8a2e mv s4,a1 - c0028fa4: f02a sd a0,32(sp) - c0028fa6: f42e sd a1,40(sp) - c0028fa8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5109 + c0029172: 8a2e mv s4,a1 + c0029174: f02a sd a0,32(sp) + c0029176: f42e sd a1,40(sp) + c0029178: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5117 _d("JS_NewCFunction3: 1="); _d(debug_expr); _d("\n"); //// - c0028faa: 00036597 auipc a1,0x36 - c0028fae: 75658593 addi a1,a1,1878 # c005f700 - c0028fb2: 4505 li a0,1 - c0028fb4: 6942e0ef jal ra,c0057648 - c0028fb8: 00093583 ld a1,0(s2) - c0028fbc: 852e mv a0,a1 - c0028fbe: e42e sd a1,8(sp) - c0028fc0: 1f12d0ef jal ra,c00569b0 - c0028fc4: 65a2 ld a1,8(sp) - c0028fc6: 862a mv a2,a0 - c0028fc8: 4505 li a0,1 - c0028fca: 67e2e0ef jal ra,c0057648 - c0028fce: 4605 li a2,1 - c0028fd0: 00048597 auipc a1,0x48 - c0028fd4: b7058593 addi a1,a1,-1168 # c0070b40 - c0028fd8: 4505 li a0,1 - c0028fda: 66e2e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5110 + c002917a: 00036597 auipc a1,0x36 + c002917e: 7e658593 addi a1,a1,2022 # c005f960 + c0029182: 4505 li a0,1 + c0029184: 6942e0ef jal ra,c0057818 + c0029188: 00093583 ld a1,0(s2) + c002918c: 852e mv a0,a1 + c002918e: e42e sd a1,8(sp) + c0029190: 1f12d0ef jal ra,c0056b80 + c0029194: 65a2 ld a1,8(sp) + c0029196: 862a mv a2,a0 + c0029198: 4505 li a0,1 + c002919a: 67e2e0ef jal ra,c0057818 + c002919e: 4605 li a2,1 + c00291a0: 00048597 auipc a1,0x48 + c00291a4: c0058593 addi a1,a1,-1024 # c0070da0 + c00291a8: 4505 li a0,1 + c00291aa: 66e2e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5118 if (JS_IsException(func_obj)) - c0028fde: 000a071b sext.w a4,s4 - c0028fe2: 4799 li a5,6 - c0028fe4: 02f71263 bne a4,a5,c0029008 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5134 + c00291ae: 000a071b sext.w a4,s4 + c00291b2: 4799 li a5,6 + c00291b4: 02f71263 bne a4,a5,c00291d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5142 return func_obj; - c0028fe8: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5135 + c00291b8: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5143 } - c0028fea: 60aa ld ra,136(sp) - c0028fec: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5134 + c00291ba: 60aa ld ra,136(sp) + c00291bc: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5142 return func_obj; - c0028fee: fc52 sd s4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5135 -} - c0028ff0: 7542 ld a0,48(sp) - c0028ff2: 75e2 ld a1,56(sp) - c0028ff4: 74e6 ld s1,120(sp) - c0028ff6: 7946 ld s2,112(sp) - c0028ff8: 79a6 ld s3,104(sp) - c0028ffa: 7a06 ld s4,96(sp) - c0028ffc: 6ae6 ld s5,88(sp) - c0028ffe: 6b46 ld s6,80(sp) - c0029000: 6ba6 ld s7,72(sp) - c0029002: 6c06 ld s8,64(sp) - c0029004: 6149 addi sp,sp,144 - c0029006: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5113 + c00291be: fc52 sd s4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5143 +} + c00291c0: 7542 ld a0,48(sp) + c00291c2: 75e2 ld a1,56(sp) + c00291c4: 74e6 ld s1,120(sp) + c00291c6: 7946 ld s2,112(sp) + c00291c8: 79a6 ld s3,104(sp) + c00291ca: 7a06 ld s4,96(sp) + c00291cc: 6ae6 ld s5,88(sp) + c00291ce: 6b46 ld s6,80(sp) + c00291d0: 6ba6 ld s7,72(sp) + c00291d2: 6c06 ld s8,64(sp) + c00291d4: 6149 addi sp,sp,144 + c00291d6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5121 _d("JS_NewCFunction3: 2="); _d(debug_expr); _d("\n"); //// - c0029008: 4651 li a2,20 - c002900a: 00036597 auipc a1,0x36 - c002900e: 70e58593 addi a1,a1,1806 # c005f718 - c0029012: 4505 li a0,1 - c0029014: 6342e0ef jal ra,c0057648 - c0029018: 00093583 ld a1,0(s2) - c002901c: 852e mv a0,a1 - c002901e: e42e sd a1,8(sp) - c0029020: 1912d0ef jal ra,c00569b0 - c0029024: 65a2 ld a1,8(sp) - c0029026: 862a mv a2,a0 - c0029028: 4505 li a0,1 - c002902a: 61e2e0ef jal ra,c0057648 - c002902e: 4605 li a2,1 - c0029030: 00048597 auipc a1,0x48 - c0029034: b1058593 addi a1,a1,-1264 # c0070b40 - c0029038: 4505 li a0,1 - c002903a: 60e2e0ef jal ra,c0057648 + c00291d8: 4651 li a2,20 + c00291da: 00036597 auipc a1,0x36 + c00291de: 79e58593 addi a1,a1,1950 # c005f978 + c00291e2: 4505 li a0,1 + c00291e4: 6342e0ef jal ra,c0057818 + c00291e8: 00093583 ld a1,0(s2) + c00291ec: 852e mv a0,a1 + c00291ee: e42e sd a1,8(sp) + c00291f0: 1912d0ef jal ra,c0056b80 + c00291f4: 65a2 ld a1,8(sp) + c00291f6: 862a mv a2,a0 + c00291f8: 4505 li a0,1 + c00291fa: 61e2e0ef jal ra,c0057818 + c00291fe: 4605 li a2,1 + c0029200: 00048597 auipc a1,0x48 + c0029204: ba058593 addi a1,a1,-1120 # c0070da0 + c0029208: 4505 li a0,1 + c002920a: 60e2e0ef jal ra,c0057818 JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c002903e: 0009a783 lw a5,0(s3) + c002920e: 0009a783 lw a5,0(s3) JS_NewCFunction3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5115 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5123 _d("JS_NewCFunction3: 3="); _d(debug_expr); _d("\n"); //// - c0029042: 4651 li a2,20 - c0029044: 00036597 auipc a1,0x36 - c0029048: 6ec58593 addi a1,a1,1772 # c005f730 + c0029212: 4651 li a2,20 + c0029214: 00036597 auipc a1,0x36 + c0029218: 77c58593 addi a1,a1,1916 # c005f990 JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c002904c: 2785 addiw a5,a5,1 - c002904e: 00f9a023 sw a5,0(s3) + c002921c: 2785 addiw a5,a5,1 + c002921e: 00f9a023 sw a5,0(s3) JS_NewCFunction3(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5122 p->u.cfunc.realm = JS_DupContext(ctx); - c0029052: 03343823 sd s3,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5115 + c0029222: 03343823 sd s3,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5123 _d("JS_NewCFunction3: 3="); _d(debug_expr); _d("\n"); //// - c0029056: 4505 li a0,1 - c0029058: 5f02e0ef jal ra,c0057648 - c002905c: 00093583 ld a1,0(s2) - c0029060: 852e mv a0,a1 - c0029062: e42e sd a1,8(sp) - c0029064: 14d2d0ef jal ra,c00569b0 - c0029068: 65a2 ld a1,8(sp) - c002906a: 862a mv a2,a0 - c002906c: 4505 li a0,1 - c002906e: 5da2e0ef jal ra,c0057648 - c0029072: 4605 li a2,1 - c0029074: 00048597 auipc a1,0x48 - c0029078: acc58593 addi a1,a1,-1332 # c0070b40 - c002907c: 4505 li a0,1 - c002907e: 5ca2e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5120 + c0029226: 4505 li a0,1 + c0029228: 5f02e0ef jal ra,c0057818 + c002922c: 00093583 ld a1,0(s2) + c0029230: 852e mv a0,a1 + c0029232: e42e sd a1,8(sp) + c0029234: 14d2d0ef jal ra,c0056b80 + c0029238: 65a2 ld a1,8(sp) + c002923a: 862a mv a2,a0 + c002923c: 4505 li a0,1 + c002923e: 5da2e0ef jal ra,c0057818 + c0029242: 4605 li a2,1 + c0029244: 00048597 auipc a1,0x48 + c0029248: b5c58593 addi a1,a1,-1188 # c0070da0 + c002924c: 4505 li a0,1 + c002924e: 5ca2e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5128 p->is_constructor = (cproto == JS_CFUNC_constructor || - c0029082: 00544783 lbu a5,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5118 + c0029252: 00544783 lbu a5,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5126 p->u.cfunc.cproto = cproto; - c0029086: 049400a3 sb s1,65(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5122 + c0029256: 049400a3 sb s1,65(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5130 cproto == JS_CFUNC_constructor_or_func || - c002908a: 34f9 addiw s1,s1,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5120 + c002925a: 34f9 addiw s1,s1,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5128 p->is_constructor = (cproto == JS_CFUNC_constructor || - c002908c: 0044b493 sltiu s1,s1,4 - c0029090: 9bbd andi a5,a5,-17 - c0029092: 0044949b slliw s1,s1,0x4 - c0029096: 8cdd or s1,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5124 + c002925c: 0044b493 sltiu s1,s1,4 + c0029260: 9bbd andi a5,a5,-17 + c0029262: 0044949b slliw s1,s1,0x4 + c0029266: 8cdd or s1,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5132 _d("JS_NewCFunction3: 4="); _d(debug_expr); _d("\n"); //// - c0029098: 4651 li a2,20 - c002909a: 00036597 auipc a1,0x36 - c002909e: 6ae58593 addi a1,a1,1710 # c005f748 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5116 + c0029268: 4651 li a2,20 + c002926a: 00036597 auipc a1,0x36 + c002926e: 73e58593 addi a1,a1,1854 # c005f9a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5124 p->u.cfunc.c_function.generic = func; - c00290a2: 03843c23 sd s8,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5117 + c0029272: 03843c23 sd s8,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5125 p->u.cfunc.length = length; - c00290a6: 05640023 sb s6,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5119 + c0029276: 05640023 sb s6,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5127 p->u.cfunc.magic = magic; - c00290aa: 05741123 sh s7,66(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5120 + c002927a: 05741123 sh s7,66(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5128 p->is_constructor = (cproto == JS_CFUNC_constructor || - c00290ae: 009402a3 sb s1,5(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5124 + c002927e: 009402a3 sb s1,5(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5132 _d("JS_NewCFunction3: 4="); _d(debug_expr); _d("\n"); //// - c00290b2: 4505 li a0,1 - c00290b4: 5942e0ef jal ra,c0057648 - c00290b8: 00093583 ld a1,0(s2) - c00290bc: 852e mv a0,a1 - c00290be: e42e sd a1,8(sp) - c00290c0: 0f12d0ef jal ra,c00569b0 - c00290c4: 65a2 ld a1,8(sp) - c00290c6: 862a mv a2,a0 - c00290c8: 4505 li a0,1 - c00290ca: 57e2e0ef jal ra,c0057648 - c00290ce: 4605 li a2,1 - c00290d0: 00048597 auipc a1,0x48 - c00290d4: a7058593 addi a1,a1,-1424 # c0070b40 - c00290d8: 4505 li a0,1 - c00290da: 56e2e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5125 + c0029282: 4505 li a0,1 + c0029284: 5942e0ef jal ra,c0057818 + c0029288: 00093583 ld a1,0(s2) + c002928c: 852e mv a0,a1 + c002928e: e42e sd a1,8(sp) + c0029290: 0f12d0ef jal ra,c0056b80 + c0029294: 65a2 ld a1,8(sp) + c0029296: 862a mv a2,a0 + c0029298: 4505 li a0,1 + c002929a: 57e2e0ef jal ra,c0057818 + c002929e: 4605 li a2,1 + c00292a0: 00048597 auipc a1,0x48 + c00292a4: b0058593 addi a1,a1,-1280 # c0070da0 + c00292a8: 4505 li a0,1 + c00292aa: 56e2e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5133 if (!name) - c00290de: 000a9663 bnez s5,c00290ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5126 + c00292ae: 000a9663 bnez s5,c00292ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5134 name = ""; - c00290e2: 00034a97 auipc s5,0x34 - c00290e6: eeea8a93 addi s5,s5,-274 # c005cfd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5127 + c00292b2: 00034a97 auipc s5,0x34 + c00292b6: f4ea8a93 addi s5,s5,-178 # c005d200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5135 _d("JS_NewCFunction3: a="); _d(debug_expr); _d("\n"); //// - c00290ea: 4651 li a2,20 - c00290ec: 00036597 auipc a1,0x36 - c00290f0: 67458593 addi a1,a1,1652 # c005f760 - c00290f4: 4505 li a0,1 - c00290f6: 5522e0ef jal ra,c0057648 - c00290fa: 00093583 ld a1,0(s2) - c00290fe: 852e mv a0,a1 - c0029100: e42e sd a1,8(sp) - c0029102: 0af2d0ef jal ra,c00569b0 - c0029106: 65a2 ld a1,8(sp) - c0029108: 862a mv a2,a0 - c002910a: 4505 li a0,1 - c002910c: 53c2e0ef jal ra,c0057648 - c0029110: 4605 li a2,1 - c0029112: 00048597 auipc a1,0x48 - c0029116: a2e58593 addi a1,a1,-1490 # c0070b40 - c002911a: 4505 li a0,1 - c002911c: 52c2e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5128 + c00292ba: 4651 li a2,20 + c00292bc: 00036597 auipc a1,0x36 + c00292c0: 70458593 addi a1,a1,1796 # c005f9c0 + c00292c4: 4505 li a0,1 + c00292c6: 5522e0ef jal ra,c0057818 + c00292ca: 00093583 ld a1,0(s2) + c00292ce: 852e mv a0,a1 + c00292d0: e42e sd a1,8(sp) + c00292d2: 0af2d0ef jal ra,c0056b80 + c00292d6: 65a2 ld a1,8(sp) + c00292d8: 862a mv a2,a0 + c00292da: 4505 li a0,1 + c00292dc: 53c2e0ef jal ra,c0057818 + c00292e0: 4605 li a2,1 + c00292e2: 00048597 auipc a1,0x48 + c00292e6: abe58593 addi a1,a1,-1346 # c0070da0 + c00292ea: 4505 li a0,1 + c00292ec: 52c2e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5136 name_atom = JS_NewAtom(ctx, name); - c0029120: 85d6 mv a1,s5 - c0029122: 854e mv a0,s3 - c0029124: b1cf00ef jal ra,c0019440 - c0029128: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5129 + c00292f0: 85d6 mv a1,s5 + c00292f2: 854e mv a0,s3 + c00292f4: b1cf00ef jal ra,c0019610 + c00292f8: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5137 _d("JS_NewCFunction3: b="); _d(debug_expr); _d("\n"); //// - c002912c: 4651 li a2,20 - c002912e: 00036597 auipc a1,0x36 - c0029132: 64a58593 addi a1,a1,1610 # c005f778 - c0029136: 4505 li a0,1 - c0029138: 5102e0ef jal ra,c0057648 - c002913c: 00093583 ld a1,0(s2) - c0029140: 852e mv a0,a1 - c0029142: e42e sd a1,8(sp) - c0029144: 06d2d0ef jal ra,c00569b0 - c0029148: 65a2 ld a1,8(sp) - c002914a: 862a mv a2,a0 - c002914c: 4505 li a0,1 - c002914e: 4fa2e0ef jal ra,c0057648 - c0029152: 4605 li a2,1 - c0029154: 00048597 auipc a1,0x48 - c0029158: 9ec58593 addi a1,a1,-1556 # c0070b40 - c002915c: 4505 li a0,1 - c002915e: 4ea2e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5130 + c00292fc: 4651 li a2,20 + c00292fe: 00036597 auipc a1,0x36 + c0029302: 6da58593 addi a1,a1,1754 # c005f9d8 + c0029306: 4505 li a0,1 + c0029308: 5102e0ef jal ra,c0057818 + c002930c: 00093583 ld a1,0(s2) + c0029310: 852e mv a0,a1 + c0029312: e42e sd a1,8(sp) + c0029314: 06d2d0ef jal ra,c0056b80 + c0029318: 65a2 ld a1,8(sp) + c002931a: 862a mv a2,a0 + c002931c: 4505 li a0,1 + c002931e: 4fa2e0ef jal ra,c0057818 + c0029322: 4605 li a2,1 + c0029324: 00048597 auipc a1,0x48 + c0029328: a7c58593 addi a1,a1,-1412 # c0070da0 + c002932c: 4505 li a0,1 + c002932e: 4ea2e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5138 js_function_set_properties(ctx, func_obj, name_atom, length); - c0029162: 7582 ld a1,32(sp) - c0029164: 7622 ld a2,40(sp) - c0029166: 875a mv a4,s6 - c0029168: 86a6 mv a3,s1 - c002916a: 854e mv a0,s3 - c002916c: c87ff0ef jal ra,c0028df2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5131 + c0029332: 7582 ld a1,32(sp) + c0029334: 7622 ld a2,40(sp) + c0029336: 875a mv a4,s6 + c0029338: 86a6 mv a3,s1 + c002933a: 854e mv a0,s3 + c002933c: c87ff0ef jal ra,c0028fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5139 _d("JS_NewCFunction3: c="); _d(debug_expr); _d("\n"); //// - c0029170: 4651 li a2,20 - c0029172: 00036597 auipc a1,0x36 - c0029176: 61e58593 addi a1,a1,1566 # c005f790 - c002917a: 4505 li a0,1 - c002917c: 4cc2e0ef jal ra,c0057648 - c0029180: 00093583 ld a1,0(s2) - c0029184: 852e mv a0,a1 - c0029186: e42e sd a1,8(sp) - c0029188: 0292d0ef jal ra,c00569b0 - c002918c: 65a2 ld a1,8(sp) - c002918e: 862a mv a2,a0 - c0029190: 4505 li a0,1 - c0029192: 4b62e0ef jal ra,c0057648 - c0029196: 4605 li a2,1 - c0029198: 00048597 auipc a1,0x48 - c002919c: 9a858593 addi a1,a1,-1624 # c0070b40 - c00291a0: 4505 li a0,1 - c00291a2: 4a62e0ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5132 + c0029340: 4651 li a2,20 + c0029342: 00036597 auipc a1,0x36 + c0029346: 6ae58593 addi a1,a1,1710 # c005f9f0 + c002934a: 4505 li a0,1 + c002934c: 4cc2e0ef jal ra,c0057818 + c0029350: 00093583 ld a1,0(s2) + c0029354: 852e mv a0,a1 + c0029356: e42e sd a1,8(sp) + c0029358: 0292d0ef jal ra,c0056b80 + c002935c: 65a2 ld a1,8(sp) + c002935e: 862a mv a2,a0 + c0029360: 4505 li a0,1 + c0029362: 4b62e0ef jal ra,c0057818 + c0029366: 4605 li a2,1 + c0029368: 00048597 auipc a1,0x48 + c002936c: a3858593 addi a1,a1,-1480 # c0070da0 + c0029370: 4505 li a0,1 + c0029372: 4a62e0ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5140 JS_FreeAtom(ctx, name_atom); - c00291a6: 85a6 mv a1,s1 - c00291a8: 854e mv a0,s3 - c00291aa: b62de0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5133 + c0029376: 85a6 mv a1,s1 + c0029378: 854e mv a0,s3 + c002937a: a80de0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5141 _d("JS_NewCFunction3: d="); _d(debug_expr); _d("\n"); //// - c00291ae: 4651 li a2,20 - c00291b0: 00036597 auipc a1,0x36 - c00291b4: 5f858593 addi a1,a1,1528 # c005f7a8 - c00291b8: 4505 li a0,1 - c00291ba: 48e2e0ef jal ra,c0057648 - c00291be: 00093583 ld a1,0(s2) - c00291c2: 852e mv a0,a1 - c00291c4: e42e sd a1,8(sp) - c00291c6: 7ea2d0ef jal ra,c00569b0 - c00291ca: 65a2 ld a1,8(sp) - c00291cc: 862a mv a2,a0 - c00291ce: 4505 li a0,1 - c00291d0: 4782e0ef jal ra,c0057648 - c00291d4: 4605 li a2,1 - c00291d6: 00048597 auipc a1,0x48 - c00291da: 96a58593 addi a1,a1,-1686 # c0070b40 - c00291de: 4505 li a0,1 - c00291e0: 4682e0ef jal ra,c0057648 - c00291e4: b511 j c0028fe8 - -00000000c00291e6 : + c002937e: 4651 li a2,20 + c0029380: 00036597 auipc a1,0x36 + c0029384: 68858593 addi a1,a1,1672 # c005fa08 + c0029388: 4505 li a0,1 + c002938a: 48e2e0ef jal ra,c0057818 + c002938e: 00093583 ld a1,0(s2) + c0029392: 852e mv a0,a1 + c0029394: e42e sd a1,8(sp) + c0029396: 7ea2d0ef jal ra,c0056b80 + c002939a: 65a2 ld a1,8(sp) + c002939c: 862a mv a2,a0 + c002939e: 4505 li a0,1 + c00293a0: 4782e0ef jal ra,c0057818 + c00293a4: 4605 li a2,1 + c00293a6: 00048597 auipc a1,0x48 + c00293aa: 9fa58593 addi a1,a1,-1542 # c0070da0 + c00293ae: 4505 li a0,1 + c00293b0: 4682e0ef jal ra,c0057818 + c00293b4: b511 j c00291b8 + +00000000c00293b6 : JS_NewCFunction2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5150 return JS_NewCFunction3(ctx, func, name, length, cproto, magic, - c00291e6: 04853803 ld a6,72(a0) - c00291ea: 05053883 ld a7,80(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5141 + c00293b6: 04853803 ld a6,72(a0) + c00293ba: 05053883 ld a7,80(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5149 { - c00291ee: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5144 + c00293be: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5152 } - c00291f0: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5142 + c00293c0: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5150 return JS_NewCFunction3(ctx, func, name, length, cproto, magic, - c00291f2: d3fff06f j c0028f30 + c00293c2: d3fff06f j c0029100 -00000000c00291f6 : +00000000c00293c6 : JS_NewCFunctionData(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5205 -{ - c00291f6: 7119 addi sp,sp,-128 - c00291f8: f4a6 sd s1,104(sp) - c00291fa: f0ca sd s2,96(sp) - c00291fc: ecce sd s3,88(sp) - c00291fe: e8d2 sd s4,80(sp) - c0029200: e4d6 sd s5,72(sp) - c0029202: e0da sd s6,64(sp) - c0029204: fc5e sd s7,56(sp) - c0029206: f862 sd s8,48(sp) - c0029208: f466 sd s9,40(sp) - c002920a: f06a sd s10,32(sp) - c002920c: fc86 sd ra,120(sp) - c002920e: f8a2 sd s0,112(sp) - c0029210: 8cae mv s9,a1 - c0029212: 8ab2 mv s5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5213 +{ + c00293c6: 7119 addi sp,sp,-128 + c00293c8: f4a6 sd s1,104(sp) + c00293ca: f0ca sd s2,96(sp) + c00293cc: ecce sd s3,88(sp) + c00293ce: e8d2 sd s4,80(sp) + c00293d0: e4d6 sd s5,72(sp) + c00293d2: e0da sd s6,64(sp) + c00293d4: fc5e sd s7,56(sp) + c00293d6: f862 sd s8,48(sp) + c00293d8: f466 sd s9,40(sp) + c00293da: f06a sd s10,32(sp) + c00293dc: fc86 sd ra,120(sp) + c00293de: f8a2 sd s0,112(sp) + c00293e0: 8cae mv s9,a1 + c00293e2: 8ab2 mv s5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5218 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0029214: 652c ld a1,72(a0) - c0029216: 6930 ld a2,80(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5205 + c00293e4: 652c ld a1,72(a0) + c00293e6: 6930 ld a2,80(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5213 { - c0029218: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5210 + c00293e8: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5218 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c002921a: 46bd li a3,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5205 + c00293ea: 46bd li a3,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5213 { - c002921c: 8c2a mv s8,a0 - c002921e: 8a3a mv s4,a4 - c0029220: 8b3e mv s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5210 + c00293ec: 8c2a mv s8,a0 + c00293ee: 8a3a mv s4,a4 + c00293f0: 8b3e mv s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5218 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0029222: d66ed0ef jal ra,c0016788 - c0029226: e02a sd a0,0(sp) - c0029228: e42e sd a1,8(sp) + c00293f2: d66ed0ef jal ra,c0016958 + c00293f6: e02a sd a0,0(sp) + c00293f8: e42e sd a1,8(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c002922a: 00058b9b sext.w s7,a1 + c00293fa: 00058b9b sext.w s7,a1 JS_NewCFunctionData(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5220 if (JS_IsException(func_obj)) - c002922e: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5210 + c00293fe: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5218 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0029230: 89aa mv s3,a0 - c0029232: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5212 + c0029400: 89aa mv s3,a0 + c0029402: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5220 if (JS_IsException(func_obj)) - c0029234: 01ab9563 bne s7,s10,c002923e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5228 + c0029404: 01ab9563 bne s7,s10,c002940e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5236 return func_obj; - c0029238: e84e sd s3,16(sp) - c002923a: ec4a sd s2,24(sp) - c002923c: a005 j c002925c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5214 + c0029408: e84e sd s3,16(sp) + c002940a: ec4a sd s2,24(sp) + c002940c: a005 j c002942c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5222 s = js_malloc(ctx, sizeof(*s) + data_len * sizeof(JSValue)); - c002923e: 001a0593 addi a1,s4,1 - c0029242: 0592 slli a1,a1,0x4 - c0029244: 8562 mv a0,s8 - c0029246: a07eb0ef jal ra,c0014c4c - c002924a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5215 + c002940e: 001a0593 addi a1,s4,1 + c0029412: 0592 slli a1,a1,0x4 + c0029414: 8562 mv a0,s8 + c0029416: 925eb0ef jal ra,c0014d3a + c002941a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5223 if (!s) { - c002924c: e905 bnez a0,c002927c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5216 + c002941c: e905 bnez a0,c002944c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5224 JS_FreeValue(ctx, func_obj); - c002924e: 6582 ld a1,0(sp) - c0029250: 6622 ld a2,8(sp) - c0029252: 8562 mv a0,s8 - c0029254: 8e5de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5217 + c002941e: 6582 ld a1,0(sp) + c0029420: 6622 ld a2,8(sp) + c0029422: 8562 mv a0,s8 + c0029424: 803de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5225 return JS_EXCEPTION; - c0029258: e802 sd zero,16(sp) - c002925a: ec6a sd s10,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5229 (discriminator 1) -} - c002925c: 70e6 ld ra,120(sp) - c002925e: 7446 ld s0,112(sp) - c0029260: 6542 ld a0,16(sp) - c0029262: 65e2 ld a1,24(sp) - c0029264: 74a6 ld s1,104(sp) - c0029266: 7906 ld s2,96(sp) - c0029268: 69e6 ld s3,88(sp) - c002926a: 6a46 ld s4,80(sp) - c002926c: 6aa6 ld s5,72(sp) - c002926e: 6b06 ld s6,64(sp) - c0029270: 7be2 ld s7,56(sp) - c0029272: 7c42 ld s8,48(sp) - c0029274: 7ca2 ld s9,40(sp) - c0029276: 7d02 ld s10,32(sp) - c0029278: 6109 addi sp,sp,128 - c002927a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5219 + c0029428: e802 sd zero,16(sp) + c002942a: ec6a sd s10,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5237 (discriminator 1) +} + c002942c: 70e6 ld ra,120(sp) + c002942e: 7446 ld s0,112(sp) + c0029430: 6542 ld a0,16(sp) + c0029432: 65e2 ld a1,24(sp) + c0029434: 74a6 ld s1,104(sp) + c0029436: 7906 ld s2,96(sp) + c0029438: 69e6 ld s3,88(sp) + c002943a: 6a46 ld s4,80(sp) + c002943c: 6aa6 ld s5,72(sp) + c002943e: 6b06 ld s6,64(sp) + c0029440: 7be2 ld s7,56(sp) + c0029442: 7c42 ld s8,48(sp) + c0029444: 7ca2 ld s9,40(sp) + c0029446: 7d02 ld s10,32(sp) + c0029448: 6109 addi sp,sp,128 + c002944a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5227 s->func = func; - c002927c: 01953023 sd s9,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5220 + c002944c: 01953023 sd s9,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5228 s->length = length; - c0029280: 01550423 sb s5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5221 + c0029450: 01550423 sb s5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5229 s->data_len = data_len; - c0029284: 014504a3 sb s4,9(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5222 + c0029454: 014504a3 sb s4,9(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5230 s->magic = magic; - c0029288: 00951523 sh s1,10(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5223 + c0029458: 00951523 sh s1,10(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5231 for(i = 0; i < data_len; i++) - c002928c: 4c81 li s9,0 - c002928e: 000c849b sext.w s1,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5223 (discriminator 1) - c0029292: 0344c063 blt s1,s4,c00292b2 + c002945c: 4c81 li s9,0 + c002945e: 000c849b sext.w s1,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5231 (discriminator 1) + c0029462: 0344c063 blt s1,s4,c0029482 JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0029296: 57fd li a5,-1 - c0029298: 00fb9463 bne s7,a5,c00292a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0029466: 57fd li a5,-1 + c0029468: 00fb9463 bne s7,a5,c0029470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c002929c: 0289b823 sd s0,48(s3) + c002946c: 0289b823 sd s0,48(s3) JS_NewCFunctionData(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5226 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5234 js_function_set_properties(ctx, func_obj, - c00292a0: 6582 ld a1,0(sp) - c00292a2: 6622 ld a2,8(sp) - c00292a4: 8756 mv a4,s5 - c00292a6: 02f00693 li a3,47 - c00292aa: 8562 mv a0,s8 - c00292ac: b47ff0ef jal ra,c0028df2 - c00292b0: b761 j c0029238 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5224 (discriminator 3) + c0029470: 6582 ld a1,0(sp) + c0029472: 6622 ld a2,8(sp) + c0029474: 8756 mv a4,s5 + c0029476: 02f00693 li a3,47 + c002947a: 8562 mv a0,s8 + c002947c: b47ff0ef jal ra,c0028fc2 + c0029480: b761 j c0029408 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5232 (discriminator 3) s->data[i] = JS_DupValue(ctx, data[i]); - c00292b2: 004c9793 slli a5,s9,0x4 - c00292b6: 97da add a5,a5,s6 - c00292b8: 6388 ld a0,0(a5) - c00292ba: 678c ld a1,8(a5) - c00292bc: 0485 addi s1,s1,1 - c00292be: 0492 slli s1,s1,0x4 - c00292c0: 94a2 add s1,s1,s0 - c00292c2: bacdd0ef jal ra,c000666e - c00292c6: e088 sd a0,0(s1) - c00292c8: e48c sd a1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5223 (discriminator 3) + c0029482: 004c9793 slli a5,s9,0x4 + c0029486: 97da add a5,a5,s6 + c0029488: 6388 ld a0,0(a5) + c002948a: 678c ld a1,8(a5) + c002948c: 0485 addi s1,s1,1 + c002948e: 0492 slli s1,s1,0x4 + c0029490: 94a2 add s1,s1,s0 + c0029492: acadd0ef jal ra,c000675c + c0029496: e088 sd a0,0(s1) + c0029498: e48c sd a1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5231 (discriminator 3) for(i = 0; i < data_len; i++) - c00292ca: 0c85 addi s9,s9,1 - c00292cc: b7c9 j c002928e + c002949a: 0c85 addi s9,s9,1 + c002949c: b7c9 j c002945e -00000000c00292ce : +00000000c002949e : js_async_generator_resolve_function_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19371 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19379 static int js_async_generator_resolve_function_create(JSContext *ctx, - c00292ce: 711d addi sp,sp,-96 - c00292d0: e8a2 sd s0,80(sp) - c00292d2: e4a6 sd s1,72(sp) - c00292d4: e0ca sd s2,64(sp) - c00292d6: fc4e sd s3,56(sp) - c00292d8: f852 sd s4,48(sp) - c00292da: f456 sd s5,40(sp) - c00292dc: ec86 sd ra,88(sp) - c00292de: f05a sd s6,32(sp) - c00292e0: 89aa mv s3,a0 - c00292e2: e02e sd a1,0(sp) - c00292e4: e432 sd a2,8(sp) - c00292e6: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19381 + c002949e: 711d addi sp,sp,-96 + c00294a0: e8a2 sd s0,80(sp) + c00294a2: e4a6 sd s1,72(sp) + c00294a4: e0ca sd s2,64(sp) + c00294a6: fc4e sd s3,56(sp) + c00294a8: f852 sd s4,48(sp) + c00294aa: f456 sd s5,40(sp) + c00294ac: ec86 sd ra,88(sp) + c00294ae: f05a sd s6,32(sp) + c00294b0: 89aa mv s3,a0 + c00294b2: e02e sd a1,0(sp) + c00294b4: e432 sd a2,8(sp) + c00294b6: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19389 i + is_resume_next * 2, 1, &generator); - c00292e8: 0017191b slliw s2,a4,0x1 - c00292ec: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19380 + c00294b8: 0017191b slliw s2,a4,0x1 + c00294bc: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19388 func = JS_NewCFunctionData(ctx, js_async_generator_resolve_function, 1, - c00292ee: 00017a97 auipc s5,0x17 - c00292f2: 8d6a8a93 addi s5,s5,-1834 # c003fbc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19382 + c00294be: 00017a97 auipc s5,0x17 + c00294c2: 8d6a8a93 addi s5,s5,-1834 # c003fd94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19390 if (JS_IsException(func)) { - c00292f6: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19380 + c00294c6: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19388 func = JS_NewCFunctionData(ctx, js_async_generator_resolve_function, 1, - c00292f8: 878a mv a5,sp - c00292fa: 4705 li a4,1 - c00292fc: 012406bb addw a3,s0,s2 - c0029300: 4605 li a2,1 - c0029302: 85d6 mv a1,s5 - c0029304: 854e mv a0,s3 - c0029306: ef1ff0ef jal ra,c00291f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19382 + c00294c8: 878a mv a5,sp + c00294ca: 4705 li a4,1 + c00294cc: 012406bb addw a3,s0,s2 + c00294d0: 4605 li a2,1 + c00294d2: 85d6 mv a1,s5 + c00294d4: 854e mv a0,s3 + c00294d6: ef1ff0ef jal ra,c00293c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19390 if (JS_IsException(func)) { - c002930a: 0005879b sext.w a5,a1 - c002930e: 00040b1b sext.w s6,s0 - c0029312: 03479763 bne a5,s4,c0029340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19385 + c00294da: 0005879b sext.w a5,a1 + c00294de: 00040b1b sext.w s6,s0 + c00294e2: 03479763 bne a5,s4,c0029510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19393 return -1; - c0029316: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19383 + c00294e6: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19391 if (i == 1) - c0029318: 000b0763 beqz s6,c0029326 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19384 + c00294e8: 000b0763 beqz s6,c00294f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19392 JS_FreeValue(ctx, resolving_funcs[0]); - c002931c: 608c ld a1,0(s1) - c002931e: 6490 ld a2,8(s1) - c0029320: 854e mv a0,s3 - c0029322: 817de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19390 -} - c0029326: 60e6 ld ra,88(sp) - c0029328: 8522 mv a0,s0 - c002932a: 6446 ld s0,80(sp) - c002932c: 64a6 ld s1,72(sp) - c002932e: 6906 ld s2,64(sp) - c0029330: 79e2 ld s3,56(sp) - c0029332: 7a42 ld s4,48(sp) - c0029334: 7aa2 ld s5,40(sp) - c0029336: 7b02 ld s6,32(sp) - c0029338: 6125 addi sp,sp,96 - c002933a: 8082 ret - c002933c: 4405 li s0,1 - c002933e: bf6d j c00292f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19387 + c00294ec: 608c ld a1,0(s1) + c00294ee: 6490 ld a2,8(s1) + c00294f0: 854e mv a0,s3 + c00294f2: f34de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19398 +} + c00294f6: 60e6 ld ra,88(sp) + c00294f8: 8522 mv a0,s0 + c00294fa: 6446 ld s0,80(sp) + c00294fc: 64a6 ld s1,72(sp) + c00294fe: 6906 ld s2,64(sp) + c0029500: 79e2 ld s3,56(sp) + c0029502: 7a42 ld s4,48(sp) + c0029504: 7aa2 ld s5,40(sp) + c0029506: 7b02 ld s6,32(sp) + c0029508: 6125 addi sp,sp,96 + c002950a: 8082 ret + c002950c: 4405 li s0,1 + c002950e: bf6d j c00294c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19395 resolving_funcs[i] = func; - c0029340: 00441793 slli a5,s0,0x4 - c0029344: 97a6 add a5,a5,s1 - c0029346: e388 sd a0,0(a5) - c0029348: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19379 + c0029510: 00441793 slli a5,s0,0x4 + c0029514: 97a6 add a5,a5,s1 + c0029516: e388 sd a0,0(a5) + c0029518: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19387 for(i = 0; i < 2; i++) { - c002934a: d86d beqz s0,c002933c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19389 + c002951a: d86d beqz s0,c002950c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19397 return 0; - c002934c: 4401 li s0,0 - c002934e: bfe1 j c0029326 + c002951c: 4401 li s0,0 + c002951e: bfe1 j c00294f6 -00000000c0029350 : +00000000c0029520 : js_closure(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15745 -{ - c0029350: 7119 addi sp,sp,-128 - c0029352: f8a2 sd s0,112(sp) - c0029354: f4a6 sd s1,104(sp) - c0029356: f0ca sd s2,96(sp) - c0029358: ecce sd s3,88(sp) - c002935a: e4d6 sd s5,72(sp) - c002935c: fc86 sd ra,120(sp) - c002935e: e8d2 sd s4,80(sp) - c0029360: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15751 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15753 +{ + c0029520: 7119 addi sp,sp,-128 + c0029522: f8a2 sd s0,112(sp) + c0029524: f4a6 sd s1,104(sp) + c0029526: f0ca sd s2,96(sp) + c0029528: ecce sd s3,88(sp) + c002952a: e4d6 sd s5,72(sp) + c002952c: fc86 sd ra,120(sp) + c002952e: e8d2 sd s4,80(sp) + c0029530: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15759 func_obj = JS_NewObjectClass(ctx, func_kind_to_class_id[b->func_kind]); - c0029362: 6d90 ld a2,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15745 + c0029532: 6d90 ld a2,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15753 { - c0029364: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15751 + c0029534: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15759 func_obj = JS_NewObjectClass(ctx, func_kind_to_class_id[b->func_kind]); - c0029366: 0004b717 auipc a4,0x4b - c002936a: 61a70713 addi a4,a4,1562 # c0074980 - c002936e: 822d srli a2,a2,0xb - c0029370: 8a19 andi a2,a2,6 - c0029372: 963a add a2,a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15745 -{ - c0029374: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15750 + c0029536: 0004b717 auipc a4,0x4b + c002953a: 6aa70713 addi a4,a4,1706 # c0074be0 + c002953e: 822d srli a2,a2,0xb + c0029540: 8a19 andi a2,a2,6 + c0029542: 963a add a2,a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15753 +{ + c0029544: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15758 b = JS_VALUE_GET_PTR(bfunc); - c0029376: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15751 + c0029546: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15759 func_obj = JS_NewObjectClass(ctx, func_kind_to_class_id[b->func_kind]); - c0029378: 00065583 lhu a1,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15745 + c0029548: 00065583 lhu a1,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15753 { - c002937c: 842a mv s0,a0 - c002937e: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15751 + c002954c: 842a mv s0,a0 + c002954e: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15759 func_obj = JS_NewObjectClass(ctx, func_kind_to_class_id[b->func_kind]); - c0029380: 8f1ed0ef jal ra,c0016c70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15752 + c0029550: 8f1ed0ef jal ra,c0016e40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15760 if (JS_IsException(func_obj)) { - c0029384: 0005899b sext.w s3,a1 - c0029388: 4a99 li s5,6 - c002938a: 67a2 ld a5,8(sp) - c002938c: 03599463 bne s3,s5,c00293b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15753 + c0029554: 0005899b sext.w s3,a1 + c0029558: 4a99 li s5,6 + c002955a: 67a2 ld a5,8(sp) + c002955c: 03599463 bne s3,s5,c0029584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15761 JS_FreeValue(ctx, bfunc); - c0029390: 65c2 ld a1,16(sp) - c0029392: 6662 ld a2,24(sp) - c0029394: 8522 mv a0,s0 - c0029396: fa2de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15754 + c0029560: 65c2 ld a1,16(sp) + c0029562: 6662 ld a2,24(sp) + c0029564: 8522 mv a0,s0 + c0029566: ec0de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15762 return JS_EXCEPTION; - c002939a: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15790 + c002956a: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15798 return func_obj; - c002939c: fc4e sd s3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15795 (discriminator 1) -} - c002939e: 70e6 ld ra,120(sp) - c00293a0: 7446 ld s0,112(sp) - c00293a2: 7542 ld a0,48(sp) - c00293a4: 75e2 ld a1,56(sp) - c00293a6: 74a6 ld s1,104(sp) - c00293a8: 7906 ld s2,96(sp) - c00293aa: 69e6 ld s3,88(sp) - c00293ac: 6a46 ld s4,80(sp) - c00293ae: 6aa6 ld s5,72(sp) - c00293b0: 6109 addi sp,sp,128 - c00293b2: 8082 ret - c00293b4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15756 + c002956c: fc4e sd s3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15803 (discriminator 1) +} + c002956e: 70e6 ld ra,120(sp) + c0029570: 7446 ld s0,112(sp) + c0029572: 7542 ld a0,48(sp) + c0029574: 75e2 ld a1,56(sp) + c0029576: 74a6 ld s1,104(sp) + c0029578: 7906 ld s2,96(sp) + c002957a: 69e6 ld s3,88(sp) + c002957c: 6a46 ld s4,80(sp) + c002957e: 6aa6 ld s5,72(sp) + c0029580: 6109 addi sp,sp,128 + c0029582: 8082 ret + c0029584: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15764 func_obj = js_closure2(ctx, func_obj, b, cur_var_refs, sf); - c00293b6: 874a mv a4,s2 - c00293b8: 85aa mv a1,a0 - c00293ba: 86a6 mv a3,s1 - c00293bc: 8522 mv a0,s0 - c00293be: a97ec0ef jal ra,c0015e54 - c00293c2: f02a sd a0,32(sp) - c00293c4: f42e sd a1,40(sp) + c0029586: 874a mv a4,s2 + c0029588: 85aa mv a1,a0 + c002958a: 86a6 mv a3,s1 + c002958c: 8522 mv a0,s0 + c002958e: a97ec0ef jal ra,c0016024 + c0029592: f02a sd a0,32(sp) + c0029594: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00293c6: 00058a1b sext.w s4,a1 + c0029596: 00058a1b sext.w s4,a1 js_closure(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15756 - c00293ca: 892a mv s2,a0 - c00293cc: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15764 + c002959a: 892a mv s2,a0 + c002959c: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15765 if (JS_IsException(func_obj)) { - c00293ce: 095a0e63 beq s4,s5,c002946a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15761 + c002959e: 095a0e63 beq s4,s5,c002963a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15769 name_atom = b->func_name; - c00293d2: 54d4 lw a3,44(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15762 + c00295a2: 54d4 lw a3,44(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15770 if (name_atom == JS_ATOM_NULL) - c00293d4: e299 bnez a3,c00293da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15763 + c00295a4: e299 bnez a3,c00295aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15771 name_atom = JS_ATOM_empty_string; - c00293d6: 02f00693 li a3,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15764 + c00295a6: 02f00693 li a3,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15772 js_function_set_properties(ctx, func_obj, name_atom, - c00293da: 0444d703 lhu a4,68(s1) - c00293de: 7582 ld a1,32(sp) - c00293e0: 7622 ld a2,40(sp) - c00293e2: 8522 mv a0,s0 - c00293e4: a0fff0ef jal ra,c0028df2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15767 + c00295aa: 0444d703 lhu a4,68(s1) + c00295ae: 7582 ld a1,32(sp) + c00295b0: 7622 ld a2,40(sp) + c00295b2: 8522 mv a0,s0 + c00295b4: a0fff0ef jal ra,c0028fc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15775 if (b->func_kind & JS_FUNC_GENERATOR) { - c00293e8: 6c98 ld a4,24(s1) - c00293ea: 0194c783 lbu a5,25(s1) - c00293ee: 8331 srli a4,a4,0xc - c00293f0: 8b05 andi a4,a4,1 - c00293f2: c731 beqz a4,c002943e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15772 + c00295b8: 6c98 ld a4,24(s1) + c00295ba: 0194c783 lbu a5,25(s1) + c00295be: 8331 srli a4,a4,0xc + c00295c0: 8b05 andi a4,a4,1 + c00295c2: c731 beqz a4,c002960e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15780 if (b->func_kind == JS_FUNC_ASYNC_GENERATOR) - c00293f4: 0307f793 andi a5,a5,48 - c00293f8: 03000693 li a3,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15773 + c00295c4: 0307f793 andi a5,a5,48 + c00295c8: 03000693 li a3,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15781 proto_class_id = JS_CLASS_ASYNC_GENERATOR; - c00293fc: 03500713 li a4,53 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15772 + c00295cc: 03500713 li a4,53 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15780 if (b->func_kind == JS_FUNC_ASYNC_GENERATOR) - c0029400: 00d78463 beq a5,a3,c0029408 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15775 + c00295d0: 00d78463 beq a5,a3,c00295d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15783 proto_class_id = JS_CLASS_GENERATOR; - c0029404: 02b00713 li a4,43 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15776 + c00295d4: 02b00713 li a4,43 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15784 proto = JS_NewObjectProto(ctx, ctx->class_proto[proto_class_id]); - c0029408: 603c ld a5,64(s0) - c002940a: 0712 slli a4,a4,0x4 - c002940c: 8522 mv a0,s0 - c002940e: 97ba add a5,a5,a4 - c0029410: 6790 ld a2,8(a5) - c0029412: 638c ld a1,0(a5) - c0029414: 91bed0ef jal ra,c0016d2e - c0029418: f82a sd a0,48(sp) - c002941a: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15777 + c00295d8: 603c ld a5,64(s0) + c00295da: 0712 slli a4,a4,0x4 + c00295dc: 8522 mv a0,s0 + c00295de: 97ba add a5,a5,a4 + c00295e0: 6790 ld a2,8(a5) + c00295e2: 638c ld a1,0(a5) + c00295e4: 91bed0ef jal ra,c0016efe + c00295e8: f82a sd a0,48(sp) + c00295ea: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15785 if (JS_IsException(proto)) - c002941c: 0005861b sext.w a2,a1 - c0029420: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15776 + c00295ec: 0005861b sext.w a2,a1 + c00295f0: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15784 proto = JS_NewObjectProto(ctx, ctx->class_proto[proto_class_id]); - c0029422: 872a mv a4,a0 - c0029424: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15777 + c00295f2: 872a mv a4,a0 + c00295f4: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15785 if (JS_IsException(proto)) - c0029426: 04d60263 beq a2,a3,c002946a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15779 + c00295f6: 04d60263 beq a2,a3,c002963a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15787 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_prototype, proto, - c002942a: 7582 ld a1,32(sp) - c002942c: 7622 ld a2,40(sp) - c002942e: 4809 li a6,2 - c0029430: 03c00693 li a3,60 - c0029434: 8522 mv a0,s0 - c0029436: b81e90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15790 + c00295fa: 7582 ld a1,32(sp) + c00295fc: 7622 ld a2,40(sp) + c00295fe: 4809 li a6,2 + c0029600: 03c00693 li a3,60 + c0029604: 8522 mv a0,s0 + c0029606: a9fe90ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15798 return func_obj; - c002943a: f84a sd s2,48(sp) - c002943c: b785 j c002939c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15781 + c002960a: f84a sd s2,48(sp) + c002960c: b785 j c002956c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15789 } else if (b->has_prototype) { - c002943e: 8b85 andi a5,a5,1 - c0029440: dfed beqz a5,c002943a + c002960e: 8b85 andi a5,a5,1 + c0029610: dfed beqz a5,c002960a JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9865 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c0029442: 57fd li a5,-1 - c0029444: 00fa1863 bne s4,a5,c0029454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 + c0029612: 57fd li a5,-1 + c0029614: 00fa1863 bne s4,a5,c0029624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c0029448: 00594783 lbu a5,5(s2) - c002944c: 0107e793 ori a5,a5,16 - c0029450: 00f902a3 sb a5,5(s2) + c0029618: 00594783 lbu a5,5(s2) + c002961c: 0107e793 ori a5,a5,16 + c0029620: 00f902a3 sb a5,5(s2) js_closure(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15794 JS_DefineAutoInitProperty(ctx, func_obj, JS_ATOM_prototype, - c0029454: 7582 ld a1,32(sp) - c0029456: 7622 ld a2,40(sp) - c0029458: 4809 li a6,2 - c002945a: 4781 li a5,0 - c002945c: 4701 li a4,0 - c002945e: 03c00693 li a3,60 - c0029462: 8522 mv a0,s0 - c0029464: 8faed0ef jal ra,c001655e - c0029468: bfc9 j c002943a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15793 + c0029624: 7582 ld a1,32(sp) + c0029626: 7622 ld a2,40(sp) + c0029628: 4809 li a6,2 + c002962a: 4781 li a5,0 + c002962c: 4701 li a4,0 + c002962e: 03c00693 li a3,60 + c0029632: 8522 mv a0,s0 + c0029634: 8faed0ef jal ra,c001672e + c0029638: bfc9 j c002960a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15801 JS_FreeValue(ctx, func_obj); - c002946a: 7582 ld a1,32(sp) - c002946c: 7622 ld a2,40(sp) - c002946e: 8522 mv a0,s0 - c0029470: ec8de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15794 + c002963a: 7582 ld a1,32(sp) + c002963c: 7622 ld a2,40(sp) + c002963e: 8522 mv a0,s0 + c0029640: de6de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15802 return JS_EXCEPTION; - c0029474: 4799 li a5,6 - c0029476: f802 sd zero,48(sp) - c0029478: fc3e sd a5,56(sp) - c002947a: b715 j c002939e + c0029644: 4799 li a5,6 + c0029646: f802 sd zero,48(sp) + c0029648: fc3e sd a5,56(sp) + c002964a: b715 j c002956e -00000000c002947c : +00000000c002964c : JS_DefinePropertyValueValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9449 { - c002947c: 711d addi sp,sp,-96 - c002947e: f82e sd a1,48(sp) - c0029480: fc32 sd a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9444 + c002964c: 711d addi sp,sp,-96 + c002964e: f82e sd a1,48(sp) + c0029650: fc32 sd a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9452 atom = JS_ValueToAtom(ctx, prop); - c0029482: 85b6 mv a1,a3 - c0029484: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9441 -{ - c0029486: ec42 sd a6,24(sp) - c0029488: ec86 sd ra,88(sp) - c002948a: e8a2 sd s0,80(sp) - c002948c: e4a6 sd s1,72(sp) - c002948e: 842a mv s0,a0 - c0029490: f036 sd a3,32(sp) - c0029492: f43a sd a4,40(sp) - c0029494: e83e sd a5,16(sp) - c0029496: e446 sd a7,8(sp) - c0029498: e0ca sd s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9444 + c0029652: 85b6 mv a1,a3 + c0029654: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9449 +{ + c0029656: ec42 sd a6,24(sp) + c0029658: ec86 sd ra,88(sp) + c002965a: e8a2 sd s0,80(sp) + c002965c: e4a6 sd s1,72(sp) + c002965e: 842a mv s0,a0 + c0029660: f036 sd a3,32(sp) + c0029662: f43a sd a4,40(sp) + c0029664: e83e sd a5,16(sp) + c0029666: e446 sd a7,8(sp) + c0029668: e0ca sd s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9452 atom = JS_ValueToAtom(ctx, prop); - c002949a: 982f80ef jal ra,c002161c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9445 + c002966a: 982f80ef jal ra,c00217ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9453 JS_FreeValue(ctx, prop); - c002949e: 7582 ld a1,32(sp) - c00294a0: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9444 + c002966e: 7582 ld a1,32(sp) + c0029670: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9452 atom = JS_ValueToAtom(ctx, prop); - c00294a2: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9445 + c0029672: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9453 JS_FreeValue(ctx, prop); - c00294a6: 8522 mv a0,s0 - c00294a8: e90de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9446 + c0029676: 8522 mv a0,s0 + c0029678: daede0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9454 if (unlikely(atom == JS_ATOM_NULL)) { - c00294ac: 6822 ld a6,8(sp) - c00294ae: ec91 bnez s1,c00294ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9447 + c002967c: 6822 ld a6,8(sp) + c002967e: ec91 bnez s1,c002969a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9455 JS_FreeValue(ctx, val); - c00294b0: 65c2 ld a1,16(sp) - c00294b2: 6662 ld a2,24(sp) - c00294b4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9448 + c0029680: 65c2 ld a1,16(sp) + c0029682: 6662 ld a2,24(sp) + c0029684: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9456 return -1; - c00294b6: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9447 + c0029686: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9455 JS_FreeValue(ctx, val); - c00294b8: e80de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9453 -} - c00294bc: 60e6 ld ra,88(sp) - c00294be: 6446 ld s0,80(sp) - c00294c0: 64a6 ld s1,72(sp) - c00294c2: 854a mv a0,s2 - c00294c4: 6906 ld s2,64(sp) - c00294c6: 6125 addi sp,sp,96 - c00294c8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9450 + c0029688: d9ede0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9461 +} + c002968c: 60e6 ld ra,88(sp) + c002968e: 6446 ld s0,80(sp) + c0029690: 64a6 ld s1,72(sp) + c0029692: 854a mv a0,s2 + c0029694: 6906 ld s2,64(sp) + c0029696: 6125 addi sp,sp,96 + c0029698: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9458 ret = JS_DefinePropertyValue(ctx, this_obj, atom, val, flags); - c00294ca: 75c2 ld a1,48(sp) - c00294cc: 6742 ld a4,16(sp) - c00294ce: 67e2 ld a5,24(sp) - c00294d0: 7662 ld a2,56(sp) - c00294d2: 86a6 mv a3,s1 - c00294d4: 8522 mv a0,s0 - c00294d6: ae1e90ef jal ra,c0012fb6 - c00294da: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9451 + c002969a: 75c2 ld a1,48(sp) + c002969c: 6742 ld a4,16(sp) + c002969e: 67e2 ld a5,24(sp) + c00296a0: 7662 ld a2,56(sp) + c00296a2: 86a6 mv a3,s1 + c00296a4: 8522 mv a0,s0 + c00296a6: 9ffe90ef jal ra,c00130a4 + c00296aa: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9459 JS_FreeAtom(ctx, atom); - c00294dc: 85a6 mv a1,s1 - c00294de: 8522 mv a0,s0 - c00294e0: 82cde0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9452 + c00296ac: 85a6 mv a1,s1 + c00296ae: 8522 mv a0,s0 + c00296b0: f4bdd0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9460 return ret; - c00294e4: bfe1 j c00294bc + c00296b4: bfe1 j c002968c -00000000c00294e6 : +00000000c00296b6 : JS_CreateDataPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9504 { - c00294e6: 7139 addi sp,sp,-64 - c00294e8: e43e sd a5,8(sp) - c00294ea: e82e sd a1,16(sp) - c00294ec: ec32 sd a2,24(sp) - c00294ee: e03a sd a4,0(sp) + c00296b6: 7139 addi sp,sp,-64 + c00296b8: e43e sd a5,8(sp) + c00296ba: e82e sd a1,16(sp) + c00296bc: ec32 sd a2,24(sp) + c00296be: e03a sd a4,0(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00294f0: 0006879b sext.w a5,a3 - c00294f4: 02f69363 bne a3,a5,c002951a + c00296c0: 0006879b sext.w a5,a3 + c00296c4: 02f69363 bne a3,a5,c00296ea JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00294f8: da02 sw zero,52(sp) - c00294fa: d83e sw a5,48(sp) - c00294fc: 7742 ld a4,48(sp) - c00294fe: f03a sd a4,32(sp) - c0029500: 4701 li a4,0 + c00296c8: da02 sw zero,52(sp) + c00296ca: d83e sw a5,48(sp) + c00296cc: 7742 ld a4,48(sp) + c00296ce: f03a sd a4,32(sp) + c00296d0: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0029502: d03e sw a5,32(sp) + c00296d2: d03e sw a5,32(sp) JS_CreateDataPropertyUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9505 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewInt64(ctx, idx), - c0029504: 7682 ld a3,32(sp) - c0029506: 6782 ld a5,0(sp) - c0029508: 65c2 ld a1,16(sp) - c002950a: 6662 ld a2,24(sp) - c002950c: 00786893 ori a7,a6,7 - c0029510: 6822 ld a6,8(sp) - c0029512: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9500 -} - c0029514: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9497 + c00296d4: 7682 ld a3,32(sp) + c00296d6: 6782 ld a5,0(sp) + c00296d8: 65c2 ld a1,16(sp) + c00296da: 6662 ld a2,24(sp) + c00296dc: 00786893 ori a7,a6,7 + c00296e0: 6822 ld a6,8(sp) + c00296e2: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9508 +} + c00296e4: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9505 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewInt64(ctx, idx), - c0029516: f67ff06f j c002947c + c00296e6: f67ff06f j c002964c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c002951a: d226f7d3 fcvt.d.l fa5,a3 - c002951e: 471d li a4,7 - c0029520: e20787d3 fmv.x.d a5,fa5 + c00296ea: d226f7d3 fcvt.d.l fa5,a3 + c00296ee: 471d li a4,7 + c00296f0: e20787d3 fmv.x.d a5,fa5 JS_CreateDataPropertyUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0029524: b03e fsd fa5,32(sp) - c0029526: 2781 sext.w a5,a5 - c0029528: bfe9 j c0029502 + c00296f4: b03e fsd fa5,32(sp) + c00296f6: 2781 sext.w a5,a5 + c00296f8: bfe9 j c00296d2 -00000000c002952a : +00000000c00296fa : js_create_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40692 -{ - c002952a: 711d addi sp,sp,-96 - c002952c: e0ca sd s2,64(sp) - c002952e: fc4e sd s3,56(sp) - c0029530: f852 sd s4,48(sp) - c0029532: ec86 sd ra,88(sp) - c0029534: e8a2 sd s0,80(sp) - c0029536: e4a6 sd s1,72(sp) - c0029538: 892a mv s2,a0 - c002953a: 89ae mv s3,a1 - c002953c: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40696 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40700 +{ + c00296fa: 711d addi sp,sp,-96 + c00296fc: e0ca sd s2,64(sp) + c00296fe: fc4e sd s3,56(sp) + c0029700: f852 sd s4,48(sp) + c0029702: ec86 sd ra,88(sp) + c0029704: e8a2 sd s0,80(sp) + c0029706: e4a6 sd s1,72(sp) + c0029708: 892a mv s2,a0 + c002970a: 89ae mv s3,a1 + c002970c: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40704 obj = JS_NewArray(ctx); - c002953e: a81ed0ef jal ra,c0016fbe - c0029542: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40697 + c002970e: a81ed0ef jal ra,c001718e + c0029712: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40705 if (JS_IsException(obj)) - c0029544: 0005879b sext.w a5,a1 - c0029548: 4719 li a4,6 - c002954a: 04e79a63 bne a5,a4,c002959e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40698 + c0029714: 0005879b sext.w a5,a1 + c0029718: 4719 li a4,6 + c002971a: 04e79a63 bne a5,a4,c002976e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40706 return JS_EXCEPTION; - c002954e: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40702 + c002971e: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40710 return JS_EXCEPTION; - c0029550: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40706 (discriminator 1) -} - c0029552: 60e6 ld ra,88(sp) - c0029554: 6446 ld s0,80(sp) - c0029556: 6542 ld a0,16(sp) - c0029558: 65e2 ld a1,24(sp) - c002955a: 64a6 ld s1,72(sp) - c002955c: 6906 ld s2,64(sp) - c002955e: 79e2 ld s3,56(sp) - c0029560: 7a42 ld s4,48(sp) - c0029562: 6125 addi sp,sp,96 - c0029564: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40700 + c0029720: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40714 (discriminator 1) +} + c0029722: 60e6 ld ra,88(sp) + c0029724: 6446 ld s0,80(sp) + c0029726: 6542 ld a0,16(sp) + c0029728: 65e2 ld a1,24(sp) + c002972a: 64a6 ld s1,72(sp) + c002972c: 6906 ld s2,64(sp) + c002972e: 79e2 ld s3,56(sp) + c0029730: 7a42 ld s4,48(sp) + c0029732: 6125 addi sp,sp,96 + c0029734: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40708 if (JS_CreateDataPropertyUint32(ctx, obj, i, JS_DupValue(ctx, tab[i]), 0) < 0) { - c0029566: 00449793 slli a5,s1,0x4 - c002956a: 97d2 add a5,a5,s4 - c002956c: 6388 ld a0,0(a5) - c002956e: 678c ld a1,8(a5) - c0029570: 8fedd0ef jal ra,c000666e - c0029574: 87ae mv a5,a1 - c0029576: 6582 ld a1,0(sp) - c0029578: 872a mv a4,a0 - c002957a: 86a6 mv a3,s1 - c002957c: 4801 li a6,0 - c002957e: 8622 mv a2,s0 - c0029580: 854a mv a0,s2 - c0029582: e422 sd s0,8(sp) - c0029584: f63ff0ef jal ra,c00294e6 - c0029588: 0485 addi s1,s1,1 - c002958a: 00055c63 bgez a0,c00295a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40701 + c0029736: 00449793 slli a5,s1,0x4 + c002973a: 97d2 add a5,a5,s4 + c002973c: 6388 ld a0,0(a5) + c002973e: 678c ld a1,8(a5) + c0029740: 81cdd0ef jal ra,c000675c + c0029744: 87ae mv a5,a1 + c0029746: 6582 ld a1,0(sp) + c0029748: 872a mv a4,a0 + c002974a: 86a6 mv a3,s1 + c002974c: 4801 li a6,0 + c002974e: 8622 mv a2,s0 + c0029750: 854a mv a0,s2 + c0029752: e422 sd s0,8(sp) + c0029754: f63ff0ef jal ra,c00296b6 + c0029758: 0485 addi s1,s1,1 + c002975a: 00055c63 bgez a0,c0029772 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40709 JS_FreeValue(ctx, obj); - c002958e: 6582 ld a1,0(sp) - c0029590: 6622 ld a2,8(sp) - c0029592: 854a mv a0,s2 - c0029594: da4de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40702 + c002975e: 6582 ld a1,0(sp) + c0029760: 6622 ld a2,8(sp) + c0029762: 854a mv a0,s2 + c0029764: cc2de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40710 return JS_EXCEPTION; - c0029598: 4799 li a5,6 - c002959a: e802 sd zero,16(sp) - c002959c: bf55 j c0029550 - c002959e: 842e mv s0,a1 - c00295a0: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40699 (discriminator 1) + c0029768: 4799 li a5,6 + c002976a: e802 sd zero,16(sp) + c002976c: bf55 j c0029720 + c002976e: 842e mv s0,a1 + c0029770: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40707 (discriminator 1) for(i = 0; i < len; i++) { - c00295a2: 0004879b sext.w a5,s1 - c00295a6: fd37c0e3 blt a5,s3,c0029566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40705 + c0029772: 0004879b sext.w a5,s1 + c0029776: fd37c0e3 blt a5,s3,c0029736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40713 return obj; - c00295aa: 6782 ld a5,0(sp) - c00295ac: ec22 sd s0,24(sp) - c00295ae: e83e sd a5,16(sp) - c00295b0: b74d j c0029552 + c002977a: 6782 ld a5,0(sp) + c002977c: ec22 sd s0,24(sp) + c002977e: e83e sd a5,16(sp) + c0029780: b74d j c0029722 -00000000c00295b2 : +00000000c0029782 : js_map_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47604 { - c00295b2: 7119 addi sp,sp,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47602 + c0029782: 7119 addi sp,sp,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47610 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP_ITERATOR + magic); - c00295b4: 0268069b addiw a3,a6,38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47596 + c0029784: 0268069b addiw a3,a6,38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47604 { - c00295b8: ecce sd s3,88(sp) - c00295ba: e8d2 sd s4,80(sp) - c00295bc: e4d6 sd s5,72(sp) - c00295be: fc86 sd ra,120(sp) - c00295c0: f8a2 sd s0,112(sp) - c00295c2: f4a6 sd s1,104(sp) - c00295c4: f0ca sd s2,96(sp) - c00295c6: 89aa mv s3,a0 - c00295c8: e02e sd a1,0(sp) - c00295ca: e432 sd a2,8(sp) - c00295cc: 8abe mv s5,a5 - c00295ce: 8a42 mv s4,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47602 + c0029788: ecce sd s3,88(sp) + c002978a: e8d2 sd s4,80(sp) + c002978c: e4d6 sd s5,72(sp) + c002978e: fc86 sd ra,120(sp) + c0029790: f8a2 sd s0,112(sp) + c0029792: f4a6 sd s1,104(sp) + c0029794: f0ca sd s2,96(sp) + c0029796: 89aa mv s3,a0 + c0029798: e02e sd a1,0(sp) + c002979a: e432 sd a2,8(sp) + c002979c: 8abe mv s5,a5 + c002979e: 8a42 mv s4,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47610 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP_ITERATOR + magic); - c00295d0: fa9e90ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47603 + c00297a0: ec7e90ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47611 if (!it) { - c00295d4: e10d bnez a0,c00295f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47604 + c00297a4: e10d bnez a0,c00297c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47612 *pdone = FALSE; - c00295d6: 000aa023 sw zero,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47605 + c00297a6: 000aa023 sw zero,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47613 return JS_EXCEPTION; - c00295da: e802 sd zero,16(sp) - c00295dc: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47627 + c00297aa: e802 sd zero,16(sp) + c00297ac: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47635 return JS_UNDEFINED; - c00295de: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47656 (discriminator 1) -} - c00295e0: 70e6 ld ra,120(sp) - c00295e2: 7446 ld s0,112(sp) - c00295e4: 6542 ld a0,16(sp) - c00295e6: 65e2 ld a1,24(sp) - c00295e8: 74a6 ld s1,104(sp) - c00295ea: 7906 ld s2,96(sp) - c00295ec: 69e6 ld s3,88(sp) - c00295ee: 6a46 ld s4,80(sp) - c00295f0: 6aa6 ld s5,72(sp) - c00295f2: 6109 addi sp,sp,128 - c00295f4: 8082 ret + c00297ae: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47664 (discriminator 1) +} + c00297b0: 70e6 ld ra,120(sp) + c00297b2: 7446 ld s0,112(sp) + c00297b4: 6542 ld a0,16(sp) + c00297b6: 65e2 ld a1,24(sp) + c00297b8: 74a6 ld s1,104(sp) + c00297ba: 7906 ld s2,96(sp) + c00297bc: 69e6 ld s3,88(sp) + c00297be: 6a46 ld s4,80(sp) + c00297c0: 6aa6 ld s5,72(sp) + c00297c2: 6109 addi sp,sp,128 + c00297c4: 8082 ret JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00295f6: 650c ld a1,8(a0) + c00297c6: 650c ld a1,8(a0) js_map_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47607 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47615 if (JS_IsUndefined(it->obj)) - c00295f8: 478d li a5,3 - c00295fa: 842a mv s0,a0 - c00295fc: 0005871b sext.w a4,a1 - c0029600: 04f70463 beq a4,a5,c0029648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47609 + c00297c8: 478d li a5,3 + c00297ca: 842a mv s0,a0 + c00297cc: 0005871b sext.w a4,a1 + c00297d0: 04f70463 beq a4,a5,c0029818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47617 s = JS_GetOpaque(it->obj, JS_CLASS_MAP + magic); - c0029604: 6108 ld a0,0(a0) - c0029606: 022a061b addiw a2,s4,34 - c002960a: aa8e10ef jal ra,c000a8b2 - c002960e: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47610 + c00297d4: 6108 ld a0,0(a0) + c00297d6: 022a061b addiw a2,s4,34 + c00297da: 9c6e10ef jal ra,c000a9a0 + c00297de: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47618 assert(s != NULL); - c0029610: e919 bnez a0,c0029626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47610 (discriminator 1) - c0029612: 65b1 lui a1,0xc - c0029614: 4601 li a2,0 - c0029616: 9fa58593 addi a1,a1,-1542 # b9fa <__clzdi2-0xbfff4606> - c002961a: 00033517 auipc a0,0x33 - c002961e: 45e50513 addi a0,a0,1118 # c005ca78 - c0029622: 3f62a0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47611 (discriminator 2) + c00297e0: e919 bnez a0,c00297f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47618 (discriminator 1) + c00297e2: 65b1 lui a1,0xc + c00297e4: 4601 li a2,0 + c00297e6: a0258593 addi a1,a1,-1534 # ba02 <__clzdi2-0xbfff45fe> + c00297ea: 00033517 auipc a0,0x33 + c00297ee: 45e50513 addi a0,a0,1118 # c005cc48 + c00297f2: 3f62a0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47619 (discriminator 2) if (!it->cur_record) { - c0029626: 6c0c ld a1,24(s0) - c0029628: e595 bnez a1,c0029654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47612 + c00297f6: 6c0c ld a1,24(s0) + c00297f8: e595 bnez a1,c0029824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47620 el = s->records.next; - c002962a: 6904 ld s1,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47619 + c00297fa: 6904 ld s1,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47627 if (el == &s->records) { - c002962c: 0921 addi s2,s2,8 - c002962e: 03249963 bne s1,s2,c0029660 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47622 + c00297fc: 0921 addi s2,s2,8 + c00297fe: 03249963 bne s1,s2,c0029830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47630 JS_FreeValue(ctx, it->obj); - c0029632: 600c ld a1,0(s0) - c0029634: 6410 ld a2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47621 + c0029802: 600c ld a1,0(s0) + c0029804: 6410 ld a2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47629 it->cur_record = NULL; - c0029636: 00043c23 sd zero,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47622 + c0029806: 00043c23 sd zero,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47630 JS_FreeValue(ctx, it->obj); - c002963a: 854e mv a0,s3 - c002963c: cfcde0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47623 + c002980a: 854e mv a0,s3 + c002980c: c1ade0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47631 it->obj = JS_UNDEFINED; - c0029640: 478d li a5,3 - c0029642: 00043023 sd zero,0(s0) - c0029646: e41c sd a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47626 + c0029810: 478d li a5,3 + c0029812: 00043023 sd zero,0(s0) + c0029816: e41c sd a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47634 *pdone = TRUE; - c0029648: 4785 li a5,1 - c002964a: 00faa023 sw a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47627 + c0029818: 4785 li a5,1 + c002981a: 00faa023 sw a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47635 return JS_UNDEFINED; - c002964e: e802 sd zero,16(sp) - c0029650: 478d li a5,3 - c0029652: b771 j c00295de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47616 + c002981e: e802 sd zero,16(sp) + c0029820: 478d li a5,3 + c0029822: b771 j c00297ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47624 map_decref_record(ctx->rt, mr); /* the record can be freed here */ - c0029654: 0189b503 ld a0,24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47615 + c0029824: 0189b503 ld a0,24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47623 el = mr->link.next; - c0029658: 7184 ld s1,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47616 + c0029828: 7184 ld s1,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47624 map_decref_record(ctx->rt, mr); /* the record can be freed here */ - c002965a: e44dd0ef jal ra,c0006c9e - c002965e: b7f9 j c002962c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47630 + c002982a: d62dd0ef jal ra,c0006d8c + c002982e: b7f9 j c00297fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47638 if (!mr->empty) - c0029660: fec4a783 lw a5,-20(s1) - c0029664: c399 beqz a5,c002966a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47633 + c0029830: fec4a783 lw a5,-20(s1) + c0029834: c399 beqz a5,c002983a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47641 el = mr->link.next; - c0029666: 6484 ld s1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47619 + c0029836: 6484 ld s1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47627 if (el == &s->records) { - c0029668: b7d9 j c002962e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47637 + c0029838: b7d9 j c00297fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47645 mr->ref_count++; - c002966a: fe84a703 lw a4,-24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47629 - mr = list_entry(el, JSMapRecord, link); - c002966e: fe848793 addi a5,s1,-24 + c002983a: fe84a703 lw a4,-24(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47637 + mr = list_entry(el, JSMapRecord, link); + c002983e: fe848793 addi a5,s1,-24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47645 mr->ref_count++; - c0029672: 2705 addiw a4,a4,1 - c0029674: fee4a423 sw a4,-24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47638 + c0029842: 2705 addiw a4,a4,1 + c0029844: fee4a423 sw a4,-24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47646 it->cur_record = mr; - c0029678: ec1c sd a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47639 + c0029848: ec1c sd a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47647 *pdone = FALSE; - c002967a: 000aa023 sw zero,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47641 + c002984a: 000aa023 sw zero,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47649 if (it->kind == JS_ITERATOR_KIND_KEY) { - c002967e: 4818 lw a4,16(s0) - c0029680: ef09 bnez a4,c002969a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47656 + c002984e: 4818 lw a4,16(s0) + c0029850: ef09 bnez a4,c002986a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47664 } - c0029682: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47642 + c0029852: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47650 return JS_DupValue(ctx, mr->key); - c0029684: 7088 ld a0,32(s1) - c0029686: 748c ld a1,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47656 -} - c0029688: 70e6 ld ra,120(sp) - c002968a: 74a6 ld s1,104(sp) - c002968c: 7906 ld s2,96(sp) - c002968e: 69e6 ld s3,88(sp) - c0029690: 6a46 ld s4,80(sp) - c0029692: 6aa6 ld s5,72(sp) - c0029694: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47642 + c0029854: 7088 ld a0,32(s1) + c0029856: 748c ld a1,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47664 +} + c0029858: 70e6 ld ra,120(sp) + c002985a: 74a6 ld s1,104(sp) + c002985c: 7906 ld s2,96(sp) + c002985e: 69e6 ld s3,88(sp) + c0029860: 6a46 ld s4,80(sp) + c0029862: 6aa6 ld s5,72(sp) + c0029864: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47650 return JS_DupValue(ctx, mr->key); - c0029696: fd9dc06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47645 + c0029866: ef7dc06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47653 args[0] = mr->key; - c002969a: 7098 ld a4,32(s1) - c002969c: 749c ld a5,40(s1) - c002969e: f03a sd a4,32(sp) - c00296a0: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47646 + c002986a: 7098 ld a4,32(s1) + c002986c: 749c ld a5,40(s1) + c002986e: f03a sd a4,32(sp) + c0029870: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47654 if (magic) - c00296a2: 000a0f63 beqz s4,c00296c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47647 + c0029872: 000a0f63 beqz s4,c0029890 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47655 args[1] = mr->key; - c00296a6: f83a sd a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47649 + c0029876: f83a sd a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47657 args[1] = mr->value; - c00296a8: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47650 + c0029878: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47658 if (it->kind == JS_ITERATOR_KIND_VALUE) { - c00296aa: 4818 lw a4,16(s0) - c00296ac: 4785 li a5,1 - c00296ae: 00f71d63 bne a4,a5,c00296c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47651 + c002987a: 4818 lw a4,16(s0) + c002987c: 4785 li a5,1 + c002987e: 00f71d63 bne a4,a5,c0029898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47659 return JS_DupValue(ctx, args[1]); - c00296b2: 7542 ld a0,48(sp) - c00296b4: 75e2 ld a1,56(sp) - c00296b6: fb9dc0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47653 + c0029882: 7542 ld a0,48(sp) + c0029884: 75e2 ld a1,56(sp) + c0029886: ed7dc0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47661 return js_create_array(ctx, 2, args); - c00296ba: e82a sd a0,16(sp) - c00296bc: ec2e sd a1,24(sp) - c00296be: b70d j c00295e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47649 + c002988a: e82a sd a0,16(sp) + c002988c: ec2e sd a1,24(sp) + c002988e: b70d j c00297b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47657 args[1] = mr->value; - c00296c0: 789c ld a5,48(s1) - c00296c2: f83e sd a5,48(sp) - c00296c4: 7c9c ld a5,56(s1) - c00296c6: b7cd j c00296a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47653 + c0029890: 789c ld a5,48(s1) + c0029892: f83e sd a5,48(sp) + c0029894: 7c9c ld a5,56(s1) + c0029896: b7cd j c0029878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47661 return js_create_array(ctx, 2, args); - c00296c8: 1010 addi a2,sp,32 - c00296ca: 854e mv a0,s3 - c00296cc: 4589 li a1,2 - c00296ce: e5dff0ef jal ra,c002952a - c00296d2: b7e5 j c00296ba + c0029898: 1010 addi a2,sp,32 + c002989a: 854e mv a0,s3 + c002989c: 4589 li a1,2 + c002989e: e5dff0ef jal ra,c00296fa + c00298a2: b7e5 j c002988a -00000000c00296d4 : +00000000c00298a4 : JS_DefinePropertyValueUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9457 -{ - c00296d4: 7139 addi sp,sp,-64 - c00296d6: e82e sd a1,16(sp) - c00296d8: ec32 sd a2,24(sp) - c00296da: e03a sd a4,0(sp) - c00296dc: e43e sd a5,8(sp) - c00296de: 88c2 mv a7,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9465 +{ + c00298a4: 7139 addi sp,sp,-64 + c00298a6: e82e sd a1,16(sp) + c00298a8: ec32 sd a2,24(sp) + c00298aa: e03a sd a4,0(sp) + c00298ac: e43e sd a5,8(sp) + c00298ae: 88c2 mv a7,a6 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c00296e0: 0206c363 bltz a3,c0029706 - c00296e4: 0006879b sext.w a5,a3 + c00298b0: 0206c363 bltz a3,c00298d6 + c00298b4: 0006879b sext.w a5,a3 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00296e8: da02 sw zero,52(sp) - c00296ea: d83e sw a5,48(sp) - c00296ec: 7742 ld a4,48(sp) - c00296ee: f03a sd a4,32(sp) - c00296f0: 4701 li a4,0 + c00298b8: da02 sw zero,52(sp) + c00298ba: d83e sw a5,48(sp) + c00298bc: 7742 ld a4,48(sp) + c00298be: f03a sd a4,32(sp) + c00298c0: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c00296f2: d03e sw a5,32(sp) + c00298c2: d03e sw a5,32(sp) JS_DefinePropertyValueUint32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9466 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewUint32(ctx, idx), - c00296f4: 6822 ld a6,8(sp) - c00296f6: 6782 ld a5,0(sp) - c00296f8: 7682 ld a3,32(sp) - c00296fa: 65c2 ld a1,16(sp) - c00296fc: 6662 ld a2,24(sp) - c00296fe: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9460 -} - c0029700: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9458 + c00298c4: 6822 ld a6,8(sp) + c00298c6: 6782 ld a5,0(sp) + c00298c8: 7682 ld a3,32(sp) + c00298ca: 65c2 ld a1,16(sp) + c00298cc: 6662 ld a2,24(sp) + c00298ce: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9468 +} + c00298d0: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9466 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewUint32(ctx, idx), - c0029702: d7bff06f j c002947c + c00298d2: d7bff06f j c002964c JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0029706: d21687d3 fcvt.d.wu fa5,a3 - c002970a: 471d li a4,7 - c002970c: e20787d3 fmv.x.d a5,fa5 + c00298d6: d21687d3 fcvt.d.wu fa5,a3 + c00298da: 471d li a4,7 + c00298dc: e20787d3 fmv.x.d a5,fa5 JS_DefinePropertyValueUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0029710: b03e fsd fa5,32(sp) - c0029712: 2781 sext.w a5,a5 - c0029714: bff9 j c00296f2 + c00298e0: b03e fsd fa5,32(sp) + c00298e2: 2781 sext.w a5,a5 + c00298e4: bff9 j c00298c2 -00000000c0029716 : +00000000c00298e6 : JS_DefinePropertyValueInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9472 { - c0029716: 7139 addi sp,sp,-64 - c0029718: e43e sd a5,8(sp) - c002971a: e82e sd a1,16(sp) - c002971c: ec32 sd a2,24(sp) - c002971e: e03a sd a4,0(sp) + c00298e6: 7139 addi sp,sp,-64 + c00298e8: e43e sd a5,8(sp) + c00298ea: e82e sd a1,16(sp) + c00298ec: ec32 sd a2,24(sp) + c00298ee: e03a sd a4,0(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0029720: 0006879b sext.w a5,a3 + c00298f0: 0006879b sext.w a5,a3 JS_DefinePropertyValueInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9464 - c0029724: 88c2 mv a7,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9472 + c00298f4: 88c2 mv a7,a6 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 - c0029726: 02f69163 bne a3,a5,c0029748 + c00298f6: 02f69163 bne a3,a5,c0029918 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c002972a: da02 sw zero,52(sp) - c002972c: d83e sw a5,48(sp) - c002972e: 7742 ld a4,48(sp) - c0029730: f03a sd a4,32(sp) - c0029732: 4701 li a4,0 + c00298fa: da02 sw zero,52(sp) + c00298fc: d83e sw a5,48(sp) + c00298fe: 7742 ld a4,48(sp) + c0029900: f03a sd a4,32(sp) + c0029902: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0029734: d03e sw a5,32(sp) + c0029904: d03e sw a5,32(sp) JS_DefinePropertyValueInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9465 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9473 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewInt64(ctx, idx), - c0029736: 6822 ld a6,8(sp) - c0029738: 6782 ld a5,0(sp) - c002973a: 7682 ld a3,32(sp) - c002973c: 65c2 ld a1,16(sp) - c002973e: 6662 ld a2,24(sp) - c0029740: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9467 -} - c0029742: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9465 + c0029906: 6822 ld a6,8(sp) + c0029908: 6782 ld a5,0(sp) + c002990a: 7682 ld a3,32(sp) + c002990c: 65c2 ld a1,16(sp) + c002990e: 6662 ld a2,24(sp) + c0029910: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9475 +} + c0029912: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9473 return JS_DefinePropertyValueValue(ctx, this_obj, JS_NewInt64(ctx, idx), - c0029744: d39ff06f j c002947c + c0029914: d39ff06f j c002964c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0029748: d226f7d3 fcvt.d.l fa5,a3 - c002974c: 471d li a4,7 - c002974e: e20787d3 fmv.x.d a5,fa5 + c0029918: d226f7d3 fcvt.d.l fa5,a3 + c002991c: 471d li a4,7 + c002991e: e20787d3 fmv.x.d a5,fa5 JS_DefinePropertyValueInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0029752: b03e fsd fa5,32(sp) - c0029754: 2781 sext.w a5,a5 - c0029756: bff9 j c0029734 + c0029922: b03e fsd fa5,32(sp) + c0029924: 2781 sext.w a5,a5 + c0029926: bff9 j c0029904 -00000000c0029758 : +00000000c0029928 : JS_DefinePropertyValueStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9471 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9479 { - c0029758: 715d addi sp,sp,-80 - c002975a: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9474 + c0029928: 715d addi sp,sp,-80 + c002992a: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9482 atom = JS_NewAtom(ctx, prop); - c002975c: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9471 -{ - c002975e: e486 sd ra,72(sp) - c0029760: e0a2 sd s0,64(sp) - c0029762: fc26 sd s1,56(sp) - c0029764: f84a sd s2,48(sp) - c0029766: 842a mv s0,a0 - c0029768: f432 sd a2,40(sp) - c002976a: e83a sd a4,16(sp) - c002976c: ec3e sd a5,24(sp) - c002976e: e442 sd a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9474 + c002992c: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9479 +{ + c002992e: e486 sd ra,72(sp) + c0029930: e0a2 sd s0,64(sp) + c0029932: fc26 sd s1,56(sp) + c0029934: f84a sd s2,48(sp) + c0029936: 842a mv s0,a0 + c0029938: f432 sd a2,40(sp) + c002993a: e83a sd a4,16(sp) + c002993c: ec3e sd a5,24(sp) + c002993e: e442 sd a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9482 atom = JS_NewAtom(ctx, prop); - c0029770: cd1ef0ef jal ra,c0019440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9475 + c0029940: cd1ef0ef jal ra,c0019610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9483 ret = JS_DefinePropertyValue(ctx, this_obj, atom, val, flags); - c0029774: 6822 ld a6,8(sp) - c0029776: 6742 ld a4,16(sp) - c0029778: 67e2 ld a5,24(sp) - c002977a: 7582 ld a1,32(sp) - c002977c: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9474 + c0029944: 6822 ld a6,8(sp) + c0029946: 6742 ld a4,16(sp) + c0029948: 67e2 ld a5,24(sp) + c002994a: 7582 ld a1,32(sp) + c002994c: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9482 atom = JS_NewAtom(ctx, prop); - c002977e: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9475 + c002994e: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9483 ret = JS_DefinePropertyValue(ctx, this_obj, atom, val, flags); - c0029782: 86a6 mv a3,s1 - c0029784: 8522 mv a0,s0 - c0029786: 831e90ef jal ra,c0012fb6 - c002978a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9476 + c0029952: 86a6 mv a3,s1 + c0029954: 8522 mv a0,s0 + c0029956: f4ee90ef jal ra,c00130a4 + c002995a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9484 JS_FreeAtom(ctx, atom); - c002978c: 85a6 mv a1,s1 - c002978e: 8522 mv a0,s0 - c0029790: d7ddd0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9478 -} - c0029794: 60a6 ld ra,72(sp) - c0029796: 6406 ld s0,64(sp) - c0029798: 74e2 ld s1,56(sp) - c002979a: 854a mv a0,s2 - c002979c: 7942 ld s2,48(sp) - c002979e: 6161 addi sp,sp,80 - c00297a0: 8082 ret - -00000000c00297a2 : + c002995c: 85a6 mv a1,s1 + c002995e: 8522 mv a0,s0 + c0029960: c9bdd0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 +} + c0029964: 60a6 ld ra,72(sp) + c0029966: 6406 ld s0,64(sp) + c0029968: 74e2 ld s1,56(sp) + c002996a: 854a mv a0,s2 + c002996c: 7942 ld s2,48(sp) + c002996e: 6161 addi sp,sp,80 + c0029970: 8082 ret + +00000000c0029972 : JS_GetModuleNamespace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28003 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28011 { - c00297a2: 7155 addi sp,sp,-208 - c00297a4: f54e sd s3,168(sp) - c00297a6: e586 sd ra,200(sp) - c00297a8: e1a2 sd s0,192(sp) - c00297aa: fd26 sd s1,184(sp) - c00297ac: f94a sd s2,176(sp) - c00297ae: f152 sd s4,160(sp) - c00297b0: ed56 sd s5,152(sp) - c00297b2: e95a sd s6,144(sp) - c00297b4: e55e sd s7,136(sp) - c00297b6: e162 sd s8,128(sp) - c00297b8: fce6 sd s9,120(sp) - c00297ba: f8ea sd s10,112(sp) - c00297bc: f4ee sd s11,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28004 + c0029972: 7155 addi sp,sp,-208 + c0029974: f54e sd s3,168(sp) + c0029976: e586 sd ra,200(sp) + c0029978: e1a2 sd s0,192(sp) + c002997a: fd26 sd s1,184(sp) + c002997c: f94a sd s2,176(sp) + c002997e: f152 sd s4,160(sp) + c0029980: ed56 sd s5,152(sp) + c0029982: e95a sd s6,144(sp) + c0029984: e55e sd s7,136(sp) + c0029986: e162 sd s8,128(sp) + c0029988: fce6 sd s9,120(sp) + c002998a: f8ea sd s10,112(sp) + c002998c: f4ee sd s11,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28012 if (JS_IsUndefined(m->module_ns)) { - c00297be: 51b8 lw a4,96(a1) - c00297c0: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28003 + c002998e: 51b8 lw a4,96(a1) + c0029990: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28011 { - c00297c2: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28004 + c0029992: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28012 if (JS_IsUndefined(m->module_ns)) { - c00297c4: 02f71c63 bne a4,a5,c00297fc + c0029994: 02f71c63 bne a4,a5,c00299cc js_build_module_ns(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27915 obj = JS_NewObjectClass(ctx, JS_CLASS_MODULE_NS); - c00297c8: 45ad li a1,11 - c00297ca: 842a mv s0,a0 - c00297cc: ca4ed0ef jal ra,c0016c70 - c00297d0: e82a sd a0,16(sp) - c00297d2: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27908 + c0029998: 45ad li a1,11 + c002999a: 842a mv s0,a0 + c002999c: ca4ed0ef jal ra,c0016e40 + c00299a0: e82a sd a0,16(sp) + c00299a2: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27916 if (JS_IsException(obj)) - c00297d4: 0005871b sext.w a4,a1 - c00297d8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27907 + c00299a4: 0005871b sext.w a4,a1 + c00299a8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27915 obj = JS_NewObjectClass(ctx, JS_CLASS_MODULE_NS); - c00297da: 84aa mv s1,a0 - c00297dc: 8a2e mv s4,a1 - c00297de: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27908 + c00299aa: 84aa mv s1,a0 + c00299ac: 8a2e mv s4,a1 + c00299ae: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27916 if (JS_IsException(obj)) - c00297e0: 04f71263 bne a4,a5,c0029824 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27995 + c00299b0: 04f71263 bne a4,a5,c00299f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28003 return obj; - c00297e4: f826 sd s1,48(sp) - c00297e6: fc5a sd s6,56(sp) + c00299b4: f826 sd s1,48(sp) + c00299b6: fc5a sd s6,56(sp) JS_GetModuleNamespace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28007 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28015 if (JS_IsException(val)) - c00297e8: 000b079b sext.w a5,s6 - c00297ec: 4699 li a3,6 - c00297ee: 7742 ld a4,48(sp) - c00297f0: 1ad78363 beq a5,a3,c0029996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28009 + c00299b8: 000b079b sext.w a5,s6 + c00299bc: 4699 li a3,6 + c00299be: 7742 ld a4,48(sp) + c00299c0: 1ad78363 beq a5,a3,c0029b66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28017 m->module_ns = val; - c00297f4: 04e9bc23 sd a4,88(s3) - c00297f8: 0769b023 sd s6,96(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28012 + c00299c4: 04e9bc23 sd a4,88(s3) + c00299c8: 0769b023 sd s6,96(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28020 } - c00297fc: 640e ld s0,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28011 + c00299cc: 640e ld s0,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28019 return JS_DupValue(ctx, m->module_ns); - c00297fe: 0589b503 ld a0,88(s3) - c0029802: 0609b583 ld a1,96(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28012 + c00299ce: 0589b503 ld a0,88(s3) + c00299d2: 0609b583 ld a1,96(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28020 } - c0029806: 60ae ld ra,200(sp) - c0029808: 74ea ld s1,184(sp) - c002980a: 794a ld s2,176(sp) - c002980c: 79aa ld s3,168(sp) - c002980e: 7a0a ld s4,160(sp) - c0029810: 6aea ld s5,152(sp) - c0029812: 6b4a ld s6,144(sp) - c0029814: 6baa ld s7,136(sp) - c0029816: 6c0a ld s8,128(sp) - c0029818: 7ce6 ld s9,120(sp) - c002981a: 7d46 ld s10,112(sp) - c002981c: 7da6 ld s11,104(sp) - c002981e: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28011 + c00299d6: 60ae ld ra,200(sp) + c00299d8: 74ea ld s1,184(sp) + c00299da: 794a ld s2,176(sp) + c00299dc: 79aa ld s3,168(sp) + c00299de: 7a0a ld s4,160(sp) + c00299e0: 6aea ld s5,152(sp) + c00299e2: 6b4a ld s6,144(sp) + c00299e4: 6baa ld s7,136(sp) + c00299e6: 6c0a ld s8,128(sp) + c00299e8: 7ce6 ld s9,120(sp) + c00299ea: 7d46 ld s10,112(sp) + c00299ec: 7da6 ld s11,104(sp) + c00299ee: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28019 return JS_DupValue(ctx, m->module_ns); - c0029820: e4fdc06f j c000666e + c00299f0: d6ddc06f j c000675c js_build_module_ns(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27921 ret = get_exported_names(ctx, s, m, FALSE); - c0029824: 008c addi a1,sp,64 - c0029826: 4681 li a3,0 - c0029828: 864e mv a2,s3 - c002982a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27912 + c00299f4: 008c addi a1,sp,64 + c00299f6: 4681 li a3,0 + c00299f8: 864e mv a2,s3 + c00299fa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27920 memset(s, 0, sizeof(*s)); - c002982c: e082 sd zero,64(sp) - c002982e: e482 sd zero,72(sp) - c0029830: e882 sd zero,80(sp) - c0029832: ec82 sd zero,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27913 + c00299fc: e082 sd zero,64(sp) + c00299fe: e482 sd zero,72(sp) + c0029a00: e882 sd zero,80(sp) + c0029a02: ec82 sd zero,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27921 ret = get_exported_names(ctx, s, m, FALSE); - c0029834: eebed0ef jal ra,c001771e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27914 + c0029a04: eebed0ef jal ra,c00178ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27922 js_free(ctx, s->modules); - c0029838: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27913 + c0029a08: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27921 ret = get_exported_names(ctx, s, m, FALSE); - c002983a: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27914 + c0029a0a: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27922 js_free(ctx, s->modules); - c002983c: 8522 mv a0,s0 - c002983e: dfcdd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27915 + c0029a0c: 8522 mv a0,s0 + c0029a0e: d1add0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27923 if (ret) - c0029842: 0c0a9063 bnez s5,c0029902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27919 + c0029a12: 0c0a9063 bnez s5,c0029ad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27927 for(i = 0; i < s->exported_names_count; i++) { - c0029846: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27940 + c0029a16: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27948 if (res_me->local_name == JS_ATOM__star_) { - c0029848: 07e00c13 li s8,126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27944 + c0029a18: 07e00c13 li s8,126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27952 en->export_type = EXPORTED_NAME_NORMAL; - c002984c: 4c85 li s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27941 + c0029a1c: 4c85 li s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27949 en->export_type = EXPORTED_NAME_NS; - c002984e: 4d09 li s10,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27934 + c0029a1e: 4d09 li s10,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27942 if (res != JS_RESOLVE_RES_AMBIGUOUS) { - c0029850: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27919 + c0029a20: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27927 for(i = 0; i < s->exported_names_count; i++) { - c0029852: 45f6 lw a1,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27920 + c0029a22: 45f6 lw a1,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27928 ExportedNameEntry *en = &s->exported_names[i]; - c0029854: 6546 ld a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27919 + c0029a24: 6546 ld a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27927 for(i = 0; i < s->exported_names_count; i++) { - c0029856: 04bbcc63 blt s7,a1,c00298ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27957 + c0029a26: 04bbcc63 blt s7,a1,c0029a7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27965 rqsort(s->exported_names, s->exported_names_count, - c002985a: 8722 mv a4,s0 - c002985c: ffff0697 auipc a3,0xffff0 - c0029860: 58868693 addi a3,a3,1416 # c0019de4 - c0029864: 4641 li a2,16 - c0029866: 74a1e0ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27962 + c0029a2a: 8722 mv a4,s0 + c0029a2c: ffff0697 auipc a3,0xffff0 + c0029a30: 58868693 addi a3,a3,1416 # c0019fb4 + c0029a34: 4641 li a2,16 + c0029a36: 74a1e0ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27970 switch(en->export_type) { - c002986a: 4905 li s2,1 - c002986c: 4b89 li s7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27960 + c0029a3a: 4905 li s2,1 + c0029a3c: 4b89 li s7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27968 for(i = 0; i < s->exported_names_count; i++) { - c002986e: 47f6 lw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27961 + c0029a3e: 47f6 lw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27969 ExportedNameEntry *en = &s->exported_names[i]; - c0029870: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27960 + c0029a40: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27968 for(i = 0; i < s->exported_names_count; i++) { - c0029872: 0cfac863 blt s5,a5,c0029942 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27988 + c0029a42: 0cfac863 blt s5,a5,c0029b12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27996 js_free(ctx, s->exported_names); - c0029876: 8522 mv a0,s0 - c0029878: dc2dd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27990 + c0029a46: 8522 mv a0,s0 + c0029a48: ce0dd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27998 JS_DefinePropertyValue(ctx, obj, JS_ATOM_Symbol_toStringTag, - c002987c: 07f00593 li a1,127 - c0029880: 8522 mv a0,s0 - c0029882: abaf00ef jal ra,c0019b3c - c0029886: 87ae mv a5,a1 - c0029888: 872a mv a4,a0 - c002988a: f02a sd a0,32(sp) - c002988c: f42e sd a1,40(sp) - c002988e: 4801 li a6,0 - c0029890: 0d200693 li a3,210 - c0029894: 85a6 mv a1,s1 - c0029896: 8652 mv a2,s4 - c0029898: 8522 mv a0,s0 - c002989a: e826 sd s1,16(sp) - c002989c: ec52 sd s4,24(sp) - c002989e: f18e90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27994 + c0029a4c: 07f00593 li a1,127 + c0029a50: 8522 mv a0,s0 + c0029a52: abaf00ef jal ra,c0019d0c + c0029a56: 87ae mv a5,a1 + c0029a58: 872a mv a4,a0 + c0029a5a: f02a sd a0,32(sp) + c0029a5c: f42e sd a1,40(sp) + c0029a5e: 4801 li a6,0 + c0029a60: 0d200693 li a3,210 + c0029a64: 85a6 mv a1,s1 + c0029a66: 8652 mv a2,s4 + c0029a68: 8522 mv a0,s0 + c0029a6a: e826 sd s1,16(sp) + c0029a6c: ec52 sd s4,24(sp) + c0029a6e: e36e90ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28002 p->extensible = FALSE; - c00298a2: 0054c783 lbu a5,5(s1) - c00298a6: 9bf9 andi a5,a5,-2 - c00298a8: 00f482a3 sb a5,5(s1) - c00298ac: bf25 j c00297e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27920 + c0029a72: 0054c783 lbu a5,5(s1) + c0029a76: 9bf9 andi a5,a5,-2 + c0029a78: 00f482a3 sb a5,5(s1) + c0029a7c: bf25 j c00299b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27928 ExportedNameEntry *en = &s->exported_names[i]; - c00298ae: 004b9913 slli s2,s7,0x4 - c00298b2: 992a add s2,s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27925 + c0029a7e: 004b9913 slli s2,s7,0x4 + c0029a82: 992a add s2,s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27933 if (en->u.me) { - c00298b4: 00893783 ld a5,8(s2) - c00298b8: c39d beqz a5,c00298de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27926 + c0029a84: 00893783 ld a5,8(s2) + c0029a88: c39d beqz a5,c0029aae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27934 res_me = en->u.me; /* fast case: no resolution needed */ - c00298ba: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27927 + c0029a8a: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27935 res_m = m; - c00298bc: f84e sd s3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27940 + c0029a8c: f84e sd s3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27948 if (res_me->local_name == JS_ATOM__star_) { - c00298be: 7782 ld a5,32(sp) - c00298c0: 4bdc lw a5,20(a5) - c00298c2: 07879063 bne a5,s8,c0029922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27941 + c0029a8e: 7782 ld a5,32(sp) + c0029a90: 4bdc lw a5,20(a5) + c0029a92: 07879063 bne a5,s8,c0029af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27949 en->export_type = EXPORTED_NAME_NS; - c00298c6: 01a92223 sw s10,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27942 - en->u.module = res_m->req_module_entries[res_me->u.req_module_idx].module; - c00298ca: 7782 ld a5,32(sp) - c00298cc: 4398 lw a4,0(a5) - c00298ce: 77c2 ld a5,48(sp) - c00298d0: 0712 slli a4,a4,0x4 - c00298d2: 6f9c ld a5,24(a5) - c00298d4: 97ba add a5,a5,a4 - c00298d6: 679c ld a5,8(a5) + c0029a96: 01a92223 sw s10,4(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27950 + en->u.module = res_m->req_module_entries[res_me->u.req_module_idx].module; + c0029a9a: 7782 ld a5,32(sp) + c0029a9c: 4398 lw a4,0(a5) + c0029a9e: 77c2 ld a5,48(sp) + c0029aa0: 0712 slli a4,a4,0x4 + c0029aa2: 6f9c ld a5,24(a5) + c0029aa4: 97ba add a5,a5,a4 + c0029aa6: 679c ld a5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27958 en->u.var_ref = p1->u.func.var_refs[res_me->u.local.var_idx]; - c00298d8: 00f93423 sd a5,8(s2) - c00298dc: a089 j c002991e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27930 + c0029aa8: 00f93423 sd a5,8(s2) + c0029aac: a089 j c0029aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27938 res = js_resolve_export(ctx, &res_m, &res_me, m, - c00298de: 00092703 lw a4,0(s2) - c00298e2: 180c addi a1,sp,48 - c00298e4: 86ce mv a3,s3 - c00298e6: 1010 addi a2,sp,32 - c00298e8: 8522 mv a0,s0 - c00298ea: 8d0ee0ef jal ra,c00179ba - c00298ee: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27933 + c0029aae: 00092703 lw a4,0(s2) + c0029ab2: 180c addi a1,sp,48 + c0029ab4: 86ce mv a3,s3 + c0029ab6: 1010 addi a2,sp,32 + c0029ab8: 8522 mv a0,s0 + c0029aba: 8d0ee0ef jal ra,c0017b8a + c0029abe: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27941 if (res != JS_RESOLVE_RES_FOUND) { - c00298f0: d579 beqz a0,c00298be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27934 + c0029ac0: d579 beqz a0,c0029a8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27942 if (res != JS_RESOLVE_RES_AMBIGUOUS) { - c00298f2: 03b50463 beq a0,s11,c002991a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27935 + c0029ac2: 03b50463 beq a0,s11,c0029aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27943 js_resolve_export_throw_error(ctx, res, m, en->export_name); - c00298f6: 00092683 lw a3,0(s2) - c00298fa: 864e mv a2,s3 - c00298fc: 8522 mv a0,s0 - c00298fe: 86fe90ef jal ra,c001316c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27997 + c0029ac6: 00092683 lw a3,0(s2) + c0029aca: 864e mv a2,s3 + c0029acc: 8522 mv a0,s0 + c0029ace: f8ce90ef jal ra,c001325a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28005 js_free(ctx, s->exported_names); - c0029902: 65c6 ld a1,80(sp) - c0029904: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27999 + c0029ad2: 65c6 ld a1,80(sp) + c0029ad4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28007 return JS_EXCEPTION; - c0029906: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27997 + c0029ad6: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28005 js_free(ctx, s->exported_names); - c0029908: d32dd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27998 + c0029ad8: c50dd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28006 JS_FreeValue(ctx, obj); - c002990c: 85a6 mv a1,s1 - c002990e: 8652 mv a2,s4 - c0029910: 8522 mv a0,s0 - c0029912: a26de0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27999 + c0029adc: 85a6 mv a1,s1 + c0029ade: 8652 mv a2,s4 + c0029ae0: 8522 mv a0,s0 + c0029ae2: 944de0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28007 return JS_EXCEPTION; - c0029916: f802 sd zero,48(sp) - c0029918: b5f9 j c00297e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27938 + c0029ae6: f802 sd zero,48(sp) + c0029ae8: b5f9 j c00299b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27946 en->export_type = EXPORTED_NAME_AMBIGUOUS; - c002991a: 00092223 sw zero,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27919 + c0029aea: 00092223 sw zero,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27927 for(i = 0; i < s->exported_names_count; i++) { - c002991e: 2b85 addiw s7,s7,1 - c0029920: bf0d j c0029852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27944 + c0029aee: 2b85 addiw s7,s7,1 + c0029af0: bf0d j c0029a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27952 en->export_type = EXPORTED_NAME_NORMAL; - c0029922: 01992223 sw s9,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27945 + c0029af2: 01992223 sw s9,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27953 if (res_me->u.local.var_ref) { - c0029926: 7782 ld a5,32(sp) - c0029928: 6798 ld a4,8(a5) - c002992a: c701 beqz a4,c0029932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27946 + c0029af6: 7782 ld a5,32(sp) + c0029af8: 6798 ld a4,8(a5) + c0029afa: c701 beqz a4,c0029b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27954 en->u.var_ref = res_me->u.local.var_ref; - c002992c: 00e93423 sd a4,8(s2) - c0029930: b7fd j c002991e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27948 + c0029afc: 00e93423 sd a4,8(s2) + c0029b00: b7fd j c0029aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27956 JSObject *p1 = JS_VALUE_GET_OBJ(res_m->func_obj); - c0029932: 7742 ld a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27950 + c0029b02: 7742 ld a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27958 en->u.var_ref = p1->u.func.var_refs[res_me->u.local.var_idx]; - c0029934: 7734 ld a3,104(a4) - c0029936: 4398 lw a4,0(a5) - c0029938: 7e9c ld a5,56(a3) - c002993a: 070e slli a4,a4,0x3 - c002993c: 97ba add a5,a5,a4 - c002993e: 639c ld a5,0(a5) - c0029940: bf61 j c00298d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27961 + c0029b04: 7734 ld a3,104(a4) + c0029b06: 4398 lw a4,0(a5) + c0029b08: 7e9c ld a5,56(a3) + c0029b0a: 070e slli a4,a4,0x3 + c0029b0c: 97ba add a5,a5,a4 + c0029b0e: 639c ld a5,0(a5) + c0029b10: bf61 j c0029aa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27969 ExportedNameEntry *en = &s->exported_names[i]; - c0029942: 004a9793 slli a5,s5,0x4 - c0029946: 95be add a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27962 + c0029b12: 004a9793 slli a5,s5,0x4 + c0029b16: 95be add a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27970 switch(en->export_type) { - c0029948: 41dc lw a5,4(a1) - c002994a: 01278663 beq a5,s2,c0029956 - c002994e: 03778663 beq a5,s7,c002997a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27960 + c0029b18: 41dc lw a5,4(a1) + c0029b1a: 01278663 beq a5,s2,c0029b26 + c0029b1e: 03778663 beq a5,s7,c0029b4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27968 for(i = 0; i < s->exported_names_count; i++) { - c0029952: 2a85 addiw s5,s5,1 - c0029954: bf29 j c002986e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27966 + c0029b22: 2a85 addiw s5,s5,1 + c0029b24: bf29 j c0029a3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27974 pr = add_property(ctx, p, en->export_name, - c0029956: 4190 lw a2,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27965 + c0029b26: 4190 lw a2,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27973 JSVarRef *var_ref = en->u.var_ref; - c0029958: 0085bc03 ld s8,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27966 + c0029b28: 0085bc03 ld s8,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27974 pr = add_property(ctx, p, en->export_name, - c002995c: 02600693 li a3,38 - c0029960: 85a6 mv a1,s1 - c0029962: 8522 mv a0,s0 - c0029964: a63ec0ef jal ra,c00163c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27969 + c0029b2c: 02600693 li a3,38 + c0029b30: 85a6 mv a1,s1 + c0029b32: 8522 mv a0,s0 + c0029b34: a63ec0ef jal ra,c0016596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27977 if (!pr) - c0029968: dd49 beqz a0,c0029902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27971 + c0029b38: dd49 beqz a0,c0029ad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27979 var_ref->header.ref_count++; - c002996a: 000c2783 lw a5,0(s8) - c002996e: 2785 addiw a5,a5,1 - c0029970: 00fc2023 sw a5,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27972 + c0029b3a: 000c2783 lw a5,0(s8) + c0029b3e: 2785 addiw a5,a5,1 + c0029b40: 00fc2023 sw a5,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27980 pr->u.var_ref = var_ref; - c0029974: 01853023 sd s8,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27974 + c0029b44: 01853023 sd s8,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27982 break; - c0029978: bfe9 j c0029952 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27977 + c0029b48: bfe9 j c0029b22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27985 if (JS_DefineAutoInitProperty(ctx, obj, - c002997a: 659c ld a5,8(a1) - c002997c: 4194 lw a3,0(a1) - c002997e: 4819 li a6,6 - c0029980: 4705 li a4,1 - c0029982: 85a6 mv a1,s1 - c0029984: 8652 mv a2,s4 - c0029986: 8522 mv a0,s0 - c0029988: e826 sd s1,16(sp) - c002998a: ec52 sd s4,24(sp) - c002998c: bd3ec0ef jal ra,c001655e - c0029990: fc0551e3 bgez a0,c0029952 - c0029994: b7bd j c0029902 + c0029b4a: 659c ld a5,8(a1) + c0029b4c: 4194 lw a3,0(a1) + c0029b4e: 4819 li a6,6 + c0029b50: 4705 li a4,1 + c0029b52: 85a6 mv a1,s1 + c0029b54: 8652 mv a2,s4 + c0029b56: 8522 mv a0,s0 + c0029b58: e826 sd s1,16(sp) + c0029b5a: ec52 sd s4,24(sp) + c0029b5c: bd3ec0ef jal ra,c001672e + c0029b60: fc0551e3 bgez a0,c0029b22 + c0029b64: b7bd j c0029ad2 JS_GetModuleNamespace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28012 (discriminator 2) -} - c0029996: 60ae ld ra,200(sp) - c0029998: 640e ld s0,192(sp) - c002999a: 74ea ld s1,184(sp) - c002999c: 794a ld s2,176(sp) - c002999e: 79aa ld s3,168(sp) - c00299a0: 7a0a ld s4,160(sp) - c00299a2: 6aea ld s5,152(sp) - c00299a4: 6b4a ld s6,144(sp) - c00299a6: 6baa ld s7,136(sp) - c00299a8: 6c0a ld s8,128(sp) - c00299aa: 7ce6 ld s9,120(sp) - c00299ac: 7d46 ld s10,112(sp) - c00299ae: 7da6 ld s11,104(sp) - c00299b0: 4501 li a0,0 - c00299b2: 4599 li a1,6 - c00299b4: 6169 addi sp,sp,208 - c00299b6: 8082 ret - -00000000c00299b8 : +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28020 (discriminator 2) +} + c0029b66: 60ae ld ra,200(sp) + c0029b68: 640e ld s0,192(sp) + c0029b6a: 74ea ld s1,184(sp) + c0029b6c: 794a ld s2,176(sp) + c0029b6e: 79aa ld s3,168(sp) + c0029b70: 7a0a ld s4,160(sp) + c0029b72: 6aea ld s5,152(sp) + c0029b74: 6b4a ld s6,144(sp) + c0029b76: 6baa ld s7,136(sp) + c0029b78: 6c0a ld s8,128(sp) + c0029b7a: 7ce6 ld s9,120(sp) + c0029b7c: 7d46 ld s10,112(sp) + c0029b7e: 7da6 ld s11,104(sp) + c0029b80: 4501 li a0,0 + c0029b82: 4599 li a1,6 + c0029b84: 6169 addi sp,sp,208 + c0029b86: 8082 ret + +00000000c0029b88 : js_module_ns_autoinit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27902 { - c00299b8: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27896 + c0029b88: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27904 return JS_GetModuleNamespace(ctx, m); - c00299ba: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27897 + c0029b8a: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27905 } - c00299bc: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27896 + c0029b8c: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27904 return JS_GetModuleNamespace(ctx, m); - c00299be: de5ff06f j c00297a2 + c0029b8e: de5ff06f j c0029972 -00000000c00299c2 : +00000000c0029b92 : JS_SetConstructor2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36969 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 { - c00299c2: 711d addi sp,sp,-96 - c00299c4: e8a2 sd s0,80(sp) - c00299c6: e82e sd a1,16(sp) - c00299c8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36970 + c0029b92: 711d addi sp,sp,-96 + c0029b94: e8a2 sd s0,80(sp) + c0029b96: e82e sd a1,16(sp) + c0029b98: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36978 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_prototype, - c00299ca: 85ba mv a1,a4 - c00299cc: 8536 mv a0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36969 + c0029b9a: 85ba mv a1,a4 + c0029b9c: 8536 mv a0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 { - c00299ce: ec86 sd ra,88(sp) - c00299d0: e4a6 sd s1,72(sp) - c00299d2: e0ca sd s2,64(sp) - c00299d4: 84c2 mv s1,a6 - c00299d6: 893e mv s2,a5 - c00299d8: ec32 sd a2,24(sp) - c00299da: e036 sd a3,0(sp) - c00299dc: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36970 + c0029b9e: ec86 sd ra,88(sp) + c0029ba0: e4a6 sd s1,72(sp) + c0029ba2: e0ca sd s2,64(sp) + c0029ba4: 84c2 mv s1,a6 + c0029ba6: 893e mv s2,a5 + c0029ba8: ec32 sd a2,24(sp) + c0029baa: e036 sd a3,0(sp) + c0029bac: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36978 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_prototype, - c00299de: c91dc0ef jal ra,c000666e - c00299e2: 6662 ld a2,24(sp) - c00299e4: 87ae mv a5,a1 - c00299e6: 65c2 ld a1,16(sp) - c00299e8: 872a mv a4,a0 - c00299ea: 884a mv a6,s2 - c00299ec: 03c00693 li a3,60 - c00299f0: 8522 mv a0,s0 - c00299f2: dc4e90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36972 + c0029bae: bafdc0ef jal ra,c000675c + c0029bb2: 6662 ld a2,24(sp) + c0029bb4: 87ae mv a5,a1 + c0029bb6: 65c2 ld a1,16(sp) + c0029bb8: 872a mv a4,a0 + c0029bba: 884a mv a6,s2 + c0029bbc: 03c00693 li a3,60 + c0029bc0: 8522 mv a0,s0 + c0029bc2: ce2e90ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36980 JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c00299f6: 6542 ld a0,16(sp) - c00299f8: 65e2 ld a1,24(sp) - c00299fa: c75dc0ef jal ra,c000666e - c00299fe: 872a mv a4,a0 - c0029a00: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 -} - c0029a02: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36972 + c0029bc6: 6542 ld a0,16(sp) + c0029bc8: 65e2 ld a1,24(sp) + c0029bca: b93dc0ef jal ra,c000675c + c0029bce: 872a mv a4,a0 + c0029bd0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36985 +} + c0029bd2: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36980 JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c0029a04: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 + c0029bd4: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36985 } - c0029a06: 60e6 ld ra,88(sp) - c0029a08: 6906 ld s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36972 + c0029bd6: 60e6 ld ra,88(sp) + c0029bd8: 6906 ld s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36980 JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c0029a0a: 87ae mv a5,a1 - c0029a0c: 8826 mv a6,s1 - c0029a0e: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 + c0029bda: 87ae mv a5,a1 + c0029bdc: 8826 mv a6,s1 + c0029bde: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36985 } - c0029a10: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36972 + c0029be0: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36980 JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c0029a12: 03d00693 li a3,61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36977 + c0029be2: 03d00693 li a3,61 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36985 } - c0029a16: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36972 + c0029be6: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36980 JS_DefinePropertyValue(ctx, proto, JS_ATOM_constructor, - c0029a18: d9ee906f j c0012fb6 + c0029be8: cbce906f j c00130a4 -00000000c0029a1c : +00000000c0029bec : JS_SetConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36981 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36989 { - c0029a1c: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36982 + c0029bec: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36990 JS_SetConstructor2(ctx, func_obj, proto, - c0029a1e: 480d li a6,3 - c0029a20: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36984 + c0029bee: 480d li a6,3 + c0029bf0: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36992 } - c0029a22: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36982 + c0029bf2: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36990 JS_SetConstructor2(ctx, func_obj, proto, - c0029a24: f9fff06f j c00299c2 + c0029bf4: f9fff06f j c0029b92 -00000000c0029a28 : +00000000c0029bf8 : JS_NewGlobalCConstructor2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36990 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36998 { - c0029a28: 715d addi sp,sp,-80 - c0029a2a: e0a2 sd s0,64(sp) - c0029a2c: f02e sd a1,32(sp) - c0029a2e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36991 + c0029bf8: 715d addi sp,sp,-80 + c0029bfa: e0a2 sd s0,64(sp) + c0029bfc: f02e sd a1,32(sp) + c0029bfe: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36999 JS_DefinePropertyValueStr(ctx, ctx->global_obj, name, - c0029a30: 852e mv a0,a1 - c0029a32: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36990 -{ - c0029a34: e486 sd ra,72(sp) - c0029a36: f432 sd a2,40(sp) - c0029a38: e436 sd a3,8(sp) - c0029a3a: e83a sd a4,16(sp) - c0029a3c: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36991 + c0029c00: 852e mv a0,a1 + c0029c02: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36998 +{ + c0029c04: e486 sd ra,72(sp) + c0029c06: f432 sd a2,40(sp) + c0029c08: e436 sd a3,8(sp) + c0029c0a: e83a sd a4,16(sp) + c0029c0c: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36999 JS_DefinePropertyValueStr(ctx, ctx->global_obj, name, - c0029a3e: c31dc0ef jal ra,c000666e - c0029a42: 66a2 ld a3,8(sp) - c0029a44: 17043603 ld a2,368(s0) - c0029a48: 87ae mv a5,a1 - c0029a4a: 16843583 ld a1,360(s0) - c0029a4e: 872a mv a4,a0 - c0029a50: 480d li a6,3 - c0029a52: 8522 mv a0,s0 - c0029a54: d05ff0ef jal ra,c0029758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36994 + c0029c0e: b4fdc0ef jal ra,c000675c + c0029c12: 66a2 ld a3,8(sp) + c0029c14: 17043603 ld a2,368(s0) + c0029c18: 87ae mv a5,a1 + c0029c1a: 16843583 ld a1,360(s0) + c0029c1e: 872a mv a4,a0 + c0029c20: 480d li a6,3 + c0029c22: 8522 mv a0,s0 + c0029c24: d05ff0ef jal ra,c0029928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37002 JS_SetConstructor(ctx, func_obj, proto); - c0029a58: 7582 ld a1,32(sp) - c0029a5a: 7622 ld a2,40(sp) - c0029a5c: 66c2 ld a3,16(sp) - c0029a5e: 6762 ld a4,24(sp) - c0029a60: 8522 mv a0,s0 - c0029a62: fbbff0ef jal ra,c0029a1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36995 + c0029c28: 7582 ld a1,32(sp) + c0029c2a: 7622 ld a2,40(sp) + c0029c2c: 66c2 ld a3,16(sp) + c0029c2e: 6762 ld a4,24(sp) + c0029c30: 8522 mv a0,s0 + c0029c32: fbbff0ef jal ra,c0029bec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 JS_FreeValue(ctx, func_obj); - c0029a66: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36996 + c0029c36: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37004 } - c0029a68: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36995 + c0029c38: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 JS_FreeValue(ctx, func_obj); - c0029a6a: 7582 ld a1,32(sp) - c0029a6c: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36996 + c0029c3a: 7582 ld a1,32(sp) + c0029c3c: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37004 } - c0029a6e: 60a6 ld ra,72(sp) - c0029a70: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36995 + c0029c3e: 60a6 ld ra,72(sp) + c0029c40: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 JS_FreeValue(ctx, func_obj); - c0029a72: 8c6de06f j c0007b38 + c0029c42: fe5dd06f j c0007c26 -00000000c0029a76 : +00000000c0029c46 : JS_NewGlobalCConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37001 -{ - c0029a76: 715d addi sp,sp,-80 - c0029a78: e0a2 sd s0,64(sp) - c0029a7a: 842e mv s0,a1 - c0029a7c: e03a sd a4,0(sp) - c0029a7e: e43e sd a5,8(sp) - c0029a80: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37009 +{ + c0029c46: 715d addi sp,sp,-80 + c0029c48: e0a2 sd s0,64(sp) + c0029c4a: 842e mv s0,a1 + c0029c4c: e03a sd a4,0(sp) + c0029c4e: e43e sd a5,8(sp) + c0029c50: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37011 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor_or_func, 0); - c0029a82: 4781 li a5,0 - c0029a84: 8622 mv a2,s0 - c0029a86: 4711 li a4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37001 -{ - c0029a88: e486 sd ra,72(sp) - c0029a8a: fc26 sd s1,56(sp) - c0029a8c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 + c0029c52: 4781 li a5,0 + c0029c54: 8622 mv a2,s0 + c0029c56: 4711 li a4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37009 +{ + c0029c58: e486 sd ra,72(sp) + c0029c5a: fc26 sd s1,56(sp) + c0029c5c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37011 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor_or_func, 0); - c0029a8e: f58ff0ef jal ra,c00291e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37004 + c0029c5e: f58ff0ef jal ra,c00293b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37012 JS_NewGlobalCConstructor2(ctx, func_obj, name, proto); - c0029a92: 6702 ld a4,0(sp) - c0029a94: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37003 + c0029c62: 6702 ld a4,0(sp) + c0029c64: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37011 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor_or_func, 0); - c0029a96: e82a sd a0,16(sp) - c0029a98: ec2e sd a1,24(sp) - c0029a9a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37004 + c0029c66: e82a sd a0,16(sp) + c0029c68: ec2e sd a1,24(sp) + c0029c6a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37012 JS_NewGlobalCConstructor2(ctx, func_obj, name, proto); - c0029a9c: 86a2 mv a3,s0 - c0029a9e: 85aa mv a1,a0 - c0029aa0: 8526 mv a0,s1 - c0029aa2: f87ff0ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37006 -} - c0029aa6: 60a6 ld ra,72(sp) - c0029aa8: 6406 ld s0,64(sp) - c0029aaa: 6542 ld a0,16(sp) - c0029aac: 65e2 ld a1,24(sp) - c0029aae: 74e2 ld s1,56(sp) - c0029ab0: 6161 addi sp,sp,80 - c0029ab2: 8082 ret - -00000000c0029ab4 : + c0029c6c: 86a2 mv a3,s0 + c0029c6e: 85aa mv a1,a0 + c0029c70: 8526 mv a0,s1 + c0029c72: f87ff0ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37014 +} + c0029c76: 60a6 ld ra,72(sp) + c0029c78: 6406 ld s0,64(sp) + c0029c7a: 6542 ld a0,16(sp) + c0029c7c: 65e2 ld a1,24(sp) + c0029c7e: 74e2 ld s1,56(sp) + c0029c80: 6161 addi sp,sp,80 + c0029c82: 8082 ret + +00000000c0029c84 : JS_NewGlobalCConstructorOnly(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37008 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37016 static JSValueConst JS_NewGlobalCConstructorOnly(JSContext *ctx, const char *name, - c0029ab4: 715d addi sp,sp,-80 - c0029ab6: e0a2 sd s0,64(sp) - c0029ab8: 842e mv s0,a1 - c0029aba: e036 sd a3,0(sp) - c0029abc: e43a sd a4,8(sp) - c0029abe: 85b2 mv a1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37013 + c0029c84: 715d addi sp,sp,-80 + c0029c86: e0a2 sd s0,64(sp) + c0029c88: 842e mv s0,a1 + c0029c8a: e036 sd a3,0(sp) + c0029c8c: e43a sd a4,8(sp) + c0029c8e: 85b2 mv a1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor, 0); - c0029ac0: 4781 li a5,0 - c0029ac2: 8622 mv a2,s0 - c0029ac4: 4709 li a4,2 - c0029ac6: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37008 + c0029c90: 4781 li a5,0 + c0029c92: 8622 mv a2,s0 + c0029c94: 4709 li a4,2 + c0029c96: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37016 static JSValueConst JS_NewGlobalCConstructorOnly(JSContext *ctx, const char *name, - c0029ac8: e486 sd ra,72(sp) - c0029aca: fc26 sd s1,56(sp) - c0029acc: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37013 + c0029c98: e486 sd ra,72(sp) + c0029c9a: fc26 sd s1,56(sp) + c0029c9c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor, 0); - c0029ace: f18ff0ef jal ra,c00291e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37014 + c0029c9e: f18ff0ef jal ra,c00293b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37022 JS_NewGlobalCConstructor2(ctx, func_obj, name, proto); - c0029ad2: 6702 ld a4,0(sp) - c0029ad4: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37013 + c0029ca2: 6702 ld a4,0(sp) + c0029ca4: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37021 func_obj = JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_constructor, 0); - c0029ad6: e82a sd a0,16(sp) - c0029ad8: ec2e sd a1,24(sp) - c0029ada: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37014 + c0029ca6: e82a sd a0,16(sp) + c0029ca8: ec2e sd a1,24(sp) + c0029caa: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37022 JS_NewGlobalCConstructor2(ctx, func_obj, name, proto); - c0029adc: 86a2 mv a3,s0 - c0029ade: 85aa mv a1,a0 - c0029ae0: 8526 mv a0,s1 - c0029ae2: f47ff0ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37016 -} - c0029ae6: 60a6 ld ra,72(sp) - c0029ae8: 6406 ld s0,64(sp) - c0029aea: 6542 ld a0,16(sp) - c0029aec: 65e2 ld a1,24(sp) - c0029aee: 74e2 ld s1,56(sp) - c0029af0: 6161 addi sp,sp,80 - c0029af2: 8082 ret - -00000000c0029af4 : + c0029cac: 86a2 mv a3,s0 + c0029cae: 85aa mv a1,a0 + c0029cb0: 8526 mv a0,s1 + c0029cb2: f47ff0ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37024 +} + c0029cb6: 60a6 ld ra,72(sp) + c0029cb8: 6406 ld s0,64(sp) + c0029cba: 6542 ld a0,16(sp) + c0029cbc: 65e2 ld a1,24(sp) + c0029cbe: 74e2 ld s1,56(sp) + c0029cc0: 6161 addi sp,sp,80 + c0029cc2: 8082 ret + +00000000c0029cc4 : json_parse_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44949 -{ - c0029af4: 7135 addi sp,sp,-160 - c0029af6: e922 sd s0,144(sp) - c0029af8: ed06 sd ra,152(sp) - c0029afa: e526 sd s1,136(sp) - c0029afc: e14a sd s2,128(sp) - c0029afe: fcce sd s3,120(sp) - c0029b00: f8d2 sd s4,112(sp) - c0029b02: f4d6 sd s5,104(sp) - c0029b04: f0da sd s6,96(sp) - c0029b06: ecde sd s7,88(sp) - c0029b08: e8e2 sd s8,80(sp) - c0029b0a: e4e6 sd s9,72(sp) - c0029b0c: e0ea sd s10,64(sp) - c0029b0e: fc6e sd s11,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44954 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44957 +{ + c0029cc4: 7135 addi sp,sp,-160 + c0029cc6: e922 sd s0,144(sp) + c0029cc8: ed06 sd ra,152(sp) + c0029cca: e526 sd s1,136(sp) + c0029ccc: e14a sd s2,128(sp) + c0029cce: fcce sd s3,120(sp) + c0029cd0: f8d2 sd s4,112(sp) + c0029cd2: f4d6 sd s5,104(sp) + c0029cd4: f0da sd s6,96(sp) + c0029cd6: ecde sd s7,88(sp) + c0029cd8: e8e2 sd s8,80(sp) + c0029cda: e4e6 sd s9,72(sp) + c0029cdc: e0ea sd s10,64(sp) + c0029cde: fc6e sd s11,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 switch(s->token.val) { - c0029b10: 4d1c lw a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44951 + c0029ce0: 4d1c lw a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44959 JSValue val = JS_NULL; - c0029b12: e002 sd zero,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44954 + c0029ce2: e002 sd zero,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 switch(s->token.val) { - c0029b14: f8300713 li a4,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44950 + c0029ce4: f8300713 li a4,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44958 JSContext *ctx = s->ctx; - c0029b18: 00053a03 ld s4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44949 + c0029ce8: 00053a03 ld s4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44957 { - c0029b1c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44954 + c0029cec: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 switch(s->token.val) { - c0029b1e: 20e78c63 beq a5,a4,c0029d36 - c0029b22: f8400713 li a4,-124 - c0029b26: 02e7d563 bge a5,a4,c0029b50 - c0029b2a: f8000713 li a4,-128 - c0029b2e: 1ee78c63 beq a5,a4,c0029d26 - c0029b32: f8100713 li a4,-127 - c0029b36: 1ce78e63 beq a5,a4,c0029d12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45065 + c0029cee: 20e78c63 beq a5,a4,c0029f06 + c0029cf2: f8400713 li a4,-124 + c0029cf6: 02e7d563 bge a5,a4,c0029d20 + c0029cfa: f8000713 li a4,-128 + c0029cfe: 1ee78c63 beq a5,a4,c0029ef6 + c0029d02: f8100713 li a4,-127 + c0029d06: 1ce78e63 beq a5,a4,c0029ee2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45073 (int)(s->buf_ptr - s->token.ptr), s->token.ptr); - c0029b3a: 6c30 ld a2,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45064 + c0029d0a: 6c30 ld a2,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45072 js_parse_error(s, "unexpected token: '%.*s'", - c0029b3c: 7014 ld a3,32(s0) - c0029b3e: 00036597 auipc a1,0x36 - c0029b42: cb258593 addi a1,a1,-846 # c005f7f0 - c0029b46: 8522 mv a0,s0 - c0029b48: 9e15 subw a2,a2,a3 - c0029b4a: f6efc0ef jal ra,c00262b8 - c0029b4e: a42d j c0029d78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44954 + c0029d0c: 7014 ld a3,32(s0) + c0029d0e: 00036597 auipc a1,0x36 + c0029d12: d4258593 addi a1,a1,-702 # c005fa50 + c0029d16: 8522 mv a0,s0 + c0029d18: 9e15 subw a2,a2,a3 + c0029d1a: f6efc0ef jal ra,c0026488 + c0029d1e: a42d j c0029f48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 switch(s->token.val) { - c0029b50: 05b00713 li a4,91 - c0029b54: 12e78d63 beq a5,a4,c0029c8e - c0029b58: 07b00713 li a4,123 - c0029b5c: 20e79463 bne a5,a4,c0029d64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44960 + c0029d20: 05b00713 li a4,91 + c0029d24: 12e78d63 beq a5,a4,c0029e5e + c0029d28: 07b00713 li a4,123 + c0029d2c: 20e79463 bne a5,a4,c0029f34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44968 if (json_next_token(s)) - c0029b60: b99fc0ef jal ra,c00266f8 - c0029b64: 20051a63 bnez a0,c0029d78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 + c0029d30: b99fc0ef jal ra,c00268c8 + c0029d34: 20051a63 bnez a0,c0029f48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44970 val = JS_NewObject(ctx); - c0029b68: 8552 mv a0,s4 - c0029b6a: a1eed0ef jal ra,c0016d88 - c0029b6e: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44963 + c0029d38: 8552 mv a0,s4 + c0029d3a: a1eed0ef jal ra,c0016f58 + c0029d3e: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44971 if (JS_IsException(val)) - c0029b70: 0005871b sext.w a4,a1 - c0029b74: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44962 + c0029d40: 0005871b sext.w a4,a1 + c0029d44: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44970 val = JS_NewObject(ctx); - c0029b76: 8aae mv s5,a1 - c0029b78: 0005049b sext.w s1,a0 - c0029b7c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44963 + c0029d46: 8aae mv s5,a1 + c0029d48: 0005049b sext.w s1,a0 + c0029d4c: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44971 if (JS_IsException(val)) - c0029b7e: 02f70c63 beq a4,a5,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44965 + c0029d4e: 02f70c63 beq a4,a5,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44973 if (s->token.val != '}') { - c0029b82: 4c18 lw a4,24(s0) - c0029b84: 07d00793 li a5,125 - c0029b88: 0cf70863 beq a4,a5,c0029c58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44967 + c0029d52: 4c18 lw a4,24(s0) + c0029d54: 07d00793 li a5,125 + c0029d58: 0cf70863 beq a4,a5,c0029e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44975 if (s->token.val == TOK_STRING) { - c0029b8c: f8100b93 li s7,-127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44971 + c0029d5c: f8100b93 li s7,-127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44979 } else if (s->ext_json && s->token.val == TOK_IDENT) { - c0029b90: f8300c13 li s8,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44982 + c0029d60: f8300c13 li s8,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44990 if (JS_IsException(prop_val)) { - c0029b94: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44993 + c0029d64: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45001 if (s->token.val != ',') - c0029b96: 02c00d13 li s10,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44997 + c0029d66: 02c00d13 li s10,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45005 if (s->ext_json && s->token.val == '}') - c0029b9a: 07d00b13 li s6,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44967 + c0029d6a: 07d00b13 li s6,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44975 if (s->token.val == TOK_STRING) { - c0029b9e: 4c1c lw a5,24(s0) - c0029ba0: 03779563 bne a5,s7,c0029bca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44968 + c0029d6e: 4c1c lw a5,24(s0) + c0029d70: 03779563 bne a5,s7,c0029d9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44976 prop_name = JS_ValueToAtom(ctx, s->token.u.str.str); - c0029ba4: 740c ld a1,40(s0) - c0029ba6: 7810 ld a2,48(s0) - c0029ba8: 8552 mv a0,s4 - c0029baa: a73f70ef jal ra,c002161c - c0029bae: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44969 + c0029d74: 740c ld a1,40(s0) + c0029d76: 7810 ld a2,48(s0) + c0029d78: 8552 mv a0,s4 + c0029d7a: a73f70ef jal ra,c00217ec + c0029d7e: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44977 if (prop_name == JS_ATOM_NULL) - c0029bb2: 02099663 bnez s3,c0029bde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45071 + c0029d82: 02099663 bnez s3,c0029dae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45079 JS_FreeValue(ctx, val); - c0029bb6: c026 sw s1,0(sp) - c0029bb8: 6582 ld a1,0(sp) - c0029bba: 864a mv a2,s2 - c0029bbc: 8552 mv a0,s4 - c0029bbe: f7bdd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45072 + c0029d86: c026 sw s1,0(sp) + c0029d88: 6582 ld a1,0(sp) + c0029d8a: 864a mv a2,s2 + c0029d8c: 8552 mv a0,s4 + c0029d8e: e99dd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45080 return JS_EXCEPTION; - c0029bc2: 4799 li a5,6 - c0029bc4: e802 sd zero,16(sp) - c0029bc6: ec3e sd a5,24(sp) - c0029bc8: a055 j c0029c6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44971 + c0029d92: 4799 li a5,6 + c0029d94: e802 sd zero,16(sp) + c0029d96: ec3e sd a5,24(sp) + c0029d98: a055 j c0029e3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44979 } else if (s->ext_json && s->token.val == TOK_IDENT) { - c0029bca: 5c38 lw a4,120(s0) - c0029bcc: c315 beqz a4,c0029bf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44971 (discriminator 1) - c0029bce: 03879163 bne a5,s8,c0029bf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44972 + c0029d9a: 5c38 lw a4,120(s0) + c0029d9c: c315 beqz a4,c0029dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44979 (discriminator 1) + c0029d9e: 03879163 bne a5,s8,c0029dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44980 prop_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c0029bd2: 540c lw a1,40(s0) - c0029bd4: 8552 mv a0,s4 - c0029bd6: 8f5dd0ef jal ra,c00074ca - c0029bda: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44977 + c0029da2: 540c lw a1,40(s0) + c0029da4: 8552 mv a0,s4 + c0029da6: 813dd0ef jal ra,c00075b8 + c0029daa: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44985 if (json_next_token(s)) - c0029bde: 8522 mv a0,s0 - c0029be0: b19fc0ef jal ra,c00266f8 - c0029be4: cd11 beqz a0,c0029c00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44984 + c0029dae: 8522 mv a0,s0 + c0029db0: b19fc0ef jal ra,c00268c8 + c0029db4: cd11 beqz a0,c0029dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44992 JS_FreeAtom(ctx, prop_name); - c0029be6: 85ce mv a1,s3 - c0029be8: 8552 mv a0,s4 - c0029bea: 923dd0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44985 + c0029db6: 85ce mv a1,s3 + c0029db8: 8552 mv a0,s4 + c0029dba: 841dd0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44993 goto fail; - c0029bee: b7e1 j c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44974 + c0029dbe: b7e1 j c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44982 js_parse_error(s, "expecting property name"); - c0029bf0: 00036597 auipc a1,0x36 - c0029bf4: bd058593 addi a1,a1,-1072 # c005f7c0 - c0029bf8: 8522 mv a0,s0 - c0029bfa: ebefc0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44975 + c0029dc0: 00036597 auipc a1,0x36 + c0029dc4: c6058593 addi a1,a1,-928 # c005fa20 + c0029dc8: 8522 mv a0,s0 + c0029dca: ebefc0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44983 goto fail; - c0029bfe: bf65 j c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44979 + c0029dce: bf65 j c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44987 if (json_parse_expect(s, ':')) - c0029c00: 03a00593 li a1,58 - c0029c04: 8522 mv a0,s0 - c0029c06: e4ffc0ef jal ra,c0026a54 - c0029c0a: fd71 bnez a0,c0029be6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44981 + c0029dd0: 03a00593 li a1,58 + c0029dd4: 8522 mv a0,s0 + c0029dd6: e4ffc0ef jal ra,c0026c24 + c0029dda: fd71 bnez a0,c0029db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44989 prop_val = json_parse_value(s); - c0029c0c: 8522 mv a0,s0 - c0029c0e: ee7ff0ef jal ra,c0029af4 - c0029c12: f02a sd a0,32(sp) - c0029c14: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44982 + c0029ddc: 8522 mv a0,s0 + c0029dde: ee7ff0ef jal ra,c0029cc4 + c0029de2: f02a sd a0,32(sp) + c0029de4: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44990 if (JS_IsException(prop_val)) { - c0029c16: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44981 + c0029de6: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44989 prop_val = json_parse_value(s); - c0029c1a: 872a mv a4,a0 - c0029c1c: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44982 + c0029dea: 872a mv a4,a0 + c0029dec: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44990 if (JS_IsException(prop_val)) { - c0029c1e: fd9684e3 beq a3,s9,c0029be6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44987 + c0029dee: fd9684e3 beq a3,s9,c0029db6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44995 ret = JS_DefinePropertyValue(ctx, val, prop_name, - c0029c22: c026 sw s1,0(sp) - c0029c24: 6582 ld a1,0(sp) - c0029c26: 481d li a6,7 - c0029c28: 86ce mv a3,s3 - c0029c2a: 8656 mv a2,s5 - c0029c2c: 8552 mv a0,s4 - c0029c2e: b88e90ef jal ra,c0012fb6 - c0029c32: 8daa mv s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44989 + c0029df2: c026 sw s1,0(sp) + c0029df4: 6582 ld a1,0(sp) + c0029df6: 481d li a6,7 + c0029df8: 86ce mv a3,s3 + c0029dfa: 8656 mv a2,s5 + c0029dfc: 8552 mv a0,s4 + c0029dfe: aa6e90ef jal ra,c00130a4 + c0029e02: 8daa mv s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44997 JS_FreeAtom(ctx, prop_name); - c0029c34: 85ce mv a1,s3 - c0029c36: 8552 mv a0,s4 - c0029c38: 8d5dd0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44990 + c0029e04: 85ce mv a1,s3 + c0029e06: 8552 mv a0,s4 + c0029e08: ff2dd0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44998 if (ret < 0) - c0029c3c: f60dcde3 bltz s11,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44993 + c0029e0c: f60dcde3 bltz s11,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45001 if (s->token.val != ',') - c0029c40: 4c1c lw a5,24(s0) - c0029c42: 01a79b63 bne a5,s10,c0029c58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44995 + c0029e10: 4c1c lw a5,24(s0) + c0029e12: 01a79b63 bne a5,s10,c0029e28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45003 if (json_next_token(s)) - c0029c46: 8522 mv a0,s0 - c0029c48: ab1fc0ef jal ra,c00266f8 - c0029c4c: f52d bnez a0,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44997 + c0029e16: 8522 mv a0,s0 + c0029e18: ab1fc0ef jal ra,c00268c8 + c0029e1c: f52d bnez a0,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45005 if (s->ext_json && s->token.val == '}') - c0029c4e: 5c3c lw a5,120(s0) - c0029c50: d7b9 beqz a5,c0029b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44997 (discriminator 1) - c0029c52: 4c1c lw a5,24(s0) - c0029c54: f56795e3 bne a5,s6,c0029b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45001 + c0029e1e: 5c3c lw a5,120(s0) + c0029e20: d7b9 beqz a5,c0029d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45005 (discriminator 1) + c0029e22: 4c1c lw a5,24(s0) + c0029e24: f56795e3 bne a5,s6,c0029d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45009 if (json_parse_expect(s, '}')) - c0029c58: 07d00593 li a1,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45033 + c0029e28: 07d00593 li a1,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45041 if (json_parse_expect(s, ']')) - c0029c5c: 8522 mv a0,s0 - c0029c5e: df7fc0ef jal ra,c0026a54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45056 + c0029e2c: 8522 mv a0,s0 + c0029e2e: df7fc0ef jal ra,c0026c24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45064 if (json_next_token(s)) - c0029c62: f931 bnez a0,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45069 + c0029e32: f931 bnez a0,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45077 return val; - c0029c64: c026 sw s1,0(sp) - c0029c66: 6782 ld a5,0(sp) - c0029c68: ec4a sd s2,24(sp) - c0029c6a: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45073 -} - c0029c6c: 60ea ld ra,152(sp) - c0029c6e: 644a ld s0,144(sp) - c0029c70: 6542 ld a0,16(sp) - c0029c72: 65e2 ld a1,24(sp) - c0029c74: 64aa ld s1,136(sp) - c0029c76: 690a ld s2,128(sp) - c0029c78: 79e6 ld s3,120(sp) - c0029c7a: 7a46 ld s4,112(sp) - c0029c7c: 7aa6 ld s5,104(sp) - c0029c7e: 7b06 ld s6,96(sp) - c0029c80: 6be6 ld s7,88(sp) - c0029c82: 6c46 ld s8,80(sp) - c0029c84: 6ca6 ld s9,72(sp) - c0029c86: 6d06 ld s10,64(sp) - c0029c88: 7de2 ld s11,56(sp) - c0029c8a: 610d addi sp,sp,160 - c0029c8c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45010 + c0029e34: c026 sw s1,0(sp) + c0029e36: 6782 ld a5,0(sp) + c0029e38: ec4a sd s2,24(sp) + c0029e3a: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45081 +} + c0029e3c: 60ea ld ra,152(sp) + c0029e3e: 644a ld s0,144(sp) + c0029e40: 6542 ld a0,16(sp) + c0029e42: 65e2 ld a1,24(sp) + c0029e44: 64aa ld s1,136(sp) + c0029e46: 690a ld s2,128(sp) + c0029e48: 79e6 ld s3,120(sp) + c0029e4a: 7a46 ld s4,112(sp) + c0029e4c: 7aa6 ld s5,104(sp) + c0029e4e: 7b06 ld s6,96(sp) + c0029e50: 6be6 ld s7,88(sp) + c0029e52: 6c46 ld s8,80(sp) + c0029e54: 6ca6 ld s9,72(sp) + c0029e56: 6d06 ld s10,64(sp) + c0029e58: 7de2 ld s11,56(sp) + c0029e5a: 610d addi sp,sp,160 + c0029e5c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45018 if (json_next_token(s)) - c0029c8e: a6bfc0ef jal ra,c00266f8 - c0029c92: 0e051363 bnez a0,c0029d78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45012 + c0029e5e: a6bfc0ef jal ra,c00268c8 + c0029e62: 0e051363 bnez a0,c0029f48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45020 val = JS_NewArray(ctx); - c0029c96: 8552 mv a0,s4 - c0029c98: b26ed0ef jal ra,c0016fbe - c0029c9c: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45013 + c0029e66: 8552 mv a0,s4 + c0029e68: b26ed0ef jal ra,c001718e + c0029e6c: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45021 if (JS_IsException(val)) - c0029c9e: 0005871b sext.w a4,a1 - c0029ca2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45012 + c0029e6e: 0005871b sext.w a4,a1 + c0029e72: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45020 val = JS_NewArray(ctx); - c0029ca4: 89ae mv s3,a1 - c0029ca6: 0005049b sext.w s1,a0 - c0029caa: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45013 + c0029e74: 89ae mv s3,a1 + c0029e76: 0005049b sext.w s1,a0 + c0029e7a: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45021 if (JS_IsException(val)) - c0029cac: f0f705e3 beq a4,a5,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45015 + c0029e7c: f0f705e3 beq a4,a5,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45023 if (s->token.val != ']') { - c0029cb0: 4c18 lw a4,24(s0) - c0029cb2: 05d00793 li a5,93 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45016 + c0029e80: 4c18 lw a4,24(s0) + c0029e82: 05d00793 li a5,93 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45024 idx = 0; - c0029cb6: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45015 + c0029e86: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45023 if (s->token.val != ']') { - c0029cb8: 04f70a63 beq a4,a5,c0029d0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45019 + c0029e88: 04f70a63 beq a4,a5,c0029edc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45027 if (JS_IsException(el)) - c0029cbc: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45024 + c0029e8c: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45032 if (s->token.val != ',') - c0029cbe: 02c00c13 li s8,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45029 + c0029e8e: 02c00c13 li s8,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45037 if (s->ext_json && s->token.val == ']') - c0029cc2: 05d00b13 li s6,93 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45018 + c0029e92: 05d00b13 li s6,93 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45026 el = json_parse_value(s); - c0029cc6: 8522 mv a0,s0 - c0029cc8: e2dff0ef jal ra,c0029af4 - c0029ccc: f02a sd a0,32(sp) - c0029cce: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45019 + c0029e96: 8522 mv a0,s0 + c0029e98: e2dff0ef jal ra,c0029cc4 + c0029e9c: f02a sd a0,32(sp) + c0029e9e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45027 if (JS_IsException(el)) - c0029cd0: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45018 + c0029ea0: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45026 el = json_parse_value(s); - c0029cd4: 872a mv a4,a0 - c0029cd6: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45019 + c0029ea4: 872a mv a4,a0 + c0029ea6: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45027 if (JS_IsException(el)) - c0029cd8: ed768fe3 beq a3,s7,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45021 + c0029ea8: ed768fe3 beq a3,s7,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45029 ret = JS_DefinePropertyValueUint32(ctx, val, idx, el, JS_PROP_C_W_E); - c0029cdc: c026 sw s1,0(sp) - c0029cde: 6582 ld a1,0(sp) - c0029ce0: 481d li a6,7 - c0029ce2: 86d6 mv a3,s5 - c0029ce4: 864e mv a2,s3 - c0029ce6: 8552 mv a0,s4 - c0029ce8: 9edff0ef jal ra,c00296d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45022 + c0029eac: c026 sw s1,0(sp) + c0029eae: 6582 ld a1,0(sp) + c0029eb0: 481d li a6,7 + c0029eb2: 86d6 mv a3,s5 + c0029eb4: 864e mv a2,s3 + c0029eb6: 8552 mv a0,s4 + c0029eb8: 9edff0ef jal ra,c00298a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45030 if (ret < 0) - c0029cec: ec0545e3 bltz a0,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45024 + c0029ebc: ec0545e3 bltz a0,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45032 if (s->token.val != ',') - c0029cf0: 4c1c lw a5,24(s0) - c0029cf2: 01879d63 bne a5,s8,c0029d0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45026 + c0029ec0: 4c1c lw a5,24(s0) + c0029ec2: 01879d63 bne a5,s8,c0029edc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45034 if (json_next_token(s)) - c0029cf6: 8522 mv a0,s0 - c0029cf8: a01fc0ef jal ra,c00266f8 - c0029cfc: ea051de3 bnez a0,c0029bb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45029 + c0029ec6: 8522 mv a0,s0 + c0029ec8: a01fc0ef jal ra,c00268c8 + c0029ecc: ea051de3 bnez a0,c0029d86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45037 if (s->ext_json && s->token.val == ']') - c0029d00: 5c3c lw a5,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45028 + c0029ed0: 5c3c lw a5,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45036 idx++; - c0029d02: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45029 + c0029ed2: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45037 if (s->ext_json && s->token.val == ']') - c0029d04: d3e9 beqz a5,c0029cc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45029 (discriminator 1) - c0029d06: 4c1c lw a5,24(s0) - c0029d08: fb679fe3 bne a5,s6,c0029cc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45033 + c0029ed4: d3e9 beqz a5,c0029e96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45037 (discriminator 1) + c0029ed6: 4c1c lw a5,24(s0) + c0029ed8: fb679fe3 bne a5,s6,c0029e96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45041 if (json_parse_expect(s, ']')) - c0029d0c: 05d00593 li a1,93 - c0029d10: b7b1 j c0029c5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45038 + c0029edc: 05d00593 li a1,93 + c0029ee0: b7b1 j c0029e2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45046 val = JS_DupValue(ctx, s->token.u.str.str); - c0029d12: 7508 ld a0,40(a0) - c0029d14: 780c ld a1,48(s0) - c0029d16: 959dc0ef jal ra,c000666e - c0029d1a: e02a sd a0,0(sp) - c0029d1c: 0005049b sext.w s1,a0 - c0029d20: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45056 + c0029ee2: 7508 ld a0,40(a0) + c0029ee4: 780c ld a1,48(s0) + c0029ee6: 877dc0ef jal ra,c000675c + c0029eea: e02a sd a0,0(sp) + c0029eec: 0005049b sext.w s1,a0 + c0029ef0: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45064 if (json_next_token(s)) - c0029d22: 8522 mv a0,s0 - c0029d24: a031 j c0029d30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45043 + c0029ef2: 8522 mv a0,s0 + c0029ef4: a031 j c0029f00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45051 val = s->token.u.num.val; - c0029d26: 751c ld a5,40(a0) - c0029d28: 5504 lw s1,40(a0) - c0029d2a: 03053903 ld s2,48(a0) - c0029d2e: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45056 + c0029ef6: 751c ld a5,40(a0) + c0029ef8: 5504 lw s1,40(a0) + c0029efa: 03053903 ld s2,48(a0) + c0029efe: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45064 if (json_next_token(s)) - c0029d30: 9c9fc0ef jal ra,c00266f8 - c0029d34: b73d j c0029c62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45048 + c0029f00: 9c9fc0ef jal ra,c00268c8 + c0029f04: b73d j c0029e32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45056 if (s->token.u.ident.atom == JS_ATOM_false || - c0029d36: 5504 lw s1,40(a0) - c0029d38: 4785 li a5,1 - c0029d3a: ffe4871b addiw a4,s1,-2 - c0029d3e: 00e7ee63 bltu a5,a4,c0029d5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45050 + c0029f06: 5504 lw s1,40(a0) + c0029f08: 4785 li a5,1 + c0029f0a: ffe4871b addiw a4,s1,-2 + c0029f0e: 00e7ee63 bltu a5,a4,c0029f2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45058 val = JS_NewBool(ctx, (s->token.u.ident.atom == JS_ATOM_true)); - c0029d42: 14f5 addi s1,s1,-3 - c0029d44: 0014b713 seqz a4,s1 + c0029f12: 14f5 addi s1,s1,-3 + c0029f14: 0014b713 seqz a4,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0029d48: d202 sw zero,36(sp) - c0029d4a: d03a sw a4,32(sp) - c0029d4c: f43e sd a5,40(sp) - c0029d4e: 7782 ld a5,32(sp) + c0029f18: d202 sw zero,36(sp) + c0029f1a: d03a sw a4,32(sp) + c0029f1c: f43e sd a5,40(sp) + c0029f1e: 7782 ld a5,32(sp) json_parse_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45050 - c0029d50: 0014b493 seqz s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45058 + c0029f20: 0014b493 seqz s1,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0029d54: 4905 li s2,1 - c0029d56: e03e sd a5,0(sp) - c0029d58: b7e9 j c0029d22 + c0029f24: 4905 li s2,1 + c0029f26: e03e sd a5,0(sp) + c0029f28: b7e9 j c0029ef2 json_parse_value(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45059 } else if (s->token.u.ident.atom == JS_ATOM_null) { - c0029d5a: def490e3 bne s1,a5,c0029b3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45052 + c0029f2a: def490e3 bne s1,a5,c0029d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45060 val = JS_NULL; - c0029d5e: 4909 li s2,2 - c0029d60: 4481 li s1,0 - c0029d62: b7c1 j c0029d22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45061 + c0029f2e: 4909 li s2,2 + c0029f30: 4481 li s1,0 + c0029f32: b7c1 j c0029ef2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45069 if (s->token.val == TOK_EOF) { - c0029d64: faa00713 li a4,-86 - c0029d68: dce799e3 bne a5,a4,c0029b3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45062 + c0029f34: faa00713 li a4,-86 + c0029f38: dce799e3 bne a5,a4,c0029d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45070 js_parse_error(s, "unexpected end of input"); - c0029d6c: 00036597 auipc a1,0x36 - c0029d70: a6c58593 addi a1,a1,-1428 # c005f7d8 - c0029d74: d44fc0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44951 + c0029f3c: 00036597 auipc a1,0x36 + c0029f40: afc58593 addi a1,a1,-1284 # c005fa38 + c0029f44: d44fc0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44959 JSValue val = JS_NULL; - c0029d78: 4909 li s2,2 - c0029d7a: 4481 li s1,0 - c0029d7c: bd2d j c0029bb6 + c0029f48: 4909 li s2,2 + c0029f4a: 4481 li s1,0 + c0029f4c: bd2d j c0029d86 -00000000c0029d7e : +00000000c0029f4e : JS_ParseJSON2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45077 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45085 { - c0029d7e: 7115 addi sp,sp,-224 - c0029d80: e9a2 sd s0,208(sp) - c0029d82: e1ca sd s2,192(sp) - c0029d84: 842e mv s0,a1 - c0029d86: fd4e sd s3,184(sp) - c0029d88: 892a mv s2,a0 - c0029d8a: 89b2 mv s3,a2 + c0029f4e: 7115 addi sp,sp,-224 + c0029f50: e9a2 sd s0,208(sp) + c0029f52: e1ca sd s2,192(sp) + c0029f54: 842e mv s0,a1 + c0029f56: fd4e sd s3,184(sp) + c0029f58: 892a mv s2,a0 + c0029f5a: 89b2 mv s3,a2 js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34317 memset(s, 0, sizeof(*s)); - c0029d8c: 4581 li a1,0 - c0029d8e: 07800613 li a2,120 - c0029d92: 1828 addi a0,sp,56 + c0029f5c: 4581 li a1,0 + c0029f5e: 07800613 li a2,120 + c0029f62: 1828 addi a0,sp,56 JS_ParseJSON2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45077 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45085 { - c0029d94: ed86 sd ra,216(sp) - c0029d96: e5a6 sd s1,200(sp) - c0029d98: f952 sd s4,176(sp) - c0029d9a: 84ba mv s1,a4 - c0029d9c: 8a36 mv s4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45079 + c0029f64: ed86 sd ra,216(sp) + c0029f66: e5a6 sd s1,200(sp) + c0029f68: f952 sd s4,176(sp) + c0029f6a: 84ba mv s1,a4 + c0029f6c: 8a36 mv s4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45087 JSValue val = JS_UNDEFINED; - c0029d9e: e802 sd zero,16(sp) + c0029f6e: e802 sd zero,16(sp) js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34317 memset(s, 0, sizeof(*s)); - c0029da0: 2d12c0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34312 + c0029f70: 2d12c0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34320 s->line_num = 1; - c0029da4: 4785 li a5,1 - c0029da6: de3e sw a5,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c0029f74: 4785 li a5,1 + c0029f76: de3e sw a5,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c0029da8: 1782 slli a5,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34313 + c0029f78: 1782 slli a5,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34321 s->buf_ptr = (const uint8_t *)input; - c0029daa: e522 sd s0,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c0029f7a: e522 sd s0,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c0029dac: 02078793 addi a5,a5,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34314 + c0029f7c: 02078793 addi a5,a5,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 s->buf_end = s->buf_ptr + input_len; - c0029db0: 944e add s0,s0,s3 + c0029f80: 944e add s0,s0,s3 JS_ParseJSON2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45090 s->ext_json = ((flags & JS_PARSE_JSON_EXT) != 0); - c0029db2: 8885 andi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45083 + c0029f82: 8885 andi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45091 if (json_next_token(s)) - c0029db4: 1808 addi a0,sp,48 + c0029f84: 1808 addi a0,sp,48 js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34318 s->ctx = ctx; - c0029db6: f84a sd s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34311 + c0029f86: f84a sd s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34319 s->filename = filename; - c0029db8: e0d2 sd s4,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34314 + c0029f88: e0d2 sd s4,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 s->buf_end = s->buf_ptr + input_len; - c0029dba: e922 sd s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c0029f8a: e922 sd s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c0029dbc: e4be sd a5,72(sp) + c0029f8c: e4be sd a5,72(sp) JS_ParseJSON2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45090 s->ext_json = ((flags & JS_PARSE_JSON_EXT) != 0); - c0029dbe: d526 sw s1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45083 + c0029f8e: d526 sw s1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45091 if (json_next_token(s)) - c0029dc0: 939fc0ef jal ra,c00266f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45079 + c0029f90: 939fc0ef jal ra,c00268c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45087 JSValue val = JS_UNDEFINED; - c0029dc4: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45083 + c0029f94: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45091 if (json_next_token(s)) - c0029dc6: e929 bnez a0,c0029e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45085 + c0029f96: e929 bnez a0,c0029fe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45093 val = json_parse_value(s); - c0029dc8: 1808 addi a0,sp,48 - c0029dca: d2bff0ef jal ra,c0029af4 - c0029dce: e82a sd a0,16(sp) - c0029dd0: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45086 + c0029f98: 1808 addi a0,sp,48 + c0029f9a: d2bff0ef jal ra,c0029cc4 + c0029f9e: e82a sd a0,16(sp) + c0029fa0: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45094 if (JS_IsException(val)) - c0029dd2: 0005871b sext.w a4,a1 - c0029dd6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45085 + c0029fa2: 0005871b sext.w a4,a1 + c0029fa6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45093 val = json_parse_value(s); - c0029dd8: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45086 + c0029fa8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45094 if (JS_IsException(val)) - c0029dda: 02f70f63 beq a4,a5,c0029e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45088 + c0029faa: 02f70f63 beq a4,a5,c0029fe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45096 if (s->token.val != TOK_EOF) { - c0029dde: 4726 lw a4,72(sp) - c0029de0: faa00793 li a5,-86 - c0029de4: 02f71063 bne a4,a5,c0029e04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45092 + c0029fae: 4726 lw a4,72(sp) + c0029fb0: faa00793 li a5,-86 + c0029fb4: 02f71063 bne a4,a5,c0029fd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45100 return val; - c0029de8: 67c2 ld a5,16(sp) - c0029dea: f03e sd a5,32(sp) - c0029dec: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45097 -} - c0029dee: 60ee ld ra,216(sp) - c0029df0: 644e ld s0,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45096 + c0029fb8: 67c2 ld a5,16(sp) + c0029fba: f03e sd a5,32(sp) + c0029fbc: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45105 +} + c0029fbe: 60ee ld ra,216(sp) + c0029fc0: 644e ld s0,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45104 return JS_EXCEPTION; - c0029df2: f43e sd a5,40(sp) + c0029fc2: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45105 +} + c0029fc4: 7502 ld a0,32(sp) + c0029fc6: 75a2 ld a1,40(sp) + c0029fc8: 64ae ld s1,200(sp) + c0029fca: 690e ld s2,192(sp) + c0029fcc: 79ea ld s3,184(sp) + c0029fce: 7a4a ld s4,176(sp) + c0029fd0: 612d addi sp,sp,224 + c0029fd2: 8082 ret + c0029fd4: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45097 -} - c0029df4: 7502 ld a0,32(sp) - c0029df6: 75a2 ld a1,40(sp) - c0029df8: 64ae ld s1,200(sp) - c0029dfa: 690e ld s2,192(sp) - c0029dfc: 79ea ld s3,184(sp) - c0029dfe: 7a4a ld s4,176(sp) - c0029e00: 612d addi sp,sp,224 - c0029e02: 8082 ret - c0029e04: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45089 if (js_parse_error(s, "unexpected data at the end")) - c0029e06: 1808 addi a0,sp,48 - c0029e08: 00036597 auipc a1,0x36 - c0029e0c: a0858593 addi a1,a1,-1528 # c005f810 - c0029e10: ca8fc0ef jal ra,c00262b8 - c0029e14: 6622 ld a2,8(sp) - c0029e16: d969 beqz a0,c0029de8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45094 + c0029fd6: 1808 addi a0,sp,48 + c0029fd8: 00036597 auipc a1,0x36 + c0029fdc: a9858593 addi a1,a1,-1384 # c005fa70 + c0029fe0: ca8fc0ef jal ra,c0026488 + c0029fe4: 6622 ld a2,8(sp) + c0029fe6: d969 beqz a0,c0029fb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45102 JS_FreeValue(ctx, val); - c0029e18: 65c2 ld a1,16(sp) - c0029e1a: 854a mv a0,s2 - c0029e1c: d1ddd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45095 + c0029fe8: 65c2 ld a1,16(sp) + c0029fea: 854a mv a0,s2 + c0029fec: c3bdd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45103 free_token(s, &s->token); - c0029e20: 00ac addi a1,sp,72 - c0029e22: 1808 addi a0,sp,48 - c0029e24: 8b6df0ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45096 + c0029ff0: 00ac addi a1,sp,72 + c0029ff2: 1808 addi a0,sp,48 + c0029ff4: fd5de0ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45104 return JS_EXCEPTION; - c0029e28: 4799 li a5,6 - c0029e2a: f002 sd zero,32(sp) - c0029e2c: b7c9 j c0029dee + c0029ff8: 4799 li a5,6 + c0029ffa: f002 sd zero,32(sp) + c0029ffc: b7c9 j c0029fbe -00000000c0029e2e : +00000000c0029ffe : JS_ParseJSON(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45109 { - c0029e2e: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45102 + c0029ffe: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45110 return JS_ParseJSON2(ctx, buf, buf_len, filename, 0); - c0029e30: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45103 + c002a000: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45111 } - c0029e32: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45102 + c002a002: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45110 return JS_ParseJSON2(ctx, buf, buf_len, filename, 0); - c0029e34: f4bff06f j c0029d7e + c002a004: f4bff06f j c0029f4e -00000000c0029e38 : +00000000c002a008 : js_proxy_revocable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46707 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46715 { - c0029e38: 7175 addi sp,sp,-144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46710 + c002a008: 7175 addi sp,sp,-144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46718 proxy_obj = js_proxy_constructor(ctx, JS_UNDEFINED, argc, argv); - c0029e3a: 4581 li a1,0 - c0029e3c: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46707 -{ - c0029e3e: e122 sd s0,128(sp) - c0029e40: f8ca sd s2,112(sp) - c0029e42: e506 sd ra,136(sp) - c0029e44: fca6 sd s1,120(sp) - c0029e46: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46708 + c002a00a: 4581 li a1,0 + c002a00c: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46715 +{ + c002a00e: e122 sd s0,128(sp) + c002a010: f8ca sd s2,112(sp) + c002a012: e506 sd ra,136(sp) + c002a014: fca6 sd s1,120(sp) + c002a016: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46716 JSValue proxy_obj, revoke_obj = JS_UNDEFINED, obj; - c0029e48: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46710 + c002a018: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46718 proxy_obj = js_proxy_constructor(ctx, JS_UNDEFINED, argc, argv); - c0029e4a: 878ed0ef jal ra,c0016ec2 - c0029e4e: e82a sd a0,16(sp) - c0029e50: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46711 + c002a01a: 878ed0ef jal ra,c0017092 + c002a01e: e82a sd a0,16(sp) + c002a020: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46719 if (JS_IsException(proxy_obj)) - c0029e52: 0005879b sext.w a5,a1 - c0029e56: 4919 li s2,6 - c0029e58: 07278f63 beq a5,s2,c0029ed6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46713 + c002a022: 0005879b sext.w a5,a1 + c002a026: 4919 li s2,6 + c002a028: 07278f63 beq a5,s2,c002a0a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46721 revoke_obj = js_proxy_revoke_constructor(ctx, proxy_obj); - c0029e5c: e8aa sd a0,80(sp) - c0029e5e: ecae sd a1,88(sp) + c002a02c: e8aa sd a0,80(sp) + c002a02e: ecae sd a1,88(sp) js_proxy_revoke_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46710 return JS_NewCFunctionData(ctx, js_proxy_revoke, 0, 0, 1, &proxy_obj); - c0029e60: 089c addi a5,sp,80 - c0029e62: 4705 li a4,1 - c0029e64: 4681 li a3,0 - c0029e66: 4601 li a2,0 - c0029e68: fffe1597 auipc a1,0xfffe1 - c0029e6c: c0458593 addi a1,a1,-1020 # c000aa6c - c0029e70: 8522 mv a0,s0 - c0029e72: b84ff0ef jal ra,c00291f6 - c0029e76: f02a sd a0,32(sp) - c0029e78: f42e sd a1,40(sp) + c002a030: 089c addi a5,sp,80 + c002a032: 4705 li a4,1 + c002a034: 4681 li a3,0 + c002a036: 4601 li a2,0 + c002a038: fffe1597 auipc a1,0xfffe1 + c002a03c: b2258593 addi a1,a1,-1246 # c000ab5a + c002a040: 8522 mv a0,s0 + c002a042: b84ff0ef jal ra,c00293c6 + c002a046: f02a sd a0,32(sp) + c002a048: f42e sd a1,40(sp) js_proxy_revocable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46722 if (JS_IsException(revoke_obj)) - c0029e7a: 0005879b sext.w a5,a1 + c002a04a: 0005879b sext.w a5,a1 js_proxy_revoke_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46710 return JS_NewCFunctionData(ctx, js_proxy_revoke, 0, 0, 1, &proxy_obj); - c0029e7e: 84ae mv s1,a1 + c002a04e: 84ae mv s1,a1 js_proxy_revocable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46722 if (JS_IsException(revoke_obj)) - c0029e80: 05278c63 beq a5,s2,c0029ed8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46716 + c002a050: 05278c63 beq a5,s2,c002a0a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46724 obj = JS_NewObject(ctx); - c0029e84: 8522 mv a0,s0 - c0029e86: f03ec0ef jal ra,c0016d88 - c0029e8a: f82a sd a0,48(sp) - c0029e8c: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46717 + c002a054: 8522 mv a0,s0 + c002a056: f03ec0ef jal ra,c0016f58 + c002a05a: f82a sd a0,48(sp) + c002a05c: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46725 if (JS_IsException(obj)) - c0029e8e: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46716 + c002a05e: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46724 obj = JS_NewObject(ctx); - c0029e92: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46717 + c002a062: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46725 if (JS_IsException(obj)) - c0029e94: 05278263 beq a5,s2,c0029ed8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46720 + c002a064: 05278263 beq a5,s2,c002a0a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46728 JS_DefinePropertyValue(ctx, obj, JS_ATOM_proxy, proxy_obj, JS_PROP_C_W_E); - c0029e98: 6742 ld a4,16(sp) - c0029e9a: 67e2 ld a5,24(sp) - c0029e9c: 85aa mv a1,a0 - c0029e9e: 481d li a6,7 - c0029ea0: 08400693 li a3,132 - c0029ea4: 8522 mv a0,s0 - c0029ea6: 910e90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46721 + c002a068: 6742 ld a4,16(sp) + c002a06a: 67e2 ld a5,24(sp) + c002a06c: 85aa mv a1,a0 + c002a06e: 481d li a6,7 + c002a070: 08400693 li a3,132 + c002a074: 8522 mv a0,s0 + c002a076: 82ee90ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46729 JS_DefinePropertyValue(ctx, obj, JS_ATOM_revoke, revoke_obj, JS_PROP_C_W_E); - c0029eaa: 77a2 ld a5,40(sp) - c0029eac: 7702 ld a4,32(sp) - c0029eae: 75c2 ld a1,48(sp) - c0029eb0: 7662 ld a2,56(sp) - c0029eb2: 481d li a6,7 - c0029eb4: 08500693 li a3,133 - c0029eb8: 8522 mv a0,s0 - c0029eba: 8fce90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46722 + c002a07a: 77a2 ld a5,40(sp) + c002a07c: 7702 ld a4,32(sp) + c002a07e: 75c2 ld a1,48(sp) + c002a080: 7662 ld a2,56(sp) + c002a082: 481d li a6,7 + c002a084: 08500693 li a3,133 + c002a088: 8522 mv a0,s0 + c002a08a: 81ae90ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46730 return obj; - c0029ebe: 77c2 ld a5,48(sp) - c0029ec0: e8be sd a5,80(sp) - c0029ec2: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46727 -} - c0029ec4: 60aa ld ra,136(sp) - c0029ec6: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46726 + c002a08e: 77c2 ld a5,48(sp) + c002a090: e8be sd a5,80(sp) + c002a092: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46735 +} + c002a094: 60aa ld ra,136(sp) + c002a096: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46734 return JS_EXCEPTION; - c0029ec8: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46727 -} - c0029eca: 6546 ld a0,80(sp) - c0029ecc: 65e6 ld a1,88(sp) - c0029ece: 74e6 ld s1,120(sp) - c0029ed0: 7946 ld s2,112(sp) - c0029ed2: 6149 addi sp,sp,144 - c0029ed4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46708 + c002a098: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46735 +} + c002a09a: 6546 ld a0,80(sp) + c002a09c: 65e6 ld a1,88(sp) + c002a09e: 74e6 ld s1,120(sp) + c002a0a0: 7946 ld s2,112(sp) + c002a0a2: 6149 addi sp,sp,144 + c002a0a4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46716 JSValue proxy_obj, revoke_obj = JS_UNDEFINED, obj; - c0029ed6: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46724 + c002a0a6: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46732 JS_FreeValue(ctx, proxy_obj); - c0029ed8: 65c2 ld a1,16(sp) - c0029eda: 6662 ld a2,24(sp) - c0029edc: 8522 mv a0,s0 - c0029ede: c5bdd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46725 + c002a0a8: 65c2 ld a1,16(sp) + c002a0aa: 6662 ld a2,24(sp) + c002a0ac: 8522 mv a0,s0 + c002a0ae: b79dd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46733 JS_FreeValue(ctx, revoke_obj); - c0029ee2: 7582 ld a1,32(sp) - c0029ee4: 8626 mv a2,s1 - c0029ee6: 8522 mv a0,s0 - c0029ee8: c51dd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46726 + c002a0b2: 7582 ld a1,32(sp) + c002a0b4: 8626 mv a2,s1 + c002a0b6: 8522 mv a0,s0 + c002a0b8: b6fdd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46734 return JS_EXCEPTION; - c0029eec: 4799 li a5,6 - c0029eee: e882 sd zero,80(sp) - c0029ef0: bfd1 j c0029ec4 + c002a0bc: 4799 li a5,6 + c002a0be: e882 sd zero,80(sp) + c002a0c0: bfd1 j c002a094 -00000000c0029ef2 : +00000000c002a0c2 : js_aggregate_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38797 -{ - c0029ef2: 715d addi sp,sp,-80 - c0029ef4: e0a2 sd s0,64(sp) - c0029ef6: e486 sd ra,72(sp) - c0029ef8: e02e sd a1,0(sp) - c0029efa: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38805 +{ + c002a0c2: 715d addi sp,sp,-80 + c002a0c4: e0a2 sd s0,64(sp) + c002a0c6: e486 sd ra,72(sp) + c002a0c8: e02e sd a1,0(sp) + c002a0ca: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38808 obj = JS_NewObjectProtoClass(ctx, - c0029efc: 10853583 ld a1,264(a0) - c0029f00: 11053603 ld a2,272(a0) - c0029f04: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38797 + c002a0cc: 10853583 ld a1,264(a0) + c002a0d0: 11053603 ld a2,272(a0) + c002a0d4: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38805 { - c0029f06: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38800 + c002a0d6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38808 obj = JS_NewObjectProtoClass(ctx, - c0029f08: 881ec0ef jal ra,c0016788 - c0029f0c: e82a sd a0,16(sp) - c0029f0e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38803 + c002a0d8: 881ec0ef jal ra,c0016958 + c002a0dc: e82a sd a0,16(sp) + c002a0de: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38811 if (JS_IsException(obj)) - c0029f10: 0005871b sext.w a4,a1 - c0029f14: 4799 li a5,6 - c0029f16: 00f71a63 bne a4,a5,c0029f2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38804 + c002a0e0: 0005871b sext.w a4,a1 + c002a0e4: 4799 li a5,6 + c002a0e6: 00f71a63 bne a4,a5,c002a0fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38812 return obj; - c0029f1a: f02a sd a0,32(sp) - c0029f1c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38808 -} - c0029f1e: 60a6 ld ra,72(sp) - c0029f20: 6406 ld s0,64(sp) - c0029f22: 7502 ld a0,32(sp) - c0029f24: 75a2 ld a1,40(sp) - c0029f26: 6161 addi sp,sp,80 - c0029f28: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38805 + c002a0ea: f02a sd a0,32(sp) + c002a0ec: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38816 +} + c002a0ee: 60a6 ld ra,72(sp) + c002a0f0: 6406 ld s0,64(sp) + c002a0f2: 7502 ld a0,32(sp) + c002a0f4: 75a2 ld a1,40(sp) + c002a0f6: 6161 addi sp,sp,80 + c002a0f8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38813 JS_DefinePropertyValue(ctx, obj, JS_ATOM_errors, JS_DupValue(ctx, errors), - c0029f2a: 6502 ld a0,0(sp) - c0029f2c: 65a2 ld a1,8(sp) - c0029f2e: f40dc0ef jal ra,c000666e - c0029f32: 87ae mv a5,a1 - c0029f34: 6662 ld a2,24(sp) - c0029f36: 65c2 ld a1,16(sp) - c0029f38: 872a mv a4,a0 - c0029f3a: 480d li a6,3 - c0029f3c: 03500693 li a3,53 - c0029f40: 8522 mv a0,s0 - c0029f42: 874e90ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38807 + c002a0fa: 6502 ld a0,0(sp) + c002a0fc: 65a2 ld a1,8(sp) + c002a0fe: e5edc0ef jal ra,c000675c + c002a102: 87ae mv a5,a1 + c002a104: 6662 ld a2,24(sp) + c002a106: 65c2 ld a1,16(sp) + c002a108: 872a mv a4,a0 + c002a10a: 480d li a6,3 + c002a10c: 03500693 li a3,53 + c002a110: 8522 mv a0,s0 + c002a112: f93e80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38815 return obj; - c0029f46: 67c2 ld a5,16(sp) - c0029f48: f03e sd a5,32(sp) - c0029f4a: 67e2 ld a5,24(sp) - c0029f4c: f43e sd a5,40(sp) - c0029f4e: bfc1 j c0029f1e + c002a116: 67c2 ld a5,16(sp) + c002a118: f03e sd a5,32(sp) + c002a11a: 67e2 ld a5,24(sp) + c002a11c: f43e sd a5,40(sp) + c002a11e: bfc1 j c002a0ee -00000000c0029f50 : +00000000c002a120 : js_parse_template(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22195 { - c0029f50: 7115 addi sp,sp,-224 - c0029f52: e9a2 sd s0,208(sp) - c0029f54: f556 sd s5,168(sp) - c0029f56: ed5e sd s7,152(sp) - c0029f58: ed86 sd ra,216(sp) - c0029f5a: e5a6 sd s1,200(sp) - c0029f5c: e1ca sd s2,192(sp) - c0029f5e: fd4e sd s3,184(sp) - c0029f60: f952 sd s4,176(sp) - c0029f62: f15a sd s6,160(sp) - c0029f64: e962 sd s8,144(sp) - c0029f66: e566 sd s9,136(sp) - c0029f68: e16a sd s10,128(sp) - c0029f6a: fcee sd s11,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22193 + c002a120: 7115 addi sp,sp,-224 + c002a122: e9a2 sd s0,208(sp) + c002a124: f556 sd s5,168(sp) + c002a126: ed5e sd s7,152(sp) + c002a128: ed86 sd ra,216(sp) + c002a12a: e5a6 sd s1,200(sp) + c002a12c: e1ca sd s2,192(sp) + c002a12e: fd4e sd s3,184(sp) + c002a130: f952 sd s4,176(sp) + c002a132: f15a sd s6,160(sp) + c002a134: e962 sd s8,144(sp) + c002a136: e566 sd s9,136(sp) + c002a138: e16a sd s10,128(sp) + c002a13a: fcee sd s11,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22201 raw_array = JS_UNDEFINED; /* avoid warning */ - c0029f6c: e802 sd zero,16(sp) - c0029f6e: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22188 + c002a13c: e802 sd zero,16(sp) + c002a13e: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22196 JSContext *ctx = s->ctx; - c0029f70: 00053a03 ld s4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22187 -{ - c0029f74: 842a mv s0,a0 - c0029f76: 8aae mv s5,a1 - c0029f78: 8bb2 mv s7,a2 + c002a140: 00053a03 ld s4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22195 +{ + c002a144: 842a mv s0,a0 + c002a146: 8aae mv s5,a1 + c002a148: 8bb2 mv s7,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22203 if (call) { - c0029f7a: e98d bnez a1,c0029fac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22194 + c002a14a: e98d bnez a1,c002a17c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22202 template_object = JS_UNDEFINED; /* avoid warning */ - c0029f7c: f002 sd zero,32(sp) - c0029f7e: f402 sd zero,40(sp) - c0029f80: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22193 + c002a14c: f002 sd zero,32(sp) + c002a14e: f402 sd zero,40(sp) + c002a150: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22201 raw_array = JS_UNDEFINED; /* avoid warning */ - c0029f82: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22246 + c002a152: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22254 if (str->len != 0 || depth == 0) { - c0029f84: 80000c37 lui s8,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22220 + c002a154: 80000c37 lui s8,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22228 if (JS_DefinePropertyValueUint32(ctx, raw_array, depth, - c0029f88: 6b11 lui s6,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22215 + c002a158: 6b11 lui s6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22223 depth = 0; - c0029f8a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22216 + c002a15a: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22224 while (s->token.val == TOK_TEMPLATE) { - c0029f8c: f8200d93 li s11,-126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22218 + c002a15c: f8200d93 li s11,-126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22226 cooked = s->token; - c0029f90: 01840c93 addi s9,s0,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22246 + c002a160: 01840c93 addi s9,s0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22254 if (str->len != 0 || depth == 0) { - c0029f94: fffc4c13 not s8,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22220 + c002a164: fffc4c13 not s8,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22228 if (JS_DefinePropertyValueUint32(ctx, raw_array, depth, - c0029f98: 0b11 addi s6,s6,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22216 + c002a168: 0b11 addi s6,s6,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22224 while (s->token.val == TOK_TEMPLATE) { - c0029f9a: 4c1c lw a5,24(s0) - c0029f9c: 07b78a63 beq a5,s11,c002a010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22281 + c002a16a: 4c1c lw a5,24(s0) + c002a16c: 07b78a63 beq a5,s11,c002a1e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22289 return js_parse_expect(s, TOK_TEMPLATE); - c0029fa0: f8200593 li a1,-126 - c0029fa4: 8522 mv a0,s0 - c0029fa6: b3cfe0ef jal ra,c00282e2 - c0029faa: a26d j c002a154 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22198 + c002a170: f8200593 li a1,-126 + c002a174: 8522 mv a0,s0 + c002a176: b3cfe0ef jal ra,c00284b2 + c002a17a: a26d j c002a324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22206 template_object = JS_NewArray(ctx); - c0029fac: 8552 mv a0,s4 - c0029fae: 810ed0ef jal ra,c0016fbe - c0029fb2: f02a sd a0,32(sp) - c0029fb4: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22199 + c002a17c: 8552 mv a0,s4 + c002a17e: 810ed0ef jal ra,c001718e + c002a182: f02a sd a0,32(sp) + c002a184: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22207 if (JS_IsException(template_object)) - c0029fb6: 0005879b sext.w a5,a1 - c0029fba: 4499 li s1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22198 + c002a186: 0005879b sext.w a5,a1 + c002a18a: 4499 li s1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22206 template_object = JS_NewArray(ctx); - c0029fbc: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22199 + c002a18c: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22207 if (JS_IsException(template_object)) - c0029fbe: 00979463 bne a5,s1,c0029fc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22223 + c002a18e: 00979463 bne a5,s1,c002a196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22231 return -1; - c0029fc2: 557d li a0,-1 - c0029fc4: aa41 j c002a154 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22202 + c002a192: 557d li a0,-1 + c002a194: aa41 j c002a324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22210 ret = emit_push_const(s, template_object, 0); - c0029fc6: 85aa mv a1,a0 - c0029fc8: 864a mv a2,s2 - c0029fca: 4681 li a3,0 - c0029fcc: 8522 mv a0,s0 - c0029fce: 98eee0ef jal ra,c001815c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22203 + c002a196: 85aa mv a1,a0 + c002a198: 864a mv a2,s2 + c002a19a: 4681 li a3,0 + c002a19c: 8522 mv a0,s0 + c002a19e: 98eee0ef jal ra,c001832c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22211 JS_FreeValue(ctx, template_object); - c0029fd2: 7582 ld a1,32(sp) - c0029fd4: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22202 + c002a1a2: 7582 ld a1,32(sp) + c002a1a4: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22210 ret = emit_push_const(s, template_object, 0); - c0029fd6: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22203 + c002a1a6: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22211 JS_FreeValue(ctx, template_object); - c0029fd8: 8552 mv a0,s4 - c0029fda: b5fdd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22204 + c002a1a8: 8552 mv a0,s4 + c002a1aa: a7ddd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22212 if (ret) - c0029fde: fe0992e3 bnez s3,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22206 + c002a1ae: fe0992e3 bnez s3,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22214 raw_array = JS_NewArray(ctx); - c0029fe2: 8552 mv a0,s4 - c0029fe4: fdbec0ef jal ra,c0016fbe - c0029fe8: e82a sd a0,16(sp) - c0029fea: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22207 + c002a1b2: 8552 mv a0,s4 + c002a1b4: fdbec0ef jal ra,c001718e + c002a1b8: e82a sd a0,16(sp) + c002a1ba: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22215 if (JS_IsException(raw_array)) - c0029fec: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22206 + c002a1bc: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22214 raw_array = JS_NewArray(ctx); - c0029ff0: 872a mv a4,a0 - c0029ff2: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22207 + c002a1c0: 872a mv a4,a0 + c002a1c2: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22215 if (JS_IsException(raw_array)) - c0029ff4: fc9787e3 beq a5,s1,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22209 - if (JS_DefinePropertyValue(ctx, template_object, JS_ATOM_raw, - c0029ff8: 87ae mv a5,a1 - c0029ffa: 7622 ld a2,40(sp) - c0029ffc: 7582 ld a1,32(sp) - c0029ffe: 6811 lui a6,0x4 - c002a000: 07100693 li a3,113 - c002a004: 8552 mv a0,s4 - c002a006: fb1e80ef jal ra,c0012fb6 - c002a00a: f6055de3 bgez a0,c0029f84 - c002a00e: bf55 j c0029fc2 + c002a1c4: fc9787e3 beq a5,s1,c002a192 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22217 + if (JS_DefinePropertyValue(ctx, template_object, JS_ATOM_raw, + c002a1c8: 87ae mv a5,a1 + c002a1ca: 7622 ld a2,40(sp) + c002a1cc: 7582 ld a1,32(sp) + c002a1ce: 6811 lui a6,0x4 + c002a1d0: 07100693 li a3,113 + c002a1d4: 8552 mv a0,s4 + c002a1d6: ecfe80ef jal ra,c00130a4 + c002a1da: f6055de3 bgez a0,c002a154 + c002a1de: bf55 j c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22225 const uint8_t *p = s->token.ptr + 1; - c002a010: 701c ld a5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22218 + c002a1e0: 701c ld a5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22226 cooked = s->token; - c002a012: 03000613 li a2,48 - c002a016: 85e6 mv a1,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22217 + c002a1e2: 03000613 li a2,48 + c002a1e6: 85e6 mv a1,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22225 const uint8_t *p = s->token.ptr + 1; - c002a018: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22218 + c002a1e8: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22226 cooked = s->token; - c002a01a: 0088 addi a0,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22217 + c002a1ea: 0088 addi a0,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22225 const uint8_t *p = s->token.ptr + 1; - c002a01c: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22218 + c002a1ec: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22226 cooked = s->token; - c002a01e: 1bd2c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22219 + c002a1ee: 1bd2c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22227 if (call) { - c002a022: 080a8363 beqz s5,c002a0a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22220 - if (JS_DefinePropertyValueUint32(ctx, raw_array, depth, - c002a026: 7408 ld a0,40(s0) - c002a028: 780c ld a1,48(s0) - c002a02a: 00048d1b sext.w s10,s1 - c002a02e: e40dc0ef jal ra,c000666e - c002a032: 87ae mv a5,a1 - c002a034: fc2e sd a1,56(sp) - c002a036: 65c2 ld a1,16(sp) - c002a038: 872a mv a4,a0 - c002a03a: f82a sd a0,48(sp) - c002a03c: 885a mv a6,s6 - c002a03e: 86ea mv a3,s10 - c002a040: 864e mv a2,s3 - c002a042: 8552 mv a0,s4 - c002a044: ec4e sd s3,24(sp) - c002a046: e8eff0ef jal ra,c00296d4 - c002a04a: f6054ce3 bltz a0,c0029fc2 + c002a1f2: 080a8363 beqz s5,c002a278 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22228 + if (JS_DefinePropertyValueUint32(ctx, raw_array, depth, + c002a1f6: 7408 ld a0,40(s0) + c002a1f8: 780c ld a1,48(s0) + c002a1fa: 00048d1b sext.w s10,s1 + c002a1fe: d5edc0ef jal ra,c000675c + c002a202: 87ae mv a5,a1 + c002a204: fc2e sd a1,56(sp) + c002a206: 65c2 ld a1,16(sp) + c002a208: 872a mv a4,a0 + c002a20a: f82a sd a0,48(sp) + c002a20c: 885a mv a6,s6 + c002a20e: 86ea mv a3,s10 + c002a210: 864e mv a2,s3 + c002a212: 8552 mv a0,s4 + c002a214: ec4e sd s3,24(sp) + c002a216: e8eff0ef jal ra,c00298a4 + c002a21a: f6054ce3 bltz a0,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22236 if (js_parse_string(s, '`', FALSE, p, &cooked, &p)) { - c002a04e: 66a2 ld a3,8(sp) - c002a050: 003c addi a5,sp,8 - c002a052: 0098 addi a4,sp,64 - c002a054: 4601 li a2,0 - c002a056: 06000593 li a1,96 - c002a05a: 8522 mv a0,s0 - c002a05c: c14fc0ef jal ra,c0026470 - c002a060: c501 beqz a0,c002a068 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22229 + c002a21e: 66a2 ld a3,8(sp) + c002a220: 003c addi a5,sp,8 + c002a222: 0098 addi a4,sp,64 + c002a224: 4601 li a2,0 + c002a226: 06000593 li a1,96 + c002a22a: 8522 mv a0,s0 + c002a22c: c14fc0ef jal ra,c0026640 + c002a230: c501 beqz a0,c002a238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22237 cooked.u.str.str = JS_UNDEFINED; - c002a062: 478d li a5,3 - c002a064: e882 sd zero,80(sp) - c002a066: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22231 + c002a232: 478d li a5,3 + c002a234: e882 sd zero,80(sp) + c002a236: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22239 if (JS_DefinePropertyValueUint32(ctx, template_object, depth, - c002a068: 6746 ld a4,80(sp) - c002a06a: 67e6 ld a5,88(sp) - c002a06c: 7582 ld a1,32(sp) - c002a06e: 885a mv a6,s6 - c002a070: 86ea mv a3,s10 - c002a072: 864a mv a2,s2 - c002a074: 8552 mv a0,s4 - c002a076: f44a sd s2,40(sp) - c002a078: e5cff0ef jal ra,c00296d4 - c002a07c: f40543e3 bltz a0,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22262 + c002a238: 6746 ld a4,80(sp) + c002a23a: 67e6 ld a5,88(sp) + c002a23c: 7582 ld a1,32(sp) + c002a23e: 885a mv a6,s6 + c002a240: 86ea mv a3,s10 + c002a242: 864a mv a2,s2 + c002a244: 8552 mv a0,s4 + c002a246: f44a sd s2,40(sp) + c002a248: e5cff0ef jal ra,c00298a4 + c002a24c: f40543e3 bltz a0,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22270 if (s->token.u.str.sep == '`') - c002a080: 5c18 lw a4,56(s0) - c002a082: 06000793 li a5,96 - c002a086: 0af71063 bne a4,a5,c002a126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22284 + c002a250: 5c18 lw a4,56(s0) + c002a252: 06000793 li a5,96 + c002a256: 0af71063 bne a4,a5,c002a2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22292 if (call) { - c002a08a: 100a9363 bnez s5,c002a190 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22290 + c002a25a: 100a9363 bnez s5,c002a360 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22298 emit_op(s, OP_call_method); - c002a08e: 8522 mv a0,s0 - c002a090: 02400593 li a1,36 - c002a094: ba8db0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22291 + c002a25e: 8522 mv a0,s0 + c002a260: 02400593 li a1,36 + c002a264: ac6db0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22299 emit_u16(s, depth - 1); - c002a098: fff4859b addiw a1,s1,-1 - c002a09c: 15c2 slli a1,a1,0x30 - c002a09e: 91c1 srli a1,a1,0x30 - c002a0a0: 8522 mv a0,s0 - c002a0a2: a68db0ef jal ra,c000530a - c002a0a6: a211 j c002a1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22241 + c002a268: fff4859b addiw a1,s1,-1 + c002a26c: 15c2 slli a1,a1,0x30 + c002a26e: 91c1 srli a1,a1,0x30 + c002a270: 8522 mv a0,s0 + c002a272: 986db0ef jal ra,c00053f8 + c002a276: a211 j c002a37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22249 JS_FreeValue(ctx, s->token.u.str.str); - c002a0a8: 740c ld a1,40(s0) - c002a0aa: 7810 ld a2,48(s0) - c002a0ac: 8552 mv a0,s4 - c002a0ae: a8bdd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22243 + c002a278: 740c ld a1,40(s0) + c002a27a: 7810 ld a2,48(s0) + c002a27c: 8552 mv a0,s4 + c002a27e: 9a9dd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22251 if (js_parse_string(s, '`', TRUE, p, &cooked, &p)) - c002a0b2: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22242 + c002a282: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22250 s->token.u.str.str = JS_UNDEFINED; - c002a0b4: 478d li a5,3 - c002a0b6: f81c sd a5,48(s0) - c002a0b8: 02043423 sd zero,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22243 + c002a284: 478d li a5,3 + c002a286: f81c sd a5,48(s0) + c002a288: 02043423 sd zero,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22251 if (js_parse_string(s, '`', TRUE, p, &cooked, &p)) - c002a0bc: 003c addi a5,sp,8 - c002a0be: 0098 addi a4,sp,64 - c002a0c0: 4605 li a2,1 - c002a0c2: 06000593 li a1,96 - c002a0c6: 8522 mv a0,s0 - c002a0c8: ba8fc0ef jal ra,c0026470 - c002a0cc: ee051be3 bnez a0,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22246 + c002a28c: 003c addi a5,sp,8 + c002a28e: 0098 addi a4,sp,64 + c002a290: 4605 li a2,1 + c002a292: 06000593 li a1,96 + c002a296: 8522 mv a0,s0 + c002a298: ba8fc0ef jal ra,c0026640 + c002a29c: ee051be3 bnez a0,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22254 if (str->len != 0 || depth == 0) { - c002a0d0: 65c6 ld a1,80(sp) - c002a0d2: 41dc lw a5,4(a1) - c002a0d4: 00fc77b3 and a5,s8,a5 - c002a0d8: e391 bnez a5,c002a0dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22246 (discriminator 1) - c002a0da: e0a9 bnez s1,c002a11c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22247 + c002a2a0: 65c6 ld a1,80(sp) + c002a2a2: 41dc lw a5,4(a1) + c002a2a4: 00fc77b3 and a5,s8,a5 + c002a2a8: e391 bnez a5,c002a2ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22254 (discriminator 1) + c002a2aa: e0a9 bnez s1,c002a2ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22255 ret = emit_push_const(s, cooked.u.str.str, 1); - c002a0dc: 65c6 ld a1,80(sp) - c002a0de: 6666 ld a2,88(sp) - c002a0e0: 4685 li a3,1 - c002a0e2: 8522 mv a0,s0 - c002a0e4: 878ee0ef jal ra,c001815c - c002a0e8: 8d2a mv s10,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22248 + c002a2ac: 65c6 ld a1,80(sp) + c002a2ae: 6666 ld a2,88(sp) + c002a2b0: 4685 li a3,1 + c002a2b2: 8522 mv a0,s0 + c002a2b4: 878ee0ef jal ra,c001832c + c002a2b8: 8d2a mv s10,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22256 JS_FreeValue(s->ctx, cooked.u.str.str); - c002a0ea: 65c6 ld a1,80(sp) - c002a0ec: 6666 ld a2,88(sp) - c002a0ee: 6008 ld a0,0(s0) - c002a0f0: a49dd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22249 + c002a2ba: 65c6 ld a1,80(sp) + c002a2bc: 6666 ld a2,88(sp) + c002a2be: 6008 ld a0,0(s0) + c002a2c0: 967dd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22257 if (ret) - c002a0f4: ec0d17e3 bnez s10,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22251 + c002a2c4: ec0d17e3 bnez s10,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22259 if (depth == 0) { - c002a0f8: e085 bnez s1,c002a118 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22252 + c002a2c8: e085 bnez s1,c002a2e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22260 if (s->token.u.str.sep == '`') - c002a0fa: 5c18 lw a4,56(s0) - c002a0fc: 06000793 li a5,96 - c002a100: 0af70563 beq a4,a5,c002a1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22254 + c002a2ca: 5c18 lw a4,56(s0) + c002a2cc: 06000793 li a5,96 + c002a2d0: 0af70563 beq a4,a5,c002a37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22262 emit_op(s, OP_get_field2); - c002a104: 04200593 li a1,66 - c002a108: 8522 mv a0,s0 - c002a10a: b32db0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22255 + c002a2d4: 04200593 li a1,66 + c002a2d8: 8522 mv a0,s0 + c002a2da: a50db0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22263 emit_atom(s, JS_ATOM_concat); - c002a10e: 05d00593 li a1,93 - c002a112: 8522 mv a0,s0 - c002a114: bdadd0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22257 + c002a2de: 05d00593 li a1,93 + c002a2e2: 8522 mv a0,s0 + c002a2e4: af8dd0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22265 depth++; - c002a118: 2485 addiw s1,s1,1 - c002a11a: b79d j c002a080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22259 + c002a2e8: 2485 addiw s1,s1,1 + c002a2ea: b79d j c002a250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22267 JS_FreeValue(s->ctx, cooked.u.str.str); - c002a11c: 6666 ld a2,88(sp) - c002a11e: 6008 ld a0,0(s0) - c002a120: a19dd0ef jal ra,c0007b38 - c002a124: bfb1 j c002a080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22264 + c002a2ec: 6666 ld a2,88(sp) + c002a2ee: 6008 ld a0,0(s0) + c002a2f0: 937dd0ef jal ra,c0007c26 + c002a2f4: bfb1 j c002a250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22272 if (next_token(s)) - c002a126: 8522 mv a0,s0 - c002a128: a6ffc0ef jal ra,c0026b96 - c002a12c: e8051be3 bnez a0,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22266 + c002a2f6: 8522 mv a0,s0 + c002a2f8: a6ffc0ef jal ra,c0026d66 + c002a2fc: e8051be3 bnez a0,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22274 if (js_parse_expr(s)) - c002a130: 8522 mv a0,s0 - c002a132: 238030ef jal ra,c002d36a - c002a136: e80516e3 bnez a0,c0029fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22269 + c002a300: 8522 mv a0,s0 + c002a302: 238030ef jal ra,c002d53a + c002a306: e80516e3 bnez a0,c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22277 if (s->token.val != '}') { - c002a13a: 4c18 lw a4,24(s0) - c002a13c: 07d00793 li a5,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22268 + c002a30a: 4c18 lw a4,24(s0) + c002a30c: 07d00793 li a5,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22276 depth++; - c002a140: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22269 + c002a310: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22277 if (s->token.val != '}') { - c002a142: 02f70863 beq a4,a5,c002a172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22270 + c002a312: 02f70863 beq a4,a5,c002a342 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22278 return js_parse_error(s, "expected '}' after template expression"); - c002a146: 00035597 auipc a1,0x35 - c002a14a: 6ea58593 addi a1,a1,1770 # c005f830 - c002a14e: 8522 mv a0,s0 - c002a150: 968fc0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22295 -} - c002a154: 60ee ld ra,216(sp) - c002a156: 644e ld s0,208(sp) - c002a158: 64ae ld s1,200(sp) - c002a15a: 690e ld s2,192(sp) - c002a15c: 79ea ld s3,184(sp) - c002a15e: 7a4a ld s4,176(sp) - c002a160: 7aaa ld s5,168(sp) - c002a162: 7b0a ld s6,160(sp) - c002a164: 6bea ld s7,152(sp) - c002a166: 6c4a ld s8,144(sp) - c002a168: 6caa ld s9,136(sp) - c002a16a: 6d0a ld s10,128(sp) - c002a16c: 7de6 ld s11,120(sp) - c002a16e: 612d addi sp,sp,224 - c002a170: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22273 + c002a316: 00035597 auipc a1,0x35 + c002a31a: 77a58593 addi a1,a1,1914 # c005fa90 + c002a31e: 8522 mv a0,s0 + c002a320: 968fc0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22303 +} + c002a324: 60ee ld ra,216(sp) + c002a326: 644e ld s0,208(sp) + c002a328: 64ae ld s1,200(sp) + c002a32a: 690e ld s2,192(sp) + c002a32c: 79ea ld s3,184(sp) + c002a32e: 7a4a ld s4,176(sp) + c002a330: 7aaa ld s5,168(sp) + c002a332: 7b0a ld s6,160(sp) + c002a334: 6bea ld s7,152(sp) + c002a336: 6c4a ld s8,144(sp) + c002a338: 6caa ld s9,136(sp) + c002a33a: 6d0a ld s10,128(sp) + c002a33c: 7de6 ld s11,120(sp) + c002a33e: 612d addi sp,sp,224 + c002a340: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22281 free_token(s, &s->token); - c002a172: 85e6 mv a1,s9 - c002a174: 8522 mv a0,s0 - c002a176: d65de0ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22277 + c002a342: 85e6 mv a1,s9 + c002a344: 8522 mv a0,s0 + c002a346: c83de0ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22285 s->last_line_num = s->token.line_num; - c002a17a: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22278 + c002a34a: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22286 if (js_parse_template_part(s, s->buf_ptr)) - c002a17c: 6c2c ld a1,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22276 + c002a34c: 6c2c ld a1,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22284 s->got_lf = FALSE; - c002a17e: 04042423 sw zero,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22277 + c002a34e: 04042423 sw zero,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22285 s->last_line_num = s->token.line_num; - c002a182: c41c sw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22278 - if (js_parse_template_part(s, s->buf_ptr)) - c002a184: 8522 mv a0,s0 - c002a186: 8e7fc0ef jal ra,c0026a6c - c002a18a: e00508e3 beqz a0,c0029f9a - c002a18e: bd15 j c0029fc2 + c002a352: c41c sw a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22286 + if (js_parse_template_part(s, s->buf_ptr)) + c002a354: 8522 mv a0,s0 + c002a356: 8e7fc0ef jal ra,c0026c3c + c002a35a: e00508e3 beqz a0,c002a16a + c002a35e: bd15 j c002a192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22294 seal_template_obj(ctx, raw_array); - c002a190: 65c2 ld a1,16(sp) - c002a192: 864e mv a2,s3 - c002a194: 8552 mv a0,s4 - c002a196: 892eb0ef jal ra,c0015228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22287 + c002a360: 65c2 ld a1,16(sp) + c002a362: 864e mv a2,s3 + c002a364: 8552 mv a0,s4 + c002a366: 892eb0ef jal ra,c00153f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22295 seal_template_obj(ctx, template_object); - c002a19a: 7582 ld a1,32(sp) - c002a19c: 864a mv a2,s2 - c002a19e: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22288 + c002a36a: 7582 ld a1,32(sp) + c002a36c: 864a mv a2,s2 + c002a36e: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22296 *argc = depth + 1; - c002a1a0: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22287 + c002a370: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22295 seal_template_obj(ctx, template_object); - c002a1a2: 886eb0ef jal ra,c0015228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22288 + c002a372: 886eb0ef jal ra,c00153f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22296 *argc = depth + 1; - c002a1a6: 009ba023 sw s1,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22294 + c002a376: 009ba023 sw s1,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22302 return next_token(s); - c002a1aa: 8522 mv a0,s0 - c002a1ac: 9ebfc0ef jal ra,c0026b96 - c002a1b0: b755 j c002a154 + c002a37a: 8522 mv a0,s0 + c002a37c: 9ebfc0ef jal ra,c0026d66 + c002a380: b755 j c002a324 -00000000c002a1b2 : +00000000c002a382 : js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24399 -{ - c002a1b2: 7135 addi sp,sp,-160 - c002a1b4: e922 sd s0,144(sp) - c002a1b6: f8d2 sd s4,112(sp) - c002a1b8: ed06 sd ra,152(sp) - c002a1ba: e526 sd s1,136(sp) - c002a1bc: e14a sd s2,128(sp) - c002a1be: fcce sd s3,120(sp) - c002a1c0: f4d6 sd s5,104(sp) - c002a1c2: f0da sd s6,96(sp) - c002a1c4: ecde sd s7,88(sp) - c002a1c6: e8e2 sd s8,80(sp) - c002a1c8: e4e6 sd s9,72(sp) - c002a1ca: e0ea sd s10,64(sp) - c002a1cc: fc6e sd s11,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24407 +{ + c002a382: 7135 addi sp,sp,-160 + c002a384: e922 sd s0,144(sp) + c002a386: f8d2 sd s4,112(sp) + c002a388: ed06 sd ra,152(sp) + c002a38a: e526 sd s1,136(sp) + c002a38c: e14a sd s2,128(sp) + c002a38e: fcce sd s3,120(sp) + c002a390: f4d6 sd s5,104(sp) + c002a392: f0da sd s6,96(sp) + c002a394: ecde sd s7,88(sp) + c002a396: e8e2 sd s8,80(sp) + c002a398: e4e6 sd s9,72(sp) + c002a39a: e0ea sd s10,64(sp) + c002a39c: fc6e sd s11,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 switch(s->token.val) { - c002a1ce: 4d1c lw a5,24(a0) - c002a1d0: fb700713 li a4,-73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24399 + c002a39e: 4d1c lw a5,24(a0) + c002a3a0: fb700713 li a4,-73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24407 { - c002a1d4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24402 + c002a3a4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24410 BOOL accept_lparen = (parse_flags & PF_POSTFIX_CALL) != 0; - c002a1d6: 00b03a33 snez s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24405 + c002a3a6: 00b03a33 snez s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 switch(s->token.val) { - c002a1da: 08e7d463 bge a5,a4,c002a262 - c002a1de: fab00713 li a4,-85 - c002a1e2: 04e7d163 bge a5,a4,c002a224 - c002a1e6: 0807879b addiw a5,a5,128 - c002a1ea: 0007869b sext.w a3,a5 - c002a1ee: 4719 li a4,6 - c002a1f0: 04d77d63 bgeu a4,a3,c002a24a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24673 + c002a3aa: 08e7d463 bge a5,a4,c002a432 + c002a3ae: fab00713 li a4,-85 + c002a3b2: 04e7d163 bge a5,a4,c002a3f4 + c002a3b6: 0807879b addiw a5,a5,128 + c002a3ba: 0007869b sext.w a3,a5 + c002a3be: 4719 li a4,6 + c002a3c0: 04d77d63 bgeu a4,a3,c002a41a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24681 (int)(s->buf_ptr - s->token.ptr), s->token.ptr); - c002a1f4: 6c30 ld a2,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24672 + c002a3c4: 6c30 ld a2,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24680 return js_parse_error(s, "unexpected token in expression: '%.*s'", - c002a1f6: 7014 ld a3,32(s0) - c002a1f8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25064 -} - c002a1fa: 644a ld s0,144(sp) - c002a1fc: 60ea ld ra,152(sp) - c002a1fe: 64aa ld s1,136(sp) - c002a200: 690a ld s2,128(sp) - c002a202: 79e6 ld s3,120(sp) - c002a204: 7a46 ld s4,112(sp) - c002a206: 7aa6 ld s5,104(sp) - c002a208: 7b06 ld s6,96(sp) - c002a20a: 6be6 ld s7,88(sp) - c002a20c: 6c46 ld s8,80(sp) - c002a20e: 6ca6 ld s9,72(sp) - c002a210: 6d06 ld s10,64(sp) - c002a212: 7de2 ld s11,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24672 + c002a3c6: 7014 ld a3,32(s0) + c002a3c8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 +} + c002a3ca: 644a ld s0,144(sp) + c002a3cc: 60ea ld ra,152(sp) + c002a3ce: 64aa ld s1,136(sp) + c002a3d0: 690a ld s2,128(sp) + c002a3d2: 79e6 ld s3,120(sp) + c002a3d4: 7a46 ld s4,112(sp) + c002a3d6: 7aa6 ld s5,104(sp) + c002a3d8: 7b06 ld s6,96(sp) + c002a3da: 6be6 ld s7,88(sp) + c002a3dc: 6c46 ld s8,80(sp) + c002a3de: 6ca6 ld s9,72(sp) + c002a3e0: 6d06 ld s10,64(sp) + c002a3e2: 7de2 ld s11,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24680 return js_parse_error(s, "unexpected token in expression: '%.*s'", - c002a214: 9e15 subw a2,a2,a3 - c002a216: 00035597 auipc a1,0x35 - c002a21a: 7ea58593 addi a1,a1,2026 # c005fa00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25064 + c002a3e4: 9e15 subw a2,a2,a3 + c002a3e6: 00036597 auipc a1,0x36 + c002a3ea: 87a58593 addi a1,a1,-1926 # c005fc60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 } - c002a21e: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24672 + c002a3ee: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24680 return js_parse_error(s, "unexpected token in expression: '%.*s'", - c002a220: 898fc06f j c00262b8 - c002a224: 0557879b addiw a5,a5,85 - c002a228: 0007869b sext.w a3,a5 - c002a22c: 472d li a4,11 - c002a22e: fcd763e3 bltu a4,a3,c002a1f4 - c002a232: 02079713 slli a4,a5,0x20 - c002a236: 01e75793 srli a5,a4,0x1e - c002a23a: 00036717 auipc a4,0x36 - c002a23e: 88670713 addi a4,a4,-1914 # c005fac0 - c002a242: 97ba add a5,a5,a4 - c002a244: 439c lw a5,0(a5) - c002a246: 97ba add a5,a5,a4 - c002a248: 8782 jr a5 - c002a24a: 02079713 slli a4,a5,0x20 - c002a24e: 01e75793 srli a5,a4,0x1e - c002a252: 00036717 auipc a4,0x36 - c002a256: 89e70713 addi a4,a4,-1890 # c005faf0 - c002a25a: 97ba add a5,a5,a4 - c002a25c: 439c lw a5,0(a5) - c002a25e: 97ba add a5,a5,a4 - c002a260: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24405 + c002a3f0: 898fc06f j c0026488 + c002a3f4: 0557879b addiw a5,a5,85 + c002a3f8: 0007869b sext.w a3,a5 + c002a3fc: 472d li a4,11 + c002a3fe: fcd763e3 bltu a4,a3,c002a3c4 + c002a402: 02079713 slli a4,a5,0x20 + c002a406: 01e75793 srli a5,a4,0x1e + c002a40a: 00036717 auipc a4,0x36 + c002a40e: 91670713 addi a4,a4,-1770 # c005fd20 + c002a412: 97ba add a5,a5,a4 + c002a414: 439c lw a5,0(a5) + c002a416: 97ba add a5,a5,a4 + c002a418: 8782 jr a5 + c002a41a: 02079713 slli a4,a5,0x20 + c002a41e: 01e75793 srli a5,a4,0x1e + c002a422: 00036717 auipc a4,0x36 + c002a426: 92e70713 addi a4,a4,-1746 # c005fd50 + c002a42a: 97ba add a5,a5,a4 + c002a42c: 439c lw a5,0(a5) + c002a42e: 97ba add a5,a5,a4 + c002a430: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 switch(s->token.val) { - c002a262: fce00713 li a4,-50 - c002a266: 6ee78563 beq a5,a4,c002a950 - c002a26a: fcf00713 li a4,-49 - c002a26e: 02e7d663 bge a5,a4,c002a29a - c002a272: fc800713 li a4,-56 - c002a276: 1ce78a63 beq a5,a4,c002a44a - c002a27a: fcd00713 li a4,-51 - c002a27e: 74e78e63 beq a5,a4,c002a9da - c002a282: fc500713 li a4,-59 - c002a286: f6e797e3 bne a5,a4,c002a1f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24504 + c002a432: fce00713 li a4,-50 + c002a436: 6ee78563 beq a5,a4,c002ab20 + c002a43a: fcf00713 li a4,-49 + c002a43e: 02e7d663 bge a5,a4,c002a46a + c002a442: fc800713 li a4,-56 + c002a446: 1ce78a63 beq a5,a4,c002a61a + c002a44a: fcd00713 li a4,-51 + c002a44e: 74e78e63 beq a5,a4,c002abaa + c002a452: fc500713 li a4,-59 + c002a456: f6e797e3 bne a5,a4,c002a3c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24512 if (js_parse_function_decl(s, JS_PARSE_FUNC_EXPR, - c002a28a: 4d5c lw a5,28(a0) - c002a28c: 7118 ld a4,32(a0) - c002a28e: 4681 li a3,0 - c002a290: 4601 li a2,0 - c002a292: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24551 + c002a45a: 4d5c lw a5,28(a0) + c002a45c: 7118 ld a4,32(a0) + c002a45e: 4681 li a3,0 + c002a460: 4601 li a2,0 + c002a462: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24559 if (js_parse_function_decl(s, JS_PARSE_FUNC_EXPR, - c002a294: 149020ef jal ra,c002cbdc - c002a298: a209 j c002a39a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24405 + c002a464: 149020ef jal ra,c002cdac + c002a468: a209 j c002a56a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 switch(s->token.val) { - c002a29a: 02f00713 li a4,47 - c002a29e: 18e78163 beq a5,a4,c002a420 - c002a2a2: 00f74963 blt a4,a5,c002a2b4 - c002a2a6: 02800713 li a4,40 - c002a2aa: f4e795e3 bne a5,a4,c002a1f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24500 + c002a46a: 02f00713 li a4,47 + c002a46e: 18e78163 beq a5,a4,c002a5f0 + c002a472: 00f74963 blt a4,a5,c002a484 + c002a476: 02800713 li a4,40 + c002a47a: f4e795e3 bne a5,a4,c002a3c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24508 if (js_parse_expr_paren(s)) - c002a2ae: 2f0030ef jal ra,c002d59e - c002a2b2: a0e5 j c002a39a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24405 + c002a47e: 2f0030ef jal ra,c002d76e + c002a482: a0e5 j c002a56a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 switch(s->token.val) { - c002a2b4: fdf7f793 andi a5,a5,-33 - c002a2b8: 05b00713 li a4,91 - c002a2bc: f2e79ce3 bne a5,a4,c002a1f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24581 + c002a484: fdf7f793 andi a5,a5,-33 + c002a488: 05b00713 li a4,91 + c002a48c: f2e79ce3 bne a5,a4,c002a3c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24589 if (js_parse_skip_parens_token(s, &skip_bits, FALSE) == '=') { - c002a2c0: 4601 li a2,0 - c002a2c2: 086c addi a1,sp,28 - c002a2c4: bdafd0ef jal ra,c002769e - c002a2c8: 03d00793 li a5,61 - c002a2cc: 28f51863 bne a0,a5,c002a55c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24582 + c002a490: 4601 li a2,0 + c002a492: 086c addi a1,sp,28 + c002a494: bdafd0ef jal ra,c002786e + c002a498: 03d00793 li a5,61 + c002a49c: 28f51863 bne a0,a5,c002a72c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24590 if (js_parse_destructuring_element(s, 0, 0, FALSE, skip_bits & SKIP_HAS_ELLIPSIS, TRUE) < 0) - c002a2d0: 4772 lw a4,28(sp) - c002a2d2: 4785 li a5,1 - c002a2d4: 4681 li a3,0 - c002a2d6: 8b09 andi a4,a4,2 - c002a2d8: 4601 li a2,0 - c002a2da: 4581 li a1,0 - c002a2dc: 8522 mv a0,s0 - c002a2de: 636010ef jal ra,c002b914 - c002a2e2: 18055163 bgez a0,c002a464 - c002a2e6: a069 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24409 + c002a4a0: 4772 lw a4,28(sp) + c002a4a2: 4785 li a5,1 + c002a4a4: 4681 li a3,0 + c002a4a6: 8b09 andi a4,a4,2 + c002a4a8: 4601 li a2,0 + c002a4aa: 4581 li a1,0 + c002a4ac: 8522 mv a0,s0 + c002a4ae: 636010ef jal ra,c002bae4 + c002a4b2: 18055163 bgez a0,c002a634 + c002a4b6: a069 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24417 val = s->token.u.num.val; - c002a2e8: 7910 ld a2,48(a0) - c002a2ea: 750c ld a1,40(a0) - c002a2ec: f432 sd a2,40(sp) - c002a2ee: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24411 + c002a4b8: 7910 ld a2,48(a0) + c002a4ba: 750c ld a1,40(a0) + c002a4bc: f432 sd a2,40(sp) + c002a4be: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24419 if (JS_VALUE_GET_TAG(val) == JS_TAG_INT) { - c002a2f0: 0006079b sext.w a5,a2 - c002a2f4: ebad bnez a5,c002a366 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24409 + c002a4c0: 0006079b sext.w a5,a2 + c002a4c4: ebad bnez a5,c002a536 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24417 val = s->token.u.num.val; - c002a2f6: 5504 lw s1,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24412 + c002a4c6: 5504 lw s1,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24420 emit_op(s, OP_push_i32); - c002a2f8: 4585 li a1,1 - c002a2fa: 942db0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24413 + c002a4c8: 4585 li a1,1 + c002a4ca: 860db0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24421 emit_u32(s, JS_VALUE_GET_INT(val)); - c002a2fe: 85a6 mv a1,s1 - c002a300: 8522 mv a0,s0 - c002a302: ad0db0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24446 + c002a4ce: 85a6 mv a1,s1 + c002a4d0: 8522 mv a0,s0 + c002a4d2: 9eedb0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24454 if (next_token(s)) - c002a306: 8522 mv a0,s0 - c002a308: 88ffc0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24404 + c002a4d6: 8522 mv a0,s0 + c002a4d8: 88ffc0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24412 call_type = FUNC_CALL_NORMAL; - c002a30c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24446 + c002a4dc: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24454 if (next_token(s)) - c002a30e: e12d bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24676 + c002a4de: e12d bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24684 optional_chaining_label = -1; - c002a310: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24830 + c002a4e0: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24838 if (arg_count >= 65535) { - c002a312: 6b41 lui s6,0x10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24676 + c002a4e2: 6b41 lui s6,0x10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24684 optional_chaining_label = -1; - c002a314: ce3e sw a5,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24830 + c002a4e4: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24838 if (arg_count >= 65535) { - c002a316: 1b79 addi s6,s6,-2 + c002a4e6: 1b79 addi s6,s6,-2 has_with_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23588 if (vd->var_name == JS_ATOM__with_) - c002a318: 05500b93 li s7,85 + c002a4e8: 05500b93 li s7,85 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24681 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24689 if (s->token.val == TOK_QUESTION_MARK_DOT) { - c002a31c: 4c1c lw a5,24(s0) - c002a31e: fa700713 li a4,-89 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24678 + c002a4ec: 4c1c lw a5,24(s0) + c002a4ee: fa700713 li a4,-89 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24686 JSFunctionDef *fd = s->cur_func; - c002a322: 06843983 ld s3,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24681 + c002a4f2: 06843983 ld s3,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24689 if (s->token.val == TOK_QUESTION_MARK_DOT) { - c002a326: 76e79063 bne a5,a4,c002aa86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24683 + c002a4f6: 76e79063 bne a5,a4,c002ac56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24691 if (next_token(s)) - c002a32a: 8522 mv a0,s0 - c002a32c: 86bfc0ef jal ra,c0026b96 - c002a330: e121 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24686 + c002a4fa: 8522 mv a0,s0 + c002a4fc: 86bfc0ef jal ra,c0026d66 + c002a500: e121 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24694 if (s->token.val == '(' && accept_lparen) { - c002a332: 4c1c lw a5,24(s0) - c002a334: 02800713 li a4,40 - c002a338: 74e79163 bne a5,a4,c002aa7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24686 (discriminator 1) - c002a33c: 000a14e3 bnez s4,c002ab44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24685 + c002a502: 4c1c lw a5,24(s0) + c002a504: 02800713 li a4,40 + c002a508: 74e79163 bne a5,a4,c002ac4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24694 (discriminator 1) + c002a50c: 000a14e3 bnez s4,c002ad14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24693 has_optional_chain = TRUE; - c002a340: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24989 + c002a510: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24997 if (s->token.val == TOK_PRIVATE_NAME) { - c002a342: 4c08 lw a0,24(s0) - c002a344: fa900793 li a5,-87 - c002a348: 44f51ee3 bne a0,a5,c002afa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24991 + c002a512: 4c08 lw a0,24(s0) + c002a514: fa900793 li a5,-87 + c002a518: 44f51ee3 bne a0,a5,c002b174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24999 if (get_prev_opcode(fd) == OP_get_super) { - c002a34c: 854e mv a0,s3 - c002a34e: 8c0da0ef jal ra,c000440e - c002a352: 03400793 li a5,52 - c002a356: 40f51be3 bne a0,a5,c002af6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24992 + c002a51c: 854e mv a0,s3 + c002a51e: ef1d90ef jal ra,c000440e + c002a522: 03400793 li a5,52 + c002a526: 40f51be3 bne a0,a5,c002b13c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25000 return js_parse_error(s, "private class field forbidden after super"); - c002a35a: 00035597 auipc a1,0x35 - c002a35e: 71e58593 addi a1,a1,1822 # c005fa78 - c002a362: 73e0006f j c002aaa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24442 + c002a52a: 00035597 auipc a1,0x35 + c002a52e: 7ae58593 addi a1,a1,1966 # c005fcd8 + c002a532: 73e0006f j c002ac70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24450 if (emit_push_const(s, val, 0) < 0) - c002a366: 4681 li a3,0 - c002a368: df5ed0ef jal ra,c001815c - c002a36c: f8055de3 bgez a0,c002a306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24485 + c002a536: 4681 li a3,0 + c002a538: df5ed0ef jal ra,c001832c + c002a53c: f8055de3 bgez a0,c002a4d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24493 return -1; - c002a370: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25064 -} - c002a372: 60ea ld ra,152(sp) - c002a374: 644a ld s0,144(sp) - c002a376: 690a ld s2,128(sp) - c002a378: 79e6 ld s3,120(sp) - c002a37a: 7a46 ld s4,112(sp) - c002a37c: 7aa6 ld s5,104(sp) - c002a37e: 7b06 ld s6,96(sp) - c002a380: 6be6 ld s7,88(sp) - c002a382: 6c46 ld s8,80(sp) - c002a384: 6ca6 ld s9,72(sp) - c002a386: 6d06 ld s10,64(sp) - c002a388: 7de2 ld s11,56(sp) - c002a38a: 8526 mv a0,s1 - c002a38c: 64aa ld s1,136(sp) - c002a38e: 610d addi sp,sp,160 - c002a390: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24450 + c002a540: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 +} + c002a542: 60ea ld ra,152(sp) + c002a544: 644a ld s0,144(sp) + c002a546: 690a ld s2,128(sp) + c002a548: 79e6 ld s3,120(sp) + c002a54a: 7a46 ld s4,112(sp) + c002a54c: 7aa6 ld s5,104(sp) + c002a54e: 7b06 ld s6,96(sp) + c002a550: 6be6 ld s7,88(sp) + c002a552: 6c46 ld s8,80(sp) + c002a554: 6ca6 ld s9,72(sp) + c002a556: 6d06 ld s10,64(sp) + c002a558: 7de2 ld s11,56(sp) + c002a55a: 8526 mv a0,s1 + c002a55c: 64aa ld s1,136(sp) + c002a55e: 610d addi sp,sp,160 + c002a560: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24458 if (js_parse_template(s, 0, NULL)) - c002a392: 4601 li a2,0 - c002a394: 4581 li a1,0 - c002a396: bbbff0ef jal ra,c0029f50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24589 + c002a562: 4601 li a2,0 + c002a564: 4581 li a1,0 + c002a566: bbbff0ef jal ra,c002a120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24597 if (js_parse_array_literal(s)) - c002a39a: c569 beqz a0,c002a464 - c002a39c: bfd1 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24454 + c002a56a: c569 beqz a0,c002a634 + c002a56c: bfd1 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24462 if (emit_push_const(s, s->token.u.str.str, 1)) - c002a39e: 750c ld a1,40(a0) - c002a3a0: 7910 ld a2,48(a0) - c002a3a2: 4685 li a3,1 - c002a3a4: db9ed0ef jal ra,c001815c - c002a3a8: f561 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24495 + c002a56e: 750c ld a1,40(a0) + c002a570: 7910 ld a2,48(a0) + c002a572: 4685 li a3,1 + c002a574: db9ed0ef jal ra,c001832c + c002a578: f561 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24503 if (next_token(s)) - c002a3aa: 8522 mv a0,s0 - c002a3ac: feafc0ef jal ra,c0026b96 - c002a3b0: b7ed j c002a39a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24461 + c002a57a: 8522 mv a0,s0 + c002a57c: feafc0ef jal ra,c0026d66 + c002a580: b7ed j c002a56a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24469 s->buf_ptr -= 2; - c002a3b2: 6d3c ld a5,88(a0) - c002a3b4: 17f9 addi a5,a5,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24464 + c002a582: 6d3c ld a5,88(a0) + c002a584: 17f9 addi a5,a5,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24472 s->buf_ptr--; - c002a3b6: ec3c sd a5,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24469 + c002a586: ec3c sd a5,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24477 if (!s->ctx->compile_regexp) - c002a3b8: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24470 + c002a588: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24478 return js_parse_error(s, "RegExp are not supported"); - c002a3ba: 00035597 auipc a1,0x35 - c002a3be: 49e58593 addi a1,a1,1182 # c005f858 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24469 + c002a58a: 00035597 auipc a1,0x35 + c002a58e: 52e58593 addi a1,a1,1326 # c005fab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24477 if (!s->ctx->compile_regexp) - c002a3c2: 1b07b783 ld a5,432(a5) - c002a3c6: 50078663 beqz a5,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24472 + c002a592: 1b07b783 ld a5,432(a5) + c002a596: 50078663 beqz a5,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24480 if (js_parse_regexp(s)) - c002a3ca: 8522 mv a0,s0 - c002a3cc: 930fd0ef jal ra,c00274fc - c002a3d0: e02a sd a0,0(sp) - c002a3d2: fd59 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24474 + c002a59a: 8522 mv a0,s0 + c002a59c: 930fd0ef jal ra,c00276cc + c002a5a0: e02a sd a0,0(sp) + c002a5a2: fd59 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24482 ret = emit_push_const(s, s->token.u.regexp.body, 0); - c002a3d4: 740c ld a1,40(s0) - c002a3d6: 7810 ld a2,48(s0) - c002a3d8: 4681 li a3,0 - c002a3da: 8522 mv a0,s0 - c002a3dc: d81ed0ef jal ra,c001815c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24475 + c002a5a4: 740c ld a1,40(s0) + c002a5a6: 7810 ld a2,48(s0) + c002a5a8: 4681 li a3,0 + c002a5aa: 8522 mv a0,s0 + c002a5ac: d81ed0ef jal ra,c001832c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24483 str = s->ctx->compile_regexp(s->ctx, s->token.u.regexp.body, - c002a3e0: 6008 ld a0,0(s0) - c002a3e2: 7c14 ld a3,56(s0) - c002a3e4: 6038 ld a4,64(s0) - c002a3e6: 7810 ld a2,48(s0) - c002a3e8: 1b053803 ld a6,432(a0) - c002a3ec: 740c ld a1,40(s0) - c002a3ee: 9802 jalr a6 - c002a3f0: f02a sd a0,32(sp) - c002a3f2: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24477 + c002a5b0: 6008 ld a0,0(s0) + c002a5b2: 7c14 ld a3,56(s0) + c002a5b4: 6038 ld a4,64(s0) + c002a5b6: 7810 ld a2,48(s0) + c002a5b8: 1b053803 ld a6,432(a0) + c002a5bc: 740c ld a1,40(s0) + c002a5be: 9802 jalr a6 + c002a5c0: f02a sd a0,32(sp) + c002a5c2: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24485 if (JS_IsException(str)) { - c002a3f4: 0005869b sext.w a3,a1 - c002a3f8: 4719 li a4,6 - c002a3fa: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24475 + c002a5c4: 0005869b sext.w a3,a1 + c002a5c8: 4719 li a4,6 + c002a5ca: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24483 str = s->ctx->compile_regexp(s->ctx, s->token.u.regexp.body, - c002a3fc: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24477 + c002a5cc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24485 if (JS_IsException(str)) { - c002a3fe: 02e69463 bne a3,a4,c002a426 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24480 + c002a5ce: 02e69463 bne a3,a4,c002a5f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24488 if (s->cur_func && s->cur_func->backtrace_barrier) - c002a402: 7438 ld a4,104(s0) - c002a404: c709 beqz a4,c002a40e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24480 (discriminator 1) - c002a406: 08072783 lw a5,128(a4) - c002a40a: c391 beqz a5,c002a40e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24481 + c002a5d2: 7438 ld a4,104(s0) + c002a5d4: c709 beqz a4,c002a5de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24488 (discriminator 1) + c002a5d6: 08072783 lw a5,128(a4) + c002a5da: c391 beqz a5,c002a5de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24489 backtrace_flags = JS_BACKTRACE_FLAG_SINGLE_LEVEL; - c002a40c: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24482 + c002a5dc: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24490 build_backtrace(s->ctx, s->ctx->rt->current_exception, - c002a40e: 6008 ld a0,0(s0) - c002a410: 4c58 lw a4,28(s0) - c002a412: 6814 ld a3,16(s0) - c002a414: 6d10 ld a2,24(a0) - c002a416: 726c ld a1,224(a2) - c002a418: 7670 ld a2,232(a2) - c002a41a: e35f40ef jal ra,c001f24e - c002a41e: bf89 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24464 + c002a5de: 6008 ld a0,0(s0) + c002a5e0: 4c58 lw a4,28(s0) + c002a5e2: 6814 ld a3,16(s0) + c002a5e4: 6d10 ld a2,24(a0) + c002a5e6: 726c ld a1,224(a2) + c002a5e8: 7670 ld a2,232(a2) + c002a5ea: e35f40ef jal ra,c001f41e + c002a5ee: bf89 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24472 s->buf_ptr--; - c002a420: 6d3c ld a5,88(a0) - c002a422: 17fd addi a5,a5,-1 - c002a424: bf49 j c002a3b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24487 + c002a5f0: 6d3c ld a5,88(a0) + c002a5f2: 17fd addi a5,a5,-1 + c002a5f4: bf49 j c002a586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24495 ret = emit_push_const(s, str, 0); - c002a426: 85aa mv a1,a0 - c002a428: 4681 li a3,0 - c002a42a: 8522 mv a0,s0 - c002a42c: d31ed0ef jal ra,c001815c - c002a430: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24488 + c002a5f6: 85aa mv a1,a0 + c002a5f8: 4681 li a3,0 + c002a5fa: 8522 mv a0,s0 + c002a5fc: d31ed0ef jal ra,c001832c + c002a600: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24496 JS_FreeValue(s->ctx, str); - c002a432: 7582 ld a1,32(sp) - c002a434: 7622 ld a2,40(sp) - c002a436: 6008 ld a0,0(s0) - c002a438: f00dd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24489 + c002a602: 7582 ld a1,32(sp) + c002a604: 7622 ld a2,40(sp) + c002a606: 6008 ld a0,0(s0) + c002a608: e1edd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24497 if (ret) - c002a43c: f895 bnez s1,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24494 + c002a60c: f895 bnez s1,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24502 emit_op(s, OP_regexp); - c002a43e: 03300593 li a1,51 - c002a442: 8522 mv a0,s0 - c002a444: ff9da0ef jal ra,c000543c - c002a448: b78d j c002a3aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24510 + c002a60e: 03300593 li a1,51 + c002a612: 8522 mv a0,s0 + c002a614: f17da0ef jal ra,c000552a + c002a618: b78d j c002a57a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24518 if (js_parse_class(s, TRUE, JS_PARSE_EXPORT_NONE)) - c002a44a: 4601 li a2,0 - c002a44c: 4585 li a1,1 - c002a44e: 3c0030ef jal ra,c002d80e - c002a452: b7a1 j c002a39a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24514 + c002a61a: 4601 li a2,0 + c002a61c: 4585 li a1,1 + c002a61e: 3c0030ef jal ra,c002d9de + c002a622: b7a1 j c002a56a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24522 if (next_token(s)) - c002a454: f42fc0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24516 + c002a624: f42fc0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24524 emit_op(s, OP_null); - c002a458: 459d li a1,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24514 + c002a628: 459d li a1,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24522 if (next_token(s)) - c002a45a: f0051be3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24533 + c002a62a: f0051be3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24541 emit_op(s, OP_push_true); - c002a45e: 8522 mv a0,s0 - c002a460: fddda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24404 + c002a62e: 8522 mv a0,s0 + c002a630: efbda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24412 call_type = FUNC_CALL_NORMAL; - c002a464: 4901 li s2,0 - c002a466: b56d j c002a310 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24519 + c002a634: 4901 li s2,0 + c002a636: b56d j c002a4e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24527 if (next_token(s)) - c002a468: f2efc0ef jal ra,c0026b96 - c002a46c: f00512e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24521 + c002a638: f2efc0ef jal ra,c0026d66 + c002a63c: f00512e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24529 emit_op(s, OP_scope_get_var); - c002a470: 0b800593 li a1,184 - c002a474: 8522 mv a0,s0 - c002a476: fc7da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24522 + c002a640: 0b800593 li a1,184 + c002a644: 8522 mv a0,s0 + c002a646: ee5da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24530 emit_atom(s, JS_ATOM_this); - c002a47a: 45a1 li a1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24608 + c002a64a: 45a1 li a1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24616 emit_atom(s, JS_ATOM_new_target); - c002a47c: 8522 mv a0,s0 - c002a47e: 870dd0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24609 + c002a64c: 8522 mv a0,s0 + c002a64e: f8fdc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24617 emit_u16(s, 0); - c002a482: 4581 li a1,0 - c002a484: a8c1 j c002a554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24526 + c002a652: 4581 li a1,0 + c002a654: a8c1 j c002a724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24534 if (next_token(s)) - c002a486: f10fc0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24528 + c002a656: f10fc0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24536 emit_op(s, OP_push_false); - c002a48a: 45a5 li a1,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24526 + c002a65a: 45a5 li a1,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24534 if (next_token(s)) - c002a48c: d969 beqz a0,c002a45e - c002a48e: b5cd j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24531 + c002a65c: d969 beqz a0,c002a62e + c002a65e: b5cd j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24539 if (next_token(s)) - c002a490: f06fc0ef jal ra,c0026b96 - c002a494: ec051ee3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24533 + c002a660: f06fc0ef jal ra,c0026d66 + c002a664: ec051ee3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24541 emit_op(s, OP_push_true); - c002a498: 45a9 li a1,10 - c002a49a: b7d1 j c002a45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24538 + c002a668: 45a9 li a1,10 + c002a66a: b7d1 j c002a62e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24546 if (s->token.u.ident.is_reserved) { - c002a49c: 591c lw a5,48(a0) - c002a49e: c38d beqz a5,c002a4c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25064 -} - c002a4a0: 644a ld s0,144(sp) - c002a4a2: 60ea ld ra,152(sp) - c002a4a4: 64aa ld s1,136(sp) - c002a4a6: 690a ld s2,128(sp) - c002a4a8: 79e6 ld s3,120(sp) - c002a4aa: 7a46 ld s4,112(sp) - c002a4ac: 7aa6 ld s5,104(sp) - c002a4ae: 7b06 ld s6,96(sp) - c002a4b0: 6be6 ld s7,88(sp) - c002a4b2: 6c46 ld s8,80(sp) - c002a4b4: 6ca6 ld s9,72(sp) - c002a4b6: 6d06 ld s10,64(sp) - c002a4b8: 7de2 ld s11,56(sp) - c002a4ba: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24539 + c002a66c: 591c lw a5,48(a0) + c002a66e: c38d beqz a5,c002a690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 +} + c002a670: 644a ld s0,144(sp) + c002a672: 60ea ld ra,152(sp) + c002a674: 64aa ld s1,136(sp) + c002a676: 690a ld s2,128(sp) + c002a678: 79e6 ld s3,120(sp) + c002a67a: 7a46 ld s4,112(sp) + c002a67c: 7aa6 ld s5,104(sp) + c002a67e: 7b06 ld s6,96(sp) + c002a680: 6be6 ld s7,88(sp) + c002a682: 6c46 ld s8,80(sp) + c002a684: 6ca6 ld s9,72(sp) + c002a686: 6d06 ld s10,64(sp) + c002a688: 7de2 ld s11,56(sp) + c002a68a: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24547 return js_parse_error_reserved_identifier(s); - c002a4bc: fe6fd06f j c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24541 + c002a68c: fe6fd06f j c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24549 if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002a4c0: 08600593 li a1,134 - c002a4c4: e91d90ef jal ra,c0004354 - c002a4c8: cd1d beqz a0,c002a506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24542 (discriminator 1) + c002a690: 08600593 li a1,134 + c002a694: cc1d90ef jal ra,c0004354 + c002a698: cd1d beqz a0,c002a6d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24550 (discriminator 1) peek_token(s, TRUE) != '\n') { - c002a4ca: 4585 li a1,1 - c002a4cc: 8522 mv a0,s0 - c002a4ce: a8bdb0ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24541 (discriminator 1) + c002a69a: 4585 li a1,1 + c002a69c: 8522 mv a0,s0 + c002a69e: 9a9db0ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24549 (discriminator 1) if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002a4d2: 47a9 li a5,10 - c002a4d4: 02f50963 beq a0,a5,c002a506 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24546 + c002a6a2: 47a9 li a5,10 + c002a6a4: 02f50963 beq a0,a5,c002a6d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24554 source_ptr = s->token.ptr; - c002a4d8: 7018 ld a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24547 + c002a6a8: 7018 ld a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24555 source_line_num = s->token.line_num; - c002a4da: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24548 + c002a6aa: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24556 if (next_token(s)) - c002a4dc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24546 + c002a6ac: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24554 source_ptr = s->token.ptr; - c002a4de: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24547 + c002a6ae: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24555 source_line_num = s->token.line_num; - c002a4e0: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24548 + c002a6b0: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24556 if (next_token(s)) - c002a4e2: eb4fc0ef jal ra,c0026b96 - c002a4e6: e80515e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24550 + c002a6b2: eb4fc0ef jal ra,c0026d66 + c002a6b6: e80515e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24558 if (s->token.val == TOK_FUNCTION) { - c002a4ea: 4c10 lw a2,24(s0) - c002a4ec: fc500693 li a3,-59 - c002a4f0: 6782 ld a5,0(sp) - c002a4f2: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24556 + c002a6ba: 4c10 lw a2,24(s0) + c002a6bc: fc500693 li a3,-59 + c002a6c0: 6782 ld a5,0(sp) + c002a6c2: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24564 name = JS_DupAtom(s->ctx, JS_ATOM_async); - c002a4f4: 08600493 li s1,134 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24550 + c002a6c4: 08600493 li s1,134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24558 if (s->token.val == TOK_FUNCTION) { - c002a4f8: 04d61263 bne a2,a3,c002a53c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24551 + c002a6c8: 04d61263 bne a2,a3,c002a70c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24559 if (js_parse_function_decl(s, JS_PARSE_FUNC_EXPR, - c002a4fc: 4681 li a3,0 - c002a4fe: 4609 li a2,2 - c002a500: 4589 li a1,2 - c002a502: 8522 mv a0,s0 - c002a504: bb41 j c002a294 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24560 + c002a6cc: 4681 li a3,0 + c002a6ce: 4609 li a2,2 + c002a6d0: 4589 li a1,2 + c002a6d2: 8522 mv a0,s0 + c002a6d4: bb41 j c002a464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24568 if (s->token.u.ident.atom == JS_ATOM_arguments && - c002a506: 540c lw a1,40(s0) - c002a508: 04e00793 li a5,78 - c002a50c: 00f59d63 bne a1,a5,c002a526 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24561 (discriminator 1) + c002a6d6: 540c lw a1,40(s0) + c002a6d8: 04e00793 li a5,78 + c002a6dc: 00f59d63 bne a1,a5,c002a6f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24569 (discriminator 1) !s->cur_func->arguments_allowed) { - c002a510: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24560 (discriminator 1) + c002a6e0: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24568 (discriminator 1) if (s->token.u.ident.atom == JS_ATOM_arguments && - c002a512: 5bfc lw a5,116(a5) - c002a514: eb89 bnez a5,c002a526 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24562 + c002a6e2: 5bfc lw a5,116(a5) + c002a6e4: eb89 bnez a5,c002a6f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24570 js_parse_error(s, "'arguments' identifier is not allowed in class field initializer"); - c002a516: 00035597 auipc a1,0x35 - c002a51a: 36258593 addi a1,a1,866 # c005f878 - c002a51e: 8522 mv a0,s0 - c002a520: d99fb0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24563 + c002a6e6: 00035597 auipc a1,0x35 + c002a6ea: 3f258593 addi a1,a1,1010 # c005fad8 + c002a6ee: 8522 mv a0,s0 + c002a6f0: d99fb0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24571 return -1; - c002a524: b5b1 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24565 + c002a6f4: b5b1 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24573 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002a526: 6008 ld a0,0(s0) - c002a528: fa3dc0ef jal ra,c00074ca - c002a52c: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24566 + c002a6f6: 6008 ld a0,0(s0) + c002a6f8: ec1dc0ef jal ra,c00075b8 + c002a6fc: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24574 if (next_token(s)) { /* update line number before emitting code */ - c002a530: 8522 mv a0,s0 - c002a532: e64fc0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24567 + c002a700: 8522 mv a0,s0 + c002a702: e64fc0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24575 JS_FreeAtom(s->ctx, name); - c002a536: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24566 + c002a706: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24574 if (next_token(s)) { /* update line number before emitting code */ - c002a538: 1c051e63 bnez a0,c002a714 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24571 + c002a708: 1c051e63 bnez a0,c002a8e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24579 emit_op(s, OP_scope_get_var); - c002a53c: 0b800593 li a1,184 - c002a540: 8522 mv a0,s0 - c002a542: efbda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24572 + c002a70c: 0b800593 li a1,184 + c002a710: 8522 mv a0,s0 + c002a712: e19da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24580 emit_u32(s, name); - c002a546: 85a6 mv a1,s1 - c002a548: 8522 mv a0,s0 - c002a54a: 888db0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24573 + c002a716: 85a6 mv a1,s1 + c002a718: 8522 mv a0,s0 + c002a71a: fa7da0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24581 emit_u16(s, s->cur_func->scope_level); - c002a54e: 743c ld a5,104(s0) - c002a550: 0e07d583 lhu a1,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24609 + c002a71e: 743c ld a5,104(s0) + c002a720: 0e07d583 lhu a1,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24617 emit_u16(s, 0); - c002a554: 8522 mv a0,s0 - c002a556: db5da0ef jal ra,c000530a - c002a55a: b729 j c002a464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24585 + c002a724: 8522 mv a0,s0 + c002a726: cd3da0ef jal ra,c00053f8 + c002a72a: b729 j c002a634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24593 if (s->token.val == '{') { - c002a55c: 4c18 lw a4,24(s0) - c002a55e: 07b00793 li a5,123 - c002a562: 1cf71e63 bne a4,a5,c002a73e + c002a72c: 4c18 lw a4,24(s0) + c002a72e: 07b00793 li a5,123 + c002a732: 1cf71e63 bne a4,a5,c002a90e js_parse_object_literal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22671 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22679 if (next_token(s)) - c002a566: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22666 + c002a736: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22674 JSAtom name = JS_ATOM_NULL; - c002a568: d002 sw zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22671 + c002a738: d002 sw zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22679 if (next_token(s)) - c002a56a: e2cfc0ef jal ra,c0026b96 - c002a56e: 892a mv s2,a0 - c002a570: 1a051163 bnez a0,c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22674 + c002a73a: e2cfc0ef jal ra,c0026d66 + c002a73e: 892a mv s2,a0 + c002a740: 1a051163 bnez a0,c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22682 emit_op(s, OP_object); - c002a574: 45ad li a1,11 - c002a576: 8522 mv a0,s0 - c002a578: ec5da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22681 + c002a744: 45ad li a1,11 + c002a746: 8522 mv a0,s0 + c002a748: de3da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22689 if (s->token.val == TOK_ELLIPSIS) { - c002a57c: fa500b13 li s6,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22705 + c002a74c: fa500b13 li s6,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22713 } else if (s->token.val == '(') { - c002a580: 02800b93 li s7,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22749 + c002a750: 02800b93 li s7,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22757 } else if (name == JS_ATOM___proto__) { - c002a584: 04500c13 li s8,69 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22717 + c002a754: 04500c13 li s8,69 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22725 if (prop_type == PROP_TYPE_STAR) - c002a588: 4c91 li s9,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22716 + c002a758: 4c91 li s9,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22724 func_type = JS_PARSE_FUNC_METHOD; - c002a58a: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22719 + c002a75a: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22727 else if (prop_type == PROP_TYPE_ASYNC) - c002a58c: 4d95 li s11,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22676 + c002a75c: 4d95 li s11,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22684 while (s->token.val != '}') { - c002a58e: 4c1c lw a5,24(s0) - c002a590: 07d00713 li a4,125 - c002a594: 04e78963 beq a5,a4,c002a5e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22681 + c002a75e: 4c1c lw a5,24(s0) + c002a760: 07d00713 li a4,125 + c002a764: 04e78963 beq a5,a4,c002a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22689 if (s->token.val == TOK_ELLIPSIS) { - c002a598: 05679f63 bne a5,s6,c002a5f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22682 + c002a768: 05679f63 bne a5,s6,c002a7c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22690 if (next_token(s)) - c002a59c: 8522 mv a0,s0 - c002a59e: df8fc0ef jal ra,c0026b96 - c002a5a2: dc0517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22684 + c002a76c: 8522 mv a0,s0 + c002a76e: df8fc0ef jal ra,c0026d66 + c002a772: dc0517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22692 if (js_parse_assign_expr(s)) - c002a5a6: 8522 mv a0,s0 - c002a5a8: 02e030ef jal ra,c002d5d6 - c002a5ac: dc0512e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22686 + c002a776: 8522 mv a0,s0 + c002a778: 02e030ef jal ra,c002d7a6 + c002a77c: dc0512e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22694 emit_op(s, OP_null); /* dummy excludeList */ - c002a5b0: 459d li a1,7 - c002a5b2: 8522 mv a0,s0 - c002a5b4: e89da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22687 + c002a780: 459d li a1,7 + c002a782: 8522 mv a0,s0 + c002a784: da7da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22695 emit_op(s, OP_copy_data_properties); - c002a5b8: 05300593 li a1,83 - c002a5bc: 8522 mv a0,s0 - c002a5be: e7fda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22688 + c002a788: 05300593 li a1,83 + c002a78c: 8522 mv a0,s0 + c002a78e: d9dda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22696 emit_u8(s, 2 | (1 << 2) | (0 << 5)); - c002a5c2: 4599 li a1,6 - c002a5c4: 8522 mv a0,s0 - c002a5c6: a93da0ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22689 + c002a792: 4599 li a1,6 + c002a794: 8522 mv a0,s0 + c002a796: 8c3da0ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22697 emit_op(s, OP_drop); /* pop excludeList */ - c002a5ca: 45b9 li a1,14 - c002a5cc: 8522 mv a0,s0 - c002a5ce: e6fda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22690 + c002a79a: 45b9 li a1,14 + c002a79c: 8522 mv a0,s0 + c002a79e: d8dda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22698 emit_op(s, OP_drop); /* pop src object */ - c002a5d2: 45b9 li a1,14 - c002a5d4: 8522 mv a0,s0 - c002a5d6: e67da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22765 + c002a7a2: 45b9 li a1,14 + c002a7a4: 8522 mv a0,s0 + c002a7a6: d85da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22773 if (s->token.val != ',') - c002a5da: 4c18 lw a4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22764 + c002a7aa: 4c18 lw a4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22772 name = JS_ATOM_NULL; - c002a5dc: d002 sw zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22765 + c002a7ac: d002 sw zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22773 if (s->token.val != ',') - c002a5de: 02c00793 li a5,44 - c002a5e2: 14f70863 beq a4,a5,c002a732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22770 + c002a7ae: 02c00793 li a5,44 + c002a7b2: 14f70863 beq a4,a5,c002a902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22778 if (js_parse_expect(s, '}')) - c002a5e6: 07d00593 li a1,125 - c002a5ea: 8522 mv a0,s0 - c002a5ec: cf7fd0ef jal ra,c00282e2 - c002a5f0: e6050ae3 beqz a0,c002a464 - c002a5f4: aa39 j c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22679 + c002a7b6: 07d00593 li a1,125 + c002a7ba: 8522 mv a0,s0 + c002a7bc: cf7fd0ef jal ra,c00284b2 + c002a7c0: e6050ae3 beqz a0,c002a634 + c002a7c4: aa39 j c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22687 start_line = s->token.line_num; - c002a5f6: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22694 + c002a7c6: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22702 prop_type = js_parse_property_name(s, &name, TRUE, TRUE, FALSE); - c002a5f8: 4701 li a4,0 - c002a5fa: 4685 li a3,1 - c002a5fc: 4605 li a2,1 - c002a5fe: 100c addi a1,sp,32 - c002a600: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22678 + c002a7c8: 4701 li a4,0 + c002a7ca: 4685 li a3,1 + c002a7cc: 4605 li a2,1 + c002a7ce: 100c addi a1,sp,32 + c002a7d0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22686 start_ptr = s->token.ptr; - c002a602: 02043a83 ld s5,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22679 + c002a7d2: 02043a83 ld s5,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22687 start_line = s->token.line_num; - c002a606: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22694 + c002a7d6: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22702 prop_type = js_parse_property_name(s, &name, TRUE, TRUE, FALSE); - c002a608: 569020ef jal ra,c002d370 - c002a60c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22695 + c002a7d8: 569020ef jal ra,c002d540 + c002a7dc: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22703 if (prop_type < 0) - c002a60e: 10054263 bltz a0,c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22698 + c002a7de: 10054263 bltz a0,c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22706 if (prop_type == PROP_TYPE_VAR) { - c002a612: 4705 li a4,1 - c002a614: 6782 ld a5,0(sp) - c002a616: 02e51b63 bne a0,a4,c002a64c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22700 + c002a7e2: 4705 li a4,1 + c002a7e4: 6782 ld a5,0(sp) + c002a7e6: 02e51b63 bne a0,a4,c002a81c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22708 emit_op(s, OP_scope_get_var); - c002a61a: 0b800593 li a1,184 - c002a61e: 8522 mv a0,s0 - c002a620: e1dda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22701 + c002a7ea: 0b800593 li a1,184 + c002a7ee: 8522 mv a0,s0 + c002a7f0: d3bda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22709 emit_atom(s, name); - c002a624: 5582 lw a1,32(sp) - c002a626: 8522 mv a0,s0 - c002a628: ec7dc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22702 + c002a7f4: 5582 lw a1,32(sp) + c002a7f6: 8522 mv a0,s0 + c002a7f8: de5dc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22710 emit_u16(s, s->cur_func->scope_level); - c002a62c: 743c ld a5,104(s0) - c002a62e: 8522 mv a0,s0 - c002a630: 0e07d583 lhu a1,224(a5) - c002a634: cd7da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22758 + c002a7fc: 743c ld a5,104(s0) + c002a7fe: 8522 mv a0,s0 + c002a800: 0e07d583 lhu a1,224(a5) + c002a804: bf5da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22766 emit_op(s, OP_define_field); - c002a638: 8522 mv a0,s0 - c002a63a: 04c00593 li a1,76 - c002a63e: dffda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22759 + c002a808: 8522 mv a0,s0 + c002a80a: 04c00593 li a1,76 + c002a80e: d1dda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22767 emit_atom(s, name); - c002a642: 5582 lw a1,32(sp) - c002a644: 8522 mv a0,s0 - c002a646: ea9dc0ef jal ra,c00074ee - c002a64a: a0a9 j c002a694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22705 + c002a812: 5582 lw a1,32(sp) + c002a814: 8522 mv a0,s0 + c002a816: dc7dc0ef jal ra,c00075dc + c002a81a: a0a9 j c002a864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22713 } else if (s->token.val == '(') { - c002a64c: 4c14 lw a3,24(s0) - c002a64e: 07769e63 bne a3,s7,c002a6ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22706 + c002a81c: 4c14 lw a3,24(s0) + c002a81e: 07769e63 bne a3,s7,c002a89a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22714 BOOL is_getset = (prop_type == PROP_TYPE_GET || - c002a652: ffe5099b addiw s3,a0,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22713 + c002a822: ffe5099b addiw s3,a0,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22721 if (is_getset) { - c002a656: 05376463 bltu a4,s3,c002a69e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22714 + c002a826: 05376463 bltu a4,s3,c002a86e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22722 func_type = JS_PARSE_FUNC_GETTER + prop_type - PROP_TYPE_GET; - c002a65a: 0025059b addiw a1,a0,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22712 + c002a82a: 0025059b addiw a1,a0,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22720 func_kind = JS_FUNC_NORMAL; - c002a65e: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22724 + c002a82e: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22732 if (js_parse_function_decl(s, func_type, func_kind, JS_ATOM_NULL, - c002a660: 8756 mv a4,s5 - c002a662: 4681 li a3,0 - c002a664: 8522 mv a0,s0 - c002a666: 576020ef jal ra,c002cbdc - c002a66a: 8aaa mv s5,a0 - c002a66c: e15d bnez a0,c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22727 + c002a830: 8756 mv a4,s5 + c002a832: 4681 li a3,0 + c002a834: 8522 mv a0,s0 + c002a836: 576020ef jal ra,c002cdac + c002a83a: 8aaa mv s5,a0 + c002a83c: e15d bnez a0,c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22735 if (name == JS_ATOM_NULL) { - c002a66e: 5702 lw a4,32(sp) - c002a670: e339 bnez a4,c002a6b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22728 + c002a83e: 5702 lw a4,32(sp) + c002a840: e339 bnez a4,c002a886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22736 emit_op(s, OP_define_method_computed); - c002a672: 05500593 li a1,85 - c002a676: 8522 mv a0,s0 - c002a678: dc5da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22733 + c002a842: 05500593 li a1,85 + c002a846: 8522 mv a0,s0 + c002a848: ce3da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22741 if (is_getset) { - c002a67c: 4705 li a4,1 - c002a67e: 01376463 bltu a4,s3,c002a686 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22734 + c002a84c: 4705 li a4,1 + c002a84e: 01376463 bltu a4,s3,c002a856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22742 op_flags = OP_DEFINE_METHOD_GETTER + - c002a682: fff48a9b addiw s5,s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22739 + c002a852: fff48a9b addiw s5,s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22747 emit_u8(s, op_flags | OP_DEFINE_METHOD_ENUMERABLE); - c002a686: 004ae593 ori a1,s5,4 - c002a68a: 0ff5f593 zext.b a1,a1 - c002a68e: 8522 mv a0,s0 - c002a690: 9c9da0ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22762 + c002a856: 004ae593 ori a1,s5,4 + c002a85a: 0ff5f593 zext.b a1,a1 + c002a85e: 8522 mv a0,s0 + c002a860: ff8da0ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22770 JS_FreeAtom(s->ctx, name); - c002a694: 5582 lw a1,32(sp) - c002a696: 6008 ld a0,0(s0) - c002a698: e75dc0ef jal ra,c000750c - c002a69c: bf3d j c002a5da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22718 + c002a864: 5582 lw a1,32(sp) + c002a866: 6008 ld a0,0(s0) + c002a868: d93dc0ef jal ra,c00075fa + c002a86c: bf3d j c002a7aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22726 func_kind = JS_FUNC_GENERATOR; - c002a69e: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22717 + c002a86e: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22725 if (prop_type == PROP_TYPE_STAR) - c002a6a0: 01950963 beq a0,s9,c002a6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22720 + c002a870: 01950963 beq a0,s9,c002a882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22728 func_kind = JS_FUNC_ASYNC; - c002a6a4: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22719 + c002a874: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22727 else if (prop_type == PROP_TYPE_ASYNC) - c002a6a6: 01b50663 beq a0,s11,c002a6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22722 + c002a876: 01b50663 beq a0,s11,c002a882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22730 func_kind = JS_FUNC_ASYNC_GENERATOR; - c002a6aa: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22721 + c002a87a: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22729 else if (prop_type == PROP_TYPE_ASYNC_STAR) - c002a6ac: 01a50363 beq a0,s10,c002a6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22712 + c002a87c: 01a50363 beq a0,s10,c002a882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22720 func_kind = JS_FUNC_NORMAL; - c002a6b0: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22716 + c002a880: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22724 func_type = JS_PARSE_FUNC_METHOD; - c002a6b2: 4599 li a1,6 - c002a6b4: b775 j c002a660 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22730 + c002a882: 4599 li a1,6 + c002a884: b775 j c002a830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22738 emit_op(s, OP_define_method); - c002a6b6: 8522 mv a0,s0 - c002a6b8: 05400593 li a1,84 - c002a6bc: d81da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22731 + c002a886: 8522 mv a0,s0 + c002a888: 05400593 li a1,84 + c002a88c: c9fda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22739 emit_atom(s, name); - c002a6c0: 5582 lw a1,32(sp) - c002a6c2: 8522 mv a0,s0 - c002a6c4: e2bdc0ef jal ra,c00074ee - c002a6c8: bf55 j c002a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22741 + c002a890: 5582 lw a1,32(sp) + c002a892: 8522 mv a0,s0 + c002a894: d49dc0ef jal ra,c00075dc + c002a898: bf55 j c002a84c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22749 if (js_parse_expect(s, ':')) - c002a6ca: 03a00593 li a1,58 - c002a6ce: 8522 mv a0,s0 - c002a6d0: c13fd0ef jal ra,c00282e2 - c002a6d4: ed1d bnez a0,c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22743 + c002a89a: 03a00593 li a1,58 + c002a89e: 8522 mv a0,s0 + c002a8a0: c13fd0ef jal ra,c00284b2 + c002a8a4: ed1d bnez a0,c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22751 if (js_parse_assign_expr(s)) - c002a6d6: 8522 mv a0,s0 - c002a6d8: 6ff020ef jal ra,c002d5d6 - c002a6dc: e91d bnez a0,c002a712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22745 + c002a8a6: 8522 mv a0,s0 + c002a8a8: 6ff020ef jal ra,c002d7a6 + c002a8ac: e91d bnez a0,c002a8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22753 if (name == JS_ATOM_NULL) { - c002a6de: 5582 lw a1,32(sp) - c002a6e0: ed91 bnez a1,c002a6fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22746 + c002a8ae: 5582 lw a1,32(sp) + c002a8b0: ed91 bnez a1,c002a8cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22754 set_object_name_computed(s); - c002a6e2: 8522 mv a0,s0 - c002a6e4: dadda0ef jal ra,c0005490 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22747 + c002a8b2: 8522 mv a0,s0 + c002a8b4: ccbda0ef jal ra,c000557e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22755 emit_op(s, OP_define_array_el); - c002a6e8: 8522 mv a0,s0 - c002a6ea: 05100593 li a1,81 - c002a6ee: d4fda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22748 + c002a8b8: 8522 mv a0,s0 + c002a8ba: 05100593 li a1,81 + c002a8be: c6dda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22756 emit_op(s, OP_drop); - c002a6f2: 45b9 li a1,14 - c002a6f4: 8522 mv a0,s0 - c002a6f6: d47da0ef jal ra,c000543c - c002a6fa: bf69 j c002a694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22749 + c002a8c2: 45b9 li a1,14 + c002a8c4: 8522 mv a0,s0 + c002a8c6: c65da0ef jal ra,c000552a + c002a8ca: bf69 j c002a864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22757 } else if (name == JS_ATOM___proto__) { - c002a6fc: 03859763 bne a1,s8,c002a72a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22750 + c002a8cc: 03859763 bne a1,s8,c002a8fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22758 if (has_proto) { - c002a700: 00090e63 beqz s2,c002a71c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22751 + c002a8d0: 00090e63 beqz s2,c002a8ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22759 js_parse_error(s, "duplicate __proto__ property name"); - c002a704: 00035597 auipc a1,0x35 - c002a708: 1bc58593 addi a1,a1,444 # c005f8c0 - c002a70c: 8522 mv a0,s0 - c002a70e: babfb0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22774 + c002a8d4: 00035597 auipc a1,0x35 + c002a8d8: 24c58593 addi a1,a1,588 # c005fb20 + c002a8dc: 8522 mv a0,s0 + c002a8de: babfb0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22782 JS_FreeAtom(s->ctx, name); - c002a712: 5582 lw a1,32(sp) - c002a714: 6008 ld a0,0(s0) - c002a716: df7dc0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22775 + c002a8e2: 5582 lw a1,32(sp) + c002a8e4: 6008 ld a0,0(s0) + c002a8e6: d15dc0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22783 return -1; - c002a71a: b999 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22754 + c002a8ea: b999 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22762 emit_op(s, OP_set_proto); - c002a71c: 04f00593 li a1,79 - c002a720: 8522 mv a0,s0 - c002a722: d1bda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22755 + c002a8ec: 04f00593 li a1,79 + c002a8f0: 8522 mv a0,s0 + c002a8f2: c39da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22763 has_proto = TRUE; - c002a726: 4905 li s2,1 - c002a728: b7b5 j c002a694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22757 + c002a8f6: 4905 li s2,1 + c002a8f8: b7b5 j c002a864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22765 set_object_name(s, name); - c002a72a: 8522 mv a0,s0 - c002a72c: 80add0ef jal ra,c0007736 - c002a730: b721 j c002a638 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22767 + c002a8fa: 8522 mv a0,s0 + c002a8fc: f29dc0ef jal ra,c0007824 + c002a900: b721 j c002a808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22775 if (next_token(s)) - c002a732: 8522 mv a0,s0 - c002a734: c62fc0ef jal ra,c0026b96 - c002a738: e4050be3 beqz a0,c002a58e - c002a73c: bfd9 j c002a712 + c002a902: 8522 mv a0,s0 + c002a904: c62fc0ef jal ra,c0026d66 + c002a908: e4050be3 beqz a0,c002a75e + c002a90c: bfd9 j c002a8e2 js_parse_array_literal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23458 if (next_token(s)) - c002a73e: 8522 mv a0,s0 - c002a740: c56fc0ef jal ra,c0026b96 - c002a744: 84aa mv s1,a0 - c002a746: c20515e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23453 + c002a90e: 8522 mv a0,s0 + c002a910: c56fc0ef jal ra,c0026d66 + c002a914: 84aa mv s1,a0 + c002a916: c20515e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23461 idx = 0; - c002a74a: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23454 + c002a91a: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23462 while (s->token.val != ']' && idx < 32) { - c002a74c: 05d00993 li s3,93 - c002a750: 02000b13 li s6,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23455 + c002a91c: 05d00993 li s3,93 + c002a920: 02000b13 li s6,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23463 if (s->token.val == ',' || s->token.val == TOK_ELLIPSIS) - c002a754: 02c00a93 li s5,44 - c002a758: fa500b93 li s7,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23454 + c002a924: 02c00a93 li s5,44 + c002a928: fa500b93 li s7,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23462 while (s->token.val != ']' && idx < 32) { - c002a75c: 4c1c lw a5,24(s0) - c002a75e: 01378463 beq a5,s3,c002a766 - c002a762: 05691d63 bne s2,s6,c002a7bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23468 + c002a92c: 4c1c lw a5,24(s0) + c002a92e: 01378463 beq a5,s3,c002a936 + c002a932: 05691d63 bne s2,s6,c002a98c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23476 emit_op(s, OP_array_from); - c002a766: 02600593 li a1,38 - c002a76a: 8522 mv a0,s0 - c002a76c: cd1da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23469 + c002a936: 02600593 li a1,38 + c002a93a: 8522 mv a0,s0 + c002a93c: befda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23477 emit_u16(s, idx); - c002a770: 03091593 slli a1,s2,0x30 - c002a774: 91c1 srli a1,a1,0x30 - c002a776: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23473 + c002a940: 03091593 slli a1,s2,0x30 + c002a944: 91c1 srli a1,a1,0x30 + c002a946: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23481 while (s->token.val != ']' && idx < 0x7fffffff) { - c002a778: 800009b7 lui s3,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23469 + c002a948: 800009b7 lui s3,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23477 emit_u16(s, idx); - c002a77c: b8fda0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23473 + c002a94c: aadda0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23481 while (s->token.val != ']' && idx < 0x7fffffff) { - c002a780: 05d00b13 li s6,93 - c002a784: fff9c993 not s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23474 + c002a950: 05d00b13 li s6,93 + c002a954: fff9c993 not s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23482 if (s->token.val == TOK_ELLIPSIS) - c002a788: fa500b93 li s7,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23477 + c002a958: fa500b93 li s7,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23485 if (s->token.val != ',') { - c002a78c: 02c00a93 li s5,44 + c002a95c: 02c00a93 li s5,44 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c002a790: 80000c37 lui s8,0x80000 + c002a960: 80000c37 lui s8,0x80000 js_parse_array_literal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23473 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23481 while (s->token.val != ']' && idx < 0x7fffffff) { - c002a794: 4c1c lw a5,24(s0) - c002a796: 15678ce3 beq a5,s6,c002b0ee - c002a79a: 05391b63 bne s2,s3,c002a7f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23505 + c002a964: 4c1c lw a5,24(s0) + c002a966: 15678ce3 beq a5,s6,c002b2be + c002a96a: 05391b63 bne s2,s3,c002a9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23513 emit_op(s, OP_push_i32); - c002a79e: 4585 li a1,1 - c002a7a0: 8522 mv a0,s0 - c002a7a2: c9bda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23506 + c002a96e: 4585 li a1,1 + c002a970: 8522 mv a0,s0 + c002a972: bb9da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23514 emit_u32(s, idx); - c002a7a6: 85ca mv a1,s2 - c002a7a8: 8522 mv a0,s0 - c002a7aa: e29da0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23509 + c002a976: 85ca mv a1,s2 + c002a978: 8522 mv a0,s0 + c002a97a: d47da0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23517 while (s->token.val != ']') { - c002a7ae: 05d00a93 li s5,93 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23510 + c002a97e: 05d00a93 li s5,93 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23518 if (s->token.val == TOK_ELLIPSIS) { - c002a7b2: fa500993 li s3,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23544 + c002a982: fa500993 li s3,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23552 if (s->token.val != ',') { - c002a7b6: 02c00913 li s2,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23509 + c002a986: 02c00913 li s2,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23517 while (s->token.val != ']') { - c002a7ba: a05d j c002a860 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23455 + c002a98a: a05d j c002aa30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23463 if (s->token.val == ',' || s->token.val == TOK_ELLIPSIS) - c002a7bc: fb5785e3 beq a5,s5,c002a766 - c002a7c0: fb7783e3 beq a5,s7,c002a766 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23457 + c002a98c: fb5785e3 beq a5,s5,c002a936 + c002a990: fb7783e3 beq a5,s7,c002a936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23465 if (js_parse_assign_expr(s)) - c002a7c4: 8522 mv a0,s0 - c002a7c6: 611020ef jal ra,c002d5d6 - c002a7ca: ba0513e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23461 + c002a994: 8522 mv a0,s0 + c002a996: 611020ef jal ra,c002d7a6 + c002a99a: ba0513e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23469 if (s->token.val == ',') { - c002a7ce: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23459 + c002a99e: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23467 idx++; - c002a7d0: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23461 + c002a9a0: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23469 if (s->token.val == ',') { - c002a7d2: 01579763 bne a5,s5,c002a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23462 + c002a9a2: 01579763 bne a5,s5,c002a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23470 if (next_token(s)) - c002a7d6: 8522 mv a0,s0 - c002a7d8: bbefc0ef jal ra,c0026b96 - c002a7dc: d141 beqz a0,c002a75c - c002a7de: be49 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23465 + c002a9a6: 8522 mv a0,s0 + c002a9a8: bbefc0ef jal ra,c0026d66 + c002a9ac: d141 beqz a0,c002a92c + c002a9ae: be49 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23473 if (s->token.val != ']') - c002a7e0: f7378ee3 beq a5,s3,c002a75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23568 + c002a9b0: f7378ee3 beq a5,s3,c002a92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23576 return js_parse_expect(s, ']'); - c002a7e4: 05d00593 li a1,93 - c002a7e8: 8522 mv a0,s0 - c002a7ea: af9fd0ef jal ra,c00282e2 - c002a7ee: b675 j c002a39a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23474 + c002a9b4: 05d00593 li a1,93 + c002a9b8: 8522 mv a0,s0 + c002a9ba: af9fd0ef jal ra,c00284b2 + c002a9be: b675 j c002a56a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23482 if (s->token.val == TOK_ELLIPSIS) - c002a7f0: fb7787e3 beq a5,s7,c002a79e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23476 + c002a9c0: fb7787e3 beq a5,s7,c002a96e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23484 need_length = TRUE; - c002a7f4: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23477 + c002a9c4: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23485 if (s->token.val != ',') { - c002a7f6: 03578363 beq a5,s5,c002a81c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23478 + c002a9c6: 03578363 beq a5,s5,c002a9ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23486 if (js_parse_assign_expr(s)) - c002a7fa: 8522 mv a0,s0 - c002a7fc: 5db020ef jal ra,c002d5d6 - c002a800: 84aa mv s1,a0 - c002a802: b60517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23480 + c002a9ca: 8522 mv a0,s0 + c002a9cc: 5db020ef jal ra,c002d7a6 + c002a9d0: 84aa mv s1,a0 + c002a9d2: b60517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23488 emit_op(s, OP_define_field); - c002a806: 04c00593 li a1,76 - c002a80a: 8522 mv a0,s0 - c002a80c: c31da0ef jal ra,c000543c + c002a9d6: 04c00593 li a1,76 + c002a9da: 8522 mv a0,s0 + c002a9dc: b4fda0ef jal ra,c000552a __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c002a810: 018965b3 or a1,s2,s8 + c002a9e0: 018965b3 or a1,s2,s8 js_parse_array_literal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23481 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23489 emit_u32(s, __JS_AtomFromUInt32(idx)); - c002a814: 2581 sext.w a1,a1 - c002a816: 8522 mv a0,s0 - c002a818: dbbda0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23486 + c002a9e4: 2581 sext.w a1,a1 + c002a9e6: 8522 mv a0,s0 + c002a9e8: cd9da0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23494 if (s->token.val == ',') { - c002a81c: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23484 + c002a9ec: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23492 idx++; - c002a81e: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23486 + c002a9ee: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23494 if (s->token.val == ',') { - c002a820: f7579ae3 bne a5,s5,c002a794 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23487 + c002a9f0: f7579ae3 bne a5,s5,c002a964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23495 if (next_token(s)) - c002a824: 8522 mv a0,s0 - c002a826: b70fc0ef jal ra,c0026b96 - c002a82a: d52d beqz a0,c002a794 - c002a82c: b691 j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23510 + c002a9f4: 8522 mv a0,s0 + c002a9f6: b70fc0ef jal ra,c0026d66 + c002a9fa: d52d beqz a0,c002a964 + c002a9fc: b691 j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23518 if (s->token.val == TOK_ELLIPSIS) { - c002a82e: 05379363 bne a5,s3,c002a874 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23511 + c002a9fe: 05379363 bne a5,s3,c002aa44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23519 if (next_token(s)) - c002a832: 8522 mv a0,s0 - c002a834: b62fc0ef jal ra,c0026b96 - c002a838: b2051ce3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23513 + c002aa02: 8522 mv a0,s0 + c002aa04: b62fc0ef jal ra,c0026d66 + c002aa08: b2051ce3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23521 if (js_parse_assign_expr(s)) - c002a83c: 8522 mv a0,s0 - c002a83e: 599020ef jal ra,c002d5d6 - c002a842: b20517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23516 + c002aa0c: 8522 mv a0,s0 + c002aa0e: 599020ef jal ra,c002d7a6 + c002aa12: b20517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23524 emit_op(s, OP_append); - c002a846: 05200593 li a1,82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23551 + c002aa16: 05200593 li a1,82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23559 emit_op(s, OP_inc); - c002a84a: 8522 mv a0,s0 - c002a84c: bf1da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23553 + c002aa1a: 8522 mv a0,s0 + c002aa1c: b0fda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23561 if (s->token.val != ',') - c002a850: 4c1c lw a5,24(s0) - c002a852: 01279a63 bne a5,s2,c002a866 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23555 + c002aa20: 4c1c lw a5,24(s0) + c002aa22: 01279a63 bne a5,s2,c002aa36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23563 if (next_token(s)) - c002a856: 8522 mv a0,s0 - c002a858: b3efc0ef jal ra,c0026b96 - c002a85c: b0051ae3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23509 + c002aa26: 8522 mv a0,s0 + c002aa28: b3efc0ef jal ra,c0026d66 + c002aa2c: b0051ae3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23517 while (s->token.val != ']') { - c002a860: 4c1c lw a5,24(s0) - c002a862: fd5796e3 bne a5,s5,c002a82e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23558 + c002aa30: 4c1c lw a5,24(s0) + c002aa32: fd5796e3 bne a5,s5,c002a9fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23566 if (need_length) { - c002a866: c88d beqz s1,c002a898 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23561 + c002aa36: c88d beqz s1,c002aa68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23569 emit_op(s, OP_dup1); /* array length - array array length */ - c002a868: 45c9 li a1,18 - c002a86a: 8522 mv a0,s0 - c002a86c: bd1da0ef jal ra,c000543c - c002a870: 09b0006f j c002b10a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23544 + c002aa38: 45c9 li a1,18 + c002aa3a: 8522 mv a0,s0 + c002aa3c: aefda0ef jal ra,c000552a + c002aa40: 09b0006f j c002b2da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23552 if (s->token.val != ',') { - c002a874: 03278063 beq a5,s2,c002a894 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23545 + c002aa44: 03278063 beq a5,s2,c002aa64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23553 if (js_parse_assign_expr(s)) - c002a878: 8522 mv a0,s0 - c002a87a: 55d020ef jal ra,c002d5d6 - c002a87e: 84aa mv s1,a0 - c002a880: ae0518e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23548 + c002aa48: 8522 mv a0,s0 + c002aa4a: 55d020ef jal ra,c002d7a6 + c002aa4e: 84aa mv s1,a0 + c002aa50: ae0518e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23556 emit_op(s, OP_define_array_el); - c002a884: 05100593 li a1,81 - c002a888: 8522 mv a0,s0 - c002a88a: bb3da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23551 + c002aa54: 05100593 li a1,81 + c002aa58: 8522 mv a0,s0 + c002aa5a: ad1da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23559 emit_op(s, OP_inc); - c002a88e: 09000593 li a1,144 - c002a892: bf65 j c002a84a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23543 + c002aa5e: 09000593 li a1,144 + c002aa62: bf65 j c002aa1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23551 need_length = TRUE; - c002a894: 4485 li s1,1 - c002a896: bfe5 j c002a88e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23565 + c002aa64: 4485 li s1,1 + c002aa66: bfe5 j c002aa5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23573 emit_op(s, OP_drop); /* array length - array */ - c002a898: 45b9 li a1,14 - c002a89a: 8522 mv a0,s0 - c002a89c: ba1da0ef jal ra,c000543c - c002a8a0: b791 j c002a7e4 + c002aa68: 45b9 li a1,14 + c002aa6a: 8522 mv a0,s0 + c002aa6c: abfda0ef jal ra,c000552a + c002aa70: b791 j c002a9b4 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24604 if (next_token(s)) - c002a8a2: af4fc0ef jal ra,c0026b96 - c002a8a6: ac0515e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24598 + c002aa72: af4fc0ef jal ra,c0026d66 + c002aa76: ac0515e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24606 if (s->token.val == '.') { - c002a8aa: 4c18 lw a4,24(s0) - c002a8ac: 02e00793 li a5,46 - c002a8b0: 06f71663 bne a4,a5,c002a91c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24599 + c002aa7a: 4c18 lw a4,24(s0) + c002aa7c: 02e00793 li a5,46 + c002aa80: 06f71663 bne a4,a5,c002aaec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24607 if (next_token(s)) - c002a8b4: 8522 mv a0,s0 - c002a8b6: ae0fc0ef jal ra,c0026b96 - c002a8ba: aa051be3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24601 + c002aa84: 8522 mv a0,s0 + c002aa86: ae0fc0ef jal ra,c0026d66 + c002aa8a: aa051be3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24609 if (!token_is_pseudo_keyword(s, JS_ATOM_target)) - c002a8be: 05700593 li a1,87 - c002a8c2: 8522 mv a0,s0 - c002a8c4: a91d90ef jal ra,c0004354 - c002a8c8: e515 bnez a0,c002a8f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24602 + c002aa8e: 05700593 li a1,87 + c002aa92: 8522 mv a0,s0 + c002aa94: 8c1d90ef jal ra,c0004354 + c002aa98: e515 bnez a0,c002aac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24610 return js_parse_error(s, "expecting target"); - c002a8ca: 00035597 auipc a1,0x35 - c002a8ce: 01e58593 addi a1,a1,30 # c005f8e8 - c002a8d2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25064 -} - c002a8d4: 644a ld s0,144(sp) - c002a8d6: 60ea ld ra,152(sp) - c002a8d8: 64aa ld s1,136(sp) - c002a8da: 690a ld s2,128(sp) - c002a8dc: 79e6 ld s3,120(sp) - c002a8de: 7a46 ld s4,112(sp) - c002a8e0: 7aa6 ld s5,104(sp) - c002a8e2: 7b06 ld s6,96(sp) - c002a8e4: 6be6 ld s7,88(sp) - c002a8e6: 6c46 ld s8,80(sp) - c002a8e8: 6ca6 ld s9,72(sp) - c002a8ea: 6d06 ld s10,64(sp) - c002a8ec: 7de2 ld s11,56(sp) - c002a8ee: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24602 + c002aa9a: 00035597 auipc a1,0x35 + c002aa9e: 0ae58593 addi a1,a1,174 # c005fb48 + c002aaa2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 +} + c002aaa4: 644a ld s0,144(sp) + c002aaa6: 60ea ld ra,152(sp) + c002aaa8: 64aa ld s1,136(sp) + c002aaaa: 690a ld s2,128(sp) + c002aaac: 79e6 ld s3,120(sp) + c002aaae: 7a46 ld s4,112(sp) + c002aab0: 7aa6 ld s5,104(sp) + c002aab2: 7b06 ld s6,96(sp) + c002aab4: 6be6 ld s7,88(sp) + c002aab6: 6c46 ld s8,80(sp) + c002aab8: 6ca6 ld s9,72(sp) + c002aaba: 6d06 ld s10,64(sp) + c002aabc: 7de2 ld s11,56(sp) + c002aabe: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24610 return js_parse_error(s, "expecting target"); - c002a8f0: 9c9fb06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24603 + c002aac0: 9c9fb06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24611 if (!s->cur_func->new_target_allowed) - c002a8f4: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24604 + c002aac4: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24612 return js_parse_error(s, "new.target only allowed within functions"); - c002a8f6: 00035597 auipc a1,0x35 - c002a8fa: 00a58593 addi a1,a1,10 # c005f900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24603 + c002aac6: 00035597 auipc a1,0x35 + c002aaca: 09a58593 addi a1,a1,154 # c005fb60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24611 if (!s->cur_func->new_target_allowed) - c002a8fe: 57bc lw a5,104(a5) - c002a900: dbe9 beqz a5,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24605 + c002aace: 57bc lw a5,104(a5) + c002aad0: dbe9 beqz a5,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24613 if (next_token(s)) - c002a902: 8522 mv a0,s0 - c002a904: a92fc0ef jal ra,c0026b96 - c002a908: a60514e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24607 + c002aad2: 8522 mv a0,s0 + c002aad4: a92fc0ef jal ra,c0026d66 + c002aad8: a60514e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24615 emit_op(s, OP_scope_get_var); - c002a90c: 0b800593 li a1,184 - c002a910: 8522 mv a0,s0 - c002a912: b2bda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24608 + c002aadc: 0b800593 li a1,184 + c002aae0: 8522 mv a0,s0 + c002aae2: a49da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24616 emit_atom(s, JS_ATOM_new_target); - c002a916: 07200593 li a1,114 - c002a91a: b68d j c002a47c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24611 + c002aae6: 07200593 li a1,114 + c002aaea: b68d j c002a64c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24619 if (js_parse_postfix_expr(s, 0)) - c002a91c: 4581 li a1,0 - c002a91e: 8522 mv a0,s0 - c002a920: 893ff0ef jal ra,c002a1b2 - c002a924: a40516e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24614 + c002aaec: 4581 li a1,0 + c002aaee: 8522 mv a0,s0 + c002aaf0: 893ff0ef jal ra,c002a382 + c002aaf4: a40516e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24622 if (s->token.val != '(') { - c002a928: 4c18 lw a4,24(s0) - c002a92a: 02800793 li a5,40 - c002a92e: 14f70263 beq a4,a5,c002aa72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24616 + c002aaf8: 4c18 lw a4,24(s0) + c002aafa: 02800793 li a5,40 + c002aafe: 14f70263 beq a4,a5,c002ac42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24624 emit_op(s, OP_dup); - c002a932: 45c5 li a1,17 - c002a934: 8522 mv a0,s0 - c002a936: b07da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24617 + c002ab02: 45c5 li a1,17 + c002ab04: 8522 mv a0,s0 + c002ab06: a25da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24625 emit_op(s, OP_call_constructor); - c002a93a: 02100593 li a1,33 - c002a93e: 8522 mv a0,s0 - c002a940: afdda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24618 + c002ab0a: 02100593 li a1,33 + c002ab0e: 8522 mv a0,s0 + c002ab10: a1bda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24626 emit_u16(s, 0); - c002a944: 4581 li a1,0 - c002a946: 8522 mv a0,s0 - c002a948: 9c3da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24613 + c002ab14: 4581 li a1,0 + c002ab16: 8522 mv a0,s0 + c002ab18: 8e1da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24621 accept_lparen = TRUE; - c002a94c: 4a05 li s4,1 - c002a94e: be19 j c002a464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24625 + c002ab1c: 4a05 li s4,1 + c002ab1e: be19 j c002a634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24633 if (next_token(s)) - c002a950: a46fc0ef jal ra,c0026b96 - c002a954: a0051ee3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24627 + c002ab20: a46fc0ef jal ra,c0026d66 + c002ab24: a0051ee3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24635 if (s->token.val == '(') { - c002a958: 4c1c lw a5,24(s0) - c002a95a: 02800713 li a4,40 - c002a95e: 00e79c63 bne a5,a4,c002a976 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24628 + c002ab28: 4c1c lw a5,24(s0) + c002ab2a: 02800713 li a4,40 + c002ab2e: 00e79c63 bne a5,a4,c002ab46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24636 if (!s->cur_func->super_call_allowed) - c002a962: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24630 + c002ab32: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24638 call_type = FUNC_CALL_SUPER_CTOR; - c002a964: 4909 li s2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24629 + c002ab34: 4909 li s2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24637 return js_parse_error(s, "super() is only valid in a derived class constructor"); - c002a966: 00035597 auipc a1,0x35 - c002a96a: fca58593 addi a1,a1,-54 # c005f930 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24628 + c002ab36: 00035597 auipc a1,0x35 + c002ab3a: 05a58593 addi a1,a1,90 # c005fb90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24636 if (!s->cur_func->super_call_allowed) - c002a96e: 57fc lw a5,108(a5) - c002a970: 9a0790e3 bnez a5,c002a310 - c002a974: bfb9 j c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24631 + c002ab3e: 57fc lw a5,108(a5) + c002ab40: 9a0790e3 bnez a5,c002a4e0 + c002ab44: bfb9 j c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24639 } else if (s->token.val == '.' || s->token.val == '[') { - c002a976: 02e00713 li a4,46 - c002a97a: 00e78663 beq a5,a4,c002a986 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24631 (discriminator 1) - c002a97e: 05b00713 li a4,91 - c002a982: 04e79763 bne a5,a4,c002a9d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24632 + c002ab46: 02e00713 li a4,46 + c002ab4a: 00e78663 beq a5,a4,c002ab56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24639 (discriminator 1) + c002ab4e: 05b00713 li a4,91 + c002ab52: 04e79763 bne a5,a4,c002aba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24640 if (!s->cur_func->super_allowed) - c002a986: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24633 + c002ab56: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24641 return js_parse_error(s, "'super' is only valid in a method"); - c002a988: 00035597 auipc a1,0x35 - c002a98c: fe058593 addi a1,a1,-32 # c005f968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24632 + c002ab58: 00035597 auipc a1,0x35 + c002ab5c: 07058593 addi a1,a1,112 # c005fbc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24640 if (!s->cur_func->super_allowed) - c002a990: 5bbc lw a5,112(a5) - c002a992: d3a1 beqz a5,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24634 + c002ab60: 5bbc lw a5,112(a5) + c002ab62: d3a1 beqz a5,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24642 emit_op(s, OP_scope_get_var); - c002a994: 0b800593 li a1,184 - c002a998: 8522 mv a0,s0 - c002a99a: aa3da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24635 + c002ab64: 0b800593 li a1,184 + c002ab68: 8522 mv a0,s0 + c002ab6a: 9c1da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24643 emit_atom(s, JS_ATOM_this); - c002a99e: 45a1 li a1,8 - c002a9a0: 8522 mv a0,s0 - c002a9a2: b4ddc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24636 + c002ab6e: 45a1 li a1,8 + c002ab70: 8522 mv a0,s0 + c002ab72: a6bdc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24644 emit_u16(s, 0); - c002a9a6: 4581 li a1,0 - c002a9a8: 8522 mv a0,s0 - c002a9aa: 961da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24637 + c002ab76: 4581 li a1,0 + c002ab78: 8522 mv a0,s0 + c002ab7a: 87fda0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24645 emit_op(s, OP_scope_get_var); - c002a9ae: 0b800593 li a1,184 - c002a9b2: 8522 mv a0,s0 - c002a9b4: a89da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24638 + c002ab7e: 0b800593 li a1,184 + c002ab82: 8522 mv a0,s0 + c002ab84: 9a7da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24646 emit_atom(s, JS_ATOM_home_object); - c002a9b8: 07400593 li a1,116 - c002a9bc: 8522 mv a0,s0 - c002a9be: b31dc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24639 + c002ab88: 07400593 li a1,116 + c002ab8c: 8522 mv a0,s0 + c002ab8e: a4fdc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24647 emit_u16(s, 0); - c002a9c2: 4581 li a1,0 - c002a9c4: 8522 mv a0,s0 - c002a9c6: 945da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24640 + c002ab92: 4581 li a1,0 + c002ab94: 8522 mv a0,s0 + c002ab96: 863da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24648 emit_op(s, OP_get_super); - c002a9ca: 03400593 li a1,52 - c002a9ce: bc41 j c002a45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24642 + c002ab9a: 03400593 li a1,52 + c002ab9e: bc41 j c002a62e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24650 return js_parse_error(s, "invalid use of 'super'"); - c002a9d0: 00035597 auipc a1,0x35 - c002a9d4: fc058593 addi a1,a1,-64 # c005f990 - c002a9d8: bded j c002a8d2 - c002a9da: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24646 + c002aba0: 00035597 auipc a1,0x35 + c002aba4: 05058593 addi a1,a1,80 # c005fbf0 + c002aba8: bded j c002aaa2 + c002abaa: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24654 if (next_token(s)) - c002a9dc: 9bafc0ef jal ra,c0026b96 - c002a9e0: 980518e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24648 + c002abac: 9bafc0ef jal ra,c0026d66 + c002abb0: 980518e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24656 if (s->token.val == '.') { - c002a9e4: 4c18 lw a4,24(s0) - c002a9e6: 02e00793 li a5,46 - c002a9ea: 04f71763 bne a4,a5,c002aa38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24649 + c002abb4: 4c18 lw a4,24(s0) + c002abb6: 02e00793 li a5,46 + c002abba: 04f71763 bne a4,a5,c002ac08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24657 if (next_token(s)) - c002a9ee: 8522 mv a0,s0 - c002a9f0: 9a6fc0ef jal ra,c0026b96 - c002a9f4: 96051ee3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24651 + c002abbe: 8522 mv a0,s0 + c002abc0: 9a6fc0ef jal ra,c0026d66 + c002abc4: 96051ee3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24659 if (!token_is_pseudo_keyword(s, JS_ATOM_meta)) - c002a9f8: 07c00593 li a1,124 - c002a9fc: 8522 mv a0,s0 - c002a9fe: 957d90ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24652 + c002abc8: 07c00593 li a1,124 + c002abcc: 8522 mv a0,s0 + c002abce: f86d90ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24660 return js_parse_error(s, "meta expected"); - c002aa02: 00035597 auipc a1,0x35 - c002aa06: fa658593 addi a1,a1,-90 # c005f9a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24651 + c002abd2: 00035597 auipc a1,0x35 + c002abd6: 03658593 addi a1,a1,54 # c005fc08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24659 if (!token_is_pseudo_keyword(s, JS_ATOM_meta)) - c002aa0a: ec0504e3 beqz a0,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24653 + c002abda: ec0504e3 beqz a0,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24661 if (!s->is_module) - c002aa0e: 583c lw a5,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24654 + c002abde: 583c lw a5,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24662 return js_parse_error(s, "import.meta only valid in module code"); - c002aa10: 00035597 auipc a1,0x35 - c002aa14: fa858593 addi a1,a1,-88 # c005f9b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24653 + c002abe0: 00035597 auipc a1,0x35 + c002abe4: 03858593 addi a1,a1,56 # c005fc18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24661 if (!s->is_module) - c002aa18: ea078de3 beqz a5,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24655 + c002abe8: ea078de3 beqz a5,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24663 if (next_token(s)) - c002aa1c: 8522 mv a0,s0 - c002aa1e: 978fc0ef jal ra,c0026b96 - c002aa22: 940517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24657 + c002abec: 8522 mv a0,s0 + c002abee: 978fc0ef jal ra,c0026d66 + c002abf2: 940517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24665 emit_op(s, OP_special_object); - c002aa26: 8522 mv a0,s0 - c002aa28: 45b1 li a1,12 - c002aa2a: a13da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24658 + c002abf6: 8522 mv a0,s0 + c002abf8: 45b1 li a1,12 + c002abfa: 931da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24666 emit_u8(s, OP_SPECIAL_OBJECT_IMPORT_META); - c002aa2e: 4599 li a1,6 - c002aa30: 8522 mv a0,s0 - c002aa32: e26da0ef jal ra,c0005058 - c002aa36: b43d j c002a464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24660 + c002abfe: 4599 li a1,6 + c002ac00: 8522 mv a0,s0 + c002ac02: c56da0ef jal ra,c0005058 + c002ac06: b43d j c002a634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24668 if (js_parse_expect(s, '(')) - c002aa38: 02800593 li a1,40 - c002aa3c: 8522 mv a0,s0 - c002aa3e: 8a5fd0ef jal ra,c00282e2 - c002aa42: 920517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24663 + c002ac08: 02800593 li a1,40 + c002ac0c: 8522 mv a0,s0 + c002ac0e: 8a5fd0ef jal ra,c00284b2 + c002ac12: 920517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24671 return js_parse_error(s, "invalid use of 'import()'"); - c002aa46: 00035597 auipc a1,0x35 - c002aa4a: f9a58593 addi a1,a1,-102 # c005f9e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24662 + c002ac16: 00035597 auipc a1,0x35 + c002ac1a: 02a58593 addi a1,a1,42 # c005fc40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24670 if (!accept_lparen) - c002aa4e: e80482e3 beqz s1,c002a8d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24664 + c002ac1e: e80482e3 beqz s1,c002aaa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24672 if (js_parse_assign_expr(s)) - c002aa52: 8522 mv a0,s0 - c002aa54: 383020ef jal ra,c002d5d6 - c002aa58: 90051ce3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24666 + c002ac22: 8522 mv a0,s0 + c002ac24: 383020ef jal ra,c002d7a6 + c002ac28: 90051ce3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24674 if (js_parse_expect(s, ')')) - c002aa5c: 02900593 li a1,41 - c002aa60: 8522 mv a0,s0 - c002aa62: 881fd0ef jal ra,c00282e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24668 + c002ac2c: 02900593 li a1,41 + c002ac30: 8522 mv a0,s0 + c002ac32: 881fd0ef jal ra,c00284b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24676 emit_op(s, OP_import); - c002aa66: 03500593 li a1,53 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24666 + c002ac36: 03500593 li a1,53 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24674 if (js_parse_expect(s, ')')) - c002aa6a: 9e050ae3 beqz a0,c002a45e - c002aa6e: 903ff06f j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24613 + c002ac3a: 9e050ae3 beqz a0,c002a62e + c002ac3e: 903ff06f j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24621 accept_lparen = TRUE; - c002aa72: 4a05 li s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24620 + c002ac42: 4a05 li s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24628 call_type = FUNC_CALL_NEW; - c002aa74: 4905 li s2,1 - c002aa76: 89bff06f j c002a310 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24688 + c002ac44: 4905 li s2,1 + c002ac46: 89bff06f j c002a4e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24696 } else if (s->token.val == '[') { - c002aa7a: 05b00713 li a4,91 - c002aa7e: 8ce791e3 bne a5,a4,c002a340 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24685 - has_optional_chain = TRUE; - c002aa82: 4a85 li s5,1 - c002aa84: ab71 j c002b020 + c002ac4a: 05b00713 li a4,91 + c002ac4e: 8ce791e3 bne a5,a4,c002a510 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24693 + has_optional_chain = TRUE; + c002ac52: 4a85 li s5,1 + c002ac54: ab71 j c002b1f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24701 } else if (s->token.val == TOK_TEMPLATE && - c002aa86: f8200713 li a4,-126 - c002aa8a: 02e79163 bne a5,a4,c002aaac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24693 (discriminator 1) - c002aa8e: 5e091263 bnez s2,c002b072 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24695 + c002ac56: f8200713 li a4,-126 + c002ac5a: 02e79163 bne a5,a4,c002ac7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24701 (discriminator 1) + c002ac5e: 5e091263 bnez s2,c002b242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24703 if (optional_chaining_label >= 0) { - c002aa92: 47f2 lw a5,28(sp) - c002aa94: 0a07ca63 bltz a5,c002ab48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24696 + c002ac62: 47f2 lw a5,28(sp) + c002ac64: 0a07ca63 bltz a5,c002ad18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24704 return js_parse_error(s, "template literal cannot appear in an optional chain"); - c002aa98: 00035597 auipc a1,0x35 - c002aa9c: f9058593 addi a1,a1,-112 # c005fa28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25002 + c002ac68: 00035597 auipc a1,0x35 + c002ac6c: 02058593 addi a1,a1,32 # c005fc88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25010 return js_parse_error(s, "expecting field name"); - c002aaa0: 8522 mv a0,s0 - c002aaa2: 817fb0ef jal ra,c00262b8 - c002aaa6: 84aa mv s1,a0 - c002aaa8: 8cbff06f j c002a372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24700 + c002ac70: 8522 mv a0,s0 + c002ac72: 817fb0ef jal ra,c0026488 + c002ac76: 84aa mv s1,a0 + c002ac78: 8cbff06f j c002a542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24708 } else if (s->token.val == '(' && accept_lparen) { - c002aaac: 02800713 li a4,40 - c002aab0: 4ae79263 bne a5,a4,c002af54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24700 (discriminator 1) - c002aab4: 5a0a0f63 beqz s4,c002b072 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24679 + c002ac7c: 02800713 li a4,40 + c002ac80: 4ae79263 bne a5,a4,c002b124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24708 (discriminator 1) + c002ac84: 5a0a0f63 beqz s4,c002b242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24687 BOOL has_optional_chain = FALSE; - c002aab8: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24705 + c002ac88: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24713 if (next_token(s)) - c002aaba: 8522 mv a0,s0 - c002aabc: 8dafc0ef jal ra,c0026b96 - c002aac0: 84aa mv s1,a0 - c002aac2: 8a0517e3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24708 + c002ac8a: 8522 mv a0,s0 + c002ac8c: 8dafc0ef jal ra,c0026d66 + c002ac90: 84aa mv s1,a0 + c002ac92: 8a0517e3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24716 if (call_type == FUNC_CALL_NORMAL) { - c002aac6: 22091263 bnez s2,c002acea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24710 + c002ac96: 22091263 bnez s2,c002aeba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24718 switch(opcode = get_prev_opcode(fd)) { - c002aaca: 854e mv a0,s3 - c002aacc: 943d90ef jal ra,c000440e - c002aad0: 0b800793 li a5,184 - c002aad4: 84aa mv s1,a0 - c002aad6: 18f50b63 beq a0,a5,c002ac6c - c002aada: 06a7ca63 blt a5,a0,c002ab4e - c002aade: 04700713 li a4,71 - c002aae2: 10e50963 beq a0,a4,c002abf4 - c002aae6: 04a00793 li a5,74 - c002aaea: 1ef50863 beq a0,a5,c002acda - c002aaee: 04100793 li a5,65 - c002aaf2: 08f50263 beq a0,a5,c002ab76 - c002aaf6: 4605 li a2,1 - c002aaf8: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24801 + c002ac9a: 854e mv a0,s3 + c002ac9c: f72d90ef jal ra,c000440e + c002aca0: 0b800793 li a5,184 + c002aca4: 84aa mv s1,a0 + c002aca6: 18f50b63 beq a0,a5,c002ae3c + c002acaa: 06a7ca63 blt a5,a0,c002ad1e + c002acae: 04700713 li a4,71 + c002acb2: 10e50963 beq a0,a4,c002adc4 + c002acb6: 04a00793 li a5,74 + c002acba: 1ef50863 beq a0,a5,c002aeaa + c002acbe: 04100793 li a5,65 + c002acc2: 08f50263 beq a0,a5,c002ad46 + c002acc6: 4605 li a2,1 + c002acc8: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24809 if (has_optional_chain) { - c002aafa: 000a8663 beqz s5,c002ab06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24802 + c002acca: 000a8663 beqz s5,c002acd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24810 optional_chain_test(s, &optional_chaining_label, - c002aafe: 086c addi a1,sp,28 - c002ab00: 8522 mv a0,s0 - c002ab02: c54ed0ef jal ra,c0017f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24809 + c002acce: 086c addi a1,sp,28 + c002acd0: 8522 mv a0,s0 + c002acd2: c54ed0ef jal ra,c0018126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24817 if (call_type == FUNC_CALL_TEMPLATE) { - c002ab06: 478d li a5,3 - c002ab08: 1ef91163 bne s2,a5,c002acea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24810 + c002acd6: 478d li a5,3 + c002acd8: 1ef91163 bne s2,a5,c002aeba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24818 if (js_parse_template(s, 1, &arg_count)) - c002ab0c: 1010 addi a2,sp,32 - c002ab0e: 4585 li a1,1 - c002ab10: 8522 mv a0,s0 - c002ab12: c3eff0ef jal ra,c0029f50 - c002ab16: 84051de3 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24948 + c002acdc: 1010 addi a2,sp,32 + c002acde: 4585 li a1,1 + c002ace0: 8522 mv a0,s0 + c002ace2: c3eff0ef jal ra,c002a120 + c002ace6: 84051de3 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24956 switch(opcode) { - c002ab1a: 04100793 li a5,65 - c002ab1e: 40f48b63 beq s1,a5,c002af34 - c002ab22: 6097c063 blt a5,s1,c002b122 - c002ab26: 03100793 li a5,49 - c002ab2a: 42f49263 bne s1,a5,c002af4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24957 + c002acea: 04100793 li a5,65 + c002acee: 40f48b63 beq s1,a5,c002b104 + c002acf2: 6097c063 blt a5,s1,c002b2f2 + c002acf6: 03100793 li a5,49 + c002acfa: 42f49263 bne s1,a5,c002b11e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24965 emit_op(s, OP_eval); - c002ab2e: 8522 mv a0,s0 - c002ab30: 03100593 li a1,49 - c002ab34: 909da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24958 + c002acfe: 8522 mv a0,s0 + c002ad00: 03100593 li a1,49 + c002ad04: 827da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24966 emit_u16(s, arg_count); - c002ab38: 02015583 lhu a1,32(sp) - c002ab3c: 8522 mv a0,s0 - c002ab3e: fccda0ef jal ra,c000530a - c002ab42: a669 j c002aecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24685 + c002ad08: 02015583 lhu a1,32(sp) + c002ad0c: 8522 mv a0,s0 + c002ad0e: eeada0ef jal ra,c00053f8 + c002ad12: a669 j c002b09c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24693 has_optional_chain = TRUE; - c002ab44: 8ad2 mv s5,s4 - c002ab46: bf95 j c002aaba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24679 + c002ad14: 8ad2 mv s5,s4 + c002ad16: bf95 j c002ac8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24687 BOOL has_optional_chain = FALSE; - c002ab48: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24698 + c002ad18: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24706 call_type = FUNC_CALL_TEMPLATE; - c002ab4a: 490d li s2,3 - c002ab4c: bfbd j c002aaca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24710 + c002ad1a: 490d li s2,3 + c002ad1c: bfbd j c002ac9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24718 switch(opcode = get_prev_opcode(fd)) { - c002ab4e: 0c300793 li a5,195 - c002ab52: 02f50d63 beq a0,a5,c002ab8c - c002ab56: 0c400793 li a5,196 - c002ab5a: 0af50563 beq a0,a5,c002ac04 - c002ab5e: 0bf00793 li a5,191 - c002ab62: f8f51ae3 bne a0,a5,c002aaf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24737 + c002ad1e: 0c300793 li a5,195 + c002ad22: 02f50d63 beq a0,a5,c002ad5c + c002ad26: 0c400793 li a5,196 + c002ad2a: 0af50563 beq a0,a5,c002add4 + c002ad2e: 0bf00793 li a5,191 + c002ad32: f8f51ae3 bne a0,a5,c002acc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24745 fd->byte_code.buf[fd->last_opcode_pos] = OP_scope_get_private_field2; - c002ab66: 1609a703 lw a4,352(s3) # ffffffff80000160 <_ebss+0xfffffffebfeff03a> - c002ab6a: 1309b783 ld a5,304(s3) - c002ab6e: 97ba add a5,a5,a4 - c002ab70: fc000713 li a4,-64 - c002ab74: a801 j c002ab84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24713 + c002ad36: 1609a703 lw a4,352(s3) # ffffffff80000160 <_ebss+0xfffffffebfeff03a> + c002ad3a: 1309b783 ld a5,304(s3) + c002ad3e: 97ba add a5,a5,a4 + c002ad40: fc000713 li a4,-64 + c002ad44: a801 j c002ad54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24721 fd->byte_code.buf[fd->last_opcode_pos] = OP_get_field2; - c002ab76: 1609a703 lw a4,352(s3) - c002ab7a: 1309b783 ld a5,304(s3) - c002ab7e: 97ba add a5,a5,a4 - c002ab80: 04200713 li a4,66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24737 + c002ad46: 1609a703 lw a4,352(s3) + c002ad4a: 1309b783 ld a5,304(s3) + c002ad4e: 97ba add a5,a5,a4 + c002ad50: 04200713 li a4,66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24745 fd->byte_code.buf[fd->last_opcode_pos] = OP_scope_get_private_field2; - c002ab84: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24738 + c002ad54: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24746 drop_count = 2; - c002ab88: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24739 + c002ad58: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24747 break; - c002ab8a: bf85 j c002aafa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24720 + c002ad5a: bf85 j c002acca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24728 fd->last_opcode_pos + 1 + 4 + 1); - c002ab8c: 1609a703 lw a4,352(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24719 + c002ad5c: 1609a703 lw a4,352(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24727 opt_chain_label = get_u32(fd->byte_code.buf + - c002ab90: 1309b783 ld a5,304(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24724 + c002ad60: 1309b783 ld a5,304(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24732 next_label = emit_goto(s, OP_goto, -1); - c002ab94: 567d li a2,-1 - c002ab96: 06c00593 li a1,108 + c002ad64: 567d li a2,-1 + c002ad66: 06c00593 li a1,108 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002ab9a: 97ba add a5,a5,a4 - c002ab9c: 0077c703 lbu a4,7(a5) - c002aba0: 0067c483 lbu s1,6(a5) + c002ad6a: 97ba add a5,a5,a4 + c002ad6c: 0077c703 lbu a4,7(a5) + c002ad70: 0067c483 lbu s1,6(a5) js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24724 - c002aba4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24732 + c002ad74: 8522 mv a0,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002aba6: 0722 slli a4,a4,0x8 - c002aba8: 8f45 or a4,a4,s1 - c002abaa: 0087c483 lbu s1,8(a5) - c002abae: 04c2 slli s1,s1,0x10 - c002abb0: 8f45 or a4,a4,s1 - c002abb2: 0097c483 lbu s1,9(a5) - c002abb6: 04e2 slli s1,s1,0x18 - c002abb8: 8cd9 or s1,s1,a4 + c002ad76: 0722 slli a4,a4,0x8 + c002ad78: 8f45 or a4,a4,s1 + c002ad7a: 0087c483 lbu s1,8(a5) + c002ad7e: 04c2 slli s1,s1,0x10 + c002ad80: 8f45 or a4,a4,s1 + c002ad82: 0097c483 lbu s1,9(a5) + c002ad86: 04e2 slli s1,s1,0x18 + c002ad88: 8cd9 or s1,s1,a4 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24730 fd->byte_code.buf[fd->last_opcode_pos] = OP_get_field2; - c002abba: 04200713 li a4,66 - c002abbe: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24723 + c002ad8a: 04200713 li a4,66 + c002ad8e: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24731 fd->byte_code.size = fd->last_opcode_pos + 1 + 4; - c002abc2: 1609a783 lw a5,352(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24719 + c002ad92: 1609a783 lw a5,352(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24727 opt_chain_label = get_u32(fd->byte_code.buf + - c002abc6: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24723 + c002ad96: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24731 fd->byte_code.size = fd->last_opcode_pos + 1 + 4; - c002abc8: 2795 addiw a5,a5,5 - c002abca: 12f9bc23 sd a5,312(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24724 + c002ad98: 2795 addiw a5,a5,5 + c002ad9a: 12f9bc23 sd a5,312(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24732 next_label = emit_goto(s, OP_goto, -1); - c002abce: 8eaed0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24725 + c002ad9e: 8eaed0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24733 emit_label(s, opt_chain_label); - c002abd2: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24724 + c002ada2: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24732 next_label = emit_goto(s, OP_goto, -1); - c002abd4: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24725 + c002ada4: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24733 emit_label(s, opt_chain_label); - c002abd6: 8522 mv a0,s0 - c002abd8: a03da0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24729 + c002ada6: 8522 mv a0,s0 + c002ada8: 921da0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24737 emit_op(s, OP_undefined); - c002abdc: 4599 li a1,6 - c002abde: 8522 mv a0,s0 - c002abe0: 85dda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24730 + c002adac: 4599 li a1,6 + c002adae: 8522 mv a0,s0 + c002adb0: f7ada0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24738 emit_label(s, next_label); - c002abe4: 85e2 mv a1,s8 - c002abe6: 8522 mv a0,s0 - c002abe8: 9f3da0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24731 + c002adb4: 85e2 mv a1,s8 + c002adb6: 8522 mv a0,s0 + c002adb8: 911da0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24739 drop_count = 2; - c002abec: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24732 + c002adbc: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24740 opcode = OP_get_field; - c002abee: 04100493 li s1,65 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24734 - break; - c002abf2: b721 j c002aafa + c002adbe: 04100493 li s1,65 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24742 + break; + c002adc2: b721 j c002acca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24750 fd->byte_code.buf[fd->last_opcode_pos] = OP_get_array_el2; - c002abf4: 1609a703 lw a4,352(s3) - c002abf8: 1309b783 ld a5,304(s3) - c002abfc: 97ba add a5,a5,a4 - c002abfe: 04800713 li a4,72 - c002ac02: b749 j c002ab84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24749 + c002adc4: 1609a703 lw a4,352(s3) + c002adc8: 1309b783 ld a5,304(s3) + c002adcc: 97ba add a5,a5,a4 + c002adce: 04800713 li a4,72 + c002add2: b749 j c002ad54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24757 fd->last_opcode_pos + 1 + 1); - c002ac04: 1609a703 lw a4,352(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24748 + c002add4: 1609a703 lw a4,352(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24756 opt_chain_label = get_u32(fd->byte_code.buf + - c002ac08: 1309b783 ld a5,304(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24753 + c002add8: 1309b783 ld a5,304(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24761 next_label = emit_goto(s, OP_goto, -1); - c002ac0c: 567d li a2,-1 - c002ac0e: 06c00593 li a1,108 + c002addc: 567d li a2,-1 + c002adde: 06c00593 li a1,108 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002ac12: 97ba add a5,a5,a4 - c002ac14: 0037c703 lbu a4,3(a5) - c002ac18: 0027c483 lbu s1,2(a5) + c002ade2: 97ba add a5,a5,a4 + c002ade4: 0037c703 lbu a4,3(a5) + c002ade8: 0027c483 lbu s1,2(a5) js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24753 - c002ac1c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24761 + c002adec: 8522 mv a0,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002ac1e: 0722 slli a4,a4,0x8 - c002ac20: 8f45 or a4,a4,s1 - c002ac22: 0047c483 lbu s1,4(a5) - c002ac26: 04c2 slli s1,s1,0x10 - c002ac28: 8f45 or a4,a4,s1 - c002ac2a: 0057c483 lbu s1,5(a5) - c002ac2e: 04e2 slli s1,s1,0x18 - c002ac30: 8cd9 or s1,s1,a4 + c002adee: 0722 slli a4,a4,0x8 + c002adf0: 8f45 or a4,a4,s1 + c002adf2: 0047c483 lbu s1,4(a5) + c002adf6: 04c2 slli s1,s1,0x10 + c002adf8: 8f45 or a4,a4,s1 + c002adfa: 0057c483 lbu s1,5(a5) + c002adfe: 04e2 slli s1,s1,0x18 + c002ae00: 8cd9 or s1,s1,a4 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24751 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24759 fd->byte_code.buf[fd->last_opcode_pos] = OP_get_array_el2; - c002ac32: 04800713 li a4,72 - c002ac36: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24752 + c002ae02: 04800713 li a4,72 + c002ae06: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24760 fd->byte_code.size = fd->last_opcode_pos + 1; - c002ac3a: 1609a783 lw a5,352(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24748 + c002ae0a: 1609a783 lw a5,352(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24756 opt_chain_label = get_u32(fd->byte_code.buf + - c002ac3e: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24752 + c002ae0e: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24760 fd->byte_code.size = fd->last_opcode_pos + 1; - c002ac40: 2785 addiw a5,a5,1 - c002ac42: 12f9bc23 sd a5,312(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24753 + c002ae10: 2785 addiw a5,a5,1 + c002ae12: 12f9bc23 sd a5,312(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24761 next_label = emit_goto(s, OP_goto, -1); - c002ac46: 872ed0ef jal ra,c0017cb8 - c002ac4a: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24754 + c002ae16: 872ed0ef jal ra,c0017e88 + c002ae1a: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24762 emit_label(s, opt_chain_label); - c002ac4c: 85a6 mv a1,s1 - c002ac4e: 8522 mv a0,s0 - c002ac50: 98bda0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24758 + c002ae1c: 85a6 mv a1,s1 + c002ae1e: 8522 mv a0,s0 + c002ae20: 8a9da0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24766 emit_op(s, OP_undefined); - c002ac54: 4599 li a1,6 - c002ac56: 8522 mv a0,s0 - c002ac58: fe4da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24759 + c002ae24: 4599 li a1,6 + c002ae26: 8522 mv a0,s0 + c002ae28: f02da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24767 emit_label(s, next_label); - c002ac5c: 85e2 mv a1,s8 - c002ac5e: 8522 mv a0,s0 - c002ac60: 97bda0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24794 + c002ae2c: 85e2 mv a1,s8 + c002ae2e: 8522 mv a0,s0 + c002ae30: 899da0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24802 drop_count = 2; - c002ac64: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24793 + c002ae34: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24801 opcode = OP_get_array_el; - c002ac66: 04700493 li s1,71 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24795 + c002ae36: 04700493 li s1,71 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24803 break; - c002ac6a: bd41 j c002aafa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24768 + c002ae3a: bd41 j c002acca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24776 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c002ac6c: 1309b703 ld a4,304(s3) - c002ac70: 1609a783 lw a5,352(s3) + c002ae3c: 1309b703 ld a4,304(s3) + c002ae40: 1609a783 lw a5,352(s3) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002ac74: 97ba add a5,a5,a4 - c002ac76: 0067c703 lbu a4,6(a5) - c002ac7a: 0057c683 lbu a3,5(a5) + c002ae44: 97ba add a5,a5,a4 + c002ae46: 0067c703 lbu a4,6(a5) + c002ae4a: 0057c683 lbu a3,5(a5) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c002ac7e: 0027c603 lbu a2,2(a5) + c002ae4e: 0027c603 lbu a2,2(a5) get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c002ac82: 0722 slli a4,a4,0x8 + c002ae52: 0722 slli a4,a4,0x8 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24777 scope = get_u16(fd->byte_code.buf + fd->last_opcode_pos + 5); - c002ac84: 8f55 or a4,a4,a3 + c002ae54: 8f55 or a4,a4,a3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c002ac86: 0017c683 lbu a3,1(a5) - c002ac8a: 0622 slli a2,a2,0x8 - c002ac8c: 8e55 or a2,a2,a3 - c002ac8e: 0037c683 lbu a3,3(a5) - c002ac92: 06c2 slli a3,a3,0x10 - c002ac94: 8e55 or a2,a2,a3 - c002ac96: 0047c683 lbu a3,4(a5) - c002ac9a: 06e2 slli a3,a3,0x18 - c002ac9c: 8ed1 or a3,a3,a2 + c002ae56: 0017c683 lbu a3,1(a5) + c002ae5a: 0622 slli a2,a2,0x8 + c002ae5c: 8e55 or a2,a2,a3 + c002ae5e: 0037c683 lbu a3,3(a5) + c002ae62: 06c2 slli a3,a3,0x10 + c002ae64: 8e55 or a2,a2,a3 + c002ae66: 0047c683 lbu a3,4(a5) + c002ae6a: 06e2 slli a3,a3,0x18 + c002ae6c: 8ed1 or a3,a3,a2 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24770 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24778 if (name == JS_ATOM_eval && call_type == FUNC_CALL_NORMAL && !has_optional_chain) { - c002ac9e: 2681 sext.w a3,a3 - c002aca0: 03b00613 li a2,59 - c002aca4: 00c69763 bne a3,a2,c002acb2 - c002aca8: 012ae6b3 or a3,s5,s2 - c002acac: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24770 (discriminator 1) - c002acae: 0c068c63 beqz a3,c002ad86 - c002acb2: 86ce mv a3,s3 + c002ae6e: 2681 sext.w a3,a3 + c002ae70: 03b00613 li a2,59 + c002ae74: 00c69763 bne a3,a2,c002ae82 + c002ae78: 012ae6b3 or a3,s5,s2 + c002ae7c: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24778 (discriminator 1) + c002ae7e: 0c068c63 beqz a3,c002af56 + c002ae82: 86ce mv a3,s3 has_with_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23576 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23584 int scope_idx = s->scopes[scope_level].first; - c002acb4: 7af0 ld a2,240(a3) - c002acb6: 070e slli a4,a4,0x3 - c002acb8: 9732 add a4,a4,a2 - c002acba: 4358 lw a4,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23577 - while (scope_idx >= 0) { - c002acbc: 00075763 bgez a4,c002acca + c002ae84: 7af0 ld a2,240(a3) + c002ae86: 070e slli a4,a4,0x3 + c002ae88: 9732 add a4,a4,a2 + c002ae8a: 4358 lw a4,4(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23585 + while (scope_idx >= 0) { + c002ae8c: 00075763 bgez a4,c002ae9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23593 scope_level = s->parent_scope_level; - c002acc0: 4ad8 lw a4,20(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23586 + c002ae90: 4ad8 lw a4,20(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23594 s = s->parent; - c002acc2: 6694 ld a3,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23575 + c002ae92: 6694 ld a3,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23583 while (s) { - c002acc4: fae5 bnez a3,c002acb4 + c002ae94: fae5 bnez a3,c002ae84 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24787 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24795 drop_count = 1; - c002acc6: 4605 li a2,1 - c002acc8: bd0d j c002aafa + c002ae96: 4605 li a2,1 + c002ae98: bd0d j c002acca has_with_scope(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23586 JSVarDef *vd = &s->vars[scope_idx]; - c002acca: 6ad0 ld a2,144(a3) - c002accc: 0712 slli a4,a4,0x4 - c002acce: 9732 add a4,a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23580 + c002ae9a: 6ad0 ld a2,144(a3) + c002ae9c: 0712 slli a4,a4,0x4 + c002ae9e: 9732 add a4,a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23588 if (vd->var_name == JS_ATOM__with_) - c002acd0: 4310 lw a2,0(a4) - c002acd2: 41760663 beq a2,s7,c002b0de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23582 + c002aea0: 4310 lw a2,0(a4) + c002aea2: 41760663 beq a2,s7,c002b2ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23590 scope_idx = vd->scope_next; - c002acd6: 4718 lw a4,8(a4) - c002acd8: b7d5 j c002acbc + c002aea6: 4718 lw a4,8(a4) + c002aea8: b7d5 j c002ae8c js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24799 fd->byte_code.buf[fd->last_opcode_pos] = OP_get_array_el; - c002acda: 1609a683 lw a3,352(s3) - c002acde: 1309b783 ld a5,304(s3) - c002ace2: 97b6 add a5,a5,a3 - c002ace4: 00e78023 sb a4,0(a5) - c002ace8: bfb5 j c002ac64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24813 + c002aeaa: 1609a683 lw a3,352(s3) + c002aeae: 1309b783 ld a5,304(s3) + c002aeb2: 97b6 add a5,a5,a3 + c002aeb4: 00e78023 sb a4,0(a5) + c002aeb8: bfb5 j c002ae34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24821 } else if (call_type == FUNC_CALL_SUPER_CTOR) { - c002acea: 4789 li a5,2 - c002acec: 08f91563 bne s2,a5,c002ad76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24814 + c002aeba: 4789 li a5,2 + c002aebc: 08f91563 bne s2,a5,c002af46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24822 emit_op(s, OP_scope_get_var); - c002acf0: 0b800593 li a1,184 - c002acf4: 8522 mv a0,s0 - c002acf6: f46da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24815 + c002aec0: 0b800593 li a1,184 + c002aec4: 8522 mv a0,s0 + c002aec6: e64da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24823 emit_atom(s, JS_ATOM_this_active_func); - c002acfa: 07300593 li a1,115 - c002acfe: 8522 mv a0,s0 - c002ad00: feedc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24816 + c002aeca: 07300593 li a1,115 + c002aece: 8522 mv a0,s0 + c002aed0: f0cdc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24824 emit_u16(s, 0); - c002ad04: 4581 li a1,0 - c002ad06: 8522 mv a0,s0 - c002ad08: e02da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24818 + c002aed4: 4581 li a1,0 + c002aed6: 8522 mv a0,s0 + c002aed8: d20da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24826 emit_op(s, OP_get_super); - c002ad0c: 03400593 li a1,52 - c002ad10: 8522 mv a0,s0 - c002ad12: f2ada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24820 + c002aedc: 03400593 li a1,52 + c002aee0: 8522 mv a0,s0 + c002aee2: e48da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24828 emit_op(s, OP_scope_get_var); - c002ad16: 0b800593 li a1,184 - c002ad1a: 8522 mv a0,s0 - c002ad1c: f20da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24821 + c002aee6: 0b800593 li a1,184 + c002aeea: 8522 mv a0,s0 + c002aeec: e3eda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24829 emit_atom(s, JS_ATOM_new_target); - c002ad20: 07200593 li a1,114 - c002ad24: 8522 mv a0,s0 - c002ad26: fc8dc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24822 + c002aef0: 07200593 li a1,114 + c002aef4: 8522 mv a0,s0 + c002aef6: ee6dc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24830 emit_u16(s, 0); - c002ad2a: 4581 li a1,0 - c002ad2c: 8522 mv a0,s0 - c002ad2e: ddcda0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24828 + c002aefa: 4581 li a1,0 + c002aefc: 8522 mv a0,s0 + c002aefe: cfada0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24836 arg_count = 0; - c002ad32: d002 sw zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24829 + c002af02: d002 sw zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24837 while (s->token.val != ')') { - c002ad34: 02900a93 li s5,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24833 + c002af04: 02900a93 li s5,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24841 if (s->token.val == TOK_ELLIPSIS) - c002ad38: fa500c13 li s8,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24829 + c002af08: fa500c13 li s8,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24837 while (s->token.val != ')') { - c002ad3c: 4c1c lw a5,24(s0) - c002ad3e: 05579a63 bne a5,s5,c002ad92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24945 + c002af0c: 4c1c lw a5,24(s0) + c002af0e: 05579a63 bne a5,s5,c002af62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24953 if (next_token(s)) - c002ad42: 8522 mv a0,s0 - c002ad44: e53fb0ef jal ra,c0026b96 - c002ad48: e2051463 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24948 + c002af12: 8522 mv a0,s0 + c002af14: e53fb0ef jal ra,c0026d66 + c002af18: e2051463 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24956 switch(opcode) { - c002ad4c: 04100793 li a5,65 - c002ad50: 1ef48263 beq s1,a5,c002af34 - c002ad54: 1c97c463 blt a5,s1,c002af1c - c002ad58: 03100793 li a5,49 - c002ad5c: dcf489e3 beq s1,a5,c002ab2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24963 + c002af1c: 04100793 li a5,65 + c002af20: 1ef48263 beq s1,a5,c002b104 + c002af24: 1c97c463 blt a5,s1,c002b0ec + c002af28: 03100793 li a5,49 + c002af2c: dcf489e3 beq s1,a5,c002acfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24971 if (call_type == FUNC_CALL_SUPER_CTOR) { - c002ad60: 4789 li a5,2 - c002ad62: 1ef91163 bne s2,a5,c002af44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24964 + c002af30: 4789 li a5,2 + c002af32: 1ef91163 bne s2,a5,c002b114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24972 emit_op(s, OP_call_constructor); - c002ad66: 02100593 li a1,33 - c002ad6a: 8522 mv a0,s0 - c002ad6c: ed0da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24965 + c002af36: 02100593 li a1,33 + c002af3a: 8522 mv a0,s0 + c002af3c: deeda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24973 emit_u16(s, arg_count); - c002ad70: 02015583 lhu a1,32(sp) - c002ad74: a0d5 j c002ae58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24823 + c002af40: 02015583 lhu a1,32(sp) + c002af44: a0d5 j c002b028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24831 } else if (call_type == FUNC_CALL_NEW) { - c002ad76: 4785 li a5,1 - c002ad78: 00f91b63 bne s2,a5,c002ad8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24824 + c002af46: 4785 li a5,1 + c002af48: 00f91b63 bne s2,a5,c002af5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24832 emit_op(s, OP_dup); /* new.target = function */ - c002ad7c: 45c5 li a1,17 - c002ad7e: 8522 mv a0,s0 - c002ad80: ebcda0ef jal ra,c000543c - c002ad84: b77d j c002ad32 - c002ad86: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24772 + c002af4c: 45c5 li a1,17 + c002af4e: 8522 mv a0,s0 + c002af50: ddada0ef jal ra,c000552a + c002af54: b77d j c002af02 + c002af56: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24780 opcode = OP_eval; - c002ad88: 03100493 li s1,49 - c002ad8c: b75d j c002ad32 - c002ad8e: 4901 li s2,0 - c002ad90: b74d j c002ad32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24830 + c002af58: 03100493 li s1,49 + c002af5c: b75d j c002af02 + c002af5e: 4901 li s2,0 + c002af60: b74d j c002af02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24838 if (arg_count >= 65535) { - c002ad92: 5702 lw a4,32(sp) - c002ad94: 00eb5763 bge s6,a4,c002ada2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24831 + c002af62: 5702 lw a4,32(sp) + c002af64: 00eb5763 bge s6,a4,c002af72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24839 return js_parse_error(s, "Too many call arguments"); - c002ad98: 00035597 auipc a1,0x35 - c002ad9c: cc858593 addi a1,a1,-824 # c005fa60 - c002ada0: b301 j c002aaa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24833 + c002af68: 00035597 auipc a1,0x35 + c002af6c: d5858593 addi a1,a1,-680 # c005fcc0 + c002af70: b301 j c002ac70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24841 if (s->token.val == TOK_ELLIPSIS) - c002ada2: 39878d63 beq a5,s8,c002b13c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24835 + c002af72: 39878d63 beq a5,s8,c002b30c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24843 if (js_parse_assign_expr(s)) - c002ada6: 8522 mv a0,s0 - c002ada8: 02f020ef jal ra,c002d5d6 - c002adac: dc051263 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24837 + c002af76: 8522 mv a0,s0 + c002af78: 02f020ef jal ra,c002d7a6 + c002af7c: dc051263 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24845 arg_count++; - c002adb0: 5782 lw a5,32(sp) - c002adb2: 2785 addiw a5,a5,1 - c002adb4: d03e sw a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24838 + c002af80: 5782 lw a5,32(sp) + c002af82: 2785 addiw a5,a5,1 + c002af84: d03e sw a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24846 if (s->token.val == ')') - c002adb6: 4c1c lw a5,24(s0) - c002adb8: f95785e3 beq a5,s5,c002ad42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24841 + c002af86: 4c1c lw a5,24(s0) + c002af88: f95785e3 beq a5,s5,c002af12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24849 if (js_parse_expect(s, ',')) - c002adbc: 02c00593 li a1,44 - c002adc0: 8522 mv a0,s0 - c002adc2: d20fd0ef jal ra,c00282e2 - c002adc6: d93d beqz a0,c002ad3c - c002adc8: da8ff06f j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24886 + c002af8c: 02c00593 li a1,44 + c002af90: 8522 mv a0,s0 + c002af92: d20fd0ef jal ra,c00284b2 + c002af96: d93d beqz a0,c002af0c + c002af98: da8ff06f j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24894 if (js_parse_assign_expr(s)) - c002adcc: 00b020ef jal ra,c002d5d6 - c002add0: da051063 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24889 + c002af9c: 00b020ef jal ra,c002d7a6 + c002afa0: da051063 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24897 emit_op(s, OP_define_array_el); - c002add4: 05100593 li a1,81 - c002add8: 8522 mv a0,s0 - c002adda: e62da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24890 + c002afa4: 05100593 li a1,81 + c002afa8: 8522 mv a0,s0 + c002afaa: d80da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24898 emit_op(s, OP_inc); - c002adde: 09000593 li a1,144 - c002ade2: a80d j c002ae14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24895 + c002afae: 09000593 li a1,144 + c002afb2: a80d j c002afe4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24903 if (js_parse_expect(s, ',')) - c002ade4: 02c00593 li a1,44 - c002ade8: 8522 mv a0,s0 - c002adea: cf8fd0ef jal ra,c00282e2 - c002adee: d8051163 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24851 + c002afb4: 02c00593 li a1,44 + c002afb8: 8522 mv a0,s0 + c002afba: cf8fd0ef jal ra,c00284b2 + c002afbe: d8051163 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24859 while (s->token.val != ')') { - c002adf2: 4c1c lw a5,24(s0) - c002adf4: 03578663 beq a5,s5,c002ae20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24853 + c002afc2: 4c1c lw a5,24(s0) + c002afc4: 03578663 beq a5,s5,c002aff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24861 if (next_token(s)) - c002adf8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24852 + c002afc8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24860 if (s->token.val == TOK_ELLIPSIS) { - c002adfa: fd8799e3 bne a5,s8,c002adcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24853 + c002afca: fd8799e3 bne a5,s8,c002af9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24861 if (next_token(s)) - c002adfe: d99fb0ef jal ra,c0026b96 - c002ae02: d6051763 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24855 + c002afce: d99fb0ef jal ra,c0026d66 + c002afd2: d6051763 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24863 if (js_parse_assign_expr(s)) - c002ae06: 8522 mv a0,s0 - c002ae08: 7ce020ef jal ra,c002d5d6 - c002ae0c: d6051263 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24859 + c002afd6: 8522 mv a0,s0 + c002afd8: 7ce020ef jal ra,c002d7a6 + c002afdc: d6051263 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24867 emit_op(s, OP_append); - c002ae10: 05200593 li a1,82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24890 + c002afe0: 05200593 li a1,82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24898 emit_op(s, OP_inc); - c002ae14: 8522 mv a0,s0 - c002ae16: e26da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24892 + c002afe4: 8522 mv a0,s0 + c002afe6: d44da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24900 if (s->token.val == ')') - c002ae1a: 4c1c lw a5,24(s0) - c002ae1c: fd5794e3 bne a5,s5,c002ade4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24898 + c002afea: 4c1c lw a5,24(s0) + c002afec: fd5794e3 bne a5,s5,c002afb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24906 if (next_token(s)) - c002ae20: 8522 mv a0,s0 - c002ae22: d75fb0ef jal ra,c0026b96 - c002ae26: d4051563 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24901 + c002aff0: 8522 mv a0,s0 + c002aff2: d75fb0ef jal ra,c0026d66 + c002aff6: d4051563 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24909 emit_op(s, OP_drop); - c002ae2a: 45b9 li a1,14 - c002ae2c: 8522 mv a0,s0 - c002ae2e: e0eda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24904 + c002affa: 45b9 li a1,14 + c002affc: 8522 mv a0,s0 + c002affe: d2cda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24912 switch(opcode) { - c002ae32: 04100793 li a5,65 - c002ae36: 06f48563 beq s1,a5,c002aea0 - c002ae3a: 0497c763 blt a5,s1,c002ae88 - c002ae3e: 03100793 li a5,49 - c002ae42: 08f48063 beq s1,a5,c002aec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24920 + c002b002: 04100793 li a5,65 + c002b006: 06f48563 beq s1,a5,c002b070 + c002b00a: 0497c763 blt a5,s1,c002b058 + c002b00e: 03100793 li a5,49 + c002b012: 08f48063 beq s1,a5,c002b092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24928 if (call_type == FUNC_CALL_SUPER_CTOR) { - c002ae46: 4789 li a5,2 - c002ae48: 08f91d63 bne s2,a5,c002aee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24921 + c002b016: 4789 li a5,2 + c002b018: 08f91d63 bne s2,a5,c002b0b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24929 emit_op(s, OP_apply); - c002ae4c: 02700593 li a1,39 - c002ae50: 8522 mv a0,s0 - c002ae52: deada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24922 + c002b01c: 02700593 li a1,39 + c002b020: 8522 mv a0,s0 + c002b022: d08da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24930 emit_u16(s, 1); - c002ae56: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24965 + c002b026: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24973 emit_u16(s, arg_count); - c002ae58: 8522 mv a0,s0 - c002ae5a: cb0da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24968 + c002b028: 8522 mv a0,s0 + c002b02a: bceda0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24976 emit_op(s, OP_dup); - c002ae5e: 8522 mv a0,s0 - c002ae60: 45c5 li a1,17 - c002ae62: ddada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24969 + c002b02e: 8522 mv a0,s0 + c002b030: 45c5 li a1,17 + c002b032: cf8da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24977 emit_op(s, OP_scope_put_var_init); - c002ae66: 8522 mv a0,s0 - c002ae68: 0bd00593 li a1,189 - c002ae6c: dd0da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24970 + c002b036: 8522 mv a0,s0 + c002b038: 0bd00593 li a1,189 + c002b03c: ceeda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24978 emit_atom(s, JS_ATOM_this); - c002ae70: 8522 mv a0,s0 - c002ae72: 45a1 li a1,8 - c002ae74: e7adc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24971 + c002b040: 8522 mv a0,s0 + c002b042: 45a1 li a1,8 + c002b044: d98dc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24979 emit_u16(s, 0); - c002ae78: 8522 mv a0,s0 - c002ae7a: 4581 li a1,0 - c002ae7c: c8eda0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24973 + c002b048: 8522 mv a0,s0 + c002b04a: 4581 li a1,0 + c002b04c: bacda0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24981 emit_class_field_init(s); - c002ae80: 8522 mv a0,s0 - c002ae82: e93ec0ef jal ra,c0017d14 - c002ae86: a899 j c002aedc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24904 + c002b050: 8522 mv a0,s0 + c002b052: e93ec0ef jal ra,c0017ee4 + c002b056: a899 j c002b0ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24912 switch(opcode) { - c002ae88: 0bc00793 li a5,188 - c002ae8c: 00f48a63 beq s1,a5,c002aea0 - c002ae90: 0bf00793 li a5,191 - c002ae94: 00f48663 beq s1,a5,c002aea0 - c002ae98: 04700793 li a5,71 - c002ae9c: faf495e3 bne s1,a5,c002ae46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24910 + c002b058: 0bc00793 li a5,188 + c002b05c: 00f48a63 beq s1,a5,c002b070 + c002b060: 0bf00793 li a5,191 + c002b064: 00f48663 beq s1,a5,c002b070 + c002b068: 04700793 li a5,71 + c002b06c: faf495e3 bne s1,a5,c002b016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24918 emit_op(s, OP_perm3); - c002aea0: 45e1 li a1,24 - c002aea2: 8522 mv a0,s0 - c002aea4: d98da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24911 + c002b070: 45e1 li a1,24 + c002b072: 8522 mv a0,s0 + c002b074: cb6da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24919 emit_op(s, OP_apply); - c002aea8: 02700593 li a1,39 - c002aeac: 8522 mv a0,s0 - c002aeae: d8eda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24912 + c002b078: 02700593 li a1,39 + c002b07c: 8522 mv a0,s0 + c002b07e: cacda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24920 emit_u16(s, call_type == FUNC_CALL_NEW); - c002aeb2: fff90593 addi a1,s2,-1 - c002aeb6: 0015b593 seqz a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24979 + c002b082: fff90593 addi a1,s2,-1 + c002b086: 0015b593 seqz a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24987 emit_u16(s, arg_count); - c002aeba: 8522 mv a0,s0 - c002aebc: c4eda0ef jal ra,c000530a - c002aec0: a831 j c002aedc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24915 + c002b08a: 8522 mv a0,s0 + c002b08c: b6cda0ef jal ra,c00053f8 + c002b090: a831 j c002b0ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24923 emit_op(s, OP_apply_eval); - c002aec2: 03200593 li a1,50 - c002aec6: 8522 mv a0,s0 - c002aec8: d74da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24959 + c002b092: 03200593 li a1,50 + c002b096: 8522 mv a0,s0 + c002b098: c92da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24967 emit_u16(s, fd->scope_level); - c002aecc: 0e09d583 lhu a1,224(s3) - c002aed0: 8522 mv a0,s0 - c002aed2: c38da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24960 + c002b09c: 0e09d583 lhu a1,224(s3) + c002b0a0: 8522 mv a0,s0 + c002b0a2: b56da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24968 fd->has_eval_call = TRUE; - c002aed6: 4785 li a5,1 - c002aed8: 04f9ae23 sw a5,92(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24984 (discriminator 7) + c002b0a6: 4785 li a5,1 + c002b0a8: 04f9ae23 sw a5,92(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24992 (discriminator 7) call_type = FUNC_CALL_NORMAL; - c002aedc: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24700 (discriminator 7) + c002b0ac: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24708 (discriminator 7) } else if (s->token.val == '(' && accept_lparen) { - c002aede: c3eff06f j c002a31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24930 + c002b0ae: c3eff06f j c002a4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24938 } else if (call_type == FUNC_CALL_NEW) { - c002aee2: 4785 li a5,1 - c002aee4: 00f91d63 bne s2,a5,c002aefe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24932 + c002b0b2: 4785 li a5,1 + c002b0b4: 00f91d63 bne s2,a5,c002b0ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24940 emit_op(s, OP_perm3); - c002aee8: 45e1 li a1,24 - c002aeea: 8522 mv a0,s0 - c002aeec: d50da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24933 + c002b0b8: 45e1 li a1,24 + c002b0ba: 8522 mv a0,s0 + c002b0bc: c6eda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24941 emit_op(s, OP_apply); - c002aef0: 02700593 li a1,39 - c002aef4: 8522 mv a0,s0 - c002aef6: d46da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24934 + c002b0c0: 02700593 li a1,39 + c002b0c4: 8522 mv a0,s0 + c002b0c6: c64da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24942 emit_u16(s, 1); - c002aefa: 4585 li a1,1 - c002aefc: bf7d j c002aeba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24937 + c002b0ca: 4585 li a1,1 + c002b0cc: bf7d j c002b08a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24945 emit_op(s, OP_undefined); - c002aefe: 4599 li a1,6 - c002af00: 8522 mv a0,s0 - c002af02: d3ada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24938 + c002b0ce: 4599 li a1,6 + c002b0d0: 8522 mv a0,s0 + c002b0d2: c58da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24946 emit_op(s, OP_swap); - c002af06: 45ed li a1,27 - c002af08: 8522 mv a0,s0 - c002af0a: d32da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24939 + c002b0d6: 45ed li a1,27 + c002b0d8: 8522 mv a0,s0 + c002b0da: c50da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24947 emit_op(s, OP_apply); - c002af0e: 02700593 li a1,39 - c002af12: 8522 mv a0,s0 - c002af14: d28da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24940 - emit_u16(s, 0); - c002af18: 4581 li a1,0 - c002af1a: b745 j c002aeba + c002b0de: 02700593 li a1,39 + c002b0e2: 8522 mv a0,s0 + c002b0e4: c46da0ef jal ra,c000552a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24948 + emit_u16(s, 0); + c002b0e8: 4581 li a1,0 + c002b0ea: b745 j c002b08a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24956 switch(opcode) { - c002af1c: 0bc00793 li a5,188 - c002af20: 00f48a63 beq s1,a5,c002af34 - c002af24: 0bf00793 li a5,191 - c002af28: 00f48663 beq s1,a5,c002af34 - c002af2c: 04700793 li a5,71 - c002af30: e2f498e3 bne s1,a5,c002ad60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24953 + c002b0ec: 0bc00793 li a5,188 + c002b0f0: 00f48a63 beq s1,a5,c002b104 + c002b0f4: 0bf00793 li a5,191 + c002b0f8: 00f48663 beq s1,a5,c002b104 + c002b0fc: 04700793 li a5,71 + c002b100: e2f498e3 bne s1,a5,c002af30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24961 emit_op(s, OP_call_method); - c002af34: 02400593 li a1,36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24978 + c002b104: 02400593 li a1,36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24986 emit_op(s, OP_call); - c002af38: 8522 mv a0,s0 - c002af3a: d02da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24979 + c002b108: 8522 mv a0,s0 + c002b10a: c20da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24987 emit_u16(s, arg_count); - c002af3e: 02015583 lhu a1,32(sp) - c002af42: bfa5 j c002aeba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24974 + c002b10e: 02015583 lhu a1,32(sp) + c002b112: bfa5 j c002b08a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24982 } else if (call_type == FUNC_CALL_NEW) { - c002af44: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24975 + c002b114: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24983 emit_op(s, OP_call_constructor); - c002af46: 02100593 li a1,33 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24974 + c002b116: 02100593 li a1,33 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24982 } else if (call_type == FUNC_CALL_NEW) { - c002af4a: fef907e3 beq s2,a5,c002af38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24978 + c002b11a: fef907e3 beq s2,a5,c002b108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24986 emit_op(s, OP_call); - c002af4e: 02200593 li a1,34 - c002af52: b7dd j c002af38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24985 + c002b11e: 02200593 li a1,34 + c002b122: b7dd j c002b108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24993 } else if (s->token.val == '.') { - c002af54: 02e00713 li a4,46 - c002af58: 0ae79f63 bne a5,a4,c002b016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24986 - if (next_token(s)) - c002af5c: 8522 mv a0,s0 - c002af5e: c39fb0ef jal ra,c0026b96 - c002af62: 84aa mv s1,a0 - c002af64: bc050f63 beqz a0,c002a342 - c002af68: c08ff06f j c002a370 + c002b124: 02e00713 li a4,46 + c002b128: 0ae79f63 bne a5,a4,c002b1e6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24994 + if (next_token(s)) + c002b12c: 8522 mv a0,s0 + c002b12e: c39fb0ef jal ra,c0026d66 + c002b132: 84aa mv s1,a0 + c002b134: bc050f63 beqz a0,c002a512 + c002b138: c08ff06f j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25002 if (has_optional_chain) { - c002af6c: c491 beqz s1,c002af78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24995 + c002b13c: c491 beqz s1,c002b148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25003 optional_chain_test(s, &optional_chaining_label, 1); - c002af6e: 4605 li a2,1 - c002af70: 086c addi a1,sp,28 - c002af72: 8522 mv a0,s0 - c002af74: fe3ec0ef jal ra,c0017f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24997 + c002b13e: 4605 li a2,1 + c002b140: 086c addi a1,sp,28 + c002b142: 8522 mv a0,s0 + c002b144: fe3ec0ef jal ra,c0018126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25005 emit_op(s, OP_scope_get_private_field); - c002af78: 0bf00593 li a1,191 - c002af7c: 8522 mv a0,s0 - c002af7e: cbeda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24998 + c002b148: 0bf00593 li a1,191 + c002b14c: 8522 mv a0,s0 + c002b14e: bdcda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25006 emit_atom(s, s->token.u.ident.atom); - c002af82: 540c lw a1,40(s0) - c002af84: 8522 mv a0,s0 - c002af86: d68dc0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24999 + c002b152: 540c lw a1,40(s0) + c002b154: 8522 mv a0,s0 + c002b156: c86dc0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25007 emit_u16(s, s->cur_func->scope_level); - c002af8a: 743c ld a5,104(s0) - c002af8c: 8522 mv a0,s0 - c002af8e: 0e07d583 lhu a1,224(a5) - c002af92: b78da0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25021 + c002b15a: 743c ld a5,104(s0) + c002b15c: 8522 mv a0,s0 + c002b15e: 0e07d583 lhu a1,224(a5) + c002b162: a96da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25029 if (next_token(s)) - c002af96: 8522 mv a0,s0 - c002af98: bfffb0ef jal ra,c0026b96 - c002af9c: b8050063 beqz a0,c002a31c - c002afa0: bd0ff06f j c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25001 + c002b166: 8522 mv a0,s0 + c002b168: bfffb0ef jal ra,c0026d66 + c002b16c: b8050063 beqz a0,c002a4ec + c002b170: bd0ff06f j c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25009 if (!token_is_ident(s->token.val)) { - c002afa4: d02d90ef jal ra,c00044a6 - c002afa8: e511 bnez a0,c002afb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25002 + c002b174: b32d90ef jal ra,c00044a6 + c002b178: e511 bnez a0,c002b184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25010 return js_parse_error(s, "expecting field name"); - c002afaa: 00035597 auipc a1,0x35 - c002afae: afe58593 addi a1,a1,-1282 # c005faa8 - c002afb2: b4fd j c002aaa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25004 + c002b17a: 00035597 auipc a1,0x35 + c002b17e: b8e58593 addi a1,a1,-1138 # c005fd08 + c002b182: b4fd j c002ac70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25012 if (get_prev_opcode(fd) == OP_get_super) { - c002afb4: 854e mv a0,s3 - c002afb6: c58d90ef jal ra,c000440e - c002afba: 03400793 li a5,52 - c002afbe: 02f51c63 bne a0,a5,c002aff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25007 + c002b184: 854e mv a0,s3 + c002b186: a88d90ef jal ra,c000440e + c002b18a: 03400793 li a5,52 + c002b18e: 02f51c63 bne a0,a5,c002b1c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25015 val = JS_AtomToValue(s->ctx, s->token.u.ident.atom); - c002afc2: 540c lw a1,40(s0) - c002afc4: 6008 ld a0,0(s0) - c002afc6: b6dee0ef jal ra,c0019b32 - c002afca: 862e mv a2,a1 - c002afcc: f02a sd a0,32(sp) - c002afce: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25008 + c002b192: 540c lw a1,40(s0) + c002b194: 6008 ld a0,0(s0) + c002b196: b6dee0ef jal ra,c0019d02 + c002b19a: 862e mv a2,a1 + c002b19c: f02a sd a0,32(sp) + c002b19e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25016 ret = emit_push_const(s, val, 1); - c002afd0: 4685 li a3,1 - c002afd2: 85aa mv a1,a0 - c002afd4: 8522 mv a0,s0 - c002afd6: 986ed0ef jal ra,c001815c - c002afda: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25009 + c002b1a0: 4685 li a3,1 + c002b1a2: 85aa mv a1,a0 + c002b1a4: 8522 mv a0,s0 + c002b1a6: 986ed0ef jal ra,c001832c + c002b1aa: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25017 JS_FreeValue(s->ctx, val); - c002afdc: 7582 ld a1,32(sp) - c002afde: 7622 ld a2,40(sp) - c002afe0: 6008 ld a0,0(s0) - c002afe2: b57dc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25010 + c002b1ac: 7582 ld a1,32(sp) + c002b1ae: 7622 ld a2,40(sp) + c002b1b0: 6008 ld a0,0(s0) + c002b1b2: a75dc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25018 if (ret) - c002afe6: b8049563 bnez s1,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25012 + c002b1b6: b8049563 bnez s1,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25020 emit_op(s, OP_get_super_value); - c002afea: 04a00593 li a1,74 - c002afee: 8522 mv a0,s0 - c002aff0: c4cda0ef jal ra,c000543c - c002aff4: b74d j c002af96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25014 + c002b1ba: 04a00593 li a1,74 + c002b1be: 8522 mv a0,s0 + c002b1c0: b6ada0ef jal ra,c000552a + c002b1c4: b74d j c002b166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25022 if (has_optional_chain) { - c002aff6: c491 beqz s1,c002b002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25015 + c002b1c6: c491 beqz s1,c002b1d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25023 optional_chain_test(s, &optional_chaining_label, 1); - c002aff8: 4605 li a2,1 - c002affa: 086c addi a1,sp,28 - c002affc: 8522 mv a0,s0 - c002affe: f59ec0ef jal ra,c0017f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25017 + c002b1c8: 4605 li a2,1 + c002b1ca: 086c addi a1,sp,28 + c002b1cc: 8522 mv a0,s0 + c002b1ce: f59ec0ef jal ra,c0018126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25025 emit_op(s, OP_get_field); - c002b002: 8522 mv a0,s0 - c002b004: 04100593 li a1,65 - c002b008: c34da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25018 + c002b1d2: 8522 mv a0,s0 + c002b1d4: 04100593 li a1,65 + c002b1d8: b52da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25026 emit_atom(s, s->token.u.ident.atom); - c002b00c: 540c lw a1,40(s0) - c002b00e: 8522 mv a0,s0 - c002b010: cdedc0ef jal ra,c00074ee - c002b014: b749 j c002af96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25023 + c002b1dc: 540c lw a1,40(s0) + c002b1de: 8522 mv a0,s0 + c002b1e0: bfcdc0ef jal ra,c00075dc + c002b1e4: b749 j c002b166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25031 } else if (s->token.val == '[') { - c002b016: 05b00713 li a4,91 - c002b01a: 04e79c63 bne a5,a4,c002b072 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24679 + c002b1e6: 05b00713 li a4,91 + c002b1ea: 04e79c63 bne a5,a4,c002b242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24687 BOOL has_optional_chain = FALSE; - c002b01e: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25027 + c002b1ee: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25035 prev_op = get_prev_opcode(fd); - c002b020: 854e mv a0,s3 - c002b022: becd90ef jal ra,c000440e - c002b026: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25028 + c002b1f0: 854e mv a0,s3 + c002b1f2: a1cd90ef jal ra,c000440e + c002b1f6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25036 if (has_optional_chain) { - c002b028: 000a8763 beqz s5,c002b036 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25029 + c002b1f8: 000a8763 beqz s5,c002b206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25037 optional_chain_test(s, &optional_chaining_label, 1); - c002b02c: 4605 li a2,1 - c002b02e: 086c addi a1,sp,28 - c002b030: 8522 mv a0,s0 - c002b032: f25ec0ef jal ra,c0017f56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25031 + c002b1fc: 4605 li a2,1 + c002b1fe: 086c addi a1,sp,28 + c002b200: 8522 mv a0,s0 + c002b202: f25ec0ef jal ra,c0018126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25039 if (next_token(s)) - c002b036: 8522 mv a0,s0 - c002b038: b5ffb0ef jal ra,c0026b96 - c002b03c: b2051a63 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25033 + c002b206: 8522 mv a0,s0 + c002b208: b5ffb0ef jal ra,c0026d66 + c002b20c: b2051a63 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25041 if (js_parse_expr(s)) - c002b040: 8522 mv a0,s0 - c002b042: 328020ef jal ra,c002d36a - c002b046: b2051563 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25035 + c002b210: 8522 mv a0,s0 + c002b212: 328020ef jal ra,c002d53a + c002b216: b2051563 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25043 if (js_parse_expect(s, ']')) - c002b04a: 05d00593 li a1,93 - c002b04e: 8522 mv a0,s0 - c002b050: a92fd0ef jal ra,c00282e2 - c002b054: b0051e63 bnez a0,c002a370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25037 + c002b21a: 05d00593 li a1,93 + c002b21e: 8522 mv a0,s0 + c002b220: a92fd0ef jal ra,c00284b2 + c002b224: b0051e63 bnez a0,c002a540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25045 if (prev_op == OP_get_super) { - c002b058: 03400793 li a5,52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25038 + c002b228: 03400793 li a5,52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25046 emit_op(s, OP_get_super_value); - c002b05c: 04a00593 li a1,74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25037 + c002b22c: 04a00593 li a1,74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25045 if (prev_op == OP_get_super) { - c002b060: 00f48463 beq s1,a5,c002b068 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25040 + c002b230: 00f48463 beq s1,a5,c002b238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25048 emit_op(s, OP_get_array_el); - c002b064: 04700593 li a1,71 - c002b068: 8522 mv a0,s0 - c002b06a: bd2da0ef jal ra,c000543c - c002b06e: aaeff06f j c002a31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25046 + c002b234: 04700593 li a1,71 + c002b238: 8522 mv a0,s0 + c002b23a: af0da0ef jal ra,c000552a + c002b23e: aaeff06f j c002a4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25054 if (optional_chaining_label >= 0) { - c002b072: 4972 lw s2,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25063 + c002b242: 4972 lw s2,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25071 return 0; - c002b074: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25046 + c002b244: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25054 if (optional_chaining_label >= 0) { - c002b076: ae094e63 bltz s2,c002a372 + c002b246: ae094e63 bltz s2,c002a542 emit_label_raw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21631 emit_u8(s, OP_label); - c002b07a: 0b600593 li a1,182 - c002b07e: 8522 mv a0,s0 - c002b080: fd9d90ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21624 + c002b24a: 0b600593 li a1,182 + c002b24e: 8522 mv a0,s0 + c002b250: e09d90ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21632 emit_u32(s, label); - c002b084: 85ca mv a1,s2 - c002b086: 8522 mv a0,s0 - c002b088: d4ada0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21625 + c002b254: 85ca mv a1,s2 + c002b256: 8522 mv a0,s0 + c002b258: c68da0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21633 s->cur_func->label_slots[label].pos = s->cur_func->byte_code.size; - c002b08c: 46e1 li a3,24 - c002b08e: 02d90933 mul s2,s2,a3 - c002b092: 7438 ld a4,104(s0) + c002b25c: 46e1 li a3,24 + c002b25e: 02d90933 mul s2,s2,a3 + c002b262: 7438 ld a4,104(s0) js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25060 opcode = get_prev_opcode(fd); - c002b094: 854e mv a0,s3 + c002b264: 854e mv a0,s3 emit_label_raw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:21633 s->cur_func->label_slots[label].pos = s->cur_func->byte_code.size; - c002b096: 17073783 ld a5,368(a4) - c002b09a: 993e add s2,s2,a5 - c002b09c: 13873783 ld a5,312(a4) - c002b0a0: 00f92223 sw a5,4(s2) + c002b266: 17073783 ld a5,368(a4) + c002b26a: 993e add s2,s2,a5 + c002b26c: 13873783 ld a5,312(a4) + c002b270: 00f92223 sw a5,4(s2) js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25060 opcode = get_prev_opcode(fd); - c002b0a4: b6ad90ef jal ra,c000440e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25053 + c002b274: 99ad90ef jal ra,c000440e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25061 if (opcode == OP_get_field || opcode == OP_get_array_el) { - c002b0a8: 04100793 li a5,65 - c002b0ac: 00f50d63 beq a0,a5,c002b0c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25053 (discriminator 1) - c002b0b0: 04700793 li a5,71 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25057 (discriminator 1) + c002b278: 04100793 li a5,65 + c002b27c: 00f50d63 beq a0,a5,c002b296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25061 (discriminator 1) + c002b280: 04700793 li a5,71 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25065 (discriminator 1) opcode = OP_get_array_el_opt_chain; - c002b0b4: 0c400713 li a4,196 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25053 (discriminator 1) + c002b284: 0c400713 li a4,196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25061 (discriminator 1) if (opcode == OP_get_field || opcode == OP_get_array_el) { - c002b0b8: 00f50963 beq a0,a5,c002b0ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25060 + c002b288: 00f50963 beq a0,a5,c002b29a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25068 fd->last_opcode_pos = -1; - c002b0bc: 57fd li a5,-1 - c002b0be: 16f9a023 sw a5,352(s3) - c002b0c2: ab0ff06f j c002a372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25055 + c002b28c: 57fd li a5,-1 + c002b28e: 16f9a023 sw a5,352(s3) + c002b292: ab0ff06f j c002a542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25063 opcode = OP_get_field_opt_chain; - c002b0c6: 0c300713 li a4,195 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25058 + c002b296: 0c300713 li a4,195 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25066 fd->byte_code.buf[fd->last_opcode_pos] = opcode; - c002b0ca: 1609a683 lw a3,352(s3) - c002b0ce: 1309b783 ld a5,304(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25063 + c002b29a: 1609a683 lw a3,352(s3) + c002b29e: 1309b783 ld a5,304(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25071 return 0; - c002b0d2: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25058 + c002b2a2: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25066 fd->byte_code.buf[fd->last_opcode_pos] = opcode; - c002b0d4: 97b6 add a5,a5,a3 - c002b0d6: 00e78023 sb a4,0(a5) - c002b0da: a98ff06f j c002a372 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24784 + c002b2a4: 97b6 add a5,a5,a3 + c002b2a6: 00e78023 sb a4,0(a5) + c002b2aa: a98ff06f j c002a542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24792 fd->byte_code.buf[fd->last_opcode_pos] = opcode; - c002b0de: fbc00713 li a4,-68 - c002b0e2: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24787 + c002b2ae: fbc00713 li a4,-68 + c002b2b2: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24795 drop_count = 1; - c002b0e6: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24783 + c002b2b6: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24791 opcode = OP_scope_get_ref; - c002b0e8: 0bc00493 li s1,188 - c002b0ec: b439 j c002aafa + c002b2b8: 0bc00493 li s1,188 + c002b2bc: b439 j c002acca js_parse_array_literal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23492 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23500 if (need_length) { - c002b0ee: ee048b63 beqz s1,c002a7e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23495 + c002b2be: ee048b63 beqz s1,c002a9b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23503 emit_op(s, OP_dup); - c002b0f2: 45c5 li a1,17 - c002b0f4: 8522 mv a0,s0 - c002b0f6: b46da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23496 + c002b2c2: 45c5 li a1,17 + c002b2c4: 8522 mv a0,s0 + c002b2c6: a64da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23504 emit_op(s, OP_push_i32); - c002b0fa: 4585 li a1,1 - c002b0fc: 8522 mv a0,s0 - c002b0fe: b3eda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23497 + c002b2ca: 4585 li a1,1 + c002b2cc: 8522 mv a0,s0 + c002b2ce: a5cda0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23505 emit_u32(s, idx); - c002b102: 85ca mv a1,s2 - c002b104: 8522 mv a0,s0 - c002b106: cccda0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23562 + c002b2d2: 85ca mv a1,s2 + c002b2d4: 8522 mv a0,s0 + c002b2d6: beada0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23570 emit_op(s, OP_put_field); - c002b10a: 8522 mv a0,s0 - c002b10c: 04300593 li a1,67 - c002b110: b2cda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23563 + c002b2da: 8522 mv a0,s0 + c002b2dc: 04300593 li a1,67 + c002b2e0: a4ada0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23571 emit_atom(s, JS_ATOM_length); - c002b114: 03000593 li a1,48 - c002b118: 8522 mv a0,s0 - c002b11a: bd4dc0ef jal ra,c00074ee - c002b11e: ec6ff06f j c002a7e4 + c002b2e4: 03000593 li a1,48 + c002b2e8: 8522 mv a0,s0 + c002b2ea: af2dc0ef jal ra,c00075dc + c002b2ee: ec6ff06f j c002a9b4 js_parse_postfix_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24948 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24956 switch(opcode) { - c002b122: 0bc00793 li a5,188 - c002b126: e0f487e3 beq s1,a5,c002af34 - c002b12a: 0bf00793 li a5,191 - c002b12e: e0f483e3 beq s1,a5,c002af34 - c002b132: 04700793 li a5,71 - c002b136: e0f49ce3 bne s1,a5,c002af4e - c002b13a: bbed j c002af34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24845 + c002b2f2: 0bc00793 li a5,188 + c002b2f6: e0f487e3 beq s1,a5,c002b104 + c002b2fa: 0bf00793 li a5,191 + c002b2fe: e0f483e3 beq s1,a5,c002b104 + c002b302: 04700793 li a5,71 + c002b306: e0f49ce3 bne s1,a5,c002b11e + c002b30a: bbed j c002b104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24853 emit_op(s, OP_array_from); - c002b13c: 02600593 li a1,38 - c002b140: 8522 mv a0,s0 - c002b142: afada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24846 + c002b30c: 02600593 li a1,38 + c002b310: 8522 mv a0,s0 + c002b312: a18da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24854 emit_u16(s, arg_count); - c002b146: 02015583 lhu a1,32(sp) - c002b14a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24851 + c002b316: 02015583 lhu a1,32(sp) + c002b31a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24859 while (s->token.val != ')') { - c002b14c: 02900a93 li s5,41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24846 + c002b31c: 02900a93 li s5,41 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24854 emit_u16(s, arg_count); - c002b150: 9bada0ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24847 + c002b320: 8d8da0ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24855 emit_op(s, OP_push_i32); - c002b154: 4585 li a1,1 - c002b156: 8522 mv a0,s0 - c002b158: ae4da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24848 + c002b324: 4585 li a1,1 + c002b326: 8522 mv a0,s0 + c002b328: a02da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24856 emit_u32(s, arg_count); - c002b15c: 5582 lw a1,32(sp) - c002b15e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24852 + c002b32c: 5582 lw a1,32(sp) + c002b32e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24860 if (s->token.val == TOK_ELLIPSIS) { - c002b160: fa500c13 li s8,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24848 + c002b330: fa500c13 li s8,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24856 emit_u32(s, arg_count); - c002b164: c6eda0ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24851 + c002b334: b8cda0ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24859 while (s->token.val != ')') { - c002b168: b169 j c002adf2 + c002b338: b169 j c002afc2 -00000000c002b16a : +00000000c002b33a : js_parse_unary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25160 -{ - c002b16a: 715d addi sp,sp,-80 - c002b16c: e0a2 sd s0,64(sp) - c002b16e: e486 sd ra,72(sp) - c002b170: fc26 sd s1,56(sp) - c002b172: f84a sd s2,48(sp) - c002b174: f44e sd s3,40(sp) - c002b176: f052 sd s4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25163 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25168 +{ + c002b33a: 715d addi sp,sp,-80 + c002b33c: e0a2 sd s0,64(sp) + c002b33e: e486 sd ra,72(sp) + c002b340: fc26 sd s1,56(sp) + c002b342: f84a sd s2,48(sp) + c002b344: f44e sd s3,40(sp) + c002b346: f052 sd s4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25171 switch(s->token.val) { - c002b178: 01852903 lw s2,24(a0) - c002b17c: fb500793 li a5,-75 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25160 + c002b348: 01852903 lw s2,24(a0) + c002b34c: fb500793 li a5,-75 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25168 { - c002b180: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25163 + c002b350: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25171 switch(s->token.val) { - c002b182: 18f90d63 beq s2,a5,c002b31c - c002b186: fb600793 li a5,-74 - c002b18a: 84ae mv s1,a1 - c002b18c: 06f95f63 bge s2,a5,c002b20a - c002b190: fb300793 li a5,-77 - c002b194: 1cf90463 beq s2,a5,c002b35c - c002b198: fb400793 li a5,-76 - c002b19c: 08f90d63 beq s2,a5,c002b236 - c002b1a0: 06c9079b addiw a5,s2,108 - c002b1a4: 4705 li a4,1 - c002b1a6: 10f77563 bgeu a4,a5,c002b2b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25249 + c002b352: 18f90d63 beq s2,a5,c002b4ec + c002b356: fb600793 li a5,-74 + c002b35a: 84ae mv s1,a1 + c002b35c: 06f95f63 bge s2,a5,c002b3da + c002b360: fb300793 li a5,-77 + c002b364: 1cf90463 beq s2,a5,c002b52c + c002b368: fb400793 li a5,-76 + c002b36c: 08f90d63 beq s2,a5,c002b406 + c002b370: 06c9079b addiw a5,s2,108 + c002b374: 4705 li a4,1 + c002b376: 10f77563 bgeu a4,a5,c002b480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25257 if (js_parse_postfix_expr(s, PF_POSTFIX_CALL)) - c002b1aa: 4589 li a1,2 - c002b1ac: 8522 mv a0,s0 - c002b1ae: 804ff0ef jal ra,c002a1b2 - c002b1b2: e551 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25251 + c002b37a: 4589 li a1,2 + c002b37c: 8522 mv a0,s0 + c002b37e: 804ff0ef jal ra,c002a382 + c002b382: e551 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25259 if (!s->got_lf && - c002b1b4: 443c lw a5,72(s0) - c002b1b6: 14079063 bnez a5,c002b2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25252 (discriminator 1) + c002b384: 443c lw a5,72(s0) + c002b386: 14079063 bnez a5,c002b4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25260 (discriminator 1) (s->token.val == TOK_DEC || s->token.val == TOK_INC)) { - c002b1ba: 01842903 lw s2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25251 (discriminator 1) + c002b38a: 01842903 lw s2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25259 (discriminator 1) if (!s->got_lf && - c002b1be: 4785 li a5,1 - c002b1c0: 06c9071b addiw a4,s2,108 - c002b1c4: 12e7e963 bltu a5,a4,c002b2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25256 + c002b38e: 4785 li a5,1 + c002b390: 06c9071b addiw a4,s2,108 + c002b394: 12e7e963 bltu a5,a4,c002b4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25264 if (get_lvalue(s, &opcode, &scope, &name, &label, NULL, TRUE, op)) - c002b1c8: 88ca mv a7,s2 - c002b1ca: 4805 li a6,1 - c002b1cc: 4781 li a5,0 - c002b1ce: 0078 addi a4,sp,12 - c002b1d0: 0814 addi a3,sp,16 - c002b1d2: 0030 addi a2,sp,8 - c002b1d4: 004c addi a1,sp,4 - c002b1d6: 8522 mv a0,s0 - c002b1d8: fa2fc0ef jal ra,c002797a - c002b1dc: e12d bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25258 + c002b398: 88ca mv a7,s2 + c002b39a: 4805 li a6,1 + c002b39c: 4781 li a5,0 + c002b39e: 0078 addi a4,sp,12 + c002b3a0: 0814 addi a3,sp,16 + c002b3a2: 0030 addi a2,sp,8 + c002b3a4: 004c addi a1,sp,4 + c002b3a6: 8522 mv a0,s0 + c002b3a8: fa2fc0ef jal ra,c0027b4a + c002b3ac: e12d bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25266 emit_op(s, OP_post_dec + op - TOK_DEC); - c002b1de: ffd9059b addiw a1,s2,-3 - c002b1e2: 0ff5f593 zext.b a1,a1 - c002b1e6: 8522 mv a0,s0 - c002b1e8: a54da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25259 + c002b3ae: ffd9059b addiw a1,s2,-3 + c002b3b2: 0ff5f593 zext.b a1,a1 + c002b3b6: 8522 mv a0,s0 + c002b3b8: 972da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25267 put_lvalue(s, opcode, scope, name, label, PUT_LVALUE_KEEP_SECOND, - c002b1ec: 4732 lw a4,12(sp) - c002b1ee: 46c2 lw a3,16(sp) - c002b1f0: 4622 lw a2,8(sp) - c002b1f2: 4592 lw a1,4(sp) - c002b1f4: 8522 mv a0,s0 - c002b1f6: 4801 li a6,0 - c002b1f8: 478d li a5,3 - c002b1fa: b64dc0ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25261 + c002b3bc: 4732 lw a4,12(sp) + c002b3be: 46c2 lw a3,16(sp) + c002b3c0: 4622 lw a2,8(sp) + c002b3c2: 4592 lw a1,4(sp) + c002b3c4: 8522 mv a0,s0 + c002b3c6: 4801 li a6,0 + c002b3c8: 478d li a5,3 + c002b3ca: a82dc0ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25269 if (next_token(s)) - c002b1fe: 8522 mv a0,s0 - c002b200: 997fb0ef jal ra,c0026b96 - c002b204: 0e050963 beqz a0,c002b2f6 - c002b208: a81d j c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25163 + c002b3ce: 8522 mv a0,s0 + c002b3d0: 997fb0ef jal ra,c0026d66 + c002b3d4: 0e050963 beqz a0,c002b4c6 + c002b3d8: a81d j c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25171 switch(s->token.val) { - c002b20a: fd800793 li a5,-40 - c002b20e: 38f90163 beq s2,a5,c002b590 - c002b212: f8f94ce3 blt s2,a5,c002b1aa - c002b216: 02d00793 li a5,45 - c002b21a: 0327c463 blt a5,s2,c002b242 - c002b21e: 02000793 li a5,32 - c002b222: f927d4e3 bge a5,s2,c002b1aa - c002b226: 4785 li a5,1 - c002b228: 01401737 lui a4,0x1401 - c002b22c: 012797b3 sll a5,a5,s2 - c002b230: 0756 slli a4,a4,0x15 - c002b232: 8ff9 and a5,a5,a4 - c002b234: dbbd beqz a5,c002b1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25170 + c002b3da: fd800793 li a5,-40 + c002b3de: 38f90163 beq s2,a5,c002b760 + c002b3e2: f8f94ce3 blt s2,a5,c002b37a + c002b3e6: 02d00793 li a5,45 + c002b3ea: 0327c463 blt a5,s2,c002b412 + c002b3ee: 02000793 li a5,32 + c002b3f2: f927d4e3 bge a5,s2,c002b37a + c002b3f6: 4785 li a5,1 + c002b3f8: 01401737 lui a4,0x1401 + c002b3fc: 012797b3 sll a5,a5,s2 + c002b400: 0756 slli a4,a4,0x15 + c002b402: 8ff9 and a5,a5,a4 + c002b404: dbbd beqz a5,c002b37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25178 if (next_token(s)) - c002b236: 8522 mv a0,s0 - c002b238: 95ffb0ef jal ra,c0026b96 - c002b23c: c901 beqz a0,c002b24c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25293 + c002b406: 8522 mv a0,s0 + c002b408: 95ffb0ef jal ra,c0026d66 + c002b40c: c901 beqz a0,c002b41c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25301 return -1; - c002b23e: 54fd li s1,-1 - c002b240: ac85 j c002b4b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25163 + c002b40e: 54fd li s1,-1 + c002b410: ac85 j c002b680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25171 switch(s->token.val) { - c002b242: 07e00793 li a5,126 - c002b246: fef908e3 beq s2,a5,c002b236 - c002b24a: b785 j c002b1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25172 + c002b412: 07e00793 li a5,126 + c002b416: fef908e3 beq s2,a5,c002b406 + c002b41a: b785 j c002b37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25180 if (js_parse_unary(s, PF_POW_FORBIDDEN)) - c002b24c: 45a1 li a1,8 - c002b24e: 8522 mv a0,s0 - c002b250: f1bff0ef jal ra,c002b16a - c002b254: 84aa mv s1,a0 - c002b256: f565 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25174 - switch(op) { - c002b258: 02b00793 li a5,43 - c002b25c: 04f90163 beq s2,a5,c002b29e - c002b260: 0127ce63 blt a5,s2,c002b27c - c002b264: fb400793 li a5,-76 - c002b268: 02f90e63 beq s2,a5,c002b2a4 - c002b26c: 02100793 li a5,33 + c002b41c: 45a1 li a1,8 + c002b41e: 8522 mv a0,s0 + c002b420: f1bff0ef jal ra,c002b33a + c002b424: 84aa mv s1,a0 + c002b426: f565 bnez a0,c002b40e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25182 + switch(op) { + c002b428: 02b00793 li a5,43 + c002b42c: 04f90163 beq s2,a5,c002b46e + c002b430: 0127ce63 blt a5,s2,c002b44c + c002b434: fb400793 li a5,-76 + c002b438: 02f90e63 beq s2,a5,c002b474 + c002b43c: 02100793 li a5,33 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25190 emit_op(s, OP_lnot); - c002b270: 09700593 li a1,151 - c002b274: 00f90e63 beq s2,a5,c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25192 + c002b440: 09700593 li a1,151 + c002b444: 00f90e63 beq s2,a5,c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25200 abort(); - c002b278: 5922a0ef jal ra,c005580a - c002b27c: 02d00793 li a5,45 - c002b280: 00f90c63 beq s2,a5,c002b298 - c002b284: 07e00793 li a5,126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25185 + c002b448: 5922a0ef jal ra,c00559da + c002b44c: 02d00793 li a5,45 + c002b450: 00f90c63 beq s2,a5,c002b468 + c002b454: 07e00793 li a5,126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25193 emit_op(s, OP_not); - c002b288: 09600593 li a1,150 - c002b28c: fef916e3 bne s2,a5,c002b278 + c002b458: 09600593 li a1,150 + c002b45c: fef916e3 bne s2,a5,c002b448 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25111 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25119 emit_op(s, OP_delete); - c002b290: 8522 mv a0,s0 - c002b292: 9aada0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25112 + c002b460: 8522 mv a0,s0 + c002b462: 8c8da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25120 break; - c002b296: ac29 j c002b4b0 + c002b466: ac29 j c002b680 js_parse_unary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25184 emit_op(s, OP_neg); - c002b298: 08d00593 li a1,141 - c002b29c: bfd5 j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25179 + c002b468: 08d00593 li a1,141 + c002b46c: bfd5 j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25187 emit_op(s, OP_plus); - c002b29e: 08e00593 li a1,142 - c002b2a2: b7fd j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25188 + c002b46e: 08e00593 li a1,142 + c002b472: b7fd j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25196 emit_op(s, OP_drop); - c002b2a4: 45b9 li a1,14 - c002b2a6: 8522 mv a0,s0 - c002b2a8: 994da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25189 + c002b474: 45b9 li a1,14 + c002b476: 8522 mv a0,s0 + c002b478: 8b2da0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25197 emit_op(s, OP_undefined); - c002b2ac: 4599 li a1,6 - c002b2ae: b7cd j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25202 + c002b47c: 4599 li a1,6 + c002b47e: b7cd j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25210 if (next_token(s)) - c002b2b0: 8e7fb0ef jal ra,c0026b96 - c002b2b4: f549 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25204 + c002b480: 8e7fb0ef jal ra,c0026d66 + c002b484: f549 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25212 if (js_parse_unary(s, 0)) - c002b2b6: 4581 li a1,0 - c002b2b8: 8522 mv a0,s0 - c002b2ba: eb1ff0ef jal ra,c002b16a - c002b2be: f141 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25206 + c002b486: 4581 li a1,0 + c002b488: 8522 mv a0,s0 + c002b48a: eb1ff0ef jal ra,c002b33a + c002b48e: f141 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25214 if (get_lvalue(s, &opcode, &scope, &name, &label, NULL, TRUE, op)) - c002b2c0: 88ca mv a7,s2 - c002b2c2: 4805 li a6,1 - c002b2c4: 4781 li a5,0 - c002b2c6: 0078 addi a4,sp,12 - c002b2c8: 0814 addi a3,sp,16 - c002b2ca: 0030 addi a2,sp,8 - c002b2cc: 004c addi a1,sp,4 - c002b2ce: 8522 mv a0,s0 - c002b2d0: eaafc0ef jal ra,c002797a - c002b2d4: f52d bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25208 + c002b490: 88ca mv a7,s2 + c002b492: 4805 li a6,1 + c002b494: 4781 li a5,0 + c002b496: 0078 addi a4,sp,12 + c002b498: 0814 addi a3,sp,16 + c002b49a: 0030 addi a2,sp,8 + c002b49c: 004c addi a1,sp,4 + c002b49e: 8522 mv a0,s0 + c002b4a0: eaafc0ef jal ra,c0027b4a + c002b4a4: f52d bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25216 emit_op(s, OP_dec + op - TOK_DEC); - c002b2d6: ffb9059b addiw a1,s2,-5 - c002b2da: 0ff5f593 zext.b a1,a1 - c002b2de: 8522 mv a0,s0 - c002b2e0: 95cda0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25209 + c002b4a6: ffb9059b addiw a1,s2,-5 + c002b4aa: 0ff5f593 zext.b a1,a1 + c002b4ae: 8522 mv a0,s0 + c002b4b0: 87ada0ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25217 put_lvalue(s, opcode, scope, name, label, PUT_LVALUE_KEEP_TOP, - c002b2e4: 4732 lw a4,12(sp) - c002b2e6: 46c2 lw a3,16(sp) - c002b2e8: 4622 lw a2,8(sp) - c002b2ea: 4592 lw a1,4(sp) - c002b2ec: 4801 li a6,0 - c002b2ee: 4789 li a5,2 - c002b2f0: 8522 mv a0,s0 - c002b2f2: a6cdc0ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25266 + c002b4b4: 4732 lw a4,12(sp) + c002b4b6: 46c2 lw a3,16(sp) + c002b4b8: 4622 lw a2,8(sp) + c002b4ba: 4592 lw a1,4(sp) + c002b4bc: 4801 li a6,0 + c002b4be: 4789 li a5,2 + c002b4c0: 8522 mv a0,s0 + c002b4c2: 98adc0ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25274 if (parse_flags & (PF_POW_ALLOWED | PF_POW_FORBIDDEN)) { - c002b2f6: 1a048d63 beqz s1,c002b4b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25285 + c002b4c6: 1a048d63 beqz s1,c002b680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25293 if (s->token.val == TOK_POW) { - c002b2fa: 4c18 lw a4,24(s0) - c002b2fc: fa300793 li a5,-93 - c002b300: 30f71163 bne a4,a5,c002b602 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25291 + c002b4ca: 4c18 lw a4,24(s0) + c002b4cc: fa300793 li a5,-93 + c002b4d0: 30f71163 bne a4,a5,c002b7d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25299 if (parse_flags & PF_POW_FORBIDDEN) { - c002b304: 0084f513 andi a0,s1,8 - c002b308: 2c050e63 beqz a0,c002b5e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25292 + c002b4d4: 0084f513 andi a0,s1,8 + c002b4d8: 2c050e63 beqz a0,c002b7b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25300 JS_ThrowSyntaxError(s->ctx, "unparenthesized unary expression can't appear on the left-hand side of '**'"); - c002b30c: 6008 ld a0,0(s0) - c002b30e: 00035597 auipc a1,0x35 - c002b312: 89a58593 addi a1,a1,-1894 # c005fba8 - c002b316: df7e70ef jal ra,c001310c - c002b31a: b715 j c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25216 + c002b4dc: 6008 ld a0,0(s0) + c002b4de: 00035597 auipc a1,0x35 + c002b4e2: 92a58593 addi a1,a1,-1750 # c005fe08 + c002b4e6: d15e70ef jal ra,c00131fa + c002b4ea: b715 j c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25224 if (next_token(s)) - c002b31c: 87bfb0ef jal ra,c0026b96 - c002b320: f0051fe3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25218 + c002b4ec: 87bfb0ef jal ra,c0026d66 + c002b4f0: f0051fe3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25226 if (js_parse_unary(s, PF_POW_FORBIDDEN)) - c002b324: 45a1 li a1,8 - c002b326: 8522 mv a0,s0 - c002b328: e43ff0ef jal ra,c002b16a - c002b32c: 84aa mv s1,a0 - c002b32e: f00518e3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25222 + c002b4f4: 45a1 li a1,8 + c002b4f6: 8522 mv a0,s0 + c002b4f8: e43ff0ef jal ra,c002b33a + c002b4fc: 84aa mv s1,a0 + c002b4fe: f00518e3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25230 fd = s->cur_func; - c002b332: 06843903 ld s2,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25223 + c002b502: 06843903 ld s2,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25231 if (get_prev_opcode(fd) == OP_scope_get_var) { - c002b336: 854a mv a0,s2 - c002b338: 8d6d90ef jal ra,c000440e - c002b33c: 0b800793 li a5,184 - c002b340: 00f51b63 bne a0,a5,c002b356 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25224 + c002b506: 854a mv a0,s2 + c002b508: f07d80ef jal ra,c000440e + c002b50c: 0b800793 li a5,184 + c002b510: 00f51b63 bne a0,a5,c002b526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25232 fd->byte_code.buf[fd->last_opcode_pos] = OP_scope_get_var_undef; - c002b344: 16092703 lw a4,352(s2) - c002b348: 13093783 ld a5,304(s2) - c002b34c: 97ba add a5,a5,a4 - c002b34e: fb700713 li a4,-73 - c002b352: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25226 + c002b514: 16092703 lw a4,352(s2) + c002b518: 13093783 ld a5,304(s2) + c002b51c: 97ba add a5,a5,a4 + c002b51e: fb700713 li a4,-73 + c002b522: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25234 emit_op(s, OP_typeof); - c002b356: 09800593 li a1,152 - c002b35a: bf1d j c002b290 + c002b526: 09800593 li a1,152 + c002b52a: bf1d j c002b460 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25076 JSFunctionDef *fd = s->cur_func; - c002b35c: 06853903 ld s2,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25072 + c002b52c: 06853903 ld s2,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25080 if (next_token(s)) - c002b360: 837fb0ef jal ra,c0026b96 - c002b364: ec051de3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25074 + c002b530: 837fb0ef jal ra,c0026d66 + c002b534: ec051de3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25082 if (js_parse_unary(s, PF_POW_FORBIDDEN)) - c002b368: 45a1 li a1,8 - c002b36a: 8522 mv a0,s0 - c002b36c: dffff0ef jal ra,c002b16a - c002b370: 84aa mv s1,a0 - c002b372: ec0516e3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25076 + c002b538: 45a1 li a1,8 + c002b53a: 8522 mv a0,s0 + c002b53c: dffff0ef jal ra,c002b33a + c002b540: 84aa mv s1,a0 + c002b542: ec0516e3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25084 switch(opcode = get_prev_opcode(fd)) { - c002b376: 854a mv a0,s2 - c002b378: 896d90ef jal ra,c000440e - c002b37c: 0b800793 li a5,184 - c002b380: 18f50a63 beq a0,a5,c002b514 - c002b384: 02a7c563 blt a5,a0,c002b3ae - c002b388: 04700793 li a5,71 - c002b38c: 12f50b63 beq a0,a5,c002b4c2 - c002b390: 04a00793 li a5,74 - c002b394: 1cf50963 beq a0,a5,c002b566 - c002b398: 04100793 li a5,65 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25086 + c002b546: 854a mv a0,s2 + c002b548: ec7d80ef jal ra,c000440e + c002b54c: 0b800793 li a5,184 + c002b550: 18f50a63 beq a0,a5,c002b6e4 + c002b554: 02a7c563 blt a5,a0,c002b57e + c002b558: 04700793 li a5,71 + c002b55c: 12f50b63 beq a0,a5,c002b692 + c002b560: 04a00793 li a5,74 + c002b564: 1cf50963 beq a0,a5,c002b736 + c002b568: 04100793 li a5,65 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25094 opt_chain_label = -1; - c002b39c: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25076 + c002b56c: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25084 switch(opcode = get_prev_opcode(fd)) { - c002b39e: 06f50763 beq a0,a5,c002b40c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25151 + c002b56e: 06f50763 beq a0,a5,c002b5dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25159 emit_op(s, OP_drop); - c002b3a2: 45b9 li a1,14 - c002b3a4: 8522 mv a0,s0 - c002b3a6: 896da0ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25152 + c002b572: 45b9 li a1,14 + c002b574: 8522 mv a0,s0 + c002b576: fb5d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25160 emit_op(s, OP_push_true); - c002b3aa: 45a9 li a1,10 - c002b3ac: b5d5 j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25076 + c002b57a: 45a9 li a1,10 + c002b57c: b5d5 j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25084 switch(opcode = get_prev_opcode(fd)) { - c002b3ae: 0c300793 li a5,195 - c002b3b2: 02f50663 beq a0,a5,c002b3de - c002b3b6: 0c400793 li a5,196 - c002b3ba: 10f50e63 beq a0,a5,c002b4d6 - c002b3be: 0bf00793 li a5,191 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25141 + c002b57e: 0c300793 li a5,195 + c002b582: 02f50663 beq a0,a5,c002b5ae + c002b586: 0c400793 li a5,196 + c002b58a: 10f50e63 beq a0,a5,c002b6a6 + c002b58e: 0bf00793 li a5,191 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25149 return js_parse_error(s, "cannot delete a private class field"); - c002b3c2: 00034597 auipc a1,0x34 - c002b3c6: 77e58593 addi a1,a1,1918 # c005fb40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25076 + c002b592: 00035597 auipc a1,0x35 + c002b596: 80e58593 addi a1,a1,-2034 # c005fda0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25084 switch(opcode = get_prev_opcode(fd)) { - c002b3ca: fcf51ce3 bne a0,a5,c002b3a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25141 + c002b59a: fcf51ce3 bne a0,a5,c002b572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25149 return js_parse_error(s, "cannot delete a private class field"); - c002b3ce: 8522 mv a0,s0 - c002b3d0: ee9fa0ef jal ra,c00262b8 + c002b59e: 8522 mv a0,s0 + c002b5a0: ee9fa0ef jal ra,c0026488 js_parse_unary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25239 if (js_parse_delete(s)) - c002b3d4: 00a03533 snez a0,a0 - c002b3d8: 40a004b3 neg s1,a0 - c002b3dc: a8d1 j c002b4b0 + c002b5a4: 00a03533 snez a0,a0 + c002b5a8: 40a004b3 neg s1,a0 + c002b5ac: a8d1 j c002b680 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25084 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25092 fd->last_opcode_pos + 1 + 4 + 1); - c002b3de: 16092703 lw a4,352(s2) + c002b5ae: 16092703 lw a4,352(s2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b3e2: 13093783 ld a5,304(s2) - c002b3e6: 97ba add a5,a5,a4 - c002b3e8: 0077c703 lbu a4,7(a5) - c002b3ec: 0067c983 lbu s3,6(a5) - c002b3f0: 0722 slli a4,a4,0x8 - c002b3f2: 01376733 or a4,a4,s3 - c002b3f6: 0087c983 lbu s3,8(a5) - c002b3fa: 09c2 slli s3,s3,0x10 - c002b3fc: 00e9e733 or a4,s3,a4 - c002b400: 0097c983 lbu s3,9(a5) - c002b404: 09e2 slli s3,s3,0x18 - c002b406: 00e9e9b3 or s3,s3,a4 + c002b5b2: 13093783 ld a5,304(s2) + c002b5b6: 97ba add a5,a5,a4 + c002b5b8: 0077c703 lbu a4,7(a5) + c002b5bc: 0067c983 lbu s3,6(a5) + c002b5c0: 0722 slli a4,a4,0x8 + c002b5c2: 01376733 or a4,a4,s3 + c002b5c6: 0087c983 lbu s3,8(a5) + c002b5ca: 09c2 slli s3,s3,0x10 + c002b5cc: 00e9e733 or a4,s3,a4 + c002b5d0: 0097c983 lbu s3,9(a5) + c002b5d4: 09e2 slli s3,s3,0x18 + c002b5d6: 00e9e9b3 or s3,s3,a4 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25083 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25091 opt_chain_label = get_u32(fd->byte_code.buf + - c002b40a: 2981 sext.w s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25088 + c002b5da: 2981 sext.w s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25096 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c002b40c: 16092683 lw a3,352(s2) + c002b5dc: 16092683 lw a3,352(s2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b410: 13093783 ld a5,304(s2) - c002b414: 97b6 add a5,a5,a3 - c002b416: 0027c703 lbu a4,2(a5) - c002b41a: 0017ca03 lbu s4,1(a5) - c002b41e: 0722 slli a4,a4,0x8 - c002b420: 01476733 or a4,a4,s4 - c002b424: 0037ca03 lbu s4,3(a5) - c002b428: 0a42 slli s4,s4,0x10 - c002b42a: 00ea6733 or a4,s4,a4 - c002b42e: 0047ca03 lbu s4,4(a5) + c002b5e0: 13093783 ld a5,304(s2) + c002b5e4: 97b6 add a5,a5,a3 + c002b5e6: 0027c703 lbu a4,2(a5) + c002b5ea: 0017ca03 lbu s4,1(a5) + c002b5ee: 0722 slli a4,a4,0x8 + c002b5f0: 01476733 or a4,a4,s4 + c002b5f4: 0037ca03 lbu s4,3(a5) + c002b5f8: 0a42 slli s4,s4,0x10 + c002b5fa: 00ea6733 or a4,s4,a4 + c002b5fe: 0047ca03 lbu s4,4(a5) js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25089 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25097 fd->byte_code.size = fd->last_opcode_pos; - c002b432: 12d93c23 sd a3,312(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25090 + c002b602: 12d93c23 sd a3,312(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25098 val = JS_AtomToValue(s->ctx, name); - c002b436: 6008 ld a0,0(s0) + c002b606: 6008 ld a0,0(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b438: 0a62 slli s4,s4,0x18 - c002b43a: 00ea6a33 or s4,s4,a4 - c002b43e: 2a01 sext.w s4,s4 + c002b608: 0a62 slli s4,s4,0x18 + c002b60a: 00ea6a33 or s4,s4,a4 + c002b60e: 2a01 sext.w s4,s4 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25090 - c002b440: 85d2 mv a1,s4 - c002b442: ef0ee0ef jal ra,c0019b32 - c002b446: 862e mv a2,a1 - c002b448: e82a sd a0,16(sp) - c002b44a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25098 + c002b610: 85d2 mv a1,s4 + c002b612: ef0ee0ef jal ra,c0019d02 + c002b616: 862e mv a2,a1 + c002b618: e82a sd a0,16(sp) + c002b61a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25099 ret = emit_push_const(s, val, 1); - c002b44c: 4685 li a3,1 - c002b44e: 85aa mv a1,a0 - c002b450: 8522 mv a0,s0 - c002b452: d0bec0ef jal ra,c001815c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25092 + c002b61c: 4685 li a3,1 + c002b61e: 85aa mv a1,a0 + c002b620: 8522 mv a0,s0 + c002b622: d0bec0ef jal ra,c001832c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25100 JS_FreeValue(s->ctx, val); - c002b456: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25091 + c002b626: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25099 ret = emit_push_const(s, val, 1); - c002b458: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25092 + c002b628: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25100 JS_FreeValue(s->ctx, val); - c002b45a: 6662 ld a2,24(sp) - c002b45c: 6008 ld a0,0(s0) - c002b45e: edadc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25093 + c002b62a: 6662 ld a2,24(sp) + c002b62c: 6008 ld a0,0(s0) + c002b62e: df8dc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25101 JS_FreeAtom(s->ctx, name); - c002b462: 6008 ld a0,0(s0) - c002b464: 85d2 mv a1,s4 - c002b466: 8a6dc0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25094 + c002b632: 6008 ld a0,0(s0) + c002b634: 85d2 mv a1,s4 + c002b636: fc5db0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25102 if (ret) - c002b46a: dc049ae3 bnez s1,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25096 + c002b63a: dc049ae3 bnez s1,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25104 emit_op(s, OP_delete); - c002b46e: 09900593 li a1,153 - c002b472: 8522 mv a0,s0 - c002b474: fc9d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25097 + c002b63e: 09900593 li a1,153 + c002b642: 8522 mv a0,s0 + c002b644: ee7d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25105 if (opt_chain_label >= 0) { - c002b478: 0209c963 bltz s3,c002b4aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25098 + c002b648: 0209c963 bltz s3,c002b67a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25106 next_label = emit_goto(s, OP_goto, -1); - c002b47c: 567d li a2,-1 - c002b47e: 06c00593 li a1,108 - c002b482: 8522 mv a0,s0 - c002b484: 835ec0ef jal ra,c0017cb8 - c002b488: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25099 + c002b64c: 567d li a2,-1 + c002b64e: 06c00593 li a1,108 + c002b652: 8522 mv a0,s0 + c002b654: 835ec0ef jal ra,c0017e88 + c002b658: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25107 emit_label(s, opt_chain_label); - c002b48a: 85ce mv a1,s3 - c002b48c: 8522 mv a0,s0 - c002b48e: 94cda0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25101 + c002b65a: 85ce mv a1,s3 + c002b65c: 8522 mv a0,s0 + c002b65e: 86ada0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25109 emit_op(s, OP_drop); - c002b492: 45b9 li a1,14 - c002b494: 8522 mv a0,s0 - c002b496: fa7d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25102 + c002b662: 45b9 li a1,14 + c002b664: 8522 mv a0,s0 + c002b666: ec5d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25110 emit_op(s, OP_push_true); - c002b49a: 45a9 li a1,10 - c002b49c: 8522 mv a0,s0 - c002b49e: f9fd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25103 + c002b66a: 45a9 li a1,10 + c002b66c: 8522 mv a0,s0 + c002b66e: ebdd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25111 emit_label(s, next_label); - c002b4a2: 85d2 mv a1,s4 - c002b4a4: 8522 mv a0,s0 - c002b4a6: 934da0ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25105 + c002b672: 85d2 mv a1,s4 + c002b674: 8522 mv a0,s0 + c002b676: 852da0ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25113 fd->last_opcode_pos = -1; - c002b4aa: 57fd li a5,-1 - c002b4ac: 16f92023 sw a5,352(s2) + c002b67a: 57fd li a5,-1 + c002b67c: 16f92023 sw a5,352(s2) js_parse_unary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25304 -} - c002b4b0: 60a6 ld ra,72(sp) - c002b4b2: 6406 ld s0,64(sp) - c002b4b4: 7942 ld s2,48(sp) - c002b4b6: 79a2 ld s3,40(sp) - c002b4b8: 7a02 ld s4,32(sp) - c002b4ba: 8526 mv a0,s1 - c002b4bc: 74e2 ld s1,56(sp) - c002b4be: 6161 addi sp,sp,80 - c002b4c0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25312 +} + c002b680: 60a6 ld ra,72(sp) + c002b682: 6406 ld s0,64(sp) + c002b684: 7942 ld s2,48(sp) + c002b686: 79a2 ld s3,40(sp) + c002b688: 7a02 ld s4,32(sp) + c002b68a: 8526 mv a0,s1 + c002b68c: 74e2 ld s1,56(sp) + c002b68e: 6161 addi sp,sp,80 + c002b690: 8082 ret js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25117 fd->byte_code.size = fd->last_opcode_pos; - c002b4c2: 16092783 lw a5,352(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25111 + c002b692: 16092783 lw a5,352(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25119 emit_op(s, OP_delete); - c002b4c6: 09900593 li a1,153 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25109 + c002b696: 09900593 li a1,153 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25117 fd->byte_code.size = fd->last_opcode_pos; - c002b4ca: 12f93c23 sd a5,312(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25110 + c002b69a: 12f93c23 sd a5,312(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25118 fd->last_opcode_pos = -1; - c002b4ce: 57fd li a5,-1 - c002b4d0: 16f92023 sw a5,352(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25111 + c002b69e: 57fd li a5,-1 + c002b6a0: 16f92023 sw a5,352(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25119 emit_op(s, OP_delete); - c002b4d4: bb75 j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25117 + c002b6a4: bb75 j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25125 fd->last_opcode_pos + 1 + 1); - c002b4d6: 16092683 lw a3,352(s2) + c002b6a6: 16092683 lw a3,352(s2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b4da: 13093783 ld a5,304(s2) + c002b6aa: 13093783 ld a5,304(s2) js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25119 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25127 emit_op(s, OP_delete); - c002b4de: 09900593 li a1,153 - c002b4e2: 8522 mv a0,s0 + c002b6ae: 09900593 li a1,153 + c002b6b2: 8522 mv a0,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b4e4: 97b6 add a5,a5,a3 - c002b4e6: 0037c703 lbu a4,3(a5) - c002b4ea: 0027c983 lbu s3,2(a5) - c002b4ee: 0722 slli a4,a4,0x8 - c002b4f0: 01376733 or a4,a4,s3 - c002b4f4: 0047c983 lbu s3,4(a5) - c002b4f8: 09c2 slli s3,s3,0x10 - c002b4fa: 00e9e733 or a4,s3,a4 - c002b4fe: 0057c983 lbu s3,5(a5) + c002b6b4: 97b6 add a5,a5,a3 + c002b6b6: 0037c703 lbu a4,3(a5) + c002b6ba: 0027c983 lbu s3,2(a5) + c002b6be: 0722 slli a4,a4,0x8 + c002b6c0: 01376733 or a4,a4,s3 + c002b6c4: 0047c983 lbu s3,4(a5) + c002b6c8: 09c2 slli s3,s3,0x10 + c002b6ca: 00e9e733 or a4,s3,a4 + c002b6ce: 0057c983 lbu s3,5(a5) js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25126 fd->byte_code.size = fd->last_opcode_pos; - c002b502: 12d93c23 sd a3,312(s2) + c002b6d2: 12d93c23 sd a3,312(s2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b506: 09e2 slli s3,s3,0x18 - c002b508: 00e9e9b3 or s3,s3,a4 + c002b6d6: 09e2 slli s3,s3,0x18 + c002b6d8: 00e9e9b3 or s3,s3,a4 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25124 opt_chain_label = get_u32(fd->byte_code.buf + - c002b50c: 2981 sext.w s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25119 + c002b6dc: 2981 sext.w s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25127 emit_op(s, OP_delete); - c002b50e: f2fd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25120 + c002b6de: e4dd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25128 next_label = emit_goto(s, OP_goto, -1); - c002b512: b7ad j c002b47c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25131 + c002b6e2: b7ad j c002b64c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25139 name = get_u32(fd->byte_code.buf + fd->last_opcode_pos + 1); - c002b514: 16092783 lw a5,352(s2) - c002b518: 13093703 ld a4,304(s2) + c002b6e4: 16092783 lw a5,352(s2) + c002b6e8: 13093703 ld a4,304(s2) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c002b51c: 973e add a4,a4,a5 - c002b51e: 00274683 lbu a3,2(a4) # 1401002 <__clzdi2-0xbebfeffe> - c002b522: 00174783 lbu a5,1(a4) - c002b526: 06a2 slli a3,a3,0x8 - c002b528: 8edd or a3,a3,a5 - c002b52a: 00374783 lbu a5,3(a4) - c002b52e: 07c2 slli a5,a5,0x10 - c002b530: 8edd or a3,a3,a5 - c002b532: 00474783 lbu a5,4(a4) - c002b536: 07e2 slli a5,a5,0x18 - c002b538: 8fd5 or a5,a5,a3 - c002b53a: 2781 sext.w a5,a5 + c002b6ec: 973e add a4,a4,a5 + c002b6ee: 00274683 lbu a3,2(a4) # 1401002 <__clzdi2-0xbebfeffe> + c002b6f2: 00174783 lbu a5,1(a4) + c002b6f6: 06a2 slli a3,a3,0x8 + c002b6f8: 8edd or a3,a3,a5 + c002b6fa: 00374783 lbu a5,3(a4) + c002b6fe: 07c2 slli a5,a5,0x10 + c002b700: 8edd or a3,a3,a5 + c002b702: 00474783 lbu a5,4(a4) + c002b706: 07e2 slli a5,a5,0x18 + c002b708: 8fd5 or a5,a5,a3 + c002b70a: 2781 sext.w a5,a5 js_parse_delete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25140 if (name == JS_ATOM_this || name == JS_ATOM_new_target) - c002b53c: 46a1 li a3,8 - c002b53e: e6d782e3 beq a5,a3,c002b3a2 - c002b542: 07200693 li a3,114 - c002b546: e4d78ee3 beq a5,a3,c002b3a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25134 + c002b70c: 46a1 li a3,8 + c002b70e: e6d782e3 beq a5,a3,c002b572 + c002b712: 07200693 li a3,114 + c002b716: e4d78ee3 beq a5,a3,c002b572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25142 if (fd->js_mode & JS_MODE_STRICT) { - c002b54a: 08694783 lbu a5,134(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25135 + c002b71a: 08694783 lbu a5,134(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25143 return js_parse_error(s, "cannot delete a direct reference in strict mode"); - c002b54e: 00034597 auipc a1,0x34 - c002b552: 5c258593 addi a1,a1,1474 # c005fb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25134 + c002b71e: 00034597 auipc a1,0x34 + c002b722: 65258593 addi a1,a1,1618 # c005fd70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25142 if (fd->js_mode & JS_MODE_STRICT) { - c002b556: 8b85 andi a5,a5,1 - c002b558: e6079be3 bnez a5,c002b3ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25137 + c002b726: 8b85 andi a5,a5,1 + c002b728: e6079be3 bnez a5,c002b59e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25145 fd->byte_code.buf[fd->last_opcode_pos] = OP_scope_delete_var; - c002b55c: fba00793 li a5,-70 - c002b560: 00f70023 sb a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25139 + c002b72c: fba00793 li a5,-70 + c002b730: 00f70023 sb a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25147 break; - c002b564: b7b1 j c002b4b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25143 + c002b734: b7b1 j c002b680 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25151 fd->byte_code.size = fd->last_opcode_pos; - c002b566: 16092783 lw a5,352(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25145 + c002b736: 16092783 lw a5,352(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25153 emit_op(s, OP_throw_error); - c002b56a: 8522 mv a0,s0 - c002b56c: 03000593 li a1,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25143 + c002b73a: 8522 mv a0,s0 + c002b73c: 03000593 li a1,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25151 fd->byte_code.size = fd->last_opcode_pos; - c002b570: 12f93c23 sd a5,312(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25144 + c002b740: 12f93c23 sd a5,312(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25152 fd->last_opcode_pos = -1; - c002b574: 57fd li a5,-1 - c002b576: 16f92023 sw a5,352(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25145 + c002b744: 57fd li a5,-1 + c002b746: 16f92023 sw a5,352(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25153 emit_op(s, OP_throw_error); - c002b57a: ec3d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25146 + c002b74a: de1d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25154 emit_atom(s, JS_ATOM_NULL); - c002b57e: 8522 mv a0,s0 - c002b580: 4581 li a1,0 - c002b582: f6ddb0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25147 + c002b74e: 8522 mv a0,s0 + c002b750: 4581 li a1,0 + c002b752: e8bdb0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25155 emit_u8(s, JS_THROW_ERROR_DELETE_SUPER); - c002b586: 458d li a1,3 - c002b588: 8522 mv a0,s0 - c002b58a: acfd90ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25148 + c002b756: 458d li a1,3 + c002b758: 8522 mv a0,s0 + c002b75a: 8ffd90ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25156 break; - c002b58e: b70d j c002b4b0 + c002b75e: b70d j c002b680 js_parse_unary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25244 if (!(s->cur_func->func_kind & JS_FUNC_ASYNC)) - c002b590: 7538 ld a4,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25237 + c002b760: 7538 ld a4,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25245 return js_parse_error(s, "unexpected 'await' keyword"); - c002b592: 00034597 auipc a1,0x34 - c002b596: 5d658593 addi a1,a1,1494 # c005fb68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25236 + c002b762: 00034597 auipc a1,0x34 + c002b766: 66658593 addi a1,a1,1638 # c005fdc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25244 if (!(s->cur_func->func_kind & JS_FUNC_ASYNC)) - c002b59a: 08474783 lbu a5,132(a4) - c002b59e: 8b89 andi a5,a5,2 - c002b5a0: c799 beqz a5,c002b5ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25238 + c002b76a: 08474783 lbu a5,132(a4) + c002b76e: 8b89 andi a5,a5,2 + c002b770: c799 beqz a5,c002b77e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25246 if (!s->cur_func->in_function_body) - c002b5a2: 5f7c lw a5,124(a4) - c002b5a4: ef91 bnez a5,c002b5c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25239 + c002b772: 5f7c lw a5,124(a4) + c002b774: ef91 bnez a5,c002b790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25247 return js_parse_error(s, "await in default expression"); - c002b5a6: 00034597 auipc a1,0x34 - c002b5aa: 5e258593 addi a1,a1,1506 # c005fb88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25304 -} - c002b5ae: 6406 ld s0,64(sp) - c002b5b0: 60a6 ld ra,72(sp) - c002b5b2: 74e2 ld s1,56(sp) - c002b5b4: 7942 ld s2,48(sp) - c002b5b6: 79a2 ld s3,40(sp) - c002b5b8: 7a02 ld s4,32(sp) - c002b5ba: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25239 + c002b776: 00034597 auipc a1,0x34 + c002b77a: 67258593 addi a1,a1,1650 # c005fde8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25312 +} + c002b77e: 6406 ld s0,64(sp) + c002b780: 60a6 ld ra,72(sp) + c002b782: 74e2 ld s1,56(sp) + c002b784: 7942 ld s2,48(sp) + c002b786: 79a2 ld s3,40(sp) + c002b788: 7a02 ld s4,32(sp) + c002b78a: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25247 return js_parse_error(s, "await in default expression"); - c002b5bc: cfdfa06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25240 + c002b78c: cfdfa06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25248 if (next_token(s)) - c002b5c0: dd6fb0ef jal ra,c0026b96 - c002b5c4: c6051de3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25242 + c002b790: dd6fb0ef jal ra,c0026d66 + c002b794: c6051de3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25250 if (js_parse_unary(s, PF_POW_FORBIDDEN)) - c002b5c8: 45a1 li a1,8 - c002b5ca: 8522 mv a0,s0 - c002b5cc: b9fff0ef jal ra,c002b16a - c002b5d0: 84aa mv s1,a0 - c002b5d2: c60516e3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25244 + c002b798: 45a1 li a1,8 + c002b79a: 8522 mv a0,s0 + c002b79c: b9fff0ef jal ra,c002b33a + c002b7a0: 84aa mv s1,a0 + c002b7a2: c60516e3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25252 s->cur_func->has_await = TRUE; - c002b5d6: 743c ld a5,104(s0) - c002b5d8: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25245 + c002b7a6: 743c ld a5,104(s0) + c002b7a8: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25253 emit_op(s, OP_await); - c002b5da: 08c00593 li a1,140 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25244 + c002b7aa: 08c00593 li a1,140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25252 s->cur_func->has_await = TRUE; - c002b5de: 22e7a023 sw a4,544(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25245 + c002b7ae: 22e7a023 sw a4,544(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25253 emit_op(s, OP_await); - c002b5e2: b17d j c002b290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25295 + c002b7b2: b17d j c002b460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25303 if (next_token(s)) - c002b5e4: 8522 mv a0,s0 - c002b5e6: db0fb0ef jal ra,c0026b96 - c002b5ea: c4051ae3 bnez a0,c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25297 + c002b7b4: 8522 mv a0,s0 + c002b7b6: db0fb0ef jal ra,c0026d66 + c002b7ba: c4051ae3 bnez a0,c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25305 if (js_parse_unary(s, PF_POW_ALLOWED)) - c002b5ee: 4591 li a1,4 - c002b5f0: 8522 mv a0,s0 - c002b5f2: b79ff0ef jal ra,c002b16a - c002b5f6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25299 + c002b7be: 4591 li a1,4 + c002b7c0: 8522 mv a0,s0 + c002b7c2: b79ff0ef jal ra,c002b33a + c002b7c6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25307 emit_op(s, OP_pow); - c002b5f8: 0a000593 li a1,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25297 + c002b7c8: 0a000593 li a1,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25305 if (js_parse_unary(s, PF_POW_ALLOWED)) - c002b5fc: c8050ae3 beqz a0,c002b290 - c002b600: b93d j c002b23e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25303 + c002b7cc: c8050ae3 beqz a0,c002b460 + c002b7d0: b93d j c002b40e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25311 return 0; - c002b602: 4481 li s1,0 - c002b604: b575 j c002b4b0 + c002b7d2: 4481 li s1,0 + c002b7d4: b575 j c002b680 -00000000c002b606 : +00000000c002b7d6 : js_parse_expr_binary(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25320 if (level == 0) { - c002b606: e581 bnez a1,c002b60e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25313 + c002b7d6: e581 bnez a1,c002b7de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25321 return js_parse_unary(s, PF_POW_ALLOWED); - c002b608: 4591 li a1,4 - c002b60a: b61ff06f j c002b16a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25309 -{ - c002b60e: 711d addi sp,sp,-96 - c002b610: e8a2 sd s0,80(sp) - c002b612: e4a6 sd s1,72(sp) - c002b614: fc4e sd s3,56(sp) - c002b616: ec86 sd ra,88(sp) - c002b618: e0ca sd s2,64(sp) - c002b61a: f852 sd s4,48(sp) - c002b61c: f456 sd s5,40(sp) - c002b61e: f05a sd s6,32(sp) - c002b620: ec5e sd s7,24(sp) - c002b622: e862 sd s8,16(sp) - c002b624: e466 sd s9,8(sp) - c002b626: e06a sd s10,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25314 + c002b7d8: 4591 li a1,4 + c002b7da: b61ff06f j c002b33a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25317 +{ + c002b7de: 711d addi sp,sp,-96 + c002b7e0: e8a2 sd s0,80(sp) + c002b7e2: e4a6 sd s1,72(sp) + c002b7e4: fc4e sd s3,56(sp) + c002b7e6: ec86 sd ra,88(sp) + c002b7e8: e0ca sd s2,64(sp) + c002b7ea: f852 sd s4,48(sp) + c002b7ec: f456 sd s5,40(sp) + c002b7ee: f05a sd s6,32(sp) + c002b7f0: ec5e sd s7,24(sp) + c002b7f2: e862 sd s8,16(sp) + c002b7f4: e466 sd s9,8(sp) + c002b7f6: e06a sd s10,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25322 } else if (s->token.val == TOK_PRIVATE_NAME && - c002b628: 4d18 lw a4,24(a0) - c002b62a: fa900793 li a5,-87 - c002b62e: 842a mv s0,a0 - c002b630: 84ae mv s1,a1 - c002b632: 89b2 mv s3,a2 - c002b634: 08f71e63 bne a4,a5,c002b6d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25314 (discriminator 1) - c002b638: ce41 beqz a2,c002b6d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25315 + c002b7f8: 4d18 lw a4,24(a0) + c002b7fa: fa900793 li a5,-87 + c002b7fe: 842a mv s0,a0 + c002b800: 84ae mv s1,a1 + c002b802: 89b2 mv s3,a2 + c002b804: 08f71e63 bne a4,a5,c002b8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25322 (discriminator 1) + c002b808: ce41 beqz a2,c002b8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25323 (parse_flags & PF_IN_ACCEPTED) && level == 4 && - c002b63a: 4791 li a5,4 - c002b63c: 08f59a63 bne a1,a5,c002b6d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25316 (discriminator 1) + c002b80a: 4791 li a5,4 + c002b80c: 08f59a63 bne a1,a5,c002b8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25324 (discriminator 1) peek_token(s, FALSE) == TOK_IN) { - c002b640: 4581 li a1,0 - c002b642: 917da0ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25315 (discriminator 1) + c002b810: 4581 li a1,0 + c002b812: 835da0ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25323 (discriminator 1) (parse_flags & PF_IN_ACCEPTED) && level == 4 && - c002b646: fb700793 li a5,-73 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25316 (discriminator 1) + c002b816: fb700793 li a5,-73 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25324 (discriminator 1) peek_token(s, FALSE) == TOK_IN) { - c002b64a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25315 (discriminator 1) + c002b81a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25323 (discriminator 1) (parse_flags & PF_IN_ACCEPTED) && level == 4 && - c002b64c: 08f51263 bne a0,a5,c002b6d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25319 + c002b81c: 08f51263 bne a0,a5,c002b8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25327 atom = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002b650: 540c lw a1,40(s0) - c002b652: 6008 ld a0,0(s0) - c002b654: e77db0ef jal ra,c00074ca - c002b658: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25320 - if (next_token(s)) - c002b65c: 8522 mv a0,s0 - c002b65e: d38fb0ef jal ra,c0026b96 - c002b662: c519 beqz a0,c002b670 + c002b820: 540c lw a1,40(s0) + c002b822: 6008 ld a0,0(s0) + c002b824: d95db0ef jal ra,c00075b8 + c002b828: 0005049b sext.w s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25328 + if (next_token(s)) + c002b82c: 8522 mv a0,s0 + c002b82e: d38fb0ef jal ra,c0026d66 + c002b832: c519 beqz a0,c002b840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25336 JS_FreeAtom(s->ctx, atom); - c002b664: 6008 ld a0,0(s0) - c002b666: 85a6 mv a1,s1 - c002b668: ea5db0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25338 + c002b834: 6008 ld a0,0(s0) + c002b836: 85a6 mv a1,s1 + c002b838: dc3db0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25346 return -1; - c002b66c: 5d7d li s10,-1 - c002b66e: a091 j c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25322 + c002b83c: 5d7d li s10,-1 + c002b83e: a091 j c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25330 if (s->token.val != TOK_IN) - c002b670: 4c1c lw a5,24(s0) - c002b672: ff2799e3 bne a5,s2,c002b664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25324 + c002b840: 4c1c lw a5,24(s0) + c002b842: ff2799e3 bne a5,s2,c002b834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25332 if (next_token(s)) - c002b676: 8522 mv a0,s0 - c002b678: d1efb0ef jal ra,c0026b96 - c002b67c: f565 bnez a0,c002b664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25326 + c002b846: 8522 mv a0,s0 + c002b848: d1efb0ef jal ra,c0026d66 + c002b84c: f565 bnez a0,c002b834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25334 if (js_parse_expr_binary(s, level - 1, parse_flags)) { - c002b67e: 4605 li a2,1 - c002b680: 458d li a1,3 - c002b682: 8522 mv a0,s0 - c002b684: f83ff0ef jal ra,c002b606 - c002b688: 8d2a mv s10,a0 - c002b68a: fd69 bnez a0,c002b664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25331 + c002b84e: 4605 li a2,1 + c002b850: 458d li a1,3 + c002b852: 8522 mv a0,s0 + c002b854: f83ff0ef jal ra,c002b7d6 + c002b858: 8d2a mv s10,a0 + c002b85a: fd69 bnez a0,c002b834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25339 emit_op(s, OP_scope_in_private_field); - c002b68c: 0c200593 li a1,194 - c002b690: 8522 mv a0,s0 - c002b692: dabd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25332 + c002b85c: 0c200593 li a1,194 + c002b860: 8522 mv a0,s0 + c002b862: cc9d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25340 emit_atom(s, atom); - c002b696: 85a6 mv a1,s1 - c002b698: 8522 mv a0,s0 - c002b69a: e55db0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25333 + c002b866: 85a6 mv a1,s1 + c002b868: 8522 mv a0,s0 + c002b86a: d73db0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25341 emit_u16(s, s->cur_func->scope_level); - c002b69e: 743c ld a5,104(s0) - c002b6a0: 8522 mv a0,s0 - c002b6a2: 0e07d583 lhu a1,224(a5) - c002b6a6: c65d90ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25334 + c002b86e: 743c ld a5,104(s0) + c002b870: 8522 mv a0,s0 + c002b872: 0e07d583 lhu a1,224(a5) + c002b876: b83d90ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25342 JS_FreeAtom(s->ctx, atom); - c002b6aa: 6008 ld a0,0(s0) - c002b6ac: 85a6 mv a1,s1 - c002b6ae: e5fdb0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25473 -} - c002b6b2: 60e6 ld ra,88(sp) - c002b6b4: 6446 ld s0,80(sp) - c002b6b6: 64a6 ld s1,72(sp) - c002b6b8: 6906 ld s2,64(sp) - c002b6ba: 79e2 ld s3,56(sp) - c002b6bc: 7a42 ld s4,48(sp) - c002b6be: 7aa2 ld s5,40(sp) - c002b6c0: 7b02 ld s6,32(sp) - c002b6c2: 6be2 ld s7,24(sp) - c002b6c4: 6c42 ld s8,16(sp) - c002b6c6: 6ca2 ld s9,8(sp) - c002b6c8: 856a mv a0,s10 - c002b6ca: 6d02 ld s10,0(sp) - c002b6cc: 6125 addi sp,sp,96 - c002b6ce: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25337 + c002b87a: 6008 ld a0,0(s0) + c002b87c: 85a6 mv a1,s1 + c002b87e: d7ddb0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25481 +} + c002b882: 60e6 ld ra,88(sp) + c002b884: 6446 ld s0,80(sp) + c002b886: 64a6 ld s1,72(sp) + c002b888: 6906 ld s2,64(sp) + c002b88a: 79e2 ld s3,56(sp) + c002b88c: 7a42 ld s4,48(sp) + c002b88e: 7aa2 ld s5,40(sp) + c002b890: 7b02 ld s6,32(sp) + c002b892: 6be2 ld s7,24(sp) + c002b894: 6c42 ld s8,16(sp) + c002b896: 6ca2 ld s9,8(sp) + c002b898: 856a mv a0,s10 + c002b89a: 6d02 ld s10,0(sp) + c002b89c: 6125 addi sp,sp,96 + c002b89e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25345 if (js_parse_expr_binary(s, level - 1, parse_flags)) - c002b6d0: 34fd addiw s1,s1,-1 - c002b6d2: 00048a1b sext.w s4,s1 - c002b6d6: 864e mv a2,s3 - c002b6d8: 85d2 mv a1,s4 - c002b6da: 8522 mv a0,s0 - c002b6dc: f2bff0ef jal ra,c002b606 - c002b6e0: 8d2a mv s10,a0 - c002b6e2: f549 bnez a0,c002b66c - c002b6e4: 02049793 slli a5,s1,0x20 - c002b6e8: 01e7d493 srli s1,a5,0x1e - c002b6ec: 00034a97 auipc s5,0x34 - c002b6f0: 508a8a93 addi s5,s5,1288 # c005fbf4 - c002b6f4: 8b52 mv s6,s4 - c002b6f6: 4b9d li s7,7 - c002b6f8: 01548933 add s2,s1,s5 - c002b6fc: 07c00c13 li s8,124 - c002b700: 00049c97 auipc s9,0x49 - c002b704: 278c8c93 addi s9,s9,632 # c0074978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25341 + c002b8a0: 34fd addiw s1,s1,-1 + c002b8a2: 00048a1b sext.w s4,s1 + c002b8a6: 864e mv a2,s3 + c002b8a8: 85d2 mv a1,s4 + c002b8aa: 8522 mv a0,s0 + c002b8ac: f2bff0ef jal ra,c002b7d6 + c002b8b0: 8d2a mv s10,a0 + c002b8b2: f549 bnez a0,c002b83c + c002b8b4: 02049793 slli a5,s1,0x20 + c002b8b8: 01e7d493 srli s1,a5,0x1e + c002b8bc: 00034a97 auipc s5,0x34 + c002b8c0: 598a8a93 addi s5,s5,1432 # c005fe54 + c002b8c4: 8b52 mv s6,s4 + c002b8c6: 4b9d li s7,7 + c002b8c8: 01548933 add s2,s1,s5 + c002b8cc: 07c00c13 li s8,124 + c002b8d0: 00049c97 auipc s9,0x49 + c002b8d4: 308c8c93 addi s9,s9,776 # c0074bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25349 op = s->token.val; - c002b708: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25342 + c002b8d8: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25350 switch(level) { - c002b70a: 116be163 bltu s7,s6,c002b80c - c002b70e: 00092703 lw a4,0(s2) - c002b712: 9756 add a4,a4,s5 - c002b714: 8702 jr a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25344 + c002b8da: 116be163 bltu s7,s6,c002b9dc + c002b8de: 00092703 lw a4,0(s2) + c002b8e2: 9756 add a4,a4,s5 + c002b8e4: 8702 jr a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25352 switch(op) { - c002b716: 02a00713 li a4,42 - c002b71a: 0ee78b63 beq a5,a4,c002b810 - c002b71e: 02f00713 li a4,47 - c002b722: 0ee78a63 beq a5,a4,c002b816 - c002b726: 02500713 li a4,37 - c002b72a: f8e794e3 bne a5,a4,c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25357 + c002b8e6: 02a00713 li a4,42 + c002b8ea: 0ee78b63 beq a5,a4,c002b9e0 + c002b8ee: 02f00713 li a4,47 + c002b8f2: 0ee78a63 beq a5,a4,c002b9e6 + c002b8f6: 02500713 li a4,37 + c002b8fa: f8e794e3 bne a5,a4,c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25365 opcode = OP_mod; - c002b72e: 09d00493 li s1,157 - c002b732: a02d j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25364 + c002b8fe: 09d00493 li s1,157 + c002b902: a02d j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25372 switch(op) { - c002b734: 02b00713 li a4,43 - c002b738: 0ee78263 beq a5,a4,c002b81c - c002b73c: 02d00713 li a4,45 - c002b740: f6e799e3 bne a5,a4,c002b6b2 - c002b744: 09f00493 li s1,159 - c002b748: a811 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25376 + c002b904: 02b00713 li a4,43 + c002b908: 0ee78263 beq a5,a4,c002b9ec + c002b90c: 02d00713 li a4,45 + c002b910: f6e799e3 bne a5,a4,c002b882 + c002b914: 09f00493 li s1,159 + c002b918: a811 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25384 switch(op) { - c002b74a: 0007849b sext.w s1,a5 - c002b74e: 4709 li a4,2 - c002b750: 06a7879b addiw a5,a5,106 - c002b754: f4f76fe3 bltu a4,a5,c002b6b2 - c002b758: 10b4849b addiw s1,s1,267 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25466 + c002b91a: 0007849b sext.w s1,a5 + c002b91e: 4709 li a4,2 + c002b920: 06a7879b addiw a5,a5,106 + c002b924: f4f76fe3 bltu a4,a5,c002b882 + c002b928: 10b4849b addiw s1,s1,267 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25474 if (next_token(s)) - c002b75c: 8522 mv a0,s0 - c002b75e: c38fb0ef jal ra,c0026b96 - c002b762: f00515e3 bnez a0,c002b66c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25468 + c002b92c: 8522 mv a0,s0 + c002b92e: c38fb0ef jal ra,c0026d66 + c002b932: f00515e3 bnez a0,c002b83c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25476 if (js_parse_expr_binary(s, level - 1, parse_flags)) - c002b766: 864e mv a2,s3 - c002b768: 85d2 mv a1,s4 - c002b76a: 8522 mv a0,s0 - c002b76c: e9bff0ef jal ra,c002b606 - c002b770: ee051ee3 bnez a0,c002b66c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25470 + c002b936: 864e mv a2,s3 + c002b938: 85d2 mv a1,s4 + c002b93a: 8522 mv a0,s0 + c002b93c: e9bff0ef jal ra,c002b7d6 + c002b940: ee051ee3 bnez a0,c002b83c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25478 emit_op(s, opcode); - c002b774: 0ff4f593 zext.b a1,s1 - c002b778: 8522 mv a0,s0 - c002b77a: cc3d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25341 + c002b944: 0ff4f593 zext.b a1,s1 + c002b948: 8522 mv a0,s0 + c002b94a: be1d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25349 op = s->token.val; - c002b77e: b769 j c002b708 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25391 - switch(op) { - c002b780: fb800713 li a4,-72 - c002b784: 08e78f63 beq a5,a4,c002b822 - c002b788: fb900713 li a4,-71 - c002b78c: 02e7d163 bge a5,a4,c002b7ae - c002b790: f9c00713 li a4,-100 - c002b794: 08e78a63 beq a5,a4,c002b828 - c002b798: fb700713 li a4,-73 - c002b79c: 02e78463 beq a5,a4,c002b7c4 - c002b7a0: f9a00713 li a4,-102 - c002b7a4: f0e797e3 bne a5,a4,c002b6b2 + c002b94e: b769 j c002b8d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25399 + switch(op) { + c002b950: fb800713 li a4,-72 + c002b954: 08e78f63 beq a5,a4,c002b9f2 + c002b958: fb900713 li a4,-71 + c002b95c: 02e7d163 bge a5,a4,c002b97e + c002b960: f9c00713 li a4,-100 + c002b964: 08e78a63 beq a5,a4,c002b9f8 + c002b968: fb700713 li a4,-73 + c002b96c: 02e78463 beq a5,a4,c002b994 + c002b970: f9a00713 li a4,-102 + c002b974: f0e797e3 bne a5,a4,c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25407 opcode = OP_lte; - c002b7a8: 0a500493 li s1,165 - c002b7ac: bf45 j c002b75c - c002b7ae: 03c00713 li a4,60 - c002b7b2: 06e78e63 beq a5,a4,c002b82e - c002b7b6: 03e00713 li a4,62 - c002b7ba: eee79ce3 bne a5,a4,c002b6b2 - c002b7be: 0a600493 li s1,166 - c002b7c2: bf69 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25408 + c002b978: 0a500493 li s1,165 + c002b97c: bf45 j c002b92c + c002b97e: 03c00713 li a4,60 + c002b982: 06e78e63 beq a5,a4,c002b9fe + c002b986: 03e00713 li a4,62 + c002b98a: eee79ce3 bne a5,a4,c002b882 + c002b98e: 0a600493 li s1,166 + c002b992: bf69 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25416 if (parse_flags & PF_IN_ACCEPTED) { - c002b7c4: 06099863 bnez s3,c002b834 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25387 + c002b994: 06099863 bnez s3,c002ba04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25395 return 0; - c002b7c8: 4d01 li s10,0 - c002b7ca: b5e5 j c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25419 + c002b998: 4d01 li s10,0 + c002b99a: b5e5 j c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25427 switch(op) { - c002b7cc: 0637879b addiw a5,a5,99 - c002b7d0: 0007869b sext.w a3,a5 - c002b7d4: 470d li a4,3 - c002b7d6: ecd76ee3 bltu a4,a3,c002b6b2 - c002b7da: 1782 slli a5,a5,0x20 - c002b7dc: 9381 srli a5,a5,0x20 - c002b7de: 97e6 add a5,a5,s9 - c002b7e0: 0007c483 lbu s1,0(a5) - c002b7e4: bfa5 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25437 + c002b99c: 0637879b addiw a5,a5,99 + c002b9a0: 0007869b sext.w a3,a5 + c002b9a4: 470d li a4,3 + c002b9a6: ecd76ee3 bltu a4,a3,c002b882 + c002b9aa: 1782 slli a5,a5,0x20 + c002b9ac: 9381 srli a5,a5,0x20 + c002b9ae: 97e6 add a5,a5,s9 + c002b9b0: 0007c483 lbu s1,0(a5) + c002b9b4: bfa5 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25445 switch(op) { - c002b7e6: 02600713 li a4,38 - c002b7ea: ece794e3 bne a5,a4,c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25439 + c002b9b6: 02600713 li a4,38 + c002b9ba: ece794e3 bne a5,a4,c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25447 opcode = OP_and; - c002b7ee: 0ae00493 li s1,174 - c002b7f2: b7ad j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25446 + c002b9be: 0ae00493 li s1,174 + c002b9c2: b7ad j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25454 switch(op) { - c002b7f4: 05e00713 li a4,94 - c002b7f8: eae79de3 bne a5,a4,c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25448 + c002b9c4: 05e00713 li a4,94 + c002b9c8: eae79de3 bne a5,a4,c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25456 opcode = OP_xor; - c002b7fc: 0af00493 li s1,175 - c002b800: bfb1 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25455 + c002b9cc: 0af00493 li s1,175 + c002b9d0: bfb1 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25463 switch(op) { - c002b802: eb8798e3 bne a5,s8,c002b6b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25457 + c002b9d2: eb8798e3 bne a5,s8,c002b882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25465 opcode = OP_or; - c002b806: 0b000493 li s1,176 - c002b80a: bf89 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25464 + c002b9d6: 0b000493 li s1,176 + c002b9da: bf89 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25472 abort(); - c002b80c: 7ff290ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25346 + c002b9dc: 7ff290ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25354 opcode = OP_mul; - c002b810: 09b00493 li s1,155 - c002b814: b7a1 j c002b75c - c002b816: 09c00493 li s1,156 - c002b81a: b789 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25366 + c002b9e0: 09b00493 li s1,155 + c002b9e4: b7a1 j c002b92c + c002b9e6: 09c00493 li s1,156 + c002b9ea: b789 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25374 opcode = OP_add; - c002b81c: 09e00493 li s1,158 - c002b820: bf35 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25405 + c002b9ec: 09e00493 li s1,158 + c002b9f0: bf35 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25413 opcode = OP_instanceof; - c002b822: 0a800493 li s1,168 - c002b826: bf1d j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25402 + c002b9f2: 0a800493 li s1,168 + c002b9f6: bf1d j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25410 opcode = OP_gte; - c002b828: 0a700493 li s1,167 - c002b82c: bf05 j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25393 + c002b9f8: 0a700493 li s1,167 + c002b9fc: bf05 j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25401 opcode = OP_lt; - c002b82e: 0a400493 li s1,164 - c002b832: b72d j c002b75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25409 + c002b9fe: 0a400493 li s1,164 + c002ba02: b72d j c002b92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25417 opcode = OP_in; - c002b834: 0a900493 li s1,169 - c002b838: b715 j c002b75c + c002ba04: 0a900493 li s1,169 + c002ba08: b715 j c002b92c -00000000c002b83a : +00000000c002ba0a : js_parse_logical_and_or(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25478 -{ - c002b83a: 7139 addi sp,sp,-64 - c002b83c: f822 sd s0,48(sp) - c002b83e: f426 sd s1,40(sp) - c002b840: e852 sd s4,16(sp) - c002b842: fc06 sd ra,56(sp) - c002b844: f04a sd s2,32(sp) - c002b846: ec4e sd s3,24(sp) - c002b848: e456 sd s5,8(sp) - c002b84a: e05a sd s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25481 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25486 +{ + c002ba0a: 7139 addi sp,sp,-64 + c002ba0c: f822 sd s0,48(sp) + c002ba0e: f426 sd s1,40(sp) + c002ba10: e852 sd s4,16(sp) + c002ba12: fc06 sd ra,56(sp) + c002ba14: f04a sd s2,32(sp) + c002ba16: ec4e sd s3,24(sp) + c002ba18: e456 sd s5,8(sp) + c002ba1a: e05a sd s6,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25489 if (op == TOK_LAND) { - c002b84c: fa100793 li a5,-95 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25478 + c002ba1c: fa100793 li a5,-95 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25486 { - c002b850: 842a mv s0,a0 - c002b852: 84ae mv s1,a1 - c002b854: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25481 + c002ba20: 842a mv s0,a0 + c002ba22: 84ae mv s1,a1 + c002ba24: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25489 if (op == TOK_LAND) { - c002b856: 06f59863 bne a1,a5,c002b8c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25482 + c002ba26: 06f59863 bne a1,a5,c002ba96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25490 if (js_parse_expr_binary(s, 8, parse_flags)) - c002b85a: 45a1 li a1,8 - c002b85c: dabff0ef jal ra,c002b606 - c002b860: e539 bnez a0,c002b8ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25488 + c002ba2a: 45a1 li a1,8 + c002ba2c: dabff0ef jal ra,c002b7d6 + c002ba30: e539 bnez a0,c002ba7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25496 if (s->token.val == op) { - c002b862: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25515 + c002ba32: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25523 return 0; - c002b864: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25488 + c002ba34: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25496 if (s->token.val == op) { - c002b866: 04979563 bne a5,s1,c002b8b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25489 + c002ba36: 04979563 bne a5,s1,c002ba80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25497 label1 = new_label(s); - c002b86a: 8522 mv a0,s0 - c002b86c: c44ec0ef jal ra,c0017cb0 - c002b870: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25495 + c002ba3a: 8522 mv a0,s0 + c002ba3c: c44ec0ef jal ra,c0017e80 + c002ba40: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25503 emit_goto(s, op == TOK_LAND ? OP_if_false : OP_if_true, label1); - c002b872: 0c948a9b addiw s5,s1,201 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25498 + c002ba42: 0c948a9b addiw s5,s1,201 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25506 if (op == TOK_LAND) { - c002b876: fa100b13 li s6,-95 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25492 + c002ba46: fa100b13 li s6,-95 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25500 if (next_token(s)) - c002b87a: 8522 mv a0,s0 - c002b87c: b1afb0ef jal ra,c0026b96 - c002b880: 892a mv s2,a0 - c002b882: e515 bnez a0,c002b8ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25494 + c002ba4a: 8522 mv a0,s0 + c002ba4c: b1afb0ef jal ra,c0026d66 + c002ba50: 892a mv s2,a0 + c002ba52: e515 bnez a0,c002ba7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25502 emit_op(s, OP_dup); - c002b884: 45c5 li a1,17 - c002b886: 8522 mv a0,s0 - c002b888: bb5d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25495 + c002ba54: 45c5 li a1,17 + c002ba56: 8522 mv a0,s0 + c002ba58: ad3d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25503 emit_goto(s, op == TOK_LAND ? OP_if_false : OP_if_true, label1); - c002b88c: 864e mv a2,s3 - c002b88e: 85d6 mv a1,s5 - c002b890: 8522 mv a0,s0 - c002b892: c26ec0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25496 + c002ba5c: 864e mv a2,s3 + c002ba5e: 85d6 mv a1,s5 + c002ba60: 8522 mv a0,s0 + c002ba62: c26ec0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25504 emit_op(s, OP_drop); - c002b896: 45b9 li a1,14 - c002b898: 8522 mv a0,s0 - c002b89a: ba3d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25499 + c002ba66: 45b9 li a1,14 + c002ba68: 8522 mv a0,s0 + c002ba6a: ac1d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25507 if (js_parse_expr_binary(s, 8, parse_flags)) - c002b89e: 8652 mv a2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25498 + c002ba6e: 8652 mv a2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25506 if (op == TOK_LAND) { - c002b8a0: 05649f63 bne s1,s6,c002b8fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25499 + c002ba70: 05649f63 bne s1,s6,c002bace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25507 if (js_parse_expr_binary(s, 8, parse_flags)) - c002b8a4: 45a1 li a1,8 - c002b8a6: 8522 mv a0,s0 - c002b8a8: d5fff0ef jal ra,c002b606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25502 + c002ba74: 45a1 li a1,8 + c002ba76: 8522 mv a0,s0 + c002ba78: d5fff0ef jal ra,c002b7d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25510 if (js_parse_logical_and_or(s, TOK_LAND, - c002b8ac: c115 beqz a0,c002b8d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25483 + c002ba7c: c115 beqz a0,c002baa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25491 return -1; - c002b8ae: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25516 + c002ba7e: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25524 } - c002b8b0: 70e2 ld ra,56(sp) - c002b8b2: 7442 ld s0,48(sp) - c002b8b4: 74a2 ld s1,40(sp) - c002b8b6: 69e2 ld s3,24(sp) - c002b8b8: 6a42 ld s4,16(sp) - c002b8ba: 6aa2 ld s5,8(sp) - c002b8bc: 6b02 ld s6,0(sp) - c002b8be: 854a mv a0,s2 - c002b8c0: 7902 ld s2,32(sp) - c002b8c2: 6121 addi sp,sp,64 - c002b8c4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25485 + c002ba80: 70e2 ld ra,56(sp) + c002ba82: 7442 ld s0,48(sp) + c002ba84: 74a2 ld s1,40(sp) + c002ba86: 69e2 ld s3,24(sp) + c002ba88: 6a42 ld s4,16(sp) + c002ba8a: 6aa2 ld s5,8(sp) + c002ba8c: 6b02 ld s6,0(sp) + c002ba8e: 854a mv a0,s2 + c002ba90: 7902 ld s2,32(sp) + c002ba92: 6121 addi sp,sp,64 + c002ba94: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25493 if (js_parse_logical_and_or(s, TOK_LAND, parse_flags)) - c002b8c6: fa100593 li a1,-95 - c002b8ca: f71ff0ef jal ra,c002b83a - c002b8ce: bf49 j c002b860 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25506 + c002ba96: fa100593 li a1,-95 + c002ba9a: f71ff0ef jal ra,c002ba0a + c002ba9e: bf49 j c002ba30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25514 if (s->token.val != op) { - c002b8d0: 4c1c lw a5,24(s0) - c002b8d2: fa9784e3 beq a5,s1,c002b87a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25507 + c002baa0: 4c1c lw a5,24(s0) + c002baa2: fa9784e3 beq a5,s1,c002ba4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25515 if (s->token.val == TOK_DOUBLE_QUESTION_MARK) - c002b8d6: fa600713 li a4,-90 - c002b8da: 02e79863 bne a5,a4,c002b90a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25508 - return js_parse_error(s, "cannot mix ?? with && or ||"); - c002b8de: 8522 mv a0,s0 + c002baa6: fa600713 li a4,-90 + c002baaa: 02e79863 bne a5,a4,c002bada /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25516 -} - c002b8e0: 7442 ld s0,48(sp) - c002b8e2: 70e2 ld ra,56(sp) - c002b8e4: 74a2 ld s1,40(sp) - c002b8e6: 7902 ld s2,32(sp) - c002b8e8: 69e2 ld s3,24(sp) - c002b8ea: 6a42 ld s4,16(sp) - c002b8ec: 6aa2 ld s5,8(sp) - c002b8ee: 6b02 ld s6,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25508 return js_parse_error(s, "cannot mix ?? with && or ||"); - c002b8f0: 00034597 auipc a1,0x34 - c002b8f4: 32858593 addi a1,a1,808 # c005fc18 + c002baae: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25524 +} + c002bab0: 7442 ld s0,48(sp) + c002bab2: 70e2 ld ra,56(sp) + c002bab4: 74a2 ld s1,40(sp) + c002bab6: 7902 ld s2,32(sp) + c002bab8: 69e2 ld s3,24(sp) + c002baba: 6a42 ld s4,16(sp) + c002babc: 6aa2 ld s5,8(sp) + c002babe: 6b02 ld s6,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25516 + return js_parse_error(s, "cannot mix ?? with && or ||"); + c002bac0: 00034597 auipc a1,0x34 + c002bac4: 3b858593 addi a1,a1,952 # c005fe78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25524 } - c002b8f8: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25508 + c002bac8: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25516 return js_parse_error(s, "cannot mix ?? with && or ||"); - c002b8fa: 9bffa06f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25502 + c002baca: 9bffa06f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25510 if (js_parse_logical_and_or(s, TOK_LAND, - c002b8fe: fa100593 li a1,-95 - c002b902: 8522 mv a0,s0 - c002b904: f37ff0ef jal ra,c002b83a - c002b908: b755 j c002b8ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25513 + c002bace: fa100593 li a1,-95 + c002bad2: 8522 mv a0,s0 + c002bad4: f37ff0ef jal ra,c002ba0a + c002bad8: b755 j c002ba7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25521 emit_label(s, label1); - c002b90a: 85ce mv a1,s3 - c002b90c: 8522 mv a0,s0 - c002b90e: ccdd90ef jal ra,c00055da - c002b912: bf79 j c002b8b0 + c002bada: 85ce mv a1,s3 + c002badc: 8522 mv a0,s0 + c002bade: bebd90ef jal ra,c00056c8 + c002bae2: bf79 j c002ba80 -00000000c002b914 : +00000000c002bae4 : js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23958 -{ - c002b914: 7171 addi sp,sp,-176 - c002b916: f122 sd s0,160(sp) - c002b918: ed26 sd s1,152(sp) - c002b91a: e94a sd s2,144(sp) - c002b91c: e54e sd s3,136(sp) - c002b91e: e152 sd s4,128(sp) - c002b920: f0e2 sd s8,96(sp) - c002b922: 84be mv s1,a5 - c002b924: f506 sd ra,168(sp) - c002b926: fcd6 sd s5,120(sp) - c002b928: f8da sd s6,112(sp) - c002b92a: f4de sd s7,104(sp) - c002b92c: ece6 sd s9,88(sp) - c002b92e: e8ea sd s10,80(sp) - c002b930: e4ee sd s11,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23965 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23966 +{ + c002bae4: 7171 addi sp,sp,-176 + c002bae6: f122 sd s0,160(sp) + c002bae8: ed26 sd s1,152(sp) + c002baea: e94a sd s2,144(sp) + c002baec: e54e sd s3,136(sp) + c002baee: e152 sd s4,128(sp) + c002baf0: f0e2 sd s8,96(sp) + c002baf2: 84be mv s1,a5 + c002baf4: f506 sd ra,168(sp) + c002baf6: fcd6 sd s5,120(sp) + c002baf8: f8da sd s6,112(sp) + c002bafa: f4de sd s7,104(sp) + c002bafc: ece6 sd s9,88(sp) + c002bafe: e8ea sd s10,80(sp) + c002bb00: e4ee sd s11,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23973 if (has_ellipsis < 0) { - c002b932: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23958 -{ - c002b934: 842a mv s0,a0 - c002b936: 892e mv s2,a1 - c002b938: 8a32 mv s4,a2 - c002b93a: 8c36 mv s8,a3 - c002b93c: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23965 + c002bb02: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23966 +{ + c002bb04: 842a mv s0,a0 + c002bb06: 892e mv s2,a1 + c002bb08: 8a32 mv s4,a2 + c002bb0a: 8c36 mv s8,a3 + c002bb0c: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23973 if (has_ellipsis < 0) { - c002b93e: 00f71963 bne a4,a5,c002b950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23967 + c002bb0e: 00f71963 bne a4,a5,c002bb20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23975 js_parse_skip_parens_token(s, &skip_bits, FALSE); - c002b942: 4601 li a2,0 - c002b944: 080c addi a1,sp,16 - c002b946: d59fb0ef jal ra,c002769e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23968 + c002bb12: 4601 li a2,0 + c002bb14: 080c addi a1,sp,16 + c002bb16: d59fb0ef jal ra,c002786e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23976 has_ellipsis = skip_bits & SKIP_HAS_ELLIPSIS; - c002b94a: 49c2 lw s3,16(sp) - c002b94c: 0029f993 andi s3,s3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23971 + c002bb1a: 49c2 lw s3,16(sp) + c002bb1c: 0029f993 andi s3,s3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23979 label_parse = new_label(s); - c002b950: 8522 mv a0,s0 - c002b952: b5eec0ef jal ra,c0017cb0 - c002b956: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23972 + c002bb20: 8522 mv a0,s0 + c002bb22: b5eec0ef jal ra,c0017e80 + c002bb26: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23980 label_assign = new_label(s); - c002b958: 8522 mv a0,s0 - c002b95a: b56ec0ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23974 + c002bb28: 8522 mv a0,s0 + c002bb2a: b56ec0ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23982 start_addr = s->cur_func->byte_code.size; - c002b95e: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23972 + c002bb2e: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23980 label_assign = new_label(s); - c002b960: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23974 + c002bb30: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23982 start_addr = s->cur_func->byte_code.size; - c002b962: 1387bc83 ld s9,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23975 + c002bb32: 1387bc83 ld s9,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23983 if (hasval) { - c002b966: 040c0763 beqz s8,c002b9b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23977 + c002bb36: 040c0763 beqz s8,c002bb84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23985 emit_op(s, OP_dup); - c002b96a: 45c5 li a1,17 - c002b96c: 8522 mv a0,s0 - c002b96e: acfd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23978 + c002bb3a: 45c5 li a1,17 + c002bb3c: 8522 mv a0,s0 + c002bb3e: 9edd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23986 emit_op(s, OP_undefined); - c002b972: 4599 li a1,6 - c002b974: 8522 mv a0,s0 - c002b976: ac7d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23979 + c002bb42: 4599 li a1,6 + c002bb44: 8522 mv a0,s0 + c002bb46: 9e5d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23987 emit_op(s, OP_strict_eq); - c002b97a: 0ac00593 li a1,172 - c002b97e: 8522 mv a0,s0 - c002b980: abdd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23980 + c002bb4a: 0ac00593 li a1,172 + c002bb4e: 8522 mv a0,s0 + c002bb50: 9dbd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23988 emit_goto(s, OP_if_true, label_parse); - c002b984: 06b00593 li a1,107 - c002b988: 865a mv a2,s6 - c002b98a: 8522 mv a0,s0 - c002b98c: b2cec0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23981 + c002bb54: 06b00593 li a1,107 + c002bb58: 865a mv a2,s6 + c002bb5a: 8522 mv a0,s0 + c002bb5c: b2cec0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23989 emit_label(s, label_assign); - c002b990: 85de mv a1,s7 - c002b992: 8522 mv a0,s0 - c002b994: c47d90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23988 + c002bb60: 85de mv a1,s7 + c002bb62: 8522 mv a0,s0 + c002bb64: b65d90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23996 assign_addr = s->cur_func->byte_code.size; - c002b998: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23989 + c002bb68: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23997 if (s->token.val == '{') { - c002b99a: 07b00713 li a4,123 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23988 + c002bb6a: 07b00713 li a4,123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23996 assign_addr = s->cur_func->byte_code.size; - c002b99e: 1387bd03 ld s10,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23989 + c002bb6e: 1387bd03 ld s10,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23997 if (s->token.val == '{') { - c002b9a2: 4c1c lw a5,24(s0) - c002b9a4: 52e79363 bne a5,a4,c002beca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23990 + c002bb72: 4c1c lw a5,24(s0) + c002bb74: 52e79363 bne a5,a4,c002c09a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23998 if (next_token(s)) - c002b9a8: 8522 mv a0,s0 - c002b9aa: 9ecfb0ef jal ra,c0026b96 - c002b9ae: c115 beqz a0,c002b9d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24370 + c002bb78: 8522 mv a0,s0 + c002bb7a: 9ecfb0ef jal ra,c0026d66 + c002bb7e: c115 beqz a0,c002bba2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24378 return -1; - c002b9b0: 54fd li s1,-1 - c002b9b2: a365 j c002bf5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23983 + c002bb80: 54fd li s1,-1 + c002bb82: a365 j c002c12a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23991 emit_goto(s, OP_goto, label_parse); - c002b9b4: 865a mv a2,s6 - c002b9b6: 06c00593 li a1,108 - c002b9ba: 8522 mv a0,s0 - c002b9bc: afcec0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23984 + c002bb84: 865a mv a2,s6 + c002bb86: 06c00593 li a1,108 + c002bb8a: 8522 mv a0,s0 + c002bb8c: afcec0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23992 emit_label(s, label_assign); - c002b9c0: 85de mv a1,s7 - c002b9c2: 8522 mv a0,s0 - c002b9c4: c17d90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23986 + c002bb90: 85de mv a1,s7 + c002bb92: 8522 mv a0,s0 + c002bb94: b35d90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23994 emit_op(s, OP_dup); - c002b9c8: 45c5 li a1,17 - c002b9ca: 8522 mv a0,s0 - c002b9cc: a71d90ef jal ra,c000543c - c002b9d0: b7e1 j c002b998 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23993 + c002bb98: 45c5 li a1,17 + c002bb9a: 8522 mv a0,s0 + c002bb9c: 98fd90ef jal ra,c000552a + c002bba0: b7e1 j c002bb68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24001 emit_op(s, OP_to_object); - c002b9d2: 07100593 li a1,113 - c002b9d6: 8522 mv a0,s0 - c002b9d8: a65d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23994 + c002bba2: 07100593 li a1,113 + c002bba6: 8522 mv a0,s0 + c002bba8: 983d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24002 if (has_ellipsis) { - c002b9dc: 00098a63 beqz s3,c002b9f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23996 + c002bbac: 00098a63 beqz s3,c002bbc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24004 emit_op(s, OP_object); - c002b9e0: 45ad li a1,11 - c002b9e2: 8522 mv a0,s0 - c002b9e4: a59d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23997 + c002bbb0: 45ad li a1,11 + c002bbb2: 8522 mv a0,s0 + c002bbb4: 977d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24005 emit_op(s, OP_swap); - c002b9e8: 45ed li a1,27 - c002b9ea: 8522 mv a0,s0 - c002b9ec: a51d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24215 + c002bbb8: 45ed li a1,27 + c002bbba: 8522 mv a0,s0 + c002bbbc: 96fd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24223 put_lvalue(s, opcode, scope, var_name, label_lvalue, - c002b9f0: 03790a9b addiw s5,s2,55 - c002b9f4: ff7afa93 andi s5,s5,-9 - c002b9f8: 2a81 sext.w s5,s5 - c002b9fa: 001aba93 seqz s5,s5 - c002b9fe: a15d j c002bea4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24006 + c002bbc0: 03790a9b addiw s5,s2,55 + c002bbc4: ff7afa93 andi s5,s5,-9 + c002bbc8: 2a81 sext.w s5,s5 + c002bbca: 001aba93 seqz s5,s5 + c002bbce: a15d j c002c074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24014 if (next_token(s)) - c002ba00: 8522 mv a0,s0 - c002ba02: 994fb0ef jal ra,c0026b96 - c002ba06: f54d bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24008 + c002bbd0: 8522 mv a0,s0 + c002bbd2: 994fb0ef jal ra,c0026d66 + c002bbd6: f54d bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24016 if (tok) { - c002ba08: 04090463 beqz s2,c002ba50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24009 + c002bbd8: 04090463 beqz s2,c002bc20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24017 var_name = js_parse_destructuring_var(s, tok, is_arg); - c002ba0c: 85d2 mv a1,s4 - c002ba0e: 8522 mv a0,s0 - c002ba10: 851fc0ef jal ra,c0028260 - c002ba14: 2501 sext.w a0,a0 - c002ba16: c22a sw a0,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24010 + c002bbdc: 85d2 mv a1,s4 + c002bbde: 8522 mv a0,s0 + c002bbe0: 851fc0ef jal ra,c0028430 + c002bbe4: 2501 sext.w a0,a0 + c002bbe6: c22a sw a0,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24018 if (var_name == JS_ATOM_NULL) - c002ba18: dd41 beqz a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24012 + c002bbe8: dd41 beqz a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24020 opcode = OP_scope_get_var; - c002ba1a: 0b800793 li a5,184 - c002ba1e: c43e sw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24013 + c002bbea: 0b800793 li a5,184 + c002bbee: c43e sw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24021 scope = s->cur_func->scope_level; - c002ba20: 743c ld a5,104(s0) - c002ba22: 0e07a783 lw a5,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24015 + c002bbf0: 743c ld a5,104(s0) + c002bbf2: 0e07a783 lw a5,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24023 depth_lvalue = 0; - c002ba26: ca02 sw zero,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24013 + c002bbf6: ca02 sw zero,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24021 scope = s->cur_func->scope_level; - c002ba28: c63e sw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24014 + c002bbf8: c63e sw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24022 label_lvalue = -1; - c002ba2a: 57fd li a5,-1 - c002ba2c: c03e sw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24024 + c002bbfa: 57fd li a5,-1 + c002bbfc: c03e sw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24032 if (s->token.val != '}') { - c002ba2e: 4c18 lw a4,24(s0) - c002ba30: 07d00793 li a5,125 - c002ba34: 04f70063 beq a4,a5,c002ba74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24025 + c002bbfe: 4c18 lw a4,24(s0) + c002bc00: 07d00793 li a5,125 + c002bc04: 04f70063 beq a4,a5,c002bc44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24033 js_parse_error(s, "assignment rest property must be last"); - c002ba38: 00034597 auipc a1,0x34 - c002ba3c: 22058593 addi a1,a1,544 # c005fc58 - c002ba40: 8522 mv a0,s0 - c002ba42: 877fa0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24369 + c002bc08: 00034597 auipc a1,0x34 + c002bc0c: 2b058593 addi a1,a1,688 # c005feb8 + c002bc10: 8522 mv a0,s0 + c002bc12: 877fa0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24377 JS_FreeAtom(s->ctx, var_name); - c002ba46: 4592 lw a1,4(sp) - c002ba48: 6008 ld a0,0(s0) - c002ba4a: ac3db0ef jal ra,c000750c - c002ba4e: b78d j c002b9b0 + c002bc16: 4592 lw a1,4(sp) + c002bc18: 6008 ld a0,0(s0) + c002bc1a: 9e1db0ef jal ra,c00075fa + c002bc1e: b78d j c002bb80 js_parse_left_hand_side_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22799 return js_parse_postfix_expr(s, PF_POSTFIX_CALL); - c002ba50: 4589 li a1,2 - c002ba52: 8522 mv a0,s0 - c002ba54: f5efe0ef jal ra,c002a1b2 + c002bc20: 4589 li a1,2 + c002bc22: 8522 mv a0,s0 + c002bc24: f5efe0ef jal ra,c002a382 js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24025 if (js_parse_left_hand_side_expr(s)) - c002ba58: fd21 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24020 - if (get_lvalue(s, &opcode, &scope, &var_name, - c002ba5a: 07b00893 li a7,123 - c002ba5e: 4801 li a6,0 - c002ba60: 085c addi a5,sp,20 - c002ba62: 870a mv a4,sp - c002ba64: 0054 addi a3,sp,4 - c002ba66: 0070 addi a2,sp,12 - c002ba68: 002c addi a1,sp,8 - c002ba6a: 8522 mv a0,s0 - c002ba6c: f0ffb0ef jal ra,c002797a - c002ba70: dd5d beqz a0,c002ba2e - c002ba72: bf3d j c002b9b0 + c002bc28: fd21 bnez a0,c002bb80 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24028 + if (get_lvalue(s, &opcode, &scope, &var_name, + c002bc2a: 07b00893 li a7,123 + c002bc2e: 4801 li a6,0 + c002bc30: 085c addi a5,sp,20 + c002bc32: 870a mv a4,sp + c002bc34: 0054 addi a3,sp,4 + c002bc36: 0070 addi a2,sp,12 + c002bc38: 002c addi a1,sp,8 + c002bc3a: 8522 mv a0,s0 + c002bc3c: f0ffb0ef jal ra,c0027b4a + c002bc40: dd5d beqz a0,c002bbfe + c002bc42: bf3d j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24036 emit_op(s, OP_object); /* target */ - c002ba74: 45ad li a1,11 - c002ba76: 8522 mv a0,s0 - c002ba78: 9c5d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24029 + c002bc44: 45ad li a1,11 + c002bc46: 8522 mv a0,s0 + c002bc48: 8e3d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24037 emit_op(s, OP_copy_data_properties); - c002ba7c: 05300593 li a1,83 - c002ba80: 8522 mv a0,s0 - c002ba82: 9bbd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24030 + c002bc4c: 05300593 li a1,83 + c002bc50: 8522 mv a0,s0 + c002bc52: 8d9d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24038 emit_u8(s, 0 | ((depth_lvalue + 1) << 2) | ((depth_lvalue + 2) << 5)); - c002ba86: 47d2 lw a5,20(sp) - c002ba88: 8522 mv a0,s0 - c002ba8a: 0017859b addiw a1,a5,1 - c002ba8e: 2789 addiw a5,a5,2 - c002ba90: 0025959b slliw a1,a1,0x2 - c002ba94: 0057979b slliw a5,a5,0x5 - c002ba98: 8ddd or a1,a1,a5 - c002ba9a: 0fc5f593 andi a1,a1,252 - c002ba9e: dbad90ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24194 + c002bc56: 47d2 lw a5,20(sp) + c002bc58: 8522 mv a0,s0 + c002bc5a: 0017859b addiw a1,a5,1 + c002bc5e: 2789 addiw a5,a5,2 + c002bc60: 0025959b slliw a1,a1,0x2 + c002bc64: 0057979b slliw a5,a5,0x5 + c002bc68: 8ddd or a1,a1,a5 + c002bc6a: 0fc5f593 andi a1,a1,252 + c002bc6e: bead90ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24202 if (tok) { - c002baa2: 3c091e63 bnez s2,c002be7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24199 + c002bc72: 3c091e63 bnez s2,c002c04e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24207 if (s->token.val == '=') { /* handle optional default value */ - c002baa6: 4c18 lw a4,24(s0) - c002baa8: 03d00793 li a5,61 - c002baac: 06f71363 bne a4,a5,c002bb12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24201 + c002bc76: 4c18 lw a4,24(s0) + c002bc78: 03d00793 li a5,61 + c002bc7c: 06f71363 bne a4,a5,c002bce2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24209 emit_op(s, OP_dup); - c002bab0: 45c5 li a1,17 - c002bab2: 8522 mv a0,s0 - c002bab4: 989d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24202 + c002bc80: 45c5 li a1,17 + c002bc82: 8522 mv a0,s0 + c002bc84: 8a7d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24210 emit_op(s, OP_undefined); - c002bab8: 4599 li a1,6 - c002baba: 8522 mv a0,s0 - c002babc: 981d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24203 + c002bc88: 4599 li a1,6 + c002bc8a: 8522 mv a0,s0 + c002bc8c: 89fd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24211 emit_op(s, OP_strict_eq); - c002bac0: 0ac00593 li a1,172 - c002bac4: 8522 mv a0,s0 - c002bac6: 977d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24204 + c002bc90: 0ac00593 li a1,172 + c002bc94: 8522 mv a0,s0 + c002bc96: 895d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24212 label_hasval = emit_goto(s, OP_if_false, -1); - c002baca: 567d li a2,-1 - c002bacc: 06a00593 li a1,106 - c002bad0: 8522 mv a0,s0 - c002bad2: 9e6ec0ef jal ra,c0017cb8 - c002bad6: 8daa mv s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24205 + c002bc9a: 567d li a2,-1 + c002bc9c: 06a00593 li a1,106 + c002bca0: 8522 mv a0,s0 + c002bca2: 9e6ec0ef jal ra,c0017e88 + c002bca6: 8daa mv s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24213 if (next_token(s)) - c002bad8: 8522 mv a0,s0 - c002bada: 8bcfb0ef jal ra,c0026b96 - c002bade: f525 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24207 + c002bca8: 8522 mv a0,s0 + c002bcaa: 8bcfb0ef jal ra,c0026d66 + c002bcae: f525 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24215 emit_op(s, OP_drop); - c002bae0: 8522 mv a0,s0 - c002bae2: 45b9 li a1,14 - c002bae4: 959d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24208 + c002bcb0: 8522 mv a0,s0 + c002bcb2: 45b9 li a1,14 + c002bcb4: 877d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24216 if (js_parse_assign_expr(s)) - c002bae8: 8522 mv a0,s0 - c002baea: 2ed010ef jal ra,c002d5d6 - c002baee: fd21 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24210 + c002bcb8: 8522 mv a0,s0 + c002bcba: 2ed010ef jal ra,c002d7a6 + c002bcbe: fd21 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24218 if (opcode == OP_scope_get_var || opcode == OP_get_ref_value) - c002baf0: 47a2 lw a5,8(sp) - c002baf2: 0b800713 li a4,184 - c002baf6: 00e78663 beq a5,a4,c002bb02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24210 (discriminator 1) - c002bafa: 03c00713 li a4,60 - c002bafe: 00e79663 bne a5,a4,c002bb0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24211 + c002bcc0: 47a2 lw a5,8(sp) + c002bcc2: 0b800713 li a4,184 + c002bcc6: 00e78663 beq a5,a4,c002bcd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24218 (discriminator 1) + c002bcca: 03c00713 li a4,60 + c002bcce: 00e79663 bne a5,a4,c002bcda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24219 set_object_name(s, var_name); - c002bb02: 4592 lw a1,4(sp) - c002bb04: 8522 mv a0,s0 - c002bb06: c31db0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24212 + c002bcd2: 4592 lw a1,4(sp) + c002bcd4: 8522 mv a0,s0 + c002bcd6: b4fdb0ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24220 emit_label(s, label_hasval); - c002bb0a: 85ee mv a1,s11 - c002bb0c: 8522 mv a0,s0 - c002bb0e: acdd90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24215 + c002bcda: 85ee mv a1,s11 + c002bcdc: 8522 mv a0,s0 + c002bcde: 9ebd90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24223 put_lvalue(s, opcode, scope, var_name, label_lvalue, - c002bb12: 4702 lw a4,0(sp) - c002bb14: 4692 lw a3,4(sp) - c002bb16: 4632 lw a2,12(sp) - c002bb18: 45a2 lw a1,8(sp) - c002bb1a: 8856 mv a6,s5 - c002bb1c: 4785 li a5,1 - c002bb1e: 8522 mv a0,s0 - c002bb20: a3fdb0ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24218 + c002bce2: 4702 lw a4,0(sp) + c002bce4: 4692 lw a3,4(sp) + c002bce6: 4632 lw a2,12(sp) + c002bce8: 45a2 lw a1,8(sp) + c002bcea: 8856 mv a6,s5 + c002bcec: 4785 li a5,1 + c002bcee: 8522 mv a0,s0 + c002bcf0: 95ddb0ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24226 if (s->token.val == '}') - c002bb24: a86d j c002bbde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24033 + c002bcf4: a86d j c002bdae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24041 prop_type = js_parse_property_name(s, &prop_name, FALSE, TRUE, FALSE); - c002bb26: 4701 li a4,0 - c002bb28: 4685 li a3,1 - c002bb2a: 4601 li a2,0 - c002bb2c: 082c addi a1,sp,24 - c002bb2e: 8522 mv a0,s0 - c002bb30: 041010ef jal ra,c002d370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24034 + c002bcf6: 4701 li a4,0 + c002bcf8: 4685 li a3,1 + c002bcfa: 4601 li a2,0 + c002bcfc: 082c addi a1,sp,24 + c002bcfe: 8522 mv a0,s0 + c002bd00: 041010ef jal ra,c002d540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24042 if (prop_type < 0) - c002bb34: e6054ee3 bltz a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24037 + c002bd04: e6054ee3 bltz a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24045 opcode = OP_scope_get_var; - c002bb38: 0b800793 li a5,184 - c002bb3c: c43e sw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24038 + c002bd08: 0b800793 li a5,184 + c002bd0c: c43e sw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24046 scope = s->cur_func->scope_level; - c002bb3e: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24036 + c002bd0e: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24044 var_name = JS_ATOM_NULL; - c002bb40: c202 sw zero,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24038 + c002bd10: c202 sw zero,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24046 scope = s->cur_func->scope_level; - c002bb42: 0e07a783 lw a5,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24040 + c002bd12: 0e07a783 lw a5,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24048 depth_lvalue = 0; - c002bb46: ca02 sw zero,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24038 + c002bd16: ca02 sw zero,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24046 scope = s->cur_func->scope_level; - c002bb48: c63e sw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24039 + c002bd18: c63e sw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24047 label_lvalue = -1; - c002bb4a: 57fd li a5,-1 - c002bb4c: c03e sw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24041 + c002bd1a: 57fd li a5,-1 + c002bd1c: c03e sw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24049 if (prop_type == PROP_TYPE_IDENT) { - c002bb4e: 26051b63 bnez a0,c002bdc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24042 + c002bd1e: 26051b63 bnez a0,c002bf94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24050 if (next_token(s)) - c002bb52: 8522 mv a0,s0 - c002bb54: 842fb0ef jal ra,c0026b96 - c002bb58: 18051c63 bnez a0,c002bcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24044 + c002bd22: 8522 mv a0,s0 + c002bd24: 842fb0ef jal ra,c0026d66 + c002bd28: 18051c63 bnez a0,c002bec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24052 if ((s->token.val == '[' || s->token.val == '{') - c002bb5c: 4c1c lw a5,24(s0) - c002bb5e: 05b00713 li a4,91 - c002bb62: fdf7f793 andi a5,a5,-33 - c002bb66: 12e79e63 bne a5,a4,c002bca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24045 + c002bd2c: 4c1c lw a5,24(s0) + c002bd2e: 05b00713 li a4,91 + c002bd32: fdf7f793 andi a5,a5,-33 + c002bd36: 12e79e63 bne a5,a4,c002be72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24053 && ((tok1 = js_parse_skip_parens_token(s, &skip_bits, FALSE)) == ',' || - c002bb6a: 4601 li a2,0 - c002bb6c: 080c addi a1,sp,16 - c002bb6e: 8522 mv a0,s0 - c002bb70: b2ffb0ef jal ra,c002769e - c002bb74: 02c00713 li a4,44 - c002bb78: 00e50963 beq a0,a4,c002bb8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24045 (discriminator 1) - c002bb7c: fbf57793 andi a5,a0,-65 - c002bb80: 2781 sext.w a5,a5 - c002bb82: 03d00713 li a4,61 - c002bb86: 10e79e63 bne a5,a4,c002bca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24047 + c002bd3a: 4601 li a2,0 + c002bd3c: 080c addi a1,sp,16 + c002bd3e: 8522 mv a0,s0 + c002bd40: b2ffb0ef jal ra,c002786e + c002bd44: 02c00713 li a4,44 + c002bd48: 00e50963 beq a0,a4,c002bd5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24053 (discriminator 1) + c002bd4c: fbf57793 andi a5,a0,-65 + c002bd50: 2781 sext.w a5,a5 + c002bd52: 03d00713 li a4,61 + c002bd56: 10e79e63 bne a5,a4,c002be72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24055 if (prop_name == JS_ATOM_NULL) { - c002bb8a: 47e2 lw a5,24(sp) - c002bb8c: 0c079a63 bnez a5,c002bc60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24049 + c002bd5a: 47e2 lw a5,24(sp) + c002bd5c: 0c079a63 bnez a5,c002be30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24057 if (has_ellipsis) { - c002bb90: 02098863 beqz s3,c002bbc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24051 + c002bd60: 02098863 beqz s3,c002bd90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24059 emit_op(s, OP_to_propkey); /* avoid calling ToString twice */ - c002bb94: 07200593 li a1,114 - c002bb98: 8522 mv a0,s0 - c002bb9a: 8a3d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24052 + c002bd64: 07200593 li a1,114 + c002bd68: 8522 mv a0,s0 + c002bd6a: fc0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24060 emit_op(s, OP_perm3); /* TOS: src excludeList prop */ - c002bb9e: 45e1 li a1,24 - c002bba0: 8522 mv a0,s0 - c002bba2: 89bd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24053 + c002bd6e: 45e1 li a1,24 + c002bd70: 8522 mv a0,s0 + c002bd72: fb8d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24061 emit_op(s, OP_null); /* TOS: src excludeList prop null */ - c002bba6: 459d li a1,7 - c002bba8: 8522 mv a0,s0 - c002bbaa: 893d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24054 + c002bd76: 459d li a1,7 + c002bd78: 8522 mv a0,s0 + c002bd7a: fb0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24062 emit_op(s, OP_define_array_el); /* TOS: src excludeList prop */ - c002bbae: 05100593 li a1,81 - c002bbb2: 8522 mv a0,s0 - c002bbb4: 889d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24055 + c002bd7e: 05100593 li a1,81 + c002bd82: 8522 mv a0,s0 + c002bd84: fa6d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24063 emit_op(s, OP_perm3); /* TOS: excludeList src prop */ - c002bbb8: 45e1 li a1,24 - c002bbba: 8522 mv a0,s0 - c002bbbc: 881d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24058 + c002bd88: 45e1 li a1,24 + c002bd8a: 8522 mv a0,s0 + c002bd8c: f9ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24066 emit_op(s, OP_get_array_el2); - c002bbc0: 04800593 li a1,72 - c002bbc4: 8522 mv a0,s0 - c002bbc6: 877d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24073 + c002bd90: 04800593 li a1,72 + c002bd94: 8522 mv a0,s0 + c002bd96: f94d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24081 if (js_parse_destructuring_element(s, tok, is_arg, TRUE, -1, TRUE) < 0) - c002bbca: 4785 li a5,1 - c002bbcc: 577d li a4,-1 - c002bbce: 4685 li a3,1 - c002bbd0: 8652 mv a2,s4 - c002bbd2: 85ca mv a1,s2 - c002bbd4: 8522 mv a0,s0 - c002bbd6: d3fff0ef jal ra,c002b914 - c002bbda: dc054be3 bltz a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24075 + c002bd9a: 4785 li a5,1 + c002bd9c: 577d li a4,-1 + c002bd9e: 4685 li a3,1 + c002bda0: 8652 mv a2,s4 + c002bda2: 85ca mv a1,s2 + c002bda4: 8522 mv a0,s0 + c002bda6: d3fff0ef jal ra,c002bae4 + c002bdaa: dc054be3 bltz a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24083 if (s->token.val == '}') - c002bbde: 4c18 lw a4,24(s0) - c002bbe0: 07d00793 li a5,125 - c002bbe4: 2af71963 bne a4,a5,c002be96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24225 + c002bdae: 4c18 lw a4,24(s0) + c002bdb0: 07d00793 li a5,125 + c002bdb4: 2af71963 bne a4,a5,c002c066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24233 emit_op(s, OP_drop); - c002bbe8: 45b9 li a1,14 - c002bbea: 8522 mv a0,s0 - c002bbec: 851d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24226 + c002bdb8: 45b9 li a1,14 + c002bdba: 8522 mv a0,s0 + c002bdbc: f6ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24234 if (has_ellipsis) { - c002bbf0: 00098663 beqz s3,c002bbfc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24227 + c002bdc0: 00098663 beqz s3,c002bdcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24235 emit_op(s, OP_drop); /* pop excludeList */ - c002bbf4: 45b9 li a1,14 - c002bbf6: 8522 mv a0,s0 - c002bbf8: 845d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24333 + c002bdc4: 45b9 li a1,14 + c002bdc6: 8522 mv a0,s0 + c002bdc8: f62d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24341 if (next_token(s)) - c002bbfc: 8522 mv a0,s0 - c002bbfe: f99fa0ef jal ra,c0026b96 - c002bc02: da0517e3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24338 + c002bdcc: 8522 mv a0,s0 + c002bdce: f99fa0ef jal ra,c0026d66 + c002bdd2: da0517e3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24346 if (s->token.val == '=' && allow_initializer) { - c002bc06: 4c18 lw a4,24(s0) - c002bc08: 03d00793 li a5,61 - c002bc0c: 56f71163 bne a4,a5,c002c16e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24338 (discriminator 1) - c002bc10: 54048f63 beqz s1,c002c16e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24339 + c002bdd6: 4c18 lw a4,24(s0) + c002bdd8: 03d00793 li a5,61 + c002bddc: 56f71163 bne a4,a5,c002c33e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24346 (discriminator 1) + c002bde0: 54048f63 beqz s1,c002c33e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24347 label_done = emit_goto(s, OP_goto, -1); - c002bc14: 567d li a2,-1 - c002bc16: 06c00593 li a1,108 - c002bc1a: 8522 mv a0,s0 - c002bc1c: 89cec0ef jal ra,c0017cb8 - c002bc20: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24340 + c002bde4: 567d li a2,-1 + c002bde6: 06c00593 li a1,108 + c002bdea: 8522 mv a0,s0 + c002bdec: 89cec0ef jal ra,c0017e88 + c002bdf0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24348 if (next_token(s)) - c002bc22: 8522 mv a0,s0 - c002bc24: f73fa0ef jal ra,c0026b96 - c002bc28: d80514e3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24342 + c002bdf2: 8522 mv a0,s0 + c002bdf4: f73fa0ef jal ra,c0026d66 + c002bdf8: d80514e3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24350 emit_label(s, label_parse); - c002bc2c: 85da mv a1,s6 - c002bc2e: 8522 mv a0,s0 - c002bc30: 9abd90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24343 + c002bdfc: 85da mv a1,s6 + c002bdfe: 8522 mv a0,s0 + c002be00: 8c9d90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24351 if (hasval) - c002bc34: 000c0663 beqz s8,c002bc40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24344 + c002be04: 000c0663 beqz s8,c002be10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24352 emit_op(s, OP_drop); - c002bc38: 45b9 li a1,14 - c002bc3a: 8522 mv a0,s0 - c002bc3c: 801d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24345 + c002be08: 45b9 li a1,14 + c002be0a: 8522 mv a0,s0 + c002be0c: f1ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24353 if (js_parse_assign_expr(s)) - c002bc40: 8522 mv a0,s0 - c002bc42: 195010ef jal ra,c002d5d6 - c002bc46: d60515e3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24347 + c002be10: 8522 mv a0,s0 + c002be12: 195010ef jal ra,c002d7a6 + c002be16: d60515e3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24355 emit_goto(s, OP_goto, label_assign); - c002bc4a: 865e mv a2,s7 - c002bc4c: 06c00593 li a1,108 - c002bc50: 8522 mv a0,s0 - c002bc52: 866ec0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24348 + c002be1a: 865e mv a2,s7 + c002be1c: 06c00593 li a1,108 + c002be20: 8522 mv a0,s0 + c002be22: 866ec0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24356 emit_label(s, label_done); - c002bc56: 85ca mv a1,s2 - c002bc58: 8522 mv a0,s0 - c002bc5a: 981d90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24349 + c002be26: 85ca mv a1,s2 + c002be28: 8522 mv a0,s0 + c002be2a: 89fd90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24357 has_initializer = TRUE; - c002bc5e: acf5 j c002bf5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24061 + c002be2e: acf5 j c002c12a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24069 if (has_ellipsis) { - c002bc60: 02098763 beqz s3,c002bc8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24063 + c002be30: 02098763 beqz s3,c002be5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24071 emit_op(s, OP_swap); /* TOS: src excludeList */ - c002bc64: 45ed li a1,27 - c002bc66: 8522 mv a0,s0 - c002bc68: fd4d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24064 + c002be34: 45ed li a1,27 + c002be36: 8522 mv a0,s0 + c002be38: ef2d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24072 emit_op(s, OP_null); /* TOS: src excludeList null */ - c002bc6c: 459d li a1,7 - c002bc6e: 8522 mv a0,s0 - c002bc70: fccd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24065 + c002be3c: 459d li a1,7 + c002be3e: 8522 mv a0,s0 + c002be40: eead90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24073 emit_op(s, OP_define_field); /* TOS: src excludeList */ - c002bc74: 04c00593 li a1,76 - c002bc78: 8522 mv a0,s0 - c002bc7a: fc2d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24066 + c002be44: 04c00593 li a1,76 + c002be48: 8522 mv a0,s0 + c002be4a: ee0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24074 emit_atom(s, prop_name); - c002bc7e: 45e2 lw a1,24(sp) - c002bc80: 8522 mv a0,s0 - c002bc82: 86ddb0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24067 + c002be4e: 45e2 lw a1,24(sp) + c002be50: 8522 mv a0,s0 + c002be52: f8adb0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24075 emit_op(s, OP_swap); /* TOS: excludeList src */ - c002bc86: 45ed li a1,27 - c002bc88: 8522 mv a0,s0 - c002bc8a: fb2d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24070 + c002be56: 45ed li a1,27 + c002be58: 8522 mv a0,s0 + c002be5a: ed0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24078 emit_op(s, OP_get_field2); - c002bc8e: 8522 mv a0,s0 - c002bc90: 04200593 li a1,66 - c002bc94: fa8d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24071 + c002be5e: 8522 mv a0,s0 + c002be60: 04200593 li a1,66 + c002be64: ec6d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24079 emit_u32(s, prop_name); - c002bc98: 45e2 lw a1,24(sp) - c002bc9a: 8522 mv a0,s0 - c002bc9c: 937d90ef jal ra,c00055d2 - c002bca0: b72d j c002bbca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24082 + c002be68: 45e2 lw a1,24(sp) + c002be6a: 8522 mv a0,s0 + c002be6c: 855d90ef jal ra,c00056c0 + c002be70: b72d j c002bd9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24090 if (prop_name == JS_ATOM_NULL) { - c002bca2: 47e2 lw a5,24(sp) - c002bca4: ebb9 bnez a5,c002bcfa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24083 + c002be72: 47e2 lw a5,24(sp) + c002be74: ebb9 bnez a5,c002beca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24091 emit_op(s, OP_to_propkey2); - c002bca6: 07300593 li a1,115 - c002bcaa: 8522 mv a0,s0 - c002bcac: f90d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24084 + c002be76: 07300593 li a1,115 + c002be7a: 8522 mv a0,s0 + c002be7c: eaed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24092 if (has_ellipsis) { - c002bcb0: 02098363 beqz s3,c002bcd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24086 + c002be80: 02098363 beqz s3,c002bea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24094 emit_op(s, OP_perm3); - c002bcb4: 45e1 li a1,24 - c002bcb6: 8522 mv a0,s0 - c002bcb8: f84d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24087 + c002be84: 45e1 li a1,24 + c002be86: 8522 mv a0,s0 + c002be88: ea2d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24095 emit_op(s, OP_null); - c002bcbc: 459d li a1,7 - c002bcbe: 8522 mv a0,s0 - c002bcc0: f7cd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24088 + c002be8c: 459d li a1,7 + c002be8e: 8522 mv a0,s0 + c002be90: e9ad90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24096 emit_op(s, OP_define_array_el); - c002bcc4: 05100593 li a1,81 - c002bcc8: 8522 mv a0,s0 - c002bcca: f72d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24089 + c002be94: 05100593 li a1,81 + c002be98: 8522 mv a0,s0 + c002be9a: e90d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24097 emit_op(s, OP_perm3); - c002bcce: 45e1 li a1,24 - c002bcd0: 8522 mv a0,s0 - c002bcd2: f6ad90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24092 + c002be9e: 45e1 li a1,24 + c002bea0: 8522 mv a0,s0 + c002bea2: e88d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24100 emit_op(s, OP_dup1); - c002bcd6: 45c9 li a1,18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24103 + c002bea6: 45c9 li a1,18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24111 emit_op(s, OP_dup); - c002bcd8: 8522 mv a0,s0 - c002bcda: f62d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24105 + c002bea8: 8522 mv a0,s0 + c002beaa: e80d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24113 if (tok) { - c002bcde: 04090763 beqz s2,c002bd2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24106 + c002beae: 04090763 beqz s2,c002befc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24114 var_name = js_parse_destructuring_var(s, tok, is_arg); - c002bce2: 85d2 mv a1,s4 - c002bce4: 8522 mv a0,s0 - c002bce6: d7afc0ef jal ra,c0028260 - c002bcea: 2501 sext.w a0,a0 - c002bcec: c22a sw a0,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24107 + c002beb2: 85d2 mv a1,s4 + c002beb4: 8522 mv a0,s0 + c002beb6: d7afc0ef jal ra,c0028430 + c002beba: 2501 sext.w a0,a0 + c002bebc: c22a sw a0,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24115 if (var_name == JS_ATOM_NULL) - c002bcee: ed2d bnez a0,c002bd68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24367 + c002bebe: ed2d bnez a0,c002bf38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24375 JS_FreeAtom(s->ctx, prop_name); - c002bcf0: 45e2 lw a1,24(sp) - c002bcf2: 6008 ld a0,0(s0) - c002bcf4: 819db0ef jal ra,c000750c - c002bcf8: b3b9 j c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24094 + c002bec0: 45e2 lw a1,24(sp) + c002bec2: 6008 ld a0,0(s0) + c002bec4: f36db0ef jal ra,c00075fa + c002bec8: b3b9 j c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24102 if (has_ellipsis) { - c002bcfa: 02098763 beqz s3,c002bd28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24096 + c002beca: 02098763 beqz s3,c002bef8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24104 emit_op(s, OP_swap); - c002bcfe: 45ed li a1,27 - c002bd00: 8522 mv a0,s0 - c002bd02: f3ad90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24097 + c002bece: 45ed li a1,27 + c002bed0: 8522 mv a0,s0 + c002bed2: e58d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24105 emit_op(s, OP_null); - c002bd06: 459d li a1,7 - c002bd08: 8522 mv a0,s0 - c002bd0a: f32d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24098 + c002bed6: 459d li a1,7 + c002bed8: 8522 mv a0,s0 + c002beda: e50d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24106 emit_op(s, OP_define_field); - c002bd0e: 04c00593 li a1,76 - c002bd12: 8522 mv a0,s0 - c002bd14: f28d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24099 + c002bede: 04c00593 li a1,76 + c002bee2: 8522 mv a0,s0 + c002bee4: e46d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24107 emit_atom(s, prop_name); - c002bd18: 45e2 lw a1,24(sp) - c002bd1a: 8522 mv a0,s0 - c002bd1c: fd2db0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24100 + c002bee8: 45e2 lw a1,24(sp) + c002beea: 8522 mv a0,s0 + c002beec: ef0db0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24108 emit_op(s, OP_swap); - c002bd20: 45ed li a1,27 - c002bd22: 8522 mv a0,s0 - c002bd24: f18d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24103 + c002bef0: 45ed li a1,27 + c002bef2: 8522 mv a0,s0 + c002bef4: e36d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24111 emit_op(s, OP_dup); - c002bd28: 45c5 li a1,17 - c002bd2a: b77d j c002bcd8 + c002bef8: 45c5 li a1,17 + c002befa: b77d j c002bea8 js_parse_left_hand_side_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22799 return js_parse_postfix_expr(s, PF_POSTFIX_CALL); - c002bd2c: 4589 li a1,2 - c002bd2e: 8522 mv a0,s0 - c002bd30: c82fe0ef jal ra,c002a1b2 + c002befc: 4589 li a1,2 + c002befe: 8522 mv a0,s0 + c002bf00: c82fe0ef jal ra,c002a382 js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24110 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24118 if (js_parse_left_hand_side_expr(s)) - c002bd34: fd55 bnez a0,c002bcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24113 + c002bf04: fd55 bnez a0,c002bec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24121 if (get_lvalue(s, &opcode, &scope, &var_name, - c002bd36: 07b00893 li a7,123 - c002bd3a: 4801 li a6,0 - c002bd3c: 085c addi a5,sp,20 - c002bd3e: 870a mv a4,sp - c002bd40: 0054 addi a3,sp,4 - c002bd42: 0070 addi a2,sp,12 - c002bd44: 002c addi a1,sp,8 - c002bd46: 8522 mv a0,s0 - c002bd48: c33fb0ef jal ra,c002797a - c002bd4c: f155 bnez a0,c002bcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24117 + c002bf06: 07b00893 li a7,123 + c002bf0a: 4801 li a6,0 + c002bf0c: 085c addi a5,sp,20 + c002bf0e: 870a mv a4,sp + c002bf10: 0054 addi a3,sp,4 + c002bf12: 0070 addi a2,sp,12 + c002bf14: 002c addi a1,sp,8 + c002bf16: 8522 mv a0,s0 + c002bf18: c33fb0ef jal ra,c0027b4a + c002bf1c: f155 bnez a0,c002bec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24125 if (prop_name == JS_ATOM_NULL) { - c002bd4e: 4762 lw a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24118 + c002bf1e: 4762 lw a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24126 switch(depth_lvalue) { - c002bd50: 47d2 lw a5,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24117 + c002bf20: 47d2 lw a5,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24125 if (prop_name == JS_ATOM_NULL) { - c002bd52: e321 bnez a4,c002bd92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24118 + c002bf22: e321 bnez a4,c002bf62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24126 switch(depth_lvalue) { - c002bd54: 4709 li a4,2 - c002bd56: 02e78163 beq a5,a4,c002bd78 - c002bd5a: 470d li a4,3 - c002bd5c: 02e78363 beq a5,a4,c002bd82 - c002bd60: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24121 + c002bf24: 4709 li a4,2 + c002bf26: 02e78163 beq a5,a4,c002bf48 + c002bf2a: 470d li a4,3 + c002bf2c: 02e78363 beq a5,a4,c002bf52 + c002bf30: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24129 emit_op(s, OP_rot3r); - c002bd62: 45f9 li a1,30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24118 + c002bf32: 45f9 li a1,30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24126 switch(depth_lvalue) { - c002bd64: 00e78b63 beq a5,a4,c002bd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24150 + c002bf34: 00e78b63 beq a5,a4,c002bf4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24158 if (prop_name == JS_ATOM_NULL) { - c002bd68: 47e2 lw a5,24(sp) - c002bd6a: e3b9 bnez a5,c002bdb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24154 + c002bf38: 47e2 lw a5,24(sp) + c002bf3a: e3b9 bnez a5,c002bf80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24162 emit_op(s, OP_get_array_el); - c002bd6c: 04700593 li a1,71 - c002bd70: 8522 mv a0,s0 - c002bd72: ecad90ef jal ra,c000543c - c002bd76: b335 j c002baa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24125 + c002bf3c: 04700593 li a1,71 + c002bf40: 8522 mv a0,s0 + c002bf42: de8d90ef jal ra,c000552a + c002bf46: b335 j c002bc72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24133 emit_op(s, OP_swap2); /* t p2 s p1 */ - c002bd78: 45f1 li a1,28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24145 + c002bf48: 45f1 li a1,28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24153 emit_op(s, OP_rot4l); - c002bd7a: 8522 mv a0,s0 - c002bd7c: ec0d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24146 + c002bf4a: 8522 mv a0,s0 + c002bf4c: dded90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24154 break; - c002bd80: b7e5 j c002bd68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24129 + c002bf50: b7e5 j c002bf38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24137 emit_op(s, OP_rot5l); - c002bd82: 02000593 li a1,32 - c002bd86: 8522 mv a0,s0 - c002bd88: eb4d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24130 + c002bf52: 02000593 li a1,32 + c002bf56: 8522 mv a0,s0 + c002bf58: dd2d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24138 emit_op(s, OP_rot5l); - c002bd8c: 02000593 li a1,32 - c002bd90: b7ed j c002bd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24134 + c002bf5c: 02000593 li a1,32 + c002bf60: b7ed j c002bf4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24142 switch(depth_lvalue) { - c002bd92: 4709 li a4,2 - c002bd94: 00e78a63 beq a5,a4,c002bda8 - c002bd98: 470d li a4,3 - c002bd9a: 00e78963 beq a5,a4,c002bdac - c002bd9e: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24137 + c002bf62: 4709 li a4,2 + c002bf64: 00e78a63 beq a5,a4,c002bf78 + c002bf68: 470d li a4,3 + c002bf6a: 00e78963 beq a5,a4,c002bf7c + c002bf6e: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24145 emit_op(s, OP_swap); - c002bda0: 45ed li a1,27 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24134 + c002bf70: 45ed li a1,27 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24142 switch(depth_lvalue) { - c002bda2: fce793e3 bne a5,a4,c002bd68 - c002bda6: bfd1 j c002bd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24141 + c002bf72: fce793e3 bne a5,a4,c002bf38 + c002bf76: bfd1 j c002bf4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24149 emit_op(s, OP_rot3l); - c002bda8: 45f5 li a1,29 - c002bdaa: bfc1 j c002bd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24145 + c002bf78: 45f5 li a1,29 + c002bf7a: bfc1 j c002bf4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24153 emit_op(s, OP_rot4l); - c002bdac: 45fd li a1,31 - c002bdae: b7f1 j c002bd7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24159 + c002bf7c: 45fd li a1,31 + c002bf7e: b7f1 j c002bf4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24167 emit_op(s, OP_get_field); - c002bdb0: 8522 mv a0,s0 - c002bdb2: 04100593 li a1,65 - c002bdb6: e86d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24160 + c002bf80: 8522 mv a0,s0 + c002bf82: 04100593 li a1,65 + c002bf86: da4d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24168 emit_u32(s, prop_name); - c002bdba: 45e2 lw a1,24(sp) - c002bdbc: 8522 mv a0,s0 - c002bdbe: 815d90ef jal ra,c00055d2 - c002bdc2: b1c5 j c002baa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24164 + c002bf8a: 45e2 lw a1,24(sp) + c002bf8c: 8522 mv a0,s0 + c002bf8e: f32d90ef jal ra,c00056c0 + c002bf92: b1c5 j c002bc72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24172 if (is_arg && js_parse_check_duplicate_parameter(s, prop_name)) - c002bdc4: 060a1863 bnez s4,c002be34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24166 + c002bf94: 060a1863 bnez s4,c002c004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24174 if ((s->cur_func->js_mode & JS_MODE_STRICT) && - c002bdc8: 743c ld a5,104(s0) - c002bdca: 0867c783 lbu a5,134(a5) - c002bdce: 8b85 andi a5,a5,1 - c002bdd0: eba5 bnez a5,c002be40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24171 + c002bf98: 743c ld a5,104(s0) + c002bf9a: 0867c783 lbu a5,134(a5) + c002bf9e: 8b85 andi a5,a5,1 + c002bfa0: eba5 bnez a5,c002c010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24179 if (has_ellipsis) { - c002bdd2: 02098763 beqz s3,c002be00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24173 + c002bfa2: 02098763 beqz s3,c002bfd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24181 emit_op(s, OP_swap); - c002bdd6: 45ed li a1,27 - c002bdd8: 8522 mv a0,s0 - c002bdda: e62d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24174 + c002bfa6: 45ed li a1,27 + c002bfa8: 8522 mv a0,s0 + c002bfaa: d80d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24182 emit_op(s, OP_null); - c002bdde: 459d li a1,7 - c002bde0: 8522 mv a0,s0 - c002bde2: e5ad90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24175 + c002bfae: 459d li a1,7 + c002bfb0: 8522 mv a0,s0 + c002bfb2: d78d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24183 emit_op(s, OP_define_field); - c002bde6: 04c00593 li a1,76 - c002bdea: 8522 mv a0,s0 - c002bdec: e50d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24176 + c002bfb6: 04c00593 li a1,76 + c002bfba: 8522 mv a0,s0 + c002bfbc: d6ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24184 emit_atom(s, prop_name); - c002bdf0: 45e2 lw a1,24(sp) - c002bdf2: 8522 mv a0,s0 - c002bdf4: efadb0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24177 + c002bfc0: 45e2 lw a1,24(sp) + c002bfc2: 8522 mv a0,s0 + c002bfc4: e18db0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24185 emit_op(s, OP_swap); - c002bdf8: 45ed li a1,27 - c002bdfa: 8522 mv a0,s0 - c002bdfc: e40d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24179 + c002bfc8: 45ed li a1,27 + c002bfca: 8522 mv a0,s0 + c002bfcc: d5ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24187 if (!tok || tok == TOK_VAR) { - c002be00: 00090663 beqz s2,c002be0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24179 (discriminator 1) - c002be04: fb100793 li a5,-79 - c002be08: 04f91d63 bne s2,a5,c002be62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24182 + c002bfd0: 00090663 beqz s2,c002bfdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24187 (discriminator 1) + c002bfd4: fb100793 li a5,-79 + c002bfd8: 04f91d63 bne s2,a5,c002c032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24190 emit_op(s, OP_dup); - c002be0c: 8522 mv a0,s0 - c002be0e: 45c5 li a1,17 - c002be10: e2cd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24183 + c002bfdc: 8522 mv a0,s0 + c002bfde: 45c5 li a1,17 + c002bfe0: d4ad90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24191 emit_op(s, OP_scope_get_var); - c002be14: 8522 mv a0,s0 - c002be16: 0b800593 li a1,184 - c002be1a: e22d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24184 + c002bfe4: 8522 mv a0,s0 + c002bfe6: 0b800593 li a1,184 + c002bfea: d40d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24192 emit_atom(s, prop_name); - c002be1e: 45e2 lw a1,24(sp) - c002be20: 8522 mv a0,s0 - c002be22: eccdb0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24185 + c002bfee: 45e2 lw a1,24(sp) + c002bff0: 8522 mv a0,s0 + c002bff2: deadb0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24193 emit_u16(s, s->cur_func->scope_level); - c002be26: 743c ld a5,104(s0) - c002be28: 8522 mv a0,s0 - c002be2a: 0e07d583 lhu a1,224(a5) - c002be2e: cdcd90ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24186 + c002bff6: 743c ld a5,104(s0) + c002bff8: 8522 mv a0,s0 + c002bffa: 0e07d583 lhu a1,224(a5) + c002bffe: bfad90ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24194 goto lvalue; - c002be32: b711 j c002bd36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24164 (discriminator 1) + c002c002: b711 j c002bf06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24172 (discriminator 1) if (is_arg && js_parse_check_duplicate_parameter(s, prop_name)) - c002be34: 45e2 lw a1,24(sp) - c002be36: 8522 mv a0,s0 - c002be38: af3fb0ef jal ra,c002792a - c002be3c: d551 beqz a0,c002bdc8 - c002be3e: bd4d j c002bcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24167 (discriminator 1) + c002c004: 45e2 lw a1,24(sp) + c002c006: 8522 mv a0,s0 + c002c008: af3fb0ef jal ra,c0027afa + c002c00c: d551 beqz a0,c002bf98 + c002c00e: bd4d j c002bec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24175 (discriminator 1) (prop_name == JS_ATOM_eval || prop_name == JS_ATOM_arguments)) { - c002be40: 47e2 lw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24166 (discriminator 1) + c002c010: 47e2 lw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24174 (discriminator 1) if ((s->cur_func->js_mode & JS_MODE_STRICT) && - c002be42: 03b00713 li a4,59 - c002be46: 00e78663 beq a5,a4,c002be52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24167 + c002c012: 03b00713 li a4,59 + c002c016: 00e78663 beq a5,a4,c002c022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24175 (prop_name == JS_ATOM_eval || prop_name == JS_ATOM_arguments)) { - c002be4a: 04e00713 li a4,78 - c002be4e: f8e792e3 bne a5,a4,c002bdd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24168 + c002c01a: 04e00713 li a4,78 + c002c01e: f8e792e3 bne a5,a4,c002bfa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24176 js_parse_error(s, "invalid destructuring target"); - c002be52: 00033597 auipc a1,0x33 - c002be56: 52658593 addi a1,a1,1318 # c005f378 - c002be5a: 8522 mv a0,s0 - c002be5c: c5cfa0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24169 + c002c022: 00033597 auipc a1,0x33 + c002c026: 5b658593 addi a1,a1,1462 # c005f5d8 + c002c02a: 8522 mv a0,s0 + c002c02c: c5cfa0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24177 goto prop_error; - c002be60: bd41 j c002bcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24188 + c002c030: bd41 j c002bec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24196 var_name = JS_DupAtom(s->ctx, prop_name); - c002be62: 45e2 lw a1,24(sp) - c002be64: 6008 ld a0,0(s0) - c002be66: e64db0ef jal ra,c00074ca - c002be6a: c22a sw a0,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24190 + c002c032: 45e2 lw a1,24(sp) + c002c034: 6008 ld a0,0(s0) + c002c036: d82db0ef jal ra,c00075b8 + c002c03a: c22a sw a0,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24198 emit_op(s, OP_get_field2); - c002be6c: 04200593 li a1,66 - c002be70: 8522 mv a0,s0 - c002be72: dcad90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24191 + c002c03c: 04200593 li a1,66 + c002c040: 8522 mv a0,s0 + c002c042: ce8d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24199 emit_u32(s, prop_name); - c002be76: 45e2 lw a1,24(sp) - c002be78: 8522 mv a0,s0 - c002be7a: f58d90ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24195 + c002c046: 45e2 lw a1,24(sp) + c002c048: 8522 mv a0,s0 + c002c04a: e76d90ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24203 if (js_define_var(s, var_name, tok)) - c002be7e: 4592 lw a1,4(sp) - c002be80: 864a mv a2,s2 - c002be82: 8522 mv a0,s0 - c002be84: 9dafc0ef jal ra,c002805e - c002be88: ba051fe3 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24197 + c002c04e: 4592 lw a1,4(sp) + c002c050: 864a mv a2,s2 + c002c052: 8522 mv a0,s0 + c002c054: 9dafc0ef jal ra,c002822e + c002c058: ba051fe3 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24205 scope = s->cur_func->scope_level; - c002be8c: 743c ld a5,104(s0) - c002be8e: 0e07a783 lw a5,224(a5) - c002be92: c63e sw a5,12(sp) - c002be94: b909 j c002baa6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24221 + c002c05c: 743c ld a5,104(s0) + c002c05e: 0e07a783 lw a5,224(a5) + c002c062: c63e sw a5,12(sp) + c002c064: b909 j c002bc76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24229 if (js_parse_expect(s, ',')) - c002be96: 02c00593 li a1,44 - c002be9a: 8522 mv a0,s0 - c002be9c: c46fc0ef jal ra,c00282e2 - c002bea0: b00518e3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23999 + c002c066: 02c00593 li a1,44 + c002c06a: 8522 mv a0,s0 + c002c06c: c46fc0ef jal ra,c00284b2 + c002c070: b00518e3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24007 while (s->token.val != '}') { - c002bea4: 4c1c lw a5,24(s0) - c002bea6: 07d00713 li a4,125 - c002beaa: d2e78fe3 beq a5,a4,c002bbe8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24001 + c002c074: 4c1c lw a5,24(s0) + c002c076: 07d00713 li a4,125 + c002c07a: d2e78fe3 beq a5,a4,c002bdb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24009 if (s->token.val == TOK_ELLIPSIS) { - c002beae: fa500713 li a4,-91 - c002beb2: c6e79ae3 bne a5,a4,c002bb26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24002 + c002c07e: fa500713 li a4,-91 + c002c082: c6e79ae3 bne a5,a4,c002bcf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24010 if (!has_ellipsis) { - c002beb6: b40995e3 bnez s3,c002ba00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24003 + c002c086: b40995e3 bnez s3,c002bbd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24011 JS_ThrowInternalError(s->ctx, "unexpected ellipsis token"); - c002beba: 6008 ld a0,0(s0) - c002bebc: 00034597 auipc a1,0x34 - c002bec0: d7c58593 addi a1,a1,-644 # c005fc38 - c002bec4: ac1e80ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24004 + c002c08a: 6008 ld a0,0(s0) + c002c08c: 00034597 auipc a1,0x34 + c002c090: e0c58593 addi a1,a1,-500 # c005fe98 + c002c094: 9dfe80ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24012 return -1; - c002bec8: b4e5 j c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24231 + c002c098: b4e5 j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24239 } else if (s->token.val == '[') { - c002beca: 05b00713 li a4,91 - c002bece: 28e79b63 bne a5,a4,c002c164 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24236 + c002c09a: 05b00713 li a4,91 + c002c09e: 28e79b63 bne a5,a4,c002c334 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24244 if (next_token(s)) - c002bed2: 8522 mv a0,s0 - c002bed4: cc3fa0ef jal ra,c0026b96 - c002bed8: ac051ce3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24240 + c002c0a2: 8522 mv a0,s0 + c002c0a4: cc3fa0ef jal ra,c0026d66 + c002c0a8: ac051ce3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24248 push_break_entry(s->cur_func, &block_env, - c002bedc: 7438 ld a4,104(s0) + c002c0ac: 7438 ld a4,104(s0) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002bede: 56fd li a3,-1 + c002c0ae: 56fd li a3,-1 js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24325 put_lvalue(s, opcode, scope, var_name, - c002bee0: 0379099b addiw s3,s2,55 + c002c0b0: 0379099b addiw s3,s2,55 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002bee4: 18073783 ld a5,384(a4) + c002c0b4: 18073783 ld a5,384(a4) js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24325 put_lvalue(s, opcode, scope, var_name, - c002bee8: ff79f993 andi s3,s3,-9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24243 + c002c0b8: ff79f993 andi s3,s3,-9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24251 emit_op(s, OP_for_of_start); - c002beec: 07f00593 li a1,127 + c002c0bc: 07f00593 li a1,127 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002bef0: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002c0c0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002bef2: 083c addi a5,sp,24 - c002bef4: 18f73023 sd a5,384(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002c0c2: 083c addi a5,sp,24 + c002c0c4: 18f73023 sd a5,384(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002bef8: 02069793 slli a5,a3,0x20 - c002befc: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002c0c8: 02069793 slli a5,a3,0x20 + c002c0cc: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002befe: 478d li a5,3 - c002bf00: 1782 slli a5,a5,0x20 - c002bf02: 17fd addi a5,a5,-1 - c002bf04: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002c0ce: 478d li a5,3 + c002c0d0: 1782 slli a5,a5,0x20 + c002c0d2: 17fd addi a5,a5,-1 + c002c0d4: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002bf06: d836 sw a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002c0d6: d836 sw a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002bf08: 0e072783 lw a5,224(a4) + c002c0d8: 0e072783 lw a5,224(a4) js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24243 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24251 emit_op(s, OP_for_of_start); - c002bf0c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 + c002c0dc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24325 put_lvalue(s, opcode, scope, var_name, - c002bf0e: 2981 sext.w s3,s3 + c002c0de: 2981 sext.w s3,s3 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002bf10: da3e sw a5,52(sp) + c002c0e0: da3e sw a5,52(sp) js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24250 block_env.has_iterator = TRUE; - c002bf12: 4785 li a5,1 - c002bf14: dc3e sw a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 + c002c0e2: 4785 li a5,1 + c002c0e4: dc3e sw a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24325 put_lvalue(s, opcode, scope, var_name, - c002bf16: 0019b993 seqz s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24243 + c002c0e6: 0019b993 seqz s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24251 emit_op(s, OP_for_of_start); - c002bf1a: d22d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24245 + c002c0ea: c40d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24253 while (s->token.val != ']') { - c002bf1e: 4c1c lw a5,24(s0) - c002bf20: 05d00d93 li s11,93 - c002bf24: 09b78763 beq a5,s11,c002bfb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24247 + c002c0ee: 4c1c lw a5,24(s0) + c002c0f0: 05d00d93 li s11,93 + c002c0f4: 09b78763 beq a5,s11,c002c182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24255 if (s->token.val == TOK_ELLIPSIS) { - c002bf28: fa500713 li a4,-91 - c002bf2c: 4a81 li s5,0 - c002bf2e: 04e79763 bne a5,a4,c002bf7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24248 + c002c0f8: fa500713 li a4,-91 + c002c0fc: 4a81 li s5,0 + c002c0fe: 04e79763 bne a5,a4,c002c14c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24256 if (next_token(s)) - c002bf32: 8522 mv a0,s0 - c002bf34: c63fa0ef jal ra,c0026b96 - c002bf38: a6051ce3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24250 + c002c102: 8522 mv a0,s0 + c002c104: c63fa0ef jal ra,c0026d66 + c002c108: a6051ce3 bnez a0,c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24258 if (s->token.val == ',' || s->token.val == ']') - c002bf3c: 4c1c lw a5,24(s0) - c002bf3e: 02c00713 li a4,44 - c002bf42: 00e78463 beq a5,a4,c002bf4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24250 (discriminator 1) - c002bf46: 03b79a63 bne a5,s11,c002bf7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24251 + c002c10c: 4c1c lw a5,24(s0) + c002c10e: 02c00713 li a4,44 + c002c112: 00e78463 beq a5,a4,c002c11a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24258 (discriminator 1) + c002c116: 03b79a63 bne a5,s11,c002c14a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24259 return js_parse_error(s, "missing binding pattern..."); - c002bf4a: 00034597 auipc a1,0x34 - c002bf4e: d3658593 addi a1,a1,-714 # c005fc80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24336 + c002c11a: 00034597 auipc a1,0x34 + c002c11e: dc658593 addi a1,a1,-570 # c005fee0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24344 return js_parse_error(s, "invalid assignment syntax"); - c002bf52: 8522 mv a0,s0 - c002bf54: b64fa0ef jal ra,c00262b8 - c002bf58: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24371 -} - c002bf5a: 70aa ld ra,168(sp) - c002bf5c: 740a ld s0,160(sp) - c002bf5e: 694a ld s2,144(sp) - c002bf60: 69aa ld s3,136(sp) - c002bf62: 6a0a ld s4,128(sp) - c002bf64: 7ae6 ld s5,120(sp) - c002bf66: 7b46 ld s6,112(sp) - c002bf68: 7ba6 ld s7,104(sp) - c002bf6a: 7c06 ld s8,96(sp) - c002bf6c: 6ce6 ld s9,88(sp) - c002bf6e: 6d46 ld s10,80(sp) - c002bf70: 6da6 ld s11,72(sp) - c002bf72: 8526 mv a0,s1 - c002bf74: 64ea ld s1,152(sp) - c002bf76: 614d addi sp,sp,176 - c002bf78: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24252 + c002c122: 8522 mv a0,s0 + c002c124: b64fa0ef jal ra,c0026488 + c002c128: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24379 +} + c002c12a: 70aa ld ra,168(sp) + c002c12c: 740a ld s0,160(sp) + c002c12e: 694a ld s2,144(sp) + c002c130: 69aa ld s3,136(sp) + c002c132: 6a0a ld s4,128(sp) + c002c134: 7ae6 ld s5,120(sp) + c002c136: 7b46 ld s6,112(sp) + c002c138: 7ba6 ld s7,104(sp) + c002c13a: 7c06 ld s8,96(sp) + c002c13c: 6ce6 ld s9,88(sp) + c002c13e: 6d46 ld s10,80(sp) + c002c140: 6da6 ld s11,72(sp) + c002c142: 8526 mv a0,s1 + c002c144: 64ea ld s1,152(sp) + c002c146: 614d addi sp,sp,176 + c002c148: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24260 has_spread = TRUE; - c002bf7a: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24254 + c002c14a: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24262 if (s->token.val == ',') { - c002bf7c: 4c1c lw a5,24(s0) - c002bf7e: 02c00d93 li s11,44 - c002bf82: 05b79463 bne a5,s11,c002bfca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24256 + c002c14c: 4c1c lw a5,24(s0) + c002c14e: 02c00d93 li s11,44 + c002c152: 05b79463 bne a5,s11,c002c19a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24264 emit_op(s, OP_for_of_next); - c002bf86: 08200593 li a1,130 - c002bf8a: 8522 mv a0,s0 - c002bf8c: cb0d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24257 + c002c156: 08200593 li a1,130 + c002c15a: 8522 mv a0,s0 + c002c15c: bced90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24265 emit_u8(s, 0); - c002bf90: 4581 li a1,0 - c002bf92: 8522 mv a0,s0 - c002bf94: 8c4d90ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24258 + c002c160: 4581 li a1,0 + c002c162: 8522 mv a0,s0 + c002c164: ef5d80ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24266 emit_op(s, OP_drop); - c002bf98: 45b9 li a1,14 - c002bf9a: 8522 mv a0,s0 - c002bf9c: ca0d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24259 + c002c168: 45b9 li a1,14 + c002c16a: 8522 mv a0,s0 + c002c16c: bbed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24267 emit_op(s, OP_drop); - c002bfa0: 45b9 li a1,14 - c002bfa2: 8522 mv a0,s0 - c002bfa4: c98d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24321 + c002c170: 45b9 li a1,14 + c002c172: 8522 mv a0,s0 + c002c174: bb6d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24329 if (s->token.val == ']') - c002bfa8: 4c18 lw a4,24(s0) - c002bfaa: 05d00793 li a5,93 - c002bfae: 18f71b63 bne a4,a5,c002c144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24331 + c002c178: 4c18 lw a4,24(s0) + c002c17a: 05d00793 li a5,93 + c002c17e: 18f71b63 bne a4,a5,c002c314 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24339 emit_op(s, OP_iterator_close); - c002bfb2: 08500593 li a1,133 - c002bfb6: 8522 mv a0,s0 - c002bfb8: c84d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24332 + c002c182: 08500593 li a1,133 + c002c186: 8522 mv a0,s0 + c002c188: ba2d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24340 pop_break_entry(s->cur_func); - c002bfbc: 743c ld a5,104(s0) + c002c18c: 743c ld a5,104(s0) pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002bfbe: 1807b703 ld a4,384(a5) - c002bfc2: 6318 ld a4,0(a4) - c002bfc4: 18e7b023 sd a4,384(a5) - c002bfc8: b915 j c002bbfc + c002c18e: 1807b703 ld a4,384(a5) + c002c192: 6318 ld a4,0(a4) + c002c194: 18e7b023 sd a4,384(a5) + c002c198: b915 j c002bdcc js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24260 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24268 } else if ((s->token.val == '[' || s->token.val == '{') - c002bfca: fdf7f793 andi a5,a5,-33 - c002bfce: 05b00713 li a4,91 - c002bfd2: 06e79263 bne a5,a4,c002c036 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24261 + c002c19a: fdf7f793 andi a5,a5,-33 + c002c19e: 05b00713 li a4,91 + c002c1a2: 06e79263 bne a5,a4,c002c206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24269 && ((tok1 = js_parse_skip_parens_token(s, &skip_bits, FALSE)) == ',' || - c002bfd6: 4601 li a2,0 - c002bfd8: 080c addi a1,sp,16 - c002bfda: 8522 mv a0,s0 - c002bfdc: ec2fb0ef jal ra,c002769e - c002bfe0: 01b50a63 beq a0,s11,c002bff4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24261 (discriminator 1) - c002bfe4: 03d00793 li a5,61 - c002bfe8: 1cf50863 beq a0,a5,c002c1b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24262 + c002c1a6: 4601 li a2,0 + c002c1a8: 080c addi a1,sp,16 + c002c1aa: 8522 mv a0,s0 + c002c1ac: ec2fb0ef jal ra,c002786e + c002c1b0: 01b50a63 beq a0,s11,c002c1c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24269 (discriminator 1) + c002c1b4: 03d00793 li a5,61 + c002c1b8: 1cf50863 beq a0,a5,c002c388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24270 tok1 == '=' || tok1 == ']')) { - c002bfec: 05d00793 li a5,93 - c002bff0: 04f51363 bne a0,a5,c002c036 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24263 + c002c1bc: 05d00793 li a5,93 + c002c1c0: 04f51363 bne a0,a5,c002c206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24271 if (has_spread) { - c002bff4: 020a9063 bnez s5,c002c014 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24268 + c002c1c4: 020a9063 bnez s5,c002c1e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24276 emit_op(s, OP_for_of_next); - c002bff8: 8522 mv a0,s0 - c002bffa: 08200593 li a1,130 - c002bffe: c3ed90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24269 + c002c1c8: 8522 mv a0,s0 + c002c1ca: 08200593 li a1,130 + c002c1ce: b5cd90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24277 emit_u8(s, 0); - c002c002: 8522 mv a0,s0 - c002c004: 4581 li a1,0 - c002c006: 852d90ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24270 + c002c1d2: 8522 mv a0,s0 + c002c1d4: 4581 li a1,0 + c002c1d6: e83d80ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24278 emit_op(s, OP_drop); - c002c00a: 45b9 li a1,14 - c002c00c: 8522 mv a0,s0 - c002c00e: c2ed90ef jal ra,c000543c - c002c012: a029 j c002c01c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24266 + c002c1da: 45b9 li a1,14 + c002c1dc: 8522 mv a0,s0 + c002c1de: b4cd90ef jal ra,c000552a + c002c1e2: a029 j c002c1ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24274 js_emit_spread_code(s, 0); - c002c014: 4581 li a1,0 - c002c016: 8522 mv a0,s0 - c002c018: fbbeb0ef jal ra,c0017fd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24272 + c002c1e4: 4581 li a1,0 + c002c1e6: 8522 mv a0,s0 + c002c1e8: fbbeb0ef jal ra,c00181a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24280 if (js_parse_destructuring_element(s, tok, is_arg, TRUE, skip_bits & SKIP_HAS_ELLIPSIS, TRUE) < 0) - c002c01c: 4742 lw a4,16(sp) - c002c01e: 4785 li a5,1 - c002c020: 4685 li a3,1 - c002c022: 8b09 andi a4,a4,2 - c002c024: 8652 mv a2,s4 - c002c026: 85ca mv a1,s2 - c002c028: 8522 mv a0,s0 - c002c02a: 8ebff0ef jal ra,c002b914 - c002c02e: f6055de3 bgez a0,c002bfa8 - c002c032: 97fff06f j c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24275 + c002c1ec: 4742 lw a4,16(sp) + c002c1ee: 4785 li a5,1 + c002c1f0: 4685 li a3,1 + c002c1f2: 8b09 andi a4,a4,2 + c002c1f4: 8652 mv a2,s4 + c002c1f6: 85ca mv a1,s2 + c002c1f8: 8522 mv a0,s0 + c002c1fa: 8ebff0ef jal ra,c002bae4 + c002c1fe: f6055de3 bgez a0,c002c178 + c002c202: 97fff06f j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24283 var_name = JS_ATOM_NULL; - c002c036: c202 sw zero,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24276 + c002c206: c202 sw zero,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24284 enum_depth = 0; - c002c038: ca02 sw zero,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24277 + c002c208: ca02 sw zero,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24285 if (tok) { - c002c03a: 0c090263 beqz s2,c002c0fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24278 + c002c20a: 0c090263 beqz s2,c002c2ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24286 var_name = js_parse_destructuring_var(s, tok, is_arg); - c002c03e: 85d2 mv a1,s4 - c002c040: 8522 mv a0,s0 - c002c042: a1efc0ef jal ra,c0028260 - c002c046: 0005059b sext.w a1,a0 - c002c04a: c22e sw a1,4(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24279 + c002c20e: 85d2 mv a1,s4 + c002c210: 8522 mv a0,s0 + c002c212: a1efc0ef jal ra,c0028430 + c002c216: 0005059b sext.w a1,a0 + c002c21a: c22e sw a1,4(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24287 if (var_name == JS_ATOM_NULL) - c002c04c: 9e058de3 beqz a1,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24281 + c002c21c: 9e058de3 beqz a1,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24289 if (js_define_var(s, var_name, tok)) - c002c050: 864a mv a2,s2 - c002c052: 8522 mv a0,s0 - c002c054: 80afc0ef jal ra,c002805e - c002c058: 9e0517e3 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24283 + c002c220: 864a mv a2,s2 + c002c222: 8522 mv a0,s0 + c002c224: 80afc0ef jal ra,c002822e + c002c228: 9e0517e3 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24291 opcode = OP_scope_get_var; - c002c05c: 0b800793 li a5,184 - c002c060: c43e sw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24284 + c002c22c: 0b800793 li a5,184 + c002c230: c43e sw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24292 scope = s->cur_func->scope_level; - c002c062: 743c ld a5,104(s0) - c002c064: 0e07a783 lw a5,224(a5) - c002c068: c63e sw a5,12(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24293 + c002c232: 743c ld a5,104(s0) + c002c234: 0e07a783 lw a5,224(a5) + c002c238: c63e sw a5,12(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24301 if (has_spread) { - c002c06a: 0a0a8e63 beqz s5,c002c126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24294 + c002c23a: 0a0a8e63 beqz s5,c002c2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24302 js_emit_spread_code(s, enum_depth); - c002c06e: 45d2 lw a1,20(sp) - c002c070: 8522 mv a0,s0 - c002c072: f61eb0ef jal ra,c0017fd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24300 + c002c23e: 45d2 lw a1,20(sp) + c002c240: 8522 mv a0,s0 + c002c242: f61eb0ef jal ra,c00181a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24308 if (s->token.val == '=' && !has_spread) { - c002c076: 4c18 lw a4,24(s0) - c002c078: 03d00793 li a5,61 - c002c07c: 06f71763 bne a4,a5,c002c0ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24300 (discriminator 1) - c002c080: 060a9563 bnez s5,c002c0ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24303 + c002c246: 4c18 lw a4,24(s0) + c002c248: 03d00793 li a5,61 + c002c24c: 06f71763 bne a4,a5,c002c2ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24308 (discriminator 1) + c002c250: 060a9563 bnez s5,c002c2ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24311 emit_op(s, OP_dup); - c002c084: 45c5 li a1,17 - c002c086: 8522 mv a0,s0 - c002c088: bb4d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24304 + c002c254: 45c5 li a1,17 + c002c256: 8522 mv a0,s0 + c002c258: ad2d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24312 emit_op(s, OP_undefined); - c002c08c: 4599 li a1,6 - c002c08e: 8522 mv a0,s0 - c002c090: bacd90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24305 + c002c25c: 4599 li a1,6 + c002c25e: 8522 mv a0,s0 + c002c260: acad90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24313 emit_op(s, OP_strict_eq); - c002c094: 0ac00593 li a1,172 - c002c098: 8522 mv a0,s0 - c002c09a: ba2d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24306 + c002c264: 0ac00593 li a1,172 + c002c268: 8522 mv a0,s0 + c002c26a: ac0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24314 label_hasval = emit_goto(s, OP_if_false, -1); - c002c09e: 567d li a2,-1 - c002c0a0: 06a00593 li a1,106 - c002c0a4: 8522 mv a0,s0 - c002c0a6: c13eb0ef jal ra,c0017cb8 - c002c0aa: 8daa mv s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24307 + c002c26e: 567d li a2,-1 + c002c270: 06a00593 li a1,106 + c002c274: 8522 mv a0,s0 + c002c276: c13eb0ef jal ra,c0017e88 + c002c27a: 8daa mv s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24315 if (next_token(s)) - c002c0ac: 8522 mv a0,s0 - c002c0ae: ae9fa0ef jal ra,c0026b96 - c002c0b2: 98051ae3 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24309 + c002c27c: 8522 mv a0,s0 + c002c27e: ae9fa0ef jal ra,c0026d66 + c002c282: 98051ae3 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 emit_op(s, OP_drop); - c002c0b6: 8522 mv a0,s0 - c002c0b8: 45b9 li a1,14 - c002c0ba: b82d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24310 + c002c286: 8522 mv a0,s0 + c002c288: 45b9 li a1,14 + c002c28a: aa0d90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24318 if (js_parse_assign_expr(s)) - c002c0be: 8522 mv a0,s0 - c002c0c0: 516010ef jal ra,c002d5d6 - c002c0c4: 980511e3 bnez a0,c002ba46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24312 + c002c28e: 8522 mv a0,s0 + c002c290: 516010ef jal ra,c002d7a6 + c002c294: 980511e3 bnez a0,c002bc16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24320 if (opcode == OP_scope_get_var || opcode == OP_get_ref_value) - c002c0c8: 47a2 lw a5,8(sp) - c002c0ca: 0b800713 li a4,184 - c002c0ce: 00e78663 beq a5,a4,c002c0da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24312 (discriminator 1) - c002c0d2: 03c00713 li a4,60 - c002c0d6: 00e79663 bne a5,a4,c002c0e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24313 + c002c298: 47a2 lw a5,8(sp) + c002c29a: 0b800713 li a4,184 + c002c29e: 00e78663 beq a5,a4,c002c2aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24320 (discriminator 1) + c002c2a2: 03c00713 li a4,60 + c002c2a6: 00e79663 bne a5,a4,c002c2b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24321 set_object_name(s, var_name); - c002c0da: 4592 lw a1,4(sp) - c002c0dc: 8522 mv a0,s0 - c002c0de: e58db0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24314 + c002c2aa: 4592 lw a1,4(sp) + c002c2ac: 8522 mv a0,s0 + c002c2ae: d76db0ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24322 emit_label(s, label_hasval); - c002c0e2: 85ee mv a1,s11 - c002c0e4: 8522 mv a0,s0 - c002c0e6: cf4d90ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24317 + c002c2b2: 85ee mv a1,s11 + c002c2b4: 8522 mv a0,s0 + c002c2b6: c12d90ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24325 put_lvalue(s, opcode, scope, var_name, - c002c0ea: 4702 lw a4,0(sp) - c002c0ec: 4692 lw a3,4(sp) - c002c0ee: 4632 lw a2,12(sp) - c002c0f0: 45a2 lw a1,8(sp) - c002c0f2: 884e mv a6,s3 - c002c0f4: 4785 li a5,1 - c002c0f6: 8522 mv a0,s0 - c002c0f8: c66db0ef jal ra,c000755e - c002c0fc: b575 j c002bfa8 + c002c2ba: 4702 lw a4,0(sp) + c002c2bc: 4692 lw a3,4(sp) + c002c2be: 4632 lw a2,12(sp) + c002c2c0: 45a2 lw a1,8(sp) + c002c2c2: 884e mv a6,s3 + c002c2c4: 4785 li a5,1 + c002c2c6: 8522 mv a0,s0 + c002c2c8: b84db0ef jal ra,c000764c + c002c2cc: b575 j c002c178 js_parse_left_hand_side_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22799 return js_parse_postfix_expr(s, PF_POSTFIX_CALL); - c002c0fe: 4589 li a1,2 - c002c100: 8522 mv a0,s0 - c002c102: 8b0fe0ef jal ra,c002a1b2 + c002c2ce: 4589 li a1,2 + c002c2d0: 8522 mv a0,s0 + c002c2d2: 8b0fe0ef jal ra,c002a382 js_parse_destructuring_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24294 if (js_parse_left_hand_side_expr(s)) - c002c106: 8a0515e3 bnez a0,c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24288 - if (get_lvalue(s, &opcode, &scope, &var_name, - c002c10a: 05b00893 li a7,91 - c002c10e: 4801 li a6,0 - c002c110: 085c addi a5,sp,20 - c002c112: 870a mv a4,sp - c002c114: 0054 addi a3,sp,4 - c002c116: 0070 addi a2,sp,12 - c002c118: 002c addi a1,sp,8 - c002c11a: 8522 mv a0,s0 - c002c11c: 85ffb0ef jal ra,c002797a - c002c120: d529 beqz a0,c002c06a - c002c122: 88fff06f j c002b9b0 + c002c2d6: 8a0515e3 bnez a0,c002bb80 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24296 + if (get_lvalue(s, &opcode, &scope, &var_name, + c002c2da: 05b00893 li a7,91 + c002c2de: 4801 li a6,0 + c002c2e0: 085c addi a5,sp,20 + c002c2e2: 870a mv a4,sp + c002c2e4: 0054 addi a3,sp,4 + c002c2e6: 0070 addi a2,sp,12 + c002c2e8: 002c addi a1,sp,8 + c002c2ea: 8522 mv a0,s0 + c002c2ec: 85ffb0ef jal ra,c0027b4a + c002c2f0: d529 beqz a0,c002c23a + c002c2f2: 88fff06f j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24304 emit_op(s, OP_for_of_next); - c002c126: 8522 mv a0,s0 - c002c128: 08200593 li a1,130 - c002c12c: b10d90ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24297 + c002c2f6: 8522 mv a0,s0 + c002c2f8: 08200593 li a1,130 + c002c2fc: a2ed90ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24305 emit_u8(s, enum_depth); - c002c130: 01414583 lbu a1,20(sp) - c002c134: 8522 mv a0,s0 - c002c136: f23d80ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24298 + c002c300: 01414583 lbu a1,20(sp) + c002c304: 8522 mv a0,s0 + c002c306: d53d80ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24306 emit_op(s, OP_drop); - c002c13a: 45b9 li a1,14 - c002c13c: 8522 mv a0,s0 - c002c13e: afed90ef jal ra,c000543c - c002c142: bf15 j c002c076 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24323 + c002c30a: 45b9 li a1,14 + c002c30c: 8522 mv a0,s0 + c002c30e: a1cd90ef jal ra,c000552a + c002c312: bf15 j c002c246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24331 if (has_spread) - c002c144: 000a8763 beqz s5,c002c152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24324 + c002c314: 000a8763 beqz s5,c002c322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24332 return js_parse_error(s, "rest element must be the last one"); - c002c148: 00034597 auipc a1,0x34 - c002c14c: b8858593 addi a1,a1,-1144 # c005fcd0 - c002c150: b509 j c002bf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24326 + c002c318: 00034597 auipc a1,0x34 + c002c31c: c1858593 addi a1,a1,-1000 # c005ff30 + c002c320: b509 j c002c122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24334 if (js_parse_expect(s, ',')) - c002c152: 02c00593 li a1,44 - c002c156: 8522 mv a0,s0 - c002c158: 98afc0ef jal ra,c00282e2 - c002c15c: dc0501e3 beqz a0,c002bf1e - c002c160: 851ff06f j c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24336 + c002c322: 02c00593 li a1,44 + c002c326: 8522 mv a0,s0 + c002c328: 98afc0ef jal ra,c00284b2 + c002c32c: dc0501e3 beqz a0,c002c0ee + c002c330: 851ff06f j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24344 return js_parse_error(s, "invalid assignment syntax"); - c002c164: 00034597 auipc a1,0x34 - c002c168: b9458593 addi a1,a1,-1132 # c005fcf8 - c002c16c: b3dd j c002bf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24354 + c002c334: 00034597 auipc a1,0x34 + c002c338: c2458593 addi a1,a1,-988 # c005ff58 + c002c33c: b3dd j c002c122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24362 if (!hasval) { - c002c16e: 000c1b63 bnez s8,c002c184 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24355 + c002c33e: 000c1b63 bnez s8,c002c354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24363 js_parse_error(s, "too complicated destructuring expression"); - c002c172: 00034597 auipc a1,0x34 - c002c176: ba658593 addi a1,a1,-1114 # c005fd18 - c002c17a: 8522 mv a0,s0 - c002c17c: 93cfa0ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24356 + c002c342: 00034597 auipc a1,0x34 + c002c346: c3658593 addi a1,a1,-970 # c005ff78 + c002c34a: 8522 mv a0,s0 + c002c34c: 93cfa0ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24364 return -1; - c002c180: 831ff06f j c002b9b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24359 + c002c350: 831ff06f j c002bb80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24367 memset(s->cur_func->byte_code.buf + start_addr, OP_nop, - c002c184: 7438 ld a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23974 + c002c354: 7438 ld a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23982 start_addr = s->cur_func->byte_code.size; - c002c186: 000c879b sext.w a5,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24359 + c002c356: 000c879b sext.w a5,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24367 memset(s->cur_func->byte_code.buf + start_addr, OP_nop, - c002c18a: 419d063b subw a2,s10,s9 - c002c18e: 13073503 ld a0,304(a4) - c002c192: 0b300593 li a1,179 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24362 + c002c35a: 419d063b subw a2,s10,s9 + c002c35e: 13073503 ld a0,304(a4) + c002c362: 0b300593 li a1,179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24370 has_initializer = FALSE; - c002c196: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24359 + c002c366: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24367 memset(s->cur_func->byte_code.buf + start_addr, OP_nop, - c002c198: 953e add a0,a0,a5 - c002c19a: 6d62a0ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24361 + c002c368: 953e add a0,a0,a5 + c002c36a: 6d62a0ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24369 s->cur_func->label_slots[label_parse].ref_count--; - c002c19e: 4561 li a0,24 - c002c1a0: 02ab0533 mul a0,s6,a0 - c002c1a4: 743c ld a5,104(s0) - c002c1a6: 1707bb03 ld s6,368(a5) - c002c1aa: 9b2a add s6,s6,a0 - c002c1ac: 000b2783 lw a5,0(s6) # 10000 <__clzdi2-0xbfff0000> - c002c1b0: 37fd addiw a5,a5,-1 - c002c1b2: 00fb2023 sw a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24362 + c002c36e: 4561 li a0,24 + c002c370: 02ab0533 mul a0,s6,a0 + c002c374: 743c ld a5,104(s0) + c002c376: 1707bb03 ld s6,368(a5) + c002c37a: 9b2a add s6,s6,a0 + c002c37c: 000b2783 lw a5,0(s6) # 10000 <__clzdi2-0xbfff0000> + c002c380: 37fd addiw a5,a5,-1 + c002c382: 00fb2023 sw a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24370 has_initializer = FALSE; - c002c1b6: b355 j c002bf5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24263 + c002c386: b355 j c002c12a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24271 if (has_spread) { - c002c1b8: e40a80e3 beqz s5,c002bff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24265 + c002c388: e40a80e3 beqz s5,c002c1c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:24273 return js_parse_error(s, "rest element cannot have a default value"); - c002c1bc: 00034597 auipc a1,0x34 - c002c1c0: ae458593 addi a1,a1,-1308 # c005fca0 - c002c1c4: b379 j c002bf52 + c002c38c: 00034597 auipc a1,0x34 + c002c390: b7458593 addi a1,a1,-1164 # c005ff00 + c002c394: b379 j c002c122 -00000000c002c1c6 : +00000000c002c396 : js_parse_function_decl2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33678 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33686 static __exception int js_parse_function_decl2(JSParseState *s, - c002c1c6: 7135 addi sp,sp,-160 - c002c1c8: e922 sd s0,144(sp) - c002c1ca: e14a sd s2,128(sp) - c002c1cc: f4d6 sd s5,104(sp) - c002c1ce: e8e2 sd s8,80(sp) - c002c1d0: e4e6 sd s9,72(sp) - c002c1d2: e0ea sd s10,64(sp) - c002c1d4: ed06 sd ra,152(sp) - c002c1d6: e526 sd s1,136(sp) - c002c1d8: fcce sd s3,120(sp) - c002c1da: f8d2 sd s4,112(sp) - c002c1dc: f0da sd s6,96(sp) - c002c1de: ecde sd s7,88(sp) - c002c1e0: fc6e sd s11,56(sp) - c002c1e2: 8cbe mv s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33694 + c002c396: 7135 addi sp,sp,-160 + c002c398: e922 sd s0,144(sp) + c002c39a: e14a sd s2,128(sp) + c002c39c: f4d6 sd s5,104(sp) + c002c39e: e8e2 sd s8,80(sp) + c002c3a0: e4e6 sd s9,72(sp) + c002c3a2: e0ea sd s10,64(sp) + c002c3a4: ed06 sd ra,152(sp) + c002c3a6: e526 sd s1,136(sp) + c002c3a8: fcce sd s3,120(sp) + c002c3aa: f8d2 sd s4,112(sp) + c002c3ac: f0da sd s6,96(sp) + c002c3ae: ecde sd s7,88(sp) + c002c3b0: fc6e sd s11,56(sp) + c002c3b2: 8cbe mv s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33702 is_expr = (func_type != JS_PARSE_FUNC_STATEMENT && - c002c1e4: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33678 + c002c3b4: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33686 static __exception int js_parse_function_decl2(JSParseState *s, - c002c1e6: e842 sd a6,16(sp) - c002c1e8: e446 sd a7,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33697 + c002c3b6: e842 sd a6,16(sp) + c002c3b8: e446 sd a7,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33705 if (func_type == JS_PARSE_FUNC_STATEMENT || - c002c1ea: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33687 + c002c3ba: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33695 JSContext *ctx = s->ctx; - c002c1ec: 00053983 ld s3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33688 + c002c3bc: 00053983 ld s3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33696 JSFunctionDef *fd = s->cur_func; - c002c1f0: 7524 ld s1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33678 + c002c3c0: 7524 ld s1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33686 static __exception int js_parse_function_decl2(JSParseState *s, - c002c1f2: 842a mv s0,a0 - c002c1f4: 892e mv s2,a1 - c002c1f6: 8ab2 mv s5,a2 - c002c1f8: 8d3a mv s10,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33694 + c002c3c2: 842a mv s0,a0 + c002c3c4: 892e mv s2,a1 + c002c3c6: 8ab2 mv s5,a2 + c002c3c8: 8d3a mv s10,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33702 is_expr = (func_type != JS_PARSE_FUNC_STATEMENT && - c002c1fa: 00bc3c33 sltu s8,s8,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33697 + c002c3ca: 00bc3c33 sltu s8,s8,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33705 if (func_type == JS_PARSE_FUNC_STATEMENT || - c002c1fe: 12b7ee63 bltu a5,a1,c002c33a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 + c002c3ce: 12b7ee63 bltu a5,a1,c002c50a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33708 if (func_kind == JS_FUNC_NORMAL && - c002c202: e239 bnez a2,c002c248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33701 + c002c3d2: e239 bnez a2,c002c418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33709 token_is_pseudo_keyword(s, JS_ATOM_async) && - c002c204: 08600593 li a1,134 - c002c208: 94cd80ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 + c002c3d4: 08600593 li a1,134 + c002c3d8: f7dd70ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33708 if (func_kind == JS_FUNC_NORMAL && - c002c20c: cd15 beqz a0,c002c248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33702 + c002c3dc: cd15 beqz a0,c002c418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33710 peek_token(s, TRUE) != '\n') { - c002c20e: 4585 li a1,1 - c002c210: 8522 mv a0,s0 - c002c212: d47d90ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33701 + c002c3de: 4585 li a1,1 + c002c3e0: 8522 mv a0,s0 + c002c3e2: c65d90ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33709 token_is_pseudo_keyword(s, JS_ATOM_async) && - c002c216: 47a9 li a5,10 - c002c218: 02f50863 beq a0,a5,c002c248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33703 + c002c3e6: 47a9 li a5,10 + c002c3e8: 02f50863 beq a0,a5,c002c418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33711 if (next_token(s)) - c002c21c: 8522 mv a0,s0 - c002c21e: 979fa0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33705 + c002c3ec: 8522 mv a0,s0 + c002c3ee: 979fa0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33713 func_kind = JS_FUNC_ASYNC; - c002c222: 4a89 li s5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33703 + c002c3f2: 4a89 li s5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33711 if (next_token(s)) - c002c224: c115 beqz a0,c002c248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33734 + c002c3f4: c115 beqz a0,c002c418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33742 return -1; - c002c226: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34239 -} - c002c228: 60ea ld ra,152(sp) - c002c22a: 644a ld s0,144(sp) - c002c22c: 64aa ld s1,136(sp) - c002c22e: 690a ld s2,128(sp) - c002c230: 79e6 ld s3,120(sp) - c002c232: 7a46 ld s4,112(sp) - c002c234: 7aa6 ld s5,104(sp) - c002c236: 7b06 ld s6,96(sp) - c002c238: 6be6 ld s7,88(sp) - c002c23a: 6ca6 ld s9,72(sp) - c002c23c: 6d06 ld s10,64(sp) - c002c23e: 7de2 ld s11,56(sp) - c002c240: 8562 mv a0,s8 - c002c242: 6c46 ld s8,80(sp) - c002c244: 610d addi sp,sp,160 - c002c246: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33707 + c002c3f6: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34247 +} + c002c3f8: 60ea ld ra,152(sp) + c002c3fa: 644a ld s0,144(sp) + c002c3fc: 64aa ld s1,136(sp) + c002c3fe: 690a ld s2,128(sp) + c002c400: 79e6 ld s3,120(sp) + c002c402: 7a46 ld s4,112(sp) + c002c404: 7aa6 ld s5,104(sp) + c002c406: 7b06 ld s6,96(sp) + c002c408: 6be6 ld s7,88(sp) + c002c40a: 6ca6 ld s9,72(sp) + c002c40c: 6d06 ld s10,64(sp) + c002c40e: 7de2 ld s11,56(sp) + c002c410: 8562 mv a0,s8 + c002c412: 6c46 ld s8,80(sp) + c002c414: 610d addi sp,sp,160 + c002c416: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33715 if (next_token(s)) - c002c248: 8522 mv a0,s0 - c002c24a: 94dfa0ef jal ra,c0026b96 - c002c24e: fd61 bnez a0,c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33709 + c002c418: 8522 mv a0,s0 + c002c41a: 94dfa0ef jal ra,c0026d66 + c002c41e: fd61 bnez a0,c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33717 if (s->token.val == '*') { - c002c250: 4c18 lw a4,24(s0) - c002c252: 02a00793 li a5,42 - c002c256: 00f71863 bne a4,a5,c002c266 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33710 + c002c420: 4c18 lw a4,24(s0) + c002c422: 02a00793 li a5,42 + c002c426: 00f71863 bne a4,a5,c002c436 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33718 if (next_token(s)) - c002c25a: 8522 mv a0,s0 - c002c25c: 93bfa0ef jal ra,c0026b96 - c002c260: f179 bnez a0,c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33712 + c002c42a: 8522 mv a0,s0 + c002c42c: 93bfa0ef jal ra,c0026d66 + c002c430: f179 bnez a0,c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33720 func_kind |= JS_FUNC_GENERATOR; - c002c262: 001aea93 ori s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33715 + c002c432: 001aea93 ori s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33723 if (s->token.val == TOK_IDENT) { - c002c266: 4c1c lw a5,24(s0) - c002c268: f8300713 li a4,-125 - c002c26c: 04e79a63 bne a5,a4,c002c2c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33716 + c002c436: 4c1c lw a5,24(s0) + c002c438: f8300713 li a4,-125 + c002c43c: 04e79a63 bne a5,a4,c002c490 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33724 if (s->token.u.ident.is_reserved || - c002c270: 581c lw a5,48(s0) - c002c272: ef81 bnez a5,c002c28a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33717 + c002c440: 581c lw a5,48(s0) + c002c442: ef81 bnez a5,c002c45a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33725 (s->token.u.ident.atom == JS_ATOM_yield && - c002c274: 541c lw a5,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33716 + c002c444: 541c lw a5,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33724 if (s->token.u.ident.is_reserved || - c002c276: 02d00713 li a4,45 - c002c27a: 02e79963 bne a5,a4,c002c2ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33717 + c002c446: 02d00713 li a4,45 + c002c44a: 02e79963 bne a5,a4,c002c47c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33725 (s->token.u.ident.atom == JS_ATOM_yield && - c002c27e: 4789 li a5,2 - c002c280: 04f91b63 bne s2,a5,c002c2d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33718 + c002c44e: 4789 li a5,2 + c002c450: 04f91b63 bne s2,a5,c002c4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33726 func_type == JS_PARSE_FUNC_EXPR && - c002c284: 001af793 andi a5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33721 + c002c454: 001af793 andi a5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33729 ((func_type == JS_PARSE_FUNC_EXPR && - c002c288: c7b9 beqz a5,c002c2d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33724 + c002c458: c7b9 beqz a5,c002c4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33732 return js_parse_error_reserved_identifier(s); - c002c28a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34239 -} - c002c28c: 644a ld s0,144(sp) - c002c28e: 60ea ld ra,152(sp) - c002c290: 64aa ld s1,136(sp) - c002c292: 690a ld s2,128(sp) - c002c294: 79e6 ld s3,120(sp) - c002c296: 7a46 ld s4,112(sp) - c002c298: 7aa6 ld s5,104(sp) - c002c29a: 7b06 ld s6,96(sp) - c002c29c: 6be6 ld s7,88(sp) - c002c29e: 6c46 ld s8,80(sp) - c002c2a0: 6ca6 ld s9,72(sp) - c002c2a2: 6d06 ld s10,64(sp) - c002c2a4: 7de2 ld s11,56(sp) - c002c2a6: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33724 + c002c45a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34247 +} + c002c45c: 644a ld s0,144(sp) + c002c45e: 60ea ld ra,152(sp) + c002c460: 64aa ld s1,136(sp) + c002c462: 690a ld s2,128(sp) + c002c464: 79e6 ld s3,120(sp) + c002c466: 7a46 ld s4,112(sp) + c002c468: 7aa6 ld s5,104(sp) + c002c46a: 7b06 ld s6,96(sp) + c002c46c: 6be6 ld s7,88(sp) + c002c46e: 6c46 ld s8,80(sp) + c002c470: 6ca6 ld s9,72(sp) + c002c472: 6d06 ld s10,64(sp) + c002c474: 7de2 ld s11,56(sp) + c002c476: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33732 return js_parse_error_reserved_identifier(s); - c002c2a8: 9fbfb06f j c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33719 + c002c478: 9fbfb06f j c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33727 (func_kind & JS_FUNC_GENERATOR)) || - c002c2ac: 02e00713 li a4,46 - c002c2b0: 02e79363 bne a5,a4,c002c2d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33720 + c002c47c: 02e00713 li a4,46 + c002c480: 02e79363 bne a5,a4,c002c4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33728 (s->token.u.ident.atom == JS_ATOM_await && - c002c2b4: 4789 li a5,2 - c002c2b6: 02f91063 bne s2,a5,c002c2d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33721 + c002c484: 4789 li a5,2 + c002c486: 02f91063 bne s2,a5,c002c4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33729 ((func_type == JS_PARSE_FUNC_EXPR && - c002c2ba: 002af793 andi a5,s5,2 - c002c2be: b7e9 j c002c288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33727 + c002c48a: 002af793 andi a5,s5,2 + c002c48e: b7e9 j c002c458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33735 if (s->token.val == TOK_IDENT || - c002c2c0: fd700713 li a4,-41 - c002c2c4: 02e79863 bne a5,a4,c002c2f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33728 + c002c490: fd700713 li a4,-41 + c002c494: 02e79863 bne a5,a4,c002c4c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33736 (((s->token.val == TOK_YIELD && !(fd->js_mode & JS_MODE_STRICT)) || - c002c2c8: 0864c783 lbu a5,134(s1) - c002c2cc: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33729 + c002c498: 0864c783 lbu a5,134(s1) + c002c49c: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33737 (s->token.val == TOK_AWAIT && !s->is_module)) && - c002c2ce: eb8d bnez a5,c002c300 - c002c2d0: 4789 li a5,2 - c002c2d2: 02f91a63 bne s2,a5,c002c306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33731 + c002c49e: eb8d bnez a5,c002c4d0 + c002c4a0: 4789 li a5,2 + c002c4a2: 02f91a63 bne s2,a5,c002c4d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33739 func_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002c2d6: 540c lw a1,40(s0) - c002c2d8: 854e mv a0,s3 - c002c2da: 9f0db0ef jal ra,c00074ca - c002c2de: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33732 + c002c4a6: 540c lw a1,40(s0) + c002c4a8: 854e mv a0,s3 + c002c4aa: 90edb0ef jal ra,c00075b8 + c002c4ae: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33740 if (next_token(s)) { - c002c2e2: 8522 mv a0,s0 - c002c2e4: 8b3fa0ef jal ra,c0026b96 - c002c2e8: c931 beqz a0,c002c33c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33733 + c002c4b2: 8522 mv a0,s0 + c002c4b4: 8b3fa0ef jal ra,c0026d66 + c002c4b8: c931 beqz a0,c002c50c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33741 JS_FreeAtom(ctx, func_name); - c002c2ea: 85d2 mv a1,s4 - c002c2ec: 854e mv a0,s3 - c002c2ee: a1edb0ef jal ra,c000750c - c002c2f2: bf15 j c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33728 + c002c4ba: 85d2 mv a1,s4 + c002c4bc: 854e mv a0,s3 + c002c4be: 93cdb0ef jal ra,c00075fa + c002c4c2: bf15 j c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33736 (((s->token.val == TOK_YIELD && !(fd->js_mode & JS_MODE_STRICT)) || - c002c2f4: fd800713 li a4,-40 - c002c2f8: 00e79463 bne a5,a4,c002c300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33729 - (s->token.val == TOK_AWAIT && !s->is_module)) && - c002c2fc: 583c lw a5,112(s0) - c002c2fe: bfc1 j c002c2ce + c002c4c4: fd800713 li a4,-40 + c002c4c8: 00e79463 bne a5,a4,c002c4d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33737 + (s->token.val == TOK_AWAIT && !s->is_module)) && + c002c4cc: 583c lw a5,112(s0) + c002c4ce: bfc1 j c002c49e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33745 if (func_type != JS_PARSE_FUNC_EXPR && - c002c300: 4789 li a5,2 - c002c302: 02f90c63 beq s2,a5,c002c33a - c002c306: 6742 ld a4,16(sp) - c002c308: 4789 li a5,2 - c002c30a: 4a01 li s4,0 - c002c30c: 02f70863 beq a4,a5,c002c33c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33739 + c002c4d0: 4789 li a5,2 + c002c4d2: 02f90c63 beq s2,a5,c002c50a + c002c4d6: 6742 ld a4,16(sp) + c002c4d8: 4789 li a5,2 + c002c4da: 4a01 li s4,0 + c002c4dc: 02f70863 beq a4,a5,c002c50c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33747 return js_parse_error(s, "function name expected"); - c002c310: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34239 -} - c002c312: 644a ld s0,144(sp) - c002c314: 60ea ld ra,152(sp) - c002c316: 64aa ld s1,136(sp) - c002c318: 690a ld s2,128(sp) - c002c31a: 79e6 ld s3,120(sp) - c002c31c: 7a46 ld s4,112(sp) - c002c31e: 7aa6 ld s5,104(sp) - c002c320: 7b06 ld s6,96(sp) - c002c322: 6be6 ld s7,88(sp) - c002c324: 6c46 ld s8,80(sp) - c002c326: 6ca6 ld s9,72(sp) - c002c328: 6d06 ld s10,64(sp) - c002c32a: 7de2 ld s11,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33739 + c002c4e0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34247 +} + c002c4e2: 644a ld s0,144(sp) + c002c4e4: 60ea ld ra,152(sp) + c002c4e6: 64aa ld s1,136(sp) + c002c4e8: 690a ld s2,128(sp) + c002c4ea: 79e6 ld s3,120(sp) + c002c4ec: 7a46 ld s4,112(sp) + c002c4ee: 7aa6 ld s5,104(sp) + c002c4f0: 7b06 ld s6,96(sp) + c002c4f2: 6be6 ld s7,88(sp) + c002c4f4: 6c46 ld s8,80(sp) + c002c4f6: 6ca6 ld s9,72(sp) + c002c4f8: 6d06 ld s10,64(sp) + c002c4fa: 7de2 ld s11,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33747 return js_parse_error(s, "function name expected"); - c002c32c: 00034597 auipc a1,0x34 - c002c330: a1c58593 addi a1,a1,-1508 # c005fd48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34239 + c002c4fc: 00034597 auipc a1,0x34 + c002c500: aac58593 addi a1,a1,-1364 # c005ffa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34247 } - c002c334: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33739 + c002c504: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33747 return js_parse_error(s, "function name expected"); - c002c336: f83f906f j c00262b8 - c002c33a: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33746 + c002c506: f83f906f j c0026488 + c002c50a: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33754 if (fd->is_eval && fd->eval_type == JS_EVAL_TYPE_MODULE && - c002c33c: 0384ab03 lw s6,56(s1) - c002c340: 020b0663 beqz s6,c002c36c - c002c344: 5cdc lw a5,60(s1) - c002c346: 4705 li a4,1 - c002c348: 02e79263 bne a5,a4,c002c36c - c002c34c: 1b27e263 bltu a5,s2,c002c4f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33749 + c002c50c: 0384ab03 lw s6,56(s1) + c002c510: 020b0663 beqz s6,c002c53c + c002c514: 5cdc lw a5,60(s1) + c002c516: 4705 li a4,1 + c002c518: 02e79263 bne a5,a4,c002c53c + c002c51c: 1b27e263 bltu a5,s2,c002c6c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33757 hf = find_global_var(fd, func_name); - c002c350: 85d2 mv a1,s4 - c002c352: 8526 mv a0,s1 - c002c354: 92ad80ef jal ra,c000447e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33751 + c002c520: 85d2 mv a1,s4 + c002c522: 8526 mv a0,s1 + c002c524: f5bd70ef jal ra,c000447e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33759 if (hf && hf->scope_level == fd->scope_level) { - c002c358: c911 beqz a0,c002c36c - c002c35a: 4518 lw a4,8(a0) - c002c35c: 0e04a783 lw a5,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33752 + c002c528: c911 beqz a0,c002c53c + c002c52a: 4518 lw a4,8(a0) + c002c52c: 0e04a783 lw a5,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33760 js_parse_error(s, "invalid redefinition of global identifier in module code"); - c002c360: 00034597 auipc a1,0x34 - c002c364: a0058593 addi a1,a1,-1536 # c005fd60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33751 + c002c530: 00034597 auipc a1,0x34 + c002c534: a9058593 addi a1,a1,-1392 # c005ffc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33759 if (hf && hf->scope_level == fd->scope_level) { - c002c368: 08f70763 beq a4,a5,c002c3f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33758 + c002c538: 08f70763 beq a4,a5,c002c5c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33766 if (func_type == JS_PARSE_FUNC_VAR) { - c002c36c: 4785 li a5,1 - c002c36e: 18f91163 bne s2,a5,c002c4f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33759 + c002c53c: 4785 li a5,1 + c002c53e: 18f91163 bne s2,a5,c002c6c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33767 if (!(fd->js_mode & JS_MODE_STRICT) - c002c372: 0864c783 lbu a5,134(s1) - c002c376: 8b85 andi a5,a5,1 - c002c378: e7a1 bnez a5,c002c3c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33760 + c002c542: 0864c783 lbu a5,134(s1) + c002c546: 8b85 andi a5,a5,1 + c002c548: e7a1 bnez a5,c002c590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33768 && func_kind == JS_FUNC_NORMAL - c002c37a: 020a9fe3 bnez s5,c002cbb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33761 + c002c54a: 020a9fe3 bnez s5,c002cd88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33769 && find_lexical_decl(ctx, fd, func_name, fd->scope_first, FALSE) < 0 - c002c37e: 0e44a603 lw a2,228(s1) - c002c382: 4681 li a3,0 - c002c384: 85d2 mv a1,s4 - c002c386: 8526 mv a0,s1 - c002c388: f7fd90ef jal ra,c0006306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33692 + c002c54e: 0e44a603 lw a2,228(s1) + c002c552: 4681 li a3,0 + c002c554: 85d2 mv a1,s4 + c002c556: 8526 mv a0,s1 + c002c558: e9dd90ef jal ra,c00063f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 BOOL create_func_var = FALSE; - c002c38c: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33761 + c002c55c: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33769 && find_lexical_decl(ctx, fd, func_name, fd->scope_first, FALSE) < 0 - c002c38e: 02055563 bgez a0,c002c3b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33762 + c002c55e: 02055563 bgez a0,c002c588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33770 && !((func_idx = find_var(ctx, fd, func_name)) >= 0 && (func_idx & ARGUMENT_VAR_OFFSET)) - c002c392: 8652 mv a2,s4 - c002c394: 85a6 mv a1,s1 - c002c396: 854e mv a0,s3 - c002c398: c9eda0ef jal ra,c0006836 - c002c39c: 00054563 bltz a0,c002c3a6 - c002c3a0: 8175 srli a0,a0,0x1d - c002c3a2: 8905 andi a0,a0,1 - c002c3a4: e911 bnez a0,c002c3b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33763 + c002c562: 8652 mv a2,s4 + c002c564: 85a6 mv a1,s1 + c002c566: 854e mv a0,s3 + c002c568: bbcda0ef jal ra,c0006924 + c002c56c: 00054563 bltz a0,c002c576 + c002c570: 8175 srli a0,a0,0x1d + c002c572: 8905 andi a0,a0,1 + c002c574: e911 bnez a0,c002c588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33771 && !(func_name == JS_ATOM_arguments && fd->has_arguments_binding)) { - c002c3a6: 04e00793 li a5,78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33764 + c002c576: 04e00793 li a5,78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33772 create_func_var = TRUE; - c002c3aa: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33763 + c002c57a: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33771 && !(func_name == JS_ATOM_arguments && fd->has_arguments_binding)) { - c002c3ac: 00fa1663 bne s4,a5,c002c3b8 - c002c3b0: 0604ab83 lw s7,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33764 + c002c57c: 00fa1663 bne s4,a5,c002c588 + c002c580: 0604ab83 lw s7,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33772 create_func_var = TRUE; - c002c3b4: 001bbb93 seqz s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33786 + c002c584: 001bbb93 seqz s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33794 lexical_func_idx = define_var(s, fd, func_name, - c002c3b8: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33768 + c002c588: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33776 if (fd->is_eval && - c002c3ba: 040b0563 beqz s6,c002c404 - c002c3be: a021 j c002c3c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33692 + c002c58a: 040b0563 beqz s6,c002c5d4 + c002c58e: a021 j c002c596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 BOOL create_func_var = FALSE; - c002c3c0: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33768 + c002c590: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33776 if (fd->is_eval && - c002c3c2: 020b0e63 beqz s6,c002c3fe - c002c3c6: 5cd8 lw a4,60(s1) - c002c3c8: 4785 li a5,1 - c002c3ca: 02e7ea63 bltu a5,a4,c002c3fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33771 + c002c592: 020b0e63 beqz s6,c002c5ce + c002c596: 5cd8 lw a4,60(s1) + c002c598: 4785 li a5,1 + c002c59a: 02e7ea63 bltu a5,a4,c002c5ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33779 fd->scope_level == fd->body_scope) { - c002c3ce: 0e04a783 lw a5,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33770 + c002c59e: 0e04a783 lw a5,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33778 fd->eval_type == JS_EVAL_TYPE_MODULE) && - c002c3d2: 1184ad83 lw s11,280(s1) - c002c3d6: 02fd9463 bne s11,a5,c002c3fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33775 + c002c5a2: 1184ad83 lw s11,280(s1) + c002c5a6: 02fd9463 bne s11,a5,c002c5ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33783 hf = find_global_var(fd, func_name); - c002c3da: 85d2 mv a1,s4 - c002c3dc: 8526 mv a0,s1 - c002c3de: 8a0d80ef jal ra,c000447e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33777 + c002c5aa: 85d2 mv a1,s4 + c002c5ac: 8526 mv a0,s1 + c002c5ae: ed1d70ef jal ra,c000447e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33785 if (hf && hf->scope_level == fd->scope_level) { - c002c3e2: 10050863 beqz a0,c002c4f2 - c002c3e6: 451c lw a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33690 + c002c5b2: 10050863 beqz a0,c002c6c2 + c002c5b6: 451c lw a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33698 int func_idx, lexical_func_idx = -1; - c002c3e8: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33777 + c002c5b8: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33785 if (hf && hf->scope_level == fd->scope_level) { - c002c3ea: 03b79563 bne a5,s11,c002c414 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33778 + c002c5ba: 03b79563 bne a5,s11,c002c5e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33786 js_parse_error(s, "invalid redefinition of global identifier"); - c002c3ee: 00033597 auipc a1,0x33 - c002c3f2: 12258593 addi a1,a1,290 # c005f510 - c002c3f6: 8522 mv a0,s0 - c002c3f8: ec1f90ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33779 + c002c5be: 00033597 auipc a1,0x33 + c002c5c2: 1b258593 addi a1,a1,434 # c005f770 + c002c5c6: 8522 mv a0,s0 + c002c5c8: ec1f90ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33787 JS_FreeAtom(ctx, func_name); - c002c3fc: b5fd j c002c2ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33786 + c002c5cc: b5fd j c002c4ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33794 lexical_func_idx = define_var(s, fd, func_name, - c002c3fe: 015036b3 snez a3,s5 - c002c402: 068d addi a3,a3,3 - c002c404: 8652 mv a2,s4 - c002c406: 85a6 mv a1,s1 - c002c408: 8522 mv a0,s0 - c002c40a: 9c7fb0ef jal ra,c0027dd0 - c002c40e: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33790 + c002c5ce: 015036b3 snez a3,s5 + c002c5d2: 068d addi a3,a3,3 + c002c5d4: 8652 mv a2,s4 + c002c5d6: 85a6 mv a1,s1 + c002c5d8: 8522 mv a0,s0 + c002c5da: 9c7fb0ef jal ra,c0027fa0 + c002c5de: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33798 if (lexical_func_idx < 0) { - c002c410: ec054de3 bltz a0,c002c2ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33797 + c002c5e0: ec054de3 bltz a0,c002c4ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33805 fd = js_new_function_def(ctx, fd, FALSE, is_expr, - c002c414: 6818 ld a4,16(s0) - c002c416: 85a6 mv a1,s1 - c002c418: 87e6 mv a5,s9 - c002c41a: 86e2 mv a3,s8 - c002c41c: 4601 li a2,0 - c002c41e: 854e mv a0,s3 - c002c420: b5eed0ef jal ra,c001977e - c002c424: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33799 + c002c5e4: 6818 ld a4,16(s0) + c002c5e6: 85a6 mv a1,s1 + c002c5e8: 87e6 mv a5,s9 + c002c5ea: 86e2 mv a3,s8 + c002c5ec: 4601 li a2,0 + c002c5ee: 854e mv a0,s3 + c002c5f0: b5eed0ef jal ra,c001994e + c002c5f4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33807 if (!fd) { - c002c426: ec0502e3 beqz a0,c002c2ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33803 + c002c5f6: ec0502e3 beqz a0,c002c4ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33811 if (pfd) - c002c42a: 67a2 ld a5,8(sp) - c002c42c: c391 beqz a5,c002c430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33804 + c002c5fa: 67a2 ld a5,8(sp) + c002c5fc: c391 beqz a5,c002c600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33812 *pfd = fd; - c002c42e: e388 sd a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33805 + c002c5fe: e388 sd a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33813 s->cur_func = fd; - c002c430: f424 sd s1,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33806 + c002c600: f424 sd s1,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33814 fd->func_name = func_name; - c002c432: 0944a423 sw s4,136(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33810 + c002c602: 0944a423 sw s4,136(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33818 func_type == JS_PARSE_FUNC_EXPR) && - c002c436: 4709 li a4,2 - c002c438: 4781 li a5,0 - c002c43a: 01276463 bltu a4,s2,c002c442 - c002c43e: 001ab793 seqz a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33808 + c002c606: 4709 li a4,2 + c002c608: 4781 li a5,0 + c002c60a: 01276463 bltu a4,s2,c002c612 + c002c60e: 001ab793 seqz a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33816 fd->has_prototype = (func_type == JS_PARSE_FUNC_STATEMENT || - c002c442: c4fc sw a5,76(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33814 + c002c612: c4fc sw a5,76(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33822 func_type == JS_PARSE_FUNC_SETTER || - c002c444: ff89079b addiw a5,s2,-8 - c002c448: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33812 + c002c614: ff89079b addiw a5,s2,-8 + c002c618: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33820 fd->has_home_object = (func_type == JS_PARSE_FUNC_METHOD || - c002c44a: 4689 li a3,2 - c002c44c: ffc9079b addiw a5,s2,-4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33815 + c002c61a: 4689 li a3,2 + c002c61c: ffc9079b addiw a5,s2,-4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33823 func_type == JS_PARSE_FUNC_CLASS_CONSTRUCTOR || - c002c450: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33812 + c002c620: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33820 fd->has_home_object = (func_type == JS_PARSE_FUNC_METHOD || - c002c452: 00f6f663 bgeu a3,a5,c002c45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33815 + c002c622: 00f6f663 bgeu a3,a5,c002c62e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33823 func_type == JS_PARSE_FUNC_CLASS_CONSTRUCTOR || - c002c456: ff89079b addiw a5,s2,-8 - c002c45a: 0027b713 sltiu a4,a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33817 + c002c626: ff89079b addiw a5,s2,-8 + c002c62a: 0027b713 sltiu a4,a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33825 fd->has_arguments_binding = (func_type != JS_PARSE_FUNC_ARROW && - c002c45e: ffb97793 andi a5,s2,-5 - c002c462: 17f5 addi a5,a5,-3 - c002c464: 00f037b3 snez a5,a5 - c002c468: d0bc sw a5,96(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33819 + c002c62e: ffb97793 andi a5,s2,-5 + c002c632: 17f5 addi a5,a5,-3 + c002c634: 00f037b3 snez a5,a5 + c002c638: d0bc sw a5,96(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33827 fd->has_this_binding = fd->has_arguments_binding; - c002c46a: d0fc sw a5,100(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33820 + c002c63a: d0fc sw a5,100(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33828 fd->is_derived_class_constructor = (func_type == JS_PARSE_FUNC_DERIVED_CLASS_CONSTRUCTOR); - c002c46c: ff790793 addi a5,s2,-9 - c002c470: 0017b793 seqz a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33812 + c002c63c: ff790793 addi a5,s2,-9 + c002c640: 0017b793 seqz a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33820 fd->has_home_object = (func_type == JS_PARSE_FUNC_METHOD || - c002c474: c4b8 sw a4,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33817 + c002c644: c4b8 sw a4,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33825 fd->has_arguments_binding = (func_type != JS_PARSE_FUNC_ARROW && - c002c476: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33820 + c002c646: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33828 fd->is_derived_class_constructor = (func_type == JS_PARSE_FUNC_DERIVED_CLASS_CONSTRUCTOR); - c002c478: dcbc sw a5,120(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33821 + c002c648: dcbc sw a5,120(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33829 if (func_type == JS_PARSE_FUNC_ARROW) { - c002c47a: 06d91e63 bne s2,a3,c002c4f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33822 + c002c64a: 06d91e63 bne s2,a3,c002c6c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33830 fd->new_target_allowed = fd->parent->new_target_allowed; - c002c47e: 649c ld a5,8(s1) - c002c480: 57b8 lw a4,104(a5) - c002c482: d4b8 sw a4,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33823 + c002c64e: 649c ld a5,8(s1) + c002c650: 57b8 lw a4,104(a5) + c002c652: d4b8 sw a4,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33831 fd->super_call_allowed = fd->parent->super_call_allowed; - c002c484: 57f8 lw a4,108(a5) - c002c486: d4f8 sw a4,108(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33824 + c002c654: 57f8 lw a4,108(a5) + c002c656: d4f8 sw a4,108(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33832 fd->super_allowed = fd->parent->super_allowed; - c002c488: 5bb8 lw a4,112(a5) - c002c48a: d8b8 sw a4,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33825 + c002c658: 5bb8 lw a4,112(a5) + c002c65a: d8b8 sw a4,112(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33833 fd->arguments_allowed = fd->parent->arguments_allowed; - c002c48c: 5bfc lw a5,116(a5) - c002c48e: d8fc sw a5,116(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33841 + c002c65c: 5bfc lw a5,116(a5) + c002c65e: d8fc sw a5,116(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33849 fd->func_kind = func_kind; - c002c490: 09548223 sb s5,132(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33842 + c002c660: 09548223 sb s5,132(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33850 fd->func_type = func_type; - c002c494: 092482a3 sb s2,133(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33844 + c002c664: 092482a3 sb s2,133(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33852 if (func_type == JS_PARSE_FUNC_CLASS_CONSTRUCTOR || - c002c498: 4785 li a5,1 - c002c49a: ff89071b addiw a4,s2,-8 - c002c49e: 00e7ed63 bltu a5,a4,c002c4b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33847 + c002c668: 4785 li a5,1 + c002c66a: ff89071b addiw a4,s2,-8 + c002c66e: 00e7ed63 bltu a5,a4,c002c688 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33855 emit_op(s, OP_check_ctor); - c002c4a2: 02b00593 li a1,43 - c002c4a6: 8522 mv a0,s0 - c002c4a8: f95d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33850 + c002c672: 02b00593 li a1,43 + c002c676: 8522 mv a0,s0 + c002c678: eb3d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33858 if (func_type == JS_PARSE_FUNC_CLASS_CONSTRUCTOR) { - c002c4ac: 47a1 li a5,8 - c002c4ae: 00f91563 bne s2,a5,c002c4b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33851 + c002c67c: 47a1 li a5,8 + c002c67e: 00f91563 bne s2,a5,c002c688 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33859 emit_class_field_init(s); - c002c4b2: 8522 mv a0,s0 - c002c4b4: 861eb0ef jal ra,c0017d14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33855 + c002c682: 8522 mv a0,s0 + c002c684: 861eb0ef jal ra,c0017ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33863 fd->has_simple_parameter_list = TRUE; - c002c4b8: 4c05 li s8,1 - c002c4ba: 0584b823 sd s8,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33858 + c002c688: 4c05 li s8,1 + c002c68a: 0584b823 sd s8,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33866 if (func_type == JS_PARSE_FUNC_ARROW && s->token.val == TOK_IDENT) { - c002c4be: 478d li a5,3 - c002c4c0: 1af91363 bne s2,a5,c002c666 - c002c4c4: 4c18 lw a4,24(s0) - c002c4c6: f8300793 li a5,-125 - c002c4ca: 1af71163 bne a4,a5,c002c66c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33860 + c002c68e: 478d li a5,3 + c002c690: 1af91363 bne s2,a5,c002c836 + c002c694: 4c18 lw a4,24(s0) + c002c696: f8300793 li a5,-125 + c002c69a: 1af71163 bne a4,a5,c002c83c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33868 if (s->token.u.ident.is_reserved) { - c002c4ce: 581c lw a5,48(s0) - c002c4d0: c3a1 beqz a5,c002c510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33861 + c002c69e: 581c lw a5,48(s0) + c002c6a0: c3a1 beqz a5,c002c6e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33869 js_parse_error_reserved_identifier(s); - c002c4d2: 8522 mv a0,s0 - c002c4d4: fcefb0ef jal ra,c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34234 + c002c6a2: 8522 mv a0,s0 + c002c6a4: fcefb0ef jal ra,c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34242 s->cur_func = fd->parent; - c002c4d8: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34235 + c002c6a8: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34243 js_free_function_def(ctx, fd); - c002c4da: 85a6 mv a1,s1 - c002c4dc: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34234 + c002c6aa: 85a6 mv a1,s1 + c002c6ac: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34242 s->cur_func = fd->parent; - c002c4de: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34235 + c002c6ae: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34243 js_free_function_def(ctx, fd); - c002c4e0: a83dc0ef jal ra,c0008f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34236 + c002c6b0: 9a1dc0ef jal ra,c0009050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34244 if (pfd) - c002c4e4: 67a2 ld a5,8(sp) - c002c4e6: d40780e3 beqz a5,c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34237 + c002c6b4: 67a2 ld a5,8(sp) + c002c6b6: d40780e3 beqz a5,c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34245 *pfd = NULL; - c002c4ea: 0007b023 sd zero,0(a5) - c002c4ee: bb25 j c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33692 + c002c6ba: 0007b023 sd zero,0(a5) + c002c6be: bb25 j c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 BOOL create_func_var = FALSE; - c002c4f0: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33690 + c002c6c0: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33698 int func_idx, lexical_func_idx = -1; - c002c4f2: 5b7d li s6,-1 - c002c4f4: b705 j c002c414 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33826 + c002c6c2: 5b7d li s6,-1 + c002c6c4: b705 j c002c5e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33834 } else if (func_type == JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002c4f6: 469d li a3,7 - c002c4f8: 00d91663 bne s2,a3,c002c504 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33827 + c002c6c6: 469d li a3,7 + c002c6c8: 00d91663 bne s2,a3,c002c6d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33835 fd->new_target_allowed = TRUE; // although new.target === undefined - c002c4fc: 4785 li a5,1 - c002c4fe: f4bc sd a5,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33829 + c002c6cc: 4785 li a5,1 + c002c6ce: f4bc sd a5,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33837 fd->super_allowed = TRUE; - c002c500: f8bc sd a5,112(s1) - c002c502: b779 j c002c490 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33832 + c002c6d0: f8bc sd a5,112(s1) + c002c6d2: b779 j c002c660 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33840 fd->new_target_allowed = TRUE; - c002c504: 4685 li a3,1 - c002c506: d4b4 sw a3,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33833 + c002c6d4: 4685 li a3,1 + c002c6d6: d4b4 sw a3,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33841 fd->super_call_allowed = fd->is_derived_class_constructor; - c002c508: d4fc sw a5,108(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33834 + c002c6d8: d4fc sw a5,108(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33842 fd->super_allowed = fd->has_home_object; - c002c50a: d8b8 sw a4,112(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33835 + c002c6da: d8b8 sw a4,112(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33843 fd->arguments_allowed = TRUE; - c002c50c: d8f4 sw a3,116(s1) - c002c50e: b749 j c002c490 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33865 + c002c6dc: d8f4 sw a3,116(s1) + c002c6de: b749 j c002c660 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33873 if (add_arg(ctx, fd, name) < 0) - c002c510: 5410 lw a2,40(s0) - c002c512: 85a6 mv a1,s1 - c002c514: 854e mv a0,s3 - c002c516: cb5f50ef jal ra,c00221ca - c002c51a: fa054fe3 bltz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33867 + c002c6e0: 5410 lw a2,40(s0) + c002c6e2: 85a6 mv a1,s1 + c002c6e4: 854e mv a0,s3 + c002c6e6: cb5f50ef jal ra,c002239a + c002c6ea: fa054fe3 bltz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33875 fd->defined_arg_count = 1; - c002c51e: 0b84a823 sw s8,176(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34011 + c002c6ee: 0b84a823 sw s8,176(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34019 if (fd->has_parameter_expressions) { - c002c522: 48fc lw a5,84(s1) - c002c524: cb95 beqz a5,c002c558 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34018 + c002c6f2: 48fc lw a5,84(s1) + c002c6f4: cb95 beqz a5,c002c728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34026 idx = fd->scopes[fd->scope_level].first; - c002c526: 0e04a703 lw a4,224(s1) - c002c52a: 78fc ld a5,240(s1) - c002c52c: 070e slli a4,a4,0x3 - c002c52e: 97ba add a5,a5,a4 - c002c530: 0047ac83 lw s9,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34019 + c002c6f6: 0e04a703 lw a4,224(s1) + c002c6fa: 78fc ld a5,240(s1) + c002c6fc: 070e slli a4,a4,0x3 + c002c6fe: 97ba add a5,a5,a4 + c002c700: 0047ac83 lw s9,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34027 while (idx >= 0) { - c002c534: 420cdc63 bgez s9,c002c96c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34038 + c002c704: 420cdc63 bgez s9,c002cb3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34046 emit_op(s, OP_leave_scope); - c002c538: 0b500593 li a1,181 - c002c53c: 8522 mv a0,s0 - c002c53e: effd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34039 + c002c708: 0b500593 li a1,181 + c002c70c: 8522 mv a0,s0 + c002c70e: e1dd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34047 emit_u16(s, fd->scope_level); - c002c542: 0e04d583 lhu a1,224(s1) - c002c546: 8522 mv a0,s0 - c002c548: dc3d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34043 + c002c712: 0e04d583 lhu a1,224(s1) + c002c716: 8522 mv a0,s0 + c002c718: ce1d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34051 fd->scope_first = fd->scopes[fd->scope_level].first; - c002c54c: 78fc ld a5,240(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34042 + c002c71c: 78fc ld a5,240(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34050 fd->scope_level = 0; - c002c54e: 0e04a023 sw zero,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34043 + c002c71e: 0e04a023 sw zero,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34051 fd->scope_first = fd->scopes[fd->scope_level].first; - c002c552: 43dc lw a5,4(a5) - c002c554: 0ef4a223 sw a5,228(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34046 + c002c722: 43dc lw a5,4(a5) + c002c724: 0ef4a223 sw a5,228(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34054 if (next_token(s)) - c002c558: 8522 mv a0,s0 - c002c55a: e3cfa0ef jal ra,c0026b96 - c002c55e: 8c2a mv s8,a0 - c002c560: fd25 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34050 + c002c728: 8522 mv a0,s0 + c002c72a: e3cfa0ef jal ra,c0026d66 + c002c72e: 8c2a mv s8,a0 + c002c730: fd25 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34058 if (func_kind == JS_FUNC_GENERATOR || - c002c562: ffdaf793 andi a5,s5,-3 - c002c566: 4705 li a4,1 - c002c568: 00e79763 bne a5,a4,c002c576 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34052 + c002c732: ffdaf793 andi a5,s5,-3 + c002c736: 4705 li a4,1 + c002c738: 00e79763 bne a5,a4,c002c746 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34060 emit_op(s, OP_initial_yield); - c002c56c: 08800593 li a1,136 - c002c570: 8522 mv a0,s0 - c002c572: ecbd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34056 + c002c73c: 08800593 li a1,136 + c002c740: 8522 mv a0,s0 + c002c742: de9d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34064 fd->in_function_body = TRUE; - c002c576: 4785 li a5,1 - c002c578: dcfc sw a5,124(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34057 + c002c746: 4785 li a5,1 + c002c748: dcfc sw a5,124(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34065 push_scope(s); /* enter body scope */ - c002c57a: 8522 mv a0,s0 - c002c57c: f91eb0ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34058 + c002c74a: 8522 mv a0,s0 + c002c74c: f91eb0ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34066 fd->body_scope = fd->scope_level; - c002c580: 0e04a783 lw a5,224(s1) - c002c584: 10f4ac23 sw a5,280(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34060 + c002c750: 0e04a783 lw a5,224(s1) + c002c754: 10f4ac23 sw a5,280(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34068 if (s->token.val == TOK_ARROW) { - c002c588: 4c18 lw a4,24(s0) - c002c58a: fa400793 li a5,-92 - c002c58e: 44f71c63 bne a4,a5,c002c9e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34061 + c002c758: 4c18 lw a4,24(s0) + c002c75a: fa400793 li a5,-92 + c002c75e: 44f71c63 bne a4,a5,c002cbb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34069 if (next_token(s)) - c002c592: 8522 mv a0,s0 - c002c594: e02fa0ef jal ra,c0026b96 - c002c598: f121 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34064 + c002c762: 8522 mv a0,s0 + c002c764: e02fa0ef jal ra,c0026d66 + c002c768: f121 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34072 if (s->token.val != '{') { - c002c59a: 4c18 lw a4,24(s0) - c002c59c: 07b00793 li a5,123 - c002c5a0: 62f70263 beq a4,a5,c002cbc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34065 + c002c76a: 4c18 lw a4,24(s0) + c002c76c: 07b00793 li a5,123 + c002c770: 62f70263 beq a4,a5,c002cd94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34073 if (js_parse_function_check_names(s, fd, func_name)) - c002c5a4: 8652 mv a2,s4 - c002c5a6: 85a6 mv a1,s1 - c002c5a8: 8522 mv a0,s0 - c002c5aa: f22fb0ef jal ra,c0027ccc - c002c5ae: f50d bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34068 + c002c774: 8652 mv a2,s4 + c002c776: 85a6 mv a1,s1 + c002c778: 8522 mv a0,s0 + c002c77a: f22fb0ef jal ra,c0027e9c + c002c77e: f50d bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34076 if (js_parse_assign_expr(s)) - c002c5b0: 8522 mv a0,s0 - c002c5b2: 024010ef jal ra,c002d5d6 - c002c5b6: f20511e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34072 + c002c780: 8522 mv a0,s0 + c002c782: 024010ef jal ra,c002d7a6 + c002c786: f20511e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34080 emit_op(s, OP_return_async); - c002c5ba: 02e00593 li a1,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34071 + c002c78a: 02e00593 li a1,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34079 if (func_kind != JS_FUNC_NORMAL) - c002c5be: 000a9463 bnez s5,c002c5c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34074 + c002c78e: 000a9463 bnez s5,c002c796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34082 emit_op(s, OP_return); - c002c5c2: 02800593 li a1,40 - c002c5c6: 8522 mv a0,s0 - c002c5c8: e75d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34076 + c002c792: 02800593 li a1,40 + c002c796: 8522 mv a0,s0 + c002c798: d93d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34084 if (!(fd->js_mode & JS_MODE_STRIP)) { - c002c5cc: 0864c783 lbu a5,134(s1) - c002c5d0: 8b89 andi a5,a5,2 - c002c5d2: ef91 bnez a5,c002c5ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34080 + c002c79c: 0864c783 lbu a5,134(s1) + c002c7a0: 8b89 andi a5,a5,2 + c002c7a2: ef91 bnez a5,c002c7be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34088 fd->source_len = s->last_ptr - ptr; - c002c5d4: 6830 ld a2,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34081 + c002c7a4: 6830 ld a2,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34089 fd->source = js_strndup(ctx, (const char *)ptr, fd->source_len); - c002c5d6: 85ea mv a1,s10 - c002c5d8: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34080 + c002c7a6: 85ea mv a1,s10 + c002c7a8: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34088 fd->source_len = s->last_ptr - ptr; - c002c5da: 41a6063b subw a2,a2,s10 - c002c5de: 20c4a823 sw a2,528(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34081 + c002c7aa: 41a6063b subw a2,a2,s10 + c002c7ae: 20c4a823 sw a2,528(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34089 fd->source = js_strndup(ctx, (const char *)ptr, fd->source_len); - c002c5e2: e90e80ef jal ra,c0014c72 - c002c5e6: 20a4b423 sd a0,520(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34082 + c002c7b2: e90e80ef jal ra,c0014e42 + c002c7b6: 20a4b423 sd a0,520(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34090 if (!fd->source) - c002c5ea: ee0507e3 beqz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34123 + c002c7ba: ee0507e3 beqz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34131 s->cur_func = fd->parent; - c002c5ee: 649c ld a5,8(s1) + c002c7be: 649c ld a5,8(s1) reparse_ident_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20604 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20612 if (s->token.val == TOK_IDENT || - c002c5f0: f8300713 li a4,-125 + c002c7c0: f8300713 li a4,-125 js_parse_function_decl2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34131 s->cur_func = fd->parent; - c002c5f4: f43c sd a5,104(s0) + c002c7c4: f43c sd a5,104(s0) reparse_ident_token(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20604 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20612 if (s->token.val == TOK_IDENT || - c002c5f6: 4c1c lw a5,24(s0) - c002c5f8: 00e78863 beq a5,a4,c002c608 - c002c5fc: 0557879b addiw a5,a5,85 - c002c600: 02d00713 li a4,45 - c002c604: 00f76a63 bltu a4,a5,c002c618 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20607 + c002c7c6: 4c1c lw a5,24(s0) + c002c7c8: 00e78863 beq a5,a4,c002c7d8 + c002c7cc: 0557879b addiw a5,a5,85 + c002c7d0: 02d00713 li a4,45 + c002c7d4: 00f76a63 bltu a4,a5,c002c7e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20615 s->token.val = TOK_IDENT; - c002c608: f8300793 li a5,-125 - c002c60c: cc1c sw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20608 + c002c7d8: f8300793 li a5,-125 + c002c7dc: cc1c sw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20616 s->token.u.ident.is_reserved = FALSE; - c002c60e: 02042823 sw zero,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20609 + c002c7de: 02042823 sw zero,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:20617 update_token_ident(s); - c002c612: 8522 mv a0,s0 - c002c614: d61d70ef jal ra,c0004374 + c002c7e2: 8522 mv a0,s0 + c002c7e4: b91d70ef jal ra,c0004374 js_parse_function_decl2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34137 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34145 idx = cpool_add(s, JS_NULL); - c002c618: 4789 li a5,2 - c002c61a: 4581 li a1,0 - c002c61c: 4609 li a2,2 - c002c61e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34134 + c002c7e8: 4789 li a5,2 + c002c7ea: 4581 li a1,0 + c002c7ec: 4609 li a2,2 + c002c7ee: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34142 JSAtom func_name = fd->func_name; - c002c620: 0884aa03 lw s4,136(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34137 + c002c7f0: 0884aa03 lw s4,136(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34145 idx = cpool_add(s, JS_NULL); - c002c624: f43e sd a5,40(sp) - c002c626: f002 sd zero,32(sp) - c002c628: ae3eb0ef jal ra,c001810a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34138 + c002c7f4: f43e sd a5,40(sp) + c002c7f6: f002 sd zero,32(sp) + c002c7f8: ae3eb0ef jal ra,c00182da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34146 fd->parent_cpool_idx = idx; - c002c62c: c888 sw a0,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34140 + c002c7fc: c888 sw a0,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34148 if (is_expr) { - c002c62e: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34137 + c002c7fe: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34145 idx = cpool_add(s, JS_NULL); - c002c630: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34140 + c002c800: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34148 if (is_expr) { - c002c632: 4327f863 bgeu a5,s2,c002ca62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34142 + c002c802: 4327f863 bgeu a5,s2,c002cc32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34150 if (func_type != JS_PARSE_FUNC_CLASS_CONSTRUCTOR && - c002c636: 6762 ld a4,24(sp) - c002c638: bee7f8e3 bgeu a5,a4,c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34146 + c002c806: 6762 ld a4,24(sp) + c002c808: bee7f8e3 bgeu a5,a4,c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34154 emit_op(s, OP_fclosure); - c002c63c: 458d li a1,3 - c002c63e: 8522 mv a0,s0 - c002c640: dfdd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34147 + c002c80c: 458d li a1,3 + c002c80e: 8522 mv a0,s0 + c002c810: d1bd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34155 emit_u32(s, idx); - c002c644: 000a859b sext.w a1,s5 - c002c648: 8522 mv a0,s0 - c002c64a: f89d80ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34148 + c002c814: 000a859b sext.w a1,s5 + c002c818: 8522 mv a0,s0 + c002c81a: ea7d80ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34156 if (func_name == JS_ATOM_NULL) { - c002c64e: bc0a1de3 bnez s4,c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34149 + c002c81e: bc0a1de3 bnez s4,c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34157 emit_op(s, OP_set_name); - c002c652: 8522 mv a0,s0 - c002c654: 04d00593 li a1,77 - c002c658: de5d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34150 + c002c822: 8522 mv a0,s0 + c002c824: 04d00593 li a1,77 + c002c828: d03d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34158 emit_u32(s, JS_ATOM_NULL); - c002c65c: 4581 li a1,0 - c002c65e: 8522 mv a0,s0 - c002c660: f73d80ef jal ra,c00055d2 - c002c664: b6d1 j c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33868 + c002c82c: 4581 li a1,0 + c002c82e: 8522 mv a0,s0 + c002c830: e91d80ef jal ra,c00056c0 + c002c834: b6d1 j c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33876 } else if (func_type != JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002c666: 479d li a5,7 - c002c668: eef908e3 beq s2,a5,c002c558 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33869 + c002c836: 479d li a5,7 + c002c838: eef908e3 beq s2,a5,c002c728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33877 if (s->token.val == '(') { - c002c66c: 4c18 lw a4,24(s0) - c002c66e: 02800793 li a5,40 - c002c672: 02f71d63 bne a4,a5,c002c6ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33873 + c002c83c: 4c18 lw a4,24(s0) + c002c83e: 02800793 li a5,40 + c002c842: 02f71d63 bne a4,a5,c002c87c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33881 js_parse_skip_parens_token(s, &skip_bits, FALSE); - c002c676: 4601 li a2,0 - c002c678: 100c addi a1,sp,32 - c002c67a: 8522 mv a0,s0 - c002c67c: 822fb0ef jal ra,c002769e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33874 + c002c846: 4601 li a2,0 + c002c848: 100c addi a1,sp,32 + c002c84a: 8522 mv a0,s0 + c002c84c: 822fb0ef jal ra,c002786e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33882 if (skip_bits & SKIP_HAS_ASSIGNMENT) - c002c680: 5782 lw a5,32(sp) - c002c682: 8b91 andi a5,a5,4 - c002c684: c399 beqz a5,c002c68a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33875 + c002c850: 5782 lw a5,32(sp) + c002c852: 8b91 andi a5,a5,4 + c002c854: c399 beqz a5,c002c85a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33883 fd->has_parameter_expressions = TRUE; - c002c686: 4785 li a5,1 - c002c688: c8fc sw a5,84(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33876 + c002c856: 4785 li a5,1 + c002c858: c8fc sw a5,84(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33884 if (next_token(s)) - c002c68a: 8522 mv a0,s0 - c002c68c: d0afa0ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33879 + c002c85a: 8522 mv a0,s0 + c002c85c: d0afa0ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33887 if (js_parse_expect(s, '(')) - c002c690: e40514e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33883 + c002c860: e40514e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33891 if (fd->has_parameter_expressions) { - c002c694: 48fc lw a5,84(s1) - c002c696: cb89 beqz a5,c002c6a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33884 + c002c864: 48fc lw a5,84(s1) + c002c866: cb89 beqz a5,c002c878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33892 fd->scope_level = -1; /* force no parent scope */ - c002c698: 57fd li a5,-1 - c002c69a: 0ef4a023 sw a5,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33885 + c002c868: 57fd li a5,-1 + c002c86a: 0ef4a023 sw a5,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33893 if (push_scope(s) < 0) - c002c69e: 8522 mv a0,s0 - c002c6a0: e6deb0ef jal ra,c001850c - c002c6a4: b80541e3 bltz a0,c002c226 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33955 + c002c86e: 8522 mv a0,s0 + c002c870: e6deb0ef jal ra,c00186dc + c002c874: b80541e3 bltz a0,c002c3f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33963 has_opt_arg = TRUE; - c002c6a8: 4c01 li s8,0 - c002c6aa: a435 j c002c8d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33879 + c002c878: 4c01 li s8,0 + c002c87a: a435 j c002caa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33887 if (js_parse_expect(s, '(')) - c002c6ac: 02800593 li a1,40 - c002c6b0: 8522 mv a0,s0 - c002c6b2: c31fb0ef jal ra,c00282e2 - c002c6b6: bfe9 j c002c690 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33907 + c002c87c: 02800593 li a1,40 + c002c880: 8522 mv a0,s0 + c002c882: c31fb0ef jal ra,c00284b2 + c002c886: bfe9 j c002c860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33915 idx = add_arg(ctx, fd, JS_ATOM_NULL); - c002c6b8: 4601 li a2,0 - c002c6ba: 85a6 mv a1,s1 - c002c6bc: 854e mv a0,s3 - c002c6be: b0df50ef jal ra,c00221ca - c002c6c2: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33908 + c002c888: 4601 li a2,0 + c002c88a: 85a6 mv a1,s1 + c002c88c: 854e mv a0,s3 + c002c88e: b0df50ef jal ra,c002239a + c002c892: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33916 emit_op(s, OP_get_arg); - c002c6c4: 05b00593 li a1,91 - c002c6c8: 8522 mv a0,s0 - c002c6ca: d73d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33909 + c002c894: 05b00593 li a1,91 + c002c898: 8522 mv a0,s0 + c002c89a: c91d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33917 emit_u16(s, idx); - c002c6ce: 030c9593 slli a1,s9,0x30 - c002c6d2: 91c1 srli a1,a1,0x30 - c002c6d4: a4a1 j c002c91c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33918 + c002c89e: 030c9593 slli a1,s9,0x30 + c002c8a2: 91c1 srli a1,a1,0x30 + c002c8a4: a4a1 j c002caec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33926 } else if (s->token.val == TOK_IDENT) { - c002c6d6: f8300713 li a4,-125 - c002c6da: 1ce79d63 bne a5,a4,c002c8b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33919 + c002c8a6: f8300713 li a4,-125 + c002c8aa: 1ce79d63 bne a5,a4,c002ca84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33927 if (s->token.u.ident.is_reserved) { - c002c6de: 581c lw a5,48(s0) - c002c6e0: de0799e3 bnez a5,c002c4d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33923 + c002c8ae: 581c lw a5,48(s0) + c002c8b0: de0799e3 bnez a5,c002c6a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33931 name = s->token.u.ident.atom; - c002c6e4: 02842c83 lw s9,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33924 + c002c8b4: 02842c83 lw s9,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33932 if (name == JS_ATOM_yield && fd->func_kind == JS_FUNC_GENERATOR) { - c002c6e8: 02d00793 li a5,45 - c002c6ec: 00fc9763 bne s9,a5,c002c6fa - c002c6f0: 0844c783 lbu a5,132(s1) - c002c6f4: 4705 li a4,1 - c002c6f6: dce78ee3 beq a5,a4,c002c4d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33928 + c002c8b8: 02d00793 li a5,45 + c002c8bc: 00fc9763 bne s9,a5,c002c8ca + c002c8c0: 0844c783 lbu a5,132(s1) + c002c8c4: 4705 li a4,1 + c002c8c6: dce78ee3 beq a5,a4,c002c6a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33936 if (fd->has_parameter_expressions) { - c002c6fa: 48fc lw a5,84(s1) - c002c6fc: e7c9 bnez a5,c002c786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33933 + c002c8ca: 48fc lw a5,84(s1) + c002c8cc: e7c9 bnez a5,c002c956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33941 idx = add_arg(ctx, fd, name); - c002c6fe: 8666 mv a2,s9 - c002c700: 85a6 mv a1,s1 - c002c702: 854e mv a0,s3 - c002c704: ac7f50ef jal ra,c00221ca - c002c708: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33934 + c002c8ce: 8666 mv a2,s9 + c002c8d0: 85a6 mv a1,s1 + c002c8d2: 854e mv a0,s3 + c002c8d4: ac7f50ef jal ra,c002239a + c002c8d8: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33942 if (idx < 0) - c002c70a: dc0547e3 bltz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33936 + c002c8da: dc0547e3 bltz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33944 if (next_token(s)) - c002c70e: 8522 mv a0,s0 - c002c710: c86fa0ef jal ra,c0026b96 - c002c714: dc0512e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33938 + c002c8de: 8522 mv a0,s0 + c002c8e0: c86fa0ef jal ra,c0026d66 + c002c8e4: dc0512e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33946 if (rest) { - c002c718: 080d8063 beqz s11,c002c798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33939 + c002c8e8: 080d8063 beqz s11,c002c968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33947 emit_op(s, OP_rest); - c002c71c: 45b5 li a1,13 - c002c71e: 8522 mv a0,s0 - c002c720: d1dd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33940 + c002c8ec: 45b5 li a1,13 + c002c8ee: 8522 mv a0,s0 + c002c8f0: c3bd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33948 emit_u16(s, idx); - c002c724: 00015c03 lhu s8,0(sp) - c002c728: 8522 mv a0,s0 - c002c72a: 85e2 mv a1,s8 - c002c72c: bdfd80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33941 + c002c8f4: 00015c03 lhu s8,0(sp) + c002c8f8: 8522 mv a0,s0 + c002c8fa: 85e2 mv a1,s8 + c002c8fc: afdd80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33949 if (fd->has_parameter_expressions) { - c002c730: 48fc lw a5,84(s1) - c002c732: c39d beqz a5,c002c758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33942 + c002c900: 48fc lw a5,84(s1) + c002c902: c39d beqz a5,c002c928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33950 emit_op(s, OP_dup); - c002c734: 45c5 li a1,17 - c002c736: 8522 mv a0,s0 - c002c738: d05d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33943 + c002c904: 45c5 li a1,17 + c002c906: 8522 mv a0,s0 + c002c908: c23d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33951 emit_op(s, OP_scope_put_var_init); - c002c73c: 0bd00593 li a1,189 - c002c740: 8522 mv a0,s0 - c002c742: cfbd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33944 + c002c90c: 0bd00593 li a1,189 + c002c910: 8522 mv a0,s0 + c002c912: c19d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33952 emit_atom(s, name); - c002c746: 85e6 mv a1,s9 - c002c748: 8522 mv a0,s0 - c002c74a: da5da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33945 + c002c916: 85e6 mv a1,s9 + c002c918: 8522 mv a0,s0 + c002c91a: cc3da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33953 emit_u16(s, fd->scope_level); - c002c74e: 0e04d583 lhu a1,224(s1) - c002c752: 8522 mv a0,s0 - c002c754: bb7d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33947 + c002c91e: 0e04d583 lhu a1,224(s1) + c002c922: 8522 mv a0,s0 + c002c924: ad5d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33955 emit_op(s, OP_put_arg); - c002c758: 05c00593 li a1,92 - c002c75c: 8522 mv a0,s0 - c002c75e: cdfd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33948 + c002c928: 05c00593 li a1,92 + c002c92c: 8522 mv a0,s0 + c002c92e: bfdd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33956 emit_u16(s, idx); - c002c762: 85e2 mv a1,s8 - c002c764: 8522 mv a0,s0 - c002c766: ba5d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33950 + c002c932: 85e2 mv a1,s8 + c002c934: 8522 mv a0,s0 + c002c936: ac3d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33958 has_opt_arg = TRUE; - c002c76a: 8c6e mv s8,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33949 + c002c93a: 8c6e mv s8,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33957 fd->has_simple_parameter_list = FALSE; - c002c76c: 0404a823 sw zero,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33995 + c002c93c: 0404a823 sw zero,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34003 if (rest && s->token.val != ')') { - c002c770: 4c1c lw a5,24(s0) - c002c772: 02900713 li a4,41 - c002c776: 0ce78c63 beq a5,a4,c002c84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33996 + c002c940: 4c1c lw a5,24(s0) + c002c942: 02900713 li a4,41 + c002c946: 0ce78c63 beq a5,a4,c002ca1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34004 js_parse_expect(s, ')'); - c002c77a: 02900593 li a1,41 - c002c77e: 8522 mv a0,s0 - c002c780: b63fb0ef jal ra,c00282e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33997 + c002c94a: 02900593 li a1,41 + c002c94e: 8522 mv a0,s0 + c002c950: b63fb0ef jal ra,c00284b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34005 goto fail; - c002c784: bb91 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33929 + c002c954: bb91 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33937 if (define_var(s, fd, name, JS_VAR_DEF_LET) < 0) - c002c786: 4685 li a3,1 - c002c788: 8666 mv a2,s9 - c002c78a: 85a6 mv a1,s1 - c002c78c: 8522 mv a0,s0 - c002c78e: e42fb0ef jal ra,c0027dd0 - c002c792: f60556e3 bgez a0,c002c6fe - c002c796: b389 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33951 + c002c956: 4685 li a3,1 + c002c958: 8666 mv a2,s9 + c002c95a: 85a6 mv a1,s1 + c002c95c: 8522 mv a0,s0 + c002c95e: e42fb0ef jal ra,c0027fa0 + c002c962: f60556e3 bgez a0,c002c8ce + c002c966: b389 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33959 } else if (s->token.val == '=') { - c002c798: 4c1c lw a5,24(s0) - c002c79a: 03d00713 li a4,61 - c002c79e: 0ce79963 bne a5,a4,c002c870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33954 + c002c968: 4c1c lw a5,24(s0) + c002c96a: 03d00713 li a4,61 + c002c96e: 0ce79963 bne a5,a4,c002ca40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33962 fd->has_simple_parameter_list = FALSE; - c002c7a2: 0404a823 sw zero,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33957 + c002c972: 0404a823 sw zero,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33965 if (next_token(s)) - c002c7a6: 8522 mv a0,s0 - c002c7a8: beefa0ef jal ra,c0026b96 - c002c7ac: d20516e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33960 + c002c976: 8522 mv a0,s0 + c002c978: beefa0ef jal ra,c0026d66 + c002c97c: d20516e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33968 label = new_label(s); - c002c7b0: 8522 mv a0,s0 - c002c7b2: cfeeb0ef jal ra,c0017cb0 - c002c7b6: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33961 + c002c980: 8522 mv a0,s0 + c002c982: cfeeb0ef jal ra,c0017e80 + c002c986: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33969 emit_op(s, OP_get_arg); - c002c7b8: 05b00593 li a1,91 - c002c7bc: 8522 mv a0,s0 - c002c7be: c7fd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33962 + c002c988: 05b00593 li a1,91 + c002c98c: 8522 mv a0,s0 + c002c98e: b9dd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33970 emit_u16(s, idx); - c002c7c2: 00015d83 lhu s11,0(sp) - c002c7c6: 8522 mv a0,s0 - c002c7c8: 85ee mv a1,s11 - c002c7ca: b41d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33963 + c002c992: 00015d83 lhu s11,0(sp) + c002c996: 8522 mv a0,s0 + c002c998: 85ee mv a1,s11 + c002c99a: a5fd80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33971 emit_op(s, OP_dup); - c002c7ce: 45c5 li a1,17 - c002c7d0: 8522 mv a0,s0 - c002c7d2: c6bd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33964 + c002c99e: 45c5 li a1,17 + c002c9a0: 8522 mv a0,s0 + c002c9a2: b89d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33972 emit_op(s, OP_undefined); - c002c7d6: 4599 li a1,6 - c002c7d8: 8522 mv a0,s0 - c002c7da: c63d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33965 + c002c9a6: 4599 li a1,6 + c002c9a8: 8522 mv a0,s0 + c002c9aa: b81d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33973 emit_op(s, OP_strict_eq); - c002c7de: 0ac00593 li a1,172 - c002c7e2: 8522 mv a0,s0 - c002c7e4: c59d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33966 + c002c9ae: 0ac00593 li a1,172 + c002c9b2: 8522 mv a0,s0 + c002c9b4: b77d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33974 emit_goto(s, OP_if_false, label); - c002c7e8: 8662 mv a2,s8 - c002c7ea: 06a00593 li a1,106 - c002c7ee: 8522 mv a0,s0 - c002c7f0: cc8eb0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33967 + c002c9b8: 8662 mv a2,s8 + c002c9ba: 06a00593 li a1,106 + c002c9be: 8522 mv a0,s0 + c002c9c0: cc8eb0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33975 emit_op(s, OP_drop); - c002c7f4: 8522 mv a0,s0 - c002c7f6: 45b9 li a1,14 - c002c7f8: c45d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33968 + c002c9c4: 8522 mv a0,s0 + c002c9c6: 45b9 li a1,14 + c002c9c8: b63d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33976 if (js_parse_assign_expr(s)) - c002c7fc: 8522 mv a0,s0 - c002c7fe: 5d9000ef jal ra,c002d5d6 - c002c802: cc051be3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33970 + c002c9cc: 8522 mv a0,s0 + c002c9ce: 5d9000ef jal ra,c002d7a6 + c002c9d2: cc051be3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33978 set_object_name(s, name); - c002c806: 85e6 mv a1,s9 - c002c808: 8522 mv a0,s0 - c002c80a: f2dda0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33971 + c002c9d6: 85e6 mv a1,s9 + c002c9d8: 8522 mv a0,s0 + c002c9da: e4bda0ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33979 emit_op(s, OP_dup); - c002c80e: 45c5 li a1,17 - c002c810: 8522 mv a0,s0 - c002c812: c2bd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33972 + c002c9de: 45c5 li a1,17 + c002c9e0: 8522 mv a0,s0 + c002c9e2: b49d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33980 emit_op(s, OP_put_arg); - c002c816: 05c00593 li a1,92 - c002c81a: 8522 mv a0,s0 - c002c81c: c21d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33973 + c002c9e6: 05c00593 li a1,92 + c002c9ea: 8522 mv a0,s0 + c002c9ec: b3fd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33981 emit_u16(s, idx); - c002c820: 85ee mv a1,s11 - c002c822: 8522 mv a0,s0 - c002c824: ae7d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33974 + c002c9f0: 85ee mv a1,s11 + c002c9f2: 8522 mv a0,s0 + c002c9f4: a05d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33982 emit_label(s, label); - c002c828: 85e2 mv a1,s8 - c002c82a: 8522 mv a0,s0 - c002c82c: dafd80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33975 + c002c9f8: 85e2 mv a1,s8 + c002c9fa: 8522 mv a0,s0 + c002c9fc: ccdd80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33983 emit_op(s, OP_scope_put_var_init); - c002c830: 0bd00593 li a1,189 - c002c834: 8522 mv a0,s0 - c002c836: c07d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33976 + c002ca00: 0bd00593 li a1,189 + c002ca04: 8522 mv a0,s0 + c002ca06: b25d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33984 emit_atom(s, name); - c002c83a: 85e6 mv a1,s9 - c002c83c: 8522 mv a0,s0 - c002c83e: cb1da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33977 + c002ca0a: 85e6 mv a1,s9 + c002ca0c: 8522 mv a0,s0 + c002ca0e: bcfda0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33985 emit_u16(s, fd->scope_level); - c002c842: 0e04d583 lhu a1,224(s1) - c002c846: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33955 + c002ca12: 0e04d583 lhu a1,224(s1) + c002ca16: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33963 has_opt_arg = TRUE; - c002c848: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33977 + c002ca18: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33985 emit_u16(s, fd->scope_level); - c002c84a: ac1d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33999 + c002ca1a: 9dfd80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34007 if (s->token.val == ')') - c002c84e: 4c1c lw a5,24(s0) - c002c850: 02900713 li a4,41 - c002c854: 06e79a63 bne a5,a4,c002c8c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34004 + c002ca1e: 4c1c lw a5,24(s0) + c002ca20: 02900713 li a4,41 + c002ca24: 06e79a63 bne a5,a4,c002ca98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34012 if ((func_type == JS_PARSE_FUNC_GETTER && fd->arg_count != 0) || - c002c858: 4791 li a5,4 - c002c85a: 10f91063 bne s2,a5,c002c95a - c002c85e: 0ac4a783 lw a5,172(s1) - c002c862: cc0780e3 beqz a5,c002c522 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34006 + c002ca28: 4791 li a5,4 + c002ca2a: 10f91063 bne s2,a5,c002cb2a + c002ca2e: 0ac4a783 lw a5,172(s1) + c002ca32: cc0780e3 beqz a5,c002c6f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34014 js_parse_error(s, "invalid number of arguments for getter or setter"); - c002c866: 00033597 auipc a1,0x33 - c002c86a: 55a58593 addi a1,a1,1370 # c005fdc0 - c002c86e: a0b9 j c002c8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33979 + c002ca36: 00033597 auipc a1,0x33 + c002ca3a: 5ea58593 addi a1,a1,1514 # c0060020 + c002ca3e: a0b9 j c002ca8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33987 if (!has_opt_arg) { - c002c870: 000c1763 bnez s8,c002c87e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33980 + c002ca40: 000c1763 bnez s8,c002ca4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33988 fd->defined_arg_count++; - c002c874: 0b04a783 lw a5,176(s1) - c002c878: 2785 addiw a5,a5,1 - c002c87a: 0af4a823 sw a5,176(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33982 + c002ca44: 0b04a783 lw a5,176(s1) + c002ca48: 2785 addiw a5,a5,1 + c002ca4a: 0af4a823 sw a5,176(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33990 if (fd->has_parameter_expressions) { - c002c87e: 48fc lw a5,84(s1) - c002c880: d7f9 beqz a5,c002c84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33984 + c002ca4e: 48fc lw a5,84(s1) + c002ca50: d7f9 beqz a5,c002ca1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33992 emit_op(s, OP_get_arg); - c002c882: 8522 mv a0,s0 - c002c884: 05b00593 li a1,91 - c002c888: bb5d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33985 + c002ca52: 8522 mv a0,s0 + c002ca54: 05b00593 li a1,91 + c002ca58: ad3d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33993 emit_u16(s, idx); - c002c88c: 00015583 lhu a1,0(sp) - c002c890: 8522 mv a0,s0 - c002c892: a79d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33986 + c002ca5c: 00015583 lhu a1,0(sp) + c002ca60: 8522 mv a0,s0 + c002ca62: 997d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33994 emit_op(s, OP_scope_put_var_init); - c002c896: 8522 mv a0,s0 - c002c898: 0bd00593 li a1,189 - c002c89c: ba1d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33987 + c002ca66: 8522 mv a0,s0 + c002ca68: 0bd00593 li a1,189 + c002ca6c: abfd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33995 emit_atom(s, name); - c002c8a0: 85e6 mv a1,s9 - c002c8a2: 8522 mv a0,s0 - c002c8a4: c4bda0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33988 + c002ca70: 85e6 mv a1,s9 + c002ca72: 8522 mv a0,s0 + c002ca74: b69da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33996 emit_u16(s, fd->scope_level); - c002c8a8: 0e04d583 lhu a1,224(s1) - c002c8ac: 8522 mv a0,s0 - c002c8ae: a5dd80ef jal ra,c000530a - c002c8b2: bf71 j c002c84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33992 + c002ca78: 0e04d583 lhu a1,224(s1) + c002ca7c: 8522 mv a0,s0 + c002ca7e: 97bd80ef jal ra,c00053f8 + c002ca82: bf71 j c002ca1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34000 js_parse_error(s, "missing formal parameter"); - c002c8b4: 00033597 auipc a1,0x33 - c002c8b8: 4ec58593 addi a1,a1,1260 # c005fda0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34006 + c002ca84: 00033597 auipc a1,0x33 + c002ca88: 57c58593 addi a1,a1,1404 # c0060000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34014 js_parse_error(s, "invalid number of arguments for getter or setter"); - c002c8bc: 8522 mv a0,s0 - c002c8be: 9fbf90ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34007 + c002ca8c: 8522 mv a0,s0 + c002ca8e: 9fbf90ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34015 goto fail; - c002c8c2: b919 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33915 + c002ca92: b919 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33923 has_opt_arg = TRUE; - c002c8c4: 4c05 li s8,1 - c002c8c6: a079 j c002c954 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34001 + c002ca94: 4c05 li s8,1 + c002ca96: a079 j c002cb24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34009 if (js_parse_expect(s, ',')) - c002c8c8: 02c00593 li a1,44 - c002c8cc: 8522 mv a0,s0 - c002c8ce: a15fb0ef jal ra,c00282e2 - c002c8d2: c00513e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33889 + c002ca98: 02c00593 li a1,44 + c002ca9c: 8522 mv a0,s0 + c002ca9e: a15fb0ef jal ra,c00284b2 + c002caa2: c00513e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33897 while (s->token.val != ')') { - c002c8d6: 4c1c lw a5,24(s0) - c002c8d8: 02900713 li a4,41 - c002c8dc: f6e78ee3 beq a5,a4,c002c858 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33894 + c002caa6: 4c1c lw a5,24(s0) + c002caa8: 02900713 li a4,41 + c002caac: f6e78ee3 beq a5,a4,c002ca28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33902 if (s->token.val == TOK_ELLIPSIS) { - c002c8e0: fa500713 li a4,-91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33891 + c002cab0: fa500713 li a4,-91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33899 BOOL rest = FALSE; - c002c8e4: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33894 + c002cab4: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33902 if (s->token.val == TOK_ELLIPSIS) { - c002c8e6: 00e79a63 bne a5,a4,c002c8fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33895 + c002cab6: 00e79a63 bne a5,a4,c002caca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33903 fd->has_simple_parameter_list = FALSE; - c002c8ea: 0404a823 sw zero,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33897 + c002caba: 0404a823 sw zero,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33905 if (next_token(s)) - c002c8ee: 8522 mv a0,s0 - c002c8f0: aa6fa0ef jal ra,c0026b96 - c002c8f4: be0512e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33896 + c002cabe: 8522 mv a0,s0 + c002cac0: aa6fa0ef jal ra,c0026d66 + c002cac4: be0512e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33904 rest = TRUE; - c002c8f8: 4d85 li s11,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33900 + c002cac8: 4d85 li s11,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33908 if (s->token.val == '[' || s->token.val == '{') { - c002c8fa: 4c1c lw a5,24(s0) - c002c8fc: 05b00693 li a3,91 - c002c900: fdf7f713 andi a4,a5,-33 - c002c904: dcd719e3 bne a4,a3,c002c6d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33901 + c002caca: 4c1c lw a5,24(s0) + c002cacc: 05b00693 li a3,91 + c002cad0: fdf7f713 andi a4,a5,-33 + c002cad4: dcd719e3 bne a4,a3,c002c8a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33909 fd->has_simple_parameter_list = FALSE; - c002c908: 0404a823 sw zero,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33902 + c002cad8: 0404a823 sw zero,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33910 if (rest) { - c002c90c: da0d86e3 beqz s11,c002c6b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33903 + c002cadc: da0d86e3 beqz s11,c002c888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33911 emit_op(s, OP_rest); - c002c910: 45b5 li a1,13 - c002c912: 8522 mv a0,s0 - c002c914: b29d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33904 + c002cae0: 45b5 li a1,13 + c002cae2: 8522 mv a0,s0 + c002cae4: a47d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33912 emit_u16(s, fd->arg_count); - c002c918: 0ac4d583 lhu a1,172(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33909 + c002cae8: 0ac4d583 lhu a1,172(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33917 emit_u16(s, idx); - c002c91c: 8522 mv a0,s0 - c002c91e: 9edd80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33911 + c002caec: 8522 mv a0,s0 + c002caee: 90bd80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33919 has_initializer = js_parse_destructuring_element(s, fd->has_parameter_expressions ? TOK_LET : TOK_VAR, 1, TRUE, -1, TRUE); - c002c922: 48fc lw a5,84(s1) - c002c924: fd100593 li a1,-47 - c002c928: e399 bnez a5,c002c92e - c002c92a: fb100593 li a1,-79 - c002c92e: 4785 li a5,1 - c002c930: 577d li a4,-1 - c002c932: 4685 li a3,1 - c002c934: 4605 li a2,1 - c002c936: 8522 mv a0,s0 - c002c938: fddfe0ef jal ra,c002b914 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33912 + c002caf2: 48fc lw a5,84(s1) + c002caf4: fd100593 li a1,-47 + c002caf8: e399 bnez a5,c002cafe + c002cafa: fb100593 li a1,-79 + c002cafe: 4785 li a5,1 + c002cb00: 577d li a4,-1 + c002cb02: 4685 li a3,1 + c002cb04: 4605 li a2,1 + c002cb06: 8522 mv a0,s0 + c002cb08: fddfe0ef jal ra,c002bae4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33920 if (has_initializer < 0) - c002c93c: b8054ee3 bltz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33914 + c002cb0c: b8054ee3 bltz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33922 if (has_initializer) - c002c940: 01856c33 or s8,a0,s8 - c002c944: 2c01 sext.w s8,s8 - c002c946: f60c1fe3 bnez s8,c002c8c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33917 + c002cb10: 01856c33 or s8,a0,s8 + c002cb14: 2c01 sext.w s8,s8 + c002cb16: f60c1fe3 bnez s8,c002ca94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33925 fd->defined_arg_count++; - c002c94a: 0b04a783 lw a5,176(s1) - c002c94e: 2785 addiw a5,a5,1 - c002c950: 0af4a823 sw a5,176(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33995 + c002cb1a: 0b04a783 lw a5,176(s1) + c002cb1e: 2785 addiw a5,a5,1 + c002cb20: 0af4a823 sw a5,176(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34003 if (rest && s->token.val != ')') { - c002c954: e00d9ee3 bnez s11,c002c770 - c002c958: bddd j c002c84e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34004 + c002cb24: e00d9ee3 bnez s11,c002c940 + c002cb28: bddd j c002ca1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34012 if ((func_type == JS_PARSE_FUNC_GETTER && fd->arg_count != 0) || - c002c95a: 4795 li a5,5 - c002c95c: bcf913e3 bne s2,a5,c002c522 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34005 + c002cb2a: 4795 li a5,5 + c002cb2c: bcf913e3 bne s2,a5,c002c6f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34013 (func_type == JS_PARSE_FUNC_SETTER && fd->arg_count != 1)) { - c002c960: 0ac4a703 lw a4,172(s1) - c002c964: 4785 li a5,1 - c002c966: baf70ee3 beq a4,a5,c002c522 - c002c96a: bdf5 j c002c866 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34020 + c002cb30: 0ac4a703 lw a4,172(s1) + c002cb34: 4785 li a5,1 + c002cb36: baf70ee3 beq a4,a5,c002c6f2 + c002cb3a: bdf5 j c002ca36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34028 JSVarDef *vd = &fd->vars[idx]; - c002c96c: 0904bc03 ld s8,144(s1) - c002c970: 0c92 slli s9,s9,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34021 + c002cb3c: 0904bc03 ld s8,144(s1) + c002cb40: 0c92 slli s9,s9,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34029 if (vd->scope_level != fd->scope_level) - c002c972: 0e04a783 lw a5,224(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34020 + c002cb42: 0e04a783 lw a5,224(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34028 JSVarDef *vd = &fd->vars[idx]; - c002c976: 9c66 add s8,s8,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34021 + c002cb46: 9c66 add s8,s8,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34029 if (vd->scope_level != fd->scope_level) - c002c978: 004c2703 lw a4,4(s8) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c002c97c: baf71ee3 bne a4,a5,c002c538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34023 + c002cb48: 004c2703 lw a4,4(s8) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c002cb4c: baf71ee3 bne a4,a5,c002c708 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34031 if (find_var(ctx, fd, vd->var_name) < 0) { - c002c980: 000c2603 lw a2,0(s8) - c002c984: 85a6 mv a1,s1 - c002c986: 854e mv a0,s3 - c002c988: e032 sd a2,0(sp) - c002c98a: eadd90ef jal ra,c0006836 - c002c98e: 6602 ld a2,0(sp) - c002c990: 04055863 bgez a0,c002c9e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34024 + c002cb50: 000c2603 lw a2,0(s8) + c002cb54: 85a6 mv a1,s1 + c002cb56: 854e mv a0,s3 + c002cb58: e032 sd a2,0(sp) + c002cb5a: dcbd90ef jal ra,c0006924 + c002cb5e: 6602 ld a2,0(sp) + c002cb60: 04055863 bgez a0,c002cbb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34032 if (add_var(ctx, fd, vd->var_name) < 0) - c002c994: 85a6 mv a1,s1 - c002c996: 854e mv a0,s3 - c002c998: dd0f50ef jal ra,c0021f68 - c002c99c: b2054ee3 bltz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34026 + c002cb64: 85a6 mv a1,s1 + c002cb66: 854e mv a0,s3 + c002cb68: dd0f50ef jal ra,c0022138 + c002cb6c: b2054ee3 bltz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34034 vd = &fd->vars[idx]; /* fd->vars may have been reallocated */ - c002c9a0: 0904bc03 ld s8,144(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34027 + c002cb70: 0904bc03 ld s8,144(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34035 emit_op(s, OP_scope_get_var); - c002c9a4: 0b800593 li a1,184 - c002c9a8: 8522 mv a0,s0 - c002c9aa: a93d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34026 + c002cb74: 0b800593 li a1,184 + c002cb78: 8522 mv a0,s0 + c002cb7a: 9b1d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34034 vd = &fd->vars[idx]; /* fd->vars may have been reallocated */ - c002c9ae: 9c66 add s8,s8,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34028 + c002cb7e: 9c66 add s8,s8,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34036 emit_atom(s, vd->var_name); - c002c9b0: 000c2583 lw a1,0(s8) - c002c9b4: 8522 mv a0,s0 - c002c9b6: b39da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34029 + c002cb80: 000c2583 lw a1,0(s8) + c002cb84: 8522 mv a0,s0 + c002cb86: a57da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34037 emit_u16(s, fd->scope_level); - c002c9ba: 0e04d583 lhu a1,224(s1) - c002c9be: 8522 mv a0,s0 - c002c9c0: 94bd80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34030 + c002cb8a: 0e04d583 lhu a1,224(s1) + c002cb8e: 8522 mv a0,s0 + c002cb90: 869d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34038 emit_op(s, OP_scope_put_var); - c002c9c4: 0b900593 li a1,185 - c002c9c8: 8522 mv a0,s0 - c002c9ca: a73d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34031 + c002cb94: 0b900593 li a1,185 + c002cb98: 8522 mv a0,s0 + c002cb9a: 991d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34039 emit_atom(s, vd->var_name); - c002c9ce: 000c2583 lw a1,0(s8) - c002c9d2: 8522 mv a0,s0 - c002c9d4: b1bda0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34032 + c002cb9e: 000c2583 lw a1,0(s8) + c002cba2: 8522 mv a0,s0 + c002cba4: a39da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34040 emit_u16(s, 0); - c002c9d8: 4581 li a1,0 - c002c9da: 8522 mv a0,s0 - c002c9dc: 92fd80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34034 + c002cba8: 4581 li a1,0 + c002cbaa: 8522 mv a0,s0 + c002cbac: 84dd80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34042 idx = vd->scope_next; - c002c9e0: 008c2c83 lw s9,8(s8) - c002c9e4: be81 j c002c534 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34089 + c002cbb0: 008c2c83 lw s9,8(s8) + c002cbb4: be81 j c002c704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34097 if (func_type != JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002c9e6: 479d li a5,7 - c002c9e8: 1ef91163 bne s2,a5,c002cbca + c002cbb6: 479d li a5,7 + c002cbb8: 1ef91163 bne s2,a5,c002cd9a js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33518 if (s->token.val != TOK_STRING) - c002c9ec: 4c18 lw a4,24(s0) - c002c9ee: f8100793 li a5,-127 - c002c9f2: 00f71763 bne a4,a5,c002ca00 - c002c9f6: 8522 mv a0,s0 - c002c9f8: 941fa0ef jal ra,c0027338 + c002cbbc: 4c18 lw a4,24(s0) + c002cbbe: f8100793 li a5,-127 + c002cbc2: 00f71763 bne a4,a5,c002cbd0 + c002cbc6: 8522 mv a0,s0 + c002cbc8: 941fa0ef jal ra,c0027508 js_parse_function_decl2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34102 if (js_parse_directives(s)) - c002c9fc: ac051ee3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34098 + c002cbcc: ac051ee3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34106 if (js_parse_function_check_names(s, fd, func_name)) - c002ca00: 8652 mv a2,s4 - c002ca02: 85a6 mv a1,s1 - c002ca04: 8522 mv a0,s0 - c002ca06: ac6fb0ef jal ra,c0027ccc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34101 + c002cbd0: 8652 mv a2,s4 + c002cbd2: 85a6 mv a1,s1 + c002cbd4: 8522 mv a0,s0 + c002cbd6: ac6fb0ef jal ra,c0027e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34109 while (s->token.val != '}') { - c002ca0a: 07d00a13 li s4,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34098 + c002cbda: 07d00a13 li s4,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34106 if (js_parse_function_check_names(s, fd, func_name)) - c002ca0e: ac0515e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34101 + c002cbde: ac0515e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34109 while (s->token.val != '}') { - c002ca12: 4c1c lw a5,24(s0) - c002ca14: 03479563 bne a5,s4,c002ca3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34105 - if (!(fd->js_mode & JS_MODE_STRIP)) { - c002ca18: 0864c783 lbu a5,134(s1) - c002ca1c: 8b89 andi a5,a5,2 - c002ca1e: c78d beqz a5,c002ca48 + c002cbe2: 4c1c lw a5,24(s0) + c002cbe4: 03479563 bne a5,s4,c002cc0e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34113 + if (!(fd->js_mode & JS_MODE_STRIP)) { + c002cbe8: 0864c783 lbu a5,134(s1) + c002cbec: 8b89 andi a5,a5,2 + c002cbee: c78d beqz a5,c002cc18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34121 if (next_token(s)) { - c002ca20: 8522 mv a0,s0 - c002ca22: 974fa0ef jal ra,c0026b96 - c002ca26: aa0519e3 bnez a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34119 + c002cbf0: 8522 mv a0,s0 + c002cbf2: 974fa0ef jal ra,c0026d66 + c002cbf6: aa0519e3 bnez a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34127 if (js_is_live_code(s)) { - c002ca2a: 8522 mv a0,s0 - c002ca2c: 9fbd70ef jal ra,c0004426 - c002ca30: ba050fe3 beqz a0,c002c5ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34120 + c002cbfa: 8522 mv a0,s0 + c002cbfc: 82bd70ef jal ra,c0004426 + c002cc00: ba050fe3 beqz a0,c002c7be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34128 emit_return(s, FALSE); - c002ca34: 4581 li a1,0 - c002ca36: 8522 mv a0,s0 - c002ca38: b66eb0ef jal ra,c0017d9e - c002ca3c: be4d j c002c5ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34102 + c002cc04: 4581 li a1,0 + c002cc06: 8522 mv a0,s0 + c002cc08: b66eb0ef jal ra,c0017f6e + c002cc0c: be4d j c002c7be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34110 if (js_parse_source_element(s)) - c002ca3e: 8522 mv a0,s0 - c002ca40: 29f020ef jal ra,c002f4de - c002ca44: d579 beqz a0,c002ca12 - c002ca46: bc49 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34107 + c002cc0e: 8522 mv a0,s0 + c002cc10: 29f020ef jal ra,c002f6ae + c002cc14: d579 beqz a0,c002cbe2 + c002cc16: bc49 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34115 fd->source_len = s->buf_ptr - ptr; - c002ca48: 6c30 ld a2,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34108 + c002cc18: 6c30 ld a2,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34116 fd->source = js_strndup(ctx, (const char *)ptr, fd->source_len); - c002ca4a: 85ea mv a1,s10 - c002ca4c: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34107 + c002cc1a: 85ea mv a1,s10 + c002cc1c: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34115 fd->source_len = s->buf_ptr - ptr; - c002ca4e: 41a6063b subw a2,a2,s10 - c002ca52: 20c4a823 sw a2,528(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34108 + c002cc1e: 41a6063b subw a2,a2,s10 + c002cc22: 20c4a823 sw a2,528(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34116 fd->source = js_strndup(ctx, (const char *)ptr, fd->source_len); - c002ca56: a1ce80ef jal ra,c0014c72 - c002ca5a: 20a4b423 sd a0,520(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34109 + c002cc26: a1ce80ef jal ra,c0014e42 + c002cc2a: 20a4b423 sd a0,520(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34117 if (!fd->source) - c002ca5e: f169 bnez a0,c002ca20 - c002ca60: bca5 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34153 + c002cc2e: f169 bnez a0,c002cbf0 + c002cc30: bca5 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34161 } else if (func_type == JS_PARSE_FUNC_VAR) { - c002ca62: 0cf91863 bne s2,a5,c002cb32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34154 + c002cc32: 0cf91863 bne s2,a5,c002cd02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34162 emit_op(s, OP_fclosure); - c002ca66: 458d li a1,3 - c002ca68: 8522 mv a0,s0 - c002ca6a: 9d3d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34155 + c002cc36: 458d li a1,3 + c002cc38: 8522 mv a0,s0 + c002cc3a: 8f1d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34163 emit_u32(s, idx); - c002ca6e: 000a859b sext.w a1,s5 - c002ca72: 8522 mv a0,s0 - c002ca74: b5fd80ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34156 + c002cc3e: 000a859b sext.w a1,s5 + c002cc42: 8522 mv a0,s0 + c002cc44: a7dd80ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34164 if (create_func_var) { - c002ca78: 040b8963 beqz s7,c002caca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34157 + c002cc48: 040b8963 beqz s7,c002cc9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34165 if (s->cur_func->is_global_var) { - c002ca7c: 742c ld a1,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34161 + c002cc4c: 742c ld a1,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34169 hf = add_global_var(ctx, s->cur_func, func_name); - c002ca7e: 8652 mv a2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34157 + c002cc4e: 8652 mv a2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34165 if (s->cur_func->is_global_var) { - c002ca80: 41bc lw a5,64(a1) - c002ca82: cbad beqz a5,c002caf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34161 + c002cc50: 41bc lw a5,64(a1) + c002cc52: cbad beqz a5,c002ccc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34169 hf = add_global_var(ctx, s->cur_func, func_name); - c002ca84: 854e mv a0,s3 - c002ca86: fa4eb0ef jal ra,c001822a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34162 + c002cc54: 854e mv a0,s3 + c002cc56: fa4eb0ef jal ra,c00183fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34170 if (!hf) - c002ca8a: a40507e3 beqz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34167 + c002cc5a: a40507e3 beqz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34175 hf->scope_level = 0; - c002ca8e: 00052423 sw zero,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34168 + c002cc5e: 00052423 sw zero,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34176 hf->force_init = ((s->cur_func->js_mode & JS_MODE_STRICT) != 0); - c002ca92: 743c ld a5,104(s0) - c002ca94: 0867c783 lbu a5,134(a5) - c002ca98: 0017f713 andi a4,a5,1 - c002ca9c: 00454783 lbu a5,4(a0) - c002caa0: 9bf9 andi a5,a5,-2 - c002caa2: 8fd9 or a5,a5,a4 - c002caa4: 00f50223 sb a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34183 + c002cc62: 743c ld a5,104(s0) + c002cc64: 0867c783 lbu a5,134(a5) + c002cc68: 0017f713 andi a4,a5,1 + c002cc6c: 00454783 lbu a5,4(a0) + c002cc70: 9bf9 andi a5,a5,-2 + c002cc72: 8fd9 or a5,a5,a4 + c002cc74: 00f50223 sb a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34191 emit_op(s, OP_dup); - c002caa8: 45c5 li a1,17 - c002caaa: 8522 mv a0,s0 - c002caac: 991d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34184 + c002cc78: 45c5 li a1,17 + c002cc7a: 8522 mv a0,s0 + c002cc7c: 8afd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34192 emit_op(s, OP_scope_put_var); - c002cab0: 0b900593 li a1,185 - c002cab4: 8522 mv a0,s0 - c002cab6: 987d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34185 + c002cc80: 0b900593 li a1,185 + c002cc84: 8522 mv a0,s0 + c002cc86: 8a5d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34193 emit_atom(s, func_name); - c002caba: 85d2 mv a1,s4 - c002cabc: 8522 mv a0,s0 - c002cabe: a31da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34186 + c002cc8a: 85d2 mv a1,s4 + c002cc8c: 8522 mv a0,s0 + c002cc8e: 94fda0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34194 emit_u16(s, 0); - c002cac2: 4581 li a1,0 - c002cac4: 8522 mv a0,s0 - c002cac6: 845d80ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34189 + c002cc92: 4581 li a1,0 + c002cc94: 8522 mv a0,s0 + c002cc96: f62d80ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34197 if (lexical_func_idx >= 0) { - c002caca: 57fd li a5,-1 - c002cacc: 04fb0263 beq s6,a5,c002cb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34191 + c002cc9a: 57fd li a5,-1 + c002cc9c: 04fb0263 beq s6,a5,c002cce0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34199 s->cur_func->vars[lexical_func_idx].func_pool_idx = idx; - c002cad0: 743c ld a5,104(s0) - c002cad2: 0b12 slli s6,s6,0x4 - c002cad4: 008a9a9b slliw s5,s5,0x8 - c002cad8: 6bdc ld a5,144(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34192 + c002cca0: 743c ld a5,104(s0) + c002cca2: 0b12 slli s6,s6,0x4 + c002cca4: 008a9a9b slliw s5,s5,0x8 + c002cca8: 6bdc ld a5,144(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34200 emit_op(s, OP_drop); - c002cada: 45b9 li a1,14 - c002cadc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34191 + c002ccaa: 45b9 li a1,14 + c002ccac: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34199 s->cur_func->vars[lexical_func_idx].func_pool_idx = idx; - c002cade: 9b3e add s6,s6,a5 - c002cae0: 00cb4783 lbu a5,12(s6) - c002cae4: 0157eab3 or s5,a5,s5 - c002cae8: 015b2623 sw s5,12(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34192 + c002ccae: 9b3e add s6,s6,a5 + c002ccb0: 00cb4783 lbu a5,12(s6) + c002ccb4: 0157eab3 or s5,a5,s5 + c002ccb8: 015b2623 sw s5,12(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34200 emit_op(s, OP_drop); - c002caec: 951d80ef jal ra,c000543c - c002caf0: f38ff06f j c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34176 + c002ccbc: 86fd80ef jal ra,c000552a + c002ccc0: f38ff06f j c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34184 func_idx = find_var(ctx, s->cur_func, func_name); - c002caf4: 854e mv a0,s3 - c002caf6: e02e sd a1,0(sp) - c002caf8: d3fd90ef jal ra,c0006836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34177 + c002ccc4: 854e mv a0,s3 + c002ccc6: e02e sd a1,0(sp) + c002ccc8: c5dd90ef jal ra,c0006924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34185 if (func_idx < 0) { - c002cafc: 6582 ld a1,0(sp) - c002cafe: fa0555e3 bgez a0,c002caa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34178 + c002cccc: 6582 ld a1,0(sp) + c002ccce: fa0555e3 bgez a0,c002cc78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34186 func_idx = add_var(ctx, s->cur_func, func_name); - c002cb02: 8652 mv a2,s4 - c002cb04: 854e mv a0,s3 - c002cb06: c62f50ef jal ra,c0021f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34179 + c002ccd2: 8652 mv a2,s4 + c002ccd4: 854e mv a0,s3 + c002ccd6: c62f50ef jal ra,c0022138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34187 if (func_idx < 0) - c002cb0a: f8055fe3 bgez a0,c002caa8 - c002cb0e: b2e9 j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34196 + c002ccda: f8055fe3 bgez a0,c002cc78 + c002ccde: b2e9 j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34204 emit_op(s, OP_scope_put_var_init); - c002cb10: 8522 mv a0,s0 - c002cb12: 0bd00593 li a1,189 - c002cb16: 927d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34197 + c002cce0: 8522 mv a0,s0 + c002cce2: 0bd00593 li a1,189 + c002cce6: 845d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34205 emit_atom(s, func_name); - c002cb1a: 85d2 mv a1,s4 - c002cb1c: 8522 mv a0,s0 - c002cb1e: 9d1da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34198 + c002ccea: 85d2 mv a1,s4 + c002ccec: 8522 mv a0,s0 + c002ccee: 8efda0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34206 emit_u16(s, s->cur_func->scope_level); - c002cb22: 743c ld a5,104(s0) - c002cb24: 8522 mv a0,s0 - c002cb26: 0e07d583 lhu a1,224(a5) - c002cb2a: fe0d80ef jal ra,c000530a - c002cb2e: efaff06f j c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34201 + c002ccf2: 743c ld a5,104(s0) + c002ccf4: 8522 mv a0,s0 + c002ccf6: 0e07d583 lhu a1,224(a5) + c002ccfa: efed80ef jal ra,c00053f8 + c002ccfe: efaff06f j c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34209 if (!s->cur_func->is_global_var) { - c002cb32: 742c ld a1,104(s0) - c002cb34: 41bc lw a5,64(a1) - c002cb36: ef9d bnez a5,c002cb74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34202 + c002cd02: 742c ld a1,104(s0) + c002cd04: 41bc lw a5,64(a1) + c002cd06: ef9d bnez a5,c002cd44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34210 int var_idx = define_var(s, s->cur_func, func_name, JS_VAR_DEF_VAR); - c002cb38: 4699 li a3,6 - c002cb3a: 8652 mv a2,s4 - c002cb3c: 8522 mv a0,s0 - c002cb3e: a92fb0ef jal ra,c0027dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34204 + c002cd08: 4699 li a3,6 + c002cd0a: 8652 mv a2,s4 + c002cd0c: 8522 mv a0,s0 + c002cd0e: a92fb0ef jal ra,c0027fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34212 if (var_idx < 0) - c002cb42: 98054be3 bltz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34207 + c002cd12: 98054be3 bltz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34215 if (var_idx & ARGUMENT_VAR_OFFSET) { - c002cb46: 01d55793 srli a5,a0,0x1d - c002cb4a: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34208 + c002cd16: 01d55793 srli a5,a0,0x1d + c002cd1a: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34216 s->cur_func->args[var_idx - ARGUMENT_VAR_OFFSET].func_pool_idx = idx; - c002cb4c: 7438 ld a4,104(s0) - c002cb4e: 008a9a9b slliw s5,s5,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34207 + c002cd1c: 7438 ld a4,104(s0) + c002cd1e: 008a9a9b slliw s5,s5,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34215 if (var_idx & ARGUMENT_VAR_OFFSET) { - c002cb52: cf99 beqz a5,c002cb70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34208 + c002cd22: cf99 beqz a5,c002cd40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34216 s->cur_func->args[var_idx - ARGUMENT_VAR_OFFSET].func_pool_idx = idx; - c002cb54: e00007b7 lui a5,0xe0000 - c002cb58: 9d3d addw a0,a0,a5 - c002cb5a: 735c ld a5,160(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34210 + c002cd24: e00007b7 lui a5,0xe0000 + c002cd28: 9d3d addw a0,a0,a5 + c002cd2a: 735c ld a5,160(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34218 s->cur_func->vars[var_idx].func_pool_idx = idx; - c002cb5c: 0512 slli a0,a0,0x4 - c002cb5e: 953e add a0,a0,a5 - c002cb60: 00c54783 lbu a5,12(a0) - c002cb64: 0157eab3 or s5,a5,s5 - c002cb68: 01552623 sw s5,12(a0) - c002cb6c: ebcff06f j c002c228 - c002cb70: 6b5c ld a5,144(a4) - c002cb72: b7ed j c002cb5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34215 + c002cd2c: 0512 slli a0,a0,0x4 + c002cd2e: 953e add a0,a0,a5 + c002cd30: 00c54783 lbu a5,12(a0) + c002cd34: 0157eab3 or s5,a5,s5 + c002cd38: 01552623 sw s5,12(a0) + c002cd3c: ebcff06f j c002c3f8 + c002cd40: 6b5c ld a5,144(a4) + c002cd42: b7ed j c002cd2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34223 if (func_name == JS_ATOM_NULL) - c002cb74: 000a1463 bnez s4,c002cb7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34216 + c002cd44: 000a1463 bnez s4,c002cd4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34224 func_var_name = JS_ATOM__default_; /* export default */ - c002cb78: 07d00a13 li s4,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34220 + c002cd48: 07d00a13 li s4,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34228 hf = add_global_var(ctx, s->cur_func, func_var_name); - c002cb7c: 8652 mv a2,s4 - c002cb7e: 854e mv a0,s3 - c002cb80: eaaeb0ef jal ra,c001822a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34221 + c002cd4c: 8652 mv a2,s4 + c002cd4e: 854e mv a0,s3 + c002cd50: eaaeb0ef jal ra,c00183fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34229 if (!hf) - c002cb84: 94050ae3 beqz a0,c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34224 + c002cd54: 94050ae3 beqz a0,c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34232 if (export_flag != JS_PARSE_EXPORT_NONE) { - c002cb88: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34223 + c002cd58: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34231 hf->cpool_idx = idx; - c002cb8a: 01552023 sw s5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34224 + c002cd5a: 01552023 sw s5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34232 if (export_flag != JS_PARSE_EXPORT_NONE) { - c002cb8e: e8078d63 beqz a5,c002c228 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34225 + c002cd5e: e8078d63 beqz a5,c002c3f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34233 if (!add_export_entry(s, s->cur_func->module, func_var_name, - c002cb92: 743c ld a5,104(s0) - c002cb94: 66c2 ld a3,16(sp) - c002cb96: 8752 mv a4,s4 - c002cb98: 2187b603 ld a2,536(a5) # ffffffffe0000218 <_ebss+0xffffffff1feff0f2> - c002cb9c: 4785 li a5,1 - c002cb9e: 00f68363 beq a3,a5,c002cba4 - c002cba2: 4759 li a4,22 + c002cd62: 743c ld a5,104(s0) + c002cd64: 66c2 ld a3,16(sp) + c002cd66: 8752 mv a4,s4 + c002cd68: 2187b603 ld a2,536(a5) # ffffffffe0000218 <_ebss+0xffffffff1feff0f2> + c002cd6c: 4785 li a5,1 + c002cd6e: 00f68363 beq a3,a5,c002cd74 + c002cd72: 4759 li a4,22 add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002cba4: 6008 ld a0,0(s0) - c002cba6: 4781 li a5,0 - c002cba8: 86d2 mv a3,s4 - c002cbaa: 85a2 mv a1,s0 - c002cbac: f60f90ef jal ra,c002630c + c002cd74: 6008 ld a0,0(s0) + c002cd76: 4781 li a5,0 + c002cd78: 86d2 mv a3,s4 + c002cd7a: 85a2 mv a1,s0 + c002cd7c: f60f90ef jal ra,c00264dc js_parse_function_decl2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34225 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34233 if (!add_export_entry(s, s->cur_func->module, func_var_name, - c002cbb0: e6051c63 bnez a0,c002c228 - c002cbb4: 925ff06f j c002c4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33692 + c002cd80: e6051c63 bnez a0,c002c3f8 + c002cd84: 925ff06f j c002c6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33700 BOOL create_func_var = FALSE; - c002cbb8: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33786 + c002cd88: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33794 lexical_func_idx = define_var(s, fd, func_name, - c002cbba: 4691 li a3,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33768 + c002cd8a: 4691 li a3,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33776 if (fd->is_eval && - c002cbbc: 800b15e3 bnez s6,c002c3c6 - c002cbc0: 845ff06f j c002c404 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34089 + c002cd8c: 800b15e3 bnez s6,c002c596 + c002cd90: 845ff06f j c002c5d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34097 if (func_type != JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002cbc4: 479d li a5,7 - c002cbc6: e2f90de3 beq s2,a5,c002ca00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34090 + c002cd94: 479d li a5,7 + c002cd96: e2f90de3 beq s2,a5,c002cbd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34098 if (js_parse_expect(s, '{')) - c002cbca: 07b00593 li a1,123 - c002cbce: 8522 mv a0,s0 - c002cbd0: f12fb0ef jal ra,c00282e2 - c002cbd4: e0050ce3 beqz a0,c002c9ec - c002cbd8: 901ff06f j c002c4d8 + c002cd9a: 07b00593 li a1,123 + c002cd9e: 8522 mv a0,s0 + c002cda0: f12fb0ef jal ra,c00284b2 + c002cda4: e0050ce3 beqz a0,c002cbbc + c002cda8: 901ff06f j c002c6a8 -00000000c002cbdc : +00000000c002cdac : js_parse_function_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34256 return js_parse_function_decl2(s, func_type, func_kind, func_name, ptr, - c002cbdc: 4881 li a7,0 - c002cbde: 4801 li a6,0 - c002cbe0: 4681 li a3,0 - c002cbe2: de4ff06f j c002c1c6 + c002cdac: 4881 li a7,0 + c002cdae: 4801 li a6,0 + c002cdb0: 4681 li a3,0 + c002cdb2: de4ff06f j c002c396 -00000000c002cbe6 : +00000000c002cdb6 : js_parse_assign_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25578 -{ - c002cbe6: 7159 addi sp,sp,-112 - c002cbe8: f0a2 sd s0,96(sp) - c002cbea: e4ce sd s3,72(sp) - c002cbec: f486 sd ra,104(sp) - c002cbee: eca6 sd s1,88(sp) - c002cbf0: e8ca sd s2,80(sp) - c002cbf2: e0d2 sd s4,64(sp) - c002cbf4: fc56 sd s5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25583 - if (s->token.val == TOK_YIELD) { - c002cbf6: 4d1c lw a5,24(a0) - c002cbf8: fd700713 li a4,-41 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25586 { - c002cbfc: 842a mv s0,a0 - c002cbfe: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25583 + c002cdb6: 7159 addi sp,sp,-112 + c002cdb8: f0a2 sd s0,96(sp) + c002cdba: e4ce sd s3,72(sp) + c002cdbc: f486 sd ra,104(sp) + c002cdbe: eca6 sd s1,88(sp) + c002cdc0: e8ca sd s2,80(sp) + c002cdc2: e0d2 sd s4,64(sp) + c002cdc4: fc56 sd s5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25591 if (s->token.val == TOK_YIELD) { - c002cc00: 3ae79063 bne a5,a4,c002cfa0 + c002cdc6: 4d1c lw a5,24(a0) + c002cdc8: fd700713 li a4,-41 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25586 +{ + c002cdcc: 842a mv s0,a0 + c002cdce: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25591 + if (s->token.val == TOK_YIELD) { + c002cdd0: 3ae79063 bne a5,a4,c002d170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25594 if (!(s->cur_func->func_kind & JS_FUNC_GENERATOR)) - c002cc04: 7538 ld a4,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25587 + c002cdd4: 7538 ld a4,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25595 return js_parse_error(s, "unexpected 'yield' keyword"); - c002cc06: 00033597 auipc a1,0x33 - c002cc0a: 1f258593 addi a1,a1,498 # c005fdf8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25586 + c002cdd6: 00033597 auipc a1,0x33 + c002cdda: 28258593 addi a1,a1,642 # c0060058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25594 if (!(s->cur_func->func_kind & JS_FUNC_GENERATOR)) - c002cc0e: 08474783 lbu a5,132(a4) - c002cc12: 8b85 andi a5,a5,1 - c002cc14: c799 beqz a5,c002cc22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25588 + c002cdde: 08474783 lbu a5,132(a4) + c002cde2: 8b85 andi a5,a5,1 + c002cde4: c799 beqz a5,c002cdf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25596 if (!s->cur_func->in_function_body) - c002cc16: 5f7c lw a5,124(a4) - c002cc18: ef99 bnez a5,c002cc36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25589 + c002cde6: 5f7c lw a5,124(a4) + c002cde8: ef99 bnez a5,c002ce06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25597 return js_parse_error(s, "yield in default expression"); - c002cc1a: 00033597 auipc a1,0x33 - c002cc1e: 1fe58593 addi a1,a1,510 # c005fe18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25858 -} - c002cc22: 7406 ld s0,96(sp) - c002cc24: 70a6 ld ra,104(sp) - c002cc26: 64e6 ld s1,88(sp) - c002cc28: 6946 ld s2,80(sp) - c002cc2a: 69a6 ld s3,72(sp) - c002cc2c: 6a06 ld s4,64(sp) - c002cc2e: 7ae2 ld s5,56(sp) - c002cc30: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25589 + c002cdea: 00033597 auipc a1,0x33 + c002cdee: 28e58593 addi a1,a1,654 # c0060078 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25866 +} + c002cdf2: 7406 ld s0,96(sp) + c002cdf4: 70a6 ld ra,104(sp) + c002cdf6: 64e6 ld s1,88(sp) + c002cdf8: 6946 ld s2,80(sp) + c002cdfa: 69a6 ld s3,72(sp) + c002cdfc: 6a06 ld s4,64(sp) + c002cdfe: 7ae2 ld s5,56(sp) + c002ce00: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25597 return js_parse_error(s, "yield in default expression"); - c002cc32: e86f906f j c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25590 + c002ce02: e86f906f j c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25598 if (next_token(s)) - c002cc36: f61f90ef jal ra,c0026b96 - c002cc3a: c119 beqz a0,c002cc40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25806 (discriminator 1) + c002ce06: f61f90ef jal ra,c0026d66 + c002ce0a: c119 beqz a0,c002ce10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25814 (discriminator 1) return -1; - c002cc3c: 54fd li s1,-1 - c002cc3e: ae11 j c002cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25594 + c002ce0c: 54fd li s1,-1 + c002ce0e: ae11 j c002d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25602 if (s->token.val != ';' && s->token.val != ')' && - c002cc40: 4c18 lw a4,24(s0) - c002cc42: 03b00793 li a5,59 - c002cc46: 00e7fe63 bgeu a5,a4,c002cc62 - c002cc4a: fdf77793 andi a5,a4,-33 - c002cc4e: 05d00693 li a3,93 - c002cc52: 00d79f63 bne a5,a3,c002cc70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25605 + c002ce10: 4c18 lw a4,24(s0) + c002ce12: 03b00793 li a5,59 + c002ce16: 00e7fe63 bgeu a5,a4,c002ce32 + c002ce1a: fdf77793 andi a5,a4,-33 + c002ce1e: 05d00693 li a3,93 + c002ce22: 00d79f63 bne a5,a3,c002ce40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25613 emit_op(s, OP_undefined); - c002cc56: 4599 li a1,6 - c002cc58: 8522 mv a0,s0 - c002cc5a: fe2d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25584 + c002ce26: 4599 li a1,6 + c002ce28: 8522 mv a0,s0 + c002ce2a: f00d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25592 BOOL is_star = FALSE, is_async; - c002cc5e: 4481 li s1,0 - c002cc60: a805 j c002cc90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25594 (discriminator 1) + c002ce2e: 4481 li s1,0 + c002ce30: a805 j c002ce60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25602 (discriminator 1) if (s->token.val != ';' && s->token.val != ')' && - c002cc62: 600097b7 lui a5,0x60009 - c002cc66: 07f6 slli a5,a5,0x1d - c002cc68: 00e7d7b3 srl a5,a5,a4 - c002cc6c: 8b85 andi a5,a5,1 - c002cc6e: f7e5 bnez a5,c002cc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25596 + c002ce32: 600097b7 lui a5,0x60009 + c002ce36: 07f6 slli a5,a5,0x1d + c002ce38: 00e7d7b3 srl a5,a5,a4 + c002ce3c: 8b85 andi a5,a5,1 + c002ce3e: f7e5 bnez a5,c002ce26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25604 s->token.val != ',' && s->token.val != ':' && !s->got_lf) { - c002cc70: 4424 lw s1,72(s0) - c002cc72: f0f5 bnez s1,c002cc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25597 + c002ce40: 4424 lw s1,72(s0) + c002ce42: f0f5 bnez s1,c002ce26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25605 if (s->token.val == '*') { - c002cc74: 02a00793 li a5,42 - c002cc78: 00f71763 bne a4,a5,c002cc86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25599 + c002ce44: 02a00793 li a5,42 + c002ce48: 00f71763 bne a4,a5,c002ce56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25607 if (next_token(s)) - c002cc7c: 8522 mv a0,s0 - c002cc7e: f19f90ef jal ra,c0026b96 - c002cc82: fd4d bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25598 + c002ce4c: 8522 mv a0,s0 + c002ce4e: f19f90ef jal ra,c0026d66 + c002ce52: fd4d bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25606 is_star = TRUE; - c002cc84: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25602 + c002ce54: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25610 if (js_parse_assign_expr2(s, parse_flags)) - c002cc86: 85ce mv a1,s3 - c002cc88: 8522 mv a0,s0 - c002cc8a: f5dff0ef jal ra,c002cbe6 - c002cc8e: f55d bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25607 + c002ce56: 85ce mv a1,s3 + c002ce58: 8522 mv a0,s0 + c002ce5a: f5dff0ef jal ra,c002cdb6 + c002ce5e: f55d bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25615 is_async = (s->cur_func->func_kind == JS_FUNC_ASYNC_GENERATOR); - c002cc90: 743c ld a5,104(s0) - c002cc92: 0847c903 lbu s2,132(a5) # 60009084 <__clzdi2-0x5fff6f7c> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25609 + c002ce60: 743c ld a5,104(s0) + c002ce62: 0847c903 lbu s2,132(a5) # 60009084 <__clzdi2-0x5fff6f7c> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25617 if (is_star) { - c002cc96: 2c048863 beqz s1,c002cf66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25614 + c002ce66: 2c048863 beqz s1,c002d136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25622 label_loop = new_label(s); - c002cc9a: 8522 mv a0,s0 - c002cc9c: 814eb0ef jal ra,c0017cb0 - c002cca0: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25615 + c002ce6a: 8522 mv a0,s0 + c002ce6c: 814eb0ef jal ra,c0017e80 + c002ce70: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25623 label_yield = new_label(s); - c002cca2: 8522 mv a0,s0 - c002cca4: 80ceb0ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25617 + c002ce72: 8522 mv a0,s0 + c002ce74: 80ceb0ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25625 emit_op(s, is_async ? OP_for_await_of_start : OP_for_of_start); - c002cca8: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25615 + c002ce78: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25623 label_yield = new_label(s); - c002ccaa: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25617 + c002ce7a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25625 emit_op(s, is_async ? OP_for_await_of_start : OP_for_of_start); - c002ccac: 08000593 li a1,128 - c002ccb0: 00f90463 beq s2,a5,c002ccb8 - c002ccb4: 07f00593 li a1,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25617 (discriminator 4) - c002ccb8: 8522 mv a0,s0 - c002ccba: f82d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25621 (discriminator 4) + c002ce7c: 08000593 li a1,128 + c002ce80: 00f90463 beq s2,a5,c002ce88 + c002ce84: 07f00593 li a1,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25625 (discriminator 4) + c002ce88: 8522 mv a0,s0 + c002ce8a: ea0d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25629 (discriminator 4) emit_op(s, OP_drop); - c002ccbe: 45b9 li a1,14 - c002ccc0: 8522 mv a0,s0 - c002ccc2: f7ad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25622 (discriminator 4) + c002ce8e: 45b9 li a1,14 + c002ce90: 8522 mv a0,s0 + c002ce92: e98d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25630 (discriminator 4) emit_op(s, OP_undefined); - c002ccc6: 4599 li a1,6 - c002ccc8: 8522 mv a0,s0 - c002ccca: f72d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25624 (discriminator 4) + c002ce96: 4599 li a1,6 + c002ce98: 8522 mv a0,s0 + c002ce9a: e90d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25632 (discriminator 4) emit_op(s, OP_undefined); /* initial value */ - c002ccce: 4599 li a1,6 - c002ccd0: 8522 mv a0,s0 - c002ccd2: f6ad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25626 (discriminator 4) + c002ce9e: 4599 li a1,6 + c002cea0: 8522 mv a0,s0 + c002cea2: e88d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25634 (discriminator 4) emit_label(s, label_loop); - c002ccd6: 85d2 mv a1,s4 - c002ccd8: 8522 mv a0,s0 - c002ccda: 901d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25627 (discriminator 4) + c002cea6: 85d2 mv a1,s4 + c002cea8: 8522 mv a0,s0 + c002ceaa: 81fd80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25635 (discriminator 4) emit_op(s, OP_iterator_next); - c002ccde: 08600593 li a1,134 - c002cce2: 8522 mv a0,s0 - c002cce4: f58d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25628 (discriminator 4) + c002ceae: 08600593 li a1,134 + c002ceb2: 8522 mv a0,s0 + c002ceb4: e76d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25636 (discriminator 4) if (is_async) - c002cce8: 478d li a5,3 - c002ccea: 00f91763 bne s2,a5,c002ccf8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25629 + c002ceb8: 478d li a5,3 + c002ceba: 00f91763 bne s2,a5,c002cec8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25637 emit_op(s, OP_await); - c002ccee: 08c00593 li a1,140 - c002ccf2: 8522 mv a0,s0 - c002ccf4: f48d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25630 + c002cebe: 08c00593 li a1,140 + c002cec2: 8522 mv a0,s0 + c002cec4: e66d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25638 emit_op(s, OP_iterator_check_object); - c002ccf8: 08300593 li a1,131 - c002ccfc: 8522 mv a0,s0 - c002ccfe: f3ed80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25631 + c002cec8: 08300593 li a1,131 + c002cecc: 8522 mv a0,s0 + c002cece: e5cd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25639 emit_op(s, OP_get_field2); - c002cd02: 04200593 li a1,66 - c002cd06: 8522 mv a0,s0 - c002cd08: f34d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25632 + c002ced2: 04200593 li a1,66 + c002ced6: 8522 mv a0,s0 + c002ced8: e52d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25640 emit_atom(s, JS_ATOM_done); - c002cd0c: 06a00593 li a1,106 - c002cd10: 8522 mv a0,s0 - c002cd12: fdcda0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25633 + c002cedc: 06a00593 li a1,106 + c002cee0: 8522 mv a0,s0 + c002cee2: efada0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25641 label_next = emit_goto(s, OP_if_true, -1); /* end of loop */ - c002cd16: 567d li a2,-1 - c002cd18: 06b00593 li a1,107 - c002cd1c: 8522 mv a0,s0 - c002cd1e: f9bea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25634 + c002cee6: 567d li a2,-1 + c002cee8: 06b00593 li a1,107 + c002ceec: 8522 mv a0,s0 + c002ceee: f9bea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25642 emit_label(s, label_yield); - c002cd22: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25633 + c002cef2: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25641 label_next = emit_goto(s, OP_if_true, -1); /* end of loop */ - c002cd24: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25634 + c002cef4: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25642 emit_label(s, label_yield); - c002cd26: 8522 mv a0,s0 - c002cd28: 8b3d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25635 + c002cef6: 8522 mv a0,s0 + c002cef8: fd0d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25643 if (is_async) { - c002cd2c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25642 + c002cefc: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25650 emit_op(s, OP_yield_star); - c002cd2e: 08a00593 li a1,138 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25635 + c002cefe: 08a00593 li a1,138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25643 if (is_async) { - c002cd32: 00f91e63 bne s2,a5,c002cd4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25637 + c002cf02: 00f91e63 bne s2,a5,c002cf1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25645 emit_op(s, OP_get_field); - c002cd36: 04100593 li a1,65 - c002cd3a: 8522 mv a0,s0 - c002cd3c: f00d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25638 + c002cf06: 04100593 li a1,65 + c002cf0a: 8522 mv a0,s0 + c002cf0c: e1ed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25646 emit_atom(s, JS_ATOM_value); - c002cd40: 04100593 li a1,65 - c002cd44: 8522 mv a0,s0 - c002cd46: fa8da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25639 + c002cf10: 04100593 li a1,65 + c002cf14: 8522 mv a0,s0 + c002cf16: ec6da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25647 emit_op(s, OP_async_yield_star); - c002cd4a: 08b00593 li a1,139 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25642 + c002cf1a: 08b00593 li a1,139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25650 emit_op(s, OP_yield_star); - c002cd4e: 8522 mv a0,s0 - c002cd50: eecd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25644 + c002cf1e: 8522 mv a0,s0 + c002cf20: e0ad80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25652 emit_op(s, OP_dup); - c002cd54: 45c5 li a1,17 - c002cd56: 8522 mv a0,s0 - c002cd58: ee4d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25645 + c002cf24: 45c5 li a1,17 + c002cf26: 8522 mv a0,s0 + c002cf28: e02d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25653 label_return = emit_goto(s, OP_if_true, -1); - c002cd5c: 567d li a2,-1 - c002cd5e: 06b00593 li a1,107 - c002cd62: 8522 mv a0,s0 - c002cd64: f55ea0ef jal ra,c0017cb8 - c002cd68: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25646 + c002cf2c: 567d li a2,-1 + c002cf2e: 06b00593 li a1,107 + c002cf32: 8522 mv a0,s0 + c002cf34: f55ea0ef jal ra,c0017e88 + c002cf38: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25654 emit_op(s, OP_drop); - c002cd6a: 45b9 li a1,14 - c002cd6c: 8522 mv a0,s0 - c002cd6e: eced80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25647 + c002cf3a: 45b9 li a1,14 + c002cf3c: 8522 mv a0,s0 + c002cf3e: decd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25655 emit_goto(s, OP_goto, label_loop); - c002cd72: 8652 mv a2,s4 - c002cd74: 06c00593 li a1,108 - c002cd78: 8522 mv a0,s0 - c002cd7a: f3fea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25649 + c002cf42: 8652 mv a2,s4 + c002cf44: 06c00593 li a1,108 + c002cf48: 8522 mv a0,s0 + c002cf4a: f3fea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25657 emit_label(s, label_return); - c002cd7e: 85d6 mv a1,s5 - c002cd80: 8522 mv a0,s0 - c002cd82: 859d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25650 + c002cf4e: 85d6 mv a1,s5 + c002cf50: 8522 mv a0,s0 + c002cf52: f76d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25658 emit_op(s, OP_push_i32); - c002cd86: 4585 li a1,1 - c002cd88: 8522 mv a0,s0 - c002cd8a: eb2d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25651 + c002cf56: 4585 li a1,1 + c002cf58: 8522 mv a0,s0 + c002cf5a: dd0d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25659 emit_u32(s, 2); - c002cd8e: 4589 li a1,2 - c002cd90: 8522 mv a0,s0 - c002cd92: 841d80ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25652 + c002cf5e: 4589 li a1,2 + c002cf60: 8522 mv a0,s0 + c002cf62: f5ed80ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25660 emit_op(s, OP_strict_eq); - c002cd96: 0ac00593 li a1,172 - c002cd9a: 8522 mv a0,s0 - c002cd9c: ea0d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25653 + c002cf66: 0ac00593 li a1,172 + c002cf6a: 8522 mv a0,s0 + c002cf6c: dbed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25661 label_throw = emit_goto(s, OP_if_true, -1); - c002cda0: 567d li a2,-1 - c002cda2: 06b00593 li a1,107 - c002cda6: 8522 mv a0,s0 - c002cda8: f11ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25656 + c002cf70: 567d li a2,-1 + c002cf72: 06b00593 li a1,107 + c002cf76: 8522 mv a0,s0 + c002cf78: f11ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25664 if (is_async) - c002cdac: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25653 + c002cf7c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25661 label_throw = emit_goto(s, OP_if_true, -1); - c002cdae: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25656 + c002cf7e: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25664 if (is_async) - c002cdb0: 00f91763 bne s2,a5,c002cdbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25657 + c002cf80: 00f91763 bne s2,a5,c002cf8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25665 emit_op(s, OP_await); - c002cdb4: 08c00593 li a1,140 - c002cdb8: 8522 mv a0,s0 - c002cdba: e82d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25658 + c002cf84: 08c00593 li a1,140 + c002cf88: 8522 mv a0,s0 + c002cf8a: da0d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25666 emit_op(s, OP_iterator_call); - c002cdbe: 08700593 li a1,135 - c002cdc2: 8522 mv a0,s0 - c002cdc4: e78d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25659 + c002cf8e: 08700593 li a1,135 + c002cf92: 8522 mv a0,s0 + c002cf94: d96d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25667 emit_u8(s, 0); - c002cdc8: 4581 li a1,0 - c002cdca: 8522 mv a0,s0 - c002cdcc: a8cd80ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25660 + c002cf98: 4581 li a1,0 + c002cf9a: 8522 mv a0,s0 + c002cf9c: 8bcd80ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25668 label_return1 = emit_goto(s, OP_if_true, -1); - c002cdd0: 567d li a2,-1 - c002cdd2: 06b00593 li a1,107 - c002cdd6: 8522 mv a0,s0 - c002cdd8: ee1ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25661 + c002cfa0: 567d li a2,-1 + c002cfa2: 06b00593 li a1,107 + c002cfa6: 8522 mv a0,s0 + c002cfa8: ee1ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25669 if (is_async) - c002cddc: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25660 + c002cfac: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25668 label_return1 = emit_goto(s, OP_if_true, -1); - c002cdde: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25661 + c002cfae: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25669 if (is_async) - c002cde0: 00f91763 bne s2,a5,c002cdee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25662 + c002cfb0: 00f91763 bne s2,a5,c002cfbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25670 emit_op(s, OP_await); - c002cde4: 08c00593 li a1,140 - c002cde8: 8522 mv a0,s0 - c002cdea: e52d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25663 + c002cfb4: 08c00593 li a1,140 + c002cfb8: 8522 mv a0,s0 + c002cfba: d70d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25671 emit_op(s, OP_iterator_check_object); - c002cdee: 08300593 li a1,131 - c002cdf2: 8522 mv a0,s0 - c002cdf4: e48d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25664 + c002cfbe: 08300593 li a1,131 + c002cfc2: 8522 mv a0,s0 + c002cfc4: d66d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25672 emit_op(s, OP_get_field2); - c002cdf8: 04200593 li a1,66 - c002cdfc: 8522 mv a0,s0 - c002cdfe: e3ed80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25665 + c002cfc8: 04200593 li a1,66 + c002cfcc: 8522 mv a0,s0 + c002cfce: d5cd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25673 emit_atom(s, JS_ATOM_done); - c002ce02: 06a00593 li a1,106 - c002ce06: 8522 mv a0,s0 - c002ce08: ee6da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25666 + c002cfd2: 06a00593 li a1,106 + c002cfd6: 8522 mv a0,s0 + c002cfd8: e04da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25674 emit_goto(s, OP_if_false, label_yield); - c002ce0c: 8626 mv a2,s1 - c002ce0e: 06a00593 li a1,106 - c002ce12: 8522 mv a0,s0 - c002ce14: ea5ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25668 + c002cfdc: 8626 mv a2,s1 + c002cfde: 06a00593 li a1,106 + c002cfe2: 8522 mv a0,s0 + c002cfe4: ea5ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25676 emit_op(s, OP_get_field); - c002ce18: 04100593 li a1,65 - c002ce1c: 8522 mv a0,s0 - c002ce1e: e1ed80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25669 + c002cfe8: 04100593 li a1,65 + c002cfec: 8522 mv a0,s0 + c002cfee: d3cd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25677 emit_atom(s, JS_ATOM_value); - c002ce22: 04100593 li a1,65 - c002ce26: 8522 mv a0,s0 - c002ce28: ec6da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25671 + c002cff2: 04100593 li a1,65 + c002cff6: 8522 mv a0,s0 + c002cff8: de4da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25679 emit_label(s, label_return1); - c002ce2c: 85d6 mv a1,s5 - c002ce2e: 8522 mv a0,s0 - c002ce30: faad80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25672 + c002cffc: 85d6 mv a1,s5 + c002cffe: 8522 mv a0,s0 + c002d000: ec8d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25680 emit_op(s, OP_nip); - c002ce34: 45bd li a1,15 - c002ce36: 8522 mv a0,s0 - c002ce38: e04d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25673 + c002d004: 45bd li a1,15 + c002d006: 8522 mv a0,s0 + c002d008: d22d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25681 emit_op(s, OP_nip); - c002ce3c: 45bd li a1,15 - c002ce3e: 8522 mv a0,s0 - c002ce40: dfcd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25674 + c002d00c: 45bd li a1,15 + c002d00e: 8522 mv a0,s0 + c002d010: d1ad80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25682 emit_op(s, OP_nip); - c002ce44: 45bd li a1,15 - c002ce46: 8522 mv a0,s0 - c002ce48: df4d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25675 + c002d014: 45bd li a1,15 + c002d016: 8522 mv a0,s0 + c002d018: d12d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25683 emit_return(s, TRUE); - c002ce4c: 4585 li a1,1 - c002ce4e: 8522 mv a0,s0 - c002ce50: f4fea0ef jal ra,c0017d9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25678 + c002d01c: 4585 li a1,1 + c002d01e: 8522 mv a0,s0 + c002d020: f4fea0ef jal ra,c0017f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25686 emit_label(s, label_throw); - c002ce54: 85d2 mv a1,s4 - c002ce56: 8522 mv a0,s0 - c002ce58: f82d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25679 + c002d024: 85d2 mv a1,s4 + c002d026: 8522 mv a0,s0 + c002d028: ea0d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25687 emit_op(s, OP_iterator_call); - c002ce5c: 08700593 li a1,135 - c002ce60: 8522 mv a0,s0 - c002ce62: ddad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25680 + c002d02c: 08700593 li a1,135 + c002d030: 8522 mv a0,s0 + c002d032: cf8d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25688 emit_u8(s, 1); - c002ce66: 4585 li a1,1 - c002ce68: 8522 mv a0,s0 - c002ce6a: 9eed80ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25681 + c002d036: 4585 li a1,1 + c002d038: 8522 mv a0,s0 + c002d03a: 81ed80ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25689 label_throw1 = emit_goto(s, OP_if_true, -1); - c002ce6e: 567d li a2,-1 - c002ce70: 06b00593 li a1,107 - c002ce74: 8522 mv a0,s0 - c002ce76: e43ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25682 + c002d03e: 567d li a2,-1 + c002d040: 06b00593 li a1,107 + c002d044: 8522 mv a0,s0 + c002d046: e43ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25690 if (is_async) - c002ce7a: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25681 + c002d04a: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25689 label_throw1 = emit_goto(s, OP_if_true, -1); - c002ce7c: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25682 + c002d04c: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25690 if (is_async) - c002ce7e: 00f91763 bne s2,a5,c002ce8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25683 + c002d04e: 00f91763 bne s2,a5,c002d05c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25691 emit_op(s, OP_await); - c002ce82: 08c00593 li a1,140 - c002ce86: 8522 mv a0,s0 - c002ce88: db4d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25684 + c002d052: 08c00593 li a1,140 + c002d056: 8522 mv a0,s0 + c002d058: cd2d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25692 emit_op(s, OP_iterator_check_object); - c002ce8c: 08300593 li a1,131 - c002ce90: 8522 mv a0,s0 - c002ce92: daad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25685 + c002d05c: 08300593 li a1,131 + c002d060: 8522 mv a0,s0 + c002d062: cc8d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25693 emit_op(s, OP_get_field2); - c002ce96: 04200593 li a1,66 - c002ce9a: 8522 mv a0,s0 - c002ce9c: da0d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25686 + c002d066: 04200593 li a1,66 + c002d06a: 8522 mv a0,s0 + c002d06c: cbed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25694 emit_atom(s, JS_ATOM_done); - c002cea0: 06a00593 li a1,106 - c002cea4: 8522 mv a0,s0 - c002cea6: e48da0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25687 + c002d070: 06a00593 li a1,106 + c002d074: 8522 mv a0,s0 + c002d076: d66da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25695 emit_goto(s, OP_if_false, label_yield); - c002ceaa: 8626 mv a2,s1 - c002ceac: 06a00593 li a1,106 - c002ceb0: 8522 mv a0,s0 - c002ceb2: e07ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25688 + c002d07a: 8626 mv a2,s1 + c002d07c: 06a00593 li a1,106 + c002d080: 8522 mv a0,s0 + c002d082: e07ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25696 emit_goto(s, OP_goto, label_next); - c002ceb6: 864e mv a2,s3 - c002ceb8: 06c00593 li a1,108 - c002cebc: 8522 mv a0,s0 - c002cebe: dfbea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25690 + c002d086: 864e mv a2,s3 + c002d088: 06c00593 li a1,108 + c002d08c: 8522 mv a0,s0 + c002d08e: dfbea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25698 emit_label(s, label_throw1); - c002cec2: 85d2 mv a1,s4 - c002cec4: 8522 mv a0,s0 - c002cec6: f14d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25691 + c002d092: 85d2 mv a1,s4 + c002d094: 8522 mv a0,s0 + c002d096: e32d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25699 emit_op(s, OP_iterator_call); - c002ceca: 08700593 li a1,135 - c002cece: 8522 mv a0,s0 - c002ced0: d6cd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25692 + c002d09a: 08700593 li a1,135 + c002d09e: 8522 mv a0,s0 + c002d0a0: c8ad80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25700 emit_u8(s, 2); - c002ced4: 4589 li a1,2 - c002ced6: 8522 mv a0,s0 - c002ced8: 980d80ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25693 + c002d0a4: 4589 li a1,2 + c002d0a6: 8522 mv a0,s0 + c002d0a8: fb1d70ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25701 label_throw2 = emit_goto(s, OP_if_true, -1); - c002cedc: 567d li a2,-1 - c002cede: 06b00593 li a1,107 - c002cee2: 8522 mv a0,s0 - c002cee4: dd5ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25694 + c002d0ac: 567d li a2,-1 + c002d0ae: 06b00593 li a1,107 + c002d0b2: 8522 mv a0,s0 + c002d0b4: dd5ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25702 if (is_async) - c002cee8: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25693 + c002d0b8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25701 label_throw2 = emit_goto(s, OP_if_true, -1); - c002ceea: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25694 + c002d0ba: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25702 if (is_async) - c002ceec: 00f91763 bne s2,a5,c002cefa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25695 + c002d0bc: 00f91763 bne s2,a5,c002d0ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25703 emit_op(s, OP_await); - c002cef0: 08c00593 li a1,140 - c002cef4: 8522 mv a0,s0 - c002cef6: d46d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25696 + c002d0c0: 08c00593 li a1,140 + c002d0c4: 8522 mv a0,s0 + c002d0c6: c64d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25704 emit_label(s, label_throw2); - c002cefa: 85a6 mv a1,s1 - c002cefc: 8522 mv a0,s0 - c002cefe: edcd80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25698 + c002d0ca: 85a6 mv a1,s1 + c002d0cc: 8522 mv a0,s0 + c002d0ce: dfad80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25706 emit_op(s, OP_throw_error); - c002cf02: 03000593 li a1,48 - c002cf06: 8522 mv a0,s0 - c002cf08: d34d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25699 + c002d0d2: 03000593 li a1,48 + c002d0d6: 8522 mv a0,s0 + c002d0d8: c52d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25707 emit_atom(s, JS_ATOM_NULL); - c002cf0c: 4581 li a1,0 - c002cf0e: 8522 mv a0,s0 - c002cf10: ddeda0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25700 + c002d0dc: 4581 li a1,0 + c002d0de: 8522 mv a0,s0 + c002d0e0: cfcda0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25708 emit_u8(s, JS_THROW_ERROR_ITERATOR_THROW); - c002cf14: 4591 li a1,4 - c002cf16: 8522 mv a0,s0 - c002cf18: 940d80ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25702 + c002d0e4: 4591 li a1,4 + c002d0e6: 8522 mv a0,s0 + c002d0e8: f71d70ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25710 emit_label(s, label_next); - c002cf1c: 85ce mv a1,s3 - c002cf1e: 8522 mv a0,s0 - c002cf20: ebad80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25703 + c002d0ec: 85ce mv a1,s3 + c002d0ee: 8522 mv a0,s0 + c002d0f0: dd8d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25711 emit_op(s, OP_get_field); - c002cf24: 04100593 li a1,65 - c002cf28: 8522 mv a0,s0 - c002cf2a: d12d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25704 + c002d0f4: 04100593 li a1,65 + c002d0f8: 8522 mv a0,s0 + c002d0fa: c30d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25712 emit_atom(s, JS_ATOM_value); - c002cf2e: 04100593 li a1,65 - c002cf32: 8522 mv a0,s0 - c002cf34: dbada0ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25705 + c002d0fe: 04100593 li a1,65 + c002d102: 8522 mv a0,s0 + c002d104: cd8da0ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25713 emit_op(s, OP_nip); /* keep the value associated with - c002cf38: 45bd li a1,15 - c002cf3a: 8522 mv a0,s0 - c002cf3c: d00d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25707 + c002d108: 45bd li a1,15 + c002d10a: 8522 mv a0,s0 + c002d10c: c1ed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25715 emit_op(s, OP_nip); - c002cf40: 45bd li a1,15 - c002cf42: 8522 mv a0,s0 - c002cf44: cf8d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25708 + c002d110: 45bd li a1,15 + c002d112: 8522 mv a0,s0 + c002d114: c16d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25716 emit_op(s, OP_nip); - c002cf48: 45bd li a1,15 - c002cf4a: 8522 mv a0,s0 - c002cf4c: cf0d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25719 + c002d118: 45bd li a1,15 + c002d11a: 8522 mv a0,s0 + c002d11c: c0ed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25727 return 0; - c002cf50: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25858 -} - c002cf52: 70a6 ld ra,104(sp) - c002cf54: 7406 ld s0,96(sp) - c002cf56: 6946 ld s2,80(sp) - c002cf58: 69a6 ld s3,72(sp) - c002cf5a: 6a06 ld s4,64(sp) - c002cf5c: 7ae2 ld s5,56(sp) - c002cf5e: 8526 mv a0,s1 - c002cf60: 64e6 ld s1,88(sp) - c002cf62: 6165 addi sp,sp,112 - c002cf64: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25712 + c002d120: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25866 +} + c002d122: 70a6 ld ra,104(sp) + c002d124: 7406 ld s0,96(sp) + c002d126: 6946 ld s2,80(sp) + c002d128: 69a6 ld s3,72(sp) + c002d12a: 6a06 ld s4,64(sp) + c002d12c: 7ae2 ld s5,56(sp) + c002d12e: 8526 mv a0,s1 + c002d130: 64e6 ld s1,88(sp) + c002d132: 6165 addi sp,sp,112 + c002d134: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25720 if (is_async) - c002cf66: 478d li a5,3 - c002cf68: 00f91763 bne s2,a5,c002cf76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25713 + c002d136: 478d li a5,3 + c002d138: 00f91763 bne s2,a5,c002d146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25721 emit_op(s, OP_await); - c002cf6c: 08c00593 li a1,140 - c002cf70: 8522 mv a0,s0 - c002cf72: ccad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25714 + c002d13c: 08c00593 li a1,140 + c002d140: 8522 mv a0,s0 + c002d142: be8d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25722 emit_op(s, OP_yield); - c002cf76: 08900593 li a1,137 - c002cf7a: 8522 mv a0,s0 - c002cf7c: cc0d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25715 + c002d146: 08900593 li a1,137 + c002d14a: 8522 mv a0,s0 + c002d14c: bded80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25723 label_next = emit_goto(s, OP_if_false, -1); - c002cf80: 06a00593 li a1,106 - c002cf84: 567d li a2,-1 - c002cf86: 8522 mv a0,s0 - c002cf88: d31ea0ef jal ra,c0017cb8 - c002cf8c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25716 + c002d150: 06a00593 li a1,106 + c002d154: 567d li a2,-1 + c002d156: 8522 mv a0,s0 + c002d158: d31ea0ef jal ra,c0017e88 + c002d15c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25724 emit_return(s, TRUE); - c002cf8e: 4585 li a1,1 - c002cf90: 8522 mv a0,s0 - c002cf92: e0dea0ef jal ra,c0017d9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25855 + c002d15e: 4585 li a1,1 + c002d160: 8522 mv a0,s0 + c002d162: e0dea0ef jal ra,c0017f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25863 emit_label(s, label2); - c002cf96: 85ca mv a1,s2 - c002cf98: 8522 mv a0,s0 - c002cf9a: e40d80ef jal ra,c00055da - c002cf9e: bf55 j c002cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25720 + c002d166: 85ca mv a1,s2 + c002d168: 8522 mv a0,s0 + c002d16a: d5ed80ef jal ra,c00056c8 + c002d16e: bf55 j c002d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25728 } else if (s->token.val == '(' && - c002cfa0: 02800713 li a4,40 - c002cfa4: 02e79a63 bne a5,a4,c002cfd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25721 (discriminator 1) + c002d170: 02800713 li a4,40 + c002d174: 02e79a63 bne a5,a4,c002d1a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25729 (discriminator 1) js_parse_skip_parens_token(s, NULL, TRUE) == TOK_ARROW) { - c002cfa8: 4605 li a2,1 - c002cfaa: 4581 li a1,0 - c002cfac: ef2fa0ef jal ra,c002769e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25720 (discriminator 1) + c002d178: 4605 li a2,1 + c002d17a: 4581 li a1,0 + c002d17c: ef2fa0ef jal ra,c002786e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25728 (discriminator 1) } else if (s->token.val == '(' && - c002cfb0: fa400793 li a5,-92 - c002cfb4: 02f51263 bne a0,a5,c002cfd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25754 + c002d180: fa400793 li a5,-92 + c002d184: 02f51263 bne a0,a5,c002d1a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25762 return js_parse_function_decl(s, JS_PARSE_FUNC_ARROW, - c002cfb8: 4c5c lw a5,28(s0) - c002cfba: 7018 ld a4,32(s0) - c002cfbc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25858 -} - c002cfbe: 7406 ld s0,96(sp) - c002cfc0: 70a6 ld ra,104(sp) - c002cfc2: 64e6 ld s1,88(sp) - c002cfc4: 6946 ld s2,80(sp) - c002cfc6: 69a6 ld s3,72(sp) - c002cfc8: 6a06 ld s4,64(sp) - c002cfca: 7ae2 ld s5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25754 + c002d188: 4c5c lw a5,28(s0) + c002d18a: 7018 ld a4,32(s0) + c002d18c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25866 +} + c002d18e: 7406 ld s0,96(sp) + c002d190: 70a6 ld ra,104(sp) + c002d192: 64e6 ld s1,88(sp) + c002d194: 6946 ld s2,80(sp) + c002d196: 69a6 ld s3,72(sp) + c002d198: 6a06 ld s4,64(sp) + c002d19a: 7ae2 ld s5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25762 return js_parse_function_decl(s, JS_PARSE_FUNC_ARROW, - c002cfcc: 4681 li a3,0 - c002cfce: 4601 li a2,0 - c002cfd0: 458d li a1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25858 + c002d19c: 4681 li a3,0 + c002d19e: 4601 li a2,0 + c002d1a0: 458d li a1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25866 } - c002cfd2: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25754 + c002d1a2: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25762 return js_parse_function_decl(s, JS_PARSE_FUNC_ARROW, - c002cfd4: c09ff06f j c002cbdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25725 + c002d1a4: c09ff06f j c002cdac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25733 } else if (token_is_pseudo_keyword(s, JS_ATOM_async)) { - c002cfd8: 08600593 li a1,134 - c002cfdc: 8522 mv a0,s0 - c002cfde: b76d70ef jal ra,c0004354 - c002cfe2: 1c050c63 beqz a0,c002d1ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25731 + c002d1a8: 08600593 li a1,134 + c002d1ac: 8522 mv a0,s0 + c002d1ae: 9a6d70ef jal ra,c0004354 + c002d1b2: 1c050c63 beqz a0,c002d38a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25739 tok = peek_token(s, TRUE); - c002cfe6: 4585 li a1,1 - c002cfe8: 8522 mv a0,s0 - c002cfea: f6fd80ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25732 + c002d1b6: 4585 li a1,1 + c002d1b8: 8522 mv a0,s0 + c002d1ba: e8dd80ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25740 if (tok == TOK_FUNCTION || tok == '\n') - c002cfee: fc500793 li a5,-59 - c002cff2: 04f50363 beq a0,a5,c002d038 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25732 (discriminator 1) - c002cff6: 47a9 li a5,10 - c002cff8: 04f50063 beq a0,a5,c002d038 + c002d1be: fc500793 li a5,-59 + c002d1c2: 04f50363 beq a0,a5,c002d208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25740 (discriminator 1) + c002d1c6: 47a9 li a5,10 + c002d1c8: 04f50063 beq a0,a5,c002d208 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002cffc: 441c lw a5,8(s0) + c002d1cc: 441c lw a5,8(s0) js_parse_assign_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25735 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25743 source_ptr = s->token.ptr; - c002cffe: 7004 ld s1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25736 + c002d1ce: 7004 ld s1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25744 source_line_num = s->token.line_num; - c002d000: 01c42903 lw s2,28(s0) + c002d1d0: 01c42903 lw s2,28(s0) js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002d004: cc3e sw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c002d1d4: cc3e sw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c002d006: 443c lw a5,72(s0) + c002d1d6: 443c lw a5,72(s0) js_parse_assign_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25746 if (next_token(s)) - c002d008: 8522 mv a0,s0 + c002d1d8: 8522 mv a0,s0 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c002d00a: ce4a sw s2,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c002d1da: ce4a sw s2,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c002d00c: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c002d1dc: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c002d00e: d03e sw a5,32(sp) + c002d1de: d03e sw a5,32(sp) js_parse_assign_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25746 if (next_token(s)) - c002d010: b87f90ef jal ra,c0026b96 - c002d014: c20514e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25740 + c002d1e0: b87f90ef jal ra,c0026d66 + c002d1e4: c20514e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25748 if ((s->token.val == '(' && - c002d018: 4c18 lw a4,24(s0) - c002d01a: 02800793 li a5,40 - c002d01e: 14f70f63 beq a4,a5,c002d17c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25741 - js_parse_skip_parens_token(s, NULL, TRUE) == TOK_ARROW) || - c002d022: 4c18 lw a4,24(s0) - c002d024: f8300793 li a5,-125 - c002d028: 16f70d63 beq a4,a5,c002d1a2 + c002d1e8: 4c18 lw a4,24(s0) + c002d1ea: 02800793 li a5,40 + c002d1ee: 14f70f63 beq a4,a5,c002d34c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25749 + js_parse_skip_parens_token(s, NULL, TRUE) == TOK_ARROW) || + c002d1f2: 4c18 lw a4,24(s0) + c002d1f4: f8300793 li a5,-125 + c002d1f8: 16f70d63 beq a4,a5,c002d372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25757 if (js_parse_seek_token(s, &pos)) - c002d02c: 082c addi a1,sp,24 - c002d02e: 8522 mv a0,s0 - c002d030: af4fa0ef jal ra,c0027324 - c002d034: c00514e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25759 + c002d1fc: 082c addi a1,sp,24 + c002d1fe: 8522 mv a0,s0 + c002d200: af4fa0ef jal ra,c00274f4 + c002d204: c00514e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25767 if (s->token.val == TOK_IDENT) { - c002d038: 4c18 lw a4,24(s0) - c002d03a: f8300793 li a5,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25580 + c002d208: 4c18 lw a4,24(s0) + c002d20a: f8300793 li a5,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25588 JSAtom name0 = JS_ATOM_NULL; - c002d03e: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25759 + c002d20e: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25767 if (s->token.val == TOK_IDENT) { - c002d040: 00f71463 bne a4,a5,c002d048 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25761 + c002d210: 00f71463 bne a4,a5,c002d218 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25769 name0 = s->token.u.ident.atom; - c002d044: 02842a03 lw s4,40(s0) + c002d214: 02842a03 lw s4,40(s0) js_parse_coalesce_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25530 if (js_parse_logical_and_or(s, TOK_LOR, parse_flags)) - c002d048: 864e mv a2,s3 - c002d04a: fa200593 li a1,-94 - c002d04e: 8522 mv a0,s0 - c002d050: feafe0ef jal ra,c002b83a - c002d054: 84aa mv s1,a0 - c002d056: be0513e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25524 + c002d218: 864e mv a2,s3 + c002d21a: fa200593 li a1,-94 + c002d21e: 8522 mv a0,s0 + c002d220: feafe0ef jal ra,c002ba0a + c002d224: 84aa mv s1,a0 + c002d226: be0513e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25532 if (s->token.val == TOK_DOUBLE_QUESTION_MARK) { - c002d05a: 4c18 lw a4,24(s0) - c002d05c: fa600793 li a5,-90 - c002d060: 04f71e63 bne a4,a5,c002d0bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25525 + c002d22a: 4c18 lw a4,24(s0) + c002d22c: fa600793 li a5,-90 + c002d230: 04f71e63 bne a4,a5,c002d28c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25533 label1 = new_label(s); - c002d064: 8522 mv a0,s0 - c002d066: c4bea0ef jal ra,c0017cb0 - c002d06a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25537 + c002d234: 8522 mv a0,s0 + c002d236: c4bea0ef jal ra,c0017e80 + c002d23a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25545 if (s->token.val != TOK_DOUBLE_QUESTION_MARK) - c002d06c: fa600a93 li s5,-90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25527 + c002d23c: fa600a93 li s5,-90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25535 if (next_token(s)) - c002d070: 8522 mv a0,s0 - c002d072: b25f90ef jal ra,c0026b96 - c002d076: bc0513e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25530 + c002d240: 8522 mv a0,s0 + c002d242: b25f90ef jal ra,c0026d66 + c002d246: bc0513e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25538 emit_op(s, OP_dup); - c002d07a: 45c5 li a1,17 - c002d07c: 8522 mv a0,s0 - c002d07e: bbed80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25531 + c002d24a: 45c5 li a1,17 + c002d24c: 8522 mv a0,s0 + c002d24e: adcd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25539 emit_op(s, OP_is_undefined_or_null); - c002d082: 0b100593 li a1,177 - c002d086: 8522 mv a0,s0 - c002d088: bb4d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25532 + c002d252: 0b100593 li a1,177 + c002d256: 8522 mv a0,s0 + c002d258: ad2d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25540 emit_goto(s, OP_if_false, label1); - c002d08c: 864a mv a2,s2 - c002d08e: 06a00593 li a1,106 - c002d092: 8522 mv a0,s0 - c002d094: c25ea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25533 + c002d25c: 864a mv a2,s2 + c002d25e: 06a00593 li a1,106 + c002d262: 8522 mv a0,s0 + c002d264: c25ea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25541 emit_op(s, OP_drop); - c002d098: 45b9 li a1,14 - c002d09a: 8522 mv a0,s0 - c002d09c: ba0d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25535 + c002d268: 45b9 li a1,14 + c002d26a: 8522 mv a0,s0 + c002d26c: abed80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25543 if (js_parse_expr_binary(s, 8, parse_flags)) - c002d0a0: 864e mv a2,s3 - c002d0a2: 45a1 li a1,8 - c002d0a4: 8522 mv a0,s0 - c002d0a6: d60fe0ef jal ra,c002b606 - c002d0aa: b80519e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25537 + c002d270: 864e mv a2,s3 + c002d272: 45a1 li a1,8 + c002d274: 8522 mv a0,s0 + c002d276: d60fe0ef jal ra,c002b7d6 + c002d27a: b80519e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25545 if (s->token.val != TOK_DOUBLE_QUESTION_MARK) - c002d0ae: 4c1c lw a5,24(s0) - c002d0b0: fd5780e3 beq a5,s5,c002d070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25540 + c002d27e: 4c1c lw a5,24(s0) + c002d280: fd5780e3 beq a5,s5,c002d240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25548 emit_label(s, label1); - c002d0b4: 85ca mv a1,s2 - c002d0b6: 8522 mv a0,s0 - c002d0b8: d22d80ef jal ra,c00055da + c002d284: 85ca mv a1,s2 + c002d286: 8522 mv a0,s0 + c002d288: c40d80ef jal ra,c00056c8 js_parse_cond_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25552 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25560 if (s->token.val == '?') { - c002d0bc: 4c18 lw a4,24(s0) - c002d0be: 03f00793 li a5,63 - c002d0c2: 04f71f63 bne a4,a5,c002d120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25553 + c002d28c: 4c18 lw a4,24(s0) + c002d28e: 03f00793 li a5,63 + c002d292: 04f71f63 bne a4,a5,c002d2f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25561 if (next_token(s)) - c002d0c6: 8522 mv a0,s0 - c002d0c8: acff90ef jal ra,c0026b96 - c002d0cc: b60518e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25555 + c002d296: 8522 mv a0,s0 + c002d298: acff90ef jal ra,c0026d66 + c002d29c: b60518e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25563 label1 = emit_goto(s, OP_if_false, -1); - c002d0d0: 567d li a2,-1 - c002d0d2: 06a00593 li a1,106 - c002d0d6: 8522 mv a0,s0 - c002d0d8: be1ea0ef jal ra,c0017cb8 - c002d0dc: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25557 + c002d2a0: 567d li a2,-1 + c002d2a2: 06a00593 li a1,106 + c002d2a6: 8522 mv a0,s0 + c002d2a8: be1ea0ef jal ra,c0017e88 + c002d2ac: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25565 if (js_parse_assign_expr(s)) - c002d0de: 8522 mv a0,s0 - c002d0e0: 4f6000ef jal ra,c002d5d6 - c002d0e4: b4051ce3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25559 + c002d2ae: 8522 mv a0,s0 + c002d2b0: 4f6000ef jal ra,c002d7a6 + c002d2b4: b4051ce3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25567 if (js_parse_expect(s, ':')) - c002d0e8: 03a00593 li a1,58 - c002d0ec: 8522 mv a0,s0 - c002d0ee: 9f4fb0ef jal ra,c00282e2 - c002d0f2: b40515e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25562 + c002d2b8: 03a00593 li a1,58 + c002d2bc: 8522 mv a0,s0 + c002d2be: 9f4fb0ef jal ra,c00284b2 + c002d2c2: b40515e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25570 label2 = emit_goto(s, OP_goto, -1); - c002d0f6: 567d li a2,-1 - c002d0f8: 06c00593 li a1,108 - c002d0fc: 8522 mv a0,s0 - c002d0fe: bbbea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25564 + c002d2c6: 567d li a2,-1 + c002d2c8: 06c00593 li a1,108 + c002d2cc: 8522 mv a0,s0 + c002d2ce: bbbea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25572 emit_label(s, label1); - c002d102: 85d6 mv a1,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25562 + c002d2d2: 85d6 mv a1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25570 label2 = emit_goto(s, OP_goto, -1); - c002d104: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25564 + c002d2d4: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25572 emit_label(s, label1); - c002d106: 8522 mv a0,s0 - c002d108: cd2d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25566 + c002d2d6: 8522 mv a0,s0 + c002d2d8: bf0d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25574 if (js_parse_assign_expr2(s, parse_flags & PF_IN_ACCEPTED)) - c002d10c: 85ce mv a1,s3 - c002d10e: 8522 mv a0,s0 - c002d110: ad7ff0ef jal ra,c002cbe6 - c002d114: b20514e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25569 + c002d2dc: 85ce mv a1,s3 + c002d2de: 8522 mv a0,s0 + c002d2e0: ad7ff0ef jal ra,c002cdb6 + c002d2e4: b20514e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25577 emit_label(s, label2); - c002d118: 85ca mv a1,s2 - c002d11a: 8522 mv a0,s0 - c002d11c: cbed80ef jal ra,c00055da + c002d2e8: 85ca mv a1,s2 + c002d2ea: 8522 mv a0,s0 + c002d2ec: bdcd80ef jal ra,c00056c8 js_parse_assign_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25766 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25774 op = s->token.val; - c002d120: 01842903 lw s2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25767 + c002d2f0: 01842903 lw s2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25775 if (op == '=' || (op >= TOK_MUL_ASSIGN && op <= TOK_POW_ASSIGN)) { - c002d124: 03d00793 li a5,61 - c002d128: 00f90963 beq s2,a5,c002d13a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25767 (discriminator 1) - c002d12c: 07b9071b addiw a4,s2,123 - c002d130: 46ad li a3,11 - c002d132: 0009079b sext.w a5,s2 - c002d136: 0ee6e563 bltu a3,a4,c002d220 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25769 + c002d2f4: 03d00793 li a5,61 + c002d2f8: 00f90963 beq s2,a5,c002d30a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25775 (discriminator 1) + c002d2fc: 07b9071b addiw a4,s2,123 + c002d300: 46ad li a3,11 + c002d302: 0009079b sext.w a5,s2 + c002d306: 0ee6e563 bltu a3,a4,c002d3f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25777 if (next_token(s)) - c002d13a: 8522 mv a0,s0 - c002d13c: a5bf90ef jal ra,c0026b96 - c002d140: ae051ee3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25771 + c002d30a: 8522 mv a0,s0 + c002d30c: a5bf90ef jal ra,c0026d66 + c002d310: ae051ee3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25779 if (get_lvalue(s, &opcode, &scope, &name, &label, NULL, (op != '='), op) < 0) - c002d144: fc390813 addi a6,s2,-61 - c002d148: 88ca mv a7,s2 - c002d14a: 01003833 snez a6,a6 - c002d14e: 4781 li a5,0 - c002d150: 0838 addi a4,sp,24 - c002d152: 0814 addi a3,sp,16 - c002d154: 0070 addi a2,sp,12 - c002d156: 002c addi a1,sp,8 - c002d158: 8522 mv a0,s0 - c002d15a: 03d00a93 li s5,61 - c002d15e: 81dfa0ef jal ra,c002797a - c002d162: ac054de3 bltz a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25774 + c002d314: fc390813 addi a6,s2,-61 + c002d318: 88ca mv a7,s2 + c002d31a: 01003833 snez a6,a6 + c002d31e: 4781 li a5,0 + c002d320: 0838 addi a4,sp,24 + c002d322: 0814 addi a3,sp,16 + c002d324: 0070 addi a2,sp,12 + c002d326: 002c addi a1,sp,8 + c002d328: 8522 mv a0,s0 + c002d32a: 03d00a93 li s5,61 + c002d32e: 81dfa0ef jal ra,c0027b4a + c002d332: ac054de3 bltz a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25782 if (js_parse_assign_expr2(s, parse_flags)) { - c002d166: 85ce mv a1,s3 - c002d168: 8522 mv a0,s0 - c002d16a: a7dff0ef jal ra,c002cbe6 - c002d16e: 84aa mv s1,a0 - c002d170: c13d beqz a0,c002d1d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25819 + c002d336: 85ce mv a1,s3 + c002d338: 8522 mv a0,s0 + c002d33a: a7dff0ef jal ra,c002cdb6 + c002d33e: 84aa mv s1,a0 + c002d340: c13d beqz a0,c002d3a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25827 JS_FreeAtom(s->ctx, name); - c002d172: 45c2 lw a1,16(sp) - c002d174: 6008 ld a0,0(s0) - c002d176: b96da0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25820 + c002d342: 45c2 lw a1,16(sp) + c002d344: 6008 ld a0,0(s0) + c002d346: ab4da0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25828 return -1; - c002d17a: b4c9 j c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25741 (discriminator 1) + c002d34a: b4c9 j c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25749 (discriminator 1) js_parse_skip_parens_token(s, NULL, TRUE) == TOK_ARROW) || - c002d17c: 4605 li a2,1 - c002d17e: 4581 li a1,0 - c002d180: 8522 mv a0,s0 - c002d182: d1cfa0ef jal ra,c002769e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25740 (discriminator 1) + c002d34c: 4605 li a2,1 + c002d34e: 4581 li a1,0 + c002d350: 8522 mv a0,s0 + c002d352: d1cfa0ef jal ra,c002786e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25748 (discriminator 1) if ((s->token.val == '(' && - c002d186: fa400793 li a5,-92 - c002d18a: e8f51ce3 bne a0,a5,c002d022 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25744 + c002d356: fa400793 li a5,-92 + c002d35a: e8f51ce3 bne a0,a5,c002d1f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25752 return js_parse_function_decl(s, JS_PARSE_FUNC_ARROW, - c002d18e: 8726 mv a4,s1 - c002d190: 87ca mv a5,s2 - c002d192: 4681 li a3,0 - c002d194: 4609 li a2,2 - c002d196: 458d li a1,3 - c002d198: 8522 mv a0,s0 - c002d19a: a43ff0ef jal ra,c002cbdc - c002d19e: 84aa mv s1,a0 - c002d1a0: bb4d j c002cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25742 + c002d35e: 8726 mv a4,s1 + c002d360: 87ca mv a5,s2 + c002d362: 4681 li a3,0 + c002d364: 4609 li a2,2 + c002d366: 458d li a1,3 + c002d368: 8522 mv a0,s0 + c002d36a: a43ff0ef jal ra,c002cdac + c002d36e: 84aa mv s1,a0 + c002d370: bb4d j c002d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25750 (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved && - c002d1a2: 581c lw a5,48(s0) - c002d1a4: e80794e3 bnez a5,c002d02c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25743 (discriminator 1) + c002d372: 581c lw a5,48(s0) + c002d374: e80794e3 bnez a5,c002d1fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25751 (discriminator 1) peek_token(s, TRUE) == TOK_ARROW)) { - c002d1a8: 4585 li a1,1 - c002d1aa: 8522 mv a0,s0 - c002d1ac: dadd80ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25742 (discriminator 1) + c002d378: 4585 li a1,1 + c002d37a: 8522 mv a0,s0 + c002d37c: ccbd80ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25750 (discriminator 1) (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved && - c002d1b0: fa400793 li a5,-92 - c002d1b4: e6f51ce3 bne a0,a5,c002d02c - c002d1b8: bfd9 j c002d18e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25752 + c002d380: fa400793 li a5,-92 + c002d384: e6f51ce3 bne a0,a5,c002d1fc + c002d388: bfd9 j c002d35e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25760 } else if (s->token.val == TOK_IDENT && - c002d1ba: 4c18 lw a4,24(s0) - c002d1bc: f8300793 li a5,-125 - c002d1c0: e6f71ce3 bne a4,a5,c002d038 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25753 (discriminator 1) + c002d38a: 4c18 lw a4,24(s0) + c002d38c: f8300793 li a5,-125 + c002d390: e6f71ce3 bne a4,a5,c002d208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25761 (discriminator 1) peek_token(s, TRUE) == TOK_ARROW) { - c002d1c4: 4585 li a1,1 - c002d1c6: 8522 mv a0,s0 - c002d1c8: d91d80ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25752 (discriminator 1) + c002d394: 4585 li a1,1 + c002d396: 8522 mv a0,s0 + c002d398: cafd80ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25760 (discriminator 1) } else if (s->token.val == TOK_IDENT && - c002d1cc: fa400793 li a5,-92 - c002d1d0: e6f514e3 bne a0,a5,c002d038 - c002d1d4: b3d5 j c002cfb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25779 + c002d39c: fa400793 li a5,-92 + c002d3a0: e6f514e3 bne a0,a5,c002d208 + c002d3a4: b3d5 j c002d188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25787 if (op == '=') { - c002d1d6: 03591863 bne s2,s5,c002d206 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25780 + c002d3a6: 03591863 bne s2,s5,c002d3d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25788 if (opcode == OP_get_ref_value && name == name0) { - c002d1da: 4722 lw a4,8(sp) - c002d1dc: 03c00793 li a5,60 - c002d1e0: 00f71963 bne a4,a5,c002d1f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25780 (discriminator 1) - c002d1e4: 47c2 lw a5,16(sp) - c002d1e6: 01479663 bne a5,s4,c002d1f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25781 + c002d3aa: 4722 lw a4,8(sp) + c002d3ac: 03c00793 li a5,60 + c002d3b0: 00f71963 bne a4,a5,c002d3c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25788 (discriminator 1) + c002d3b4: 47c2 lw a5,16(sp) + c002d3b6: 01479663 bne a5,s4,c002d3c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25789 set_object_name(s, name); - c002d1ea: 85d2 mv a1,s4 - c002d1ec: 8522 mv a0,s0 - c002d1ee: d48da0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25801 (discriminator 2) + c002d3ba: 85d2 mv a1,s4 + c002d3bc: 8522 mv a0,s0 + c002d3be: c66da0ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25809 (discriminator 2) put_lvalue(s, opcode, scope, name, label, PUT_LVALUE_KEEP_TOP, FALSE); - c002d1f2: 4762 lw a4,24(sp) - c002d1f4: 46c2 lw a3,16(sp) - c002d1f6: 4632 lw a2,12(sp) - c002d1f8: 45a2 lw a1,8(sp) - c002d1fa: 4801 li a6,0 - c002d1fc: 4789 li a5,2 - c002d1fe: 8522 mv a0,s0 - c002d200: b5eda0ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25767 (discriminator 2) + c002d3c2: 4762 lw a4,24(sp) + c002d3c4: 46c2 lw a3,16(sp) + c002d3c6: 4632 lw a2,12(sp) + c002d3c8: 45a2 lw a1,8(sp) + c002d3ca: 4801 li a6,0 + c002d3cc: 4789 li a5,2 + c002d3ce: 8522 mv a0,s0 + c002d3d0: a7cda0ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25775 (discriminator 2) if (op == '=' || (op >= TOK_MUL_ASSIGN && op <= TOK_POW_ASSIGN)) { - c002d204: b3b9 j c002cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25792 + c002d3d4: b3b9 j c002d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25800 op = assign_opcodes[op - TOK_MUL_ASSIGN]; - c002d206: 00035897 auipc a7,0x35 - c002d20a: e5a88893 addi a7,a7,-422 # c0062060 - c002d20e: 07b9091b addiw s2,s2,123 - c002d212: 9946 add s2,s2,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25799 + c002d3d6: 00035897 auipc a7,0x35 + c002d3da: eea88893 addi a7,a7,-278 # c00622c0 + c002d3de: 07b9091b addiw s2,s2,123 + c002d3e2: 9946 add s2,s2,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25807 emit_op(s, op); - c002d214: 00094583 lbu a1,0(s2) - c002d218: 8522 mv a0,s0 - c002d21a: a22d80ef jal ra,c000543c - c002d21e: bfd1 j c002d1f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25802 + c002d3e4: 00094583 lbu a1,0(s2) + c002d3e8: 8522 mv a0,s0 + c002d3ea: 940d80ef jal ra,c000552a + c002d3ee: bfd1 j c002d3c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25810 } else if (op >= TOK_LAND_ASSIGN && op <= TOK_DOUBLE_QUESTION_MARK_ASSIGN) { - c002d220: 06f7879b addiw a5,a5,111 - c002d224: 4709 li a4,2 - c002d226: d2f766e3 bltu a4,a5,c002cf52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25805 + c002d3f0: 06f7879b addiw a5,a5,111 + c002d3f4: 4709 li a4,2 + c002d3f6: d2f766e3 bltu a4,a5,c002d122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25813 if (next_token(s)) - c002d22a: 8522 mv a0,s0 - c002d22c: 96bf90ef jal ra,c0026b96 - c002d230: a00516e3 bnez a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25807 + c002d3fa: 8522 mv a0,s0 + c002d3fc: 96bf90ef jal ra,c0026d66 + c002d400: a00516e3 bnez a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25815 if (get_lvalue(s, &opcode, &scope, &name, &label, - c002d234: 88ca mv a7,s2 - c002d236: 4805 li a6,1 - c002d238: 083c addi a5,sp,24 - c002d23a: 0858 addi a4,sp,20 - c002d23c: 0814 addi a3,sp,16 - c002d23e: 0070 addi a2,sp,12 - c002d240: 002c addi a1,sp,8 - c002d242: 8522 mv a0,s0 - c002d244: f36fa0ef jal ra,c002797a - c002d248: 9e054ae3 bltz a0,c002cc3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25811 + c002d404: 88ca mv a7,s2 + c002d406: 4805 li a6,1 + c002d408: 083c addi a5,sp,24 + c002d40a: 0858 addi a4,sp,20 + c002d40c: 0814 addi a3,sp,16 + c002d40e: 0070 addi a2,sp,12 + c002d410: 002c addi a1,sp,8 + c002d412: 8522 mv a0,s0 + c002d414: f36fa0ef jal ra,c0027b4a + c002d418: 9e054ae3 bltz a0,c002ce0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25819 emit_op(s, OP_dup); - c002d24c: 45c5 li a1,17 - c002d24e: 8522 mv a0,s0 - c002d250: 9ecd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25812 + c002d41c: 45c5 li a1,17 + c002d41e: 8522 mv a0,s0 + c002d420: 90ad80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25820 if (op == TOK_DOUBLE_QUESTION_MARK_ASSIGN) - c002d254: f9300793 li a5,-109 - c002d258: 00f91a63 bne s2,a5,c002d26c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25813 + c002d424: f9300793 li a5,-109 + c002d428: 00f91a63 bne s2,a5,c002d43c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25821 emit_op(s, OP_is_undefined_or_null); - c002d25c: 0b100593 li a1,177 - c002d260: 8522 mv a0,s0 - c002d262: 9dad80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25814 + c002d42c: 0b100593 li a1,177 + c002d430: 8522 mv a0,s0 + c002d432: 8f8d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25822 label1 = emit_goto(s, op == TOK_LOR_ASSIGN ? OP_if_true : OP_if_false, - c002d266: 06a00593 li a1,106 - c002d26a: a039 j c002d278 - c002d26c: f9200793 li a5,-110 - c002d270: 06b00593 li a1,107 - c002d274: fef919e3 bne s2,a5,c002d266 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25814 (discriminator 4) - c002d278: 567d li a2,-1 - c002d27a: 8522 mv a0,s0 - c002d27c: a3dea0ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25816 (discriminator 4) + c002d436: 06a00593 li a1,106 + c002d43a: a039 j c002d448 + c002d43c: f9200793 li a5,-110 + c002d440: 06b00593 li a1,107 + c002d444: fef919e3 bne s2,a5,c002d436 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25822 (discriminator 4) + c002d448: 567d li a2,-1 + c002d44a: 8522 mv a0,s0 + c002d44c: a3dea0ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25824 (discriminator 4) emit_op(s, OP_drop); - c002d280: 45b9 li a1,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25814 (discriminator 4) + c002d450: 45b9 li a1,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25822 (discriminator 4) label1 = emit_goto(s, op == TOK_LOR_ASSIGN ? OP_if_true : OP_if_false, - c002d282: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25816 (discriminator 4) + c002d452: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25824 (discriminator 4) emit_op(s, OP_drop); - c002d284: 8522 mv a0,s0 - c002d286: 9b6d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25818 (discriminator 4) + c002d454: 8522 mv a0,s0 + c002d456: 8d4d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25826 (discriminator 4) if (js_parse_assign_expr2(s, parse_flags)) { - c002d28a: 85ce mv a1,s3 - c002d28c: 8522 mv a0,s0 - c002d28e: 959ff0ef jal ra,c002cbe6 - c002d292: ee0510e3 bnez a0,c002d172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25823 + c002d45a: 85ce mv a1,s3 + c002d45c: 8522 mv a0,s0 + c002d45e: 959ff0ef jal ra,c002cdb6 + c002d462: ee0510e3 bnez a0,c002d342 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25831 if (opcode == OP_get_ref_value && name == name0) { - c002d296: 4722 lw a4,8(sp) - c002d298: 03c00793 li a5,60 - c002d29c: 00f71963 bne a4,a5,c002d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25823 (discriminator 1) - c002d2a0: 47c2 lw a5,16(sp) - c002d2a2: 01479663 bne a5,s4,c002d2ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25824 + c002d466: 4722 lw a4,8(sp) + c002d468: 03c00793 li a5,60 + c002d46c: 00f71963 bne a4,a5,c002d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25831 (discriminator 1) + c002d470: 47c2 lw a5,16(sp) + c002d472: 01479663 bne a5,s4,c002d47e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25832 set_object_name(s, name); - c002d2a6: 85d2 mv a1,s4 - c002d2a8: 8522 mv a0,s0 - c002d2aa: c8cda0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25827 - switch(depth_lvalue) { - c002d2ae: 47e2 lw a5,24(sp) - c002d2b0: 4709 li a4,2 - c002d2b2: 00e78c63 beq a5,a4,c002d2ca - c002d2b6: 470d li a4,3 + c002d476: 85d2 mv a1,s4 + c002d478: 8522 mv a0,s0 + c002d47a: baada0ef jal ra,c0007824 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25835 + switch(depth_lvalue) { + c002d47e: 47e2 lw a5,24(sp) + c002d480: 4709 li a4,2 + c002d482: 00e78c63 beq a5,a4,c002d49a + c002d486: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25843 emit_op(s, OP_insert4); - c002d2b8: 45dd li a1,23 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25827 + c002d488: 45dd li a1,23 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25835 switch(depth_lvalue) { - c002d2ba: 00e78963 beq a5,a4,c002d2cc - c002d2be: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25829 + c002d48a: 00e78963 beq a5,a4,c002d49c + c002d48e: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25837 emit_op(s, OP_insert2); - c002d2c0: 45d5 li a1,21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25827 + c002d490: 45d5 li a1,21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25835 switch(depth_lvalue) { - c002d2c2: 00e78563 beq a5,a4,c002d2cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25838 + c002d492: 00e78563 beq a5,a4,c002d49c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25846 abort(); - c002d2c6: 544280ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25832 + c002d496: 544280ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25840 emit_op(s, OP_insert3); - c002d2ca: 45d9 li a1,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25835 - emit_op(s, OP_insert4); - c002d2cc: 8522 mv a0,s0 - c002d2ce: 96ed80ef jal ra,c000543c + c002d49a: 45d9 li a1,22 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25843 + emit_op(s, OP_insert4); + c002d49c: 8522 mv a0,s0 + c002d49e: 88cd80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25851 put_lvalue(s, opcode, scope, name, label, PUT_LVALUE_NOKEEP_DEPTH, - c002d2d2: 4752 lw a4,20(sp) - c002d2d4: 46c2 lw a3,16(sp) - c002d2d6: 4632 lw a2,12(sp) - c002d2d8: 45a2 lw a1,8(sp) - c002d2da: 4801 li a6,0 - c002d2dc: 4785 li a5,1 - c002d2de: 8522 mv a0,s0 - c002d2e0: a7eda0ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25845 + c002d4a2: 4752 lw a4,20(sp) + c002d4a4: 46c2 lw a3,16(sp) + c002d4a6: 4632 lw a2,12(sp) + c002d4a8: 45a2 lw a1,8(sp) + c002d4aa: 4801 li a6,0 + c002d4ac: 4785 li a5,1 + c002d4ae: 8522 mv a0,s0 + c002d4b0: 99cda0ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25853 label2 = emit_goto(s, OP_goto, -1); - c002d2e4: 06c00593 li a1,108 - c002d2e8: 567d li a2,-1 - c002d2ea: 8522 mv a0,s0 - c002d2ec: 9cdea0ef jal ra,c0017cb8 - c002d2f0: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25847 + c002d4b4: 06c00593 li a1,108 + c002d4b8: 567d li a2,-1 + c002d4ba: 8522 mv a0,s0 + c002d4bc: 9cdea0ef jal ra,c0017e88 + c002d4c0: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25855 emit_label(s, label1); - c002d2f2: 85a6 mv a1,s1 - c002d2f4: 8522 mv a0,s0 - c002d2f6: ae4d80ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25850 + c002d4c2: 85a6 mv a1,s1 + c002d4c4: 8522 mv a0,s0 + c002d4c6: a02d80ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25858 while (depth_lvalue != 0) { - c002d2fa: 44e2 lw s1,24(sp) - c002d2fc: c8048de3 beqz s1,c002cf96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25851 + c002d4ca: 44e2 lw s1,24(sp) + c002d4cc: c8048de3 beqz s1,c002d166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25859 emit_op(s, OP_nip); - c002d300: 45bd li a1,15 - c002d302: 8522 mv a0,s0 - c002d304: 938d80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25852 + c002d4d0: 45bd li a1,15 + c002d4d2: 8522 mv a0,s0 + c002d4d4: 856d80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25860 depth_lvalue--; - c002d308: 47e2 lw a5,24(sp) - c002d30a: 37fd addiw a5,a5,-1 - c002d30c: cc3e sw a5,24(sp) - c002d30e: b7f5 j c002d2fa + c002d4d8: 47e2 lw a5,24(sp) + c002d4da: 37fd addiw a5,a5,-1 + c002d4dc: cc3e sw a5,24(sp) + c002d4de: b7f5 j c002d4ca -00000000c002d310 : +00000000c002d4e0 : js_parse_expr2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25867 -{ - c002d310: 7179 addi sp,sp,-48 - c002d312: f022 sd s0,32(sp) - c002d314: ec26 sd s1,24(sp) - c002d316: e84a sd s2,16(sp) - c002d318: e44e sd s3,8(sp) - c002d31a: e052 sd s4,0(sp) - c002d31c: f406 sd ra,40(sp) - c002d31e: 842a mv s0,a0 - c002d320: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25875 +{ + c002d4e0: 7179 addi sp,sp,-48 + c002d4e2: f022 sd s0,32(sp) + c002d4e4: ec26 sd s1,24(sp) + c002d4e6: e84a sd s2,16(sp) + c002d4e8: e44e sd s3,8(sp) + c002d4ea: e052 sd s4,0(sp) + c002d4ec: f406 sd ra,40(sp) + c002d4ee: 842a mv s0,a0 + c002d4f0: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25876 BOOL comma = FALSE; - c002d322: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25878 + c002d4f2: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25886 s->cur_func->last_opcode_pos = -1; - c002d324: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25880 + c002d4f4: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25888 if (s->token.val != ',') - c002d326: 02c00a13 li s4,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25870 + c002d4f6: 02c00a13 li s4,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25878 if (js_parse_assign_expr2(s, parse_flags)) - c002d32a: 85a6 mv a1,s1 - c002d32c: 8522 mv a0,s0 - c002d32e: 8b9ff0ef jal ra,c002cbe6 - c002d332: e11d bnez a0,c002d358 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25872 + c002d4fa: 85a6 mv a1,s1 + c002d4fc: 8522 mv a0,s0 + c002d4fe: 8b9ff0ef jal ra,c002cdb6 + c002d502: e11d bnez a0,c002d528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25880 if (comma) { - c002d334: 00090563 beqz s2,c002d33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25878 + c002d504: 00090563 beqz s2,c002d50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25886 s->cur_func->last_opcode_pos = -1; - c002d338: 743c ld a5,104(s0) - c002d33a: 1737a023 sw s3,352(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25880 + c002d508: 743c ld a5,104(s0) + c002d50a: 1737a023 sw s3,352(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25888 if (s->token.val != ',') - c002d33e: 4c1c lw a5,24(s0) - c002d340: 01479d63 bne a5,s4,c002d35a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25883 + c002d50e: 4c1c lw a5,24(s0) + c002d510: 01479d63 bne a5,s4,c002d52a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25891 if (next_token(s)) - c002d344: 8522 mv a0,s0 - c002d346: 851f90ef jal ra,c0026b96 - c002d34a: e519 bnez a0,c002d358 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25885 + c002d514: 8522 mv a0,s0 + c002d516: 851f90ef jal ra,c0026d66 + c002d51a: e519 bnez a0,c002d528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25893 emit_op(s, OP_drop); - c002d34c: 45b9 li a1,14 - c002d34e: 8522 mv a0,s0 - c002d350: 8ecd80ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25882 + c002d51c: 45b9 li a1,14 + c002d51e: 8522 mv a0,s0 + c002d520: 80ad80ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25890 comma = TRUE; - c002d354: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25870 + c002d524: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25878 if (js_parse_assign_expr2(s, parse_flags)) - c002d356: bfd1 j c002d32a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25871 + c002d526: bfd1 j c002d4fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25879 return -1; - c002d358: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25888 -} - c002d35a: 70a2 ld ra,40(sp) - c002d35c: 7402 ld s0,32(sp) - c002d35e: 64e2 ld s1,24(sp) - c002d360: 6942 ld s2,16(sp) - c002d362: 69a2 ld s3,8(sp) - c002d364: 6a02 ld s4,0(sp) - c002d366: 6145 addi sp,sp,48 - c002d368: 8082 ret - -00000000c002d36a : + c002d528: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25896 +} + c002d52a: 70a2 ld ra,40(sp) + c002d52c: 7402 ld s0,32(sp) + c002d52e: 64e2 ld s1,24(sp) + c002d530: 6942 ld s2,16(sp) + c002d532: 69a2 ld s3,8(sp) + c002d534: 6a02 ld s4,0(sp) + c002d536: 6145 addi sp,sp,48 + c002d538: 8082 ret + +00000000c002d53a : js_parse_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25892 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 return js_parse_expr2(s, PF_IN_ACCEPTED); - c002d36a: 4585 li a1,1 - c002d36c: fa5ff06f j c002d310 + c002d53a: 4585 li a1,1 + c002d53c: fa5ff06f j c002d4e0 -00000000c002d370 : +00000000c002d540 : js_parse_property_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22321 -{ - c002d370: 715d addi sp,sp,-80 - c002d372: e0a2 sd s0,64(sp) - c002d374: f84a sd s2,48(sp) - c002d376: f052 sd s4,32(sp) - c002d378: ec56 sd s5,24(sp) - c002d37a: e85a sd s6,16(sp) - c002d37c: e486 sd ra,72(sp) - c002d37e: fc26 sd s1,56(sp) - c002d380: f44e sd s3,40(sp) - c002d382: 842a mv s0,a0 - c002d384: 8aae mv s5,a1 - c002d386: 8b32 mv s6,a2 - c002d388: 8a36 mv s4,a3 - c002d38a: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22329 +{ + c002d540: 715d addi sp,sp,-80 + c002d542: e0a2 sd s0,64(sp) + c002d544: f84a sd s2,48(sp) + c002d546: f052 sd s4,32(sp) + c002d548: ec56 sd s5,24(sp) + c002d54a: e85a sd s6,16(sp) + c002d54c: e486 sd ra,72(sp) + c002d54e: fc26 sd s1,56(sp) + c002d550: f44e sd s3,40(sp) + c002d552: 842a mv s0,a0 + c002d554: 8aae mv s5,a1 + c002d556: 8b32 mv s6,a2 + c002d558: 8a36 mv s4,a3 + c002d55a: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22336 if (allow_method) { - c002d38c: ee3d bnez a2,c002d40a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22327 + c002d55c: ee3d bnez a2,c002d5da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22335 prop_type = PROP_TYPE_IDENT; - c002d38e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22367 + c002d55e: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22375 if (token_is_ident(s->token.val)) { - c002d390: 4c04 lw s1,24(s0) - c002d392: 8526 mv a0,s1 - c002d394: 912d70ef jal ra,c00044a6 - c002d398: 14050d63 beqz a0,c002d4f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22370 + c002d560: 4c04 lw s1,24(s0) + c002d562: 8526 mv a0,s1 + c002d564: f43d60ef jal ra,c00044a6 + c002d568: 14050d63 beqz a0,c002d6c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22378 (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved); - c002d39c: f8300793 li a5,-125 - c002d3a0: 4901 li s2,0 - c002d3a2: 00f49563 bne s1,a5,c002d3ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22370 (discriminator 1) - c002d3a6: 5808 lw a0,48(s0) - c002d3a8: 00153913 seqz s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22372 + c002d56c: f8300793 li a5,-125 + c002d570: 4901 li s2,0 + c002d572: 00f49563 bne s1,a5,c002d57c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22378 (discriminator 1) + c002d576: 5808 lw a0,48(s0) + c002d578: 00153913 seqz s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22380 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002d3ac: 540c lw a1,40(s0) - c002d3ae: 6008 ld a0,0(s0) - c002d3b0: 91ada0ef jal ra,c00074ca - c002d3b4: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22373 + c002d57c: 540c lw a1,40(s0) + c002d57e: 6008 ld a0,0(s0) + c002d580: 838da0ef jal ra,c00075b8 + c002d584: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22381 if (next_token(s)) - c002d3b8: 8522 mv a0,s0 - c002d3ba: fdcf90ef jal ra,c0026b96 - c002d3be: 14051b63 bnez a0,c002d514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22376 + c002d588: 8522 mv a0,s0 + c002d58a: fdcf90ef jal ra,c0026d66 + c002d58e: 14051b63 bnez a0,c002d6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22384 if (is_non_reserved_ident && - c002d3c2: 18090663 beqz s2,c002d54e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22322 (discriminator 1) + c002d592: 18090663 beqz s2,c002d71e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22330 (discriminator 1) int is_private = 0; - c002d3c6: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22376 (discriminator 1) + c002d596: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22384 (discriminator 1) if (is_non_reserved_ident && - c002d3c8: 18099363 bnez s3,c002d54e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22377 + c002d598: 18099363 bnez s3,c002d71e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22385 prop_type == PROP_TYPE_IDENT && allow_var) { - c002d3cc: 000a0e63 beqz s4,c002d3e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22378 + c002d59c: 000a0e63 beqz s4,c002d5b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22386 if (!(s->token.val == ':' || - c002d3d0: 4c1c lw a5,24(s0) - c002d3d2: 03a00713 li a4,58 - c002d3d6: 1ce78263 beq a5,a4,c002d59a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22378 (discriminator 1) - c002d3da: 02800713 li a4,40 - c002d3de: 00e79563 bne a5,a4,c002d3e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22379 + c002d5a0: 4c1c lw a5,24(s0) + c002d5a2: 03a00713 li a4,58 + c002d5a6: 1ce78263 beq a5,a4,c002d76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22386 (discriminator 1) + c002d5aa: 02800713 li a4,40 + c002d5ae: 00e79563 bne a5,a4,c002d5b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22387 (s->token.val == '(' && allow_method))) { - c002d3e2: 4a05 li s4,1 - c002d3e4: 416a0a3b subw s4,s4,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22423 + c002d5b2: 4a05 li s4,1 + c002d5b4: 416a0a3b subw s4,s4,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22431 is_private = PROP_TYPE_PRIVATE; - c002d3e8: 89d2 mv s3,s4 - c002d3ea: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22435 + c002d5b8: 89d2 mv s3,s4 + c002d5ba: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22443 return prop_type | is_private; - c002d3ec: 01396533 or a0,s2,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22434 + c002d5bc: 01396533 or a0,s2,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22442 *pname = name; - c002d3f0: 009aa023 sw s1,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22435 + c002d5c0: 009aa023 sw s1,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22443 return prop_type | is_private; - c002d3f4: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22441 -} - c002d3f6: 60a6 ld ra,72(sp) - c002d3f8: 6406 ld s0,64(sp) - c002d3fa: 74e2 ld s1,56(sp) - c002d3fc: 7942 ld s2,48(sp) - c002d3fe: 79a2 ld s3,40(sp) - c002d400: 7a02 ld s4,32(sp) - c002d402: 6ae2 ld s5,24(sp) - c002d404: 6b42 ld s6,16(sp) - c002d406: 6161 addi sp,sp,80 - c002d408: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22329 + c002d5c4: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22449 +} + c002d5c6: 60a6 ld ra,72(sp) + c002d5c8: 6406 ld s0,64(sp) + c002d5ca: 74e2 ld s1,56(sp) + c002d5cc: 7942 ld s2,48(sp) + c002d5ce: 79a2 ld s3,40(sp) + c002d5d0: 7a02 ld s4,32(sp) + c002d5d2: 6ae2 ld s5,24(sp) + c002d5d4: 6b42 ld s6,16(sp) + c002d5d6: 6161 addi sp,sp,80 + c002d5d8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22337 if (token_is_pseudo_keyword(s, JS_ATOM_get) - c002d40a: 04200593 li a1,66 - c002d40e: f47d60ef jal ra,c0004354 - c002d412: e519 bnez a0,c002d420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22330 + c002d5da: 04200593 li a1,66 + c002d5de: d77d60ef jal ra,c0004354 + c002d5e2: e519 bnez a0,c002d5f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22338 || token_is_pseudo_keyword(s, JS_ATOM_set)) { - c002d414: 04300593 li a1,67 - c002d418: 8522 mv a0,s0 - c002d41a: f3bd60ef jal ra,c0004354 - c002d41e: c529 beqz a0,c002d468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22332 + c002d5e4: 04300593 li a1,67 + c002d5e8: 8522 mv a0,s0 + c002d5ea: d6bd60ef jal ra,c0004354 + c002d5ee: c529 beqz a0,c002d638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22340 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002d420: 540c lw a1,40(s0) - c002d422: 6008 ld a0,0(s0) - c002d424: 8a6da0ef jal ra,c00074ca - c002d428: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22333 + c002d5f0: 540c lw a1,40(s0) + c002d5f2: 6008 ld a0,0(s0) + c002d5f4: fc5d90ef jal ra,c00075b8 + c002d5f8: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22341 if (next_token(s)) - c002d42c: 8522 mv a0,s0 - c002d42e: f68f90ef jal ra,c0026b96 - c002d432: 0e051163 bnez a0,c002d514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22335 + c002d5fc: 8522 mv a0,s0 + c002d5fe: f68f90ef jal ra,c0026d66 + c002d602: 0e051163 bnez a0,c002d6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22343 if (s->token.val == ':' || s->token.val == ',' || - c002d436: 4c1c lw a5,24(s0) - c002d438: 03a00713 li a4,58 - c002d43c: f8e788e3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22335 (discriminator 2) - c002d440: 07d00713 li a4,125 - c002d444: f8e784e3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22336 + c002d606: 4c1c lw a5,24(s0) + c002d608: 03a00713 li a4,58 + c002d60c: f8e788e3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22343 (discriminator 2) + c002d610: 07d00713 li a4,125 + c002d614: f8e784e3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22344 s->token.val == '}' || s->token.val == '(') { - c002d448: 9bed andi a5,a5,-5 - c002d44a: 02800713 li a4,40 - c002d44e: f6e78fe3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22340 + c002d618: 9bed andi a5,a5,-5 + c002d61a: 02800713 li a4,40 + c002d61e: f6e78fe3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22348 prop_type = PROP_TYPE_GET + (name == JS_ATOM_set); - c002d452: 04300793 li a5,67 - c002d456: 498d li s3,3 - c002d458: 00f48363 beq s1,a5,c002d45e - c002d45c: 4989 li s3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22341 (discriminator 4) + c002d622: 04300793 li a5,67 + c002d626: 498d li s3,3 + c002d628: 00f48363 beq s1,a5,c002d62e + c002d62c: 4989 li s3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22349 (discriminator 4) JS_FreeAtom(s->ctx, name); - c002d45e: 6008 ld a0,0(s0) - c002d460: 85a6 mv a1,s1 - c002d462: 8aada0ef jal ra,c000750c - c002d466: b72d j c002d390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22342 + c002d62e: 6008 ld a0,0(s0) + c002d630: 85a6 mv a1,s1 + c002d632: fc9d90ef jal ra,c00075fa + c002d636: b72d j c002d560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22350 } else if (s->token.val == '*') { - c002d468: 4c18 lw a4,24(s0) - c002d46a: 02a00793 li a5,42 - c002d46e: 00f71c63 bne a4,a5,c002d486 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22343 + c002d638: 4c18 lw a4,24(s0) + c002d63a: 02a00793 li a5,42 + c002d63e: 00f71c63 bne a4,a5,c002d656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22351 if (next_token(s)) - c002d472: 8522 mv a0,s0 - c002d474: f22f90ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22345 + c002d642: 8522 mv a0,s0 + c002d644: f22f90ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22353 prop_type = PROP_TYPE_STAR; - c002d478: 4991 li s3,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22343 + c002d648: 4991 li s3,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22351 if (next_token(s)) - c002d47a: f0050be3 beqz a0,c002d390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22439 + c002d64a: f0050be3 beqz a0,c002d560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22447 *pname = JS_ATOM_NULL; - c002d47e: 000aa023 sw zero,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22440 + c002d64e: 000aa023 sw zero,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22448 return -1; - c002d482: 557d li a0,-1 - c002d484: bf8d j c002d3f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22346 + c002d652: 557d li a0,-1 + c002d654: bf8d j c002d5c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22354 } else if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002d486: 08600593 li a1,134 - c002d48a: 8522 mv a0,s0 - c002d48c: ec9d60ef jal ra,c0004354 - c002d490: ee050fe3 beqz a0,c002d38e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22347 (discriminator 1) + c002d656: 08600593 li a1,134 + c002d65a: 8522 mv a0,s0 + c002d65c: cf9d60ef jal ra,c0004354 + c002d660: ee050fe3 beqz a0,c002d55e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22355 (discriminator 1) peek_token(s, TRUE) != '\n') { - c002d494: 4585 li a1,1 - c002d496: 8522 mv a0,s0 - c002d498: ac1d80ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22346 (discriminator 1) + c002d664: 4585 li a1,1 + c002d666: 8522 mv a0,s0 + c002d668: 9dfd80ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22354 (discriminator 1) } else if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002d49c: 47a9 li a5,10 - c002d49e: eef508e3 beq a0,a5,c002d38e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22348 + c002d66c: 47a9 li a5,10 + c002d66e: eef508e3 beq a0,a5,c002d55e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22356 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002d4a2: 540c lw a1,40(s0) - c002d4a4: 6008 ld a0,0(s0) - c002d4a6: 824da0ef jal ra,c00074ca - c002d4aa: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22349 + c002d672: 540c lw a1,40(s0) + c002d674: 6008 ld a0,0(s0) + c002d676: f43d90ef jal ra,c00075b8 + c002d67a: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22357 if (next_token(s)) - c002d4ae: 8522 mv a0,s0 - c002d4b0: ee6f90ef jal ra,c0026b96 - c002d4b4: e125 bnez a0,c002d514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22351 + c002d67e: 8522 mv a0,s0 + c002d680: ee6f90ef jal ra,c0026d66 + c002d684: e125 bnez a0,c002d6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22359 if (s->token.val == ':' || s->token.val == ',' || - c002d4b6: 4c1c lw a5,24(s0) - c002d4b8: 03a00713 li a4,58 - c002d4bc: f0e788e3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22351 (discriminator 2) - c002d4c0: 07d00713 li a4,125 - c002d4c4: f0e784e3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22352 + c002d686: 4c1c lw a5,24(s0) + c002d688: 03a00713 li a4,58 + c002d68c: f0e788e3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22359 (discriminator 2) + c002d690: 07d00713 li a4,125 + c002d694: f0e784e3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22360 s->token.val == '}' || s->token.val == '(') { - c002d4c8: 9bed andi a5,a5,-5 - c002d4ca: 02800713 li a4,40 - c002d4ce: eee78fe3 beq a5,a4,c002d3cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22356 + c002d698: 9bed andi a5,a5,-5 + c002d69a: 02800713 li a4,40 + c002d69e: eee78fe3 beq a5,a4,c002d59c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22364 JS_FreeAtom(s->ctx, name); - c002d4d2: 6008 ld a0,0(s0) - c002d4d4: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22362 + c002d6a2: 6008 ld a0,0(s0) + c002d6a4: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22370 prop_type = PROP_TYPE_ASYNC; - c002d4d6: 4995 li s3,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22356 + c002d6a6: 4995 li s3,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22364 JS_FreeAtom(s->ctx, name); - c002d4d8: 834da0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22357 + c002d6a8: f53d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22365 if (s->token.val == '*') { - c002d4dc: 4c18 lw a4,24(s0) - c002d4de: 02a00793 li a5,42 - c002d4e2: eaf717e3 bne a4,a5,c002d390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22358 + c002d6ac: 4c18 lw a4,24(s0) + c002d6ae: 02a00793 li a5,42 + c002d6b2: eaf717e3 bne a4,a5,c002d560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22366 if (next_token(s)) - c002d4e6: 8522 mv a0,s0 - c002d4e8: eaef90ef jal ra,c0026b96 - c002d4ec: f949 bnez a0,c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22360 + c002d6b6: 8522 mv a0,s0 + c002d6b8: eaef90ef jal ra,c0026d66 + c002d6bc: f949 bnez a0,c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22368 prop_type = PROP_TYPE_ASYNC_STAR; - c002d4ee: 4999 li s3,6 - c002d4f0: b545 j c002d390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22383 + c002d6be: 4999 li s3,6 + c002d6c0: b545 j c002d560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22391 } else if (s->token.val == TOK_STRING) { - c002d4f2: f8100793 li a5,-127 - c002d4f6: 02f49463 bne s1,a5,c002d51e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22405 + c002d6c2: f8100793 li a5,-127 + c002d6c6: 02f49463 bne s1,a5,c002d6ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22413 name = JS_ValueToAtom(s->ctx, val); - c002d4fa: 740c ld a1,40(s0) - c002d4fc: 7810 ld a2,48(s0) - c002d4fe: 6008 ld a0,0(s0) - c002d500: 91cf40ef jal ra,c002161c - c002d504: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22407 + c002d6ca: 740c ld a1,40(s0) + c002d6cc: 7810 ld a2,48(s0) + c002d6ce: 6008 ld a0,0(s0) + c002d6d0: 91cf40ef jal ra,c00217ec + c002d6d4: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22415 if (name == JS_ATOM_NULL) - c002d508: d8bd beqz s1,c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22409 + c002d6d8: d8bd beqz s1,c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22417 if (next_token(s)) - c002d50a: 8522 mv a0,s0 - c002d50c: e8af90ef jal ra,c0026b96 - c002d510: 892a mv s2,a0 - c002d512: cd15 beqz a0,c002d54e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22437 + c002d6da: 8522 mv a0,s0 + c002d6dc: e8af90ef jal ra,c0026d66 + c002d6e0: 892a mv s2,a0 + c002d6e2: cd15 beqz a0,c002d71e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22445 JS_FreeAtom(s->ctx, name); - c002d514: 6008 ld a0,0(s0) - c002d516: 85a6 mv a1,s1 - c002d518: ff5d90ef jal ra,c000750c - c002d51c: b78d j c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22389 + c002d6e4: 6008 ld a0,0(s0) + c002d6e6: 85a6 mv a1,s1 + c002d6e8: f13d90ef jal ra,c00075fa + c002d6ec: b78d j c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22397 } else if (s->token.val == TOK_NUMBER) { - c002d51e: f8000793 li a5,-128 - c002d522: fcf48ce3 beq s1,a5,c002d4fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22411 + c002d6ee: f8000793 li a5,-128 + c002d6f2: fcf48ce3 beq s1,a5,c002d6ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22419 } else if (s->token.val == '[') { - c002d526: 05b00793 li a5,91 - c002d52a: 04f49663 bne s1,a5,c002d576 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22412 + c002d6f6: 05b00793 li a5,91 + c002d6fa: 04f49663 bne s1,a5,c002d746 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22420 if (next_token(s)) - c002d52e: 8522 mv a0,s0 - c002d530: e66f90ef jal ra,c0026b96 - c002d534: f529 bnez a0,c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22414 + c002d6fe: 8522 mv a0,s0 + c002d700: e66f90ef jal ra,c0026d66 + c002d704: f529 bnez a0,c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22422 if (js_parse_expr(s)) - c002d536: 8522 mv a0,s0 - c002d538: e33ff0ef jal ra,c002d36a - c002d53c: f129 bnez a0,c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22416 + c002d706: 8522 mv a0,s0 + c002d708: e33ff0ef jal ra,c002d53a + c002d70c: f129 bnez a0,c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22424 if (js_parse_expect(s, ']')) - c002d53e: 05d00593 li a1,93 - c002d542: 8522 mv a0,s0 - c002d544: d9ffa0ef jal ra,c00282e2 - c002d548: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22418 + c002d70e: 05d00593 li a1,93 + c002d712: 8522 mv a0,s0 + c002d714: d9ffa0ef jal ra,c00284b2 + c002d718: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22426 name = JS_ATOM_NULL; - c002d54a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22416 + c002d71a: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22424 if (js_parse_expect(s, ']')) - c002d54c: f90d bnez a0,c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22427 + c002d71c: f90d bnez a0,c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22435 if (prop_type != PROP_TYPE_IDENT && prop_type != PROP_TYPE_VAR && - c002d54e: 4785 li a5,1 - c002d550: e937dee3 bge a5,s3,c002d3ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22427 (discriminator 1) - c002d554: 4c18 lw a4,24(s0) - c002d556: 02800793 li a5,40 - c002d55a: e8f709e3 beq a4,a5,c002d3ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22429 + c002d71e: 4785 li a5,1 + c002d720: e937dee3 bge a5,s3,c002d5bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22435 (discriminator 1) + c002d724: 4c18 lw a4,24(s0) + c002d726: 02800793 li a5,40 + c002d72a: e8f709e3 beq a4,a5,c002d5bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22437 JS_FreeAtom(s->ctx, name); - c002d55e: 6008 ld a0,0(s0) - c002d560: 85a6 mv a1,s1 - c002d562: fabd90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22431 + c002d72e: 6008 ld a0,0(s0) + c002d730: 85a6 mv a1,s1 + c002d732: ec9d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22439 js_parse_error(s, "invalid property name"); - c002d566: 00033597 auipc a1,0x33 - c002d56a: 8d258593 addi a1,a1,-1838 # c005fe38 - c002d56e: 8522 mv a0,s0 - c002d570: d49f80ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22432 + c002d736: 00033597 auipc a1,0x33 + c002d73a: 96258593 addi a1,a1,-1694 # c0060098 + c002d73e: 8522 mv a0,s0 + c002d740: d49f80ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22440 goto fail; - c002d574: b729 j c002d47e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22419 + c002d744: b729 j c002d64e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22427 } else if (s->token.val == TOK_PRIVATE_NAME && allow_private) { - c002d576: fa900793 li a5,-87 - c002d57a: fef496e3 bne s1,a5,c002d566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22419 (discriminator 1) - c002d57e: fe0904e3 beqz s2,c002d566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22420 + c002d746: fa900793 li a5,-87 + c002d74a: fef496e3 bne s1,a5,c002d736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22427 (discriminator 1) + c002d74e: fe0904e3 beqz s2,c002d736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22428 name = JS_DupAtom(s->ctx, s->token.u.ident.atom); - c002d582: 540c lw a1,40(s0) - c002d584: 6008 ld a0,0(s0) - c002d586: f45d90ef jal ra,c00074ca - c002d58a: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22421 + c002d752: 540c lw a1,40(s0) + c002d754: 6008 ld a0,0(s0) + c002d756: e63d90ef jal ra,c00075b8 + c002d75a: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22429 if (next_token(s)) - c002d58e: 8522 mv a0,s0 - c002d590: e06f90ef jal ra,c0026b96 - c002d594: f141 bnez a0,c002d514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22423 + c002d75e: 8522 mv a0,s0 + c002d760: e06f90ef jal ra,c0026d66 + c002d764: f141 bnez a0,c002d6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22431 is_private = PROP_TYPE_PRIVATE; - c002d596: 4941 li s2,16 - c002d598: bf5d j c002d54e - c002d59a: 4a01 li s4,0 - c002d59c: b5b1 j c002d3e8 + c002d766: 4941 li s2,16 + c002d768: bf5d j c002d71e + c002d76a: 4a01 li s4,0 + c002d76c: b5b1 j c002d5b8 -00000000c002d59e : +00000000c002d76e : js_parse_expr_paren(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23840 { - c002d59e: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23833 + c002d76e: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23841 if (js_parse_expect(s, '(')) - c002d5a0: 02800593 li a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23832 + c002d770: 02800593 li a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23840 { - c002d5a4: e022 sd s0,0(sp) - c002d5a6: e406 sd ra,8(sp) - c002d5a8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23833 + c002d774: e022 sd s0,0(sp) + c002d776: e406 sd ra,8(sp) + c002d778: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23841 if (js_parse_expect(s, '(')) - c002d5aa: d39fa0ef jal ra,c00282e2 - c002d5ae: c511 beqz a0,c002d5ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23834 + c002d77a: d39fa0ef jal ra,c00284b2 + c002d77e: c511 beqz a0,c002d78a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23842 return -1; - c002d5b0: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23840 -} - c002d5b2: 60a2 ld ra,8(sp) - c002d5b4: 6402 ld s0,0(sp) - c002d5b6: 0141 addi sp,sp,16 - c002d5b8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23835 + c002d780: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23848 +} + c002d782: 60a2 ld ra,8(sp) + c002d784: 6402 ld s0,0(sp) + c002d786: 0141 addi sp,sp,16 + c002d788: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23843 if (js_parse_expr(s)) - c002d5ba: 8522 mv a0,s0 - c002d5bc: dafff0ef jal ra,c002d36a - c002d5c0: f965 bnez a0,c002d5b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23837 + c002d78a: 8522 mv a0,s0 + c002d78c: dafff0ef jal ra,c002d53a + c002d790: f965 bnez a0,c002d780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23845 if (js_parse_expect(s, ')')) - c002d5c2: 02900593 li a1,41 - c002d5c6: 8522 mv a0,s0 - c002d5c8: d1bfa0ef jal ra,c00282e2 - c002d5cc: 00a03533 snez a0,a0 - c002d5d0: 40a00533 neg a0,a0 - c002d5d4: bff9 j c002d5b2 - -00000000c002d5d6 : + c002d792: 02900593 li a1,41 + c002d796: 8522 mv a0,s0 + c002d798: d1bfa0ef jal ra,c00284b2 + c002d79c: 00a03533 snez a0,a0 + c002d7a0: 40a00533 neg a0,a0 + c002d7a4: bff9 j c002d782 + +00000000c002d7a6 : js_parse_assign_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25870 return js_parse_assign_expr2(s, PF_IN_ACCEPTED); - c002d5d6: 4585 li a1,1 - c002d5d8: e0eff06f j c002cbe6 + c002d7a6: 4585 li a1,1 + c002d7a8: e0eff06f j c002cdb6 -00000000c002d5dc : +00000000c002d7ac : js_parse_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26100 { - c002d5dc: 7175 addi sp,sp,-144 - c002d5de: f4ce sd s3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26141 + c002d7ac: 7175 addi sp,sp,-144 + c002d7ae: f4ce sd s3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26149 emit_op(s, (tok == TOK_CONST || tok == TOK_LET) ? - c002d5e0: 0376099b addiw s3,a2,55 - c002d5e4: ff79f993 andi s3,s3,-9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26092 + c002d7b0: 0376099b addiw s3,a2,55 + c002d7b4: ff79f993 andi s3,s3,-9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26100 { - c002d5e8: e122 sd s0,128(sp) - c002d5ea: f8ca sd s2,112(sp) - c002d5ec: ecd6 sd s5,88(sp) - c002d5ee: e4de sd s7,72(sp) - c002d5f0: e506 sd ra,136(sp) - c002d5f2: fca6 sd s1,120(sp) - c002d5f4: f0d2 sd s4,96(sp) - c002d5f6: e8da sd s6,80(sp) - c002d5f8: e0e2 sd s8,64(sp) - c002d5fa: fc66 sd s9,56(sp) - c002d5fc: f86a sd s10,48(sp) - c002d5fe: f46e sd s11,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26141 + c002d7b8: e122 sd s0,128(sp) + c002d7ba: f8ca sd s2,112(sp) + c002d7bc: ecd6 sd s5,88(sp) + c002d7be: e4de sd s7,72(sp) + c002d7c0: e506 sd ra,136(sp) + c002d7c2: fca6 sd s1,120(sp) + c002d7c4: f0d2 sd s4,96(sp) + c002d7c6: e8da sd s6,80(sp) + c002d7c8: e0e2 sd s8,64(sp) + c002d7ca: fc66 sd s9,56(sp) + c002d7cc: f86a sd s10,48(sp) + c002d7ce: f46e sd s11,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26149 emit_op(s, (tok == TOK_CONST || tok == TOK_LET) ? - c002d600: 2981 sext.w s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26093 + c002d7d0: 2981 sext.w s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26101 JSContext *ctx = s->ctx; - c002d602: 00053a03 ld s4,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26094 + c002d7d2: 00053a03 ld s4,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26102 JSFunctionDef *fd = s->cur_func; - c002d606: 06853b03 ld s6,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26092 + c002d7d6: 06853b03 ld s6,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26100 { - c002d60a: 842a mv s0,a0 - c002d60c: 8aae mv s5,a1 - c002d60e: 8932 mv s2,a2 - c002d610: 8bb6 mv s7,a3 - c002d612: 0bd00793 li a5,189 - c002d616: 00098463 beqz s3,c002d61e - c002d61a: 0b900793 li a5,185 - c002d61e: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26098 + c002d7da: 842a mv s0,a0 + c002d7dc: 8aae mv s5,a1 + c002d7de: 8932 mv s2,a2 + c002d7e0: 8bb6 mv s7,a3 + c002d7e2: 0bd00793 li a5,189 + c002d7e6: 00098463 beqz s3,c002d7ee + c002d7ea: 0b900793 li a5,185 + c002d7ee: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26106 if (s->token.val == TOK_IDENT) { - c002d620: f8300c93 li s9,-125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26162 + c002d7f0: f8300c93 li s9,-125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26170 if ((s->token.val == '[' || s->token.val == '{') - c002d624: 05b00d13 li s10,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26163 + c002d7f4: 05b00d13 li s10,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26171 && js_parse_skip_parens_token(s, &skip_bits, FALSE) == '=') { - c002d628: 03d00c13 li s8,61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26103 + c002d7f8: 03d00c13 li s8,61 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26111 if (name == JS_ATOM_let && (tok == TOK_LET || tok == TOK_CONST)) { - c002d62c: 02700d93 li s11,39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26098 + c002d7fc: 02700d93 li s11,39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26106 if (s->token.val == TOK_IDENT) { - c002d630: 4c1c lw a5,24(s0) - c002d632: 17979a63 bne a5,s9,c002d7a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26099 + c002d800: 4c1c lw a5,24(s0) + c002d802: 17979a63 bne a5,s9,c002d976 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26107 if (s->token.u.ident.is_reserved) { - c002d636: 581c lw a5,48(s0) - c002d638: c395 beqz a5,c002d65c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26100 + c002d806: 581c lw a5,48(s0) + c002d808: c395 beqz a5,c002d82c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26108 return js_parse_error_reserved_identifier(s); - c002d63a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26181 -} - c002d63c: 640a ld s0,128(sp) - c002d63e: 60aa ld ra,136(sp) - c002d640: 74e6 ld s1,120(sp) - c002d642: 7946 ld s2,112(sp) - c002d644: 79a6 ld s3,104(sp) - c002d646: 7a06 ld s4,96(sp) - c002d648: 6ae6 ld s5,88(sp) - c002d64a: 6b46 ld s6,80(sp) - c002d64c: 6ba6 ld s7,72(sp) - c002d64e: 6c06 ld s8,64(sp) - c002d650: 7ce2 ld s9,56(sp) - c002d652: 7d42 ld s10,48(sp) - c002d654: 7da2 ld s11,40(sp) - c002d656: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26100 + c002d80a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26189 +} + c002d80c: 640a ld s0,128(sp) + c002d80e: 60aa ld ra,136(sp) + c002d810: 74e6 ld s1,120(sp) + c002d812: 7946 ld s2,112(sp) + c002d814: 79a6 ld s3,104(sp) + c002d816: 7a06 ld s4,96(sp) + c002d818: 6ae6 ld s5,88(sp) + c002d81a: 6b46 ld s6,80(sp) + c002d81c: 6ba6 ld s7,72(sp) + c002d81e: 6c06 ld s8,64(sp) + c002d820: 7ce2 ld s9,56(sp) + c002d822: 7d42 ld s10,48(sp) + c002d824: 7da2 ld s11,40(sp) + c002d826: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26108 return js_parse_error_reserved_identifier(s); - c002d658: e4afa06f j c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26102 + c002d828: e4afa06f j c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26110 name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002d65c: 540c lw a1,40(s0) - c002d65e: 8552 mv a0,s4 - c002d660: e6bd90ef jal ra,c00074ca - c002d664: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26103 + c002d82c: 540c lw a1,40(s0) + c002d82e: 8552 mv a0,s4 + c002d830: d89d90ef jal ra,c00075b8 + c002d834: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26111 if (name == JS_ATOM_let && (tok == TOK_LET || tok == TOK_CONST)) { - c002d668: 01b49c63 bne s1,s11,c002d680 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26103 (discriminator 2) - c002d66c: 00099a63 bnez s3,c002d680 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26104 + c002d838: 01b49c63 bne s1,s11,c002d850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26111 (discriminator 2) + c002d83c: 00099a63 bnez s3,c002d850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26112 js_parse_error(s, "'let' is not a valid lexical identifier"); - c002d670: 00032597 auipc a1,0x32 - c002d674: 7e058593 addi a1,a1,2016 # c005fe50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26148 + c002d840: 00033597 auipc a1,0x33 + c002d844: 87058593 addi a1,a1,-1936 # c00600b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26156 js_parse_error(s, "missing initializer for const variable"); - c002d678: 8522 mv a0,s0 - c002d67a: c3ff80ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26149 + c002d848: 8522 mv a0,s0 + c002d84a: c3ff80ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26157 goto var_error; - c002d67e: a841 j c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26107 + c002d84e: a841 j c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26115 if (next_token(s)) - c002d680: 8522 mv a0,s0 - c002d682: d14f90ef jal ra,c0026b96 - c002d686: e541 bnez a0,c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26109 + c002d850: 8522 mv a0,s0 + c002d852: d14f90ef jal ra,c0026d66 + c002d856: e541 bnez a0,c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26117 if (js_define_var(s, name, tok)) - c002d688: 864a mv a2,s2 - c002d68a: 85a6 mv a1,s1 - c002d68c: 8522 mv a0,s0 - c002d68e: 9d1fa0ef jal ra,c002805e - c002d692: ed35 bnez a0,c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26111 + c002d858: 864a mv a2,s2 + c002d85a: 85a6 mv a1,s1 + c002d85c: 8522 mv a0,s0 + c002d85e: 9d1fa0ef jal ra,c002822e + c002d862: ed35 bnez a0,c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26119 if (export_flag) { - c002d694: 060b9263 bnez s7,c002d6f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26117 + c002d864: 060b9263 bnez s7,c002d8c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26125 if (s->token.val == '=') { - c002d698: 4c1c lw a5,24(s0) - c002d69a: 0f879263 bne a5,s8,c002d77e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26118 + c002d868: 4c1c lw a5,24(s0) + c002d86a: 0f879263 bne a5,s8,c002d94e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26126 if (next_token(s)) - c002d69e: 8522 mv a0,s0 - c002d6a0: cf6f90ef jal ra,c0026b96 - c002d6a4: e52d bnez a0,c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26120 + c002d86e: 8522 mv a0,s0 + c002d870: cf6f90ef jal ra,c0026d66 + c002d874: e52d bnez a0,c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26128 if (tok == TOK_VAR) { - c002d6a6: fb100793 li a5,-79 - c002d6aa: 0af91363 bne s2,a5,c002d750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26125 + c002d876: fb100793 li a5,-79 + c002d87a: 0af91363 bne s2,a5,c002d920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26133 emit_op(s, OP_scope_get_var); - c002d6ae: 0b800593 li a1,184 - c002d6b2: 8522 mv a0,s0 - c002d6b4: d89d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26126 + c002d87e: 0b800593 li a1,184 + c002d882: 8522 mv a0,s0 + c002d884: ca7d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26134 emit_atom(s, name); - c002d6b8: 85a6 mv a1,s1 - c002d6ba: 8522 mv a0,s0 - c002d6bc: e33d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26127 + c002d888: 85a6 mv a1,s1 + c002d88a: 8522 mv a0,s0 + c002d88c: d51d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26135 emit_u16(s, fd->scope_level); - c002d6c0: 0e0b5583 lhu a1,224(s6) - c002d6c4: 8522 mv a0,s0 - c002d6c6: c45d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26128 + c002d890: 0e0b5583 lhu a1,224(s6) + c002d894: 8522 mv a0,s0 + c002d896: b63d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26136 if (get_lvalue(s, &opcode, &scope, &name1, &label, NULL, FALSE, '=') < 0) - c002d6ca: 03d00893 li a7,61 - c002d6ce: 4801 li a6,0 - c002d6d0: 4781 li a5,0 - c002d6d2: 0838 addi a4,sp,24 - c002d6d4: 0874 addi a3,sp,28 - c002d6d6: 0850 addi a2,sp,20 - c002d6d8: 080c addi a1,sp,16 - c002d6da: 8522 mv a0,s0 - c002d6dc: a9efa0ef jal ra,c002797a - c002d6e0: 02054763 bltz a0,c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26130 + c002d89a: 03d00893 li a7,61 + c002d89e: 4801 li a6,0 + c002d8a0: 4781 li a5,0 + c002d8a2: 0838 addi a4,sp,24 + c002d8a4: 0874 addi a3,sp,28 + c002d8a6: 0850 addi a2,sp,20 + c002d8a8: 080c addi a1,sp,16 + c002d8aa: 8522 mv a0,s0 + c002d8ac: a9efa0ef jal ra,c0027b4a + c002d8b0: 02054763 bltz a0,c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26138 if (js_parse_assign_expr2(s, parse_flags)) { - c002d6e4: 85d6 mv a1,s5 - c002d6e6: 8522 mv a0,s0 - c002d6e8: cfeff0ef jal ra,c002cbe6 - c002d6ec: c515 beqz a0,c002d718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26131 + c002d8b4: 85d6 mv a1,s5 + c002d8b6: 8522 mv a0,s0 + c002d8b8: cfeff0ef jal ra,c002cdb6 + c002d8bc: c515 beqz a0,c002d8e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26139 JS_FreeAtom(ctx, name1); - c002d6ee: 45f2 lw a1,28(sp) - c002d6f0: 8552 mv a0,s4 - c002d6f2: e1bd90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26132 + c002d8be: 45f2 lw a1,28(sp) + c002d8c0: 8552 mv a0,s4 + c002d8c2: d39d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26140 goto var_error; - c002d6f6: a821 j c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26112 + c002d8c6: a821 j c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26120 if (!add_export_entry(s, s->cur_func->module, name, name, - c002d6f8: 7430 ld a2,104(s0) + c002d8c8: 7430 ld a2,104(s0) add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002d6fa: 6008 ld a0,0(s0) - c002d6fc: 4781 li a5,0 - c002d6fe: 21863603 ld a2,536(a2) - c002d702: 8726 mv a4,s1 - c002d704: 86a6 mv a3,s1 - c002d706: 85a2 mv a1,s0 - c002d708: c05f80ef jal ra,c002630c + c002d8ca: 6008 ld a0,0(s0) + c002d8cc: 4781 li a5,0 + c002d8ce: 21863603 ld a2,536(a2) + c002d8d2: 8726 mv a4,s1 + c002d8d4: 86a6 mv a3,s1 + c002d8d6: 85a2 mv a1,s0 + c002d8d8: c05f80ef jal ra,c00264dc js_parse_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26120 if (!add_export_entry(s, s->cur_func->module, name, name, - c002d70c: f551 bnez a0,c002d698 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26179 + c002d8dc: f551 bnez a0,c002d868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26187 JS_FreeAtom(ctx, name); - c002d70e: 85a6 mv a1,s1 - c002d710: 8552 mv a0,s4 - c002d712: dfbd90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26180 + c002d8de: 85a6 mv a1,s1 + c002d8e0: 8552 mv a0,s4 + c002d8e2: d19d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26188 return -1; - c002d716: a0d1 j c002d7da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26134 + c002d8e6: a0d1 j c002d9aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26142 set_object_name(s, name); - c002d718: 85a6 mv a1,s1 - c002d71a: 8522 mv a0,s0 - c002d71c: 81ada0ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26135 + c002d8e8: 85a6 mv a1,s1 + c002d8ea: 8522 mv a0,s0 + c002d8ec: f39d90ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26143 put_lvalue(s, opcode, scope, name1, label, - c002d720: 4762 lw a4,24(sp) - c002d722: 46f2 lw a3,28(sp) - c002d724: 4652 lw a2,20(sp) - c002d726: 45c2 lw a1,16(sp) - c002d728: 4801 li a6,0 - c002d72a: 4781 li a5,0 - c002d72c: 8522 mv a0,s0 - c002d72e: e31d90ef jal ra,c000755e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26159 + c002d8f0: 4762 lw a4,24(sp) + c002d8f2: 46f2 lw a3,28(sp) + c002d8f4: 4652 lw a2,20(sp) + c002d8f6: 45c2 lw a1,16(sp) + c002d8f8: 4801 li a6,0 + c002d8fa: 4781 li a5,0 + c002d8fc: 8522 mv a0,s0 + c002d8fe: d4fd90ef jal ra,c000764c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26167 JS_FreeAtom(ctx, name); - c002d732: 85a6 mv a1,s1 - c002d734: 8552 mv a0,s4 - c002d736: dd7d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26171 + c002d902: 85a6 mv a1,s1 + c002d904: 8552 mv a0,s4 + c002d906: cf5d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26179 if (s->token.val != ',') - c002d73a: 4c18 lw a4,24(s0) - c002d73c: 02c00793 li a5,44 - c002d740: 0cf71563 bne a4,a5,c002d80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26173 + c002d90a: 4c18 lw a4,24(s0) + c002d90c: 02c00793 li a5,44 + c002d910: 0cf71563 bne a4,a5,c002d9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26181 if (next_token(s)) - c002d744: 8522 mv a0,s0 - c002d746: c50f90ef jal ra,c0026b96 - c002d74a: ee0503e3 beqz a0,c002d630 - c002d74e: a071 j c002d7da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26138 + c002d914: 8522 mv a0,s0 + c002d916: c50f90ef jal ra,c0026d66 + c002d91a: ee0503e3 beqz a0,c002d800 + c002d91e: a071 j c002d9aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26146 if (js_parse_assign_expr2(s, parse_flags)) - c002d750: 85d6 mv a1,s5 - c002d752: 8522 mv a0,s0 - c002d754: c92ff0ef jal ra,c002cbe6 - c002d758: f95d bnez a0,c002d70e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26140 + c002d920: 85d6 mv a1,s5 + c002d922: 8522 mv a0,s0 + c002d924: c92ff0ef jal ra,c002cdb6 + c002d928: f95d bnez a0,c002d8de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26148 set_object_name(s, name); - c002d75a: 85a6 mv a1,s1 - c002d75c: 8522 mv a0,s0 - c002d75e: fd9d90ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26141 + c002d92a: 85a6 mv a1,s1 + c002d92c: 8522 mv a0,s0 + c002d92e: ef7d90ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26149 emit_op(s, (tok == TOK_CONST || tok == TOK_LET) ? - c002d762: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26154 + c002d932: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26162 emit_op(s, OP_scope_put_var_init); - c002d764: 8522 mv a0,s0 - c002d766: cd7d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26155 + c002d934: 8522 mv a0,s0 + c002d936: bf5d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26163 emit_atom(s, name); - c002d76a: 85a6 mv a1,s1 - c002d76c: 8522 mv a0,s0 - c002d76e: d81d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26156 + c002d93a: 85a6 mv a1,s1 + c002d93c: 8522 mv a0,s0 + c002d93e: c9fd90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26164 emit_u16(s, fd->scope_level); - c002d772: 0e0b5583 lhu a1,224(s6) - c002d776: 8522 mv a0,s0 - c002d778: b93d70ef jal ra,c000530a - c002d77c: bf5d j c002d732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26147 + c002d942: 0e0b5583 lhu a1,224(s6) + c002d946: 8522 mv a0,s0 + c002d948: ab1d70ef jal ra,c00053f8 + c002d94c: bf5d j c002d902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26155 if (tok == TOK_CONST) { - c002d77e: fc900793 li a5,-55 - c002d782: 00f91763 bne s2,a5,c002d790 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26148 + c002d94e: fc900793 li a5,-55 + c002d952: 00f91763 bne s2,a5,c002d960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26156 js_parse_error(s, "missing initializer for const variable"); - c002d786: 00032597 auipc a1,0x32 - c002d78a: 6f258593 addi a1,a1,1778 # c005fe78 - c002d78e: b5ed j c002d678 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26151 + c002d956: 00032597 auipc a1,0x32 + c002d95a: 78258593 addi a1,a1,1922 # c00600d8 + c002d95e: b5ed j c002d848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26159 if (tok == TOK_LET) { - c002d790: fd100793 li a5,-47 - c002d794: f8f91fe3 bne s2,a5,c002d732 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26153 + c002d960: fd100793 li a5,-47 + c002d964: f8f91fe3 bne s2,a5,c002d902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26161 emit_op(s, OP_undefined); - c002d798: 4599 li a1,6 - c002d79a: 8522 mv a0,s0 - c002d79c: ca1d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26154 - emit_op(s, OP_scope_put_var_init); - c002d7a0: 0bd00593 li a1,189 - c002d7a4: b7c1 j c002d764 + c002d968: 4599 li a1,6 + c002d96a: 8522 mv a0,s0 + c002d96c: bbfd70ef jal ra,c000552a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26162 + emit_op(s, OP_scope_put_var_init); + c002d970: 0bd00593 li a1,189 + c002d974: b7c1 j c002d934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26170 if ((s->token.val == '[' || s->token.val == '{') - c002d7a6: fdf7f793 andi a5,a5,-33 - c002d7aa: 03a79a63 bne a5,s10,c002d7de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26163 + c002d976: fdf7f793 andi a5,a5,-33 + c002d97a: 03a79a63 bne a5,s10,c002d9ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26171 && js_parse_skip_parens_token(s, &skip_bits, FALSE) == '=') { - c002d7ae: 4601 li a2,0 - c002d7b0: 086c addi a1,sp,28 - c002d7b2: 8522 mv a0,s0 - c002d7b4: eebf90ef jal ra,c002769e - c002d7b8: 03851363 bne a0,s8,c002d7de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26164 + c002d97e: 4601 li a2,0 + c002d980: 086c addi a1,sp,28 + c002d982: 8522 mv a0,s0 + c002d984: eebf90ef jal ra,c002786e + c002d988: 03851363 bne a0,s8,c002d9ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26172 emit_op(s, OP_undefined); - c002d7bc: 4599 li a1,6 - c002d7be: 8522 mv a0,s0 - c002d7c0: c7dd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26165 + c002d98c: 4599 li a1,6 + c002d98e: 8522 mv a0,s0 + c002d990: b9bd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26173 if (js_parse_destructuring_element(s, tok, 0, TRUE, skip_bits & SKIP_HAS_ELLIPSIS, TRUE) < 0) - c002d7c4: 4772 lw a4,28(sp) - c002d7c6: 4785 li a5,1 - c002d7c8: 4685 li a3,1 - c002d7ca: 8b09 andi a4,a4,2 - c002d7cc: 4601 li a2,0 - c002d7ce: 85ca mv a1,s2 - c002d7d0: 8522 mv a0,s0 - c002d7d2: 942fe0ef jal ra,c002b914 - c002d7d6: f60552e3 bgez a0,c002d73a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26174 + c002d994: 4772 lw a4,28(sp) + c002d996: 4785 li a5,1 + c002d998: 4685 li a3,1 + c002d99a: 8b09 andi a4,a4,2 + c002d99c: 4601 li a2,0 + c002d99e: 85ca mv a1,s2 + c002d9a0: 8522 mv a0,s0 + c002d9a2: 942fe0ef jal ra,c002bae4 + c002d9a6: f60552e3 bgez a0,c002d90a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26182 return -1; - c002d7da: 557d li a0,-1 - c002d7dc: a801 j c002d7ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26168 - return js_parse_error(s, "variable name expected"); - c002d7de: 00032597 auipc a1,0x32 - c002d7e2: 6c258593 addi a1,a1,1730 # c005fea0 - c002d7e6: 8522 mv a0,s0 - c002d7e8: ad1f80ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26181 -} - c002d7ec: 60aa ld ra,136(sp) - c002d7ee: 640a ld s0,128(sp) - c002d7f0: 74e6 ld s1,120(sp) - c002d7f2: 7946 ld s2,112(sp) - c002d7f4: 79a6 ld s3,104(sp) - c002d7f6: 7a06 ld s4,96(sp) - c002d7f8: 6ae6 ld s5,88(sp) - c002d7fa: 6b46 ld s6,80(sp) - c002d7fc: 6ba6 ld s7,72(sp) - c002d7fe: 6c06 ld s8,64(sp) - c002d800: 7ce2 ld s9,56(sp) - c002d802: 7d42 ld s10,48(sp) - c002d804: 7da2 ld s11,40(sp) - c002d806: 6149 addi sp,sp,144 - c002d808: 8082 ret + c002d9aa: 557d li a0,-1 + c002d9ac: a801 j c002d9bc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26176 + return js_parse_error(s, "variable name expected"); + c002d9ae: 00032597 auipc a1,0x32 + c002d9b2: 75258593 addi a1,a1,1874 # c0060100 + c002d9b6: 8522 mv a0,s0 + c002d9b8: ad1f80ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26189 +} + c002d9bc: 60aa ld ra,136(sp) + c002d9be: 640a ld s0,128(sp) + c002d9c0: 74e6 ld s1,120(sp) + c002d9c2: 7946 ld s2,112(sp) + c002d9c4: 79a6 ld s3,104(sp) + c002d9c6: 7a06 ld s4,96(sp) + c002d9c8: 6ae6 ld s5,88(sp) + c002d9ca: 6b46 ld s6,80(sp) + c002d9cc: 6ba6 ld s7,72(sp) + c002d9ce: 6c06 ld s8,64(sp) + c002d9d0: 7ce2 ld s9,56(sp) + c002d9d2: 7d42 ld s10,48(sp) + c002d9d4: 7da2 ld s11,40(sp) + c002d9d6: 6149 addi sp,sp,144 + c002d9d8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26184 return 0; - c002d80a: 4501 li a0,0 - c002d80c: b7c5 j c002d7ec + c002d9da: 4501 li a0,0 + c002d9dc: b7c5 j c002d9bc -00000000c002d80e : +00000000c002d9de : js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22940 -{ - c002d80e: 716d addi sp,sp,-272 - c002d810: e222 sd s0,256(sp) - c002d812: f9ca sd s2,240(sp) - c002d814: e1e2 sd s8,192(sp) - c002d816: e606 sd ra,264(sp) - c002d818: fda6 sd s1,248(sp) - c002d81a: f5ce sd s3,232(sp) - c002d81c: f1d2 sd s4,224(sp) - c002d81e: edd6 sd s5,216(sp) - c002d820: e9da sd s6,208(sp) - c002d822: e5de sd s7,200(sp) - c002d824: fd66 sd s9,184(sp) - c002d826: f96a sd s10,176(sp) - c002d828: f56e sd s11,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22942 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22948 +{ + c002d9de: 716d addi sp,sp,-272 + c002d9e0: e222 sd s0,256(sp) + c002d9e2: f9ca sd s2,240(sp) + c002d9e4: e1e2 sd s8,192(sp) + c002d9e6: e606 sd ra,264(sp) + c002d9e8: fda6 sd s1,248(sp) + c002d9ea: f5ce sd s3,232(sp) + c002d9ec: f1d2 sd s4,224(sp) + c002d9ee: edd6 sd s5,216(sp) + c002d9f0: e9da sd s6,208(sp) + c002d9f2: e5de sd s7,200(sp) + c002d9f4: fd66 sd s9,184(sp) + c002d9f6: f96a sd s10,176(sp) + c002d9f8: f56e sd s11,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22950 JSFunctionDef *fd = s->cur_func; - c002d82a: 7524 ld s1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22949 + c002d9fa: 7524 ld s1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22957 const uint8_t *class_start_ptr = s->token.ptr; - c002d82c: 711c ld a5,32(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22941 + c002d9fc: 711c ld a5,32(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22949 JSContext *ctx = s->ctx; - c002d82e: 00053a83 ld s5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22954 + c002d9fe: 00053a83 ld s5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22962 saved_js_mode = fd->js_mode; - c002d832: 0864cd03 lbu s10,134(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22949 + c002da02: 0864cd03 lbu s10,134(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22957 const uint8_t *class_start_ptr = s->token.ptr; - c002d836: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22940 + c002da06: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22948 { - c002d838: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22955 + c002da08: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22963 fd->js_mode |= JS_MODE_STRICT; - c002d83a: 001d6793 ori a5,s10,1 - c002d83e: 08f48323 sb a5,134(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22940 + c002da0a: 001d6793 ori a5,s10,1 + c002da0e: 08f48323 sb a5,134(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22948 { - c002d842: 892e mv s2,a1 - c002d844: 8c32 mv s8,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 + c002da12: 892e mv s2,a1 + c002da14: 8c32 mv s8,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22951 JSAtom name = JS_ATOM_NULL, class_name = JS_ATOM_NULL, class_name1; - c002d846: c282 sw zero,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22956 + c002da16: c282 sw zero,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22964 if (next_token(s)) - c002d848: b4ef90ef jal ra,c0026b96 - c002d84c: ed01 bnez a0,c002d864 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22958 + c002da18: b4ef90ef jal ra,c0026d66 + c002da1c: ed01 bnez a0,c002da34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22966 if (s->token.val == TOK_IDENT) { - c002d84e: 4c18 lw a4,24(s0) - c002d850: f8300793 li a5,-125 - c002d854: 8b2a mv s6,a0 - c002d856: 02f71663 bne a4,a5,c002d882 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22959 + c002da1e: 4c18 lw a4,24(s0) + c002da20: f8300793 li a5,-125 + c002da24: 8b2a mv s6,a0 + c002da26: 02f71663 bne a4,a5,c002da52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22967 if (s->token.u.ident.is_reserved) { - c002d85a: 581c lw a5,48(s0) - c002d85c: c799 beqz a5,c002d86a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22960 + c002da2a: 581c lw a5,48(s0) + c002da2c: c799 beqz a5,c002da3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22968 js_parse_error_reserved_identifier(s); - c002d85e: 8522 mv a0,s0 - c002d860: c42fa0ef jal ra,c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22944 + c002da2e: 8522 mv a0,s0 + c002da30: c42fa0ef jal ra,c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22952 JSAtom class_var_name = JS_ATOM_NULL; - c002d864: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 + c002da34: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22951 JSAtom name = JS_ATOM_NULL, class_name = JS_ATOM_NULL, class_name1; - c002d866: 4981 li s3,0 - c002d868: a8a5 j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22963 + c002da36: 4981 li s3,0 + c002da38: a8a5 j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22971 class_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002d86a: 540c lw a1,40(s0) - c002d86c: 8556 mv a0,s5 - c002d86e: c5dd90ef jal ra,c00074ca - c002d872: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22964 + c002da3a: 540c lw a1,40(s0) + c002da3c: 8556 mv a0,s5 + c002da3e: b7bd90ef jal ra,c00075b8 + c002da42: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22972 if (next_token(s)) - c002d876: 8522 mv a0,s0 - c002d878: b1ef90ef jal ra,c0026b96 - c002d87c: c11d beqz a0,c002d8a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22944 + c002da46: 8522 mv a0,s0 + c002da48: b1ef90ef jal ra,c0026d66 + c002da4c: c11d beqz a0,c002da72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22952 JSAtom class_var_name = JS_ATOM_NULL; - c002d87e: 4a01 li s4,0 - c002d880: a085 j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22966 + c002da4e: 4a01 li s4,0 + c002da50: a085 j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22974 } else if (!is_class_expr && export_flag != JS_PARSE_EXPORT_DEFAULT) { - c002d882: 06091f63 bnez s2,c002d900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22966 (discriminator 1) - c002d886: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 (discriminator 1) + c002da52: 06091f63 bnez s2,c002dad0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22974 (discriminator 1) + c002da56: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22951 (discriminator 1) JSAtom name = JS_ATOM_NULL, class_name = JS_ATOM_NULL, class_name1; - c002d888: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22972 (discriminator 1) + c002da58: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22980 (discriminator 1) class_var_name = JS_ATOM__default_; /* export default */ - c002d88a: 07d00593 li a1,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22966 (discriminator 1) + c002da5a: 07d00593 li a1,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22974 (discriminator 1) } else if (!is_class_expr && export_flag != JS_PARSE_EXPORT_DEFAULT) { - c002d88e: 02fc0263 beq s8,a5,c002d8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22967 + c002da5e: 02fc0263 beq s8,a5,c002da82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22975 js_parse_error(s, "class statement requires a name"); - c002d892: 00032597 auipc a1,0x32 - c002d896: 64e58593 addi a1,a1,1614 # c005fee0 - c002d89a: 8522 mv a0,s0 - c002d89c: a1df80ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22968 + c002da62: 00032597 auipc a1,0x32 + c002da66: 6de58593 addi a1,a1,1758 # c0060140 + c002da6a: 8522 mv a0,s0 + c002da6c: a1df80ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22976 goto fail; - c002d8a0: bff9 j c002d87e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22944 + c002da70: bff9 j c002da4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22952 JSAtom class_var_name = JS_ATOM_NULL; - c002d8a2: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22970 + c002da72: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22978 if (!is_class_expr) { - c002d8a4: 00091c63 bnez s2,c002d8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22972 + c002da74: 00091c63 bnez s2,c002da8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22980 class_var_name = JS_ATOM__default_; /* export default */ - c002d8a8: 07d00593 li a1,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22971 + c002da78: 07d00593 li a1,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22979 if (class_name == JS_ATOM_NULL) - c002d8ac: 00098363 beqz s3,c002d8b2 - c002d8b0: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22975 + c002da7c: 00098363 beqz s3,c002da82 + c002da80: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22983 class_var_name = JS_DupAtom(ctx, class_var_name); - c002d8b2: 8556 mv a0,s5 - c002d8b4: c17d90ef jal ra,c00074ca - c002d8b8: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22978 + c002da82: 8556 mv a0,s5 + c002da84: b35d90ef jal ra,c00075b8 + c002da88: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22986 push_scope(s); - c002d8bc: 8522 mv a0,s0 - c002d8be: c4fea0ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22980 + c002da8c: 8522 mv a0,s0 + c002da8e: c4fea0ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22988 if (s->token.val == TOK_EXTENDS) { - c002d8c2: 4c18 lw a4,24(s0) - c002d8c4: fcc00793 li a5,-52 - c002d8c8: 02f71f63 bne a4,a5,c002d906 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22982 + c002da92: 4c18 lw a4,24(s0) + c002da94: fcc00793 li a5,-52 + c002da98: 02f71f63 bne a4,a5,c002dad6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22990 if (next_token(s)) - c002d8cc: 8522 mv a0,s0 - c002d8ce: ac8f90ef jal ra,c0026b96 - c002d8d2: e519 bnez a0,c002d8e0 + c002da9c: 8522 mv a0,s0 + c002da9e: ac8f90ef jal ra,c0026d66 + c002daa2: e519 bnez a0,c002dab0 js_parse_left_hand_side_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22799 return js_parse_postfix_expr(s, PF_POSTFIX_CALL); - c002d8d4: 4589 li a1,2 - c002d8d6: 8522 mv a0,s0 - c002d8d8: 8dbfc0ef jal ra,c002a1b2 + c002daa4: 4589 li a1,2 + c002daa6: 8522 mv a0,s0 + c002daa8: 8dbfc0ef jal ra,c002a382 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22981 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22989 class_flags = JS_DEFINE_CLASS_HAS_HERITAGE; - c002d8dc: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22984 + c002daac: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22992 if (js_parse_left_hand_side_expr(s)) - c002d8de: c905 beqz a0,c002d90e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23438 + c002daae: c905 beqz a0,c002dade +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23446 JS_FreeAtom(ctx, name); - c002d8e0: 4596 lw a1,68(sp) - c002d8e2: 8556 mv a0,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23442 + c002dab0: 4596 lw a1,68(sp) + c002dab2: 8556 mv a0,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23450 return -1; - c002d8e4: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23438 + c002dab4: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23446 JS_FreeAtom(ctx, name); - c002d8e6: c27d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23439 + c002dab6: b45d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23447 JS_FreeAtom(ctx, class_name); - c002d8ea: 85ce mv a1,s3 - c002d8ec: 8556 mv a0,s5 - c002d8ee: c1fd90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23440 + c002daba: 85ce mv a1,s3 + c002dabc: 8556 mv a0,s5 + c002dabe: b3dd90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23448 JS_FreeAtom(ctx, class_var_name); - c002d8f2: 85d2 mv a1,s4 - c002d8f4: 8556 mv a0,s5 - c002d8f6: c17d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23441 + c002dac2: 85d2 mv a1,s4 + c002dac4: 8556 mv a0,s5 + c002dac6: b35d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23449 fd->js_mode = saved_js_mode; - c002d8fa: 09a48323 sb s10,134(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23442 + c002daca: 09a48323 sb s10,134(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23450 return -1; - c002d8fe: a405 j c002db1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22943 + c002dace: a405 j c002dcee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22951 JSAtom name = JS_ATOM_NULL, class_name = JS_ATOM_NULL, class_name1; - c002d900: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22944 + c002dad0: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22952 JSAtom class_var_name = JS_ATOM_NULL; - c002d902: 4a01 li s4,0 - c002d904: bf65 j c002d8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22987 + c002dad2: 4a01 li s4,0 + c002dad4: bf65 j c002da8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22995 emit_op(s, OP_undefined); - c002d906: 4599 li a1,6 - c002d908: 8522 mv a0,s0 - c002d90a: b33d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22991 + c002dad6: 4599 li a1,6 + c002dad8: 8522 mv a0,s0 + c002dada: a51d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22999 if (class_name != JS_ATOM_NULL) { - c002d90e: 22099863 bnez s3,c002db3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22997 + c002dade: 22099863 bnez s3,c002dd0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23005 if (js_parse_expect(s, '{')) - c002d912: 07b00593 li a1,123 - c002d916: 8522 mv a0,s0 - c002d918: 9cbfa0ef jal ra,c00282e2 - c002d91c: f171 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23001 + c002dae2: 07b00593 li a1,123 + c002dae6: 8522 mv a0,s0 + c002dae8: 9cbfa0ef jal ra,c00284b2 + c002daec: f171 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23009 push_scope(s); - c002d91e: 8522 mv a0,s0 - c002d920: bedea0ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23003 + c002daee: 8522 mv a0,s0 + c002daf0: bedea0ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23011 emit_op(s, OP_push_const); - c002d924: 4589 li a1,2 - c002d926: 8522 mv a0,s0 - c002d928: b15d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23004 + c002daf4: 4589 li a1,2 + c002daf6: 8522 mv a0,s0 + c002daf8: a33d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23012 ctor_cpool_offset = fd->byte_code.size; - c002d92c: 1384b783 ld a5,312(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23005 + c002dafc: 1384b783 ld a5,312(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23013 emit_u32(s, 0); /* will be patched at the end of the class parsing */ - c002d930: 4581 li a1,0 - c002d932: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23004 + c002db00: 4581 li a1,0 + c002db02: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23012 ctor_cpool_offset = fd->byte_code.size; - c002d934: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23005 + c002db04: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23013 emit_u32(s, 0); /* will be patched at the end of the class parsing */ - c002d936: 894e mv s2,s3 - c002d938: c9bd70ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23007 + c002db06: 894e mv s2,s3 + c002db08: bb9d70ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23015 if (class_name == JS_ATOM_NULL) { - c002d93c: 00099763 bnez s3,c002d94a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23009 + c002db0c: 00099763 bnez s3,c002db1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23017 class_name1 = JS_ATOM_default; - c002d940: 4959 li s2,22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23008 + c002db10: 4959 li s2,22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23016 if (class_var_name != JS_ATOM_NULL) - c002d942: 000a1463 bnez s4,c002d94a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23011 + c002db12: 000a1463 bnez s4,c002db1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23019 class_name1 = JS_ATOM_empty_string; - c002d946: 02f00913 li s2,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23016 + c002db16: 02f00913 li s2,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23024 emit_op(s, OP_define_class); - c002d94a: 05600593 li a1,86 - c002d94e: 8522 mv a0,s0 - c002d950: aedd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23017 + c002db1a: 05600593 li a1,86 + c002db1e: 8522 mv a0,s0 + c002db20: a0bd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23025 emit_atom(s, class_name1); - c002d954: 85ca mv a1,s2 - c002d956: 8522 mv a0,s0 - c002d958: b97d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23018 + c002db24: 85ca mv a1,s2 + c002db26: 8522 mv a0,s0 + c002db28: ab5d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23026 emit_u8(s, class_flags); - c002d95c: 0ffb7593 zext.b a1,s6 - c002d960: 8522 mv a0,s0 - c002d962: ef6d70ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23019 + c002db2c: 0ffb7593 zext.b a1,s6 + c002db30: 8522 mv a0,s0 + c002db32: d26d70ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23027 define_class_offset = fd->last_opcode_pos; - c002d966: 1604a783 lw a5,352(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23023 + c002db36: 1604a783 lw a5,352(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23031 cf->fields_init_fd = NULL; - c002d96a: f882 sd zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23024 + c002db3a: f882 sd zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23032 cf->computed_fields_count = 0; - c002d96c: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23019 + c002db3c: fc82 sd zero,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23027 define_class_offset = fd->last_opcode_pos; - c002d96e: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23026 + c002db3e: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23034 cf->is_static = i; - c002d970: 4785 li a5,1 - c002d972: cf3e sw a5,156(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23266 + c002db40: 4785 li a5,1 + c002db42: cf3e sw a5,156(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23274 if (class_flags & JS_DEFINE_CLASS_HAS_HERITAGE) - c002d974: 008b079b addiw a5,s6,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23026 + c002db44: 008b079b addiw a5,s6,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23034 cf->is_static = i; - c002d978: c302 sw zero,132(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23023 + c002db48: c302 sw zero,132(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23031 cf->fields_init_fd = NULL; - c002d97a: e502 sd zero,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23024 + c002db4a: e502 sd zero,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23032 cf->computed_fields_count = 0; - c002d97c: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23029 + c002db4c: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23037 ctor_fd = NULL; - c002d97e: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23266 + c002db4e: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23274 if (class_flags & JS_DEFINE_CLASS_HAS_HERITAGE) - c002d980: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23030 + c002db50: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23038 while (s->token.val != '}') { - c002d982: 4c1c lw a5,24(s0) - c002d984: 07d00713 li a4,125 - c002d988: 1ce79463 bne a5,a4,c002db50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23317 + c002db52: 4c1c lw a5,24(s0) + c002db54: 07d00713 li a4,125 + c002db58: 1ce79463 bne a5,a4,c002dd20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23325 if (!ctor_fd) { - c002d98c: 67c6 ld a5,80(sp) - c002d98e: 76078763 beqz a5,c002e0fc + c002db5c: 67c6 ld a5,80(sp) + c002db5e: 76078763 beqz a5,c002e2cc put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c002d992: 1304b783 ld a5,304(s1) + c002db62: 1304b783 ld a5,304(s1) js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23330 put_u32(fd->byte_code.buf + ctor_cpool_offset, ctor_fd->parent_cpool_idx); - c002d996: 5702 lw a4,32(sp) + c002db66: 5702 lw a4,32(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c002d998: 97ba add a5,a5,a4 + c002db68: 97ba add a5,a5,a4 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23322 - c002d99a: 6746 ld a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23330 + c002db6a: 6746 ld a4,80(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c002d99c: 01074683 lbu a3,16(a4) - c002d9a0: 00d78023 sb a3,0(a5) - c002d9a4: 01174683 lbu a3,17(a4) - c002d9a8: 00d780a3 sb a3,1(a5) - c002d9ac: 01274683 lbu a3,18(a4) - c002d9b0: 00d78123 sb a3,2(a5) - c002d9b4: 01374703 lbu a4,19(a4) - c002d9b8: 00e781a3 sb a4,3(a5) + c002db6c: 01074683 lbu a3,16(a4) + c002db70: 00d78023 sb a3,0(a5) + c002db74: 01174683 lbu a3,17(a4) + c002db78: 00d780a3 sb a3,1(a5) + c002db7c: 01274683 lbu a3,18(a4) + c002db80: 00d78123 sb a3,2(a5) + c002db84: 01374703 lbu a4,19(a4) + c002db88: 00e781a3 sb a4,3(a5) js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23325 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23333 if (!(fd->js_mode & JS_MODE_STRIP)) { - c002d9bc: 0864c783 lbu a5,134(s1) - c002d9c0: 8b89 andi a5,a5,2 - c002d9c2: 7a078b63 beqz a5,c002e178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23335 + c002db8c: 0864c783 lbu a5,134(s1) + c002db90: 8b89 andi a5,a5,2 + c002db92: 7a078b63 beqz a5,c002e348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23343 if (next_token(s)) - c002d9c6: 8522 mv a0,s0 - c002d9c8: 9cef90ef jal ra,c0026b96 - c002d9cc: 892a mv s2,a0 - c002d9ce: f00519e3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23342 + c002db96: 8522 mv a0,s0 + c002db98: 9cef90ef jal ra,c0026d66 + c002db9c: 892a mv s2,a0 + c002db9e: f00519e3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23350 if (cf->need_brand) { - c002d9d2: 57f6 lw a5,124(sp) - c002d9d4: cf8d beqz a5,c002da0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23344 + c002dba2: 57f6 lw a5,124(sp) + c002dba4: cf8d beqz a5,c002dbde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23352 emit_op(s, OP_dup); - c002d9d6: 45c5 li a1,17 - c002d9d8: 8522 mv a0,s0 - c002d9da: a63d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23345 + c002dba6: 45c5 li a1,17 + c002dba8: 8522 mv a0,s0 + c002dbaa: 981d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23353 emit_op(s, OP_null); - c002d9de: 459d li a1,7 - c002d9e0: 8522 mv a0,s0 - c002d9e2: a5bd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23346 + c002dbae: 459d li a1,7 + c002dbb0: 8522 mv a0,s0 + c002dbb2: 979d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23354 emit_op(s, OP_swap); - c002d9e6: 45ed li a1,27 - c002d9e8: 8522 mv a0,s0 - c002d9ea: a53d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23347 + c002dbb6: 45ed li a1,27 + c002dbb8: 8522 mv a0,s0 + c002dbba: 971d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23355 emit_op(s, OP_add_brand); - c002d9ee: 02d00593 li a1,45 - c002d9f2: 8522 mv a0,s0 - c002d9f4: a49d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23350 + c002dbbe: 02d00593 li a1,45 + c002dbc2: 8522 mv a0,s0 + c002dbc4: 967d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23358 if (!cf->fields_init_fd) { - c002d9f8: 77c6 ld a5,112(sp) - c002d9fa: 7a078863 beqz a5,c002e1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23356 + c002dbc8: 77c6 ld a5,112(sp) + c002dbca: 7a078863 beqz a5,c002e37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23364 cf->fields_init_fd->byte_code.buf[cf->brand_push_pos] = OP_push_true; - c002d9fe: 77c6 ld a5,112(sp) - c002da00: 470a lw a4,128(sp) - c002da02: 1307b783 ld a5,304(a5) - c002da06: 97ba add a5,a5,a4 - c002da08: 4729 li a4,10 - c002da0a: 00e78023 sb a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23361 + c002dbce: 77c6 ld a5,112(sp) + c002dbd0: 470a lw a4,128(sp) + c002dbd2: 1307b783 ld a5,304(a5) + c002dbd6: 97ba add a5,a5,a4 + c002dbd8: 4729 li a4,10 + c002dbda: 00e78023 sb a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23369 var_idx = define_var(s, fd, JS_ATOM_class_fields_init, - c002da0e: 4689 li a3,2 - c002da10: 07700613 li a2,119 - c002da14: 85a6 mv a1,s1 - c002da16: 8522 mv a0,s0 - c002da18: bb8fa0ef jal ra,c0027dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23363 + c002dbde: 4689 li a3,2 + c002dbe0: 07700613 li a2,119 + c002dbe4: 85a6 mv a1,s1 + c002dbe6: 8522 mv a0,s0 + c002dbe8: bb8fa0ef jal ra,c0027fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23371 if (var_idx < 0) - c002da1c: ec0542e3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23365 + c002dbec: ec0542e3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23373 if (cf->fields_init_fd) { - c002da20: 77c6 ld a5,112(sp) - c002da22: 78078c63 beqz a5,c002e1ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23366 + c002dbf0: 77c6 ld a5,112(sp) + c002dbf2: 78078c63 beqz a5,c002e38a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23374 emit_class_init_end(s, cf); - c002da26: 188c addi a1,sp,112 - c002da28: 8522 mv a0,s0 - c002da2a: fa8ea0ef jal ra,c00181d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23370 + c002dbf6: 188c addi a1,sp,112 + c002dbf8: 8522 mv a0,s0 + c002dbfa: fa8ea0ef jal ra,c00183a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23378 emit_op(s, OP_scope_put_var_init); - c002da2e: 0bd00593 li a1,189 - c002da32: 8522 mv a0,s0 - c002da34: a09d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23371 + c002dbfe: 0bd00593 li a1,189 + c002dc02: 8522 mv a0,s0 + c002dc04: 927d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23379 emit_atom(s, JS_ATOM_class_fields_init); - c002da38: 07700593 li a1,119 - c002da3c: 8522 mv a0,s0 - c002da3e: ab1d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23372 + c002dc08: 07700593 li a1,119 + c002dc0c: 8522 mv a0,s0 + c002dc0e: 9cfd90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23380 emit_u16(s, s->cur_func->scope_level); - c002da42: 743c ld a5,104(s0) - c002da44: 8522 mv a0,s0 - c002da46: 0e07d583 lhu a1,224(a5) - c002da4a: 8c1d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23376 + c002dc12: 743c ld a5,104(s0) + c002dc14: 8522 mv a0,s0 + c002dc16: 0e07d583 lhu a1,224(a5) + c002dc1a: fded70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23384 emit_op(s, OP_drop); - c002da4e: 45b9 li a1,14 - c002da50: 8522 mv a0,s0 - c002da52: 9ebd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23378 + c002dc1e: 45b9 li a1,14 + c002dc20: 8522 mv a0,s0 + c002dc22: 909d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23386 if (class_fields[1].need_brand) { - c002da56: 47da lw a5,148(sp) - c002da58: cf91 beqz a5,c002da74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23380 + c002dc26: 47da lw a5,148(sp) + c002dc28: cf91 beqz a5,c002dc44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23388 emit_op(s, OP_dup); - c002da5a: 45c5 li a1,17 - c002da5c: 8522 mv a0,s0 - c002da5e: 9dfd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23381 + c002dc2a: 45c5 li a1,17 + c002dc2c: 8522 mv a0,s0 + c002dc2e: 8fdd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23389 emit_op(s, OP_dup); - c002da62: 45c5 li a1,17 - c002da64: 8522 mv a0,s0 - c002da66: 9d7d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23382 + c002dc32: 45c5 li a1,17 + c002dc34: 8522 mv a0,s0 + c002dc36: 8f5d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23390 emit_op(s, OP_add_brand); - c002da6a: 02d00593 li a1,45 - c002da6e: 8522 mv a0,s0 - c002da70: 9cdd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23385 + c002dc3a: 02d00593 li a1,45 + c002dc3e: 8522 mv a0,s0 + c002dc40: 8ebd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23393 if (class_name != JS_ATOM_NULL) { - c002da74: 02098463 beqz s3,c002da9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23389 + c002dc44: 02098463 beqz s3,c002dc6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23397 emit_op(s, OP_dup); - c002da78: 45c5 li a1,17 - c002da7a: 8522 mv a0,s0 - c002da7c: 9c1d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23390 + c002dc48: 45c5 li a1,17 + c002dc4a: 8522 mv a0,s0 + c002dc4c: 8dfd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23398 emit_op(s, OP_scope_put_var_init); - c002da80: 0bd00593 li a1,189 - c002da84: 8522 mv a0,s0 - c002da86: 9b7d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23391 + c002dc50: 0bd00593 li a1,189 + c002dc54: 8522 mv a0,s0 + c002dc56: 8d5d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23399 emit_atom(s, class_name); - c002da8a: 85ce mv a1,s3 - c002da8c: 8522 mv a0,s0 - c002da8e: a61d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23392 + c002dc5a: 85ce mv a1,s3 + c002dc5c: 8522 mv a0,s0 + c002dc5e: 97fd90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23400 emit_u16(s, fd->scope_level); - c002da92: 0e04d583 lhu a1,224(s1) - c002da96: 8522 mv a0,s0 - c002da98: 873d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23396 + c002dc62: 0e04d583 lhu a1,224(s1) + c002dc66: 8522 mv a0,s0 + c002dc68: f90d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23404 if (class_fields[1].fields_init_fd != NULL) { - c002da9c: 67aa ld a5,136(sp) - c002da9e: c795 beqz a5,c002daca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23398 + c002dc6c: 67aa ld a5,136(sp) + c002dc6e: c795 beqz a5,c002dc9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23406 emit_op(s, OP_dup); - c002daa0: 45c5 li a1,17 - c002daa2: 8522 mv a0,s0 - c002daa4: 999d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23399 + c002dc70: 45c5 li a1,17 + c002dc72: 8522 mv a0,s0 + c002dc74: 8b7d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23407 emit_class_init_end(s, cf); - c002daa8: 012c addi a1,sp,136 - c002daaa: 8522 mv a0,s0 - c002daac: f26ea0ef jal ra,c00181d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23400 + c002dc78: 012c addi a1,sp,136 + c002dc7a: 8522 mv a0,s0 + c002dc7c: f26ea0ef jal ra,c00183a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23408 emit_op(s, OP_call_method); - c002dab0: 02400593 li a1,36 - c002dab4: 8522 mv a0,s0 - c002dab6: 987d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23401 + c002dc80: 02400593 li a1,36 + c002dc84: 8522 mv a0,s0 + c002dc86: 8a5d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23409 emit_u16(s, 0); - c002daba: 4581 li a1,0 - c002dabc: 8522 mv a0,s0 - c002dabe: 84dd70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23402 + c002dc8a: 4581 li a1,0 + c002dc8c: 8522 mv a0,s0 + c002dc8e: f6ad70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23410 emit_op(s, OP_drop); - c002dac2: 45b9 li a1,14 - c002dac4: 8522 mv a0,s0 - c002dac6: 977d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23405 + c002dc92: 45b9 li a1,14 + c002dc94: 8522 mv a0,s0 + c002dc96: 895d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23413 pop_scope(s); - c002daca: 8522 mv a0,s0 - c002dacc: a6dd70ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23406 + c002dc9a: 8522 mv a0,s0 + c002dc9c: 98bd70ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23414 pop_scope(s); - c002dad0: 8522 mv a0,s0 - c002dad2: a67d70ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23409 + c002dca0: 8522 mv a0,s0 + c002dca2: 985d70ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23417 if (class_var_name != JS_ATOM_NULL) { - c002dad6: 6e0a0863 beqz s4,c002e1c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23410 + c002dca6: 6e0a0863 beqz s4,c002e396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23418 if (define_var(s, fd, class_var_name, JS_VAR_DEF_LET) < 0) - c002dada: 4685 li a3,1 - c002dadc: 8652 mv a2,s4 - c002dade: 85a6 mv a1,s1 - c002dae0: 8522 mv a0,s0 - c002dae2: aeefa0ef jal ra,c0027dd0 - c002dae6: de054de3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23412 + c002dcaa: 4685 li a3,1 + c002dcac: 8652 mv a2,s4 + c002dcae: 85a6 mv a1,s1 + c002dcb0: 8522 mv a0,s0 + c002dcb2: aeefa0ef jal ra,c0027fa0 + c002dcb6: de054de3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23420 emit_op(s, OP_scope_put_var_init); - c002daea: 0bd00593 li a1,189 - c002daee: 8522 mv a0,s0 - c002daf0: 94dd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23413 + c002dcba: 0bd00593 li a1,189 + c002dcbe: 8522 mv a0,s0 + c002dcc0: 86bd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23421 emit_atom(s, class_var_name); - c002daf4: 85d2 mv a1,s4 - c002daf6: 8522 mv a0,s0 - c002daf8: 9f7d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23414 + c002dcc4: 85d2 mv a1,s4 + c002dcc6: 8522 mv a0,s0 + c002dcc8: 915d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23422 emit_u16(s, fd->scope_level); - c002dafc: 0e04d583 lhu a1,224(s1) - c002db00: 8522 mv a0,s0 - c002db02: 809d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23425 - if (export_flag != JS_PARSE_EXPORT_NONE) { - c002db06: 6e0c1163 bnez s8,c002e1e8 + c002dccc: 0e04d583 lhu a1,224(s1) + c002dcd0: 8522 mv a0,s0 + c002dcd2: f26d70ef jal ra,c00053f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23433 + if (export_flag != JS_PARSE_EXPORT_NONE) { + c002dcd6: 6e0c1163 bnez s8,c002e3b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23441 JS_FreeAtom(ctx, class_name); - c002db0a: 85ce mv a1,s3 - c002db0c: 8556 mv a0,s5 - c002db0e: 9ffd90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23434 + c002dcda: 85ce mv a1,s3 + c002dcdc: 8556 mv a0,s5 + c002dcde: 91dd90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23442 JS_FreeAtom(ctx, class_var_name); - c002db12: 85d2 mv a1,s4 - c002db14: 8556 mv a0,s5 - c002db16: 9f7d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23435 - fd->js_mode = saved_js_mode; - c002db1a: 09a48323 sb s10,134(s1) + c002dce2: 85d2 mv a1,s4 + c002dce4: 8556 mv a0,s5 + c002dce6: 915d90ef jal ra,c00075fa /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23443 -} - c002db1e: 60b2 ld ra,264(sp) - c002db20: 6412 ld s0,256(sp) - c002db22: 74ee ld s1,248(sp) - c002db24: 79ae ld s3,232(sp) - c002db26: 7a0e ld s4,224(sp) - c002db28: 6aee ld s5,216(sp) - c002db2a: 6b4e ld s6,208(sp) - c002db2c: 6bae ld s7,200(sp) - c002db2e: 6c0e ld s8,192(sp) - c002db30: 7cea ld s9,184(sp) - c002db32: 7d4a ld s10,176(sp) - c002db34: 7daa ld s11,168(sp) - c002db36: 854a mv a0,s2 - c002db38: 794e ld s2,240(sp) - c002db3a: 6151 addi sp,sp,272 - c002db3c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22992 + fd->js_mode = saved_js_mode; + c002dcea: 09a48323 sb s10,134(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23451 +} + c002dcee: 60b2 ld ra,264(sp) + c002dcf0: 6412 ld s0,256(sp) + c002dcf2: 74ee ld s1,248(sp) + c002dcf4: 79ae ld s3,232(sp) + c002dcf6: 7a0e ld s4,224(sp) + c002dcf8: 6aee ld s5,216(sp) + c002dcfa: 6b4e ld s6,208(sp) + c002dcfc: 6bae ld s7,200(sp) + c002dcfe: 6c0e ld s8,192(sp) + c002dd00: 7cea ld s9,184(sp) + c002dd02: 7d4a ld s10,176(sp) + c002dd04: 7daa ld s11,168(sp) + c002dd06: 854a mv a0,s2 + c002dd08: 794e ld s2,240(sp) + c002dd0a: 6151 addi sp,sp,272 + c002dd0c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23000 class_name_var_idx = define_var(s, fd, class_name, JS_VAR_DEF_CONST); - c002db3e: 4689 li a3,2 - c002db40: 864e mv a2,s3 - c002db42: 85a6 mv a1,s1 - c002db44: 8522 mv a0,s0 - c002db46: a8afa0ef jal ra,c0027dd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22993 + c002dd0e: 4689 li a3,2 + c002dd10: 864e mv a2,s3 + c002dd12: 85a6 mv a1,s1 + c002dd14: 8522 mv a0,s0 + c002dd16: a8afa0ef jal ra,c0027fa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23001 if (class_name_var_idx < 0) - c002db4a: dc0554e3 bgez a0,c002d912 - c002db4e: bb49 j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23031 + c002dd1a: dc0554e3 bgez a0,c002dae2 + c002dd1e: bb49 j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23039 if (s->token.val == ';') { - c002db50: 03b00713 li a4,59 - c002db54: 00e79863 bne a5,a4,c002db64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23032 + c002dd20: 03b00713 li a4,59 + c002dd24: 00e79863 bne a5,a4,c002dd34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23040 if (next_token(s)) - c002db58: 8522 mv a0,s0 - c002db5a: 83cf90ef jal ra,c0026b96 - c002db5e: e20502e3 beqz a0,c002d982 - c002db62: bbbd j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23038 + c002dd28: 8522 mv a0,s0 + c002dd2a: 83cf90ef jal ra,c0026d66 + c002dd2e: e20502e3 beqz a0,c002db52 + c002dd32: bbbd j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23046 if (is_static) { - c002db64: fd600713 li a4,-42 - c002db68: 0ee79b63 bne a5,a4,c002dc5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23039 + c002dd34: fd600713 li a4,-42 + c002dd38: 0ee79b63 bne a5,a4,c002de2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23047 if (next_token(s)) - c002db6c: 8522 mv a0,s0 - c002db6e: 828f90ef jal ra,c0026b96 - c002db72: 872a mv a4,a0 - c002db74: d60516e3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23041 + c002dd3c: 8522 mv a0,s0 + c002dd3e: 828f90ef jal ra,c0026d66 + c002dd42: 872a mv a4,a0 + c002dd44: d60516e3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23049 if (s->token.val == '{') { - c002db78: 4c1c lw a5,24(s0) - c002db7a: 07b00693 li a3,123 - c002db7e: 08d79163 bne a5,a3,c002dc00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23044 + c002dd48: 4c1c lw a5,24(s0) + c002dd4a: 07b00693 li a3,123 + c002dd4e: 08d79163 bne a5,a3,c002ddd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23052 if (!cf->fields_init_fd) { - c002db82: 67aa ld a5,136(sp) - c002db84: cba5 beqz a5,c002dbf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23048 + c002dd52: 67aa ld a5,136(sp) + c002dd54: cba5 beqz a5,c002ddc4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23056 s->cur_func = cf->fields_init_fd; - c002db86: 67aa ld a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23053 + c002dd56: 67aa ld a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23061 if (js_parse_function_decl2(s, JS_PARSE_FUNC_CLASS_STATIC_INIT, - c002db88: 7018 ld a4,32(s0) - c002db8a: 05810893 addi a7,sp,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23048 + c002dd58: 7018 ld a4,32(s0) + c002dd5a: 05810893 addi a7,sp,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23056 s->cur_func = cf->fields_init_fd; - c002db8e: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23053 + c002dd5e: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23061 if (js_parse_function_decl2(s, JS_PARSE_FUNC_CLASS_STATIC_INIT, - c002db90: 4c5c lw a5,28(s0) - c002db92: 4801 li a6,0 - c002db94: 4681 li a3,0 - c002db96: 4601 li a2,0 - c002db98: 459d li a1,7 - c002db9a: 8522 mv a0,s0 - c002db9c: e2afe0ef jal ra,c002c1c6 - c002dba0: d40540e3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23060 + c002dd60: 4c5c lw a5,28(s0) + c002dd62: 4801 li a6,0 + c002dd64: 4681 li a3,0 + c002dd66: 4601 li a2,0 + c002dd68: 459d li a1,7 + c002dd6a: 8522 mv a0,s0 + c002dd6c: e2afe0ef jal ra,c002c396 + c002dd70: d40540e3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23068 push_scope(s); - c002dba4: 8522 mv a0,s0 - c002dba6: 967ea0ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23061 + c002dd74: 8522 mv a0,s0 + c002dd76: 967ea0ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23069 emit_op(s, OP_scope_get_var); - c002dbaa: 0b800593 li a1,184 - c002dbae: 8522 mv a0,s0 - c002dbb0: 88dd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23062 + c002dd7a: 0b800593 li a1,184 + c002dd7e: 8522 mv a0,s0 + c002dd80: faad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23070 emit_atom(s, JS_ATOM_this); - c002dbb4: 45a1 li a1,8 - c002dbb6: 8522 mv a0,s0 - c002dbb8: 937d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23063 + c002dd84: 45a1 li a1,8 + c002dd86: 8522 mv a0,s0 + c002dd88: 855d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23071 emit_u16(s, 0); - c002dbbc: 4581 li a1,0 - c002dbbe: 8522 mv a0,s0 - c002dbc0: f4ad70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23065 + c002dd8c: 4581 li a1,0 + c002dd8e: 8522 mv a0,s0 + c002dd90: e68d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23073 emit_op(s, OP_swap); - c002dbc4: 45ed li a1,27 - c002dbc6: 8522 mv a0,s0 - c002dbc8: 875d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23067 + c002dd94: 45ed li a1,27 + c002dd96: 8522 mv a0,s0 + c002dd98: f92d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23075 emit_op(s, OP_call_method); - c002dbcc: 02400593 li a1,36 - c002dbd0: 8522 mv a0,s0 - c002dbd2: 86bd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23068 + c002dd9c: 02400593 li a1,36 + c002dda0: 8522 mv a0,s0 + c002dda2: f88d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23076 emit_u16(s, 0); - c002dbd6: 4581 li a1,0 - c002dbd8: 8522 mv a0,s0 - c002dbda: f30d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23070 + c002dda6: 4581 li a1,0 + c002dda8: 8522 mv a0,s0 + c002ddaa: e4ed70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23078 emit_op(s, OP_drop); - c002dbde: 45b9 li a1,14 - c002dbe0: 8522 mv a0,s0 - c002dbe2: 85bd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23072 + c002ddae: 45b9 li a1,14 + c002ddb0: 8522 mv a0,s0 + c002ddb2: f78d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23080 pop_scope(s); - c002dbe6: 8522 mv a0,s0 - c002dbe8: 951d70ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23073 + c002ddb6: 8522 mv a0,s0 + c002ddb8: 86fd70ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23081 s->cur_func = s->cur_func->parent; - c002dbec: 743c ld a5,104(s0) - c002dbee: 679c ld a5,8(a5) - c002dbf0: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23074 + c002ddbc: 743c ld a5,104(s0) + c002ddbe: 679c ld a5,8(a5) + c002ddc0: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23082 continue; - c002dbf2: bb41 j c002d982 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23045 + c002ddc2: bb41 j c002db52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23053 if (emit_class_init_start(s, cf)) - c002dbf4: 012c addi a1,sp,136 - c002dbf6: 8522 mv a0,s0 - c002dbf8: c63eb0ef jal ra,c001985a - c002dbfc: d549 beqz a0,c002db86 - c002dbfe: b1cd j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23077 + c002ddc4: 012c addi a1,sp,136 + c002ddc6: 8522 mv a0,s0 + c002ddc8: c63eb0ef jal ra,c0019a2a + c002ddcc: d549 beqz a0,c002dd56 + c002ddce: b1cd j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23085 if (s->token.val == ';' || s->token.val == '=') { - c002dc00: fc57879b addiw a5,a5,-59 - c002dc04: 9bf5 andi a5,a5,-3 - c002dc06: 2781 sext.w a5,a5 - c002dc08: 60079163 bnez a5,c002e20a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23079 + c002ddd0: fc57879b addiw a5,a5,-59 + c002ddd4: 9bf5 andi a5,a5,-3 + c002ddd6: 2781 sext.w a5,a5 + c002ddd8: 60079163 bnez a5,c002e3da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23087 name = JS_DupAtom(ctx, JS_ATOM_static); - c002dc0c: 02c00793 li a5,44 - c002dc10: c2be sw a5,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23078 + c002dddc: 02c00793 li a5,44 + c002dde0: c2be sw a5,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23086 is_static = FALSE; - c002dc12: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23085 + c002dde2: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23093 start_ptr = s->token.ptr; - c002dc14: 701c ld a5,32(s0) - c002dc16: 4501 li a0,0 - c002dc18: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23086 + c002dde4: 701c ld a5,32(s0) + c002dde6: 4501 li a0,0 + c002dde8: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 if (prop_type < 0) { - c002dc1a: 57fd li a5,-1 - c002dc1c: 00f71b63 bne a4,a5,c002dc32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23087 + c002ddea: 57fd li a5,-1 + c002ddec: 00f71b63 bne a4,a5,c002de02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23095 prop_type = js_parse_property_name(s, &name, TRUE, FALSE, TRUE); - c002dc20: 4705 li a4,1 - c002dc22: 4681 li a3,0 - c002dc24: 4605 li a2,1 - c002dc26: 00cc addi a1,sp,68 - c002dc28: 8522 mv a0,s0 - c002dc2a: f46ff0ef jal ra,c002d370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23088 + c002ddf0: 4705 li a4,1 + c002ddf2: 4681 li a3,0 + c002ddf4: 4605 li a2,1 + c002ddf6: 00cc addi a1,sp,68 + c002ddf8: 8522 mv a0,s0 + c002ddfa: f46ff0ef jal ra,c002d540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23096 if (prop_type < 0) - c002dc2e: ca0549e3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 + c002ddfe: ca0549e3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23102 if ((name == JS_ATOM_constructor && !is_static && - c002dc32: 4596 lw a1,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23091 + c002de02: 4596 lw a1,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23099 is_private = prop_type & PROP_TYPE_PRIVATE; - c002dc34: 01057b93 andi s7,a0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 + c002de04: 01057b93 andi s7,a0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23102 if ((name == JS_ATOM_constructor && !is_static && - c002dc38: 03d00793 li a5,61 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23092 + c002de08: 03d00793 li a5,61 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23100 prop_type &= ~PROP_TYPE_PRIVATE; - c002dc3c: 993d andi a0,a0,-17 - c002dc3e: 00050d9b sext.w s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 + c002de0c: 993d andi a0,a0,-17 + c002de0e: 00050d9b sext.w s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23102 if ((name == JS_ATOM_constructor && !is_static && - c002dc42: 02f59163 bne a1,a5,c002dc64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 (discriminator 1) - c002dc46: 02091563 bnez s2,c002dc70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23094 (discriminator 2) - c002dc4a: 180d8f63 beqz s11,c002dde8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23098 + c002de12: 02f59163 bne a1,a5,c002de34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23102 (discriminator 1) + c002de16: 02091563 bnez s2,c002de40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23102 (discriminator 2) + c002de1a: 180d8f63 beqz s11,c002dfb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23106 js_parse_error(s, "invalid method name"); - c002dc4e: 00032597 auipc a1,0x32 - c002dc52: 2b258593 addi a1,a1,690 # c005ff00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23172 + c002de1e: 00032597 auipc a1,0x32 + c002de22: 34258593 addi a1,a1,834 # c0060160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23180 js_parse_error(s, "invalid field name"); - c002dc56: 8522 mv a0,s0 - c002dc58: e60f80ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23173 + c002de26: 8522 mv a0,s0 + c002de28: e60f80ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23181 goto fail; - c002dc5c: b151 j c002d8e0 - c002dc5e: 4901 li s2,0 - c002dc60: 577d li a4,-1 - c002dc62: bf4d j c002dc14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23095 + c002de2c: b151 j c002dab0 + c002de2e: 4901 li s2,0 + c002de30: 577d li a4,-1 + c002de32: bf4d j c002dde4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23103 prop_type != PROP_TYPE_IDENT) || - c002dc64: 03c00793 li a5,60 - c002dc68: 12f59463 bne a1,a5,c002dd90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23096 + c002de34: 03c00793 li a5,60 + c002de38: 12f59463 bne a1,a5,c002df60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23104 (name == JS_ATOM_prototype && is_static) || - c002dc6c: fe0911e3 bnez s2,c002dc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23101 + c002de3c: fe0911e3 bnez s2,c002de1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23109 if (prop_type == PROP_TYPE_GET || prop_type == PROP_TYPE_SET) { - c002dc70: ffed8c9b addiw s9,s11,-2 - c002dc74: cc66 sw s9,24(sp) - c002dc76: 4685 li a3,1 - c002dc78: 1796e663 bltu a3,s9,c002dde4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23105 + c002de40: ffed8c9b addiw s9,s11,-2 + c002de44: cc66 sw s9,24(sp) + c002de46: 4685 li a3,1 + c002de48: 1796e663 bltu a3,s9,c002dfb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23113 if (is_private) { - c002dc7c: 060b8a63 beqz s7,c002dcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23107 + c002de4c: 060b8a63 beqz s7,c002dec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23115 idx = find_private_class_field(ctx, fd, name, fd->scope_level); - c002dc80: 0e04a603 lw a2,224(s1) - c002dc84: 8526 mv a0,s1 - c002dc86: fc2e sd a1,56(sp) - c002dc88: e4ed80ef jal ra,c00062d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23108 + c002de50: 0e04a603 lw a2,224(s1) + c002de54: 8526 mv a0,s1 + c002de56: fc2e sd a1,56(sp) + c002de58: d6cd80ef jal ra,c00063c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23116 if (idx >= 0) { - c002dc8c: 75e2 ld a1,56(sp) - c002dc8e: 10054663 bltz a0,c002dd9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23109 + c002de5c: 75e2 ld a1,56(sp) + c002de5e: 10054663 bltz a0,c002df6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23117 var_kind = fd->vars[idx].var_kind; - c002dc92: 68dc ld a5,144(s1) - c002dc94: 0512 slli a0,a0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23111 + c002de62: 68dc ld a5,144(s1) + c002de64: 0512 slli a0,a0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23119 if (var_kind == JS_VAR_PRIVATE_FIELD || - c002dc96: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23109 + c002de66: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23117 var_kind = fd->vars[idx].var_kind; - c002dc98: 953e add a0,a0,a5 - c002dc9a: 455c lw a5,12(a0) - c002dc9c: 0047d71b srliw a4,a5,0x4 - c002dca0: 00f77613 andi a2,a4,15 - c002dca4: 8732 mv a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23110 + c002de68: 953e add a0,a0,a5 + c002de6a: 455c lw a5,12(a0) + c002de6c: 0047d71b srliw a4,a5,0x4 + c002de70: 00f77613 andi a2,a4,15 + c002de74: 8732 mv a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23118 is_static1 = fd->vars[idx].is_static_private; - c002dca6: 0037d79b srliw a5,a5,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23111 + c002de76: 0037d79b srliw a5,a5,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23119 if (var_kind == JS_VAR_PRIVATE_FIELD || - c002dcaa: 366d addiw a2,a2,-5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23110 + c002de7a: 366d addiw a2,a2,-5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23118 is_static1 = fd->vars[idx].is_static_private; - c002dcac: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23111 + c002de7c: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23119 if (var_kind == JS_VAR_PRIVATE_FIELD || - c002dcae: 3cc6fe63 bgeu a3,a2,c002e08a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23112 + c002de7e: 3cc6fe63 bgeu a3,a2,c002e25a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23120 var_kind == JS_VAR_PRIVATE_METHOD || - c002dcb2: 46a5 li a3,9 - c002dcb4: 3cd70b63 beq a4,a3,c002e08a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23114 + c002de82: 46a5 li a3,9 + c002de84: 3cd70b63 beq a4,a3,c002e25a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23122 var_kind == (JS_VAR_PRIVATE_GETTER + is_set) || - c002dcb8: 4609 li a2,2 - c002dcba: 46a1 li a3,8 - c002dcbc: 00cd9363 bne s11,a2,c002dcc2 - c002dcc0: 469d li a3,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23113 + c002de88: 4609 li a2,2 + c002de8a: 46a1 li a3,8 + c002de8c: 00cd9363 bne s11,a2,c002de92 + c002de90: 469d li a3,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23121 var_kind == JS_VAR_PRIVATE_GETTER_SETTER || - c002dcc2: 3ce68463 beq a3,a4,c002e08a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23115 + c002de92: 3ce68463 beq a3,a4,c002e25a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23123 (var_kind == (JS_VAR_PRIVATE_GETTER + 1 - is_set) && - c002dcc6: 001cb693 seqz a3,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23114 + c002de96: 001cb693 seqz a3,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23122 var_kind == (JS_VAR_PRIVATE_GETTER + is_set) || - c002dcca: 269d addiw a3,a3,7 - c002dccc: 00e69463 bne a3,a4,c002dcd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23115 + c002de9a: 269d addiw a3,a3,7 + c002de9c: 00e69463 bne a3,a4,c002dea4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23123 (var_kind == (JS_VAR_PRIVATE_GETTER + 1 - is_set) && - c002dcd0: 3af91d63 bne s2,a5,c002e08a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23119 + c002dea0: 3af91d63 bne s2,a5,c002e25a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23127 fd->vars[idx].var_kind = JS_VAR_PRIVATE_GETTER_SETTER; - c002dcd4: 455c lw a5,12(a0) - c002dcd6: f0f7f793 andi a5,a5,-241 - c002dcda: 0907e793 ori a5,a5,144 - c002dcde: c55c sw a5,12(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23125 + c002dea4: 455c lw a5,12(a0) + c002dea6: f0f7f793 andi a5,a5,-241 + c002deaa: 0907e793 ori a5,a5,144 + c002deae: c55c sw a5,12(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23133 class_fields[is_static].need_brand = TRUE; - c002dce0: 47e1 li a5,24 - c002dce2: 02f907b3 mul a5,s2,a5 - c002dce6: 1118 addi a4,sp,160 - c002dce8: 97ba add a5,a5,a4 - c002dcea: 4705 li a4,1 - c002dcec: fce7ae23 sw a4,-36(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23128 + c002deb0: 47e1 li a5,24 + c002deb2: 02f907b3 mul a5,s2,a5 + c002deb6: 1118 addi a4,sp,160 + c002deb8: 97ba add a5,a5,a4 + c002deba: 4705 li a4,1 + c002debc: fce7ae23 sw a4,-36(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23136 if (js_parse_function_decl2(s, JS_PARSE_FUNC_GETTER + is_set, - c002dcf0: 4c5c lw a5,28(s0) - c002dcf2: 6742 ld a4,16(sp) - c002dcf4: 05810893 addi a7,sp,88 - c002dcf8: 4801 li a6,0 - c002dcfa: 4681 li a3,0 - c002dcfc: 4601 li a2,0 - c002dcfe: 002d859b addiw a1,s11,2 - c002dd02: 8522 mv a0,s0 - c002dd04: cc2fe0ef jal ra,c002c1c6 - c002dd08: bc051ce3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23133 + c002dec0: 4c5c lw a5,28(s0) + c002dec2: 6742 ld a4,16(sp) + c002dec4: 05810893 addi a7,sp,88 + c002dec8: 4801 li a6,0 + c002deca: 4681 li a3,0 + c002decc: 4601 li a2,0 + c002dece: 002d859b addiw a1,s11,2 + c002ded2: 8522 mv a0,s0 + c002ded4: cc2fe0ef jal ra,c002c396 + c002ded8: bc051ce3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23141 if (is_private) { - c002dd0c: 0a0b8263 beqz s7,c002ddb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23134 + c002dedc: 0a0b8263 beqz s7,c002df80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23142 method_fd->need_home_object = TRUE; /* needed for brand check */ - c002dd10: 67e6 ld a5,88(sp) - c002dd12: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23135 + c002dee0: 67e6 ld a5,88(sp) + c002dee2: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23143 emit_op(s, OP_set_home_object); - c002dd14: 05000593 li a1,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23134 + c002dee4: 05000593 li a1,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23142 method_fd->need_home_object = TRUE; /* needed for brand check */ - c002dd18: 0ce7ae23 sw a4,220(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23135 + c002dee8: 0ce7ae23 sw a4,220(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23143 emit_op(s, OP_set_home_object); - c002dd1c: 8522 mv a0,s0 - c002dd1e: f1ed70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23137 + c002deec: 8522 mv a0,s0 + c002deee: e3cd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23145 emit_op(s, OP_scope_put_var_init); - c002dd22: 0bd00593 li a1,189 - c002dd26: 8522 mv a0,s0 - c002dd28: f14d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23138 + c002def2: 0bd00593 li a1,189 + c002def6: 8522 mv a0,s0 + c002def8: e32d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23146 if (is_set) { - c002dd2c: 4596 lw a1,68(sp) - c002dd2e: 3a0c8063 beqz s9,c002e0ce + c002defc: 4596 lw a1,68(sp) + c002defe: 3a0c8063 beqz s9,c002e29e get_private_setter_name(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22884 return js_atom_concat_str(ctx, name, ""); - c002dd32: 00031617 auipc a2,0x31 - c002dd36: c6e60613 addi a2,a2,-914 # c005e9a0 - c002dd3a: 8556 mv a0,s5 - c002dd3c: cb5f20ef jal ra,c00209f0 - c002dd40: 00050b9b sext.w s7,a0 + c002df02: 00031617 auipc a2,0x31 + c002df06: cfe60613 addi a2,a2,-770 # c005ec00 + c002df0a: 8556 mv a0,s5 + c002df0c: cb5f20ef jal ra,c0020bc0 + c002df10: 00050b9b sext.w s7,a0 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23151 if (setter_name == JS_ATOM_NULL) - c002dd44: b80b8ee3 beqz s7,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23145 + c002df14: b80b8ee3 beqz s7,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23153 emit_atom(s, setter_name); - c002dd48: 85de mv a1,s7 - c002dd4a: 8522 mv a0,s0 - c002dd4c: fa2d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23146 + c002df18: 85de mv a1,s7 + c002df1a: 8522 mv a0,s0 + c002df1c: ec0d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23154 ret = add_private_class_field(s, fd, setter_name, - c002dd50: 85a6 mv a1,s1 - c002dd52: 874a mv a4,s2 - c002dd54: 46a1 li a3,8 - c002dd56: 865e mv a2,s7 - c002dd58: 8522 mv a0,s0 - c002dd5a: ae6f40ef jal ra,c0022040 - c002dd5e: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23148 + c002df20: 85a6 mv a1,s1 + c002df22: 874a mv a4,s2 + c002df24: 46a1 li a3,8 + c002df26: 865e mv a2,s7 + c002df28: 8522 mv a0,s0 + c002df2a: ae6f40ef jal ra,c0022210 + c002df2e: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23156 JS_FreeAtom(ctx, setter_name); - c002dd60: 85de mv a1,s7 - c002dd62: 8556 mv a0,s5 - c002dd64: fa8d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23149 + c002df30: 85de mv a1,s7 + c002df32: 8556 mv a0,s5 + c002df34: ec6d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23157 if (ret < 0) - c002dd68: b60ccce3 bltz s9,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23154 + c002df38: b60ccce3 bltz s9,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23162 emit_u16(s, s->cur_func->scope_level); - c002dd6c: 743c ld a5,104(s0) - c002dd6e: 8522 mv a0,s0 - c002dd70: 0e07d583 lhu a1,224(a5) - c002dd74: d96d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23306 + c002df3c: 743c ld a5,104(s0) + c002df3e: 8522 mv a0,s0 + c002df40: 0e07d583 lhu a1,224(a5) + c002df44: cb4d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23314 if (is_static) - c002dd78: 00090663 beqz s2,c002dd84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23307 + c002df48: 00090663 beqz s2,c002df54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23315 emit_op(s, OP_swap); - c002dd7c: 45ed li a1,27 - c002dd7e: 8522 mv a0,s0 - c002dd80: ebcd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23308 + c002df4c: 45ed li a1,27 + c002df4e: 8522 mv a0,s0 + c002df50: ddad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23316 JS_FreeAtom(ctx, name); - c002dd84: 4596 lw a1,68(sp) - c002dd86: 8556 mv a0,s5 - c002dd88: f84d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23309 + c002df54: 4596 lw a1,68(sp) + c002df56: 8556 mv a0,s5 + c002df58: ea2d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23317 name = JS_ATOM_NULL; - c002dd8c: c282 sw zero,68(sp) - c002dd8e: bed5 j c002d982 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23096 (discriminator 1) + c002df5c: c282 sw zero,68(sp) + c002df5e: bed5 j c002db52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23104 (discriminator 1) (name == JS_ATOM_prototype && is_static) || - c002dd90: 07900793 li a5,121 - c002dd94: ecf59ee3 bne a1,a5,c002dc70 - c002dd98: bd5d j c002dc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23121 + c002df60: 07900793 li a5,121 + c002df64: ecf59ee3 bne a1,a5,c002de40 + c002df68: bd5d j c002de1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23129 if (add_private_class_field(s, fd, name, - c002dd9a: 862e mv a2,a1 - c002dd9c: 874a mv a4,s2 - c002dd9e: 005d869b addiw a3,s11,5 - c002dda2: 85a6 mv a1,s1 - c002dda4: 8522 mv a0,s0 - c002dda6: a9af40ef jal ra,c0022040 - c002ddaa: f2055be3 bgez a0,c002dce0 - c002ddae: be0d j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23156 + c002df6a: 862e mv a2,a1 + c002df6c: 874a mv a4,s2 + c002df6e: 005d869b addiw a3,s11,5 + c002df72: 85a6 mv a1,s1 + c002df74: 8522 mv a0,s0 + c002df76: a9af40ef jal ra,c0022210 + c002df7a: f2055be3 bgez a0,c002deb0 + c002df7e: be0d j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23164 if (name == JS_ATOM_NULL) { - c002ddb0: 4796 lw a5,68(sp) - c002ddb2: ef99 bnez a5,c002ddd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23157 + c002df80: 4796 lw a5,68(sp) + c002df82: ef99 bnez a5,c002dfa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23165 emit_op(s, OP_define_method_computed); - c002ddb4: 05500593 li a1,85 - c002ddb8: 8522 mv a0,s0 - c002ddba: e82d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23162 + c002df84: 05500593 li a1,85 + c002df88: 8522 mv a0,s0 + c002df8a: da0d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23170 emit_u8(s, OP_DEFINE_METHOD_GETTER + is_set); - c002ddbe: 47e2 lw a5,24(sp) - c002ddc0: 0017859b addiw a1,a5,1 - c002ddc4: 0ff5f593 zext.b a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23303 + c002df8e: 47e2 lw a5,24(sp) + c002df90: 0017859b addiw a1,a5,1 + c002df94: 0ff5f593 zext.b a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23311 emit_u8(s, OP_DEFINE_METHOD_METHOD); - c002ddc8: 8522 mv a0,s0 - c002ddca: a8ed70ef jal ra,c0005058 - c002ddce: b76d j c002dd78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23159 + c002df98: 8522 mv a0,s0 + c002df9a: 8bed70ef jal ra,c0005058 + c002df9e: b76d j c002df48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23167 emit_op(s, OP_define_method); - c002ddd0: 8522 mv a0,s0 - c002ddd2: 05400593 li a1,84 - c002ddd6: e66d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23160 + c002dfa0: 8522 mv a0,s0 + c002dfa2: 05400593 li a1,84 + c002dfa6: d84d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23168 emit_atom(s, name); - c002ddda: 4596 lw a1,68(sp) - c002dddc: 8522 mv a0,s0 - c002ddde: f10d90ef jal ra,c00074ee - c002dde2: bff1 j c002ddbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23164 + c002dfaa: 4596 lw a1,68(sp) + c002dfac: 8522 mv a0,s0 + c002dfae: e2ed90ef jal ra,c00075dc + c002dfb2: bff1 j c002df8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23172 } else if (prop_type == PROP_TYPE_IDENT && s->token.val != '(') { - c002dde4: 200d9963 bnez s11,c002dff6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23164 (discriminator 1) - c002dde8: 4c18 lw a4,24(s0) - c002ddea: 02800793 li a5,40 - c002ddee: 20f70f63 beq a4,a5,c002e00c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23171 + c002dfb4: 200d9963 bnez s11,c002e1c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23172 (discriminator 1) + c002dfb8: 4c18 lw a4,24(s0) + c002dfba: 02800793 li a5,40 + c002dfbe: 20f70f63 beq a4,a5,c002e1dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23179 if (name == JS_ATOM_constructor || name == JS_ATOM_prototype) { - c002ddf2: fc45879b addiw a5,a1,-60 - c002ddf6: 4705 li a4,1 - c002ddf8: 00f76763 bltu a4,a5,c002de06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23172 + c002dfc2: fc45879b addiw a5,a1,-60 + c002dfc6: 4705 li a4,1 + c002dfc8: 00f76763 bltu a4,a5,c002dfd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23180 js_parse_error(s, "invalid field name"); - c002ddfc: 00032597 auipc a1,0x32 - c002de00: 11c58593 addi a1,a1,284 # c005ff18 - c002de04: bd89 j c002dc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23176 + c002dfcc: 00032597 auipc a1,0x32 + c002dfd0: 1ac58593 addi a1,a1,428 # c0060178 + c002dfd4: bd89 j c002de26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23184 if (is_private) { - c002de06: 040b8b63 beqz s7,c002de5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23177 + c002dfd6: 040b8b63 beqz s7,c002e02c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23185 if (find_private_class_field(ctx, fd, name, - c002de0a: 0e04a603 lw a2,224(s1) - c002de0e: 8526 mv a0,s1 - c002de10: e82e sd a1,16(sp) - c002de12: cc4d80ef jal ra,c00062d6 - c002de16: 26055a63 bgez a0,c002e08a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23181 + c002dfda: 0e04a603 lw a2,224(s1) + c002dfde: 8526 mv a0,s1 + c002dfe0: e82e sd a1,16(sp) + c002dfe2: be2d80ef jal ra,c00063c4 + c002dfe6: 26055a63 bgez a0,c002e25a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23189 if (add_private_class_field(s, fd, name, - c002de1a: 65c2 ld a1,16(sp) - c002de1c: 874a mv a4,s2 - c002de1e: 4695 li a3,5 - c002de20: 862e mv a2,a1 - c002de22: 8522 mv a0,s0 - c002de24: 85a6 mv a1,s1 - c002de26: a1af40ef jal ra,c0022040 - c002de2a: aa054be3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23184 + c002dfea: 65c2 ld a1,16(sp) + c002dfec: 874a mv a4,s2 + c002dfee: 4695 li a3,5 + c002dff0: 862e mv a2,a1 + c002dff2: 8522 mv a0,s0 + c002dff4: 85a6 mv a1,s1 + c002dff6: a1af40ef jal ra,c0022210 + c002dffa: aa054be3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23192 emit_op(s, OP_private_symbol); - c002de2e: 4595 li a1,5 - c002de30: 8522 mv a0,s0 - c002de32: e0ad70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23185 + c002dffe: 4595 li a1,5 + c002e000: 8522 mv a0,s0 + c002e002: d28d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23193 emit_atom(s, name); - c002de36: 4596 lw a1,68(sp) - c002de38: 8522 mv a0,s0 - c002de3a: eb4d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23186 + c002e006: 4596 lw a1,68(sp) + c002e008: 8522 mv a0,s0 + c002e00a: dd2d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23194 emit_op(s, OP_scope_put_var_init); - c002de3e: 0bd00593 li a1,189 - c002de42: 8522 mv a0,s0 - c002de44: df8d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23187 + c002e00e: 0bd00593 li a1,189 + c002e012: 8522 mv a0,s0 + c002e014: d16d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23195 emit_atom(s, name); - c002de48: 4596 lw a1,68(sp) - c002de4a: 8522 mv a0,s0 - c002de4c: ea2d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23188 + c002e018: 4596 lw a1,68(sp) + c002e01a: 8522 mv a0,s0 + c002e01c: dc0d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23196 emit_u16(s, s->cur_func->scope_level); - c002de50: 743c ld a5,104(s0) - c002de52: 8522 mv a0,s0 - c002de54: 0e07d583 lhu a1,224(a5) - c002de58: cb2d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23191 + c002e020: 743c ld a5,104(s0) + c002e022: 8522 mv a0,s0 + c002e024: 0e07d583 lhu a1,224(a5) + c002e028: bd0d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23199 if (!cf->fields_init_fd) { - c002de5c: 45e1 li a1,24 - c002de5e: 02b905b3 mul a1,s2,a1 - c002de62: 111c addi a5,sp,160 - c002de64: 97ae add a5,a5,a1 - c002de66: fd07b783 ld a5,-48(a5) - c002de6a: cbb1 beqz a5,c002debe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23195 + c002e02c: 45e1 li a1,24 + c002e02e: 02b905b3 mul a1,s2,a1 + c002e032: 111c addi a5,sp,160 + c002e034: 97ae add a5,a5,a1 + c002e036: fd07b783 ld a5,-48(a5) + c002e03a: cbb1 beqz a5,c002e08e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23203 if (name == JS_ATOM_NULL ) { - c002de6c: 4796 lw a5,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23166 + c002e03c: 4796 lw a5,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23174 JSAtom field_var_name = JS_ATOM_NULL; - c002de6e: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23195 + c002e03e: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23203 if (name == JS_ATOM_NULL ) { - c002de70: e3d1 bnez a5,c002def4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23197 + c002e040: e3d1 bnez a5,c002e0c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23205 field_var_name = js_atom_concat_num(ctx, JS_ATOM_computed_field + is_static, cf->computed_fields_count); - c002de72: 47e1 li a5,24 - c002de74: 02f907b3 mul a5,s2,a5 - c002de78: 1118 addi a4,sp,160 + c002e042: 47e1 li a5,24 + c002e044: 02f907b3 mul a5,s2,a5 + c002e048: 1118 addi a4,sp,160 js_atom_concat_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3424 snprintf(buf, sizeof(buf), "%u", n); - c002de7a: 0002f617 auipc a2,0x2f - c002de7e: c9e60613 addi a2,a2,-866 # c005cb18 - c002de82: 45c1 li a1,16 - c002de84: 08a8 addi a0,sp,88 + c002e04a: 0002f617 auipc a2,0x2f + c002e04e: cfe60613 addi a2,a2,-770 # c005cd48 + c002e052: 45c1 li a1,16 + c002e054: 08a8 addi a0,sp,88 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23197 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23205 field_var_name = js_atom_concat_num(ctx, JS_ATOM_computed_field + is_static, cf->computed_fields_count); - c002de86: 97ba add a5,a5,a4 + c002e056: 97ba add a5,a5,a4 js_atom_concat_num(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3424 snprintf(buf, sizeof(buf), "%u", n); - c002de88: fd87a683 lw a3,-40(a5) - c002de8c: 378260ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3417 + c002e058: fd87a683 lw a3,-40(a5) + c002e05c: 378260ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3425 return js_atom_concat_str(ctx, name, buf); - c002de90: 08b0 addi a2,sp,88 - c002de92: 07590593 addi a1,s2,117 - c002de96: 8556 mv a0,s5 - c002de98: b59f20ef jal ra,c00209f0 - c002de9c: 00050c9b sext.w s9,a0 + c002e060: 08b0 addi a2,sp,88 + c002e062: 07590593 addi a1,s2,117 + c002e066: 8556 mv a0,s5 + c002e068: b59f20ef jal ra,c0020bc0 + c002e06c: 00050c9b sext.w s9,a0 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23206 if (field_var_name == JS_ATOM_NULL) - c002dea0: a40c80e3 beqz s9,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23200 + c002e070: a40c80e3 beqz s9,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23208 if (define_var(s, fd, field_var_name, JS_VAR_DEF_CONST) < 0) { - c002dea4: 4689 li a3,2 - c002dea6: 8666 mv a2,s9 - c002dea8: 85a6 mv a1,s1 - c002deaa: 8522 mv a0,s0 - c002deac: f25f90ef jal ra,c0027dd0 - c002deb0: 00055e63 bgez a0,c002decc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23201 + c002e074: 4689 li a3,2 + c002e076: 8666 mv a2,s9 + c002e078: 85a6 mv a1,s1 + c002e07a: 8522 mv a0,s0 + c002e07c: f25f90ef jal ra,c0027fa0 + c002e080: 00055e63 bgez a0,c002e09c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23209 JS_FreeAtom(ctx, field_var_name); - c002deb4: 85e6 mv a1,s9 - c002deb6: 8556 mv a0,s5 - c002deb8: e54d90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23202 + c002e084: 85e6 mv a1,s9 + c002e086: 8556 mv a0,s5 + c002e088: d72d90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23210 goto fail; - c002debc: b415 j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23192 + c002e08c: b415 j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23200 if (emit_class_init_start(s, cf)) - c002debe: 189c addi a5,sp,112 - c002dec0: 95be add a1,a1,a5 - c002dec2: 8522 mv a0,s0 - c002dec4: 997eb0ef jal ra,c001985a - c002dec8: d155 beqz a0,c002de6c - c002deca: bc19 j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23204 + c002e08e: 189c addi a5,sp,112 + c002e090: 95be add a1,a1,a5 + c002e092: 8522 mv a0,s0 + c002e094: 997eb0ef jal ra,c0019a2a + c002e098: d155 beqz a0,c002e03c + c002e09a: bc19 j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23212 emit_op(s, OP_to_propkey); - c002decc: 07200593 li a1,114 - c002ded0: 8522 mv a0,s0 - c002ded2: d6ad70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23205 + c002e09c: 07200593 li a1,114 + c002e0a0: 8522 mv a0,s0 + c002e0a2: c88d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23213 emit_op(s, OP_scope_put_var_init); - c002ded6: 0bd00593 li a1,189 - c002deda: 8522 mv a0,s0 - c002dedc: d60d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23206 + c002e0a6: 0bd00593 li a1,189 + c002e0aa: 8522 mv a0,s0 + c002e0ac: c7ed70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23214 emit_atom(s, field_var_name); - c002dee0: 85e6 mv a1,s9 - c002dee2: 8522 mv a0,s0 - c002dee4: e0ad90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23207 + c002e0b0: 85e6 mv a1,s9 + c002e0b2: 8522 mv a0,s0 + c002e0b4: d28d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23215 emit_u16(s, s->cur_func->scope_level); - c002dee8: 743c ld a5,104(s0) - c002deea: 8522 mv a0,s0 - c002deec: 0e07d583 lhu a1,224(a5) - c002def0: c1ad70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23209 + c002e0b8: 743c ld a5,104(s0) + c002e0ba: 8522 mv a0,s0 + c002e0bc: 0e07d583 lhu a1,224(a5) + c002e0c0: b38d70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23217 s->cur_func = cf->fields_init_fd; - c002def4: 4de1 li s11,24 - c002def6: 03b90db3 mul s11,s2,s11 - c002defa: 111c addi a5,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23210 + c002e0c4: 4de1 li s11,24 + c002e0c6: 03b90db3 mul s11,s2,s11 + c002e0ca: 111c addi a5,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23218 emit_op(s, OP_scope_get_var); - c002defc: 0b800593 li a1,184 - c002df00: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23209 + c002e0cc: 0b800593 li a1,184 + c002e0d0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23217 s->cur_func = cf->fields_init_fd; - c002df02: 9dbe add s11,s11,a5 - c002df04: fd0db783 ld a5,-48(s11) - c002df08: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23210 + c002e0d2: 9dbe add s11,s11,a5 + c002e0d4: fd0db783 ld a5,-48(s11) + c002e0d8: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23218 emit_op(s, OP_scope_get_var); - c002df0a: d32d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23211 + c002e0da: c50d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23219 emit_atom(s, JS_ATOM_this); - c002df0e: 45a1 li a1,8 - c002df10: 8522 mv a0,s0 - c002df12: ddcd90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23212 + c002e0de: 45a1 li a1,8 + c002e0e0: 8522 mv a0,s0 + c002e0e2: cfad90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23220 emit_u16(s, 0); - c002df16: 4581 li a1,0 - c002df18: 8522 mv a0,s0 - c002df1a: bf0d70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23214 + c002e0e6: 4581 li a1,0 + c002e0e8: 8522 mv a0,s0 + c002e0ea: b0ed70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23222 if (name == JS_ATOM_NULL) { - c002df1e: 4796 lw a5,68(sp) - c002df20: efa5 bnez a5,c002df98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23215 + c002e0ee: 4796 lw a5,68(sp) + c002e0f0: efa5 bnez a5,c002e168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23223 emit_op(s, OP_scope_get_var); - c002df22: 0b800593 li a1,184 - c002df26: 8522 mv a0,s0 - c002df28: d14d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23216 + c002e0f2: 0b800593 li a1,184 + c002e0f6: 8522 mv a0,s0 + c002e0f8: c32d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23224 emit_atom(s, field_var_name); - c002df2c: 85e6 mv a1,s9 - c002df2e: 8522 mv a0,s0 - c002df30: dbed90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23217 + c002e0fc: 85e6 mv a1,s9 + c002e0fe: 8522 mv a0,s0 + c002e100: cdcd90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23225 emit_u16(s, s->cur_func->scope_level); - c002df34: 743c ld a5,104(s0) - c002df36: 8522 mv a0,s0 - c002df38: 0e07d583 lhu a1,224(a5) - c002df3c: bced70ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23218 + c002e104: 743c ld a5,104(s0) + c002e106: 8522 mv a0,s0 + c002e108: 0e07d583 lhu a1,224(a5) + c002e10c: aecd70ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23226 cf->computed_fields_count++; - c002df40: fd8da783 lw a5,-40(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23219 + c002e110: fd8da783 lw a5,-40(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23227 JS_FreeAtom(ctx, field_var_name); - c002df44: 85e6 mv a1,s9 - c002df46: 8556 mv a0,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23218 + c002e114: 85e6 mv a1,s9 + c002e116: 8556 mv a0,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23226 cf->computed_fields_count++; - c002df48: 2785 addiw a5,a5,1 - c002df4a: fcfdac23 sw a5,-40(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23219 + c002e118: 2785 addiw a5,a5,1 + c002e11a: fcfdac23 sw a5,-40(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23227 JS_FreeAtom(ctx, field_var_name); - c002df4e: dbed90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23226 + c002e11e: cdcd90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23234 if (s->token.val == '=') { - c002df52: 4c18 lw a4,24(s0) - c002df54: 03d00793 li a5,61 - c002df58: 06f71263 bne a4,a5,c002dfbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23227 + c002e122: 4c18 lw a4,24(s0) + c002e124: 03d00793 li a5,61 + c002e128: 06f71263 bne a4,a5,c002e18c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23235 if (next_token(s)) - c002df5c: 8522 mv a0,s0 - c002df5e: c39f80ef jal ra,c0026b96 - c002df62: 96051fe3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23229 + c002e12c: 8522 mv a0,s0 + c002e12e: c39f80ef jal ra,c0026d66 + c002e132: 96051fe3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23237 if (js_parse_assign_expr(s)) - c002df66: 8522 mv a0,s0 - c002df68: e6eff0ef jal ra,c002d5d6 - c002df6c: 96051ae3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23234 + c002e136: 8522 mv a0,s0 + c002e138: e6eff0ef jal ra,c002d7a6 + c002e13c: 96051ae3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23242 if (is_private) { - c002df70: 040b8b63 beqz s7,c002dfc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23235 + c002e140: 040b8b63 beqz s7,c002e196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23243 set_object_name_computed(s); - c002df74: 8522 mv a0,s0 - c002df76: d1ad70ef jal ra,c0005490 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23236 + c002e144: 8522 mv a0,s0 + c002e146: c38d70ef jal ra,c000557e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23244 emit_op(s, OP_define_private_field); - c002df7a: 04600593 li a1,70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23240 + c002e14a: 04600593 li a1,70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23248 emit_op(s, OP_drop); - c002df7e: 8522 mv a0,s0 - c002df80: cbcd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23246 + c002e14e: 8522 mv a0,s0 + c002e150: bdad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23254 s->cur_func = s->cur_func->parent; - c002df84: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23247 + c002e154: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23255 if (js_parse_expect_semi(s)) - c002df86: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23246 + c002e156: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23254 s->cur_func = s->cur_func->parent; - c002df88: 679c ld a5,8(a5) - c002df8a: f43c sd a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23247 + c002e158: 679c ld a5,8(a5) + c002e15a: f43c sd a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23255 if (js_parse_expect_semi(s)) - c002df8c: 969f90ef jal ra,c00278f4 - c002df90: de0504e3 beqz a0,c002dd78 - c002df94: 94dff06f j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23220 + c002e15c: 969f90ef jal ra,c0027ac4 + c002e160: de0504e3 beqz a0,c002df48 + c002e164: 94dff06f j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23228 } else if (is_private) { - c002df98: fa0b8de3 beqz s7,c002df52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23221 + c002e168: fa0b8de3 beqz s7,c002e122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23229 emit_op(s, OP_scope_get_var); - c002df9c: 8522 mv a0,s0 - c002df9e: 0b800593 li a1,184 - c002dfa2: c9ad70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23222 + c002e16c: 8522 mv a0,s0 + c002e16e: 0b800593 li a1,184 + c002e172: bb8d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23230 emit_atom(s, name); - c002dfa6: 4596 lw a1,68(sp) - c002dfa8: 8522 mv a0,s0 - c002dfaa: d44d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23223 + c002e176: 4596 lw a1,68(sp) + c002e178: 8522 mv a0,s0 + c002e17a: c62d90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23231 emit_u16(s, s->cur_func->scope_level); - c002dfae: 743c ld a5,104(s0) - c002dfb0: 8522 mv a0,s0 - c002dfb2: 0e07d583 lhu a1,224(a5) - c002dfb6: b54d70ef jal ra,c000530a - c002dfba: bf61 j c002df52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23232 + c002e17e: 743c ld a5,104(s0) + c002e180: 8522 mv a0,s0 + c002e182: 0e07d583 lhu a1,224(a5) + c002e186: a72d70ef jal ra,c00053f8 + c002e18a: bf61 j c002e122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23240 emit_op(s, OP_undefined); - c002dfbc: 4599 li a1,6 - c002dfbe: 8522 mv a0,s0 - c002dfc0: c7cd70ef jal ra,c000543c - c002dfc4: b775 j c002df70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23237 + c002e18c: 4599 li a1,6 + c002e18e: 8522 mv a0,s0 + c002e190: b9ad70ef jal ra,c000552a + c002e194: b775 j c002e140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23245 } else if (name == JS_ATOM_NULL) { - c002dfc6: 4596 lw a1,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23238 + c002e196: 4596 lw a1,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23246 set_object_name_computed(s); - c002dfc8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23237 + c002e198: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23245 } else if (name == JS_ATOM_NULL) { - c002dfca: e991 bnez a1,c002dfde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23238 + c002e19a: e991 bnez a1,c002e1ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23246 set_object_name_computed(s); - c002dfcc: cc4d70ef jal ra,c0005490 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23239 + c002e19c: be2d70ef jal ra,c000557e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23247 emit_op(s, OP_define_array_el); - c002dfd0: 05100593 li a1,81 - c002dfd4: 8522 mv a0,s0 - c002dfd6: c66d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23240 + c002e1a0: 05100593 li a1,81 + c002e1a4: 8522 mv a0,s0 + c002e1a6: b84d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23248 emit_op(s, OP_drop); - c002dfda: 45b9 li a1,14 - c002dfdc: b74d j c002df7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23242 + c002e1aa: 45b9 li a1,14 + c002e1ac: b74d j c002e14e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23250 set_object_name(s, name); - c002dfde: f58d90ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23243 + c002e1ae: e76d90ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23251 emit_op(s, OP_define_field); - c002dfe2: 8522 mv a0,s0 - c002dfe4: 04c00593 li a1,76 - c002dfe8: c54d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23244 + c002e1b2: 8522 mv a0,s0 + c002e1b4: 04c00593 li a1,76 + c002e1b8: b72d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23252 emit_atom(s, name); - c002dfec: 4596 lw a1,68(sp) - c002dfee: 8522 mv a0,s0 - c002dff0: cfed90ef jal ra,c00074ee - c002dff4: bf41 j c002df84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23255 + c002e1bc: 4596 lw a1,68(sp) + c002e1be: 8522 mv a0,s0 + c002e1c0: c1cd90ef jal ra,c00075dc + c002e1c4: bf41 j c002e154 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23263 if (prop_type == PROP_TYPE_STAR) { - c002dff6: 4791 li a5,4 - c002dff8: 06fd8663 beq s11,a5,c002e064 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23257 + c002e1c6: 4791 li a5,4 + c002e1c8: 06fd8663 beq s11,a5,c002e234 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23265 } else if (prop_type == PROP_TYPE_ASYNC) { - c002dffc: 4795 li a5,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23258 + c002e1cc: 4795 li a5,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23266 func_kind = JS_FUNC_ASYNC; - c002dffe: 4609 li a2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23257 + c002e1ce: 4609 li a2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23265 } else if (prop_type == PROP_TYPE_ASYNC) { - c002e000: 06fd8363 beq s11,a5,c002e066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23259 + c002e1d0: 06fd8363 beq s11,a5,c002e236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23267 } else if (prop_type == PROP_TYPE_ASYNC_STAR) { - c002e004: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23260 + c002e1d4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23268 func_kind = JS_FUNC_ASYNC_GENERATOR; - c002e006: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23259 + c002e1d6: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23267 } else if (prop_type == PROP_TYPE_ASYNC_STAR) { - c002e008: 04fd8f63 beq s11,a5,c002e066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23261 + c002e1d8: 04fd8f63 beq s11,a5,c002e236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23269 } else if (name == JS_ATOM_constructor && !is_static) { - c002e00c: 03d00793 li a5,61 - c002e010: 04f59d63 bne a1,a5,c002e06a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23261 (discriminator 1) - c002e014: 04091b63 bnez s2,c002e06a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23262 + c002e1dc: 03d00793 li a5,61 + c002e1e0: 04f59d63 bne a1,a5,c002e23a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23269 (discriminator 1) + c002e1e4: 04091b63 bnez s2,c002e23a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23270 if (ctor_fd) { - c002e018: 67c6 ld a5,80(sp) - c002e01a: c791 beqz a5,c002e026 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23263 + c002e1e8: 67c6 ld a5,80(sp) + c002e1ea: c791 beqz a5,c002e1f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23271 js_parse_error(s, "property constructor appears more than once"); - c002e01c: 00032597 auipc a1,0x32 - c002e020: f1458593 addi a1,a1,-236 # c005ff30 - c002e024: b90d j c002dc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23266 + c002e1ec: 00032597 auipc a1,0x32 + c002e1f0: fa458593 addi a1,a1,-92 # c0060190 + c002e1f4: b90d j c002de26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23274 if (class_flags & JS_DEFINE_CLASS_HAS_HERITAGE) - c002e026: 7cc2 ld s9,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23254 + c002e1f6: 7cc2 ld s9,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23262 func_kind = JS_FUNC_NORMAL; - c002e028: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23271 + c002e1f8: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23279 if (is_private) { - c002e02a: 000b8a63 beqz s7,c002e03e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23272 + c002e1fa: 000b8a63 beqz s7,c002e20e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23280 class_fields[is_static].need_brand = TRUE; - c002e02e: 47e1 li a5,24 - c002e030: 02f907b3 mul a5,s2,a5 - c002e034: 1118 addi a4,sp,160 - c002e036: 97ba add a5,a5,a4 - c002e038: 4705 li a4,1 - c002e03a: fce7ae23 sw a4,-36(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23274 + c002e1fe: 47e1 li a5,24 + c002e200: 02f907b3 mul a5,s2,a5 + c002e204: 1118 addi a4,sp,160 + c002e206: 97ba add a5,a5,a4 + c002e208: 4705 li a4,1 + c002e20a: fce7ae23 sw a4,-36(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23282 if (js_parse_function_decl2(s, func_type, func_kind, JS_ATOM_NULL, start_ptr, s->token.line_num, JS_PARSE_EXPORT_NONE, &method_fd)) - c002e03e: 4c5c lw a5,28(s0) - c002e040: 6742 ld a4,16(sp) - c002e042: 04810893 addi a7,sp,72 - c002e046: 4801 li a6,0 - c002e048: 4681 li a3,0 - c002e04a: 85e6 mv a1,s9 - c002e04c: 8522 mv a0,s0 - c002e04e: 978fe0ef jal ra,c002c1c6 - c002e052: 880517e3 bnez a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23276 + c002e20e: 4c5c lw a5,28(s0) + c002e210: 6742 ld a4,16(sp) + c002e212: 04810893 addi a7,sp,72 + c002e216: 4801 li a6,0 + c002e218: 4681 li a3,0 + c002e21a: 85e6 mv a1,s9 + c002e21c: 8522 mv a0,s0 + c002e21e: 978fe0ef jal ra,c002c396 + c002e222: 880517e3 bnez a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23284 if (func_type == JS_PARSE_FUNC_DERIVED_CLASS_CONSTRUCTOR || - c002e056: 3ce1 addiw s9,s9,-8 - c002e058: 4785 li a5,1 - c002e05a: 0197ea63 bltu a5,s9,c002e06e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23278 + c002e226: 3ce1 addiw s9,s9,-8 + c002e228: 4785 li a5,1 + c002e22a: 0197ea63 bltu a5,s9,c002e23e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23286 ctor_fd = method_fd; - c002e05e: 67a6 ld a5,72(sp) - c002e060: e8be sd a5,80(sp) - c002e062: bb19 j c002dd78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23256 + c002e22e: 67a6 ld a5,72(sp) + c002e230: e8be sd a5,80(sp) + c002e232: bb19 j c002df48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23264 func_kind = JS_FUNC_GENERATOR; - c002e064: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23253 + c002e234: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23261 func_type = JS_PARSE_FUNC_METHOD; - c002e066: 4c99 li s9,6 - c002e068: b7c9 j c002e02a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23254 + c002e236: 4c99 li s9,6 + c002e238: b7c9 j c002e1fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23262 func_kind = JS_FUNC_NORMAL; - c002e06a: 4601 li a2,0 - c002e06c: bfed j c002e066 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23281 + c002e23a: 4601 li a2,0 + c002e23c: bfed j c002e236 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23289 if (find_private_class_field(ctx, fd, name, - c002e06e: 4c96 lw s9,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23279 + c002e23e: 4c96 lw s9,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23287 } else if (is_private) { - c002e070: 060b8363 beqz s7,c002e0d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23280 + c002e240: 060b8363 beqz s7,c002e2a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23288 method_fd->need_home_object = TRUE; /* needed for brand check */ - c002e074: 6726 ld a4,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23281 + c002e244: 6726 ld a4,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23289 if (find_private_class_field(ctx, fd, name, - c002e076: 85e6 mv a1,s9 - c002e078: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23280 + c002e246: 85e6 mv a1,s9 + c002e248: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23288 method_fd->need_home_object = TRUE; /* needed for brand check */ - c002e07a: 0cf72e23 sw a5,220(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23281 + c002e24a: 0cf72e23 sw a5,220(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23289 if (find_private_class_field(ctx, fd, name, - c002e07e: 0e04a603 lw a2,224(s1) - c002e082: a54d80ef jal ra,c00062d6 - c002e086: 00054763 bltz a0,c002e094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23284 + c002e24e: 0e04a603 lw a2,224(s1) + c002e252: 972d80ef jal ra,c00063c4 + c002e256: 00054763 bltz a0,c002e264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23292 js_parse_error(s, "private class field is already defined"); - c002e08a: 00032597 auipc a1,0x32 - c002e08e: ed658593 addi a1,a1,-298 # c005ff60 - c002e092: b6d1 j c002dc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23287 + c002e25a: 00032597 auipc a1,0x32 + c002e25e: f6658593 addi a1,a1,-154 # c00601c0 + c002e262: b6d1 j c002de26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23295 if (add_private_class_field(s, fd, name, - c002e094: 874a mv a4,s2 - c002e096: 4699 li a3,6 - c002e098: 8666 mv a2,s9 - c002e09a: 85a6 mv a1,s1 - c002e09c: 8522 mv a0,s0 - c002e09e: fa3f30ef jal ra,c0022040 - c002e0a2: 82054fe3 bltz a0,c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23290 + c002e264: 874a mv a4,s2 + c002e266: 4699 li a3,6 + c002e268: 8666 mv a2,s9 + c002e26a: 85a6 mv a1,s1 + c002e26c: 8522 mv a0,s0 + c002e26e: fa3f30ef jal ra,c0022210 + c002e272: 82054fe3 bltz a0,c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23298 emit_op(s, OP_set_home_object); - c002e0a6: 05000593 li a1,80 - c002e0aa: 8522 mv a0,s0 - c002e0ac: b90d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23291 + c002e276: 05000593 li a1,80 + c002e27a: 8522 mv a0,s0 + c002e27c: aaed70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23299 emit_op(s, OP_set_name); - c002e0b0: 04d00593 li a1,77 - c002e0b4: 8522 mv a0,s0 - c002e0b6: b86d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23292 + c002e280: 04d00593 li a1,77 + c002e284: 8522 mv a0,s0 + c002e286: aa4d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23300 emit_atom(s, name); - c002e0ba: 4596 lw a1,68(sp) - c002e0bc: 8522 mv a0,s0 - c002e0be: c30d90ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23293 + c002e28a: 4596 lw a1,68(sp) + c002e28c: 8522 mv a0,s0 + c002e28e: b4ed90ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23301 emit_op(s, OP_scope_put_var_init); - c002e0c2: 0bd00593 li a1,189 - c002e0c6: 8522 mv a0,s0 - c002e0c8: b74d70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23294 + c002e292: 0bd00593 li a1,189 + c002e296: 8522 mv a0,s0 + c002e298: a92d70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23302 emit_atom(s, name); - c002e0cc: 4596 lw a1,68(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23152 + c002e29c: 4596 lw a1,68(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23160 emit_atom(s, name); - c002e0ce: 8522 mv a0,s0 - c002e0d0: c1ed90ef jal ra,c00074ee - c002e0d4: b961 j c002dd6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23297 + c002e29e: 8522 mv a0,s0 + c002e2a0: b3cd90ef jal ra,c00075dc + c002e2a4: b961 j c002df3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23305 if (name == JS_ATOM_NULL) { - c002e0d6: 000c9963 bnez s9,c002e0e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23298 + c002e2a6: 000c9963 bnez s9,c002e2b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23306 emit_op(s, OP_define_method_computed); - c002e0da: 05500593 li a1,85 - c002e0de: 8522 mv a0,s0 - c002e0e0: b5cd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23303 + c002e2aa: 05500593 li a1,85 + c002e2ae: 8522 mv a0,s0 + c002e2b0: a7ad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23311 emit_u8(s, OP_DEFINE_METHOD_METHOD); - c002e0e4: 4581 li a1,0 - c002e0e6: b1cd j c002ddc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23300 + c002e2b4: 4581 li a1,0 + c002e2b6: b1cd j c002df98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23308 emit_op(s, OP_define_method); - c002e0e8: 8522 mv a0,s0 - c002e0ea: 05400593 li a1,84 - c002e0ee: b4ed70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23301 + c002e2b8: 8522 mv a0,s0 + c002e2ba: 05400593 li a1,84 + c002e2be: a6cd70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23309 emit_atom(s, name); - c002e0f2: 4596 lw a1,68(sp) - c002e0f4: 8522 mv a0,s0 - c002e0f6: bf8d90ef jal ra,c00074ee - c002e0fa: b7ed j c002e0e4 + c002e2c2: 4596 lw a1,68(sp) + c002e2c4: 8522 mv a0,s0 + c002e2c6: b16d90ef jal ra,c00075dc + c002e2ca: b7ed j c002e2b4 js_parse_get_pos(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002e0fc: 441c lw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c002e2cc: 441c lw a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c002e0fe: 7018 ld a4,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22452 + c002e2ce: 7018 ld a4,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22460 sp->last_line_num = s->last_line_num; - c002e100: ccbe sw a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22454 + c002e2d0: ccbe sw a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22462 sp->ptr = s->token.ptr; - c002e102: f4ba sd a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 + c002e2d2: f4ba sd a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c002e104: 4c5c lw a5,28(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c002e2d4: 4c5c lw a5,28(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c002e106: 4438 lw a4,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22453 + c002e2d6: 4438 lw a4,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22461 sp->line_num = s->token.line_num; - c002e108: cebe sw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22455 + c002e2d8: cebe sw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22463 sp->got_lf = s->got_lf; - c002e10a: d0ba sw a4,96(sp) + c002e2da: d0ba sw a4,96(sp) js_parse_class_default_ctor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22814 if (has_super) { - c002e10c: 060b1063 bnez s6,c002e16c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22812 + c002e2dc: 060b1063 bnez s6,c002e33c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22820 func_type = JS_PARSE_FUNC_CLASS_CONSTRUCTOR; - c002e110: 45a1 li a1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22811 + c002e2e0: 45a1 li a1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22819 str = "(){}"; - c002e112: 00032b97 auipc s7,0x32 - c002e116: dc6b8b93 addi s7,s7,-570 # c005fed8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22816 + c002e2e2: 00032b97 auipc s7,0x32 + c002e2e6: e56b8b93 addi s7,s7,-426 # c0060138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22824 s->buf_ptr = (uint8_t *)str; - c002e11a: 05743c23 sd s7,88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22817 + c002e2ea: 05743c23 sd s7,88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22825 s->buf_end = (uint8_t *)(str + strlen(str)); - c002e11e: 855e mv a0,s7 - c002e120: ec3e sd a5,24(sp) - c002e122: e82e sd a1,16(sp) - c002e124: 08d280ef jal ra,c00569b0 - c002e128: 955e add a0,a0,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22815 + c002e2ee: 855e mv a0,s7 + c002e2f0: ec3e sd a5,24(sp) + c002e2f2: e82e sd a1,16(sp) + c002e2f4: 08d280ef jal ra,c0056b80 + c002e2f8: 955e add a0,a0,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22823 saved_buf_end = s->buf_end; - c002e12a: 06043b03 ld s6,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22817 + c002e2fa: 06043b03 ld s6,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22825 s->buf_end = (uint8_t *)(str + strlen(str)); - c002e12e: f028 sd a0,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22818 + c002e2fe: f028 sd a0,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22826 ret = next_token(s); - c002e130: 8522 mv a0,s0 - c002e132: a65f80ef jal ra,c0026b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22819 + c002e300: 8522 mv a0,s0 + c002e302: a65f80ef jal ra,c0026d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22827 if (!ret) { - c002e136: 65c2 ld a1,16(sp) - c002e138: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22818 + c002e306: 65c2 ld a1,16(sp) + c002e308: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22826 ret = next_token(s); - c002e13a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22819 + c002e30a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22827 if (!ret) { - c002e13c: e919 bnez a0,c002e152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22820 + c002e30c: e919 bnez a0,c002e322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22828 ret = js_parse_function_decl2(s, func_type, JS_FUNC_NORMAL, - c002e13e: 05010893 addi a7,sp,80 - c002e142: 4801 li a6,0 - c002e144: 875e mv a4,s7 - c002e146: 4681 li a3,0 - c002e148: 4601 li a2,0 - c002e14a: 8522 mv a0,s0 - c002e14c: 87afe0ef jal ra,c002c1c6 - c002e150: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22824 + c002e30e: 05010893 addi a7,sp,80 + c002e312: 4801 li a6,0 + c002e314: 875e mv a4,s7 + c002e316: 4681 li a3,0 + c002e318: 4601 li a2,0 + c002e31a: 8522 mv a0,s0 + c002e31c: 87afe0ef jal ra,c002c396 + c002e320: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22832 s->buf_end = saved_buf_end; - c002e152: 07643023 sd s6,96(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22825 + c002e322: 07643023 sd s6,96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22833 ret |= js_parse_seek_token(s, &pos); - c002e156: 08ac addi a1,sp,88 - c002e158: 8522 mv a0,s0 - c002e15a: 9caf90ef jal ra,c0027324 - c002e15e: 01256933 or s2,a0,s2 + c002e326: 08ac addi a1,sp,88 + c002e328: 8522 mv a0,s0 + c002e32a: 9caf90ef jal ra,c00274f4 + c002e32e: 01256933 or s2,a0,s2 js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23326 if (js_parse_class_default_ctor(s, class_flags & JS_DEFINE_CLASS_HAS_HERITAGE, &ctor_fd)) - c002e162: 2901 sext.w s2,s2 - c002e164: 820907e3 beqz s2,c002d992 - c002e168: f78ff06f j c002d8e0 + c002e332: 2901 sext.w s2,s2 + c002e334: 820907e3 beqz s2,c002db62 + c002e338: f78ff06f j c002dab0 js_parse_class_default_ctor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22817 func_type = JS_PARSE_FUNC_DERIVED_CLASS_CONSTRUCTOR; - c002e16c: 45a5 li a1,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22808 + c002e33c: 45a5 li a1,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22816 str = "(){super(...arguments);}"; - c002e16e: 00032b97 auipc s7,0x32 - c002e172: d4ab8b93 addi s7,s7,-694 # c005feb8 - c002e176: b755 j c002e11a + c002e33e: 00032b97 auipc s7,0x32 + c002e342: ddab8b93 addi s7,s7,-550 # c0060118 + c002e346: b755 j c002e2ea js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23326 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23334 js_free(ctx, ctor_fd->source); - c002e178: 67c6 ld a5,80(sp) - c002e17a: 8556 mv a0,s5 - c002e17c: 2087b583 ld a1,520(a5) - c002e180: cbbd80ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23327 + c002e348: 67c6 ld a5,80(sp) + c002e34a: 8556 mv a0,s5 + c002e34c: 2087b583 ld a1,520(a5) + c002e350: bd9d80ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23335 ctor_fd->source_len = s->buf_ptr - class_start_ptr; - c002e184: 67a2 ld a5,8(sp) - c002e186: 6c30 ld a2,88(s0) - c002e188: 6946 ld s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23328 + c002e354: 67a2 ld a5,8(sp) + c002e356: 6c30 ld a2,88(s0) + c002e358: 6946 ld s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23336 ctor_fd->source = js_strndup(ctx, (const char *)class_start_ptr, - c002e18a: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23327 + c002e35a: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23335 ctor_fd->source_len = s->buf_ptr - class_start_ptr; - c002e18c: 9e1d subw a2,a2,a5 - c002e18e: 20c92823 sw a2,528(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23328 + c002e35c: 9e1d subw a2,a2,a5 + c002e35e: 20c92823 sw a2,528(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23336 ctor_fd->source = js_strndup(ctx, (const char *)class_start_ptr, - c002e192: 8556 mv a0,s5 - c002e194: adfe60ef jal ra,c0014c72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23330 + c002e362: 8556 mv a0,s5 + c002e364: adfe60ef jal ra,c0014e42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23338 if (!ctor_fd->source) - c002e198: 67c6 ld a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23328 + c002e368: 67c6 ld a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23336 ctor_fd->source = js_strndup(ctx, (const char *)class_start_ptr, - c002e19a: 20a93423 sd a0,520(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23330 + c002e36a: 20a93423 sd a0,520(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23338 if (!ctor_fd->source) - c002e19e: 2087b783 ld a5,520(a5) - c002e1a2: 820792e3 bnez a5,c002d9c6 - c002e1a6: f3aff06f j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23351 + c002e36e: 2087b783 ld a5,520(a5) + c002e372: 820792e3 bnez a5,c002db96 + c002e376: f3aff06f j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23359 if (emit_class_init_start(s, cf)) - c002e1aa: 188c addi a1,sp,112 - c002e1ac: 8522 mv a0,s0 - c002e1ae: eaceb0ef jal ra,c001985a - c002e1b2: 840506e3 beqz a0,c002d9fe - c002e1b6: f2aff06f j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23368 + c002e37a: 188c addi a1,sp,112 + c002e37c: 8522 mv a0,s0 + c002e37e: eaceb0ef jal ra,c0019a2a + c002e382: 840506e3 beqz a0,c002dbce + c002e386: f2aff06f j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23376 emit_op(s, OP_undefined); - c002e1ba: 4599 li a1,6 - c002e1bc: 8522 mv a0,s0 - c002e1be: a7ed70ef jal ra,c000543c - c002e1c2: 86dff06f j c002da2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23416 + c002e38a: 4599 li a1,6 + c002e38c: 8522 mv a0,s0 + c002e38e: 99cd70ef jal ra,c000552a + c002e392: 86dff06f j c002dbfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23424 if (class_name == JS_ATOM_NULL) { - c002e1c6: 940990e3 bnez s3,c002db06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23420 + c002e396: 940990e3 bnez s3,c002dcd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23428 emit_op(s, OP_set_class_name); - c002e1ca: 8522 mv a0,s0 - c002e1cc: 0c500593 li a1,197 - c002e1d0: a6cd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23421 + c002e39a: 8522 mv a0,s0 + c002e39c: 0c500593 li a1,197 + c002e3a0: 98ad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23429 emit_u32(s, fd->last_opcode_pos + 1 - define_class_offset); - c002e1d4: 1604a583 lw a1,352(s1) - c002e1d8: 77a2 ld a5,40(sp) - c002e1da: 8522 mv a0,s0 - c002e1dc: 2585 addiw a1,a1,1 - c002e1de: 9d9d subw a1,a1,a5 - c002e1e0: bf2d70ef jal ra,c00055d2 - c002e1e4: 923ff06f j c002db06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23426 + c002e3a4: 1604a583 lw a1,352(s1) + c002e3a8: 77a2 ld a5,40(sp) + c002e3aa: 8522 mv a0,s0 + c002e3ac: 2585 addiw a1,a1,1 + c002e3ae: 9d9d subw a1,a1,a5 + c002e3b0: b10d70ef jal ra,c00056c0 + c002e3b4: 923ff06f j c002dcd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23434 if (!add_export_entry(s, fd->module, - c002e1e8: 4785 li a5,1 - c002e1ea: 2184b603 ld a2,536(s1) - c002e1ee: 8752 mv a4,s4 - c002e1f0: 00fc0363 beq s8,a5,c002e1f6 - c002e1f4: 4759 li a4,22 + c002e3b8: 4785 li a5,1 + c002e3ba: 2184b603 ld a2,536(s1) + c002e3be: 8752 mv a4,s4 + c002e3c0: 00fc0363 beq s8,a5,c002e3c6 + c002e3c4: 4759 li a4,22 add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 (discriminator 4) return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002e1f6: 6008 ld a0,0(s0) - c002e1f8: 4781 li a5,0 - c002e1fa: 86d2 mv a3,s4 - c002e1fc: 85a2 mv a1,s0 - c002e1fe: 90ef80ef jal ra,c002630c + c002e3c6: 6008 ld a0,0(s0) + c002e3c8: 4781 li a5,0 + c002e3ca: 86d2 mv a3,s4 + c002e3cc: 85a2 mv a1,s0 + c002e3ce: 90ef80ef jal ra,c00264dc js_parse_class(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23426 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23434 (discriminator 4) if (!add_export_entry(s, fd->module, - c002e202: 900514e3 bnez a0,c002db0a - c002e206: edaff06f j c002d8e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23084 + c002e3d2: 900514e3 bnez a0,c002dcda + c002e3d6: edaff06f j c002dab0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23092 emit_op(s, OP_swap); - c002e20a: 45ed li a1,27 - c002e20c: 8522 mv a0,s0 - c002e20e: a2ed70ef jal ra,c000543c - c002e212: 4905 li s2,1 - c002e214: b4b1 j c002dc60 + c002e3da: 45ed li a1,27 + c002e3dc: 8522 mv a0,s0 + c002e3de: 94cd70ef jal ra,c000552a + c002e3e2: 4905 li s2,1 + c002e3e4: b4b1 j c002de30 -00000000c002e216 : +00000000c002e3e6 : js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26477 -{ - c002e216: 7111 addi sp,sp,-256 - c002e218: f9a2 sd s0,240(sp) - c002e21a: f1ca sd s2,224(sp) - c002e21c: fd86 sd ra,248(sp) - c002e21e: f5a6 sd s1,232(sp) - c002e220: edce sd s3,216(sp) - c002e222: e9d2 sd s4,208(sp) - c002e224: e5d6 sd s5,200(sp) - c002e226: e1da sd s6,192(sp) - c002e228: fd5e sd s7,184(sp) - c002e22a: f962 sd s8,176(sp) - c002e22c: f566 sd s9,168(sp) - c002e22e: f16a sd s10,160(sp) - c002e230: ed6e sd s11,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26485 +{ + c002e3e6: 7111 addi sp,sp,-256 + c002e3e8: f9a2 sd s0,240(sp) + c002e3ea: f1ca sd s2,224(sp) + c002e3ec: fd86 sd ra,248(sp) + c002e3ee: f5a6 sd s1,232(sp) + c002e3f0: edce sd s3,216(sp) + c002e3f2: e9d2 sd s4,208(sp) + c002e3f4: e5d6 sd s5,200(sp) + c002e3f6: e1da sd s6,192(sp) + c002e3f8: fd5e sd s7,184(sp) + c002e3fa: f962 sd s8,176(sp) + c002e3fc: f566 sd s9,168(sp) + c002e3fe: f16a sd s10,160(sp) + c002e400: ed6e sd s11,152(sp) is_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26194 return (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved && - c002e232: 4d18 lw a4,24(a0) - c002e234: f8300793 li a5,-125 + c002e402: 4d18 lw a4,24(a0) + c002e404: f8300793 li a5,-125 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26486 JSContext *ctx = s->ctx; - c002e238: 00053b83 ld s7,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26477 + c002e408: 00053b83 ld s7,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26485 { - c002e23c: 842a mv s0,a0 - c002e23e: 892e mv s2,a1 + c002e40c: 842a mv s0,a0 + c002e40e: 892e mv s2,a1 is_label(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26194 return (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved && - c002e240: 0cf71163 bne a4,a5,c002e302 - c002e244: 591c lw a5,48(a0) - c002e246: efd5 bnez a5,c002e302 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26187 + c002e410: 0cf71163 bne a4,a5,c002e4d2 + c002e414: 591c lw a5,48(a0) + c002e416: efd5 bnez a5,c002e4d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26195 peek_token(s, FALSE) == ':'); - c002e248: 4581 li a1,0 - c002e24a: d0fd70ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26186 + c002e418: 4581 li a1,0 + c002e41a: c2dd70ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26194 return (s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved && - c002e24e: 03a00793 li a5,58 - c002e252: 0af51863 bne a0,a5,c002e302 + c002e41e: 03a00793 li a5,58 + c002e422: 0af51863 bne a0,a5,c002e4d2 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26496 label_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002e256: 540c lw a1,40(s0) - c002e258: 855e mv a0,s7 - c002e25a: a70d90ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26490 + c002e426: 540c lw a1,40(s0) + c002e428: 855e mv a0,s7 + c002e42a: 98ed90ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26498 for (be = s->cur_func->top_break; be; be = be->prev) { - c002e25e: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26488 + c002e42e: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26496 label_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002e260: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26490 + c002e430: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26498 for (be = s->cur_func->top_break; be; be = be->prev) { - c002e264: 1807b783 ld a5,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26490 (discriminator 1) - c002e268: e3c1 bnez a5,c002e2e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26497 + c002e434: 1807b783 ld a5,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26498 (discriminator 1) + c002e438: e3c1 bnez a5,c002e4b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26505 if (next_token(s)) - c002e26a: 8522 mv a0,s0 - c002e26c: 92bf80ef jal ra,c0026b96 - c002e270: e52d bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26499 + c002e43a: 8522 mv a0,s0 + c002e43c: 92bf80ef jal ra,c0026d66 + c002e440: e52d bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26507 if (js_parse_expect(s, ':')) - c002e272: 03a00593 li a1,58 - c002e276: 8522 mv a0,s0 - c002e278: 86afa0ef jal ra,c00282e2 - c002e27c: 89aa mv s3,a0 - c002e27e: ed31 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26502 + c002e442: 03a00593 li a1,58 + c002e446: 8522 mv a0,s0 + c002e448: 86afa0ef jal ra,c00284b2 + c002e44c: 89aa mv s3,a0 + c002e44e: ed31 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26510 && s->token.val != TOK_DO - c002e280: 4c1c lw a5,24(s0) - c002e282: 4709 li a4,2 - c002e284: 0477879b addiw a5,a5,71 - c002e288: 06f77e63 bgeu a4,a5,c002e304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26508 + c002e450: 4c1c lw a5,24(s0) + c002e452: 4709 li a4,2 + c002e454: 0477879b addiw a5,a5,71 + c002e458: 06f77e63 bgeu a4,a5,c002e4d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26516 label_break = new_label(s); - c002e28c: 8522 mv a0,s0 - c002e28e: a23e90ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26509 + c002e45c: 8522 mv a0,s0 + c002e45e: a23e90ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26517 push_break_entry(s->cur_func, &break_entry, - c002e292: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26508 + c002e462: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26516 label_break = new_label(s); - c002e294: 8a2a mv s4,a0 + c002e464: 8a2a mv s4,a0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002e296: 1807b703 ld a4,384(a5) - c002e29a: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002e466: 1807b703 ld a4,384(a5) + c002e46a: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002e29c: 0898 addi a4,sp,80 - c002e29e: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002e46c: 0898 addi a4,sp,80 + c002e46e: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002e2a2: 577d li a4,-1 - c002e2a4: 02075693 srli a3,a4,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002e472: 577d li a4,-1 + c002e474: 02075693 srli a3,a4,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002e2a8: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002e478: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002e2aa: ceaa sw a0,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002e47a: ceaa sw a0,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002e2ac: f0b6 sd a3,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e47c: f0b6 sd a3,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e2ae: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e47e: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e2b0: 0e07a783 lw a5,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 + c002e480: 0e07a783 lw a5,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002e2b4: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e484: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e2b6: d6be sw a5,108(sp) + c002e486: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26511 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26519 if (!(s->cur_func->js_mode & JS_MODE_STRICT) && - c002e2b8: 743c ld a5,104(s0) - c002e2ba: 0867c783 lbu a5,134(a5) - c002e2be: 8b85 andi a5,a5,1 - c002e2c0: e791 bnez a5,c002e2cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26512 (discriminator 1) + c002e488: 743c ld a5,104(s0) + c002e48a: 0867c783 lbu a5,134(a5) + c002e48e: 8b85 andi a5,a5,1 + c002e490: e791 bnez a5,c002e49c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26520 (discriminator 1) (decl_mask & DECL_MASK_FUNC_WITH_LABEL)) { - c002e2c2: 00297993 andi s3,s2,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26511 (discriminator 1) + c002e492: 00297993 andi s3,s2,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26519 (discriminator 1) if (!(s->cur_func->js_mode & JS_MODE_STRICT) && - c002e2c6: 00098363 beqz s3,c002e2cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26513 + c002e496: 00098363 beqz s3,c002e49c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26521 mask = DECL_MASK_FUNC | DECL_MASK_FUNC_WITH_LABEL; - c002e2ca: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26517 + c002e49a: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26525 if (js_parse_statement_or_decl(s, mask)) - c002e2cc: 85ce mv a1,s3 - c002e2ce: 8522 mv a0,s0 - c002e2d0: f47ff0ef jal ra,c002e216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26519 + c002e49c: 85ce mv a1,s3 + c002e49e: 8522 mv a0,s0 + c002e4a0: f47ff0ef jal ra,c002e3e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26527 emit_label(s, label_break); - c002e2d4: 85d2 mv a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26517 + c002e4a4: 85d2 mv a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26525 if (js_parse_statement_or_decl(s, mask)) - c002e2d6: 24050d63 beqz a0,c002e530 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27219 + c002e4a6: 24050d63 beqz a0,c002e700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27227 JS_FreeAtom(ctx, label_name); - c002e2da: 85a6 mv a1,s1 - c002e2dc: 855e mv a0,s7 - c002e2de: a2ed90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27220 + c002e4aa: 85a6 mv a1,s1 + c002e4ac: 855e mv a0,s7 + c002e4ae: 94cd90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27228 return -1; - c002e2e2: 57fd li a5,-1 - c002e2e4: 1b60106f j c002f49a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26491 + c002e4b2: 57fd li a5,-1 + c002e4b4: 1b60106f j c002f66a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26499 if (be->label_name == label_name) { - c002e2e8: 4798 lw a4,8(a5) - c002e2ea: 00971a63 bne a4,s1,c002e2fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26492 + c002e4b8: 4798 lw a4,8(a5) + c002e4ba: 00971a63 bne a4,s1,c002e4ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26500 js_parse_error(s, "duplicate label name"); - c002e2ee: 00032597 auipc a1,0x32 - c002e2f2: ca258593 addi a1,a1,-862 # c005ff90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27178 + c002e4be: 00032597 auipc a1,0x32 + c002e4c2: d3258593 addi a1,a1,-718 # c00601f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27186 js_parse_error(s, "class declarations can't appear in single-statement context"); - c002e2f6: 8522 mv a0,s0 - c002e2f8: fc1f70ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27179 + c002e4c6: 8522 mv a0,s0 + c002e4c8: fc1f70ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27187 goto fail; - c002e2fc: bff9 j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26490 (discriminator 2) + c002e4cc: bff9 j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26498 (discriminator 2) for (be = s->cur_func->top_break; be; be = be->prev) { - c002e2fe: 639c ld a5,0(a5) - c002e300: b7a5 j c002e268 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26484 + c002e4ce: 639c ld a5,0(a5) + c002e4d0: b7a5 j c002e438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26492 label_name = JS_ATOM_NULL; - c002e302: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26525 + c002e4d2: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26533 switch(tok = s->token.val) { - c002e304: 01842983 lw s3,24(s0) - c002e308: fd200793 li a5,-46 - c002e30c: 06f9d763 bge s3,a5,c002e37a - c002e310: fae00793 li a5,-82 - c002e314: 02f9df63 bge s3,a5,c002e352 - c002e318: f8300793 li a5,-125 - c002e31c: 00f99463 bne s3,a5,c002e324 - c002e320: 0ca0106f j c002f3ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27201 + c002e4d4: 01842983 lw s3,24(s0) + c002e4d8: fd200793 li a5,-46 + c002e4dc: 06f9d763 bge s3,a5,c002e54a + c002e4e0: fae00793 li a5,-82 + c002e4e4: 02f9df63 bge s3,a5,c002e522 + c002e4e8: f8300793 li a5,-125 + c002e4ec: 00f99463 bne s3,a5,c002e4f4 + c002e4f0: 0ca0106f j c002f5ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27209 if (js_parse_expr(s)) - c002e324: 8522 mv a0,s0 - c002e326: 844ff0ef jal ra,c002d36a - c002e32a: f945 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27203 + c002e4f4: 8522 mv a0,s0 + c002e4f6: 844ff0ef jal ra,c002d53a + c002e4fa: f945 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27211 if (s->cur_func->eval_ret_idx >= 0) { - c002e32c: 743c ld a5,104(s0) - c002e32e: 0c87a783 lw a5,200(a5) - c002e332: 0007d463 bgez a5,c002e33a - c002e336: 1a20106f j c002f4d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27206 + c002e4fc: 743c ld a5,104(s0) + c002e4fe: 0c87a783 lw a5,200(a5) + c002e502: 0007d463 bgez a5,c002e50a + c002e506: 1a20106f j c002f6a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27214 emit_op(s, OP_put_loc); - c002e33a: 8522 mv a0,s0 - c002e33c: 05900593 li a1,89 - c002e340: 8fcd70ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27207 + c002e50a: 8522 mv a0,s0 + c002e50c: 05900593 li a1,89 + c002e510: 81ad70ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27215 emit_u16(s, s->cur_func->eval_ret_idx); - c002e344: 743c ld a5,104(s0) - c002e346: 8522 mv a0,s0 - c002e348: 0c87d583 lhu a1,200(a5) - c002e34c: fbfd60ef jal ra,c000530a - c002e350: a871 j c002e3ec - c002e352: 0529879b addiw a5,s3,82 - c002e356: 0007869b sext.w a3,a5 - c002e35a: 02300713 li a4,35 - c002e35e: fcd763e3 bltu a4,a3,c002e324 - c002e362: 02079713 slli a4,a5,0x20 - c002e366: 01e75793 srli a5,a4,0x1e - c002e36a: 00032717 auipc a4,0x32 - c002e36e: f8670713 addi a4,a4,-122 # c00602f0 - c002e372: 97ba add a5,a5,a4 - c002e374: 439c lw a5,0(a5) - c002e376: 97ba add a5,a5,a4 - c002e378: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26525 + c002e514: 743c ld a5,104(s0) + c002e516: 8522 mv a0,s0 + c002e518: 0c87d583 lhu a1,200(a5) + c002e51c: eddd60ef jal ra,c00053f8 + c002e520: a871 j c002e5bc + c002e522: 0529879b addiw a5,s3,82 + c002e526: 0007869b sext.w a3,a5 + c002e52a: 02300713 li a4,35 + c002e52e: fcd763e3 bltu a4,a3,c002e4f4 + c002e532: 02079713 slli a4,a5,0x20 + c002e536: 01e75793 srli a5,a4,0x1e + c002e53a: 00032717 auipc a4,0x32 + c002e53e: 01670713 addi a4,a4,22 # c0060550 + c002e542: 97ba add a5,a5,a4 + c002e544: 439c lw a5,0(a5) + c002e546: 97ba add a5,a5,a4 + c002e548: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26533 switch(tok = s->token.val) { - c002e37a: 03b00793 li a5,59 - c002e37e: 00f99463 bne s3,a5,c002e386 - c002e382: 79d0006f j c002f31e - c002e386: 07b00793 li a5,123 - c002e38a: f8f99de3 bne s3,a5,c002e324 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26527 + c002e54a: 03b00793 li a5,59 + c002e54e: 00f99463 bne s3,a5,c002e556 + c002e552: 79d0006f j c002f4ee + c002e556: 07b00793 li a5,123 + c002e55a: f8f99de3 bne s3,a5,c002e4f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26535 if (js_parse_block(s)) - c002e38e: 8522 mv a0,s0 - c002e390: 786010ef jal ra,c002fb16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27211 + c002e55e: 8522 mv a0,s0 + c002e560: 786010ef jal ra,c002fce6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27219 if (js_parse_expect_semi(s)) - c002e394: 1a050763 beqz a0,c002e542 - c002e398: b789 j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26531 + c002e564: 1a050763 beqz a0,c002e712 + c002e568: b789 j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26539 if (s->cur_func->is_eval) { - c002e39a: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26532 + c002e56a: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26540 js_parse_error(s, "return not in a function"); - c002e39c: 00032597 auipc a1,0x32 - c002e3a0: c0c58593 addi a1,a1,-1012 # c005ffa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26531 + c002e56c: 00032597 auipc a1,0x32 + c002e570: c9c58593 addi a1,a1,-868 # c0060208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26539 if (s->cur_func->is_eval) { - c002e3a4: 5f98 lw a4,56(a5) - c002e3a6: fb21 bnez a4,c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26535 + c002e574: 5f98 lw a4,56(a5) + c002e576: fb21 bnez a4,c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26543 if (s->cur_func->func_type == JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002e3a8: 0857c703 lbu a4,133(a5) - c002e3ac: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26536 + c002e578: 0857c703 lbu a4,133(a5) + c002e57c: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26544 js_parse_error(s, "return in a static initializer block"); - c002e3ae: 00032597 auipc a1,0x32 - c002e3b2: c1a58593 addi a1,a1,-998 # c005ffc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26535 + c002e57e: 00032597 auipc a1,0x32 + c002e582: caa58593 addi a1,a1,-854 # c0060228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26543 if (s->cur_func->func_type == JS_PARSE_FUNC_CLASS_STATIC_INIT) { - c002e3b6: f4f700e3 beq a4,a5,c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26539 + c002e586: f4f700e3 beq a4,a5,c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26547 if (next_token(s)) - c002e3ba: 8522 mv a0,s0 - c002e3bc: fdaf80ef jal ra,c0026b96 - c002e3c0: f0051de3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26541 + c002e58a: 8522 mv a0,s0 + c002e58c: fdaf80ef jal ra,c0026d66 + c002e590: f0051de3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26549 if (s->token.val != ';' && s->token.val != '}' && !s->got_lf) { - c002e3c4: 4c1c lw a5,24(s0) - c002e3c6: 03b00713 li a4,59 - c002e3ca: 02e78563 beq a5,a4,c002e3f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26541 (discriminator 1) - c002e3ce: 07d00713 li a4,125 - c002e3d2: 02e78163 beq a5,a4,c002e3f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26541 (discriminator 2) - c002e3d6: 443c lw a5,72(s0) - c002e3d8: ef91 bnez a5,c002e3f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26542 + c002e594: 4c1c lw a5,24(s0) + c002e596: 03b00713 li a4,59 + c002e59a: 02e78563 beq a5,a4,c002e5c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26549 (discriminator 1) + c002e59e: 07d00713 li a4,125 + c002e5a2: 02e78163 beq a5,a4,c002e5c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26549 (discriminator 2) + c002e5a6: 443c lw a5,72(s0) + c002e5a8: ef91 bnez a5,c002e5c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26550 if (js_parse_expr(s)) - c002e3da: 8522 mv a0,s0 - c002e3dc: f8ffe0ef jal ra,c002d36a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26544 + c002e5aa: 8522 mv a0,s0 + c002e5ac: f8ffe0ef jal ra,c002d53a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26552 emit_return(s, TRUE); - c002e3e0: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26542 + c002e5b0: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26550 if (js_parse_expr(s)) - c002e3e2: ee051ce3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26546 + c002e5b2: ee051ce3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26554 emit_return(s, FALSE); - c002e3e6: 8522 mv a0,s0 - c002e3e8: 9b7e90ef jal ra,c0017d9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27211 + c002e5b6: 8522 mv a0,s0 + c002e5b8: 9b7e90ef jal ra,c0017f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27219 if (js_parse_expect_semi(s)) - c002e3ec: 8522 mv a0,s0 - c002e3ee: d06f90ef jal ra,c00278f4 - c002e3f2: b74d j c002e394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26546 + c002e5bc: 8522 mv a0,s0 + c002e5be: d06f90ef jal ra,c0027ac4 + c002e5c2: b74d j c002e564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26554 emit_return(s, FALSE); - c002e3f4: 4581 li a1,0 - c002e3f6: bfc5 j c002e3e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26552 + c002e5c4: 4581 li a1,0 + c002e5c6: bfc5 j c002e5b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26560 if (next_token(s)) - c002e3f8: 8522 mv a0,s0 - c002e3fa: f9cf80ef jal ra,c0026b96 - c002e3fe: ec051ee3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26554 + c002e5c8: 8522 mv a0,s0 + c002e5ca: f9cf80ef jal ra,c0026d66 + c002e5ce: ec051ee3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26562 if (s->got_lf) { - c002e402: 443c lw a5,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26555 + c002e5d2: 443c lw a5,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26563 js_parse_error(s, "line terminator not allowed after throw"); - c002e404: 00032597 auipc a1,0x32 - c002e408: bec58593 addi a1,a1,-1044 # c005fff0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26554 + c002e5d4: 00032597 auipc a1,0x32 + c002e5d8: c7c58593 addi a1,a1,-900 # c0060250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26562 if (s->got_lf) { - c002e40c: ee0795e3 bnez a5,c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26558 + c002e5dc: ee0795e3 bnez a5,c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26566 if (js_parse_expr(s)) - c002e410: 8522 mv a0,s0 - c002e412: f59fe0ef jal ra,c002d36a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26560 + c002e5e0: 8522 mv a0,s0 + c002e5e2: f59fe0ef jal ra,c002d53a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26568 emit_op(s, OP_throw); - c002e416: 02f00593 li a1,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26558 + c002e5e6: 02f00593 li a1,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26566 if (js_parse_expr(s)) - c002e41a: ec0510e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27209 + c002e5ea: ec0510e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27217 emit_op(s, OP_drop); /* drop the result */ - c002e41e: 8522 mv a0,s0 - c002e420: 81cd70ef jal ra,c000543c - c002e424: b7e1 j c002e3ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26583 + c002e5ee: 8522 mv a0,s0 + c002e5f0: f3bd60ef jal ra,c000552a + c002e5f4: b7e1 j c002e5bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26591 if (next_token(s)) - c002e426: 8522 mv a0,s0 - c002e428: f6ef80ef jal ra,c0026b96 - c002e42c: ea0517e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26586 + c002e5f6: 8522 mv a0,s0 + c002e5f8: f6ef80ef jal ra,c0026d66 + c002e5fc: ea0517e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26594 push_scope(s); - c002e430: 8522 mv a0,s0 - c002e432: 8daea0ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26587 + c002e600: 8522 mv a0,s0 + c002e602: 8daea0ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26595 set_eval_ret_undefined(s); - c002e436: 8522 mv a0,s0 - c002e438: bd7d70ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26588 + c002e606: 8522 mv a0,s0 + c002e608: af5d70ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26596 if (js_parse_expr_paren(s)) - c002e43c: 8522 mv a0,s0 - c002e43e: 960ff0ef jal ra,c002d59e - c002e442: e8051ce3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26590 + c002e60c: 8522 mv a0,s0 + c002e60e: 960ff0ef jal ra,c002d76e + c002e612: e8051ce3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26598 label1 = emit_goto(s, OP_if_false, -1); - c002e446: 06a00593 li a1,106 - c002e44a: 567d li a2,-1 - c002e44c: 8522 mv a0,s0 - c002e44e: 86be90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26591 + c002e616: 06a00593 li a1,106 + c002e61a: 567d li a2,-1 + c002e61c: 8522 mv a0,s0 + c002e61e: 86be90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26599 if (s->cur_func->js_mode & JS_MODE_STRICT) - c002e452: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26590 + c002e622: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26598 label1 = emit_goto(s, OP_if_false, -1); - c002e454: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26596 + c002e624: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26604 if (js_parse_statement_or_decl(s, mask)) - c002e456: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26591 + c002e626: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26599 if (s->cur_func->js_mode & JS_MODE_STRICT) - c002e458: 0867c903 lbu s2,134(a5) - c002e45c: 00197913 andi s2,s2,1 - c002e460: 00194913 xori s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26596 + c002e628: 0867c903 lbu s2,134(a5) + c002e62c: 00197913 andi s2,s2,1 + c002e630: 00194913 xori s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26604 if (js_parse_statement_or_decl(s, mask)) - c002e464: 85ca mv a1,s2 - c002e466: db1ff0ef jal ra,c002e216 - c002e46a: e60518e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26599 + c002e634: 85ca mv a1,s2 + c002e636: db1ff0ef jal ra,c002e3e6 + c002e63a: e60518e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26607 if (s->token.val == TOK_ELSE) { - c002e46e: 4c18 lw a4,24(s0) - c002e470: faf00793 li a5,-81 - c002e474: 02f71963 bne a4,a5,c002e4a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26600 + c002e63e: 4c18 lw a4,24(s0) + c002e640: faf00793 li a5,-81 + c002e644: 02f71963 bne a4,a5,c002e676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26608 label2 = emit_goto(s, OP_goto, -1); - c002e478: 567d li a2,-1 - c002e47a: 06c00593 li a1,108 - c002e47e: 8522 mv a0,s0 - c002e480: 839e90ef jal ra,c0017cb8 - c002e484: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26601 + c002e648: 567d li a2,-1 + c002e64a: 06c00593 li a1,108 + c002e64e: 8522 mv a0,s0 + c002e650: 839e90ef jal ra,c0017e88 + c002e654: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26609 if (next_token(s)) - c002e486: 8522 mv a0,s0 - c002e488: f0ef80ef jal ra,c0026b96 - c002e48c: e40517e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26604 + c002e656: 8522 mv a0,s0 + c002e658: f0ef80ef jal ra,c0026d66 + c002e65c: e40517e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26612 emit_label(s, label1); - c002e490: 85ce mv a1,s3 - c002e492: 8522 mv a0,s0 - c002e494: 946d70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26605 + c002e660: 85ce mv a1,s3 + c002e662: 8522 mv a0,s0 + c002e664: 864d70ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26613 if (js_parse_statement_or_decl(s, mask)) - c002e498: 85ca mv a1,s2 - c002e49a: 8522 mv a0,s0 - c002e49c: d7bff0ef jal ra,c002e216 - c002e4a0: e2051de3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26608 + c002e668: 85ca mv a1,s2 + c002e66a: 8522 mv a0,s0 + c002e66c: d7bff0ef jal ra,c002e3e6 + c002e670: e2051de3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26616 label1 = label2; - c002e4a4: 89d2 mv s3,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26610 + c002e674: 89d2 mv s3,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26618 emit_label(s, label1); - c002e4a6: 85ce mv a1,s3 - c002e4a8: 8522 mv a0,s0 - c002e4aa: 930d70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27135 + c002e676: 85ce mv a1,s3 + c002e678: 8522 mv a0,s0 + c002e67a: 84ed70ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27143 pop_scope(s); - c002e4ae: 8522 mv a0,s0 - c002e4b0: 888d70ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27137 + c002e67e: 8522 mv a0,s0 + c002e680: fa7d60ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27145 break; - c002e4b4: a079 j c002e542 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26619 + c002e684: a079 j c002e712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26627 label_cont = new_label(s); - c002e4b6: 8522 mv a0,s0 - c002e4b8: ff8e90ef jal ra,c0017cb0 - c002e4bc: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26620 + c002e686: 8522 mv a0,s0 + c002e688: ff8e90ef jal ra,c0017e80 + c002e68c: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26628 label_break = new_label(s); - c002e4be: 8522 mv a0,s0 - c002e4c0: ff0e90ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26622 + c002e68e: 8522 mv a0,s0 + c002e690: ff0e90ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26630 push_break_entry(s->cur_func, &break_entry, - c002e4c4: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26620 + c002e694: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26628 label_break = new_label(s); - c002e4c6: 892a mv s2,a0 + c002e696: 892a mv s2,a0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002e4c8: 1807b703 ld a4,384(a5) - c002e4cc: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002e698: 1807b703 ld a4,384(a5) + c002e69c: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002e4ce: 0898 addi a4,sp,80 - c002e4d0: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e69e: 0898 addi a4,sp,80 + c002e6a0: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e4d4: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002e6a4: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002e4d6: ceaa sw a0,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002e6a6: ceaa sw a0,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002e4d8: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002e6a8: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002e4da: d0ce sw s3,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25905 + c002e6aa: d0ce sw s3,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25913 be->drop_count = drop_count; - c002e4dc: d282 sw zero,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e6ac: d282 sw zero,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e4de: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e6ae: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e4e0: 0e07a783 lw a5,224(a5) + c002e6b0: 0e07a783 lw a5,224(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26633 if (next_token(s)) - c002e4e4: 8522 mv a0,s0 + c002e6b4: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002e4e6: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e6b6: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e4e8: d6be sw a5,108(sp) + c002e6b8: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26633 if (next_token(s)) - c002e4ea: eacf80ef jal ra,c0026b96 - c002e4ee: de0516e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26628 + c002e6ba: eacf80ef jal ra,c0026d66 + c002e6be: de0516e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26636 set_eval_ret_undefined(s); - c002e4f2: 8522 mv a0,s0 - c002e4f4: b1bd70ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26630 + c002e6c2: 8522 mv a0,s0 + c002e6c4: a39d70ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26638 emit_label(s, label_cont); - c002e4f8: 85ce mv a1,s3 - c002e4fa: 8522 mv a0,s0 - c002e4fc: 8ded70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26631 + c002e6c8: 85ce mv a1,s3 + c002e6ca: 8522 mv a0,s0 + c002e6cc: ffdd60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26639 if (js_parse_expr_paren(s)) - c002e500: 8522 mv a0,s0 - c002e502: 89cff0ef jal ra,c002d59e - c002e506: dc051ae3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26633 + c002e6d0: 8522 mv a0,s0 + c002e6d2: 89cff0ef jal ra,c002d76e + c002e6d6: dc051ae3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26641 emit_goto(s, OP_if_false, label_break); - c002e50a: 06a00593 li a1,106 - c002e50e: 864a mv a2,s2 - c002e510: 8522 mv a0,s0 - c002e512: fa6e90ef jal ra,c0017cb8 + c002e6da: 06a00593 li a1,106 + c002e6de: 864a mv a2,s2 + c002e6e0: 8522 mv a0,s0 + c002e6e2: fa6e90ef jal ra,c0017e88 js_parse_statement(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 return js_parse_statement_or_decl(s, 0); - c002e516: 4581 li a1,0 - c002e518: 8522 mv a0,s0 - c002e51a: cfdff0ef jal ra,c002e216 + c002e6e6: 4581 li a1,0 + c002e6e8: 8522 mv a0,s0 + c002e6ea: cfdff0ef jal ra,c002e3e6 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26635 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26643 if (js_parse_statement(s)) - c002e51e: da051ee3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26637 + c002e6ee: da051ee3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26645 emit_goto(s, OP_goto, label_cont); - c002e522: 864e mv a2,s3 - c002e524: 06c00593 li a1,108 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26676 + c002e6f2: 864e mv a2,s3 + c002e6f4: 06c00593 li a1,108 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26684 emit_goto(s, OP_if_true, label1); - c002e528: 8522 mv a0,s0 - c002e52a: f8ee90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26678 + c002e6f8: 8522 mv a0,s0 + c002e6fa: f8ee90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26686 emit_label(s, label_break); - c002e52e: 85ca mv a1,s2 - c002e530: 8522 mv a0,s0 - c002e532: 8a8d70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26680 + c002e6fe: 85ca mv a1,s2 + c002e700: 8522 mv a0,s0 + c002e702: fc7d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26688 pop_break_entry(s->cur_func); - c002e536: 743c ld a5,104(s0) + c002e706: 743c ld a5,104(s0) pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002e538: 1807b703 ld a4,384(a5) - c002e53c: 6318 ld a4,0(a4) - c002e53e: 18e7b023 sd a4,384(a5) + c002e708: 1807b703 ld a4,384(a5) + c002e70c: 6318 ld a4,0(a4) + c002e70e: 18e7b023 sd a4,384(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27224 JS_FreeAtom(ctx, label_name); - c002e542: 85a6 mv a1,s1 - c002e544: 855e mv a0,s7 - c002e546: fc7d80ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27217 + c002e712: 85a6 mv a1,s1 + c002e714: 855e mv a0,s7 + c002e716: ee5d80ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27225 return 0; - c002e54a: 4781 li a5,0 - c002e54c: 74f0006f j c002f49a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26649 + c002e71a: 4781 li a5,0 + c002e71c: 74f0006f j c002f66a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26657 label_cont = new_label(s); - c002e550: 8522 mv a0,s0 - c002e552: f5ee90ef jal ra,c0017cb0 - c002e556: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26650 + c002e720: 8522 mv a0,s0 + c002e722: f5ee90ef jal ra,c0017e80 + c002e726: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26658 label_break = new_label(s); - c002e558: 8522 mv a0,s0 - c002e55a: f56e90ef jal ra,c0017cb0 - c002e55e: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26651 + c002e728: 8522 mv a0,s0 + c002e72a: f56e90ef jal ra,c0017e80 + c002e72e: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26659 label1 = new_label(s); - c002e560: 8522 mv a0,s0 - c002e562: f4ee90ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26653 + c002e730: 8522 mv a0,s0 + c002e732: f4ee90ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26661 push_break_entry(s->cur_func, &break_entry, - c002e566: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26651 + c002e736: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26659 label1 = new_label(s); - c002e568: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26656 + c002e738: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26664 if (next_token(s)) - c002e56a: 8522 mv a0,s0 + c002e73a: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002e56c: 1807b703 ld a4,384(a5) - c002e570: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002e73c: 1807b703 ld a4,384(a5) + c002e740: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002e572: 0898 addi a4,sp,80 - c002e574: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e742: 0898 addi a4,sp,80 + c002e744: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e578: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002e748: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002e57a: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002e74a: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002e57c: ceca sw s2,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002e74c: ceca sw s2,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002e57e: d0d2 sw s4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25905 + c002e74e: d0d2 sw s4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25913 be->drop_count = drop_count; - c002e580: d282 sw zero,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e750: d282 sw zero,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e582: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e752: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e584: 0e07a783 lw a5,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 + c002e754: 0e07a783 lw a5,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002e588: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002e758: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002e58a: d6be sw a5,108(sp) + c002e75a: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26664 if (next_token(s)) - c002e58c: e0af80ef jal ra,c0026b96 - c002e590: d40515e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26659 + c002e75c: e0af80ef jal ra,c0026d66 + c002e760: d40515e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26667 emit_label(s, label1); - c002e594: 85ce mv a1,s3 - c002e596: 8522 mv a0,s0 - c002e598: 842d70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26661 + c002e764: 85ce mv a1,s3 + c002e766: 8522 mv a0,s0 + c002e768: f61d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26669 set_eval_ret_undefined(s); - c002e59c: 8522 mv a0,s0 - c002e59e: a71d70ef jal ra,c000600e + c002e76c: 8522 mv a0,s0 + c002e76e: 98fd70ef jal ra,c00060fc js_parse_statement(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 return js_parse_statement_or_decl(s, 0); - c002e5a2: 4581 li a1,0 - c002e5a4: 8522 mv a0,s0 - c002e5a6: c71ff0ef jal ra,c002e216 + c002e772: 4581 li a1,0 + c002e774: 8522 mv a0,s0 + c002e776: c71ff0ef jal ra,c002e3e6 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26663 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26671 if (js_parse_statement(s)) - c002e5aa: d20518e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26666 + c002e77a: d20518e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26674 emit_label(s, label_cont); - c002e5ae: 85d2 mv a1,s4 - c002e5b0: 8522 mv a0,s0 - c002e5b2: 828d70ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26667 + c002e77e: 85d2 mv a1,s4 + c002e780: 8522 mv a0,s0 + c002e782: f47d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26675 if (js_parse_expect(s, TOK_WHILE)) - c002e5b6: fba00593 li a1,-70 - c002e5ba: 8522 mv a0,s0 - c002e5bc: d27f90ef jal ra,c00282e2 - c002e5c0: d0051de3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26669 + c002e786: fba00593 li a1,-70 + c002e78a: 8522 mv a0,s0 + c002e78c: d27f90ef jal ra,c00284b2 + c002e790: d0051de3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26677 if (js_parse_expr_paren(s)) - c002e5c4: 8522 mv a0,s0 - c002e5c6: fd9fe0ef jal ra,c002d59e - c002e5ca: d00518e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26672 + c002e794: 8522 mv a0,s0 + c002e796: fd9fe0ef jal ra,c002d76e + c002e79a: d00518e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26680 if (s->token.val == ';') { - c002e5ce: 4c18 lw a4,24(s0) - c002e5d0: 03b00793 li a5,59 - c002e5d4: 00f70663 beq a4,a5,c002e5e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26676 + c002e79e: 4c18 lw a4,24(s0) + c002e7a0: 03b00793 li a5,59 + c002e7a4: 00f70663 beq a4,a5,c002e7b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26684 emit_goto(s, OP_if_true, label1); - c002e5d8: 864e mv a2,s3 - c002e5da: 06b00593 li a1,107 - c002e5de: b7a9 j c002e528 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26673 + c002e7a8: 864e mv a2,s3 + c002e7aa: 06b00593 li a1,107 + c002e7ae: b7a9 j c002e6f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26681 if (next_token(s)) - c002e5e0: 8522 mv a0,s0 - c002e5e2: db4f80ef jal ra,c0026b96 - c002e5e6: d96d beqz a0,c002e5d8 - c002e5e8: b9cd j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26691 + c002e7b0: 8522 mv a0,s0 + c002e7b2: db4f80ef jal ra,c0026d66 + c002e7b6: d96d beqz a0,c002e7a8 + c002e7b8: b9cd j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26699 if (next_token(s)) - c002e5ea: 8522 mv a0,s0 - c002e5ec: daaf80ef jal ra,c0026b96 - c002e5f0: 89aa mv s3,a0 - c002e5f2: ce0514e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26694 + c002e7ba: 8522 mv a0,s0 + c002e7bc: daaf80ef jal ra,c0026d66 + c002e7c0: 89aa mv s3,a0 + c002e7c2: ce0514e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26702 set_eval_ret_undefined(s); - c002e5f6: 8522 mv a0,s0 - c002e5f8: a17d70ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26697 + c002e7c6: 8522 mv a0,s0 + c002e7c8: 935d70ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26705 if (s->token.val == '(') { - c002e5fc: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26695 + c002e7cc: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26703 bits = 0; - c002e5fe: dc02 sw zero,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26697 + c002e7ce: dc02 sw zero,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26705 if (s->token.val == '(') { - c002e600: 02800713 li a4,40 - c002e604: 0ae79963 bne a5,a4,c002e6b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26698 + c002e7d0: 02800713 li a4,40 + c002e7d4: 0ae79963 bne a5,a4,c002e886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26706 js_parse_skip_parens_token(s, &bits, FALSE); - c002e608: 4601 li a2,0 - c002e60a: 182c addi a1,sp,56 - c002e60c: 8522 mv a0,s0 - c002e60e: 890f90ef jal ra,c002769e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26709 + c002e7d8: 4601 li a2,0 + c002e7da: 182c addi a1,sp,56 + c002e7dc: 8522 mv a0,s0 + c002e7de: 890f90ef jal ra,c002786e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26717 if (js_parse_expect(s, '(')) - c002e612: 02800593 li a1,40 - c002e616: 8522 mv a0,s0 - c002e618: ccbf90ef jal ra,c00282e2 - c002e61c: ca051fe3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26712 + c002e7e2: 02800593 li a1,40 + c002e7e6: 8522 mv a0,s0 + c002e7e8: ccbf90ef jal ra,c00284b2 + c002e7ec: ca051fe3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26720 if (!(bits & SKIP_HAS_SEMI)) { - c002e620: 5962 lw s2,56(sp) + c002e7f0: 5962 lw s2,56(sp) js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26245 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26253 JSFunctionDef *fd = s->cur_func; - c002e622: 06843d03 ld s10,104(s0) + c002e7f2: 06843d03 ld s10,104(s0) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26720 if (!(bits & SKIP_HAS_SEMI)) { - c002e626: 00197913 andi s2,s2,1 + c002e7f6: 00197913 andi s2,s2,1 js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26264 block_scope_level = fd->scope_level; - c002e62a: 0e0d2c03 lw s8,224(s10) + c002e7fa: 0e0d2c03 lw s8,224(s10) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26720 if (!(bits & SKIP_HAS_SEMI)) { - c002e62e: 4a091063 bnez s2,c002eace + c002e7fe: 4a091063 bnez s2,c002ec9e js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26257 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26265 label_cont = new_label(s); - c002e632: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26244 + c002e802: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26252 JSContext *ctx = s->ctx; - c002e634: 00043d83 ld s11,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26257 + c002e804: 00043d83 ld s11,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26265 label_cont = new_label(s); - c002e638: e78e90ef jal ra,c0017cb0 - c002e63c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26258 + c002e808: e78e90ef jal ra,c0017e80 + c002e80c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26266 label_body = new_label(s); - c002e63e: 8522 mv a0,s0 - c002e640: e70e90ef jal ra,c0017cb0 - c002e644: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26259 + c002e80e: 8522 mv a0,s0 + c002e810: e70e90ef jal ra,c0017e80 + c002e814: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26267 label_break = new_label(s); - c002e646: 8522 mv a0,s0 - c002e648: e68e90ef jal ra,c0017cb0 - c002e64c: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26260 + c002e816: 8522 mv a0,s0 + c002e818: e68e90ef jal ra,c0017e80 + c002e81c: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26268 label_next = new_label(s); - c002e64e: 8522 mv a0,s0 - c002e650: e60e90ef jal ra,c0017cb0 - c002e654: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26265 + c002e81e: 8522 mv a0,s0 + c002e820: e60e90ef jal ra,c0017e80 + c002e824: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26273 push_scope(s); - c002e656: 8522 mv a0,s0 - c002e658: eb5e90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26269 + c002e826: 8522 mv a0,s0 + c002e828: eb5e90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26277 push_break_entry(s->cur_func, &break_entry, - c002e65c: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26273 + c002e82c: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26281 label_expr = emit_goto(s, OP_goto, -1); - c002e65e: 567d li a2,-1 - c002e660: 06c00593 li a1,108 + c002e82e: 567d li a2,-1 + c002e830: 06c00593 li a1,108 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002e664: 1807b703 ld a4,384(a5) + c002e834: 1807b703 ld a4,384(a5) js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26273 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26281 label_expr = emit_goto(s, OP_goto, -1); - c002e668: 8522 mv a0,s0 + c002e838: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002e66a: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002e83a: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002e66c: 0898 addi a4,sp,80 - c002e66e: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002e83c: 0898 addi a4,sp,80 + c002e83e: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002e672: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002e842: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002e674: 577d li a4,-1 - c002e676: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002e844: 577d li a4,-1 + c002e846: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002e678: cebe sw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25905 + c002e848: cebe sw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25913 be->drop_count = drop_count; - c002e67a: 4785 li a5,1 - c002e67c: d2be sw a5,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002e84a: 4785 li a5,1 + c002e84c: d2be sw a5,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002e67e: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002e84e: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002e680: d0d6 sw s5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 + c002e850: d0d6 sw s5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002e682: d882 sw zero,112(sp) + c002e852: d882 sw zero,112(sp) js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26271 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26279 break_entry.scope_level = block_scope_level; - c002e684: d6e2 sw s8,108(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26273 + c002e854: d6e2 sw s8,108(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26281 label_expr = emit_goto(s, OP_goto, -1); - c002e686: e32e90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26275 + c002e856: e32e90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26283 pos_next = s->cur_func->byte_code.size; - c002e68a: 7438 ld a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26276 + c002e85a: 7438 ld a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26284 emit_label(s, label_next); - c002e68c: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26273 + c002e85c: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26281 label_expr = emit_goto(s, OP_goto, -1); - c002e68e: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26276 + c002e85e: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26284 emit_label(s, label_next); - c002e690: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26275 + c002e860: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26283 pos_next = s->cur_func->byte_code.size; - c002e692: 13873c83 ld s9,312(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26276 + c002e862: 13873c83 ld s9,312(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26284 emit_label(s, label_next); - c002e696: f45d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26279 + c002e866: e63d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26287 switch (is_let(s, DECL_MASK_OTHER)) { - c002e69a: 4591 li a1,4 - c002e69c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26278 + c002e86a: 4591 li a1,4 + c002e86c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26286 tok = s->token.val; - c002e69e: 01842a03 lw s4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26279 + c002e86e: 01842a03 lw s4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26287 switch (is_let(s, DECL_MASK_OTHER)) { - c002e6a2: dc3f80ef jal ra,c0027464 - c002e6a6: 8b2a mv s6,a0 - c002e6a8: c121 beqz a0,c002e6e8 - c002e6aa: 4785 li a5,1 - c002e6ac: c2f517e3 bne a0,a5,c002e2da - c002e6b0: fd100a13 li s4,-47 - c002e6b4: a0b1 j c002e700 + c002e872: dc3f80ef jal ra,c0027634 + c002e876: 8b2a mv s6,a0 + c002e878: c121 beqz a0,c002e8b8 + c002e87a: 4785 li a5,1 + c002e87c: c2f517e3 bne a0,a5,c002e4aa + c002e880: fd100a13 li s4,-47 + c002e884: a0b1 j c002e8d0 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26707 } else if (s->token.val == TOK_AWAIT) { - c002e6b6: fd800713 li a4,-40 - c002e6ba: f4e79ce3 bne a5,a4,c002e612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26700 + c002e886: fd800713 li a4,-40 + c002e88a: f4e79ce3 bne a5,a4,c002e7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26708 if (!(s->cur_func->func_kind & JS_FUNC_ASYNC)) { - c002e6be: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26701 + c002e88e: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26709 js_parse_error(s, "for await is only valid in asynchronous functions"); - c002e6c0: 00032597 auipc a1,0x32 - c002e6c4: 99858593 addi a1,a1,-1640 # c0060058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26700 + c002e890: 00032597 auipc a1,0x32 + c002e894: a2858593 addi a1,a1,-1496 # c00602b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26708 if (!(s->cur_func->func_kind & JS_FUNC_ASYNC)) { - c002e6c8: 0847c783 lbu a5,132(a5) - c002e6cc: 8b89 andi a5,a5,2 - c002e6ce: c20784e3 beqz a5,c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26705 + c002e898: 0847c783 lbu a5,132(a5) + c002e89c: 8b89 andi a5,a5,2 + c002e89e: c20784e3 beqz a5,c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26713 if (next_token(s)) - c002e6d2: 8522 mv a0,s0 - c002e6d4: cc2f80ef jal ra,c0026b96 - c002e6d8: c00511e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26707 + c002e8a2: 8522 mv a0,s0 + c002e8a4: cc2f80ef jal ra,c0026d66 + c002e8a8: c00511e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26715 s->cur_func->has_await = TRUE; - c002e6dc: 743c ld a5,104(s0) - c002e6de: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26704 + c002e8ac: 743c ld a5,104(s0) + c002e8ae: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26712 is_async = TRUE; - c002e6e0: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26707 + c002e8b0: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26715 s->cur_func->has_await = TRUE; - c002e6e2: 22e7a023 sw a4,544(a5) - c002e6e6: b735 j c002e612 + c002e8b2: 22e7a023 sw a4,544(a5) + c002e8b6: b735 j c002e7e2 js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26296 if (tok == TOK_VAR || tok == TOK_LET || tok == TOK_CONST) { - c002e6e8: fb100793 li a5,-79 - c002e6ec: 00fa0a63 beq s4,a5,c002e700 - c002e6f0: fd100793 li a5,-47 - c002e6f4: 00fa0663 beq s4,a5,c002e700 - c002e6f8: fc900793 li a5,-55 - c002e6fc: 0cfa1f63 bne s4,a5,c002e7da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26289 + c002e8b8: fb100793 li a5,-79 + c002e8bc: 00fa0a63 beq s4,a5,c002e8d0 + c002e8c0: fd100793 li a5,-47 + c002e8c4: 00fa0663 beq s4,a5,c002e8d0 + c002e8c8: fc900793 li a5,-55 + c002e8cc: 0cfa1f63 bne s4,a5,c002e9aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26297 if (next_token(s)) - c002e700: 8522 mv a0,s0 - c002e702: c94f80ef jal ra,c0026b96 - c002e706: bc051ae3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26292 + c002e8d0: 8522 mv a0,s0 + c002e8d2: c94f80ef jal ra,c0026d66 + c002e8d6: bc051ae3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26300 if (!(s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved)) { - c002e70a: 4c1c lw a5,24(s0) - c002e70c: f8300713 li a4,-125 - c002e710: 02e79263 bne a5,a4,c002e734 - c002e714: 581c lw a5,48(s0) - c002e716: efa5 bnez a5,c002e78e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26302 + c002e8da: 4c1c lw a5,24(s0) + c002e8dc: f8300713 li a4,-125 + c002e8e0: 02e79263 bne a5,a4,c002e904 + c002e8e4: 581c lw a5,48(s0) + c002e8e6: efa5 bnez a5,c002e95e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26310 var_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002e718: 540c lw a1,40(s0) - c002e71a: 856e mv a0,s11 - c002e71c: dafd80ef jal ra,c00074ca - c002e720: de2a sw a0,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26303 + c002e8e8: 540c lw a1,40(s0) + c002e8ea: 856e mv a0,s11 + c002e8ec: ccdd80ef jal ra,c00075b8 + c002e8f0: de2a sw a0,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26311 if (next_token(s)) { - c002e722: 8522 mv a0,s0 - c002e724: c72f80ef jal ra,c0026b96 - c002e728: 55f2 lw a1,60(sp) - c002e72a: c935 beqz a0,c002e79e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26308 + c002e8f2: 8522 mv a0,s0 + c002e8f4: c72f80ef jal ra,c0026d66 + c002e8f8: 55f2 lw a1,60(sp) + c002e8fa: c935 beqz a0,c002e96e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26316 JS_FreeAtom(s->ctx, var_name); - c002e72c: 6008 ld a0,0(s0) + c002e8fc: 6008 ld a0,0(s0) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27018 JS_FreeAtom(ctx, name); - c002e72e: ddfd80ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27011 + c002e8fe: cfdd80ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27019 goto fail; - c002e732: b665 j c002e2da + c002e902: b665 j c002e4aa js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26293 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26301 if (s->token.val == '[' || s->token.val == '{') { - c002e734: fdf7f793 andi a5,a5,-33 - c002e738: 05b00713 li a4,91 - c002e73c: 04e79963 bne a5,a4,c002e78e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26294 + c002e904: fdf7f793 andi a5,a5,-33 + c002e908: 05b00713 li a4,91 + c002e90c: 04e79963 bne a5,a4,c002e95e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26302 if (js_parse_destructuring_element(s, tok, 0, TRUE, -1, FALSE) < 0) - c002e740: 4781 li a5,0 - c002e742: 577d li a4,-1 - c002e744: 4685 li a3,1 - c002e746: 4601 li a2,0 - c002e748: 85d2 mv a1,s4 - c002e74a: 8522 mv a0,s0 - c002e74c: 9c8fd0ef jal ra,c002b914 - c002e750: b80545e3 bltz a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26300 + c002e910: 4781 li a5,0 + c002e912: 577d li a4,-1 + c002e914: 4685 li a3,1 + c002e916: 4601 li a2,0 + c002e918: 85d2 mv a1,s4 + c002e91a: 8522 mv a0,s0 + c002e91c: 9c8fd0ef jal ra,c002bae4 + c002e920: b80545e3 bltz a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26308 var_name = JS_ATOM_NULL; - c002e754: de02 sw zero,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26296 + c002e924: de02 sw zero,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26304 has_destructuring = TRUE; - c002e756: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26337 + c002e926: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26345 emit_goto(s, OP_goto, label_body); - c002e758: 6622 ld a2,8(sp) - c002e75a: 06c00593 li a1,108 - c002e75e: 8522 mv a0,s0 - c002e760: d58e90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26339 + c002e928: 6622 ld a2,8(sp) + c002e92a: 06c00593 li a1,108 + c002e92e: 8522 mv a0,s0 + c002e930: d58e90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26347 pos_expr = s->cur_func->byte_code.size; - c002e764: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26340 + c002e934: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26348 emit_label(s, label_expr); - c002e766: 75a2 ld a1,40(sp) - c002e768: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26339 + c002e936: 75a2 ld a1,40(sp) + c002e938: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26347 pos_expr = s->cur_func->byte_code.size; - c002e76a: 1387b783 ld a5,312(a5) - c002e76e: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26340 + c002e93a: 1387b783 ld a5,312(a5) + c002e93e: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26348 emit_label(s, label_expr); - c002e770: e6bd60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26341 + c002e940: d89d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26349 if (s->token.val == '=') { - c002e774: 4c18 lw a4,24(s0) - c002e776: 03d00793 li a5,61 - c002e77a: 12f71963 bne a4,a5,c002e8ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26347 + c002e944: 4c18 lw a4,24(s0) + c002e946: 03d00793 li a5,61 + c002e94a: 12f71963 bne a4,a5,c002ea7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26355 if (next_token(s) || js_parse_assign_expr2(s, 0)) { - c002e77e: 8522 mv a0,s0 - c002e780: c16f80ef jal ra,c0026b96 - c002e784: 0e050d63 beqz a0,c002e87e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26348 + c002e94e: 8522 mv a0,s0 + c002e950: c16f80ef jal ra,c0026d66 + c002e954: 0e050d63 beqz a0,c002ea4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26356 JS_FreeAtom(ctx, var_name); - c002e788: 55f2 lw a1,60(sp) - c002e78a: 856e mv a0,s11 - c002e78c: b74d j c002e72e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26298 + c002e958: 55f2 lw a1,60(sp) + c002e95a: 856e mv a0,s11 + c002e95c: b74d j c002e8fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26306 return js_parse_error(s, "variable name expected"); - c002e78e: 00031597 auipc a1,0x31 - c002e792: 71258593 addi a1,a1,1810 # c005fea0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26366 + c002e95e: 00031597 auipc a1,0x31 + c002e962: 7a258593 addi a1,a1,1954 # c0060100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26374 return js_parse_error(s, "'for await' loop should be used with 'of'"); - c002e796: 8522 mv a0,s0 - c002e798: b21f70ef jal ra,c00262b8 - c002e79c: bee5 j c002e394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26307 + c002e966: 8522 mv a0,s0 + c002e968: b21f70ef jal ra,c0026488 + c002e96c: bee5 j c002e564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26315 if (js_define_var(s, var_name, tok)) { - c002e79e: 8652 mv a2,s4 - c002e7a0: 8522 mv a0,s0 - c002e7a2: 8bdf90ef jal ra,c002805e - c002e7a6: 8b2a mv s6,a0 - c002e7a8: c119 beqz a0,c002e7ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26308 + c002e96e: 8652 mv a2,s4 + c002e970: 8522 mv a0,s0 + c002e972: 8bdf90ef jal ra,c002822e + c002e976: 8b2a mv s6,a0 + c002e978: c119 beqz a0,c002e97e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26316 JS_FreeAtom(s->ctx, var_name); - c002e7aa: 55f2 lw a1,60(sp) - c002e7ac: b741 j c002e72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26311 + c002e97a: 55f2 lw a1,60(sp) + c002e97c: b741 j c002e8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26319 emit_op(s, (tok == TOK_CONST || tok == TOK_LET) ? - c002e7ae: 037a079b addiw a5,s4,55 - c002e7b2: 9bdd andi a5,a5,-9 - c002e7b4: 2781 sext.w a5,a5 - c002e7b6: 0b900593 li a1,185 - c002e7ba: e399 bnez a5,c002e7c0 - c002e7bc: 0bd00593 li a1,189 - c002e7c0: 8522 mv a0,s0 - c002e7c2: c7bd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26313 + c002e97e: 037a079b addiw a5,s4,55 + c002e982: 9bdd andi a5,a5,-9 + c002e984: 2781 sext.w a5,a5 + c002e986: 0b900593 li a1,185 + c002e98a: e399 bnez a5,c002e990 + c002e98c: 0bd00593 li a1,189 + c002e990: 8522 mv a0,s0 + c002e992: b99d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26321 emit_atom(s, var_name); - c002e7c6: 55f2 lw a1,60(sp) - c002e7c8: 8522 mv a0,s0 - c002e7ca: d25d80ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26314 + c002e996: 55f2 lw a1,60(sp) + c002e998: 8522 mv a0,s0 + c002e99a: c43d80ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26322 emit_u16(s, fd->scope_level); - c002e7ce: 0e0d5583 lhu a1,224(s10) - c002e7d2: 8522 mv a0,s0 - c002e7d4: b37d60ef jal ra,c000530a - c002e7d8: b741 j c002e758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26316 + c002e99e: 0e0d5583 lhu a1,224(s10) + c002e9a2: 8522 mv a0,s0 + c002e9a4: a55d60ef jal ra,c00053f8 + c002e9a8: b741 j c002e928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26324 } else if (!is_async && token_is_pseudo_keyword(s, JS_ATOM_async) && - c002e7da: 02099463 bnez s3,c002e802 - c002e7de: 08600593 li a1,134 - c002e7e2: 8522 mv a0,s0 - c002e7e4: b71d50ef jal ra,c0004354 - c002e7e8: cd09 beqz a0,c002e802 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26317 + c002e9aa: 02099463 bnez s3,c002e9d2 + c002e9ae: 08600593 li a1,134 + c002e9b2: 8522 mv a0,s0 + c002e9b4: 9a1d50ef jal ra,c0004354 + c002e9b8: cd09 beqz a0,c002e9d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26325 peek_token(s, FALSE) == TOK_OF) { - c002e7ea: 4581 li a1,0 - c002e7ec: 8522 mv a0,s0 - c002e7ee: f6ad70ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26316 + c002e9ba: 4581 li a1,0 + c002e9bc: 8522 mv a0,s0 + c002e9be: e88d70ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26324 } else if (!is_async && token_is_pseudo_keyword(s, JS_ATOM_async) && - c002e7f2: fd900793 li a5,-39 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26318 + c002e9c2: fd900793 li a5,-39 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26326 return js_parse_error(s, "'for of' expression cannot start with 'async'"); - c002e7f6: 00032597 auipc a1,0x32 - c002e7fa: 89a58593 addi a1,a1,-1894 # c0060090 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26316 + c002e9c6: 00032597 auipc a1,0x32 + c002e9ca: 92a58593 addi a1,a1,-1750 # c00602f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26324 } else if (!is_async && token_is_pseudo_keyword(s, JS_ATOM_async) && - c002e7fe: f8f50ce3 beq a0,a5,c002e796 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26321 + c002e9ce: f8f50ce3 beq a0,a5,c002e966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26329 if ((s->token.val == '[' || s->token.val == '{') - c002e802: 4c1c lw a5,24(s0) - c002e804: 05b00713 li a4,91 - c002e808: fdf7f793 andi a5,a5,-33 - c002e80c: 02e79c63 bne a5,a4,c002e844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26322 + c002e9d2: 4c1c lw a5,24(s0) + c002e9d4: 05b00713 li a4,91 + c002e9d8: fdf7f793 andi a5,a5,-33 + c002e9dc: 02e79c63 bne a5,a4,c002ea14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26330 && ((tok1 = js_parse_skip_parens_token(s, &skip_bits, FALSE)) == TOK_IN || tok1 == TOK_OF)) { - c002e810: 4601 li a2,0 - c002e812: 00ac addi a1,sp,72 - c002e814: 8522 mv a0,s0 - c002e816: e89f80ef jal ra,c002769e - c002e81a: fb700793 li a5,-73 - c002e81e: 00f50663 beq a0,a5,c002e82a - c002e822: fd900793 li a5,-39 - c002e826: 00f51f63 bne a0,a5,c002e844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26323 + c002e9e0: 4601 li a2,0 + c002e9e2: 00ac addi a1,sp,72 + c002e9e4: 8522 mv a0,s0 + c002e9e6: e89f80ef jal ra,c002786e + c002e9ea: fb700793 li a5,-73 + c002e9ee: 00f50663 beq a0,a5,c002e9fa + c002e9f2: fd900793 li a5,-39 + c002e9f6: 00f51f63 bne a0,a5,c002ea14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26331 if (js_parse_destructuring_element(s, 0, 0, TRUE, skip_bits & SKIP_HAS_ELLIPSIS, TRUE) < 0) - c002e82a: 4726 lw a4,72(sp) - c002e82c: 4785 li a5,1 - c002e82e: 4685 li a3,1 - c002e830: 8b09 andi a4,a4,2 - c002e832: 4601 li a2,0 - c002e834: 4581 li a1,0 - c002e836: 8522 mv a0,s0 - c002e838: 8dcfd0ef jal ra,c002b914 - c002e83c: a8054fe3 bltz a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26335 + c002e9fa: 4726 lw a4,72(sp) + c002e9fc: 4785 li a5,1 + c002e9fe: 4685 li a3,1 + c002ea00: 8b09 andi a4,a4,2 + c002ea02: 4601 li a2,0 + c002ea04: 4581 li a1,0 + c002ea06: 8522 mv a0,s0 + c002ea08: 8dcfd0ef jal ra,c002bae4 + c002ea0c: a8054fe3 bltz a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26343 var_name = JS_ATOM_NULL; - c002e840: de02 sw zero,60(sp) - c002e842: bf19 j c002e758 + c002ea10: de02 sw zero,60(sp) + c002ea12: bf19 j c002e928 js_parse_left_hand_side_expr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22791 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:22799 return js_parse_postfix_expr(s, PF_POSTFIX_CALL); - c002e844: 4589 li a1,2 - c002e846: 8522 mv a0,s0 - c002e848: 96bfb0ef jal ra,c002a1b2 + c002ea14: 4589 li a1,2 + c002ea16: 8522 mv a0,s0 + c002ea18: 96bfb0ef jal ra,c002a382 js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26327 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26335 if (js_parse_left_hand_side_expr(s)) - c002e84c: a80517e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26329 + c002ea1c: a80517e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26337 if (get_lvalue(s, &opcode, &scope, &var_name, &lvalue_label, - c002e850: fbb00893 li a7,-69 - c002e854: 4801 li a6,0 - c002e856: 4781 li a5,0 - c002e858: 00f8 addi a4,sp,76 - c002e85a: 1874 addi a3,sp,60 - c002e85c: 00d0 addi a2,sp,68 - c002e85e: 008c addi a1,sp,64 - c002e860: 8522 mv a0,s0 - c002e862: 918f90ef jal ra,c002797a - c002e866: a6051ae3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26332 + c002ea20: fbb00893 li a7,-69 + c002ea24: 4801 li a6,0 + c002ea26: 4781 li a5,0 + c002ea28: 00f8 addi a4,sp,76 + c002ea2a: 1874 addi a3,sp,60 + c002ea2c: 00d0 addi a2,sp,68 + c002ea2e: 008c addi a1,sp,64 + c002ea30: 8522 mv a0,s0 + c002ea32: 918f90ef jal ra,c0027b4a + c002ea36: a6051ae3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26340 put_lvalue(s, opcode, scope, var_name, lvalue_label, - c002e86a: 4736 lw a4,76(sp) - c002e86c: 56f2 lw a3,60(sp) - c002e86e: 4616 lw a2,68(sp) - c002e870: 4586 lw a1,64(sp) - c002e872: 4801 li a6,0 - c002e874: 4791 li a5,4 - c002e876: 8522 mv a0,s0 - c002e878: ce7d80ef jal ra,c000755e - c002e87c: b7d1 j c002e840 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26347 + c002ea3a: 4736 lw a4,76(sp) + c002ea3c: 56f2 lw a3,60(sp) + c002ea3e: 4616 lw a2,68(sp) + c002ea40: 4586 lw a1,64(sp) + c002ea42: 4801 li a6,0 + c002ea44: 4791 li a5,4 + c002ea46: 8522 mv a0,s0 + c002ea48: c05d80ef jal ra,c000764c + c002ea4c: b7d1 j c002ea10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26355 if (next_token(s) || js_parse_assign_expr2(s, 0)) { - c002e87e: 4581 li a1,0 - c002e880: 8522 mv a0,s0 - c002e882: b64fe0ef jal ra,c002cbe6 - c002e886: f00511e3 bnez a0,c002e788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26351 + c002ea4e: 4581 li a1,0 + c002ea50: 8522 mv a0,s0 + c002ea52: b64fe0ef jal ra,c002cdb6 + c002ea56: f00511e3 bnez a0,c002e958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26359 if (var_name != JS_ATOM_NULL) { - c002e88a: 57f2 lw a5,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26343 - has_initializer = TRUE; - c002e88c: 4905 li s2,1 + c002ea5a: 57f2 lw a5,60(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26351 + has_initializer = TRUE; + c002ea5c: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26359 if (var_name != JS_ATOM_NULL) { - c002e88e: cf99 beqz a5,c002e8ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26352 + c002ea5e: cf99 beqz a5,c002ea7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26360 emit_op(s, OP_scope_put_var); - c002e890: 0b900593 li a1,185 - c002e894: 8522 mv a0,s0 - c002e896: ba7d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26353 + c002ea60: 0b900593 li a1,185 + c002ea64: 8522 mv a0,s0 + c002ea66: ac5d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26361 emit_atom(s, var_name); - c002e89a: 55f2 lw a1,60(sp) - c002e89c: 8522 mv a0,s0 - c002e89e: c51d80ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26354 + c002ea6a: 55f2 lw a1,60(sp) + c002ea6c: 8522 mv a0,s0 + c002ea6e: b6fd80ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26362 emit_u16(s, fd->scope_level); - c002e8a2: 0e0d5583 lhu a1,224(s10) - c002e8a6: 8522 mv a0,s0 - c002e8a8: a63d60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26357 + c002ea72: 0e0d5583 lhu a1,224(s10) + c002ea76: 8522 mv a0,s0 + c002ea78: 981d60ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26365 JS_FreeAtom(ctx, var_name); - c002e8ac: 55f2 lw a1,60(sp) - c002e8ae: 856e mv a0,s11 - c002e8b0: c5dd80ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26359 + c002ea7c: 55f2 lw a1,60(sp) + c002ea7e: 856e mv a0,s11 + c002ea80: b7bd80ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26367 if (token_is_pseudo_keyword(s, JS_ATOM_of)) { - c002e8b4: 04400593 li a1,68 - c002e8b8: 8522 mv a0,s0 - c002e8ba: a9bd50ef jal ra,c0004354 - c002e8be: c129 beqz a0,c002e900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26360 + c002ea84: 04400593 li a1,68 + c002ea88: 8522 mv a0,s0 + c002ea8a: 8cbd50ef jal ra,c0004354 + c002ea8e: c129 beqz a0,c002ead0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26368 break_entry.has_iterator = is_for_of = TRUE; - c002e8c0: 4785 li a5,1 - c002e8c2: d8be sw a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26361 + c002ea90: 4785 li a5,1 + c002ea92: d8be sw a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26369 break_entry.drop_count += 2; - c002e8c4: 5796 lw a5,100(sp) - c002e8c6: 2789 addiw a5,a5,2 - c002e8c8: d2be sw a5,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26362 + c002ea94: 5796 lw a5,100(sp) + c002ea96: 2789 addiw a5,a5,2 + c002ea98: d2be sw a5,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26370 if (has_initializer) - c002e8ca: 06091963 bnez s2,c002e93c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26360 + c002ea9a: 06091963 bnez s2,c002eb0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26368 break_entry.has_iterator = is_for_of = TRUE; - c002e8ce: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26377 + c002ea9e: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26385 if (next_token(s)) - c002e8d0: 8522 mv a0,s0 - c002e8d2: ac4f80ef jal ra,c0026b96 - c002e8d6: a00512e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26380 + c002eaa0: 8522 mv a0,s0 + c002eaa2: ac4f80ef jal ra,c0026d66 + c002eaa6: a00512e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26388 if (js_parse_assign_expr(s)) - c002e8da: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26379 + c002eaaa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26387 if (is_for_of) { - c002e8dc: 08090163 beqz s2,c002e95e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26380 - if (js_parse_assign_expr(s)) - c002e8e0: cf7fe0ef jal ra,c002d5d6 - c002e8e4: 9e051be3 bnez a0,c002e2da + c002eaac: 08090163 beqz s2,c002eb2e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26388 + if (js_parse_assign_expr(s)) + c002eab0: cf7fe0ef jal ra,c002d7a6 + c002eab4: 9e051be3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26396 close_scopes(s, s->cur_func->scope_level, block_scope_level); - c002e8e8: 743c ld a5,104(s0) - c002e8ea: 8662 mv a2,s8 - c002e8ec: 8522 mv a0,s0 - c002e8ee: 0e07a583 lw a1,224(a5) - c002e8f2: c9fd60ef jal ra,c0005590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26389 + c002eab8: 743c ld a5,104(s0) + c002eaba: 8662 mv a2,s8 + c002eabc: 8522 mv a0,s0 + c002eabe: 0e07a583 lw a1,224(a5) + c002eac2: bbdd60ef jal ra,c000567e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26397 if (is_for_of) { - c002e8f6: 06091763 bnez s2,c002e964 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26396 + c002eac6: 06091763 bnez s2,c002eb34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26404 emit_op(s, OP_for_in_start); - c002e8fa: 07e00593 li a1,126 - c002e8fe: a88d j c002e970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26364 + c002eaca: 07e00593 li a1,126 + c002eace: a88d j c002eb40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26372 } else if (s->token.val == TOK_IN) { - c002e900: 4c18 lw a4,24(s0) - c002e902: fb700793 li a5,-73 - c002e906: 04f71763 bne a4,a5,c002e954 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26365 + c002ead0: 4c18 lw a4,24(s0) + c002ead2: fb700793 li a5,-73 + c002ead6: 04f71763 bne a4,a5,c002eb24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26373 if (is_async) - c002e90a: 00098763 beqz s3,c002e918 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26366 + c002eada: 00098763 beqz s3,c002eae8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26374 return js_parse_error(s, "'for await' loop should be used with 'of'"); - c002e90e: 00031597 auipc a1,0x31 - c002e912: 7b258593 addi a1,a1,1970 # c00600c0 - c002e916: b541 j c002e796 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26367 + c002eade: 00032597 auipc a1,0x32 + c002eae2: 84258593 addi a1,a1,-1982 # c0060320 + c002eae6: b541 j c002e966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26375 if (has_initializer && - c002e918: fa090ce3 beqz s2,c002e8d0 - c002e91c: fb100793 li a5,-79 - c002e920: 00fa1963 bne s4,a5,c002e932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26368 + c002eae8: fa090ce3 beqz s2,c002eaa0 + c002eaec: fb100793 li a5,-79 + c002eaf0: 00fa1963 bne s4,a5,c002eb02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26376 (tok != TOK_VAR || (fd->js_mode & JS_MODE_STRICT) || - c002e924: 086d4783 lbu a5,134(s10) - c002e928: 8b85 andi a5,a5,1 - c002e92a: e781 bnez a5,c002e932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26255 + c002eaf4: 086d4783 lbu a5,134(s10) + c002eaf8: 8b85 andi a5,a5,1 + c002eafa: e781 bnez a5,c002eb02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26263 is_for_of = FALSE; - c002e92c: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26368 + c002eafc: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26376 (tok != TOK_VAR || (fd->js_mode & JS_MODE_STRICT) || - c002e92e: fa0b01e3 beqz s6,c002e8d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26371 + c002eafe: fa0b01e3 beqz s6,c002eaa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26379 return js_parse_error(s, "a declaration in the head of a for-%s loop can't have an initializer", - c002e932: 00033617 auipc a2,0x33 - c002e936: 89e60613 addi a2,a2,-1890 # c00611d0 - c002e93a: a029 j c002e944 - c002e93c: 00031617 auipc a2,0x31 - c002e940: 64c60613 addi a2,a2,1612 # c005ff88 - c002e944: 00031597 auipc a1,0x31 - c002e948: 7ac58593 addi a1,a1,1964 # c00600f0 - c002e94c: 8522 mv a0,s0 - c002e94e: 96bf70ef jal ra,c00262b8 - c002e952: b489 j c002e394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26375 - return js_parse_error(s, "expected 'of' or 'in' in for control expression"); - c002e954: 00031597 auipc a1,0x31 - c002e958: 7e458593 addi a1,a1,2020 # c0060138 - c002e95c: bd2d j c002e796 + c002eb02: 00033617 auipc a2,0x33 + c002eb06: 92e60613 addi a2,a2,-1746 # c0061430 + c002eb0a: a029 j c002eb14 + c002eb0c: 00031617 auipc a2,0x31 + c002eb10: 6dc60613 addi a2,a2,1756 # c00601e8 + c002eb14: 00032597 auipc a1,0x32 + c002eb18: 83c58593 addi a1,a1,-1988 # c0060350 + c002eb1c: 8522 mv a0,s0 + c002eb1e: 96bf70ef jal ra,c0026488 + c002eb22: b489 j c002e564 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26383 - if (js_parse_expr(s)) - c002e95e: a0dfe0ef jal ra,c002d36a - c002e962: b749 j c002e8e4 + return js_parse_error(s, "expected 'of' or 'in' in for control expression"); + c002eb24: 00032597 auipc a1,0x32 + c002eb28: 87458593 addi a1,a1,-1932 # c0060398 + c002eb2c: bd2d j c002e966 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26391 + if (js_parse_expr(s)) + c002eb2e: a0dfe0ef jal ra,c002d53a + c002eb32: b749 j c002eab4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26399 emit_op(s, OP_for_await_of_start); - c002e964: 08000593 li a1,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26390 + c002eb34: 08000593 li a1,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26398 if (is_async) - c002e968: 00099463 bnez s3,c002e970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26393 + c002eb38: 00099463 bnez s3,c002eb40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26401 emit_op(s, OP_for_of_start); - c002e96c: 07f00593 li a1,127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26396 + c002eb3c: 07f00593 li a1,127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26404 emit_op(s, OP_for_in_start); - c002e970: 8522 mv a0,s0 - c002e972: acbd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26399 + c002eb40: 8522 mv a0,s0 + c002eb42: 9e9d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26407 emit_goto(s, OP_goto, label_cont); - c002e976: 06c00593 li a1,108 - c002e97a: 8656 mv a2,s5 - c002e97c: 8522 mv a0,s0 - c002e97e: b3ae90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26401 + c002eb46: 06c00593 li a1,108 + c002eb4a: 8656 mv a2,s5 + c002eb4c: 8522 mv a0,s0 + c002eb4e: b3ae90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26409 if (js_parse_expect(s, ')')) - c002e982: 02900593 li a1,41 - c002e986: 8522 mv a0,s0 - c002e988: 95bf90ef jal ra,c00282e2 - c002e98c: 940517e3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26406 + c002eb52: 02900593 li a1,41 + c002eb56: 8522 mv a0,s0 + c002eb58: 95bf90ef jal ra,c00284b2 + c002eb5c: 940517e3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26414 DynBuf *bc = &s->cur_func->byte_code; - c002e990: 06843d03 ld s10,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26410 + c002eb60: 06843d03 ld s10,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26418 dbuf_realloc(bc, bc->size + chunk_size); - c002e994: 7702 ld a4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26339 + c002eb64: 7702 ld a4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26347 pos_expr = s->cur_func->byte_code.size; - c002e996: 5d82 lw s11,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26408 + c002eb66: 5d82 lw s11,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 int offset = bc->size - pos_next; - c002e998: 138d3583 ld a1,312(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26410 + c002eb68: 138d3583 ld a1,312(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26418 dbuf_realloc(bc, bc->size + chunk_size); - c002e99c: 41970b3b subw s6,a4,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26406 + c002eb6c: 41970b3b subw s6,a4,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26414 DynBuf *bc = &s->cur_func->byte_code; - c002e9a0: 130d0793 addi a5,s10,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26408 + c002eb70: 130d0793 addi a5,s10,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 int offset = bc->size - pos_next; - c002e9a4: 4195883b subw a6,a1,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26410 + c002eb74: 4195883b subw a6,a1,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26418 dbuf_realloc(bc, bc->size + chunk_size); - c002e9a8: 853e mv a0,a5 - c002e9aa: 95da add a1,a1,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26408 + c002eb78: 853e mv a0,a5 + c002eb7a: 95da add a1,a1,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 int offset = bc->size - pos_next; - c002e9ac: f442 sd a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26410 + c002eb7c: f442 sd a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26418 dbuf_realloc(bc, bc->size + chunk_size); - c002e9ae: f03e sd a5,32(sp) - c002e9b0: 25e190ef jal ra,c0047c0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26411 + c002eb7e: f03e sd a5,32(sp) + c002eb80: 25e190ef jal ra,c0047dde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26419 dbuf_put(bc, bc->buf + pos_next, chunk_size); - c002e9b4: 7782 ld a5,32(sp) - c002e9b6: 130d3583 ld a1,304(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26275 + c002eb84: 7782 ld a5,32(sp) + c002eb86: 130d3583 ld a1,304(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26283 pos_next = s->cur_func->byte_code.size; - c002e9ba: 000c8a1b sext.w s4,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26411 + c002eb8a: 000c8a1b sext.w s4,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26419 dbuf_put(bc, bc->buf + pos_next, chunk_size); - c002e9be: 853e mv a0,a5 - c002e9c0: 865a mv a2,s6 - c002e9c2: 95d2 add a1,a1,s4 - c002e9c4: 2ec190ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26412 + c002eb8e: 853e mv a0,a5 + c002eb90: 865a mv a2,s6 + c002eb92: 95d2 add a1,a1,s4 + c002eb94: 2ec190ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26420 memset(bc->buf + pos_next, OP_nop, chunk_size); - c002e9c8: 130d3503 ld a0,304(s10) - c002e9cc: 865a mv a2,s6 - c002e9ce: 0b300593 li a1,179 - c002e9d2: 9552 add a0,a0,s4 - c002e9d4: 69d270ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26414 + c002eb98: 130d3503 ld a0,304(s10) + c002eb9c: 865a mv a2,s6 + c002eb9e: 0b300593 li a1,179 + c002eba2: 9552 add a0,a0,s4 + c002eba4: 69d270ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26422 s->cur_func->last_opcode_pos = bc->size - 5; - c002e9d8: 138d3783 ld a5,312(s10) - c002e9dc: 7438 ld a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 + c002eba8: 138d3783 ld a5,312(s10) + c002ebac: 7438 ld a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26424 for (i = label_cont; i < s->cur_func->label_count; i++) { - c002e9de: 7822 ld a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26414 + c002ebae: 7822 ld a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26422 s->cur_func->last_opcode_pos = bc->size - 5; - c002e9e0: 37ed addiw a5,a5,-5 - c002e9e2: 16f72023 sw a5,352(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26417 + c002ebb0: 37ed addiw a5,a5,-5 + c002ebb2: 16f72023 sw a5,352(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26425 LabelSlot *ls = &s->cur_func->label_slots[i]; - c002e9e6: 4661 li a2,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 + c002ebb6: 4661 li a2,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26424 for (i = label_cont; i < s->cur_func->label_count; i++) { - c002e9e8: 8756 mv a4,s5 - c002e9ea: 743c ld a5,104(s0) - c002e9ec: 17c7a683 lw a3,380(a5) - c002e9f0: 06d74763 blt a4,a3,c002ea5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26423 + c002ebb8: 8756 mv a4,s5 + c002ebba: 743c ld a5,104(s0) + c002ebbc: 17c7a683 lw a3,380(a5) + c002ebc0: 06d74763 blt a4,a3,c002ec2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26431 emit_label(s, label_body); - c002e9f4: 65a2 ld a1,8(sp) - c002e9f6: 8522 mv a0,s0 - c002e9f8: be3d60ef jal ra,c00055da + c002ebc4: 65a2 ld a1,8(sp) + c002ebc6: 8522 mv a0,s0 + c002ebc8: b01d60ef jal ra,c00056c8 js_parse_statement(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 return js_parse_statement_or_decl(s, 0); - c002e9fc: 4581 li a1,0 - c002e9fe: 8522 mv a0,s0 - c002ea00: 817ff0ef jal ra,c002e216 + c002ebcc: 4581 li a1,0 + c002ebce: 8522 mv a0,s0 + c002ebd0: 817ff0ef jal ra,c002e3e6 js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26432 if (js_parse_statement(s)) - c002ea04: 8c051be3 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26427 + c002ebd4: 8c051be3 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26435 close_scopes(s, s->cur_func->scope_level, block_scope_level); - c002ea08: 743c ld a5,104(s0) - c002ea0a: 8522 mv a0,s0 - c002ea0c: 8662 mv a2,s8 - c002ea0e: 0e07a583 lw a1,224(a5) - c002ea12: b7fd60ef jal ra,c0005590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26429 + c002ebd8: 743c ld a5,104(s0) + c002ebda: 8522 mv a0,s0 + c002ebdc: 8662 mv a2,s8 + c002ebde: 0e07a583 lw a1,224(a5) + c002ebe2: a9dd60ef jal ra,c000567e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26437 emit_label(s, label_cont); - c002ea16: 85d6 mv a1,s5 - c002ea18: 8522 mv a0,s0 - c002ea1a: bc1d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26430 + c002ebe6: 85d6 mv a1,s5 + c002ebe8: 8522 mv a0,s0 + c002ebea: adfd60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26438 if (is_for_of) { - c002ea1e: 0a090563 beqz s2,c002eac8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26431 + c002ebee: 0a090563 beqz s2,c002ec98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26439 if (is_async) { - c002ea22: 04098d63 beqz s3,c002ea7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26434 + c002ebf2: 04098d63 beqz s3,c002ec4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26442 emit_op(s, OP_dup3); - c002ea26: 45d1 li a1,20 - c002ea28: 8522 mv a0,s0 - c002ea2a: a13d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26435 + c002ebf6: 45d1 li a1,20 + c002ebf8: 8522 mv a0,s0 + c002ebfa: 931d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26443 emit_op(s, OP_drop); - c002ea2e: 45b9 li a1,14 - c002ea30: 8522 mv a0,s0 - c002ea32: a0bd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26436 + c002ebfe: 45b9 li a1,14 + c002ec00: 8522 mv a0,s0 + c002ec02: 929d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26444 emit_op(s, OP_call_method); - c002ea36: 02400593 li a1,36 - c002ea3a: 8522 mv a0,s0 - c002ea3c: a01d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26437 + c002ec06: 02400593 li a1,36 + c002ec0a: 8522 mv a0,s0 + c002ec0c: 91fd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26445 emit_u16(s, 0); - c002ea40: 4581 li a1,0 - c002ea42: 8522 mv a0,s0 - c002ea44: 8c7d60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26439 + c002ec10: 4581 li a1,0 + c002ec12: 8522 mv a0,s0 + c002ec14: fe4d60ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26447 emit_op(s, OP_await); - c002ea48: 08c00593 li a1,140 - c002ea4c: 8522 mv a0,s0 - c002ea4e: 9efd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26441 + c002ec18: 08c00593 li a1,140 + c002ec1c: 8522 mv a0,s0 + c002ec1e: 90dd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26449 emit_op(s, OP_iterator_get_value_done); - c002ea52: 08400593 li a1,132 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26447 + c002ec22: 08400593 li a1,132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26455 emit_op(s, OP_for_in_next); - c002ea56: 8522 mv a0,s0 - c002ea58: 9e5d60ef jal ra,c000543c - c002ea5c: a80d j c002ea8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26417 + c002ec26: 8522 mv a0,s0 + c002ec28: 903d60ef jal ra,c000552a + c002ec2c: a80d j c002ec5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26425 LabelSlot *ls = &s->cur_func->label_slots[i]; - c002ea5e: 02c706b3 mul a3,a4,a2 - c002ea62: 1707b783 ld a5,368(a5) - c002ea66: 96be add a3,a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26418 + c002ec2e: 02c706b3 mul a3,a4,a2 + c002ec32: 1707b783 ld a5,368(a5) + c002ec36: 96be add a3,a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26426 if (ls->pos >= pos_next && ls->pos < pos_expr) - c002ea68: 42dc lw a5,4(a3) - c002ea6a: 0147c763 blt a5,s4,c002ea78 - c002ea6e: 01b7d563 bge a5,s11,c002ea78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26419 + c002ec38: 42dc lw a5,4(a3) + c002ec3a: 0147c763 blt a5,s4,c002ec48 + c002ec3e: 01b7d563 bge a5,s11,c002ec48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26427 ls->pos += offset; - c002ea72: 00f807bb addw a5,a6,a5 - c002ea76: c2dc sw a5,4(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26416 + c002ec42: 00f807bb addw a5,a6,a5 + c002ec46: c2dc sw a5,4(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26424 for (i = label_cont; i < s->cur_func->label_count; i++) { - c002ea78: 2705 addiw a4,a4,1 - c002ea7a: bf85 j c002e9ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26443 + c002ec48: 2705 addiw a4,a4,1 + c002ec4a: bf85 j c002ebba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26451 emit_op(s, OP_for_of_next); - c002ea7c: 08200593 li a1,130 - c002ea80: 8522 mv a0,s0 - c002ea82: 9bbd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26444 + c002ec4c: 08200593 li a1,130 + c002ec50: 8522 mv a0,s0 + c002ec52: 8d9d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26452 emit_u8(s, 0); - c002ea86: 4581 li a1,0 - c002ea88: 8522 mv a0,s0 - c002ea8a: dced60ef jal ra,c0005058 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26450 + c002ec56: 4581 li a1,0 + c002ec58: 8522 mv a0,s0 + c002ec5a: bfed60ef jal ra,c0005058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26458 emit_goto(s, OP_if_false, label_next); - c002ea8e: 6662 ld a2,24(sp) - c002ea90: 06a00593 li a1,106 - c002ea94: 8522 mv a0,s0 - c002ea96: a22e90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26452 + c002ec5e: 6662 ld a2,24(sp) + c002ec60: 06a00593 li a1,106 + c002ec64: 8522 mv a0,s0 + c002ec66: a22e90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26460 emit_op(s, OP_drop); - c002ea9a: 45b9 li a1,14 - c002ea9c: 8522 mv a0,s0 - c002ea9e: 99fd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26454 + c002ec6a: 45b9 li a1,14 + c002ec6c: 8522 mv a0,s0 + c002ec6e: 8bdd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26462 emit_label(s, label_break); - c002eaa2: 65c2 ld a1,16(sp) - c002eaa4: 8522 mv a0,s0 - c002eaa6: b35d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26457 + c002ec72: 65c2 ld a1,16(sp) + c002ec74: 8522 mv a0,s0 + c002ec76: a53d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26465 emit_op(s, OP_iterator_close); - c002eaaa: 08500593 li a1,133 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26455 + c002ec7a: 08500593 li a1,133 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26463 if (is_for_of) { - c002eaae: 00091363 bnez s2,c002eab4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26459 + c002ec7e: 00091363 bnez s2,c002ec84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26467 emit_op(s, OP_drop); - c002eab2: 45b9 li a1,14 - c002eab4: 8522 mv a0,s0 - c002eab6: 987d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26461 + c002ec82: 45b9 li a1,14 + c002ec84: 8522 mv a0,s0 + c002ec86: 8a5d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26469 pop_break_entry(s->cur_func); - c002eaba: 743c ld a5,104(s0) + c002ec8a: 743c ld a5,104(s0) pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002eabc: 1807b703 ld a4,384(a5) - c002eac0: 6318 ld a4,0(a4) - c002eac2: 18e7b023 sd a4,384(a5) + c002ec8c: 1807b703 ld a4,384(a5) + c002ec90: 6318 ld a4,0(a4) + c002ec92: 18e7b023 sd a4,384(a5) js_parse_for_in_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26470 pop_scope(s); - c002eac6: b2e5 j c002e4ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26447 + c002ec96: b2e5 j c002e67e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26455 emit_op(s, OP_for_in_next); - c002eac8: 08100593 li a1,129 - c002eacc: b769 j c002ea56 + c002ec98: 08100593 li a1,129 + c002ec9c: b769 j c002ec26 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26730 push_scope(s); - c002eace: 8522 mv a0,s0 - c002ead0: a3de90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26724 + c002ec9e: 8522 mv a0,s0 + c002eca0: a3de90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26732 tok = s->token.val; - c002ead4: 01842903 lw s2,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26725 + c002eca4: 01842903 lw s2,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26733 if (tok != ';') { - c002ead8: 03b00793 li a5,59 - c002eadc: 04f90163 beq s2,a5,c002eb1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26726 + c002eca8: 03b00793 li a5,59 + c002ecac: 04f90163 beq s2,a5,c002ecee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26734 switch (is_let(s, DECL_MASK_OTHER)) { - c002eae0: 4591 li a1,4 - c002eae2: 8522 mv a0,s0 - c002eae4: 981f80ef jal ra,c0027464 - c002eae8: 16050563 beqz a0,c002ec52 - c002eaec: 4785 li a5,1 - c002eaee: fef51663 bne a0,a5,c002e2da - c002eaf2: fd100913 li s2,-47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26736 + c002ecb0: 4591 li a1,4 + c002ecb2: 8522 mv a0,s0 + c002ecb4: 981f80ef jal ra,c0027634 + c002ecb8: 16050563 beqz a0,c002ee22 + c002ecbc: 4785 li a5,1 + c002ecbe: fef51663 bne a0,a5,c002e4aa + c002ecc2: fd100913 li s2,-47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26744 if (next_token(s)) - c002eaf6: 8522 mv a0,s0 - c002eaf8: 89ef80ef jal ra,c0026b96 - c002eafc: fc051f63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26738 + c002ecc6: 8522 mv a0,s0 + c002ecc8: 89ef80ef jal ra,c0026d66 + c002eccc: fc051f63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26746 if (js_parse_var(s, FALSE, tok, FALSE)) - c002eb00: 4681 li a3,0 - c002eb02: 864a mv a2,s2 - c002eb04: 4581 li a1,0 - c002eb06: 8522 mv a0,s0 - c002eb08: ad5fe0ef jal ra,c002d5dc - c002eb0c: fc051763 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26747 + c002ecd0: 4681 li a3,0 + c002ecd2: 864a mv a2,s2 + c002ecd4: 4581 li a1,0 + c002ecd6: 8522 mv a0,s0 + c002ecd8: ad5fe0ef jal ra,c002d7ac + c002ecdc: fc051763 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26755 close_scopes(s, s->cur_func->scope_level, block_scope_level); - c002eb10: 743c ld a5,104(s0) - c002eb12: 8662 mv a2,s8 - c002eb14: 8522 mv a0,s0 - c002eb16: 0e07a583 lw a1,224(a5) - c002eb1a: a77d60ef jal ra,c0005590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26749 + c002ece0: 743c ld a5,104(s0) + c002ece2: 8662 mv a2,s8 + c002ece4: 8522 mv a0,s0 + c002ece6: 0e07a583 lw a1,224(a5) + c002ecea: 995d60ef jal ra,c000567e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26757 if (js_parse_expect(s, ';')) - c002eb1e: 03b00593 li a1,59 - c002eb22: 8522 mv a0,s0 - c002eb24: fbef90ef jal ra,c00282e2 - c002eb28: fa051963 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26752 + c002ecee: 03b00593 li a1,59 + c002ecf2: 8522 mv a0,s0 + c002ecf4: fbef90ef jal ra,c00284b2 + c002ecf8: fa051963 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26760 label_test = new_label(s); - c002eb2c: 8522 mv a0,s0 - c002eb2e: 982e90ef jal ra,c0017cb0 - c002eb32: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26753 + c002ecfc: 8522 mv a0,s0 + c002ecfe: 982e90ef jal ra,c0017e80 + c002ed02: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26761 label_cont = new_label(s); - c002eb34: 8522 mv a0,s0 - c002eb36: 97ae90ef jal ra,c0017cb0 - c002eb3a: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26754 + c002ed04: 8522 mv a0,s0 + c002ed06: 97ae90ef jal ra,c0017e80 + c002ed0a: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26762 label_body = new_label(s); - c002eb3c: 8522 mv a0,s0 - c002eb3e: 972e90ef jal ra,c0017cb0 - c002eb42: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26755 + c002ed0c: 8522 mv a0,s0 + c002ed0e: 972e90ef jal ra,c0017e80 + c002ed12: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26763 label_break = new_label(s); - c002eb44: 8522 mv a0,s0 - c002eb46: 96ae90ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26757 + c002ed14: 8522 mv a0,s0 + c002ed16: 96ae90ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26765 push_break_entry(s->cur_func, &break_entry, - c002eb4a: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26755 + c002ed1a: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26763 label_break = new_label(s); - c002eb4c: 8caa mv s9,a0 + c002ed1c: 8caa mv s9,a0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002eb4e: 1807b703 ld a4,384(a5) - c002eb52: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002ed1e: 1807b703 ld a4,384(a5) + c002ed22: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002eb54: 0898 addi a4,sp,80 - c002eb56: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002ed24: 0898 addi a4,sp,80 + c002ed26: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002eb5a: 577d li a4,-1 - c002eb5c: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002ed2a: 577d li a4,-1 + c002ed2c: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002eb5e: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002ed2e: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002eb60: ceaa sw a0,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002ed30: ceaa sw a0,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002eb62: d0ce sw s3,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25905 + c002ed32: d0ce sw s3,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25913 be->drop_count = drop_count; - c002eb64: d282 sw zero,100(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002ed34: d282 sw zero,100(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002eb66: 0e07a783 lw a5,224(a5) + c002ed36: 0e07a783 lw a5,224(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26769 if (s->token.val == ';') { - c002eb6a: 4c18 lw a4,24(s0) + c002ed3a: 4c18 lw a4,24(s0) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002eb6c: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002ed3c: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002eb6e: d6be sw a5,108(sp) + c002ed3e: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26769 if (s->token.val == ';') { - c002eb70: 03b00793 li a5,59 - c002eb74: 10f70663 beq a4,a5,c002ec80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26765 + c002ed40: 03b00793 li a5,59 + c002ed44: 10f70663 beq a4,a5,c002ee50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26773 emit_label(s, label_test); - c002eb78: 85ca mv a1,s2 - c002eb7a: 8522 mv a0,s0 - c002eb7c: a5fd60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26766 + c002ed48: 85ca mv a1,s2 + c002ed4a: 8522 mv a0,s0 + c002ed4c: 97dd60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26774 if (js_parse_expr(s)) - c002eb80: 8522 mv a0,s0 - c002eb82: fe8fe0ef jal ra,c002d36a - c002eb86: f4051a63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26768 + c002ed50: 8522 mv a0,s0 + c002ed52: fe8fe0ef jal ra,c002d53a + c002ed56: f4051a63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26776 emit_goto(s, OP_if_false, label_break); - c002eb8a: 8666 mv a2,s9 - c002eb8c: 06a00593 li a1,106 - c002eb90: 8522 mv a0,s0 - c002eb92: 926e90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26770 + c002ed5a: 8666 mv a2,s9 + c002ed5c: 06a00593 li a1,106 + c002ed60: 8522 mv a0,s0 + c002ed62: 926e90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26778 if (js_parse_expect(s, ';')) - c002eb96: 03b00593 li a1,59 - c002eb9a: 8522 mv a0,s0 - c002eb9c: f46f90ef jal ra,c00282e2 - c002eba0: 8a2a mv s4,a0 - c002eba2: f2051c63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26773 + c002ed66: 03b00593 li a1,59 + c002ed6a: 8522 mv a0,s0 + c002ed6c: f46f90ef jal ra,c00284b2 + c002ed70: 8a2a mv s4,a0 + c002ed72: f2051c63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26781 if (s->token.val == ')') { - c002eba6: 4c18 lw a4,24(s0) - c002eba8: 02900793 li a5,41 - c002ebac: 0cf71c63 bne a4,a5,c002ec84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26775 + c002ed76: 4c18 lw a4,24(s0) + c002ed78: 02900793 li a5,41 + c002ed7c: 0cf71c63 bne a4,a5,c002ee54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26783 break_entry.label_cont = label_cont = label_test; - c002ebb0: d0ca sw s2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26776 + c002ed80: d0ca sw s2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26784 pos_cont = 0; /* avoid warning */ - c002ebb2: 89ca mv s3,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26789 + c002ed82: 89ca mv s3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26797 if (js_parse_expect(s, ')')) - c002ebb4: 02900593 li a1,41 - c002ebb8: 8522 mv a0,s0 - c002ebba: f28f90ef jal ra,c00282e2 - c002ebbe: f0051e63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26792 + c002ed84: 02900593 li a1,41 + c002ed88: 8522 mv a0,s0 + c002ed8a: f28f90ef jal ra,c00284b2 + c002ed8e: f0051e63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26800 pos_body = s->cur_func->byte_code.size; - c002ebc2: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26793 + c002ed92: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26801 emit_label(s, label_body); - c002ebc4: 85d6 mv a1,s5 - c002ebc6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26792 + c002ed94: 85d6 mv a1,s5 + c002ed96: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26800 pos_body = s->cur_func->byte_code.size; - c002ebc8: 1387bb03 ld s6,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26793 + c002ed98: 1387bb03 ld s6,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26801 emit_label(s, label_body); - c002ebcc: a0fd60ef jal ra,c00055da + c002ed9c: 92dd60ef jal ra,c00056c8 js_parse_statement(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 return js_parse_statement_or_decl(s, 0); - c002ebd0: 4581 li a1,0 - c002ebd2: 8522 mv a0,s0 - c002ebd4: e42ff0ef jal ra,c002e216 + c002eda0: 4581 li a1,0 + c002eda2: 8522 mv a0,s0 + c002eda4: e42ff0ef jal ra,c002e3e6 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26794 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26802 if (js_parse_statement(s)) - c002ebd8: f0051163 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26799 + c002eda8: f0051163 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26807 close_scopes(s, s->cur_func->scope_level, block_scope_level); - c002ebdc: 743c ld a5,104(s0) - c002ebde: 8662 mv a2,s8 - c002ebe0: 8522 mv a0,s0 - c002ebe2: 0e07a583 lw a1,224(a5) - c002ebe6: 9abd60ef jal ra,c0005590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26801 + c002edac: 743c ld a5,104(s0) + c002edae: 8662 mv a2,s8 + c002edb0: 8522 mv a0,s0 + c002edb2: 0e07a583 lw a1,224(a5) + c002edb6: 8c9d60ef jal ra,c000567e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26809 if (OPTIMIZE && label_test != label_body && label_cont != label_test) { - c002ebea: 0f590b63 beq s2,s5,c002ece0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26801 (discriminator 1) - c002ebee: 0f298963 beq s3,s2,c002ece0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26803 + c002edba: 0f590b63 beq s2,s5,c002eeb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26809 (discriminator 1) + c002edbe: 0f298963 beq s3,s2,c002eeb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26811 DynBuf *bc = &s->cur_func->byte_code; - c002ebf2: 06843a83 ld s5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26792 + c002edc2: 06843a83 ld s5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26800 pos_body = s->cur_func->byte_code.size; - c002ebf6: 000b0d1b sext.w s10,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26807 + c002edc6: 000b0d1b sext.w s10,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26815 dbuf_realloc(bc, bc->size + chunk_size); - c002ebfa: 414b0b3b subw s6,s6,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26805 + c002edca: 414b0b3b subw s6,s6,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26813 int offset = bc->size - pos_cont; - c002ebfe: 138ab583 ld a1,312(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26803 + c002edce: 138ab583 ld a1,312(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26811 DynBuf *bc = &s->cur_func->byte_code; - c002ec02: 130a8c13 addi s8,s5,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26807 + c002edd2: 130a8c13 addi s8,s5,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26815 dbuf_realloc(bc, bc->size + chunk_size); - c002ec06: 8562 mv a0,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26805 + c002edd6: 8562 mv a0,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26813 int offset = bc->size - pos_cont; - c002ec08: 41458dbb subw s11,a1,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26807 + c002edd8: 41458dbb subw s11,a1,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26815 dbuf_realloc(bc, bc->size + chunk_size); - c002ec0c: 95da add a1,a1,s6 - c002ec0e: 000190ef jal ra,c0047c0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26808 + c002eddc: 95da add a1,a1,s6 + c002edde: 000190ef jal ra,c0047dde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26816 dbuf_put(bc, bc->buf + pos_cont, chunk_size); - c002ec12: 130ab583 ld a1,304(s5) - c002ec16: 865a mv a2,s6 - c002ec18: 8562 mv a0,s8 - c002ec1a: 95d2 add a1,a1,s4 - c002ec1c: 094190ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26809 + c002ede2: 130ab583 ld a1,304(s5) + c002ede6: 865a mv a2,s6 + c002ede8: 8562 mv a0,s8 + c002edea: 95d2 add a1,a1,s4 + c002edec: 094190ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26817 memset(bc->buf + pos_cont, OP_nop, chunk_size); - c002ec20: 130ab503 ld a0,304(s5) - c002ec24: 865a mv a2,s6 - c002ec26: 0b300593 li a1,179 - c002ec2a: 9552 add a0,a0,s4 - c002ec2c: 445270ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26811 + c002edf0: 130ab503 ld a0,304(s5) + c002edf4: 865a mv a2,s6 + c002edf6: 0b300593 li a1,179 + c002edfa: 9552 add a0,a0,s4 + c002edfc: 445270ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26819 s->cur_func->last_opcode_pos = bc->size - 5; - c002ec30: 138ab783 ld a5,312(s5) - c002ec34: 7438 ld a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26814 + c002ee00: 138ab783 ld a5,312(s5) + c002ee04: 7438 ld a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26822 LabelSlot *ls = &s->cur_func->label_slots[i]; - c002ec36: 46e1 li a3,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26811 + c002ee06: 46e1 li a3,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26819 s->cur_func->last_opcode_pos = bc->size - 5; - c002ec38: 37ed addiw a5,a5,-5 - c002ec3a: 16f72023 sw a5,352(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26813 (discriminator 1) + c002ee08: 37ed addiw a5,a5,-5 + c002ee0a: 16f72023 sw a5,352(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26821 (discriminator 1) for (i = label_cont; i < s->cur_func->label_count; i++) { - c002ec3e: 743c ld a5,104(s0) - c002ec40: 17c7a703 lw a4,380(a5) - c002ec44: 06e9cf63 blt s3,a4,c002ecc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26822 (discriminator 3) + c002ee0e: 743c ld a5,104(s0) + c002ee10: 17c7a703 lw a4,380(a5) + c002ee14: 06e9cf63 blt s3,a4,c002ee92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26830 (discriminator 3) emit_label(s, label_break); - c002ec48: 85e6 mv a1,s9 - c002ec4a: 8522 mv a0,s0 - c002ec4c: 98fd60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26824 (discriminator 3) + c002ee18: 85e6 mv a1,s9 + c002ee1a: 8522 mv a0,s0 + c002ee1c: 8add60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26832 (discriminator 3) pop_break_entry(s->cur_func); - c002ec50: b5ad j c002eaba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26735 + c002ee20: b5ad j c002ec8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26743 if (tok == TOK_VAR || tok == TOK_LET || tok == TOK_CONST) { - c002ec52: fb100793 li a5,-79 - c002ec56: eaf900e3 beq s2,a5,c002eaf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26735 (discriminator 1) - c002ec5a: fd100793 li a5,-47 - c002ec5e: e8f90ce3 beq s2,a5,c002eaf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26735 (discriminator 2) - c002ec62: fc900793 li a5,-55 - c002ec66: e8f908e3 beq s2,a5,c002eaf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26741 + c002ee22: fb100793 li a5,-79 + c002ee26: eaf900e3 beq s2,a5,c002ecc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26743 (discriminator 1) + c002ee2a: fd100793 li a5,-47 + c002ee2e: e8f90ce3 beq s2,a5,c002ecc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26743 (discriminator 2) + c002ee32: fc900793 li a5,-55 + c002ee36: e8f908e3 beq s2,a5,c002ecc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26749 if (js_parse_expr2(s, FALSE)) - c002ec6a: 4581 li a1,0 - c002ec6c: 8522 mv a0,s0 - c002ec6e: ea2fe0ef jal ra,c002d310 - c002ec72: e6051463 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26743 + c002ee3a: 4581 li a1,0 + c002ee3c: 8522 mv a0,s0 + c002ee3e: ea2fe0ef jal ra,c002d4e0 + c002ee42: e6051463 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26751 emit_op(s, OP_drop); - c002ec76: 45b9 li a1,14 - c002ec78: 8522 mv a0,s0 - c002ec7a: fc2d60ef jal ra,c000543c - c002ec7e: bd49 j c002eb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26754 + c002ee46: 45b9 li a1,14 + c002ee48: 8522 mv a0,s0 + c002ee4a: ee0d60ef jal ra,c000552a + c002ee4e: bd49 j c002ece0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26762 label_body = new_label(s); - c002ec80: 8956 mv s2,s5 - c002ec82: bf11 j c002eb96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26779 + c002ee50: 8956 mv s2,s5 + c002ee52: bf11 j c002ed66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26787 emit_goto(s, OP_goto, label_body); - c002ec84: 8656 mv a2,s5 - c002ec86: 06c00593 li a1,108 - c002ec8a: 8522 mv a0,s0 - c002ec8c: 82ce90ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26781 + c002ee54: 8656 mv a2,s5 + c002ee56: 06c00593 li a1,108 + c002ee5a: 8522 mv a0,s0 + c002ee5c: 82ce90ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26789 pos_cont = s->cur_func->byte_code.size; - c002ec90: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26782 + c002ee60: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26790 emit_label(s, label_cont); - c002ec92: 85ce mv a1,s3 - c002ec94: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26781 + c002ee62: 85ce mv a1,s3 + c002ee64: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26789 pos_cont = s->cur_func->byte_code.size; - c002ec96: 1387aa03 lw s4,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26782 + c002ee66: 1387aa03 lw s4,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26790 emit_label(s, label_cont); - c002ec9a: 941d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26783 + c002ee6a: 85fd60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26791 if (js_parse_expr(s)) - c002ec9e: 8522 mv a0,s0 - c002eca0: ecafe0ef jal ra,c002d36a - c002eca4: e2051b63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26785 + c002ee6e: 8522 mv a0,s0 + c002ee70: ecafe0ef jal ra,c002d53a + c002ee74: e2051b63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26793 emit_op(s, OP_drop); - c002eca8: 45b9 li a1,14 - c002ecaa: 8522 mv a0,s0 - c002ecac: f90d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26786 + c002ee78: 45b9 li a1,14 + c002ee7a: 8522 mv a0,s0 + c002ee7c: eaed60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26794 if (label_test != label_body) - c002ecb0: f15902e3 beq s2,s5,c002ebb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26787 + c002ee80: f15902e3 beq s2,s5,c002ed84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26795 emit_goto(s, OP_goto, label_test); - c002ecb4: 864a mv a2,s2 - c002ecb6: 06c00593 li a1,108 - c002ecba: 8522 mv a0,s0 - c002ecbc: ffde80ef jal ra,c0017cb8 - c002ecc0: bdd5 j c002ebb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26814 + c002ee84: 864a mv a2,s2 + c002ee86: 06c00593 li a1,108 + c002ee8a: 8522 mv a0,s0 + c002ee8c: ffde80ef jal ra,c0017e88 + c002ee90: bdd5 j c002ed84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26822 LabelSlot *ls = &s->cur_func->label_slots[i]; - c002ecc2: 02d98733 mul a4,s3,a3 - c002ecc6: 1707b783 ld a5,368(a5) - c002ecca: 973e add a4,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26815 + c002ee92: 02d98733 mul a4,s3,a3 + c002ee96: 1707b783 ld a5,368(a5) + c002ee9a: 973e add a4,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26823 if (ls->pos >= pos_cont && ls->pos < pos_body) - c002eccc: 435c lw a5,4(a4) - c002ecce: 0147c763 blt a5,s4,c002ecdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26815 (discriminator 1) - c002ecd2: 01a7d563 bge a5,s10,c002ecdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26816 + c002ee9c: 435c lw a5,4(a4) + c002ee9e: 0147c763 blt a5,s4,c002eeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26823 (discriminator 1) + c002eea2: 01a7d563 bge a5,s10,c002eeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26824 ls->pos += offset; - c002ecd6: 01b787bb addw a5,a5,s11 - c002ecda: c35c sw a5,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26813 (discriminator 2) + c002eea6: 01b787bb addw a5,a5,s11 + c002eeaa: c35c sw a5,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26821 (discriminator 2) for (i = label_cont; i < s->cur_func->label_count; i++) { - c002ecdc: 2985 addiw s3,s3,1 - c002ecde: b785 j c002ec3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26819 + c002eeac: 2985 addiw s3,s3,1 + c002eeae: b785 j c002ee0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26827 emit_goto(s, OP_goto, label_cont); - c002ece0: 864e mv a2,s3 - c002ece2: 06c00593 li a1,108 - c002ece6: 8522 mv a0,s0 - c002ece8: fd1e80ef jal ra,c0017cb8 - c002ecec: bfb1 j c002ec48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26834 + c002eeb0: 864e mv a2,s3 + c002eeb2: 06c00593 li a1,108 + c002eeb6: 8522 mv a0,s0 + c002eeb8: fd1e80ef jal ra,c0017e88 + c002eebc: bfb1 j c002ee18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26842 if (next_token(s)) - c002ecee: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26831 + c002eebe: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26839 int is_cont = s->token.val - TOK_BREAK; - c002ecf0: 0449899b addiw s3,s3,68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26834 + c002eec0: 0449899b addiw s3,s3,68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26842 if (next_token(s)) - c002ecf4: ea3f70ef jal ra,c0026b96 - c002ecf8: de051163 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26836 + c002eec4: ea3f70ef jal ra,c0026d66 + c002eec8: de051163 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26844 if (!s->got_lf && s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved) - c002ecfc: 04842a03 lw s4,72(s0) - c002ed00: 040a1663 bnez s4,c002ed4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26836 (discriminator 1) - c002ed04: 4c18 lw a4,24(s0) - c002ed06: f8300793 li a5,-125 - c002ed0a: 00f71663 bne a4,a5,c002ed16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26836 (discriminator 2) - c002ed0e: 581c lw a5,48(s0) - c002ed10: e399 bnez a5,c002ed16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26837 + c002eecc: 04842a03 lw s4,72(s0) + c002eed0: 040a1663 bnez s4,c002ef1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26844 (discriminator 1) + c002eed4: 4c18 lw a4,24(s0) + c002eed6: f8300793 li a5,-125 + c002eeda: 00f71663 bne a4,a5,c002eee6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26844 (discriminator 2) + c002eede: 581c lw a5,48(s0) + c002eee0: e399 bnez a5,c002eee6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26845 label = s->token.u.ident.atom; - c002ed12: 02842a03 lw s4,40(s0) + c002eee2: 02842a03 lw s4,40(s0) emit_break(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25931 scope_level = s->cur_func->scope_level; - c002ed16: 743c ld a5,104(s0) + c002eee6: 743c ld a5,104(s0) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26848 if (emit_break(s, label, is_cont)) - c002ed18: 000a0a9b sext.w s5,s4 + c002eee8: 000a0a9b sext.w s5,s4 emit_break(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25943 if (!is_cont && - c002ed1c: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 + c002eeec: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25931 scope_level = s->cur_func->scope_level; - c002ed1e: 0e07ac83 lw s9,224(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25924 + c002eeee: 0e07ac83 lw s9,224(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25932 top = s->cur_func->top_break; - c002ed22: 1807b903 ld s2,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25925 + c002eef2: 1807b903 ld s2,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25933 while (top != NULL) { - c002ed26: 02091563 bnez s2,c002ed50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25956 + c002eef6: 02091563 bnez s2,c002ef20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25964 if (name == JS_ATOM_NULL) { - c002ed2a: 0c0a9063 bnez s5,c002edea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25958 + c002eefa: 0c0a9063 bnez s5,c002efba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25966 return js_parse_error(s, "continue must be inside loop"); - c002ed2e: 00031597 auipc a1,0x31 - c002ed32: 43a58593 addi a1,a1,1082 # c0060168 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25957 + c002eefe: 00031597 auipc a1,0x31 + c002ef02: 4ca58593 addi a1,a1,1226 # c00603c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25965 if (is_cont) - c002ed36: 00099663 bnez s3,c002ed42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25960 + c002ef06: 00099663 bnez s3,c002ef12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25968 return js_parse_error(s, "break must be inside loop or switch"); - c002ed3a: 00031597 auipc a1,0x31 - c002ed3e: 44e58593 addi a1,a1,1102 # c0060188 - c002ed42: 8522 mv a0,s0 - c002ed44: d74f70ef jal ra,c00262b8 - c002ed48: 6f40006f j c002f43c + c002ef0a: 00031597 auipc a1,0x31 + c002ef0e: 4de58593 addi a1,a1,1246 # c00603e8 + c002ef12: 8522 mv a0,s0 + c002ef14: d74f70ef jal ra,c0026488 + c002ef18: 6f40006f j c002f60c js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26847 label = JS_ATOM_NULL; - c002ed4c: 4a01 li s4,0 - c002ed4e: b7e1 j c002ed16 + c002ef1c: 4a01 li s4,0 + c002ef1e: b7e1 j c002eee6 emit_break(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25934 close_scopes(s, scope_level, top->scope_level); - c002ed50: 01c92603 lw a2,28(s2) - c002ed54: 85e6 mv a1,s9 - c002ed56: 8522 mv a0,s0 - c002ed58: 839d60ef jal ra,c0005590 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25927 + c002ef20: 01c92603 lw a2,28(s2) + c002ef24: 85e6 mv a1,s9 + c002ef26: 8522 mv a0,s0 + c002ef28: f56d60ef jal ra,c000567e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25935 scope_level = top->scope_level; - c002ed5c: 01c92c83 lw s9,28(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25928 + c002ef2c: 01c92c83 lw s9,28(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25936 if (is_cont && - c002ed60: 02098863 beqz s3,c002ed90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25929 + c002ef30: 02098863 beqz s3,c002ef60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25937 top->label_cont != -1 && - c002ed64: 01092603 lw a2,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25935 + c002ef34: 01092603 lw a2,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25943 if (!is_cont && - c002ed68: 03860763 beq a2,s8,c002ed96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25936 + c002ef38: 03860763 beq a2,s8,c002ef66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25944 top->label_break != -1 && - c002ed6c: 000a8663 beqz s5,c002ed78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25937 + c002ef3c: 000a8663 beqz s5,c002ef48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25945 (name == JS_ATOM_NULL || top->label_name == name)) { - c002ed70: 00892783 lw a5,8(s2) - c002ed74: 03579163 bne a5,s5,c002ed96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25938 + c002ef40: 00892783 lw a5,8(s2) + c002ef44: 03579163 bne a5,s5,c002ef66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25946 emit_goto(s, OP_goto, top->label_break); - c002ed78: 06c00593 li a1,108 - c002ed7c: 8522 mv a0,s0 - c002ed7e: f3be80ef jal ra,c0017cb8 + c002ef48: 06c00593 li a1,108 + c002ef4c: 8522 mv a0,s0 + c002ef4e: f3be80ef jal ra,c0017e88 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26850 if (label != JS_ATOM_NULL) { - c002ed82: e60a0563 beqz s4,c002e3ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27187 + c002ef52: e60a0563 beqz s4,c002e5bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27195 if (next_token(s)) - c002ed86: 8522 mv a0,s0 - c002ed88: e0ff70ef jal ra,c0026b96 - c002ed8c: 6b00006f j c002f43c + c002ef56: 8522 mv a0,s0 + c002ef58: e0ff70ef jal ra,c0026d66 + c002ef5c: 6b00006f j c002f60c emit_break(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25944 top->label_break != -1 && - c002ed90: 00c92603 lw a2,12(s2) - c002ed94: bfd1 j c002ed68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25942 + c002ef60: 00c92603 lw a2,12(s2) + c002ef64: bfd1 j c002ef38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25950 if (top->has_iterator) { - c002ed96: 02092b03 lw s6,32(s2) - c002ed9a: 000b0863 beqz s6,c002edaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25943 + c002ef66: 02092b03 lw s6,32(s2) + c002ef6a: 000b0863 beqz s6,c002ef7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25951 emit_op(s, OP_iterator_close); - c002ed9e: 08500593 li a1,133 - c002eda2: 8522 mv a0,s0 - c002eda4: e98d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25944 + c002ef6e: 08500593 li a1,133 + c002ef72: 8522 mv a0,s0 + c002ef74: db6d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25952 i += 3; - c002eda8: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25946 + c002ef78: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25954 for(; i < top->drop_count; i++) - c002edaa: 01492783 lw a5,20(s2) - c002edae: 02fb4863 blt s6,a5,c002edde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25948 + c002ef7a: 01492783 lw a5,20(s2) + c002ef7e: 02fb4863 blt s6,a5,c002efae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25956 if (top->label_finally != -1) { - c002edb2: 01892783 lw a5,24(s2) - c002edb6: 03878163 beq a5,s8,c002edd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25950 + c002ef82: 01892783 lw a5,24(s2) + c002ef86: 03878163 beq a5,s8,c002efa8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25958 emit_op(s, OP_undefined); - c002edba: 4599 li a1,6 - c002edbc: 8522 mv a0,s0 - c002edbe: e7ed60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25951 + c002ef8a: 4599 li a1,6 + c002ef8c: 8522 mv a0,s0 + c002ef8e: d9cd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25959 emit_goto(s, OP_gosub, top->label_finally); - c002edc2: 01892603 lw a2,24(s2) - c002edc6: 06e00593 li a1,110 - c002edca: 8522 mv a0,s0 - c002edcc: eede80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25952 + c002ef92: 01892603 lw a2,24(s2) + c002ef96: 06e00593 li a1,110 + c002ef9a: 8522 mv a0,s0 + c002ef9c: eede80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25960 emit_op(s, OP_drop); - c002edd0: 45b9 li a1,14 - c002edd2: 8522 mv a0,s0 - c002edd4: e68d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25954 + c002efa0: 45b9 li a1,14 + c002efa2: 8522 mv a0,s0 + c002efa4: d86d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25962 top = top->prev; - c002edd8: 00093903 ld s2,0(s2) - c002eddc: b7a9 j c002ed26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25947 + c002efa8: 00093903 ld s2,0(s2) + c002efac: b7a9 j c002eef6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25955 emit_op(s, OP_drop); - c002edde: 45b9 li a1,14 - c002ede0: 8522 mv a0,s0 - c002ede2: e5ad60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25946 + c002efae: 45b9 li a1,14 + c002efb0: 8522 mv a0,s0 + c002efb2: d78d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25954 for(; i < top->drop_count; i++) - c002ede6: 2b05 addiw s6,s6,1 - c002ede8: b7c9 j c002edaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25962 + c002efb6: 2b05 addiw s6,s6,1 + c002efb8: b7c9 j c002ef7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25970 return js_parse_error(s, "break/continue label not found"); - c002edea: 00031597 auipc a1,0x31 - c002edee: 3c658593 addi a1,a1,966 # c00601b0 - c002edf2: 8522 mv a0,s0 - c002edf4: cc4f70ef jal ra,c00262b8 + c002efba: 00031597 auipc a1,0x31 + c002efbe: 45658593 addi a1,a1,1110 # c0060410 + c002efc2: 8522 mv a0,s0 + c002efc4: cc4f70ef jal ra,c0026488 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26848 if (emit_break(s, label, is_cont)) - c002edf8: d549 beqz a0,c002ed82 - c002edfa: ce0ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26856 + c002efc8: d549 beqz a0,c002ef52 + c002efca: ce0ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26864 if (next_token(s)) - c002edfe: 8522 mv a0,s0 - c002ee00: d97f70ef jal ra,c0026b96 - c002ee04: cc051b63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26859 + c002efce: 8522 mv a0,s0 + c002efd0: d97f70ef jal ra,c0026d66 + c002efd4: cc051b63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26867 set_eval_ret_undefined(s); - c002ee08: 8522 mv a0,s0 - c002ee0a: a04d70ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26860 + c002efd8: 8522 mv a0,s0 + c002efda: 922d70ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26868 if (js_parse_expr_paren(s)) - c002ee0e: 8522 mv a0,s0 - c002ee10: f8efe0ef jal ra,c002d59e - c002ee14: cc051363 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26863 + c002efde: 8522 mv a0,s0 + c002efe0: f8efe0ef jal ra,c002d76e + c002efe4: cc051363 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26871 push_scope(s); - c002ee18: 8522 mv a0,s0 - c002ee1a: ef2e90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26864 + c002efe8: 8522 mv a0,s0 + c002efea: ef2e90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26872 label_break = new_label(s); - c002ee1e: 8522 mv a0,s0 - c002ee20: e91e80ef jal ra,c0017cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26865 + c002efee: 8522 mv a0,s0 + c002eff0: e91e80ef jal ra,c0017e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26873 push_break_entry(s->cur_func, &break_entry, - c002ee24: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26864 + c002eff4: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26872 label_break = new_label(s); - c002ee26: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26868 + c002eff6: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26876 if (js_parse_expect(s, '{')) - c002ee28: 07b00593 li a1,123 + c002eff8: 07b00593 li a1,123 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002ee2c: 1807b703 ld a4,384(a5) - c002ee30: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002effc: 1807b703 ld a4,384(a5) + c002f000: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002ee32: 0898 addi a4,sp,80 - c002ee34: 18e7b023 sd a4,384(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f002: 0898 addi a4,sp,80 + c002f004: 18e7b023 sd a4,384(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002ee38: 577d li a4,-1 - c002ee3a: 01f75693 srli a3,a4,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25903 + c002f008: 577d li a4,-1 + c002f00a: 01f75693 srli a3,a4,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25911 be->label_break = label_break; - c002ee3e: ceaa sw a0,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f00e: ceaa sw a0,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002ee40: cca6 sw s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f010: cca6 sw s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002ee42: f0b6 sd a3,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002f012: f0b6 sd a3,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002ee44: d4ba sw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f014: d4ba sw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002ee46: 0e07a783 lw a5,224(a5) + c002f016: 0e07a783 lw a5,224(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26876 if (js_parse_expect(s, '{')) - c002ee4a: 8522 mv a0,s0 + c002f01a: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002ee4c: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f01c: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002ee4e: d6be sw a5,108(sp) + c002f01e: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26876 if (js_parse_expect(s, '{')) - c002ee50: c92f90ef jal ra,c00282e2 - c002ee54: c8051363 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26871 + c002f020: c92f90ef jal ra,c00284b2 + c002f024: c8051363 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26879 default_label_pos = -1; - c002ee58: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26872 + c002f028: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26880 label_case = -1; - c002ee5a: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26873 + c002f02a: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26881 while (s->token.val != '}') { - c002ee5c: 07d00c13 li s8,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26874 + c002f02c: 07d00c13 li s8,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26882 if (s->token.val == TOK_CASE) { - c002ee60: fbf00b13 li s6,-65 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26900 + c002f030: fbf00b13 li s6,-65 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26908 } else if (s->token.val == TOK_DEFAULT) { - c002ee64: fc000c93 li s9,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26873 + c002f034: fc000c93 li s9,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26881 while (s->token.val != '}') { - c002ee68: 4c1c lw a5,24(s0) - c002ee6a: 05879c63 bne a5,s8,c002eec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26931 + c002f038: 4c1c lw a5,24(s0) + c002f03a: 05879c63 bne a5,s8,c002f092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26939 if (js_parse_expect(s, '}')) - c002ee6e: 07d00593 li a1,125 - c002ee72: 8522 mv a0,s0 - c002ee74: c6ef90ef jal ra,c00282e2 - c002ee78: c6051163 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26933 + c002f03e: 07d00593 li a1,125 + c002f042: 8522 mv a0,s0 + c002f044: c6ef90ef jal ra,c00284b2 + c002f048: c6051163 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26941 if (default_label_pos >= 0) { - c002ee7c: 1409c163 bltz s3,c002efbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26935 + c002f04c: 1409c163 bltz s3,c002f18e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26943 put_u32(s->cur_func->byte_code.buf + default_label_pos, - c002ee80: 743c ld a5,104(s0) + c002f050: 743c ld a5,104(s0) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c002ee82: 0089571b srliw a4,s2,0x8 + c002f052: 0089571b srliw a4,s2,0x8 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26937 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26945 s->cur_func->label_slots[label_case].pos = default_label_pos + 4; - c002ee86: 4561 li a0,24 + c002f056: 4561 li a0,24 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c002ee88: 1307b783 ld a5,304(a5) - c002ee8c: 97ce add a5,a5,s3 - c002ee8e: 00e780a3 sb a4,1(a5) - c002ee92: 0109571b srliw a4,s2,0x10 - c002ee96: 01278023 sb s2,0(a5) - c002ee9a: 00e78123 sb a4,2(a5) - c002ee9e: 0189571b srliw a4,s2,0x18 + c002f058: 1307b783 ld a5,304(a5) + c002f05c: 97ce add a5,a5,s3 + c002f05e: 00e780a3 sb a4,1(a5) + c002f062: 0109571b srliw a4,s2,0x10 + c002f066: 01278023 sb s2,0(a5) + c002f06a: 00e78123 sb a4,2(a5) + c002f06e: 0189571b srliw a4,s2,0x18 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26937 - c002eea2: 02a90933 mul s2,s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26945 + c002f072: 02a90933 mul s2,s2,a0 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c002eea6: 00e781a3 sb a4,3(a5) + c002f076: 00e781a3 sb a4,3(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26937 - c002eeaa: 743c ld a5,104(s0) - c002eeac: 2991 addiw s3,s3,4 - c002eeae: 1707b783 ld a5,368(a5) - c002eeb2: 993e add s2,s2,a5 - c002eeb4: 01392223 sw s3,4(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26945 + c002f07a: 743c ld a5,104(s0) + c002f07c: 2991 addiw s3,s3,4 + c002f07e: 1707b783 ld a5,368(a5) + c002f082: 993e add s2,s2,a5 + c002f084: 01392223 sw s3,4(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26949 emit_label(s, label_break); - c002eeb8: 85d6 mv a1,s5 - c002eeba: 8522 mv a0,s0 - c002eebc: f1ed60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26942 + c002f088: 85d6 mv a1,s5 + c002f08a: 8522 mv a0,s0 + c002f08c: e3cd60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26950 emit_op(s, OP_drop); /* drop the switch expression */ - c002eec0: becd j c002eab2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26874 + c002f090: becd j c002ec82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26882 if (s->token.val == TOK_CASE) { - c002eec2: 09679163 bne a5,s6,c002ef44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26875 + c002f092: 09679163 bne a5,s6,c002f114 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26883 label1 = -1; - c002eec6: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26876 + c002f096: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26884 if (label_case >= 0) { - c002eec8: 00094963 bltz s2,c002eeda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26878 + c002f098: 00094963 bltz s2,c002f0aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26886 label1 = emit_goto(s, OP_goto, -1); - c002eecc: 567d li a2,-1 - c002eece: 06c00593 li a1,108 - c002eed2: 8522 mv a0,s0 - c002eed4: de5e80ef jal ra,c0017cb8 - c002eed8: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26880 + c002f09c: 567d li a2,-1 + c002f09e: 06c00593 li a1,108 + c002f0a2: 8522 mv a0,s0 + c002f0a4: de5e80ef jal ra,c0017e88 + c002f0a8: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26888 emit_label(s, label_case); - c002eeda: 85ca mv a1,s2 - c002eedc: 8522 mv a0,s0 - c002eede: efcd60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26884 + c002f0aa: 85ca mv a1,s2 + c002f0ac: 8522 mv a0,s0 + c002f0ae: e1ad60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26892 if (next_token(s)) - c002eee2: 8522 mv a0,s0 - c002eee4: cb3f70ef jal ra,c0026b96 - c002eee8: be051963 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26886 + c002f0b2: 8522 mv a0,s0 + c002f0b4: cb3f70ef jal ra,c0026d66 + c002f0b8: be051963 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26894 emit_op(s, OP_dup); - c002eeec: 8522 mv a0,s0 - c002eeee: 45c5 li a1,17 - c002eef0: d4cd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26887 + c002f0bc: 8522 mv a0,s0 + c002f0be: 45c5 li a1,17 + c002f0c0: c6ad60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26895 if (js_parse_expr(s)) - c002eef4: 8522 mv a0,s0 - c002eef6: c74fe0ef jal ra,c002d36a - c002eefa: be051063 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26889 + c002f0c4: 8522 mv a0,s0 + c002f0c6: c74fe0ef jal ra,c002d53a + c002f0ca: be051063 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26897 if (js_parse_expect(s, ':')) - c002eefe: 03a00593 li a1,58 - c002ef02: 8522 mv a0,s0 - c002ef04: bdef90ef jal ra,c00282e2 - c002ef08: bc051963 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26891 + c002f0ce: 03a00593 li a1,58 + c002f0d2: 8522 mv a0,s0 + c002f0d4: bdef90ef jal ra,c00284b2 + c002f0d8: bc051963 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26899 emit_op(s, OP_strict_eq); - c002ef0c: 0ac00593 li a1,172 - c002ef10: 8522 mv a0,s0 - c002ef12: d2ad60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26892 + c002f0dc: 0ac00593 li a1,172 + c002f0e0: 8522 mv a0,s0 + c002f0e2: c48d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26900 if (s->token.val == TOK_CASE) { - c002ef16: 4c1c lw a5,24(s0) - c002ef18: 01679a63 bne a5,s6,c002ef2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26893 + c002f0e6: 4c1c lw a5,24(s0) + c002f0e8: 01679a63 bne a5,s6,c002f0fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26901 label1 = emit_goto(s, OP_if_true, label1); - c002ef1c: 8652 mv a2,s4 - c002ef1e: 06b00593 li a1,107 - c002ef22: 8522 mv a0,s0 - c002ef24: d95e80ef jal ra,c0017cb8 - c002ef28: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26884 + c002f0ec: 8652 mv a2,s4 + c002f0ee: 06b00593 li a1,107 + c002f0f2: 8522 mv a0,s0 + c002f0f4: d95e80ef jal ra,c0017e88 + c002f0f8: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26892 if (next_token(s)) - c002ef2a: bf65 j c002eee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26895 + c002f0fa: bf65 j c002f0b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26903 label_case = emit_goto(s, OP_if_false, -1); - c002ef2c: 567d li a2,-1 - c002ef2e: 06a00593 li a1,106 - c002ef32: 8522 mv a0,s0 - c002ef34: d85e80ef jal ra,c0017cb8 - c002ef38: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26896 + c002f0fc: 567d li a2,-1 + c002f0fe: 06a00593 li a1,106 + c002f102: 8522 mv a0,s0 + c002f104: d85e80ef jal ra,c0017e88 + c002f108: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26904 emit_label(s, label1); - c002ef3a: 85d2 mv a1,s4 - c002ef3c: 8522 mv a0,s0 - c002ef3e: e9cd60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26897 + c002f10a: 85d2 mv a1,s4 + c002f10c: 8522 mv a0,s0 + c002f10e: dbad60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26905 break; - c002ef42: b71d j c002ee68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26900 + c002f112: b71d j c002f038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26908 } else if (s->token.val == TOK_DEFAULT) { - c002ef44: 05979d63 bne a5,s9,c002ef9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26901 + c002f114: 05979d63 bne a5,s9,c002f16e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26909 if (next_token(s)) - c002ef48: 8522 mv a0,s0 - c002ef4a: c4df70ef jal ra,c0026b96 - c002ef4e: b8051663 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26903 + c002f118: 8522 mv a0,s0 + c002f11a: c4df70ef jal ra,c0026d66 + c002f11e: b8051663 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26911 if (js_parse_expect(s, ':')) - c002ef52: 03a00593 li a1,58 - c002ef56: 8522 mv a0,s0 - c002ef58: b8af90ef jal ra,c00282e2 - c002ef5c: b6051f63 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26905 + c002f122: 03a00593 li a1,58 + c002f126: 8522 mv a0,s0 + c002f128: b8af90ef jal ra,c00284b2 + c002f12c: b6051f63 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26913 if (default_label_pos >= 0) { - c002ef60: 0009c863 bltz s3,c002ef70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26906 + c002f130: 0009c863 bltz s3,c002f140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26914 js_parse_error(s, "duplicate default"); - c002ef64: 00031597 auipc a1,0x31 - c002ef68: 26c58593 addi a1,a1,620 # c00601d0 - c002ef6c: b8aff06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26909 + c002f134: 00031597 auipc a1,0x31 + c002f138: 2fc58593 addi a1,a1,764 # c0060430 + c002f13c: b8aff06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26917 if (label_case < 0) { - c002ef70: 00095963 bgez s2,c002ef82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26911 + c002f140: 00095963 bgez s2,c002f152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26919 label_case = emit_goto(s, OP_goto, -1); - c002ef74: 567d li a2,-1 - c002ef76: 06c00593 li a1,108 - c002ef7a: 8522 mv a0,s0 - c002ef7c: d3de80ef jal ra,c0017cb8 - c002ef80: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26918 + c002f144: 567d li a2,-1 + c002f146: 06c00593 li a1,108 + c002f14a: 8522 mv a0,s0 + c002f14c: d3de80ef jal ra,c0017e88 + c002f150: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26926 emit_op(s, OP_label); - c002ef82: 0b600593 li a1,182 - c002ef86: 8522 mv a0,s0 - c002ef88: cb4d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26919 + c002f152: 0b600593 li a1,182 + c002f156: 8522 mv a0,s0 + c002f158: bd2d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26927 emit_u32(s, 0); - c002ef8c: 4581 li a1,0 - c002ef8e: 8522 mv a0,s0 - c002ef90: e42d60ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26920 + c002f15c: 4581 li a1,0 + c002f15e: 8522 mv a0,s0 + c002f160: d60d60ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26928 default_label_pos = s->cur_func->byte_code.size - 4; - c002ef94: 743c ld a5,104(s0) - c002ef96: 1387b983 ld s3,312(a5) - c002ef9a: 39f1 addiw s3,s3,-4 - c002ef9c: b5f1 j c002ee68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26922 + c002f164: 743c ld a5,104(s0) + c002f166: 1387b983 ld s3,312(a5) + c002f16a: 39f1 addiw s3,s3,-4 + c002f16c: b5f1 j c002f038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26930 if (label_case < 0) { - c002ef9e: 00095863 bgez s2,c002efae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26924 + c002f16e: 00095863 bgez s2,c002f17e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26932 js_parse_error(s, "invalid switch statement"); - c002efa2: 00031597 auipc a1,0x31 - c002efa6: 24658593 addi a1,a1,582 # c00601e8 - c002efaa: b4cff06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26927 + c002f172: 00031597 auipc a1,0x31 + c002f176: 2d658593 addi a1,a1,726 # c0060448 + c002f17a: b4cff06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26935 if (js_parse_statement_or_decl(s, DECL_MASK_ALL)) - c002efae: 459d li a1,7 - c002efb0: 8522 mv a0,s0 - c002efb2: a64ff0ef jal ra,c002e216 - c002efb6: ea0509e3 beqz a0,c002ee68 - c002efba: b20ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26939 + c002f17e: 459d li a1,7 + c002f180: 8522 mv a0,s0 + c002f182: a64ff0ef jal ra,c002e3e6 + c002f186: ea0509e3 beqz a0,c002f038 + c002f18a: b20ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26947 emit_label(s, label_case); - c002efbe: 85ca mv a1,s2 - c002efc0: 8522 mv a0,s0 - c002efc2: e18d60ef jal ra,c00055da - c002efc6: bdcd j c002eeb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26954 + c002f18e: 85ca mv a1,s2 + c002f190: 8522 mv a0,s0 + c002f192: d36d60ef jal ra,c00056c8 + c002f196: bdcd j c002f088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26962 set_eval_ret_undefined(s); - c002efc8: 8522 mv a0,s0 - c002efca: 844d70ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26955 + c002f198: 8522 mv a0,s0 + c002f19a: f63d60ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26963 if (next_token(s)) - c002efce: 8522 mv a0,s0 - c002efd0: bc7f70ef jal ra,c0026b96 - c002efd4: b0051363 bnez a0,c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26957 + c002f19e: 8522 mv a0,s0 + c002f1a0: bc7f70ef jal ra,c0026d66 + c002f1a4: b0051363 bnez a0,c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26965 label_catch = new_label(s); - c002efd8: 8522 mv a0,s0 - c002efda: cd7e80ef jal ra,c0017cb0 - c002efde: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26958 + c002f1a8: 8522 mv a0,s0 + c002f1aa: cd7e80ef jal ra,c0017e80 + c002f1ae: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26966 label_catch2 = new_label(s); - c002efe0: 8522 mv a0,s0 - c002efe2: ccfe80ef jal ra,c0017cb0 - c002efe6: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26959 + c002f1b0: 8522 mv a0,s0 + c002f1b2: ccfe80ef jal ra,c0017e80 + c002f1b6: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26967 label_finally = new_label(s); - c002efe8: 8522 mv a0,s0 - c002efea: cc7e80ef jal ra,c0017cb0 - c002efee: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26960 + c002f1b8: 8522 mv a0,s0 + c002f1ba: cc7e80ef jal ra,c0017e80 + c002f1be: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26968 label_end = new_label(s); - c002eff0: 8522 mv a0,s0 - c002eff2: cbfe80ef jal ra,c0017cb0 - c002eff6: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26962 + c002f1c0: 8522 mv a0,s0 + c002f1c2: cbfe80ef jal ra,c0017e80 + c002f1c6: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26970 emit_goto(s, OP_catch, label_catch); - c002eff8: 8652 mv a2,s4 - c002effa: 06d00593 li a1,109 - c002effe: 8522 mv a0,s0 - c002f000: cb9e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26964 + c002f1c8: 8652 mv a2,s4 + c002f1ca: 06d00593 li a1,109 + c002f1ce: 8522 mv a0,s0 + c002f1d0: cb9e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26972 push_break_entry(s->cur_func, &block_env, - c002f004: 7438 ld a4,104(s0) + c002f1d4: 7438 ld a4,104(s0) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002f006: 05010b13 addi s6,sp,80 + c002f1d6: 05010b13 addi s6,sp,80 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26976 if (js_parse_block(s)) - c002f00a: 8522 mv a0,s0 + c002f1da: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002f00c: 18073783 ld a5,384(a4) - c002f010: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f1dc: 18073783 ld a5,384(a4) + c002f1e0: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f012: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002f1e2: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002f014: 19673023 sd s6,384(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f1e4: 19673023 sd s6,384(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f018: 02079693 slli a3,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f1e8: 02079693 slli a3,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002f01c: 83fd srli a5,a5,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f1ec: 83fd srli a5,a5,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f01e: ecb6 sd a3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f1ee: ecb6 sd a3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002f020: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f1f0: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f022: 0e072783 lw a5,224(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 + c002f1f2: 0e072783 lw a5,224(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002f026: d882 sw zero,112(sp) + c002f1f6: d882 sw zero,112(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26966 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26974 block_env.label_finally = label_finally; - c002f028: d4ca sw s2,104(sp) + c002f1f8: d4ca sw s2,104(sp) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f02a: d6be sw a5,108(sp) + c002f1fa: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26976 if (js_parse_block(s)) - c002f02c: 2eb000ef jal ra,c002fb16 - c002f030: c119 beqz a0,c002f036 - c002f032: aa8ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26971 + c002f1fc: 2eb000ef jal ra,c002fce6 + c002f200: c119 beqz a0,c002f206 + c002f202: aa8ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26979 pop_break_entry(s->cur_func); - c002f036: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26973 + c002f206: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26981 if (js_is_live_code(s)) { - c002f038: 8522 mv a0,s0 + c002f208: 8522 mv a0,s0 pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002f03a: 1807b703 ld a4,384(a5) - c002f03e: 6318 ld a4,0(a4) - c002f040: 18e7b023 sd a4,384(a5) + c002f20a: 1807b703 ld a4,384(a5) + c002f20e: 6318 ld a4,0(a4) + c002f210: 18e7b023 sd a4,384(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26973 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26981 if (js_is_live_code(s)) { - c002f044: be2d50ef jal ra,c0004426 - c002f048: c90d beqz a0,c002f07a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26975 + c002f214: a12d50ef jal ra,c0004426 + c002f218: c90d beqz a0,c002f24a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26983 emit_op(s, OP_drop); - c002f04a: 45b9 li a1,14 - c002f04c: 8522 mv a0,s0 - c002f04e: beed60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26977 + c002f21a: 45b9 li a1,14 + c002f21c: 8522 mv a0,s0 + c002f21e: b0cd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26985 emit_op(s, OP_undefined); - c002f052: 4599 li a1,6 - c002f054: 8522 mv a0,s0 - c002f056: be6d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26978 + c002f222: 4599 li a1,6 + c002f224: 8522 mv a0,s0 + c002f226: b04d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26986 emit_goto(s, OP_gosub, label_finally); - c002f05a: 864a mv a2,s2 - c002f05c: 06e00593 li a1,110 - c002f060: 8522 mv a0,s0 - c002f062: c57e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26979 + c002f22a: 864a mv a2,s2 + c002f22c: 06e00593 li a1,110 + c002f230: 8522 mv a0,s0 + c002f232: c57e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26987 emit_op(s, OP_drop); - c002f066: 45b9 li a1,14 - c002f068: 8522 mv a0,s0 - c002f06a: bd2d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26981 + c002f236: 45b9 li a1,14 + c002f238: 8522 mv a0,s0 + c002f23a: af0d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26989 emit_goto(s, OP_goto, label_end); - c002f06e: 864e mv a2,s3 - c002f070: 06c00593 li a1,108 - c002f074: 8522 mv a0,s0 - c002f076: c43e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26984 + c002f23e: 864e mv a2,s3 + c002f240: 06c00593 li a1,108 + c002f244: 8522 mv a0,s0 + c002f246: c43e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26992 if (s->token.val == TOK_CATCH) { - c002f07a: 4c1c lw a5,24(s0) - c002f07c: fc300713 li a4,-61 - c002f080: 28e79363 bne a5,a4,c002f306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26985 + c002f24a: 4c1c lw a5,24(s0) + c002f24c: fc300713 li a4,-61 + c002f250: 28e79363 bne a5,a4,c002f4d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26993 if (next_token(s)) - c002f084: 8522 mv a0,s0 - c002f086: b11f70ef jal ra,c0026b96 - c002f08a: c119 beqz a0,c002f090 - c002f08c: a4eff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26988 + c002f254: 8522 mv a0,s0 + c002f256: b11f70ef jal ra,c0026d66 + c002f25a: c119 beqz a0,c002f260 + c002f25c: a4eff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26996 push_scope(s); /* catch variable */ - c002f090: 8522 mv a0,s0 - c002f092: c7ae90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26989 + c002f260: 8522 mv a0,s0 + c002f262: c7ae90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26997 emit_label(s, label_catch); - c002f096: 85d2 mv a1,s4 - c002f098: 8522 mv a0,s0 - c002f09a: d40d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26991 + c002f266: 85d2 mv a1,s4 + c002f268: 8522 mv a0,s0 + c002f26a: c5ed60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26999 if (s->token.val == '{') { - c002f09e: 4c18 lw a4,24(s0) - c002f0a0: 07b00793 li a5,123 - c002f0a4: 1af71a63 bne a4,a5,c002f258 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26993 + c002f26e: 4c18 lw a4,24(s0) + c002f270: 07b00793 li a5,123 + c002f274: 1af71a63 bne a4,a5,c002f428 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27001 emit_op(s, OP_drop); /* pop the exception object */ - c002f0a8: 45b9 li a1,14 - c002f0aa: 8522 mv a0,s0 - c002f0ac: b90d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27022 + c002f278: 45b9 li a1,14 + c002f27a: 8522 mv a0,s0 + c002f27c: aaed60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27030 emit_goto(s, OP_catch, label_catch2); - c002f0b0: 8656 mv a2,s5 - c002f0b2: 06d00593 li a1,109 - c002f0b6: 8522 mv a0,s0 - c002f0b8: c01e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27024 + c002f280: 8656 mv a2,s5 + c002f282: 06d00593 li a1,109 + c002f286: 8522 mv a0,s0 + c002f288: c01e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27032 push_scope(s); /* catch block */ - c002f0bc: 8522 mv a0,s0 - c002f0be: c4ee90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27025 + c002f28c: 8522 mv a0,s0 + c002f28e: c4ee90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27033 push_break_entry(s->cur_func, &block_env, JS_ATOM_NULL, - c002f0c2: 7438 ld a4,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27029 + c002f292: 7438 ld a4,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27037 if (js_parse_block(s)) - c002f0c4: 8522 mv a0,s0 + c002f294: 8522 mv a0,s0 push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002f0c6: 18073783 ld a5,384(a4) - c002f0ca: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f296: 18073783 ld a5,384(a4) + c002f29a: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f0cc: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002f29c: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002f0ce: 19673023 sd s6,384(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f29e: 19673023 sd s6,384(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f0d2: 02079693 slli a3,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f2a2: 02079693 slli a3,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002f0d6: 83fd srli a5,a5,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f2a6: 83fd srli a5,a5,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f0d8: ecb6 sd a3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f2a8: ecb6 sd a3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002f0da: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f2aa: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f0dc: 0e072783 lw a5,224(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 + c002f2ac: 0e072783 lw a5,224(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002f0e0: d882 sw zero,112(sp) + c002f2b0: d882 sw zero,112(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27027 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27035 block_env.label_finally = label_finally; - c002f0e2: d4ca sw s2,104(sp) + c002f2b2: d4ca sw s2,104(sp) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f0e4: d6be sw a5,108(sp) + c002f2b4: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27029 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27037 if (js_parse_block(s)) - c002f0e6: 231000ef jal ra,c002fb16 - c002f0ea: c119 beqz a0,c002f0f0 - c002f0ec: 9eeff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27032 + c002f2b6: 231000ef jal ra,c002fce6 + c002f2ba: c119 beqz a0,c002f2c0 + c002f2bc: 9eeff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27040 pop_break_entry(s->cur_func); - c002f0f0: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27033 + c002f2c0: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27041 pop_scope(s); /* catch block */ - c002f0f2: 8522 mv a0,s0 + c002f2c2: 8522 mv a0,s0 pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002f0f4: 1807b703 ld a4,384(a5) - c002f0f8: 6318 ld a4,0(a4) - c002f0fa: 18e7b023 sd a4,384(a5) + c002f2c4: 1807b703 ld a4,384(a5) + c002f2c8: 6318 ld a4,0(a4) + c002f2ca: 18e7b023 sd a4,384(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27033 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27041 pop_scope(s); /* catch block */ - c002f0fe: c3ad60ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27034 + c002f2ce: b58d60ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27042 pop_scope(s); /* catch variable */ - c002f102: 8522 mv a0,s0 - c002f104: c34d60ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27036 + c002f2d2: 8522 mv a0,s0 + c002f2d4: b52d60ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27044 if (js_is_live_code(s)) { - c002f108: 8522 mv a0,s0 - c002f10a: b1cd50ef jal ra,c0004426 - c002f10e: c90d beqz a0,c002f140 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27038 + c002f2d8: 8522 mv a0,s0 + c002f2da: 94cd50ef jal ra,c0004426 + c002f2de: c90d beqz a0,c002f310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27046 emit_op(s, OP_drop); - c002f110: 45b9 li a1,14 - c002f112: 8522 mv a0,s0 - c002f114: b28d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27041 + c002f2e0: 45b9 li a1,14 + c002f2e2: 8522 mv a0,s0 + c002f2e4: a46d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27049 emit_op(s, OP_undefined); - c002f118: 4599 li a1,6 - c002f11a: 8522 mv a0,s0 - c002f11c: b20d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27042 + c002f2e8: 4599 li a1,6 + c002f2ea: 8522 mv a0,s0 + c002f2ec: a3ed60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27050 emit_goto(s, OP_gosub, label_finally); - c002f120: 864a mv a2,s2 - c002f122: 06e00593 li a1,110 - c002f126: 8522 mv a0,s0 - c002f128: b91e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27043 + c002f2f0: 864a mv a2,s2 + c002f2f2: 06e00593 li a1,110 + c002f2f6: 8522 mv a0,s0 + c002f2f8: b91e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27051 emit_op(s, OP_drop); - c002f12c: 45b9 li a1,14 - c002f12e: 8522 mv a0,s0 - c002f130: b0cd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27044 + c002f2fc: 45b9 li a1,14 + c002f2fe: 8522 mv a0,s0 + c002f300: a2ad60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27052 emit_goto(s, OP_goto, label_end); - c002f134: 864e mv a2,s3 - c002f136: 06c00593 li a1,108 - c002f13a: 8522 mv a0,s0 - c002f13c: b7de80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27048 - emit_label(s, label_catch2); - c002f140: 85d6 mv a1,s5 + c002f304: 864e mv a2,s3 + c002f306: 06c00593 li a1,108 + c002f30a: 8522 mv a0,s0 + c002f30c: b7de80ef jal ra,c0017e88 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27056 + emit_label(s, label_catch2); + c002f310: 85d6 mv a1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27064 emit_label(s, label_catch); - c002f142: 8522 mv a0,s0 - c002f144: c96d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27058 + c002f312: 8522 mv a0,s0 + c002f314: bb4d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27066 emit_goto(s, OP_gosub, label_finally); - c002f148: 864a mv a2,s2 - c002f14a: 06e00593 li a1,110 - c002f14e: 8522 mv a0,s0 - c002f150: b69e80ef jal ra,c0017cb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27059 + c002f318: 864a mv a2,s2 + c002f31a: 06e00593 li a1,110 + c002f31e: 8522 mv a0,s0 + c002f320: b69e80ef jal ra,c0017e88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27067 emit_op(s, OP_throw); - c002f154: 02f00593 li a1,47 - c002f158: 8522 mv a0,s0 - c002f15a: ae2d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27064 + c002f324: 02f00593 li a1,47 + c002f328: 8522 mv a0,s0 + c002f32a: a00d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27072 emit_label(s, label_finally); - c002f15e: 85ca mv a1,s2 - c002f160: 8522 mv a0,s0 - c002f162: c78d60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27065 + c002f32e: 85ca mv a1,s2 + c002f330: 8522 mv a0,s0 + c002f332: b96d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27073 if (s->token.val == TOK_FINALLY) { - c002f166: 4c18 lw a4,24(s0) - c002f168: fc400793 li a5,-60 - c002f16c: 0cf71b63 bne a4,a5,c002f242 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27068 + c002f336: 4c18 lw a4,24(s0) + c002f338: fc400793 li a5,-60 + c002f33c: 0cf71b63 bne a4,a5,c002f412 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27076 if (next_token(s)) - c002f170: 8522 mv a0,s0 - c002f172: a25f70ef jal ra,c0026b96 - c002f176: 892a mv s2,a0 - c002f178: c119 beqz a0,c002f17e - c002f17a: 960ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27071 + c002f340: 8522 mv a0,s0 + c002f342: a25f70ef jal ra,c0026d66 + c002f346: 892a mv s2,a0 + c002f348: c119 beqz a0,c002f34e + c002f34a: 960ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27079 push_break_entry(s->cur_func, &block_env, JS_ATOM_NULL, - c002f17e: 7438 ld a4,104(s0) + c002f34e: 7438 ld a4,104(s0) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f180: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25900 + c002f350: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 be->prev = fd->top_break; - c002f182: 18073783 ld a5,384(a4) - c002f186: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25901 + c002f352: 18073783 ld a5,384(a4) + c002f356: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25909 fd->top_break = be; - c002f188: 19673023 sd s6,384(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25902 + c002f358: 19673023 sd s6,384(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25910 be->label_name = label_name; - c002f18c: 02069793 slli a5,a3,0x20 - c002f190: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25904 + c002f35c: 02069793 slli a5,a3,0x20 + c002f360: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25912 be->label_cont = label_cont; - c002f192: 478d li a5,3 - c002f194: 1782 slli a5,a5,0x20 - c002f196: 17fd addi a5,a5,-1 - c002f198: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25906 + c002f362: 478d li a5,3 + c002f364: 1782 slli a5,a5,0x20 + c002f366: 17fd addi a5,a5,-1 + c002f368: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25914 be->label_finally = -1; - c002f19a: d4b6 sw a3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f36a: d4b6 sw a3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f19c: 0e072783 lw a5,224(a4) + c002f36c: 0e072783 lw a5,224(a4) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27082 if (s->cur_func->eval_ret_idx >= 0) { - c002f1a0: 742c ld a1,104(s0) + c002f370: 742c ld a1,104(s0) push_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25908 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25916 be->has_iterator = FALSE; - c002f1a2: d882 sw zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25907 + c002f372: d882 sw zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 be->scope_level = fd->scope_level; - c002f1a4: d6be sw a5,108(sp) + c002f374: d6be sw a5,108(sp) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27082 if (s->cur_func->eval_ret_idx >= 0) { - c002f1a6: 0c85a783 lw a5,200(a1) - c002f1aa: 0407c563 bltz a5,c002f1f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27078 + c002f376: 0c85a783 lw a5,200(a1) + c002f37a: 0407c563 bltz a5,c002f3c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27086 add_var(s->ctx, s->cur_func, JS_ATOM__ret_); - c002f1ae: 6008 ld a0,0(s0) - c002f1b0: 05200613 li a2,82 - c002f1b4: db5f20ef jal ra,c0021f68 - c002f1b8: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27079 + c002f37e: 6008 ld a0,0(s0) + c002f380: 05200613 li a2,82 + c002f384: db5f20ef jal ra,c0022138 + c002f388: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27087 if (saved_eval_ret_idx < 0) - c002f1ba: 00055463 bgez a0,c002f1c2 - c002f1be: 91cff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27081 + c002f38a: 00055463 bgez a0,c002f392 + c002f38e: 91cff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27089 emit_op(s, OP_get_loc); - c002f1c2: 05800593 li a1,88 - c002f1c6: 8522 mv a0,s0 - c002f1c8: a74d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27082 + c002f392: 05800593 li a1,88 + c002f396: 8522 mv a0,s0 + c002f398: 992d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27090 emit_u16(s, s->cur_func->eval_ret_idx); - c002f1cc: 743c ld a5,104(s0) - c002f1ce: 8522 mv a0,s0 - c002f1d0: 0c87d583 lhu a1,200(a5) - c002f1d4: 936d60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27083 + c002f39c: 743c ld a5,104(s0) + c002f39e: 8522 mv a0,s0 + c002f3a0: 0c87d583 lhu a1,200(a5) + c002f3a4: 854d60ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27091 emit_op(s, OP_put_loc); - c002f1d8: 05900593 li a1,89 - c002f1dc: 8522 mv a0,s0 - c002f1de: a5ed60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27084 + c002f3a8: 05900593 li a1,89 + c002f3ac: 8522 mv a0,s0 + c002f3ae: 97cd60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27092 emit_u16(s, saved_eval_ret_idx); - c002f1e2: 03091593 slli a1,s2,0x30 - c002f1e6: 8522 mv a0,s0 - c002f1e8: 91c1 srli a1,a1,0x30 - c002f1ea: 920d60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27085 + c002f3b2: 03091593 slli a1,s2,0x30 + c002f3b6: 8522 mv a0,s0 + c002f3b8: 91c1 srli a1,a1,0x30 + c002f3ba: 83ed60ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27093 set_eval_ret_undefined(s); - c002f1ee: 8522 mv a0,s0 - c002f1f0: e1fd60ef jal ra,c000600e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27088 + c002f3be: 8522 mv a0,s0 + c002f3c0: d3dd60ef jal ra,c00060fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27096 if (js_parse_block(s)) - c002f1f4: 8522 mv a0,s0 - c002f1f6: 121000ef jal ra,c002fb16 - c002f1fa: c119 beqz a0,c002f200 - c002f1fc: 8deff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27091 + c002f3c4: 8522 mv a0,s0 + c002f3c6: 121000ef jal ra,c002fce6 + c002f3ca: c119 beqz a0,c002f3d0 + c002f3cc: 8deff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27099 if (s->cur_func->eval_ret_idx >= 0) { - c002f200: 743c ld a5,104(s0) - c002f202: 0c87a783 lw a5,200(a5) - c002f206: 0207c863 bltz a5,c002f236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27092 + c002f3d0: 743c ld a5,104(s0) + c002f3d2: 0c87a783 lw a5,200(a5) + c002f3d6: 0207c863 bltz a5,c002f406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27100 emit_op(s, OP_get_loc); - c002f20a: 05800593 li a1,88 - c002f20e: 8522 mv a0,s0 - c002f210: a2cd60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27093 + c002f3da: 05800593 li a1,88 + c002f3de: 8522 mv a0,s0 + c002f3e0: 94ad60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27101 emit_u16(s, saved_eval_ret_idx); - c002f214: 03091593 slli a1,s2,0x30 - c002f218: 91c1 srli a1,a1,0x30 - c002f21a: 8522 mv a0,s0 - c002f21c: 8eed60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27094 + c002f3e4: 03091593 slli a1,s2,0x30 + c002f3e8: 91c1 srli a1,a1,0x30 + c002f3ea: 8522 mv a0,s0 + c002f3ec: 80cd60ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27102 emit_op(s, OP_put_loc); - c002f220: 05900593 li a1,89 - c002f224: 8522 mv a0,s0 - c002f226: a16d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27095 + c002f3f0: 05900593 li a1,89 + c002f3f4: 8522 mv a0,s0 + c002f3f6: 934d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27103 emit_u16(s, s->cur_func->eval_ret_idx); - c002f22a: 743c ld a5,104(s0) - c002f22c: 8522 mv a0,s0 - c002f22e: 0c87d583 lhu a1,200(a5) - c002f232: 8d8d60ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27097 + c002f3fa: 743c ld a5,104(s0) + c002f3fc: 8522 mv a0,s0 + c002f3fe: 0c87d583 lhu a1,200(a5) + c002f402: ff7d50ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27105 pop_break_entry(s->cur_func); - c002f236: 743c ld a5,104(s0) + c002f406: 743c ld a5,104(s0) pop_break_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25915 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:25923 fd->top_break = be->prev; - c002f238: 1807b703 ld a4,384(a5) - c002f23c: 6318 ld a4,0(a4) - c002f23e: 18e7b023 sd a4,384(a5) + c002f408: 1807b703 ld a4,384(a5) + c002f40c: 6318 ld a4,0(a4) + c002f40e: 18e7b023 sd a4,384(a5) js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27107 emit_op(s, OP_ret); - c002f242: 8522 mv a0,s0 - c002f244: 06f00593 li a1,111 - c002f248: 9f4d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27100 + c002f412: 8522 mv a0,s0 + c002f414: 06f00593 li a1,111 + c002f418: 912d60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27108 emit_label(s, label_end); - c002f24c: 85ce mv a1,s3 - c002f24e: 8522 mv a0,s0 - c002f250: b8ad60ef jal ra,c00055da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27102 + c002f41c: 85ce mv a1,s3 + c002f41e: 8522 mv a0,s0 + c002f420: aa8d60ef jal ra,c00056c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27110 break; - c002f254: aeeff06f j c002e542 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26995 + c002f424: aeeff06f j c002e712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27003 if (js_parse_expect(s, '(')) - c002f258: 02800593 li a1,40 - c002f25c: 8522 mv a0,s0 - c002f25e: 884f90ef jal ra,c00282e2 - c002f262: c119 beqz a0,c002f268 - c002f264: 876ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26997 + c002f428: 02800593 li a1,40 + c002f42c: 8522 mv a0,s0 + c002f42e: 884f90ef jal ra,c00284b2 + c002f432: c119 beqz a0,c002f438 + c002f434: 876ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27005 if (!(s->token.val == TOK_IDENT && !s->token.u.ident.is_reserved)) { - c002f268: 4c1c lw a5,24(s0) - c002f26a: f8300713 li a4,-125 - c002f26e: 02e79263 bne a5,a4,c002f292 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26997 (discriminator 1) - c002f272: 581c lw a5,48(s0) - c002f274: ebb9 bnez a5,c002f2ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27007 + c002f438: 4c1c lw a5,24(s0) + c002f43a: f8300713 li a4,-125 + c002f43e: 02e79263 bne a5,a4,c002f462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27005 (discriminator 1) + c002f442: 581c lw a5,48(s0) + c002f444: ebb9 bnez a5,c002f49a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27015 name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f276: 540c lw a1,40(s0) - c002f278: 855e mv a0,s7 - c002f27a: a50d80ef jal ra,c00074ca - c002f27e: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27008 + c002f446: 540c lw a1,40(s0) + c002f448: 855e mv a0,s7 + c002f44a: 96ed80ef jal ra,c00075b8 + c002f44e: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27016 if (next_token(s) - c002f282: 8522 mv a0,s0 - c002f284: 913f70ef jal ra,c0026b96 - c002f288: c539 beqz a0,c002f2d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27010 + c002f452: 8522 mv a0,s0 + c002f454: 913f70ef jal ra,c0026d66 + c002f458: c539 beqz a0,c002f4a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27018 JS_FreeAtom(ctx, name); - c002f28a: 85d2 mv a1,s4 - c002f28c: 855e mv a0,s7 - c002f28e: ca0ff06f j c002e72e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26998 + c002f45a: 85d2 mv a1,s4 + c002f45c: 855e mv a0,s7 + c002f45e: ca0ff06f j c002e8fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27006 if (s->token.val == '[' || s->token.val == '{') { - c002f292: fdf7f793 andi a5,a5,-33 - c002f296: 05b00713 li a4,91 - c002f29a: 02e79863 bne a5,a4,c002f2ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27000 + c002f462: fdf7f793 andi a5,a5,-33 + c002f466: 05b00713 li a4,91 + c002f46a: 02e79863 bne a5,a4,c002f49a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27008 if (js_parse_destructuring_element(s, TOK_LET, 0, TRUE, -1, TRUE) < 0) - c002f29e: 4785 li a5,1 - c002f2a0: 577d li a4,-1 - c002f2a2: 4685 li a3,1 - c002f2a4: 4601 li a2,0 - c002f2a6: fd100593 li a1,-47 - c002f2aa: 8522 mv a0,s0 - c002f2ac: e68fc0ef jal ra,c002b914 - c002f2b0: 00055463 bgez a0,c002f2b8 - c002f2b4: 826ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27018 + c002f46e: 4785 li a5,1 + c002f470: 577d li a4,-1 + c002f472: 4685 li a3,1 + c002f474: 4601 li a2,0 + c002f476: fd100593 li a1,-47 + c002f47a: 8522 mv a0,s0 + c002f47c: e68fc0ef jal ra,c002bae4 + c002f480: 00055463 bgez a0,c002f488 + c002f484: 826ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27026 if (js_parse_expect(s, ')')) - c002f2b8: 02900593 li a1,41 - c002f2bc: 8522 mv a0,s0 - c002f2be: 824f90ef jal ra,c00282e2 - c002f2c2: de0507e3 beqz a0,c002f0b0 - c002f2c6: 814ff06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27003 + c002f488: 02900593 li a1,41 + c002f48c: 8522 mv a0,s0 + c002f48e: 824f90ef jal ra,c00284b2 + c002f492: de0507e3 beqz a0,c002f280 + c002f496: 814ff06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27011 js_parse_error(s, "identifier expected"); - c002f2ca: 00031597 auipc a1,0x31 - c002f2ce: f3e58593 addi a1,a1,-194 # c0060208 - c002f2d2: 824ff06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27009 + c002f49a: 00031597 auipc a1,0x31 + c002f49e: fce58593 addi a1,a1,-50 # c0060468 + c002f4a2: 824ff06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27017 || js_define_var(s, name, TOK_CATCH) < 0) { - c002f2d6: fc300613 li a2,-61 - c002f2da: 85d2 mv a1,s4 - c002f2dc: 8522 mv a0,s0 - c002f2de: d81f80ef jal ra,c002805e - c002f2e2: fa0544e3 bltz a0,c002f28a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27014 + c002f4a6: fc300613 li a2,-61 + c002f4aa: 85d2 mv a1,s4 + c002f4ac: 8522 mv a0,s0 + c002f4ae: d81f80ef jal ra,c002822e + c002f4b2: fa0544e3 bltz a0,c002f45a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27022 emit_op(s, OP_scope_put_var); - c002f2e6: 8522 mv a0,s0 - c002f2e8: 0b900593 li a1,185 - c002f2ec: 950d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27015 + c002f4b6: 8522 mv a0,s0 + c002f4b8: 0b900593 li a1,185 + c002f4bc: 86ed60ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27023 emit_u32(s, name); - c002f2f0: 85d2 mv a1,s4 - c002f2f2: 8522 mv a0,s0 - c002f2f4: aded60ef jal ra,c00055d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27016 + c002f4c0: 85d2 mv a1,s4 + c002f4c2: 8522 mv a0,s0 + c002f4c4: 9fcd60ef jal ra,c00056c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27024 emit_u16(s, s->cur_func->scope_level); - c002f2f8: 743c ld a5,104(s0) - c002f2fa: 8522 mv a0,s0 - c002f2fc: 0e07d583 lhu a1,224(a5) - c002f300: 80ad60ef jal ra,c000530a - c002f304: bf55 j c002f2b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27053 + c002f4c8: 743c ld a5,104(s0) + c002f4ca: 8522 mv a0,s0 + c002f4cc: 0e07d583 lhu a1,224(a5) + c002f4d0: f29d50ef jal ra,c00053f8 + c002f4d4: bf55 j c002f488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27061 } else if (s->token.val == TOK_FINALLY) { - c002f306: fc400713 li a4,-60 - c002f30a: 00e79463 bne a5,a4,c002f312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27056 + c002f4d6: fc400713 li a4,-60 + c002f4da: 00e79463 bne a5,a4,c002f4e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27064 emit_label(s, label_catch); - c002f30e: 85d2 mv a1,s4 - c002f310: bd0d j c002f142 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27061 + c002f4de: 85d2 mv a1,s4 + c002f4e0: bd0d j c002f312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27069 js_parse_error(s, "expecting catch or finally"); - c002f312: 00031597 auipc a1,0x31 - c002f316: f0e58593 addi a1,a1,-242 # c0060220 - c002f31a: fddfe06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27105 + c002f4e2: 00031597 auipc a1,0x31 + c002f4e6: f9e58593 addi a1,a1,-98 # c0060480 + c002f4ea: fddfe06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27113 if (next_token(s)) - c002f31e: 8522 mv a0,s0 - c002f320: 877f70ef jal ra,c0026b96 - c002f324: 870ff06f j c002e394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27109 + c002f4ee: 8522 mv a0,s0 + c002f4f0: 877f70ef jal ra,c0026d66 + c002f4f4: 870ff06f j c002e564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27117 if (s->cur_func->js_mode & JS_MODE_STRICT) { - c002f328: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27110 + c002f4f8: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27118 js_parse_error(s, "invalid keyword: with"); - c002f32a: 00031597 auipc a1,0x31 - c002f32e: f1658593 addi a1,a1,-234 # c0060240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27109 + c002f4fa: 00031597 auipc a1,0x31 + c002f4fe: fa658593 addi a1,a1,-90 # c00604a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27117 if (s->cur_func->js_mode & JS_MODE_STRICT) { - c002f332: 0867c783 lbu a5,134(a5) - c002f336: 8b85 andi a5,a5,1 - c002f338: c399 beqz a5,c002f33e - c002f33a: fbdfe06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27115 + c002f502: 0867c783 lbu a5,134(a5) + c002f506: 8b85 andi a5,a5,1 + c002f508: c399 beqz a5,c002f50e + c002f50a: fbdfe06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27123 if (next_token(s)) - c002f33e: 8522 mv a0,s0 - c002f340: 857f70ef jal ra,c0026b96 - c002f344: c119 beqz a0,c002f34a - c002f346: f95fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27118 + c002f50e: 8522 mv a0,s0 + c002f510: 857f70ef jal ra,c0026d66 + c002f514: c119 beqz a0,c002f51a + c002f516: f95fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27126 if (js_parse_expr_paren(s)) - c002f34a: 8522 mv a0,s0 - c002f34c: a52fe0ef jal ra,c002d59e - c002f350: c119 beqz a0,c002f356 - c002f352: f89fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27121 + c002f51a: 8522 mv a0,s0 + c002f51c: a52fe0ef jal ra,c002d76e + c002f520: c119 beqz a0,c002f526 + c002f522: f89fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27129 push_scope(s); - c002f356: 8522 mv a0,s0 - c002f358: 9b4e90ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27122 + c002f526: 8522 mv a0,s0 + c002f528: 9b4e90ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27130 with_idx = define_var(s, s->cur_func, JS_ATOM__with_, - c002f35c: 742c ld a1,104(s0) - c002f35e: 4681 li a3,0 - c002f360: 05500613 li a2,85 - c002f364: 8522 mv a0,s0 - c002f366: a6bf80ef jal ra,c0027dd0 - c002f36a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27124 + c002f52c: 742c ld a1,104(s0) + c002f52e: 4681 li a3,0 + c002f530: 05500613 li a2,85 + c002f534: 8522 mv a0,s0 + c002f536: a6bf80ef jal ra,c0027fa0 + c002f53a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27132 if (with_idx < 0) - c002f36c: 00055463 bgez a0,c002f374 - c002f370: f6bfe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27126 + c002f53c: 00055463 bgez a0,c002f544 + c002f540: f6bfe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27134 emit_op(s, OP_to_object); - c002f374: 07100593 li a1,113 - c002f378: 8522 mv a0,s0 - c002f37a: 8c2d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27127 + c002f544: 07100593 li a1,113 + c002f548: 8522 mv a0,s0 + c002f54a: fe1d50ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27135 emit_op(s, OP_put_loc); - c002f37e: 05900593 li a1,89 - c002f382: 8522 mv a0,s0 - c002f384: 8b8d60ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27128 + c002f54e: 05900593 li a1,89 + c002f552: 8522 mv a0,s0 + c002f554: fd7d50ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27136 emit_u16(s, with_idx); - c002f388: 03091593 slli a1,s2,0x30 - c002f38c: 91c1 srli a1,a1,0x30 - c002f38e: 8522 mv a0,s0 - c002f390: f7bd50ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27130 + c002f558: 03091593 slli a1,s2,0x30 + c002f55c: 91c1 srli a1,a1,0x30 + c002f55e: 8522 mv a0,s0 + c002f560: e99d50ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27138 set_eval_ret_undefined(s); - c002f394: 8522 mv a0,s0 - c002f396: c79d60ef jal ra,c000600e + c002f564: 8522 mv a0,s0 + c002f566: b97d60ef jal ra,c00060fc js_parse_statement(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 return js_parse_statement_or_decl(s, 0); - c002f39a: 4581 li a1,0 - c002f39c: 8522 mv a0,s0 - c002f39e: e79fe0ef jal ra,c002e216 + c002f56a: 4581 li a1,0 + c002f56c: 8522 mv a0,s0 + c002f56e: e79fe0ef jal ra,c002e3e6 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27131 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27139 if (js_parse_statement(s)) - c002f3a2: e119 bnez a0,c002f3a8 - c002f3a4: 90aff06f j c002e4ae - c002f3a8: f33fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27140 + c002f572: e119 bnez a0,c002f578 + c002f574: 90aff06f j c002e67e + c002f578: f33fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27148 if (!(decl_mask & DECL_MASK_FUNC)) - c002f3ac: 00197793 andi a5,s2,1 - c002f3b0: e799 bnez a5,c002f3be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27164 + c002f57c: 00197793 andi a5,s2,1 + c002f580: e799 bnez a5,c002f58e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27172 js_parse_error(s, "function declarations can't appear in single-statement context"); - c002f3b2: 00031597 auipc a1,0x31 - c002f3b6: ea658593 addi a1,a1,-346 # c0060258 - c002f3ba: f3dfe06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27142 + c002f582: 00031597 auipc a1,0x31 + c002f586: f3658593 addi a1,a1,-202 # c00604b8 + c002f58a: f3dfe06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27150 if (!(decl_mask & DECL_MASK_OTHER) && peek_token(s, FALSE) == '*') - c002f3be: 00497913 andi s2,s2,4 - c002f3c2: 00091a63 bnez s2,c002f3d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27142 (discriminator 1) - c002f3c6: 4581 li a1,0 - c002f3c8: 8522 mv a0,s0 - c002f3ca: b8fd60ef jal ra,c0005f58 - c002f3ce: 02a00793 li a5,42 - c002f3d2: fef500e3 beq a0,a5,c002f3b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27168 + c002f58e: 00497913 andi s2,s2,4 + c002f592: 00091a63 bnez s2,c002f5a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27150 (discriminator 1) + c002f596: 4581 li a1,0 + c002f598: 8522 mv a0,s0 + c002f59a: aadd60ef jal ra,c0006046 + c002f59e: 02a00793 li a5,42 + c002f5a2: fef500e3 beq a0,a5,c002f582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27176 if (js_parse_function_decl(s, JS_PARSE_FUNC_VAR, - c002f3d6: 4c5c lw a5,28(s0) - c002f3d8: 7018 ld a4,32(s0) - c002f3da: 4681 li a3,0 - c002f3dc: 4601 li a2,0 - c002f3de: 4585 li a1,1 - c002f3e0: 8522 mv a0,s0 - c002f3e2: ffafd0ef jal ra,c002cbdc - c002f3e6: faffe06f j c002e394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27146 + c002f5a6: 4c5c lw a5,28(s0) + c002f5a8: 7018 ld a4,32(s0) + c002f5aa: 4681 li a3,0 + c002f5ac: 4601 li a2,0 + c002f5ae: 4585 li a1,1 + c002f5b0: 8522 mv a0,s0 + c002f5b2: ffafd0ef jal ra,c002cdac + c002f5b6: faffe06f j c002e564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27154 if (s->token.u.ident.is_reserved) { - c002f3ea: 581c lw a5,48(s0) - c002f3ec: c791 beqz a5,c002f3f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27147 + c002f5ba: 581c lw a5,48(s0) + c002f5bc: c791 beqz a5,c002f5c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27155 js_parse_error_reserved_identifier(s); - c002f3ee: 8522 mv a0,s0 - c002f3f0: 8b3f80ef jal ra,c0027ca2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27148 + c002f5be: 8522 mv a0,s0 + c002f5c0: 8b3f80ef jal ra,c0027e72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27156 goto fail; - c002f3f4: ee7fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27151 + c002f5c4: ee7fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27159 switch (is_let(s, decl_mask)) { - c002f3f8: 85ca mv a1,s2 - c002f3fa: 8522 mv a0,s0 - c002f3fc: 868f80ef jal ra,c0027464 - c002f400: c139 beqz a0,c002f446 - c002f402: 4785 li a5,1 - c002f404: 00f50463 beq a0,a5,c002f40c - c002f408: ed3fe06f j c002e2da - c002f40c: fd100993 li s3,-47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26567 + c002f5c8: 85ca mv a1,s2 + c002f5ca: 8522 mv a0,s0 + c002f5cc: 868f80ef jal ra,c0027634 + c002f5d0: c139 beqz a0,c002f616 + c002f5d2: 4785 li a5,1 + c002f5d4: 00f50463 beq a0,a5,c002f5dc + c002f5d8: ed3fe06f j c002e4aa + c002f5dc: fd100993 li s3,-47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26575 if (!(decl_mask & DECL_MASK_OTHER)) { - c002f410: 00497913 andi s2,s2,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26568 + c002f5e0: 00497913 andi s2,s2,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26576 js_parse_error(s, "lexical declarations can't appear in single-statement context"); - c002f414: 00031597 auipc a1,0x31 - c002f418: c0458593 addi a1,a1,-1020 # c0060018 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26567 + c002f5e4: 00031597 auipc a1,0x31 + c002f5e8: c9458593 addi a1,a1,-876 # c0060278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26575 if (!(decl_mask & DECL_MASK_OTHER)) { - c002f41c: 00091463 bnez s2,c002f424 - c002f420: ed7fe06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26573 + c002f5ec: 00091463 bnez s2,c002f5f4 + c002f5f0: ed7fe06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26581 if (next_token(s)) - c002f424: 8522 mv a0,s0 - c002f426: f70f70ef jal ra,c0026b96 - c002f42a: c119 beqz a0,c002f430 - c002f42c: eaffe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26575 + c002f5f4: 8522 mv a0,s0 + c002f5f6: f70f70ef jal ra,c0026d66 + c002f5fa: c119 beqz a0,c002f600 + c002f5fc: eaffe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26583 if (js_parse_var(s, TRUE, tok, FALSE)) - c002f430: 4681 li a3,0 - c002f432: 864e mv a2,s3 - c002f434: 4585 li a1,1 - c002f436: 8522 mv a0,s0 - c002f438: 9a4fe0ef jal ra,c002d5dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26840 + c002f600: 4681 li a3,0 + c002f602: 864e mv a2,s3 + c002f604: 4585 li a1,1 + c002f606: 8522 mv a0,s0 + c002f608: 9a4fe0ef jal ra,c002d7ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26848 if (emit_break(s, label, is_cont)) - c002f43c: e119 bnez a0,c002f442 - c002f43e: faffe06f j c002e3ec - c002f442: e99fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27160 + c002f60c: e119 bnez a0,c002f612 + c002f60e: faffe06f j c002e5bc + c002f612: e99fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27168 if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f446: 08600593 li a1,134 - c002f44a: 8522 mv a0,s0 - c002f44c: f09d40ef jal ra,c0004354 - c002f450: e119 bnez a0,c002f456 - c002f452: ed3fe06f j c002e324 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27161 (discriminator 1) + c002f616: 08600593 li a1,134 + c002f61a: 8522 mv a0,s0 + c002f61c: d39d40ef jal ra,c0004354 + c002f620: e119 bnez a0,c002f626 + c002f622: ed3fe06f j c002e4f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27169 (discriminator 1) peek_token(s, TRUE) == TOK_FUNCTION) { - c002f456: 4585 li a1,1 - c002f458: 8522 mv a0,s0 - c002f45a: affd60ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27160 (discriminator 1) + c002f626: 4585 li a1,1 + c002f628: 8522 mv a0,s0 + c002f62a: a1dd60ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27168 (discriminator 1) if (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f45e: fc500793 li a5,-59 - c002f462: 00f50463 beq a0,a5,c002f46a - c002f466: ebffe06f j c002e324 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27162 + c002f62e: fc500793 li a5,-59 + c002f632: 00f50463 beq a0,a5,c002f63a + c002f636: ebffe06f j c002e4f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27170 if (!(decl_mask & DECL_MASK_OTHER)) { - c002f46a: 00497913 andi s2,s2,4 - c002f46e: f60914e3 bnez s2,c002f3d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27163 + c002f63a: 00497913 andi s2,s2,4 + c002f63e: f60914e3 bnez s2,c002f5a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27171 func_decl_error: - c002f472: b781 j c002f3b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27177 + c002f642: b781 j c002f582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27185 if (!(decl_mask & DECL_MASK_OTHER)) { - c002f474: 00497913 andi s2,s2,4 - c002f478: 00091863 bnez s2,c002f488 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27178 + c002f644: 00497913 andi s2,s2,4 + c002f648: 00091863 bnez s2,c002f658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27186 js_parse_error(s, "class declarations can't appear in single-statement context"); - c002f47c: 00031597 auipc a1,0x31 - c002f480: e1c58593 addi a1,a1,-484 # c0060298 - c002f484: e73fe06f j c002e2f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27181 + c002f64c: 00031597 auipc a1,0x31 + c002f650: eac58593 addi a1,a1,-340 # c00604f8 + c002f654: e73fe06f j c002e4c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27189 if (js_parse_class(s, FALSE, JS_PARSE_EXPORT_NONE)) - c002f488: 4601 li a2,0 - c002f48a: 4581 li a1,0 - c002f48c: 8522 mv a0,s0 - c002f48e: b80fe0ef jal ra,c002d80e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27182 + c002f658: 4601 li a2,0 + c002f65a: 4581 li a1,0 + c002f65c: 8522 mv a0,s0 + c002f65e: b80fe0ef jal ra,c002d9de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27190 return -1; - c002f492: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27181 + c002f662: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27189 if (js_parse_class(s, FALSE, JS_PARSE_EXPORT_NONE)) - c002f494: e119 bnez a0,c002f49a - c002f496: 8acff06f j c002e542 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27221 -} - c002f49a: 70ee ld ra,248(sp) - c002f49c: 744e ld s0,240(sp) - c002f49e: 74ae ld s1,232(sp) - c002f4a0: 790e ld s2,224(sp) - c002f4a2: 69ee ld s3,216(sp) - c002f4a4: 6a4e ld s4,208(sp) - c002f4a6: 6aae ld s5,200(sp) - c002f4a8: 6b0e ld s6,192(sp) - c002f4aa: 7bea ld s7,184(sp) - c002f4ac: 7c4a ld s8,176(sp) - c002f4ae: 7caa ld s9,168(sp) - c002f4b0: 7d0a ld s10,160(sp) - c002f4b2: 6dea ld s11,152(sp) - c002f4b4: 853e mv a0,a5 - c002f4b6: 6111 addi sp,sp,256 - c002f4b8: 8082 ret + c002f664: e119 bnez a0,c002f66a + c002f666: 8acff06f j c002e712 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27229 +} + c002f66a: 70ee ld ra,248(sp) + c002f66c: 744e ld s0,240(sp) + c002f66e: 74ae ld s1,232(sp) + c002f670: 790e ld s2,224(sp) + c002f672: 69ee ld s3,216(sp) + c002f674: 6a4e ld s4,208(sp) + c002f676: 6aae ld s5,200(sp) + c002f678: 6b0e ld s6,192(sp) + c002f67a: 7bea ld s7,184(sp) + c002f67c: 7c4a ld s8,176(sp) + c002f67e: 7caa ld s9,168(sp) + c002f680: 7d0a ld s10,160(sp) + c002f682: 6dea ld s11,152(sp) + c002f684: 853e mv a0,a5 + c002f686: 6111 addi sp,sp,256 + c002f688: 8082 ret js_unsupported_keyword(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23845 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:23853 return js_parse_error(s, "unsupported keyword: %s", - c002f4ba: 5410 lw a2,40(s0) - c002f4bc: 6008 ld a0,0(s0) - c002f4be: 088c addi a1,sp,80 - c002f4c0: 9aad70ef jal ra,c000666a - c002f4c4: 862a mv a2,a0 - c002f4c6: 00031597 auipc a1,0x31 - c002f4ca: e1258593 addi a1,a1,-494 # c00602d8 - c002f4ce: 8522 mv a0,s0 - c002f4d0: de9f60ef jal ra,c00262b8 + c002f68a: 5410 lw a2,40(s0) + c002f68c: 6008 ld a0,0(s0) + c002f68e: 088c addi a1,sp,80 + c002f690: 8c8d70ef jal ra,c0006758 + c002f694: 862a mv a2,a0 + c002f696: 00031597 auipc a1,0x31 + c002f69a: ea258593 addi a1,a1,-350 # c0060538 + c002f69e: 8522 mv a0,s0 + c002f6a0: de9f60ef jal ra,c0026488 js_parse_statement_or_decl(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27197 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27205 goto fail; - c002f4d4: e07fe06f j c002e2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27209 + c002f6a4: e07fe06f j c002e4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27217 emit_op(s, OP_drop); /* drop the result */ - c002f4d8: 45b9 li a1,14 - c002f4da: f45fe06f j c002e41e + c002f6a8: 45b9 li a1,14 + c002f6aa: f45fe06f j c002e5ee -00000000c002f4de : +00000000c002f6ae : js_parse_source_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29377 -{ - c002f4de: 715d addi sp,sp,-80 - c002f4e0: e0a2 sd s0,64(sp) - c002f4e2: f84a sd s2,48(sp) - c002f4e4: e486 sd ra,72(sp) - c002f4e6: fc26 sd s1,56(sp) - c002f4e8: f44e sd s3,40(sp) - c002f4ea: f052 sd s4,32(sp) - c002f4ec: ec56 sd s5,24(sp) - c002f4ee: e85a sd s6,16(sp) - c002f4f0: e45e sd s7,8(sp) - c002f4f2: e062 sd s8,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29381 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29385 +{ + c002f6ae: 715d addi sp,sp,-80 + c002f6b0: e0a2 sd s0,64(sp) + c002f6b2: f84a sd s2,48(sp) + c002f6b4: e486 sd ra,72(sp) + c002f6b6: fc26 sd s1,56(sp) + c002f6b8: f44e sd s3,40(sp) + c002f6ba: f052 sd s4,32(sp) + c002f6bc: ec56 sd s5,24(sp) + c002f6be: e85a sd s6,16(sp) + c002f6c0: e45e sd s7,8(sp) + c002f6c2: e062 sd s8,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29389 if (s->token.val == TOK_FUNCTION || - c002f4f4: 4d1c lw a5,24(a0) - c002f4f6: fc500913 li s2,-59 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29377 + c002f6c4: 4d1c lw a5,24(a0) + c002f6c6: fc500913 li s2,-59 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29385 { - c002f4fa: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29381 + c002f6ca: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29389 if (s->token.val == TOK_FUNCTION || - c002f4fc: 01279f63 bne a5,s2,c002f51a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29384 + c002f6cc: 01279f63 bne a5,s2,c002f6ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29392 if (js_parse_function_decl(s, JS_PARSE_FUNC_STATEMENT, - c002f500: 4c5c lw a5,28(s0) - c002f502: 7018 ld a4,32(s0) - c002f504: 4681 li a3,0 - c002f506: 4601 li a2,0 - c002f508: 4581 li a1,0 - c002f50a: 8522 mv a0,s0 - c002f50c: ed0fd0ef jal ra,c002cbdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29398 + c002f6d0: 4c5c lw a5,28(s0) + c002f6d2: 7018 ld a4,32(s0) + c002f6d4: 4681 li a3,0 + c002f6d6: 4601 li a2,0 + c002f6d8: 4581 li a1,0 + c002f6da: 8522 mv a0,s0 + c002f6dc: ed0fd0ef jal ra,c002cdac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29406 if (js_parse_statement_or_decl(s, DECL_MASK_ALL)) - c002f510: 00a03533 snez a0,a0 - c002f514: 40a00533 neg a0,a0 - c002f518: a83d j c002f556 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29382 (discriminator 1) + c002f6e0: 00a03533 snez a0,a0 + c002f6e4: 40a00533 neg a0,a0 + c002f6e8: a83d j c002f726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29390 (discriminator 1) (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f51a: 08600593 li a1,134 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29378 (discriminator 1) + c002f6ea: 08600593 li a1,134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29386 (discriminator 1) JSFunctionDef *fd = s->cur_func; - c002f51e: 7524 ld s1,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29382 (discriminator 1) + c002f6ee: 7524 ld s1,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29390 (discriminator 1) (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f520: e35d40ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29381 (discriminator 1) + c002f6f0: c65d40ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29389 (discriminator 1) if (s->token.val == TOK_FUNCTION || - c002f524: c519 beqz a0,c002f532 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29383 + c002f6f4: c519 beqz a0,c002f702 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29391 peek_token(s, TRUE) == TOK_FUNCTION)) { - c002f526: 4585 li a1,1 - c002f528: 8522 mv a0,s0 - c002f52a: a2fd60ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29382 + c002f6f6: 4585 li a1,1 + c002f6f8: 8522 mv a0,s0 + c002f6fa: 94dd60ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29390 (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f52e: fd2509e3 beq a0,s2,c002f500 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29388 + c002f6fe: fd2509e3 beq a0,s2,c002f6d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29396 } else if (s->token.val == TOK_EXPORT && fd->module) { - c002f532: 4c1c lw a5,24(s0) - c002f534: fcb00713 li a4,-53 - c002f538: 38e79263 bne a5,a4,c002f8bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29388 (discriminator 1) - c002f53c: 2184b783 ld a5,536(s1) - c002f540: 5c078663 beqz a5,c002fb0c + c002f702: 4c1c lw a5,24(s0) + c002f704: fcb00713 li a4,-53 + c002f708: 38e79263 bne a5,a4,c002fa8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29396 (discriminator 1) + c002f70c: 2184b783 ld a5,536(s1) + c002f710: 5c078663 beqz a5,c002fcdc js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29061 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29069 JSModuleDef *m = s->cur_func->module; - c002f544: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29067 + c002f714: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29075 if (next_token(s)) - c002f546: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29060 + c002f716: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29068 JSContext *ctx = s->ctx; - c002f548: 6004 ld s1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29061 + c002f718: 6004 ld s1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29069 JSModuleDef *m = s->cur_func->module; - c002f54a: 2187b903 ld s2,536(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29067 + c002f71a: 2187b903 ld s2,536(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29075 if (next_token(s)) - c002f54e: e48f70ef jal ra,c0026b96 - c002f552: cd11 beqz a0,c002f56e + c002f71e: e48f70ef jal ra,c0026d66 + c002f722: cd11 beqz a0,c002f73e js_parse_source_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29396 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29404 return -1; - c002f554: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29402 -} - c002f556: 60a6 ld ra,72(sp) - c002f558: 6406 ld s0,64(sp) - c002f55a: 74e2 ld s1,56(sp) - c002f55c: 7942 ld s2,48(sp) - c002f55e: 79a2 ld s3,40(sp) - c002f560: 7a02 ld s4,32(sp) - c002f562: 6ae2 ld s5,24(sp) - c002f564: 6b42 ld s6,16(sp) - c002f566: 6ba2 ld s7,8(sp) - c002f568: 6c02 ld s8,0(sp) - c002f56a: 6161 addi sp,sp,80 - c002f56c: 8082 ret + c002f724: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29410 +} + c002f726: 60a6 ld ra,72(sp) + c002f728: 6406 ld s0,64(sp) + c002f72a: 74e2 ld s1,56(sp) + c002f72c: 7942 ld s2,48(sp) + c002f72e: 79a2 ld s3,40(sp) + c002f730: 7a02 ld s4,32(sp) + c002f732: 6ae2 ld s5,24(sp) + c002f734: 6b42 ld s6,16(sp) + c002f736: 6ba2 ld s7,8(sp) + c002f738: 6c02 ld s8,0(sp) + c002f73a: 6161 addi sp,sp,80 + c002f73c: 8082 ret js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29078 tok = s->token.val; - c002f56e: 01842983 lw s3,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29071 + c002f73e: 01842983 lw s3,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29079 if (tok == TOK_CLASS) { - c002f572: fc800793 li a5,-56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29072 + c002f742: fc800793 li a5,-56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29080 return js_parse_class(s, FALSE, JS_PARSE_EXPORT_NAMED); - c002f576: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29071 + c002f746: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29079 if (tok == TOK_CLASS) { - c002f578: 2af98763 beq s3,a5,c002f826 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29073 + c002f748: 2af98763 beq s3,a5,c002f9f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29081 } else if (tok == TOK_FUNCTION || - c002f57c: fc500a13 li s4,-59 - c002f580: 01499d63 bne s3,s4,c002f59a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29076 + c002f74c: fc500a13 li s4,-59 + c002f750: 01499d63 bne s3,s4,c002f76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29084 return js_parse_function_decl2(s, JS_PARSE_FUNC_STATEMENT, - c002f584: 4881 li a7,0 - c002f586: 4805 li a6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29186 + c002f754: 4881 li a7,0 + c002f756: 4805 li a6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29194 return js_parse_function_decl2(s, JS_PARSE_FUNC_STATEMENT, - c002f588: 4c5c lw a5,28(s0) - c002f58a: 7018 ld a4,32(s0) - c002f58c: 4681 li a3,0 - c002f58e: 4601 li a2,0 - c002f590: 4581 li a1,0 - c002f592: 8522 mv a0,s0 - c002f594: c33fc0ef jal ra,c002c1c6 - c002f598: bfa5 j c002f510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29074 + c002f758: 4c5c lw a5,28(s0) + c002f75a: 7018 ld a4,32(s0) + c002f75c: 4681 li a3,0 + c002f75e: 4601 li a2,0 + c002f760: 4581 li a1,0 + c002f762: 8522 mv a0,s0 + c002f764: c33fc0ef jal ra,c002c396 + c002f768: bfa5 j c002f6e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29082 (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f59a: 08600593 li a1,134 - c002f59e: 8522 mv a0,s0 - c002f5a0: db5d40ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29073 + c002f76a: 08600593 li a1,134 + c002f76e: 8522 mv a0,s0 + c002f770: be5d40ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29081 } else if (tok == TOK_FUNCTION || - c002f5a4: c519 beqz a0,c002f5b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29075 + c002f774: c519 beqz a0,c002f782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29083 peek_token(s, TRUE) == TOK_FUNCTION)) { - c002f5a6: 4585 li a1,1 - c002f5a8: 8522 mv a0,s0 - c002f5aa: 9afd60ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29074 - (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f5ae: fd450be3 beq a0,s4,c002f584 + c002f776: 4585 li a1,1 + c002f778: 8522 mv a0,s0 + c002f77a: 8cdd60ef jal ra,c0006046 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29082 + (token_is_pseudo_keyword(s, JS_ATOM_async) && + c002f77e: fd450be3 beq a0,s4,c002f754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29090 if (next_token(s)) - c002f5b2: 8522 mv a0,s0 - c002f5b4: de2f70ef jal ra,c0026b96 - c002f5b8: fd51 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29085 + c002f782: 8522 mv a0,s0 + c002f784: de2f70ef jal ra,c0026d66 + c002f788: fd51 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29093 switch(tok) { - c002f5ba: fd100793 li a5,-47 - c002f5be: 2ef98863 beq s3,a5,c002f8ae - c002f5c2: fd200793 li a5,-46 - c002f5c6: 02f9d663 bge s3,a5,c002f5f2 - c002f5ca: fc000793 li a5,-64 - c002f5ce: 24f98663 beq s3,a5,c002f81a - c002f5d2: fc900793 li a5,-55 - c002f5d6: 2cf98c63 beq s3,a5,c002f8ae - c002f5da: fb100793 li a5,-79 - c002f5de: 2cf98863 beq s3,a5,c002f8ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29215 + c002f78a: fd100793 li a5,-47 + c002f78e: 2ef98863 beq s3,a5,c002fa7e + c002f792: fd200793 li a5,-46 + c002f796: 02f9d663 bge s3,a5,c002f7c2 + c002f79a: fc000793 li a5,-64 + c002f79e: 24f98663 beq s3,a5,c002f9ea + c002f7a2: fc900793 li a5,-55 + c002f7a6: 2cf98c63 beq s3,a5,c002fa7e + c002f7aa: fb100793 li a5,-79 + c002f7ae: 2cf98863 beq s3,a5,c002fa7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29223 return js_parse_error(s, "invalid export syntax"); - c002f5e2: 00031597 auipc a1,0x31 - c002f5e6: d9e58593 addi a1,a1,-610 # c0060380 + c002f7b2: 00031597 auipc a1,0x31 + c002f7b6: e2e58593 addi a1,a1,-466 # c00605e0 js_parse_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29305 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29313 return js_parse_error(s, "expecting 'as'"); - c002f5ea: 8522 mv a0,s0 - c002f5ec: ccdf60ef jal ra,c00262b8 - c002f5f0: b705 j c002f510 + c002f7ba: 8522 mv a0,s0 + c002f7bc: ccdf60ef jal ra,c0026488 + c002f7c0: b705 j c002f6e0 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29085 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29093 switch(tok) { - c002f5f2: 02a00793 li a5,42 - c002f5f6: 14f98463 beq s3,a5,c002f73e - c002f5fa: 07b00793 li a5,123 - c002f5fe: fef992e3 bne s3,a5,c002f5e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29087 + c002f7c2: 02a00793 li a5,42 + c002f7c6: 14f98463 beq s3,a5,c002f90e + c002f7ca: 07b00793 li a5,123 + c002f7ce: fef992e3 bne s3,a5,c002f7b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29095 first_export = m->export_entries_count; - c002f602: 03092a83 lw s5,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29088 + c002f7d2: 03092a83 lw s5,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29096 while (s->token.val != '}') { - c002f606: 07d00b93 li s7,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29121 + c002f7d6: 07d00b93 li s7,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29129 if (s->token.val != ',') - c002f60a: 02c00c13 li s8,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29088 + c002f7da: 02c00c13 li s8,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29096 while (s->token.val != '}') { - c002f60e: 4c08 lw a0,24(s0) - c002f610: 0b750763 beq a0,s7,c002f6be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29089 + c002f7de: 4c08 lw a0,24(s0) + c002f7e0: 0b750763 beq a0,s7,c002f88e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29097 if (!token_is_ident(s->token.val)) { - c002f614: e93d40ef jal ra,c00044a6 - c002f618: e909 bnez a0,c002f62a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29090 + c002f7e4: cc3d40ef jal ra,c00044a6 + c002f7e8: e909 bnez a0,c002f7fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29098 js_parse_error(s, "identifier expected"); - c002f61a: 00031597 auipc a1,0x31 - c002f61e: bee58593 addi a1,a1,-1042 # c0060208 - c002f622: 8522 mv a0,s0 - c002f624: c95f60ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29091 + c002f7ea: 00031597 auipc a1,0x31 + c002f7ee: c7e58593 addi a1,a1,-898 # c0060468 + c002f7f2: 8522 mv a0,s0 + c002f7f4: c95f60ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29099 return -1; - c002f628: b735 j c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29093 + c002f7f8: b735 j c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29101 local_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f62a: 540c lw a1,40(s0) - c002f62c: 8526 mv a0,s1 - c002f62e: e9dd70ef jal ra,c00074ca - c002f632: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29095 + c002f7fa: 540c lw a1,40(s0) + c002f7fc: 8526 mv a0,s1 + c002f7fe: dbbd70ef jal ra,c00075b8 + c002f802: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29103 if (next_token(s)) - c002f636: 8522 mv a0,s0 - c002f638: d5ef70ef jal ra,c0026b96 - c002f63c: c919 beqz a0,c002f652 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29094 + c002f806: 8522 mv a0,s0 + c002f808: d5ef70ef jal ra,c0026d66 + c002f80c: c919 beqz a0,c002f822 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29102 export_name = JS_ATOM_NULL; - c002f63e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29107 + c002f80e: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29115 JS_FreeAtom(ctx, local_name); - c002f640: 85d2 mv a1,s4 - c002f642: 8526 mv a0,s1 - c002f644: ec9d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29109 + c002f810: 85d2 mv a1,s4 + c002f812: 8526 mv a0,s1 + c002f814: de7d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29117 JS_FreeAtom(ctx, export_name); - c002f648: 85ce mv a1,s3 - c002f64a: 8526 mv a0,s1 + c002f818: 85ce mv a1,s3 + c002f81a: 8526 mv a0,s1 js_parse_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29285 JS_FreeAtom(ctx, module_name); - c002f64c: ec1d70ef jal ra,c000750c - c002f650: b711 j c002f554 + c002f81c: ddfd70ef jal ra,c00075fa + c002f820: b711 j c002f724 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29097 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29105 if (token_is_pseudo_keyword(s, JS_ATOM_as)) { - c002f652: 07a00593 li a1,122 - c002f656: 8522 mv a0,s0 - c002f658: cfdd40ef jal ra,c0004354 - c002f65c: c955 beqz a0,c002f710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29098 + c002f822: 07a00593 li a1,122 + c002f826: 8522 mv a0,s0 + c002f828: b2dd40ef jal ra,c0004354 + c002f82c: c955 beqz a0,c002f8e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29106 if (next_token(s)) - c002f65e: 8522 mv a0,s0 - c002f660: d36f70ef jal ra,c0026b96 - c002f664: fd69 bnez a0,c002f63e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29100 + c002f82e: 8522 mv a0,s0 + c002f830: d36f70ef jal ra,c0026d66 + c002f834: fd69 bnez a0,c002f80e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29108 if (!token_is_ident(s->token.val)) { - c002f666: 4c08 lw a0,24(s0) - c002f668: e3fd40ef jal ra,c00044a6 - c002f66c: e909 bnez a0,c002f67e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29101 + c002f836: 4c08 lw a0,24(s0) + c002f838: c6fd40ef jal ra,c00044a6 + c002f83c: e909 bnez a0,c002f84e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29109 js_parse_error(s, "identifier expected"); - c002f66e: 00031597 auipc a1,0x31 - c002f672: b9a58593 addi a1,a1,-1126 # c0060208 - c002f676: 8522 mv a0,s0 - c002f678: c41f60ef jal ra,c00262b8 - c002f67c: b7c9 j c002f63e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29104 + c002f83e: 00031597 auipc a1,0x31 + c002f842: c2a58593 addi a1,a1,-982 # c0060468 + c002f846: 8522 mv a0,s0 + c002f848: c41f60ef jal ra,c0026488 + c002f84c: b7c9 j c002f80e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29112 export_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f67e: 540c lw a1,40(s0) - c002f680: 8526 mv a0,s1 - c002f682: e49d70ef jal ra,c00074ca - c002f686: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29105 + c002f84e: 540c lw a1,40(s0) + c002f850: 8526 mv a0,s1 + c002f852: d67d70ef jal ra,c00075b8 + c002f856: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29113 if (next_token(s)) { - c002f68a: 8522 mv a0,s0 - c002f68c: d0af70ef jal ra,c0026b96 - c002f690: f945 bnez a0,c002f640 + c002f85a: 8522 mv a0,s0 + c002f85c: d0af70ef jal ra,c0026d66 + c002f860: f945 bnez a0,c002f810 add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002f692: 6008 ld a0,0(s0) - c002f694: 4781 li a5,0 - c002f696: 874e mv a4,s3 - c002f698: 86d2 mv a3,s4 - c002f69a: 864a mv a2,s2 - c002f69c: 85a2 mv a1,s0 - c002f69e: c6ff60ef jal ra,c002630c - c002f6a2: 8b2a mv s6,a0 + c002f862: 6008 ld a0,0(s0) + c002f864: 4781 li a5,0 + c002f866: 874e mv a4,s3 + c002f868: 86d2 mv a3,s4 + c002f86a: 864a mv a2,s2 + c002f86c: 85a2 mv a1,s0 + c002f86e: c6ff60ef jal ra,c00264dc + c002f872: 8b2a mv s6,a0 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29117 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29125 JS_FreeAtom(ctx, local_name); - c002f6a4: 85d2 mv a1,s4 - c002f6a6: 8526 mv a0,s1 - c002f6a8: e65d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29118 + c002f874: 85d2 mv a1,s4 + c002f876: 8526 mv a0,s1 + c002f878: d83d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29126 JS_FreeAtom(ctx, export_name); - c002f6ac: 85ce mv a1,s3 - c002f6ae: 8526 mv a0,s1 - c002f6b0: e5dd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29119 + c002f87c: 85ce mv a1,s3 + c002f87e: 8526 mv a0,s1 + c002f880: d7bd70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29127 if (!me) - c002f6b4: ea0b00e3 beqz s6,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29121 + c002f884: ea0b00e3 beqz s6,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29129 if (s->token.val != ',') - c002f6b8: 4c1c lw a5,24(s0) - c002f6ba: 07878263 beq a5,s8,c002f71e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29126 + c002f888: 4c1c lw a5,24(s0) + c002f88a: 07878263 beq a5,s8,c002f8ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29134 if (js_parse_expect(s, '}')) - c002f6be: 07d00593 li a1,125 - c002f6c2: 8522 mv a0,s0 - c002f6c4: c1ff80ef jal ra,c00282e2 - c002f6c8: e80516e3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29128 + c002f88e: 07d00593 li a1,125 + c002f892: 8522 mv a0,s0 + c002f894: c1ff80ef jal ra,c00284b2 + c002f898: e80516e3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29136 if (token_is_pseudo_keyword(s, JS_ATOM_from)) { - c002f6cc: 07b00593 li a1,123 - c002f6d0: 8522 mv a0,s0 - c002f6d2: c83d40ef jal ra,c0004354 - c002f6d6: c90d beqz a0,c002f708 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29129 + c002f89c: 07b00593 li a1,123 + c002f8a0: 8522 mv a0,s0 + c002f8a2: ab3d40ef jal ra,c0004354 + c002f8a6: c90d beqz a0,c002f8d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29137 module_name = js_parse_from_clause(s); - c002f6d8: 8522 mv a0,s0 - c002f6da: a3bf80ef jal ra,c0028114 - c002f6de: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29130 + c002f8a8: 8522 mv a0,s0 + c002f8aa: a3bf80ef jal ra,c00282e4 + c002f8ae: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29138 if (module_name == JS_ATOM_NULL) - c002f6e2: e60989e3 beqz s3,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29132 + c002f8b2: e60989e3 beqz s3,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29140 idx = add_req_module_entry(ctx, m, module_name); - c002f6e6: 864e mv a2,s3 - c002f6e8: 85ca mv a1,s2 - c002f6ea: 8526 mv a0,s1 - c002f6ec: babe80ef jal ra,c0018296 - c002f6f0: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29133 + c002f8b6: 864e mv a2,s3 + c002f8b8: 85ca mv a1,s2 + c002f8ba: 8526 mv a0,s1 + c002f8bc: babe80ef jal ra,c0018466 + c002f8c0: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29141 JS_FreeAtom(ctx, module_name); - c002f6f2: 85ce mv a1,s3 - c002f6f4: 8526 mv a0,s1 - c002f6f6: e17d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29138 + c002f8c2: 85ce mv a1,s3 + c002f8c4: 8526 mv a0,s1 + c002f8c6: d35d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29146 me->export_type = JS_EXPORT_TYPE_INDIRECT; - c002f6fa: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29134 + c002f8ca: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29142 if (idx < 0) - c002f6fc: e40a4ce3 bltz s4,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29136 + c002f8cc: e40a4ce3 bltz s4,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29144 for(i = first_export; i < m->export_entries_count; i++) { - c002f700: 03092783 lw a5,48(s2) - c002f704: 02fac363 blt s5,a5,c002f72a + c002f8d0: 03092783 lw a5,48(s2) + c002f8d4: 02fac363 blt s5,a5,c002f8fa js_parse_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29373 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29381 return js_parse_expect_semi(s); - c002f708: 8522 mv a0,s0 - c002f70a: 9eaf80ef jal ra,c00278f4 - c002f70e: b509 j c002f510 + c002f8d8: 8522 mv a0,s0 + c002f8da: 9eaf80ef jal ra,c0027ac4 + c002f8de: b509 j c002f6e0 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29121 export_name = JS_DupAtom(ctx, local_name); - c002f710: 85d2 mv a1,s4 - c002f712: 8526 mv a0,s1 - c002f714: db7d70ef jal ra,c00074ca - c002f718: 0005099b sext.w s3,a0 - c002f71c: bf9d j c002f692 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29123 + c002f8e0: 85d2 mv a1,s4 + c002f8e2: 8526 mv a0,s1 + c002f8e4: cd5d70ef jal ra,c00075b8 + c002f8e8: 0005099b sext.w s3,a0 + c002f8ec: bf9d j c002f862 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29131 if (next_token(s)) - c002f71e: 8522 mv a0,s0 - c002f720: c76f70ef jal ra,c0026b96 - c002f724: ee0505e3 beqz a0,c002f60e - c002f728: b535 j c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29137 + c002f8ee: 8522 mv a0,s0 + c002f8f0: c76f70ef jal ra,c0026d66 + c002f8f4: ee0505e3 beqz a0,c002f7de + c002f8f8: b535 j c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29145 me = &m->export_entries[i]; - c002f72a: 02893783 ld a5,40(s2) - c002f72e: 005a9693 slli a3,s5,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29136 + c002f8fa: 02893783 ld a5,40(s2) + c002f8fe: 005a9693 slli a3,s5,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29144 for(i = first_export; i < m->export_entries_count; i++) { - c002f732: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29137 + c002f902: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29145 me = &m->export_entries[i]; - c002f734: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29138 + c002f904: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29146 me->export_type = JS_EXPORT_TYPE_INDIRECT; - c002f736: cb98 sw a4,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29139 + c002f906: cb98 sw a4,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29147 me->u.req_module_idx = idx; - c002f738: 0147a023 sw s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29136 - for(i = first_export; i < m->export_entries_count; i++) { - c002f73c: b7d1 j c002f700 + c002f908: 0147a023 sw s4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29144 + for(i = first_export; i < m->export_entries_count; i++) { + c002f90c: b7d1 j c002f8d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29152 if (token_is_pseudo_keyword(s, JS_ATOM_as)) { - c002f73e: 07a00593 li a1,122 - c002f742: 8522 mv a0,s0 - c002f744: c11d40ef jal ra,c0004354 - c002f748: cd25 beqz a0,c002f7c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29146 + c002f90e: 07a00593 li a1,122 + c002f912: 8522 mv a0,s0 + c002f914: a41d40ef jal ra,c0004354 + c002f918: cd25 beqz a0,c002f990 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29154 if (next_token(s)) - c002f74a: 8522 mv a0,s0 - c002f74c: c4af70ef jal ra,c0026b96 - c002f750: e00512e3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29148 + c002f91a: 8522 mv a0,s0 + c002f91c: c4af70ef jal ra,c0026d66 + c002f920: e00512e3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29156 if (!token_is_ident(s->token.val)) { - c002f754: 4c08 lw a0,24(s0) - c002f756: d51d40ef jal ra,c00044a6 - c002f75a: ec0500e3 beqz a0,c002f61a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29152 + c002f924: 4c08 lw a0,24(s0) + c002f926: b81d40ef jal ra,c00044a6 + c002f92a: ec0500e3 beqz a0,c002f7ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29160 export_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f75e: 540c lw a1,40(s0) - c002f760: 8526 mv a0,s1 - c002f762: d69d70ef jal ra,c00074ca - c002f766: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29153 + c002f92e: 540c lw a1,40(s0) + c002f930: 8526 mv a0,s1 + c002f932: c87d70ef jal ra,c00075b8 + c002f936: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29161 if (next_token(s)) - c002f76a: 8522 mv a0,s0 - c002f76c: c2af70ef jal ra,c0026b96 - c002f770: ec051ce3 bnez a0,c002f648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29155 + c002f93a: 8522 mv a0,s0 + c002f93c: c2af70ef jal ra,c0026d66 + c002f940: ec051ce3 bnez a0,c002f818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29163 module_name = js_parse_from_clause(s); - c002f774: 8522 mv a0,s0 - c002f776: 99ff80ef jal ra,c0028114 - c002f77a: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29156 + c002f944: 8522 mv a0,s0 + c002f946: 99ff80ef jal ra,c00282e4 + c002f94a: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29164 if (module_name == JS_ATOM_NULL) - c002f77e: ec0a05e3 beqz s4,c002f648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29158 + c002f94e: ec0a05e3 beqz s4,c002f818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29166 idx = add_req_module_entry(ctx, m, module_name); - c002f782: 85ca mv a1,s2 - c002f784: 8652 mv a2,s4 - c002f786: 8526 mv a0,s1 - c002f788: b0fe80ef jal ra,c0018296 - c002f78c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29159 + c002f952: 85ca mv a1,s2 + c002f954: 8652 mv a2,s4 + c002f956: 8526 mv a0,s1 + c002f958: b0fe80ef jal ra,c0018466 + c002f95c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29167 JS_FreeAtom(ctx, module_name); - c002f78e: 85d2 mv a1,s4 - c002f790: 8526 mv a0,s1 - c002f792: d7bd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29160 + c002f95e: 85d2 mv a1,s4 + c002f960: 8526 mv a0,s1 + c002f962: c99d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29168 if (idx < 0) - c002f796: ea0ac9e3 bltz s5,c002f648 + c002f966: ea0ac9e3 bltz s5,c002f818 add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002f79a: 6008 ld a0,0(s0) - c002f79c: 864a mv a2,s2 - c002f79e: 85a2 mv a1,s0 - c002f7a0: 4785 li a5,1 - c002f7a2: 874e mv a4,s3 - c002f7a4: 07e00693 li a3,126 - c002f7a8: b65f60ef jal ra,c002630c - c002f7ac: 892a mv s2,a0 + c002f96a: 6008 ld a0,0(s0) + c002f96c: 864a mv a2,s2 + c002f96e: 85a2 mv a1,s0 + c002f970: 4785 li a5,1 + c002f972: 874e mv a4,s3 + c002f974: 07e00693 li a3,126 + c002f978: b65f60ef jal ra,c00264dc + c002f97c: 892a mv s2,a0 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29172 JS_FreeAtom(ctx, export_name); - c002f7ae: 85ce mv a1,s3 - c002f7b0: 8526 mv a0,s1 - c002f7b2: d5bd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29165 + c002f97e: 85ce mv a1,s3 + c002f980: 8526 mv a0,s1 + c002f982: c79d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29173 if (!me) - c002f7b6: d8090fe3 beqz s2,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29167 + c002f986: d8090fe3 beqz s2,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29175 me->u.req_module_idx = idx; - c002f7ba: 01592023 sw s5,0(s2) - c002f7be: b7a9 j c002f708 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29169 + c002f98a: 01592023 sw s5,0(s2) + c002f98e: b7a9 j c002f8d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29177 module_name = js_parse_from_clause(s); - c002f7c0: 8522 mv a0,s0 - c002f7c2: 953f80ef jal ra,c0028114 - c002f7c6: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29170 + c002f990: 8522 mv a0,s0 + c002f992: 953f80ef jal ra,c00282e4 + c002f996: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29178 if (module_name == JS_ATOM_NULL) - c002f7ca: d80985e3 beqz s3,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29172 + c002f99a: d80985e3 beqz s3,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29180 idx = add_req_module_entry(ctx, m, module_name); - c002f7ce: 85ca mv a1,s2 - c002f7d0: 864e mv a2,s3 - c002f7d2: 8526 mv a0,s1 - c002f7d4: ac3e80ef jal ra,c0018296 - c002f7d8: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29173 + c002f99e: 85ca mv a1,s2 + c002f9a0: 864e mv a2,s3 + c002f9a2: 8526 mv a0,s1 + c002f9a4: ac3e80ef jal ra,c0018466 + c002f9a8: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29181 JS_FreeAtom(ctx, module_name); - c002f7da: 85ce mv a1,s3 - c002f7dc: 8526 mv a0,s1 - c002f7de: d2fd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29174 + c002f9aa: 85ce mv a1,s3 + c002f9ac: 8526 mv a0,s1 + c002f9ae: c4dd70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29182 if (idx < 0) - c002f7e2: d60a49e3 bltz s4,c002f554 + c002f9b2: d60a49e3 bltz s4,c002f724 add_star_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27389 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27397 if (js_resize_array(ctx, (void **)&m->star_export_entries, - c002f7e6: 04092703 lw a4,64(s2) - c002f7ea: 04490693 addi a3,s2,68 - c002f7ee: 4611 li a2,4 - c002f7f0: 2705 addiw a4,a4,1 - c002f7f2: 03890593 addi a1,s2,56 - c002f7f6: 8526 mv a0,s1 - c002f7f8: f19e70ef jal ra,c0017710 - c002f7fc: d4051ce3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27394 + c002f9b6: 04092703 lw a4,64(s2) + c002f9ba: 04490693 addi a3,s2,68 + c002f9be: 4611 li a2,4 + c002f9c0: 2705 addiw a4,a4,1 + c002f9c2: 03890593 addi a1,s2,56 + c002f9c6: 8526 mv a0,s1 + c002f9c8: f19e70ef jal ra,c00178e0 + c002f9cc: d4051ce3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27402 se = &m->star_export_entries[m->star_export_entries_count++]; - c002f800: 04092783 lw a5,64(s2) - c002f804: 03893703 ld a4,56(s2) - c002f808: 0017869b addiw a3,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27395 + c002f9d0: 04092783 lw a5,64(s2) + c002f9d4: 03893703 ld a4,56(s2) + c002f9d8: 0017869b addiw a3,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27403 se->req_module_idx = req_module_idx; - c002f80c: 078a slli a5,a5,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27394 + c002f9dc: 078a slli a5,a5,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27402 se = &m->star_export_entries[m->star_export_entries_count++]; - c002f80e: 04d92023 sw a3,64(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27395 + c002f9de: 04d92023 sw a3,64(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27403 se->req_module_idx = req_module_idx; - c002f812: 97ba add a5,a5,a4 - c002f814: 0147a023 sw s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27396 + c002f9e2: 97ba add a5,a5,a4 + c002f9e4: 0147a023 sw s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27404 return 0; - c002f818: bdc5 j c002f708 + c002f9e8: bdc5 j c002f8d8 js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29181 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29189 if (s->token.val == TOK_CLASS) { - c002f81a: 4c1c lw a5,24(s0) - c002f81c: fc800713 li a4,-56 - c002f820: 00e79863 bne a5,a4,c002f830 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29182 + c002f9ea: 4c1c lw a5,24(s0) + c002f9ec: fc800713 li a4,-56 + c002f9f0: 00e79863 bne a5,a4,c002fa00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29190 return js_parse_class(s, FALSE, JS_PARSE_EXPORT_DEFAULT); - c002f824: 4609 li a2,2 - c002f826: 4581 li a1,0 - c002f828: 8522 mv a0,s0 - c002f82a: fe5fd0ef jal ra,c002d80e - c002f82e: b1cd j c002f510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29183 + c002f9f4: 4609 li a2,2 + c002f9f6: 4581 li a1,0 + c002f9f8: 8522 mv a0,s0 + c002f9fa: fe5fd0ef jal ra,c002d9de + c002f9fe: b1cd j c002f6e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29191 } else if (s->token.val == TOK_FUNCTION || - c002f830: fc500493 li s1,-59 - c002f834: 00979563 bne a5,s1,c002f83e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29186 + c002fa00: fc500493 li s1,-59 + c002fa04: 00979563 bne a5,s1,c002fa0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29194 return js_parse_function_decl2(s, JS_PARSE_FUNC_STATEMENT, - c002f838: 4881 li a7,0 - c002f83a: 4809 li a6,2 - c002f83c: b3b1 j c002f588 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29184 + c002fa08: 4881 li a7,0 + c002fa0a: 4809 li a6,2 + c002fa0c: b3b1 j c002f758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29192 (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f83e: 08600593 li a1,134 - c002f842: 8522 mv a0,s0 - c002f844: b11d40ef jal ra,c0004354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29183 + c002fa0e: 08600593 li a1,134 + c002fa12: 8522 mv a0,s0 + c002fa14: 941d40ef jal ra,c0004354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29191 } else if (s->token.val == TOK_FUNCTION || - c002f848: c519 beqz a0,c002f856 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29185 + c002fa18: c519 beqz a0,c002fa26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29193 peek_token(s, TRUE) == TOK_FUNCTION)) { - c002f84a: 4585 li a1,1 - c002f84c: 8522 mv a0,s0 - c002f84e: f0ad60ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29184 + c002fa1a: 4585 li a1,1 + c002fa1c: 8522 mv a0,s0 + c002fa1e: e28d60ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29192 (token_is_pseudo_keyword(s, JS_ATOM_async) && - c002f852: fe9503e3 beq a0,s1,c002f838 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29191 + c002fa22: fe9503e3 beq a0,s1,c002fa08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29199 if (js_parse_assign_expr(s)) - c002f856: 8522 mv a0,s0 - c002f858: d7ffd0ef jal ra,c002d5d6 - c002f85c: ce051ce3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29195 + c002fa26: 8522 mv a0,s0 + c002fa28: d7ffd0ef jal ra,c002d7a6 + c002fa2c: ce051ce3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29203 set_object_name(s, JS_ATOM_default); - c002f860: 45d9 li a1,22 - c002f862: 8522 mv a0,s0 - c002f864: ed3d70ef jal ra,c0007736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29200 + c002fa30: 45d9 li a1,22 + c002fa32: 8522 mv a0,s0 + c002fa34: df1d70ef jal ra,c0007824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29208 if (define_var(s, s->cur_func, local_name, JS_VAR_DEF_LET) < 0) - c002f868: 742c ld a1,104(s0) - c002f86a: 4685 li a3,1 - c002f86c: 07d00613 li a2,125 - c002f870: 8522 mv a0,s0 - c002f872: d5ef80ef jal ra,c0027dd0 - c002f876: cc054fe3 bltz a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29202 + c002fa38: 742c ld a1,104(s0) + c002fa3a: 4685 li a3,1 + c002fa3c: 07d00613 li a2,125 + c002fa40: 8522 mv a0,s0 + c002fa42: d5ef80ef jal ra,c0027fa0 + c002fa46: cc054fe3 bltz a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29210 emit_op(s, OP_scope_put_var_init); - c002f87a: 0bd00593 li a1,189 - c002f87e: 8522 mv a0,s0 - c002f880: bbdd50ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29203 + c002fa4a: 0bd00593 li a1,189 + c002fa4e: 8522 mv a0,s0 + c002fa50: adbd50ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29211 emit_atom(s, local_name); - c002f884: 07d00593 li a1,125 - c002f888: 8522 mv a0,s0 - c002f88a: c65d70ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29204 + c002fa54: 07d00593 li a1,125 + c002fa58: 8522 mv a0,s0 + c002fa5a: b83d70ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29212 emit_u16(s, 0); - c002f88e: 4581 li a1,0 - c002f890: 8522 mv a0,s0 - c002f892: a79d50ef jal ra,c000530a + c002fa5e: 4581 li a1,0 + c002fa60: 8522 mv a0,s0 + c002fa62: 997d50ef jal ra,c00053f8 add_export_entry(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:27388 return add_export_entry2(s->ctx, s, m, local_name, export_name, - c002f896: 6008 ld a0,0(s0) - c002f898: 4781 li a5,0 - c002f89a: 4759 li a4,22 - c002f89c: 07d00693 li a3,125 - c002f8a0: 864a mv a2,s2 - c002f8a2: 85a2 mv a1,s0 - c002f8a4: a69f60ef jal ra,c002630c + c002fa66: 6008 ld a0,0(s0) + c002fa68: 4781 li a5,0 + c002fa6a: 4759 li a4,22 + c002fa6c: 07d00693 li a3,125 + c002fa70: 864a mv a2,s2 + c002fa72: 85a2 mv a1,s0 + c002fa74: a69f60ef jal ra,c00264dc js_parse_export(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29214 if (!add_export_entry(s, m, local_name, JS_ATOM_default, - c002f8a8: e60510e3 bnez a0,c002f708 - c002f8ac: b165 j c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29213 + c002fa78: e60510e3 bnez a0,c002f8d8 + c002fa7c: b165 j c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29221 return js_parse_var(s, TRUE, tok, TRUE); - c002f8ae: 4685 li a3,1 - c002f8b0: 864e mv a2,s3 - c002f8b2: 4585 li a1,1 - c002f8b4: 8522 mv a0,s0 - c002f8b6: d27fd0ef jal ra,c002d5dc - c002f8ba: b999 j c002f510 + c002fa7e: 4685 li a3,1 + c002fa80: 864e mv a2,s3 + c002fa82: 4585 li a1,1 + c002fa84: 8522 mv a0,s0 + c002fa86: d27fd0ef jal ra,c002d7ac + c002fa8a: b999 j c002f6e0 js_parse_source_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29391 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29399 } else if (s->token.val == TOK_IMPORT && fd->module && - c002f8bc: fcd00713 li a4,-51 - c002f8c0: 24e79663 bne a5,a4,c002fb0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29391 (discriminator 1) - c002f8c4: 2184b783 ld a5,536(s1) - c002f8c8: 24078263 beqz a5,c002fb0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29392 (discriminator 2) + c002fa8c: fcd00713 li a4,-51 + c002fa90: 24e79663 bne a5,a4,c002fcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29399 (discriminator 1) + c002fa94: 2184b783 ld a5,536(s1) + c002fa98: 24078263 beqz a5,c002fcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29400 (discriminator 2) ((tok = peek_token(s, FALSE)) != '(' && tok != '.')) { - c002f8cc: 4581 li a1,0 - c002f8ce: 8522 mv a0,s0 - c002f8d0: e88d60ef jal ra,c0005f58 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29391 (discriminator 2) + c002fa9c: 4581 li a1,0 + c002fa9e: 8522 mv a0,s0 + c002faa0: da6d60ef jal ra,c0006046 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29399 (discriminator 2) } else if (s->token.val == TOK_IMPORT && fd->module && - c002f8d4: 02800793 li a5,40 - c002f8d8: 22f50a63 beq a0,a5,c002fb0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29392 + c002faa4: 02800793 li a5,40 + c002faa8: 22f50a63 beq a0,a5,c002fcdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29400 ((tok = peek_token(s, FALSE)) != '(' && tok != '.')) { - c002f8dc: 02e00793 li a5,46 - c002f8e0: 22f50663 beq a0,a5,c002fb0c + c002faac: 02e00793 li a5,46 + c002fab0: 22f50663 beq a0,a5,c002fcdc js_parse_import(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29272 JSModuleDef *m = s->cur_func->module; - c002f8e4: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29268 + c002fab4: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29276 if (next_token(s)) - c002f8e6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29263 + c002fab6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29271 JSContext *ctx = s->ctx; - c002f8e8: 00043903 ld s2,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29264 + c002fab8: 00043903 ld s2,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29272 JSModuleDef *m = s->cur_func->module; - c002f8ec: 2187b983 ld s3,536(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29268 + c002fabc: 2187b983 ld s3,536(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29276 if (next_token(s)) - c002f8f0: aa6f70ef jal ra,c0026b96 - c002f8f4: c60510e3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29272 + c002fac0: aa6f70ef jal ra,c0026d66 + c002fac4: c60510e3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29280 if (s->token.val == TOK_STRING) { - c002f8f8: 4c1c lw a5,24(s0) - c002f8fa: f8100713 li a4,-127 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29271 + c002fac8: 4c1c lw a5,24(s0) + c002faca: f8100713 li a4,-127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29279 first_import = m->import_entries_count; - c002f8fe: 0509aa03 lw s4,80(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29272 + c002face: 0509aa03 lw s4,80(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29280 if (s->token.val == TOK_STRING) { - c002f902: 02e79363 bne a5,a4,c002f928 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29273 + c002fad2: 02e79363 bne a5,a4,c002faf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29281 module_name = JS_ValueToAtom(ctx, s->token.u.str.str); - c002f906: 740c ld a1,40(s0) - c002f908: 7810 ld a2,48(s0) - c002f90a: 854a mv a0,s2 - c002f90c: d11f10ef jal ra,c002161c - c002f910: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29274 + c002fad6: 740c ld a1,40(s0) + c002fad8: 7810 ld a2,48(s0) + c002fada: 854a mv a0,s2 + c002fadc: d11f10ef jal ra,c00217ec + c002fae0: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29282 if (module_name == JS_ATOM_NULL) - c002f914: c40480e3 beqz s1,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29276 + c002fae4: c40480e3 beqz s1,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29284 if (next_token(s)) { - c002f918: 8522 mv a0,s0 - c002f91a: a7cf70ef jal ra,c0026b96 - c002f91e: 0c050e63 beqz a0,c002f9fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29277 + c002fae8: 8522 mv a0,s0 + c002faea: a7cf70ef jal ra,c0026d66 + c002faee: 0c050e63 beqz a0,c002fbca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29285 JS_FreeAtom(ctx, module_name); - c002f922: 85a6 mv a1,s1 - c002f924: 854a mv a0,s2 - c002f926: b31d j c002f64c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29281 + c002faf2: 85a6 mv a1,s1 + c002faf4: 854a mv a0,s2 + c002faf6: b31d j c002f81c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29289 if (s->token.val == TOK_IDENT) { - c002f928: f8300713 li a4,-125 - c002f92c: 02e78763 beq a5,a4,c002f95a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29300 + c002faf8: f8300713 li a4,-125 + c002fafc: 02e78763 beq a5,a4,c002fb2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29308 if (s->token.val == '*') { - c002f930: 4c1c lw a5,24(s0) - c002f932: 02a00713 li a4,42 - c002f936: 0ee79c63 bne a5,a4,c002fa2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29302 + c002fb00: 4c1c lw a5,24(s0) + c002fb02: 02a00713 li a4,42 + c002fb06: 0ee79c63 bne a5,a4,c002fbfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29310 if (next_token(s)) - c002f93a: 8522 mv a0,s0 - c002f93c: a5af70ef jal ra,c0026b96 - c002f940: c0051ae3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29304 + c002fb0a: 8522 mv a0,s0 + c002fb0c: a5af70ef jal ra,c0026d66 + c002fb10: c0051ae3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29312 if (!token_is_pseudo_keyword(s, JS_ATOM_as)) - c002f944: 07a00593 li a1,122 - c002f948: 8522 mv a0,s0 - c002f94a: a0bd40ef jal ra,c0004354 - c002f94e: ed29 bnez a0,c002f9a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29305 + c002fb14: 07a00593 li a1,122 + c002fb18: 8522 mv a0,s0 + c002fb1a: 83bd40ef jal ra,c0004354 + c002fb1e: ed29 bnez a0,c002fb78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29313 return js_parse_error(s, "expecting 'as'"); - c002f950: 00031597 auipc a1,0x31 - c002f954: a4858593 addi a1,a1,-1464 # c0060398 - c002f958: b949 j c002f5ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29282 + c002fb20: 00031597 auipc a1,0x31 + c002fb24: ad858593 addi a1,a1,-1320 # c00605f8 + c002fb28: b949 j c002f7ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29290 if (s->token.u.ident.is_reserved) { - c002f95a: 581c lw a5,48(s0) - c002f95c: c789 beqz a5,c002f966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29283 + c002fb2a: 581c lw a5,48(s0) + c002fb2c: c789 beqz a5,c002fb36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29291 return js_parse_error_reserved_identifier(s); - c002f95e: 8522 mv a0,s0 - c002f960: b42f80ef jal ra,c0027ca2 - c002f964: b675 j c002f510 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29286 + c002fb2e: 8522 mv a0,s0 + c002fb30: b42f80ef jal ra,c0027e72 + c002fb34: b675 j c002f6e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29294 local_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f966: 540c lw a1,40(s0) - c002f968: 854a mv a0,s2 - c002f96a: b61d70ef jal ra,c00074ca - c002f96e: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29288 + c002fb36: 540c lw a1,40(s0) + c002fb38: 854a mv a0,s2 + c002fb3a: a7fd70ef jal ra,c00075b8 + c002fb3e: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29296 if (next_token(s)) - c002f972: 8522 mv a0,s0 - c002f974: a22f70ef jal ra,c0026b96 - c002f978: 14051063 bnez a0,c002fab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29290 + c002fb42: 8522 mv a0,s0 + c002fb44: a22f70ef jal ra,c0026d66 + c002fb48: 14051063 bnez a0,c002fc88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29298 if (add_import(s, m, local_name, import_name)) - c002f97c: 46d9 li a3,22 - c002f97e: 8626 mv a2,s1 - c002f980: 85ce mv a1,s3 - c002f982: 8522 mv a0,s0 - c002f984: ffcf80ef jal ra,c0028180 - c002f988: 12051863 bnez a0,c002fab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29292 + c002fb4c: 46d9 li a3,22 + c002fb4e: 8626 mv a2,s1 + c002fb50: 85ce mv a1,s3 + c002fb52: 8522 mv a0,s0 + c002fb54: ffcf80ef jal ra,c0028350 + c002fb58: 12051863 bnez a0,c002fc88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29300 JS_FreeAtom(ctx, local_name); - c002f98c: 85a6 mv a1,s1 - c002f98e: 854a mv a0,s2 - c002f990: b7dd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29294 + c002fb5c: 85a6 mv a1,s1 + c002fb5e: 854a mv a0,s2 + c002fb60: a9bd70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29302 if (s->token.val != ',') - c002f994: 4c18 lw a4,24(s0) - c002f996: 02c00793 li a5,44 - c002f99a: 04f71963 bne a4,a5,c002f9ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29296 + c002fb64: 4c18 lw a4,24(s0) + c002fb66: 02c00793 li a5,44 + c002fb6a: 04f71963 bne a4,a5,c002fbbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29304 if (next_token(s)) - c002f99e: 8522 mv a0,s0 - c002f9a0: 9f6f70ef jal ra,c0026b96 - c002f9a4: d551 beqz a0,c002f930 - c002f9a6: b67d j c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29306 + c002fb6e: 8522 mv a0,s0 + c002fb70: 9f6f70ef jal ra,c0026d66 + c002fb74: d551 beqz a0,c002fb00 + c002fb76: b67d j c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29314 if (next_token(s)) - c002f9a8: 8522 mv a0,s0 - c002f9aa: 9ecf70ef jal ra,c0026b96 - c002f9ae: ba0513e3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29308 + c002fb78: 8522 mv a0,s0 + c002fb7a: 9ecf70ef jal ra,c0026d66 + c002fb7e: ba0513e3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29316 if (!token_is_ident(s->token.val)) { - c002f9b2: 4c08 lw a0,24(s0) - c002f9b4: af3d40ef jal ra,c00044a6 - c002f9b8: c60501e3 beqz a0,c002f61a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29312 + c002fb82: 4c08 lw a0,24(s0) + c002fb84: 923d40ef jal ra,c00044a6 + c002fb88: c60501e3 beqz a0,c002f7ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29320 local_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002f9bc: 540c lw a1,40(s0) - c002f9be: 854a mv a0,s2 - c002f9c0: b0bd70ef jal ra,c00074ca - c002f9c4: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29314 + c002fb8c: 540c lw a1,40(s0) + c002fb8e: 854a mv a0,s2 + c002fb90: a29d70ef jal ra,c00075b8 + c002fb94: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29322 if (next_token(s)) - c002f9c8: 8522 mv a0,s0 - c002f9ca: 9ccf70ef jal ra,c0026b96 - c002f9ce: 0e051763 bnez a0,c002fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29316 + c002fb98: 8522 mv a0,s0 + c002fb9a: 9ccf70ef jal ra,c0026d66 + c002fb9e: 0e051763 bnez a0,c002fc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29324 if (add_import(s, m, local_name, import_name)) - c002f9d2: 07e00693 li a3,126 - c002f9d6: 8626 mv a2,s1 - c002f9d8: 85ce mv a1,s3 - c002f9da: 8522 mv a0,s0 - c002f9dc: fa4f80ef jal ra,c0028180 - c002f9e0: 0c051e63 bnez a0,c002fabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29318 + c002fba2: 07e00693 li a3,126 + c002fba6: 8626 mv a2,s1 + c002fba8: 85ce mv a1,s3 + c002fbaa: 8522 mv a0,s0 + c002fbac: fa4f80ef jal ra,c0028350 + c002fbb0: 0c051e63 bnez a0,c002fc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29326 JS_FreeAtom(ctx, local_name); - c002f9e4: 85a6 mv a1,s1 - c002f9e6: 854a mv a0,s2 - c002f9e8: b25d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29362 + c002fbb4: 85a6 mv a1,s1 + c002fbb6: 854a mv a0,s2 + c002fbb8: a43d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29370 module_name = js_parse_from_clause(s); - c002f9ec: 8522 mv a0,s0 - c002f9ee: f26f80ef jal ra,c0028114 - c002f9f2: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29363 + c002fbbc: 8522 mv a0,s0 + c002fbbe: f26f80ef jal ra,c00282e4 + c002fbc2: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29371 if (module_name == JS_ATOM_NULL) - c002f9f6: b4048fe3 beqz s1,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29366 + c002fbc6: b4048fe3 beqz s1,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29374 idx = add_req_module_entry(ctx, m, module_name); - c002f9fa: 8626 mv a2,s1 - c002f9fc: 85ce mv a1,s3 - c002f9fe: 854a mv a0,s2 - c002fa00: 897e80ef jal ra,c0018296 - c002fa04: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29367 + c002fbca: 8626 mv a2,s1 + c002fbcc: 85ce mv a1,s3 + c002fbce: 854a mv a0,s2 + c002fbd0: 897e80ef jal ra,c0018466 + c002fbd4: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29375 JS_FreeAtom(ctx, module_name); - c002fa06: 85a6 mv a1,s1 - c002fa08: 854a mv a0,s2 - c002fa0a: b03d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29371 + c002fbd6: 85a6 mv a1,s1 + c002fbd8: 854a mv a0,s2 + c002fbda: a21d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29379 m->import_entries[i].req_module_idx = idx; - c002fa0e: 4731 li a4,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29368 + c002fbde: 4731 li a4,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29376 if (idx < 0) - c002fa10: b40ac2e3 bltz s5,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29370 + c002fbe0: b40ac2e3 bltz s5,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29378 for(i = first_import; i < m->import_entries_count; i++) - c002fa14: 0509a783 lw a5,80(s3) - c002fa18: cefa58e3 bge s4,a5,c002f708 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29371 + c002fbe4: 0509a783 lw a5,80(s3) + c002fbe8: cefa58e3 bge s4,a5,c002f8d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29379 m->import_entries[i].req_module_idx = idx; - c002fa1c: 02ea06b3 mul a3,s4,a4 - c002fa20: 0489b783 ld a5,72(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29370 + c002fbec: 02ea06b3 mul a3,s4,a4 + c002fbf0: 0489b783 ld a5,72(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29378 for(i = first_import; i < m->import_entries_count; i++) - c002fa24: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29371 + c002fbf4: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29379 m->import_entries[i].req_module_idx = idx; - c002fa26: 97b6 add a5,a5,a3 - c002fa28: 0157a423 sw s5,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29370 + c002fbf6: 97b6 add a5,a5,a3 + c002fbf8: 0157a423 sw s5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29378 for(i = first_import; i < m->import_entries_count; i++) - c002fa2c: b7e5 j c002fa14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29319 + c002fbfc: b7e5 j c002fbe4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29327 } else if (s->token.val == '{') { - c002fa2e: 07b00713 li a4,123 - c002fa32: fae79de3 bne a5,a4,c002f9ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29320 + c002fbfe: 07b00713 li a4,123 + c002fc02: fae79de3 bne a5,a4,c002fbbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29328 if (next_token(s)) - c002fa36: 8522 mv a0,s0 - c002fa38: 95ef70ef jal ra,c0026b96 - c002fa3c: b0051ce3 bnez a0,c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29323 + c002fc06: 8522 mv a0,s0 + c002fc08: 95ef70ef jal ra,c0026d66 + c002fc0c: b0051ce3 bnez a0,c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29331 while (s->token.val != '}') { - c002fa40: 07d00b13 li s6,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29353 + c002fc10: 07d00b13 li s6,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29361 if (s->token.val != ',') - c002fa44: 02c00b93 li s7,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29323 + c002fc14: 02c00b93 li s7,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29331 while (s->token.val != '}') { - c002fa48: 4c08 lw a0,24(s0) - c002fa4a: 0b650463 beq a0,s6,c002faf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29324 + c002fc18: 4c08 lw a0,24(s0) + c002fc1a: 0b650463 beq a0,s6,c002fcc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29332 if (!token_is_ident(s->token.val)) { - c002fa4e: a59d40ef jal ra,c00044a6 - c002fa52: bc0504e3 beqz a0,c002f61a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29328 + c002fc1e: 889d40ef jal ra,c00044a6 + c002fc22: bc0504e3 beqz a0,c002f7ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29336 import_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002fa56: 540c lw a1,40(s0) - c002fa58: 854a mv a0,s2 - c002fa5a: a71d70ef jal ra,c00074ca - c002fa5e: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29330 + c002fc26: 540c lw a1,40(s0) + c002fc28: 854a mv a0,s2 + c002fc2a: 98fd70ef jal ra,c00075b8 + c002fc2e: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29338 if (next_token(s)) - c002fa62: 8522 mv a0,s0 - c002fa64: 932f70ef jal ra,c0026b96 - c002fa68: e515 bnez a0,c002fa94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29332 + c002fc32: 8522 mv a0,s0 + c002fc34: 932f70ef jal ra,c0026d66 + c002fc38: e515 bnez a0,c002fc64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29340 if (token_is_pseudo_keyword(s, JS_ATOM_as)) { - c002fa6a: 07a00593 li a1,122 - c002fa6e: 8522 mv a0,s0 - c002fa70: 8e5d40ef jal ra,c0004354 - c002fa74: c539 beqz a0,c002fac2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29333 + c002fc3a: 07a00593 li a1,122 + c002fc3e: 8522 mv a0,s0 + c002fc40: f14d40ef jal ra,c0004354 + c002fc44: c539 beqz a0,c002fc92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29341 if (next_token(s)) - c002fa76: 8522 mv a0,s0 - c002fa78: 91ef70ef jal ra,c0026b96 - c002fa7c: ed01 bnez a0,c002fa94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29335 + c002fc46: 8522 mv a0,s0 + c002fc48: 91ef70ef jal ra,c0026d66 + c002fc4c: ed01 bnez a0,c002fc64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29343 if (!token_is_ident(s->token.val)) { - c002fa7e: 4c08 lw a0,24(s0) - c002fa80: a27d40ef jal ra,c00044a6 - c002fa84: e911 bnez a0,c002fa98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29336 + c002fc4e: 4c08 lw a0,24(s0) + c002fc50: 857d40ef jal ra,c00044a6 + c002fc54: e911 bnez a0,c002fc68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29344 js_parse_error(s, "identifier expected"); - c002fa86: 00030597 auipc a1,0x30 - c002fa8a: 78258593 addi a1,a1,1922 # c0060208 - c002fa8e: 8522 mv a0,s0 - c002fa90: 829f60ef jal ra,c00262b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29329 + c002fc56: 00031597 auipc a1,0x31 + c002fc5a: 81258593 addi a1,a1,-2030 # c0060468 + c002fc5e: 8522 mv a0,s0 + c002fc60: 829f60ef jal ra,c0026488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29337 local_name = JS_ATOM_NULL; - c002fa94: 4481 li s1,0 - c002fa96: a819 j c002faac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29339 + c002fc64: 4481 li s1,0 + c002fc66: a819 j c002fc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29347 local_name = JS_DupAtom(ctx, s->token.u.ident.atom); - c002fa98: 540c lw a1,40(s0) - c002fa9a: 854a mv a0,s2 - c002fa9c: a2fd70ef jal ra,c00074ca - c002faa0: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29340 + c002fc68: 540c lw a1,40(s0) + c002fc6a: 854a mv a0,s2 + c002fc6c: 94dd70ef jal ra,c00075b8 + c002fc70: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29348 if (next_token(s)) { - c002faa4: 8522 mv a0,s0 - c002faa6: 8f0f70ef jal ra,c0026b96 - c002faaa: c115 beqz a0,c002face -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29342 + c002fc74: 8522 mv a0,s0 + c002fc76: 8f0f70ef jal ra,c0026d66 + c002fc7a: c115 beqz a0,c002fc9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29350 JS_FreeAtom(ctx, local_name); - c002faac: 85a6 mv a1,s1 - c002faae: 854a mv a0,s2 - c002fab0: a5dd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29343 + c002fc7c: 85a6 mv a1,s1 + c002fc7e: 854a mv a0,s2 + c002fc80: 97bd70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29351 JS_FreeAtom(ctx, import_name); - c002fab4: 85d6 mv a1,s5 - c002fab6: b5bd j c002f924 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29287 + c002fc84: 85d6 mv a1,s5 + c002fc86: b5bd j c002faf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29295 import_name = JS_ATOM_default; - c002fab8: 4ad9 li s5,22 - c002faba: bfcd j c002faac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29313 + c002fc88: 4ad9 li s5,22 + c002fc8a: bfcd j c002fc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29321 import_name = JS_ATOM__star_; - c002fabc: 07e00a93 li s5,126 - c002fac0: b7f5 j c002faac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29347 + c002fc8c: 07e00a93 li s5,126 + c002fc90: b7f5 j c002fc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29355 local_name = JS_DupAtom(ctx, import_name); - c002fac2: 85d6 mv a1,s5 - c002fac4: 854a mv a0,s2 - c002fac6: a05d70ef jal ra,c00074ca - c002faca: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29349 + c002fc92: 85d6 mv a1,s5 + c002fc94: 854a mv a0,s2 + c002fc96: 923d70ef jal ra,c00075b8 + c002fc9a: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29357 if (add_import(s, m, local_name, import_name)) - c002face: 86d6 mv a3,s5 - c002fad0: 8626 mv a2,s1 - c002fad2: 85ce mv a1,s3 - c002fad4: 8522 mv a0,s0 - c002fad6: eaaf80ef jal ra,c0028180 - c002fada: f969 bnez a0,c002faac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29351 + c002fc9e: 86d6 mv a3,s5 + c002fca0: 8626 mv a2,s1 + c002fca2: 85ce mv a1,s3 + c002fca4: 8522 mv a0,s0 + c002fca6: eaaf80ef jal ra,c0028350 + c002fcaa: f969 bnez a0,c002fc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29359 JS_FreeAtom(ctx, local_name); - c002fadc: 85a6 mv a1,s1 - c002fade: 854a mv a0,s2 - c002fae0: a2dd70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29352 + c002fcac: 85a6 mv a1,s1 + c002fcae: 854a mv a0,s2 + c002fcb0: 94bd70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29360 JS_FreeAtom(ctx, import_name); - c002fae4: 85d6 mv a1,s5 - c002fae6: 854a mv a0,s2 - c002fae8: a25d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29353 + c002fcb4: 85d6 mv a1,s5 + c002fcb6: 854a mv a0,s2 + c002fcb8: 943d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29361 if (s->token.val != ',') - c002faec: 4c1c lw a5,24(s0) - c002faee: 01778a63 beq a5,s7,c002fb02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29358 + c002fcbc: 4c1c lw a5,24(s0) + c002fcbe: 01778a63 beq a5,s7,c002fcd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29366 if (js_parse_expect(s, '}')) - c002faf2: 07d00593 li a1,125 - c002faf6: 8522 mv a0,s0 - c002faf8: feaf80ef jal ra,c00282e2 - c002fafc: ee0508e3 beqz a0,c002f9ec - c002fb00: bc91 j c002f554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29355 + c002fcc2: 07d00593 li a1,125 + c002fcc6: 8522 mv a0,s0 + c002fcc8: feaf80ef jal ra,c00284b2 + c002fccc: ee0508e3 beqz a0,c002fbbc + c002fcd0: bc91 j c002f724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29363 if (next_token(s)) - c002fb02: 8522 mv a0,s0 - c002fb04: 892f70ef jal ra,c0026b96 - c002fb08: d121 beqz a0,c002fa48 - c002fb0a: b4a9 j c002f554 + c002fcd2: 8522 mv a0,s0 + c002fcd4: 892f70ef jal ra,c0026d66 + c002fcd8: d121 beqz a0,c002fc18 + c002fcda: b4a9 j c002f724 js_parse_source_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29398 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29406 if (js_parse_statement_or_decl(s, DECL_MASK_ALL)) - c002fb0c: 459d li a1,7 - c002fb0e: 8522 mv a0,s0 - c002fb10: f06fe0ef jal ra,c002e216 - c002fb14: baf5 j c002f510 + c002fcdc: 459d li a1,7 + c002fcde: 8522 mv a0,s0 + c002fce0: f06fe0ef jal ra,c002e3e6 + c002fce4: baf5 j c002f6e0 -00000000c002fb16 : +00000000c002fce6 : js_parse_block(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26071 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26079 { - c002fb16: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26072 + c002fce6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26080 if (js_parse_expect(s, '{')) - c002fb18: 07b00593 li a1,123 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26071 -{ - c002fb1c: e822 sd s0,16(sp) - c002fb1e: ec06 sd ra,24(sp) - c002fb20: e426 sd s1,8(sp) - c002fb22: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26072 + c002fce8: 07b00593 li a1,123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26079 +{ + c002fcec: e822 sd s0,16(sp) + c002fcee: ec06 sd ra,24(sp) + c002fcf0: e426 sd s1,8(sp) + c002fcf2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26080 if (js_parse_expect(s, '{')) - c002fb24: fbef80ef jal ra,c00282e2 - c002fb28: c519 beqz a0,c002fb36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26073 + c002fcf4: fbef80ef jal ra,c00284b2 + c002fcf8: c519 beqz a0,c002fd06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26081 return -1; - c002fb2a: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26087 -} - c002fb2c: 60e2 ld ra,24(sp) - c002fb2e: 6442 ld s0,16(sp) - c002fb30: 64a2 ld s1,8(sp) - c002fb32: 6105 addi sp,sp,32 - c002fb34: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26074 + c002fcfa: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26095 +} + c002fcfc: 60e2 ld ra,24(sp) + c002fcfe: 6442 ld s0,16(sp) + c002fd00: 64a2 ld s1,8(sp) + c002fd02: 6105 addi sp,sp,32 + c002fd04: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26082 if (s->token.val != '}') { - c002fb36: 4c18 lw a4,24(s0) - c002fb38: 07d00793 li a5,125 - c002fb3c: 02f70263 beq a4,a5,c002fb60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26075 + c002fd06: 4c18 lw a4,24(s0) + c002fd08: 07d00793 li a5,125 + c002fd0c: 02f70263 beq a4,a5,c002fd30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26083 push_scope(s); - c002fb40: 8522 mv a0,s0 - c002fb42: 9cbe80ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26079 + c002fd10: 8522 mv a0,s0 + c002fd12: 9cbe80ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26087 if (s->token.val == '}') - c002fb46: 07d00493 li s1,125 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26077 + c002fd16: 07d00493 li s1,125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26085 if (js_parse_statement_or_decl(s, DECL_MASK_ALL)) - c002fb4a: 459d li a1,7 - c002fb4c: 8522 mv a0,s0 - c002fb4e: ec8fe0ef jal ra,c002e216 - c002fb52: fd61 bnez a0,c002fb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26079 + c002fd1a: 459d li a1,7 + c002fd1c: 8522 mv a0,s0 + c002fd1e: ec8fe0ef jal ra,c002e3e6 + c002fd22: fd61 bnez a0,c002fcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26087 if (s->token.val == '}') - c002fb54: 4c1c lw a5,24(s0) - c002fb56: fe979ae3 bne a5,s1,c002fb4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26082 + c002fd24: 4c1c lw a5,24(s0) + c002fd26: fe979ae3 bne a5,s1,c002fd1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26090 pop_scope(s); - c002fb5a: 8522 mv a0,s0 - c002fb5c: 9ddd50ef jal ra,c0005538 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26084 + c002fd2a: 8522 mv a0,s0 + c002fd2c: 8fbd50ef jal ra,c0005626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:26092 if (next_token(s)) - c002fb60: 8522 mv a0,s0 - c002fb62: 834f70ef jal ra,c0026b96 - c002fb66: 00a03533 snez a0,a0 - c002fb6a: 40a00533 neg a0,a0 - c002fb6e: bf7d j c002fb2c + c002fd30: 8522 mv a0,s0 + c002fd32: 834f70ef jal ra,c0026d66 + c002fd36: 00a03533 snez a0,a0 + c002fd3a: 40a00533 neg a0,a0 + c002fd3e: bf7d j c002fcfc -00000000c002fb70 : +00000000c002fd40 : js_string_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41321 -{ - c002fb70: 7135 addi sp,sp,-160 - c002fb72: e526 sd s1,136(sp) - c002fb74: e14a sd s2,128(sp) - c002fb76: ed06 sd ra,152(sp) - c002fb78: e922 sd s0,144(sp) - c002fb7a: e82e sd a1,16(sp) - c002fb7c: ec32 sd a2,24(sp) - c002fb7e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41329 +{ + c002fd40: 7135 addi sp,sp,-160 + c002fd42: e526 sd s1,136(sp) + c002fd44: e14a sd s2,128(sp) + c002fd46: ed06 sd ra,152(sp) + c002fd48: e922 sd s0,144(sp) + c002fd4a: e82e sd a1,16(sp) + c002fd4c: ec32 sd a2,24(sp) + c002fd4e: 84aa mv s1,a0 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c002fb80: 0006091b sext.w s2,a2 + c002fd50: 0006091b sext.w s2,a2 js_string_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41323 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41331 if (argc == 0) { - c002fb84: eea5 bnez a3,c002fbfc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41324 + c002fd54: eea5 bnez a3,c002fdcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41332 val = JS_AtomToString(ctx, JS_ATOM_empty_string); - c002fb86: 02f00593 li a1,47 - c002fb8a: fb3e90ef jal ra,c0019b3c - c002fb8e: 842a mv s0,a0 - c002fb90: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41335 + c002fd56: 02f00593 li a1,47 + c002fd5a: fb3e90ef jal ra,c0019d0c + c002fd5e: 842a mv s0,a0 + c002fd60: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41343 if (!JS_IsUndefined(new_target)) { - c002fb92: 478d li a5,3 - c002fb94: 0af90a63 beq s2,a5,c002fc48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41338 + c002fd62: 478d li a5,3 + c002fd64: 0af90a63 beq s2,a5,c002fe18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41346 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_STRING); - c002fb98: 6662 ld a2,24(sp) - c002fb9a: 65c2 ld a1,16(sp) - c002fb9c: 4695 li a3,5 - c002fb9e: 8526 mv a0,s1 - c002fba0: e43a sd a4,8(sp) - c002fba2: e49e60ef jal ra,c00169ea - c002fba6: f82a sd a0,48(sp) - c002fba8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41339 + c002fd68: 6662 ld a2,24(sp) + c002fd6a: 65c2 ld a1,16(sp) + c002fd6c: 4695 li a3,5 + c002fd6e: 8526 mv a0,s1 + c002fd70: e43a sd a4,8(sp) + c002fd72: e49e60ef jal ra,c0016bba + c002fd76: f82a sd a0,48(sp) + c002fd78: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41347 if (!JS_IsException(obj)) { - c002fbaa: 0005869b sext.w a3,a1 - c002fbae: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41338 + c002fd7a: 0005869b sext.w a3,a1 + c002fd7e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41346 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_STRING); - c002fbb0: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41339 + c002fd80: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41347 if (!JS_IsException(obj)) { - c002fbb2: 02f68963 beq a3,a5,c002fbe4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41340 + c002fd82: 02f68963 beq a3,a5,c002fdb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41348 JS_SetObjectData(ctx, obj, val); - c002fbb6: 6722 ld a4,8(sp) - c002fbb8: 85aa mv a1,a0 - c002fbba: 86a2 mv a3,s0 - c002fbbc: 8526 mv a0,s1 - c002fbbe: f43a sd a4,40(sp) - c002fbc0: f022 sd s0,32(sp) - c002fbc2: c6de40ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41341 + c002fd86: 6722 ld a4,8(sp) + c002fd88: 85aa mv a1,a0 + c002fd8a: 86a2 mv a3,s0 + c002fd8c: 8526 mv a0,s1 + c002fd8e: f43a sd a4,40(sp) + c002fd90: f022 sd s0,32(sp) + c002fd92: b8be40ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41349 JS_DefinePropertyValue(ctx, obj, JS_ATOM_length, JS_NewInt32(ctx, p1->len), 0); - c002fbc6: 405c lw a5,4(s0) + c002fd96: 405c lw a5,4(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c002fbc8: f882 sd zero,112(sp) + c002fd98: f882 sd zero,112(sp) js_string_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41341 - c002fbca: 75c2 ld a1,48(sp) - c002fbcc: 1786 slli a5,a5,0x21 - c002fbce: 9385 srli a5,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41349 + c002fd9a: 75c2 ld a1,48(sp) + c002fd9c: 1786 slli a5,a5,0x21 + c002fd9e: 9385 srli a5,a5,0x21 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c002fbd0: d8be sw a5,112(sp) + c002fda0: d8be sw a5,112(sp) js_string_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41341 - c002fbd2: 7746 ld a4,112(sp) - c002fbd4: 7662 ld a2,56(sp) - c002fbd6: 4801 li a6,0 - c002fbd8: 4781 li a5,0 - c002fbda: 03000693 li a3,48 - c002fbde: 8526 mv a0,s1 - c002fbe0: bd6e30ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41343 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41349 + c002fda2: 7746 ld a4,112(sp) + c002fda4: 7662 ld a2,56(sp) + c002fda6: 4801 li a6,0 + c002fda8: 4781 li a5,0 + c002fdaa: 03000693 li a3,48 + c002fdae: 8526 mv a0,s1 + c002fdb0: af4e30ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41351 return obj; - c002fbe4: 77c2 ld a5,48(sp) - c002fbe6: e8be sd a5,80(sp) - c002fbe8: 77e2 ld a5,56(sp) - c002fbea: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41347 -} - c002fbec: 60ea ld ra,152(sp) - c002fbee: 644a ld s0,144(sp) - c002fbf0: 6546 ld a0,80(sp) - c002fbf2: 65e6 ld a1,88(sp) - c002fbf4: 64aa ld s1,136(sp) - c002fbf6: 690a ld s2,128(sp) - c002fbf8: 610d addi sp,sp,160 - c002fbfa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41326 + c002fdb4: 77c2 ld a5,48(sp) + c002fdb6: e8be sd a5,80(sp) + c002fdb8: 77e2 ld a5,56(sp) + c002fdba: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41355 +} + c002fdbc: 60ea ld ra,152(sp) + c002fdbe: 644a ld s0,144(sp) + c002fdc0: 6546 ld a0,80(sp) + c002fdc2: 65e6 ld a1,88(sp) + c002fdc4: 64aa ld s1,136(sp) + c002fdc6: 690a ld s2,128(sp) + c002fdc8: 610d addi sp,sp,160 + c002fdca: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41334 if (JS_IsUndefined(new_target) && JS_IsSymbol(argv[0])) { - c002fbfc: 478d li a5,3 - c002fbfe: 04f91863 bne s2,a5,c002fc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41326 (discriminator 1) - c002fc02: 4714 lw a3,8(a4) - c002fc04: 57e1 li a5,-8 - c002fc06: 04f69463 bne a3,a5,c002fc4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41328 + c002fdcc: 478d li a5,3 + c002fdce: 04f91863 bne s2,a5,c002fe1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41334 (discriminator 1) + c002fdd2: 4714 lw a3,8(a4) + c002fdd4: 57e1 li a5,-8 + c002fdd6: 04f69463 bne a3,a5,c002fe1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41336 val = JS_ConcatString3(ctx, "Symbol(", JS_AtomToString(ctx, js_get_atom_index(ctx->rt, p)), ")"); - c002fc0a: 630c ld a1,0(a4) - c002fc0c: 6d08 ld a0,24(a0) - c002fc0e: dc3d50ef jal ra,c00059d0 - c002fc12: 0005059b sext.w a1,a0 - c002fc16: 8526 mv a0,s1 - c002fc18: f25e90ef jal ra,c0019b3c - c002fc1c: 862a mv a2,a0 - c002fc1e: 86ae mv a3,a1 - c002fc20: e0aa sd a0,64(sp) - c002fc22: e4ae sd a1,72(sp) - c002fc24: 0002f717 auipc a4,0x2f - c002fc28: 13c70713 addi a4,a4,316 # c005ed60 - c002fc2c: 00030597 auipc a1,0x30 - c002fc30: 77c58593 addi a1,a1,1916 # c00603a8 - c002fc34: 8526 mv a0,s1 - c002fc36: bd5ea0ef jal ra,c001a80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41332 + c002fdda: 630c ld a1,0(a4) + c002fddc: 6d08 ld a0,24(a0) + c002fdde: ce1d50ef jal ra,c0005abe + c002fde2: 0005059b sext.w a1,a0 + c002fde6: 8526 mv a0,s1 + c002fde8: f25e90ef jal ra,c0019d0c + c002fdec: 862a mv a2,a0 + c002fdee: 86ae mv a3,a1 + c002fdf0: e0aa sd a0,64(sp) + c002fdf2: e4ae sd a1,72(sp) + c002fdf4: 0002f717 auipc a4,0x2f + c002fdf8: 1cc70713 addi a4,a4,460 # c005efc0 + c002fdfc: 00031597 auipc a1,0x31 + c002fe00: 80c58593 addi a1,a1,-2036 # c0060608 + c002fe04: 8526 mv a0,s1 + c002fe06: bd5ea0ef jal ra,c001a9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41340 if (JS_IsException(val)) - c002fc3a: 0005879b sext.w a5,a1 - c002fc3e: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41330 + c002fe0a: 0005879b sext.w a5,a1 + c002fe0e: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41338 val = JS_ToString(ctx, argv[0]); - c002fc40: 842a mv s0,a0 - c002fc42: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41332 + c002fe10: 842a mv s0,a0 + c002fe12: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41340 if (JS_IsException(val)) - c002fc44: f4d797e3 bne a5,a3,c002fb92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41345 + c002fe14: f4d797e3 bne a5,a3,c002fd62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41353 return val; - c002fc48: e8a2 sd s0,80(sp) - c002fc4a: ecba sd a4,88(sp) - c002fc4c: b745 j c002fbec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41330 + c002fe18: e8a2 sd s0,80(sp) + c002fe1a: ecba sd a4,88(sp) + c002fe1c: b745 j c002fdbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41338 val = JS_ToString(ctx, argv[0]); - c002fc4e: 630c ld a1,0(a4) - c002fc50: 6710 ld a2,8(a4) - c002fc52: 8526 mv a0,s1 - c002fc54: b83ea0ef jal ra,c001a7d6 - c002fc58: b7cd j c002fc3a + c002fe1e: 630c ld a1,0(a4) + c002fe20: 6710 ld a2,8(a4) + c002fe22: 8526 mv a0,s1 + c002fe24: b83ea0ef jal ra,c001a9a6 + c002fe28: b7cd j c002fe0a -00000000c002fc5a : +00000000c002fe2a : js_symbol_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46804 { - c002fc5a: 711d addi sp,sp,-96 - c002fc5c: e8a2 sd s0,80(sp) - c002fc5e: ec86 sd ra,88(sp) - c002fc60: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46798 + c002fe2a: 711d addi sp,sp,-96 + c002fe2c: e8a2 sd s0,80(sp) + c002fe2e: ec86 sd ra,88(sp) + c002fe30: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46806 val = js_thisSymbolValue(ctx, this_val); - c002fc62: a1ae40ef jal ra,c0013e7c - c002fc66: e82a sd a0,16(sp) - c002fc68: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46799 + c002fe32: 938e40ef jal ra,c0013f6a + c002fe36: e82a sd a0,16(sp) + c002fe38: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46807 if (JS_IsException(val)) - c002fc6a: 0005871b sext.w a4,a1 - c002fc6e: 4799 li a5,6 - c002fc70: 00f71a63 bne a4,a5,c002fc84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46800 + c002fe3a: 0005871b sext.w a4,a1 + c002fe3e: 4799 li a5,6 + c002fe40: 00f71a63 bne a4,a5,c002fe54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46808 return val; - c002fc74: e0aa sd a0,64(sp) - c002fc76: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46805 -} - c002fc78: 60e6 ld ra,88(sp) - c002fc7a: 6446 ld s0,80(sp) - c002fc7c: 6506 ld a0,64(sp) - c002fc7e: 65a6 ld a1,72(sp) - c002fc80: 6125 addi sp,sp,96 - c002fc82: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46802 + c002fe44: e0aa sd a0,64(sp) + c002fe46: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46813 +} + c002fe48: 60e6 ld ra,88(sp) + c002fe4a: 6446 ld s0,80(sp) + c002fe4c: 6506 ld a0,64(sp) + c002fe4e: 65a6 ld a1,72(sp) + c002fe50: 6125 addi sp,sp,96 + c002fe52: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46810 ret = js_string_constructor(ctx, JS_UNDEFINED, 1, (JSValueConst *)&val); - c002fc84: 0818 addi a4,sp,16 - c002fc86: 4685 li a3,1 - c002fc88: 460d li a2,3 - c002fc8a: 4581 li a1,0 - c002fc8c: 8522 mv a0,s0 - c002fc8e: ee3ff0ef jal ra,c002fb70 - c002fc92: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46803 + c002fe54: 0818 addi a4,sp,16 + c002fe56: 4685 li a3,1 + c002fe58: 460d li a2,3 + c002fe5a: 4581 li a1,0 + c002fe5c: 8522 mv a0,s0 + c002fe5e: ee3ff0ef jal ra,c002fd40 + c002fe62: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46811 JS_FreeValue(ctx, val); - c002fc94: 6662 ld a2,24(sp) - c002fc96: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46802 + c002fe64: 6662 ld a2,24(sp) + c002fe66: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46810 ret = js_string_constructor(ctx, JS_UNDEFINED, 1, (JSValueConst *)&val); - c002fc98: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46803 + c002fe68: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46811 JS_FreeValue(ctx, val); - c002fc9a: 8522 mv a0,s0 - c002fc9c: e9dd70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46804 + c002fe6a: 8522 mv a0,s0 + c002fe6c: dbbd70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46812 return ret; - c002fca0: 7782 ld a5,32(sp) - c002fca2: e0be sd a5,64(sp) - c002fca4: 77a2 ld a5,40(sp) - c002fca6: e4be sd a5,72(sp) - c002fca8: bfc1 j c002fc78 + c002fe70: 7782 ld a5,32(sp) + c002fe72: e0be sd a5,64(sp) + c002fe74: 77a2 ld a5,40(sp) + c002fe76: e4be sd a5,72(sp) + c002fe78: bfc1 j c002fe48 -00000000c002fcaa : +00000000c002fe7a : JS_DefineObjectName(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9523 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9531 static int JS_DefineObjectName(JSContext *ctx, JSValueConst obj, - c002fcaa: 7139 addi sp,sp,-64 - c002fcac: f822 sd s0,48(sp) - c002fcae: fc06 sd ra,56(sp) - c002fcb0: f426 sd s1,40(sp) - c002fcb2: f04a sd s2,32(sp) - c002fcb4: e02e sd a1,0(sp) - c002fcb6: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9532 + c002fe7a: 7139 addi sp,sp,-64 + c002fe7c: f822 sd s0,48(sp) + c002fe7e: fc06 sd ra,56(sp) + c002fe80: f426 sd s1,40(sp) + c002fe82: f04a sd s2,32(sp) + c002fe84: e02e sd a1,0(sp) + c002fe86: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9540 return 0; - c002fcb8: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9526 + c002fe88: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9534 if (name != JS_ATOM_NULL - c002fcba: ce85 beqz a3,c002fcf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9527 + c002fe8a: ce85 beqz a3,c002fec2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9535 && JS_IsObject(obj) - c002fcbc: 2601 sext.w a2,a2 - c002fcbe: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9532 + c002fe8c: 2601 sext.w a2,a2 + c002fe8e: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9540 return 0; - c002fcc0: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9527 + c002fe90: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9535 && JS_IsObject(obj) - c002fcc2: 02f61863 bne a2,a5,c002fcf2 - c002fcc6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9528 + c002fe92: 02f61863 bne a2,a5,c002fec2 + c002fe96: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9536 && !js_object_has_name(ctx, obj) - c002fcc8: 852e mv a0,a1 - c002fcca: 8936 mv s2,a3 - c002fccc: a61d60ef jal ra,c000672c - c002fcd0: e10d bnez a0,c002fcf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9529 + c002fe98: 852e mv a0,a1 + c002fe9a: 8936 mv s2,a3 + c002fe9c: 97fd60ef jal ra,c000681a + c002fea0: e10d bnez a0,c002fec2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9537 && JS_DefinePropertyValue(ctx, obj, JS_ATOM_name, JS_AtomToString(ctx, name), flags) < 0) { - c002fcd2: 85ca mv a1,s2 - c002fcd4: 8526 mv a0,s1 - c002fcd6: e67e90ef jal ra,c0019b3c - c002fcda: 87ae mv a5,a1 - c002fcdc: 6622 ld a2,8(sp) - c002fcde: 6582 ld a1,0(sp) - c002fce0: 872a mv a4,a0 - c002fce2: 4805 li a6,1 - c002fce4: 03700693 li a3,55 - c002fce8: 8526 mv a0,s1 - c002fcea: acce30ef jal ra,c0012fb6 - c002fcee: 41f5541b sraiw s0,a0,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9533 -} - c002fcf2: 70e2 ld ra,56(sp) - c002fcf4: 8522 mv a0,s0 - c002fcf6: 7442 ld s0,48(sp) - c002fcf8: 74a2 ld s1,40(sp) - c002fcfa: 7902 ld s2,32(sp) - c002fcfc: 6121 addi sp,sp,64 - c002fcfe: 8082 ret - -00000000c002fd00 : + c002fea2: 85ca mv a1,s2 + c002fea4: 8526 mv a0,s1 + c002fea6: e67e90ef jal ra,c0019d0c + c002feaa: 87ae mv a5,a1 + c002feac: 6622 ld a2,8(sp) + c002feae: 6582 ld a1,0(sp) + c002feb0: 872a mv a4,a0 + c002feb2: 4805 li a6,1 + c002feb4: 03700693 li a3,55 + c002feb8: 8526 mv a0,s1 + c002feba: 9eae30ef jal ra,c00130a4 + c002febe: 41f5541b sraiw s0,a0,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9541 +} + c002fec2: 70e2 ld ra,56(sp) + c002fec4: 8522 mv a0,s0 + c002fec6: 7442 ld s0,48(sp) + c002fec8: 74a2 ld s1,40(sp) + c002feca: 7902 ld s2,32(sp) + c002fecc: 6121 addi sp,sp,64 + c002fece: 8082 ret + +00000000c002fed0 : JS_DefineObjectNameComputed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9535 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9543 static int JS_DefineObjectNameComputed(JSContext *ctx, JSValueConst obj, - c002fd00: 715d addi sp,sp,-80 - c002fd02: e0a2 sd s0,64(sp) - c002fd04: e486 sd ra,72(sp) - c002fd06: fc26 sd s1,56(sp) - c002fd08: f84a sd s2,48(sp) - c002fd0a: e82e sd a1,16(sp) - c002fd0c: ec32 sd a2,24(sp) - c002fd0e: e036 sd a3,0(sp) - c002fd10: e43a sd a4,8(sp) + c002fed0: 715d addi sp,sp,-80 + c002fed2: e0a2 sd s0,64(sp) + c002fed4: e486 sd ra,72(sp) + c002fed6: fc26 sd s1,56(sp) + c002fed8: f84a sd s2,48(sp) + c002feda: e82e sd a1,16(sp) + c002fedc: ec32 sd a2,24(sp) + c002fede: e036 sd a3,0(sp) + c002fee0: e43a sd a4,8(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c002fd12: 0006041b sext.w s0,a2 + c002fee2: 0006041b sext.w s0,a2 JS_DefineObjectNameComputed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9546 if (JS_IsObject(obj) && - c002fd16: 57fd li a5,-1 - c002fd18: 06f41263 bne s0,a5,c002fd7c - c002fd1c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9539 + c002fee6: 57fd li a5,-1 + c002fee8: 06f41263 bne s0,a5,c002ff4c + c002feec: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9547 !js_object_has_name(ctx, obj)) { - c002fd1e: 852e mv a0,a1 - c002fd20: a0dd60ef jal ra,c000672c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9538 + c002feee: 852e mv a0,a1 + c002fef0: 92bd60ef jal ra,c000681a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9546 if (JS_IsObject(obj) && - c002fd24: ed21 bnez a0,c002fd7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9542 + c002fef4: ed21 bnez a0,c002ff4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9550 prop = JS_ValueToAtom(ctx, str); - c002fd26: 6582 ld a1,0(sp) - c002fd28: 6622 ld a2,8(sp) - c002fd2a: 8526 mv a0,s1 - c002fd2c: 8f1f10ef jal ra,c002161c - c002fd30: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9543 + c002fef6: 6582 ld a1,0(sp) + c002fef8: 6622 ld a2,8(sp) + c002fefa: 8526 mv a0,s1 + c002fefc: 8f1f10ef jal ra,c00217ec + c002ff00: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9551 if (prop == JS_ATOM_NULL) - c002fd34: 02090d63 beqz s2,c002fd6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9545 + c002ff04: 02090d63 beqz s2,c002ff3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9553 name_str = js_get_function_name(ctx, prop); - c002fd38: 85ca mv a1,s2 - c002fd3a: 8526 mv a0,s1 - c002fd3c: bb1ea0ef jal ra,c001a8ec - c002fd40: f02a sd a0,32(sp) - c002fd42: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9546 + c002ff08: 85ca mv a1,s2 + c002ff0a: 8526 mv a0,s1 + c002ff0c: bb1ea0ef jal ra,c001aabc + c002ff10: f02a sd a0,32(sp) + c002ff12: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9554 JS_FreeAtom(ctx, prop); - c002fd44: 8526 mv a0,s1 - c002fd46: 85ca mv a1,s2 - c002fd48: fc4d70ef jal ra,c000750c + c002ff14: 8526 mv a0,s1 + c002ff16: 85ca mv a1,s2 + c002ff18: ee2d70ef jal ra,c00075fa JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c002fd4c: 77a2 ld a5,40(sp) + c002ff1c: 77a2 ld a5,40(sp) JS_DefineObjectNameComputed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9547 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9555 if (JS_IsException(name_str)) - c002fd4e: 4719 li a4,6 - c002fd50: 0007869b sext.w a3,a5 - c002fd54: 00e68d63 beq a3,a4,c002fd6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9549 + c002ff1e: 4719 li a4,6 + c002ff20: 0007869b sext.w a3,a5 + c002ff24: 00e68d63 beq a3,a4,c002ff3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9557 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_name, name_str, flags) < 0) - c002fd58: 7702 ld a4,32(sp) - c002fd5a: 65c2 ld a1,16(sp) - c002fd5c: 6662 ld a2,24(sp) - c002fd5e: 4805 li a6,1 - c002fd60: 03700693 li a3,55 - c002fd64: 8526 mv a0,s1 - c002fd66: a50e30ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9552 + c002ff28: 7702 ld a4,32(sp) + c002ff2a: 65c2 ld a1,16(sp) + c002ff2c: 6662 ld a2,24(sp) + c002ff2e: 4805 li a6,1 + c002ff30: 03700693 li a3,55 + c002ff34: 8526 mv a0,s1 + c002ff36: 96ee30ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9560 return 0; - c002fd6a: 43f55413 srai s0,a0,0x3f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9553 -} - c002fd6e: 60a6 ld ra,72(sp) - c002fd70: 8522 mv a0,s0 - c002fd72: 6406 ld s0,64(sp) - c002fd74: 74e2 ld s1,56(sp) - c002fd76: 7942 ld s2,48(sp) - c002fd78: 6161 addi sp,sp,80 - c002fd7a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9552 + c002ff3a: 43f55413 srai s0,a0,0x3f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9561 +} + c002ff3e: 60a6 ld ra,72(sp) + c002ff40: 8522 mv a0,s0 + c002ff42: 6406 ld s0,64(sp) + c002ff44: 74e2 ld s1,56(sp) + c002ff46: 7942 ld s2,48(sp) + c002ff48: 6161 addi sp,sp,80 + c002ff4a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9560 return 0; - c002fd7c: 4401 li s0,0 - c002fd7e: bfc5 j c002fd6e + c002ff4c: 4401 li s0,0 + c002ff4e: bfc5 j c002ff3e -00000000c002fd80 : +00000000c002ff50 : js_string_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41272 { - c002fd80: 7159 addi sp,sp,-112 - c002fd82: eca6 sd s1,88(sp) - c002fd84: e8ca sd s2,80(sp) - c002fd86: f486 sd ra,104(sp) - c002fd88: f0a2 sd s0,96(sp) - c002fd8a: e4ce sd s3,72(sp) - c002fd8c: e0d2 sd s4,64(sp) - c002fd8e: fc56 sd s5,56(sp) - c002fd90: f85a sd s6,48(sp) - c002fd92: f02e sd a1,32(sp) - c002fd94: f432 sd a2,40(sp) - c002fd96: e83a sd a4,16(sp) - c002fd98: ec3e sd a5,24(sp) - c002fd9a: e042 sd a6,0(sp) - c002fd9c: e446 sd a7,8(sp) - c002fd9e: 448a lw s1,128(sp) - c002fda0: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41269 + c002ff50: 7159 addi sp,sp,-112 + c002ff52: eca6 sd s1,88(sp) + c002ff54: e8ca sd s2,80(sp) + c002ff56: f486 sd ra,104(sp) + c002ff58: f0a2 sd s0,96(sp) + c002ff5a: e4ce sd s3,72(sp) + c002ff5c: e0d2 sd s4,64(sp) + c002ff5e: fc56 sd s5,56(sp) + c002ff60: f85a sd s6,48(sp) + c002ff62: f02e sd a1,32(sp) + c002ff64: f432 sd a2,40(sp) + c002ff66: e83a sd a4,16(sp) + c002ff68: ec3e sd a5,24(sp) + c002ff6a: e042 sd a6,0(sp) + c002ff6c: e446 sd a7,8(sp) + c002ff6e: 448a lw s1,128(sp) + c002ff70: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41277 if (__JS_AtomIsTaggedInt(prop)) { - c002fda2: 0806d663 bgez a3,c002fe2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41272 + c002ff72: 0806d663 bgez a3,c002fffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41280 if (JS_VALUE_GET_TAG(p->u.object_data) != JS_TAG_STRING) - c002fda6: 0385a983 lw s3,56(a1) - c002fdaa: 57e5 li a5,-7 - c002fdac: 08f99163 bne s3,a5,c002fe2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41274 + c002ff76: 0385a983 lw s3,56(a1) + c002ff7a: 57e5 li a5,-7 + c002ff7c: 08f99163 bne s3,a5,c002fffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41282 p1 = JS_VALUE_GET_STRING(p->u.object_data); - c002fdb0: 0305ba83 ld s5,48(a1) + c002ff80: 0305ba83 ld s5,48(a1) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c002fdb4: 80000437 lui s0,0x80000 - c002fdb8: fff44413 not s0,s0 + c002ff84: 80000437 lui s0,0x80000 + c002ff88: fff44413 not s0,s0 js_string_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41275 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41283 if (idx >= p1->len) - c002fdbc: 004aa783 lw a5,4(s5) + c002ff8c: 004aa783 lw a5,4(s5) __JS_AtomToUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2438 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2446 return atom & ~JS_ATOM_TAG_INT; - c002fdc0: 0086fb33 and s6,a3,s0 + c002ff90: 0086fb33 and s6,a3,s0 js_string_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41275 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41283 if (idx >= p1->len) - c002fdc4: 8fe1 and a5,a5,s0 - c002fdc6: 06fb7463 bgeu s6,a5,c002fe2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41277 + c002ff94: 8fe1 and a5,a5,s0 + c002ff96: 06fb7463 bgeu s6,a5,c002fffe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41285 if (!check_define_prop_flags(JS_PROP_ENUMERABLE, flags)) - c002fdca: 85a6 mv a1,s1 - c002fdcc: 4511 li a0,4 - c002fdce: abdd50ef jal ra,c000588a - c002fdd2: c915 beqz a0,c002fe06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41280 + c002ff9a: 85a6 mv a1,s1 + c002ff9c: 4511 li a0,4 + c002ff9e: 9dbd50ef jal ra,c0005978 + c002ffa2: c915 beqz a0,c002ffd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41288 if (flags & JS_PROP_HAS_VALUE) { - c002fdd4: 00d4d793 srli a5,s1,0xd - c002fdd8: 8b85 andi a5,a5,1 - c002fdda: c3c1 beqz a5,c002fe5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41281 + c002ffa4: 00d4d793 srli a5,s1,0xd + c002ffa8: 8b85 andi a5,a5,1 + c002ffaa: c3c1 beqz a5,c003002a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41289 if (JS_VALUE_GET_TAG(val) != JS_TAG_STRING) - c002fddc: 47e2 lw a5,24(sp) - c002fdde: 03379463 bne a5,s3,c002fe06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41283 + c002ffac: 47e2 lw a5,24(sp) + c002ffae: 03379463 bne a5,s3,c002ffd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41291 p2 = JS_VALUE_GET_STRING(val); - c002fde2: 69c2 ld s3,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41284 + c002ffb2: 69c2 ld s3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41292 if (p2->len != 1) - c002fde4: 4785 li a5,1 - c002fde6: 0049aa03 lw s4,4(s3) - c002fdea: 008a7433 and s0,s4,s0 - c002fdee: 00f41c63 bne s0,a5,c002fe06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41286 + c002ffb4: 4785 li a5,1 + c002ffb6: 0049aa03 lw s4,4(s3) + c002ffba: 008a7433 and s0,s4,s0 + c002ffbe: 00f41c63 bne s0,a5,c002ffd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 if (string_get(p1, idx) != string_get(p2, 0)) { - c002fdf2: 85da mv a1,s6 - c002fdf4: 8556 mv a0,s5 - c002fdf6: b70d40ef jal ra,c0004166 + c002ffc2: 85da mv a1,s6 + c002ffc4: 8556 mv a0,s5 + c002ffc6: 9a0d40ef jal ra,c0004166 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c002fdfa: 020a5763 bgez s4,c002fe28 - c002fdfe: 0109d783 lhu a5,16(s3) + c002ffca: 020a5763 bgez s4,c002fff8 + c002ffce: 0109d783 lhu a5,16(s3) js_string_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 if (string_get(p1, idx) != string_get(p2, 0)) { - c002fe02: 04f50c63 beq a0,a5,c002fe5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 -} - c002fe06: 7406 ld s0,96(sp) - c002fe08: 70a6 ld ra,104(sp) - c002fe0a: 69a6 ld s3,72(sp) - c002fe0c: 6a06 ld s4,64(sp) - c002fe0e: 7ae2 ld s5,56(sp) - c002fe10: 7b42 ld s6,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41288 + c002ffd2: 04f50c63 beq a0,a5,c003002a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 +} + c002ffd6: 7406 ld s0,96(sp) + c002ffd8: 70a6 ld ra,104(sp) + c002ffda: 69a6 ld s3,72(sp) + c002ffdc: 6a06 ld s4,64(sp) + c002ffde: 7ae2 ld s5,56(sp) + c002ffe0: 7b42 ld s6,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41296 return JS_ThrowTypeErrorOrFalse(ctx, flags, "property is not configurable"); - c002fe12: 85a6 mv a1,s1 - c002fe14: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 + c002ffe2: 85a6 mv a1,s1 + c002ffe4: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 } - c002fe16: 64e6 ld s1,88(sp) - c002fe18: 6946 ld s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41288 + c002ffe6: 64e6 ld s1,88(sp) + c002ffe8: 6946 ld s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41296 return JS_ThrowTypeErrorOrFalse(ctx, flags, "property is not configurable"); - c002fe1a: 0002e617 auipc a2,0x2e - c002fe1e: b2e60613 addi a2,a2,-1234 # c005d948 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 + c002ffea: 0002e617 auipc a2,0x2e + c002ffee: b8e60613 addi a2,a2,-1138 # c005db78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 } - c002fe22: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41288 + c002fff2: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41296 return JS_ThrowTypeErrorOrFalse(ctx, flags, "property is not configurable"); - c002fe24: aa4e306f j c00130c8 + c002fff4: 9c2e306f j c00131b6 string_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:3760 return p->is_wide_char ? p->u.str16[idx] : p->u.str8[idx]; - c002fe28: 0109c783 lbu a5,16(s3) - c002fe2c: bfd9 j c002fe02 + c002fff8: 0109c783 lbu a5,16(s3) + c002fffc: bfd9 j c002ffd2 js_string_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41302 return JS_DefineProperty(ctx, this_obj, prop, val, getter, setter, - c002fe2e: 000207b7 lui a5,0x20 - c002fe32: 8cdd or s1,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 + c002fffe: 000207b7 lui a5,0x20 + c0030002: 8cdd or s1,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 } - c002fe34: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 + c0030004: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41302 return JS_DefineProperty(ctx, this_obj, prop, val, getter, setter, - c002fe36: e126 sd s1,128(sp) - c002fe38: 6802 ld a6,0(sp) - c002fe3a: 68a2 ld a7,8(sp) - c002fe3c: 6742 ld a4,16(sp) - c002fe3e: 67e2 ld a5,24(sp) - c002fe40: 7582 ld a1,32(sp) - c002fe42: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 -} - c002fe44: 70a6 ld ra,104(sp) - c002fe46: 64e6 ld s1,88(sp) - c002fe48: 69a6 ld s3,72(sp) - c002fe4a: 6a06 ld s4,64(sp) - c002fe4c: 7ae2 ld s5,56(sp) - c002fe4e: 7b42 ld s6,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 + c0030006: e126 sd s1,128(sp) + c0030008: 6802 ld a6,0(sp) + c003000a: 68a2 ld a7,8(sp) + c003000c: 6742 ld a4,16(sp) + c003000e: 67e2 ld a5,24(sp) + c0030010: 7582 ld a1,32(sp) + c0030012: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 +} + c0030014: 70a6 ld ra,104(sp) + c0030016: 64e6 ld s1,88(sp) + c0030018: 69a6 ld s3,72(sp) + c003001a: 6a06 ld s4,64(sp) + c003001c: 7ae2 ld s5,56(sp) + c003001e: 7b42 ld s6,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41302 return JS_DefineProperty(ctx, this_obj, prop, val, getter, setter, - c002fe50: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 + c0030020: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 } - c002fe52: 6946 ld s2,80(sp) - c002fe54: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41294 + c0030022: 6946 ld s2,80(sp) + c0030024: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41302 return JS_DefineProperty(ctx, this_obj, prop, val, getter, setter, - c002fe56: a8de206f j c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41297 -} - c002fe5a: 70a6 ld ra,104(sp) - c002fe5c: 7406 ld s0,96(sp) - c002fe5e: 64e6 ld s1,88(sp) - c002fe60: 6946 ld s2,80(sp) - c002fe62: 69a6 ld s3,72(sp) - c002fe64: 6a06 ld s4,64(sp) - c002fe66: 7ae2 ld s5,56(sp) - c002fe68: 7b42 ld s6,48(sp) - c002fe6a: 4505 li a0,1 - c002fe6c: 6165 addi sp,sp,112 - c002fe6e: 8082 ret - -00000000c002fe70 : + c0030026: 9abe206f j c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41305 +} + c003002a: 70a6 ld ra,104(sp) + c003002c: 7406 ld s0,96(sp) + c003002e: 64e6 ld s1,88(sp) + c0030030: 6946 ld s2,80(sp) + c0030032: 69a6 ld s3,72(sp) + c0030034: 6a06 ld s4,64(sp) + c0030036: 7ae2 ld s5,56(sp) + c0030038: 7b42 ld s6,48(sp) + c003003a: 4505 li a0,1 + c003003c: 6165 addi sp,sp,112 + c003003e: 8082 ret + +00000000c0030040 : js_arguments_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14793 -{ - c002fe70: 7119 addi sp,sp,-128 - c002fe72: f4a6 sd s1,104(sp) - c002fe74: f0ca sd s2,96(sp) - c002fe76: fc86 sd ra,120(sp) - c002fe78: f8a2 sd s0,112(sp) - c002fe7a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14798 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14801 +{ + c0030040: 7119 addi sp,sp,-128 + c0030042: f4a6 sd s1,104(sp) + c0030044: f0ca sd s2,96(sp) + c0030046: fc86 sd ra,120(sp) + c0030048: f8a2 sd s0,112(sp) + c003004a: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 if (p->fast_array && JS_AtomIsArrayIndex(ctx, &idx, prop) && - c002fe7c: 0055c783 lbu a5,5(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14793 -{ - c002fe80: e0ae sd a1,64(sp) - c002fe82: e4b2 sd a2,72(sp) - c002fe84: f83a sd a4,48(sp) - c002fe86: f042 sd a6,32(sp) - c002fe88: f446 sd a7,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14798 + c003004c: 0055c783 lbu a5,5(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14801 +{ + c0030050: e0ae sd a1,64(sp) + c0030052: e4b2 sd a2,72(sp) + c0030054: f83a sd a4,48(sp) + c0030056: f042 sd a6,32(sp) + c0030058: f446 sd a7,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 if (p->fast_array && JS_AtomIsArrayIndex(ctx, &idx, prop) && - c002fe8a: 8ba1 andi a5,a5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14793 + c003005a: 8ba1 andi a5,a5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14801 { - c002fe8c: 84aa mv s1,a0 - c002fe8e: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14798 + c003005c: 84aa mv s1,a0 + c003005e: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 if (p->fast_array && JS_AtomIsArrayIndex(ctx, &idx, prop) && - c002fe90: eb95 bnez a5,c002fec4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14804 + c0030060: eb95 bnez a5,c0030094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14812 return JS_DefineProperty(ctx, this_obj, prop, val, getter, setter, - c002fe92: 47ca lw a5,144(sp) - c002fe94: 00020737 lui a4,0x20 - c002fe98: 7802 ld a6,32(sp) - c002fe9a: 8fd9 or a5,a5,a4 - c002fe9c: e83e sd a5,16(sp) - c002fe9e: 678a ld a5,128(sp) - c002fea0: 78a2 ld a7,40(sp) - c002fea2: 7742 ld a4,48(sp) - c002fea4: e03e sd a5,0(sp) - c002fea6: 67aa ld a5,136(sp) - c002fea8: 6586 ld a1,64(sp) - c002feaa: 6626 ld a2,72(sp) - c002feac: e43e sd a5,8(sp) - c002feae: 77e2 ld a5,56(sp) - c002feb0: 86ca mv a3,s2 - c002feb2: 8526 mv a0,s1 - c002feb4: a2fe20ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 -} - c002feb8: 70e6 ld ra,120(sp) - c002feba: 7446 ld s0,112(sp) - c002febc: 74a6 ld s1,104(sp) - c002febe: 7906 ld s2,96(sp) - c002fec0: 6109 addi sp,sp,128 - c002fec2: 8082 ret - c002fec4: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14798 (discriminator 1) + c0030062: 47ca lw a5,144(sp) + c0030064: 00020737 lui a4,0x20 + c0030068: 7802 ld a6,32(sp) + c003006a: 8fd9 or a5,a5,a4 + c003006c: e83e sd a5,16(sp) + c003006e: 678a ld a5,128(sp) + c0030070: 78a2 ld a7,40(sp) + c0030072: 7742 ld a4,48(sp) + c0030074: e03e sd a5,0(sp) + c0030076: 67aa ld a5,136(sp) + c0030078: 6586 ld a1,64(sp) + c003007a: 6626 ld a2,72(sp) + c003007c: e43e sd a5,8(sp) + c003007e: 77e2 ld a5,56(sp) + c0030080: 86ca mv a3,s2 + c0030082: 8526 mv a0,s1 + c0030084: 94de20ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14814 +} + c0030088: 70e6 ld ra,120(sp) + c003008a: 7446 ld s0,112(sp) + c003008c: 74a6 ld s1,104(sp) + c003008e: 7906 ld s2,96(sp) + c0030090: 6109 addi sp,sp,128 + c0030092: 8082 ret + c0030094: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 (discriminator 1) if (p->fast_array && JS_AtomIsArrayIndex(ctx, &idx, prop) && - c002fec6: 8636 mv a2,a3 - c002fec8: 08ec addi a1,sp,92 - c002feca: f07d40ef jal ra,c0004dd0 - c002fece: d171 beqz a0,c002fe92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14798 (discriminator 2) - c002fed0: 4038 lw a4,64(s0) - c002fed2: 47f6 lw a5,92(sp) - c002fed4: fae7ffe3 bgeu a5,a4,c002fe92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14800 + c0030096: 8636 mv a2,a3 + c0030098: 08ec addi a1,sp,92 + c003009a: d37d40ef jal ra,c0004dd0 + c003009e: d171 beqz a0,c0030062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14806 (discriminator 2) + c00300a0: 4038 lw a4,64(s0) + c00300a2: 47f6 lw a5,92(sp) + c00300a4: fae7ffe3 bgeu a5,a4,c0030062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14808 if (convert_fast_array_to_array(ctx, p)) - c002fed8: 85a2 mv a1,s0 - c002feda: 8526 mv a0,s1 - c002fedc: 8f4e70ef jal ra,c0016fd0 - c002fee0: d94d beqz a0,c002fe92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14801 + c00300a8: 85a2 mv a1,s0 + c00300aa: 8526 mv a0,s1 + c00300ac: 8f4e70ef jal ra,c00171a0 + c00300b0: d94d beqz a0,c0030062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:14809 return -1; - c002fee2: 557d li a0,-1 - c002fee4: bfd1 j c002feb8 + c00300b2: 557d li a0,-1 + c00300b4: bfd1 j c0030088 -00000000c002fee6 : +00000000c00300b6 : JS_DefinePropertyGetSet(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9492 { - c002fee6: 7119 addi sp,sp,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 + c00300b6: 7119 addi sp,sp,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9494 ret = JS_DefineProperty(ctx, this_obj, prop, JS_UNDEFINED, getter, setter, - c002fee8: 430a lw t1,128(sp) - c002feea: 6e09 lui t3,0x2 - c002feec: d00e0e13 addi t3,t3,-768 # 1d00 <__clzdi2-0xbfffe300> - c002fef0: 01c36333 or t1,t1,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9484 + c00300b8: 430a lw t1,128(sp) + c00300ba: 6e09 lui t3,0x2 + c00300bc: d00e0e13 addi t3,t3,-768 # 1d00 <__clzdi2-0xbfffe300> + c00300c0: 01c36333 or t1,t1,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9492 { - c002fef4: fc86 sd ra,120(sp) - c002fef6: f8a2 sd s0,112(sp) - c002fef8: f4a6 sd s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 + c00300c4: fc86 sd ra,120(sp) + c00300c6: f8a2 sd s0,112(sp) + c00300c8: f4a6 sd s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9494 ret = JS_DefineProperty(ctx, this_obj, prop, JS_UNDEFINED, getter, setter, - c002fefa: e81a sd t1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9484 + c00300ca: e81a sd t1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9492 { - c002fefc: f83a sd a4,48(sp) - c002fefe: fc3e sd a5,56(sp) - c002ff00: f042 sd a6,32(sp) - c002ff02: f446 sd a7,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 + c00300cc: f83a sd a4,48(sp) + c00300ce: fc3e sd a5,56(sp) + c00300d0: f042 sd a6,32(sp) + c00300d2: f446 sd a7,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9494 ret = JS_DefineProperty(ctx, this_obj, prop, JS_UNDEFINED, getter, setter, - c002ff04: e042 sd a6,0(sp) - c002ff06: e446 sd a7,8(sp) - c002ff08: 883a mv a6,a4 - c002ff0a: 88be mv a7,a5 - c002ff0c: 4701 li a4,0 - c002ff0e: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9484 + c00300d4: e042 sd a6,0(sp) + c00300d6: e446 sd a7,8(sp) + c00300d8: 883a mv a6,a4 + c00300da: 88be mv a7,a5 + c00300dc: 4701 li a4,0 + c00300de: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9492 { - c002ff10: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 + c00300e0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9494 ret = JS_DefineProperty(ctx, this_obj, prop, JS_UNDEFINED, getter, setter, - c002ff12: 9d1e20ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9489 + c00300e2: 8efe20ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9497 JS_FreeValue(ctx, getter); - c002ff16: 75c2 ld a1,48(sp) - c002ff18: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9486 + c00300e6: 75c2 ld a1,48(sp) + c00300e8: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9494 ret = JS_DefineProperty(ctx, this_obj, prop, JS_UNDEFINED, getter, setter, - c002ff1a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9489 + c00300ea: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9497 JS_FreeValue(ctx, getter); - c002ff1c: 8522 mv a0,s0 - c002ff1e: c1bd70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9490 + c00300ec: 8522 mv a0,s0 + c00300ee: b39d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9498 JS_FreeValue(ctx, setter); - c002ff22: 7582 ld a1,32(sp) - c002ff24: 7622 ld a2,40(sp) - c002ff26: 8522 mv a0,s0 - c002ff28: c11d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9492 + c00300f2: 7582 ld a1,32(sp) + c00300f4: 7622 ld a2,40(sp) + c00300f6: 8522 mv a0,s0 + c00300f8: b2fd70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9500 } - c002ff2c: 70e6 ld ra,120(sp) - c002ff2e: 7446 ld s0,112(sp) - c002ff30: 8526 mv a0,s1 - c002ff32: 74a6 ld s1,104(sp) - c002ff34: 6109 addi sp,sp,128 - c002ff36: 8082 ret + c00300fc: 70e6 ld ra,120(sp) + c00300fe: 7446 ld s0,112(sp) + c0030100: 8526 mv a0,s1 + c0030102: 74a6 ld s1,104(sp) + c0030104: 6109 addi sp,sp,128 + c0030106: 8082 ret -00000000c002ff38 : +00000000c0030108 : js_object___defineGetter__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37353 -{ - c002ff38: 7131 addi sp,sp,-192 - c002ff3a: f922 sd s0,176(sp) - c002ff3c: f14a sd s2,160(sp) - c002ff3e: fd06 sd ra,184(sp) - c002ff40: f526 sd s1,168(sp) - c002ff42: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37359 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37361 +{ + c0030108: 7131 addi sp,sp,-192 + c003010a: f922 sd s0,176(sp) + c003010c: f14a sd s2,160(sp) + c003010e: fd06 sd ra,184(sp) + c0030110: f526 sd s1,168(sp) + c0030112: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37367 prop = argv[0]; - c002ff44: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37353 + c0030114: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37361 { - c002ff46: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37359 + c0030116: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37367 prop = argv[0]; - c002ff48: e0be sd a5,64(sp) - c002ff4a: 671c ld a5,8(a4) - c002ff4c: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37360 + c0030118: e0be sd a5,64(sp) + c003011a: 671c ld a5,8(a4) + c003011c: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37368 value = argv[1]; - c002ff4e: 6b1c ld a5,16(a4) - c002ff50: e8be sd a5,80(sp) - c002ff52: 6f1c ld a5,24(a4) - c002ff54: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37362 + c003011e: 6b1c ld a5,16(a4) + c0030120: e8be sd a5,80(sp) + c0030122: 6f1c ld a5,24(a4) + c0030124: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37370 obj = JS_ToObject(ctx, this_val); - c002ff56: e96f80ef jal ra,c00285ec - c002ff5a: fc2e sd a1,56(sp) - c002ff5c: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37363 + c0030126: e96f80ef jal ra,c00287bc + c003012a: fc2e sd a1,56(sp) + c003012c: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37371 if (JS_IsException(obj)) - c002ff5e: 2581 sext.w a1,a1 - c002ff60: 4799 li a5,6 - c002ff62: 00f59d63 bne a1,a5,c002ff7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37368 + c003012e: 2581 sext.w a1,a1 + c0030130: 4799 li a5,6 + c0030132: 00f59d63 bne a1,a5,c003014c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37376 return JS_EXCEPTION; - c002ff66: e902 sd zero,144(sp) - c002ff68: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37395 + c0030136: e902 sd zero,144(sp) + c0030138: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37403 } - c002ff6a: 70ea ld ra,184(sp) - c002ff6c: 744a ld s0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37393 + c003013a: 70ea ld ra,184(sp) + c003013c: 744a ld s0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37401 return JS_UNDEFINED; - c002ff6e: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37395 -} - c002ff70: 654a ld a0,144(sp) - c002ff72: 65ea ld a1,152(sp) - c002ff74: 74aa ld s1,168(sp) - c002ff76: 790a ld s2,160(sp) - c002ff78: 6129 addi sp,sp,192 - c002ff7a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37366 + c003013e: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37403 +} + c0030140: 654a ld a0,144(sp) + c0030142: 65ea ld a1,152(sp) + c0030144: 74aa ld s1,168(sp) + c0030146: 790a ld s2,160(sp) + c0030148: 6129 addi sp,sp,192 + c003014a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37374 if (check_function(ctx, value)) { - c002ff7c: 65c6 ld a1,80(sp) - c002ff7e: 6666 ld a2,88(sp) - c002ff80: 8522 mv a0,s0 - c002ff82: d26e30ef jal ra,c00134a8 - c002ff86: c519 beqz a0,c002ff94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37367 + c003014c: 65c6 ld a1,80(sp) + c003014e: 6666 ld a2,88(sp) + c0030150: 8522 mv a0,s0 + c0030152: c44e30ef jal ra,c0013596 + c0030156: c519 beqz a0,c0030164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37375 JS_FreeValue(ctx, obj); - c002ff88: 75c2 ld a1,48(sp) - c002ff8a: 7662 ld a2,56(sp) - c002ff8c: 8522 mv a0,s0 - c002ff8e: babd70ef jal ra,c0007b38 - c002ff92: bfd1 j c002ff66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37370 + c0030158: 75c2 ld a1,48(sp) + c003015a: 7662 ld a2,56(sp) + c003015c: 8522 mv a0,s0 + c003015e: ac9d70ef jal ra,c0007c26 + c0030162: bfd1 j c0030136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37378 atom = JS_ValueToAtom(ctx, prop); - c002ff94: 6586 ld a1,64(sp) - c002ff96: 6626 ld a2,72(sp) - c002ff98: 8522 mv a0,s0 - c002ff9a: e82f10ef jal ra,c002161c - c002ff9e: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37371 + c0030164: 6586 ld a1,64(sp) + c0030166: 6626 ld a2,72(sp) + c0030168: 8522 mv a0,s0 + c003016a: e82f10ef jal ra,c00217ec + c003016e: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37379 if (unlikely(atom == JS_ATOM_NULL)) { - c002ffa2: d0fd beqz s1,c002ff88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37378 + c0030172: d0fd beqz s1,c0030158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37386 if (magic) { - c002ffa4: 6746 ld a4,80(sp) - c002ffa6: 67e6 ld a5,88(sp) - c002ffa8: 04090863 beqz s2,c002fff8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37379 + c0030174: 6746 ld a4,80(sp) + c0030176: 67e6 ld a5,88(sp) + c0030178: 04090863 beqz s2,c00301c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37387 get = JS_UNDEFINED; - c002ffac: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37380 + c003017c: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37388 set = value; - c002ffae: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37381 + c003017e: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37389 flags |= JS_PROP_HAS_SET; - c002ffb0: 6795 lui a5,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37379 + c0030180: 6795 lui a5,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37387 get = JS_UNDEFINED; - c002ffb2: f082 sd zero,96(sp) - c002ffb4: f4b6 sd a3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37380 + c0030182: f082 sd zero,96(sp) + c0030184: f4b6 sd a3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37388 set = value; - c002ffb6: f8ba sd a4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37381 + c0030186: f8ba sd a4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37389 flags |= JS_PROP_HAS_SET; - c002ffb8: 50578793 addi a5,a5,1285 # 5505 <__clzdi2-0xbfffaafb> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37387 + c0030188: 50578793 addi a5,a5,1285 # 5505 <__clzdi2-0xbfffaafb> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37395 ret = JS_DefineProperty(ctx, obj, atom, JS_UNDEFINED, get, set, flags); - c002ffbc: e83e sd a5,16(sp) - c002ffbe: 77c6 ld a5,112(sp) - c002ffc0: 7806 ld a6,96(sp) - c002ffc2: 78a6 ld a7,104(sp) - c002ffc4: e03e sd a5,0(sp) - c002ffc6: 77e6 ld a5,120(sp) - c002ffc8: 75c2 ld a1,48(sp) - c002ffca: 7662 ld a2,56(sp) - c002ffcc: e43e sd a5,8(sp) - c002ffce: 4701 li a4,0 - c002ffd0: 478d li a5,3 - c002ffd2: 86a6 mv a3,s1 - c002ffd4: 8522 mv a0,s0 - c002ffd6: 90de20ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37388 + c003018c: e83e sd a5,16(sp) + c003018e: 77c6 ld a5,112(sp) + c0030190: 7806 ld a6,96(sp) + c0030192: 78a6 ld a7,104(sp) + c0030194: e03e sd a5,0(sp) + c0030196: 77e6 ld a5,120(sp) + c0030198: 75c2 ld a1,48(sp) + c003019a: 7662 ld a2,56(sp) + c003019c: e43e sd a5,8(sp) + c003019e: 4701 li a4,0 + c00301a0: 478d li a5,3 + c00301a2: 86a6 mv a3,s1 + c00301a4: 8522 mv a0,s0 + c00301a6: 82be20ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37396 JS_FreeValue(ctx, obj); - c002ffda: 75c2 ld a1,48(sp) - c002ffdc: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37387 + c00301aa: 75c2 ld a1,48(sp) + c00301ac: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37395 ret = JS_DefineProperty(ctx, obj, atom, JS_UNDEFINED, get, set, flags); - c002ffde: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37388 + c00301ae: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37396 JS_FreeValue(ctx, obj); - c002ffe0: 8522 mv a0,s0 - c002ffe2: b57d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37389 + c00301b0: 8522 mv a0,s0 + c00301b2: a75d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37397 JS_FreeAtom(ctx, atom); - c002ffe6: 85a6 mv a1,s1 - c002ffe8: 8522 mv a0,s0 - c002ffea: d22d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37390 + c00301b6: 85a6 mv a1,s1 + c00301b8: 8522 mv a0,s0 + c00301ba: c40d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37398 if (ret < 0) { - c002ffee: f6094ce3 bltz s2,c002ff66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37393 + c00301be: f6094ce3 bltz s2,c0030136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37401 return JS_UNDEFINED; - c002fff2: e902 sd zero,144(sp) - c002fff4: 478d li a5,3 - c002fff6: bf95 j c002ff6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37383 + c00301c2: e902 sd zero,144(sp) + c00301c4: 478d li a5,3 + c00301c6: bf95 j c003013a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37391 get = value; - c002fff8: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37384 + c00301c8: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37392 set = JS_UNDEFINED; - c002fffa: 478d li a5,3 - c002fffc: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37385 + c00301ca: 478d li a5,3 + c00301cc: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37393 flags |= JS_PROP_HAS_GET; - c002fffe: 6795 lui a5,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37383 + c00301ce: 6795 lui a5,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37391 get = value; - c0030000: f0ba sd a4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37384 + c00301d0: f0ba sd a4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37392 set = JS_UNDEFINED; - c0030002: f882 sd zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37385 + c00301d2: f882 sd zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37393 flags |= JS_PROP_HAS_GET; - c0030004: d0578793 addi a5,a5,-763 # 4d05 <__clzdi2-0xbfffb2fb> - c0030008: bf55 j c002ffbc + c00301d4: d0578793 addi a5,a5,-763 # 4d05 <__clzdi2-0xbfffb2fb> + c00301d8: bf55 j c003018c -00000000c003000a : +00000000c00301da : JS_SetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9744 -{ - c003000a: 7139 addi sp,sp,-64 - c003000c: f822 sd s0,48(sp) - c003000e: f04a sd s2,32(sp) - c0030010: fc06 sd ra,56(sp) - c0030012: f426 sd s1,40(sp) - c0030014: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9751 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9752 +{ + c00301da: 7139 addi sp,sp,-64 + c00301dc: f822 sd s0,48(sp) + c00301de: f04a sd s2,32(sp) + c00301e0: fc06 sd ra,56(sp) + c00301e2: f426 sd s1,40(sp) + c00301e4: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9759 p = JS_VALUE_GET_OBJ(ctx->global_var_obj); - c0030016: 17853583 ld a1,376(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9744 + c00301e6: 17853583 ld a1,376(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9752 { - c003001a: ec36 sd a3,24(sp) - c003001c: e832 sd a2,16(sp) + c00301ea: ec36 sd a3,24(sp) + c00301ec: e832 sd a2,16(sp) find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5305 sh = p->shape; - c003001e: 6d94 ld a3,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c00301ee: 6d94 ld a3,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c0030020: 5671 li a2,-4 + c00301f0: 5671 li a2,-4 JS_SetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9744 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9752 { - c0030022: 842a mv s0,a0 + c00301f2: 842a mv s0,a0 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5306 h = (uintptr_t)atom & sh->prop_hash_mask; - c0030024: 529c lw a5,32(a3) - c0030026: 00f977b3 and a5,s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c00301f4: 529c lw a5,32(a3) + c00301f6: 00f977b3 and a5,s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c003002a: 1782 slli a5,a5,0x20 - c003002c: 9381 srli a5,a5,0x20 - c003002e: 0785 addi a5,a5,1 - c0030030: 02c787b3 mul a5,a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 + c00301fa: 1782 slli a5,a5,0x20 + c00301fc: 9381 srli a5,a5,0x20 + c00301fe: 0785 addi a5,a5,1 + c0030200: 02c787b3 mul a5,a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0030034: 04000637 lui a2,0x4000 - c0030038: 167d addi a2,a2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5299 + c0030204: 04000637 lui a2,0x4000 + c0030208: 167d addi a2,a2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5307 h = prop_hash_end(sh)[-h - 1]; - c003003a: 97b6 add a5,a5,a3 - c003003c: 0007e783 lwu a5,0(a5) + c003020a: 97b6 add a5,a5,a3 + c003020c: 0007e783 lwu a5,0(a5) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c0030040: 04068693 addi a3,a3,64 + c0030210: 04068693 addi a3,a3,64 find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5309 while (h) { - c0030044: e78d bnez a5,c003006e + c0030214: e78d bnez a5,c003023e JS_SetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9770 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9778 if (is_strict_mode(ctx)) - c0030046: 8522 mv a0,s0 - c0030048: 852d40ef jal ra,c000409a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9771 + c0030216: 8522 mv a0,s0 + c0030218: e83d30ef jal ra,c000409a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9779 flags |= JS_PROP_NO_ADD; - c003004c: 67e1 lui a5,0x18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9770 + c003021c: 67e1 lui a5,0x18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9778 if (is_strict_mode(ctx)) - c003004e: e111 bnez a0,c0030052 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9769 + c003021e: e111 bnez a0,c0030222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9777 flags = JS_PROP_THROW_STRICT; - c0030050: 67a1 lui a5,0x8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9772 + c0030220: 67a1 lui a5,0x8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9780 return JS_SetPropertyInternal(ctx, ctx->global_obj, prop, val, ctx->global_obj, flags); - c0030052: 16843803 ld a6,360(s0) # ffffffff80000168 <_ebss+0xfffffffebfeff042> - c0030056: 17043883 ld a7,368(s0) - c003005a: e03e sd a5,0(sp) - c003005c: 6742 ld a4,16(sp) - c003005e: 67e2 ld a5,24(sp) - c0030060: 86ca mv a3,s2 - c0030062: 85c2 mv a1,a6 - c0030064: 8646 mv a2,a7 - c0030066: 8522 mv a0,s0 - c0030068: 876e20ef jal ra,c00120de - c003006c: a889 j c00300be + c0030222: 16843803 ld a6,360(s0) # ffffffff80000168 <_ebss+0xfffffffebfeff042> + c0030226: 17043883 ld a7,368(s0) + c003022a: e03e sd a5,0(sp) + c003022c: 6742 ld a4,16(sp) + c003022e: 67e2 ld a5,24(sp) + c0030230: 86ca mv a3,s2 + c0030232: 85c2 mv a1,a6 + c0030234: 8646 mv a2,a7 + c0030236: 8522 mv a0,s0 + c0030238: f95e10ef jal ra,c00121cc + c003023c: a889 j c003028e find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5310 pr = &prop[h - 1]; - c003006e: 00379493 slli s1,a5,0x3 - c0030072: 14e1 addi s1,s1,-8 - c0030074: 94b6 add s1,s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5303 + c003023e: 00379493 slli s1,a5,0x3 + c0030242: 14e1 addi s1,s1,-8 + c0030244: 94b6 add s1,s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5311 if (likely(pr->atom == atom)) { - c0030076: 40c8 lw a0,4(s1) - c0030078: 03251063 bne a0,s2,c0030098 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5304 + c0030246: 40c8 lw a0,4(s1) + c0030248: 03251063 bne a0,s2,c0030268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5312 *ppr = &p->prop[h - 1]; - c003007c: 718c ld a1,32(a1) - c003007e: 0792 slli a5,a5,0x4 - c0030080: 17c1 addi a5,a5,-16 - c0030082: 95be add a1,a1,a5 + c003024c: 718c ld a1,32(a1) + c003024e: 0792 slli a5,a5,0x4 + c0030250: 17c1 addi a5,a5,-16 + c0030252: 95be add a1,a1,a5 JS_SetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9755 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9763 if (flag != 1) { - c0030084: 4785 li a5,1 - c0030086: 00f71e63 bne a4,a5,c00300a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9766 + c0030254: 4785 li a5,1 + c0030256: 00f71e63 bne a4,a5,c0030272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9774 set_value(ctx, &pr->u.value, val); - c003008a: 6642 ld a2,16(sp) - c003008c: 66e2 ld a3,24(sp) - c003008e: 8522 mv a0,s0 - c0030090: ef3d70ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9767 + c003025a: 6642 ld a2,16(sp) + c003025c: 66e2 ld a3,24(sp) + c003025e: 8522 mv a0,s0 + c0030260: e11d70ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9775 return 0; - c0030094: 4501 li a0,0 - c0030096: a025 j c00300be + c0030264: 4501 li a0,0 + c0030266: a025 j c003028e find_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5316 h = pr->hash_next; - c0030098: 409c lw a5,0(s1) - c003009a: 8ff1 and a5,a5,a2 - c003009c: 1782 slli a5,a5,0x20 - c003009e: 9381 srli a5,a5,0x20 - c00300a0: b755 j c0030044 + c0030268: 409c lw a5,0(s1) + c003026a: 8ff1 and a5,a5,a2 + c003026c: 1782 slli a5,a5,0x20 + c003026e: 9381 srli a5,a5,0x20 + c0030270: b755 j c0030214 JS_SetGlobalVar(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9764 if (unlikely(JS_IsUninitialized(pr->u.value))) { - c00300a2: 4598 lw a4,8(a1) - c00300a4: 4791 li a5,4 - c00300a6: 02f71263 bne a4,a5,c00300ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9757 + c0030272: 4598 lw a4,8(a1) + c0030274: 4791 li a5,4 + c0030276: 02f71263 bne a4,a5,c003029a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9765 JS_FreeValue(ctx, val); - c00300aa: 65c2 ld a1,16(sp) - c00300ac: 6662 ld a2,24(sp) - c00300ae: 8522 mv a0,s0 - c00300b0: a89d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9758 + c003027a: 65c2 ld a1,16(sp) + c003027c: 6662 ld a2,24(sp) + c003027e: 8522 mv a0,s0 + c0030280: 9a7d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9766 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c00300b4: 40cc lw a1,4(s1) - c00300b6: 8522 mv a0,s0 - c00300b8: 821e40ef jal ra,c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9763 + c0030284: 40cc lw a1,4(s1) + c0030286: 8522 mv a0,s0 + c0030288: f3ee40ef jal ra,c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9771 return JS_ThrowTypeErrorReadOnly(ctx, JS_PROP_THROW, prop); - c00300bc: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9773 -} - c00300be: 70e2 ld ra,56(sp) - c00300c0: 7442 ld s0,48(sp) - c00300c2: 74a2 ld s1,40(sp) - c00300c4: 7902 ld s2,32(sp) - c00300c6: 6121 addi sp,sp,64 - c00300c8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9761 + c003028c: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9781 +} + c003028e: 70e2 ld ra,56(sp) + c0030290: 7442 ld s0,48(sp) + c0030292: 74a2 ld s1,40(sp) + c0030294: 7902 ld s2,32(sp) + c0030296: 6121 addi sp,sp,64 + c0030298: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9769 if (unlikely(!(prs->flags & JS_PROP_WRITABLE))) { - c00300ca: 4098 lw a4,0(s1) - c00300cc: 01a7571b srliw a4,a4,0x1a - c00300d0: 8b09 andi a4,a4,2 - c00300d2: ff45 bnez a4,c003008a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9762 + c003029a: 4098 lw a4,0(s1) + c003029c: 01a7571b srliw a4,a4,0x1a + c00302a0: 8b09 andi a4,a4,2 + c00302a2: ff45 bnez a4,c003025a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9770 JS_FreeValue(ctx, val); - c00300d4: 65c2 ld a1,16(sp) - c00300d6: 6662 ld a2,24(sp) - c00300d8: 8522 mv a0,s0 - c00300da: a5fd70ef jal ra,c0007b38 + c00302a4: 65c2 ld a1,16(sp) + c00302a6: 6662 ld a2,24(sp) + c00302a8: 8522 mv a0,s0 + c00302aa: 97dd70ef jal ra,c0007c26 JS_ThrowTypeErrorReadOnly(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6792 JS_ThrowTypeErrorAtom(ctx, "'%s' is read-only", atom); - c00300de: 0002d697 auipc a3,0x2d - c00300e2: ef268693 addi a3,a3,-270 # c005cfd0 - c00300e6: 0002d617 auipc a2,0x2d - c00300ea: fea60613 addi a2,a2,-22 # c005d0d0 - c00300ee: 85ca mv a1,s2 - c00300f0: 8522 mv a0,s0 - c00300f2: be0e30ef jal ra,c00134d2 <__JS_ThrowTypeErrorAtom> - c00300f6: b7d9 j c00300bc - -00000000c00300f8 : + c00302ae: 0002d697 auipc a3,0x2d + c00302b2: f5268693 addi a3,a3,-174 # c005d200 + c00302b6: 0002d617 auipc a2,0x2d + c00302ba: 04a60613 addi a2,a2,74 # c005d300 + c00302be: 85ca mv a1,s2 + c00302c0: 8522 mv a0,s0 + c00302c2: afee30ef jal ra,c00135c0 <__JS_ThrowTypeErrorAtom> + c00302c6: b7d9 j c003028c + +00000000c00302c8 : JS_SetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:744 int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj, @@ -129695,17015 +129893,17015 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj, static inline int JS_SetProperty(JSContext *ctx, JSValueConst this_obj, JSAtom prop, JSValue val) { - c00300f8: 7139 addi sp,sp,-64 + c00302c8: 7139 addi sp,sp,-64 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:745 return JS_SetPropertyInternal(ctx, this_obj, prop, val, this_obj, JS_PROP_THROW); - c00300fa: 6811 lui a6,0x4 - c00300fc: e042 sd a6,0(sp) - c00300fe: 88b2 mv a7,a2 - c0030100: 882e mv a6,a1 + c00302ca: 6811 lui a6,0x4 + c00302cc: e042 sd a6,0(sp) + c00302ce: 88b2 mv a7,a2 + c00302d0: 882e mv a6,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:744 { - c0030102: fc06 sd ra,56(sp) + c00302d2: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:745 return JS_SetPropertyInternal(ctx, this_obj, prop, val, this_obj, JS_PROP_THROW); - c0030104: fdbe10ef jal ra,c00120de + c00302d4: ef9e10ef jal ra,c00121cc /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:746 } - c0030108: 70e2 ld ra,56(sp) - c003010a: 6121 addi sp,sp,64 - c003010c: 8082 ret + c00302d8: 70e2 ld ra,56(sp) + c00302da: 6121 addi sp,sp,64 + c00302dc: 8082 ret -00000000c003010e : +00000000c00302de : js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43603 -{ - c003010e: 7155 addi sp,sp,-208 - c0030110: f94a sd s2,176(sp) - c0030112: e432 sd a2,8(sp) - c0030114: e586 sd ra,200(sp) - c0030116: e1a2 sd s0,192(sp) - c0030118: fd26 sd s1,184(sp) - c003011a: f54e sd s3,168(sp) - c003011c: f152 sd s4,160(sp) - c003011e: ed56 sd s5,152(sp) - c0030120: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43611 +{ + c00302de: 7155 addi sp,sp,-208 + c00302e0: f94a sd s2,176(sp) + c00302e2: e432 sd a2,8(sp) + c00302e4: e586 sd ra,200(sp) + c00302e6: e1a2 sd s0,192(sp) + c00302e8: fd26 sd s1,184(sp) + c00302ea: f54e sd s3,168(sp) + c00302ec: f152 sd s4,160(sp) + c00302ee: ed56 sd s5,152(sp) + c00302f0: e02e sd a1,0(sp) js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0030122: 2601 sext.w a2,a2 - c0030124: 57fd li a5,-1 + c00302f2: 2601 sext.w a2,a2 + c00302f4: 57fd li a5,-1 js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43603 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43611 { - c0030126: 892a mv s2,a0 + c00302f6: 892a mv s2,a0 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0030128: 04f61a63 bne a2,a5,c003017c - c003012c: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 + c00302f8: 04f61a63 bne a2,a5,c003034c + c00302fc: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c003012e: 0065d583 lhu a1,6(a1) - c0030132: 47c9 li a5,18 - c0030134: 04f59463 bne a1,a5,c003017c + c00302fe: 0065d583 lhu a1,6(a1) + c0030302: 47c9 li a5,18 + c0030304: 04f59463 bne a1,a5,c003034c js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43619 pattern1 = argv[0]; - c0030138: 671c ld a5,8(a4) - c003013a: 6314 ld a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43612 + c0030308: 671c ld a5,8(a4) + c003030a: 6314 ld a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43620 flags1 = argv[1]; - c003013c: 01073803 ld a6,16(a4) # 20010 <__clzdi2-0xbffdfff0> - c0030140: 6f18 ld a4,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43611 + c003030c: 01073803 ld a6,16(a4) # 20010 <__clzdi2-0xbffdfff0> + c0030310: 6f18 ld a4,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43619 pattern1 = argv[0]; - c0030142: ec3e sd a5,24(sp) - c0030144: e836 sd a3,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43612 + c0030312: ec3e sd a5,24(sp) + c0030314: e836 sd a3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43620 flags1 = argv[1]; - c0030146: f042 sd a6,32(sp) - c0030148: f43a sd a4,40(sp) + c0030316: f042 sd a6,32(sp) + c0030318: f43a sd a4,40(sp) js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c003014a: 2781 sext.w a5,a5 - c003014c: 0ac79c63 bne a5,a2,c0030204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 + c003031a: 2781 sext.w a5,a5 + c003031c: 0ac79c63 bne a5,a2,c00303d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0030150: 0066d783 lhu a5,6(a3) - c0030154: 10b79163 bne a5,a1,c0030256 + c0030320: 0066d783 lhu a5,6(a3) + c0030324: 10b79163 bne a5,a1,c0030426 js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43615 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43623 if (!JS_IsUndefined(flags1)) - c0030158: 2701 sext.w a4,a4 - c003015a: 478d li a5,3 - c003015c: 04f70263 beq a4,a5,c00301a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 -} - c0030160: 640e ld s0,192(sp) - c0030162: 60ae ld ra,200(sp) - c0030164: 74ea ld s1,184(sp) - c0030166: 794a ld s2,176(sp) - c0030168: 79aa ld s3,168(sp) - c003016a: 7a0a ld s4,160(sp) - c003016c: 6aea ld s5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43616 + c0030328: 2701 sext.w a4,a4 + c003032a: 478d li a5,3 + c003032c: 04f70263 beq a4,a5,c0030370 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 +} + c0030330: 640e ld s0,192(sp) + c0030332: 60ae ld ra,200(sp) + c0030334: 74ea ld s1,184(sp) + c0030336: 794a ld s2,176(sp) + c0030338: 79aa ld s3,168(sp) + c003033a: 7a0a ld s4,160(sp) + c003033c: 6aea ld s5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43624 return JS_ThrowTypeError(ctx, "flags must be undefined"); - c003016e: 00030597 auipc a1,0x30 - c0030172: 24258593 addi a1,a1,578 # c00603b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 + c003033e: 00030597 auipc a1,0x30 + c0030342: 2d258593 addi a1,a1,722 # c0060610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 } - c0030176: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43616 + c0030346: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43624 return JS_ThrowTypeError(ctx, "flags must be undefined"); - c0030178: a7ee306f j c00133f6 + c0030348: 99ce306f j c00134e4 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43511 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c003017c: 45c9 li a1,18 - c003017e: 854a mv a0,s2 - c0030180: bd0e30ef jal ra,c0013550 + c003034c: 45c9 li a1,18 + c003034e: 854a mv a0,s2 + c0030350: aeee30ef jal ra,c001363e js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 } - c0030184: 60ae ld ra,200(sp) - c0030186: 640e ld s0,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43637 + c0030354: 60ae ld ra,200(sp) + c0030356: 640e ld s0,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43645 return JS_EXCEPTION; - c0030188: 4799 li a5,6 - c003018a: f882 sd zero,112(sp) - c003018c: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 -} - c003018e: 7546 ld a0,112(sp) - c0030190: 75e6 ld a1,120(sp) - c0030192: 74ea ld s1,184(sp) - c0030194: 794a ld s2,176(sp) - c0030196: 79aa ld s3,168(sp) - c0030198: 7a0a ld s4,160(sp) - c003019a: 6aea ld s5,152(sp) - c003019c: 6169 addi sp,sp,208 - c003019e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43617 + c0030358: 4799 li a5,6 + c003035a: f882 sd zero,112(sp) + c003035c: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 +} + c003035e: 7546 ld a0,112(sp) + c0030360: 75e6 ld a1,120(sp) + c0030362: 74ea ld s1,184(sp) + c0030364: 794a ld s2,176(sp) + c0030366: 79aa ld s3,168(sp) + c0030368: 7a0a ld s4,160(sp) + c003036a: 6aea ld s5,152(sp) + c003036c: 6169 addi sp,sp,208 + c003036e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43625 pattern = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re1->pattern)); - c00301a0: 7a80 ld s0,48(a3) + c0030370: 7a80 ld s0,48(a3) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c00301a2: 401c lw a5,0(s0) - c00301a4: 2785 addiw a5,a5,1 - c00301a6: c01c sw a5,0(s0) + c0030372: 401c lw a5,0(s0) + c0030374: 2785 addiw a5,a5,1 + c0030376: c01c sw a5,0(s0) js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43626 bc = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re1->bytecode)); - c00301a8: 7e84 ld s1,56(a3) + c0030378: 7e84 ld s1,56(a3) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c00301aa: 409c lw a5,0(s1) - c00301ac: 2785 addiw a5,a5,1 - c00301ae: c09c sw a5,0(s1) + c003037a: 409c lw a5,0(s1) + c003037c: 2785 addiw a5,a5,1 + c003037e: c09c sw a5,0(s1) js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43639 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, re->pattern)); - c00301b0: 030a3583 ld a1,48(s4) - c00301b4: 57e5 li a5,-7 - c00301b6: 5665 li a2,-7 - c00301b8: 854a mv a0,s2 - c00301ba: ecbe sd a5,88(sp) - c00301bc: e8ae sd a1,80(sp) - c00301be: 97bd70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43632 + c0030380: 030a3583 ld a1,48(s4) + c0030384: 57e5 li a5,-7 + c0030386: 5665 li a2,-7 + c0030388: 854a mv a0,s2 + c003038a: ecbe sd a5,88(sp) + c003038c: e8ae sd a1,80(sp) + c003038e: 899d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43640 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, re->bytecode)); - c00301c2: 038a3583 ld a1,56(s4) - c00301c6: 5665 li a2,-7 - c00301c8: 854a mv a0,s2 - c00301ca: 96fd70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43635 + c0030392: 038a3583 ld a1,56(s4) + c0030396: 5665 li a2,-7 + c0030398: 854a mv a0,s2 + c003039a: 88dd70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c00301ce: 6582 ld a1,0(sp) - c00301d0: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43633 + c003039e: 6582 ld a1,0(sp) + c00303a0: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43641 re->pattern = JS_VALUE_GET_STRING(pattern); - c00301d2: 028a3823 sd s0,48(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43634 + c00303a2: 028a3823 sd s0,48(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43642 re->bytecode = JS_VALUE_GET_STRING(bc); - c00301d6: 029a3c23 sd s1,56(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43635 - if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c00301da: 4701 li a4,0 - c00301dc: 4781 li a5,0 - c00301de: 05600693 li a3,86 - c00301e2: 854a mv a0,s2 - c00301e4: f15ff0ef jal ra,c00300f8 - c00301e8: f8054ee3 bltz a0,c0030184 + c00303a6: 029a3c23 sd s1,56(s4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 -} - c00301ec: 640e ld s0,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43638 + if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, + c00303aa: 4701 li a4,0 + c00303ac: 4781 li a5,0 + c00303ae: 05600693 li a3,86 + c00303b2: 854a mv a0,s2 + c00303b4: f15ff0ef jal ra,c00302c8 + c00303b8: f8054ee3 bltz a0,c0030354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 +} + c00303bc: 640e ld s0,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43646 return JS_DupValue(ctx, this_val); - c00301ee: 6502 ld a0,0(sp) - c00301f0: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43643 -} - c00301f2: 60ae ld ra,200(sp) - c00301f4: 74ea ld s1,184(sp) - c00301f6: 794a ld s2,176(sp) - c00301f8: 79aa ld s3,168(sp) - c00301fa: 7a0a ld s4,160(sp) - c00301fc: 6aea ld s5,152(sp) - c00301fe: 6169 addi sp,sp,208 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43638 + c00303be: 6502 ld a0,0(sp) + c00303c0: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43651 +} + c00303c2: 60ae ld ra,200(sp) + c00303c4: 74ea ld s1,184(sp) + c00303c6: 794a ld s2,176(sp) + c00303c8: 79aa ld s3,168(sp) + c00303ca: 7a0a ld s4,160(sp) + c00303cc: 6aea ld s5,152(sp) + c00303ce: 6169 addi sp,sp,208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43646 return JS_DupValue(ctx, this_val); - c0030200: c6ed606f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43621 + c00303d0: b8cd606f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43629 if (JS_IsUndefined(pattern1)) - c0030204: 470d li a4,3 - c0030206: 04e79863 bne a5,a4,c0030256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43622 + c00303d4: 470d li a4,3 + c00303d6: 04e79863 bne a5,a4,c0030426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43630 pattern = JS_AtomToString(ctx, JS_ATOM_empty_string); - c003020a: 02f00593 li a1,47 - c003020e: 92fe90ef jal ra,c0019b3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43624 + c00303da: 02f00593 li a1,47 + c00303de: 92fe90ef jal ra,c0019d0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43632 pattern = JS_ToString(ctx, pattern1); - c0030212: e4ae sd a1,72(sp) + c00303e2: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0030214: 6626 ld a2,72(sp) + c00303e4: 6626 ld a2,72(sp) js_regexp_compile(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43633 if (JS_IsException(pattern)) - c0030216: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43624 + c00303e6: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43632 pattern = JS_ToString(ctx, pattern1); - c0030218: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43625 + c00303e8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43633 if (JS_IsException(pattern)) - c003021a: 0006079b sext.w a5,a2 - c003021e: 05578263 beq a5,s5,c0030262 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43627 + c00303ea: 0006079b sext.w a5,a2 + c00303ee: 05578263 beq a5,s5,c0030432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43635 bc = js_compile_regexp(ctx, pattern, flags1); - c0030222: 7682 ld a3,32(sp) - c0030224: 7722 ld a4,40(sp) - c0030226: e0aa sd a0,64(sp) - c0030228: 85aa mv a1,a0 - c003022a: 854a mv a0,s2 - c003022c: ce4ef0ef jal ra,c001f710 - c0030230: f82a sd a0,48(sp) - c0030232: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43628 + c00303f2: 7682 ld a3,32(sp) + c00303f4: 7722 ld a4,40(sp) + c00303f6: e0aa sd a0,64(sp) + c00303f8: 85aa mv a1,a0 + c00303fa: 854a mv a0,s2 + c00303fc: ce4ef0ef jal ra,c001f8e0 + c0030400: f82a sd a0,48(sp) + c0030402: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43636 if (JS_IsException(bc)) - c0030234: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43627 + c0030404: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43635 bc = js_compile_regexp(ctx, pattern, flags1); - c0030238: 84aa mv s1,a0 - c003023a: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43628 + c0030408: 84aa mv s1,a0 + c003040a: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43636 if (JS_IsException(bc)) - c003023c: f7579ae3 bne a5,s5,c00301b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43640 (discriminator 1) + c003040c: f7579ae3 bne a5,s5,c0030380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43648 (discriminator 1) JS_FreeValue(ctx, pattern); - c0030240: 6626 ld a2,72(sp) - c0030242: 85a2 mv a1,s0 - c0030244: 854a mv a0,s2 - c0030246: 8f3d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43641 (discriminator 1) + c0030410: 6626 ld a2,72(sp) + c0030412: 85a2 mv a1,s0 + c0030414: 854a mv a0,s2 + c0030416: 811d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43649 (discriminator 1) JS_FreeValue(ctx, bc); - c003024a: 85a6 mv a1,s1 - c003024c: 864e mv a2,s3 - c003024e: 854a mv a0,s2 - c0030250: 8e9d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43642 (discriminator 1) + c003041a: 85a6 mv a1,s1 + c003041c: 864e mv a2,s3 + c003041e: 854a mv a0,s2 + c0030420: 807d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43650 (discriminator 1) return JS_EXCEPTION; - c0030254: bf05 j c0030184 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43624 + c0030424: bf05 j c0030354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43632 pattern = JS_ToString(ctx, pattern1); - c0030256: 65c2 ld a1,16(sp) - c0030258: 6662 ld a2,24(sp) - c003025a: 854a mv a0,s2 - c003025c: d7aea0ef jal ra,c001a7d6 - c0030260: bf4d j c0030212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43620 + c0030426: 65c2 ld a1,16(sp) + c0030428: 6662 ld a2,24(sp) + c003042a: 854a mv a0,s2 + c003042c: d7aea0ef jal ra,c001a9a6 + c0030430: bf4d j c00303e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43628 bc = JS_UNDEFINED; - c0030262: 498d li s3,3 - c0030264: 4481 li s1,0 - c0030266: bfe9 j c0030240 + c0030432: 498d li s3,3 + c0030434: 4481 li s1,0 + c0030436: bfe9 j c0030410 -00000000c0030268 : +00000000c0030438 : js_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38884 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38892 { - c0030268: 7171 addi sp,sp,-176 - c003026a: e54e sd s3,136(sp) - c003026c: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38888 + c0030438: 7171 addi sp,sp,-176 + c003043a: e54e sd s3,136(sp) + c003043c: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38896 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_ARRAY); - c003026e: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38884 -{ - c0030270: f122 sd s0,160(sp) - c0030272: ed26 sd s1,152(sp) - c0030274: e94a sd s2,144(sp) - c0030276: f506 sd ra,168(sp) - c0030278: 893a mv s2,a4 - c003027a: e152 sd s4,128(sp) - c003027c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38888 + c003043e: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38892 +{ + c0030440: f122 sd s0,160(sp) + c0030442: ed26 sd s1,152(sp) + c0030444: e94a sd s2,144(sp) + c0030446: f506 sd ra,168(sp) + c0030448: 893a mv s2,a4 + c003044a: e152 sd s4,128(sp) + c003044c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38896 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_ARRAY); - c003027e: f6ce60ef jal ra,c00169ea - c0030282: f02a sd a0,32(sp) - c0030284: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38889 + c003044e: f6ce60ef jal ra,c0016bba + c0030452: f02a sd a0,32(sp) + c0030454: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38897 if (JS_IsException(obj)) - c0030286: 0005871b sext.w a4,a1 - c003028a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38888 + c0030456: 0005871b sext.w a4,a1 + c003045a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38896 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_ARRAY); - c003028c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38889 + c003045c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38897 if (JS_IsException(obj)) - c003028e: 00f71e63 bne a4,a5,c00302aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38890 + c003045e: 00f71e63 bne a4,a5,c003047a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38898 return obj; - c0030292: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38903 + c0030462: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 return obj; - c0030294: fc22 sd s0,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38907 -} - c0030296: 70aa ld ra,168(sp) - c0030298: 740a ld s0,160(sp) - c003029a: 7542 ld a0,48(sp) - c003029c: 75e2 ld a1,56(sp) - c003029e: 64ea ld s1,152(sp) - c00302a0: 694a ld s2,144(sp) - c00302a2: 69aa ld s3,136(sp) - c00302a4: 6a0a ld s4,128(sp) - c00302a6: 614d addi sp,sp,176 - c00302a8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38891 + c0030464: fc22 sd s0,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38915 +} + c0030466: 70aa ld ra,168(sp) + c0030468: 740a ld s0,160(sp) + c003046a: 7542 ld a0,48(sp) + c003046c: 75e2 ld a1,56(sp) + c003046e: 64ea ld s1,152(sp) + c0030470: 694a ld s2,144(sp) + c0030472: 69aa ld s3,136(sp) + c0030474: 6a0a ld s4,128(sp) + c0030476: 614d addi sp,sp,176 + c0030478: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38899 if (argc == 1 && JS_IsNumber(argv[0])) { - c00302aa: 4785 li a5,1 - c00302ac: 4a01 li s4,0 - c00302ae: 0af99263 bne s3,a5,c0030352 + c003047a: 4785 li a5,1 + c003047c: 4a01 li s4,0 + c003047e: 0af99263 bne s3,a5,c0030522 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 (discriminator 1) int tag = JS_VALUE_GET_TAG(v); - c00302b2: 00892783 lw a5,8(s2) + c0030482: 00892783 lw a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 (discriminator 1) return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c00302b6: c781 beqz a5,c00302be + c0030486: c781 beqz a5,c003048e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 - c00302b8: 471d li a4,7 - c00302ba: 08e79c63 bne a5,a4,c0030352 + c0030488: 471d li a4,7 + c003048a: 08e79c63 bne a5,a4,c0030522 js_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38893 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38901 if (JS_ToArrayLengthFree(ctx, &len, JS_DupValue(ctx, argv[0]), TRUE)) - c00302be: 00093503 ld a0,0(s2) - c00302c2: 00893583 ld a1,8(s2) - c00302c6: ba8d60ef jal ra,c000666e - c00302ca: 862a mv a2,a0 - c00302cc: 86ae mv a3,a1 - c00302ce: 4705 li a4,1 - c00302d0: 180c addi a1,sp,48 - c00302d2: 8526 mv a0,s1 - c00302d4: f1bec0ef jal ra,c001d1ee - c00302d8: e51d bnez a0,c0030306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38895 + c003048e: 00093503 ld a0,0(s2) + c0030492: 00893583 ld a1,8(s2) + c0030496: ac6d60ef jal ra,c000675c + c003049a: 862a mv a2,a0 + c003049c: 86ae mv a3,a1 + c003049e: 4705 li a4,1 + c00304a0: 180c addi a1,sp,48 + c00304a2: 8526 mv a0,s1 + c00304a4: f1bec0ef jal ra,c001d3be + c00304a8: e51d bnez a0,c00304d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38903 if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewUint32(ctx, len)) < 0) - c00302da: 57c2 lw a5,48(sp) + c00304aa: 57c2 lw a5,48(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c00302dc: 0007871b sext.w a4,a5 - c00302e0: 0207cc63 bltz a5,c0030318 + c00304ac: 0007871b sext.w a4,a5 + c00304b0: 0207cc63 bltz a5,c00304e8 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00302e4: da82 sw zero,116(sp) - c00302e6: d8ba sw a4,112(sp) - c00302e8: 77c6 ld a5,112(sp) - c00302ea: f482 sd zero,104(sp) - c00302ec: f0be sd a5,96(sp) - c00302ee: 4781 li a5,0 + c00304b4: da82 sw zero,116(sp) + c00304b6: d8ba sw a4,112(sp) + c00304b8: 77c6 ld a5,112(sp) + c00304ba: f482 sd zero,104(sp) + c00304bc: f0be sd a5,96(sp) + c00304be: 4781 li a5,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c00302f0: d0ba sw a4,96(sp) + c00304c0: d0ba sw a4,96(sp) js_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38895 - c00302f2: 7706 ld a4,96(sp) - c00302f4: 7582 ld a1,32(sp) - c00302f6: 7622 ld a2,40(sp) - c00302f8: 03000693 li a3,48 - c00302fc: 8526 mv a0,s1 - c00302fe: dfbff0ef jal ra,c00300f8 - c0030302: 04055c63 bgez a0,c003035a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38903 + c00304c2: 7706 ld a4,96(sp) + c00304c4: 7582 ld a1,32(sp) + c00304c6: 7622 ld a2,40(sp) + c00304c8: 03000693 li a3,48 + c00304cc: 8526 mv a0,s1 + c00304ce: dfbff0ef jal ra,c00302c8 + c00304d2: 04055c63 bgez a0,c003052a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38913 JS_FreeValue(ctx, obj); - c0030306: 7582 ld a1,32(sp) - c0030308: 8622 mv a2,s0 - c003030a: 8526 mv a0,s1 - c003030c: 82dd70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38906 + c00304d6: 7582 ld a1,32(sp) + c00304d8: 8622 mv a2,s0 + c00304da: 8526 mv a0,s1 + c00304dc: f4ad70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38914 return JS_EXCEPTION; - c0030310: 4799 li a5,6 - c0030312: f802 sd zero,48(sp) - c0030314: fc3e sd a5,56(sp) - c0030316: b741 j c0030296 + c00304e0: 4799 li a5,6 + c00304e2: f802 sd zero,48(sp) + c00304e4: fc3e sd a5,56(sp) + c00304e6: b741 j c0030466 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0030318: d21787d3 fcvt.d.wu fa5,a5 - c003031c: 479d li a5,7 - c003031e: e2078753 fmv.x.d a4,fa5 + c00304e8: d21787d3 fcvt.d.wu fa5,a5 + c00304ec: 479d li a5,7 + c00304ee: e2078753 fmv.x.d a4,fa5 js_array_constructor(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0030322: b0be fsd fa5,96(sp) - c0030324: 2701 sext.w a4,a4 - c0030326: b7e9 j c00302f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38899 + c00304f2: b0be fsd fa5,96(sp) + c00304f4: 2701 sext.w a4,a4 + c00304f6: b7e9 j c00304c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38907 if (JS_SetPropertyUint32(ctx, obj, i, JS_DupValue(ctx, argv[i])) < 0) - c0030328: 004a1793 slli a5,s4,0x4 - c003032c: 97ca add a5,a5,s2 - c003032e: 6388 ld a0,0(a5) - c0030330: 678c ld a1,8(a5) - c0030332: e436 sd a3,8(sp) - c0030334: 0a05 addi s4,s4,1 - c0030336: b38d60ef jal ra,c000666e - c003033a: 87ae mv a5,a1 - c003033c: f4ae sd a1,104(sp) - c003033e: 66a2 ld a3,8(sp) - c0030340: 7582 ld a1,32(sp) - c0030342: 872a mv a4,a0 - c0030344: f0aa sd a0,96(sp) - c0030346: 8622 mv a2,s0 - c0030348: 8526 mv a0,s1 - c003034a: d56e20ef jal ra,c00128a0 - c003034e: fa054ce3 bltz a0,c0030306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38898 (discriminator 1) + c00304f8: 004a1793 slli a5,s4,0x4 + c00304fc: 97ca add a5,a5,s2 + c00304fe: 6388 ld a0,0(a5) + c0030500: 678c ld a1,8(a5) + c0030502: e436 sd a3,8(sp) + c0030504: 0a05 addi s4,s4,1 + c0030506: a56d60ef jal ra,c000675c + c003050a: 87ae mv a5,a1 + c003050c: f4ae sd a1,104(sp) + c003050e: 66a2 ld a3,8(sp) + c0030510: 7582 ld a1,32(sp) + c0030512: 872a mv a4,a0 + c0030514: f0aa sd a0,96(sp) + c0030516: 8622 mv a2,s0 + c0030518: 8526 mv a0,s1 + c003051a: c74e20ef jal ra,c001298e + c003051e: fa054ce3 bltz a0,c00304d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38906 (discriminator 1) for(i = 0; i < argc; i++) { - c0030352: 000a069b sext.w a3,s4 - c0030356: fd36c9e3 blt a3,s3,c0030328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38903 + c0030522: 000a069b sext.w a3,s4 + c0030526: fd36c9e3 blt a3,s3,c00304f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 return obj; - c003035a: 7782 ld a5,32(sp) - c003035c: f83e sd a5,48(sp) - c003035e: bf1d j c0030294 + c003052a: 7782 ld a5,32(sp) + c003052c: f83e sd a5,48(sp) + c003052e: bf1d j c0030464 -00000000c0030360 : +00000000c0030530 : JS_SetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8877 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8885 { - c0030360: 711d addi sp,sp,-96 - c0030362: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8881 + c0030530: 711d addi sp,sp,-96 + c0030532: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8889 if ((uint64_t)idx <= INT32_MAX) { - c0030364: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8877 -{ - c0030368: ec86 sd ra,88(sp) - c003036a: e8a2 sd s0,80(sp) - c003036c: e4a6 sd s1,72(sp) - c003036e: e0ca sd s2,64(sp) - c0030370: e82e sd a1,16(sp) - c0030372: ec32 sd a2,24(sp) - c0030374: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8881 + c0030534: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8885 +{ + c0030538: ec86 sd ra,88(sp) + c003053a: e8a2 sd s0,80(sp) + c003053c: e4a6 sd s1,72(sp) + c003053e: e0ca sd s2,64(sp) + c0030540: e82e sd a1,16(sp) + c0030542: ec32 sd a2,24(sp) + c0030544: e03a sd a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8889 if ((uint64_t)idx <= INT32_MAX) { - c0030376: fff7c793 not a5,a5 - c003037a: 02d7e063 bltu a5,a3,c003039a + c0030546: fff7c793 not a5,a5 + c003054a: 02d7e063 bltu a5,a3,c003056a JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003037e: f802 sd zero,48(sp) + c003054e: f802 sd zero,48(sp) JS_SetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8883 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8891 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), val, - c0030380: d836 sw a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8894 + c0030550: d836 sw a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 } - c0030382: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8883 + c0030552: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8891 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), val, - c0030384: 6822 ld a6,8(sp) - c0030386: 76c2 ld a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8894 + c0030554: 6822 ld a6,8(sp) + c0030556: 76c2 ld a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 } - c0030388: 60e6 ld ra,88(sp) - c003038a: 64a6 ld s1,72(sp) - c003038c: 6906 ld s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8883 + c0030558: 60e6 ld ra,88(sp) + c003055a: 64a6 ld s1,72(sp) + c003055c: 6906 ld s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8891 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), val, - c003038e: 87ba mv a5,a4 - c0030390: 6891 lui a7,0x4 - c0030392: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8894 + c003055e: 87ba mv a5,a4 + c0030560: 6891 lui a7,0x4 + c0030562: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 } - c0030394: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8883 + c0030564: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8891 return JS_SetPropertyValue(ctx, this_obj, JS_NewInt32(ctx, idx), val, - c0030396: af2e206f j c0012688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8886 + c0030566: a10e206f j c0012776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8894 prop = JS_NewAtomInt64(ctx, idx); - c003039a: 85b6 mv a1,a3 - c003039c: 842a mv s0,a0 - c003039e: eade90ef jal ra,c001a24a - c00303a2: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8887 + c003056a: 85b6 mv a1,a3 + c003056c: 842a mv s0,a0 + c003056e: eade90ef jal ra,c001a41a + c0030572: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8895 if (prop == JS_ATOM_NULL) { - c00303a6: ec91 bnez s1,c00303c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8888 + c0030576: ec91 bnez s1,c0030592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8896 JS_FreeValue(ctx, val); - c00303a8: 6582 ld a1,0(sp) - c00303aa: 6622 ld a2,8(sp) - c00303ac: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8889 + c0030578: 6582 ld a1,0(sp) + c003057a: 6622 ld a2,8(sp) + c003057c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8897 return -1; - c00303ae: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8888 + c003057e: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8896 JS_FreeValue(ctx, val); - c00303b0: f88d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8894 + c0030580: ea6d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 } - c00303b4: 60e6 ld ra,88(sp) - c00303b6: 6446 ld s0,80(sp) - c00303b8: 64a6 ld s1,72(sp) - c00303ba: 854a mv a0,s2 - c00303bc: 6906 ld s2,64(sp) - c00303be: 6125 addi sp,sp,96 - c00303c0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8891 + c0030584: 60e6 ld ra,88(sp) + c0030586: 6446 ld s0,80(sp) + c0030588: 64a6 ld s1,72(sp) + c003058a: 854a mv a0,s2 + c003058c: 6906 ld s2,64(sp) + c003058e: 6125 addi sp,sp,96 + c0030590: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8899 res = JS_SetProperty(ctx, this_obj, prop, val); - c00303c2: 65c2 ld a1,16(sp) - c00303c4: 6702 ld a4,0(sp) - c00303c6: 67a2 ld a5,8(sp) - c00303c8: 6662 ld a2,24(sp) - c00303ca: 86a6 mv a3,s1 - c00303cc: 8522 mv a0,s0 - c00303ce: d2bff0ef jal ra,c00300f8 - c00303d2: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8892 + c0030592: 65c2 ld a1,16(sp) + c0030594: 6702 ld a4,0(sp) + c0030596: 67a2 ld a5,8(sp) + c0030598: 6662 ld a2,24(sp) + c003059a: 86a6 mv a3,s1 + c003059c: 8522 mv a0,s0 + c003059e: d2bff0ef jal ra,c00302c8 + c00305a2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8900 JS_FreeAtom(ctx, prop); - c00303d4: 85a6 mv a1,s1 - c00303d6: 8522 mv a0,s0 - c00303d8: 934d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8893 + c00305a4: 85a6 mv a1,s1 + c00305a6: 8522 mv a0,s0 + c00305a8: 852d70ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8901 return res; - c00303dc: bfe1 j c00303b4 + c00305ac: bfe1 j c0030584 -00000000c00303de : +00000000c00305ae : js_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39561 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39569 { - c00303de: 7175 addi sp,sp,-144 - c00303e0: e122 sd s0,128(sp) - c00303e2: fca6 sd s1,120(sp) - c00303e4: f8ca sd s2,112(sp) - c00303e6: e506 sd ra,136(sp) - c00303e8: 84aa mv s1,a0 - c00303ea: 8936 mv s2,a3 - c00303ec: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39565 + c00305ae: 7175 addi sp,sp,-144 + c00305b0: e122 sd s0,128(sp) + c00305b2: fca6 sd s1,120(sp) + c00305b4: f8ca sd s2,112(sp) + c00305b6: e506 sd ra,136(sp) + c00305b8: 84aa mv s1,a0 + c00305ba: 8936 mv s2,a3 + c00305bc: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39573 obj = JS_ToObject(ctx, this_val); - c00303ee: 9fef80ef jal ra,c00285ec - c00303f2: 862a mv a2,a0 - c00303f4: 86ae mv a3,a1 - c00303f6: e0aa sd a0,64(sp) - c00303f8: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39566 + c00305be: 9fef80ef jal ra,c00287bc + c00305c2: 862a mv a2,a0 + c00305c4: 86ae mv a3,a1 + c00305c6: e0aa sd a0,64(sp) + c00305c8: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39574 if (js_get_length64(ctx, &len, obj)) - c00303fa: 8526 mv a0,s1 - c00303fc: 102c addi a1,sp,40 - c00303fe: c40ee0ef jal ra,c001e83e - c0030402: e929 bnez a0,c0030454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39569 + c00305ca: 8526 mv a0,s1 + c00305cc: 102c addi a1,sp,40 + c00305ce: c40ee0ef jal ra,c001ea0e + c00305d2: e929 bnez a0,c0030624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39577 start = 0; - c0030404: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39570 + c00305d4: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39578 if (argc > 1 && !JS_IsUndefined(argv[1])) { - c0030406: 4785 li a5,1 - c0030408: 0327c763 blt a5,s2,c0030436 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39575 + c00305d6: 4785 li a5,1 + c00305d8: 0327c763 blt a5,s2,c0030606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39583 end = len; - c003040c: 7822 ld a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39576 + c00305dc: 7822 ld a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39584 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c003040e: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39575 + c00305de: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39583 end = len; - c0030410: fc42 sd a6,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39576 + c00305e0: fc42 sd a6,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39584 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c0030412: 0527c963 blt a5,s2,c0030464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39582 + c00305e2: 0527c963 blt a5,s2,c0030634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39590 while (start < end) { - c0030416: 76c2 ld a3,48(sp) - c0030418: 77e2 ld a5,56(sp) - c003041a: 06f6c463 blt a3,a5,c0030482 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39588 + c00305e6: 76c2 ld a3,48(sp) + c00305e8: 77e2 ld a5,56(sp) + c00305ea: 06f6c463 blt a3,a5,c0030652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39596 return obj; - c003041e: 6786 ld a5,64(sp) - c0030420: f0be sd a5,96(sp) - c0030422: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39593 -} - c0030424: 60aa ld ra,136(sp) - c0030426: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39592 + c00305ee: 6786 ld a5,64(sp) + c00305f0: f0be sd a5,96(sp) + c00305f2: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39601 +} + c00305f4: 60aa ld ra,136(sp) + c00305f6: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39600 return JS_EXCEPTION; - c0030428: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39593 -} - c003042a: 7506 ld a0,96(sp) - c003042c: 75a6 ld a1,104(sp) - c003042e: 74e6 ld s1,120(sp) - c0030430: 7946 ld s2,112(sp) - c0030432: 6149 addi sp,sp,144 - c0030434: 8082 ret + c00305f8: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39601 +} + c00305fa: 7506 ld a0,96(sp) + c00305fc: 75a6 ld a1,104(sp) + c00305fe: 74e6 ld s1,120(sp) + c0030600: 7946 ld s2,112(sp) + c0030602: 6149 addi sp,sp,144 + c0030604: 8082 ret JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0030436: 6c14 ld a3,24(s0) + c0030606: 6c14 ld a3,24(s0) js_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39570 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39578 (discriminator 1) if (argc > 1 && !JS_IsUndefined(argv[1])) { - c0030438: 478d li a5,3 - c003043a: 0006871b sext.w a4,a3 - c003043e: fcf707e3 beq a4,a5,c003040c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39571 + c0030608: 478d li a5,3 + c003060a: 0006871b sext.w a4,a3 + c003060e: fcf707e3 beq a4,a5,c00305dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39579 if (JS_ToInt64Clamp(ctx, &start, argv[1], 0, len, len)) - c0030442: 7822 ld a6,40(sp) - c0030444: 6810 ld a2,16(s0) - c0030446: 4701 li a4,0 - c0030448: 87c2 mv a5,a6 - c003044a: 180c addi a1,sp,48 - c003044c: 8526 mv a0,s1 - c003044e: b60ee0ef jal ra,c001e7ae - c0030452: dd4d beqz a0,c003040c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39591 + c0030612: 7822 ld a6,40(sp) + c0030614: 6810 ld a2,16(s0) + c0030616: 4701 li a4,0 + c0030618: 87c2 mv a5,a6 + c003061a: 180c addi a1,sp,48 + c003061c: 8526 mv a0,s1 + c003061e: b60ee0ef jal ra,c001e97e + c0030622: dd4d beqz a0,c00305dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39599 JS_FreeValue(ctx, obj); - c0030454: 6586 ld a1,64(sp) - c0030456: 6626 ld a2,72(sp) - c0030458: 8526 mv a0,s1 - c003045a: eded70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39592 + c0030624: 6586 ld a1,64(sp) + c0030626: 6626 ld a2,72(sp) + c0030628: 8526 mv a0,s1 + c003062a: dfcd70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39600 return JS_EXCEPTION; - c003045e: 4799 li a5,6 - c0030460: f082 sd zero,96(sp) - c0030462: b7c9 j c0030424 + c003062e: 4799 li a5,6 + c0030630: f082 sd zero,96(sp) + c0030632: b7c9 j c00305f4 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) - c0030464: 7414 ld a3,40(s0) + c0030634: 7414 ld a3,40(s0) js_array_fill(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39576 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39584 (discriminator 1) if (argc > 2 && !JS_IsUndefined(argv[2])) { - c0030466: 478d li a5,3 - c0030468: 0006871b sext.w a4,a3 - c003046c: faf705e3 beq a4,a5,c0030416 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39577 + c0030636: 478d li a5,3 + c0030638: 0006871b sext.w a4,a3 + c003063c: faf705e3 beq a4,a5,c00305e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39585 if (JS_ToInt64Clamp(ctx, &end, argv[2], 0, len, len)) - c0030470: 7010 ld a2,32(s0) - c0030472: 87c2 mv a5,a6 - c0030474: 4701 li a4,0 - c0030476: 182c addi a1,sp,56 - c0030478: 8526 mv a0,s1 - c003047a: b34ee0ef jal ra,c001e7ae - c003047e: dd41 beqz a0,c0030416 - c0030480: bfd1 j c0030454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39583 + c0030640: 7010 ld a2,32(s0) + c0030642: 87c2 mv a5,a6 + c0030644: 4701 li a4,0 + c0030646: 182c addi a1,sp,56 + c0030648: 8526 mv a0,s1 + c003064a: b34ee0ef jal ra,c001e97e + c003064e: dd41 beqz a0,c00305e6 + c0030650: bfd1 j c0030624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39591 if (JS_SetPropertyInt64(ctx, obj, start, - c0030482: 6008 ld a0,0(s0) - c0030484: 640c ld a1,8(s0) - c0030486: e436 sd a3,8(sp) - c0030488: 9e6d60ef jal ra,c000666e - c003048c: 87ae mv a5,a1 - c003048e: 66a2 ld a3,8(sp) - c0030490: 6586 ld a1,64(sp) - c0030492: 6626 ld a2,72(sp) - c0030494: 872a mv a4,a0 - c0030496: 8526 mv a0,s1 - c0030498: ec9ff0ef jal ra,c0030360 - c003049c: fa054ce3 bltz a0,c0030454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39586 + c0030652: 6008 ld a0,0(s0) + c0030654: 640c ld a1,8(s0) + c0030656: e436 sd a3,8(sp) + c0030658: 904d60ef jal ra,c000675c + c003065c: 87ae mv a5,a1 + c003065e: 66a2 ld a3,8(sp) + c0030660: 6586 ld a1,64(sp) + c0030662: 6626 ld a2,72(sp) + c0030664: 872a mv a4,a0 + c0030666: 8526 mv a0,s1 + c0030668: ec9ff0ef jal ra,c0030530 + c003066c: fa054ce3 bltz a0,c0030624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39594 start++; - c00304a0: 77c2 ld a5,48(sp) - c00304a2: 0785 addi a5,a5,1 - c00304a4: f83e sd a5,48(sp) - c00304a6: bf85 j c0030416 + c0030670: 77c2 ld a5,48(sp) + c0030672: 0785 addi a5,a5,1 + c0030674: f83e sd a5,48(sp) + c0030676: bf85 j c00305e6 -00000000c00304a8 : +00000000c0030678 : JS_SetPropertyStr(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8906 { - c00304a8: 715d addi sp,sp,-80 - c00304aa: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8901 + c0030678: 715d addi sp,sp,-80 + c003067a: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8909 atom = JS_NewAtom(ctx, prop); - c00304ac: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8898 -{ - c00304ae: e486 sd ra,72(sp) - c00304b0: e0a2 sd s0,64(sp) - c00304b2: fc26 sd s1,56(sp) - c00304b4: f84a sd s2,48(sp) - c00304b6: 842a mv s0,a0 - c00304b8: f432 sd a2,40(sp) - c00304ba: e83a sd a4,16(sp) - c00304bc: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8901 + c003067c: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8906 +{ + c003067e: e486 sd ra,72(sp) + c0030680: e0a2 sd s0,64(sp) + c0030682: fc26 sd s1,56(sp) + c0030684: f84a sd s2,48(sp) + c0030686: 842a mv s0,a0 + c0030688: f432 sd a2,40(sp) + c003068a: e83a sd a4,16(sp) + c003068c: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8909 atom = JS_NewAtom(ctx, prop); - c00304be: f83e80ef jal ra,c0019440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 + c003068e: f83e80ef jal ra,c0019610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8910 ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, this_obj, JS_PROP_THROW); - c00304c2: 7802 ld a6,32(sp) - c00304c4: 78a2 ld a7,40(sp) - c00304c6: 6791 lui a5,0x4 - c00304c8: 6742 ld a4,16(sp) - c00304ca: e03e sd a5,0(sp) - c00304cc: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8901 + c0030692: 7802 ld a6,32(sp) + c0030694: 78a2 ld a7,40(sp) + c0030696: 6791 lui a5,0x4 + c0030698: 6742 ld a4,16(sp) + c003069a: e03e sd a5,0(sp) + c003069c: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8909 atom = JS_NewAtom(ctx, prop); - c00304ce: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8902 + c003069e: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8910 ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, this_obj, JS_PROP_THROW); - c00304d2: 86a6 mv a3,s1 - c00304d4: 85c2 mv a1,a6 - c00304d6: 8646 mv a2,a7 - c00304d8: 8522 mv a0,s0 - c00304da: c05e10ef jal ra,c00120de - c00304de: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8903 + c00306a2: 86a6 mv a3,s1 + c00306a4: 85c2 mv a1,a6 + c00306a6: 8646 mv a2,a7 + c00306a8: 8522 mv a0,s0 + c00306aa: b23e10ef jal ra,c00121cc + c00306ae: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8911 JS_FreeAtom(ctx, atom); - c00304e0: 85a6 mv a1,s1 - c00304e2: 8522 mv a0,s0 - c00304e4: 828d70ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8905 -} - c00304e8: 60a6 ld ra,72(sp) - c00304ea: 6406 ld s0,64(sp) - c00304ec: 74e2 ld s1,56(sp) - c00304ee: 854a mv a0,s2 - c00304f0: 7942 ld s2,48(sp) - c00304f2: 6161 addi sp,sp,80 - c00304f4: 8082 ret - -00000000c00304f6 : + c00306b0: 85a6 mv a1,s1 + c00306b2: 8522 mv a0,s0 + c00306b4: f47d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8913 +} + c00306b8: 60a6 ld ra,72(sp) + c00306ba: 6406 ld s0,64(sp) + c00306bc: 74e2 ld s1,56(sp) + c00306be: 854a mv a0,s2 + c00306c0: 7942 ld s2,48(sp) + c00306c2: 6161 addi sp,sp,80 + c00306c4: 8082 ret + +00000000c00306c6 : js_reflect_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45733 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45741 { - c00304f6: 7171 addi sp,sp,-176 - c00304f8: ed26 sd s1,152(sp) - c00304fa: f506 sd ra,168(sp) - c00304fc: f122 sd s0,160(sp) - c00304fe: e94a sd s2,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45739 + c00306c6: 7171 addi sp,sp,-176 + c00306c8: ed26 sd s1,152(sp) + c00306ca: f506 sd ra,168(sp) + c00306cc: f122 sd s0,160(sp) + c00306ce: e94a sd s2,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45747 prop = argv[1]; - c0030500: 6b0c ld a1,16(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45738 + c00306d0: 6b0c ld a1,16(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45746 obj = argv[0]; - c0030502: 6310 ld a2,0(a4) - c0030504: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45739 + c00306d2: 6310 ld a2,0(a4) + c00306d4: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45747 prop = argv[1]; - c0030506: f82e sd a1,48(sp) - c0030508: 6f0c ld a1,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45738 + c00306d6: f82e sd a1,48(sp) + c00306d8: 6f0c ld a1,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45746 obj = argv[0]; - c003050a: f032 sd a2,32(sp) - c003050c: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45739 + c00306da: f032 sd a2,32(sp) + c00306dc: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45747 prop = argv[1]; - c003050e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45740 + c00306de: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45748 val = argv[2]; - c0030510: 730c ld a1,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45733 + c00306e0: 730c ld a1,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45741 { - c0030512: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45740 + c00306e2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45748 val = argv[2]; - c0030514: e0ae sd a1,64(sp) - c0030516: 770c ld a1,40(a4) - c0030518: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45741 + c00306e4: e0ae sd a1,64(sp) + c00306e6: 770c ld a1,40(a4) + c00306e8: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45749 if (argc > 3) - c003051a: 458d li a1,3 - c003051c: 02d5d263 bge a1,a3,c0030540 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45742 + c00306ea: 458d li a1,3 + c00306ec: 02d5d263 bge a1,a3,c0030710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45750 receiver = argv[3]; - c0030520: 7b14 ld a3,48(a4) - c0030522: 7f18 ld a4,56(a4) - c0030524: e8b6 sd a3,80(sp) - c0030526: ecba sd a4,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45745 + c00306f0: 7b14 ld a3,48(a4) + c00306f2: 7f18 ld a4,56(a4) + c00306f4: e8b6 sd a3,80(sp) + c00306f6: ecba sd a4,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45753 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0030528: 2781 sext.w a5,a5 - c003052a: 577d li a4,-1 - c003052c: 00e78d63 beq a5,a4,c0030546 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45757 + c00306f8: 2781 sext.w a5,a5 + c00306fa: 577d li a4,-1 + c00306fc: 00e78d63 beq a5,a4,c0030716 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45765 } - c0030530: 740a ld s0,160(sp) - c0030532: 70aa ld ra,168(sp) - c0030534: 694a ld s2,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45746 + c0030700: 740a ld s0,160(sp) + c0030702: 70aa ld ra,168(sp) + c0030704: 694a ld s2,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45754 return JS_ThrowTypeErrorNotAnObject(ctx); - c0030536: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45757 + c0030706: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45765 } - c0030538: 64ea ld s1,152(sp) - c003053a: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45746 + c0030708: 64ea ld s1,152(sp) + c003070a: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45754 return JS_ThrowTypeErrorNotAnObject(ctx); - c003053c: c3ce306f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45744 + c003070c: b5ae306f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45752 receiver = obj; - c0030540: e8b2 sd a2,80(sp) - c0030542: ecbe sd a5,88(sp) - c0030544: b7d5 j c0030528 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45747 + c0030710: e8b2 sd a2,80(sp) + c0030712: ecbe sd a5,88(sp) + c0030714: b7d5 j c00306f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45755 atom = JS_ValueToAtom(ctx, prop); - c0030546: 75c2 ld a1,48(sp) - c0030548: 7662 ld a2,56(sp) - c003054a: 8526 mv a0,s1 - c003054c: 8d0f10ef jal ra,c002161c - c0030550: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45748 + c0030716: 75c2 ld a1,48(sp) + c0030718: 7662 ld a2,56(sp) + c003071a: 8526 mv a0,s1 + c003071c: 8d0f10ef jal ra,c00217ec + c0030720: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45756 if (unlikely(atom == JS_ATOM_NULL)) - c0030554: 00091d63 bnez s2,c003056e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45749 - return JS_EXCEPTION; - c0030558: f082 sd zero,96(sp) - c003055a: 4799 li a5,6 + c0030724: 00091d63 bnez s2,c003073e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45757 + return JS_EXCEPTION; + c0030728: f082 sd zero,96(sp) + c003072a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45765 } - c003055c: 70aa ld ra,168(sp) - c003055e: 740a ld s0,160(sp) - c0030560: f4be sd a5,104(sp) - c0030562: 7506 ld a0,96(sp) - c0030564: 75a6 ld a1,104(sp) - c0030566: 64ea ld s1,152(sp) - c0030568: 694a ld s2,144(sp) - c003056a: 614d addi sp,sp,176 - c003056c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45750 + c003072c: 70aa ld ra,168(sp) + c003072e: 740a ld s0,160(sp) + c0030730: f4be sd a5,104(sp) + c0030732: 7506 ld a0,96(sp) + c0030734: 75a6 ld a1,104(sp) + c0030736: 64ea ld s1,152(sp) + c0030738: 694a ld s2,144(sp) + c003073a: 614d addi sp,sp,176 + c003073c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45758 ret = JS_SetPropertyInternal(ctx, obj, atom, - c003056e: 6506 ld a0,64(sp) - c0030570: 65a6 ld a1,72(sp) - c0030572: 8fcd60ef jal ra,c000666e - c0030576: 87ae mv a5,a1 - c0030578: 6846 ld a6,80(sp) - c003057a: 7582 ld a1,32(sp) - c003057c: 68e6 ld a7,88(sp) - c003057e: 7622 ld a2,40(sp) - c0030580: 872a mv a4,a0 - c0030582: e002 sd zero,0(sp) - c0030584: 86ca mv a3,s2 - c0030586: 8526 mv a0,s1 - c0030588: b57e10ef jal ra,c00120de - c003058c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45752 + c003073e: 6506 ld a0,64(sp) + c0030740: 65a6 ld a1,72(sp) + c0030742: 81ad60ef jal ra,c000675c + c0030746: 87ae mv a5,a1 + c0030748: 6846 ld a6,80(sp) + c003074a: 7582 ld a1,32(sp) + c003074c: 68e6 ld a7,88(sp) + c003074e: 7622 ld a2,40(sp) + c0030750: 872a mv a4,a0 + c0030752: e002 sd zero,0(sp) + c0030754: 86ca mv a3,s2 + c0030756: 8526 mv a0,s1 + c0030758: a75e10ef jal ra,c00121cc + c003075c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45760 JS_FreeAtom(ctx, atom); - c003058e: 85ca mv a1,s2 - c0030590: 8526 mv a0,s1 - c0030592: f7bd60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45753 + c003075e: 85ca mv a1,s2 + c0030760: 8526 mv a0,s1 + c0030762: e99d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45761 if (ret < 0) - c0030596: fc0441e3 bltz s0,c0030558 + c0030766: fc0441e3 bltz s0,c0030728 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c003059a: 00803433 snez s0,s0 - c003059e: c302 sw zero,132(sp) - c00305a0: c122 sw s0,128(sp) - c00305a2: 678a ld a5,128(sp) - c00305a4: f0be sd a5,96(sp) - c00305a6: 4785 li a5,1 - c00305a8: bf55 j c003055c - -00000000c00305aa : + c003076a: 00803433 snez s0,s0 + c003076e: c302 sw zero,132(sp) + c0030770: c122 sw s0,128(sp) + c0030772: 678a ld a5,128(sp) + c0030774: f0be sd a5,96(sp) + c0030776: 4785 li a5,1 + c0030778: bf55 j c003072c + +00000000c003077a : JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7572 -{ - c00305aa: 716d addi sp,sp,-272 - c00305ac: e222 sd s0,256(sp) - c00305ae: fda6 sd s1,248(sp) - c00305b0: f9ca sd s2,240(sp) - c00305b2: f1d2 sd s4,224(sp) - c00305b4: edd6 sd s5,216(sp) - c00305b6: e9da sd s6,208(sp) - c00305b8: e5de sd s7,200(sp) - c00305ba: e1e2 sd s8,192(sp) - c00305bc: fd66 sd s9,184(sp) - c00305be: f96a sd s10,176(sp) - c00305c0: f56e sd s11,168(sp) - c00305c2: e606 sd ra,264(sp) - c00305c4: f5ce sd s3,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7580 +{ + c003077a: 716d addi sp,sp,-272 + c003077c: e222 sd s0,256(sp) + c003077e: fda6 sd s1,248(sp) + c0030780: f9ca sd s2,240(sp) + c0030782: f1d2 sd s4,224(sp) + c0030784: edd6 sd s5,216(sp) + c0030786: e9da sd s6,208(sp) + c0030788: e5de sd s7,200(sp) + c003078a: e1e2 sd s8,192(sp) + c003078c: fd66 sd s9,184(sp) + c003078e: f96a sd s10,176(sp) + c0030790: f56e sd s11,168(sp) + c0030792: e606 sd ra,264(sp) + c0030794: f5ce sd s3,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7593 *ptab = NULL; - c00305c6: 0005b023 sd zero,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7586 + c0030796: 0005b023 sd zero,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7594 *plen = 0; - c00305ca: 00062023 sw zero,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7595 + c003079a: 00062023 sw zero,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7603 sh = p->shape; - c00305ce: 0186b983 ld s3,24(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 + c003079e: 0186b983 ld s3,24(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00305d2: 01077793 andi a5,a4,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7572 -{ - c00305d6: 842a mv s0,a0 - c00305d8: f02e sd a1,32(sp) - c00305da: f432 sd a2,40(sp) - c00305dc: 8d36 mv s10,a3 - c00305de: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7593 + c00307a2: 01077793 andi a5,a4,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7580 +{ + c00307a6: 842a mv s0,a0 + c00307a8: f02e sd a1,32(sp) + c00307aa: f432 sd a2,40(sp) + c00307ac: 8d36 mv s10,a3 + c00307ae: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 exotic_count = 0; - c00305e0: cc82 sw zero,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7594 + c00307b0: cc82 sw zero,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7602 tab_exotic = NULL; - c00305e2: f082 sd zero,96(sp) + c00307b2: f082 sd zero,96(sp) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c00305e4: 04098b13 addi s6,s3,64 + c00307b4: 04098b13 addi s6,s3,64 JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7591 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7599 sym_keys_count = 0; - c00305e8: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7590 + c00307b8: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7598 str_keys_count = 0; - c00305ea: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7589 + c00307ba: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7597 num_keys_count = 0; - c00305ec: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7596 + c00307bc: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7604 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c00305ee: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 + c00307be: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00305f0: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7605 + c00307c0: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7613 if (unlikely((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) && - c00305f2: 02000b93 li s7,32 - c00305f6: 03077c13 andi s8,a4,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 + c00307c2: 02000b93 li s7,32 + c00307c6: 03077c13 andi s8,a4,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7616 if (unlikely(JS_IsUninitialized(*var_ref->pvalue))) { - c00305fa: 4c91 li s9,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7596 (discriminator 1) + c00307ca: 4c91 li s9,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7604 (discriminator 1) for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c00305fc: 0289a683 lw a3,40(s3) - c0030600: 0cddc263 blt s11,a3,c00306c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7624 + c00307cc: 0289a683 lw a3,40(s3) + c00307d0: 0cddc263 blt s11,a3,c0030894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7632 if (p->is_exotic) { - c0030604: 005d4703 lbu a4,5(s10) - c0030608: 00477693 andi a3,a4,4 - c003060c: 18068063 beqz a3,c003078c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7625 + c00307d4: 005d4703 lbu a4,5(s10) + c00307d8: 00477693 andi a3,a4,4 + c00307dc: 18068063 beqz a3,c003095c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7633 if (p->fast_array) { - c0030610: 8b21 andi a4,a4,8 - c0030612: 14070663 beqz a4,c003075e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7626 + c00307e0: 8b21 andi a4,a4,8 + c00307e2: 14070663 beqz a4,c003092e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7634 if (flags & JS_GPN_STRING_MASK) { - c0030616: 0014f713 andi a4,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7592 + c00307e6: 0014f713 andi a4,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 exotic_keys_count = 0; - c003061a: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7626 + c00307ea: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7634 if (flags & JS_GPN_STRING_MASK) { - c003061c: c709 beqz a4,c0030626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7627 + c00307ec: c709 beqz a4,c00307f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7635 num_keys_count += p->u.array.count; - c003061e: 040d2703 lw a4,64(s10) - c0030622: 0127093b addw s2,a4,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7671 + c00307ee: 040d2703 lw a4,64(s10) + c00307f2: 0127093b addw s2,a4,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7679 atom_count = num_keys_count + str_keys_count + sym_keys_count + exotic_keys_count; - c0030626: 014907bb addw a5,s2,s4 - c003062a: 01ba89bb addw s3,s5,s11 - c003062e: e43e sd a5,8(sp) - c0030630: 00f987bb addw a5,s3,a5 - c0030634: f83e sd a5,48(sp) - c0030636: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7673 + c00307f6: 014907bb addw a5,s2,s4 + c00307fa: 01ba89bb addw s3,s5,s11 + c00307fe: e43e sd a5,8(sp) + c0030800: 00f987bb addw a5,s3,a5 + c0030804: f83e sd a5,48(sp) + c0030806: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7681 tab_atom = js_malloc(ctx, sizeof(tab_atom[0]) * max_int(atom_count, 1)); - c0030638: 0007859b sext.w a1,a5 - c003063c: 00f04363 bgtz a5,c0030642 - c0030640: 4585 li a1,1 - c0030642: 058e slli a1,a1,0x3 - c0030644: 8522 mv a0,s0 - c0030646: e06e40ef jal ra,c0014c4c - c003064a: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7674 + c0030808: 0007859b sext.w a1,a5 + c003080c: 00f04363 bgtz a5,c0030812 + c0030810: 4585 li a1,1 + c0030812: 058e slli a1,a1,0x3 + c0030814: 8522 mv a0,s0 + c0030816: d24e40ef jal ra,c0014d3a + c003081a: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7682 if (!tab_atom) { - c003064c: 1a050d63 beqz a0,c0030806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7684 + c003081c: 1a050d63 beqz a0,c00309d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7692 sh = p->shape; - c0030650: 018d3783 ld a5,24(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7681 + c0030820: 018d3783 ld a5,24(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7689 sym_index = str_index + str_keys_count; - c0030654: 6b22 ld s6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7685 + c0030824: 6b22 ld s6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c0030656: 8c4a mv s8,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7684 + c0030826: 8c4a mv s8,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7692 sh = p->shape; - c0030658: ec3e sd a5,24(sp) + c0030828: ec3e sd a5,24(sp) get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c003065a: 04078d93 addi s11,a5,64 # 4040 <__clzdi2-0xbfffbfc0> + c003082a: 04078d93 addi s11,a5,64 # 4040 <__clzdi2-0xbfffbfc0> JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7683 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7691 num_sorted = TRUE; - c003065e: 4785 li a5,1 - c0030660: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 + c003082e: 4785 li a5,1 + c0030830: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030662: 0104f793 andi a5,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7679 + c0030832: 0104f793 andi a5,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7687 num_index = 0; - c0030666: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7685 + c0030836: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c0030668: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 + c0030838: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c003066a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7685 (discriminator 1) + c003083a: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 (discriminator 1) for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c003066c: 67e2 ld a5,24(sp) - c003066e: 5798 lw a4,40(a5) - c0030670: 1cecc663 blt s9,a4,c003083c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7706 + c003083c: 67e2 ld a5,24(sp) + c003083e: 5798 lw a4,40(a5) + c0030840: 1cecc663 blt s9,a4,c0030a0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7714 if (p->is_exotic) { - c0030674: 005d4703 lbu a4,5(s10) - c0030678: 00477693 andi a3,a4,4 - c003067c: ca85 beqz a3,c00306ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7708 + c0030844: 005d4703 lbu a4,5(s10) + c0030848: 00477693 andi a3,a4,4 + c003084c: ca85 beqz a3,c003087c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7716 if (p->fast_array) { - c003067e: 8b21 andi a4,a4,8 - c0030680: 22070d63 beqz a4,c00308ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7709 + c003084e: 8b21 andi a4,a4,8 + c0030850: 22070d63 beqz a4,c0030a8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7717 if (flags & JS_GPN_STRING_MASK) { - c0030684: 8885 andi s1,s1,1 - c0030686: c09d beqz s1,c00306ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7710 + c0030854: 8885 andi s1,s1,1 + c0030856: c09d beqz s1,c003087c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7718 len = p->u.array.count; - c0030688: 040d2783 lw a5,64(s10) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7717 + c0030858: 040d2783 lw a5,64(s10) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7725 for(i = 0; i < len; i++) { - c003068c: 4681 li a3,0 + c003085c: 4681 li a3,0 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c003068e: 800005b7 lui a1,0x80000 + c003085e: 800005b7 lui a1,0x80000 JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7723 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7731 tab_atom[num_index].is_enumerable = TRUE; - c0030692: 4505 li a0,1 - c0030694: 0006861b sext.w a2,a3 - c0030698: 00db873b addw a4,s7,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7717 (discriminator 1) + c0030862: 4505 li a0,1 + c0030864: 0006861b sext.w a2,a3 + c0030868: 00db873b addw a4,s7,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7725 (discriminator 1) for(i = 0; i < len; i++) { - c003069c: 24f6c963 blt a3,a5,c00308ee - c00306a0: 873e mv a4,a5 - c00306a2: 0007d363 bgez a5,c00306a8 - c00306a6: 4701 li a4,0 - c00306a8: 01770bbb addw s7,a4,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7746 + c003086c: 24f6c963 blt a3,a5,c0030abe + c0030870: 873e mv a4,a5 + c0030872: 0007d363 bgez a5,c0030878 + c0030876: 4701 li a4,0 + c0030878: 01770bbb addw s7,a4,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7754 assert(num_index == num_keys_count); - c00306ac: 2b790563 beq s2,s7,c0030956 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7746 (discriminator 1) - c00306b0: 6589 lui a1,0x2 - c00306b2: 4601 li a2,0 - c00306b4: e4258593 addi a1,a1,-446 # 1e42 <__clzdi2-0xbfffe1be> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7747 (discriminator 1) + c003087c: 2b790563 beq s2,s7,c0030b26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7754 (discriminator 1) + c0030880: 6589 lui a1,0x2 + c0030882: 4601 li a2,0 + c0030884: e4a58593 addi a1,a1,-438 # 1e4a <__clzdi2-0xbfffe1b6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7755 (discriminator 1) assert(str_index == num_keys_count + str_keys_count); - c00306b8: 0002c517 auipc a0,0x2c - c00306bc: 3c050513 addi a0,a0,960 # c005ca78 - c00306c0: 358230ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7597 + c0030888: 0002c517 auipc a0,0x2c + c003088c: 3c050513 addi a0,a0,960 # c005cc48 + c0030890: 358230ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7605 atom = prs->atom; - c00306c4: 004b2583 lw a1,4(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7598 + c0030894: 004b2583 lw a1,4(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7606 if (atom != JS_ATOM_NULL) { - c00306c8: c1d9 beqz a1,c003074e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7599 + c0030898: c1d9 beqz a1,c003091e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7607 is_enumerable = ((prs->flags & JS_PROP_ENUMERABLE) != 0); - c00306ca: 000b2783 lw a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 + c003089a: 000b2783 lw a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 kind = JS_AtomGetKind(ctx, atom); - c00306ce: 8522 mv a0,s0 - c00306d0: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7599 + c003089e: 8522 mv a0,s0 + c00308a0: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7607 is_enumerable = ((prs->flags & JS_PROP_ENUMERABLE) != 0); - c00306d2: 01a7d79b srliw a5,a5,0x1a - c00306d6: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 + c00308a2: 01a7d79b srliw a5,a5,0x1a + c00308a6: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 kind = JS_AtomGetKind(ctx, atom); - c00306d8: fc4d40ef jal ra,c0004e9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 + c00308a8: df4d40ef jal ra,c0004e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00306dc: 6722 ld a4,8(sp) - c00306de: 65c2 ld a1,16(sp) - c00306e0: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 + c00308ac: 6722 ld a4,8(sp) + c00308ae: 65c2 ld a1,16(sp) + c00308b0: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 kind = JS_AtomGetKind(ctx, atom); - c00306e2: 0005069b sext.w a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 + c00308b2: 0005069b sext.w a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00306e6: c701 beqz a4,c00306ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 (discriminator 2) - c00306e8: 0047f613 andi a2,a5,4 - c00306ec: c22d beqz a2,c003074e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7602 (discriminator 3) + c00308b6: c701 beqz a4,c00308be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 (discriminator 2) + c00308b8: 0047f613 andi a2,a5,4 + c00308bc: c22d beqz a2,c003091e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7610 (discriminator 3) ((flags >> kind) & 1) != 0) { - c00306ee: 40d4d63b sraw a2,s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7601 (discriminator 3) + c00308be: 40d4d63b sraw a2,s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 (discriminator 3) if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00306f2: 8a05 andi a2,a2,1 - c00306f4: ce29 beqz a2,c003074e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7605 + c00308c2: 8a05 andi a2,a2,1 + c00308c4: ce29 beqz a2,c003091e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7613 if (unlikely((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF) && - c00306f6: 0307f793 andi a5,a5,48 - c00306fa: 05779163 bne a5,s7,c003073c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7605 (discriminator 1) - c00306fe: 020c0f63 beqz s8,c003073c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7607 + c00308c6: 0307f793 andi a5,a5,48 + c00308ca: 05779163 bne a5,s7,c003090c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7613 (discriminator 1) + c00308ce: 020c0f63 beqz s8,c003090c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7615 JSVarRef *var_ref = p->prop[i].u.var_ref; - c0030702: 020d3603 ld a2,32(s10) - c0030706: 004d9513 slli a0,s11,0x4 - c003070a: 962a add a2,a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 + c00308d2: 020d3603 ld a2,32(s10) + c00308d6: 004d9513 slli a0,s11,0x4 + c00308da: 962a add a2,a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7616 if (unlikely(JS_IsUninitialized(*var_ref->pvalue))) { - c003070c: 6210 ld a2,0(a2) + c00308dc: 6210 ld a2,0(a2) JS_IsUninitialized(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:615 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_UNINITIALIZED); - c003070e: 6e10 ld a2,24(a2) + c00308de: 6e10 ld a2,24(a2) JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7608 - c0030710: 4610 lw a2,8(a2) - c0030712: 03961563 bne a2,s9,c003073c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7616 + c00308e0: 4610 lw a2,8(a2) + c00308e2: 03961563 bne a2,s9,c003090c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7617 JS_ThrowReferenceErrorUninitialized(ctx, prs->atom); - c0030716: 8522 mv a0,s0 - c0030718: 9c0e40ef jal ra,c00148d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7676 + c00308e6: 8522 mv a0,s0 + c00308e8: 8dee40ef jal ra,c00149c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7684 return -1; - c003071c: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7757 -} - c003071e: 60b2 ld ra,264(sp) - c0030720: 6412 ld s0,256(sp) - c0030722: 74ee ld s1,248(sp) - c0030724: 794e ld s2,240(sp) - c0030726: 79ae ld s3,232(sp) - c0030728: 7a0e ld s4,224(sp) - c003072a: 6aee ld s5,216(sp) - c003072c: 6b4e ld s6,208(sp) - c003072e: 6bae ld s7,200(sp) - c0030730: 6c0e ld s8,192(sp) - c0030732: 7cea ld s9,184(sp) - c0030734: 7d4a ld s10,176(sp) - c0030736: 7daa ld s11,168(sp) - c0030738: 6151 addi sp,sp,272 - c003073a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7613 + c00308ec: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7765 +} + c00308ee: 60b2 ld ra,264(sp) + c00308f0: 6412 ld s0,256(sp) + c00308f2: 74ee ld s1,248(sp) + c00308f4: 794e ld s2,240(sp) + c00308f6: 79ae ld s3,232(sp) + c00308f8: 7a0e ld s4,224(sp) + c00308fa: 6aee ld s5,216(sp) + c00308fc: 6b4e ld s6,208(sp) + c00308fe: 6bae ld s7,200(sp) + c0030900: 6c0e ld s8,192(sp) + c0030902: 7cea ld s9,184(sp) + c0030904: 7d4a ld s10,176(sp) + c0030906: 7daa ld s11,168(sp) + c0030908: 6151 addi sp,sp,272 + c003090a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7621 if (JS_AtomIsArrayIndex(ctx, &num_key, atom)) { - c003073c: 862e mv a2,a1 - c003073e: 8522 mv a0,s0 - c0030740: 08ec addi a1,sp,92 - c0030742: e836 sd a3,16(sp) - c0030744: e8cd40ef jal ra,c0004dd0 - c0030748: 66c2 ld a3,16(sp) - c003074a: c509 beqz a0,c0030754 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7614 + c003090c: 862e mv a2,a1 + c003090e: 8522 mv a0,s0 + c0030910: 08ec addi a1,sp,92 + c0030912: e836 sd a3,16(sp) + c0030914: cbcd40ef jal ra,c0004dd0 + c0030918: 66c2 ld a3,16(sp) + c003091a: c509 beqz a0,c0030924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7622 num_keys_count++; - c003074c: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7596 (discriminator 2) + c003091c: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7604 (discriminator 2) for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c003074e: 2d85 addiw s11,s11,1 - c0030750: 0b21 addi s6,s6,8 - c0030752: b56d j c00305fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7615 + c003091e: 2d85 addiw s11,s11,1 + c0030920: 0b21 addi s6,s6,8 + c0030922: b56d j c00307cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7623 } else if (kind == JS_ATOM_KIND_STRING) { - c0030754: e299 bnez a3,c003075a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7616 + c0030924: e299 bnez a3,c003092a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7624 str_keys_count++; - c0030756: 2a05 addiw s4,s4,1 - c0030758: bfdd j c003074e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7618 + c0030926: 2a05 addiw s4,s4,1 + c0030928: bfdd j c003091e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7626 sym_keys_count++; - c003075a: 2a85 addiw s5,s5,1 - c003075c: bfcd j c003074e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7629 + c003092a: 2a85 addiw s5,s5,1 + c003092c: bfcd j c003091e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7637 } else if (p->class_id == JS_CLASS_STRING) { - c003075e: 006d5703 lhu a4,6(s10) - c0030762: 4695 li a3,5 - c0030764: 02d71663 bne a4,a3,c0030790 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7630 + c003092e: 006d5703 lhu a4,6(s10) + c0030932: 4695 li a3,5 + c0030934: 02d71663 bne a4,a3,c0030960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7638 if (flags & JS_GPN_STRING_MASK) { - c0030768: 0014f713 andi a4,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7592 + c0030938: 0014f713 andi a4,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 exotic_keys_count = 0; - c003076c: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7630 + c003093c: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7638 if (flags & JS_GPN_STRING_MASK) { - c003076e: ea070ce3 beqz a4,c0030626 + c003093e: ea070ce3 beqz a4,c00307f6 js_string_obj_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c0030772: 038d2603 lw a2,56(s10) - c0030776: 56e5 li a3,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7526 + c0030942: 038d2603 lw a2,56(s10) + c0030946: 56e5 li a3,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7534 uint32_t len = 0; - c0030778: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7530 + c0030948: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c003077a: 00d61763 bne a2,a3,c0030788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7532 + c003094a: 00d61763 bne a2,a3,c0030958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7540 len = p1->len; - c003077e: 030d3703 ld a4,48(s10) - c0030782: 4358 lw a4,4(a4) - c0030784: 1706 slli a4,a4,0x21 - c0030786: 9305 srli a4,a4,0x21 + c003094e: 030d3703 ld a4,48(s10) + c0030952: 4358 lw a4,4(a4) + c0030954: 1706 slli a4,a4,0x21 + c0030956: 9305 srli a4,a4,0x21 JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7639 num_keys_count += js_string_obj_get_length(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c0030788: 00e9093b addw s2,s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7592 + c0030958: 00e9093b addw s2,s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 exotic_keys_count = 0; - c003078c: 4d81 li s11,0 - c003078e: bd61 j c0030626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7634 + c003095c: 4d81 li s11,0 + c003095e: bd61 j c00307f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7642 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0030790: 02800613 li a2,40 - c0030794: 02c70733 mul a4,a4,a2 - c0030798: 6c14 ld a3,24(s0) - c003079a: 7ab4 ld a3,112(a3) - c003079c: 9736 add a4,a4,a3 - c003079e: 7318 ld a4,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7635 + c0030960: 02800613 li a2,40 + c0030964: 02c70733 mul a4,a4,a2 + c0030968: 6c14 ld a3,24(s0) + c003096a: 7ab4 ld a3,112(a3) + c003096c: 9736 add a4,a4,a3 + c003096e: 7318 ld a4,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7643 if (em && em->get_own_property_names) { - c00307a0: d775 beqz a4,c003078c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7635 (discriminator 1) - c00307a2: 00873803 ld a6,8(a4) - c00307a6: fe0803e3 beqz a6,c003078c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7637 + c0030970: d775 beqz a4,c003095c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7643 (discriminator 1) + c0030972: 00873803 ld a6,8(a4) + c0030976: fe0803e3 beqz a6,c003095c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7645 JS_MKPTR(JS_TAG_OBJECT, p))) - c00307aa: 577d li a4,-1 - c00307ac: f4ea sd s10,104(sp) - c00307ae: f8ba sd a4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7636 + c003097a: 577d li a4,-1 + c003097c: f4ea sd s10,104(sp) + c003097e: f8ba sd a4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7644 if (em->get_own_property_names(ctx, &tab_exotic, &exotic_count, - c00307b0: 86ea mv a3,s10 - c00307b2: 08b0 addi a2,sp,88 - c00307b4: 108c addi a1,sp,96 - c00307b6: 8522 mv a0,s0 - c00307b8: 9802 jalr a6 - c00307ba: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7592 + c0030980: 86ea mv a3,s10 + c0030982: 08b0 addi a2,sp,88 + c0030984: 108c addi a1,sp,96 + c0030986: 8522 mv a0,s0 + c0030988: 9802 jalr a6 + c003098a: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7600 exotic_keys_count = 0; - c00307bc: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7636 - if (em->get_own_property_names(ctx, &tab_exotic, &exotic_count, - c00307be: fd39 bnez a0,c003071c + c003098c: 4d81 li s11,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7644 + if (em->get_own_property_names(ctx, &tab_exotic, &exotic_count, + c003098e: fd39 bnez a0,c00308ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7652 if (flags & (JS_GPN_SET_ENUM | JS_GPN_ENUM_ONLY)) { - c00307c0: 0304fb93 andi s7,s1,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7660 + c0030990: 0304fb93 andi s7,s1,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7668 if (!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) { - c00307c4: 0104fc93 andi s9,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7639 (discriminator 1) + c0030994: 0104fc93 andi s9,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7647 (discriminator 1) for(i = 0; i < exotic_count; i++) { - c00307c8: 46e6 lw a3,88(sp) - c00307ca: 0009871b sext.w a4,s3 - c00307ce: e4d77ce3 bgeu a4,a3,c0030626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7640 + c0030998: 46e6 lw a3,88(sp) + c003099a: 0009871b sext.w a4,s3 + c003099e: e4d77ce3 bgeu a4,a3,c00307f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7648 atom = tab_exotic[i].atom; - c00307d2: 7706 ld a4,96(sp) - c00307d4: 00399c13 slli s8,s3,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7641 + c00309a2: 7706 ld a4,96(sp) + c00309a4: 00399c13 slli s8,s3,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7649 kind = JS_AtomGetKind(ctx, atom); - c00307d8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7640 + c00309a8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7648 atom = tab_exotic[i].atom; - c00307da: 9762 add a4,a4,s8 - c00307dc: 4354 lw a3,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7641 + c00309aa: 9762 add a4,a4,s8 + c00309ac: 4354 lw a3,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7649 kind = JS_AtomGetKind(ctx, atom); - c00307de: 85b6 mv a1,a3 - c00307e0: e436 sd a3,8(sp) - c00307e2: ebad40ef jal ra,c0004e9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7642 + c00309ae: 85b6 mv a1,a3 + c00309b0: e436 sd a3,8(sp) + c00309b2: cead40ef jal ra,c0004e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7650 if (((flags >> kind) & 1) != 0) { - c00307e6: 40a4d53b sraw a0,s1,a0 - c00307ea: 8905 andi a0,a0,1 - c00307ec: c531 beqz a0,c0030838 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7644 + c00309b6: 40a4d53b sraw a0,s1,a0 + c00309ba: 8905 andi a0,a0,1 + c00309bc: c531 beqz a0,c0030a08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7652 if (flags & (JS_GPN_SET_ENUM | JS_GPN_ENUM_ONLY)) { - c00307ee: 66a2 ld a3,8(sp) - c00307f0: 8b5e mv s6,s7 - c00307f2: 020b8e63 beqz s7,c003082e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7648 + c00309be: 66a2 ld a3,8(sp) + c00309c0: 8b5e mv s6,s7 + c00309c2: 020b8e63 beqz s7,c00309fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7656 res = JS_GetOwnPropertyInternal(ctx, &desc, p, atom); - c00307f6: 866a mv a2,s10 - c00307f8: 10ac addi a1,sp,104 - c00307fa: 8522 mv a0,s0 - c00307fc: f08e10ef jal ra,c0011f04 - c0030800: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7649 + c00309c6: 866a mv a2,s10 + c00309c8: 10ac addi a1,sp,104 + c00309ca: 8522 mv a0,s0 + c00309cc: e26e10ef jal ra,c0011ff2 + c00309d0: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7657 if (res < 0) { - c0030802: 00055863 bgez a0,c0030812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7675 + c00309d2: 00055863 bgez a0,c00309e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7683 js_free_prop_enum(ctx, tab_exotic, exotic_count); - c0030806: 4666 lw a2,88(sp) - c0030808: 7586 ld a1,96(sp) - c003080a: 8522 mv a0,s0 - c003080c: d11d60ef jal ra,c000751c - c0030810: b731 j c003071c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7653 + c00309d6: 4666 lw a2,88(sp) + c00309d8: 7586 ld a1,96(sp) + c00309da: 8522 mv a0,s0 + c00309dc: c2fd60ef jal ra,c000760a + c00309e0: b731 j c00308ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7661 if (res) { - c0030812: c911 beqz a0,c0030826 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7655 + c00309e2: c911 beqz a0,c00309f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7663 ((desc.flags & JS_PROP_ENUMERABLE) != 0); - c0030814: 5b26 lw s6,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7656 + c00309e4: 5b26 lw s6,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7664 js_free_desc(ctx, &desc); - c0030816: 10ac addi a1,sp,104 - c0030818: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7655 + c00309e6: 10ac addi a1,sp,104 + c00309e8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7663 ((desc.flags & JS_PROP_ENUMERABLE) != 0); - c003081a: 402b5b1b sraiw s6,s6,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7654 + c00309ea: 402b5b1b sraiw s6,s6,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7662 is_enumerable = - c003081e: 001b7b13 andi s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7656 + c00309ee: 001b7b13 andi s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7664 js_free_desc(ctx, &desc); - c0030822: e12d70ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7658 + c00309f2: d30d70ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7666 tab_exotic[i].is_enumerable = is_enumerable; - c0030826: 7706 ld a4,96(sp) - c0030828: 9c3a add s8,s8,a4 - c003082a: 016c2023 sw s6,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7660 + c00309f6: 7706 ld a4,96(sp) + c00309f8: 9c3a add s8,s8,a4 + c00309fa: 016c2023 sw s6,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7668 if (!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) { - c003082e: 000c8463 beqz s9,c0030836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7660 (discriminator 1) - c0030832: 000b0363 beqz s6,c0030838 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7661 + c00309fe: 000c8463 beqz s9,c0030a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7668 (discriminator 1) + c0030a02: 000b0363 beqz s6,c0030a08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7669 exotic_keys_count++; - c0030836: 2d85 addiw s11,s11,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7639 (discriminator 2) + c0030a06: 2d85 addiw s11,s11,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7647 (discriminator 2) for(i = 0; i < exotic_count; i++) { - c0030838: 2985 addiw s3,s3,1 - c003083a: b779 j c00307c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7686 + c0030a08: 2985 addiw s3,s3,1 + c0030a0a: b779 j c0030998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7694 atom = prs->atom; - c003083c: 004da603 lw a2,4(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7687 + c0030a0c: 004da603 lw a2,4(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7695 if (atom != JS_ATOM_NULL) { - c0030840: c22d beqz a2,c00308a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7689 + c0030a10: c22d beqz a2,c0030a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7697 kind = JS_AtomGetKind(ctx, atom); - c0030842: 85b2 mv a1,a2 - c0030844: 8522 mv a0,s0 - c0030846: e0b2 sd a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7688 + c0030a12: 85b2 mv a1,a2 + c0030a14: 8522 mv a0,s0 + c0030a16: e0b2 sd a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7696 is_enumerable = ((prs->flags & JS_PROP_ENUMERABLE) != 0); - c0030848: 000daa83 lw s5,0(s11) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7689 + c0030a18: 000daa83 lw s5,0(s11) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7697 kind = JS_AtomGetKind(ctx, atom); - c003084c: e50d40ef jal ra,c0004e9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 + c0030a1c: c80d40ef jal ra,c0004e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030850: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7688 + c0030a20: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7696 is_enumerable = ((prs->flags & JS_PROP_ENUMERABLE) != 0); - c0030852: 01aada9b srliw s5,s5,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 + c0030a22: 01aada9b srliw s5,s5,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030856: 6606 ld a2,64(sp) - c0030858: 004afa93 andi s5,s5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7689 + c0030a26: 6606 ld a2,64(sp) + c0030a28: 004afa93 andi s5,s5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7697 kind = JS_AtomGetKind(ctx, atom); - c003085c: 0005071b sext.w a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 + c0030a2c: 0005071b sext.w a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030860: c399 beqz a5,c0030866 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 (discriminator 2) - c0030862: 040a8063 beqz s5,c00308a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7691 (discriminator 3) + c0030a30: c399 beqz a5,c0030a36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 (discriminator 2) + c0030a32: 040a8063 beqz s5,c0030a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7699 (discriminator 3) ((flags >> kind) & 1) != 0) { - c0030866: 40e4d5bb sraw a1,s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7690 (discriminator 3) + c0030a36: 40e4d5bb sraw a1,s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 (discriminator 3) if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c003086a: 8985 andi a1,a1,1 - c003086c: c99d beqz a1,c00308a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7692 + c0030a3a: 8985 andi a1,a1,1 + c0030a3c: c99d beqz a1,c0030a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7700 if (JS_AtomIsArrayIndex(ctx, &num_key, atom)) { - c003086e: 08ec addi a1,sp,92 - c0030870: 8522 mv a0,s0 - c0030872: e4ba sd a4,72(sp) - c0030874: e0b2 sd a2,64(sp) - c0030876: d5ad40ef jal ra,c0004dd0 - c003087a: 6606 ld a2,64(sp) - c003087c: 6726 ld a4,72(sp) - c003087e: c50d beqz a0,c00308a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 + c0030a3e: 08ec addi a1,sp,92 + c0030a40: 8522 mv a0,s0 + c0030a42: e4ba sd a4,72(sp) + c0030a44: e0b2 sd a2,64(sp) + c0030a46: b8ad40ef jal ra,c0004dd0 + c0030a4a: 6606 ld a2,64(sp) + c0030a4c: 6726 ld a4,72(sp) + c0030a4e: c50d beqz a0,c0030a78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7701 j = num_index++; - c0030880: 000b871b sext.w a4,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7694 + c0030a50: 000b871b sext.w a4,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7702 num_sorted = FALSE; - c0030884: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 + c0030a54: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7701 j = num_index++; - c0030886: 2b85 addiw s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7700 + c0030a56: 2b85 addiw s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7708 tab_atom[j].atom = JS_DupAtom(ctx, atom); - c0030888: 070e slli a4,a4,0x3 - c003088a: 9752 add a4,a4,s4 - c003088c: 85b2 mv a1,a2 - c003088e: 8522 mv a0,s0 - c0030890: e0ba sd a4,64(sp) - c0030892: c39d60ef jal ra,c00074ca - c0030896: 6706 ld a4,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7688 + c0030a58: 070e slli a4,a4,0x3 + c0030a5a: 9752 add a4,a4,s4 + c0030a5c: 85b2 mv a1,a2 + c0030a5e: 8522 mv a0,s0 + c0030a60: e0ba sd a4,64(sp) + c0030a62: b57d60ef jal ra,c00075b8 + c0030a66: 6706 ld a4,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7696 is_enumerable = ((prs->flags & JS_PROP_ENUMERABLE) != 0); - c0030898: 01503ab3 snez s5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7700 + c0030a68: 01503ab3 snez s5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7708 tab_atom[j].atom = JS_DupAtom(ctx, atom); - c003089c: c348 sw a0,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7701 + c0030a6c: c348 sw a0,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7709 tab_atom[j].is_enumerable = is_enumerable; - c003089e: 01572023 sw s5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7685 (discriminator 2) + c0030a6e: 01572023 sw s5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7693 (discriminator 2) for(i = 0, prs = get_shape_prop(sh); i < sh->prop_count; i++, prs++) { - c00308a2: 2c85 addiw s9,s9,1 - c00308a4: 0da1 addi s11,s11,8 - c00308a6: b3d9 j c003066c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7695 + c0030a72: 2c85 addiw s9,s9,1 + c0030a74: 0da1 addi s11,s11,8 + c0030a76: b3d9 j c003083c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7703 } else if (kind == JS_ATOM_KIND_STRING) { - c00308a8: e709 bnez a4,c00308b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7696 + c0030a78: e709 bnez a4,c0030a82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7704 j = str_index++; - c00308aa: 000c071b sext.w a4,s8 - c00308ae: 2c05 addiw s8,s8,1 - c00308b0: bfe1 j c0030888 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7698 + c0030a7a: 000c071b sext.w a4,s8 + c0030a7e: 2c05 addiw s8,s8,1 + c0030a80: bfe1 j c0030a58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7706 j = sym_index++; - c00308b2: 000b071b sext.w a4,s6 - c00308b6: 2b05 addiw s6,s6,1 - c00308b8: bfc1 j c0030888 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7713 + c0030a82: 000b071b sext.w a4,s6 + c0030a86: 2b05 addiw s6,s6,1 + c0030a88: bfc1 j c0030a58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7721 } else if (p->class_id == JS_CLASS_STRING) { - c00308ba: 006d5683 lhu a3,6(s10) - c00308be: 4715 li a4,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7729 + c0030a8a: 006d5683 lhu a3,6(s10) + c0030a8e: 4715 li a4,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7737 for(i = 0; i < exotic_count; i++) { - c00308c0: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7733 + c0030a90: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7741 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c00308c2: 0104fa93 andi s5,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7713 + c0030a92: 0104fa93 andi s5,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7721 } else if (p->class_id == JS_CLASS_STRING) { - c00308c6: 06e69c63 bne a3,a4,c003093e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7714 + c0030a96: 06e69c63 bne a3,a4,c0030b0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7722 if (flags & JS_GPN_STRING_MASK) { - c00308ca: 8885 andi s1,s1,1 - c00308cc: de0480e3 beqz s1,c00306ac + c0030a9a: 8885 andi s1,s1,1 + c0030a9c: de0480e3 beqz s1,c003087c js_string_obj_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c00308d0: 038d2603 lw a2,56(s10) - c00308d4: 56e5 li a3,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7526 + c0030aa0: 038d2603 lw a2,56(s10) + c0030aa4: 56e5 li a3,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7534 uint32_t len = 0; - c00308d6: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7530 + c0030aa6: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7538 if (JS_VALUE_GET_TAG(p->u.object_data) == JS_TAG_STRING) { - c00308d8: 00d61863 bne a2,a3,c00308e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7532 + c0030aa8: 00d61863 bne a2,a3,c0030ab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7540 len = p1->len; - c00308dc: 030d3783 ld a5,48(s10) - c00308e0: 43dc lw a5,4(a5) - c00308e2: 1786 slli a5,a5,0x21 - c00308e4: 0217d713 srli a4,a5,0x21 + c0030aac: 030d3783 ld a5,48(s10) + c0030ab0: 43dc lw a5,4(a5) + c0030ab2: 1786 slli a5,a5,0x21 + c0030ab4: 0217d713 srli a4,a5,0x21 JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7715 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7723 len = js_string_obj_get_length(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c00308e8: 0007079b sext.w a5,a4 - c00308ec: b345 j c003068c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7718 + c0030ab8: 0007079b sext.w a5,a4 + c0030abc: b345 j c003085c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7726 tab_atom[num_index].atom = __JS_AtomFromUInt32(i); - c00308ee: 02071493 slli s1,a4,0x20 - c00308f2: 01d4d713 srli a4,s1,0x1d - c00308f6: 9752 add a4,a4,s4 + c0030abe: 02071493 slli s1,a4,0x20 + c0030ac2: 01d4d713 srli a4,s1,0x1d + c0030ac6: 9752 add a4,a4,s4 __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c00308f8: 8e4d or a2,a2,a1 + c0030ac8: 8e4d or a2,a2,a1 JS_GetOwnPropertyNamesInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7718 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7726 tab_atom[num_index].atom = __JS_AtomFromUInt32(i); - c00308fa: c350 sw a2,4(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7723 + c0030aca: c350 sw a2,4(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7731 tab_atom[num_index].is_enumerable = TRUE; - c00308fc: c308 sw a0,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7717 + c0030acc: c308 sw a0,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7725 for(i = 0; i < len; i++) { - c00308fe: 2685 addiw a3,a3,1 - c0030900: bb51 j c0030694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7730 + c0030ace: 2685 addiw a3,a3,1 + c0030ad0: bb51 j c0030864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7738 atom = tab_exotic[i].atom; - c0030902: 003c9793 slli a5,s9,0x3 - c0030906: 97ae add a5,a5,a1 - c0030908: 43cc lw a1,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7732 + c0030ad2: 003c9793 slli a5,s9,0x3 + c0030ad6: 97ae add a5,a5,a1 + c0030ad8: 43cc lw a1,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7740 kind = JS_AtomGetKind(ctx, atom); - c003090a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7731 + c0030ada: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7739 is_enumerable = tab_exotic[i].is_enumerable; - c003090c: 0007ad83 lw s11,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7732 + c0030adc: 0007ad83 lw s11,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7740 kind = JS_AtomGetKind(ctx, atom); - c0030910: ec2e sd a1,24(sp) - c0030912: d8ad40ef jal ra,c0004e9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7733 + c0030ae0: ec2e sd a1,24(sp) + c0030ae2: bbad40ef jal ra,c0004e9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7741 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030916: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7732 + c0030ae6: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7740 kind = JS_AtomGetKind(ctx, atom); - c0030918: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7733 + c0030ae8: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7741 if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c003091a: 000a8463 beqz s5,c0030922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7733 (discriminator 2) - c003091e: 020d8863 beqz s11,c003094e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7734 (discriminator 3) + c0030aea: 000a8463 beqz s5,c0030af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7741 (discriminator 2) + c0030aee: 020d8863 beqz s11,c0030b1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7742 (discriminator 3) ((flags >> kind) & 1) != 0) { - c0030922: 40a4d53b sraw a0,s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7733 (discriminator 3) + c0030af2: 40a4d53b sraw a0,s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7741 (discriminator 3) if ((!(flags & JS_GPN_ENUM_ONLY) || is_enumerable) && - c0030926: 8905 andi a0,a0,1 - c0030928: c11d beqz a0,c003094e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7735 + c0030af6: 8905 andi a0,a0,1 + c0030af8: c11d beqz a0,c0030b1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7743 tab_atom[sym_index].atom = atom; - c003092a: 020b1713 slli a4,s6,0x20 - c003092e: 01d75793 srli a5,a4,0x1d - c0030932: 97d2 add a5,a5,s4 - c0030934: c3cc sw a1,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7736 + c0030afa: 020b1713 slli a4,s6,0x20 + c0030afe: 01d75793 srli a5,a4,0x1d + c0030b02: 97d2 add a5,a5,s4 + c0030b04: c3cc sw a1,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7744 tab_atom[sym_index].is_enumerable = is_enumerable; - c0030936: 01b7a023 sw s11,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7737 + c0030b06: 01b7a023 sw s11,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7745 sym_index++; - c003093a: 2b05 addiw s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7729 (discriminator 2) + c0030b0a: 2b05 addiw s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7737 (discriminator 2) for(i = 0; i < exotic_count; i++) { - c003093c: 2c85 addiw s9,s9,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7729 (discriminator 1) - c003093e: 47e6 lw a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7730 (discriminator 1) + c0030b0c: 2c85 addiw s9,s9,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7737 (discriminator 1) + c0030b0e: 47e6 lw a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7738 (discriminator 1) atom = tab_exotic[i].atom; - c0030940: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7729 (discriminator 1) + c0030b10: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7737 (discriminator 1) for(i = 0; i < exotic_count; i++) { - c0030942: fcfce0e3 bltu s9,a5,c0030902 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7742 + c0030b12: fcfce0e3 bltu s9,a5,c0030ad2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7750 js_free(ctx, tab_exotic); - c0030946: 8522 mv a0,s0 - c0030948: cf2d60ef jal ra,c0006e3a - c003094c: b385 j c00306ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7739 + c0030b16: 8522 mv a0,s0 + c0030b18: c10d60ef jal ra,c0006f28 + c0030b1c: b385 j c003087c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7747 JS_FreeAtom(ctx, atom); - c003094e: 8522 mv a0,s0 - c0030950: bbdd60ef jal ra,c000750c - c0030954: b7e5 j c003093c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7747 (discriminator 2) + c0030b1e: 8522 mv a0,s0 + c0030b20: adbd60ef jal ra,c00075fa + c0030b24: b7e5 j c0030b0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7755 (discriminator 2) assert(str_index == num_keys_count + str_keys_count); - c0030956: 67a2 ld a5,8(sp) - c0030958: 01878763 beq a5,s8,c0030966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7747 (discriminator 1) - c003095c: 6589 lui a1,0x2 - c003095e: 4601 li a2,0 - c0030960: e4358593 addi a1,a1,-445 # 1e43 <__clzdi2-0xbfffe1bd> - c0030964: bb91 j c00306b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7748 (discriminator 2) + c0030b26: 67a2 ld a5,8(sp) + c0030b28: 01878763 beq a5,s8,c0030b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7755 (discriminator 1) + c0030b2c: 6589 lui a1,0x2 + c0030b2e: 4601 li a2,0 + c0030b30: e4b58593 addi a1,a1,-437 # 1e4b <__clzdi2-0xbfffe1b5> + c0030b34: bb91 j c0030888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7756 (discriminator 2) assert(sym_index == atom_count); - c0030966: 77c2 ld a5,48(sp) - c0030968: 00fb0763 beq s6,a5,c0030976 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7748 (discriminator 1) - c003096c: 6589 lui a1,0x2 - c003096e: 4601 li a2,0 - c0030970: e4458593 addi a1,a1,-444 # 1e44 <__clzdi2-0xbfffe1bc> - c0030974: b391 j c00306b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7750 (discriminator 2) + c0030b36: 77c2 ld a5,48(sp) + c0030b38: 00fb0763 beq s6,a5,c0030b46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7756 (discriminator 1) + c0030b3c: 6589 lui a1,0x2 + c0030b3e: 4601 li a2,0 + c0030b40: e4c58593 addi a1,a1,-436 # 1e4c <__clzdi2-0xbfffe1b4> + c0030b44: b391 j c0030888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7758 (discriminator 2) if (num_keys_count != 0 && !num_sorted) { - c0030976: 02090063 beqz s2,c0030996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7750 (discriminator 1) - c003097a: 67c2 ld a5,16(sp) - c003097c: ef89 bnez a5,c0030996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7751 + c0030b46: 02090063 beqz s2,c0030b66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7758 (discriminator 1) + c0030b4a: 67c2 ld a5,16(sp) + c0030b4c: ef89 bnez a5,c0030b66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7759 rqsort(tab_atom, num_keys_count, sizeof(tab_atom[0]), num_keys_cmp, - c003097e: 02091593 slli a1,s2,0x20 - c0030982: 8722 mv a4,s0 - c0030984: fffd4697 auipc a3,0xfffd4 - c0030988: 4be68693 addi a3,a3,1214 # c0004e42 - c003098c: 4621 li a2,8 - c003098e: 9181 srli a1,a1,0x20 - c0030990: 8552 mv a0,s4 - c0030992: 61e170ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7754 + c0030b4e: 02091593 slli a1,s2,0x20 + c0030b52: 8722 mv a4,s0 + c0030b54: fffd4697 auipc a3,0xfffd4 + c0030b58: 2ee68693 addi a3,a3,750 # c0004e42 + c0030b5c: 4621 li a2,8 + c0030b5e: 9181 srli a1,a1,0x20 + c0030b60: 8552 mv a0,s4 + c0030b62: 61e170ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7762 *ptab = tab_atom; - c0030996: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7756 + c0030b66: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7764 return 0; - c0030998: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7754 + c0030b68: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7762 *ptab = tab_atom; - c003099a: 0147b023 sd s4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7755 + c0030b6a: 0147b023 sd s4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7763 *plen = atom_count; - c003099e: 77a2 ld a5,40(sp) - c00309a0: 0137a023 sw s3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7756 + c0030b6e: 77a2 ld a5,40(sp) + c0030b70: 0137a023 sw s3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7764 return 0; - c00309a4: bbad j c003071e + c0030b74: bbad j c00308ee -00000000c00309a6 : +00000000c0030b76 : JS_GetOwnPropertyNames(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7770 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) { - c00309a6: 2701 sext.w a4,a4 - c00309a8: 587d li a6,-1 - c00309aa: 01071563 bne a4,a6,c00309b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7766 + c0030b76: 2701 sext.w a4,a4 + c0030b78: 587d li a6,-1 + c0030b7a: 01071563 bne a4,a6,c0030b84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7774 return JS_GetOwnPropertyNamesInternal(ctx, ptab, plen, - c00309ae: 873e mv a4,a5 - c00309b0: bfbff06f j c00305aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7761 + c0030b7e: 873e mv a4,a5 + c0030b80: bfbff06f j c003077a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7769 { - c00309b4: 1101 addi sp,sp,-32 - c00309b6: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7763 + c0030b84: 1101 addi sp,sp,-32 + c0030b86: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7771 JS_ThrowTypeErrorNotAnObject(ctx); - c00309b8: fc1e20ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7768 + c0030b88: edfe20ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7776 } - c00309bc: 60e2 ld ra,24(sp) - c00309be: 557d li a0,-1 - c00309c0: 6105 addi sp,sp,32 - c00309c2: 8082 ret + c0030b8c: 60e2 ld ra,24(sp) + c0030b8e: 557d li a0,-1 + c0030b90: 6105 addi sp,sp,32 + c0030b92: 8082 ret -00000000c00309c4 : +00000000c0030b94 : JS_GetOwnProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7862 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) { - c00309c4: 2681 sext.w a3,a3 - c00309c6: 57fd li a5,-1 - c00309c8: 00f69563 bne a3,a5,c00309d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7858 + c0030b94: 2681 sext.w a3,a3 + c0030b96: 57fd li a5,-1 + c0030b98: 00f69563 bne a3,a5,c0030ba2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7866 return JS_GetOwnPropertyInternal(ctx, desc, JS_VALUE_GET_OBJ(obj), prop); - c00309cc: 86ba mv a3,a4 - c00309ce: d36e106f j c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7853 + c0030b9c: 86ba mv a3,a4 + c0030b9e: c54e106f j c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7861 { - c00309d2: 1101 addi sp,sp,-32 - c00309d4: ec06 sd ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7855 + c0030ba2: 1101 addi sp,sp,-32 + c0030ba4: ec06 sd ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7863 JS_ThrowTypeErrorNotAnObject(ctx); - c00309d6: fa3e20ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7859 + c0030ba6: ec1e20ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7867 } - c00309da: 60e2 ld ra,24(sp) - c00309dc: 557d li a0,-1 - c00309de: 6105 addi sp,sp,32 - c00309e0: 8082 ret + c0030baa: 60e2 ld ra,24(sp) + c0030bac: 557d li a0,-1 + c0030bae: 6105 addi sp,sp,32 + c0030bb0: 8082 ret -00000000c00309e2 : +00000000c0030bb2 : JS_HasProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7891 -{ - c00309e2: 7159 addi sp,sp,-112 - c00309e4: eca6 sd s1,88(sp) - c00309e6: e432 sd a2,8(sp) - c00309e8: f486 sd ra,104(sp) - c00309ea: f0a2 sd s0,96(sp) - c00309ec: e8ca sd s2,80(sp) - c00309ee: e4ce sd s3,72(sp) - c00309f0: e0d2 sd s4,64(sp) - c00309f2: fc56 sd s5,56(sp) - c00309f4: f85a sd s6,48(sp) - c00309f6: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7896 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7899 +{ + c0030bb2: 7159 addi sp,sp,-112 + c0030bb4: eca6 sd s1,88(sp) + c0030bb6: e432 sd a2,8(sp) + c0030bb8: f486 sd ra,104(sp) + c0030bba: f0a2 sd s0,96(sp) + c0030bbc: e8ca sd s2,80(sp) + c0030bbe: e4ce sd s3,72(sp) + c0030bc0: e0d2 sd s4,64(sp) + c0030bc2: fc56 sd s5,56(sp) + c0030bc4: f85a sd s6,48(sp) + c0030bc6: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7904 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c00309f8: 2601 sext.w a2,a2 - c00309fa: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7897 + c0030bc8: 2601 sext.w a2,a2 + c0030bca: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7905 return FALSE; - c00309fc: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7896 + c0030bcc: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7904 if (unlikely(JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT)) - c00309fe: 04f61b63 bne a2,a5,c0030a54 - c0030a02: 892a mv s2,a0 - c0030a04: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7898 + c0030bce: 04f61b63 bne a2,a5,c0030c24 + c0030bd2: 892a mv s2,a0 + c0030bd4: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7906 p = JS_VALUE_GET_OBJ(obj); - c0030a06: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7901 + c0030bd6: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7909 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0030a08: 02800a93 li s5,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7911 + c0030bd8: 02800a93 li s5,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7919 JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c0030a0c: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7916 + c0030bdc: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7924 if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0030a0e: 4b29 li s6,10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7900 + c0030bde: 4b29 li s6,10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7908 if (p->is_exotic) { - c0030a10: 00544783 lbu a5,5(s0) - c0030a14: 8b91 andi a5,a5,4 - c0030a16: cbb1 beqz a5,c0030a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7901 + c0030be0: 00544783 lbu a5,5(s0) + c0030be4: 8b91 andi a5,a5,4 + c0030be6: cbb1 beqz a5,c0030c3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7909 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0030a18: 00645703 lhu a4,6(s0) - c0030a1c: 01893783 ld a5,24(s2) - c0030a20: 03570733 mul a4,a4,s5 - c0030a24: 7bbc ld a5,112(a5) - c0030a26: 97ba add a5,a5,a4 - c0030a28: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7902 + c0030be8: 00645703 lhu a4,6(s0) + c0030bec: 01893783 ld a5,24(s2) + c0030bf0: 03570733 mul a4,a4,s5 + c0030bf4: 7bbc ld a5,112(a5) + c0030bf6: 97ba add a5,a5,a4 + c0030bf8: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7910 if (em && em->has_property) { - c0030a2a: c3a1 beqz a5,c0030a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7902 (discriminator 1) - c0030a2c: 7398 ld a4,32(a5) - c0030a2e: cf15 beqz a4,c0030a6a + c0030bfa: c3a1 beqz a5,c0030c3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7910 (discriminator 1) + c0030bfc: 7398 ld a4,32(a5) + c0030bfe: cf15 beqz a4,c0030c3a JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0030a30: 4018 lw a4,0(s0) + c0030c00: 4018 lw a4,0(s0) JS_HasProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7913 ret = em->has_property(ctx, obj1, prop); - c0030a32: 85a2 mv a1,s0 - c0030a34: 567d li a2,-1 + c0030c02: 85a2 mv a1,s0 + c0030c04: 567d li a2,-1 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0030a36: 2705 addiw a4,a4,1 - c0030a38: c018 sw a4,0(s0) + c0030c06: 2705 addiw a4,a4,1 + c0030c08: c018 sw a4,0(s0) JS_HasProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7905 - c0030a3a: 739c ld a5,32(a5) - c0030a3c: 577d li a4,-1 - c0030a3e: 86ce mv a3,s3 - c0030a40: 854a mv a0,s2 - c0030a42: f022 sd s0,32(sp) - c0030a44: f43a sd a4,40(sp) - c0030a46: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7913 + c0030c0a: 739c ld a5,32(a5) + c0030c0c: 577d li a4,-1 + c0030c0e: 86ce mv a3,s3 + c0030c10: 854a mv a0,s2 + c0030c12: f022 sd s0,32(sp) + c0030c14: f43a sd a4,40(sp) + c0030c16: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7914 JS_FreeValue(ctx, obj1); - c0030a48: 7582 ld a1,32(sp) - c0030a4a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7905 + c0030c18: 7582 ld a1,32(sp) + c0030c1a: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7913 ret = em->has_property(ctx, obj1, prop); - c0030a4c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7906 + c0030c1c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7914 JS_FreeValue(ctx, obj1); - c0030a4e: 854a mv a0,s2 - c0030a50: 8e8d70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7930 (discriminator 3) -} - c0030a54: 70a6 ld ra,104(sp) - c0030a56: 7406 ld s0,96(sp) - c0030a58: 6946 ld s2,80(sp) - c0030a5a: 69a6 ld s3,72(sp) - c0030a5c: 6a06 ld s4,64(sp) - c0030a5e: 7ae2 ld s5,56(sp) - c0030a60: 7b42 ld s6,48(sp) - c0030a62: 8526 mv a0,s1 - c0030a64: 64e6 ld s1,88(sp) - c0030a66: 6165 addi sp,sp,112 - c0030a68: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7911 + c0030c1e: 854a mv a0,s2 + c0030c20: 806d70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7938 (discriminator 3) +} + c0030c24: 70a6 ld ra,104(sp) + c0030c26: 7406 ld s0,96(sp) + c0030c28: 6946 ld s2,80(sp) + c0030c2a: 69a6 ld s3,72(sp) + c0030c2c: 6a06 ld s4,64(sp) + c0030c2e: 7ae2 ld s5,56(sp) + c0030c30: 7b42 ld s6,48(sp) + c0030c32: 8526 mv a0,s1 + c0030c34: 64e6 ld s1,88(sp) + c0030c36: 6165 addi sp,sp,112 + c0030c38: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7919 JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c0030a6a: 8522 mv a0,s0 - c0030a6c: 55fd li a1,-1 - c0030a6e: e822 sd s0,16(sp) - c0030a70: ec52 sd s4,24(sp) - c0030a72: bfdd50ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7912 + c0030c3a: 8522 mv a0,s0 + c0030c3c: 55fd li a1,-1 + c0030c3e: e822 sd s0,16(sp) + c0030c40: ec52 sd s4,24(sp) + c0030c42: b1bd50ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7920 ret = JS_GetOwnPropertyInternal(ctx, NULL, p, prop); - c0030a76: 8622 mv a2,s0 - c0030a78: 4581 li a1,0 - c0030a7a: 86ce mv a3,s3 - c0030a7c: 854a mv a0,s2 - c0030a7e: c86e10ef jal ra,c0011f04 - c0030a82: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7913 + c0030c46: 8622 mv a2,s0 + c0030c48: 4581 li a1,0 + c0030c4a: 86ce mv a3,s3 + c0030c4c: 854a mv a0,s2 + c0030c4e: ba4e10ef jal ra,c0011ff2 + c0030c52: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7921 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_OBJECT, p)); - c0030a84: 85a2 mv a1,s0 - c0030a86: 567d li a2,-1 - c0030a88: 854a mv a0,s2 - c0030a8a: f022 sd s0,32(sp) - c0030a8c: f452 sd s4,40(sp) - c0030a8e: 8aad70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7914 + c0030c54: 85a2 mv a1,s0 + c0030c56: 567d li a2,-1 + c0030c58: 854a mv a0,s2 + c0030c5a: f022 sd s0,32(sp) + c0030c5c: f452 sd s4,40(sp) + c0030c5e: fc9d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7922 if (ret != 0) - c0030a92: f0e9 bnez s1,c0030a54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7916 + c0030c62: f0e9 bnez s1,c0030c24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7924 if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c0030a94: 00645783 lhu a5,6(s0) - c0030a98: 37ad addiw a5,a5,-21 - c0030a9a: 17c2 slli a5,a5,0x30 - c0030a9c: 93c1 srli a5,a5,0x30 - c0030a9e: 00fb6a63 bltu s6,a5,c0030ab2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7918 + c0030c64: 00645783 lhu a5,6(s0) + c0030c68: 37ad addiw a5,a5,-21 + c0030c6a: 17c2 slli a5,a5,0x30 + c0030c6c: 93c1 srli a5,a5,0x30 + c0030c6e: 00fb6a63 bltu s6,a5,c0030c82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7926 ret = JS_AtomIsNumericIndex(ctx, prop); - c0030aa2: 85ce mv a1,s3 - c0030aa4: 854a mv a0,s2 - c0030aa6: dd2f00ef jal ra,c0021078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7919 + c0030c72: 85ce mv a1,s3 + c0030c74: 854a mv a0,s2 + c0030c76: dd2f00ef jal ra,c0021248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7927 if (ret != 0) { - c0030aaa: c501 beqz a0,c0030ab2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7920 + c0030c7a: c501 beqz a0,c0030c82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7928 if (ret < 0) - c0030aac: 41f5549b sraiw s1,a0,0x1f - c0030ab0: b755 j c0030a54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7925 + c0030c7c: 41f5549b sraiw s1,a0,0x1f + c0030c80: b755 j c0030c24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7933 p = p->shape->proto; - c0030ab2: 6c1c ld a5,24(s0) - c0030ab4: 7f80 ld s0,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7926 + c0030c82: 6c1c ld a5,24(s0) + c0030c84: 7f80 ld s0,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:7934 if (!p) - c0030ab6: fc29 bnez s0,c0030a10 - c0030ab8: bf71 j c0030a54 + c0030c86: fc29 bnez s0,c0030be0 + c0030c88: bf71 j c0030c24 -00000000c0030aba : +00000000c0030c8a : js_reflect_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45711 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45719 { - c0030aba: 7159 addi sp,sp,-112 - c0030abc: f486 sd ra,104(sp) - c0030abe: f0a2 sd s0,96(sp) - c0030ac0: eca6 sd s1,88(sp) - c0030ac2: e8ca sd s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45716 + c0030c8a: 7159 addi sp,sp,-112 + c0030c8c: f486 sd ra,104(sp) + c0030c8e: f0a2 sd s0,96(sp) + c0030c90: eca6 sd s1,88(sp) + c0030c92: e8ca sd s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45724 obj = argv[0]; - c0030ac4: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45717 + c0030c94: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45725 prop = argv[1]; - c0030ac6: 6b0c ld a1,16(a4) - c0030ac8: 6f10 ld a2,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45716 + c0030c96: 6b0c ld a1,16(a4) + c0030c98: 6f10 ld a2,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45724 obj = argv[0]; - c0030aca: e83e sd a5,16(sp) - c0030acc: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45718 + c0030c9a: e83e sd a5,16(sp) + c0030c9c: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45726 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0030ace: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45716 + c0030c9e: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45724 obj = argv[0]; - c0030ad0: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45718 + c0030ca0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45726 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0030ad2: 2781 sext.w a5,a5 - c0030ad4: 00e78963 beq a5,a4,c0030ae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45729 -} - c0030ad8: 7406 ld s0,96(sp) - c0030ada: 70a6 ld ra,104(sp) - c0030adc: 64e6 ld s1,88(sp) - c0030ade: 6946 ld s2,80(sp) - c0030ae0: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45719 + c0030ca2: 2781 sext.w a5,a5 + c0030ca4: 00e78963 beq a5,a4,c0030cb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45737 +} + c0030ca8: 7406 ld s0,96(sp) + c0030caa: 70a6 ld ra,104(sp) + c0030cac: 64e6 ld s1,88(sp) + c0030cae: 6946 ld s2,80(sp) + c0030cb0: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45727 return JS_ThrowTypeErrorNotAnObject(ctx); - c0030ae2: e97e206f j c0013978 - c0030ae6: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45720 + c0030cb2: db5e206f j c0013a66 + c0030cb6: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45728 atom = JS_ValueToAtom(ctx, prop); - c0030ae8: b35f00ef jal ra,c002161c - c0030aec: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45721 + c0030cb8: b35f00ef jal ra,c00217ec + c0030cbc: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45729 if (unlikely(atom == JS_ATOM_NULL)) - c0030af0: ec81 bnez s1,c0030b08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45722 + c0030cc0: ec81 bnez s1,c0030cd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45730 return JS_EXCEPTION; - c0030af2: f802 sd zero,48(sp) - c0030af4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45729 -} - c0030af6: 70a6 ld ra,104(sp) - c0030af8: 7406 ld s0,96(sp) - c0030afa: fc3e sd a5,56(sp) - c0030afc: 7542 ld a0,48(sp) - c0030afe: 75e2 ld a1,56(sp) - c0030b00: 64e6 ld s1,88(sp) - c0030b02: 6946 ld s2,80(sp) - c0030b04: 6165 addi sp,sp,112 - c0030b06: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45723 + c0030cc2: f802 sd zero,48(sp) + c0030cc4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45737 +} + c0030cc6: 70a6 ld ra,104(sp) + c0030cc8: 7406 ld s0,96(sp) + c0030cca: fc3e sd a5,56(sp) + c0030ccc: 7542 ld a0,48(sp) + c0030cce: 75e2 ld a1,56(sp) + c0030cd0: 64e6 ld s1,88(sp) + c0030cd2: 6946 ld s2,80(sp) + c0030cd4: 6165 addi sp,sp,112 + c0030cd6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45731 ret = JS_HasProperty(ctx, obj, atom); - c0030b08: 65c2 ld a1,16(sp) - c0030b0a: 6662 ld a2,24(sp) - c0030b0c: 86a6 mv a3,s1 - c0030b0e: 854a mv a0,s2 - c0030b10: ed3ff0ef jal ra,c00309e2 - c0030b14: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45724 + c0030cd8: 65c2 ld a1,16(sp) + c0030cda: 6662 ld a2,24(sp) + c0030cdc: 86a6 mv a3,s1 + c0030cde: 854a mv a0,s2 + c0030ce0: ed3ff0ef jal ra,c0030bb2 + c0030ce4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45732 JS_FreeAtom(ctx, atom); - c0030b16: 85a6 mv a1,s1 - c0030b18: 854a mv a0,s2 - c0030b1a: 9f3d60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45725 + c0030ce6: 85a6 mv a1,s1 + c0030ce8: 854a mv a0,s2 + c0030cea: 911d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45733 if (ret < 0) - c0030b1e: fc044ae3 bltz s0,c0030af2 + c0030cee: fc044ae3 bltz s0,c0030cc2 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0030b22: 00803433 snez s0,s0 - c0030b26: c282 sw zero,68(sp) - c0030b28: c0a2 sw s0,64(sp) - c0030b2a: 6786 ld a5,64(sp) - c0030b2c: f83e sd a5,48(sp) - c0030b2e: 4785 li a5,1 - c0030b30: b7d9 j c0030af6 - -00000000c0030b32 : + c0030cf2: 00803433 snez s0,s0 + c0030cf6: c282 sw zero,68(sp) + c0030cf8: c0a2 sw s0,64(sp) + c0030cfa: 6786 ld a5,64(sp) + c0030cfc: f83e sd a5,48(sp) + c0030cfe: 4785 li a5,1 + c0030d00: b7d9 j c0030cc6 + +00000000c0030d02 : js_object_isSealed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37857 -{ - c0030b32: 7171 addi sp,sp,-176 - c0030b34: e54e sd s3,136(sp) - c0030b36: f506 sd ra,168(sp) - c0030b38: f122 sd s0,160(sp) - c0030b3a: ed26 sd s1,152(sp) - c0030b3c: e94a sd s2,144(sp) - c0030b3e: e152 sd s4,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37865 +{ + c0030d02: 7171 addi sp,sp,-176 + c0030d04: e54e sd s3,136(sp) + c0030d06: f506 sd ra,168(sp) + c0030d08: f122 sd s0,160(sp) + c0030d0a: ed26 sd s1,152(sp) + c0030d0c: e94a sd s2,144(sp) + c0030d0e: e152 sd s4,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37866 JSValueConst obj = argv[0]; - c0030b40: 00073a03 ld s4,0(a4) - c0030b44: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37857 + c0030d10: 00073a03 ld s4,0(a4) + c0030d14: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37865 { - c0030b46: 89be mv s3,a5 - c0030b48: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37858 + c0030d16: 89be mv s3,a5 + c0030d18: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37866 JSValueConst obj = argv[0]; - c0030b4a: f83a sd a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37857 + c0030d1a: f83a sd a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37865 { - c0030b4c: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37858 + c0030d1c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37866 JSValueConst obj = argv[0]; - c0030b4e: f452 sd s4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37864 + c0030d1e: f452 sd s4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37872 if (!JS_IsObject(obj)) - c0030b50: 2701 sext.w a4,a4 - c0030b52: 57fd li a5,-1 - c0030b54: 00f70f63 beq a4,a5,c0030b72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37865 + c0030d20: 2701 sext.w a4,a4 + c0030d22: 57fd li a5,-1 + c0030d24: 00f70f63 beq a4,a5,c0030d42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37873 return JS_TRUE; - c0030b58: 4785 li a5,1 - c0030b5a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37899 -} - c0030b5c: 70aa ld ra,168(sp) - c0030b5e: 740a ld s0,160(sp) - c0030b60: e0be sd a5,64(sp) - c0030b62: 7562 ld a0,56(sp) - c0030b64: 6586 ld a1,64(sp) - c0030b66: 64ea ld s1,152(sp) - c0030b68: 694a ld s2,144(sp) - c0030b6a: 69aa ld s3,136(sp) - c0030b6c: 6a0a ld s4,128(sp) - c0030b6e: 614d addi sp,sp,176 - c0030b70: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37869 + c0030d28: 4785 li a5,1 + c0030d2a: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37907 +} + c0030d2c: 70aa ld ra,168(sp) + c0030d2e: 740a ld s0,160(sp) + c0030d30: e0be sd a5,64(sp) + c0030d32: 7562 ld a0,56(sp) + c0030d34: 6586 ld a1,64(sp) + c0030d36: 64ea ld s1,152(sp) + c0030d38: 694a ld s2,144(sp) + c0030d3a: 69aa ld s3,136(sp) + c0030d3c: 6a0a ld s4,128(sp) + c0030d3e: 614d addi sp,sp,176 + c0030d40: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37877 if (JS_GetOwnPropertyNamesInternal(ctx, &props, &len, p, flags)) - c0030b72: 470d li a4,3 - c0030b74: 86d2 mv a3,s4 - c0030b76: 0870 addi a2,sp,28 - c0030b78: 100c addi a1,sp,32 - c0030b7a: 84aa mv s1,a0 - c0030b7c: a2fff0ef jal ra,c00305aa - c0030b80: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37872 + c0030d42: 470d li a4,3 + c0030d44: 86d2 mv a3,s4 + c0030d46: 0870 addi a2,sp,28 + c0030d48: 100c addi a1,sp,32 + c0030d4a: 84aa mv s1,a0 + c0030d4c: a2fff0ef jal ra,c003077a + c0030d50: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37880 for(i = 0; i < len; i++) { - c0030b82: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37869 + c0030d52: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37877 if (JS_GetOwnPropertyNamesInternal(ctx, &props, &len, p, flags)) - c0030b84: c531 beqz a0,c0030bd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37898 + c0030d54: c531 beqz a0,c0030da0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37906 return JS_EXCEPTION; - c0030b86: fc02 sd zero,56(sp) - c0030b88: 4799 li a5,6 - c0030b8a: bfc9 j c0030b5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37874 + c0030d56: fc02 sd zero,56(sp) + c0030d58: 4799 li a5,6 + c0030d5a: bfc9 j c0030d2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37882 JSAtom prop = props[i].atom; - c0030b8c: 02091713 slli a4,s2,0x20 - c0030b90: 01d75793 srli a5,a4,0x1d - c0030b94: 7702 ld a4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37876 + c0030d5c: 02091713 slli a4,s2,0x20 + c0030d60: 01d75793 srli a5,a4,0x1d + c0030d64: 7702 ld a4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37884 res = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - c0030b96: 8652 mv a2,s4 - c0030b98: 00ac addi a1,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37874 + c0030d66: 8652 mv a2,s4 + c0030d68: 00ac addi a1,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37882 JSAtom prop = props[i].atom; - c0030b9a: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37876 + c0030d6a: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37884 res = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - c0030b9c: 43d4 lw a3,4(a5) - c0030b9e: 8526 mv a0,s1 - c0030ba0: b64e10ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37877 + c0030d6c: 43d4 lw a3,4(a5) + c0030d6e: 8526 mv a0,s1 + c0030d70: a82e10ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37885 if (res < 0) - c0030ba4: 00055863 bgez a0,c0030bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37897 + c0030d74: 00055863 bgez a0,c0030d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37905 js_free_prop_enum(ctx, props, len); - c0030ba8: 4672 lw a2,28(sp) - c0030baa: 7582 ld a1,32(sp) - c0030bac: 8526 mv a0,s1 - c0030bae: 96fd60ef jal ra,c000751c - c0030bb2: bfd1 j c0030b86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37879 + c0030d78: 4672 lw a2,28(sp) + c0030d7a: 7582 ld a1,32(sp) + c0030d7c: 8526 mv a0,s1 + c0030d7e: 88dd60ef jal ra,c000760a + c0030d82: bfd1 j c0030d56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37887 if (res) { - c0030bb4: cd09 beqz a0,c0030bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37880 + c0030d84: cd09 beqz a0,c0030d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37888 js_free_desc(ctx, &desc); - c0030bb6: 00ac addi a1,sp,72 - c0030bb8: 8526 mv a0,s1 - c0030bba: a7ad70ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37881 + c0030d86: 00ac addi a1,sp,72 + c0030d88: 8526 mv a0,s1 + c0030d8a: 998d70ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37889 if ((desc.flags & JS_PROP_CONFIGURABLE) - c0030bbe: 4726 lw a4,72(sp) - c0030bc0: 00177793 andi a5,a4,1 - c0030bc4: e39d bnez a5,c0030bea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37882 + c0030d8e: 4726 lw a4,72(sp) + c0030d90: 00177793 andi a5,a4,1 + c0030d94: e39d bnez a5,c0030dba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37890 || (is_frozen && (desc.flags & JS_PROP_WRITABLE))) { - c0030bc6: 00098463 beqz s3,c0030bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37882 (discriminator 1) - c0030bca: 8b09 andi a4,a4,2 - c0030bcc: ef19 bnez a4,c0030bea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37872 + c0030d96: 00098463 beqz s3,c0030d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37890 (discriminator 1) + c0030d9a: 8b09 andi a4,a4,2 + c0030d9c: ef19 bnez a4,c0030dba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37880 for(i = 0; i < len; i++) { - c0030bce: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37872 (discriminator 1) - c0030bd0: 47f2 lw a5,28(sp) - c0030bd2: faf96de3 bltu s2,a5,c0030b8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37888 + c0030d9e: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37880 (discriminator 1) + c0030da0: 47f2 lw a5,28(sp) + c0030da2: faf96de3 bltu s2,a5,c0030d5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37896 res = JS_IsExtensible(ctx, obj); - c0030bd6: 75a2 ld a1,40(sp) - c0030bd8: 7642 ld a2,48(sp) - c0030bda: 8526 mv a0,s1 - c0030bdc: 803e30ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37889 + c0030da6: 75a2 ld a1,40(sp) + c0030da8: 7642 ld a2,48(sp) + c0030daa: 8526 mv a0,s1 + c0030dac: f20e30ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37897 if (res < 0) - c0030be0: fa0543e3 bltz a0,c0030b86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37891 + c0030db0: fa0543e3 bltz a0,c0030d56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37899 res ^= 1; - c0030be4: 00154413 xori s0,a0,1 - c0030be8: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37893 + c0030db4: 00154413 xori s0,a0,1 + c0030db8: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37901 js_free_prop_enum(ctx, props, len); - c0030bea: 4672 lw a2,28(sp) - c0030bec: 7582 ld a1,32(sp) - c0030bee: 8526 mv a0,s1 + c0030dba: 4672 lw a2,28(sp) + c0030dbc: 7582 ld a1,32(sp) + c0030dbe: 8526 mv a0,s1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030bf0: 00803433 snez s0,s0 + c0030dc0: 00803433 snez s0,s0 js_object_isSealed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37893 - c0030bf4: 929d60ef jal ra,c000751c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37901 + c0030dc4: 847d60ef jal ra,c000760a JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030bf8: c682 sw zero,76(sp) - c0030bfa: c4a2 sw s0,72(sp) - c0030bfc: 67a6 ld a5,72(sp) - c0030bfe: fc3e sd a5,56(sp) - c0030c00: 4785 li a5,1 - c0030c02: bfa9 j c0030b5c - -00000000c0030c04 : + c0030dc8: c682 sw zero,76(sp) + c0030dca: c4a2 sw s0,72(sp) + c0030dcc: 67a6 ld a5,72(sp) + c0030dce: fc3e sd a5,56(sp) + c0030dd0: 4785 li a5,1 + c0030dd2: bfa9 j c0030d2c + +00000000c0030dd4 : js_object___lookupGetter__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38205 -{ - c0030c04: 7155 addi sp,sp,-208 - c0030c06: e1a2 sd s0,192(sp) - c0030c08: fd26 sd s1,184(sp) - c0030c0a: f94a sd s2,176(sp) - c0030c0c: f54e sd s3,168(sp) - c0030c0e: ed56 sd s5,152(sp) - c0030c10: 843a mv s0,a4 - c0030c12: 8abe mv s5,a5 - c0030c14: e586 sd ra,200(sp) - c0030c16: f152 sd s4,160(sp) - c0030c18: e95a sd s6,144(sp) - c0030c1a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38213 +{ + c0030dd4: 7155 addi sp,sp,-208 + c0030dd6: e1a2 sd s0,192(sp) + c0030dd8: fd26 sd s1,184(sp) + c0030dda: f94a sd s2,176(sp) + c0030ddc: f54e sd s3,168(sp) + c0030dde: ed56 sd s5,152(sp) + c0030de0: 843a mv s0,a4 + c0030de2: 8abe mv s5,a5 + c0030de4: e586 sd ra,200(sp) + c0030de6: f152 sd s4,160(sp) + c0030de8: e95a sd s6,144(sp) + c0030dea: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38214 JSValue obj, res = JS_EXCEPTION; - c0030c1c: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38211 + c0030dec: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38219 obj = JS_ToObject(ctx, this_val); - c0030c1e: 9cff70ef jal ra,c00285ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38212 + c0030dee: 9cff70ef jal ra,c00287bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38220 if (JS_IsException(obj)) - c0030c22: 0005871b sext.w a4,a1 - c0030c26: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38211 + c0030df2: 0005871b sext.w a4,a1 + c0030df6: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38219 obj = JS_ToObject(ctx, this_val); - c0030c28: 89aa mv s3,a0 - c0030c2a: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38212 + c0030df8: 89aa mv s3,a0 + c0030dfa: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38220 if (JS_IsException(obj)) - c0030c2c: 0af70b63 beq a4,a5,c0030ce2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38214 + c0030dfc: 0af70b63 beq a4,a5,c0030eb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38222 prop = JS_ValueToAtom(ctx, argv[0]); - c0030c30: 600c ld a1,0(s0) - c0030c32: 6410 ld a2,8(s0) - c0030c34: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38206 - JSValue obj, res = JS_EXCEPTION; - c0030c36: 4419 li s0,6 + c0030e00: 600c ld a1,0(s0) + c0030e02: 6410 ld a2,8(s0) + c0030e04: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38214 + JSValue obj, res = JS_EXCEPTION; + c0030e06: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38222 prop = JS_ValueToAtom(ctx, argv[0]); - c0030c38: 9e5f00ef jal ra,c002161c - c0030c3c: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38215 + c0030e08: 9e5f00ef jal ra,c00217ec + c0030e0c: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38223 if (unlikely(prop == JS_ATOM_NULL)) - c0030c40: 020a0f63 beqz s4,c0030c7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38233 + c0030e10: 020a0f63 beqz s4,c0030e4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38241 if (JS_IsNull(obj)) { - c0030c44: 4b09 li s6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38219 + c0030e14: 4b09 li s6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38227 has_prop = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(obj), prop); - c0030c46: 86d2 mv a3,s4 - c0030c48: 864e mv a2,s3 - c0030c4a: 08ac addi a1,sp,88 - c0030c4c: 8526 mv a0,s1 - c0030c4e: ab6e10ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38220 + c0030e16: 86d2 mv a3,s4 + c0030e18: 864e mv a2,s3 + c0030e1a: 08ac addi a1,sp,88 + c0030e1c: 8526 mv a0,s1 + c0030e1e: 9d4e10ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38228 if (has_prop < 0) - c0030c52: 08054663 bltz a0,c0030cde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38222 + c0030e22: 08054663 bltz a0,c0030eae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38230 if (has_prop) { - c0030c56: c125 beqz a0,c0030cb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38223 + c0030e26: c125 beqz a0,c0030e86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38231 if (desc.flags & JS_PROP_GETSET) - c0030c58: 47e6 lw a5,88(sp) - c0030c5a: 8bc1 andi a5,a5,16 - c0030c5c: cbb1 beqz a5,c0030cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38224 + c0030e28: 47e6 lw a5,88(sp) + c0030e2a: 8bc1 andi a5,a5,16 + c0030e2c: cbb1 beqz a5,c0030e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38232 res = JS_DupValue(ctx, setter ? desc.setter : desc.getter); - c0030c5e: 040a8563 beqz s5,c0030ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38224 (discriminator 1) - c0030c62: 678a ld a5,128(sp) - c0030c64: fc3e sd a5,56(sp) - c0030c66: 67aa ld a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38224 (discriminator 2) - c0030c68: e0be sd a5,64(sp) - c0030c6a: 7562 ld a0,56(sp) - c0030c6c: 6586 ld a1,64(sp) - c0030c6e: a01d50ef jal ra,c000666e - c0030c72: f42a sd a0,40(sp) - c0030c74: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38227 + c0030e2e: 040a8563 beqz s5,c0030e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38232 (discriminator 1) + c0030e32: 678a ld a5,128(sp) + c0030e34: fc3e sd a5,56(sp) + c0030e36: 67aa ld a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38232 (discriminator 2) + c0030e38: e0be sd a5,64(sp) + c0030e3a: 7562 ld a0,56(sp) + c0030e3c: 6586 ld a1,64(sp) + c0030e3e: 91fd50ef jal ra,c000675c + c0030e42: f42a sd a0,40(sp) + c0030e44: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38235 js_free_desc(ctx, &desc); - c0030c76: 08ac addi a1,sp,88 - c0030c78: 8526 mv a0,s1 - c0030c7a: 9bad70ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38243 + c0030e46: 08ac addi a1,sp,88 + c0030e48: 8526 mv a0,s1 + c0030e4a: 8d8d70ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38251 JS_FreeAtom(ctx, prop); - c0030c7e: 85d2 mv a1,s4 - c0030c80: 8526 mv a0,s1 - c0030c82: 88bd60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38244 + c0030e4e: 85d2 mv a1,s4 + c0030e50: 8526 mv a0,s1 + c0030e52: fa8d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38252 JS_FreeValue(ctx, obj); - c0030c86: 85ce mv a1,s3 - c0030c88: 8526 mv a0,s1 - c0030c8a: 864a mv a2,s2 - c0030c8c: eadd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38246 -} - c0030c90: 60ae ld ra,200(sp) - c0030c92: 85a2 mv a1,s0 - c0030c94: 640e ld s0,192(sp) - c0030c96: 7522 ld a0,40(sp) - c0030c98: 74ea ld s1,184(sp) - c0030c9a: 794a ld s2,176(sp) - c0030c9c: 79aa ld s3,168(sp) - c0030c9e: 7a0a ld s4,160(sp) - c0030ca0: 6aea ld s5,152(sp) - c0030ca2: 6b4a ld s6,144(sp) - c0030ca4: 6169 addi sp,sp,208 - c0030ca6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38224 (discriminator 2) + c0030e56: 85ce mv a1,s3 + c0030e58: 8526 mv a0,s1 + c0030e5a: 864a mv a2,s2 + c0030e5c: dcbd60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38254 +} + c0030e60: 60ae ld ra,200(sp) + c0030e62: 85a2 mv a1,s0 + c0030e64: 640e ld s0,192(sp) + c0030e66: 7522 ld a0,40(sp) + c0030e68: 74ea ld s1,184(sp) + c0030e6a: 794a ld s2,176(sp) + c0030e6c: 79aa ld s3,168(sp) + c0030e6e: 7a0a ld s4,160(sp) + c0030e70: 6aea ld s5,152(sp) + c0030e72: 6b4a ld s6,144(sp) + c0030e74: 6169 addi sp,sp,208 + c0030e76: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38232 (discriminator 2) res = JS_DupValue(ctx, setter ? desc.setter : desc.getter); - c0030ca8: 77c6 ld a5,112(sp) - c0030caa: fc3e sd a5,56(sp) - c0030cac: 77e6 ld a5,120(sp) - c0030cae: bf6d j c0030c68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38226 + c0030e78: 77c6 ld a5,112(sp) + c0030e7a: fc3e sd a5,56(sp) + c0030e7c: 77e6 ld a5,120(sp) + c0030e7e: bf6d j c0030e38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38234 res = JS_UNDEFINED; - c0030cb0: f402 sd zero,40(sp) - c0030cb2: 440d li s0,3 - c0030cb4: b7c9 j c0030c76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38230 + c0030e80: f402 sd zero,40(sp) + c0030e82: 440d li s0,3 + c0030e84: b7c9 j c0030e46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38238 obj = JS_GetPrototypeFree(ctx, obj); - c0030cb6: 85ce mv a1,s3 - c0030cb8: 864a mv a2,s2 - c0030cba: 8526 mv a0,s1 - c0030cbc: 963e30ef jal ra,c001461e + c0030e86: 85ce mv a1,s3 + c0030e88: 864a mv a2,s2 + c0030e8a: 8526 mv a0,s1 + c0030e8c: 881e30ef jal ra,c001470c JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0030cc0: 0005879b sext.w a5,a1 + c0030e90: 0005879b sext.w a5,a1 js_object___lookupGetter__(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38230 - c0030cc4: 89aa mv s3,a0 - c0030cc6: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38231 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38238 + c0030e94: 89aa mv s3,a0 + c0030e96: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38239 if (JS_IsException(obj)) - c0030cc8: 00878b63 beq a5,s0,c0030cde -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38233 + c0030e98: 00878b63 beq a5,s0,c0030eae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38241 if (JS_IsNull(obj)) { - c0030ccc: 01679563 bne a5,s6,c0030cd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38234 + c0030e9c: 01679563 bne a5,s6,c0030ea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38242 res = JS_UNDEFINED; - c0030cd0: f402 sd zero,40(sp) - c0030cd2: 440d li s0,3 - c0030cd4: b76d j c0030c7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38238 + c0030ea0: f402 sd zero,40(sp) + c0030ea2: 440d li s0,3 + c0030ea4: b76d j c0030e4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38246 if (js_poll_interrupts(ctx)) - c0030cd6: 8526 mv a0,s1 - c0030cd8: d23e30ef jal ra,c00149fa - c0030cdc: d52d beqz a0,c0030c46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38206 + c0030ea6: 8526 mv a0,s1 + c0030ea8: c41e30ef jal ra,c0014ae8 + c0030eac: d52d beqz a0,c0030e16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38214 JSValue obj, res = JS_EXCEPTION; - c0030cde: 4419 li s0,6 - c0030ce0: bf79 j c0030c7e - c0030ce2: 4419 li s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38207 + c0030eae: 4419 li s0,6 + c0030eb0: bf79 j c0030e4e + c0030eb2: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38215 JSAtom prop = JS_ATOM_NULL; - c0030ce4: 4a01 li s4,0 - c0030ce6: bf61 j c0030c7e + c0030eb4: 4a01 li s4,0 + c0030eb6: bf61 j c0030e4e -00000000c0030ce8 : +00000000c0030eb8 : js_object_propertyIsEnumerable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38174 -{ - c0030ce8: 7131 addi sp,sp,-192 - c0030cea: f526 sd s1,168(sp) - c0030cec: f14a sd s2,160(sp) - c0030cee: fd06 sd ra,184(sp) - c0030cf0: f922 sd s0,176(sp) - c0030cf2: ed4e sd s3,152(sp) - c0030cf4: 84aa mv s1,a0 - c0030cf6: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38175 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38182 +{ + c0030eb8: 7131 addi sp,sp,-192 + c0030eba: f526 sd s1,168(sp) + c0030ebc: f14a sd s2,160(sp) + c0030ebe: fd06 sd ra,184(sp) + c0030ec0: f922 sd s0,176(sp) + c0030ec2: ed4e sd s3,152(sp) + c0030ec4: 84aa mv s1,a0 + c0030ec6: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38183 JSValue obj, res = JS_EXCEPTION; - c0030cf8: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38180 + c0030ec8: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38188 obj = JS_ToObject(ctx, this_val); - c0030cfa: 8f3f70ef jal ra,c00285ec - c0030cfe: f02e sd a1,32(sp) - c0030d00: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38181 + c0030eca: 8f3f70ef jal ra,c00287bc + c0030ece: f02e sd a1,32(sp) + c0030ed0: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38189 if (JS_IsException(obj)) - c0030d02: 2581 sext.w a1,a1 - c0030d04: 4799 li a5,6 - c0030d06: 02f59863 bne a1,a5,c0030d36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38175 + c0030ed2: 2581 sext.w a1,a1 + c0030ed4: 4799 li a5,6 + c0030ed6: 02f59863 bne a1,a5,c0030f06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38183 JSValue obj, res = JS_EXCEPTION; - c0030d0a: 4999 li s3,6 - c0030d0c: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38176 + c0030eda: 4999 li s3,6 + c0030edc: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38184 JSAtom prop = JS_ATOM_NULL; - c0030d0e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38198 + c0030ede: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38206 JS_FreeAtom(ctx, prop); - c0030d10: 85ca mv a1,s2 - c0030d12: 8526 mv a0,s1 - c0030d14: ff8d60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38199 + c0030ee0: 85ca mv a1,s2 + c0030ee2: 8526 mv a0,s1 + c0030ee4: f16d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38207 JS_FreeValue(ctx, obj); - c0030d18: 65e2 ld a1,24(sp) - c0030d1a: 7602 ld a2,32(sp) - c0030d1c: 8526 mv a0,s1 - c0030d1e: e1bd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38201 -} - c0030d22: 70ea ld ra,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38200 + c0030ee8: 65e2 ld a1,24(sp) + c0030eea: 7602 ld a2,32(sp) + c0030eec: 8526 mv a0,s1 + c0030eee: d39d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38209 +} + c0030ef2: 70ea ld ra,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38208 return res; - c0030d24: d422 sw s0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38201 -} - c0030d26: 744a ld s0,176(sp) - c0030d28: 7522 ld a0,40(sp) - c0030d2a: 74aa ld s1,168(sp) - c0030d2c: 790a ld s2,160(sp) - c0030d2e: 85ce mv a1,s3 - c0030d30: 69ea ld s3,152(sp) - c0030d32: 6129 addi sp,sp,192 - c0030d34: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38183 + c0030ef4: d422 sw s0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38209 +} + c0030ef6: 744a ld s0,176(sp) + c0030ef8: 7522 ld a0,40(sp) + c0030efa: 74aa ld s1,168(sp) + c0030efc: 790a ld s2,160(sp) + c0030efe: 85ce mv a1,s3 + c0030f00: 69ea ld s3,152(sp) + c0030f02: 6129 addi sp,sp,192 + c0030f04: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38191 prop = JS_ValueToAtom(ctx, argv[0]); - c0030d36: 00093583 ld a1,0(s2) - c0030d3a: 00893603 ld a2,8(s2) - c0030d3e: 842a mv s0,a0 - c0030d40: 8526 mv a0,s1 - c0030d42: 8dbf00ef jal ra,c002161c - c0030d46: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38184 + c0030f06: 00093583 ld a1,0(s2) + c0030f0a: 00893603 ld a2,8(s2) + c0030f0e: 842a mv s0,a0 + c0030f10: 8526 mv a0,s1 + c0030f12: 8dbf00ef jal ra,c00217ec + c0030f16: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38192 if (unlikely(prop == JS_ATOM_NULL)) - c0030d4a: fc0900e3 beqz s2,c0030d0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38187 + c0030f1a: fc0900e3 beqz s2,c0030eda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38195 has_prop = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(obj), prop); - c0030d4e: 8622 mv a2,s0 - c0030d50: 86ca mv a3,s2 - c0030d52: 08ac addi a1,sp,88 - c0030d54: 8526 mv a0,s1 - c0030d56: 9aee10ef jal ra,c0011f04 - c0030d5a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38188 + c0030f1e: 8622 mv a2,s0 + c0030f20: 86ca mv a3,s2 + c0030f22: 08ac addi a1,sp,88 + c0030f24: 8526 mv a0,s1 + c0030f26: 8cce10ef jal ra,c0011ff2 + c0030f2a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38196 if (has_prop < 0) - c0030d5c: 02054363 bltz a0,c0030d82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38190 + c0030f2c: 02054363 bltz a0,c0030f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38198 if (has_prop) { - c0030d60: cd19 beqz a0,c0030d7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38191 + c0030f30: cd19 beqz a0,c0030f4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38199 res = JS_NewBool(ctx, (desc.flags & JS_PROP_ENUMERABLE) != 0); - c0030d62: 4466 lw s0,88(sp) + c0030f32: 4466 lw s0,88(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0030d64: c682 sw zero,76(sp) + c0030f34: c682 sw zero,76(sp) js_object_propertyIsEnumerable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38200 js_free_desc(ctx, &desc); - c0030d66: 08ac addi a1,sp,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38191 + c0030f36: 08ac addi a1,sp,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38199 res = JS_NewBool(ctx, (desc.flags & JS_PROP_ENUMERABLE) != 0); - c0030d68: 4024541b sraiw s0,s0,0x2 - c0030d6c: 8805 andi s0,s0,1 + c0030f38: 4024541b sraiw s0,s0,0x2 + c0030f3c: 8805 andi s0,s0,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030d6e: c4a2 sw s0,72(sp) - c0030d70: 67a6 ld a5,72(sp) + c0030f3e: c4a2 sw s0,72(sp) + c0030f40: 67a6 ld a5,72(sp) js_object_propertyIsEnumerable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38200 js_free_desc(ctx, &desc); - c0030d72: 8526 mv a0,s1 - c0030d74: f43e sd a5,40(sp) - c0030d76: 8bed70ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38194 + c0030f42: 8526 mv a0,s1 + c0030f44: f43e sd a5,40(sp) + c0030f46: fddd60ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38202 res = JS_FALSE; - c0030d7a: 4985 li s3,1 - c0030d7c: bf51 j c0030d10 - c0030d7e: d602 sw zero,44(sp) - c0030d80: bfed j c0030d7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38175 + c0030f4a: 4985 li s3,1 + c0030f4c: bf51 j c0030ee0 + c0030f4e: d602 sw zero,44(sp) + c0030f50: bfed j c0030f4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38183 JSValue obj, res = JS_EXCEPTION; - c0030d82: 4999 li s3,6 - c0030d84: 4401 li s0,0 - c0030d86: b769 j c0030d10 + c0030f52: 4999 li s3,6 + c0030f54: 4401 li s0,0 + c0030f56: b769 j c0030ee0 -00000000c0030d88 : +00000000c0030f58 : js_object_hasOwnProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37659 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37667 { - c0030d88: 7159 addi sp,sp,-112 - c0030d8a: f0a2 sd s0,96(sp) - c0030d8c: e8ca sd s2,80(sp) - c0030d8e: f486 sd ra,104(sp) - c0030d90: eca6 sd s1,88(sp) - c0030d92: e82e sd a1,16(sp) - c0030d94: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37665 + c0030f58: 7159 addi sp,sp,-112 + c0030f5a: f0a2 sd s0,96(sp) + c0030f5c: e8ca sd s2,80(sp) + c0030f5e: f486 sd ra,104(sp) + c0030f60: eca6 sd s1,88(sp) + c0030f62: e82e sd a1,16(sp) + c0030f64: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37673 atom = JS_ValueToAtom(ctx, argv[0]); /* must be done first */ - c0030d96: 630c ld a1,0(a4) - c0030d98: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37659 + c0030f66: 630c ld a1,0(a4) + c0030f68: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37667 { - c0030d9a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37665 + c0030f6a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37673 atom = JS_ValueToAtom(ctx, argv[0]); /* must be done first */ - c0030d9c: 881f00ef jal ra,c002161c - c0030da0: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37666 + c0030f6c: 881f00ef jal ra,c00217ec + c0030f70: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37674 if (unlikely(atom == JS_ATOM_NULL)) - c0030da4: 00091663 bnez s2,c0030db0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37667 + c0030f74: 00091663 bnez s2,c0030f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37675 return JS_EXCEPTION; - c0030da8: f802 sd zero,48(sp) - c0030daa: 4799 li a5,6 - c0030dac: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37680 + c0030f78: f802 sd zero,48(sp) + c0030f7a: 4799 li a5,6 + c0030f7c: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37688 return JS_NewBool(ctx, ret); - c0030dae: a03d j c0030ddc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37668 + c0030f7e: a03d j c0030fac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37676 obj = JS_ToObject(ctx, this_val); - c0030db0: 6662 ld a2,24(sp) - c0030db2: 65c2 ld a1,16(sp) - c0030db4: 8522 mv a0,s0 - c0030db6: 837f70ef jal ra,c00285ec - c0030dba: f02a sd a0,32(sp) - c0030dbc: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37669 + c0030f80: 6662 ld a2,24(sp) + c0030f82: 65c2 ld a1,16(sp) + c0030f84: 8522 mv a0,s0 + c0030f86: 837f70ef jal ra,c00287bc + c0030f8a: f02a sd a0,32(sp) + c0030f8c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37677 if (JS_IsException(obj)) { - c0030dbe: 0005871b sext.w a4,a1 - c0030dc2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37668 + c0030f8e: 0005871b sext.w a4,a1 + c0030f92: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37676 obj = JS_ToObject(ctx, this_val); - c0030dc4: 862a mv a2,a0 - c0030dc6: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37669 + c0030f94: 862a mv a2,a0 + c0030f96: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37677 if (JS_IsException(obj)) { - c0030dc8: 02f71263 bne a4,a5,c0030dec - c0030dcc: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37670 + c0030f98: 02f71263 bne a4,a5,c0030fbc + c0030f9c: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37678 JS_FreeAtom(ctx, atom); - c0030dce: 85ca mv a1,s2 - c0030dd0: 8522 mv a0,s0 - c0030dd2: f3ad60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37671 + c0030f9e: 85ca mv a1,s2 + c0030fa0: 8522 mv a0,s0 + c0030fa2: e58d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37679 return obj; - c0030dd6: 6622 ld a2,8(sp) - c0030dd8: fc26 sd s1,56(sp) - c0030dda: f832 sd a2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37681 (discriminator 1) -} - c0030ddc: 70a6 ld ra,104(sp) - c0030dde: 7406 ld s0,96(sp) - c0030de0: 7542 ld a0,48(sp) - c0030de2: 75e2 ld a1,56(sp) - c0030de4: 64e6 ld s1,88(sp) - c0030de6: 6946 ld s2,80(sp) - c0030de8: 6165 addi sp,sp,112 - c0030dea: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37674 + c0030fa6: 6622 ld a2,8(sp) + c0030fa8: fc26 sd s1,56(sp) + c0030faa: f832 sd a2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37689 (discriminator 1) +} + c0030fac: 70a6 ld ra,104(sp) + c0030fae: 7406 ld s0,96(sp) + c0030fb0: 7542 ld a0,48(sp) + c0030fb2: 75e2 ld a1,56(sp) + c0030fb4: 64e6 ld s1,88(sp) + c0030fb6: 6946 ld s2,80(sp) + c0030fb8: 6165 addi sp,sp,112 + c0030fba: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37682 ret = JS_GetOwnPropertyInternal(ctx, NULL, p, atom); - c0030dec: 86ca mv a3,s2 - c0030dee: 4581 li a1,0 - c0030df0: 8522 mv a0,s0 - c0030df2: 912e10ef jal ra,c0011f04 - c0030df6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37675 + c0030fbc: 86ca mv a3,s2 + c0030fbe: 4581 li a1,0 + c0030fc0: 8522 mv a0,s0 + c0030fc2: 830e10ef jal ra,c0011ff2 + c0030fc6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37683 JS_FreeAtom(ctx, atom); - c0030df8: 85ca mv a1,s2 - c0030dfa: 8522 mv a0,s0 - c0030dfc: f10d60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37676 + c0030fc8: 85ca mv a1,s2 + c0030fca: 8522 mv a0,s0 + c0030fcc: e2ed60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37684 JS_FreeValue(ctx, obj); - c0030e00: 7582 ld a1,32(sp) - c0030e02: 7622 ld a2,40(sp) - c0030e04: 8522 mv a0,s0 - c0030e06: d33d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37677 + c0030fd0: 7582 ld a1,32(sp) + c0030fd2: 7622 ld a2,40(sp) + c0030fd4: 8522 mv a0,s0 + c0030fd6: c51d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37685 if (ret < 0) - c0030e0a: f804cfe3 bltz s1,c0030da8 + c0030fda: f804cfe3 bltz s1,c0030f78 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030e0e: 009034b3 snez s1,s1 - c0030e12: c282 sw zero,68(sp) - c0030e14: c0a6 sw s1,64(sp) - c0030e16: 6786 ld a5,64(sp) - c0030e18: f83e sd a5,48(sp) - c0030e1a: 4785 li a5,1 - c0030e1c: bf41 j c0030dac - -00000000c0030e1e : + c0030fde: 009034b3 snez s1,s1 + c0030fe2: c282 sw zero,68(sp) + c0030fe4: c0a6 sw s1,64(sp) + c0030fe6: 6786 ld a5,64(sp) + c0030fe8: f83e sd a5,48(sp) + c0030fea: 4785 li a5,1 + c0030fec: bf41 j c0030f7c + +00000000c0030fee : js_object_hasOwn(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37691 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37699 obj = JS_ToObject(ctx, argv[0]); - c0030e1e: 630c ld a1,0(a4) - c0030e20: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37685 + c0030fee: 630c ld a1,0(a4) + c0030ff0: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37693 { - c0030e22: 7159 addi sp,sp,-112 - c0030e24: f0a2 sd s0,96(sp) - c0030e26: eca6 sd s1,88(sp) - c0030e28: e4ce sd s3,72(sp) - c0030e2a: e0d2 sd s4,64(sp) - c0030e2c: f486 sd ra,104(sp) - c0030e2e: e8ca sd s2,80(sp) - c0030e30: 842a mv s0,a0 - c0030e32: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37691 + c0030ff2: 7159 addi sp,sp,-112 + c0030ff4: f0a2 sd s0,96(sp) + c0030ff6: eca6 sd s1,88(sp) + c0030ff8: e4ce sd s3,72(sp) + c0030ffa: e0d2 sd s4,64(sp) + c0030ffc: f486 sd ra,104(sp) + c0030ffe: e8ca sd s2,80(sp) + c0031000: 842a mv s0,a0 + c0031002: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37699 obj = JS_ToObject(ctx, argv[0]); - c0030e34: fb8f70ef jal ra,c00285ec - c0030e38: e82a sd a0,16(sp) - c0030e3a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37692 + c0031004: fb8f70ef jal ra,c00287bc + c0031008: e82a sd a0,16(sp) + c003100a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37700 if (JS_IsException(obj)) - c0030e3c: 0005879b sext.w a5,a1 - c0030e40: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37691 + c003100c: 0005879b sext.w a5,a1 + c0031010: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37699 obj = JS_ToObject(ctx, argv[0]); - c0030e42: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37692 + c0031012: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37700 if (JS_IsException(obj)) - c0030e44: 01479e63 bne a5,s4,c0030e60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37693 + c0031014: 01479e63 bne a5,s4,c0031030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37701 return obj; - c0030e48: f02a sd a0,32(sp) - c0030e4a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37707 (discriminator 1) -} - c0030e4c: 70a6 ld ra,104(sp) - c0030e4e: 7406 ld s0,96(sp) - c0030e50: 7502 ld a0,32(sp) - c0030e52: 75a2 ld a1,40(sp) - c0030e54: 64e6 ld s1,88(sp) - c0030e56: 6946 ld s2,80(sp) - c0030e58: 69a6 ld s3,72(sp) - c0030e5a: 6a06 ld s4,64(sp) - c0030e5c: 6165 addi sp,sp,112 - c0030e5e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37694 + c0031018: f02a sd a0,32(sp) + c003101a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37715 (discriminator 1) +} + c003101c: 70a6 ld ra,104(sp) + c003101e: 7406 ld s0,96(sp) + c0031020: 7502 ld a0,32(sp) + c0031022: 75a2 ld a1,40(sp) + c0031024: 64e6 ld s1,88(sp) + c0031026: 6946 ld s2,80(sp) + c0031028: 69a6 ld s3,72(sp) + c003102a: 6a06 ld s4,64(sp) + c003102c: 6165 addi sp,sp,112 + c003102e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37702 atom = JS_ValueToAtom(ctx, argv[1]); - c0030e60: 688c ld a1,16(s1) - c0030e62: 6c90 ld a2,24(s1) - c0030e64: 8522 mv a0,s0 - c0030e66: fb6f00ef jal ra,c002161c - c0030e6a: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37695 + c0031030: 688c ld a1,16(s1) + c0031032: 6c90 ld a2,24(s1) + c0031034: 8522 mv a0,s0 + c0031036: fb6f00ef jal ra,c00217ec + c003103a: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37703 if (unlikely(atom == JS_ATOM_NULL)) { - c0030e6e: 00091a63 bnez s2,c0030e82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37696 - JS_FreeValue(ctx, obj); - c0030e72: 65c2 ld a1,16(sp) - c0030e74: 6662 ld a2,24(sp) - c0030e76: 8522 mv a0,s0 - c0030e78: cc1d60ef jal ra,c0007b38 + c003103e: 00091a63 bnez s2,c0031052 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37704 + JS_FreeValue(ctx, obj); + c0031042: 65c2 ld a1,16(sp) + c0031044: 6662 ld a2,24(sp) + c0031046: 8522 mv a0,s0 + c0031048: bdfd60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37712 return JS_EXCEPTION; - c0030e7c: f002 sd zero,32(sp) - c0030e7e: f452 sd s4,40(sp) - c0030e80: b7f1 j c0030e4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37700 + c003104c: f002 sd zero,32(sp) + c003104e: f452 sd s4,40(sp) + c0031050: b7f1 j c003101c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37708 ret = JS_GetOwnPropertyInternal(ctx, NULL, p, atom); - c0030e82: 864e mv a2,s3 - c0030e84: 86ca mv a3,s2 - c0030e86: 4581 li a1,0 - c0030e88: 8522 mv a0,s0 - c0030e8a: 87ae10ef jal ra,c0011f04 - c0030e8e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37701 + c0031052: 864e mv a2,s3 + c0031054: 86ca mv a3,s2 + c0031056: 4581 li a1,0 + c0031058: 8522 mv a0,s0 + c003105a: f99e00ef jal ra,c0011ff2 + c003105e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37709 JS_FreeAtom(ctx, atom); - c0030e90: 85ca mv a1,s2 - c0030e92: 8522 mv a0,s0 - c0030e94: e78d60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37702 + c0031060: 85ca mv a1,s2 + c0031062: 8522 mv a0,s0 + c0031064: d96d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37710 JS_FreeValue(ctx, obj); - c0030e98: 65c2 ld a1,16(sp) - c0030e9a: 6662 ld a2,24(sp) - c0030e9c: 8522 mv a0,s0 - c0030e9e: c9bd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37703 + c0031068: 65c2 ld a1,16(sp) + c003106a: 6662 ld a2,24(sp) + c003106c: 8522 mv a0,s0 + c003106e: bb9d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37711 if (ret < 0) - c0030ea2: fc04cde3 bltz s1,c0030e7c + c0031072: fc04cde3 bltz s1,c003104c JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030ea6: 009034b3 snez s1,s1 - c0030eaa: da02 sw zero,52(sp) - c0030eac: d826 sw s1,48(sp) - c0030eae: 77c2 ld a5,48(sp) - c0030eb0: f03e sd a5,32(sp) - c0030eb2: 4785 li a5,1 - c0030eb4: f43e sd a5,40(sp) + c0031076: 009034b3 snez s1,s1 + c003107a: da02 sw zero,52(sp) + c003107c: d826 sw s1,48(sp) + c003107e: 77c2 ld a5,48(sp) + c0031080: f03e sd a5,32(sp) + c0031082: 4785 li a5,1 + c0031084: f43e sd a5,40(sp) js_object_hasOwn(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37706 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37714 return JS_NewBool(ctx, ret); - c0030eb6: bf59 j c0030e4c + c0031086: bf59 j c003101c -00000000c0030eb8 : +00000000c0031088 : js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37399 -{ - c0030eb8: 710d addi sp,sp,-352 - c0030eba: eaa2 sd s0,336(sp) - c0030ebc: e6a6 sd s1,328(sp) - c0030ebe: ee86 sd ra,344(sp) - c0030ec0: e2ca sd s2,320(sp) - c0030ec2: fe4e sd s3,312(sp) - c0030ec4: fa52 sd s4,304(sp) - c0030ec6: f656 sd s5,296(sp) - c0030ec8: f25a sd s6,288(sp) - c0030eca: 842a mv s0,a0 - c0030ecc: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37407 +{ + c0031088: 710d addi sp,sp,-352 + c003108a: eaa2 sd s0,336(sp) + c003108c: e6a6 sd s1,328(sp) + c003108e: ee86 sd ra,344(sp) + c0031090: e2ca sd s2,320(sp) + c0031092: fe4e sd s3,312(sp) + c0031094: fa52 sd s4,304(sp) + c0031096: f656 sd s5,296(sp) + c0031098: f25a sd s6,288(sp) + c003109a: 842a mv s0,a0 + c003109c: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37414 if (magic) { - c0030ece: c3bd beqz a5,c0030f34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37408 + c003109e: c3bd beqz a5,c0031104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37416 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) - c0030ed0: 670c ld a1,8(a4) - c0030ed2: 57fd li a5,-1 - c0030ed4: 0005871b sext.w a4,a1 - c0030ed8: 00f70d63 beq a4,a5,c0030ef2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37459 -} - c0030edc: 6456 ld s0,336(sp) - c0030ede: 60f6 ld ra,344(sp) - c0030ee0: 64b6 ld s1,328(sp) - c0030ee2: 6916 ld s2,320(sp) - c0030ee4: 79f2 ld s3,312(sp) - c0030ee6: 7a52 ld s4,304(sp) - c0030ee8: 7ab2 ld s5,296(sp) - c0030eea: 7b12 ld s6,288(sp) - c0030eec: 6135 addi sp,sp,352 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37409 + c00310a0: 670c ld a1,8(a4) + c00310a2: 57fd li a5,-1 + c00310a4: 0005871b sext.w a4,a1 + c00310a8: 00f70d63 beq a4,a5,c00310c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37467 +} + c00310ac: 6456 ld s0,336(sp) + c00310ae: 60f6 ld ra,344(sp) + c00310b0: 64b6 ld s1,328(sp) + c00310b2: 6916 ld s2,320(sp) + c00310b4: 79f2 ld s3,312(sp) + c00310b6: 7a52 ld s4,304(sp) + c00310b8: 7ab2 ld s5,296(sp) + c00310ba: 7b12 ld s6,288(sp) + c00310bc: 6135 addi sp,sp,352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37417 return JS_ThrowTypeErrorNotAnObject(ctx); - c0030eee: a8be206f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37410 + c00310be: 9a9e206f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37418 obj = JS_DupValue(ctx, argv[0]); - c0030ef2: 6088 ld a0,0(s1) - c0030ef4: f7ad50ef jal ra,c000666e - c0030ef8: 8a2a mv s4,a0 - c0030efa: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37417 + c00310c2: 6088 ld a0,0(s1) + c00310c4: e98d50ef jal ra,c000675c + c00310c8: 8a2a mv s4,a0 + c00310ca: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37425 atom = JS_ValueToAtom(ctx, prop); - c0030efc: 688c ld a1,16(s1) - c0030efe: 6c90 ld a2,24(s1) - c0030f00: 8522 mv a0,s0 - c0030f02: f1af00ef jal ra,c002161c - c0030f06: 00050a9b sext.w s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37418 + c00310cc: 688c ld a1,16(s1) + c00310ce: 6c90 ld a2,24(s1) + c00310d0: 8522 mv a0,s0 + c00310d2: f1af00ef jal ra,c00217ec + c00310d6: 00050a9b sext.w s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37426 if (unlikely(atom == JS_ATOM_NULL)) - c0030f0a: 100a8663 beqz s5,c0031016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37421 + c00310da: 100a8663 beqz s5,c00311e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37429 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0030f0e: 0009879b sext.w a5,s3 - c0030f12: 577d li a4,-1 - c0030f14: 04e78963 beq a5,a4,c0030f66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37420 + c00310de: 0009879b sext.w a5,s3 + c00310e2: 577d li a4,-1 + c00310e4: 04e78963 beq a5,a4,c0031136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37428 ret = JS_UNDEFINED; - c0030f18: 448d li s1,3 - c0030f1a: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37448 + c00310e8: 448d li s1,3 + c00310ea: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37456 JS_FreeAtom(ctx, atom); - c0030f1c: 85d6 mv a1,s5 - c0030f1e: 8522 mv a0,s0 - c0030f20: decd60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37449 + c00310ec: 85d6 mv a1,s5 + c00310ee: 8522 mv a0,s0 + c00310f0: d0ad60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37457 JS_FreeValue(ctx, obj); - c0030f24: 85d2 mv a1,s4 - c0030f26: 864e mv a2,s3 - c0030f28: 8522 mv a0,s0 - c0030f2a: c0fd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37450 + c00310f4: 85d2 mv a1,s4 + c00310f6: 864e mv a2,s3 + c00310f8: 8522 mv a0,s0 + c00310fa: b2dd60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37458 return ret; - c0030f2e: e4ca sd s2,72(sp) - c0030f30: e8a6 sd s1,80(sp) - c0030f32: a831 j c0030f4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37412 + c00310fe: e4ca sd s2,72(sp) + c0031100: e8a6 sd s1,80(sp) + c0031102: a831 j c003111e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37420 obj = JS_ToObject(ctx, argv[0]); - c0030f34: 630c ld a1,0(a4) - c0030f36: 6710 ld a2,8(a4) - c0030f38: eb4f70ef jal ra,c00285ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37413 + c0031104: 630c ld a1,0(a4) + c0031106: 6710 ld a2,8(a4) + c0031108: eb4f70ef jal ra,c00287bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37421 if (JS_IsException(obj)) - c0030f3c: 0005871b sext.w a4,a1 - c0030f40: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37412 + c003110c: 0005871b sext.w a4,a1 + c0031110: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37420 obj = JS_ToObject(ctx, argv[0]); - c0030f42: 8a2a mv s4,a0 - c0030f44: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37413 + c0031112: 8a2a mv s4,a0 + c0031114: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37421 if (JS_IsException(obj)) - c0030f46: faf71be3 bne a4,a5,c0030efc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37414 - return obj; - c0030f4a: e4aa sd a0,72(sp) - c0030f4c: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37459 -} - c0030f4e: 60f6 ld ra,344(sp) - c0030f50: 6456 ld s0,336(sp) - c0030f52: 6526 ld a0,72(sp) - c0030f54: 65c6 ld a1,80(sp) - c0030f56: 64b6 ld s1,328(sp) - c0030f58: 6916 ld s2,320(sp) - c0030f5a: 79f2 ld s3,312(sp) - c0030f5c: 7a52 ld s4,304(sp) - c0030f5e: 7ab2 ld s5,296(sp) - c0030f60: 7b12 ld s6,288(sp) - c0030f62: 6135 addi sp,sp,352 - c0030f64: 8082 ret + c0031116: faf71be3 bne a4,a5,c00310cc /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37422 + return obj; + c003111a: e4aa sd a0,72(sp) + c003111c: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37467 +} + c003111e: 60f6 ld ra,344(sp) + c0031120: 6456 ld s0,336(sp) + c0031122: 6526 ld a0,72(sp) + c0031124: 65c6 ld a1,80(sp) + c0031126: 64b6 ld s1,328(sp) + c0031128: 6916 ld s2,320(sp) + c003112a: 79f2 ld s3,312(sp) + c003112c: 7a52 ld s4,304(sp) + c003112e: 7ab2 ld s5,296(sp) + c0031130: 7b12 ld s6,288(sp) + c0031132: 6135 addi sp,sp,352 + c0031134: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37430 res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(obj), atom); - c0030f66: 86d6 mv a3,s5 - c0030f68: 8652 mv a2,s4 - c0030f6a: 11ac addi a1,sp,232 - c0030f6c: 8522 mv a0,s0 - c0030f6e: f97e00ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37423 + c0031136: 86d6 mv a3,s5 + c0031138: 8652 mv a2,s4 + c003113a: 11ac addi a1,sp,232 + c003113c: 8522 mv a0,s0 + c003113e: eb5e00ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37431 if (res < 0) - c0030f72: 0a054263 bltz a0,c0031016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37425 + c0031142: 0a054263 bltz a0,c00311e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37433 if (res) { - c0030f76: d14d beqz a0,c0030f18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37426 + c0031146: d14d beqz a0,c00310e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37434 ret = JS_NewObject(ctx); - c0030f78: 8522 mv a0,s0 - c0030f7a: e0fe50ef jal ra,c0016d88 - c0030f7e: f42a sd a0,40(sp) - c0030f80: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37427 + c0031148: 8522 mv a0,s0 + c003114a: e0fe50ef jal ra,c0016f58 + c003114e: f42a sd a0,40(sp) + c0031150: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37435 if (JS_IsException(ret)) - c0030f82: 0005871b sext.w a4,a1 - c0030f86: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37426 + c0031152: 0005871b sext.w a4,a1 + c0031156: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37434 ret = JS_NewObject(ctx); - c0030f88: 892a mv s2,a0 - c0030f8a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37427 + c0031158: 892a mv s2,a0 + c003115a: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37435 if (JS_IsException(ret)) - c0030f8c: 06f70c63 beq a4,a5,c0031004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37430 + c003115c: 06f70c63 beq a4,a5,c00311d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37438 if (desc.flags & JS_PROP_GETSET) { - c0030f90: 57ae lw a5,232(sp) - c0030f92: 8bc1 andi a5,a5,16 - c0030f94: cfd1 beqz a5,c0031030 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37431 + c0031160: 57ae lw a5,232(sp) + c0031162: 8bc1 andi a5,a5,16 + c0031164: cfd1 beqz a5,c0031200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37439 if (JS_DefinePropertyValue(ctx, ret, JS_ATOM_get, JS_DupValue(ctx, desc.getter), flags) < 0 - c0030f96: 6512 ld a0,256(sp) - c0030f98: 65b2 ld a1,264(sp) - c0030f9a: 6b11 lui s6,0x4 - c0030f9c: ed2d50ef jal ra,c000666e - c0030fa0: 87ae mv a5,a1 - c0030fa2: 7642 ld a2,48(sp) - c0030fa4: 75a2 ld a1,40(sp) - c0030fa6: 872a mv a4,a0 - c0030fa8: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> - c0030fac: 04200693 li a3,66 - c0030fb0: 8522 mv a0,s0 - c0030fb2: 804e20ef jal ra,c0012fb6 - c0030fb6: 04054763 bltz a0,c0031004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37432 - || JS_DefinePropertyValue(ctx, ret, JS_ATOM_set, JS_DupValue(ctx, desc.setter), flags) < 0) - c0030fba: 6552 ld a0,272(sp) - c0030fbc: 65f2 ld a1,280(sp) - c0030fbe: eb0d50ef jal ra,c000666e - c0030fc2: 872a mv a4,a0 - c0030fc4: 87ae mv a5,a1 - c0030fc6: 007b0813 addi a6,s6,7 - c0030fca: 04300693 li a3,67 - c0030fce: 75a2 ld a1,40(sp) - c0030fd0: 7642 ld a2,48(sp) - c0030fd2: 8522 mv a0,s0 - c0030fd4: fe3e10ef jal ra,c0012fb6 - c0030fd8: 02054663 bltz a0,c0031004 + c0031166: 6512 ld a0,256(sp) + c0031168: 65b2 ld a1,264(sp) + c003116a: 6b11 lui s6,0x4 + c003116c: df0d50ef jal ra,c000675c + c0031170: 87ae mv a5,a1 + c0031172: 7642 ld a2,48(sp) + c0031174: 75a2 ld a1,40(sp) + c0031176: 872a mv a4,a0 + c0031178: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> + c003117c: 04200693 li a3,66 + c0031180: 8522 mv a0,s0 + c0031182: f23e10ef jal ra,c00130a4 + c0031186: 04054763 bltz a0,c00311d4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37440 + || JS_DefinePropertyValue(ctx, ret, JS_ATOM_set, JS_DupValue(ctx, desc.setter), flags) < 0) + c003118a: 6552 ld a0,272(sp) + c003118c: 65f2 ld a1,280(sp) + c003118e: dced50ef jal ra,c000675c + c0031192: 872a mv a4,a0 + c0031194: 87ae mv a5,a1 + c0031196: 007b0813 addi a6,s6,7 + c003119a: 04300693 li a3,67 + c003119e: 75a2 ld a1,40(sp) + c00311a0: 7642 ld a2,48(sp) + c00311a2: 8522 mv a0,s0 + c00311a4: f01e10ef jal ra,c00130a4 + c00311a8: 02054663 bltz a0,c00311d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37448 if (JS_DefinePropertyValue(ctx, ret, JS_ATOM_enumerable, - c0030fdc: 57ae lw a5,232(sp) + c00311ac: 57ae lw a5,232(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030fde: c782 sw zero,204(sp) + c00311ae: c782 sw zero,204(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37440 - c0030fe0: 75a2 ld a1,40(sp) - c0030fe2: 4027d79b sraiw a5,a5,0x2 - c0030fe6: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37448 + c00311b0: 75a2 ld a1,40(sp) + c00311b2: 4027d79b sraiw a5,a5,0x2 + c00311b6: 8b85 andi a5,a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0030fe8: c5be sw a5,200(sp) + c00311b8: c5be sw a5,200(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37440 - c0030fea: 672e ld a4,200(sp) - c0030fec: 7642 ld a2,48(sp) - c0030fee: 6b11 lui s6,0x4 - c0030ff0: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> - c0030ff4: 4785 li a5,1 - c0030ff6: 04000693 li a3,64 - c0030ffa: 8522 mv a0,s0 - c0030ffc: fbbe10ef jal ra,c0012fb6 - c0031000: 06055763 bgez a0,c003106e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37448 + c00311ba: 672e ld a4,200(sp) + c00311bc: 7642 ld a2,48(sp) + c00311be: 6b11 lui s6,0x4 + c00311c0: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> + c00311c4: 4785 li a5,1 + c00311c6: 04000693 li a3,64 + c00311ca: 8522 mv a0,s0 + c00311cc: ed9e10ef jal ra,c00130a4 + c00311d0: 06055763 bgez a0,c003123e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37461 js_free_desc(ctx, &desc); - c0031004: 11ac addi a1,sp,232 - c0031006: 8522 mv a0,s0 - c0031008: e2dd60ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37454 + c00311d4: 11ac addi a1,sp,232 + c00311d6: 8522 mv a0,s0 + c00311d8: d4bd60ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37462 JS_FreeValue(ctx, ret); - c003100c: 75a2 ld a1,40(sp) - c003100e: 7642 ld a2,48(sp) - c0031010: 8522 mv a0,s0 - c0031012: b27d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37456 + c00311dc: 75a2 ld a1,40(sp) + c00311de: 7642 ld a2,48(sp) + c00311e0: 8522 mv a0,s0 + c00311e2: a45d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37464 JS_FreeAtom(ctx, atom); - c0031016: 85d6 mv a1,s5 - c0031018: 8522 mv a0,s0 - c003101a: cf2d60ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37457 + c00311e6: 85d6 mv a1,s5 + c00311e8: 8522 mv a0,s0 + c00311ea: c10d60ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37465 JS_FreeValue(ctx, obj); - c003101e: 85d2 mv a1,s4 - c0031020: 864e mv a2,s3 - c0031022: 8522 mv a0,s0 - c0031024: b15d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37458 + c00311ee: 85d2 mv a1,s4 + c00311f0: 864e mv a2,s3 + c00311f2: 8522 mv a0,s0 + c00311f4: a33d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37466 return JS_EXCEPTION; - c0031028: 4799 li a5,6 - c003102a: e482 sd zero,72(sp) - c003102c: e8be sd a5,80(sp) - c003102e: b705 j c0030f4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37435 + c00311f8: 4799 li a5,6 + c00311fa: e482 sd zero,72(sp) + c00311fc: e8be sd a5,80(sp) + c00311fe: b705 j c003111e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37443 if (JS_DefinePropertyValue(ctx, ret, JS_ATOM_value, JS_DupValue(ctx, desc.value), flags) < 0 - c0031030: 754e ld a0,240(sp) - c0031032: 75ee ld a1,248(sp) - c0031034: 6b11 lui s6,0x4 - c0031036: e38d50ef jal ra,c000666e - c003103a: 87ae mv a5,a1 - c003103c: 7642 ld a2,48(sp) - c003103e: 75a2 ld a1,40(sp) - c0031040: 872a mv a4,a0 - c0031042: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> - c0031046: 04100693 li a3,65 - c003104a: 8522 mv a0,s0 - c003104c: f6be10ef jal ra,c0012fb6 - c0031050: fa054ae3 bltz a0,c0031004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37436 + c0031200: 754e ld a0,240(sp) + c0031202: 75ee ld a1,248(sp) + c0031204: 6b11 lui s6,0x4 + c0031206: d56d50ef jal ra,c000675c + c003120a: 87ae mv a5,a1 + c003120c: 7642 ld a2,48(sp) + c003120e: 75a2 ld a1,40(sp) + c0031210: 872a mv a4,a0 + c0031212: 007b0813 addi a6,s6,7 # 4007 <__clzdi2-0xbfffbff9> + c0031216: 04100693 li a3,65 + c003121a: 8522 mv a0,s0 + c003121c: e89e10ef jal ra,c00130a4 + c0031220: fa054ae3 bltz a0,c00311d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37444 || JS_DefinePropertyValue(ctx, ret, JS_ATOM_writable, - c0031054: 57ae lw a5,232(sp) + c0031224: 57ae lw a5,232(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0031056: df02 sw zero,188(sp) + c0031226: df02 sw zero,188(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37436 - c0031058: 007b0813 addi a6,s6,7 - c003105c: 4017d79b sraiw a5,a5,0x1 - c0031060: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37444 + c0031228: 007b0813 addi a6,s6,7 + c003122c: 4017d79b sraiw a5,a5,0x1 + c0031230: 8b85 andi a5,a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0031062: dd3e sw a5,184(sp) + c0031232: dd3e sw a5,184(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37436 - c0031064: 776a ld a4,184(sp) - c0031066: 4785 li a5,1 - c0031068: 03f00693 li a3,63 - c003106c: b78d j c0030fce - c003106e: 57ae lw a5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37444 + c0031234: 776a ld a4,184(sp) + c0031236: 4785 li a5,1 + c0031238: 03f00693 li a3,63 + c003123c: b78d j c003119e + c003123e: 57ae lw a5,232(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0031070: cf82 sw zero,220(sp) + c0031240: cf82 sw zero,220(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37450 || JS_DefinePropertyValue(ctx, ret, JS_ATOM_configurable, - c0031072: 75a2 ld a1,40(sp) - c0031074: 8b85 andi a5,a5,1 + c0031242: 75a2 ld a1,40(sp) + c0031244: 8b85 andi a5,a5,1 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0031076: cdbe sw a5,216(sp) + c0031246: cdbe sw a5,216(sp) js_object_getOwnPropertyDescriptor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37442 - c0031078: 676e ld a4,216(sp) - c003107a: 7642 ld a2,48(sp) - c003107c: 007b0813 addi a6,s6,7 - c0031080: 4785 li a5,1 - c0031082: 03e00693 li a3,62 - c0031086: 8522 mv a0,s0 - c0031088: f2fe10ef jal ra,c0012fb6 - c003108c: f6054ce3 bltz a0,c0031004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37445 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37450 + c0031248: 676e ld a4,216(sp) + c003124a: 7642 ld a2,48(sp) + c003124c: 007b0813 addi a6,s6,7 + c0031250: 4785 li a5,1 + c0031252: 03e00693 li a3,62 + c0031256: 8522 mv a0,s0 + c0031258: e4de10ef jal ra,c00130a4 + c003125c: f6054ce3 bltz a0,c00311d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37453 js_free_desc(ctx, &desc); - c0031090: 11ac addi a1,sp,232 - c0031092: 8522 mv a0,s0 - c0031094: da1d60ef jal ra,c0007e34 - c0031098: b551 j c0030f1c + c0031260: 11ac addi a1,sp,232 + c0031262: 8522 mv a0,s0 + c0031264: cbfd60ef jal ra,c0007f22 + c0031268: b551 j c00310ec -00000000c003109a : +00000000c003126a : js_object_getOwnPropertyDescriptors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37463 -{ - c003109a: 7115 addi sp,sp,-224 - c003109c: e9a2 sd s0,208(sp) - c003109e: fd4e sd s3,184(sp) - c00310a0: ed86 sd ra,216(sp) - c00310a2: e5a6 sd s1,200(sp) - c00310a4: e1ca sd s2,192(sp) - c00310a6: f952 sd s4,176(sp) - c00310a8: f556 sd s5,168(sp) - c00310aa: f15a sd s6,160(sp) - c00310ac: ed5e sd s7,152(sp) - c00310ae: e962 sd s8,144(sp) - c00310b0: e02e sd a1,0(sp) - c00310b2: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37471 +{ + c003126a: 7115 addi sp,sp,-224 + c003126c: e9a2 sd s0,208(sp) + c003126e: fd4e sd s3,184(sp) + c0031270: ed86 sd ra,216(sp) + c0031272: e5a6 sd s1,200(sp) + c0031274: e1ca sd s2,192(sp) + c0031276: f952 sd s4,176(sp) + c0031278: f556 sd s5,168(sp) + c003127a: f15a sd s6,160(sp) + c003127c: ed5e sd s7,152(sp) + c003127e: e962 sd s8,144(sp) + c0031280: e02e sd a1,0(sp) + c0031282: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37479 obj = JS_ToObject(ctx, argv[0]); - c00310b4: 630c ld a1,0(a4) - c00310b6: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37463 + c0031284: 630c ld a1,0(a4) + c0031286: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37471 { - c00310b8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37470 + c0031288: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37478 r = JS_UNDEFINED; - c00310ba: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37471 + c003128a: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37479 obj = JS_ToObject(ctx, argv[0]); - c00310bc: d30f70ef jal ra,c00285ec - c00310c0: f42e sd a1,40(sp) - c00310c2: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37472 + c003128c: d30f70ef jal ra,c00287bc + c0031290: f42e sd a1,40(sp) + c0031292: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37480 if (JS_IsException(obj)) - c00310c4: 2581 sext.w a1,a1 - c00310c6: 4999 li s3,6 - c00310c8: 03359263 bne a1,s3,c00310ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37473 + c0031294: 2581 sext.w a1,a1 + c0031296: 4999 li s3,6 + c0031298: 03359263 bne a1,s3,c00312bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37481 return JS_EXCEPTION; - c00310cc: f882 sd zero,112(sp) - c00310ce: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37510 (discriminator 1) -} - c00310d0: 60ee ld ra,216(sp) - c00310d2: 644e ld s0,208(sp) - c00310d4: 7546 ld a0,112(sp) - c00310d6: 75e6 ld a1,120(sp) - c00310d8: 64ae ld s1,200(sp) - c00310da: 690e ld s2,192(sp) - c00310dc: 79ea ld s3,184(sp) - c00310de: 7a4a ld s4,176(sp) - c00310e0: 7aaa ld s5,168(sp) - c00310e2: 7b0a ld s6,160(sp) - c00310e4: 6bea ld s7,152(sp) - c00310e6: 6c4a ld s8,144(sp) - c00310e8: 612d addi sp,sp,224 - c00310ea: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37476 + c003129c: f882 sd zero,112(sp) + c003129e: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37518 (discriminator 1) +} + c00312a0: 60ee ld ra,216(sp) + c00312a2: 644e ld s0,208(sp) + c00312a4: 7546 ld a0,112(sp) + c00312a6: 75e6 ld a1,120(sp) + c00312a8: 64ae ld s1,200(sp) + c00312aa: 690e ld s2,192(sp) + c00312ac: 79ea ld s3,184(sp) + c00312ae: 7a4a ld s4,176(sp) + c00312b0: 7aaa ld s5,168(sp) + c00312b2: 7b0a ld s6,160(sp) + c00312b4: 6bea ld s7,152(sp) + c00312b6: 6c4a ld s8,144(sp) + c00312b8: 612d addi sp,sp,224 + c00312ba: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37484 if (JS_GetOwnPropertyNamesInternal(ctx, &props, &len, p, - c00310ec: 86aa mv a3,a0 - c00310ee: 84aa mv s1,a0 - c00310f0: 470d li a4,3 - c00310f2: 0850 addi a2,sp,20 - c00310f4: 082c addi a1,sp,24 - c00310f6: 8522 mv a0,s0 - c00310f8: cb2ff0ef jal ra,c00305aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37470 + c00312bc: 86aa mv a3,a0 + c00312be: 84aa mv s1,a0 + c00312c0: 470d li a4,3 + c00312c2: 0850 addi a2,sp,20 + c00312c4: 082c addi a1,sp,24 + c00312c6: 8522 mv a0,s0 + c00312c8: cb2ff0ef jal ra,c003077a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37478 r = JS_UNDEFINED; - c00310fc: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37476 + c00312cc: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37484 if (JS_GetOwnPropertyNamesInternal(ctx, &props, &len, p, - c00310fe: ed55 bnez a0,c00311ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37479 + c00312ce: ed55 bnez a0,c003138a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37487 r = JS_NewObject(ctx); - c0031100: 8522 mv a0,s0 - c0031102: c87e50ef jal ra,c0016d88 - c0031106: f82a sd a0,48(sp) - c0031108: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37480 + c00312d0: 8522 mv a0,s0 + c00312d2: c87e50ef jal ra,c0016f58 + c00312d6: f82a sd a0,48(sp) + c00312d8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37488 if (JS_IsException(r)) - c003110a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37479 + c00312da: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37487 r = JS_NewObject(ctx); - c003110e: 892e mv s2,a1 - c0031110: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37480 + c00312de: 892e mv s2,a1 + c00312e0: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37488 if (JS_IsException(r)) - c0031112: 0b378463 beq a5,s3,c00311ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37496 + c00312e2: 0b378463 beq a5,s3,c003138a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37504 if (JS_DefinePropertyValue(ctx, r, props[i].atom, desc, - c0031116: 6a11 lui s4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37482 + c00312e6: 6a11 lui s4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 for(i = 0; i < len; i++) { - c0031118: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37487 + c00312e8: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37495 if (JS_IsException(atomValue)) - c003111a: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37491 + c00312ea: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37499 desc = js_object_getOwnPropertyDescriptor(ctx, JS_UNDEFINED, 2, args, 0); - c003111c: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37496 + c00312ec: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37504 if (JS_DefinePropertyValue(ctx, r, props[i].atom, desc, - c003111e: 0a1d addi s4,s4,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37482 (discriminator 1) + c00312ee: 0a1d addi s4,s4,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 (discriminator 1) for(i = 0; i < len; i++) { - c0031120: 4652 lw a2,20(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37486 (discriminator 1) + c00312f0: 4652 lw a2,20(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37494 (discriminator 1) atomValue = JS_AtomToValue(ctx, props[i].atom); - c0031122: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37482 (discriminator 1) + c00312f2: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 (discriminator 1) for(i = 0; i < len; i++) { - c0031124: 00c9ee63 bltu s3,a2,c0031140 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37501 + c00312f4: 00c9ee63 bltu s3,a2,c0031310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37509 js_free_prop_enum(ctx, props, len); - c0031128: 8522 mv a0,s0 - c003112a: bf2d60ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37502 + c00312f8: 8522 mv a0,s0 + c00312fa: b10d60ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37510 JS_FreeValue(ctx, obj); - c003112e: 7622 ld a2,40(sp) - c0031130: 85a6 mv a1,s1 - c0031132: 8522 mv a0,s0 - c0031134: a05d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37503 + c00312fe: 7622 ld a2,40(sp) + c0031300: 85a6 mv a1,s1 + c0031302: 8522 mv a0,s0 + c0031304: 923d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37511 return r; - c0031138: 77c2 ld a5,48(sp) - c003113a: fcca sd s2,120(sp) - c003113c: f8be sd a5,112(sp) - c003113e: bf49 j c00310d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37486 + c0031308: 77c2 ld a5,48(sp) + c003130a: fcca sd s2,120(sp) + c003130c: f8be sd a5,112(sp) + c003130e: bf49 j c00312a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37494 atomValue = JS_AtomToValue(ctx, props[i].atom); - c0031140: 02099793 slli a5,s3,0x20 - c0031144: 01d7dc13 srli s8,a5,0x1d - c0031148: 95e2 add a1,a1,s8 - c003114a: 41cc lw a1,4(a1) - c003114c: 8522 mv a0,s0 - c003114e: 9e5e80ef jal ra,c0019b32 - c0031152: e0aa sd a0,64(sp) - c0031154: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37487 + c0031310: 02099793 slli a5,s3,0x20 + c0031314: 01d7dc13 srli s8,a5,0x1d + c0031318: 95e2 add a1,a1,s8 + c003131a: 41cc lw a1,4(a1) + c003131c: 8522 mv a0,s0 + c003131e: 9e5e80ef jal ra,c0019d02 + c0031322: e0aa sd a0,64(sp) + c0031324: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37495 if (JS_IsException(atomValue)) - c0031156: 0005879b sext.w a5,a1 - c003115a: 07678063 beq a5,s6,c00311ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37489 + c0031326: 0005879b sext.w a5,a1 + c003132a: 07678063 beq a5,s6,c003138a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37497 args[0] = obj; - c003115e: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37491 + c003132e: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37499 desc = js_object_getOwnPropertyDescriptor(ctx, JS_UNDEFINED, 2, args, 0); - c0031160: 1898 addi a4,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 + c0031330: 1898 addi a4,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37498 args[1] = atomValue; - c0031162: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37489 + c0031332: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37497 args[0] = obj; - c0031164: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 + c0031334: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37498 args[1] = atomValue; - c0031166: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37491 + c0031336: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37499 desc = js_object_getOwnPropertyDescriptor(ctx, JS_UNDEFINED, 2, args, 0); - c0031168: 4781 li a5,0 - c003116a: 4689 li a3,2 - c003116c: 460d li a2,3 - c003116e: 4581 li a1,0 - c0031170: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37489 + c0031338: 4781 li a5,0 + c003133a: 4689 li a3,2 + c003133c: 460d li a2,3 + c003133e: 4581 li a1,0 + c0031340: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37497 args[0] = obj; - c0031172: f026 sd s1,32(sp) - c0031174: f8a6 sd s1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37491 + c0031342: f026 sd s1,32(sp) + c0031344: f8a6 sd s1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37499 desc = js_object_getOwnPropertyDescriptor(ctx, JS_UNDEFINED, 2, args, 0); - c0031176: f082 sd zero,96(sp) - c0031178: f4de sd s7,104(sp) - c003117a: d3fff0ef jal ra,c0030eb8 - c003117e: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37492 + c0031346: f082 sd zero,96(sp) + c0031348: f4de sd s7,104(sp) + c003134a: d3fff0ef jal ra,c0031088 + c003134e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37500 JS_FreeValue(ctx, atomValue); - c0031180: 6626 ld a2,72(sp) - c0031182: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37491 + c0031350: 6626 ld a2,72(sp) + c0031352: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37499 desc = js_object_getOwnPropertyDescriptor(ctx, JS_UNDEFINED, 2, args, 0); - c0031184: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37492 + c0031354: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37500 JS_FreeValue(ctx, atomValue); - c0031186: 8522 mv a0,s0 - c0031188: 9b1d60ef jal ra,c0007b38 + c0031356: 8522 mv a0,s0 + c0031358: 8cfd60ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003118c: 67e6 ld a5,88(sp) - c003118e: 0007871b sext.w a4,a5 + c003135c: 67e6 ld a5,88(sp) + c003135e: 0007871b sext.w a4,a5 js_object_getOwnPropertyDescriptors(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37493 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37501 if (JS_IsException(desc)) - c0031192: 03670463 beq a4,s6,c00311ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37495 + c0031362: 03670463 beq a4,s6,c003138a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37503 if (!JS_IsUndefined(desc)) { - c0031196: 01771463 bne a4,s7,c003119e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37482 + c0031366: 01771463 bne a4,s7,c003136e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37490 for(i = 0; i < len; i++) { - c003119a: 2985 addiw s3,s3,1 - c003119c: b751 j c0031120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37496 + c003136a: 2985 addiw s3,s3,1 + c003136c: b751 j c00312f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37504 if (JS_DefinePropertyValue(ctx, r, props[i].atom, desc, - c003119e: 6762 ld a4,24(sp) - c00311a0: 75c2 ld a1,48(sp) - c00311a2: 8852 mv a6,s4 - c00311a4: 9c3a add s8,s8,a4 - c00311a6: 004c2683 lw a3,4(s8) - c00311aa: 6746 ld a4,80(sp) - c00311ac: 864a mv a2,s2 - c00311ae: 8522 mv a0,s0 - c00311b0: fc4a sd s2,56(sp) - c00311b2: e05e10ef jal ra,c0012fb6 - c00311b6: fe0552e3 bgez a0,c003119a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37506 + c003136e: 6762 ld a4,24(sp) + c0031370: 75c2 ld a1,48(sp) + c0031372: 8852 mv a6,s4 + c0031374: 9c3a add s8,s8,a4 + c0031376: 004c2683 lw a3,4(s8) + c003137a: 6746 ld a4,80(sp) + c003137c: 864a mv a2,s2 + c003137e: 8522 mv a0,s0 + c0031380: fc4a sd s2,56(sp) + c0031382: d23e10ef jal ra,c00130a4 + c0031386: fe0552e3 bgez a0,c003136a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37514 js_free_prop_enum(ctx, props, len); - c00311ba: 4652 lw a2,20(sp) - c00311bc: 65e2 ld a1,24(sp) - c00311be: 8522 mv a0,s0 - c00311c0: b5cd60ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37507 + c003138a: 4652 lw a2,20(sp) + c003138c: 65e2 ld a1,24(sp) + c003138e: 8522 mv a0,s0 + c0031390: a7ad60ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37515 JS_FreeValue(ctx, obj); - c00311c4: 7622 ld a2,40(sp) - c00311c6: 85a6 mv a1,s1 - c00311c8: 8522 mv a0,s0 - c00311ca: 96fd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37508 + c0031394: 7622 ld a2,40(sp) + c0031396: 85a6 mv a1,s1 + c0031398: 8522 mv a0,s0 + c003139a: 88dd60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37516 JS_FreeValue(ctx, r); - c00311ce: 75c2 ld a1,48(sp) - c00311d0: 8656 mv a2,s5 - c00311d2: 8522 mv a0,s0 - c00311d4: 965d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37509 + c003139e: 75c2 ld a1,48(sp) + c00313a0: 8656 mv a2,s5 + c00313a2: 8522 mv a0,s0 + c00313a4: 883d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37517 return JS_EXCEPTION; - c00311d8: 4799 li a5,6 - c00311da: f882 sd zero,112(sp) - c00311dc: fcbe sd a5,120(sp) - c00311de: bdcd j c00310d0 + c00313a8: 4799 li a5,6 + c00313aa: f882 sd zero,112(sp) + c00313ac: fcbe sd a5,120(sp) + c00313ae: bdcd j c00312a0 -00000000c00311e0 : +00000000c00313b0 : js_object_seal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37806 -{ - c00311e0: 712d addi sp,sp,-288 - c00311e2: f1da sd s6,224(sp) - c00311e4: ee06 sd ra,280(sp) - c00311e6: ea22 sd s0,272(sp) - c00311e8: e626 sd s1,264(sp) - c00311ea: e24a sd s2,256(sp) - c00311ec: fdce sd s3,248(sp) - c00311ee: f9d2 sd s4,240(sp) - c00311f0: f5d6 sd s5,232(sp) - c00311f2: edde sd s7,216(sp) - c00311f4: e9e2 sd s8,208(sp) - c00311f6: e5e6 sd s9,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37807 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37814 +{ + c00313b0: 712d addi sp,sp,-288 + c00313b2: f1da sd s6,224(sp) + c00313b4: ee06 sd ra,280(sp) + c00313b6: ea22 sd s0,272(sp) + c00313b8: e626 sd s1,264(sp) + c00313ba: e24a sd s2,256(sp) + c00313bc: fdce sd s3,248(sp) + c00313be: f9d2 sd s4,240(sp) + c00313c0: f5d6 sd s5,232(sp) + c00313c2: edde sd s7,216(sp) + c00313c4: e9e2 sd s8,208(sp) + c00313c6: e5e6 sd s9,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37815 JSValueConst obj = argv[0]; - c00311f8: 6304 ld s1,0(a4) - c00311fa: 00873903 ld s2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37806 + c00313c8: 6304 ld s1,0(a4) + c00313ca: 00873903 ld s2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37814 { - c00311fe: 8b3e mv s6,a5 - c0031200: f02e sd a1,32(sp) - c0031202: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37807 + c00313ce: 8b3e mv s6,a5 + c00313d0: f02e sd a1,32(sp) + c00313d2: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37815 JSValueConst obj = argv[0]; - c0031204: e4a6 sd s1,72(sp) - c0031206: e8ca sd s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37813 + c00313d4: e4a6 sd s1,72(sp) + c00313d6: e8ca sd s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37821 if (!JS_IsObject(obj)) - c0031208: 0009071b sext.w a4,s2 - c003120c: 57fd li a5,-1 - c003120e: 02f70263 beq a4,a5,c0031232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37853 -} - c0031212: 6452 ld s0,272(sp) - c0031214: 60f2 ld ra,280(sp) - c0031216: 79ee ld s3,248(sp) - c0031218: 7a4e ld s4,240(sp) - c003121a: 7aae ld s5,232(sp) - c003121c: 7b0e ld s6,224(sp) - c003121e: 6bee ld s7,216(sp) - c0031220: 6c4e ld s8,208(sp) - c0031222: 6cae ld s9,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37814 + c00313d8: 0009071b sext.w a4,s2 + c00313dc: 57fd li a5,-1 + c00313de: 02f70263 beq a4,a5,c0031402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37861 +} + c00313e2: 6452 ld s0,272(sp) + c00313e4: 60f2 ld ra,280(sp) + c00313e6: 79ee ld s3,248(sp) + c00313e8: 7a4e ld s4,240(sp) + c00313ea: 7aae ld s5,232(sp) + c00313ec: 7b0e ld s6,224(sp) + c00313ee: 6bee ld s7,216(sp) + c00313f0: 6c4e ld s8,208(sp) + c00313f2: 6cae ld s9,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37822 return JS_DupValue(ctx, obj); - c0031224: 8526 mv a0,s1 - c0031226: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37853 -} - c0031228: 64b2 ld s1,264(sp) - c003122a: 6912 ld s2,256(sp) - c003122c: 6115 addi sp,sp,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37814 + c00313f4: 8526 mv a0,s1 + c00313f6: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37861 +} + c00313f8: 64b2 ld s1,264(sp) + c00313fa: 6912 ld s2,256(sp) + c00313fc: 6115 addi sp,sp,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37822 return JS_DupValue(ctx, obj); - c003122e: c40d506f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37816 + c00313fe: b5ed506f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37824 res = JS_PreventExtensions(ctx, obj); - c0031232: 85a6 mv a1,s1 - c0031234: 864a mv a2,s2 - c0031236: 842a mv s0,a0 - c0031238: c3ee30ef jal ra,c0014676 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37817 + c0031402: 85a6 mv a1,s1 + c0031404: 864a mv a2,s2 + c0031406: 842a mv s0,a0 + c0031408: b5ce30ef jal ra,c0014764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37825 if (res < 0) - c003123c: 02055463 bgez a0,c0031264 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37852 (discriminator 1) + c003140c: 02055463 bgez a0,c0031434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37860 (discriminator 1) return JS_EXCEPTION; - c0031240: 4799 li a5,6 - c0031242: e502 sd zero,136(sp) - c0031244: e93e sd a5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37853 (discriminator 1) -} - c0031246: 60f2 ld ra,280(sp) - c0031248: 6452 ld s0,272(sp) - c003124a: 652a ld a0,136(sp) - c003124c: 65ca ld a1,144(sp) - c003124e: 64b2 ld s1,264(sp) - c0031250: 6912 ld s2,256(sp) - c0031252: 79ee ld s3,248(sp) - c0031254: 7a4e ld s4,240(sp) - c0031256: 7aae ld s5,232(sp) - c0031258: 7b0e ld s6,224(sp) - c003125a: 6bee ld s7,216(sp) - c003125c: 6c4e ld s8,208(sp) - c003125e: 6cae ld s9,200(sp) - c0031260: 6115 addi sp,sp,288 - c0031262: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37819 + c0031410: 4799 li a5,6 + c0031412: e502 sd zero,136(sp) + c0031414: e93e sd a5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37861 (discriminator 1) +} + c0031416: 60f2 ld ra,280(sp) + c0031418: 6452 ld s0,272(sp) + c003141a: 652a ld a0,136(sp) + c003141c: 65ca ld a1,144(sp) + c003141e: 64b2 ld s1,264(sp) + c0031420: 6912 ld s2,256(sp) + c0031422: 79ee ld s3,248(sp) + c0031424: 7a4e ld s4,240(sp) + c0031426: 7aae ld s5,232(sp) + c0031428: 7b0e ld s6,224(sp) + c003142a: 6bee ld s7,216(sp) + c003142c: 6c4e ld s8,208(sp) + c003142e: 6cae ld s9,200(sp) + c0031430: 6115 addi sp,sp,288 + c0031432: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37827 if (!res) { - c0031264: e505 bnez a0,c003128c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37820 + c0031434: e505 bnez a0,c003145c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c0031266: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37853 -} - c0031268: 6452 ld s0,272(sp) - c003126a: 60f2 ld ra,280(sp) - c003126c: 64b2 ld s1,264(sp) - c003126e: 6912 ld s2,256(sp) - c0031270: 79ee ld s3,248(sp) - c0031272: 7a4e ld s4,240(sp) - c0031274: 7aae ld s5,232(sp) - c0031276: 7b0e ld s6,224(sp) - c0031278: 6bee ld s7,216(sp) - c003127a: 6c4e ld s8,208(sp) - c003127c: 6cae ld s9,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37820 + c0031436: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37861 +} + c0031438: 6452 ld s0,272(sp) + c003143a: 60f2 ld ra,280(sp) + c003143c: 64b2 ld s1,264(sp) + c003143e: 6912 ld s2,256(sp) + c0031440: 79ee ld s3,248(sp) + c0031442: 7a4e ld s4,240(sp) + c0031444: 7aae ld s5,232(sp) + c0031446: 7b0e ld s6,224(sp) + c0031448: 6bee ld s7,216(sp) + c003144a: 6c4e ld s8,208(sp) + c003144c: 6cae ld s9,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c003127e: 0002d597 auipc a1,0x2d - c0031282: aca58593 addi a1,a1,-1334 # c005dd48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37853 + c003144e: 0002d597 auipc a1,0x2d + c0031452: b2a58593 addi a1,a1,-1238 # c005df78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37861 } - c0031286: 6115 addi sp,sp,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37820 + c0031456: 6115 addi sp,sp,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 return JS_ThrowTypeError(ctx, "proxy preventExtensions handler returned false"); - c0031288: 96ee206f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37825 + c0031458: 88ce206f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37833 if (JS_GetOwnPropertyNamesInternal(ctx, &props, &len, p, flags)) - c003128c: 470d li a4,3 - c003128e: 86a6 mv a3,s1 - c0031290: 1870 addi a2,sp,60 - c0031292: 008c addi a1,sp,64 - c0031294: 8522 mv a0,s0 - c0031296: b14ff0ef jal ra,c00305aa - c003129a: f15d bnez a0,c0031240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37832 + c003145c: 470d li a4,3 + c003145e: 86a6 mv a3,s1 + c0031460: 1870 addi a2,sp,60 + c0031462: 008c addi a1,sp,64 + c0031464: 8522 mv a0,s0 + c0031466: b14ff0ef jal ra,c003077a + c003146a: f15d bnez a0,c0031410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37840 desc_flags = JS_PROP_THROW | JS_PROP_HAS_CONFIGURABLE; - c003129c: 6a11 lui s4,0x4 - c003129e: 100a0b93 addi s7,s4,256 # 4100 <__clzdi2-0xbfffbf00> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 + c003146c: 6a11 lui s4,0x4 + c003146e: 100a0b93 addi s7,s4,256 # 4100 <__clzdi2-0xbfffbf00> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37836 for(i = 0; i < len; i++) { - c00312a2: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37839 + c0031472: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37847 desc_flags |= JS_PROP_HAS_WRITABLE; - c00312a4: 300a0a13 addi s4,s4,768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37843 + c0031474: 300a0a13 addi s4,s4,768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37851 if (JS_DefineProperty(ctx, obj, prop, JS_UNDEFINED, - c00312a8: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 (discriminator 1) + c0031478: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37836 (discriminator 1) for(i = 0; i < len; i++) { - c00312aa: 5672 lw a2,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37830 (discriminator 1) + c003147a: 5672 lw a2,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37838 (discriminator 1) JSAtom prop = props[i].atom; - c00312ac: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 (discriminator 1) + c003147c: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37836 (discriminator 1) for(i = 0; i < len; i++) { - c00312ae: 00c9ec63 bltu s3,a2,c00312c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37847 + c003147e: 00c9ec63 bltu s3,a2,c0031496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37855 js_free_prop_enum(ctx, props, len); - c00312b2: 8522 mv a0,s0 - c00312b4: a68d60ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37848 + c0031482: 8522 mv a0,s0 + c0031484: 986d60ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37856 return JS_DupValue(ctx, obj); - c00312b8: 8526 mv a0,s1 - c00312ba: 85ca mv a1,s2 - c00312bc: bb2d50ef jal ra,c000666e - c00312c0: e52a sd a0,136(sp) - c00312c2: e92e sd a1,144(sp) - c00312c4: b749 j c0031246 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37830 + c0031488: 8526 mv a0,s1 + c003148a: 85ca mv a1,s2 + c003148c: ad0d50ef jal ra,c000675c + c0031490: e52a sd a0,136(sp) + c0031492: e92e sd a1,144(sp) + c0031494: b749 j c0031416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37838 JSAtom prop = props[i].atom; - c00312c6: 02099713 slli a4,s3,0x20 - c00312ca: 01d75793 srli a5,a4,0x1d - c00312ce: 95be add a1,a1,a5 - c00312d0: 0045ac83 lw s9,4(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37833 + c0031496: 02099713 slli a4,s3,0x20 + c003149a: 01d75793 srli a5,a4,0x1d + c003149e: 95be add a1,a1,a5 + c00314a0: 0045ac83 lw s9,4(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37841 if (freeze_flag) { - c00312d4: 020b1c63 bnez s6,c003130c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37832 + c00314a4: 020b1c63 bnez s6,c00314dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37840 desc_flags = JS_PROP_THROW | JS_PROP_HAS_CONFIGURABLE; - c00312d8: 8c5e mv s8,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37843 + c00314a8: 8c5e mv s8,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37851 if (JS_DefineProperty(ctx, obj, prop, JS_UNDEFINED, - c00312da: ec82 sd zero,88(sp) - c00312dc: f0d6 sd s5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37844 + c00314aa: ec82 sd zero,88(sp) + c00314ac: f0d6 sd s5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37852 JS_UNDEFINED, JS_UNDEFINED, desc_flags) < 0) - c00312de: f482 sd zero,104(sp) - c00312e0: f8d6 sd s5,112(sp) - c00312e2: fc82 sd zero,120(sp) - c00312e4: e156 sd s5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37843 + c00314ae: f482 sd zero,104(sp) + c00314b0: f8d6 sd s5,112(sp) + c00314b2: fc82 sd zero,120(sp) + c00314b4: e156 sd s5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37851 if (JS_DefineProperty(ctx, obj, prop, JS_UNDEFINED, - c00312e6: e4a6 sd s1,72(sp) - c00312e8: e8ca sd s2,80(sp) - c00312ea: e862 sd s8,16(sp) - c00312ec: e002 sd zero,0(sp) - c00312ee: e456 sd s5,8(sp) - c00312f0: 4801 li a6,0 - c00312f2: 488d li a7,3 - c00312f4: 4701 li a4,0 - c00312f6: 478d li a5,3 - c00312f8: 86e6 mv a3,s9 - c00312fa: 85a6 mv a1,s1 - c00312fc: 864a mv a2,s2 - c00312fe: 8522 mv a0,s0 - c0031300: de2e10ef jal ra,c00128e2 - c0031304: 02054763 bltz a0,c0031332 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37828 + c00314b6: e4a6 sd s1,72(sp) + c00314b8: e8ca sd s2,80(sp) + c00314ba: e862 sd s8,16(sp) + c00314bc: e002 sd zero,0(sp) + c00314be: e456 sd s5,8(sp) + c00314c0: 4801 li a6,0 + c00314c2: 488d li a7,3 + c00314c4: 4701 li a4,0 + c00314c6: 478d li a5,3 + c00314c8: 86e6 mv a3,s9 + c00314ca: 85a6 mv a1,s1 + c00314cc: 864a mv a2,s2 + c00314ce: 8522 mv a0,s0 + c00314d0: d00e10ef jal ra,c00129d0 + c00314d4: 02054763 bltz a0,c0031502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37836 for(i = 0; i < len; i++) { - c0031308: 2985 addiw s3,s3,1 - c003130a: b745 j c00312aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37834 + c00314d8: 2985 addiw s3,s3,1 + c00314da: b745 j c003147a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37842 res = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - c003130c: 86e6 mv a3,s9 - c003130e: 8626 mv a2,s1 - c0031310: 012c addi a1,sp,136 - c0031312: 8522 mv a0,s0 - c0031314: bf1e00ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37835 + c00314dc: 86e6 mv a3,s9 + c00314de: 8626 mv a2,s1 + c00314e0: 012c addi a1,sp,136 + c00314e2: 8522 mv a0,s0 + c00314e4: b0fe00ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37843 if (res < 0) - c0031318: 00054d63 bltz a0,c0031332 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37837 + c00314e8: 00054d63 bltz a0,c0031502 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37845 if (res) { - c003131c: dd55 beqz a0,c00312d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37838 + c00314ec: dd55 beqz a0,c00314a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37846 if (desc.flags & JS_PROP_WRITABLE) - c003131e: 47aa lw a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37832 + c00314ee: 47aa lw a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37840 desc_flags = JS_PROP_THROW | JS_PROP_HAS_CONFIGURABLE; - c0031320: 8c5e mv s8,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37838 + c00314f0: 8c5e mv s8,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37846 if (desc.flags & JS_PROP_WRITABLE) - c0031322: 8b89 andi a5,a5,2 - c0031324: c391 beqz a5,c0031328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37839 + c00314f2: 8b89 andi a5,a5,2 + c00314f4: c391 beqz a5,c00314f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37847 desc_flags |= JS_PROP_HAS_WRITABLE; - c0031326: 8c52 mv s8,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37840 + c00314f6: 8c52 mv s8,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37848 js_free_desc(ctx, &desc); - c0031328: 012c addi a1,sp,136 - c003132a: 8522 mv a0,s0 - c003132c: b09d60ef jal ra,c0007e34 - c0031330: b76d j c00312da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37851 (discriminator 1) + c00314f8: 012c addi a1,sp,136 + c00314fa: 8522 mv a0,s0 + c00314fc: a27d60ef jal ra,c0007f22 + c0031500: b76d j c00314aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37859 (discriminator 1) js_free_prop_enum(ctx, props, len); - c0031332: 5672 lw a2,60(sp) - c0031334: 6586 ld a1,64(sp) - c0031336: 8522 mv a0,s0 - c0031338: 9e4d60ef jal ra,c000751c - c003133c: b711 j c0031240 + c0031502: 5672 lw a2,60(sp) + c0031504: 6586 ld a1,64(sp) + c0031506: 8522 mv a0,s0 + c0031508: 902d60ef jal ra,c000760a + c003150c: b711 j c0031410 -00000000c003133e : +00000000c003150e : js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54713 -{ - c003133e: 7115 addi sp,sp,-224 - c0031340: e836 sd a3,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54721 - obj = js_create_from_ctor(ctx, new_target, classid); - c0031342: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54713 { - c0031344: e9a2 sd s0,208(sp) - c0031346: e5a6 sd s1,200(sp) - c0031348: e1ca sd s2,192(sp) - c003134a: f952 sd s4,176(sp) - c003134c: e962 sd s8,144(sp) - c003134e: 8a3e mv s4,a5 - c0031350: ed86 sd ra,216(sp) - c0031352: fd4e sd s3,184(sp) - c0031354: f556 sd s5,168(sp) - c0031356: f15a sd s6,160(sp) - c0031358: ed5e sd s7,152(sp) - c003135a: e566 sd s9,136(sp) - c003135c: e16a sd s10,128(sp) - c003135e: 842a mv s0,a0 - c0031360: f02e sd a1,32(sp) - c0031362: f432 sd a2,40(sp) - c0031364: ec3a sd a4,24(sp) + c003150e: 7115 addi sp,sp,-224 + c0031510: e836 sd a3,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54729 + obj = js_create_from_ctor(ctx, new_target, classid); + c0031512: 86be mv a3,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54721 +{ + c0031514: e9a2 sd s0,208(sp) + c0031516: e5a6 sd s1,200(sp) + c0031518: e1ca sd s2,192(sp) + c003151a: f952 sd s4,176(sp) + c003151c: e962 sd s8,144(sp) + c003151e: 8a3e mv s4,a5 + c0031520: ed86 sd ra,216(sp) + c0031522: fd4e sd s3,184(sp) + c0031524: f556 sd s5,168(sp) + c0031526: f15a sd s6,160(sp) + c0031528: ed5e sd s7,152(sp) + c003152a: e566 sd s9,136(sp) + c003152c: e16a sd s10,128(sp) + c003152e: 842a mv s0,a0 + c0031530: f02e sd a1,32(sp) + c0031532: f432 sd a2,40(sp) + c0031534: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54729 obj = js_create_from_ctor(ctx, new_target, classid); - c0031366: e84e50ef jal ra,c00169ea - c003136a: f82a sd a0,48(sp) - c003136c: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54722 + c0031536: e84e50ef jal ra,c0016bba + c003153a: f82a sd a0,48(sp) + c003153c: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54730 if (JS_IsException(obj)) - c003136e: 0005879b sext.w a5,a1 - c0031372: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54721 + c003153e: 0005879b sext.w a5,a1 + c0031542: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54729 obj = js_create_from_ctor(ctx, new_target, classid); - c0031374: 892a mv s2,a0 - c0031376: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54722 + c0031544: 892a mv s2,a0 + c0031546: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54730 if (JS_IsException(obj)) - c0031378: 03879463 bne a5,s8,c00313a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54760 + c0031548: 03879463 bne a5,s8,c0031570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54768 return obj; - c003137c: f0ca sd s2,96(sp) - c003137e: f4a6 sd s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54764 -} - c0031380: 60ee ld ra,216(sp) - c0031382: 644e ld s0,208(sp) - c0031384: 7506 ld a0,96(sp) - c0031386: 75a6 ld a1,104(sp) - c0031388: 64ae ld s1,200(sp) - c003138a: 690e ld s2,192(sp) - c003138c: 79ea ld s3,184(sp) - c003138e: 7a4a ld s4,176(sp) - c0031390: 7aaa ld s5,168(sp) - c0031392: 7b0a ld s6,160(sp) - c0031394: 6bea ld s7,152(sp) - c0031396: 6c4a ld s8,144(sp) - c0031398: 6caa ld s9,136(sp) - c003139a: 6d0a ld s10,128(sp) - c003139c: 612d addi sp,sp,224 - c003139e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54724 + c003154c: f0ca sd s2,96(sp) + c003154e: f4a6 sd s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54772 +} + c0031550: 60ee ld ra,216(sp) + c0031552: 644e ld s0,208(sp) + c0031554: 7506 ld a0,96(sp) + c0031556: 75a6 ld a1,104(sp) + c0031558: 64ae ld s1,200(sp) + c003155a: 690e ld s2,192(sp) + c003155c: 79ea ld s3,184(sp) + c003155e: 7a4a ld s4,176(sp) + c0031560: 7aaa ld s5,168(sp) + c0031562: 7b0a ld s6,160(sp) + c0031564: 6bea ld s7,152(sp) + c0031566: 6c4a ld s8,144(sp) + c0031568: 6caa ld s9,136(sp) + c003156a: 6d0a ld s10,128(sp) + c003156c: 612d addi sp,sp,224 + c003156e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54732 p = JS_VALUE_GET_OBJ(src_obj); - c00313a0: 6cc2 ld s9,16(sp) + c0031570: 6cc2 ld s9,16(sp) typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53049 JSTypedArray *ta = p->u.typed_array; - c00313a2: 030cbd03 ld s10,48(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 + c0031572: 030cbd03 ld s10,48(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c00313a6: 018d3783 ld a5,24(s10) - c00313aa: 0307bb03 ld s6,48(a5) + c0031576: 018d3783 ld a5,24(s10) + c003157a: 0307bb03 ld s6,48(a5) js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54725 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54733 if (typed_array_is_detached(ctx, p)) { - c00313ae: 004b4783 lbu a5,4(s6) - c00313b2: cf89 beqz a5,c00313cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54741 + c003157e: 004b4783 lbu a5,4(s6) + c0031582: cf89 beqz a5,c003159c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54749 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c00313b4: 8522 mv a0,s0 - c00313b6: 91de20ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54762 + c0031584: 8522 mv a0,s0 + c0031586: 83be20ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 JS_FreeValue(ctx, obj); - c00313ba: 85ca mv a1,s2 - c00313bc: 8626 mv a2,s1 - c00313be: 8522 mv a0,s0 - c00313c0: f78d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54763 + c003158a: 85ca mv a1,s2 + c003158c: 8626 mv a2,s1 + c003158e: 8522 mv a0,s0 + c0031590: e96d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54771 return JS_EXCEPTION; - c00313c4: 4799 li a5,6 - c00313c6: f082 sd zero,96(sp) - c00313c8: f4be sd a5,104(sp) - c00313ca: bf5d j c0031380 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54730 + c0031594: 4799 li a5,6 + c0031596: f082 sd zero,96(sp) + c0031598: f4be sd a5,104(sp) + c003159a: bf5d j c0031550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54738 len = p->u.array.count; - c00313cc: 040caa83 lw s5,64(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54733 + c003159c: 040caa83 lw s5,64(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54741 size_log2 = typed_array_size_log2(classid); - c00313d0: feba071b addiw a4,s4,-21 - c00313d4: 00036797 auipc a5,0x36 - c00313d8: b6478793 addi a5,a5,-1180 # c0066f38 - c00313dc: 97ba add a5,a5,a4 - c00313de: 0007c683 lbu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54735 + c00315a0: feba071b addiw a4,s4,-21 + c00315a4: 00036797 auipc a5,0x36 + c00315a8: bf478793 addi a5,a5,-1036 # c0067198 + c00315ac: 97ba add a5,a5,a4 + c00315ae: 0007c683 lbu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54743 (uint64_t)len << size_log2); - c00313e2: 020a9b93 slli s7,s5,0x20 - c00313e6: 020bdb93 srli s7,s7,0x20 - c00313ea: 478d li a5,3 + c00315b2: 020a9b93 slli s7,s5,0x20 + c00315b6: 020bdb93 srli s7,s7,0x20 + c00315ba: 478d li a5,3 js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c00313ec: 00db96b3 sll a3,s7,a3 - c00313f0: 474d li a4,19 - c00313f2: 4581 li a1,0 - c00313f4: 460d li a2,3 - c00313f6: 8522 mv a0,s0 - c00313f8: ecbe sd a5,88(sp) - c00313fa: f4be sd a5,104(sp) + c00315bc: 00db96b3 sll a3,s7,a3 + c00315c0: 474d li a4,19 + c00315c2: 4581 li a1,0 + c00315c4: 460d li a2,3 + c00315c6: 8522 mv a0,s0 + c00315c8: ecbe sd a5,88(sp) + c00315ca: f4be sd a5,104(sp) js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54742 buffer = js_array_buffer_constructor1(ctx, JS_UNDEFINED, - c00313fc: e882 sd zero,80(sp) - c00313fe: f082 sd zero,96(sp) + c00315cc: e882 sd zero,80(sp) + c00315ce: f082 sd zero,96(sp) js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c0031400: fe4e50ef jal ra,c0016be4 - c0031404: f8aa sd a0,112(sp) - c0031406: fcae sd a1,120(sp) - c0031408: e0aa sd a0,64(sp) - c003140a: e4ae sd a1,72(sp) + c00315d0: fe4e50ef jal ra,c0016db4 + c00315d4: f8aa sd a0,112(sp) + c00315d6: fcae sd a1,120(sp) + c00315d8: e0aa sd a0,64(sp) + c00315da: e4ae sd a1,72(sp) js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54744 if (JS_IsException(buffer)) - c003140c: 0005879b sext.w a5,a1 + c00315dc: 0005879b sext.w a5,a1 js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c0031410: 89aa mv s3,a0 - c0031412: 86ae mv a3,a1 + c00315e0: 89aa mv s3,a0 + c00315e2: 86ae mv a3,a1 js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54744 if (JS_IsException(buffer)) - c0031414: fb8783e3 beq a5,s8,c00313ba + c00315e4: fb8783e3 beq a5,s8,c003158a typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c0031418: 030cb783 ld a5,48(s9) - c003141c: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c00315e8: 030cb783 ld a5,48(s9) + c00315ec: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c003141e: 7b9c ld a5,48(a5) + c00315ee: 7b9c ld a5,48(a5) js_typed_array_constructor_ta(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54739 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54747 if (typed_array_is_detached(ctx, p)) { - c0031420: 0047c783 lbu a5,4(a5) - c0031424: c799 beqz a5,c0031432 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54740 + c00315f0: 0047c783 lbu a5,4(a5) + c00315f4: c799 beqz a5,c0031602 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54748 JS_FreeValue(ctx, buffer); - c0031426: 85aa mv a1,a0 - c0031428: 8636 mv a2,a3 - c003142a: 8522 mv a0,s0 - c003142c: f0cd60ef jal ra,c0007b38 - c0031430: b751 j c00313b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54744 + c00315f6: 85aa mv a1,a0 + c00315f8: 8636 mv a2,a3 + c00315fa: 8522 mv a0,s0 + c00315fc: e2ad60ef jal ra,c0007c26 + c0031600: b751 j c0031584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54752 abuf = JS_GetOpaque(buffer, JS_CLASS_ARRAY_BUFFER); - c0031432: 464d li a2,19 - c0031434: e42e sd a1,8(sp) - c0031436: c7cd90ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54745 + c0031602: 464d li a2,19 + c0031604: e42e sd a1,8(sp) + c0031606: b9ad90ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54753 if (typed_array_init(ctx, obj, buffer, 0, len)) - c003143a: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54744 + c003160a: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54752 abuf = JS_GetOpaque(buffer, JS_CLASS_ARRAY_BUFFER); - c003143c: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54745 + c003160c: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54753 if (typed_array_init(ctx, obj, buffer, 0, len)) - c003143e: 87de mv a5,s7 - c0031440: 4701 li a4,0 - c0031442: 864e mv a2,s3 - c0031444: 85ca mv a1,s2 - c0031446: 8522 mv a0,s0 - c0031448: 80fe40ef jal ra,c0015c56 - c003144c: f53d bnez a0,c00313ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54747 + c003160e: 87de mv a5,s7 + c0031610: 4701 li a4,0 + c0031612: 864e mv a2,s3 + c0031614: 85ca mv a1,s2 + c0031616: 8522 mv a0,s0 + c0031618: 80fe40ef jal ra,c0015e26 + c003161c: f53d bnez a0,c003158a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54755 if (p->class_id == classid) { - c003144e: 006cd783 lhu a5,6(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54751 + c003161e: 006cd783 lhu a5,6(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54759 for(i = 0; i < len; i++) { - c0031452: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54754 + c0031622: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54762 if (JS_IsException(val)) - c0031454: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54747 + c0031624: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54755 if (p->class_id == classid) { - c0031456: 05479563 bne a5,s4,c00314a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54749 + c0031626: 05479563 bne a5,s4,c0031670 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54757 memcpy(abuf->data, src_abuf->data + ta->offset, abuf->byte_length); - c003145a: 020d6783 lwu a5,32(s10) - c003145e: 008b3583 ld a1,8(s6) - c0031462: 000c2603 lw a2,0(s8) - c0031466: 008c3503 ld a0,8(s8) - c003146a: 95be add a1,a1,a5 - c003146c: 56e250ef jal ra,c00569da - c0031470: b731 j c003137c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54753 + c003162a: 020d6783 lwu a5,32(s10) + c003162e: 008b3583 ld a1,8(s6) + c0031632: 000c2603 lw a2,0(s8) + c0031636: 008c3503 ld a0,8(s8) + c003163a: 95be add a1,a1,a5 + c003163c: 56e250ef jal ra,c0056baa + c0031640: b731 j c003154c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54761 val = JS_GetPropertyUint32(ctx, src_obj, i); - c0031472: 65c2 ld a1,16(sp) - c0031474: 6662 ld a2,24(sp) - c0031476: 86ce mv a3,s3 - c0031478: 8522 mv a0,s0 - c003147a: a53e00ef jal ra,c0011ecc - c003147e: f0aa sd a0,96(sp) - c0031480: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54754 + c0031642: 65c2 ld a1,16(sp) + c0031644: 6662 ld a2,24(sp) + c0031646: 86ce mv a3,s3 + c0031648: 8522 mv a0,s0 + c003164a: 971e00ef jal ra,c0011fba + c003164e: f0aa sd a0,96(sp) + c0031650: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54762 if (JS_IsException(val)) - c0031482: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54753 + c0031652: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54761 val = JS_GetPropertyUint32(ctx, src_obj, i); - c0031486: 872a mv a4,a0 - c0031488: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54754 + c0031656: 872a mv a4,a0 + c0031658: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54762 if (JS_IsException(val)) - c003148a: f37688e3 beq a3,s7,c00313ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54756 + c003165a: f37688e3 beq a3,s7,c003158a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54764 if (JS_SetPropertyUint32(ctx, obj, i, val) < 0) - c003148e: 86ce mv a3,s3 - c0031490: 85ca mv a1,s2 - c0031492: 8626 mv a2,s1 - c0031494: 8522 mv a0,s0 - c0031496: c0ae10ef jal ra,c00128a0 - c003149a: f20540e3 bltz a0,c00313ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54751 + c003165e: 86ce mv a3,s3 + c0031660: 85ca mv a1,s2 + c0031662: 8626 mv a2,s1 + c0031664: 8522 mv a0,s0 + c0031666: b28e10ef jal ra,c001298e + c003166a: f20540e3 bltz a0,c003158a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54759 for(i = 0; i < len; i++) { - c003149e: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54751 (discriminator 1) - c00314a0: fd5999e3 bne s3,s5,c0031472 - c00314a4: bde1 j c003137c + c003166e: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54759 (discriminator 1) + c0031670: fd5999e3 bne s3,s5,c0031642 + c0031674: bde1 j c003154c -00000000c00314a6 : +00000000c0031676 : js_typed_array_toSorted(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54513 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54521 { - c00314a6: 7159 addi sp,sp,-112 - c00314a8: eca6 sd s1,88(sp) - c00314aa: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54517 + c0031676: 7159 addi sp,sp,-112 + c0031678: eca6 sd s1,88(sp) + c003167a: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54525 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c00314ac: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54513 -{ - c00314ae: f0a2 sd s0,96(sp) - c00314b0: e8ca sd s2,80(sp) - c00314b2: f486 sd ra,104(sp) - c00314b4: 842a mv s0,a0 - c00314b6: e02e sd a1,0(sp) - c00314b8: e432 sd a2,8(sp) - c00314ba: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54517 + c003167c: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54521 +{ + c003167e: f0a2 sd s0,96(sp) + c0031680: e8ca sd s2,80(sp) + c0031682: f486 sd ra,104(sp) + c0031684: 842a mv s0,a0 + c0031686: e02e sd a1,0(sp) + c0031688: e432 sd a2,8(sp) + c003168a: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54525 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c00314bc: afde20ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54518 + c003168c: a1be20ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54526 if (!p) - c00314c0: ed01 bnez a0,c00314d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54519 - return JS_EXCEPTION; - c00314c2: e082 sd zero,64(sp) - c00314c4: 4799 li a5,6 + c0031690: ed01 bnez a0,c00316a8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54527 + return JS_EXCEPTION; + c0031692: e082 sd zero,64(sp) + c0031694: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54535 } - c00314c6: 70a6 ld ra,104(sp) - c00314c8: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54526 + c0031696: 70a6 ld ra,104(sp) + c0031698: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54534 return ret; - c00314ca: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54527 -} - c00314cc: 6506 ld a0,64(sp) - c00314ce: 65a6 ld a1,72(sp) - c00314d0: 64e6 ld s1,88(sp) - c00314d2: 6946 ld s2,80(sp) - c00314d4: 6165 addi sp,sp,112 - c00314d6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54520 + c003169a: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54535 +} + c003169c: 6506 ld a0,64(sp) + c003169e: 65a6 ld a1,72(sp) + c00316a0: 64e6 ld s1,88(sp) + c00316a2: 6946 ld s2,80(sp) + c00316a4: 6165 addi sp,sp,112 + c00316a6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54528 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c00314d8: 478d li a5,3 - c00314da: 6722 ld a4,8(sp) - c00314dc: fc3e sd a5,56(sp) - c00314de: 6682 ld a3,0(sp) - c00314e0: 00655783 lhu a5,6(a0) - c00314e4: 460d li a2,3 - c00314e6: 4581 li a1,0 - c00314e8: 8522 mv a0,s0 - c00314ea: f802 sd zero,48(sp) - c00314ec: e53ff0ef jal ra,c003133e - c00314f0: e82a sd a0,16(sp) - c00314f2: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54522 + c00316a8: 478d li a5,3 + c00316aa: 6722 ld a4,8(sp) + c00316ac: fc3e sd a5,56(sp) + c00316ae: 6682 ld a3,0(sp) + c00316b0: 00655783 lhu a5,6(a0) + c00316b4: 460d li a2,3 + c00316b6: 4581 li a1,0 + c00316b8: 8522 mv a0,s0 + c00316ba: f802 sd zero,48(sp) + c00316bc: e53ff0ef jal ra,c003150e + c00316c0: e82a sd a0,16(sp) + c00316c2: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54530 if (JS_IsException(arr)) - c00314f4: 0005871b sext.w a4,a1 - c00314f8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54520 + c00316c4: 0005871b sext.w a4,a1 + c00316c8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54528 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c00314fa: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54522 + c00316ca: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54530 if (JS_IsException(arr)) - c00314fc: fcf703e3 beq a4,a5,c00314c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54524 + c00316cc: fcf703e3 beq a4,a5,c0031692 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54532 ret = js_typed_array_sort(ctx, arr, argc, argv); - c0031500: 874a mv a4,s2 - c0031502: 86a6 mv a3,s1 - c0031504: 85aa mv a1,a0 - c0031506: 8522 mv a0,s0 - c0031508: 95ee40ef jal ra,c0015666 - c003150c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54525 + c00316d0: 874a mv a4,s2 + c00316d2: 86a6 mv a3,s1 + c00316d4: 85aa mv a1,a0 + c00316d6: 8522 mv a0,s0 + c00316d8: 95ee40ef jal ra,c0015836 + c00316dc: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54533 JS_FreeValue(ctx, arr); - c003150e: 6662 ld a2,24(sp) - c0031510: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54524 + c00316de: 6662 ld a2,24(sp) + c00316e0: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54532 ret = js_typed_array_sort(ctx, arr, argc, argv); - c0031512: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54525 + c00316e2: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54533 JS_FreeValue(ctx, arr); - c0031514: 8522 mv a0,s0 - c0031516: e22d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54526 + c00316e4: 8522 mv a0,s0 + c00316e6: d40d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54534 return ret; - c003151a: 7782 ld a5,32(sp) - c003151c: e0be sd a5,64(sp) - c003151e: 77a2 ld a5,40(sp) - c0031520: b75d j c00314c6 + c00316ea: 7782 ld a5,32(sp) + c00316ec: e0be sd a5,64(sp) + c00316ee: 77a2 ld a5,40(sp) + c00316f0: b75d j c0031696 -00000000c0031522 : +00000000c00316f2 : js_typed_array_toReversed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54100 { - c0031522: 7159 addi sp,sp,-112 - c0031524: eca6 sd s1,88(sp) - c0031526: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54096 + c00316f2: 7159 addi sp,sp,-112 + c00316f4: eca6 sd s1,88(sp) + c00316f6: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54104 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c0031528: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54092 -{ - c003152a: f0a2 sd s0,96(sp) - c003152c: e8ca sd s2,80(sp) - c003152e: f486 sd ra,104(sp) - c0031530: 842a mv s0,a0 - c0031532: e02e sd a1,0(sp) - c0031534: e432 sd a2,8(sp) - c0031536: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54096 + c00316f8: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54100 +{ + c00316fa: f0a2 sd s0,96(sp) + c00316fc: e8ca sd s2,80(sp) + c00316fe: f486 sd ra,104(sp) + c0031700: 842a mv s0,a0 + c0031702: e02e sd a1,0(sp) + c0031704: e432 sd a2,8(sp) + c0031706: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54104 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c0031538: a81e20ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54097 + c0031708: 99fe20ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54105 if (!p) - c003153c: ed01 bnez a0,c0031554 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54098 - return JS_EXCEPTION; - c003153e: e082 sd zero,64(sp) - c0031540: 4799 li a5,6 + c003170c: ed01 bnez a0,c0031724 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54106 + return JS_EXCEPTION; + c003170e: e082 sd zero,64(sp) + c0031710: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54114 } - c0031542: 70a6 ld ra,104(sp) - c0031544: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54105 + c0031712: 70a6 ld ra,104(sp) + c0031714: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54113 return ret; - c0031546: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54106 -} - c0031548: 6506 ld a0,64(sp) - c003154a: 65a6 ld a1,72(sp) - c003154c: 64e6 ld s1,88(sp) - c003154e: 6946 ld s2,80(sp) - c0031550: 6165 addi sp,sp,112 - c0031552: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54099 + c0031716: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54114 +} + c0031718: 6506 ld a0,64(sp) + c003171a: 65a6 ld a1,72(sp) + c003171c: 64e6 ld s1,88(sp) + c003171e: 6946 ld s2,80(sp) + c0031720: 6165 addi sp,sp,112 + c0031722: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54107 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c0031554: 478d li a5,3 - c0031556: 6722 ld a4,8(sp) - c0031558: fc3e sd a5,56(sp) - c003155a: 6682 ld a3,0(sp) - c003155c: 00655783 lhu a5,6(a0) - c0031560: 460d li a2,3 - c0031562: 4581 li a1,0 - c0031564: 8522 mv a0,s0 - c0031566: f802 sd zero,48(sp) - c0031568: dd7ff0ef jal ra,c003133e - c003156c: e82a sd a0,16(sp) - c003156e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54101 + c0031724: 478d li a5,3 + c0031726: 6722 ld a4,8(sp) + c0031728: fc3e sd a5,56(sp) + c003172a: 6682 ld a3,0(sp) + c003172c: 00655783 lhu a5,6(a0) + c0031730: 460d li a2,3 + c0031732: 4581 li a1,0 + c0031734: 8522 mv a0,s0 + c0031736: f802 sd zero,48(sp) + c0031738: dd7ff0ef jal ra,c003150e + c003173c: e82a sd a0,16(sp) + c003173e: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54109 if (JS_IsException(arr)) - c0031570: 0005871b sext.w a4,a1 - c0031574: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54099 + c0031740: 0005871b sext.w a4,a1 + c0031744: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54107 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c0031576: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54101 + c0031746: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54109 if (JS_IsException(arr)) - c0031578: fcf703e3 beq a4,a5,c003153e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54103 + c0031748: fcf703e3 beq a4,a5,c003170e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54111 ret = js_typed_array_reverse(ctx, arr, argc, argv); - c003157c: 874a mv a4,s2 - c003157e: 86a6 mv a3,s1 - c0031580: 85aa mv a1,a0 - c0031582: 8522 mv a0,s0 - c0031584: ac7e20ef jal ra,c001404a - c0031588: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54104 + c003174c: 874a mv a4,s2 + c003174e: 86a6 mv a3,s1 + c0031750: 85aa mv a1,a0 + c0031752: 8522 mv a0,s0 + c0031754: 9e5e20ef jal ra,c0014138 + c0031758: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54112 JS_FreeValue(ctx, arr); - c003158a: 6662 ld a2,24(sp) - c003158c: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54103 + c003175a: 6662 ld a2,24(sp) + c003175c: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54111 ret = js_typed_array_reverse(ctx, arr, argc, argv); - c003158e: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54104 + c003175e: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54112 JS_FreeValue(ctx, arr); - c0031590: 8522 mv a0,s0 - c0031592: da6d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54105 + c0031760: 8522 mv a0,s0 + c0031762: cc4d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54113 return ret; - c0031596: 7782 ld a5,32(sp) - c0031598: e0be sd a5,64(sp) - c003159a: 77a2 ld a5,40(sp) - c003159c: b75d j c0031542 + c0031766: 7782 ld a5,32(sp) + c0031768: e0be sd a5,64(sp) + c003176a: 77a2 ld a5,40(sp) + c003176c: b75d j c0031712 -00000000c003159e : +00000000c003176e : js_typed_array_with(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53285 { - c003159e: 7119 addi sp,sp,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53282 + c003176e: 7119 addi sp,sp,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53290 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c00315a0: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53277 -{ - c00315a2: f8a2 sd s0,112(sp) - c00315a4: f4a6 sd s1,104(sp) - c00315a6: fc86 sd ra,120(sp) - c00315a8: f0ca sd s2,96(sp) - c00315aa: 842a mv s0,a0 - c00315ac: e02e sd a1,0(sp) - c00315ae: e432 sd a2,8(sp) - c00315b0: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53282 + c0031770: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53285 +{ + c0031772: f8a2 sd s0,112(sp) + c0031774: f4a6 sd s1,104(sp) + c0031776: fc86 sd ra,120(sp) + c0031778: f0ca sd s2,96(sp) + c003177a: 842a mv s0,a0 + c003177c: e02e sd a1,0(sp) + c003177e: e432 sd a2,8(sp) + c0031780: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53290 p = get_typed_array(ctx, this_val, /*is_dataview*/0); - c00315b2: a07e20ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53283 + c0031782: 925e20ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53291 if (!p) - c00315b6: e509 bnez a0,c00315c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53284 + c0031786: e509 bnez a0,c0031790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53292 return JS_EXCEPTION; - c00315b8: e882 sd zero,80(sp) - c00315ba: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53309 + c0031788: e882 sd zero,80(sp) + c003178a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53317 return arr; - c00315bc: ecbe sd a5,88(sp) - c00315be: a825 j c00315f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53286 + c003178c: ecbe sd a5,88(sp) + c003178e: a825 j c00317c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53294 if (JS_ToInt64Sat(ctx, &idx, argv[0])) - c00315c0: 6090 ld a2,0(s1) - c00315c2: 6494 ld a3,8(s1) - c00315c4: 892a mv s2,a0 - c00315c6: 082c addi a1,sp,24 - c00315c8: 8522 mv a0,s0 - c00315ca: c95ec0ef jal ra,c001e25e - c00315ce: f56d bnez a0,c00315b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53290 + c0031790: 6090 ld a2,0(s1) + c0031792: 6494 ld a3,8(s1) + c0031794: 892a mv s2,a0 + c0031796: 082c addi a1,sp,24 + c0031798: 8522 mv a0,s0 + c003179a: c95ec0ef jal ra,c001e42e + c003179e: f56d bnez a0,c0031788 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53298 if (idx < 0) - c00315d0: 67e2 ld a5,24(sp) - c00315d2: 04096703 lwu a4,64(s2) - c00315d6: 0007d463 bgez a5,c00315de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53291 + c00317a0: 67e2 ld a5,24(sp) + c00317a2: 04096703 lwu a4,64(s2) + c00317a6: 0007d463 bgez a5,c00317ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53299 idx = len + idx; - c00315da: 97ba add a5,a5,a4 - c00315dc: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53292 + c00317aa: 97ba add a5,a5,a4 + c00317ac: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53300 if (idx < 0 || idx >= len) - c00315de: 67e2 ld a5,24(sp) - c00315e0: 02e7e363 bltu a5,a4,c0031606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53293 + c00317ae: 67e2 ld a5,24(sp) + c00317b0: 02e7e363 bltu a5,a4,c00317d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53301 return JS_ThrowRangeError(ctx, "out of bound"); - c00315e4: 0002d597 auipc a1,0x2d - c00315e8: ea458593 addi a1,a1,-348 # c005e488 - c00315ec: 8522 mv a0,s0 - c00315ee: b6ce30ef jal ra,c001495a - c00315f2: e8aa sd a0,80(sp) - c00315f4: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53310 (discriminator 1) -} - c00315f6: 70e6 ld ra,120(sp) - c00315f8: 7446 ld s0,112(sp) - c00315fa: 6546 ld a0,80(sp) - c00315fc: 65e6 ld a1,88(sp) - c00315fe: 74a6 ld s1,104(sp) - c0031600: 7906 ld s2,96(sp) - c0031602: 6109 addi sp,sp,128 - c0031604: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53295 + c00317b4: 0002d597 auipc a1,0x2d + c00317b8: f3458593 addi a1,a1,-204 # c005e6e8 + c00317bc: 8522 mv a0,s0 + c00317be: a8ae30ef jal ra,c0014a48 + c00317c2: e8aa sd a0,80(sp) + c00317c4: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53318 (discriminator 1) +} + c00317c6: 70e6 ld ra,120(sp) + c00317c8: 7446 ld s0,112(sp) + c00317ca: 6546 ld a0,80(sp) + c00317cc: 65e6 ld a1,88(sp) + c00317ce: 74a6 ld s1,104(sp) + c00317d0: 7906 ld s2,96(sp) + c00317d2: 6109 addi sp,sp,128 + c00317d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53303 val = JS_ToPrimitive(ctx, argv[1], HINT_NUMBER); - c0031606: 688c ld a1,16(s1) - c0031608: 6c90 ld a2,24(s1) - c003160a: 4685 li a3,1 - c003160c: 8522 mv a0,s0 - c003160e: ed8e80ef jal ra,c0019ce6 - c0031612: fc2e sd a1,56(sp) - c0031614: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53296 + c00317d6: 688c ld a1,16(s1) + c00317d8: 6c90 ld a2,24(s1) + c00317da: 4685 li a3,1 + c00317dc: 8522 mv a0,s0 + c00317de: ed8e80ef jal ra,c0019eb6 + c00317e2: fc2e sd a1,56(sp) + c00317e4: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53304 if (JS_IsException(val)) - c0031616: 2581 sext.w a1,a1 - c0031618: 4499 li s1,6 - c003161a: f8958fe3 beq a1,s1,c00315b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53299 + c00317e6: 2581 sext.w a1,a1 + c00317e8: 4499 li s1,6 + c00317ea: f8958fe3 beq a1,s1,c0031788 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53307 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c003161e: 478d li a5,3 - c0031620: e4be sd a5,72(sp) - c0031622: 6682 ld a3,0(sp) - c0031624: 00695783 lhu a5,6(s2) - c0031628: 6722 ld a4,8(sp) - c003162a: 460d li a2,3 - c003162c: 4581 li a1,0 - c003162e: 8522 mv a0,s0 - c0031630: e082 sd zero,64(sp) - c0031632: d0dff0ef jal ra,c003133e - c0031636: f02a sd a0,32(sp) - c0031638: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53301 + c00317ee: 478d li a5,3 + c00317f0: e4be sd a5,72(sp) + c00317f2: 6682 ld a3,0(sp) + c00317f4: 00695783 lhu a5,6(s2) + c00317f8: 6722 ld a4,8(sp) + c00317fa: 460d li a2,3 + c00317fc: 4581 li a1,0 + c00317fe: 8522 mv a0,s0 + c0031800: e082 sd zero,64(sp) + c0031802: d0dff0ef jal ra,c003150e + c0031806: f02a sd a0,32(sp) + c0031808: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53309 if (JS_IsException(arr)) { - c003163a: 0005891b sext.w s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53299 + c003180a: 0005891b sext.w s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53307 arr = js_typed_array_constructor_ta(ctx, JS_UNDEFINED, this_val, - c003163e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53301 + c003180e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53309 if (JS_IsException(arr)) { - c0031640: 00991a63 bne s2,s1,c0031654 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53302 + c0031810: 00991a63 bne s2,s1,c0031824 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53310 JS_FreeValue(ctx, val); - c0031644: 75c2 ld a1,48(sp) - c0031646: 7662 ld a2,56(sp) - c0031648: 8522 mv a0,s0 - c003164a: ceed60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53303 + c0031814: 75c2 ld a1,48(sp) + c0031816: 7662 ld a2,56(sp) + c0031818: 8522 mv a0,s0 + c003181a: c0cd60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53311 return JS_EXCEPTION; - c003164e: e882 sd zero,80(sp) - c0031650: ecca sd s2,88(sp) - c0031652: b755 j c00315f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53305 + c003181e: e882 sd zero,80(sp) + c0031820: ecca sd s2,88(sp) + c0031822: b755 j c00317c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53313 if (JS_SetPropertyInt64(ctx, arr, idx, val) < 0) { - c0031654: 7742 ld a4,48(sp) - c0031656: 77e2 ld a5,56(sp) - c0031658: 66e2 ld a3,24(sp) - c003165a: 85aa mv a1,a0 - c003165c: 8522 mv a0,s0 - c003165e: d03fe0ef jal ra,c0030360 - c0031662: 00055a63 bgez a0,c0031676 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53306 + c0031824: 7742 ld a4,48(sp) + c0031826: 77e2 ld a5,56(sp) + c0031828: 66e2 ld a3,24(sp) + c003182a: 85aa mv a1,a0 + c003182c: 8522 mv a0,s0 + c003182e: d03fe0ef jal ra,c0030530 + c0031832: 00055a63 bgez a0,c0031846 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53314 JS_FreeValue(ctx, arr); - c0031666: 7582 ld a1,32(sp) - c0031668: 7622 ld a2,40(sp) - c003166a: 8522 mv a0,s0 - c003166c: cccd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53307 + c0031836: 7582 ld a1,32(sp) + c0031838: 7622 ld a2,40(sp) + c003183a: 8522 mv a0,s0 + c003183c: bead60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53315 return JS_EXCEPTION; - c0031670: e882 sd zero,80(sp) - c0031672: eca6 sd s1,88(sp) - c0031674: b749 j c00315f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53309 + c0031840: e882 sd zero,80(sp) + c0031842: eca6 sd s1,88(sp) + c0031844: b749 j c00317c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53317 return arr; - c0031676: 7782 ld a5,32(sp) - c0031678: e8be sd a5,80(sp) - c003167a: 77a2 ld a5,40(sp) - c003167c: b781 j c00315bc + c0031846: 7782 ld a5,32(sp) + c0031848: e8be sd a5,80(sp) + c003184a: 77a2 ld a5,40(sp) + c003184c: b781 j c003178c -00000000c003167e : +00000000c003184e : remainingElementsCount_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48291 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48299 { - c003167e: 7159 addi sp,sp,-112 - c0031680: eca6 sd s1,88(sp) - c0031682: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48295 + c003184e: 7159 addi sp,sp,-112 + c0031850: eca6 sd s1,88(sp) + c0031852: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48303 val = JS_GetPropertyUint32(ctx, resolve_element_env, 0); - c0031684: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48291 -{ - c0031686: f0a2 sd s0,96(sp) - c0031688: f486 sd ra,104(sp) - c003168a: 842a mv s0,a0 - c003168c: e02e sd a1,0(sp) - c003168e: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48295 + c0031854: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48299 +{ + c0031856: f0a2 sd s0,96(sp) + c0031858: f486 sd ra,104(sp) + c003185a: 842a mv s0,a0 + c003185c: e02e sd a1,0(sp) + c003185e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48303 val = JS_GetPropertyUint32(ctx, resolve_element_env, 0); - c0031690: 83de00ef jal ra,c0011ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48296 + c0031860: f5ae00ef jal ra,c0011fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48304 if (JS_IsException(val)) - c0031694: 0005871b sext.w a4,a1 - c0031698: 4799 li a5,6 - c003169a: 00f71863 bne a4,a5,c00316aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48297 - return -1; - c003169e: 557d li a0,-1 + c0031864: 0005871b sext.w a4,a1 + c0031868: 4799 li a5,6 + c003186a: 00f71863 bne a4,a5,c003187a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48305 -} - c00316a0: 70a6 ld ra,104(sp) - c00316a2: 7406 ld s0,96(sp) - c00316a4: 64e6 ld s1,88(sp) - c00316a6: 6165 addi sp,sp,112 - c00316a8: 8082 ret - c00316aa: 862a mv a2,a0 - c00316ac: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48298 + return -1; + c003186e: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48313 +} + c0031870: 70a6 ld ra,104(sp) + c0031872: 7406 ld s0,96(sp) + c0031874: 64e6 ld s1,88(sp) + c0031876: 6165 addi sp,sp,112 + c0031878: 8082 ret + c003187a: 862a mv a2,a0 + c003187c: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48306 if (JS_ToInt32Free(ctx, &remainingElementsCount, val)) - c00316ae: 8522 mv a0,s0 - c00316b0: 086c addi a1,sp,28 - c00316b2: bc3ea0ef jal ra,c001c274 - c00316b6: f565 bnez a0,c003169e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48300 + c003187e: 8522 mv a0,s0 + c0031880: 086c addi a1,sp,28 + c0031882: bc3ea0ef jal ra,c001c444 + c0031886: f565 bnez a0,c003186e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48308 remainingElementsCount += addend; - c00316b8: 47f2 lw a5,28(sp) + c0031888: 47f2 lw a5,28(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00316ba: e082 sd zero,64(sp) + c003188a: e082 sd zero,64(sp) remainingElementsCount_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48301 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48309 if (JS_SetPropertyUint32(ctx, resolve_element_env, 0, - c00316bc: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48300 + c003188c: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48308 remainingElementsCount += addend; - c00316be: 009786bb addw a3,a5,s1 - c00316c2: c0b6 sw a3,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48301 + c003188e: 009786bb addw a3,a5,s1 + c0031892: c0b6 sw a3,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48309 if (JS_SetPropertyUint32(ctx, resolve_element_env, 0, - c00316c4: 6706 ld a4,64(sp) - c00316c6: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48300 + c0031894: 6706 ld a4,64(sp) + c0031896: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48308 remainingElementsCount += addend; - c00316c8: ce36 sw a3,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48301 + c0031898: ce36 sw a3,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48309 if (JS_SetPropertyUint32(ctx, resolve_element_env, 0, - c00316ca: 4781 li a5,0 - c00316cc: 4681 li a3,0 - c00316ce: 8522 mv a0,s0 - c00316d0: 9d0e10ef jal ra,c00128a0 - c00316d4: fc0545e3 bltz a0,c003169e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48304 + c003189a: 4781 li a5,0 + c003189c: 4681 li a3,0 + c003189e: 8522 mv a0,s0 + c00318a0: 8eee10ef jal ra,c001298e + c00318a4: fc0545e3 bltz a0,c003186e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48312 return (remainingElementsCount == 0); - c00316d8: 4572 lw a0,28(sp) - c00316da: 00153513 seqz a0,a0 - c00316de: b7c9 j c00316a0 + c00318a8: 4572 lw a0,28(sp) + c00318aa: 00153513 seqz a0,a0 + c00318ae: b7c9 j c0031870 -00000000c00316e0 : +00000000c00318b0 : js_typed_array_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53315 -{ - c00316e0: 7155 addi sp,sp,-208 - c00316e2: e1a2 sd s0,192(sp) - c00316e4: e586 sd ra,200(sp) - c00316e6: fd26 sd s1,184(sp) - c00316e8: f94a sd s2,176(sp) - c00316ea: f54e sd s3,168(sp) - c00316ec: f152 sd s4,160(sp) - c00316ee: ed56 sd s5,152(sp) - c00316f0: e95a sd s6,144(sp) - c00316f2: e02e sd a1,0(sp) - c00316f4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53323 +{ + c00318b0: 7155 addi sp,sp,-208 + c00318b2: e1a2 sd s0,192(sp) + c00318b4: e586 sd ra,200(sp) + c00318b6: fd26 sd s1,184(sp) + c00318b8: f94a sd s2,176(sp) + c00318ba: f54e sd s3,168(sp) + c00318bc: f152 sd s4,160(sp) + c00318be: ed56 sd s5,152(sp) + c00318c0: e95a sd s6,144(sp) + c00318c2: e02e sd a1,0(sp) + c00318c4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53325 if (argc > 1) { - c00316f6: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53315 + c00318c6: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53323 { - c00316f8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53317 + c00318c8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53325 if (argc > 1) { - c00316fa: 06d7c663 blt a5,a3,c0031766 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53316 + c00318ca: 06d7c663 blt a5,a3,c0031936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53324 JSValueConst offset = JS_UNDEFINED; - c00316fe: f002 sd zero,32(sp) - c0031700: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53320 + c00318ce: f002 sd zero,32(sp) + c00318d0: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53328 return js_typed_array_set_internal(ctx, this_val, argv[0], offset); - c0031702: 6314 ld a3,0(a4) - c0031704: 6718 ld a4,8(a4) - c0031706: 6582 ld a1,0(sp) - c0031708: 6622 ld a2,8(sp) - c003170a: e4ba sd a4,72(sp) - c003170c: 7702 ld a4,32(sp) - c003170e: e0b6 sd a3,64(sp) + c00318d2: 6314 ld a3,0(a4) + c00318d4: 6718 ld a4,8(a4) + c00318d6: 6582 ld a1,0(sp) + c00318d8: 6622 ld a2,8(sp) + c00318da: e4ba sd a4,72(sp) + c00318dc: 7702 ld a4,32(sp) + c00318de: e0b6 sd a3,64(sp) js_typed_array_set_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53190 p = get_typed_array(ctx, dst, 0); - c0031710: 8522 mv a0,s0 - c0031712: 4681 li a3,0 - c0031714: f82e sd a1,48(sp) - c0031716: fc32 sd a2,56(sp) - c0031718: f43e sd a5,40(sp) - c003171a: e8ba sd a4,80(sp) - c003171c: ecbe sd a5,88(sp) - c003171e: 89be20ef jal ra,c0013fb8 - c0031722: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53183 + c00318e0: 8522 mv a0,s0 + c00318e2: 4681 li a3,0 + c00318e4: f82e sd a1,48(sp) + c00318e6: fc32 sd a2,56(sp) + c00318e8: f43e sd a5,40(sp) + c00318ea: e8ba sd a4,80(sp) + c00318ec: ecbe sd a5,88(sp) + c00318ee: fb8e20ef jal ra,c00140a6 + c00318f2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53191 if (!p) - c0031724: 18050263 beqz a0,c00318a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53185 + c00318f4: 18050263 beqz a0,c0031a78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53193 if (JS_ToInt64Sat(ctx, &offset, off)) - c0031728: 6646 ld a2,80(sp) - c003172a: 66e6 ld a3,88(sp) - c003172c: 082c addi a1,sp,24 - c003172e: 8522 mv a0,s0 - c0031730: b2fec0ef jal ra,c001e25e - c0031734: 16051a63 bnez a0,c00318a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53187 + c00318f8: 6646 ld a2,80(sp) + c00318fa: 66e6 ld a3,88(sp) + c00318fc: 082c addi a1,sp,24 + c00318fe: 8522 mv a0,s0 + c0031900: b2fec0ef jal ra,c001e42e + c0031904: 16051a63 bnez a0,c0031a78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53195 if (offset < 0) - c0031738: 67e2 ld a5,24(sp) - c003173a: 1607c463 bltz a5,c00318a2 + c0031908: 67e2 ld a5,24(sp) + c003190a: 1607c463 bltz a5,c0031a72 typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c003173e: 03093783 ld a5,48(s2) - c0031742: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c003190e: 03093783 ld a5,48(s2) + c0031912: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c0031744: 7b9c ld a5,48(a5) + c0031914: 7b9c ld a5,48(a5) js_typed_array_set_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53197 if (typed_array_is_detached(ctx, p)) { - c0031746: 0047c783 lbu a5,4(a5) - c003174a: c395 beqz a5,c003176e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53180 + c0031916: 0047c783 lbu a5,4(a5) + c003191a: c395 beqz a5,c003193e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53188 JSValue val, src_obj = JS_UNDEFINED; - c003174c: 4a0d li s4,3 - c003174e: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53191 + c003191c: 4a0d li s4,3 + c003191e: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53199 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0031750: 8522 mv a0,s0 - c0031752: d80e20ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53245 + c0031920: 8522 mv a0,s0 + c0031922: c9ee20ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53253 JS_FreeValue(ctx, src_obj); - c0031756: 85d6 mv a1,s5 - c0031758: 8652 mv a2,s4 - c003175a: 8522 mv a0,s0 - c003175c: bdcd60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53246 + c0031926: 85d6 mv a1,s5 + c0031928: 8652 mv a2,s4 + c003192a: 8522 mv a0,s0 + c003192c: afad60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53254 return JS_EXCEPTION; - c0031760: 4599 li a1,6 - c0031762: e102 sd zero,128(sp) - c0031764: a8ed j c003185e + c0031930: 4599 li a1,6 + c0031932: e102 sd zero,128(sp) + c0031934: a8ed j c0031a2e js_typed_array_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53326 offset = argv[1]; - c0031766: 6b1c ld a5,16(a4) - c0031768: f03e sd a5,32(sp) - c003176a: 6f1c ld a5,24(a4) - c003176c: bf59 j c0031702 + c0031936: 6b1c ld a5,16(a4) + c0031938: f03e sd a5,32(sp) + c003193a: 6f1c ld a5,24(a4) + c003193c: bf59 j c00318d2 js_typed_array_set_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53202 src_obj = JS_ToObject(ctx, src); - c003176e: 6586 ld a1,64(sp) - c0031770: 6626 ld a2,72(sp) - c0031772: 8522 mv a0,s0 - c0031774: e79f60ef jal ra,c00285ec - c0031778: f8aa sd a0,112(sp) - c003177a: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53195 + c003193e: 6586 ld a1,64(sp) + c0031940: 6626 ld a2,72(sp) + c0031942: 8522 mv a0,s0 + c0031944: e79f60ef jal ra,c00287bc + c0031948: f8aa sd a0,112(sp) + c003194a: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53203 if (JS_IsException(src_obj)) - c003177c: 0005871b sext.w a4,a1 - c0031780: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53194 + c003194c: 0005871b sext.w a4,a1 + c0031950: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53202 src_obj = JS_ToObject(ctx, src); - c0031782: 84aa mv s1,a0 - c0031784: 89ae mv s3,a1 - c0031786: 8aaa mv s5,a0 - c0031788: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53195 + c0031952: 84aa mv s1,a0 + c0031954: 89ae mv s3,a1 + c0031956: 8aaa mv s5,a0 + c0031958: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53203 if (JS_IsException(src_obj)) - c003178a: fcf706e3 beq a4,a5,c0031756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53198 + c003195a: fcf706e3 beq a4,a5,c0031926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53206 if (src_p->class_id >= JS_CLASS_UINT8C_ARRAY && - c003178e: 00655783 lhu a5,6(a0) - c0031792: 4729 li a4,10 - c0031794: 37ad addiw a5,a5,-21 - c0031796: 17c2 slli a5,a5,0x30 - c0031798: 93c1 srli a5,a5,0x30 - c003179a: 0cf76d63 bltu a4,a5,c0031874 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53202 + c003195e: 00655783 lhu a5,6(a0) + c0031962: 4729 li a4,10 + c0031964: 37ad addiw a5,a5,-21 + c0031966: 17c2 slli a5,a5,0x30 + c0031968: 93c1 srli a5,a5,0x30 + c003196a: 0cf76d63 bltu a4,a5,c0031a44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53210 JSTypedArray *src_ta = src_p->u.typed_array; - c003179e: 790c ld a1,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53203 + c003196e: 790c ld a1,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53211 JSArrayBuffer *src_abuf = src_ta->buffer->u.array_buffer; - c00317a0: 6d9c ld a5,24(a1) - c00317a2: 0307b803 ld a6,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53206 + c0031970: 6d9c ld a5,24(a1) + c0031972: 0307b803 ld a6,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53214 if (src_abuf->detached) - c00317a6: 00484783 lbu a5,4(a6) # 4004 <__clzdi2-0xbfffbffc> - c00317aa: f3dd bnez a5,c0031750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53200 + c0031976: 00484783 lbu a5,4(a6) # 4004 <__clzdi2-0xbfffbffc> + c003197a: f3dd bnez a5,c0031920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53208 JSTypedArray *dest_ta = p->u.typed_array; - c00317ac: 03093683 ld a3,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53210 + c003197c: 03093683 ld a3,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53218 if (offset > (int64_t)(p->u.array.count - src_len)) - c00317b0: 6562 ld a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53201 + c0031980: 6562 ld a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53209 JSArrayBuffer *dest_abuf = dest_ta->buffer->u.array_buffer; - c00317b2: 6e9c ld a5,24(a3) - c00317b4: 0307b883 ld a7,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53204 + c0031982: 6e9c ld a5,24(a3) + c0031984: 0307b883 ld a7,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53212 int shift = typed_array_size_log2(p->class_id); - c00317b8: 00695783 lhu a5,6(s2) - c00317bc: feb7871b addiw a4,a5,-21 - c00317c0: 00035797 auipc a5,0x35 - c00317c4: 77878793 addi a5,a5,1912 # c0066f38 - c00317c8: 97ba add a5,a5,a4 - c00317ca: 0007c603 lbu a2,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53209 + c0031988: 00695783 lhu a5,6(s2) + c003198c: feb7871b addiw a4,a5,-21 + c0031990: 00036797 auipc a5,0x36 + c0031994: 80878793 addi a5,a5,-2040 # c0067198 + c0031998: 97ba add a5,a5,a4 + c003199a: 0007c603 lbu a2,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53217 src_len = src_p->u.array.count; - c00317ce: 0404e703 lwu a4,64(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53210 + c003199e: 0404e703 lwu a4,64(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53218 if (offset > (int64_t)(p->u.array.count - src_len)) - c00317d2: 04096783 lwu a5,64(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53209 + c00319a2: 04096783 lwu a5,64(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53217 src_len = src_p->u.array.count; - c00317d6: e83a sd a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53210 + c00319a6: e83a sd a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53218 if (offset > (int64_t)(p->u.array.count - src_len)) - c00317d8: 8f99 sub a5,a5,a4 - c00317da: 0aa7cc63 blt a5,a0,c0031892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53214 + c00319a8: 8f99 sub a5,a5,a4 + c00319aa: 0aa7cc63 blt a5,a0,c0031a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53222 if (src_p->class_id == p->class_id) { - c00317de: 0064d303 lhu t1,6(s1) - c00317e2: 00695783 lhu a5,6(s2) - c00317e6: 04f30463 beq t1,a5,c003182e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53180 + c00319ae: 0064d303 lhu t1,6(s1) + c00319b2: 00695783 lhu a5,6(s2) + c00319b6: 04f30463 beq t1,a5,c00319fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53188 JSValue val, src_obj = JS_UNDEFINED; - c00317ea: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53236 + c00319ba: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53244 if (JS_IsException(val)) - c00317ec: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53234 + c00319bc: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53242 for(i = 0; i < src_len; i++) { - c00317ee: 6742 ld a4,16(sp) - c00317f0: 02091793 slli a5,s2,0x20 - c00317f4: 9381 srli a5,a5,0x20 - c00317f6: 04e7dd63 bge a5,a4,c0031850 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53235 + c00319be: 6742 ld a4,16(sp) + c00319c0: 02091793 slli a5,s2,0x20 + c00319c4: 9381 srli a5,a5,0x20 + c00319c6: 04e7dd63 bge a5,a4,c0031a20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53243 val = JS_GetPropertyUint32(ctx, src_obj, i); - c00317fa: 86ca mv a3,s2 - c00317fc: 85a6 mv a1,s1 - c00317fe: 864e mv a2,s3 - c0031800: 8522 mv a0,s0 - c0031802: ecae00ef jal ra,c0011ecc - c0031806: f0aa sd a0,96(sp) - c0031808: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53236 + c00319ca: 86ca mv a3,s2 + c00319cc: 85a6 mv a1,s1 + c00319ce: 864e mv a2,s3 + c00319d0: 8522 mv a0,s0 + c00319d2: de8e00ef jal ra,c0011fba + c00319d6: f0aa sd a0,96(sp) + c00319d8: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53244 if (JS_IsException(val)) - c003180a: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53235 + c00319da: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53243 val = JS_GetPropertyUint32(ctx, src_obj, i); - c003180e: 872a mv a4,a0 - c0031810: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53236 + c00319de: 872a mv a4,a0 + c00319e0: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53244 if (JS_IsException(val)) - c0031812: f56682e3 beq a3,s6,c0031756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53238 + c00319e2: f56682e3 beq a3,s6,c0031926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53246 if (JS_SetPropertyUint32(ctx, dst, offset + i, val) < 0) - c0031816: 66e2 ld a3,24(sp) - c0031818: 75c2 ld a1,48(sp) - c003181a: 7662 ld a2,56(sp) - c003181c: 012686bb addw a3,a3,s2 - c0031820: 8522 mv a0,s0 - c0031822: 87ee10ef jal ra,c00128a0 - c0031826: f20548e3 bltz a0,c0031756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53234 + c00319e6: 66e2 ld a3,24(sp) + c00319e8: 75c2 ld a1,48(sp) + c00319ea: 7662 ld a2,56(sp) + c00319ec: 012686bb addw a3,a3,s2 + c00319f0: 8522 mv a0,s0 + c00319f2: f9de00ef jal ra,c001298e + c00319f6: f20548e3 bltz a0,c0031926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53242 for(i = 0; i < src_len; i++) { - c003182a: 2905 addiw s2,s2,1 - c003182c: b7c9 j c00317ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53216 + c00319fa: 2905 addiw s2,s2,1 + c00319fc: b7c9 j c00319be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53224 memmove(dest_abuf->data + dest_ta->offset + (offset << shift), - c003182e: 0206e783 lwu a5,32(a3) - c0031832: 00c51533 sll a0,a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53217 + c00319fe: 0206e783 lwu a5,32(a3) + c0031a02: 00c51533 sll a0,a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53225 src_abuf->data + src_ta->offset, src_len << shift); - c0031836: 0205e583 lwu a1,32(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53216 + c0031a06: 0205e583 lwu a1,32(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53224 memmove(dest_abuf->data + dest_ta->offset + (offset << shift), - c003183a: 953e add a0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53217 + c0031a0a: 953e add a0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53225 src_abuf->data + src_ta->offset, src_len << shift); - c003183c: 00883803 ld a6,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53216 + c0031a0c: 00883803 ld a6,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53224 memmove(dest_abuf->data + dest_ta->offset + (offset << shift), - c0031840: 0088b783 ld a5,8(a7) # 4008 <__clzdi2-0xbfffbff8> - c0031844: 00c71633 sll a2,a4,a2 - c0031848: 95c2 add a1,a1,a6 - c003184a: 953e add a0,a0,a5 - c003184c: 7e3240ef jal ra,c005682e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53242 + c0031a10: 0088b783 ld a5,8(a7) # 4008 <__clzdi2-0xbfffbff8> + c0031a14: 00c71633 sll a2,a4,a2 + c0031a18: 95c2 add a1,a1,a6 + c0031a1a: 953e add a0,a0,a5 + c0031a1c: 7e3240ef jal ra,c00569fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53250 JS_FreeValue(ctx, src_obj); - c0031850: 85a6 mv a1,s1 - c0031852: 864e mv a2,s3 - c0031854: 8522 mv a0,s0 - c0031856: ae2d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53243 + c0031a20: 85a6 mv a1,s1 + c0031a22: 864e mv a2,s3 + c0031a24: 8522 mv a0,s0 + c0031a26: a00d60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53251 return JS_UNDEFINED; - c003185a: 458d li a1,3 - c003185c: e102 sd zero,128(sp) + c0031a2a: 458d li a1,3 + c0031a2c: e102 sd zero,128(sp) js_typed_array_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53321 -} - c003185e: 60ae ld ra,200(sp) - c0031860: 640e ld s0,192(sp) - c0031862: 650a ld a0,128(sp) - c0031864: 74ea ld s1,184(sp) - c0031866: 794a ld s2,176(sp) - c0031868: 79aa ld s3,168(sp) - c003186a: 7a0a ld s4,160(sp) - c003186c: 6aea ld s5,152(sp) - c003186e: 6b4a ld s6,144(sp) - c0031870: 6169 addi sp,sp,208 - c0031872: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53329 +} + c0031a2e: 60ae ld ra,200(sp) + c0031a30: 640e ld s0,192(sp) + c0031a32: 650a ld a0,128(sp) + c0031a34: 74ea ld s1,184(sp) + c0031a36: 794a ld s2,176(sp) + c0031a38: 79aa ld s3,168(sp) + c0031a3a: 7a0a ld s4,160(sp) + c0031a3c: 6aea ld s5,152(sp) + c0031a3e: 6b4a ld s6,144(sp) + c0031a40: 6169 addi sp,sp,208 + c0031a42: 8082 ret js_typed_array_set_internal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53226 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53234 if (js_get_length64(ctx, &src_len, src_obj)) - c0031874: 862a mv a2,a0 - c0031876: 86ae mv a3,a1 - c0031878: 8522 mv a0,s0 - c003187a: 080c addi a1,sp,16 - c003187c: fc3ec0ef jal ra,c001e83e - c0031880: ec051be3 bnez a0,c0031756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53228 + c0031a44: 862a mv a2,a0 + c0031a46: 86ae mv a3,a1 + c0031a48: 8522 mv a0,s0 + c0031a4a: 080c addi a1,sp,16 + c0031a4c: fc3ec0ef jal ra,c001ea0e + c0031a50: ec051be3 bnez a0,c0031926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53236 if (offset > (int64_t)(p->u.array.count - src_len)) { - c0031884: 6742 ld a4,16(sp) - c0031886: 04096783 lwu a5,64(s2) - c003188a: 8f99 sub a5,a5,a4 - c003188c: 6762 ld a4,24(sp) - c003188e: f4e7dee3 bge a5,a4,c00317ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53230 + c0031a54: 6742 ld a4,16(sp) + c0031a56: 04096783 lwu a5,64(s2) + c0031a5a: 8f99 sub a5,a5,a4 + c0031a5c: 6762 ld a4,24(sp) + c0031a5e: f4e7dee3 bge a5,a4,c00319ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53238 JS_ThrowRangeError(ctx, "invalid array length"); - c0031892: 8522 mv a0,s0 - c0031894: 0002d597 auipc a1,0x2d - c0031898: 8b458593 addi a1,a1,-1868 # c005e148 - c003189c: 8bee30ef jal ra,c001495a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53231 + c0031a62: 8522 mv a0,s0 + c0031a64: 0002d597 auipc a1,0x2d + c0031a68: 94458593 addi a1,a1,-1724 # c005e3a8 + c0031a6c: fdde20ef jal ra,c0014a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53239 goto fail; - c00318a0: bd5d j c0031756 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53180 + c0031a70: bd5d j c0031926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53188 JSValue val, src_obj = JS_UNDEFINED; - c00318a2: 4a0d li s4,3 - c00318a4: 4a81 li s5,0 - c00318a6: b7f5 j c0031892 - c00318a8: 4a0d li s4,3 - c00318aa: 4a81 li s5,0 - c00318ac: b56d j c0031756 - -00000000c00318ae : + c0031a72: 4a0d li s4,3 + c0031a74: 4a81 li s5,0 + c0031a76: b7f5 j c0031a62 + c0031a78: 4a0d li s4,3 + c0031a7a: 4a81 li s5,0 + c0031a7c: b56d j c0031926 + +00000000c0031a7e : build_arg_list(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38414 -{ - c00318ae: 711d addi sp,sp,-96 - c00318b0: ec86 sd ra,88(sp) - c00318b2: e8a2 sd s0,80(sp) - c00318b4: e4a6 sd s1,72(sp) - c00318b6: e0ca sd s2,64(sp) - c00318b8: fc4e sd s3,56(sp) - c00318ba: f852 sd s4,48(sp) - c00318bc: e032 sd a2,0(sp) - c00318be: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38419 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38422 +{ + c0031a7e: 711d addi sp,sp,-96 + c0031a80: ec86 sd ra,88(sp) + c0031a82: e8a2 sd s0,80(sp) + c0031a84: e4a6 sd s1,72(sp) + c0031a86: e0ca sd s2,64(sp) + c0031a88: fc4e sd s3,56(sp) + c0031a8a: f852 sd s4,48(sp) + c0031a8c: e032 sd a2,0(sp) + c0031a8e: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38427 if (JS_VALUE_GET_TAG(array_arg) != JS_TAG_OBJECT) { - c00318c0: 0006879b sext.w a5,a3 - c00318c4: 577d li a4,-1 - c00318c6: 00e78a63 beq a5,a4,c00318da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38420 + c0031a90: 0006879b sext.w a5,a3 + c0031a94: 577d li a4,-1 + c0031a96: 00e78a63 beq a5,a4,c0031aaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38428 JS_ThrowTypeError(ctx, "not a object"); - c00318ca: 0002f597 auipc a1,0x2f - c00318ce: afe58593 addi a1,a1,-1282 # c00603c8 - c00318d2: b25e10ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38445 + c0031a9a: 0002f597 auipc a1,0x2f + c0031a9e: b8e58593 addi a1,a1,-1138 # c0060628 + c0031aa2: a43e10ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38453 return NULL; - c00318d6: 4401 li s0,0 - c00318d8: a851 j c003196c - c00318da: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38423 + c0031aa6: 4401 li s0,0 + c0031aa8: a851 j c0031b3c + c0031aaa: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38431 if (js_get_length32(ctx, &len, array_arg)) - c00318dc: 086c addi a1,sp,28 - c00318de: 892a mv s2,a0 - c00318e0: a3bea0ef jal ra,c001c31a - c00318e4: f96d bnez a0,c00318d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38425 + c0031aac: 086c addi a1,sp,28 + c0031aae: 892a mv s2,a0 + c0031ab0: a3bea0ef jal ra,c001c4ea + c0031ab4: f96d bnez a0,c0031aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38433 if (len > JS_MAX_LOCAL_VARS) { - c00318e6: 47f2 lw a5,28(sp) - c00318e8: 6741 lui a4,0x10 - c00318ea: 00e7ea63 bltu a5,a4,c00318fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38426 + c0031ab6: 47f2 lw a5,28(sp) + c0031ab8: 6741 lui a4,0x10 + c0031aba: 00e7ea63 bltu a5,a4,c0031ace +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38434 JS_ThrowInternalError(ctx, "too many arguments"); - c00318ee: 854a mv a0,s2 - c00318f0: 0002d597 auipc a1,0x2d - c00318f4: ff058593 addi a1,a1,-16 # c005e8e0 - c00318f8: 88ce30ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38427 + c0031abe: 854a mv a0,s2 + c0031ac0: 0002d597 auipc a1,0x2d + c0031ac4: 08058593 addi a1,a1,128 # c005eb40 + c0031ac8: fabe20ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38435 return NULL; - c00318fc: bfe9 j c00318d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38430 + c0031acc: bfe9 j c0031aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38438 tab = js_mallocz(ctx, sizeof(tab[0]) * max_uint32(1, len)); - c00318fe: 85be mv a1,a5 - c0031900: e391 bnez a5,c0031904 - c0031902: 4585 li a1,1 - c0031904: 02059793 slli a5,a1,0x20 - c0031908: 01c7d593 srli a1,a5,0x1c - c003190c: 854a mv a0,s2 - c003190e: bcee40ef jal ra,c0015cdc - c0031912: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38431 + c0031ace: 85be mv a1,a5 + c0031ad0: e391 bnez a5,c0031ad4 + c0031ad2: 4585 li a1,1 + c0031ad4: 02059793 slli a5,a1,0x20 + c0031ad8: 01c7d593 srli a1,a5,0x1c + c0031adc: 854a mv a0,s2 + c0031ade: bcee40ef jal ra,c0015eac + c0031ae2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38439 if (!tab) - c0031914: d169 beqz a0,c00318d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38433 + c0031ae4: d169 beqz a0,c0031aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38441 p = JS_VALUE_GET_OBJ(array_arg); - c0031916: 6982 ld s3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38434 + c0031ae6: 6982 ld s3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38442 if ((p->class_id == JS_CLASS_ARRAY || p->class_id == JS_CLASS_ARGUMENTS) && - c0031918: 4709 li a4,2 - c003191a: 0069d783 lhu a5,6(s3) - c003191e: 00e78663 beq a5,a4,c003192a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38434 (discriminator 2) - c0031922: 4721 li a4,8 - c0031924: 4481 li s1,0 - c0031926: 00e79c63 bne a5,a4,c003193e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38434 (discriminator 3) - c003192a: 0059c783 lbu a5,5(s3) - c003192e: 8ba1 andi a5,a5,8 - c0031930: c791 beqz a5,c003193c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38435 + c0031ae8: 4709 li a4,2 + c0031aea: 0069d783 lhu a5,6(s3) + c0031aee: 00e78663 beq a5,a4,c0031afa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38442 (discriminator 2) + c0031af2: 4721 li a4,8 + c0031af4: 4481 li s1,0 + c0031af6: 00e79c63 bne a5,a4,c0031b0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38442 (discriminator 3) + c0031afa: 0059c783 lbu a5,5(s3) + c0031afe: 8ba1 andi a5,a5,8 + c0031b00: c791 beqz a5,c0031b0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38443 p->fast_array && - c0031932: 0409a703 lw a4,64(s3) - c0031936: 47f2 lw a5,28(sp) - c0031938: 04f70363 beq a4,a5,c003197e - c003193c: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38443 (discriminator 1) + c0031b02: 0409a703 lw a4,64(s3) + c0031b06: 47f2 lw a5,28(sp) + c0031b08: 04f70363 beq a4,a5,c0031b4e + c0031b0c: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38451 (discriminator 1) if (JS_IsException(ret)) { - c003193e: 4999 li s3,6 - c0031940: a889 j c0031992 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38438 (discriminator 3) + c0031b0e: 4999 li s3,6 + c0031b10: a889 j c0031b62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38446 (discriminator 3) tab[i] = JS_DupValue(ctx, p->u.array.u.values[i]); - c0031942: 02091793 slli a5,s2,0x20 - c0031946: 01c7d493 srli s1,a5,0x1c - c003194a: 0389b783 ld a5,56(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38437 (discriminator 3) + c0031b12: 02091793 slli a5,s2,0x20 + c0031b16: 01c7d493 srli s1,a5,0x1c + c0031b1a: 0389b783 ld a5,56(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38445 (discriminator 3) for(i = 0; i < len; i++) { - c003194e: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38438 (discriminator 3) + c0031b1e: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38446 (discriminator 3) tab[i] = JS_DupValue(ctx, p->u.array.u.values[i]); - c0031950: 97a6 add a5,a5,s1 - c0031952: 6388 ld a0,0(a5) - c0031954: 678c ld a1,8(a5) - c0031956: 94a2 add s1,s1,s0 - c0031958: d17d40ef jal ra,c000666e - c003195c: e088 sd a0,0(s1) - c003195e: e48c sd a1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38437 (discriminator 1) + c0031b20: 97a6 add a5,a5,s1 + c0031b22: 6388 ld a0,0(a5) + c0031b24: 678c ld a1,8(a5) + c0031b26: 94a2 add s1,s1,s0 + c0031b28: c35d40ef jal ra,c000675c + c0031b2c: e088 sd a0,0(s1) + c0031b2e: e48c sd a1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38445 (discriminator 1) for(i = 0; i < len; i++) { - c0031960: 47f2 lw a5,28(sp) - c0031962: fef960e3 bltu s2,a5,c0031942 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38450 + c0031b30: 47f2 lw a5,28(sp) + c0031b32: fef960e3 bltu s2,a5,c0031b12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38458 *plen = len; - c0031966: 47f2 lw a5,28(sp) - c0031968: 00fa2023 sw a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38452 -} - c003196c: 60e6 ld ra,88(sp) - c003196e: 8522 mv a0,s0 - c0031970: 6446 ld s0,80(sp) - c0031972: 64a6 ld s1,72(sp) - c0031974: 6906 ld s2,64(sp) - c0031976: 79e2 ld s3,56(sp) - c0031978: 7a42 ld s4,48(sp) - c003197a: 6125 addi sp,sp,96 - c003197c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38437 + c0031b36: 47f2 lw a5,28(sp) + c0031b38: 00fa2023 sw a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38460 +} + c0031b3c: 60e6 ld ra,88(sp) + c0031b3e: 8522 mv a0,s0 + c0031b40: 6446 ld s0,80(sp) + c0031b42: 64a6 ld s1,72(sp) + c0031b44: 6906 ld s2,64(sp) + c0031b46: 79e2 ld s3,56(sp) + c0031b48: 7a42 ld s4,48(sp) + c0031b4a: 6125 addi sp,sp,96 + c0031b4c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38445 for(i = 0; i < len; i++) { - c003197e: 4901 li s2,0 - c0031980: b7c5 j c0031960 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38447 (discriminator 2) + c0031b4e: 4901 li s2,0 + c0031b50: b7c5 j c0031b30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38455 (discriminator 2) tab[i] = ret; - c0031982: 02049713 slli a4,s1,0x20 - c0031986: 01c75793 srli a5,a4,0x1c - c003198a: 97a2 add a5,a5,s0 - c003198c: e388 sd a0,0(a5) - c003198e: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38441 (discriminator 2) + c0031b52: 02049713 slli a4,s1,0x20 + c0031b56: 01c75793 srli a5,a4,0x1c + c0031b5a: 97a2 add a5,a5,s0 + c0031b5c: e388 sd a0,0(a5) + c0031b5e: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38449 (discriminator 2) for(i = 0; i < len; i++) { - c0031990: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38441 (discriminator 1) - c0031992: 47f2 lw a5,28(sp) - c0031994: fcf4f9e3 bgeu s1,a5,c0031966 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38442 + c0031b60: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38449 (discriminator 1) + c0031b62: 47f2 lw a5,28(sp) + c0031b64: fcf4f9e3 bgeu s1,a5,c0031b36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38450 ret = JS_GetPropertyUint32(ctx, array_arg, i); - c0031998: 6582 ld a1,0(sp) - c003199a: 6622 ld a2,8(sp) - c003199c: 86a6 mv a3,s1 - c003199e: 854a mv a0,s2 - c00319a0: d2ce00ef jal ra,c0011ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38443 + c0031b68: 6582 ld a1,0(sp) + c0031b6a: 6622 ld a2,8(sp) + c0031b6c: 86a6 mv a3,s1 + c0031b6e: 854a mv a0,s2 + c0031b70: c4ae00ef jal ra,c0011fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38451 if (JS_IsException(ret)) { - c00319a4: 0005879b sext.w a5,a1 - c00319a8: fd379de3 bne a5,s3,c0031982 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38444 + c0031b74: 0005879b sext.w a5,a1 + c0031b78: fd379de3 bne a5,s3,c0031b52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38452 free_arg_list(ctx, tab, i); - c00319ac: 8626 mv a2,s1 - c00319ae: 85a2 mv a1,s0 - c00319b0: 854a mv a0,s2 - c00319b2: c44d60ef jal ra,c0007df6 - c00319b6: b705 j c00318d6 + c0031b7c: 8626 mv a2,s1 + c0031b7e: 85a2 mv a1,s0 + c0031b80: 854a mv a0,s2 + c0031b82: b62d60ef jal ra,c0007ee4 + c0031b86: b705 j c0031aa6 -00000000c00319b8 : +00000000c0031b88 : js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40748 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40756 { - c00319b8: 7131 addi sp,sp,-192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40754 + c0031b88: 7131 addi sp,sp,-192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40762 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_ARRAY_ITERATOR); - c00319ba: 02800693 li a3,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40748 -{ - c00319be: f526 sd s1,168(sp) - c00319c0: ed4e sd s3,152(sp) - c00319c2: fd06 sd ra,184(sp) - c00319c4: f922 sd s0,176(sp) - c00319c6: f14a sd s2,160(sp) - c00319c8: 84aa mv s1,a0 - c00319ca: e02e sd a1,0(sp) - c00319cc: e432 sd a2,8(sp) - c00319ce: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40754 + c0031b8a: 02800693 li a3,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40756 +{ + c0031b8e: f526 sd s1,168(sp) + c0031b90: ed4e sd s3,152(sp) + c0031b92: fd06 sd ra,184(sp) + c0031b94: f922 sd s0,176(sp) + c0031b96: f14a sd s2,160(sp) + c0031b98: 84aa mv s1,a0 + c0031b9a: e02e sd a1,0(sp) + c0031b9c: e432 sd a2,8(sp) + c0031b9e: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40762 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_ARRAY_ITERATOR); - c00319d0: ba9e10ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40755 + c0031ba0: ac7e10ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40763 if (!it) - c00319d4: c915 beqz a0,c0031a08 + c0031ba4: c915 beqz a0,c0031bd8 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00319d6: 6514 ld a3,8(a0) + c0031ba6: 6514 ld a3,8(a0) js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40765 if (JS_IsUndefined(it->obj)) - c00319d8: 478d li a5,3 - c00319da: 842a mv s0,a0 - c00319dc: 0006871b sext.w a4,a3 - c00319e0: 04f70a63 beq a4,a5,c0031a34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40759 + c0031ba8: 478d li a5,3 + c0031baa: 842a mv s0,a0 + c0031bac: 0006871b sext.w a4,a3 + c0031bb0: 04f70a63 beq a4,a5,c0031c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40767 p = JS_VALUE_GET_OBJ(it->obj); - c00319e4: 6110 ld a2,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40760 + c0031bb4: 6110 ld a2,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40768 if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c00319e6: 4729 li a4,10 - c00319e8: 00665783 lhu a5,6(a2) - c00319ec: 37ad addiw a5,a5,-21 - c00319ee: 17c2 slli a5,a5,0x30 - c00319f0: 93c1 srli a5,a5,0x30 - c00319f2: 04f76763 bltu a4,a5,c0031a40 + c0031bb6: 4729 li a4,10 + c0031bb8: 00665783 lhu a5,6(a2) + c0031bbc: 37ad addiw a5,a5,-21 + c0031bbe: 17c2 slli a5,a5,0x30 + c0031bc0: 93c1 srli a5,a5,0x30 + c0031bc2: 04f76763 bltu a4,a5,c0031c10 typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c00319f6: 7a1c ld a5,48(a2) - c00319f8: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c0031bc6: 7a1c ld a5,48(a2) + c0031bc8: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c00319fa: 7b9c ld a5,48(a5) + c0031bca: 7b9c ld a5,48(a5) js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40770 if (typed_array_is_detached(ctx, p)) { - c00319fc: 0047c783 lbu a5,4(a5) - c0031a00: cb91 beqz a5,c0031a14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40763 + c0031bcc: 0047c783 lbu a5,4(a5) + c0031bd0: cb91 beqz a5,c0031be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40771 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0031a02: 8526 mv a0,s1 - c0031a04: acee20ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40770 + c0031bd2: 8526 mv a0,s1 + c0031bd4: 9ece20ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40778 *pdone = FALSE; - c0031a08: 0009a023 sw zero,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40771 + c0031bd8: 0009a023 sw zero,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40779 return JS_EXCEPTION; - c0031a0c: e882 sd zero,80(sp) - c0031a0e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40801 + c0031bdc: e882 sd zero,80(sp) + c0031bde: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40809 return obj; - c0031a10: ecbe sd a5,88(sp) - c0031a12: a08d j c0031a74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40766 - len = p->u.array.count; - c0031a14: 423c lw a5,64(a2) - c0031a16: ce3e sw a5,28(sp) + c0031be0: ecbe sd a5,88(sp) + c0031be2: a08d j c0031c44 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40774 + len = p->u.array.count; + c0031be4: 423c lw a5,64(a2) + c0031be6: ce3e sw a5,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40782 idx = it->idx; - c0031a18: 01442903 lw s2,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40775 + c0031be8: 01442903 lw s2,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40783 if (idx >= len) { - c0031a1c: 47f2 lw a5,28(sp) - c0031a1e: 02f96763 bltu s2,a5,c0031a4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40776 + c0031bec: 47f2 lw a5,28(sp) + c0031bee: 02f96763 bltu s2,a5,c0031c1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40784 JS_FreeValue(ctx, it->obj); - c0031a22: 600c ld a1,0(s0) - c0031a24: 6410 ld a2,8(s0) - c0031a26: 8526 mv a0,s1 - c0031a28: 910d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40777 + c0031bf2: 600c ld a1,0(s0) + c0031bf4: 6410 ld a2,8(s0) + c0031bf6: 8526 mv a0,s1 + c0031bf8: 82ed60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40785 it->obj = JS_UNDEFINED; - c0031a2c: 478d li a5,3 - c0031a2e: 00043023 sd zero,0(s0) - c0031a32: e41c sd a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40779 + c0031bfc: 478d li a5,3 + c0031bfe: 00043023 sd zero,0(s0) + c0031c02: e41c sd a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40787 *pdone = TRUE; - c0031a34: 4785 li a5,1 - c0031a36: 00f9a023 sw a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40780 + c0031c04: 4785 li a5,1 + c0031c06: 00f9a023 sw a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40788 return JS_UNDEFINED; - c0031a3a: e882 sd zero,80(sp) - c0031a3c: 478d li a5,3 - c0031a3e: bfc9 j c0031a10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40768 + c0031c0a: e882 sd zero,80(sp) + c0031c0c: 478d li a5,3 + c0031c0e: bfc9 j c0031be0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40776 if (js_get_length32(ctx, &len, it->obj)) { - c0031a40: 086c addi a1,sp,28 - c0031a42: 8526 mv a0,s1 - c0031a44: 8d7ea0ef jal ra,c001c31a - c0031a48: d961 beqz a0,c0031a18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40769 + c0031c10: 086c addi a1,sp,28 + c0031c12: 8526 mv a0,s1 + c0031c14: 8d7ea0ef jal ra,c001c4ea + c0031c18: d961 beqz a0,c0031be8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40777 fail1: - c0031a4a: bf7d j c0031a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40782 + c0031c1a: bf7d j c0031bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40790 it->idx = idx + 1; - c0031a4c: 0019079b addiw a5,s2,1 - c0031a50: c85c sw a5,20(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40783 + c0031c1c: 0019079b addiw a5,s2,1 + c0031c20: c85c sw a5,20(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40791 *pdone = FALSE; - c0031a52: 0009a023 sw zero,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40784 + c0031c22: 0009a023 sw zero,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40792 if (it->kind == JS_ITERATOR_KIND_KEY) { - c0031a56: 481c lw a5,16(s0) - c0031a58: ef9d bnez a5,c0031a96 + c0031c26: 481c lw a5,16(s0) + c0031c28: ef9d bnez a5,c0031c66 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0031a5a: 0009079b sext.w a5,s2 - c0031a5e: 02094463 bltz s2,c0031a86 + c0031c2a: 0009079b sext.w a5,s2 + c0031c2e: 02094463 bltz s2,c0031c56 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0031a62: da82 sw zero,116(sp) - c0031a64: d8be sw a5,112(sp) - c0031a66: 7746 ld a4,112(sp) - c0031a68: f0ba sd a4,96(sp) - c0031a6a: 4701 li a4,0 + c0031c32: da82 sw zero,116(sp) + c0031c34: d8be sw a5,112(sp) + c0031c36: 7746 ld a4,112(sp) + c0031c38: f0ba sd a4,96(sp) + c0031c3a: 4701 li a4,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0031a6c: d0be sw a5,96(sp) - c0031a6e: 3786 fld fa5,96(sp) - c0031a70: ecba sd a4,88(sp) - c0031a72: a8be fsd fa5,80(sp) + c0031c3c: d0be sw a5,96(sp) + c0031c3e: 3786 fld fa5,96(sp) + c0031c40: ecba sd a4,88(sp) + c0031c42: a8be fsd fa5,80(sp) js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40804 (discriminator 1) -} - c0031a74: 70ea ld ra,184(sp) - c0031a76: 744a ld s0,176(sp) - c0031a78: 6546 ld a0,80(sp) - c0031a7a: 65e6 ld a1,88(sp) - c0031a7c: 74aa ld s1,168(sp) - c0031a7e: 790a ld s2,160(sp) - c0031a80: 69ea ld s3,152(sp) - c0031a82: 6129 addi sp,sp,192 - c0031a84: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40812 (discriminator 1) +} + c0031c44: 70ea ld ra,184(sp) + c0031c46: 744a ld s0,176(sp) + c0031c48: 6546 ld a0,80(sp) + c0031c4a: 65e6 ld a1,88(sp) + c0031c4c: 74aa ld s1,168(sp) + c0031c4e: 790a ld s2,160(sp) + c0031c50: 69ea ld s3,152(sp) + c0031c52: 6129 addi sp,sp,192 + c0031c54: 8082 ret JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0031a86: d21907d3 fcvt.d.wu fa5,s2 - c0031a8a: 471d li a4,7 - c0031a8c: e20787d3 fmv.x.d a5,fa5 + c0031c56: d21907d3 fcvt.d.wu fa5,s2 + c0031c5a: 471d li a4,7 + c0031c5c: e20787d3 fmv.x.d a5,fa5 js_array_iterator_next(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0031a90: b0be fsd fa5,96(sp) - c0031a92: 2781 sext.w a5,a5 - c0031a94: bfe1 j c0031a6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40787 + c0031c60: b0be fsd fa5,96(sp) + c0031c62: 2781 sext.w a5,a5 + c0031c64: bfe1 j c0031c3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40795 val = JS_GetPropertyUint32(ctx, it->obj, idx); - c0031a96: 600c ld a1,0(s0) - c0031a98: 6410 ld a2,8(s0) - c0031a9a: 86ca mv a3,s2 - c0031a9c: 8526 mv a0,s1 - c0031a9e: c2ee00ef jal ra,c0011ecc - c0031aa2: f02a sd a0,32(sp) - c0031aa4: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40788 + c0031c66: 600c ld a1,0(s0) + c0031c68: 6410 ld a2,8(s0) + c0031c6a: 86ca mv a3,s2 + c0031c6c: 8526 mv a0,s1 + c0031c6e: b4ce00ef jal ra,c0011fba + c0031c72: f02a sd a0,32(sp) + c0031c74: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40796 if (JS_IsException(val)) - c0031aa6: 0005879b sext.w a5,a1 - c0031aaa: 4719 li a4,6 - c0031aac: 00e79463 bne a5,a4,c0031ab4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40789 + c0031c76: 0005879b sext.w a5,a1 + c0031c7a: 4719 li a4,6 + c0031c7c: 00e79463 bne a5,a4,c0031c84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40797 return JS_EXCEPTION; - c0031ab0: e882 sd zero,80(sp) - c0031ab2: bfb9 j c0031a10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40790 + c0031c80: e882 sd zero,80(sp) + c0031c82: bfb9 j c0031be0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 if (it->kind == JS_ITERATOR_KIND_VALUE) { - c0031ab4: 4818 lw a4,16(s0) - c0031ab6: 4785 li a5,1 - c0031ab8: 00f71563 bne a4,a5,c0031ac2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40791 + c0031c84: 4818 lw a4,16(s0) + c0031c86: 4785 li a5,1 + c0031c88: 00f71563 bne a4,a5,c0031c92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40799 return val; - c0031abc: e8aa sd a0,80(sp) - c0031abe: ecae sd a1,88(sp) - c0031ac0: bf55 j c0031a74 + c0031c8c: e8aa sd a0,80(sp) + c0031c8e: ecae sd a1,88(sp) + c0031c90: bf55 j c0031c44 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0031ac2: 0009079b sext.w a5,s2 - c0031ac6: 04094463 bltz s2,c0031b0e + c0031c92: 0009079b sext.w a5,s2 + c0031c96: 04094463 bltz s2,c0031cde JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0031aca: d282 sw zero,100(sp) - c0031acc: d0be sw a5,96(sp) - c0031ace: 7706 ld a4,96(sp) - c0031ad0: f482 sd zero,104(sp) - c0031ad2: 4401 li s0,0 - c0031ad4: f8ba sd a4,112(sp) + c0031c9a: d282 sw zero,100(sp) + c0031c9c: d0be sw a5,96(sp) + c0031c9e: 7706 ld a4,96(sp) + c0031ca0: f482 sd zero,104(sp) + c0031ca2: 4401 li s0,0 + c0031ca4: f8ba sd a4,112(sp) JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0031ad6: d8be sw a5,112(sp) + c0031ca6: d8be sw a5,112(sp) js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40797 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40805 args[1] = val; - c0031ad8: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 + c0031ca8: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40806 obj = js_create_array(ctx, 2, args); - c0031ada: 1890 addi a2,sp,112 - c0031adc: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40797 + c0031caa: 1890 addi a2,sp,112 + c0031cac: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40805 args[1] = val; - c0031ade: e13e sd a5,128(sp) - c0031ae0: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 + c0031cae: e13e sd a5,128(sp) + c0031cb0: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40806 obj = js_create_array(ctx, 2, args); - c0031ae2: 8526 mv a0,s1 + c0031cb2: 8526 mv a0,s1 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 - c0031ae4: 7946 ld s2,112(sp) + c0031cb4: 7946 ld s2,112(sp) js_array_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40797 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40805 args[1] = val; - c0031ae6: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40796 + c0031cb6: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40804 args[0] = num; - c0031ae8: fca2 sd s0,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 + c0031cb8: fca2 sd s0,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40806 obj = js_create_array(ctx, 2, args); - c0031aea: a41f70ef jal ra,c002952a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40799 + c0031cba: a41f70ef jal ra,c00296fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40807 JS_FreeValue(ctx, val); - c0031aee: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 + c0031cbe: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40806 obj = js_create_array(ctx, 2, args); - c0031af0: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40799 + c0031cc0: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40807 JS_FreeValue(ctx, val); - c0031af2: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40798 + c0031cc2: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40806 obj = js_create_array(ctx, 2, args); - c0031af4: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40799 + c0031cc4: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40807 JS_FreeValue(ctx, val); - c0031af6: 8526 mv a0,s1 - c0031af8: 840d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40800 + c0031cc6: 8526 mv a0,s1 + c0031cc8: f5fd50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40808 JS_FreeValue(ctx, num); - c0031afc: 85ca mv a1,s2 - c0031afe: 8622 mv a2,s0 - c0031b00: 8526 mv a0,s1 - c0031b02: 836d60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40801 + c0031ccc: 85ca mv a1,s2 + c0031cce: 8622 mv a2,s0 + c0031cd0: 8526 mv a0,s1 + c0031cd2: f55d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40809 return obj; - c0031b06: 77c2 ld a5,48(sp) - c0031b08: e8be sd a5,80(sp) - c0031b0a: 77e2 ld a5,56(sp) - c0031b0c: b711 j c0031a10 + c0031cd6: 77c2 ld a5,48(sp) + c0031cd8: e8be sd a5,80(sp) + c0031cda: 77e2 ld a5,56(sp) + c0031cdc: b711 j c0031be0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0031b0e: d21907d3 fcvt.d.wu fa5,s2 - c0031b12: 441d li s0,7 - c0031b14: e20787d3 fmv.x.d a5,fa5 + c0031cde: d21907d3 fcvt.d.wu fa5,s2 + c0031ce2: 441d li s0,7 + c0031ce4: e20787d3 fmv.x.d a5,fa5 js_array_iterator_next(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0031b18: b8be fsd fa5,112(sp) - c0031b1a: 2781 sext.w a5,a5 - c0031b1c: bf6d j c0031ad6 + c0031ce8: b8be fsd fa5,112(sp) + c0031cea: 2781 sext.w a5,a5 + c0031cec: bf6d j c0031ca6 -00000000c0031b1e : +00000000c0031cee : js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37105 -{ - c0031b1e: 7151 addi sp,sp,-240 - c0031b20: f95a sd s6,176(sp) - c0031b22: f586 sd ra,232(sp) - c0031b24: f1a2 sd s0,224(sp) - c0031b26: eda6 sd s1,216(sp) - c0031b28: e9ca sd s2,208(sp) - c0031b2a: e5ce sd s3,200(sp) - c0031b2c: e1d2 sd s4,192(sp) - c0031b2e: fd56 sd s5,184(sp) - c0031b30: e032 sd a2,0(sp) - c0031b32: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37113 +{ + c0031cee: 7151 addi sp,sp,-240 + c0031cf0: f95a sd s6,176(sp) + c0031cf2: f586 sd ra,232(sp) + c0031cf4: f1a2 sd s0,224(sp) + c0031cf6: eda6 sd s1,216(sp) + c0031cf8: e9ca sd s2,208(sp) + c0031cfa: e5ce sd s3,200(sp) + c0031cfc: e1d2 sd s4,192(sp) + c0031cfe: fd56 sd s5,184(sp) + c0031d00: e032 sd a2,0(sp) + c0031d02: e436 sd a3,8(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0031b34: 00068b1b sext.w s6,a3 + c0031d04: 00068b1b sext.w s6,a3 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37117 if (!JS_IsObject(desc)) { - c0031b38: 577d li a4,-1 - c0031b3a: 02eb0063 beq s6,a4,c0031b5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37110 + c0031d08: 577d li a4,-1 + c0031d0a: 02eb0063 beq s6,a4,c0031d2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37118 JS_ThrowTypeErrorNotAnObject(ctx); - c0031b3e: e3be10ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37111 + c0031d0e: d59e10ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37119 return -1; - c0031b42: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37180 -} - c0031b44: 70ae ld ra,232(sp) - c0031b46: 740e ld s0,224(sp) - c0031b48: 64ee ld s1,216(sp) - c0031b4a: 694e ld s2,208(sp) - c0031b4c: 69ae ld s3,200(sp) - c0031b4e: 6a0e ld s4,192(sp) - c0031b50: 7aea ld s5,184(sp) - c0031b52: 855a mv a0,s6 - c0031b54: 7b4a ld s6,176(sp) - c0031b56: 616d addi sp,sp,240 - c0031b58: 8082 ret - c0031b5a: 87b6 mv a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37114 + c0031d12: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37188 +} + c0031d14: 70ae ld ra,232(sp) + c0031d16: 740e ld s0,224(sp) + c0031d18: 64ee ld s1,216(sp) + c0031d1a: 694e ld s2,208(sp) + c0031d1c: 69ae ld s3,200(sp) + c0031d1e: 6a0e ld s4,192(sp) + c0031d20: 7aea ld s5,184(sp) + c0031d22: 855a mv a0,s6 + c0031d24: 7b4a ld s6,176(sp) + c0031d26: 616d addi sp,sp,240 + c0031d28: 8082 ret + c0031d2a: 87b6 mv a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37122 val = JS_UNDEFINED; - c0031b5c: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37117 + c0031d2c: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37125 if (JS_HasProperty(ctx, desc, JS_ATOM_configurable)) { - c0031b5e: 03e00693 li a3,62 - c0031b62: 85b2 mv a1,a2 - c0031b64: 863e mv a2,a5 - c0031b66: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37114 + c0031d2e: 03e00693 li a3,62 + c0031d32: 85b2 mv a1,a2 + c0031d34: 863e mv a2,a5 + c0031d36: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37122 val = JS_UNDEFINED; - c0031b68: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37115 + c0031d38: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37123 getter = JS_UNDEFINED; - c0031b6a: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37116 + c0031d3a: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37124 setter = JS_UNDEFINED; - c0031b6c: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37117 + c0031d3c: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37125 if (JS_HasProperty(ctx, desc, JS_ATOM_configurable)) { - c0031b6e: e75fe0ef jal ra,c00309e2 - c0031b72: 842a mv s0,a0 - c0031b74: c125 beqz a0,c0031bd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37118 + c0031d3e: e75fe0ef jal ra,c0030bb2 + c0031d42: 842a mv s0,a0 + c0031d44: c125 beqz a0,c0031da4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37126 JSValue prop = JS_GetProperty(ctx, desc, JS_ATOM_configurable); - c0031b76: 6702 ld a4,0(sp) - c0031b78: 67a2 ld a5,8(sp) + c0031d46: 6702 ld a4,0(sp) + c0031d48: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0031b7a: 4801 li a6,0 - c0031b7c: 85ba mv a1,a4 - c0031b7e: 863e mv a2,a5 - c0031b80: 03e00693 li a3,62 - c0031b84: 8526 mv a0,s1 - c0031b86: f13a sd a4,160(sp) - c0031b88: f53e sd a5,168(sp) - c0031b8a: cb9df0ef jal ra,c0011842 - c0031b8e: e92a sd a0,144(sp) - c0031b90: ed2e sd a1,152(sp) + c0031d4a: 4801 li a6,0 + c0031d4c: 85ba mv a1,a4 + c0031d4e: 863e mv a2,a5 + c0031d50: 03e00693 li a3,62 + c0031d54: 8526 mv a0,s1 + c0031d56: f13a sd a4,160(sp) + c0031d58: f53e sd a5,168(sp) + c0031d5a: bd7df0ef jal ra,c0011930 + c0031d5e: e92a sd a0,144(sp) + c0031d60: ed2e sd a1,152(sp) js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37119 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37127 if (JS_IsException(prop)) - c0031b92: 0005871b sext.w a4,a1 - c0031b96: 4799 li a5,6 + c0031d62: 0005871b sext.w a4,a1 + c0031d66: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031b98: 862e mv a2,a1 + c0031d68: 862e mv a2,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37119 - c0031b9a: 02f71563 bne a4,a5,c0031bc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37127 + c0031d6a: 02f71563 bne a4,a5,c0031d94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37124 setter = JS_UNDEFINED; - c0031b9e: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37115 + c0031d6e: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37123 getter = JS_UNDEFINED; - c0031ba0: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37114 + c0031d70: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37122 val = JS_UNDEFINED; - c0031ba2: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37176 + c0031d72: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37184 JS_FreeValue(ctx, val); - c0031ba4: 65c2 ld a1,16(sp) - c0031ba6: 8652 mv a2,s4 - c0031ba8: 8526 mv a0,s1 - c0031baa: f8fd50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37177 + c0031d74: 65c2 ld a1,16(sp) + c0031d76: 8652 mv a2,s4 + c0031d78: 8526 mv a0,s1 + c0031d7a: eadd50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37185 JS_FreeValue(ctx, getter); - c0031bae: 7582 ld a1,32(sp) - c0031bb0: 864e mv a2,s3 - c0031bb2: 8526 mv a0,s1 - c0031bb4: f85d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37178 + c0031d7e: 7582 ld a1,32(sp) + c0031d80: 864e mv a2,s3 + c0031d82: 8526 mv a0,s1 + c0031d84: ea3d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37186 JS_FreeValue(ctx, setter); - c0031bb8: 75c2 ld a1,48(sp) - c0031bba: 864a mv a2,s2 - c0031bbc: 8526 mv a0,s1 - c0031bbe: f7bd50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37179 + c0031d88: 75c2 ld a1,48(sp) + c0031d8a: 864a mv a2,s2 + c0031d8c: 8526 mv a0,s1 + c0031d8e: e99d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37187 return -1; - c0031bc2: b749 j c0031b44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37122 + c0031d92: b749 j c0031d14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37130 if (JS_ToBoolFree(ctx, prop)) - c0031bc4: 85aa mv a1,a0 - c0031bc6: 8526 mv a0,s1 - c0031bc8: a9cd60ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37123 + c0031d94: 85aa mv a1,a0 + c0031d96: 8526 mv a0,s1 + c0031d98: 9bad60ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37131 flags |= JS_PROP_CONFIGURABLE; - c0031bcc: 00a03433 snez s0,a0 - c0031bd0: 10040413 addi s0,s0,256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37125 + c0031d9c: 00a03433 snez s0,a0 + c0031da0: 10040413 addi s0,s0,256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37133 if (JS_HasProperty(ctx, desc, JS_ATOM_writable)) { - c0031bd4: 6582 ld a1,0(sp) - c0031bd6: 6622 ld a2,8(sp) - c0031bd8: 03f00693 li a3,63 - c0031bdc: 8526 mv a0,s1 - c0031bde: e05fe0ef jal ra,c00309e2 - c0031be2: cd0d beqz a0,c0031c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37126 + c0031da4: 6582 ld a1,0(sp) + c0031da6: 6622 ld a2,8(sp) + c0031da8: 03f00693 li a3,63 + c0031dac: 8526 mv a0,s1 + c0031dae: e05fe0ef jal ra,c0030bb2 + c0031db2: cd0d beqz a0,c0031dec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37134 JSValue prop = JS_GetProperty(ctx, desc, JS_ATOM_writable); - c0031be4: 6702 ld a4,0(sp) - c0031be6: 67a2 ld a5,8(sp) + c0031db4: 6702 ld a4,0(sp) + c0031db6: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031be8: 4801 li a6,0 - c0031bea: 85ba mv a1,a4 - c0031bec: 863e mv a2,a5 - c0031bee: 03f00693 li a3,63 - c0031bf2: 8526 mv a0,s1 - c0031bf4: f13a sd a4,160(sp) - c0031bf6: f53e sd a5,168(sp) - c0031bf8: c4bdf0ef jal ra,c0011842 - c0031bfc: e92a sd a0,144(sp) - c0031bfe: ed2e sd a1,152(sp) + c0031db8: 4801 li a6,0 + c0031dba: 85ba mv a1,a4 + c0031dbc: 863e mv a2,a5 + c0031dbe: 03f00693 li a3,63 + c0031dc2: 8526 mv a0,s1 + c0031dc4: f13a sd a4,160(sp) + c0031dc6: f53e sd a5,168(sp) + c0031dc8: b69df0ef jal ra,c0011930 + c0031dcc: e92a sd a0,144(sp) + c0031dce: ed2e sd a1,152(sp) js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37135 if (JS_IsException(prop)) - c0031c00: 0005871b sext.w a4,a1 - c0031c04: 4799 li a5,6 + c0031dd0: 0005871b sext.w a4,a1 + c0031dd4: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031c06: 862e mv a2,a1 + c0031dd6: 862e mv a2,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37127 - c0031c08: f8f70be3 beq a4,a5,c0031b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37135 + c0031dd8: f8f70be3 beq a4,a5,c0031d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37138 if (JS_ToBoolFree(ctx, prop)) - c0031c0c: 85aa mv a1,a0 - c0031c0e: 8526 mv a0,s1 - c0031c10: a54d60ef jal ra,c0007e64 - c0031c14: e949 bnez a0,c0031ca6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37129 + c0031ddc: 85aa mv a1,a0 + c0031dde: 8526 mv a0,s1 + c0031de0: 972d60ef jal ra,c0007f52 + c0031de4: e949 bnez a0,c0031e76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37137 flags |= JS_PROP_HAS_WRITABLE; - c0031c16: 20046413 ori s0,s0,512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37131 + c0031de6: 20046413 ori s0,s0,512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37139 flags |= JS_PROP_WRITABLE; - c0031c1a: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37133 + c0031dea: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37141 if (JS_HasProperty(ctx, desc, JS_ATOM_enumerable)) { - c0031c1c: 6582 ld a1,0(sp) - c0031c1e: 6622 ld a2,8(sp) - c0031c20: 04000693 li a3,64 - c0031c24: 8526 mv a0,s1 - c0031c26: dbdfe0ef jal ra,c00309e2 - c0031c2a: cd0d beqz a0,c0031c64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37134 + c0031dec: 6582 ld a1,0(sp) + c0031dee: 6622 ld a2,8(sp) + c0031df0: 04000693 li a3,64 + c0031df4: 8526 mv a0,s1 + c0031df6: dbdfe0ef jal ra,c0030bb2 + c0031dfa: cd0d beqz a0,c0031e34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37142 JSValue prop = JS_GetProperty(ctx, desc, JS_ATOM_enumerable); - c0031c2c: 6702 ld a4,0(sp) - c0031c2e: 67a2 ld a5,8(sp) + c0031dfc: 6702 ld a4,0(sp) + c0031dfe: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031c30: 4801 li a6,0 - c0031c32: 85ba mv a1,a4 - c0031c34: 863e mv a2,a5 - c0031c36: 04000693 li a3,64 - c0031c3a: 8526 mv a0,s1 - c0031c3c: f13a sd a4,160(sp) - c0031c3e: f53e sd a5,168(sp) - c0031c40: c03df0ef jal ra,c0011842 - c0031c44: e92a sd a0,144(sp) - c0031c46: ed2e sd a1,152(sp) + c0031e00: 4801 li a6,0 + c0031e02: 85ba mv a1,a4 + c0031e04: 863e mv a2,a5 + c0031e06: 04000693 li a3,64 + c0031e0a: 8526 mv a0,s1 + c0031e0c: f13a sd a4,160(sp) + c0031e0e: f53e sd a5,168(sp) + c0031e10: b21df0ef jal ra,c0011930 + c0031e14: e92a sd a0,144(sp) + c0031e16: ed2e sd a1,152(sp) js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37143 if (JS_IsException(prop)) - c0031c48: 0005871b sext.w a4,a1 - c0031c4c: 4799 li a5,6 + c0031e18: 0005871b sext.w a4,a1 + c0031e1c: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031c4e: 862e mv a2,a1 + c0031e1e: 862e mv a2,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37135 - c0031c50: f4f707e3 beq a4,a5,c0031b9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37143 + c0031e20: f4f707e3 beq a4,a5,c0031d6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37146 if (JS_ToBoolFree(ctx, prop)) - c0031c54: 85aa mv a1,a0 - c0031c56: 8526 mv a0,s1 - c0031c58: a0cd60ef jal ra,c0007e64 - c0031c5c: e921 bnez a0,c0031cac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37137 + c0031e24: 85aa mv a1,a0 + c0031e26: 8526 mv a0,s1 + c0031e28: 92ad60ef jal ra,c0007f52 + c0031e2c: e921 bnez a0,c0031e7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37145 flags |= JS_PROP_HAS_ENUMERABLE; - c0031c5e: 40046413 ori s0,s0,1024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37139 + c0031e2e: 40046413 ori s0,s0,1024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37147 flags |= JS_PROP_ENUMERABLE; - c0031c62: 2401 sext.w s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37141 + c0031e32: 2401 sext.w s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37149 if (JS_HasProperty(ctx, desc, JS_ATOM_value)) { - c0031c64: 6582 ld a1,0(sp) - c0031c66: 6622 ld a2,8(sp) - c0031c68: 04100693 li a3,65 - c0031c6c: 8526 mv a0,s1 - c0031c6e: d75fe0ef jal ra,c00309e2 - c0031c72: c121 beqz a0,c0031cb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37142 + c0031e34: 6582 ld a1,0(sp) + c0031e36: 6622 ld a2,8(sp) + c0031e38: 04100693 li a3,65 + c0031e3c: 8526 mv a0,s1 + c0031e3e: d75fe0ef jal ra,c0030bb2 + c0031e42: c121 beqz a0,c0031e82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37150 flags |= JS_PROP_HAS_VALUE; - c0031c74: 6702 ld a4,0(sp) - c0031c76: 67a2 ld a5,8(sp) - c0031c78: 6509 lui a0,0x2 - c0031c7a: 8c49 or s0,s0,a0 + c0031e44: 6702 ld a4,0(sp) + c0031e46: 67a2 ld a5,8(sp) + c0031e48: 6509 lui a0,0x2 + c0031e4a: 8c49 or s0,s0,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031c7c: 85ba mv a1,a4 - c0031c7e: 863e mv a2,a5 - c0031c80: 4801 li a6,0 - c0031c82: 04100693 li a3,65 - c0031c86: 8526 mv a0,s1 - c0031c88: f13a sd a4,160(sp) - c0031c8a: f53e sd a5,168(sp) - c0031c8c: bb7df0ef jal ra,c0011842 - c0031c90: e82a sd a0,16(sp) + c0031e4c: 85ba mv a1,a4 + c0031e4e: 863e mv a2,a5 + c0031e50: 4801 li a6,0 + c0031e52: 04100693 li a3,65 + c0031e56: 8526 mv a0,s1 + c0031e58: f13a sd a4,160(sp) + c0031e5a: f53e sd a5,168(sp) + c0031e5c: ad5df0ef jal ra,c0011930 + c0031e60: e82a sd a0,16(sp) js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37152 if (JS_IsException(val)) - c0031c92: 0005871b sext.w a4,a1 - c0031c96: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37142 + c0031e62: 0005871b sext.w a4,a1 + c0031e66: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37150 flags |= JS_PROP_HAS_VALUE; - c0031c98: 2401 sext.w s0,s0 + c0031e68: 2401 sext.w s0,s0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031c9a: 8a2e mv s4,a1 + c0031e6a: 8a2e mv s4,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37152 if (JS_IsException(val)) - c0031c9c: 00f71c63 bne a4,a5,c0031cb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37116 + c0031e6c: 00f71c63 bne a4,a5,c0031e84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37124 setter = JS_UNDEFINED; - c0031ca0: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37115 + c0031e70: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37123 getter = JS_UNDEFINED; - c0031ca2: 498d li s3,3 - c0031ca4: b701 j c0031ba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37131 - flags |= JS_PROP_WRITABLE; - c0031ca6: 20246413 ori s0,s0,514 - c0031caa: bf85 j c0031c1a + c0031e72: 498d li s3,3 + c0031e74: b701 j c0031d74 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37139 + flags |= JS_PROP_WRITABLE; + c0031e76: 20246413 ori s0,s0,514 + c0031e7a: bf85 j c0031dea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37147 flags |= JS_PROP_ENUMERABLE; - c0031cac: 40446413 ori s0,s0,1028 - c0031cb0: bf4d j c0031c62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37114 + c0031e7c: 40446413 ori s0,s0,1028 + c0031e80: bf4d j c0031e32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37122 val = JS_UNDEFINED; - c0031cb2: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37147 + c0031e82: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37155 if (JS_HasProperty(ctx, desc, JS_ATOM_get)) { - c0031cb4: 6582 ld a1,0(sp) - c0031cb6: 6622 ld a2,8(sp) - c0031cb8: 04200693 li a3,66 - c0031cbc: 8526 mv a0,s1 - c0031cbe: d25fe0ef jal ra,c00309e2 - c0031cc2: c939 beqz a0,c0031d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37148 + c0031e84: 6582 ld a1,0(sp) + c0031e86: 6622 ld a2,8(sp) + c0031e88: 04200693 li a3,66 + c0031e8c: 8526 mv a0,s1 + c0031e8e: d25fe0ef jal ra,c0030bb2 + c0031e92: c939 beqz a0,c0031ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37156 flags |= JS_PROP_HAS_GET; - c0031cc4: 6702 ld a4,0(sp) - c0031cc6: 67a2 ld a5,8(sp) - c0031cc8: 6505 lui a0,0x1 - c0031cca: 80050513 addi a0,a0,-2048 # 800 <__clzdi2-0xbffff800> - c0031cce: 8c49 or s0,s0,a0 + c0031e94: 6702 ld a4,0(sp) + c0031e96: 67a2 ld a5,8(sp) + c0031e98: 6505 lui a0,0x1 + c0031e9a: 80050513 addi a0,a0,-2048 # 800 <__clzdi2-0xbffff800> + c0031e9e: 8c49 or s0,s0,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031cd0: 85ba mv a1,a4 - c0031cd2: 863e mv a2,a5 - c0031cd4: 4801 li a6,0 - c0031cd6: 04200693 li a3,66 - c0031cda: 8526 mv a0,s1 - c0031cdc: f13a sd a4,160(sp) - c0031cde: f53e sd a5,168(sp) - c0031ce0: b63df0ef jal ra,c0011842 - c0031ce4: f02a sd a0,32(sp) + c0031ea0: 85ba mv a1,a4 + c0031ea2: 863e mv a2,a5 + c0031ea4: 4801 li a6,0 + c0031ea6: 04200693 li a3,66 + c0031eaa: 8526 mv a0,s1 + c0031eac: f13a sd a4,160(sp) + c0031eae: f53e sd a5,168(sp) + c0031eb0: a81df0ef jal ra,c0011930 + c0031eb4: f02a sd a0,32(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0031ce6: 0005879b sext.w a5,a1 + c0031eb6: 0005879b sext.w a5,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37158 if (JS_IsException(getter) || - c0031cea: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37148 + c0031eba: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37156 flags |= JS_PROP_HAS_GET; - c0031cec: 2401 sext.w s0,s0 + c0031ebc: 2401 sext.w s0,s0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0031cee: 89ae mv s3,a1 + c0031ebe: 89ae mv s3,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37158 if (JS_IsException(getter) || - c0031cf0: 00e78b63 beq a5,a4,c0031d06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37150 (discriminator 1) - c0031cf4: 470d li a4,3 - c0031cf6: 02e78263 beq a5,a4,c0031d1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37151 + c0031ec0: 00e78b63 beq a5,a4,c0031ed6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37158 (discriminator 1) + c0031ec4: 470d li a4,3 + c0031ec6: 02e78263 beq a5,a4,c0031eea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37159 !(JS_IsUndefined(getter) || JS_IsFunction(ctx, getter))) { - c0031cfa: 85aa mv a1,a0 - c0031cfc: 864e mv a2,s3 - c0031cfe: 8526 mv a0,s1 - c0031d00: 9ddd80ef jal ra,c000a6dc - c0031d04: e919 bnez a0,c0031d1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37152 + c0031eca: 85aa mv a1,a0 + c0031ecc: 864e mv a2,s3 + c0031ece: 8526 mv a0,s1 + c0031ed0: 8fbd80ef jal ra,c000a7ca + c0031ed4: e919 bnez a0,c0031eea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37160 JS_ThrowTypeError(ctx, "invalid getter"); - c0031d06: 0002e597 auipc a1,0x2e - c0031d0a: 6d258593 addi a1,a1,1746 # c00603d8 - c0031d0e: 8526 mv a0,s1 - c0031d10: ee6e10ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37116 + c0031ed6: 0002e597 auipc a1,0x2e + c0031eda: 76258593 addi a1,a1,1890 # c0060638 + c0031ede: 8526 mv a0,s1 + c0031ee0: e04e10ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37124 setter = JS_UNDEFINED; - c0031d14: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37153 + c0031ee4: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37161 goto fail; - c0031d16: b579 j c0031ba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37115 + c0031ee6: b579 j c0031d74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37123 getter = JS_UNDEFINED; - c0031d18: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37156 + c0031ee8: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37164 if (JS_HasProperty(ctx, desc, JS_ATOM_set)) { - c0031d1a: 6582 ld a1,0(sp) - c0031d1c: 6622 ld a2,8(sp) - c0031d1e: 04300693 li a3,67 - c0031d22: 8526 mv a0,s1 - c0031d24: cbffe0ef jal ra,c00309e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37116 + c0031eea: 6582 ld a1,0(sp) + c0031eec: 6622 ld a2,8(sp) + c0031eee: 04300693 li a3,67 + c0031ef2: 8526 mv a0,s1 + c0031ef4: cbffe0ef jal ra,c0030bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37124 setter = JS_UNDEFINED; - c0031d28: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37156 + c0031ef8: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37164 if (JS_HasProperty(ctx, desc, JS_ATOM_set)) { - c0031d2a: c931 beqz a0,c0031d7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37157 + c0031efa: c931 beqz a0,c0031f4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37165 flags |= JS_PROP_HAS_SET; - c0031d2c: 6702 ld a4,0(sp) - c0031d2e: 67a2 ld a5,8(sp) - c0031d30: 6505 lui a0,0x1 - c0031d32: 8c49 or s0,s0,a0 + c0031efc: 6702 ld a4,0(sp) + c0031efe: 67a2 ld a5,8(sp) + c0031f00: 6505 lui a0,0x1 + c0031f02: 8c49 or s0,s0,a0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0031d34: 85ba mv a1,a4 - c0031d36: 863e mv a2,a5 - c0031d38: 4801 li a6,0 - c0031d3a: 04300693 li a3,67 - c0031d3e: 8526 mv a0,s1 - c0031d40: e93a sd a4,144(sp) - c0031d42: ed3e sd a5,152(sp) - c0031d44: affdf0ef jal ra,c0011842 - c0031d48: f12a sd a0,160(sp) - c0031d4a: f52e sd a1,168(sp) - c0031d4c: f82a sd a0,48(sp) + c0031f04: 85ba mv a1,a4 + c0031f06: 863e mv a2,a5 + c0031f08: 4801 li a6,0 + c0031f0a: 04300693 li a3,67 + c0031f0e: 8526 mv a0,s1 + c0031f10: e93a sd a4,144(sp) + c0031f12: ed3e sd a5,152(sp) + c0031f14: a1ddf0ef jal ra,c0011930 + c0031f18: f12a sd a0,160(sp) + c0031f1a: f52e sd a1,168(sp) + c0031f1c: f82a sd a0,48(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0031d4e: 0005879b sext.w a5,a1 + c0031f1e: 0005879b sext.w a5,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37167 if (JS_IsException(setter) || - c0031d52: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37157 + c0031f22: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37165 flags |= JS_PROP_HAS_SET; - c0031d54: 2401 sext.w s0,s0 + c0031f24: 2401 sext.w s0,s0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0031d56: 892e mv s2,a1 + c0031f26: 892e mv s2,a1 js_obj_to_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37167 if (JS_IsException(setter) || - c0031d58: 00e78b63 beq a5,a4,c0031d6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37159 (discriminator 1) - c0031d5c: 470d li a4,3 - c0031d5e: 02e78063 beq a5,a4,c0031d7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37160 + c0031f28: 00e78b63 beq a5,a4,c0031f3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37167 (discriminator 1) + c0031f2c: 470d li a4,3 + c0031f2e: 02e78063 beq a5,a4,c0031f4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37168 !(JS_IsUndefined(setter) || JS_IsFunction(ctx, setter))) { - c0031d62: 85aa mv a1,a0 - c0031d64: 864a mv a2,s2 - c0031d66: 8526 mv a0,s1 - c0031d68: 975d80ef jal ra,c000a6dc - c0031d6c: e909 bnez a0,c0031d7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37161 + c0031f32: 85aa mv a1,a0 + c0031f34: 864a mv a2,s2 + c0031f36: 8526 mv a0,s1 + c0031f38: 893d80ef jal ra,c000a7ca + c0031f3c: e909 bnez a0,c0031f4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37169 JS_ThrowTypeError(ctx, "invalid setter"); - c0031d6e: 0002e597 auipc a1,0x2e - c0031d72: 67a58593 addi a1,a1,1658 # c00603e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37167 + c0031f3e: 0002e597 auipc a1,0x2e + c0031f42: 70a58593 addi a1,a1,1802 # c0060648 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37175 JS_ThrowTypeError(ctx, "cannot have setter/getter and value or writable"); - c0031d76: 8526 mv a0,s1 - c0031d78: e7ee10ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37168 + c0031f46: 8526 mv a0,s1 + c0031f48: d9ce10ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37176 goto fail; - c0031d7c: b525 j c0031ba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37165 + c0031f4c: b525 j c0031d74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37173 if ((flags & (JS_PROP_HAS_SET | JS_PROP_HAS_GET)) && - c0031d7e: 6789 lui a5,0x2 - c0031d80: 80078713 addi a4,a5,-2048 # 1800 <__clzdi2-0xbfffe800> - c0031d84: 8f61 and a4,a4,s0 - c0031d86: 2701 sext.w a4,a4 - c0031d88: cb11 beqz a4,c0031d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37166 (discriminator 1) + c0031f4e: 6789 lui a5,0x2 + c0031f50: 80078713 addi a4,a5,-2048 # 1800 <__clzdi2-0xbfffe800> + c0031f54: 8f61 and a4,a4,s0 + c0031f56: 2701 sext.w a4,a4 + c0031f58: cb11 beqz a4,c0031f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37174 (discriminator 1) (flags & (JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE))) { - c0031d8a: 20078793 addi a5,a5,512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37165 (discriminator 1) + c0031f5a: 20078793 addi a5,a5,512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37173 (discriminator 1) if ((flags & (JS_PROP_HAS_SET | JS_PROP_HAS_GET)) && - c0031d8e: 8fe1 and a5,a5,s0 - c0031d90: c791 beqz a5,c0031d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37167 + c0031f5e: 8fe1 and a5,a5,s0 + c0031f60: c791 beqz a5,c0031f6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37175 JS_ThrowTypeError(ctx, "cannot have setter/getter and value or writable"); - c0031d92: 0002e597 auipc a1,0x2e - c0031d96: 66658593 addi a1,a1,1638 # c00603f8 - c0031d9a: bff1 j c0031d76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37171 + c0031f62: 0002e597 auipc a1,0x2e + c0031f66: 6f658593 addi a1,a1,1782 # c0060658 + c0031f6a: bff1 j c0031f46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37179 d->value = val; - c0031d9c: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37170 + c0031f6c: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37178 d->flags = flags; - c0031d9e: 008aa023 sw s0,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37171 + c0031f6e: 008aa023 sw s0,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37179 d->value = val; - c0031da2: 014ab823 sd s4,16(s5) - c0031da6: 00fab423 sd a5,8(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37172 + c0031f72: 014ab823 sd s4,16(s5) + c0031f76: 00fab423 sd a5,8(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37180 d->getter = getter; - c0031daa: 7782 ld a5,32(sp) - c0031dac: 033ab023 sd s3,32(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37173 + c0031f7a: 7782 ld a5,32(sp) + c0031f7c: 033ab023 sd s3,32(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37181 d->setter = setter; - c0031db0: 032ab823 sd s2,48(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37172 + c0031f80: 032ab823 sd s2,48(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37180 d->getter = getter; - c0031db4: 00fabc23 sd a5,24(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37173 + c0031f84: 00fabc23 sd a5,24(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37181 d->setter = setter; - c0031db8: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37174 + c0031f88: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37182 return 0; - c0031dba: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37173 + c0031f8a: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37181 d->setter = setter; - c0031dbc: 02fab423 sd a5,40(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37174 + c0031f8c: 02fab423 sd a5,40(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37182 return 0; - c0031dc0: b351 j c0031b44 + c0031f90: b351 j c0031d14 -00000000c0031dc2 : +00000000c0031f92 : JS_DefinePropertyDesc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37185 -{ - c0031dc2: 7135 addi sp,sp,-160 - c0031dc4: e14a sd s2,128(sp) - c0031dc6: f82e sd a1,48(sp) - c0031dc8: fc32 sd a2,56(sp) - c0031dca: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37193 +{ + c0031f92: 7135 addi sp,sp,-160 + c0031f94: e14a sd s2,128(sp) + c0031f96: f82e sd a1,48(sp) + c0031f98: fc32 sd a2,56(sp) + c0031f9a: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37197 if (js_obj_to_desc(ctx, &d, desc) < 0) - c0031dcc: 863a mv a2,a4 - c0031dce: 86be mv a3,a5 - c0031dd0: 00ac addi a1,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37185 -{ - c0031dd2: e922 sd s0,144(sp) - c0031dd4: e526 sd s1,136(sp) - c0031dd6: ed06 sd ra,152(sp) - c0031dd8: 84aa mv s1,a0 - c0031dda: 8442 mv s0,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37189 + c0031f9c: 863a mv a2,a4 + c0031f9e: 86be mv a3,a5 + c0031fa0: 00ac addi a1,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37193 +{ + c0031fa2: e922 sd s0,144(sp) + c0031fa4: e526 sd s1,136(sp) + c0031fa6: ed06 sd ra,152(sp) + c0031fa8: 84aa mv s1,a0 + c0031faa: 8442 mv s0,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37197 if (js_obj_to_desc(ctx, &d, desc) < 0) - c0031ddc: d43ff0ef jal ra,c0031b1e - c0031de0: 04054063 bltz a0,c0031e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37192 + c0031fac: d43ff0ef jal ra,c0031cee + c0031fb0: 04054063 bltz a0,c0031ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37200 ret = JS_DefineProperty(ctx, obj, prop, - c0031de4: 77c6 ld a5,112(sp) - c0031de6: 4826 lw a6,72(sp) - c0031de8: 75c2 ld a1,48(sp) - c0031dea: e03e sd a5,0(sp) - c0031dec: 77e6 ld a5,120(sp) - c0031dee: 01046433 or s0,s0,a6 - c0031df2: 78a6 ld a7,104(sp) - c0031df4: e43e sd a5,8(sp) - c0031df6: 7806 ld a6,96(sp) - c0031df8: 6746 ld a4,80(sp) - c0031dfa: 67e6 ld a5,88(sp) - c0031dfc: 7662 ld a2,56(sp) - c0031dfe: e822 sd s0,16(sp) - c0031e00: 86ca mv a3,s2 - c0031e02: 8526 mv a0,s1 - c0031e04: adfe00ef jal ra,c00128e2 - c0031e08: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37194 + c0031fb4: 77c6 ld a5,112(sp) + c0031fb6: 4826 lw a6,72(sp) + c0031fb8: 75c2 ld a1,48(sp) + c0031fba: e03e sd a5,0(sp) + c0031fbc: 77e6 ld a5,120(sp) + c0031fbe: 01046433 or s0,s0,a6 + c0031fc2: 78a6 ld a7,104(sp) + c0031fc4: e43e sd a5,8(sp) + c0031fc6: 7806 ld a6,96(sp) + c0031fc8: 6746 ld a4,80(sp) + c0031fca: 67e6 ld a5,88(sp) + c0031fcc: 7662 ld a2,56(sp) + c0031fce: e822 sd s0,16(sp) + c0031fd0: 86ca mv a3,s2 + c0031fd2: 8526 mv a0,s1 + c0031fd4: 9fde00ef jal ra,c00129d0 + c0031fd8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37202 js_free_desc(ctx, &d); - c0031e0a: 00ac addi a1,sp,72 - c0031e0c: 8526 mv a0,s1 - c0031e0e: 826d60ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37196 -} - c0031e12: 60ea ld ra,152(sp) - c0031e14: 8522 mv a0,s0 - c0031e16: 644a ld s0,144(sp) - c0031e18: 64aa ld s1,136(sp) - c0031e1a: 690a ld s2,128(sp) - c0031e1c: 610d addi sp,sp,160 - c0031e1e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37190 + c0031fda: 00ac addi a1,sp,72 + c0031fdc: 8526 mv a0,s1 + c0031fde: f45d50ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37204 +} + c0031fe2: 60ea ld ra,152(sp) + c0031fe4: 8522 mv a0,s0 + c0031fe6: 644a ld s0,144(sp) + c0031fe8: 64aa ld s1,136(sp) + c0031fea: 690a ld s2,128(sp) + c0031fec: 610d addi sp,sp,160 + c0031fee: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37198 return -1; - c0031e20: 547d li s0,-1 - c0031e22: bfc5 j c0031e12 + c0031ff0: 547d li s0,-1 + c0031ff2: bfc5 j c0031fe2 -00000000c0031e24 : +00000000c0031ff4 : js_object_defineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37310 -{ - c0031e24: 7175 addi sp,sp,-144 - c0031e26: f8ca sd s2,112(sp) - c0031e28: e506 sd ra,136(sp) - c0031e2a: e122 sd s0,128(sp) - c0031e2c: fca6 sd s1,120(sp) - c0031e2e: f4ce sd s3,104(sp) - c0031e30: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37318 +{ + c0031ff4: 7175 addi sp,sp,-144 + c0031ff6: f8ca sd s2,112(sp) + c0031ff8: e506 sd ra,136(sp) + c0031ffa: e122 sd s0,128(sp) + c0031ffc: fca6 sd s1,120(sp) + c0031ffe: f4ce sd s3,104(sp) + c0032000: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37323 obj = argv[0]; - c0031e32: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37317 + c0032002: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37325 desc = argv[2]; - c0031e34: 7314 ld a3,32(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37316 + c0032004: 7314 ld a3,32(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37324 prop = argv[1]; - c0031e36: 6b0c ld a1,16(a4) - c0031e38: 6f10 ld a2,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37315 + c0032006: 6b0c ld a1,16(a4) + c0032008: 6f10 ld a2,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37323 obj = argv[0]; - c0031e3a: e83e sd a5,16(sp) - c0031e3c: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37317 + c003200a: e83e sd a5,16(sp) + c003200c: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37325 desc = argv[2]; - c0031e3e: 7718 ld a4,40(a4) - c0031e40: f836 sd a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37315 + c003200e: 7718 ld a4,40(a4) + c0032010: f836 sd a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37323 obj = argv[0]; - c0031e42: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37317 + c0032012: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37325 desc = argv[2]; - c0031e44: fc3a sd a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37319 + c0032014: fc3a sd a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37327 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0031e46: 2781 sext.w a5,a5 - c0031e48: 577d li a4,-1 - c0031e4a: 00e78a63 beq a5,a4,c0031e5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37336 + c0032016: 2781 sext.w a5,a5 + c0032018: 577d li a4,-1 + c003201a: 00e78a63 beq a5,a4,c003202e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 } - c0031e4e: 640a ld s0,128(sp) - c0031e50: 60aa ld ra,136(sp) - c0031e52: 74e6 ld s1,120(sp) - c0031e54: 7946 ld s2,112(sp) - c0031e56: 79a6 ld s3,104(sp) - c0031e58: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37320 + c003201e: 640a ld s0,128(sp) + c0032020: 60aa ld ra,136(sp) + c0032022: 74e6 ld s1,120(sp) + c0032024: 7946 ld s2,112(sp) + c0032026: 79a6 ld s3,104(sp) + c0032028: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37328 return JS_ThrowTypeErrorNotAnObject(ctx); - c0031e5a: b1fe106f j c0013978 - c0031e5e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37321 + c003202a: a3de106f j c0013a66 + c003202e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37329 atom = JS_ValueToAtom(ctx, prop); - c0031e60: fbcef0ef jal ra,c002161c - c0031e64: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37322 + c0032030: fbcef0ef jal ra,c00217ec + c0032034: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37330 if (unlikely(atom == JS_ATOM_NULL)) - c0031e68: ec89 bnez s1,c0031e82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37323 + c0032038: ec89 bnez s1,c0032052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37331 return JS_EXCEPTION; - c0031e6a: e082 sd zero,64(sp) - c0031e6c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37336 + c003203a: e082 sd zero,64(sp) + c003203c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 } - c0031e6e: 60aa ld ra,136(sp) - c0031e70: 640a ld s0,128(sp) - c0031e72: e4be sd a5,72(sp) - c0031e74: 6506 ld a0,64(sp) - c0031e76: 65a6 ld a1,72(sp) - c0031e78: 74e6 ld s1,120(sp) - c0031e7a: 7946 ld s2,112(sp) - c0031e7c: 79a6 ld s3,104(sp) - c0031e7e: 6149 addi sp,sp,144 - c0031e80: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37327 + c003203e: 60aa ld ra,136(sp) + c0032040: 640a ld s0,128(sp) + c0032042: e4be sd a5,72(sp) + c0032044: 6506 ld a0,64(sp) + c0032046: 65a6 ld a1,72(sp) + c0032048: 74e6 ld s1,120(sp) + c003204a: 7946 ld s2,112(sp) + c003204c: 79a6 ld s3,104(sp) + c003204e: 6149 addi sp,sp,144 + c0032050: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37335 ret = JS_DefinePropertyDesc(ctx, obj, atom, desc, flags); - c0031e82: 65c2 ld a1,16(sp) - c0031e84: 7742 ld a4,48(sp) - c0031e86: 77e2 ld a5,56(sp) - c0031e88: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37326 + c0032052: 65c2 ld a1,16(sp) + c0032054: 7742 ld a4,48(sp) + c0032056: 77e2 ld a5,56(sp) + c0032058: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37334 flags |= JS_PROP_THROW; - c0031e8a: 00193813 seqz a6,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37327 + c003205a: 00193813 seqz a6,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37335 ret = JS_DefinePropertyDesc(ctx, obj, atom, desc, flags); - c0031e8e: 083a slli a6,a6,0xe - c0031e90: 86a6 mv a3,s1 - c0031e92: 854e mv a0,s3 - c0031e94: f2fff0ef jal ra,c0031dc2 - c0031e98: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37328 + c003205e: 083a slli a6,a6,0xe + c0032060: 86a6 mv a3,s1 + c0032062: 854e mv a0,s3 + c0032064: f2fff0ef jal ra,c0031f92 + c0032068: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37336 JS_FreeAtom(ctx, atom); - c0031e9a: 85a6 mv a1,s1 - c0031e9c: 854e mv a0,s3 - c0031e9e: e6ed50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37329 + c003206a: 85a6 mv a1,s1 + c003206c: 854e mv a0,s3 + c003206e: d8cd50ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37337 if (ret < 0) { - c0031ea2: fc0444e3 bltz s0,c0031e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37331 + c0032072: fc0444e3 bltz s0,c003203a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37339 } else if (magic) { - c0031ea6: 00090a63 beqz s2,c0031eba + c0032076: 00090a63 beqz s2,c003208a JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0031eaa: 00803433 snez s0,s0 - c0031eae: ca82 sw zero,84(sp) - c0031eb0: c8a2 sw s0,80(sp) - c0031eb2: 67c6 ld a5,80(sp) - c0031eb4: e0be sd a5,64(sp) - c0031eb6: 4785 li a5,1 - c0031eb8: bf5d j c0031e6e + c003207a: 00803433 snez s0,s0 + c003207e: ca82 sw zero,84(sp) + c0032080: c8a2 sw s0,80(sp) + c0032082: 67c6 ld a5,80(sp) + c0032084: e0be sd a5,64(sp) + c0032086: 4785 li a5,1 + c0032088: bf5d j c003203e js_object_defineProperty(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37336 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 } - c0031eba: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37334 + c003208a: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37342 return JS_DupValue(ctx, obj); - c0031ebc: 6542 ld a0,16(sp) - c0031ebe: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37336 + c003208c: 6542 ld a0,16(sp) + c003208e: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 } - c0031ec0: 60aa ld ra,136(sp) - c0031ec2: 74e6 ld s1,120(sp) - c0031ec4: 7946 ld s2,112(sp) - c0031ec6: 79a6 ld s3,104(sp) - c0031ec8: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37334 + c0032090: 60aa ld ra,136(sp) + c0032092: 74e6 ld s1,120(sp) + c0032094: 7946 ld s2,112(sp) + c0032096: 79a6 ld s3,104(sp) + c0032098: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37342 return JS_DupValue(ctx, obj); - c0031eca: fa4d406f j c000666e + c003209a: ec2d406f j c000675c -00000000c0031ece : +00000000c003209e : JS_GetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8073 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8081 { - c0031ece: 7159 addi sp,sp,-112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8077 + c003209e: 7159 addi sp,sp,-112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8085 if ((uint64_t)idx <= INT32_MAX) { - c0031ed0: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8073 + c00320a0: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8081 { - c0031ed4: f486 sd ra,104(sp) - c0031ed6: f0a2 sd s0,96(sp) - c0031ed8: eca6 sd s1,88(sp) - c0031eda: e02e sd a1,0(sp) - c0031edc: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8077 + c00320a4: f486 sd ra,104(sp) + c00320a6: f0a2 sd s0,96(sp) + c00320a8: eca6 sd s1,88(sp) + c00320aa: e02e sd a1,0(sp) + c00320ac: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8085 if ((uint64_t)idx <= INT32_MAX) { - c0031ede: fff7c793 not a5,a5 - c0031ee2: 00d7ef63 bltu a5,a3,c0031f00 + c00320ae: fff7c793 not a5,a5 + c00320b2: 00d7ef63 bltu a5,a3,c00320d0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0031ee6: f802 sd zero,48(sp) + c00320b6: f802 sd zero,48(sp) JS_GetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8079 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8087 return JS_GetPropertyValue(ctx, obj, JS_NewInt32(ctx, idx)); - c0031ee8: d836 sw a3,48(sp) - c0031eea: 76c2 ld a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8088 + c00320b8: d836 sw a3,48(sp) + c00320ba: 76c2 ld a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8096 } - c0031eec: 7406 ld s0,96(sp) - c0031eee: 70a6 ld ra,104(sp) - c0031ef0: 64e6 ld s1,88(sp) + c00320bc: 7406 ld s0,96(sp) + c00320be: 70a6 ld ra,104(sp) + c00320c0: 64e6 ld s1,88(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0031ef2: fc02 sd zero,56(sp) - c0031ef4: f036 sd a3,32(sp) - c0031ef6: f402 sd zero,40(sp) + c00320c2: fc02 sd zero,56(sp) + c00320c4: f036 sd a3,32(sp) + c00320c6: f402 sd zero,40(sp) JS_GetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8079 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8087 return JS_GetPropertyValue(ctx, obj, JS_NewInt32(ctx, idx)); - c0031ef8: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8088 + c00320c8: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8096 } - c0031efa: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8079 + c00320ca: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8087 return JS_GetPropertyValue(ctx, obj, JS_NewInt32(ctx, idx)); - c0031efc: daddf06f j c0011ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8081 + c00320cc: ccbdf06f j c0011d96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8089 prop = JS_NewAtomInt64(ctx, idx); - c0031f00: 85b6 mv a1,a3 - c0031f02: 84aa mv s1,a0 - c0031f04: b46e80ef jal ra,c001a24a - c0031f08: 0005041b sext.w s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8082 + c00320d0: 85b6 mv a1,a3 + c00320d2: 84aa mv s1,a0 + c00320d4: b46e80ef jal ra,c001a41a + c00320d8: 0005041b sext.w s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8090 if (prop == JS_ATOM_NULL) - c0031f0c: e819 bnez s0,c0031f22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8083 + c00320dc: e819 bnez s0,c00320f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8091 return JS_EXCEPTION; - c0031f0e: e802 sd zero,16(sp) - c0031f10: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8088 + c00320de: e802 sd zero,16(sp) + c00320e0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8096 } - c0031f12: 70a6 ld ra,104(sp) - c0031f14: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8087 + c00320e2: 70a6 ld ra,104(sp) + c00320e4: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8095 return val; - c0031f16: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8088 -} - c0031f18: 6542 ld a0,16(sp) - c0031f1a: 65e2 ld a1,24(sp) - c0031f1c: 64e6 ld s1,88(sp) - c0031f1e: 6165 addi sp,sp,112 - c0031f20: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8085 + c00320e6: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8096 +} + c00320e8: 6542 ld a0,16(sp) + c00320ea: 65e2 ld a1,24(sp) + c00320ec: 64e6 ld s1,88(sp) + c00320ee: 6165 addi sp,sp,112 + c00320f0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8093 val = JS_GetProperty(ctx, obj, prop); - c0031f22: 67a2 ld a5,8(sp) - c0031f24: 6702 ld a4,0(sp) + c00320f2: 67a2 ld a5,8(sp) + c00320f4: 6702 ld a4,0(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0031f26: 4801 li a6,0 - c0031f28: 863e mv a2,a5 - c0031f2a: 86a2 mv a3,s0 - c0031f2c: 85ba mv a1,a4 - c0031f2e: 8526 mv a0,s1 - c0031f30: fc3e sd a5,56(sp) - c0031f32: f83a sd a4,48(sp) - c0031f34: 90fdf0ef jal ra,c0011842 - c0031f38: f02a sd a0,32(sp) - c0031f3a: f42e sd a1,40(sp) + c00320f6: 4801 li a6,0 + c00320f8: 863e mv a2,a5 + c00320fa: 86a2 mv a3,s0 + c00320fc: 85ba mv a1,a4 + c00320fe: 8526 mv a0,s1 + c0032100: fc3e sd a5,56(sp) + c0032102: f83a sd a4,48(sp) + c0032104: 82ddf0ef jal ra,c0011930 + c0032108: f02a sd a0,32(sp) + c003210a: f42e sd a1,40(sp) JS_GetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8094 JS_FreeAtom(ctx, prop); - c0031f3c: 8526 mv a0,s1 - c0031f3e: 85a2 mv a1,s0 - c0031f40: dccd50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8087 + c003210c: 8526 mv a0,s1 + c003210e: 85a2 mv a1,s0 + c0032110: cead50ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8095 return val; - c0031f44: 7782 ld a5,32(sp) - c0031f46: e83e sd a5,16(sp) - c0031f48: 77a2 ld a5,40(sp) - c0031f4a: b7e1 j c0031f12 + c0032114: 7782 ld a5,32(sp) + c0032116: e83e sd a5,16(sp) + c0032118: 77a2 ld a5,40(sp) + c003211a: b7e1 j c00320e2 -00000000c0031f4c : +00000000c003211c : js_array_includes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39597 -{ - c0031f4c: 7131 addi sp,sp,-192 - c0031f4e: f922 sd s0,176(sp) - c0031f50: f526 sd s1,168(sp) - c0031f52: f14a sd s2,160(sp) - c0031f54: fd06 sd ra,184(sp) - c0031f56: 842a mv s0,a0 - c0031f58: e432 sd a2,8(sp) - c0031f5a: 8936 mv s2,a3 - c0031f5c: e02e sd a1,0(sp) - c0031f5e: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39603 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39605 +{ + c003211c: 7131 addi sp,sp,-192 + c003211e: f922 sd s0,176(sp) + c0032120: f526 sd s1,168(sp) + c0032122: f14a sd s2,160(sp) + c0032124: fd06 sd ra,184(sp) + c0032126: 842a mv s0,a0 + c0032128: e432 sd a2,8(sp) + c003212a: 8936 mv s2,a3 + c003212c: e02e sd a1,0(sp) + c003212e: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39611 obj = JS_ToObject(ctx, this_val); - c0031f60: e8cf60ef jal ra,c00285ec - c0031f64: 862a mv a2,a0 - c0031f66: 86ae mv a3,a1 - c0031f68: f82a sd a0,48(sp) - c0031f6a: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39604 + c0032130: e8cf60ef jal ra,c00287bc + c0032134: 862a mv a2,a0 + c0032136: 86ae mv a3,a1 + c0032138: f82a sd a0,48(sp) + c003213a: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39612 if (js_get_length64(ctx, &len, obj)) - c0031f6c: 8522 mv a0,s0 - c0031f6e: 082c addi a1,sp,24 - c0031f70: 8cfec0ef jal ra,c001e83e - c0031f74: ed41 bnez a0,c003200c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39608 + c003213c: 8522 mv a0,s0 + c003213e: 082c addi a1,sp,24 + c0032140: 8cfec0ef jal ra,c001ea0e + c0032144: ed41 bnez a0,c00321dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39616 if (len > 0) { - c0031f76: 6862 ld a6,24(sp) - c0031f78: 03004663 bgtz a6,c0031fa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39607 + c0032146: 6862 ld a6,24(sp) + c0032148: 03004663 bgtz a6,c0032174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39615 res = FALSE; - c0031f7c: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39636 + c003214c: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39644 JS_FreeValue(ctx, obj); - c0031f7e: 75c2 ld a1,48(sp) - c0031f80: 7662 ld a2,56(sp) - c0031f82: 8522 mv a0,s0 - c0031f84: bb5d50ef jal ra,c0007b38 + c003214e: 75c2 ld a1,48(sp) + c0032150: 7662 ld a2,56(sp) + c0032152: 8522 mv a0,s0 + c0032154: ad3d50ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0031f88: cb02 sw zero,148(sp) - c0031f8a: c926 sw s1,144(sp) - c0031f8c: 67ca ld a5,144(sp) - c0031f8e: e13e sd a5,128(sp) - c0031f90: 4785 li a5,1 + c0032158: cb02 sw zero,148(sp) + c003215a: c926 sw s1,144(sp) + c003215c: 67ca ld a5,144(sp) + c003215e: e13e sd a5,128(sp) + c0032160: 4785 li a5,1 js_array_includes(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39650 } - c0031f92: 70ea ld ra,184(sp) - c0031f94: 744a ld s0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39641 + c0032162: 70ea ld ra,184(sp) + c0032164: 744a ld s0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39649 return JS_EXCEPTION; - c0031f96: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39642 -} - c0031f98: 650a ld a0,128(sp) - c0031f9a: 65aa ld a1,136(sp) - c0031f9c: 74aa ld s1,168(sp) - c0031f9e: 790a ld s2,160(sp) - c0031fa0: 6129 addi sp,sp,192 - c0031fa2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39609 + c0032166: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39650 +} + c0032168: 650a ld a0,128(sp) + c003216a: 65aa ld a1,136(sp) + c003216c: 74aa ld s1,168(sp) + c003216e: 790a ld s2,160(sp) + c0032170: 6129 addi sp,sp,192 + c0032172: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39617 n = 0; - c0031fa4: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39610 + c0032174: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39618 if (argc > 1) { - c0031fa6: 4785 li a5,1 - c0031fa8: 0527c963 blt a5,s2,c0031ffa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39614 + c0032176: 4785 li a5,1 + c0032178: 0527c963 blt a5,s2,c00321ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39622 if (js_get_fast_array(ctx, obj, &arrp, &count)) { - c0031fac: 7542 ld a0,48(sp) - c0031fae: 75e2 ld a1,56(sp) - c0031fb0: 0854 addi a3,sp,20 - c0031fb2: 1030 addi a2,sp,40 - c0031fb4: bfed40ef jal ra,c00063b2 - c0031fb8: e52d bnez a0,c0032022 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39626 + c003217c: 7542 ld a0,48(sp) + c003217e: 75e2 ld a1,56(sp) + c0032180: 0854 addi a3,sp,20 + c0032182: 1030 addi a2,sp,40 + c0032184: b1cd40ef jal ra,c00064a0 + c0032188: e52d bnez a0,c00321f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39634 if (JS_IsException(val)) - c0031fba: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39624 (discriminator 1) + c003218a: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39632 (discriminator 1) for (; n < len; n++) { - c0031fbc: 7682 ld a3,32(sp) - c0031fbe: 67e2 ld a5,24(sp) - c0031fc0: faf6dee3 bge a3,a5,c0031f7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39625 + c003218c: 7682 ld a3,32(sp) + c003218e: 67e2 ld a5,24(sp) + c0032190: faf6dee3 bge a3,a5,c003214c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39633 val = JS_GetPropertyInt64(ctx, obj, n); - c0031fc4: 75c2 ld a1,48(sp) - c0031fc6: 7662 ld a2,56(sp) - c0031fc8: 8522 mv a0,s0 - c0031fca: f05ff0ef jal ra,c0031ece - c0031fce: e4ae sd a1,72(sp) - c0031fd0: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39626 + c0032194: 75c2 ld a1,48(sp) + c0032196: 7662 ld a2,56(sp) + c0032198: 8522 mv a0,s0 + c003219a: f05ff0ef jal ra,c003209e + c003219e: e4ae sd a1,72(sp) + c00321a0: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39634 if (JS_IsException(val)) - c0031fd2: 2581 sext.w a1,a1 - c0031fd4: 03258c63 beq a1,s2,c003200c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39628 + c00321a2: 2581 sext.w a1,a1 + c00321a4: 03258c63 beq a1,s2,c00321dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39636 if (js_strict_eq2(ctx, JS_DupValue(ctx, argv[0]), val, - c0031fd8: 6088 ld a0,0(s1) - c0031fda: 648c ld a1,8(s1) - c0031fdc: e92d40ef jal ra,c000666e - c0031fe0: 6686 ld a3,64(sp) - c0031fe2: 6726 ld a4,72(sp) - c0031fe4: 862e mv a2,a1 - c0031fe6: 4789 li a5,2 - c0031fe8: 85aa mv a1,a0 - c0031fea: 8522 mv a0,s0 - c0031fec: b71d50ef jal ra,c0007b5c - c0031ff0: e925 bnez a0,c0032060 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39624 + c00321a8: 6088 ld a0,0(s1) + c00321aa: 648c ld a1,8(s1) + c00321ac: db0d40ef jal ra,c000675c + c00321b0: 6686 ld a3,64(sp) + c00321b2: 6726 ld a4,72(sp) + c00321b4: 862e mv a2,a1 + c00321b6: 4789 li a5,2 + c00321b8: 85aa mv a1,a0 + c00321ba: 8522 mv a0,s0 + c00321bc: a8fd50ef jal ra,c0007c4a + c00321c0: e925 bnez a0,c0032230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39632 for (; n < len; n++) { - c0031ff2: 7782 ld a5,32(sp) - c0031ff4: 0785 addi a5,a5,1 - c0031ff6: f03e sd a5,32(sp) - c0031ff8: b7d1 j c0031fbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39611 + c00321c2: 7782 ld a5,32(sp) + c00321c4: 0785 addi a5,a5,1 + c00321c6: f03e sd a5,32(sp) + c00321c8: b7d1 j c003218c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39619 if (JS_ToInt64Clamp(ctx, &n, argv[1], 0, len, len)) - c0031ffa: 6890 ld a2,16(s1) - c0031ffc: 6c94 ld a3,24(s1) - c0031ffe: 87c2 mv a5,a6 - c0032000: 4701 li a4,0 - c0032002: 100c addi a1,sp,32 - c0032004: 8522 mv a0,s0 - c0032006: fa8ec0ef jal ra,c001e7ae - c003200a: d14d beqz a0,c0031fac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39640 + c00321ca: 6890 ld a2,16(s1) + c00321cc: 6c94 ld a3,24(s1) + c00321ce: 87c2 mv a5,a6 + c00321d0: 4701 li a4,0 + c00321d2: 100c addi a1,sp,32 + c00321d4: 8522 mv a0,s0 + c00321d6: fa8ec0ef jal ra,c001e97e + c00321da: d14d beqz a0,c003217c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39648 JS_FreeValue(ctx, obj); - c003200c: 75c2 ld a1,48(sp) - c003200e: 7662 ld a2,56(sp) - c0032010: 8522 mv a0,s0 - c0032012: b27d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39641 + c00321dc: 75c2 ld a1,48(sp) + c00321de: 7662 ld a2,56(sp) + c00321e0: 8522 mv a0,s0 + c00321e2: a45d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39649 return JS_EXCEPTION; - c0032016: 4799 li a5,6 - c0032018: e102 sd zero,128(sp) - c003201a: bfa5 j c0031f92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39615 + c00321e6: 4799 li a5,6 + c00321e8: e102 sd zero,128(sp) + c00321ea: bfa5 j c0032162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39623 for (; n < count; n++) { - c003201c: 7782 ld a5,32(sp) - c003201e: 0785 addi a5,a5,1 - c0032020: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39615 (discriminator 1) - c0032022: 01416703 lwu a4,20(sp) - c0032026: 7782 ld a5,32(sp) - c0032028: f8e7d9e3 bge a5,a4,c0031fba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39616 + c00321ec: 7782 ld a5,32(sp) + c00321ee: 0785 addi a5,a5,1 + c00321f0: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39623 (discriminator 1) + c00321f2: 01416703 lwu a4,20(sp) + c00321f6: 7782 ld a5,32(sp) + c00321f8: f8e7d9e3 bge a5,a4,c003218a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39624 if (js_strict_eq2(ctx, JS_DupValue(ctx, argv[0]), - c003202c: 6088 ld a0,0(s1) - c003202e: 648c ld a1,8(s1) - c0032030: e3ed40ef jal ra,c000666e - c0032034: 7782 ld a5,32(sp) - c0032036: e8aa sd a0,80(sp) - c0032038: ecae sd a1,88(sp) - c003203a: 00479713 slli a4,a5,0x4 - c003203e: 77a2 ld a5,40(sp) - c0032040: 97ba add a5,a5,a4 - c0032042: 6388 ld a0,0(a5) - c0032044: 678c ld a1,8(a5) - c0032046: e28d40ef jal ra,c000666e - c003204a: 872e mv a4,a1 - c003204c: f4ae sd a1,104(sp) - c003204e: 6666 ld a2,88(sp) - c0032050: 65c6 ld a1,80(sp) - c0032052: 86aa mv a3,a0 - c0032054: f0aa sd a0,96(sp) - c0032056: 4789 li a5,2 - c0032058: 8522 mv a0,s0 - c003205a: b03d50ef jal ra,c0007b5c - c003205e: dd5d beqz a0,c003201c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39619 + c00321fc: 6088 ld a0,0(s1) + c00321fe: 648c ld a1,8(s1) + c0032200: d5cd40ef jal ra,c000675c + c0032204: 7782 ld a5,32(sp) + c0032206: e8aa sd a0,80(sp) + c0032208: ecae sd a1,88(sp) + c003220a: 00479713 slli a4,a5,0x4 + c003220e: 77a2 ld a5,40(sp) + c0032210: 97ba add a5,a5,a4 + c0032212: 6388 ld a0,0(a5) + c0032214: 678c ld a1,8(a5) + c0032216: d46d40ef jal ra,c000675c + c003221a: 872e mv a4,a1 + c003221c: f4ae sd a1,104(sp) + c003221e: 6666 ld a2,88(sp) + c0032220: 65c6 ld a1,80(sp) + c0032222: 86aa mv a3,a0 + c0032224: f0aa sd a0,96(sp) + c0032226: 4789 li a5,2 + c0032228: 8522 mv a0,s0 + c003222a: a21d50ef jal ra,c0007c4a + c003222e: dd5d beqz a0,c00321ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39627 res = TRUE; - c0032060: 4485 li s1,1 - c0032062: bf31 j c0031f7e + c0032230: 4485 li s1,1 + c0032232: bf31 j c003214e -00000000c0032064 : +00000000c0032234 : js_typed_array_at(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53251 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53259 { - c0032064: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53255 + c0032234: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53263 p = get_typed_array(ctx, this_val, 0); - c0032066: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53251 + c0032236: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53259 { - c0032068: e0a2 sd s0,64(sp) - c003206a: f84a sd s2,48(sp) - c003206c: e486 sd ra,72(sp) - c003206e: fc26 sd s1,56(sp) - c0032070: 842a mv s0,a0 - c0032072: e02e sd a1,0(sp) - c0032074: e432 sd a2,8(sp) - c0032076: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53255 + c0032238: e0a2 sd s0,64(sp) + c003223a: f84a sd s2,48(sp) + c003223c: e486 sd ra,72(sp) + c003223e: fc26 sd s1,56(sp) + c0032240: 842a mv s0,a0 + c0032242: e02e sd a1,0(sp) + c0032244: e432 sd a2,8(sp) + c0032246: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53263 p = get_typed_array(ctx, this_val, 0); - c0032078: f41e10ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53256 + c0032248: e5fe10ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53264 if (!p) - c003207c: ed01 bnez a0,c0032094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53261 + c003224c: ed01 bnez a0,c0032264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53269 return JS_EXCEPTION; - c003207e: f002 sd zero,32(sp) - c0032080: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53271 + c003224e: f002 sd zero,32(sp) + c0032250: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53279 return JS_UNDEFINED; - c0032082: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53273 (discriminator 1) -} - c0032084: 60a6 ld ra,72(sp) - c0032086: 6406 ld s0,64(sp) - c0032088: 7502 ld a0,32(sp) - c003208a: 75a2 ld a1,40(sp) - c003208c: 74e2 ld s1,56(sp) - c003208e: 7942 ld s2,48(sp) - c0032090: 6161 addi sp,sp,80 - c0032092: 8082 ret + c0032252: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53281 (discriminator 1) +} + c0032254: 60a6 ld ra,72(sp) + c0032256: 6406 ld s0,64(sp) + c0032258: 7502 ld a0,32(sp) + c003225a: 75a2 ld a1,40(sp) + c003225c: 74e2 ld s1,56(sp) + c003225e: 7942 ld s2,48(sp) + c0032260: 6161 addi sp,sp,80 + c0032262: 8082 ret typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c0032094: 791c ld a5,48(a0) - c0032096: 84aa mv s1,a0 - c0032098: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c0032264: 791c ld a5,48(a0) + c0032266: 84aa mv s1,a0 + c0032268: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c003209a: 7b9c ld a5,48(a5) + c003226a: 7b9c ld a5,48(a5) js_typed_array_at(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53259 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53267 if (typed_array_is_detached(ctx, p)) { - c003209c: 0047c783 lbu a5,4(a5) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c00320a0: c789 beqz a5,c00320aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53260 + c003226c: 0047c783 lbu a5,4(a5) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c0032270: c789 beqz a5,c003227a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53268 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c00320a2: 8522 mv a0,s0 - c00320a4: c2fe10ef jal ra,c0013cd2 - c00320a8: bfd9 j c003207e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53264 + c0032272: 8522 mv a0,s0 + c0032274: b4de10ef jal ra,c0013dc0 + c0032278: bfd9 j c003224e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53272 if (JS_ToInt64Sat(ctx, &idx, argv[0])) - c00320aa: 00093603 ld a2,0(s2) - c00320ae: 00893683 ld a3,8(s2) - c00320b2: 082c addi a1,sp,24 - c00320b4: 8522 mv a0,s0 - c00320b6: 9a8ec0ef jal ra,c001e25e - c00320ba: f171 bnez a0,c003207e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53268 + c003227a: 00093603 ld a2,0(s2) + c003227e: 00893683 ld a3,8(s2) + c0032282: 082c addi a1,sp,24 + c0032284: 8522 mv a0,s0 + c0032286: 9a8ec0ef jal ra,c001e42e + c003228a: f171 bnez a0,c003224e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53276 if (idx < 0) - c00320bc: 67e2 ld a5,24(sp) - c00320be: 0404e703 lwu a4,64(s1) - c00320c2: 0007d463 bgez a5,c00320ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53269 + c003228c: 67e2 ld a5,24(sp) + c003228e: 0404e703 lwu a4,64(s1) + c0032292: 0007d463 bgez a5,c003229a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53277 idx = len + idx; - c00320c6: 97ba add a5,a5,a4 - c00320c8: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53270 + c0032296: 97ba add a5,a5,a4 + c0032298: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53278 if (idx < 0 || idx >= len) - c00320ca: 66e2 ld a3,24(sp) - c00320cc: 00e6e563 bltu a3,a4,c00320d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53271 + c003229a: 66e2 ld a3,24(sp) + c003229c: 00e6e563 bltu a3,a4,c00322a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53279 return JS_UNDEFINED; - c00320d0: f002 sd zero,32(sp) - c00320d2: 478d li a5,3 - c00320d4: b77d j c0032082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53272 + c00322a0: f002 sd zero,32(sp) + c00322a2: 478d li a5,3 + c00322a4: b77d j c0032252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53280 return JS_GetPropertyInt64(ctx, this_val, idx); - c00320d6: 6582 ld a1,0(sp) - c00320d8: 6622 ld a2,8(sp) - c00320da: 8522 mv a0,s0 - c00320dc: df3ff0ef jal ra,c0031ece - c00320e0: f02a sd a0,32(sp) - c00320e2: f42e sd a1,40(sp) - c00320e4: b745 j c0032084 - -00000000c00320e6 : + c00322a6: 6582 ld a1,0(sp) + c00322a8: 6622 ld a2,8(sp) + c00322aa: 8522 mv a0,s0 + c00322ac: df3ff0ef jal ra,c003209e + c00322b0: f02a sd a0,32(sp) + c00322b2: f42e sd a1,40(sp) + c00322b4: b745 j c0032254 + +00000000c00322b6 : js_string___GetSubstitution(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41945 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41953 static JSValue js_string___GetSubstitution(JSContext *ctx, JSValueConst this_val, - c00320e6: 7169 addi sp,sp,-304 - c00320e8: ea4a sd s2,272(sp) - c00320ea: f606 sd ra,296(sp) - c00320ec: f222 sd s0,288(sp) - c00320ee: ee26 sd s1,280(sp) - c00320f0: e64e sd s3,264(sp) - c00320f2: e252 sd s4,256(sp) - c00320f4: fdd6 sd s5,248(sp) - c00320f6: f9da sd s6,240(sp) - c00320f8: f5de sd s7,232(sp) - c00320fa: f1e2 sd s8,224(sp) - c00320fc: ede6 sd s9,216(sp) - c00320fe: e9ea sd s10,208(sp) - c0032100: e5ee sd s11,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41959 + c00322b6: 7169 addi sp,sp,-304 + c00322b8: ea4a sd s2,272(sp) + c00322ba: f606 sd ra,296(sp) + c00322bc: f222 sd s0,288(sp) + c00322be: ee26 sd s1,280(sp) + c00322c0: e64e sd s3,264(sp) + c00322c2: e252 sd s4,256(sp) + c00322c4: fdd6 sd s5,248(sp) + c00322c6: f9da sd s6,240(sp) + c00322c8: f5de sd s7,232(sp) + c00322ca: f1e2 sd s8,224(sp) + c00322cc: ede6 sd s9,216(sp) + c00322ce: e9ea sd s10,208(sp) + c00322d0: e5ee sd s11,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41967 captures = argv[3]; - c0032102: 7998 ld a4,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41957 + c00322d2: 7998 ld a4,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41965 matched = argv[0]; - c0032104: 619c ld a5,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41959 + c00322d4: 619c ld a5,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41967 captures = argv[3]; - c0032106: 0385ba83 ld s5,56(a1) - c003210a: e0ba sd a4,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41960 + c00322d6: 0385ba83 ld s5,56(a1) + c00322da: e0ba sd a4,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41968 namedCaptures = argv[4]; - c003210c: 61b8 ld a4,64(a1) - c003210e: 0485bc03 ld s8,72(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41957 + c00322dc: 61b8 ld a4,64(a1) + c00322de: 0485bc03 ld s8,72(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41965 matched = argv[0]; - c0032112: f83e sd a5,48(sp) - c0032114: 659c ld a5,8(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41960 + c00322e2: f83e sd a5,48(sp) + c00322e4: 659c ld a5,8(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41968 namedCaptures = argv[4]; - c0032116: e8ba sd a4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41963 + c00322e6: e8ba sd a4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41971 if (!JS_IsString(rep) || !JS_IsString(str)) - c0032118: 4db8 lw a4,88(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41957 + c00322e8: 4db8 lw a4,88(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41965 matched = argv[0]; - c003211a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41959 + c00322ea: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41967 captures = argv[3]; - c003211c: e4d6 sd s5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41960 + c00322ec: e4d6 sd s5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41968 namedCaptures = argv[4]; - c003211e: ece2 sd s8,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41963 + c00322ee: ece2 sd s8,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41971 if (!JS_IsString(rep) || !JS_IsString(str)) - c0032120: 56e5 li a3,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41958 + c00322f0: 56e5 li a3,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41966 str = argv[1]; - c0032122: 0105bb83 ld s7,16(a1) - c0032126: 6d9c ld a5,24(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41945 + c00322f2: 0105bb83 ld s7,16(a1) + c00322f6: 6d9c ld a5,24(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41953 static JSValue js_string___GetSubstitution(JSContext *ctx, JSValueConst this_val, - c0032128: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41963 + c00322f8: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41971 if (!JS_IsString(rep) || !JS_IsString(str)) - c003212a: 00d71563 bne a4,a3,c0032134 - c003212e: 2781 sext.w a5,a5 - c0032130: 02e78763 beq a5,a4,c003215e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42051 -} - c0032134: 7412 ld s0,288(sp) - c0032136: 70b2 ld ra,296(sp) - c0032138: 64f2 ld s1,280(sp) - c003213a: 69b2 ld s3,264(sp) - c003213c: 6a12 ld s4,256(sp) - c003213e: 7aee ld s5,248(sp) - c0032140: 7b4e ld s6,240(sp) - c0032142: 7bae ld s7,232(sp) - c0032144: 7c0e ld s8,224(sp) - c0032146: 6cee ld s9,216(sp) - c0032148: 6d4e ld s10,208(sp) - c003214a: 6dae ld s11,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41964 + c00322fa: 00d71563 bne a4,a3,c0032304 + c00322fe: 2781 sext.w a5,a5 + c0032300: 02e78763 beq a5,a4,c003232e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42059 +} + c0032304: 7412 ld s0,288(sp) + c0032306: 70b2 ld ra,296(sp) + c0032308: 64f2 ld s1,280(sp) + c003230a: 69b2 ld s3,264(sp) + c003230c: 6a12 ld s4,256(sp) + c003230e: 7aee ld s5,248(sp) + c0032310: 7b4e ld s6,240(sp) + c0032312: 7bae ld s7,232(sp) + c0032314: 7c0e ld s8,224(sp) + c0032316: 6cee ld s9,216(sp) + c0032318: 6d4e ld s10,208(sp) + c003231a: 6dae ld s11,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41972 return JS_ThrowTypeError(ctx, "not a string"); - c003214c: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42051 + c003231c: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42059 } - c003214e: 6952 ld s2,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41964 + c003231e: 6952 ld s2,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41972 return JS_ThrowTypeError(ctx, "not a string"); - c0032150: 0002c597 auipc a1,0x2c - c0032154: ae858593 addi a1,a1,-1304 # c005dc38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42051 + c0032320: 0002c597 auipc a1,0x2c + c0032324: b4858593 addi a1,a1,-1208 # c005de68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42059 } - c0032158: 6155 addi sp,sp,304 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41964 + c0032328: 6155 addi sp,sp,304 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41972 return JS_ThrowTypeError(ctx, "not a string"); - c003215a: a9ce106f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41961 - rep = argv[5]; - c003215e: 69a4 ld s1,80(a1) + c003232a: 9bae106f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41969 + rep = argv[5]; + c003232e: 69a4 ld s1,80(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41977 string_buffer_init(ctx, b, 0); - c0032160: 89ae mv s3,a1 - c0032162: 4601 li a2,0 - c0032164: 110c addi a1,sp,160 - c0032166: a69e60ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41972 + c0032330: 89ae mv s3,a1 + c0032332: 4601 li a2,0 + c0032334: 110c addi a1,sp,160 + c0032336: a69e60ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41980 if (!JS_IsUndefined(captures)) { - c003216a: 000a879b sext.w a5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41971 + c003233a: 000a879b sext.w a5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41979 captures_len = 0; - c003216e: d602 sw zero,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41972 + c003233e: d602 sw zero,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41980 if (!JS_IsUndefined(captures)) { - c0032170: 470d li a4,3 - c0032172: 08e79963 bne a5,a4,c0032204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41976 + c0032340: 470d li a4,3 + c0032342: 08e79963 bne a5,a4,c00323d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41984 if (js_get_length32(ctx, &matched_len, matched)) - c0032176: 7642 ld a2,48(sp) - c0032178: 76e2 ld a3,56(sp) - c003217a: 102c addi a1,sp,40 - c003217c: 854a mv a0,s2 - c003217e: 99cea0ef jal ra,c001c31a - c0032182: 842a mv s0,a0 - c0032184: e559 bnez a0,c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41978 + c0032346: 7642 ld a2,48(sp) + c0032348: 76e2 ld a3,56(sp) + c003234a: 102c addi a1,sp,40 + c003234c: 854a mv a0,s2 + c003234e: 99cea0ef jal ra,c001c4ea + c0032352: 842a mv s0,a0 + c0032354: e559 bnez a0,c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41986 if (JS_ToUint32(ctx, &position, argv[2]) < 0) - c0032186: 0209b603 ld a2,32(s3) - c003218a: 0289b683 ld a3,40(s3) + c0032356: 0209b603 ld a2,32(s3) + c003235a: 0289b683 ld a3,40(s3) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c003218e: 104c addi a1,sp,36 - c0032190: 854a mv a0,s2 - c0032192: e932 sd a2,144(sp) - c0032194: ed36 sd a3,152(sp) - c0032196: 9d8ea0ef jal ra,c001c36e + c003235e: 104c addi a1,sp,36 + c0032360: 854a mv a0,s2 + c0032362: e932 sd a2,144(sp) + c0032364: ed36 sd a3,152(sp) + c0032366: 9d8ea0ef jal ra,c001c53e js_string___GetSubstitution(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41978 - c003219a: 06054c63 bltz a0,c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41981 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41986 + c003236a: 06054c63 bltz a0,c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41989 len = rp->len; - c003219e: 0044aa03 lw s4,4(s1) - c00321a2: 80000b37 lui s6,0x80000 - c00321a6: fffb4b13 not s6,s6 - c00321aa: 014b7a33 and s4,s6,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41999 + c003236e: 0044aa03 lw s4,4(s1) + c0032372: 80000b37 lui s6,0x80000 + c0032376: fffb4b13 not s6,s6 + c003237a: 014b7a33 and s4,s6,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42007 } else if (c >= '0' && c <= '9') { - c00321ae: 4d25 li s10,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42025 + c003237e: 4d25 li s10,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42033 } else if (c == '<' && !JS_IsUndefined(namedCaptures)) { - c00321b0: 000c0d9b sext.w s11,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41984 + c0032380: 000c0d9b sext.w s11,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41992 j = string_indexof_char(rp, '$', i); - c00321b4: 8622 mv a2,s0 - c00321b6: 02400593 li a1,36 - c00321ba: 8526 mv a0,s1 - c00321bc: cced20ef jal ra,c000468a - c00321c0: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41987 + c0032384: 8622 mv a2,s0 + c0032386: 02400593 li a1,36 + c003238a: 8526 mv a0,s1 + c003238c: afed20ef jal ra,c000468a + c0032390: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41995 string_buffer_concat(b, rp, i, j); - c00321c2: 0004061b sext.w a2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41985 + c0032392: 0004061b sext.w a2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41993 if (j < 0 || j + 1 >= len) - c00321c6: 18054663 bltz a0,c0032352 - c00321ca: 0015079b addiw a5,a0,1 - c00321ce: e43e sd a5,8(sp) - c00321d0: 1947f163 bgeu a5,s4,c0032352 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41987 + c0032396: 18054663 bltz a0,c0032522 + c003239a: 0015079b addiw a5,a0,1 + c003239e: e43e sd a5,8(sp) + c00323a0: 1947f163 bgeu a5,s4,c0032522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41995 string_buffer_concat(b, rp, i, j); - c00321d4: 00050c9b sext.w s9,a0 - c00321d8: 86e6 mv a3,s9 - c00321da: 85a6 mv a1,s1 - c00321dc: 1108 addi a0,sp,160 - c00321de: d8be60ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41989 + c00323a4: 00050c9b sext.w s9,a0 + c00323a8: 86e6 mv a3,s9 + c00323aa: 85a6 mv a1,s1 + c00323ac: 1108 addi a0,sp,160 + c00323ae: d8be60ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41997 c = string_get(rp, j++); - c00321e2: 67a2 ld a5,8(sp) - c00321e4: 8526 mv a0,s1 - c00321e6: 0029841b addiw s0,s3,2 - c00321ea: 85be mv a1,a5 - c00321ec: f7bd10ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41990 + c00323b2: 67a2 ld a5,8(sp) + c00323b4: 8526 mv a0,s1 + c00323b6: 0029841b addiw s0,s3,2 + c00323ba: 85be mv a1,a5 + c00323bc: dabd10ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41998 if (c == '$') { - c00321f0: 02400793 li a5,36 - c00321f4: 02f51663 bne a0,a5,c0032220 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41991 + c00323c0: 02400793 li a5,36 + c00323c4: 02f51663 bne a0,a5,c00323f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41999 string_buffer_putc8(b, '$'); - c00321f8: 02400593 li a1,36 - c00321fc: 1108 addi a0,sp,160 - c00321fe: ee9e60ef jal ra,c00190e6 - c0032202: bf4d j c00321b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41973 + c00323c8: 02400593 li a1,36 + c00323cc: 1108 addi a0,sp,160 + c00323ce: ee9e60ef jal ra,c00192b6 + c00323d2: bf4d j c0032384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41981 if (js_get_length32(ctx, &captures_len, captures)) - c0032204: 6606 ld a2,64(sp) - c0032206: 66a6 ld a3,72(sp) - c0032208: 106c addi a1,sp,44 - c003220a: 854a mv a0,s2 - c003220c: 90eea0ef jal ra,c001c31a - c0032210: d13d beqz a0,c0032176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42049 + c00323d4: 6606 ld a2,64(sp) + c00323d6: 66a6 ld a3,72(sp) + c00323d8: 106c addi a1,sp,44 + c00323da: 854a mv a0,s2 + c00323dc: 90eea0ef jal ra,c001c4ea + c00323e0: d13d beqz a0,c0032346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42057 string_buffer_free(b); - c0032212: 1108 addi a0,sp,160 - c0032214: c53d40ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42050 + c00323e2: 1108 addi a0,sp,160 + c00323e4: b71d40ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42058 return JS_EXCEPTION; - c0032218: 4799 li a5,6 - c003221a: e902 sd zero,144(sp) - c003221c: ed3e sd a5,152(sp) - c003221e: a2b1 j c003236a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41992 + c00323e8: 4799 li a5,6 + c00323ea: e902 sd zero,144(sp) + c00323ec: ed3e sd a5,152(sp) + c00323ee: a2b1 j c003253a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42000 } else if (c == '&') { - c0032220: 02600793 li a5,38 - c0032224: 00f51963 bne a0,a5,c0032236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41993 + c00323f0: 02600793 li a5,38 + c00323f4: 00f51963 bne a0,a5,c0032406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42001 if (string_buffer_concat_value(b, matched)) - c0032228: 75c2 ld a1,48(sp) - c003222a: 7662 ld a2,56(sp) - c003222c: 1108 addi a0,sp,160 - c003222e: caae90ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42019 + c00323f8: 75c2 ld a1,48(sp) + c00323fa: 7662 ld a2,56(sp) + c00323fc: 1108 addi a0,sp,160 + c00323fe: caae90ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42027 if (string_buffer_concat_value_free(b, s)) - c0032232: d149 beqz a0,c00321b4 - c0032234: bff9 j c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41995 + c0032402: d149 beqz a0,c0032384 + c0032404: bff9 j c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42003 } else if (c == '`') { - c0032236: 06000793 li a5,96 - c003223a: 00f51963 bne a0,a5,c003224c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41996 + c0032406: 06000793 li a5,96 + c003240a: 00f51963 bne a0,a5,c003241c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42004 string_buffer_concat(b, sp, 0, position); - c003223e: 5692 lw a3,36(sp) - c0032240: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41998 + c003240e: 5692 lw a3,36(sp) + c0032410: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42006 string_buffer_concat(b, sp, position + matched_len, sp->len); - c0032242: 85de mv a1,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42042 + c0032412: 85de mv a1,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42050 string_buffer_concat(b, rp, j0, j); - c0032244: 1108 addi a0,sp,160 - c0032246: d23e60ef jal ra,c0018f68 - c003224a: b7ad j c00321b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41997 + c0032414: 1108 addi a0,sp,160 + c0032416: d23e60ef jal ra,c0019138 + c003241a: b7ad j c0032384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42005 } else if (c == '\'') { - c003224c: 02700793 li a5,39 - c0032250: 00f51a63 bne a0,a5,c0032264 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41998 + c003241c: 02700793 li a5,39 + c0032420: 00f51a63 bne a0,a5,c0032434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42006 string_buffer_concat(b, sp, position + matched_len, sp->len); - c0032254: 004ba683 lw a3,4(s7) - c0032258: 5612 lw a2,36(sp) - c003225a: 57a2 lw a5,40(sp) - c003225c: 00db76b3 and a3,s6,a3 - c0032260: 9e3d addw a2,a2,a5 - c0032262: b7c5 j c0032242 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41999 + c0032424: 004ba683 lw a3,4(s7) + c0032428: 5612 lw a2,36(sp) + c003242a: 57a2 lw a5,40(sp) + c003242c: 00db76b3 and a3,s6,a3 + c0032430: 9e3d addw a2,a2,a5 + c0032432: b7c5 j c0032412 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42007 } else if (c >= '0' && c <= '9') { - c0032264: fd05071b addiw a4,a0,-48 - c0032268: ce3a sw a4,28(sp) - c003226a: 06ed6c63 bltu s10,a4,c00322e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42000 + c0032434: fd05071b addiw a4,a0,-48 + c0032438: ce3a sw a4,28(sp) + c003243a: 06ed6c63 bltu s10,a4,c00324b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42008 k = c - '0'; - c003226e: 86ba mv a3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42001 + c003243e: 86ba mv a3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42009 if (j < len) { - c0032270: 07447163 bgeu s0,s4,c00322d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42002 + c0032440: 07447163 bgeu s0,s4,c00324a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42010 c1 = string_get(rp, j); - c0032274: 85a2 mv a1,s0 - c0032276: 8526 mv a0,s1 - c0032278: e83a sd a4,16(sp) - c003227a: e43a sd a4,8(sp) - c003227c: eebd10ef jal ra,c0004166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42003 + c0032444: 85a2 mv a1,s0 + c0032446: 8526 mv a0,s1 + c0032448: e83a sd a4,16(sp) + c003244a: e43a sd a4,8(sp) + c003244c: d1bd10ef jal ra,c0004166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42011 if (c1 >= '0' && c1 <= '9') { - c0032280: 6722 ld a4,8(sp) - c0032282: fd05079b addiw a5,a0,-48 - c0032286: 86ba mv a3,a4 - c0032288: 04fd6563 bltu s10,a5,c00322d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42007 + c0032450: 6722 ld a4,8(sp) + c0032452: fd05079b addiw a5,a0,-48 + c0032456: 86ba mv a3,a4 + c0032458: 04fd6563 bltu s10,a5,c00324a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42015 k1 = k * 10 + c1 - '0'; - c003228c: 47a9 li a5,10 - c003228e: 02e787bb mulw a5,a5,a4 - c0032292: fd07879b addiw a5,a5,-48 - c0032296: 9fa9 addw a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42008 + c003245c: 47a9 li a5,10 + c003245e: 02e787bb mulw a5,a5,a4 + c0032462: fd07879b addiw a5,a5,-48 + c0032466: 9fa9 addw a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42016 if (k1 >= 1 && k1 < captures_len) { - c0032298: cf8d beqz a5,c00322d2 - c003229a: 5632 lw a2,44(sp) - c003229c: 02c7fb63 bgeu a5,a2,c00322d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42010 + c0032468: cf8d beqz a5,c00324a2 + c003246a: 5632 lw a2,44(sp) + c003246c: 02c7fb63 bgeu a5,a2,c00324a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42018 j++; - c00322a0: 0039841b addiw s0,s3,3 - c00322a4: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42015 + c0032470: 0039841b addiw s0,s3,3 + c0032474: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42023 s = JS_GetPropertyInt64(ctx, captures, k); - c00322a6: 6586 ld a1,64(sp) - c00322a8: 8656 mv a2,s5 - c00322aa: 854a mv a0,s2 - c00322ac: e4d6 sd s5,72(sp) - c00322ae: c21ff0ef jal ra,c0031ece - c00322b2: e12a sd a0,128(sp) - c00322b4: e52e sd a1,136(sp) + c0032476: 6586 ld a1,64(sp) + c0032478: 8656 mv a2,s5 + c003247a: 854a mv a0,s2 + c003247c: e4d6 sd s5,72(sp) + c003247e: c21ff0ef jal ra,c003209e + c0032482: e12a sd a0,128(sp) + c0032484: e52e sd a1,136(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00322b6: 0005879b sext.w a5,a1 + c0032486: 0005879b sext.w a5,a1 js_string___GetSubstitution(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42024 if (JS_IsException(s)) - c00322ba: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42015 + c003248a: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42023 s = JS_GetPropertyInt64(ctx, captures, k); - c00322bc: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42016 + c003248c: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42024 if (JS_IsException(s)) - c00322be: f4e78ae3 beq a5,a4,c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42018 + c003248e: f4e78ae3 beq a5,a4,c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42026 if (!JS_IsUndefined(s)) { - c00322c2: 470d li a4,3 - c00322c4: eee788e3 beq a5,a4,c00321b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42019 + c0032492: 470d li a4,3 + c0032494: eee788e3 beq a5,a4,c0032384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42027 if (string_buffer_concat_value_free(b, s)) - c00322c8: 85aa mv a1,a0 - c00322ca: 1108 addi a0,sp,160 - c00322cc: a11e80ef jal ra,c001acdc - c00322d0: b78d j c0032232 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42014 + c0032498: 85aa mv a1,a0 + c003249a: 1108 addi a0,sp,160 + c003249c: a11e80ef jal ra,c001aeac + c00324a0: b78d j c0032402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42022 if (k >= 1 && k < captures_len) { - c00322d2: c701 beqz a4,c00322da - c00322d4: 57b2 lw a5,44(sp) - c00322d6: fcf768e3 bltu a4,a5,c00322a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42042 + c00324a2: c701 beqz a4,c00324aa + c00324a4: 57b2 lw a5,44(sp) + c00324a6: fcf768e3 bltu a4,a5,c0032476 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42050 string_buffer_concat(b, rp, j0, j); - c00322da: 86a2 mv a3,s0 - c00322dc: 8666 mv a2,s9 - c00322de: 85a6 mv a1,s1 - c00322e0: b795 j c0032244 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42025 + c00324aa: 86a2 mv a3,s0 + c00324ac: 8666 mv a2,s9 + c00324ae: 85a6 mv a1,s1 + c00324b0: b795 j c0032414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42033 } else if (c == '<' && !JS_IsUndefined(namedCaptures)) { - c00322e2: 03c00793 li a5,60 - c00322e6: fef51ae3 bne a0,a5,c00322da - c00322ea: ece2 sd s8,88(sp) - c00322ec: 478d li a5,3 - c00322ee: fefd86e3 beq s11,a5,c00322da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42026 + c00324b2: 03c00793 li a5,60 + c00324b6: fef51ae3 bne a0,a5,c00324aa + c00324ba: ece2 sd s8,88(sp) + c00324bc: 478d li a5,3 + c00324be: fefd86e3 beq s11,a5,c00324aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42034 k = string_indexof_char(rp, '>', j); - c00322f2: 8622 mv a2,s0 - c00322f4: 03e00593 li a1,62 - c00322f8: 8526 mv a0,s1 - c00322fa: b90d20ef jal ra,c000468a - c00322fe: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42027 + c00324c2: 8622 mv a2,s0 + c00324c4: 03e00593 li a1,62 + c00324c8: 8526 mv a0,s1 + c00324ca: 9c0d20ef jal ra,c000468a + c00324ce: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42035 if (k < 0) - c0032300: fc054de3 bltz a0,c00322da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42029 + c00324d0: fc054de3 bltz a0,c00324aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42037 name = js_sub_string(ctx, rp, j, k); - c0032304: 86aa mv a3,a0 - c0032306: 8622 mv a2,s0 - c0032308: 85a6 mv a1,s1 - c003230a: 854a mv a0,s2 - c003230c: e6de70ef jal ra,c001a178 - c0032310: f8aa sd a0,112(sp) - c0032312: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42030 + c00324d4: 86aa mv a3,a0 + c00324d6: 8622 mv a2,s0 + c00324d8: 85a6 mv a1,s1 + c00324da: 854a mv a0,s2 + c00324dc: e6de70ef jal ra,c001a348 + c00324e0: f8aa sd a0,112(sp) + c00324e2: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42038 if (JS_IsException(name)) - c0032314: 0005879b sext.w a5,a1 - c0032318: 4419 li s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42029 + c00324e4: 0005879b sext.w a5,a1 + c00324e8: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42037 name = js_sub_string(ctx, rp, j, k); - c003231a: 86aa mv a3,a0 - c003231c: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42030 + c00324ea: 86aa mv a3,a0 + c00324ec: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42038 if (JS_IsException(name)) - c003231e: ee878ae3 beq a5,s0,c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42032 + c00324ee: ee878ae3 beq a5,s0,c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42040 capture = JS_GetPropertyValue(ctx, namedCaptures, name); - c0032322: 6666 ld a2,88(sp) - c0032324: 65c6 ld a1,80(sp) - c0032326: 854a mv a0,s2 - c0032328: 981df0ef jal ra,c0011ca8 - c003232c: f0aa sd a0,96(sp) - c003232e: f4ae sd a1,104(sp) + c00324f2: 6666 ld a2,88(sp) + c00324f4: 65c6 ld a1,80(sp) + c00324f6: 854a mv a0,s2 + c00324f8: 89fdf0ef jal ra,c0011d96 + c00324fc: f0aa sd a0,96(sp) + c00324fe: f4ae sd a1,104(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c0032330: 0005879b sext.w a5,a1 + c0032500: 0005879b sext.w a5,a1 js_string___GetSubstitution(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42032 - c0032334: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42033 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42040 + c0032504: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42041 if (JS_IsException(capture)) - c0032336: ec878ee3 beq a5,s0,c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42035 + c0032506: ec878ee3 beq a5,s0,c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42043 if (!JS_IsUndefined(capture)) { - c003233a: 470d li a4,3 - c003233c: 00e79563 bne a5,a4,c0032346 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42039 + c003250a: 470d li a4,3 + c003250c: 00e79563 bne a5,a4,c0032516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42047 j = k + 1; - c0032340: 0019841b addiw s0,s3,1 - c0032344: bd85 j c00321b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42036 + c0032510: 0019841b addiw s0,s3,1 + c0032514: bd85 j c0032384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42044 if (string_buffer_concat_value_free(b, capture)) - c0032346: 85aa mv a1,a0 - c0032348: 1108 addi a0,sp,160 - c003234a: 993e80ef jal ra,c001acdc - c003234e: d96d beqz a0,c0032340 - c0032350: b5c9 j c0032212 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42046 + c0032516: 85aa mv a1,a0 + c0032518: 1108 addi a0,sp,160 + c003251a: 993e80ef jal ra,c001aeac + c003251e: d96d beqz a0,c0032510 + c0032520: b5c9 j c00323e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42054 string_buffer_concat(b, rp, i, rp->len); - c0032352: 40d4 lw a3,4(s1) - c0032354: 85a6 mv a1,s1 - c0032356: 1108 addi a0,sp,160 - c0032358: 1686 slli a3,a3,0x21 - c003235a: 9285 srli a3,a3,0x21 - c003235c: c0de60ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42047 + c0032522: 40d4 lw a3,4(s1) + c0032524: 85a6 mv a1,s1 + c0032526: 1108 addi a0,sp,160 + c0032528: 1686 slli a3,a3,0x21 + c003252a: 9285 srli a3,a3,0x21 + c003252c: c0de60ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42055 return string_buffer_end(b); - c0032360: 1108 addi a0,sp,160 - c0032362: 9a9e70ef jal ra,c0019d0a - c0032366: e92a sd a0,144(sp) - c0032368: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42051 -} - c003236a: 70b2 ld ra,296(sp) - c003236c: 7412 ld s0,288(sp) - c003236e: 654a ld a0,144(sp) - c0032370: 65ea ld a1,152(sp) - c0032372: 64f2 ld s1,280(sp) - c0032374: 6952 ld s2,272(sp) - c0032376: 69b2 ld s3,264(sp) - c0032378: 6a12 ld s4,256(sp) - c003237a: 7aee ld s5,248(sp) - c003237c: 7b4e ld s6,240(sp) - c003237e: 7bae ld s7,232(sp) - c0032380: 7c0e ld s8,224(sp) - c0032382: 6cee ld s9,216(sp) - c0032384: 6d4e ld s10,208(sp) - c0032386: 6dae ld s11,200(sp) - c0032388: 6155 addi sp,sp,304 - c003238a: 8082 ret - -00000000c003238c : + c0032530: 1108 addi a0,sp,160 + c0032532: 9a9e70ef jal ra,c0019eda + c0032536: e92a sd a0,144(sp) + c0032538: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42059 +} + c003253a: 70b2 ld ra,296(sp) + c003253c: 7412 ld s0,288(sp) + c003253e: 654a ld a0,144(sp) + c0032540: 65ea ld a1,152(sp) + c0032542: 64f2 ld s1,280(sp) + c0032544: 6952 ld s2,272(sp) + c0032546: 69b2 ld s3,264(sp) + c0032548: 6a12 ld s4,256(sp) + c003254a: 7aee ld s5,248(sp) + c003254c: 7b4e ld s6,240(sp) + c003254e: 7bae ld s7,232(sp) + c0032550: 7c0e ld s8,224(sp) + c0032552: 6cee ld s9,216(sp) + c0032554: 6d4e ld s10,208(sp) + c0032556: 6dae ld s11,200(sp) + c0032558: 6155 addi sp,sp,304 + c003255a: 8082 ret + +00000000c003255c : js_string_raw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41426 { - c003238c: 716d addi sp,sp,-272 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41424 + c003255c: 716d addi sp,sp,-272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41432 string_buffer_init(ctx, b, 0); - c003238e: 4601 li a2,0 - c0032390: 110c addi a1,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41418 + c003255e: 4601 li a2,0 + c0032560: 110c addi a1,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41426 { - c0032392: e606 sd ra,264(sp) - c0032394: e222 sd s0,256(sp) - c0032396: f9ca sd s2,240(sp) - c0032398: f5ce sd s3,232(sp) - c003239a: f1d2 sd s4,224(sp) - c003239c: 89ba mv s3,a4 - c003239e: 8a36 mv s4,a3 - c00323a0: 842a mv s0,a0 - c00323a2: fda6 sd s1,248(sp) - c00323a4: edd6 sd s5,216(sp) - c00323a6: e9da sd s6,208(sp) - c00323a8: e5de sd s7,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41424 + c0032562: e606 sd ra,264(sp) + c0032564: e222 sd s0,256(sp) + c0032566: f9ca sd s2,240(sp) + c0032568: f5ce sd s3,232(sp) + c003256a: f1d2 sd s4,224(sp) + c003256c: 89ba mv s3,a4 + c003256e: 8a36 mv s4,a3 + c0032570: 842a mv s0,a0 + c0032572: fda6 sd s1,248(sp) + c0032574: edd6 sd s5,216(sp) + c0032576: e9da sd s6,208(sp) + c0032578: e5de sd s7,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41432 string_buffer_init(ctx, b, 0); - c00323aa: 825e60ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41426 + c003257a: 825e60ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41434 cooked = JS_ToObject(ctx, argv[0]); - c00323ae: 0009b583 ld a1,0(s3) - c00323b2: 0089b603 ld a2,8(s3) - c00323b6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41425 + c003257e: 0009b583 ld a1,0(s3) + c0032582: 0089b603 ld a2,8(s3) + c0032586: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41433 raw = JS_UNDEFINED; - c00323b8: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41426 + c0032588: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41434 cooked = JS_ToObject(ctx, argv[0]); - c00323ba: a32f60ef jal ra,c00285ec - c00323be: f02a sd a0,32(sp) - c00323c0: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41427 + c003258a: a32f60ef jal ra,c00287bc + c003258e: f02a sd a0,32(sp) + c0032590: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41435 if (JS_IsException(cooked)) - c00323c2: 0005869b sext.w a3,a1 - c00323c6: 4919 li s2,6 - c00323c8: 11268863 beq a3,s2,c00324d8 - c00323cc: 87ae mv a5,a1 + c0032592: 0005869b sext.w a3,a1 + c0032596: 4919 li s2,6 + c0032598: 11268863 beq a3,s2,c00326a8 + c003259c: 87ae mv a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00323ce: 863e mv a2,a5 - c00323d0: 872a mv a4,a0 - c00323d2: 4801 li a6,0 - c00323d4: 07100693 li a3,113 - c00323d8: e92a sd a0,144(sp) - c00323da: ed2e sd a1,152(sp) - c00323dc: 85aa mv a1,a0 - c00323de: 8522 mv a0,s0 - c00323e0: c62df0ef jal ra,c0011842 - c00323e4: 862e mv a2,a1 - c00323e6: f8aa sd a0,112(sp) - c00323e8: fcae sd a1,120(sp) + c003259e: 863e mv a2,a5 + c00325a0: 872a mv a4,a0 + c00325a2: 4801 li a6,0 + c00325a4: 07100693 li a3,113 + c00325a8: e92a sd a0,144(sp) + c00325aa: ed2e sd a1,152(sp) + c00325ac: 85aa mv a1,a0 + c00325ae: 8522 mv a0,s0 + c00325b0: b80df0ef jal ra,c0011930 + c00325b4: 862e mv a2,a1 + c00325b6: f8aa sd a0,112(sp) + c00325b8: fcae sd a1,120(sp) JS_ToObjectFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37106 JSValue obj = JS_ToObject(ctx, val); - c00323ea: 85aa mv a1,a0 - c00323ec: 8522 mv a0,s0 - c00323ee: 9fef60ef jal ra,c00285ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 + c00325ba: 85aa mv a1,a0 + c00325bc: 8522 mv a0,s0 + c00325be: 9fef60ef jal ra,c00287bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37107 JS_FreeValue(ctx, val); - c00323f2: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 + c00325c2: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37106 JSValue obj = JS_ToObject(ctx, val); - c00323f4: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 + c00325c4: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37107 JS_FreeValue(ctx, val); - c00323f6: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37098 + c00325c6: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37106 JSValue obj = JS_ToObject(ctx, val); - c00323f8: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37099 + c00325c8: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37107 JS_FreeValue(ctx, val); - c00323fa: 8522 mv a0,s0 - c00323fc: f3cd50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37100 + c00325ca: 8522 mv a0,s0 + c00325cc: e5ad50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37108 return obj; - c0032400: 660a ld a2,128(sp) - c0032402: 64aa ld s1,136(sp) - c0032404: e932 sd a2,144(sp) - c0032406: ed26 sd s1,152(sp) - c0032408: e0b2 sd a2,64(sp) + c00325d0: 660a ld a2,128(sp) + c00325d2: 64aa ld s1,136(sp) + c00325d4: e932 sd a2,144(sp) + c00325d6: ed26 sd s1,152(sp) + c00325d8: e0b2 sd a2,64(sp) js_string_raw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41438 if (JS_IsException(raw)) - c003240a: 0004879b sext.w a5,s1 + c00325da: 0004879b sext.w a5,s1 JS_ToObjectFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37108 return obj; - c003240e: 8aa6 mv s5,s1 + c00325de: 8aa6 mv s5,s1 js_string_raw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41438 if (JS_IsException(raw)) - c0032410: 0b278363 beq a5,s2,c00324b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41432 + c00325e0: 0b278363 beq a5,s2,c0032686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41440 if (js_get_length64(ctx, &n, raw) < 0) - c0032414: 86a6 mv a3,s1 - c0032416: 082c addi a1,sp,24 - c0032418: 8522 mv a0,s0 - c003241a: c24ec0ef jal ra,c001e83e - c003241e: 08054c63 bltz a0,c00324b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41435 + c00325e4: 86a6 mv a3,s1 + c00325e6: 082c addi a1,sp,24 + c00325e8: 8522 mv a0,s0 + c00325ea: c24ec0ef jal ra,c001ea0e + c00325ee: 08054c63 bltz a0,c0032686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41443 for (i = 0; i < n; i++) { - c0032422: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41437 + c00325f2: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41445 if (JS_IsException(val)) - c0032424: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41435 (discriminator 1) + c00325f4: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41443 (discriminator 1) for (i = 0; i < n; i++) { - c0032426: 67e2 ld a5,24(sp) - c0032428: 02f94e63 blt s2,a5,c0032464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41445 + c00325f6: 67e2 ld a5,24(sp) + c00325f8: 02f94e63 blt s2,a5,c0032634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41453 JS_FreeValue(ctx, cooked); - c003242c: 7582 ld a1,32(sp) - c003242e: 7622 ld a2,40(sp) - c0032430: 8522 mv a0,s0 - c0032432: f06d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41446 + c00325fc: 7582 ld a1,32(sp) + c00325fe: 7622 ld a2,40(sp) + c0032600: 8522 mv a0,s0 + c0032602: e24d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41454 JS_FreeValue(ctx, raw); - c0032436: 6586 ld a1,64(sp) - c0032438: 8626 mv a2,s1 - c003243a: 8522 mv a0,s0 - c003243c: efcd50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41447 + c0032606: 6586 ld a1,64(sp) + c0032608: 8626 mv a2,s1 + c003260a: 8522 mv a0,s0 + c003260c: e1ad50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41455 return string_buffer_end(b); - c0032440: 1108 addi a0,sp,160 - c0032442: 8c9e70ef jal ra,c0019d0a - c0032446: e12a sd a0,128(sp) - c0032448: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41454 -} - c003244a: 60b2 ld ra,264(sp) - c003244c: 6412 ld s0,256(sp) - c003244e: 650a ld a0,128(sp) - c0032450: 65aa ld a1,136(sp) - c0032452: 74ee ld s1,248(sp) - c0032454: 794e ld s2,240(sp) - c0032456: 79ae ld s3,232(sp) - c0032458: 7a0e ld s4,224(sp) - c003245a: 6aee ld s5,216(sp) - c003245c: 6b4e ld s6,208(sp) - c003245e: 6bae ld s7,200(sp) - c0032460: 6151 addi sp,sp,272 - c0032462: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41436 + c0032610: 1108 addi a0,sp,160 + c0032612: 8c9e70ef jal ra,c0019eda + c0032616: e12a sd a0,128(sp) + c0032618: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41462 +} + c003261a: 60b2 ld ra,264(sp) + c003261c: 6412 ld s0,256(sp) + c003261e: 650a ld a0,128(sp) + c0032620: 65aa ld a1,136(sp) + c0032622: 74ee ld s1,248(sp) + c0032624: 794e ld s2,240(sp) + c0032626: 79ae ld s3,232(sp) + c0032628: 7a0e ld s4,224(sp) + c003262a: 6aee ld s5,216(sp) + c003262c: 6b4e ld s6,208(sp) + c003262e: 6bae ld s7,200(sp) + c0032630: 6151 addi sp,sp,272 + c0032632: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41444 val = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, raw, i)); - c0032464: 6586 ld a1,64(sp) - c0032466: 86ca mv a3,s2 - c0032468: 8626 mv a2,s1 - c003246a: 8522 mv a0,s0 - c003246c: a63ff0ef jal ra,c0031ece - c0032470: 862e mv a2,a1 - c0032472: f8aa sd a0,112(sp) - c0032474: fcae sd a1,120(sp) - c0032476: 85aa mv a1,a0 - c0032478: 8522 mv a0,s0 - c003247a: b66e80ef jal ra,c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41437 + c0032634: 6586 ld a1,64(sp) + c0032636: 86ca mv a3,s2 + c0032638: 8626 mv a2,s1 + c003263a: 8522 mv a0,s0 + c003263c: a63ff0ef jal ra,c003209e + c0032640: 862e mv a2,a1 + c0032642: f8aa sd a0,112(sp) + c0032644: fcae sd a1,120(sp) + c0032646: 85aa mv a1,a0 + c0032648: 8522 mv a0,s0 + c003264a: b66e80ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41445 if (JS_IsException(val)) - c003247e: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41436 + c003264e: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41444 val = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, raw, i)); - c0032482: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41437 + c0032652: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41445 if (JS_IsException(val)) - c0032484: 03678963 beq a5,s6,c00324b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41439 + c0032654: 03678963 beq a5,s6,c0032686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41447 string_buffer_concat_value_free(b, val); - c0032488: 85aa mv a1,a0 - c003248a: 1108 addi a0,sp,160 - c003248c: 851e80ef jal ra,c001acdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41440 + c0032658: 85aa mv a1,a0 + c003265a: 1108 addi a0,sp,160 + c003265c: 851e80ef jal ra,c001aeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41448 if (i < n - 1 && i + 1 < argc) { - c0032490: 67e2 ld a5,24(sp) - c0032492: 00190b93 addi s7,s2,1 - c0032496: 17fd addi a5,a5,-1 - c0032498: 00f94463 blt s2,a5,c00324a0 - c003249c: 895e mv s2,s7 - c003249e: b761 j c0032426 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41440 (discriminator 1) - c00324a0: ff4bdee3 bge s7,s4,c003249c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41441 + c0032660: 67e2 ld a5,24(sp) + c0032662: 00190b93 addi s7,s2,1 + c0032666: 17fd addi a5,a5,-1 + c0032668: 00f94463 blt s2,a5,c0032670 + c003266c: 895e mv s2,s7 + c003266e: b761 j c00325f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41448 (discriminator 1) + c0032670: ff4bdee3 bge s7,s4,c003266c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41449 if (string_buffer_concat_value(b, argv[i + 1])) - c00324a4: 004b9793 slli a5,s7,0x4 - c00324a8: 97ce add a5,a5,s3 - c00324aa: 638c ld a1,0(a5) - c00324ac: 6790 ld a2,8(a5) - c00324ae: 1108 addi a0,sp,160 - c00324b0: a28e90ef jal ra,c001b6d8 - c00324b4: d565 beqz a0,c003249c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41450 + c0032674: 004b9793 slli a5,s7,0x4 + c0032678: 97ce add a5,a5,s3 + c003267a: 638c ld a1,0(a5) + c003267c: 6790 ld a2,8(a5) + c003267e: 1108 addi a0,sp,160 + c0032680: a28e90ef jal ra,c001b8a8 + c0032684: d565 beqz a0,c003266c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41458 JS_FreeValue(ctx, cooked); - c00324b6: 7582 ld a1,32(sp) - c00324b8: 7622 ld a2,40(sp) - c00324ba: 8522 mv a0,s0 - c00324bc: e7cd50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41451 + c0032686: 7582 ld a1,32(sp) + c0032688: 7622 ld a2,40(sp) + c003268a: 8522 mv a0,s0 + c003268c: d9ad50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41459 JS_FreeValue(ctx, raw); - c00324c0: 6586 ld a1,64(sp) - c00324c2: 8656 mv a2,s5 - c00324c4: 8522 mv a0,s0 - c00324c6: e72d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41452 + c0032690: 6586 ld a1,64(sp) + c0032692: 8656 mv a2,s5 + c0032694: 8522 mv a0,s0 + c0032696: d90d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41460 string_buffer_free(b); - c00324ca: 1108 addi a0,sp,160 - c00324cc: 99bd40ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41453 + c003269a: 1108 addi a0,sp,160 + c003269c: 8b9d40ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41461 return JS_EXCEPTION; - c00324d0: 4799 li a5,6 - c00324d2: e102 sd zero,128(sp) - c00324d4: e53e sd a5,136(sp) - c00324d6: bf95 j c003244a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41425 + c00326a0: 4799 li a5,6 + c00326a2: e102 sd zero,128(sp) + c00326a4: e53e sd a5,136(sp) + c00326a6: bf95 j c003261a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41433 raw = JS_UNDEFINED; - c00324d8: 4a8d li s5,3 - c00324da: bff1 j c00324b6 + c00326a8: 4a8d li s5,3 + c00326aa: bff1 j c0032686 -00000000c00324dc : +00000000c00326ac : JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8050 { - c00324dc: 7119 addi sp,sp,-128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8047 + c00326ac: 7119 addi sp,sp,-128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8055 if (likely((uint64_t)idx <= JS_ATOM_MAX_INT)) { - c00324de: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8042 + c00326ae: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8050 { - c00324e2: f0ca sd s2,96(sp) - c00324e4: ecce sd s3,88(sp) - c00324e6: e8d2 sd s4,80(sp) - c00324e8: fc86 sd ra,120(sp) - c00324ea: f8a2 sd s0,112(sp) - c00324ec: f4a6 sd s1,104(sp) - c00324ee: e02e sd a1,0(sp) - c00324f0: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8043 + c00326b2: f0ca sd s2,96(sp) + c00326b4: ecce sd s3,88(sp) + c00326b6: e8d2 sd s4,80(sp) + c00326b8: fc86 sd ra,120(sp) + c00326ba: f8a2 sd s0,112(sp) + c00326bc: f4a6 sd s1,104(sp) + c00326be: e02e sd a1,0(sp) + c00326c0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 JSValue val = JS_UNDEFINED; - c00324f2: e802 sd zero,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8047 + c00326c2: e802 sd zero,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8055 if (likely((uint64_t)idx <= JS_ATOM_MAX_INT)) { - c00324f4: fff7c793 not a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8042 + c00326c4: fff7c793 not a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8050 { - c00324f8: 892a mv s2,a0 - c00324fa: 89b6 mv s3,a3 - c00324fc: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8047 + c00326c8: 892a mv s2,a0 + c00326ca: 89b6 mv s3,a3 + c00326cc: 8a3a mv s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8055 if (likely((uint64_t)idx <= JS_ATOM_MAX_INT)) { - c00324fe: 04d7e063 bltu a5,a3,c003253e + c00326ce: 04d7e063 bltu a5,a3,c003270e __JS_AtomFromUInt32(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2433 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2441 return v | JS_ATOM_TAG_INT; - c0032502: 800006b7 lui a3,0x80000 - c0032506: 00d9e6b3 or a3,s3,a3 + c00326d2: 800006b7 lui a3,0x80000 + c00326d6: 00d9e6b3 or a3,s3,a3 JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8049 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8057 present = JS_HasProperty(ctx, obj, __JS_AtomFromUInt32(idx)); - c003250a: 2681 sext.w a3,a3 - c003250c: cd6fe0ef jal ra,c00309e2 - c0032510: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8043 + c00326da: 2681 sext.w a3,a3 + c00326dc: cd6fe0ef jal ra,c0030bb2 + c00326e0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 JSValue val = JS_UNDEFINED; - c0032512: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8050 + c00326e2: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8058 if (present > 0) { - c0032514: 06a05d63 blez a0,c003258e + c00326e4: 06a05d63 blez a0,c003275e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0032518: f802 sd zero,48(sp) + c00326e8: f802 sd zero,48(sp) JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8059 val = JS_GetPropertyValue(ctx, obj, JS_NewInt32(ctx, idx)); - c003251a: d84e sw s3,48(sp) - c003251c: 76c2 ld a3,48(sp) - c003251e: 6582 ld a1,0(sp) - c0032520: 6622 ld a2,8(sp) - c0032522: 4701 li a4,0 - c0032524: 854a mv a0,s2 + c00326ea: d84e sw s3,48(sp) + c00326ec: 76c2 ld a3,48(sp) + c00326ee: 6582 ld a1,0(sp) + c00326f0: 6622 ld a2,8(sp) + c00326f2: 4701 li a4,0 + c00326f4: 854a mv a0,s2 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0032526: fc02 sd zero,56(sp) + c00326f6: fc02 sd zero,56(sp) JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 - c0032528: f80df0ef jal ra,c0011ca8 - c003252c: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8059 + c00326f8: e9edf0ef jal ra,c0011d96 + c00326fc: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8060 if (unlikely(JS_IsException(val))) - c003252e: 0005871b sext.w a4,a1 - c0032532: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 + c00326fe: 0005871b sext.w a4,a1 + c0032702: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8059 val = JS_GetPropertyValue(ctx, obj, JS_NewInt32(ctx, idx)); - c0032534: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8052 + c0032704: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8060 if (unlikely(JS_IsException(val))) - c0032536: 04f71c63 bne a4,a5,c003258e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8057 + c0032706: 04f71c63 bne a4,a5,c003275e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8065 present = -1; - c003253a: 547d li s0,-1 - c003253c: a889 j c003258e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8056 + c003270a: 547d li s0,-1 + c003270c: a889 j c003275e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8064 prop = JS_NewAtomInt64(ctx, idx); - c003253e: 85b6 mv a1,a3 - c0032540: d0be70ef jal ra,c001a24a - c0032544: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8058 + c003270e: 85b6 mv a1,a3 + c0032710: d0be70ef jal ra,c001a41a + c0032714: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8066 if (likely(prop != JS_ATOM_NULL)) { - c0032548: 06098163 beqz s3,c00325aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8059 + c0032718: 06098163 beqz s3,c003277a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8067 present = JS_HasProperty(ctx, obj, prop); - c003254c: 6582 ld a1,0(sp) - c003254e: 6622 ld a2,8(sp) - c0032550: 86ce mv a3,s3 - c0032552: 854a mv a0,s2 - c0032554: c8efe0ef jal ra,c00309e2 - c0032558: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8043 + c003271c: 6582 ld a1,0(sp) + c003271e: 6622 ld a2,8(sp) + c0032720: 86ce mv a3,s3 + c0032722: 854a mv a0,s2 + c0032724: c8efe0ef jal ra,c0030bb2 + c0032728: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 JSValue val = JS_UNDEFINED; - c003255a: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8060 + c003272a: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8068 if (present > 0) { - c003255c: 02a05563 blez a0,c0032586 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8061 + c003272c: 02a05563 blez a0,c0032756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8069 val = JS_GetProperty(ctx, obj, prop); - c0032560: 6702 ld a4,0(sp) - c0032562: 67a2 ld a5,8(sp) + c0032730: 6702 ld a4,0(sp) + c0032732: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0032564: 4801 li a6,0 - c0032566: 85ba mv a1,a4 - c0032568: 863e mv a2,a5 - c003256a: 86ce mv a3,s3 - c003256c: 854a mv a0,s2 - c003256e: f83a sd a4,48(sp) - c0032570: fc3e sd a5,56(sp) - c0032572: ad0df0ef jal ra,c0011842 - c0032576: e82a sd a0,16(sp) + c0032734: 4801 li a6,0 + c0032736: 85ba mv a1,a4 + c0032738: 863e mv a2,a5 + c003273a: 86ce mv a3,s3 + c003273c: 854a mv a0,s2 + c003273e: f83a sd a4,48(sp) + c0032740: fc3e sd a5,56(sp) + c0032742: 9eedf0ef jal ra,c0011930 + c0032746: e82a sd a0,16(sp) JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8070 if (unlikely(JS_IsException(val))) - c0032578: 0005871b sext.w a4,a1 - c003257c: 4799 li a5,6 + c0032748: 0005871b sext.w a4,a1 + c003274c: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003257e: 84ae mv s1,a1 + c003274e: 84ae mv s1,a1 JS_TryGetPropertyInt64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8062 - c0032580: 00f71363 bne a4,a5,c0032586 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8063 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8070 + c0032750: 00f71363 bne a4,a5,c0032756 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8071 present = -1; - c0032584: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8065 + c0032754: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8073 JS_FreeAtom(ctx, prop); - c0032586: 85ce mv a1,s3 - c0032588: 854a mv a0,s2 - c003258a: f83d40ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8068 + c0032756: 85ce mv a1,s3 + c0032758: 854a mv a0,s2 + c003275a: ea1d40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8076 *pval = val; - c003258e: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8070 + c003275e: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8078 } - c0032590: 70e6 ld ra,120(sp) - c0032592: 8522 mv a0,s0 - c0032594: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8068 + c0032760: 70e6 ld ra,120(sp) + c0032762: 8522 mv a0,s0 + c0032764: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8076 *pval = val; - c0032596: 009a3423 sd s1,8(s4) - c003259a: 00fa3023 sd a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8070 -} - c003259e: 74a6 ld s1,104(sp) - c00325a0: 7906 ld s2,96(sp) - c00325a2: 69e6 ld s3,88(sp) - c00325a4: 6a46 ld s4,80(sp) - c00325a6: 6109 addi sp,sp,128 - c00325a8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8043 + c0032766: 009a3423 sd s1,8(s4) + c003276a: 00fa3023 sd a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8078 +} + c003276e: 74a6 ld s1,104(sp) + c0032770: 7906 ld s2,96(sp) + c0032772: 69e6 ld s3,88(sp) + c0032774: 6a46 ld s4,80(sp) + c0032776: 6109 addi sp,sp,128 + c0032778: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:8051 JSValue val = JS_UNDEFINED; - c00325aa: 448d li s1,3 - c00325ac: b779 j c003253a + c003277a: 448d li s1,3 + c003277c: b779 j c003270a -00000000c00325ae : +00000000c003277e : js_array_lastIndexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39695 -{ - c00325ae: 7175 addi sp,sp,-144 - c00325b0: e122 sd s0,128(sp) - c00325b2: fca6 sd s1,120(sp) - c00325b4: f8ca sd s2,112(sp) - c00325b6: e506 sd ra,136(sp) - c00325b8: 842a mv s0,a0 - c00325ba: 8936 mv s2,a3 - c00325bc: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39703 +{ + c003277e: 7175 addi sp,sp,-144 + c0032780: e122 sd s0,128(sp) + c0032782: fca6 sd s1,120(sp) + c0032784: f8ca sd s2,112(sp) + c0032786: e506 sd ra,136(sp) + c0032788: 842a mv s0,a0 + c003278a: 8936 mv s2,a3 + c003278c: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39708 obj = JS_ToObject(ctx, this_val); - c00325be: 82ef60ef jal ra,c00285ec - c00325c2: 862a mv a2,a0 - c00325c4: 86ae mv a3,a1 - c00325c6: f02a sd a0,32(sp) - c00325c8: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39701 + c003278e: 82ef60ef jal ra,c00287bc + c0032792: 862a mv a2,a0 + c0032794: 86ae mv a3,a1 + c0032796: f02a sd a0,32(sp) + c0032798: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39709 if (js_get_length64(ctx, &len, obj)) - c00325ca: 8522 mv a0,s0 - c00325cc: 080c addi a1,sp,16 - c00325ce: a70ec0ef jal ra,c001e83e - c00325d2: e939 bnez a0,c0032628 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39705 + c003279a: 8522 mv a0,s0 + c003279c: 080c addi a1,sp,16 + c003279e: a70ec0ef jal ra,c001ea0e + c00327a2: e939 bnez a0,c00327f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39713 if (len > 0) { - c00325d4: 6842 ld a6,16(sp) - c00325d6: 03004b63 bgtz a6,c003260c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39704 + c00327a4: 6842 ld a6,16(sp) + c00327a6: 03004b63 bgtz a6,c00327dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39712 res = -1; - c00325da: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39724 + c00327aa: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39732 JS_FreeValue(ctx, obj); - c00325dc: 7582 ld a1,32(sp) - c00325de: 7622 ld a2,40(sp) - c00325e0: 8522 mv a0,s0 - c00325e2: d56d50ef jal ra,c0007b38 + c00327ac: 7582 ld a1,32(sp) + c00327ae: 7622 ld a2,40(sp) + c00327b0: 8522 mv a0,s0 + c00327b2: c74d50ef jal ra,c0007c26 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00325e6: 0004879b sext.w a5,s1 - c00325ea: 08f49663 bne s1,a5,c0032676 + c00327b6: 0004879b sext.w a5,s1 + c00327ba: 08f49663 bne s1,a5,c0032846 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00325ee: d282 sw zero,100(sp) - c00325f0: d0be sw a5,96(sp) - c00325f2: 7706 ld a4,96(sp) - c00325f4: e8ba sd a4,80(sp) - c00325f6: 4701 li a4,0 + c00327be: d282 sw zero,100(sp) + c00327c0: d0be sw a5,96(sp) + c00327c2: 7706 ld a4,96(sp) + c00327c4: e8ba sd a4,80(sp) + c00327c6: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00325f8: c8be sw a5,80(sp) - c00325fa: ecba sd a4,88(sp) + c00327c8: c8be sw a5,80(sp) + c00327ca: ecba sd a4,88(sp) js_array_lastIndexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39730 -} - c00325fc: 60aa ld ra,136(sp) - c00325fe: 640a ld s0,128(sp) - c0032600: 6546 ld a0,80(sp) - c0032602: 65e6 ld a1,88(sp) - c0032604: 74e6 ld s1,120(sp) - c0032606: 7946 ld s2,112(sp) - c0032608: 6149 addi sp,sp,144 - c003260a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39706 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39738 +} + c00327cc: 60aa ld ra,136(sp) + c00327ce: 640a ld s0,128(sp) + c00327d0: 6546 ld a0,80(sp) + c00327d2: 65e6 ld a1,88(sp) + c00327d4: 74e6 ld s1,120(sp) + c00327d6: 7946 ld s2,112(sp) + c00327d8: 6149 addi sp,sp,144 + c00327da: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39714 n = len - 1; - c003260c: fff80793 addi a5,a6,-1 - c0032610: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39707 + c00327dc: fff80793 addi a5,a6,-1 + c00327e0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39715 if (argc > 1) { - c0032612: 4705 li a4,1 - c0032614: 03275663 bge a4,s2,c0032640 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39708 + c00327e2: 4705 li a4,1 + c00327e4: 03275663 bge a4,s2,c0032810 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39716 if (JS_ToInt64Clamp(ctx, &n, argv[1], -1, len - 1, len)) - c0032618: 6890 ld a2,16(s1) - c003261a: 6c94 ld a3,24(s1) - c003261c: 577d li a4,-1 - c003261e: 082c addi a1,sp,24 - c0032620: 8522 mv a0,s0 - c0032622: 98cec0ef jal ra,c001e7ae - c0032626: cd09 beqz a0,c0032640 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39728 + c00327e8: 6890 ld a2,16(s1) + c00327ea: 6c94 ld a3,24(s1) + c00327ec: 577d li a4,-1 + c00327ee: 082c addi a1,sp,24 + c00327f0: 8522 mv a0,s0 + c00327f2: 98cec0ef jal ra,c001e97e + c00327f6: cd09 beqz a0,c0032810 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39736 JS_FreeValue(ctx, obj); - c0032628: 7582 ld a1,32(sp) - c003262a: 7622 ld a2,40(sp) - c003262c: 8522 mv a0,s0 - c003262e: d0ad50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39729 + c00327f8: 7582 ld a1,32(sp) + c00327fa: 7622 ld a2,40(sp) + c00327fc: 8522 mv a0,s0 + c00327fe: c28d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39737 return JS_EXCEPTION; - c0032632: 4799 li a5,6 - c0032634: e882 sd zero,80(sp) - c0032636: ecbe sd a5,88(sp) - c0032638: b7d1 j c00325fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39712 + c0032802: 4799 li a5,6 + c0032804: e882 sd zero,80(sp) + c0032806: ecbe sd a5,88(sp) + c0032808: b7d1 j c00327cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39720 for (; n >= 0; n--) { - c003263a: 67e2 ld a5,24(sp) - c003263c: 17fd addi a5,a5,-1 - c003263e: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39712 (discriminator 1) - c0032640: 66e2 ld a3,24(sp) - c0032642: f806cce3 bltz a3,c00325da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39713 + c003280a: 67e2 ld a5,24(sp) + c003280c: 17fd addi a5,a5,-1 + c003280e: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39720 (discriminator 1) + c0032810: 66e2 ld a3,24(sp) + c0032812: f806cce3 bltz a3,c00327aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39721 present = JS_TryGetPropertyInt64(ctx, obj, n, &val); - c0032646: 7582 ld a1,32(sp) - c0032648: 7622 ld a2,40(sp) - c003264a: 1818 addi a4,sp,48 - c003264c: 8522 mv a0,s0 - c003264e: e8fff0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39714 + c0032816: 7582 ld a1,32(sp) + c0032818: 7622 ld a2,40(sp) + c003281a: 1818 addi a4,sp,48 + c003281c: 8522 mv a0,s0 + c003281e: e8fff0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39722 if (present < 0) - c0032652: fc054be3 bltz a0,c0032628 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39716 + c0032822: fc054be3 bltz a0,c00327f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39724 if (present) { - c0032656: d175 beqz a0,c003263a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39717 + c0032826: d175 beqz a0,c003280a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39725 if (js_strict_eq2(ctx, JS_DupValue(ctx, argv[0]), val, JS_EQ_STRICT)) { - c0032658: 6088 ld a0,0(s1) - c003265a: 648c ld a1,8(s1) - c003265c: 812d40ef jal ra,c000666e - c0032660: 76c2 ld a3,48(sp) - c0032662: 7762 ld a4,56(sp) - c0032664: 862e mv a2,a1 - c0032666: 4781 li a5,0 - c0032668: 85aa mv a1,a0 - c003266a: 8522 mv a0,s0 - c003266c: cf0d50ef jal ra,c0007b5c - c0032670: d569 beqz a0,c003263a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39718 + c0032828: 6088 ld a0,0(s1) + c003282a: 648c ld a1,8(s1) + c003282c: f31d30ef jal ra,c000675c + c0032830: 76c2 ld a3,48(sp) + c0032832: 7762 ld a4,56(sp) + c0032834: 862e mv a2,a1 + c0032836: 4781 li a5,0 + c0032838: 85aa mv a1,a0 + c003283a: 8522 mv a0,s0 + c003283c: c0ed50ef jal ra,c0007c4a + c0032840: d569 beqz a0,c003280a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39726 res = n; - c0032672: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39719 + c0032842: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39727 break; - c0032674: b7a5 j c00325dc + c0032844: b7a5 j c00327ac JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0032676: d224f7d3 fcvt.d.l fa5,s1 - c003267a: 471d li a4,7 - c003267c: e20787d3 fmv.x.d a5,fa5 + c0032846: d224f7d3 fcvt.d.l fa5,s1 + c003284a: 471d li a4,7 + c003284c: e20787d3 fmv.x.d a5,fa5 js_array_lastIndexOf(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0032680: a8be fsd fa5,80(sp) - c0032682: 2781 sext.w a5,a5 - c0032684: bf95 j c00325f8 + c0032850: a8be fsd fa5,80(sp) + c0032852: 2781 sext.w a5,a5 + c0032854: bf95 j c00327c8 -00000000c0032686 : +00000000c0032856 : js_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39646 -{ - c0032686: 7131 addi sp,sp,-192 - c0032688: f922 sd s0,176(sp) - c003268a: f526 sd s1,168(sp) - c003268c: f14a sd s2,160(sp) - c003268e: fd06 sd ra,184(sp) - c0032690: 84aa mv s1,a0 - c0032692: e432 sd a2,8(sp) - c0032694: 8436 mv s0,a3 - c0032696: e02e sd a1,0(sp) - c0032698: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39654 +{ + c0032856: 7131 addi sp,sp,-192 + c0032858: f922 sd s0,176(sp) + c003285a: f526 sd s1,168(sp) + c003285c: f14a sd s2,160(sp) + c003285e: fd06 sd ra,184(sp) + c0032860: 84aa mv s1,a0 + c0032862: e432 sd a2,8(sp) + c0032864: 8436 mv s0,a3 + c0032866: e02e sd a1,0(sp) + c0032868: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39660 obj = JS_ToObject(ctx, this_val); - c003269a: f53f50ef jal ra,c00285ec - c003269e: 862a mv a2,a0 - c00326a0: 86ae mv a3,a1 - c00326a2: f82a sd a0,48(sp) - c00326a4: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39653 + c003286a: f53f50ef jal ra,c00287bc + c003286e: 862a mv a2,a0 + c0032870: 86ae mv a3,a1 + c0032872: f82a sd a0,48(sp) + c0032874: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39661 if (js_get_length64(ctx, &len, obj)) - c00326a6: 8526 mv a0,s1 - c00326a8: 082c addi a1,sp,24 - c00326aa: 994ec0ef jal ra,c001e83e - c00326ae: e14d bnez a0,c0032750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39657 + c0032876: 8526 mv a0,s1 + c0032878: 082c addi a1,sp,24 + c003287a: 994ec0ef jal ra,c001ea0e + c003287e: e14d bnez a0,c0032920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39665 if (len > 0) { - c00326b0: 6862 ld a6,24(sp) - c00326b2: 03004b63 bgtz a6,c00326e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39656 + c0032880: 6862 ld a6,24(sp) + c0032882: 03004b63 bgtz a6,c00328b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39664 res = -1; - c00326b6: 547d li s0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39685 + c0032886: 547d li s0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39693 JS_FreeValue(ctx, obj); - c00326b8: 75c2 ld a1,48(sp) - c00326ba: 7662 ld a2,56(sp) - c00326bc: 8526 mv a0,s1 - c00326be: c7ad50ef jal ra,c0007b38 + c0032888: 75c2 ld a1,48(sp) + c003288a: 7662 ld a2,56(sp) + c003288c: 8526 mv a0,s1 + c003288e: b98d50ef jal ra,c0007c26 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00326c2: 0004079b sext.w a5,s0 - c00326c6: 0ef41863 bne s0,a5,c00327b6 + c0032892: 0004079b sext.w a5,s0 + c0032896: 0ef41863 bne s0,a5,c0032986 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00326ca: cb02 sw zero,148(sp) - c00326cc: c93e sw a5,144(sp) - c00326ce: 674a ld a4,144(sp) - c00326d0: e13a sd a4,128(sp) - c00326d2: 4701 li a4,0 + c003289a: cb02 sw zero,148(sp) + c003289c: c93e sw a5,144(sp) + c003289e: 674a ld a4,144(sp) + c00328a0: e13a sd a4,128(sp) + c00328a2: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00326d4: c13e sw a5,128(sp) - c00326d6: e53a sd a4,136(sp) + c00328a4: c13e sw a5,128(sp) + c00328a6: e53a sd a4,136(sp) js_array_indexOf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39691 -} - c00326d8: 70ea ld ra,184(sp) - c00326da: 744a ld s0,176(sp) - c00326dc: 650a ld a0,128(sp) - c00326de: 65aa ld a1,136(sp) - c00326e0: 74aa ld s1,168(sp) - c00326e2: 790a ld s2,160(sp) - c00326e4: 6129 addi sp,sp,192 - c00326e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39699 +} + c00328a8: 70ea ld ra,184(sp) + c00328aa: 744a ld s0,176(sp) + c00328ac: 650a ld a0,128(sp) + c00328ae: 65aa ld a1,136(sp) + c00328b0: 74aa ld s1,168(sp) + c00328b2: 790a ld s2,160(sp) + c00328b4: 6129 addi sp,sp,192 + c00328b6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39666 n = 0; - c00326e8: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39659 + c00328b8: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39667 if (argc > 1) { - c00326ea: 4785 li a5,1 - c00326ec: 0487c763 blt a5,s0,c003273a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39663 + c00328ba: 4785 li a5,1 + c00328bc: 0487c763 blt a5,s0,c003290a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39671 if (js_get_fast_array(ctx, obj, &arrp, &count)) { - c00326f0: 7542 ld a0,48(sp) - c00326f2: 75e2 ld a1,56(sp) - c00326f4: 0854 addi a3,sp,20 - c00326f6: 1030 addi a2,sp,40 - c00326f8: cbbd30ef jal ra,c00063b2 - c00326fc: e15d bnez a0,c00327a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39672 (discriminator 1) + c00328c0: 7542 ld a0,48(sp) + c00328c2: 75e2 ld a1,56(sp) + c00328c4: 0854 addi a3,sp,20 + c00328c6: 1030 addi a2,sp,40 + c00328c8: bd9d30ef jal ra,c00064a0 + c00328cc: e15d bnez a0,c0032972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39680 (discriminator 1) for (; n < len; n++) { - c00326fe: 7682 ld a3,32(sp) - c0032700: 67e2 ld a5,24(sp) - c0032702: faf6dae3 bge a3,a5,c00326b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39673 + c00328ce: 7682 ld a3,32(sp) + c00328d0: 67e2 ld a5,24(sp) + c00328d2: faf6dae3 bge a3,a5,c0032886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39681 int present = JS_TryGetPropertyInt64(ctx, obj, n, &val); - c0032706: 75c2 ld a1,48(sp) - c0032708: 7662 ld a2,56(sp) - c003270a: 0098 addi a4,sp,64 - c003270c: 8526 mv a0,s1 - c003270e: dcfff0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39674 + c00328d6: 75c2 ld a1,48(sp) + c00328d8: 7662 ld a2,56(sp) + c00328da: 0098 addi a4,sp,64 + c00328dc: 8526 mv a0,s1 + c00328de: dcfff0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39682 if (present < 0) - c0032712: 02054f63 bltz a0,c0032750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39676 + c00328e2: 02054f63 bltz a0,c0032920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39684 if (present) { - c0032716: cd41 beqz a0,c00327ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39677 + c00328e6: cd41 beqz a0,c003297e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39685 if (js_strict_eq2(ctx, JS_DupValue(ctx, argv[0]), val, JS_EQ_STRICT)) { - c0032718: 00093503 ld a0,0(s2) - c003271c: 00893583 ld a1,8(s2) - c0032720: f4fd30ef jal ra,c000666e - c0032724: 6686 ld a3,64(sp) - c0032726: 6726 ld a4,72(sp) - c0032728: 862e mv a2,a1 - c003272a: 4781 li a5,0 - c003272c: 85aa mv a1,a0 - c003272e: 8526 mv a0,s1 - c0032730: c2cd50ef jal ra,c0007b5c - c0032734: cd2d beqz a0,c00327ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39678 + c00328e8: 00093503 ld a0,0(s2) + c00328ec: 00893583 ld a1,8(s2) + c00328f0: e6dd30ef jal ra,c000675c + c00328f4: 6686 ld a3,64(sp) + c00328f6: 6726 ld a4,72(sp) + c00328f8: 862e mv a2,a1 + c00328fa: 4781 li a5,0 + c00328fc: 85aa mv a1,a0 + c00328fe: 8526 mv a0,s1 + c0032900: b4ad50ef jal ra,c0007c4a + c0032904: cd2d beqz a0,c003297e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39686 res = n; - c0032736: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39679 + c0032906: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39687 break; - c0032738: b741 j c00326b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39660 + c0032908: b741 j c0032888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39668 if (JS_ToInt64Clamp(ctx, &n, argv[1], 0, len, len)) - c003273a: 01093603 ld a2,16(s2) - c003273e: 01893683 ld a3,24(s2) - c0032742: 87c2 mv a5,a6 - c0032744: 4701 li a4,0 - c0032746: 100c addi a1,sp,32 - c0032748: 8526 mv a0,s1 - c003274a: 864ec0ef jal ra,c001e7ae - c003274e: d14d beqz a0,c00326f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39689 + c003290a: 01093603 ld a2,16(s2) + c003290e: 01893683 ld a3,24(s2) + c0032912: 87c2 mv a5,a6 + c0032914: 4701 li a4,0 + c0032916: 100c addi a1,sp,32 + c0032918: 8526 mv a0,s1 + c003291a: 864ec0ef jal ra,c001e97e + c003291e: d14d beqz a0,c00328c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39697 JS_FreeValue(ctx, obj); - c0032750: 75c2 ld a1,48(sp) - c0032752: 7662 ld a2,56(sp) - c0032754: 8526 mv a0,s1 - c0032756: be2d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39690 + c0032920: 75c2 ld a1,48(sp) + c0032922: 7662 ld a2,56(sp) + c0032924: 8526 mv a0,s1 + c0032926: b00d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39698 return JS_EXCEPTION; - c003275a: 4799 li a5,6 - c003275c: e102 sd zero,128(sp) - c003275e: e53e sd a5,136(sp) - c0032760: bfa5 j c00326d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39665 + c003292a: 4799 li a5,6 + c003292c: e102 sd zero,128(sp) + c003292e: e53e sd a5,136(sp) + c0032930: bfa5 j c00328a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39673 if (js_strict_eq2(ctx, JS_DupValue(ctx, argv[0]), - c0032762: 00093503 ld a0,0(s2) - c0032766: 00893583 ld a1,8(s2) - c003276a: f05d30ef jal ra,c000666e - c003276e: 7782 ld a5,32(sp) - c0032770: e8aa sd a0,80(sp) - c0032772: ecae sd a1,88(sp) - c0032774: 00479713 slli a4,a5,0x4 - c0032778: 77a2 ld a5,40(sp) - c003277a: 97ba add a5,a5,a4 - c003277c: 6388 ld a0,0(a5) - c003277e: 678c ld a1,8(a5) - c0032780: eefd30ef jal ra,c000666e - c0032784: 872e mv a4,a1 - c0032786: f4ae sd a1,104(sp) - c0032788: 6666 ld a2,88(sp) - c003278a: 65c6 ld a1,80(sp) - c003278c: 86aa mv a3,a0 - c003278e: f0aa sd a0,96(sp) - c0032790: 4781 li a5,0 - c0032792: 8526 mv a0,s1 - c0032794: bc8d50ef jal ra,c0007b5c - c0032798: 7402 ld s0,32(sp) - c003279a: f0051fe3 bnez a0,c00326b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39664 - for (; n < count; n++) { - c003279e: 0405 addi s0,s0,1 - c00327a0: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39664 (discriminator 1) - c00327a2: 01416703 lwu a4,20(sp) - c00327a6: 7782 ld a5,32(sp) - c00327a8: fae7cde3 blt a5,a4,c0032762 - c00327ac: bf89 j c00326fe + c0032932: 00093503 ld a0,0(s2) + c0032936: 00893583 ld a1,8(s2) + c003293a: e23d30ef jal ra,c000675c + c003293e: 7782 ld a5,32(sp) + c0032940: e8aa sd a0,80(sp) + c0032942: ecae sd a1,88(sp) + c0032944: 00479713 slli a4,a5,0x4 + c0032948: 77a2 ld a5,40(sp) + c003294a: 97ba add a5,a5,a4 + c003294c: 6388 ld a0,0(a5) + c003294e: 678c ld a1,8(a5) + c0032950: e0dd30ef jal ra,c000675c + c0032954: 872e mv a4,a1 + c0032956: f4ae sd a1,104(sp) + c0032958: 6666 ld a2,88(sp) + c003295a: 65c6 ld a1,80(sp) + c003295c: 86aa mv a3,a0 + c003295e: f0aa sd a0,96(sp) + c0032960: 4781 li a5,0 + c0032962: 8526 mv a0,s1 + c0032964: ae6d50ef jal ra,c0007c4a + c0032968: 7402 ld s0,32(sp) + c003296a: f0051fe3 bnez a0,c0032888 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39672 + for (; n < count; n++) { + c003296e: 0405 addi s0,s0,1 + c0032970: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39672 (discriminator 1) + c0032972: 01416703 lwu a4,20(sp) + c0032976: 7782 ld a5,32(sp) + c0032978: fae7cde3 blt a5,a4,c0032932 + c003297c: bf89 j c00328ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39680 for (; n < len; n++) { - c00327ae: 7782 ld a5,32(sp) - c00327b0: 0785 addi a5,a5,1 - c00327b2: f03e sd a5,32(sp) - c00327b4: b7a9 j c00326fe + c003297e: 7782 ld a5,32(sp) + c0032980: 0785 addi a5,a5,1 + c0032982: f03e sd a5,32(sp) + c0032984: b7a9 j c00328ce JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c00327b6: d22477d3 fcvt.d.l fa5,s0 - c00327ba: 471d li a4,7 - c00327bc: e20787d3 fmv.x.d a5,fa5 + c0032986: d22477d3 fcvt.d.l fa5,s0 + c003298a: 471d li a4,7 + c003298c: e20787d3 fmv.x.d a5,fa5 js_array_indexOf(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00327c0: a13e fsd fa5,128(sp) - c00327c2: 2781 sext.w a5,a5 - c00327c4: bf01 j c00326d4 + c0032990: a13e fsd fa5,128(sp) + c0032992: 2781 sext.w a5,a5 + c0032994: bf01 j c00328a4 -00000000c00327c6 : +00000000c0032996 : js_array_at(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39136 -{ - c00327c6: 7119 addi sp,sp,-128 - c00327c8: f8a2 sd s0,112(sp) - c00327ca: f4a6 sd s1,104(sp) - c00327cc: fc86 sd ra,120(sp) - c00327ce: 842a mv s0,a0 - c00327d0: e432 sd a2,8(sp) - c00327d2: e02e sd a1,0(sp) - c00327d4: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39144 +{ + c0032996: 7119 addi sp,sp,-128 + c0032998: f8a2 sd s0,112(sp) + c003299a: f4a6 sd s1,104(sp) + c003299c: fc86 sd ra,120(sp) + c003299e: 842a mv s0,a0 + c00329a0: e432 sd a2,8(sp) + c00329a2: e02e sd a1,0(sp) + c00329a4: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39150 obj = JS_ToObject(ctx, this_val); - c00327d6: e17f50ef jal ra,c00285ec - c00327da: 862a mv a2,a0 - c00327dc: 86ae mv a3,a1 - c00327de: f82a sd a0,48(sp) - c00327e0: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39143 + c00329a6: e17f50ef jal ra,c00287bc + c00329aa: 862a mv a2,a0 + c00329ac: 86ae mv a3,a1 + c00329ae: f82a sd a0,48(sp) + c00329b0: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39151 if (js_get_length64(ctx, &len, obj)) - c00327e2: 8522 mv a0,s0 - c00327e4: 082c addi a1,sp,24 - c00327e6: 858ec0ef jal ra,c001e83e - c00327ea: e559 bnez a0,c0032878 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39146 + c00329b2: 8522 mv a0,s0 + c00329b4: 082c addi a1,sp,24 + c00329b6: 858ec0ef jal ra,c001ea0e + c00329ba: e559 bnez a0,c0032a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39154 if (JS_ToInt64Sat(ctx, &idx, argv[0])) - c00327ec: 6090 ld a2,0(s1) - c00327ee: 6494 ld a3,8(s1) - c00327f0: 100c addi a1,sp,32 - c00327f2: 8522 mv a0,s0 - c00327f4: a6beb0ef jal ra,c001e25e - c00327f8: e141 bnez a0,c0032878 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39149 + c00329bc: 6090 ld a2,0(s1) + c00329be: 6494 ld a3,8(s1) + c00329c0: 100c addi a1,sp,32 + c00329c2: 8522 mv a0,s0 + c00329c4: a6beb0ef jal ra,c001e42e + c00329c8: e141 bnez a0,c0032a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39157 if (idx < 0) - c00327fa: 7702 ld a4,32(sp) - c00327fc: 00075563 bgez a4,c0032806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39150 + c00329ca: 7702 ld a4,32(sp) + c00329cc: 00075563 bgez a4,c00329d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39158 idx = len + idx; - c0032800: 67e2 ld a5,24(sp) - c0032802: 97ba add a5,a5,a4 - c0032804: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39151 + c00329d0: 67e2 ld a5,24(sp) + c00329d2: 97ba add a5,a5,a4 + c00329d4: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39159 if (idx < 0 || idx >= len) { - c0032806: 7782 ld a5,32(sp) - c0032808: 0007c563 bltz a5,c0032812 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39151 (discriminator 1) - c003280c: 6762 ld a4,24(sp) - c003280e: 02e7c563 blt a5,a4,c0032838 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39152 + c00329d6: 7782 ld a5,32(sp) + c00329d8: 0007c563 bltz a5,c00329e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39159 (discriminator 1) + c00329dc: 6762 ld a4,24(sp) + c00329de: 02e7c563 blt a5,a4,c0032a08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39160 ret = JS_UNDEFINED; - c0032812: 478d li a5,3 - c0032814: e082 sd zero,64(sp) - c0032816: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39162 + c00329e2: 478d li a5,3 + c00329e4: e082 sd zero,64(sp) + c00329e6: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39170 JS_FreeValue(ctx, obj); - c0032818: 75c2 ld a1,48(sp) - c003281a: 7662 ld a2,56(sp) - c003281c: 8522 mv a0,s0 - c003281e: b1ad50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39163 + c00329e8: 75c2 ld a1,48(sp) + c00329ea: 7662 ld a2,56(sp) + c00329ec: 8522 mv a0,s0 + c00329ee: a38d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39171 return ret; - c0032822: 6786 ld a5,64(sp) - c0032824: e8be sd a5,80(sp) - c0032826: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39167 -} - c0032828: 70e6 ld ra,120(sp) - c003282a: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39166 + c00329f2: 6786 ld a5,64(sp) + c00329f4: e8be sd a5,80(sp) + c00329f6: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39175 +} + c00329f8: 70e6 ld ra,120(sp) + c00329fa: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39174 return JS_EXCEPTION; - c003282c: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39167 -} - c003282e: 6546 ld a0,80(sp) - c0032830: 65e6 ld a1,88(sp) - c0032832: 74a6 ld s1,104(sp) - c0032834: 6109 addi sp,sp,128 - c0032836: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39153 + c00329fc: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39175 +} + c00329fe: 6546 ld a0,80(sp) + c0032a00: 65e6 ld a1,88(sp) + c0032a02: 74a6 ld s1,104(sp) + c0032a04: 6109 addi sp,sp,128 + c0032a06: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39161 } else if (js_get_fast_array(ctx, obj, &arrp, &count) && idx < count) { - c0032838: 7542 ld a0,48(sp) - c003283a: 75e2 ld a1,56(sp) - c003283c: 0854 addi a3,sp,20 - c003283e: 1030 addi a2,sp,40 - c0032840: b73d30ef jal ra,c00063b2 - c0032844: 7682 ld a3,32(sp) - c0032846: cd19 beqz a0,c0032864 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39153 (discriminator 1) - c0032848: 01416783 lwu a5,20(sp) - c003284c: 00f6dc63 bge a3,a5,c0032864 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39154 + c0032a08: 7542 ld a0,48(sp) + c0032a0a: 75e2 ld a1,56(sp) + c0032a0c: 0854 addi a3,sp,20 + c0032a0e: 1030 addi a2,sp,40 + c0032a10: a91d30ef jal ra,c00064a0 + c0032a14: 7682 ld a3,32(sp) + c0032a16: cd19 beqz a0,c0032a34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39161 (discriminator 1) + c0032a18: 01416783 lwu a5,20(sp) + c0032a1c: 00f6dc63 bge a3,a5,c0032a34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39162 ret = JS_DupValue(ctx, arrp[idx]); - c0032850: 77a2 ld a5,40(sp) - c0032852: 0692 slli a3,a3,0x4 - c0032854: 96be add a3,a3,a5 - c0032856: 6288 ld a0,0(a3) - c0032858: 668c ld a1,8(a3) - c003285a: e15d30ef jal ra,c000666e - c003285e: e0aa sd a0,64(sp) - c0032860: e4ae sd a1,72(sp) - c0032862: bf5d j c0032818 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39156 + c0032a20: 77a2 ld a5,40(sp) + c0032a22: 0692 slli a3,a3,0x4 + c0032a24: 96be add a3,a3,a5 + c0032a26: 6288 ld a0,0(a3) + c0032a28: 668c ld a1,8(a3) + c0032a2a: d33d30ef jal ra,c000675c + c0032a2e: e0aa sd a0,64(sp) + c0032a30: e4ae sd a1,72(sp) + c0032a32: bf5d j c00329e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39164 int present = JS_TryGetPropertyInt64(ctx, obj, idx, &ret); - c0032864: 75c2 ld a1,48(sp) - c0032866: 7662 ld a2,56(sp) - c0032868: 0098 addi a4,sp,64 - c003286a: 8522 mv a0,s0 - c003286c: c71ff0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39157 + c0032a34: 75c2 ld a1,48(sp) + c0032a36: 7662 ld a2,56(sp) + c0032a38: 0098 addi a4,sp,64 + c0032a3a: 8522 mv a0,s0 + c0032a3c: c71ff0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39165 if (present < 0) - c0032870: 00054463 bltz a0,c0032878 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39159 + c0032a40: 00054463 bltz a0,c0032a48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39167 if (!present) - c0032874: dd59 beqz a0,c0032812 - c0032876: b74d j c0032818 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39165 + c0032a44: dd59 beqz a0,c00329e2 + c0032a46: b74d j c00329e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39173 JS_FreeValue(ctx, obj); - c0032878: 75c2 ld a1,48(sp) - c003287a: 7662 ld a2,56(sp) - c003287c: 8522 mv a0,s0 - c003287e: abad50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39166 + c0032a48: 75c2 ld a1,48(sp) + c0032a4a: 7662 ld a2,56(sp) + c0032a4c: 8522 mv a0,s0 + c0032a4e: 9d8d50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39174 return JS_EXCEPTION; - c0032882: 4799 li a5,6 - c0032884: e882 sd zero,80(sp) - c0032886: b74d j c0032828 + c0032a52: 4799 li a5,6 + c0032a54: e882 sd zero,80(sp) + c0032a56: b74d j c00329f8 -00000000c0032888 : +00000000c0032a58 : js_array_toSpliced(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40216 -{ - c0032888: 716d addi sp,sp,-272 - c003288a: fda6 sd s1,248(sp) - c003288c: f1d2 sd s4,224(sp) - c003288e: f96a sd s10,176(sp) - c0032890: e606 sd ra,264(sp) - c0032892: e222 sd s0,256(sp) - c0032894: f9ca sd s2,240(sp) - c0032896: f5ce sd s3,232(sp) - c0032898: edd6 sd s5,216(sp) - c003289a: e9da sd s6,208(sp) - c003289c: e5de sd s7,200(sp) - c003289e: e1e2 sd s8,192(sp) - c00328a0: fd66 sd s9,184(sp) - c00328a2: f56e sd s11,168(sp) - c00328a4: 8a2a mv s4,a0 - c00328a6: ec32 sd a2,24(sp) - c00328a8: 84b6 mv s1,a3 - c00328aa: e82e sd a1,16(sp) - c00328ac: 8d3a mv s10,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40227 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40224 +{ + c0032a58: 716d addi sp,sp,-272 + c0032a5a: fda6 sd s1,248(sp) + c0032a5c: f1d2 sd s4,224(sp) + c0032a5e: f96a sd s10,176(sp) + c0032a60: e606 sd ra,264(sp) + c0032a62: e222 sd s0,256(sp) + c0032a64: f9ca sd s2,240(sp) + c0032a66: f5ce sd s3,232(sp) + c0032a68: edd6 sd s5,216(sp) + c0032a6a: e9da sd s6,208(sp) + c0032a6c: e5de sd s7,200(sp) + c0032a6e: e1e2 sd s8,192(sp) + c0032a70: fd66 sd s9,184(sp) + c0032a72: f56e sd s11,168(sp) + c0032a74: 8a2a mv s4,a0 + c0032a76: ec32 sd a2,24(sp) + c0032a78: 84b6 mv s1,a3 + c0032a7a: e82e sd a1,16(sp) + c0032a7c: 8d3a mv s10,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40235 obj = JS_ToObject(ctx, this_val); - c00328ae: d3ff50ef jal ra,c00285ec - c00328b2: 862a mv a2,a0 - c00328b4: 86ae mv a3,a1 - c00328b6: f0aa sd a0,96(sp) - c00328b8: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40228 + c0032a7e: d3ff50ef jal ra,c00287bc + c0032a82: 862a mv a2,a0 + c0032a84: 86ae mv a3,a1 + c0032a86: f0aa sd a0,96(sp) + c0032a88: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40236 if (js_get_length64(ctx, &len, obj)) - c00328ba: 8552 mv a0,s4 - c00328bc: 182c addi a1,sp,56 - c00328be: f81eb0ef jal ra,c001e83e - c00328c2: e529 bnez a0,c003290c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40231 + c0032a8a: 8552 mv a0,s4 + c0032a8c: 182c addi a1,sp,56 + c0032a8e: f81eb0ef jal ra,c001ea0e + c0032a92: e529 bnez a0,c0032adc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40239 start = 0; - c00328c4: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40232 + c0032a94: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40240 if (argc > 0) - c00328c6: 02904763 bgtz s1,c00328f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40236 + c0032a96: 02904763 bgtz s1,c0032ac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40244 del = 0; - c00328ca: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40237 + c0032a9a: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40245 if (argc > 0) - c00328cc: 04904563 bgtz s1,c0032916 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40243 + c0032a9c: 04904563 bgtz s1,c0032ae6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40251 add = 0; - c00328d0: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40247 + c0032aa0: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40255 newlen = len + add - del; - c00328d2: 67a6 ld a5,72(sp) - c00328d4: 7ce2 ld s9,56(sp) - c00328d6: 40fc8cb3 sub s9,s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40248 + c0032aa2: 67a6 ld a5,72(sp) + c0032aa4: 7ce2 ld s9,56(sp) + c0032aa6: 40fc8cb3 sub s9,s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40256 if (newlen > MAX_SAFE_INTEGER) { - c00328da: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40247 + c0032aaa: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40255 newlen = len + add - del; - c00328dc: 9ca6 add s9,s9,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40248 + c0032aac: 9ca6 add s9,s9,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40256 if (newlen > MAX_SAFE_INTEGER) { - c00328de: 83ad srli a5,a5,0xb - c00328e0: 0797d263 bge a5,s9,c0032944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40249 + c0032aae: 83ad srli a5,a5,0xb + c0032ab0: 0797d263 bge a5,s9,c0032b14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40257 JS_ThrowTypeError(ctx, "invalid array length"); - c00328e4: 8552 mv a0,s4 - c00328e6: 0002c597 auipc a1,0x2c - c00328ea: 86258593 addi a1,a1,-1950 # c005e148 - c00328ee: b09e00ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40250 + c0032ab4: 8552 mv a0,s4 + c0032ab6: 0002c597 auipc a1,0x2c + c0032aba: 8f258593 addi a1,a1,-1806 # c005e3a8 + c0032abe: a27e00ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40258 goto exception; - c00328f2: a829 j c003290c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40233 + c0032ac2: a829 j c0032adc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40241 if (JS_ToInt64Clamp(ctx, &start, argv[0], 0, len, len)) - c00328f4: 7862 ld a6,56(sp) - c00328f6: 000d3603 ld a2,0(s10) - c00328fa: 008d3683 ld a3,8(s10) - c00328fe: 87c2 mv a5,a6 - c0032900: 4701 li a4,0 - c0032902: 008c addi a1,sp,64 - c0032904: 8552 mv a0,s4 - c0032906: ea9eb0ef jal ra,c001e7ae - c003290a: d161 beqz a0,c00328ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40224 + c0032ac4: 7862 ld a6,56(sp) + c0032ac6: 000d3603 ld a2,0(s10) + c0032aca: 008d3683 ld a3,8(s10) + c0032ace: 87c2 mv a5,a6 + c0032ad0: 4701 li a4,0 + c0032ad2: 008c addi a1,sp,64 + c0032ad4: 8552 mv a0,s4 + c0032ad6: ea9eb0ef jal ra,c001e97e + c0032ada: d161 beqz a0,c0032a9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40232 ret = JS_EXCEPTION; - c003290c: 4499 li s1,6 - c003290e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40289 + c0032adc: 4499 li s1,6 + c0032ade: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40297 arr = JS_UNDEFINED; - c0032910: 4b8d li s7,3 - c0032912: 4c01 li s8,0 - c0032914: a401 j c0032b14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40238 + c0032ae0: 4b8d li s7,3 + c0032ae2: 4c01 li s8,0 + c0032ae4: a401 j c0032ce4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40246 del = len - start; - c0032916: 6706 ld a4,64(sp) - c0032918: 77e2 ld a5,56(sp) - c003291a: 8f99 sub a5,a5,a4 - c003291c: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40239 + c0032ae6: 6706 ld a4,64(sp) + c0032ae8: 77e2 ld a5,56(sp) + c0032aea: 8f99 sub a5,a5,a4 + c0032aec: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40247 if (argc > 1) - c003291e: 4705 li a4,1 - c0032920: fae488e3 beq s1,a4,c00328d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40240 + c0032aee: 4705 li a4,1 + c0032af0: fae488e3 beq s1,a4,c0032aa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40248 if (JS_ToInt64Clamp(ctx, &del, argv[1], 0, del, 0)) - c0032924: 010d3603 ld a2,16(s10) - c0032928: 018d3683 ld a3,24(s10) - c003292c: 4801 li a6,0 - c003292e: 4701 li a4,0 - c0032930: 00ac addi a1,sp,72 - c0032932: 8552 mv a0,s4 - c0032934: e7beb0ef jal ra,c001e7ae - c0032938: f971 bnez a0,c003290c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40244 + c0032af4: 010d3603 ld a2,16(s10) + c0032af8: 018d3683 ld a3,24(s10) + c0032afc: 4801 li a6,0 + c0032afe: 4701 li a4,0 + c0032b00: 00ac addi a1,sp,72 + c0032b02: 8552 mv a0,s4 + c0032b04: e7beb0ef jal ra,c001e97e + c0032b08: f971 bnez a0,c0032adc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40252 if (argc > 2) - c003293a: 4789 li a5,2 - c003293c: f8f48ae3 beq s1,a5,c00328d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40245 - add = argc - 2; - c0032940: 34f9 addiw s1,s1,-2 - c0032942: bf41 j c00328d2 + c0032b0a: 4789 li a5,2 + c0032b0c: f8f48ae3 beq s1,a5,c0032aa0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40253 + add = argc - 2; + c0032b10: 34f9 addiw s1,s1,-2 + c0032b12: bf41 j c0032aa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40261 arr = js_allocate_fast_array(ctx, newlen); - c0032944: 85e6 mv a1,s9 - c0032946: 8552 mv a0,s4 - c0032948: cf5e40ef jal ra,c001763c - c003294c: e8aa sd a0,80(sp) - c003294e: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40254 + c0032b14: 85e6 mv a1,s9 + c0032b16: 8552 mv a0,s4 + c0032b18: cf5e40ef jal ra,c001780c + c0032b1c: e8aa sd a0,80(sp) + c0032b1e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40262 if (JS_IsException(arr)) - c0032950: 0005871b sext.w a4,a1 - c0032954: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40253 + c0032b20: 0005871b sext.w a4,a1 + c0032b24: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40261 arr = js_allocate_fast_array(ctx, newlen); - c0032956: 89aa mv s3,a0 - c0032958: 892e mv s2,a1 - c003295a: 8c2a mv s8,a0 - c003295c: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40254 + c0032b26: 89aa mv s3,a0 + c0032b28: 892e mv s2,a1 + c0032b2a: 8c2a mv s8,a0 + c0032b2c: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40262 if (JS_IsException(arr)) - c003295e: 1af70963 beq a4,a5,c0032b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40257 + c0032b2e: 1af70963 beq a4,a5,c0032ce0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40265 if (newlen <= 0) - c0032962: 1b905d63 blez s9,c0032b1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40261 + c0032b32: 1b905d63 blez s9,c0032cec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 pval = &p->u.array.u.values[0]; - c0032966: 03853d83 ld s11,56(a0) # 1038 <__clzdi2-0xbfffefc8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40264 + c0032b36: 03853d83 ld s11,56(a0) # 1038 <__clzdi2-0xbfffefc8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c003296a: 75a6 ld a1,104(sp) - c003296c: 7506 ld a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40262 + c0032b3a: 75a6 ld a1,104(sp) + c0032b3c: 7506 ld a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40270 last = &p->u.array.u.values[newlen]; - c003296e: 004c9b13 slli s6,s9,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40264 + c0032b3e: 004c9b13 slli s6,s9,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032972: 1074 addi a3,sp,44 - c0032974: 1810 addi a2,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40262 + c0032b42: 1074 addi a3,sp,44 + c0032b44: 1810 addi a2,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40270 last = &p->u.array.u.values[newlen]; - c0032976: 9b6e add s6,s6,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40264 + c0032b46: 9b6e add s6,s6,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032978: a3bd30ef jal ra,c00063b2 - c003297c: 0e050763 beqz a0,c0032a6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40264 (discriminator 1) - c0032980: 02c16703 lwu a4,44(sp) - c0032984: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40265 (discriminator 1) + c0032b48: 959d30ef jal ra,c00064a0 + c0032b4c: 0e050763 beqz a0,c0032c3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 (discriminator 1) + c0032b50: 02c16703 lwu a4,44(sp) + c0032b54: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40273 (discriminator 1) for (i = 0; i < start; i++, pval++) - c0032986: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40264 (discriminator 1) - if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032988: 04f70c63 beq a4,a5,c00329e0 + c0032b56: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 (discriminator 1) + if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { + c0032b58: 04f70c63 beq a4,a5,c0032bb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40280 (discriminator 1) for (i = 0; i < start; i++, pval++) - c003298c: 6786 ld a5,64(sp) - c003298e: 004a9413 slli s0,s5,0x4 - c0032992: 946e add s0,s0,s11 - c0032994: 0afacf63 blt s5,a5,c0032a52 - c0032998: 0492 slli s1,s1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 - c003299a: 4d81 li s11,0 - c003299c: 01b407b3 add a5,s0,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40275 (discriminator 1) + c0032b5c: 6786 ld a5,64(sp) + c0032b5e: 004a9413 slli s0,s5,0x4 + c0032b62: 946e add s0,s0,s11 + c0032b64: 0afacf63 blt s5,a5,c0032c22 + c0032b68: 0492 slli s1,s1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40280 + c0032b6a: 4d81 li s11,0 + c0032b6c: 01b407b3 add a5,s0,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40283 (discriminator 1) for (j = 0; j < add; j++, pval++) - c00329a0: 0db49763 bne s1,s11,c0032a6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 + c0032b70: 0db49763 bne s1,s11,c0032c3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40285 for (i += del; i < len; i++, pval++) - c00329a4: 66a6 ld a3,72(sp) - c00329a6: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40278 + c0032b74: 66a6 ld a3,72(sp) + c0032b76: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40286 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) - c00329a8: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 + c0032b78: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40285 for (i += del; i < len; i++, pval++) - c00329aa: 9ab6 add s5,s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 1) - c00329ac: 77e2 ld a5,56(sp) - c00329ae: 04fadb63 bge s5,a5,c0032a04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40278 + c0032b7a: 9ab6 add s5,s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40285 (discriminator 1) + c0032b7c: 77e2 ld a5,56(sp) + c0032b7e: 04fadb63 bge s5,a5,c0032bd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40286 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) - c00329b2: 7586 ld a1,96(sp) - c00329b4: 7626 ld a2,104(sp) - c00329b6: 8722 mv a4,s0 - c00329b8: 86d6 mv a3,s5 - c00329ba: 8552 mv a0,s4 - c00329bc: b21ff0ef jal ra,c00324dc - c00329c0: 16950063 beq a0,s1,c0032b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 2) + c0032b82: 7586 ld a1,96(sp) + c0032b84: 7626 ld a2,104(sp) + c0032b86: 8722 mv a4,s0 + c0032b88: 86d6 mv a3,s5 + c0032b8a: 8552 mv a0,s4 + c0032b8c: b21ff0ef jal ra,c00326ac + c0032b90: 16950063 beq a0,s1,c0032cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40285 (discriminator 2) for (i += del; i < len; i++, pval++) - c00329c4: 0a85 addi s5,s5,1 - c00329c6: 0441 addi s0,s0,16 - c00329c8: b7d5 j c00329ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40266 (discriminator 3) + c0032b94: 0a85 addi s5,s5,1 + c0032b96: 0441 addi s0,s0,16 + c0032b98: b7d5 j c0032b7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40274 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c00329ca: 77c2 ld a5,48(sp) - c00329cc: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40265 (discriminator 3) + c0032b9a: 77c2 ld a5,48(sp) + c0032b9c: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40273 (discriminator 3) for (i = 0; i < start; i++, pval++) - c00329ce: 0a85 addi s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40266 (discriminator 3) + c0032b9e: 0a85 addi s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40274 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c00329d0: 97b6 add a5,a5,a3 - c00329d2: 6388 ld a0,0(a5) - c00329d4: 678c ld a1,8(a5) - c00329d6: c99d30ef jal ra,c000666e - c00329da: 6722 ld a4,8(sp) - c00329dc: e308 sd a0,0(a4) - c00329de: e70c sd a1,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40265 (discriminator 1) + c0032ba0: 97b6 add a5,a5,a3 + c0032ba2: 6388 ld a0,0(a5) + c0032ba4: 678c ld a1,8(a5) + c0032ba6: bb7d30ef jal ra,c000675c + c0032baa: 6722 ld a4,8(sp) + c0032bac: e308 sd a0,0(a4) + c0032bae: e70c sd a1,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40273 (discriminator 1) for (i = 0; i < start; i++, pval++) - c00329e0: 6786 ld a5,64(sp) - c00329e2: 004a9693 slli a3,s5,0x4 - c00329e6: 00dd8733 add a4,s11,a3 - c00329ea: fefac0e3 blt s5,a5,c00329ca - c00329ee: 0492 slli s1,s1,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40265 - c00329f0: 4d81 li s11,0 - c00329f2: 01b70433 add s0,a4,s11 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40267 (discriminator 1) + c0032bb0: 6786 ld a5,64(sp) + c0032bb2: 004a9693 slli a3,s5,0x4 + c0032bb6: 00dd8733 add a4,s11,a3 + c0032bba: fefac0e3 blt s5,a5,c0032b9a + c0032bbe: 0492 slli s1,s1,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40273 + c0032bc0: 4d81 li s11,0 + c0032bc2: 01b70433 add s0,a4,s11 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40275 (discriminator 1) for (j = 0; j < add; j++, pval++) - c00329f6: 03b49363 bne s1,s11,c0032a1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 + c0032bc6: 03b49363 bne s1,s11,c0032bec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 for (i += del; i < len; i++, pval++) - c00329fa: 67a6 ld a5,72(sp) - c00329fc: 9abe add s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 (discriminator 1) - c00329fe: 77e2 ld a5,56(sp) - c0032a00: 02faca63 blt s5,a5,c0032a34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40282 + c0032bca: 67a6 ld a5,72(sp) + c0032bcc: 9abe add s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 1) + c0032bce: 77e2 ld a5,56(sp) + c0032bd0: 02faca63 blt s5,a5,c0032c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40290 assert(pval == last); - c0032a04: 09640163 beq s0,s6,c0032a86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40282 (discriminator 1) - c0032a08: 65a9 lui a1,0xa - c0032a0a: 4601 li a2,0 - c0032a0c: d5a58593 addi a1,a1,-678 # 9d5a <__clzdi2-0xbfff62a6> - c0032a10: 0002a517 auipc a0,0x2a - c0032a14: 06850513 addi a0,a0,104 # c005ca78 - c0032a18: 000210ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40268 (discriminator 3) + c0032bd4: 09640163 beq s0,s6,c0032c56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40290 (discriminator 1) + c0032bd8: 65a9 lui a1,0xa + c0032bda: 4601 li a2,0 + c0032bdc: d6258593 addi a1,a1,-670 # 9d62 <__clzdi2-0xbfff629e> + c0032be0: 0002a517 auipc a0,0x2a + c0032be4: 06850513 addi a0,a0,104 # c005cc48 + c0032be8: 000210ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40276 (discriminator 3) *pval = JS_DupValue(ctx, argv[2 + j]); - c0032a1c: 01bd07b3 add a5,s10,s11 - c0032a20: 7388 ld a0,32(a5) - c0032a22: 778c ld a1,40(a5) - c0032a24: e43a sd a4,8(sp) - c0032a26: 0dc1 addi s11,s11,16 - c0032a28: c47d30ef jal ra,c000666e - c0032a2c: 6722 ld a4,8(sp) - c0032a2e: e008 sd a0,0(s0) - c0032a30: e40c sd a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40267 (discriminator 3) + c0032bec: 01bd07b3 add a5,s10,s11 + c0032bf0: 7388 ld a0,32(a5) + c0032bf2: 778c ld a1,40(a5) + c0032bf4: e43a sd a4,8(sp) + c0032bf6: 0dc1 addi s11,s11,16 + c0032bf8: b65d30ef jal ra,c000675c + c0032bfc: 6722 ld a4,8(sp) + c0032bfe: e008 sd a0,0(s0) + c0032c00: e40c sd a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40275 (discriminator 3) for (j = 0; j < add; j++, pval++) - c0032a32: b7c1 j c00329f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40270 (discriminator 3) + c0032c02: b7c1 j c0032bc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40278 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032a34: 77c2 ld a5,48(sp) - c0032a36: 004a9713 slli a4,s5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 (discriminator 3) + c0032c04: 77c2 ld a5,48(sp) + c0032c06: 004a9713 slli a4,s5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 3) for (i += del; i < len; i++, pval++) - c0032a3a: 0441 addi s0,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40270 (discriminator 3) + c0032c0a: 0441 addi s0,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40278 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032a3c: 97ba add a5,a5,a4 - c0032a3e: 6388 ld a0,0(a5) - c0032a40: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 (discriminator 3) + c0032c0c: 97ba add a5,a5,a4 + c0032c0e: 6388 ld a0,0(a5) + c0032c10: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 3) for (i += del; i < len; i++, pval++) - c0032a42: 0a85 addi s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40270 (discriminator 3) + c0032c12: 0a85 addi s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40278 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032a44: c2bd30ef jal ra,c000666e - c0032a48: fea43823 sd a0,-16(s0) - c0032a4c: feb43c23 sd a1,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40269 (discriminator 3) + c0032c14: b49d30ef jal ra,c000675c + c0032c18: fea43823 sd a0,-16(s0) + c0032c1c: feb43c23 sd a1,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40277 (discriminator 3) for (i += del; i < len; i++, pval++) - c0032a50: b77d j c00329fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40273 + c0032c20: b77d j c0032bce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40281 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) - c0032a52: 7586 ld a1,96(sp) - c0032a54: 7626 ld a2,104(sp) - c0032a56: 8722 mv a4,s0 - c0032a58: 86d6 mv a3,s5 - c0032a5a: 8552 mv a0,s4 - c0032a5c: a81ff0ef jal ra,c00324dc - c0032a60: 587d li a6,-1 - c0032a62: 0b050f63 beq a0,a6,c0032b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40272 (discriminator 2) + c0032c22: 7586 ld a1,96(sp) + c0032c24: 7626 ld a2,104(sp) + c0032c26: 8722 mv a4,s0 + c0032c28: 86d6 mv a3,s5 + c0032c2a: 8552 mv a0,s4 + c0032c2c: a81ff0ef jal ra,c00326ac + c0032c30: 587d li a6,-1 + c0032c32: 0b050f63 beq a0,a6,c0032cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40280 (discriminator 2) for (i = 0; i < start; i++, pval++) - c0032a66: 0a85 addi s5,s5,1 - c0032a68: b715 j c003298c - c0032a6a: 4a81 li s5,0 - c0032a6c: b705 j c003298c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40276 (discriminator 3) + c0032c36: 0a85 addi s5,s5,1 + c0032c38: b715 j c0032b5c + c0032c3a: 4a81 li s5,0 + c0032c3c: b705 j c0032b5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40284 (discriminator 3) *pval = JS_DupValue(ctx, argv[2 + j]); - c0032a6e: 01bd0733 add a4,s10,s11 - c0032a72: 7308 ld a0,32(a4) - c0032a74: 770c ld a1,40(a4) - c0032a76: e43e sd a5,8(sp) - c0032a78: 0dc1 addi s11,s11,16 - c0032a7a: bf5d30ef jal ra,c000666e - c0032a7e: 67a2 ld a5,8(sp) - c0032a80: e388 sd a0,0(a5) - c0032a82: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40275 (discriminator 3) + c0032c3e: 01bd0733 add a4,s10,s11 + c0032c42: 7308 ld a0,32(a4) + c0032c44: 770c ld a1,40(a4) + c0032c46: e43e sd a5,8(sp) + c0032c48: 0dc1 addi s11,s11,16 + c0032c4a: b13d30ef jal ra,c000675c + c0032c4e: 67a2 ld a5,8(sp) + c0032c50: e388 sd a0,0(a5) + c0032c52: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40283 (discriminator 3) for (j = 0; j < add; j++, pval++) - c0032a84: bf21 j c003299c + c0032c54: bf21 j c0032b6c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0032a86: 000c871b sext.w a4,s9 - c0032a8a: 02ec9863 bne s9,a4,c0032aba + c0032c56: 000c871b sext.w a4,s9 + c0032c5a: 02ec9863 bne s9,a4,c0032c8a JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0032a8e: cb02 sw zero,148(sp) - c0032a90: c93a sw a4,144(sp) - c0032a92: 67ca ld a5,144(sp) - c0032a94: e502 sd zero,136(sp) - c0032a96: e13e sd a5,128(sp) - c0032a98: 4781 li a5,0 + c0032c5e: cb02 sw zero,148(sp) + c0032c60: c93a sw a4,144(sp) + c0032c62: 67ca ld a5,144(sp) + c0032c64: e502 sd zero,136(sp) + c0032c66: e13e sd a5,128(sp) + c0032c68: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0032a9a: c13a sw a4,128(sp) + c0032c6a: c13a sw a4,128(sp) js_array_toSpliced(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40284 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40292 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, newlen)) < 0) - c0032a9c: 670a ld a4,128(sp) - c0032a9e: 65c6 ld a1,80(sp) - c0032aa0: 6666 ld a2,88(sp) - c0032aa2: 03000693 li a3,48 - c0032aa6: 8552 mv a0,s4 - c0032aa8: e50fd0ef jal ra,c00300f8 - c0032aac: 845a mv s0,s6 - c0032aae: 06054963 bltz a0,c0032b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40288 + c0032c6c: 670a ld a4,128(sp) + c0032c6e: 65c6 ld a1,80(sp) + c0032c70: 6666 ld a2,88(sp) + c0032c72: 03000693 li a3,48 + c0032c76: 8552 mv a0,s4 + c0032c78: e50fd0ef jal ra,c00302c8 + c0032c7c: 845a mv s0,s6 + c0032c7e: 06054963 bltz a0,c0032cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40296 ret = arr; - c0032ab2: 84ca mv s1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40289 + c0032c82: 84ca mv s1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40297 arr = JS_UNDEFINED; - c0032ab4: 4b8d li s7,3 - c0032ab6: 4c01 li s8,0 - c0032ab8: a085 j c0032b18 + c0032c84: 4b8d li s7,3 + c0032c86: 4c01 li s8,0 + c0032c88: a085 j c0032ce8 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0032aba: d22cf7d3 fcvt.d.l fa5,s9 - c0032abe: 479d li a5,7 - c0032ac0: e2078753 fmv.x.d a4,fa5 + c0032c8a: d22cf7d3 fcvt.d.l fa5,s9 + c0032c8e: 479d li a5,7 + c0032c90: e2078753 fmv.x.d a4,fa5 js_array_toSpliced(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0032ac4: a13e fsd fa5,128(sp) - c0032ac6: 2701 sext.w a4,a4 - c0032ac8: bfc9 j c0032a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40293 + c0032c94: a13e fsd fa5,128(sp) + c0032c96: 2701 sext.w a4,a4 + c0032c98: bfc9 j c0032c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40301 *pval++ = JS_UNDEFINED; - c0032aca: 01040793 addi a5,s0,16 - c0032ace: 00043023 sd zero,0(s0) - c0032ad2: e418 sd a4,8(s0) - c0032ad4: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40292 + c0032c9a: 01040793 addi a5,s0,16 + c0032c9e: 00043023 sd zero,0(s0) + c0032ca2: e418 sd a4,8(s0) + c0032ca4: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40300 while (pval != last) - c0032ad6: ff641ae3 bne s0,s6,c0032aca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40295 + c0032ca6: ff641ae3 bne s0,s6,c0032c9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40303 JS_FreeValue(ctx, arr); - c0032ada: 85e2 mv a1,s8 - c0032adc: 865e mv a2,s7 - c0032ade: 8552 mv a0,s4 - c0032ae0: 858d50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40296 + c0032caa: 85e2 mv a1,s8 + c0032cac: 865e mv a2,s7 + c0032cae: 8552 mv a0,s4 + c0032cb0: f77d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40304 JS_FreeValue(ctx, obj); - c0032ae4: 7586 ld a1,96(sp) - c0032ae6: 7626 ld a2,104(sp) - c0032ae8: 8552 mv a0,s4 - c0032aea: 84ed50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40298 -} - c0032aee: 60b2 ld ra,264(sp) - c0032af0: 6412 ld s0,256(sp) - c0032af2: 794e ld s2,240(sp) - c0032af4: 7a0e ld s4,224(sp) - c0032af6: 6aee ld s5,216(sp) - c0032af8: 6b4e ld s6,208(sp) - c0032afa: 6bae ld s7,200(sp) - c0032afc: 6c0e ld s8,192(sp) - c0032afe: 7cea ld s9,184(sp) - c0032b00: 7d4a ld s10,176(sp) - c0032b02: 7daa ld s11,168(sp) - c0032b04: 854e mv a0,s3 - c0032b06: 85a6 mv a1,s1 - c0032b08: 79ae ld s3,232(sp) - c0032b0a: 74ee ld s1,248(sp) - c0032b0c: 6151 addi sp,sp,272 - c0032b0e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40224 + c0032cb4: 7586 ld a1,96(sp) + c0032cb6: 7626 ld a2,104(sp) + c0032cb8: 8552 mv a0,s4 + c0032cba: f6dd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40306 +} + c0032cbe: 60b2 ld ra,264(sp) + c0032cc0: 6412 ld s0,256(sp) + c0032cc2: 794e ld s2,240(sp) + c0032cc4: 7a0e ld s4,224(sp) + c0032cc6: 6aee ld s5,216(sp) + c0032cc8: 6b4e ld s6,208(sp) + c0032cca: 6bae ld s7,200(sp) + c0032ccc: 6c0e ld s8,192(sp) + c0032cce: 7cea ld s9,184(sp) + c0032cd0: 7d4a ld s10,176(sp) + c0032cd2: 7daa ld s11,168(sp) + c0032cd4: 854e mv a0,s3 + c0032cd6: 85a6 mv a1,s1 + c0032cd8: 79ae ld s3,232(sp) + c0032cda: 74ee ld s1,248(sp) + c0032cdc: 6151 addi sp,sp,272 + c0032cde: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40232 ret = JS_EXCEPTION; - c0032b10: 4499 li s1,6 - c0032b12: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40223 + c0032ce0: 4499 li s1,6 + c0032ce2: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40231 last = NULL; - c0032b14: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40222 + c0032ce4: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40230 pval = NULL; - c0032b16: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40293 + c0032ce6: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40301 *pval++ = JS_UNDEFINED; - c0032b18: 470d li a4,3 - c0032b1a: bf75 j c0032ad6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40288 + c0032ce8: 470d li a4,3 + c0032cea: bf75 j c0032ca6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40296 ret = arr; - c0032b1c: 84ae mv s1,a1 - c0032b1e: bbcd j c0032910 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40224 + c0032cec: 84ae mv s1,a1 + c0032cee: bbcd j c0032ae0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40232 ret = JS_EXCEPTION; - c0032b20: 4499 li s1,6 - c0032b22: 4981 li s3,0 - c0032b24: bfd5 j c0032b18 + c0032cf0: 4499 li s1,6 + c0032cf2: 4981 li s3,0 + c0032cf4: bfd5 j c0032ce8 -00000000c0032b26 : +00000000c0032cf6 : js_array_toReversed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40058 -{ - c0032b26: 7155 addi sp,sp,-208 - c0032b28: f54e sd s3,168(sp) - c0032b2a: e586 sd ra,200(sp) - c0032b2c: e1a2 sd s0,192(sp) - c0032b2e: fd26 sd s1,184(sp) - c0032b30: f94a sd s2,176(sp) - c0032b32: f152 sd s4,160(sp) - c0032b34: ed56 sd s5,152(sp) - c0032b36: e95a sd s6,144(sp) - c0032b38: e55e sd s7,136(sp) - c0032b3a: 89aa mv s3,a0 - c0032b3c: e432 sd a2,8(sp) - c0032b3e: e02e sd a1,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40066 +{ + c0032cf6: 7155 addi sp,sp,-208 + c0032cf8: f54e sd s3,168(sp) + c0032cfa: e586 sd ra,200(sp) + c0032cfc: e1a2 sd s0,192(sp) + c0032cfe: fd26 sd s1,184(sp) + c0032d00: f94a sd s2,176(sp) + c0032d02: f152 sd s4,160(sp) + c0032d04: ed56 sd s5,152(sp) + c0032d06: e95a sd s6,144(sp) + c0032d08: e55e sd s7,136(sp) + c0032d0a: 89aa mv s3,a0 + c0032d0c: e432 sd a2,8(sp) + c0032d0e: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40074 obj = JS_ToObject(ctx, this_val); - c0032b40: aadf50ef jal ra,c00285ec - c0032b44: 862a mv a2,a0 - c0032b46: 86ae mv a3,a1 - c0032b48: e0aa sd a0,64(sp) - c0032b4a: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40067 + c0032d10: aadf50ef jal ra,c00287bc + c0032d14: 862a mv a2,a0 + c0032d16: 86ae mv a3,a1 + c0032d18: e0aa sd a0,64(sp) + c0032d1a: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40075 if (js_get_length64(ctx, &len, obj)) - c0032b4c: 854e mv a0,s3 - c0032b4e: 102c addi a1,sp,40 - c0032b50: cefeb0ef jal ra,c001e83e - c0032b54: 10051663 bnez a0,c0032c60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40070 + c0032d1c: 854e mv a0,s3 + c0032d1e: 102c addi a1,sp,40 + c0032d20: cefeb0ef jal ra,c001ea0e + c0032d24: 10051663 bnez a0,c0032e30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40078 arr = js_allocate_fast_array(ctx, len); - c0032b58: 75a2 ld a1,40(sp) - c0032b5a: 854e mv a0,s3 - c0032b5c: ae1e40ef jal ra,c001763c - c0032b60: f82a sd a0,48(sp) - c0032b62: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40071 + c0032d28: 75a2 ld a1,40(sp) + c0032d2a: 854e mv a0,s3 + c0032d2c: ae1e40ef jal ra,c001780c + c0032d30: f82a sd a0,48(sp) + c0032d32: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40079 if (JS_IsException(arr)) - c0032b64: 0005871b sext.w a4,a1 - c0032b68: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40070 + c0032d34: 0005871b sext.w a4,a1 + c0032d38: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40078 arr = js_allocate_fast_array(ctx, len); - c0032b6a: 84aa mv s1,a0 - c0032b6c: 842e mv s0,a1 - c0032b6e: 8aaa mv s5,a0 - c0032b70: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40071 + c0032d3a: 84aa mv s1,a0 + c0032d3c: 842e mv s0,a1 + c0032d3e: 8aaa mv s5,a0 + c0032d40: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40079 if (JS_IsException(arr)) - c0032b72: 0af70663 beq a4,a5,c0032c1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40074 + c0032d42: 0af70663 beq a4,a5,c0032dee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40082 if (len > 0) { - c0032b76: 7922 ld s2,40(sp) - c0032b78: 07205863 blez s2,c0032be8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40078 + c0032d46: 7922 ld s2,40(sp) + c0032d48: 07205863 blez s2,c0032db8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40086 pval = p->u.array.u.values; - c0032b7c: 03853b03 ld s6,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40079 + c0032d4c: 03853b03 ld s6,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40087 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032b80: 65a6 ld a1,72(sp) - c0032b82: 6506 ld a0,64(sp) - c0032b84: 0874 addi a3,sp,28 - c0032b86: 1010 addi a2,sp,32 - c0032b88: 82bd30ef jal ra,c00063b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40077 + c0032d50: 65a6 ld a1,72(sp) + c0032d52: 6506 ld a0,64(sp) + c0032d54: 0874 addi a3,sp,28 + c0032d56: 1010 addi a2,sp,32 + c0032d58: f48d30ef jal ra,c00064a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40085 i = len - 1; - c0032b8c: 197d addi s2,s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40080 + c0032d5c: 197d addi s2,s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 for (; i >= 0; i--, pval++) - c0032b8e: 5bfd li s7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40079 + c0032d5e: 5bfd li s7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40087 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032b90: c12d beqz a0,c0032bf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40079 (discriminator 1) - c0032b92: 01c16703 lwu a4,28(sp) - c0032b96: 77a2 ld a5,40(sp) - c0032b98: 04f71d63 bne a4,a5,c0032bf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40081 (discriminator 2) + c0032d60: c12d beqz a0,c0032dc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40087 (discriminator 1) + c0032d62: 01c16703 lwu a4,28(sp) + c0032d66: 77a2 ld a5,40(sp) + c0032d68: 04f71d63 bne a4,a5,c0032dc2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40089 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c0032b9c: 7782 ld a5,32(sp) - c0032b9e: 00491713 slli a4,s2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40080 (discriminator 2) + c0032d6c: 7782 ld a5,32(sp) + c0032d6e: 00491713 slli a4,s2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 (discriminator 2) for (; i >= 0; i--, pval++) - c0032ba2: 197d addi s2,s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40081 (discriminator 2) + c0032d72: 197d addi s2,s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40089 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c0032ba4: 97ba add a5,a5,a4 - c0032ba6: 6388 ld a0,0(a5) - c0032ba8: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40080 (discriminator 2) + c0032d74: 97ba add a5,a5,a4 + c0032d76: 6388 ld a0,0(a5) + c0032d78: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 (discriminator 2) for (; i >= 0; i--, pval++) - c0032baa: 0b41 addi s6,s6,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40081 (discriminator 2) + c0032d7a: 0b41 addi s6,s6,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40089 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c0032bac: ac3d30ef jal ra,c000666e - c0032bb0: feab3823 sd a0,-16(s6) # ffffffff7ffffff0 <_ebss+0xfffffffebfefeeca> - c0032bb4: febb3c23 sd a1,-8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40080 (discriminator 2) + c0032d7c: 9e1d30ef jal ra,c000675c + c0032d80: feab3823 sd a0,-16(s6) # ffffffff7ffffff0 <_ebss+0xfffffffebfefeeca> + c0032d84: febb3c23 sd a1,-8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 (discriminator 2) for (; i >= 0; i--, pval++) - c0032bb8: ff7912e3 bne s2,s7,c0032b9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40094 + c0032d88: ff7912e3 bne s2,s7,c0032d6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40102 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, len)) < 0) - c0032bbc: 77a2 ld a5,40(sp) + c0032d8c: 77a2 ld a5,40(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0032bbe: 0007871b sext.w a4,a5 - c0032bc2: 08e79763 bne a5,a4,c0032c50 + c0032d8e: 0007871b sext.w a4,a5 + c0032d92: 08e79763 bne a5,a4,c0032e20 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0032bc6: da82 sw zero,116(sp) - c0032bc8: d8ba sw a4,112(sp) - c0032bca: 77c6 ld a5,112(sp) - c0032bcc: f482 sd zero,104(sp) - c0032bce: f0be sd a5,96(sp) - c0032bd0: 4781 li a5,0 + c0032d96: da82 sw zero,116(sp) + c0032d98: d8ba sw a4,112(sp) + c0032d9a: 77c6 ld a5,112(sp) + c0032d9c: f482 sd zero,104(sp) + c0032d9e: f0be sd a5,96(sp) + c0032da0: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0032bd2: d0ba sw a4,96(sp) + c0032da2: d0ba sw a4,96(sp) js_array_toReversed(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40094 - c0032bd4: 7706 ld a4,96(sp) - c0032bd6: 75c2 ld a1,48(sp) - c0032bd8: 7662 ld a2,56(sp) - c0032bda: 03000693 li a3,48 - c0032bde: 854e mv a0,s3 - c0032be0: d18fd0ef jal ra,c00300f8 - c0032be4: 02054d63 bltz a0,c0032c1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40099 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40102 + c0032da4: 7706 ld a4,96(sp) + c0032da6: 75c2 ld a1,48(sp) + c0032da8: 7662 ld a2,56(sp) + c0032daa: 03000693 li a3,48 + c0032dae: 854e mv a0,s3 + c0032db0: d18fd0ef jal ra,c00302c8 + c0032db4: 02054d63 bltz a0,c0032dee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40107 arr = JS_UNDEFINED; - c0032be8: 4a0d li s4,3 - c0032bea: 4a81 li s5,0 - c0032bec: a81d j c0032c22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40084 + c0032db8: 4a0d li s4,3 + c0032dba: 4a81 li s5,0 + c0032dbc: a81d j c0032df2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40092 for (; i >= 0; i--, pval++) { - c0032bee: fd7907e3 beq s2,s7,c0032bbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40085 + c0032dbe: fd7907e3 beq s2,s7,c0032d8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40093 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c0032bf2: 6586 ld a1,64(sp) - c0032bf4: 6626 ld a2,72(sp) - c0032bf6: 875a mv a4,s6 - c0032bf8: 86ca mv a3,s2 - c0032bfa: 854e mv a0,s3 - c0032bfc: 8e1ff0ef jal ra,c00324dc - c0032c00: 874a mv a4,s2 - c0032c02: 87da mv a5,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40084 + c0032dc2: 6586 ld a1,64(sp) + c0032dc4: 6626 ld a2,72(sp) + c0032dc6: 875a mv a4,s6 + c0032dc8: 86ca mv a3,s2 + c0032dca: 854e mv a0,s3 + c0032dcc: 8e1ff0ef jal ra,c00326ac + c0032dd0: 874a mv a4,s2 + c0032dd2: 87da mv a5,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40092 for (; i >= 0; i--, pval++) { - c0032c04: 197d addi s2,s2,-1 - c0032c06: 0b41 addi s6,s6,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40085 + c0032dd4: 197d addi s2,s2,-1 + c0032dd6: 0b41 addi s6,s6,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40093 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c0032c08: ff7513e3 bne a0,s7,c0032bee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 + c0032dd8: ff7513e3 bne a0,s7,c0032dbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40096 *pval = JS_UNDEFINED; - c0032c0c: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40087 + c0032ddc: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40095 for (; i >= 0; i--, pval++) - c0032c0e: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40088 (discriminator 2) + c0032dde: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40096 (discriminator 2) *pval = JS_UNDEFINED; - c0032c10: 0007b023 sd zero,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c0032c14: e790 sd a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40087 (discriminator 2) + c0032de0: 0007b023 sd zero,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0032de4: e790 sd a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40095 (discriminator 2) for (; i >= 0; i--, pval++) - c0032c16: 177d addi a4,a4,-1 - c0032c18: 07c1 addi a5,a5,16 - c0032c1a: fed71be3 bne a4,a3,c0032c10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40064 + c0032de6: 177d addi a4,a4,-1 + c0032de8: 07c1 addi a5,a5,16 + c0032dea: fed71be3 bne a4,a3,c0032de0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40072 ret = JS_EXCEPTION; - c0032c1e: 4419 li s0,6 - c0032c20: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40102 + c0032dee: 4419 li s0,6 + c0032df0: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40110 JS_FreeValue(ctx, arr); - c0032c22: 85d6 mv a1,s5 - c0032c24: 8652 mv a2,s4 - c0032c26: 854e mv a0,s3 - c0032c28: f11d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40103 + c0032df2: 85d6 mv a1,s5 + c0032df4: 8652 mv a2,s4 + c0032df6: 854e mv a0,s3 + c0032df8: e2fd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40111 JS_FreeValue(ctx, obj); - c0032c2c: 6586 ld a1,64(sp) - c0032c2e: 6626 ld a2,72(sp) - c0032c30: 854e mv a0,s3 - c0032c32: f07d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40105 -} - c0032c36: 60ae ld ra,200(sp) - c0032c38: 85a2 mv a1,s0 - c0032c3a: 640e ld s0,192(sp) - c0032c3c: 794a ld s2,176(sp) - c0032c3e: 79aa ld s3,168(sp) - c0032c40: 7a0a ld s4,160(sp) - c0032c42: 6aea ld s5,152(sp) - c0032c44: 6b4a ld s6,144(sp) - c0032c46: 6baa ld s7,136(sp) - c0032c48: 8526 mv a0,s1 - c0032c4a: 74ea ld s1,184(sp) - c0032c4c: 6169 addi sp,sp,208 - c0032c4e: 8082 ret + c0032dfc: 6586 ld a1,64(sp) + c0032dfe: 6626 ld a2,72(sp) + c0032e00: 854e mv a0,s3 + c0032e02: e25d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40113 +} + c0032e06: 60ae ld ra,200(sp) + c0032e08: 85a2 mv a1,s0 + c0032e0a: 640e ld s0,192(sp) + c0032e0c: 794a ld s2,176(sp) + c0032e0e: 79aa ld s3,168(sp) + c0032e10: 7a0a ld s4,160(sp) + c0032e12: 6aea ld s5,152(sp) + c0032e14: 6b4a ld s6,144(sp) + c0032e16: 6baa ld s7,136(sp) + c0032e18: 8526 mv a0,s1 + c0032e1a: 74ea ld s1,184(sp) + c0032e1c: 6169 addi sp,sp,208 + c0032e1e: 8082 ret JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0032c50: d227f7d3 fcvt.d.l fa5,a5 - c0032c54: 479d li a5,7 - c0032c56: e2078753 fmv.x.d a4,fa5 + c0032e20: d227f7d3 fcvt.d.l fa5,a5 + c0032e24: 479d li a5,7 + c0032e26: e2078753 fmv.x.d a4,fa5 js_array_toReversed(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0032c5a: b0be fsd fa5,96(sp) - c0032c5c: 2701 sext.w a4,a4 - c0032c5e: bf95 j c0032bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40064 + c0032e2a: b0be fsd fa5,96(sp) + c0032e2c: 2701 sext.w a4,a4 + c0032e2e: bf95 j c0032da2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40072 ret = JS_EXCEPTION; - c0032c60: 4419 li s0,6 - c0032c62: 4481 li s1,0 - c0032c64: b751 j c0032be8 + c0032e30: 4419 li s0,6 + c0032e32: 4481 li s1,0 + c0032e34: b751 j c0032db8 -00000000c0032c66 : +00000000c0032e36 : js_array_with(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39171 -{ - c0032c66: 7115 addi sp,sp,-224 - c0032c68: f952 sd s4,176(sp) - c0032c6a: ed5e sd s7,152(sp) - c0032c6c: ed86 sd ra,216(sp) - c0032c6e: e9a2 sd s0,208(sp) - c0032c70: e5a6 sd s1,200(sp) - c0032c72: e1ca sd s2,192(sp) - c0032c74: fd4e sd s3,184(sp) - c0032c76: f556 sd s5,168(sp) - c0032c78: f15a sd s6,160(sp) - c0032c7a: e962 sd s8,144(sp) - c0032c7c: e566 sd s9,136(sp) - c0032c7e: 8a2a mv s4,a0 - c0032c80: e432 sd a2,8(sp) - c0032c82: e02e sd a1,0(sp) - c0032c84: 8bba mv s7,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39179 +{ + c0032e36: 7115 addi sp,sp,-224 + c0032e38: f952 sd s4,176(sp) + c0032e3a: ed5e sd s7,152(sp) + c0032e3c: ed86 sd ra,216(sp) + c0032e3e: e9a2 sd s0,208(sp) + c0032e40: e5a6 sd s1,200(sp) + c0032e42: e1ca sd s2,192(sp) + c0032e44: fd4e sd s3,184(sp) + c0032e46: f556 sd s5,168(sp) + c0032e48: f15a sd s6,160(sp) + c0032e4a: e962 sd s8,144(sp) + c0032e4c: e566 sd s9,136(sp) + c0032e4e: 8a2a mv s4,a0 + c0032e50: e432 sd a2,8(sp) + c0032e52: e02e sd a1,0(sp) + c0032e54: 8bba mv s7,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39187 obj = JS_ToObject(ctx, this_val); - c0032c86: 967f50ef jal ra,c00285ec - c0032c8a: 862a mv a2,a0 - c0032c8c: 86ae mv a3,a1 - c0032c8e: e0aa sd a0,64(sp) - c0032c90: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39180 + c0032e56: 967f50ef jal ra,c00287bc + c0032e5a: 862a mv a2,a0 + c0032e5c: 86ae mv a3,a1 + c0032e5e: e0aa sd a0,64(sp) + c0032e60: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39188 if (js_get_length64(ctx, &len, obj)) - c0032c92: 8552 mv a0,s4 - c0032c94: 100c addi a1,sp,32 - c0032c96: ba9eb0ef jal ra,c001e83e - c0032c9a: c511 beqz a0,c0032ca6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39177 + c0032e62: 8552 mv a0,s4 + c0032e64: 100c addi a1,sp,32 + c0032e66: ba9eb0ef jal ra,c001ea0e + c0032e6a: c511 beqz a0,c0032e76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39185 ret = JS_EXCEPTION; - c0032c9c: 4919 li s2,6 - c0032c9e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39226 + c0032e6c: 4919 li s2,6 + c0032e6e: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39234 arr = JS_UNDEFINED; - c0032ca0: 4a8d li s5,3 - c0032ca2: 4b01 li s6,0 - c0032ca4: a22d j c0032dce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39183 + c0032e70: 4a8d li s5,3 + c0032e72: 4b01 li s6,0 + c0032e74: a22d j c0032f9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39191 if (JS_ToInt64Sat(ctx, &idx, argv[0])) - c0032ca6: 000bb603 ld a2,0(s7) - c0032caa: 008bb683 ld a3,8(s7) - c0032cae: 102c addi a1,sp,40 - c0032cb0: 8552 mv a0,s4 - c0032cb2: daceb0ef jal ra,c001e25e - c0032cb6: f17d bnez a0,c0032c9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39186 + c0032e76: 000bb603 ld a2,0(s7) + c0032e7a: 008bb683 ld a3,8(s7) + c0032e7e: 102c addi a1,sp,40 + c0032e80: 8552 mv a0,s4 + c0032e82: daceb0ef jal ra,c001e42e + c0032e86: f17d bnez a0,c0032e6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39194 if (idx < 0) - c0032cb8: 7722 ld a4,40(sp) - c0032cba: 00075563 bgez a4,c0032cc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39187 + c0032e88: 7722 ld a4,40(sp) + c0032e8a: 00075563 bgez a4,c0032e94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39195 idx = len + idx; - c0032cbe: 7782 ld a5,32(sp) - c0032cc0: 97ba add a5,a5,a4 - c0032cc2: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39189 + c0032e8e: 7782 ld a5,32(sp) + c0032e90: 97ba add a5,a5,a4 + c0032e92: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39197 if (idx < 0 || idx >= len) { - c0032cc4: 77a2 ld a5,40(sp) - c0032cc6: 0007c563 bltz a5,c0032cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39189 (discriminator 1) - c0032cca: 7582 ld a1,32(sp) - c0032ccc: 00b7ca63 blt a5,a1,c0032ce0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39190 + c0032e94: 77a2 ld a5,40(sp) + c0032e96: 0007c563 bltz a5,c0032ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39197 (discriminator 1) + c0032e9a: 7582 ld a1,32(sp) + c0032e9c: 00b7ca63 blt a5,a1,c0032eb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39198 JS_ThrowRangeError(ctx, "out of bound"); - c0032cd0: 8552 mv a0,s4 - c0032cd2: 0002b597 auipc a1,0x2b - c0032cd6: 7b658593 addi a1,a1,1974 # c005e488 - c0032cda: c81e10ef jal ra,c001495a - c0032cde: bf7d j c0032c9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39194 + c0032ea0: 8552 mv a0,s4 + c0032ea2: 0002c597 auipc a1,0x2c + c0032ea6: 84658593 addi a1,a1,-1978 # c005e6e8 + c0032eaa: b9fe10ef jal ra,c0014a48 + c0032eae: bf7d j c0032e6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39202 arr = js_allocate_fast_array(ctx, len); - c0032ce0: 8552 mv a0,s4 - c0032ce2: 95be40ef jal ra,c001763c - c0032ce6: f82a sd a0,48(sp) - c0032ce8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39195 + c0032eb0: 8552 mv a0,s4 + c0032eb2: 95be40ef jal ra,c001780c + c0032eb6: f82a sd a0,48(sp) + c0032eb8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39203 if (JS_IsException(arr)) - c0032cea: 0005871b sext.w a4,a1 - c0032cee: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39194 + c0032eba: 0005871b sext.w a4,a1 + c0032ebe: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39202 arr = js_allocate_fast_array(ctx, len); - c0032cf0: 89aa mv s3,a0 - c0032cf2: 892e mv s2,a1 - c0032cf4: 8b2a mv s6,a0 - c0032cf6: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39195 + c0032ec0: 89aa mv s3,a0 + c0032ec2: 892e mv s2,a1 + c0032ec4: 8b2a mv s6,a0 + c0032ec6: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39203 if (JS_IsException(arr)) - c0032cf8: 0cf70963 beq a4,a5,c0032dca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39200 + c0032ec8: 0cf70963 beq a4,a5,c0032f9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39208 pval = p->u.array.u.values; - c0032cfc: 03853c03 ld s8,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39201 - if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0032d00: 65a6 ld a1,72(sp) - c0032d02: 6506 ld a0,64(sp) - c0032d04: 0854 addi a3,sp,20 - c0032d06: 0830 addi a2,sp,24 - c0032d08: eaad30ef jal ra,c00063b2 - c0032d0c: c511 beqz a0,c0032d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39201 (discriminator 1) - c0032d0e: 01416703 lwu a4,20(sp) - c0032d12: 7782 ld a5,32(sp) - c0032d14: 06f70d63 beq a4,a5,c0032d8e - c0032d18: 4401 li s0,0 + c0032ecc: 03853c03 ld s8,56(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39209 + if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { + c0032ed0: 65a6 ld a1,72(sp) + c0032ed2: 6506 ld a0,64(sp) + c0032ed4: 0854 addi a3,sp,20 + c0032ed6: 0830 addi a2,sp,24 + c0032ed8: dc8d30ef jal ra,c00064a0 + c0032edc: c511 beqz a0,c0032ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39209 (discriminator 1) + c0032ede: 01416703 lwu a4,20(sp) + c0032ee2: 7782 ld a5,32(sp) + c0032ee4: 06f70d63 beq a4,a5,c0032f5e + c0032ee8: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39217 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) - c0032d1a: 5cfd li s9,-1 - c0032d1c: a0dd j c0032e02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39203 (discriminator 2) + c0032eea: 5cfd li s9,-1 + c0032eec: a0dd j c0032fd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39211 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c0032d1e: 6762 ld a4,24(sp) - c0032d20: 0792 slli a5,a5,0x4 - c0032d22: 97ba add a5,a5,a4 - c0032d24: 6388 ld a0,0(a5) - c0032d26: 678c ld a1,8(a5) - c0032d28: 947d30ef jal ra,c000666e - c0032d2c: 00ac3023 sd a0,0(s8) - c0032d30: 00bc3423 sd a1,8(s8) - c0032d34: 87a2 mv a5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39202 (discriminator 2) + c0032eee: 6762 ld a4,24(sp) + c0032ef0: 0792 slli a5,a5,0x4 + c0032ef2: 97ba add a5,a5,a4 + c0032ef4: 6388 ld a0,0(a5) + c0032ef6: 678c ld a1,8(a5) + c0032ef8: 865d30ef jal ra,c000675c + c0032efc: 00ac3023 sd a0,0(s8) + c0032f00: 00bc3423 sd a1,8(s8) + c0032f04: 87a2 mv a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39210 (discriminator 2) for (; i < idx; i++, pval++) - c0032d36: 8c26 mv s8,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39202 (discriminator 1) - c0032d38: 7722 ld a4,40(sp) - c0032d3a: 00178413 addi s0,a5,1 - c0032d3e: 010c0493 addi s1,s8,16 - c0032d42: fce7cee3 blt a5,a4,c0032d1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39204 + c0032f06: 8c26 mv s8,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39210 (discriminator 1) + c0032f08: 7722 ld a4,40(sp) + c0032f0a: 00178413 addi s0,a5,1 + c0032f0e: 010c0493 addi s1,s8,16 + c0032f12: fce7cee3 blt a5,a4,c0032eee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39212 *pval = JS_DupValue(ctx, argv[1]); - c0032d46: 010bb503 ld a0,16(s7) - c0032d4a: 018bb583 ld a1,24(s7) - c0032d4e: 921d30ef jal ra,c000666e - c0032d52: 00ac3023 sd a0,0(s8) - c0032d56: 00bc3423 sd a1,8(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39205 (discriminator 1) + c0032f16: 010bb503 ld a0,16(s7) + c0032f1a: 018bb583 ld a1,24(s7) + c0032f1e: 83fd30ef jal ra,c000675c + c0032f22: 00ac3023 sd a0,0(s8) + c0032f26: 00bc3423 sd a1,8(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 (discriminator 1) for (i++, pval++; i < len; i++, pval++) - c0032d5a: 7782 ld a5,32(sp) - c0032d5c: 02f44b63 blt s0,a5,c0032d92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39222 + c0032f2a: 7782 ld a5,32(sp) + c0032f2c: 02f44b63 blt s0,a5,c0032f62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39230 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, len)) < 0) - c0032d60: 7782 ld a5,32(sp) + c0032f30: 7782 ld a5,32(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0032d62: 0007871b sext.w a4,a5 - c0032d66: 0ee79663 bne a5,a4,c0032e52 + c0032f32: 0007871b sext.w a4,a5 + c0032f36: 0ee79663 bne a5,a4,c0033022 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0032d6a: da82 sw zero,116(sp) - c0032d6c: d8ba sw a4,112(sp) - c0032d6e: 77c6 ld a5,112(sp) - c0032d70: f482 sd zero,104(sp) - c0032d72: f0be sd a5,96(sp) - c0032d74: 4781 li a5,0 + c0032f3a: da82 sw zero,116(sp) + c0032f3c: d8ba sw a4,112(sp) + c0032f3e: 77c6 ld a5,112(sp) + c0032f40: f482 sd zero,104(sp) + c0032f42: f0be sd a5,96(sp) + c0032f44: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0032d76: d0ba sw a4,96(sp) + c0032f46: d0ba sw a4,96(sp) js_array_with(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39222 - c0032d78: 7706 ld a4,96(sp) - c0032d7a: 75c2 ld a1,48(sp) - c0032d7c: 7662 ld a2,56(sp) - c0032d7e: 03000693 li a3,48 - c0032d82: 8552 mv a0,s4 - c0032d84: b74fd0ef jal ra,c00300f8 - c0032d88: f0055ce3 bgez a0,c0032ca0 - c0032d8c: a83d j c0032dca - c0032d8e: 4781 li a5,0 - c0032d90: b765 j c0032d38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39206 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39230 + c0032f48: 7706 ld a4,96(sp) + c0032f4a: 75c2 ld a1,48(sp) + c0032f4c: 7662 ld a2,56(sp) + c0032f4e: 03000693 li a3,48 + c0032f52: 8552 mv a0,s4 + c0032f54: b74fd0ef jal ra,c00302c8 + c0032f58: f0055ce3 bgez a0,c0032e70 + c0032f5c: a83d j c0032f9a + c0032f5e: 4781 li a5,0 + c0032f60: b765 j c0032f08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39214 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032d92: 67e2 ld a5,24(sp) - c0032d94: 00441713 slli a4,s0,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39205 (discriminator 3) + c0032f62: 67e2 ld a5,24(sp) + c0032f64: 00441713 slli a4,s0,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 (discriminator 3) for (i++, pval++; i < len; i++, pval++) - c0032d98: 04c1 addi s1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39206 (discriminator 3) + c0032f68: 04c1 addi s1,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39214 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032d9a: 97ba add a5,a5,a4 - c0032d9c: 6388 ld a0,0(a5) - c0032d9e: 678c ld a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39205 (discriminator 3) + c0032f6a: 97ba add a5,a5,a4 + c0032f6c: 6388 ld a0,0(a5) + c0032f6e: 678c ld a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 (discriminator 3) for (i++, pval++; i < len; i++, pval++) - c0032da0: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39206 (discriminator 3) + c0032f70: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39214 (discriminator 3) *pval = JS_DupValue(ctx, arrp[i]); - c0032da2: 8cdd30ef jal ra,c000666e - c0032da6: fea4b823 sd a0,-16(s1) - c0032daa: feb4bc23 sd a1,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39205 (discriminator 3) + c0032f72: fead30ef jal ra,c000675c + c0032f76: fea4b823 sd a0,-16(s1) + c0032f7a: feb4bc23 sd a1,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 (discriminator 3) for (i++, pval++; i < len; i++, pval++) - c0032dae: b775 j c0032d5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39209 + c0032f7e: b775 j c0032f2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39217 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) - c0032db0: 6586 ld a1,64(sp) - c0032db2: 6626 ld a2,72(sp) - c0032db4: 8726 mv a4,s1 - c0032db6: 86a2 mv a3,s0 - c0032db8: 8552 mv a0,s4 - c0032dba: f22ff0ef jal ra,c00324dc - c0032dbe: 05951163 bne a0,s9,c0032e00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39216 (discriminator 1) + c0032f80: 6586 ld a1,64(sp) + c0032f82: 6626 ld a2,72(sp) + c0032f84: 8726 mv a4,s1 + c0032f86: 86a2 mv a3,s0 + c0032f88: 8552 mv a0,s4 + c0032f8a: f22ff0ef jal ra,c00326ac + c0032f8e: 05951163 bne a0,s9,c0032fd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39224 (discriminator 1) *pval = JS_UNDEFINED; - c0032dc2: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39215 (discriminator 1) + c0032f92: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39223 (discriminator 1) for (; i < len; i++, pval++) - c0032dc4: 7782 ld a5,32(sp) - c0032dc6: 08f44063 blt s0,a5,c0032e46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39177 + c0032f94: 7782 ld a5,32(sp) + c0032f96: 08f44063 blt s0,a5,c0033016 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39185 ret = JS_EXCEPTION; - c0032dca: 4919 li s2,6 - c0032dcc: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39229 + c0032f9a: 4919 li s2,6 + c0032f9c: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39237 JS_FreeValue(ctx, arr); - c0032dce: 85da mv a1,s6 - c0032dd0: 8656 mv a2,s5 - c0032dd2: 8552 mv a0,s4 - c0032dd4: d65d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39230 + c0032f9e: 85da mv a1,s6 + c0032fa0: 8656 mv a2,s5 + c0032fa2: 8552 mv a0,s4 + c0032fa4: c83d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39238 JS_FreeValue(ctx, obj); - c0032dd8: 6586 ld a1,64(sp) - c0032dda: 6626 ld a2,72(sp) - c0032ddc: 8552 mv a0,s4 - c0032dde: d5bd40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39232 -} - c0032de2: 60ee ld ra,216(sp) - c0032de4: 644e ld s0,208(sp) - c0032de6: 64ae ld s1,200(sp) - c0032de8: 7a4a ld s4,176(sp) - c0032dea: 7aaa ld s5,168(sp) - c0032dec: 7b0a ld s6,160(sp) - c0032dee: 6bea ld s7,152(sp) - c0032df0: 6c4a ld s8,144(sp) - c0032df2: 6caa ld s9,136(sp) - c0032df4: 854e mv a0,s3 - c0032df6: 85ca mv a1,s2 - c0032df8: 79ea ld s3,184(sp) - c0032dfa: 690e ld s2,192(sp) - c0032dfc: 612d addi sp,sp,224 - c0032dfe: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39208 + c0032fa8: 6586 ld a1,64(sp) + c0032faa: 6626 ld a2,72(sp) + c0032fac: 8552 mv a0,s4 + c0032fae: c79d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39240 +} + c0032fb2: 60ee ld ra,216(sp) + c0032fb4: 644e ld s0,208(sp) + c0032fb6: 64ae ld s1,200(sp) + c0032fb8: 7a4a ld s4,176(sp) + c0032fba: 7aaa ld s5,168(sp) + c0032fbc: 7b0a ld s6,160(sp) + c0032fbe: 6bea ld s7,152(sp) + c0032fc0: 6c4a ld s8,144(sp) + c0032fc2: 6caa ld s9,136(sp) + c0032fc4: 854e mv a0,s3 + c0032fc6: 85ca mv a1,s2 + c0032fc8: 79ea ld s3,184(sp) + c0032fca: 690e ld s2,192(sp) + c0032fcc: 612d addi sp,sp,224 + c0032fce: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39216 for (; i < idx; i++, pval++) - c0032e00: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39208 (discriminator 1) - c0032e02: 77a2 ld a5,40(sp) - c0032e04: 00441493 slli s1,s0,0x4 - c0032e08: 94e2 add s1,s1,s8 - c0032e0a: faf443e3 blt s0,a5,c0032db0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39211 + c0032fd0: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39216 (discriminator 1) + c0032fd2: 77a2 ld a5,40(sp) + c0032fd4: 00441493 slli s1,s0,0x4 + c0032fd8: 94e2 add s1,s1,s8 + c0032fda: faf443e3 blt s0,a5,c0032f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39219 *pval = JS_DupValue(ctx, argv[1]); - c0032e0e: 010bb503 ld a0,16(s7) - c0032e12: 018bb583 ld a1,24(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39212 + c0032fde: 010bb503 ld a0,16(s7) + c0032fe2: 018bb583 ld a1,24(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39220 for (i++, pval++; i < len; i++, pval++) { - c0032e16: 0405 addi s0,s0,1 - c0032e18: 04c1 addi s1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39211 + c0032fe6: 0405 addi s0,s0,1 + c0032fe8: 04c1 addi s1,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39219 *pval = JS_DupValue(ctx, argv[1]); - c0032e1a: 855d30ef jal ra,c000666e - c0032e1e: fea4b823 sd a0,-16(s1) - c0032e22: feb4bc23 sd a1,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 + c0032fea: f72d30ef jal ra,c000675c + c0032fee: fea4b823 sd a0,-16(s1) + c0032ff2: feb4bc23 sd a1,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39221 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c0032e26: 5bfd li s7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39212 (discriminator 1) + c0032ff6: 5bfd li s7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39220 (discriminator 1) for (i++, pval++; i < len; i++, pval++) { - c0032e28: 7782 ld a5,32(sp) - c0032e2a: f2f45be3 bge s0,a5,c0032d60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39213 + c0032ff8: 7782 ld a5,32(sp) + c0032ffa: f2f45be3 bge s0,a5,c0032f30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39221 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c0032e2e: 6586 ld a1,64(sp) - c0032e30: 6626 ld a2,72(sp) - c0032e32: 8726 mv a4,s1 - c0032e34: 86a2 mv a3,s0 - c0032e36: 8552 mv a0,s4 - c0032e38: ea4ff0ef jal ra,c00324dc - c0032e3c: f97503e3 beq a0,s7,c0032dc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39212 (discriminator 2) + c0032ffe: 6586 ld a1,64(sp) + c0033000: 6626 ld a2,72(sp) + c0033002: 8726 mv a4,s1 + c0033004: 86a2 mv a3,s0 + c0033006: 8552 mv a0,s4 + c0033008: ea4ff0ef jal ra,c00326ac + c003300c: f97503e3 beq a0,s7,c0032f92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39220 (discriminator 2) for (i++, pval++; i < len; i++, pval++) { - c0032e40: 0405 addi s0,s0,1 - c0032e42: 04c1 addi s1,s1,16 - c0032e44: b7d5 j c0032e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39216 (discriminator 2) + c0033010: 0405 addi s0,s0,1 + c0033012: 04c1 addi s1,s1,16 + c0033014: b7d5 j c0032ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39224 (discriminator 2) *pval = JS_UNDEFINED; - c0032e46: 0004b023 sd zero,0(s1) - c0032e4a: e498 sd a4,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39215 (discriminator 2) + c0033016: 0004b023 sd zero,0(s1) + c003301a: e498 sd a4,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39223 (discriminator 2) for (; i < len; i++, pval++) - c0032e4c: 0405 addi s0,s0,1 - c0032e4e: 04c1 addi s1,s1,16 - c0032e50: bf95 j c0032dc4 + c003301c: 0405 addi s0,s0,1 + c003301e: 04c1 addi s1,s1,16 + c0033020: bf95 j c0032f94 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0032e52: d227f7d3 fcvt.d.l fa5,a5 - c0032e56: 479d li a5,7 - c0032e58: e2078753 fmv.x.d a4,fa5 + c0033022: d227f7d3 fcvt.d.l fa5,a5 + c0033026: 479d li a5,7 + c0033028: e2078753 fmv.x.d a4,fa5 js_array_with(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0032e5c: b0be fsd fa5,96(sp) - c0032e5e: 2701 sext.w a4,a4 - c0032e60: bf19 j c0032d76 + c003302c: b0be fsd fa5,96(sp) + c003302e: 2701 sext.w a4,a4 + c0033030: bf19 j c0032f46 -00000000c0032e62 : +00000000c0033032 : JS_CopySubArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38815 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38823 { - c0032e62: 7155 addi sp,sp,-208 - c0032e64: f94a sd s2,176(sp) - c0032e66: f54e sd s3,168(sp) - c0032e68: f152 sd s4,160(sp) - c0032e6a: ed56 sd s5,152(sp) - c0032e6c: e95a sd s6,144(sp) - c0032e6e: f4ee sd s11,104(sp) - c0032e70: f432 sd a2,40(sp) - c0032e72: 89be mv s3,a5 - c0032e74: e586 sd ra,200(sp) - c0032e76: e1a2 sd s0,192(sp) - c0032e78: fd26 sd s1,184(sp) - c0032e7a: e55e sd s7,136(sp) - c0032e7c: e162 sd s8,128(sp) - c0032e7e: fce6 sd s9,120(sp) - c0032e80: f8ea sd s10,112(sp) - c0032e82: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38822 + c0033032: 7155 addi sp,sp,-208 + c0033034: f94a sd s2,176(sp) + c0033036: f54e sd s3,168(sp) + c0033038: f152 sd s4,160(sp) + c003303a: ed56 sd s5,152(sp) + c003303c: e95a sd s6,144(sp) + c003303e: f4ee sd s11,104(sp) + c0033040: f432 sd a2,40(sp) + c0033042: 89be mv s3,a5 + c0033044: e586 sd ra,200(sp) + c0033046: e1a2 sd s0,192(sp) + c0033048: fd26 sd s1,184(sp) + c003304a: e55e sd s7,136(sp) + c003304c: e162 sd s8,128(sp) + c003304e: fce6 sd s9,120(sp) + c0033050: f8ea sd s10,112(sp) + c0033052: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38830 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0032e84: 2601 sext.w a2,a2 - c0032e86: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38815 + c0033054: 2601 sext.w a2,a2 + c0033056: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38823 { - c0032e88: 892a mv s2,a0 - c0032e8a: 8a36 mv s4,a3 - c0032e8c: 8aba mv s5,a4 - c0032e8e: 8b42 mv s6,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38825 + c0033058: 892a mv s2,a0 + c003305a: 8a36 mv s4,a3 + c003305c: 8aba mv s5,a4 + c003305e: 8b42 mv s6,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38833 p = NULL; - c0032e90: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38822 + c0033060: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38830 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0032e92: 00f61d63 bne a2,a5,c0032eac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38824 + c0033062: 00f61d63 bne a2,a5,c003307c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38832 if (p->class_id != JS_CLASS_ARRAY || !p->fast_array) { - c0032e96: 6198 ld a4,0(a1) - c0032e98: 5785 li a5,-31 - c0032e9a: 17ae slli a5,a5,0x2b - c0032e9c: 8f7d and a4,a4,a5 - c0032e9e: 04100793 li a5,65 - c0032ea2: 17ae slli a5,a5,0x2b -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38823 + c0033066: 6198 ld a4,0(a1) + c0033068: 5785 li a5,-31 + c003306a: 17ae slli a5,a5,0x2b + c003306c: 8f7d and a4,a4,a5 + c003306e: 04100793 li a5,65 + c0033072: 17ae slli a5,a5,0x2b +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38831 p = JS_VALUE_GET_OBJ(obj); - c0032ea4: 8dae mv s11,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38824 + c0033074: 8dae mv s11,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38832 if (p->class_id != JS_CLASS_ARRAY || !p->fast_array) { - c0032ea6: 00f70363 beq a4,a5,c0032eac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38825 + c0033076: 00f70363 beq a4,a5,c003307c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38833 p = NULL; - c0032eaa: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38831 + c003307a: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38839 from = from_pos + count - i - 1; - c0032eac: fffa8b93 addi s7,s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38832 + c003307c: fffa8b93 addi s7,s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38840 to = to_pos + count - i - 1; - c0032eb0: fffa0c13 addi s8,s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38829 + c0033080: fffa0c13 addi s8,s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38837 for (i = 0; i < count; ) { - c0032eb4: 4d01 li s10,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38830 + c0033084: 4d01 li s10,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38838 if (dir < 0) { - c0032eb6: 5cfd li s9,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38831 + c0033086: 5cfd li s9,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38839 from = from_pos + count - i - 1; - c0032eb8: 9bce add s7,s7,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38832 + c0033088: 9bce add s7,s7,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38840 to = to_pos + count - i - 1; - c0032eba: 9c4e add s8,s8,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38829 (discriminator 1) + c003308a: 9c4e add s8,s8,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38837 (discriminator 1) for (i = 0; i < count; ) { - c0032ebc: 013d4463 blt s10,s3,c0032ec4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38876 + c003308c: 013d4463 blt s10,s3,c0033094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38884 return 0; - c0032ec0: 4501 li a0,0 - c0032ec2: a8ed j c0032fbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38830 + c0033090: 4501 li a0,0 + c0033092: a8ed j c003318c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38838 if (dir < 0) { - c0032ec4: 059b1b63 bne s6,s9,c0032f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38831 + c0033094: 059b1b63 bne s6,s9,c00330ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38839 from = from_pos + count - i - 1; - c0032ec8: 41ab86b3 sub a3,s7,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38832 + c0033098: 41ab86b3 sub a3,s7,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38840 to = to_pos + count - i - 1; - c0032ecc: 41ac04b3 sub s1,s8,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38837 + c003309c: 41ac04b3 sub s1,s8,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38845 if (p && p->fast_array && - c0032ed0: 0c0d8d63 beqz s11,c0032faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38837 (discriminator 1) - c0032ed4: 005dc783 lbu a5,5(s11) - c0032ed8: 8ba1 andi a5,a5,8 - c0032eda: cbe1 beqz a5,c0032faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38837 (discriminator 2) - c0032edc: 0c06c763 bltz a3,c0032faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38838 + c00330a0: 0c0d8d63 beqz s11,c003317a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38845 (discriminator 1) + c00330a4: 005dc783 lbu a5,5(s11) + c00330a8: 8ba1 andi a5,a5,8 + c00330aa: cbe1 beqz a5,c003317a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38845 (discriminator 2) + c00330ac: 0c06c763 bltz a3,c003317a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38846 from >= 0 && from < (len = p->u.array.count) && - c0032ee0: 040de403 lwu s0,64(s11) - c0032ee4: 0c86d363 bge a3,s0,c0032faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38839 + c00330b0: 040de403 lwu s0,64(s11) + c00330b4: 0c86d363 bge a3,s0,c003317a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38847 to >= 0 && to < len) { - c0032ee8: 0c84f163 bgeu s1,s0,c0032faa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38844 + c00330b8: 0c84f163 bgeu s1,s0,c003317a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38852 l = count - i; - c0032eec: 41a98633 sub a2,s3,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38845 + c00330bc: 41a98633 sub a2,s3,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38853 if (dir < 0) { - c0032ef0: 00449713 slli a4,s1,0x4 - c0032ef4: 00469793 slli a5,a3,0x4 - c0032ef8: 079b1163 bne s6,s9,c0032f5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38847 + c00330c0: 00449713 slli a4,s1,0x4 + c00330c4: 00469793 slli a5,a3,0x4 + c00330c8: 079b1163 bne s6,s9,c003312a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38855 l = min_int64(l, to + 1); - c0032efc: 0485 addi s1,s1,1 - c0032efe: 00168413 addi s0,a3,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> - c0032f02: 0084d363 bge s1,s0,c0032f08 - c0032f06: 8426 mv s0,s1 - c0032f08: 00865363 bge a2,s0,c0032f0e - c0032f0c: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38848 + c00330cc: 0485 addi s1,s1,1 + c00330ce: 00168413 addi s0,a3,1 # ffffffff80000001 <_ebss+0xfffffffebfefeedb> + c00330d2: 0084d363 bge s1,s0,c00330d8 + c00330d6: 8426 mv s0,s1 + c00330d8: 00865363 bge a2,s0,c00330de + c00330dc: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38856 for(j = 0; j < l; j++) { - c0032f0e: 84be mv s1,a5 - c0032f10: 4801 li a6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38848 (discriminator 1) - c0032f12: 00884963 blt a6,s0,c0032f24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38860 + c00330de: 84be mv s1,a5 + c00330e0: 4801 li a6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38856 (discriminator 1) + c00330e2: 00884963 blt a6,s0,c00330f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38868 i += l; - c0032f16: 9d22 add s10,s10,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38839 + c00330e6: 9d22 add s10,s10,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38847 to >= 0 && to < len) { - c0032f18: b755 j c0032ebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38834 + c00330e8: b755 j c003308c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38842 from = from_pos + i; - c0032f1a: 015d06b3 add a3,s10,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38835 + c00330ea: 015d06b3 add a3,s10,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38843 to = to_pos + i; - c0032f1e: 014d04b3 add s1,s10,s4 - c0032f22: b77d j c0032ed0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38849 (discriminator 3) + c00330ee: 014d04b3 add s1,s10,s4 + c00330f2: b77d j c00330a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38857 (discriminator 3) set_value(ctx, &p->u.array.u.values[to - j], - c0032f24: 038db783 ld a5,56(s11) - c0032f28: ec42 sd a6,24(sp) - c0032f2a: e83a sd a4,16(sp) - c0032f2c: 00e788b3 add a7,a5,a4 - c0032f30: 97a6 add a5,a5,s1 - c0032f32: 6388 ld a0,0(a5) - c0032f34: 678c ld a1,8(a5) - c0032f36: e446 sd a7,8(sp) - c0032f38: 14c1 addi s1,s1,-16 - c0032f3a: f34d30ef jal ra,c000666e - c0032f3e: 68a2 ld a7,8(sp) - c0032f40: 862a mv a2,a0 - c0032f42: 86ae mv a3,a1 - c0032f44: e0aa sd a0,64(sp) - c0032f46: e4ae sd a1,72(sp) - c0032f48: 854a mv a0,s2 - c0032f4a: 85c6 mv a1,a7 - c0032f4c: 836d50ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38848 (discriminator 3) + c00330f4: 038db783 ld a5,56(s11) + c00330f8: ec42 sd a6,24(sp) + c00330fa: e83a sd a4,16(sp) + c00330fc: 00e788b3 add a7,a5,a4 + c0033100: 97a6 add a5,a5,s1 + c0033102: 6388 ld a0,0(a5) + c0033104: 678c ld a1,8(a5) + c0033106: e446 sd a7,8(sp) + c0033108: 14c1 addi s1,s1,-16 + c003310a: e52d30ef jal ra,c000675c + c003310e: 68a2 ld a7,8(sp) + c0033110: 862a mv a2,a0 + c0033112: 86ae mv a3,a1 + c0033114: e0aa sd a0,64(sp) + c0033116: e4ae sd a1,72(sp) + c0033118: 854a mv a0,s2 + c003311a: 85c6 mv a1,a7 + c003311c: f55d40ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38856 (discriminator 3) for(j = 0; j < l; j++) { - c0032f50: 6862 ld a6,24(sp) - c0032f52: 6742 ld a4,16(sp) - c0032f54: 0805 addi a6,a6,1 - c0032f56: 1741 addi a4,a4,-16 - c0032f58: bf6d j c0032f12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38854 + c0033120: 6862 ld a6,24(sp) + c0033122: 6742 ld a4,16(sp) + c0033124: 0805 addi a6,a6,1 + c0033126: 1741 addi a4,a4,-16 + c0033128: bf6d j c00330e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38862 l = min_int64(l, len - to); - c0032f5a: 409404b3 sub s1,s0,s1 - c0032f5e: 8c15 sub s0,s0,a3 - c0032f60: 0084d363 bge s1,s0,c0032f66 - c0032f64: 8426 mv s0,s1 - c0032f66: 00865363 bge a2,s0,c0032f6c - c0032f6a: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38855 + c003312a: 409404b3 sub s1,s0,s1 + c003312e: 8c15 sub s0,s0,a3 + c0033130: 0084d363 bge s1,s0,c0033136 + c0033134: 8426 mv s0,s1 + c0033136: 00865363 bge a2,s0,c003313c + c003313a: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38863 for(j = 0; j < l; j++) { - c0032f6c: 84be mv s1,a5 - c0032f6e: 4801 li a6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38855 (discriminator 1) - c0032f70: fa8853e3 bge a6,s0,c0032f16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38856 (discriminator 3) + c003313c: 84be mv s1,a5 + c003313e: 4801 li a6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38863 (discriminator 1) + c0033140: fa8853e3 bge a6,s0,c00330e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38864 (discriminator 3) set_value(ctx, &p->u.array.u.values[to + j], - c0032f74: 038db783 ld a5,56(s11) - c0032f78: ec42 sd a6,24(sp) - c0032f7a: e83a sd a4,16(sp) - c0032f7c: 00e788b3 add a7,a5,a4 - c0032f80: 97a6 add a5,a5,s1 - c0032f82: 6388 ld a0,0(a5) - c0032f84: 678c ld a1,8(a5) - c0032f86: e446 sd a7,8(sp) - c0032f88: 04c1 addi s1,s1,16 - c0032f8a: ee4d30ef jal ra,c000666e - c0032f8e: 68a2 ld a7,8(sp) - c0032f90: 862a mv a2,a0 - c0032f92: 86ae mv a3,a1 - c0032f94: e8aa sd a0,80(sp) - c0032f96: ecae sd a1,88(sp) - c0032f98: 854a mv a0,s2 - c0032f9a: 85c6 mv a1,a7 - c0032f9c: fe7d40ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38855 (discriminator 3) + c0033144: 038db783 ld a5,56(s11) + c0033148: ec42 sd a6,24(sp) + c003314a: e83a sd a4,16(sp) + c003314c: 00e788b3 add a7,a5,a4 + c0033150: 97a6 add a5,a5,s1 + c0033152: 6388 ld a0,0(a5) + c0033154: 678c ld a1,8(a5) + c0033156: e446 sd a7,8(sp) + c0033158: 04c1 addi s1,s1,16 + c003315a: e02d30ef jal ra,c000675c + c003315e: 68a2 ld a7,8(sp) + c0033160: 862a mv a2,a0 + c0033162: 86ae mv a3,a1 + c0033164: e8aa sd a0,80(sp) + c0033166: ecae sd a1,88(sp) + c0033168: 854a mv a0,s2 + c003316a: 85c6 mv a1,a7 + c003316c: f05d40ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38863 (discriminator 3) for(j = 0; j < l; j++) { - c0032fa0: 6862 ld a6,24(sp) - c0032fa2: 6742 ld a4,16(sp) - c0032fa4: 0805 addi a6,a6,1 - c0032fa6: 0741 addi a4,a4,16 - c0032fa8: b7e1 j c0032f70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38862 + c0033170: 6862 ld a6,24(sp) + c0033172: 6742 ld a4,16(sp) + c0033174: 0805 addi a6,a6,1 + c0033176: 0741 addi a4,a4,16 + c0033178: b7e1 j c0033140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38870 fromPresent = JS_TryGetPropertyInt64(ctx, obj, from, &val); - c0032faa: 7582 ld a1,32(sp) - c0032fac: 7622 ld a2,40(sp) - c0032fae: 1818 addi a4,sp,48 - c0032fb0: 854a mv a0,s2 - c0032fb2: d2aff0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38863 + c003317a: 7582 ld a1,32(sp) + c003317c: 7622 ld a2,40(sp) + c003317e: 1818 addi a4,sp,48 + c0033180: 854a mv a0,s2 + c0033182: d2aff0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38871 if (fromPresent < 0) - c0032fb6: 02055263 bgez a0,c0032fda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38879 + c0033186: 02055263 bgez a0,c00331aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38887 return -1; - c0032fba: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38880 -} - c0032fbc: 60ae ld ra,200(sp) - c0032fbe: 640e ld s0,192(sp) - c0032fc0: 74ea ld s1,184(sp) - c0032fc2: 794a ld s2,176(sp) - c0032fc4: 79aa ld s3,168(sp) - c0032fc6: 7a0a ld s4,160(sp) - c0032fc8: 6aea ld s5,152(sp) - c0032fca: 6b4a ld s6,144(sp) - c0032fcc: 6baa ld s7,136(sp) - c0032fce: 6c0a ld s8,128(sp) - c0032fd0: 7ce6 ld s9,120(sp) - c0032fd2: 7d46 ld s10,112(sp) - c0032fd4: 7da6 ld s11,104(sp) - c0032fd6: 6169 addi sp,sp,208 - c0032fd8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38866 + c003318a: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38888 +} + c003318c: 60ae ld ra,200(sp) + c003318e: 640e ld s0,192(sp) + c0033190: 74ea ld s1,184(sp) + c0033192: 794a ld s2,176(sp) + c0033194: 79aa ld s3,168(sp) + c0033196: 7a0a ld s4,160(sp) + c0033198: 6aea ld s5,152(sp) + c003319a: 6b4a ld s6,144(sp) + c003319c: 6baa ld s7,136(sp) + c003319e: 6c0a ld s8,128(sp) + c00331a0: 7ce6 ld s9,120(sp) + c00331a2: 7d46 ld s10,112(sp) + c00331a4: 7da6 ld s11,104(sp) + c00331a6: 6169 addi sp,sp,208 + c00331a8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38874 if (fromPresent) { - c0032fda: cd09 beqz a0,c0032ff4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38867 + c00331aa: cd09 beqz a0,c00331c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38875 if (JS_SetPropertyInt64(ctx, obj, to, val) < 0) - c0032fdc: 7742 ld a4,48(sp) - c0032fde: 77e2 ld a5,56(sp) - c0032fe0: 7582 ld a1,32(sp) - c0032fe2: 7622 ld a2,40(sp) - c0032fe4: 86a6 mv a3,s1 - c0032fe6: 854a mv a0,s2 - c0032fe8: b78fd0ef jal ra,c0030360 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38870 + c00331ac: 7742 ld a4,48(sp) + c00331ae: 77e2 ld a5,56(sp) + c00331b0: 7582 ld a1,32(sp) + c00331b2: 7622 ld a2,40(sp) + c00331b4: 86a6 mv a3,s1 + c00331b6: 854a mv a0,s2 + c00331b8: b78fd0ef jal ra,c0030530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38878 if (JS_DeletePropertyInt64(ctx, obj, to, JS_PROP_THROW) < 0) - c0032fec: fc0547e3 bltz a0,c0032fba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38873 + c00331bc: fc0547e3 bltz a0,c003318a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38881 i++; - c0032ff0: 0d05 addi s10,s10,1 - c0032ff2: b5e9 j c0032ebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38870 + c00331c0: 0d05 addi s10,s10,1 + c00331c2: b5e9 j c003308c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38878 if (JS_DeletePropertyInt64(ctx, obj, to, JS_PROP_THROW) < 0) - c0032ff4: 7582 ld a1,32(sp) - c0032ff6: 7622 ld a2,40(sp) - c0032ff8: 6711 lui a4,0x4 - c0032ffa: 86a6 mv a3,s1 - c0032ffc: 854a mv a0,s2 - c0032ffe: 893f50ef jal ra,c0028890 - c0033002: b7ed j c0032fec - -00000000c0033004 : + c00331c4: 7582 ld a1,32(sp) + c00331c6: 7622 ld a2,40(sp) + c00331c8: 6711 lui a4,0x4 + c00331ca: 86a6 mv a3,s1 + c00331cc: 854a mv a0,s2 + c00331ce: 893f50ef jal ra,c0028a60 + c00331d2: b7ed j c00331bc + +00000000c00331d4 : js_array_copyWithin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40302 -{ - c0033004: 7159 addi sp,sp,-112 - c0033006: f0a2 sd s0,96(sp) - c0033008: eca6 sd s1,88(sp) - c003300a: e8ca sd s2,80(sp) - c003300c: f486 sd ra,104(sp) - c003300e: 842a mv s0,a0 - c0033010: 8936 mv s2,a3 - c0033012: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40310 +{ + c00331d4: 7159 addi sp,sp,-112 + c00331d6: f0a2 sd s0,96(sp) + c00331d8: eca6 sd s1,88(sp) + c00331da: e8ca sd s2,80(sp) + c00331dc: f486 sd ra,104(sp) + c00331de: 842a mv s0,a0 + c00331e0: 8936 mv s2,a3 + c00331e2: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40314 obj = JS_ToObject(ctx, this_val); - c0033014: dd8f50ef jal ra,c00285ec - c0033018: 862a mv a2,a0 - c003301a: 86ae mv a3,a1 - c003301c: f82a sd a0,48(sp) - c003301e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40307 + c00331e4: dd8f50ef jal ra,c00287bc + c00331e8: 862a mv a2,a0 + c00331ea: 86ae mv a3,a1 + c00331ec: f82a sd a0,48(sp) + c00331ee: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40315 if (js_get_length64(ctx, &len, obj)) - c0033020: 8522 mv a0,s0 - c0033022: 080c addi a1,sp,16 - c0033024: 81beb0ef jal ra,c001e83e - c0033028: e52d bnez a0,c0033092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40310 + c00331f0: 8522 mv a0,s0 + c00331f2: 080c addi a1,sp,16 + c00331f4: 81beb0ef jal ra,c001ea0e + c00331f8: e52d bnez a0,c0033262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40318 if (JS_ToInt64Clamp(ctx, &to, argv[0], 0, len, len)) - c003302a: 6842 ld a6,16(sp) - c003302c: 6090 ld a2,0(s1) - c003302e: 6494 ld a3,8(s1) - c0033030: 87c2 mv a5,a6 - c0033032: 4701 li a4,0 - c0033034: 100c addi a1,sp,32 - c0033036: 8522 mv a0,s0 - c0033038: f76eb0ef jal ra,c001e7ae - c003303c: e939 bnez a0,c0033092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40313 + c00331fa: 6842 ld a6,16(sp) + c00331fc: 6090 ld a2,0(s1) + c00331fe: 6494 ld a3,8(s1) + c0033200: 87c2 mv a5,a6 + c0033202: 4701 li a4,0 + c0033204: 100c addi a1,sp,32 + c0033206: 8522 mv a0,s0 + c0033208: f76eb0ef jal ra,c001e97e + c003320c: e939 bnez a0,c0033262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40321 if (JS_ToInt64Clamp(ctx, &from, argv[1], 0, len, len)) - c003303e: 6842 ld a6,16(sp) - c0033040: 6890 ld a2,16(s1) - c0033042: 6c94 ld a3,24(s1) - c0033044: 87c2 mv a5,a6 - c0033046: 4701 li a4,0 - c0033048: 082c addi a1,sp,24 - c003304a: 8522 mv a0,s0 - c003304c: f62eb0ef jal ra,c001e7ae - c0033050: e129 bnez a0,c0033092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40316 + c003320e: 6842 ld a6,16(sp) + c0033210: 6890 ld a2,16(s1) + c0033212: 6c94 ld a3,24(s1) + c0033214: 87c2 mv a5,a6 + c0033216: 4701 li a4,0 + c0033218: 082c addi a1,sp,24 + c003321a: 8522 mv a0,s0 + c003321c: f62eb0ef jal ra,c001e97e + c0033220: e129 bnez a0,c0033262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40324 final = len; - c0033052: 6842 ld a6,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40317 + c0033222: 6842 ld a6,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40325 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c0033054: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40316 + c0033224: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40324 final = len; - c0033056: f442 sd a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40317 + c0033226: f442 sd a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40325 if (argc > 2 && !JS_IsUndefined(argv[2])) { - c0033058: 0127cf63 blt a5,s2,c0033076 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40322 + c0033228: 0127cf63 blt a5,s2,c0033246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40330 count = min_int64(final - from, len - to); - c003305c: 6762 ld a4,24(sp) - c003305e: 7682 ld a3,32(sp) - c0033060: 6642 ld a2,16(sp) - c0033062: 77a2 ld a5,40(sp) - c0033064: 8e15 sub a2,a2,a3 - c0033066: 8f99 sub a5,a5,a4 - c0033068: 00f65363 bge a2,a5,c003306e - c003306c: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40324 + c003322c: 6762 ld a4,24(sp) + c003322e: 7682 ld a3,32(sp) + c0033230: 6642 ld a2,16(sp) + c0033232: 77a2 ld a5,40(sp) + c0033234: 8e15 sub a2,a2,a3 + c0033236: 8f99 sub a5,a5,a4 + c0033238: 00f65363 bge a2,a5,c003323e + c003323c: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40332 if (JS_CopySubArray(ctx, obj, to, from, count, - c003306e: 02d74a63 blt a4,a3,c00330a2 - c0033072: 4805 li a6,1 - c0033074: a825 j c00330ac + c003323e: 02d74a63 blt a4,a3,c0033272 + c0033242: 4805 li a6,1 + c0033244: a825 j c003327c JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0033076: 7494 ld a3,40(s1) + c0033246: 7494 ld a3,40(s1) js_array_copyWithin(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40317 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40325 (discriminator 1) if (argc > 2 && !JS_IsUndefined(argv[2])) { - c0033078: 478d li a5,3 - c003307a: 0006871b sext.w a4,a3 - c003307e: fcf70fe3 beq a4,a5,c003305c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40318 + c0033248: 478d li a5,3 + c003324a: 0006871b sext.w a4,a3 + c003324e: fcf70fe3 beq a4,a5,c003322c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40326 if (JS_ToInt64Clamp(ctx, &final, argv[2], 0, len, len)) - c0033082: 7090 ld a2,32(s1) - c0033084: 87c2 mv a5,a6 - c0033086: 4701 li a4,0 - c0033088: 102c addi a1,sp,40 - c003308a: 8522 mv a0,s0 - c003308c: f22eb0ef jal ra,c001e7ae - c0033090: d571 beqz a0,c003305c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40331 + c0033252: 7090 ld a2,32(s1) + c0033254: 87c2 mv a5,a6 + c0033256: 4701 li a4,0 + c0033258: 102c addi a1,sp,40 + c003325a: 8522 mv a0,s0 + c003325c: f22eb0ef jal ra,c001e97e + c0033260: d571 beqz a0,c003322c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40339 JS_FreeValue(ctx, obj); - c0033092: 75c2 ld a1,48(sp) - c0033094: 7662 ld a2,56(sp) - c0033096: 8522 mv a0,s0 - c0033098: aa1d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40332 + c0033262: 75c2 ld a1,48(sp) + c0033264: 7662 ld a2,56(sp) + c0033266: 8522 mv a0,s0 + c0033268: 9bfd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40340 return JS_EXCEPTION; - c003309c: 4799 li a5,6 - c003309e: e082 sd zero,64(sp) - c00330a0: a839 j c00330be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40325 + c003326c: 4799 li a5,6 + c003326e: e082 sd zero,64(sp) + c0033270: a839 j c003328e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40333 (from < to && to < from + count) ? -1 : +1)) - c00330a2: 00f70633 add a2,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40324 + c0033272: 00f70633 add a2,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40332 if (JS_CopySubArray(ctx, obj, to, from, count, - c00330a6: 587d li a6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40325 + c0033276: 587d li a6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40333 (from < to && to < from + count) ? -1 : +1)) - c00330a8: fcc6d5e3 bge a3,a2,c0033072 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40324 (discriminator 3) + c0033278: fcc6d5e3 bge a3,a2,c0033242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40332 (discriminator 3) if (JS_CopySubArray(ctx, obj, to, from, count, - c00330ac: 75c2 ld a1,48(sp) - c00330ae: 7662 ld a2,56(sp) - c00330b0: 8522 mv a0,s0 - c00330b2: db1ff0ef jal ra,c0032e62 - c00330b6: fd71 bnez a0,c0033092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40328 + c003327c: 75c2 ld a1,48(sp) + c003327e: 7662 ld a2,56(sp) + c0033280: 8522 mv a0,s0 + c0033282: db1ff0ef jal ra,c0033032 + c0033286: fd71 bnez a0,c0033262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40336 return obj; - c00330b8: 77c2 ld a5,48(sp) - c00330ba: e0be sd a5,64(sp) - c00330bc: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40333 + c0033288: 77c2 ld a5,48(sp) + c003328a: e0be sd a5,64(sp) + c003328c: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40341 } - c00330be: 70a6 ld ra,104(sp) - c00330c0: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40332 + c003328e: 70a6 ld ra,104(sp) + c0033290: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40340 return JS_EXCEPTION; - c00330c2: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40333 + c0033292: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40341 } - c00330c4: 6506 ld a0,64(sp) - c00330c6: 65a6 ld a1,72(sp) - c00330c8: 64e6 ld s1,88(sp) - c00330ca: 6946 ld s2,80(sp) - c00330cc: 6165 addi sp,sp,112 - c00330ce: 8082 ret + c0033294: 6506 ld a0,64(sp) + c0033296: 65a6 ld a1,72(sp) + c0033298: 64e6 ld s1,88(sp) + c003329a: 6946 ld s2,80(sp) + c003329c: 6165 addi sp,sp,112 + c003329e: 8082 ret -00000000c00330d0 : +00000000c00332a0 : js_array_pop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39895 -{ - c00330d0: 7171 addi sp,sp,-176 - c00330d2: f122 sd s0,160(sp) - c00330d4: ed26 sd s1,152(sp) - c00330d6: f506 sd ra,168(sp) - c00330d8: e94a sd s2,144(sp) - c00330da: e54e sd s3,136(sp) - c00330dc: 84aa mv s1,a0 - c00330de: e432 sd a2,8(sp) - c00330e0: e02e sd a1,0(sp) - c00330e2: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39896 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39903 +{ + c00332a0: 7171 addi sp,sp,-176 + c00332a2: f122 sd s0,160(sp) + c00332a4: ed26 sd s1,152(sp) + c00332a6: f506 sd ra,168(sp) + c00332a8: e94a sd s2,144(sp) + c00332aa: e54e sd s3,136(sp) + c00332ac: 84aa mv s1,a0 + c00332ae: e432 sd a2,8(sp) + c00332b0: e02e sd a1,0(sp) + c00332b2: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39904 JSValue obj, res = JS_UNDEFINED; - c00330e4: e082 sd zero,64(sp) - c00330e6: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39901 + c00332b4: e082 sd zero,64(sp) + c00332b6: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39909 obj = JS_ToObject(ctx, this_val); - c00330e8: d04f50ef jal ra,c00285ec - c00330ec: 862a mv a2,a0 - c00330ee: 86ae mv a3,a1 - c00330f0: f82a sd a0,48(sp) - c00330f2: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39902 + c00332b8: d04f50ef jal ra,c00287bc + c00332bc: 862a mv a2,a0 + c00332be: 86ae mv a3,a1 + c00332c0: f82a sd a0,48(sp) + c00332c2: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39910 if (js_get_length64(ctx, &len, obj)) - c00330f4: 8526 mv a0,s1 - c00330f6: 100c addi a1,sp,32 - c00330f8: f46eb0ef jal ra,c001e83e - c00330fc: 12051d63 bnez a0,c0033236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39905 + c00332c4: 8526 mv a0,s1 + c00332c6: 100c addi a1,sp,32 + c00332c8: f46eb0ef jal ra,c001ea0e + c00332cc: 12051d63 bnez a0,c0033406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39913 if (len > 0) { - c0033100: 7902 ld s2,32(sp) - c0033102: 0f205663 blez s2,c00331ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39908 + c00332d0: 7902 ld s2,32(sp) + c00332d2: 0f205663 blez s2,c00333be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39916 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0033106: 7542 ld a0,48(sp) - c0033108: 75e2 ld a1,56(sp) - c003310a: 0874 addi a3,sp,28 - c003310c: 1030 addi a2,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39906 + c00332d6: 7542 ld a0,48(sp) + c00332d8: 75e2 ld a1,56(sp) + c00332da: 0874 addi a3,sp,28 + c00332dc: 1030 addi a2,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39914 newLen = len - 1; - c003310e: 197d addi s2,s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39908 + c00332de: 197d addi s2,s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39916 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0033110: aa2d30ef jal ra,c00063b2 - c0033114: cd39 beqz a0,c0033172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39908 (discriminator 1) - c0033116: 4672 lw a2,28(sp) - c0033118: 7782 ld a5,32(sp) - c003311a: 02061713 slli a4,a2,0x20 - c003311e: 9301 srli a4,a4,0x20 - c0033120: 04f71963 bne a4,a5,c0033172 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39912 + c00332e0: 9c0d30ef jal ra,c00064a0 + c00332e4: cd39 beqz a0,c0033342 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39916 (discriminator 1) + c00332e6: 4672 lw a2,28(sp) + c00332e8: 7782 ld a5,32(sp) + c00332ea: 02061713 slli a4,a2,0x20 + c00332ee: 9301 srli a4,a4,0x20 + c00332f0: 04f71963 bne a4,a5,c0033342 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 memmove(arrp, arrp + 1, (count32 - 1) * sizeof(*arrp)); - c0033124: 367d addiw a2,a2,-1 - c0033126: 02061793 slli a5,a2,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39909 + c00332f4: 367d addiw a2,a2,-1 + c00332f6: 02061793 slli a5,a2,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39917 JSObject *p = JS_VALUE_GET_OBJ(obj); - c003312a: 79c2 ld s3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39911 + c00332fa: 79c2 ld s3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39919 res = arrp[0]; - c003312c: 7522 ld a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39912 + c00332fc: 7522 ld a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 memmove(arrp, arrp + 1, (count32 - 1) * sizeof(*arrp)); - c003312e: 01c7d613 srli a2,a5,0x1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39910 + c00332fe: 01c7d613 srli a2,a5,0x1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39918 if (shift) { - c0033132: c815 beqz s0,c0033166 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39911 + c0033302: c815 beqz s0,c0033336 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39919 res = arrp[0]; - c0033134: 611c ld a5,0(a0) - c0033136: 6500 ld s0,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39912 + c0033304: 611c ld a5,0(a0) + c0033306: 6500 ld s0,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 memmove(arrp, arrp + 1, (count32 - 1) * sizeof(*arrp)); - c0033138: 01050593 addi a1,a0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39911 + c0033308: 01050593 addi a1,a0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39919 res = arrp[0]; - c003313c: e0be sd a5,64(sp) - c003313e: e4a2 sd s0,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39912 + c003330c: e0be sd a5,64(sp) + c003330e: e4a2 sd s0,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 memmove(arrp, arrp + 1, (count32 - 1) * sizeof(*arrp)); - c0033140: 6ee230ef jal ra,c005682e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39916 + c0033310: 6ee230ef jal ra,c00569fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39924 p->u.array.count--; - c0033144: 0409a783 lw a5,64(s3) - c0033148: 37fd addiw a5,a5,-1 - c003314a: 04f9a023 sw a5,64(s3) + c0033314: 0409a783 lw a5,64(s3) + c0033318: 37fd addiw a5,a5,-1 + c003331a: 04f9a023 sw a5,64(s3) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003314e: 0009071b sext.w a4,s2 - c0033152: 0ae90063 beq s2,a4,c00331f2 + c003331e: 0009071b sext.w a4,s2 + c0033322: 0ae90063 beq s2,a4,c00333c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0033156: d22977d3 fcvt.d.l fa5,s2 - c003315a: 479d li a5,7 - c003315c: e2078753 fmv.x.d a4,fa5 + c0033326: d22977d3 fcvt.d.l fa5,s2 + c003332a: 479d li a5,7 + c003332c: e2078753 fmv.x.d a4,fa5 js_array_pop(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0033160: b0be fsd fa5,96(sp) - c0033162: 2701 sext.w a4,a4 - c0033164: a869 j c00331fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39915 + c0033330: b0be fsd fa5,96(sp) + c0033332: 2701 sext.w a4,a4 + c0033334: a869 j c00333ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39923 res = arrp[count32 - 1]; - c0033166: 9532 add a0,a0,a2 - c0033168: 611c ld a5,0(a0) - c003316a: 6500 ld s0,8(a0) - c003316c: e0be sd a5,64(sp) - c003316e: e4a2 sd s0,72(sp) - c0033170: bfd1 j c0033144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39919 + c0033336: 9532 add a0,a0,a2 + c0033338: 611c ld a5,0(a0) + c003333a: 6500 ld s0,8(a0) + c003333c: e0be sd a5,64(sp) + c003333e: e4a2 sd s0,72(sp) + c0033340: bfd1 j c0033314 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39927 if (shift) { - c0033172: c439 beqz s0,c00331c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 + c0033342: c439 beqz s0,c0033390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39928 res = JS_GetPropertyInt64(ctx, obj, 0); - c0033174: 75c2 ld a1,48(sp) - c0033176: 7662 ld a2,56(sp) - c0033178: 4681 li a3,0 - c003317a: 8526 mv a0,s1 - c003317c: d53fe0ef jal ra,c0031ece - c0033180: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39921 + c0033344: 75c2 ld a1,48(sp) + c0033346: 7662 ld a2,56(sp) + c0033348: 4681 li a3,0 + c003334a: 8526 mv a0,s1 + c003334c: d53fe0ef jal ra,c003209e + c0033350: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39929 if (JS_IsException(res)) - c0033182: 0005871b sext.w a4,a1 - c0033186: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39920 + c0033352: 0005871b sext.w a4,a1 + c0033356: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39928 res = JS_GetPropertyInt64(ctx, obj, 0); - c0033188: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39921 + c0033358: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39929 if (JS_IsException(res)) - c003318a: 00f70d63 beq a4,a5,c00331a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39923 + c003335a: 00f70d63 beq a4,a5,c0033374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39931 if (JS_CopySubArray(ctx, obj, 0, 1, len - 1, +1)) - c003318e: 7782 ld a5,32(sp) - c0033190: 75c2 ld a1,48(sp) - c0033192: 7662 ld a2,56(sp) - c0033194: 4805 li a6,1 - c0033196: 17fd addi a5,a5,-1 - c0033198: 4705 li a4,1 - c003319a: 4681 li a3,0 - c003319c: 8526 mv a0,s1 - c003319e: cc5ff0ef jal ra,c0032e62 - c00331a2: cd05 beqz a0,c00331da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39941 + c003335e: 7782 ld a5,32(sp) + c0033360: 75c2 ld a1,48(sp) + c0033362: 7662 ld a2,56(sp) + c0033364: 4805 li a6,1 + c0033366: 17fd addi a5,a5,-1 + c0033368: 4705 li a4,1 + c003336a: 4681 li a3,0 + c003336c: 8526 mv a0,s1 + c003336e: cc5ff0ef jal ra,c0033032 + c0033372: cd05 beqz a0,c00333aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39949 JS_FreeValue(ctx, res); - c00331a4: 6586 ld a1,64(sp) - c00331a6: 8622 mv a2,s0 - c00331a8: 8526 mv a0,s1 - c00331aa: 98fd40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39942 + c0033374: 6586 ld a1,64(sp) + c0033376: 8622 mv a2,s0 + c0033378: 8526 mv a0,s1 + c003337a: 8add40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39950 JS_FreeValue(ctx, obj); - c00331ae: 75c2 ld a1,48(sp) - c00331b0: 7662 ld a2,56(sp) - c00331b2: 8526 mv a0,s1 - c00331b4: 985d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39943 + c003337e: 75c2 ld a1,48(sp) + c0033380: 7662 ld a2,56(sp) + c0033382: 8526 mv a0,s1 + c0033384: 8a3d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39951 return JS_EXCEPTION; - c00331b8: 4799 li a5,6 - c00331ba: f082 sd zero,96(sp) - c00331bc: f4be sd a5,104(sp) - c00331be: a09d j c0033224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39926 + c0033388: 4799 li a5,6 + c003338a: f082 sd zero,96(sp) + c003338c: f4be sd a5,104(sp) + c003338e: a09d j c00333f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39934 res = JS_GetPropertyInt64(ctx, obj, newLen); - c00331c0: 75c2 ld a1,48(sp) - c00331c2: 7662 ld a2,56(sp) - c00331c4: 86ca mv a3,s2 - c00331c6: 8526 mv a0,s1 - c00331c8: d07fe0ef jal ra,c0031ece - c00331cc: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39927 + c0033390: 75c2 ld a1,48(sp) + c0033392: 7662 ld a2,56(sp) + c0033394: 86ca mv a3,s2 + c0033396: 8526 mv a0,s1 + c0033398: d07fe0ef jal ra,c003209e + c003339c: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39935 if (JS_IsException(res)) - c00331ce: 0005871b sext.w a4,a1 - c00331d2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39926 + c003339e: 0005871b sext.w a4,a1 + c00333a2: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39934 res = JS_GetPropertyInt64(ctx, obj, newLen); - c00331d4: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39927 + c00333a4: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39935 if (JS_IsException(res)) - c00331d6: fcf707e3 beq a4,a5,c00331a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39930 + c00333a6: fcf707e3 beq a4,a5,c0033374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39938 if (JS_DeletePropertyInt64(ctx, obj, newLen, JS_PROP_THROW) < 0) - c00331da: 75c2 ld a1,48(sp) - c00331dc: 7662 ld a2,56(sp) - c00331de: 6711 lui a4,0x4 - c00331e0: 86ca mv a3,s2 - c00331e2: 8526 mv a0,s1 - c00331e4: eacf50ef jal ra,c0028890 - c00331e8: f60553e3 bgez a0,c003314e - c00331ec: bf65 j c00331a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39896 + c00333aa: 75c2 ld a1,48(sp) + c00333ac: 7662 ld a2,56(sp) + c00333ae: 6711 lui a4,0x4 + c00333b0: 86ca mv a3,s2 + c00333b2: 8526 mv a0,s1 + c00333b4: eacf50ef jal ra,c0028a60 + c00333b8: f60553e3 bgez a0,c003331e + c00333bc: bf65 j c0033374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39904 JSValue obj, res = JS_UNDEFINED; - c00331ee: 440d li s0,3 - c00331f0: 4701 li a4,0 + c00333be: 440d li s0,3 + c00333c0: 4701 li a4,0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00331f2: da82 sw zero,116(sp) - c00331f4: d8ba sw a4,112(sp) - c00331f6: 77c6 ld a5,112(sp) - c00331f8: f482 sd zero,104(sp) - c00331fa: f0be sd a5,96(sp) - c00331fc: 4781 li a5,0 + c00333c2: da82 sw zero,116(sp) + c00333c4: d8ba sw a4,112(sp) + c00333c6: 77c6 ld a5,112(sp) + c00333c8: f482 sd zero,104(sp) + c00333ca: f0be sd a5,96(sp) + c00333cc: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00331fe: d0ba sw a4,96(sp) + c00333ce: d0ba sw a4,96(sp) js_array_pop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39934 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39942 if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewInt64(ctx, newLen)) < 0) - c0033200: 7706 ld a4,96(sp) - c0033202: 75c2 ld a1,48(sp) - c0033204: 7662 ld a2,56(sp) - c0033206: 03000693 li a3,48 - c003320a: 8526 mv a0,s1 - c003320c: eedfc0ef jal ra,c00300f8 - c0033210: f8054ae3 bltz a0,c00331a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39937 + c00333d0: 7706 ld a4,96(sp) + c00333d2: 75c2 ld a1,48(sp) + c00333d4: 7662 ld a2,56(sp) + c00333d6: 03000693 li a3,48 + c00333da: 8526 mv a0,s1 + c00333dc: eedfc0ef jal ra,c00302c8 + c00333e0: f8054ae3 bltz a0,c0033374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39945 JS_FreeValue(ctx, obj); - c0033214: 75c2 ld a1,48(sp) - c0033216: 7662 ld a2,56(sp) - c0033218: 8526 mv a0,s1 - c003321a: 91fd40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39938 + c00333e4: 75c2 ld a1,48(sp) + c00333e6: 7662 ld a2,56(sp) + c00333e8: 8526 mv a0,s1 + c00333ea: 83dd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39946 return res; - c003321e: 6786 ld a5,64(sp) - c0033220: f4a2 sd s0,104(sp) - c0033222: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39944 -} - c0033224: 70aa ld ra,168(sp) - c0033226: 740a ld s0,160(sp) - c0033228: 7506 ld a0,96(sp) - c003322a: 75a6 ld a1,104(sp) - c003322c: 64ea ld s1,152(sp) - c003322e: 694a ld s2,144(sp) - c0033230: 69aa ld s3,136(sp) - c0033232: 614d addi sp,sp,176 - c0033234: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39896 + c00333ee: 6786 ld a5,64(sp) + c00333f0: f4a2 sd s0,104(sp) + c00333f2: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39952 +} + c00333f4: 70aa ld ra,168(sp) + c00333f6: 740a ld s0,160(sp) + c00333f8: 7506 ld a0,96(sp) + c00333fa: 75a6 ld a1,104(sp) + c00333fc: 64ea ld s1,152(sp) + c00333fe: 694a ld s2,144(sp) + c0033400: 69aa ld s3,136(sp) + c0033402: 614d addi sp,sp,176 + c0033404: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39904 JSValue obj, res = JS_UNDEFINED; - c0033236: 440d li s0,3 - c0033238: b7b5 j c00331a4 + c0033406: 440d li s0,3 + c0033408: b7b5 j c0033374 -00000000c003323a : +00000000c003340a : js_array_push(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39948 -{ - c003323a: 7131 addi sp,sp,-192 - c003323c: f922 sd s0,176(sp) - c003323e: f14a sd s2,160(sp) - c0033240: ed4e sd s3,152(sp) - c0033242: e556 sd s5,136(sp) - c0033244: fd06 sd ra,184(sp) - c0033246: f526 sd s1,168(sp) - c0033248: e952 sd s4,144(sp) - c003324a: 842a mv s0,a0 - c003324c: 8936 mv s2,a3 - c003324e: 8aba mv s5,a4 - c0033250: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39953 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39956 +{ + c003340a: 7131 addi sp,sp,-192 + c003340c: f922 sd s0,176(sp) + c003340e: f14a sd s2,160(sp) + c0033410: ed4e sd s3,152(sp) + c0033412: e556 sd s5,136(sp) + c0033414: fd06 sd ra,184(sp) + c0033416: f526 sd s1,168(sp) + c0033418: e952 sd s4,144(sp) + c003341a: 842a mv s0,a0 + c003341c: 8936 mv s2,a3 + c003341e: 8aba mv s5,a4 + c0033420: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39961 obj = JS_ToObject(ctx, this_val); - c0033252: b9af50ef jal ra,c00285ec - c0033256: 862a mv a2,a0 - c0033258: 86ae mv a3,a1 - c003325a: f02a sd a0,32(sp) - c003325c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39954 + c0033422: b9af50ef jal ra,c00287bc + c0033426: 862a mv a2,a0 + c0033428: 86ae mv a3,a1 + c003342a: f02a sd a0,32(sp) + c003342c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39962 if (js_get_length64(ctx, &len, obj)) - c003325e: 8522 mv a0,s0 - c0033260: 082c addi a1,sp,24 - c0033262: ddceb0ef jal ra,c001e83e - c0033266: ed19 bnez a0,c0033284 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39956 + c003342e: 8522 mv a0,s0 + c0033430: 082c addi a1,sp,24 + c0033432: ddceb0ef jal ra,c001ea0e + c0033436: ed19 bnez a0,c0033454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39964 newLen = len + argc; - c0033268: 6a62 ld s4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39957 + c0033438: 6a62 ld s4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39965 if (newLen > MAX_SAFE_INTEGER) { - c003326a: 57fd li a5,-1 - c003326c: 83ad srli a5,a5,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39956 + c003343a: 57fd li a5,-1 + c003343c: 83ad srli a5,a5,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39964 newLen = len + argc; - c003326e: 014904b3 add s1,s2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39957 + c003343e: 014904b3 add s1,s2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39965 if (newLen > MAX_SAFE_INTEGER) { - c0033272: 0297d263 bge a5,s1,c0033296 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39958 + c0033442: 0297d263 bge a5,s1,c0033466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39966 JS_ThrowTypeError(ctx, "Array loo long"); - c0033276: 0002d597 auipc a1,0x2d - c003327a: 1b258593 addi a1,a1,434 # c0060428 - c003327e: 8522 mv a0,s0 - c0033280: 976e00ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39979 + c0033446: 0002d597 auipc a1,0x2d + c003344a: 24258593 addi a1,a1,578 # c0060688 + c003344e: 8522 mv a0,s0 + c0033450: 894e00ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39987 JS_FreeValue(ctx, obj); - c0033284: 7582 ld a1,32(sp) - c0033286: 7622 ld a2,40(sp) - c0033288: 8522 mv a0,s0 - c003328a: 8afd40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39980 + c0033454: 7582 ld a1,32(sp) + c0033456: 7622 ld a2,40(sp) + c0033458: 8522 mv a0,s0 + c003345a: fccd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39988 return JS_EXCEPTION; - c003328e: 4799 li a5,6 - c0033290: f082 sd zero,96(sp) - c0033292: f4be sd a5,104(sp) - c0033294: a889 j c00332e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39962 + c003345e: 4799 li a5,6 + c0033460: f082 sd zero,96(sp) + c0033462: f4be sd a5,104(sp) + c0033464: a889 j c00334b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39970 if (unshift && argc > 0) { - c0033296: 06098e63 beqz s3,c0033312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39962 (discriminator 1) - c003329a: 07204163 bgtz s2,c00332fc + c0033466: 06098e63 beqz s3,c00334e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39970 (discriminator 1) + c003346a: 07204163 bgtz s2,c00334cc JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003329e: 00048a1b sext.w s4,s1 - c00332a2: 0b449163 bne s1,s4,c0033344 + c003346e: 00048a1b sext.w s4,s1 + c0033472: 0b449163 bne s1,s4,c0033514 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00332a6: ca82 sw zero,84(sp) - c00332a8: c8a6 sw s1,80(sp) - c00332aa: 67c6 ld a5,80(sp) - c00332ac: fc82 sd zero,120(sp) - c00332ae: 8926 mv s2,s1 - c00332b0: f8be sd a5,112(sp) - c00332b2: 4981 li s3,0 + c0033476: ca82 sw zero,84(sp) + c0033478: c8a6 sw s1,80(sp) + c003347a: 67c6 ld a5,80(sp) + c003347c: fc82 sd zero,120(sp) + c003347e: 8926 mv s2,s1 + c0033480: f8be sd a5,112(sp) + c0033482: 4981 li s3,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00332b4: d8ca sw s2,112(sp) + c0033484: d8ca sw s2,112(sp) js_array_push(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39980 if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewInt64(ctx, newLen)) < 0) - c00332b6: 7746 ld a4,112(sp) - c00332b8: 7582 ld a1,32(sp) - c00332ba: 7622 ld a2,40(sp) - c00332bc: 87ce mv a5,s3 - c00332be: 03000693 li a3,48 - c00332c2: 8522 mv a0,s0 - c00332c4: e35fc0ef jal ra,c00300f8 - c00332c8: fa054ee3 bltz a0,c0033284 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39975 + c0033486: 7746 ld a4,112(sp) + c0033488: 7582 ld a1,32(sp) + c003348a: 7622 ld a2,40(sp) + c003348c: 87ce mv a5,s3 + c003348e: 03000693 li a3,48 + c0033492: 8522 mv a0,s0 + c0033494: e35fc0ef jal ra,c00302c8 + c0033498: fa054ee3 bltz a0,c0033454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39983 JS_FreeValue(ctx, obj); - c00332cc: 7582 ld a1,32(sp) - c00332ce: 7622 ld a2,40(sp) - c00332d0: 8522 mv a0,s0 - c00332d2: 867d40ef jal ra,c0007b38 + c003349c: 7582 ld a1,32(sp) + c003349e: 7622 ld a2,40(sp) + c00334a0: 8522 mv a0,s0 + c00334a2: f84d40ef jal ra,c0007c26 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00332d6: 07449f63 bne s1,s4,c0033354 + c00334a6: 07449f63 bne s1,s4,c0033524 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00332da: da82 sw zero,116(sp) - c00332dc: d8a6 sw s1,112(sp) - c00332de: 77c6 ld a5,112(sp) - c00332e0: f0be sd a5,96(sp) + c00334aa: da82 sw zero,116(sp) + c00334ac: d8a6 sw s1,112(sp) + c00334ae: 77c6 ld a5,112(sp) + c00334b0: f0be sd a5,96(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00332e2: d0ca sw s2,96(sp) - c00332e4: f4ce sd s3,104(sp) + c00334b2: d0ca sw s2,96(sp) + c00334b4: f4ce sd s3,104(sp) js_array_push(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39981 -} - c00332e6: 70ea ld ra,184(sp) - c00332e8: 744a ld s0,176(sp) - c00332ea: 7506 ld a0,96(sp) - c00332ec: 75a6 ld a1,104(sp) - c00332ee: 74aa ld s1,168(sp) - c00332f0: 790a ld s2,160(sp) - c00332f2: 69ea ld s3,152(sp) - c00332f4: 6a4a ld s4,144(sp) - c00332f6: 6aaa ld s5,136(sp) - c00332f8: 6129 addi sp,sp,192 - c00332fa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39963 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39989 +} + c00334b6: 70ea ld ra,184(sp) + c00334b8: 744a ld s0,176(sp) + c00334ba: 7506 ld a0,96(sp) + c00334bc: 75a6 ld a1,104(sp) + c00334be: 74aa ld s1,168(sp) + c00334c0: 790a ld s2,160(sp) + c00334c2: 69ea ld s3,152(sp) + c00334c4: 6a4a ld s4,144(sp) + c00334c6: 6aaa ld s5,136(sp) + c00334c8: 6129 addi sp,sp,192 + c00334ca: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39971 if (JS_CopySubArray(ctx, obj, argc, 0, len, -1)) - c00332fc: 7582 ld a1,32(sp) - c00332fe: 7622 ld a2,40(sp) - c0033300: 587d li a6,-1 - c0033302: 87d2 mv a5,s4 - c0033304: 4701 li a4,0 - c0033306: 86ca mv a3,s2 - c0033308: 8522 mv a0,s0 - c003330a: b59ff0ef jal ra,c0032e62 - c003330e: f93d bnez a0,c0033284 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39965 + c00334cc: 7582 ld a1,32(sp) + c00334ce: 7622 ld a2,40(sp) + c00334d0: 587d li a6,-1 + c00334d2: 87d2 mv a5,s4 + c00334d4: 4701 li a4,0 + c00334d6: 86ca mv a3,s2 + c00334d8: 8522 mv a0,s0 + c00334da: b59ff0ef jal ra,c0033032 + c00334de: f93d bnez a0,c0033454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39973 from = 0; - c0033310: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39967 + c00334e0: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39975 for(i = 0; i < argc; i++) { - c0033312: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39967 (discriminator 1) - c0033314: 0009879b sext.w a5,s3 - c0033318: f927d3e3 bge a5,s2,c003329e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39968 + c00334e2: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39975 (discriminator 1) + c00334e4: 0009879b sext.w a5,s3 + c00334e8: f927d3e3 bge a5,s2,c003346e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39976 if (JS_SetPropertyInt64(ctx, obj, from + i, - c003331c: 00499793 slli a5,s3,0x4 - c0033320: 97d6 add a5,a5,s5 - c0033322: 6388 ld a0,0(a5) - c0033324: 678c ld a1,8(a5) - c0033326: b48d30ef jal ra,c000666e - c003332a: 87ae mv a5,a1 - c003332c: 7622 ld a2,40(sp) - c003332e: 7582 ld a1,32(sp) - c0033330: 872a mv a4,a0 - c0033332: 013a06b3 add a3,s4,s3 - c0033336: 8522 mv a0,s0 - c0033338: 828fd0ef jal ra,c0030360 - c003333c: 0985 addi s3,s3,1 - c003333e: fc055be3 bgez a0,c0033314 - c0033342: b789 j c0033284 + c00334ec: 00499793 slli a5,s3,0x4 + c00334f0: 97d6 add a5,a5,s5 + c00334f2: 6388 ld a0,0(a5) + c00334f4: 678c ld a1,8(a5) + c00334f6: a66d30ef jal ra,c000675c + c00334fa: 87ae mv a5,a1 + c00334fc: 7622 ld a2,40(sp) + c00334fe: 7582 ld a1,32(sp) + c0033500: 872a mv a4,a0 + c0033502: 013a06b3 add a3,s4,s3 + c0033506: 8522 mv a0,s0 + c0033508: 828fd0ef jal ra,c0030530 + c003350c: 0985 addi s3,s3,1 + c003350e: fc055be3 bgez a0,c00334e4 + c0033512: b789 j c0033454 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0033344: d224f7d3 fcvt.d.l fa5,s1 - c0033348: 499d li s3,7 - c003334a: e2078953 fmv.x.d s2,fa5 + c0033514: d224f7d3 fcvt.d.l fa5,s1 + c0033518: 499d li s3,7 + c003351a: e2078953 fmv.x.d s2,fa5 js_array_push(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003334e: b8be fsd fa5,112(sp) - c0033350: 2901 sext.w s2,s2 - c0033352: b78d j c00332b4 + c003351e: b8be fsd fa5,112(sp) + c0033520: 2901 sext.w s2,s2 + c0033522: b78d j c0033484 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0033354: d224f7d3 fcvt.d.l fa5,s1 - c0033358: b0be fsd fa5,96(sp) - c003335a: b761 j c00332e2 + c0033524: d224f7d3 fcvt.d.l fa5,s1 + c0033528: b0be fsd fa5,96(sp) + c003352a: b761 j c00334b2 -00000000c003335c : +00000000c003352c : js_array_sort(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40519 -{ - c003335c: 7155 addi sp,sp,-208 - c003335e: f54e sd s3,168(sp) - c0033360: e586 sd ra,200(sp) - c0033362: e1a2 sd s0,192(sp) - c0033364: fd26 sd s1,184(sp) - c0033366: f94a sd s2,176(sp) - c0033368: f152 sd s4,160(sp) - c003336a: ed56 sd s5,152(sp) - c003336c: e95a sd s6,144(sp) - c003336e: e55e sd s7,136(sp) - c0033370: e162 sd s8,128(sp) - c0033372: fce6 sd s9,120(sp) - c0033374: e82e sd a1,16(sp) - c0033376: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40527 +{ + c003352c: 7155 addi sp,sp,-208 + c003352e: f54e sd s3,168(sp) + c0033530: e586 sd ra,200(sp) + c0033532: e1a2 sd s0,192(sp) + c0033534: fd26 sd s1,184(sp) + c0033536: f94a sd s2,176(sp) + c0033538: f152 sd s4,160(sp) + c003353a: ed56 sd s5,152(sp) + c003353c: e95a sd s6,144(sp) + c003353e: e55e sd s7,136(sp) + c0033540: e162 sd s8,128(sp) + c0033542: fce6 sd s9,120(sp) + c0033544: e82e sd a1,16(sp) + c0033546: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40528 struct array_sort_context asc = { ctx, 0, 0, argv[0] }; - c0033378: 630c ld a1,0(a4) - c003337a: 6710 ld a2,8(a4) - c003337c: e8aa sd a0,80(sp) - c003337e: ec82 sd zero,88(sp) - c0033380: f0ae sd a1,96(sp) - c0033382: f4b2 sd a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40521 + c0033548: 630c ld a1,0(a4) + c003354a: 6710 ld a2,8(a4) + c003354c: e8aa sd a0,80(sp) + c003354e: ec82 sd zero,88(sp) + c0033550: f0ae sd a1,96(sp) + c0033552: f4b2 sd a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40529 JSValue obj = JS_UNDEFINED; - c0033384: f802 sd zero,48(sp) - c0033386: fc02 sd zero,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40527 + c0033554: f802 sd zero,48(sp) + c0033556: fc02 sd zero,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40535 if (!JS_IsUndefined(asc.method)) { - c0033388: 0006071b sext.w a4,a2 - c003338c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40519 -{ - c003338e: 89aa mv s3,a0 + c0033558: 0006071b sext.w a4,a2 + c003355c: 478d li a5,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40527 +{ + c003355e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40535 if (!JS_IsUndefined(asc.method)) { - c0033390: 00f70863 beq a4,a5,c00333a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40528 + c0033560: 00f70863 beq a4,a5,c0033570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40536 if (check_function(ctx, asc.method)) - c0033394: 914e00ef jal ra,c00134a8 - c0033398: 1c051863 bnez a0,c0033568 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40530 + c0033564: 832e00ef jal ra,c0013596 + c0033568: 1c051863 bnez a0,c0033738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40538 asc.has_method = 1; - c003339c: 4785 li a5,1 - c003339e: cebe sw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40532 + c003356c: 4785 li a5,1 + c003356e: cebe sw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40540 obj = JS_ToObject(ctx, this_val); - c00333a0: 6662 ld a2,24(sp) - c00333a2: 65c2 ld a1,16(sp) - c00333a4: 854e mv a0,s3 - c00333a6: a46f50ef jal ra,c00285ec - c00333aa: 862a mv a2,a0 - c00333ac: 8a2e mv s4,a1 - c00333ae: f82a sd a0,48(sp) - c00333b0: fc2e sd a1,56(sp) - c00333b2: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40533 + c0033570: 6662 ld a2,24(sp) + c0033572: 65c2 ld a1,16(sp) + c0033574: 854e mv a0,s3 + c0033576: a46f50ef jal ra,c00287bc + c003357a: 862a mv a2,a0 + c003357c: 8a2e mv s4,a1 + c003357e: f82a sd a0,48(sp) + c0033580: fc2e sd a1,56(sp) + c0033582: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40541 if (js_get_length64(ctx, &len, obj)) - c00333b4: 86ae mv a3,a1 - c00333b6: 854e mv a0,s3 - c00333b8: 102c addi a1,sp,40 - c00333ba: c84eb0ef jal ra,c001e83e - c00333be: 1a051663 bnez a0,c003356a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40524 + c0033584: 86ae mv a3,a1 + c0033586: 854e mv a0,s3 + c0033588: 102c addi a1,sp,40 + c003358a: c84eb0ef jal ra,c001ea0e + c003358e: 1a051663 bnez a0,c003373a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40532 int64_t i, len, undefined_count = 0; - c00333c2: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40537 + c0033592: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40545 for (i = 0; i < len; i++) { - c00333c4: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40523 + c0033594: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40531 size_t array_size = 0, pos = 0, n = 0; - c00333c6: 4401 li s0,0 - c00333c8: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40522 + c0033596: 4401 li s0,0 + c0033598: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40530 ValueSlot *array = NULL; - c00333ca: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40554 + c003359a: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40562 if (JS_IsUndefined(array[pos].val)) { - c00333cc: 4c0d li s8,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40537 (discriminator 1) + c003359c: 4c0d li s8,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40545 (discriminator 1) for (i = 0; i < len; i++) { - c00333ce: 77a2 ld a5,40(sp) - c00333d0: 06fcc363 blt s9,a5,c0033436 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40562 + c003359e: 77a2 ld a5,40(sp) + c00335a0: 06fcc363 blt s9,a5,c0033606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40570 rqsort(array, pos, sizeof(*array), js_array_cmp_generic, &asc); - c00333d4: 0898 addi a4,sp,80 - c00333d6: 0000b697 auipc a3,0xb - c00333da: 63a68693 addi a3,a3,1594 # c003ea10 - c00333de: 02000613 li a2,32 - c00333e2: 85a2 mv a1,s0 - c00333e4: 854a mv a0,s2 - c00333e6: 3cb140ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40563 + c00335a4: 0898 addi a4,sp,80 + c00335a6: 0000b697 auipc a3,0xb + c00335aa: 63a68693 addi a3,a3,1594 # c003ebe0 + c00335ae: 02000613 li a2,32 + c00335b2: 85a2 mv a1,s0 + c00335b4: 854a mv a0,s2 + c00335b6: 3cb140ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40571 if (asc.exception) - c00333ea: 47e6 lw a5,88(sp) - c00333ec: e7ad bnez a5,c0033456 - c00333ee: 8bca mv s7,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40523 + c00335ba: 47e6 lw a5,88(sp) + c00335bc: e7ad bnez a5,c0033626 + c00335be: 8bca mv s7,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40531 size_t array_size = 0, pos = 0, n = 0; - c00333f0: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40569 + c00335c0: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40577 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, array[n].str)); - c00333f2: 5c65 li s8,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40567 + c00335c2: 5c65 li s8,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40575 while (n < pos) { - c00333f4: 0ad41263 bne s0,a3,c0033498 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40580 + c00335c4: 0ad41263 bne s0,a3,c0033668 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40588 js_free(ctx, array); - c00333f8: 85ca mv a1,s2 - c00333fa: 854e mv a0,s3 - c00333fc: a3fd30ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40581 + c00335c8: 85ca mv a1,s2 + c00335ca: 854e mv a0,s3 + c00335cc: 95dd30ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40589 for (i = n; undefined_count-- > 0; i++) { - c0033400: 9b22 add s6,s6,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40582 + c00335d0: 9b22 add s6,s6,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40590 if (JS_SetPropertyInt64(ctx, obj, i, JS_UNDEFINED) < 0) - c0033402: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40581 (discriminator 1) + c00335d2: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40589 (discriminator 1) for (i = n; undefined_count-- > 0; i++) { - c0033404: 408b07b3 sub a5,s6,s0 - c0033408: 0ef04563 bgtz a5,c00334f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40585 (discriminator 1) + c00335d4: 408b07b3 sub a5,s6,s0 + c00335d8: 0ef04563 bgtz a5,c00336c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40593 (discriminator 1) for (; i < len; i++) { - c003340c: 77a2 ld a5,40(sp) - c003340e: 10f44063 blt s0,a5,c003350e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40589 + c00335dc: 77a2 ld a5,40(sp) + c00335de: 10f44063 blt s0,a5,c00336de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40597 return obj; - c0033412: 77c2 ld a5,48(sp) - c0033414: e4d2 sd s4,72(sp) - c0033416: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40601 + c00335e2: 77c2 ld a5,48(sp) + c00335e4: e4d2 sd s4,72(sp) + c00335e6: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40609 } - c0033418: 60ae ld ra,200(sp) - c003341a: 640e ld s0,192(sp) - c003341c: 6506 ld a0,64(sp) - c003341e: 65a6 ld a1,72(sp) - c0033420: 74ea ld s1,184(sp) - c0033422: 794a ld s2,176(sp) - c0033424: 79aa ld s3,168(sp) - c0033426: 7a0a ld s4,160(sp) - c0033428: 6aea ld s5,152(sp) - c003342a: 6b4a ld s6,144(sp) - c003342c: 6baa ld s7,136(sp) - c003342e: 6c0a ld s8,128(sp) - c0033430: 7ce6 ld s9,120(sp) - c0033432: 6169 addi sp,sp,208 - c0033434: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40538 + c00335e8: 60ae ld ra,200(sp) + c00335ea: 640e ld s0,192(sp) + c00335ec: 6506 ld a0,64(sp) + c00335ee: 65a6 ld a1,72(sp) + c00335f0: 74ea ld s1,184(sp) + c00335f2: 794a ld s2,176(sp) + c00335f4: 79aa ld s3,168(sp) + c00335f6: 7a0a ld s4,160(sp) + c00335f8: 6aea ld s5,152(sp) + c00335fa: 6b4a ld s6,144(sp) + c00335fc: 6baa ld s7,136(sp) + c00335fe: 6c0a ld s8,128(sp) + c0033600: 7ce6 ld s9,120(sp) + c0033602: 6169 addi sp,sp,208 + c0033604: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40546 if (pos >= array_size) { - c0033436: 02946663 bltu s0,s1,c0033462 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40541 + c0033606: 02946663 bltu s0,s1,c0033632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40549 new_size = (array_size + (array_size >> 1) + 31) & ~15; - c003343a: 0014db93 srli s7,s1,0x1 - c003343e: 04fd addi s1,s1,31 - c0033440: 94de add s1,s1,s7 - c0033442: ff04fb93 andi s7,s1,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40542 + c003360a: 0014db93 srli s7,s1,0x1 + c003360e: 04fd addi s1,s1,31 + c0033610: 94de add s1,s1,s7 + c0033612: ff04fb93 andi s7,s1,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40550 new_array = js_realloc2(ctx, array, new_size * sizeof(*array), &slack); - c0033446: 0094 addi a3,sp,64 - c0033448: 005b9613 slli a2,s7,0x5 - c003344c: 85ca mv a1,s2 - c003344e: 854e mv a0,s3 - c0033450: 824e40ef jal ra,c0017474 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40543 + c0033616: 0094 addi a3,sp,64 + c0033618: 005b9613 slli a2,s7,0x5 + c003361c: 85ca mv a1,s2 + c003361e: 854e mv a0,s3 + c0033620: 824e40ef jal ra,c0017644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40551 if (new_array == NULL) - c0033454: e119 bnez a0,c003345a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40523 + c0033624: e119 bnez a0,c003362a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40531 size_t array_size = 0, pos = 0, n = 0; - c0033456: 4481 li s1,0 - c0033458: a841 j c00334e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40545 + c0033626: 4481 li s1,0 + c0033628: a841 j c00336b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40553 new_size += slack / sizeof(*new_array); - c003345a: 6486 ld s1,64(sp) - c003345c: 892a mv s2,a0 - c003345e: 8095 srli s1,s1,0x5 - c0033460: 94de add s1,s1,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40549 + c003362a: 6486 ld s1,64(sp) + c003362c: 892a mv s2,a0 + c003362e: 8095 srli s1,s1,0x5 + c0033630: 94de add s1,s1,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40557 present = JS_TryGetPropertyInt64(ctx, obj, i, &array[pos].val); - c0033462: 00541b93 slli s7,s0,0x5 - c0033466: 75c2 ld a1,48(sp) - c0033468: 9bca add s7,s7,s2 - c003346a: 875e mv a4,s7 - c003346c: 86e6 mv a3,s9 - c003346e: 8652 mv a2,s4 - c0033470: 854e mv a0,s3 - c0033472: fc52 sd s4,56(sp) - c0033474: 868ff0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40550 + c0033632: 00541b93 slli s7,s0,0x5 + c0033636: 75c2 ld a1,48(sp) + c0033638: 9bca add s7,s7,s2 + c003363a: 875e mv a4,s7 + c003363c: 86e6 mv a3,s9 + c003363e: 8652 mv a2,s4 + c0033640: 854e mv a0,s3 + c0033642: fc52 sd s4,56(sp) + c0033644: 868ff0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40558 if (present < 0) - c0033478: fc054fe3 bltz a0,c0033456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40552 + c0033648: fc054fe3 bltz a0,c0033626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40560 if (present == 0) - c003347c: c511 beqz a0,c0033488 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40554 + c003364c: c511 beqz a0,c0033658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40562 if (JS_IsUndefined(array[pos].val)) { - c003347e: 008ba783 lw a5,8(s7) - c0033482: 01879563 bne a5,s8,c003348c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40555 + c003364e: 008ba783 lw a5,8(s7) + c0033652: 01879563 bne a5,s8,c003365c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40563 undefined_count++; - c0033486: 0b05 addi s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40537 (discriminator 2) + c0033656: 0b05 addi s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40545 (discriminator 2) for (i = 0; i < len; i++) { - c0033488: 0c85 addi s9,s9,1 - c003348a: b791 j c00333ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40558 + c0033658: 0c85 addi s9,s9,1 + c003365a: b791 j c003359e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40566 array[pos].str = NULL; - c003348c: 000bb823 sd zero,16(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40559 + c003365c: 000bb823 sd zero,16(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40567 array[pos].pos = i; - c0033490: 019bbc23 sd s9,24(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40560 - pos++; - c0033494: 0405 addi s0,s0,1 - c0033496: bfcd j c0033488 + c0033660: 019bbc23 sd s9,24(s7) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40568 + pos++; + c0033664: 0405 addi s0,s0,1 + c0033666: bfcd j c0033658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40576 if (array[n].str) - c0033498: 010bb583 ld a1,16(s7) - c003349c: c989 beqz a1,c00334ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40569 + c0033668: 010bb583 ld a1,16(s7) + c003366c: c989 beqz a1,c003367e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40577 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, array[n].str)); - c003349e: 5665 li a2,-7 - c00334a0: 854e mv a0,s3 - c00334a2: e436 sd a3,8(sp) - c00334a4: e0ae sd a1,64(sp) - c00334a6: e4e2 sd s8,72(sp) - c00334a8: e90d40ef jal ra,c0007b38 - c00334ac: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40570 + c003366e: 5665 li a2,-7 + c0033670: 854e mv a0,s3 + c0033672: e436 sd a3,8(sp) + c0033674: e0ae sd a1,64(sp) + c0033676: e4e2 sd s8,72(sp) + c0033678: daed40ef jal ra,c0007c26 + c003367c: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40578 if (array[n].pos == n) { - c00334ae: 018bb783 ld a5,24(s7) - c00334b2: 00168493 addi s1,a3,1 - c00334b6: 00d79d63 bne a5,a3,c00334d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40571 + c003367e: 018bb783 ld a5,24(s7) + c0033682: 00168493 addi s1,a3,1 + c0033686: 00d79d63 bne a5,a3,c00336a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40579 JS_FreeValue(ctx, array[n].val); - c00334ba: 000bb583 ld a1,0(s7) - c00334be: 008bb603 ld a2,8(s7) - c00334c2: 854e mv a0,s3 - c00334c4: e74d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40578 + c003368a: 000bb583 ld a1,0(s7) + c003368e: 008bb603 ld a2,8(s7) + c0033692: 854e mv a0,s3 + c0033694: d92d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40586 n++; - c00334c8: 86a6 mv a3,s1 - c00334ca: 020b8b93 addi s7,s7,32 - c00334ce: b71d j c00333f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40573 + c0033698: 86a6 mv a3,s1 + c003369a: 020b8b93 addi s7,s7,32 + c003369e: b71d j c00335c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40581 if (JS_SetPropertyInt64(ctx, obj, n, array[n].val) < 0) { - c00334d0: 000bb703 ld a4,0(s7) - c00334d4: 008bb783 ld a5,8(s7) - c00334d8: 75c2 ld a1,48(sp) - c00334da: 8652 mv a2,s4 - c00334dc: 854e mv a0,s3 - c00334de: fc52 sd s4,56(sp) - c00334e0: e81fc0ef jal ra,c0030360 - c00334e4: fe0552e3 bgez a0,c00334c8 - c00334e8: 00549a13 slli s4,s1,0x5 - c00334ec: 9a4a add s4,s4,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40595 (discriminator 1) + c00336a0: 000bb703 ld a4,0(s7) + c00336a4: 008bb783 ld a5,8(s7) + c00336a8: 75c2 ld a1,48(sp) + c00336aa: 8652 mv a2,s4 + c00336ac: 854e mv a0,s3 + c00336ae: fc52 sd s4,56(sp) + c00336b0: e81fc0ef jal ra,c0030530 + c00336b4: fe0552e3 bgez a0,c0033698 + c00336b8: 00549a13 slli s4,s1,0x5 + c00336bc: 9a4a add s4,s4,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40603 (discriminator 1) JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, array[n].str)); - c00334ee: 5b65 li s6,-7 - c00334f0: a8a9 j c003354a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40582 + c00336be: 5b65 li s6,-7 + c00336c0: a8a9 j c003371a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40590 if (JS_SetPropertyInt64(ctx, obj, i, JS_UNDEFINED) < 0) - c00334f2: 75c2 ld a1,48(sp) - c00334f4: 4701 li a4,0 - c00334f6: 478d li a5,3 - c00334f8: 86a2 mv a3,s0 - c00334fa: 8652 mv a2,s4 - c00334fc: 854e mv a0,s3 - c00334fe: e082 sd zero,64(sp) - c0033500: e4a6 sd s1,72(sp) - c0033502: e5ffc0ef jal ra,c0030360 - c0033506: 04054863 bltz a0,c0033556 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40581 + c00336c2: 75c2 ld a1,48(sp) + c00336c4: 4701 li a4,0 + c00336c6: 478d li a5,3 + c00336c8: 86a2 mv a3,s0 + c00336ca: 8652 mv a2,s4 + c00336cc: 854e mv a0,s3 + c00336ce: e082 sd zero,64(sp) + c00336d0: e4a6 sd s1,72(sp) + c00336d2: e5ffc0ef jal ra,c0030530 + c00336d6: 04054863 bltz a0,c0033726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40589 for (i = n; undefined_count-- > 0; i++) { - c003350a: 0405 addi s0,s0,1 - c003350c: bde5 j c0033404 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40586 + c00336da: 0405 addi s0,s0,1 + c00336dc: bde5 j c00335d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40594 if (JS_DeletePropertyInt64(ctx, obj, i, JS_PROP_THROW) < 0) - c003350e: 75c2 ld a1,48(sp) - c0033510: 6711 lui a4,0x4 - c0033512: 86a2 mv a3,s0 - c0033514: 8652 mv a2,s4 - c0033516: 854e mv a0,s3 - c0033518: b78f50ef jal ra,c0028890 - c003351c: 02054d63 bltz a0,c0033556 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40585 - for (; i < len; i++) { - c0033520: 0405 addi s0,s0,1 - c0033522: b5ed j c003340c + c00336de: 75c2 ld a1,48(sp) + c00336e0: 6711 lui a4,0x4 + c00336e2: 86a2 mv a3,s0 + c00336e4: 8652 mv a2,s4 + c00336e6: 854e mv a0,s3 + c00336e8: b78f50ef jal ra,c0028a60 + c00336ec: 02054d63 bltz a0,c0033726 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40593 + for (; i < len; i++) { + c00336f0: 0405 addi s0,s0,1 + c00336f2: b5ed j c00335dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40601 JS_FreeValue(ctx, array[n].val); - c0033524: 000a3583 ld a1,0(s4) - c0033528: 008a3603 ld a2,8(s4) - c003352c: 854e mv a0,s3 - c003352e: e0ad40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40594 + c00336f4: 000a3583 ld a1,0(s4) + c00336f8: 008a3603 ld a2,8(s4) + c00336fc: 854e mv a0,s3 + c00336fe: d28d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40602 if (array[n].str) - c0033532: 010a3583 ld a1,16(s4) - c0033536: c599 beqz a1,c0033544 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40595 + c0033702: 010a3583 ld a1,16(s4) + c0033706: c599 beqz a1,c0033714 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40603 JS_FreeValue(ctx, JS_MKPTR(JS_TAG_STRING, array[n].str)); - c0033538: 5665 li a2,-7 - c003353a: 854e mv a0,s3 - c003353c: e0ae sd a1,64(sp) - c003353e: e4da sd s6,72(sp) - c0033540: df8d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40592 + c0033708: 5665 li a2,-7 + c003370a: 854e mv a0,s3 + c003370c: e0ae sd a1,64(sp) + c003370e: e4da sd s6,72(sp) + c0033710: d16d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40600 for (; n < pos; n++) { - c0033544: 0485 addi s1,s1,1 - c0033546: 020a0a13 addi s4,s4,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40592 (discriminator 1) - c003354a: fc84ede3 bltu s1,s0,c0033524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40597 + c0033714: 0485 addi s1,s1,1 + c0033716: 020a0a13 addi s4,s4,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40600 (discriminator 1) + c003371a: fc84ede3 bltu s1,s0,c00336f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40605 js_free(ctx, array); - c003354e: 85ca mv a1,s2 - c0033550: 854e mv a0,s3 - c0033552: 8e9d30ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40599 + c003371e: 85ca mv a1,s2 + c0033720: 854e mv a0,s3 + c0033722: 807d30ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40607 JS_FreeValue(ctx, obj); - c0033556: 75c2 ld a1,48(sp) - c0033558: 8656 mv a2,s5 - c003355a: 854e mv a0,s3 - c003355c: ddcd40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40600 + c0033726: 75c2 ld a1,48(sp) + c0033728: 8656 mv a2,s5 + c003372a: 854e mv a0,s3 + c003372c: cfad40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40608 return JS_EXCEPTION; - c0033560: 4799 li a5,6 - c0033562: e082 sd zero,64(sp) - c0033564: e4be sd a5,72(sp) - c0033566: bd4d j c0033418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40521 + c0033730: 4799 li a5,6 + c0033732: e082 sd zero,64(sp) + c0033734: e4be sd a5,72(sp) + c0033736: bd4d j c00335e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40529 JSValue obj = JS_UNDEFINED; - c0033568: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40523 + c0033738: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40531 size_t array_size = 0, pos = 0, n = 0; - c003356a: 4481 li s1,0 - c003356c: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40522 + c003373a: 4481 li s1,0 + c003373c: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40530 ValueSlot *array = NULL; - c003356e: 4901 li s2,0 - c0033570: bfa5 j c00334e8 + c003373e: 4901 li s2,0 + c0033740: bfa5 j c00336b8 -00000000c0033572 : +00000000c0033742 : js_array_toSorted(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40609 -{ - c0033572: 7151 addi sp,sp,-240 - c0033574: eda6 sd s1,216(sp) - c0033576: f55e sd s7,168(sp) - c0033578: f162 sd s8,160(sp) - c003357a: f586 sd ra,232(sp) - c003357c: f1a2 sd s0,224(sp) - c003357e: e9ca sd s2,208(sp) - c0033580: e5ce sd s3,200(sp) - c0033582: e1d2 sd s4,192(sp) - c0033584: fd56 sd s5,184(sp) - c0033586: f95a sd s6,176(sp) - c0033588: ed66 sd s9,152(sp) - c003358a: e96a sd s10,144(sp) - c003358c: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40617 +{ + c0033742: 7151 addi sp,sp,-240 + c0033744: eda6 sd s1,216(sp) + c0033746: f55e sd s7,168(sp) + c0033748: f162 sd s8,160(sp) + c003374a: f586 sd ra,232(sp) + c003374c: f1a2 sd s0,224(sp) + c003374e: e9ca sd s2,208(sp) + c0033750: e5ce sd s3,200(sp) + c0033752: e1d2 sd s4,192(sp) + c0033754: fd56 sd s5,184(sp) + c0033756: f95a sd s6,176(sp) + c0033758: ed66 sd s9,152(sp) + c003375a: e96a sd s10,144(sp) + c003375c: e432 sd a2,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003358e: 6710 ld a2,8(a4) + c003375e: 6710 ld a2,8(a4) js_array_toSorted(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40609 - c0033590: 8bba mv s7,a4 - c0033592: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40617 + c0033760: 8bba mv s7,a4 + c0033762: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40624 ok = JS_IsUndefined(argv[0]) || JS_IsFunction(ctx, argv[0]); - c0033594: 0006071b sext.w a4,a2 - c0033598: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40609 + c0033764: 0006071b sext.w a4,a2 + c0033768: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40617 { - c003359a: 84aa mv s1,a0 - c003359c: 8c36 mv s8,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40616 + c003376a: 84aa mv s1,a0 + c003376c: 8c36 mv s8,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40624 ok = JS_IsUndefined(argv[0]) || JS_IsFunction(ctx, argv[0]); - c003359e: 00f70763 beq a4,a5,c00335ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40616 (discriminator 2) - c00335a2: 000bb583 ld a1,0(s7) - c00335a6: 936d70ef jal ra,c000a6dc - c00335aa: c951 beqz a0,c003363e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40622 (discriminator 3) + c003376e: 00f70763 beq a4,a5,c003377c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40624 (discriminator 2) + c0033772: 000bb583 ld a1,0(s7) + c0033776: 854d70ef jal ra,c000a7ca + c003377a: c951 beqz a0,c003380e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40630 (discriminator 3) obj = JS_ToObject(ctx, this_val); - c00335ac: 6622 ld a2,8(sp) - c00335ae: 6582 ld a1,0(sp) - c00335b0: 8526 mv a0,s1 - c00335b2: 83af50ef jal ra,c00285ec - c00335b6: 862a mv a2,a0 - c00335b8: 86ae mv a3,a1 - c00335ba: e0aa sd a0,64(sp) - c00335bc: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40623 (discriminator 3) + c003377c: 6622 ld a2,8(sp) + c003377e: 6582 ld a1,0(sp) + c0033780: 8526 mv a0,s1 + c0033782: 83af50ef jal ra,c00287bc + c0033786: 862a mv a2,a0 + c0033788: 86ae mv a3,a1 + c003378a: e0aa sd a0,64(sp) + c003378c: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40631 (discriminator 3) if (js_get_length64(ctx, &len, obj)) - c00335be: 8526 mv a0,s1 - c00335c0: 102c addi a1,sp,40 - c00335c2: a7ceb0ef jal ra,c001e83e - c00335c6: 16051b63 bnez a0,c003373c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40626 + c003378e: 8526 mv a0,s1 + c0033790: 102c addi a1,sp,40 + c0033792: a7ceb0ef jal ra,c001ea0e + c0033796: 16051b63 bnez a0,c003390c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40634 arr = js_allocate_fast_array(ctx, len); - c00335ca: 75a2 ld a1,40(sp) - c00335cc: 8526 mv a0,s1 - c00335ce: 86ee40ef jal ra,c001763c - c00335d2: f82a sd a0,48(sp) - c00335d4: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40627 + c003379a: 75a2 ld a1,40(sp) + c003379c: 8526 mv a0,s1 + c003379e: 86ee40ef jal ra,c001780c + c00337a2: f82a sd a0,48(sp) + c00337a4: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40635 if (JS_IsException(arr)) - c00335d6: 0005871b sext.w a4,a1 - c00335da: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40626 + c00337a6: 0005871b sext.w a4,a1 + c00337aa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40634 arr = js_allocate_fast_array(ctx, len); - c00335dc: 842a mv s0,a0 - c00335de: 8b2e mv s6,a1 - c00335e0: 8aaa mv s5,a0 - c00335e2: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40627 + c00337ac: 842a mv s0,a0 + c00337ae: 8b2e mv s6,a1 + c00337b0: 8aaa mv s5,a0 + c00337b2: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40635 if (JS_IsException(arr)) - c00335e4: 12f70663 beq a4,a5,c0033710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40630 + c00337b4: 12f70663 beq a4,a5,c00338e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40638 if (len > 0) { - c00335e8: 77a2 ld a5,40(sp) - c00335ea: 06f04e63 bgtz a5,c0033666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40651 + c00337b8: 77a2 ld a5,40(sp) + c00337ba: 06f04e63 bgtz a5,c0033836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40659 ret = js_array_sort(ctx, arr, argc, argv); - c00335ee: 75c2 ld a1,48(sp) - c00335f0: 7662 ld a2,56(sp) - c00335f2: 875e mv a4,s7 - c00335f4: 86e2 mv a3,s8 - c00335f6: 8526 mv a0,s1 - c00335f8: d65ff0ef jal ra,c003335c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40652 + c00337be: 75c2 ld a1,48(sp) + c00337c0: 7662 ld a2,56(sp) + c00337c2: 875e mv a4,s7 + c00337c4: 86e2 mv a3,s8 + c00337c6: 8526 mv a0,s1 + c00337c8: d65ff0ef jal ra,c003352c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40660 if (JS_IsException(ret)) - c00335fc: 0005871b sext.w a4,a1 - c0033600: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40651 + c00337cc: 0005871b sext.w a4,a1 + c00337d0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40659 ret = js_array_sort(ctx, arr, argc, argv); - c0033602: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40652 + c00337d2: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40660 if (JS_IsException(ret)) - c0033604: 12f71363 bne a4,a5,c003372a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40651 + c00337d4: 12f71363 bne a4,a5,c00338fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40659 ret = js_array_sort(ctx, arr, argc, argv); - c0033608: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40660 + c00337d8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40668 JS_FreeValue(ctx, arr); - c003360a: 85d6 mv a1,s5 - c003360c: 8652 mv a2,s4 - c003360e: 8526 mv a0,s1 - c0033610: d28d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40661 + c00337da: 85d6 mv a1,s5 + c00337dc: 8652 mv a2,s4 + c00337de: 8526 mv a0,s1 + c00337e0: c46d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40669 JS_FreeValue(ctx, obj); - c0033614: 6586 ld a1,64(sp) - c0033616: 6626 ld a2,72(sp) - c0033618: 8526 mv a0,s1 - c003361a: d1ed40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40663 -} - c003361e: 70ae ld ra,232(sp) - c0033620: 8522 mv a0,s0 - c0033622: 740e ld s0,224(sp) - c0033624: 64ee ld s1,216(sp) - c0033626: 69ae ld s3,200(sp) - c0033628: 6a0e ld s4,192(sp) - c003362a: 7aea ld s5,184(sp) - c003362c: 7b4a ld s6,176(sp) - c003362e: 7baa ld s7,168(sp) - c0033630: 7c0a ld s8,160(sp) - c0033632: 6cea ld s9,152(sp) - c0033634: 6d4a ld s10,144(sp) - c0033636: 85ca mv a1,s2 - c0033638: 694e ld s2,208(sp) - c003363a: 616d addi sp,sp,240 - c003363c: 8082 ret - c003363e: 740e ld s0,224(sp) - c0033640: 70ae ld ra,232(sp) - c0033642: 694e ld s2,208(sp) - c0033644: 69ae ld s3,200(sp) - c0033646: 6a0e ld s4,192(sp) - c0033648: 7aea ld s5,184(sp) - c003364a: 7b4a ld s6,176(sp) - c003364c: 7baa ld s7,168(sp) - c003364e: 7c0a ld s8,160(sp) - c0033650: 6cea ld s9,152(sp) - c0033652: 6d4a ld s10,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40618 + c00337e4: 6586 ld a1,64(sp) + c00337e6: 6626 ld a2,72(sp) + c00337e8: 8526 mv a0,s1 + c00337ea: c3cd40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40671 +} + c00337ee: 70ae ld ra,232(sp) + c00337f0: 8522 mv a0,s0 + c00337f2: 740e ld s0,224(sp) + c00337f4: 64ee ld s1,216(sp) + c00337f6: 69ae ld s3,200(sp) + c00337f8: 6a0e ld s4,192(sp) + c00337fa: 7aea ld s5,184(sp) + c00337fc: 7b4a ld s6,176(sp) + c00337fe: 7baa ld s7,168(sp) + c0033800: 7c0a ld s8,160(sp) + c0033802: 6cea ld s9,152(sp) + c0033804: 6d4a ld s10,144(sp) + c0033806: 85ca mv a1,s2 + c0033808: 694e ld s2,208(sp) + c003380a: 616d addi sp,sp,240 + c003380c: 8082 ret + c003380e: 740e ld s0,224(sp) + c0033810: 70ae ld ra,232(sp) + c0033812: 694e ld s2,208(sp) + c0033814: 69ae ld s3,200(sp) + c0033816: 6a0e ld s4,192(sp) + c0033818: 7aea ld s5,184(sp) + c003381a: 7b4a ld s6,176(sp) + c003381c: 7baa ld s7,168(sp) + c003381e: 7c0a ld s8,160(sp) + c0033820: 6cea ld s9,152(sp) + c0033822: 6d4a ld s10,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40626 return JS_ThrowTypeError(ctx, "not a function"); - c0033654: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40663 + c0033824: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40671 } - c0033656: 64ee ld s1,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40618 + c0033826: 64ee ld s1,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40626 return JS_ThrowTypeError(ctx, "not a function"); - c0033658: 0002a597 auipc a1,0x2a - c003365c: 9b058593 addi a1,a1,-1616 # c005d008 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40663 + c0033828: 0002a597 auipc a1,0x2a + c003382c: a1058593 addi a1,a1,-1520 # c005d238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40671 } - c0033660: 616d addi sp,sp,240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40618 + c0033830: 616d addi sp,sp,240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40626 return JS_ThrowTypeError(ctx, "not a function"); - c0033662: d95df06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40633 + c0033832: cb3df06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40641 pval = p->u.array.u.values; - c0033666: 03853c83 ld s9,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40634 + c0033836: 03853c83 ld s9,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40642 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c003366a: 65a6 ld a1,72(sp) - c003366c: 6506 ld a0,64(sp) - c003366e: 0874 addi a3,sp,28 - c0033670: 1010 addi a2,sp,32 - c0033672: d41d20ef jal ra,c00063b2 - c0033676: c145 beqz a0,c0033716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40634 (discriminator 1) - c0033678: 01c16703 lwu a4,28(sp) - c003367c: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40632 (discriminator 1) + c003383a: 65a6 ld a1,72(sp) + c003383c: 6506 ld a0,64(sp) + c003383e: 0874 addi a3,sp,28 + c0033840: 1010 addi a2,sp,32 + c0033842: c5fd20ef jal ra,c00064a0 + c0033846: c145 beqz a0,c00338e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40642 (discriminator 1) + c0033848: 01c16703 lwu a4,28(sp) + c003384c: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40640 (discriminator 1) i = 0; - c003367e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40634 (discriminator 1) + c003384e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40642 (discriminator 1) if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0033680: 00f70f63 beq a4,a5,c003369e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40639 (discriminator 1) + c0033850: 00f70f63 beq a4,a5,c003386e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40647 (discriminator 1) if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c0033684: 5d7d li s10,-1 - c0033686: a095 j c00336ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40636 (discriminator 2) + c0033854: 5d7d li s10,-1 + c0033856: a095 j c00338ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40644 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c0033688: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40635 (discriminator 2) + c0033858: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40643 (discriminator 2) for (; i < len; i++, pval++) - c003368a: 0905 addi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40636 (discriminator 2) + c003385a: 0905 addi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40644 (discriminator 2) *pval = JS_DupValue(ctx, arrp[i]); - c003368c: 97ba add a5,a5,a4 - c003368e: 6388 ld a0,0(a5) - c0033690: 678c ld a1,8(a5) - c0033692: fddd20ef jal ra,c000666e - c0033696: 00a9b023 sd a0,0(s3) - c003369a: 00b9b423 sd a1,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40635 (discriminator 1) + c003385c: 97ba add a5,a5,a4 + c003385e: 6388 ld a0,0(a5) + c0033860: 678c ld a1,8(a5) + c0033862: efbd20ef jal ra,c000675c + c0033866: 00a9b023 sd a0,0(s3) + c003386a: 00b9b423 sd a1,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40643 (discriminator 1) for (; i < len; i++, pval++) - c003369e: 77a2 ld a5,40(sp) - c00336a0: 00491713 slli a4,s2,0x4 - c00336a4: 00ec89b3 add s3,s9,a4 - c00336a8: fef940e3 blt s2,a5,c0033688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40647 + c003386e: 77a2 ld a5,40(sp) + c0033870: 00491713 slli a4,s2,0x4 + c0033874: 00ec89b3 add s3,s9,a4 + c0033878: fef940e3 blt s2,a5,c0033858 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40655 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, len)) < 0) - c00336ac: 77a2 ld a5,40(sp) + c003387c: 77a2 ld a5,40(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00336ae: 0007861b sext.w a2,a5 - c00336b2: 06c79463 bne a5,a2,c003371a + c003387e: 0007861b sext.w a2,a5 + c0033882: 06c79463 bne a5,a2,c00338ea JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00336b6: c302 sw zero,132(sp) - c00336b8: c132 sw a2,128(sp) - c00336ba: 678a ld a5,128(sp) - c00336bc: f8be sd a5,112(sp) - c00336be: 4781 li a5,0 + c0033886: c302 sw zero,132(sp) + c0033888: c132 sw a2,128(sp) + c003388a: 678a ld a5,128(sp) + c003388c: f8be sd a5,112(sp) + c003388e: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00336c0: d8b2 sw a2,112(sp) + c0033890: d8b2 sw a2,112(sp) js_array_toSorted(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40647 - c00336c2: 7746 ld a4,112(sp) - c00336c4: 75c2 ld a1,48(sp) - c00336c6: 7662 ld a2,56(sp) - c00336c8: 03000693 li a3,48 - c00336cc: 8526 mv a0,s1 - c00336ce: fcbe sd a5,120(sp) - c00336d0: a29fc0ef jal ra,c00300f8 - c00336d4: f0055de3 bgez a0,c00335ee - c00336d8: a825 j c0033710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40641 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40655 + c0033892: 7746 ld a4,112(sp) + c0033894: 75c2 ld a1,48(sp) + c0033896: 7662 ld a2,56(sp) + c0033898: 03000693 li a3,48 + c003389c: 8526 mv a0,s1 + c003389e: fcbe sd a5,120(sp) + c00338a0: a29fc0ef jal ra,c00302c8 + c00338a4: f0055de3 bgez a0,c00337be + c00338a8: a825 j c00338e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40649 (discriminator 2) *pval = JS_UNDEFINED; - c00336da: 0009b023 sd zero,0(s3) - c00336de: 00e9b423 sd a4,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40640 (discriminator 2) + c00338aa: 0009b023 sd zero,0(s3) + c00338ae: 00e9b423 sd a4,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40648 (discriminator 2) for (; i < len; i++, pval++) - c00336e2: 0905 addi s2,s2,1 - c00336e4: 09c1 addi s3,s3,16 - c00336e6: a015 j c003370a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40638 + c00338b2: 0905 addi s2,s2,1 + c00338b4: 09c1 addi s3,s3,16 + c00338b6: a015 j c00338da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40646 for (; i < len; i++, pval++) { - c00336e8: 0905 addi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40638 (discriminator 1) - c00336ea: 77a2 ld a5,40(sp) - c00336ec: 00491993 slli s3,s2,0x4 - c00336f0: 99e6 add s3,s3,s9 - c00336f2: faf95de3 bge s2,a5,c00336ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40639 + c00338b8: 0905 addi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40646 (discriminator 1) + c00338ba: 77a2 ld a5,40(sp) + c00338bc: 00491993 slli s3,s2,0x4 + c00338c0: 99e6 add s3,s3,s9 + c00338c2: faf95de3 bge s2,a5,c003387c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40647 if (-1 == JS_TryGetPropertyInt64(ctx, obj, i, pval)) { - c00336f6: 6586 ld a1,64(sp) - c00336f8: 6626 ld a2,72(sp) - c00336fa: 874e mv a4,s3 - c00336fc: 86ca mv a3,s2 - c00336fe: 8526 mv a0,s1 - c0033700: dddfe0ef jal ra,c00324dc - c0033704: ffa512e3 bne a0,s10,c00336e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40641 + c00338c6: 6586 ld a1,64(sp) + c00338c8: 6626 ld a2,72(sp) + c00338ca: 874e mv a4,s3 + c00338cc: 86ca mv a3,s2 + c00338ce: 8526 mv a0,s1 + c00338d0: dddfe0ef jal ra,c00326ac + c00338d4: ffa512e3 bne a0,s10,c00338b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40649 *pval = JS_UNDEFINED; - c0033708: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40640 (discriminator 1) + c00338d8: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40648 (discriminator 1) for (; i < len; i++, pval++) - c003370a: 77a2 ld a5,40(sp) - c003370c: fcf947e3 blt s2,a5,c00336da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40620 + c00338da: 77a2 ld a5,40(sp) + c00338dc: fcf947e3 blt s2,a5,c00338aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40628 ret = JS_EXCEPTION; - c0033710: 4919 li s2,6 - c0033712: 4401 li s0,0 - c0033714: bddd j c003360a - c0033716: 4901 li s2,0 - c0033718: b7b5 j c0033684 + c00338e0: 4919 li s2,6 + c00338e2: 4401 li s0,0 + c00338e4: bddd j c00337da + c00338e6: 4901 li s2,0 + c00338e8: b7b5 j c0033854 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003371a: d227f7d3 fcvt.d.l fa5,a5 - c003371e: 479d li a5,7 - c0033720: e2078653 fmv.x.d a2,fa5 + c00338ea: d227f7d3 fcvt.d.l fa5,a5 + c00338ee: 479d li a5,7 + c00338f0: e2078653 fmv.x.d a2,fa5 js_array_toSorted(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0033724: b8be fsd fa5,112(sp) - c0033726: 2601 sext.w a2,a2 - c0033728: bf61 j c00336c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40654 + c00338f4: b8be fsd fa5,112(sp) + c00338f6: 2601 sext.w a2,a2 + c00338f8: bf61 j c0033890 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40662 JS_FreeValue(ctx, ret); - c003372a: 85aa mv a1,a0 - c003372c: 864a mv a2,s2 - c003372e: 8526 mv a0,s1 - c0033730: c08d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40656 + c00338fa: 85aa mv a1,a0 + c00338fc: 864a mv a2,s2 + c00338fe: 8526 mv a0,s1 + c0033900: b26d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40664 ret = arr; - c0033734: 895a mv s2,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40621 + c0033904: 895a mv s2,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40629 arr = JS_UNDEFINED; - c0033736: 4a0d li s4,3 - c0033738: 4a81 li s5,0 - c003373a: bdc1 j c003360a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40620 + c0033906: 4a0d li s4,3 + c0033908: 4a81 li s5,0 + c003390a: bdc1 j c00337da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40628 ret = JS_EXCEPTION; - c003373c: 4919 li s2,6 - c003373e: 4401 li s0,0 - c0033740: bfdd j c0033736 + c003390c: 4919 li s2,6 + c003390e: 4401 li s0,0 + c0033910: bfdd j c0033906 -00000000c0033742 : +00000000c0033912 : js_array_reverse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39985 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39993 { - c0033742: 7135 addi sp,sp,-160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39992 - lval = JS_UNDEFINED; - c0033744: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39985 -{ - c0033746: e922 sd s0,144(sp) - c0033748: ed06 sd ra,152(sp) - c003374a: e526 sd s1,136(sp) - c003374c: e14a sd s2,128(sp) - c003374e: fcce sd s3,120(sp) - c0033750: f8d2 sd s4,112(sp) - c0033752: 842a mv s0,a0 - c0033754: e432 sd a2,8(sp) - c0033756: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39992 + c0033912: 7135 addi sp,sp,-160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40000 lval = JS_UNDEFINED; - c0033758: e082 sd zero,64(sp) - c003375a: e4be sd a5,72(sp) + c0033914: 478d li a5,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39993 +{ + c0033916: e922 sd s0,144(sp) + c0033918: ed06 sd ra,152(sp) + c003391a: e526 sd s1,136(sp) + c003391c: e14a sd s2,128(sp) + c003391e: fcce sd s3,120(sp) + c0033920: f8d2 sd s4,112(sp) + c0033922: 842a mv s0,a0 + c0033924: e432 sd a2,8(sp) + c0033926: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40000 + lval = JS_UNDEFINED; + c0033928: e082 sd zero,64(sp) + c003392a: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40001 obj = JS_ToObject(ctx, this_val); - c003375c: e91f40ef jal ra,c00285ec - c0033760: 862a mv a2,a0 - c0033762: 86ae mv a3,a1 - c0033764: f82a sd a0,48(sp) - c0033766: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39994 + c003392c: e91f40ef jal ra,c00287bc + c0033930: 862a mv a2,a0 + c0033932: 86ae mv a3,a1 + c0033934: f82a sd a0,48(sp) + c0033936: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40002 if (js_get_length64(ctx, &len, obj)) - c0033768: 8522 mv a0,s0 - c003376a: 102c addi a1,sp,40 - c003376c: 8d2eb0ef jal ra,c001e83e - c0033770: e16d bnez a0,c0033852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39998 + c0033938: 8522 mv a0,s0 + c003393a: 102c addi a1,sp,40 + c003393c: 8d2eb0ef jal ra,c001ea0e + c0033940: e16d bnez a0,c0033a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40006 if (js_get_fast_array(ctx, obj, &arrp, &count32) && count32 == len) { - c0033772: 7542 ld a0,48(sp) - c0033774: 75e2 ld a1,56(sp) - c0033776: 0874 addi a3,sp,28 - c0033778: 1010 addi a2,sp,32 - c003377a: c39d20ef jal ra,c00063b2 - c003377e: 74a2 ld s1,40(sp) - c0033780: c53d beqz a0,c00337ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39998 (discriminator 1) - c0033782: 47f2 lw a5,28(sp) - c0033784: 02079713 slli a4,a5,0x20 - c0033788: 9301 srli a4,a4,0x20 - c003378a: 06971263 bne a4,s1,c00337ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40001 + c0033942: 7542 ld a0,48(sp) + c0033944: 75e2 ld a1,56(sp) + c0033946: 0874 addi a3,sp,28 + c0033948: 1010 addi a2,sp,32 + c003394a: b57d20ef jal ra,c00064a0 + c003394e: 74a2 ld s1,40(sp) + c0033950: c53d beqz a0,c00339be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40006 (discriminator 1) + c0033952: 47f2 lw a5,28(sp) + c0033954: 02079713 slli a4,a5,0x20 + c0033958: 9301 srli a4,a4,0x20 + c003395a: 06971263 bne a4,s1,c00339be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40009 if (count32 > 1) { - c003378e: 4705 li a4,1 - c0033790: 04f77163 bgeu a4,a5,c00337d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40002 + c003395e: 4705 li a4,1 + c0033960: 04f77163 bgeu a4,a5,c00339a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40010 for (ll = 0, hh = count32 - 1; ll < hh; ll++, hh--) { - c0033794: 37fd addiw a5,a5,-1 - c0033796: 4601 li a2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40003 (discriminator 3) + c0033964: 37fd addiw a5,a5,-1 + c0033966: 4601 li a2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 (discriminator 3) lval = arrp[ll]; - c0033798: 7682 ld a3,32(sp) - c003379a: 00461713 slli a4,a2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40004 (discriminator 3) + c0033968: 7682 ld a3,32(sp) + c003396a: 00461713 slli a4,a2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40012 (discriminator 3) arrp[ll] = arrp[hh]; - c003379e: 02079513 slli a0,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40003 (discriminator 3) + c003396e: 02079513 slli a0,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 (discriminator 3) lval = arrp[ll]; - c00337a2: 9736 add a4,a4,a3 - c00337a4: 630c ld a1,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40002 (discriminator 3) + c0033972: 9736 add a4,a4,a3 + c0033974: 630c ld a1,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40010 (discriminator 3) for (ll = 0, hh = count32 - 1; ll < hh; ll++, hh--) { - c00337a6: 0605 addi a2,a2,1 - c00337a8: 37fd addiw a5,a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40003 (discriminator 3) + c0033976: 0605 addi a2,a2,1 + c0033978: 37fd addiw a5,a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 (discriminator 3) lval = arrp[ll]; - c00337aa: e0ae sd a1,64(sp) - c00337ac: 670c ld a1,8(a4) - c00337ae: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40004 (discriminator 3) + c003397a: e0ae sd a1,64(sp) + c003397c: 670c ld a1,8(a4) + c003397e: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40012 (discriminator 3) arrp[ll] = arrp[hh]; - c00337b0: 01c55593 srli a1,a0,0x1c - c00337b4: 96ae add a3,a3,a1 - c00337b6: 6288 ld a0,0(a3) - c00337b8: e308 sd a0,0(a4) - c00337ba: 6694 ld a3,8(a3) - c00337bc: e714 sd a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40005 (discriminator 3) + c0033980: 01c55593 srli a1,a0,0x1c + c0033984: 96ae add a3,a3,a1 + c0033986: 6288 ld a0,0(a3) + c0033988: e308 sd a0,0(a4) + c003398a: 6694 ld a3,8(a3) + c003398c: e714 sd a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40013 (discriminator 3) arrp[hh] = lval; - c00337be: 7702 ld a4,32(sp) - c00337c0: 6686 ld a3,64(sp) - c00337c2: 972e add a4,a4,a1 - c00337c4: e314 sd a3,0(a4) - c00337c6: 66a6 ld a3,72(sp) - c00337c8: e714 sd a3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40002 (discriminator 3) + c003398e: 7702 ld a4,32(sp) + c0033990: 6686 ld a3,64(sp) + c0033992: 972e add a4,a4,a1 + c0033994: e314 sd a3,0(a4) + c0033996: 66a6 ld a3,72(sp) + c0033998: e714 sd a3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40010 (discriminator 3) for (ll = 0, hh = count32 - 1; ll < hh; ll++, hh--) { - c00337ca: 0006071b sext.w a4,a2 - c00337ce: fcf765e3 bltu a4,a5,c0033798 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40008 + c003399a: 0006071b sext.w a4,a2 + c003399e: fcf765e3 bltu a4,a5,c0033968 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40016 return obj; - c00337d2: 77c2 ld a5,48(sp) - c00337d4: f0be sd a5,96(sp) - c00337d6: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40050 -} - c00337d8: 60ea ld ra,152(sp) - c00337da: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40049 + c00339a2: 77c2 ld a5,48(sp) + c00339a4: f0be sd a5,96(sp) + c00339a6: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40058 +} + c00339a8: 60ea ld ra,152(sp) + c00339aa: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40057 return JS_EXCEPTION; - c00337dc: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40050 -} - c00337de: 7506 ld a0,96(sp) - c00337e0: 75a6 ld a1,104(sp) - c00337e2: 64aa ld s1,136(sp) - c00337e4: 690a ld s2,128(sp) - c00337e6: 79e6 ld s3,120(sp) - c00337e8: 7a46 ld s4,112(sp) - c00337ea: 610d addi sp,sp,160 - c00337ec: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 + c00339ac: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40058 +} + c00339ae: 7506 ld a0,96(sp) + c00339b0: 75a6 ld a1,104(sp) + c00339b2: 64aa ld s1,136(sp) + c00339b4: 690a ld s2,128(sp) + c00339b6: 79e6 ld s3,120(sp) + c00339b8: 7a46 ld s4,112(sp) + c00339ba: 610d addi sp,sp,160 + c00339bc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40019 for (l = 0, h = len - 1; l < h; l++, h--) { - c00337ee: 14fd addi s1,s1,-1 - c00337f0: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40027 + c00339be: 14fd addi s1,s1,-1 + c00339c0: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40035 lval = JS_UNDEFINED; - c00337f2: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 (discriminator 1) + c00339c2: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40019 (discriminator 1) for (l = 0, h = len - 1; l < h; l++, h--) { - c00337f4: fc99dfe3 bge s3,s1,c00337d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40012 + c00339c4: fc99dfe3 bge s3,s1,c00339a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40020 l_present = JS_TryGetPropertyInt64(ctx, obj, l, &lval); - c00337f8: 75c2 ld a1,48(sp) - c00337fa: 7662 ld a2,56(sp) - c00337fc: 0098 addi a4,sp,64 - c00337fe: 86ce mv a3,s3 - c0033800: 8522 mv a0,s0 - c0033802: cdbfe0ef jal ra,c00324dc - c0033806: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40013 + c00339c8: 75c2 ld a1,48(sp) + c00339ca: 7662 ld a2,56(sp) + c00339cc: 0098 addi a4,sp,64 + c00339ce: 86ce mv a3,s3 + c00339d0: 8522 mv a0,s0 + c00339d2: cdbfe0ef jal ra,c00326ac + c00339d6: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40021 if (l_present < 0) - c0033808: 04054563 bltz a0,c0033852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40015 + c00339d8: 04054563 bltz a0,c0033a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40023 h_present = JS_TryGetPropertyInt64(ctx, obj, h, &hval); - c003380c: 75c2 ld a1,48(sp) - c003380e: 7662 ld a2,56(sp) - c0033810: 0898 addi a4,sp,80 - c0033812: 86a6 mv a3,s1 - c0033814: 8522 mv a0,s0 - c0033816: cc7fe0ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40016 + c00339dc: 75c2 ld a1,48(sp) + c00339de: 7662 ld a2,56(sp) + c00339e0: 0898 addi a4,sp,80 + c00339e2: 86a6 mv a3,s1 + c00339e4: 8522 mv a0,s0 + c00339e6: cc7fe0ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40024 if (h_present < 0) - c003381a: 02054c63 bltz a0,c0033852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40018 + c00339ea: 02054c63 bltz a0,c0033a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40026 if (h_present) { - c003381e: c52d beqz a0,c0033888 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40019 + c00339ee: c52d beqz a0,c0033a58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40027 if (JS_SetPropertyInt64(ctx, obj, l, hval) < 0) - c0033820: 6746 ld a4,80(sp) - c0033822: 67e6 ld a5,88(sp) - c0033824: 75c2 ld a1,48(sp) - c0033826: 7662 ld a2,56(sp) - c0033828: 86ce mv a3,s3 - c003382a: 8522 mv a0,s0 - c003382c: b35fc0ef jal ra,c0030360 - c0033830: 02054163 bltz a0,c0033852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40022 + c00339f0: 6746 ld a4,80(sp) + c00339f2: 67e6 ld a5,88(sp) + c00339f4: 75c2 ld a1,48(sp) + c00339f6: 7662 ld a2,56(sp) + c00339f8: 86ce mv a3,s3 + c00339fa: 8522 mv a0,s0 + c00339fc: b35fc0ef jal ra,c0030530 + c0033a00: 02054163 bltz a0,c0033a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40030 if (l_present) { - c0033834: 04090063 beqz s2,c0033874 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40023 + c0033a04: 04090063 beqz s2,c0033a44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40031 if (JS_SetPropertyInt64(ctx, obj, h, lval) < 0) { - c0033838: 6706 ld a4,64(sp) - c003383a: 67a6 ld a5,72(sp) - c003383c: 75c2 ld a1,48(sp) - c003383e: 7662 ld a2,56(sp) - c0033840: 86a6 mv a3,s1 - c0033842: 8522 mv a0,s0 - c0033844: b1dfc0ef jal ra,c0030360 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40024 + c0033a08: 6706 ld a4,64(sp) + c0033a0a: 67a6 ld a5,72(sp) + c0033a0c: 75c2 ld a1,48(sp) + c0033a0e: 7662 ld a2,56(sp) + c0033a10: 86a6 mv a3,s1 + c0033a12: 8522 mv a0,s0 + c0033a14: b1dfc0ef jal ra,c0030530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40032 lval = JS_UNDEFINED; - c0033848: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40023 + c0033a18: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40031 if (JS_SetPropertyInt64(ctx, obj, h, lval) < 0) { - c003384a: 02055163 bgez a0,c003386c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40024 + c0033a1a: 02055163 bgez a0,c0033a3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40032 lval = JS_UNDEFINED; - c003384e: 478d li a5,3 - c0033850: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40047 + c0033a1e: 478d li a5,3 + c0033a20: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40055 JS_FreeValue(ctx, lval); - c0033852: 6586 ld a1,64(sp) - c0033854: 6626 ld a2,72(sp) - c0033856: 8522 mv a0,s0 - c0033858: ae0d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40048 + c0033a22: 6586 ld a1,64(sp) + c0033a24: 6626 ld a2,72(sp) + c0033a26: 8522 mv a0,s0 + c0033a28: 9fed40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40056 JS_FreeValue(ctx, obj); - c003385c: 75c2 ld a1,48(sp) - c003385e: 7662 ld a2,56(sp) - c0033860: 8522 mv a0,s0 - c0033862: ad6d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40049 + c0033a2c: 75c2 ld a1,48(sp) + c0033a2e: 7662 ld a2,56(sp) + c0033a30: 8522 mv a0,s0 + c0033a32: 9f4d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40057 return JS_EXCEPTION; - c0033866: 4799 li a5,6 - c0033868: f082 sd zero,96(sp) - c003386a: b7bd j c00337d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40027 + c0033a36: 4799 li a5,6 + c0033a38: f082 sd zero,96(sp) + c0033a3a: b7bd j c00339a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40035 lval = JS_UNDEFINED; - c003386c: e4d2 sd s4,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40011 (discriminator 2) + c0033a3c: e4d2 sd s4,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40019 (discriminator 2) for (l = 0, h = len - 1; l < h; l++, h--) { - c003386e: 0985 addi s3,s3,1 - c0033870: 14fd addi s1,s1,-1 - c0033872: b749 j c00337f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40029 + c0033a3e: 0985 addi s3,s3,1 + c0033a40: 14fd addi s1,s1,-1 + c0033a42: b749 j c00339c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40037 if (JS_DeletePropertyInt64(ctx, obj, h, JS_PROP_THROW) < 0) - c0033874: 75c2 ld a1,48(sp) - c0033876: 7662 ld a2,56(sp) - c0033878: 6711 lui a4,0x4 - c003387a: 86a6 mv a3,s1 - c003387c: 8522 mv a0,s0 - c003387e: 812f50ef jal ra,c0028890 - c0033882: fe0556e3 bgez a0,c003386e - c0033886: b7f1 j c0033852 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40033 + c0033a44: 75c2 ld a1,48(sp) + c0033a46: 7662 ld a2,56(sp) + c0033a48: 6711 lui a4,0x4 + c0033a4a: 86a6 mv a3,s1 + c0033a4c: 8522 mv a0,s0 + c0033a4e: 812f50ef jal ra,c0028a60 + c0033a52: fe0556e3 bgez a0,c0033a3e + c0033a56: b7f1 j c0033a22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40041 if (l_present) { - c0033888: fe0903e3 beqz s2,c003386e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40034 + c0033a58: fe0903e3 beqz s2,c0033a3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40042 if (JS_DeletePropertyInt64(ctx, obj, l, JS_PROP_THROW) < 0) - c003388c: 75c2 ld a1,48(sp) - c003388e: 7662 ld a2,56(sp) - c0033890: 6711 lui a4,0x4 - c0033892: 86ce mv a3,s3 - c0033894: 8522 mv a0,s0 - c0033896: ffbf40ef jal ra,c0028890 - c003389a: f8055fe3 bgez a0,c0033838 - c003389e: bf55 j c0033852 - -00000000c00338a0 : + c0033a5c: 75c2 ld a1,48(sp) + c0033a5e: 7662 ld a2,56(sp) + c0033a60: 6711 lui a4,0x4 + c0033a62: 86ce mv a3,s3 + c0033a64: 8522 mv a0,s0 + c0033a66: ffbf40ef jal ra,c0028a60 + c0033a6a: f8055fe3 bgez a0,c0033a08 + c0033a6e: bf55 j c0033a22 + +00000000c0033a70 : js_object_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37717 -{ - c00338a0: 7175 addi sp,sp,-144 - c00338a2: e122 sd s0,128(sp) - c00338a4: e506 sd ra,136(sp) - c00338a6: fca6 sd s1,120(sp) - c00338a8: f8ca sd s2,112(sp) - c00338aa: f4ce sd s3,104(sp) - c00338ac: e82e sd a1,16(sp) - c00338ae: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37725 +{ + c0033a70: 7175 addi sp,sp,-144 + c0033a72: e122 sd s0,128(sp) + c0033a74: e506 sd ra,136(sp) + c0033a76: fca6 sd s1,120(sp) + c0033a78: f8ca sd s2,112(sp) + c0033a7a: f4ce sd s3,104(sp) + c0033a7c: e82e sd a1,16(sp) + c0033a7e: ec32 sd a2,24(sp) JS_IsNull(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:600 return JS_VALUE_GET_TAG(v) == JS_TAG_NULL; - c00338b0: 0006079b sext.w a5,a2 + c0033a80: 0006079b sext.w a5,a2 js_object_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37723 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37731 if (JS_IsNull(this_val)) { - c00338b4: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37717 + c0033a84: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37725 { - c00338b6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37723 + c0033a86: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37731 if (JS_IsNull(this_val)) { - c00338b8: 02e79c63 bne a5,a4,c00338f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37724 + c0033a88: 02e79c63 bne a5,a4,c0033ac0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37732 tag = JS_NewString(ctx, "Null"); - c00338bc: 0002d597 auipc a1,0x2d - c00338c0: b7c58593 addi a1,a1,-1156 # c0060438 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37726 + c0033a8c: 0002d597 auipc a1,0x2d + c0033a90: c0c58593 addi a1,a1,-1012 # c0060698 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37734 tag = JS_NewString(ctx, "Undefined"); - c00338c4: 95ee60ef jal ra,c0019a22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37764 + c0033a94: 95ee60ef jal ra,c0019bf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37772 tag = JS_AtomToString(ctx, atom); - c00338c8: f82a sd a0,48(sp) - c00338ca: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37767 + c0033a98: f82a sd a0,48(sp) + c0033a9a: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37775 return JS_ConcatString3(ctx, "[object ", tag, "]"); - c00338cc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 + c0033a9c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37776 } - c00338ce: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37767 + c0033a9e: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37775 return JS_ConcatString3(ctx, "[object ", tag, "]"); - c00338d0: 7642 ld a2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 -} - c00338d2: 60aa ld ra,136(sp) - c00338d4: 74e6 ld s1,120(sp) - c00338d6: 7946 ld s2,112(sp) - c00338d8: 79a6 ld s3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37767 + c0033aa0: 7642 ld a2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37776 +} + c0033aa2: 60aa ld ra,136(sp) + c0033aa4: 74e6 ld s1,120(sp) + c0033aa6: 7946 ld s2,112(sp) + c0033aa8: 79a6 ld s3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37775 return JS_ConcatString3(ctx, "[object ", tag, "]"); - c00338da: 0002e717 auipc a4,0x2e - c00338de: 0ce70713 addi a4,a4,206 # c00619a8 - c00338e2: 0002d597 auipc a1,0x2d - c00338e6: b6e58593 addi a1,a1,-1170 # c0060450 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 -} - c00338ea: 6149 addi sp,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37767 + c0033aaa: 0002e717 auipc a4,0x2e + c0033aae: 15e70713 addi a4,a4,350 # c0061c08 + c0033ab2: 0002d597 auipc a1,0x2d + c0033ab6: bfe58593 addi a1,a1,-1026 # c00606b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37776 +} + c0033aba: 6149 addi sp,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37775 return JS_ConcatString3(ctx, "[object ", tag, "]"); - c00338ec: f1fe606f j c001a80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37725 + c0033abc: f1fe606f j c001a9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37733 } else if (JS_IsUndefined(this_val)) { - c00338f0: 470d li a4,3 - c00338f2: 00e79763 bne a5,a4,c0033900 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37726 + c0033ac0: 470d li a4,3 + c0033ac2: 00e79763 bne a5,a4,c0033ad0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37734 tag = JS_NewString(ctx, "Undefined"); - c00338f6: 0002d597 auipc a1,0x2d - c00338fa: b4a58593 addi a1,a1,-1206 # c0060440 - c00338fe: b7d9 j c00338c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37728 + c0033ac6: 0002d597 auipc a1,0x2d + c0033aca: bda58593 addi a1,a1,-1062 # c00606a0 + c0033ace: b7d9 j c0033a94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37736 obj = JS_ToObject(ctx, this_val); - c0033900: cedf40ef jal ra,c00285ec - c0033904: f02a sd a0,32(sp) - c0033906: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37729 + c0033ad0: cedf40ef jal ra,c00287bc + c0033ad4: f02a sd a0,32(sp) + c0033ad6: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37737 if (JS_IsException(obj)) - c0033908: 0005879b sext.w a5,a1 - c003390c: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37728 + c0033ad8: 0005879b sext.w a5,a1 + c0033adc: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37736 obj = JS_ToObject(ctx, this_val); - c003390e: 892a mv s2,a0 - c0033910: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37729 + c0033ade: 892a mv s2,a0 + c0033ae0: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37737 if (JS_IsException(obj)) - c0033912: 01379d63 bne a5,s3,c003392c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37730 + c0033ae2: 01379d63 bne a5,s3,c0033afc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37738 return obj; - c0033916: e0aa sd a0,64(sp) - c0033918: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 (discriminator 1) -} - c003391a: 60aa ld ra,136(sp) - c003391c: 640a ld s0,128(sp) - c003391e: 6506 ld a0,64(sp) - c0033920: 65a6 ld a1,72(sp) - c0033922: 74e6 ld s1,120(sp) - c0033924: 7946 ld s2,112(sp) - c0033926: 79a6 ld s3,104(sp) - c0033928: 6149 addi sp,sp,144 - c003392a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37731 + c0033ae6: e0aa sd a0,64(sp) + c0033ae8: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37776 (discriminator 1) +} + c0033aea: 60aa ld ra,136(sp) + c0033aec: 640a ld s0,128(sp) + c0033aee: 6506 ld a0,64(sp) + c0033af0: 65a6 ld a1,72(sp) + c0033af2: 74e6 ld s1,120(sp) + c0033af4: 7946 ld s2,112(sp) + c0033af6: 79a6 ld s3,104(sp) + c0033af8: 6149 addi sp,sp,144 + c0033afa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37739 is_array = JS_IsArray(ctx, obj); - c003392c: 85aa mv a1,a0 - c003392e: 8626 mv a2,s1 - c0033930: 8522 mv a0,s0 - c0033932: 99de00ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37732 + c0033afc: 85aa mv a1,a0 + c0033afe: 8626 mv a2,s1 + c0033b00: 8522 mv a0,s0 + c0033b02: 8bbe00ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37740 if (is_array < 0) { - c0033936: 00055a63 bgez a0,c003394a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37733 + c0033b06: 00055a63 bgez a0,c0033b1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37741 JS_FreeValue(ctx, obj); - c003393a: 7582 ld a1,32(sp) - c003393c: 7622 ld a2,40(sp) - c003393e: 8522 mv a0,s0 - c0033940: 9f8d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37734 + c0033b0a: 7582 ld a1,32(sp) + c0033b0c: 7622 ld a2,40(sp) + c0033b0e: 8522 mv a0,s0 + c0033b10: 916d40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37742 return JS_EXCEPTION; - c0033944: e082 sd zero,64(sp) - c0033946: e4ce sd s3,72(sp) - c0033948: bfc9 j c003391a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37737 + c0033b14: e082 sd zero,64(sp) + c0033b16: e4ce sd s3,72(sp) + c0033b18: bfc9 j c0033aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37745 atom = JS_ATOM_Array; - c003394a: 09300993 li s3,147 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37736 + c0033b1a: 09300993 li s3,147 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37744 if (is_array) { - c003394e: e131 bnez a0,c0033992 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37738 + c0033b1e: e131 bnez a0,c0033b62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37746 } else if (JS_IsFunction(ctx, obj)) { - c0033950: 7582 ld a1,32(sp) - c0033952: 7622 ld a2,40(sp) - c0033954: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37739 + c0033b20: 7582 ld a1,32(sp) + c0033b22: 7622 ld a2,40(sp) + c0033b24: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37747 atom = JS_ATOM_Function; - c0033956: 09d00993 li s3,157 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37738 + c0033b26: 09d00993 li s3,157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37746 } else if (JS_IsFunction(ctx, obj)) { - c003395a: d83d60ef jal ra,c000a6dc - c003395e: e915 bnez a0,c0033992 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37742 + c0033b2a: ca1d60ef jal ra,c000a7ca + c0033b2e: e915 bnez a0,c0033b62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37750 switch(p->class_id) { - c0033960: 00695783 lhu a5,6(s2) - c0033964: 4749 li a4,18 - c0033966: 09200993 li s3,146 - c003396a: 02f76463 bltu a4,a5,c0033992 - c003396e: 4705 li a4,1 - c0033970: 000406b7 lui a3,0x40 - c0033974: 00f71733 sll a4,a4,a5 - c0033978: 77868693 addi a3,a3,1912 # 40778 <__clzdi2-0xbffbf888> - c003397c: 8f75 and a4,a4,a3 - c003397e: cb11 beqz a4,c0033992 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37751 + c0033b30: 00695783 lhu a5,6(s2) + c0033b34: 4749 li a4,18 + c0033b36: 09200993 li s3,146 + c0033b3a: 02f76463 bltu a4,a5,c0033b62 + c0033b3e: 4705 li a4,1 + c0033b40: 000406b7 lui a3,0x40 + c0033b44: 00f71733 sll a4,a4,a5 + c0033b48: 77868693 addi a3,a3,1912 # 40778 <__clzdi2-0xbffbf888> + c0033b4c: 8f75 and a4,a4,a3 + c0033b4e: cb11 beqz a4,c0033b62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37759 atom = ctx->rt->class_array[p->class_id].class_name; - c0033980: 02800693 li a3,40 - c0033984: 02d787b3 mul a5,a5,a3 - c0033988: 6c18 ld a4,24(s0) - c003398a: 7b38 ld a4,112(a4) - c003398c: 97ba add a5,a5,a4 - c003398e: 0047a983 lw s3,4(a5) + c0033b50: 02800693 li a3,40 + c0033b54: 02d787b3 mul a5,a5,a3 + c0033b58: 6c18 ld a4,24(s0) + c0033b5a: 7b38 ld a4,112(a4) + c0033b5c: 97ba add a5,a5,a4 + c0033b5e: 0047a983 lw s3,4(a5) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0033992: 874a mv a4,s2 - c0033994: 87a6 mv a5,s1 - c0033996: 0d200693 li a3,210 - c003399a: 4801 li a6,0 - c003399c: 8626 mv a2,s1 - c003399e: 85ca mv a1,s2 - c00339a0: 8522 mv a0,s0 - c00339a2: e0ca sd s2,64(sp) - c00339a4: e4a6 sd s1,72(sp) - c00339a6: e9ddd0ef jal ra,c0011842 - c00339aa: fc2e sd a1,56(sp) - c00339ac: e42e sd a1,8(sp) + c0033b62: 874a mv a4,s2 + c0033b64: 87a6 mv a5,s1 + c0033b66: 0d200693 li a3,210 + c0033b6a: 4801 li a6,0 + c0033b6c: 8626 mv a2,s1 + c0033b6e: 85ca mv a1,s2 + c0033b70: 8522 mv a0,s0 + c0033b72: e0ca sd s2,64(sp) + c0033b74: e4a6 sd s1,72(sp) + c0033b76: dbbdd0ef jal ra,c0011930 + c0033b7a: fc2e sd a1,56(sp) + c0033b7c: e42e sd a1,8(sp) js_object_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37759 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37767 JS_FreeValue(ctx, obj); - c00339ae: 7622 ld a2,40(sp) - c00339b0: 7582 ld a1,32(sp) - c00339b2: f82a sd a0,48(sp) - c00339b4: 8522 mv a0,s0 - c00339b6: 982d40ef jal ra,c0007b38 + c0033b7e: 7622 ld a2,40(sp) + c0033b80: 7582 ld a1,32(sp) + c0033b82: f82a sd a0,48(sp) + c0033b84: 8522 mv a0,s0 + c0033b86: 8a0d40ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00339ba: 66a2 ld a3,8(sp) + c0033b8a: 66a2 ld a3,8(sp) js_object_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37760 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 if (JS_IsException(tag)) - c00339bc: 4719 li a4,6 + c0033b8c: 4719 li a4,6 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00339be: 0006879b sext.w a5,a3 + c0033b8e: 0006879b sext.w a5,a3 js_object_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37760 - c00339c2: 00e79563 bne a5,a4,c00339cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37768 + c0033b92: 00e79563 bne a5,a4,c0033b9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37769 return JS_EXCEPTION; - c00339c6: e082 sd zero,64(sp) - c00339c8: e4be sd a5,72(sp) - c00339ca: bf81 j c003391a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37762 + c0033b96: e082 sd zero,64(sp) + c0033b98: e4be sd a5,72(sp) + c0033b9a: bf81 j c0033aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37770 if (!JS_IsString(tag)) { - c00339cc: 5765 li a4,-7 - c00339ce: eee78fe3 beq a5,a4,c00338cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37763 + c0033b9c: 5765 li a4,-7 + c0033b9e: eee78fe3 beq a5,a4,c0033a9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37771 JS_FreeValue(ctx, tag); - c00339d2: 75c2 ld a1,48(sp) - c00339d4: 7662 ld a2,56(sp) - c00339d6: 8522 mv a0,s0 - c00339d8: 960d40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37764 + c0033ba2: 75c2 ld a1,48(sp) + c0033ba4: 7662 ld a2,56(sp) + c0033ba6: 8522 mv a0,s0 + c0033ba8: 87ed40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37772 tag = JS_AtomToString(ctx, atom); - c00339dc: 85ce mv a1,s3 - c00339de: 8522 mv a0,s0 - c00339e0: 95ce60ef jal ra,c0019b3c - c00339e4: b5d5 j c00338c8 + c0033bac: 85ce mv a1,s3 + c0033bae: 8522 mv a0,s0 + c0033bb0: 95ce60ef jal ra,c0019d0c + c0033bb4: b5d5 j c0033a98 -00000000c00339e6 : +00000000c0033bb6 : js_regexp_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43761 { - c00339e6: 7115 addi sp,sp,-224 - c00339e8: ed86 sd ra,216(sp) - c00339ea: e9a2 sd s0,208(sp) - c00339ec: e5a6 sd s1,200(sp) - c00339ee: e02e sd a1,0(sp) - c00339f0: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43757 + c0033bb6: 7115 addi sp,sp,-224 + c0033bb8: ed86 sd ra,216(sp) + c0033bba: e9a2 sd s0,208(sp) + c0033bbc: e5a6 sd s1,200(sp) + c0033bbe: e02e sd a1,0(sp) + c0033bc0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43765 if (JS_VALUE_GET_TAG(this_val) != JS_TAG_OBJECT) - c00339f2: 0006079b sext.w a5,a2 - c00339f6: 577d li a4,-1 - c00339f8: 00e78863 beq a5,a4,c0033a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43799 + c0033bc2: 0006079b sext.w a5,a2 + c0033bc6: 577d li a4,-1 + c0033bc8: 00e78863 beq a5,a4,c0033bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43807 } - c00339fc: 644e ld s0,208(sp) - c00339fe: 60ee ld ra,216(sp) - c0033a00: 64ae ld s1,200(sp) - c0033a02: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43758 + c0033bcc: 644e ld s0,208(sp) + c0033bce: 60ee ld ra,216(sp) + c0033bd0: 64ae ld s1,200(sp) + c0033bd2: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43766 return JS_ThrowTypeErrorNotAnObject(ctx); - c0033a04: f75df06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43760 + c0033bd4: e93df06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43768 res = JS_ToBoolFree(ctx, JS_GetPropertyStr(ctx, this_val, "hasIndices")); - c0033a08: 0002d697 auipc a3,0x2d - c0033a0c: a5868693 addi a3,a3,-1448 # c0060460 - c0033a10: 84aa mv s1,a0 - c0033a12: bf3e50ef jal ra,c0019604 - c0033a16: 862e mv a2,a1 - c0033a18: 85aa mv a1,a0 - c0033a1a: 8526 mv a0,s1 - c0033a1c: c48d40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43761 + c0033bd8: 0002d697 auipc a3,0x2d + c0033bdc: ae868693 addi a3,a3,-1304 # c00606c0 + c0033be0: 84aa mv s1,a0 + c0033be2: bf3e50ef jal ra,c00197d4 + c0033be6: 862e mv a2,a1 + c0033be8: 85aa mv a1,a0 + c0033bea: 8526 mv a0,s1 + c0033bec: b66d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43769 if (res < 0) - c0033a20: 14054763 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43754 + c0033bf0: 14054763 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43762 char str[8], *p = str; - c0033a24: 0820 addi s0,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43763 + c0033bf4: 0820 addi s0,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43771 if (res) - c0033a26: c519 beqz a0,c0033a34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43764 + c0033bf6: c519 beqz a0,c0033c04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43772 *p++ = 'd'; - c0033a28: 06400793 li a5,100 - c0033a2c: 00f10c23 sb a5,24(sp) - c0033a30: 01910413 addi s0,sp,25 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43765 + c0033bf8: 06400793 li a5,100 + c0033bfc: 00f10c23 sb a5,24(sp) + c0033c00: 01910413 addi s0,sp,25 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43773 res = JS_ToBoolFree(ctx, JS_GetProperty(ctx, this_val, JS_ATOM_global)); - c0033a34: 6702 ld a4,0(sp) - c0033a36: 67a2 ld a5,8(sp) + c0033c04: 6702 ld a4,0(sp) + c0033c06: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0033a38: 4801 li a6,0 - c0033a3a: 06f00693 li a3,111 - c0033a3e: 863e mv a2,a5 - c0033a40: 85ba mv a1,a4 - c0033a42: 8526 mv a0,s1 - c0033a44: f93a sd a4,176(sp) - c0033a46: fd3e sd a5,184(sp) - c0033a48: dfbdd0ef jal ra,c0011842 - c0033a4c: 862e mv a2,a1 + c0033c08: 4801 li a6,0 + c0033c0a: 06f00693 li a3,111 + c0033c0e: 863e mv a2,a5 + c0033c10: 85ba mv a1,a4 + c0033c12: 8526 mv a0,s1 + c0033c14: f93a sd a4,176(sp) + c0033c16: fd3e sd a5,184(sp) + c0033c18: d19dd0ef jal ra,c0011930 + c0033c1c: 862e mv a2,a1 js_regexp_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43765 - c0033a4e: 85aa mv a1,a0 - c0033a50: 8526 mv a0,s1 - c0033a52: c12d40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43766 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43773 + c0033c1e: 85aa mv a1,a0 + c0033c20: 8526 mv a0,s1 + c0033c22: b30d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43774 if (res < 0) - c0033a56: 10054c63 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43768 + c0033c26: 10054c63 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43776 if (res) - c0033a5a: c511 beqz a0,c0033a66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43769 + c0033c2a: c511 beqz a0,c0033c36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43777 *p++ = 'g'; - c0033a5c: 06700793 li a5,103 - c0033a60: 00f40023 sb a5,0(s0) - c0033a64: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43770 + c0033c2c: 06700793 li a5,103 + c0033c30: 00f40023 sb a5,0(s0) + c0033c34: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43778 res = JS_ToBoolFree(ctx, JS_GetPropertyStr(ctx, this_val, "ignoreCase")); - c0033a66: 6622 ld a2,8(sp) - c0033a68: 6582 ld a1,0(sp) - c0033a6a: 0002d697 auipc a3,0x2d - c0033a6e: a0668693 addi a3,a3,-1530 # c0060470 - c0033a72: 8526 mv a0,s1 - c0033a74: b91e50ef jal ra,c0019604 - c0033a78: 862e mv a2,a1 - c0033a7a: 85aa mv a1,a0 - c0033a7c: 8526 mv a0,s1 - c0033a7e: be6d40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43771 + c0033c36: 6622 ld a2,8(sp) + c0033c38: 6582 ld a1,0(sp) + c0033c3a: 0002d697 auipc a3,0x2d + c0033c3e: a9668693 addi a3,a3,-1386 # c00606d0 + c0033c42: 8526 mv a0,s1 + c0033c44: b91e50ef jal ra,c00197d4 + c0033c48: 862e mv a2,a1 + c0033c4a: 85aa mv a1,a0 + c0033c4c: 8526 mv a0,s1 + c0033c4e: b04d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43779 if (res < 0) - c0033a82: 0e054663 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43773 + c0033c52: 0e054663 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43781 if (res) - c0033a86: c511 beqz a0,c0033a92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43774 + c0033c56: c511 beqz a0,c0033c62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43782 *p++ = 'i'; - c0033a88: 06900793 li a5,105 - c0033a8c: 00f40023 sb a5,0(s0) - c0033a90: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43775 + c0033c58: 06900793 li a5,105 + c0033c5c: 00f40023 sb a5,0(s0) + c0033c60: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43783 res = JS_ToBoolFree(ctx, JS_GetPropertyStr(ctx, this_val, "multiline")); - c0033a92: 6622 ld a2,8(sp) - c0033a94: 6582 ld a1,0(sp) - c0033a96: 0002d697 auipc a3,0x2d - c0033a9a: 9ea68693 addi a3,a3,-1558 # c0060480 - c0033a9e: 8526 mv a0,s1 - c0033aa0: b65e50ef jal ra,c0019604 - c0033aa4: 862e mv a2,a1 - c0033aa6: 85aa mv a1,a0 - c0033aa8: 8526 mv a0,s1 - c0033aaa: bbad40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43776 + c0033c62: 6622 ld a2,8(sp) + c0033c64: 6582 ld a1,0(sp) + c0033c66: 0002d697 auipc a3,0x2d + c0033c6a: a7a68693 addi a3,a3,-1414 # c00606e0 + c0033c6e: 8526 mv a0,s1 + c0033c70: b65e50ef jal ra,c00197d4 + c0033c74: 862e mv a2,a1 + c0033c76: 85aa mv a1,a0 + c0033c78: 8526 mv a0,s1 + c0033c7a: ad8d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43784 if (res < 0) - c0033aae: 0c054063 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43778 + c0033c7e: 0c054063 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43786 if (res) - c0033ab2: c511 beqz a0,c0033abe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43779 + c0033c82: c511 beqz a0,c0033c8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43787 *p++ = 'm'; - c0033ab4: 06d00793 li a5,109 - c0033ab8: 00f40023 sb a5,0(s0) - c0033abc: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43780 + c0033c84: 06d00793 li a5,109 + c0033c88: 00f40023 sb a5,0(s0) + c0033c8c: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43788 res = JS_ToBoolFree(ctx, JS_GetPropertyStr(ctx, this_val, "dotAll")); - c0033abe: 6622 ld a2,8(sp) - c0033ac0: 6582 ld a1,0(sp) - c0033ac2: 0002d697 auipc a3,0x2d - c0033ac6: 9ce68693 addi a3,a3,-1586 # c0060490 - c0033aca: 8526 mv a0,s1 - c0033acc: b39e50ef jal ra,c0019604 - c0033ad0: 862e mv a2,a1 - c0033ad2: 85aa mv a1,a0 - c0033ad4: 8526 mv a0,s1 - c0033ad6: b8ed40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43781 + c0033c8e: 6622 ld a2,8(sp) + c0033c90: 6582 ld a1,0(sp) + c0033c92: 0002d697 auipc a3,0x2d + c0033c96: a5e68693 addi a3,a3,-1442 # c00606f0 + c0033c9a: 8526 mv a0,s1 + c0033c9c: b39e50ef jal ra,c00197d4 + c0033ca0: 862e mv a2,a1 + c0033ca2: 85aa mv a1,a0 + c0033ca4: 8526 mv a0,s1 + c0033ca6: aacd40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43789 if (res < 0) - c0033ada: 08054a63 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43783 + c0033caa: 08054a63 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43791 if (res) - c0033ade: c511 beqz a0,c0033aea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43784 + c0033cae: c511 beqz a0,c0033cba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43792 *p++ = 's'; - c0033ae0: 07300793 li a5,115 - c0033ae4: 00f40023 sb a5,0(s0) - c0033ae8: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43785 + c0033cb0: 07300793 li a5,115 + c0033cb4: 00f40023 sb a5,0(s0) + c0033cb8: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43793 res = JS_ToBoolFree(ctx, JS_GetProperty(ctx, this_val, JS_ATOM_unicode)); - c0033aea: 6702 ld a4,0(sp) - c0033aec: 67a2 ld a5,8(sp) + c0033cba: 6702 ld a4,0(sp) + c0033cbc: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0033aee: 4801 li a6,0 - c0033af0: 07000693 li a3,112 - c0033af4: 863e mv a2,a5 - c0033af6: 85ba mv a1,a4 - c0033af8: 8526 mv a0,s1 - c0033afa: f13a sd a4,160(sp) - c0033afc: f53e sd a5,168(sp) - c0033afe: d45dd0ef jal ra,c0011842 - c0033b02: 862e mv a2,a1 - c0033b04: f92a sd a0,176(sp) - c0033b06: fd2e sd a1,184(sp) + c0033cbe: 4801 li a6,0 + c0033cc0: 07000693 li a3,112 + c0033cc4: 863e mv a2,a5 + c0033cc6: 85ba mv a1,a4 + c0033cc8: 8526 mv a0,s1 + c0033cca: f13a sd a4,160(sp) + c0033ccc: f53e sd a5,168(sp) + c0033cce: c63dd0ef jal ra,c0011930 + c0033cd2: 862e mv a2,a1 + c0033cd4: f92a sd a0,176(sp) + c0033cd6: fd2e sd a1,184(sp) js_regexp_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43785 - c0033b08: 85aa mv a1,a0 - c0033b0a: 8526 mv a0,s1 - c0033b0c: b58d40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43793 + c0033cd8: 85aa mv a1,a0 + c0033cda: 8526 mv a0,s1 + c0033cdc: a76d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43794 if (res < 0) - c0033b10: 04054f63 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43788 + c0033ce0: 04054f63 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43796 if (res) - c0033b14: c511 beqz a0,c0033b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43789 + c0033ce4: c511 beqz a0,c0033cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43797 *p++ = 'u'; - c0033b16: 07500793 li a5,117 - c0033b1a: 00f40023 sb a5,0(s0) - c0033b1e: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43790 + c0033ce6: 07500793 li a5,117 + c0033cea: 00f40023 sb a5,0(s0) + c0033cee: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43798 res = JS_ToBoolFree(ctx, JS_GetPropertyStr(ctx, this_val, "sticky")); - c0033b20: 6622 ld a2,8(sp) - c0033b22: 6582 ld a1,0(sp) - c0033b24: 0002d697 auipc a3,0x2d - c0033b28: 97468693 addi a3,a3,-1676 # c0060498 - c0033b2c: 8526 mv a0,s1 - c0033b2e: ad7e50ef jal ra,c0019604 - c0033b32: 862e mv a2,a1 - c0033b34: f12a sd a0,160(sp) - c0033b36: f52e sd a1,168(sp) - c0033b38: 85aa mv a1,a0 - c0033b3a: 8526 mv a0,s1 - c0033b3c: b28d40ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43791 + c0033cf0: 6622 ld a2,8(sp) + c0033cf2: 6582 ld a1,0(sp) + c0033cf4: 0002d697 auipc a3,0x2d + c0033cf8: a0468693 addi a3,a3,-1532 # c00606f8 + c0033cfc: 8526 mv a0,s1 + c0033cfe: ad7e50ef jal ra,c00197d4 + c0033d02: 862e mv a2,a1 + c0033d04: f12a sd a0,160(sp) + c0033d06: f52e sd a1,168(sp) + c0033d08: 85aa mv a1,a0 + c0033d0a: 8526 mv a0,s1 + c0033d0c: a46d40ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43799 if (res < 0) - c0033b40: 02054763 bltz a0,c0033b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43793 + c0033d10: 02054763 bltz a0,c0033d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43801 if (res) - c0033b44: c511 beqz a0,c0033b50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43794 + c0033d14: c511 beqz a0,c0033d20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43802 *p++ = 'y'; - c0033b46: 07900793 li a5,121 - c0033b4a: 00f40023 sb a5,0(s0) - c0033b4e: 0405 addi s0,s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43795 + c0033d16: 07900793 li a5,121 + c0033d1a: 00f40023 sb a5,0(s0) + c0033d1e: 0405 addi s0,s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43803 return JS_NewStringLen(ctx, str, p - str); - c0033b50: 082c addi a1,sp,24 - c0033b52: 40b40633 sub a2,s0,a1 - c0033b56: 8526 mv a0,s1 - c0033b58: f38e50ef jal ra,c0019290 - c0033b5c: f02a sd a0,32(sp) - c0033b5e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43799 + c0033d20: 082c addi a1,sp,24 + c0033d22: 40b40633 sub a2,s0,a1 + c0033d26: 8526 mv a0,s1 + c0033d28: f38e50ef jal ra,c0019460 + c0033d2c: f02a sd a0,32(sp) + c0033d2e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43807 } - c0033b60: 60ee ld ra,216(sp) - c0033b62: 644e ld s0,208(sp) - c0033b64: 7502 ld a0,32(sp) - c0033b66: 75a2 ld a1,40(sp) - c0033b68: 64ae ld s1,200(sp) - c0033b6a: 612d addi sp,sp,224 - c0033b6c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43798 + c0033d30: 60ee ld ra,216(sp) + c0033d32: 644e ld s0,208(sp) + c0033d34: 7502 ld a0,32(sp) + c0033d36: 75a2 ld a1,40(sp) + c0033d38: 64ae ld s1,200(sp) + c0033d3a: 612d addi sp,sp,224 + c0033d3c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43806 return JS_EXCEPTION; - c0033b6e: 4799 li a5,6 - c0033b70: f002 sd zero,32(sp) - c0033b72: f43e sd a5,40(sp) - c0033b74: b7f5 j c0033b60 + c0033d3e: 4799 li a5,6 + c0033d40: f002 sd zero,32(sp) + c0033d42: f43e sd a5,40(sp) + c0033d44: b7f5 j c0033d30 -00000000c0033b76 : +00000000c0033d46 : js_function_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38588 { - c0033b76: 711d addi sp,sp,-96 - c0033b78: e8a2 sd s0,80(sp) - c0033b7a: e4a6 sd s1,72(sp) - c0033b7c: ec86 sd ra,88(sp) - c0033b7e: 842a mv s0,a0 - c0033b80: e02e sd a1,0(sp) - c0033b82: e432 sd a2,8(sp) - c0033b84: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38584 + c0033d46: 711d addi sp,sp,-96 + c0033d48: e8a2 sd s0,80(sp) + c0033d4a: e4a6 sd s1,72(sp) + c0033d4c: ec86 sd ra,88(sp) + c0033d4e: 842a mv s0,a0 + c0033d50: e02e sd a1,0(sp) + c0033d52: e432 sd a2,8(sp) + c0033d54: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38592 if (check_function(ctx, this_val)) - c0033b86: 923df0ef jal ra,c00134a8 - c0033b8a: e945 bnez a0,c0033c3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38588 + c0033d56: 841df0ef jal ra,c0013596 + c0033d5a: e945 bnez a0,c0033e0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38596 if (js_class_has_bytecode(p->class_id)) { - c0033b8c: 0064d503 lhu a0,6(s1) - c0033b90: bc3d10ef jal ra,c0005752 - c0033b94: cd51 beqz a0,c0033c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38589 + c0033d5c: 0064d503 lhu a0,6(s1) + c0033d60: ae1d10ef jal ra,c0005840 + c0033d64: cd51 beqz a0,c0033e00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38597 JSFunctionBytecode *b = p->u.func.function_bytecode; - c0033b96: 789c ld a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38590 + c0033d66: 789c ld a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38598 if (b->has_debug && b->debug.source) { - c0033b98: 01a7c703 lbu a4,26(a5) - c0033b9c: 8b11 andi a4,a4,4 - c0033b9e: cb19 beqz a4,c0033bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38590 (discriminator 1) - c0033ba0: 7fac ld a1,120(a5) - c0033ba2: c989 beqz a1,c0033bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38591 + c0033d68: 01a7c703 lbu a4,26(a5) + c0033d6c: 8b11 andi a4,a4,4 + c0033d6e: cb19 beqz a4,c0033d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38598 (discriminator 1) + c0033d70: 7fac ld a1,120(a5) + c0033d72: c989 beqz a1,c0033d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38599 return JS_NewStringLen(ctx, b->debug.source, b->debug.source_len); - c0033ba4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033d74: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033ba6: 6446 ld s0,80(sp) - c0033ba8: 60e6 ld ra,88(sp) - c0033baa: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38591 + c0033d76: 6446 ld s0,80(sp) + c0033d78: 60e6 ld ra,88(sp) + c0033d7a: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38599 return JS_NewStringLen(ctx, b->debug.source, b->debug.source_len); - c0033bac: 57b0 lw a2,104(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033d7c: 57b0 lw a2,104(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033bae: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38591 + c0033d7e: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38599 return JS_NewStringLen(ctx, b->debug.source, b->debug.source_len); - c0033bb0: ee0e506f j c0019290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38593 + c0033d80: ee0e506f j c0019460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38601 func_kind = b->func_kind; - c0033bb4: 6f9c ld a5,24(a5) - c0033bb6: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38602 + c0033d84: 6f9c ld a5,24(a5) + c0033d86: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38610 pref = "function "; - c0033bb8: 0002d497 auipc s1,0x2d - c0033bbc: 8e848493 addi s1,s1,-1816 # c00604a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38593 + c0033d88: 0002d497 auipc s1,0x2d + c0033d8c: 97848493 addi s1,s1,-1672 # c0060700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38601 func_kind = b->func_kind; - c0033bc0: 83b1 srli a5,a5,0xc - c0033bc2: 8b8d andi a5,a5,3 - c0033bc4: 37fd addiw a5,a5,-1 - c0033bc6: 0007869b sext.w a3,a5 - c0033bca: 00d76c63 bltu a4,a3,c0033be2 - c0033bce: 02079713 slli a4,a5,0x20 - c0033bd2: 01d75793 srli a5,a4,0x1d - c0033bd6: 0002e717 auipc a4,0x2e - c0033bda: 47270713 addi a4,a4,1138 # c0062048 - c0033bde: 97ba add a5,a5,a4 - c0033be0: 6384 ld s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38615 + c0033d90: 83b1 srli a5,a5,0xc + c0033d92: 8b8d andi a5,a5,3 + c0033d94: 37fd addiw a5,a5,-1 + c0033d96: 0007869b sext.w a3,a5 + c0033d9a: 00d76c63 bltu a4,a3,c0033db2 + c0033d9e: 02079713 slli a4,a5,0x20 + c0033da2: 01d75793 srli a5,a4,0x1d + c0033da6: 0002e717 auipc a4,0x2e + c0033daa: 50270713 addi a4,a4,1282 # c00622a8 + c0033dae: 97ba add a5,a5,a4 + c0033db0: 6384 ld s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38623 name = JS_GetProperty(ctx, this_val, JS_ATOM_name); - c0033be2: 6702 ld a4,0(sp) - c0033be4: 67a2 ld a5,8(sp) + c0033db2: 6702 ld a4,0(sp) + c0033db4: 67a2 ld a5,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0033be6: 03700693 li a3,55 - c0033bea: 85ba mv a1,a4 - c0033bec: 863e mv a2,a5 - c0033bee: 4801 li a6,0 - c0033bf0: 8522 mv a0,s0 - c0033bf2: f03a sd a4,32(sp) - c0033bf4: f43e sd a5,40(sp) - c0033bf6: c4ddd0ef jal ra,c0011842 - c0033bfa: e82a sd a0,16(sp) + c0033db6: 03700693 li a3,55 + c0033dba: 85ba mv a1,a4 + c0033dbc: 863e mv a2,a5 + c0033dbe: 4801 li a6,0 + c0033dc0: 8522 mv a0,s0 + c0033dc2: f03a sd a4,32(sp) + c0033dc4: f43e sd a5,40(sp) + c0033dc6: b6bdd0ef jal ra,c0011930 + c0033dca: e82a sd a0,16(sp) js_function_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38624 if (JS_IsUndefined(name)) - c0033bfc: 0005871b sext.w a4,a1 - c0033c00: 478d li a5,3 + c0033dcc: 0005871b sext.w a4,a1 + c0033dd0: 478d li a5,3 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0033c02: 86ae mv a3,a1 + c0033dd2: 86ae mv a3,a1 js_function_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38616 - c0033c04: 00f71963 bne a4,a5,c0033c16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38617 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38624 + c0033dd4: 00f71963 bne a4,a5,c0033de6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38625 name = JS_AtomToString(ctx, JS_ATOM_empty_string); - c0033c08: 02f00593 li a1,47 - c0033c0c: 8522 mv a0,s0 - c0033c0e: f2fe50ef jal ra,c0019b3c - c0033c12: e82a sd a0,16(sp) - c0033c14: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38618 + c0033dd8: 02f00593 li a1,47 + c0033ddc: 8522 mv a0,s0 + c0033dde: f2fe50ef jal ra,c0019d0c + c0033de2: e82a sd a0,16(sp) + c0033de4: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 return JS_ConcatString3(ctx, pref, name, suff); - c0033c16: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033de6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033c18: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38618 + c0033de8: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 return JS_ConcatString3(ctx, pref, name, suff); - c0033c1a: 6642 ld a2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033dea: 6642 ld a2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033c1c: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38618 + c0033dec: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 return JS_ConcatString3(ctx, pref, name, suff); - c0033c1e: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033dee: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033c20: 64a6 ld s1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38618 + c0033df0: 64a6 ld s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 return JS_ConcatString3(ctx, pref, name, suff); - c0033c22: 0002d717 auipc a4,0x2d - c0033c26: 88e70713 addi a4,a4,-1906 # c00604b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 + c0033df2: 0002d717 auipc a4,0x2d + c0033df6: 91e70713 addi a4,a4,-1762 # c0060710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 } - c0033c2a: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38618 + c0033dfa: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38626 return JS_ConcatString3(ctx, pref, name, suff); - c0033c2c: bdfe606f j c001a80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38602 + c0033dfc: bdfe606f j c001a9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38610 pref = "function "; - c0033c30: 0002d497 auipc s1,0x2d - c0033c34: 87048493 addi s1,s1,-1936 # c00604a0 - c0033c38: b76d j c0033be2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38620 (discriminator 1) -} - c0033c3a: 60e6 ld ra,88(sp) - c0033c3c: 6446 ld s0,80(sp) - c0033c3e: 64a6 ld s1,72(sp) - c0033c40: 4501 li a0,0 - c0033c42: 4599 li a1,6 - c0033c44: 6125 addi sp,sp,96 - c0033c46: 8082 ret - -00000000c0033c48 : + c0033e00: 0002d497 auipc s1,0x2d + c0033e04: 90048493 addi s1,s1,-1792 # c0060700 + c0033e08: b76d j c0033db2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38628 (discriminator 1) +} + c0033e0a: 60e6 ld ra,88(sp) + c0033e0c: 6446 ld s0,80(sp) + c0033e0e: 64a6 ld s1,72(sp) + c0033e10: 4501 li a0,0 + c0033e12: 4599 li a1,6 + c0033e14: 6125 addi sp,sp,96 + c0033e16: 8082 ret + +00000000c0033e18 : JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35345 -{ - c0033c48: 7115 addi sp,sp,-224 - c0033c4a: e9a2 sd s0,208(sp) - c0033c4c: f952 sd s4,176(sp) - c0033c4e: ed86 sd ra,216(sp) - c0033c50: e5a6 sd s1,200(sp) - c0033c52: e1ca sd s2,192(sp) - c0033c54: fd4e sd s3,184(sp) - c0033c56: f556 sd s5,168(sp) - c0033c58: f15a sd s6,160(sp) - c0033c5a: ed5e sd s7,152(sp) - c0033c5c: e962 sd s8,144(sp) - c0033c5e: e566 sd s9,136(sp) - c0033c60: e16a sd s10,128(sp) - c0033c62: fcee sd s11,120(sp) - c0033c64: e82e sd a1,16(sp) - c0033c66: ec32 sd a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35353 +{ + c0033e18: 7115 addi sp,sp,-224 + c0033e1a: e9a2 sd s0,208(sp) + c0033e1c: f952 sd s4,176(sp) + c0033e1e: ed86 sd ra,216(sp) + c0033e20: e5a6 sd s1,200(sp) + c0033e22: e1ca sd s2,192(sp) + c0033e24: fd4e sd s3,184(sp) + c0033e26: f556 sd s5,168(sp) + c0033e28: f15a sd s6,160(sp) + c0033e2a: ed5e sd s7,152(sp) + c0033e2c: e962 sd s8,144(sp) + c0033e2e: e566 sd s9,136(sp) + c0033e30: e16a sd s10,128(sp) + c0033e32: fcee sd s11,120(sp) + c0033e34: e82e sd a1,16(sp) + c0033e36: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35361 tag = JS_VALUE_GET_NORM_TAG(obj); - c0033c68: 00060a1b sext.w s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35354 + c0033e38: 00060a1b sext.w s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35362 switch(tag) { - c0033c6c: 479d li a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35345 + c0033e3c: 479d li a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35353 { - c0033c6e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35354 + c0033e3e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35362 switch(tag) { - c0033c70: 0347ef63 bltu a5,s4,c0033cae - c0033c74: 0002d697 auipc a3,0x2d - c0033c78: 90c68693 addi a3,a3,-1780 # c0060580 - c0033c7c: 002a1713 slli a4,s4,0x2 - c0033c80: 9736 add a4,a4,a3 - c0033c82: 431c lw a5,0(a4) - c0033c84: 97b6 add a5,a5,a3 - c0033c86: 8782 jr a5 - c0033c88: 00aa079b addiw a5,s4,10 - c0033c8c: 0007869b sext.w a3,a5 - c0033c90: 4725 li a4,9 - c0033c92: 02d76163 bltu a4,a3,c0033cb4 - c0033c96: 02079713 slli a4,a5,0x20 - c0033c9a: 01e75793 srli a5,a4,0x1e - c0033c9e: 0002d717 auipc a4,0x2d - c0033ca2: 90270713 addi a4,a4,-1790 # c00605a0 - c0033ca6: 97ba add a5,a5,a4 - c0033ca8: 439c lw a5,0(a5) - c0033caa: 97ba add a5,a5,a4 - c0033cac: 8782 jr a5 - c0033cae: 57d5 li a5,-11 - c0033cb0: fd47ece3 bltu a5,s4,c0033c88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35472 + c0033e40: 0347ef63 bltu a5,s4,c0033e7e + c0033e44: 0002d697 auipc a3,0x2d + c0033e48: 99c68693 addi a3,a3,-1636 # c00607e0 + c0033e4c: 002a1713 slli a4,s4,0x2 + c0033e50: 9736 add a4,a4,a3 + c0033e52: 431c lw a5,0(a4) + c0033e54: 97b6 add a5,a5,a3 + c0033e56: 8782 jr a5 + c0033e58: 00aa079b addiw a5,s4,10 + c0033e5c: 0007869b sext.w a3,a5 + c0033e60: 4725 li a4,9 + c0033e62: 02d76163 bltu a4,a3,c0033e84 + c0033e66: 02079713 slli a4,a5,0x20 + c0033e6a: 01e75793 srli a5,a4,0x1e + c0033e6e: 0002d717 auipc a4,0x2d + c0033e72: 99270713 addi a4,a4,-1646 # c0060800 + c0033e76: 97ba add a5,a5,a4 + c0033e78: 439c lw a5,0(a5) + c0033e7a: 97ba add a5,a5,a4 + c0033e7c: 8782 jr a5 + c0033e7e: 57d5 li a5,-11 + c0033e80: fd47ece3 bltu a5,s4,c0033e58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35480 JS_ThrowInternalError(s->ctx, "unsupported tag (%d)", tag); - c0033cb4: 6008 ld a0,0(s0) - c0033cb6: 8652 mv a2,s4 - c0033cb8: 0002d597 auipc a1,0x2d - c0033cbc: 8b058593 addi a1,a1,-1872 # c0060568 - c0033cc0: cc5e00ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35473 + c0033e84: 6008 ld a0,0(s0) + c0033e86: 8652 mv a2,s4 + c0033e88: 0002d597 auipc a1,0x2d + c0033e8c: 94058593 addi a1,a1,-1728 # c00607c8 + c0033e90: be3e00ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35481 goto fail; - c0033cc4: a911 j c00340d8 + c0033e94: a911 j c00342a8 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033cc6: 4585 li a1,1 - c0033cc8: 00840513 addi a0,s0,8 - c0033ccc: 076140ef jal ra,c0047d42 + c0033e96: 4585 li a1,1 + c0033e98: 00840513 addi a0,s0,8 + c0033e9c: 076140ef jal ra,c0047f12 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35475 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35483 return 0; - c0033cd0: 4501 li a0,0 - c0033cd2: 3a30006f j c0034874 + c0033ea0: 4501 li a0,0 + c0033ea2: 3a30006f j c0034a44 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033cd6: 4589 li a1,2 - c0033cd8: bfc5 j c0033cc8 + c0033ea6: 4589 li a1,2 + c0033ea8: bfc5 j c0033e98 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35370 bc_put_u8(s, BC_TAG_BOOL_FALSE + JS_VALUE_GET_INT(obj)); - c0033cda: 45c2 lw a1,16(sp) - c0033cdc: 258d addiw a1,a1,3 + c0033eaa: 45c2 lw a1,16(sp) + c0033eac: 258d addiw a1,a1,3 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033cde: 0ff5f593 zext.b a1,a1 - c0033ce2: b7dd j c0033cc8 - c0033ce4: 00850413 addi s0,a0,8 - c0033ce8: 4595 li a1,5 - c0033cea: 8522 mv a0,s0 - c0033cec: 056140ef jal ra,c0047d42 + c0033eae: 0ff5f593 zext.b a1,a1 + c0033eb2: b7dd j c0033e98 + c0033eb4: 00850413 addi s0,a0,8 + c0033eb8: 4595 li a1,5 + c0033eba: 8522 mv a0,s0 + c0033ebc: 056140ef jal ra,c0047f12 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35366 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35374 bc_put_sleb128(s, JS_VALUE_GET_INT(obj)); - c0033cf0: 45c2 lw a1,16(sp) + c0033ec0: 45c2 lw a1,16(sp) dbuf_put_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6485 dbuf_put_leb128(s, (2 * v) ^ -(v >> 31)); - c0033cf2: 0015979b slliw a5,a1,0x1 - c0033cf6: 41f5d59b sraiw a1,a1,0x1f - c0033cfa: 8dbd xor a1,a1,a5 - c0033cfc: 2581 sext.w a1,a1 + c0033ec2: 0015979b slliw a5,a1,0x1 + c0033ec6: 41f5d59b sraiw a1,a1,0x1f + c0033eca: 8dbd xor a1,a1,a5 + c0033ecc: 2581 sext.w a1,a1 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033cfe: 8522 mv a0,s0 - c0033d00: b24d10ef jal ra,c0005024 - c0033d04: b7f1 j c0033cd0 + c0033ece: 8522 mv a0,s0 + c0033ed0: 954d10ef jal ra,c0005024 + c0033ed4: b7f1 j c0033ea0 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033d06: 00850493 addi s1,a0,8 - c0033d0a: 4599 li a1,6 - c0033d0c: 8526 mv a0,s1 - c0033d0e: 034140ef jal ra,c0047d42 + c0033ed6: 00850493 addi s1,a0,8 + c0033eda: 4599 li a1,6 + c0033edc: 8526 mv a0,s1 + c0033ede: 034140ef jal ra,c0047f12 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35380 u.d = JS_VALUE_GET_FLOAT64(obj); - c0033d12: 6542 ld a0,16(sp) + c0033ee2: 6542 ld a0,16(sp) bc_put_u64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34758 if (s->byte_swap) - c0033d14: 03844783 lbu a5,56(s0) - c0033d18: f0aa sd a0,96(sp) - c0033d1a: c781 beqz a5,c0033d22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34751 + c0033ee4: 03844783 lbu a5,56(s0) + c0033ee8: f0aa sd a0,96(sp) + c0033eea: c781 beqz a5,c0033ef2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34759 v = bswap64(v); - c0033d1c: ae8d00ef jal ra,c0004004 - c0033d20: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34752 + c0033eec: 918d00ef jal ra,c0004004 + c0033ef0: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34760 dbuf_put(&s->dbuf, (uint8_t *)&v, sizeof(v)); - c0033d22: 4621 li a2,8 - c0033d24: 108c addi a1,sp,96 - c0033d26: 8526 mv a0,s1 - c0033d28: 789130ef jal ra,c0047cb0 + c0033ef2: 4621 li a2,8 + c0033ef4: 108c addi a1,sp,96 + c0033ef6: 8526 mv a0,s1 + c0033ef8: 789130ef jal ra,c0047e80 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35375 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35383 break; - c0033d2c: b755 j c0033cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35378 + c0033efc: b755 j c0033ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35386 JSString *p = JS_VALUE_GET_STRING(obj); - c0033d2e: 64c2 ld s1,16(sp) + c0033efe: 64c2 ld s1,16(sp) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033d30: 459d li a1,7 - c0033d32: 00840513 addi a0,s0,8 - c0033d36: 00c140ef jal ra,c0047d42 + c0033f00: 459d li a1,7 + c0033f02: 00840513 addi a0,s0,8 + c0033f06: 00c140ef jal ra,c0047f12 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35388 JS_WriteString(s, p); - c0033d3a: 85a6 mv a1,s1 - c0033d3c: 8522 mv a0,s0 - c0033d3e: a2ed20ef jal ra,c0005f6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35382 + c0033f0a: 85a6 mv a1,s1 + c0033f0c: 8522 mv a0,s0 + c0033f0e: 94cd20ef jal ra,c000605a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35390 break; - c0033d42: b779 j c0033cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35384 + c0033f12: b779 j c0033ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35392 if (!s->allow_bytecode) - c0033d44: 03944783 lbu a5,57(s0) - c0033d48: d7b5 beqz a5,c0033cb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35386 + c0033f14: 03944783 lbu a5,57(s0) + c0033f18: d7b5 beqz a5,c0033e84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35394 if (JS_WriteFunctionTag(s, obj)) - c0033d4a: 64c2 ld s1,16(sp) + c0033f1a: 64c2 ld s1,16(sp) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033d4c: 00840913 addi s2,s0,8 - c0033d50: 45b9 li a1,14 - c0033d52: 854a mv a0,s2 - c0033d54: 7ef130ef jal ra,c0047d42 + c0033f1c: 00840913 addi s2,s0,8 + c0033f20: 45b9 li a1,14 + c0033f22: 854a mv a0,s2 + c0033f24: 7ef130ef jal ra,c0047f12 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35091 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35099 bc_set_flags(&flags, &idx, b->has_prototype, 1); - c0033d58: 6c90 ld a2,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35092 + c0033f28: 6c90 ld a2,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 bc_set_flags(&flags, &idx, b->has_simple_parameter_list, 1); - c0033d5a: 4685 li a3,1 - c0033d5c: 088c addi a1,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35091 + c0033f2a: 4685 li a3,1 + c0033f2c: 088c addi a1,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35099 bc_set_flags(&flags, &idx, b->has_prototype, 1); - c0033d5e: 00865793 srli a5,a2,0x8 - c0033d62: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35092 + c0033f2e: 00865793 srli a5,a2,0x8 + c0033f32: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 bc_set_flags(&flags, &idx, b->has_simple_parameter_list, 1); - c0033d64: 8225 srli a2,a2,0x9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35091 + c0033f34: 8225 srli a2,a2,0x9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35099 bc_set_flags(&flags, &idx, b->has_prototype, 1); - c0033d66: c0be sw a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35092 + c0033f36: c0be sw a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 bc_set_flags(&flags, &idx, b->has_simple_parameter_list, 1); - c0033d68: 8a05 andi a2,a2,1 + c0033f38: 8a05 andi a2,a2,1 bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033d6a: 4785 li a5,1 + c0033f3a: 4785 li a5,1 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 bc_set_flags(&flags, &idx, b->has_simple_parameter_list, 1); - c0033d6c: 0088 addi a0,sp,64 + c0033f3c: 0088 addi a0,sp,64 bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033d6e: c8be sw a5,80(sp) + c0033f3e: c8be sw a5,80(sp) JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 bc_set_flags(&flags, &idx, b->has_simple_parameter_list, 1); - c0033d70: 867d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35093 + c0033f40: e96d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35101 bc_set_flags(&flags, &idx, b->is_derived_class_constructor, 1); - c0033d74: 6c90 ld a2,24(s1) - c0033d76: 4685 li a3,1 - c0033d78: 088c addi a1,sp,80 - c0033d7a: 8229 srli a2,a2,0xa - c0033d7c: 8a05 andi a2,a2,1 - c0033d7e: 0088 addi a0,sp,64 - c0033d80: 857d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35094 + c0033f44: 6c90 ld a2,24(s1) + c0033f46: 4685 li a3,1 + c0033f48: 088c addi a1,sp,80 + c0033f4a: 8229 srli a2,a2,0xa + c0033f4c: 8a05 andi a2,a2,1 + c0033f4e: 0088 addi a0,sp,64 + c0033f50: e86d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35102 bc_set_flags(&flags, &idx, b->need_home_object, 1); - c0033d84: 6c90 ld a2,24(s1) - c0033d86: 4685 li a3,1 - c0033d88: 088c addi a1,sp,80 - c0033d8a: 822d srli a2,a2,0xb - c0033d8c: 8a05 andi a2,a2,1 - c0033d8e: 0088 addi a0,sp,64 - c0033d90: 847d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35095 + c0033f54: 6c90 ld a2,24(s1) + c0033f56: 4685 li a3,1 + c0033f58: 088c addi a1,sp,80 + c0033f5a: 822d srli a2,a2,0xb + c0033f5c: 8a05 andi a2,a2,1 + c0033f5e: 0088 addi a0,sp,64 + c0033f60: e76d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35103 bc_set_flags(&flags, &idx, b->func_kind, 2); - c0033d94: 6c90 ld a2,24(s1) - c0033d96: 4689 li a3,2 - c0033d98: 088c addi a1,sp,80 - c0033d9a: 8231 srli a2,a2,0xc - c0033d9c: 8a0d andi a2,a2,3 - c0033d9e: 0088 addi a0,sp,64 - c0033da0: 837d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35096 + c0033f64: 6c90 ld a2,24(s1) + c0033f66: 4689 li a3,2 + c0033f68: 088c addi a1,sp,80 + c0033f6a: 8231 srli a2,a2,0xc + c0033f6c: 8a0d andi a2,a2,3 + c0033f6e: 0088 addi a0,sp,64 + c0033f70: e66d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35104 bc_set_flags(&flags, &idx, b->new_target_allowed, 1); - c0033da4: 6c90 ld a2,24(s1) - c0033da6: 4685 li a3,1 - c0033da8: 088c addi a1,sp,80 - c0033daa: 8239 srli a2,a2,0xe - c0033dac: 8a05 andi a2,a2,1 - c0033dae: 0088 addi a0,sp,64 - c0033db0: 827d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35097 + c0033f74: 6c90 ld a2,24(s1) + c0033f76: 4685 li a3,1 + c0033f78: 088c addi a1,sp,80 + c0033f7a: 8239 srli a2,a2,0xe + c0033f7c: 8a05 andi a2,a2,1 + c0033f7e: 0088 addi a0,sp,64 + c0033f80: e56d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35105 bc_set_flags(&flags, &idx, b->super_call_allowed, 1); - c0033db4: 6c90 ld a2,24(s1) - c0033db6: 4685 li a3,1 - c0033db8: 088c addi a1,sp,80 - c0033dba: 823d srli a2,a2,0xf - c0033dbc: 8a05 andi a2,a2,1 - c0033dbe: 0088 addi a0,sp,64 - c0033dc0: 817d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35098 + c0033f84: 6c90 ld a2,24(s1) + c0033f86: 4685 li a3,1 + c0033f88: 088c addi a1,sp,80 + c0033f8a: 823d srli a2,a2,0xf + c0033f8c: 8a05 andi a2,a2,1 + c0033f8e: 0088 addi a0,sp,64 + c0033f90: e46d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35106 bc_set_flags(&flags, &idx, b->super_allowed, 1); - c0033dc4: 01a4d603 lhu a2,26(s1) - c0033dc8: 4685 li a3,1 - c0033dca: 088c addi a1,sp,80 - c0033dcc: 8a05 andi a2,a2,1 - c0033dce: 0088 addi a0,sp,64 - c0033dd0: 807d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35099 + c0033f94: 01a4d603 lhu a2,26(s1) + c0033f98: 4685 li a3,1 + c0033f9a: 088c addi a1,sp,80 + c0033f9c: 8a05 andi a2,a2,1 + c0033f9e: 0088 addi a0,sp,64 + c0033fa0: e36d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35107 bc_set_flags(&flags, &idx, b->arguments_allowed, 1); - c0033dd4: 6c90 ld a2,24(s1) - c0033dd6: 4685 li a3,1 - c0033dd8: 088c addi a1,sp,80 - c0033dda: 8245 srli a2,a2,0x11 - c0033ddc: 8a05 andi a2,a2,1 - c0033dde: 0088 addi a0,sp,64 - c0033de0: ff6d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35100 + c0033fa4: 6c90 ld a2,24(s1) + c0033fa6: 4685 li a3,1 + c0033fa8: 088c addi a1,sp,80 + c0033faa: 8245 srli a2,a2,0x11 + c0033fac: 8a05 andi a2,a2,1 + c0033fae: 0088 addi a0,sp,64 + c0033fb0: e26d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35108 bc_set_flags(&flags, &idx, b->has_debug, 1); - c0033de4: 6c90 ld a2,24(s1) - c0033de6: 4685 li a3,1 - c0033de8: 088c addi a1,sp,80 - c0033dea: 8249 srli a2,a2,0x12 - c0033dec: 8a05 andi a2,a2,1 - c0033dee: 0088 addi a0,sp,64 - c0033df0: fe6d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35101 + c0033fb4: 6c90 ld a2,24(s1) + c0033fb6: 4685 li a3,1 + c0033fb8: 088c addi a1,sp,80 + c0033fba: 8249 srli a2,a2,0x12 + c0033fbc: 8a05 andi a2,a2,1 + c0033fbe: 0088 addi a0,sp,64 + c0033fc0: e16d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35109 bc_set_flags(&flags, &idx, b->backtrace_barrier, 1); - c0033df4: 6c90 ld a2,24(s1) - c0033df6: 4685 li a3,1 - c0033df8: 088c addi a1,sp,80 - c0033dfa: 824d srli a2,a2,0x13 - c0033dfc: 8a05 andi a2,a2,1 - c0033dfe: 0088 addi a0,sp,64 - c0033e00: fd6d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35102 + c0033fc4: 6c90 ld a2,24(s1) + c0033fc6: 4685 li a3,1 + c0033fc8: 088c addi a1,sp,80 + c0033fca: 824d srli a2,a2,0x13 + c0033fcc: 8a05 andi a2,a2,1 + c0033fce: 0088 addi a0,sp,64 + c0033fd0: e06d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35110 bc_set_flags(&flags, &idx, b->is_direct_or_indirect_eval, 1); - c0033e04: 6c90 ld a2,24(s1) - c0033e06: 4685 li a3,1 - c0033e08: 088c addi a1,sp,80 - c0033e0a: 8255 srli a2,a2,0x15 - c0033e0c: 8a05 andi a2,a2,1 - c0033e0e: 0088 addi a0,sp,64 - c0033e10: fc6d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35103 + c0033fd4: 6c90 ld a2,24(s1) + c0033fd6: 4685 li a3,1 + c0033fd8: 088c addi a1,sp,80 + c0033fda: 8255 srli a2,a2,0x15 + c0033fdc: 8a05 andi a2,a2,1 + c0033fde: 0088 addi a0,sp,64 + c0033fe0: df6d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35111 assert(idx <= 16); - c0033e14: 4746 lw a4,80(sp) - c0033e16: 47c1 li a5,16 - c0033e18: 00e7dc63 bge a5,a4,c0033e30 - c0033e1c: 65a5 lui a1,0x9 - c0033e1e: 4601 li a2,0 - c0033e20: 91f58593 addi a1,a1,-1761 # 891f <__clzdi2-0xbfff76e1> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 + c0033fe4: 4746 lw a4,80(sp) + c0033fe6: 47c1 li a5,16 + c0033fe8: 00e7dc63 bge a5,a4,c0034000 + c0033fec: 65a5 lui a1,0x9 + c0033fee: 4601 li a2,0 + c0033ff0: 92758593 addi a1,a1,-1753 # 8927 <__clzdi2-0xbfff76d9> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 assert(idx <= 8); - c0033e24: 00029517 auipc a0,0x29 - c0033e28: c5450513 addi a0,a0,-940 # c005ca78 - c0033e2c: 3ed1f0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35104 + c0033ff4: 00029517 auipc a0,0x29 + c0033ff8: c5450513 addi a0,a0,-940 # c005cc48 + c0033ffc: 3ed1f0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35112 bc_put_u16(s, flags); - c0033e30: 04015783 lhu a5,64(sp) + c0034000: 04015783 lhu a5,64(sp) bc_put_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34744 if (s->byte_swap) - c0033e34: 03844703 lbu a4,56(s0) + c0034004: 03844703 lbu a4,56(s0) JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35112 bc_put_u16(s, flags); - c0033e38: 85be mv a1,a5 + c0034008: 85be mv a1,a5 bc_put_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34744 if (s->byte_swap) - c0033e3a: cb01 beqz a4,c0033e4a - c0033e3c: 0087959b slliw a1,a5,0x8 - c0033e40: 0087d79b srliw a5,a5,0x8 - c0033e44: 8ddd or a1,a1,a5 - c0033e46: 15c2 slli a1,a1,0x30 - c0033e48: 91c1 srli a1,a1,0x30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34738 + c003400a: cb01 beqz a4,c003401a + c003400c: 0087959b slliw a1,a5,0x8 + c0034010: 0087d79b srliw a5,a5,0x8 + c0034014: 8ddd or a1,a1,a5 + c0034016: 15c2 slli a1,a1,0x30 + c0034018: 91c1 srli a1,a1,0x30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34746 dbuf_put_u16(&s->dbuf, v); - c0033e4a: 854a mv a0,s2 - c0033e4c: ca6d10ef jal ra,c00052f2 + c003401a: 854a mv a0,s2 + c003401c: bc4d10ef jal ra,c00053e0 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033e50: 0184c583 lbu a1,24(s1) - c0033e54: 854a mv a0,s2 - c0033e56: 6ed130ef jal ra,c0047d42 + c0034020: 0184c583 lbu a1,24(s1) + c0034024: 854a mv a0,s2 + c0034026: 6ed130ef jal ra,c0047f12 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35114 bc_put_atom(s, b->func_name); - c0033e5a: 54cc lw a1,44(s1) - c0033e5c: 8522 mv a0,s0 - c0033e5e: d73e30ef jal ra,c0017bd0 + c003402a: 54cc lw a1,44(s1) + c003402c: 8522 mv a0,s0 + c003402e: d73e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033e62: 0404d583 lhu a1,64(s1) - c0033e66: 854a mv a0,s2 - c0033e68: 9bcd10ef jal ra,c0005024 - c0033e6c: 0424d583 lhu a1,66(s1) - c0033e70: 854a mv a0,s2 - c0033e72: 9b2d10ef jal ra,c0005024 - c0033e76: 0444d583 lhu a1,68(s1) - c0033e7a: 854a mv a0,s2 - c0033e7c: 9a8d10ef jal ra,c0005024 - c0033e80: 0464d583 lhu a1,70(s1) - c0033e84: 854a mv a0,s2 - c0033e86: 99ed10ef jal ra,c0005024 - c0033e8a: 4cec lw a1,92(s1) - c0033e8c: 854a mv a0,s2 - c0033e8e: 996d10ef jal ra,c0005024 - c0033e92: 4cac lw a1,88(s1) - c0033e94: 854a mv a0,s2 - c0033e96: 98ed10ef jal ra,c0005024 - c0033e9a: 548c lw a1,40(s1) - c0033e9c: 854a mv a0,s2 - c0033e9e: 986d10ef jal ra,c0005024 + c0034032: 0404d583 lhu a1,64(s1) + c0034036: 854a mv a0,s2 + c0034038: fedd00ef jal ra,c0005024 + c003403c: 0424d583 lhu a1,66(s1) + c0034040: 854a mv a0,s2 + c0034042: fe3d00ef jal ra,c0005024 + c0034046: 0444d583 lhu a1,68(s1) + c003404a: 854a mv a0,s2 + c003404c: fd9d00ef jal ra,c0005024 + c0034050: 0464d583 lhu a1,70(s1) + c0034054: 854a mv a0,s2 + c0034056: fcfd00ef jal ra,c0005024 + c003405a: 4cec lw a1,92(s1) + c003405c: 854a mv a0,s2 + c003405e: fc7d00ef jal ra,c0005024 + c0034062: 4cac lw a1,88(s1) + c0034064: 854a mv a0,s2 + c0034066: fbfd00ef jal ra,c0005024 + c003406a: 548c lw a1,40(s1) + c003406c: 854a mv a0,s2 + c003406e: fb7d00ef jal ra,c0005024 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35115 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35123 if (b->vardefs) { - c0033ea2: 789c ld a5,48(s1) - c0033ea4: c3e1 beqz a5,c0033f64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35117 + c0034072: 789c ld a5,48(s1) + c0034074: c3e1 beqz a5,c0034134 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35125 bc_put_leb128(s, b->arg_count + b->var_count); - c0033ea6: 0404d583 lhu a1,64(s1) - c0033eaa: 0424d783 lhu a5,66(s1) + c0034076: 0404d583 lhu a1,64(s1) + c003407a: 0424d783 lhu a5,66(s1) bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033eae: 854a mv a0,s2 + c003407e: 854a mv a0,s2 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35126 for(i = 0; i < b->arg_count + b->var_count; i++) { - c0033eb0: 4a01 li s4,0 + c0034080: 4a01 li s4,0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033eb2: 9dbd addw a1,a1,a5 - c0033eb4: 970d10ef jal ra,c0005024 + c0034082: 9dbd addw a1,a1,a5 + c0034084: fa1d00ef jal ra,c0005024 bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033eb8: 4a91 li s5,4 + c0034088: 4a91 li s5,4 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 assert(idx <= 8); - c0033eba: 4b21 li s6,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35118 + c003408a: 4b21 li s6,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35126 for(i = 0; i < b->arg_count + b->var_count; i++) { - c0033ebc: 0424d703 lhu a4,66(s1) - c0033ec0: 0404d783 lhu a5,64(s1) - c0033ec4: 9fb9 addw a5,a5,a4 - c0033ec6: 000a071b sext.w a4,s4 - c0033eca: 00f74663 blt a4,a5,c0033ed6 - c0033ece: 4a01 li s4,0 + c003408c: 0424d703 lhu a4,66(s1) + c0034090: 0404d783 lhu a5,64(s1) + c0034094: 9fb9 addw a5,a5,a4 + c0034096: 000a071b sext.w a4,s4 + c003409a: 00f74663 blt a4,a5,c00340a6 + c003409e: 4a01 li s4,0 bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033ed0: 4a85 li s5,1 + c00340a0: 4a85 li s5,1 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35145 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35153 assert(idx <= 8); - c0033ed2: 4b21 li s6,8 - c0033ed4: aa05 j c0034004 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35119 + c00340a2: 4b21 li s6,8 + c00340a4: aa05 j c00341d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35127 JSVarDef *vd = &b->vardefs[i]; - c0033ed6: 0304b983 ld s3,48(s1) - c0033eda: 004a1793 slli a5,s4,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35120 + c00340a6: 0304b983 ld s3,48(s1) + c00340aa: 004a1793 slli a5,s4,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 bc_put_atom(s, vd->var_name); - c0033ede: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35119 + c00340ae: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35127 JSVarDef *vd = &b->vardefs[i]; - c0033ee0: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35120 - bc_put_atom(s, vd->var_name); - c0033ee2: 0009a583 lw a1,0(s3) + c00340b0: 99be add s3,s3,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 + bc_put_atom(s, vd->var_name); + c00340b2: 0009a583 lw a1,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 assert(idx <= 8); - c0033ee6: 0a05 addi s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35120 + c00340b6: 0a05 addi s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 bc_put_atom(s, vd->var_name); - c0033ee8: ce9e30ef jal ra,c0017bd0 + c00340b8: ce9e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033eec: 0049a583 lw a1,4(s3) - c0033ef0: 854a mv a0,s2 - c0033ef2: 932d10ef jal ra,c0005024 + c00340bc: 0049a583 lw a1,4(s3) + c00340c0: 854a mv a0,s2 + c00340c2: f63d00ef jal ra,c0005024 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35130 bc_put_leb128(s, vd->scope_next + 1); - c0033ef6: 0089a583 lw a1,8(s3) + c00340c6: 0089a583 lw a1,8(s3) bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033efa: 854a mv a0,s2 - c0033efc: 2585 addiw a1,a1,1 - c0033efe: 926d10ef jal ra,c0005024 + c00340ca: 854a mv a0,s2 + c00340cc: 2585 addiw a1,a1,1 + c00340ce: f57d00ef jal ra,c0005024 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35132 bc_set_flags(&flags, &idx, vd->var_kind, 4); - c0033f02: 00c9a783 lw a5,12(s3) + c00340d2: 00c9a783 lw a5,12(s3) bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033f06: c8d6 sw s5,80(sp) + c00340d6: c8d6 sw s5,80(sp) JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35125 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35133 bc_set_flags(&flags, &idx, vd->is_const, 1); - c0033f08: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35124 + c00340d8: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35132 bc_set_flags(&flags, &idx, vd->var_kind, 4); - c0033f0a: 0047d79b srliw a5,a5,0x4 - c0033f0e: 8bbd andi a5,a5,15 - c0033f10: c0be sw a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35125 + c00340da: 0047d79b srliw a5,a5,0x4 + c00340de: 8bbd andi a5,a5,15 + c00340e0: c0be sw a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35133 bc_set_flags(&flags, &idx, vd->is_const, 1); - c0033f12: 00c9a603 lw a2,12(s3) - c0033f16: 088c addi a1,sp,80 - c0033f18: 0088 addi a0,sp,64 - c0033f1a: 8a05 andi a2,a2,1 - c0033f1c: ebad00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35126 + c00340e2: 00c9a603 lw a2,12(s3) + c00340e6: 088c addi a1,sp,80 + c00340e8: 0088 addi a0,sp,64 + c00340ea: 8a05 andi a2,a2,1 + c00340ec: cead00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35134 bc_set_flags(&flags, &idx, vd->is_lexical, 1); - c0033f20: 00c9a603 lw a2,12(s3) - c0033f24: 4685 li a3,1 - c0033f26: 088c addi a1,sp,80 - c0033f28: 0016561b srliw a2,a2,0x1 - c0033f2c: 8a05 andi a2,a2,1 - c0033f2e: 0088 addi a0,sp,64 - c0033f30: ea6d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35127 + c00340f0: 00c9a603 lw a2,12(s3) + c00340f4: 4685 li a3,1 + c00340f6: 088c addi a1,sp,80 + c00340f8: 0016561b srliw a2,a2,0x1 + c00340fc: 8a05 andi a2,a2,1 + c00340fe: 0088 addi a0,sp,64 + c0034100: cd6d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35135 bc_set_flags(&flags, &idx, vd->is_captured, 1); - c0033f34: 00c9a603 lw a2,12(s3) - c0033f38: 4685 li a3,1 - c0033f3a: 088c addi a1,sp,80 - c0033f3c: 0026561b srliw a2,a2,0x2 - c0033f40: 8a05 andi a2,a2,1 - c0033f42: 0088 addi a0,sp,64 - c0033f44: e92d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35128 + c0034104: 00c9a603 lw a2,12(s3) + c0034108: 4685 li a3,1 + c003410a: 088c addi a1,sp,80 + c003410c: 0026561b srliw a2,a2,0x2 + c0034110: 8a05 andi a2,a2,1 + c0034112: 0088 addi a0,sp,64 + c0034114: cc2d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 assert(idx <= 8); - c0033f48: 47c6 lw a5,80(sp) - c0033f4a: 00fb5763 bge s6,a5,c0033f58 - c0033f4e: 65a5 lui a1,0x9 - c0033f50: 4601 li a2,0 - c0033f52: 93858593 addi a1,a1,-1736 # 8938 <__clzdi2-0xbfff76c8> - c0033f56: b5f9 j c0033e24 + c0034118: 47c6 lw a5,80(sp) + c003411a: 00fb5763 bge s6,a5,c0034128 + c003411e: 65a5 lui a1,0x9 + c0034120: 4601 li a2,0 + c0034122: 94058593 addi a1,a1,-1728 # 8940 <__clzdi2-0xbfff76c0> + c0034126: b5f9 j c0033ff4 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033f58: 04014583 lbu a1,64(sp) - c0033f5c: 854a mv a0,s2 - c0033f5e: 5e5130ef jal ra,c0047d42 + c0034128: 04014583 lbu a1,64(sp) + c003412c: 854a mv a0,s2 + c003412e: 5e5130ef jal ra,c0047f12 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35126 for(i = 0; i < b->arg_count + b->var_count; i++) { - c0033f62: bfa9 j c0033ebc + c0034132: bfa9 j c003408c bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033f64: 4581 li a1,0 - c0033f66: 854a mv a0,s2 - c0033f68: 8bcd10ef jal ra,c0005024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34758 + c0034134: 4581 li a1,0 + c0034136: 854a mv a0,s2 + c0034138: eedd00ef jal ra,c0005024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34766 } - c0033f6c: b78d j c0033ece + c003413c: b78d j c003409e JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35144 JSClosureVar *cv = &b->closure_var[i]; - c0033f6e: 7c9c ld a5,56(s1) - c0033f70: 003a1993 slli s3,s4,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35137 + c003413e: 7c9c ld a5,56(s1) + c0034140: 003a1993 slli s3,s4,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35145 bc_put_atom(s, cv->var_name); - c0033f74: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35136 + c0034144: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35144 JSClosureVar *cv = &b->closure_var[i]; - c0033f76: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35137 + c0034146: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35145 bc_put_atom(s, cv->var_name); - c0033f78: 0049a583 lw a1,4(s3) - c0033f7c: c55e30ef jal ra,c0017bd0 + c0034148: 0049a583 lw a1,4(s3) + c003414c: c55e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0033f80: 0029d583 lhu a1,2(s3) - c0033f84: 854a mv a0,s2 - c0033f86: 89ed10ef jal ra,c0005024 + c0034150: 0029d583 lhu a1,2(s3) + c0034154: 854a mv a0,s2 + c0034156: ecfd00ef jal ra,c0005024 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35147 flags = idx = 0; - c0033f8a: c882 sw zero,80(sp) - c0033f8c: c082 sw zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35140 + c003415a: c882 sw zero,80(sp) + c003415c: c082 sw zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35148 bc_set_flags(&flags, &idx, cv->is_local, 1); - c0033f8e: 0009a783 lw a5,0(s3) + c003415e: 0009a783 lw a5,0(s3) bc_set_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34776 *pidx += n; - c0033f92: c8d6 sw s5,80(sp) + c0034162: c8d6 sw s5,80(sp) JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35149 bc_set_flags(&flags, &idx, cv->is_arg, 1); - c0033f94: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35140 + c0034164: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35148 bc_set_flags(&flags, &idx, cv->is_local, 1); - c0033f96: 8b85 andi a5,a5,1 - c0033f98: c0be sw a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35141 + c0034166: 8b85 andi a5,a5,1 + c0034168: c0be sw a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35149 bc_set_flags(&flags, &idx, cv->is_arg, 1); - c0033f9a: 0009a603 lw a2,0(s3) - c0033f9e: 088c addi a1,sp,80 - c0033fa0: 0088 addi a0,sp,64 - c0033fa2: 0016561b srliw a2,a2,0x1 - c0033fa6: 8a05 andi a2,a2,1 - c0033fa8: e2ed00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35142 + c003416a: 0009a603 lw a2,0(s3) + c003416e: 088c addi a1,sp,80 + c0034170: 0088 addi a0,sp,64 + c0034172: 0016561b srliw a2,a2,0x1 + c0034176: 8a05 andi a2,a2,1 + c0034178: c5ed00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35150 bc_set_flags(&flags, &idx, cv->is_const, 1); - c0033fac: 0009a603 lw a2,0(s3) - c0033fb0: 4685 li a3,1 - c0033fb2: 088c addi a1,sp,80 - c0033fb4: 0026561b srliw a2,a2,0x2 - c0033fb8: 8a05 andi a2,a2,1 - c0033fba: 0088 addi a0,sp,64 - c0033fbc: e1ad00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35143 + c003417c: 0009a603 lw a2,0(s3) + c0034180: 4685 li a3,1 + c0034182: 088c addi a1,sp,80 + c0034184: 0026561b srliw a2,a2,0x2 + c0034188: 8a05 andi a2,a2,1 + c003418a: 0088 addi a0,sp,64 + c003418c: c4ad00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35151 bc_set_flags(&flags, &idx, cv->is_lexical, 1); - c0033fc0: 0009a603 lw a2,0(s3) - c0033fc4: 4685 li a3,1 - c0033fc6: 088c addi a1,sp,80 - c0033fc8: 0036561b srliw a2,a2,0x3 - c0033fcc: 8a05 andi a2,a2,1 - c0033fce: 0088 addi a0,sp,64 - c0033fd0: e06d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35144 + c0034190: 0009a603 lw a2,0(s3) + c0034194: 4685 li a3,1 + c0034196: 088c addi a1,sp,80 + c0034198: 0036561b srliw a2,a2,0x3 + c003419c: 8a05 andi a2,a2,1 + c003419e: 0088 addi a0,sp,64 + c00341a0: c36d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35152 bc_set_flags(&flags, &idx, cv->var_kind, 4); - c0033fd4: 0009a603 lw a2,0(s3) - c0033fd8: 4691 li a3,4 - c0033fda: 088c addi a1,sp,80 - c0033fdc: 0046561b srliw a2,a2,0x4 - c0033fe0: 8a3d andi a2,a2,15 - c0033fe2: 0088 addi a0,sp,64 - c0033fe4: df2d00ef jal ra,c00045d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35145 + c00341a4: 0009a603 lw a2,0(s3) + c00341a8: 4691 li a3,4 + c00341aa: 088c addi a1,sp,80 + c00341ac: 0046561b srliw a2,a2,0x4 + c00341b0: 8a3d andi a2,a2,15 + c00341b2: 0088 addi a0,sp,64 + c00341b4: c22d00ef jal ra,c00045d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35153 assert(idx <= 8); - c0033fe8: 47c6 lw a5,80(sp) - c0033fea: 00fb5763 bge s6,a5,c0033ff8 - c0033fee: 65a5 lui a1,0x9 - c0033ff0: 4601 li a2,0 - c0033ff2: 94958593 addi a1,a1,-1719 # 8949 <__clzdi2-0xbfff76b7> - c0033ff6: b53d j c0033e24 + c00341b8: 47c6 lw a5,80(sp) + c00341ba: 00fb5763 bge s6,a5,c00341c8 + c00341be: 65a5 lui a1,0x9 + c00341c0: 4601 li a2,0 + c00341c2: 95158593 addi a1,a1,-1711 # 8951 <__clzdi2-0xbfff76af> + c00341c6: b53d j c0033ff4 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0033ff8: 04014583 lbu a1,64(sp) - c0033ffc: 854a mv a0,s2 + c00341c8: 04014583 lbu a1,64(sp) + c00341cc: 854a mv a0,s2 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35143 for(i = 0; i < b->closure_var_count; i++) { - c0033ffe: 2a05 addiw s4,s4,1 + c00341ce: 2a05 addiw s4,s4,1 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034000: 543130ef jal ra,c0047d42 + c00341d0: 543130ef jal ra,c0047f12 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35143 for(i = 0; i < b->closure_var_count; i++) { - c0034004: 4cfc lw a5,92(s1) - c0034006: f6fa44e3 blt s4,a5,c0033f6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35149 + c00341d4: 4cfc lw a5,92(s1) + c00341d6: f6fa44e3 blt s4,a5,c003413e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35157 if (JS_WriteFunctionBytecode(s, b->byte_code_buf, b->byte_code_len)) - c003400a: 0284aa83 lw s5,40(s1) + c00341da: 0284aa83 lw s5,40(s1) JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34902 bc_buf = js_malloc(s->ctx, bc_len); - c003400e: 6008 ld a0,0(s0) + c00341de: 6008 ld a0,0(s0) JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35149 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35157 if (JS_WriteFunctionBytecode(s, b->byte_code_buf, b->byte_code_len)) - c0034010: 0204ba03 ld s4,32(s1) + c00341e0: 0204ba03 ld s4,32(s1) JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34902 bc_buf = js_malloc(s->ctx, bc_len); - c0034014: 85d6 mv a1,s5 - c0034016: c37e00ef jal ra,c0014c4c - c003401a: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34895 + c00341e4: 85d6 mv a1,s5 + c00341e6: b55e00ef jal ra,c0014d3a + c00341ea: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34903 if (!bc_buf) - c003401c: cd55 beqz a0,c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34897 + c00341ec: cd55 beqz a0,c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34905 memcpy(bc_buf, bc_buf1, bc_len); - c003401e: 8656 mv a2,s5 - c0034020: 85d2 mv a1,s4 - c0034022: 1b9220ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34899 + c00341ee: 8656 mv a2,s5 + c00341f0: 85d2 mv a1,s4 + c00341f2: 1b9220ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34907 pos = 0; - c0034026: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34902 + c00341f6: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34910 len = short_opcode_info(op).size; - c0034028: 0b300b93 li s7,179 - c003402c: 00033c17 auipc s8,0x33 - c0034030: ae4c0c13 addi s8,s8,-1308 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34903 + c00341f8: 0b300b93 li s7,179 + c00341fc: 00033c17 auipc s8,0x33 + c0034200: b74c0c13 addi s8,s8,-1164 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34911 switch(short_opcode_info(op).fmt) { - c0034034: 4c91 li s9,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34900 + c0034204: 4c91 li s9,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34908 while (pos < bc_len) { - c0034036: 055b4663 blt s6,s5,c0034082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34920 + c0034206: 055b4663 blt s6,s5,c0034252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34928 if (s->byte_swap) - c003403a: 03844783 lbu a5,56(s0) - c003403e: 26079263 bnez a5,c00342a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34923 + c003420a: 03844783 lbu a5,56(s0) + c003420e: 26079263 bnez a5,c0034472 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34931 dbuf_put(&s->dbuf, bc_buf, bc_len); - c0034042: 8656 mv a2,s5 - c0034044: 85ce mv a1,s3 - c0034046: 854a mv a0,s2 - c0034048: 469130ef jal ra,c0047cb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34925 + c0034212: 8656 mv a2,s5 + c0034214: 85ce mv a1,s3 + c0034216: 854a mv a0,s2 + c0034218: 469130ef jal ra,c0047e80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34933 js_free(s->ctx, bc_buf); - c003404c: 6008 ld a0,0(s0) - c003404e: 85ce mv a1,s3 - c0034050: debd20ef jal ra,c0006e3a + c003421c: 6008 ld a0,0(s0) + c003421e: 85ce mv a1,s3 + c0034220: d09d20ef jal ra,c0006f28 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35160 if (b->has_debug) { - c0034054: 01a4c783 lbu a5,26(s1) - c0034058: 8b91 andi a5,a5,4 - c003405a: c395 beqz a5,c003407e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35153 + c0034224: 01a4c783 lbu a5,26(s1) + c0034228: 8b91 andi a5,a5,4 + c003422a: c395 beqz a5,c003424e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35161 bc_put_atom(s, b->debug.filename); - c003405c: 50ac lw a1,96(s1) - c003405e: 8522 mv a0,s0 - c0034060: b71e30ef jal ra,c0017bd0 + c003422c: 50ac lw a1,96(s1) + c003422e: 8522 mv a0,s0 + c0034230: b71e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034064: 50ec lw a1,100(s1) - c0034066: 854a mv a0,s2 - c0034068: fbdd00ef jal ra,c0005024 - c003406c: 54ec lw a1,108(s1) - c003406e: 854a mv a0,s2 - c0034070: fb5d00ef jal ra,c0005024 + c0034234: 50ec lw a1,100(s1) + c0034236: 854a mv a0,s2 + c0034238: dedd00ef jal ra,c0005024 + c003423c: 54ec lw a1,108(s1) + c003423e: 854a mv a0,s2 + c0034240: de5d00ef jal ra,c0005024 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35164 dbuf_put(&s->dbuf, b->debug.pc2line_buf, b->debug.pc2line_len); - c0034074: 54f0 lw a2,108(s1) - c0034076: 78ac ld a1,112(s1) - c0034078: 854a mv a0,s2 - c003407a: 437130ef jal ra,c0047cb0 + c0034244: 54f0 lw a2,108(s1) + c0034246: 78ac ld a1,112(s1) + c0034248: 854a mv a0,s2 + c003424a: 437130ef jal ra,c0047e80 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34830 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34838 pos = 0; - c003407e: 4901 li s2,0 - c0034080: ac99 j c00342d6 + c003424e: 4901 li s2,0 + c0034250: ac99 j c00344a6 JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34909 op = bc_buf[pos]; - c0034082: 016987b3 add a5,s3,s6 - c0034086: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34902 + c0034252: 016987b3 add a5,s3,s6 + c0034256: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34910 len = short_opcode_info(op).size; - c003408a: 00fbd363 bge s7,a5,c0034090 - c003408e: 27cd addiw a5,a5,19 - c0034090: 078a slli a5,a5,0x2 - c0034092: 97e2 add a5,a5,s8 - c0034094: 0007cd03 lbu s10,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34903 + c003425a: 00fbd363 bge s7,a5,c0034260 + c003425e: 27cd addiw a5,a5,19 + c0034260: 078a slli a5,a5,0x2 + c0034262: 97e2 add a5,a5,s8 + c0034264: 0007cd03 lbu s10,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34911 switch(short_opcode_info(op).fmt) { - c0034098: 0037c783 lbu a5,3(a5) - c003409c: 37a5 addiw a5,a5,-23 - c003409e: 04fcef63 bltu s9,a5,c00340fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34909 + c0034268: 0037c783 lbu a5,3(a5) + c003426c: 37a5 addiw a5,a5,-23 + c003426e: 04fcef63 bltu s9,a5,c00342cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34917 atom = get_u32(bc_buf + pos + 1); - c00340a2: 001b0a13 addi s4,s6,1 - c00340a6: 9a4e add s4,s4,s3 + c0034272: 001b0a13 addi s4,s6,1 + c0034276: 9a4e add s4,s4,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00340a8: 001a4783 lbu a5,1(s4) - c00340ac: 000a4603 lbu a2,0(s4) + c0034278: 001a4783 lbu a5,1(s4) + c003427c: 000a4603 lbu a2,0(s4) JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34910 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34918 if (bc_atom_to_idx(s, &val, atom)) - c00340b0: 108c addi a1,sp,96 + c0034280: 108c addi a1,sp,96 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00340b2: 07a2 slli a5,a5,0x8 - c00340b4: 8fd1 or a5,a5,a2 - c00340b6: 002a4603 lbu a2,2(s4) + c0034282: 07a2 slli a5,a5,0x8 + c0034284: 8fd1 or a5,a5,a2 + c0034286: 002a4603 lbu a2,2(s4) JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34910 - c00340ba: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34918 + c003428a: 8522 mv a0,s0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00340bc: 0642 slli a2,a2,0x10 - c00340be: 8fd1 or a5,a5,a2 - c00340c0: 003a4603 lbu a2,3(s4) - c00340c4: 0662 slli a2,a2,0x18 - c00340c6: 8e5d or a2,a2,a5 + c003428c: 0642 slli a2,a2,0x10 + c003428e: 8fd1 or a5,a5,a2 + c0034290: 003a4603 lbu a2,3(s4) + c0034294: 0662 slli a2,a2,0x18 + c0034296: 8e5d or a2,a2,a5 JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34910 - c00340c8: 2601 sext.w a2,a2 - c00340ca: a35e30ef jal ra,c0017afe - c00340ce: c901 beqz a0,c00340de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34918 + c0034298: 2601 sext.w a2,a2 + c003429a: a35e30ef jal ra,c0017cce + c003429e: c901 beqz a0,c00342ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34936 js_free(s->ctx, bc_buf); - c00340d0: 6008 ld a0,0(s0) - c00340d2: 85ce mv a1,s3 - c00340d4: d67d20ef jal ra,c0006e3a + c00342a0: 6008 ld a0,0(s0) + c00342a2: 85ce mv a1,s3 + c00342a4: c85d20ef jal ra,c0006f28 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35486 return -1; - c00340d8: 557d li a0,-1 - c00340da: 79a0006f j c0034874 + c00342a8: 557d li a0,-1 + c00342aa: 79a0006f j c0034a44 JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34920 put_u32(bc_buf + pos + 1, val); - c00340de: 5786 lw a5,96(sp) + c00342ae: 5786 lw a5,96(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c00340e0: 0087d71b srliw a4,a5,0x8 - c00340e4: 00fa0023 sb a5,0(s4) - c00340e8: 00ea00a3 sb a4,1(s4) - c00340ec: 0107d71b srliw a4,a5,0x10 - c00340f0: 0187d79b srliw a5,a5,0x18 - c00340f4: 00ea0123 sb a4,2(s4) - c00340f8: 00fa01a3 sb a5,3(s4) + c00342b0: 0087d71b srliw a4,a5,0x8 + c00342b4: 00fa0023 sb a5,0(s4) + c00342b8: 00ea00a3 sb a4,1(s4) + c00342bc: 0107d71b srliw a4,a5,0x10 + c00342c0: 0187d79b srliw a5,a5,0x18 + c00342c4: 00ea0123 sb a4,2(s4) + c00342c8: 00fa01a3 sb a5,3(s4) JS_WriteFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34925 pos += len; - c00340fc: 016d0b3b addw s6,s10,s6 - c0034100: bf1d j c0034036 + c00342cc: 016d0b3b addw s6,s10,s6 + c00342d0: bf1d j c0034206 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34843 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34851 put_u16(bc_buf + pos + 1, - c0034102: 001a0793 addi a5,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34876 + c00342d2: 001a0793 addi a5,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34884 put_u16(bc_buf + pos + 1 + 2, - c0034106: 97ce add a5,a5,s3 + c00342d6: 97ce add a5,a5,s3 put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c0034108: 0007c703 lbu a4,0(a5) - c003410c: 0017c683 lbu a3,1(a5) - c0034110: 00e780a3 sb a4,1(a5) - c0034114: 00d78023 sb a3,0(a5) + c00342d8: 0007c703 lbu a4,0(a5) + c00342dc: 0017c683 lbu a3,1(a5) + c00342e0: 00e780a3 sb a4,1(a5) + c00342e4: 00d78023 sb a3,0(a5) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:196 } - c0034118: a0a9 j c0034162 + c00342e8: a0a9 j c0034332 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34852 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34860 put_u32(bc_buf + pos + 1, - c003411a: 001a0793 addi a5,s4,1 - c003411e: 97ce add a5,a5,s3 + c00342ea: 001a0793 addi a5,s4,1 + c00342ee: 97ce add a5,a5,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0034120: 0017c703 lbu a4,1(a5) - c0034124: 0007c503 lbu a0,0(a5) - c0034128: e03e sd a5,0(sp) - c003412a: 0722 slli a4,a4,0x8 - c003412c: 8f49 or a4,a4,a0 - c003412e: 0027c503 lbu a0,2(a5) - c0034132: 0542 slli a0,a0,0x10 - c0034134: 8f49 or a4,a4,a0 - c0034136: 0037c503 lbu a0,3(a5) - c003413a: 0562 slli a0,a0,0x18 - c003413c: 8d59 or a0,a0,a4 + c00342f0: 0017c703 lbu a4,1(a5) + c00342f4: 0007c503 lbu a0,0(a5) + c00342f8: e03e sd a5,0(sp) + c00342fa: 0722 slli a4,a4,0x8 + c00342fc: 8f49 or a4,a4,a0 + c00342fe: 0027c503 lbu a0,2(a5) + c0034302: 0542 slli a0,a0,0x10 + c0034304: 8f49 or a4,a4,a0 + c0034306: 0037c503 lbu a0,3(a5) + c003430a: 0562 slli a0,a0,0x18 + c003430c: 8d59 or a0,a0,a4 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34852 - c003413e: 2501 sext.w a0,a0 - c0034140: e9dcf0ef jal ra,c0003fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34860 + c003430e: 2501 sext.w a0,a0 + c0034310: ccdcf0ef jal ra,c0003fdc put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0034144: 6782 ld a5,0(sp) - c0034146: 0085571b srliw a4,a0,0x8 - c003414a: 00a78023 sb a0,0(a5) - c003414e: 00e780a3 sb a4,1(a5) - c0034152: 0105571b srliw a4,a0,0x10 - c0034156: 0185551b srliw a0,a0,0x18 - c003415a: 00e78123 sb a4,2(a5) - c003415e: 00a781a3 sb a0,3(a5) + c0034314: 6782 ld a5,0(sp) + c0034316: 0085571b srliw a4,a0,0x8 + c003431a: 00a78023 sb a0,0(a5) + c003431e: 00e780a3 sb a4,1(a5) + c0034322: 0105571b srliw a4,a0,0x10 + c0034326: 0185551b srliw a0,a0,0x18 + c003432a: 00e78123 sb a4,2(a5) + c003432e: 00a781a3 sb a0,3(a5) bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34890 pos += len; - c0034162: 014d8a3b addw s4,s11,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34831 + c0034332: 014d8a3b addw s4,s11,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34839 while (pos < bc_len) { - c0034166: ed5a5ee3 bge s4,s5,c0034042 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34832 + c0034336: ed5a5ee3 bge s4,s5,c0034212 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34840 op = bc_buf[pos]; - c003416a: 014987b3 add a5,s3,s4 - c003416e: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34833 + c003433a: 014987b3 add a5,s3,s4 + c003433e: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34841 len = short_opcode_info(op).size; - c0034172: 00fbd363 bge s7,a5,c0034178 - c0034176: 27cd addiw a5,a5,19 - c0034178: 078a slli a5,a5,0x2 - c003417a: 97e2 add a5,a5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34834 + c0034342: 00fbd363 bge s7,a5,c0034348 + c0034346: 27cd addiw a5,a5,19 + c0034348: 078a slli a5,a5,0x2 + c003434a: 97e2 add a5,a5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34842 fmt = short_opcode_info(op).fmt; - c003417c: 0037c703 lbu a4,3(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34833 + c003434c: 0037c703 lbu a4,3(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34841 len = short_opcode_info(op).size; - c0034180: 0007cd83 lbu s11,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34835 + c0034350: 0007cd83 lbu s11,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34843 switch(fmt) { - c0034184: ff67079b addiw a5,a4,-10 - c0034188: 0ff7f793 zext.b a5,a5 - c003418c: fcfcebe3 bltu s9,a5,c0034162 - c0034190: 078a slli a5,a5,0x2 - c0034192: 97da add a5,a5,s6 - c0034194: 439c lw a5,0(a5) - c0034196: 97da add a5,a5,s6 - c0034198: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34857 + c0034354: ff67079b addiw a5,a4,-10 + c0034358: 0ff7f793 zext.b a5,a5 + c003435c: fcfcebe3 bltu s9,a5,c0034332 + c0034360: 078a slli a5,a5,0x2 + c0034362: 97da add a5,a5,s6 + c0034364: 439c lw a5,0(a5) + c0034366: 97da add a5,a5,s6 + c0034368: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34865 put_u32(bc_buf + pos + 1, - c003419a: 001a0793 addi a5,s4,1 - c003419e: 97ce add a5,a5,s3 + c003436a: 001a0793 addi a5,s4,1 + c003436e: 97ce add a5,a5,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00341a0: 0017c703 lbu a4,1(a5) - c00341a4: 0007c503 lbu a0,0(a5) - c00341a8: e03e sd a5,0(sp) - c00341aa: 0722 slli a4,a4,0x8 - c00341ac: 8f49 or a4,a4,a0 - c00341ae: 0027c503 lbu a0,2(a5) - c00341b2: 0542 slli a0,a0,0x10 - c00341b4: 8f49 or a4,a4,a0 - c00341b6: 0037c503 lbu a0,3(a5) - c00341ba: 0562 slli a0,a0,0x18 - c00341bc: 8d59 or a0,a0,a4 + c0034370: 0017c703 lbu a4,1(a5) + c0034374: 0007c503 lbu a0,0(a5) + c0034378: e03e sd a5,0(sp) + c003437a: 0722 slli a4,a4,0x8 + c003437c: 8f49 or a4,a4,a0 + c003437e: 0027c503 lbu a0,2(a5) + c0034382: 0542 slli a0,a0,0x10 + c0034384: 8f49 or a4,a4,a0 + c0034386: 0037c503 lbu a0,3(a5) + c003438a: 0562 slli a0,a0,0x18 + c003438c: 8d59 or a0,a0,a4 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34857 - c00341be: 2501 sext.w a0,a0 - c00341c0: e1dcf0ef jal ra,c0003fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34865 + c003438e: 2501 sext.w a0,a0 + c0034390: c4dcf0ef jal ra,c0003fdc put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c00341c4: 6782 ld a5,0(sp) - c00341c6: 0085571b srliw a4,a0,0x8 - c00341ca: 00a78023 sb a0,0(a5) - c00341ce: 00e780a3 sb a4,1(a5) - c00341d2: 0105571b srliw a4,a0,0x10 - c00341d6: 0185551b srliw a0,a0,0x18 - c00341da: 00e78123 sb a4,2(a5) - c00341de: 00a781a3 sb a0,3(a5) + c0034394: 6782 ld a5,0(sp) + c0034396: 0085571b srliw a4,a0,0x8 + c003439a: 00a78023 sb a0,0(a5) + c003439e: 00e780a3 sb a4,1(a5) + c00343a2: 0105571b srliw a4,a0,0x10 + c00343a6: 0185551b srliw a0,a0,0x18 + c00343aa: 00e78123 sb a4,2(a5) + c00343ae: 00a781a3 sb a0,3(a5) bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34859 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34867 put_u16(bc_buf + pos + 1 + 4, - c00341e2: 005a0793 addi a5,s4,5 - c00341e6: b705 j c0034106 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34864 + c00343b2: 005a0793 addi a5,s4,5 + c00343b6: b705 j c00342d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34872 put_u32(bc_buf + pos + 1, - c00341e8: 001a0793 addi a5,s4,1 - c00341ec: 97ce add a5,a5,s3 + c00343b8: 001a0793 addi a5,s4,1 + c00343bc: 97ce add a5,a5,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00341ee: 0017c683 lbu a3,1(a5) - c00341f2: 0007c503 lbu a0,0(a5) - c00341f6: e43a sd a4,8(sp) - c00341f8: 06a2 slli a3,a3,0x8 - c00341fa: 8ec9 or a3,a3,a0 - c00341fc: 0027c503 lbu a0,2(a5) - c0034200: e03e sd a5,0(sp) - c0034202: 0542 slli a0,a0,0x10 - c0034204: 8ec9 or a3,a3,a0 - c0034206: 0037c503 lbu a0,3(a5) - c003420a: 0562 slli a0,a0,0x18 - c003420c: 8d55 or a0,a0,a3 + c00343be: 0017c683 lbu a3,1(a5) + c00343c2: 0007c503 lbu a0,0(a5) + c00343c6: e43a sd a4,8(sp) + c00343c8: 06a2 slli a3,a3,0x8 + c00343ca: 8ec9 or a3,a3,a0 + c00343cc: 0027c503 lbu a0,2(a5) + c00343d0: e03e sd a5,0(sp) + c00343d2: 0542 slli a0,a0,0x10 + c00343d4: 8ec9 or a3,a3,a0 + c00343d6: 0037c503 lbu a0,3(a5) + c00343da: 0562 slli a0,a0,0x18 + c00343dc: 8d55 or a0,a0,a3 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34864 - c003420e: 2501 sext.w a0,a0 - c0034210: dcdcf0ef jal ra,c0003fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34872 + c00343de: 2501 sext.w a0,a0 + c00343e0: bfdcf0ef jal ra,c0003fdc put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0034214: 6782 ld a5,0(sp) - c0034216: 0085569b srliw a3,a0,0x8 - c003421a: 00a78023 sb a0,0(a5) - c003421e: 00d780a3 sb a3,1(a5) - c0034222: 0105569b srliw a3,a0,0x10 - c0034226: 0185551b srliw a0,a0,0x18 - c003422a: 00d78123 sb a3,2(a5) - c003422e: 00a781a3 sb a0,3(a5) + c00343e4: 6782 ld a5,0(sp) + c00343e6: 0085569b srliw a3,a0,0x8 + c00343ea: 00a78023 sb a0,0(a5) + c00343ee: 00d780a3 sb a3,1(a5) + c00343f2: 0105569b srliw a3,a0,0x10 + c00343f6: 0185551b srliw a0,a0,0x18 + c00343fa: 00d78123 sb a3,2(a5) + c00343fe: 00a781a3 sb a0,3(a5) bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34874 put_u32(bc_buf + pos + 1 + 4, - c0034232: 005a0793 addi a5,s4,5 - c0034236: 97ce add a5,a5,s3 + c0034402: 005a0793 addi a5,s4,5 + c0034406: 97ce add a5,a5,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0034238: 0017c683 lbu a3,1(a5) - c003423c: 0007c503 lbu a0,0(a5) - c0034240: e03e sd a5,0(sp) - c0034242: 06a2 slli a3,a3,0x8 - c0034244: 8ec9 or a3,a3,a0 - c0034246: 0027c503 lbu a0,2(a5) - c003424a: 0542 slli a0,a0,0x10 - c003424c: 8ec9 or a3,a3,a0 - c003424e: 0037c503 lbu a0,3(a5) - c0034252: 0562 slli a0,a0,0x18 - c0034254: 8d55 or a0,a0,a3 + c0034408: 0017c683 lbu a3,1(a5) + c003440c: 0007c503 lbu a0,0(a5) + c0034410: e03e sd a5,0(sp) + c0034412: 06a2 slli a3,a3,0x8 + c0034414: 8ec9 or a3,a3,a0 + c0034416: 0027c503 lbu a0,2(a5) + c003441a: 0542 slli a0,a0,0x10 + c003441c: 8ec9 or a3,a3,a0 + c003441e: 0037c503 lbu a0,3(a5) + c0034422: 0562 slli a0,a0,0x18 + c0034424: 8d55 or a0,a0,a3 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34866 - c0034256: 2501 sext.w a0,a0 - c0034258: d85cf0ef jal ra,c0003fdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34874 + c0034426: 2501 sext.w a0,a0 + c0034428: bb5cf0ef jal ra,c0003fdc put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c003425c: 6782 ld a5,0(sp) - c003425e: 0085569b srliw a3,a0,0x8 + c003442c: 6782 ld a5,0(sp) + c003442e: 0085569b srliw a3,a0,0x8 bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34868 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34876 if (fmt == OP_FMT_atom_label_u16) { - c0034262: 6722 ld a4,8(sp) + c0034432: 6722 ld a4,8(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0034264: 00a78023 sb a0,0(a5) - c0034268: 00d780a3 sb a3,1(a5) - c003426c: 0105569b srliw a3,a0,0x10 - c0034270: 0185551b srliw a0,a0,0x18 - c0034274: 00d78123 sb a3,2(a5) - c0034278: 00a781a3 sb a0,3(a5) + c0034434: 00a78023 sb a0,0(a5) + c0034438: 00d780a3 sb a3,1(a5) + c003443c: 0105569b srliw a3,a0,0x10 + c0034440: 0185551b srliw a0,a0,0x18 + c0034444: 00d78123 sb a3,2(a5) + c0034448: 00a781a3 sb a0,3(a5) bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34869 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34877 put_u16(bc_buf + pos + 1 + 4 + 4, - c003427c: 009a0793 addi a5,s4,9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34868 + c003444c: 009a0793 addi a5,s4,9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34876 if (fmt == OP_FMT_atom_label_u16) { - c0034280: efa711e3 bne a4,s10,c0034162 - c0034284: b549 j c0034106 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34874 + c0034450: efa711e3 bne a4,s10,c0034332 + c0034454: b549 j c00342d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34882 put_u16(bc_buf + pos + 1, - c0034286: 001a0793 addi a5,s4,1 - c003428a: 97ce add a5,a5,s3 + c0034456: 001a0793 addi a5,s4,1 + c003445a: 97ce add a5,a5,s3 put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:195 ((struct packed_u16 *)tab)->v = val; - c003428c: 0007c703 lbu a4,0(a5) - c0034290: 0017c683 lbu a3,1(a5) - c0034294: 00e780a3 sb a4,1(a5) - c0034298: 00d78023 sb a3,0(a5) + c003445c: 0007c703 lbu a4,0(a5) + c0034460: 0017c683 lbu a3,1(a5) + c0034464: 00e780a3 sb a4,1(a5) + c0034468: 00d78023 sb a3,0(a5) bc_byte_swap(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34884 put_u16(bc_buf + pos + 1 + 2, - c003429c: 003a0793 addi a5,s4,3 - c00342a0: b59d j c0034106 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34830 + c003446c: 003a0793 addi a5,s4,3 + c0034470: b59d j c00342d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34838 pos = 0; - c00342a2: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34833 + c0034472: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34841 len = short_opcode_info(op).size; - c00342a4: 0b300b93 li s7,179 - c00342a8: 00033c17 auipc s8,0x33 - c00342ac: 868c0c13 addi s8,s8,-1944 # c0066b10 - c00342b0: 4cc9 li s9,18 - c00342b2: 0002cb17 auipc s6,0x2c - c00342b6: 316b0b13 addi s6,s6,790 # c00605c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34868 + c0034474: 0b300b93 li s7,179 + c0034478: 00033c17 auipc s8,0x33 + c003447c: 8f8c0c13 addi s8,s8,-1800 # c0066d70 + c0034480: 4cc9 li s9,18 + c0034482: 0002cb17 auipc s6,0x2c + c0034486: 3a6b0b13 addi s6,s6,934 # c0060828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34876 if (fmt == OP_FMT_atom_label_u16) { - c00342ba: 4d6d li s10,27 - c00342bc: b56d j c0034166 + c003448a: 4d6d li s10,27 + c003448c: b56d j c0034336 JS_WriteFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35168 if (JS_WriteObjectRec(s, b->cpool[i])) - c00342be: 68bc ld a5,80(s1) - c00342c0: 00491713 slli a4,s2,0x4 - c00342c4: 8522 mv a0,s0 - c00342c6: 97ba add a5,a5,a4 - c00342c8: 638c ld a1,0(a5) - c00342ca: 6790 ld a2,8(a5) - c00342cc: 97dff0ef jal ra,c0033c48 - c00342d0: e00514e3 bnez a0,c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35159 + c003448e: 68bc ld a5,80(s1) + c0034490: 00491713 slli a4,s2,0x4 + c0034494: 8522 mv a0,s0 + c0034496: 97ba add a5,a5,a4 + c0034498: 638c ld a1,0(a5) + c003449a: 6790 ld a2,8(a5) + c003449c: 97dff0ef jal ra,c0033e18 + c00344a0: e00514e3 bnez a0,c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35167 for(i = 0; i < b->cpool_count; i++) { - c00342d4: 2905 addiw s2,s2,1 - c00342d6: 4cbc lw a5,88(s1) - c00342d8: fef943e3 blt s2,a5,c00342be - c00342dc: bad5 j c0033cd0 + c00344a4: 2905 addiw s2,s2,1 + c00344a6: 4cbc lw a5,88(s1) + c00344a8: fef943e3 blt s2,a5,c003448e + c00344ac: bad5 j c0033ea0 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35398 if (!s->allow_bytecode) - c00342de: 03944783 lbu a5,57(s0) - c00342e2: 9c0789e3 beqz a5,c0033cb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35392 + c00344ae: 03944783 lbu a5,57(s0) + c00344b2: 9c0789e3 beqz a5,c0033e84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35400 if (JS_WriteModule(s, obj)) - c00342e6: 64c2 ld s1,16(sp) + c00344b6: 64c2 ld s1,16(sp) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00342e8: 00840913 addi s2,s0,8 - c00342ec: 45bd li a1,15 - c00342ee: 854a mv a0,s2 - c00342f0: 253130ef jal ra,c0047d42 + c00344b8: 00840913 addi s2,s0,8 + c00344bc: 45bd li a1,15 + c00344be: 854a mv a0,s2 + c00344c0: 253130ef jal ra,c0047f12 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35182 bc_put_atom(s, m->module_name); - c00342f4: 40cc lw a1,4(s1) - c00342f6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35177 + c00344c4: 40cc lw a1,4(s1) + c00344c6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35185 for(i = 0; i < m->req_module_entries_count; i++) { - c00342f8: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35174 + c00344c8: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35182 bc_put_atom(s, m->module_name); - c00342fa: 8d7e30ef jal ra,c0017bd0 + c00344ca: 8d7e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00342fe: 508c lw a1,32(s1) - c0034300: 854a mv a0,s2 - c0034302: d23d00ef jal ra,c0005024 + c00344ce: 508c lw a1,32(s1) + c00344d0: 854a mv a0,s2 + c00344d2: b53d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35177 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35185 for(i = 0; i < m->req_module_entries_count; i++) { - c0034306: 509c lw a5,32(s1) - c0034308: 04f9ca63 blt s3,a5,c003435c + c00344d6: 509c lw a5,32(s1) + c00344d8: 04f9ca63 blt s3,a5,c003452c bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c003430c: 588c lw a1,48(s1) - c003430e: 854a mv a0,s2 + c00344dc: 588c lw a1,48(s1) + c00344de: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35191 for(i = 0; i < m->export_entries_count; i++) { - c0034310: 4a01 li s4,0 + c00344e0: 4a01 li s4,0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034312: d13d00ef jal ra,c0005024 + c00344e2: b43d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35191 for(i = 0; i < m->export_entries_count; i++) { - c0034316: 589c lw a5,48(s1) - c0034318: 04fa4c63 blt s4,a5,c0034370 + c00344e6: 589c lw a5,48(s1) + c00344e8: 04fa4c63 blt s4,a5,c0034540 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c003431c: 40ac lw a1,64(s1) - c003431e: 854a mv a0,s2 + c00344ec: 40ac lw a1,64(s1) + c00344ee: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35204 for(i = 0; i < m->star_export_entries_count; i++) { - c0034320: 4981 li s3,0 + c00344f0: 4981 li s3,0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034322: d03d00ef jal ra,c0005024 + c00344f2: b33d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35204 for(i = 0; i < m->star_export_entries_count; i++) { - c0034326: 40bc lw a5,64(s1) - c0034328: 08f9c463 blt s3,a5,c00343b0 + c00344f6: 40bc lw a5,64(s1) + c00344f8: 08f9c463 blt s3,a5,c0034580 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c003432c: 48ac lw a1,80(s1) - c003432e: 854a mv a0,s2 + c00344fc: 48ac lw a1,80(s1) + c00344fe: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35210 for(i = 0; i < m->import_entries_count; i++) { - c0034330: 4a01 li s4,0 + c0034500: 4a01 li s4,0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034332: cf3d00ef jal ra,c0005024 + c0034502: b23d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35211 JSImportEntry *mi = &m->import_entries[i]; - c0034336: 4ab1 li s5,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35202 + c0034506: 4ab1 li s5,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35210 for(i = 0; i < m->import_entries_count; i++) { - c0034338: 48bc lw a5,80(s1) - c003433a: 08fa4563 blt s4,a5,c00343c4 + c0034508: 48bc lw a5,80(s1) + c003450a: 08fa4563 blt s4,a5,c0034594 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c003433e: 0804c583 lbu a1,128(s1) - c0034342: 854a mv a0,s2 - c0034344: 1ff130ef jal ra,c0047d42 + c003450e: 0804c583 lbu a1,128(s1) + c0034512: 854a mv a0,s2 + c0034514: 1ff130ef jal ra,c0047f12 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35211 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35219 if (JS_WriteObjectRec(s, m->func_obj)) - c0034348: 74ac ld a1,104(s1) - c003434a: 78b0 ld a2,112(s1) - c003434c: 8522 mv a0,s0 - c003434e: 8fbff0ef jal ra,c0033c48 - c0034352: 00a03533 snez a0,a0 + c0034518: 74ac ld a1,104(s1) + c003451a: 78b0 ld a2,112(s1) + c003451c: 8522 mv a0,s0 + c003451e: 8fbff0ef jal ra,c0033e18 + c0034522: 00a03533 snez a0,a0 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35466 if (ret) - c0034356: 40a00533 neg a0,a0 - c003435a: ab29 j c0034874 + c0034526: 40a00533 neg a0,a0 + c003452a: ab29 j c0034a44 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35179 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35187 bc_put_atom(s, rme->module_name); - c003435c: 6c9c ld a5,24(s1) - c003435e: 00499713 slli a4,s3,0x4 - c0034362: 8522 mv a0,s0 - c0034364: 97ba add a5,a5,a4 - c0034366: 438c lw a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35177 + c003452c: 6c9c ld a5,24(s1) + c003452e: 00499713 slli a4,s3,0x4 + c0034532: 8522 mv a0,s0 + c0034534: 97ba add a5,a5,a4 + c0034536: 438c lw a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35185 for(i = 0; i < m->req_module_entries_count; i++) { - c0034368: 2985 addiw s3,s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35179 + c0034538: 2985 addiw s3,s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35187 bc_put_atom(s, rme->module_name); - c003436a: 867e30ef jal ra,c0017bd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35177 + c003453a: 867e30ef jal ra,c0017da0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35185 for(i = 0; i < m->req_module_entries_count; i++) { - c003436e: bf61 j c0034306 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35184 + c003453e: bf61 j c00344d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35192 JSExportEntry *me = &m->export_entries[i]; - c0034370: 749c ld a5,40(s1) - c0034372: 005a1993 slli s3,s4,0x5 + c0034540: 749c ld a5,40(s1) + c0034542: 005a1993 slli s3,s4,0x5 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034376: 854a mv a0,s2 + c0034546: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35192 JSExportEntry *me = &m->export_entries[i]; - c0034378: 99be add s3,s3,a5 + c0034548: 99be add s3,s3,a5 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c003437a: 0109c583 lbu a1,16(s3) - c003437e: 1c5130ef jal ra,c0047d42 + c003454a: 0109c583 lbu a1,16(s3) + c003454e: 1c5130ef jal ra,c0047f12 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35194 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c0034382: 0109a783 lw a5,16(s3) + c0034552: 0109a783 lw a5,16(s3) bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034386: 0009a583 lw a1,0(s3) - c003438a: 854a mv a0,s2 + c0034556: 0009a583 lw a1,0(s3) + c003455a: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35194 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c003438c: eb91 bnez a5,c00343a0 + c003455c: eb91 bnez a5,c0034570 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c003438e: c97d00ef jal ra,c0005024 + c003455e: ac7d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35200 bc_put_atom(s, me->export_name); - c0034392: 0189a583 lw a1,24(s3) - c0034396: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35183 + c0034562: 0189a583 lw a1,24(s3) + c0034566: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35191 for(i = 0; i < m->export_entries_count; i++) { - c0034398: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35192 + c0034568: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35200 bc_put_atom(s, me->export_name); - c003439a: 837e30ef jal ra,c0017bd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35183 + c003456a: 837e30ef jal ra,c0017da0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35191 for(i = 0; i < m->export_entries_count; i++) { - c003439e: bfa5 j c0034316 + c003456e: bfa5 j c00344e6 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343a0: c85d00ef jal ra,c0005024 + c0034570: ab5d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35190 - bc_put_atom(s, me->local_name); - c00343a4: 0149a583 lw a1,20(s3) - c00343a8: 8522 mv a0,s0 - c00343aa: 827e30ef jal ra,c0017bd0 - c00343ae: b7d5 j c0034392 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35198 + bc_put_atom(s, me->local_name); + c0034574: 0149a583 lw a1,20(s3) + c0034578: 8522 mv a0,s0 + c003457a: 827e30ef jal ra,c0017da0 + c003457e: b7d5 j c0034562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35206 bc_put_leb128(s, se->req_module_idx); - c00343b0: 7c9c ld a5,56(s1) - c00343b2: 00299713 slli a4,s3,0x2 + c0034580: 7c9c ld a5,56(s1) + c0034582: 00299713 slli a4,s3,0x2 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343b6: 854a mv a0,s2 + c0034586: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35206 bc_put_leb128(s, se->req_module_idx); - c00343b8: 97ba add a5,a5,a4 + c0034588: 97ba add a5,a5,a4 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343ba: 438c lw a1,0(a5) + c003458a: 438c lw a1,0(a5) JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35204 for(i = 0; i < m->star_export_entries_count; i++) { - c00343bc: 2985 addiw s3,s3,1 + c003458c: 2985 addiw s3,s3,1 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343be: c67d00ef jal ra,c0005024 + c003458e: a97d00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35204 for(i = 0; i < m->star_export_entries_count; i++) { - c00343c2: b795 j c0034326 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35203 + c0034592: b795 j c00344f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35211 JSImportEntry *mi = &m->import_entries[i]; - c00343c4: 035a07b3 mul a5,s4,s5 - c00343c8: 0484b983 ld s3,72(s1) + c0034594: 035a07b3 mul a5,s4,s5 + c0034598: 0484b983 ld s3,72(s1) bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343cc: 854a mv a0,s2 + c003459c: 854a mv a0,s2 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35210 for(i = 0; i < m->import_entries_count; i++) { - c00343ce: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35203 + c003459e: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35211 JSImportEntry *mi = &m->import_entries[i]; - c00343d0: 99be add s3,s3,a5 + c00345a0: 99be add s3,s3,a5 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343d2: 0009a583 lw a1,0(s3) - c00343d6: c4fd00ef jal ra,c0005024 + c00345a2: 0009a583 lw a1,0(s3) + c00345a6: a7fd00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35205 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35213 bc_put_atom(s, mi->import_name); - c00343da: 0049a583 lw a1,4(s3) - c00343de: 8522 mv a0,s0 - c00343e0: ff0e30ef jal ra,c0017bd0 + c00345aa: 0049a583 lw a1,4(s3) + c00345ae: 8522 mv a0,s0 + c00345b0: ff0e30ef jal ra,c0017da0 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00343e4: 0089a583 lw a1,8(s3) - c00343e8: 854a mv a0,s2 - c00343ea: c3bd00ef jal ra,c0005024 + c00345b4: 0089a583 lw a1,8(s3) + c00345b8: 854a mv a0,s2 + c00345ba: a6bd00ef jal ra,c0005024 JS_WriteModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35210 for(i = 0; i < m->import_entries_count; i++) { - c00343ee: b7a9 j c0034338 + c00345be: b7a9 j c0034508 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35408 if (s->allow_reference) { - c00343f0: 03b44783 lbu a5,59(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35348 + c00345c0: 03b44783 lbu a5,59(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35356 if (js_check_stack_overflow(s->ctx->rt, 0)) { - c00343f4: 00043a83 ld s5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35397 + c00345c4: 00043a83 ld s5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35405 JSObject *p = JS_VALUE_GET_OBJ(obj); - c00343f8: 6942 ld s2,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35400 + c00345c8: 6942 ld s2,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35408 if (s->allow_reference) { - c00343fa: 89b2 mv s3,a2 - c00343fc: 18078763 beqz a5,c003458a + c00345ca: 89b2 mv s3,a2 + c00345cc: 18078763 beqz a5,c003475a js_object_list_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34632 if (s->object_count == 0) - c0034400: 5c38 lw a4,120(s0) - c0034402: cf1d beqz a4,c0034440 + c00345d0: 5c38 lw a4,120(s0) + c00345d2: cf1d beqz a4,c0034610 js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c0034404: 6685 lui a3,0x1 - c0034406: c5b6869b addiw a3,a3,-933 - c003440a: 02d906bb mulw a3,s2,a3 - c003440e: 08842783 lw a5,136(s0) - c0034412: 37fd addiw a5,a5,-1 - c0034414: 8ff5 and a5,a5,a3 + c00345d4: 6685 lui a3,0x1 + c00345d6: c5b6869b addiw a3,a3,-933 + c00345da: 02d906bb mulw a3,s2,a3 + c00345de: 08842783 lw a5,136(s0) + c00345e2: 37fd addiw a5,a5,-1 + c00345e4: 8ff5 and a5,a5,a3 js_object_list_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34635 p = s->hash_table[h]; - c0034416: 6054 ld a3,128(s0) - c0034418: 02079613 slli a2,a5,0x20 - c003441c: 01e65793 srli a5,a2,0x1e - c0034420: 97b6 add a5,a5,a3 - c0034422: 4384 lw s1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34628 + c00345e6: 6054 ld a3,128(s0) + c00345e8: 02079613 slli a2,a5,0x20 + c00345ec: 01e65793 srli a5,a2,0x1e + c00345f0: 97b6 add a5,a5,a3 + c00345f2: 4384 lw s1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34636 while (p != -1) { - c0034424: 567d li a2,-1 - c0034426: 00c48d63 beq s1,a2,c0034440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34629 + c00345f4: 567d li a2,-1 + c00345f6: 00c48d63 beq s1,a2,c0034610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34637 e = &s->object_tab[p]; - c003442a: 02049693 slli a3,s1,0x20 - c003442e: 01c6d793 srli a5,a3,0x1c - c0034432: 7834 ld a3,112(s0) - c0034434: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34630 + c00345fa: 02049693 slli a3,s1,0x20 + c00345fe: 01c6d793 srli a5,a3,0x1c + c0034602: 7834 ld a3,112(s0) + c0034604: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34638 if (e->obj == obj) - c0034436: 6394 ld a3,0(a5) - c0034438: 0ad91063 bne s2,a3,c00344d8 + c0034606: 6394 ld a3,0(a5) + c0034608: 0ad91063 bne s2,a3,c00346a8 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35410 if (idx >= 0) { - c003443c: 0a04d063 bgez s1,c00344dc + c003460c: 0a04d063 bgez s1,c00346ac js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34606 if (js_resize_array(ctx, (void *)&s->object_tab, - c0034440: 2705 addiw a4,a4,1 - c0034442: 07c40693 addi a3,s0,124 - c0034446: 4641 li a2,16 - c0034448: 07040593 addi a1,s0,112 - c003444c: 8556 mv a0,s5 - c003444e: ac2e30ef jal ra,c0017710 - c0034452: c80513e3 bnez a0,c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34602 + c0034610: 2705 addiw a4,a4,1 + c0034612: 07c40693 addi a3,s0,124 + c0034616: 4641 li a2,16 + c0034618: 07040593 addi a1,s0,112 + c003461c: 8556 mv a0,s5 + c003461e: ac2e30ef jal ra,c00178e0 + c0034622: c80513e3 bnez a0,c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34610 if (unlikely((s->object_count + 1) >= s->hash_size)) { - c0034456: 5c3c lw a5,120(s0) - c0034458: 08842703 lw a4,136(s0) - c003445c: 0017869b addiw a3,a5,1 - c0034460: 08e6f663 bgeu a3,a4,c00344ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34609 + c0034626: 5c3c lw a5,120(s0) + c0034628: 08842703 lw a4,136(s0) + c003462c: 0017869b addiw a3,a5,1 + c0034630: 08e6f663 bgeu a3,a4,c00346bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34617 e = &s->object_tab[s->object_count++]; - c0034464: 5c3c lw a5,120(s0) - c0034466: 7834 ld a3,112(s0) - c0034468: 0017871b addiw a4,a5,1 - c003446c: dc38 sw a4,120(s0) + c0034634: 5c3c lw a5,120(s0) + c0034636: 7834 ld a3,112(s0) + c0034638: 0017871b addiw a4,a5,1 + c003463c: dc38 sw a4,120(s0) js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c003446e: 6705 lui a4,0x1 - c0034470: c5b7071b addiw a4,a4,-933 - c0034474: 02e9073b mulw a4,s2,a4 + c003463e: 6705 lui a4,0x1 + c0034640: c5b7071b addiw a4,a4,-933 + c0034644: 02e9073b mulw a4,s2,a4 js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34609 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34617 e = &s->object_tab[s->object_count++]; - c0034478: 0792 slli a5,a5,0x4 - c003447a: 96be add a3,a3,a5 + c0034648: 0792 slli a5,a5,0x4 + c003464a: 96be add a3,a3,a5 js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c003447c: 08842783 lw a5,136(s0) + c003464c: 08842783 lw a5,136(s0) js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34619 e->obj = obj; - c0034480: 0126b023 sd s2,0(a3) # 1000 <__clzdi2-0xbffff000> + c0034650: 0126b023 sd s2,0(a3) # 1000 <__clzdi2-0xbffff000> js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c0034484: 37fd addiw a5,a5,-1 - c0034486: 8ff9 and a5,a5,a4 + c0034654: 37fd addiw a5,a5,-1 + c0034656: 8ff9 and a5,a5,a4 js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34620 e->hash_next = s->hash_table[h]; - c0034488: 02079713 slli a4,a5,0x20 - c003448c: 01e75793 srli a5,a4,0x1e - c0034490: 6058 ld a4,128(s0) - c0034492: 973e add a4,a4,a5 - c0034494: 4318 lw a4,0(a4) - c0034496: c698 sw a4,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34613 + c0034658: 02079713 slli a4,a5,0x20 + c003465c: 01e75793 srli a5,a4,0x1e + c0034660: 6058 ld a4,128(s0) + c0034662: 973e add a4,a4,a5 + c0034664: 4318 lw a4,0(a4) + c0034666: c698 sw a4,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34621 s->hash_table[h] = s->object_count - 1; - c0034498: 6058 ld a4,128(s0) - c003449a: 97ba add a5,a5,a4 - c003449c: 5c38 lw a4,120(s0) - c003449e: 377d addiw a4,a4,-1 - c00344a0: c398 sw a4,0(a5) + c0034668: 6058 ld a4,128(s0) + c003466a: 97ba add a5,a5,a4 + c003466c: 5c38 lw a4,120(s0) + c003466e: 377d addiw a4,a4,-1 + c0034670: c398 sw a4,0(a5) JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35417 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35425 (discriminator 1) switch(p->class_id) { - c00344a2: 00695703 lhu a4,6(s2) - c00344a6: 47d1 li a5,20 - c00344a8: 0007069b sext.w a3,a4 - c00344ac: 10e7e163 bltu a5,a4,c00345ae - c00344b0: 10070363 beqz a4,c00345b6 - c00344b4: fff7079b addiw a5,a4,-1 - c00344b8: 03079613 slli a2,a5,0x30 - c00344bc: 9241 srli a2,a2,0x30 - c00344be: 46cd li a3,19 - c00344c0: 0ec6eb63 bltu a3,a2,c00345b6 - c00344c4: 0002c697 auipc a3,0x2c - c00344c8: 15068693 addi a3,a3,336 # c0060614 - c00344cc: 00261793 slli a5,a2,0x2 - c00344d0: 97b6 add a5,a5,a3 - c00344d2: 439c lw a5,0(a5) - c00344d4: 97b6 add a5,a5,a3 - c00344d6: 8782 jr a5 + c0034672: 00695703 lhu a4,6(s2) + c0034676: 47d1 li a5,20 + c0034678: 0007069b sext.w a3,a4 + c003467c: 10e7e163 bltu a5,a4,c003477e + c0034680: 10070363 beqz a4,c0034786 + c0034684: fff7079b addiw a5,a4,-1 + c0034688: 03079613 slli a2,a5,0x30 + c003468c: 9241 srli a2,a2,0x30 + c003468e: 46cd li a3,19 + c0034690: 0ec6eb63 bltu a3,a2,c0034786 + c0034694: 0002c697 auipc a3,0x2c + c0034698: 1e068693 addi a3,a3,480 # c0060874 + c003469c: 00261793 slli a5,a2,0x2 + c00346a0: 97b6 add a5,a5,a3 + c00346a2: 439c lw a5,0(a5) + c00346a4: 97b6 add a5,a5,a3 + c00346a6: 8782 jr a5 js_object_list_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34640 p = e->hash_next; - c00344d8: 4784 lw s1,8(a5) - c00344da: b7b1 j c0034426 + c00346a8: 4784 lw s1,8(a5) + c00346aa: b7b1 j c00345f6 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00344dc: 0421 addi s0,s0,8 - c00344de: 45d5 li a1,21 - c00344e0: 8522 mv a0,s0 - c00344e2: 061130ef jal ra,c0047d42 + c00346ac: 0421 addi s0,s0,8 + c00346ae: 45d5 li a1,21 + c00346b0: 8522 mv a0,s0 + c00346b2: 061130ef jal ra,c0047f12 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00344e6: 85a6 mv a1,s1 - c00344e8: 817ff06f j c0033cfe + c00346b6: 85a6 mv a1,s1 + c00346b8: 817ff06f j c0033ece JS_WriteObjectRec(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:87 if (a > b) - c00344ec: 4691 li a3,4 - c00344ee: 0007049b sext.w s1,a4 - c00344f2: 00d77363 bgeu a4,a3,c00344f8 - c00344f6: 4491 li s1,4 + c00346bc: 4691 li a3,4 + c00346be: 0007049b sext.w s1,a4 + c00346c2: 00d77363 bgeu a4,a3,c00346c8 + c00346c6: 4491 li s1,4 js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34604 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34612 while (new_hash_size <= s->object_count) - c00344f8: 2781 sext.w a5,a5 - c00344fa: 0697fc63 bgeu a5,s1,c0034572 + c00346c8: 2781 sext.w a5,a5 + c00346ca: 0697fc63 bgeu a5,s1,c0034742 js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34580 new_hash_table = js_malloc(ctx, sizeof(new_hash_table[0]) * new_hash_size); - c00344fe: 02049793 slli a5,s1,0x20 - c0034502: 01e7d593 srli a1,a5,0x1e - c0034506: 8556 mv a0,s5 - c0034508: f44e00ef jal ra,c0014c4c - c003450c: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34573 + c00346ce: 02049793 slli a5,s1,0x20 + c00346d2: 01e7d593 srli a1,a5,0x1e + c00346d6: 8556 mv a0,s5 + c00346d8: e62e00ef jal ra,c0014d3a + c00346dc: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34581 if (!new_hash_table) - c003450e: bc0505e3 beqz a0,c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34575 + c00346de: bc0505e3 beqz a0,c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34583 js_free(ctx, s->hash_table); - c0034512: 604c ld a1,128(s0) - c0034514: 8556 mv a0,s5 - c0034516: 925d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34579 + c00346e2: 604c ld a1,128(s0) + c00346e4: 8556 mv a0,s5 + c00346e6: 843d20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34587 for(i = 0; i < s->hash_size; i++) { - c003451a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34576 + c00346ea: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34584 s->hash_table = new_hash_table; - c003451c: 09643023 sd s6,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34577 + c00346ec: 09643023 sd s6,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34585 s->hash_size = new_hash_size; - c0034520: 08942423 sw s1,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34580 + c00346f0: 08942423 sw s1,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34588 s->hash_table[i] = -1; - c0034524: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34579 + c00346f4: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34587 for(i = 0; i < s->hash_size; i++) { - c0034526: 08842703 lw a4,136(s0) - c003452a: 04e7e763 bltu a5,a4,c0034578 + c00346f6: 08842703 lw a4,136(s0) + c00346fa: 04e7e763 bltu a5,a4,c0034748 js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c003452e: 6585 lui a1,0x1 + c00346fe: 6585 lui a1,0x1 js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34590 for(i = 0; i < s->object_count; i++) { - c0034530: 4701 li a4,0 + c0034700: 4701 li a4,0 js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c0034532: c5b5859b addiw a1,a1,-933 - c0034536: 08842783 lw a5,136(s0) + c0034702: c5b5859b addiw a1,a1,-933 + c0034706: 08842783 lw a5,136(s0) js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34583 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34591 e = &s->object_tab[i]; - c003453a: 7834 ld a3,112(s0) + c003470a: 7834 ld a3,112(s0) js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c003453c: fff7861b addiw a2,a5,-1 + c003470c: fff7861b addiw a2,a5,-1 js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34582 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34590 for(i = 0; i < s->object_count; i++) { - c0034540: 5c3c lw a5,120(s0) - c0034542: f2f771e3 bgeu a4,a5,c0034464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34583 + c0034710: 5c3c lw a5,120(s0) + c0034712: f2f771e3 bgeu a4,a5,c0034634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34591 e = &s->object_tab[i]; - c0034546: 02071513 slli a0,a4,0x20 - c003454a: 01c55793 srli a5,a0,0x1c - c003454e: 96be add a3,a3,a5 + c0034716: 02071513 slli a0,a4,0x20 + c003471a: 01c55793 srli a5,a0,0x1c + c003471e: 96be add a3,a3,a5 js_object_list_get_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34571 return ((uintptr_t)p * 3163) & (hash_size - 1); - c0034550: 629c ld a5,0(a3) - c0034552: 02b787bb mulw a5,a5,a1 - c0034556: 8ff1 and a5,a5,a2 + c0034720: 629c ld a5,0(a3) + c0034722: 02b787bb mulw a5,a5,a1 + c0034726: 8ff1 and a5,a5,a2 js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34593 e->hash_next = s->hash_table[h]; - c0034558: 02079613 slli a2,a5,0x20 - c003455c: 01e65793 srli a5,a2,0x1e - c0034560: 6050 ld a2,128(s0) - c0034562: 963e add a2,a2,a5 - c0034564: 4210 lw a2,0(a2) - c0034566: c690 sw a2,8(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34586 + c0034728: 02079613 slli a2,a5,0x20 + c003472c: 01e65793 srli a5,a2,0x1e + c0034730: 6050 ld a2,128(s0) + c0034732: 963e add a2,a2,a5 + c0034734: 4210 lw a2,0(a2) + c0034736: c690 sw a2,8(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34594 s->hash_table[h] = i; - c0034568: 6054 ld a3,128(s0) - c003456a: 97b6 add a5,a5,a3 - c003456c: c398 sw a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34582 + c0034738: 6054 ld a3,128(s0) + c003473a: 97b6 add a5,a5,a3 + c003473c: c398 sw a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34590 for(i = 0; i < s->object_count; i++) { - c003456e: 2705 addiw a4,a4,1 - c0034570: b7d9 j c0034536 + c003473e: 2705 addiw a4,a4,1 + c0034740: b7d9 j c0034706 js_object_list_add(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34613 new_hash_size *= 2; - c0034572: 0014949b slliw s1,s1,0x1 - c0034576: b751 j c00344fa + c0034742: 0014949b slliw s1,s1,0x1 + c0034746: b751 j c00346ca js_object_list_resize_hash(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34580 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34588 s->hash_table[i] = -1; - c0034578: 6058 ld a4,128(s0) - c003457a: 02079593 slli a1,a5,0x20 - c003457e: 01e5d613 srli a2,a1,0x1e - c0034582: 9732 add a4,a4,a2 - c0034584: c314 sw a3,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34579 + c0034748: 6058 ld a4,128(s0) + c003474a: 02079593 slli a1,a5,0x20 + c003474e: 01e5d613 srli a2,a1,0x1e + c0034752: 9732 add a4,a4,a2 + c0034754: c314 sw a3,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34587 for(i = 0; i < s->hash_size; i++) { - c0034586: 2785 addiw a5,a5,1 - c0034588: bf79 j c0034526 + c0034756: 2785 addiw a5,a5,1 + c0034758: bf79 j c00346f6 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35411 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35419 if (p->tmp_mark) { - c003458a: 00594783 lbu a5,5(s2) - c003458e: 0407f713 andi a4,a5,64 - c0034592: cb09 beqz a4,c00345a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35412 + c003475a: 00594783 lbu a5,5(s2) + c003475e: 0407f713 andi a4,a5,64 + c0034762: cb09 beqz a4,c0034774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35420 JS_ThrowTypeError(s->ctx, "circular reference"); - c0034594: 8556 mv a0,s5 - c0034596: 0002c597 auipc a1,0x2c - c003459a: f3a58593 addi a1,a1,-198 # c00604d0 - c003459e: e59de0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35413 + c0034764: 8556 mv a0,s5 + c0034766: 0002c597 auipc a1,0x2c + c003476a: fca58593 addi a1,a1,-54 # c0060730 + c003476e: d77de0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35421 goto fail; - c00345a2: be1d j c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35415 + c0034772: be1d j c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35423 p->tmp_mark = 1; - c00345a4: 0407e793 ori a5,a5,64 - c00345a8: 00f902a3 sb a5,5(s2) - c00345ac: bddd j c00344a2 - c00345ae: 02100793 li a5,33 - c00345b2: 2ef68e63 beq a3,a5,c00348ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35448 + c0034774: 0407e793 ori a5,a5,64 + c0034778: 00f902a3 sb a5,5(s2) + c003477c: bddd j c0034672 + c003477e: 02100793 li a5,33 + c0034782: 2ef68e63 beq a3,a5,c0034a7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35456 if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c00345b6: 372d addiw a4,a4,-21 - c00345b8: 1742 slli a4,a4,0x30 - c00345ba: 9341 srli a4,a4,0x30 - c00345bc: 47a9 li a5,10 - c00345be: 2ee7ea63 bltu a5,a4,c00348b2 + c0034786: 372d addiw a4,a4,-21 + c0034788: 1742 slli a4,a4,0x30 + c003478a: 9341 srli a4,a4,0x30 + c003478c: 47a9 li a5,10 + c003478e: 2ee7ea63 bltu a5,a4,c0034a82 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00345c2: 00840493 addi s1,s0,8 - c00345c6: 45c1 li a1,16 - c00345c8: 8526 mv a0,s1 + c0034792: 00840493 addi s1,s0,8 + c0034796: 45c1 li a1,16 + c0034798: 8526 mv a0,s1 JS_WriteTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35303 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35311 JSTypedArray *ta = p->u.typed_array; - c00345ca: 03093983 ld s3,48(s2) + c003479a: 03093983 ld s3,48(s2) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00345ce: 774130ef jal ra,c0047d42 + c003479e: 774130ef jal ra,c0047f12 JS_WriteTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35314 bc_put_u8(s, p->class_id - JS_CLASS_UINT8C_ARRAY); - c00345d2: 00695583 lhu a1,6(s2) + c00347a2: 00695583 lhu a1,6(s2) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00345d6: 8526 mv a0,s1 + c00347a6: 8526 mv a0,s1 JS_WriteTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35306 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35314 bc_put_u8(s, p->class_id - JS_CLASS_UINT8C_ARRAY); - c00345d8: 35ad addiw a1,a1,-21 + c00347a8: 35ad addiw a1,a1,-21 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00345da: 0ff5f593 zext.b a1,a1 - c00345de: 764130ef jal ra,c0047d42 + c00347aa: 0ff5f593 zext.b a1,a1 + c00347ae: 764130ef jal ra,c0047f12 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00345e2: 04092583 lw a1,64(s2) - c00345e6: 8526 mv a0,s1 - c00345e8: a3dd00ef jal ra,c0005024 - c00345ec: 0209a583 lw a1,32(s3) - c00345f0: 8526 mv a0,s1 - c00345f2: a33d00ef jal ra,c0005024 + c00347b2: 04092583 lw a1,64(s2) + c00347b6: 8526 mv a0,s1 + c00347b8: 86dd00ef jal ra,c0005024 + c00347bc: 0209a583 lw a1,32(s3) + c00347c0: 8526 mv a0,s1 + c00347c2: 863d00ef jal ra,c0005024 JS_WriteTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35317 if (JS_WriteObjectRec(s, JS_MKPTR(JS_TAG_OBJECT, ta->buffer))) - c00345f6: 0189b583 ld a1,24(s3) - c00345fa: 57fd li a5,-1 - c00345fc: 567d li a2,-1 - c00345fe: 8522 mv a0,s0 - c0034600: f4be sd a5,104(sp) - c0034602: f0ae sd a1,96(sp) - c0034604: e44ff0ef jal ra,c0033c48 - c0034608: 00594783 lbu a5,5(s2) + c00347c6: 0189b583 ld a1,24(s3) + c00347ca: 57fd li a5,-1 + c00347cc: 567d li a2,-1 + c00347ce: 8522 mv a0,s0 + c00347d0: f4be sd a5,104(sp) + c00347d2: f0ae sd a1,96(sp) + c00347d4: e44ff0ef jal ra,c0033e18 + c00347d8: 00594783 lbu a5,5(s2) JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c003460c: fbf7f793 andi a5,a5,-65 - c0034610: 00f902a3 sb a5,5(s2) + c00347dc: fbf7f793 andi a5,a5,-65 + c00347e0: 00f902a3 sb a5,5(s2) JS_WriteTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35317 if (JS_WriteObjectRec(s, JS_MKPTR(JS_TAG_OBJECT, ta->buffer))) - c0034614: 26050063 beqz a0,c0034874 - c0034618: b4c1 j c00340d8 + c00347e4: 26050063 beqz a0,c0034a44 + c00347e8: b4c1 j c00342a8 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35419 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35427 ret = JS_WriteArray(s, obj); - c003461a: 67c2 ld a5,16(sp) + c00347ea: 67c2 ld a5,16(sp) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c003461c: 00840a13 addi s4,s0,8 - c0034620: f83e sd a5,48(sp) - c0034622: 67e2 ld a5,24(sp) - c0034624: fc3e sd a5,56(sp) + c00347ec: 00840a13 addi s4,s0,8 + c00347f0: f83e sd a5,48(sp) + c00347f2: 67e2 ld a5,24(sp) + c00347f4: fc3e sd a5,56(sp) JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35226 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35234 if (s->allow_bytecode && !p->extensible) { - c0034626: 03944783 lbu a5,57(s0) - c003462a: c78d beqz a5,c0034654 - c003462c: 00594783 lbu a5,5(s2) - c0034630: 8b85 andi a5,a5,1 - c0034632: e38d bnez a5,c0034654 + c00347f6: 03944783 lbu a5,57(s0) + c00347fa: c78d beqz a5,c0034824 + c00347fc: 00594783 lbu a5,5(s2) + c0034800: 8b85 andi a5,a5,1 + c0034802: e38d bnez a5,c0034824 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034634: 45b5 li a1,13 - c0034636: 8552 mv a0,s4 - c0034638: 70a130ef jal ra,c0047d42 + c0034804: 45b5 li a1,13 + c0034806: 8552 mv a0,s4 + c0034808: 70a130ef jal ra,c0047f12 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35230 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35238 is_template = TRUE; - c003463c: 4485 li s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35235 + c003480c: 4485 li s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35243 if (js_get_length32(s->ctx, &len, obj)) - c003463e: 6008 ld a0,0(s0) - c0034640: 864a mv a2,s2 - c0034642: 86ce mv a3,s3 - c0034644: 106c addi a1,sp,44 - c0034646: f84a sd s2,48(sp) - c0034648: fc4e sd s3,56(sp) - c003464a: cd1e70ef jal ra,c001c31a - c003464e: c909 beqz a0,c0034660 + c003480e: 6008 ld a0,0(s0) + c0034810: 864a mv a2,s2 + c0034812: 86ce mv a3,s3 + c0034814: 106c addi a1,sp,44 + c0034816: f84a sd s2,48(sp) + c0034818: fc4e sd s3,56(sp) + c003481a: cd1e70ef jal ra,c001c4ea + c003481e: c909 beqz a0,c0034830 JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35297 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35305 return -1; - c0034650: 54fd li s1,-1 - c0034652: a0ad j c00346bc + c0034820: 54fd li s1,-1 + c0034822: a0ad j c003488c bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034654: 45a5 li a1,9 - c0034656: 8552 mv a0,s4 - c0034658: 6ea130ef jal ra,c0047d42 + c0034824: 45a5 li a1,9 + c0034826: 8552 mv a0,s4 + c0034828: 6ea130ef jal ra,c0047f12 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35241 is_template = FALSE; - c003465c: 4481 li s1,0 - c003465e: b7c5 j c003463e + c003482c: 4481 li s1,0 + c003482e: b7c5 j c003480e bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034660: 55b2 lw a1,44(sp) - c0034662: 8552 mv a0,s4 + c0034830: 55b2 lw a1,44(sp) + c0034832: 8552 mv a0,s4 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35248 if (JS_IsException(val)) - c0034664: 4b19 li s6,6 + c0034834: 4b19 li s6,6 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034666: 9bfd00ef jal ra,c0005024 + c0034836: feed00ef jal ra,c0005024 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35246 for(i = 0; i < len; i++) { - c003466a: 4a01 li s4,0 - c003466c: 57b2 lw a5,44(sp) - c003466e: 06fa6063 bltu s4,a5,c00346ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35247 + c003483a: 4a01 li s4,0 + c003483c: 57b2 lw a5,44(sp) + c003483e: 06fa6063 bltu s4,a5,c003489e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35255 if (is_template) { - c0034672: c4a9 beqz s1,c00346bc + c0034842: c4a9 beqz s1,c003488c JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0034674: 6008 ld a0,0(s0) - c0034676: 874a mv a4,s2 - c0034678: 87ce mv a5,s3 - c003467a: 864e mv a2,s3 - c003467c: 4801 li a6,0 - c003467e: 07100693 li a3,113 - c0034682: 85ca mv a1,s2 - c0034684: e8ca sd s2,80(sp) - c0034686: ecce sd s3,88(sp) - c0034688: 9badd0ef jal ra,c0011842 - c003468c: f0aa sd a0,96(sp) - c003468e: f4ae sd a1,104(sp) - c0034690: e0aa sd a0,64(sp) - c0034692: e4ae sd a1,72(sp) + c0034844: 6008 ld a0,0(s0) + c0034846: 874a mv a4,s2 + c0034848: 87ce mv a5,s3 + c003484a: 864e mv a2,s3 + c003484c: 4801 li a6,0 + c003484e: 07100693 li a3,113 + c0034852: 85ca mv a1,s2 + c0034854: e8ca sd s2,80(sp) + c0034856: ecce sd s3,88(sp) + c0034858: 8d8dd0ef jal ra,c0011930 + c003485c: f0aa sd a0,96(sp) + c003485e: f4ae sd a1,104(sp) + c0034860: e0aa sd a0,64(sp) + c0034862: e4ae sd a1,72(sp) JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35249 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35257 if (JS_IsException(val)) - c0034694: 0005871b sext.w a4,a1 - c0034698: 4799 li a5,6 + c0034864: 0005871b sext.w a4,a1 + c0034868: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003469a: 862e mv a2,a1 + c003486a: 862e mv a2,a1 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35249 - c003469c: faf70ae3 beq a4,a5,c0034650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35251 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35257 + c003486c: faf70ae3 beq a4,a5,c0034820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35259 ret = JS_WriteObjectRec(s, val); - c00346a0: 85aa mv a1,a0 - c00346a2: 8522 mv a0,s0 - c00346a4: da4ff0ef jal ra,c0033c48 - c00346a8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35252 + c0034870: 85aa mv a1,a0 + c0034872: 8522 mv a0,s0 + c0034874: da4ff0ef jal ra,c0033e18 + c0034878: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35260 JS_FreeValue(s->ctx, val); - c00346aa: 6586 ld a1,64(sp) - c00346ac: 6626 ld a2,72(sp) - c00346ae: 6008 ld a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35253 + c003487a: 6586 ld a1,64(sp) + c003487c: 6626 ld a2,72(sp) + c003487e: 6008 ld a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35261 if (ret) - c00346b0: 009034b3 snez s1,s1 - c00346b4: 409004b3 neg s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35252 + c0034880: 009034b3 snez s1,s1 + c0034884: 409004b3 neg s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35260 JS_FreeValue(s->ctx, val); - c00346b8: c80d30ef jal ra,c0007b38 + c0034888: b9ed30ef jal ra,c0007c26 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c00346bc: 00594783 lbu a5,5(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35458 + c003488c: 00594783 lbu a5,5(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35466 if (ret) - c00346c0: 00903533 snez a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 + c0034890: 00903533 snez a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c00346c4: fbf7f793 andi a5,a5,-65 - c00346c8: 00f902a3 sb a5,5(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35458 + c0034894: fbf7f793 andi a5,a5,-65 + c0034898: 00f902a3 sb a5,5(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35466 if (ret) - c00346cc: b169 j c0034356 + c003489c: b169 j c0034526 JS_WriteArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35239 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35247 val = JS_GetPropertyUint32(s->ctx, obj, i); - c00346ce: 6008 ld a0,0(s0) - c00346d0: 864e mv a2,s3 - c00346d2: 86d2 mv a3,s4 - c00346d4: 85ca mv a1,s2 - c00346d6: f84a sd s2,48(sp) - c00346d8: fc4e sd s3,56(sp) - c00346da: ff2dd0ef jal ra,c0011ecc - c00346de: e0aa sd a0,64(sp) - c00346e0: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35240 + c003489e: 6008 ld a0,0(s0) + c00348a0: 864e mv a2,s3 + c00348a2: 86d2 mv a3,s4 + c00348a4: 85ca mv a1,s2 + c00348a6: f84a sd s2,48(sp) + c00348a8: fc4e sd s3,56(sp) + c00348aa: f10dd0ef jal ra,c0011fba + c00348ae: e0aa sd a0,64(sp) + c00348b0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35248 if (JS_IsException(val)) - c00346e2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35239 + c00348b2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35247 val = JS_GetPropertyUint32(s->ctx, obj, i); - c00346e6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35240 + c00348b6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35248 if (JS_IsException(val)) - c00346e8: f76784e3 beq a5,s6,c0034650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35242 + c00348b8: f76784e3 beq a5,s6,c0034820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35250 ret = JS_WriteObjectRec(s, val); - c00346ec: 85aa mv a1,a0 - c00346ee: 8522 mv a0,s0 - c00346f0: d58ff0ef jal ra,c0033c48 - c00346f4: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35243 + c00348bc: 85aa mv a1,a0 + c00348be: 8522 mv a0,s0 + c00348c0: d58ff0ef jal ra,c0033e18 + c00348c4: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35251 JS_FreeValue(s->ctx, val); - c00346f6: 6586 ld a1,64(sp) - c00346f8: 6626 ld a2,72(sp) - c00346fa: 6008 ld a0,0(s0) - c00346fc: c3cd30ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35244 + c00348c6: 6586 ld a1,64(sp) + c00348c8: 6626 ld a2,72(sp) + c00348ca: 6008 ld a0,0(s0) + c00348cc: b5ad30ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35252 if (ret) - c0034700: f40a98e3 bnez s5,c0034650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35238 + c00348d0: f40a98e3 bnez s5,c0034820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35246 for(i = 0; i < len; i++) { - c0034704: 2a05 addiw s4,s4,1 - c0034706: b79d j c003466c + c00348d4: 2a05 addiw s4,s4,1 + c00348d6: b79d j c003483c bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034708: 00840a93 addi s5,s0,8 - c003470c: 45a1 li a1,8 - c003470e: 8556 mv a0,s5 - c0034710: 632130ef jal ra,c0047d42 + c00348d8: 00840a93 addi s5,s0,8 + c00348dc: 45a1 li a1,8 + c00348de: 8556 mv a0,s5 + c00348e0: 632130ef jal ra,c0047f12 JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35280 sh = p->shape; - c0034714: 01893b03 ld s6,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35271 + c00348e4: 01893b03 ld s6,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35279 prop_count = 0; - c0034718: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35273 + c00348e8: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35281 for(pass = 0; pass < 2; pass++) { - c003471a: 4c01 li s8,0 - c003471c: 4b85 li s7,1 + c00348ea: 4c01 li s8,0 + c00348ec: 4b85 li s7,1 get_shape_prop(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4323 return sh->prop; - c003471e: 040b0993 addi s3,s6,64 + c00348ee: 040b0993 addi s3,s6,64 JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35284 for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - c0034722: 4481 li s1,0 - c0034724: 028b2783 lw a5,40(s6) - c0034728: 00f4ec63 bltu s1,a5,c0034740 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35273 + c00348f2: 4481 li s1,0 + c00348f4: 028b2783 lw a5,40(s6) + c00348f8: 00f4ec63 bltu s1,a5,c0034910 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35281 for(pass = 0; pass < 2; pass++) { - c003472c: 017c1463 bne s8,s7,c0034734 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35295 + c00348fc: 017c1463 bne s8,s7,c0034904 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35303 return 0; - c0034730: 4481 li s1,0 - c0034732: b769 j c00346bc + c0034900: 4481 li s1,0 + c0034902: b769 j c003488c bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034734: 85d2 mv a1,s4 - c0034736: 8556 mv a0,s5 - c0034738: 8edd00ef jal ra,c0005024 - c003473c: 4c05 li s8,1 - c003473e: b7c5 j c003471e + c0034904: 85d2 mv a1,s4 + c0034906: 8556 mv a0,s5 + c0034908: f1cd00ef jal ra,c0005024 + c003490c: 4c05 li s8,1 + c003490e: b7c5 j c00348ee JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35285 atom = pr->atom; - c0034740: 0049a583 lw a1,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35278 + c0034910: 0049a583 lw a1,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35286 if (atom != JS_ATOM_NULL && - c0034744: cd9d beqz a1,c0034782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35279 + c0034914: cd9d beqz a1,c0034952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35287 JS_AtomIsString(s->ctx, atom) && - c0034746: 00043c83 ld s9,0(s0) + c0034916: 00043c83 ld s9,0(s0) JS_AtomIsString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2707 return JS_AtomGetKind(ctx, v) == JS_ATOM_KIND_STRING; - c003474a: e02e sd a1,0(sp) - c003474c: 8566 mv a0,s9 - c003474e: f4ed00ef jal ra,c0004e9c - c0034752: 2501 sext.w a0,a0 + c003491a: e02e sd a1,0(sp) + c003491c: 8566 mv a0,s9 + c003491e: d7ed00ef jal ra,c0004e9c + c0034922: 2501 sext.w a0,a0 JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35286 if (atom != JS_ATOM_NULL && - c0034754: e51d bnez a0,c0034782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35280 + c0034924: e51d bnez a0,c0034952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35288 (pr->flags & JS_PROP_ENUMERABLE)) { - c0034756: 0009a783 lw a5,0(s3) - c003475a: 01a7d79b srliw a5,a5,0x1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35279 + c0034926: 0009a783 lw a5,0(s3) + c003492a: 01a7d79b srliw a5,a5,0x1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35287 JS_AtomIsString(s->ctx, atom) && - c003475e: 0047f713 andi a4,a5,4 - c0034762: c305 beqz a4,c0034782 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35281 + c003492e: 0047f713 andi a4,a5,4 + c0034932: c305 beqz a4,c0034952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35289 if (pr->flags & JS_PROP_TMASK) { - c0034764: 0307f793 andi a5,a5,48 - c0034768: 6582 ld a1,0(sp) - c003476a: cb89 beqz a5,c003477c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35282 + c0034934: 0307f793 andi a5,a5,48 + c0034938: 6582 ld a1,0(sp) + c003493a: cb89 beqz a5,c003494c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35290 JS_ThrowTypeError(s->ctx, "only value properties are supported"); - c003476c: 0002c597 auipc a1,0x2c - c0034770: d7c58593 addi a1,a1,-644 # c00604e8 - c0034774: 8566 mv a0,s9 + c003493c: 0002c597 auipc a1,0x2c + c0034940: e0c58593 addi a1,a1,-500 # c0060748 + c0034944: 8566 mv a0,s9 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35460 JS_ThrowTypeError(s->ctx, "unsupported object class"); - c0034776: c81de0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 + c0034946: b9fde0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c003477a: a081 j c00347ba + c003494a: a081 j c003498a JS_WriteObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35293 if (pass == 0) { - c003477c: 000c1663 bnez s8,c0034788 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35286 + c003494c: 000c1663 bnez s8,c0034958 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35294 prop_count++; - c0034780: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35276 + c0034950: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35284 for(i = 0, pr = get_shape_prop(sh); i < sh->prop_count; i++, pr++) { - c0034782: 2485 addiw s1,s1,1 - c0034784: 09a1 addi s3,s3,8 - c0034786: bf79 j c0034724 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35288 + c0034952: 2485 addiw s1,s1,1 + c0034954: 09a1 addi s3,s3,8 + c0034956: bf79 j c00348f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35296 bc_put_atom(s, atom); - c0034788: 8522 mv a0,s0 - c003478a: c46e30ef jal ra,c0017bd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35289 + c0034958: 8522 mv a0,s0 + c003495a: c46e30ef jal ra,c0017da0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35297 if (JS_WriteObjectRec(s, p->prop[i].u.value)) - c003478e: 02093783 ld a5,32(s2) - c0034792: 02049693 slli a3,s1,0x20 - c0034796: 01c6d713 srli a4,a3,0x1c - c003479a: 97ba add a5,a5,a4 - c003479c: 638c ld a1,0(a5) - c003479e: 6790 ld a2,8(a5) - c00347a0: 8522 mv a0,s0 - c00347a2: ca6ff0ef jal ra,c0033c48 - c00347a6: dd71 beqz a0,c0034782 - c00347a8: b565 j c0034650 + c003495e: 02093783 ld a5,32(s2) + c0034962: 02049693 slli a3,s1,0x20 + c0034966: 01c6d713 srli a4,a3,0x1c + c003496a: 97ba add a5,a5,a4 + c003496c: 638c ld a1,0(a5) + c003496e: 6790 ld a2,8(a5) + c0034970: 8522 mv a0,s0 + c0034972: ca6ff0ef jal ra,c0033e18 + c0034976: dd71 beqz a0,c0034952 + c0034978: b565 j c0034820 JS_WriteArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35325 JSArrayBuffer *abuf = p->u.array_buffer; - c00347aa: 03093483 ld s1,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35318 + c003497a: 03093483 ld s1,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35326 if (abuf->detached) { - c00347ae: 0044c783 lbu a5,4(s1) - c00347b2: cb99 beqz a5,c00347c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35319 + c003497e: 0044c783 lbu a5,4(s1) + c0034982: cb99 beqz a5,c0034998 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35327 JS_ThrowTypeErrorDetachedArrayBuffer(s->ctx); - c00347b4: 6008 ld a0,0(s0) - c00347b6: d1cdf0ef jal ra,c0013cd2 + c0034984: 6008 ld a0,0(s0) + c0034986: c3adf0ef jal ra,c0013dc0 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c00347ba: 00594783 lbu a5,5(s2) - c00347be: fbf7f793 andi a5,a5,-65 - c00347c2: 00f902a3 sb a5,5(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35458 + c003498a: 00594783 lbu a5,5(s2) + c003498e: fbf7f793 andi a5,a5,-65 + c0034992: 00f902a3 sb a5,5(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35466 if (ret) - c00347c6: ba09 j c00340d8 + c0034996: ba09 j c00342a8 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00347c8: 0421 addi s0,s0,8 - c00347ca: 45c5 li a1,17 - c00347cc: 8522 mv a0,s0 - c00347ce: 574130ef jal ra,c0047d42 + c0034998: 0421 addi s0,s0,8 + c003499a: 45c5 li a1,17 + c003499c: 8522 mv a0,s0 + c003499e: 574130ef jal ra,c0047f12 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c00347d2: 408c lw a1,0(s1) - c00347d4: 8522 mv a0,s0 - c00347d6: 84fd00ef jal ra,c0005024 + c00349a2: 408c lw a1,0(s1) + c00349a4: 8522 mv a0,s0 + c00349a6: e7ed00ef jal ra,c0005024 JS_WriteArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35332 dbuf_put(&s->dbuf, abuf->data, abuf->byte_length); - c00347da: 4090 lw a2,0(s1) - c00347dc: 648c ld a1,8(s1) - c00347de: 8522 mv a0,s0 - c00347e0: 4d0130ef jal ra,c0047cb0 + c00349aa: 4090 lw a2,0(s1) + c00349ac: 648c ld a1,8(s1) + c00349ae: 8522 mv a0,s0 + c00349b0: 4d0130ef jal ra,c0047e80 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c00347e4: 00594783 lbu a5,5(s2) - c00347e8: fbf7f793 andi a5,a5,-65 - c00347ec: 00f902a3 sb a5,5(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35458 + c00349b4: 00594783 lbu a5,5(s2) + c00349b8: fbf7f793 andi a5,a5,-65 + c00349bc: 00f902a3 sb a5,5(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35466 if (ret) - c00347f0: ce0ff06f j c0033cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35428 + c00349c0: ce0ff06f j c0033ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35436 if (!s->allow_sab) - c00347f4: 03a44783 lbu a5,58(s0) - c00347f8: ca078e63 beqz a5,c0033cb4 + c00349c4: 03a44783 lbu a5,58(s0) + c00349c8: ca078e63 beqz a5,c0033e84 JS_WriteSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35331 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35339 JSArrayBuffer *abuf = p->u.array_buffer; - c00347fc: 03093483 ld s1,48(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35332 + c00349cc: 03093483 ld s1,48(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35340 assert(!abuf->detached); /* SharedArrayBuffer are never detached */ - c0034800: 0044c783 lbu a5,4(s1) - c0034804: c799 beqz a5,c0034812 - c0034806: 65a5 lui a1,0x9 - c0034808: 4601 li a2,0 - c003480a: a0458593 addi a1,a1,-1532 # 8a04 <__clzdi2-0xbfff75fc> - c003480e: e16ff06f j c0033e24 + c00349d0: 0044c783 lbu a5,4(s1) + c00349d4: c799 beqz a5,c00349e2 + c00349d6: 65a5 lui a1,0x9 + c00349d8: 4601 li a2,0 + c00349da: a0c58593 addi a1,a1,-1524 # 8a0c <__clzdi2-0xbfff75f4> + c00349de: e16ff06f j c0033ff4 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034812: 00840993 addi s3,s0,8 - c0034816: 45c9 li a1,18 - c0034818: 854e mv a0,s3 - c003481a: 528130ef jal ra,c0047d42 + c00349e2: 00840993 addi s3,s0,8 + c00349e6: 45c9 li a1,18 + c00349e8: 854e mv a0,s3 + c00349ea: 528130ef jal ra,c0047f12 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c003481e: 408c lw a1,0(s1) - c0034820: 854e mv a0,s3 - c0034822: 803d00ef jal ra,c0005024 + c00349ee: 408c lw a1,0(s1) + c00349f0: 854e mv a0,s3 + c00349f2: e32d00ef jal ra,c0005024 JS_WriteSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35335 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35343 bc_put_u64(s, (uintptr_t)abuf->data); - c0034826: 6488 ld a0,8(s1) + c00349f6: 6488 ld a0,8(s1) bc_put_u64(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34758 if (s->byte_swap) - c0034828: 03844783 lbu a5,56(s0) - c003482c: f0aa sd a0,96(sp) - c003482e: c781 beqz a5,c0034836 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34751 + c00349f8: 03844783 lbu a5,56(s0) + c00349fc: f0aa sd a0,96(sp) + c00349fe: c781 beqz a5,c0034a06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34759 v = bswap64(v); - c0034830: fd4cf0ef jal ra,c0004004 - c0034834: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34752 + c0034a00: e04cf0ef jal ra,c0004004 + c0034a04: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34760 dbuf_put(&s->dbuf, (uint8_t *)&v, sizeof(v)); - c0034836: 4621 li a2,8 - c0034838: 108c addi a1,sp,96 - c003483a: 854e mv a0,s3 - c003483c: 474130ef jal ra,c0047cb0 + c0034a06: 4621 li a2,8 + c0034a08: 108c addi a1,sp,96 + c0034a0a: 854e mv a0,s3 + c0034a0c: 474130ef jal ra,c0047e80 JS_WriteSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35336 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35344 if (js_resize_array(s->ctx, (void **)&s->sab_tab, sizeof(s->sab_tab[0]), - c0034840: 5438 lw a4,104(s0) - c0034842: 6008 ld a0,0(s0) - c0034844: 06c40693 addi a3,s0,108 - c0034848: 2705 addiw a4,a4,1 - c003484a: 4621 li a2,8 - c003484c: 06040593 addi a1,s0,96 - c0034850: ec1e20ef jal ra,c0017710 - c0034854: f13d bnez a0,c00347ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35340 + c0034a10: 5438 lw a4,104(s0) + c0034a12: 6008 ld a0,0(s0) + c0034a14: 06c40693 addi a3,s0,108 + c0034a18: 2705 addiw a4,a4,1 + c0034a1a: 4621 li a2,8 + c0034a1c: 06040593 addi a1,s0,96 + c0034a20: ec1e20ef jal ra,c00178e0 + c0034a24: f13d bnez a0,c003498a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35348 s->sab_tab[s->sab_tab_len++] = abuf->data; - c0034856: 543c lw a5,104(s0) - c0034858: 7038 ld a4,96(s0) - c003485a: 0017869b addiw a3,a5,1 - c003485e: d434 sw a3,104(s0) - c0034860: 6494 ld a3,8(s1) - c0034862: 078e slli a5,a5,0x3 - c0034864: 97ba add a5,a5,a4 - c0034866: e394 sd a3,0(a5) + c0034a26: 543c lw a5,104(s0) + c0034a28: 7038 ld a4,96(s0) + c0034a2a: 0017869b addiw a3,a5,1 + c0034a2e: d434 sw a3,104(s0) + c0034a30: 6494 ld a3,8(s1) + c0034a32: 078e slli a5,a5,0x3 + c0034a34: 97ba add a5,a5,a4 + c0034a36: e394 sd a3,0(a5) JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35465 p->tmp_mark = 0; - c0034868: 00594783 lbu a5,5(s2) - c003486c: fbf7f793 andi a5,a5,-65 - c0034870: 00f902a3 sb a5,5(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35479 -} - c0034874: 60ee ld ra,216(sp) - c0034876: 644e ld s0,208(sp) - c0034878: 64ae ld s1,200(sp) - c003487a: 690e ld s2,192(sp) - c003487c: 79ea ld s3,184(sp) - c003487e: 7a4a ld s4,176(sp) - c0034880: 7aaa ld s5,168(sp) - c0034882: 7b0a ld s6,160(sp) - c0034884: 6bea ld s7,152(sp) - c0034886: 6c4a ld s8,144(sp) - c0034888: 6caa ld s9,136(sp) - c003488a: 6d0a ld s10,128(sp) - c003488c: 7de6 ld s11,120(sp) - c003488e: 612d addi sp,sp,224 - c0034890: 8082 ret + c0034a38: 00594783 lbu a5,5(s2) + c0034a3c: fbf7f793 andi a5,a5,-65 + c0034a40: 00f902a3 sb a5,5(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35487 +} + c0034a44: 60ee ld ra,216(sp) + c0034a46: 644e ld s0,208(sp) + c0034a48: 64ae ld s1,200(sp) + c0034a4a: 690e ld s2,192(sp) + c0034a4c: 79ea ld s3,184(sp) + c0034a4e: 7a4a ld s4,176(sp) + c0034a50: 7aaa ld s5,168(sp) + c0034a52: 7b0a ld s6,160(sp) + c0034a54: 6bea ld s7,152(sp) + c0034a56: 6c4a ld s8,144(sp) + c0034a58: 6caa ld s9,136(sp) + c0034a5a: 6d0a ld s10,128(sp) + c0034a5c: 7de6 ld s11,120(sp) + c0034a5e: 612d addi sp,sp,224 + c0034a60: 8082 ret bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034892: 45cd li a1,19 - c0034894: 00840513 addi a0,s0,8 - c0034898: 4aa130ef jal ra,c0047d42 + c0034a62: 45cd li a1,19 + c0034a64: 00840513 addi a0,s0,8 + c0034a68: 4aa130ef jal ra,c0047f12 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35445 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35453 ret = JS_WriteObjectRec(s, p->u.object_data); - c003489c: 03093583 ld a1,48(s2) - c00348a0: 03893603 ld a2,56(s2) - c00348a4: 8522 mv a0,s0 - c00348a6: ba2ff0ef jal ra,c0033c48 - c00348aa: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35446 + c0034a6c: 03093583 ld a1,48(s2) + c0034a70: 03893603 ld a2,56(s2) + c0034a74: 8522 mv a0,s0 + c0034a76: ba2ff0ef jal ra,c0033e18 + c0034a7a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35454 break; - c00348ac: bd01 j c00346bc + c0034a7c: bd01 j c003488c bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00348ae: 45d1 li a1,20 - c00348b0: b7d5 j c0034894 + c0034a7e: 45d1 li a1,20 + c0034a80: b7d5 j c0034a64 JS_WriteObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35460 JS_ThrowTypeError(s->ctx, "unsupported object class"); - c00348b2: 6008 ld a0,0(s0) - c00348b4: 0002c597 auipc a1,0x2c - c00348b8: c5c58593 addi a1,a1,-932 # c0060510 - c00348bc: bd6d j c0034776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35467 + c0034a82: 6008 ld a0,0(s0) + c0034a84: 0002c597 auipc a1,0x2c + c0034a88: cec58593 addi a1,a1,-788 # c0060770 + c0034a8c: bd6d j c0034946 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35475 if (JS_WriteBigNum(s, obj)) - c00348be: 6942 ld s2,16(sp) + c0034a8e: 6942 ld s2,16(sp) bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c00348c0: 00840993 addi s3,s0,8 - c00348c4: 45a9 li a1,10 - c00348c6: 854e mv a0,s3 - c00348c8: 47a130ef jal ra,c0047d42 + c0034a90: 00840993 addi s3,s0,8 + c0034a94: 45a9 li a1,10 + c0034a96: 854e mv a0,s3 + c0034a98: 47a130ef jal ra,c0047f12 JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34980 if (a->expn == BF_EXP_ZERO) - c00348cc: 01893783 ld a5,24(s2) - c00348d0: 577d li a4,-1 - c00348d2: 03f71693 slli a3,a4,0x3f - c00348d6: 08d78c63 beq a5,a3,c003496e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34974 + c0034a9c: 01893783 ld a5,24(s2) + c0034aa0: 577d li a4,-1 + c0034aa2: 03f71693 slli a3,a4,0x3f + c0034aa6: 08d78c63 beq a5,a3,c0034b3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34982 else if (a->expn == BF_EXP_INF) - c00348da: 56f5 li a3,-3 - c00348dc: 8285 srli a3,a3,0x1 - c00348de: 08d78a63 beq a5,a3,c0034972 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34976 + c0034aaa: 56f5 li a3,-3 + c0034aac: 8285 srli a3,a3,0x1 + c0034aae: 08d78a63 beq a5,a3,c0034b42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34984 else if (a->expn == BF_EXP_NAN) - c00348e2: 8305 srli a4,a4,0x1 - c00348e4: 08e78963 beq a5,a4,c0034976 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34978 + c0034ab2: 8305 srli a4,a4,0x1 + c0034ab4: 08e78963 beq a5,a4,c0034b46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34986 else if (a->expn >= 0) - c00348e8: 0007c363 bltz a5,c00348ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34979 + c0034ab8: 0007c363 bltz a5,c0034abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34987 e = a->expn + 3; - c00348ec: 078d addi a5,a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34982 + c0034abc: 078d addi a5,a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34990 e = (e << 1) | a->sign; - c00348ee: 01092583 lw a1,16(s2) - c00348f2: 0786 slli a5,a5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34983 + c0034abe: 01092583 lw a1,16(s2) + c0034ac2: 0786 slli a5,a5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34991 if (e < INT32_MIN || e > INT32_MAX) { - c00348f4: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34982 + c0034ac4: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34990 e = (e << 1) | a->sign; - c00348f6: 8fcd or a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34983 + c0034ac6: 8fcd or a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34991 if (e < INT32_MIN || e > INT32_MAX) { - c00348f8: 077e slli a4,a4,0x1f - c00348fa: 56fd li a3,-1 - c00348fc: 973e add a4,a4,a5 - c00348fe: 9281 srli a3,a3,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34984 + c0034ac8: 077e slli a4,a4,0x1f + c0034aca: 56fd li a3,-1 + c0034acc: 973e add a4,a4,a5 + c0034ace: 9281 srli a3,a3,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34992 JS_ThrowInternalError(s->ctx, "bignum exponent is too large"); - c0034900: 0002c597 auipc a1,0x2c - c0034904: c3058593 addi a1,a1,-976 # c0060530 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34983 + c0034ad0: 0002c597 auipc a1,0x2c + c0034ad4: cc058593 addi a1,a1,-832 # c0060790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34991 if (e < INT32_MIN || e > INT32_MAX) { - c0034908: 04e6ee63 bltu a3,a4,c0034964 + c0034ad8: 04e6ee63 bltu a3,a4,c0034b34 dbuf_put_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:6485 dbuf_put_leb128(s, (2 * v) ^ -(v >> 31)); - c003490c: 0017959b slliw a1,a5,0x1 - c0034910: 41f7d79b sraiw a5,a5,0x1f - c0034914: 8dbd xor a1,a1,a5 - c0034916: 2581 sext.w a1,a1 - c0034918: 854e mv a0,s3 - c003491a: f0ad00ef jal ra,c0005024 + c0034adc: 0017959b slliw a1,a5,0x1 + c0034ae0: 41f7d79b sraiw a5,a5,0x1f + c0034ae4: 8dbd xor a1,a1,a5 + c0034ae6: 2581 sext.w a1,a1 + c0034ae8: 854e mv a0,s3 + c0034aea: d3ad00ef jal ra,c0005024 JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34990 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34998 if (a->len != 0) { - c003491e: 02093583 ld a1,32(s2) - c0034922: ba058763 beqz a1,c0033cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34993 + c0034aee: 02093583 ld a1,32(s2) + c0034af2: ba058763 beqz a1,c0033ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35001 while (i < a->len && a->tab[i] == 0) - c0034926: 02893683 ld a3,40(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34992 + c0034af6: 02893683 ld a3,40(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35000 i = 0; - c003492a: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34993 + c0034afa: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35001 while (i < a->len && a->tab[i] == 0) - c003492c: 00379713 slli a4,a5,0x3 - c0034930: 9736 add a4,a4,a3 - c0034932: 00073a03 ld s4,0(a4) # 1000 <__clzdi2-0xbffff000> - c0034936: 040a0263 beqz s4,c003497a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34997 + c0034afc: 00379713 slli a4,a5,0x3 + c0034b00: 9736 add a4,a4,a3 + c0034b02: 00073a03 ld s4,0(a4) # 1000 <__clzdi2-0xbffff000> + c0034b06: 040a0263 beqz s4,c0034b4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35005 n1 = sizeof(limb_t); - c003493a: 4aa1 li s5,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34995 + c0034b0a: 4aa1 li s5,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35003 assert(i < a->len); - c003493c: 04b7f263 bgeu a5,a1,c0034980 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34998 + c0034b0c: 04b7f263 bgeu a5,a1,c0034b50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35006 while ((v & 0xff) == 0) { - c0034940: 0ffa7713 zext.b a4,s4 - c0034944: c721 beqz a4,c003498c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35002 + c0034b10: 0ffa7713 zext.b a4,s4 + c0034b14: c721 beqz a4,c0034b5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35010 i++; - c0034946: 00178493 addi s1,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35003 + c0034b16: 00178493 addi s1,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35011 len = (a->len - i) * sizeof(limb_t) + n1; - c003494a: 8d85 sub a1,a1,s1 - c003494c: 058e slli a1,a1,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35004 + c0034b1a: 8d85 sub a1,a1,s1 + c0034b1c: 058e slli a1,a1,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35012 if (len > INT32_MAX) { - c003494e: 800007b7 lui a5,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35003 + c0034b1e: 800007b7 lui a5,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35011 len = (a->len - i) * sizeof(limb_t) + n1; - c0034952: 95d6 add a1,a1,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35004 + c0034b22: 95d6 add a1,a1,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35012 if (len > INT32_MAX) { - c0034954: fff7c793 not a5,a5 - c0034958: 02b7fe63 bgeu a5,a1,c0034994 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35005 + c0034b24: fff7c793 not a5,a5 + c0034b28: 02b7fe63 bgeu a5,a1,c0034b64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35013 JS_ThrowInternalError(s->ctx, "bignum is too large"); - c003495c: 0002c597 auipc a1,0x2c - c0034960: bf458593 addi a1,a1,-1036 # c0060550 - c0034964: 6008 ld a0,0(s0) - c0034966: 81ee00ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35006 + c0034b2c: 0002c597 auipc a1,0x2c + c0034b30: c8458593 addi a1,a1,-892 # c00607b0 + c0034b34: 6008 ld a0,0(s0) + c0034b36: f3ddf0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35014 return -1; - c003496a: f6eff06f j c00340d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34973 + c0034b3a: f6eff06f j c00342a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34981 e = 0; - c003496e: 4781 li a5,0 - c0034970: bfbd j c00348ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34975 + c0034b3e: 4781 li a5,0 + c0034b40: bfbd j c0034abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34983 e = 1; - c0034972: 4785 li a5,1 - c0034974: bfad j c00348ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34977 + c0034b42: 4785 li a5,1 + c0034b44: bfad j c0034abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34985 e = 2; - c0034976: 4789 li a5,2 - c0034978: bf9d j c00348ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34994 + c0034b46: 4789 li a5,2 + c0034b48: bf9d j c0034abe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35002 i++; - c003497a: 0785 addi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34993 + c0034b4a: 0785 addi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35001 while (i < a->len && a->tab[i] == 0) - c003497c: faf598e3 bne a1,a5,c003492c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34995 + c0034b4c: faf598e3 bne a1,a5,c0034afc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35003 assert(i < a->len); - c0034980: 65a5 lui a1,0x9 - c0034982: 4601 li a2,0 - c0034984: 8b358593 addi a1,a1,-1869 # 88b3 <__clzdi2-0xbfff774d> - c0034988: c9cff06f j c0033e24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34999 + c0034b50: 65a5 lui a1,0x9 + c0034b52: 4601 li a2,0 + c0034b54: 8bb58593 addi a1,a1,-1861 # 88bb <__clzdi2-0xbfff7745> + c0034b58: c9cff06f j c0033ff4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35007 n1--; - c003498c: 1afd addi s5,s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35000 + c0034b5c: 1afd addi s5,s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35008 v >>= 8; - c003498e: 008a5a13 srli s4,s4,0x8 - c0034992: b77d j c0034940 + c0034b5e: 008a5a13 srli s4,s4,0x8 + c0034b62: b77d j c0034b10 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034994: 2581 sext.w a1,a1 - c0034996: 854e mv a0,s3 - c0034998: e8cd00ef jal ra,c0005024 + c0034b64: 2581 sext.w a1,a1 + c0034b66: 854e mv a0,s3 + c0034b68: cbcd00ef jal ra,c0005024 JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35010 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35018 for(j = 0; j < n1; j++) { - c003499c: 4401 li s0,0 - c003499e: 028a9463 bne s5,s0,c00349c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35013 + c0034b6c: 4401 li s0,0 + c0034b6e: 028a9463 bne s5,s0,c0034b96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35021 for(; i < a->len; i++) { - c00349a2: 02093783 ld a5,32(s2) - c00349a6: b2f4f563 bgeu s1,a5,c0033cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35014 + c0034b72: 02093783 ld a5,32(s2) + c0034b76: b2f4f563 bgeu s1,a5,c0033ea0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35022 limb_t v = a->tab[i]; - c00349aa: 02893783 ld a5,40(s2) - c00349ae: 00349713 slli a4,s1,0x3 + c0034b7a: 02893783 ld a5,40(s2) + c0034b7e: 00349713 slli a4,s1,0x3 dbuf_put_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:266 return dbuf_put(s, (uint8_t *)&val, 8); - c00349b2: 4621 li a2,8 + c0034b82: 4621 li a2,8 JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35014 - c00349b4: 97ba add a5,a5,a4 - c00349b6: 639c ld a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35022 + c0034b84: 97ba add a5,a5,a4 + c0034b86: 639c ld a5,0(a5) dbuf_put_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:266 - c00349b8: 108c addi a1,sp,96 - c00349ba: 854e mv a0,s3 - c00349bc: f0be sd a5,96(sp) + c0034b88: 108c addi a1,sp,96 + c0034b8a: 854e mv a0,s3 + c0034b8c: f0be sd a5,96(sp) JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35013 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35021 for(; i < a->len; i++) { - c00349be: 0485 addi s1,s1,1 + c0034b8e: 0485 addi s1,s1,1 dbuf_put_u64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:266 - c00349c0: 2f0130ef jal ra,c0047cb0 + c0034b90: 2f0130ef jal ra,c0047e80 JS_WriteBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35013 - c00349c4: bff9 j c00349a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35021 + c0034b94: bff9 j c0034b72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35019 dbuf_putc(&s->dbuf, v >> (j * 8)); - c00349c6: 0034159b slliw a1,s0,0x3 - c00349ca: 00ba55b3 srl a1,s4,a1 - c00349ce: 0ff5f593 zext.b a1,a1 - c00349d2: 854e mv a0,s3 - c00349d4: 36e130ef jal ra,c0047d42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35010 + c0034b96: 0034159b slliw a1,s0,0x3 + c0034b9a: 00ba55b3 srl a1,s4,a1 + c0034b9e: 0ff5f593 zext.b a1,a1 + c0034ba2: 854e mv a0,s3 + c0034ba4: 36e130ef jal ra,c0047f12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35018 for(j = 0; j < n1; j++) { - c00349d8: 0405 addi s0,s0,1 - c00349da: b7d1 j c003499e + c0034ba8: 0405 addi s0,s0,1 + c0034baa: b7d1 j c0034b6e -00000000c00349dc : +00000000c0034bac : JS_WriteObject2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35523 -{ - c00349dc: 716d addi sp,sp,-272 - c00349de: e222 sd s0,256(sp) - c00349e0: f1d2 sd s4,224(sp) - c00349e2: 842a mv s0,a0 - c00349e4: e032 sd a2,0(sp) - c00349e6: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35531 +{ + c0034bac: 716d addi sp,sp,-272 + c0034bae: e222 sd s0,256(sp) + c0034bb0: f1d2 sd s4,224(sp) + c0034bb2: 842a mv s0,a0 + c0034bb4: e032 sd a2,0(sp) + c0034bb6: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35534 memset(s, 0, sizeof(*s)); - c00349e8: 08800613 li a2,136 - c00349ec: 4581 li a1,0 - c00349ee: 00a8 addi a0,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35523 -{ - c00349f0: fda6 sd s1,248(sp) - c00349f2: f9ca sd s2,240(sp) - c00349f4: 84ba mv s1,a4 - c00349f6: f5ce sd s3,232(sp) - c00349f8: e606 sd ra,264(sp) - c00349fa: 89be mv s3,a5 - c00349fc: edd6 sd s5,216(sp) - c00349fe: e9da sd s6,208(sp) - c0034a00: e436 sd a3,8(sp) - c0034a02: 8942 mv s2,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35526 + c0034bb8: 08800613 li a2,136 + c0034bbc: 4581 li a1,0 + c0034bbe: 00a8 addi a0,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35531 +{ + c0034bc0: fda6 sd s1,248(sp) + c0034bc2: f9ca sd s2,240(sp) + c0034bc4: 84ba mv s1,a4 + c0034bc6: f5ce sd s3,232(sp) + c0034bc8: e606 sd ra,264(sp) + c0034bca: 89be mv s3,a5 + c0034bcc: edd6 sd s5,216(sp) + c0034bce: e9da sd s6,208(sp) + c0034bd0: e436 sd a3,8(sp) + c0034bd2: 8942 mv s2,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35534 memset(s, 0, sizeof(*s)); - c0034a04: 66d210ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35529 + c0034bd4: 66d210ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35537 s->byte_swap = ((flags & JS_WRITE_OBJ_BSWAP) != 0); - c0034a08: 4014d79b sraiw a5,s1,0x1 - c0034a0c: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35530 + c0034bd8: 4014d79b sraiw a5,s1,0x1 + c0034bdc: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35538 s->allow_bytecode = ((flags & JS_WRITE_OBJ_BYTECODE) != 0); - c0034a0e: 0014f713 andi a4,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35529 + c0034bde: 0014f713 andi a4,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35537 s->byte_swap = ((flags & JS_WRITE_OBJ_BSWAP) != 0); - c0034a12: 06f10c23 sb a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35531 + c0034be2: 06f10c23 sb a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35539 s->allow_sab = ((flags & JS_WRITE_OBJ_SAB) != 0); - c0034a16: 4024d79b sraiw a5,s1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35532 + c0034be6: 4024d79b sraiw a5,s1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35540 s->allow_reference = ((flags & JS_WRITE_OBJ_REFERENCE) != 0); - c0034a1a: 4034d49b sraiw s1,s1,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35531 + c0034bea: 4034d49b sraiw s1,s1,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35539 s->allow_sab = ((flags & JS_WRITE_OBJ_SAB) != 0); - c0034a1e: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35532 + c0034bee: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35540 s->allow_reference = ((flags & JS_WRITE_OBJ_REFERENCE) != 0); - c0034a20: 8885 andi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35531 + c0034bf0: 8885 andi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35539 s->allow_sab = ((flags & JS_WRITE_OBJ_SAB) != 0); - c0034a22: 06f10d23 sb a5,122(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35527 + c0034bf2: 06f10d23 sb a5,122(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35535 s->ctx = ctx; - c0034a26: e0a2 sd s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35530 + c0034bf6: e0a2 sd s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35538 s->allow_bytecode = ((flags & JS_WRITE_OBJ_BYTECODE) != 0); - c0034a28: 06e10ca3 sb a4,121(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35532 + c0034bf8: 06e10ca3 sb a4,121(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35540 s->allow_reference = ((flags & JS_WRITE_OBJ_REFERENCE) != 0); - c0034a2c: 06910da3 sb s1,123(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35537 + c0034bfc: 06910da3 sb s1,123(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35545 s->first_atom = 1; - c0034a30: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35534 + c0034c00: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35542 if (s->allow_bytecode) - c0034a32: c319 beqz a4,c0034a38 - c0034a34: 0d800793 li a5,216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35538 + c0034c02: c319 beqz a4,c0034c08 + c0034c04: 0d800793 li a5,216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35546 js_dbuf_init(ctx, &s->dbuf); - c0034a38: 00ac addi a1,sp,72 - c0034a3a: 8522 mv a0,s0 - c0034a3c: debe sw a5,124(sp) - c0034a3e: e24d00ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35541 + c0034c08: 00ac addi a1,sp,72 + c0034c0a: 8522 mv a0,s0 + c0034c0c: debe sw a5,124(sp) + c0034c0e: c54d00ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35549 if (JS_WriteObjectRec(s, obj)) - c0034a42: 6582 ld a1,0(sp) - c0034a44: 6622 ld a2,8(sp) - c0034a46: 0088 addi a0,sp,64 + c0034c12: 6582 ld a1,0(sp) + c0034c14: 6622 ld a2,8(sp) + c0034c16: 0088 addi a0,sp,64 js_object_list_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34566 memset(s, 0, sizeof(*s)); - c0034a48: f902 sd zero,176(sp) - c0034a4a: fd02 sd zero,184(sp) - c0034a4c: e182 sd zero,192(sp) - c0034a4e: e582 sd zero,200(sp) + c0034c18: f902 sd zero,176(sp) + c0034c1a: fd02 sd zero,184(sp) + c0034c1c: e182 sd zero,192(sp) + c0034c1e: e582 sd zero,200(sp) JS_WriteObject2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35549 if (JS_WriteObjectRec(s, obj)) - c0034a50: 9f8ff0ef jal ra,c0033c48 - c0034a54: 84aa mv s1,a0 - c0034a56: e921 bnez a0,c0034aa6 + c0034c20: 9f8ff0ef jal ra,c0033e18 + c0034c24: 84aa mv s1,a0 + c0034c26: e921 bnez a0,c0034c76 JS_WriteObjectAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35492 JSRuntime *rt = s->ctx->rt; - c0034a58: 6b06 ld s6,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35489 + c0034c28: 6b06 ld s6,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35497 dbuf1 = s->dbuf; - c0034a5a: 03000613 li a2,48 - c0034a5e: 00ac addi a1,sp,72 - c0034a60: 0808 addi a0,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35484 + c0034c2a: 03000613 li a2,48 + c0034c2e: 00ac addi a1,sp,72 + c0034c30: 0808 addi a0,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35492 JSRuntime *rt = s->ctx->rt; - c0034a62: 018b3a83 ld s5,24(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35489 + c0034c32: 018b3a83 ld s5,24(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35497 dbuf1 = s->dbuf; - c0034a66: 775210ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35490 + c0034c36: 775210ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35498 js_dbuf_init(s->ctx, &s->dbuf); - c0034a6a: 00ac addi a1,sp,72 - c0034a6c: 855a mv a0,s6 - c0034a6e: df4d00ef jal ra,c0005062 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35493 + c0034c3a: 00ac addi a1,sp,72 + c0034c3c: 855a mv a0,s6 + c0034c3e: c24d00ef jal ra,c0005062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35501 if (s->byte_swap) - c0034a72: 07814783 lbu a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35492 + c0034c42: 07814783 lbu a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35500 version = BC_VERSION; - c0034a76: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35493 + c0034c46: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35501 if (s->byte_swap) - c0034a78: c399 beqz a5,c0034a7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35494 + c0034c48: c399 beqz a5,c0034c4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35502 version ^= BC_BE_VERSION; - c0034a7a: 04100593 li a1,65 + c0034c4a: 04100593 li a1,65 bc_put_u8(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34731 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34739 dbuf_putc(&s->dbuf, v); - c0034a7e: 00a8 addi a0,sp,72 - c0034a80: 2c2130ef jal ra,c0047d42 + c0034c4e: 00a8 addi a0,sp,72 + c0034c50: 2c2130ef jal ra,c0047f12 bc_put_leb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34757 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34765 dbuf_put_leb128(&s->dbuf, v); - c0034a84: 45ea lw a1,152(sp) - c0034a86: 00a8 addi a0,sp,72 - c0034a88: d9cd00ef jal ra,c0005024 + c0034c54: 45ea lw a1,152(sp) + c0034c56: 00a8 addi a0,sp,72 + c0034c58: bccd00ef jal ra,c0005024 JS_WriteObjectAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35506 for(i = 0; i < s->idx_to_atom_count; i++) { - c0034a8c: 47ea lw a5,152(sp) - c0034a8e: 04f4cb63 blt s1,a5,c0034ae4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35508 + c0034c5c: 47ea lw a5,152(sp) + c0034c5e: 04f4cb63 blt s1,a5,c0034cb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35516 if (dbuf_realloc(&dbuf1, dbuf1.size + atoms_size)) - c0034a92: 44c6 lw s1,80(sp) - c0034a94: 65e2 ld a1,24(sp) - c0034a96: 0808 addi a0,sp,16 - c0034a98: 95a6 add a1,a1,s1 - c0034a9a: 174130ef jal ra,c0047c0e - c0034a9e: c13d beqz a0,c0034b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35517 + c0034c62: 44c6 lw s1,80(sp) + c0034c64: 65e2 ld a1,24(sp) + c0034c66: 0808 addi a0,sp,16 + c0034c68: 95a6 add a1,a1,s1 + c0034c6a: 174130ef jal ra,c0047dde + c0034c6e: c13d beqz a0,c0034cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35525 dbuf_free(&dbuf1); - c0034aa0: 0808 addi a0,sp,16 - c0034aa2: 364130ef jal ra,c0047e06 + c0034c70: 0808 addi a0,sp,16 + c0034c72: 364130ef jal ra,c0047fd6 js_object_list_end(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34647 js_free(ctx, s->object_tab); - c0034aa6: 75ca ld a1,176(sp) - c0034aa8: 8522 mv a0,s0 - c0034aaa: b90d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34640 + c0034c76: 75ca ld a1,176(sp) + c0034c78: 8522 mv a0,s0 + c0034c7a: aaed20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34648 js_free(ctx, s->hash_table); - c0034aae: 658e ld a1,192(sp) - c0034ab0: 8522 mv a0,s0 - c0034ab2: b88d20ef jal ra,c0006e3a + c0034c7e: 658e ld a1,192(sp) + c0034c80: 8522 mv a0,s0 + c0034c82: aa6d20ef jal ra,c0006f28 JS_WriteObject2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35564 js_free(ctx, s->atom_to_idx); - c0034ab6: 658a ld a1,128(sp) - c0034ab8: 8522 mv a0,s0 - c0034aba: b80d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35557 + c0034c86: 658a ld a1,128(sp) + c0034c88: 8522 mv a0,s0 + c0034c8a: a9ed20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35565 js_free(ctx, s->idx_to_atom); - c0034abe: 65ca ld a1,144(sp) - c0034ac0: 8522 mv a0,s0 - c0034ac2: b78d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35558 + c0034c8e: 65ca ld a1,144(sp) + c0034c90: 8522 mv a0,s0 + c0034c92: a96d20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35566 dbuf_free(&s->dbuf); - c0034ac6: 00a8 addi a0,sp,72 - c0034ac8: 33e130ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35559 + c0034c96: 00a8 addi a0,sp,72 + c0034c98: 33e130ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35567 *psize = 0; - c0034acc: 000a3023 sd zero,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35560 + c0034c9c: 000a3023 sd zero,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35568 if (psab_tab) - c0034ad0: 00098463 beqz s3,c0034ad8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35561 + c0034ca0: 00098463 beqz s3,c0034ca8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35569 *psab_tab = NULL; - c0034ad4: 0009b023 sd zero,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35562 + c0034ca4: 0009b023 sd zero,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35570 if (psab_tab_len) - c0034ad8: 08090b63 beqz s2,c0034b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35563 + c0034ca8: 08090b63 beqz s2,c0034d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35571 *psab_tab_len = 0; - c0034adc: 00093023 sd zero,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35564 + c0034cac: 00093023 sd zero,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35572 return NULL; - c0034ae0: 4901 li s2,0 - c0034ae2: a071 j c0034b6e + c0034cb0: 4901 li s2,0 + c0034cb2: a071 j c0034d3e JS_WriteObjectAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35507 JSAtomStruct *p = rt->atom_array[s->idx_to_atom[i]]; - c0034ae4: 67ca ld a5,144(sp) - c0034ae6: 00249713 slli a4,s1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35500 + c0034cb4: 67ca ld a5,144(sp) + c0034cb6: 00249713 slli a4,s1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35508 JS_WriteString(s, p); - c0034aea: 0088 addi a0,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35499 + c0034cba: 0088 addi a0,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35507 JSAtomStruct *p = rt->atom_array[s->idx_to_atom[i]]; - c0034aec: 97ba add a5,a5,a4 - c0034aee: 0007e703 lwu a4,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c0034af2: 060ab783 ld a5,96(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35498 + c0034cbc: 97ba add a5,a5,a4 + c0034cbe: 0007e703 lwu a4,0(a5) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0034cc2: 060ab783 ld a5,96(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35506 for(i = 0; i < s->idx_to_atom_count; i++) { - c0034af6: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35499 + c0034cc6: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35507 JSAtomStruct *p = rt->atom_array[s->idx_to_atom[i]]; - c0034af8: 070e slli a4,a4,0x3 - c0034afa: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35500 + c0034cc8: 070e slli a4,a4,0x3 + c0034cca: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35508 JS_WriteString(s, p); - c0034afc: 638c ld a1,0(a5) - c0034afe: c6ed10ef jal ra,c0005f6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35498 + c0034ccc: 638c ld a1,0(a5) + c0034cce: b8cd10ef jal ra,c000605a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35506 for(i = 0; i < s->idx_to_atom_count; i++) { - c0034b02: b769 j c0034a8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35510 + c0034cd2: b769 j c0034c5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35518 memmove(dbuf1.buf + atoms_size, dbuf1.buf, dbuf1.size); - c0034b04: 65c2 ld a1,16(sp) - c0034b06: 6662 ld a2,24(sp) - c0034b08: 00958533 add a0,a1,s1 - c0034b0c: 523210ef jal ra,c005682e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35511 + c0034cd4: 65c2 ld a1,16(sp) + c0034cd6: 6662 ld a2,24(sp) + c0034cd8: 00958533 add a0,a1,s1 + c0034cdc: 523210ef jal ra,c00569fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35519 memcpy(dbuf1.buf, s->dbuf.buf, atoms_size); - c0034b10: 65a6 ld a1,72(sp) - c0034b12: 6542 ld a0,16(sp) - c0034b14: 8626 mv a2,s1 - c0034b16: 6c5210ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35512 + c0034ce0: 65a6 ld a1,72(sp) + c0034ce2: 6542 ld a0,16(sp) + c0034ce4: 8626 mv a2,s1 + c0034ce6: 6c5210ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35520 dbuf1.size += atoms_size; - c0034b1a: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35513 + c0034cea: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35521 dbuf_free(&s->dbuf); - c0034b1c: 00a8 addi a0,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35512 + c0034cec: 00a8 addi a0,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35520 dbuf1.size += atoms_size; - c0034b1e: 94be add s1,s1,a5 - c0034b20: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35513 + c0034cee: 94be add s1,s1,a5 + c0034cf0: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35521 dbuf_free(&s->dbuf); - c0034b22: 2e4130ef jal ra,c0047e06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35514 + c0034cf2: 2e4130ef jal ra,c0047fd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35522 s->dbuf = dbuf1; - c0034b26: 03000613 li a2,48 - c0034b2a: 080c addi a1,sp,16 - c0034b2c: 00a8 addi a0,sp,72 - c0034b2e: 6ad210ef jal ra,c00569da + c0034cf6: 03000613 li a2,48 + c0034cfa: 080c addi a1,sp,16 + c0034cfc: 00a8 addi a0,sp,72 + c0034cfe: 6ad210ef jal ra,c0056baa js_object_list_end(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34639 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34647 js_free(ctx, s->object_tab); - c0034b32: 75ca ld a1,176(sp) - c0034b34: 8522 mv a0,s0 - c0034b36: b04d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34640 + c0034d02: 75ca ld a1,176(sp) + c0034d04: 8522 mv a0,s0 + c0034d06: a22d20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34648 js_free(ctx, s->hash_table); - c0034b3a: 658e ld a1,192(sp) - c0034b3c: 8522 mv a0,s0 - c0034b3e: afcd20ef jal ra,c0006e3a + c0034d0a: 658e ld a1,192(sp) + c0034d0c: 8522 mv a0,s0 + c0034d0e: a1ad20ef jal ra,c0006f28 JS_WriteObject2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35554 js_free(ctx, s->atom_to_idx); - c0034b42: 658a ld a1,128(sp) - c0034b44: 8522 mv a0,s0 - c0034b46: af4d20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35547 + c0034d12: 658a ld a1,128(sp) + c0034d14: 8522 mv a0,s0 + c0034d16: a12d20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35555 js_free(ctx, s->idx_to_atom); - c0034b4a: 65ca ld a1,144(sp) - c0034b4c: 8522 mv a0,s0 - c0034b4e: aecd20ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35548 + c0034d1a: 65ca ld a1,144(sp) + c0034d1c: 8522 mv a0,s0 + c0034d1e: a0ad20ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35556 *psize = s->dbuf.size; - c0034b52: 67c6 ld a5,80(sp) - c0034b54: 00fa3023 sd a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35549 + c0034d22: 67c6 ld a5,80(sp) + c0034d24: 00fa3023 sd a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35557 if (psab_tab) - c0034b58: 00098563 beqz s3,c0034b62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35550 + c0034d28: 00098563 beqz s3,c0034d32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35558 *psab_tab = s->sab_tab; - c0034b5c: 778a ld a5,160(sp) - c0034b5e: 00f9b023 sd a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35551 + c0034d2c: 778a ld a5,160(sp) + c0034d2e: 00f9b023 sd a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35559 if (psab_tab_len) - c0034b62: 00090563 beqz s2,c0034b6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35552 + c0034d32: 00090563 beqz s2,c0034d3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35560 *psab_tab_len = s->sab_tab_len; - c0034b66: 57aa lw a5,168(sp) - c0034b68: 00f93023 sd a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35553 + c0034d36: 57aa lw a5,168(sp) + c0034d38: 00f93023 sd a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35561 return s->dbuf.buf; - c0034b6c: 6926 ld s2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35565 -} - c0034b6e: 60b2 ld ra,264(sp) - c0034b70: 6412 ld s0,256(sp) - c0034b72: 74ee ld s1,248(sp) - c0034b74: 79ae ld s3,232(sp) - c0034b76: 7a0e ld s4,224(sp) - c0034b78: 6aee ld s5,216(sp) - c0034b7a: 6b4e ld s6,208(sp) - c0034b7c: 854a mv a0,s2 - c0034b7e: 794e ld s2,240(sp) - c0034b80: 6151 addi sp,sp,272 - c0034b82: 8082 ret - -00000000c0034b84 : + c0034d3c: 6926 ld s2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35573 +} + c0034d3e: 60b2 ld ra,264(sp) + c0034d40: 6412 ld s0,256(sp) + c0034d42: 74ee ld s1,248(sp) + c0034d44: 79ae ld s3,232(sp) + c0034d46: 7a0e ld s4,224(sp) + c0034d48: 6aee ld s5,216(sp) + c0034d4a: 6b4e ld s6,208(sp) + c0034d4c: 854a mv a0,s2 + c0034d4e: 794e ld s2,240(sp) + c0034d50: 6151 addi sp,sp,272 + c0034d52: 8082 ret + +00000000c0034d54 : JS_WriteObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35569 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35577 { - c0034b84: 1141 addi sp,sp,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35570 + c0034d54: 1141 addi sp,sp,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35578 return JS_WriteObject2(ctx, psize, obj, flags, NULL, NULL); - c0034b86: 4801 li a6,0 - c0034b88: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35571 + c0034d56: 4801 li a6,0 + c0034d58: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35579 } - c0034b8a: 0141 addi sp,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35570 + c0034d5a: 0141 addi sp,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35578 return JS_WriteObject2(ctx, psize, obj, flags, NULL, NULL); - c0034b8c: e51ff06f j c00349dc + c0034d5c: e51ff06f j c0034bac -00000000c0034b90 : +00000000c0034d60 : JS_GetOwnPropertyNames2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37522 { - c0034b90: 714d addi sp,sp,-336 - c0034b92: e2a2 sd s0,320(sp) - c0034b94: f252 sd s4,288(sp) - c0034b96: ee56 sd s5,280(sp) - c0034b98: fde6 sd s9,248(sp) - c0034b9a: e686 sd ra,328(sp) - c0034b9c: fe26 sd s1,312(sp) - c0034b9e: fa4a sd s2,304(sp) - c0034ba0: f64e sd s3,296(sp) - c0034ba2: ea5a sd s6,272(sp) - c0034ba4: e65e sd s7,264(sp) - c0034ba6: e262 sd s8,256(sp) - c0034ba8: f9ea sd s10,240(sp) - c0034baa: f5ee sd s11,232(sp) - c0034bac: 842a mv s0,a0 - c0034bae: e82e sd a1,16(sp) - c0034bb0: ec32 sd a2,24(sp) - c0034bb2: 8a36 mv s4,a3 - c0034bb4: 8cba mv s9,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37520 + c0034d60: 714d addi sp,sp,-336 + c0034d62: e2a2 sd s0,320(sp) + c0034d64: f252 sd s4,288(sp) + c0034d66: ee56 sd s5,280(sp) + c0034d68: fde6 sd s9,248(sp) + c0034d6a: e686 sd ra,328(sp) + c0034d6c: fe26 sd s1,312(sp) + c0034d6e: fa4a sd s2,304(sp) + c0034d70: f64e sd s3,296(sp) + c0034d72: ea5a sd s6,272(sp) + c0034d74: e65e sd s7,264(sp) + c0034d76: e262 sd s8,256(sp) + c0034d78: f9ea sd s10,240(sp) + c0034d7a: f5ee sd s11,232(sp) + c0034d7c: 842a mv s0,a0 + c0034d7e: e82e sd a1,16(sp) + c0034d80: ec32 sd a2,24(sp) + c0034d82: 8a36 mv s4,a3 + c0034d84: 8cba mv s9,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37528 r = JS_UNDEFINED; - c0034bb6: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37522 + c0034d86: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37530 obj = JS_ToObject(ctx, obj1); - c0034bb8: a35f30ef jal ra,c00285ec - c0034bbc: fc2a sd a0,56(sp) - c0034bbe: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37523 + c0034d88: a35f30ef jal ra,c00287bc + c0034d8c: fc2a sd a0,56(sp) + c0034d8e: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37531 if (JS_IsException(obj)) - c0034bc0: 0005879b sext.w a5,a1 - c0034bc4: 4a99 li s5,6 - c0034bc6: 03579563 bne a5,s5,c0034bf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37524 + c0034d90: 0005879b sext.w a5,a1 + c0034d94: 4a99 li s5,6 + c0034d96: 03579563 bne a5,s5,c0034dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37532 return JS_EXCEPTION; - c0034bca: f502 sd zero,168(sp) - c0034bcc: f93e sd a5,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37589 (discriminator 1) -} - c0034bce: 60b6 ld ra,328(sp) - c0034bd0: 6416 ld s0,320(sp) - c0034bd2: 752a ld a0,168(sp) - c0034bd4: 75ca ld a1,176(sp) - c0034bd6: 74f2 ld s1,312(sp) - c0034bd8: 7952 ld s2,304(sp) - c0034bda: 79b2 ld s3,296(sp) - c0034bdc: 7a12 ld s4,288(sp) - c0034bde: 6af2 ld s5,280(sp) - c0034be0: 6b52 ld s6,272(sp) - c0034be2: 6bb2 ld s7,264(sp) - c0034be4: 6c12 ld s8,256(sp) - c0034be6: 7cee ld s9,248(sp) - c0034be8: 7d4e ld s10,240(sp) - c0034bea: 7dae ld s11,232(sp) - c0034bec: 6171 addi sp,sp,336 - c0034bee: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37526 + c0034d9a: f502 sd zero,168(sp) + c0034d9c: f93e sd a5,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37597 (discriminator 1) +} + c0034d9e: 60b6 ld ra,328(sp) + c0034da0: 6416 ld s0,320(sp) + c0034da2: 752a ld a0,168(sp) + c0034da4: 75ca ld a1,176(sp) + c0034da6: 74f2 ld s1,312(sp) + c0034da8: 7952 ld s2,304(sp) + c0034daa: 79b2 ld s3,296(sp) + c0034dac: 7a12 ld s4,288(sp) + c0034dae: 6af2 ld s5,280(sp) + c0034db0: 6b52 ld s6,272(sp) + c0034db2: 6bb2 ld s7,264(sp) + c0034db4: 6c12 ld s8,256(sp) + c0034db6: 7cee ld s9,248(sp) + c0034db8: 7d4e ld s10,240(sp) + c0034dba: 7dae ld s11,232(sp) + c0034dbc: 6171 addi sp,sp,336 + c0034dbe: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37534 if (JS_GetOwnPropertyNamesInternal(ctx, &atoms, &len, p, flags & ~JS_GPN_ENUM_ONLY)) - c0034bf0: 86aa mv a3,a0 - c0034bf2: 84aa mv s1,a0 - c0034bf4: 892e mv s2,a1 - c0034bf6: fefa7713 andi a4,s4,-17 - c0034bfa: 1070 addi a2,sp,44 - c0034bfc: 180c addi a1,sp,48 - c0034bfe: 8522 mv a0,s0 - c0034c00: 9abfb0ef jal ra,c00305aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37520 + c0034dc0: 86aa mv a3,a0 + c0034dc2: 84aa mv s1,a0 + c0034dc4: 892e mv s2,a1 + c0034dc6: fefa7713 andi a4,s4,-17 + c0034dca: 1070 addi a2,sp,44 + c0034dcc: 180c addi a1,sp,48 + c0034dce: 8522 mv a0,s0 + c0034dd0: 9abfb0ef jal ra,c003077a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37528 r = JS_UNDEFINED; - c0034c04: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37526 + c0034dd4: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37534 if (JS_GetOwnPropertyNamesInternal(ctx, &atoms, &len, p, flags & ~JS_GPN_ENUM_ONLY)) - c0034c06: e14d bnez a0,c0034ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37528 + c0034dd6: e14d bnez a0,c0034e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37536 r = JS_NewArray(ctx); - c0034c08: 8522 mv a0,s0 - c0034c0a: bb4e20ef jal ra,c0016fbe - c0034c0e: e4aa sd a0,72(sp) - c0034c10: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37529 + c0034dd8: 8522 mv a0,s0 + c0034dda: bb4e20ef jal ra,c001718e + c0034dde: e4aa sd a0,72(sp) + c0034de0: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37537 if (JS_IsException(r)) - c0034c12: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37528 + c0034de2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37536 r = JS_NewArray(ctx); - c0034c16: 89ae mv s3,a1 - c0034c18: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37529 + c0034de6: 89ae mv s3,a1 + c0034de8: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37537 if (JS_IsException(r)) - c0034c1a: 09578763 beq a5,s5,c0034ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37533 + c0034dea: 09578763 beq a5,s5,c0034e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37541 if (flags & JS_GPN_ENUM_ONLY) { - c0034c1e: 010a7793 andi a5,s4,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37531 + c0034dee: 010a7793 andi a5,s4,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37539 for(j = i = 0; i < len; i++) { - c0034c22: 4c01 li s8,0 - c0034c24: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37533 + c0034df2: 4c01 li s8,0 + c0034df4: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37541 if (flags & JS_GPN_ENUM_ONLY) { - c0034c26: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37556 + c0034df6: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37564 if (JS_IsException(val)) - c0034c28: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37547 + c0034df8: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37555 switch(kind) { - c0034c2a: 4d89 li s11,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37531 (discriminator 1) + c0034dfa: 4d89 li s11,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37539 (discriminator 1) for(j = i = 0; i < len; i++) { - c0034c2c: 5732 lw a4,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37532 (discriminator 1) + c0034dfc: 5732 lw a4,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37540 (discriminator 1) JSAtom atom = atoms[i].atom; - c0034c2e: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37531 (discriminator 1) + c0034dfe: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37539 (discriminator 1) for(j = i = 0; i < len; i++) { - c0034c30: 02ebe063 bltu s7,a4,c0034c50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37586 + c0034e00: 02ebe063 bltu s7,a4,c0034e20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37594 js_free_prop_enum(ctx, atoms, len); - c0034c34: 5632 lw a2,44(sp) - c0034c36: 75c2 ld a1,48(sp) - c0034c38: 8522 mv a0,s0 - c0034c3a: 8e3d20ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37587 + c0034e04: 5632 lw a2,44(sp) + c0034e06: 75c2 ld a1,48(sp) + c0034e08: 8522 mv a0,s0 + c0034e0a: 801d20ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37595 JS_FreeValue(ctx, obj); - c0034c3e: 75e2 ld a1,56(sp) - c0034c40: 6606 ld a2,64(sp) - c0034c42: 8522 mv a0,s0 - c0034c44: ef5d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37588 + c0034e0e: 75e2 ld a1,56(sp) + c0034e10: 6606 ld a2,64(sp) + c0034e12: 8522 mv a0,s0 + c0034e14: e13d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37596 return r; - c0034c48: 67a6 ld a5,72(sp) - c0034c4a: f95a sd s6,176(sp) - c0034c4c: f53e sd a5,168(sp) - c0034c4e: b741 j c0034bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37532 + c0034e18: 67a6 ld a5,72(sp) + c0034e1a: f95a sd s6,176(sp) + c0034e1c: f53e sd a5,168(sp) + c0034e1e: b741 j c0034d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37540 JSAtom atom = atoms[i].atom; - c0034c50: 020b9693 slli a3,s7,0x20 - c0034c54: 01d6d713 srli a4,a3,0x1d - c0034c58: 97ba add a5,a5,a4 - c0034c5a: 0047aa83 lw s5,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37533 + c0034e20: 020b9693 slli a3,s7,0x20 + c0034e24: 01d6d713 srli a4,a3,0x1d + c0034e28: 97ba add a5,a5,a4 + c0034e2a: 0047aa83 lw s5,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37541 if (flags & JS_GPN_ENUM_ONLY) { - c0034c5e: 67a2 ld a5,8(sp) - c0034c60: c78d beqz a5,c0034c8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37538 + c0034e2e: 67a2 ld a5,8(sp) + c0034e30: c78d beqz a5,c0034e5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37546 res = JS_GetOwnPropertyInternal(ctx, &desc, p, atom); - c0034c62: 86d6 mv a3,s5 - c0034c64: 8626 mv a2,s1 - c0034c66: 112c addi a1,sp,168 - c0034c68: 8522 mv a0,s0 - c0034c6a: a9add0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37539 + c0034e32: 86d6 mv a3,s5 + c0034e34: 8626 mv a2,s1 + c0034e36: 112c addi a1,sp,168 + c0034e38: 8522 mv a0,s0 + c0034e3a: 9b8dd0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37547 if (res < 0) - c0034c6e: 02054d63 bltz a0,c0034ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37541 + c0034e3e: 02054d63 bltz a0,c0034e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37549 if (!res) - c0034c72: c901 beqz a0,c0034c82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37543 + c0034e42: c901 beqz a0,c0034e52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37551 js_free_desc(ctx, &desc); - c0034c74: 112c addi a1,sp,168 - c0034c76: 8522 mv a0,s0 - c0034c78: 9bcd30ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37544 + c0034e44: 112c addi a1,sp,168 + c0034e46: 8522 mv a0,s0 + c0034e48: 8dad30ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37552 if (!(desc.flags & JS_PROP_ENUMERABLE)) - c0034c7c: 57aa lw a5,168(sp) - c0034c7e: 8b91 andi a5,a5,4 - c0034c80: e789 bnez a5,c0034c8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37542 + c0034e4c: 57aa lw a5,168(sp) + c0034e4e: 8b91 andi a5,a5,4 + c0034e50: e789 bnez a5,c0034e5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37550 continue; - c0034c82: 8ae2 mv s5,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37531 (discriminator 2) + c0034e52: 8ae2 mv s5,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37539 (discriminator 2) for(j = i = 0; i < len; i++) { - c0034c84: 2b85 addiw s7,s7,1 - c0034c86: 8c56 mv s8,s5 - c0034c88: b755 j c0034c2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37547 + c0034e54: 2b85 addiw s7,s7,1 + c0034e56: 8c56 mv s8,s5 + c0034e58: b755 j c0034dfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37555 switch(kind) { - c0034c8a: 4785 li a5,1 - c0034c8c: 02fc8663 beq s9,a5,c0034cb8 - c0034c90: 05bc8463 beq s9,s11,c0034cd8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37550 + c0034e5a: 4785 li a5,1 + c0034e5c: 02fc8663 beq s9,a5,c0034e88 + c0034e60: 05bc8463 beq s9,s11,c0034ea8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37558 val = JS_AtomToValue(ctx, atom); - c0034c94: 85d6 mv a1,s5 - c0034c96: 8522 mv a0,s0 - c0034c98: e9be40ef jal ra,c0019b32 - c0034c9c: ecaa sd a0,88(sp) - c0034c9e: 8d2e mv s10,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37556 + c0034e64: 85d6 mv a1,s5 + c0034e66: 8522 mv a0,s0 + c0034e68: e9be40ef jal ra,c0019d02 + c0034e6c: ecaa sd a0,88(sp) + c0034e6e: 8d2e mv s10,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37564 if (JS_IsException(val)) - c0034ca0: 000d079b sext.w a5,s10 - c0034ca4: 0b479763 bne a5,s4,c0034d52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37583 + c0034e70: 000d079b sext.w a5,s10 + c0034e74: 0b479763 bne a5,s4,c0034f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37591 JS_FreeValue(ctx, r); - c0034ca8: 65a6 ld a1,72(sp) - c0034caa: 865a mv a2,s6 - c0034cac: 8522 mv a0,s0 - c0034cae: e8bd20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37584 + c0034e78: 65a6 ld a1,72(sp) + c0034e7a: 865a mv a2,s6 + c0034e7c: 8522 mv a0,s0 + c0034e7e: da9d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37592 r = JS_EXCEPTION; - c0034cb2: 4b19 li s6,6 - c0034cb4: e482 sd zero,72(sp) - c0034cb6: bfbd j c0034c34 + c0034e82: 4b19 li s6,6 + c0034e84: e482 sd zero,72(sp) + c0034e86: bfbd j c0034e04 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0034cb8: 4801 li a6,0 - c0034cba: 8726 mv a4,s1 - c0034cbc: 87ca mv a5,s2 - c0034cbe: 86d6 mv a3,s5 - c0034cc0: 85a6 mv a1,s1 - c0034cc2: 864a mv a2,s2 - c0034cc4: 8522 mv a0,s0 - c0034cc6: f526 sd s1,168(sp) - c0034cc8: f94a sd s2,176(sp) - c0034cca: b79dc0ef jal ra,c0011842 - c0034cce: e52a sd a0,136(sp) - c0034cd0: e92e sd a1,144(sp) - c0034cd2: 8d2e mv s10,a1 - c0034cd4: ecaa sd a0,88(sp) - c0034cd6: b7e9 j c0034ca0 + c0034e88: 4801 li a6,0 + c0034e8a: 8726 mv a4,s1 + c0034e8c: 87ca mv a5,s2 + c0034e8e: 86d6 mv a3,s5 + c0034e90: 85a6 mv a1,s1 + c0034e92: 864a mv a2,s2 + c0034e94: 8522 mv a0,s0 + c0034e96: f526 sd s1,168(sp) + c0034e98: f94a sd s2,176(sp) + c0034e9a: a97dc0ef jal ra,c0011930 + c0034e9e: e52a sd a0,136(sp) + c0034ea0: e92e sd a1,144(sp) + c0034ea2: 8d2e mv s10,a1 + c0034ea4: ecaa sd a0,88(sp) + c0034ea6: b7e9 j c0034e70 JS_GetOwnPropertyNames2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37568 val = JS_NewArray(ctx); - c0034cd8: 8522 mv a0,s0 - c0034cda: ae4e20ef jal ra,c0016fbe - c0034cde: ecaa sd a0,88(sp) - c0034ce0: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37561 + c0034ea8: 8522 mv a0,s0 + c0034eaa: ae4e20ef jal ra,c001718e + c0034eae: ecaa sd a0,88(sp) + c0034eb0: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37569 if (JS_IsException(val)) - c0034ce2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37560 + c0034eb2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37568 val = JS_NewArray(ctx); - c0034ce6: 8d2e mv s10,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37561 + c0034eb6: 8d2e mv s10,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37569 if (JS_IsException(val)) - c0034ce8: fd4780e3 beq a5,s4,c0034ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37563 + c0034eb8: fd4780e3 beq a5,s4,c0034e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37571 key = JS_AtomToValue(ctx, atom); - c0034cec: 85d6 mv a1,s5 - c0034cee: 8522 mv a0,s0 - c0034cf0: e43e40ef jal ra,c0019b32 - c0034cf4: f4aa sd a0,104(sp) - c0034cf6: f8ae sd a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37564 + c0034ebc: 85d6 mv a1,s5 + c0034ebe: 8522 mv a0,s0 + c0034ec0: e43e40ef jal ra,c0019d02 + c0034ec4: f4aa sd a0,104(sp) + c0034ec6: f8ae sd a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37572 if (JS_IsException(key)) - c0034cf8: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37563 + c0034ec8: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37571 key = JS_AtomToValue(ctx, atom); - c0034cfc: 872a mv a4,a0 - c0034cfe: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37564 + c0034ecc: 872a mv a4,a0 + c0034ece: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37572 if (JS_IsException(key)) - c0034d00: 07468b63 beq a3,s4,c0034d76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37566 + c0034ed0: 07468b63 beq a3,s4,c0034f46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37574 if (JS_CreateDataPropertyUint32(ctx, val, 0, key, JS_PROP_THROW) < 0) - c0034d04: 65e6 ld a1,88(sp) - c0034d06: 7606 ld a2,96(sp) - c0034d08: 6811 lui a6,0x4 - c0034d0a: 4681 li a3,0 - c0034d0c: 8522 mv a0,s0 - c0034d0e: fd8f40ef jal ra,c00294e6 - c0034d12: 06054263 bltz a0,c0034d76 + c0034ed4: 65e6 ld a1,88(sp) + c0034ed6: 7606 ld a2,96(sp) + c0034ed8: 6811 lui a6,0x4 + c0034eda: 4681 li a3,0 + c0034edc: 8522 mv a0,s0 + c0034ede: fd8f40ef jal ra,c00296b6 + c0034ee2: 06054263 bltz a0,c0034f46 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0034d16: 8726 mv a4,s1 - c0034d18: 87ca mv a5,s2 - c0034d1a: 86d6 mv a3,s5 - c0034d1c: 4801 li a6,0 - c0034d1e: 85a6 mv a1,s1 - c0034d20: 864a mv a2,s2 - c0034d22: 8522 mv a0,s0 - c0034d24: f526 sd s1,168(sp) - c0034d26: f94a sd s2,176(sp) - c0034d28: b1bdc0ef jal ra,c0011842 - c0034d2c: ed2a sd a0,152(sp) - c0034d2e: f12e sd a1,160(sp) - c0034d30: fcaa sd a0,120(sp) - c0034d32: e12e sd a1,128(sp) + c0034ee6: 8726 mv a4,s1 + c0034ee8: 87ca mv a5,s2 + c0034eea: 86d6 mv a3,s5 + c0034eec: 4801 li a6,0 + c0034eee: 85a6 mv a1,s1 + c0034ef0: 864a mv a2,s2 + c0034ef2: 8522 mv a0,s0 + c0034ef4: f526 sd s1,168(sp) + c0034ef6: f94a sd s2,176(sp) + c0034ef8: a39dc0ef jal ra,c0011930 + c0034efc: ed2a sd a0,152(sp) + c0034efe: f12e sd a1,160(sp) + c0034f00: fcaa sd a0,120(sp) + c0034f02: e12e sd a1,128(sp) JS_GetOwnPropertyNames2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37569 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37577 if (JS_IsException(value)) - c0034d34: 0005869b sext.w a3,a1 + c0034f04: 0005869b sext.w a3,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0034d38: 872a mv a4,a0 - c0034d3a: 87ae mv a5,a1 + c0034f08: 872a mv a4,a0 + c0034f0a: 87ae mv a5,a1 JS_GetOwnPropertyNames2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37569 - c0034d3c: 03468d63 beq a3,s4,c0034d76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37571 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37577 + c0034f0c: 03468d63 beq a3,s4,c0034f46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37579 if (JS_CreateDataPropertyUint32(ctx, val, 1, value, JS_PROP_THROW) < 0) - c0034d40: 65e6 ld a1,88(sp) - c0034d42: 7606 ld a2,96(sp) - c0034d44: 6811 lui a6,0x4 - c0034d46: 4685 li a3,1 - c0034d48: 8522 mv a0,s0 - c0034d4a: f9cf40ef jal ra,c00294e6 - c0034d4e: 02054463 bltz a0,c0034d76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37575 + c0034f10: 65e6 ld a1,88(sp) + c0034f12: 7606 ld a2,96(sp) + c0034f14: 6811 lui a6,0x4 + c0034f16: 4685 li a3,1 + c0034f18: 8522 mv a0,s0 + c0034f1a: f9cf40ef jal ra,c00296b6 + c0034f1e: 02054463 bltz a0,c0034f46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37583 if (JS_CreateDataPropertyUint32(ctx, r, j++, val, 0) < 0) - c0034d52: 6766 ld a4,88(sp) - c0034d54: 65a6 ld a1,72(sp) - c0034d56: 020c1693 slli a3,s8,0x20 - c0034d5a: 4801 li a6,0 - c0034d5c: 87ea mv a5,s10 - c0034d5e: 9281 srli a3,a3,0x20 - c0034d60: 864e mv a2,s3 - c0034d62: 8522 mv a0,s0 - c0034d64: 001c0a9b addiw s5,s8,1 - c0034d68: e8ce sd s3,80(sp) - c0034d6a: f0ea sd s10,96(sp) - c0034d6c: f7af40ef jal ra,c00294e6 - c0034d70: f0055ae3 bgez a0,c0034c84 - c0034d74: bf15 j c0034ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37581 + c0034f22: 6766 ld a4,88(sp) + c0034f24: 65a6 ld a1,72(sp) + c0034f26: 020c1693 slli a3,s8,0x20 + c0034f2a: 4801 li a6,0 + c0034f2c: 87ea mv a5,s10 + c0034f2e: 9281 srli a3,a3,0x20 + c0034f30: 864e mv a2,s3 + c0034f32: 8522 mv a0,s0 + c0034f34: 001c0a9b addiw s5,s8,1 + c0034f38: e8ce sd s3,80(sp) + c0034f3a: f0ea sd s10,96(sp) + c0034f3c: f7af40ef jal ra,c00296b6 + c0034f40: f0055ae3 bgez a0,c0034e54 + c0034f44: bf15 j c0034e78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37589 JS_FreeValue(ctx, val); - c0034d76: 65e6 ld a1,88(sp) - c0034d78: 7606 ld a2,96(sp) - c0034d7a: 8522 mv a0,s0 - c0034d7c: dbdd20ef jal ra,c0007b38 - c0034d80: b725 j c0034ca8 + c0034f46: 65e6 ld a1,88(sp) + c0034f48: 7606 ld a2,96(sp) + c0034f4a: 8522 mv a0,s0 + c0034f4c: cdbd20ef jal ra,c0007c26 + c0034f50: b725 j c0034e78 -00000000c0034d82 : +00000000c0034f52 : js_object_keys(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37607 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37615 { - c0034d82: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 + c0034f52: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37616 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034d84: 620c ld a1,0(a2) - c0034d86: 6610 ld a2,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37607 + c0034f54: 620c ld a1,0(a2) + c0034f56: 6610 ld a2,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37615 { - c0034d88: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 + c0034f58: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37616 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034d8a: 873e mv a4,a5 - c0034d8c: 46c5 li a3,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37610 + c0034f5a: 873e mv a4,a5 + c0034f5c: 46c5 li a3,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37618 } - c0034d8e: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 + c0034f5e: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37616 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034d90: e01ff06f j c0034b90 + c0034f60: e01ff06f j c0034d60 -00000000c0034d94 : +00000000c0034f64 : js_reflect_ownKeys(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45773 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45781 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) - c0034d94: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45772 + c0034f64: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45780 { - c0034d96: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45773 + c0034f66: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45781 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) - c0034d98: 577d li a4,-1 - c0034d9a: 0006069b sext.w a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45772 + c0034f68: 577d li a4,-1 + c0034f6a: 0006069b sext.w a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45780 { - c0034d9e: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45773 + c0034f6e: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45781 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) - c0034da0: 00e68563 beq a3,a4,c0034daa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45778 + c0034f70: 00e68563 beq a3,a4,c0034f7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45786 } - c0034da4: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45774 + c0034f74: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45782 return JS_ThrowTypeErrorNotAnObject(ctx); - c0034da6: bd3de06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45775 + c0034f76: af1de06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45783 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034daa: 638c ld a1,0(a5) - c0034dac: 4701 li a4,0 - c0034dae: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45778 + c0034f7a: 638c ld a1,0(a5) + c0034f7c: 4701 li a4,0 + c0034f7e: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45786 } - c0034db0: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45775 + c0034f80: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45783 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034db2: ddfff06f j c0034b90 + c0034f82: ddfff06f j c0034d60 -00000000c0034db6 : +00000000c0034f86 : js_object_getOwnPropertySymbols(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 { - c0034db6: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37601 + c0034f86: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37609 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034db8: 638c ld a1,0(a5) - c0034dba: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37600 + c0034f88: 638c ld a1,0(a5) + c0034f8a: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 { - c0034dbc: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37601 + c0034f8c: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37609 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034dbe: 4701 li a4,0 - c0034dc0: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37603 + c0034f8e: 4701 li a4,0 + c0034f90: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37611 } - c0034dc2: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37601 + c0034f92: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37609 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034dc4: dcdff06f j c0034b90 + c0034f94: dcdff06f j c0034d60 -00000000c0034dc8 : +00000000c0034f98 : js_object_getOwnPropertyNames(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37593 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37601 { - c0034dc8: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37594 + c0034f98: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37602 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034dca: 638c ld a1,0(a5) - c0034dcc: 6790 ld a2,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37593 + c0034f9a: 638c ld a1,0(a5) + c0034f9c: 6790 ld a2,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37601 { - c0034dce: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37594 + c0034f9e: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37602 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034dd0: 4701 li a4,0 - c0034dd2: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37596 + c0034fa0: 4701 li a4,0 + c0034fa2: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37604 } - c0034dd4: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37594 + c0034fa4: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37602 return JS_GetOwnPropertyNames2(ctx, argv[0], - c0034dd6: dbbff06f j c0034b90 + c0034fa6: dbbff06f j c0034d60 -00000000c0034dda : +00000000c0034faa : js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38495 -{ - c0034dda: 7115 addi sp,sp,-224 - c0034ddc: e5a6 sd s1,200(sp) - c0034dde: fd4e sd s3,184(sp) - c0034de0: f952 sd s4,176(sp) - c0034de2: ed5e sd s7,152(sp) - c0034de4: e566 sd s9,136(sp) - c0034de6: ed86 sd ra,216(sp) - c0034de8: e9a2 sd s0,208(sp) - c0034dea: e1ca sd s2,192(sp) - c0034dec: f556 sd s5,168(sp) - c0034dee: f15a sd s6,160(sp) - c0034df0: e962 sd s8,144(sp) - c0034df2: 84aa mv s1,a0 - c0034df4: e02e sd a1,0(sp) - c0034df6: e432 sd a2,8(sp) - c0034df8: 8cb6 mv s9,a3 - c0034dfa: 8bba mv s7,a4 - c0034dfc: 8a2e mv s4,a1 - c0034dfe: 89b2 mv s3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38501 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38503 +{ + c0034faa: 7115 addi sp,sp,-224 + c0034fac: e5a6 sd s1,200(sp) + c0034fae: fd4e sd s3,184(sp) + c0034fb0: f952 sd s4,176(sp) + c0034fb2: ed5e sd s7,152(sp) + c0034fb4: e566 sd s9,136(sp) + c0034fb6: ed86 sd ra,216(sp) + c0034fb8: e9a2 sd s0,208(sp) + c0034fba: e1ca sd s2,192(sp) + c0034fbc: f556 sd s5,168(sp) + c0034fbe: f15a sd s6,160(sp) + c0034fc0: e962 sd s8,144(sp) + c0034fc2: 84aa mv s1,a0 + c0034fc4: e02e sd a1,0(sp) + c0034fc6: e432 sd a2,8(sp) + c0034fc8: 8cb6 mv s9,a3 + c0034fca: 8bba mv s7,a4 + c0034fcc: 8a2e mv s4,a1 + c0034fce: 89b2 mv s3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38509 if (check_function(ctx, this_val)) - c0034e00: ea8de0ef jal ra,c00134a8 - c0034e04: c509 beqz a0,c0034e0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38575 + c0034fd0: dc6de0ef jal ra,c0013596 + c0034fd4: c509 beqz a0,c0034fde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38583 return JS_EXCEPTION; - c0034e06: 4799 li a5,6 - c0034e08: f082 sd zero,96(sp) - c0034e0a: f4be sd a5,104(sp) - c0034e0c: aac5 j c0034ffc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38504 + c0034fd6: 4799 li a5,6 + c0034fd8: f082 sd zero,96(sp) + c0034fda: f4be sd a5,104(sp) + c0034fdc: aac5 j c00351cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38512 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0034e0e: 64ac ld a1,72(s1) - c0034e10: 68b0 ld a2,80(s1) - c0034e12: 842a mv s0,a0 - c0034e14: 46b9 li a3,14 - c0034e16: 8526 mv a0,s1 - c0034e18: 971e10ef jal ra,c0016788 - c0034e1c: e82a sd a0,16(sp) - c0034e1e: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38506 + c0034fde: 64ac ld a1,72(s1) + c0034fe0: 68b0 ld a2,80(s1) + c0034fe2: 842a mv s0,a0 + c0034fe4: 46b9 li a3,14 + c0034fe6: 8526 mv a0,s1 + c0034fe8: 971e10ef jal ra,c0016958 + c0034fec: e82a sd a0,16(sp) + c0034fee: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38514 if (JS_IsException(func_obj)) - c0034e20: 0005871b sext.w a4,a1 - c0034e24: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38504 + c0034ff0: 0005871b sext.w a4,a1 + c0034ff4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38512 func_obj = JS_NewObjectProtoClass(ctx, ctx->function_proto, - c0034e26: 8aaa mv s5,a0 - c0034e28: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38506 + c0034ff6: 8aaa mv s5,a0 + c0034ff8: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38514 if (JS_IsException(func_obj)) - c0034e2a: fcf70ee3 beq a4,a5,c0034e06 + c0034ffa: fcf70ee3 beq a4,a5,c0034fd6 JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0034e2e: 0009871b sext.w a4,s3 - c0034e32: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9849 + c0034ffe: 0009871b sext.w a4,s3 + c0035002: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9857 return FALSE; - c0034e34: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 + c0035004: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0034e36: 00d71663 bne a4,a3,c0034e42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c0035006: 00d71663 bne a4,a3,c0035012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0034e3a: 000a3783 ld a5,0(s4) - c0034e3e: 93b1 srli a5,a5,0x2c - c0034e40: 8b85 andi a5,a5,1 + c003500a: 000a3783 ld a5,0(s4) + c003500e: 93b1 srli a5,a5,0x2c + c0035010: 8b85 andi a5,a5,1 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38509 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38517 p->is_constructor = JS_IsConstructor(ctx, this_val); - c0034e42: 005ac703 lbu a4,5(s5) - c0034e46: 0047979b slliw a5,a5,0x4 - c0034e4a: 9b3d andi a4,a4,-17 - c0034e4c: 8fd9 or a5,a5,a4 - c0034e4e: 00fa82a3 sb a5,5(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38510 + c0035012: 005ac703 lbu a4,5(s5) + c0035016: 0047979b slliw a5,a5,0x4 + c003501a: 9b3d andi a4,a4,-17 + c003501c: 8fd9 or a5,a5,a4 + c003501e: 00fa82a3 sb a5,5(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38518 arg_count = max_int(0, argc - 1); - c0034e52: fffc879b addiw a5,s9,-1 - c0034e56: 8cbe mv s9,a5 - c0034e58: 0007d363 bgez a5,c0034e5e - c0034e5c: 4c81 li s9,0 - c0034e5e: 000c8c1b sext.w s8,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38511 + c0035022: fffc879b addiw a5,s9,-1 + c0035026: 8cbe mv s9,a5 + c0035028: 0007d363 bgez a5,c003502e + c003502c: 4c81 li s9,0 + c003502e: 000c8c1b sext.w s8,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38519 bf = js_malloc(ctx, sizeof(*bf) + arg_count * sizeof(JSValue)); - c0034e62: 004c1593 slli a1,s8,0x4 - c0034e66: 02858593 addi a1,a1,40 - c0034e6a: 8526 mv a0,s1 - c0034e6c: de1df0ef jal ra,c0014c4c - c0034e70: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38512 + c0035032: 004c1593 slli a1,s8,0x4 + c0035036: 02858593 addi a1,a1,40 + c003503a: 8526 mv a0,s1 + c003503c: cffdf0ef jal ra,c0014d3a + c0035040: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38520 if (!bf) - c0034e72: 1a050e63 beqz a0,c003502e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38514 + c0035042: 1a050e63 beqz a0,c00351fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38522 bf->func_obj = JS_DupValue(ctx, this_val); - c0034e76: 6502 ld a0,0(sp) - c0034e78: 65a2 ld a1,8(sp) - c0034e7a: ff4d10ef jal ra,c000666e - c0034e7e: 00a93023 sd a0,0(s2) - c0034e82: 00b93423 sd a1,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38515 + c0035046: 6502 ld a0,0(sp) + c0035048: 65a2 ld a1,8(sp) + c003504a: f12d10ef jal ra,c000675c + c003504e: 00a93023 sd a0,0(s2) + c0035052: 00b93423 sd a1,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38523 bf->this_val = JS_DupValue(ctx, argv[0]); - c0034e86: 000bb503 ld a0,0(s7) - c0034e8a: 008bb583 ld a1,8(s7) - c0034e8e: fe0d10ef jal ra,c000666e - c0034e92: 00a93823 sd a0,16(s2) - c0034e96: 00b93c23 sd a1,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38516 + c0035056: 000bb503 ld a0,0(s7) + c003505a: 008bb583 ld a1,8(s7) + c003505e: efed10ef jal ra,c000675c + c0035062: 00a93823 sd a0,16(s2) + c0035066: 00b93c23 sd a1,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38524 bf->argc = arg_count; - c0034e9a: 03992023 sw s9,32(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38517 (discriminator 1) + c003506a: 03992023 sw s9,32(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38525 (discriminator 1) for(i = 0; i < arg_count; i++) { - c0034e9e: 03841163 bne s0,s8,c0034ec0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38523 + c003506e: 03841163 bne s0,s8,c0035090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38531 ret = JS_GetOwnProperty(ctx, NULL, this_val, JS_ATOM_length); - c0034ea2: 6602 ld a2,0(sp) - c0034ea4: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38520 + c0035072: 6602 ld a2,0(sp) + c0035074: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38528 p->u.bound_function = bf; - c0034ea6: 032ab823 sd s2,48(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38523 + c0035076: 032ab823 sd s2,48(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38531 ret = JS_GetOwnProperty(ctx, NULL, this_val, JS_ATOM_length); - c0034eaa: 03000713 li a4,48 - c0034eae: 4581 li a1,0 - c0034eb0: 8526 mv a0,s1 - c0034eb2: b13fb0ef jal ra,c00309c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38524 + c003507a: 03000713 li a4,48 + c003507e: 4581 li a1,0 + c0035080: 8526 mv a0,s1 + c0035082: b13fb0ef jal ra,c0030b94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38532 if (ret < 0) - c0034eb6: 16054c63 bltz a0,c003502e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38526 + c0035086: 16054c63 bltz a0,c00351fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38534 if (!ret) { - c0034eba: e11d bnez a0,c0034ee0 + c003508a: e11d bnez a0,c00350b0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0034ebc: f802 sd zero,48(sp) - c0034ebe: a8b1 j c0034f1a + c003508c: f802 sd zero,48(sp) + c003508e: a8b1 j c00350ea js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38518 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38526 (discriminator 3) bf->argv[i] = JS_DupValue(ctx, argv[i + 1]); - c0034ec0: 00140c9b addiw s9,s0,1 - c0034ec4: 004c9793 slli a5,s9,0x4 - c0034ec8: 97de add a5,a5,s7 - c0034eca: 6388 ld a0,0(a5) - c0034ecc: 678c ld a1,8(a5) - c0034ece: 0409 addi s0,s0,2 - c0034ed0: 0412 slli s0,s0,0x4 - c0034ed2: 944a add s0,s0,s2 - c0034ed4: f9ad10ef jal ra,c000666e - c0034ed8: e408 sd a0,8(s0) - c0034eda: e80c sd a1,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38517 (discriminator 3) + c0035090: 00140c9b addiw s9,s0,1 + c0035094: 004c9793 slli a5,s9,0x4 + c0035098: 97de add a5,a5,s7 + c003509a: 6388 ld a0,0(a5) + c003509c: 678c ld a1,8(a5) + c003509e: 0409 addi s0,s0,2 + c00350a0: 0412 slli s0,s0,0x4 + c00350a2: 944a add s0,s0,s2 + c00350a4: eb8d10ef jal ra,c000675c + c00350a8: e408 sd a0,8(s0) + c00350aa: e80c sd a1,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38525 (discriminator 3) for(i = 0; i < arg_count; i++) { - c0034edc: 8466 mv s0,s9 - c0034ede: b7c1 j c0034e9e + c00350ac: 8466 mv s0,s9 + c00350ae: b7c1 j c003506e JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0034ee0: 8752 mv a4,s4 - c0034ee2: 87ce mv a5,s3 - c0034ee4: 864e mv a2,s3 - c0034ee6: 4801 li a6,0 - c0034ee8: 03000693 li a3,48 - c0034eec: 85d2 mv a1,s4 - c0034eee: 8526 mv a0,s1 - c0034ef0: f8d2 sd s4,112(sp) - c0034ef2: fcce sd s3,120(sp) - c0034ef4: 94fdc0ef jal ra,c0011842 - c0034ef8: f82a sd a0,48(sp) + c00350b0: 8752 mv a4,s4 + c00350b2: 87ce mv a5,s3 + c00350b4: 864e mv a2,s3 + c00350b6: 4801 li a6,0 + c00350b8: 03000693 li a3,48 + c00350bc: 85d2 mv a1,s4 + c00350be: 8526 mv a0,s1 + c00350c0: f8d2 sd s4,112(sp) + c00350c2: fcce sd s3,120(sp) + c00350c4: 86ddc0ef jal ra,c0011930 + c00350c8: f82a sd a0,48(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0034efa: 0005879b sext.w a5,a1 + c00350ca: 0005879b sext.w a5,a1 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38538 if (JS_IsException(len_val)) - c0034efe: 4719 li a4,6 + c00350ce: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0034f00: 862e mv a2,a1 + c00350d0: 862e mv a2,a1 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38530 - c0034f02: 12e78663 beq a5,a4,c003502e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38532 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38538 + c00350d2: 12e78663 beq a5,a4,c00351fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38540 if (JS_VALUE_GET_TAG(len_val) == JS_TAG_INT) { - c0034f06: ef81 bnez a5,c0034f1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38534 + c00350d6: ef81 bnez a5,c00350ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38542 int len1 = JS_VALUE_GET_INT(len_val); - c0034f08: 5742 lw a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38535 + c00350d8: 5742 lw a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38543 if (len1 <= arg_count) - c0034f0a: 00e45463 bge s0,a4,c0034f12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38538 + c00350da: 00e45463 bge s0,a4,c00350e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38546 len1 -= arg_count; - c0034f0e: 408707bb subw a5,a4,s0 + c00350de: 408707bb subw a5,a4,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0034f12: ca82 sw zero,84(sp) - c0034f14: c8be sw a5,80(sp) - c0034f16: 67c6 ld a5,80(sp) - c0034f18: f83e sd a5,48(sp) - c0034f1a: 4781 li a5,0 - c0034f1c: a0b1 j c0034f68 + c00350e2: ca82 sw zero,84(sp) + c00350e4: c8be sw a5,80(sp) + c00350e6: 67c6 ld a5,80(sp) + c00350e8: f83e sd a5,48(sp) + c00350ea: 4781 li a5,0 + c00350ec: a0b1 j c0035138 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38548 } else if (JS_VALUE_GET_NORM_TAG(len_val) == JS_TAG_FLOAT64) { - c0034f1e: 471d li a4,7 - c0034f20: 10e79263 bne a5,a4,c0035024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38541 + c00350ee: 471d li a4,7 + c00350f0: 10e79263 bne a5,a4,c00351f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38549 double d = JS_VALUE_GET_FLOAT64(len_val); - c0034f24: 3542 fld fa0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38543 + c00350f4: 3542 fld fa0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38551 d = 0.0; - c0034f26: 00000913 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38542 + c00350f6: 00000913 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38550 if (isnan(d)) { - c0034f2a: a2a527d3 feq.d a5,fa0,fa0 - c0034f2e: cf81 beqz a5,c0034f46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38545 + c00350fa: a2a527d3 feq.d a5,fa0,fa0 + c00350fe: cf81 beqz a5,c0035116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38553 d = trunc(d); - c0034f30: 1bc230ef jal ra,c00580ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38546 + c0035100: 1bc230ef jal ra,c00582bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38554 if (d <= (double)arg_count) - c0034f34: d20407d3 fcvt.d.w fa5,s0 - c0034f38: a2f507d3 fle.d a5,fa0,fa5 - c0034f3c: e789 bnez a5,c0034f46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38549 + c0035104: d20407d3 fcvt.d.w fa5,s0 + c0035108: a2f507d3 fle.d a5,fa0,fa5 + c003510c: e789 bnez a5,c0035116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38557 d -= (double)arg_count; /* also converts -0 to +0 */ - c0034f3e: 0af577d3 fsub.d fa5,fa0,fa5 - c0034f42: e2078953 fmv.x.d s2,fa5 + c003510e: 0af577d3 fsub.d fa5,fa0,fa5 + c0035112: e2078953 fmv.x.d s2,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0034f46: f20907d3 fmv.d.x fa5,s2 - c0034f4a: c20797d3 fcvt.w.d a5,fa5,rtz + c0035116: f20907d3 fmv.d.x fa5,s2 + c003511a: c20797d3 fcvt.w.d a5,fa5,rtz /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0034f4e: d20787d3 fcvt.d.w fa5,a5 + c003511e: d20787d3 fcvt.d.w fa5,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0034f52: 0007871b sext.w a4,a5 + c0035122: 0007871b sext.w a4,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0034f56: e20786d3 fmv.x.d a3,fa5 - c0034f5a: 0d269063 bne a3,s2,c003501a + c0035126: e20786d3 fmv.x.d a3,fa5 + c003512a: 0d269063 bne a3,s2,c00351ea /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c0034f5e: da82 sw zero,116(sp) - c0034f60: 4781 li a5,0 + c003512e: da82 sw zero,116(sp) + c0035130: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0034f62: d8ba sw a4,112(sp) - c0034f64: 37c6 fld fa5,112(sp) - c0034f66: b83e fsd fa5,48(sp) + c0035132: d8ba sw a4,112(sp) + c0035134: 37c6 fld fa5,112(sp) + c0035136: b83e fsd fa5,48(sp) js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38557 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38565 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_length, - c0034f68: 7742 ld a4,48(sp) - c0034f6a: 65c2 ld a1,16(sp) - c0034f6c: 6662 ld a2,24(sp) - c0034f6e: 4805 li a6,1 - c0034f70: 03000693 li a3,48 - c0034f74: 8526 mv a0,s1 - c0034f76: 840de0ef jal ra,c0012fb6 + c0035138: 7742 ld a4,48(sp) + c003513a: 65c2 ld a1,16(sp) + c003513c: 6662 ld a2,24(sp) + c003513e: 4805 li a6,1 + c0035140: 03000693 li a3,48 + c0035144: 8526 mv a0,s1 + c0035146: f5fdd0ef jal ra,c00130a4 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0034f7a: 8752 mv a4,s4 - c0034f7c: 87ce mv a5,s3 - c0034f7e: 03700693 li a3,55 - c0034f82: 4801 li a6,0 - c0034f84: 85d2 mv a1,s4 - c0034f86: 864e mv a2,s3 - c0034f88: 8526 mv a0,s1 - c0034f8a: f0d2 sd s4,96(sp) - c0034f8c: f4ce sd s3,104(sp) - c0034f8e: 8b5dc0ef jal ra,c0011842 - c0034f92: f8aa sd a0,112(sp) - c0034f94: fcae sd a1,120(sp) - c0034f96: f02a sd a0,32(sp) + c003514a: 8752 mv a4,s4 + c003514c: 87ce mv a5,s3 + c003514e: 03700693 li a3,55 + c0035152: 4801 li a6,0 + c0035154: 85d2 mv a1,s4 + c0035156: 864e mv a2,s3 + c0035158: 8526 mv a0,s1 + c003515a: f0d2 sd s4,96(sp) + c003515c: f4ce sd s3,104(sp) + c003515e: fd2dc0ef jal ra,c0011930 + c0035162: f8aa sd a0,112(sp) + c0035164: fcae sd a1,120(sp) + c0035166: f02a sd a0,32(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0034f98: 0005879b sext.w a5,a1 + c0035168: 0005879b sext.w a5,a1 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38561 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38569 if (JS_IsException(name1)) - c0034f9c: 4719 li a4,6 + c003516c: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0034f9e: 86ae mv a3,a1 + c003516e: 86ae mv a3,a1 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38561 - c0034fa0: 08e78763 beq a5,a4,c003502e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38563 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38569 + c0035170: 08e78763 beq a5,a4,c00351fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38571 if (!JS_IsString(name1)) { - c0034fa4: 5765 li a4,-7 - c0034fa6: 00e78e63 beq a5,a4,c0034fc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38564 + c0035174: 5765 li a4,-7 + c0035176: 00e78e63 beq a5,a4,c0035192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38572 JS_FreeValue(ctx, name1); - c0034faa: 85aa mv a1,a0 - c0034fac: 8636 mv a2,a3 - c0034fae: 8526 mv a0,s1 - c0034fb0: b89d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38565 + c003517a: 85aa mv a1,a0 + c003517c: 8636 mv a2,a3 + c003517e: 8526 mv a0,s1 + c0035180: aa7d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38573 name1 = JS_AtomToString(ctx, JS_ATOM_empty_string); - c0034fb4: 02f00593 li a1,47 - c0034fb8: 8526 mv a0,s1 - c0034fba: b83e40ef jal ra,c0019b3c - c0034fbe: f02a sd a0,32(sp) - c0034fc0: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38567 + c0035184: 02f00593 li a1,47 + c0035188: 8526 mv a0,s1 + c003518a: b83e40ef jal ra,c0019d0c + c003518e: f02a sd a0,32(sp) + c0035190: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38575 name1 = JS_ConcatString3(ctx, "bound ", name1, ""); - c0034fc2: 7602 ld a2,32(sp) - c0034fc4: 00028717 auipc a4,0x28 - c0034fc8: 00c70713 addi a4,a4,12 # c005cfd0 - c0034fcc: 0002b597 auipc a1,0x2b - c0034fd0: 69c58593 addi a1,a1,1692 # c0060668 - c0034fd4: 8526 mv a0,s1 - c0034fd6: 835e50ef jal ra,c001a80a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38568 + c0035192: 7602 ld a2,32(sp) + c0035194: 00028717 auipc a4,0x28 + c0035198: 06c70713 addi a4,a4,108 # c005d200 + c003519c: 0002b597 auipc a1,0x2b + c00351a0: 72c58593 addi a1,a1,1836 # c00608c8 + c00351a4: 8526 mv a0,s1 + c00351a6: 835e50ef jal ra,c001a9da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38576 if (JS_IsException(name1)) - c0034fda: 0005861b sext.w a2,a1 - c0034fde: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38567 + c00351aa: 0005861b sext.w a2,a1 + c00351ae: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38575 name1 = JS_ConcatString3(ctx, "bound ", name1, ""); - c0034fe0: 872a mv a4,a0 - c0034fe2: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38568 + c00351b0: 872a mv a4,a0 + c00351b2: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38576 if (JS_IsException(name1)) - c0034fe4: 04d60563 beq a2,a3,c003502e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38570 + c00351b4: 04d60563 beq a2,a3,c00351fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38578 JS_DefinePropertyValue(ctx, func_obj, JS_ATOM_name, name1, - c0034fe8: 65c2 ld a1,16(sp) - c0034fea: 6662 ld a2,24(sp) - c0034fec: 4805 li a6,1 - c0034fee: 03700693 li a3,55 - c0034ff2: 8526 mv a0,s1 - c0034ff4: fc3dd0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38572 + c00351b8: 65c2 ld a1,16(sp) + c00351ba: 6662 ld a2,24(sp) + c00351bc: 4805 li a6,1 + c00351be: 03700693 li a3,55 + c00351c2: 8526 mv a0,s1 + c00351c4: ee1dd0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38580 return func_obj; - c0034ff8: f0d6 sd s5,96(sp) - c0034ffa: f4da sd s6,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38576 (discriminator 1) -} - c0034ffc: 60ee ld ra,216(sp) - c0034ffe: 644e ld s0,208(sp) - c0035000: 7506 ld a0,96(sp) - c0035002: 75a6 ld a1,104(sp) - c0035004: 64ae ld s1,200(sp) - c0035006: 690e ld s2,192(sp) - c0035008: 79ea ld s3,184(sp) - c003500a: 7a4a ld s4,176(sp) - c003500c: 7aaa ld s5,168(sp) - c003500e: 7b0a ld s6,160(sp) - c0035010: 6bea ld s7,152(sp) - c0035012: 6c4a ld s8,144(sp) - c0035014: 6caa ld s9,136(sp) - c0035016: 612d addi sp,sp,224 - c0035018: 8082 ret + c00351c8: f0d6 sd s5,96(sp) + c00351ca: f4da sd s6,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38584 (discriminator 1) +} + c00351cc: 60ee ld ra,216(sp) + c00351ce: 644e ld s0,208(sp) + c00351d0: 7506 ld a0,96(sp) + c00351d2: 75a6 ld a1,104(sp) + c00351d4: 64ae ld s1,200(sp) + c00351d6: 690e ld s2,192(sp) + c00351d8: 79ea ld s3,184(sp) + c00351da: 7a4a ld s4,176(sp) + c00351dc: 7aaa ld s5,168(sp) + c00351de: 7b0a ld s6,160(sp) + c00351e0: 6bea ld s7,152(sp) + c00351e2: 6c4a ld s8,144(sp) + c00351e4: 6caa ld s9,136(sp) + c00351e6: 612d addi sp,sp,224 + c00351e8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003501a: f8ca sd s2,112(sp) - c003501c: 0009071b sext.w a4,s2 + c00351ea: f8ca sd s2,112(sp) + c00351ec: 0009071b sext.w a4,s2 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0035020: 479d li a5,7 - c0035022: b781 j c0034f62 + c00351f0: 479d li a5,7 + c00351f2: b781 j c0035132 js_function_bind(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38561 JS_FreeValue(ctx, len_val); - c0035024: 85aa mv a1,a0 - c0035026: 8526 mv a0,s1 - c0035028: b11d20ef jal ra,c0007b38 - c003502c: bd41 j c0034ebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38574 + c00351f4: 85aa mv a1,a0 + c00351f6: 8526 mv a0,s1 + c00351f8: a2fd20ef jal ra,c0007c26 + c00351fc: bd41 j c003508c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38582 JS_FreeValue(ctx, func_obj); - c003502e: 65c2 ld a1,16(sp) - c0035030: 6662 ld a2,24(sp) - c0035032: 8526 mv a0,s1 - c0035034: b05d20ef jal ra,c0007b38 - c0035038: b3f9 j c0034e06 + c00351fe: 65c2 ld a1,16(sp) + c0035200: 6662 ld a2,24(sp) + c0035202: 8526 mv a0,s1 + c0035204: a23d20ef jal ra,c0007c26 + c0035208: b3f9 j c0034fd6 -00000000c003503a : +00000000c003520a : JS_CopyDataProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15554 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15562 { - c003503a: 716d addi sp,sp,-272 - c003503c: f9ca sd s2,240(sp) - c003503e: f5ce sd s3,232(sp) - c0035040: ec3a sd a4,24(sp) - c0035042: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15564 + c003520a: 716d addi sp,sp,-272 + c003520c: f9ca sd s2,240(sp) + c003520e: f5ce sd s3,232(sp) + c0035210: ec3a sd a4,24(sp) + c0035212: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15572 if (JS_VALUE_GET_TAG(source) != JS_TAG_OBJECT) - c0035044: 0007099b sext.w s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15554 -{ - c0035048: e606 sd ra,264(sp) - c003504a: e222 sd s0,256(sp) - c003504c: fda6 sd s1,248(sp) - c003504e: f1d2 sd s4,224(sp) - c0035050: edd6 sd s5,216(sp) - c0035052: e9da sd s6,208(sp) - c0035054: e5de sd s7,200(sp) - c0035056: e1e2 sd s8,192(sp) - c0035058: fd66 sd s9,184(sp) - c003505a: f96a sd s10,176(sp) - c003505c: f02e sd a1,32(sp) - c003505e: f432 sd a2,40(sp) - c0035060: e836 sd a3,16(sp) - c0035062: e03e sd a5,0(sp) - c0035064: e442 sd a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15564 + c0035214: 0007099b sext.w s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15562 +{ + c0035218: e606 sd ra,264(sp) + c003521a: e222 sd s0,256(sp) + c003521c: fda6 sd s1,248(sp) + c003521e: f1d2 sd s4,224(sp) + c0035220: edd6 sd s5,216(sp) + c0035222: e9da sd s6,208(sp) + c0035224: e5de sd s7,200(sp) + c0035226: e1e2 sd s8,192(sp) + c0035228: fd66 sd s9,184(sp) + c003522a: f96a sd s10,176(sp) + c003522c: f02e sd a1,32(sp) + c003522e: f432 sd a2,40(sp) + c0035230: e836 sd a3,16(sp) + c0035232: e03e sd a5,0(sp) + c0035234: e442 sd a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15572 if (JS_VALUE_GET_TAG(source) != JS_TAG_OBJECT) - c0035066: 577d li a4,-1 - c0035068: 06e99063 bne s3,a4,c00350c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15567 + c0035236: 577d li a4,-1 + c0035238: 06e99063 bne s3,a4,c0035298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15575 if (JS_VALUE_GET_TAG(excluded) == JS_TAG_OBJECT) - c003506c: 2801 sext.w a6,a6 - c003506e: 842a mv s0,a0 - c0035070: 8bc6 mv s7,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15559 - JSObject *pexcl = NULL; - c0035072: 4a01 li s4,0 + c003523c: 2801 sext.w a6,a6 + c003523e: 842a mv s0,a0 + c0035240: 8bc6 mv s7,a7 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15567 + JSObject *pexcl = NULL; + c0035242: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15575 if (JS_VALUE_GET_TAG(excluded) == JS_TAG_OBJECT) - c0035074: 01381363 bne a6,s3,c003507a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15568 + c0035244: 01381363 bne a6,s3,c003524a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15576 pexcl = JS_VALUE_GET_OBJ(excluded); - c0035078: 8a3e mv s4,a5 - c003507a: 64c2 ld s1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15572 + c0035248: 8a3e mv s4,a5 + c003524a: 64c2 ld s1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15580 gpn_flags = JS_GPN_STRING_MASK | JS_GPN_SYMBOL_MASK | JS_GPN_ENUM_ONLY; - c003507c: 4acd li s5,19 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15573 + c003524c: 4acd li s5,19 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15581 if (p->is_exotic) { - c003507e: 0054c783 lbu a5,5(s1) - c0035082: 8b91 andi a5,a5,4 - c0035084: cf99 beqz a5,c00350a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15574 + c003524e: 0054c783 lbu a5,5(s1) + c0035252: 8b91 andi a5,a5,4 + c0035254: cf99 beqz a5,c0035272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15582 const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - c0035086: 0064d703 lhu a4,6(s1) - c003508a: 02800693 li a3,40 - c003508e: 6c1c ld a5,24(s0) - c0035090: 02d70733 mul a4,a4,a3 - c0035094: 7bbc ld a5,112(a5) - c0035096: 97ba add a5,a5,a4 - c0035098: 739c ld a5,32(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15577 + c0035256: 0064d703 lhu a4,6(s1) + c003525a: 02800693 li a3,40 + c003525e: 6c1c ld a5,24(s0) + c0035260: 02d70733 mul a4,a4,a3 + c0035264: 7bbc ld a5,112(a5) + c0035266: 97ba add a5,a5,a4 + c0035268: 739c ld a5,32(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 if (em && em->get_own_property_names) { - c003509a: c781 beqz a5,c00350a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15577 (discriminator 1) - c003509c: 679c ld a5,8(a5) - c003509e: c391 beqz a5,c00350a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15578 + c003526a: c781 beqz a5,c0035272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 (discriminator 1) + c003526c: 679c ld a5,8(a5) + c003526e: c391 beqz a5,c0035272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15586 gpn_flags &= ~JS_GPN_ENUM_ONLY; - c00350a0: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15581 + c0035270: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15589 if (JS_GetOwnPropertyNamesInternal(ctx, &tab_atom, &tab_atom_count, p, - c00350a2: 8756 mv a4,s5 - c00350a4: 86a6 mv a3,s1 - c00350a6: 1870 addi a2,sp,60 - c00350a8: 008c addi a1,sp,64 - c00350aa: 8522 mv a0,s0 - c00350ac: cfefb0ef jal ra,c00305aa - c00350b0: ed35 bnez a0,c003512c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 + c0035272: 8756 mv a4,s5 + c0035274: 86a6 mv a3,s1 + c0035276: 1870 addi a2,sp,60 + c0035278: 008c addi a1,sp,64 + c003527a: 8522 mv a0,s0 + c003527c: cfefb0ef jal ra,c003077a + c0035280: ed35 bnez a0,c00352fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15593 for (i = 0; i < tab_atom_count; i++) { - c00350b2: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15594 + c0035282: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15602 if (!(gpn_flags & JS_GPN_ENUM_ONLY)) { - c00350b4: 010afa93 andi s5,s5,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15607 + c0035284: 010afa93 andi s5,s5,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15615 if (JS_IsException(val)) - c00350b8: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 (discriminator 1) + c0035288: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15593 (discriminator 1) for (i = 0; i < tab_atom_count; i++) { - c00350ba: 5672 lw a2,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15587 (discriminator 1) + c003528a: 5672 lw a2,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15595 (discriminator 1) ret = JS_GetOwnPropertyInternal(ctx, NULL, pexcl, tab_atom[i].atom); - c00350bc: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 (discriminator 1) + c003528c: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15593 (discriminator 1) for (i = 0; i < tab_atom_count; i++) { - c00350be: 00cb6763 bltu s6,a2,c00350cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15617 + c003528e: 00cb6763 bltu s6,a2,c003529c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15625 js_free_prop_enum(ctx, tab_atom, tab_atom_count); - c00350c2: 8522 mv a0,s0 - c00350c4: c58d20ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15565 + c0035292: 8522 mv a0,s0 + c0035294: b76d20ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15573 return 0; - c00350c8: 4981 li s3,0 - c00350ca: a08d j c003512c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15587 + c0035298: 4981 li s3,0 + c003529a: a08d j c00352fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15595 ret = JS_GetOwnPropertyInternal(ctx, NULL, pexcl, tab_atom[i].atom); - c00350cc: 020b1793 slli a5,s6,0x20 - c00350d0: 01d7dc93 srli s9,a5,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15586 + c003529c: 020b1793 slli a5,s6,0x20 + c00352a0: 01d7dc93 srli s9,a5,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15594 if (pexcl) { - c00350d4: 000a0e63 beqz s4,c00350f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15587 + c00352a4: 000a0e63 beqz s4,c00352c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15595 ret = JS_GetOwnPropertyInternal(ctx, NULL, pexcl, tab_atom[i].atom); - c00350d8: 95e6 add a1,a1,s9 - c00350da: 41d4 lw a3,4(a1) - c00350dc: 8652 mv a2,s4 - c00350de: 4581 li a1,0 - c00350e0: 8522 mv a0,s0 - c00350e2: e23dc0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15588 + c00352a8: 95e6 add a1,a1,s9 + c00352aa: 41d4 lw a3,4(a1) + c00352ac: 8652 mv a2,s4 + c00352ae: 4581 li a1,0 + c00352b0: 8522 mv a0,s0 + c00352b2: d41dc0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15596 if (ret) { - c00350e6: c509 beqz a0,c00350f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15589 + c00352b6: c509 beqz a0,c00352c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15597 if (ret < 0) - c00350e8: 02054d63 bltz a0,c0035122 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15585 + c00352b8: 02054d63 bltz a0,c00352f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15593 for (i = 0; i < tab_atom_count; i++) { - c00350ec: 2b05 addiw s6,s6,1 - c00350ee: b7f1 j c00350ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15594 + c00352bc: 2b05 addiw s6,s6,1 + c00352be: b7f1 j c003528a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15602 if (!(gpn_flags & JS_GPN_ENUM_ONLY)) { - c00350f0: 040a8d63 beqz s5,c003514a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15606 + c00352c0: 040a8d63 beqz s5,c003531a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15614 val = JS_GetProperty(ctx, source, tab_atom[i].atom); - c00350f4: 6686 ld a3,64(sp) + c00352c4: 6686 ld a3,64(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00350f6: 8726 mv a4,s1 - c00350f8: 87ca mv a5,s2 + c00352c6: 8726 mv a4,s1 + c00352c8: 87ca mv a5,s2 JS_CopyDataProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15606 - c00350fa: 96e6 add a3,a3,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15614 + c00352ca: 96e6 add a3,a3,s9 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00350fc: 42d4 lw a3,4(a3) - c00350fe: 4801 li a6,0 - c0035100: 85a6 mv a1,s1 - c0035102: 864a mv a2,s2 - c0035104: 8522 mv a0,s0 - c0035106: eca6 sd s1,88(sp) - c0035108: f0ca sd s2,96(sp) - c003510a: f38dc0ef jal ra,c0011842 - c003510e: f4aa sd a0,104(sp) - c0035110: f8ae sd a1,112(sp) - c0035112: e4aa sd a0,72(sp) - c0035114: e8ae sd a1,80(sp) + c00352cc: 42d4 lw a3,4(a3) + c00352ce: 4801 li a6,0 + c00352d0: 85a6 mv a1,s1 + c00352d2: 864a mv a2,s2 + c00352d4: 8522 mv a0,s0 + c00352d6: eca6 sd s1,88(sp) + c00352d8: f0ca sd s2,96(sp) + c00352da: e56dc0ef jal ra,c0011930 + c00352de: f4aa sd a0,104(sp) + c00352e0: f8ae sd a1,112(sp) + c00352e2: e4aa sd a0,72(sp) + c00352e4: e8ae sd a1,80(sp) JS_CopyDataProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15607 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15615 if (JS_IsException(val)) - c0035116: 0005869b sext.w a3,a1 + c00352e6: 0005869b sext.w a3,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003511a: 872a mv a4,a0 - c003511c: 87ae mv a5,a1 + c00352ea: 872a mv a4,a0 + c00352ec: 87ae mv a5,a1 JS_CopyDataProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15607 - c003511e: 05869b63 bne a3,s8,c0035174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15615 + c00352ee: 05869b63 bne a3,s8,c0035344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15628 js_free_prop_enum(ctx, tab_atom, tab_atom_count); - c0035122: 5672 lw a2,60(sp) - c0035124: 6586 ld a1,64(sp) - c0035126: 8522 mv a0,s0 - c0035128: bf4d20ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15622 -} - c003512c: 60b2 ld ra,264(sp) - c003512e: 6412 ld s0,256(sp) - c0035130: 74ee ld s1,248(sp) - c0035132: 794e ld s2,240(sp) - c0035134: 7a0e ld s4,224(sp) - c0035136: 6aee ld s5,216(sp) - c0035138: 6b4e ld s6,208(sp) - c003513a: 6bae ld s7,200(sp) - c003513c: 6c0e ld s8,192(sp) - c003513e: 7cea ld s9,184(sp) - c0035140: 7d4a ld s10,176(sp) - c0035142: 854e mv a0,s3 - c0035144: 79ae ld s3,232(sp) - c0035146: 6151 addi sp,sp,272 - c0035148: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15596 + c00352f2: 5672 lw a2,60(sp) + c00352f4: 6586 ld a1,64(sp) + c00352f6: 8522 mv a0,s0 + c00352f8: b12d20ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15630 +} + c00352fc: 60b2 ld ra,264(sp) + c00352fe: 6412 ld s0,256(sp) + c0035300: 74ee ld s1,248(sp) + c0035302: 794e ld s2,240(sp) + c0035304: 7a0e ld s4,224(sp) + c0035306: 6aee ld s5,216(sp) + c0035308: 6b4e ld s6,208(sp) + c003530a: 6bae ld s7,200(sp) + c003530c: 6c0e ld s8,192(sp) + c003530e: 7cea ld s9,184(sp) + c0035310: 7d4a ld s10,176(sp) + c0035312: 854e mv a0,s3 + c0035314: 79ae ld s3,232(sp) + c0035316: 6151 addi sp,sp,272 + c0035318: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15604 ret = JS_GetOwnPropertyInternal(ctx, &desc, p, tab_atom[i].atom); - c003514a: 6786 ld a5,64(sp) - c003514c: 8626 mv a2,s1 - c003514e: 18ac addi a1,sp,120 - c0035150: 97e6 add a5,a5,s9 - c0035152: 43d4 lw a3,4(a5) - c0035154: 8522 mv a0,s0 - c0035156: dafdc0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15597 + c003531a: 6786 ld a5,64(sp) + c003531c: 8626 mv a2,s1 + c003531e: 18ac addi a1,sp,120 + c0035320: 97e6 add a5,a5,s9 + c0035322: 43d4 lw a3,4(a5) + c0035324: 8522 mv a0,s0 + c0035326: ccddc0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15605 if (ret < 0) - c003515a: fc0544e3 bltz a0,c0035122 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15599 + c003532a: fc0544e3 bltz a0,c00352f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15607 if (!ret) - c003515e: d559 beqz a0,c00350ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15601 + c003532e: d559 beqz a0,c00352bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15609 is_enumerable = (desc.flags & JS_PROP_ENUMERABLE) != 0; - c0035160: 5d66 lw s10,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15602 + c0035330: 5d66 lw s10,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15610 js_free_desc(ctx, &desc); - c0035162: 18ac addi a1,sp,120 - c0035164: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15601 + c0035332: 18ac addi a1,sp,120 + c0035334: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15609 is_enumerable = (desc.flags & JS_PROP_ENUMERABLE) != 0; - c0035166: 004d7d13 andi s10,s10,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15602 + c0035336: 004d7d13 andi s10,s10,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15610 js_free_desc(ctx, &desc); - c003516a: ccbd20ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15603 + c003533a: be9d20ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15611 if (!is_enumerable) - c003516e: f80d13e3 bnez s10,c00350f4 - c0035172: bfad j c00350ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15610 + c003533e: f80d13e3 bnez s10,c00352c4 + c0035342: bfad j c00352bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15618 ret = JS_SetProperty(ctx, target, tab_atom[i].atom, val); - c0035174: 6686 ld a3,64(sp) - c0035176: 9cb6 add s9,s9,a3 - c0035178: 004ca683 lw a3,4(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15609 + c0035344: 6686 ld a3,64(sp) + c0035346: 9cb6 add s9,s9,a3 + c0035348: 004ca683 lw a3,4(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15617 if (setprop) - c003517c: 000b8863 beqz s7,c003518c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15610 + c003534c: 000b8863 beqz s7,c003535c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15618 ret = JS_SetProperty(ctx, target, tab_atom[i].atom, val); - c0035180: 7582 ld a1,32(sp) - c0035182: 7622 ld a2,40(sp) - c0035184: 8522 mv a0,s0 - c0035186: f73fa0ef jal ra,c00300f8 - c003518a: bfb9 j c00350e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15612 + c0035350: 7582 ld a1,32(sp) + c0035352: 7622 ld a2,40(sp) + c0035354: 8522 mv a0,s0 + c0035356: f73fa0ef jal ra,c00302c8 + c003535a: bfb9 j c00352b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15620 ret = JS_DefinePropertyValue(ctx, target, tab_atom[i].atom, val, - c003518c: 7582 ld a1,32(sp) - c003518e: 7622 ld a2,40(sp) - c0035190: 481d li a6,7 - c0035192: 8522 mv a0,s0 - c0035194: e23dd0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15614 + c003535c: 7582 ld a1,32(sp) + c003535e: 7622 ld a2,40(sp) + c0035360: 481d li a6,7 + c0035362: 8522 mv a0,s0 + c0035364: d41dd0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15622 if (ret < 0) - c0035198: bf81 j c00350e8 + c0035368: bf81 j c00352b8 -00000000c003519a : +00000000c003536a : js_object_assign(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37778 -{ - c003519a: 7175 addi sp,sp,-144 - c003519c: e122 sd s0,128(sp) - c003519e: fca6 sd s1,120(sp) - c00351a0: f8ca sd s2,112(sp) - c00351a2: f4ce sd s3,104(sp) - c00351a4: e506 sd ra,136(sp) - c00351a6: f0d2 sd s4,96(sp) - c00351a8: ecd6 sd s5,88(sp) - c00351aa: e8da sd s6,80(sp) - c00351ac: e4de sd s7,72(sp) - c00351ae: e0e2 sd s8,64(sp) - c00351b0: e02e sd a1,0(sp) - c00351b2: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37784 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37786 +{ + c003536a: 7175 addi sp,sp,-144 + c003536c: e122 sd s0,128(sp) + c003536e: fca6 sd s1,120(sp) + c0035370: f8ca sd s2,112(sp) + c0035372: f4ce sd s3,104(sp) + c0035374: e506 sd ra,136(sp) + c0035376: f0d2 sd s4,96(sp) + c0035378: ecd6 sd s5,88(sp) + c003537a: e8da sd s6,80(sp) + c003537c: e4de sd s7,72(sp) + c003537e: e0e2 sd s8,64(sp) + c0035380: e02e sd a1,0(sp) + c0035382: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37792 obj = JS_ToObject(ctx, argv[0]); - c00351b4: 630c ld a1,0(a4) - c00351b6: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37778 -{ - c00351b8: 843a mv s0,a4 - c00351ba: 892a mv s2,a0 - c00351bc: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37783 + c0035384: 630c ld a1,0(a4) + c0035386: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37786 +{ + c0035388: 843a mv s0,a4 + c003538a: 892a mv s2,a0 + c003538c: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37791 s = JS_UNDEFINED; - c00351be: f002 sd zero,32(sp) - c00351c0: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37784 + c003538e: f002 sd zero,32(sp) + c0035390: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37792 obj = JS_ToObject(ctx, argv[0]); - c00351c2: c2af30ef jal ra,c00285ec - c00351c6: e82a sd a0,16(sp) - c00351c8: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37785 + c0035392: c2af30ef jal ra,c00287bc + c0035396: e82a sd a0,16(sp) + c0035398: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37793 if (JS_IsException(obj)) - c00351ca: 0005871b sext.w a4,a1 - c00351ce: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37784 + c003539a: 0005871b sext.w a4,a1 + c003539e: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37792 obj = JS_ToObject(ctx, argv[0]); - c00351d0: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37785 + c00353a0: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37793 if (JS_IsException(obj)) - c00351d2: 08f70063 beq a4,a5,c0035252 - c00351d6: 0441 addi s0,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37787 + c00353a2: 08f70063 beq a4,a5,c0035422 + c00353a6: 0441 addi s0,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37795 for (i = 1; i < argc; i++) { - c00351d8: 4a05 li s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37788 + c00353a8: 4a05 li s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37796 if (!JS_IsNull(argv[i]) && !JS_IsUndefined(argv[i])) { - c00351da: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37790 + c00353aa: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37798 if (JS_IsException(s)) - c00351dc: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37792 + c00353ac: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37800 if (JS_CopyDataProperties(ctx, obj, s, JS_UNDEFINED, TRUE)) - c00351de: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37787 (discriminator 1) + c00353ae: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37795 (discriminator 1) for (i = 1; i < argc; i++) { - c00351e0: 033a4363 blt s4,s3,c0035206 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37797 + c00353b0: 033a4363 blt s4,s3,c00353d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37805 return obj; - c00351e4: 67c2 ld a5,16(sp) - c00351e6: fc26 sd s1,56(sp) - c00351e8: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37802 -} - c00351ea: 60aa ld ra,136(sp) - c00351ec: 640a ld s0,128(sp) - c00351ee: 7542 ld a0,48(sp) - c00351f0: 75e2 ld a1,56(sp) - c00351f2: 74e6 ld s1,120(sp) - c00351f4: 7946 ld s2,112(sp) - c00351f6: 79a6 ld s3,104(sp) - c00351f8: 7a06 ld s4,96(sp) - c00351fa: 6ae6 ld s5,88(sp) - c00351fc: 6b46 ld s6,80(sp) - c00351fe: 6ba6 ld s7,72(sp) - c0035200: 6c06 ld s8,64(sp) - c0035202: 6149 addi sp,sp,144 - c0035204: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37788 + c00353b4: 67c2 ld a5,16(sp) + c00353b6: fc26 sd s1,56(sp) + c00353b8: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37810 +} + c00353ba: 60aa ld ra,136(sp) + c00353bc: 640a ld s0,128(sp) + c00353be: 7542 ld a0,48(sp) + c00353c0: 75e2 ld a1,56(sp) + c00353c2: 74e6 ld s1,120(sp) + c00353c4: 7946 ld s2,112(sp) + c00353c6: 79a6 ld s3,104(sp) + c00353c8: 7a06 ld s4,96(sp) + c00353ca: 6ae6 ld s5,88(sp) + c00353cc: 6b46 ld s6,80(sp) + c00353ce: 6ba6 ld s7,72(sp) + c00353d0: 6c06 ld s8,64(sp) + c00353d2: 6149 addi sp,sp,144 + c00353d4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37796 if (!JS_IsNull(argv[i]) && !JS_IsUndefined(argv[i])) { - c0035206: 6410 ld a2,8(s0) - c0035208: ffe6079b addiw a5,a2,-2 - c003520c: 04faf063 bgeu s5,a5,c003524c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37789 + c00353d6: 6410 ld a2,8(s0) + c00353d8: ffe6079b addiw a5,a2,-2 + c00353dc: 04faf063 bgeu s5,a5,c003541c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37797 s = JS_ToObject(ctx, argv[i]); - c0035210: 600c ld a1,0(s0) - c0035212: 854a mv a0,s2 - c0035214: bd8f30ef jal ra,c00285ec - c0035218: f02a sd a0,32(sp) - c003521a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37790 + c00353e0: 600c ld a1,0(s0) + c00353e2: 854a mv a0,s2 + c00353e4: bd8f30ef jal ra,c00287bc + c00353e8: f02a sd a0,32(sp) + c00353ea: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37798 if (JS_IsException(s)) - c003521c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37789 + c00353ec: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37797 s = JS_ToObject(ctx, argv[i]); - c0035220: 86aa mv a3,a0 - c0035222: 872e mv a4,a1 - c0035224: 8c2e mv s8,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37790 + c00353f0: 86aa mv a3,a0 + c00353f2: 872e mv a4,a1 + c00353f4: 8c2e mv s8,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37798 if (JS_IsException(s)) - c0035226: 03678763 beq a5,s6,c0035254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37792 + c00353f6: 03678763 beq a5,s6,c0035424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37800 if (JS_CopyDataProperties(ctx, obj, s, JS_UNDEFINED, TRUE)) - c003522a: 65c2 ld a1,16(sp) - c003522c: 4885 li a7,1 - c003522e: 4781 li a5,0 - c0035230: 480d li a6,3 - c0035232: 8626 mv a2,s1 - c0035234: 854a mv a0,s2 - c0035236: f802 sd zero,48(sp) - c0035238: fc5e sd s7,56(sp) - c003523a: ec26 sd s1,24(sp) - c003523c: dffff0ef jal ra,c003503a - c0035240: e911 bnez a0,c0035254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37794 + c00353fa: 65c2 ld a1,16(sp) + c00353fc: 4885 li a7,1 + c00353fe: 4781 li a5,0 + c0035400: 480d li a6,3 + c0035402: 8626 mv a2,s1 + c0035404: 854a mv a0,s2 + c0035406: f802 sd zero,48(sp) + c0035408: fc5e sd s7,56(sp) + c003540a: ec26 sd s1,24(sp) + c003540c: dffff0ef jal ra,c003520a + c0035410: e911 bnez a0,c0035424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37802 JS_FreeValue(ctx, s); - c0035242: 7582 ld a1,32(sp) - c0035244: 7622 ld a2,40(sp) - c0035246: 854a mv a0,s2 - c0035248: 8f1d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37787 (discriminator 2) + c0035412: 7582 ld a1,32(sp) + c0035414: 7622 ld a2,40(sp) + c0035416: 854a mv a0,s2 + c0035418: 80fd20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37795 (discriminator 2) for (i = 1; i < argc; i++) { - c003524c: 2a05 addiw s4,s4,1 - c003524e: 0441 addi s0,s0,16 - c0035250: bf41 j c00351e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37783 + c003541c: 2a05 addiw s4,s4,1 + c003541e: 0441 addi s0,s0,16 + c0035420: bf41 j c00353b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37791 s = JS_UNDEFINED; - c0035252: 4c0d li s8,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37799 + c0035422: 4c0d li s8,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37807 JS_FreeValue(ctx, obj); - c0035254: 65c2 ld a1,16(sp) - c0035256: 8626 mv a2,s1 - c0035258: 854a mv a0,s2 - c003525a: 8dfd20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37800 + c0035424: 65c2 ld a1,16(sp) + c0035426: 8626 mv a2,s1 + c0035428: 854a mv a0,s2 + c003542a: ffcd20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37808 JS_FreeValue(ctx, s); - c003525e: 7582 ld a1,32(sp) - c0035260: 8662 mv a2,s8 - c0035262: 854a mv a0,s2 - c0035264: 8d5d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37801 + c003542e: 7582 ld a1,32(sp) + c0035430: 8662 mv a2,s8 + c0035432: 854a mv a0,s2 + c0035434: ff2d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37809 return JS_EXCEPTION; - c0035268: 4799 li a5,6 - c003526a: f802 sd zero,48(sp) - c003526c: fc3e sd a5,56(sp) - c003526e: bfb5 j c00351ea + c0035438: 4799 li a5,6 + c003543a: f802 sd zero,48(sp) + c003543c: fc3e sd a5,56(sp) + c003543e: bfb5 j c00353ba -00000000c0035270 : +00000000c0035440 : js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43841 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43849 { - c0035270: dc010113 addi sp,sp,-576 + c0035440: dc010113 addi sp,sp,-576 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0035274: 0006079b sext.w a5,a2 - c0035278: e4be sd a5,72(sp) - c003527a: 66a6 ld a3,72(sp) + c0035444: 0006079b sext.w a5,a2 + c0035448: e4be sd a5,72(sp) + c003544a: 66a6 ld a3,72(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43841 -{ - c003527c: 22813823 sd s0,560(sp) - c0035280: 22113c23 sd ra,568(sp) - c0035284: 22913423 sd s1,552(sp) - c0035288: 23213023 sd s2,544(sp) - c003528c: 21313c23 sd s3,536(sp) - c0035290: 21413823 sd s4,528(sp) - c0035294: 21513423 sd s5,520(sp) - c0035298: 21613023 sd s6,512(sp) - c003529c: ffde sd s7,504(sp) - c003529e: fbe2 sd s8,496(sp) - c00352a0: f7e6 sd s9,488(sp) - c00352a2: f3ea sd s10,480(sp) - c00352a4: efee sd s11,472(sp) - c00352a6: e12e sd a1,128(sp) - c00352a8: e532 sd a2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43849 +{ + c003544c: 22813823 sd s0,560(sp) + c0035450: 22113c23 sd ra,568(sp) + c0035454: 22913423 sd s1,552(sp) + c0035458: 23213023 sd s2,544(sp) + c003545c: 21313c23 sd s3,536(sp) + c0035460: 21413823 sd s4,528(sp) + c0035464: 21513423 sd s5,520(sp) + c0035468: 21613023 sd s6,512(sp) + c003546c: ffde sd s7,504(sp) + c003546e: fbe2 sd s8,496(sp) + c0035470: f7e6 sd s9,488(sp) + c0035472: f3ea sd s10,480(sp) + c0035474: efee sd s11,472(sp) + c0035476: e12e sd a1,128(sp) + c0035478: e532 sd a2,136(sp) js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00352aa: 57fd li a5,-1 + c003547a: 57fd li a5,-1 js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43841 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43849 { - c00352ac: 842a mv s0,a0 + c003547c: 842a mv s0,a0 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43497 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43505 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00352ae: 02f69863 bne a3,a5,c00352de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 + c003547e: 02f69863 bne a3,a5,c00354ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c00352b2: 0065d683 lhu a3,6(a1) - c00352b6: 47c9 li a5,18 - c00352b8: 84ae mv s1,a1 - c00352ba: 02f69263 bne a3,a5,c00352de + c0035482: 0065d683 lhu a3,6(a1) + c0035486: 47c9 li a5,18 + c0035488: 84ae mv s1,a1 + c003548a: 02f69263 bne a3,a5,c00354ae js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 str_val = JS_ToString(ctx, argv[0]); - c00352be: 630c ld a1,0(a4) - c00352c0: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43856 + c003548e: 630c ld a1,0(a4) + c0035490: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43864 if (JS_IsException(str_val)) - c00352c2: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43855 + c0035492: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 str_val = JS_ToString(ctx, argv[0]); - c00352c4: d12e50ef jal ra,c001a7d6 - c00352c8: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43856 + c0035494: d12e50ef jal ra,c001a9a6 + c0035498: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43864 if (JS_IsException(str_val)) - c00352ca: 47c6 lw a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43855 + c003549a: 47c6 lw a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 str_val = JS_ToString(ctx, argv[0]); - c00352cc: f02a sd a0,32(sp) - c00352ce: e1aa sd a0,192(sp) - c00352d0: e5ae sd a1,200(sp) - c00352d2: ec2a sd a0,24(sp) - c00352d4: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43856 + c003549c: f02a sd a0,32(sp) + c003549e: e1aa sd a0,192(sp) + c00354a0: e5ae sd a1,200(sp) + c00354a2: ec2a sd a0,24(sp) + c00354a4: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43864 if (JS_IsException(str_val)) - c00352d6: 05279563 bne a5,s2,c0035320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43857 + c00354a6: 05279563 bne a5,s2,c00354f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43865 return JS_EXCEPTION; - c00352da: f202 sd zero,288(sp) - c00352dc: a039 j c00352ea + c00354aa: f202 sd zero,288(sp) + c00354ac: a039 j c00354ba js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43511 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c00352de: 45c9 li a1,18 - c00352e0: 8522 mv a0,s0 - c00352e2: a6ede0ef jal ra,c0013550 + c00354ae: 45c9 li a1,18 + c00354b0: 8522 mv a0,s0 + c00354b2: 98cde0ef jal ra,c001363e js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 return JS_EXCEPTION; - c00352e6: 4799 li a5,6 - c00352e8: f202 sd zero,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43857 + c00354b6: 4799 li a5,6 + c00354b8: f202 sd zero,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43865 return JS_EXCEPTION; - c00352ea: f63e sd a5,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44037 (discriminator 1) -} - c00352ec: 23813083 ld ra,568(sp) - c00352f0: 23013403 ld s0,560(sp) - c00352f4: 7512 ld a0,288(sp) - c00352f6: 75b2 ld a1,296(sp) - c00352f8: 22813483 ld s1,552(sp) - c00352fc: 22013903 ld s2,544(sp) - c0035300: 21813983 ld s3,536(sp) - c0035304: 21013a03 ld s4,528(sp) - c0035308: 20813a83 ld s5,520(sp) - c003530c: 20013b03 ld s6,512(sp) - c0035310: 7bfe ld s7,504(sp) - c0035312: 7c5e ld s8,496(sp) - c0035314: 7cbe ld s9,488(sp) - c0035316: 7d1e ld s10,480(sp) - c0035318: 6dfe ld s11,472(sp) - c003531a: 24010113 addi sp,sp,576 - c003531e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43859 + c00354ba: f63e sd a5,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44045 (discriminator 1) +} + c00354bc: 23813083 ld ra,568(sp) + c00354c0: 23013403 ld s0,560(sp) + c00354c4: 7512 ld a0,288(sp) + c00354c6: 75b2 ld a1,296(sp) + c00354c8: 22813483 ld s1,552(sp) + c00354cc: 22013903 ld s2,544(sp) + c00354d0: 21813983 ld s3,536(sp) + c00354d4: 21013a03 ld s4,528(sp) + c00354d8: 20813a83 ld s5,520(sp) + c00354dc: 20013b03 ld s6,512(sp) + c00354e0: 7bfe ld s7,504(sp) + c00354e2: 7c5e ld s8,496(sp) + c00354e4: 7cbe ld s9,488(sp) + c00354e6: 7d1e ld s10,480(sp) + c00354e8: 6dfe ld s11,472(sp) + c00354ea: 24010113 addi sp,sp,576 + c00354ee: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 ret = JS_EXCEPTION; - c0035320: 67aa ld a5,136(sp) - c0035322: 670a ld a4,128(sp) + c00354f0: 67aa ld a5,136(sp) + c00354f2: 670a ld a4,128(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0035324: 05600693 li a3,86 - c0035328: 863e mv a2,a5 - c003532a: 4801 li a6,0 - c003532c: 85ba mv a1,a4 - c003532e: 8522 mv a0,s0 - c0035330: e7be sd a5,456(sp) + c00354f4: 05600693 li a3,86 + c00354f8: 863e mv a2,a5 + c00354fa: 4801 li a6,0 + c00354fc: 85ba mv a1,a4 + c00354fe: 8522 mv a0,s0 + c0035500: e7be sd a5,456(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43859 - c0035332: f902 sd zero,176(sp) - c0035334: fd02 sd zero,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43860 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 + c0035502: f902 sd zero,176(sp) + c0035504: fd02 sd zero,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43868 obj = JS_NULL; - c0035336: e982 sd zero,208(sp) - c0035338: ed82 sd zero,216(sp) + c0035506: e982 sd zero,208(sp) + c0035508: ed82 sd zero,216(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003533a: e3ba sd a4,448(sp) - c003533c: d06dc0ef jal ra,c0011842 - c0035340: e32a sd a0,384(sp) - c0035342: e72e sd a1,392(sp) - c0035344: f1aa sd a0,224(sp) - c0035346: f5ae sd a1,232(sp) + c003550a: e3ba sd a4,448(sp) + c003550c: c24dc0ef jal ra,c0011930 + c0035510: e32a sd a0,384(sp) + c0035512: e72e sd a1,392(sp) + c0035514: f1aa sd a0,224(sp) + c0035516: f5ae sd a1,232(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43875 if (JS_IsException(val) || JS_ToLengthFree(ctx, &last_index, val)) - c0035348: 0005879b sext.w a5,a1 + c0035518: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003534c: 862a mv a2,a0 - c003534e: 86ae mv a3,a1 + c003551c: 862a mv a2,a0 + c003551e: 86ae mv a3,a1 js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 - c0035350: 49278563 beq a5,s2,c00357da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 (discriminator 1) - c0035354: 092c addi a1,sp,152 - c0035356: 8522 mv a0,s0 - c0035358: cb4e90ef jal ra,c001e80c - c003535c: e02a sd a0,0(sp) - c003535e: 46051e63 bnez a0,c00357da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43875 + c0035520: 49278563 beq a5,s2,c00359aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43875 (discriminator 1) + c0035524: 092c addi a1,sp,152 + c0035526: 8522 mv a0,s0 + c0035528: cb4e90ef jal ra,c001e9dc + c003552c: e02a sd a0,0(sp) + c003552e: 46051e63 bnez a0,c00359aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43878 re_bytecode = re->bytecode->u.str8; - c0035362: 0384b983 ld s3,56(s1) - c0035366: 09c1 addi s3,s3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 + c0035532: 0384b983 ld s3,56(s1) + c0035536: 09c1 addi s3,s3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43879 re_flags = lre_get_flags(re_bytecode); - c0035368: 854e mv a0,s3 - c003536a: 027100ef jal ra,c0045b90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43872 + c0035538: 854e mv a0,s3 + c003553a: 027100ef jal ra,c0045d60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43880 if ((re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY)) == 0) { - c003536e: 02157913 andi s2,a0,33 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 + c003553e: 02157913 andi s2,a0,33 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43879 re_flags = lre_get_flags(re_bytecode); - c0035372: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43872 + c0035542: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43880 if ((re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY)) == 0) { - c0035374: 00091363 bnez s2,c003537a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43873 + c0035544: 00091363 bnez s2,c003554a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43881 last_index = 0; - c0035378: ed02 sd zero,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43876 + c0035548: ed02 sd zero,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43884 capture_count = lre_get_capture_count(re_bytecode); - c003537a: 854e mv a0,s3 - c003537c: 00f100ef jal ra,c0045b8a - c0035380: ecaa sd a0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43864 + c003554a: 854e mv a0,s3 + c003554c: 00f100ef jal ra,c0045d5a + c0035550: ecaa sd a0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43872 capture = NULL; - c0035382: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43877 + c0035552: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43885 if (capture_count > 0) { - c0035384: 00a05a63 blez a0,c0035398 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43878 + c0035554: 00a05a63 blez a0,c0035568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43886 capture = js_malloc(ctx, sizeof(capture[0]) * capture_count * 2); - c0035388: 00451593 slli a1,a0,0x4 - c003538c: 8522 mv a0,s0 - c003538e: 8bfdf0ef jal ra,c0014c4c - c0035392: 8caa mv s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43879 + c0035558: 00451593 slli a1,a0,0x4 + c003555c: 8522 mv a0,s0 + c003555e: fdcdf0ef jal ra,c0014d3a + c0035562: 8caa mv s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43887 if (!capture) - c0035394: 44050d63 beqz a0,c00357ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43884 + c0035564: 44050d63 beqz a0,c00359be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43892 if (last_index > str->len) { - c0035398: 7782 ld a5,32(sp) - c003539a: 66ea ld a3,152(sp) - c003539c: 43d0 lw a2,4(a5) - c003539e: 02161793 slli a5,a2,0x21 - c00353a2: 0217d713 srli a4,a5,0x21 - c00353a6: 02d75a63 bge a4,a3,c00353da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43894 + c0035568: 7782 ld a5,32(sp) + c003556a: 66ea ld a3,152(sp) + c003556c: 43d0 lw a2,4(a5) + c003556e: 02161793 slli a5,a2,0x21 + c0035572: 0217d713 srli a4,a5,0x21 + c0035576: 02d75a63 bge a4,a3,c00355aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43902 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c00353aa: 658a ld a1,128(sp) - c00353ac: 662a ld a2,136(sp) - c00353ae: 4701 li a4,0 - c00353b0: 4781 li a5,0 - c00353b2: 05600693 li a3,86 - c00353b6: 8522 mv a0,s0 - c00353b8: d41fa0ef jal ra,c00300f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c003557a: 658a ld a1,128(sp) + c003557c: 662a ld a2,136(sp) + c003557e: 4701 li a4,0 + c0035580: 4781 li a5,0 + c0035582: 05600693 li a3,86 + c0035586: 8522 mv a0,s0 + c0035588: d41fa0ef jal ra,c00302c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00353bc: 448d li s1,3 - c00353be: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c003558c: 448d li s1,3 + c003558e: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c00353c0: 490d li s2,3 - c00353c2: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43894 + c0035590: 490d li s2,3 + c0035592: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43902 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c00353c4: 06054363 bltz a0,c003542a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43860 + c0035594: 06054363 bltz a0,c00355fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43868 obj = JS_NULL; - c00353c8: 4c09 li s8,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44027 + c0035598: 4c09 li s8,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44035 ret = obj; - c00353ca: 67ce ld a5,208(sp) - c00353cc: 8be2 mv s7,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44028 + c003559a: 67ce ld a5,208(sp) + c003559c: 8be2 mv s7,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44036 obj = JS_UNDEFINED; - c00353ce: e982 sd zero,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44027 + c003559e: e982 sd zero,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44035 ret = obj; - c00353d0: f93e sd a5,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44028 + c00355a0: f93e sd a5,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44036 obj = JS_UNDEFINED; - c00353d2: 498d li s3,3 - c00353d4: 4a81 li s5,0 - c00353d6: 4c0d li s8,3 - c00353d8: aa05 j c0035508 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43882 + c00355a2: 498d li s3,3 + c00355a4: 4a81 li s5,0 + c00355a6: 4c0d li s8,3 + c00355a8: aa05 j c00356d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43890 shift = str->is_wide_char; - c00353da: 01f6579b srliw a5,a2,0x1f - c00353de: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43883 + c00355aa: 01f6579b srliw a5,a2,0x1f + c00355ae: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43891 str_buf = str->u.str8; - c00353e0: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43887 + c00355b0: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43895 rc = lre_exec(capture, re_bytecode, - c00353e2: 8822 mv a6,s0 - c00353e4: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43883 + c00355b2: 8822 mv a6,s0 + c00355b4: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43891 str_buf = str->u.str8; - c00353e6: 07c1 addi a5,a5,16 - c00353e8: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43887 + c00355b6: 07c1 addi a5,a5,16 + c00355b8: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43895 rc = lre_exec(capture, re_bytecode, - c00353ea: 6606 ld a2,64(sp) - c00353ec: 77e2 ld a5,56(sp) - c00353ee: 85ce mv a1,s3 - c00353f0: 8566 mv a0,s9 - c00353f2: 6a8100ef jal ra,c0045a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43891 + c00355ba: 6606 ld a2,64(sp) + c00355bc: 77e2 ld a5,56(sp) + c00355be: 85ce mv a1,s3 + c00355c0: 8566 mv a0,s9 + c00355c2: 6a8100ef jal ra,c0045c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43899 if (rc != 1) { - c00353f6: 4785 li a5,1 - c00353f8: 02f50c63 beq a0,a5,c0035430 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43892 + c00355c6: 4785 li a5,1 + c00355c8: 02f50c63 beq a0,a5,c0035600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43900 if (rc >= 0) { - c00353fc: 00054c63 bltz a0,c0035414 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43893 + c00355cc: 00054c63 bltz a0,c00355e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43901 if (rc == 2 || (re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY))) { - c0035400: 4789 li a5,2 - c0035402: faf504e3 beq a0,a5,c00353aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43893 (discriminator 1) - c0035406: fa0912e3 bnez s2,c00353aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00355d0: 4789 li a5,2 + c00355d2: faf504e3 beq a0,a5,c003557a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43901 (discriminator 1) + c00355d6: fa0912e3 bnez s2,c003557a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c003540a: 448d li s1,3 - c003540c: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c00355da: 448d li s1,3 + c00355dc: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c003540e: 490d li s2,3 - c0035410: 4b01 li s6,0 - c0035412: bf5d j c00353c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43899 + c00355de: 490d li s2,3 + c00355e0: 4b01 li s6,0 + c00355e2: bf5d j c0035598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43907 JS_ThrowInternalError(ctx, "out of memory in regexp execution"); - c0035414: 0002b597 auipc a1,0x2b - c0035418: 25c58593 addi a1,a1,604 # c0060670 - c003541c: 8522 mv a0,s0 - c003541e: d66df0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00355e4: 0002b597 auipc a1,0x2b + c00355e8: 2ec58593 addi a1,a1,748 # c00608d0 + c00355ec: 8522 mv a0,s0 + c00355ee: c84df0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c0035422: 448d li s1,3 - c0035424: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c00355f2: 448d li s1,3 + c00355f4: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c0035426: 490d li s2,3 - c0035428: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 + c00355f6: 490d li s2,3 + c00355f8: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43869 groups = JS_UNDEFINED; - c003542a: 498d li s3,3 - c003542c: 4a81 li s5,0 - c003542e: a6f1 j c00357fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43904 + c00355fa: 498d li s3,3 + c00355fc: 4a81 li s5,0 + c00355fe: a6f1 j c00359ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43912 if (re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY)) { - c0035430: 02091563 bnez s2,c003545a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43909 + c0035600: 02091563 bnez s2,c003562a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43917 obj = JS_NewArray(ctx); - c0035434: 8522 mv a0,s0 - c0035436: b89e10ef jal ra,c0016fbe - c003543a: f42e sd a1,40(sp) - c003543c: e9aa sd a0,208(sp) - c003543e: edae sd a1,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43910 + c0035604: 8522 mv a0,s0 + c0035606: b89e10ef jal ra,c001718e + c003560a: f42e sd a1,40(sp) + c003560c: e9aa sd a0,208(sp) + c003560e: edae sd a1,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43918 if (JS_IsException(obj)) - c0035440: 0005879b sext.w a5,a1 - c0035444: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43909 + c0035610: 0005879b sext.w a5,a1 + c0035614: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43917 obj = JS_NewArray(ctx); - c0035446: 8c2e mv s8,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43910 + c0035616: 8c2e mv s8,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43918 if (JS_IsException(obj)) - c0035448: 05279263 bne a5,s2,c003548c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c0035618: 05279263 bne a5,s2,c003565c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c003544c: 448d li s1,3 - c003544e: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c003561c: 448d li s1,3 + c003561e: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c0035450: 490d li s2,3 - c0035452: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44000 + c0035620: 490d li s2,3 + c0035622: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44008 t = groups, groups = JS_UNDEFINED; - c0035454: 498d li s3,3 - c0035456: 4a81 li s5,0 - c0035458: a09d j c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43906 + c0035624: 498d li s3,3 + c0035626: 4a81 li s5,0 + c0035628: a09d j c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43914 JS_NewInt32(ctx, (capture[1] - str_buf) >> shift)) < 0) - c003545a: 6706 ld a4,64(sp) - c003545c: 008cb783 ld a5,8(s9) + c003562a: 6706 ld a4,64(sp) + c003562c: 008cb783 ld a5,8(s9) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0035460: eb02 sd zero,400(sp) + c0035630: eb02 sd zero,400(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43913 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0035462: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43906 + c0035632: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43914 JS_NewInt32(ctx, (capture[1] - str_buf) >> shift)) < 0) - c0035464: 8f99 sub a5,a5,a4 - c0035466: 7762 ld a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43905 + c0035634: 8f99 sub a5,a5,a4 + c0035636: 7762 ld a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43913 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0035468: 662a ld a2,136(sp) - c003546a: 05600693 li a3,86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43906 + c0035638: 662a ld a2,136(sp) + c003563a: 05600693 li a3,86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43914 JS_NewInt32(ctx, (capture[1] - str_buf) >> shift)) < 0) - c003546e: 40e7d7b3 sra a5,a5,a4 + c003563e: 40e7d7b3 sra a5,a5,a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0035472: 18f12823 sw a5,400(sp) - c0035476: 675a ld a4,400(sp) + c0035642: 18f12823 sw a5,400(sp) + c0035646: 675a ld a4,400(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43905 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43913 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0035478: 4781 li a5,0 - c003547a: 8522 mv a0,s0 + c0035648: 4781 li a5,0 + c003564a: 8522 mv a0,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003547c: ef02 sd zero,408(sp) - c003547e: e2ba sd a4,320(sp) - c0035480: e682 sd zero,328(sp) + c003564c: ef02 sd zero,408(sp) + c003564e: e2ba sd a4,320(sp) + c0035650: e682 sd zero,328(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43905 - c0035482: c77fa0ef jal ra,c00300f8 - c0035486: fa0557e3 bgez a0,c0035434 - c003548a: bf61 j c0035422 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43913 + c0035652: c77fa0ef jal ra,c00302c8 + c0035656: fa0557e3 bgez a0,c0035604 + c003565a: bf61 j c00355f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43921 group_name_ptr = lre_get_groupnames(re_bytecode); - c003548c: 854e mv a0,s3 - c003548e: 708100ef jal ra,c0045b96 - c0035492: 8daa mv s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43914 + c003565c: 854e mv a0,s3 + c003565e: 708100ef jal ra,c0045d66 + c0035662: 8daa mv s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43922 if (group_name_ptr) { - c0035494: c51d beqz a0,c00354c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43915 + c0035664: c51d beqz a0,c0035692 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43923 groups = JS_NewObjectProto(ctx, JS_NULL); - c0035496: 4789 li a5,2 - c0035498: 4581 li a1,0 - c003549a: 4609 li a2,2 - c003549c: 8522 mv a0,s0 - c003549e: e7be sd a5,456(sp) - c00354a0: e382 sd zero,448(sp) - c00354a2: 88de10ef jal ra,c0016d2e - c00354a6: f9aa sd a0,240(sp) - c00354a8: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43916 + c0035666: 4789 li a5,2 + c0035668: 4581 li a1,0 + c003566a: 4609 li a2,2 + c003566c: 8522 mv a0,s0 + c003566e: e7be sd a5,456(sp) + c0035670: e382 sd zero,448(sp) + c0035672: 88de10ef jal ra,c0016efe + c0035676: f9aa sd a0,240(sp) + c0035678: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43924 if (JS_IsException(groups)) - c00354aa: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43915 + c003567a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43923 groups = JS_NewObjectProto(ctx, JS_NULL); - c00354ae: 8aaa mv s5,a0 - c00354b0: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43916 + c003567e: 8aaa mv s5,a0 + c0035680: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43924 if (JS_IsException(groups)) - c00354b2: 01279a63 bne a5,s2,c00354c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c0035682: 01279a63 bne a5,s2,c0035696 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00354b6: 448d li s1,3 - c00354b8: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c0035686: 448d li s1,3 + c0035688: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c00354ba: 490d li s2,3 - c00354bc: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43859 + c003568a: 490d li s2,3 + c003568c: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 ret = JS_EXCEPTION; - c00354be: 4b99 li s7,6 - c00354c0: a0a1 j c0035508 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 + c003568e: 4b99 li s7,6 + c0035690: a0a1 j c00356d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43869 groups = JS_UNDEFINED; - c00354c2: 4a81 li s5,0 - c00354c4: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43919 + c0035692: 4a81 li s5,0 + c0035694: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43927 if (re_flags & LRE_FLAG_INDICES) { - c00354c6: 0404f493 andi s1,s1,64 - c00354ca: c0c1 beqz s1,c003554a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43920 + c0035696: 0404f493 andi s1,s1,64 + c003569a: c0c1 beqz s1,c003571a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43928 indices = JS_NewArray(ctx); - c00354cc: 8522 mv a0,s0 - c00354ce: af1e10ef jal ra,c0016fbe - c00354d2: e22a sd a0,256(sp) - c00354d4: e62e sd a1,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43921 + c003569c: 8522 mv a0,s0 + c003569e: af1e10ef jal ra,c001718e + c00356a2: e22a sd a0,256(sp) + c00356a4: e62e sd a1,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43929 if (JS_IsException(indices)) - c00354d6: 0005879b sext.w a5,a1 - c00354da: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43920 + c00356a6: 0005879b sext.w a5,a1 + c00356aa: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43928 indices = JS_NewArray(ctx); - c00354dc: 8b2a mv s6,a0 - c00354de: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43921 + c00356ac: 8b2a mv s6,a0 + c00356ae: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43929 if (JS_IsException(indices)) - c00354e0: 31778f63 beq a5,s7,c00357fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43923 + c00356b0: 31778f63 beq a5,s7,c00359ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43931 if (group_name_ptr) { - c00354e4: 140d8363 beqz s11,c003562a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43924 + c00356b4: 140d8363 beqz s11,c00357fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43932 indices_groups = JS_NewObjectProto(ctx, JS_NULL); - c00354e8: 4789 li a5,2 - c00354ea: 4581 li a1,0 - c00354ec: 4609 li a2,2 - c00354ee: 8522 mv a0,s0 - c00354f0: e7be sd a5,456(sp) - c00354f2: e382 sd zero,448(sp) - c00354f4: 83be10ef jal ra,c0016d2e - c00354f8: ea2a sd a0,272(sp) - c00354fa: ee2e sd a1,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43925 + c00356b8: 4789 li a5,2 + c00356ba: 4581 li a1,0 + c00356bc: 4609 li a2,2 + c00356be: 8522 mv a0,s0 + c00356c0: e7be sd a5,456(sp) + c00356c2: e382 sd zero,448(sp) + c00356c4: 83be10ef jal ra,c0016efe + c00356c8: ea2a sd a0,272(sp) + c00356ca: ee2e sd a1,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43933 if (JS_IsException(indices_groups)) - c00354fc: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43924 + c00356cc: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43932 indices_groups = JS_NewObjectProto(ctx, JS_NULL); - c0035500: 8a2a mv s4,a0 - c0035502: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43925 + c00356d0: 8a2a mv s4,a0 + c00356d2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43933 if (JS_IsException(indices_groups)) - c0035504: 05779763 bne a5,s7,c0035552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44030 + c00356d4: 05779763 bne a5,s7,c0035722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44038 JS_FreeValue(ctx, indices_groups); - c0035508: 85d2 mv a1,s4 - c003550a: 8626 mv a2,s1 - c003550c: 8522 mv a0,s0 - c003550e: e2ad20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44031 + c00356d8: 85d2 mv a1,s4 + c00356da: 8626 mv a2,s1 + c00356dc: 8522 mv a0,s0 + c00356de: d48d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44039 JS_FreeValue(ctx, indices); - c0035512: 85da mv a1,s6 - c0035514: 864a mv a2,s2 - c0035516: 8522 mv a0,s0 - c0035518: e20d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44032 + c00356e2: 85da mv a1,s6 + c00356e4: 864a mv a2,s2 + c00356e6: 8522 mv a0,s0 + c00356e8: d3ed20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44040 JS_FreeValue(ctx, str_val); - c003551c: 65e2 ld a1,24(sp) - c003551e: 6642 ld a2,16(sp) - c0035520: 8522 mv a0,s0 - c0035522: e16d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44033 + c00356ec: 65e2 ld a1,24(sp) + c00356ee: 6642 ld a2,16(sp) + c00356f0: 8522 mv a0,s0 + c00356f2: d34d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44041 JS_FreeValue(ctx, groups); - c0035526: 85d6 mv a1,s5 - c0035528: 864e mv a2,s3 - c003552a: 8522 mv a0,s0 - c003552c: e0cd20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44034 + c00356f6: 85d6 mv a1,s5 + c00356f8: 864e mv a2,s3 + c00356fa: 8522 mv a0,s0 + c00356fc: d2ad20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44042 JS_FreeValue(ctx, obj); - c0035530: 65ce ld a1,208(sp) - c0035532: 8662 mv a2,s8 - c0035534: 8522 mv a0,s0 - c0035536: e02d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44035 + c0035700: 65ce ld a1,208(sp) + c0035702: 8662 mv a2,s8 + c0035704: 8522 mv a0,s0 + c0035706: d20d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44043 js_free(ctx, capture); - c003553a: 85e6 mv a1,s9 - c003553c: 8522 mv a0,s0 - c003553e: 8fdd10ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44036 + c003570a: 85e6 mv a1,s9 + c003570c: 8522 mv a0,s0 + c003570e: 81bd10ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44044 return ret; - c0035542: 77ca ld a5,176(sp) - c0035544: f65e sd s7,296(sp) - c0035546: f23e sd a5,288(sp) - c0035548: b355 j c00352ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c0035712: 77ca ld a5,176(sp) + c0035714: f65e sd s7,296(sp) + c0035716: f23e sd a5,288(sp) + c0035718: b355 j c00354bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c003554a: 448d li s1,3 - c003554c: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c003571a: 448d li s1,3 + c003571c: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c003554e: 490d li s2,3 - c0035550: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43947 + c003571e: 490d li s2,3 + c0035720: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43955 if (!JS_IsUndefined(indices)) { - c0035552: 0009079b sext.w a5,s2 - c0035556: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43974 + c0035722: 0009079b sext.w a5,s2 + c0035726: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43982 if (JS_DefinePropertyValueUint32(ctx, indices, i, val, - c0035558: 6791 lui a5,0x4 - c003555a: 079d addi a5,a5,7 - c003555c: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43966 + c0035728: 6791 lui a5,0x4 + c003572a: 079d addi a5,a5,7 + c003572c: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43974 if (name && !JS_IsUndefined(indices_groups)) { - c003555e: 0004879b sext.w a5,s1 - c0035562: f8be sd a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43930 (discriminator 1) + c003572e: 0004879b sext.w a5,s1 + c0035732: f8be sd a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43938 (discriminator 1) for(i = 0; i < capture_count; i++) { - c0035564: 6782 ld a5,0(sp) - c0035566: 6766 ld a4,88(sp) - c0035568: 0ce7c463 blt a5,a4,c0035630 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44001 + c0035734: 6782 ld a5,0(sp) + c0035736: 6766 ld a4,88(sp) + c0035738: 0ce7c463 blt a5,a4,c0035800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44009 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_groups, - c003556c: 77a2 ld a5,40(sp) - c003556e: 65ce ld a1,208(sp) - c0035570: 7622 ld a2,40(sp) - c0035572: 6b91 lui s7,0x4 - c0035574: edbe sd a5,216(sp) - c0035576: 007b8813 addi a6,s7,7 # 4007 <__clzdi2-0xbfffbff9> - c003557a: 8756 mv a4,s5 - c003557c: 87ce mv a5,s3 - c003557e: 08800693 li a3,136 - c0035582: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44000 + c003573c: 77a2 ld a5,40(sp) + c003573e: 65ce ld a1,208(sp) + c0035740: 7622 ld a2,40(sp) + c0035742: 6b91 lui s7,0x4 + c0035744: edbe sd a5,216(sp) + c0035746: 007b8813 addi a6,s7,7 # 4007 <__clzdi2-0xbfffbff9> + c003574a: 8756 mv a4,s5 + c003574c: 87ce mv a5,s3 + c003574e: 08800693 li a3,136 + c0035752: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44008 t = groups, groups = JS_UNDEFINED; - c0035584: f156 sd s5,160(sp) - c0035586: f54e sd s3,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44001 + c0035754: f156 sd s5,160(sp) + c0035756: f54e sd s3,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44009 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_groups, - c0035588: a2fdd0ef jal ra,c0012fb6 - c003558c: ec0544e3 bltz a0,c0035454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44006 + c0035758: 94ddd0ef jal ra,c00130a4 + c003575c: ec0544e3 bltz a0,c0035624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44014 t = JS_NewInt32(ctx, (capture[0] - str_buf) >> shift); - c0035590: 6706 ld a4,64(sp) - c0035592: 000cb783 ld a5,0(s9) + c0035760: 6706 ld a4,64(sp) + c0035762: 000cb783 ld a5,0(s9) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0035596: 1c012223 sw zero,452(sp) + c0035766: 1c012223 sw zero,452(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44007 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44015 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_index, t, prop_flags) < 0) - c003559a: 65ce ld a1,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44006 + c003576a: 65ce ld a1,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44014 t = JS_NewInt32(ctx, (capture[0] - str_buf) >> shift); - c003559c: 8f99 sub a5,a5,a4 - c003559e: 7762 ld a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44007 + c003576c: 8f99 sub a5,a5,a4 + c003576e: 7762 ld a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44015 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_index, t, prop_flags) < 0) - c00355a0: 666e ld a2,216(sp) - c00355a2: 007b8813 addi a6,s7,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44006 + c0035770: 666e ld a2,216(sp) + c0035772: 007b8813 addi a6,s7,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44014 t = JS_NewInt32(ctx, (capture[0] - str_buf) >> shift); - c00355a6: 40e7d7b3 sra a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44007 + c0035776: 40e7d7b3 sra a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44015 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_index, t, prop_flags) < 0) - c00355aa: 1cf12023 sw a5,448(sp) - c00355ae: 671e ld a4,448(sp) - c00355b0: 4781 li a5,0 - c00355b2: 05800693 li a3,88 - c00355b6: 8522 mv a0,s0 - c00355b8: e782 sd zero,456(sp) - c00355ba: 9fddd0ef jal ra,c0012fb6 - c00355be: e8054be3 bltz a0,c0035454 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44011 + c003577a: 1cf12023 sw a5,448(sp) + c003577e: 671e ld a4,448(sp) + c0035780: 4781 li a5,0 + c0035782: 05800693 li a3,88 + c0035786: 8522 mv a0,s0 + c0035788: e782 sd zero,456(sp) + c003578a: 91bdd0ef jal ra,c00130a4 + c003578e: e8054be3 bltz a0,c0035624 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44019 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_input, t, prop_flags) < 0) - c00355c2: 7702 ld a4,32(sp) - c00355c4: 67c6 ld a5,80(sp) - c00355c6: 65ce ld a1,208(sp) - c00355c8: 666e ld a2,216(sp) - c00355ca: 007b8813 addi a6,s7,7 - c00355ce: 05900693 li a3,89 - c00355d2: 8522 mv a0,s0 - c00355d4: 9e3dd0ef jal ra,c0012fb6 - c00355d8: 22054863 bltz a0,c0035808 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44014 + c0035792: 7702 ld a4,32(sp) + c0035794: 67c6 ld a5,80(sp) + c0035796: 65ce ld a1,208(sp) + c0035798: 666e ld a2,216(sp) + c003579a: 007b8813 addi a6,s7,7 + c003579e: 05900693 li a3,89 + c00357a2: 8522 mv a0,s0 + c00357a4: 901dd0ef jal ra,c00130a4 + c00357a8: 22054863 bltz a0,c00359d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44022 if (!JS_IsUndefined(indices)) { - c00355dc: 0009079b sext.w a5,s2 - c00355e0: 470d li a4,3 - c00355e2: 04e78063 beq a5,a4,c0035622 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44016 + c00357ac: 0009079b sext.w a5,s2 + c00357b0: 470d li a4,3 + c00357b2: 04e78063 beq a5,a4,c00357f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44024 if (JS_DefinePropertyValue(ctx, indices, JS_ATOM_groups, - c00355e6: 007b8813 addi a6,s7,7 - c00355ea: 8752 mv a4,s4 - c00355ec: 87a6 mv a5,s1 - c00355ee: 08800693 li a3,136 - c00355f2: 85da mv a1,s6 - c00355f4: 864a mv a2,s2 - c00355f6: 8522 mv a0,s0 - c00355f8: 9bfdd0ef jal ra,c0012fb6 - c00355fc: 20054463 bltz a0,c0035804 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44021 + c00357b6: 007b8813 addi a6,s7,7 + c00357ba: 8752 mv a4,s4 + c00357bc: 87a6 mv a5,s1 + c00357be: 08800693 li a3,136 + c00357c2: 85da mv a1,s6 + c00357c4: 864a mv a2,s2 + c00357c6: 8522 mv a0,s0 + c00357c8: 8dddd0ef jal ra,c00130a4 + c00357cc: 20054463 bltz a0,c00359d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44029 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_indices, - c0035600: 65ce ld a1,208(sp) - c0035602: 666e ld a2,216(sp) - c0035604: 875a mv a4,s6 - c0035606: 87ca mv a5,s2 - c0035608: 007b8813 addi a6,s7,7 - c003560c: 08900693 li a3,137 - c0035610: 8522 mv a0,s0 - c0035612: 9a5dd0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44015 + c00357d0: 65ce ld a1,208(sp) + c00357d2: 666e ld a2,216(sp) + c00357d4: 875a mv a4,s6 + c00357d6: 87ca mv a5,s2 + c00357d8: 007b8813 addi a6,s7,7 + c00357dc: 08900693 li a3,137 + c00357e0: 8522 mv a0,s0 + c00357e2: 8c3dd0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44023 t = indices_groups, indices_groups = JS_UNDEFINED; - c0035616: 448d li s1,3 - c0035618: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44020 + c00357e6: 448d li s1,3 + c00357e8: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44028 t = indices, indices = JS_UNDEFINED; - c003561a: 490d li s2,3 - c003561c: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44021 + c00357ea: 490d li s2,3 + c00357ec: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44029 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_indices, - c003561e: 1e054563 bltz a0,c0035808 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44010 + c00357ee: 1e054563 bltz a0,c00359d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44018 t = str_val, str_val = JS_UNDEFINED; - c0035622: 478d li a5,3 - c0035624: e83e sd a5,16(sp) - c0035626: ec02 sd zero,24(sp) - c0035628: b34d j c00353ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00357f2: 478d li a5,3 + c00357f4: e83e sd a5,16(sp) + c00357f6: ec02 sd zero,24(sp) + c00357f8: b34d j c003559a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c003562a: 4a01 li s4,0 - c003562c: 448d li s1,3 - c003562e: b715 j c0035552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43932 + c00357fa: 4a01 li s4,0 + c00357fc: 448d li s1,3 + c00357fe: b715 j c0035722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43940 uint8_t **match = &capture[2 * i]; - c0035630: 4782 lw a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43931 + c0035800: 4782 lw a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43939 const char *name = NULL; - c0035632: e402 sd zero,8(sp) - c0035634: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43932 + c0035802: e402 sd zero,8(sp) + c0035804: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43940 uint8_t **match = &capture[2 * i]; - c0035636: 6782 ld a5,0(sp) - c0035638: 00179d1b slliw s10,a5,0x1 - c003563c: 0d0e slli s10,s10,0x3 - c003563e: 9d66 add s10,s10,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43937 + c0035806: 6782 ld a5,0(sp) + c0035808: 00179d1b slliw s10,a5,0x1 + c003580c: 0d0e slli s10,s10,0x3 + c003580e: 9d66 add s10,s10,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43945 if (group_name_ptr && i > 0) { - c0035640: 000d8c63 beqz s11,c0035658 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43937 (discriminator 1) - c0035644: cb91 beqz a5,c0035658 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43938 + c0035810: 000d8c63 beqz s11,c0035828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43945 (discriminator 1) + c0035814: cb91 beqz a5,c0035828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43946 if (*group_name_ptr) name = group_name_ptr; - c0035646: 000dc783 lbu a5,0(s11) - c003564a: c391 beqz a5,c003564e - c003564c: e46e sd s11,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43939 + c0035816: 000dc783 lbu a5,0(s11) + c003581a: c391 beqz a5,c003581e + c003581c: e46e sd s11,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43947 group_name_ptr += strlen(group_name_ptr) + 1; - c003564e: 856e mv a0,s11 - c0035650: 360210ef jal ra,c00569b0 - c0035654: 0505 addi a0,a0,1 - c0035656: 9daa add s11,s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43942 + c003581e: 856e mv a0,s11 + c0035820: 360210ef jal ra,c0056b80 + c0035824: 0505 addi a0,a0,1 + c0035826: 9daa add s11,s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43950 if (match[0] && match[1]) { - c0035658: 000d3b83 ld s7,0(s10) - c003565c: 040b8a63 beqz s7,c00356b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43942 (discriminator 1) - c0035660: 008d3d03 ld s10,8(s10) - c0035664: 040d0663 beqz s10,c00356b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43943 + c0035828: 000d3b83 ld s7,0(s10) + c003582c: 040b8a63 beqz s7,c0035880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43950 (discriminator 1) + c0035830: 008d3d03 ld s10,8(s10) + c0035834: 040d0663 beqz s10,c0035880 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43951 start = (match[0] - str_buf) >> shift; - c0035668: 6786 ld a5,64(sp) - c003566a: 40fb8bb3 sub s7,s7,a5 - c003566e: 77e2 ld a5,56(sp) - c0035670: 40fbdbb3 sra s7,s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43944 + c0035838: 6786 ld a5,64(sp) + c003583a: 40fb8bb3 sub s7,s7,a5 + c003583e: 77e2 ld a5,56(sp) + c0035840: 40fbdbb3 sra s7,s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43952 end = (match[1] - str_buf) >> shift; - c0035674: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43943 + c0035844: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43951 start = (match[0] - str_buf) >> shift; - c0035676: 2b81 sext.w s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43944 + c0035846: 2b81 sext.w s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43952 end = (match[1] - str_buf) >> shift; - c0035678: 40fd0d33 sub s10,s10,a5 - c003567c: 77e2 ld a5,56(sp) - c003567e: 40fd5d33 sra s10,s10,a5 - c0035682: 2d01 sext.w s10,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43947 + c0035848: 40fd0d33 sub s10,s10,a5 + c003584c: 77e2 ld a5,56(sp) + c003584e: 40fd5d33 sra s10,s10,a5 + c0035852: 2d01 sext.w s10,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43955 if (!JS_IsUndefined(indices)) { - c0035684: 77a6 ld a5,104(sp) - c0035686: 470d li a4,3 - c0035688: 02e79763 bne a5,a4,c00356b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43981 + c0035854: 77a6 ld a5,104(sp) + c0035856: 470d li a4,3 + c0035858: 02e79763 bne a5,a4,c0035886 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43989 if (start != -1) { - c003568c: 57fd li a5,-1 - c003568e: 0efb8c63 beq s7,a5,c0035786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43982 + c003585c: 57fd li a5,-1 + c003585e: 0efb8c63 beq s7,a5,c0035956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43990 val = js_sub_string(ctx, str, start, end); - c0035692: 7582 ld a1,32(sp) - c0035694: 865e mv a2,s7 - c0035696: 86ea mv a3,s10 - c0035698: 8522 mv a0,s0 - c003569a: adfe40ef jal ra,c001a178 - c003569e: e3aa sd a0,448(sp) - c00356a0: e7ae sd a1,456(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43983 + c0035862: 7582 ld a1,32(sp) + c0035864: 865e mv a2,s7 + c0035866: 86ea mv a3,s10 + c0035868: 8522 mv a0,s0 + c003586a: adfe40ef jal ra,c001a348 + c003586e: e3aa sd a0,448(sp) + c0035870: e7ae sd a1,456(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43991 if (JS_IsException(val)) - c00356a2: 0005871b sext.w a4,a1 - c00356a6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43982 + c0035872: 0005871b sext.w a4,a1 + c0035876: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43990 val = js_sub_string(ctx, str, start, end); - c00356a8: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43983 + c0035878: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43991 if (JS_IsException(val)) - c00356aa: 0ef71063 bne a4,a5,c003578a - c00356ae: bd01 j c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43934 + c003587a: 0ef71063 bne a4,a5,c003595a + c003587e: bd01 j c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43942 int end = -1; - c00356b0: 6d26 ld s10,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43933 + c0035880: 6d26 ld s10,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43941 int start = -1; - c00356b2: 8bea mv s7,s10 - c00356b4: bfc1 j c0035684 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43949 + c0035882: 8bea mv s7,s10 + c0035884: bfc1 j c0035854 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43957 if (start != -1) { - c00356b6: 57fd li a5,-1 - c00356b8: 0cfb8463 beq s7,a5,c0035780 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43950 + c0035886: 57fd li a5,-1 + c0035888: 0cfb8463 beq s7,a5,c0035950 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43958 val = JS_NewArray(ctx); - c00356bc: 8522 mv a0,s0 - c00356be: 901e10ef jal ra,c0016fbe - c00356c2: e3aa sd a0,448(sp) - c00356c4: e7ae sd a1,456(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43951 + c003588c: 8522 mv a0,s0 + c003588e: 901e10ef jal ra,c001718e + c0035892: e3aa sd a0,448(sp) + c0035894: e7ae sd a1,456(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43959 if (JS_IsException(val)) - c00356c6: 0005871b sext.w a4,a1 - c00356ca: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43950 + c0035896: 0005871b sext.w a4,a1 + c003589a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43958 val = JS_NewArray(ctx); - c00356cc: 88ae mv a7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43951 + c003589c: 88ae mv a7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43959 if (JS_IsException(val)) - c00356ce: def708e3 beq a4,a5,c00354be + c003589e: def708e3 beq a4,a5,c003568e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00356d2: f302 sd zero,416(sp) - c00356d4: 1b712023 sw s7,416(sp) - c00356d8: 771a ld a4,416(sp) + c00358a2: f302 sd zero,416(sp) + c00358a4: 1b712023 sw s7,416(sp) + c00358a8: 771a ld a4,416(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43953 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43961 if (JS_DefinePropertyValueUint32(ctx, val, 0, - c00356da: 7842 ld a6,48(sp) - c00356dc: 85aa mv a1,a0 - c00356de: 8646 mv a2,a7 - c00356e0: 4781 li a5,0 - c00356e2: 4681 li a3,0 - c00356e4: 8522 mv a0,s0 - c00356e6: fcc6 sd a7,120(sp) + c00358aa: 7842 ld a6,48(sp) + c00358ac: 85aa mv a1,a0 + c00358ae: 8646 mv a2,a7 + c00358b0: 4781 li a5,0 + c00358b2: 4681 li a3,0 + c00358b4: 8522 mv a0,s0 + c00358b6: fcc6 sd a7,120(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00356e8: f702 sd zero,424(sp) - c00356ea: eaba sd a4,336(sp) - c00356ec: ee82 sd zero,344(sp) + c00358b8: f702 sd zero,424(sp) + c00358ba: eaba sd a4,336(sp) + c00358bc: ee82 sd zero,344(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43953 - c00356ee: fe7f30ef jal ra,c00296d4 - c00356f2: 78e6 ld a7,120(sp) - c00356f4: 00055863 bgez a0,c0035704 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43961 + c00358be: fe7f30ef jal ra,c00298a4 + c00358c2: 78e6 ld a7,120(sp) + c00358c4: 00055863 bgez a0,c00358d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43964 JS_FreeValue(ctx, val); - c00356f8: 659e ld a1,448(sp) - c00356fa: 663e ld a2,456(sp) - c00356fc: 8522 mv a0,s0 - c00356fe: c3ad20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43957 + c00358c8: 659e ld a1,448(sp) + c00358ca: 663e ld a2,456(sp) + c00358cc: 8522 mv a0,s0 + c00358ce: b58d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43965 goto fail; - c0035702: bb75 j c00354be + c00358d2: bb75 j c003568e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0035704: fb02 sd zero,432(sp) - c0035706: 1ba12823 sw s10,432(sp) - c003570a: 775a ld a4,432(sp) + c00358d4: fb02 sd zero,432(sp) + c00358d6: 1ba12823 sw s10,432(sp) + c00358da: 775a ld a4,432(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43959 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43967 if (JS_DefinePropertyValueUint32(ctx, val, 1, - c003570c: 7842 ld a6,48(sp) - c003570e: 659e ld a1,448(sp) - c0035710: 663e ld a2,456(sp) - c0035712: 4781 li a5,0 - c0035714: 4685 li a3,1 - c0035716: 8522 mv a0,s0 - c0035718: fcc6 sd a7,120(sp) + c00358dc: 7842 ld a6,48(sp) + c00358de: 659e ld a1,448(sp) + c00358e0: 663e ld a2,456(sp) + c00358e2: 4781 li a5,0 + c00358e4: 4685 li a3,1 + c00358e6: 8522 mv a0,s0 + c00358e8: fcc6 sd a7,120(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003571a: ff02 sd zero,440(sp) - c003571c: f2ba sd a4,352(sp) - c003571e: f682 sd zero,360(sp) + c00358ea: ff02 sd zero,440(sp) + c00358ec: f2ba sd a4,352(sp) + c00358ee: f682 sd zero,360(sp) js_regexp_exec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43959 - c0035720: fb5f30ef jal ra,c00296d4 - c0035724: 78e6 ld a7,120(sp) - c0035726: fc0549e3 bltz a0,c00356f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43966 - if (name && !JS_IsUndefined(indices_groups)) { - c003572a: 67a2 ld a5,8(sp) - c003572c: cb9d beqz a5,c0035762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43966 (discriminator 1) - c003572e: 77c6 ld a5,112(sp) - c0035730: 470d li a4,3 - c0035732: 02e78863 beq a5,a4,c0035762 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43967 + c00358f0: fb5f30ef jal ra,c00298a4 + c00358f4: 78e6 ld a7,120(sp) + c00358f6: fc0549e3 bltz a0,c00358c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43974 + if (name && !JS_IsUndefined(indices_groups)) { + c00358fa: 67a2 ld a5,8(sp) + c00358fc: cb9d beqz a5,c0035932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43974 (discriminator 1) + c00358fe: 77c6 ld a5,112(sp) + c0035900: 470d li a4,3 + c0035902: 02e78863 beq a5,a4,c0035932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43975 val = JS_DupValue(ctx, val); - c0035736: 651e ld a0,448(sp) - c0035738: 85c6 mv a1,a7 - c003573a: e7c6 sd a7,456(sp) - c003573c: f33d00ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43968 + c0035906: 651e ld a0,448(sp) + c0035908: 85c6 mv a1,a7 + c003590a: e7c6 sd a7,456(sp) + c003590c: e51d00ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43976 if (JS_DefinePropertyValueStr(ctx, indices_groups, - c0035740: 7842 ld a6,48(sp) - c0035742: 66a2 ld a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43967 + c0035910: 7842 ld a6,48(sp) + c0035912: 66a2 ld a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43975 val = JS_DupValue(ctx, val); - c0035744: 872a mv a4,a0 - c0035746: e3aa sd a0,448(sp) - c0035748: e7ae sd a1,456(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43968 + c0035914: 872a mv a4,a0 + c0035916: e3aa sd a0,448(sp) + c0035918: e7ae sd a1,456(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43976 if (JS_DefinePropertyValueStr(ctx, indices_groups, - c003574a: 87ae mv a5,a1 - c003574c: fcae sd a1,120(sp) - c003574e: 8626 mv a2,s1 - c0035750: 85d2 mv a1,s4 - c0035752: 8522 mv a0,s0 - c0035754: ea52 sd s4,272(sp) - c0035756: ee26 sd s1,280(sp) - c0035758: 800f40ef jal ra,c0029758 - c003575c: 78e6 ld a7,120(sp) - c003575e: f8054de3 bltz a0,c00356f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43974 + c003591a: 87ae mv a5,a1 + c003591c: fcae sd a1,120(sp) + c003591e: 8626 mv a2,s1 + c0035920: 85d2 mv a1,s4 + c0035922: 8522 mv a0,s0 + c0035924: ea52 sd s4,272(sp) + c0035926: ee26 sd s1,280(sp) + c0035928: 800f40ef jal ra,c0029928 + c003592c: 78e6 ld a7,120(sp) + c003592e: f8054de3 bltz a0,c00358c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43982 if (JS_DefinePropertyValueUint32(ctx, indices, i, val, - c0035762: 7842 ld a6,48(sp) - c0035764: 671e ld a4,448(sp) - c0035766: 7686 ld a3,96(sp) - c0035768: 87c6 mv a5,a7 - c003576a: 85da mv a1,s6 - c003576c: 864a mv a2,s2 - c003576e: 8522 mv a0,s0 - c0035770: e25a sd s6,256(sp) - c0035772: e64a sd s2,264(sp) - c0035774: e7c6 sd a7,456(sp) - c0035776: f5ff30ef jal ra,c00296d4 - c003577a: f00559e3 bgez a0,c003568c - c003577e: b381 j c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43948 + c0035932: 7842 ld a6,48(sp) + c0035934: 671e ld a4,448(sp) + c0035936: 7686 ld a3,96(sp) + c0035938: 87c6 mv a5,a7 + c003593a: 85da mv a1,s6 + c003593c: 864a mv a2,s2 + c003593e: 8522 mv a0,s0 + c0035940: e25a sd s6,256(sp) + c0035942: e64a sd s2,264(sp) + c0035944: e7c6 sd a7,456(sp) + c0035946: f5ff30ef jal ra,c00298a4 + c003594a: f00559e3 bgez a0,c003585c + c003594e: b381 j c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43956 val = JS_UNDEFINED; - c0035780: e382 sd zero,448(sp) - c0035782: 488d li a7,3 - c0035784: b75d j c003572a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43980 + c0035950: e382 sd zero,448(sp) + c0035952: 488d li a7,3 + c0035954: b75d j c00358fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43988 val = JS_UNDEFINED; - c0035786: e382 sd zero,448(sp) - c0035788: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43987 + c0035956: e382 sd zero,448(sp) + c0035958: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43995 if (name) { - c003578a: 67a2 ld a5,8(sp) - c003578c: c78d beqz a5,c00357b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43988 - if (JS_DefinePropertyValueStr(ctx, groups, name, - c003578e: 651e ld a0,448(sp) - c0035790: 85de mv a1,s7 - c0035792: e7de sd s7,456(sp) - c0035794: edbd00ef jal ra,c000666e - c0035798: 7842 ld a6,48(sp) - c003579a: 66a2 ld a3,8(sp) - c003579c: 872a mv a4,a0 - c003579e: 87ae mv a5,a1 - c00357a0: faaa sd a0,368(sp) - c00357a2: feae sd a1,376(sp) - c00357a4: 864e mv a2,s3 - c00357a6: 85d6 mv a1,s5 - c00357a8: 8522 mv a0,s0 - c00357aa: f9d6 sd s5,240(sp) - c00357ac: fdce sd s3,248(sp) - c00357ae: fabf30ef jal ra,c0029758 - c00357b2: f40543e3 bltz a0,c00356f8 + c003595a: 67a2 ld a5,8(sp) + c003595c: c78d beqz a5,c0035986 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43996 + if (JS_DefinePropertyValueStr(ctx, groups, name, + c003595e: 651e ld a0,448(sp) + c0035960: 85de mv a1,s7 + c0035962: e7de sd s7,456(sp) + c0035964: df9d00ef jal ra,c000675c + c0035968: 7842 ld a6,48(sp) + c003596a: 66a2 ld a3,8(sp) + c003596c: 872a mv a4,a0 + c003596e: 87ae mv a5,a1 + c0035970: faaa sd a0,368(sp) + c0035972: feae sd a1,376(sp) + c0035974: 864e mv a2,s3 + c0035976: 85d6 mv a1,s5 + c0035978: 8522 mv a0,s0 + c003597a: f9d6 sd s5,240(sp) + c003597c: fdce sd s3,248(sp) + c003597e: fabf30ef jal ra,c0029928 + c0035982: f40543e3 bltz a0,c00358c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44004 if (JS_DefinePropertyValueUint32(ctx, obj, i, val, prop_flags) < 0) - c00357b6: 77a2 ld a5,40(sp) - c00357b8: 7842 ld a6,48(sp) - c00357ba: 671e ld a4,448(sp) - c00357bc: 7686 ld a3,96(sp) - c00357be: 65ce ld a1,208(sp) - c00357c0: 7622 ld a2,40(sp) - c00357c2: edbe sd a5,216(sp) - c00357c4: 8522 mv a0,s0 - c00357c6: 87de mv a5,s7 - c00357c8: e7de sd s7,456(sp) - c00357ca: f0bf30ef jal ra,c00296d4 - c00357ce: ce0548e3 bltz a0,c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43930 + c0035986: 77a2 ld a5,40(sp) + c0035988: 7842 ld a6,48(sp) + c003598a: 671e ld a4,448(sp) + c003598c: 7686 ld a3,96(sp) + c003598e: 65ce ld a1,208(sp) + c0035990: 7622 ld a2,40(sp) + c0035992: edbe sd a5,216(sp) + c0035994: 8522 mv a0,s0 + c0035996: 87de mv a5,s7 + c0035998: e7de sd s7,456(sp) + c003599a: f0bf30ef jal ra,c00298a4 + c003599e: ce0548e3 bltz a0,c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43938 for(i = 0; i < capture_count; i++) { - c00357d2: 6782 ld a5,0(sp) - c00357d4: 2785 addiw a5,a5,1 - c00357d6: e03e sd a5,0(sp) - c00357d8: b371 j c0035564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00359a2: 6782 ld a5,0(sp) + c00359a4: 2785 addiw a5,a5,1 + c00359a6: e03e sd a5,0(sp) + c00359a8: b371 j c0035734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00357da: 448d li s1,3 - c00357dc: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c00359aa: 448d li s1,3 + c00359ac: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c00357de: 490d li s2,3 - c00357e0: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 + c00359ae: 490d li s2,3 + c00359b0: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43869 groups = JS_UNDEFINED; - c00357e2: 498d li s3,3 - c00357e4: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43860 + c00359b2: 498d li s3,3 + c00359b4: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43868 obj = JS_NULL; - c00357e6: 4c09 li s8,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43859 + c00359b6: 4c09 li s8,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43867 ret = JS_EXCEPTION; - c00357e8: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43864 + c00359b8: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43872 capture = NULL; - c00357ea: 4c81 li s9,0 - c00357ec: bb31 j c0035508 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00359ba: 4c81 li s9,0 + c00359bc: bb31 j c00356d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00357ee: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c00359be: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c00357f0: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 + c00359c0: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43869 groups = JS_UNDEFINED; - c00357f2: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00359c2: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00357f4: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43862 + c00359c4: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43870 indices = JS_UNDEFINED; - c00357f6: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43861 + c00359c6: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43869 groups = JS_UNDEFINED; - c00357f8: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43860 + c00359c8: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43868 obj = JS_NULL; - c00357fa: 4c09 li s8,2 - c00357fc: b1c9 j c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43863 + c00359ca: 4c09 li s8,2 + c00359cc: b1c9 j c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43871 indices_groups = JS_UNDEFINED; - c00357fe: 448d li s1,3 - c0035800: 4a01 li s4,0 - c0035802: b975 j c00354be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44015 + c00359ce: 448d li s1,3 + c00359d0: 4a01 li s4,0 + c00359d2: b975 j c003568e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44023 t = indices_groups, indices_groups = JS_UNDEFINED; - c0035804: 448d li s1,3 - c0035806: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44010 + c00359d4: 448d li s1,3 + c00359d6: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44018 t = str_val, str_val = JS_UNDEFINED; - c0035808: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44000 + c00359d8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44008 t = groups, groups = JS_UNDEFINED; - c003580a: 498d li s3,3 - c003580c: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44010 + c00359da: 498d li s3,3 + c00359dc: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44018 t = str_val, str_val = JS_UNDEFINED; - c003580e: e83e sd a5,16(sp) - c0035810: ec02 sd zero,24(sp) - c0035812: b175 j c00354be + c00359de: e83e sd a5,16(sp) + c00359e0: ec02 sd zero,24(sp) + c00359e2: b175 j c003568e -00000000c0035814 : +00000000c00359e4 : JS_ObjectDefineProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37201 -{ - c0035814: 7131 addi sp,sp,-192 - c0035816: e952 sd s4,144(sp) - c0035818: fd06 sd ra,184(sp) - c003581a: f922 sd s0,176(sp) - c003581c: f526 sd s1,168(sp) - c003581e: f14a sd s2,160(sp) - c0035820: ed4e sd s3,152(sp) - c0035822: e556 sd s5,136(sp) - c0035824: e15a sd s6,128(sp) - c0035826: fcde sd s7,120(sp) - c0035828: e82e sd a1,16(sp) - c003582a: ec32 sd a2,24(sp) - c003582c: e036 sd a3,0(sp) - c003582e: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37209 +{ + c00359e4: 7131 addi sp,sp,-192 + c00359e6: e952 sd s4,144(sp) + c00359e8: fd06 sd ra,184(sp) + c00359ea: f922 sd s0,176(sp) + c00359ec: f526 sd s1,168(sp) + c00359ee: f14a sd s2,160(sp) + c00359f0: ed4e sd s3,152(sp) + c00359f2: e556 sd s5,136(sp) + c00359f4: e15a sd s6,128(sp) + c00359f6: fcde sd s7,120(sp) + c00359f8: e82e sd a1,16(sp) + c00359fa: ec32 sd a2,24(sp) + c00359fc: e036 sd a3,0(sp) + c00359fe: e43a sd a4,8(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0035830: 00060a1b sext.w s4,a2 + c0035a00: 00060a1b sext.w s4,a2 JS_ObjectDefineProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37216 if (!JS_IsObject(obj)) { - c0035834: 57fd li a5,-1 - c0035836: 02fa0163 beq s4,a5,c0035858 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37209 + c0035a04: 57fd li a5,-1 + c0035a06: 02fa0163 beq s4,a5,c0035a28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37217 JS_ThrowTypeErrorNotAnObject(ctx); - c003583a: 93ede0ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37210 + c0035a0a: 85cde0ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37218 return -1; - c003583e: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37234 -} - c0035840: 70ea ld ra,184(sp) - c0035842: 744a ld s0,176(sp) - c0035844: 74aa ld s1,168(sp) - c0035846: 790a ld s2,160(sp) - c0035848: 69ea ld s3,152(sp) - c003584a: 6aaa ld s5,136(sp) - c003584c: 6b0a ld s6,128(sp) - c003584e: 7be6 ld s7,120(sp) - c0035850: 8552 mv a0,s4 - c0035852: 6a4a ld s4,144(sp) - c0035854: 6129 addi sp,sp,192 - c0035856: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37213 + c0035a0e: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37242 +} + c0035a10: 70ea ld ra,184(sp) + c0035a12: 744a ld s0,176(sp) + c0035a14: 74aa ld s1,168(sp) + c0035a16: 790a ld s2,160(sp) + c0035a18: 69ea ld s3,152(sp) + c0035a1a: 6aaa ld s5,136(sp) + c0035a1c: 6b0a ld s6,128(sp) + c0035a1e: 7be6 ld s7,120(sp) + c0035a20: 8552 mv a0,s4 + c0035a22: 6a4a ld s4,144(sp) + c0035a24: 6129 addi sp,sp,192 + c0035a26: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37221 props = JS_ToObject(ctx, properties); - c0035858: 863a mv a2,a4 - c003585a: 85b6 mv a1,a3 - c003585c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37212 + c0035a28: 863a mv a2,a4 + c0035a2a: 85b6 mv a1,a3 + c0035a2c: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37220 desc = JS_UNDEFINED; - c003585e: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37213 + c0035a2e: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37221 props = JS_ToObject(ctx, properties); - c0035860: d8df20ef jal ra,c00285ec - c0035864: f82a sd a0,48(sp) - c0035866: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37214 + c0035a30: d8df20ef jal ra,c00287bc + c0035a34: f82a sd a0,48(sp) + c0035a36: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37222 if (JS_IsException(props)) - c0035868: 0005871b sext.w a4,a1 - c003586c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37213 + c0035a38: 0005871b sext.w a4,a1 + c0035a3c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37221 props = JS_ToObject(ctx, properties); - c003586e: 892a mv s2,a0 - c0035870: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37214 + c0035a3e: 892a mv s2,a0 + c0035a40: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37222 if (JS_IsException(props)) - c0035872: fcf707e3 beq a4,a5,c0035840 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37217 + c0035a42: fcf707e3 beq a4,a5,c0035a10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37225 if (JS_GetOwnPropertyNamesInternal(ctx, &atoms, &len, p, JS_GPN_ENUM_ONLY | JS_GPN_STRING_MASK | JS_GPN_SYMBOL_MASK) < 0) - c0035876: 86aa mv a3,a0 - c0035878: 474d li a4,19 - c003587a: 1050 addi a2,sp,36 - c003587c: 102c addi a1,sp,40 - c003587e: 8526 mv a0,s1 - c0035880: d2bfa0ef jal ra,c00305aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37212 + c0035a46: 86aa mv a3,a0 + c0035a48: 474d li a4,19 + c0035a4a: 1050 addi a2,sp,36 + c0035a4c: 102c addi a1,sp,40 + c0035a4e: 8526 mv a0,s1 + c0035a50: d2bfa0ef jal ra,c003077a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37220 desc = JS_UNDEFINED; - c0035884: 440d li s0,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37217 + c0035a54: 440d li s0,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37225 if (JS_GetOwnPropertyNamesInternal(ctx, &atoms, &len, p, JS_GPN_ENUM_ONLY | JS_GPN_STRING_MASK | JS_GPN_SYMBOL_MASK) < 0) - c0035886: 00054863 bltz a0,c0035896 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37219 + c0035a56: 00054863 bltz a0,c0035a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37227 for(i = 0; i < len; i++) { - c003588a: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37222 + c0035a5a: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37230 if (JS_IsException(desc)) - c003588c: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37219 (discriminator 1) + c0035a5c: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37227 (discriminator 1) for(i = 0; i < len; i++) { - c003588e: 5792 lw a5,36(sp) - c0035890: 02fae363 bltu s5,a5,c00358b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37227 + c0035a5e: 5792 lw a5,36(sp) + c0035a60: 02fae363 bltu s5,a5,c0035a86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37235 ret = 0; - c0035894: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37230 + c0035a64: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37238 js_free_prop_enum(ctx, atoms, len); - c0035896: 5612 lw a2,36(sp) - c0035898: 75a2 ld a1,40(sp) - c003589a: 8526 mv a0,s1 - c003589c: c81d10ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37231 + c0035a66: 5612 lw a2,36(sp) + c0035a68: 75a2 ld a1,40(sp) + c0035a6a: 8526 mv a0,s1 + c0035a6c: b9fd10ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37239 JS_FreeValue(ctx, props); - c00358a0: 75c2 ld a1,48(sp) - c00358a2: 7662 ld a2,56(sp) - c00358a4: 8526 mv a0,s1 - c00358a6: a92d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37232 + c0035a70: 75c2 ld a1,48(sp) + c0035a72: 7662 ld a2,56(sp) + c0035a74: 8526 mv a0,s1 + c0035a76: 9b0d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37240 JS_FreeValue(ctx, desc); - c00358aa: 6586 ld a1,64(sp) - c00358ac: 8622 mv a2,s0 - c00358ae: 8526 mv a0,s1 - c00358b0: a88d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37233 + c0035a7a: 6586 ld a1,64(sp) + c0035a7c: 8622 mv a2,s0 + c0035a7e: 8526 mv a0,s1 + c0035a80: 9a6d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37241 return ret; - c00358b4: b771 j c0035840 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37220 + c0035a84: b771 j c0035a10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37228 JS_FreeValue(ctx, desc); - c00358b6: 6586 ld a1,64(sp) - c00358b8: 8622 mv a2,s0 - c00358ba: 8526 mv a0,s1 - c00358bc: e4a2 sd s0,72(sp) - c00358be: a7ad20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37221 + c0035a86: 6586 ld a1,64(sp) + c0035a88: 8622 mv a2,s0 + c0035a8a: 8526 mv a0,s1 + c0035a8c: e4a2 sd s0,72(sp) + c0035a8e: 998d20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37229 desc = JS_GetProperty(ctx, props, atoms[i].atom); - c00358c2: 76a2 ld a3,40(sp) - c00358c4: 020a9793 slli a5,s5,0x20 - c00358c8: 01d7db93 srli s7,a5,0x1d - c00358cc: 96de add a3,a3,s7 + c0035a92: 76a2 ld a3,40(sp) + c0035a94: 020a9793 slli a5,s5,0x20 + c0035a98: 01d7db93 srli s7,a5,0x1d + c0035a9c: 96de add a3,a3,s7 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00358ce: 42d4 lw a3,4(a3) - c00358d0: 874a mv a4,s2 - c00358d2: 87ce mv a5,s3 - c00358d4: 4801 li a6,0 - c00358d6: 85ca mv a1,s2 - c00358d8: 864e mv a2,s3 - c00358da: 8526 mv a0,s1 - c00358dc: e8ca sd s2,80(sp) - c00358de: ecce sd s3,88(sp) - c00358e0: f63db0ef jal ra,c0011842 - c00358e4: f0aa sd a0,96(sp) - c00358e6: f4ae sd a1,104(sp) - c00358e8: e0aa sd a0,64(sp) - c00358ea: e4ae sd a1,72(sp) + c0035a9e: 42d4 lw a3,4(a3) + c0035aa0: 874a mv a4,s2 + c0035aa2: 87ce mv a5,s3 + c0035aa4: 4801 li a6,0 + c0035aa6: 85ca mv a1,s2 + c0035aa8: 864e mv a2,s3 + c0035aaa: 8526 mv a0,s1 + c0035aac: e8ca sd s2,80(sp) + c0035aae: ecce sd s3,88(sp) + c0035ab0: e81db0ef jal ra,c0011930 + c0035ab4: f0aa sd a0,96(sp) + c0035ab6: f4ae sd a1,104(sp) + c0035ab8: e0aa sd a0,64(sp) + c0035aba: e4ae sd a1,72(sp) JS_ObjectDefineProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37230 if (JS_IsException(desc)) - c00358ec: 0005879b sext.w a5,a1 + c0035abc: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00358f0: 872a mv a4,a0 - c00358f2: 842e mv s0,a1 + c0035ac0: 872a mv a4,a0 + c0035ac2: 842e mv s0,a1 JS_ObjectDefineProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37222 - c00358f4: fb6781e3 beq a5,s6,c0035896 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37230 + c0035ac4: fb6781e3 beq a5,s6,c0035a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37232 if (JS_DefinePropertyDesc(ctx, obj, atoms[i].atom, desc, JS_PROP_THROW) < 0) - c00358f8: 76a2 ld a3,40(sp) - c00358fa: 87ae mv a5,a1 - c00358fc: 6662 ld a2,24(sp) - c00358fe: 96de add a3,a3,s7 - c0035900: 42d4 lw a3,4(a3) - c0035902: 65c2 ld a1,16(sp) - c0035904: 6811 lui a6,0x4 - c0035906: 8526 mv a0,s1 - c0035908: cbafc0ef jal ra,c0031dc2 - c003590c: f80545e3 bltz a0,c0035896 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37219 (discriminator 2) + c0035ac8: 76a2 ld a3,40(sp) + c0035aca: 87ae mv a5,a1 + c0035acc: 6662 ld a2,24(sp) + c0035ace: 96de add a3,a3,s7 + c0035ad0: 42d4 lw a3,4(a3) + c0035ad2: 65c2 ld a1,16(sp) + c0035ad4: 6811 lui a6,0x4 + c0035ad6: 8526 mv a0,s1 + c0035ad8: cbafc0ef jal ra,c0031f92 + c0035adc: f80545e3 bltz a0,c0035a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37227 (discriminator 2) for(i = 0; i < len; i++) { - c0035910: 2a85 addiw s5,s5,1 - c0035912: bfb5 j c003588e + c0035ae0: 2a85 addiw s5,s5,1 + c0035ae2: bfb5 j c0035a5e -00000000c0035914 : +00000000c0035ae4 : js_object_defineProperties(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37340 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37348 { - c0035914: 7139 addi sp,sp,-64 - c0035916: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37342 + c0035ae4: 7139 addi sp,sp,-64 + c0035ae6: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37350 JSValueConst obj = argv[0]; - c0035918: 630c ld a1,0(a4) - c003591a: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 + c0035ae8: 630c ld a1,0(a4) + c0035aea: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37352 if (JS_ObjectDefineProperties(ctx, obj, argv[1])) - c003591c: 6b14 ld a3,16(a4) - c003591e: 6f18 ld a4,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37342 + c0035aec: 6b14 ld a3,16(a4) + c0035aee: 6f18 ld a4,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37350 JSValueConst obj = argv[0]; - c0035920: e82e sd a1,16(sp) - c0035922: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37344 + c0035af0: e82e sd a1,16(sp) + c0035af2: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37352 if (JS_ObjectDefineProperties(ctx, obj, argv[1])) - c0035924: ef1ff0ef jal ra,c0035814 - c0035928: e519 bnez a0,c0035936 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37347 + c0035af4: ef1ff0ef jal ra,c00359e4 + c0035af8: e519 bnez a0,c0035b06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37355 return JS_DupValue(ctx, obj); - c003592a: 6542 ld a0,16(sp) - c003592c: 65e2 ld a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37348 + c0035afa: 6542 ld a0,16(sp) + c0035afc: 65e2 ld a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37356 } - c003592e: 70e2 ld ra,56(sp) - c0035930: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37347 + c0035afe: 70e2 ld ra,56(sp) + c0035b00: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37355 return JS_DupValue(ctx, obj); - c0035932: d3dd006f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37348 (discriminator 1) + c0035b02: c5bd006f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37356 (discriminator 1) } - c0035936: 70e2 ld ra,56(sp) - c0035938: 4501 li a0,0 - c003593a: 4599 li a1,6 - c003593c: 6121 addi sp,sp,64 - c003593e: 8082 ret + c0035b06: 70e2 ld ra,56(sp) + c0035b08: 4501 li a0,0 + c0035b0a: 4599 li a1,6 + c0035b0c: 6121 addi sp,sp,64 + c0035b0e: 8082 ret -00000000c0035940 : +00000000c0035b10 : js_object_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37269 { - c0035940: 7159 addi sp,sp,-112 - c0035942: f0a2 sd s0,96(sp) - c0035944: eca6 sd s1,88(sp) - c0035946: f486 sd ra,104(sp) - c0035948: e8ca sd s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 + c0035b10: 7159 addi sp,sp,-112 + c0035b12: f0a2 sd s0,96(sp) + c0035b14: eca6 sd s1,88(sp) + c0035b16: f486 sd ra,104(sp) + c0035b18: e8ca sd s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37273 proto = argv[0]; - c003594a: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37261 + c0035b1a: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37269 { - c003594c: 843a mv s0,a4 - c003594e: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 + c0035b1c: 843a mv s0,a4 + c0035b1e: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37273 proto = argv[0]; - c0035950: e83e sd a5,16(sp) - c0035952: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37266 + c0035b20: e83e sd a5,16(sp) + c0035b22: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37274 if (!JS_IsObject(proto) && !JS_IsNull(proto)) - c0035954: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37265 + c0035b24: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37273 proto = argv[0]; - c0035956: ec3e sd a5,24(sp) + c0035b26: ec3e sd a5,24(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0035958: 2781 sext.w a5,a5 + c0035b28: 2781 sext.w a5,a5 js_object_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37266 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37274 if (!JS_IsObject(proto) && !JS_IsNull(proto)) - c003595a: 02e78063 beq a5,a4,c003597a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37266 (discriminator 1) - c003595e: 4709 li a4,2 - c0035960: 00e78d63 beq a5,a4,c003597a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37279 + c0035b2a: 02e78063 beq a5,a4,c0035b4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37274 (discriminator 1) + c0035b2e: 4709 li a4,2 + c0035b30: 00e78d63 beq a5,a4,c0035b4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37287 } - c0035964: 7406 ld s0,96(sp) - c0035966: 70a6 ld ra,104(sp) - c0035968: 64e6 ld s1,88(sp) - c003596a: 6946 ld s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37267 + c0035b34: 7406 ld s0,96(sp) + c0035b36: 70a6 ld ra,104(sp) + c0035b38: 64e6 ld s1,88(sp) + c0035b3a: 6946 ld s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37275 return JS_ThrowTypeError(ctx, "not a prototype"); - c003596c: 0002b597 auipc a1,0x2b - c0035970: d2c58593 addi a1,a1,-724 # c0060698 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37279 + c0035b3c: 0002b597 auipc a1,0x2b + c0035b40: dbc58593 addi a1,a1,-580 # c00608f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37287 } - c0035974: 6165 addi sp,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37267 + c0035b44: 6165 addi sp,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37275 return JS_ThrowTypeError(ctx, "not a prototype"); - c0035976: a81dd06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37268 + c0035b46: 99fdd06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37276 obj = JS_NewObjectProto(ctx, proto); - c003597a: 6662 ld a2,24(sp) - c003597c: 65c2 ld a1,16(sp) - c003597e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37269 + c0035b4a: 6662 ld a2,24(sp) + c0035b4c: 65c2 ld a1,16(sp) + c0035b4e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37277 if (JS_IsException(obj)) - c0035980: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37268 + c0035b50: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37276 obj = JS_NewObjectProto(ctx, proto); - c0035982: bace10ef jal ra,c0016d2e - c0035986: f82a sd a0,48(sp) - c0035988: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37269 + c0035b52: bace10ef jal ra,c0016efe + c0035b56: f82a sd a0,48(sp) + c0035b58: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37277 if (JS_IsException(obj)) - c003598a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37268 + c0035b5a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37276 obj = JS_NewObjectProto(ctx, proto); - c003598e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37269 + c0035b5e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37277 if (JS_IsException(obj)) - c0035990: 01279563 bne a5,s2,c003599a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37270 - return JS_EXCEPTION; - c0035994: e082 sd zero,64(sp) + c0035b60: 01279563 bne a5,s2,c0035b6a /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37278 + return JS_EXCEPTION; + c0035b64: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37286 return obj; - c0035996: e4be sd a5,72(sp) - c0035998: a025 j c00359c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37271 + c0035b66: e4be sd a5,72(sp) + c0035b68: a025 j c0035b90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37279 props = argv[1]; - c003599a: 6c18 ld a4,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37272 + c0035b6a: 6c18 ld a4,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37280 if (!JS_IsUndefined(props)) { - c003599c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37271 + c0035b6c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37279 props = argv[1]; - c003599e: 6814 ld a3,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37272 + c0035b6e: 6814 ld a3,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37280 if (!JS_IsUndefined(props)) { - c00359a0: 0007059b sext.w a1,a4 - c00359a4: 02f58663 beq a1,a5,c00359d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37273 + c0035b70: 0007059b sext.w a1,a4 + c0035b74: 02f58663 beq a1,a5,c0035ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37281 if (JS_ObjectDefineProperties(ctx, obj, props)) { - c00359a8: 85aa mv a1,a0 - c00359aa: 8526 mv a0,s1 - c00359ac: e69ff0ef jal ra,c0035814 - c00359b0: c105 beqz a0,c00359d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37274 + c0035b78: 85aa mv a1,a0 + c0035b7a: 8526 mv a0,s1 + c0035b7c: e69ff0ef jal ra,c00359e4 + c0035b80: c105 beqz a0,c0035ba0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37282 JS_FreeValue(ctx, obj); - c00359b2: 75c2 ld a1,48(sp) - c00359b4: 7662 ld a2,56(sp) - c00359b6: 8526 mv a0,s1 - c00359b8: 980d20ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37275 + c0035b82: 75c2 ld a1,48(sp) + c0035b84: 7662 ld a2,56(sp) + c0035b86: 8526 mv a0,s1 + c0035b88: 89ed20ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37283 return JS_EXCEPTION; - c00359bc: e082 sd zero,64(sp) - c00359be: e4ca sd s2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37279 (discriminator 1) -} - c00359c0: 70a6 ld ra,104(sp) - c00359c2: 7406 ld s0,96(sp) - c00359c4: 6506 ld a0,64(sp) - c00359c6: 65a6 ld a1,72(sp) - c00359c8: 64e6 ld s1,88(sp) - c00359ca: 6946 ld s2,80(sp) - c00359cc: 6165 addi sp,sp,112 - c00359ce: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37278 + c0035b8c: e082 sd zero,64(sp) + c0035b8e: e4ca sd s2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37287 (discriminator 1) +} + c0035b90: 70a6 ld ra,104(sp) + c0035b92: 7406 ld s0,96(sp) + c0035b94: 6506 ld a0,64(sp) + c0035b96: 65a6 ld a1,72(sp) + c0035b98: 64e6 ld s1,88(sp) + c0035b9a: 6946 ld s2,80(sp) + c0035b9c: 6165 addi sp,sp,112 + c0035b9e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37286 return obj; - c00359d0: 77c2 ld a5,48(sp) - c00359d2: e0be sd a5,64(sp) - c00359d4: 77e2 ld a5,56(sp) - c00359d6: b7c1 j c0035996 + c0035ba0: 77c2 ld a5,48(sp) + c0035ba2: e0be sd a5,64(sp) + c0035ba4: 77e2 ld a5,56(sp) + c0035ba6: b7c1 j c0035b66 -00000000c00359d8 : +00000000c0035ba8 : js_reflect_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45688 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45696 { - c00359d8: 7119 addi sp,sp,-128 - c00359da: fc86 sd ra,120(sp) - c00359dc: f8a2 sd s0,112(sp) - c00359de: f4a6 sd s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45694 + c0035ba8: 7119 addi sp,sp,-128 + c0035baa: fc86 sd ra,120(sp) + c0035bac: f8a2 sd s0,112(sp) + c0035bae: f4a6 sd s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45702 prop = argv[1]; - c00359e0: 6b0c ld a1,16(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45693 + c0035bb0: 6b0c ld a1,16(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45701 obj = argv[0]; - c00359e2: 671c ld a5,8(a4) - c00359e4: 6310 ld a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45694 + c0035bb2: 671c ld a5,8(a4) + c0035bb4: 6310 ld a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45702 prop = argv[1]; - c00359e6: f02e sd a1,32(sp) - c00359e8: 6f0c ld a1,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45693 + c0035bb6: f02e sd a1,32(sp) + c0035bb8: 6f0c ld a1,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45701 obj = argv[0]; - c00359ea: e832 sd a2,16(sp) - c00359ec: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45694 + c0035bba: e832 sd a2,16(sp) + c0035bbc: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45702 prop = argv[1]; - c00359ee: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45695 + c0035bbe: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45703 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c00359f0: 0007881b sext.w a6,a5 - c00359f4: 55fd li a1,-1 - c00359f6: 00b80863 beq a6,a1,c0035a06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45707 -} - c00359fa: 7446 ld s0,112(sp) - c00359fc: 70e6 ld ra,120(sp) - c00359fe: 74a6 ld s1,104(sp) - c0035a00: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45696 + c0035bc0: 0007881b sext.w a6,a5 + c0035bc4: 55fd li a1,-1 + c0035bc6: 00b80863 beq a6,a1,c0035bd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45715 +} + c0035bca: 7446 ld s0,112(sp) + c0035bcc: 70e6 ld ra,120(sp) + c0035bce: 74a6 ld s1,104(sp) + c0035bd0: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45704 return JS_ThrowTypeErrorNotAnObject(ctx); - c0035a02: f77dd06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45697 + c0035bd2: e95dd06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45705 if (argc > 2) - c0035a06: 4589 li a1,2 - c0035a08: 842a mv s0,a0 - c0035a0a: 02d5d863 bge a1,a3,c0035a3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45698 + c0035bd6: 4589 li a1,2 + c0035bd8: 842a mv s0,a0 + c0035bda: 02d5d863 bge a1,a3,c0035c0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45706 receiver = argv[2]; - c0035a0e: 731c ld a5,32(a4) - c0035a10: f83e sd a5,48(sp) - c0035a12: 771c ld a5,40(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45701 + c0035bde: 731c ld a5,32(a4) + c0035be0: f83e sd a5,48(sp) + c0035be2: 771c ld a5,40(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45709 atom = JS_ValueToAtom(ctx, prop); - c0035a14: 7582 ld a1,32(sp) - c0035a16: 7622 ld a2,40(sp) - c0035a18: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45700 + c0035be4: 7582 ld a1,32(sp) + c0035be6: 7622 ld a2,40(sp) + c0035be8: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45708 receiver = obj; - c0035a1a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45701 + c0035bea: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45709 atom = JS_ValueToAtom(ctx, prop); - c0035a1c: c01eb0ef jal ra,c002161c - c0035a20: 0005049b sext.w s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45702 + c0035bec: c01eb0ef jal ra,c00217ec + c0035bf0: 0005049b sext.w s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45710 if (unlikely(atom == JS_ATOM_NULL)) - c0035a24: ec89 bnez s1,c0035a3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45703 + c0035bf4: ec89 bnez s1,c0035c0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45711 return JS_EXCEPTION; - c0035a26: e882 sd zero,80(sp) - c0035a28: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45707 + c0035bf6: e882 sd zero,80(sp) + c0035bf8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45715 } - c0035a2a: 70e6 ld ra,120(sp) - c0035a2c: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45706 + c0035bfa: 70e6 ld ra,120(sp) + c0035bfc: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45714 return ret; - c0035a2e: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45707 -} - c0035a30: 6546 ld a0,80(sp) - c0035a32: 65e6 ld a1,88(sp) - c0035a34: 74a6 ld s1,104(sp) - c0035a36: 6109 addi sp,sp,128 - c0035a38: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45700 + c0035bfe: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45715 +} + c0035c00: 6546 ld a0,80(sp) + c0035c02: 65e6 ld a1,88(sp) + c0035c04: 74a6 ld s1,104(sp) + c0035c06: 6109 addi sp,sp,128 + c0035c08: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45708 receiver = obj; - c0035a3a: f832 sd a2,48(sp) - c0035a3c: bfe1 j c0035a14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45704 + c0035c0a: f832 sd a2,48(sp) + c0035c0c: bfe1 j c0035be4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45712 ret = JS_GetPropertyInternal(ctx, obj, atom, receiver, FALSE); - c0035a3e: 77e2 ld a5,56(sp) - c0035a40: 7742 ld a4,48(sp) - c0035a42: 6662 ld a2,24(sp) - c0035a44: 65c2 ld a1,16(sp) - c0035a46: 4801 li a6,0 - c0035a48: 86a6 mv a3,s1 - c0035a4a: 8522 mv a0,s0 - c0035a4c: df7db0ef jal ra,c0011842 - c0035a50: e0aa sd a0,64(sp) - c0035a52: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45705 + c0035c0e: 77e2 ld a5,56(sp) + c0035c10: 7742 ld a4,48(sp) + c0035c12: 6662 ld a2,24(sp) + c0035c14: 65c2 ld a1,16(sp) + c0035c16: 4801 li a6,0 + c0035c18: 86a6 mv a3,s1 + c0035c1a: 8522 mv a0,s0 + c0035c1c: d15db0ef jal ra,c0011930 + c0035c20: e0aa sd a0,64(sp) + c0035c22: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45713 JS_FreeAtom(ctx, atom); - c0035a54: 8522 mv a0,s0 - c0035a56: 85a6 mv a1,s1 - c0035a58: ab5d10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45706 + c0035c24: 8522 mv a0,s0 + c0035c26: 85a6 mv a1,s1 + c0035c28: 9d3d10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45714 return ret; - c0035a5c: 6786 ld a5,64(sp) - c0035a5e: e8be sd a5,80(sp) - c0035a60: 67a6 ld a5,72(sp) - c0035a62: b7e1 j c0035a2a + c0035c2c: 6786 ld a5,64(sp) + c0035c2e: e8be sd a5,80(sp) + c0035c30: 67a6 ld a5,72(sp) + c0035c32: b7e1 j c0035bfa -00000000c0035a64 : +00000000c0035c34 : JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36817 static int JS_InstantiateFunctionListItem(JSContext *ctx, JSValueConst obj, - c0035a64: 7115 addi sp,sp,-224 - c0035a66: e9a2 sd s0,208(sp) - c0035a68: ed86 sd ra,216(sp) - c0035a6a: e5a6 sd s1,200(sp) - c0035a6c: e1ca sd s2,192(sp) - c0035a6e: fd4e sd s3,184(sp) - c0035a70: f952 sd s4,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36814 + c0035c34: 7115 addi sp,sp,-224 + c0035c36: e9a2 sd s0,208(sp) + c0035c38: ed86 sd ra,216(sp) + c0035c3a: e5a6 sd s1,200(sp) + c0035c3c: e1ca sd s2,192(sp) + c0035c3e: fd4e sd s3,184(sp) + c0035c40: f952 sd s4,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36822 int prop_flags = e->prop_flags; - c0035a72: 00874983 lbu s3,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36809 + c0035c42: 00874983 lbu s3,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36817 static int JS_InstantiateFunctionListItem(JSContext *ctx, JSValueConst obj, - c0035a76: 843a mv s0,a4 - c0035a78: 00974703 lbu a4,9(a4) - c0035a7c: e82e sd a1,16(sp) - c0035a7e: ec32 sd a2,24(sp) - c0035a80: 47a5 li a5,9 - c0035a82: 0ce7e663 bltu a5,a4,c0035b4e - c0035a86: 00271793 slli a5,a4,0x2 - c0035a8a: 0002b717 auipc a4,0x2b - c0035a8e: c2e70713 addi a4,a4,-978 # c00606b8 - c0035a92: 97ba add a5,a5,a4 - c0035a94: 439c lw a5,0(a5) - c0035a96: 84aa mv s1,a0 - c0035a98: 8936 mv s2,a3 - c0035a9a: 97ba add a5,a5,a4 - c0035a9c: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36819 + c0035c46: 843a mv s0,a4 + c0035c48: 00974703 lbu a4,9(a4) + c0035c4c: e82e sd a1,16(sp) + c0035c4e: ec32 sd a2,24(sp) + c0035c50: 47a5 li a5,9 + c0035c52: 0ce7e663 bltu a5,a4,c0035d1e + c0035c56: 00271793 slli a5,a4,0x2 + c0035c5a: 0002b717 auipc a4,0x2b + c0035c5e: cbe70713 addi a4,a4,-834 # c0060918 + c0035c62: 97ba add a5,a5,a4 + c0035c64: 439c lw a5,0(a5) + c0035c66: 84aa mv s1,a0 + c0035c68: 8936 mv s2,a3 + c0035c6a: 97ba add a5,a5,a4 + c0035c6c: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36827 JSAtom atom1 = find_atom(ctx, e->u.alias.name); - c0035a9e: 680c ld a1,16(s0) - c0035aa0: c4be30ef jal ra,c00196ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36820 + c0035c6e: 680c ld a1,16(s0) + c0035c70: c4be30ef jal ra,c00198ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36828 switch (e->u.alias.base) { - c0035aa4: 4c1c lw a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36819 + c0035c74: 4c1c lw a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36827 JSAtom atom1 = find_atom(ctx, e->u.alias.name); - c0035aa6: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36820 + c0035c76: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36828 switch (e->u.alias.base) { - c0035aaa: c3bd beqz a5,c0035b10 - c0035aac: 4705 li a4,1 - c0035aae: 08e78163 beq a5,a4,c0035b30 - c0035ab2: 577d li a4,-1 - c0035ab4: 08e79d63 bne a5,a4,c0035b4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36822 + c0035c7a: c3bd beqz a5,c0035ce0 + c0035c7c: 4705 li a4,1 + c0035c7e: 08e78163 beq a5,a4,c0035d00 + c0035c82: 577d li a4,-1 + c0035c84: 08e79d63 bne a5,a4,c0035d1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36830 val = JS_GetProperty(ctx, obj, atom1); - c0035ab8: 6742 ld a4,16(sp) - c0035aba: 67e2 ld a5,24(sp) + c0035c88: 6742 ld a4,16(sp) + c0035c8a: 67e2 ld a5,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0035abc: 4801 li a6,0 - c0035abe: 86d2 mv a3,s4 - c0035ac0: 85ba mv a1,a4 - c0035ac2: 863e mv a2,a5 - c0035ac4: 8526 mv a0,s1 - c0035ac6: f0ba sd a4,96(sp) - c0035ac8: f4be sd a5,104(sp) - c0035aca: d79db0ef jal ra,c0011842 - c0035ace: f8aa sd a0,112(sp) - c0035ad0: fcae sd a1,120(sp) - c0035ad2: f02a sd a0,32(sp) - c0035ad4: f42e sd a1,40(sp) + c0035c8c: 4801 li a6,0 + c0035c8e: 86d2 mv a3,s4 + c0035c90: 85ba mv a1,a4 + c0035c92: 863e mv a2,a5 + c0035c94: 8526 mv a0,s1 + c0035c96: f0ba sd a4,96(sp) + c0035c98: f4be sd a5,104(sp) + c0035c9a: c97db0ef jal ra,c0011930 + c0035c9e: f8aa sd a0,112(sp) + c0035ca0: fcae sd a1,120(sp) + c0035ca2: f02a sd a0,32(sp) + c0035ca4: f42e sd a1,40(sp) JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36833 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36841 JS_FreeAtom(ctx, atom1); - c0035ad6: 8526 mv a0,s1 - c0035ad8: 85d2 mv a1,s4 - c0035ada: a33d10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36834 + c0035ca6: 8526 mv a0,s1 + c0035ca8: 85d2 mv a1,s4 + c0035caa: 951d10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36842 if (atom == JS_ATOM_Symbol_toPrimitive) { - c0035ade: 0cb00793 li a5,203 - c0035ae2: 18f90d63 beq s2,a5,c0035c7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36837 + c0035cae: 0cb00793 li a5,203 + c0035cb2: 18f90d63 beq s2,a5,c0035e4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36845 } else if (atom == JS_ATOM_Symbol_hasInstance) { - c0035ae6: 0d400793 li a5,212 - c0035aea: 00f91363 bne s2,a5,c0035af0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36839 + c0035cb6: 0d400793 li a5,212 + c0035cba: 00f91363 bne s2,a5,c0035cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36847 prop_flags = 0; - c0035aee: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + c0035cbe: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035af0: 644e ld s0,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36898 + c0035cc0: 644e ld s0,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36906 JS_DefinePropertyValue(ctx, obj, atom, val, prop_flags); - c0035af2: 7702 ld a4,32(sp) - c0035af4: 77a2 ld a5,40(sp) - c0035af6: 65c2 ld a1,16(sp) - c0035af8: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 -} - c0035afa: 60ee ld ra,216(sp) - c0035afc: 7a4a ld s4,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36898 + c0035cc2: 7702 ld a4,32(sp) + c0035cc4: 77a2 ld a5,40(sp) + c0035cc6: 65c2 ld a1,16(sp) + c0035cc8: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 +} + c0035cca: 60ee ld ra,216(sp) + c0035ccc: 7a4a ld s4,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36906 JS_DefinePropertyValue(ctx, obj, atom, val, prop_flags); - c0035afe: 884e mv a6,s3 - c0035b00: 86ca mv a3,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + c0035cce: 884e mv a6,s3 + c0035cd0: 86ca mv a3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035b02: 79ea ld s3,184(sp) - c0035b04: 690e ld s2,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36898 + c0035cd2: 79ea ld s3,184(sp) + c0035cd4: 690e ld s2,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36906 JS_DefinePropertyValue(ctx, obj, atom, val, prop_flags); - c0035b06: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + c0035cd6: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035b08: 64ae ld s1,200(sp) - c0035b0a: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36898 + c0035cd8: 64ae ld s1,200(sp) + c0035cda: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36906 JS_DefinePropertyValue(ctx, obj, atom, val, prop_flags); - c0035b0c: caadd06f j c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36825 + c0035cdc: bc8dd06f j c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36833 val = JS_GetProperty(ctx, ctx->global_obj, atom1); - c0035b10: 1684b703 ld a4,360(s1) - c0035b14: 1704b783 ld a5,368(s1) + c0035ce0: 1684b703 ld a4,360(s1) + c0035ce4: 1704b783 ld a5,368(s1) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0035b18: 4801 li a6,0 - c0035b1a: 86d2 mv a3,s4 - c0035b1c: 85ba mv a1,a4 - c0035b1e: 863e mv a2,a5 - c0035b20: 8526 mv a0,s1 - c0035b22: f8ba sd a4,112(sp) - c0035b24: fcbe sd a5,120(sp) - c0035b26: d1ddb0ef jal ra,c0011842 - c0035b2a: f0aa sd a0,96(sp) - c0035b2c: f4ae sd a1,104(sp) - c0035b2e: b755 j c0035ad2 + c0035ce8: 4801 li a6,0 + c0035cea: 86d2 mv a3,s4 + c0035cec: 85ba mv a1,a4 + c0035cee: 863e mv a2,a5 + c0035cf0: 8526 mv a0,s1 + c0035cf2: f8ba sd a4,112(sp) + c0035cf4: fcbe sd a5,120(sp) + c0035cf6: c3bdb0ef jal ra,c0011930 + c0035cfa: f0aa sd a0,96(sp) + c0035cfc: f4ae sd a1,104(sp) + c0035cfe: b755 j c0035ca2 JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36828 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36836 val = JS_GetProperty(ctx, ctx->class_proto[JS_CLASS_ARRAY], atom1); - c0035b30: 60bc ld a5,64(s1) + c0035d00: 60bc ld a5,64(s1) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0035b32: 4801 li a6,0 - c0035b34: 86d2 mv a3,s4 - c0035b36: 7398 ld a4,32(a5) - c0035b38: 8526 mv a0,s1 - c0035b3a: f8ba sd a4,112(sp) - c0035b3c: 779c ld a5,40(a5) - c0035b3e: 85ba mv a1,a4 - c0035b40: 863e mv a2,a5 - c0035b42: fcbe sd a5,120(sp) - c0035b44: cffdb0ef jal ra,c0011842 - c0035b48: e8aa sd a0,80(sp) - c0035b4a: ecae sd a1,88(sp) - c0035b4c: b759 j c0035ad2 + c0035d02: 4801 li a6,0 + c0035d04: 86d2 mv a3,s4 + c0035d06: 7398 ld a4,32(a5) + c0035d08: 8526 mv a0,s1 + c0035d0a: f8ba sd a4,112(sp) + c0035d0c: 779c ld a5,40(a5) + c0035d0e: 85ba mv a1,a4 + c0035d10: 863e mv a2,a5 + c0035d12: fcbe sd a5,120(sp) + c0035d14: c1ddb0ef jal ra,c0011930 + c0035d18: e8aa sd a0,80(sp) + c0035d1a: ecae sd a1,88(sp) + c0035d1c: b759 j c0035ca2 JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36831 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36839 abort(); - c0035b4e: 4bd1f0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36844 + c0035d1e: 4bd1f0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36852 if (atom == JS_ATOM_Symbol_toPrimitive) { - c0035b52: 0cb00793 li a5,203 - c0035b56: 02f68763 beq a3,a5,c0035b84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36847 + c0035d22: 0cb00793 li a5,203 + c0035d26: 02f68763 beq a3,a5,c0035d54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36855 } else if (atom == JS_ATOM_Symbol_hasInstance) { - c0035b5a: 0d400793 li a5,212 - c0035b5e: 00f69363 bne a3,a5,c0035b64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36849 + c0035d2a: 0d400793 li a5,212 + c0035d2e: 00f69363 bne a3,a5,c0035d34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36857 prop_flags = 0; - c0035b62: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 - JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b64: 87a2 mv a5,s0 + c0035d32: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 -} - c0035b66: 644e ld s0,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b68: 65c2 ld a1,16(sp) - c0035b6a: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + c0035d34: 87a2 mv a5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035b6c: 60ee ld ra,216(sp) - c0035b6e: 7a4a ld s4,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 - JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b70: 884e mv a6,s3 - c0035b72: 86ca mv a3,s2 + c0035d36: 644e ld s0,208(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 -} - c0035b74: 79ea ld s3,184(sp) - c0035b76: 690e ld s2,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b78: 8526 mv a0,s1 + c0035d38: 65c2 ld a1,16(sp) + c0035d3a: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 +} + c0035d3c: 60ee ld ra,216(sp) + c0035d3e: 7a4a ld s4,176(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, + c0035d40: 884e mv a6,s3 + c0035d42: 86ca mv a3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035b7a: 64ae ld s1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 + c0035d44: 79ea ld s3,184(sp) + c0035d46: 690e ld s2,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b7c: 4709 li a4,2 + c0035d48: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 +} + c0035d4a: 64ae ld s1,200(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 + JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, + c0035d4c: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 } - c0035b7e: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36892 + c0035d4e: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b80: 9dfe006f j c001655e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36846 + c0035d50: 9dfe006f j c001672e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36854 prop_flags = JS_PROP_CONFIGURABLE; - c0035b84: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36851 + c0035d54: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36859 JS_DefineAutoInitProperty(ctx, obj, atom, JS_AUTOINIT_ID_PROP, - c0035b86: bff9 j c0035b64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36860 + c0035d56: bff9 j c0035d34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36868 getter = JS_UNDEFINED; - c0035b88: 478d li a5,3 - c0035b8a: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36861 + c0035d58: 478d li a5,3 + c0035d5a: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36869 if (e->u.getset.get.generic) { - c0035b8c: 681c ld a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36860 + c0035d5c: 681c ld a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36868 getter = JS_UNDEFINED; - c0035b8e: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36861 + c0035d5e: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36869 if (e->u.getset.get.generic) { - c0035b90: cf85 beqz a5,c0035bc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36862 + c0035d60: cf85 beqz a5,c0035d98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36870 snprintf(buf, sizeof(buf), "get %s", e->name); - c0035b92: 6014 ld a3,0(s0) - c0035b94: 04000593 li a1,64 - c0035b98: 0002b617 auipc a2,0x2b - c0035b9c: b1060613 addi a2,a2,-1264 # c00606a8 - c0035ba0: 1888 addi a0,sp,112 - c0035ba2: 6621e0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36863 + c0035d62: 6014 ld a3,0(s0) + c0035d64: 04000593 li a1,64 + c0035d68: 0002b617 auipc a2,0x2b + c0035d6c: ba060613 addi a2,a2,-1120 # c0060908 + c0035d70: 1888 addi a0,sp,112 + c0035d72: 6621e0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36871 getter = JS_NewCFunction2(ctx, e->u.getset.get.generic, - c0035ba6: 00944683 lbu a3,9(s0) - c0035baa: 4789 li a5,2 - c0035bac: 680c ld a1,16(s0) - c0035bae: 4729 li a4,10 - c0035bb0: 00f68363 beq a3,a5,c0035bb6 - c0035bb4: 4721 li a4,8 - c0035bb6: 00a41783 lh a5,10(s0) - c0035bba: 4681 li a3,0 - c0035bbc: 1890 addi a2,sp,112 - c0035bbe: 8526 mv a0,s1 - c0035bc0: e26f30ef jal ra,c00291e6 - c0035bc4: e8aa sd a0,80(sp) - c0035bc6: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36867 + c0035d76: 00944683 lbu a3,9(s0) + c0035d7a: 4789 li a5,2 + c0035d7c: 680c ld a1,16(s0) + c0035d7e: 4729 li a4,10 + c0035d80: 00f68363 beq a3,a5,c0035d86 + c0035d84: 4721 li a4,8 + c0035d86: 00a41783 lh a5,10(s0) + c0035d8a: 4681 li a3,0 + c0035d8c: 1890 addi a2,sp,112 + c0035d8e: 8526 mv a0,s1 + c0035d90: e26f30ef jal ra,c00293b6 + c0035d94: e8aa sd a0,80(sp) + c0035d96: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36875 setter = JS_UNDEFINED; - c0035bc8: 478d li a5,3 - c0035bca: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36868 + c0035d98: 478d li a5,3 + c0035d9a: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36876 if (e->u.getset.set.generic) { - c0035bcc: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36867 + c0035d9c: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36875 setter = JS_UNDEFINED; - c0035bce: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36868 + c0035d9e: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36876 if (e->u.getset.set.generic) { - c0035bd0: cf85 beqz a5,c0035c08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36869 + c0035da0: cf85 beqz a5,c0035dd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36877 snprintf(buf, sizeof(buf), "set %s", e->name); - c0035bd2: 6014 ld a3,0(s0) - c0035bd4: 04000593 li a1,64 - c0035bd8: 0002b617 auipc a2,0x2b - c0035bdc: ad860613 addi a2,a2,-1320 # c00606b0 - c0035be0: 1888 addi a0,sp,112 - c0035be2: 6221e0ef jal ra,c0054204 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36870 + c0035da2: 6014 ld a3,0(s0) + c0035da4: 04000593 li a1,64 + c0035da8: 0002b617 auipc a2,0x2b + c0035dac: b6860613 addi a2,a2,-1176 # c0060910 + c0035db0: 1888 addi a0,sp,112 + c0035db2: 6221e0ef jal ra,c00543d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36878 setter = JS_NewCFunction2(ctx, e->u.getset.set.generic, - c0035be6: 00944683 lbu a3,9(s0) - c0035bea: 4789 li a5,2 - c0035bec: 6c0c ld a1,24(s0) - c0035bee: 472d li a4,11 - c0035bf0: 00f68363 beq a3,a5,c0035bf6 - c0035bf4: 4725 li a4,9 - c0035bf6: 00a41783 lh a5,10(s0) - c0035bfa: 4685 li a3,1 - c0035bfc: 1890 addi a2,sp,112 - c0035bfe: 8526 mv a0,s1 - c0035c00: de6f30ef jal ra,c00291e6 - c0035c04: f0aa sd a0,96(sp) - c0035c06: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36874 + c0035db6: 00944683 lbu a3,9(s0) + c0035dba: 4789 li a5,2 + c0035dbc: 6c0c ld a1,24(s0) + c0035dbe: 472d li a4,11 + c0035dc0: 00f68363 beq a3,a5,c0035dc6 + c0035dc4: 4725 li a4,9 + c0035dc6: 00a41783 lh a5,10(s0) + c0035dca: 4685 li a3,1 + c0035dcc: 1890 addi a2,sp,112 + c0035dce: 8526 mv a0,s1 + c0035dd0: de6f30ef jal ra,c00293b6 + c0035dd4: f0aa sd a0,96(sp) + c0035dd6: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36882 JS_DefinePropertyGetSet(ctx, obj, atom, getter, setter, prop_flags); - c0035c08: 7806 ld a6,96(sp) - c0035c0a: 78a6 ld a7,104(sp) - c0035c0c: 6746 ld a4,80(sp) - c0035c0e: 67e6 ld a5,88(sp) - c0035c10: 65c2 ld a1,16(sp) - c0035c12: 6662 ld a2,24(sp) - c0035c14: e04e sd s3,0(sp) - c0035c16: 86ca mv a3,s2 - c0035c18: 8526 mv a0,s1 - c0035c1a: accfa0ef jal ra,c002fee6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36900 -} - c0035c1e: 60ee ld ra,216(sp) - c0035c20: 644e ld s0,208(sp) - c0035c22: 64ae ld s1,200(sp) - c0035c24: 690e ld s2,192(sp) - c0035c26: 79ea ld s3,184(sp) - c0035c28: 7a4a ld s4,176(sp) - c0035c2a: 612d addi sp,sp,224 - c0035c2c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36879 + c0035dd8: 7806 ld a6,96(sp) + c0035dda: 78a6 ld a7,104(sp) + c0035ddc: 6746 ld a4,80(sp) + c0035dde: 67e6 ld a5,88(sp) + c0035de0: 65c2 ld a1,16(sp) + c0035de2: 6662 ld a2,24(sp) + c0035de4: e04e sd s3,0(sp) + c0035de6: 86ca mv a3,s2 + c0035de8: 8526 mv a0,s1 + c0035dea: accfa0ef jal ra,c00300b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36908 +} + c0035dee: 60ee ld ra,216(sp) + c0035df0: 644e ld s0,208(sp) + c0035df2: 64ae ld s1,200(sp) + c0035df4: 690e ld s2,192(sp) + c0035df6: 79ea ld s3,184(sp) + c0035df8: 7a4a ld s4,176(sp) + c0035dfa: 612d addi sp,sp,224 + c0035dfc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36887 val = JS_NewInt32(ctx, e->u.i32); - c0035c2e: 481c lw a5,16(s0) + c0035dfe: 481c lw a5,16(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0035c30: c282 sw zero,68(sp) - c0035c32: f402 sd zero,40(sp) - c0035c34: c0be sw a5,64(sp) - c0035c36: 6786 ld a5,64(sp) - c0035c38: f03e sd a5,32(sp) - c0035c3a: bd5d j c0035af0 + c0035e00: c282 sw zero,68(sp) + c0035e02: f402 sd zero,40(sp) + c0035e04: c0be sw a5,64(sp) + c0035e06: 6786 ld a5,64(sp) + c0035e08: f03e sd a5,32(sp) + c0035e0a: bd5d j c0035cc0 JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36882 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36890 val = JS_NewInt64(ctx, e->u.i64); - c0035c3c: 6818 ld a4,16(s0) + c0035e0c: 6818 ld a4,16(s0) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0035c3e: 0007079b sext.w a5,a4 - c0035c42: 00f71d63 bne a4,a5,c0035c5c + c0035e0e: 0007079b sext.w a5,a4 + c0035e12: 00f71d63 bne a4,a5,c0035e2c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0035c46: da02 sw zero,52(sp) - c0035c48: d83e sw a5,48(sp) - c0035c4a: 7742 ld a4,48(sp) - c0035c4c: fc82 sd zero,120(sp) - c0035c4e: f8ba sd a4,112(sp) - c0035c50: 4701 li a4,0 + c0035e16: da02 sw zero,52(sp) + c0035e18: d83e sw a5,48(sp) + c0035e1a: 7742 ld a4,48(sp) + c0035e1c: fc82 sd zero,120(sp) + c0035e1e: f8ba sd a4,112(sp) + c0035e20: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0035c52: d8be sw a5,112(sp) - c0035c54: 37c6 fld fa5,112(sp) - c0035c56: f43a sd a4,40(sp) - c0035c58: b03e fsd fa5,32(sp) - c0035c5a: bd59 j c0035af0 + c0035e22: d8be sw a5,112(sp) + c0035e24: 37c6 fld fa5,112(sp) + c0035e26: f43a sd a4,40(sp) + c0035e28: b03e fsd fa5,32(sp) + c0035e2a: bd59 j c0035cc0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0035c5c: d22777d3 fcvt.d.l fa5,a4 - c0035c60: 471d li a4,7 - c0035c62: e20787d3 fmv.x.d a5,fa5 + c0035e2c: d22777d3 fcvt.d.l fa5,a4 + c0035e30: 471d li a4,7 + c0035e32: e20787d3 fmv.x.d a5,fa5 JS_InstantiateFunctionListItem(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0035c66: b8be fsd fa5,112(sp) - c0035c68: 2781 sext.w a5,a5 - c0035c6a: b7e5 j c0035c52 + c0035e36: b8be fsd fa5,112(sp) + c0035e38: 2781 sext.w a5,a5 + c0035e3a: b7e5 j c0035e22 __JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 - c0035c6c: 281c fld fa5,16(s0) - c0035c6e: 479d li a5,7 - c0035c70: b03e fsd fa5,32(sp) + c0035e3c: 281c fld fa5,16(s0) + c0035e3e: 479d li a5,7 + c0035e40: b03e fsd fa5,32(sp) JS_InstantiateFunctionListItem(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36888 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36896 val = JS_UNDEFINED; - c0035c72: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36889 + c0035e42: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36897 break; - c0035c74: bdb5 j c0035af0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36888 + c0035e44: bdb5 j c0035cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36896 val = JS_UNDEFINED; - c0035c76: f002 sd zero,32(sp) - c0035c78: 478d li a5,3 - c0035c7a: bfe5 j c0035c72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36836 + c0035e46: f002 sd zero,32(sp) + c0035e48: 478d li a5,3 + c0035e4a: bfe5 j c0035e42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36844 prop_flags = JS_PROP_CONFIGURABLE; - c0035c7c: 4985 li s3,1 - c0035c7e: bd8d j c0035af0 + c0035e4c: 4985 li s3,1 + c0035e4e: bd8d j c0035cc0 -00000000c0035c80 : +00000000c0035e50 : JS_SetPropertyFunctionList(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36904 -{ - c0035c80: 7139 addi sp,sp,-64 - c0035c82: f822 sd s0,48(sp) - c0035c84: f426 sd s1,40(sp) - c0035c86: ec4e sd s3,24(sp) - c0035c88: e852 sd s4,16(sp) - c0035c8a: fc06 sd ra,56(sp) - c0035c8c: f04a sd s2,32(sp) - c0035c8e: 84aa mv s1,a0 - c0035c90: e02e sd a1,0(sp) - c0035c92: e432 sd a2,8(sp) - c0035c94: 89ba mv s3,a4 - c0035c96: 8436 mv s0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36907 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36912 +{ + c0035e50: 7139 addi sp,sp,-64 + c0035e52: f822 sd s0,48(sp) + c0035e54: f426 sd s1,40(sp) + c0035e56: ec4e sd s3,24(sp) + c0035e58: e852 sd s4,16(sp) + c0035e5a: fc06 sd ra,56(sp) + c0035e5c: f04a sd s2,32(sp) + c0035e5e: 84aa mv s1,a0 + c0035e60: e02e sd a1,0(sp) + c0035e62: e432 sd a2,8(sp) + c0035e64: 89ba mv s3,a4 + c0035e66: 8436 mv s0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36915 for (i = 0; i < len; i++) { - c0035c98: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36907 (discriminator 1) - c0035c9a: 013a4a63 blt s4,s3,c0035cae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36913 -} - c0035c9e: 70e2 ld ra,56(sp) - c0035ca0: 7442 ld s0,48(sp) - c0035ca2: 74a2 ld s1,40(sp) - c0035ca4: 7902 ld s2,32(sp) - c0035ca6: 69e2 ld s3,24(sp) - c0035ca8: 6a42 ld s4,16(sp) - c0035caa: 6121 addi sp,sp,64 - c0035cac: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36909 (discriminator 3) + c0035e68: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36915 (discriminator 1) + c0035e6a: 013a4a63 blt s4,s3,c0035e7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36921 +} + c0035e6e: 70e2 ld ra,56(sp) + c0035e70: 7442 ld s0,48(sp) + c0035e72: 74a2 ld s1,40(sp) + c0035e74: 7902 ld s2,32(sp) + c0035e76: 69e2 ld s3,24(sp) + c0035e78: 6a42 ld s4,16(sp) + c0035e7a: 6121 addi sp,sp,64 + c0035e7c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36917 (discriminator 3) JSAtom atom = find_atom(ctx, e->name); - c0035cae: 600c ld a1,0(s0) - c0035cb0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36907 (discriminator 3) + c0035e7e: 600c ld a1,0(s0) + c0035e80: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36915 (discriminator 3) for (i = 0; i < len; i++) { - c0035cb2: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36909 (discriminator 3) + c0035e82: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36917 (discriminator 3) JSAtom atom = find_atom(ctx, e->name); - c0035cb4: a37e30ef jal ra,c00196ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36910 (discriminator 3) + c0035e84: a37e30ef jal ra,c00198ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36918 (discriminator 3) JS_InstantiateFunctionListItem(ctx, obj, atom, e); - c0035cb8: 6582 ld a1,0(sp) - c0035cba: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36909 (discriminator 3) + c0035e88: 6582 ld a1,0(sp) + c0035e8a: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36917 (discriminator 3) JSAtom atom = find_atom(ctx, e->name); - c0035cbc: 0005091b sext.w s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36910 (discriminator 3) + c0035e8c: 0005091b sext.w s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36918 (discriminator 3) JS_InstantiateFunctionListItem(ctx, obj, atom, e); - c0035cc0: 8722 mv a4,s0 - c0035cc2: 86ca mv a3,s2 - c0035cc4: 8526 mv a0,s1 - c0035cc6: d9fff0ef jal ra,c0035a64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36911 (discriminator 3) + c0035e90: 8722 mv a4,s0 + c0035e92: 86ca mv a3,s2 + c0035e94: 8526 mv a0,s1 + c0035e96: d9fff0ef jal ra,c0035c34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36919 (discriminator 3) JS_FreeAtom(ctx, atom); - c0035cca: 85ca mv a1,s2 - c0035ccc: 8526 mv a0,s1 - c0035cce: 83fd10ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36907 (discriminator 3) + c0035e9a: 85ca mv a1,s2 + c0035e9c: 8526 mv a0,s1 + c0035e9e: f5cd10ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36915 (discriminator 3) for (i = 0; i < len; i++) { - c0035cd2: 02040413 addi s0,s0,32 - c0035cd6: b7d1 j c0035c9a + c0035ea2: 02040413 addi s0,s0,32 + c0035ea6: b7d1 j c0035e6a -00000000c0035cd8 : +00000000c0035ea8 : JS_InstantiateFunctionListItem2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36787 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36795 { - c0035cd8: 7139 addi sp,sp,-64 - c0035cda: f822 sd s0,48(sp) - c0035cdc: fc06 sd ra,56(sp) - c0035cde: f426 sd s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36791 + c0035ea8: 7139 addi sp,sp,-64 + c0035eaa: f822 sd s0,48(sp) + c0035eac: fc06 sd ra,56(sp) + c0035eae: f426 sd s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36799 switch(e->def_type) { - c0035ce0: 0096c783 lbu a5,9(a3) - c0035ce4: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36787 + c0035eb0: 0096c783 lbu a5,9(a3) + c0035eb4: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36795 { - c0035ce6: 8436 mv s0,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36791 + c0035eb6: 8436 mv s0,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36799 switch(e->def_type) { - c0035ce8: 02e78463 beq a5,a4,c0035d10 - c0035cec: 4721 li a4,8 - c0035cee: 02e78a63 beq a5,a4,c0035d22 - c0035cf2: e795 bnez a5,c0035d1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36793 + c0035eb8: 02e78463 beq a5,a4,c0035ee0 + c0035ebc: 4721 li a4,8 + c0035ebe: 02e78a63 beq a5,a4,c0035ef2 + c0035ec2: e795 bnez a5,c0035eee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 val = JS_NewCFunction2(ctx, e->u.func.cfunc.generic, - c0035cf4: 6010 ld a2,0(s0) - c0035cf6: 6c0c ld a1,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 + c0035ec4: 6010 ld a2,0(s0) + c0035ec6: 6c0c ld a1,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 } - c0035cf8: 7442 ld s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36793 + c0035ec8: 7442 ld s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 val = JS_NewCFunction2(ctx, e->u.func.cfunc.generic, - c0035cfa: 00a69783 lh a5,10(a3) - c0035cfe: 0116c703 lbu a4,17(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 + c0035eca: 00a69783 lh a5,10(a3) + c0035ece: 0116c703 lbu a4,17(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 } - c0035d02: 70e2 ld ra,56(sp) - c0035d04: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36793 + c0035ed2: 70e2 ld ra,56(sp) + c0035ed4: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 val = JS_NewCFunction2(ctx, e->u.func.cfunc.generic, - c0035d06: 0106c683 lbu a3,16(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 + c0035ed6: 0106c683 lbu a3,16(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 } - c0035d0a: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36793 + c0035eda: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 val = JS_NewCFunction2(ctx, e->u.func.cfunc.generic, - c0035d0c: cdaf306f j c00291e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 + c0035edc: cdaf306f j c00293b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 } - c0035d10: 7442 ld s0,48(sp) - c0035d12: 70e2 ld ra,56(sp) - c0035d14: 74a2 ld s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36797 + c0035ee0: 7442 ld s0,48(sp) + c0035ee2: 70e2 ld ra,56(sp) + c0035ee4: 74a2 ld s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36805 val = JS_NewAtomString(ctx, e->u.str); - c0035d16: 6a8c ld a1,16(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 + c0035ee6: 6a8c ld a1,16(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 } - c0035d18: 6121 addi sp,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36797 + c0035ee8: 6121 addi sp,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36805 val = JS_NewAtomString(ctx, e->u.str); - c0035d1a: 886e406f j c0019da0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36804 + c0035eea: 886e406f j c0019f70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36812 abort(); - c0035d1e: 2ed1f0ef jal ra,c005580a - c0035d22: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36800 + c0035eee: 2ed1f0ef jal ra,c00559da + c0035ef2: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36808 val = JS_NewObject(ctx); - c0035d24: 864e10ef jal ra,c0016d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 + c0035ef4: 864e10ef jal ra,c0016f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36809 JS_SetPropertyFunctionList(ctx, val, e->u.prop_list.tab, e->u.prop_list.len); - c0035d28: 4c18 lw a4,24(s0) - c0035d2a: 6814 ld a3,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36800 + c0035ef8: 4c18 lw a4,24(s0) + c0035efa: 6814 ld a3,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36808 val = JS_NewObject(ctx); - c0035d2c: e02a sd a0,0(sp) - c0035d2e: e42e sd a1,8(sp) - c0035d30: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36801 + c0035efc: e02a sd a0,0(sp) + c0035efe: e42e sd a1,8(sp) + c0035f00: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36809 JS_SetPropertyFunctionList(ctx, val, e->u.prop_list.tab, e->u.prop_list.len); - c0035d32: 85aa mv a1,a0 - c0035d34: 8526 mv a0,s1 - c0035d36: f4bff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36807 -} - c0035d3a: 70e2 ld ra,56(sp) - c0035d3c: 7442 ld s0,48(sp) - c0035d3e: 6502 ld a0,0(sp) - c0035d40: 65a2 ld a1,8(sp) - c0035d42: 74a2 ld s1,40(sp) - c0035d44: 6121 addi sp,sp,64 - c0035d46: 8082 ret - -00000000c0035d48 : + c0035f02: 85aa mv a1,a0 + c0035f04: 8526 mv a0,s1 + c0035f06: f4bff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36815 +} + c0035f0a: 70e2 ld ra,56(sp) + c0035f0c: 7442 ld s0,48(sp) + c0035f0e: 6502 ld a0,0(sp) + c0035f10: 65a2 ld a1,8(sp) + c0035f12: 74a2 ld s1,40(sp) + c0035f14: 6121 addi sp,sp,64 + c0035f16: 8082 ret + +00000000c0035f18 : JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2147 { - c0035d48: 7159 addi sp,sp,-112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2143 + c0035f18: 7159 addi sp,sp,-112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2151 ctx = js_mallocz_rt(rt, sizeof(JSContext)); - c0035d4a: 1c800593 li a1,456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2139 -{ - c0035d4e: f0a2 sd s0,96(sp) - c0035d50: eca6 sd s1,88(sp) - c0035d52: f486 sd ra,104(sp) - c0035d54: e8ca sd s2,80(sp) - c0035d56: e4ce sd s3,72(sp) - c0035d58: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2143 + c0035f1a: 1c800593 li a1,456 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2147 +{ + c0035f1e: f0a2 sd s0,96(sp) + c0035f20: eca6 sd s1,88(sp) + c0035f22: f486 sd ra,104(sp) + c0035f24: e8ca sd s2,80(sp) + c0035f26: e4ce sd s3,72(sp) + c0035f28: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2151 ctx = js_mallocz_rt(rt, sizeof(JSContext)); - c0035d5a: 80cd10ef jal ra,c0006d66 - c0035d5e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2144 + c0035f2a: f2bd00ef jal ra,c0006e54 + c0035f2e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2152 if (!ctx) - c0035d60: c91d beqz a0,c0035d96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2146 + c0035f30: c91d beqz a0,c0035f66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2154 ctx->header.ref_count = 1; - c0035d62: 4785 li a5,1 - c0035d64: c11c sw a5,0(a0) + c0035f32: 4785 li a5,1 + c0035f34: c11c sw a5,0(a0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0035d66: 4795 li a5,5 - c0035d68: 00f50223 sb a5,4(a0) + c0035f36: 4795 li a5,5 + c0035f38: 00f50223 sb a5,4(a0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0035d6c: 64d8 ld a4,136(s1) + c0035f3c: 64d8 ld a4,136(s1) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0035d6e: 00850793 addi a5,a0,8 + c0035f3e: 00850793 addi a5,a0,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0035d72: e71c sd a5,8(a4) + c0035f42: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0035d74: e518 sd a4,8(a0) + c0035f44: e518 sd a4,8(a0) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 - c0035d76: 08848713 addi a4,s1,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 + c0035f46: 08848713 addi a4,s1,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0035d7a: e918 sd a4,16(a0) + c0035f4a: e918 sd a4,16(a0) JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2158 rt->class_count); - c0035d7c: 54ec lw a1,108(s1) + c0035f4c: 54ec lw a1,108(s1) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0035d7e: e4dc sd a5,136(s1) + c0035f4e: e4dc sd a5,136(s1) JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2149 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2157 ctx->class_proto = js_malloc_rt(rt, sizeof(ctx->class_proto[0]) * - c0035d80: 8526 mv a0,s1 - c0035d82: 0592 slli a1,a1,0x4 - c0035d84: ddfd00ef jal ra,c0006b62 - c0035d88: e028 sd a0,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2151 + c0035f50: 8526 mv a0,s1 + c0035f52: 0592 slli a1,a1,0x4 + c0035f54: cfdd00ef jal ra,c0006c50 + c0035f58: e028 sd a0,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2159 if (!ctx->class_proto) { - c0035d8a: ed11 bnez a0,c0035da6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2152 + c0035f5a: ed11 bnez a0,c0035f76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2160 js_free_rt(rt, ctx); - c0035d8c: 85a2 mv a1,s0 - c0035d8e: 8526 mv a0,s1 - c0035d90: e17d00ef jal ra,c0006ba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2153 + c0035f5c: 85a2 mv a1,s0 + c0035f5e: 8526 mv a0,s1 + c0035f60: d35d00ef jal ra,c0006c94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2161 return NULL; - c0035d94: 4401 li s0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2171 -} - c0035d96: 70a6 ld ra,104(sp) - c0035d98: 8522 mv a0,s0 - c0035d9a: 7406 ld s0,96(sp) - c0035d9c: 64e6 ld s1,88(sp) - c0035d9e: 6946 ld s2,80(sp) - c0035da0: 69a6 ld s3,72(sp) - c0035da2: 6165 addi sp,sp,112 - c0035da4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2155 + c0035f64: 4401 li s0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2179 +} + c0035f66: 70a6 ld ra,104(sp) + c0035f68: 8522 mv a0,s0 + c0035f6a: 7406 ld s0,96(sp) + c0035f6c: 64e6 ld s1,88(sp) + c0035f6e: 6946 ld s2,80(sp) + c0035f70: 69a6 ld s3,72(sp) + c0035f72: 6165 addi sp,sp,112 + c0035f74: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2163 ctx->rt = rt; - c0035da6: ec04 sd s1,24(s0) + c0035f76: ec04 sd s1,24(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0035da8: 7cb8 ld a4,120(s1) + c0035f78: 7cb8 ld a4,120(s1) JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2164 list_add_tail(&ctx->link, &rt->context_list); - c0035daa: 02040793 addi a5,s0,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2163 + c0035f7a: 02040793 addi a5,s0,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2171 ctx->class_proto[i] = JS_NULL; - c0035dae: 4689 li a3,2 + c0035f7e: 4689 li a3,2 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0035db0: e71c sd a5,8(a4) + c0035f80: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0035db2: f018 sd a4,32(s0) + c0035f82: f018 sd a4,32(s0) JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2164 list_add_tail(&ctx->link, &rt->context_list); - c0035db4: 07848713 addi a4,s1,120 + c0035f84: 07848713 addi a4,s1,120 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0035db8: f418 sd a4,40(s0) + c0035f88: f418 sd a4,40(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0035dba: fcbc sd a5,120(s1) + c0035f8a: fcbc sd a5,120(s1) JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2157 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2165 ctx->bf_ctx = &rt->bf_ctx; - c0035dbc: 19048793 addi a5,s1,400 - c0035dc0: 18f43823 sd a5,400(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2162 + c0035f8c: 19048793 addi a5,s1,400 + c0035f90: 18f43823 sd a5,400(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2170 for(i = 0; i < rt->class_count; i++) - c0035dc4: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2162 (discriminator 1) - c0035dc6: 54f8 lw a4,108(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2163 (discriminator 1) + c0035f94: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2170 (discriminator 1) + c0035f96: 54f8 lw a4,108(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2171 (discriminator 1) ctx->class_proto[i] = JS_NULL; - c0035dc8: 04043903 ld s2,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2162 (discriminator 1) + c0035f98: 04043903 ld s2,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2170 (discriminator 1) for(i = 0; i < rt->class_count; i++) - c0035dcc: 14e7c363 blt a5,a4,c0035f12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2164 + c0035f9c: 14e7c363 blt a5,a4,c00360e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2172 ctx->array_ctor = JS_NULL; - c0035dd0: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2167 + c0035fa0: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2175 init_list_head(&ctx->loaded_modules); - c0035dd2: 1a040713 addi a4,s0,416 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2164 + c0035fa2: 1a040713 addi a4,s0,416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2172 ctx->array_ctor = JS_NULL; - c0035dd6: f83c sd a5,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2165 + c0035fa6: f83c sd a5,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2173 ctx->regexp_ctor = JS_NULL; - c0035dd8: e05c sd a5,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2166 + c0035fa8: e05c sd a5,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2174 ctx->promise_ctor = JS_NULL; - c0035dda: e85c sd a5,144(s0) + c0035faa: e85c sd a5,144(s0) init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0035ddc: 1ae43023 sd a4,416(s0) + c0035fac: 1ae43023 sd a4,416(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0035de0: 1ae43423 sd a4,424(s0) + c0035fb0: 1ae43423 sd a4,424(s0) JS_AddIntrinsicBasicObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52413 ctx->class_proto[JS_CLASS_OBJECT] = JS_NewObjectProto(ctx, JS_NULL); - c0035de4: 4609 li a2,2 + c0035fb4: 4609 li a2,2 JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2164 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2172 ctx->array_ctor = JS_NULL; - c0035de6: 06043423 sd zero,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2165 + c0035fb6: 06043423 sd zero,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2173 ctx->regexp_ctor = JS_NULL; - c0035dea: 06043c23 sd zero,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2166 + c0035fba: 06043c23 sd zero,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2174 ctx->promise_ctor = JS_NULL; - c0035dee: 08043423 sd zero,136(s0) + c0035fbe: 08043423 sd zero,136(s0) JS_AddIntrinsicBasicObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52413 ctx->class_proto[JS_CLASS_OBJECT] = JS_NewObjectProto(ctx, JS_NULL); - c0035df2: 4581 li a1,0 - c0035df4: 8522 mv a0,s0 - c0035df6: ec3e sd a5,24(sp) - c0035df8: e802 sd zero,16(sp) - c0035dfa: f35e00ef jal ra,c0016d2e - c0035dfe: 00a93823 sd a0,16(s2) - c0035e02: 00b93c23 sd a1,24(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52406 + c0035fc2: 4581 li a1,0 + c0035fc4: 8522 mv a0,s0 + c0035fc6: ec3e sd a5,24(sp) + c0035fc8: e802 sd zero,16(sp) + c0035fca: f35e00ef jal ra,c0016efe + c0035fce: 00a93823 sd a0,16(s2) + c0035fd2: 00b93c23 sd a1,24(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52414 ctx->function_proto = JS_NewCFunction3(ctx, js_function_proto, "", 0, - c0035e06: 603c ld a5,64(s0) - c0035e08: 4701 li a4,0 - c0035e0a: 4681 li a3,0 - c0035e0c: 0107b803 ld a6,16(a5) # 4010 <__clzdi2-0xbfffbff0> - c0035e10: 0187b883 ld a7,24(a5) - c0035e14: 00027617 auipc a2,0x27 - c0035e18: 1bc60613 addi a2,a2,444 # c005cfd0 - c0035e1c: 4781 li a5,0 - c0035e1e: fffce597 auipc a1,0xfffce - c0035e22: 7cc58593 addi a1,a1,1996 # c00045ea - c0035e26: 8522 mv a0,s0 - c0035e28: 908f30ef jal ra,c0028f30 - c0035e2c: e428 sd a0,72(s0) - c0035e2e: e82c sd a1,80(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52409 + c0035fd6: 603c ld a5,64(s0) + c0035fd8: 4701 li a4,0 + c0035fda: 4681 li a3,0 + c0035fdc: 0107b803 ld a6,16(a5) # 4010 <__clzdi2-0xbfffbff0> + c0035fe0: 0187b883 ld a7,24(a5) + c0035fe4: 00027617 auipc a2,0x27 + c0035fe8: 21c60613 addi a2,a2,540 # c005d200 + c0035fec: 4781 li a5,0 + c0035fee: fffce597 auipc a1,0xfffce + c0035ff2: 5fc58593 addi a1,a1,1532 # c00045ea + c0035ff6: 8522 mv a0,s0 + c0035ff8: 908f30ef jal ra,c0029100 + c0035ffc: e428 sd a0,72(s0) + c0035ffe: e82c sd a1,80(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52417 ctx->class_proto[JS_CLASS_BYTECODE_FUNCTION] = JS_DupValue(ctx, ctx->function_proto); - c0035e30: 83fd00ef jal ra,c000666e - c0035e34: 603c ld a5,64(s0) - c0035e36: 00031917 auipc s2,0x31 - c0035e3a: c4a90913 addi s2,s2,-950 # c0066a80 - c0035e3e: 09840493 addi s1,s0,152 - c0035e42: ebe8 sd a0,208(a5) - c0035e44: efec sd a1,216(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52410 + c0036000: f5cd00ef jal ra,c000675c + c0036004: 603c ld a5,64(s0) + c0036006: 00031917 auipc s2,0x31 + c003600a: cda90913 addi s2,s2,-806 # c0066ce0 + c003600e: 09840493 addi s1,s0,152 + c0036012: ebe8 sd a0,208(a5) + c0036014: efec sd a1,216(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52418 ctx->class_proto[JS_CLASS_ERROR] = JS_NewObject(ctx); - c0035e46: 8522 mv a0,s0 - c0035e48: f41e00ef jal ra,c0016d88 - c0035e4c: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52421 + c0036016: 8522 mv a0,s0 + c0036018: f41e00ef jal ra,c0016f58 + c003601c: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52429 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ERROR], - c0035e4e: 470d li a4,3 - c0035e50: 0002e697 auipc a3,0x2e - c0035e54: de068693 addi a3,a3,-544 # c0063c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52410 + c003601e: 470d li a4,3 + c0036020: 0002e697 auipc a3,0x2e + c0036024: e7068693 addi a3,a3,-400 # c0063e90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52418 ctx->class_proto[JS_CLASS_ERROR] = JS_NewObject(ctx); - c0035e58: fb88 sd a0,48(a5) - c0035e5a: ff8c sd a1,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52421 + c0036028: fb88 sd a0,48(a5) + c003602a: ff8c sd a1,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52429 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ERROR], - c0035e5c: 603c ld a5,64(s0) - c0035e5e: 8522 mv a0,s0 - c0035e60: 11840993 addi s3,s0,280 - c0035e64: 7b8c ld a1,48(a5) - c0035e66: 7f90 ld a2,56(a5) - c0035e68: e19ff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52426 + c003602c: 603c ld a5,64(s0) + c003602e: 8522 mv a0,s0 + c0036030: 11840993 addi s3,s0,280 + c0036034: 7b8c ld a1,48(a5) + c0036036: 7f90 ld a2,56(a5) + c0036038: e19ff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52434 proto = JS_NewObjectProto(ctx, ctx->class_proto[JS_CLASS_ERROR]); - c0035e6c: 603c ld a5,64(s0) - c0035e6e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52425 + c003603c: 603c ld a5,64(s0) + c003603e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52433 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c0035e70: 04c1 addi s1,s1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52426 + c0036040: 04c1 addi s1,s1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52434 proto = JS_NewObjectProto(ctx, ctx->class_proto[JS_CLASS_ERROR]); - c0035e72: 7f90 ld a2,56(a5) - c0035e74: 7b8c ld a1,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52425 + c0036042: 7f90 ld a2,56(a5) + c0036044: 7b8c ld a1,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52433 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c0035e76: 0921 addi s2,s2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52426 + c0036046: 0921 addi s2,s2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52434 proto = JS_NewObjectProto(ctx, ctx->class_proto[JS_CLASS_ERROR]); - c0035e78: eb7e00ef jal ra,c0016d2e - c0035e7c: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52427 + c0036048: eb7e00ef jal ra,c0016efe + c003604c: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52435 JS_DefinePropertyValue(ctx, proto, JS_ATOM_name, - c0035e7e: ff893583 ld a1,-8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52426 + c003604e: ff893583 ld a1,-8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52434 proto = JS_NewObjectProto(ctx, ctx->class_proto[JS_CLASS_ERROR]); - c0035e82: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52427 + c0036052: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52435 JS_DefinePropertyValue(ctx, proto, JS_ATOM_name, - c0035e84: 8522 mv a0,s0 - c0035e86: f1be30ef jal ra,c0019da0 - c0035e8a: 87ae mv a5,a1 - c0035e8c: 6622 ld a2,8(sp) - c0035e8e: fc2e sd a1,56(sp) - c0035e90: 6582 ld a1,0(sp) - c0035e92: 872a mv a4,a0 - c0035e94: 480d li a6,3 - c0035e96: 03700693 li a3,55 - c0035e9a: f82a sd a0,48(sp) - c0035e9c: 8522 mv a0,s0 - c0035e9e: 918dd0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52430 + c0036054: 8522 mv a0,s0 + c0036056: f1be30ef jal ra,c0019f70 + c003605a: 87ae mv a5,a1 + c003605c: 6622 ld a2,8(sp) + c003605e: fc2e sd a1,56(sp) + c0036060: 6582 ld a1,0(sp) + c0036062: 872a mv a4,a0 + c0036064: 480d li a6,3 + c0036066: 03700693 li a3,55 + c003606a: f82a sd a0,48(sp) + c003606c: 8522 mv a0,s0 + c003606e: 836dd0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52438 JS_DefinePropertyValue(ctx, proto, JS_ATOM_message, - c0035ea2: 02f00593 li a1,47 - c0035ea6: 8522 mv a0,s0 - c0035ea8: c95e30ef jal ra,c0019b3c - c0035eac: 87ae mv a5,a1 - c0035eae: f42e sd a1,40(sp) - c0035eb0: 6622 ld a2,8(sp) - c0035eb2: 6582 ld a1,0(sp) - c0035eb4: 872a mv a4,a0 - c0035eb6: f02a sd a0,32(sp) - c0035eb8: 480d li a6,3 - c0035eba: 03300693 li a3,51 - c0035ebe: 8522 mv a0,s0 - c0035ec0: 8f6dd0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52433 + c0036072: 02f00593 li a1,47 + c0036076: 8522 mv a0,s0 + c0036078: c95e30ef jal ra,c0019d0c + c003607c: 87ae mv a5,a1 + c003607e: f42e sd a1,40(sp) + c0036080: 6622 ld a2,8(sp) + c0036082: 6582 ld a1,0(sp) + c0036084: 872a mv a4,a0 + c0036086: f02a sd a0,32(sp) + c0036088: 480d li a6,3 + c003608a: 03300693 li a3,51 + c003608e: 8522 mv a0,s0 + c0036090: 814dd0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52441 ctx->native_error_proto[i] = proto; - c0035ec4: 6782 ld a5,0(sp) - c0035ec6: fef4b823 sd a5,-16(s1) - c0035eca: 67a2 ld a5,8(sp) - c0035ecc: fef4bc23 sd a5,-8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52425 + c0036094: 6782 ld a5,0(sp) + c0036096: fef4b823 sd a5,-16(s1) + c003609a: 67a2 ld a5,8(sp) + c003609c: fef4bc23 sd a5,-8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52433 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c0035ed0: f8999ee3 bne s3,s1,c0035e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52438 + c00360a0: f8999ee3 bne s3,s1,c003603c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52446 JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c0035ed4: 6024 ld s1,64(s0) - c0035ed6: 4689 li a3,2 - c0035ed8: 8522 mv a0,s0 - c0035eda: 688c ld a1,16(s1) - c0035edc: 6c90 ld a2,24(s1) - c0035ede: 8abe00ef jal ra,c0016788 - c0035ee2: f088 sd a0,32(s1) - c0035ee4: f48c sd a1,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52441 + c00360a4: 6024 ld s1,64(s0) + c00360a6: 4689 li a3,2 + c00360a8: 8522 mv a0,s0 + c00360aa: 688c ld a1,16(s1) + c00360ac: 6c90 ld a2,24(s1) + c00360ae: 8abe00ef jal ra,c0016958 + c00360b2: f088 sd a0,32(s1) + c00360b4: f48c sd a1,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52449 ctx->array_shape = js_new_shape2(ctx, get_proto_obj(ctx->class_proto[JS_CLASS_ARRAY]), - c0035ee6: 603c ld a5,64(s0) + c00360b6: 603c ld a5,64(s0) get_proto_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4896 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4904 if (JS_VALUE_GET_TAG(proto_val) != JS_TAG_OBJECT) - c0035ee8: 5798 lw a4,40(a5) - c0035eea: 738c ld a1,32(a5) - c0035eec: 57fd li a5,-1 - c0035eee: 00f70363 beq a4,a5,c0035ef4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4897 + c00360b8: 5798 lw a4,40(a5) + c00360ba: 738c ld a1,32(a5) + c00360bc: 57fd li a5,-1 + c00360be: 00f70363 beq a4,a5,c00360c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:4905 return NULL; - c0035ef2: 4581 li a1,0 + c00360c2: 4581 li a1,0 JS_AddIntrinsicBasicObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52441 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52449 ctx->array_shape = js_new_shape2(ctx, get_proto_obj(ctx->class_proto[JS_CLASS_ARRAY]), - c0035ef4: 4605 li a2,1 - c0035ef6: 8522 mv a0,s0 - c0035ef8: a2ddf0ef jal ra,c0015924 - c0035efc: fc08 sd a0,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52443 + c00360c4: 4605 li a2,1 + c00360c6: 8522 mv a0,s0 + c00360c8: a2ddf0ef jal ra,c0015af4 + c00360cc: fc08 sd a0,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52451 add_shape_property(ctx, &ctx->array_shape, NULL, - c0035efe: 4729 li a4,10 - c0035f00: 03000693 li a3,48 - c0035f04: 4601 li a2,0 - c0035f06: 03840593 addi a1,s0,56 - c0035f0a: 8522 mv a0,s0 - c0035f0c: baae00ef jal ra,c00162b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52452 -} - c0035f10: b559 j c0035d96 + c00360ce: 4729 li a4,10 + c00360d0: 03000693 li a3,48 + c00360d4: 4601 li a2,0 + c00360d6: 03840593 addi a1,s0,56 + c00360da: 8522 mv a0,s0 + c00360dc: baae00ef jal ra,c0016486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 +} + c00360e0: b559 j c0035f66 JS_NewContextRaw(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2163 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2171 (discriminator 3) ctx->class_proto[i] = JS_NULL; - c0035f12: 00479713 slli a4,a5,0x4 - c0035f16: 993a add s2,s2,a4 - c0035f18: 00093023 sd zero,0(s2) - c0035f1c: 00d93423 sd a3,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2162 (discriminator 3) + c00360e2: 00479713 slli a4,a5,0x4 + c00360e6: 993a add s2,s2,a4 + c00360e8: 00093023 sd zero,0(s2) + c00360ec: 00d93423 sd a3,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2170 (discriminator 3) for(i = 0; i < rt->class_count; i++) - c0035f20: 2785 addiw a5,a5,1 - c0035f22: b555 j c0035dc6 + c00360f0: 2785 addiw a5,a5,1 + c00360f2: b555 j c0035f96 -00000000c0035f24 : +00000000c00360f4 : JS_SetModuleExportList(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36936 { - c0035f24: 7175 addi sp,sp,-144 - c0035f26: e122 sd s0,128(sp) - c0035f28: fca6 sd s1,120(sp) - c0035f2a: f8ca sd s2,112(sp) - c0035f2c: f4ce sd s3,104(sp) - c0035f2e: f0d2 sd s4,96(sp) - c0035f30: ecd6 sd s5,88(sp) - c0035f32: e8da sd s6,80(sp) - c0035f34: e4de sd s7,72(sp) - c0035f36: e506 sd ra,136(sp) - c0035f38: 84aa mv s1,a0 - c0035f3a: 8a2e mv s4,a1 - c0035f3c: 8936 mv s2,a3 - c0035f3e: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36932 + c00360f4: 7175 addi sp,sp,-144 + c00360f6: e122 sd s0,128(sp) + c00360f8: fca6 sd s1,120(sp) + c00360fa: f8ca sd s2,112(sp) + c00360fc: f4ce sd s3,104(sp) + c00360fe: f0d2 sd s4,96(sp) + c0036100: ecd6 sd s5,88(sp) + c0036102: e8da sd s6,80(sp) + c0036104: e4de sd s7,72(sp) + c0036106: e506 sd ra,136(sp) + c0036108: 84aa mv s1,a0 + c003610a: 8a2e mv s4,a1 + c003610c: 8936 mv s2,a3 + c003610e: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36940 for(i = 0; i < len; i++) { - c0035f40: 4981 li s3,0 - c0035f42: 4b21 li s6,8 - c0035f44: 0002aa97 auipc s5,0x2a - c0035f48: 79ca8a93 addi s5,s5,1948 # c00606e0 - c0035f4c: 4b9d li s7,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36932 (discriminator 1) - c0035f4e: 0129ce63 blt s3,s2,c0035f6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36961 + c0036110: 4981 li s3,0 + c0036112: 4b21 li s6,8 + c0036114: 0002ba97 auipc s5,0x2b + c0036118: 82ca8a93 addi s5,s5,-2004 # c0060940 + c003611c: 4b9d li s7,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36940 (discriminator 1) + c003611e: 0129ce63 blt s3,s2,c003613a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36969 return 0; - c0035f52: 4501 li a0,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36962 + c0036122: 4501 li a0,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36970 } - c0035f54: 60aa ld ra,136(sp) - c0035f56: 640a ld s0,128(sp) - c0035f58: 74e6 ld s1,120(sp) - c0035f5a: 7946 ld s2,112(sp) - c0035f5c: 79a6 ld s3,104(sp) - c0035f5e: 7a06 ld s4,96(sp) - c0035f60: 6ae6 ld s5,88(sp) - c0035f62: 6b46 ld s6,80(sp) - c0035f64: 6ba6 ld s7,72(sp) - c0035f66: 6149 addi sp,sp,144 - c0035f68: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36934 + c0036124: 60aa ld ra,136(sp) + c0036126: 640a ld s0,128(sp) + c0036128: 74e6 ld s1,120(sp) + c003612a: 7946 ld s2,112(sp) + c003612c: 79a6 ld s3,104(sp) + c003612e: 7a06 ld s4,96(sp) + c0036130: 6ae6 ld s5,88(sp) + c0036132: 6b46 ld s6,80(sp) + c0036134: 6ba6 ld s7,72(sp) + c0036136: 6149 addi sp,sp,144 + c0036138: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36942 switch(e->def_type) { - c0035f6a: 00944783 lbu a5,9(s0) - c0035f6e: 0afb6763 bltu s6,a5,c003601c - c0035f72: 078a slli a5,a5,0x2 - c0035f74: 97d6 add a5,a5,s5 - c0035f76: 439c lw a5,0(a5) - c0035f78: 97d6 add a5,a5,s5 - c0035f7a: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36936 + c003613a: 00944783 lbu a5,9(s0) + c003613e: 0afb6763 bltu s6,a5,c00361ec + c0036142: 078a slli a5,a5,0x2 + c0036144: 97d6 add a5,a5,s5 + c0036146: 439c lw a5,0(a5) + c0036148: 97d6 add a5,a5,s5 + c003614a: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36944 val = JS_NewCFunction2(ctx, e->u.func.cfunc.generic, - c0035f7c: 00a41783 lh a5,10(s0) - c0035f80: 01144703 lbu a4,17(s0) - c0035f84: 01044683 lbu a3,16(s0) - c0035f88: 6010 ld a2,0(s0) - c0035f8a: 6c0c ld a1,24(s0) - c0035f8c: 8526 mv a0,s1 - c0035f8e: a58f30ef jal ra,c00291e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36940 + c003614c: 00a41783 lh a5,10(s0) + c0036150: 01144703 lbu a4,17(s0) + c0036154: 01044683 lbu a3,16(s0) + c0036158: 6010 ld a2,0(s0) + c003615a: 6c0c ld a1,24(s0) + c003615c: 8526 mv a0,s1 + c003615e: a58f30ef jal ra,c00293b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36948 val = JS_NewString(ctx, e->u.str); - c0035f92: e02a sd a0,0(sp) - c0035f94: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36958 + c0036162: e02a sd a0,0(sp) + c0036164: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36966 if (JS_SetModuleExport(ctx, m, e->name, val)) - c0035f96: 6010 ld a2,0(s0) - c0035f98: 6682 ld a3,0(sp) - c0035f9a: 6722 ld a4,8(sp) - c0035f9c: 85d2 mv a1,s4 - c0035f9e: 8526 mv a0,s1 - c0035fa0: ed6e30ef jal ra,c0019676 - c0035fa4: 02040413 addi s0,s0,32 - c0035fa8: ed25 bnez a0,c0036020 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36932 (discriminator 2) + c0036166: 6010 ld a2,0(s0) + c0036168: 6682 ld a3,0(sp) + c003616a: 6722 ld a4,8(sp) + c003616c: 85d2 mv a1,s4 + c003616e: 8526 mv a0,s1 + c0036170: ed6e30ef jal ra,c0019846 + c0036174: 02040413 addi s0,s0,32 + c0036178: ed25 bnez a0,c00361f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36940 (discriminator 2) for(i = 0; i < len; i++) { - c0035faa: 2985 addiw s3,s3,1 - c0035fac: b74d j c0035f4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36940 + c003617a: 2985 addiw s3,s3,1 + c003617c: b74d j c003611e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36948 val = JS_NewString(ctx, e->u.str); - c0035fae: 680c ld a1,16(s0) - c0035fb0: 8526 mv a0,s1 - c0035fb2: a71e30ef jal ra,c0019a22 - c0035fb6: bff1 j c0035f92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36943 + c003617e: 680c ld a1,16(s0) + c0036180: 8526 mv a0,s1 + c0036182: a71e30ef jal ra,c0019bf2 + c0036186: bff1 j c0036162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36951 val = JS_NewInt32(ctx, e->u.i32); - c0035fb8: 481c lw a5,16(s0) + c0036188: 481c lw a5,16(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0035fba: ca02 sw zero,20(sp) - c0035fbc: ec02 sd zero,24(sp) - c0035fbe: c83e sw a5,16(sp) - c0035fc0: 67c2 ld a5,16(sp) - c0035fc2: e402 sd zero,8(sp) - c0035fc4: e03e sd a5,0(sp) - c0035fc6: bfc1 j c0035f96 + c003618a: ca02 sw zero,20(sp) + c003618c: ec02 sd zero,24(sp) + c003618e: c83e sw a5,16(sp) + c0036190: 67c2 ld a5,16(sp) + c0036192: e402 sd zero,8(sp) + c0036194: e03e sd a5,0(sp) + c0036196: bfc1 j c0036166 JS_SetModuleExportList(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36946 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36954 val = JS_NewInt64(ctx, e->u.i64); - c0035fc8: 6818 ld a4,16(s0) + c0036198: 6818 ld a4,16(s0) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0035fca: 0007079b sext.w a5,a4 - c0035fce: 00f71e63 bne a4,a5,c0035fea + c003619a: 0007079b sext.w a5,a4 + c003619e: 00f71e63 bne a4,a5,c00361ba JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0035fd2: da02 sw zero,52(sp) - c0035fd4: d83e sw a5,48(sp) - c0035fd6: 7742 ld a4,48(sp) - c0035fd8: fc02 sd zero,56(sp) - c0035fda: f402 sd zero,40(sp) - c0035fdc: f03a sd a4,32(sp) - c0035fde: 4701 li a4,0 + c00361a2: da02 sw zero,52(sp) + c00361a4: d83e sw a5,48(sp) + c00361a6: 7742 ld a4,48(sp) + c00361a8: fc02 sd zero,56(sp) + c00361aa: f402 sd zero,40(sp) + c00361ac: f03a sd a4,32(sp) + c00361ae: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0035fe0: d03e sw a5,32(sp) - c0035fe2: 3782 fld fa5,32(sp) - c0035fe4: e43a sd a4,8(sp) - c0035fe6: a03e fsd fa5,0(sp) - c0035fe8: b77d j c0035f96 + c00361b0: d03e sw a5,32(sp) + c00361b2: 3782 fld fa5,32(sp) + c00361b4: e43a sd a4,8(sp) + c00361b6: a03e fsd fa5,0(sp) + c00361b8: b77d j c0036166 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0035fea: d22777d3 fcvt.d.l fa5,a4 - c0035fee: 471d li a4,7 - c0035ff0: e20787d3 fmv.x.d a5,fa5 + c00361ba: d22777d3 fcvt.d.l fa5,a4 + c00361be: 471d li a4,7 + c00361c0: e20787d3 fmv.x.d a5,fa5 JS_SetModuleExportList(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0035ff4: b03e fsd fa5,32(sp) - c0035ff6: 2781 sext.w a5,a5 - c0035ff8: b7e5 j c0035fe0 + c00361c4: b03e fsd fa5,32(sp) + c00361c6: 2781 sext.w a5,a5 + c00361c8: b7e5 j c00361b0 __JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 - c0035ffa: 281c fld fa5,16(s0) - c0035ffc: e45e sd s7,8(sp) - c0035ffe: a03e fsd fa5,0(sp) - c0036000: bf59 j c0035f96 + c00361ca: 281c fld fa5,16(s0) + c00361cc: e45e sd s7,8(sp) + c00361ce: a03e fsd fa5,0(sp) + c00361d0: bf59 j c0036166 JS_SetModuleExportList(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36952 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36960 val = JS_NewObject(ctx); - c0036002: 8526 mv a0,s1 - c0036004: d85e00ef jal ra,c0016d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36953 + c00361d2: 8526 mv a0,s1 + c00361d4: d85e00ef jal ra,c0016f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36961 JS_SetPropertyFunctionList(ctx, val, e->u.prop_list.tab, e->u.prop_list.len); - c0036008: 4c18 lw a4,24(s0) - c003600a: 6814 ld a3,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36952 + c00361d8: 4c18 lw a4,24(s0) + c00361da: 6814 ld a3,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36960 val = JS_NewObject(ctx); - c003600c: 862e mv a2,a1 - c003600e: e02a sd a0,0(sp) - c0036010: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36953 + c00361dc: 862e mv a2,a1 + c00361de: e02a sd a0,0(sp) + c00361e0: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36961 JS_SetPropertyFunctionList(ctx, val, e->u.prop_list.tab, e->u.prop_list.len); - c0036012: 85aa mv a1,a0 - c0036014: 8526 mv a0,s1 - c0036016: c6bff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36954 + c00361e2: 85aa mv a1,a0 + c00361e4: 8526 mv a0,s1 + c00361e6: c6bff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36962 break; - c003601a: bfb5 j c0035f96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36956 + c00361ea: bfb5 j c0036166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36964 abort(); - c003601c: 7ee1f0ef jal ra,c005580a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36959 + c00361ec: 7ee1f0ef jal ra,c00559da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36967 return -1; - c0036020: 557d li a0,-1 - c0036022: bf0d j c0035f54 + c00361f0: 557d li a0,-1 + c00361f2: bf0d j c0036124 -00000000c0036024 : +00000000c00361f4 : JS_AddIntrinsicStringNormalize(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43025 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_STRING], js_string_proto_normalize, - c0036024: 613c ld a5,64(a0) - c0036026: 4705 li a4,1 - c0036028: 00030697 auipc a3,0x30 - c003602c: 30068693 addi a3,a3,768 # c0066328 - c0036030: 6bac ld a1,80(a5) - c0036032: 6fb0 ld a2,88(a5) - c0036034: c4dff06f j c0035c80 - -00000000c0036038 : + c00361f4: 613c ld a5,64(a0) + c00361f6: 4705 li a4,1 + c00361f8: 00030697 auipc a3,0x30 + c00361fc: 39068693 addi a3,a3,912 # c0066588 + c0036200: 6bac ld a1,80(a5) + c0036202: 6fb0 ld a2,88(a5) + c0036204: c4dff06f j c0035e50 + +00000000c0036208 : JS_AddIntrinsicRegExp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44925 { - c0036038: 1101 addi sp,sp,-32 - c003603a: ec06 sd ra,24(sp) - c003603c: e822 sd s0,16(sp) + c0036208: 1101 addi sp,sp,-32 + c003620a: ec06 sd ra,24(sp) + c003620c: e822 sd s0,16(sp) JS_AddIntrinsicRegExpCompiler(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44921 ctx->compile_regexp = js_compile_regexp; - c003603e: fffe9797 auipc a5,0xfffe9 - c0036042: 6d278793 addi a5,a5,1746 # c001f710 - c0036046: 1af53823 sd a5,432(a0) + c003620e: fffe9797 auipc a5,0xfffe9 + c0036212: 6d278793 addi a5,a5,1746 # c001f8e0 + c0036216: 1af53823 sd a5,432(a0) JS_AddIntrinsicRegExp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44925 { - c003604a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44922 + c003621a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44930 ctx->class_proto[JS_CLASS_REGEXP] = JS_NewObject(ctx); - c003604c: d3de00ef jal ra,c0016d88 - c0036050: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44923 + c003621c: d3de00ef jal ra,c0016f58 + c0036220: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44931 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP], js_regexp_proto_funcs, - c0036052: 4749 li a4,18 - c0036054: 0002f697 auipc a3,0x2f - c0036058: 2d468693 addi a3,a3,724 # c0065328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44922 + c0036222: 4749 li a4,18 + c0036224: 0002f697 auipc a3,0x2f + c0036228: 36468693 addi a3,a3,868 # c0065588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44930 ctx->class_proto[JS_CLASS_REGEXP] = JS_NewObject(ctx); - c003605c: 12a7b023 sd a0,288(a5) - c0036060: 12b7b423 sd a1,296(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44923 + c003622c: 12a7b023 sd a0,288(a5) + c0036230: 12b7b423 sd a1,296(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44931 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP], js_regexp_proto_funcs, - c0036064: 603c ld a5,64(s0) - c0036066: 8522 mv a0,s0 - c0036068: 1207b583 ld a1,288(a5) - c003606c: 1287b603 ld a2,296(a5) - c0036070: c11ff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44925 + c0036234: 603c ld a5,64(s0) + c0036236: 8522 mv a0,s0 + c0036238: 1207b583 ld a1,288(a5) + c003623c: 1287b603 ld a2,296(a5) + c0036240: c11ff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44933 obj = JS_NewGlobalCConstructor(ctx, "RegExp", js_regexp_constructor, 2, - c0036074: 603c ld a5,64(s0) - c0036076: 4689 li a3,2 - c0036078: ffff2617 auipc a2,0xffff2 - c003607c: 31260613 addi a2,a2,786 # c002838a - c0036080: 1207b703 ld a4,288(a5) - c0036084: 1287b783 ld a5,296(a5) - c0036088: 8522 mv a0,s0 - c003608a: 0002a597 auipc a1,0x2a - c003608e: 67e58593 addi a1,a1,1662 # c0060708 - c0036092: 9e5f30ef jal ra,c0029a76 - c0036096: e02a sd a0,0(sp) - c0036098: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44927 + c0036244: 603c ld a5,64(s0) + c0036246: 4689 li a3,2 + c0036248: ffff2617 auipc a2,0xffff2 + c003624c: 31260613 addi a2,a2,786 # c002855a + c0036250: 1207b703 ld a4,288(a5) + c0036254: 1287b783 ld a5,296(a5) + c0036258: 8522 mv a0,s0 + c003625a: 0002a597 auipc a1,0x2a + c003625e: 70e58593 addi a1,a1,1806 # c0060968 + c0036262: 9e5f30ef jal ra,c0029c46 + c0036266: e02a sd a0,0(sp) + c0036268: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44935 ctx->regexp_ctor = JS_DupValue(ctx, obj); - c003609a: dd4d00ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44928 + c003626a: cf2d00ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44936 JS_SetPropertyFunctionList(ctx, obj, js_regexp_funcs, countof(js_regexp_funcs)); - c003609e: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44927 + c003626e: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44935 ctx->regexp_ctor = JS_DupValue(ctx, obj); - c00360a0: e04c sd a1,128(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44928 + c0036270: e04c sd a1,128(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44936 JS_SetPropertyFunctionList(ctx, obj, js_regexp_funcs, countof(js_regexp_funcs)); - c00360a2: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44927 + c0036272: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44935 ctx->regexp_ctor = JS_DupValue(ctx, obj); - c00360a4: fc28 sd a0,120(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44928 + c0036274: fc28 sd a0,120(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44936 JS_SetPropertyFunctionList(ctx, obj, js_regexp_funcs, countof(js_regexp_funcs)); - c00360a6: 4705 li a4,1 - c00360a8: 0002f697 auipc a3,0x2f - c00360ac: 26068693 addi a3,a3,608 # c0065308 - c00360b0: 8522 mv a0,s0 - c00360b2: bcfff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44931 + c0036276: 4705 li a4,1 + c0036278: 0002f697 auipc a3,0x2f + c003627c: 2f068693 addi a3,a3,752 # c0065568 + c0036280: 8522 mv a0,s0 + c0036282: bcfff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44939 JS_NewObjectProto(ctx, ctx->iterator_proto); - c00360b6: 12043603 ld a2,288(s0) - c00360ba: 11843583 ld a1,280(s0) - c00360be: 8522 mv a0,s0 - c00360c0: c6fe00ef jal ra,c0016d2e - c00360c4: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44932 + c0036286: 12043603 ld a2,288(s0) + c003628a: 11843583 ld a1,280(s0) + c003628e: 8522 mv a0,s0 + c0036290: c6fe00ef jal ra,c0016efe + c0036294: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44940 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP_STRING_ITERATOR], - c00360c6: 4709 li a4,2 - c00360c8: 0002f697 auipc a3,0x2f - c00360cc: 4a068693 addi a3,a3,1184 # c0065568 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44931 + c0036296: 4709 li a4,2 + c0036298: 0002f697 auipc a3,0x2f + c003629c: 53068693 addi a3,a3,1328 # c00657c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44939 JS_NewObjectProto(ctx, ctx->iterator_proto); - c00360d0: 2aa7b023 sd a0,672(a5) - c00360d4: 2ab7b423 sd a1,680(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44932 + c00362a0: 2aa7b023 sd a0,672(a5) + c00362a4: 2ab7b423 sd a1,680(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44940 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP_STRING_ITERATOR], - c00360d8: 603c ld a5,64(s0) - c00360da: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44935 + c00362a8: 603c ld a5,64(s0) + c00362aa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44943 } - c00360dc: 6442 ld s0,16(sp) - c00360de: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44932 + c00362ac: 6442 ld s0,16(sp) + c00362ae: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44940 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP_STRING_ITERATOR], - c00360e0: 2a07b583 ld a1,672(a5) - c00360e4: 2a87b603 ld a2,680(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44935 + c00362b0: 2a07b583 ld a1,672(a5) + c00362b4: 2a87b603 ld a2,680(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44943 } - c00360e8: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44932 + c00362b8: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44940 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_REGEXP_STRING_ITERATOR], - c00360ea: b97ff06f j c0035c80 + c00362ba: b97ff06f j c0035e50 -00000000c00360ee : +00000000c00362be : JS_AddIntrinsicJSON(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45638 JS_SetPropertyFunctionList(ctx, ctx->global_obj, js_json_obj, countof(js_json_obj)); - c00360ee: 16853583 ld a1,360(a0) - c00360f2: 17053603 ld a2,368(a0) - c00360f6: 4705 li a4,1 - c00360f8: 0002e697 auipc a3,0x2e - c00360fc: f3868693 addi a3,a3,-200 # c0064030 - c0036100: b81ff06f j c0035c80 - -00000000c0036104 : + c00362be: 16853583 ld a1,360(a0) + c00362c2: 17053603 ld a2,368(a0) + c00362c6: 4705 li a4,1 + c00362c8: 0002e697 auipc a3,0x2e + c00362cc: fc868693 addi a3,a3,-56 # c0064290 + c00362d0: b81ff06f j c0035e50 + +00000000c00362d4 : JS_AddIntrinsicProxy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46738 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46746 { - c0036104: 7179 addi sp,sp,-48 - c0036106: f022 sd s0,32(sp) - c0036108: f406 sd ra,40(sp) - c003610a: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46739 + c00362d4: 7179 addi sp,sp,-48 + c00362d6: f022 sd s0,32(sp) + c00362d8: f406 sd ra,40(sp) + c00362da: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46747 JSRuntime *rt = ctx->rt; - c003610c: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46738 + c00362dc: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46746 { - c003610e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46742 + c00362de: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46750 if (!JS_IsRegisteredClass(rt, JS_CLASS_PROXY)) { - c0036110: 02c00593 li a1,44 - c0036114: 8526 mv a0,s1 - c0036116: 987d10ef jal ra,c0007a9c - c003611a: e90d bnez a0,c003614c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46743 + c00362e0: 02c00593 li a1,44 + c00362e4: 8526 mv a0,s1 + c00362e6: 8a5d10ef jal ra,c0007b8a + c00362ea: e90d bnez a0,c003631c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46751 init_class_range(rt, js_proxy_class_def, JS_CLASS_PROXY, - c003611c: 4685 li a3,1 - c003611e: 02c00613 li a2,44 - c0036122: 0002f597 auipc a1,0x2f - c0036126: f9658593 addi a1,a1,-106 # c00650b8 - c003612a: 8526 mv a0,s1 - c003612c: b95ce0ef jal ra,c0004cc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46745 + c00362ec: 4685 li a3,1 + c00362ee: 02c00613 li a2,44 + c00362f2: 0002f597 auipc a1,0x2f + c00362f6: 02658593 addi a1,a1,38 # c0065318 + c00362fa: 8526 mv a0,s1 + c00362fc: 9c5ce0ef jal ra,c0004cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46753 rt->class_array[JS_CLASS_PROXY].exotic = &js_proxy_exotic_methods; - c0036130: 78bc ld a5,112(s1) - c0036132: 0002f717 auipc a4,0x2f - c0036136: f9e70713 addi a4,a4,-98 # c00650d0 - c003613a: 70e7b023 sd a4,1792(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46746 + c0036300: 78bc ld a5,112(s1) + c0036302: 0002f717 auipc a4,0x2f + c0036306: 02e70713 addi a4,a4,46 # c0065330 + c003630a: 70e7b023 sd a4,1792(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46754 rt->class_array[JS_CLASS_PROXY].call = js_proxy_call; - c003613e: 78bc ld a5,112(s1) - c0036140: 00007717 auipc a4,0x7 - c0036144: cbc70713 addi a4,a4,-836 # c003cdfc - c0036148: 6ee7bc23 sd a4,1784(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46749 + c003630e: 78bc ld a5,112(s1) + c0036310: 00007717 auipc a4,0x7 + c0036314: cbc70713 addi a4,a4,-836 # c003cfcc + c0036318: 6ee7bc23 sd a4,1784(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46757 obj1 = JS_NewCFunction2(ctx, js_proxy_constructor, "Proxy", 2, - c003614c: 4781 li a5,0 - c003614e: 4709 li a4,2 - c0036150: 4689 li a3,2 - c0036152: 0002a617 auipc a2,0x2a - c0036156: 5be60613 addi a2,a2,1470 # c0060710 - c003615a: fffe1597 auipc a1,0xfffe1 - c003615e: d6858593 addi a1,a1,-664 # c0016ec2 - c0036162: 8522 mv a0,s0 - c0036164: 882f30ef jal ra,c00291e6 - c0036168: e42e sd a1,8(sp) - c003616a: e02a sd a0,0(sp) + c003631c: 4781 li a5,0 + c003631e: 4709 li a4,2 + c0036320: 4689 li a3,2 + c0036322: 0002a617 auipc a2,0x2a + c0036326: 64e60613 addi a2,a2,1614 # c0060970 + c003632a: fffe1597 auipc a1,0xfffe1 + c003632e: d6858593 addi a1,a1,-664 # c0017092 + c0036332: 8522 mv a0,s0 + c0036334: 882f30ef jal ra,c00293b6 + c0036338: e42e sd a1,8(sp) + c003633a: e02a sd a0,0(sp) JS_SetConstructorBit(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9865 if (JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT) - c003616c: 2581 sext.w a1,a1 - c003616e: 57fd li a5,-1 - c0036170: 00f59863 bne a1,a5,c0036180 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9860 + c003633c: 2581 sext.w a1,a1 + c003633e: 57fd li a5,-1 + c0036340: 00f59863 bne a1,a5,c0036350 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9868 p->is_constructor = val; - c0036174: 00554783 lbu a5,5(a0) - c0036178: 0107e793 ori a5,a5,16 - c003617c: 00f502a3 sb a5,5(a0) + c0036344: 00554783 lbu a5,5(a0) + c0036348: 0107e793 ori a5,a5,16 + c003634c: 00f502a3 sb a5,5(a0) JS_AddIntrinsicProxy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46752 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46760 JS_SetPropertyFunctionList(ctx, obj1, js_proxy_funcs, - c0036180: 6582 ld a1,0(sp) - c0036182: 6622 ld a2,8(sp) - c0036184: 8522 mv a0,s0 - c0036186: 4705 li a4,1 - c0036188: 0002f697 auipc a3,0x2f - c003618c: f8068693 addi a3,a3,-128 # c0065108 - c0036190: af1ff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46754 + c0036350: 6582 ld a1,0(sp) + c0036352: 6622 ld a2,8(sp) + c0036354: 8522 mv a0,s0 + c0036356: 4705 li a4,1 + c0036358: 0002f697 auipc a3,0x2f + c003635c: 01068693 addi a3,a3,16 # c0065368 + c0036360: af1ff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46762 JS_DefinePropertyValueStr(ctx, ctx->global_obj, "Proxy", - c0036194: 16843583 ld a1,360(s0) - c0036198: 17043603 ld a2,368(s0) - c003619c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46756 + c0036364: 16843583 ld a1,360(s0) + c0036368: 17043603 ld a2,368(s0) + c003636c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46764 } - c003619e: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46754 + c003636e: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46762 JS_DefinePropertyValueStr(ctx, ctx->global_obj, "Proxy", - c00361a0: 6702 ld a4,0(sp) - c00361a2: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46756 + c0036370: 6702 ld a4,0(sp) + c0036372: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46764 } - c00361a4: 70a2 ld ra,40(sp) - c00361a6: 64e2 ld s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46754 + c0036374: 70a2 ld ra,40(sp) + c0036376: 64e2 ld s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46762 JS_DefinePropertyValueStr(ctx, ctx->global_obj, "Proxy", - c00361a8: 480d li a6,3 - c00361aa: 0002a697 auipc a3,0x2a - c00361ae: 56668693 addi a3,a3,1382 # c0060710 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46756 + c0036378: 480d li a6,3 + c003637a: 0002a697 auipc a3,0x2a + c003637e: 5f668693 addi a3,a3,1526 # c0060970 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46764 } - c00361b2: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46754 + c0036382: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46762 JS_DefinePropertyValueStr(ctx, ctx->global_obj, "Proxy", - c00361b4: da4f306f j c0029758 + c0036384: da4f306f j c0029928 -00000000c00361b8 : +00000000c0036388 : JS_AddIntrinsicMapSet(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47736 -{ - c00361b8: 7131 addi sp,sp,-192 - c00361ba: f922 sd s0,176(sp) - c00361bc: f526 sd s1,168(sp) - c00361be: e952 sd s4,144(sp) - c00361c0: e556 sd s5,136(sp) - c00361c2: e15a sd s6,128(sp) - c00361c4: fcde sd s7,120(sp) - c00361c6: f8e2 sd s8,112(sp) - c00361c8: f4e6 sd s9,104(sp) - c00361ca: fd06 sd ra,184(sp) - c00361cc: f14a sd s2,160(sp) - c00361ce: ed4e sd s3,152(sp) - c00361d0: 842a mv s0,a0 - c00361d2: 0002ea17 auipc s4,0x2e - c00361d6: 07ea0a13 addi s4,s4,126 # c0064250 - c00361da: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47747 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47744 +{ + c0036388: 7131 addi sp,sp,-192 + c003638a: f922 sd s0,176(sp) + c003638c: f526 sd s1,168(sp) + c003638e: e952 sd s4,144(sp) + c0036390: e556 sd s5,136(sp) + c0036392: e15a sd s6,128(sp) + c0036394: fcde sd s7,120(sp) + c0036396: f8e2 sd s8,112(sp) + c0036398: f4e6 sd s9,104(sp) + c003639a: fd06 sd ra,184(sp) + c003639c: f14a sd s2,160(sp) + c003639e: ed4e sd s3,152(sp) + c00363a0: 842a mv s0,a0 + c00363a2: 0002ea17 auipc s4,0x2e + c00363a6: 10ea0a13 addi s4,s4,270 # c00644b0 + c00363aa: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47755 js_map_proto_funcs_count[i]); - c00361dc: 0003eb17 auipc s6,0x3e - c00361e0: 7acb0b13 addi s6,s6,1964 # c0074988 + c00363ac: 0003fb17 auipc s6,0x3f + c00363b0: 83cb0b13 addi s6,s6,-1988 # c0074be8 JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 @@ -146712,36460 +146910,36460 @@ static inline JSValue JS_NewCFunctionMagic(JSContext *ctx, JSCFunctionMagic *fun int length, JSCFunctionEnum cproto, int magic) { return JS_NewCFunction2(ctx, (JSCFunction *)func, name, length, cproto, magic); - c00361e4: 00007c17 auipc s8,0x7 - c00361e8: df8c0c13 addi s8,s8,-520 # c003cfdc + c00363b4: 00007c17 auipc s8,0x7 + c00363b8: df8c0c13 addi s8,s8,-520 # c003d1ac JS_AddIntrinsicMapSet(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47758 if (i < 2) { - c00361ec: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47751 + c00363bc: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 JS_SetPropertyFunctionList(ctx, obj1, js_map_funcs, - c00361ee: 0002ec97 auipc s9,0x2e - c00361f2: e62c8c93 addi s9,s9,-414 # c0064050 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47741 + c00363be: 0002ec97 auipc s9,0x2e + c00363c2: ef2c8c93 addi s9,s9,-270 # c00642b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47749 for(i = 0; i < 4; i++) { - c00361f6: 4a91 li s5,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47742 + c00363c6: 4a91 li s5,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47750 const char *name = JS_AtomGetStr(ctx, buf, sizeof(buf), - c00361f8: 0b04861b addiw a2,s1,176 - c00361fc: 100c addi a1,sp,32 - c00361fe: 8522 mv a0,s0 - c0036200: c6ad00ef jal ra,c000666a - c0036204: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47744 + c00363c8: 0b04861b addiw a2,s1,176 + c00363cc: 100c addi a1,sp,32 + c00363ce: 8522 mv a0,s0 + c00363d0: b88d00ef jal ra,c0006758 + c00363d4: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47752 ctx->class_proto[JS_CLASS_MAP + i] = JS_NewObject(ctx); - c0036206: 8522 mv a0,s0 - c0036208: b81e00ef jal ra,c0016d88 - c003620c: 603c ld a5,64(s0) - c003620e: 00449913 slli s2,s1,0x4 - c0036212: 22090913 addi s2,s2,544 - c0036216: 97ca add a5,a5,s2 - c0036218: e388 sd a0,0(a5) - c003621a: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47745 + c00363d6: 8522 mv a0,s0 + c00363d8: b81e00ef jal ra,c0016f58 + c00363dc: 603c ld a5,64(s0) + c00363de: 00449913 slli s2,s1,0x4 + c00363e2: 22090913 addi s2,s2,544 + c00363e6: 97ca add a5,a5,s2 + c00363e8: e388 sd a0,0(a5) + c00363ea: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47753 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP + i], - c003621c: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47747 + c00363ec: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47755 js_map_proto_funcs_count[i]); - c003621e: 009b0733 add a4,s6,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47745 + c00363ee: 009b0733 add a4,s6,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47753 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP + i], - c0036222: 00074703 lbu a4,0(a4) - c0036226: 97ca add a5,a5,s2 - c0036228: 638c ld a1,0(a5) - c003622a: 6790 ld a2,8(a5) - c003622c: 000a3683 ld a3,0(s4) - c0036230: 8522 mv a0,s0 - c0036232: a4fff0ef jal ra,c0035c80 + c00363f2: 00074703 lbu a4,0(a4) + c00363f6: 97ca add a5,a5,s2 + c00363f8: 638c ld a1,0(a5) + c00363fa: 6790 ld a2,8(a5) + c00363fc: 000a3683 ld a3,0(s4) + c0036400: 8522 mv a0,s0 + c0036402: a4fff0ef jal ra,c0035e50 JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0036236: 864e mv a2,s3 - c0036238: 0004879b sext.w a5,s1 - c003623c: 470d li a4,3 - c003623e: 4681 li a3,0 - c0036240: 85e2 mv a1,s8 - c0036242: 8522 mv a0,s0 - c0036244: fa3f20ef jal ra,c00291e6 - c0036248: e82a sd a0,16(sp) - c003624a: ec2e sd a1,24(sp) - c003624c: e02a sd a0,0(sp) - c003624e: e42e sd a1,8(sp) - c0036250: 862e mv a2,a1 + c0036406: 864e mv a2,s3 + c0036408: 0004879b sext.w a5,s1 + c003640c: 470d li a4,3 + c003640e: 4681 li a3,0 + c0036410: 85e2 mv a1,s8 + c0036412: 8522 mv a0,s0 + c0036414: fa3f20ef jal ra,c00293b6 + c0036418: e82a sd a0,16(sp) + c003641a: ec2e sd a1,24(sp) + c003641c: e02a sd a0,0(sp) + c003641e: e42e sd a1,8(sp) + c0036420: 862e mv a2,a1 JS_AddIntrinsicMapSet(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47750 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47758 if (i < 2) { - c0036252: 009be863 bltu s7,s1,c0036262 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47751 + c0036422: 009be863 bltu s7,s1,c0036432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 JS_SetPropertyFunctionList(ctx, obj1, js_map_funcs, - c0036256: 85aa mv a1,a0 - c0036258: 4709 li a4,2 - c003625a: 86e6 mv a3,s9 - c003625c: 8522 mv a0,s0 - c003625e: a23ff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47754 (discriminator 2) + c0036426: 85aa mv a1,a0 + c0036428: 4709 li a4,2 + c003642a: 86e6 mv a3,s9 + c003642c: 8522 mv a0,s0 + c003642e: a23ff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47762 (discriminator 2) JS_NewGlobalCConstructor2(ctx, obj1, name, ctx->class_proto[JS_CLASS_MAP + i]); - c0036262: 603c ld a5,64(s0) - c0036264: 6582 ld a1,0(sp) - c0036266: 6622 ld a2,8(sp) - c0036268: 993e add s2,s2,a5 - c003626a: 00093703 ld a4,0(s2) - c003626e: 00893783 ld a5,8(s2) - c0036272: 86ce mv a3,s3 - c0036274: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47741 (discriminator 2) + c0036432: 603c ld a5,64(s0) + c0036434: 6582 ld a1,0(sp) + c0036436: 6622 ld a2,8(sp) + c0036438: 993e add s2,s2,a5 + c003643a: 00093703 ld a4,0(s2) + c003643e: 00893783 ld a5,8(s2) + c0036442: 86ce mv a3,s3 + c0036444: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47749 (discriminator 2) for(i = 0; i < 4; i++) { - c0036276: 0485 addi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47754 (discriminator 2) + c0036446: 0485 addi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47762 (discriminator 2) JS_NewGlobalCConstructor2(ctx, obj1, name, ctx->class_proto[JS_CLASS_MAP + i]); - c0036278: fb0f30ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47741 (discriminator 2) + c0036448: fb0f30ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47749 (discriminator 2) for(i = 0; i < 4; i++) { - c003627c: 0a21 addi s4,s4,8 - c003627e: f7549de3 bne s1,s5,c00361f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 + c003644c: 0a21 addi s4,s4,8 + c003644e: f7549de3 bne s1,s5,c00363c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47767 JS_NewObjectProto(ctx, ctx->iterator_proto); - c0036282: 12043603 ld a2,288(s0) - c0036286: 11843583 ld a1,280(s0) - c003628a: 8522 mv a0,s0 - c003628c: aa3e00ef jal ra,c0016d2e - c0036290: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47760 + c0036452: 12043603 ld a2,288(s0) + c0036456: 11843583 ld a1,280(s0) + c003645a: 8522 mv a0,s0 + c003645c: aa3e00ef jal ra,c0016efe + c0036460: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47768 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP_ITERATOR + i], - c0036292: 4709 li a4,2 - c0036294: 0002e697 auipc a3,0x2e - c0036298: dfc68693 addi a3,a3,-516 # c0064090 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 + c0036462: 4709 li a4,2 + c0036464: 0002e697 auipc a3,0x2e + c0036468: e8c68693 addi a3,a3,-372 # c00642f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47767 JS_NewObjectProto(ctx, ctx->iterator_proto); - c003629c: 26a7b023 sd a0,608(a5) - c00362a0: 26b7b423 sd a1,616(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47760 + c003646c: 26a7b023 sd a0,608(a5) + c0036470: 26b7b423 sd a1,616(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47768 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP_ITERATOR + i], - c00362a4: 603c ld a5,64(s0) - c00362a6: 8522 mv a0,s0 - c00362a8: 2607b583 ld a1,608(a5) - c00362ac: 2687b603 ld a2,616(a5) - c00362b0: 9d1ff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 + c0036474: 603c ld a5,64(s0) + c0036476: 8522 mv a0,s0 + c0036478: 2607b583 ld a1,608(a5) + c003647c: 2687b603 ld a2,616(a5) + c0036480: 9d1ff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47767 JS_NewObjectProto(ctx, ctx->iterator_proto); - c00362b4: 12043603 ld a2,288(s0) - c00362b8: 11843583 ld a1,280(s0) - c00362bc: 8522 mv a0,s0 - c00362be: a71e00ef jal ra,c0016d2e - c00362c2: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47760 + c0036484: 12043603 ld a2,288(s0) + c0036488: 11843583 ld a1,280(s0) + c003648c: 8522 mv a0,s0 + c003648e: a71e00ef jal ra,c0016efe + c0036492: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47768 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP_ITERATOR + i], - c00362c4: 4709 li a4,2 - c00362c6: 0002f697 auipc a3,0x2f - c00362ca: 2e268693 addi a3,a3,738 # c00655a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47759 + c0036494: 4709 li a4,2 + c0036496: 0002f697 auipc a3,0x2f + c003649a: 37268693 addi a3,a3,882 # c0065808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47767 JS_NewObjectProto(ctx, ctx->iterator_proto); - c00362ce: 26a7b823 sd a0,624(a5) - c00362d2: 26b7bc23 sd a1,632(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47760 + c003649e: 26a7b823 sd a0,624(a5) + c00364a2: 26b7bc23 sd a1,632(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47768 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_MAP_ITERATOR + i], - c00362d6: 603c ld a5,64(s0) - c00362d8: 8522 mv a0,s0 - c00362da: 2707b583 ld a1,624(a5) - c00362de: 2787b603 ld a2,632(a5) - c00362e2: 99fff0ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47764 -} - c00362e6: 70ea ld ra,184(sp) - c00362e8: 744a ld s0,176(sp) - c00362ea: 74aa ld s1,168(sp) - c00362ec: 790a ld s2,160(sp) - c00362ee: 69ea ld s3,152(sp) - c00362f0: 6a4a ld s4,144(sp) - c00362f2: 6aaa ld s5,136(sp) - c00362f4: 6b0a ld s6,128(sp) - c00362f6: 7be6 ld s7,120(sp) - c00362f8: 7c46 ld s8,112(sp) - c00362fa: 7ca6 ld s9,104(sp) - c00362fc: 6129 addi sp,sp,192 - c00362fe: 8082 ret - -00000000c0036300 : + c00364a6: 603c ld a5,64(s0) + c00364a8: 8522 mv a0,s0 + c00364aa: 2707b583 ld a1,624(a5) + c00364ae: 2787b603 ld a2,632(a5) + c00364b2: 99fff0ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47772 +} + c00364b6: 70ea ld ra,184(sp) + c00364b8: 744a ld s0,176(sp) + c00364ba: 74aa ld s1,168(sp) + c00364bc: 790a ld s2,160(sp) + c00364be: 69ea ld s3,152(sp) + c00364c0: 6a4a ld s4,144(sp) + c00364c2: 6aaa ld s5,136(sp) + c00364c4: 6b0a ld s6,128(sp) + c00364c6: 7be6 ld s7,120(sp) + c00364c8: 7c46 ld s8,112(sp) + c00364ca: 7ca6 ld s9,104(sp) + c00364cc: 6129 addi sp,sp,192 + c00364ce: 8082 ret + +00000000c00364d0 : JS_Invoke(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18823 -{ - c0036300: 711d addi sp,sp,-96 - c0036302: e4a6 sd s1,72(sp) - c0036304: e0ca sd s2,64(sp) - c0036306: 84ba mv s1,a4 - c0036308: 893e mv s2,a5 - c003630a: 872e mv a4,a1 - c003630c: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18831 +{ + c00364d0: 711d addi sp,sp,-96 + c00364d2: e4a6 sd s1,72(sp) + c00364d4: e0ca sd s2,64(sp) + c00364d6: 84ba mv s1,a4 + c00364d8: 893e mv s2,a5 + c00364da: 872e mv a4,a1 + c00364dc: 87b2 mv a5,a2 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003630e: 4801 li a6,0 + c00364de: 4801 li a6,0 JS_Invoke(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18823 - c0036310: e8a2 sd s0,80(sp) - c0036312: ec86 sd ra,88(sp) - c0036314: 842a mv s0,a0 - c0036316: e02e sd a1,0(sp) - c0036318: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18831 + c00364e0: e8a2 sd s0,80(sp) + c00364e2: ec86 sd ra,88(sp) + c00364e4: 842a mv s0,a0 + c00364e6: e02e sd a1,0(sp) + c00364e8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18833 func_obj = JS_GetProperty(ctx, this_val, atom); - c003631a: f02e sd a1,32(sp) - c003631c: f432 sd a2,40(sp) + c00364ea: f02e sd a1,32(sp) + c00364ec: f432 sd a2,40(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003631e: d24db0ef jal ra,c0011842 + c00364ee: c42db0ef jal ra,c0011930 JS_Invoke(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18826 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18834 if (JS_IsException(func_obj)) - c0036322: 0005871b sext.w a4,a1 - c0036326: 4799 li a5,6 - c0036328: 02f70063 beq a4,a5,c0036348 - c003632c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18828 + c00364f2: 0005871b sext.w a4,a1 + c00364f6: 4799 li a5,6 + c00364f8: 02f70063 beq a4,a5,c0036518 + c00364fc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18836 return JS_CallFree(ctx, func_obj, this_val, argc, argv); - c003632e: 85aa mv a1,a0 - c0036330: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18829 + c00364fe: 85aa mv a1,a0 + c0036500: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18837 } - c0036332: 6446 ld s0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18828 + c0036502: 6446 ld s0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18836 return JS_CallFree(ctx, func_obj, this_val, argc, argv); - c0036334: 6682 ld a3,0(sp) - c0036336: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18829 + c0036504: 6682 ld a3,0(sp) + c0036506: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18837 } - c0036338: 60e6 ld ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18828 + c0036508: 60e6 ld ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18836 return JS_CallFree(ctx, func_obj, this_val, argc, argv); - c003633a: 884a mv a6,s2 - c003633c: 87a6 mv a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18829 -} - c003633e: 6906 ld s2,64(sp) - c0036340: 64a6 ld s1,72(sp) - c0036342: 6125 addi sp,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18828 + c003650a: 884a mv a6,s2 + c003650c: 87a6 mv a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18837 +} + c003650e: 6906 ld s2,64(sp) + c0036510: 64a6 ld s1,72(sp) + c0036512: 6125 addi sp,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18836 return JS_CallFree(ctx, func_obj, this_val, argc, argv); - c0036344: cc8db06f j c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18829 + c0036514: be6db06f j c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18837 } - c0036348: 60e6 ld ra,88(sp) - c003634a: 6446 ld s0,80(sp) - c003634c: 64a6 ld s1,72(sp) - c003634e: 6906 ld s2,64(sp) - c0036350: 6125 addi sp,sp,96 - c0036352: 8082 ret + c0036518: 60e6 ld ra,88(sp) + c003651a: 6446 ld s0,80(sp) + c003651c: 64a6 ld s1,72(sp) + c003651e: 6906 ld s2,64(sp) + c0036520: 6125 addi sp,sp,96 + c0036522: 8082 ret -00000000c0036354 : +00000000c0036524 : JS_InvokeFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18833 -{ - c0036354: 7139 addi sp,sp,-64 - c0036356: fc06 sd ra,56(sp) - c0036358: f822 sd s0,48(sp) - c003635a: e432 sd a2,8(sp) - c003635c: 842a mv s0,a0 - c003635e: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18841 +{ + c0036524: 7139 addi sp,sp,-64 + c0036526: fc06 sd ra,56(sp) + c0036528: f822 sd s0,48(sp) + c003652a: e432 sd a2,8(sp) + c003652c: 842a mv s0,a0 + c003652e: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18842 JSValue res = JS_Invoke(ctx, this_val, atom, argc, argv); - c0036360: fa1ff0ef jal ra,c0036300 - c0036364: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18835 + c0036530: fa1ff0ef jal ra,c00364d0 + c0036534: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18843 JS_FreeValue(ctx, this_val); - c0036366: 6622 ld a2,8(sp) - c0036368: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18834 + c0036536: 6622 ld a2,8(sp) + c0036538: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18842 JSValue res = JS_Invoke(ctx, this_val, atom, argc, argv); - c003636a: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18835 + c003653a: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18843 JS_FreeValue(ctx, this_val); - c003636c: 8522 mv a0,s0 - c003636e: fcad10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18837 -} - c0036372: 70e2 ld ra,56(sp) - c0036374: 7442 ld s0,48(sp) - c0036376: 6542 ld a0,16(sp) - c0036378: 65e2 ld a1,24(sp) - c003637a: 6121 addi sp,sp,64 - c003637c: 8082 ret - -00000000c003637e : + c003653c: 8522 mv a0,s0 + c003653e: ee8d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18845 +} + c0036542: 70e2 ld ra,56(sp) + c0036544: 7442 ld s0,48(sp) + c0036546: 6542 ld a0,16(sp) + c0036548: 65e2 ld a1,24(sp) + c003654a: 6121 addi sp,sp,64 + c003654c: 8082 ret + +00000000c003654e : JS_ToLocaleStringFree(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11749 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11757 if (JS_IsUndefined(val) || JS_IsNull(val)) - c003637e: ffe6079b addiw a5,a2,-2 - c0036382: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11748 + c003654e: ffe6079b addiw a5,a2,-2 + c0036552: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11756 { - c0036384: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11749 + c0036554: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11757 if (JS_IsUndefined(val) || JS_IsNull(val)) - c0036386: 00f76563 bltu a4,a5,c0036390 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11752 + c0036556: 00f76563 bltu a4,a5,c0036560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11760 } - c003638a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11750 + c003655a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11758 return JS_ToStringFree(ctx, val); - c003638c: c54e406f j c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11751 + c003655c: c54e406f j c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11759 return JS_InvokeFree(ctx, val, JS_ATOM_toLocaleString, 0, NULL); - c0036390: 4781 li a5,0 - c0036392: 4701 li a4,0 - c0036394: 03900693 li a3,57 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11752 + c0036560: 4781 li a5,0 + c0036562: 4701 li a4,0 + c0036564: 03900693 li a3,57 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11760 } - c0036398: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11751 + c0036568: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:11759 return JS_InvokeFree(ctx, val, JS_ATOM_toLocaleString, 0, NULL); - c003639a: fbbff06f j c0036354 + c003656a: fbbff06f j c0036524 -00000000c003639e : +00000000c003656e : js_array_join(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39838 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39846 { - c003639e: 7115 addi sp,sp,-224 - c00363a0: e9a2 sd s0,208(sp) - c00363a2: e5a6 sd s1,200(sp) - c00363a4: e1ca sd s2,192(sp) - c00363a6: f556 sd s5,168(sp) - c00363a8: ed86 sd ra,216(sp) - c00363aa: fd4e sd s3,184(sp) - c00363ac: f952 sd s4,176(sp) - c00363ae: f15a sd s6,160(sp) - c00363b0: ed5e sd s7,152(sp) - c00363b2: e962 sd s8,144(sp) - c00363b4: e566 sd s9,136(sp) - c00363b6: e16a sd s10,128(sp) - c00363b8: 84aa mv s1,a0 - c00363ba: e432 sd a2,8(sp) - c00363bc: 8936 mv s2,a3 - c00363be: e02e sd a1,0(sp) - c00363c0: 843a mv s0,a4 - c00363c2: 8abe mv s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39845 + c003656e: 7115 addi sp,sp,-224 + c0036570: e9a2 sd s0,208(sp) + c0036572: e5a6 sd s1,200(sp) + c0036574: e1ca sd s2,192(sp) + c0036576: f556 sd s5,168(sp) + c0036578: ed86 sd ra,216(sp) + c003657a: fd4e sd s3,184(sp) + c003657c: f952 sd s4,176(sp) + c003657e: f15a sd s6,160(sp) + c0036580: ed5e sd s7,152(sp) + c0036582: e962 sd s8,144(sp) + c0036584: e566 sd s9,136(sp) + c0036586: e16a sd s10,128(sp) + c0036588: 84aa mv s1,a0 + c003658a: e432 sd a2,8(sp) + c003658c: 8936 mv s2,a3 + c003658e: e02e sd a1,0(sp) + c0036590: 843a mv s0,a4 + c0036592: 8abe mv s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39853 obj = JS_ToObject(ctx, this_val); - c00363c4: a28f20ef jal ra,c00285ec - c00363c8: 862a mv a2,a0 - c00363ca: 86ae mv a3,a1 - c00363cc: f02a sd a0,32(sp) - c00363ce: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39846 + c0036594: a28f20ef jal ra,c00287bc + c0036598: 862a mv a2,a0 + c003659a: 86ae mv a3,a1 + c003659c: f02a sd a0,32(sp) + c003659e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39854 if (js_get_length64(ctx, &n, obj)) - c00363d0: 8526 mv a0,s1 - c00363d2: 082c addi a1,sp,24 - c00363d4: c6ae80ef jal ra,c001e83e - c00363d8: 12051163 bnez a0,c00364fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39850 + c00365a0: 8526 mv a0,s1 + c00365a2: 082c addi a1,sp,24 + c00365a4: c6ae80ef jal ra,c001ea0e + c00365a8: 12051163 bnez a0,c00366ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39858 if (!toLocaleString && argc > 0 && !JS_IsUndefined(argv[0])) { - c00363dc: 080a9f63 bnez s5,c003647a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39850 (discriminator 1) - c00363e0: 09205d63 blez s2,c003647a + c00365ac: 080a9f63 bnez s5,c003664a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39858 (discriminator 1) + c00365b0: 09205d63 blez s2,c003664a JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 2) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00363e4: 6410 ld a2,8(s0) + c00365b4: 6410 ld a2,8(s0) js_array_join(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39850 (discriminator 2) - c00363e6: 478d li a5,3 - c00363e8: 0006071b sext.w a4,a2 - c00363ec: 08f70763 beq a4,a5,c003647a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39851 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39858 (discriminator 2) + c00365b6: 478d li a5,3 + c00365b8: 0006071b sext.w a4,a2 + c00365bc: 08f70763 beq a4,a5,c003664a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39859 sep = JS_ToString(ctx, argv[0]); - c00363f0: 600c ld a1,0(s0) - c00363f2: 8526 mv a0,s1 - c00363f4: be2e40ef jal ra,c001a7d6 - c00363f8: f82a sd a0,48(sp) - c00363fa: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39852 + c00365c0: 600c ld a1,0(s0) + c00365c2: 8526 mv a0,s1 + c00365c4: be2e40ef jal ra,c001a9a6 + c00365c8: f82a sd a0,48(sp) + c00365ca: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39860 if (JS_IsException(sep)) - c00363fc: 0005871b sext.w a4,a1 - c0036400: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39851 + c00365cc: 0005871b sext.w a4,a1 + c00365d0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39859 sep = JS_ToString(ctx, argv[0]); - c0036402: 842a mv s0,a0 - c0036404: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39852 + c00365d2: 842a mv s0,a0 + c00365d4: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39860 if (JS_IsException(sep)) - c0036406: 0ef70a63 beq a4,a5,c00364fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39855 + c00365d6: 0ef70a63 beq a4,a5,c00366ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39863 if (p->len == 1 && !p->is_wide_char) - c003640a: 4158 lw a4,4(a0) - c003640c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39858 + c00365da: 4158 lw a4,4(a0) + c00365dc: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39866 c = -1; - c003640e: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39855 + c00365de: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39863 if (p->len == 1 && !p->is_wide_char) - c0036410: 00f71463 bne a4,a5,c0036418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39856 + c00365e0: 00f71463 bne a4,a5,c00365e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39864 c = p->u.str8[0]; - c0036414: 01054983 lbu s3,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39860 + c00365e4: 01054983 lbu s3,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39868 string_buffer_init(ctx, b, 0); - c0036418: 4601 li a2,0 - c003641a: 108c addi a1,sp,96 - c003641c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39867 + c00365e8: 4601 li a2,0 + c00365ea: 108c addi a1,sp,96 + c00365ec: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39875 string_buffer_concat(b, p, 0, p->len); - c003641e: 80000b37 lui s6,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39860 + c00365ee: 80000b37 lui s6,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39868 string_buffer_init(ctx, b, 0); - c0036422: face20ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39862 + c00365f2: face20ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39870 for(i = 0; i < n; i++) { - c0036426: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39864 + c00365f6: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39872 if (c >= 0) { - c0036428: 5bfd li s7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39867 + c00365f8: 5bfd li s7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39875 string_buffer_concat(b, p, 0, p->len); - c003642a: fffb4b13 not s6,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39865 + c00365fa: fffb4b13 not s6,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39873 string_buffer_putc8(b, c); - c003642e: 00098c1b sext.w s8,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39871 + c00365fe: 00098c1b sext.w s8,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39879 if (JS_IsException(el)) - c0036432: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39873 + c0036602: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39881 if (!JS_IsNull(el) && !JS_IsUndefined(el)) { - c0036434: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39862 (discriminator 1) + c0036604: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39870 (discriminator 1) for(i = 0; i < n; i++) { - c0036436: 67e2 ld a5,24(sp) - c0036438: 04fa4663 blt s4,a5,c0036484 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39881 + c0036606: 67e2 ld a5,24(sp) + c0036608: 04fa4663 blt s4,a5,c0036654 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39889 JS_FreeValue(ctx, sep); - c003643c: 85a2 mv a1,s0 - c003643e: 864a mv a2,s2 - c0036440: 8526 mv a0,s1 - c0036442: ef6d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39882 + c003660c: 85a2 mv a1,s0 + c003660e: 864a mv a2,s2 + c0036610: 8526 mv a0,s1 + c0036612: e14d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39890 JS_FreeValue(ctx, obj); - c0036446: 7582 ld a1,32(sp) - c0036448: 7622 ld a2,40(sp) - c003644a: 8526 mv a0,s1 - c003644c: eecd10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39883 - return string_buffer_end(b); - c0036450: 1088 addi a0,sp,96 - c0036452: 8b9e30ef jal ra,c0019d0a - c0036456: e8aa sd a0,80(sp) - c0036458: ecae sd a1,88(sp) + c0036616: 7582 ld a1,32(sp) + c0036618: 7622 ld a2,40(sp) + c003661a: 8526 mv a0,s1 + c003661c: e0ad10ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39891 -} - c003645a: 60ee ld ra,216(sp) - c003645c: 644e ld s0,208(sp) - c003645e: 6546 ld a0,80(sp) - c0036460: 65e6 ld a1,88(sp) - c0036462: 64ae ld s1,200(sp) - c0036464: 690e ld s2,192(sp) - c0036466: 79ea ld s3,184(sp) - c0036468: 7a4a ld s4,176(sp) - c003646a: 7aaa ld s5,168(sp) - c003646c: 7b0a ld s6,160(sp) - c003646e: 6bea ld s7,152(sp) - c0036470: 6c4a ld s8,144(sp) - c0036472: 6caa ld s9,136(sp) - c0036474: 6d0a ld s10,128(sp) - c0036476: 612d addi sp,sp,224 - c0036478: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39839 + return string_buffer_end(b); + c0036620: 1088 addi a0,sp,96 + c0036622: 8b9e30ef jal ra,c0019eda + c0036626: e8aa sd a0,80(sp) + c0036628: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39899 +} + c003662a: 60ee ld ra,216(sp) + c003662c: 644e ld s0,208(sp) + c003662e: 6546 ld a0,80(sp) + c0036630: 65e6 ld a1,88(sp) + c0036632: 64ae ld s1,200(sp) + c0036634: 690e ld s2,192(sp) + c0036636: 79ea ld s3,184(sp) + c0036638: 7a4a ld s4,176(sp) + c003663a: 7aaa ld s5,168(sp) + c003663c: 7b0a ld s6,160(sp) + c003663e: 6bea ld s7,152(sp) + c0036640: 6c4a ld s8,144(sp) + c0036642: 6caa ld s9,136(sp) + c0036644: 6d0a ld s10,128(sp) + c0036646: 612d addi sp,sp,224 + c0036648: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39847 JSValue obj, sep = JS_UNDEFINED, el; - c003647a: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39849 + c003664a: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39857 c = ','; /* default separator */ - c003647c: 02c00993 li s3,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39841 + c003664c: 02c00993 li s3,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39849 JSString *p = NULL; - c0036480: 4401 li s0,0 - c0036482: bf59 j c0036418 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39863 + c0036650: 4401 li s0,0 + c0036652: bf59 j c00365e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39871 if (i > 0) { - c0036484: 01405863 blez s4,c0036494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39864 + c0036654: 01405863 blez s4,c0036664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39872 if (c >= 0) { - c0036488: 03798a63 beq s3,s7,c00364bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39865 + c0036658: 03798a63 beq s3,s7,c003668c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39873 string_buffer_putc8(b, c); - c003648c: 85e2 mv a1,s8 - c003648e: 1088 addi a0,sp,96 - c0036490: c57e20ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39870 + c003665c: 85e2 mv a1,s8 + c003665e: 1088 addi a0,sp,96 + c0036660: c57e20ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39878 el = JS_GetPropertyUint32(ctx, obj, i); - c0036494: 7622 ld a2,40(sp) - c0036496: 7582 ld a1,32(sp) - c0036498: 000a069b sext.w a3,s4 - c003649c: 8526 mv a0,s1 - c003649e: a2fdb0ef jal ra,c0011ecc - c00364a2: e0aa sd a0,64(sp) - c00364a4: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39871 + c0036664: 7622 ld a2,40(sp) + c0036666: 7582 ld a1,32(sp) + c0036668: 000a069b sext.w a3,s4 + c003666c: 8526 mv a0,s1 + c003666e: 94ddb0ef jal ra,c0011fba + c0036672: e0aa sd a0,64(sp) + c0036674: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39879 if (JS_IsException(el)) - c00364a6: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39870 + c0036676: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39878 el = JS_GetPropertyUint32(ctx, obj, i); - c00364aa: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39871 + c003667a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39879 if (JS_IsException(el)) - c00364ac: 03978f63 beq a5,s9,c00364ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39873 + c003667c: 03978f63 beq a5,s9,c00366ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39881 if (!JS_IsNull(el) && !JS_IsUndefined(el)) { - c00364b0: ffe5879b addiw a5,a1,-2 - c00364b4: 00fd6d63 bltu s10,a5,c00364ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39862 + c0036680: ffe5879b addiw a5,a1,-2 + c0036684: 00fd6d63 bltu s10,a5,c003669e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39870 for(i = 0; i < n; i++) { - c00364b8: 0a05 addi s4,s4,1 - c00364ba: bfb5 j c0036436 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39867 + c0036688: 0a05 addi s4,s4,1 + c003668a: bfb5 j c0036606 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39875 string_buffer_concat(b, p, 0, p->len); - c00364bc: 4054 lw a3,4(s0) - c00364be: 4601 li a2,0 - c00364c0: 85a2 mv a1,s0 - c00364c2: 00db76b3 and a3,s6,a3 - c00364c6: 1088 addi a0,sp,96 - c00364c8: aa1e20ef jal ra,c0018f68 - c00364cc: b7e1 j c0036494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39874 + c003668c: 4054 lw a3,4(s0) + c003668e: 4601 li a2,0 + c0036690: 85a2 mv a1,s0 + c0036692: 00db76b3 and a3,s6,a3 + c0036696: 1088 addi a0,sp,96 + c0036698: aa1e20ef jal ra,c0019138 + c003669c: b7e1 j c0036664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39882 if (toLocaleString) { - c00364ce: 000a8863 beqz s5,c00364de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39875 + c003669e: 000a8863 beqz s5,c00366ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39883 el = JS_ToLocaleStringFree(ctx, el); - c00364d2: 85aa mv a1,a0 - c00364d4: 8526 mv a0,s1 - c00364d6: ea9ff0ef jal ra,c003637e - c00364da: e0aa sd a0,64(sp) - c00364dc: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39877 + c00366a2: 85aa mv a1,a0 + c00366a4: 8526 mv a0,s1 + c00366a6: ea9ff0ef jal ra,c003654e + c00366aa: e0aa sd a0,64(sp) + c00366ac: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39885 if (string_buffer_concat_value_free(b, el)) - c00364de: 6586 ld a1,64(sp) - c00364e0: 6626 ld a2,72(sp) - c00364e2: 1088 addi a0,sp,96 - c00364e4: ff8e40ef jal ra,c001acdc - c00364e8: d961 beqz a0,c00364b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39886 + c00366ae: 6586 ld a1,64(sp) + c00366b0: 6626 ld a2,72(sp) + c00366b2: 1088 addi a0,sp,96 + c00366b4: ff8e40ef jal ra,c001aeac + c00366b8: d961 beqz a0,c0036688 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39894 string_buffer_free(b); - c00364ea: 1088 addi a0,sp,96 - c00364ec: 97bd00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39887 + c00366ba: 1088 addi a0,sp,96 + c00366bc: 899d00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39895 JS_FreeValue(ctx, sep); - c00364f0: 85a2 mv a1,s0 - c00364f2: 864a mv a2,s2 - c00364f4: 8526 mv a0,s1 - c00364f6: e42d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39889 + c00366c0: 85a2 mv a1,s0 + c00366c2: 864a mv a2,s2 + c00366c4: 8526 mv a0,s1 + c00366c6: d60d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39897 JS_FreeValue(ctx, obj); - c00364fa: 7582 ld a1,32(sp) - c00364fc: 7622 ld a2,40(sp) - c00364fe: 8526 mv a0,s1 - c0036500: e38d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39890 + c00366ca: 7582 ld a1,32(sp) + c00366cc: 7622 ld a2,40(sp) + c00366ce: 8526 mv a0,s1 + c00366d0: d56d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39898 return JS_EXCEPTION; - c0036504: 4799 li a5,6 - c0036506: e882 sd zero,80(sp) - c0036508: ecbe sd a5,88(sp) - c003650a: bf81 j c003645a + c00366d4: 4799 li a5,6 + c00366d6: e882 sd zero,80(sp) + c00366d8: ecbe sd a5,88(sp) + c00366da: bf81 j c003662a -00000000c003650c : +00000000c00366dc : js_typed_array_join(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53970 -{ - c003650c: 7155 addi sp,sp,-208 - c003650e: e1a2 sd s0,192(sp) - c0036510: fd26 sd s1,184(sp) - c0036512: f94a sd s2,176(sp) - c0036514: e95a sd s6,144(sp) - c0036516: e586 sd ra,200(sp) - c0036518: f54e sd s3,168(sp) - c003651a: f152 sd s4,160(sp) - c003651c: ed56 sd s5,152(sp) - c003651e: e55e sd s7,136(sp) - c0036520: e162 sd s8,128(sp) - c0036522: fce6 sd s9,120(sp) - c0036524: f8ea sd s10,112(sp) - c0036526: f4ee sd s11,104(sp) - c0036528: 892a mv s2,a0 - c003652a: e02e sd a1,0(sp) - c003652c: e432 sd a2,8(sp) - c003652e: 84b6 mv s1,a3 - c0036530: 843a mv s0,a4 - c0036532: 8b3e mv s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53977 - n = js_typed_array_get_length_internal(ctx, this_val); - c0036534: ae3dd0ef jal ra,c0014016 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53978 +{ + c00366dc: 7155 addi sp,sp,-208 + c00366de: e1a2 sd s0,192(sp) + c00366e0: fd26 sd s1,184(sp) + c00366e2: f94a sd s2,176(sp) + c00366e4: e95a sd s6,144(sp) + c00366e6: e586 sd ra,200(sp) + c00366e8: f54e sd s3,168(sp) + c00366ea: f152 sd s4,160(sp) + c00366ec: ed56 sd s5,152(sp) + c00366ee: e55e sd s7,136(sp) + c00366f0: e162 sd s8,128(sp) + c00366f2: fce6 sd s9,120(sp) + c00366f4: f8ea sd s10,112(sp) + c00366f6: f4ee sd s11,104(sp) + c00366f8: 892a mv s2,a0 + c00366fa: e02e sd a1,0(sp) + c00366fc: e432 sd a2,8(sp) + c00366fe: 84b6 mv s1,a3 + c0036700: 843a mv s0,a4 + c0036702: 8b3e mv s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53985 + n = js_typed_array_get_length_internal(ctx, this_val); + c0036704: a01dd0ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53986 if (n < 0) - c0036538: 0e054263 bltz a0,c003661c - c003653c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53982 + c0036708: 0e054263 bltz a0,c00367ec + c003670c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53990 if (!toLocaleString && argc > 0 && !JS_IsUndefined(argv[0])) { - c003653e: 080b1a63 bnez s6,c00365d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53982 (discriminator 1) - c0036542: 08905863 blez s1,c00365d2 + c003670e: 080b1a63 bnez s6,c00367a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53990 (discriminator 1) + c0036712: 08905863 blez s1,c00367a2 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 2) - c0036546: 6410 ld a2,8(s0) + c0036716: 6410 ld a2,8(s0) js_typed_array_join(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53982 (discriminator 2) - c0036548: 478d li a5,3 - c003654a: 0006071b sext.w a4,a2 - c003654e: 08f70263 beq a4,a5,c00365d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53983 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53990 (discriminator 2) + c0036718: 478d li a5,3 + c003671a: 0006071b sext.w a4,a2 + c003671e: 08f70263 beq a4,a5,c00367a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53991 sep = JS_ToString(ctx, argv[0]); - c0036552: 600c ld a1,0(s0) - c0036554: 854a mv a0,s2 - c0036556: a80e40ef jal ra,c001a7d6 - c003655a: e82a sd a0,16(sp) - c003655c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53984 + c0036722: 600c ld a1,0(s0) + c0036724: 854a mv a0,s2 + c0036726: a80e40ef jal ra,c001a9a6 + c003672a: e82a sd a0,16(sp) + c003672c: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53992 if (JS_IsException(sep)) - c003655e: 0005871b sext.w a4,a1 - c0036562: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53983 + c003672e: 0005871b sext.w a4,a1 + c0036732: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53991 sep = JS_ToString(ctx, argv[0]); - c0036564: 842a mv s0,a0 - c0036566: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53984 + c0036734: 842a mv s0,a0 + c0036736: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53992 if (JS_IsException(sep)) - c0036568: 0af70a63 beq a4,a5,c003661c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53987 + c0036738: 0af70a63 beq a4,a5,c00367ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53995 if (p->len == 1 && !p->is_wide_char) - c003656c: 4158 lw a4,4(a0) - c003656e: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53990 + c003673c: 4158 lw a4,4(a0) + c003673e: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53998 c = -1; - c0036570: 59fd li s3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53987 + c0036740: 59fd li s3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53995 if (p->len == 1 && !p->is_wide_char) - c0036572: 00f71463 bne a4,a5,c003657a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53988 + c0036742: 00f71463 bne a4,a5,c003674a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53996 c = p->u.str8[0]; - c0036576: 01054983 lbu s3,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53992 + c0036746: 01054983 lbu s3,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54000 string_buffer_init(ctx, b, 0); - c003657a: 4601 li a2,0 - c003657c: 008c addi a1,sp,64 - c003657e: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54001 + c003674a: 4601 li a2,0 + c003674c: 008c addi a1,sp,64 + c003674e: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54009 if (string_buffer_concat(b, p, 0, p->len)) - c0036580: 80000bb7 lui s7,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53992 + c0036750: 80000bb7 lui s7,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54000 string_buffer_init(ctx, b, 0); - c0036584: e4ae20ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53995 + c0036754: e4ae20ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54003 for(i = 0; i < n; i++) { - c0036588: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53997 + c0036758: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54005 if (c >= 0) { - c003658a: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54001 + c003675a: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54009 if (string_buffer_concat(b, p, 0, p->len)) - c003658c: fffbcb93 not s7,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53998 + c003675c: fffbcb93 not s7,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54006 if (string_buffer_putc8(b, c)) - c0036590: 00098c9b sext.w s9,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54007 + c0036760: 00098c9b sext.w s9,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54015 if (!JS_IsNull(el) && !JS_IsUndefined(el)) { - c0036594: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54008 + c0036764: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54016 if (JS_IsException(el)) - c0036596: 4d99 li s11,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53995 (discriminator 1) + c0036766: 4d99 li s11,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54003 (discriminator 1) for(i = 0; i < n; i++) { - c0036598: 055a1263 bne s4,s5,c00365dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54017 + c0036768: 055a1263 bne s4,s5,c00367ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54025 JS_FreeValue(ctx, sep); - c003659c: 85a2 mv a1,s0 - c003659e: 8626 mv a2,s1 - c00365a0: 854a mv a0,s2 - c00365a2: d96d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54018 + c003676c: 85a2 mv a1,s0 + c003676e: 8626 mv a2,s1 + c0036770: 854a mv a0,s2 + c0036772: cb4d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54026 return string_buffer_end(b); - c00365a6: 0088 addi a0,sp,64 - c00365a8: f62e30ef jal ra,c0019d0a - c00365ac: f82a sd a0,48(sp) - c00365ae: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54025 + c0036776: 0088 addi a0,sp,64 + c0036778: f62e30ef jal ra,c0019eda + c003677c: f82a sd a0,48(sp) + c003677e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54033 } - c00365b0: 60ae ld ra,200(sp) - c00365b2: 640e ld s0,192(sp) - c00365b4: 7542 ld a0,48(sp) - c00365b6: 75e2 ld a1,56(sp) - c00365b8: 74ea ld s1,184(sp) - c00365ba: 794a ld s2,176(sp) - c00365bc: 79aa ld s3,168(sp) - c00365be: 7a0a ld s4,160(sp) - c00365c0: 6aea ld s5,152(sp) - c00365c2: 6b4a ld s6,144(sp) - c00365c4: 6baa ld s7,136(sp) - c00365c6: 6c0a ld s8,128(sp) - c00365c8: 7ce6 ld s9,120(sp) - c00365ca: 7d46 ld s10,112(sp) - c00365cc: 7da6 ld s11,104(sp) - c00365ce: 6169 addi sp,sp,208 - c00365d0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53971 + c0036780: 60ae ld ra,200(sp) + c0036782: 640e ld s0,192(sp) + c0036784: 7542 ld a0,48(sp) + c0036786: 75e2 ld a1,56(sp) + c0036788: 74ea ld s1,184(sp) + c003678a: 794a ld s2,176(sp) + c003678c: 79aa ld s3,168(sp) + c003678e: 7a0a ld s4,160(sp) + c0036790: 6aea ld s5,152(sp) + c0036792: 6b4a ld s6,144(sp) + c0036794: 6baa ld s7,136(sp) + c0036796: 6c0a ld s8,128(sp) + c0036798: 7ce6 ld s9,120(sp) + c003679a: 7d46 ld s10,112(sp) + c003679c: 7da6 ld s11,104(sp) + c003679e: 6169 addi sp,sp,208 + c00367a0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53979 JSValue sep = JS_UNDEFINED, el; - c00365d2: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53981 + c00367a2: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53989 c = ','; /* default separator */ - c00365d4: 02c00993 li s3,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53973 + c00367a4: 02c00993 li s3,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53981 JSString *p = NULL; - c00365d8: 4401 li s0,0 - c00365da: b745 j c003657a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53996 + c00367a8: 4401 li s0,0 + c00367aa: b745 j c003674a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54004 if (i > 0) { - c00365dc: 020a1163 bnez s4,c00365fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54005 + c00367ac: 020a1163 bnez s4,c00367ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54013 el = JS_GetPropertyUint32(ctx, this_val, i); - c00365e0: 6622 ld a2,8(sp) - c00365e2: 6582 ld a1,0(sp) - c00365e4: 86d2 mv a3,s4 - c00365e6: 854a mv a0,s2 - c00365e8: 8e5db0ef jal ra,c0011ecc - c00365ec: f02a sd a0,32(sp) - c00365ee: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54007 + c00367b0: 6622 ld a2,8(sp) + c00367b2: 6582 ld a1,0(sp) + c00367b4: 86d2 mv a3,s4 + c00367b6: 854a mv a0,s2 + c00367b8: 803db0ef jal ra,c0011fba + c00367bc: f02a sd a0,32(sp) + c00367be: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54015 if (!JS_IsNull(el) && !JS_IsUndefined(el)) { - c00365f0: ffe5879b addiw a5,a1,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54005 + c00367c0: ffe5879b addiw a5,a1,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54013 el = JS_GetPropertyUint32(ctx, this_val, i); - c00365f4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54007 + c00367c4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54015 if (!JS_IsNull(el) && !JS_IsUndefined(el)) { - c00365f6: 04fd6063 bltu s10,a5,c0036636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53995 + c00367c6: 04fd6063 bltu s10,a5,c0036806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54003 for(i = 0; i < n; i++) { - c00365fa: 2a05 addiw s4,s4,1 - c00365fc: bf71 j c0036598 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53997 + c00367ca: 2a05 addiw s4,s4,1 + c00367cc: bf71 j c0036768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54005 if (c >= 0) { - c00365fe: 03898363 beq s3,s8,c0036624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53998 + c00367ce: 03898363 beq s3,s8,c00367f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54006 if (string_buffer_putc8(b, c)) - c0036602: 85e6 mv a1,s9 - c0036604: 0088 addi a0,sp,64 - c0036606: ae1e20ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54001 + c00367d2: 85e6 mv a1,s9 + c00367d4: 0088 addi a0,sp,64 + c00367d6: ae1e20ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54009 if (string_buffer_concat(b, p, 0, p->len)) - c003660a: d979 beqz a0,c00365e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54021 + c00367da: d979 beqz a0,c00367b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54029 string_buffer_free(b); - c003660c: 0088 addi a0,sp,64 - c003660e: 859d00ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54022 + c00367dc: 0088 addi a0,sp,64 + c00367de: f76d00ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54030 JS_FreeValue(ctx, sep); - c0036612: 85a2 mv a1,s0 - c0036614: 8626 mv a2,s1 - c0036616: 854a mv a0,s2 - c0036618: d20d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54024 + c00367e2: 85a2 mv a1,s0 + c00367e4: 8626 mv a2,s1 + c00367e6: 854a mv a0,s2 + c00367e8: c3ed10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54032 return JS_EXCEPTION; - c003661c: 4799 li a5,6 - c003661e: f802 sd zero,48(sp) - c0036620: fc3e sd a5,56(sp) - c0036622: b779 j c00365b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54001 + c00367ec: 4799 li a5,6 + c00367ee: f802 sd zero,48(sp) + c00367f0: fc3e sd a5,56(sp) + c00367f2: b779 j c0036780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54009 if (string_buffer_concat(b, p, 0, p->len)) - c0036624: 4054 lw a3,4(s0) - c0036626: 4601 li a2,0 - c0036628: 85a2 mv a1,s0 - c003662a: 00dbf6b3 and a3,s7,a3 - c003662e: 0088 addi a0,sp,64 - c0036630: 939e20ef jal ra,c0018f68 - c0036634: bfd9 j c003660a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54008 + c00367f4: 4054 lw a3,4(s0) + c00367f6: 4601 li a2,0 + c00367f8: 85a2 mv a1,s0 + c00367fa: 00dbf6b3 and a3,s7,a3 + c00367fe: 0088 addi a0,sp,64 + c0036800: 939e20ef jal ra,c0019138 + c0036804: bfd9 j c00367da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54016 if (JS_IsException(el)) - c0036636: 0005879b sext.w a5,a1 - c003663a: fdb789e3 beq a5,s11,c003660c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54010 + c0036806: 0005879b sext.w a5,a1 + c003680a: fdb789e3 beq a5,s11,c00367dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54018 if (toLocaleString) { - c003663e: 000b0863 beqz s6,c003664e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54011 + c003680e: 000b0863 beqz s6,c003681e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54019 el = JS_ToLocaleStringFree(ctx, el); - c0036642: 85aa mv a1,a0 - c0036644: 854a mv a0,s2 - c0036646: d39ff0ef jal ra,c003637e - c003664a: f02a sd a0,32(sp) - c003664c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54013 + c0036812: 85aa mv a1,a0 + c0036814: 854a mv a0,s2 + c0036816: d39ff0ef jal ra,c003654e + c003681a: f02a sd a0,32(sp) + c003681c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54021 if (string_buffer_concat_value_free(b, el)) - c003664e: 7582 ld a1,32(sp) - c0036650: 7622 ld a2,40(sp) - c0036652: 0088 addi a0,sp,64 - c0036654: e88e40ef jal ra,c001acdc - c0036658: d14d beqz a0,c00365fa - c003665a: bf4d j c003660c - -00000000c003665c : + c003681e: 7582 ld a1,32(sp) + c0036820: 7622 ld a2,40(sp) + c0036822: 0088 addi a0,sp,64 + c0036824: e88e40ef jal ra,c001aeac + c0036828: d14d beqz a0,c00367ca + c003682a: bf4d j c00367dc + +00000000c003682c : js_promise_finally(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48736 -{ - c003665c: 7155 addi sp,sp,-208 - c003665e: e1a2 sd s0,192(sp) - c0036660: fd26 sd s1,184(sp) - c0036662: f94a sd s2,176(sp) - c0036664: f54e sd s3,168(sp) - c0036666: e586 sd ra,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48737 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 +{ + c003682c: 7155 addi sp,sp,-208 + c003682e: e1a2 sd s0,192(sp) + c0036830: fd26 sd s1,184(sp) + c0036832: f94a sd s2,176(sp) + c0036834: f54e sd s3,168(sp) + c0036836: e586 sd ra,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48745 JSValueConst onFinally = argv[0]; - c0036668: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48743 + c0036838: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c003666a: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48736 + c003683a: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 { - c003666c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48737 + c003683c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48745 JSValueConst onFinally = argv[0]; - c003666e: e83e sd a5,16(sp) - c0036670: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48743 + c003683e: e83e sd a5,16(sp) + c0036840: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c0036672: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48736 + c0036842: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 { - c0036674: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48737 + c0036844: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48745 JSValueConst onFinally = argv[0]; - c0036676: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48736 + c0036846: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 { - c0036678: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48743 + c0036848: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c003667a: d40dd0ef jal ra,c0013bba - c003667e: f02a sd a0,32(sp) - c0036680: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 + c003684a: c5edd0ef jal ra,c0013ca8 + c003684e: f02a sd a0,32(sp) + c0036850: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48752 if (JS_IsException(ctor)) - c0036682: 0005879b sext.w a5,a1 - c0036686: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48743 + c0036852: 0005879b sext.w a5,a1 + c0036856: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c0036688: 892a mv s2,a0 - c003668a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48744 + c0036858: 892a mv s2,a0 + c003685a: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48752 if (JS_IsException(ctor)) - c003668c: 01379d63 bne a5,s3,c00366a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48745 + c003685c: 01379d63 bne a5,s3,c0036876 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 return ctor; - c0036690: e8aa sd a0,80(sp) - c0036692: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48767 (discriminator 1) -} - c0036694: 60ae ld ra,200(sp) - c0036696: 640e ld s0,192(sp) - c0036698: 6546 ld a0,80(sp) - c003669a: 65e6 ld a1,88(sp) - c003669c: 74ea ld s1,184(sp) - c003669e: 794a ld s2,176(sp) - c00366a0: 79aa ld s3,168(sp) - c00366a2: 6169 addi sp,sp,208 - c00366a4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48746 + c0036860: e8aa sd a0,80(sp) + c0036862: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48775 (discriminator 1) +} + c0036864: 60ae ld ra,200(sp) + c0036866: 640e ld s0,192(sp) + c0036868: 6546 ld a0,80(sp) + c003686a: 65e6 ld a1,88(sp) + c003686c: 74ea ld s1,184(sp) + c003686e: 794a ld s2,176(sp) + c0036870: 79aa ld s3,168(sp) + c0036872: 6169 addi sp,sp,208 + c0036874: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48754 if (!JS_IsFunction(ctx, onFinally)) { - c00366a6: 65c2 ld a1,16(sp) - c00366a8: 6662 ld a2,24(sp) - c00366aa: 8522 mv a0,s0 - c00366ac: 830d40ef jal ra,c000a6dc - c00366b0: e939 bnez a0,c0036706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48747 + c0036876: 65c2 ld a1,16(sp) + c0036878: 6662 ld a2,24(sp) + c003687a: 8522 mv a0,s0 + c003687c: f4fd30ef jal ra,c000a7ca + c0036880: e939 bnez a0,c00368d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48755 then_funcs[0] = JS_DupValue(ctx, onFinally); - c00366b2: 6542 ld a0,16(sp) - c00366b4: 65e2 ld a1,24(sp) - c00366b6: fb9cf0ef jal ra,c000666e - c00366ba: f0aa sd a0,96(sp) - c00366bc: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48748 + c0036882: 6542 ld a0,16(sp) + c0036884: 65e2 ld a1,24(sp) + c0036886: ed7cf0ef jal ra,c000675c + c003688a: f0aa sd a0,96(sp) + c003688c: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48756 then_funcs[1] = JS_DupValue(ctx, onFinally); - c00366be: 6542 ld a0,16(sp) - c00366c0: 65e2 ld a1,24(sp) - c00366c2: fadcf0ef jal ra,c000666e - c00366c6: f8aa sd a0,112(sp) - c00366c8: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48762 + c003688e: 6542 ld a0,16(sp) + c0036890: 65e2 ld a1,24(sp) + c0036892: ecbcf0ef jal ra,c000675c + c0036896: f8aa sd a0,112(sp) + c0036898: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48770 JS_FreeValue(ctx, ctor); - c00366ca: 7582 ld a1,32(sp) - c00366cc: 7622 ld a2,40(sp) - c00366ce: 8522 mv a0,s0 - c00366d0: c68d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48763 + c003689a: 7582 ld a1,32(sp) + c003689c: 7622 ld a2,40(sp) + c003689e: 8522 mv a0,s0 + c00368a0: b86d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48771 ret = JS_Invoke(ctx, this_val, JS_ATOM_then, 2, (JSValueConst *)then_funcs); - c00366d4: 6622 ld a2,8(sp) - c00366d6: 6582 ld a1,0(sp) - c00366d8: 109c addi a5,sp,96 - c00366da: 4709 li a4,2 - c00366dc: 08000693 li a3,128 - c00366e0: 8522 mv a0,s0 - c00366e2: c1fff0ef jal ra,c0036300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48764 + c00368a4: 6622 ld a2,8(sp) + c00368a6: 6582 ld a1,0(sp) + c00368a8: 109c addi a5,sp,96 + c00368aa: 4709 li a4,2 + c00368ac: 08000693 li a3,128 + c00368b0: 8522 mv a0,s0 + c00368b2: c1fff0ef jal ra,c00364d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48772 JS_FreeValue(ctx, then_funcs[0]); - c00366e6: 7626 ld a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48763 + c00368b6: 7626 ld a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48771 ret = JS_Invoke(ctx, this_val, JS_ATOM_then, 2, (JSValueConst *)then_funcs); - c00366e8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48764 + c00368b8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48772 JS_FreeValue(ctx, then_funcs[0]); - c00366ea: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48763 + c00368ba: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48771 ret = JS_Invoke(ctx, this_val, JS_ATOM_then, 2, (JSValueConst *)then_funcs); - c00366ec: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48764 + c00368bc: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48772 JS_FreeValue(ctx, then_funcs[0]); - c00366ee: 8522 mv a0,s0 - c00366f0: c48d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48765 + c00368be: 8522 mv a0,s0 + c00368c0: b66d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48773 JS_FreeValue(ctx, then_funcs[1]); - c00366f4: 75c6 ld a1,112(sp) - c00366f6: 7666 ld a2,120(sp) - c00366f8: 8522 mv a0,s0 - c00366fa: c3ed10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48766 + c00368c4: 75c6 ld a1,112(sp) + c00368c6: 7666 ld a2,120(sp) + c00368c8: 8522 mv a0,s0 + c00368ca: b5cd10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48774 return ret; - c00366fe: 77c2 ld a5,48(sp) - c0036700: e8be sd a5,80(sp) - c0036702: 77e2 ld a5,56(sp) - c0036704: a09d j c003676a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 + c00368ce: 77c2 ld a5,48(sp) + c00368d0: e8be sd a5,80(sp) + c00368d2: 77e2 ld a5,56(sp) + c00368d4: a09d j c003693a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48759 func_data[1] = onFinally; - c0036706: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 + c00368d6: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48761 then_funcs[i] = JS_NewCFunctionData(ctx, js_promise_then_finally_func, 1, i, 2, func_data); - c0036708: 4709 li a4,2 - c003670a: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 + c00368d8: 4709 li a4,2 + c00368da: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48759 func_data[1] = onFinally; - c003670c: e93e sd a5,144(sp) - c003670e: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 + c00368dc: e93e sd a5,144(sp) + c00368de: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48761 then_funcs[i] = JS_NewCFunctionData(ctx, js_promise_then_finally_func, 1, i, 2, func_data); - c0036710: 4605 li a2,1 - c0036712: 00008597 auipc a1,0x8 - c0036716: 84a58593 addi a1,a1,-1974 # c003df5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48751 + c00368e0: 4605 li a2,1 + c00368e2: 00008597 auipc a1,0x8 + c00368e6: 84a58593 addi a1,a1,-1974 # c003e12c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48759 func_data[1] = onFinally; - c003671a: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 + c00368ea: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48761 then_funcs[i] = JS_NewCFunctionData(ctx, js_promise_then_finally_func, 1, i, 2, func_data); - c003671c: 8522 mv a0,s0 - c003671e: 011c addi a5,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48750 + c00368ec: 8522 mv a0,s0 + c00368ee: 011c addi a5,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48758 func_data[0] = ctor; - c0036720: e14a sd s2,128(sp) - c0036722: e526 sd s1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 + c00368f0: e14a sd s2,128(sp) + c00368f2: e526 sd s1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48761 then_funcs[i] = JS_NewCFunctionData(ctx, js_promise_then_finally_func, 1, i, 2, func_data); - c0036724: ad3f20ef jal ra,c00291f6 - c0036728: f4ae sd a1,104(sp) - c003672a: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48754 + c00368f4: ad3f20ef jal ra,c00293c6 + c00368f8: f4ae sd a1,104(sp) + c00368fa: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48762 if (JS_IsException(then_funcs[i])) { - c003672c: 2581 sext.w a1,a1 - c003672e: 03358763 beq a1,s3,c003675c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48753 + c00368fc: 2581 sext.w a1,a1 + c00368fe: 03358763 beq a1,s3,c003692c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48761 then_funcs[i] = JS_NewCFunctionData(ctx, js_promise_then_finally_func, 1, i, 2, func_data); - c0036732: 011c addi a5,sp,128 - c0036734: 4709 li a4,2 - c0036736: 4685 li a3,1 - c0036738: 4605 li a2,1 - c003673a: 00008597 auipc a1,0x8 - c003673e: 82258593 addi a1,a1,-2014 # c003df5c - c0036742: 8522 mv a0,s0 - c0036744: ab3f20ef jal ra,c00291f6 - c0036748: fcae sd a1,120(sp) - c003674a: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48754 + c0036902: 011c addi a5,sp,128 + c0036904: 4709 li a4,2 + c0036906: 4685 li a3,1 + c0036908: 4605 li a2,1 + c003690a: 00008597 auipc a1,0x8 + c003690e: 82258593 addi a1,a1,-2014 # c003e12c + c0036912: 8522 mv a0,s0 + c0036914: ab3f20ef jal ra,c00293c6 + c0036918: fcae sd a1,120(sp) + c003691a: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48762 if (JS_IsException(then_funcs[i])) { - c003674c: 2581 sext.w a1,a1 - c003674e: f7359ee3 bne a1,s3,c00366ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48756 + c003691c: 2581 sext.w a1,a1 + c003691e: f7359ee3 bne a1,s3,c003689a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48764 JS_FreeValue(ctx, then_funcs[0]); - c0036752: 7586 ld a1,96(sp) - c0036754: 7626 ld a2,104(sp) - c0036756: 8522 mv a0,s0 - c0036758: be0d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48757 + c0036922: 7586 ld a1,96(sp) + c0036924: 7626 ld a2,104(sp) + c0036926: 8522 mv a0,s0 + c0036928: afed10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48765 JS_FreeValue(ctx, ctor); - c003675c: 7582 ld a1,32(sp) - c003675e: 7622 ld a2,40(sp) - c0036760: 8522 mv a0,s0 - c0036762: bd6d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48758 - return JS_EXCEPTION; - c0036766: 4799 li a5,6 - c0036768: e882 sd zero,80(sp) + c003692c: 7582 ld a1,32(sp) + c003692e: 7622 ld a2,40(sp) + c0036930: 8522 mv a0,s0 + c0036932: af4d10ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48766 + return JS_EXCEPTION; + c0036936: 4799 li a5,6 + c0036938: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48774 return ret; - c003676a: ecbe sd a5,88(sp) - c003676c: b725 j c0036694 + c003693a: ecbe sd a5,88(sp) + c003693c: b725 j c0036864 -00000000c003676e : +00000000c003693e : js_promise_catch(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48690 { - c003676e: 715d addi sp,sp,-80 - c0036770: e486 sd ra,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48684 + c003693e: 715d addi sp,sp,-80 + c0036940: e486 sd ra,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48692 args[0] = JS_UNDEFINED; - c0036772: 478d li a5,3 - c0036774: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48685 + c0036942: 478d li a5,3 + c0036944: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48693 args[1] = argv[0]; - c0036776: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48686 + c0036946: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48694 return JS_Invoke(ctx, this_val, JS_ATOM_then, 2, args); - c0036778: 08000693 li a3,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48684 + c0036948: 08000693 li a3,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48692 args[0] = JS_UNDEFINED; - c003677c: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48685 + c003694c: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48693 args[1] = argv[0]; - c003677e: f83e sd a5,48(sp) - c0036780: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48686 + c003694e: f83e sd a5,48(sp) + c0036950: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48694 return JS_Invoke(ctx, this_val, JS_ATOM_then, 2, args); - c0036782: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48685 + c0036952: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48693 args[1] = argv[0]; - c0036784: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48686 + c0036954: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48694 return JS_Invoke(ctx, this_val, JS_ATOM_then, 2, args); - c0036786: 101c addi a5,sp,32 - c0036788: b79ff0ef jal ra,c0036300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48687 + c0036956: 101c addi a5,sp,32 + c0036958: b79ff0ef jal ra,c00364d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48695 } - c003678c: 60a6 ld ra,72(sp) - c003678e: 6161 addi sp,sp,80 - c0036790: 8082 ret + c003695c: 60a6 ld ra,72(sp) + c003695e: 6161 addi sp,sp,80 + c0036960: 8082 ret -00000000c0036792 : +00000000c0036962 : js_object_toLocaleString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37772 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37780 { - c0036792: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37773 + c0036962: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37781 return JS_Invoke(ctx, this_val, JS_ATOM_toString, 0, NULL); - c0036794: 4781 li a5,0 - c0036796: 4701 li a4,0 - c0036798: 03800693 li a3,56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37774 + c0036964: 4781 li a5,0 + c0036966: 4701 li a4,0 + c0036968: 03800693 li a3,56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37782 } - c003679c: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37773 + c003696c: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37781 return JS_Invoke(ctx, this_val, JS_ATOM_toString, 0, NULL); - c003679e: b63ff06f j c0036300 + c003696e: b63ff06f j c00364d0 -00000000c00367a2 : +00000000c0036972 : JS_RegExpExec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44144 { - c00367a2: 7175 addi sp,sp,-144 - c00367a4: 87b2 mv a5,a2 - c00367a6: e836 sd a3,16(sp) - c00367a8: ec3a sd a4,24(sp) + c0036972: 7175 addi sp,sp,-144 + c0036974: 87b2 mv a5,a2 + c0036976: e836 sd a3,16(sp) + c0036978: ec3a sd a4,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00367aa: 4801 li a6,0 - c00367ac: 872e mv a4,a1 - c00367ae: 08700693 li a3,135 + c003697a: 4801 li a6,0 + c003697c: 872e mv a4,a1 + c003697e: 08700693 li a3,135 JS_RegExpExec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44136 - c00367b2: e122 sd s0,128(sp) - c00367b4: fca6 sd s1,120(sp) - c00367b6: f432 sd a2,40(sp) - c00367b8: ecb2 sd a2,88(sp) - c00367ba: e506 sd ra,136(sp) - c00367bc: 842a mv s0,a0 - c00367be: f02e sd a1,32(sp) - c00367c0: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44144 + c0036982: e122 sd s0,128(sp) + c0036984: fca6 sd s1,120(sp) + c0036986: f432 sd a2,40(sp) + c0036988: ecb2 sd a2,88(sp) + c003698a: e506 sd ra,136(sp) + c003698c: 842a mv s0,a0 + c003698e: f02e sd a1,32(sp) + c0036990: e8ae sd a1,80(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00367c2: 880db0ef jal ra,c0011842 + c0036992: f9fda0ef jal ra,c0011930 JS_RegExpExec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44148 if (JS_IsException(method)) - c00367c6: 0005871b sext.w a4,a1 - c00367ca: 4799 li a5,6 + c0036996: 0005871b sext.w a4,a1 + c003699a: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00367cc: 84aa mv s1,a0 - c00367ce: 862e mv a2,a1 + c003699c: 84aa mv s1,a0 + c003699e: 862e mv a2,a1 JS_RegExpExec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44140 - c00367d0: 00f71b63 bne a4,a5,c00367e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44141 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44148 + c00369a0: 00f71b63 bne a4,a5,c00369b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44149 return method; - c00367d4: e8aa sd a0,80(sp) - c00367d6: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44154 -} - c00367d8: 60aa ld ra,136(sp) - c00367da: 640a ld s0,128(sp) - c00367dc: 6546 ld a0,80(sp) - c00367de: 65e6 ld a1,88(sp) - c00367e0: 74e6 ld s1,120(sp) - c00367e2: 6149 addi sp,sp,144 - c00367e4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44142 + c00369a4: e8aa sd a0,80(sp) + c00369a6: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44162 +} + c00369a8: 60aa ld ra,136(sp) + c00369aa: 640a ld s0,128(sp) + c00369ac: 6546 ld a0,80(sp) + c00369ae: 65e6 ld a1,88(sp) + c00369b0: 74e6 ld s1,120(sp) + c00369b2: 6149 addi sp,sp,144 + c00369b4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44150 if (JS_IsFunction(ctx, method)) { - c00367e6: 85aa mv a1,a0 - c00367e8: 8522 mv a0,s0 - c00367ea: e432 sd a2,8(sp) - c00367ec: ef1d30ef jal ra,c000a6dc - c00367f0: 6622 ld a2,8(sp) - c00367f2: c929 beqz a0,c0036844 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44143 + c00369b6: 85aa mv a1,a0 + c00369b8: 8522 mv a0,s0 + c00369ba: e432 sd a2,8(sp) + c00369bc: e0fd30ef jal ra,c000a7ca + c00369c0: 6622 ld a2,8(sp) + c00369c2: c929 beqz a0,c0036a14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44151 ret = JS_CallFree(ctx, method, r, 1, &s); - c00367f4: 7722 ld a4,40(sp) - c00367f6: 7682 ld a3,32(sp) - c00367f8: 4785 li a5,1 - c00367fa: 01010813 addi a6,sp,16 - c00367fe: 85a6 mv a1,s1 - c0036800: 8522 mv a0,s0 - c0036802: 80adb0ef jal ra,c001180c - c0036806: e0aa sd a0,64(sp) - c0036808: e4ae sd a1,72(sp) + c00369c4: 7722 ld a4,40(sp) + c00369c6: 7682 ld a3,32(sp) + c00369c8: 4785 li a5,1 + c00369ca: 01010813 addi a6,sp,16 + c00369ce: 85a6 mv a1,s1 + c00369d0: 8522 mv a0,s0 + c00369d2: f29da0ef jal ra,c00118fa + c00369d6: e0aa sd a0,64(sp) + c00369d8: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003680a: 0005879b sext.w a5,a1 + c00369da: 0005879b sext.w a5,a1 JS_RegExpExec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44146 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44154 if (!JS_IsObject(ret) && !JS_IsNull(ret)) { - c003680e: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44143 + c00369de: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44151 ret = JS_CallFree(ctx, method, r, 1, &s); - c0036810: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44146 + c00369e0: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44154 if (!JS_IsObject(ret) && !JS_IsNull(ret)) { - c0036812: 00e79763 bne a5,a4,c0036820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44145 + c00369e2: 00e79763 bne a5,a4,c00369f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44153 return ret; - c0036816: 6786 ld a5,64(sp) - c0036818: e8be sd a5,80(sp) - c003681a: 67a6 ld a5,72(sp) - c003681c: ecbe sd a5,88(sp) - c003681e: bf6d j c00367d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44146 (discriminator 1) + c00369e6: 6786 ld a5,64(sp) + c00369e8: e8be sd a5,80(sp) + c00369ea: 67a6 ld a5,72(sp) + c00369ec: ecbe sd a5,88(sp) + c00369ee: bf6d j c00369a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44154 (discriminator 1) if (!JS_IsObject(ret) && !JS_IsNull(ret)) { - c0036820: 9bed andi a5,a5,-5 - c0036822: 4709 li a4,2 - c0036824: fee789e3 beq a5,a4,c0036816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44147 + c00369f0: 9bed andi a5,a5,-5 + c00369f2: 4709 li a4,2 + c00369f4: fee789e3 beq a5,a4,c00369e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44155 JS_FreeValue(ctx, ret); - c0036828: 85aa mv a1,a0 - c003682a: 8522 mv a0,s0 - c003682c: b0cd10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44148 + c00369f8: 85aa mv a1,a0 + c00369fa: 8522 mv a0,s0 + c00369fc: a2ad10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44156 return JS_ThrowTypeError(ctx, "RegExp exec method must return an object or null"); - c0036830: 0002a597 auipc a1,0x2a - c0036834: ee858593 addi a1,a1,-280 # c0060718 - c0036838: 8522 mv a0,s0 - c003683a: bbddc0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44153 + c0036a00: 0002a597 auipc a1,0x2a + c0036a04: f7858593 addi a1,a1,-136 # c0060978 + c0036a08: 8522 mv a0,s0 + c0036a0a: adbdc0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44161 return js_regexp_exec(ctx, r, 1, &s); - c003683e: e8aa sd a0,80(sp) - c0036840: ecae sd a1,88(sp) - c0036842: bf59 j c00367d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44152 + c0036a0e: e8aa sd a0,80(sp) + c0036a10: ecae sd a1,88(sp) + c0036a12: bf59 j c00369a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44160 JS_FreeValue(ctx, method); - c0036844: 85a6 mv a1,s1 - c0036846: 8522 mv a0,s0 - c0036848: af0d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44153 + c0036a14: 85a6 mv a1,s1 + c0036a16: 8522 mv a0,s0 + c0036a18: a0ed10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44161 return js_regexp_exec(ctx, r, 1, &s); - c003684c: 7582 ld a1,32(sp) - c003684e: 7622 ld a2,40(sp) - c0036850: 0818 addi a4,sp,16 - c0036852: 4685 li a3,1 - c0036854: 8522 mv a0,s0 - c0036856: a1bfe0ef jal ra,c0035270 - c003685a: b7d5 j c003683e - -00000000c003685c : + c0036a1c: 7582 ld a1,32(sp) + c0036a1e: 7622 ld a2,40(sp) + c0036a20: 0818 addi a4,sp,16 + c0036a22: 4685 li a3,1 + c0036a24: 8522 mv a0,s0 + c0036a26: a1bfe0ef jal ra,c0035440 + c0036a2a: b7d5 j c0036a0e + +00000000c0036a2c : js_regexp_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44302 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44310 { - c003685c: 7151 addi sp,sp,-240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44308 + c0036a2c: 7151 addi sp,sp,-240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44316 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_REGEXP_STRING_ITERATOR); - c003685e: 02a00693 li a3,42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44302 -{ - c0036862: eda6 sd s1,216(sp) - c0036864: e1d2 sd s4,192(sp) - c0036866: f586 sd ra,232(sp) - c0036868: f1a2 sd s0,224(sp) - c003686a: e9ca sd s2,208(sp) - c003686c: e5ce sd s3,200(sp) - c003686e: fd56 sd s5,184(sp) - c0036870: f95a sd s6,176(sp) - c0036872: 84aa mv s1,a0 - c0036874: e02e sd a1,0(sp) - c0036876: e432 sd a2,8(sp) - c0036878: 8a3e mv s4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44305 + c0036a2e: 02a00693 li a3,42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44310 +{ + c0036a32: eda6 sd s1,216(sp) + c0036a34: e1d2 sd s4,192(sp) + c0036a36: f586 sd ra,232(sp) + c0036a38: f1a2 sd s0,224(sp) + c0036a3a: e9ca sd s2,208(sp) + c0036a3c: e5ce sd s3,200(sp) + c0036a3e: fd56 sd s5,184(sp) + c0036a40: f95a sd s6,176(sp) + c0036a42: 84aa mv s1,a0 + c0036a44: e02e sd a1,0(sp) + c0036a46: e432 sd a2,8(sp) + c0036a48: 8a3e mv s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44313 JSValue matchStr = JS_UNDEFINED, match = JS_UNDEFINED; - c003687a: f802 sd zero,48(sp) - c003687c: fc02 sd zero,56(sp) - c003687e: e082 sd zero,64(sp) - c0036880: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44308 + c0036a4a: f802 sd zero,48(sp) + c0036a4c: fc02 sd zero,56(sp) + c0036a4e: e082 sd zero,64(sp) + c0036a50: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44316 it = JS_GetOpaque2(ctx, this_val, JS_CLASS_REGEXP_STRING_ITERATOR); - c0036882: cf7dc0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44309 + c0036a52: c15dc0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44317 if (!it) - c0036886: 12050463 beqz a0,c00369ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44311 + c0036a56: 12050463 beqz a0,c0036b7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44319 if (it->done) { - c003688a: 551c lw a5,40(a0) - c003688c: 842a mv s0,a0 - c003688e: c39d beqz a5,c00368b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44312 + c0036a5a: 551c lw a5,40(a0) + c0036a5c: 842a mv s0,a0 + c0036a5e: c39d beqz a5,c0036a84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44320 *pdone = TRUE; - c0036890: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44322 + c0036a60: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44330 *pdone = TRUE; - c0036892: 00fa2023 sw a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44323 + c0036a62: 00fa2023 sw a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44331 return JS_UNDEFINED; - c0036896: e882 sd zero,80(sp) - c0036898: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44350 + c0036a66: e882 sd zero,80(sp) + c0036a68: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44358 } - c003689a: 70ae ld ra,232(sp) - c003689c: 740e ld s0,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44349 + c0036a6a: 70ae ld ra,232(sp) + c0036a6c: 740e ld s0,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44357 return JS_EXCEPTION; - c003689e: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44350 -} - c00368a0: 6546 ld a0,80(sp) - c00368a2: 65e6 ld a1,88(sp) - c00368a4: 64ee ld s1,216(sp) - c00368a6: 694e ld s2,208(sp) - c00368a8: 69ae ld s3,200(sp) - c00368aa: 6a0e ld s4,192(sp) - c00368ac: 7aea ld s5,184(sp) - c00368ae: 7b4a ld s6,176(sp) - c00368b0: 616d addi sp,sp,240 - c00368b2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44316 + c0036a6e: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44358 +} + c0036a70: 6546 ld a0,80(sp) + c0036a72: 65e6 ld a1,88(sp) + c0036a74: 64ee ld s1,216(sp) + c0036a76: 694e ld s2,208(sp) + c0036a78: 69ae ld s3,200(sp) + c0036a7a: 6a0e ld s4,192(sp) + c0036a7c: 7aea ld s5,184(sp) + c0036a7e: 7b4a ld s6,176(sp) + c0036a80: 616d addi sp,sp,240 + c0036a82: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44324 S = it->iterated_string; - c00368b4: 01053a83 ld s5,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44315 + c0036a84: 01053a83 ld s5,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44323 R = it->iterating_regexp; - c00368b8: 610c ld a1,0(a0) - c00368ba: 6510 ld a2,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44316 + c0036a88: 610c ld a1,0(a0) + c0036a8a: 6510 ld a2,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44324 S = it->iterated_string; - c00368bc: 6d18 ld a4,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44317 + c0036a8c: 6d18 ld a4,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44325 match = JS_RegExpExec(ctx, R, S); - c00368be: 86d6 mv a3,s5 - c00368c0: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44315 + c0036a8e: 86d6 mv a3,s5 + c0036a90: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44323 R = it->iterating_regexp; - c00368c2: e82e sd a1,16(sp) - c00368c4: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44316 + c0036a92: e82e sd a1,16(sp) + c0036a94: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44324 S = it->iterated_string; - c00368c6: f056 sd s5,32(sp) - c00368c8: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44317 + c0036a96: f056 sd s5,32(sp) + c0036a98: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44325 match = JS_RegExpExec(ctx, R, S); - c00368ca: ed9ff0ef jal ra,c00367a2 - c00368ce: e0aa sd a0,64(sp) - c00368d0: e4ae sd a1,72(sp) + c0036a9a: ed9ff0ef jal ra,c0036972 + c0036a9e: e0aa sd a0,64(sp) + c0036aa0: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00368d2: 0005879b sext.w a5,a1 + c0036aa2: 0005879b sext.w a5,a1 js_regexp_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44326 if (JS_IsException(match)) - c00368d6: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44317 + c0036aa6: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44325 match = JS_RegExpExec(ctx, R, S); - c00368d8: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44318 + c0036aa8: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44326 if (JS_IsException(match)) - c00368da: 0d678b63 beq a5,s6,c00369b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44320 + c0036aaa: 0d678b63 beq a5,s6,c0036b80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44328 if (JS_IsNull(match)) { - c00368de: 4709 li a4,2 - c00368e0: 00e79563 bne a5,a4,c00368ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44321 + c0036aae: 4709 li a4,2 + c0036ab0: 00e79563 bne a5,a4,c0036aba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44329 it->done = TRUE; - c00368e4: 4785 li a5,1 - c00368e6: d41c sw a5,40(s0) - c00368e8: b76d j c0036892 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44324 + c0036ab4: 4785 li a5,1 + c0036ab6: d41c sw a5,40(s0) + c0036ab8: b76d j c0036a62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44332 } else if (it->global) { - c00368ea: 501c lw a5,32(s0) - c00368ec: cfd5 beqz a5,c00369a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44325 + c0036aba: 501c lw a5,32(s0) + c0036abc: cfd5 beqz a5,c0036b78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44333 matchStr = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, match, 0)); - c00368ee: 4681 li a3,0 - c00368f0: 85aa mv a1,a0 - c00368f2: 864e mv a2,s3 - c00368f4: 8526 mv a0,s1 - c00368f6: dd8fb0ef jal ra,c0031ece - c00368fa: 862e mv a2,a1 - c00368fc: f0aa sd a0,96(sp) - c00368fe: f4ae sd a1,104(sp) - c0036900: 85aa mv a1,a0 - c0036902: 8526 mv a0,s1 - c0036904: edde30ef jal ra,c001a7e0 - c0036908: f82a sd a0,48(sp) - c003690a: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44326 + c0036abe: 4681 li a3,0 + c0036ac0: 85aa mv a1,a0 + c0036ac2: 864e mv a2,s3 + c0036ac4: 8526 mv a0,s1 + c0036ac6: dd8fb0ef jal ra,c003209e + c0036aca: 862e mv a2,a1 + c0036acc: f0aa sd a0,96(sp) + c0036ace: f4ae sd a1,104(sp) + c0036ad0: 85aa mv a1,a0 + c0036ad2: 8526 mv a0,s1 + c0036ad4: edde30ef jal ra,c001a9b0 + c0036ad8: f82a sd a0,48(sp) + c0036ada: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44334 if (JS_IsException(matchStr)) - c003690c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44325 + c0036adc: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44333 matchStr = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, match, 0)); - c0036910: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44326 + c0036ae0: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44334 if (JS_IsException(matchStr)) - c0036912: 0b678063 beq a5,s6,c00369b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44328 + c0036ae2: 0b678063 beq a5,s6,c0036b82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44336 if (JS_IsEmptyString(matchStr)) { - c0036916: 833cd0ef jal ra,c0004148 - c003691a: c525 beqz a0,c0036982 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44330 + c0036ae6: e62cd0ef jal ra,c0004148 + c0036aea: c525 beqz a0,c0036b52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44338 if (JS_ToLengthFree(ctx, &thisIndex, - c003691c: 6742 ld a4,16(sp) - c003691e: 67e2 ld a5,24(sp) + c0036aec: 6742 ld a4,16(sp) + c0036aee: 67e2 ld a5,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0036920: 05600693 li a3,86 - c0036924: 4801 li a6,0 - c0036926: 863e mv a2,a5 - c0036928: 85ba mv a1,a4 - c003692a: 8526 mv a0,s1 - c003692c: f13a sd a4,160(sp) - c003692e: f53e sd a5,168(sp) - c0036930: f13da0ef jal ra,c0011842 - c0036934: 862a mv a2,a0 - c0036936: 86ae mv a3,a1 - c0036938: e12a sd a0,128(sp) - c003693a: e52e sd a1,136(sp) - c003693c: f8aa sd a0,112(sp) - c003693e: fcae sd a1,120(sp) + c0036af0: 05600693 li a3,86 + c0036af4: 4801 li a6,0 + c0036af6: 863e mv a2,a5 + c0036af8: 85ba mv a1,a4 + c0036afa: 8526 mv a0,s1 + c0036afc: f13a sd a4,160(sp) + c0036afe: f53e sd a5,168(sp) + c0036b00: e31da0ef jal ra,c0011930 + c0036b04: 862a mv a2,a0 + c0036b06: 86ae mv a3,a1 + c0036b08: e12a sd a0,128(sp) + c0036b0a: e52e sd a1,136(sp) + c0036b0c: f8aa sd a0,112(sp) + c0036b0e: fcae sd a1,120(sp) js_regexp_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44330 - c0036940: 8526 mv a0,s1 - c0036942: 088c addi a1,sp,80 - c0036944: ec9e70ef jal ra,c001e80c - c0036948: 06054563 bltz a0,c00369b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44334 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44338 + c0036b10: 8526 mv a0,s1 + c0036b12: 088c addi a1,sp,80 + c0036b14: ec9e70ef jal ra,c001e9dc + c0036b18: 06054563 bltz a0,c0036b82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44342 nextIndex = string_advance_index(sp, thisIndex, it->unicode); - c003694c: 5050 lw a2,36(s0) - c003694e: 65c6 ld a1,80(sp) - c0036950: 8556 mv a0,s5 - c0036952: febce0ef jal ra,c000593c + c0036b1c: 5050 lw a2,36(s0) + c0036b1e: 65c6 ld a1,80(sp) + c0036b20: 8556 mv a0,s5 + c0036b22: f09ce0ef jal ra,c0005a2a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0036956: 0005071b sext.w a4,a0 - c003695a: 02a71f63 bne a4,a0,c0036998 + c0036b26: 0005071b sext.w a4,a0 + c0036b2a: 02a71f63 bne a4,a0,c0036b68 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003695e: d302 sw zero,164(sp) - c0036960: d13a sw a4,160(sp) - c0036962: 778a ld a5,160(sp) - c0036964: f502 sd zero,168(sp) - c0036966: e93e sd a5,144(sp) - c0036968: 4781 li a5,0 + c0036b2e: d302 sw zero,164(sp) + c0036b30: d13a sw a4,160(sp) + c0036b32: 778a ld a5,160(sp) + c0036b34: f502 sd zero,168(sp) + c0036b36: e93e sd a5,144(sp) + c0036b38: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003696a: c93a sw a4,144(sp) + c0036b3a: c93a sw a4,144(sp) js_regexp_string_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44335 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44343 if (JS_SetProperty(ctx, R, JS_ATOM_lastIndex, - c003696c: 674a ld a4,144(sp) - c003696e: 65c2 ld a1,16(sp) - c0036970: 6662 ld a2,24(sp) - c0036972: 05600693 li a3,86 - c0036976: 8526 mv a0,s1 - c0036978: ed3e sd a5,152(sp) - c003697a: f7ef90ef jal ra,c00300f8 - c003697e: 02054a63 bltz a0,c00369b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44339 + c0036b3c: 674a ld a4,144(sp) + c0036b3e: 65c2 ld a1,16(sp) + c0036b40: 6662 ld a2,24(sp) + c0036b42: 05600693 li a3,86 + c0036b46: 8526 mv a0,s1 + c0036b48: ed3e sd a5,152(sp) + c0036b4a: f7ef90ef jal ra,c00302c8 + c0036b4e: 02054a63 bltz a0,c0036b82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44347 JS_FreeValue(ctx, matchStr); - c0036982: 75c2 ld a1,48(sp) - c0036984: 7662 ld a2,56(sp) - c0036986: 8526 mv a0,s1 - c0036988: 9b0d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44344 + c0036b52: 75c2 ld a1,48(sp) + c0036b54: 7662 ld a2,56(sp) + c0036b56: 8526 mv a0,s1 + c0036b58: 8ced10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44352 return match; - c003698c: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44343 + c0036b5c: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44351 *pdone = FALSE; - c003698e: 000a2023 sw zero,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44344 + c0036b5e: 000a2023 sw zero,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44352 return match; - c0036992: e8be sd a5,80(sp) - c0036994: 67a6 ld a5,72(sp) - c0036996: b711 j c003689a + c0036b62: e8be sd a5,80(sp) + c0036b64: 67a6 ld a5,72(sp) + c0036b66: b711 j c0036a6a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0036998: d22577d3 fcvt.d.l fa5,a0 - c003699c: 479d li a5,7 - c003699e: e2078753 fmv.x.d a4,fa5 + c0036b68: d22577d3 fcvt.d.l fa5,a0 + c0036b6c: 479d li a5,7 + c0036b6e: e2078753 fmv.x.d a4,fa5 js_regexp_string_iterator_next(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00369a2: a93e fsd fa5,144(sp) - c00369a4: 2701 sext.w a4,a4 - c00369a6: b7d1 j c003696a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44341 + c0036b72: a93e fsd fa5,144(sp) + c0036b74: 2701 sext.w a4,a4 + c0036b76: b7d1 j c0036b3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44349 it->done = TRUE; - c00369a8: 4785 li a5,1 - c00369aa: d41c sw a5,40(s0) - c00369ac: b7c5 j c003698c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44305 + c0036b78: 4785 li a5,1 + c0036b7a: d41c sw a5,40(s0) + c0036b7c: b7c5 j c0036b5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44313 JSValue matchStr = JS_UNDEFINED, match = JS_UNDEFINED; - c00369ae: 498d li s3,3 - c00369b0: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44346 + c0036b7e: 498d li s3,3 + c0036b80: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44354 JS_FreeValue(ctx, match); - c00369b2: 6586 ld a1,64(sp) - c00369b4: 864e mv a2,s3 - c00369b6: 8526 mv a0,s1 - c00369b8: 980d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44347 + c0036b82: 6586 ld a1,64(sp) + c0036b84: 864e mv a2,s3 + c0036b86: 8526 mv a0,s1 + c0036b88: 89ed10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44355 JS_FreeValue(ctx, matchStr); - c00369bc: 75c2 ld a1,48(sp) - c00369be: 864a mv a2,s2 - c00369c0: 8526 mv a0,s1 - c00369c2: 976d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44349 + c0036b8c: 75c2 ld a1,48(sp) + c0036b8e: 864a mv a2,s2 + c0036b90: 8526 mv a0,s1 + c0036b92: 894d10ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44357 return JS_EXCEPTION; - c00369c6: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44348 + c0036b96: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44356 *pdone = FALSE; - c00369c8: 000a2023 sw zero,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44349 + c0036b98: 000a2023 sw zero,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44357 return JS_EXCEPTION; - c00369cc: e882 sd zero,80(sp) - c00369ce: b5f1 j c003689a + c0036b9c: e882 sd zero,80(sp) + c0036b9e: b5f1 j c0036a6a -00000000c00369d0 : +00000000c0036ba0 : js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44695 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44703 { - c00369d0: 712d addi sp,sp,-288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44696 + c0036ba0: 712d addi sp,sp,-288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44704 JSValueConst rx = this_val; - c00369d2: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44695 + c0036ba2: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44703 { - c00369d4: ee06 sd ra,280(sp) - c00369d6: ea22 sd s0,272(sp) - c00369d8: e626 sd s1,264(sp) - c00369da: e24a sd s2,256(sp) - c00369dc: fdce sd s3,248(sp) - c00369de: f9d2 sd s4,240(sp) - c00369e0: f5d6 sd s5,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44696 + c0036ba4: ee06 sd ra,280(sp) + c0036ba6: ea22 sd s0,272(sp) + c0036ba8: e626 sd s1,264(sp) + c0036baa: e24a sd s2,256(sp) + c0036bac: fdce sd s3,248(sp) + c0036bae: f9d2 sd s4,240(sp) + c0036bb0: f5d6 sd s5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44704 JSValueConst rx = this_val; - c00369e2: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44699 + c0036bb2: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44707 if (!JS_IsObject(rx)) - c00369e4: 2601 sext.w a2,a2 - c00369e6: 57fd li a5,-1 - c00369e8: 00f60c63 beq a2,a5,c0036a00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44749 -} - c00369ec: 6452 ld s0,272(sp) - c00369ee: 60f2 ld ra,280(sp) - c00369f0: 64b2 ld s1,264(sp) - c00369f2: 6912 ld s2,256(sp) - c00369f4: 79ee ld s3,248(sp) - c00369f6: 7a4e ld s4,240(sp) - c00369f8: 7aae ld s5,232(sp) - c00369fa: 6115 addi sp,sp,288 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44700 + c0036bb4: 2601 sext.w a2,a2 + c0036bb6: 57fd li a5,-1 + c0036bb8: 00f60c63 beq a2,a5,c0036bd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44757 +} + c0036bbc: 6452 ld s0,272(sp) + c0036bbe: 60f2 ld ra,280(sp) + c0036bc0: 64b2 ld s1,264(sp) + c0036bc2: 6912 ld s2,256(sp) + c0036bc4: 79ee ld s3,248(sp) + c0036bc6: 7a4e ld s4,240(sp) + c0036bc8: 7aae ld s5,232(sp) + c0036bca: 6115 addi sp,sp,288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44708 return JS_ThrowTypeErrorNotAnObject(ctx); - c00369fc: f7ddc06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44705 + c0036bcc: e9bdc06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44713 str = JS_ToString(ctx, argv[0]); - c0036a00: 630c ld a1,0(a4) - c0036a02: 6710 ld a2,8(a4) - c0036a04: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44702 + c0036bd0: 630c ld a1,0(a4) + c0036bd2: 6710 ld a2,8(a4) + c0036bd4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44710 result = JS_UNDEFINED; - c0036a06: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44703 + c0036bd6: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44711 currentLastIndex = JS_UNDEFINED; - c0036a08: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44704 + c0036bd8: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44712 previousLastIndex = JS_UNDEFINED; - c0036a0a: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44705 + c0036bda: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44713 str = JS_ToString(ctx, argv[0]); - c0036a0c: dcbe30ef jal ra,c001a7d6 - c0036a10: f42e sd a1,40(sp) - c0036a12: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44706 + c0036bdc: dcbe30ef jal ra,c001a9a6 + c0036be0: f42e sd a1,40(sp) + c0036be2: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44714 if (JS_IsException(str)) - c0036a14: 2581 sext.w a1,a1 - c0036a16: 4499 li s1,6 - c0036a18: 16958563 beq a1,s1,c0036b82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44709 + c0036be4: 2581 sext.w a1,a1 + c0036be6: 4499 li s1,6 + c0036be8: 16958563 beq a1,s1,c0036d52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44717 previousLastIndex = JS_GetProperty(ctx, rx, JS_ATOM_lastIndex); - c0036a1c: 67e2 ld a5,24(sp) - c0036a1e: 6742 ld a4,16(sp) + c0036bec: 67e2 ld a5,24(sp) + c0036bee: 6742 ld a4,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0036a20: 4801 li a6,0 - c0036a22: 863e mv a2,a5 - c0036a24: 05600693 li a3,86 - c0036a28: 85ba mv a1,a4 - c0036a2a: 8522 mv a0,s0 - c0036a2c: edbe sd a5,216(sp) - c0036a2e: e9ba sd a4,208(sp) - c0036a30: e13da0ef jal ra,c0011842 - c0036a34: f82a sd a0,48(sp) - c0036a36: fc2e sd a1,56(sp) + c0036bf0: 4801 li a6,0 + c0036bf2: 863e mv a2,a5 + c0036bf4: 05600693 li a3,86 + c0036bf8: 85ba mv a1,a4 + c0036bfa: 8522 mv a0,s0 + c0036bfc: edbe sd a5,216(sp) + c0036bfe: e9ba sd a4,208(sp) + c0036c00: d31da0ef jal ra,c0011930 + c0036c04: f82a sd a0,48(sp) + c0036c06: fc2e sd a1,56(sp) js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44718 if (JS_IsException(previousLastIndex)) - c0036a38: 0005879b sext.w a5,a1 + c0036c08: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036a3c: 892e mv s2,a1 + c0036c0c: 892e mv s2,a1 js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44710 - c0036a3e: 04978663 beq a5,s1,c0036a8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44713 - if (!js_same_value(ctx, previousLastIndex, JS_NewInt32(ctx, 0))) { - c0036a42: 85aa mv a1,a0 - c0036a44: 4681 li a3,0 - c0036a46: 4701 li a4,0 - c0036a48: 864a mv a2,s2 - c0036a4a: 8522 mv a0,s0 - c0036a4c: a76d10ef jal ra,c0007cc2 - c0036a50: c115 beqz a0,c0036a74 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44718 + c0036c0e: 04978663 beq a5,s1,c0036c5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44721 + if (!js_same_value(ctx, previousLastIndex, JS_NewInt32(ctx, 0))) { + c0036c12: 85aa mv a1,a0 + c0036c14: 4681 li a3,0 + c0036c16: 4701 li a4,0 + c0036c18: 864a mv a2,s2 + c0036c1a: 8522 mv a0,s0 + c0036c1c: 994d10ef jal ra,c0007db0 + c0036c20: c115 beqz a0,c0036c44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44726 result = JS_RegExpExec(ctx, rx, str); - c0036a52: 7682 ld a3,32(sp) - c0036a54: 7722 ld a4,40(sp) - c0036a56: 65c2 ld a1,16(sp) - c0036a58: 6662 ld a2,24(sp) - c0036a5a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44719 + c0036c22: 7682 ld a3,32(sp) + c0036c24: 7722 ld a4,40(sp) + c0036c26: 65c2 ld a1,16(sp) + c0036c28: 6662 ld a2,24(sp) + c0036c2a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44727 if (JS_IsException(result)) - c0036a5c: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44718 + c0036c2c: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44726 result = JS_RegExpExec(ctx, rx, str); - c0036a5e: d45ff0ef jal ra,c00367a2 - c0036a62: e8aa sd a0,80(sp) - c0036a64: ecae sd a1,88(sp) + c0036c2e: d45ff0ef jal ra,c0036972 + c0036c32: e8aa sd a0,80(sp) + c0036c34: ecae sd a1,88(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0036a66: 00058a1b sext.w s4,a1 + c0036c36: 00058a1b sext.w s4,a1 js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44718 - c0036a6a: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44719 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44726 + c0036c3a: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44727 if (JS_IsException(result)) - c0036a6c: 035a1163 bne s4,s5,c0036a8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44703 + c0036c3c: 035a1163 bne s4,s5,c0036c5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44711 currentLastIndex = JS_UNDEFINED; - c0036a70: 498d li s3,3 - c0036a72: a07d j c0036b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44714 + c0036c40: 498d li s3,3 + c0036c42: a07d j c0036cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44722 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0)) < 0) { - c0036a74: 65c2 ld a1,16(sp) - c0036a76: 6662 ld a2,24(sp) - c0036a78: 4701 li a4,0 - c0036a7a: 4781 li a5,0 - c0036a7c: 05600693 li a3,86 - c0036a80: 8522 mv a0,s0 - c0036a82: e76f90ef jal ra,c00300f8 - c0036a86: fc0556e3 bgez a0,c0036a52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44702 + c0036c44: 65c2 ld a1,16(sp) + c0036c46: 6662 ld a2,24(sp) + c0036c48: 4701 li a4,0 + c0036c4a: 4781 li a5,0 + c0036c4c: 05600693 li a3,86 + c0036c50: 8522 mv a0,s0 + c0036c52: e76f90ef jal ra,c00302c8 + c0036c56: fc0556e3 bgez a0,c0036c22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44710 result = JS_UNDEFINED; - c0036a8a: 448d li s1,3 - c0036a8c: b7d5 j c0036a70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44721 + c0036c5a: 448d li s1,3 + c0036c5c: b7d5 j c0036c40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44729 currentLastIndex = JS_GetProperty(ctx, rx, JS_ATOM_lastIndex); - c0036a8e: 67e2 ld a5,24(sp) - c0036a90: 6742 ld a4,16(sp) + c0036c5e: 67e2 ld a5,24(sp) + c0036c60: 6742 ld a4,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0036a92: 4801 li a6,0 - c0036a94: 863e mv a2,a5 - c0036a96: 05600693 li a3,86 - c0036a9a: 85ba mv a1,a4 - c0036a9c: 8522 mv a0,s0 - c0036a9e: edbe sd a5,216(sp) - c0036aa0: e9ba sd a4,208(sp) - c0036aa2: da1da0ef jal ra,c0011842 - c0036aa6: e0aa sd a0,64(sp) - c0036aa8: e4ae sd a1,72(sp) + c0036c62: 4801 li a6,0 + c0036c64: 863e mv a2,a5 + c0036c66: 05600693 li a3,86 + c0036c6a: 85ba mv a1,a4 + c0036c6c: 8522 mv a0,s0 + c0036c6e: edbe sd a5,216(sp) + c0036c70: e9ba sd a4,208(sp) + c0036c72: cbfda0ef jal ra,c0011930 + c0036c76: e0aa sd a0,64(sp) + c0036c78: e4ae sd a1,72(sp) js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44730 if (JS_IsException(currentLastIndex)) - c0036aaa: 0005879b sext.w a5,a1 + c0036c7a: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036aae: 862e mv a2,a1 - c0036ab0: 89ae mv s3,a1 + c0036c7e: 862e mv a2,a1 + c0036c80: 89ae mv s3,a1 js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44722 - c0036ab2: 07578763 beq a5,s5,c0036b20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44730 + c0036c82: 07578763 beq a5,s5,c0036cf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44732 if (js_same_value(ctx, currentLastIndex, previousLastIndex)) { - c0036ab6: 76c2 ld a3,48(sp) - c0036ab8: 7762 ld a4,56(sp) - c0036aba: 85aa mv a1,a0 - c0036abc: 8522 mv a0,s0 - c0036abe: a04d10ef jal ra,c0007cc2 - c0036ac2: c131 beqz a0,c0036b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44725 + c0036c86: 76c2 ld a3,48(sp) + c0036c88: 7762 ld a4,56(sp) + c0036c8a: 85aa mv a1,a0 + c0036c8c: 8522 mv a0,s0 + c0036c8e: 922d10ef jal ra,c0007db0 + c0036c92: c131 beqz a0,c0036cd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44733 JS_FreeValue(ctx, previousLastIndex); - c0036ac4: 75c2 ld a1,48(sp) - c0036ac6: 7662 ld a2,56(sp) - c0036ac8: 8522 mv a0,s0 - c0036aca: 86ed10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44732 + c0036c94: 75c2 ld a1,48(sp) + c0036c96: 7662 ld a2,56(sp) + c0036c98: 8522 mv a0,s0 + c0036c9a: f8dd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44740 JS_FreeValue(ctx, str); - c0036ace: 7582 ld a1,32(sp) - c0036ad0: 7622 ld a2,40(sp) - c0036ad2: 8522 mv a0,s0 - c0036ad4: 864d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44733 + c0036c9e: 7582 ld a1,32(sp) + c0036ca0: 7622 ld a2,40(sp) + c0036ca2: 8522 mv a0,s0 + c0036ca4: f83d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44741 JS_FreeValue(ctx, currentLastIndex); - c0036ad8: 6586 ld a1,64(sp) - c0036ada: 6626 ld a2,72(sp) - c0036adc: 8522 mv a0,s0 - c0036ade: 85ad10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44735 + c0036ca8: 6586 ld a1,64(sp) + c0036caa: 6626 ld a2,72(sp) + c0036cac: 8522 mv a0,s0 + c0036cae: f79d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44743 if (JS_IsNull(result)) { - c0036ae2: 4789 li a5,2 - c0036ae4: 06fa1563 bne s4,a5,c0036b4e + c0036cb2: 4789 li a5,2 + c0036cb4: 06fa1563 bne s4,a5,c0036d1e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0036ae8: 57fd li a5,-1 - c0036aea: 9381 srli a5,a5,0x20 - c0036aec: f8be sd a5,112(sp) - c0036aee: fc82 sd zero,120(sp) + c0036cb8: 57fd li a5,-1 + c0036cba: 9381 srli a5,a5,0x20 + c0036cbc: f8be sd a5,112(sp) + c0036cbe: fc82 sd zero,120(sp) js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44749 -} - c0036af0: 60f2 ld ra,280(sp) - c0036af2: 6452 ld s0,272(sp) - c0036af4: 7546 ld a0,112(sp) - c0036af6: 75e6 ld a1,120(sp) - c0036af8: 64b2 ld s1,264(sp) - c0036afa: 6912 ld s2,256(sp) - c0036afc: 79ee ld s3,248(sp) - c0036afe: 7a4e ld s4,240(sp) - c0036b00: 7aae ld s5,232(sp) - c0036b02: 6115 addi sp,sp,288 - c0036b04: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44727 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44757 +} + c0036cc0: 60f2 ld ra,280(sp) + c0036cc2: 6452 ld s0,272(sp) + c0036cc4: 7546 ld a0,112(sp) + c0036cc6: 75e6 ld a1,120(sp) + c0036cc8: 64b2 ld s1,264(sp) + c0036cca: 6912 ld s2,256(sp) + c0036ccc: 79ee ld s3,248(sp) + c0036cce: 7a4e ld s4,240(sp) + c0036cd0: 7aae ld s5,232(sp) + c0036cd2: 6115 addi sp,sp,288 + c0036cd4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44735 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, previousLastIndex) < 0) { - c0036b06: 7742 ld a4,48(sp) - c0036b08: 77e2 ld a5,56(sp) - c0036b0a: 65c2 ld a1,16(sp) - c0036b0c: 6662 ld a2,24(sp) - c0036b0e: 05600693 li a3,86 - c0036b12: 8522 mv a0,s0 - c0036b14: de4f90ef jal ra,c00300f8 - c0036b18: fa055be3 bgez a0,c0036ace -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44728 + c0036cd6: 7742 ld a4,48(sp) + c0036cd8: 77e2 ld a5,56(sp) + c0036cda: 65c2 ld a1,16(sp) + c0036cdc: 6662 ld a2,24(sp) + c0036cde: 05600693 li a3,86 + c0036ce2: 8522 mv a0,s0 + c0036ce4: de4f90ef jal ra,c00302c8 + c0036ce8: fa055be3 bgez a0,c0036c9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44736 previousLastIndex = JS_UNDEFINED; - c0036b1c: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44704 + c0036cec: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44712 previousLastIndex = JS_UNDEFINED; - c0036b1e: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44744 + c0036cee: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44752 JS_FreeValue(ctx, result); - c0036b20: 65c6 ld a1,80(sp) - c0036b22: 8626 mv a2,s1 - c0036b24: 8522 mv a0,s0 - c0036b26: 812d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44745 + c0036cf0: 65c6 ld a1,80(sp) + c0036cf2: 8626 mv a2,s1 + c0036cf4: 8522 mv a0,s0 + c0036cf6: f31d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44753 JS_FreeValue(ctx, str); - c0036b2a: 7582 ld a1,32(sp) - c0036b2c: 7622 ld a2,40(sp) - c0036b2e: 8522 mv a0,s0 - c0036b30: 808d10ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44746 + c0036cfa: 7582 ld a1,32(sp) + c0036cfc: 7622 ld a2,40(sp) + c0036cfe: 8522 mv a0,s0 + c0036d00: f27d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44754 JS_FreeValue(ctx, currentLastIndex); - c0036b34: 6586 ld a1,64(sp) - c0036b36: 864e mv a2,s3 - c0036b38: 8522 mv a0,s0 - c0036b3a: fffd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44747 + c0036d04: 6586 ld a1,64(sp) + c0036d06: 864e mv a2,s3 + c0036d08: 8522 mv a0,s0 + c0036d0a: f1dd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44755 JS_FreeValue(ctx, previousLastIndex); - c0036b3e: 75c2 ld a1,48(sp) - c0036b40: 864a mv a2,s2 - c0036b42: 8522 mv a0,s0 - c0036b44: ff5d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44748 + c0036d0e: 75c2 ld a1,48(sp) + c0036d10: 864a mv a2,s2 + c0036d12: 8522 mv a0,s0 + c0036d14: f13d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44756 return JS_EXCEPTION; - c0036b48: 4799 li a5,6 - c0036b4a: f882 sd zero,112(sp) - c0036b4c: a80d j c0036b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44738 + c0036d18: 4799 li a5,6 + c0036d1a: f882 sd zero,112(sp) + c0036d1c: a80d j c0036d4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44746 index = JS_GetProperty(ctx, result, JS_ATOM_index); - c0036b4e: 67e6 ld a5,88(sp) - c0036b50: 6746 ld a4,80(sp) + c0036d1e: 67e6 ld a5,88(sp) + c0036d20: 6746 ld a4,80(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0036b52: 4801 li a6,0 - c0036b54: 863e mv a2,a5 - c0036b56: 05800693 li a3,88 - c0036b5a: 85ba mv a1,a4 - c0036b5c: 8522 mv a0,s0 - c0036b5e: e5be sd a5,200(sp) - c0036b60: e1ba sd a4,192(sp) - c0036b62: ce1da0ef jal ra,c0011842 - c0036b66: edae sd a1,216(sp) - c0036b68: f4ae sd a1,104(sp) + c0036d22: 4801 li a6,0 + c0036d24: 863e mv a2,a5 + c0036d26: 05800693 li a3,88 + c0036d2a: 85ba mv a1,a4 + c0036d2c: 8522 mv a0,s0 + c0036d2e: e5be sd a5,200(sp) + c0036d30: e1ba sd a4,192(sp) + c0036d32: bffda0ef jal ra,c0011930 + c0036d36: edae sd a1,216(sp) + c0036d38: f4ae sd a1,104(sp) js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44739 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44747 JS_FreeValue(ctx, result); - c0036b6a: 6666 ld a2,88(sp) - c0036b6c: 65c6 ld a1,80(sp) + c0036d3a: 6666 ld a2,88(sp) + c0036d3c: 65c6 ld a1,80(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036b6e: e9aa sd a0,208(sp) - c0036b70: f0aa sd a0,96(sp) + c0036d3e: e9aa sd a0,208(sp) + c0036d40: f0aa sd a0,96(sp) js_regexp_Symbol_search(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44739 - c0036b72: 8522 mv a0,s0 - c0036b74: fc5d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44740 - return index; - c0036b78: 7786 ld a5,96(sp) - c0036b7a: f8be sd a5,112(sp) - c0036b7c: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44747 + c0036d42: 8522 mv a0,s0 + c0036d44: ee3d00ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44748 + return index; + c0036d48: 7786 ld a5,96(sp) + c0036d4a: f8be sd a5,112(sp) + c0036d4c: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44756 return JS_EXCEPTION; - c0036b7e: fcbe sd a5,120(sp) - c0036b80: bf85 j c0036af0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44702 + c0036d4e: fcbe sd a5,120(sp) + c0036d50: bf85 j c0036cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44710 result = JS_UNDEFINED; - c0036b82: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44703 + c0036d52: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44711 currentLastIndex = JS_UNDEFINED; - c0036b84: 498d li s3,3 - c0036b86: bf61 j c0036b1e + c0036d54: 498d li s3,3 + c0036d56: bf61 j c0036cee -00000000c0036b88 : +00000000c0036d58 : js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44193 { - c0036b88: 7161 addi sp,sp,-432 - c0036b8a: ef26 sd s1,408(sp) - c0036b8c: f706 sd ra,424(sp) - c0036b8e: f322 sd s0,416(sp) - c0036b90: eb4a sd s2,400(sp) - c0036b92: e74e sd s3,392(sp) - c0036b94: e352 sd s4,384(sp) - c0036b96: fed6 sd s5,376(sp) - c0036b98: fada sd s6,368(sp) - c0036b9a: f6de sd s7,360(sp) - c0036b9c: f2e2 sd s8,352(sp) - c0036b9e: eee6 sd s9,344(sp) - c0036ba0: eaea sd s10,336(sp) - c0036ba2: e6ee sd s11,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44187 + c0036d58: 7161 addi sp,sp,-432 + c0036d5a: ef26 sd s1,408(sp) + c0036d5c: f706 sd ra,424(sp) + c0036d5e: f322 sd s0,416(sp) + c0036d60: eb4a sd s2,400(sp) + c0036d62: e74e sd s3,392(sp) + c0036d64: e352 sd s4,384(sp) + c0036d66: fed6 sd s5,376(sp) + c0036d68: fada sd s6,368(sp) + c0036d6a: f6de sd s7,360(sp) + c0036d6c: f2e2 sd s8,352(sp) + c0036d6e: eee6 sd s9,344(sp) + c0036d70: eaea sd s10,336(sp) + c0036d72: e6ee sd s11,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44195 JSValueConst rx = this_val; - c0036ba4: e0ae sd a1,64(sp) - c0036ba6: e4b2 sd a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44192 + c0036d74: e0ae sd a1,64(sp) + c0036d76: e4b2 sd a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44200 if (!JS_IsObject(rx)) - c0036ba8: 0006049b sext.w s1,a2 - c0036bac: 57fd li a5,-1 - c0036bae: 02f48263 beq s1,a5,c0036bd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44266 -} - c0036bb2: 741a ld s0,416(sp) - c0036bb4: 70ba ld ra,424(sp) - c0036bb6: 64fa ld s1,408(sp) - c0036bb8: 695a ld s2,400(sp) - c0036bba: 69ba ld s3,392(sp) - c0036bbc: 6a1a ld s4,384(sp) - c0036bbe: 7af6 ld s5,376(sp) - c0036bc0: 7b56 ld s6,368(sp) - c0036bc2: 7bb6 ld s7,360(sp) - c0036bc4: 7c16 ld s8,352(sp) - c0036bc6: 6cf6 ld s9,344(sp) - c0036bc8: 6d56 ld s10,336(sp) - c0036bca: 6db6 ld s11,328(sp) - c0036bcc: 615d addi sp,sp,432 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44193 + c0036d78: 0006049b sext.w s1,a2 + c0036d7c: 57fd li a5,-1 + c0036d7e: 02f48263 beq s1,a5,c0036da2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44274 +} + c0036d82: 741a ld s0,416(sp) + c0036d84: 70ba ld ra,424(sp) + c0036d86: 64fa ld s1,408(sp) + c0036d88: 695a ld s2,400(sp) + c0036d8a: 69ba ld s3,392(sp) + c0036d8c: 6a1a ld s4,384(sp) + c0036d8e: 7af6 ld s5,376(sp) + c0036d90: 7b56 ld s6,368(sp) + c0036d92: 7bb6 ld s7,360(sp) + c0036d94: 7c16 ld s8,352(sp) + c0036d96: 6cf6 ld s9,344(sp) + c0036d98: 6d56 ld s10,336(sp) + c0036d9a: 6db6 ld s11,328(sp) + c0036d9c: 615d addi sp,sp,432 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44201 return JS_ThrowTypeErrorNotAnObject(ctx); - c0036bce: dabdc06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44199 + c0036d9e: cc9dc06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44207 S = JS_ToString(ctx, argv[0]); - c0036bd2: 630c ld a1,0(a4) - c0036bd4: 8b32 mv s6,a2 - c0036bd6: 6710 ld a2,8(a4) - c0036bd8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44195 + c0036da2: 630c ld a1,0(a4) + c0036da4: 8b32 mv s6,a2 + c0036da6: 6710 ld a2,8(a4) + c0036da8: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44203 A = JS_UNDEFINED; - c0036bda: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44197 + c0036daa: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44205 result = JS_UNDEFINED; - c0036bdc: e102 sd zero,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44199 + c0036dac: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44207 S = JS_ToString(ctx, argv[0]); - c0036bde: bf9e30ef jal ra,c001a7d6 - c0036be2: f4ae sd a1,104(sp) - c0036be4: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44200 + c0036dae: bf9e30ef jal ra,c001a9a6 + c0036db2: f4ae sd a1,104(sp) + c0036db4: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44208 if (JS_IsException(S)) - c0036be6: 2581 sext.w a1,a1 - c0036be8: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44199 + c0036db6: 2581 sext.w a1,a1 + c0036db8: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44207 S = JS_ToString(ctx, argv[0]); - c0036bea: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44200 + c0036dba: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44208 if (JS_IsException(S)) - c0036bec: 23758963 beq a1,s7,c0036e1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44203 + c0036dbc: 23758963 beq a1,s7,c0036fee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44211 flags = JS_GetProperty(ctx, rx, JS_ATOM_flags); - c0036bf0: 67a6 ld a5,72(sp) - c0036bf2: 6706 ld a4,64(sp) + c0036dc0: 67a6 ld a5,72(sp) + c0036dc2: 6706 ld a4,64(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036bf4: 4801 li a6,0 - c0036bf6: 863e mv a2,a5 - c0036bf8: 06e00693 li a3,110 - c0036bfc: 85ba mv a1,a4 - c0036bfe: 8522 mv a0,s0 - c0036c00: fe3e sd a5,312(sp) - c0036c02: fa3a sd a4,304(sp) - c0036c04: c3fda0ef jal ra,c0011842 + c0036dc4: 4801 li a6,0 + c0036dc6: 863e mv a2,a5 + c0036dc8: 06e00693 li a3,110 + c0036dcc: 85ba mv a1,a4 + c0036dce: 8522 mv a0,s0 + c0036dd0: fe3e sd a5,312(sp) + c0036dd2: fa3a sd a4,304(sp) + c0036dd4: b5dda0ef jal ra,c0011930 js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44212 if (JS_IsException(flags)) - c0036c08: 0005879b sext.w a5,a1 + c0036dd8: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036c0c: 862e mv a2,a1 - c0036c0e: 89aa mv s3,a0 - c0036c10: 892e mv s2,a1 + c0036ddc: 862e mv a2,a1 + c0036dde: 89aa mv s3,a0 + c0036de0: 892e mv s2,a1 js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44204 - c0036c12: 21778b63 beq a5,s7,c0036e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44206 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44212 + c0036de2: 21778b63 beq a5,s7,c0036ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44214 flags = JS_ToStringFree(ctx, flags); - c0036c16: 85aa mv a1,a0 - c0036c18: 8522 mv a0,s0 - c0036c1a: bc7e30ef jal ra,c001a7e0 - c0036c1e: f8aa sd a0,112(sp) - c0036c20: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44207 + c0036de6: 85aa mv a1,a0 + c0036de8: 8522 mv a0,s0 + c0036dea: bc7e30ef jal ra,c001a9b0 + c0036dee: f8aa sd a0,112(sp) + c0036df0: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44215 if (JS_IsException(flags)) - c0036c22: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44206 + c0036df2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44214 flags = JS_ToStringFree(ctx, flags); - c0036c26: 89aa mv s3,a0 - c0036c28: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44207 + c0036df6: 89aa mv s3,a0 + c0036df8: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44215 if (JS_IsException(flags)) - c0036c2a: 1f778f63 beq a5,s7,c0036e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44212 + c0036dfa: 1f778f63 beq a5,s7,c0036ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44220 global = (-1 != string_indexof_char(p, 'g', 0)); - c0036c2e: 4601 li a2,0 - c0036c30: 06700593 li a1,103 - c0036c34: a57cd0ef jal ra,c000468a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44213 + c0036dfe: 4601 li a2,0 + c0036e00: 06700593 li a1,103 + c0036e04: 887cd0ef jal ra,c000468a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44221 if (!global) { - c0036c38: 04951f63 bne a0,s1,c0036c96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44214 + c0036e08: 04951f63 bne a0,s1,c0036e66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44222 A = JS_RegExpExec(ctx, rx, S); - c0036c3c: 7686 ld a3,96(sp) - c0036c3e: 7726 ld a4,104(sp) - c0036c40: 6586 ld a1,64(sp) - c0036c42: 6626 ld a2,72(sp) - c0036c44: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44197 + c0036e0c: 7686 ld a3,96(sp) + c0036e0e: 7726 ld a4,104(sp) + c0036e10: 6586 ld a1,64(sp) + c0036e12: 6626 ld a2,72(sp) + c0036e14: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44205 result = JS_UNDEFINED; - c0036c46: 4d0d li s10,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44214 + c0036e16: 4d0d li s10,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44222 A = JS_RegExpExec(ctx, rx, S); - c0036c48: b5bff0ef jal ra,c00367a2 - c0036c4c: e8aa sd a0,80(sp) - c0036c4e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44255 + c0036e18: b5bff0ef jal ra,c0036972 + c0036e1c: e8aa sd a0,80(sp) + c0036e1e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44263 JS_FreeValue(ctx, result); - c0036c50: 658a ld a1,128(sp) - c0036c52: 866a mv a2,s10 - c0036c54: 8522 mv a0,s0 - c0036c56: ee3d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44256 + c0036e20: 658a ld a1,128(sp) + c0036e22: 866a mv a2,s10 + c0036e24: 8522 mv a0,s0 + c0036e26: e01d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44264 JS_FreeValue(ctx, flags); - c0036c5a: 75c6 ld a1,112(sp) - c0036c5c: 7666 ld a2,120(sp) - c0036c5e: 8522 mv a0,s0 - c0036c60: ed9d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44257 + c0036e2a: 75c6 ld a1,112(sp) + c0036e2c: 7666 ld a2,120(sp) + c0036e2e: 8522 mv a0,s0 + c0036e30: df7d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44265 JS_FreeValue(ctx, S); - c0036c64: 7626 ld a2,104(sp) - c0036c66: 85d2 mv a1,s4 - c0036c68: 8522 mv a0,s0 - c0036c6a: ecfd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44258 - return A; - c0036c6e: 67c6 ld a5,80(sp) - c0036c70: f626 sd s1,296(sp) - c0036c72: f23e sd a5,288(sp) + c0036e34: 7626 ld a2,104(sp) + c0036e36: 85d2 mv a1,s4 + c0036e38: 8522 mv a0,s0 + c0036e3a: dedd00ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44266 -} - c0036c74: 70ba ld ra,424(sp) - c0036c76: 741a ld s0,416(sp) - c0036c78: 7512 ld a0,288(sp) - c0036c7a: 75b2 ld a1,296(sp) - c0036c7c: 64fa ld s1,408(sp) - c0036c7e: 695a ld s2,400(sp) - c0036c80: 69ba ld s3,392(sp) - c0036c82: 6a1a ld s4,384(sp) - c0036c84: 7af6 ld s5,376(sp) - c0036c86: 7b56 ld s6,368(sp) - c0036c88: 7bb6 ld s7,360(sp) - c0036c8a: 7c16 ld s8,352(sp) - c0036c8c: 6cf6 ld s9,344(sp) - c0036c8e: 6d56 ld s10,336(sp) - c0036c90: 6db6 ld s11,328(sp) - c0036c92: 615d addi sp,sp,432 - c0036c94: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44216 + return A; + c0036e3e: 67c6 ld a5,80(sp) + c0036e40: f626 sd s1,296(sp) + c0036e42: f23e sd a5,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44274 +} + c0036e44: 70ba ld ra,424(sp) + c0036e46: 741a ld s0,416(sp) + c0036e48: 7512 ld a0,288(sp) + c0036e4a: 75b2 ld a1,296(sp) + c0036e4c: 64fa ld s1,408(sp) + c0036e4e: 695a ld s2,400(sp) + c0036e50: 69ba ld s3,392(sp) + c0036e52: 6a1a ld s4,384(sp) + c0036e54: 7af6 ld s5,376(sp) + c0036e56: 7b56 ld s6,368(sp) + c0036e58: 7bb6 ld s7,360(sp) + c0036e5a: 7c16 ld s8,352(sp) + c0036e5c: 6cf6 ld s9,344(sp) + c0036e5e: 6d56 ld s10,336(sp) + c0036e60: 6db6 ld s11,328(sp) + c0036e62: 615d addi sp,sp,432 + c0036e64: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44224 fullUnicode = JS_ToBoolFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_unicode)); - c0036c96: 6706 ld a4,64(sp) - c0036c98: 67a6 ld a5,72(sp) + c0036e66: 6706 ld a4,64(sp) + c0036e68: 67a6 ld a5,72(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0036c9a: 4801 li a6,0 - c0036c9c: 07000693 li a3,112 - c0036ca0: 863e mv a2,a5 - c0036ca2: 85ba mv a1,a4 - c0036ca4: 8522 mv a0,s0 - c0036ca6: fa3a sd a4,304(sp) - c0036ca8: fe3e sd a5,312(sp) - c0036caa: b99da0ef jal ra,c0011842 - c0036cae: 862e mv a2,a1 + c0036e6a: 4801 li a6,0 + c0036e6c: 07000693 li a3,112 + c0036e70: 863e mv a2,a5 + c0036e72: 85ba mv a1,a4 + c0036e74: 8522 mv a0,s0 + c0036e76: fa3a sd a4,304(sp) + c0036e78: fe3e sd a5,312(sp) + c0036e7a: ab7da0ef jal ra,c0011930 + c0036e7e: 862e mv a2,a1 js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44216 - c0036cb0: 85aa mv a1,a0 - c0036cb2: 8522 mv a0,s0 - c0036cb4: 9b0d10ef jal ra,c0007e64 - c0036cb8: 8c2a mv s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44217 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44224 + c0036e80: 85aa mv a1,a0 + c0036e82: 8522 mv a0,s0 + c0036e84: 8ced10ef jal ra,c0007f52 + c0036e88: 8c2a mv s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44225 if (fullUnicode < 0) - c0036cba: 16054763 bltz a0,c0036e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44220 + c0036e8a: 16054763 bltz a0,c0036ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44228 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0)) < 0) - c0036cbe: 6586 ld a1,64(sp) - c0036cc0: 6626 ld a2,72(sp) - c0036cc2: 4701 li a4,0 - c0036cc4: 4781 li a5,0 - c0036cc6: 05600693 li a3,86 - c0036cca: 8522 mv a0,s0 - c0036ccc: c2cf90ef jal ra,c00300f8 - c0036cd0: 14054c63 bltz a0,c0036e28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44222 + c0036e8e: 6586 ld a1,64(sp) + c0036e90: 6626 ld a2,72(sp) + c0036e92: 4701 li a4,0 + c0036e94: 4781 li a5,0 + c0036e96: 05600693 li a3,86 + c0036e9a: 8522 mv a0,s0 + c0036e9c: c2cf90ef jal ra,c00302c8 + c0036ea0: 14054c63 bltz a0,c0036ff8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44230 A = JS_NewArray(ctx); - c0036cd4: 8522 mv a0,s0 - c0036cd6: ae8e00ef jal ra,c0016fbe - c0036cda: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44223 + c0036ea4: 8522 mv a0,s0 + c0036ea6: ae8e00ef jal ra,c001718e + c0036eaa: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44231 if (JS_IsException(A)) - c0036cdc: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44222 + c0036eac: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44230 A = JS_NewArray(ctx); - c0036ce0: 8aae mv s5,a1 - c0036ce2: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44197 + c0036eb0: 8aae mv s5,a1 + c0036eb2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44205 result = JS_UNDEFINED; - c0036ce4: 4d0d li s10,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44223 + c0036eb4: 4d0d li s10,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44231 if (JS_IsException(A)) - c0036ce6: 0f778063 beq a5,s7,c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44225 + c0036eb6: 0f778063 beq a5,s7,c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44233 n = 0; - c0036cea: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44229 + c0036eba: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44237 if (JS_IsException(result)) - c0036cec: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44231 + c0036ebc: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44239 if (JS_IsNull(result)) - c0036cee: 4d89 li s11,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44227 + c0036ebe: 4d89 li s11,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44235 JS_FreeValue(ctx, result); - c0036cf0: 658a ld a1,128(sp) - c0036cf2: 866a mv a2,s10 - c0036cf4: 8522 mv a0,s0 - c0036cf6: e43d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44228 + c0036ec0: 658a ld a1,128(sp) + c0036ec2: 866a mv a2,s10 + c0036ec4: 8522 mv a0,s0 + c0036ec6: d61d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44236 result = JS_RegExpExec(ctx, rx, S); - c0036cfa: 7726 ld a4,104(sp) - c0036cfc: 6586 ld a1,64(sp) - c0036cfe: 86d2 mv a3,s4 - c0036d00: 865a mv a2,s6 - c0036d02: 8522 mv a0,s0 - c0036d04: e4da sd s6,72(sp) - c0036d06: a9dff0ef jal ra,c00367a2 - c0036d0a: e12a sd a0,128(sp) + c0036eca: 7726 ld a4,104(sp) + c0036ecc: 6586 ld a1,64(sp) + c0036ece: 86d2 mv a3,s4 + c0036ed0: 865a mv a2,s6 + c0036ed2: 8522 mv a0,s0 + c0036ed4: e4da sd s6,72(sp) + c0036ed6: a9dff0ef jal ra,c0036972 + c0036eda: e12a sd a0,128(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0036d0c: 0005879b sext.w a5,a1 + c0036edc: 0005879b sext.w a5,a1 js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44228 - c0036d10: 8d2e mv s10,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44229 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44236 + c0036ee0: 8d2e mv s10,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44237 if (JS_IsException(result)) - c0036d12: 0b978a63 beq a5,s9,c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44231 + c0036ee2: 0b978a63 beq a5,s9,c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44239 if (JS_IsNull(result)) - c0036d16: 0fb78a63 beq a5,s11,c0036e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44233 + c0036ee6: 0fb78a63 beq a5,s11,c0036fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44241 matchStr = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, result, 0)); - c0036d1a: 4681 li a3,0 - c0036d1c: 85aa mv a1,a0 - c0036d1e: 866a mv a2,s10 - c0036d20: 8522 mv a0,s0 - c0036d22: 9acfb0ef jal ra,c0031ece - c0036d26: 862e mv a2,a1 - c0036d28: 85aa mv a1,a0 - c0036d2a: 8522 mv a0,s0 - c0036d2c: ab5e30ef jal ra,c001a7e0 - c0036d30: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44234 + c0036eea: 4681 li a3,0 + c0036eec: 85aa mv a1,a0 + c0036eee: 866a mv a2,s10 + c0036ef0: 8522 mv a0,s0 + c0036ef2: 9acfb0ef jal ra,c003209e + c0036ef6: 862e mv a2,a1 + c0036ef8: 85aa mv a1,a0 + c0036efa: 8522 mv a0,s0 + c0036efc: ab5e30ef jal ra,c001a9b0 + c0036f00: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44242 if (JS_IsException(matchStr)) - c0036d32: 0005869b sext.w a3,a1 - c0036d36: e82e sd a1,16(sp) - c0036d38: 09968763 beq a3,s9,c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44236 + c0036f02: 0005869b sext.w a3,a1 + c0036f06: e82e sd a1,16(sp) + c0036f08: 09968763 beq a3,s9,c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44244 isEmpty = JS_IsEmptyString(matchStr); - c0036d3c: c0ccd0ef jal ra,c0004148 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44237 + c0036f0c: a3ccd0ef jal ra,c0004148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44245 if (JS_SetPropertyInt64(ctx, A, n++, matchStr) < 0) - c0036d40: 001b879b addiw a5,s7,1 - c0036d44: e03e sd a5,0(sp) - c0036d46: 6762 ld a4,24(sp) - c0036d48: 67c2 ld a5,16(sp) - c0036d4a: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44236 + c0036f10: 001b879b addiw a5,s7,1 + c0036f14: e03e sd a5,0(sp) + c0036f16: 6762 ld a4,24(sp) + c0036f18: 67c2 ld a5,16(sp) + c0036f1a: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44244 isEmpty = JS_IsEmptyString(matchStr); - c0036d4c: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44237 + c0036f1c: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44245 if (JS_SetPropertyInt64(ctx, A, n++, matchStr) < 0) - c0036d4e: 86de mv a3,s7 - c0036d50: 8656 mv a2,s5 - c0036d52: 8522 mv a0,s0 - c0036d54: e0cf90ef jal ra,c0030360 - c0036d58: 06054763 bltz a0,c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44239 + c0036f1e: 86de mv a3,s7 + c0036f20: 8656 mv a2,s5 + c0036f22: 8522 mv a0,s0 + c0036f24: e0cf90ef jal ra,c0030530 + c0036f28: 06054763 bltz a0,c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44247 if (isEmpty) { - c0036d5c: 6822 ld a6,8(sp) - c0036d5e: 08080c63 beqz a6,c0036df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44241 + c0036f2c: 6822 ld a6,8(sp) + c0036f2e: 08080c63 beqz a6,c0036fc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44249 if (JS_ToLengthFree(ctx, &thisIndex, - c0036d62: 6706 ld a4,64(sp) - c0036d64: 67a6 ld a5,72(sp) + c0036f32: 6706 ld a4,64(sp) + c0036f34: 67a6 ld a5,72(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0036d66: 05600693 li a3,86 - c0036d6a: 4801 li a6,0 - c0036d6c: 863e mv a2,a5 - c0036d6e: 85ba mv a1,a4 - c0036d70: 8522 mv a0,s0 - c0036d72: f23a sd a4,288(sp) - c0036d74: f63e sd a5,296(sp) - c0036d76: acdda0ef jal ra,c0011842 - c0036d7a: 862a mv a2,a0 - c0036d7c: 86ae mv a3,a1 + c0036f36: 05600693 li a3,86 + c0036f3a: 4801 li a6,0 + c0036f3c: 863e mv a2,a5 + c0036f3e: 85ba mv a1,a4 + c0036f40: 8522 mv a0,s0 + c0036f42: f23a sd a4,288(sp) + c0036f44: f63e sd a5,296(sp) + c0036f46: 9ebda0ef jal ra,c0011930 + c0036f4a: 862a mv a2,a0 + c0036f4c: 86ae mv a3,a1 js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44241 - c0036d7e: 8522 mv a0,s0 - c0036d80: 182c addi a1,sp,56 - c0036d82: a8be70ef jal ra,c001e80c - c0036d86: 04054063 bltz a0,c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44245 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44249 + c0036f4e: 8522 mv a0,s0 + c0036f50: 182c addi a1,sp,56 + c0036f52: a8be70ef jal ra,c001e9dc + c0036f56: 04054063 bltz a0,c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44253 nextIndex = string_advance_index(p, thisIndex, fullUnicode); - c0036d8a: 75e2 ld a1,56(sp) - c0036d8c: 8662 mv a2,s8 - c0036d8e: 8552 mv a0,s4 - c0036d90: badce0ef jal ra,c000593c + c0036f5a: 75e2 ld a1,56(sp) + c0036f5c: 8662 mv a2,s8 + c0036f5e: 8552 mv a0,s4 + c0036f60: acbce0ef jal ra,c0005a2a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0036d94: 0005071b sext.w a4,a0 - c0036d98: 06a71163 bne a4,a0,c0036dfa + c0036f64: 0005071b sext.w a4,a0 + c0036f68: 06a71163 bne a4,a0,c0036fca JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0036d9c: 12012a23 sw zero,308(sp) - c0036da0: 12e12823 sw a4,304(sp) - c0036da4: 77d2 ld a5,304(sp) - c0036da6: fe02 sd zero,312(sp) - c0036da8: f602 sd zero,296(sp) - c0036daa: f23e sd a5,288(sp) - c0036dac: 4781 li a5,0 + c0036f6c: 12012a23 sw zero,308(sp) + c0036f70: 12e12823 sw a4,304(sp) + c0036f74: 77d2 ld a5,304(sp) + c0036f76: fe02 sd zero,312(sp) + c0036f78: f602 sd zero,296(sp) + c0036f7a: f23e sd a5,288(sp) + c0036f7c: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0036dae: 12e12023 sw a4,288(sp) + c0036f7e: 12e12023 sw a4,288(sp) js_regexp_Symbol_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44254 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, JS_NewInt64(ctx, nextIndex)) < 0) - c0036db2: 7712 ld a4,288(sp) - c0036db4: 6586 ld a1,64(sp) - c0036db6: 6626 ld a2,72(sp) - c0036db8: 05600693 li a3,86 - c0036dbc: 8522 mv a0,s0 - c0036dbe: b3af90ef jal ra,c00300f8 - c0036dc2: 02055a63 bgez a0,c0036df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44261 + c0036f82: 7712 ld a4,288(sp) + c0036f84: 6586 ld a1,64(sp) + c0036f86: 6626 ld a2,72(sp) + c0036f88: 05600693 li a3,86 + c0036f8c: 8522 mv a0,s0 + c0036f8e: b3af90ef jal ra,c00302c8 + c0036f92: 02055a63 bgez a0,c0036fc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44269 JS_FreeValue(ctx, A); - c0036dc6: 65c6 ld a1,80(sp) - c0036dc8: 8626 mv a2,s1 - c0036dca: 8522 mv a0,s0 - c0036dcc: d6dd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44262 + c0036f96: 65c6 ld a1,80(sp) + c0036f98: 8626 mv a2,s1 + c0036f9a: 8522 mv a0,s0 + c0036f9c: c8bd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44270 JS_FreeValue(ctx, result); - c0036dd0: 658a ld a1,128(sp) - c0036dd2: 866a mv a2,s10 - c0036dd4: 8522 mv a0,s0 - c0036dd6: d63d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44263 + c0036fa0: 658a ld a1,128(sp) + c0036fa2: 866a mv a2,s10 + c0036fa4: 8522 mv a0,s0 + c0036fa6: c81d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44271 JS_FreeValue(ctx, flags); - c0036dda: 85ce mv a1,s3 - c0036ddc: 864a mv a2,s2 - c0036dde: 8522 mv a0,s0 - c0036de0: d59d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44264 + c0036faa: 85ce mv a1,s3 + c0036fac: 864a mv a2,s2 + c0036fae: 8522 mv a0,s0 + c0036fb0: c77d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44272 JS_FreeValue(ctx, S); - c0036de4: 7626 ld a2,104(sp) - c0036de6: 85d2 mv a1,s4 - c0036de8: 8522 mv a0,s0 - c0036dea: d4fd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44265 + c0036fb4: 7626 ld a2,104(sp) + c0036fb6: 85d2 mv a1,s4 + c0036fb8: 8522 mv a0,s0 + c0036fba: c6dd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44273 return JS_EXCEPTION; - c0036dee: 4799 li a5,6 - c0036df0: f202 sd zero,288(sp) - c0036df2: f63e sd a5,296(sp) - c0036df4: b541 j c0036c74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44185 + c0036fbe: 4799 li a5,6 + c0036fc0: f202 sd zero,288(sp) + c0036fc2: f63e sd a5,296(sp) + c0036fc4: b541 j c0036e44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44193 { - c0036df6: 6b82 ld s7,0(sp) - c0036df8: bde5 j c0036cf0 + c0036fc6: 6b82 ld s7,0(sp) + c0036fc8: bde5 j c0036ec0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0036dfa: d22577d3 fcvt.d.l fa5,a0 - c0036dfe: 479d li a5,7 - c0036e00: e2078753 fmv.x.d a4,fa5 + c0036fca: d22577d3 fcvt.d.l fa5,a0 + c0036fce: 479d li a5,7 + c0036fd0: e2078753 fmv.x.d a4,fa5 js_regexp_Symbol_match(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0036e04: b23e fsd fa5,288(sp) - c0036e06: 2701 sext.w a4,a4 - c0036e08: b75d j c0036dae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44250 + c0036fd4: b23e fsd fa5,288(sp) + c0036fd6: 2701 sext.w a4,a4 + c0036fd8: b75d j c0036f7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44258 if (n == 0) { - c0036e0a: e40b93e3 bnez s7,c0036c50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44251 + c0036fda: e40b93e3 bnez s7,c0036e20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44259 JS_FreeValue(ctx, A); - c0036e0e: 65c6 ld a1,80(sp) - c0036e10: 8656 mv a2,s5 - c0036e12: 8522 mv a0,s0 - c0036e14: d25d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44252 + c0036fde: 65c6 ld a1,80(sp) + c0036fe0: 8656 mv a2,s5 + c0036fe2: 8522 mv a0,s0 + c0036fe4: c43d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44260 A = JS_NULL; - c0036e18: 4489 li s1,2 - c0036e1a: e882 sd zero,80(sp) - c0036e1c: bd15 j c0036c50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44197 + c0036fe8: 4489 li s1,2 + c0036fea: e882 sd zero,80(sp) + c0036fec: bd15 j c0036e20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44205 result = JS_UNDEFINED; - c0036e1e: 4d0d li s10,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44196 + c0036fee: 4d0d li s10,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44204 flags = JS_UNDEFINED; - c0036e20: 490d li s2,3 - c0036e22: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44195 + c0036ff0: 490d li s2,3 + c0036ff2: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44203 A = JS_UNDEFINED; - c0036e24: 448d li s1,3 - c0036e26: b745 j c0036dc6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44197 + c0036ff4: 448d li s1,3 + c0036ff6: b745 j c0036f96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44205 result = JS_UNDEFINED; - c0036e28: 4d0d li s10,3 - c0036e2a: bfed j c0036e24 + c0036ff8: 4d0d li s10,3 + c0036ffa: bfed j c0036ff4 -00000000c0036e2c : +00000000c0036ffc : js_regexp_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44179 { - c0036e2c: 711d addi sp,sp,-96 - c0036e2e: e8a2 sd s0,80(sp) - c0036e30: e4a6 sd s1,72(sp) - c0036e32: ec86 sd ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44175 + c0036ffc: 711d addi sp,sp,-96 + c0036ffe: e8a2 sd s0,80(sp) + c0037000: e4a6 sd s1,72(sp) + c0037002: ec86 sd ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44183 val = JS_RegExpExec(ctx, this_val, argv[0]); - c0036e34: 6314 ld a3,0(a4) - c0036e36: 6718 ld a4,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44171 + c0037004: 6314 ld a3,0(a4) + c0037006: 6718 ld a4,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44179 { - c0036e38: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44175 + c0037008: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44183 val = JS_RegExpExec(ctx, this_val, argv[0]); - c0036e3a: 969ff0ef jal ra,c00367a2 + c003700a: 969ff0ef jal ra,c0036972 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0036e3e: 0005841b sext.w s0,a1 + c003700e: 0005841b sext.w s0,a1 js_regexp_test(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44184 if (JS_IsException(val)) - c0036e42: 4799 li a5,6 - c0036e44: 00f41b63 bne s0,a5,c0036e5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44177 + c0037012: 4799 li a5,6 + c0037014: 00f41b63 bne s0,a5,c003702a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44185 return JS_EXCEPTION; - c0036e48: f002 sd zero,32(sp) - c0036e4a: f422 sd s0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44181 (discriminator 1) -} - c0036e4c: 60e6 ld ra,88(sp) - c0036e4e: 6446 ld s0,80(sp) - c0036e50: 7502 ld a0,32(sp) - c0036e52: 75a2 ld a1,40(sp) - c0036e54: 64a6 ld s1,72(sp) - c0036e56: 6125 addi sp,sp,96 - c0036e58: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44178 + c0037018: f002 sd zero,32(sp) + c003701a: f422 sd s0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44189 (discriminator 1) +} + c003701c: 60e6 ld ra,88(sp) + c003701e: 6446 ld s0,80(sp) + c0037020: 7502 ld a0,32(sp) + c0037022: 75a2 ld a1,40(sp) + c0037024: 64a6 ld s1,72(sp) + c0037026: 6125 addi sp,sp,96 + c0037028: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44186 ret = !JS_IsNull(val); - c0036e5a: 1479 addi s0,s0,-2 - c0036e5c: 862e mv a2,a1 - c0036e5e: 00803433 snez s0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44179 + c003702a: 1479 addi s0,s0,-2 + c003702c: 862e mv a2,a1 + c003702e: 00803433 snez s0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44187 JS_FreeValue(ctx, val); - c0036e62: 85aa mv a1,a0 - c0036e64: 8526 mv a0,s1 - c0036e66: cd3d00ef jal ra,c0007b38 + c0037032: 85aa mv a1,a0 + c0037034: 8526 mv a0,s1 + c0037036: bf1d00ef jal ra,c0007c26 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0036e6a: da02 sw zero,52(sp) - c0036e6c: d822 sw s0,48(sp) - c0036e6e: 77c2 ld a5,48(sp) - c0036e70: f03e sd a5,32(sp) - c0036e72: 4785 li a5,1 - c0036e74: f43e sd a5,40(sp) - c0036e76: bfd9 j c0036e4c - -00000000c0036e78 : + c003703a: da02 sw zero,52(sp) + c003703c: d822 sw s0,48(sp) + c003703e: 77c2 ld a5,48(sp) + c0037040: f03e sd a5,32(sp) + c0037042: 4785 li a5,1 + c0037044: f43e sd a5,40(sp) + c0037046: bfd9 j c003701c + +00000000c0037048 : js_proxy_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46088 -{ - c0036e78: 7169 addi sp,sp,-304 - c0036e7a: 8332 mv t1,a2 - c0036e7c: e64e sd s3,264(sp) - c0036e7e: f82e sd a1,48(sp) - c0036e80: fc32 sd a2,56(sp) - c0036e82: 89b6 mv s3,a3 - c0036e84: f03a sd a4,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46094 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46096 +{ + c0037048: 7169 addi sp,sp,-304 + c003704a: 8332 mv t1,a2 + c003704c: e64e sd s3,264(sp) + c003704e: f82e sd a1,48(sp) + c0037050: fc32 sd a2,56(sp) + c0037052: 89b6 mv s3,a3 + c0037054: f03a sd a4,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46102 s = get_proxy_method(ctx, &method, obj, JS_ATOM_set); - c0036e86: 862e mv a2,a1 - c0036e88: 04300713 li a4,67 - c0036e8c: 869a mv a3,t1 - c0036e8e: 00ac addi a1,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46088 -{ - c0036e90: ee26 sd s1,280(sp) - c0036e92: fdd6 sd s5,248(sp) - c0036e94: f606 sd ra,296(sp) - c0036e96: f222 sd s0,288(sp) - c0036e98: ea4a sd s2,272(sp) - c0036e9a: e252 sd s4,256(sp) - c0036e9c: 13012a83 lw s5,304(sp) - c0036ea0: 84aa mv s1,a0 - c0036ea2: f43e sd a5,40(sp) - c0036ea4: e842 sd a6,16(sp) - c0036ea6: ec46 sd a7,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46094 + c0037056: 862e mv a2,a1 + c0037058: 04300713 li a4,67 + c003705c: 869a mv a3,t1 + c003705e: 00ac addi a1,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46096 +{ + c0037060: ee26 sd s1,280(sp) + c0037062: fdd6 sd s5,248(sp) + c0037064: f606 sd ra,296(sp) + c0037066: f222 sd s0,288(sp) + c0037068: ea4a sd s2,272(sp) + c003706a: e252 sd s4,256(sp) + c003706c: 13012a83 lw s5,304(sp) + c0037070: 84aa mv s1,a0 + c0037072: f43e sd a5,40(sp) + c0037074: e842 sd a6,16(sp) + c0037076: ec46 sd a7,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46102 s = get_proxy_method(ctx, &method, obj, JS_ATOM_set); - c0036ea8: cc2dd0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46095 + c0037078: be0dd0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46103 if (!s) - c0036eac: e119 bnez a0,c0036eb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46138 + c003707c: e119 bnez a0,c0037082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46146 return -1; - c0036eae: 547d li s0,-1 - c0036eb0: a815 j c0036ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46097 + c003707e: 547d li s0,-1 + c0037080: a815 j c00370b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46105 if (JS_IsUndefined(method)) { - c0036eb2: 47c6 lw a5,80(sp) - c0036eb4: 4a0d li s4,3 - c0036eb6: 892a mv s2,a0 - c0036eb8: 05479063 bne a5,s4,c0036ef8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46098 + c0037082: 47c6 lw a5,80(sp) + c0037084: 4a0d li s4,3 + c0037086: 892a mv s2,a0 + c0037088: 05479063 bne a5,s4,c00370c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46106 return JS_SetPropertyInternal(ctx, s->target, atom, - c0036ebc: 7502 ld a0,32(sp) - c0036ebe: 75a2 ld a1,40(sp) - c0036ec0: faecf0ef jal ra,c000666e - c0036ec4: f92a sd a0,176(sp) - c0036ec6: fd2e sd a1,184(sp) - c0036ec8: e056 sd s5,0(sp) - c0036eca: 87ae mv a5,a1 - c0036ecc: 6842 ld a6,16(sp) - c0036ece: 68e2 ld a7,24(sp) - c0036ed0: 00093583 ld a1,0(s2) - c0036ed4: 00893603 ld a2,8(s2) - c0036ed8: 872a mv a4,a0 - c0036eda: 86ce mv a3,s3 - c0036edc: 8526 mv a0,s1 - c0036ede: a00db0ef jal ra,c00120de - c0036ee2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46142 -} - c0036ee4: 70b2 ld ra,296(sp) - c0036ee6: 8522 mv a0,s0 - c0036ee8: 7412 ld s0,288(sp) - c0036eea: 64f2 ld s1,280(sp) - c0036eec: 6952 ld s2,272(sp) - c0036eee: 69b2 ld s3,264(sp) - c0036ef0: 6a12 ld s4,256(sp) - c0036ef2: 7aee ld s5,248(sp) - c0036ef4: 6155 addi sp,sp,304 - c0036ef6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46102 + c003708c: 7502 ld a0,32(sp) + c003708e: 75a2 ld a1,40(sp) + c0037090: ecccf0ef jal ra,c000675c + c0037094: f92a sd a0,176(sp) + c0037096: fd2e sd a1,184(sp) + c0037098: e056 sd s5,0(sp) + c003709a: 87ae mv a5,a1 + c003709c: 6842 ld a6,16(sp) + c003709e: 68e2 ld a7,24(sp) + c00370a0: 00093583 ld a1,0(s2) + c00370a4: 00893603 ld a2,8(s2) + c00370a8: 872a mv a4,a0 + c00370aa: 86ce mv a3,s3 + c00370ac: 8526 mv a0,s1 + c00370ae: 91edb0ef jal ra,c00121cc + c00370b2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46150 +} + c00370b4: 70b2 ld ra,296(sp) + c00370b6: 8522 mv a0,s0 + c00370b8: 7412 ld s0,288(sp) + c00370ba: 64f2 ld s1,280(sp) + c00370bc: 6952 ld s2,272(sp) + c00370be: 69b2 ld s3,264(sp) + c00370c0: 6a12 ld s4,256(sp) + c00370c2: 7aee ld s5,248(sp) + c00370c4: 6155 addi sp,sp,304 + c00370c6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46110 atom_val = JS_AtomToValue(ctx, atom); - c0036ef8: 85ce mv a1,s3 - c0036efa: 8526 mv a0,s1 - c0036efc: c37e20ef jal ra,c0019b32 - c0036f00: f4aa sd a0,104(sp) - c0036f02: f8ae sd a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46103 + c00370c8: 85ce mv a1,s3 + c00370ca: 8526 mv a0,s1 + c00370cc: c37e20ef jal ra,c0019d02 + c00370d0: f4aa sd a0,104(sp) + c00370d2: f8ae sd a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 if (JS_IsException(atom_val)) { - c0036f04: 0005879b sext.w a5,a1 - c0036f08: 4419 li s0,6 - c0036f0a: 00879863 bne a5,s0,c0036f1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46104 + c00370d4: 0005879b sext.w a5,a1 + c00370d8: 4419 li s0,6 + c00370da: 00879863 bne a5,s0,c00370ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46112 JS_FreeValue(ctx, method); - c0036f0e: 65a6 ld a1,72(sp) - c0036f10: 6646 ld a2,80(sp) - c0036f12: 8526 mv a0,s1 - c0036f14: c25d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46105 + c00370de: 65a6 ld a1,72(sp) + c00370e0: 6646 ld a2,80(sp) + c00370e2: 8526 mv a0,s1 + c00370e4: b43d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46113 return -1; - c0036f18: bf59 j c0036eae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46107 + c00370e8: bf59 j c003707e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46115 args[0] = s->target; - c0036f1a: 00093783 ld a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 + c00370ea: 00093783 ld a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 ret1 = JS_CallFree(ctx, method, s->handler, 4, args); - c0036f1e: 6646 ld a2,80(sp) - c0036f20: 0b010813 addi a6,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46107 + c00370ee: 6646 ld a2,80(sp) + c00370f0: 0b010813 addi a6,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46115 args[0] = s->target; - c0036f24: f93e sd a5,176(sp) - c0036f26: 00893783 ld a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46108 + c00370f4: f93e sd a5,176(sp) + c00370f6: 00893783 ld a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46116 args[1] = atom_val; - c0036f2a: e1aa sd a0,192(sp) - c0036f2c: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46107 + c00370fa: e1aa sd a0,192(sp) + c00370fc: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46115 args[0] = s->target; - c0036f2e: fd3e sd a5,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46109 + c00370fe: fd3e sd a5,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46117 args[2] = value; - c0036f30: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 + c0037100: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 ret1 = JS_CallFree(ctx, method, s->handler, 4, args); - c0036f32: 65a6 ld a1,72(sp) - c0036f34: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46109 + c0037102: 65a6 ld a1,72(sp) + c0037104: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46117 args[2] = value; - c0036f36: e9be sd a5,208(sp) - c0036f38: 77a2 ld a5,40(sp) - c0036f3a: edbe sd a5,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46110 + c0037106: e9be sd a5,208(sp) + c0037108: 77a2 ld a5,40(sp) + c003710a: edbe sd a5,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46118 args[3] = receiver; - c0036f3c: 67c2 ld a5,16(sp) - c0036f3e: f1be sd a5,224(sp) - c0036f40: 67e2 ld a5,24(sp) - c0036f42: f5be sd a5,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 + c003710c: 67c2 ld a5,16(sp) + c003710e: f1be sd a5,224(sp) + c0037110: 67e2 ld a5,24(sp) + c0037112: f5be sd a5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 ret1 = JS_CallFree(ctx, method, s->handler, 4, args); - c0036f44: 01093683 ld a3,16(s2) - c0036f48: 01893703 ld a4,24(s2) - c0036f4c: 4791 li a5,4 - c0036f4e: 8bfda0ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46112 + c0037114: 01093683 ld a3,16(s2) + c0037118: 01893703 ld a4,24(s2) + c003711c: 4791 li a5,4 + c003711e: fdcda0ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46120 JS_FreeValue(ctx, atom_val); - c0036f52: 7646 ld a2,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 + c0037122: 7646 ld a2,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 ret1 = JS_CallFree(ctx, method, s->handler, 4, args); - c0036f54: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46112 + c0037124: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46120 JS_FreeValue(ctx, atom_val); - c0036f56: 75a6 ld a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46111 + c0037126: 75a6 ld a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 ret1 = JS_CallFree(ctx, method, s->handler, 4, args); - c0036f58: ecaa sd a0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46112 + c0037128: ecaa sd a0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46120 JS_FreeValue(ctx, atom_val); - c0036f5a: 8526 mv a0,s1 - c0036f5c: bddd00ef jal ra,c0007b38 + c003712a: 8526 mv a0,s1 + c003712c: afbd00ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0036f60: 7606 ld a2,96(sp) + c0037130: 7606 ld a2,96(sp) js_proxy_set(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46113 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46121 if (JS_IsException(ret1)) - c0036f62: 0006079b sext.w a5,a2 - c0036f66: f48784e3 beq a5,s0,c0036eae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46115 + c0037132: 0006079b sext.w a5,a2 + c0037136: f48784e3 beq a5,s0,c003707e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46123 ret = JS_ToBoolFree(ctx, ret1); - c0036f6a: 65e6 ld a1,88(sp) - c0036f6c: 8526 mv a0,s1 - c0036f6e: ef7d00ef jal ra,c0007e64 - c0036f72: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46116 + c003713a: 65e6 ld a1,88(sp) + c003713c: 8526 mv a0,s1 + c003713e: e15d00ef jal ra,c0007f52 + c0037142: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46124 if (ret) { - c0036f74: cd39 beqz a0,c0036fd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46118 + c0037144: cd39 beqz a0,c00371a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46126 res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), atom); - c0036f76: 00093603 ld a2,0(s2) - c0036f7a: 86ce mv a3,s3 - c0036f7c: 18ac addi a1,sp,120 - c0036f7e: 8526 mv a0,s1 - c0036f80: f85da0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46119 + c0037146: 00093603 ld a2,0(s2) + c003714a: 86ce mv a3,s3 + c003714c: 18ac addi a1,sp,120 + c003714e: 8526 mv a0,s1 + c0037150: ea3da0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46127 if (res < 0) - c0036f84: f20545e3 bltz a0,c0036eae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46121 + c0037154: f20545e3 bltz a0,c003707e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46129 if (res) { - c0036f88: dd31 beqz a0,c0036ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46122 + c0037158: dd31 beqz a0,c00370b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46130 if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0) { - c0036f8a: 57e6 lw a5,120(sp) - c0036f8c: 0137f713 andi a4,a5,19 - c0036f90: e70d bnez a4,c0036fba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46123 + c003715a: 57e6 lw a5,120(sp) + c003715c: 0137f713 andi a4,a5,19 + c0037160: e70d bnez a4,c003718a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46131 if (!js_same_value(ctx, desc.value, value)) { - c0036f92: 7682 ld a3,32(sp) - c0036f94: 7722 ld a4,40(sp) - c0036f96: 658a ld a1,128(sp) - c0036f98: 662a ld a2,136(sp) - c0036f9a: 8526 mv a0,s1 - c0036f9c: d27d00ef jal ra,c0007cc2 - c0036fa0: e505 bnez a0,c0036fc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46128 + c0037162: 7682 ld a3,32(sp) + c0037164: 7722 ld a4,40(sp) + c0037166: 658a ld a1,128(sp) + c0037168: 662a ld a2,136(sp) + c003716a: 8526 mv a0,s1 + c003716c: c45d00ef jal ra,c0007db0 + c0037170: e505 bnez a0,c0037198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46136 js_free_desc(ctx, &desc); - c0036fa2: 18ac addi a1,sp,120 - c0036fa4: 8526 mv a0,s1 - c0036fa6: e8fd00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46129 - JS_ThrowTypeError(ctx, "proxy: inconsistent set"); - c0036faa: 00029597 auipc a1,0x29 - c0036fae: 7a658593 addi a1,a1,1958 # c0060750 + c0037172: 18ac addi a1,sp,120 + c0037174: 8526 mv a0,s1 + c0037176: dadd00ef jal ra,c0007f22 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46137 + JS_ThrowTypeError(ctx, "proxy: inconsistent set"); + c003717a: 0002a597 auipc a1,0x2a + c003717e: 83658593 addi a1,a1,-1994 # c00609b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46145 JS_ThrowTypeError(ctx, "proxy: cannot set property"); - c0036fb2: 8526 mv a0,s1 - c0036fb4: c42dc0ef jal ra,c00133f6 - c0036fb8: bddd j c0036eae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46126 + c0037182: 8526 mv a0,s1 + c0037184: b60dc0ef jal ra,c00134e4 + c0037188: bddd j c003707e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46134 } else if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE)) == JS_PROP_GETSET && JS_IsUndefined(desc.setter)) { - c0036fba: 8bc5 andi a5,a5,17 - c0036fbc: 4741 li a4,16 - c0036fbe: 00e79563 bne a5,a4,c0036fc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46126 (discriminator 1) - c0036fc2: 57aa lw a5,168(sp) - c0036fc4: fd478fe3 beq a5,s4,c0036fa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46132 + c003718a: 8bc5 andi a5,a5,17 + c003718c: 4741 li a4,16 + c003718e: 00e79563 bne a5,a4,c0037198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46134 (discriminator 1) + c0037192: 57aa lw a5,168(sp) + c0037194: fd478fe3 beq a5,s4,c0037172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46140 js_free_desc(ctx, &desc); - c0036fc8: 18ac addi a1,sp,120 - c0036fca: 8526 mv a0,s1 - c0036fcc: e69d00ef jal ra,c0007e34 - c0036fd0: bf11 j c0036ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46135 + c0037198: 18ac addi a1,sp,120 + c003719a: 8526 mv a0,s1 + c003719c: d87d00ef jal ra,c0007f22 + c00371a0: bf11 j c00370b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46143 if ((flags & JS_PROP_THROW) || - c0036fd2: 00ead793 srli a5,s5,0xe - c0036fd6: 8b85 andi a5,a5,1 - c0036fd8: ef81 bnez a5,c0036ff0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46136 (discriminator 1) + c00371a2: 00ead793 srli a5,s5,0xe + c00371a6: 8b85 andi a5,a5,1 + c00371a8: ef81 bnez a5,c00371c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46144 (discriminator 1) ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0036fda: 6421 lui s0,0x8 - c0036fdc: 008af433 and s0,s5,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46135 (discriminator 1) + c00371aa: 6421 lui s0,0x8 + c00371ac: 008af433 and s0,s5,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46143 (discriminator 1) if ((flags & JS_PROP_THROW) || - c0036fe0: f00402e3 beqz s0,c0036ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46136 + c00371b0: f00402e3 beqz s0,c00370b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46144 ((flags & JS_PROP_THROW_STRICT) && is_strict_mode(ctx))) { - c0036fe4: 8526 mv a0,s1 - c0036fe6: 8b4cd0ef jal ra,c000409a - c0036fea: 842a mv s0,a0 - c0036fec: ee050ce3 beqz a0,c0036ee4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46137 + c00371b4: 8526 mv a0,s1 + c00371b6: ee5cc0ef jal ra,c000409a + c00371ba: 842a mv s0,a0 + c00371bc: ee050ce3 beqz a0,c00370b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46145 JS_ThrowTypeError(ctx, "proxy: cannot set property"); - c0036ff0: 00029597 auipc a1,0x29 - c0036ff4: 77858593 addi a1,a1,1912 # c0060768 - c0036ff8: bf6d j c0036fb2 + c00371c0: 0002a597 auipc a1,0x2a + c00371c4: 80858593 addi a1,a1,-2040 # c00609c8 + c00371c8: bf6d j c0037182 -00000000c0036ffa : +00000000c00371ca : js_proxy_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46040 -{ - c0036ffa: 716d addi sp,sp,-272 - c0036ffc: 8832 mv a6,a2 - c0036ffe: f5ce sd s3,232(sp) - c0037000: e82e sd a1,16(sp) - c0037002: ec32 sd a2,24(sp) - c0037004: 89b6 mv s3,a3 - c0037006: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46047 - s = get_proxy_method(ctx, &method, obj, JS_ATOM_get); - c0037008: 862e mv a2,a1 - c003700a: 04200713 li a4,66 - c003700e: 86c2 mv a3,a6 - c0037010: 102c addi a1,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46040 -{ - c0037012: e222 sd s0,256(sp) - c0037014: e606 sd ra,264(sp) - c0037016: fda6 sd s1,248(sp) - c0037018: f9ca sd s2,240(sp) - c003701a: f1d2 sd s4,224(sp) - c003701c: edd6 sd s5,216(sp) - c003701e: 842a mv s0,a0 - c0037020: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46047 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46048 +{ + c00371ca: 716d addi sp,sp,-272 + c00371cc: 8832 mv a6,a2 + c00371ce: f5ce sd s3,232(sp) + c00371d0: e82e sd a1,16(sp) + c00371d2: ec32 sd a2,24(sp) + c00371d4: 89b6 mv s3,a3 + c00371d6: e03a sd a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46055 s = get_proxy_method(ctx, &method, obj, JS_ATOM_get); - c0037022: b48dd0ef jal ra,c001436a + c00371d8: 862e mv a2,a1 + c00371da: 04200713 li a4,66 + c00371de: 86c2 mv a3,a6 + c00371e0: 102c addi a1,sp,40 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46048 +{ + c00371e2: e222 sd s0,256(sp) + c00371e4: e606 sd ra,264(sp) + c00371e6: fda6 sd s1,248(sp) + c00371e8: f9ca sd s2,240(sp) + c00371ea: f1d2 sd s4,224(sp) + c00371ec: edd6 sd s5,216(sp) + c00371ee: 842a mv s0,a0 + c00371f0: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46055 + s = get_proxy_method(ctx, &method, obj, JS_ATOM_get); + c00371f2: a66dd0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46056 if (!s) - c0037026: e509 bnez a0,c0037030 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46049 + c00371f6: e509 bnez a0,c0037200 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46057 return JS_EXCEPTION; - c0037028: ec82 sd zero,88(sp) - c003702a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46083 + c00371f8: ec82 sd zero,88(sp) + c00371fa: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46091 return ret; - c003702c: f0be sd a5,96(sp) - c003702e: a0a1 j c0037076 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46051 + c00371fc: f0be sd a5,96(sp) + c00371fe: a0a1 j c0037246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46059 if (JS_IsUndefined(method)) - c0037030: 57c2 lw a5,48(sp) - c0037032: 4a0d li s4,3 - c0037034: 84aa mv s1,a0 - c0037036: 01479e63 bne a5,s4,c0037052 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46052 + c0037200: 57c2 lw a5,48(sp) + c0037202: 4a0d li s4,3 + c0037204: 84aa mv s1,a0 + c0037206: 01479e63 bne a5,s4,c0037222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46060 return JS_GetPropertyInternal(ctx, s->target, atom, receiver, FALSE); - c003703a: 610c ld a1,0(a0) - c003703c: 6510 ld a2,8(a0) - c003703e: 6702 ld a4,0(sp) - c0037040: 67a2 ld a5,8(sp) - c0037042: 4801 li a6,0 - c0037044: 86ce mv a3,s3 - c0037046: 8522 mv a0,s0 - c0037048: ffada0ef jal ra,c0011842 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46078 + c003720a: 610c ld a1,0(a0) + c003720c: 6510 ld a2,8(a0) + c003720e: 6702 ld a4,0(sp) + c0037210: 67a2 ld a5,8(sp) + c0037212: 4801 li a6,0 + c0037214: 86ce mv a3,s3 + c0037216: 8522 mv a0,s0 + c0037218: f18da0ef jal ra,c0011930 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46086 return JS_ThrowTypeError(ctx, "proxy: inconsistent get"); - c003704c: ecaa sd a0,88(sp) - c003704e: f0ae sd a1,96(sp) - c0037050: a01d j c0037076 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46053 + c003721c: ecaa sd a0,88(sp) + c003721e: f0ae sd a1,96(sp) + c0037220: a01d j c0037246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46061 atom_val = JS_AtomToValue(ctx, atom); - c0037052: 85ce mv a1,s3 - c0037054: 8522 mv a0,s0 - c0037056: adde20ef jal ra,c0019b32 - c003705a: e4aa sd a0,72(sp) - c003705c: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46054 + c0037222: 85ce mv a1,s3 + c0037224: 8522 mv a0,s0 + c0037226: adde20ef jal ra,c0019d02 + c003722a: e4aa sd a0,72(sp) + c003722c: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46062 if (JS_IsException(atom_val)) { - c003705e: 0005891b sext.w s2,a1 - c0037062: 4a99 li s5,6 - c0037064: 03591463 bne s2,s5,c003708c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46055 + c003722e: 0005891b sext.w s2,a1 + c0037232: 4a99 li s5,6 + c0037234: 03591463 bne s2,s5,c003725c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46063 JS_FreeValue(ctx, method); - c0037068: 75a2 ld a1,40(sp) - c003706a: 7642 ld a2,48(sp) - c003706c: 8522 mv a0,s0 - c003706e: acbd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46056 + c0037238: 75a2 ld a1,40(sp) + c003723a: 7642 ld a2,48(sp) + c003723c: 8522 mv a0,s0 + c003723e: 9e9d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46064 return JS_EXCEPTION; - c0037072: ec82 sd zero,88(sp) - c0037074: f0ca sd s2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46084 (discriminator 1) -} - c0037076: 60b2 ld ra,264(sp) - c0037078: 6412 ld s0,256(sp) - c003707a: 6566 ld a0,88(sp) - c003707c: 7586 ld a1,96(sp) - c003707e: 74ee ld s1,248(sp) - c0037080: 794e ld s2,240(sp) - c0037082: 79ae ld s3,232(sp) - c0037084: 7a0e ld s4,224(sp) - c0037086: 6aee ld s5,216(sp) - c0037088: 6151 addi sp,sp,272 - c003708a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46058 + c0037242: ec82 sd zero,88(sp) + c0037244: f0ca sd s2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46092 (discriminator 1) +} + c0037246: 60b2 ld ra,264(sp) + c0037248: 6412 ld s0,256(sp) + c003724a: 6566 ld a0,88(sp) + c003724c: 7586 ld a1,96(sp) + c003724e: 74ee ld s1,248(sp) + c0037250: 794e ld s2,240(sp) + c0037252: 79ae ld s3,232(sp) + c0037254: 7a0e ld s4,224(sp) + c0037256: 6aee ld s5,216(sp) + c0037258: 6151 addi sp,sp,272 + c003725a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46066 args[0] = s->target; - c003708c: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46061 + c003725c: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46069 ret = JS_CallFree(ctx, method, s->handler, 3, args); - c003708e: 7642 ld a2,48(sp) - c0037090: 06810813 addi a6,sp,104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46058 + c003725e: 7642 ld a2,48(sp) + c0037260: 06810813 addi a6,sp,104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46066 args[0] = s->target; - c0037094: f4be sd a5,104(sp) - c0037096: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46059 + c0037264: f4be sd a5,104(sp) + c0037266: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46067 args[1] = atom_val; - c0037098: fcaa sd a0,120(sp) - c003709a: e12e sd a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46058 + c0037268: fcaa sd a0,120(sp) + c003726a: e12e sd a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46066 args[0] = s->target; - c003709c: f8be sd a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46060 + c003726c: f8be sd a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46068 args[2] = receiver; - c003709e: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46061 + c003726e: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46069 ret = JS_CallFree(ctx, method, s->handler, 3, args); - c00370a0: 75a2 ld a1,40(sp) - c00370a2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46060 + c0037270: 75a2 ld a1,40(sp) + c0037272: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46068 args[2] = receiver; - c00370a4: e53e sd a5,136(sp) - c00370a6: 67a2 ld a5,8(sp) - c00370a8: e93e sd a5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46061 + c0037274: e53e sd a5,136(sp) + c0037276: 67a2 ld a5,8(sp) + c0037278: e93e sd a5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46069 ret = JS_CallFree(ctx, method, s->handler, 3, args); - c00370aa: 6894 ld a3,16(s1) - c00370ac: 6c98 ld a4,24(s1) - c00370ae: 478d li a5,3 - c00370b0: f5cda0ef jal ra,c001180c - c00370b4: 892e mv s2,a1 - c00370b6: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46062 + c003727a: 6894 ld a3,16(s1) + c003727c: 6c98 ld a4,24(s1) + c003727e: 478d li a5,3 + c0037280: e7ada0ef jal ra,c00118fa + c0037284: 892e mv s2,a1 + c0037286: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46070 JS_FreeValue(ctx, atom_val); - c00370b8: 6646 ld a2,80(sp) - c00370ba: 65a6 ld a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46061 + c0037288: 6646 ld a2,80(sp) + c003728a: 65a6 ld a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46069 ret = JS_CallFree(ctx, method, s->handler, 3, args); - c00370bc: fc2a sd a0,56(sp) + c003728c: fc2a sd a0,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00370be: 2901 sext.w s2,s2 + c003728e: 2901 sext.w s2,s2 js_proxy_get(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46070 JS_FreeValue(ctx, atom_val); - c00370c0: 8522 mv a0,s0 - c00370c2: a77d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46063 + c0037290: 8522 mv a0,s0 + c0037292: 995d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46071 if (JS_IsException(ret)) - c00370c6: f75901e3 beq s2,s5,c0037028 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46065 + c0037296: f75901e3 beq s2,s5,c00371f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46073 res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), atom); - c00370ca: 6090 ld a2,0(s1) - c00370cc: 86ce mv a3,s3 - c00370ce: 092c addi a1,sp,152 - c00370d0: 8522 mv a0,s0 - c00370d2: e33da0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46066 + c003729a: 6090 ld a2,0(s1) + c003729c: 86ce mv a3,s3 + c003729e: 092c addi a1,sp,152 + c00372a0: 8522 mv a0,s0 + c00372a2: d51da0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46074 if (res < 0) - c00370d6: f40549e3 bltz a0,c0037028 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46068 + c00372a6: f40549e3 bltz a0,c00371f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46076 if (res) { - c00370da: c939 beqz a0,c0037130 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46069 + c00372aa: c939 beqz a0,c0037300 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46077 if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0) { - c00370dc: 47ea lw a5,152(sp) - c00370de: 0137f713 andi a4,a5,19 - c00370e2: eb15 bnez a4,c0037116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46070 + c00372ac: 47ea lw a5,152(sp) + c00372ae: 0137f713 andi a4,a5,19 + c00372b2: eb15 bnez a4,c00372e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46078 if (!js_same_value(ctx, desc.value, ret)) { - c00370e4: 76e2 ld a3,56(sp) - c00370e6: 6706 ld a4,64(sp) - c00370e8: 758a ld a1,160(sp) - c00370ea: 762a ld a2,168(sp) - c00370ec: 8522 mv a0,s0 - c00370ee: bd5d00ef jal ra,c0007cc2 - c00370f2: e91d bnez a0,c0037128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46076 + c00372b4: 76e2 ld a3,56(sp) + c00372b6: 6706 ld a4,64(sp) + c00372b8: 758a ld a1,160(sp) + c00372ba: 762a ld a2,168(sp) + c00372bc: 8522 mv a0,s0 + c00372be: af3d00ef jal ra,c0007db0 + c00372c2: e91d bnez a0,c00372f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46084 js_free_desc(ctx, &desc); - c00370f4: 092c addi a1,sp,152 - c00370f6: 8522 mv a0,s0 - c00370f8: d3dd00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46077 + c00372c4: 092c addi a1,sp,152 + c00372c6: 8522 mv a0,s0 + c00372c8: c5bd00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46085 JS_FreeValue(ctx, ret); - c00370fc: 75e2 ld a1,56(sp) - c00370fe: 6606 ld a2,64(sp) - c0037100: 8522 mv a0,s0 - c0037102: a37d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46078 + c00372cc: 75e2 ld a1,56(sp) + c00372ce: 6606 ld a2,64(sp) + c00372d0: 8522 mv a0,s0 + c00372d2: 955d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46086 return JS_ThrowTypeError(ctx, "proxy: inconsistent get"); - c0037106: 8522 mv a0,s0 - c0037108: 00029597 auipc a1,0x29 - c003710c: 68058593 addi a1,a1,1664 # c0060788 - c0037110: ae6dc0ef jal ra,c00133f6 - c0037114: bf25 j c003704c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46073 + c00372d6: 8522 mv a0,s0 + c00372d8: 00029597 auipc a1,0x29 + c00372dc: 71058593 addi a1,a1,1808 # c00609e8 + c00372e0: a04dc0ef jal ra,c00134e4 + c00372e4: bf25 j c003721c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46081 } else if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE)) == JS_PROP_GETSET) { - c0037116: 8bc5 andi a5,a5,17 - c0037118: 4741 li a4,16 - c003711a: 00e79763 bne a5,a4,c0037128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46074 + c00372e6: 8bc5 andi a5,a5,17 + c00372e8: 4741 li a4,16 + c00372ea: 00e79763 bne a5,a4,c00372f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46082 if (JS_IsUndefined(desc.getter) && !JS_IsUndefined(ret)) { - c003711e: 57ea lw a5,184(sp) - c0037120: 01479463 bne a5,s4,c0037128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46074 (discriminator 1) - c0037124: fcf918e3 bne s2,a5,c00370f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46081 + c00372ee: 57ea lw a5,184(sp) + c00372f0: 01479463 bne a5,s4,c00372f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46082 (discriminator 1) + c00372f4: fcf918e3 bne s2,a5,c00372c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46089 js_free_desc(ctx, &desc); - c0037128: 092c addi a1,sp,152 - c003712a: 8522 mv a0,s0 - c003712c: d09d00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46083 + c00372f8: 092c addi a1,sp,152 + c00372fa: 8522 mv a0,s0 + c00372fc: c27d00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46091 return ret; - c0037130: 77e2 ld a5,56(sp) - c0037132: ecbe sd a5,88(sp) - c0037134: 6786 ld a5,64(sp) - c0037136: bddd j c003702c + c0037300: 77e2 ld a5,56(sp) + c0037302: ecbe sd a5,88(sp) + c0037304: 6786 ld a5,64(sp) + c0037306: bddd j c00371fc -00000000c0037138 : +00000000c0037308 : js_proxy_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45995 -{ - c0037138: 7155 addi sp,sp,-208 - c003713a: 87b2 mv a5,a2 - c003713c: f54e sd s3,168(sp) - c003713e: e02e sd a1,0(sp) - c0037140: e432 sd a2,8(sp) - c0037142: 89b6 mv s3,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46003 - s = get_proxy_method(ctx, &method, obj, JS_ATOM_has); - c0037144: 862e mv a2,a1 - c0037146: 06400713 li a4,100 - c003714a: 86be mv a3,a5 - c003714c: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45995 { - c003714e: e1a2 sd s0,192(sp) - c0037150: e586 sd ra,200(sp) - c0037152: fd26 sd s1,184(sp) - c0037154: f94a sd s2,176(sp) - c0037156: f152 sd s4,160(sp) - c0037158: 842a mv s0,a0 + c0037308: 7155 addi sp,sp,-208 + c003730a: 87b2 mv a5,a2 + c003730c: f54e sd s3,168(sp) + c003730e: e02e sd a1,0(sp) + c0037310: e432 sd a2,8(sp) + c0037312: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46011 + s = get_proxy_method(ctx, &method, obj, JS_ATOM_has); + c0037314: 862e mv a2,a1 + c0037316: 06400713 li a4,100 + c003731a: 86be mv a3,a5 + c003731c: 082c addi a1,sp,24 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46003 +{ + c003731e: e1a2 sd s0,192(sp) + c0037320: e586 sd ra,200(sp) + c0037322: fd26 sd s1,184(sp) + c0037324: f94a sd s2,176(sp) + c0037326: f152 sd s4,160(sp) + c0037328: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46011 s = get_proxy_method(ctx, &method, obj, JS_ATOM_has); - c003715a: a10dd0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46004 + c003732a: 92edd0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46012 if (!s) - c003715e: e119 bnez a0,c0037164 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46025 (discriminator 1) + c003732e: e119 bnez a0,c0037334 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46033 (discriminator 1) return -1; - c0037160: 54fd li s1,-1 - c0037162: a829 j c003717c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46006 + c0037330: 54fd li s1,-1 + c0037332: a829 j c003734c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46014 if (JS_IsUndefined(method)) - c0037164: 5702 lw a4,32(sp) - c0037166: 478d li a5,3 - c0037168: 892a mv s2,a0 - c003716a: 02f71263 bne a4,a5,c003718e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46007 + c0037334: 5702 lw a4,32(sp) + c0037336: 478d li a5,3 + c0037338: 892a mv s2,a0 + c003733a: 02f71263 bne a4,a5,c003735e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46015 return JS_HasProperty(ctx, s->target, atom); - c003716e: 610c ld a1,0(a0) - c0037170: 6510 ld a2,8(a0) - c0037172: 86ce mv a3,s3 - c0037174: 8522 mv a0,s0 - c0037176: 86df90ef jal ra,c00309e2 - c003717a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46036 -} - c003717c: 60ae ld ra,200(sp) - c003717e: 640e ld s0,192(sp) - c0037180: 794a ld s2,176(sp) - c0037182: 79aa ld s3,168(sp) - c0037184: 7a0a ld s4,160(sp) - c0037186: 8526 mv a0,s1 - c0037188: 74ea ld s1,184(sp) - c003718a: 6169 addi sp,sp,208 - c003718c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46008 + c003733e: 610c ld a1,0(a0) + c0037340: 6510 ld a2,8(a0) + c0037342: 86ce mv a3,s3 + c0037344: 8522 mv a0,s0 + c0037346: 86df90ef jal ra,c0030bb2 + c003734a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46044 +} + c003734c: 60ae ld ra,200(sp) + c003734e: 640e ld s0,192(sp) + c0037350: 794a ld s2,176(sp) + c0037352: 79aa ld s3,168(sp) + c0037354: 7a0a ld s4,160(sp) + c0037356: 8526 mv a0,s1 + c0037358: 74ea ld s1,184(sp) + c003735a: 6169 addi sp,sp,208 + c003735c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46016 atom_val = JS_AtomToValue(ctx, atom); - c003718e: 85ce mv a1,s3 - c0037190: 8522 mv a0,s0 - c0037192: 9a1e20ef jal ra,c0019b32 - c0037196: fc2a sd a0,56(sp) - c0037198: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46009 + c003735e: 85ce mv a1,s3 + c0037360: 8522 mv a0,s0 + c0037362: 9a1e20ef jal ra,c0019d02 + c0037366: fc2a sd a0,56(sp) + c0037368: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46017 if (JS_IsException(atom_val)) { - c003719a: 0005879b sext.w a5,a1 - c003719e: 4499 li s1,6 - c00371a0: 00979863 bne a5,s1,c00371b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46010 + c003736a: 0005879b sext.w a5,a1 + c003736e: 4499 li s1,6 + c0037370: 00979863 bne a5,s1,c0037380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46018 JS_FreeValue(ctx, method); - c00371a4: 65e2 ld a1,24(sp) - c00371a6: 7602 ld a2,32(sp) - c00371a8: 8522 mv a0,s0 - c00371aa: 98fd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46011 + c0037374: 65e2 ld a1,24(sp) + c0037376: 7602 ld a2,32(sp) + c0037378: 8522 mv a0,s0 + c003737a: 8add00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46019 return -1; - c00371ae: bf4d j c0037160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46013 + c003737e: bf4d j c0037330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46021 args[0] = s->target; - c00371b0: 00093783 ld a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46015 + c0037380: 00093783 ld a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46023 ret1 = JS_CallFree(ctx, method, s->handler, 2, args); - c00371b4: 7602 ld a2,32(sp) - c00371b6: 04810813 addi a6,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46013 + c0037384: 7602 ld a2,32(sp) + c0037386: 04810813 addi a6,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46021 args[0] = s->target; - c00371ba: e4be sd a5,72(sp) - c00371bc: 00893783 ld a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46014 + c003738a: e4be sd a5,72(sp) + c003738c: 00893783 ld a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46022 args[1] = atom_val; - c00371c0: ecaa sd a0,88(sp) - c00371c2: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46013 + c0037390: ecaa sd a0,88(sp) + c0037392: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46021 args[0] = s->target; - c00371c4: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46015 + c0037394: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46023 ret1 = JS_CallFree(ctx, method, s->handler, 2, args); - c00371c6: 01093683 ld a3,16(s2) - c00371ca: 01893703 ld a4,24(s2) - c00371ce: 65e2 ld a1,24(sp) - c00371d0: 4789 li a5,2 - c00371d2: 8522 mv a0,s0 - c00371d4: e38da0ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46016 + c0037396: 01093683 ld a3,16(s2) + c003739a: 01893703 ld a4,24(s2) + c003739e: 65e2 ld a1,24(sp) + c00373a0: 4789 li a5,2 + c00373a2: 8522 mv a0,s0 + c00373a4: d56da0ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46024 JS_FreeValue(ctx, atom_val); - c00371d8: 6606 ld a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46015 + c00373a8: 6606 ld a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46023 ret1 = JS_CallFree(ctx, method, s->handler, 2, args); - c00371da: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46016 + c00373aa: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46024 JS_FreeValue(ctx, atom_val); - c00371dc: 75e2 ld a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46015 + c00373ac: 75e2 ld a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46023 ret1 = JS_CallFree(ctx, method, s->handler, 2, args); - c00371de: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46016 + c00373ae: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46024 JS_FreeValue(ctx, atom_val); - c00371e0: 8522 mv a0,s0 - c00371e2: 957d00ef jal ra,c0007b38 + c00373b0: 8522 mv a0,s0 + c00373b2: 875d00ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00371e6: 7642 ld a2,48(sp) + c00373b6: 7642 ld a2,48(sp) js_proxy_has(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46017 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46025 if (JS_IsException(ret1)) - c00371e8: 0006079b sext.w a5,a2 - c00371ec: f6978ae3 beq a5,s1,c0037160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46019 + c00373b8: 0006079b sext.w a5,a2 + c00373bc: f6978ae3 beq a5,s1,c0037330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46027 ret = JS_ToBoolFree(ctx, ret1); - c00371f0: 75a2 ld a1,40(sp) - c00371f2: 8522 mv a0,s0 - c00371f4: c71d00ef jal ra,c0007e64 - c00371f8: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46020 + c00373c0: 75a2 ld a1,40(sp) + c00373c2: 8522 mv a0,s0 + c00373c4: b8fd00ef jal ra,c0007f52 + c00373c8: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46028 if (!ret) { - c00371fa: f149 bnez a0,c003717c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46022 + c00373ca: f149 bnez a0,c003734c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46030 p = JS_VALUE_GET_OBJ(s->target); - c00371fc: 00093a03 ld s4,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46023 + c00373cc: 00093a03 ld s4,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46031 res = JS_GetOwnPropertyInternal(ctx, &desc, p, atom); - c0037200: 86ce mv a3,s3 - c0037202: 10ac addi a1,sp,104 - c0037204: 8652 mv a2,s4 - c0037206: 8522 mv a0,s0 - c0037208: cfdda0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46024 + c00373d0: 86ce mv a3,s3 + c00373d2: 10ac addi a1,sp,104 + c00373d4: 8652 mv a2,s4 + c00373d6: 8522 mv a0,s0 + c00373d8: c1bda0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46032 if (res < 0) - c003720c: f4054ae3 bltz a0,c0037160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46026 + c00373dc: f4054ae3 bltz a0,c0037330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46034 if (res) { - c0037210: d535 beqz a0,c003717c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46027 + c00373e0: d535 beqz a0,c003734c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46035 res2 = !(desc.flags & JS_PROP_CONFIGURABLE); - c0037212: 5926 lw s2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46028 + c00373e2: 5926 lw s2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46036 js_free_desc(ctx, &desc); - c0037214: 10ac addi a1,sp,104 - c0037216: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46027 + c00373e4: 10ac addi a1,sp,104 + c00373e6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46035 res2 = !(desc.flags & JS_PROP_CONFIGURABLE); - c0037218: 00197913 andi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46028 + c00373e8: 00197913 andi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46036 js_free_desc(ctx, &desc); - c003721c: c19d00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46029 + c00373ec: b37d00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46037 if (res2 || !p->extensible) { - c0037220: 00090663 beqz s2,c003722c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46029 (discriminator 1) - c0037224: 005a4783 lbu a5,5(s4) - c0037228: 8b85 andi a5,a5,1 - c003722a: fba9 bnez a5,c003717c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46030 + c00373f0: 00090663 beqz s2,c00373fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46037 (discriminator 1) + c00373f4: 005a4783 lbu a5,5(s4) + c00373f8: 8b85 andi a5,a5,1 + c00373fa: fba9 bnez a5,c003734c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46038 JS_ThrowTypeError(ctx, "proxy: inconsistent has"); - c003722c: 8522 mv a0,s0 - c003722e: 00029597 auipc a1,0x29 - c0037232: 57258593 addi a1,a1,1394 # c00607a0 - c0037236: 9c0dc0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46031 + c00373fc: 8522 mv a0,s0 + c00373fe: 00029597 auipc a1,0x29 + c0037402: 60258593 addi a1,a1,1538 # c0060a00 + c0037406: 8dedc0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46039 return -1; - c003723a: b71d j c0037160 + c003740a: b71d j c0037330 -00000000c003723c : +00000000c003740c : js_proxy_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46283 -{ - c003723c: 7141 addi sp,sp,-496 - c003723e: 8332 mv t1,a2 - c0037240: e3d2 sd s4,448(sp) - c0037242: e0ae sd a1,64(sp) - c0037244: e4b2 sd a2,72(sp) - c0037246: 8a36 mv s4,a3 - c0037248: f83a sd a4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46292 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46291 +{ + c003740c: 7141 addi sp,sp,-496 + c003740e: 8332 mv t1,a2 + c0037410: e3d2 sd s4,448(sp) + c0037412: e0ae sd a1,64(sp) + c0037414: e4b2 sd a2,72(sp) + c0037416: 8a36 mv s4,a3 + c0037418: f83a sd a4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46300 s = get_proxy_method(ctx, &method, obj, JS_ATOM_defineProperty); - c003724a: 862e mv a2,a1 - c003724c: 06600713 li a4,102 - c0037250: 869a mv a3,t1 - c0037252: 08ac addi a1,sp,88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46283 -{ - c0037254: f3a2 sd s0,480(sp) - c0037256: efa6 sd s1,472(sp) - c0037258: f786 sd ra,488(sp) - c003725a: ebca sd s2,464(sp) - c003725c: e7ce sd s3,456(sp) - c003725e: ff56 sd s5,440(sp) - c0037260: fb5a sd s6,432(sp) - c0037262: 20012403 lw s0,512(sp) - c0037266: 84aa mv s1,a0 - c0037268: fc3e sd a5,56(sp) - c003726a: f042 sd a6,32(sp) - c003726c: f446 sd a7,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46292 + c003741a: 862e mv a2,a1 + c003741c: 06600713 li a4,102 + c0037420: 869a mv a3,t1 + c0037422: 08ac addi a1,sp,88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46291 +{ + c0037424: f3a2 sd s0,480(sp) + c0037426: efa6 sd s1,472(sp) + c0037428: f786 sd ra,488(sp) + c003742a: ebca sd s2,464(sp) + c003742c: e7ce sd s3,456(sp) + c003742e: ff56 sd s5,440(sp) + c0037430: fb5a sd s6,432(sp) + c0037432: 20012403 lw s0,512(sp) + c0037436: 84aa mv s1,a0 + c0037438: fc3e sd a5,56(sp) + c003743a: f042 sd a6,32(sp) + c003743c: f446 sd a7,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46300 s = get_proxy_method(ctx, &method, obj, JS_ATOM_defineProperty); - c003726e: 8fcdd0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46293 + c003743e: 81add0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46301 if (!s) - c0037272: e119 bnez a0,c0037278 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46371 + c0037442: e119 bnez a0,c0037448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46379 return -1; - c0037274: 557d li a0,-1 - c0037276: a02d j c00372a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46295 + c0037444: 557d li a0,-1 + c0037446: a02d j c0037470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46303 if (JS_IsUndefined(method)) { - c0037278: 5706 lw a4,96(sp) - c003727a: 478d li a5,3 - c003727c: 892a mv s2,a0 - c003727e: 02f71b63 bne a4,a5,c00372b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46296 + c0037448: 5706 lw a4,96(sp) + c003744a: 478d li a5,3 + c003744c: 892a mv s2,a0 + c003744e: 02f71b63 bne a4,a5,c0037484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46304 return JS_DefineProperty(ctx, s->target, prop, val, getter, setter, flags); - c0037282: 77de ld a5,496(sp) - c0037284: e822 sd s0,16(sp) - c0037286: 7802 ld a6,32(sp) - c0037288: e03e sd a5,0(sp) - c003728a: 77fe ld a5,504(sp) - c003728c: 78a2 ld a7,40(sp) - c003728e: 7742 ld a4,48(sp) - c0037290: e43e sd a5,8(sp) - c0037292: 610c ld a1,0(a0) - c0037294: 6510 ld a2,8(a0) - c0037296: 77e2 ld a5,56(sp) - c0037298: 86d2 mv a3,s4 - c003729a: 8526 mv a0,s1 - c003729c: e46db0ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46377 -} - c00372a0: 70be ld ra,488(sp) - c00372a2: 741e ld s0,480(sp) - c00372a4: 64fe ld s1,472(sp) - c00372a6: 695e ld s2,464(sp) - c00372a8: 69be ld s3,456(sp) - c00372aa: 6a1e ld s4,448(sp) - c00372ac: 7afa ld s5,440(sp) - c00372ae: 7b5a ld s6,432(sp) - c00372b0: 617d addi sp,sp,496 - c00372b2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46298 + c0037452: 77de ld a5,496(sp) + c0037454: e822 sd s0,16(sp) + c0037456: 7802 ld a6,32(sp) + c0037458: e03e sd a5,0(sp) + c003745a: 77fe ld a5,504(sp) + c003745c: 78a2 ld a7,40(sp) + c003745e: 7742 ld a4,48(sp) + c0037460: e43e sd a5,8(sp) + c0037462: 610c ld a1,0(a0) + c0037464: 6510 ld a2,8(a0) + c0037466: 77e2 ld a5,56(sp) + c0037468: 86d2 mv a3,s4 + c003746a: 8526 mv a0,s1 + c003746c: d64db0ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46385 +} + c0037470: 70be ld ra,488(sp) + c0037472: 741e ld s0,480(sp) + c0037474: 64fe ld s1,472(sp) + c0037476: 695e ld s2,464(sp) + c0037478: 69be ld s3,456(sp) + c003747a: 6a1e ld s4,448(sp) + c003747c: 7afa ld s5,440(sp) + c003747e: 7b5a ld s6,432(sp) + c0037480: 617d addi sp,sp,496 + c0037482: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46306 prop_val = JS_AtomToValue(ctx, prop); - c00372b4: 85d2 mv a1,s4 - c00372b6: 8526 mv a0,s1 - c00372b8: 87be20ef jal ra,c0019b32 - c00372bc: f8ae sd a1,112(sp) - c00372be: f4aa sd a0,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46299 + c0037484: 85d2 mv a1,s4 + c0037486: 8526 mv a0,s1 + c0037488: 87be20ef jal ra,c0019d02 + c003748c: f8ae sd a1,112(sp) + c003748e: f4aa sd a0,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46307 if (JS_IsException(prop_val)) { - c00372c0: 2581 sext.w a1,a1 - c00372c2: 4b19 li s6,6 - c00372c4: 01659863 bne a1,s6,c00372d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46306 + c0037490: 2581 sext.w a1,a1 + c0037492: 4b19 li s6,6 + c0037494: 01659863 bne a1,s6,c00374a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46314 JS_FreeValue(ctx, method); - c00372c8: 65e6 ld a1,88(sp) - c00372ca: 7606 ld a2,96(sp) - c00372cc: 8526 mv a0,s1 - c00372ce: 86bd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46307 + c0037498: 65e6 ld a1,88(sp) + c003749a: 7606 ld a2,96(sp) + c003749c: 8526 mv a0,s1 + c003749e: f88d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46315 return -1; - c00372d2: b74d j c0037274 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46303 + c00374a2: b74d j c0037444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46311 desc_val = js_create_desc(ctx, val, getter, setter, flags); - c00372d4: 77c2 ld a5,48(sp) + c00374a4: 77c2 ld a5,48(sp) js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46149 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46157 ret = JS_NewObject(ctx); - c00372d6: 8526 mv a0,s1 - c00372d8: e53e sd a5,136(sp) - c00372da: 77e2 ld a5,56(sp) - c00372dc: e93e sd a5,144(sp) - c00372de: 7782 ld a5,32(sp) - c00372e0: ed3e sd a5,152(sp) - c00372e2: 77a2 ld a5,40(sp) - c00372e4: f13e sd a5,160(sp) - c00372e6: 77de ld a5,496(sp) - c00372e8: e6be sd a5,328(sp) - c00372ea: 77fe ld a5,504(sp) - c00372ec: eabe sd a5,336(sp) - c00372ee: a9bdf0ef jal ra,c0016d88 - c00372f2: feaa sd a0,376(sp) - c00372f4: e32e sd a1,384(sp) + c00374a6: 8526 mv a0,s1 + c00374a8: e53e sd a5,136(sp) + c00374aa: 77e2 ld a5,56(sp) + c00374ac: e93e sd a5,144(sp) + c00374ae: 7782 ld a5,32(sp) + c00374b0: ed3e sd a5,152(sp) + c00374b2: 77a2 ld a5,40(sp) + c00374b4: f13e sd a5,160(sp) + c00374b6: 77de ld a5,496(sp) + c00374b8: e6be sd a5,328(sp) + c00374ba: 77fe ld a5,504(sp) + c00374bc: eabe sd a5,336(sp) + c00374be: a9bdf0ef jal ra,c0016f58 + c00374c2: feaa sd a0,376(sp) + c00374c4: e32e sd a1,384(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00372f6: 00058a9b sext.w s5,a1 + c00374c6: 00058a9b sext.w s5,a1 js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46149 - c00372fa: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46157 + c00374ca: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46158 if (JS_IsException(ret)) - c00372fc: 036a9063 bne s5,s6,c003731c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46151 + c00374cc: 036a9063 bne s5,s6,c00374ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46159 return ret; - c0037300: 77f6 ld a5,376(sp) - c0037302: e2ce sd s3,320(sp) - c0037304: e14e sd s3,128(sp) - c0037306: fe3e sd a5,312(sp) + c00374d0: 77f6 ld a5,376(sp) + c00374d2: e2ce sd s3,320(sp) + c00374d4: e14e sd s3,128(sp) + c00374d6: fe3e sd a5,312(sp) js_proxy_define_own_property(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c0037308: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46304 + c00374d8: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 if (JS_IsException(desc_val)) { - c003730a: 4b19 li s6,6 - c003730c: 116a9463 bne s5,s6,c0037414 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46305 + c00374da: 4b19 li s6,6 + c00374dc: 116a9463 bne s5,s6,c00375e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46313 JS_FreeValue(ctx, prop_val); - c0037310: 75a6 ld a1,104(sp) - c0037312: 7646 ld a2,112(sp) - c0037314: 8526 mv a0,s1 - c0037316: 823d00ef jal ra,c0007b38 - c003731a: b77d j c00372c8 + c00374e0: 75a6 ld a1,104(sp) + c00374e2: 7646 ld a2,112(sp) + c00374e4: 8526 mv a0,s1 + c00374e6: f40d00ef jal ra,c0007c26 + c00374ea: b77d j c0037498 js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46160 if (flags & JS_PROP_HAS_GET) { - c003731c: 00b45793 srli a5,s0,0xb - c0037320: 8b85 andi a5,a5,1 - c0037322: c38d beqz a5,c0037344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46153 + c00374ec: 00b45793 srli a5,s0,0xb + c00374f0: 8b85 andi a5,a5,1 + c00374f2: c38d beqz a5,c0037514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46161 JS_DefinePropertyValue(ctx, ret, JS_ATOM_get, JS_DupValue(ctx, getter), - c0037324: 656a ld a0,152(sp) - c0037326: 758a ld a1,160(sp) - c0037328: b46cf0ef jal ra,c000666e - c003732c: 87ae mv a5,a1 - c003732e: fa2e sd a1,304(sp) - c0037330: 661a ld a2,384(sp) - c0037332: 75f6 ld a1,376(sp) - c0037334: 872a mv a4,a0 - c0037336: f62a sd a0,296(sp) - c0037338: 481d li a6,7 - c003733a: 04200693 li a3,66 - c003733e: 8526 mv a0,s1 - c0037340: c77db0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46156 + c00374f4: 656a ld a0,152(sp) + c00374f6: 758a ld a1,160(sp) + c00374f8: a64cf0ef jal ra,c000675c + c00374fc: 87ae mv a5,a1 + c00374fe: fa2e sd a1,304(sp) + c0037500: 661a ld a2,384(sp) + c0037502: 75f6 ld a1,376(sp) + c0037504: 872a mv a4,a0 + c0037506: f62a sd a0,296(sp) + c0037508: 481d li a6,7 + c003750a: 04200693 li a3,66 + c003750e: 8526 mv a0,s1 + c0037510: b95db0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46164 if (flags & JS_PROP_HAS_SET) { - c0037344: 00c45793 srli a5,s0,0xc - c0037348: 8b85 andi a5,a5,1 - c003734a: c38d beqz a5,c003736c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46157 + c0037514: 00c45793 srli a5,s0,0xc + c0037518: 8b85 andi a5,a5,1 + c003751a: c38d beqz a5,c003753c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46165 JS_DefinePropertyValue(ctx, ret, JS_ATOM_set, JS_DupValue(ctx, setter), - c003734c: 6536 ld a0,328(sp) - c003734e: 65d6 ld a1,336(sp) - c0037350: b1ecf0ef jal ra,c000666e - c0037354: 87ae mv a5,a1 - c0037356: f22e sd a1,288(sp) - c0037358: 661a ld a2,384(sp) - c003735a: 75f6 ld a1,376(sp) - c003735c: 872a mv a4,a0 - c003735e: ee2a sd a0,280(sp) - c0037360: 481d li a6,7 - c0037362: 04300693 li a3,67 - c0037366: 8526 mv a0,s1 - c0037368: c4fdb0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46160 + c003751c: 6536 ld a0,328(sp) + c003751e: 65d6 ld a1,336(sp) + c0037520: a3ccf0ef jal ra,c000675c + c0037524: 87ae mv a5,a1 + c0037526: f22e sd a1,288(sp) + c0037528: 661a ld a2,384(sp) + c003752a: 75f6 ld a1,376(sp) + c003752c: 872a mv a4,a0 + c003752e: ee2a sd a0,280(sp) + c0037530: 481d li a6,7 + c0037532: 04300693 li a3,67 + c0037536: 8526 mv a0,s1 + c0037538: b6ddb0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46168 if (flags & JS_PROP_HAS_VALUE) { - c003736c: 00d45793 srli a5,s0,0xd - c0037370: 8b85 andi a5,a5,1 - c0037372: c38d beqz a5,c0037394 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46161 + c003753c: 00d45793 srli a5,s0,0xd + c0037540: 8b85 andi a5,a5,1 + c0037542: c38d beqz a5,c0037564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46169 JS_DefinePropertyValue(ctx, ret, JS_ATOM_value, JS_DupValue(ctx, val), - c0037374: 652a ld a0,136(sp) - c0037376: 65ca ld a1,144(sp) - c0037378: af6cf0ef jal ra,c000666e - c003737c: 87ae mv a5,a1 - c003737e: ea2e sd a1,272(sp) - c0037380: 661a ld a2,384(sp) - c0037382: 75f6 ld a1,376(sp) - c0037384: 872a mv a4,a0 - c0037386: e62a sd a0,264(sp) - c0037388: 481d li a6,7 - c003738a: 04100693 li a3,65 - c003738e: 8526 mv a0,s1 - c0037390: c27db0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46164 + c0037544: 652a ld a0,136(sp) + c0037546: 65ca ld a1,144(sp) + c0037548: a14cf0ef jal ra,c000675c + c003754c: 87ae mv a5,a1 + c003754e: ea2e sd a1,272(sp) + c0037550: 661a ld a2,384(sp) + c0037552: 75f6 ld a1,376(sp) + c0037554: 872a mv a4,a0 + c0037556: e62a sd a0,264(sp) + c0037558: 481d li a6,7 + c003755a: 04100693 li a3,65 + c003755e: 8526 mv a0,s1 + c0037560: b45db0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46172 if (flags & JS_PROP_HAS_WRITABLE) { - c0037394: 20047793 andi a5,s0,512 - c0037398: c39d beqz a5,c00373be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46165 + c0037564: 20047793 andi a5,s0,512 + c0037568: c39d beqz a5,c003758e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46173 JS_DefinePropertyValue(ctx, ret, JS_ATOM_writable, - c003739a: 4014579b sraiw a5,s0,0x1 - c003739e: 8b85 andi a5,a5,1 - c00373a0: c5be sw a5,200(sp) + c003756a: 4014579b sraiw a5,s0,0x1 + c003756e: 8b85 andi a5,a5,1 + c0037570: c5be sw a5,200(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c00373a2: c782 sw zero,204(sp) - c00373a4: 672e ld a4,200(sp) + c0037572: c782 sw zero,204(sp) + c0037574: 672e ld a4,200(sp) js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46165 - c00373a6: 75f6 ld a1,376(sp) - c00373a8: 661a ld a2,384(sp) - c00373aa: 4785 li a5,1 - c00373ac: 481d li a6,7 - c00373ae: 03f00693 li a3,63 - c00373b2: 8526 mv a0,s1 - c00373b4: e9be sd a5,208(sp) - c00373b6: fdba sd a4,248(sp) - c00373b8: e23e sd a5,256(sp) - c00373ba: bfddb0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46173 + c0037576: 75f6 ld a1,376(sp) + c0037578: 661a ld a2,384(sp) + c003757a: 4785 li a5,1 + c003757c: 481d li a6,7 + c003757e: 03f00693 li a3,63 + c0037582: 8526 mv a0,s1 + c0037584: e9be sd a5,208(sp) + c0037586: fdba sd a4,248(sp) + c0037588: e23e sd a5,256(sp) + c003758a: b1bdb0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46177 if (flags & JS_PROP_HAS_ENUMERABLE) { - c00373be: 40047793 andi a5,s0,1024 - c00373c2: c39d beqz a5,c00373e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46170 + c003758e: 40047793 andi a5,s0,1024 + c0037592: c39d beqz a5,c00375b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46178 JS_DefinePropertyValue(ctx, ret, JS_ATOM_enumerable, - c00373c4: 4024579b sraiw a5,s0,0x2 - c00373c8: 8b85 andi a5,a5,1 - c00373ca: dd3e sw a5,184(sp) + c0037594: 4024579b sraiw a5,s0,0x2 + c0037598: 8b85 andi a5,a5,1 + c003759a: dd3e sw a5,184(sp) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c00373cc: df02 sw zero,188(sp) - c00373ce: 776a ld a4,184(sp) + c003759c: df02 sw zero,188(sp) + c003759e: 776a ld a4,184(sp) js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46170 - c00373d0: 75f6 ld a1,376(sp) - c00373d2: 661a ld a2,384(sp) - c00373d4: 4785 li a5,1 - c00373d6: 481d li a6,7 - c00373d8: 04000693 li a3,64 - c00373dc: 8526 mv a0,s1 - c00373de: e1be sd a5,192(sp) - c00373e0: f5ba sd a4,232(sp) - c00373e2: f9be sd a5,240(sp) - c00373e4: bd3db0ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46178 + c00375a0: 75f6 ld a1,376(sp) + c00375a2: 661a ld a2,384(sp) + c00375a4: 4785 li a5,1 + c00375a6: 481d li a6,7 + c00375a8: 04000693 li a3,64 + c00375ac: 8526 mv a0,s1 + c00375ae: e1be sd a5,192(sp) + c00375b0: f5ba sd a4,232(sp) + c00375b2: f9be sd a5,240(sp) + c00375b4: af1db0ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46182 if (flags & JS_PROP_HAS_CONFIGURABLE) { - c00373e8: 10047793 andi a5,s0,256 - c00373ec: f0078ae3 beqz a5,c0037300 + c00375b8: 10047793 andi a5,s0,256 + c00375bc: f0078ae3 beqz a5,c00374d0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c00373f0: 00147793 andi a5,s0,1 - c00373f4: d53e sw a5,168(sp) - c00373f6: d702 sw zero,172(sp) - c00373f8: 772a ld a4,168(sp) + c00375c0: 00147793 andi a5,s0,1 + c00375c4: d53e sw a5,168(sp) + c00375c6: d702 sw zero,172(sp) + c00375c8: 772a ld a4,168(sp) js_create_desc(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46175 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46183 JS_DefinePropertyValue(ctx, ret, JS_ATOM_configurable, - c00373fa: 75f6 ld a1,376(sp) - c00373fc: 661a ld a2,384(sp) - c00373fe: 4785 li a5,1 - c0037400: 481d li a6,7 - c0037402: 03e00693 li a3,62 - c0037406: 8526 mv a0,s1 - c0037408: f93e sd a5,176(sp) - c003740a: edba sd a4,216(sp) - c003740c: f1be sd a5,224(sp) - c003740e: ba9db0ef jal ra,c0012fb6 - c0037412: b5fd j c0037300 + c00375ca: 75f6 ld a1,376(sp) + c00375cc: 661a ld a2,384(sp) + c00375ce: 4785 li a5,1 + c00375d0: 481d li a6,7 + c00375d2: 03e00693 li a3,62 + c00375d6: 8526 mv a0,s1 + c00375d8: f93e sd a5,176(sp) + c00375da: edba sd a4,216(sp) + c00375dc: f1be sd a5,224(sp) + c00375de: ac7db0ef jal ra,c00130a4 + c00375e2: b5fd j c00374d0 js_proxy_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46317 args[0] = s->target; - c0037414: 00093703 ld a4,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c00375e4: 00093703 ld a4,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c0037418: 7606 ld a2,96(sp) - c003741a: 65e6 ld a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46309 + c00375e8: 7606 ld a2,96(sp) + c00375ea: 65e6 ld a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46317 args[0] = s->target; - c003741c: e6ba sd a4,328(sp) - c003741e: 00893703 ld a4,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46311 + c00375ec: e6ba sd a4,328(sp) + c00375ee: 00893703 ld a4,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46319 args[2] = desc_val; - c0037422: f6be sd a5,360(sp) - c0037424: face sd s3,368(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46309 + c00375f2: f6be sd a5,360(sp) + c00375f4: face sd s3,368(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46317 args[0] = s->target; - c0037426: eaba sd a4,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46310 + c00375f6: eaba sd a4,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46318 args[1] = prop_val; - c0037428: 7726 ld a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c00375f8: 7726 ld a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c003742a: 478d li a5,3 - c003742c: 14810813 addi a6,sp,328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46310 + c00375fa: 478d li a5,3 + c00375fc: 14810813 addi a6,sp,328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46318 args[1] = prop_val; - c0037430: eeba sd a4,344(sp) - c0037432: 7746 ld a4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c0037600: eeba sd a4,344(sp) + c0037602: 7746 ld a4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c0037434: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46310 + c0037604: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46318 args[1] = prop_val; - c0037436: f2ba sd a4,352(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c0037606: f2ba sd a4,352(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c0037438: 01093683 ld a3,16(s2) - c003743c: 01893703 ld a4,24(s2) - c0037440: bccda0ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46313 + c0037608: 01093683 ld a3,16(s2) + c003760c: 01893703 ld a4,24(s2) + c0037610: aeada0ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46321 JS_FreeValue(ctx, prop_val); - c0037444: 7646 ld a2,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c0037614: 7646 ld a2,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c0037446: f12e sd a1,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46313 + c0037616: f12e sd a1,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46321 JS_FreeValue(ctx, prop_val); - c0037448: 75a6 ld a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46312 + c0037618: 75a6 ld a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 ret1 = JS_CallFree(ctx, method, s->handler, 3, args); - c003744a: ed2a sd a0,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46313 + c003761a: ed2a sd a0,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46321 JS_FreeValue(ctx, prop_val); - c003744c: 8526 mv a0,s1 - c003744e: eead00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46314 + c003761c: 8526 mv a0,s1 + c003761e: e08d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46322 JS_FreeValue(ctx, desc_val); - c0037452: 660a ld a2,128(sp) - c0037454: 75e6 ld a1,120(sp) - c0037456: 8526 mv a0,s1 - c0037458: ee0d00ef jal ra,c0007b38 + c0037622: 660a ld a2,128(sp) + c0037624: 75e6 ld a1,120(sp) + c0037626: 8526 mv a0,s1 + c0037628: dfed00ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003745c: 760a ld a2,160(sp) + c003762c: 760a ld a2,160(sp) js_proxy_define_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46315 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46323 if (JS_IsException(ret1)) - c003745e: 0006079b sext.w a5,a2 - c0037462: e16789e3 beq a5,s6,c0037274 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46317 + c003762e: 0006079b sext.w a5,a2 + c0037632: e16789e3 beq a5,s6,c0037444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46325 ret = JS_ToBoolFree(ctx, ret1); - c0037466: 65ea ld a1,152(sp) - c0037468: 8526 mv a0,s1 - c003746a: 9fbd00ef jal ra,c0007e64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46318 + c0037636: 65ea ld a1,152(sp) + c0037638: 8526 mv a0,s1 + c003763a: 919d00ef jal ra,c0007f52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46326 if (!ret) { - c003746e: ed09 bnez a0,c0037488 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46319 + c003763e: ed09 bnez a0,c0037658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46327 if (flags & JS_PROP_THROW) { - c0037470: 6511 lui a0,0x4 - c0037472: 8d61 and a0,a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46320 + c0037640: 6511 lui a0,0x4 + c0037642: 8d61 and a0,a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46328 JS_ThrowTypeError(ctx, "proxy: defineProperty exception"); - c0037474: 00029597 auipc a1,0x29 - c0037478: 34458593 addi a1,a1,836 # c00607b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46319 + c0037644: 00029597 auipc a1,0x29 + c0037648: 3d458593 addi a1,a1,980 # c0060a18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46327 if (flags & JS_PROP_THROW) { - c003747c: e20502e3 beqz a0,c00372a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46370 + c003764c: e20502e3 beqz a0,c0037470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46378 JS_ThrowTypeError(ctx, "proxy: inconsistent defineProperty"); - c0037480: 8526 mv a0,s1 - c0037482: f75db0ef jal ra,c00133f6 - c0037486: b3fd j c0037274 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46326 + c0037650: 8526 mv a0,s1 + c0037652: e93db0ef jal ra,c00134e4 + c0037656: b3fd j c0037444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46334 p = JS_VALUE_GET_OBJ(s->target); - c0037488: 00093903 ld s2,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46327 + c0037658: 00093903 ld s2,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46335 res = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - c003748c: 86d2 mv a3,s4 - c003748e: 1aac addi a1,sp,376 - c0037490: 864a mv a2,s2 - c0037492: 8526 mv a0,s1 - c0037494: a71da0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46328 + c003765c: 86d2 mv a3,s4 + c003765e: 1aac addi a1,sp,376 + c0037660: 864a mv a2,s2 + c0037662: 8526 mv a0,s1 + c0037664: 98fda0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46336 if (res < 0) - c0037498: dc054ee3 bltz a0,c0037274 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46330 + c0037668: dc054ee3 bltz a0,c0037444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46338 setting_not_configurable = ((flags & (JS_PROP_HAS_CONFIGURABLE | - c003749c: 10147993 andi s3,s0,257 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46333 + c003766c: 10147993 andi s3,s0,257 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46341 if (!res) { - c00374a0: e919 bnez a0,c00374b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46334 + c0037670: e919 bnez a0,c0037686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46342 if (!p->extensible || setting_not_configurable) - c00374a2: 00594783 lbu a5,5(s2) - c00374a6: 8b85 andi a5,a5,1 - c00374a8: c395 beqz a5,c00374cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46334 (discriminator 1) - c00374aa: 10000793 li a5,256 - c00374ae: 00f98f63 beq s3,a5,c00374cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46376 + c0037672: 00594783 lbu a5,5(s2) + c0037676: 8b85 andi a5,a5,1 + c0037678: c395 beqz a5,c003769c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46342 (discriminator 1) + c003767a: 10000793 li a5,256 + c003767e: 00f98f63 beq s3,a5,c003769c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46384 return 1; - c00374b2: 4505 li a0,1 - c00374b4: b3f5 j c00372a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46337 + c0037682: 4505 li a0,1 + c0037684: b3f5 j c0037470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46345 if (!check_define_prop_flags(desc.flags, flags) || - c00374b6: 17812903 lw s2,376(sp) - c00374ba: 85a2 mv a1,s0 - c00374bc: 854a mv a0,s2 - c00374be: bccce0ef jal ra,c000588a - c00374c2: e911 bnez a0,c00374d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46368 + c0037686: 17812903 lw s2,376(sp) + c003768a: 85a2 mv a1,s0 + c003768c: 854a mv a0,s2 + c003768e: aeace0ef jal ra,c0005978 + c0037692: e911 bnez a0,c00376a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46376 js_free_desc(ctx, &desc); - c00374c4: 1aac addi a1,sp,376 - c00374c6: 8526 mv a0,s1 - c00374c8: 96dd00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46370 + c0037694: 1aac addi a1,sp,376 + c0037696: 8526 mv a0,s1 + c0037698: 88bd00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46378 JS_ThrowTypeError(ctx, "proxy: inconsistent defineProperty"); - c00374cc: 00029597 auipc a1,0x29 - c00374d0: 30c58593 addi a1,a1,780 # c00607d8 - c00374d4: b775 j c0037480 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46337 (discriminator 1) + c003769c: 00029597 auipc a1,0x29 + c00376a0: 39c58593 addi a1,a1,924 # c0060a38 + c00376a4: b775 j c0037650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46345 (discriminator 1) if (!check_define_prop_flags(desc.flags, flags) || - c00374d6: 00197793 andi a5,s2,1 - c00374da: c789 beqz a5,c00374e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46338 + c00376a6: 00197793 andi a5,s2,1 + c00376aa: c789 beqz a5,c00376b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46346 ((desc.flags & JS_PROP_CONFIGURABLE) && setting_not_configurable)) { - c00374dc: 10000793 li a5,256 - c00374e0: fef982e3 beq s3,a5,c00374c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46341 + c00376ac: 10000793 li a5,256 + c00376b0: fef982e3 beq s3,a5,c0037694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46349 if (flags & (JS_PROP_HAS_GET | JS_PROP_HAS_SET)) { - c00374e4: 6789 lui a5,0x2 - c00374e6: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> - c00374ea: 8fe1 and a5,a5,s0 - c00374ec: cba1 beqz a5,c003753c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46342 + c00376b4: 6789 lui a5,0x2 + c00376b6: 80078793 addi a5,a5,-2048 # 1800 <__clzdi2-0xbfffe800> + c00376ba: 8fe1 and a5,a5,s0 + c00376bc: cba1 beqz a5,c003770c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46350 if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE)) == - c00374ee: 01197913 andi s2,s2,17 - c00374f2: 47c1 li a5,16 - c00374f4: 00f90a63 beq s2,a5,c0037508 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46363 + c00376be: 01197913 andi s2,s2,17 + c00376c2: 47c1 li a5,16 + c00376c4: 00f90a63 beq s2,a5,c00376d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46371 if (flags & JS_PROP_HAS_WRITABLE) { - c00374f8: 20047413 andi s0,s0,512 - c00374fc: e425 bnez s0,c0037564 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46374 + c00376c8: 20047413 andi s0,s0,512 + c00376cc: e425 bnez s0,c0037734 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46382 js_free_desc(ctx, &desc); - c00374fe: 1aac addi a1,sp,376 - c0037500: 8526 mv a0,s1 - c0037502: 933d00ef jal ra,c0007e34 - c0037506: b775 j c00374b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46344 + c00376ce: 1aac addi a1,sp,376 + c00376d0: 8526 mv a0,s1 + c00376d2: 851d00ef jal ra,c0007f22 + c00376d6: b775 j c0037682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46352 if ((flags & JS_PROP_HAS_GET) && - c0037508: 00b45793 srli a5,s0,0xb - c003750c: 8b85 andi a5,a5,1 - c003750e: ef91 bnez a5,c003752a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46348 + c00376d8: 00b45793 srli a5,s0,0xb + c00376dc: 8b85 andi a5,a5,1 + c00376de: ef91 bnez a5,c00376fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46356 if ((flags & JS_PROP_HAS_SET) && - c0037510: 00c45793 srli a5,s0,0xc - c0037514: 8b85 andi a5,a5,1 - c0037516: d3ed beqz a5,c00374f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46349 (discriminator 1) + c00376e0: 00c45793 srli a5,s0,0xc + c00376e4: 8b85 andi a5,a5,1 + c00376e6: d3ed beqz a5,c00376c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46357 (discriminator 1) !js_same_value(ctx, setter, desc.setter)) { - c0037518: 769a ld a3,416(sp) - c003751a: 773a ld a4,424(sp) - c003751c: 75de ld a1,496(sp) - c003751e: 767e ld a2,504(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46359 (discriminator 1) + c00376e8: 769a ld a3,416(sp) + c00376ea: 773a ld a4,424(sp) + c00376ec: 75de ld a1,496(sp) + c00376ee: 767e ld a2,504(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46367 (discriminator 1) !js_same_value(ctx, val, desc.value)) { - c0037520: 8526 mv a0,s1 - c0037522: fa0d00ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46358 (discriminator 1) + c00376f0: 8526 mv a0,s1 + c00376f2: ebed00ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46366 (discriminator 1) } else if ((desc.flags & (JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0 && - c0037526: f969 bnez a0,c00374f8 - c0037528: bf71 j c00374c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46345 (discriminator 1) + c00376f6: f969 bnez a0,c00376c8 + c00376f8: bf71 j c0037694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46353 (discriminator 1) !js_same_value(ctx, getter, desc.getter)) { - c003752a: 66da ld a3,400(sp) - c003752c: 677a ld a4,408(sp) - c003752e: 7582 ld a1,32(sp) - c0037530: 7622 ld a2,40(sp) - c0037532: 8526 mv a0,s1 - c0037534: f8ed00ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46344 (discriminator 1) + c00376fa: 66da ld a3,400(sp) + c00376fc: 677a ld a4,408(sp) + c00376fe: 7582 ld a1,32(sp) + c0037700: 7622 ld a2,40(sp) + c0037702: 8526 mv a0,s1 + c0037704: eacd00ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46352 (discriminator 1) if ((flags & JS_PROP_HAS_GET) && - c0037538: fd61 bnez a0,c0037510 - c003753a: b769 j c00374c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46353 + c0037708: fd61 bnez a0,c00376e0 + c003770a: b769 j c0037694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46361 } else if (flags & JS_PROP_HAS_VALUE) { - c003753c: 00d45793 srli a5,s0,0xd - c0037540: 8b85 andi a5,a5,1 - c0037542: dbdd beqz a5,c00374f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46354 + c003770c: 00d45793 srli a5,s0,0xd + c0037710: 8b85 andi a5,a5,1 + c0037712: dbdd beqz a5,c00376c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46362 if ((desc.flags & (JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == - c0037544: 00397913 andi s2,s2,3 - c0037548: 4789 li a5,2 - c003754a: 00f91663 bne s2,a5,c0037556 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46355 + c0037714: 00397913 andi s2,s2,3 + c0037718: 4789 li a5,2 + c003771a: 00f91663 bne s2,a5,c0037726 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46363 JS_PROP_WRITABLE && !(flags & JS_PROP_WRITABLE)) { - c003754e: 00247793 andi a5,s0,2 - c0037552: f3dd bnez a5,c00374f8 - c0037554: bf85 j c00374c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46358 + c003771e: 00247793 andi a5,s0,2 + c0037722: f3dd bnez a5,c00376c8 + c0037724: bf85 j c0037694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46366 } else if ((desc.flags & (JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0 && - c0037556: fa0911e3 bnez s2,c00374f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46359 (discriminator 1) + c0037726: fa0911e3 bnez s2,c00376c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46367 (discriminator 1) !js_same_value(ctx, val, desc.value)) { - c003755a: 669a ld a3,384(sp) - c003755c: 673a ld a4,392(sp) - c003755e: 75c2 ld a1,48(sp) - c0037560: 7662 ld a2,56(sp) - c0037562: bf7d j c0037520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46364 + c003772a: 669a ld a3,384(sp) + c003772c: 673a ld a4,392(sp) + c003772e: 75c2 ld a1,48(sp) + c0037730: 7662 ld a2,56(sp) + c0037732: bf7d j c00376f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46372 if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE | - c0037564: 17812783 lw a5,376(sp) - c0037568: 4709 li a4,2 - c003756a: 8bcd andi a5,a5,19 - c003756c: f8e799e3 bne a5,a4,c00374fe - c0037570: bf91 j c00374c4 + c0037734: 17812783 lw a5,376(sp) + c0037738: 4709 li a4,2 + c003773a: 8bcd andi a5,a5,19 + c003773c: f8e799e3 bne a5,a4,c00376ce + c0037740: bf91 j c0037694 -00000000c0037572 : +00000000c0037742 : js_proxy_delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46381 -{ - c0037572: 7155 addi sp,sp,-208 - c0037574: 87b2 mv a5,a2 - c0037576: f54e sd s3,168(sp) - c0037578: e02e sd a1,0(sp) - c003757a: e432 sd a2,8(sp) - c003757c: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46389 +{ + c0037742: 7155 addi sp,sp,-208 + c0037744: 87b2 mv a5,a2 + c0037746: f54e sd s3,168(sp) + c0037748: e02e sd a1,0(sp) + c003774a: e432 sd a2,8(sp) + c003774c: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46395 s = get_proxy_method(ctx, &method, obj, JS_ATOM_deleteProperty); - c003757e: 862e mv a2,a1 - c0037580: 06500713 li a4,101 - c0037584: 86be mv a3,a5 - c0037586: 082c addi a1,sp,24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46381 -{ - c0037588: e1a2 sd s0,192(sp) - c003758a: e586 sd ra,200(sp) - c003758c: fd26 sd s1,184(sp) - c003758e: f94a sd s2,176(sp) - c0037590: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46387 + c003774e: 862e mv a2,a1 + c0037750: 06500713 li a4,101 + c0037754: 86be mv a3,a5 + c0037756: 082c addi a1,sp,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46389 +{ + c0037758: e1a2 sd s0,192(sp) + c003775a: e586 sd ra,200(sp) + c003775c: fd26 sd s1,184(sp) + c003775e: f94a sd s2,176(sp) + c0037760: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46395 s = get_proxy_method(ctx, &method, obj, JS_ATOM_deleteProperty); - c0037592: dd9dc0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46388 + c0037762: cf7dc0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46396 if (!s) - c0037596: e119 bnez a0,c003759c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46409 (discriminator 1) + c0037766: e119 bnez a0,c003776c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46417 (discriminator 1) return -1; - c0037598: 597d li s2,-1 - c003759a: a831 j c00375b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46390 + c0037768: 597d li s2,-1 + c003776a: a831 j c0037786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46398 if (JS_IsUndefined(method)) { - c003759c: 5702 lw a4,32(sp) - c003759e: 478d li a5,3 - c00375a0: 84aa mv s1,a0 - c00375a2: 02f71263 bne a4,a5,c00375c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46391 + c003776c: 5702 lw a4,32(sp) + c003776e: 478d li a5,3 + c0037770: 84aa mv s1,a0 + c0037772: 02f71263 bne a4,a5,c0037796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46399 return JS_DeleteProperty(ctx, s->target, atom, 0); - c00375a6: 610c ld a1,0(a0) - c00375a8: 6510 ld a2,8(a0) - c00375aa: 4701 li a4,0 - c00375ac: 86ce mv a3,s3 - c00375ae: 8522 mv a0,s0 - c00375b0: a70f10ef jal ra,c0028820 - c00375b4: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46428 -} - c00375b6: 60ae ld ra,200(sp) - c00375b8: 640e ld s0,192(sp) - c00375ba: 74ea ld s1,184(sp) - c00375bc: 79aa ld s3,168(sp) - c00375be: 854a mv a0,s2 - c00375c0: 794a ld s2,176(sp) - c00375c2: 6169 addi sp,sp,208 - c00375c4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46393 + c0037776: 610c ld a1,0(a0) + c0037778: 6510 ld a2,8(a0) + c003777a: 4701 li a4,0 + c003777c: 86ce mv a3,s3 + c003777e: 8522 mv a0,s0 + c0037780: a70f10ef jal ra,c00289f0 + c0037784: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46436 +} + c0037786: 60ae ld ra,200(sp) + c0037788: 640e ld s0,192(sp) + c003778a: 74ea ld s1,184(sp) + c003778c: 79aa ld s3,168(sp) + c003778e: 854a mv a0,s2 + c0037790: 794a ld s2,176(sp) + c0037792: 6169 addi sp,sp,208 + c0037794: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46401 atom_val = JS_AtomToValue(ctx, atom);; - c00375c6: 85ce mv a1,s3 - c00375c8: 8522 mv a0,s0 - c00375ca: d68e20ef jal ra,c0019b32 - c00375ce: fc2a sd a0,56(sp) - c00375d0: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46394 + c0037796: 85ce mv a1,s3 + c0037798: 8522 mv a0,s0 + c003779a: d68e20ef jal ra,c0019d02 + c003779e: fc2a sd a0,56(sp) + c00377a0: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46402 if (JS_IsException(atom_val)) { - c00375d2: 0005879b sext.w a5,a1 - c00375d6: 4919 li s2,6 - c00375d8: 01279863 bne a5,s2,c00375e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46395 + c00377a2: 0005879b sext.w a5,a1 + c00377a6: 4919 li s2,6 + c00377a8: 01279863 bne a5,s2,c00377b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46403 JS_FreeValue(ctx, method); - c00375dc: 65e2 ld a1,24(sp) - c00375de: 7602 ld a2,32(sp) - c00375e0: 8522 mv a0,s0 - c00375e2: d56d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46396 + c00377ac: 65e2 ld a1,24(sp) + c00377ae: 7602 ld a2,32(sp) + c00377b0: 8522 mv a0,s0 + c00377b2: c74d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46404 return -1; - c00375e6: bf4d j c0037598 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46398 + c00377b6: bf4d j c0037768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46406 args[0] = s->target; - c00375e8: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46400 + c00377b8: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46408 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c00375ea: 7602 ld a2,32(sp) - c00375ec: 04810813 addi a6,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46398 + c00377ba: 7602 ld a2,32(sp) + c00377bc: 04810813 addi a6,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46406 args[0] = s->target; - c00375f0: e4be sd a5,72(sp) - c00375f2: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46399 + c00377c0: e4be sd a5,72(sp) + c00377c2: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46407 args[1] = atom_val; - c00375f4: ecaa sd a0,88(sp) - c00375f6: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46398 + c00377c4: ecaa sd a0,88(sp) + c00377c6: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46406 args[0] = s->target; - c00375f8: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46400 + c00377c8: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46408 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c00375fa: 6894 ld a3,16(s1) - c00375fc: 6c98 ld a4,24(s1) - c00375fe: 65e2 ld a1,24(sp) - c0037600: 4789 li a5,2 - c0037602: 8522 mv a0,s0 - c0037604: a08da0ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46401 + c00377ca: 6894 ld a3,16(s1) + c00377cc: 6c98 ld a4,24(s1) + c00377ce: 65e2 ld a1,24(sp) + c00377d0: 4789 li a5,2 + c00377d2: 8522 mv a0,s0 + c00377d4: 926da0ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46409 JS_FreeValue(ctx, atom_val); - c0037608: 6606 ld a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46400 + c00377d8: 6606 ld a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46408 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c003760a: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46401 + c00377da: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46409 JS_FreeValue(ctx, atom_val); - c003760c: 75e2 ld a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46400 + c00377dc: 75e2 ld a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46408 ret = JS_CallFree(ctx, method, s->handler, 2, args); - c003760e: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46401 + c00377de: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46409 JS_FreeValue(ctx, atom_val); - c0037610: 8522 mv a0,s0 - c0037612: d26d00ef jal ra,c0007b38 + c00377e0: 8522 mv a0,s0 + c00377e2: c44d00ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c0037616: 7642 ld a2,48(sp) + c00377e6: 7642 ld a2,48(sp) js_proxy_delete_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46402 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46410 if (JS_IsException(ret)) - c0037618: 0006079b sext.w a5,a2 - c003761c: f7278ee3 beq a5,s2,c0037598 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46404 + c00377e8: 0006079b sext.w a5,a2 + c00377ec: f7278ee3 beq a5,s2,c0037768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46412 res = JS_ToBoolFree(ctx, ret); - c0037620: 75a2 ld a1,40(sp) - c0037622: 8522 mv a0,s0 - c0037624: 841d00ef jal ra,c0007e64 - c0037628: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46405 + c00377f0: 75a2 ld a1,40(sp) + c00377f2: 8522 mv a0,s0 + c00377f4: f5ed00ef jal ra,c0007f52 + c00377f8: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46413 if (res) { - c003762a: d551 beqz a0,c00375b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46407 + c00377fa: d551 beqz a0,c0037786 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46415 res2 = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), atom); - c003762c: 6090 ld a2,0(s1) - c003762e: 86ce mv a3,s3 - c0037630: 10ac addi a1,sp,104 - c0037632: 8522 mv a0,s0 - c0037634: 8d1da0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46408 + c00377fc: 6090 ld a2,0(s1) + c00377fe: 86ce mv a3,s3 + c0037800: 10ac addi a1,sp,104 + c0037802: 8522 mv a0,s0 + c0037804: feeda0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46416 if (res2 < 0) - c0037638: f60540e3 bltz a0,c0037598 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46410 + c0037808: f60540e3 bltz a0,c0037768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46418 if (res2) { - c003763c: dd2d beqz a0,c00375b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46411 - if (!(desc.flags & JS_PROP_CONFIGURABLE)) - c003763e: 57a6 lw a5,104(sp) - c0037640: 8b85 andi a5,a5,1 - c0037642: ef89 bnez a5,c003765c + c003780c: dd2d beqz a0,c0037786 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46419 + if (!(desc.flags & JS_PROP_CONFIGURABLE)) + c003780e: 57a6 lw a5,104(sp) + c0037810: 8b85 andi a5,a5,1 + c0037812: ef89 bnez a5,c003782c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46427 JS_ThrowTypeError(ctx, "proxy: inconsistent deleteProperty"); - c0037644: 00029597 auipc a1,0x29 - c0037648: 1bc58593 addi a1,a1,444 # c0060800 - c003764c: 8522 mv a0,s0 - c003764e: da9db0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46421 + c0037814: 00029597 auipc a1,0x29 + c0037818: 24c58593 addi a1,a1,588 # c0060a60 + c003781c: 8522 mv a0,s0 + c003781e: cc7db0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46429 js_free_desc(ctx, &desc); - c0037652: 10ac addi a1,sp,104 - c0037654: 8522 mv a0,s0 - c0037656: fded00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46422 + c0037822: 10ac addi a1,sp,104 + c0037824: 8522 mv a0,s0 + c0037826: efcd00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46430 return -1; - c003765a: bf3d j c0037598 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46413 + c003782a: bf3d j c0037768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46421 is_extensible = JS_IsExtensible(ctx, s->target); - c003765c: 608c ld a1,0(s1) - c003765e: 6490 ld a2,8(s1) - c0037660: 8522 mv a0,s0 - c0037662: d7ddc0ef jal ra,c00143de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46414 + c003782c: 608c ld a1,0(s1) + c003782e: 6490 ld a2,8(s1) + c0037830: 8522 mv a0,s0 + c0037832: c9bdc0ef jal ra,c00144cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46422 if (is_extensible < 0) - c0037666: fe0546e3 bltz a0,c0037652 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46416 - if (!is_extensible) { - c003766a: dd69 beqz a0,c0037644 + c0037836: fe0546e3 bltz a0,c0037822 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46424 + if (!is_extensible) { + c003783a: dd69 beqz a0,c0037814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46432 js_free_desc(ctx, &desc); - c003766c: 10ac addi a1,sp,104 - c003766e: 8522 mv a0,s0 - c0037670: fc4d00ef jal ra,c0007e34 - c0037674: b789 j c00375b6 + c003783c: 10ac addi a1,sp,104 + c003783e: 8522 mv a0,s0 + c0037840: ee2d00ef jal ra,c0007f22 + c0037844: b789 j c0037786 -00000000c0037676 : +00000000c0037846 : js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46445 -{ - c0037676: 7151 addi sp,sp,-240 - c0037678: 87ba mv a5,a4 - c003767a: fd56 sd s5,184(sp) - c003767c: f95a sd s6,176(sp) - c003767e: 8aae mv s5,a1 - c0037680: 8b32 mv s6,a2 - c0037682: e036 sd a3,0(sp) - c0037684: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46454 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46453 +{ + c0037846: 7151 addi sp,sp,-240 + c0037848: 87ba mv a5,a4 + c003784a: fd56 sd s5,184(sp) + c003784c: f95a sd s6,176(sp) + c003784e: 8aae mv s5,a1 + c0037850: 8b32 mv s6,a2 + c0037852: e036 sd a3,0(sp) + c0037854: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46462 s = get_proxy_method(ctx, &method, obj, JS_ATOM_ownKeys); - c0037686: 8636 mv a2,a3 - c0037688: 06800713 li a4,104 - c003768c: 86be mv a3,a5 - c003768e: 102c addi a1,sp,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46445 -{ - c0037690: f1a2 sd s0,224(sp) - c0037692: f586 sd ra,232(sp) - c0037694: eda6 sd s1,216(sp) - c0037696: e9ca sd s2,208(sp) - c0037698: e5ce sd s3,200(sp) - c003769a: e1d2 sd s4,192(sp) - c003769c: f55e sd s7,168(sp) - c003769e: f162 sd s8,160(sp) - c00376a0: ed66 sd s9,152(sp) - c00376a2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46454 + c0037856: 8636 mv a2,a3 + c0037858: 06800713 li a4,104 + c003785c: 86be mv a3,a5 + c003785e: 102c addi a1,sp,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46453 +{ + c0037860: f1a2 sd s0,224(sp) + c0037862: f586 sd ra,232(sp) + c0037864: eda6 sd s1,216(sp) + c0037866: e9ca sd s2,208(sp) + c0037868: e5ce sd s3,200(sp) + c003786a: e1d2 sd s4,192(sp) + c003786c: f55e sd s7,168(sp) + c003786e: f162 sd s8,160(sp) + c0037870: ed66 sd s9,152(sp) + c0037872: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46462 s = get_proxy_method(ctx, &method, obj, JS_ATOM_ownKeys); - c00376a4: cc7dc0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46455 + c0037874: be5dc0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46463 if (!s) - c00376a8: e119 bnez a0,c00376ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46556 + c0037878: e119 bnez a0,c003787e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46564 return -1; - c00376aa: 59fd li s3,-1 - c00376ac: a005 j c00376cc + c003787a: 59fd li s3,-1 + c003787c: a005 j c003789c JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00376ae: 7642 ld a2,48(sp) + c003787e: 7642 ld a2,48(sp) js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46457 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46465 if (JS_IsUndefined(method)) { - c00376b0: 478d li a5,3 - c00376b2: 84aa mv s1,a0 - c00376b4: 0006071b sext.w a4,a2 - c00376b8: 02f71863 bne a4,a5,c00376e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46458 + c0037880: 478d li a5,3 + c0037882: 84aa mv s1,a0 + c0037884: 0006071b sext.w a4,a2 + c0037888: 02f71863 bne a4,a5,c00378b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46466 return JS_GetOwnPropertyNamesInternal(ctx, ptab, plen, - c00376bc: 6114 ld a3,0(a0) - c00376be: 470d li a4,3 - c00376c0: 865a mv a2,s6 - c00376c2: 85d6 mv a1,s5 - c00376c4: 8522 mv a0,s0 - c00376c6: ee5f80ef jal ra,c00305aa - c00376ca: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46557 -} - c00376cc: 70ae ld ra,232(sp) - c00376ce: 740e ld s0,224(sp) - c00376d0: 64ee ld s1,216(sp) - c00376d2: 694e ld s2,208(sp) - c00376d4: 6a0e ld s4,192(sp) - c00376d6: 7aea ld s5,184(sp) - c00376d8: 7b4a ld s6,176(sp) - c00376da: 7baa ld s7,168(sp) - c00376dc: 7c0a ld s8,160(sp) - c00376de: 6cea ld s9,152(sp) - c00376e0: 854e mv a0,s3 - c00376e2: 69ae ld s3,200(sp) - c00376e4: 616d addi sp,sp,240 - c00376e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46462 + c003788c: 6114 ld a3,0(a0) + c003788e: 470d li a4,3 + c0037890: 865a mv a2,s6 + c0037892: 85d6 mv a1,s5 + c0037894: 8522 mv a0,s0 + c0037896: ee5f80ef jal ra,c003077a + c003789a: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46565 +} + c003789c: 70ae ld ra,232(sp) + c003789e: 740e ld s0,224(sp) + c00378a0: 64ee ld s1,216(sp) + c00378a2: 694e ld s2,208(sp) + c00378a4: 6a0e ld s4,192(sp) + c00378a6: 7aea ld s5,184(sp) + c00378a8: 7b4a ld s6,176(sp) + c00378aa: 7baa ld s7,168(sp) + c00378ac: 7c0a ld s8,160(sp) + c00378ae: 6cea ld s9,152(sp) + c00378b0: 854e mv a0,s3 + c00378b2: 69ae ld s3,200(sp) + c00378b4: 616d addi sp,sp,240 + c00378b6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46470 prop_array = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c00376e8: 6914 ld a3,16(a0) - c00376ea: 6d18 ld a4,24(a0) - c00376ec: 75a2 ld a1,40(sp) - c00376ee: 882a mv a6,a0 - c00376f0: 4785 li a5,1 - c00376f2: 8522 mv a0,s0 - c00376f4: 918da0ef jal ra,c001180c - c00376f8: fc2a sd a0,56(sp) - c00376fa: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46463 + c00378b8: 6914 ld a3,16(a0) + c00378ba: 6d18 ld a4,24(a0) + c00378bc: 75a2 ld a1,40(sp) + c00378be: 882a mv a6,a0 + c00378c0: 4785 li a5,1 + c00378c2: 8522 mv a0,s0 + c00378c4: 836da0ef jal ra,c00118fa + c00378c8: fc2a sd a0,56(sp) + c00378ca: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46471 if (JS_IsException(prop_array)) - c00376fc: 0005871b sext.w a4,a1 - c0037700: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46462 + c00378cc: 0005871b sext.w a4,a1 + c00378d0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46470 prop_array = JS_CallFree(ctx, method, s->handler, 1, (JSValueConst *)&s->target); - c0037702: 862a mv a2,a0 - c0037704: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46463 + c00378d2: 862a mv a2,a0 + c00378d4: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46471 if (JS_IsException(prop_array)) - c0037706: faf702e3 beq a4,a5,c00376aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46469 + c00378d6: faf702e3 beq a4,a5,c003787a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46477 if (js_get_length32(ctx, &len, prop_array)) - c003770a: 082c addi a1,sp,24 - c003770c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46466 + c00378da: 082c addi a1,sp,24 + c00378dc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46474 len = 0; - c003770e: cc02 sw zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46467 + c00378de: cc02 sw zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46475 tab2 = NULL; - c0037710: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46468 + c00378e0: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46476 len2 = 0; - c0037712: ce02 sw zero,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46469 + c00378e2: ce02 sw zero,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46477 if (js_get_length32(ctx, &len, prop_array)) - c0037714: c07e40ef jal ra,c001c31a - c0037718: 1a051f63 bnez a0,c00378d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46471 + c00378e4: c07e40ef jal ra,c001c4ea + c00378e8: 1a051f63 bnez a0,c0037aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46479 if (len > 0) { - c003771c: 45e2 lw a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46465 + c00378ec: 45e2 lw a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46473 tab = NULL; - c003771e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46471 + c00378ee: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46479 if (len > 0) { - c0037720: c999 beqz a1,c0037736 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46472 + c00378f0: c999 beqz a1,c0037906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46480 tab = js_mallocz(ctx, sizeof(tab[0]) * len); - c0037722: 02059793 slli a5,a1,0x20 - c0037726: 01d7d593 srli a1,a5,0x1d - c003772a: 8522 mv a0,s0 - c003772c: db0de0ef jal ra,c0015cdc - c0037730: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46473 + c00378f2: 02059793 slli a5,a1,0x20 + c00378f6: 01d7d593 srli a1,a5,0x1d + c00378fa: 8522 mv a0,s0 + c00378fc: db0de0ef jal ra,c0015eac + c0037900: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46481 if (!tab) - c0037732: 1a050263 beqz a0,c00378d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46476 + c0037902: 1a050263 beqz a0,c0037aa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46484 for(i = 0; i < len; i++) { - c0037736: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46478 + c0037906: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46486 if (JS_IsException(val)) - c0037738: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46480 + c0037908: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46488 if (!JS_IsString(val) && !JS_IsSymbol(val)) { - c003773a: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46476 (discriminator 1) + c003790a: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46484 (discriminator 1) for(i = 0; i < len; i++) { - c003773c: 45e2 lw a1,24(sp) - c003773e: 04b9e563 bltu s3,a1,c0037788 - c0037742: 00c90713 addi a4,s2,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46495 + c003790c: 45e2 lw a1,24(sp) + c003790e: 04b9e563 bltu s3,a1,c0037958 + c0037912: 00c90713 addi a4,s2,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46503 for(i = 1; i < len; i++) { - c0037746: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46495 (discriminator 1) - c0037748: 0ab7e363 bltu a5,a1,c00377ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46502 + c0037916: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46503 (discriminator 1) + c0037918: 0ab7e363 bltu a5,a1,c00379be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46510 is_extensible = JS_IsExtensible(ctx, s->target); - c003774c: 608c ld a1,0(s1) - c003774e: 6490 ld a2,8(s1) - c0037750: 8522 mv a0,s0 - c0037752: c8ddc0ef jal ra,c00143de - c0037756: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46503 + c003791c: 608c ld a1,0(s1) + c003791e: 6490 ld a2,8(s1) + c0037920: 8522 mv a0,s0 + c0037922: babdc0ef jal ra,c00144cc + c0037926: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46511 if (is_extensible < 0) - c0037758: 00054863 bltz a0,c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46507 + c0037928: 00054863 bltz a0,c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46515 if (s->is_revoked) { - c003775c: 0214c783 lbu a5,33(s1) - c0037760: cbd5 beqz a5,c0037814 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46516 + c003792c: 0214c783 lbu a5,33(s1) + c0037930: cbd5 beqz a5,c00379e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46524 JS_ThrowTypeErrorRevokedProxy(ctx); - c0037762: 8522 mv a0,s0 - c0037764: b5bdc0ef jal ra,c00142be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46553 + c0037932: 8522 mv a0,s0 + c0037934: a79dc0ef jal ra,c00143ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46561 js_free_prop_enum(ctx, tab2, len2); - c0037768: 4672 lw a2,28(sp) - c003776a: 7582 ld a1,32(sp) - c003776c: 8522 mv a0,s0 - c003776e: dafcf0ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46554 + c0037938: 4672 lw a2,28(sp) + c003793a: 7582 ld a1,32(sp) + c003793c: 8522 mv a0,s0 + c003793e: ccdcf0ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46562 js_free_prop_enum(ctx, tab, len); - c0037772: 4662 lw a2,24(sp) - c0037774: 85ca mv a1,s2 - c0037776: 8522 mv a0,s0 - c0037778: da5cf0ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46555 + c0037942: 4662 lw a2,24(sp) + c0037944: 85ca mv a1,s2 + c0037946: 8522 mv a0,s0 + c0037948: cc3cf0ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46563 JS_FreeValue(ctx, prop_array); - c003777c: 75e2 ld a1,56(sp) - c003777e: 6606 ld a2,64(sp) - c0037780: 8522 mv a0,s0 - c0037782: bb6d00ef jal ra,c0007b38 - c0037786: b715 j c00376aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46477 + c003794c: 75e2 ld a1,56(sp) + c003794e: 6606 ld a2,64(sp) + c0037950: 8522 mv a0,s0 + c0037952: ad4d00ef jal ra,c0007c26 + c0037956: b715 j c003787a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46485 val = JS_GetPropertyUint32(ctx, prop_array, i); - c0037788: 6606 ld a2,64(sp) - c003778a: 75e2 ld a1,56(sp) - c003778c: 86ce mv a3,s3 - c003778e: 8522 mv a0,s0 - c0037790: f3cda0ef jal ra,c0011ecc - c0037794: e4aa sd a0,72(sp) - c0037796: e8ae sd a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46478 + c0037958: 6606 ld a2,64(sp) + c003795a: 75e2 ld a1,56(sp) + c003795c: 86ce mv a3,s3 + c003795e: 8522 mv a0,s0 + c0037960: e5ada0ef jal ra,c0011fba + c0037964: e4aa sd a0,72(sp) + c0037966: e8ae sd a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46486 if (JS_IsException(val)) - c0037798: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46477 + c0037968: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46485 val = JS_GetPropertyUint32(ctx, prop_array, i); - c003779c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46478 + c003796c: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46486 if (JS_IsException(val)) - c003779e: fd4785e3 beq a5,s4,c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46480 (discriminator 1) + c003796e: fd4785e3 beq a5,s4,c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46488 (discriminator 1) if (!JS_IsString(val) && !JS_IsSymbol(val)) { - c00377a2: 0085879b addiw a5,a1,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46481 (discriminator 1) + c0037972: 0085879b addiw a5,a1,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46489 (discriminator 1) JS_FreeValue(ctx, val); - c00377a6: 85aa mv a1,a0 - c00377a8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46480 (discriminator 1) + c0037976: 85aa mv a1,a0 + c0037978: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46488 (discriminator 1) if (!JS_IsString(val) && !JS_IsSymbol(val)) { - c00377aa: 00fbfc63 bgeu s7,a5,c00377c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46481 + c003797a: 00fbfc63 bgeu s7,a5,c0037992 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46489 JS_FreeValue(ctx, val); - c00377ae: b8ad00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46482 + c003797e: aa8d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46490 JS_ThrowTypeError(ctx, "proxy: properties must be strings or symbols"); - c00377b2: 00029597 auipc a1,0x29 - c00377b6: 07658593 addi a1,a1,118 # c0060828 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46528 + c0037982: 00029597 auipc a1,0x29 + c0037986: 10658593 addi a1,a1,262 # c0060a88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46536 JS_ThrowTypeError(ctx, "proxy: target property must be present in proxy ownKeys"); - c00377ba: 8522 mv a0,s0 - c00377bc: c3bdb0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46529 + c003798a: 8522 mv a0,s0 + c003798c: b59db0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46537 goto fail; - c00377c0: b765 j c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46485 + c0037990: b765 j c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46493 atom = JS_ValueToAtom(ctx, val); - c00377c2: e5be90ef jal ra,c002161c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46486 + c0037992: e5be90ef jal ra,c00217ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46494 JS_FreeValue(ctx, val); - c00377c6: 65a6 ld a1,72(sp) - c00377c8: 6646 ld a2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46485 + c0037996: 65a6 ld a1,72(sp) + c0037998: 6646 ld a2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46493 atom = JS_ValueToAtom(ctx, val); - c00377ca: 00050c1b sext.w s8,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46486 + c003799a: 00050c1b sext.w s8,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46494 JS_FreeValue(ctx, val); - c00377ce: 8522 mv a0,s0 - c00377d0: b68d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46487 + c003799e: 8522 mv a0,s0 + c00379a0: a86d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46495 if (atom == JS_ATOM_NULL) - c00377d4: f80c0ae3 beqz s8,c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46489 (discriminator 2) + c00379a4: f80c0ae3 beqz s8,c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46497 (discriminator 2) tab[i].atom = atom; - c00377d8: 02099713 slli a4,s3,0x20 - c00377dc: 01d75793 srli a5,a4,0x1d - c00377e0: 97ca add a5,a5,s2 - c00377e2: 0187a223 sw s8,4(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46490 (discriminator 2) + c00379a8: 02099713 slli a4,s3,0x20 + c00379ac: 01d75793 srli a5,a4,0x1d + c00379b0: 97ca add a5,a5,s2 + c00379b2: 0187a223 sw s8,4(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46498 (discriminator 2) tab[i].is_enumerable = FALSE; /* XXX: redundant? */ - c00377e6: 0007a023 sw zero,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46476 (discriminator 2) + c00379b6: 0007a023 sw zero,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46484 (discriminator 2) for(i = 0; i < len; i++) { - c00377ea: 2985 addiw s3,s3,1 - c00377ec: bf81 j c003773c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46496 + c00379ba: 2985 addiw s3,s3,1 + c00379bc: bf81 j c003790c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46504 if (find_prop_key(tab, i, tab[i].atom) >= 0) { - c00377ee: 00072803 lw a6,0(a4) + c00379be: 00072803 lw a6,0(a4) find_prop_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46442 for(i = 0; i < n; i++) { - c00377f2: 00490613 addi a2,s2,4 - c00377f6: 4681 li a3,0 - c00377f8: 0007851b sext.w a0,a5 - c00377fc: 00a6c563 blt a3,a0,c0037806 + c00379c2: 00490613 addi a2,s2,4 + c00379c6: 4681 li a3,0 + c00379c8: 0007851b sext.w a0,a5 + c00379cc: 00a6c563 blt a3,a0,c00379d6 js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46495 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46503 for(i = 1; i < len; i++) { - c0037800: 2785 addiw a5,a5,1 - c0037802: 0721 addi a4,a4,8 - c0037804: b791 j c0037748 + c00379d0: 2785 addiw a5,a5,1 + c00379d2: 0721 addi a4,a4,8 + c00379d4: b791 j c0037918 find_prop_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46435 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46443 if (tab[i].atom == atom) - c0037806: 00062883 lw a7,0(a2) - c003780a: 0621 addi a2,a2,8 - c003780c: 0d088763 beq a7,a6,c00378da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46434 + c00379d6: 00062883 lw a7,0(a2) + c00379da: 0621 addi a2,a2,8 + c00379dc: 0d088763 beq a7,a6,c0037aaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46442 for(i = 0; i < n; i++) { - c0037810: 2685 addiw a3,a3,1 - c0037812: b7ed j c00377fc + c00379e0: 2685 addiw a3,a3,1 + c00379e2: b7ed j c00379cc js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46511 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46519 if (JS_GetOwnPropertyNamesInternal(ctx, &tab2, &len2, JS_VALUE_GET_OBJ(s->target), - c0037814: 6094 ld a3,0(s1) - c0037816: 470d li a4,3 - c0037818: 0870 addi a2,sp,28 - c003781a: 100c addi a1,sp,32 - c003781c: 8522 mv a0,s0 - c003781e: d8df80ef jal ra,c00305aa - c0037822: 89aa mv s3,a0 - c0037824: f131 bnez a0,c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46514 + c00379e4: 6094 ld a3,0(s1) + c00379e6: 470d li a4,3 + c00379e8: 0870 addi a2,sp,28 + c00379ea: 100c addi a1,sp,32 + c00379ec: 8522 mv a0,s0 + c00379ee: d8df80ef jal ra,c003077a + c00379f2: 89aa mv s3,a0 + c00379f4: f131 bnez a0,c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46522 for(i = 0; i < len2; i++) { - c0037826: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46533 + c00379f6: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46541 tab[idx].is_enumerable = TRUE; - c0037828: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46514 (discriminator 1) + c00379f8: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46522 (discriminator 1) for(i = 0; i < len2; i++) { - c003782a: 4672 lw a2,28(sp) - c003782c: 02cbe963 bltu s7,a2,c003785e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46537 + c00379fa: 4672 lw a2,28(sp) + c00379fc: 02cbe963 bltu s7,a2,c0037a2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46545 if (!is_extensible) { - c0037830: 000a1863 bnez s4,c0037840 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46539 - for(i = 0; i < len; i++) { - c0037834: 46e2 lw a3,24(sp) - c0037836: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46539 (discriminator 1) - c0037838: 0007871b sext.w a4,a5 - c003783c: 08d76163 bltu a4,a3,c00378be + c0037a00: 000a1863 bnez s4,c0037a10 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46547 + for(i = 0; i < len; i++) { + c0037a04: 46e2 lw a3,24(sp) + c0037a06: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46547 (discriminator 1) + c0037a08: 0007871b sext.w a4,a5 + c0037a0c: 08d76163 bltu a4,a3,c0037a8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46555 js_free_prop_enum(ctx, tab2, len2); - c0037840: 7582 ld a1,32(sp) - c0037842: 8522 mv a0,s0 - c0037844: cd9cf0ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46548 + c0037a10: 7582 ld a1,32(sp) + c0037a12: 8522 mv a0,s0 + c0037a14: bf7cf0ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46556 JS_FreeValue(ctx, prop_array); - c0037848: 75e2 ld a1,56(sp) - c003784a: 6606 ld a2,64(sp) - c003784c: 8522 mv a0,s0 - c003784e: aead00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46550 + c0037a18: 75e2 ld a1,56(sp) + c0037a1a: 6606 ld a2,64(sp) + c0037a1c: 8522 mv a0,s0 + c0037a1e: a08d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46558 *plen = len; - c0037852: 47e2 lw a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46549 + c0037a22: 47e2 lw a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46557 *ptab = tab; - c0037854: 012ab023 sd s2,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46550 + c0037a24: 012ab023 sd s2,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46558 *plen = len; - c0037858: 00fb2023 sw a5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46551 + c0037a28: 00fb2023 sw a5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46559 return 0; - c003785c: bd85 j c00376cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46515 + c0037a2c: bd85 j c003789c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46523 if (s->is_revoked) { - c003785e: 0214c783 lbu a5,33(s1) - c0037862: f00790e3 bnez a5,c0037762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46520 + c0037a2e: 0214c783 lbu a5,33(s1) + c0037a32: f00790e3 bnez a5,c0037932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46528 tab2[i].atom); - c0037866: 020b9793 slli a5,s7,0x20 - c003786a: 01d7dc93 srli s9,a5,0x1d -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46519 + c0037a36: 020b9793 slli a5,s7,0x20 + c0037a3a: 01d7dc93 srli s9,a5,0x1d +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46527 res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), - c003786e: 7782 ld a5,32(sp) - c0037870: 6090 ld a2,0(s1) - c0037872: 08ac addi a1,sp,88 - c0037874: 97e6 add a5,a5,s9 - c0037876: 43d4 lw a3,4(a5) - c0037878: 8522 mv a0,s0 - c003787a: e8ada0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46521 + c0037a3e: 7782 ld a5,32(sp) + c0037a40: 6090 ld a2,0(s1) + c0037a42: 08ac addi a1,sp,88 + c0037a44: 97e6 add a5,a5,s9 + c0037a46: 43d4 lw a3,4(a5) + c0037a48: 8522 mv a0,s0 + c0037a4a: da8da0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46529 if (res < 0) - c003787e: ee0545e3 bltz a0,c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46523 + c0037a4e: ee0545e3 bltz a0,c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46531 if (res) { /* safety, property should be found */ - c0037882: c52d beqz a0,c00378ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46524 + c0037a52: c52d beqz a0,c0037abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46532 js_free_desc(ctx, &desc); - c0037884: 08ac addi a1,sp,88 - c0037886: 8522 mv a0,s0 - c0037888: dacd00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46525 + c0037a54: 08ac addi a1,sp,88 + c0037a56: 8522 mv a0,s0 + c0037a58: ccad00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46533 if (!(desc.flags & JS_PROP_CONFIGURABLE) || !is_extensible) { - c003788c: 47e6 lw a5,88(sp) - c003788e: 8b85 andi a5,a5,1 - c0037890: c399 beqz a5,c0037896 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46525 (discriminator 1) - c0037892: 040a1d63 bnez s4,c00378ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46526 + c0037a5c: 47e6 lw a5,88(sp) + c0037a5e: 8b85 andi a5,a5,1 + c0037a60: c399 beqz a5,c0037a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46533 (discriminator 1) + c0037a62: 040a1d63 bnez s4,c0037abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46534 idx = find_prop_key(tab, len, tab2[i].atom); - c0037896: 7782 ld a5,32(sp) - c0037898: 4662 lw a2,24(sp) + c0037a66: 7782 ld a5,32(sp) + c0037a68: 4662 lw a2,24(sp) find_prop_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46442 for(i = 0; i < n; i++) { - c003789a: 4701 li a4,0 + c0037a6a: 4701 li a4,0 js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46534 idx = find_prop_key(tab, len, tab2[i].atom); - c003789c: 97e6 add a5,a5,s9 - c003789e: 43cc lw a1,4(a5) + c0037a6c: 97e6 add a5,a5,s9 + c0037a6e: 43cc lw a1,4(a5) find_prop_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46442 for(i = 0; i < n; i++) { - c00378a0: 87ca mv a5,s2 - c00378a2: 00c74763 blt a4,a2,c00378b0 + c0037a70: 87ca mv a5,s2 + c0037a72: 00c74763 blt a4,a2,c0037a80 js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46536 JS_ThrowTypeError(ctx, "proxy: target property must be present in proxy ownKeys"); - c00378a6: 00029597 auipc a1,0x29 - c00378aa: 02258593 addi a1,a1,34 # c00608c8 - c00378ae: b731 j c00377ba + c0037a76: 00029597 auipc a1,0x29 + c0037a7a: 0b258593 addi a1,a1,178 # c0060b28 + c0037a7e: b731 j c003798a find_prop_key(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46435 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46443 if (tab[i].atom == atom) - c00378b0: 86be mv a3,a5 - c00378b2: 43c8 lw a0,4(a5) - c00378b4: 07a1 addi a5,a5,8 - c00378b6: 02b50763 beq a0,a1,c00378e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46434 + c0037a80: 86be mv a3,a5 + c0037a82: 43c8 lw a0,4(a5) + c0037a84: 07a1 addi a5,a5,8 + c0037a86: 02b50763 beq a0,a1,c0037ab4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46442 for(i = 0; i < n; i++) { - c00378ba: 2705 addiw a4,a4,1 - c00378bc: b7dd j c00378a2 + c0037a8a: 2705 addiw a4,a4,1 + c0037a8c: b7dd j c0037a72 js_proxy_get_own_property_names(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46548 if (!tab[i].is_enumerable) { - c00378be: 0785 addi a5,a5,1 - c00378c0: 00379713 slli a4,a5,0x3 - c00378c4: 974a add a4,a4,s2 - c00378c6: ff872703 lw a4,-8(a4) - c00378ca: f73d bnez a4,c0037838 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46541 + c0037a8e: 0785 addi a5,a5,1 + c0037a90: 00379713 slli a4,a5,0x3 + c0037a94: 974a add a4,a4,s2 + c0037a96: ff872703 lw a4,-8(a4) + c0037a9a: f73d bnez a4,c0037a08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46549 JS_ThrowTypeError(ctx, "proxy: property not present in target were returned by non extensible proxy"); - c00378cc: 00029597 auipc a1,0x29 - c00378d0: f8c58593 addi a1,a1,-116 # c0060858 - c00378d4: b5dd j c00377ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46465 + c0037a9c: 00029597 auipc a1,0x29 + c0037aa0: 01c58593 addi a1,a1,28 # c0060ab8 + c0037aa4: b5dd j c003798a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46473 tab = NULL; - c00378d6: 4901 li s2,0 - c00378d8: bd41 j c0037768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46497 + c0037aa6: 4901 li s2,0 + c0037aa8: bd41 j c0037938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46505 JS_ThrowTypeError(ctx, "proxy: duplicate property"); - c00378da: 00029597 auipc a1,0x29 - c00378de: fce58593 addi a1,a1,-50 # c00608a8 - c00378e2: bde1 j c00377ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46532 + c0037aaa: 00029597 auipc a1,0x29 + c0037aae: 05e58593 addi a1,a1,94 # c0060b08 + c0037ab2: bde1 j c003798a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46540 if (!is_extensible) - c00378e4: 000a1463 bnez s4,c00378ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46533 + c0037ab4: 000a1463 bnez s4,c0037abc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46541 tab[idx].is_enumerable = TRUE; - c00378e8: 0186a023 sw s8,0(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46514 (discriminator 2) + c0037ab8: 0186a023 sw s8,0(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46522 (discriminator 2) for(i = 0; i < len2; i++) { - c00378ec: 2b85 addiw s7,s7,1 - c00378ee: bf35 j c003782a + c0037abc: 2b85 addiw s7,s7,1 + c0037abe: bf35 j c00379fa -00000000c00378f0 : +00000000c0037ac0 : js_proxy_get_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46184 -{ - c00378f0: 712d addi sp,sp,-288 - c00378f2: e24a sd s2,256(sp) - c00378f4: fdce sd s3,248(sp) - c00378f6: 893a mv s2,a4 - c00378f8: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46192 +{ + c0037ac0: 712d addi sp,sp,-288 + c0037ac2: e24a sd s2,256(sp) + c0037ac4: fdce sd s3,248(sp) + c0037ac6: 893a mv s2,a4 + c0037ac8: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46200 s = get_proxy_method(ctx, &method, obj, JS_ATOM_getOwnPropertyDescriptor); - c00378fa: 06700713 li a4,103 - c00378fe: 080c addi a1,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46184 -{ - c0037900: ea22 sd s0,272(sp) - c0037902: ee06 sd ra,280(sp) - c0037904: e626 sd s1,264(sp) - c0037906: f9d2 sd s4,240(sp) - c0037908: f5d6 sd s5,232(sp) - c003790a: f1da sd s6,224(sp) - c003790c: edde sd s7,216(sp) - c003790e: 842a mv s0,a0 - c0037910: e032 sd a2,0(sp) - c0037912: e436 sd a3,8(sp) + c0037aca: 06700713 li a4,103 + c0037ace: 080c addi a1,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46192 +{ + c0037ad0: ea22 sd s0,272(sp) + c0037ad2: ee06 sd ra,280(sp) + c0037ad4: e626 sd s1,264(sp) + c0037ad6: f9d2 sd s4,240(sp) + c0037ad8: f5d6 sd s5,232(sp) + c0037ada: f1da sd s6,224(sp) + c0037adc: edde sd s7,216(sp) + c0037ade: 842a mv s0,a0 + c0037ae0: e032 sd a2,0(sp) + c0037ae2: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46200 s = get_proxy_method(ctx, &method, obj, JS_ATOM_getOwnPropertyDescriptor); - c0037914: a57dc0ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46193 + c0037ae4: 975dc0ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46201 if (!s) - c0037918: e119 bnez a0,c003791e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46266 + c0037ae8: e119 bnez a0,c0037aee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46274 return -1; - c003791a: 557d li a0,-1 - c003791c: a831 j c0037938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46196 + c0037aea: 557d li a0,-1 + c0037aec: a831 j c0037b08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46204 if (JS_IsUndefined(method)) { - c003791e: 47e2 lw a5,24(sp) - c0037920: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46195 + c0037aee: 47e2 lw a5,24(sp) + c0037af0: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46203 p = JS_VALUE_GET_OBJ(s->target); - c0037922: 00053a83 ld s5,0(a0) # 4000 <__clzdi2-0xbfffc000> - c0037926: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46196 + c0037af2: 00053a83 ld s5,0(a0) # 4000 <__clzdi2-0xbfffc000> + c0037af6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46204 if (JS_IsUndefined(method)) { - c0037928: 03479363 bne a5,s4,c003794e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46197 + c0037af8: 03479363 bne a5,s4,c0037b1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46205 return JS_GetOwnPropertyInternal(ctx, pdesc, p, prop); - c003792c: 86ca mv a3,s2 - c003792e: 8656 mv a2,s5 - c0037930: 85ce mv a1,s3 - c0037932: 8522 mv a0,s0 - c0037934: dd0da0ef jal ra,c0011f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46277 -} - c0037938: 60f2 ld ra,280(sp) - c003793a: 6452 ld s0,272(sp) - c003793c: 64b2 ld s1,264(sp) - c003793e: 6912 ld s2,256(sp) - c0037940: 79ee ld s3,248(sp) - c0037942: 7a4e ld s4,240(sp) - c0037944: 7aae ld s5,232(sp) - c0037946: 7b0e ld s6,224(sp) - c0037948: 6bee ld s7,216(sp) - c003794a: 6115 addi sp,sp,288 - c003794c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46199 + c0037afc: 86ca mv a3,s2 + c0037afe: 8656 mv a2,s5 + c0037b00: 85ce mv a1,s3 + c0037b02: 8522 mv a0,s0 + c0037b04: ceeda0ef jal ra,c0011ff2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46285 +} + c0037b08: 60f2 ld ra,280(sp) + c0037b0a: 6452 ld s0,272(sp) + c0037b0c: 64b2 ld s1,264(sp) + c0037b0e: 6912 ld s2,256(sp) + c0037b10: 79ee ld s3,248(sp) + c0037b12: 7a4e ld s4,240(sp) + c0037b14: 7aae ld s5,232(sp) + c0037b16: 7b0e ld s6,224(sp) + c0037b18: 6bee ld s7,216(sp) + c0037b1a: 6115 addi sp,sp,288 + c0037b1c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46207 prop_val = JS_AtomToValue(ctx, prop); - c003794e: 85ca mv a1,s2 - c0037950: 8522 mv a0,s0 - c0037952: 9e0e20ef jal ra,c0019b32 - c0037956: f82a sd a0,48(sp) - c0037958: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46200 + c0037b1e: 85ca mv a1,s2 + c0037b20: 8522 mv a0,s0 + c0037b22: 9e0e20ef jal ra,c0019d02 + c0037b26: f82a sd a0,48(sp) + c0037b28: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46208 if (JS_IsException(prop_val)) { - c003795a: 0005879b sext.w a5,a1 - c003795e: 4b99 li s7,6 - c0037960: 01779863 bne a5,s7,c0037970 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46201 + c0037b2a: 0005879b sext.w a5,a1 + c0037b2e: 4b99 li s7,6 + c0037b30: 01779863 bne a5,s7,c0037b40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46209 JS_FreeValue(ctx, method); - c0037964: 65c2 ld a1,16(sp) - c0037966: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46216 + c0037b34: 65c2 ld a1,16(sp) + c0037b36: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46224 JS_FreeValue(ctx, trap_result_obj); - c0037968: 8522 mv a0,s0 - c003796a: 9ced00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46217 + c0037b38: 8522 mv a0,s0 + c0037b3a: 8ecd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46225 return -1; - c003796e: b775 j c003791a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46204 + c0037b3e: b775 j c0037aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46212 args[0] = s->target; - c0037970: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46206 + c0037b40: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46214 trap_result_obj = JS_CallFree(ctx, method, s->handler, 2, args); - c0037972: 6662 ld a2,24(sp) - c0037974: 04010813 addi a6,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46204 + c0037b42: 6662 ld a2,24(sp) + c0037b44: 04010813 addi a6,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46212 args[0] = s->target; - c0037978: e0be sd a5,64(sp) - c003797a: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46205 + c0037b48: e0be sd a5,64(sp) + c0037b4a: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46213 args[1] = prop_val; - c003797c: e8aa sd a0,80(sp) - c003797e: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46204 + c0037b4c: e8aa sd a0,80(sp) + c0037b4e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46212 args[0] = s->target; - c0037980: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46206 + c0037b50: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46214 trap_result_obj = JS_CallFree(ctx, method, s->handler, 2, args); - c0037982: 6894 ld a3,16(s1) - c0037984: 6c98 ld a4,24(s1) - c0037986: 65c2 ld a1,16(sp) - c0037988: 4789 li a5,2 - c003798a: 8522 mv a0,s0 - c003798c: e81d90ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46207 + c0037b52: 6894 ld a3,16(s1) + c0037b54: 6c98 ld a4,24(s1) + c0037b56: 65c2 ld a1,16(sp) + c0037b58: 4789 li a5,2 + c0037b5a: 8522 mv a0,s0 + c0037b5c: d9fd90ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46215 JS_FreeValue(ctx, prop_val); - c0037990: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46206 + c0037b60: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46214 trap_result_obj = JS_CallFree(ctx, method, s->handler, 2, args); - c0037992: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46207 + c0037b62: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46215 JS_FreeValue(ctx, prop_val); - c0037994: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46206 + c0037b64: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46214 trap_result_obj = JS_CallFree(ctx, method, s->handler, 2, args); - c0037996: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46207 + c0037b66: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46215 JS_FreeValue(ctx, prop_val); - c0037998: 8522 mv a0,s0 - c003799a: 99ed00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46208 + c0037b68: 8522 mv a0,s0 + c0037b6a: 8bcd00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46216 if (JS_IsException(trap_result_obj)) - c003799e: 7622 ld a2,40(sp) + c0037b6e: 7622 ld a2,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00379a0: 00060b1b sext.w s6,a2 + c0037b70: 00060b1b sext.w s6,a2 js_proxy_get_own_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46208 - c00379a4: f77b0be3 beq s6,s7,c003791a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46216 + c0037b74: f77b0be3 beq s6,s7,c0037aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46218 if (!JS_IsObject(trap_result_obj) && !JS_IsUndefined(trap_result_obj)) { - c00379a8: 0016079b addiw a5,a2,1 - c00379ac: 9bed andi a5,a5,-5 - c00379ae: 2781 sext.w a5,a5 - c00379b0: cf89 beqz a5,c00379ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46211 + c0037b78: 0016079b addiw a5,a2,1 + c0037b7c: 9bed andi a5,a5,-5 + c0037b7e: 2781 sext.w a5,a5 + c0037b80: cf89 beqz a5,c0037b9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46219 JS_FreeValue(ctx, trap_result_obj); - c00379b2: 7582 ld a1,32(sp) - c00379b4: 8522 mv a0,s0 - c00379b6: 982d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46265 + c0037b82: 7582 ld a1,32(sp) + c0037b84: 8522 mv a0,s0 + c0037b86: 8a0d00ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46273 JS_ThrowTypeError(ctx, "proxy: inconsistent getOwnPropertyDescriptor"); - c00379ba: 8522 mv a0,s0 - c00379bc: 00029597 auipc a1,0x29 - c00379c0: f4458593 addi a1,a1,-188 # c0060900 - c00379c4: a33db0ef jal ra,c00133f6 - c00379c8: bf89 j c003791a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46214 + c0037b8a: 8522 mv a0,s0 + c0037b8c: 00029597 auipc a1,0x29 + c0037b90: fd458593 addi a1,a1,-44 # c0060b60 + c0037b94: 951db0ef jal ra,c00134e4 + c0037b98: bf89 j c0037aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46222 target_desc_ret = JS_GetOwnPropertyInternal(ctx, &target_desc, p, prop); - c00379ca: 86ca mv a3,s2 - c00379cc: 8656 mv a2,s5 - c00379ce: 092c addi a1,sp,152 - c00379d0: 8522 mv a0,s0 - c00379d2: d32da0ef jal ra,c0011f04 - c00379d6: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46215 + c0037b9a: 86ca mv a3,s2 + c0037b9c: 8656 mv a2,s5 + c0037b9e: 092c addi a1,sp,152 + c0037ba0: 8522 mv a0,s0 + c0037ba2: c50da0ef jal ra,c0011ff2 + c0037ba6: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46223 if (target_desc_ret < 0) { - c00379d8: 00055563 bgez a0,c00379e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46216 + c0037ba8: 00055563 bgez a0,c0037bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46224 JS_FreeValue(ctx, trap_result_obj); - c00379dc: 7582 ld a1,32(sp) - c00379de: 7622 ld a2,40(sp) - c00379e0: b761 j c0037968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46219 + c0037bac: 7582 ld a1,32(sp) + c0037bae: 7622 ld a2,40(sp) + c0037bb0: b761 j c0037b38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46227 if (target_desc_ret) - c00379e2: c12d beqz a0,c0037a44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46220 + c0037bb2: c12d beqz a0,c0037c14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46228 js_free_desc(ctx, &target_desc); - c00379e4: 092c addi a1,sp,152 - c00379e6: 8522 mv a0,s0 - c00379e8: c4cd00ef jal ra,c0007e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46221 + c0037bb4: 092c addi a1,sp,152 + c0037bb6: 8522 mv a0,s0 + c0037bb8: b6ad00ef jal ra,c0007f22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46229 if (JS_IsUndefined(trap_result_obj)) { - c00379ec: 054b1e63 bne s6,s4,c0037a48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46223 + c0037bbc: 054b1e63 bne s6,s4,c0037c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46231 if (!(target_desc.flags & JS_PROP_CONFIGURABLE) || !p->extensible) - c00379f0: 47ea lw a5,152(sp) - c00379f2: 8b85 andi a5,a5,1 - c00379f4: d3f9 beqz a5,c00379ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46223 (discriminator 1) - c00379f6: 005ac783 lbu a5,5(s5) - c00379fa: 8b85 andi a5,a5,1 - c00379fc: dfdd beqz a5,c00379ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46226 + c0037bc0: 47ea lw a5,152(sp) + c0037bc2: 8b85 andi a5,a5,1 + c0037bc4: d3f9 beqz a5,c0037b8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46231 (discriminator 1) + c0037bc6: 005ac783 lbu a5,5(s5) + c0037bca: 8b85 andi a5,a5,1 + c0037bcc: dfdd beqz a5,c0037b8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46234 ret = FALSE; - c00379fe: 4501 li a0,0 - c0037a00: bf25 j c0037938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46245 + c0037bce: 4501 li a0,0 + c0037bd0: bf25 j c0037b08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46253 flags1 |= JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE; - c0037a02: 70058593 addi a1,a1,1792 - c0037a06: a041 j c0037a86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46251 + c0037bd2: 70058593 addi a1,a1,1792 + c0037bd6: a041 j c0037c56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46259 if (!extensible_target) - c0037a08: c4c1 beqz s1,c0037a90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46254 + c0037bd8: c4c1 beqz s1,c0037c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46262 if (!(result_desc.flags & JS_PROP_CONFIGURABLE)) { - c0037a0a: 5706 lw a4,96(sp) - c0037a0c: 00177793 andi a5,a4,1 - c0037a10: eb99 bnez a5,c0037a26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46255 + c0037bda: 5706 lw a4,96(sp) + c0037bdc: 00177793 andi a5,a4,1 + c0037be0: eb99 bnez a5,c0037bf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46263 if (!target_desc_ret || (target_desc.flags & JS_PROP_CONFIGURABLE)) - c0037a12: 06090f63 beqz s2,c0037a90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46255 (discriminator 1) - c0037a16: 47ea lw a5,152(sp) - c0037a18: 0017f693 andi a3,a5,1 - c0037a1c: eab5 bnez a3,c0037a90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46257 + c0037be2: 06090f63 beqz s2,c0037c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46263 (discriminator 1) + c0037be6: 47ea lw a5,152(sp) + c0037be8: 0017f693 andi a3,a5,1 + c0037bec: eab5 bnez a3,c0037c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46265 if ((result_desc.flags & - c0037a1e: 8b49 andi a4,a4,18 - c0037a20: e319 bnez a4,c0037a26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46259 + c0037bee: 8b49 andi a4,a4,18 + c0037bf0: e319 bnez a4,c0037bf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46267 target_desc_ret && - c0037a22: 8b89 andi a5,a5,2 - c0037a24: e7b5 bnez a5,c0037a90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46270 + c0037bf2: 8b89 andi a5,a5,2 + c0037bf4: e7b5 bnez a5,c0037c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46278 if (pdesc) { - c0037a26: 00098a63 beqz s3,c0037a3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46271 + c0037bf6: 00098a63 beqz s3,c0037c0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46279 *pdesc = result_desc; - c0037a2a: 03800613 li a2,56 - c0037a2e: 108c addi a1,sp,96 - c0037a30: 854e mv a0,s3 - c0037a32: 7a91e0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46269 + c0037bfa: 03800613 li a2,56 + c0037bfe: 108c addi a1,sp,96 + c0037c00: 854e mv a0,s3 + c0037c02: 7a91e0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46277 ret = TRUE; - c0037a36: 4505 li a0,1 - c0037a38: b701 j c0037938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46273 + c0037c06: 4505 li a0,1 + c0037c08: b701 j c0037b08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46281 js_free_desc(ctx, &result_desc); - c0037a3a: 108c addi a1,sp,96 - c0037a3c: 8522 mv a0,s0 - c0037a3e: bf6d00ef jal ra,c0007e34 - c0037a42: bfd5 j c0037a36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46221 - if (JS_IsUndefined(trap_result_obj)) { - c0037a44: fb4b0de3 beq s6,s4,c00379fe + c0037c0a: 108c addi a1,sp,96 + c0037c0c: 8522 mv a0,s0 + c0037c0e: b14d00ef jal ra,c0007f22 + c0037c12: bfd5 j c0037c06 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46229 + if (JS_IsUndefined(trap_result_obj)) { + c0037c14: fb4b0de3 beq s6,s4,c0037bce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46237 extensible_target = JS_IsExtensible(ctx, s->target); - c0037a48: 608c ld a1,0(s1) - c0037a4a: 6490 ld a2,8(s1) - c0037a4c: 8522 mv a0,s0 - c0037a4e: 991dc0ef jal ra,c00143de - c0037a52: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46230 + c0037c18: 608c ld a1,0(s1) + c0037c1a: 6490 ld a2,8(s1) + c0037c1c: 8522 mv a0,s0 + c0037c1e: 8afdc0ef jal ra,c00144cc + c0037c22: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46238 if (extensible_target < 0) { - c0037a54: f80544e3 bltz a0,c00379dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46234 + c0037c24: f80544e3 bltz a0,c0037bac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46242 res = js_obj_to_desc(ctx, &result_desc, trap_result_obj); - c0037a58: 7602 ld a2,32(sp) - c0037a5a: 76a2 ld a3,40(sp) - c0037a5c: 108c addi a1,sp,96 - c0037a5e: 8522 mv a0,s0 - c0037a60: 8befa0ef jal ra,c0031b1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46235 + c0037c28: 7602 ld a2,32(sp) + c0037c2a: 76a2 ld a3,40(sp) + c0037c2c: 108c addi a1,sp,96 + c0037c2e: 8522 mv a0,s0 + c0037c30: 8befa0ef jal ra,c0031cee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46243 JS_FreeValue(ctx, trap_result_obj); - c0037a64: 7582 ld a1,32(sp) - c0037a66: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46234 + c0037c34: 7582 ld a1,32(sp) + c0037c36: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46242 res = js_obj_to_desc(ctx, &result_desc, trap_result_obj); - c0037a68: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46235 + c0037c38: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46243 JS_FreeValue(ctx, trap_result_obj); - c0037a6a: 8522 mv a0,s0 - c0037a6c: 8ccd00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46236 + c0037c3a: 8522 mv a0,s0 + c0037c3c: febcf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46244 if (res < 0) - c0037a70: ea0a45e3 bltz s4,c003791a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46239 + c0037c40: ea0a45e3 bltz s4,c0037aea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46247 if (target_desc_ret) { - c0037a74: f8090ae3 beqz s2,c0037a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46241 + c0037c44: f8090ae3 beqz s2,c0037bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46249 flags1 = result_desc.flags | JS_PROP_HAS_CONFIGURABLE | JS_PROP_HAS_ENUMERABLE; - c0037a78: 5786 lw a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46243 + c0037c48: 5786 lw a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46251 flags1 |= JS_PROP_HAS_GET | JS_PROP_HAS_SET; - c0037a7a: 6589 lui a1,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46242 + c0037c4a: 6589 lui a1,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46250 if (result_desc.flags & JS_PROP_GETSET) - c0037a7c: 0107f713 andi a4,a5,16 - c0037a80: d349 beqz a4,c0037a02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46243 + c0037c4c: 0107f713 andi a4,a5,16 + c0037c50: d349 beqz a4,c0037bd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46251 flags1 |= JS_PROP_HAS_GET | JS_PROP_HAS_SET; - c0037a82: d0058593 addi a1,a1,-768 # 1d00 <__clzdi2-0xbfffe300> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46248 + c0037c52: d0058593 addi a1,a1,-768 # 1d00 <__clzdi2-0xbfffe300> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46256 if (!check_define_prop_flags(target_desc.flags, flags1)) - c0037a86: 456a lw a0,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46245 + c0037c56: 456a lw a0,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46253 flags1 |= JS_PROP_HAS_VALUE | JS_PROP_HAS_WRITABLE; - c0037a88: 8ddd or a1,a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46248 + c0037c58: 8ddd or a1,a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46256 if (!check_define_prop_flags(target_desc.flags, flags1)) - c0037a8a: e01cd0ef jal ra,c000588a - c0037a8e: fd35 bnez a0,c0037a0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46263 + c0037c5a: d1fcd0ef jal ra,c0005978 + c0037c5e: fd35 bnez a0,c0037bda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46271 js_free_desc(ctx, &result_desc); - c0037a90: 108c addi a1,sp,96 - c0037a92: 8522 mv a0,s0 - c0037a94: ba0d00ef jal ra,c0007e34 - c0037a98: b70d j c00379ba + c0037c60: 108c addi a1,sp,96 + c0037c62: 8522 mv a0,s0 + c0037c64: abed00ef jal ra,c0007f22 + c0037c68: b70d j c0037b8a -00000000c0037a9a : +00000000c0037c6a : js_date_toJSON(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50219 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50227 { - c0037a9a: 7135 addi sp,sp,-160 - c0037a9c: ed06 sd ra,152(sp) - c0037a9e: e922 sd s0,144(sp) - c0037aa0: e526 sd s1,136(sp) - c0037aa2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50224 + c0037c6a: 7135 addi sp,sp,-160 + c0037c6c: ed06 sd ra,152(sp) + c0037c6e: e922 sd s0,144(sp) + c0037c70: e526 sd s1,136(sp) + c0037c72: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50232 rv = JS_EXCEPTION; - c0037aa4: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50227 + c0037c74: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50235 obj = JS_ToObject(ctx, this_val); - c0037aa6: b47f00ef jal ra,c00285ec - c0037aaa: 862e mv a2,a1 - c0037aac: f82a sd a0,48(sp) - c0037aae: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50228 + c0037c76: b47f00ef jal ra,c00287bc + c0037c7a: 862e mv a2,a1 + c0037c7c: f82a sd a0,48(sp) + c0037c7e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50236 tv = JS_ToPrimitive(ctx, obj, HINT_NUMBER); - c0037ab0: 4685 li a3,1 - c0037ab2: 85aa mv a1,a0 - c0037ab4: 8522 mv a0,s0 - c0037ab6: a30e20ef jal ra,c0019ce6 - c0037aba: e4ae sd a1,72(sp) - c0037abc: e0aa sd a0,64(sp) + c0037c80: 4685 li a3,1 + c0037c82: 85aa mv a1,a0 + c0037c84: 8522 mv a0,s0 + c0037c86: a30e20ef jal ra,c0019eb6 + c0037c8a: e4ae sd a1,72(sp) + c0037c8c: e0aa sd a0,64(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c0037abe: 2581 sext.w a1,a1 + c0037c8e: 2581 sext.w a1,a1 js_date_toJSON(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50229 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50237 if (JS_IsException(tv)) - c0037ac0: 4799 li a5,6 - c0037ac2: 00f59463 bne a1,a5,c0037aca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50224 + c0037c90: 4799 li a5,6 + c0037c92: 00f59463 bne a1,a5,c0037c9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50232 rv = JS_EXCEPTION; - c0037ac6: 4499 li s1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50245 + c0037c96: 4499 li s1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50253 goto exception; - c0037ac8: a089 j c0037b0a + c0037c98: a089 j c0037cda JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c0037aca: c581 beqz a1,c0037ad2 - c0037acc: 479d li a5,7 - c0037ace: 04f59f63 bne a1,a5,c0037b2c + c0037c9a: c581 beqz a1,c0037ca2 + c0037c9c: 479d li a5,7 + c0037c9e: 04f59f63 bne a1,a5,c0037cfc js_date_toJSON(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50232 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50240 if (JS_ToFloat64(ctx, &d, tv) < 0) - c0037ad2: 6606 ld a2,64(sp) - c0037ad4: 66a6 ld a3,72(sp) - c0037ad6: 102c addi a1,sp,40 - c0037ad8: 8522 mv a0,s0 - c0037ada: bb5e40ef jal ra,c001c68e - c0037ade: fe0544e3 bltz a0,c0037ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50234 + c0037ca2: 6606 ld a2,64(sp) + c0037ca4: 66a6 ld a3,72(sp) + c0037ca6: 102c addi a1,sp,40 + c0037ca8: 8522 mv a0,s0 + c0037caa: bb5e40ef jal ra,c001c85e + c0037cae: fe0544e3 bltz a0,c0037c96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50242 if (!isfinite(d)) { - c0037ae2: 0003d797 auipc a5,0x3d - c0037ae6: ca67b787 fld fa5,-858(a5) # c0074788 <_erodata+0x8> - c0037aea: 12f7f7d3 fmul.d fa5,fa5,fa5 - c0037aee: 3722 fld fa4,40(sp) - c0037af0: a2f727d3 feq.d a5,fa4,fa5 - c0037af4: eb89 bnez a5,c0037b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50234 (discriminator 1) - c0037af6: 22f797d3 fneg.d fa5,fa5 - c0037afa: a2f727d3 feq.d a5,fa4,fa5 - c0037afe: e781 bnez a5,c0037b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50234 (discriminator 2) - c0037b00: a2e727d3 feq.d a5,fa4,fa4 - c0037b04: e785 bnez a5,c0037b2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50235 + c0037cb2: 0003d797 auipc a5,0x3d + c0037cb6: d367b787 fld fa5,-714(a5) # c00749e8 <_erodata+0x8> + c0037cba: 12f7f7d3 fmul.d fa5,fa5,fa5 + c0037cbe: 3722 fld fa4,40(sp) + c0037cc0: a2f727d3 feq.d a5,fa4,fa5 + c0037cc4: eb89 bnez a5,c0037cd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50242 (discriminator 1) + c0037cc6: 22f797d3 fneg.d fa5,fa5 + c0037cca: a2f727d3 feq.d a5,fa4,fa5 + c0037cce: e781 bnez a5,c0037cd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50242 (discriminator 2) + c0037cd0: a2e727d3 feq.d a5,fa4,fa4 + c0037cd4: e785 bnez a5,c0037cfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50243 rv = JS_NULL; - c0037b06: f082 sd zero,96(sp) - c0037b08: 4489 li s1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50250 + c0037cd6: f082 sd zero,96(sp) + c0037cd8: 4489 li s1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50258 JS_FreeValue(ctx, obj); - c0037b0a: 75c2 ld a1,48(sp) - c0037b0c: 7662 ld a2,56(sp) - c0037b0e: 8522 mv a0,s0 - c0037b10: 828d00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50251 + c0037cda: 75c2 ld a1,48(sp) + c0037cdc: 7662 ld a2,56(sp) + c0037cde: 8522 mv a0,s0 + c0037ce0: f47cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50259 JS_FreeValue(ctx, tv); - c0037b14: 6586 ld a1,64(sp) - c0037b16: 6626 ld a2,72(sp) - c0037b18: 8522 mv a0,s0 - c0037b1a: 81ed00ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50253 -} - c0037b1e: 60ea ld ra,152(sp) - c0037b20: 644a ld s0,144(sp) - c0037b22: 7506 ld a0,96(sp) - c0037b24: 85a6 mv a1,s1 - c0037b26: 64aa ld s1,136(sp) - c0037b28: 610d addi sp,sp,160 - c0037b2a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50239 + c0037ce4: 6586 ld a1,64(sp) + c0037ce6: 6626 ld a2,72(sp) + c0037ce8: 8522 mv a0,s0 + c0037cea: f3dcf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50261 +} + c0037cee: 60ea ld ra,152(sp) + c0037cf0: 644a ld s0,144(sp) + c0037cf2: 7506 ld a0,96(sp) + c0037cf4: 85a6 mv a1,s1 + c0037cf6: 64aa ld s1,136(sp) + c0037cf8: 610d addi sp,sp,160 + c0037cfa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50247 method = JS_GetPropertyStr(ctx, obj, "toISOString"); - c0037b2c: 7662 ld a2,56(sp) - c0037b2e: 75c2 ld a1,48(sp) - c0037b30: 00029697 auipc a3,0x29 - c0037b34: e0068693 addi a3,a3,-512 # c0060930 - c0037b38: 8522 mv a0,s0 - c0037b3a: acbe10ef jal ra,c0019604 - c0037b3e: e8aa sd a0,80(sp) - c0037b40: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50240 + c0037cfc: 7662 ld a2,56(sp) + c0037cfe: 75c2 ld a1,48(sp) + c0037d00: 00029697 auipc a3,0x29 + c0037d04: e9068693 addi a3,a3,-368 # c0060b90 + c0037d08: 8522 mv a0,s0 + c0037d0a: acbe10ef jal ra,c00197d4 + c0037d0e: e8aa sd a0,80(sp) + c0037d10: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50248 if (JS_IsException(method)) - c0037b42: 0005871b sext.w a4,a1 - c0037b46: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50239 + c0037d12: 0005871b sext.w a4,a1 + c0037d16: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50247 method = JS_GetPropertyStr(ctx, obj, "toISOString"); - c0037b48: 84aa mv s1,a0 - c0037b4a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50240 + c0037d18: 84aa mv s1,a0 + c0037d1a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50248 if (JS_IsException(method)) - c0037b4c: f6f70de3 beq a4,a5,c0037ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50242 + c0037d1c: f6f70de3 beq a4,a5,c0037c96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50250 if (!JS_IsFunction(ctx, method)) { - c0037b50: 85aa mv a1,a0 - c0037b52: 8522 mv a0,s0 - c0037b54: e432 sd a2,8(sp) - c0037b56: b87d20ef jal ra,c000a6dc - c0037b5a: 6622 ld a2,8(sp) - c0037b5c: ed11 bnez a0,c0037b78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50243 + c0037d20: 85aa mv a1,a0 + c0037d22: 8522 mv a0,s0 + c0037d24: e432 sd a2,8(sp) + c0037d26: aa5d20ef jal ra,c000a7ca + c0037d2a: 6622 ld a2,8(sp) + c0037d2c: ed11 bnez a0,c0037d48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50251 JS_ThrowTypeError(ctx, "object needs toISOString method"); - c0037b5e: 8522 mv a0,s0 - c0037b60: 00029597 auipc a1,0x29 - c0037b64: de058593 addi a1,a1,-544 # c0060940 - c0037b68: 88fdb0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50244 + c0037d2e: 8522 mv a0,s0 + c0037d30: 00029597 auipc a1,0x29 + c0037d34: e7058593 addi a1,a1,-400 # c0060ba0 + c0037d38: facdb0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50252 JS_FreeValue(ctx, method); - c0037b6c: 65c6 ld a1,80(sp) - c0037b6e: 6666 ld a2,88(sp) - c0037b70: 8522 mv a0,s0 - c0037b72: fc7cf0ef jal ra,c0007b38 - c0037b76: bf81 j c0037ac6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50247 + c0037d3c: 65c6 ld a1,80(sp) + c0037d3e: 6666 ld a2,88(sp) + c0037d40: 8522 mv a0,s0 + c0037d42: ee5cf0ef jal ra,c0007c26 + c0037d46: bf81 j c0037c96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50255 rv = JS_CallFree(ctx, method, obj, 0, NULL); - c0037b78: 76c2 ld a3,48(sp) - c0037b7a: 7762 ld a4,56(sp) - c0037b7c: 85a6 mv a1,s1 - c0037b7e: 4801 li a6,0 - c0037b80: 4781 li a5,0 - c0037b82: 8522 mv a0,s0 - c0037b84: c89d90ef jal ra,c001180c - c0037b88: f0aa sd a0,96(sp) - c0037b8a: 84ae mv s1,a1 - c0037b8c: bfbd j c0037b0a - -00000000c0037b8e : + c0037d48: 76c2 ld a3,48(sp) + c0037d4a: 7762 ld a4,56(sp) + c0037d4c: 85a6 mv a1,s1 + c0037d4e: 4801 li a6,0 + c0037d50: 4781 li a5,0 + c0037d52: 8522 mv a0,s0 + c0037d54: ba7d90ef jal ra,c00118fa + c0037d58: f0aa sd a0,96(sp) + c0037d5a: 84ae mv s1,a1 + c0037d5c: bfbd j c0037cda + +00000000c0037d5e : js_string_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42168 -{ - c0037b8e: 714d addi sp,sp,-336 - c0037b90: fa4a sd s2,304(sp) - c0037b92: e686 sd ra,328(sp) - c0037b94: e2a2 sd s0,320(sp) - c0037b96: fe26 sd s1,312(sp) - c0037b98: f64e sd s3,296(sp) - c0037b9a: f252 sd s4,288(sp) - c0037b9c: ee56 sd s5,280(sp) - c0037b9e: ea5a sd s6,272(sp) - c0037ba0: e65e sd s7,264(sp) - c0037ba2: e262 sd s8,256(sp) - c0037ba4: fde6 sd s9,248(sp) - c0037ba6: f9ea sd s10,240(sp) - c0037ba8: f5ee sd s11,232(sp) - c0037baa: 87ba mv a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42176 +{ + c0037d5e: 714d addi sp,sp,-336 + c0037d60: fa4a sd s2,304(sp) + c0037d62: e686 sd ra,328(sp) + c0037d64: e2a2 sd s0,320(sp) + c0037d66: fe26 sd s1,312(sp) + c0037d68: f64e sd s3,296(sp) + c0037d6a: f252 sd s4,288(sp) + c0037d6c: ee56 sd s5,280(sp) + c0037d6e: ea5a sd s6,272(sp) + c0037d70: e65e sd s7,264(sp) + c0037d72: e262 sd s8,256(sp) + c0037d74: fde6 sd s9,248(sp) + c0037d76: f9ea sd s10,240(sp) + c0037d78: f5ee sd s11,232(sp) + c0037d7a: 87ba mv a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42178 JSValueConst O = this_val, separator = argv[0], limit = argv[1]; - c0037bac: 0087ba03 ld s4,8(a5) - c0037bb0: 6318 ld a4,0(a4) - c0037bb2: 6b94 ld a3,16(a5) - c0037bb4: 6f84 ld s1,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42168 + c0037d7c: 0087ba03 ld s4,8(a5) + c0037d80: 6318 ld a4,0(a4) + c0037d82: 6b94 ld a3,16(a5) + c0037d84: 6f84 ld s1,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42176 { - c0037bb6: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42170 + c0037d86: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42178 JSValueConst O = this_val, separator = argv[0], limit = argv[1]; - c0037bb8: e4b2 sd a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42168 + c0037d88: e4b2 sd a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42176 { - c0037bba: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42170 + c0037d8a: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42178 JSValueConst O = this_val, separator = argv[0], limit = argv[1]; - c0037bbc: e0ae sd a1,64(sp) - c0037bbe: e8ba sd a4,80(sp) - c0037bc0: ecd2 sd s4,88(sp) - c0037bc2: f0b6 sd a3,96(sp) - c0037bc4: f4a6 sd s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42177 + c0037d8c: e0ae sd a1,64(sp) + c0037d8e: e8ba sd a4,80(sp) + c0037d90: ecd2 sd s4,88(sp) + c0037d92: f0b6 sd a3,96(sp) + c0037d94: f4a6 sd s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42185 if (JS_IsUndefined(O) || JS_IsNull(O)) - c0037bc6: 3679 addiw a2,a2,-2 - c0037bc8: 4905 li s2,1 - c0037bca: 02c96663 bltu s2,a2,c0037bf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42254 -} - c0037bce: 6416 ld s0,320(sp) - c0037bd0: 60b6 ld ra,328(sp) - c0037bd2: 74f2 ld s1,312(sp) - c0037bd4: 7952 ld s2,304(sp) - c0037bd6: 79b2 ld s3,296(sp) - c0037bd8: 7a12 ld s4,288(sp) - c0037bda: 6af2 ld s5,280(sp) - c0037bdc: 6b52 ld s6,272(sp) - c0037bde: 6bb2 ld s7,264(sp) - c0037be0: 6c12 ld s8,256(sp) - c0037be2: 7cee ld s9,248(sp) - c0037be4: 7d4e ld s10,240(sp) - c0037be6: 7dae ld s11,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42178 + c0037d96: 3679 addiw a2,a2,-2 + c0037d98: 4905 li s2,1 + c0037d9a: 02c96663 bltu s2,a2,c0037dc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42262 +} + c0037d9e: 6416 ld s0,320(sp) + c0037da0: 60b6 ld ra,328(sp) + c0037da2: 74f2 ld s1,312(sp) + c0037da4: 7952 ld s2,304(sp) + c0037da6: 79b2 ld s3,296(sp) + c0037da8: 7a12 ld s4,288(sp) + c0037daa: 6af2 ld s5,280(sp) + c0037dac: 6b52 ld s6,272(sp) + c0037dae: 6bb2 ld s7,264(sp) + c0037db0: 6c12 ld s8,256(sp) + c0037db2: 7cee ld s9,248(sp) + c0037db4: 7d4e ld s10,240(sp) + c0037db6: 7dae ld s11,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42186 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c0037be8: 00026597 auipc a1,0x26 - c0037bec: 6e858593 addi a1,a1,1768 # c005e2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42254 + c0037db8: 00026597 auipc a1,0x26 + c0037dbc: 77858593 addi a1,a1,1912 # c005e530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42262 } - c0037bf0: 6171 addi sp,sp,336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42178 + c0037dc0: 6171 addi sp,sp,336 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42186 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c0037bf2: 805db06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42181 + c0037dc2: f22db06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42189 A = JS_UNDEFINED; - c0037bf6: e102 sd zero,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42184 + c0037dc6: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42192 if (!JS_IsUndefined(separator) && !JS_IsNull(separator)) { - c0037bf8: ffea079b addiw a5,s4,-2 - c0037bfc: 842a mv s0,a0 - c0037bfe: 08f97163 bgeu s2,a5,c0037c80 + c0037dc8: ffea079b addiw a5,s4,-2 + c0037dcc: 842a mv s0,a0 + c0037dce: 08f97163 bgeu s2,a5,c0037e50 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0037c02: 87d2 mv a5,s4 - c0037c04: 85ba mv a1,a4 - c0037c06: 8652 mv a2,s4 - c0037c08: 4801 li a6,0 - c0037c0a: 0d100693 li a3,209 - c0037c0e: e1ba sd a4,192(sp) - c0037c10: e5d2 sd s4,200(sp) - c0037c12: c31d90ef jal ra,c0011842 - c0037c16: f92a sd a0,176(sp) - c0037c18: fd2e sd a1,184(sp) - c0037c1a: e92a sd a0,144(sp) - c0037c1c: ed2e sd a1,152(sp) + c0037dd2: 87d2 mv a5,s4 + c0037dd4: 85ba mv a1,a4 + c0037dd6: 8652 mv a2,s4 + c0037dd8: 4801 li a6,0 + c0037dda: 0d100693 li a3,209 + c0037dde: e1ba sd a4,192(sp) + c0037de0: e5d2 sd s4,200(sp) + c0037de2: b4fd90ef jal ra,c0011930 + c0037de6: f92a sd a0,176(sp) + c0037de8: fd2e sd a1,184(sp) + c0037dea: e92a sd a0,144(sp) + c0037dec: ed2e sd a1,152(sp) js_string_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42195 if (JS_IsException(splitter)) - c0037c1e: 0005879b sext.w a5,a1 - c0037c22: 4719 li a4,6 + c0037dee: 0005879b sext.w a5,a1 + c0037df2: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0037c24: 862e mv a2,a1 + c0037df4: 862e mv a2,a1 js_string_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42187 - c0037c26: 00e79563 bne a5,a4,c0037c30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42195 + c0037df6: 00e79563 bne a5,a4,c0037e00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42196 return JS_EXCEPTION; - c0037c2a: f102 sd zero,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42253 + c0037dfa: f102 sd zero,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42261 return JS_EXCEPTION; - c0037c2c: f53e sd a5,168(sp) - c0037c2e: a805 j c0037c5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42189 (discriminator 1) + c0037dfc: f53e sd a5,168(sp) + c0037dfe: a805 j c0037e2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42197 (discriminator 1) if (!JS_IsUndefined(splitter) && !JS_IsNull(splitter)) { - c0037c30: ffe5879b addiw a5,a1,-2 - c0037c34: 04f97663 bgeu s2,a5,c0037c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42190 + c0037e00: ffe5879b addiw a5,a1,-2 + c0037e04: 04f97663 bgeu s2,a5,c0037e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42198 args[0] = O; - c0037c38: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42192 + c0037e08: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42200 return JS_CallFree(ctx, splitter, separator, 2, args); - c0037c3a: 66c6 ld a3,80(sp) - c0037c3c: 6766 ld a4,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42190 + c0037e0a: 66c6 ld a3,80(sp) + c0037e0c: 6766 ld a4,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42198 args[0] = O; - c0037c3e: e1be sd a5,192(sp) - c0037c40: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42192 + c0037e0e: e1be sd a5,192(sp) + c0037e10: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42200 return JS_CallFree(ctx, splitter, separator, 2, args); - c0037c42: 85aa mv a1,a0 - c0037c44: 0c010813 addi a6,sp,192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42190 + c0037e12: 85aa mv a1,a0 + c0037e14: 0c010813 addi a6,sp,192 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42198 args[0] = O; - c0037c48: e5be sd a5,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42191 + c0037e18: e5be sd a5,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42199 args[1] = limit; - c0037c4a: 7786 ld a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42192 + c0037e1a: 7786 ld a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42200 return JS_CallFree(ctx, splitter, separator, 2, args); - c0037c4c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42191 + c0037e1c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42199 args[1] = limit; - c0037c4e: e9be sd a5,208(sp) - c0037c50: 77a6 ld a5,104(sp) - c0037c52: edbe sd a5,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42192 + c0037e1e: e9be sd a5,208(sp) + c0037e20: 77a6 ld a5,104(sp) + c0037e22: edbe sd a5,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42200 return JS_CallFree(ctx, splitter, separator, 2, args); - c0037c54: 4789 li a5,2 - c0037c56: bb7d90ef jal ra,c001180c - c0037c5a: f12a sd a0,160(sp) - c0037c5c: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42254 (discriminator 2) -} - c0037c5e: 60b6 ld ra,328(sp) - c0037c60: 6416 ld s0,320(sp) - c0037c62: 750a ld a0,160(sp) - c0037c64: 75aa ld a1,168(sp) - c0037c66: 74f2 ld s1,312(sp) - c0037c68: 7952 ld s2,304(sp) - c0037c6a: 79b2 ld s3,296(sp) - c0037c6c: 7a12 ld s4,288(sp) - c0037c6e: 6af2 ld s5,280(sp) - c0037c70: 6b52 ld s6,272(sp) - c0037c72: 6bb2 ld s7,264(sp) - c0037c74: 6c12 ld s8,256(sp) - c0037c76: 7cee ld s9,248(sp) - c0037c78: 7d4e ld s10,240(sp) - c0037c7a: 7dae ld s11,232(sp) - c0037c7c: 6171 addi sp,sp,336 - c0037c7e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42195 + c0037e24: 4789 li a5,2 + c0037e26: ad5d90ef jal ra,c00118fa + c0037e2a: f12a sd a0,160(sp) + c0037e2c: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42262 (discriminator 2) +} + c0037e2e: 60b6 ld ra,328(sp) + c0037e30: 6416 ld s0,320(sp) + c0037e32: 750a ld a0,160(sp) + c0037e34: 75aa ld a1,168(sp) + c0037e36: 74f2 ld s1,312(sp) + c0037e38: 7952 ld s2,304(sp) + c0037e3a: 79b2 ld s3,296(sp) + c0037e3c: 7a12 ld s4,288(sp) + c0037e3e: 6af2 ld s5,280(sp) + c0037e40: 6b52 ld s6,272(sp) + c0037e42: 6bb2 ld s7,264(sp) + c0037e44: 6c12 ld s8,256(sp) + c0037e46: 7cee ld s9,248(sp) + c0037e48: 7d4e ld s10,240(sp) + c0037e4a: 7dae ld s11,232(sp) + c0037e4c: 6171 addi sp,sp,336 + c0037e4e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42203 S = JS_ToString(ctx, O); - c0037c80: 6586 ld a1,64(sp) - c0037c82: 6626 ld a2,72(sp) - c0037c84: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42196 + c0037e50: 6586 ld a1,64(sp) + c0037e52: 6626 ld a2,72(sp) + c0037e54: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42204 if (JS_IsException(S)) - c0037c86: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42195 + c0037e56: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42203 S = JS_ToString(ctx, O); - c0037c88: b4fe20ef jal ra,c001a7d6 - c0037c8c: fcae sd a1,120(sp) - c0037c8e: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42196 + c0037e58: b4fe20ef jal ra,c001a9a6 + c0037e5c: fcae sd a1,120(sp) + c0037e5e: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42204 if (JS_IsException(S)) - c0037c90: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42195 + c0037e60: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42203 S = JS_ToString(ctx, O); - c0037c92: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42196 + c0037e62: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42204 if (JS_IsException(S)) - c0037c94: 19358c63 beq a1,s3,c0037e2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42198 + c0037e64: 19358c63 beq a1,s3,c0037ffc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42206 A = JS_NewArray(ctx); - c0037c98: 8522 mv a0,s0 - c0037c9a: b24df0ef jal ra,c0016fbe - c0037c9e: e12a sd a0,128(sp) - c0037ca0: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42199 + c0037e68: 8522 mv a0,s0 + c0037e6a: b24df0ef jal ra,c001718e + c0037e6e: e12a sd a0,128(sp) + c0037e70: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42207 if (JS_IsException(A)) - c0037ca2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42198 + c0037e72: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42206 A = JS_NewArray(ctx); - c0037ca6: 892e mv s2,a1 - c0037ca8: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42199 + c0037e76: 892e mv s2,a1 + c0037e78: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42207 if (JS_IsException(A)) - c0037caa: 07378963 beq a5,s3,c0037d1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42202 + c0037e7a: 07378963 beq a5,s3,c0037eec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42210 if (JS_IsUndefined(limit)) { - c0037cae: 2481 sext.w s1,s1 - c0037cb0: 478d li a5,3 - c0037cb2: 04f49b63 bne s1,a5,c0037d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42203 + c0037e7e: 2481 sext.w s1,s1 + c0037e80: 478d li a5,3 + c0037e82: 04f49b63 bne s1,a5,c0037ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42211 lim = 0xffffffff; - c0037cb6: 57fd li a5,-1 - c0037cb8: de3e sw a5,60(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42210 + c0037e86: 57fd li a5,-1 + c0037e88: de3e sw a5,60(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42218 R = JS_ToString(ctx, separator); - c0037cba: 65c6 ld a1,80(sp) - c0037cbc: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 + c0037e8a: 65c6 ld a1,80(sp) + c0037e8c: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42217 s = sp->len; - c0037cbe: 004aac03 lw s8,4(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42210 + c0037e8e: 004aac03 lw s8,4(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42218 R = JS_ToString(ctx, separator); - c0037cc2: 8522 mv a0,s0 - c0037cc4: b13e20ef jal ra,c001a7d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 + c0037e92: 8522 mv a0,s0 + c0037e94: b13e20ef jal ra,c001a9a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42217 s = sp->len; - c0037cc8: 800009b7 lui s3,0x80000 - c0037ccc: fff9c993 not s3,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42210 + c0037e98: 800009b7 lui s3,0x80000 + c0037e9c: fff9c993 not s3,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42218 R = JS_ToString(ctx, separator); - c0037cd0: e92a sd a0,144(sp) - c0037cd2: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42211 + c0037ea0: e92a sd a0,144(sp) + c0037ea2: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42219 if (JS_IsException(R)) - c0037cd4: 0005871b sext.w a4,a1 - c0037cd8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 + c0037ea4: 0005871b sext.w a4,a1 + c0037ea8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42217 s = sp->len; - c0037cda: 0189fc33 and s8,s3,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42210 + c0037eaa: 0189fc33 and s8,s3,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42218 R = JS_ToString(ctx, separator); - c0037cde: 8baa mv s7,a0 - c0037ce0: 84ae mv s1,a1 - c0037ce2: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42211 + c0037eae: 8baa mv s7,a0 + c0037eb0: 84ae mv s1,a1 + c0037eb2: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42219 if (JS_IsException(R)) - c0037ce4: 10f70663 beq a4,a5,c0037df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42216 + c0037eb4: 10f70663 beq a4,a5,c0037fc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42224 if (lim == 0) - c0037ce8: 57f2 lw a5,60(sp) - c0037cea: ef85 bnez a5,c0037d22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42245 + c0037eb8: 57f2 lw a5,60(sp) + c0037eba: ef85 bnez a5,c0037ef2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42253 JS_FreeValue(ctx, S); - c0037cec: 75c6 ld a1,112(sp) - c0037cee: 7666 ld a2,120(sp) - c0037cf0: 8522 mv a0,s0 - c0037cf2: e47cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42246 + c0037ebc: 75c6 ld a1,112(sp) + c0037ebe: 7666 ld a2,120(sp) + c0037ec0: 8522 mv a0,s0 + c0037ec2: d65cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42254 JS_FreeValue(ctx, R); - c0037cf6: 65ca ld a1,144(sp) - c0037cf8: 666a ld a2,152(sp) - c0037cfa: 8522 mv a0,s0 - c0037cfc: e3dcf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42247 + c0037ec6: 65ca ld a1,144(sp) + c0037ec8: 666a ld a2,152(sp) + c0037eca: 8522 mv a0,s0 + c0037ecc: d5bcf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42255 return A; - c0037d00: 678a ld a5,128(sp) - c0037d02: f54a sd s2,168(sp) - c0037d04: f13e sd a5,160(sp) - c0037d06: bfa1 j c0037c5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42205 + c0037ed0: 678a ld a5,128(sp) + c0037ed2: f54a sd s2,168(sp) + c0037ed4: f13e sd a5,160(sp) + c0037ed6: bfa1 j c0037e2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42213 if (JS_ToUint32(ctx, &lim, limit) < 0) - c0037d08: 7606 ld a2,96(sp) - c0037d0a: 76a6 ld a3,104(sp) + c0037ed8: 7606 ld a2,96(sp) + c0037eda: 76a6 ld a3,104(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c0037d0c: 186c addi a1,sp,60 - c0037d0e: 8522 mv a0,s0 - c0037d10: e1b2 sd a2,192(sp) - c0037d12: e5b6 sd a3,200(sp) - c0037d14: e5ae40ef jal ra,c001c36e + c0037edc: 186c addi a1,sp,60 + c0037ede: 8522 mv a0,s0 + c0037ee0: e1b2 sd a2,192(sp) + c0037ee2: e5b6 sd a3,200(sp) + c0037ee4: e5ae40ef jal ra,c001c53e js_string_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42205 - c0037d18: fa0551e3 bgez a0,c0037cba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42213 + c0037ee8: fa0551e3 bgez a0,c0037e8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42190 R = JS_UNDEFINED; - c0037d1c: 448d li s1,3 - c0037d1e: 4b01 li s6,0 - c0037d20: a8c1 j c0037df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42218 + c0037eec: 448d li s1,3 + c0037eee: 4b01 li s6,0 + c0037ef0: a8c1 j c0037fc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 if (JS_IsUndefined(separator)) - c0037d22: 2a01 sext.w s4,s4 - c0037d24: 478d li a5,3 - c0037d26: 02fa0063 beq s4,a5,c0037d46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42214 + c0037ef2: 2a01 sext.w s4,s4 + c0037ef4: 478d li a5,3 + c0037ef6: 02fa0063 beq s4,a5,c0037f16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42222 r = rp->len; - c0037d2a: 415c lw a5,4(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 + c0037efa: 415c lw a5,4(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42217 s = sp->len; - c0037d2c: 020c1a13 slli s4,s8,0x20 - c0037d30: 020a5a13 srli s4,s4,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42214 + c0037efc: 020c1a13 slli s4,s8,0x20 + c0037f00: 020a5a13 srli s4,s4,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42222 r = rp->len; - c0037d34: 0137f9b3 and s3,a5,s3 - c0037d38: 1982 slli s3,s3,0x20 - c0037d3a: 0209d993 srli s3,s3,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42220 + c0037f04: 0137f9b3 and s3,a5,s3 + c0037f08: 1982 slli s3,s3,0x20 + c0037f0a: 0209d993 srli s3,s3,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42228 if (s == 0) { - c0037d3e: 0c0a1d63 bnez s4,c0037e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42221 + c0037f0e: 0c0a1d63 bnez s4,c0037fe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42229 if (r != 0) - c0037d42: fa0985e3 beqz s3,c0037cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42215 + c0037f12: fa0985e3 beqz s3,c0037ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42223 p = 0; - c0037d46: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42201 + c0037f16: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 lengthA = 0; - c0037d48: 4d81 li s11,0 - c0037d4a: a885 j c0037dba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42227 + c0037f18: 4d81 li s11,0 + c0037f1a: a885 j c0037f8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42235 e = string_indexof(sp, rp, q); - c0037d4c: 2601 sext.w a2,a2 - c0037d4e: 85de mv a1,s7 - c0037d50: 8556 mv a0,s5 - c0037d52: e83e sd a5,16(sp) - c0037d54: ec3a sd a4,24(sp) - c0037d56: 981cc0ef jal ra,c00046d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42228 + c0037f1c: 2601 sext.w a2,a2 + c0037f1e: 85de mv a1,s7 + c0037f20: 8556 mv a0,s5 + c0037f22: e83e sd a5,16(sp) + c0037f24: ec3a sd a4,24(sp) + c0037f26: fb0cc0ef jal ra,c00046d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42236 if (e < 0) - c0037d5a: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42227 + c0037f2a: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42235 e = string_indexof(sp, rp, q); - c0037d5c: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42228 + c0037f2c: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42236 if (e < 0) - c0037d5e: 04054e63 bltz a0,c0037dba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42230 + c0037f2e: 04054e63 bltz a0,c0037f8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42238 T = js_sub_string(ctx, sp, p, e); - c0037d62: 6762 ld a4,24(sp) - c0037d64: 86aa mv a3,a0 - c0037d66: 85d6 mv a1,s5 - c0037d68: 863a mv a2,a4 - c0037d6a: 8522 mv a0,s0 - c0037d6c: c0ce20ef jal ra,c001a178 - c0037d70: e1aa sd a0,192(sp) - c0037d72: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42231 + c0037f32: 6762 ld a4,24(sp) + c0037f34: 86aa mv a3,a0 + c0037f36: 85d6 mv a1,s5 + c0037f38: 863a mv a2,a4 + c0037f3a: 8522 mv a0,s0 + c0037f3c: c0ce20ef jal ra,c001a348 + c0037f40: e1aa sd a0,192(sp) + c0037f42: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42239 if (JS_IsException(T)) - c0037d74: 0005869b sext.w a3,a1 - c0037d78: 4619 li a2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42230 + c0037f44: 0005869b sext.w a3,a1 + c0037f48: 4619 li a2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42238 T = js_sub_string(ctx, sp, p, e); - c0037d7a: 872a mv a4,a0 - c0037d7c: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42231 + c0037f4a: 872a mv a4,a0 + c0037f4c: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42239 if (JS_IsException(T)) - c0037d7e: 06c68963 beq a3,a2,c0037df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42233 + c0037f4e: 06c68963 beq a3,a2,c0037fc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42241 if (JS_CreateDataPropertyUint32(ctx, A, lengthA++, T, 0) < 0) - c0037d82: 658a ld a1,128(sp) - c0037d84: 020d9693 slli a3,s11,0x20 - c0037d88: 001d8e1b addiw t3,s11,1 - c0037d8c: 4801 li a6,0 - c0037d8e: 9281 srli a3,a3,0x20 - c0037d90: 864a mv a2,s2 - c0037d92: 8522 mv a0,s0 - c0037d94: e872 sd t3,16(sp) - c0037d96: f50f10ef jal ra,c00294e6 - c0037d9a: 04054b63 bltz a0,c0037df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42235 + c0037f52: 658a ld a1,128(sp) + c0037f54: 020d9693 slli a3,s11,0x20 + c0037f58: 001d8e1b addiw t3,s11,1 + c0037f5c: 4801 li a6,0 + c0037f5e: 9281 srli a3,a3,0x20 + c0037f60: 864a mv a2,s2 + c0037f62: 8522 mv a0,s0 + c0037f64: e872 sd t3,16(sp) + c0037f66: f50f10ef jal ra,c00296b6 + c0037f6a: 04054b63 bltz a0,c0037fc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42243 if (lengthA == lim) - c0037d9e: 57f2 lw a5,60(sp) - c0037da0: 6e42 ld t3,16(sp) - c0037da2: f5c785e3 beq a5,t3,c0037cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 (discriminator 2) + c0037f6e: 57f2 lw a5,60(sp) + c0037f70: 6e42 ld t3,16(sp) + c0037f72: f5c785e3 beq a5,t3,c0037ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42234 (discriminator 2) for (q = p; (q += !r) <= s - r - !r; q = p = e + r) { - c0037da6: 014987b3 add a5,s3,s4 - c0037daa: 8df2 mv s11,t3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 (discriminator 1) - c0037dac: 66a2 ld a3,8(sp) - c0037dae: 00fd0633 add a2,s10,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42230 (discriminator 1) + c0037f76: 014987b3 add a5,s3,s4 + c0037f7a: 8df2 mv s11,t3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42234 (discriminator 1) + c0037f7c: 66a2 ld a3,8(sp) + c0037f7e: 00fd0633 add a2,s10,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42238 (discriminator 1) T = js_sub_string(ctx, sp, p, e); - c0037db2: 0007871b sext.w a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 (discriminator 1) + c0037f82: 0007871b sext.w a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42234 (discriminator 1) for (q = p; (q += !r) <= s - r - !r; q = p = e + r) { - c0037db6: f8c6dbe3 bge a3,a2,c0037d4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42239 + c0037f86: f8c6dbe3 bge a3,a2,c0037f1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42247 T = js_sub_string(ctx, sp, p, s); - c0037dba: 0007861b sext.w a2,a5 - c0037dbe: 86e2 mv a3,s8 - c0037dc0: 85d6 mv a1,s5 - c0037dc2: 8522 mv a0,s0 - c0037dc4: bb4e20ef jal ra,c001a178 - c0037dc8: e1aa sd a0,192(sp) - c0037dca: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42240 + c0037f8a: 0007861b sext.w a2,a5 + c0037f8e: 86e2 mv a3,s8 + c0037f90: 85d6 mv a1,s5 + c0037f92: 8522 mv a0,s0 + c0037f94: bb4e20ef jal ra,c001a348 + c0037f98: e1aa sd a0,192(sp) + c0037f9a: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42248 if (JS_IsException(T)) - c0037dcc: 0005861b sext.w a2,a1 - c0037dd0: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42239 + c0037f9c: 0005861b sext.w a2,a1 + c0037fa0: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42247 T = js_sub_string(ctx, sp, p, s); - c0037dd2: 872a mv a4,a0 - c0037dd4: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42240 + c0037fa2: 872a mv a4,a0 + c0037fa4: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42248 if (JS_IsException(T)) - c0037dd6: 00d60d63 beq a2,a3,c0037df0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42242 - if (JS_CreateDataPropertyUint32(ctx, A, lengthA++, T,0 ) < 0) - c0037dda: 658a ld a1,128(sp) - c0037ddc: 020d9693 slli a3,s11,0x20 - c0037de0: 4801 li a6,0 - c0037de2: 9281 srli a3,a3,0x20 - c0037de4: 864a mv a2,s2 - c0037de6: 8522 mv a0,s0 - c0037de8: efef10ef jal ra,c00294e6 - c0037dec: f00550e3 bgez a0,c0037cec + c0037fa6: 00d60d63 beq a2,a3,c0037fc0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42250 + if (JS_CreateDataPropertyUint32(ctx, A, lengthA++, T,0 ) < 0) + c0037faa: 658a ld a1,128(sp) + c0037fac: 020d9693 slli a3,s11,0x20 + c0037fb0: 4801 li a6,0 + c0037fb2: 9281 srli a3,a3,0x20 + c0037fb4: 864a mv a2,s2 + c0037fb6: 8522 mv a0,s0 + c0037fb8: efef10ef jal ra,c00296b6 + c0037fbc: f00550e3 bgez a0,c0037ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42258 JS_FreeValue(ctx, A); - c0037df0: 658a ld a1,128(sp) - c0037df2: 8666 mv a2,s9 - c0037df4: 8522 mv a0,s0 - c0037df6: d43cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42251 + c0037fc0: 658a ld a1,128(sp) + c0037fc2: 8666 mv a2,s9 + c0037fc4: 8522 mv a0,s0 + c0037fc6: c61cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42259 JS_FreeValue(ctx, S); - c0037dfa: 75c6 ld a1,112(sp) - c0037dfc: 7666 ld a2,120(sp) - c0037dfe: 8522 mv a0,s0 - c0037e00: d39cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42252 + c0037fca: 75c6 ld a1,112(sp) + c0037fcc: 7666 ld a2,120(sp) + c0037fce: 8522 mv a0,s0 + c0037fd0: c57cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42260 JS_FreeValue(ctx, R); - c0037e04: 85da mv a1,s6 - c0037e06: 8626 mv a2,s1 - c0037e08: 8522 mv a0,s0 - c0037e0a: e95a sd s6,144(sp) - c0037e0c: ed26 sd s1,152(sp) - c0037e0e: d2bcf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42253 + c0037fd4: 85da mv a1,s6 + c0037fd6: 8626 mv a2,s1 + c0037fd8: 8522 mv a0,s0 + c0037fda: e95a sd s6,144(sp) + c0037fdc: ed26 sd s1,152(sp) + c0037fde: c49cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42261 return JS_EXCEPTION; - c0037e12: 4799 li a5,6 - c0037e14: f102 sd zero,160(sp) - c0037e16: bd19 j c0037c2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 + c0037fe2: 4799 li a5,6 + c0037fe4: f102 sd zero,160(sp) + c0037fe6: bd19 j c0037dfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42234 for (q = p; (q += !r) <= s - r - !r; q = p = e + r) { - c0037e18: 0019bd13 seqz s10,s3 - c0037e1c: 413a0a33 sub s4,s4,s3 - c0037e20: 41aa0733 sub a4,s4,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42215 + c0037fe8: 0019bd13 seqz s10,s3 + c0037fec: 413a0a33 sub s4,s4,s3 + c0037ff0: 41aa0733 sub a4,s4,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42223 p = 0; - c0037e24: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42201 + c0037ff4: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42209 lengthA = 0; - c0037e26: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42226 + c0037ff6: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42234 for (q = p; (q += !r) <= s - r - !r; q = p = e + r) { - c0037e28: e43a sd a4,8(sp) - c0037e2a: b749 j c0037dac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42182 + c0037ff8: e43a sd a4,8(sp) + c0037ffa: b749 j c0037f7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42190 R = JS_UNDEFINED; - c0037e2c: 448d li s1,3 - c0037e2e: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42181 + c0037ffc: 448d li s1,3 + c0037ffe: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42189 A = JS_UNDEFINED; - c0037e30: 4c8d li s9,3 - c0037e32: bf7d j c0037df0 + c0038000: 4c8d li s9,3 + c0038002: bf7d j c0037fc0 -00000000c0037e34 : +00000000c0038004 : js_array_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39815 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39823 { - c0037e34: 7175 addi sp,sp,-144 - c0037e36: e122 sd s0,128(sp) - c0037e38: f8ca sd s2,112(sp) - c0037e3a: e506 sd ra,136(sp) - c0037e3c: fca6 sd s1,120(sp) - c0037e3e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39818 + c0038004: 7175 addi sp,sp,-144 + c0038006: e122 sd s0,128(sp) + c0038008: f8ca sd s2,112(sp) + c003800a: e506 sd ra,136(sp) + c003800c: fca6 sd s1,120(sp) + c003800e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39826 obj = JS_ToObject(ctx, this_val); - c0037e40: facf00ef jal ra,c00285ec - c0037e44: f02a sd a0,32(sp) - c0037e46: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39819 + c0038010: facf00ef jal ra,c00287bc + c0038014: f02a sd a0,32(sp) + c0038016: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39827 if (JS_IsException(obj)) - c0037e48: 0005869b sext.w a3,a1 - c0037e4c: 4919 li s2,6 - c0037e4e: 01269c63 bne a3,s2,c0037e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39820 + c0038018: 0005869b sext.w a3,a1 + c003801c: 4919 li s2,6 + c003801e: 01269c63 bne a3,s2,c0038036 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39828 return JS_EXCEPTION; - c0037e52: e882 sd zero,80(sp) - c0037e54: ecb6 sd a3,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39834 (discriminator 1) -} - c0037e56: 60aa ld ra,136(sp) - c0037e58: 640a ld s0,128(sp) - c0037e5a: 6546 ld a0,80(sp) - c0037e5c: 65e6 ld a1,88(sp) - c0037e5e: 74e6 ld s1,120(sp) - c0037e60: 7946 ld s2,112(sp) - c0037e62: 6149 addi sp,sp,144 - c0037e64: 8082 ret - c0037e66: 87ae mv a5,a1 + c0038022: e882 sd zero,80(sp) + c0038024: ecb6 sd a3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39842 (discriminator 1) +} + c0038026: 60aa ld ra,136(sp) + c0038028: 640a ld s0,128(sp) + c003802a: 6546 ld a0,80(sp) + c003802c: 65e6 ld a1,88(sp) + c003802e: 74e6 ld s1,120(sp) + c0038030: 7946 ld s2,112(sp) + c0038032: 6149 addi sp,sp,144 + c0038034: 8082 ret + c0038036: 87ae mv a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0037e68: 863e mv a2,a5 - c0037e6a: 872a mv a4,a0 - c0037e6c: e8aa sd a0,80(sp) - c0037e6e: ecae sd a1,88(sp) - c0037e70: 4801 li a6,0 - c0037e72: 85aa mv a1,a0 - c0037e74: 05c00693 li a3,92 - c0037e78: 8522 mv a0,s0 - c0037e7a: 9c9d90ef jal ra,c0011842 + c0038038: 863e mv a2,a5 + c003803a: 872a mv a4,a0 + c003803c: e8aa sd a0,80(sp) + c003803e: ecae sd a1,88(sp) + c0038040: 4801 li a6,0 + c0038042: 85aa mv a1,a0 + c0038044: 05c00693 li a3,92 + c0038048: 8522 mv a0,s0 + c003804a: 8e7d90ef jal ra,c0011930 js_array_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39822 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39830 if (JS_IsException(method)) { - c0037e7e: 0005879b sext.w a5,a1 + c003804e: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0037e82: 84aa mv s1,a0 - c0037e84: 862e mv a2,a1 + c0038052: 84aa mv s1,a0 + c0038054: 862e mv a2,a1 js_array_toString(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39822 - c0037e86: 01279d63 bne a5,s2,c0037ea0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39823 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39830 + c0038056: 01279d63 bne a5,s2,c0038070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39831 ret = JS_EXCEPTION; - c0037e8a: e082 sd zero,64(sp) - c0037e8c: 4499 li s1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39832 + c003805a: e082 sd zero,64(sp) + c003805c: 4499 li s1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39840 JS_FreeValue(ctx, obj); - c0037e8e: 7582 ld a1,32(sp) - c0037e90: 7622 ld a2,40(sp) - c0037e92: 8522 mv a0,s0 - c0037e94: ca5cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39833 + c003805e: 7582 ld a1,32(sp) + c0038060: 7622 ld a2,40(sp) + c0038062: 8522 mv a0,s0 + c0038064: bc3cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39841 return ret; - c0037e98: 6786 ld a5,64(sp) - c0037e9a: eca6 sd s1,88(sp) - c0037e9c: e8be sd a5,80(sp) - c0037e9e: bf65 j c0037e56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39825 + c0038068: 6786 ld a5,64(sp) + c003806a: eca6 sd s1,88(sp) + c003806c: e8be sd a5,80(sp) + c003806e: bf65 j c0038026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39833 if (!JS_IsFunction(ctx, method)) { - c0037ea0: 85aa mv a1,a0 - c0037ea2: 8522 mv a0,s0 - c0037ea4: e432 sd a2,8(sp) - c0037ea6: 837d20ef jal ra,c000a6dc - c0037eaa: 6622 ld a2,8(sp) - c0037eac: ed19 bnez a0,c0037eca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39827 + c0038070: 85aa mv a1,a0 + c0038072: 8522 mv a0,s0 + c0038074: e432 sd a2,8(sp) + c0038076: f54d20ef jal ra,c000a7ca + c003807a: 6622 ld a2,8(sp) + c003807c: ed19 bnez a0,c003809a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39835 JS_FreeValue(ctx, method); - c0037eae: 85a6 mv a1,s1 - c0037eb0: 8522 mv a0,s0 - c0037eb2: c87cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39828 + c003807e: 85a6 mv a1,s1 + c0038080: 8522 mv a0,s0 + c0038082: ba5cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39836 ret = js_object_toString(ctx, obj, 0, NULL); - c0037eb6: 7582 ld a1,32(sp) - c0037eb8: 7622 ld a2,40(sp) - c0037eba: 4701 li a4,0 - c0037ebc: 4681 li a3,0 - c0037ebe: 8522 mv a0,s0 - c0037ec0: 9e1fb0ef jal ra,c00338a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39830 + c0038086: 7582 ld a1,32(sp) + c0038088: 7622 ld a2,40(sp) + c003808a: 4701 li a4,0 + c003808c: 4681 li a3,0 + c003808e: 8522 mv a0,s0 + c0038090: 9e1fb0ef jal ra,c0033a70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39838 ret = JS_CallFree(ctx, method, obj, 0, NULL); - c0037ec4: e0aa sd a0,64(sp) - c0037ec6: 84ae mv s1,a1 - c0037ec8: b7d9 j c0037e8e - c0037eca: 7682 ld a3,32(sp) - c0037ecc: 7722 ld a4,40(sp) - c0037ece: 4801 li a6,0 - c0037ed0: 4781 li a5,0 - c0037ed2: 85a6 mv a1,s1 - c0037ed4: 8522 mv a0,s0 - c0037ed6: 937d90ef jal ra,c001180c - c0037eda: b7ed j c0037ec4 - -00000000c0037edc : + c0038094: e0aa sd a0,64(sp) + c0038096: 84ae mv s1,a1 + c0038098: b7d9 j c003805e + c003809a: 7682 ld a3,32(sp) + c003809c: 7722 ld a4,40(sp) + c003809e: 4801 li a6,0 + c00380a0: 4781 li a5,0 + c00380a2: 85a6 mv a1,s1 + c00380a4: 8522 mv a0,s0 + c00380a6: 855d90ef jal ra,c00118fa + c00380aa: b7ed j c0038094 + +00000000c00380ac : async_func_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18905 -{ - c0037edc: 7159 addi sp,sp,-112 - c0037ede: f486 sd ra,104(sp) - c0037ee0: f0a2 sd s0,96(sp) - c0037ee2: eca6 sd s1,88(sp) - c0037ee4: e8ca sd s2,80(sp) - c0037ee6: e4ce sd s3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18910 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18913 +{ + c00380ac: 7159 addi sp,sp,-112 + c00380ae: f486 sd ra,104(sp) + c00380b0: f0a2 sd s0,96(sp) + c00380b2: eca6 sd s1,88(sp) + c00380b4: e8ca sd s2,80(sp) + c00380b6: e4ce sd s3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18918 assert(!s->is_completed); - c0037ee8: 599c lw a5,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18906 + c00380b8: 599c lw a5,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18914 JSRuntime *rt = ctx->rt; - c0037eea: 01853903 ld s2,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18910 + c00380ba: 01853903 ld s2,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18918 assert(!s->is_completed); - c0037eee: cb99 beqz a5,c0037f04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18910 (discriminator 1) - c0037ef0: 6595 lui a1,0x5 - c0037ef2: 4601 li a2,0 - c0037ef4: 9de58593 addi a1,a1,-1570 # 49de <__clzdi2-0xbfffb622> - c0037ef8: 00025517 auipc a0,0x25 - c0037efc: b8050513 addi a0,a0,-1152 # c005ca78 - c0037f00: 3191b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18916 (discriminator 2) + c00380be: cb99 beqz a5,c00380d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18918 (discriminator 1) + c00380c0: 6595 lui a1,0x5 + c00380c2: 4601 li a2,0 + c00380c4: 9e658593 addi a1,a1,-1562 # 49e6 <__clzdi2-0xbfffb61a> + c00380c8: 00025517 auipc a0,0x25 + c00380cc: b8050513 addi a0,a0,-1152 # c005cc48 + c00380d0: 3191b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18924 (discriminator 2) ret = JS_CallInternal(ctx, func_obj, s->this_val, JS_UNDEFINED, - c0037f04: 4791 li a5,4 - c0037f06: e43e sd a5,8(sp) - c0037f08: 79bc ld a5,112(a1) - c0037f0a: 498d li s3,3 - c0037f0c: 480d li a6,3 - c0037f0e: e03e sd a5,0(sp) - c0037f10: 7198 ld a4,32(a1) - c0037f12: 0285a883 lw a7,40(a1) - c0037f16: 6d94 ld a3,24(a1) - c0037f18: 4781 li a5,0 - c0037f1a: 4601 li a2,0 - c0037f1c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18915 (discriminator 2) + c00380d4: 4791 li a5,4 + c00380d6: e43e sd a5,8(sp) + c00380d8: 79bc ld a5,112(a1) + c00380da: 498d li s3,3 + c00380dc: 480d li a6,3 + c00380de: e03e sd a5,0(sp) + c00380e0: 7198 ld a4,32(a1) + c00380e2: 0285a883 lw a7,40(a1) + c00380e6: 6d94 ld a3,24(a1) + c00380e8: 4781 li a5,0 + c00380ea: 4601 li a2,0 + c00380ec: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18923 (discriminator 2) func_obj = JS_MKPTR(JS_TAG_INT, s); - c0037f1e: e82e sd a1,16(sp) - c0037f20: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18916 (discriminator 2) + c00380ee: e82e sd a1,16(sp) + c00380f0: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18924 (discriminator 2) ret = JS_CallInternal(ctx, func_obj, s->this_val, JS_UNDEFINED, - c0037f22: f802 sd zero,48(sp) - c0037f24: fc4e sd s3,56(sp) - c0037f26: 876d30ef jal ra,c000af9c - c0037f2a: f02a sd a0,32(sp) - c0037f2c: f42e sd a1,40(sp) + c00380f2: f802 sd zero,48(sp) + c00380f4: fc4e sd s3,56(sp) + c00380f6: f95d20ef jal ra,c000b08a + c00380fa: f02a sd a0,32(sp) + c00380fc: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 (discriminator 2) return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0037f2e: 0005871b sext.w a4,a1 + c00380fe: 0005871b sext.w a4,a1 async_func_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18919 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18927 (discriminator 2) if (JS_IsException(ret) || JS_IsUndefined(ret)) { - c0037f32: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18916 (discriminator 2) + c0038102: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18924 (discriminator 2) ret = JS_CallInternal(ctx, func_obj, s->this_val, JS_UNDEFINED, - c0037f34: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18919 (discriminator 2) + c0038104: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18927 (discriminator 2) if (JS_IsException(ret) || JS_IsUndefined(ret)) { - c0037f36: 00f70e63 beq a4,a5,c0037f52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18919 (discriminator 1) - c0037f3a: 03371763 bne a4,s3,c0037f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18921 + c0038106: 00f70e63 beq a4,a5,c0038122 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18927 (discriminator 1) + c003810a: 03371763 bne a4,s3,c0038138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18929 ret = sf->cur_sp[-1]; - c0037f3e: 705c ld a5,160(s0) - c0037f40: ff07b683 ld a3,-16(a5) - c0037f44: ff87b483 ld s1,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18922 + c003810e: 705c ld a5,160(s0) + c0038110: ff07b683 ld a3,-16(a5) + c0038114: ff87b483 ld s1,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18930 sf->cur_sp[-1] = JS_UNDEFINED; - c0037f48: fe07b823 sd zero,-16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18921 + c0038118: fe07b823 sd zero,-16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18929 ret = sf->cur_sp[-1]; - c0037f4c: f036 sd a3,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18922 + c003811c: f036 sd a3,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18930 sf->cur_sp[-1] = JS_UNDEFINED; - c0037f4e: fee7bc23 sd a4,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18925 + c003811e: fee7bc23 sd a4,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18933 s->is_completed = TRUE; - c0037f52: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18928 + c0038122: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18936 close_var_refs(rt, sf); - c0037f54: 05840593 addi a1,s0,88 # 8058 <__clzdi2-0xbfff7fa8> - c0037f58: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18925 + c0038124: 05840593 addi a1,s0,88 # 8058 <__clzdi2-0xbfff7fa8> + c0038128: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18933 s->is_completed = TRUE; - c0037f5a: d81c sw a5,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18928 + c003812a: d81c sw a5,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18936 close_var_refs(rt, sf); - c0037f5c: db6d00ef jal ra,c0008512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18930 + c003812c: cd4d00ef jal ra,c0008600 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18938 async_func_free_frame(rt, s); - c0037f60: 85a2 mv a1,s0 - c0037f62: 854a mv a0,s2 - c0037f64: a19d00ef jal ra,c000897c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18933 -} - c0037f68: 70a6 ld ra,104(sp) - c0037f6a: 7406 ld s0,96(sp) - c0037f6c: 7502 ld a0,32(sp) - c0037f6e: 6946 ld s2,80(sp) - c0037f70: 69a6 ld s3,72(sp) - c0037f72: 85a6 mv a1,s1 - c0037f74: 64e6 ld s1,88(sp) - c0037f76: 6165 addi sp,sp,112 - c0037f78: 8082 ret - -00000000c0037f7a : + c0038130: 85a2 mv a1,s0 + c0038132: 854a mv a0,s2 + c0038134: 937d00ef jal ra,c0008a6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18941 +} + c0038138: 70a6 ld ra,104(sp) + c003813a: 7406 ld s0,96(sp) + c003813c: 7502 ld a0,32(sp) + c003813e: 6946 ld s2,80(sp) + c0038140: 69a6 ld s3,72(sp) + c0038142: 85a6 mv a1,s1 + c0038144: 64e6 ld s1,88(sp) + c0038146: 6165 addi sp,sp,112 + c0038148: 8082 ret + +00000000c003814a : js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19027 -{ - c0037f7a: 7135 addi sp,sp,-160 - c0037f7c: 86b2 mv a3,a2 - c0037f7e: e526 sd s1,136(sp) - c0037f80: f8d2 sd s4,112(sp) - c0037f82: f0da sd s6,96(sp) - c0037f84: e02e sd a1,0(sp) - c0037f86: e432 sd a2,8(sp) - c0037f88: 8a3e mv s4,a5 - c0037f8a: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19035 +{ + c003814a: 7135 addi sp,sp,-160 + c003814c: 86b2 mv a3,a2 + c003814e: e526 sd s1,136(sp) + c0038150: f8d2 sd s4,112(sp) + c0038152: f0da sd s6,96(sp) + c0038154: e02e sd a1,0(sp) + c0038156: e432 sd a2,8(sp) + c0038158: 8a3e mv s4,a5 + c003815a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 JSGeneratorData *s = JS_GetOpaque(this_val, JS_CLASS_GENERATOR); - c0037f8c: 02b00613 li a2,43 - c0037f90: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19032 + c003815c: 02b00613 li a2,43 + c0038160: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19040 *pdone = TRUE; - c0037f92: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19028 + c0038162: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 JSGeneratorData *s = JS_GetOpaque(this_val, JS_CLASS_GENERATOR); - c0037f94: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19027 -{ - c0037f96: e14a sd s2,128(sp) - c0037f98: fcce sd s3,120(sp) - c0037f9a: ed06 sd ra,152(sp) - c0037f9c: e922 sd s0,144(sp) - c0037f9e: f4d6 sd s5,104(sp) - c0037fa0: 893a mv s2,a4 - c0037fa2: 89c2 mv s3,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19028 + c0038164: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19035 +{ + c0038166: e14a sd s2,128(sp) + c0038168: fcce sd s3,120(sp) + c003816a: ed06 sd ra,152(sp) + c003816c: e922 sd s0,144(sp) + c003816e: f4d6 sd s5,104(sp) + c0038170: 893a mv s2,a4 + c0038172: 89c2 mv s3,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 JSGeneratorData *s = JS_GetOpaque(this_val, JS_CLASS_GENERATOR); - c0037fa4: 90fd20ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19032 + c0038174: 82dd20ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19040 *pdone = TRUE; - c0037fa8: 016a2023 sw s6,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19033 + c0038178: 016a2023 sw s6,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19041 if (!s) - c0037fac: e10d bnez a0,c0037fce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19103 -} - c0037fae: 644a ld s0,144(sp) - c0037fb0: 60ea ld ra,152(sp) - c0037fb2: 690a ld s2,128(sp) - c0037fb4: 79e6 ld s3,120(sp) - c0037fb6: 7a46 ld s4,112(sp) - c0037fb8: 7aa6 ld s5,104(sp) - c0037fba: 7b06 ld s6,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19034 + c003817c: e10d bnez a0,c003819e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19111 +} + c003817e: 644a ld s0,144(sp) + c0038180: 60ea ld ra,152(sp) + c0038182: 690a ld s2,128(sp) + c0038184: 79e6 ld s3,120(sp) + c0038186: 7a46 ld s4,112(sp) + c0038188: 7aa6 ld s5,104(sp) + c003818a: 7b06 ld s6,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19042 return JS_ThrowTypeError(ctx, "not a generator"); - c0037fbc: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19103 + c003818c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19111 } - c0037fbe: 64aa ld s1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19034 + c003818e: 64aa ld s1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19042 return JS_ThrowTypeError(ctx, "not a generator"); - c0037fc0: 00029597 auipc a1,0x29 - c0037fc4: 9a058593 addi a1,a1,-1632 # c0060960 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19103 + c0038190: 00029597 auipc a1,0x29 + c0038194: a3058593 addi a1,a1,-1488 # c0060bc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19111 } - c0037fc8: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19034 + c0038198: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19042 return JS_ThrowTypeError(ctx, "not a generator"); - c0037fca: c2cdb06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 + c003819a: b4adb06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19044 switch(s->state) { - c0037fce: 411c lw a5,0(a0) - c0037fd0: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19035 + c003819e: 411c lw a5,0(a0) + c00381a0: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19043 sf = &s->func_state->frame; - c0037fd2: 00853a83 ld s5,8(a0) - c0037fd6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 + c00381a2: 00853a83 ld s5,8(a0) + c00381a6: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19044 switch(s->state) { - c0037fd8: 16e78163 beq a5,a4,c003813a - c0037fdc: 00f76c63 bltu a4,a5,c0037ff4 - c0037fe0: 37fd addiw a5,a5,-1 - c0037fe2: 02fb7663 bgeu s6,a5,c003800e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19039 + c00381a8: 16e78163 beq a5,a4,c003830a + c00381ac: 00f76c63 bltu a4,a5,c00381c4 + c00381b0: 37fd addiw a5,a5,-1 + c00381b2: 02fb7663 bgeu s6,a5,c00381de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19047 if (magic == GEN_MAGIC_NEXT) { - c0037fe6: 0c098663 beqz s3,c00380b2 + c00381b6: 0c098663 beqz s3,c0038282 free_generator_stack(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19005 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19013 free_generator_stack_rt(ctx->rt, s); - c0037fea: 6c88 ld a0,24(s1) - c0037fec: 85a2 mv a1,s0 - c0037fee: da6d00ef jal ra,c0008594 + c00381ba: 6c88 ld a0,24(s1) + c00381bc: 85a2 mv a1,s0 + c00381be: cc4d00ef jal ra,c0008682 js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19043 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19051 goto done; - c0037ff2: a021 j c0037ffa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19036 + c00381c2: a021 j c00381ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19044 switch(s->state) { - c0037ff4: 4711 li a4,4 - c0037ff6: fee798e3 bne a5,a4,c0037fe6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19085 + c00381c4: 4711 li a4,4 + c00381c6: fee798e3 bne a5,a4,c00381b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19093 switch(magic) { - c0037ffa: 4785 li a5,1 - c0037ffc: 10f98763 beq s3,a5,c003810a - c0038000: 4789 li a5,2 - c0038002: 10f98e63 beq s3,a5,c003811e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19088 + c00381ca: 4785 li a5,1 + c00381cc: 10f98763 beq s3,a5,c00382da + c00381d0: 4789 li a5,2 + c00381d2: 10f98e63 beq s3,a5,c00382ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19096 ret = JS_UNDEFINED; - c0038006: ca02 sw zero,20(sp) - c0038008: 458d li a1,3 - c003800a: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19089 + c00381d6: ca02 sw zero,20(sp) + c00381d8: 458d li a1,3 + c00381da: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19097 break; - c003800c: a0fd j c00380fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19049 + c00381dc: a0fd j c00382ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19057 ret = JS_DupValue(ctx, argv[0]); - c003800e: 00093503 ld a0,0(s2) - c0038012: 00893583 ld a1,8(s2) - c0038016: e58ce0ef jal ra,c000666e - c003801a: e82a sd a0,16(sp) - c003801c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19050 + c00381de: 00093503 ld a0,0(s2) + c00381e2: 00893583 ld a1,8(s2) + c00381e6: d76ce0ef jal ra,c000675c + c00381ea: e82a sd a0,16(sp) + c00381ec: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19058 if (magic == GEN_MAGIC_THROW && - c003801e: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19049 + c00381ee: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19057 ret = JS_DupValue(ctx, argv[0]); - c0038020: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19050 + c00381f0: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19058 if (magic == GEN_MAGIC_THROW && - c0038022: 06f99063 bne s3,a5,c0038082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19050 (discriminator 1) - c0038026: 00042903 lw s2,0(s0) - c003802a: 05691c63 bne s2,s6,c0038082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19052 + c00381f2: 06f99063 bne s3,a5,c0038252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19058 (discriminator 1) + c00381f6: 00042903 lw s2,0(s0) + c00381fa: 05691c63 bne s2,s6,c0038252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19060 JS_Throw(ctx, ret); - c003802e: 85aa mv a1,a0 - c0038030: 8526 mv a0,s1 - c0038032: e4ad20ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19053 + c00381fe: 85aa mv a1,a0 + c0038200: 8526 mv a0,s1 + c0038202: d68d20ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19061 s->func_state->throw_flag = TRUE; - c0038036: 641c ld a5,8(s0) - c0038038: 0327a623 sw s2,44(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19062 + c0038206: 641c ld a5,8(s0) + c0038208: 0327a623 sw s2,44(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19070 func_ret = async_func_resume(ctx, s->func_state); - c003803c: 640c ld a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19061 + c003820c: 640c ld a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19069 s->state = JS_GENERATOR_STATE_EXECUTING; - c003803e: 490d li s2,3 - c0038040: 01242023 sw s2,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19062 + c003820e: 490d li s2,3 + c0038210: 01242023 sw s2,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19070 func_ret = async_func_resume(ctx, s->func_state); - c0038044: 8526 mv a0,s1 - c0038046: e97ff0ef jal ra,c0037edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19063 + c0038214: 8526 mv a0,s1 + c0038216: e97ff0ef jal ra,c00380ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19071 s->state = JS_GENERATOR_STATE_SUSPENDED_YIELD; - c003804a: 4785 li a5,1 - c003804c: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19064 + c003821a: 4785 li a5,1 + c003821c: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19072 if (s->func_state->is_completed) { - c003804e: 641c ld a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19062 + c003821e: 641c ld a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19070 func_ret = async_func_resume(ctx, s->func_state); - c0038050: f02a sd a0,32(sp) - c0038052: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19064 + c0038220: f02a sd a0,32(sp) + c0038222: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19072 if (s->func_state->is_completed) { - c0038054: 5b9c lw a5,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19062 + c0038224: 5b9c lw a5,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19070 func_ret = async_func_resume(ctx, s->func_state); - c0038056: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19064 + c0038226: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19072 if (s->func_state->is_completed) { - c0038058: c3ad beqz a5,c00380ba + c0038228: c3ad beqz a5,c003828a free_generator_stack(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19005 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19013 free_generator_stack_rt(ctx->rt, s); - c003805a: 6c88 ld a0,24(s1) - c003805c: 85a2 mv a1,s0 - c003805e: d36d00ef jal ra,c0008594 + c003822a: 6c88 ld a0,24(s1) + c003822c: 85a2 mv a1,s0 + c003822e: c54d00ef jal ra,c0008682 js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19067 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19075 return func_ret; - c0038062: 7782 ld a5,32(sp) - c0038064: f83e sd a5,48(sp) - c0038066: 77a2 ld a5,40(sp) - c0038068: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19103 -} - c003806a: 60ea ld ra,152(sp) - c003806c: 644a ld s0,144(sp) - c003806e: 7542 ld a0,48(sp) - c0038070: 75e2 ld a1,56(sp) - c0038072: 64aa ld s1,136(sp) - c0038074: 690a ld s2,128(sp) - c0038076: 79e6 ld s3,120(sp) - c0038078: 7a46 ld s4,112(sp) - c003807a: 7aa6 ld s5,104(sp) - c003807c: 7b06 ld s6,96(sp) - c003807e: 610d addi sp,sp,160 - c0038080: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19055 + c0038232: 7782 ld a5,32(sp) + c0038234: f83e sd a5,48(sp) + c0038236: 77a2 ld a5,40(sp) + c0038238: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19111 +} + c003823a: 60ea ld ra,152(sp) + c003823c: 644a ld s0,144(sp) + c003823e: 7542 ld a0,48(sp) + c0038240: 75e2 ld a1,56(sp) + c0038242: 64aa ld s1,136(sp) + c0038244: 690a ld s2,128(sp) + c0038246: 79e6 ld s3,120(sp) + c0038248: 7a46 ld s4,112(sp) + c003824a: 7aa6 ld s5,104(sp) + c003824c: 7b06 ld s6,96(sp) + c003824e: 610d addi sp,sp,160 + c0038250: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19063 sf->cur_sp[-1] = ret; - c0038082: 0a0ab783 ld a5,160(s5) - c0038086: 6742 ld a4,16(sp) + c0038252: 0a0ab783 ld a5,160(s5) + c0038256: 6742 ld a4,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038088: e882 sd zero,80(sp) - c003808a: c8ce sw s3,80(sp) + c0038258: e882 sd zero,80(sp) + c003825a: c8ce sw s3,80(sp) js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19055 - c003808c: fee7b823 sd a4,-16(a5) - c0038090: 6762 ld a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19063 + c003825c: fee7b823 sd a4,-16(a5) + c0038260: 6762 ld a4,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0038092: ec82 sd zero,88(sp) - c0038094: e482 sd zero,72(sp) + c0038262: ec82 sd zero,88(sp) + c0038264: e482 sd zero,72(sp) js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19055 - c0038096: fee7bc23 sd a4,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19063 + c0038266: fee7bc23 sd a4,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19064 sf->cur_sp[0] = JS_NewInt32(ctx, magic); - c003809a: 0a0ab783 ld a5,160(s5) + c003826a: 0a0ab783 ld a5,160(s5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003809e: 6746 ld a4,80(sp) + c003826e: 6746 ld a4,80(sp) js_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19056 - c00380a0: 0007b423 sd zero,8(a5) - c00380a4: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19057 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19064 + c0038270: 0007b423 sd zero,8(a5) + c0038274: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19065 sf->cur_sp++; - c00380a6: 0a0ab783 ld a5,160(s5) - c00380aa: e0ba sd a4,64(sp) - c00380ac: 07c1 addi a5,a5,16 - c00380ae: 0afab023 sd a5,160(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19059 + c0038276: 0a0ab783 ld a5,160(s5) + c003827a: e0ba sd a4,64(sp) + c003827c: 07c1 addi a5,a5,16 + c003827e: 0afab023 sd a5,160(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19067 s->func_state->throw_flag = FALSE; - c00380b2: 641c ld a5,8(s0) - c00380b4: 0207a623 sw zero,44(a5) - c00380b8: b751 j c003803c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19069 + c0038282: 641c ld a5,8(s0) + c0038284: 0207a623 sw zero,44(a5) + c0038288: b751 j c003820c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19077 assert(JS_VALUE_GET_TAG(func_ret) == JS_TAG_INT); - c00380ba: 2581 sext.w a1,a1 - c00380bc: c999 beqz a1,c00380d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19069 (discriminator 1) - c00380be: 6595 lui a1,0x5 - c00380c0: 4601 li a2,0 - c00380c2: a7d58593 addi a1,a1,-1411 # 4a7d <__clzdi2-0xbfffb583> - c00380c6: 00025517 auipc a0,0x25 - c00380ca: 9b250513 addi a0,a0,-1614 # c005ca78 - c00380ce: 14b1b0ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19071 (discriminator 2) + c003828a: 2581 sext.w a1,a1 + c003828c: c999 beqz a1,c00382a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19077 (discriminator 1) + c003828e: 6595 lui a1,0x5 + c0038290: 4601 li a2,0 + c0038292: a8558593 addi a1,a1,-1403 # 4a85 <__clzdi2-0xbfffb57b> + c0038296: 00025517 auipc a0,0x25 + c003829a: 9b250513 addi a0,a0,-1614 # c005cc48 + c003829e: 14b1b0ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19079 (discriminator 2) ret = sf->cur_sp[-1]; - c00380d2: 0a0ab783 ld a5,160(s5) - c00380d6: ff07b703 ld a4,-16(a5) - c00380da: ff87b583 ld a1,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19072 (discriminator 2) + c00382a2: 0a0ab783 ld a5,160(s5) + c00382a6: ff07b703 ld a4,-16(a5) + c00382aa: ff87b583 ld a1,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19080 (discriminator 2) sf->cur_sp[-1] = JS_UNDEFINED; - c00380de: ff27bc23 sd s2,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19071 (discriminator 2) + c00382ae: ff27bc23 sd s2,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19079 (discriminator 2) ret = sf->cur_sp[-1]; - c00380e2: e83a sd a4,16(sp) - c00380e4: ec2e sd a1,24(sp) - c00380e6: ff07a703 lw a4,-16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19072 (discriminator 2) + c00382b2: e83a sd a4,16(sp) + c00382b4: ec2e sd a1,24(sp) + c00382b6: ff07a703 lw a4,-16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19080 (discriminator 2) sf->cur_sp[-1] = JS_UNDEFINED; - c00380ea: fe07b823 sd zero,-16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19073 (discriminator 2) + c00382ba: fe07b823 sd zero,-16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19081 (discriminator 2) if (JS_VALUE_GET_INT(func_ret) == FUNC_RET_YIELD_STAR) { - c00380ee: 4789 li a5,2 - c00380f0: 00f51a63 bne a0,a5,c0038104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19074 + c00382be: 4789 li a5,2 + c00382c0: 00f51a63 bne a0,a5,c00382d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19082 s->state = JS_GENERATOR_STATE_SUSPENDED_YIELD_STAR; - c00380f4: c008 sw a0,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19076 + c00382c4: c008 sw a0,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19084 *pdone = 2; - c00380f6: 00aa2023 sw a0,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19102 + c00382c6: 00aa2023 sw a0,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19110 return ret; - c00380fa: c83a sw a4,16(sp) - c00380fc: 67c2 ld a5,16(sp) - c00380fe: fc2e sd a1,56(sp) - c0038100: f83e sd a5,48(sp) - c0038102: b7a5 j c003806a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19078 + c00382ca: c83a sw a4,16(sp) + c00382cc: 67c2 ld a5,16(sp) + c00382ce: fc2e sd a1,56(sp) + c00382d0: f83e sd a5,48(sp) + c00382d2: b7a5 j c003823a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19086 *pdone = FALSE; - c0038104: 000a2023 sw zero,0(s4) - c0038108: bfcd j c00380fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19091 - ret = JS_DupValue(ctx, argv[0]); - c003810a: 00093503 ld a0,0(s2) - c003810e: 00893583 ld a1,8(s2) - c0038112: d5cce0ef jal ra,c000666e + c00382d4: 000a2023 sw zero,0(s4) + c00382d8: bfcd j c00382ca /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19099 + ret = JS_DupValue(ctx, argv[0]); + c00382da: 00093503 ld a0,0(s2) + c00382de: 00893583 ld a1,8(s2) + c00382e2: c7ace0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19107 ret = JS_ThrowTypeError(ctx, "cannot invoke a running generator"); - c0038116: e82a sd a0,16(sp) - c0038118: 0005071b sext.w a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19100 + c00382e6: e82a sd a0,16(sp) + c00382e8: 0005071b sext.w a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19108 break; - c003811c: bff9 j c00380fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19094 + c00382ec: bff9 j c00382ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19102 ret = JS_Throw(ctx, JS_DupValue(ctx, argv[0])); - c003811e: 00093503 ld a0,0(s2) - c0038122: 00893583 ld a1,8(s2) - c0038126: d48ce0ef jal ra,c000666e - c003812a: 862e mv a2,a1 - c003812c: e0aa sd a0,64(sp) - c003812e: e4ae sd a1,72(sp) - c0038130: 85aa mv a1,a0 - c0038132: 8526 mv a0,s1 - c0038134: d48d20ef jal ra,c000a67c - c0038138: bff9 j c0038116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19099 + c00382ee: 00093503 ld a0,0(s2) + c00382f2: 00893583 ld a1,8(s2) + c00382f6: c66ce0ef jal ra,c000675c + c00382fa: 862e mv a2,a1 + c00382fc: e0aa sd a0,64(sp) + c00382fe: e4ae sd a1,72(sp) + c0038300: 85aa mv a1,a0 + c0038302: 8526 mv a0,s1 + c0038304: c66d20ef jal ra,c000a76a + c0038308: bff9 j c00382e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19107 ret = JS_ThrowTypeError(ctx, "cannot invoke a running generator"); - c003813a: 8526 mv a0,s1 - c003813c: 00029597 auipc a1,0x29 - c0038140: 83458593 addi a1,a1,-1996 # c0060970 - c0038144: ab2db0ef jal ra,c00133f6 - c0038148: b7f9 j c0038116 + c003830a: 8526 mv a0,s1 + c003830c: 00029597 auipc a1,0x29 + c0038310: 8c458593 addi a1,a1,-1852 # c0060bd0 + c0038314: 9d0db0ef jal ra,c00134e4 + c0038318: b7f9 j c00382e6 -00000000c003814a : +00000000c003831a : js_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19117 { - c003814a: 7119 addi sp,sp,-128 - c003814c: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19113 + c003831a: 7119 addi sp,sp,-128 + c003831c: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19121 s = js_mallocz(ctx, sizeof(*s)); - c003814e: 45c1 li a1,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19109 -{ - c0038150: f4a6 sd s1,104(sp) - c0038152: e43e sd a5,8(sp) - c0038154: e042 sd a6,0(sp) - c0038156: fc86 sd ra,120(sp) - c0038158: f8a2 sd s0,112(sp) - c003815a: f0ca sd s2,96(sp) - c003815c: 84aa mv s1,a0 - c003815e: f432 sd a2,40(sp) - c0038160: e836 sd a3,16(sp) - c0038162: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19113 + c003831e: 45c1 li a1,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19117 +{ + c0038320: f4a6 sd s1,104(sp) + c0038322: e43e sd a5,8(sp) + c0038324: e042 sd a6,0(sp) + c0038326: fc86 sd ra,120(sp) + c0038328: f8a2 sd s0,112(sp) + c003832a: f0ca sd s2,96(sp) + c003832c: 84aa mv s1,a0 + c003832e: f432 sd a2,40(sp) + c0038330: e836 sd a3,16(sp) + c0038332: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19121 s = js_mallocz(ctx, sizeof(*s)); - c0038164: b79dd0ef jal ra,c0015cdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19114 + c0038334: b79dd0ef jal ra,c0015eac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19122 if (!s) - c0038168: 6802 ld a6,0(sp) - c003816a: 67a2 ld a5,8(sp) - c003816c: e509 bnez a0,c0038176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19137 + c0038338: 6802 ld a6,0(sp) + c003833a: 67a2 ld a5,8(sp) + c003833c: e509 bnez a0,c0038346 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19145 return JS_EXCEPTION; - c003816e: 4799 li a5,6 - c0038170: e882 sd zero,80(sp) - c0038172: ecbe sd a5,88(sp) - c0038174: a0bd j c00381e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19117 + c003833e: 4799 li a5,6 + c0038340: e882 sd zero,80(sp) + c0038342: ecbe sd a5,88(sp) + c0038344: a0bd j c00383b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19125 s->func_state = async_func_init(ctx, func_obj, this_obj, argc, argv); - c0038176: 7582 ld a1,32(sp) - c0038178: 66c2 ld a3,16(sp) - c003817a: 6762 ld a4,24(sp) - c003817c: 7622 ld a2,40(sp) - c003817e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19116 + c0038346: 7582 ld a1,32(sp) + c0038348: 66c2 ld a3,16(sp) + c003834a: 6762 ld a4,24(sp) + c003834c: 7622 ld a2,40(sp) + c003834e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19124 s->state = JS_GENERATOR_STATE_SUSPENDED_START; - c0038180: 00052023 sw zero,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19117 + c0038350: 00052023 sw zero,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19125 s->func_state = async_func_init(ctx, func_obj, this_obj, argc, argv); - c0038184: 8526 mv a0,s1 - c0038186: b7ddd0ef jal ra,c0015d02 - c003818a: e408 sd a0,8(s0) - c003818c: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19118 + c0038354: 8526 mv a0,s1 + c0038356: b7ddd0ef jal ra,c0015ed2 + c003835a: e408 sd a0,8(s0) + c003835c: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19126 if (!s->func_state) { - c003818e: ed01 bnez a0,c00381a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19119 + c003835e: ed01 bnez a0,c0038376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19127 s->state = JS_GENERATOR_STATE_COMPLETED; - c0038190: 4791 li a5,4 - c0038192: c01c sw a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19135 + c0038360: 4791 li a5,4 + c0038362: c01c sw a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19143 free_generator_stack_rt(ctx->rt, s); - c0038194: 6c88 ld a0,24(s1) - c0038196: 85a2 mv a1,s0 - c0038198: bfcd00ef jal ra,c0008594 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19136 + c0038364: 6c88 ld a0,24(s1) + c0038366: 85a2 mv a1,s0 + c0038368: b1ad00ef jal ra,c0008682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19144 js_free(ctx, s); - c003819c: 85a2 mv a1,s0 - c003819e: 8526 mv a0,s1 - c00381a0: c9bce0ef jal ra,c0006e3a - c00381a4: b7e9 j c003816e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19124 + c003836c: 85a2 mv a1,s0 + c003836e: 8526 mv a0,s1 + c0038370: bb9ce0ef jal ra,c0006f28 + c0038374: b7e9 j c003833e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19132 func_ret = async_func_resume(ctx, s->func_state); - c00381a6: 8526 mv a0,s1 - c00381a8: d35ff0ef jal ra,c0037edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19125 + c0038376: 8526 mv a0,s1 + c0038378: d35ff0ef jal ra,c00380ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19133 if (JS_IsException(func_ret)) - c00381ac: 0005879b sext.w a5,a1 - c00381b0: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19124 + c003837c: 0005879b sext.w a5,a1 + c0038380: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19132 func_ret = async_func_resume(ctx, s->func_state); - c00381b2: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19125 + c0038382: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19133 if (JS_IsException(func_ret)) - c00381b4: ff2780e3 beq a5,s2,c0038194 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19127 + c0038384: ff2780e3 beq a5,s2,c0038364 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19135 JS_FreeValue(ctx, func_ret); - c00381b8: 85aa mv a1,a0 - c00381ba: 8526 mv a0,s1 - c00381bc: 97dcf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19129 + c0038388: 85aa mv a1,a0 + c003838a: 8526 mv a0,s1 + c003838c: 89bcf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19137 obj = js_create_from_ctor(ctx, func_obj, JS_CLASS_GENERATOR); - c00381c0: 7582 ld a1,32(sp) - c00381c2: 7622 ld a2,40(sp) - c00381c4: 02b00693 li a3,43 - c00381c8: 8526 mv a0,s1 - c00381ca: 821de0ef jal ra,c00169ea + c0038390: 7582 ld a1,32(sp) + c0038392: 7622 ld a2,40(sp) + c0038394: 02b00693 li a3,43 + c0038398: 8526 mv a0,s1 + c003839a: 821de0ef jal ra,c0016bba JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00381ce: 0005879b sext.w a5,a1 + c003839e: 0005879b sext.w a5,a1 js_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19138 if (JS_IsException(obj)) - c00381d2: fd2781e3 beq a5,s2,c0038194 + c00383a2: fd2781e3 beq a5,s2,c0038364 JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c00381d6: 577d li a4,-1 - c00381d8: 00e79363 bne a5,a4,c00381de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c00383a6: 577d li a4,-1 + c00383a8: 00e79363 bne a5,a4,c00383ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c00381dc: f900 sd s0,48(a0) + c00383ac: f900 sd s0,48(a0) js_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19133 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19141 return obj; - c00381de: e8aa sd a0,80(sp) - c00381e0: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19138 (discriminator 1) -} - c00381e2: 70e6 ld ra,120(sp) - c00381e4: 7446 ld s0,112(sp) - c00381e6: 6546 ld a0,80(sp) - c00381e8: 65e6 ld a1,88(sp) - c00381ea: 74a6 ld s1,104(sp) - c00381ec: 7906 ld s2,96(sp) - c00381ee: 6109 addi sp,sp,128 - c00381f0: 8082 ret - -00000000c00381f2 : + c00383ae: e8aa sd a0,80(sp) + c00383b0: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19146 (discriminator 1) +} + c00383b2: 70e6 ld ra,120(sp) + c00383b4: 7446 ld s0,112(sp) + c00383b6: 6546 ld a0,80(sp) + c00383b8: 65e6 ld a1,88(sp) + c00383ba: 74a6 ld s1,104(sp) + c00383bc: 7906 ld s2,96(sp) + c00383be: 6109 addi sp,sp,128 + c00383c0: 8082 ret + +00000000c00383c2 : js_async_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19708 { - c00381f2: 7119 addi sp,sp,-128 - c00381f4: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19704 + c00383c2: 7119 addi sp,sp,-128 + c00383c4: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19712 s = js_mallocz(ctx, sizeof(*s)); - c00381f6: 02800593 li a1,40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19700 + c00383c6: 02800593 li a1,40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19708 { - c00381fa: f4a6 sd s1,104(sp) - c00381fc: e43e sd a5,8(sp) - c00381fe: e042 sd a6,0(sp) - c0038200: fc86 sd ra,120(sp) - c0038202: f8a2 sd s0,112(sp) - c0038204: f0ca sd s2,96(sp) - c0038206: 84aa mv s1,a0 - c0038208: f432 sd a2,40(sp) - c003820a: e836 sd a3,16(sp) - c003820c: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19704 + c00383ca: f4a6 sd s1,104(sp) + c00383cc: e43e sd a5,8(sp) + c00383ce: e042 sd a6,0(sp) + c00383d0: fc86 sd ra,120(sp) + c00383d2: f8a2 sd s0,112(sp) + c00383d4: f0ca sd s2,96(sp) + c00383d6: 84aa mv s1,a0 + c00383d8: f432 sd a2,40(sp) + c00383da: e836 sd a3,16(sp) + c00383dc: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19712 s = js_mallocz(ctx, sizeof(*s)); - c003820e: acfdd0ef jal ra,c0015cdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19705 + c00383de: acfdd0ef jal ra,c0015eac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19713 if (!s) - c0038212: 6802 ld a6,0(sp) - c0038214: 67a2 ld a5,8(sp) - c0038216: e509 bnez a0,c0038220 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19727 + c00383e2: 6802 ld a6,0(sp) + c00383e4: 67a2 ld a5,8(sp) + c00383e6: e509 bnez a0,c00383f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19735 return JS_EXCEPTION; - c0038218: 4799 li a5,6 - c003821a: e882 sd zero,80(sp) - c003821c: ecbe sd a5,88(sp) - c003821e: a08d j c0038280 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19708 + c00383e8: 4799 li a5,6 + c00383ea: e882 sd zero,80(sp) + c00383ec: ecbe sd a5,88(sp) + c00383ee: a08d j c0038450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19716 init_list_head(&s->queue); - c0038220: 01850713 addi a4,a0,24 + c00383f0: 01850713 addi a4,a0,24 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0038224: ed18 sd a4,24(a0) + c00383f4: ed18 sd a4,24(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0038226: f118 sd a4,32(a0) + c00383f6: f118 sd a4,32(a0) js_async_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19717 s->func_state = async_func_init(ctx, func_obj, this_obj, argc, argv); - c0038228: 7582 ld a1,32(sp) - c003822a: 66c2 ld a3,16(sp) - c003822c: 6762 ld a4,24(sp) - c003822e: 7622 ld a2,40(sp) - c0038230: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19707 + c00383f8: 7582 ld a1,32(sp) + c00383fa: 66c2 ld a3,16(sp) + c00383fc: 6762 ld a4,24(sp) + c00383fe: 7622 ld a2,40(sp) + c0038400: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19715 s->state = JS_ASYNC_GENERATOR_STATE_SUSPENDED_START; - c0038232: 00052423 sw zero,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19709 + c0038402: 00052423 sw zero,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19717 s->func_state = async_func_init(ctx, func_obj, this_obj, argc, argv); - c0038236: 8526 mv a0,s1 - c0038238: acbdd0ef jal ra,c0015d02 - c003823c: e808 sd a0,16(s0) - c003823e: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19710 + c0038406: 8526 mv a0,s1 + c0038408: acbdd0ef jal ra,c0015ed2 + c003840c: e808 sd a0,16(s0) + c003840e: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19718 if (!s->func_state) - c0038240: c921 beqz a0,c0038290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19714 + c0038410: c921 beqz a0,c0038460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19722 func_ret = async_func_resume(ctx, s->func_state); - c0038242: 8526 mv a0,s1 - c0038244: c99ff0ef jal ra,c0037edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19715 + c0038412: 8526 mv a0,s1 + c0038414: c99ff0ef jal ra,c00380ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19723 if (JS_IsException(func_ret)) - c0038248: 0005879b sext.w a5,a1 - c003824c: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19714 + c0038418: 0005879b sext.w a5,a1 + c003841c: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19722 func_ret = async_func_resume(ctx, s->func_state); - c003824e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19715 + c003841e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19723 if (JS_IsException(func_ret)) - c0038250: 05278063 beq a5,s2,c0038290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19717 + c0038420: 05278063 beq a5,s2,c0038460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19725 JS_FreeValue(ctx, func_ret); - c0038254: 85aa mv a1,a0 - c0038256: 8526 mv a0,s1 - c0038258: 8e1cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19719 + c0038424: 85aa mv a1,a0 + c0038426: 8526 mv a0,s1 + c0038428: ffecf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19727 obj = js_create_from_ctor(ctx, func_obj, JS_CLASS_ASYNC_GENERATOR); - c003825c: 7582 ld a1,32(sp) - c003825e: 7622 ld a2,40(sp) - c0038260: 03500693 li a3,53 - c0038264: 8526 mv a0,s1 - c0038266: f84de0ef jal ra,c00169ea + c003842c: 7582 ld a1,32(sp) + c003842e: 7622 ld a2,40(sp) + c0038430: 03500693 li a3,53 + c0038434: 8526 mv a0,s1 + c0038436: f84de0ef jal ra,c0016bba JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003826a: 0005879b sext.w a5,a1 + c003843a: 0005879b sext.w a5,a1 js_async_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19720 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19728 if (JS_IsException(obj)) - c003826e: 03278163 beq a5,s2,c0038290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19722 + c003843e: 03278163 beq a5,s2,c0038460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19730 s->generator = JS_VALUE_GET_OBJ(obj); - c0038272: e008 sd a0,0(s0) + c0038442: e008 sd a0,0(s0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0038274: 577d li a4,-1 - c0038276: 00e79363 bne a5,a4,c003827c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0038444: 577d li a4,-1 + c0038446: 00e79363 bne a5,a4,c003844c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c003827a: f900 sd s0,48(a0) + c003844a: f900 sd s0,48(a0) js_async_generator_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19724 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19732 return obj; - c003827c: e8aa sd a0,80(sp) - c003827e: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19728 (discriminator 1) -} - c0038280: 70e6 ld ra,120(sp) - c0038282: 7446 ld s0,112(sp) - c0038284: 6546 ld a0,80(sp) - c0038286: 65e6 ld a1,88(sp) - c0038288: 74a6 ld s1,104(sp) - c003828a: 7906 ld s2,96(sp) - c003828c: 6109 addi sp,sp,128 - c003828e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19726 + c003844c: e8aa sd a0,80(sp) + c003844e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19736 (discriminator 1) +} + c0038450: 70e6 ld ra,120(sp) + c0038452: 7446 ld s0,112(sp) + c0038454: 6546 ld a0,80(sp) + c0038456: 65e6 ld a1,88(sp) + c0038458: 74a6 ld s1,104(sp) + c003845a: 7906 ld s2,96(sp) + c003845c: 6109 addi sp,sp,128 + c003845e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19734 js_async_generator_free(ctx->rt, s); - c0038290: 6c88 ld a0,24(s1) - c0038292: 85a2 mv a1,s0 - c0038294: addd00ef jal ra,c0008d70 - c0038298: b741 j c0038218 + c0038460: 6c88 ld a0,24(s1) + c0038462: 85a2 mv a1,s0 + c0038464: 9fbd00ef jal ra,c0008e5e + c0038468: b741 j c00383e8 -00000000c003829a : +00000000c003846a : JS_CallConstructorInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18760 -{ - c003829a: 7135 addi sp,sp,-160 - c003829c: e922 sd s0,144(sp) - c003829e: e526 sd s1,136(sp) - c00382a0: fcce sd s3,120(sp) - c00382a2: f8d2 sd s4,112(sp) - c00382a4: ed06 sd ra,152(sp) - c00382a6: e14a sd s2,128(sp) - c00382a8: f4d6 sd s5,104(sp) - c00382aa: 842a mv s0,a0 - c00382ac: f02e sd a1,32(sp) - c00382ae: f432 sd a2,40(sp) - c00382b0: e836 sd a3,16(sp) - c00382b2: ec3a sd a4,24(sp) - c00382b4: 89be mv s3,a5 - c00382b6: 8a42 mv s4,a6 - c00382b8: 84c6 mv s1,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18768 +{ + c003846a: 7135 addi sp,sp,-160 + c003846c: e922 sd s0,144(sp) + c003846e: e526 sd s1,136(sp) + c0038470: fcce sd s3,120(sp) + c0038472: f8d2 sd s4,112(sp) + c0038474: ed06 sd ra,152(sp) + c0038476: e14a sd s2,128(sp) + c0038478: f4d6 sd s5,104(sp) + c003847a: 842a mv s0,a0 + c003847c: f02e sd a1,32(sp) + c003847e: f432 sd a2,40(sp) + c0038480: e836 sd a3,16(sp) + c0038482: ec3a sd a4,24(sp) + c0038484: 89be mv s3,a5 + c0038486: 8a42 mv s4,a6 + c0038488: 84c6 mv s1,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18772 if (js_poll_interrupts(ctx)) - c00382ba: f40dc0ef jal ra,c00149fa - c00382be: c509 beqz a0,c00382c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18765 + c003848a: e5edc0ef jal ra,c0014ae8 + c003848e: c509 beqz a0,c0038498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18773 return JS_EXCEPTION; - c00382c0: e882 sd zero,80(sp) - c00382c2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18799 + c0038490: e882 sd zero,80(sp) + c0038492: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18807 return obj; - c00382c4: ecbe sd a5,88(sp) - c00382c6: a06d j c0038370 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18767 + c0038494: ecbe sd a5,88(sp) + c0038496: a06d j c0038540 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18775 if (unlikely(JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT)) - c00382c8: 7622 ld a2,40(sp) - c00382ca: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18766 + c0038498: 7622 ld a2,40(sp) + c003849a: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18774 flags |= JS_CALL_FLAG_CONSTRUCTOR; - c00382cc: 0014e493 ori s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18767 + c003849c: 0014e493 ori s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18775 if (unlikely(JS_VALUE_GET_TAG(func_obj) != JS_TAG_OBJECT)) - c00382d0: 0006091b sext.w s2,a2 - c00382d4: 04f91663 bne s2,a5,c0038320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18769 + c00384a0: 0006091b sext.w s2,a2 + c00384a4: 04f91663 bne s2,a5,c00384f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18777 p = JS_VALUE_GET_OBJ(func_obj); - c00382d8: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18770 + c00384a8: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18778 if (unlikely(!p->is_constructor)) - c00382da: 0055c703 lbu a4,5(a1) - c00382de: 8b41 andi a4,a4,16 - c00382e0: e305 bnez a4,c0038300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18771 + c00384aa: 0055c703 lbu a4,5(a1) + c00384ae: 8b41 andi a4,a4,16 + c00384b0: e305 bnez a4,c00384d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 return JS_ThrowTypeError(ctx, "not a constructor"); - c00382e2: 00026597 auipc a1,0x26 - c00382e6: 8e658593 addi a1,a1,-1818 # c005dbc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18777 + c00384b2: 00026597 auipc a1,0x26 + c00384b6: 94658593 addi a1,a1,-1722 # c005ddf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18785 return JS_ThrowTypeError(ctx, "not a function"); - c00382ea: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 -} - c00382ec: 644a ld s0,144(sp) - c00382ee: 60ea ld ra,152(sp) - c00382f0: 64aa ld s1,136(sp) - c00382f2: 690a ld s2,128(sp) - c00382f4: 79e6 ld s3,120(sp) - c00382f6: 7a46 ld s4,112(sp) - c00382f8: 7aa6 ld s5,104(sp) - c00382fa: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18777 + c00384ba: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 +} + c00384bc: 644a ld s0,144(sp) + c00384be: 60ea ld ra,152(sp) + c00384c0: 64aa ld s1,136(sp) + c00384c2: 690a ld s2,128(sp) + c00384c4: 79e6 ld s3,120(sp) + c00384c6: 7a46 ld s4,112(sp) + c00384c8: 7aa6 ld s5,104(sp) + c00384ca: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18785 return JS_ThrowTypeError(ctx, "not a function"); - c00382fc: 8fadb06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18772 + c00384cc: 818db06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18780 if (unlikely(p->class_id != JS_CLASS_BYTECODE_FUNCTION)) { - c0038300: 0065d703 lhu a4,6(a1) - c0038304: 47b5 li a5,13 - c0038306: 04f70163 beq a4,a5,c0038348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18774 + c00384d0: 0065d703 lhu a4,6(a1) + c00384d4: 47b5 li a5,13 + c00384d6: 04f70163 beq a4,a5,c0038518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18782 call_func = ctx->rt->class_array[p->class_id].call; - c003830a: 6c1c ld a5,24(s0) - c003830c: 7bb4 ld a3,112(a5) - c003830e: 02800793 li a5,40 - c0038312: 02f70733 mul a4,a4,a5 - c0038316: 9736 add a4,a4,a3 - c0038318: 01873303 ld t1,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18775 + c00384da: 6c1c ld a5,24(s0) + c00384dc: 7bb4 ld a3,112(a5) + c00384de: 02800793 li a5,40 + c00384e2: 02f70733 mul a4,a4,a5 + c00384e6: 9736 add a4,a4,a3 + c00384e8: 01873303 ld t1,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18783 if (!call_func) { - c003831c: 00031763 bnez t1,c003832a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18777 + c00384ec: 00031763 bnez t1,c00384fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18785 return JS_ThrowTypeError(ctx, "not a function"); - c0038320: 00025597 auipc a1,0x25 - c0038324: ce858593 addi a1,a1,-792 # c005d008 - c0038328: b7c9 j c00382ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 + c00384f0: 00025597 auipc a1,0x25 + c00384f4: d4858593 addi a1,a1,-696 # c005d238 + c00384f8: b7c9 j c00384ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18787 return call_func(ctx, func_obj, new_target, argc, - c003832a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 + c00384fa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 } - c003832c: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 + c00384fc: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18787 return call_func(ctx, func_obj, new_target, argc, - c003832e: 66c2 ld a3,16(sp) - c0038330: 6762 ld a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 -} - c0038332: 60ea ld ra,152(sp) - c0038334: 690a ld s2,128(sp) - c0038336: 7aa6 ld s5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 + c00384fe: 66c2 ld a3,16(sp) + c0038500: 6762 ld a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 +} + c0038502: 60ea ld ra,152(sp) + c0038504: 690a ld s2,128(sp) + c0038506: 7aa6 ld s5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18787 return call_func(ctx, func_obj, new_target, argc, - c0038338: 88a6 mv a7,s1 - c003833a: 8852 mv a6,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 + c0038508: 88a6 mv a7,s1 + c003850a: 8852 mv a6,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 } - c003833c: 64aa ld s1,136(sp) - c003833e: 7a46 ld s4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 + c003850c: 64aa ld s1,136(sp) + c003850e: 7a46 ld s4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18787 return call_func(ctx, func_obj, new_target, argc, - c0038340: 87ce mv a5,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 + c0038510: 87ce mv a5,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 } - c0038342: 79e6 ld s3,120(sp) - c0038344: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18779 + c0038512: 79e6 ld s3,120(sp) + c0038514: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18787 return call_func(ctx, func_obj, new_target, argc, - c0038346: 8302 jr t1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18784 + c0038516: 8302 jr t1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18792 if (b->is_derived_class_constructor) { - c0038348: 799c ld a5,48(a1) - c003834a: 0197c703 lbu a4,25(a5) - c003834e: 8b11 andi a4,a4,4 - c0038350: cb1d beqz a4,c0038386 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18785 + c0038518: 799c ld a5,48(a1) + c003851a: 0197c703 lbu a4,25(a5) + c003851e: 8b11 andi a4,a4,4 + c0038520: cb1d beqz a4,c0038556 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18793 return JS_CallInternal(ctx, func_obj, JS_UNDEFINED, new_target, argc, argv, flags); - c0038352: 478d li a5,3 - c0038354: e4be sd a5,72(sp) - c0038356: 6862 ld a6,24(sp) - c0038358: 67c2 ld a5,16(sp) - c003835a: e426 sd s1,8(sp) - c003835c: e052 sd s4,0(sp) - c003835e: 88ce mv a7,s3 - c0038360: 4681 li a3,0 - c0038362: 470d li a4,3 - c0038364: 8522 mv a0,s0 - c0038366: e082 sd zero,64(sp) - c0038368: c35d20ef jal ra,c000af9c - c003836c: e8aa sd a0,80(sp) - c003836e: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18802 (discriminator 4) -} - c0038370: 60ea ld ra,152(sp) - c0038372: 644a ld s0,144(sp) - c0038374: 6546 ld a0,80(sp) - c0038376: 65e6 ld a1,88(sp) - c0038378: 64aa ld s1,136(sp) - c003837a: 690a ld s2,128(sp) - c003837c: 79e6 ld s3,120(sp) - c003837e: 7a46 ld s4,112(sp) - c0038380: 7aa6 ld s5,104(sp) - c0038382: 610d addi sp,sp,160 - c0038384: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18789 + c0038522: 478d li a5,3 + c0038524: e4be sd a5,72(sp) + c0038526: 6862 ld a6,24(sp) + c0038528: 67c2 ld a5,16(sp) + c003852a: e426 sd s1,8(sp) + c003852c: e052 sd s4,0(sp) + c003852e: 88ce mv a7,s3 + c0038530: 4681 li a3,0 + c0038532: 470d li a4,3 + c0038534: 8522 mv a0,s0 + c0038536: e082 sd zero,64(sp) + c0038538: b53d20ef jal ra,c000b08a + c003853c: e8aa sd a0,80(sp) + c003853e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18810 (discriminator 4) +} + c0038540: 60ea ld ra,152(sp) + c0038542: 644a ld s0,144(sp) + c0038544: 6546 ld a0,80(sp) + c0038546: 65e6 ld a1,88(sp) + c0038548: 64aa ld s1,136(sp) + c003854a: 690a ld s2,128(sp) + c003854c: 79e6 ld s3,120(sp) + c003854e: 7a46 ld s4,112(sp) + c0038550: 7aa6 ld s5,104(sp) + c0038552: 610d addi sp,sp,160 + c0038554: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18797 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT); - c0038386: 65c2 ld a1,16(sp) - c0038388: 6662 ld a2,24(sp) - c003838a: 4685 li a3,1 - c003838c: 8522 mv a0,s0 - c003838e: e5cde0ef jal ra,c00169ea - c0038392: f82a sd a0,48(sp) - c0038394: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18790 + c0038556: 65c2 ld a1,16(sp) + c0038558: 6662 ld a2,24(sp) + c003855a: 4685 li a3,1 + c003855c: 8522 mv a0,s0 + c003855e: e5cde0ef jal ra,c0016bba + c0038562: f82a sd a0,48(sp) + c0038564: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18798 if (JS_IsException(obj)) - c0038396: 0005879b sext.w a5,a1 - c003839a: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18789 + c0038566: 0005879b sext.w a5,a1 + c003856a: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18797 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT); - c003839c: 86aa mv a3,a0 - c003839e: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18790 + c003856c: 86aa mv a3,a0 + c003856e: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18798 if (JS_IsException(obj)) - c00383a0: 01579463 bne a5,s5,c00383a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18791 + c0038570: 01579463 bne a5,s5,c0038578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18799 return JS_EXCEPTION; - c00383a4: e882 sd zero,80(sp) - c00383a6: bf39 j c00382c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18792 + c0038574: e882 sd zero,80(sp) + c0038576: bf39 j c0038494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18800 ret = JS_CallInternal(ctx, func_obj, obj, new_target, argc, argv, flags); - c00383a8: 67c2 ld a5,16(sp) - c00383aa: 7622 ld a2,40(sp) - c00383ac: 6862 ld a6,24(sp) - c00383ae: 7582 ld a1,32(sp) - c00383b0: e426 sd s1,8(sp) - c00383b2: e052 sd s4,0(sp) - c00383b4: 88ce mv a7,s3 - c00383b6: 8522 mv a0,s0 - c00383b8: be5d20ef jal ra,c000af9c - c00383bc: e0aa sd a0,64(sp) - c00383be: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18793 + c0038578: 67c2 ld a5,16(sp) + c003857a: 7622 ld a2,40(sp) + c003857c: 6862 ld a6,24(sp) + c003857e: 7582 ld a1,32(sp) + c0038580: e426 sd s1,8(sp) + c0038582: e052 sd s4,0(sp) + c0038584: 88ce mv a7,s3 + c0038586: 8522 mv a0,s0 + c0038588: b03d20ef jal ra,c000b08a + c003858c: e0aa sd a0,64(sp) + c003858e: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18801 if (JS_VALUE_GET_TAG(ret) == JS_TAG_OBJECT || - c00383c0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18792 + c0038590: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18800 ret = JS_CallInternal(ctx, func_obj, obj, new_target, argc, argv, flags); - c00383c4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18793 + c0038594: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18801 if (JS_VALUE_GET_TAG(ret) == JS_TAG_OBJECT || - c00383c6: 01278463 beq a5,s2,c00383ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18793 (discriminator 1) - c00383ca: 01579b63 bne a5,s5,c00383e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18795 + c0038596: 01278463 beq a5,s2,c003859e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18801 (discriminator 1) + c003859a: 01579b63 bne a5,s5,c00385b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18803 JS_FreeValue(ctx, obj); - c00383ce: 75c2 ld a1,48(sp) - c00383d0: 7662 ld a2,56(sp) - c00383d2: 8522 mv a0,s0 - c00383d4: f64cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18796 + c003859e: 75c2 ld a1,48(sp) + c00385a0: 7662 ld a2,56(sp) + c00385a2: 8522 mv a0,s0 + c00385a4: e82cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18804 return ret; - c00383d8: 6786 ld a5,64(sp) - c00383da: e8be sd a5,80(sp) - c00383dc: 67a6 ld a5,72(sp) - c00383de: b5dd j c00382c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18798 + c00385a8: 6786 ld a5,64(sp) + c00385aa: e8be sd a5,80(sp) + c00385ac: 67a6 ld a5,72(sp) + c00385ae: b5dd j c0038494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18806 JS_FreeValue(ctx, ret); - c00383e0: 85aa mv a1,a0 - c00383e2: 8522 mv a0,s0 - c00383e4: f54cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18799 + c00385b0: 85aa mv a1,a0 + c00385b2: 8522 mv a0,s0 + c00385b4: e72cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18807 return obj; - c00383e8: 77c2 ld a5,48(sp) - c00383ea: e8be sd a5,80(sp) - c00383ec: 77e2 ld a5,56(sp) - c00383ee: bdd9 j c00382c4 + c00385b8: 77c2 ld a5,48(sp) + c00385ba: e8be sd a5,80(sp) + c00385bc: 77e2 ld a5,56(sp) + c00385be: bdd9 j c0038494 -00000000c00383f0 : +00000000c00385c0 : JS_CallConstructor2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18807 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18815 { - c00383f0: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18808 + c00385c0: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18816 return JS_CallConstructorInternal(ctx, func_obj, new_target, - c00383f2: 4889 li a7,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18811 + c00385c2: 4889 li a7,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18819 } - c00383f4: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18808 + c00385c4: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18816 return JS_CallConstructorInternal(ctx, func_obj, new_target, - c00383f6: ea5ff06f j c003829a + c00385c6: ea5ff06f j c003846a -00000000c00383fa : +00000000c00385ca : js_reflect_construct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45643 -{ - c00383fa: 7135 addi sp,sp,-160 - c00383fc: e14a sd s2,128(sp) - c00383fe: ed06 sd ra,152(sp) - c0038400: e922 sd s0,144(sp) - c0038402: e526 sd s1,136(sp) - c0038404: fcce sd s3,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45649 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45651 +{ + c00385ca: 7135 addi sp,sp,-160 + c00385cc: e14a sd s2,128(sp) + c00385ce: ed06 sd ra,152(sp) + c00385d0: e922 sd s0,144(sp) + c00385d2: e526 sd s1,136(sp) + c00385d4: fcce sd s3,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45657 array_arg = argv[1]; - c0038406: 6b1c ld a5,16(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45648 + c00385d6: 6b1c ld a5,16(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45656 func = argv[0]; - c0038408: 6304 ld s1,0(a4) - c003840a: 6700 ld s0,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45649 + c00385d8: 6304 ld s1,0(a4) + c00385da: 6700 ld s0,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45657 array_arg = argv[1]; - c003840c: f83e sd a5,48(sp) - c003840e: 6f1c ld a5,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45643 + c00385dc: f83e sd a5,48(sp) + c00385de: 6f1c ld a5,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45651 { - c0038410: e02e sd a1,0(sp) - c0038412: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45649 + c00385e0: e02e sd a1,0(sp) + c00385e2: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45657 array_arg = argv[1]; - c0038414: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45648 + c00385e4: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45656 func = argv[0]; - c0038416: f026 sd s1,32(sp) - c0038418: f422 sd s0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45650 + c00385e6: f026 sd s1,32(sp) + c00385e8: f422 sd s0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45658 if (argc > 2) { - c003841a: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45643 + c00385ea: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45651 { - c003841c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45650 + c00385ec: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45658 if (argc > 2) { - c003841e: 02d7dc63 bge a5,a3,c0038456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45651 + c00385ee: 02d7dc63 bge a5,a3,c0038626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45659 new_target = argv[2]; - c0038422: 7304 ld s1,32(a4) - c0038424: 7700 ld s0,40(a4) + c00385f2: 7304 ld s1,32(a4) + c00385f4: 7700 ld s0,40(a4) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0038426: 57fd li a5,-1 + c00385f6: 57fd li a5,-1 js_reflect_construct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45659 new_target = argv[2]; - c0038428: e0a6 sd s1,64(sp) - c003842a: e4a2 sd s0,72(sp) + c00385f8: e0a6 sd s1,64(sp) + c00385fa: e4a2 sd s0,72(sp) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c003842c: 0004071b sext.w a4,s0 - c0038430: 00f71663 bne a4,a5,c003843c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c00385fc: 0004071b sext.w a4,s0 + c0038600: 00f71663 bne a4,a5,c003860c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0038434: 609c ld a5,0(s1) - c0038436: 93b1 srli a5,a5,0x2c + c0038604: 609c ld a5,0(s1) + c0038606: 93b1 srli a5,a5,0x2c js_reflect_construct(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45660 if (!JS_IsConstructor(ctx, new_target)) - c0038438: 8b85 andi a5,a5,1 - c003843a: ef91 bnez a5,c0038456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45663 -} - c003843c: 644a ld s0,144(sp) - c003843e: 60ea ld ra,152(sp) - c0038440: 64aa ld s1,136(sp) - c0038442: 79e6 ld s3,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45653 + c0038608: 8b85 andi a5,a5,1 + c003860a: ef91 bnez a5,c0038626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45671 +} + c003860c: 644a ld s0,144(sp) + c003860e: 60ea ld ra,152(sp) + c0038610: 64aa ld s1,136(sp) + c0038612: 79e6 ld s3,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45661 return JS_ThrowTypeError(ctx, "not a constructor"); - c0038444: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45663 + c0038614: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45671 } - c0038446: 690a ld s2,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45653 + c0038616: 690a ld s2,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45661 return JS_ThrowTypeError(ctx, "not a constructor"); - c0038448: 00025597 auipc a1,0x25 - c003844c: 78058593 addi a1,a1,1920 # c005dbc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45663 + c0038618: 00025597 auipc a1,0x25 + c003861c: 7e058593 addi a1,a1,2016 # c005ddf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45671 } - c0038450: 610d addi sp,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45653 + c0038620: 610d addi sp,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45661 return JS_ThrowTypeError(ctx, "not a constructor"); - c0038452: fa5da06f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45657 + c0038622: ec3da06f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45665 tab = build_arg_list(ctx, &len, array_arg); - c0038456: 7642 ld a2,48(sp) - c0038458: 76e2 ld a3,56(sp) - c003845a: 086c addi a1,sp,28 - c003845c: 854a mv a0,s2 - c003845e: c50f90ef jal ra,c00318ae - c0038462: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45658 + c0038626: 7642 ld a2,48(sp) + c0038628: 76e2 ld a3,56(sp) + c003862a: 086c addi a1,sp,28 + c003862c: 854a mv a0,s2 + c003862e: c50f90ef jal ra,c0031a7e + c0038632: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45666 if (!tab) - c0038464: ed09 bnez a0,c003847e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45659 + c0038634: ed09 bnez a0,c003864e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45667 return JS_EXCEPTION; - c0038466: f082 sd zero,96(sp) - c0038468: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45663 + c0038636: f082 sd zero,96(sp) + c0038638: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45671 } - c003846a: 60ea ld ra,152(sp) - c003846c: 644a ld s0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45662 + c003863a: 60ea ld ra,152(sp) + c003863c: 644a ld s0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45670 return ret; - c003846e: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45663 -} - c0038470: 7506 ld a0,96(sp) - c0038472: 75a6 ld a1,104(sp) - c0038474: 64aa ld s1,136(sp) - c0038476: 690a ld s2,128(sp) - c0038478: 79e6 ld s3,120(sp) - c003847a: 610d addi sp,sp,160 - c003847c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45660 + c003863e: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45671 +} + c0038640: 7506 ld a0,96(sp) + c0038642: 75a6 ld a1,104(sp) + c0038644: 64aa ld s1,136(sp) + c0038646: 690a ld s2,128(sp) + c0038648: 79e6 ld s3,120(sp) + c003864a: 610d addi sp,sp,160 + c003864c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45668 ret = JS_CallConstructor2(ctx, func, new_target, len, (JSValueConst *)tab); - c003847e: 47f2 lw a5,28(sp) - c0038480: 7622 ld a2,40(sp) - c0038482: 7582 ld a1,32(sp) - c0038484: 882a mv a6,a0 - c0038486: 86a6 mv a3,s1 - c0038488: 8722 mv a4,s0 - c003848a: 854a mv a0,s2 - c003848c: f65ff0ef jal ra,c00383f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45661 + c003864e: 47f2 lw a5,28(sp) + c0038650: 7622 ld a2,40(sp) + c0038652: 7582 ld a1,32(sp) + c0038654: 882a mv a6,a0 + c0038656: 86a6 mv a3,s1 + c0038658: 8722 mv a4,s0 + c003865a: 854a mv a0,s2 + c003865c: f65ff0ef jal ra,c00385c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45669 free_arg_list(ctx, tab, len); - c0038490: 4672 lw a2,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45660 + c0038660: 4672 lw a2,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45668 ret = JS_CallConstructor2(ctx, func, new_target, len, (JSValueConst *)tab); - c0038492: e8aa sd a0,80(sp) - c0038494: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45661 + c0038662: e8aa sd a0,80(sp) + c0038664: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45669 free_arg_list(ctx, tab, len); - c0038496: 854a mv a0,s2 - c0038498: 85ce mv a1,s3 - c003849a: 95dcf0ef jal ra,c0007df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45662 + c0038666: 854a mv a0,s2 + c0038668: 85ce mv a1,s3 + c003866a: 87bcf0ef jal ra,c0007ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45670 return ret; - c003849e: 67c6 ld a5,80(sp) - c00384a0: f0be sd a5,96(sp) - c00384a2: 67e6 ld a5,88(sp) - c00384a4: b7d9 j c003846a + c003866e: 67c6 ld a5,80(sp) + c0038670: f0be sd a5,96(sp) + c0038672: 67e6 ld a5,88(sp) + c0038674: b7d9 j c003863a -00000000c00384a6 : +00000000c0038676 : JS_CallConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18815 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18823 { - c00384a6: 1101 addi sp,sp,-32 - c00384a8: 87b6 mv a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18816 + c0038676: 1101 addi sp,sp,-32 + c0038678: 87b6 mv a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18824 return JS_CallConstructorInternal(ctx, func_obj, func_obj, - c00384aa: 883a mv a6,a4 - c00384ac: 4889 li a7,2 - c00384ae: 86ae mv a3,a1 - c00384b0: 8732 mv a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18819 -} - c00384b2: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18816 + c003867a: 883a mv a6,a4 + c003867c: 4889 li a7,2 + c003867e: 86ae mv a3,a1 + c0038680: 8732 mv a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18827 +} + c0038682: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18824 return JS_CallConstructorInternal(ctx, func_obj, func_obj, - c00384b4: de7ff06f j c003829a + c0038684: de7ff06f j c003846a -00000000c00384b8 : +00000000c0038688 : js_typed_array_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53368 -{ - c00384b8: 7119 addi sp,sp,-128 - c00384ba: f8a2 sd s0,112(sp) - c00384bc: f0ca sd s2,96(sp) - c00384be: ecce sd s3,88(sp) - c00384c0: 893a mv s2,a4 - c00384c2: fc86 sd ra,120(sp) - c00384c4: f4a6 sd s1,104(sp) - c00384c6: 842a mv s0,a0 - c00384c8: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53373 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53376 +{ + c0038688: 7119 addi sp,sp,-128 + c003868a: f8a2 sd s0,112(sp) + c003868c: f0ca sd s2,96(sp) + c003868e: ecce sd s3,88(sp) + c0038690: 893a mv s2,a4 + c0038692: fc86 sd ra,120(sp) + c0038694: f4a6 sd s1,104(sp) + c0038696: 842a mv s0,a0 + c0038698: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53381 ret = JS_CallConstructor(ctx, ctor, argc, argv); - c00384ca: fddff0ef jal ra,c00384a6 - c00384ce: f02a sd a0,32(sp) - c00384d0: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53374 + c003869a: fddff0ef jal ra,c0038676 + c003869e: f02a sd a0,32(sp) + c00386a0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53382 if (JS_IsException(ret)) - c00384d2: 0005871b sext.w a4,a1 - c00384d6: 4799 li a5,6 - c00384d8: 00f71f63 bne a4,a5,c00384f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53375 + c00386a2: 0005871b sext.w a4,a1 + c00386a6: 4799 li a5,6 + c00386a8: 00f71f63 bne a4,a5,c00386c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53383 return ret; - c00384dc: 7782 ld a5,32(sp) - c00384de: f83e sd a5,48(sp) - c00384e0: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53392 -} - c00384e2: 70e6 ld ra,120(sp) - c00384e4: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53388 + c00386ac: 7782 ld a5,32(sp) + c00386ae: f83e sd a5,48(sp) + c00386b0: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53400 +} + c00386b2: 70e6 ld ra,120(sp) + c00386b4: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53396 return JS_EXCEPTION; - c00384e6: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53392 -} - c00384e8: 7542 ld a0,48(sp) - c00384ea: 75e2 ld a1,56(sp) - c00384ec: 74a6 ld s1,104(sp) - c00384ee: 7906 ld s2,96(sp) - c00384f0: 69e6 ld s3,88(sp) - c00384f2: 6109 addi sp,sp,128 - c00384f4: 8082 ret - c00384f6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53377 + c00386b6: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53400 +} + c00386b8: 7542 ld a0,48(sp) + c00386ba: 75e2 ld a1,56(sp) + c00386bc: 74a6 ld s1,104(sp) + c00386be: 7906 ld s2,96(sp) + c00386c0: 69e6 ld s3,88(sp) + c00386c2: 6109 addi sp,sp,128 + c00386c4: 8082 ret + c00386c6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53385 new_len = js_typed_array_get_length_internal(ctx, ret); - c00384f8: 85aa mv a1,a0 - c00384fa: 8522 mv a0,s0 - c00384fc: b1bdb0ef jal ra,c0014016 - c0038500: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53378 + c00386c8: 85aa mv a1,a0 + c00386ca: 8522 mv a0,s0 + c00386cc: a39db0ef jal ra,c0014104 + c00386d0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53386 if (new_len < 0) - c0038502: 02054c63 bltz a0,c003853a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53380 + c00386d2: 02054c63 bltz a0,c003870a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53388 if (argc == 1) { - c0038506: 4785 li a5,1 - c0038508: fcf99ae3 bne s3,a5,c00384dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53382 + c00386d6: 4785 li a5,1 + c00386d8: fcf99ae3 bne s3,a5,c00386ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53390 if (JS_ToLengthFree(ctx, &len, JS_DupValue(ctx, argv[0]))) - c003850c: 00093503 ld a0,0(s2) - c0038510: 00893583 ld a1,8(s2) - c0038514: 95ace0ef jal ra,c000666e - c0038518: 862a mv a2,a0 - c003851a: 86ae mv a3,a1 - c003851c: 8522 mv a0,s0 - c003851e: 082c addi a1,sp,24 - c0038520: aece60ef jal ra,c001e80c - c0038524: e919 bnez a0,c003853a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53384 + c00386dc: 00093503 ld a0,0(s2) + c00386e0: 00893583 ld a1,8(s2) + c00386e4: 878ce0ef jal ra,c000675c + c00386e8: 862a mv a2,a0 + c00386ea: 86ae mv a3,a1 + c00386ec: 8522 mv a0,s0 + c00386ee: 082c addi a1,sp,24 + c00386f0: aece60ef jal ra,c001e9dc + c00386f4: e919 bnez a0,c003870a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53392 if (new_len < len) { - c0038526: 67e2 ld a5,24(sp) - c0038528: faf4dae3 bge s1,a5,c00384dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53385 + c00386f6: 67e2 ld a5,24(sp) + c00386f8: faf4dae3 bge s1,a5,c00386ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53393 JS_ThrowTypeError(ctx, "TypedArray length is too small"); - c003852c: 00028597 auipc a1,0x28 - c0038530: 46c58593 addi a1,a1,1132 # c0060998 - c0038534: 8522 mv a0,s0 - c0038536: ec1da0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53387 + c00386fc: 00028597 auipc a1,0x28 + c0038700: 4fc58593 addi a1,a1,1276 # c0060bf8 + c0038704: 8522 mv a0,s0 + c0038706: ddfda0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53395 JS_FreeValue(ctx, ret); - c003853a: 7582 ld a1,32(sp) - c003853c: 7622 ld a2,40(sp) - c003853e: 8522 mv a0,s0 - c0038540: df8cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53388 + c003870a: 7582 ld a1,32(sp) + c003870c: 7622 ld a2,40(sp) + c003870e: 8522 mv a0,s0 + c0038710: d16cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53396 return JS_EXCEPTION; - c0038544: 4799 li a5,6 - c0038546: f802 sd zero,48(sp) - c0038548: bf69 j c00384e2 + c0038714: 4799 li a5,6 + c0038716: f802 sd zero,48(sp) + c0038718: bf69 j c00386b2 -00000000c003854a : +00000000c003871a : js_typed_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53525 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53533 { - c003854a: 7135 addi sp,sp,-160 + c003871a: 7135 addi sp,sp,-160 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003854c: f082 sd zero,96(sp) - c003854e: d0b6 sw a3,96(sp) - c0038550: 7786 ld a5,96(sp) + c003871c: f082 sd zero,96(sp) + c003871e: d0b6 sw a3,96(sp) + c0038720: 7786 ld a5,96(sp) js_typed_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53525 - c0038552: e526 sd s1,136(sp) - c0038554: f8d2 sd s4,112(sp) - c0038556: 84b6 mv s1,a3 - c0038558: 8a3a mv s4,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53533 + c0038722: e526 sd s1,136(sp) + c0038724: f8d2 sd s4,112(sp) + c0038726: 84b6 mv s1,a3 + c0038728: 8a3a mv s4,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53539 obj = js_typed_array_create(ctx, this_val, 1, args); - c003855a: 4685 li a3,1 - c003855c: 1818 addi a4,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53525 + c003872a: 4685 li a3,1 + c003872c: 1818 addi a4,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53533 { - c003855e: e922 sd s0,144(sp) - c0038560: e14a sd s2,128(sp) - c0038562: fcce sd s3,120(sp) - c0038564: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53530 + c003872e: e922 sd s0,144(sp) + c0038730: e14a sd s2,128(sp) + c0038732: fcce sd s3,120(sp) + c0038734: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53538 args[0] = JS_NewInt32(ctx, argc); - c0038566: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53525 + c0038736: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53533 { - c0038568: ed06 sd ra,152(sp) - c003856a: 89aa mv s3,a0 + c0038738: ed06 sd ra,152(sp) + c003873a: 89aa mv s3,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003856c: ec82 sd zero,88(sp) + c003873c: ec82 sd zero,88(sp) js_typed_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53538 args[0] = JS_NewInt32(ctx, argc); - c003856e: fc02 sd zero,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53531 + c003873e: fc02 sd zero,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53539 obj = js_typed_array_create(ctx, this_val, 1, args); - c0038570: f49ff0ef jal ra,c00384b8 - c0038574: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53532 + c0038740: f49ff0ef jal ra,c0038688 + c0038744: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53540 if (JS_IsException(obj)) - c0038576: 0005871b sext.w a4,a1 - c003857a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53531 + c0038746: 0005871b sext.w a4,a1 + c003874a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53539 obj = js_typed_array_create(ctx, this_val, 1, args); - c003857c: 842e mv s0,a1 - c003857e: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53532 + c003874c: 842e mv s0,a1 + c003874e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53540 if (JS_IsException(obj)) - c0038580: 04f71d63 bne a4,a5,c00385da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53533 - return obj; - c0038584: e0aa sd a0,64(sp) + c0038750: 04f71d63 bne a4,a5,c00387aa /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53541 + return obj; + c0038754: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53549 return obj; - c0038586: e4a2 sd s0,72(sp) - c0038588: a83d j c00385c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53536 + c0038756: e4a2 sd s0,72(sp) + c0038758: a83d j c0038796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53544 if (JS_SetPropertyUint32(ctx, obj, i, JS_DupValue(ctx, argv[i])) < 0) { - c003858a: 00491793 slli a5,s2,0x4 - c003858e: 97d2 add a5,a5,s4 - c0038590: 6388 ld a0,0(a5) - c0038592: 678c ld a1,8(a5) - c0038594: e436 sd a3,8(sp) - c0038596: 0905 addi s2,s2,1 - c0038598: 8d6ce0ef jal ra,c000666e - c003859c: 87ae mv a5,a1 - c003859e: ecae sd a1,88(sp) - c00385a0: 66a2 ld a3,8(sp) - c00385a2: 7582 ld a1,32(sp) - c00385a4: 872a mv a4,a0 - c00385a6: e8aa sd a0,80(sp) - c00385a8: 8622 mv a2,s0 - c00385aa: 854e mv a0,s3 - c00385ac: f422 sd s0,40(sp) - c00385ae: af2da0ef jal ra,c00128a0 - c00385b2: 02055463 bgez a0,c00385da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53537 + c003875a: 00491793 slli a5,s2,0x4 + c003875e: 97d2 add a5,a5,s4 + c0038760: 6388 ld a0,0(a5) + c0038762: 678c ld a1,8(a5) + c0038764: e436 sd a3,8(sp) + c0038766: 0905 addi s2,s2,1 + c0038768: ff5cd0ef jal ra,c000675c + c003876c: 87ae mv a5,a1 + c003876e: ecae sd a1,88(sp) + c0038770: 66a2 ld a3,8(sp) + c0038772: 7582 ld a1,32(sp) + c0038774: 872a mv a4,a0 + c0038776: e8aa sd a0,80(sp) + c0038778: 8622 mv a2,s0 + c003877a: 854e mv a0,s3 + c003877c: f422 sd s0,40(sp) + c003877e: a10da0ef jal ra,c001298e + c0038782: 02055463 bgez a0,c00387aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53545 JS_FreeValue(ctx, obj); - c00385b6: 7582 ld a1,32(sp) - c00385b8: 7622 ld a2,40(sp) - c00385ba: 854e mv a0,s3 - c00385bc: d7ccf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53538 + c0038786: 7582 ld a1,32(sp) + c0038788: 7622 ld a2,40(sp) + c003878a: 854e mv a0,s3 + c003878c: c9acf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53546 return JS_EXCEPTION; - c00385c0: 4799 li a5,6 - c00385c2: e082 sd zero,64(sp) - c00385c4: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53542 (discriminator 1) -} - c00385c6: 60ea ld ra,152(sp) - c00385c8: 644a ld s0,144(sp) - c00385ca: 6506 ld a0,64(sp) - c00385cc: 65a6 ld a1,72(sp) - c00385ce: 64aa ld s1,136(sp) - c00385d0: 690a ld s2,128(sp) - c00385d2: 79e6 ld s3,120(sp) - c00385d4: 7a46 ld s4,112(sp) - c00385d6: 610d addi sp,sp,160 - c00385d8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53535 (discriminator 1) + c0038790: 4799 li a5,6 + c0038792: e082 sd zero,64(sp) + c0038794: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53550 (discriminator 1) +} + c0038796: 60ea ld ra,152(sp) + c0038798: 644a ld s0,144(sp) + c003879a: 6506 ld a0,64(sp) + c003879c: 65a6 ld a1,72(sp) + c003879e: 64aa ld s1,136(sp) + c00387a0: 690a ld s2,128(sp) + c00387a2: 79e6 ld s3,120(sp) + c00387a4: 7a46 ld s4,112(sp) + c00387a6: 610d addi sp,sp,160 + c00387a8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53543 (discriminator 1) for(i = 0; i < argc; i++) { - c00385da: 0009069b sext.w a3,s2 - c00385de: fa96c6e3 blt a3,s1,c003858a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53541 + c00387aa: 0009069b sext.w a3,s2 + c00387ae: fa96c6e3 blt a3,s1,c003875a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53549 return obj; - c00385e2: 7782 ld a5,32(sp) - c00385e4: e0be sd a5,64(sp) - c00385e6: b745 j c0038586 + c00387b2: 7782 ld a5,32(sp) + c00387b4: e0be sd a5,64(sp) + c00387b6: b745 j c0038756 -00000000c00385e8 : +00000000c00387b8 : js_array_buffer_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52943 { - c00385e8: 7171 addi sp,sp,-176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52940 + c00387b8: 7171 addi sp,sp,-176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52948 abuf = JS_GetOpaque2(ctx, this_val, class_id); - c00385ea: 86be mv a3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52935 -{ - c00385ec: f122 sd s0,160(sp) - c00385ee: ed26 sd s1,152(sp) - c00385f0: e152 sd s4,128(sp) - c00385f2: f506 sd ra,168(sp) - c00385f4: e94a sd s2,144(sp) - c00385f6: e54e sd s3,136(sp) - c00385f8: 842a mv s0,a0 - c00385fa: e82e sd a1,16(sp) - c00385fc: ec32 sd a2,24(sp) - c00385fe: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52940 + c00387ba: 86be mv a3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52943 +{ + c00387bc: f122 sd s0,160(sp) + c00387be: ed26 sd s1,152(sp) + c00387c0: e152 sd s4,128(sp) + c00387c2: f506 sd ra,168(sp) + c00387c4: e94a sd s2,144(sp) + c00387c6: e54e sd s3,136(sp) + c00387c8: 842a mv s0,a0 + c00387ca: e82e sd a1,16(sp) + c00387cc: ec32 sd a2,24(sp) + c00387ce: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52948 abuf = JS_GetOpaque2(ctx, this_val, class_id); - c0038600: 8a3e mv s4,a5 - c0038602: f77da0ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52941 + c00387d0: 8a3e mv s4,a5 + c00387d2: e95da0ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52949 if (!abuf) - c0038606: e501 bnez a0,c003860e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52995 + c00387d6: e501 bnez a0,c00387de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53003 return JS_EXCEPTION; - c0038608: f082 sd zero,96(sp) - c003860a: 4799 li a5,6 - c003860c: aa41 j c003879c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52943 + c00387d8: f082 sd zero,96(sp) + c00387da: 4799 li a5,6 + c00387dc: aa41 j c003896c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52951 if (abuf->detached) - c003860e: 00454783 lbu a5,4(a0) - c0038612: 89aa mv s3,a0 - c0038614: cb99 beqz a5,c003862a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52944 + c00387de: 00454783 lbu a5,4(a0) + c00387e2: 89aa mv s3,a0 + c00387e4: cb99 beqz a5,c00387fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52952 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0038616: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52996 -} - c0038618: 740a ld s0,160(sp) - c003861a: 70aa ld ra,168(sp) - c003861c: 64ea ld s1,152(sp) - c003861e: 694a ld s2,144(sp) - c0038620: 69aa ld s3,136(sp) - c0038622: 6a0a ld s4,128(sp) - c0038624: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52944 + c00387e6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53004 +} + c00387e8: 740a ld s0,160(sp) + c00387ea: 70aa ld ra,168(sp) + c00387ec: 64ea ld s1,152(sp) + c00387ee: 694a ld s2,144(sp) + c00387f0: 69aa ld s3,136(sp) + c00387f2: 6a0a ld s4,128(sp) + c00387f4: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52952 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0038626: eacdb06f j c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52945 + c00387f6: dcadb06f j c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52953 len = abuf->byte_length; - c003862a: 00052803 lw a6,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52947 + c00387fa: 00052803 lw a6,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52955 if (JS_ToInt64Clamp(ctx, &start, argv[0], 0, len, len)) - c003862e: 6090 ld a2,0(s1) - c0038630: 6494 ld a3,8(s1) - c0038632: 87c2 mv a5,a6 - c0038634: 4701 li a4,0 - c0038636: 100c addi a1,sp,32 - c0038638: 8522 mv a0,s0 - c003863a: e442 sd a6,8(sp) - c003863c: 972e60ef jal ra,c001e7ae - c0038640: f561 bnez a0,c0038608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52950 + c00387fe: 6090 ld a2,0(s1) + c0038800: 6494 ld a3,8(s1) + c0038802: 87c2 mv a5,a6 + c0038804: 4701 li a4,0 + c0038806: 100c addi a1,sp,32 + c0038808: 8522 mv a0,s0 + c003880a: e442 sd a6,8(sp) + c003880c: 972e60ef jal ra,c001e97e + c0038810: f561 bnez a0,c00387d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52958 end = len; - c0038642: 6822 ld a6,8(sp) + c0038812: 6822 ld a6,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0038644: 6c94 ld a3,24(s1) + c0038814: 6c94 ld a3,24(s1) js_array_buffer_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52951 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52959 if (!JS_IsUndefined(argv[1])) { - c0038646: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52950 + c0038816: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52958 end = len; - c0038648: f442 sd a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52951 + c0038818: f442 sd a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52959 if (!JS_IsUndefined(argv[1])) { - c003864a: 0006871b sext.w a4,a3 - c003864e: 00f70a63 beq a4,a5,c0038662 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52952 + c003881a: 0006871b sext.w a4,a3 + c003881e: 00f70a63 beq a4,a5,c0038832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52960 if (JS_ToInt64Clamp(ctx, &end, argv[1], 0, len, len)) - c0038652: 6890 ld a2,16(s1) - c0038654: 87c2 mv a5,a6 - c0038656: 4701 li a4,0 - c0038658: 102c addi a1,sp,40 - c003865a: 8522 mv a0,s0 - c003865c: 952e60ef jal ra,c001e7ae - c0038660: f545 bnez a0,c0038608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52955 + c0038822: 6890 ld a2,16(s1) + c0038824: 87c2 mv a5,a6 + c0038826: 4701 li a4,0 + c0038828: 102c addi a1,sp,40 + c003882a: 8522 mv a0,s0 + c003882c: 952e60ef jal ra,c001e97e + c0038830: f545 bnez a0,c00387d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52963 new_len = max_int64(end - start, 0); - c0038662: 74a2 ld s1,40(sp) - c0038664: 7782 ld a5,32(sp) - c0038666: 8c9d sub s1,s1,a5 - c0038668: 0004d363 bgez s1,c003866e - c003866c: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52956 + c0038832: 74a2 ld s1,40(sp) + c0038834: 7782 ld a5,32(sp) + c0038836: 8c9d sub s1,s1,a5 + c0038838: 0004d363 bgez s1,c003883e + c003883c: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52964 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c003866e: 65c2 ld a1,16(sp) - c0038670: 6662 ld a2,24(sp) - c0038672: 470d li a4,3 - c0038674: 490d li s2,3 - c0038676: 4681 li a3,0 - c0038678: 8522 mv a0,s0 - c003867a: e882 sd zero,80(sp) - c003867c: ecca sd s2,88(sp) - c003867e: d3cdb0ef jal ra,c0013bba - c0038682: f82a sd a0,48(sp) - c0038684: fc2e sd a1,56(sp) + c003883e: 65c2 ld a1,16(sp) + c0038840: 6662 ld a2,24(sp) + c0038842: 470d li a4,3 + c0038844: 490d li s2,3 + c0038846: 4681 li a3,0 + c0038848: 8522 mv a0,s0 + c003884a: e882 sd zero,80(sp) + c003884c: ecca sd s2,88(sp) + c003884e: c5adb0ef jal ra,c0013ca8 + c0038852: f82a sd a0,48(sp) + c0038854: fc2e sd a1,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0038686: 0005879b sext.w a5,a1 + c0038856: 0005879b sext.w a5,a1 js_array_buffer_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52957 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52965 if (JS_IsException(ctor)) - c003868a: 4719 li a4,6 - c003868c: 00e79e63 bne a5,a4,c00386a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52958 + c003885a: 4719 li a4,6 + c003885c: 00e79e63 bne a5,a4,c0038878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52966 return ctor; - c0038690: f0aa sd a0,96(sp) - c0038692: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52996 (discriminator 1) -} - c0038694: 70aa ld ra,168(sp) - c0038696: 740a ld s0,160(sp) - c0038698: 7506 ld a0,96(sp) - c003869a: 75a6 ld a1,104(sp) - c003869c: 64ea ld s1,152(sp) - c003869e: 694a ld s2,144(sp) - c00386a0: 69aa ld s3,136(sp) - c00386a2: 6a0a ld s4,128(sp) - c00386a4: 614d addi sp,sp,176 - c00386a6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52959 + c0038860: f0aa sd a0,96(sp) + c0038862: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53004 (discriminator 1) +} + c0038864: 70aa ld ra,168(sp) + c0038866: 740a ld s0,160(sp) + c0038868: 7506 ld a0,96(sp) + c003886a: 75a6 ld a1,104(sp) + c003886c: 64ea ld s1,152(sp) + c003886e: 694a ld s2,144(sp) + c0038870: 69aa ld s3,136(sp) + c0038872: 6a0a ld s4,128(sp) + c0038874: 614d addi sp,sp,176 + c0038876: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52967 if (JS_IsUndefined(ctor)) { - c00386a8: 03279663 bne a5,s2,c00386d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52960 + c0038878: 03279663 bne a5,s2,c00388a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52968 new_obj = js_array_buffer_constructor2(ctx, JS_UNDEFINED, new_len, - c00386ac: 8752 mv a4,s4 - c00386ae: 86a6 mv a3,s1 - c00386b0: 4581 li a1,0 - c00386b2: 460d li a2,3 - c00386b4: 8522 mv a0,s0 - c00386b6: f882 sd zero,112(sp) - c00386b8: fcbe sd a5,120(sp) - c00386ba: d2ade0ef jal ra,c0016be4 - c00386be: e0aa sd a0,64(sp) - c00386c0: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52969 + c003887c: 8752 mv a4,s4 + c003887e: 86a6 mv a3,s1 + c0038880: 4581 li a1,0 + c0038882: 460d li a2,3 + c0038884: 8522 mv a0,s0 + c0038886: f882 sd zero,112(sp) + c0038888: fcbe sd a5,120(sp) + c003888a: d2ade0ef jal ra,c0016db4 + c003888e: e0aa sd a0,64(sp) + c0038890: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52977 if (JS_IsException(new_obj)) - c00386c2: 0009079b sext.w a5,s2 - c00386c6: 4719 li a4,6 - c00386c8: 04e79e63 bne a5,a4,c0038724 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52970 + c0038892: 0009079b sext.w a5,s2 + c0038896: 4719 li a4,6 + c0038898: 04e79e63 bne a5,a4,c00388f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52978 return new_obj; - c00386cc: 6786 ld a5,64(sp) - c00386ce: f4ca sd s2,104(sp) - c00386d0: f0be sd a5,96(sp) - c00386d2: b7c9 j c0038694 + c003889c: 6786 ld a5,64(sp) + c003889e: f4ca sd s2,104(sp) + c00388a0: f0be sd a5,96(sp) + c00388a2: b7c9 j c0038864 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00386d4: 0004861b sext.w a2,s1 - c00386d8: 02961e63 bne a2,s1,c0038714 + c00388a4: 0004861b sext.w a2,s1 + c00388a8: 02961e63 bne a2,s1,c00388e4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00386dc: da82 sw zero,116(sp) - c00386de: d8a6 sw s1,112(sp) - c00386e0: 77c6 ld a5,112(sp) - c00386e2: fc82 sd zero,120(sp) - c00386e4: f0be sd a5,96(sp) - c00386e6: 4781 li a5,0 + c00388ac: da82 sw zero,116(sp) + c00388ae: d8a6 sw s1,112(sp) + c00388b0: 77c6 ld a5,112(sp) + c00388b2: fc82 sd zero,120(sp) + c00388b4: f0be sd a5,96(sp) + c00388b6: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00386e8: d0b2 sw a2,96(sp) + c00388b8: d0b2 sw a2,96(sp) js_array_buffer_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52965 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52973 new_obj = JS_CallConstructor(ctx, ctor, 1, (JSValueConst *)args); - c00386ea: 75c2 ld a1,48(sp) - c00386ec: 7662 ld a2,56(sp) - c00386ee: 1098 addi a4,sp,96 - c00386f0: 4685 li a3,1 - c00386f2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52964 + c00388ba: 75c2 ld a1,48(sp) + c00388bc: 7662 ld a2,56(sp) + c00388be: 1098 addi a4,sp,96 + c00388c0: 4685 li a3,1 + c00388c2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52972 args[0] = JS_NewInt64(ctx, new_len); - c00386f4: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52965 + c00388c4: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52973 new_obj = JS_CallConstructor(ctx, ctor, 1, (JSValueConst *)args); - c00386f6: db1ff0ef jal ra,c00384a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52966 + c00388c6: db1ff0ef jal ra,c0038676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52974 JS_FreeValue(ctx, ctor); - c00386fa: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52965 + c00388ca: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52973 new_obj = JS_CallConstructor(ctx, ctor, 1, (JSValueConst *)args); - c00386fc: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52966 + c00388cc: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52974 JS_FreeValue(ctx, ctor); - c00386fe: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52965 + c00388ce: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52973 new_obj = JS_CallConstructor(ctx, ctor, 1, (JSValueConst *)args); - c0038700: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52966 + c00388d0: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52974 JS_FreeValue(ctx, ctor); - c0038702: 8522 mv a0,s0 - c0038704: c34cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52967 + c00388d2: 8522 mv a0,s0 + c00388d4: b52cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52975 JS_FreeValue(ctx, args[0]); - c0038708: 7586 ld a1,96(sp) - c003870a: 7626 ld a2,104(sp) - c003870c: 8522 mv a0,s0 - c003870e: c2acf0ef jal ra,c0007b38 - c0038712: bf45 j c00386c2 + c00388d8: 7586 ld a1,96(sp) + c00388da: 7626 ld a2,104(sp) + c00388dc: 8522 mv a0,s0 + c00388de: b48cf0ef jal ra,c0007c26 + c00388e2: bf45 j c0038892 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0038714: d224f7d3 fcvt.d.l fa5,s1 - c0038718: 479d li a5,7 - c003871a: e2078653 fmv.x.d a2,fa5 + c00388e4: d224f7d3 fcvt.d.l fa5,s1 + c00388e8: 479d li a5,7 + c00388ea: e2078653 fmv.x.d a2,fa5 js_array_buffer_slice(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003871e: b0be fsd fa5,96(sp) - c0038720: 2601 sext.w a2,a2 - c0038722: b7d9 j c00386e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52971 + c00388ee: b0be fsd fa5,96(sp) + c00388f0: 2601 sext.w a2,a2 + c00388f2: b7d9 j c00388b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52979 new_abuf = JS_GetOpaque2(ctx, new_obj, class_id); - c0038724: 6586 ld a1,64(sp) - c0038726: 864a mv a2,s2 - c0038728: 86d2 mv a3,s4 - c003872a: 8522 mv a0,s0 - c003872c: e4ca sd s2,72(sp) - c003872e: e4bda0ef jal ra,c0013578 - c0038732: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52972 + c00388f4: 6586 ld a1,64(sp) + c00388f6: 864a mv a2,s2 + c00388f8: 86d2 mv a3,s4 + c00388fa: 8522 mv a0,s0 + c00388fc: e4ca sd s2,72(sp) + c00388fe: d69da0ef jal ra,c0013666 + c0038902: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52980 if (!new_abuf) - c0038734: c11d beqz a0,c003875a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52974 + c0038904: c11d beqz a0,c003892a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52982 if (js_same_value(ctx, new_obj, this_val)) { - c0038736: 6586 ld a1,64(sp) - c0038738: 66c2 ld a3,16(sp) - c003873a: 6762 ld a4,24(sp) - c003873c: 6626 ld a2,72(sp) - c003873e: 8522 mv a0,s0 - c0038740: d82cf0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52975 + c0038906: 6586 ld a1,64(sp) + c0038908: 66c2 ld a3,16(sp) + c003890a: 6762 ld a4,24(sp) + c003890c: 6626 ld a2,72(sp) + c003890e: 8522 mv a0,s0 + c0038910: ca0cf0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52983 JS_ThrowTypeError(ctx, "cannot use identical ArrayBuffer"); - c0038744: 00028597 auipc a1,0x28 - c0038748: 27458593 addi a1,a1,628 # c00609b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52974 + c0038914: 00028597 auipc a1,0x28 + c0038918: 30458593 addi a1,a1,772 # c0060c18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52982 if (js_same_value(ctx, new_obj, this_val)) { - c003874c: e50d bnez a0,c0038776 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52978 + c003891c: e50d bnez a0,c0038946 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52986 if (new_abuf->detached) { - c003874e: 00494783 lbu a5,4(s2) - c0038752: cb91 beqz a5,c0038766 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52979 + c003891e: 00494783 lbu a5,4(s2) + c0038922: cb91 beqz a5,c0038936 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52987 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0038754: 8522 mv a0,s0 - c0038756: d7cdb0ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52994 + c0038924: 8522 mv a0,s0 + c0038926: c9adb0ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53002 JS_FreeValue(ctx, new_obj); - c003875a: 6586 ld a1,64(sp) - c003875c: 6626 ld a2,72(sp) - c003875e: 8522 mv a0,s0 - c0038760: bd8cf0ef jal ra,c0007b38 - c0038764: b555 j c0038608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52982 + c003892a: 6586 ld a1,64(sp) + c003892c: 6626 ld a2,72(sp) + c003892e: 8522 mv a0,s0 + c0038930: af6cf0ef jal ra,c0007c26 + c0038934: b555 j c00387d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52990 if (new_abuf->byte_length < new_len) { - c0038766: 00092783 lw a5,0(s2) - c003876a: 0097da63 bge a5,s1,c003877e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52983 + c0038936: 00092783 lw a5,0(s2) + c003893a: 0097da63 bge a5,s1,c003894e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52991 JS_ThrowTypeError(ctx, "new ArrayBuffer is too small"); - c003876e: 00028597 auipc a1,0x28 - c0038772: 27258593 addi a1,a1,626 # c00609e0 - c0038776: 8522 mv a0,s0 - c0038778: c7fda0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52984 + c003893e: 00028597 auipc a1,0x28 + c0038942: 30258593 addi a1,a1,770 # c0060c40 + c0038946: 8522 mv a0,s0 + c0038948: b9dda0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52992 goto fail; - c003877c: bff9 j c003875a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52987 + c003894c: bff9 j c003892a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52995 if (abuf->detached) { - c003877e: 0049c783 lbu a5,4(s3) # ffffffff80000004 <_ebss+0xfffffffebfefeede> - c0038782: fbe9 bnez a5,c0038754 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52991 + c003894e: 0049c783 lbu a5,4(s3) # ffffffff80000004 <_ebss+0xfffffffebfefeede> + c0038952: fbe9 bnez a5,c0038924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52999 memcpy(new_abuf->data, abuf->data + start, new_len); - c0038784: 7782 ld a5,32(sp) - c0038786: 0089b583 ld a1,8(s3) - c003878a: 00893503 ld a0,8(s2) - c003878e: 8626 mv a2,s1 - c0038790: 95be add a1,a1,a5 - c0038792: 2481e0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52992 + c0038954: 7782 ld a5,32(sp) + c0038956: 0089b583 ld a1,8(s3) + c003895a: 00893503 ld a0,8(s2) + c003895e: 8626 mv a2,s1 + c0038960: 95be add a1,a1,a5 + c0038962: 2481e0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53000 return new_obj; - c0038796: 6786 ld a5,64(sp) - c0038798: f0be sd a5,96(sp) - c003879a: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52995 + c0038966: 6786 ld a5,64(sp) + c0038968: f0be sd a5,96(sp) + c003896a: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53003 return JS_EXCEPTION; - c003879c: f4be sd a5,104(sp) - c003879e: bddd j c0038694 + c003896c: f4be sd a5,104(sp) + c003896e: bddd j c0038864 -00000000c00387a0 : +00000000c0038970 : js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44354 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44362 { - c00387a0: 7109 addi sp,sp,-384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44356 + c0038970: 7109 addi sp,sp,-384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44364 JSValueConst R = this_val; - c00387a2: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44354 -{ - c00387a4: fe86 sd ra,376(sp) - c00387a6: faa2 sd s0,368(sp) - c00387a8: f6a6 sd s1,360(sp) - c00387aa: f2ca sd s2,352(sp) - c00387ac: eece sd s3,344(sp) - c00387ae: ead2 sd s4,336(sp) - c00387b0: e6d6 sd s5,328(sp) - c00387b2: e2da sd s6,320(sp) - c00387b4: fe5e sd s7,312(sp) - c00387b6: fa62 sd s8,304(sp) - c00387b8: f666 sd s9,296(sp) - c00387ba: f26a sd s10,288(sp) - c00387bc: ee6e sd s11,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44356 + c0038972: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44362 +{ + c0038974: fe86 sd ra,376(sp) + c0038976: faa2 sd s0,368(sp) + c0038978: f6a6 sd s1,360(sp) + c003897a: f2ca sd s2,352(sp) + c003897c: eece sd s3,344(sp) + c003897e: ead2 sd s4,336(sp) + c0038980: e6d6 sd s5,328(sp) + c0038982: e2da sd s6,320(sp) + c0038984: fe5e sd s7,312(sp) + c0038986: fa62 sd s8,304(sp) + c0038988: f666 sd s9,296(sp) + c003898a: f26a sd s10,288(sp) + c003898c: ee6e sd s11,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44364 JSValueConst R = this_val; - c00387be: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44363 + c003898e: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44371 if (!JS_IsObject(R)) - c00387c0: 2601 sext.w a2,a2 - c00387c2: 57fd li a5,-1 - c00387c4: 02f60263 beq a2,a5,c00387e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44416 -} - c00387c8: 7456 ld s0,368(sp) - c00387ca: 70f6 ld ra,376(sp) - c00387cc: 74b6 ld s1,360(sp) - c00387ce: 7916 ld s2,352(sp) - c00387d0: 69f6 ld s3,344(sp) - c00387d2: 6a56 ld s4,336(sp) - c00387d4: 6ab6 ld s5,328(sp) - c00387d6: 6b16 ld s6,320(sp) - c00387d8: 7bf2 ld s7,312(sp) - c00387da: 7c52 ld s8,304(sp) - c00387dc: 7cb2 ld s9,296(sp) - c00387de: 7d12 ld s10,288(sp) - c00387e0: 6df2 ld s11,280(sp) - c00387e2: 6119 addi sp,sp,384 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44364 + c0038990: 2601 sext.w a2,a2 + c0038992: 57fd li a5,-1 + c0038994: 02f60263 beq a2,a5,c00389b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44424 +} + c0038998: 7456 ld s0,368(sp) + c003899a: 70f6 ld ra,376(sp) + c003899c: 74b6 ld s1,360(sp) + c003899e: 7916 ld s2,352(sp) + c00389a0: 69f6 ld s3,344(sp) + c00389a2: 6a56 ld s4,336(sp) + c00389a4: 6ab6 ld s5,328(sp) + c00389a6: 6b16 ld s6,320(sp) + c00389a8: 7bf2 ld s7,312(sp) + c00389aa: 7c52 ld s8,304(sp) + c00389ac: 7cb2 ld s9,296(sp) + c00389ae: 7d12 ld s10,288(sp) + c00389b0: 6df2 ld s11,280(sp) + c00389b2: 6119 addi sp,sp,384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44372 return JS_ThrowTypeErrorNotAnObject(ctx); - c00387e4: 994db06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44371 + c00389b4: 8b2db06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44379 S = JS_ToString(ctx, argv[0]); - c00387e8: 630c ld a1,0(a4) - c00387ea: 6710 ld a2,8(a4) - c00387ec: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44366 + c00389b8: 630c ld a1,0(a4) + c00389ba: 6710 ld a2,8(a4) + c00389bc: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44374 C = JS_UNDEFINED; - c00387ee: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44368 + c00389be: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44376 matcher = JS_UNDEFINED; - c00387f0: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44371 + c00389c0: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44379 S = JS_ToString(ctx, argv[0]); - c00387f2: fe5e10ef jal ra,c001a7d6 - c00387f6: fc2e sd a1,56(sp) - c00387f8: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44372 + c00389c2: fe5e10ef jal ra,c001a9a6 + c00389c6: fc2e sd a1,56(sp) + c00389c8: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44380 if (JS_IsException(S)) - c00387fa: 2581 sext.w a1,a1 - c00387fc: 4499 li s1,6 - c00387fe: 18958863 beq a1,s1,c003898e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44374 + c00389ca: 2581 sext.w a1,a1 + c00389cc: 4499 li s1,6 + c00389ce: 18958863 beq a1,s1,c0038b5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 C = JS_SpeciesConstructor(ctx, R, ctx->regexp_ctor); - c0038802: 7c34 ld a3,120(s0) - c0038804: 6058 ld a4,128(s0) - c0038806: 7582 ld a1,32(sp) - c0038808: 7622 ld a2,40(sp) - c003880a: 8522 mv a0,s0 - c003880c: baedb0ef jal ra,c0013bba - c0038810: e0aa sd a0,64(sp) - c0038812: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44375 + c00389d2: 7c34 ld a3,120(s0) + c00389d4: 6058 ld a4,128(s0) + c00389d6: 7582 ld a1,32(sp) + c00389d8: 7622 ld a2,40(sp) + c00389da: 8522 mv a0,s0 + c00389dc: accdb0ef jal ra,c0013ca8 + c00389e0: e0aa sd a0,64(sp) + c00389e2: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44383 if (JS_IsException(C)) - c0038814: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44374 + c00389e4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 C = JS_SpeciesConstructor(ctx, R, ctx->regexp_ctor); - c0038818: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44375 + c00389e8: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44383 if (JS_IsException(C)) - c003881a: 1a978d63 beq a5,s1,c00389d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 + c00389ea: 1a978d63 beq a5,s1,c0038ba4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44385 flags = JS_ToStringFree(ctx, JS_GetProperty(ctx, R, JS_ATOM_flags)); - c003881e: 77a2 ld a5,40(sp) - c0038820: 7702 ld a4,32(sp) + c00389ee: 77a2 ld a5,40(sp) + c00389f0: 7702 ld a4,32(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0038822: 4801 li a6,0 - c0038824: 863e mv a2,a5 - c0038826: 06e00693 li a3,110 - c003882a: 85ba mv a1,a4 - c003882c: 8522 mv a0,s0 - c003882e: fdbe sd a5,248(sp) - c0038830: f9ba sd a4,240(sp) - c0038832: 810d90ef jal ra,c0011842 - c0038836: 862e mv a2,a1 + c00389f2: 4801 li a6,0 + c00389f4: 863e mv a2,a5 + c00389f6: 06e00693 li a3,110 + c00389fa: 85ba mv a1,a4 + c00389fc: 8522 mv a0,s0 + c00389fe: fdbe sd a5,248(sp) + c0038a00: f9ba sd a4,240(sp) + c0038a02: f2fd80ef jal ra,c0011930 + c0038a06: 862e mv a2,a1 js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 - c0038838: 85aa mv a1,a0 - c003883a: 8522 mv a0,s0 - c003883c: fa5e10ef jal ra,c001a7e0 - c0038840: e8aa sd a0,80(sp) - c0038842: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44378 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44385 + c0038a08: 85aa mv a1,a0 + c0038a0a: 8522 mv a0,s0 + c0038a0c: fa5e10ef jal ra,c001a9b0 + c0038a10: e8aa sd a0,80(sp) + c0038a12: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44386 if (JS_IsException(flags)) - c0038844: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 + c0038a14: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44385 flags = JS_ToStringFree(ctx, JS_GetProperty(ctx, R, JS_ATOM_flags)); - c0038848: 8b2a mv s6,a0 - c003884a: 89ae mv s3,a1 - c003884c: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44378 + c0038a18: 8b2a mv s6,a0 + c0038a1a: 89ae mv s3,a1 + c0038a1c: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44386 if (JS_IsException(flags)) - c003884e: 18978963 beq a5,s1,c00389e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44380 + c0038a1e: 18978963 beq a5,s1,c0038bb0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 args[0] = R; - c0038852: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44381 + c0038a22: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44389 args[1] = flags; - c0038854: e62e sd a1,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 + c0038a24: e62e sd a1,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44390 matcher = JS_CallConstructor(ctx, C, 2, args); - c0038856: 6626 ld a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44380 + c0038a26: 6626 ld a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 args[0] = R; - c0038858: f9be sd a5,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 + c0038a28: f9be sd a5,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44390 matcher = JS_CallConstructor(ctx, C, 2, args); - c003885a: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44380 + c0038a2a: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 args[0] = R; - c003885c: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44381 + c0038a2c: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44389 args[1] = flags; - c003885e: e22a sd a0,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 + c0038a2e: e22a sd a0,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44390 matcher = JS_CallConstructor(ctx, C, 2, args); - c0038860: 1998 addi a4,sp,240 - c0038862: 4689 li a3,2 - c0038864: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44380 + c0038a30: 1998 addi a4,sp,240 + c0038a32: 4689 li a3,2 + c0038a34: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 args[0] = R; - c0038866: fdbe sd a5,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 + c0038a36: fdbe sd a5,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44390 matcher = JS_CallConstructor(ctx, C, 2, args); - c0038868: c3fff0ef jal ra,c00384a6 - c003886c: f0aa sd a0,96(sp) - c003886e: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44383 + c0038a38: c3fff0ef jal ra,c0038676 + c0038a3c: f0aa sd a0,96(sp) + c0038a3e: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44391 if (JS_IsException(matcher)) - c0038870: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44382 + c0038a40: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44390 matcher = JS_CallConstructor(ctx, C, 2, args); - c0038874: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44383 + c0038a44: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44391 if (JS_IsException(matcher)) - c0038876: 16978963 beq a5,s1,c00389e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44385 + c0038a46: 16978963 beq a5,s1,c0038bb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44393 if (JS_ToLengthFree(ctx, &lastIndex, - c003887a: 7702 ld a4,32(sp) - c003887c: 77a2 ld a5,40(sp) + c0038a4a: 7702 ld a4,32(sp) + c0038a4c: 77a2 ld a5,40(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003887e: 05600693 li a3,86 - c0038882: 4801 li a6,0 - c0038884: 863e mv a2,a5 - c0038886: 85ba mv a1,a4 - c0038888: 8522 mv a0,s0 - c003888a: f1ba sd a4,224(sp) - c003888c: f5be sd a5,232(sp) - c003888e: fb5d80ef jal ra,c0011842 - c0038892: 862a mv a2,a0 - c0038894: 86ae mv a3,a1 + c0038a4e: 05600693 li a3,86 + c0038a52: 4801 li a6,0 + c0038a54: 863e mv a2,a5 + c0038a56: 85ba mv a1,a4 + c0038a58: 8522 mv a0,s0 + c0038a5a: f1ba sd a4,224(sp) + c0038a5c: f5be sd a5,232(sp) + c0038a5e: ed3d80ef jal ra,c0011930 + c0038a62: 862a mv a2,a0 + c0038a64: 86ae mv a3,a1 js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44385 - c0038896: 8522 mv a0,s0 - c0038898: 082c addi a1,sp,24 - c003889a: f73e50ef jal ra,c001e80c - c003889e: 14051563 bnez a0,c00389e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44393 + c0038a66: 8522 mv a0,s0 + c0038a68: 082c addi a1,sp,24 + c0038a6a: f73e50ef jal ra,c001e9dc + c0038a6e: 14051563 bnez a0,c0038bb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44396 if (JS_SetProperty(ctx, matcher, JS_ATOM_lastIndex, - c00388a2: 67e2 ld a5,24(sp) + c0038a72: 67e2 ld a5,24(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00388a4: 0007871b sext.w a4,a5 - c00388a8: 0ce79b63 bne a5,a4,c003897e + c0038a74: 0007871b sext.w a4,a5 + c0038a78: 0ce79b63 bne a5,a4,c0038b4e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00388ac: d382 sw zero,228(sp) - c00388ae: d1ba sw a4,224(sp) - c00388b0: 778e ld a5,224(sp) - c00388b2: f582 sd zero,232(sp) - c00388b4: e9be sd a5,208(sp) - c00388b6: 4781 li a5,0 + c0038a7c: d382 sw zero,228(sp) + c0038a7e: d1ba sw a4,224(sp) + c0038a80: 778e ld a5,224(sp) + c0038a82: f582 sd zero,232(sp) + c0038a84: e9be sd a5,208(sp) + c0038a86: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00388b8: c9ba sw a4,208(sp) + c0038a88: c9ba sw a4,208(sp) js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44388 - c00388ba: 674e ld a4,208(sp) - c00388bc: 7586 ld a1,96(sp) - c00388be: 7626 ld a2,104(sp) - c00388c0: 05600693 li a3,86 - c00388c4: 8522 mv a0,s0 - c00388c6: edbe sd a5,216(sp) - c00388c8: 831f70ef jal ra,c00300f8 - c00388cc: 10054e63 bltz a0,c00389e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44392 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44396 + c0038a8a: 674e ld a4,208(sp) + c0038a8c: 7586 ld a1,96(sp) + c0038a8e: 7626 ld a2,104(sp) + c0038a90: 05600693 li a3,86 + c0038a94: 8522 mv a0,s0 + c0038a96: edbe sd a5,216(sp) + c0038a98: 831f70ef jal ra,c00302c8 + c0038a9c: 10054e63 bltz a0,c0038bb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44400 iter = JS_NewObjectClass(ctx, JS_CLASS_REGEXP_STRING_ITERATOR); - c00388d0: 02a00593 li a1,42 - c00388d4: 8522 mv a0,s0 - c00388d6: b9ade0ef jal ra,c0016c70 + c0038aa0: 02a00593 li a1,42 + c0038aa4: 8522 mv a0,s0 + c0038aa6: b9ade0ef jal ra,c0016e40 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00388da: 00058d1b sext.w s10,a1 + c0038aaa: 00058d1b sext.w s10,a1 js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44393 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44401 if (JS_IsException(iter)) - c00388de: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44392 + c0038aae: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44400 iter = JS_NewObjectClass(ctx, JS_CLASS_REGEXP_STRING_ITERATOR); - c00388e0: 8caa mv s9,a0 - c00388e2: 8c2e mv s8,a1 - c00388e4: 8daa mv s11,a0 - c00388e6: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44393 + c0038ab0: 8caa mv s9,a0 + c0038ab2: 8c2e mv s8,a1 + c0038ab4: 8daa mv s11,a0 + c0038ab6: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44401 if (JS_IsException(iter)) - c00388e8: 0afd0963 beq s10,a5,c003899a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44395 + c0038ab8: 0afd0963 beq s10,a5,c0038b6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44403 it = js_malloc(ctx, sizeof(*it)); - c00388ec: 03000593 li a1,48 - c00388f0: 8522 mv a0,s0 - c00388f2: b5adc0ef jal ra,c0014c4c - c00388f6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44396 + c0038abc: 03000593 li a1,48 + c0038ac0: 8522 mv a0,s0 + c0038ac2: a78dc0ef jal ra,c0014d3a + c0038ac6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44404 if (!it) - c00388f8: c14d beqz a0,c003899a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44398 + c0038ac8: c14d beqz a0,c0038b6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44406 it->iterating_regexp = matcher; - c00388fa: 7786 ld a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44401 + c0038aca: 7786 ld a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44409 it->global = string_indexof_char(strp, 'g', 0) >= 0; - c00388fc: 4601 li a2,0 - c00388fe: 06700593 li a1,103 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44398 + c0038acc: 4601 li a2,0 + c0038ace: 06700593 li a1,103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44406 it->iterating_regexp = matcher; - c0038902: e11c sd a5,0(a0) - c0038904: 77a6 ld a5,104(sp) - c0038906: e51c sd a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44399 + c0038ad2: e11c sd a5,0(a0) + c0038ad4: 77a6 ld a5,104(sp) + c0038ad6: e51c sd a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44407 it->iterated_string = S; - c0038908: 77c2 ld a5,48(sp) - c003890a: e91c sd a5,16(a0) - c003890c: 77e2 ld a5,56(sp) - c003890e: ed1c sd a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44401 + c0038ad8: 77c2 ld a5,48(sp) + c0038ada: e91c sd a5,16(a0) + c0038adc: 77e2 ld a5,56(sp) + c0038ade: ed1c sd a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44409 it->global = string_indexof_char(strp, 'g', 0) >= 0; - c0038910: 855a mv a0,s6 - c0038912: d79cb0ef jal ra,c000468a - c0038916: fff54513 not a0,a0 - c003891a: 01f5551b srliw a0,a0,0x1f - c003891e: d088 sw a0,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44402 + c0038ae0: 855a mv a0,s6 + c0038ae2: ba9cb0ef jal ra,c000468a + c0038ae6: fff54513 not a0,a0 + c0038aea: 01f5551b srliw a0,a0,0x1f + c0038aee: d088 sw a0,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44410 it->unicode = string_indexof_char(strp, 'u', 0) >= 0; - c0038920: 4601 li a2,0 - c0038922: 07500593 li a1,117 - c0038926: 855a mv a0,s6 - c0038928: d63cb0ef jal ra,c000468a - c003892c: fff54513 not a0,a0 - c0038930: 01f5551b srliw a0,a0,0x1f - c0038934: d0c8 sw a0,36(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44403 + c0038af0: 4601 li a2,0 + c0038af2: 07500593 li a1,117 + c0038af6: 855a mv a0,s6 + c0038af8: b93cb0ef jal ra,c000468a + c0038afc: fff54513 not a0,a0 + c0038b00: 01f5551b srliw a0,a0,0x1f + c0038b04: d0c8 sw a0,36(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44411 it->done = FALSE; - c0038936: 0204a423 sw zero,40(s1) + c0038b06: 0204a423 sw zero,40(s1) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c003893a: 57fd li a5,-1 - c003893c: 00fd1463 bne s10,a5,c0038944 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c0038b0a: 57fd li a5,-1 + c0038b0c: 00fd1463 bne s10,a5,c0038b14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c0038940: 029cb823 sd s1,48(s9) + c0038b10: 029cb823 sd s1,48(s9) js_regexp_Symbol_matchAll(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44414 JS_FreeValue(ctx, C); - c0038944: 6586 ld a1,64(sp) - c0038946: 6626 ld a2,72(sp) - c0038948: 8522 mv a0,s0 - c003894a: 9eecf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44407 + c0038b14: 6586 ld a1,64(sp) + c0038b16: 6626 ld a2,72(sp) + c0038b18: 8522 mv a0,s0 + c0038b1a: 90ccf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44415 JS_FreeValue(ctx, flags); - c003894e: 65c6 ld a1,80(sp) - c0038950: 6666 ld a2,88(sp) - c0038952: 8522 mv a0,s0 - c0038954: 9e4cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44408 - return iter; - c0038958: e166 sd s9,128(sp) - c003895a: e562 sd s8,136(sp) + c0038b1e: 65c6 ld a1,80(sp) + c0038b20: 6666 ld a2,88(sp) + c0038b22: 8522 mv a0,s0 + c0038b24: 902cf0ef jal ra,c0007c26 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44416 -} - c003895c: 70f6 ld ra,376(sp) - c003895e: 7456 ld s0,368(sp) - c0038960: 650a ld a0,128(sp) - c0038962: 65aa ld a1,136(sp) - c0038964: 74b6 ld s1,360(sp) - c0038966: 7916 ld s2,352(sp) - c0038968: 69f6 ld s3,344(sp) - c003896a: 6a56 ld s4,336(sp) - c003896c: 6ab6 ld s5,328(sp) - c003896e: 6b16 ld s6,320(sp) - c0038970: 7bf2 ld s7,312(sp) - c0038972: 7c52 ld s8,304(sp) - c0038974: 7cb2 ld s9,296(sp) - c0038976: 7d12 ld s10,288(sp) - c0038978: 6df2 ld s11,280(sp) - c003897a: 6119 addi sp,sp,384 - c003897c: 8082 ret + return iter; + c0038b28: e166 sd s9,128(sp) + c0038b2a: e562 sd s8,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44424 +} + c0038b2c: 70f6 ld ra,376(sp) + c0038b2e: 7456 ld s0,368(sp) + c0038b30: 650a ld a0,128(sp) + c0038b32: 65aa ld a1,136(sp) + c0038b34: 74b6 ld s1,360(sp) + c0038b36: 7916 ld s2,352(sp) + c0038b38: 69f6 ld s3,344(sp) + c0038b3a: 6a56 ld s4,336(sp) + c0038b3c: 6ab6 ld s5,328(sp) + c0038b3e: 6b16 ld s6,320(sp) + c0038b40: 7bf2 ld s7,312(sp) + c0038b42: 7c52 ld s8,304(sp) + c0038b44: 7cb2 ld s9,296(sp) + c0038b46: 7d12 ld s10,288(sp) + c0038b48: 6df2 ld s11,280(sp) + c0038b4a: 6119 addi sp,sp,384 + c0038b4c: 8082 ret JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003897e: d227f7d3 fcvt.d.l fa5,a5 - c0038982: 479d li a5,7 - c0038984: e2078753 fmv.x.d a4,fa5 + c0038b4e: d227f7d3 fcvt.d.l fa5,a5 + c0038b52: 479d li a5,7 + c0038b54: e2078753 fmv.x.d a4,fa5 js_regexp_Symbol_matchAll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0038988: a9be fsd fa5,208(sp) - c003898a: 2701 sext.w a4,a4 - c003898c: b735 j c00388b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44369 + c0038b58: a9be fsd fa5,208(sp) + c0038b5a: 2701 sext.w a4,a4 + c0038b5c: b735 j c0038a88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 iter = JS_UNDEFINED; - c003898e: 4a8d li s5,3 - c0038990: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44368 + c0038b5e: 4a8d li s5,3 + c0038b60: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44376 matcher = JS_UNDEFINED; - c0038992: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44367 + c0038b62: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44375 flags = JS_UNDEFINED; - c0038994: 498d li s3,3 - c0038996: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44366 + c0038b64: 498d li s3,3 + c0038b66: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44374 C = JS_UNDEFINED; - c0038998: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44410 + c0038b68: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44418 JS_FreeValue(ctx, S); - c003899a: 75c2 ld a1,48(sp) - c003899c: 7662 ld a2,56(sp) - c003899e: 8522 mv a0,s0 - c00389a0: 998cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44411 + c0038b6a: 75c2 ld a1,48(sp) + c0038b6c: 7662 ld a2,56(sp) + c0038b6e: 8522 mv a0,s0 + c0038b70: 8b6cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44419 JS_FreeValue(ctx, C); - c00389a4: 6586 ld a1,64(sp) - c00389a6: 8652 mv a2,s4 - c00389a8: 8522 mv a0,s0 - c00389aa: 98ecf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44412 + c0038b74: 6586 ld a1,64(sp) + c0038b76: 8652 mv a2,s4 + c0038b78: 8522 mv a0,s0 + c0038b7a: 8accf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44420 JS_FreeValue(ctx, flags); - c00389ae: 85de mv a1,s7 - c00389b0: 864e mv a2,s3 - c00389b2: 8522 mv a0,s0 - c00389b4: 984cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44413 + c0038b7e: 85de mv a1,s7 + c0038b80: 864e mv a2,s3 + c0038b82: 8522 mv a0,s0 + c0038b84: 8a2cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44421 JS_FreeValue(ctx, matcher); - c00389b8: 7586 ld a1,96(sp) - c00389ba: 864a mv a2,s2 - c00389bc: 8522 mv a0,s0 - c00389be: 97acf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44414 + c0038b88: 7586 ld a1,96(sp) + c0038b8a: 864a mv a2,s2 + c0038b8c: 8522 mv a0,s0 + c0038b8e: 898cf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44422 JS_FreeValue(ctx, iter); - c00389c2: 85ee mv a1,s11 - c00389c4: 8656 mv a2,s5 - c00389c6: 8522 mv a0,s0 - c00389c8: 970cf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44415 + c0038b92: 85ee mv a1,s11 + c0038b94: 8656 mv a2,s5 + c0038b96: 8522 mv a0,s0 + c0038b98: 88ecf0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44423 return JS_EXCEPTION; - c00389cc: 4799 li a5,6 - c00389ce: e102 sd zero,128(sp) - c00389d0: e53e sd a5,136(sp) - c00389d2: b769 j c003895c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44369 + c0038b9c: 4799 li a5,6 + c0038b9e: e102 sd zero,128(sp) + c0038ba0: e53e sd a5,136(sp) + c0038ba2: b769 j c0038b2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 iter = JS_UNDEFINED; - c00389d4: 4a8d li s5,3 - c00389d6: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44368 + c0038ba4: 4a8d li s5,3 + c0038ba6: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44376 matcher = JS_UNDEFINED; - c00389d8: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44367 + c0038ba8: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44375 flags = JS_UNDEFINED; - c00389da: 498d li s3,3 - c00389dc: 4b81 li s7,0 - c00389de: bf75 j c003899a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44369 + c0038baa: 498d li s3,3 + c0038bac: 4b81 li s7,0 + c0038bae: bf75 j c0038b6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 iter = JS_UNDEFINED; - c00389e0: 4a8d li s5,3 - c00389e2: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44368 + c0038bb0: 4a8d li s5,3 + c0038bb2: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44376 matcher = JS_UNDEFINED; - c00389e4: 490d li s2,3 - c00389e6: bf55 j c003899a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44369 + c0038bb4: 490d li s2,3 + c0038bb6: bf55 j c0038b6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44377 iter = JS_UNDEFINED; - c00389e8: 4a8d li s5,3 - c00389ea: 4d81 li s11,0 - c00389ec: b77d j c003899a + c0038bb8: 4a8d li s5,3 + c0038bba: 4d81 li s11,0 + c0038bbc: b77d j c0038b6a -00000000c00389ee : +00000000c0038bbe : js_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39032 { - c00389ee: 7171 addi sp,sp,-176 - c00389f0: f122 sd s0,160(sp) - c00389f2: e54e sd s3,136(sp) - c00389f4: e152 sd s4,128(sp) - c00389f6: f506 sd ra,168(sp) - c00389f8: 8a3a mv s4,a4 - c00389fa: ed26 sd s1,152(sp) - c00389fc: e94a sd s2,144(sp) - c00389fe: e02e sd a1,0(sp) - c0038a00: e432 sd a2,8(sp) + c0038bbe: 7171 addi sp,sp,-176 + c0038bc0: f122 sd s0,160(sp) + c0038bc2: e54e sd s3,136(sp) + c0038bc4: e152 sd s4,128(sp) + c0038bc6: f506 sd ra,168(sp) + c0038bc8: 8a3a mv s4,a4 + c0038bca: ed26 sd s1,152(sp) + c0038bcc: e94a sd s2,144(sp) + c0038bce: e02e sd a1,0(sp) + c0038bd0: e432 sd a2,8(sp) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0038a02: 0006079b sext.w a5,a2 - c0038a06: 577d li a4,-1 + c0038bd2: 0006079b sext.w a5,a2 + c0038bd6: 577d li a4,-1 js_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39024 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39032 { - c0038a08: 89aa mv s3,a0 - c0038a0a: 8436 mv s0,a3 + c0038bd8: 89aa mv s3,a0 + c0038bda: 8436 mv s0,a3 JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0038a0c: 04e79563 bne a5,a4,c0038a56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c0038bdc: 04e79563 bne a5,a4,c0038c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0038a10: 619c ld a5,0(a1) - c0038a12: 93b1 srli a5,a5,0x2c + c0038be0: 619c ld a5,0(a1) + c0038be2: 93b1 srli a5,a5,0x2c js_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39028 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39036 if (JS_IsConstructor(ctx, this_val)) { - c0038a14: 8b85 andi a5,a5,1 - c0038a16: c3a1 beqz a5,c0038a56 + c0038be4: 8b85 andi a5,a5,1 + c0038be6: c3a1 beqz a5,c0038c26 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038a18: e882 sd zero,80(sp) - c0038a1a: c8b6 sw a3,80(sp) - c0038a1c: 67c6 ld a5,80(sp) + c0038be8: e882 sd zero,80(sp) + c0038bea: c8b6 sw a3,80(sp) + c0038bec: 67c6 ld a5,80(sp) js_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39038 obj = JS_CallConstructor(ctx, this_val, 1, (JSValueConst *)args); - c0038a1e: 1018 addi a4,sp,32 - c0038a20: 4685 li a3,1 - c0038a22: f8be sd a5,112(sp) - c0038a24: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39029 + c0038bee: 1018 addi a4,sp,32 + c0038bf0: 4685 li a3,1 + c0038bf2: f8be sd a5,112(sp) + c0038bf4: fc82 sd zero,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39037 args[0] = JS_NewInt32(ctx, argc); - c0038a26: f03e sd a5,32(sp) - c0038a28: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39030 + c0038bf6: f03e sd a5,32(sp) + c0038bf8: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39038 obj = JS_CallConstructor(ctx, this_val, 1, (JSValueConst *)args); - c0038a2a: a7dff0ef jal ra,c00384a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39032 + c0038bfa: a7dff0ef jal ra,c0038676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39040 obj = JS_NewArray(ctx); - c0038a2e: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39034 + c0038bfe: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39042 if (JS_IsException(obj)) - c0038a30: 0005879b sext.w a5,a1 - c0038a34: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39032 + c0038c00: 0005879b sext.w a5,a1 + c0038c04: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39040 obj = JS_NewArray(ctx); - c0038a36: 84ae mv s1,a1 + c0038c06: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0038a38: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39034 + c0038c08: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39042 if (JS_IsException(obj)) - c0038a3a: 04e79d63 bne a5,a4,c0038a94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39035 + c0038c0a: 04e79d63 bne a5,a4,c0038c64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39043 return JS_EXCEPTION; - c0038a3e: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39048 + c0038c0e: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39056 } - c0038a40: 70aa ld ra,168(sp) - c0038a42: 740a ld s0,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39047 + c0038c10: 70aa ld ra,168(sp) + c0038c12: 740a ld s0,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39055 return obj; - c0038a44: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39048 -} - c0038a46: 7542 ld a0,48(sp) - c0038a48: 75e2 ld a1,56(sp) - c0038a4a: 64ea ld s1,152(sp) - c0038a4c: 694a ld s2,144(sp) - c0038a4e: 69aa ld s3,136(sp) - c0038a50: 6a0a ld s4,128(sp) - c0038a52: 614d addi sp,sp,176 - c0038a54: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39032 + c0038c14: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39056 +} + c0038c16: 7542 ld a0,48(sp) + c0038c18: 75e2 ld a1,56(sp) + c0038c1a: 64ea ld s1,152(sp) + c0038c1c: 694a ld s2,144(sp) + c0038c1e: 69aa ld s3,136(sp) + c0038c20: 6a0a ld s4,128(sp) + c0038c22: 614d addi sp,sp,176 + c0038c24: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39040 obj = JS_NewArray(ctx); - c0038a56: 854e mv a0,s3 - c0038a58: d66de0ef jal ra,c0016fbe - c0038a5c: bfc9 j c0038a2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39037 + c0038c26: 854e mv a0,s3 + c0038c28: d66de0ef jal ra,c001718e + c0038c2c: bfc9 j c0038bfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39045 if (JS_CreateDataPropertyUint32(ctx, obj, i, JS_DupValue(ctx, argv[i]), - c0038a5e: 00491793 slli a5,s2,0x4 - c0038a62: 97d2 add a5,a5,s4 - c0038a64: 6388 ld a0,0(a5) - c0038a66: 678c ld a1,8(a5) - c0038a68: c07cd0ef jal ra,c000666e - c0038a6c: 87ae mv a5,a1 - c0038a6e: 65c2 ld a1,16(sp) - c0038a70: 872a mv a4,a0 - c0038a72: 86ca mv a3,s2 - c0038a74: 6811 lui a6,0x4 - c0038a76: 8626 mv a2,s1 - c0038a78: 854e mv a0,s3 - c0038a7a: a6df00ef jal ra,c00294e6 - c0038a7e: 0905 addi s2,s2,1 - c0038a80: 00055a63 bgez a0,c0038a94 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39044 + c0038c2e: 00491793 slli a5,s2,0x4 + c0038c32: 97d2 add a5,a5,s4 + c0038c34: 6388 ld a0,0(a5) + c0038c36: 678c ld a1,8(a5) + c0038c38: b25cd0ef jal ra,c000675c + c0038c3c: 87ae mv a5,a1 + c0038c3e: 65c2 ld a1,16(sp) + c0038c40: 872a mv a4,a0 + c0038c42: 86ca mv a3,s2 + c0038c44: 6811 lui a6,0x4 + c0038c46: 8626 mv a2,s1 + c0038c48: 854e mv a0,s3 + c0038c4a: a6df00ef jal ra,c00296b6 + c0038c4e: 0905 addi s2,s2,1 + c0038c50: 00055a63 bgez a0,c0038c64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39052 JS_FreeValue(ctx, obj); - c0038a84: 65c2 ld a1,16(sp) - c0038a86: 8626 mv a2,s1 - c0038a88: 854e mv a0,s3 - c0038a8a: 8aecf0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39045 + c0038c54: 65c2 ld a1,16(sp) + c0038c56: 8626 mv a2,s1 + c0038c58: 854e mv a0,s3 + c0038c5a: fcdce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39053 return JS_EXCEPTION; - c0038a8e: 4799 li a5,6 - c0038a90: f802 sd zero,48(sp) - c0038a92: b77d j c0038a40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39036 (discriminator 1) + c0038c5e: 4799 li a5,6 + c0038c60: f802 sd zero,48(sp) + c0038c62: b77d j c0038c10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39044 (discriminator 1) for(i = 0; i < argc; i++) { - c0038a94: 0009079b sext.w a5,s2 - c0038a98: fc87c3e3 blt a5,s0,c0038a5e + c0038c64: 0009079b sext.w a5,s2 + c0038c68: fc87c3e3 blt a5,s0,c0038c2e JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c0038a9c: 02044963 bltz s0,c0038ace + c0038c6c: 02044963 bltz s0,c0038c9e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038aa0: da82 sw zero,116(sp) - c0038aa2: d8a2 sw s0,112(sp) - c0038aa4: 77c6 ld a5,112(sp) - c0038aa6: fc82 sd zero,120(sp) - c0038aa8: f0be sd a5,96(sp) - c0038aaa: 4781 li a5,0 + c0038c70: da82 sw zero,116(sp) + c0038c72: d8a2 sw s0,112(sp) + c0038c74: 77c6 ld a5,112(sp) + c0038c76: fc82 sd zero,120(sp) + c0038c78: f0be sd a5,96(sp) + c0038c7a: 4781 li a5,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c0038aac: d0a2 sw s0,96(sp) + c0038c7c: d0a2 sw s0,96(sp) js_array_of(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39050 if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewUint32(ctx, argc)) < 0) { - c0038aae: 7706 ld a4,96(sp) - c0038ab0: 65c2 ld a1,16(sp) - c0038ab2: 03000693 li a3,48 - c0038ab6: 8626 mv a2,s1 - c0038ab8: 854e mv a0,s3 - c0038aba: f4be sd a5,104(sp) - c0038abc: ec26 sd s1,24(sp) - c0038abe: e3af70ef jal ra,c00300f8 - c0038ac2: fc0541e3 bltz a0,c0038a84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39047 + c0038c7e: 7706 ld a4,96(sp) + c0038c80: 65c2 ld a1,16(sp) + c0038c82: 03000693 li a3,48 + c0038c86: 8626 mv a2,s1 + c0038c88: 854e mv a0,s3 + c0038c8a: f4be sd a5,104(sp) + c0038c8c: ec26 sd s1,24(sp) + c0038c8e: e3af70ef jal ra,c00302c8 + c0038c92: fc0541e3 bltz a0,c0038c54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39055 return obj; - c0038ac6: 67c2 ld a5,16(sp) - c0038ac8: f83e sd a5,48(sp) - c0038aca: 67e2 ld a5,24(sp) - c0038acc: bf95 j c0038a40 + c0038c96: 67c2 ld a5,16(sp) + c0038c98: f83e sd a5,48(sp) + c0038c9a: 67e2 ld a5,24(sp) + c0038c9c: bf95 j c0038c10 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c0038ace: d21407d3 fcvt.d.wu fa5,s0 - c0038ad2: 479d li a5,7 - c0038ad4: e2078453 fmv.x.d s0,fa5 + c0038c9e: d21407d3 fcvt.d.wu fa5,s0 + c0038ca2: 479d li a5,7 + c0038ca4: e2078453 fmv.x.d s0,fa5 js_array_of(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0038ad8: b0be fsd fa5,96(sp) - c0038ada: 2401 sext.w s0,s0 - c0038adc: bfc1 j c0038aac + c0038ca8: b0be fsd fa5,96(sp) + c0038caa: 2401 sext.w s0,s0 + c0038cac: bfc1 j c0038c7c -00000000c0038ade : +00000000c0038cae : JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39069 -{ - c0038ade: 7135 addi sp,sp,-160 - c0038ae0: e922 sd s0,144(sp) - c0038ae2: ed06 sd ra,152(sp) - c0038ae4: e526 sd s1,136(sp) - c0038ae6: e14a sd s2,128(sp) - c0038ae8: fcce sd s3,120(sp) - c0038aea: f8d2 sd s4,112(sp) - c0038aec: 842a mv s0,a0 - c0038aee: e82e sd a1,16(sp) - c0038af0: ec32 sd a2,24(sp) - c0038af2: e036 sd a3,0(sp) - c0038af4: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39077 +{ + c0038cae: 7135 addi sp,sp,-160 + c0038cb0: e922 sd s0,144(sp) + c0038cb2: ed06 sd ra,152(sp) + c0038cb4: e526 sd s1,136(sp) + c0038cb6: e14a sd s2,128(sp) + c0038cb8: fcce sd s3,120(sp) + c0038cba: f8d2 sd s4,112(sp) + c0038cbc: 842a mv s0,a0 + c0038cbe: e82e sd a1,16(sp) + c0038cc0: ec32 sd a2,24(sp) + c0038cc2: e036 sd a3,0(sp) + c0038cc4: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39082 res = JS_IsArray(ctx, obj); - c0038af6: fd8db0ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39075 + c0038cc6: ef6db0ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39083 if (res < 0) - c0038afa: 00055663 bgez a0,c0038b06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39076 + c0038cca: 00055663 bgez a0,c0038cd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39084 return JS_EXCEPTION; - c0038afe: e882 sd zero,80(sp) - c0038b00: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39109 + c0038cce: e882 sd zero,80(sp) + c0038cd0: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39117 return ret; - c0038b02: ecbe sd a5,88(sp) - c0038b04: a889 j c0038b56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39077 + c0038cd2: ecbe sd a5,88(sp) + c0038cd4: a889 j c0038d26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39085 if (!res) - c0038b06: ed11 bnez a0,c0038b22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39078 + c0038cd6: ed11 bnez a0,c0038cf2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39086 return js_array_constructor(ctx, JS_UNDEFINED, 1, &len_val); - c0038b08: 478d li a5,3 - c0038b0a: f082 sd zero,96(sp) - c0038b0c: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39105 + c0038cd8: 478d li a5,3 + c0038cda: f082 sd zero,96(sp) + c0038cdc: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39113 return js_array_constructor(ctx, JS_UNDEFINED, 1, &len_val); - c0038b0e: 870a mv a4,sp - c0038b10: 4685 li a3,1 - c0038b12: 4581 li a1,0 - c0038b14: 460d li a2,3 - c0038b16: 8522 mv a0,s0 - c0038b18: f50f70ef jal ra,c0030268 - c0038b1c: e8aa sd a0,80(sp) - c0038b1e: ecae sd a1,88(sp) - c0038b20: a81d j c0038b56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39079 + c0038cde: 870a mv a4,sp + c0038ce0: 4685 li a3,1 + c0038ce2: 4581 li a1,0 + c0038ce4: 460d li a2,3 + c0038ce6: 8522 mv a0,s0 + c0038ce8: f50f70ef jal ra,c0030438 + c0038cec: e8aa sd a0,80(sp) + c0038cee: ecae sd a1,88(sp) + c0038cf0: a81d j c0038d26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39087 ctor = JS_GetProperty(ctx, obj, JS_ATOM_constructor); - c0038b22: 67e2 ld a5,24(sp) - c0038b24: 6742 ld a4,16(sp) + c0038cf2: 67e2 ld a5,24(sp) + c0038cf4: 6742 ld a4,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0038b26: 4801 li a6,0 - c0038b28: 863e mv a2,a5 - c0038b2a: 03d00693 li a3,61 - c0038b2e: 85ba mv a1,a4 - c0038b30: 8522 mv a0,s0 - c0038b32: f4be sd a5,104(sp) - c0038b34: f0ba sd a4,96(sp) - c0038b36: d0dd80ef jal ra,c0011842 - c0038b3a: e0aa sd a0,64(sp) - c0038b3c: e4ae sd a1,72(sp) - c0038b3e: f02a sd a0,32(sp) - c0038b40: f42e sd a1,40(sp) + c0038cf6: 4801 li a6,0 + c0038cf8: 863e mv a2,a5 + c0038cfa: 03d00693 li a3,61 + c0038cfe: 85ba mv a1,a4 + c0038d00: 8522 mv a0,s0 + c0038d02: f4be sd a5,104(sp) + c0038d04: f0ba sd a4,96(sp) + c0038d06: c2bd80ef jal ra,c0011930 + c0038d0a: e0aa sd a0,64(sp) + c0038d0c: e4ae sd a1,72(sp) + c0038d0e: f02a sd a0,32(sp) + c0038d10: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0038b42: 0005879b sext.w a5,a1 + c0038d12: 0005879b sext.w a5,a1 JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39088 if (JS_IsException(ctor)) - c0038b46: 4999 li s3,6 + c0038d16: 4999 li s3,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0038b48: 862e mv a2,a1 - c0038b4a: 892a mv s2,a0 - c0038b4c: 84ae mv s1,a1 + c0038d18: 862e mv a2,a1 + c0038d1a: 892a mv s2,a0 + c0038d1c: 84ae mv s1,a1 JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39080 - c0038b4e: 01379e63 bne a5,s3,c0038b6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39081 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39088 + c0038d1e: 01379e63 bne a5,s3,c0038d3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39089 return ctor; - c0038b52: e8aa sd a0,80(sp) - c0038b54: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39111 (discriminator 1) -} - c0038b56: 60ea ld ra,152(sp) - c0038b58: 644a ld s0,144(sp) - c0038b5a: 6546 ld a0,80(sp) - c0038b5c: 65e6 ld a1,88(sp) - c0038b5e: 64aa ld s1,136(sp) - c0038b60: 690a ld s2,128(sp) - c0038b62: 79e6 ld s3,120(sp) - c0038b64: 7a46 ld s4,112(sp) - c0038b66: 610d addi sp,sp,160 - c0038b68: 8082 ret + c0038d22: e8aa sd a0,80(sp) + c0038d24: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39119 (discriminator 1) +} + c0038d26: 60ea ld ra,152(sp) + c0038d28: 644a ld s0,144(sp) + c0038d2a: 6546 ld a0,80(sp) + c0038d2c: 65e6 ld a1,88(sp) + c0038d2e: 64aa ld s1,136(sp) + c0038d30: 690a ld s2,128(sp) + c0038d32: 79e6 ld s3,120(sp) + c0038d34: 7a46 ld s4,112(sp) + c0038d36: 610d addi sp,sp,160 + c0038d38: 8082 ret JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c0038b6a: 577d li a4,-1 - c0038b6c: 04e79463 bne a5,a4,c0038bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c0038d3a: 577d li a4,-1 + c0038d3c: 04e79463 bne a5,a4,c0038d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c0038b70: 611c ld a5,0(a0) - c0038b72: 93b1 srli a5,a5,0x2c + c0038d40: 611c ld a5,0(a0) + c0038d42: 93b1 srli a5,a5,0x2c JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39090 if (JS_IsConstructor(ctx, ctor)) { - c0038b74: 8b85 andi a5,a5,1 - c0038b76: cf9d beqz a5,c0038bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39084 + c0038d44: 8b85 andi a5,a5,1 + c0038d46: cf9d beqz a5,c0038d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39092 realm = JS_GetFunctionRealm(ctx, ctor); - c0038b78: 85aa mv a1,a0 - c0038b7a: 8522 mv a0,s0 - c0038b7c: c3fdb0ef jal ra,c00147ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39085 + c0038d48: 85aa mv a1,a0 + c0038d4a: 8522 mv a0,s0 + c0038d4c: b5ddb0ef jal ra,c00148a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39093 if (!realm) { - c0038b80: e909 bnez a0,c0038b92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39086 + c0038d50: e909 bnez a0,c0038d62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39094 JS_FreeValue(ctx, ctor); - c0038b82: 7582 ld a1,32(sp) - c0038b84: 7622 ld a2,40(sp) - c0038b86: 8522 mv a0,s0 - c0038b88: fb1ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39087 + c0038d52: 7582 ld a1,32(sp) + c0038d54: 7622 ld a2,40(sp) + c0038d56: 8522 mv a0,s0 + c0038d58: ecfce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39095 return JS_EXCEPTION; - c0038b8c: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39099 + c0038d5c: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39107 return species; - c0038b8e: ecce sd s3,88(sp) - c0038b90: b7d9 j c0038b56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39089 + c0038d5e: ecce sd s3,88(sp) + c0038d60: b7d9 j c0038d26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39097 if (realm != ctx && - c0038b92: 02a40163 beq s0,a0,c0038bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39090 (discriminator 1) + c0038d62: 02a40163 beq s0,a0,c0038d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39098 (discriminator 1) js_same_value(ctx, ctor, realm->array_ctor)) { - c0038b96: 7534 ld a3,104(a0) - c0038b98: 7938 ld a4,112(a0) - c0038b9a: 7582 ld a1,32(sp) - c0038b9c: 7622 ld a2,40(sp) - c0038b9e: 8522 mv a0,s0 - c0038ba0: 922cf0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39089 (discriminator 1) + c0038d66: 7534 ld a3,104(a0) + c0038d68: 7938 ld a4,112(a0) + c0038d6a: 7582 ld a1,32(sp) + c0038d6c: 7622 ld a2,40(sp) + c0038d6e: 8522 mv a0,s0 + c0038d70: 840cf0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39097 (discriminator 1) if (realm != ctx && - c0038ba4: c901 beqz a0,c0038bb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39091 + c0038d74: c901 beqz a0,c0038d84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39099 JS_FreeValue(ctx, ctor); - c0038ba6: 7582 ld a1,32(sp) - c0038ba8: 7622 ld a2,40(sp) - c0038baa: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39092 + c0038d76: 7582 ld a1,32(sp) + c0038d78: 7622 ld a2,40(sp) + c0038d7a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39100 ctor = JS_UNDEFINED; - c0038bac: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39091 + c0038d7c: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39099 JS_FreeValue(ctx, ctor); - c0038bae: f8bce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39092 + c0038d7e: ea9ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39100 ctor = JS_UNDEFINED; - c0038bb2: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39095 + c0038d82: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39103 if (JS_IsObject(ctor)) { - c0038bb4: 0004879b sext.w a5,s1 - c0038bb8: 577d li a4,-1 - c0038bba: 04e79363 bne a5,a4,c0038c00 + c0038d84: 0004879b sext.w a5,s1 + c0038d88: 577d li a4,-1 + c0038d8a: 04e79363 bne a5,a4,c0038dd0 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0038bbe: 874a mv a4,s2 - c0038bc0: 87a6 mv a5,s1 - c0038bc2: 4801 li a6,0 - c0038bc4: 0d500693 li a3,213 - c0038bc8: 8626 mv a2,s1 - c0038bca: 85ca mv a1,s2 - c0038bcc: 8522 mv a0,s0 - c0038bce: e8ca sd s2,80(sp) - c0038bd0: eca6 sd s1,88(sp) - c0038bd2: c71d80ef jal ra,c0011842 - c0038bd6: 89ae mv s3,a1 - c0038bd8: f0aa sd a0,96(sp) - c0038bda: f4ae sd a1,104(sp) - c0038bdc: 8a2a mv s4,a0 + c0038d8e: 874a mv a4,s2 + c0038d90: 87a6 mv a5,s1 + c0038d92: 4801 li a6,0 + c0038d94: 0d500693 li a3,213 + c0038d98: 8626 mv a2,s1 + c0038d9a: 85ca mv a1,s2 + c0038d9c: 8522 mv a0,s0 + c0038d9e: e8ca sd s2,80(sp) + c0038da0: eca6 sd s1,88(sp) + c0038da2: b8fd80ef jal ra,c0011930 + c0038da6: 89ae mv s3,a1 + c0038da8: f0aa sd a0,96(sp) + c0038daa: f4ae sd a1,104(sp) + c0038dac: 8a2a mv s4,a0 JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39097 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39105 JS_FreeValue(ctx, ctor); - c0038bde: 85ca mv a1,s2 - c0038be0: 8626 mv a2,s1 - c0038be2: 8522 mv a0,s0 - c0038be4: f55ce0ef jal ra,c0007b38 + c0038dae: 85ca mv a1,s2 + c0038db0: 8626 mv a2,s1 + c0038db2: 8522 mv a0,s0 + c0038db4: e73ce0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0038be8: 0009879b sext.w a5,s3 + c0038db8: 0009879b sext.w a5,s3 JS_ArraySpeciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39098 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39106 if (JS_IsException(species)) - c0038bec: 4719 li a4,6 - c0038bee: 00e79463 bne a5,a4,c0038bf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39099 + c0038dbc: 4719 li a4,6 + c0038dbe: 00e79463 bne a5,a4,c0038dc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39107 return species; - c0038bf2: e8d2 sd s4,80(sp) - c0038bf4: bf69 j c0038b8e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39101 + c0038dc2: e8d2 sd s4,80(sp) + c0038dc4: bf69 j c0038d5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39109 if (JS_IsNull(ctor)) - c0038bf6: 4709 li a4,2 - c0038bf8: 00e79c63 bne a5,a4,c0038c10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39102 + c0038dc6: 4709 li a4,2 + c0038dc8: 00e79c63 bne a5,a4,c0038de0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39110 ctor = JS_UNDEFINED; - c0038bfc: 448d li s1,3 - c0038bfe: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39104 + c0038dcc: 448d li s1,3 + c0038dce: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39112 if (JS_IsUndefined(ctor)) { - c0038c00: 0004879b sext.w a5,s1 - c0038c04: 470d li a4,3 - c0038c06: 00e79863 bne a5,a4,c0038c16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39105 + c0038dd0: 0004879b sext.w a5,s1 + c0038dd4: 470d li a4,3 + c0038dd6: 00e79863 bne a5,a4,c0038de6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39113 return js_array_constructor(ctx, JS_UNDEFINED, 1, &len_val); - c0038c0a: f802 sd zero,48(sp) - c0038c0c: fc3e sd a5,56(sp) - c0038c0e: b701 j c0038b0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39100 + c0038dda: f802 sd zero,48(sp) + c0038ddc: fc3e sd a5,56(sp) + c0038dde: b701 j c0038cde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39108 ctor = species; - c0038c10: 84ce mv s1,s3 - c0038c12: 8952 mv s2,s4 - c0038c14: b7f5 j c0038c00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39107 + c0038de0: 84ce mv s1,s3 + c0038de2: 8952 mv s2,s4 + c0038de4: b7f5 j c0038dd0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39115 ret = JS_CallConstructor(ctx, ctor, 1, &len_val); - c0038c16: 870a mv a4,sp - c0038c18: 4685 li a3,1 - c0038c1a: 8626 mv a2,s1 - c0038c1c: 85ca mv a1,s2 - c0038c1e: 8522 mv a0,s0 - c0038c20: f04a sd s2,32(sp) - c0038c22: f426 sd s1,40(sp) - c0038c24: 883ff0ef jal ra,c00384a6 - c0038c28: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39108 + c0038de6: 870a mv a4,sp + c0038de8: 4685 li a3,1 + c0038dea: 8626 mv a2,s1 + c0038dec: 85ca mv a1,s2 + c0038dee: 8522 mv a0,s0 + c0038df0: f04a sd s2,32(sp) + c0038df2: f426 sd s1,40(sp) + c0038df4: 883ff0ef jal ra,c0038676 + c0038df8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39116 JS_FreeValue(ctx, ctor); - c0038c2a: 7622 ld a2,40(sp) - c0038c2c: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39107 + c0038dfa: 7622 ld a2,40(sp) + c0038dfc: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39115 ret = JS_CallConstructor(ctx, ctor, 1, &len_val); - c0038c2e: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39108 + c0038dfe: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39116 JS_FreeValue(ctx, ctor); - c0038c30: 8522 mv a0,s0 - c0038c32: f07ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39109 + c0038e00: 8522 mv a0,s0 + c0038e02: e25ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39117 return ret; - c0038c36: 77c2 ld a5,48(sp) - c0038c38: e8be sd a5,80(sp) - c0038c3a: 77e2 ld a5,56(sp) - c0038c3c: b5d9 j c0038b02 + c0038e06: 77c2 ld a5,48(sp) + c0038e08: e8be sd a5,80(sp) + c0038e0a: 77e2 ld a5,56(sp) + c0038e0c: b5d9 j c0038cd2 -00000000c0038c3e : +00000000c0038e0e : js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40109 -{ - c0038c3e: 710d addi sp,sp,-352 - c0038c40: eaa2 sd s0,336(sp) - c0038c42: e6a6 sd s1,328(sp) - c0038c44: fe4e sd s3,312(sp) - c0038c46: ee5e sd s7,280(sp) - c0038c48: ee86 sd ra,344(sp) - c0038c4a: e2ca sd s2,320(sp) - c0038c4c: fa52 sd s4,304(sp) - c0038c4e: f656 sd s5,296(sp) - c0038c50: f25a sd s6,288(sp) - c0038c52: ea62 sd s8,272(sp) - c0038c54: 842a mv s0,a0 - c0038c56: ec32 sd a2,24(sp) - c0038c58: 89b6 mv s3,a3 - c0038c5a: e82e sd a1,16(sp) - c0038c5c: 84ba mv s1,a4 - c0038c5e: 8bbe mv s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40116 - arr = JS_UNDEFINED; - c0038c60: f082 sd zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40117 +{ + c0038e0e: 710d addi sp,sp,-352 + c0038e10: eaa2 sd s0,336(sp) + c0038e12: e6a6 sd s1,328(sp) + c0038e14: fe4e sd s3,312(sp) + c0038e16: ee5e sd s7,280(sp) + c0038e18: ee86 sd ra,344(sp) + c0038e1a: e2ca sd s2,320(sp) + c0038e1c: fa52 sd s4,304(sp) + c0038e1e: f656 sd s5,296(sp) + c0038e20: f25a sd s6,288(sp) + c0038e22: ea62 sd s8,272(sp) + c0038e24: 842a mv s0,a0 + c0038e26: ec32 sd a2,24(sp) + c0038e28: 89b6 mv s3,a3 + c0038e2a: e82e sd a1,16(sp) + c0038e2c: 84ba mv s1,a4 + c0038e2e: 8bbe mv s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40124 + arr = JS_UNDEFINED; + c0038e30: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40125 obj = JS_ToObject(ctx, this_val); - c0038c62: 98bef0ef jal ra,c00285ec - c0038c66: 862a mv a2,a0 - c0038c68: 86ae mv a3,a1 - c0038c6a: e8aa sd a0,80(sp) - c0038c6c: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40118 + c0038e32: 98bef0ef jal ra,c00287bc + c0038e36: 862a mv a2,a0 + c0038e38: 86ae mv a3,a1 + c0038e3a: e8aa sd a0,80(sp) + c0038e3c: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40126 if (js_get_length64(ctx, &len, obj)) - c0038c6e: 8522 mv a0,s0 - c0038c70: 102c addi a1,sp,40 - c0038c72: bcde50ef jal ra,c001e83e - c0038c76: e521 bnez a0,c0038cbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40121 + c0038e3e: 8522 mv a0,s0 + c0038e40: 102c addi a1,sp,40 + c0038e42: bcde50ef jal ra,c001ea0e + c0038e46: e521 bnez a0,c0038e8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40129 if (JS_ToInt64Clamp(ctx, &start, argv[0], 0, len, len)) - c0038c78: 7822 ld a6,40(sp) - c0038c7a: 6090 ld a2,0(s1) - c0038c7c: 6494 ld a3,8(s1) - c0038c7e: 87c2 mv a5,a6 - c0038c80: 4701 li a4,0 - c0038c82: 180c addi a1,sp,48 - c0038c84: 8522 mv a0,s0 - c0038c86: b29e50ef jal ra,c001e7ae - c0038c8a: e915 bnez a0,c0038cbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40131 + c0038e48: 7822 ld a6,40(sp) + c0038e4a: 6090 ld a2,0(s1) + c0038e4c: 6494 ld a3,8(s1) + c0038e4e: 87c2 mv a5,a6 + c0038e50: 4701 li a4,0 + c0038e52: 180c addi a1,sp,48 + c0038e54: 8522 mv a0,s0 + c0038e56: b29e50ef jal ra,c001e97e + c0038e5a: e915 bnez a0,c0038e8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40139 del_count = len - start; - c0038c8c: 7822 ld a6,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40124 + c0038e5c: 7822 ld a6,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40132 if (splice) { - c0038c8e: 040b8e63 beqz s7,c0038cea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40125 + c0038e5e: 040b8e63 beqz s7,c0038eba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40133 if (argc == 0) { - c0038c92: 02099863 bnez s3,c0038cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40127 + c0038e62: 02099863 bnez s3,c0038e92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40135 del_count = 0; - c0038c96: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40137 + c0038e66: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40145 if (len + item_count - del_count > MAX_SAFE_INTEGER) { - c0038c98: 6906 ld s2,64(sp) - c0038c9a: 77a2 ld a5,40(sp) - c0038c9c: 02099713 slli a4,s3,0x20 - c0038ca0: 9301 srli a4,a4,0x20 - c0038ca2: 412787b3 sub a5,a5,s2 - c0038ca6: 97ba add a5,a5,a4 - c0038ca8: 577d li a4,-1 - c0038caa: 832d srli a4,a4,0xb - c0038cac: 04f75e63 bge a4,a5,c0038d08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40138 + c0038e68: 6906 ld s2,64(sp) + c0038e6a: 77a2 ld a5,40(sp) + c0038e6c: 02099713 slli a4,s3,0x20 + c0038e70: 9301 srli a4,a4,0x20 + c0038e72: 412787b3 sub a5,a5,s2 + c0038e76: 97ba add a5,a5,a4 + c0038e78: 577d li a4,-1 + c0038e7a: 832d srli a4,a4,0xb + c0038e7c: 04f75e63 bge a4,a5,c0038ed8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40146 JS_ThrowTypeError(ctx, "Array loo long"); - c0038cb0: 00027597 auipc a1,0x27 - c0038cb4: 77858593 addi a1,a1,1912 # c0060428 - c0038cb8: 8522 mv a0,s0 - c0038cba: f3cda0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40116 + c0038e80: 00028597 auipc a1,0x28 + c0038e84: 80858593 addi a1,a1,-2040 # c0060688 + c0038e88: 8522 mv a0,s0 + c0038e8a: e5ada0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40124 arr = JS_UNDEFINED; - c0038cbe: 4b0d li s6,3 - c0038cc0: aae1 j c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40131 + c0038e8e: 4b0d li s6,3 + c0038e90: aae1 j c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40139 del_count = len - start; - c0038cc2: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40129 + c0038e92: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40137 if (argc == 1) { - c0038cc4: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40131 + c0038e94: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40139 del_count = len - start; - c0038cc6: 40f807b3 sub a5,a6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40129 + c0038e96: 40f807b3 sub a5,a6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40137 if (argc == 1) { - c0038cca: 00e99563 bne s3,a4,c0038cd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40131 + c0038e9a: 00e99563 bne s3,a4,c0038ea4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40139 del_count = len - start; - c0038cce: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40130 + c0038e9e: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40138 item_count = 0; - c0038cd0: 4981 li s3,0 - c0038cd2: b7d9 j c0038c98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40134 + c0038ea0: 4981 li s3,0 + c0038ea2: b7d9 j c0038e68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40142 if (JS_ToInt64Clamp(ctx, &del_count, argv[1], 0, len - start, 0)) - c0038cd4: 6890 ld a2,16(s1) - c0038cd6: 6c94 ld a3,24(s1) - c0038cd8: 4801 li a6,0 - c0038cda: 4701 li a4,0 - c0038cdc: 008c addi a1,sp,64 - c0038cde: 8522 mv a0,s0 - c0038ce0: acfe50ef jal ra,c001e7ae - c0038ce4: fd69 bnez a0,c0038cbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40133 + c0038ea4: 6890 ld a2,16(s1) + c0038ea6: 6c94 ld a3,24(s1) + c0038ea8: 4801 li a6,0 + c0038eaa: 4701 li a4,0 + c0038eac: 008c addi a1,sp,64 + c0038eae: 8522 mv a0,s0 + c0038eb0: acfe50ef jal ra,c001e97e + c0038eb4: fd69 bnez a0,c0038e8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40141 item_count = argc - 2; - c0038ce6: 39f9 addiw s3,s3,-2 - c0038ce8: bf45 j c0038c98 + c0038eb6: 39f9 addiw s3,s3,-2 + c0038eb8: bf45 j c0038e68 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c0038cea: 6c94 ld a3,24(s1) + c0038eba: 6c94 ld a3,24(s1) js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40152 final = len; - c0038cec: fc42 sd a6,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40145 + c0038ebc: fc42 sd a6,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40153 if (!JS_IsUndefined(argv[1])) { - c0038cee: 478d li a5,3 - c0038cf0: 0006871b sext.w a4,a3 - c0038cf4: 0ef71a63 bne a4,a5,c0038de8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40149 + c0038ebe: 478d li a5,3 + c0038ec0: 0006871b sext.w a4,a3 + c0038ec4: 0ef71a63 bne a4,a5,c0038fb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40157 count = max_int64(final - start, 0); - c0038cf8: 7962 ld s2,56(sp) - c0038cfa: 77c2 ld a5,48(sp) - c0038cfc: 40f90933 sub s2,s2,a5 - c0038d00: 00095363 bgez s2,c0038d06 - c0038d04: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40143 + c0038ec8: 7962 ld s2,56(sp) + c0038eca: 77c2 ld a5,48(sp) + c0038ecc: 40f90933 sub s2,s2,a5 + c0038ed0: 00095363 bgez s2,c0038ed6 + c0038ed4: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40151 item_count = 0; /* avoid warning */ - c0038d06: 4981 li s3,0 + c0038ed6: 4981 li s3,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0038d08: 0009079b sext.w a5,s2 - c0038d0c: 0ef91863 bne s2,a5,c0038dfc + c0038ed8: 0009079b sext.w a5,s2 + c0038edc: 0ef91863 bne s2,a5,c0038fcc JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038d10: cb82 sw zero,212(sp) - c0038d12: c9ca sw s2,208(sp) - c0038d14: 674e ld a4,208(sp) - c0038d16: ed82 sd zero,216(sp) - c0038d18: e602 sd zero,264(sp) - c0038d1a: e23a sd a4,256(sp) - c0038d1c: 4701 li a4,0 + c0038ee0: cb82 sw zero,212(sp) + c0038ee2: c9ca sw s2,208(sp) + c0038ee4: 674e ld a4,208(sp) + c0038ee6: ed82 sd zero,216(sp) + c0038ee8: e602 sd zero,264(sp) + c0038eea: e23a sd a4,256(sp) + c0038eec: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0038d1e: 10f12023 sw a5,256(sp) - c0038d22: 2792 fld fa5,256(sp) + c0038eee: 10f12023 sw a5,256(sp) + c0038ef2: 2792 fld fa5,256(sp) js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40160 arr = JS_ArraySpeciesCreate(ctx, obj, len_val); - c0038d24: 6692 ld a3,256(sp) - c0038d26: 6666 ld a2,88(sp) - c0038d28: 65c6 ld a1,80(sp) - c0038d2a: 8522 mv a0,s0 - c0038d2c: a13e fsd fa5,128(sp) - c0038d2e: e53a sd a4,136(sp) - c0038d30: dafff0ef jal ra,c0038ade - c0038d34: 8aae mv s5,a1 - c0038d36: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40153 + c0038ef4: 6692 ld a3,256(sp) + c0038ef6: 6666 ld a2,88(sp) + c0038ef8: 65c6 ld a1,80(sp) + c0038efa: 8522 mv a0,s0 + c0038efc: a13e fsd fa5,128(sp) + c0038efe: e53a sd a4,136(sp) + c0038f00: dafff0ef jal ra,c0038cae + c0038f04: 8aae mv s5,a1 + c0038f06: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40161 JS_FreeValue(ctx, len_val); - c0038d38: 662a ld a2,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40152 + c0038f08: 662a ld a2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40160 arr = JS_ArraySpeciesCreate(ctx, obj, len_val); - c0038d3a: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40153 + c0038f0a: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40161 JS_FreeValue(ctx, len_val); - c0038d3c: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40152 + c0038f0c: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40160 arr = JS_ArraySpeciesCreate(ctx, obj, len_val); - c0038d3e: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40153 + c0038f0e: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40161 JS_FreeValue(ctx, len_val); - c0038d40: 8522 mv a0,s0 - c0038d42: df7ce0ef jal ra,c0007b38 + c0038f10: 8522 mv a0,s0 + c0038f12: d15ce0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0038d46: 000a8c1b sext.w s8,s5 + c0038f16: 000a8c1b sext.w s8,s5 js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40154 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40162 if (JS_IsException(arr)) - c0038d4a: 4799 li a5,6 - c0038d4c: 14fc0663 beq s8,a5,c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40157 + c0038f1a: 4799 li a5,6 + c0038f1c: 14fc0663 beq s8,a5,c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40165 k = start; - c0038d50: 7a42 ld s4,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40164 + c0038f20: 7a42 ld s4,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40172 if (js_get_fast_array(ctx, obj, &arrp, &count32) && - c0038d52: 6546 ld a0,80(sp) - c0038d54: 65e6 ld a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40158 + c0038f22: 6546 ld a0,80(sp) + c0038f24: 65e6 ld a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40166 final = start + count; - c0038d56: 01490733 add a4,s2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40164 + c0038f26: 01490733 add a4,s2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40172 if (js_get_fast_array(ctx, obj, &arrp, &count32) && - c0038d5a: 1054 addi a3,sp,36 - c0038d5c: 00b0 addi a2,sp,72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40158 + c0038f2a: 1054 addi a3,sp,36 + c0038f2c: 00b0 addi a2,sp,72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40166 final = start + count; - c0038d5e: fc3a sd a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40164 + c0038f2e: fc3a sd a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40172 if (js_get_fast_array(ctx, obj, &arrp, &count32) && - c0038d60: e52cd0ef jal ra,c00063b2 - c0038d64: c501 beqz a0,c0038d6c + c0038f30: d70cd0ef jal ra,c00064a0 + c0038f34: c501 beqz a0,c0038f3c js_is_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15444 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15452 (discriminator 1) if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c0038d66: 57fd li a5,-1 - c0038d68: 0afc0263 beq s8,a5,c0038e0c + c0038f36: 57fd li a5,-1 + c0038f38: 0afc0263 beq s8,a5,c0038fdc js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40167 n = 0; - c0038d6c: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40157 (discriminator 1) + c0038f3c: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40165 (discriminator 1) k = start; - c0038d6e: 8952 mv s2,s4 - c0038d70: 414c0c33 sub s8,s8,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40173 (discriminator 1) + c0038f3e: 8952 mv s2,s4 + c0038f40: 414c0c33 sub s8,s8,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40181 (discriminator 1) for (; k < final; k++, n++) { - c0038d74: 77e2 ld a5,56(sp) - c0038d76: 012c0a33 add s4,s8,s2 - c0038d7a: 0ef94863 blt s2,a5,c0038e6a - c0038d7e: 8c52 mv s8,s4 + c0038f44: 77e2 ld a5,56(sp) + c0038f46: 012c0a33 add s4,s8,s2 + c0038f4a: 0ef94863 blt s2,a5,c003903a + c0038f4e: 8c52 mv s8,s4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0038d80: 000c071b sext.w a4,s8 - c0038d84: 13871763 bne a4,s8,c0038eb2 + c0038f50: 000c071b sext.w a4,s8 + c0038f54: 13871763 bne a4,s8,c0039082 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038d88: d382 sw zero,228(sp) - c0038d8a: d1e2 sw s8,224(sp) - c0038d8c: 778e ld a5,224(sp) - c0038d8e: f582 sd zero,232(sp) - c0038d90: e602 sd zero,264(sp) - c0038d92: e23e sd a5,256(sp) - c0038d94: 4781 li a5,0 + c0038f58: d382 sw zero,228(sp) + c0038f5a: d1e2 sw s8,224(sp) + c0038f5c: 778e ld a5,224(sp) + c0038f5e: f582 sd zero,232(sp) + c0038f60: e602 sd zero,264(sp) + c0038f62: e23e sd a5,256(sp) + c0038f64: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0038d96: 10e12023 sw a4,256(sp) - c0038d9a: 2792 fld fa5,256(sp) + c0038f66: 10e12023 sw a4,256(sp) + c0038f6a: 2792 fld fa5,256(sp) js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40182 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40190 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, n)) < 0) - c0038d9c: 6712 ld a4,256(sp) - c0038d9e: 7586 ld a1,96(sp) - c0038da0: 03000693 li a3,48 - c0038da4: 8656 mv a2,s5 - c0038da6: 8522 mv a0,s0 - c0038da8: b13e fsd fa5,160(sp) - c0038daa: f53e sd a5,168(sp) - c0038dac: f4d6 sd s5,104(sp) - c0038dae: b4af70ef jal ra,c00300f8 - c0038db2: 0e054363 bltz a0,c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40185 + c0038f6c: 6712 ld a4,256(sp) + c0038f6e: 7586 ld a1,96(sp) + c0038f70: 03000693 li a3,48 + c0038f74: 8656 mv a2,s5 + c0038f76: 8522 mv a0,s0 + c0038f78: b13e fsd fa5,160(sp) + c0038f7a: f53e sd a5,168(sp) + c0038f7c: f4d6 sd s5,104(sp) + c0038f7e: b4af70ef jal ra,c00302c8 + c0038f82: 0e054363 bltz a0,c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40193 if (splice) { - c0038db6: 100b9663 bnez s7,c0038ec2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40205 + c0038f86: 100b9663 bnez s7,c0039092 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40213 JS_FreeValue(ctx, obj); - c0038dba: 65c6 ld a1,80(sp) - c0038dbc: 6666 ld a2,88(sp) - c0038dbe: 8522 mv a0,s0 - c0038dc0: d79ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40206 + c0038f8a: 65c6 ld a1,80(sp) + c0038f8c: 6666 ld a2,88(sp) + c0038f8e: 8522 mv a0,s0 + c0038f90: c97ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40214 return arr; - c0038dc4: 7786 ld a5,96(sp) - c0038dc6: f9be sd a5,240(sp) - c0038dc8: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40212 -} - c0038dca: 60f6 ld ra,344(sp) - c0038dcc: 6456 ld s0,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40211 + c0038f94: 7786 ld a5,96(sp) + c0038f96: f9be sd a5,240(sp) + c0038f98: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40220 +} + c0038f9a: 60f6 ld ra,344(sp) + c0038f9c: 6456 ld s0,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40219 return JS_EXCEPTION; - c0038dce: fdbe sd a5,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40212 -} - c0038dd0: 754e ld a0,240(sp) - c0038dd2: 75ee ld a1,248(sp) - c0038dd4: 64b6 ld s1,328(sp) - c0038dd6: 6916 ld s2,320(sp) - c0038dd8: 79f2 ld s3,312(sp) - c0038dda: 7a52 ld s4,304(sp) - c0038ddc: 7ab2 ld s5,296(sp) - c0038dde: 7b12 ld s6,288(sp) - c0038de0: 6bf2 ld s7,280(sp) - c0038de2: 6c52 ld s8,272(sp) - c0038de4: 6135 addi sp,sp,352 - c0038de6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40146 + c0038f9e: fdbe sd a5,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40220 +} + c0038fa0: 754e ld a0,240(sp) + c0038fa2: 75ee ld a1,248(sp) + c0038fa4: 64b6 ld s1,328(sp) + c0038fa6: 6916 ld s2,320(sp) + c0038fa8: 79f2 ld s3,312(sp) + c0038faa: 7a52 ld s4,304(sp) + c0038fac: 7ab2 ld s5,296(sp) + c0038fae: 7b12 ld s6,288(sp) + c0038fb0: 6bf2 ld s7,280(sp) + c0038fb2: 6c52 ld s8,272(sp) + c0038fb4: 6135 addi sp,sp,352 + c0038fb6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40154 if (JS_ToInt64Clamp(ctx, &final, argv[1], 0, len, len)) - c0038de8: 6890 ld a2,16(s1) - c0038dea: 87c2 mv a5,a6 - c0038dec: 4701 li a4,0 - c0038dee: 182c addi a1,sp,56 - c0038df0: 8522 mv a0,s0 - c0038df2: 9bde50ef jal ra,c001e7ae - c0038df6: f00501e3 beqz a0,c0038cf8 - c0038dfa: b5d1 j c0038cbe + c0038fb8: 6890 ld a2,16(s1) + c0038fba: 87c2 mv a5,a6 + c0038fbc: 4701 li a4,0 + c0038fbe: 182c addi a1,sp,56 + c0038fc0: 8522 mv a0,s0 + c0038fc2: 9bde50ef jal ra,c001e97e + c0038fc6: f00501e3 beqz a0,c0038ec8 + c0038fca: b5d1 j c0038e8e JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0038dfc: d22977d3 fcvt.d.l fa5,s2 - c0038e00: 471d li a4,7 - c0038e02: e20787d3 fmv.x.d a5,fa5 + c0038fcc: d22977d3 fcvt.d.l fa5,s2 + c0038fd0: 471d li a4,7 + c0038fd2: e20787d3 fmv.x.d a5,fa5 js_array_slice(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0038e06: a23e fsd fa5,256(sp) - c0038e08: 2781 sext.w a5,a5 - c0038e0a: bf11 j c0038d1e + c0038fd6: a23e fsd fa5,256(sp) + c0038fd8: 2781 sext.w a5,a5 + c0038fda: bf11 j c0038eee js_is_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15454 if (p->class_id == JS_CLASS_ARRAY && p->fast_array) { - c0038e0c: 7786 ld a5,96(sp) + c0038fdc: 7786 ld a5,96(sp) js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40159 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40167 n = 0; - c0038e0e: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40157 + c0038fde: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40165 k = start; - c0038e10: 8952 mv s2,s4 + c0038fe0: 8952 mv s2,s4 js_is_fast_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15454 if (p->class_id == JS_CLASS_ARRAY && p->fast_array) { - c0038e12: 6398 ld a4,0(a5) - c0038e14: 5785 li a5,-31 - c0038e16: 17ae slli a5,a5,0x2b - c0038e18: 8f7d and a4,a4,a5 - c0038e1a: 04100793 li a5,65 - c0038e1e: 17ae slli a5,a5,0x2b - c0038e20: f4f717e3 bne a4,a5,c0038d6e + c0038fe2: 6398 ld a4,0(a5) + c0038fe4: 5785 li a5,-31 + c0038fe6: 17ae slli a5,a5,0x2b + c0038fe8: 8f7d and a4,a4,a5 + c0038fea: 04100793 li a5,65 + c0038fee: 17ae slli a5,a5,0x2b + c0038ff0: f4f717e3 bne a4,a5,c0038f3e js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40167 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40175 (discriminator 1) for (; k < final && k < count32; k++, n++) { - c0038e24: 77e2 ld a5,56(sp) - c0038e26: 41490c33 sub s8,s2,s4 - c0038e2a: f4f95be3 bge s2,a5,c0038d80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40167 (discriminator 2) - c0038e2e: 02416783 lwu a5,36(sp) - c0038e32: 00f94463 blt s2,a5,c0038e3a - c0038e36: 8a4a mv s4,s2 - c0038e38: bf1d j c0038d6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40168 + c0038ff4: 77e2 ld a5,56(sp) + c0038ff6: 41490c33 sub s8,s2,s4 + c0038ffa: f4f95be3 bge s2,a5,c0038f50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40175 (discriminator 2) + c0038ffe: 02416783 lwu a5,36(sp) + c0039002: 00f94463 blt s2,a5,c003900a + c0039006: 8a4a mv s4,s2 + c0039008: bf1d j c0038f3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40176 if (JS_CreateDataPropertyUint32(ctx, arr, n, JS_DupValue(ctx, arrp[k]), JS_PROP_THROW) < 0) - c0038e3a: 6726 ld a4,72(sp) - c0038e3c: 00491793 slli a5,s2,0x4 - c0038e40: 97ba add a5,a5,a4 - c0038e42: 6388 ld a0,0(a5) - c0038e44: 678c ld a1,8(a5) - c0038e46: 829cd0ef jal ra,c000666e - c0038e4a: 87ae mv a5,a1 - c0038e4c: ed2e sd a1,152(sp) - c0038e4e: 7586 ld a1,96(sp) - c0038e50: 872a mv a4,a0 - c0038e52: e92a sd a0,144(sp) - c0038e54: 6811 lui a6,0x4 - c0038e56: 86e2 mv a3,s8 - c0038e58: 8656 mv a2,s5 - c0038e5a: 8522 mv a0,s0 - c0038e5c: f4d6 sd s5,104(sp) - c0038e5e: e88f00ef jal ra,c00294e6 - c0038e62: 02054b63 bltz a0,c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40167 + c003900a: 6726 ld a4,72(sp) + c003900c: 00491793 slli a5,s2,0x4 + c0039010: 97ba add a5,a5,a4 + c0039012: 6388 ld a0,0(a5) + c0039014: 678c ld a1,8(a5) + c0039016: f46cd0ef jal ra,c000675c + c003901a: 87ae mv a5,a1 + c003901c: ed2e sd a1,152(sp) + c003901e: 7586 ld a1,96(sp) + c0039020: 872a mv a4,a0 + c0039022: e92a sd a0,144(sp) + c0039024: 6811 lui a6,0x4 + c0039026: 86e2 mv a3,s8 + c0039028: 8656 mv a2,s5 + c003902a: 8522 mv a0,s0 + c003902c: f4d6 sd s5,104(sp) + c003902e: e88f00ef jal ra,c00296b6 + c0039032: 02054b63 bltz a0,c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40175 for (; k < final && k < count32; k++, n++) { - c0038e66: 0905 addi s2,s2,1 - c0038e68: bf75 j c0038e24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40174 + c0039036: 0905 addi s2,s2,1 + c0039038: bf75 j c0038ff4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40182 kPresent = JS_TryGetPropertyInt64(ctx, obj, k, &val); - c0038e6a: 65c6 ld a1,80(sp) - c0038e6c: 6666 ld a2,88(sp) - c0038e6e: 1898 addi a4,sp,112 - c0038e70: 86ca mv a3,s2 - c0038e72: 8522 mv a0,s0 - c0038e74: e68f90ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40175 + c003903a: 65c6 ld a1,80(sp) + c003903c: 6666 ld a2,88(sp) + c003903e: 1898 addi a4,sp,112 + c0039040: 86ca mv a3,s2 + c0039042: 8522 mv a0,s0 + c0039044: e68f90ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40183 if (kPresent < 0) - c0038e78: 02054063 bltz a0,c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40177 + c0039048: 02054063 bltz a0,c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40185 if (kPresent) { - c0038e7c: e119 bnez a0,c0038e82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40173 + c003904c: e119 bnez a0,c0039052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40181 for (; k < final; k++, n++) { - c0038e7e: 0905 addi s2,s2,1 - c0038e80: bdd5 j c0038d74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40178 + c003904e: 0905 addi s2,s2,1 + c0039050: bdd5 j c0038f44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40186 if (JS_CreateDataPropertyUint32(ctx, arr, n, val, JS_PROP_THROW) < 0) - c0038e82: 7746 ld a4,112(sp) - c0038e84: 77e6 ld a5,120(sp) - c0038e86: 7586 ld a1,96(sp) - c0038e88: 6811 lui a6,0x4 - c0038e8a: 86d2 mv a3,s4 - c0038e8c: 8656 mv a2,s5 - c0038e8e: 8522 mv a0,s0 - c0038e90: e56f00ef jal ra,c00294e6 - c0038e94: fe0555e3 bgez a0,c0038e7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40209 + c0039052: 7746 ld a4,112(sp) + c0039054: 77e6 ld a5,120(sp) + c0039056: 7586 ld a1,96(sp) + c0039058: 6811 lui a6,0x4 + c003905a: 86d2 mv a3,s4 + c003905c: 8656 mv a2,s5 + c003905e: 8522 mv a0,s0 + c0039060: e56f00ef jal ra,c00296b6 + c0039064: fe0555e3 bgez a0,c003904e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40217 JS_FreeValue(ctx, obj); - c0038e98: 65c6 ld a1,80(sp) - c0038e9a: 6666 ld a2,88(sp) - c0038e9c: 8522 mv a0,s0 - c0038e9e: c9bce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40210 + c0039068: 65c6 ld a1,80(sp) + c003906a: 6666 ld a2,88(sp) + c003906c: 8522 mv a0,s0 + c003906e: bb9ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40218 JS_FreeValue(ctx, arr); - c0038ea2: 7586 ld a1,96(sp) - c0038ea4: 865a mv a2,s6 - c0038ea6: 8522 mv a0,s0 - c0038ea8: c91ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40211 + c0039072: 7586 ld a1,96(sp) + c0039074: 865a mv a2,s6 + c0039076: 8522 mv a0,s0 + c0039078: bafce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40219 return JS_EXCEPTION; - c0038eac: 4799 li a5,6 - c0038eae: f982 sd zero,240(sp) - c0038eb0: bf29 j c0038dca + c003907c: 4799 li a5,6 + c003907e: f982 sd zero,240(sp) + c0039080: bf29 j c0038f9a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0038eb2: d22c77d3 fcvt.d.l fa5,s8 - c0038eb6: 479d li a5,7 - c0038eb8: e2078753 fmv.x.d a4,fa5 + c0039082: d22c77d3 fcvt.d.l fa5,s8 + c0039086: 479d li a5,7 + c0039088: e2078753 fmv.x.d a4,fa5 js_array_slice(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0038ebc: a23e fsd fa5,256(sp) - c0038ebe: 2701 sext.w a4,a4 - c0038ec0: bdd9 j c0038d96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40186 + c003908c: a23e fsd fa5,256(sp) + c003908e: 2701 sext.w a4,a4 + c0039090: bdd9 j c0038f66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40194 new_len = len + item_count - del_count; - c0038ec2: 77a2 ld a5,40(sp) - c0038ec4: 6606 ld a2,64(sp) - c0038ec6: 02099593 slli a1,s3,0x20 - c0038eca: 9181 srli a1,a1,0x20 - c0038ecc: 40c78933 sub s2,a5,a2 - c0038ed0: 992e add s2,s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40187 + c0039092: 77a2 ld a5,40(sp) + c0039094: 6606 ld a2,64(sp) + c0039096: 02099593 slli a1,s3,0x20 + c003909a: 9181 srli a1,a1,0x20 + c003909c: 40c78933 sub s2,a5,a2 + c00390a0: 992e add s2,s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40195 if (item_count != del_count) { - c0038ed2: 04c59263 bne a1,a2,c0038f16 - c0038ed6: 02048493 addi s1,s1,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40188 + c00390a2: 04c59263 bne a1,a2,c00390e6 + c00390a6: 02048493 addi s1,s1,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40196 if (JS_CopySubArray(ctx, obj, start + item_count, - c0038eda: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40198 (discriminator 1) + c00390aa: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40206 (discriminator 1) for (i = 0; i < item_count; i++) { - c0038edc: 000a079b sext.w a5,s4 - c0038ee0: 0737ea63 bltu a5,s3,c0038f54 + c00390ac: 000a079b sext.w a5,s4 + c00390b0: 0737ea63 bltu a5,s3,c0039124 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0038ee4: 0009071b sext.w a4,s2 - c0038ee8: 08e91c63 bne s2,a4,c0038f80 + c00390b4: 0009071b sext.w a4,s2 + c00390b8: 08e91c63 bne s2,a4,c0039150 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0038eec: 10012223 sw zero,260(sp) - c0038ef0: 10e12023 sw a4,256(sp) - c0038ef4: 6792 ld a5,256(sp) - c0038ef6: e602 sd zero,264(sp) - c0038ef8: fd82 sd zero,248(sp) - c0038efa: f9be sd a5,240(sp) - c0038efc: 4781 li a5,0 + c00390bc: 10012223 sw zero,260(sp) + c00390c0: 10e12023 sw a4,256(sp) + c00390c4: 6792 ld a5,256(sp) + c00390c6: e602 sd zero,264(sp) + c00390c8: fd82 sd zero,248(sp) + c00390ca: f9be sd a5,240(sp) + c00390cc: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0038efe: d9ba sw a4,240(sp) + c00390ce: d9ba sw a4,240(sp) js_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40210 if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewInt64(ctx, new_len)) < 0) - c0038f00: 774e ld a4,240(sp) - c0038f02: 65c6 ld a1,80(sp) - c0038f04: 6666 ld a2,88(sp) - c0038f06: 03000693 li a3,48 - c0038f0a: 8522 mv a0,s0 - c0038f0c: 9ecf70ef jal ra,c00300f8 - c0038f10: ea0555e3 bgez a0,c0038dba - c0038f14: b751 j c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40188 + c00390d0: 774e ld a4,240(sp) + c00390d2: 65c6 ld a1,80(sp) + c00390d4: 6666 ld a2,88(sp) + c00390d6: 03000693 li a3,48 + c00390da: 8522 mv a0,s0 + c00390dc: 9ecf70ef jal ra,c00302c8 + c00390e0: ea0555e3 bgez a0,c0038f8a + c00390e4: b751 j c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40196 if (JS_CopySubArray(ctx, obj, start + item_count, - c0038f16: 7742 ld a4,48(sp) - c0038f18: 4805 li a6,1 - c0038f1a: 00e586b3 add a3,a1,a4 - c0038f1e: 9732 add a4,a4,a2 - c0038f20: 8f99 sub a5,a5,a4 - c0038f22: 00b65363 bge a2,a1,c0038f28 - c0038f26: 587d li a6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40188 (discriminator 4) - c0038f28: 65c6 ld a1,80(sp) - c0038f2a: 6666 ld a2,88(sp) - c0038f2c: 8522 mv a0,s0 - c0038f2e: f35f90ef jal ra,c0032e62 - c0038f32: f60543e3 bltz a0,c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40193 + c00390e6: 7742 ld a4,48(sp) + c00390e8: 4805 li a6,1 + c00390ea: 00e586b3 add a3,a1,a4 + c00390ee: 9732 add a4,a4,a2 + c00390f0: 8f99 sub a5,a5,a4 + c00390f2: 00b65363 bge a2,a1,c00390f8 + c00390f6: 587d li a6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40196 (discriminator 4) + c00390f8: 65c6 ld a1,80(sp) + c00390fa: 6666 ld a2,88(sp) + c00390fc: 8522 mv a0,s0 + c00390fe: f35f90ef jal ra,c0033032 + c0039102: f60543e3 bltz a0,c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40201 for (k = len; k-- > new_len; ) { - c0038f36: 7a22 ld s4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40193 (discriminator 1) - c0038f38: 87d2 mv a5,s4 - c0038f3a: 1a7d addi s4,s4,-1 - c0038f3c: f8f95de3 bge s2,a5,c0038ed6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40194 + c0039106: 7a22 ld s4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40201 (discriminator 1) + c0039108: 87d2 mv a5,s4 + c003910a: 1a7d addi s4,s4,-1 + c003910c: f8f95de3 bge s2,a5,c00390a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40202 if (JS_DeletePropertyInt64(ctx, obj, k, JS_PROP_THROW) < 0) - c0038f40: 65c6 ld a1,80(sp) - c0038f42: 6666 ld a2,88(sp) - c0038f44: 6711 lui a4,0x4 - c0038f46: 86d2 mv a3,s4 - c0038f48: 8522 mv a0,s0 - c0038f4a: 947ef0ef jal ra,c0028890 - c0038f4e: fe0555e3 bgez a0,c0038f38 - c0038f52: b799 j c0038e98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40199 + c0039110: 65c6 ld a1,80(sp) + c0039112: 6666 ld a2,88(sp) + c0039114: 6711 lui a4,0x4 + c0039116: 86d2 mv a3,s4 + c0039118: 8522 mv a0,s0 + c003911a: 947ef0ef jal ra,c0028a60 + c003911e: fe0555e3 bgez a0,c0039108 + c0039122: b799 j c0039068 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40207 if (JS_SetPropertyInt64(ctx, obj, start + i, JS_DupValue(ctx, argv[i + 2])) < 0) - c0038f54: 76c2 ld a3,48(sp) - c0038f56: 6088 ld a0,0(s1) - c0038f58: 648c ld a1,8(s1) - c0038f5a: 96d2 add a3,a3,s4 - c0038f5c: e436 sd a3,8(sp) - c0038f5e: f10cd0ef jal ra,c000666e - c0038f62: 87ae mv a5,a1 - c0038f64: fd2e sd a1,184(sp) - c0038f66: 66a2 ld a3,8(sp) - c0038f68: 65c6 ld a1,80(sp) - c0038f6a: 6666 ld a2,88(sp) - c0038f6c: 872a mv a4,a0 - c0038f6e: f92a sd a0,176(sp) - c0038f70: 8522 mv a0,s0 - c0038f72: beef70ef jal ra,c0030360 - c0038f76: 0a05 addi s4,s4,1 - c0038f78: 04c1 addi s1,s1,16 - c0038f7a: f60551e3 bgez a0,c0038edc - c0038f7e: bf29 j c0038e98 + c0039124: 76c2 ld a3,48(sp) + c0039126: 6088 ld a0,0(s1) + c0039128: 648c ld a1,8(s1) + c003912a: 96d2 add a3,a3,s4 + c003912c: e436 sd a3,8(sp) + c003912e: e2ecd0ef jal ra,c000675c + c0039132: 87ae mv a5,a1 + c0039134: fd2e sd a1,184(sp) + c0039136: 66a2 ld a3,8(sp) + c0039138: 65c6 ld a1,80(sp) + c003913a: 6666 ld a2,88(sp) + c003913c: 872a mv a4,a0 + c003913e: f92a sd a0,176(sp) + c0039140: 8522 mv a0,s0 + c0039142: beef70ef jal ra,c0030530 + c0039146: 0a05 addi s4,s4,1 + c0039148: 04c1 addi s1,s1,16 + c003914a: f60551e3 bgez a0,c00390ac + c003914e: bf29 j c0039068 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0038f80: d22977d3 fcvt.d.l fa5,s2 - c0038f84: 479d li a5,7 - c0038f86: e2078753 fmv.x.d a4,fa5 + c0039150: d22977d3 fcvt.d.l fa5,s2 + c0039154: 479d li a5,7 + c0039156: e2078753 fmv.x.d a4,fa5 js_array_slice(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0038f8a: b9be fsd fa5,240(sp) - c0038f8c: 2701 sext.w a4,a4 - c0038f8e: bf85 j c0038efe + c003915a: b9be fsd fa5,240(sp) + c003915c: 2701 sext.w a4,a4 + c003915e: bf85 j c00390ce -00000000c0038f90 : +00000000c0039160 : js_array_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39236 -{ - c0038f90: 7129 addi sp,sp,-320 - c0038f92: fa22 sd s0,304(sp) - c0038f94: f24a sd s2,288(sp) - c0038f96: ee4e sd s3,280(sp) - c0038f98: e656 sd s5,264(sp) - c0038f9a: fe06 sd ra,312(sp) - c0038f9c: f626 sd s1,296(sp) - c0038f9e: ea52 sd s4,272(sp) - c0038fa0: e25a sd s6,256(sp) - c0038fa2: fdde sd s7,248(sp) - c0038fa4: f9e2 sd s8,240(sp) - c0038fa6: f5e6 sd s9,232(sp) - c0038fa8: f1ea sd s10,224(sp) - c0038faa: edee sd s11,216(sp) - c0038fac: 842a mv s0,a0 - c0038fae: e82e sd a1,16(sp) - c0038fb0: ec32 sd a2,24(sp) - c0038fb2: e036 sd a3,0(sp) - c0038fb4: 8aba mv s5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39242 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39244 +{ + c0039160: 7129 addi sp,sp,-320 + c0039162: fa22 sd s0,304(sp) + c0039164: f24a sd s2,288(sp) + c0039166: ee4e sd s3,280(sp) + c0039168: e656 sd s5,264(sp) + c003916a: fe06 sd ra,312(sp) + c003916c: f626 sd s1,296(sp) + c003916e: ea52 sd s4,272(sp) + c0039170: e25a sd s6,256(sp) + c0039172: fdde sd s7,248(sp) + c0039174: f9e2 sd s8,240(sp) + c0039176: f5e6 sd s9,232(sp) + c0039178: f1ea sd s10,224(sp) + c003917a: edee sd s11,216(sp) + c003917c: 842a mv s0,a0 + c003917e: e82e sd a1,16(sp) + c0039180: ec32 sd a2,24(sp) + c0039182: e036 sd a3,0(sp) + c0039184: 8aba mv s5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39250 arr = JS_UNDEFINED; - c0038fb6: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39243 + c0039186: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39251 obj = JS_ToObject(ctx, this_val); - c0038fb8: e34ef0ef jal ra,c00285ec - c0038fbc: f82a sd a0,48(sp) - c0038fbe: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39244 + c0039188: e34ef0ef jal ra,c00287bc + c003918c: f82a sd a0,48(sp) + c003918e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39252 if (JS_IsException(obj)) - c0038fc0: 0005879b sext.w a5,a1 - c0038fc4: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39243 + c0039190: 0005879b sext.w a5,a1 + c0039194: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39251 obj = JS_ToObject(ctx, this_val); - c0038fc6: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39244 + c0039196: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39252 if (JS_IsException(obj)) - c0038fc8: 1f378263 beq a5,s3,c00391ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39247 + c0039198: 1f378263 beq a5,s3,c003937c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39255 arr = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c0038fcc: 85aa mv a1,a0 - c0038fce: 4681 li a3,0 - c0038fd0: 4701 li a4,0 - c0038fd2: 864a mv a2,s2 - c0038fd4: 8522 mv a0,s0 - c0038fd6: f882 sd zero,112(sp) - c0038fd8: fc82 sd zero,120(sp) - c0038fda: b05ff0ef jal ra,c0038ade - c0038fde: e0aa sd a0,64(sp) - c0038fe0: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39248 + c003919c: 85aa mv a1,a0 + c003919e: 4681 li a3,0 + c00391a0: 4701 li a4,0 + c00391a2: 864a mv a2,s2 + c00391a4: 8522 mv a0,s0 + c00391a6: f882 sd zero,112(sp) + c00391a8: fc82 sd zero,120(sp) + c00391aa: b05ff0ef jal ra,c0038cae + c00391ae: e0aa sd a0,64(sp) + c00391b0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39256 if (JS_IsException(arr)) - c0038fe2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39247 + c00391b2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39255 arr = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c0038fe6: 84ae mv s1,a1 - c0038fe8: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39248 + c00391b6: 84ae mv s1,a1 + c00391b8: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39256 if (JS_IsException(arr)) - c0038fea: 17378363 beq a5,s3,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39278 + c00391ba: 17378363 beq a5,s3,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39286 if (n >= MAX_SAFE_INTEGER) { - c0038fee: 7c7d lui s8,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39282 + c00391be: 7c7d lui s8,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39290 if (JS_DefinePropertyValueInt64(ctx, arr, n, JS_DupValue(ctx, e), - c0038ff0: 6b91 lui s7,0x4 - c0038ff2: 1ac1 addi s5,s5,-16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39251 + c00391c0: 6b91 lui s7,0x4 + c00391c2: 1ac1 addi s5,s5,-16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39259 for (i = -1; i < argc; i++) { - c0038ff4: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39250 + c00391c4: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39258 n = 0; - c0038ff6: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39252 + c00391c6: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39260 if (i < 0) - c0038ff8: 5d7d li s10,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39278 + c00391c8: 5d7d li s10,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39286 if (n >= MAX_SAFE_INTEGER) { - c0038ffa: 00bc5c13 srli s8,s8,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39282 + c00391ca: 00bc5c13 srli s8,s8,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39290 if (JS_DefinePropertyValueInt64(ctx, arr, n, JS_DupValue(ctx, e), - c0038ffe: 0b9d addi s7,s7,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39251 (discriminator 1) + c00391ce: 0b9d addi s7,s7,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39259 (discriminator 1) for (i = -1; i < argc; i++) { - c0039000: 6782 ld a5,0(sp) - c0039002: 06fb4663 blt s6,a5,c003906e + c00391d0: 6782 ld a5,0(sp) + c00391d2: 06fb4663 blt s6,a5,c003923e JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0039006: 0009871b sext.w a4,s3 - c003900a: 18e99963 bne s3,a4,c003919c + c00391d6: 0009871b sext.w a4,s3 + c00391da: 18e99963 bne s3,a4,c003936c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003900e: db02 sw zero,180(sp) - c0039010: d93a sw a4,176(sp) - c0039012: 77ca ld a5,176(sp) - c0039014: fd02 sd zero,184(sp) - c0039016: f502 sd zero,168(sp) - c0039018: f13e sd a5,160(sp) - c003901a: 4781 li a5,0 + c00391de: db02 sw zero,180(sp) + c00391e0: d93a sw a4,176(sp) + c00391e2: 77ca ld a5,176(sp) + c00391e4: fd02 sd zero,184(sp) + c00391e6: f502 sd zero,168(sp) + c00391e8: f13e sd a5,160(sp) + c00391ea: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003901c: d13a sw a4,160(sp) - c003901e: 378a fld fa5,160(sp) + c00391ec: d13a sw a4,160(sp) + c00391ee: 378a fld fa5,160(sp) js_array_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39288 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39296 if (JS_SetProperty(ctx, arr, JS_ATOM_length, JS_NewInt64(ctx, n)) < 0) - c0039020: 770a ld a4,160(sp) - c0039022: 6586 ld a1,64(sp) - c0039024: 03000693 li a3,48 - c0039028: 8626 mv a2,s1 - c003902a: 8522 mv a0,s0 - c003902c: a93e fsd fa5,144(sp) - c003902e: ed3e sd a5,152(sp) - c0039030: e4a6 sd s1,72(sp) - c0039032: 8c6f70ef jal ra,c00300f8 - c0039036: 10054d63 bltz a0,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39291 + c00391f0: 770a ld a4,160(sp) + c00391f2: 6586 ld a1,64(sp) + c00391f4: 03000693 li a3,48 + c00391f8: 8626 mv a2,s1 + c00391fa: 8522 mv a0,s0 + c00391fc: a93e fsd fa5,144(sp) + c00391fe: ed3e sd a5,152(sp) + c0039200: e4a6 sd s1,72(sp) + c0039202: 8c6f70ef jal ra,c00302c8 + c0039206: 10054d63 bltz a0,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39299 JS_FreeValue(ctx, obj); - c003903a: 75c2 ld a1,48(sp) - c003903c: 864a mv a2,s2 - c003903e: 8522 mv a0,s0 - c0039040: af9ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39292 + c003920a: 75c2 ld a1,48(sp) + c003920c: 864a mv a2,s2 + c003920e: 8522 mv a0,s0 + c0039210: a17ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39300 return arr; - c0039044: 6786 ld a5,64(sp) - c0039046: f13e sd a5,160(sp) - c0039048: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39298 -} - c003904a: 70f2 ld ra,312(sp) - c003904c: 7452 ld s0,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39297 + c0039214: 6786 ld a5,64(sp) + c0039216: f13e sd a5,160(sp) + c0039218: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39306 +} + c003921a: 70f2 ld ra,312(sp) + c003921c: 7452 ld s0,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39305 return JS_EXCEPTION; - c003904e: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39298 -} - c0039050: 750a ld a0,160(sp) - c0039052: 75aa ld a1,168(sp) - c0039054: 74b2 ld s1,296(sp) - c0039056: 7912 ld s2,288(sp) - c0039058: 69f2 ld s3,280(sp) - c003905a: 6a52 ld s4,272(sp) - c003905c: 6ab2 ld s5,264(sp) - c003905e: 6b12 ld s6,256(sp) - c0039060: 7bee ld s7,248(sp) - c0039062: 7c4e ld s8,240(sp) - c0039064: 7cae ld s9,232(sp) - c0039066: 7d0e ld s10,224(sp) - c0039068: 6dee ld s11,216(sp) - c003906a: 6131 addi sp,sp,320 - c003906c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39252 + c003921e: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39306 +} + c0039220: 750a ld a0,160(sp) + c0039222: 75aa ld a1,168(sp) + c0039224: 74b2 ld s1,296(sp) + c0039226: 7912 ld s2,288(sp) + c0039228: 69f2 ld s3,280(sp) + c003922a: 6a52 ld s4,272(sp) + c003922c: 6ab2 ld s5,264(sp) + c003922e: 6b12 ld s6,256(sp) + c0039230: 7bee ld s7,248(sp) + c0039232: 7c4e ld s8,240(sp) + c0039234: 7cae ld s9,232(sp) + c0039236: 7d0e ld s10,224(sp) + c0039238: 6dee ld s11,216(sp) + c003923a: 6131 addi sp,sp,320 + c003923c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39260 if (i < 0) - c003906e: 09ab1263 bne s6,s10,c00390f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39253 + c003923e: 09ab1263 bne s6,s10,c00392c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39261 e = obj; - c0039072: 77c2 ld a5,48(sp) - c0039074: fc4a sd s2,56(sp) - c0039076: 8a4a mv s4,s2 - c0039078: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39257 + c0039242: 77c2 ld a5,48(sp) + c0039244: fc4a sd s2,56(sp) + c0039246: 8a4a mv s4,s2 + c0039248: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39265 res = JS_isConcatSpreadable(ctx, e); - c003907a: 7706 ld a4,96(sp) - c003907c: f4d2 sd s4,104(sp) - c003907e: ed52 sd s4,152(sp) + c003924a: 7706 ld a4,96(sp) + c003924c: f4d2 sd s4,104(sp) + c003924e: ed52 sd s4,152(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c0039080: e93a sd a4,144(sp) + c0039250: e93a sd a4,144(sp) JS_isConcatSpreadable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39132 if (!JS_IsObject(obj)) - c0039082: 000a079b sext.w a5,s4 - c0039086: 0fa79463 bne a5,s10,c003916e + c0039252: 000a079b sext.w a5,s4 + c0039256: 0fa79463 bne a5,s10,c003933e JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003908a: 87d2 mv a5,s4 - c003908c: 85ba mv a1,a4 - c003908e: 8652 mv a2,s4 - c0039090: 4801 li a6,0 - c0039092: 0d300693 li a3,211 - c0039096: 8522 mv a0,s0 - c0039098: f93a sd a4,176(sp) - c003909a: fd52 sd s4,184(sp) - c003909c: fa6d80ef jal ra,c0011842 - c00390a0: e1aa sd a0,192(sp) - c00390a2: e5ae sd a1,200(sp) - c00390a4: f12a sd a0,160(sp) - c00390a6: f52e sd a1,168(sp) + c003925a: 87d2 mv a5,s4 + c003925c: 85ba mv a1,a4 + c003925e: 8652 mv a2,s4 + c0039260: 4801 li a6,0 + c0039262: 0d300693 li a3,211 + c0039266: 8522 mv a0,s0 + c0039268: f93a sd a4,176(sp) + c003926a: fd52 sd s4,184(sp) + c003926c: ec4d80ef jal ra,c0011930 + c0039270: e1aa sd a0,192(sp) + c0039272: e5ae sd a1,200(sp) + c0039274: f12a sd a0,160(sp) + c0039276: f52e sd a1,168(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00390a8: 0005879b sext.w a5,a1 + c0039278: 0005879b sext.w a5,a1 JS_isConcatSpreadable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39135 if (JS_IsException(val)) - c00390ac: 4719 li a4,6 + c003927c: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00390ae: 862e mv a2,a1 + c003927e: 862e mv a2,a1 JS_isConcatSpreadable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39127 - c00390b0: 0ae78063 beq a5,a4,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39129 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39135 + c0039280: 0ae78063 beq a5,a4,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39137 if (!JS_IsUndefined(val)) - c00390b4: 470d li a4,3 - c00390b6: 04e78463 beq a5,a4,c00390fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39130 + c0039284: 470d li a4,3 + c0039286: 04e78463 beq a5,a4,c00392ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39138 return JS_ToBoolFree(ctx, val); - c00390ba: 85aa mv a1,a0 - c00390bc: 8522 mv a0,s0 - c00390be: da7ce0ef jal ra,c0007e64 + c003928a: 85aa mv a1,a0 + c003928c: 8522 mv a0,s0 + c003928e: cc5ce0ef jal ra,c0007f52 js_array_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39258 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39266 if (res < 0) - c00390c2: 08054763 bltz a0,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39260 + c0039292: 08054763 bltz a0,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39268 if (res) { - c00390c6: c545 beqz a0,c003916e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39261 + c0039296: c545 beqz a0,c003933e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39269 if (js_get_length64(ctx, &len, e)) - c00390c8: 7606 ld a2,96(sp) - c00390ca: 76a6 ld a3,104(sp) - c00390cc: 102c addi a1,sp,40 - c00390ce: 8522 mv a0,s0 - c00390d0: f6ee50ef jal ra,c001e83e - c00390d4: ed35 bnez a0,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39263 + c0039298: 7606 ld a2,96(sp) + c003929a: 76a6 ld a3,104(sp) + c003929c: 102c addi a1,sp,40 + c003929e: 8522 mv a0,s0 + c00392a0: f6ee50ef jal ra,c001ea0e + c00392a4: ed35 bnez a0,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39271 if (n + len > MAX_SAFE_INTEGER) { - c00390d6: 77a2 ld a5,40(sp) - c00390d8: 577d li a4,-1 - c00390da: 832d srli a4,a4,0xb - c00390dc: 97ce add a5,a5,s3 - c00390de: 08f75663 bge a4,a5,c003916a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39279 + c00392a6: 77a2 ld a5,40(sp) + c00392a8: 577d li a4,-1 + c00392aa: 832d srli a4,a4,0xb + c00392ac: 97ce add a5,a5,s3 + c00392ae: 08f75663 bge a4,a5,c003933a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39287 JS_ThrowTypeError(ctx, "Array loo long"); - c00390e2: 8522 mv a0,s0 - c00390e4: 00027597 auipc a1,0x27 - c00390e8: 34458593 addi a1,a1,836 # c0060428 - c00390ec: b0ada0ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39280 + c00392b2: 8522 mv a0,s0 + c00392b4: 00027597 auipc a1,0x27 + c00392b8: 3d458593 addi a1,a1,980 # c0060688 + c00392bc: a28da0ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39288 goto exception; - c00390f0: a085 j c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39255 + c00392c0: a085 j c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39263 e = argv[i]; - c00390f2: 000ab783 ld a5,0(s5) - c00390f6: 008aba03 ld s4,8(s5) - c00390fa: f0be sd a5,96(sp) - c00390fc: bfbd j c003907a + c00392c2: 000ab783 ld a5,0(s5) + c00392c6: 008aba03 ld s4,8(s5) + c00392ca: f0be sd a5,96(sp) + c00392cc: bfbd j c003924a JS_isConcatSpreadable(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39131 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39139 return JS_IsArray(ctx, obj); - c00390fe: 65ca ld a1,144(sp) - c0039100: 666a ld a2,152(sp) - c0039102: 8522 mv a0,s0 - c0039104: 9cadb0ef jal ra,c00142ce - c0039108: bf6d j c00390c2 + c00392ce: 65ca ld a1,144(sp) + c00392d0: 666a ld a2,152(sp) + c00392d2: 8522 mv a0,s0 + c00392d4: 8e8db0ef jal ra,c00143bc + c00392d8: bf6d j c0039292 js_array_concat(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39268 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39276 res = JS_TryGetPropertyInt64(ctx, e, k, &val); - c003910a: 7586 ld a1,96(sp) - c003910c: 0898 addi a4,sp,80 - c003910e: 86ee mv a3,s11 - c0039110: 8652 mv a2,s4 - c0039112: 8522 mv a0,s0 - c0039114: e41a sd t1,8(sp) - c0039116: f4d2 sd s4,104(sp) - c0039118: bc4f90ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39269 + c00392da: 7586 ld a1,96(sp) + c00392dc: 0898 addi a4,sp,80 + c00392de: 86ee mv a3,s11 + c00392e0: 8652 mv a2,s4 + c00392e2: 8522 mv a0,s0 + c00392e4: e41a sd t1,8(sp) + c00392e6: f4d2 sd s4,104(sp) + c00392e8: bc4f90ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39277 if (res < 0) - c003911c: 02054a63 bltz a0,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39271 + c00392ec: 02054a63 bltz a0,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39279 if (res) { - c0039120: 6322 ld t1,8(sp) - c0039122: e919 bnez a0,c0039138 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39267 + c00392f0: 6322 ld t1,8(sp) + c00392f2: e919 bnez a0,c0039308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39275 for (k = 0; k < len; k++, n++) { - c0039124: 0d85 addi s11,s11,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39267 (discriminator 1) - c0039126: 77a2 ld a5,40(sp) - c0039128: 013d8333 add t1,s11,s3 - c003912c: fcfdcfe3 blt s11,a5,c003910a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39251 (discriminator 2) + c00392f4: 0d85 addi s11,s11,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39275 (discriminator 1) + c00392f6: 77a2 ld a5,40(sp) + c00392f8: 013d8333 add t1,s11,s3 + c00392fc: fcfdcfe3 blt s11,a5,c00392da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39259 (discriminator 2) for (i = -1; i < argc; i++) { - c0039130: 2b05 addiw s6,s6,1 - c0039132: 0ac1 addi s5,s5,16 - c0039134: 899a mv s3,t1 - c0039136: b5e9 j c0039000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39272 + c0039300: 2b05 addiw s6,s6,1 + c0039302: 0ac1 addi s5,s5,16 + c0039304: 899a mv s3,t1 + c0039306: b5e9 j c00391d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39280 if (JS_DefinePropertyValueInt64(ctx, arr, n, val, - c0039138: 6746 ld a4,80(sp) - c003913a: 67e6 ld a5,88(sp) - c003913c: 6586 ld a1,64(sp) - c003913e: 885e mv a6,s7 - c0039140: 869a mv a3,t1 - c0039142: 8626 mv a2,s1 - c0039144: 8522 mv a0,s0 - c0039146: e4a6 sd s1,72(sp) - c0039148: dcef00ef jal ra,c0029716 - c003914c: fc055ce3 bgez a0,c0039124 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39295 + c0039308: 6746 ld a4,80(sp) + c003930a: 67e6 ld a5,88(sp) + c003930c: 6586 ld a1,64(sp) + c003930e: 885e mv a6,s7 + c0039310: 869a mv a3,t1 + c0039312: 8626 mv a2,s1 + c0039314: 8522 mv a0,s0 + c0039316: e4a6 sd s1,72(sp) + c0039318: dcef00ef jal ra,c00298e6 + c003931c: fc055ce3 bgez a0,c00392f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39303 JS_FreeValue(ctx, arr); - c0039150: 6586 ld a1,64(sp) - c0039152: 8666 mv a2,s9 - c0039154: 8522 mv a0,s0 - c0039156: 9e3ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39296 + c0039320: 6586 ld a1,64(sp) + c0039322: 8666 mv a2,s9 + c0039324: 8522 mv a0,s0 + c0039326: 901ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39304 JS_FreeValue(ctx, obj); - c003915a: 75c2 ld a1,48(sp) - c003915c: 864a mv a2,s2 - c003915e: 8522 mv a0,s0 - c0039160: 9d9ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39297 + c003932a: 75c2 ld a1,48(sp) + c003932c: 864a mv a2,s2 + c003932e: 8522 mv a0,s0 + c0039330: 8f7ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39305 return JS_EXCEPTION; - c0039164: 4799 li a5,6 - c0039166: f102 sd zero,160(sp) - c0039168: b5cd j c003904a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39267 + c0039334: 4799 li a5,6 + c0039336: f102 sd zero,160(sp) + c0039338: b5cd j c003921a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39275 for (k = 0; k < len; k++, n++) { - c003916a: 4d81 li s11,0 - c003916c: bf6d j c0039126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39278 + c003933a: 4d81 li s11,0 + c003933c: bf6d j c00392f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39286 if (n >= MAX_SAFE_INTEGER) { - c003916e: f73c4ae3 blt s8,s3,c00390e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39282 + c003933e: f73c4ae3 blt s8,s3,c00392b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39290 if (JS_DefinePropertyValueInt64(ctx, arr, n, JS_DupValue(ctx, e), - c0039172: 7506 ld a0,96(sp) - c0039174: 75a6 ld a1,104(sp) - c0039176: cf8cd0ef jal ra,c000666e - c003917a: 87ae mv a5,a1 - c003917c: e52e sd a1,136(sp) - c003917e: 6586 ld a1,64(sp) - c0039180: 872a mv a4,a0 - c0039182: e12a sd a0,128(sp) - c0039184: 885e mv a6,s7 - c0039186: 86ce mv a3,s3 - c0039188: 8626 mv a2,s1 - c003918a: 8522 mv a0,s0 - c003918c: e4a6 sd s1,72(sp) - c003918e: d88f00ef jal ra,c0029716 - c0039192: fa054fe3 bltz a0,c0039150 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39285 + c0039342: 7506 ld a0,96(sp) + c0039344: 75a6 ld a1,104(sp) + c0039346: c16cd0ef jal ra,c000675c + c003934a: 87ae mv a5,a1 + c003934c: e52e sd a1,136(sp) + c003934e: 6586 ld a1,64(sp) + c0039350: 872a mv a4,a0 + c0039352: e12a sd a0,128(sp) + c0039354: 885e mv a6,s7 + c0039356: 86ce mv a3,s3 + c0039358: 8626 mv a2,s1 + c003935a: 8522 mv a0,s0 + c003935c: e4a6 sd s1,72(sp) + c003935e: d88f00ef jal ra,c00298e6 + c0039362: fa054fe3 bltz a0,c0039320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39293 n++; - c0039196: 00198313 addi t1,s3,1 - c003919a: bf59 j c0039130 + c0039366: 00198313 addi t1,s3,1 + c003936a: bf59 j c0039300 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003919c: d229f7d3 fcvt.d.l fa5,s3 - c00391a0: 479d li a5,7 - c00391a2: e2078753 fmv.x.d a4,fa5 + c003936c: d229f7d3 fcvt.d.l fa5,s3 + c0039370: 479d li a5,7 + c0039372: e2078753 fmv.x.d a4,fa5 js_array_concat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00391a6: b13e fsd fa5,160(sp) - c00391a8: 2701 sext.w a4,a4 - c00391aa: bd8d j c003901c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39242 + c0039376: b13e fsd fa5,160(sp) + c0039378: 2701 sext.w a4,a4 + c003937a: bd8d j c00391ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39250 arr = JS_UNDEFINED; - c00391ac: 4c8d li s9,3 - c00391ae: b74d j c0039150 + c003937c: 4c8d li s9,3 + c003937e: b74d j c0039320 -00000000c00391b0 : +00000000c0039380 : js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44753 -{ - c00391b0: 7101 addi sp,sp,-512 - c00391b2: e4b2 sd a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44755 - JSValueConst rx = this_val; - c00391b4: fcb2 sd a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44753 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44761 { - c00391b6: ff86 sd ra,504(sp) - c00391b8: fba2 sd s0,496(sp) - c00391ba: f7a6 sd s1,488(sp) - c00391bc: f3ca sd s2,480(sp) - c00391be: efce sd s3,472(sp) - c00391c0: ebd2 sd s4,464(sp) - c00391c2: e7d6 sd s5,456(sp) - c00391c4: e3da sd s6,448(sp) - c00391c6: ff5e sd s7,440(sp) - c00391c8: fb62 sd s8,432(sp) - c00391ca: f766 sd s9,424(sp) - c00391cc: f36a sd s10,416(sp) - c00391ce: ef6e sd s11,408(sp) - c00391d0: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44755 + c0039380: 7101 addi sp,sp,-512 + c0039382: e4b2 sd a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44763 JSValueConst rx = this_val; - c00391d2: f8ae sd a1,112(sp) + c0039384: fcb2 sd a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44761 +{ + c0039386: ff86 sd ra,504(sp) + c0039388: fba2 sd s0,496(sp) + c003938a: f7a6 sd s1,488(sp) + c003938c: f3ca sd s2,480(sp) + c003938e: efce sd s3,472(sp) + c0039390: ebd2 sd s4,464(sp) + c0039392: e7d6 sd s5,456(sp) + c0039394: e3da sd s6,448(sp) + c0039396: ff5e sd s7,440(sp) + c0039398: fb62 sd s8,432(sp) + c003939a: f766 sd s9,424(sp) + c003939c: f36a sd s10,416(sp) + c003939e: ef6e sd s11,408(sp) + c00393a0: e0ae sd a1,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44763 + JSValueConst rx = this_val; + c00393a2: f8ae sd a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44771 if (!JS_IsObject(rx)) - c00391d4: 2601 sext.w a2,a2 - c00391d6: 57fd li a5,-1 - c00391d8: 02f60363 beq a2,a5,c00391fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44875 -} - c00391dc: 745e ld s0,496(sp) - c00391de: 70fe ld ra,504(sp) - c00391e0: 74be ld s1,488(sp) - c00391e2: 791e ld s2,480(sp) - c00391e4: 69fe ld s3,472(sp) - c00391e6: 6a5e ld s4,464(sp) - c00391e8: 6abe ld s5,456(sp) - c00391ea: 6b1e ld s6,448(sp) - c00391ec: 7bfa ld s7,440(sp) - c00391ee: 7c5a ld s8,432(sp) - c00391f0: 7cba ld s9,424(sp) - c00391f2: 7d1a ld s10,416(sp) - c00391f4: 6dfa ld s11,408(sp) - c00391f6: 20010113 addi sp,sp,512 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44764 + c00393a4: 2601 sext.w a2,a2 + c00393a6: 57fd li a5,-1 + c00393a8: 02f60363 beq a2,a5,c00393ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44883 +} + c00393ac: 745e ld s0,496(sp) + c00393ae: 70fe ld ra,504(sp) + c00393b0: 74be ld s1,488(sp) + c00393b2: 791e ld s2,480(sp) + c00393b4: 69fe ld s3,472(sp) + c00393b6: 6a5e ld s4,464(sp) + c00393b8: 6abe ld s5,456(sp) + c00393ba: 6b1e ld s6,448(sp) + c00393bc: 7bfa ld s7,440(sp) + c00393be: 7c5a ld s8,432(sp) + c00393c0: 7cba ld s9,424(sp) + c00393c2: 7d1a ld s10,416(sp) + c00393c4: 6dfa ld s11,408(sp) + c00393c6: 20010113 addi sp,sp,512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44772 return JS_ThrowTypeErrorNotAnObject(ctx); - c00391fa: f7eda06f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44771 + c00393ca: e9cda06f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44779 str = JS_ToString(ctx, argv[0]); - c00391fe: 630c ld a1,0(a4) - c0039200: 6710 ld a2,8(a4) - c0039202: 842a mv s0,a0 - c0039204: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44766 + c00393ce: 630c ld a1,0(a4) + c00393d0: 6710 ld a2,8(a4) + c00393d2: 842a mv s0,a0 + c00393d4: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44774 ctor = JS_UNDEFINED; - c0039206: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44767 + c00393d6: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44775 splitter = JS_UNDEFINED; - c0039208: f102 sd zero,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44768 + c00393d8: f102 sd zero,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44776 A = JS_UNDEFINED; - c003920a: f902 sd zero,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c00393da: f902 sd zero,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c003920c: e982 sd zero,208(sp) - c003920e: ed82 sd zero,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44771 + c00393dc: e982 sd zero,208(sp) + c00393de: ed82 sd zero,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44779 str = JS_ToString(ctx, argv[0]); - c0039210: dc6e10ef jal ra,c001a7d6 - c0039214: e52e sd a1,136(sp) - c0039216: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44772 + c00393e0: dc6e10ef jal ra,c001a9a6 + c00393e4: e52e sd a1,136(sp) + c00393e6: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44780 if (JS_IsException(str)) - c0039218: 2581 sext.w a1,a1 - c003921a: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44771 + c00393e8: 2581 sext.w a1,a1 + c00393ea: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44779 str = JS_ToString(ctx, argv[0]); - c003921c: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44772 + c00393ec: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44780 if (JS_IsException(str)) - c003921e: 37658063 beq a1,s6,c003957e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44774 + c00393ee: 37658063 beq a1,s6,c003974e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44782 ctor = JS_SpeciesConstructor(ctx, rx, ctx->regexp_ctor); - c0039222: 7c34 ld a3,120(s0) - c0039224: 6058 ld a4,128(s0) - c0039226: 75c6 ld a1,112(sp) - c0039228: 7666 ld a2,120(sp) - c003922a: 8522 mv a0,s0 - c003922c: 98fda0ef jal ra,c0013bba - c0039230: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44775 + c00393f2: 7c34 ld a3,120(s0) + c00393f4: 6058 ld a4,128(s0) + c00393f6: 75c6 ld a1,112(sp) + c00393f8: 7666 ld a2,120(sp) + c00393fa: 8522 mv a0,s0 + c00393fc: 8adda0ef jal ra,c0013ca8 + c0039400: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44783 if (JS_IsException(ctor)) - c0039232: 47a2 lw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44774 + c0039402: 47a2 lw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44782 ctor = JS_SpeciesConstructor(ctx, rx, ctx->regexp_ctor); - c0039234: e92a sd a0,144(sp) - c0039236: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44775 + c0039404: e92a sd a0,144(sp) + c0039406: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44783 if (JS_IsException(ctor)) - c0039238: 35678b63 beq a5,s6,c003958e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44777 + c0039408: 35678b63 beq a5,s6,c003975e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44785 flags = JS_ToStringFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_flags)); - c003923c: 77e6 ld a5,120(sp) - c003923e: 7746 ld a4,112(sp) + c003940c: 77e6 ld a5,120(sp) + c003940e: 7746 ld a4,112(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0039240: 4801 li a6,0 - c0039242: 863e mv a2,a5 - c0039244: 06e00693 li a3,110 - c0039248: 85ba mv a1,a4 - c003924a: 8522 mv a0,s0 - c003924c: febe sd a5,376(sp) - c003924e: faba sd a4,368(sp) - c0039250: df2d80ef jal ra,c0011842 - c0039254: 862e mv a2,a1 - c0039256: fa2a sd a0,304(sp) - c0039258: fe2e sd a1,312(sp) - c003925a: f9aa sd a0,240(sp) - c003925c: fdae sd a1,248(sp) + c0039410: 4801 li a6,0 + c0039412: 863e mv a2,a5 + c0039414: 06e00693 li a3,110 + c0039418: 85ba mv a1,a4 + c003941a: 8522 mv a0,s0 + c003941c: febe sd a5,376(sp) + c003941e: faba sd a4,368(sp) + c0039420: d10d80ef jal ra,c0011930 + c0039424: 862e mv a2,a1 + c0039426: fa2a sd a0,304(sp) + c0039428: fe2e sd a1,312(sp) + c003942a: f9aa sd a0,240(sp) + c003942c: fdae sd a1,248(sp) js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44777 - c003925e: 85aa mv a1,a0 - c0039260: 8522 mv a0,s0 - c0039262: d7ee10ef jal ra,c001a7e0 - c0039266: e1aa sd a0,192(sp) - c0039268: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44785 + c003942e: 85aa mv a1,a0 + c0039430: 8522 mv a0,s0 + c0039432: d7ee10ef jal ra,c001a9b0 + c0039436: e1aa sd a0,192(sp) + c0039438: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44786 if (JS_IsException(flags)) - c003926a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44777 + c003943a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44785 flags = JS_ToStringFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_flags)); - c003926e: 892a mv s2,a0 - c0039270: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 + c003943e: 892a mv s2,a0 + c0039440: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44786 if (JS_IsException(flags)) - c0039272: 33678463 beq a5,s6,c003959a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44781 + c0039442: 33678463 beq a5,s6,c003976a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 unicodeMatching = string_indexof_char(strp, 'u', 0) >= 0; - c0039276: 4601 li a2,0 - c0039278: 07500593 li a1,117 - c003927c: c0ecb0ef jal ra,c000468a - c0039280: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44782 + c0039446: 4601 li a2,0 + c0039448: 07500593 li a1,117 + c003944c: a3ecb0ef jal ra,c000468a + c0039450: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44790 if (string_indexof_char(strp, 'y', 0) < 0) { - c0039282: 4601 li a2,0 - c0039284: 07900593 li a1,121 - c0039288: 854a mv a0,s2 - c003928a: c00cb0ef jal ra,c000468a - c003928e: 02055763 bgez a0,c00392bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44783 + c0039452: 4601 li a2,0 + c0039454: 07900593 li a1,121 + c0039458: 854a mv a0,s2 + c003945a: a30cb0ef jal ra,c000468a + c003945e: 02055763 bgez a0,c003948c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44791 flags = JS_ConcatString3(ctx, "", flags, "y"); - c0039292: 864a mv a2,s2 - c0039294: 86a6 mv a3,s1 - c0039296: 00028717 auipc a4,0x28 - c003929a: 2ba70713 addi a4,a4,698 # c0061550 - c003929e: 00024597 auipc a1,0x24 - c00392a2: d3258593 addi a1,a1,-718 # c005cfd0 - c00392a6: 8522 mv a0,s0 - c00392a8: d62e10ef jal ra,c001a80a - c00392ac: e1aa sd a0,192(sp) - c00392ae: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44784 + c0039462: 864a mv a2,s2 + c0039464: 86a6 mv a3,s1 + c0039466: 00028717 auipc a4,0x28 + c003946a: 34a70713 addi a4,a4,842 # c00617b0 + c003946e: 00024597 auipc a1,0x24 + c0039472: d9258593 addi a1,a1,-622 # c005d200 + c0039476: 8522 mv a0,s0 + c0039478: d62e10ef jal ra,c001a9da + c003947c: e1aa sd a0,192(sp) + c003947e: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44792 if (JS_IsException(flags)) - c00392b0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44783 + c0039480: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44791 flags = JS_ConcatString3(ctx, "", flags, "y"); - c00392b4: 892a mv s2,a0 - c00392b6: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44784 + c0039484: 892a mv s2,a0 + c0039486: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44792 if (JS_IsException(flags)) - c00392b8: 2f678163 beq a5,s6,c003959a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44787 + c0039488: 2f678163 beq a5,s6,c003976a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44795 args[0] = rx; - c00392bc: 77c6 ld a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 + c003948c: 77c6 ld a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44797 splitter = JS_CallConstructor(ctx, ctor, 2, args); - c00392be: 65ca ld a1,144(sp) - c00392c0: 666a ld a2,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44787 + c003948e: 65ca ld a1,144(sp) + c0039490: 666a ld a2,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44795 args[0] = rx; - c00392c2: fabe sd a5,368(sp) - c00392c4: 77e6 ld a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 + c0039492: fabe sd a5,368(sp) + c0039494: 77e6 ld a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44797 splitter = JS_CallConstructor(ctx, ctor, 2, args); - c00392c6: 1a98 addi a4,sp,368 - c00392c8: 4689 li a3,2 - c00392ca: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44787 + c0039496: 1a98 addi a4,sp,368 + c0039498: 4689 li a3,2 + c003949a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44795 args[0] = rx; - c00392cc: febe sd a5,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44788 + c003949c: febe sd a5,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44796 args[1] = flags; - c00392ce: e34a sd s2,384(sp) - c00392d0: e726 sd s1,392(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 + c003949e: e34a sd s2,384(sp) + c00394a0: e726 sd s1,392(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44797 splitter = JS_CallConstructor(ctx, ctor, 2, args); - c00392d2: 9d4ff0ef jal ra,c00384a6 - c00392d6: f12a sd a0,160(sp) - c00392d8: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44790 + c00394a2: 9d4ff0ef jal ra,c0038676 + c00394a6: f12a sd a0,160(sp) + c00394a8: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44798 if (JS_IsException(splitter)) - c00392da: 0005879b sext.w a5,a1 - c00392de: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 + c00394aa: 0005879b sext.w a5,a1 + c00394ae: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44797 splitter = JS_CallConstructor(ctx, ctor, 2, args); - c00392e0: 8c2e mv s8,a1 - c00392e2: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44790 + c00394b0: 8c2e mv s8,a1 + c00394b2: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44798 if (JS_IsException(splitter)) - c00392e4: 2ba78d63 beq a5,s10,c003959e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44792 + c00394b4: 2ba78d63 beq a5,s10,c003976e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44800 A = JS_NewArray(ctx); - c00392e8: 8522 mv a0,s0 - c00392ea: cd5dd0ef jal ra,c0016fbe - c00392ee: f92a sd a0,176(sp) - c00392f0: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44793 + c00394b8: 8522 mv a0,s0 + c00394ba: cd5dd0ef jal ra,c001718e + c00394be: f92a sd a0,176(sp) + c00394c0: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44801 if (JS_IsException(A)) - c00392f2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44792 + c00394c2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44800 A = JS_NewArray(ctx); - c00392f6: 8bae mv s7,a1 - c00392f8: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44793 + c00394c6: 8bae mv s7,a1 + c00394c8: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44801 if (JS_IsException(A)) - c00392fa: 2ba78563 beq a5,s10,c00395a4 + c00394ca: 2ba78563 beq a5,s10,c0039774 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c00392fe: 0189b683 ld a3,24(s3) + c00394ce: 0189b683 ld a3,24(s3) js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44804 if (JS_IsUndefined(argv[1])) { - c0039302: 478d li a5,3 - c0039304: 0006871b sext.w a4,a3 - c0039308: 02f71e63 bne a4,a5,c0039344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44797 + c00394d2: 478d li a5,3 + c00394d4: 0006871b sext.w a4,a3 + c00394d8: 02f71e63 bne a4,a5,c0039514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44805 lim = 0xffffffff; - c003930c: 57fd li a5,-1 - c003930e: cebe sw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44806 + c00394dc: 57fd li a5,-1 + c00394de: cebe sw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44814 size = strp->len; - c0039310: 004a2783 lw a5,4(s4) - c0039314: 1786 slli a5,a5,0x21 - c0039316: 0217dd93 srli s11,a5,0x21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44807 + c00394e0: 004a2783 lw a5,4(s4) + c00394e4: 1786 slli a5,a5,0x21 + c00394e6: 0217dd93 srli s11,a5,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44815 if (size == 0) { - c003931a: efc9 bnez a5,c00393b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44808 + c00394ea: efc9 bnez a5,c0039584 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44816 z = JS_RegExpExec(ctx, splitter, str); - c003931c: 672a ld a4,136(sp) - c003931e: 668a ld a3,128(sp) - c0039320: 758a ld a1,160(sp) - c0039322: 762a ld a2,168(sp) - c0039324: 8522 mv a0,s0 - c0039326: c7cfd0ef jal ra,c00367a2 - c003932a: e9aa sd a0,208(sp) + c00394ec: 672a ld a4,136(sp) + c00394ee: 668a ld a3,128(sp) + c00394f0: 758a ld a1,160(sp) + c00394f2: 762a ld a2,168(sp) + c00394f4: 8522 mv a0,s0 + c00394f6: c7cfd0ef jal ra,c0036972 + c00394fa: e9aa sd a0,208(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003932c: 0005879b sext.w a5,a1 + c00394fc: 0005879b sext.w a5,a1 js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44809 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44817 if (JS_IsException(z)) - c0039330: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44808 + c0039500: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44816 z = JS_RegExpExec(ctx, splitter, str); - c0039332: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44809 + c0039502: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44817 if (JS_IsException(z)) - c0039334: 14e78463 beq a5,a4,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44811 + c0039504: 14e78463 beq a5,a4,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44819 if (JS_IsNull(z)) - c0039338: 4709 li a4,2 - c003933a: 02e79263 bne a5,a4,c003935e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44805 + c0039508: 4709 li a4,2 + c003950a: 02e79263 bne a5,a4,c003952e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44813 p = q = 0; - c003933e: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44795 + c003950e: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44803 lengthA = 0; - c0039340: 4d01 li s10,0 - c0039342: a201 j c0039442 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44799 + c0039510: 4d01 li s10,0 + c0039512: a201 j c0039612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44807 if (JS_ToUint32(ctx, &lim, argv[1]) < 0) - c0039344: 0109b603 ld a2,16(s3) + c0039514: 0109b603 ld a2,16(s3) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c0039348: 08ec addi a1,sp,92 - c003934a: 8522 mv a0,s0 - c003934c: f2b2 sd a2,352(sp) - c003934e: f6b6 sd a3,360(sp) - c0039350: 81ee30ef jal ra,c001c36e + c0039518: 08ec addi a1,sp,92 + c003951a: 8522 mv a0,s0 + c003951c: f2b2 sd a2,352(sp) + c003951e: f6b6 sd a3,360(sp) + c0039520: 81ee30ef jal ra,c001c53e js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44799 - c0039354: 24054863 bltz a0,c00395a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44807 + c0039524: 24054863 bltz a0,c0039774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44809 if (lim == 0) - c0039358: 47f6 lw a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c0039528: 47f6 lw a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c003935a: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44801 + c003952a: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44809 if (lim == 0) - c003935c: fbd5 bnez a5,c0039310 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44869 + c003952c: fbd5 bnez a5,c00394e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44877 JS_FreeValue(ctx, str); - c003935e: 662a ld a2,136(sp) - c0039360: 85d2 mv a1,s4 - c0039362: 8522 mv a0,s0 - c0039364: fd4ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44870 + c003952e: 662a ld a2,136(sp) + c0039530: 85d2 mv a1,s4 + c0039532: 8522 mv a0,s0 + c0039534: ef2ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44878 JS_FreeValue(ctx, ctor); - c0039368: 65ca ld a1,144(sp) - c003936a: 6622 ld a2,8(sp) - c003936c: 8522 mv a0,s0 - c003936e: fcace0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44871 + c0039538: 65ca ld a1,144(sp) + c003953a: 6622 ld a2,8(sp) + c003953c: 8522 mv a0,s0 + c003953e: ee8ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44879 JS_FreeValue(ctx, splitter); - c0039372: 758a ld a1,160(sp) - c0039374: 8666 mv a2,s9 - c0039376: 8522 mv a0,s0 - c0039378: fc0ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44872 + c0039542: 758a ld a1,160(sp) + c0039544: 8666 mv a2,s9 + c0039546: 8522 mv a0,s0 + c0039548: edece0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44880 JS_FreeValue(ctx, flags); - c003937c: 85ca mv a1,s2 - c003937e: 8626 mv a2,s1 - c0039380: 8522 mv a0,s0 - c0039382: fb6ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44873 + c003954c: 85ca mv a1,s2 + c003954e: 8626 mv a2,s1 + c0039550: 8522 mv a0,s0 + c0039552: ed4ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44881 JS_FreeValue(ctx, z); - c0039386: 65ce ld a1,208(sp) - c0039388: 8522 mv a0,s0 - c003938a: 864e mv a2,s3 - c003938c: facce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44875 -} - c0039390: 70fe ld ra,504(sp) - c0039392: 745e ld s0,496(sp) - c0039394: 754a ld a0,176(sp) - c0039396: 74be ld s1,488(sp) - c0039398: 791e ld s2,480(sp) - c003939a: 69fe ld s3,472(sp) - c003939c: 6a5e ld s4,464(sp) - c003939e: 6abe ld s5,456(sp) - c00393a0: 7bfa ld s7,440(sp) - c00393a2: 7c5a ld s8,432(sp) - c00393a4: 7cba ld s9,424(sp) - c00393a6: 7d1a ld s10,416(sp) - c00393a8: 6dfa ld s11,408(sp) - c00393aa: 85da mv a1,s6 - c00393ac: 6b1e ld s6,448(sp) - c00393ae: 20010113 addi sp,sp,512 - c00393b2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44781 + c0039556: 65ce ld a1,208(sp) + c0039558: 8522 mv a0,s0 + c003955a: 864e mv a2,s3 + c003955c: ecace0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44883 +} + c0039560: 70fe ld ra,504(sp) + c0039562: 745e ld s0,496(sp) + c0039564: 754a ld a0,176(sp) + c0039566: 74be ld s1,488(sp) + c0039568: 791e ld s2,480(sp) + c003956a: 69fe ld s3,472(sp) + c003956c: 6a5e ld s4,464(sp) + c003956e: 6abe ld s5,456(sp) + c0039570: 7bfa ld s7,440(sp) + c0039572: 7c5a ld s8,432(sp) + c0039574: 7cba ld s9,424(sp) + c0039576: 7d1a ld s10,416(sp) + c0039578: 6dfa ld s11,408(sp) + c003957a: 85da mv a1,s6 + c003957c: 6b1e ld s6,448(sp) + c003957e: 20010113 addi sp,sp,512 + c0039582: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44789 unicodeMatching = string_indexof_char(strp, 'u', 0) >= 0; - c00393b4: fffaca93 not s5,s5 - c00393b8: 01fad79b srliw a5,s5,0x1f - c00393bc: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44827 - if (e > size) - c00393be: 020d9793 slli a5,s11,0x20 - c00393c2: 9381 srli a5,a5,0x20 - c00393c4: f43e sd a5,40(sp) + c0039584: fffaca93 not s5,s5 + c0039588: 01fad79b srliw a5,s5,0x1f + c003958c: f03e sd a5,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44835 + if (e > size) + c003958e: 020d9793 slli a5,s11,0x20 + c0039592: 9381 srli a5,a5,0x20 + c0039594: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 if (JS_DefinePropertyValueInt64(ctx, A, lengthA++, sub, - c00393c6: 6791 lui a5,0x4 - c00393c8: 079d addi a5,a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44795 + c0039596: 6791 lui a5,0x4 + c0039598: 079d addi a5,a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44803 lengthA = 0; - c00393ca: 4d01 li s10,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44805 + c003959a: 4d01 li s10,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44813 p = q = 0; - c00393cc: 4881 li a7,0 - c00393ce: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c003959c: 4881 li a7,0 + c003959e: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c00393d0: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44835 + c00395a0: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 if (JS_DefinePropertyValueInt64(ctx, A, lengthA++, sub, - c00393d2: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44816 + c00395a2: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44824 if (JS_SetProperty(ctx, splitter, JS_ATOM_lastIndex, JS_NewInt32(ctx, q)) < 0) - c00393d4: 0008879b sext.w a5,a7 + c00395a4: 0008879b sext.w a5,a7 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00393d8: e282 sd zero,320(sp) - c00393da: 14f12023 sw a5,320(sp) + c00395a8: e282 sd zero,320(sp) + c00395aa: 14f12023 sw a5,320(sp) js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44816 - c00393de: 6716 ld a4,320(sp) - c00393e0: 758a ld a1,160(sp) - c00393e2: ec3e sd a5,24(sp) - c00393e4: 05600693 li a3,86 - c00393e8: 4781 li a5,0 - c00393ea: 8662 mv a2,s8 - c00393ec: 8522 mv a0,s0 - c00393ee: fc46 sd a7,56(sp) - c00393f0: f562 sd s8,168(sp) - c00393f2: d07f60ef jal ra,c00300f8 - c00393f6: 08054363 bltz a0,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44824 + c00395ae: 6716 ld a4,320(sp) + c00395b0: 758a ld a1,160(sp) + c00395b2: ec3e sd a5,24(sp) + c00395b4: 05600693 li a3,86 + c00395b8: 4781 li a5,0 + c00395ba: 8662 mv a2,s8 + c00395bc: 8522 mv a0,s0 + c00395be: fc46 sd a7,56(sp) + c00395c0: f562 sd s8,168(sp) + c00395c2: d07f60ef jal ra,c00302c8 + c00395c6: 08054363 bltz a0,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44826 JS_FreeValue(ctx, z); - c00393fa: 65ce ld a1,208(sp) - c00393fc: 864e mv a2,s3 - c00393fe: 8522 mv a0,s0 - c0039400: f38ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44819 + c00395ca: 65ce ld a1,208(sp) + c00395cc: 864e mv a2,s3 + c00395ce: 8522 mv a0,s0 + c00395d0: e56ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44827 z = JS_RegExpExec(ctx, splitter, str); - c0039404: 672a ld a4,136(sp) - c0039406: 758a ld a1,160(sp) - c0039408: 762a ld a2,168(sp) - c003940a: 86d2 mv a3,s4 - c003940c: 8522 mv a0,s0 - c003940e: b94fd0ef jal ra,c00367a2 - c0039412: e82e sd a1,16(sp) - c0039414: e9aa sd a0,208(sp) - c0039416: edae sd a1,216(sp) + c00395d4: 672a ld a4,136(sp) + c00395d6: 758a ld a1,160(sp) + c00395d8: 762a ld a2,168(sp) + c00395da: 86d2 mv a3,s4 + c00395dc: 8522 mv a0,s0 + c00395de: b94fd0ef jal ra,c0036972 + c00395e2: e82e sd a1,16(sp) + c00395e4: e9aa sd a0,208(sp) + c00395e6: edae sd a1,216(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0039418: 0005879b sext.w a5,a1 + c00395e8: 0005879b sext.w a5,a1 js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44820 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44828 if (JS_IsException(z)) - c003941c: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44819 + c00395ec: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44827 z = JS_RegExpExec(ctx, splitter, str); - c003941e: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44820 + c00395ee: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44828 if (JS_IsException(z)) - c0039420: 04e78e63 beq a5,a4,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44822 - if (JS_IsNull(z)) { - c0039424: 4709 li a4,2 - c0039426: 78e2 ld a7,56(sp) - c0039428: 06e79263 bne a5,a4,c003948c + c00395f0: 04e78e63 beq a5,a4,c003964c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44830 + if (JS_IsNull(z)) { + c00395f4: 4709 li a4,2 + c00395f6: 78e2 ld a7,56(sp) + c00395f8: 06e79263 bne a5,a4,c003965c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44838 q = string_advance_index(strp, q, unicodeMatching); - c003942c: 7602 ld a2,32(sp) - c003942e: 02089593 slli a1,a7,0x20 - c0039432: 9181 srli a1,a1,0x20 - c0039434: 8552 mv a0,s4 - c0039436: d06cc0ef jal ra,c000593c - c003943a: 0005089b sext.w a7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44815 + c00395fc: 7602 ld a2,32(sp) + c00395fe: 02089593 slli a1,a7,0x20 + c0039602: 9181 srli a1,a1,0x20 + c0039604: 8552 mv a0,s4 + c0039606: c24cc0ef jal ra,c0005a2a + c003960a: 0005089b sext.w a7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44823 while (q < size) { - c003943e: f9b8ebe3 bltu a7,s11,c00393d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44859 + c003960e: f9b8ebe3 bltu a7,s11,c00395a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44867 sub = js_sub_string(ctx, strp, p, size); - c0039442: 000d869b sext.w a3,s11 - c0039446: 000a861b sext.w a2,s5 - c003944a: 015df463 bgeu s11,s5,c0039452 - c003944e: 000d861b sext.w a2,s11 - c0039452: 85d2 mv a1,s4 - c0039454: 8522 mv a0,s0 - c0039456: d23e00ef jal ra,c001a178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44860 + c0039612: 000d869b sext.w a3,s11 + c0039616: 000a861b sext.w a2,s5 + c003961a: 015df463 bgeu s11,s5,c0039622 + c003961e: 000d861b sext.w a2,s11 + c0039622: 85d2 mv a1,s4 + c0039624: 8522 mv a0,s0 + c0039626: d23e00ef jal ra,c001a348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44868 if (JS_IsException(sub)) - c003945a: 0005861b sext.w a2,a1 - c003945e: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44859 + c003962a: 0005861b sext.w a2,a1 + c003962e: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44867 sub = js_sub_string(ctx, strp, p, size); - c0039460: 872a mv a4,a0 - c0039462: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44860 + c0039630: 872a mv a4,a0 + c0039632: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44868 if (JS_IsException(sub)) - c0039464: 00d60c63 beq a2,a3,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44862 + c0039634: 00d60c63 beq a2,a3,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44870 if (JS_DefinePropertyValueInt64(ctx, A, lengthA++, sub, JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c0039468: 75ca ld a1,176(sp) - c003946a: 6811 lui a6,0x4 - c003946c: 081d addi a6,a6,7 - c003946e: 86ea mv a3,s10 - c0039470: 865e mv a2,s7 - c0039472: 8522 mv a0,s0 - c0039474: aa2f00ef jal ra,c0029716 - c0039478: ee0553e3 bgez a0,c003935e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44866 + c0039638: 75ca ld a1,176(sp) + c003963a: 6811 lui a6,0x4 + c003963c: 081d addi a6,a6,7 + c003963e: 86ea mv a3,s10 + c0039640: 865e mv a2,s7 + c0039642: 8522 mv a0,s0 + c0039644: aa2f00ef jal ra,c00298e6 + c0039648: ee0553e3 bgez a0,c003952e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44874 JS_FreeValue(ctx, A); - c003947c: 75ca ld a1,176(sp) - c003947e: 865a mv a2,s6 - c0039480: 8522 mv a0,s0 - c0039482: eb6ce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44867 + c003964c: 75ca ld a1,176(sp) + c003964e: 865a mv a2,s6 + c0039650: 8522 mv a0,s0 + c0039652: dd4ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44875 A = JS_EXCEPTION; - c0039486: 4b19 li s6,6 - c0039488: f902 sd zero,176(sp) - c003948a: bdd1 j c003935e - c003948c: 770a ld a4,160(sp) - c003948e: 77aa ld a5,168(sp) + c0039656: 4b19 li s6,6 + c0039658: f902 sd zero,176(sp) + c003965a: bdd1 j c003952e + c003965c: 770a ld a4,160(sp) + c003965e: 77aa ld a5,168(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0039490: 05600693 li a3,86 - c0039494: 4801 li a6,0 - c0039496: 863e mv a2,a5 - c0039498: 85ba mv a1,a4 - c003949a: 8522 mv a0,s0 - c003949c: fc46 sd a7,56(sp) + c0039660: 05600693 li a3,86 + c0039664: 4801 li a6,0 + c0039666: 863e mv a2,a5 + c0039668: 85ba mv a1,a4 + c003966a: 8522 mv a0,s0 + c003966c: fc46 sd a7,56(sp) js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44825 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44833 if (JS_ToLengthFree(ctx, &e, JS_GetProperty(ctx, splitter, JS_ATOM_lastIndex))) - c003949e: eaba sd a4,336(sp) - c00394a0: eebe sd a5,344(sp) + c003966e: eaba sd a4,336(sp) + c0039670: eebe sd a5,344(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00394a2: ba0d80ef jal ra,c0011842 - c00394a6: 862a mv a2,a0 - c00394a8: 86ae mv a3,a1 - c00394aa: f2aa sd a0,352(sp) - c00394ac: f6ae sd a1,360(sp) + c0039672: abed80ef jal ra,c0011930 + c0039676: 862a mv a2,a0 + c0039678: 86ae mv a3,a1 + c003967a: f2aa sd a0,352(sp) + c003967c: f6ae sd a1,360(sp) js_regexp_Symbol_split(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44825 - c00394ae: 8522 mv a0,s0 - c00394b0: 108c addi a1,sp,96 - c00394b2: b5ae50ef jal ra,c001e80c - c00394b6: f179 bnez a0,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44827 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44833 + c003967e: 8522 mv a0,s0 + c0039680: 108c addi a1,sp,96 + c0039682: b5ae50ef jal ra,c001e9dc + c0039686: f179 bnez a0,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44835 if (e > size) - c00394b8: 7786 ld a5,96(sp) - c00394ba: 7722 ld a4,40(sp) - c00394bc: 78e2 ld a7,56(sp) - c00394be: 00f75363 bge a4,a5,c00394c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44828 + c0039688: 7786 ld a5,96(sp) + c003968a: 7722 ld a4,40(sp) + c003968c: 78e2 ld a7,56(sp) + c003968e: 00f75363 bge a4,a5,c0039694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44836 e = size; - c00394c2: f0ba sd a4,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44829 + c0039692: f0ba sd a4,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44837 if (e == p) { - c00394c4: 7706 ld a4,96(sp) - c00394c6: 020a9793 slli a5,s5,0x20 - c00394ca: 9381 srli a5,a5,0x20 - c00394cc: f6e780e3 beq a5,a4,c003942c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44832 + c0039694: 7706 ld a4,96(sp) + c0039696: 020a9793 slli a5,s5,0x20 + c003969a: 9381 srli a5,a5,0x20 + c003969c: f6e780e3 beq a5,a4,c00395fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44840 sub = js_sub_string(ctx, strp, p, q); - c00394d0: 66e2 ld a3,24(sp) - c00394d2: 8656 mv a2,s5 - c00394d4: 85d2 mv a1,s4 - c00394d6: 8522 mv a0,s0 - c00394d8: ca1e00ef jal ra,c001a178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44833 + c00396a0: 66e2 ld a3,24(sp) + c00396a2: 8656 mv a2,s5 + c00396a4: 85d2 mv a1,s4 + c00396a6: 8522 mv a0,s0 + c00396a8: ca1e00ef jal ra,c001a348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44841 if (JS_IsException(sub)) - c00394dc: 0005869b sext.w a3,a1 - c00394e0: 4619 li a2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44832 + c00396ac: 0005869b sext.w a3,a1 + c00396b0: 4619 li a2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44840 sub = js_sub_string(ctx, strp, p, q); - c00394e2: 872a mv a4,a0 - c00394e4: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44833 + c00396b2: 872a mv a4,a0 + c00396b4: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44841 if (JS_IsException(sub)) - c00394e6: f8c68be3 beq a3,a2,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44835 + c00396b6: f8c68be3 beq a3,a2,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 if (JS_DefinePropertyValueInt64(ctx, A, lengthA++, sub, - c00394ea: 7842 ld a6,48(sp) - c00394ec: 75ca ld a1,176(sp) - c00394ee: 001d0893 addi a7,s10,1 - c00394f2: 86ea mv a3,s10 - c00394f4: 865e mv a2,s7 - c00394f6: 8522 mv a0,s0 - c00394f8: ec46 sd a7,24(sp) - c00394fa: a1cf00ef jal ra,c0029716 - c00394fe: f6054fe3 bltz a0,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44838 + c00396ba: 7842 ld a6,48(sp) + c00396bc: 75ca ld a1,176(sp) + c00396be: 001d0893 addi a7,s10,1 + c00396c2: 86ea mv a3,s10 + c00396c4: 865e mv a2,s7 + c00396c6: 8522 mv a0,s0 + c00396c8: ec46 sd a7,24(sp) + c00396ca: a1cf00ef jal ra,c00298e6 + c00396ce: f6054fe3 bltz a0,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44846 if (lengthA == lim) - c0039502: 05c16783 lwu a5,92(sp) - c0039506: 68e2 ld a7,24(sp) - c0039508: e5178be3 beq a5,a7,c003935e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44841 + c00396d2: 05c16783 lwu a5,92(sp) + c00396d6: 68e2 ld a7,24(sp) + c00396d8: e5178be3 beq a5,a7,c003952e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44849 if (js_get_length64(ctx, &numberOfCaptures, z)) - c003950c: 664e ld a2,208(sp) - c003950e: 66ee ld a3,216(sp) - c0039510: 10ac addi a1,sp,104 - c0039512: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44840 + c00396dc: 664e ld a2,208(sp) + c00396de: 66ee ld a3,216(sp) + c00396e0: 10ac addi a1,sp,104 + c00396e2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44848 p = e; - c0039514: 7a86 ld s5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44841 + c00396e4: 7a86 ld s5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44849 if (js_get_length64(ctx, &numberOfCaptures, z)) - c0039516: b28e50ef jal ra,c001e83e - c003951a: f12d bnez a0,c003947c - c003951c: 68e2 ld a7,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 + c00396e6: b28e50ef jal ra,c001ea0e + c00396ea: f12d bnez a0,c003964c + c00396ec: 68e2 ld a7,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44851 for(i = 1; i < numberOfCaptures; i++) { - c003951e: 4d05 li s10,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 (discriminator 1) - c0039520: 77a6 ld a5,104(sp) - c0039522: 00fd4663 blt s10,a5,c003952e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44840 + c00396ee: 4d05 li s10,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44851 (discriminator 1) + c00396f0: 77a6 ld a5,104(sp) + c00396f2: 00fd4663 blt s10,a5,c00396fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44848 p = e; - c0039526: 2a81 sext.w s5,s5 - c0039528: 8d46 mv s10,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44852 + c00396f6: 2a81 sext.w s5,s5 + c00396f8: 8d46 mv s10,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44860 q = p; - c003952a: 88d6 mv a7,s5 - c003952c: bf09 j c003943e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44844 + c00396fa: 88d6 mv a7,s5 + c00396fc: bf09 j c003960e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44852 sub = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, z, i)); - c003952e: 6642 ld a2,16(sp) - c0039530: 65ce ld a1,208(sp) - c0039532: 86ea mv a3,s10 - c0039534: 8522 mv a0,s0 - c0039536: ec46 sd a7,24(sp) - c0039538: 997f80ef jal ra,c0031ece - c003953c: 862e mv a2,a1 - c003953e: 85aa mv a1,a0 - c0039540: 8522 mv a0,s0 - c0039542: a9ee10ef jal ra,c001a7e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44845 + c00396fe: 6642 ld a2,16(sp) + c0039700: 65ce ld a1,208(sp) + c0039702: 86ea mv a3,s10 + c0039704: 8522 mv a0,s0 + c0039706: ec46 sd a7,24(sp) + c0039708: 997f80ef jal ra,c003209e + c003970c: 862e mv a2,a1 + c003970e: 85aa mv a1,a0 + c0039710: 8522 mv a0,s0 + c0039712: a9ee10ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44853 if (JS_IsException(sub)) - c0039546: 0005869b sext.w a3,a1 - c003954a: 4619 li a2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44844 + c0039716: 0005869b sext.w a3,a1 + c003971a: 4619 li a2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44852 sub = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, z, i)); - c003954c: 872a mv a4,a0 - c003954e: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44845 + c003971c: 872a mv a4,a0 + c003971e: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44853 if (JS_IsException(sub)) - c0039550: f2c686e3 beq a3,a2,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44847 + c0039720: f2c686e3 beq a3,a2,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44855 if (JS_DefinePropertyValueInt64(ctx, A, lengthA++, sub, JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c0039554: 68e2 ld a7,24(sp) - c0039556: 7842 ld a6,48(sp) - c0039558: 75ca ld a1,176(sp) - c003955a: 00188313 addi t1,a7,1 - c003955e: 86c6 mv a3,a7 - c0039560: 865e mv a2,s7 - c0039562: 8522 mv a0,s0 - c0039564: ec1a sd t1,24(sp) - c0039566: 9b0f00ef jal ra,c0029716 - c003956a: f00549e3 bltz a0,c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44849 + c0039724: 68e2 ld a7,24(sp) + c0039726: 7842 ld a6,48(sp) + c0039728: 75ca ld a1,176(sp) + c003972a: 00188313 addi t1,a7,1 + c003972e: 86c6 mv a3,a7 + c0039730: 865e mv a2,s7 + c0039732: 8522 mv a0,s0 + c0039734: ec1a sd t1,24(sp) + c0039736: 9b0f00ef jal ra,c00298e6 + c003973a: f00549e3 bltz a0,c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44857 if (lengthA == lim) - c003956e: 05c16783 lwu a5,92(sp) - c0039572: 6362 ld t1,24(sp) - c0039574: de6785e3 beq a5,t1,c003935e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44843 (discriminator 2) + c003973e: 05c16783 lwu a5,92(sp) + c0039742: 6362 ld t1,24(sp) + c0039744: de6785e3 beq a5,t1,c003952e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44851 (discriminator 2) for(i = 1; i < numberOfCaptures; i++) { - c0039578: 0d05 addi s10,s10,1 - c003957a: 889a mv a7,t1 - c003957c: b755 j c0039520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44766 + c0039748: 0d05 addi s10,s10,1 + c003974a: 889a mv a7,t1 + c003974c: b755 j c00396f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44774 ctor = JS_UNDEFINED; - c003957e: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c003974e: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c0039580: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44769 + c0039750: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44777 flags = JS_UNDEFINED; - c0039582: 448d li s1,3 - c0039584: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44768 + c0039752: 448d li s1,3 + c0039754: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44776 A = JS_UNDEFINED; - c0039586: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44767 + c0039756: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44775 splitter = JS_UNDEFINED; - c0039588: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44766 + c0039758: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44774 ctor = JS_UNDEFINED; - c003958a: e43e sd a5,8(sp) - c003958c: bdc5 j c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c003975a: e43e sd a5,8(sp) + c003975c: bdc5 j c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c003958e: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44769 + c003975e: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44777 flags = JS_UNDEFINED; - c0039590: 448d li s1,3 - c0039592: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44768 + c0039760: 448d li s1,3 + c0039762: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44776 A = JS_UNDEFINED; - c0039594: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44767 + c0039764: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44775 splitter = JS_UNDEFINED; - c0039596: 4c8d li s9,3 - c0039598: b5d5 j c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c0039766: 4c8d li s9,3 + c0039768: b5d5 j c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c003959a: 498d li s3,3 - c003959c: bfe5 j c0039594 - c003959e: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44768 + c003976a: 498d li s3,3 + c003976c: bfe5 j c0039764 + c003976e: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44776 A = JS_UNDEFINED; - c00395a0: 4b0d li s6,3 - c00395a2: bde9 j c003947c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44770 + c0039770: 4b0d li s6,3 + c0039772: bde9 j c003964c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44778 z = JS_UNDEFINED; - c00395a4: 498d li s3,3 - c00395a6: bdd9 j c003947c + c0039774: 498d li s3,3 + c0039776: bdd9 j c003964c -00000000c00395a8 : +00000000c0039778 : js_string_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41897 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41905 { - c00395a8: 7151 addi sp,sp,-240 - c00395aa: e9ca sd s2,208(sp) - c00395ac: 86ba mv a3,a4 - c00395ae: f586 sd ra,232(sp) - c00395b0: f1a2 sd s0,224(sp) - c00395b2: eda6 sd s1,216(sp) - c00395b4: e5ce sd s3,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41900 + c0039778: 7151 addi sp,sp,-240 + c003977a: e9ca sd s2,208(sp) + c003977c: 86ba mv a3,a4 + c003977e: f586 sd ra,232(sp) + c0039780: f1a2 sd s0,224(sp) + c0039782: eda6 sd s1,216(sp) + c0039784: e5ce sd s3,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41908 JSValueConst O = this_val, regexp = argv[0], args[2]; - c00395b6: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41897 + c0039786: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41905 { - c00395b8: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41900 + c0039788: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41908 JSValueConst O = this_val, regexp = argv[0], args[2]; - c00395ba: 669c ld a5,8(a3) - c00395bc: ec32 sd a2,24(sp) - c00395be: e82e sd a1,16(sp) - c00395c0: f03a sd a4,32(sp) - c00395c2: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41904 + c003978a: 669c ld a5,8(a3) + c003978c: ec32 sd a2,24(sp) + c003978e: e82e sd a1,16(sp) + c0039790: f03a sd a4,32(sp) + c0039792: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41912 if (JS_IsUndefined(O) || JS_IsNull(O)) - c00395c4: 3679 addiw a2,a2,-2 - c00395c6: 4685 li a3,1 - c00395c8: 00c6eb63 bltu a3,a2,c00395de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41905 + c0039794: 3679 addiw a2,a2,-2 + c0039796: 4685 li a3,1 + c0039798: 00c6eb63 bltu a3,a2,c00397ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41913 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c00395cc: 00025597 auipc a1,0x25 - c00395d0: d0458593 addi a1,a1,-764 # c005e2d0 - c00395d4: e23d90ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41918 + c003979c: 00025597 auipc a1,0x25 + c00397a0: d9458593 addi a1,a1,-620 # c005e530 + c00397a4: d41d90ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41926 return JS_CallFree(ctx, matcher, regexp, 1, &O); - c00395d8: e12a sd a0,128(sp) - c00395da: e52e sd a1,136(sp) - c00395dc: a8a1 j c0039634 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41907 + c00397a8: e12a sd a0,128(sp) + c00397aa: e52e sd a1,136(sp) + c00397ac: a8a1 j c0039804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41915 if (!JS_IsUndefined(regexp) && !JS_IsNull(regexp)) { - c00395de: ffe7861b addiw a2,a5,-2 - c00395e2: 842a mv s0,a0 - c00395e4: 06c6ff63 bgeu a3,a2,c0039662 + c00397ae: ffe7861b addiw a2,a5,-2 + c00397b2: 842a mv s0,a0 + c00397b4: 06c6ff63 bgeu a3,a2,c0039832 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c00395e8: 863e mv a2,a5 - c00395ea: 4801 li a6,0 - c00395ec: 86ca mv a3,s2 - c00395ee: 85ba mv a1,a4 - c00395f0: f53e sd a5,168(sp) - c00395f2: f13a sd a4,160(sp) - c00395f4: a4ed80ef jal ra,c0011842 - c00395f8: f82a sd a0,48(sp) - c00395fa: fc2e sd a1,56(sp) + c00397b8: 863e mv a2,a5 + c00397ba: 4801 li a6,0 + c00397bc: 86ca mv a3,s2 + c00397be: 85ba mv a1,a4 + c00397c0: f53e sd a5,168(sp) + c00397c2: f13a sd a4,160(sp) + c00397c4: 96cd80ef jal ra,c0011930 + c00397c8: f82a sd a0,48(sp) + c00397ca: fc2e sd a1,56(sp) js_string_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41909 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41917 if (JS_IsException(matcher)) - c00395fc: 0005879b sext.w a5,a1 - c0039600: 4999 li s3,6 + c00397cc: 0005879b sext.w a5,a1 + c00397d0: 4999 li s3,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039602: 84ae mv s1,a1 + c00397d2: 84ae mv s1,a1 js_string_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41909 - c0039604: 01379663 bne a5,s3,c0039610 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41938 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41917 + c00397d4: 01379663 bne a5,s3,c00397e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41946 return JS_EXCEPTION; - c0039608: e102 sd zero,128(sp) - c003960a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41942 + c00397d8: e102 sd zero,128(sp) + c00397da: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41950 return result; - c003960c: e53e sd a5,136(sp) - c003960e: a01d j c0039634 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41911 + c00397dc: e53e sd a5,136(sp) + c00397de: a01d j c0039804 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41919 if (atom == JS_ATOM_Symbol_matchAll) { - c0039610: 0ce00793 li a5,206 - c0039614: 02f91963 bne s2,a5,c0039646 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41912 + c00397e0: 0ce00793 li a5,206 + c00397e4: 02f91963 bne s2,a5,c0039816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41920 if (check_regexp_g_flag(ctx, regexp) < 0) { - c0039618: 7582 ld a1,32(sp) - c003961a: 7622 ld a2,40(sp) - c003961c: 8522 mv a0,s0 - c003961e: feee10ef jal ra,c001ae0c - c0039622: 02055263 bgez a0,c0039646 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41913 + c00397e8: 7582 ld a1,32(sp) + c00397ea: 7622 ld a2,40(sp) + c00397ec: 8522 mv a0,s0 + c00397ee: feee10ef jal ra,c001afdc + c00397f2: 02055263 bgez a0,c0039816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41921 JS_FreeValue(ctx, matcher); - c0039626: 75c2 ld a1,48(sp) - c0039628: 7662 ld a2,56(sp) - c003962a: 8522 mv a0,s0 - c003962c: d0cce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41914 + c00397f6: 75c2 ld a1,48(sp) + c00397f8: 7662 ld a2,56(sp) + c00397fa: 8522 mv a0,s0 + c00397fc: c2ace0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41922 return JS_EXCEPTION; - c0039630: e102 sd zero,128(sp) - c0039632: e54e sd s3,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41943 (discriminator 1) -} - c0039634: 70ae ld ra,232(sp) - c0039636: 740e ld s0,224(sp) - c0039638: 650a ld a0,128(sp) - c003963a: 65aa ld a1,136(sp) - c003963c: 64ee ld s1,216(sp) - c003963e: 694e ld s2,208(sp) - c0039640: 69ae ld s3,200(sp) - c0039642: 616d addi sp,sp,240 - c0039644: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41917 + c0039800: e102 sd zero,128(sp) + c0039802: e54e sd s3,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41951 (discriminator 1) +} + c0039804: 70ae ld ra,232(sp) + c0039806: 740e ld s0,224(sp) + c0039808: 650a ld a0,128(sp) + c003980a: 65aa ld a1,136(sp) + c003980c: 64ee ld s1,216(sp) + c003980e: 694e ld s2,208(sp) + c0039810: 69ae ld s3,200(sp) + c0039812: 616d addi sp,sp,240 + c0039814: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41925 if (!JS_IsUndefined(matcher) && !JS_IsNull(matcher)) { - c0039646: 34f9 addiw s1,s1,-2 - c0039648: 4785 li a5,1 - c003964a: 0097fc63 bgeu a5,s1,c0039662 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41918 + c0039816: 34f9 addiw s1,s1,-2 + c0039818: 4785 li a5,1 + c003981a: 0097fc63 bgeu a5,s1,c0039832 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41926 return JS_CallFree(ctx, matcher, regexp, 1, &O); - c003964e: 7682 ld a3,32(sp) - c0039650: 7722 ld a4,40(sp) - c0039652: 75c2 ld a1,48(sp) - c0039654: 7662 ld a2,56(sp) - c0039656: 01010813 addi a6,sp,16 - c003965a: 8522 mv a0,s0 - c003965c: 9b0d80ef jal ra,c001180c - c0039660: bfa5 j c00395d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41921 + c003981e: 7682 ld a3,32(sp) + c0039820: 7722 ld a4,40(sp) + c0039822: 75c2 ld a1,48(sp) + c0039824: 7662 ld a2,56(sp) + c0039826: 01010813 addi a6,sp,16 + c003982a: 8522 mv a0,s0 + c003982c: 8ced80ef jal ra,c00118fa + c0039830: bfa5 j c00397a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41929 S = JS_ToString(ctx, O); - c0039662: 65c2 ld a1,16(sp) - c0039664: 6662 ld a2,24(sp) - c0039666: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41922 + c0039832: 65c2 ld a1,16(sp) + c0039834: 6662 ld a2,24(sp) + c0039836: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41930 if (JS_IsException(S)) - c0039668: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41921 + c0039838: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41929 S = JS_ToString(ctx, O); - c003966a: 96ce10ef jal ra,c001a7d6 - c003966e: e4ae sd a1,72(sp) - c0039670: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41922 + c003983a: 96ce10ef jal ra,c001a9a6 + c003983e: e4ae sd a1,72(sp) + c0039840: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41930 if (JS_IsException(S)) - c0039672: 2581 sext.w a1,a1 - c0039674: f9358ae3 beq a1,s3,c0039608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41925 + c0039842: 2581 sext.w a1,a1 + c0039844: f9358ae3 beq a1,s3,c00397d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41933 args[0] = regexp; - c0039678: 7782 ld a5,32(sp) - c003967a: f13e sd a5,160(sp) - c003967c: 77a2 ld a5,40(sp) - c003967e: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41927 + c0039848: 7782 ld a5,32(sp) + c003984a: f13e sd a5,160(sp) + c003984c: 77a2 ld a5,40(sp) + c003984e: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41935 if (atom == JS_ATOM_Symbol_matchAll) { - c0039680: 0ce00793 li a5,206 - c0039684: 04f90a63 beq s2,a5,c00396d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41926 + c0039850: 0ce00793 li a5,206 + c0039854: 04f90a63 beq s2,a5,c00398a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41934 str = JS_UNDEFINED; - c0039688: f882 sd zero,112(sp) - c003968a: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41924 + c0039858: f882 sd zero,112(sp) + c003985a: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41932 args_len = 1; - c003968c: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41933 + c003985c: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41941 rx = JS_CallConstructor(ctx, ctx->regexp_ctor, args_len, args); - c003968e: 6050 ld a2,128(s0) - c0039690: 7c2c ld a1,120(s0) - c0039692: 1118 addi a4,sp,160 - c0039694: 8522 mv a0,s0 - c0039696: e11fe0ef jal ra,c00384a6 - c003969a: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41934 + c003985e: 6050 ld a2,128(s0) + c0039860: 7c2c ld a1,120(s0) + c0039862: 1118 addi a4,sp,160 + c0039864: 8522 mv a0,s0 + c0039866: e11fe0ef jal ra,c0038676 + c003986a: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41942 JS_FreeValue(ctx, str); - c003969c: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41933 + c003986c: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41941 rx = JS_CallConstructor(ctx, ctx->regexp_ctor, args_len, args); - c003969e: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41934 + c003986e: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41942 JS_FreeValue(ctx, str); - c00396a0: 8626 mv a2,s1 - c00396a2: 8522 mv a0,s0 - c00396a4: c94ce0ef jal ra,c0007b38 + c0039870: 8626 mv a2,s1 + c0039872: 8522 mv a0,s0 + c0039874: bb2ce0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00396a8: 6666 ld a2,88(sp) + c0039878: 6666 ld a2,88(sp) js_string_match(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41935 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41943 if (JS_IsException(rx)) { - c00396aa: 4799 li a5,6 - c00396ac: 0006071b sext.w a4,a2 - c00396b0: 04f70163 beq a4,a5,c00396f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41940 + c003987a: 4799 li a5,6 + c003987c: 0006071b sext.w a4,a2 + c0039880: 04f70163 beq a4,a5,c00398c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41948 result = JS_InvokeFree(ctx, rx, atom, 1, (JSValueConst *)&S); - c00396b4: 65c6 ld a1,80(sp) - c00396b6: 009c addi a5,sp,64 - c00396b8: 4705 li a4,1 - c00396ba: 86ca mv a3,s2 - c00396bc: 8522 mv a0,s0 - c00396be: c97fc0ef jal ra,c0036354 - c00396c2: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41941 + c0039884: 65c6 ld a1,80(sp) + c0039886: 009c addi a5,sp,64 + c0039888: 4705 li a4,1 + c003988a: 86ca mv a3,s2 + c003988c: 8522 mv a0,s0 + c003988e: c97fc0ef jal ra,c0036524 + c0039892: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41949 JS_FreeValue(ctx, S); - c00396c4: 6626 ld a2,72(sp) - c00396c6: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41940 + c0039894: 6626 ld a2,72(sp) + c0039896: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41948 result = JS_InvokeFree(ctx, rx, atom, 1, (JSValueConst *)&S); - c00396c8: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41941 + c0039898: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41949 JS_FreeValue(ctx, S); - c00396ca: 8522 mv a0,s0 - c00396cc: c6cce0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41942 + c003989a: 8522 mv a0,s0 + c003989c: b8ace0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41950 return result; - c00396d0: 7786 ld a5,96(sp) - c00396d2: e13e sd a5,128(sp) - c00396d4: 77a6 ld a5,104(sp) - c00396d6: bf1d j c003960c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41928 + c00398a0: 7786 ld a5,96(sp) + c00398a2: e13e sd a5,128(sp) + c00398a4: 77a6 ld a5,104(sp) + c00398a6: bf1d j c00397dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41936 str = JS_NewString(ctx, "g"); - c00396d8: 00028597 auipc a1,0x28 - c00396dc: 51058593 addi a1,a1,1296 # c0061be8 - c00396e0: 8522 mv a0,s0 - c00396e2: b40e00ef jal ra,c0019a22 - c00396e6: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41929 + c00398a8: 00028597 auipc a1,0x28 + c00398ac: 5a058593 addi a1,a1,1440 # c0061e48 + c00398b0: 8522 mv a0,s0 + c00398b2: b40e00ef jal ra,c0019bf2 + c00398b6: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41937 if (JS_IsException(str)) - c00396e8: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41928 + c00398b8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41936 str = JS_NewString(ctx, "g"); - c00396ec: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41929 - if (JS_IsException(str)) - c00396ee: 01379863 bne a5,s3,c00396fe + c00398bc: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41937 + if (JS_IsException(str)) + c00398be: 01379863 bne a5,s3,c00398ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41945 JS_FreeValue(ctx, S); - c00396f2: 6586 ld a1,64(sp) - c00396f4: 6626 ld a2,72(sp) - c00396f6: 8522 mv a0,s0 - c00396f8: c40ce0ef jal ra,c0007b38 - c00396fc: b731 j c0039608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41931 + c00398c2: 6586 ld a1,64(sp) + c00398c4: 6626 ld a2,72(sp) + c00398c6: 8522 mv a0,s0 + c00398c8: b5ece0ef jal ra,c0007c26 + c00398cc: b731 j c00397d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:41939 args[args_len++] = (JSValueConst)str; - c00396fe: f92a sd a0,176(sp) - c0039700: fd2e sd a1,184(sp) - c0039702: 4689 li a3,2 - c0039704: b769 j c003968e + c00398ce: f92a sd a0,176(sp) + c00398d0: fd2e sd a1,184(sp) + c00398d2: 4689 li a3,2 + c00398d4: b769 j c003985e -00000000c0039706 : +00000000c00398d6 : JS_Call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18674 { - c0039706: 711d addi sp,sp,-96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18667 + c00398d6: 711d addi sp,sp,-96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18675 return JS_CallInternal(ctx, func_obj, this_obj, JS_UNDEFINED, - c0039708: 4889 li a7,2 - c003970a: e446 sd a7,8(sp) - c003970c: e042 sd a6,0(sp) - c003970e: 88be mv a7,a5 - c0039710: 480d li a6,3 - c0039712: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18666 -{ - c0039714: ec86 sd ra,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18667 + c00398d8: 4889 li a7,2 + c00398da: e446 sd a7,8(sp) + c00398dc: e042 sd a6,0(sp) + c00398de: 88be mv a7,a5 + c00398e0: 480d li a6,3 + c00398e2: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18674 +{ + c00398e4: ec86 sd ra,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18675 return JS_CallInternal(ctx, func_obj, this_obj, JS_UNDEFINED, - c0039716: 887d10ef jal ra,c000af9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18669 + c00398e6: fa4d10ef jal ra,c000b08a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:18677 } - c003971a: 60e6 ld ra,88(sp) - c003971c: 6125 addi sp,sp,96 - c003971e: 8082 ret + c00398ea: 60e6 ld ra,88(sp) + c00398ec: 6125 addi sp,sp,96 + c00398ee: 8082 ret -00000000c0039720 : +00000000c00398f0 : js_function_apply(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38466 { - c0039720: 7119 addi sp,sp,-128 - c0039722: f8a2 sd s0,112(sp) - c0039724: f4a6 sd s1,104(sp) - c0039726: f0ca sd s2,96(sp) - c0039728: fc86 sd ra,120(sp) - c003972a: 842a mv s0,a0 - c003972c: e02e sd a1,0(sp) - c003972e: e432 sd a2,8(sp) - c0039730: 84ba mv s1,a4 - c0039732: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38463 + c00398f0: 7119 addi sp,sp,-128 + c00398f2: f8a2 sd s0,112(sp) + c00398f4: f4a6 sd s1,104(sp) + c00398f6: f0ca sd s2,96(sp) + c00398f8: fc86 sd ra,120(sp) + c00398fa: 842a mv s0,a0 + c00398fc: e02e sd a1,0(sp) + c00398fe: e432 sd a2,8(sp) + c0039900: 84ba mv s1,a4 + c0039902: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38471 if (check_function(ctx, this_val)) - c0039734: d75d90ef jal ra,c00134a8 - c0039738: cd01 beqz a0,c0039750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38464 + c0039904: c93d90ef jal ra,c0013596 + c0039908: cd01 beqz a0,c0039920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38472 return JS_EXCEPTION; - c003973a: e882 sd zero,80(sp) - c003973c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38481 + c003990a: e882 sd zero,80(sp) + c003990c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 } - c003973e: 70e6 ld ra,120(sp) - c0039740: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38480 + c003990e: 70e6 ld ra,120(sp) + c0039910: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38488 return ret; - c0039742: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38481 -} - c0039744: 6546 ld a0,80(sp) - c0039746: 65e6 ld a1,88(sp) - c0039748: 74a6 ld s1,104(sp) - c003974a: 7906 ld s2,96(sp) - c003974c: 6109 addi sp,sp,128 - c003974e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38466 + c0039912: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 +} + c0039914: 6546 ld a0,80(sp) + c0039916: 65e6 ld a1,88(sp) + c0039918: 74a6 ld s1,104(sp) + c003991a: 7906 ld s2,96(sp) + c003991c: 6109 addi sp,sp,128 + c003991e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38474 array_arg = argv[1]; - c0039750: 689c ld a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38465 + c0039920: 689c ld a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38473 this_arg = argv[0]; - c0039752: 6094 ld a3,0(s1) - c0039754: 6498 ld a4,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38466 + c0039922: 6094 ld a3,0(s1) + c0039924: 6498 ld a4,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38474 array_arg = argv[1]; - c0039756: f83e sd a5,48(sp) - c0039758: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38465 + c0039926: f83e sd a5,48(sp) + c0039928: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38473 this_arg = argv[0]; - c003975a: f036 sd a3,32(sp) - c003975c: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38466 + c003992a: f036 sd a3,32(sp) + c003992c: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38474 array_arg = argv[1]; - c003975e: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38467 + c003992e: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38475 if ((JS_VALUE_GET_TAG(array_arg) == JS_TAG_UNDEFINED || - c0039760: 4605 li a2,1 - c0039762: 37f9 addiw a5,a5,-2 - c0039764: 02f66163 bltu a2,a5,c0039786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38468 + c0039930: 4605 li a2,1 + c0039932: 37f9 addiw a5,a5,-2 + c0039934: 02f66163 bltu a2,a5,c0039956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38476 JS_VALUE_GET_TAG(array_arg) == JS_TAG_NULL) && magic != 2) { - c0039768: 4789 li a5,2 - c003976a: 00f90e63 beq s2,a5,c0039786 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38469 + c0039938: 4789 li a5,2 + c003993a: 00f90e63 beq s2,a5,c0039956 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 return JS_Call(ctx, this_val, this_arg, 0, NULL); - c003976e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38481 + c003993e: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 } - c0039770: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38469 + c0039940: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 return JS_Call(ctx, this_val, this_arg, 0, NULL); - c0039772: 6582 ld a1,0(sp) - c0039774: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38481 -} - c0039776: 70e6 ld ra,120(sp) - c0039778: 74a6 ld s1,104(sp) - c003977a: 7906 ld s2,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38469 + c0039942: 6582 ld a1,0(sp) + c0039944: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 +} + c0039946: 70e6 ld ra,120(sp) + c0039948: 74a6 ld s1,104(sp) + c003994a: 7906 ld s2,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 return JS_Call(ctx, this_val, this_arg, 0, NULL); - c003977c: 4801 li a6,0 - c003977e: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38481 + c003994c: 4801 li a6,0 + c003994e: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 } - c0039780: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38469 + c0039950: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 return JS_Call(ctx, this_val, this_arg, 0, NULL); - c0039782: f85ff06f j c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38471 + c0039952: f85ff06f j c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38479 tab = build_arg_list(ctx, &len, array_arg); - c0039786: 7642 ld a2,48(sp) - c0039788: 76e2 ld a3,56(sp) - c003978a: 086c addi a1,sp,28 - c003978c: 8522 mv a0,s0 - c003978e: 920f80ef jal ra,c00318ae - c0039792: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38472 + c0039956: 7642 ld a2,48(sp) + c0039958: 76e2 ld a3,56(sp) + c003995a: 086c addi a1,sp,28 + c003995c: 8522 mv a0,s0 + c003995e: 920f80ef jal ra,c0031a7e + c0039962: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38480 if (!tab) - c0039794: d15d beqz a0,c003973a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38474 + c0039964: d15d beqz a0,c003990a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38482 if (magic & 1) { - c0039796: 00197913 andi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38475 + c0039966: 00197913 andi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38483 ret = JS_CallConstructor2(ctx, this_val, this_arg, len, (JSValueConst *)tab); - c003979a: 882a mv a6,a0 - c003979c: 47f2 lw a5,28(sp) - c003979e: 7682 ld a3,32(sp) - c00397a0: 7722 ld a4,40(sp) - c00397a2: 6582 ld a1,0(sp) - c00397a4: 6622 ld a2,8(sp) - c00397a6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38474 + c003996a: 882a mv a6,a0 + c003996c: 47f2 lw a5,28(sp) + c003996e: 7682 ld a3,32(sp) + c0039970: 7722 ld a4,40(sp) + c0039972: 6582 ld a1,0(sp) + c0039974: 6622 ld a2,8(sp) + c0039976: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38482 if (magic & 1) { - c00397a8: 00090f63 beqz s2,c00397c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38475 + c0039978: 00090f63 beqz s2,c0039996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38483 ret = JS_CallConstructor2(ctx, this_val, this_arg, len, (JSValueConst *)tab); - c00397ac: c45fe0ef jal ra,c00383f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38479 + c003997c: c45fe0ef jal ra,c00385c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38487 free_arg_list(ctx, tab, len); - c00397b0: 4672 lw a2,28(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 + c0039980: 4672 lw a2,28(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38485 ret = JS_Call(ctx, this_val, this_arg, len, (JSValueConst *)tab); - c00397b2: e0aa sd a0,64(sp) - c00397b4: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38479 + c0039982: e0aa sd a0,64(sp) + c0039984: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38487 free_arg_list(ctx, tab, len); - c00397b6: 8522 mv a0,s0 - c00397b8: 85a6 mv a1,s1 - c00397ba: e3cce0ef jal ra,c0007df6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38480 + c0039986: 8522 mv a0,s0 + c0039988: 85a6 mv a1,s1 + c003998a: d5ace0ef jal ra,c0007ee4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38488 return ret; - c00397be: 6786 ld a5,64(sp) - c00397c0: e8be sd a5,80(sp) - c00397c2: 67a6 ld a5,72(sp) - c00397c4: bfad j c003973e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38477 + c003998e: 6786 ld a5,64(sp) + c0039990: e8be sd a5,80(sp) + c0039992: 67a6 ld a5,72(sp) + c0039994: bfad j c003990e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38485 ret = JS_Call(ctx, this_val, this_arg, len, (JSValueConst *)tab); - c00397c6: f41ff0ef jal ra,c0039706 - c00397ca: b7dd j c00397b0 + c0039996: f41ff0ef jal ra,c00398d6 + c003999a: b7dd j c0039980 -00000000c00397cc : +00000000c003999c : js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44502 -{ - c00397cc: bc010113 addi sp,sp,-1088 - c00397d0: 41313c23 sd s3,1048(sp) - c00397d4: 42113c23 sd ra,1080(sp) - c00397d8: 42813823 sd s0,1072(sp) - c00397dc: 42913423 sd s1,1064(sp) - c00397e0: 43213023 sd s2,1056(sp) - c00397e4: 41413823 sd s4,1040(sp) - c00397e8: 41513423 sd s5,1032(sp) - c00397ec: 41613023 sd s6,1024(sp) - c00397f0: 3f713c23 sd s7,1016(sp) - c00397f4: 3f813823 sd s8,1008(sp) - c00397f8: 3f913423 sd s9,1000(sp) - c00397fc: 3fa13023 sd s10,992(sp) - c0039800: 3db13c23 sd s11,984(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44504 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44510 +{ + c003999c: bc010113 addi sp,sp,-1088 + c00399a0: 41313c23 sd s3,1048(sp) + c00399a4: 42113c23 sd ra,1080(sp) + c00399a8: 42813823 sd s0,1072(sp) + c00399ac: 42913423 sd s1,1064(sp) + c00399b0: 43213023 sd s2,1056(sp) + c00399b4: 41413823 sd s4,1040(sp) + c00399b8: 41513423 sd s5,1032(sp) + c00399bc: 41613023 sd s6,1024(sp) + c00399c0: 3f713c23 sd s7,1016(sp) + c00399c4: 3f813823 sd s8,1008(sp) + c00399c8: 3f913423 sd s9,1000(sp) + c00399cc: 3fa13023 sd s10,992(sp) + c00399d0: 3db13c23 sd s11,984(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44512 JSValueConst rx = this_val, rep = argv[1]; - c0039804: 6b1c ld a5,16(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44502 + c00399d4: 6b1c ld a5,16(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44510 { - c0039806: 89ba mv s3,a4 - c0039808: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44504 + c00399d6: 89ba mv s3,a4 + c00399d8: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44512 JSValueConst rx = this_val, rep = argv[1]; - c003980a: e93e sd a5,144(sp) - c003980c: 6f1c ld a5,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44502 + c00399da: e93e sd a5,144(sp) + c00399dc: 6f1c ld a5,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44510 { - c003980e: f4b2 sd a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44504 + c00399de: f4b2 sd a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44512 JSValueConst rx = this_val, rep = argv[1]; - c0039810: e12e sd a1,128(sp) - c0039812: ed3e sd a5,152(sp) - c0039814: e532 sd a2,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44514 + c00399e0: e12e sd a1,128(sp) + c00399e2: ed3e sd a5,152(sp) + c00399e4: e532 sd a2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 if (!JS_IsObject(rx)) - c0039816: 0006071b sext.w a4,a2 - c003981a: 57fd li a5,-1 - c003981c: 04f70063 beq a4,a5,c003985c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44691 + c00399e6: 0006071b sext.w a4,a2 + c00399ea: 57fd li a5,-1 + c00399ec: 04f70063 beq a4,a5,c0039a2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44699 } - c0039820: 43013403 ld s0,1072(sp) - c0039824: 43813083 ld ra,1080(sp) - c0039828: 42813483 ld s1,1064(sp) - c003982c: 42013903 ld s2,1056(sp) - c0039830: 41813983 ld s3,1048(sp) - c0039834: 41013a03 ld s4,1040(sp) - c0039838: 40813a83 ld s5,1032(sp) - c003983c: 40013b03 ld s6,1024(sp) - c0039840: 3f813b83 ld s7,1016(sp) - c0039844: 3f013c03 ld s8,1008(sp) - c0039848: 3e813c83 ld s9,1000(sp) - c003984c: 3e013d03 ld s10,992(sp) - c0039850: 3d813d83 ld s11,984(sp) - c0039854: 44010113 addi sp,sp,1088 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44515 + c00399f0: 43013403 ld s0,1072(sp) + c00399f4: 43813083 ld ra,1080(sp) + c00399f8: 42813483 ld s1,1064(sp) + c00399fc: 42013903 ld s2,1056(sp) + c0039a00: 41813983 ld s3,1048(sp) + c0039a04: 41013a03 ld s4,1040(sp) + c0039a08: 40813a83 ld s5,1032(sp) + c0039a0c: 40013b03 ld s6,1024(sp) + c0039a10: 3f813b83 ld s7,1016(sp) + c0039a14: 3f013c03 ld s8,1008(sp) + c0039a18: 3e813c83 ld s9,1000(sp) + c0039a1c: 3e013d03 ld s10,992(sp) + c0039a20: 3d813d83 ld s11,984(sp) + c0039a24: 44010113 addi sp,sp,1088 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44523 return JS_ThrowTypeErrorNotAnObject(ctx); - c0039858: 920da06f j c0013978 - c003985c: 8932 mv s2,a2 - c003985e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44517 + c0039a28: 83eda06f j c0013a66 + c0039a2c: 8932 mv s2,a2 + c0039a2e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 string_buffer_init(ctx, b, 0); - c0039860: 4601 li a2,0 - c0039862: 1d8c addi a1,sp,752 - c0039864: 842a mv s0,a0 - c0039866: b68df0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44527 + c0039a30: 4601 li a2,0 + c0039a32: 1d8c addi a1,sp,752 + c0039a34: 842a mv s0,a0 + c0039a36: b68df0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 str = JS_ToString(ctx, argv[0]); - c003986a: 0009b583 ld a1,0(s3) - c003986e: 0089b603 ld a2,8(s3) + c0039a3a: 0009b583 ld a1,0(s3) + c0039a3e: 0089b603 ld a2,8(s3) value_buffer_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44438 b->len = 0; - c0039872: 4785 li a5,1 - c0039874: 178a slli a5,a5,0x22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44433 + c0039a42: 4785 li a5,1 + c0039a44: 178a slli a5,a5,0x22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44441 b->arr = b->def; - c0039876: 38010c13 addi s8,sp,896 + c0039a46: 38010c13 addi s8,sp,896 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 str = JS_ToString(ctx, argv[0]); - c003987a: 8522 mv a0,s0 + c0039a4a: 8522 mv a0,s0 value_buffer_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44430 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44438 b->len = 0; - c003987c: 3cf13023 sd a5,960(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44429 + c0039a4c: 3cf13023 sd a5,960(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44437 b->ctx = ctx; - c0039880: 36813823 sd s0,880(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44432 + c0039a50: 36813823 sd s0,880(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44440 b->error_status = 0; - c0039884: 3c012423 sw zero,968(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44433 + c0039a54: 3c012423 sw zero,968(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44441 b->arr = b->def; - c0039888: 37813c23 sd s8,888(sp) + c0039a58: 37813c23 sd s8,888(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c003988c: f182 sd zero,224(sp) - c003988e: f582 sd zero,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c0039a5c: f182 sd zero,224(sp) + c0039a5e: f582 sd zero,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c0039890: f982 sd zero,240(sp) - c0039892: fd82 sd zero,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 + c0039a60: f982 sd zero,240(sp) + c0039a62: fd82 sd zero,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c0039894: e202 sd zero,256(sp) - c0039896: e602 sd zero,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44527 + c0039a64: e202 sd zero,256(sp) + c0039a66: e602 sd zero,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 str = JS_ToString(ctx, argv[0]); - c0039898: f3fe00ef jal ra,c001a7d6 - c003989c: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 + c0039a68: f3fe00ef jal ra,c001a9a6 + c0039a6c: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44536 if (JS_IsException(str)) - c003989e: 47a2 lw a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44527 + c0039a6e: 47a2 lw a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 str = JS_ToString(ctx, argv[0]); - c00398a0: f92a sd a0,176(sp) - c00398a2: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 + c0039a70: f92a sd a0,176(sp) + c0039a72: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44536 if (JS_IsException(str)) - c00398a4: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44527 + c0039a74: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 str = JS_ToString(ctx, argv[0]); - c00398a6: 8daa mv s11,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 + c0039a76: 8daa mv s11,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44536 if (JS_IsException(str)) - c00398a8: 21378ee3 beq a5,s3,c003a2c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 + c0039a78: 21378ee3 beq a5,s3,c003a494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44541 functionalReplace = JS_IsFunction(ctx, rep); - c00398ac: 65ca ld a1,144(sp) - c00398ae: 666a ld a2,152(sp) - c00398b0: 8522 mv a0,s0 - c00398b2: e2bd00ef jal ra,c000a6dc - c00398b6: e4aa sd a0,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44534 + c0039a7c: 65ca ld a1,144(sp) + c0039a7e: 666a ld a2,152(sp) + c0039a80: 8522 mv a0,s0 + c0039a82: d49d00ef jal ra,c000a7ca + c0039a86: e4aa sd a0,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44542 if (!functionalReplace) { - c00398b8: e50d bnez a0,c00398e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 + c0039a88: e50d bnez a0,c0039ab2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44543 rep_val = JS_ToString(ctx, rep); - c00398ba: 65ca ld a1,144(sp) - c00398bc: 666a ld a2,152(sp) - c00398be: 8522 mv a0,s0 - c00398c0: f17e00ef jal ra,c001a7d6 - c00398c4: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44536 + c0039a8a: 65ca ld a1,144(sp) + c0039a8c: 666a ld a2,152(sp) + c0039a8e: 8522 mv a0,s0 + c0039a90: f17e00ef jal ra,c001a9a6 + c0039a94: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44544 if (JS_IsException(rep_val)) - c00398c6: 5782 lw a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44535 + c0039a96: 5782 lw a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44543 rep_val = JS_ToString(ctx, rep); - c00398c8: e1aa sd a0,192(sp) - c00398ca: e5ae sd a1,200(sp) - c00398cc: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44536 + c0039a98: e1aa sd a0,192(sp) + c0039a9a: e5ae sd a1,200(sp) + c0039a9c: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44544 if (JS_IsException(rep_val)) - c00398ce: 01379d63 bne a5,s3,c00398e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 + c0039a9e: 01379d63 bne a5,s3,c0039ab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c00398d2: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c0039aa2: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c00398d4: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 + c0039aa4: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c00398d6: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44521 + c0039aa6: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44529 matched = JS_UNDEFINED; - c00398d8: 498d li s3,3 - c00398da: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44523 + c0039aa8: 498d li s3,3 + c0039aaa: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44531 flags = JS_UNDEFINED; - c00398dc: 478d li a5,3 - c00398de: 1f70006f j c003a2d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44520 + c0039aac: 478d li a5,3 + c0039aae: 1f70006f j c003a4a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 rep_val = JS_UNDEFINED; - c00398e2: 478d li a5,3 - c00398e4: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 + c0039ab2: 478d li a5,3 + c0039ab4: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44540 rp = NULL; - c00398e6: ec02 sd zero,24(sp) + c0039ab6: ec02 sd zero,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c00398e8: 87ca mv a5,s2 - c00398ea: 4801 li a6,0 - c00398ec: 8726 mv a4,s1 - c00398ee: 06e00693 li a3,110 - c00398f2: 85a6 mv a1,s1 - c00398f4: 864a mv a2,s2 - c00398f6: 8522 mv a0,s0 - c00398f8: 30913823 sd s1,784(sp) - c00398fc: 31213c23 sd s2,792(sp) - c0039900: f43d70ef jal ra,c0011842 - c0039904: e82e sd a1,16(sp) + c0039ab8: 87ca mv a5,s2 + c0039aba: 4801 li a6,0 + c0039abc: 8726 mv a4,s1 + c0039abe: 06e00693 li a3,110 + c0039ac2: 85a6 mv a1,s1 + c0039ac4: 864a mv a2,s2 + c0039ac6: 8522 mv a0,s0 + c0039ac8: 30913823 sd s1,784(sp) + c0039acc: 31213c23 sd s2,792(sp) + c0039ad0: e61d70ef jal ra,c0011930 + c0039ad4: e82e sd a1,16(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44542 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44550 if (JS_IsException(flags)) - c0039906: 47c2 lw a5,16(sp) + c0039ad6: 47c2 lw a5,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039908: fbaa sd a0,496(sp) - c003990a: ffae sd a1,504(sp) - c003990c: f42a sd a0,40(sp) + c0039ad8: fbaa sd a0,496(sp) + c0039ada: ffae sd a1,504(sp) + c0039adc: f42a sd a0,40(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44542 - c003990e: 4999 li s3,6 - c0039910: 1d3785e3 beq a5,s3,c003a2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44544 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44550 + c0039ade: 4999 li s3,6 + c0039ae0: 1d3785e3 beq a5,s3,c003a4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44552 flags = JS_ToStringFree(ctx, flags); - c0039914: 6642 ld a2,16(sp) - c0039916: 85aa mv a1,a0 - c0039918: 8522 mv a0,s0 - c003991a: ec7e00ef jal ra,c001a7e0 - c003991e: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44545 + c0039ae4: 6642 ld a2,16(sp) + c0039ae6: 85aa mv a1,a0 + c0039ae8: 8522 mv a0,s0 + c0039aea: ec7e00ef jal ra,c001a9b0 + c0039aee: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44553 if (JS_IsException(flags)) - c0039920: 47c2 lw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44544 + c0039af0: 47c2 lw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44552 flags = JS_ToStringFree(ctx, flags); - c0039922: f12a sd a0,160(sp) - c0039924: f52e sd a1,168(sp) - c0039926: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44545 + c0039af2: f12a sd a0,160(sp) + c0039af4: f52e sd a1,168(sp) + c0039af6: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44553 if (JS_IsException(flags)) - c0039928: 1b3789e3 beq a5,s3,c003a2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44551 + c0039af8: 1b3789e3 beq a5,s3,c003a4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44559 is_global = (-1 != string_indexof_char(p, 'g', 0)); - c003992c: 4601 li a2,0 - c003992e: 06700593 li a1,103 - c0039932: d59ca0ef jal ra,c000468a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44552 + c0039afc: 4601 li a2,0 + c0039afe: 06700593 li a1,103 + c0039b02: b89ca0ef jal ra,c000468a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 if (is_global) { - c0039936: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44551 + c0039b06: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44559 is_global = (-1 != string_indexof_char(p, 'g', 0)); - c0039938: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44550 + c0039b08: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44558 fullUnicode = 0; - c003993a: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44552 + c0039b0a: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 if (is_global) { - c003993c: 04f50b63 beq a0,a5,c0039992 + c0039b0c: 04f50b63 beq a0,a5,c0039b62 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039940: 4801 li a6,0 - c0039942: 8726 mv a4,s1 - c0039944: 87ca mv a5,s2 - c0039946: 07000693 li a3,112 - c003994a: 864a mv a2,s2 - c003994c: 85a6 mv a1,s1 - c003994e: 8522 mv a0,s0 - c0039950: 30913823 sd s1,784(sp) - c0039954: 31213c23 sd s2,792(sp) - c0039958: eebd70ef jal ra,c0011842 - c003995c: 862e mv a2,a1 - c003995e: 20a13023 sd a0,512(sp) - c0039962: 20b13423 sd a1,520(sp) - c0039966: fa2a sd a0,304(sp) - c0039968: fe2e sd a1,312(sp) + c0039b10: 4801 li a6,0 + c0039b12: 8726 mv a4,s1 + c0039b14: 87ca mv a5,s2 + c0039b16: 07000693 li a3,112 + c0039b1a: 864a mv a2,s2 + c0039b1c: 85a6 mv a1,s1 + c0039b1e: 8522 mv a0,s0 + c0039b20: 30913823 sd s1,784(sp) + c0039b24: 31213c23 sd s2,792(sp) + c0039b28: e09d70ef jal ra,c0011930 + c0039b2c: 862e mv a2,a1 + c0039b2e: 20a13023 sd a0,512(sp) + c0039b32: 20b13423 sd a1,520(sp) + c0039b36: fa2a sd a0,304(sp) + c0039b38: fe2e sd a1,312(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44553 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44561 fullUnicode = JS_ToBoolFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_unicode)); - c003996a: 85aa mv a1,a0 - c003996c: 8522 mv a0,s0 - c003996e: cf6ce0ef jal ra,c0007e64 - c0039972: 8baa mv s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44554 + c0039b3a: 85aa mv a1,a0 + c0039b3c: 8522 mv a0,s0 + c0039b3e: c14ce0ef jal ra,c0007f52 + c0039b42: 8baa mv s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44562 if (fullUnicode < 0) - c0039974: 160543e3 bltz a0,c003a2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44556 + c0039b44: 160543e3 bltz a0,c003a4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44564 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, JS_NewInt32(ctx, 0)) < 0) - c0039978: 658a ld a1,128(sp) - c003997a: 662a ld a2,136(sp) - c003997c: 4701 li a4,0 - c003997e: 4781 li a5,0 - c0039980: 05600693 li a3,86 - c0039984: 8522 mv a0,s0 - c0039986: e282 sd zero,320(sp) - c0039988: e682 sd zero,328(sp) - c003998a: f6ef60ef jal ra,c00300f8 - c003998e: 140546e3 bltz a0,c003a2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 + c0039b48: 658a ld a1,128(sp) + c0039b4a: 662a ld a2,136(sp) + c0039b4c: 4701 li a4,0 + c0039b4e: 4781 li a5,0 + c0039b50: 05600693 li a3,86 + c0039b54: 8522 mv a0,s0 + c0039b56: e282 sd zero,320(sp) + c0039b58: e682 sd zero,328(sp) + c0039b5a: f6ef60ef jal ra,c00302c8 + c0039b5e: 140546e3 bltz a0,c003a4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 if (rp && rp->len == 0 && is_global && js_is_standard_regexp(ctx, rx)) { - c0039992: 67e2 ld a5,24(sp) - c0039994: 140789e3 beqz a5,c003a2e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 (discriminator 1) - c0039998: 43dc lw a5,4(a5) - c003999a: 1786 slli a5,a5,0x21 - c003999c: 140795e3 bnez a5,c003a2e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 (discriminator 2) - c00399a0: 57fd li a5,-1 - c00399a2: 14fb02e3 beq s6,a5,c003a2e6 + c0039b62: 67e2 ld a5,24(sp) + c0039b64: 140789e3 beqz a5,c003a4b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 (discriminator 1) + c0039b68: 43dc lw a5,4(a5) + c0039b6a: 1786 slli a5,a5,0x21 + c0039b6c: 140795e3 bnez a5,c003a4b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 (discriminator 2) + c0039b70: 57fd li a5,-1 + c0039b72: 14fb02e3 beq s6,a5,c003a4b6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 3) - c00399a6: 87ca mv a5,s2 - c00399a8: 864a mv a2,s2 - c00399aa: 4801 li a6,0 - c00399ac: 8726 mv a4,s1 - c00399ae: 03d00693 li a3,61 - c00399b2: 85a6 mv a1,s1 - c00399b4: 8522 mv a0,s0 - c00399b6: 2c913823 sd s1,720(sp) - c00399ba: 2d213c23 sd s2,728(sp) + c0039b76: 87ca mv a5,s2 + c0039b78: 864a mv a2,s2 + c0039b7a: 4801 li a6,0 + c0039b7c: 8726 mv a4,s1 + c0039b7e: 03d00693 li a3,61 + c0039b82: 85a6 mv a1,s1 + c0039b84: 8522 mv a0,s0 + c0039b86: 2c913823 sd s1,720(sp) + c0039b8a: 2d213c23 sd s2,728(sp) js_is_standard_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44483 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44491 (discriminator 3) val = JS_GetProperty(ctx, rx, JS_ATOM_constructor); - c00399be: 30913823 sd s1,784(sp) - c00399c2: 31213c23 sd s2,792(sp) + c0039b8e: 30913823 sd s1,784(sp) + c0039b92: 31213c23 sd s2,792(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 3) - c00399c6: e7dd70ef jal ra,c0011842 - c00399ca: 24a13823 sd a0,592(sp) - c00399ce: 24b13c23 sd a1,600(sp) - c00399d2: 2ea13023 sd a0,736(sp) - c00399d6: 2eb13423 sd a1,744(sp) + c0039b96: d9bd70ef jal ra,c0011930 + c0039b9a: 24a13823 sd a0,592(sp) + c0039b9e: 24b13c23 sd a1,600(sp) + c0039ba2: 2ea13023 sd a0,736(sp) + c0039ba6: 2eb13423 sd a1,744(sp) js_is_standard_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44484 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44492 (discriminator 3) if (JS_IsException(val)) - c00399da: 0005879b sext.w a5,a1 - c00399de: 4999 li s3,6 + c0039baa: 0005879b sext.w a5,a1 + c0039bae: 4999 li s3,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 3) - c00399e0: 862e mv a2,a1 + c0039bb0: 862e mv a2,a1 js_is_standard_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44484 (discriminator 3) - c00399e2: 09378263 beq a5,s3,c0039a66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44487 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44492 (discriminator 3) + c0039bb2: 09378263 beq a5,s3,c0039c36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44495 res = js_same_value(ctx, val, ctx->regexp_ctor); - c00399e6: 7c34 ld a3,120(s0) - c00399e8: 6058 ld a4,128(s0) - c00399ea: 85aa mv a1,a0 - c00399ec: 8522 mv a0,s0 - c00399ee: ad4ce0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44488 + c0039bb6: 7c34 ld a3,120(s0) + c0039bb8: 6058 ld a4,128(s0) + c0039bba: 85aa mv a1,a0 + c0039bbc: 8522 mv a0,s0 + c0039bbe: 9f2ce0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44496 JS_FreeValue(ctx, val); - c00399f2: 2e013583 ld a1,736(sp) - c00399f6: 2e813603 ld a2,744(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44487 + c0039bc2: 2e013583 ld a1,736(sp) + c0039bc6: 2e813603 ld a2,744(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44495 res = js_same_value(ctx, val, ctx->regexp_ctor); - c00399fa: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44488 + c0039bca: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44496 JS_FreeValue(ctx, val); - c00399fc: 8522 mv a0,s0 - c00399fe: 93ace0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44489 + c0039bcc: 8522 mv a0,s0 + c0039bce: 858ce0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44497 if (res) { - c0039a02: 0e0a02e3 beqz s4,c003a2e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44490 + c0039bd2: 0e0a02e3 beqz s4,c003a4b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44498 val = JS_GetProperty(ctx, rx, JS_ATOM_exec); - c0039a06: 2d813783 ld a5,728(sp) - c0039a0a: 2d013703 ld a4,720(sp) + c0039bd6: 2d813783 ld a5,728(sp) + c0039bda: 2d013703 ld a4,720(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039a0e: 4801 li a6,0 - c0039a10: 863e mv a2,a5 - c0039a12: 08700693 li a3,135 - c0039a16: 85ba mv a1,a4 - c0039a18: 8522 mv a0,s0 - c0039a1a: 30f13c23 sd a5,792(sp) - c0039a1e: 30e13823 sd a4,784(sp) - c0039a22: e21d70ef jal ra,c0011842 - c0039a26: 24a13023 sd a0,576(sp) - c0039a2a: 24b13423 sd a1,584(sp) - c0039a2e: 2ea13023 sd a0,736(sp) - c0039a32: 2eb13423 sd a1,744(sp) + c0039bde: 4801 li a6,0 + c0039be0: 863e mv a2,a5 + c0039be2: 08700693 li a3,135 + c0039be6: 85ba mv a1,a4 + c0039be8: 8522 mv a0,s0 + c0039bea: 30f13c23 sd a5,792(sp) + c0039bee: 30e13823 sd a4,784(sp) + c0039bf2: d3fd70ef jal ra,c0011930 + c0039bf6: 24a13023 sd a0,576(sp) + c0039bfa: 24b13423 sd a1,584(sp) + c0039bfe: 2ea13023 sd a0,736(sp) + c0039c02: 2eb13423 sd a1,744(sp) js_is_standard_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44499 if (JS_IsException(val)) - c0039a36: 0005879b sext.w a5,a1 + c0039c06: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039a3a: 8a2a mv s4,a0 - c0039a3c: 862e mv a2,a1 + c0039c0a: 8a2a mv s4,a0 + c0039c0c: 862e mv a2,a1 js_is_standard_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44491 - c0039a3e: 03378463 beq a5,s3,c0039a66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44499 + c0039c0e: 03378463 beq a5,s3,c0039c36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44502 res = JS_IsCFunction(ctx, val, js_regexp_exec, 0); - c0039a42: 85aa mv a1,a0 - c0039a44: 4701 li a4,0 - c0039a46: ffffc697 auipc a3,0xffffc - c0039a4a: 82a68693 addi a3,a3,-2006 # c0035270 - c0039a4e: 8522 mv a0,s0 - c0039a50: f832 sd a2,48(sp) - c0039a52: d61d00ef jal ra,c000a7b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44495 + c0039c12: 85aa mv a1,a0 + c0039c14: 4701 li a4,0 + c0039c16: ffffc697 auipc a3,0xffffc + c0039c1a: 82a68693 addi a3,a3,-2006 # c0035440 + c0039c1e: 8522 mv a0,s0 + c0039c20: f832 sd a2,48(sp) + c0039c22: c7fd00ef jal ra,c000a8a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44503 JS_FreeValue(ctx, val); - c0039a56: 7642 ld a2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44494 + c0039c26: 7642 ld a2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44502 res = JS_IsCFunction(ctx, val, js_regexp_exec, 0); - c0039a58: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44495 + c0039c28: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44503 JS_FreeValue(ctx, val); - c0039a5a: 85d2 mv a1,s4 - c0039a5c: 8522 mv a0,s0 - c0039a5e: 8dace0ef jal ra,c0007b38 + c0039c2a: 85d2 mv a1,s4 + c0039c2c: 8522 mv a0,s0 + c0039c2e: ff9cd0ef jal ra,c0007c26 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44560 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 if (rp && rp->len == 0 && is_global && js_is_standard_regexp(ctx, rx)) { - c0039a62: 080982e3 beqz s3,c003a2e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44562 + c0039c32: 080982e3 beqz s3,c003a4b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44570 res = JS_RegExpDelete(ctx, rx, str); - c0039a66: 67a2 ld a5,8(sp) + c0039c36: 67a2 ld a5,8(sp) js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43507 if (p->class_id == JS_CLASS_REGEXP) - c0039a68: 0064d703 lhu a4,6(s1) - c0039a6c: 27b13823 sd s11,624(sp) - c0039a70: 26f13c23 sd a5,632(sp) - c0039a74: 47c9 li a5,18 - c0039a76: 02f71963 bne a4,a5,c0039aa8 + c0039c38: 0064d703 lhu a4,6(s1) + c0039c3c: 27b13823 sd s11,624(sp) + c0039c40: 26f13c23 sd a5,632(sp) + c0039c44: 47c9 li a5,18 + c0039c46: 02f71963 bne a4,a5,c0039c78 JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44056 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44064 string_buffer_init(ctx, b, 0); - c0039a7a: 4601 li a2,0 - c0039a7c: 0e0c addi a1,sp,784 - c0039a7e: 8522 mv a0,s0 - c0039a80: 94edf0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44059 + c0039c4a: 4601 li a2,0 + c0039c4c: 0e0c addi a1,sp,784 + c0039c4e: 8522 mv a0,s0 + c0039c50: 94edf0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44067 str_val = JS_ToString(ctx, arg); - c0039a84: 27013583 ld a1,624(sp) - c0039a88: 27813603 ld a2,632(sp) - c0039a8c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44060 + c0039c54: 27013583 ld a1,624(sp) + c0039c58: 27813603 ld a2,632(sp) + c0039c5c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44068 if (JS_IsException(str_val)) - c0039a8e: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44059 + c0039c5e: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44067 str_val = JS_ToString(ctx, arg); - c0039a90: d47e00ef jal ra,c001a7d6 - c0039a94: 28b13423 sd a1,648(sp) - c0039a98: 28a13023 sd a0,640(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44060 + c0039c60: d47e00ef jal ra,c001a9a6 + c0039c64: 28b13423 sd a1,648(sp) + c0039c68: 28a13023 sd a0,640(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44068 if (JS_IsException(str_val)) - c0039a9c: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44059 + c0039c6c: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44067 str_val = JS_ToString(ctx, arg); - c0039a9e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44060 + c0039c6e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44068 if (JS_IsException(str_val)) - c0039aa0: 01459c63 bne a1,s4,c0039ab8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44058 + c0039c70: 01459c63 bne a1,s4,c0039c88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44066 capture = NULL; - c0039aa4: 4a01 li s4,0 - c0039aa6: a2bd j c0039c14 + c0039c74: 4a01 li s4,0 + c0039c76: a2bd j c0039de4 js_get_regexp(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43511 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_REGEXP); - c0039aa8: 45c9 li a1,18 - c0039aaa: 8522 mv a0,s0 - c0039aac: aa5d90ef jal ra,c0013550 + c0039c78: 45c9 li a1,18 + c0039c7a: 8522 mv a0,s0 + c0039c7c: 9c3d90ef jal ra,c001363e JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44140 return JS_EXCEPTION; - c0039ab0: 2e013023 sd zero,736(sp) - c0039ab4: 4b19 li s6,6 - c0039ab6: a0fd j c0039ba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44063 + c0039c80: 2e013023 sd zero,736(sp) + c0039c84: 4b19 li s6,6 + c0039c86: a0fd j c0039d74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44071 re_bytecode = re->bytecode->u.str8; - c0039ab8: 0384bb03 ld s6,56(s1) - c0039abc: 0b41 addi s6,s6,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44064 + c0039c88: 0384bb03 ld s6,56(s1) + c0039c8c: 0b41 addi s6,s6,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44072 re_flags = lre_get_flags(re_bytecode); - c0039abe: 855a mv a0,s6 - c0039ac0: 0d00c0ef jal ra,c0045b90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44065 + c0039c8e: 855a mv a0,s6 + c0039c90: 0d00c0ef jal ra,c0045d60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44073 if ((re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY)) == 0) { - c0039ac4: 02157793 andi a5,a0,33 - c0039ac8: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44064 + c0039c94: 02157793 andi a5,a0,33 + c0039c98: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44072 re_flags = lre_get_flags(re_bytecode); - c0039aca: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44065 + c0039c9a: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44073 if ((re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY)) == 0) { - c0039acc: 0e079a63 bnez a5,c0039bc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44066 + c0039c9c: 0e079a63 bnez a5,c0039d90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44074 last_index = 0; - c0039ad0: 22013823 sd zero,560(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44072 + c0039ca0: 22013823 sd zero,560(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44080 capture_count = lre_get_capture_count(re_bytecode); - c0039ad4: 855a mv a0,s6 - c0039ad6: 0b40c0ef jal ra,c0045b8a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44058 + c0039ca4: 855a mv a0,s6 + c0039ca6: 0b40c0ef jal ra,c0045d5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44066 capture = NULL; - c0039ada: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44073 + c0039caa: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44081 if (capture_count > 0) { - c0039adc: 00a05963 blez a0,c0039aee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44074 + c0039cac: 00a05963 blez a0,c0039cbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44082 capture = js_malloc(ctx, sizeof(capture[0]) * capture_count * 2); - c0039ae0: 00451593 slli a1,a0,0x4 - c0039ae4: 8522 mv a0,s0 - c0039ae6: 966db0ef jal ra,c0014c4c - c0039aea: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44075 + c0039cb0: 00451593 slli a1,a0,0x4 + c0039cb4: 8522 mv a0,s0 + c0039cb6: 884db0ef jal ra,c0014d3a + c0039cba: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44083 if (!capture) - c0039aec: dd45 beqz a0,c0039aa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44078 + c0039cbc: dd45 beqz a0,c0039c74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44086 shift = str->is_wide_char; - c0039aee: 0049ab83 lw s7,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 + c0039cbe: 0049ab83 lw s7,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44116 if (!(re_flags & LRE_FLAG_GLOBAL)) { - c0039af2: 001af793 andi a5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44082 + c0039cc2: 001af793 andi a5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44090 if (last_index > str->len) - c0039af6: 80000c37 lui s8,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44078 + c0039cc6: 80000c37 lui s8,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44086 shift = str->is_wide_char; - c0039afa: 01fbdb9b srliw s7,s7,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44079 + c0039cca: 01fbdb9b srliw s7,s7,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44087 str_buf = str->u.str8; - c0039afe: 01098c93 addi s9,s3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44080 + c0039cce: 01098c93 addi s9,s3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44088 next_src_pos = 0; - c0039b02: 4d01 li s10,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44082 + c0039cd2: 4d01 li s10,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44090 if (last_index > str->len) - c0039b04: fffc4c13 not s8,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 + c0039cd4: fffc4c13 not s8,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44116 if (!(re_flags & LRE_FLAG_GLOBAL)) { - c0039b08: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44115 + c0039cd8: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44123 if (!(re_flags & LRE_FLAG_UTF16) || (unsigned)end >= str->len || !str->is_wide_char) { - c0039b0a: 010afa93 andi s5,s5,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44082 + c0039cda: 010afa93 andi s5,s5,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44090 if (last_index > str->len) - c0039b0e: 0049a703 lw a4,4(s3) - c0039b12: 23013683 ld a3,560(sp) - c0039b16: 00ec7733 and a4,s8,a4 - c0039b1a: 02071793 slli a5,a4,0x20 - c0039b1e: 9381 srli a5,a5,0x20 - c0039b20: 04d7c763 blt a5,a3,c0039b6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44085 + c0039cde: 0049a703 lw a4,4(s3) + c0039ce2: 23013683 ld a3,560(sp) + c0039ce6: 00ec7733 and a4,s8,a4 + c0039cea: 02071793 slli a5,a4,0x20 + c0039cee: 9381 srli a5,a5,0x20 + c0039cf0: 04d7c763 blt a5,a3,c0039d3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44093 ret = lre_exec(capture, re_bytecode, - c0039b24: 87de mv a5,s7 - c0039b26: 8822 mv a6,s0 - c0039b28: 2681 sext.w a3,a3 - c0039b2a: 8666 mv a2,s9 - c0039b2c: 85da mv a1,s6 - c0039b2e: 8552 mv a0,s4 - c0039b30: 76b0b0ef jal ra,c0045a9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44087 + c0039cf4: 87de mv a5,s7 + c0039cf6: 8822 mv a6,s0 + c0039cf8: 2681 sext.w a3,a3 + c0039cfa: 8666 mv a2,s9 + c0039cfc: 85da mv a1,s6 + c0039cfe: 8552 mv a0,s4 + c0039d00: 76b0b0ef jal ra,c0045c6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44095 if (ret != 1) { - c0039b34: 4785 li a5,1 - c0039b36: 0ef50e63 beq a0,a5,c0039c32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44088 + c0039d04: 4785 li a5,1 + c0039d06: 0ef50e63 beq a0,a5,c0039e02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44096 if (ret >= 0) { - c0039b3a: 0c054663 bltz a0,c0039c06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44089 + c0039d0a: 0c054663 bltz a0,c0039dd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44097 if (ret == 2 || (re_flags & (LRE_FLAG_GLOBAL | LRE_FLAG_STICKY))) { - c0039b3e: 4789 li a5,2 - c0039b40: 00f50463 beq a0,a5,c0039b48 - c0039b44: 77c2 ld a5,48(sp) - c0039b46: c785 beqz a5,c0039b6e + c0039d0e: 4789 li a5,2 + c0039d10: 00f50463 beq a0,a5,c0039d18 + c0039d14: 77c2 ld a5,48(sp) + c0039d16: c785 beqz a5,c0039d3e js_regexp_Symbol_replace(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0039b48: 2c013823 sd zero,720(sp) - c0039b4c: 2c013c23 sd zero,728(sp) + c0039d18: 2c013823 sd zero,720(sp) + c0039d1c: 2c013c23 sd zero,728(sp) JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44090 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44098 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0039b50: 26913023 sd s1,608(sp) - c0039b54: 27213423 sd s2,616(sp) - c0039b58: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 + c0039d20: 26913023 sd s1,608(sp) + c0039d24: 27213423 sd s2,616(sp) + c0039d28: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44117 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0039b5a: 4781 li a5,0 - c0039b5c: 05600693 li a3,86 - c0039b60: 85a6 mv a1,s1 - c0039b62: 864a mv a2,s2 - c0039b64: 8522 mv a0,s0 - c0039b66: d92f60ef jal ra,c00300f8 - c0039b6a: 0a054563 bltz a0,c0039c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44123 + c0039d2a: 4781 li a5,0 + c0039d2c: 05600693 li a3,86 + c0039d30: 85a6 mv a1,s1 + c0039d32: 864a mv a2,s2 + c0039d34: 8522 mv a0,s0 + c0039d36: d92f60ef jal ra,c00302c8 + c0039d3a: 0a054563 bltz a0,c0039de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44131 if (string_buffer_concat(b, str, next_src_pos, str->len)) - c0039b6e: 0049a683 lw a3,4(s3) - c0039b72: 866a mv a2,s10 - c0039b74: 85ce mv a1,s3 - c0039b76: 1686 slli a3,a3,0x21 - c0039b78: 9285 srli a3,a3,0x21 - c0039b7a: 0e08 addi a0,sp,784 - c0039b7c: becdf0ef jal ra,c0018f68 - c0039b80: e951 bnez a0,c0039c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44125 + c0039d3e: 0049a683 lw a3,4(s3) + c0039d42: 866a mv a2,s10 + c0039d44: 85ce mv a1,s3 + c0039d46: 1686 slli a3,a3,0x21 + c0039d48: 9285 srli a3,a3,0x21 + c0039d4a: 0e08 addi a0,sp,784 + c0039d4c: becdf0ef jal ra,c0019138 + c0039d50: e951 bnez a0,c0039de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44133 JS_FreeValue(ctx, str_val); - c0039b82: 28813603 ld a2,648(sp) - c0039b86: 28013583 ld a1,640(sp) - c0039b8a: 8522 mv a0,s0 - c0039b8c: fadcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44126 + c0039d52: 28813603 ld a2,648(sp) + c0039d56: 28013583 ld a1,640(sp) + c0039d5a: 8522 mv a0,s0 + c0039d5c: ecbcd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44134 js_free(ctx, capture); - c0039b90: 85d2 mv a1,s4 - c0039b92: 8522 mv a0,s0 - c0039b94: aa6cd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44127 + c0039d60: 85d2 mv a1,s4 + c0039d62: 8522 mv a0,s0 + c0039d64: 9c4cd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44135 return string_buffer_end(b); - c0039b98: 0e08 addi a0,sp,784 - c0039b9a: 970e00ef jal ra,c0019d0a - c0039b9e: 2ea13023 sd a0,736(sp) - c0039ba2: 8b2e mv s6,a1 - c0039ba4: 2e013783 ld a5,736(sp) - c0039ba8: 2f613423 sd s6,744(sp) + c0039d68: 0e08 addi a0,sp,784 + c0039d6a: 970e00ef jal ra,c0019eda + c0039d6e: 2ea13023 sd a0,736(sp) + c0039d72: 8b2e mv s6,a1 + c0039d74: 2e013783 ld a5,736(sp) + c0039d78: 2f613423 sd s6,744(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c0039bac: 490d li s2,3 - c0039bae: ea3e sd a5,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c0039d7c: 490d li s2,3 + c0039d7e: ea3e sd a5,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c0039bb0: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 + c0039d80: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c0039bb2: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44521 + c0039d82: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44529 matched = JS_UNDEFINED; - c0039bb4: 498d li s3,3 - c0039bb6: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44680 + c0039d84: 498d li s3,3 + c0039d86: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44688 string_buffer_free(b); - c0039bb8: 1d88 addi a0,sp,752 - c0039bba: aaccd0ef jal ra,c0006e66 - c0039bbe: ae29 j c0039ed8 + c0039d88: 1d88 addi a0,sp,752 + c0039d8a: 9cacd0ef jal ra,c0006f54 + c0039d8e: ae29 j c003a0a8 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0039bc0: 87ca mv a5,s2 - c0039bc2: 05600693 li a3,86 - c0039bc6: 864a mv a2,s2 - c0039bc8: 4801 li a6,0 - c0039bca: 8726 mv a4,s1 - c0039bcc: 85a6 mv a1,s1 - c0039bce: 8522 mv a0,s0 - c0039bd0: 2e913023 sd s1,736(sp) - c0039bd4: 2f213423 sd s2,744(sp) - c0039bd8: c6bd70ef jal ra,c0011842 - c0039bdc: 2aa13823 sd a0,688(sp) - c0039be0: 2ab13c23 sd a1,696(sp) - c0039be4: 28a13823 sd a0,656(sp) - c0039be8: 28b13c23 sd a1,664(sp) + c0039d90: 87ca mv a5,s2 + c0039d92: 05600693 li a3,86 + c0039d96: 864a mv a2,s2 + c0039d98: 4801 li a6,0 + c0039d9a: 8726 mv a4,s1 + c0039d9c: 85a6 mv a1,s1 + c0039d9e: 8522 mv a0,s0 + c0039da0: 2e913023 sd s1,736(sp) + c0039da4: 2f213423 sd s2,744(sp) + c0039da8: b89d70ef jal ra,c0011930 + c0039dac: 2aa13823 sd a0,688(sp) + c0039db0: 2ab13c23 sd a1,696(sp) + c0039db4: 28a13823 sd a0,656(sp) + c0039db8: 28b13c23 sd a1,664(sp) JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44069 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44077 if (JS_IsException(val) || JS_ToLengthFree(ctx, &last_index, val)) - c0039bec: 0005879b sext.w a5,a1 + c0039dbc: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0039bf0: 862a mv a2,a0 - c0039bf2: 86ae mv a3,a1 + c0039dc0: 862a mv a2,a0 + c0039dc2: 86ae mv a3,a1 JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44069 - c0039bf4: eb4788e3 beq a5,s4,c0039aa4 - c0039bf8: 1c0c addi a1,sp,560 - c0039bfa: 8522 mv a0,s0 - c0039bfc: c11e40ef jal ra,c001e80c - c0039c00: ec050ae3 beqz a0,c0039ad4 - c0039c04: b545 j c0039aa4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44095 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44077 + c0039dc4: eb4788e3 beq a5,s4,c0039c74 + c0039dc8: 1c0c addi a1,sp,560 + c0039dca: 8522 mv a0,s0 + c0039dcc: c11e40ef jal ra,c001e9dc + c0039dd0: ec050ae3 beqz a0,c0039ca4 + c0039dd4: b545 j c0039c74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44103 JS_ThrowInternalError(ctx, "out of memory in regexp execution"); - c0039c06: 00027597 auipc a1,0x27 - c0039c0a: a6a58593 addi a1,a1,-1430 # c0060670 - c0039c0e: 8522 mv a0,s0 - c0039c10: d75da0ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44129 + c0039dd6: 00027597 auipc a1,0x27 + c0039dda: afa58593 addi a1,a1,-1286 # c00608d0 + c0039dde: 8522 mv a0,s0 + c0039de0: c93da0ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44137 JS_FreeValue(ctx, str_val); - c0039c14: 28013583 ld a1,640(sp) - c0039c18: 28813603 ld a2,648(sp) - c0039c1c: 8522 mv a0,s0 - c0039c1e: f1bcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44130 + c0039de4: 28013583 ld a1,640(sp) + c0039de8: 28813603 ld a2,648(sp) + c0039dec: 8522 mv a0,s0 + c0039dee: e39cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44138 js_free(ctx, capture); - c0039c22: 8522 mv a0,s0 - c0039c24: 85d2 mv a1,s4 - c0039c26: a14cd0ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44131 + c0039df2: 8522 mv a0,s0 + c0039df4: 85d2 mv a1,s4 + c0039df6: 932cd0ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44139 string_buffer_free(b); - c0039c2a: 0e08 addi a0,sp,784 - c0039c2c: a3acd0ef jal ra,c0006e66 - c0039c30: b541 j c0039ab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44101 + c0039dfa: 0e08 addi a0,sp,784 + c0039dfc: 958cd0ef jal ra,c0006f54 + c0039e00: b541 j c0039c80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 end = (capture[1] - str_buf) >> shift; - c0039c32: 008a3783 ld a5,8(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44100 + c0039e02: 008a3783 ld a5,8(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 start = (capture[0] - str_buf) >> shift; - c0039c36: 000a3683 ld a3,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44101 + c0039e06: 000a3683 ld a3,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 end = (capture[1] - str_buf) >> shift; - c0039c3a: 419787b3 sub a5,a5,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44100 + c0039e0a: 419787b3 sub a5,a5,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 start = (capture[0] - str_buf) >> shift; - c0039c3e: 419686b3 sub a3,a3,s9 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44101 + c0039e0e: 419686b3 sub a3,a3,s9 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 end = (capture[1] - str_buf) >> shift; - c0039c42: 4177d7b3 sra a5,a5,s7 - c0039c46: 2781 sext.w a5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44100 + c0039e12: 4177d7b3 sra a5,a5,s7 + c0039e16: 2781 sext.w a5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 start = (capture[0] - str_buf) >> shift; - c0039c48: 4176d6b3 sra a3,a3,s7 - c0039c4c: 2681 sext.w a3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44101 + c0039e18: 4176d6b3 sra a3,a3,s7 + c0039e1c: 2681 sext.w a3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 end = (capture[1] - str_buf) >> shift; - c0039c4e: 22f12023 sw a5,544(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44102 + c0039e1e: 22f12023 sw a5,544(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44110 last_index = end; - c0039c52: 22f13823 sd a5,560(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44103 + c0039e22: 22f13823 sd a5,560(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44111 if (next_src_pos < start) { - c0039c56: 02dd4763 blt s10,a3,c0039c84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 + c0039e26: 02dd4763 blt s10,a3,c0039e54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44116 if (!(re_flags & LRE_FLAG_GLOBAL)) { - c0039c5a: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44107 + c0039e2a: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44115 next_src_pos = end; - c0039c5c: 22012d03 lw s10,544(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44108 + c0039e2c: 22012d03 lw s10,544(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44116 if (!(re_flags & LRE_FLAG_GLOBAL)) { - c0039c60: eb9d bnez a5,c0039c96 + c0039e30: eb9d bnez a5,c0039e66 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0039c62: 2a013023 sd zero,672(sp) - c0039c66: 2ba12023 sw s10,672(sp) - c0039c6a: 2a013703 ld a4,672(sp) - c0039c6e: 2a013423 sd zero,680(sp) - c0039c72: 2c013423 sd zero,712(sp) - c0039c76: 2ce13023 sd a4,704(sp) + c0039e32: 2a013023 sd zero,672(sp) + c0039e36: 2ba12023 sw s10,672(sp) + c0039e3a: 2a013703 ld a4,672(sp) + c0039e3e: 2a013423 sd zero,680(sp) + c0039e42: 2c013423 sd zero,712(sp) + c0039e46: 2ce13023 sd a4,704(sp) JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44109 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44117 if (JS_SetProperty(ctx, this_val, JS_ATOM_lastIndex, - c0039c7a: 26913023 sd s1,608(sp) - c0039c7e: 27213423 sd s2,616(sp) - c0039c82: bde1 j c0039b5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44104 + c0039e4a: 26913023 sd s1,608(sp) + c0039e4e: 27213423 sd s2,616(sp) + c0039e52: bde1 j c0039d2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44112 if (string_buffer_concat(b, str, next_src_pos, start)) - c0039c84: 866a mv a2,s10 - c0039c86: 85ce mv a1,s3 - c0039c88: 0e08 addi a0,sp,784 - c0039c8a: e0b6 sd a3,64(sp) - c0039c8c: adcdf0ef jal ra,c0018f68 - c0039c90: 6686 ld a3,64(sp) - c0039c92: d561 beqz a0,c0039c5a - c0039c94: b741 j c0039c14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44114 + c0039e54: 866a mv a2,s10 + c0039e56: 85ce mv a1,s3 + c0039e58: 0e08 addi a0,sp,784 + c0039e5a: e0b6 sd a3,64(sp) + c0039e5c: adcdf0ef jal ra,c0019138 + c0039e60: 6686 ld a3,64(sp) + c0039e62: d561 beqz a0,c0039e2a + c0039e64: b741 j c0039de4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44122 if (end == start) { - c0039c96: 03a69263 bne a3,s10,c0039cba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44115 + c0039e66: 03a69263 bne a3,s10,c0039e8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44123 if (!(re_flags & LRE_FLAG_UTF16) || (unsigned)end >= str->len || !str->is_wide_char) { - c0039c9a: 000a8c63 beqz s5,c0039cb2 - c0039c9e: 0049a783 lw a5,4(s3) - c0039ca2: 0187f733 and a4,a5,s8 - c0039ca6: 2701 sext.w a4,a4 - c0039ca8: 00ed7563 bgeu s10,a4,c0039cb2 - c0039cac: 2781 sext.w a5,a5 - c0039cae: 0007cb63 bltz a5,c0039cc4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44116 + c0039e6a: 000a8c63 beqz s5,c0039e82 + c0039e6e: 0049a783 lw a5,4(s3) + c0039e72: 0187f733 and a4,a5,s8 + c0039e76: 2701 sext.w a4,a4 + c0039e78: 00ed7563 bgeu s10,a4,c0039e82 + c0039e7c: 2781 sext.w a5,a5 + c0039e7e: 0007cb63 bltz a5,c0039e94 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44124 end++; - c0039cb2: 001d079b addiw a5,s10,1 - c0039cb6: 22f12023 sw a5,544(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44121 + c0039e82: 001d079b addiw a5,s10,1 + c0039e86: 22f12023 sw a5,544(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44129 last_index = end; - c0039cba: 22012783 lw a5,544(sp) - c0039cbe: 22f13823 sd a5,560(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44082 + c0039e8a: 22012783 lw a5,544(sp) + c0039e8e: 22f13823 sd a5,560(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44090 if (last_index > str->len) - c0039cc2: b5b1 j c0039b0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44118 + c0039e92: b5b1 j c0039cde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44126 string_getc(str, &end); - c0039cc4: 140c addi a1,sp,544 - c0039cc6: 854e mv a0,s3 - c0039cc8: cb8ca0ef jal ra,c0004180 - c0039ccc: b7fd j c0039cba + c0039e94: 140c addi a1,sp,544 + c0039e96: 854e mv a0,s3 + c0039e98: ae8ca0ef jal ra,c0004180 + c0039e9c: b7fd j c0039e8a value_buffer_append(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44468 memcpy(new_arr, b->def, sizeof b->def); - c0039cce: 04000613 li a2,64 - c0039cd2: 85e2 mv a1,s8 - c0039cd4: f82a sd a0,48(sp) - c0039cd6: 5051c0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44464 + c0039e9e: 04000613 li a2,64 + c0039ea2: 85e2 mv a1,s8 + c0039ea4: f82a sd a0,48(sp) + c0039ea6: 5051c0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44472 if (!new_arr) { - c0039cda: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44470 + c0039eaa: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44478 new_size += slack / sizeof(*new_arr); - c0039cdc: 2d013703 ld a4,720(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44471 + c0039eac: 2d013703 ld a4,720(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44479 b->arr = new_arr; - c0039ce0: 36f13c23 sd a5,888(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44470 + c0039eb0: 36f13c23 sd a5,888(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44478 new_size += slack / sizeof(*new_arr); - c0039ce4: 8311 srli a4,a4,0x4 - c0039ce6: 01570abb addw s5,a4,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44472 + c0039eb4: 8311 srli a4,a4,0x4 + c0039eb6: 01570abb addw s5,a4,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44480 b->size = new_size; - c0039cea: 3d512223 sw s5,964(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44474 + c0039eba: 3d512223 sw s5,964(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44482 b->arr[b->len++] = val; - c0039cee: 3c012783 lw a5,960(sp) - c0039cf2: 0017871b addiw a4,a5,1 - c0039cf6: 3ce12023 sw a4,960(sp) - c0039cfa: 00479713 slli a4,a5,0x4 - c0039cfe: 37813783 ld a5,888(sp) - c0039d02: 97ba add a5,a5,a4 - c0039d04: 31013703 ld a4,784(sp) - c0039d08: e398 sd a4,0(a5) - c0039d0a: 31813703 ld a4,792(sp) - c0039d0e: e798 sd a4,8(a5) + c0039ebe: 3c012783 lw a5,960(sp) + c0039ec2: 0017871b addiw a4,a5,1 + c0039ec6: 3ce12023 sw a4,960(sp) + c0039eca: 00479713 slli a4,a5,0x4 + c0039ece: 37813783 ld a5,888(sp) + c0039ed2: 97ba add a5,a5,a4 + c0039ed4: 31013703 ld a4,784(sp) + c0039ed8: e398 sd a4,0(a5) + c0039eda: 31813703 ld a4,792(sp) + c0039ede: e798 sd a4,8(a5) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44582 if (!is_global) - c0039d10: 19ab0363 beq s6,s10,c0039e96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44576 + c0039ee0: 19ab0363 beq s6,s10,c003a066 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44584 JS_FreeValue(ctx, matched); - c0039d14: 85d2 mv a1,s4 - c0039d16: 864e mv a2,s3 - c0039d18: 8522 mv a0,s0 - c0039d1a: e1fcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44577 + c0039ee4: 85d2 mv a1,s4 + c0039ee6: 864e mv a2,s3 + c0039ee8: 8522 mv a0,s0 + c0039eea: d3dcd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44585 matched = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, result, 0)); - c0039d1e: 2e813603 ld a2,744(sp) - c0039d22: 2e013583 ld a1,736(sp) - c0039d26: 4681 li a3,0 - c0039d28: 8522 mv a0,s0 - c0039d2a: 9a4f80ef jal ra,c0031ece - c0039d2e: 862e mv a2,a1 - c0039d30: eaaa sd a0,336(sp) - c0039d32: eeae sd a1,344(sp) - c0039d34: 85aa mv a1,a0 - c0039d36: 8522 mv a0,s0 - c0039d38: aa9e00ef jal ra,c001a7e0 - c0039d3c: e9aa sd a0,208(sp) - c0039d3e: edae sd a1,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44578 + c0039eee: 2e813603 ld a2,744(sp) + c0039ef2: 2e013583 ld a1,736(sp) + c0039ef6: 4681 li a3,0 + c0039ef8: 8522 mv a0,s0 + c0039efa: 9a4f80ef jal ra,c003209e + c0039efe: 862e mv a2,a1 + c0039f00: eaaa sd a0,336(sp) + c0039f02: eeae sd a1,344(sp) + c0039f04: 85aa mv a1,a0 + c0039f06: 8522 mv a0,s0 + c0039f08: aa9e00ef jal ra,c001a9b0 + c0039f0c: e9aa sd a0,208(sp) + c0039f0e: edae sd a1,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44586 if (JS_IsException(matched)) - c0039d40: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44577 + c0039f10: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44585 matched = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, result, 0)); - c0039d44: 8a2a mv s4,a0 - c0039d46: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44578 + c0039f14: 8a2a mv s4,a0 + c0039f16: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44586 if (JS_IsException(matched)) - c0039d48: 13978263 beq a5,s9,c0039e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44580 + c0039f18: 13978263 beq a5,s9,c003a03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44588 if (JS_IsEmptyString(matched)) { - c0039d4c: bfcca0ef jal ra,c0004148 - c0039d50: c549 beqz a0,c0039dda + c0039f1c: a2cca0ef jal ra,c0004148 + c0039f20: c549 beqz a0,c0039faa JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0039d52: 05600693 li a3,86 - c0039d56: 864a mv a2,s2 - c0039d58: 4801 li a6,0 - c0039d5a: 8726 mv a4,s1 - c0039d5c: 87ca mv a5,s2 - c0039d5e: 85a6 mv a1,s1 - c0039d60: 8522 mv a0,s0 - c0039d62: 30913823 sd s1,784(sp) - c0039d66: 31213c23 sd s2,792(sp) - c0039d6a: ad9d70ef jal ra,c0011842 - c0039d6e: 862a mv a2,a0 - c0039d70: 86ae mv a3,a1 - c0039d72: 20a13823 sd a0,528(sp) - c0039d76: 20b13c23 sd a1,536(sp) - c0039d7a: f2aa sd a0,352(sp) - c0039d7c: f6ae sd a1,360(sp) + c0039f22: 05600693 li a3,86 + c0039f26: 864a mv a2,s2 + c0039f28: 4801 li a6,0 + c0039f2a: 8726 mv a4,s1 + c0039f2c: 87ca mv a5,s2 + c0039f2e: 85a6 mv a1,s1 + c0039f30: 8522 mv a0,s0 + c0039f32: 30913823 sd s1,784(sp) + c0039f36: 31213c23 sd s2,792(sp) + c0039f3a: 9f7d70ef jal ra,c0011930 + c0039f3e: 862a mv a2,a0 + c0039f40: 86ae mv a3,a1 + c0039f42: 20a13823 sd a0,528(sp) + c0039f46: 20b13c23 sd a1,536(sp) + c0039f4a: f2aa sd a0,352(sp) + c0039f4c: f6ae sd a1,360(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44583 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44591 if (JS_ToLengthFree(ctx, &thisIndex, JS_GetProperty(ctx, rx, JS_ATOM_lastIndex)) < 0) - c0039d7e: 8522 mv a0,s0 - c0039d80: 0d8c addi a1,sp,720 - c0039d82: a8be40ef jal ra,c001e80c - c0039d86: 0e054363 bltz a0,c0039e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44585 + c0039f4e: 8522 mv a0,s0 + c0039f50: 0d8c addi a1,sp,720 + c0039f52: a8be40ef jal ra,c001e9dc + c0039f56: 0e054363 bltz a0,c003a03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44593 nextIndex = string_advance_index(sp, thisIndex, fullUnicode); - c0039d8a: 2d013583 ld a1,720(sp) - c0039d8e: 865e mv a2,s7 - c0039d90: 856e mv a0,s11 - c0039d92: babcb0ef jal ra,c000593c + c0039f5a: 2d013583 ld a1,720(sp) + c0039f5e: 865e mv a2,s7 + c0039f60: 856e mv a0,s11 + c0039f62: ac9cb0ef jal ra,c0005a2a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0039d96: 0005071b sext.w a4,a0 - c0039d9a: 0ee51563 bne a0,a4,c0039e84 + c0039f66: 0005071b sext.w a4,a0 + c0039f6a: 0ee51563 bne a0,a4,c003a054 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0039d9e: 22012223 sw zero,548(sp) - c0039da2: 22e12023 sw a4,544(sp) - c0039da6: 22013783 ld a5,544(sp) - c0039daa: 22013423 sd zero,552(sp) - c0039dae: 30013c23 sd zero,792(sp) - c0039db2: 30f13823 sd a5,784(sp) - c0039db6: 4781 li a5,0 + c0039f6e: 22012223 sw zero,548(sp) + c0039f72: 22e12023 sw a4,544(sp) + c0039f76: 22013783 ld a5,544(sp) + c0039f7a: 22013423 sd zero,552(sp) + c0039f7e: 30013c23 sd zero,792(sp) + c0039f82: 30f13823 sd a5,784(sp) + c0039f86: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0039db8: 30e12823 sw a4,784(sp) - c0039dbc: 31013787 fld fa5,784(sp) + c0039f88: 30e12823 sw a4,784(sp) + c0039f8c: 31013787 fld fa5,784(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44586 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44594 if (JS_SetProperty(ctx, rx, JS_ATOM_lastIndex, JS_NewInt64(ctx, nextIndex)) < 0) - c0039dc0: 31013703 ld a4,784(sp) - c0039dc4: 658a ld a1,128(sp) - c0039dc6: 662a ld a2,136(sp) - c0039dc8: 05600693 li a3,86 - c0039dcc: 8522 mv a0,s0 - c0039dce: babe fsd fa5,368(sp) - c0039dd0: febe sd a5,376(sp) - c0039dd2: b26f60ef jal ra,c00300f8 - c0039dd6: 08054b63 bltz a0,c0039e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44567 + c0039f90: 31013703 ld a4,784(sp) + c0039f94: 658a ld a1,128(sp) + c0039f96: 662a ld a2,136(sp) + c0039f98: 05600693 li a3,86 + c0039f9c: 8522 mv a0,s0 + c0039f9e: babe fsd fa5,368(sp) + c0039fa0: febe sd a5,376(sp) + c0039fa2: b26f60ef jal ra,c00302c8 + c0039fa6: 08054b63 bltz a0,c003a03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44575 result = JS_RegExpExec(ctx, rx, str); - c0039dda: 67a2 ld a5,8(sp) - c0039ddc: 86ee mv a3,s11 - c0039dde: 85a6 mv a1,s1 - c0039de0: 873e mv a4,a5 - c0039de2: 864a mv a2,s2 - c0039de4: 8522 mv a0,s0 - c0039de6: fd3e sd a5,184(sp) - c0039de8: e126 sd s1,128(sp) - c0039dea: e54a sd s2,136(sp) - c0039dec: f96e sd s11,176(sp) - c0039dee: 9b5fc0ef jal ra,c00367a2 - c0039df2: 2ea13023 sd a0,736(sp) - c0039df6: 2eb13423 sd a1,744(sp) + c0039faa: 67a2 ld a5,8(sp) + c0039fac: 86ee mv a3,s11 + c0039fae: 85a6 mv a1,s1 + c0039fb0: 873e mv a4,a5 + c0039fb2: 864a mv a2,s2 + c0039fb4: 8522 mv a0,s0 + c0039fb6: fd3e sd a5,184(sp) + c0039fb8: e126 sd s1,128(sp) + c0039fba: e54a sd s2,136(sp) + c0039fbc: f96e sd s11,176(sp) + c0039fbe: 9b5fc0ef jal ra,c0036972 + c0039fc2: 2ea13023 sd a0,736(sp) + c0039fc6: 2eb13423 sd a1,744(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0039dfa: 0005879b sext.w a5,a1 + c0039fca: 0005879b sext.w a5,a1 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44576 if (JS_IsException(result)) - c0039dfe: 07978763 beq a5,s9,c0039e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44570 + c0039fce: 07978763 beq a5,s9,c003a03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44578 if (JS_IsNull(result)) - c0039e02: 4709 li a4,2 - c0039e04: 08e78963 beq a5,a4,c0039e96 + c0039fd2: 4709 li a4,2 + c0039fd4: 08e78963 beq a5,a4,c003a066 value_buffer_append(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44449 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44457 if (b->error_status) - c0039e08: 3c812783 lw a5,968(sp) - c0039e0c: 30a13823 sd a0,784(sp) - c0039e10: 30b13c23 sd a1,792(sp) - c0039e14: efa1 bnez a5,c0039e6c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44452 + c0039fd8: 3c812783 lw a5,968(sp) + c0039fdc: 30a13823 sd a0,784(sp) + c0039fe0: 30b13c23 sd a1,792(sp) + c0039fe4: efa1 bnez a5,c003a03c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44460 if (b->len >= b->size) { - c0039e16: 3c012783 lw a5,960(sp) - c0039e1a: 3c412703 lw a4,964(sp) - c0039e1e: ece7c8e3 blt a5,a4,c0039cee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44453 + c0039fe6: 3c012783 lw a5,960(sp) + c0039fea: 3c412703 lw a4,964(sp) + c0039fee: ece7c8e3 blt a5,a4,c0039ebe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44461 int new_size = (b->len + (b->len >> 1) + 31) & ~16; - c0039e22: 01f78a9b addiw s5,a5,31 - c0039e26: 4017d79b sraiw a5,a5,0x1 - c0039e2a: 00fa8abb addw s5,s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44457 + c0039ff2: 01f78a9b addiw s5,a5,31 + c0039ff6: 4017d79b sraiw a5,a5,0x1 + c0039ffa: 00fa8abb addw s5,s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44465 if (b->arr == b->def) { - c0039e2e: 37813583 ld a1,888(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44453 + c0039ffe: 37813583 ld a1,888(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44461 int new_size = (b->len + (b->len >> 1) + 31) & ~16; - c0039e32: fefafa93 andi s5,s5,-17 - c0039e36: 2a81 sext.w s5,s5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44458 + c003a002: fefafa93 andi s5,s5,-17 + c003a006: 2a81 sext.w s5,s5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44466 new_arr = js_realloc2(b->ctx, NULL, sizeof(*b->arr) * new_size, &slack); - c0039e38: 37013503 ld a0,880(sp) - c0039e3c: 004a9613 slli a2,s5,0x4 - c0039e40: 0d94 addi a3,sp,720 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44457 + c003a008: 37013503 ld a0,880(sp) + c003a00c: 004a9613 slli a2,s5,0x4 + c003a010: 0d94 addi a3,sp,720 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44465 if (b->arr == b->def) { - c0039e42: 03859b63 bne a1,s8,c0039e78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44458 + c003a012: 03859b63 bne a1,s8,c003a048 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44466 new_arr = js_realloc2(b->ctx, NULL, sizeof(*b->arr) * new_size, &slack); - c0039e46: 4581 li a1,0 - c0039e48: e2cdd0ef jal ra,c0017474 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44459 + c003a016: 4581 li a1,0 + c003a018: e2cdd0ef jal ra,c0017644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44467 if (new_arr) - c0039e4c: e80511e3 bnez a0,c0039cce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44465 + c003a01c: e80511e3 bnez a0,c0039e9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44473 value_buffer_free(b); - c0039e50: 1e88 addi a0,sp,880 - c0039e52: 840cf0ef jal ra,c0008e92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44466 + c003a020: 1e88 addi a0,sp,880 + c003a022: f5fce0ef jal ra,c0008f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44474 JS_FreeValue(b->ctx, val); - c0039e56: 31013583 ld a1,784(sp) - c0039e5a: 31813603 ld a2,792(sp) - c0039e5e: 37013503 ld a0,880(sp) - c0039e62: cd7cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44467 + c003a026: 31013583 ld a1,784(sp) + c003a02a: 31813603 ld a2,792(sp) + c003a02e: 37013503 ld a0,880(sp) + c003a032: bf5cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44475 b->error_status = -1; - c0039e66: 57fd li a5,-1 - c0039e68: 3cf12423 sw a5,968(sp) + c003a036: 57fd li a5,-1 + c003a038: 3cf12423 sw a5,968(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 (discriminator 1) namedCaptures = JS_UNDEFINED; - c0039e6c: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 (discriminator 1) + c003a03c: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 (discriminator 1) rep_str = JS_UNDEFINED; - c0039e6e: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 (discriminator 1) + c003a03e: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 (discriminator 1) tab = JS_UNDEFINED; - c0039e70: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44678 + c003a040: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44686 res = JS_EXCEPTION; - c0039e72: ea02 sd zero,272(sp) - c0039e74: 4b19 li s6,6 - c0039e76: b389 j c0039bb8 + c003a042: ea02 sd zero,272(sp) + c003a044: 4b19 li s6,6 + c003a046: b389 j c0039d88 value_buffer_append(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44470 new_arr = js_realloc2(b->ctx, b->arr, sizeof(*b->arr) * new_size, &slack); - c0039e78: dfcdd0ef jal ra,c0017474 - c0039e7c: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44464 + c003a048: dfcdd0ef jal ra,c0017644 + c003a04c: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44472 if (!new_arr) { - c0039e7e: e4051fe3 bnez a0,c0039cdc - c0039e82: b7f9 j c0039e50 + c003a04e: e4051fe3 bnez a0,c0039eac + c003a052: b7f9 j c003a020 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c0039e84: d22577d3 fcvt.d.l fa5,a0 - c0039e88: 479d li a5,7 - c0039e8a: e2078753 fmv.x.d a4,fa5 + c003a054: d22577d3 fcvt.d.l fa5,a0 + c003a058: 479d li a5,7 + c003a05a: e2078753 fmv.x.d a4,fa5 js_regexp_Symbol_replace(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0039e8e: 30f13827 fsd fa5,784(sp) - c0039e92: 2701 sext.w a4,a4 - c0039e94: b715 j c0039db8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44602 + c003a05e: 30f13827 fsd fa5,784(sp) + c003a062: 2701 sext.w a4,a4 + c003a064: b715 j c0039f88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44610 if (position > sp->len) - c0039e96: 800007b7 lui a5,0x80000 - c0039e9a: fff7c793 not a5,a5 - c0039e9e: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44612 + c003a066: 800007b7 lui a5,0x80000 + c003a06a: fff7c793 not a5,a5 + c003a06e: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44620 if (JS_DefinePropertyValueInt64(ctx, tab, 0, JS_DupValue(ctx, matched), - c0039ea0: 6791 lui a5,0x4 - c0039ea2: 079d addi a5,a5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 + c003a070: 6791 lui a5,0x4 + c003a072: 079d addi a5,a5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c0039ea4: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c003a074: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c0039ea6: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 + c003a076: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c0039ea8: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44591 + c003a078: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44599 for(j = 0; j < results->len; j++) { - c0039eaa: fc02 sd zero,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44590 - nextSourcePosition = 0; - c0039eac: 4c81 li s9,0 + c003a07a: fc02 sd zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44598 + nextSourcePosition = 0; + c003a07c: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44606 if (JS_IsException(matched)) - c0039eae: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44612 + c003a07e: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44620 if (JS_DefinePropertyValueInt64(ctx, tab, 0, JS_DupValue(ctx, matched), - c0039eb0: f83e sd a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44591 (discriminator 1) + c003a080: f83e sd a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44599 (discriminator 1) for(j = 0; j < results->len; j++) { - c0039eb2: 3c012783 lw a5,960(sp) - c0039eb6: 7762 ld a4,56(sp) - c0039eb8: 0af74563 blt a4,a5,c0039f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44673 + c003a082: 3c012783 lw a5,960(sp) + c003a086: 7762 ld a4,56(sp) + c003a088: 0af74563 blt a4,a5,c003a132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44681 string_buffer_concat(b, sp, nextSourcePosition, sp->len); - c0039ebc: 004da683 lw a3,4(s11) - c0039ec0: 8666 mv a2,s9 - c0039ec2: 85ee mv a1,s11 - c0039ec4: 1686 slli a3,a3,0x21 - c0039ec6: 9285 srli a3,a3,0x21 - c0039ec8: 1d88 addi a0,sp,752 - c0039eca: 89edf0ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44674 - res = string_buffer_end(b); - c0039ece: 1d88 addi a0,sp,752 - c0039ed0: e3bdf0ef jal ra,c0019d0a - c0039ed4: ea2a sd a0,272(sp) - c0039ed6: 8b2e mv s6,a1 + c003a08c: 004da683 lw a3,4(s11) + c003a090: 8666 mv a2,s9 + c003a092: 85ee mv a1,s11 + c003a094: 1686 slli a3,a3,0x21 + c003a096: 9285 srli a3,a3,0x21 + c003a098: 1d88 addi a0,sp,752 + c003a09a: 89edf0ef jal ra,c0019138 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44682 + res = string_buffer_end(b); + c003a09e: 1d88 addi a0,sp,752 + c003a0a0: e3bdf0ef jal ra,c0019eda + c003a0a4: ea2a sd a0,272(sp) + c003a0a6: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44690 value_buffer_free(results); - c0039ed8: 1e88 addi a0,sp,880 - c0039eda: fb9ce0ef jal ra,c0008e92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44683 + c003a0a8: 1e88 addi a0,sp,880 + c003a0aa: ed7ce0ef jal ra,c0008f80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44691 JS_FreeValue(ctx, rep_val); - c0039ede: 65e2 ld a1,24(sp) - c0039ee0: 7602 ld a2,32(sp) - c0039ee2: 8522 mv a0,s0 - c0039ee4: c55cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44684 + c003a0ae: 65e2 ld a1,24(sp) + c003a0b0: 7602 ld a2,32(sp) + c003a0b2: 8522 mv a0,s0 + c003a0b4: b73cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44692 JS_FreeValue(ctx, matched); - c0039ee8: 85d2 mv a1,s4 - c0039eea: 864e mv a2,s3 - c0039eec: 8522 mv a0,s0 - c0039eee: c4bcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44685 + c003a0b8: 85d2 mv a1,s4 + c003a0ba: 864e mv a2,s3 + c003a0bc: 8522 mv a0,s0 + c003a0be: b69cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44693 JS_FreeValue(ctx, flags); - c0039ef2: 75a2 ld a1,40(sp) - c0039ef4: 6642 ld a2,16(sp) - c0039ef6: 8522 mv a0,s0 - c0039ef8: c41cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44686 + c003a0c2: 75a2 ld a1,40(sp) + c003a0c4: 6642 ld a2,16(sp) + c003a0c6: 8522 mv a0,s0 + c003a0c8: b5fcd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44694 JS_FreeValue(ctx, tab); - c0039efc: 758e ld a1,224(sp) - c0039efe: 8656 mv a2,s5 - c0039f00: 8522 mv a0,s0 - c0039f02: c37cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44687 + c003a0cc: 758e ld a1,224(sp) + c003a0ce: 8656 mv a2,s5 + c003a0d0: 8522 mv a0,s0 + c003a0d2: b55cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44695 JS_FreeValue(ctx, rep_str); - c0039f06: 75ce ld a1,240(sp) - c0039f08: 8626 mv a2,s1 - c0039f0a: 8522 mv a0,s0 - c0039f0c: c2dcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44688 + c003a0d6: 75ce ld a1,240(sp) + c003a0d8: 8626 mv a2,s1 + c003a0da: 8522 mv a0,s0 + c003a0dc: b4bcd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44696 JS_FreeValue(ctx, namedCaptures); - c0039f10: 6592 ld a1,256(sp) - c0039f12: 864a mv a2,s2 - c0039f14: 8522 mv a0,s0 - c0039f16: c23cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44689 + c003a0e0: 6592 ld a1,256(sp) + c003a0e2: 864a mv a2,s2 + c003a0e4: 8522 mv a0,s0 + c003a0e6: b41cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44697 JS_FreeValue(ctx, str); - c0039f1a: 6622 ld a2,8(sp) - c0039f1c: 85ee mv a1,s11 - c0039f1e: 8522 mv a0,s0 - c0039f20: c19cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44691 + c003a0ea: 6622 ld a2,8(sp) + c003a0ec: 85ee mv a1,s11 + c003a0ee: 8522 mv a0,s0 + c003a0f0: b37cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44699 } - c0039f24: 43813083 ld ra,1080(sp) - c0039f28: 43013403 ld s0,1072(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44690 + c003a0f4: 43813083 ld ra,1080(sp) + c003a0f8: 43013403 ld s0,1072(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44698 return res; - c0039f2c: 6552 ld a0,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44691 + c003a0fc: 6552 ld a0,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44699 } - c0039f2e: 42813483 ld s1,1064(sp) - c0039f32: 42013903 ld s2,1056(sp) - c0039f36: 41813983 ld s3,1048(sp) - c0039f3a: 41013a03 ld s4,1040(sp) - c0039f3e: 40813a83 ld s5,1032(sp) - c0039f42: 3f813b83 ld s7,1016(sp) - c0039f46: 3f013c03 ld s8,1008(sp) - c0039f4a: 3e813c83 ld s9,1000(sp) - c0039f4e: 3e013d03 ld s10,992(sp) - c0039f52: 3d813d83 ld s11,984(sp) - c0039f56: 85da mv a1,s6 - c0039f58: 40013b03 ld s6,1024(sp) - c0039f5c: 44010113 addi sp,sp,1088 - c0039f60: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44593 + c003a0fe: 42813483 ld s1,1064(sp) + c003a102: 42013903 ld s2,1056(sp) + c003a106: 41813983 ld s3,1048(sp) + c003a10a: 41013a03 ld s4,1040(sp) + c003a10e: 40813a83 ld s5,1032(sp) + c003a112: 3f813b83 ld s7,1016(sp) + c003a116: 3f013c03 ld s8,1008(sp) + c003a11a: 3e813c83 ld s9,1000(sp) + c003a11e: 3e013d03 ld s10,992(sp) + c003a122: 3d813d83 ld s11,984(sp) + c003a126: 85da mv a1,s6 + c003a128: 40013b03 ld s6,1024(sp) + c003a12c: 44010113 addi sp,sp,1088 + c003a130: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44601 result = results->arr[j]; - c0039f62: 77e2 ld a5,56(sp) - c0039f64: 37813703 ld a4,888(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44594 + c003a132: 77e2 ld a5,56(sp) + c003a134: 37813703 ld a4,888(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44602 if (js_get_length32(ctx, &nCaptures, result) < 0) - c0039f68: 18cc addi a1,sp,116 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44593 + c003a138: 18cc addi a1,sp,116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44601 result = results->arr[j]; - c0039f6a: 0792 slli a5,a5,0x4 - c0039f6c: 97ba add a5,a5,a4 - c0039f6e: 6390 ld a2,0(a5) - c0039f70: 6794 ld a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44594 + c003a13a: 0792 slli a5,a5,0x4 + c003a13c: 97ba add a5,a5,a4 + c003a13e: 6390 ld a2,0(a5) + c003a140: 6794 ld a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44602 if (js_get_length32(ctx, &nCaptures, result) < 0) - c0039f72: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44593 + c003a142: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44601 result = results->arr[j]; - c0039f74: 2cc13023 sd a2,704(sp) - c0039f78: 2cd13423 sd a3,712(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44594 + c003a144: 2cc13023 sd a2,704(sp) + c003a148: 2cd13423 sd a3,712(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44602 if (js_get_length32(ctx, &nCaptures, result) < 0) - c0039f7c: b9ee20ef jal ra,c001c31a - c0039f80: ee0549e3 bltz a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44596 + c003a14c: b9ee20ef jal ra,c001c4ea + c003a150: ee0549e3 bltz a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44604 JS_FreeValue(ctx, matched); - c0039f84: 85d2 mv a1,s4 - c0039f86: 864e mv a2,s3 - c0039f88: 8522 mv a0,s0 - c0039f8a: bafcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44597 + c003a154: 85d2 mv a1,s4 + c003a156: 864e mv a2,s3 + c003a158: 8522 mv a0,s0 + c003a15a: acdcd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44605 matched = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, result, 0)); - c0039f8e: 2c813603 ld a2,712(sp) - c0039f92: 2c013583 ld a1,704(sp) - c0039f96: 4681 li a3,0 - c0039f98: 8522 mv a0,s0 - c0039f9a: f35f70ef jal ra,c0031ece - c0039f9e: 862e mv a2,a1 - c0039fa0: e32a sd a0,384(sp) - c0039fa2: e72e sd a1,392(sp) - c0039fa4: 85aa mv a1,a0 - c0039fa6: 8522 mv a0,s0 - c0039fa8: 839e00ef jal ra,c001a7e0 - c0039fac: e0aa sd a0,64(sp) - c0039fae: e9aa sd a0,208(sp) - c0039fb0: edae sd a1,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44598 + c003a15e: 2c813603 ld a2,712(sp) + c003a162: 2c013583 ld a1,704(sp) + c003a166: 4681 li a3,0 + c003a168: 8522 mv a0,s0 + c003a16a: f35f70ef jal ra,c003209e + c003a16e: 862e mv a2,a1 + c003a170: e32a sd a0,384(sp) + c003a172: e72e sd a1,392(sp) + c003a174: 85aa mv a1,a0 + c003a176: 8522 mv a0,s0 + c003a178: 839e00ef jal ra,c001a9b0 + c003a17c: e0aa sd a0,64(sp) + c003a17e: e9aa sd a0,208(sp) + c003a180: edae sd a1,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44606 if (JS_IsException(matched)) - c0039fb2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44597 + c003a182: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44605 matched = JS_ToStringFree(ctx, JS_GetPropertyInt64(ctx, result, 0)); - c0039fb6: 8c2e mv s8,a1 - c0039fb8: 8a2a mv s4,a0 - c0039fba: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44598 + c003a186: 8c2e mv s8,a1 + c003a188: 8a2a mv s4,a0 + c003a18a: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44606 if (JS_IsException(matched)) - c0039fbc: eba78be3 beq a5,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44600 + c003a18c: eba78be3 beq a5,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44608 if (JS_ToLengthFree(ctx, &position, JS_GetProperty(ctx, result, JS_ATOM_index))) - c0039fc0: 2c013703 ld a4,704(sp) - c0039fc4: 2c813783 ld a5,712(sp) + c003a190: 2c013703 ld a4,704(sp) + c003a194: 2c813783 ld a5,712(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0039fc8: 05800693 li a3,88 - c0039fcc: 4801 li a6,0 - c0039fce: 863e mv a2,a5 - c0039fd0: 85ba mv a1,a4 - c0039fd2: 8522 mv a0,s0 - c0039fd4: 2ee13023 sd a4,736(sp) - c0039fd8: 2ef13423 sd a5,744(sp) - c0039fdc: 867d70ef jal ra,c0011842 - c0039fe0: 862a mv a2,a0 - c0039fe2: 86ae mv a3,a1 - c0039fe4: 22a13823 sd a0,560(sp) - c0039fe8: 22b13c23 sd a1,568(sp) - c0039fec: eb2a sd a0,400(sp) - c0039fee: ef2e sd a1,408(sp) + c003a198: 05800693 li a3,88 + c003a19c: 4801 li a6,0 + c003a19e: 863e mv a2,a5 + c003a1a0: 85ba mv a1,a4 + c003a1a2: 8522 mv a0,s0 + c003a1a4: 2ee13023 sd a4,736(sp) + c003a1a8: 2ef13423 sd a5,744(sp) + c003a1ac: f84d70ef jal ra,c0011930 + c003a1b0: 862a mv a2,a0 + c003a1b2: 86ae mv a3,a1 + c003a1b4: 22a13823 sd a0,560(sp) + c003a1b8: 22b13c23 sd a1,568(sp) + c003a1bc: eb2a sd a0,400(sp) + c003a1be: ef2e sd a1,408(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44600 - c0039ff0: 8522 mv a0,s0 - c0039ff2: 18ac addi a1,sp,120 - c0039ff4: 819e40ef jal ra,c001e80c - c0039ff8: e6051de3 bnez a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44602 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44608 + c003a1c0: 8522 mv a0,s0 + c003a1c2: 18ac addi a1,sp,120 + c003a1c4: 819e40ef jal ra,c001e9dc + c003a1c8: e6051de3 bnez a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44610 if (position > sp->len) - c0039ffc: 6746 ld a4,80(sp) - c0039ffe: 004da783 lw a5,4(s11) - c003a002: 8ff9 and a5,a5,a4 - c003a004: 7766 ld a4,120(sp) - c003a006: 1782 slli a5,a5,0x20 - c003a008: 9381 srli a5,a5,0x20 - c003a00a: 16e7de63 bge a5,a4,c003a186 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44603 + c003a1cc: 6746 ld a4,80(sp) + c003a1ce: 004da783 lw a5,4(s11) + c003a1d2: 8ff9 and a5,a5,a4 + c003a1d4: 7766 ld a4,120(sp) + c003a1d6: 1782 slli a5,a5,0x20 + c003a1d8: 9381 srli a5,a5,0x20 + c003a1da: 16e7de63 bge a5,a4,c003a356 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44611 position = sp->len; - c003a00e: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44608 + c003a1de: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44616 JS_FreeValue(ctx, tab); - c003a010: 758e ld a1,224(sp) - c003a012: 8656 mv a2,s5 - c003a014: 8522 mv a0,s0 - c003a016: b23cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44609 + c003a1e0: 758e ld a1,224(sp) + c003a1e2: 8656 mv a2,s5 + c003a1e4: 8522 mv a0,s0 + c003a1e6: a41cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44617 tab = JS_NewArray(ctx); - c003a01a: 8522 mv a0,s0 - c003a01c: fa3dc0ef jal ra,c0016fbe - c003a020: f1aa sd a0,224(sp) - c003a022: f5ae sd a1,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44610 + c003a1ea: 8522 mv a0,s0 + c003a1ec: fa3dc0ef jal ra,c001718e + c003a1f0: f1aa sd a0,224(sp) + c003a1f2: f5ae sd a1,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44618 if (JS_IsException(tab)) - c003a024: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44609 + c003a1f4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44617 tab = JS_NewArray(ctx); - c003a028: 8b2e mv s6,a1 - c003a02a: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44610 + c003a1f8: 8b2e mv s6,a1 + c003a1fa: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44618 if (JS_IsException(tab)) - c003a02c: e5a783e3 beq a5,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44612 + c003a1fc: e5a783e3 beq a5,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44620 if (JS_DefinePropertyValueInt64(ctx, tab, 0, JS_DupValue(ctx, matched), - c003a030: 654e ld a0,208(sp) - c003a032: 65ee ld a1,216(sp) - c003a034: e3acc0ef jal ra,c000666e - c003a038: 87ae mv a5,a1 - c003a03a: f72e sd a1,424(sp) - c003a03c: 7842 ld a6,48(sp) - c003a03e: 758e ld a1,224(sp) - c003a040: 762e ld a2,232(sp) - c003a042: 872a mv a4,a0 - c003a044: f32a sd a0,416(sp) - c003a046: 4681 li a3,0 - c003a048: 8522 mv a0,s0 - c003a04a: eccef0ef jal ra,c0029716 - c003a04e: e20542e3 bltz a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44615 + c003a200: 654e ld a0,208(sp) + c003a202: 65ee ld a1,216(sp) + c003a204: d58cc0ef jal ra,c000675c + c003a208: 87ae mv a5,a1 + c003a20a: f72e sd a1,424(sp) + c003a20c: 7842 ld a6,48(sp) + c003a20e: 758e ld a1,224(sp) + c003a210: 762e ld a2,232(sp) + c003a212: 872a mv a4,a0 + c003a214: f32a sd a0,416(sp) + c003a216: 4681 li a3,0 + c003a218: 8522 mv a0,s0 + c003a21a: eccef0ef jal ra,c00298e6 + c003a21e: e20542e3 bltz a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44623 for(n = 1; n < nCaptures; n++) { - c003a052: 4b85 li s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44615 (discriminator 1) - c003a054: 57d6 lw a5,116(sp) - c003a056: 12fbec63 bltu s7,a5,c003a18e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44629 + c003a222: 4b85 li s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44623 (discriminator 1) + c003a224: 57d6 lw a5,116(sp) + c003a226: 12fbec63 bltu s7,a5,c003a35e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44637 JS_FreeValue(ctx, namedCaptures); - c003a05a: 6592 ld a1,256(sp) - c003a05c: 864a mv a2,s2 - c003a05e: 8522 mv a0,s0 - c003a060: ad9cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44630 + c003a22a: 6592 ld a1,256(sp) + c003a22c: 864a mv a2,s2 + c003a22e: 8522 mv a0,s0 + c003a230: 9f7cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44638 namedCaptures = JS_GetProperty(ctx, result, JS_ATOM_groups); - c003a064: 2c013703 ld a4,704(sp) - c003a068: 2c813783 ld a5,712(sp) + c003a234: 2c013703 ld a4,704(sp) + c003a238: 2c813783 ld a5,712(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003a06c: 4801 li a6,0 - c003a06e: 08800693 li a3,136 - c003a072: 85ba mv a1,a4 - c003a074: 863e mv a2,a5 - c003a076: 8522 mv a0,s0 - c003a078: 2ee13023 sd a4,736(sp) - c003a07c: 2ef13423 sd a5,744(sp) - c003a080: fc2d70ef jal ra,c0011842 - c003a084: 26a13823 sd a0,624(sp) - c003a088: 26b13c23 sd a1,632(sp) - c003a08c: e22a sd a0,256(sp) - c003a08e: e62e sd a1,264(sp) + c003a23c: 4801 li a6,0 + c003a23e: 08800693 li a3,136 + c003a242: 85ba mv a1,a4 + c003a244: 863e mv a2,a5 + c003a246: 8522 mv a0,s0 + c003a248: 2ee13023 sd a4,736(sp) + c003a24c: 2ef13423 sd a5,744(sp) + c003a250: ee0d70ef jal ra,c0011930 + c003a254: 26a13823 sd a0,624(sp) + c003a258: 26b13c23 sd a1,632(sp) + c003a25c: e22a sd a0,256(sp) + c003a25e: e62e sd a1,264(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003a090: 0005889b sext.w a7,a1 + c003a260: 0005889b sext.w a7,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003a094: 892e mv s2,a1 + c003a264: 892e mv s2,a1 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44631 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44639 if (JS_IsException(namedCaptures)) - c003a096: dda88ee3 beq a7,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44633 + c003a266: dda88ee3 beq a7,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44641 if (functionalReplace) { - c003a09a: 67a6 ld a5,72(sp) - c003a09c: 16078d63 beqz a5,c003a216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44634 + c003a26a: 67a6 ld a5,72(sp) + c003a26c: 16078d63 beqz a5,c003a3e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44642 if (JS_DefinePropertyValueInt64(ctx, tab, n++, JS_NewInt32(ctx, position), JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003a0a0: 57e6 lw a5,120(sp) + c003a270: 57e6 lw a5,120(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003a0a2: 28013023 sd zero,640(sp) + c003a272: 28013023 sd zero,640(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44634 - c003a0a6: 7842 ld a6,48(sp) - c003a0a8: 28f12023 sw a5,640(sp) - c003a0ac: 28013703 ld a4,640(sp) - c003a0b0: 758e ld a1,224(sp) - c003a0b2: 4781 li a5,0 - c003a0b4: 86de mv a3,s7 - c003a0b6: 865a mv a2,s6 - c003a0b8: 8522 mv a0,s0 - c003a0ba: ecc6 sd a7,88(sp) - c003a0bc: 001b8c1b addiw s8,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44642 + c003a276: 7842 ld a6,48(sp) + c003a278: 28f12023 sw a5,640(sp) + c003a27c: 28013703 ld a4,640(sp) + c003a280: 758e ld a1,224(sp) + c003a282: 4781 li a5,0 + c003a284: 86de mv a3,s7 + c003a286: 865a mv a2,s6 + c003a288: 8522 mv a0,s0 + c003a28a: ecc6 sd a7,88(sp) + c003a28c: 001b8c1b addiw s8,s7,1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003a0c0: 28013423 sd zero,648(sp) - c003a0c4: fb3a sd a4,432(sp) - c003a0c6: ff02 sd zero,440(sp) + c003a290: 28013423 sd zero,648(sp) + c003a294: fb3a sd a4,432(sp) + c003a296: ff02 sd zero,440(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44634 - c003a0c8: f5da sd s6,232(sp) - c003a0ca: e4cef0ef jal ra,c0029716 - c003a0ce: da0542e3 bltz a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44636 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44642 + c003a298: f5da sd s6,232(sp) + c003a29a: e4cef0ef jal ra,c00298e6 + c003a29e: da0542e3 bltz a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44644 if (JS_DefinePropertyValueInt64(ctx, tab, n++, JS_DupValue(ctx, str), JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003a0d2: 67a2 ld a5,8(sp) - c003a0d4: 856e mv a0,s11 - c003a0d6: f96e sd s11,176(sp) - c003a0d8: 85be mv a1,a5 - c003a0da: fd3e sd a5,184(sp) - c003a0dc: d92cc0ef jal ra,c000666e - c003a0e0: 87ae mv a5,a1 - c003a0e2: e7ae sd a1,456(sp) - c003a0e4: 7842 ld a6,48(sp) - c003a0e6: 758e ld a1,224(sp) - c003a0e8: 762e ld a2,232(sp) - c003a0ea: 872a mv a4,a0 - c003a0ec: e3aa sd a0,448(sp) - c003a0ee: 86e2 mv a3,s8 - c003a0f0: 8522 mv a0,s0 - c003a0f2: e24ef0ef jal ra,c0029716 - c003a0f6: d6054ee3 bltz a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44638 + c003a2a2: 67a2 ld a5,8(sp) + c003a2a4: 856e mv a0,s11 + c003a2a6: f96e sd s11,176(sp) + c003a2a8: 85be mv a1,a5 + c003a2aa: fd3e sd a5,184(sp) + c003a2ac: cb0cc0ef jal ra,c000675c + c003a2b0: 87ae mv a5,a1 + c003a2b2: e7ae sd a1,456(sp) + c003a2b4: 7842 ld a6,48(sp) + c003a2b6: 758e ld a1,224(sp) + c003a2b8: 762e ld a2,232(sp) + c003a2ba: 872a mv a4,a0 + c003a2bc: e3aa sd a0,448(sp) + c003a2be: 86e2 mv a3,s8 + c003a2c0: 8522 mv a0,s0 + c003a2c2: e24ef0ef jal ra,c00298e6 + c003a2c6: d6054ee3 bltz a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44646 if (!JS_IsUndefined(namedCaptures)) { - c003a0fa: 68e6 ld a7,88(sp) - c003a0fc: 478d li a5,3 - c003a0fe: 0ef89963 bne a7,a5,c003a1f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44642 + c003a2ca: 68e6 ld a7,88(sp) + c003a2cc: 478d li a5,3 + c003a2ce: 0ef89963 bne a7,a5,c003a3c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44650 args[0] = JS_UNDEFINED; - c003a102: 478d li a5,3 - c003a104: 30f13c23 sd a5,792(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44643 + c003a2d2: 478d li a5,3 + c003a2d4: 30f13c23 sd a5,792(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44651 args[1] = tab; - c003a108: 778e ld a5,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44644 + c003a2d8: 778e ld a5,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44652 JS_FreeValue(ctx, rep_str); - c003a10a: 75ce ld a1,240(sp) - c003a10c: 8626 mv a2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44643 + c003a2da: 75ce ld a1,240(sp) + c003a2dc: 8626 mv a2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44651 args[1] = tab; - c003a10e: 32f13023 sd a5,800(sp) - c003a112: 77ae ld a5,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44644 + c003a2de: 32f13023 sd a5,800(sp) + c003a2e2: 77ae ld a5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44652 JS_FreeValue(ctx, rep_str); - c003a114: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44642 + c003a2e4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44650 args[0] = JS_UNDEFINED; - c003a116: 30013823 sd zero,784(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44643 + c003a2e6: 30013823 sd zero,784(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44651 args[1] = tab; - c003a11a: 32f13423 sd a5,808(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44644 + c003a2ea: 32f13423 sd a5,808(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44652 JS_FreeValue(ctx, rep_str); - c003a11e: a1bcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44645 + c003a2ee: 939cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44653 rep_str = JS_ToStringFree(ctx, js_function_apply(ctx, rep, 2, args, 0)); - c003a122: 666a ld a2,152(sp) - c003a124: 65ca ld a1,144(sp) - c003a126: 4781 li a5,0 - c003a128: 0e18 addi a4,sp,784 - c003a12a: 4689 li a3,2 - c003a12c: 8522 mv a0,s0 - c003a12e: df2ff0ef jal ra,c0039720 - c003a132: 862e mv a2,a1 - c003a134: f3aa sd a0,480(sp) - c003a136: f7ae sd a1,488(sp) - c003a138: 85aa mv a1,a0 - c003a13a: 8522 mv a0,s0 - c003a13c: ea4e00ef jal ra,c001a7e0 - c003a140: 84ae mv s1,a1 - c003a142: f9aa sd a0,240(sp) - c003a144: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44665 + c003a2f2: 666a ld a2,152(sp) + c003a2f4: 65ca ld a1,144(sp) + c003a2f6: 4781 li a5,0 + c003a2f8: 0e18 addi a4,sp,784 + c003a2fa: 4689 li a3,2 + c003a2fc: 8522 mv a0,s0 + c003a2fe: df2ff0ef jal ra,c00398f0 + c003a302: 862e mv a2,a1 + c003a304: f3aa sd a0,480(sp) + c003a306: f7ae sd a1,488(sp) + c003a308: 85aa mv a1,a0 + c003a30a: 8522 mv a0,s0 + c003a30c: ea4e00ef jal ra,c001a9b0 + c003a310: 84ae mv s1,a1 + c003a312: f9aa sd a0,240(sp) + c003a314: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44673 if (JS_IsException(rep_str)) - c003a146: 0004879b sext.w a5,s1 - c003a14a: d3a784e3 beq a5,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44667 + c003a316: 0004879b sext.w a5,s1 + c003a31a: d3a784e3 beq a5,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44675 if (position >= nextSourcePosition) { - c003a14e: 76e6 ld a3,120(sp) - c003a150: 0396c763 blt a3,s9,c003a17e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44668 + c003a31e: 76e6 ld a3,120(sp) + c003a320: 0396c763 blt a3,s9,c003a34e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44676 string_buffer_concat(b, sp, nextSourcePosition, position); - c003a154: 8666 mv a2,s9 - c003a156: 2681 sext.w a3,a3 - c003a158: 85ee mv a1,s11 - c003a15a: 1d88 addi a0,sp,752 - c003a15c: e0dde0ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44669 + c003a324: 8666 mv a2,s9 + c003a326: 2681 sext.w a3,a3 + c003a328: 85ee mv a1,s11 + c003a32a: 1d88 addi a0,sp,752 + c003a32c: e0dde0ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44677 string_buffer_concat_value(b, rep_str); - c003a160: 75ce ld a1,240(sp) - c003a162: 8626 mv a2,s1 - c003a164: 1d88 addi a0,sp,752 - c003a166: fda6 sd s1,248(sp) - c003a168: d70e10ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44670 + c003a330: 75ce ld a1,240(sp) + c003a332: 8626 mv a2,s1 + c003a334: 1d88 addi a0,sp,752 + c003a336: fda6 sd s1,248(sp) + c003a338: d70e10ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44678 nextSourcePosition = position + JS_VALUE_GET_STRING(matched)->len; - c003a16c: 6786 ld a5,64(sp) - c003a16e: 0047ac83 lw s9,4(a5) # 4004 <__clzdi2-0xbfffbffc> - c003a172: 67c6 ld a5,80(sp) - c003a174: 00fcfcb3 and s9,s9,a5 - c003a178: 77e6 ld a5,120(sp) - c003a17a: 00fc8cbb addw s9,s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44591 + c003a33c: 6786 ld a5,64(sp) + c003a33e: 0047ac83 lw s9,4(a5) # 4004 <__clzdi2-0xbfffbffc> + c003a342: 67c6 ld a5,80(sp) + c003a344: 00fcfcb3 and s9,s9,a5 + c003a348: 77e6 ld a5,120(sp) + c003a34a: 00fc8cbb addw s9,s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44599 for(j = 0; j < results->len; j++) { - c003a17e: 77e2 ld a5,56(sp) - c003a180: 2785 addiw a5,a5,1 - c003a182: fc3e sd a5,56(sp) - c003a184: b33d j c0039eb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44604 + c003a34e: 77e2 ld a5,56(sp) + c003a350: 2785 addiw a5,a5,1 + c003a352: fc3e sd a5,56(sp) + c003a354: b33d j c003a082 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44612 else if (position < 0) - c003a186: e80755e3 bgez a4,c003a010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44605 + c003a356: e80755e3 bgez a4,c003a1e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44613 position = 0; - c003a18a: fc82 sd zero,120(sp) - c003a18c: b551 j c003a010 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44617 + c003a35a: fc82 sd zero,120(sp) + c003a35c: b551 j c003a1e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44625 capN = JS_GetPropertyInt64(ctx, result, n); - c003a18e: 2c013583 ld a1,704(sp) - c003a192: 2c813603 ld a2,712(sp) - c003a196: 86de mv a3,s7 - c003a198: 8522 mv a0,s0 - c003a19a: d35f70ef jal ra,c0031ece - c003a19e: 2ea13023 sd a0,736(sp) - c003a1a2: 2eb13423 sd a1,744(sp) + c003a35e: 2c013583 ld a1,704(sp) + c003a362: 2c813603 ld a2,712(sp) + c003a366: 86de mv a3,s7 + c003a368: 8522 mv a0,s0 + c003a36a: d35f70ef jal ra,c003209e + c003a36e: 2ea13023 sd a0,736(sp) + c003a372: 2eb13423 sd a1,744(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003a1a6: 0005871b sext.w a4,a1 + c003a376: 0005871b sext.w a4,a1 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44617 - c003a1aa: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44618 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44625 + c003a37a: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44626 if (JS_IsException(capN)) - c003a1ac: cda703e3 beq a4,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44620 + c003a37c: cda703e3 beq a4,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44628 if (!JS_IsUndefined(capN)) { - c003a1b0: 468d li a3,3 - c003a1b2: 02d70063 beq a4,a3,c003a1d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44621 + c003a380: 468d li a3,3 + c003a382: 02d70063 beq a4,a3,c003a3a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44629 capN = JS_ToStringFree(ctx, capN); - c003a1b6: 85aa mv a1,a0 - c003a1b8: 863e mv a2,a5 - c003a1ba: 8522 mv a0,s0 - c003a1bc: e24e00ef jal ra,c001a7e0 - c003a1c0: 2ea13023 sd a0,736(sp) - c003a1c4: 2eb13423 sd a1,744(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44622 + c003a386: 85aa mv a1,a0 + c003a388: 863e mv a2,a5 + c003a38a: 8522 mv a0,s0 + c003a38c: e24e00ef jal ra,c001a9b0 + c003a390: 2ea13023 sd a0,736(sp) + c003a394: 2eb13423 sd a1,744(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44630 if (JS_IsException(capN)) - c003a1c8: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44621 + c003a398: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44629 capN = JS_ToStringFree(ctx, capN); - c003a1cc: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44622 + c003a39c: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44630 if (JS_IsException(capN)) - c003a1ce: cba702e3 beq a4,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44625 + c003a39e: cba702e3 beq a4,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44633 if (JS_DefinePropertyValueInt64(ctx, tab, n, capN, - c003a1d2: 7842 ld a6,48(sp) - c003a1d4: 2e013703 ld a4,736(sp) - c003a1d8: 758e ld a1,224(sp) - c003a1da: 86de mv a3,s7 - c003a1dc: 865a mv a2,s6 - c003a1de: 8522 mv a0,s0 - c003a1e0: 2ef13423 sd a5,744(sp) - c003a1e4: d32ef0ef jal ra,c0029716 - c003a1e8: c80545e3 bltz a0,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44615 + c003a3a2: 7842 ld a6,48(sp) + c003a3a4: 2e013703 ld a4,736(sp) + c003a3a8: 758e ld a1,224(sp) + c003a3aa: 86de mv a3,s7 + c003a3ac: 865a mv a2,s6 + c003a3ae: 8522 mv a0,s0 + c003a3b0: 2ef13423 sd a5,744(sp) + c003a3b4: d32ef0ef jal ra,c00298e6 + c003a3b8: c80545e3 bltz a0,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44623 for(n = 1; n < nCaptures; n++) { - c003a1ec: 2b85 addiw s7,s7,1 - c003a1ee: b59d j c003a054 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44639 + c003a3bc: 2b85 addiw s7,s7,1 + c003a3be: b59d j c003a224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44647 if (JS_DefinePropertyValueInt64(ctx, tab, n++, JS_DupValue(ctx, namedCaptures), JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003a1f0: 6512 ld a0,256(sp) - c003a1f2: 65b2 ld a1,264(sp) - c003a1f4: c7acc0ef jal ra,c000666e - c003a1f8: 87ae mv a5,a1 - c003a1fa: efae sd a1,472(sp) - c003a1fc: 7842 ld a6,48(sp) - c003a1fe: 758e ld a1,224(sp) - c003a200: 762e ld a2,232(sp) - c003a202: 872a mv a4,a0 - c003a204: ebaa sd a0,464(sp) - c003a206: 002b869b addiw a3,s7,2 - c003a20a: 8522 mv a0,s0 - c003a20c: d0aef0ef jal ra,c0029716 - c003a210: ee0559e3 bgez a0,c003a102 - c003a214: b9b9 j c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44648 + c003a3c0: 6512 ld a0,256(sp) + c003a3c2: 65b2 ld a1,264(sp) + c003a3c4: b98cc0ef jal ra,c000675c + c003a3c8: 87ae mv a5,a1 + c003a3ca: efae sd a1,472(sp) + c003a3cc: 7842 ld a6,48(sp) + c003a3ce: 758e ld a1,224(sp) + c003a3d0: 762e ld a2,232(sp) + c003a3d2: 872a mv a4,a0 + c003a3d4: ebaa sd a0,464(sp) + c003a3d6: 002b869b addiw a3,s7,2 + c003a3da: 8522 mv a0,s0 + c003a3dc: d0aef0ef jal ra,c00298e6 + c003a3e0: ee0559e3 bgez a0,c003a2d2 + c003a3e4: b9b9 j c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44656 if (!JS_IsUndefined(namedCaptures)) { - c003a216: 478d li a5,3 - c003a218: 0af88263 beq a7,a5,c003a2bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44649 + c003a3e6: 478d li a5,3 + c003a3e8: 0af88263 beq a7,a5,c003a48c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44657 namedCaptures1 = JS_ToObject(ctx, namedCaptures); - c003a21c: 85aa mv a1,a0 - c003a21e: 864a mv a2,s2 - c003a220: 8522 mv a0,s0 - c003a222: bcaee0ef jal ra,c00285ec - c003a226: 2ca13823 sd a0,720(sp) - c003a22a: 2cb13c23 sd a1,728(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44650 + c003a3ec: 85aa mv a1,a0 + c003a3ee: 864a mv a2,s2 + c003a3f0: 8522 mv a0,s0 + c003a3f2: bcaee0ef jal ra,c00287bc + c003a3f6: 2ca13823 sd a0,720(sp) + c003a3fa: 2cb13c23 sd a1,728(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44658 if (JS_IsException(namedCaptures1)) - c003a22e: 0005879b sext.w a5,a1 - c003a232: c5a780e3 beq a5,s10,c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44655 (discriminator 4) + c003a3fe: 0005879b sext.w a5,a1 + c003a402: c5a780e3 beq a5,s10,c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44663 (discriminator 4) args[0] = matched; - c003a236: 6786 ld a5,64(sp) + c003a406: 6786 ld a5,64(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 4) return JS_MKVAL(JS_TAG_INT, val); - c003a238: 28013823 sd zero,656(sp) + c003a408: 28013823 sd zero,656(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44659 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44667 (discriminator 4) args[4] = namedCaptures1; - c003a23c: 2cb13c23 sd a1,728(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44655 (discriminator 4) + c003a40c: 2cb13c23 sd a1,728(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44663 (discriminator 4) args[0] = matched; - c003a240: 30f13823 sd a5,784(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44656 (discriminator 4) + c003a410: 30f13823 sd a5,784(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44664 (discriminator 4) args[1] = str; - c003a244: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44659 (discriminator 4) + c003a414: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44667 (discriminator 4) args[4] = namedCaptures1; - c003a246: 34b13c23 sd a1,856(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44661 (discriminator 4) + c003a416: 34b13c23 sd a1,856(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44669 (discriminator 4) JS_FreeValue(ctx, rep_str); - c003a24a: 75ce ld a1,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44656 (discriminator 4) + c003a41a: 75ce ld a1,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44664 (discriminator 4) args[1] = str; - c003a24c: 32f13423 sd a5,808(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44657 (discriminator 4) + c003a41c: 32f13423 sd a5,808(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44665 (discriminator 4) args[2] = JS_NewInt32(ctx, position); - c003a250: 57e6 lw a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44661 (discriminator 4) + c003a420: 57e6 lw a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44669 (discriminator 4) JS_FreeValue(ctx, rep_str); - c003a252: 8626 mv a2,s1 - c003a254: 8522 mv a0,s0 - c003a256: 28f12823 sw a5,656(sp) - c003a25a: 29013783 ld a5,656(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44655 (discriminator 4) + c003a422: 8626 mv a2,s1 + c003a424: 8522 mv a0,s0 + c003a426: 28f12823 sw a5,656(sp) + c003a42a: 29013783 ld a5,656(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44663 (discriminator 4) args[0] = matched; - c003a25e: 31813c23 sd s8,792(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44656 (discriminator 4) + c003a42e: 31813c23 sd s8,792(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44664 (discriminator 4) args[1] = str; - c003a262: 33b13023 sd s11,800(sp) - c003a266: 2ef13023 sd a5,736(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44657 (discriminator 4) + c003a432: 33b13023 sd s11,800(sp) + c003a436: 2ef13023 sd a5,736(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44665 (discriminator 4) args[2] = JS_NewInt32(ctx, position); - c003a26a: 32f13823 sd a5,816(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44658 (discriminator 4) + c003a43a: 32f13823 sd a5,816(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44666 (discriminator 4) args[3] = tab; - c003a26e: 778e ld a5,224(sp) + c003a43e: 778e ld a5,224(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 4) - c003a270: 28013c23 sd zero,664(sp) - c003a274: 2e013423 sd zero,744(sp) + c003a440: 28013c23 sd zero,664(sp) + c003a444: 2e013423 sd zero,744(sp) js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44658 (discriminator 4) - c003a278: 34f13023 sd a5,832(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44659 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44666 (discriminator 4) + c003a448: 34f13023 sd a5,832(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44667 (discriminator 4) args[4] = namedCaptures1; - c003a27c: 2d013783 ld a5,720(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44657 (discriminator 4) + c003a44c: 2d013783 ld a5,720(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44665 (discriminator 4) args[2] = JS_NewInt32(ctx, position); - c003a280: 32013c23 sd zero,824(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44658 (discriminator 4) + c003a450: 32013c23 sd zero,824(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44666 (discriminator 4) args[3] = tab; - c003a284: f5da sd s6,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44659 (discriminator 4) + c003a454: f5da sd s6,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44667 (discriminator 4) args[4] = namedCaptures1; - c003a286: 34f13823 sd a5,848(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44660 (discriminator 4) + c003a456: 34f13823 sd a5,848(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44668 (discriminator 4) args[5] = rep_val; - c003a28a: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44658 (discriminator 4) + c003a45a: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44666 (discriminator 4) args[3] = tab; - c003a28c: 35613423 sd s6,840(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44660 (discriminator 4) + c003a45c: 35613423 sd s6,840(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44668 (discriminator 4) args[5] = rep_val; - c003a290: 36f13023 sd a5,864(sp) - c003a294: 7782 ld a5,32(sp) - c003a296: 36f13423 sd a5,872(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44661 (discriminator 4) + c003a460: 36f13023 sd a5,864(sp) + c003a464: 7782 ld a5,32(sp) + c003a466: 36f13423 sd a5,872(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44669 (discriminator 4) JS_FreeValue(ctx, rep_str); - c003a29a: 89fcd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44662 (discriminator 4) + c003a46a: fbccd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44670 (discriminator 4) rep_str = js_string___GetSubstitution(ctx, JS_UNDEFINED, 6, args); - c003a29e: 0e0c addi a1,sp,784 - c003a2a0: 8522 mv a0,s0 - c003a2a2: e45f70ef jal ra,c00320e6 - c003a2a6: 84ae mv s1,a1 - c003a2a8: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44663 (discriminator 4) + c003a46e: 0e0c addi a1,sp,784 + c003a470: 8522 mv a0,s0 + c003a472: e45f70ef jal ra,c00322b6 + c003a476: 84ae mv s1,a1 + c003a478: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44671 (discriminator 4) JS_FreeValue(ctx, namedCaptures1); - c003a2aa: 2d813603 ld a2,728(sp) - c003a2ae: 2d013583 ld a1,720(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44662 (discriminator 4) + c003a47a: 2d813603 ld a2,728(sp) + c003a47e: 2d013583 ld a1,720(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44670 (discriminator 4) rep_str = js_string___GetSubstitution(ctx, JS_UNDEFINED, 6, args); - c003a2b2: f9aa sd a0,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44663 (discriminator 4) + c003a482: f9aa sd a0,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44671 (discriminator 4) JS_FreeValue(ctx, namedCaptures1); - c003a2b4: 8522 mv a0,s0 - c003a2b6: 883cd0ef jal ra,c0007b38 - c003a2ba: b571 j c003a146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44653 (discriminator 5) + c003a484: 8522 mv a0,s0 + c003a486: fa0cd0ef jal ra,c0007c26 + c003a48a: b571 j c003a316 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44661 (discriminator 5) namedCaptures1 = JS_UNDEFINED; - c003a2bc: 2c013823 sd zero,720(sp) - c003a2c0: 458d li a1,3 - c003a2c2: bf95 j c003a236 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44520 + c003a48c: 2c013823 sd zero,720(sp) + c003a490: 458d li a1,3 + c003a492: bf95 j c003a406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 rep_val = JS_UNDEFINED; - c003a2c4: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 + c003a494: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c003a2c6: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c003a496: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c003a2c8: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 + c003a498: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c003a2ca: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44521 + c003a49a: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44529 matched = JS_UNDEFINED; - c003a2cc: 498d li s3,3 - c003a2ce: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44520 + c003a49c: 498d li s3,3 + c003a49e: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44528 rep_val = JS_UNDEFINED; - c003a2d0: f03e sd a5,32(sp) - c003a2d2: ec02 sd zero,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44523 + c003a4a0: f03e sd a5,32(sp) + c003a4a2: ec02 sd zero,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44531 flags = JS_UNDEFINED; - c003a2d4: e83e sd a5,16(sp) - c003a2d6: f402 sd zero,40(sp) - c003a2d8: be69 j c0039e72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44525 + c003a4a4: e83e sd a5,16(sp) + c003a4a6: f402 sd zero,40(sp) + c003a4a8: be69 j c003a042 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44533 namedCaptures = JS_UNDEFINED; - c003a2da: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44524 + c003a4aa: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44532 rep_str = JS_UNDEFINED; - c003a2dc: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44522 + c003a4ac: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44530 tab = JS_UNDEFINED; - c003a2de: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44521 + c003a4ae: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44529 matched = JS_UNDEFINED; - c003a2e0: 498d li s3,3 - c003a2e2: 4a01 li s4,0 - c003a2e4: b679 j c0039e72 + c003a4b0: 498d li s3,3 + c003a4b2: 4a01 li s4,0 + c003a4b4: b679 j c003a042 JS_RegExpDelete(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44140 return JS_EXCEPTION; - c003a2e6: 498d li s3,3 - c003a2e8: 4a01 li s4,0 + c003a4b6: 498d li s3,3 + c003a4b8: 4a01 li s4,0 js_regexp_Symbol_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44568 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44576 if (JS_IsException(result)) - c003a2ea: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44574 + c003a4ba: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:44582 if (!is_global) - c003a2ec: 5d7d li s10,-1 - c003a2ee: b4f5 j c0039dda + c003a4bc: 5d7d li s10,-1 + c003a4be: b4f5 j c0039faa -00000000c003a2f0 : +00000000c003a4c0 : js_reflect_apply(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45646 return js_function_apply(ctx, argv[0], max_int(0, argc - 1), argv + 1, 2); - c003a2f0: fff6879b addiw a5,a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45637 + c003a4c0: fff6879b addiw a5,a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45645 { - c003a2f4: 863a mv a2,a4 - c003a2f6: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45638 + c003a4c4: 863a mv a2,a4 + c003a4c6: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45646 return js_function_apply(ctx, argv[0], max_int(0, argc - 1), argv + 1, 2); - c003a2f8: 0741 addi a4,a4,16 - c003a2fa: 4681 li a3,0 - c003a2fc: 0007c363 bltz a5,c003a302 - c003a300: 86be mv a3,a5 - c003a302: 620c ld a1,0(a2) - c003a304: 6610 ld a2,8(a2) - c003a306: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45639 -} - c003a308: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45638 + c003a4c8: 0741 addi a4,a4,16 + c003a4ca: 4681 li a3,0 + c003a4cc: 0007c363 bltz a5,c003a4d2 + c003a4d0: 86be mv a3,a5 + c003a4d2: 620c ld a1,0(a2) + c003a4d4: 6610 ld a2,8(a2) + c003a4d6: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45647 +} + c003a4d8: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45646 return js_function_apply(ctx, argv[0], max_int(0, argc - 1), argv + 1, 2); - c003a30a: c16ff06f j c0039720 + c003a4da: c16ff06f j c00398f0 -00000000c003a30e : +00000000c003a4de : js_load_module_rejected(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28471 -{ - c003a30e: 711d addi sp,sp,-96 - c003a310: e8a2 sd s0,80(sp) - c003a312: ec86 sd ra,88(sp) - c003a314: 842a mv s0,a0 - c003a316: 8642 mv a2,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28479 +{ + c003a4de: 711d addi sp,sp,-96 + c003a4e0: e8a2 sd s0,80(sp) + c003a4e2: ec86 sd ra,88(sp) + c003a4e4: 842a mv s0,a0 + c003a4e6: 8642 mv a2,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28485 if (argc >= 1) - c003a318: 02d05b63 blez a3,c003a34e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28478 + c003a4e8: 02d05b63 blez a3,c003a51e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28486 error = argv[0]; - c003a31c: 631c ld a5,0(a4) - c003a31e: e83e sd a5,16(sp) - c003a320: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28480 + c003a4ec: 631c ld a5,0(a4) + c003a4ee: e83e sd a5,16(sp) + c003a4f0: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28488 error = JS_UNDEFINED; - c003a322: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28481 + c003a4f2: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28489 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c003a324: 6a0c ld a1,16(a2) - c003a326: 6e10 ld a2,24(a2) - c003a328: 01010813 addi a6,sp,16 - c003a32c: 4785 li a5,1 - c003a32e: 4681 li a3,0 - c003a330: 470d li a4,3 - c003a332: 8522 mv a0,s0 - c003a334: bd2ff0ef jal ra,c0039706 - c003a338: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28483 + c003a4f4: 6a0c ld a1,16(a2) + c003a4f6: 6e10 ld a2,24(a2) + c003a4f8: 01010813 addi a6,sp,16 + c003a4fc: 4785 li a5,1 + c003a4fe: 4681 li a3,0 + c003a500: 470d li a4,3 + c003a502: 8522 mv a0,s0 + c003a504: bd2ff0ef jal ra,c00398d6 + c003a508: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28491 JS_FreeValue(ctx, ret); - c003a33a: 85aa mv a1,a0 - c003a33c: 8522 mv a0,s0 - c003a33e: ffacd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28485 -} - c003a342: 60e6 ld ra,88(sp) - c003a344: 6446 ld s0,80(sp) - c003a346: 4501 li a0,0 - c003a348: 458d li a1,3 - c003a34a: 6125 addi sp,sp,96 - c003a34c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28480 + c003a50a: 85aa mv a1,a0 + c003a50c: 8522 mv a0,s0 + c003a50e: f18cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28493 +} + c003a512: 60e6 ld ra,88(sp) + c003a514: 6446 ld s0,80(sp) + c003a516: 4501 li a0,0 + c003a518: 458d li a1,3 + c003a51a: 6125 addi sp,sp,96 + c003a51c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28488 error = JS_UNDEFINED; - c003a34e: e802 sd zero,16(sp) - c003a350: 478d li a5,3 - c003a352: bfc1 j c003a322 + c003a51e: e802 sd zero,16(sp) + c003a520: 478d li a5,3 + c003a522: bfc1 j c003a4f2 -00000000c003a354 : +00000000c003a524 : js_load_module_fulfilled(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28497 { - c003a354: 7159 addi sp,sp,-112 - c003a356: f0a2 sd s0,96(sp) - c003a358: eca6 sd s1,88(sp) - c003a35a: f486 sd ra,104(sp) - c003a35c: e8ca sd s2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28495 + c003a524: 7159 addi sp,sp,-112 + c003a526: f0a2 sd s0,96(sp) + c003a528: eca6 sd s1,88(sp) + c003a52a: f486 sd ra,104(sp) + c003a52c: e8ca sd s2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28503 ns = JS_GetModuleNamespace(ctx, m); - c003a35e: 02083583 ld a1,32(a6) # 4020 <__clzdi2-0xbfffbfe0> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28489 + c003a52e: 02083583 ld a1,32(a6) # 4020 <__clzdi2-0xbfffbfe0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28497 { - c003a362: 842a mv s0,a0 - c003a364: 84c2 mv s1,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28495 + c003a532: 842a mv s0,a0 + c003a534: 84c2 mv s1,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28503 ns = JS_GetModuleNamespace(ctx, m); - c003a366: c3cef0ef jal ra,c00297a2 - c003a36a: ec2e sd a1,24(sp) - c003a36c: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28496 + c003a536: c3cef0ef jal ra,c0029972 + c003a53a: ec2e sd a1,24(sp) + c003a53c: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28504 if (JS_IsException(ns)) { - c003a36e: 2581 sext.w a1,a1 - c003a370: 4799 li a5,6 - c003a372: 02f59d63 bne a1,a5,c003a3ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28497 + c003a53e: 2581 sext.w a1,a1 + c003a540: 4799 li a5,6 + c003a542: 02f59d63 bne a1,a5,c003a57c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28505 JSValue err = JS_GetException(ctx); - c003a376: 8522 mv a0,s0 - c003a378: b50d00ef jal ra,c000a6c8 - c003a37c: f02a sd a0,32(sp) - c003a37e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28498 - js_load_module_rejected(ctx, JS_UNDEFINED, 1, (JSValueConst *)&err, 0, func_data); - c003a380: 490d li s2,3 - c003a382: 8826 mv a6,s1 - c003a384: 4781 li a5,0 - c003a386: 1018 addi a4,sp,32 - c003a388: 4685 li a3,1 - c003a38a: 4581 li a1,0 - c003a38c: 460d li a2,3 - c003a38e: 8522 mv a0,s0 - c003a390: f802 sd zero,48(sp) - c003a392: fc4a sd s2,56(sp) - c003a394: f7bff0ef jal ra,c003a30e + c003a546: 8522 mv a0,s0 + c003a548: a6ed00ef jal ra,c000a7b6 + c003a54c: f02a sd a0,32(sp) + c003a54e: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28506 -} - c003a398: 70a6 ld ra,104(sp) - c003a39a: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28505 + js_load_module_rejected(ctx, JS_UNDEFINED, 1, (JSValueConst *)&err, 0, func_data); + c003a550: 490d li s2,3 + c003a552: 8826 mv a6,s1 + c003a554: 4781 li a5,0 + c003a556: 1018 addi a4,sp,32 + c003a558: 4685 li a3,1 + c003a55a: 4581 li a1,0 + c003a55c: 460d li a2,3 + c003a55e: 8522 mv a0,s0 + c003a560: f802 sd zero,48(sp) + c003a562: fc4a sd s2,56(sp) + c003a564: f7bff0ef jal ra,c003a4de +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28514 +} + c003a568: 70a6 ld ra,104(sp) + c003a56a: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28513 return JS_UNDEFINED; - c003a39c: e4ca sd s2,72(sp) - c003a39e: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28506 -} - c003a3a0: 6506 ld a0,64(sp) - c003a3a2: 65a6 ld a1,72(sp) - c003a3a4: 64e6 ld s1,88(sp) - c003a3a6: 6946 ld s2,80(sp) - c003a3a8: 6165 addi sp,sp,112 - c003a3aa: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28501 + c003a56c: e4ca sd s2,72(sp) + c003a56e: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28514 +} + c003a570: 6506 ld a0,64(sp) + c003a572: 65a6 ld a1,72(sp) + c003a574: 64e6 ld s1,88(sp) + c003a576: 6946 ld s2,80(sp) + c003a578: 6165 addi sp,sp,112 + c003a57a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28509 ret = JS_Call(ctx, resolving_funcs[0], JS_UNDEFINED, - c003a3ac: 6490 ld a2,8(s1) - c003a3ae: 608c ld a1,0(s1) - c003a3b0: 01010813 addi a6,sp,16 - c003a3b4: 4785 li a5,1 - c003a3b6: 4681 li a3,0 - c003a3b8: 470d li a4,3 - c003a3ba: 490d li s2,3 - c003a3bc: 8522 mv a0,s0 - c003a3be: f802 sd zero,48(sp) - c003a3c0: fc4a sd s2,56(sp) - c003a3c2: b44ff0ef jal ra,c0039706 - c003a3c6: 862e mv a2,a1 - c003a3c8: f02a sd a0,32(sp) - c003a3ca: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28503 + c003a57c: 6490 ld a2,8(s1) + c003a57e: 608c ld a1,0(s1) + c003a580: 01010813 addi a6,sp,16 + c003a584: 4785 li a5,1 + c003a586: 4681 li a3,0 + c003a588: 470d li a4,3 + c003a58a: 490d li s2,3 + c003a58c: 8522 mv a0,s0 + c003a58e: f802 sd zero,48(sp) + c003a590: fc4a sd s2,56(sp) + c003a592: b44ff0ef jal ra,c00398d6 + c003a596: 862e mv a2,a1 + c003a598: f02a sd a0,32(sp) + c003a59a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28511 JS_FreeValue(ctx, ret); - c003a3cc: 85aa mv a1,a0 - c003a3ce: 8522 mv a0,s0 - c003a3d0: f68cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28504 + c003a59c: 85aa mv a1,a0 + c003a59e: 8522 mv a0,s0 + c003a5a0: e86cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28512 JS_FreeValue(ctx, ns); - c003a3d4: 65c2 ld a1,16(sp) - c003a3d6: 6662 ld a2,24(sp) - c003a3d8: 8522 mv a0,s0 - c003a3da: f5ecd0ef jal ra,c0007b38 - c003a3de: bf6d j c003a398 + c003a5a4: 65c2 ld a1,16(sp) + c003a5a6: 6662 ld a2,24(sp) + c003a5a8: 8522 mv a0,s0 + c003a5aa: e7ccd0ef jal ra,c0007c26 + c003a5ae: bf6d j c003a568 -00000000c003a3e0 : +00000000c003a5b0 : js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48128 { - c003a3e0: 7155 addi sp,sp,-208 - c003a3e2: e1a2 sd s0,192(sp) - c003a3e4: e586 sd ra,200(sp) - c003a3e6: fd26 sd s1,184(sp) - c003a3e8: f94a sd s2,176(sp) - c003a3ea: f54e sd s3,168(sp) - c003a3ec: e02e sd a1,0(sp) - c003a3ee: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48127 + c003a5b0: 7155 addi sp,sp,-208 + c003a5b2: e1a2 sd s0,192(sp) + c003a5b4: e586 sd ra,200(sp) + c003a5b6: fd26 sd s1,184(sp) + c003a5b8: f94a sd s2,176(sp) + c003a5ba: f54e sd s3,168(sp) + c003a5bc: e02e sd a1,0(sp) + c003a5be: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48135 executor = argv[0]; - c003a3f0: 630c ld a1,0(a4) - c003a3f2: 6710 ld a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48120 + c003a5c0: 630c ld a1,0(a4) + c003a5c2: 6710 ld a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48128 { - c003a3f4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48127 + c003a5c4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48135 executor = argv[0]; - c003a3f6: e82e sd a1,16(sp) - c003a3f8: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48128 + c003a5c6: e82e sd a1,16(sp) + c003a5c8: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48136 if (check_function(ctx, executor)) - c003a3fa: 8aed90ef jal ra,c00134a8 - c003a3fe: c509 beqz a0,c003a408 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48163 + c003a5ca: fcdd80ef jal ra,c0013596 + c003a5ce: c509 beqz a0,c003a5d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48171 return JS_EXCEPTION; - c003a400: 4799 li a5,6 - c003a402: f882 sd zero,112(sp) - c003a404: fcbe sd a5,120(sp) - c003a406: a239 j c003a514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48130 + c003a5d0: 4799 li a5,6 + c003a5d2: f882 sd zero,112(sp) + c003a5d4: fcbe sd a5,120(sp) + c003a5d6: a239 j c003a6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48138 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_PROMISE); - c003a408: 6582 ld a1,0(sp) - c003a40a: 6622 ld a2,8(sp) - c003a40c: 02d00693 li a3,45 - c003a410: 8522 mv a0,s0 - c003a412: dd8dc0ef jal ra,c00169ea - c003a416: f02a sd a0,32(sp) - c003a418: f42e sd a1,40(sp) + c003a5d8: 6582 ld a1,0(sp) + c003a5da: 6622 ld a2,8(sp) + c003a5dc: 02d00693 li a3,45 + c003a5e0: 8522 mv a0,s0 + c003a5e2: dd8dc0ef jal ra,c0016bba + c003a5e6: f02a sd a0,32(sp) + c003a5e8: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003a41a: 0005849b sext.w s1,a1 + c003a5ea: 0005849b sext.w s1,a1 js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48131 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48139 if (JS_IsException(obj)) - c003a41e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48130 + c003a5ee: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48138 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_PROMISE); - c003a420: 89aa mv s3,a0 - c003a422: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48131 + c003a5f0: 89aa mv s3,a0 + c003a5f2: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48139 if (JS_IsException(obj)) - c003a424: fcf48ee3 beq s1,a5,c003a400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48133 + c003a5f4: fcf48ee3 beq s1,a5,c003a5d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48141 s = js_mallocz(ctx, sizeof(*s)); - c003a428: 04000593 li a1,64 - c003a42c: 8522 mv a0,s0 - c003a42e: 8afdb0ef jal ra,c0015cdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48134 + c003a5f8: 04000593 li a1,64 + c003a5fc: 8522 mv a0,s0 + c003a5fe: 8afdb0ef jal ra,c0015eac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48142 if (!s) - c003a432: c555 beqz a0,c003a4de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48139 + c003a602: c555 beqz a0,c003a6ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48147 init_list_head(&s->promise_reactions[i]); - c003a434: 00850793 addi a5,a0,8 + c003a604: 00850793 addi a5,a0,8 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c003a438: e51c sd a5,8(a0) + c003a608: e51c sd a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c003a43a: e91c sd a5,16(a0) + c003a60a: e91c sd a5,16(a0) js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48139 - c003a43c: 01850793 addi a5,a0,24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48147 + c003a60c: 01850793 addi a5,a0,24 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c003a440: ed1c sd a5,24(a0) + c003a610: ed1c sd a5,24(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c003a442: f11c sd a5,32(a0) + c003a612: f11c sd a5,32(a0) js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 s->promise_result = JS_UNDEFINED; - c003a444: 478d li a5,3 - c003a446: fd1c sd a5,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48136 + c003a614: 478d li a5,3 + c003a616: fd1c sd a5,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48144 s->promise_state = JS_PROMISE_PENDING; - c003a448: 00052023 sw zero,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48137 + c003a618: 00052023 sw zero,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48145 s->is_handled = FALSE; - c003a44c: 02052423 sw zero,40(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48140 + c003a61c: 02052423 sw zero,40(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 s->promise_result = JS_UNDEFINED; - c003a450: 02053823 sd zero,48(a0) + c003a620: 02053823 sd zero,48(a0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c003a454: 57fd li a5,-1 - c003a456: 00f49463 bne s1,a5,c003a45e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c003a624: 57fd li a5,-1 + c003a626: 00f49463 bne s1,a5,c003a62e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c003a45a: 02a9b823 sd a0,48(s3) + c003a62a: 02a9b823 sd a0,48(s3) js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48142 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48150 if (js_create_resolving_functions(ctx, args, obj)) - c003a45e: 7602 ld a2,32(sp) - c003a460: 76a2 ld a3,40(sp) - c003a462: 010c addi a1,sp,128 - c003a464: 8522 mv a0,s0 - c003a466: 9d3ee0ef jal ra,c0028e38 - c003a46a: e935 bnez a0,c003a4de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48144 + c003a62e: 7602 ld a2,32(sp) + c003a630: 76a2 ld a3,40(sp) + c003a632: 010c addi a1,sp,128 + c003a634: 8522 mv a0,s0 + c003a636: 9d3ee0ef jal ra,c0029008 + c003a63a: e935 bnez a0,c003a6ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48152 ret = JS_Call(ctx, executor, JS_UNDEFINED, 2, (JSValueConst *)args); - c003a46c: 65c2 ld a1,16(sp) - c003a46e: 6662 ld a2,24(sp) - c003a470: 4789 li a5,2 - c003a472: 08010813 addi a6,sp,128 - c003a476: 4681 li a3,0 - c003a478: 470d li a4,3 - c003a47a: 8522 mv a0,s0 - c003a47c: a8aff0ef jal ra,c0039706 - c003a480: f82a sd a0,48(sp) - c003a482: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48145 + c003a63c: 65c2 ld a1,16(sp) + c003a63e: 6662 ld a2,24(sp) + c003a640: 4789 li a5,2 + c003a642: 08010813 addi a6,sp,128 + c003a646: 4681 li a3,0 + c003a648: 470d li a4,3 + c003a64a: 8522 mv a0,s0 + c003a64c: a8aff0ef jal ra,c00398d6 + c003a650: f82a sd a0,48(sp) + c003a652: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48153 if (JS_IsException(ret)) { - c003a484: 0005849b sext.w s1,a1 - c003a488: 4799 li a5,6 - c003a48a: 06f49463 bne s1,a5,c003a4f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48147 + c003a654: 0005849b sext.w s1,a1 + c003a658: 4799 li a5,6 + c003a65a: 06f49463 bne s1,a5,c003a6c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48155 error = JS_GetException(ctx); - c003a48e: 8522 mv a0,s0 - c003a490: a38d00ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 + c003a65e: 8522 mv a0,s0 + c003a660: 956d00ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 ret2 = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003a494: 666a ld a2,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48147 + c003a664: 666a ld a2,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48155 error = JS_GetException(ctx); - c003a496: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 + c003a666: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 ret2 = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003a498: 65ca ld a1,144(sp) - c003a49a: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48147 + c003a668: 65ca ld a1,144(sp) + c003a66a: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48155 error = JS_GetException(ctx); - c003a49c: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 + c003a66c: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 ret2 = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003a49e: fcbe sd a5,120(sp) - c003a4a0: 06010813 addi a6,sp,96 - c003a4a4: 4785 li a5,1 - c003a4a6: 4681 li a3,0 - c003a4a8: 470d li a4,3 - c003a4aa: 8522 mv a0,s0 - c003a4ac: f882 sd zero,112(sp) - c003a4ae: a58ff0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48149 + c003a66e: fcbe sd a5,120(sp) + c003a670: 06010813 addi a6,sp,96 + c003a674: 4785 li a5,1 + c003a676: 4681 li a3,0 + c003a678: 470d li a4,3 + c003a67a: 8522 mv a0,s0 + c003a67c: f882 sd zero,112(sp) + c003a67e: a58ff0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48157 JS_FreeValue(ctx, error); - c003a4b2: 7626 ld a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 + c003a682: 7626 ld a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 ret2 = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003a4b4: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48149 + c003a684: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48157 JS_FreeValue(ctx, error); - c003a4b6: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48148 + c003a686: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 ret2 = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003a4b8: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48149 + c003a688: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48157 JS_FreeValue(ctx, error); - c003a4ba: 8522 mv a0,s0 - c003a4bc: e7ccd0ef jal ra,c0007b38 + c003a68a: 8522 mv a0,s0 + c003a68c: d9acd0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003a4c0: 6666 ld a2,88(sp) + c003a690: 6666 ld a2,88(sp) js_promise_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48150 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48158 if (JS_IsException(ret2)) - c003a4c2: 0006079b sext.w a5,a2 - c003a4c6: 02979263 bne a5,s1,c003a4ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48159 + c003a692: 0006079b sext.w a5,a2 + c003a696: 02979263 bne a5,s1,c003a6ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48167 JS_FreeValue(ctx, args[0]); - c003a4ca: 658a ld a1,128(sp) - c003a4cc: 662a ld a2,136(sp) - c003a4ce: 8522 mv a0,s0 - c003a4d0: e68cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48160 + c003a69a: 658a ld a1,128(sp) + c003a69c: 662a ld a2,136(sp) + c003a69e: 8522 mv a0,s0 + c003a6a0: d86cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48168 JS_FreeValue(ctx, args[1]); - c003a4d4: 65ca ld a1,144(sp) - c003a4d6: 666a ld a2,152(sp) - c003a4d8: 8522 mv a0,s0 - c003a4da: e5ecd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48162 + c003a6a4: 65ca ld a1,144(sp) + c003a6a6: 666a ld a2,152(sp) + c003a6a8: 8522 mv a0,s0 + c003a6aa: d7ccd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48170 JS_FreeValue(ctx, obj); - c003a4de: 7582 ld a1,32(sp) - c003a4e0: 7622 ld a2,40(sp) - c003a4e2: 8522 mv a0,s0 - c003a4e4: e54cd0ef jal ra,c0007b38 - c003a4e8: bf21 j c003a400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48152 + c003a6ae: 7582 ld a1,32(sp) + c003a6b0: 7622 ld a2,40(sp) + c003a6b2: 8522 mv a0,s0 + c003a6b4: d72cd0ef jal ra,c0007c26 + c003a6b8: bf21 j c003a5d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48160 JS_FreeValue(ctx, ret2); - c003a4ea: 65c6 ld a1,80(sp) - c003a4ec: 8522 mv a0,s0 - c003a4ee: e4acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48154 + c003a6ba: 65c6 ld a1,80(sp) + c003a6bc: 8522 mv a0,s0 + c003a6be: d68cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48162 JS_FreeValue(ctx, ret); - c003a4f2: 75c2 ld a1,48(sp) - c003a4f4: 7662 ld a2,56(sp) - c003a4f6: 8522 mv a0,s0 - c003a4f8: e40cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48155 + c003a6c2: 75c2 ld a1,48(sp) + c003a6c4: 7662 ld a2,56(sp) + c003a6c6: 8522 mv a0,s0 + c003a6c8: d5ecd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48163 JS_FreeValue(ctx, args[0]); - c003a4fc: 658a ld a1,128(sp) - c003a4fe: 662a ld a2,136(sp) - c003a500: 8522 mv a0,s0 - c003a502: e36cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48156 + c003a6cc: 658a ld a1,128(sp) + c003a6ce: 662a ld a2,136(sp) + c003a6d0: 8522 mv a0,s0 + c003a6d2: d54cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48164 JS_FreeValue(ctx, args[1]); - c003a506: 65ca ld a1,144(sp) - c003a508: 666a ld a2,152(sp) - c003a50a: 8522 mv a0,s0 - c003a50c: e2ccd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48157 + c003a6d6: 65ca ld a1,144(sp) + c003a6d8: 666a ld a2,152(sp) + c003a6da: 8522 mv a0,s0 + c003a6dc: d4acd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48165 return obj; - c003a510: f8ce sd s3,112(sp) - c003a512: fcca sd s2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48164 (discriminator 1) -} - c003a514: 60ae ld ra,200(sp) - c003a516: 640e ld s0,192(sp) - c003a518: 7546 ld a0,112(sp) - c003a51a: 75e6 ld a1,120(sp) - c003a51c: 74ea ld s1,184(sp) - c003a51e: 794a ld s2,176(sp) - c003a520: 79aa ld s3,168(sp) - c003a522: 6169 addi sp,sp,208 - c003a524: 8082 ret - -00000000c003a526 : + c003a6e0: f8ce sd s3,112(sp) + c003a6e2: fcca sd s2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48172 (discriminator 1) +} + c003a6e4: 60ae ld ra,200(sp) + c003a6e6: 640e ld s0,192(sp) + c003a6e8: 7546 ld a0,112(sp) + c003a6ea: 75e6 ld a1,120(sp) + c003a6ec: 74ea ld s1,184(sp) + c003a6ee: 794a ld s2,176(sp) + c003a6f0: 79aa ld s3,168(sp) + c003a6f2: 6169 addi sp,sp,208 + c003a6f4: 8082 ret + +00000000c003a6f6 : js_new_promise_capability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48202 { - c003a526: 7175 addi sp,sp,-144 - c003a528: e122 sd s0,128(sp) - c003a52a: f4ce sd s3,104(sp) - c003a52c: e032 sd a2,0(sp) - c003a52e: e436 sd a3,8(sp) + c003a6f6: 7175 addi sp,sp,-144 + c003a6f8: e122 sd s0,128(sp) + c003a6fa: f4ce sd s3,104(sp) + c003a6fc: e032 sd a2,0(sp) + c003a6fe: e436 sd a3,8(sp) js_promise_executor_new(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48193 func_data[0] = JS_UNDEFINED; - c003a530: 440d li s0,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 + c003a700: 440d li s0,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48195 return JS_NewCFunctionData(ctx, js_promise_executor, 2, - c003a532: 009c addi a5,sp,64 - c003a534: 4709 li a4,2 + c003a702: 009c addi a5,sp,64 + c003a704: 4709 li a4,2 js_new_promise_capability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48202 { - c003a536: 89ae mv s3,a1 + c003a706: 89ae mv s3,a1 js_promise_executor_new(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48195 return JS_NewCFunctionData(ctx, js_promise_executor, 2, - c003a538: 4681 li a3,0 - c003a53a: 4609 li a2,2 - c003a53c: fffd9597 auipc a1,0xfffd9 - c003a540: 3ca58593 addi a1,a1,970 # c0013906 + c003a708: 4681 li a3,0 + c003a70a: 4609 li a2,2 + c003a70c: fffd9597 auipc a1,0xfffd9 + c003a710: 2e858593 addi a1,a1,744 # c00139f4 js_new_promise_capability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48194 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48202 { - c003a544: f8ca sd s2,112(sp) - c003a546: e506 sd ra,136(sp) - c003a548: fca6 sd s1,120(sp) - c003a54a: 892a mv s2,a0 + c003a714: f8ca sd s2,112(sp) + c003a716: e506 sd ra,136(sp) + c003a718: fca6 sd s1,120(sp) + c003a71a: 892a mv s2,a0 js_promise_executor_new(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48193 func_data[0] = JS_UNDEFINED; - c003a54c: e082 sd zero,64(sp) - c003a54e: e4a2 sd s0,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48186 + c003a71c: e082 sd zero,64(sp) + c003a71e: e4a2 sd s0,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48194 func_data[1] = JS_UNDEFINED; - c003a550: e882 sd zero,80(sp) - c003a552: eca2 sd s0,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48187 + c003a720: e882 sd zero,80(sp) + c003a722: eca2 sd s0,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48195 return JS_NewCFunctionData(ctx, js_promise_executor, 2, - c003a554: ca3ee0ef jal ra,c00291f6 - c003a558: f82a sd a0,48(sp) - c003a55a: fc2e sd a1,56(sp) - c003a55c: e0aa sd a0,64(sp) - c003a55e: e4ae sd a1,72(sp) + c003a724: ca3ee0ef jal ra,c00293c6 + c003a728: f82a sd a0,48(sp) + c003a72a: fc2e sd a1,56(sp) + c003a72c: e0aa sd a0,64(sp) + c003a72e: e4ae sd a1,72(sp) js_new_promise_capability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48199 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48207 executor = js_promise_executor_new(ctx); - c003a560: e82a sd a0,16(sp) - c003a562: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48200 + c003a730: e82a sd a0,16(sp) + c003a732: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48208 if (JS_IsException(executor)) - c003a564: 0005879b sext.w a5,a1 - c003a568: 4719 li a4,6 - c003a56a: 06e78f63 beq a5,a4,c003a5e8 + c003a734: 0005879b sext.w a5,a1 + c003a738: 4719 li a4,6 + c003a73a: 06e78f63 beq a5,a4,c003a7b8 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003a56e: 6622 ld a2,8(sp) + c003a73e: 6622 ld a2,8(sp) js_new_promise_capability(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48212 result_promise = js_promise_constructor(ctx, ctor, 1, - c003a570: 6582 ld a1,0(sp) - c003a572: 0818 addi a4,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48203 + c003a740: 6582 ld a1,0(sp) + c003a742: 0818 addi a4,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48211 if (JS_IsUndefined(ctor)) { - c003a574: 0006079b sext.w a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48204 + c003a744: 0006079b sext.w a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48212 result_promise = js_promise_constructor(ctx, ctor, 1, - c003a578: 4685 li a3,1 - c003a57a: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48203 + c003a748: 4685 li a3,1 + c003a74a: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48211 if (JS_IsUndefined(ctor)) { - c003a57c: 06879f63 bne a5,s0,c003a5fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48204 + c003a74c: 06879f63 bne a5,s0,c003a7ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48212 result_promise = js_promise_constructor(ctx, ctor, 1, - c003a580: e61ff0ef jal ra,c003a3e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48207 + c003a750: e61ff0ef jal ra,c003a5b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48215 result_promise = JS_CallConstructor(ctx, ctor, 1, - c003a584: f02a sd a0,32(sp) - c003a586: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48210 + c003a754: f02a sd a0,32(sp) + c003a756: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48218 if (JS_IsException(result_promise)) - c003a588: 0005879b sext.w a5,a1 - c003a58c: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48207 + c003a758: 0005879b sext.w a5,a1 + c003a75c: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48215 result_promise = JS_CallConstructor(ctx, ctor, 1, - c003a58e: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48210 + c003a75e: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48218 if (JS_IsException(result_promise)) - c003a590: 06e78863 beq a5,a4,c003a600 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48212 + c003a760: 06e78863 beq a5,a4,c003a7d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48220 s = JS_GetOpaque(executor, JS_CLASS_C_FUNCTION_DATA); - c003a594: 65e2 ld a1,24(sp) - c003a596: 6542 ld a0,16(sp) - c003a598: 463d li a2,15 - c003a59a: b18d00ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48214 + c003a764: 65e2 ld a1,24(sp) + c003a766: 6542 ld a0,16(sp) + c003a768: 463d li a2,15 + c003a76a: a36d00ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48222 if (check_function(ctx, s->data[i])) - c003a59e: 690c ld a1,16(a0) - c003a5a0: 6d10 ld a2,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48212 + c003a76e: 690c ld a1,16(a0) + c003a770: 6d10 ld a2,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48220 s = JS_GetOpaque(executor, JS_CLASS_C_FUNCTION_DATA); - c003a5a2: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48214 + c003a772: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48222 if (check_function(ctx, s->data[i])) - c003a5a4: 854a mv a0,s2 - c003a5a6: f03d80ef jal ra,c00134a8 - c003a5aa: e939 bnez a0,c003a600 - c003a5ac: 708c ld a1,32(s1) - c003a5ae: 7490 ld a2,40(s1) - c003a5b0: 854a mv a0,s2 - c003a5b2: ef7d80ef jal ra,c00134a8 - c003a5b6: e529 bnez a0,c003a600 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48218 + c003a774: 854a mv a0,s2 + c003a776: e21d80ef jal ra,c0013596 + c003a77a: e939 bnez a0,c003a7d0 + c003a77c: 708c ld a1,32(s1) + c003a77e: 7490 ld a2,40(s1) + c003a780: 854a mv a0,s2 + c003a782: e15d80ef jal ra,c0013596 + c003a786: e529 bnez a0,c003a7d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48226 resolving_funcs[i] = JS_DupValue(ctx, s->data[i]); - c003a5b8: 6888 ld a0,16(s1) - c003a5ba: 6c8c ld a1,24(s1) - c003a5bc: 8b2cc0ef jal ra,c000666e - c003a5c0: 00a9b023 sd a0,0(s3) - c003a5c4: 00b9b423 sd a1,8(s3) - c003a5c8: 7088 ld a0,32(s1) - c003a5ca: 748c ld a1,40(s1) - c003a5cc: 8a2cc0ef jal ra,c000666e - c003a5d0: 00b9bc23 sd a1,24(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48219 + c003a788: 6888 ld a0,16(s1) + c003a78a: 6c8c ld a1,24(s1) + c003a78c: fd1cb0ef jal ra,c000675c + c003a790: 00a9b023 sd a0,0(s3) + c003a794: 00b9b423 sd a1,8(s3) + c003a798: 7088 ld a0,32(s1) + c003a79a: 748c ld a1,40(s1) + c003a79c: fc1cb0ef jal ra,c000675c + c003a7a0: 00b9bc23 sd a1,24(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48227 JS_FreeValue(ctx, executor); - c003a5d4: 6662 ld a2,24(sp) - c003a5d6: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48218 + c003a7a4: 6662 ld a2,24(sp) + c003a7a6: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48226 resolving_funcs[i] = JS_DupValue(ctx, s->data[i]); - c003a5d8: 00a9b823 sd a0,16(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48219 + c003a7a8: 00a9b823 sd a0,16(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48227 JS_FreeValue(ctx, executor); - c003a5dc: 854a mv a0,s2 - c003a5de: d5acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48220 + c003a7ac: 854a mv a0,s2 + c003a7ae: c78cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48228 return result_promise; - c003a5e2: 7782 ld a5,32(sp) - c003a5e4: e4a2 sd s0,72(sp) - c003a5e6: e0be sd a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48225 -} - c003a5e8: 60aa ld ra,136(sp) - c003a5ea: 640a ld s0,128(sp) - c003a5ec: 6506 ld a0,64(sp) - c003a5ee: 65a6 ld a1,72(sp) - c003a5f0: 74e6 ld s1,120(sp) - c003a5f2: 7946 ld s2,112(sp) - c003a5f4: 79a6 ld s3,104(sp) - c003a5f6: 6149 addi sp,sp,144 - c003a5f8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48207 + c003a7b2: 7782 ld a5,32(sp) + c003a7b4: e4a2 sd s0,72(sp) + c003a7b6: e0be sd a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48233 +} + c003a7b8: 60aa ld ra,136(sp) + c003a7ba: 640a ld s0,128(sp) + c003a7bc: 6506 ld a0,64(sp) + c003a7be: 65a6 ld a1,72(sp) + c003a7c0: 74e6 ld s1,120(sp) + c003a7c2: 7946 ld s2,112(sp) + c003a7c4: 79a6 ld s3,104(sp) + c003a7c6: 6149 addi sp,sp,144 + c003a7c8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48215 result_promise = JS_CallConstructor(ctx, ctor, 1, - c003a5fa: eadfd0ef jal ra,c00384a6 - c003a5fe: b759 j c003a584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48222 + c003a7ca: eadfd0ef jal ra,c0038676 + c003a7ce: b759 j c003a754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48230 JS_FreeValue(ctx, executor); - c003a600: 65c2 ld a1,16(sp) - c003a602: 6662 ld a2,24(sp) - c003a604: 854a mv a0,s2 - c003a606: d32cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48223 + c003a7d0: 65c2 ld a1,16(sp) + c003a7d2: 6662 ld a2,24(sp) + c003a7d4: 854a mv a0,s2 + c003a7d6: c50cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48231 JS_FreeValue(ctx, result_promise); - c003a60a: 7582 ld a1,32(sp) - c003a60c: 8622 mv a2,s0 - c003a60e: 854a mv a0,s2 - c003a610: d28cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48224 + c003a7da: 7582 ld a1,32(sp) + c003a7dc: 8622 mv a2,s0 + c003a7de: 854a mv a0,s2 + c003a7e0: c46cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48232 return JS_EXCEPTION; - c003a614: 4799 li a5,6 - c003a616: e082 sd zero,64(sp) - c003a618: e4be sd a5,72(sp) - c003a61a: b7f9 j c003a5e8 + c003a7e4: 4799 li a5,6 + c003a7e6: e082 sd zero,64(sp) + c003a7e8: e4be sd a5,72(sp) + c003a7ea: b7f9 j c003a7b8 -00000000c003a61c : +00000000c003a7ec : js_promise_then(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48653 -{ - c003a61c: 7135 addi sp,sp,-160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48658 - s = JS_GetOpaque2(ctx, this_val, JS_CLASS_PROMISE); - c003a61e: 02d00693 li a3,45 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48653 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48661 { - c003a622: e922 sd s0,144(sp) - c003a624: fcce sd s3,120(sp) - c003a626: ed06 sd ra,152(sp) - c003a628: e526 sd s1,136(sp) - c003a62a: e14a sd s2,128(sp) - c003a62c: 842a mv s0,a0 - c003a62e: e02e sd a1,0(sp) - c003a630: e432 sd a2,8(sp) - c003a632: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48658 + c003a7ec: 7135 addi sp,sp,-160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48666 + s = JS_GetOpaque2(ctx, this_val, JS_CLASS_PROMISE); + c003a7ee: 02d00693 li a3,45 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48661 +{ + c003a7f2: e922 sd s0,144(sp) + c003a7f4: fcce sd s3,120(sp) + c003a7f6: ed06 sd ra,152(sp) + c003a7f8: e526 sd s1,136(sp) + c003a7fa: e14a sd s2,128(sp) + c003a7fc: 842a mv s0,a0 + c003a7fe: e02e sd a1,0(sp) + c003a800: e432 sd a2,8(sp) + c003a802: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48666 s = JS_GetOpaque2(ctx, this_val, JS_CLASS_PROMISE); - c003a634: f45d80ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48659 + c003a804: e63d80ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48667 if (!s) - c003a638: e509 bnez a0,c003a642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48660 - return JS_EXCEPTION; - c003a63a: e082 sd zero,64(sp) - c003a63c: 4799 li a5,6 + c003a808: e509 bnez a0,c003a812 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48668 + return JS_EXCEPTION; + c003a80a: e082 sd zero,64(sp) + c003a80c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48676 return result_promise; - c003a63e: e4be sd a5,72(sp) - c003a640: a01d j c003a666 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48662 + c003a80e: e4be sd a5,72(sp) + c003a810: a01d j c003a836 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48670 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c003a642: 6622 ld a2,8(sp) - c003a644: 6582 ld a1,0(sp) - c003a646: 4681 li a3,0 - c003a648: 470d li a4,3 - c003a64a: 8522 mv a0,s0 - c003a64c: d6ed90ef jal ra,c0013bba - c003a650: e82a sd a0,16(sp) - c003a652: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48663 + c003a812: 6622 ld a2,8(sp) + c003a814: 6582 ld a1,0(sp) + c003a816: 4681 li a3,0 + c003a818: 470d li a4,3 + c003a81a: 8522 mv a0,s0 + c003a81c: c8cd90ef jal ra,c0013ca8 + c003a820: e82a sd a0,16(sp) + c003a822: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48671 if (JS_IsException(ctor)) - c003a654: 0005879b sext.w a5,a1 - c003a658: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48662 + c003a824: 0005879b sext.w a5,a1 + c003a828: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48670 ctor = JS_SpeciesConstructor(ctx, this_val, JS_UNDEFINED); - c003a65a: 862a mv a2,a0 - c003a65c: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48663 + c003a82a: 862a mv a2,a0 + c003a82c: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48671 if (JS_IsException(ctor)) - c003a65e: 01279d63 bne a5,s2,c003a678 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48664 + c003a82e: 01279d63 bne a5,s2,c003a848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48672 return ctor; - c003a662: e0aa sd a0,64(sp) - c003a664: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48678 (discriminator 1) -} - c003a666: 60ea ld ra,152(sp) - c003a668: 644a ld s0,144(sp) - c003a66a: 6506 ld a0,64(sp) - c003a66c: 65a6 ld a1,72(sp) - c003a66e: 64aa ld s1,136(sp) - c003a670: 690a ld s2,128(sp) - c003a672: 79e6 ld s3,120(sp) - c003a674: 610d addi sp,sp,160 - c003a676: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48665 + c003a832: e0aa sd a0,64(sp) + c003a834: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48686 (discriminator 1) +} + c003a836: 60ea ld ra,152(sp) + c003a838: 644a ld s0,144(sp) + c003a83a: 6506 ld a0,64(sp) + c003a83c: 65a6 ld a1,72(sp) + c003a83e: 64aa ld s1,136(sp) + c003a840: 690a ld s2,128(sp) + c003a842: 79e6 ld s3,120(sp) + c003a844: 610d addi sp,sp,160 + c003a846: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48673 result_promise = js_new_promise_capability(ctx, resolving_funcs, ctor); - c003a678: 088c addi a1,sp,80 - c003a67a: 8522 mv a0,s0 - c003a67c: eabff0ef jal ra,c003a526 - c003a680: 84ae mv s1,a1 - c003a682: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48666 + c003a848: 088c addi a1,sp,80 + c003a84a: 8522 mv a0,s0 + c003a84c: eabff0ef jal ra,c003a6f6 + c003a850: 84ae mv s1,a1 + c003a852: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48674 JS_FreeValue(ctx, ctor); - c003a684: 6662 ld a2,24(sp) - c003a686: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48665 + c003a854: 6662 ld a2,24(sp) + c003a856: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48673 result_promise = js_new_promise_capability(ctx, resolving_funcs, ctor); - c003a688: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48667 + c003a858: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48675 if (JS_IsException(result_promise)) - c003a68a: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48666 + c003a85a: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48674 JS_FreeValue(ctx, ctor); - c003a68c: 8522 mv a0,s0 - c003a68e: caacd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48667 + c003a85c: 8522 mv a0,s0 + c003a85e: bc8cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48675 if (JS_IsException(result_promise)) - c003a692: 01249663 bne s1,s2,c003a69e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48668 + c003a862: 01249663 bne s1,s2,c003a86e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48676 return result_promise; - c003a696: 7782 ld a5,32(sp) - c003a698: e0be sd a5,64(sp) - c003a69a: 77a2 ld a5,40(sp) - c003a69c: b74d j c003a63e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48669 + c003a866: 7782 ld a5,32(sp) + c003a868: e0be sd a5,64(sp) + c003a86a: 77a2 ld a5,40(sp) + c003a86c: b74d j c003a80e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48677 ret = perform_promise_then(ctx, this_val, argv, - c003a69e: 6582 ld a1,0(sp) - c003a6a0: 6622 ld a2,8(sp) - c003a6a2: 0898 addi a4,sp,80 - c003a6a4: 86ce mv a3,s3 - c003a6a6: 8522 mv a0,s0 - c003a6a8: 85bdb0ef jal ra,c0015f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48672 + c003a86e: 6582 ld a1,0(sp) + c003a870: 6622 ld a2,8(sp) + c003a872: 0898 addi a4,sp,80 + c003a874: 86ce mv a3,s3 + c003a876: 8522 mv a0,s0 + c003a878: 85bdb0ef jal ra,c00160d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48680 JS_FreeValue(ctx, resolving_funcs[i]); - c003a6ac: 65c6 ld a1,80(sp) - c003a6ae: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48669 + c003a87c: 65c6 ld a1,80(sp) + c003a87e: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48677 ret = perform_promise_then(ctx, this_val, argv, - c003a6b0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48672 + c003a880: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48680 JS_FreeValue(ctx, resolving_funcs[i]); - c003a6b2: 8522 mv a0,s0 - c003a6b4: c84cd0ef jal ra,c0007b38 - c003a6b8: 7586 ld a1,96(sp) - c003a6ba: 7626 ld a2,104(sp) - c003a6bc: 8522 mv a0,s0 - c003a6be: c7acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48673 + c003a882: 8522 mv a0,s0 + c003a884: ba2cd0ef jal ra,c0007c26 + c003a888: 7586 ld a1,96(sp) + c003a88a: 7626 ld a2,104(sp) + c003a88c: 8522 mv a0,s0 + c003a88e: b98cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48681 if (ret) { - c003a6c2: d8f1 beqz s1,c003a696 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48674 + c003a892: d8f1 beqz s1,c003a866 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48682 JS_FreeValue(ctx, result_promise); - c003a6c4: 7582 ld a1,32(sp) - c003a6c6: 7622 ld a2,40(sp) - c003a6c8: 8522 mv a0,s0 - c003a6ca: c6ecd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48675 + c003a894: 7582 ld a1,32(sp) + c003a896: 7622 ld a2,40(sp) + c003a898: 8522 mv a0,s0 + c003a89a: b8ccd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48683 return JS_EXCEPTION; - c003a6ce: e082 sd zero,64(sp) - c003a6d0: e4ca sd s2,72(sp) - c003a6d2: bf51 j c003a666 + c003a89e: e082 sd zero,64(sp) + c003a8a0: e4ca sd s2,72(sp) + c003a8a2: bf51 j c003a836 -00000000c003a6d4 : +00000000c003a8a4 : js_promise_withResolvers(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48270 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48278 if (!JS_IsObject(this_val)) - c003a6d4: 0006071b sext.w a4,a2 - c003a6d8: 57fd li a5,-1 - c003a6da: 00f70463 beq a4,a5,c003a6e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48271 + c003a8a4: 0006071b sext.w a4,a2 + c003a8a8: 57fd li a5,-1 + c003a8aa: 00f70463 beq a4,a5,c003a8b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48279 return JS_ThrowTypeErrorNotAnObject(ctx); - c003a6de: a9ad906f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48268 + c003a8ae: 9b8d906f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48276 { - c003a6e2: 7119 addi sp,sp,-128 - c003a6e4: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48272 + c003a8b2: 7119 addi sp,sp,-128 + c003a8b4: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48280 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003a6e6: 862e mv a2,a1 - c003a6e8: 008c addi a1,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48268 -{ - c003a6ea: f8a2 sd s0,112(sp) - c003a6ec: f0ca sd s2,96(sp) - c003a6ee: fc86 sd ra,120(sp) - c003a6f0: f4a6 sd s1,104(sp) - c003a6f2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48272 + c003a8b6: 862e mv a2,a1 + c003a8b8: 008c addi a1,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48276 +{ + c003a8ba: f8a2 sd s0,112(sp) + c003a8bc: f0ca sd s2,96(sp) + c003a8be: fc86 sd ra,120(sp) + c003a8c0: f4a6 sd s1,104(sp) + c003a8c2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48280 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003a6f4: e33ff0ef jal ra,c003a526 - c003a6f8: e82a sd a0,16(sp) - c003a6fa: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48273 + c003a8c4: e33ff0ef jal ra,c003a6f6 + c003a8c8: e82a sd a0,16(sp) + c003a8ca: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48281 if (JS_IsException(result_promise)) - c003a6fc: 0005879b sext.w a5,a1 - c003a700: 4919 li s2,6 - c003a702: 01279c63 bne a5,s2,c003a71a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48274 + c003a8cc: 0005879b sext.w a5,a1 + c003a8d0: 4919 li s2,6 + c003a8d2: 01279c63 bne a5,s2,c003a8ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48282 return result_promise; - c003a706: f82a sd a0,48(sp) - c003a708: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48286 (discriminator 1) -} - c003a70a: 70e6 ld ra,120(sp) - c003a70c: 7446 ld s0,112(sp) - c003a70e: 7542 ld a0,48(sp) - c003a710: 75e2 ld a1,56(sp) - c003a712: 74a6 ld s1,104(sp) - c003a714: 7906 ld s2,96(sp) - c003a716: 6109 addi sp,sp,128 - c003a718: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48275 + c003a8d6: f82a sd a0,48(sp) + c003a8d8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48294 (discriminator 1) +} + c003a8da: 70e6 ld ra,120(sp) + c003a8dc: 7446 ld s0,112(sp) + c003a8de: 7542 ld a0,48(sp) + c003a8e0: 75e2 ld a1,56(sp) + c003a8e2: 74a6 ld s1,104(sp) + c003a8e4: 7906 ld s2,96(sp) + c003a8e6: 6109 addi sp,sp,128 + c003a8e8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48283 obj = JS_NewObject(ctx); - c003a71a: 8522 mv a0,s0 - c003a71c: e6cdc0ef jal ra,c0016d88 - c003a720: f02a sd a0,32(sp) - c003a722: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48276 + c003a8ea: 8522 mv a0,s0 + c003a8ec: e6cdc0ef jal ra,c0016f58 + c003a8f0: f02a sd a0,32(sp) + c003a8f2: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48284 if (JS_IsException(obj)) { - c003a724: 0005849b sext.w s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48275 + c003a8f4: 0005849b sext.w s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48283 obj = JS_NewObject(ctx); - c003a728: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48276 + c003a8f8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48284 if (JS_IsException(obj)) { - c003a72a: 03249463 bne s1,s2,c003a752 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48277 + c003a8fa: 03249463 bne s1,s2,c003a922 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48285 JS_FreeValue(ctx, resolving_funcs[0]); - c003a72e: 6586 ld a1,64(sp) - c003a730: 6626 ld a2,72(sp) - c003a732: 8522 mv a0,s0 - c003a734: c04cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48278 + c003a8fe: 6586 ld a1,64(sp) + c003a900: 6626 ld a2,72(sp) + c003a902: 8522 mv a0,s0 + c003a904: b22cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48286 JS_FreeValue(ctx, resolving_funcs[1]); - c003a738: 65c6 ld a1,80(sp) - c003a73a: 6666 ld a2,88(sp) - c003a73c: 8522 mv a0,s0 - c003a73e: bfacd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48279 + c003a908: 65c6 ld a1,80(sp) + c003a90a: 6666 ld a2,88(sp) + c003a90c: 8522 mv a0,s0 + c003a90e: b18cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48287 JS_FreeValue(ctx, result_promise); - c003a742: 65c2 ld a1,16(sp) - c003a744: 6662 ld a2,24(sp) - c003a746: 8522 mv a0,s0 - c003a748: bf0cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48280 + c003a912: 65c2 ld a1,16(sp) + c003a914: 6662 ld a2,24(sp) + c003a916: 8522 mv a0,s0 + c003a918: b0ecd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48288 return JS_EXCEPTION; - c003a74c: f802 sd zero,48(sp) - c003a74e: fc26 sd s1,56(sp) - c003a750: bf6d j c003a70a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48282 + c003a91c: f802 sd zero,48(sp) + c003a91e: fc26 sd s1,56(sp) + c003a920: bf6d j c003a8da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48290 JS_DefinePropertyValue(ctx, obj, JS_ATOM_promise, result_promise, JS_PROP_C_W_E); - c003a752: 6742 ld a4,16(sp) - c003a754: 67e2 ld a5,24(sp) - c003a756: 85aa mv a1,a0 - c003a758: 481d li a6,7 - c003a75a: 08300693 li a3,131 - c003a75e: 8522 mv a0,s0 - c003a760: 857d80ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48283 + c003a922: 6742 ld a4,16(sp) + c003a924: 67e2 ld a5,24(sp) + c003a926: 85aa mv a1,a0 + c003a928: 481d li a6,7 + c003a92a: 08300693 li a3,131 + c003a92e: 8522 mv a0,s0 + c003a930: f74d80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48291 JS_DefinePropertyValue(ctx, obj, JS_ATOM_resolve, resolving_funcs[0], JS_PROP_C_W_E); - c003a764: 6706 ld a4,64(sp) - c003a766: 67a6 ld a5,72(sp) - c003a768: 7582 ld a1,32(sp) - c003a76a: 7622 ld a2,40(sp) - c003a76c: 481d li a6,7 - c003a76e: 08100693 li a3,129 - c003a772: 8522 mv a0,s0 - c003a774: 843d80ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48284 + c003a934: 6706 ld a4,64(sp) + c003a936: 67a6 ld a5,72(sp) + c003a938: 7582 ld a1,32(sp) + c003a93a: 7622 ld a2,40(sp) + c003a93c: 481d li a6,7 + c003a93e: 08100693 li a3,129 + c003a942: 8522 mv a0,s0 + c003a944: f60d80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48292 JS_DefinePropertyValue(ctx, obj, JS_ATOM_reject, resolving_funcs[1], JS_PROP_C_W_E); - c003a778: 67e6 ld a5,88(sp) - c003a77a: 6746 ld a4,80(sp) - c003a77c: 7582 ld a1,32(sp) - c003a77e: 7622 ld a2,40(sp) - c003a780: 481d li a6,7 - c003a782: 08200693 li a3,130 - c003a786: 8522 mv a0,s0 - c003a788: 82fd80ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48285 + c003a948: 67e6 ld a5,88(sp) + c003a94a: 6746 ld a4,80(sp) + c003a94c: 7582 ld a1,32(sp) + c003a94e: 7622 ld a2,40(sp) + c003a950: 481d li a6,7 + c003a952: 08200693 li a3,130 + c003a956: 8522 mv a0,s0 + c003a958: f4cd80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48293 return obj; - c003a78c: 7782 ld a5,32(sp) - c003a78e: f83e sd a5,48(sp) - c003a790: 77a2 ld a5,40(sp) - c003a792: fc3e sd a5,56(sp) - c003a794: bf9d j c003a70a + c003a95c: 7782 ld a5,32(sp) + c003a95e: f83e sd a5,48(sp) + c003a960: 77a2 ld a5,40(sp) + c003a962: fc3e sd a5,56(sp) + c003a964: bf9d j c003a8da -00000000c003a796 : +00000000c003a966 : promise_reaction_job(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47834 -{ - c003a796: 7175 addi sp,sp,-144 - c003a798: e506 sd ra,136(sp) - c003a79a: e122 sd s0,128(sp) - c003a79c: fca6 sd s1,120(sp) - c003a79e: f8ca sd s2,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47839 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47842 +{ + c003a966: 7175 addi sp,sp,-144 + c003a968: e506 sd ra,136(sp) + c003a96a: e122 sd s0,128(sp) + c003a96c: fca6 sd s1,120(sp) + c003a96e: f8ca sd s2,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47847 assert(argc == 5); - c003a7a0: 4795 li a5,5 - c003a7a2: 00f58c63 beq a1,a5,c003a7ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47839 (discriminator 1) - c003a7a6: 65b1 lui a1,0xc - c003a7a8: 4601 li a2,0 - c003a7aa: adf58593 addi a1,a1,-1313 # badf <__clzdi2-0xbfff4521> - c003a7ae: 00022517 auipc a0,0x22 - c003a7b2: 2ca50513 addi a0,a0,714 # c005ca78 - c003a7b6: 262190ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47840 (discriminator 2) + c003a970: 4795 li a5,5 + c003a972: 00f58c63 beq a1,a5,c003a98a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47847 (discriminator 1) + c003a976: 65b1 lui a1,0xc + c003a978: 4601 li a2,0 + c003a97a: ae758593 addi a1,a1,-1305 # bae7 <__clzdi2-0xbfff4519> + c003a97e: 00022517 auipc a0,0x22 + c003a982: 2ca50513 addi a0,a0,714 # c005cc48 + c003a986: 262190ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47848 (discriminator 2) handler = argv[2]; - c003a7ba: 721c ld a5,32(a2) - c003a7bc: 02863903 ld s2,40(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47841 (discriminator 2) + c003a98a: 721c ld a5,32(a2) + c003a98c: 02863903 ld s2,40(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47849 (discriminator 2) is_reject = JS_ToBool(ctx, argv[3]); - c003a7c0: 7a0c ld a1,48(a2) - c003a7c2: 8432 mv s0,a2 - c003a7c4: 7e10 ld a2,56(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47840 (discriminator 2) + c003a990: 7a0c ld a1,48(a2) + c003a992: 8432 mv s0,a2 + c003a994: 7e10 ld a2,56(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47848 (discriminator 2) handler = argv[2]; - c003a7c6: e03e sd a5,0(sp) - c003a7c8: e44a sd s2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47841 (discriminator 2) + c003a996: e03e sd a5,0(sp) + c003a998: e44a sd s2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47849 (discriminator 2) is_reject = JS_ToBool(ctx, argv[3]); - c003a7ca: 84aa mv s1,a0 - c003a7cc: e5cd00ef jal ra,c000ae28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47842 (discriminator 2) + c003a99a: 84aa mv s1,a0 + c003a99c: d7ad00ef jal ra,c000af16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47850 (discriminator 2) arg = argv[4]; - c003a7d0: 642c ld a1,72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47841 (discriminator 2) + c003a9a0: 642c ld a1,72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47849 (discriminator 2) is_reject = JS_ToBool(ctx, argv[3]); - c003a7d2: 87aa mv a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47842 (discriminator 2) + c003a9a2: 87aa mv a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47850 (discriminator 2) arg = argv[4]; - c003a7d4: 6028 ld a0,64(s0) - c003a7d6: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47847 (discriminator 2) + c003a9a4: 6028 ld a0,64(s0) + c003a9a6: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47855 (discriminator 2) if (JS_IsUndefined(handler)) { - c003a7d8: 2901 sext.w s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47842 (discriminator 2) + c003a9a8: 2901 sext.w s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47850 (discriminator 2) arg = argv[4]; - c003a7da: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47847 (discriminator 2) + c003a9aa: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47855 (discriminator 2) if (JS_IsUndefined(handler)) { - c003a7dc: 470d li a4,3 - c003a7de: 06e91e63 bne s2,a4,c003a85a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47848 + c003a9ac: 470d li a4,3 + c003a9ae: 06e91e63 bne s2,a4,c003aa2a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47856 if (is_reject) { - c003a7e2: cbad beqz a5,c003a854 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47849 + c003a9b2: cbad beqz a5,c003aa24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47857 res = JS_Throw(ctx, JS_DupValue(ctx, arg)); - c003a7e4: e8bcb0ef jal ra,c000666e - c003a7e8: 862e mv a2,a1 - c003a7ea: 85aa mv a1,a0 - c003a7ec: 8526 mv a0,s1 - c003a7ee: e8fcf0ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47854 + c003a9b4: da9cb0ef jal ra,c000675c + c003a9b8: 862e mv a2,a1 + c003a9ba: 85aa mv a1,a0 + c003a9bc: 8526 mv a0,s1 + c003a9be: dadcf0ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47862 res = JS_Call(ctx, handler, JS_UNDEFINED, 1, &arg); - c003a7f2: fc2e sd a1,56(sp) + c003a9c2: fc2e sd a1,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003a7f4: 57e2 lw a5,56(sp) + c003a9c4: 57e2 lw a5,56(sp) promise_reaction_job(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47854 - c003a7f6: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47862 + c003a9c6: f82a sd a0,48(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003a7f8: 4719 li a4,6 - c003a7fa: ffa78913 addi s2,a5,-6 - c003a7fe: 00193913 seqz s2,s2 + c003a9c8: 4719 li a4,6 + c003a9ca: ffa78913 addi s2,a5,-6 + c003a9ce: 00193913 seqz s2,s2 promise_reaction_job(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47857 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47865 if (is_reject) - c003a802: 00e79763 bne a5,a4,c003a810 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47858 + c003a9d2: 00e79763 bne a5,a4,c003a9e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47866 res = JS_GetException(ctx); - c003a806: 8526 mv a0,s1 - c003a808: ec1cf0ef jal ra,c000a6c8 - c003a80c: f82a sd a0,48(sp) - c003a80e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47859 + c003a9d6: 8526 mv a0,s1 + c003a9d8: ddfcf0ef jal ra,c000a7b6 + c003a9dc: f82a sd a0,48(sp) + c003a9de: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47867 func = argv[is_reject]; - c003a810: 0912 slli s2,s2,0x4 - c003a812: 944a add s0,s0,s2 - c003a814: 6410 ld a2,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47863 + c003a9e0: 0912 slli s2,s2,0x4 + c003a9e2: 944a add s0,s0,s2 + c003a9e4: 6410 ld a2,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47871 if (!JS_IsUndefined(func)) { - c003a816: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47859 + c003a9e6: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47867 func = argv[is_reject]; - c003a818: 600c ld a1,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47863 + c003a9e8: 600c ld a1,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47871 if (!JS_IsUndefined(func)) { - c003a81a: 0006071b sext.w a4,a2 - c003a81e: 04f70b63 beq a4,a5,c003a874 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47864 + c003a9ea: 0006071b sext.w a4,a2 + c003a9ee: 04f70b63 beq a4,a5,c003aa44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47872 res2 = JS_Call(ctx, func, JS_UNDEFINED, - c003a822: f4be sd a5,104(sp) - c003a824: 03010813 addi a6,sp,48 - c003a828: 4785 li a5,1 - c003a82a: 4681 li a3,0 - c003a82c: 470d li a4,3 - c003a82e: 8526 mv a0,s1 - c003a830: f082 sd zero,96(sp) - c003a832: ed5fe0ef jal ra,c0039706 - c003a836: e0aa sd a0,64(sp) - c003a838: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47869 + c003a9f2: f4be sd a5,104(sp) + c003a9f4: 03010813 addi a6,sp,48 + c003a9f8: 4785 li a5,1 + c003a9fa: 4681 li a3,0 + c003a9fc: 470d li a4,3 + c003a9fe: 8526 mv a0,s1 + c003aa00: f082 sd zero,96(sp) + c003aa02: ed5fe0ef jal ra,c00398d6 + c003aa06: e0aa sd a0,64(sp) + c003aa08: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47877 JS_FreeValue(ctx, res); - c003a83a: 75c2 ld a1,48(sp) - c003a83c: 7662 ld a2,56(sp) - c003a83e: 8526 mv a0,s1 - c003a840: af8cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47872 + c003aa0a: 75c2 ld a1,48(sp) + c003aa0c: 7662 ld a2,56(sp) + c003aa0e: 8526 mv a0,s1 + c003aa10: a16cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47880 } - c003a844: 60aa ld ra,136(sp) - c003a846: 85a2 mv a1,s0 - c003a848: 640a ld s0,128(sp) - c003a84a: 6506 ld a0,64(sp) - c003a84c: 74e6 ld s1,120(sp) - c003a84e: 7946 ld s2,112(sp) - c003a850: 6149 addi sp,sp,144 - c003a852: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47851 + c003aa14: 60aa ld ra,136(sp) + c003aa16: 85a2 mv a1,s0 + c003aa18: 640a ld s0,128(sp) + c003aa1a: 6506 ld a0,64(sp) + c003aa1c: 74e6 ld s1,120(sp) + c003aa1e: 7946 ld s2,112(sp) + c003aa20: 6149 addi sp,sp,144 + c003aa22: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47859 res = JS_DupValue(ctx, arg); - c003a854: e1bcb0ef jal ra,c000666e - c003a858: bf69 j c003a7f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47854 + c003aa24: d39cb0ef jal ra,c000675c + c003aa28: bf69 j c003a9c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47862 res = JS_Call(ctx, handler, JS_UNDEFINED, 1, &arg); - c003a85a: 6582 ld a1,0(sp) - c003a85c: 6622 ld a2,8(sp) - c003a85e: f4ba sd a4,104(sp) - c003a860: 01010813 addi a6,sp,16 - c003a864: 4785 li a5,1 - c003a866: 4681 li a3,0 - c003a868: 470d li a4,3 - c003a86a: 8526 mv a0,s1 - c003a86c: f082 sd zero,96(sp) - c003a86e: e99fe0ef jal ra,c0039706 - c003a872: b741 j c003a7f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47867 + c003aa2a: 6582 ld a1,0(sp) + c003aa2c: 6622 ld a2,8(sp) + c003aa2e: f4ba sd a4,104(sp) + c003aa30: 01010813 addi a6,sp,16 + c003aa34: 4785 li a5,1 + c003aa36: 4681 li a3,0 + c003aa38: 470d li a4,3 + c003aa3a: 8526 mv a0,s1 + c003aa3c: f082 sd zero,96(sp) + c003aa3e: e99fe0ef jal ra,c00398d6 + c003aa42: b741 j c003a9c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47875 res2 = JS_UNDEFINED; - c003a874: e082 sd zero,64(sp) - c003a876: 440d li s0,3 - c003a878: b7c9 j c003a83a + c003aa44: e082 sd zero,64(sp) + c003aa46: 440d li s0,3 + c003aa48: b7c9 j c003aa0a -00000000c003a87a : +00000000c003aa4a : JS_IteratorNext2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15217 -{ - c003a87a: 711d addi sp,sp,-96 - c003a87c: e8a2 sd s0,80(sp) - c003a87e: e4a6 sd s1,72(sp) - c003a880: e82e sd a1,16(sp) - c003a882: ec32 sd a2,24(sp) - c003a884: e43a sd a4,8(sp) - c003a886: 863e mv a2,a5 - c003a888: ec86 sd ra,88(sp) - c003a88a: e036 sd a3,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15222 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15225 +{ + c003aa4a: 711d addi sp,sp,-96 + c003aa4c: e8a2 sd s0,80(sp) + c003aa4e: e4a6 sd s1,72(sp) + c003aa50: e82e sd a1,16(sp) + c003aa52: ec32 sd a2,24(sp) + c003aa54: e43a sd a4,8(sp) + c003aa56: 863e mv a2,a5 + c003aa58: ec86 sd ra,88(sp) + c003aa5a: e036 sd a3,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15230 if (JS_IsObject(method)) { - c003a88c: 2701 sext.w a4,a4 - c003a88e: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15217 + c003aa5c: 2701 sext.w a4,a4 + c003aa5e: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15225 { - c003a890: 842a mv s0,a0 - c003a892: 85c2 mv a1,a6 - c003a894: 84c6 mv s1,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15222 + c003aa60: 842a mv s0,a0 + c003aa62: 85c2 mv a1,a6 + c003aa64: 84c6 mv s1,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15230 if (JS_IsObject(method)) { - c003a896: 04f71463 bne a4,a5,c003a8de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15224 + c003aa66: 04f71463 bne a4,a5,c003aaae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15232 if (p->class_id == JS_CLASS_C_FUNCTION && - c003a89a: 0066d783 lhu a5,6(a3) - c003a89e: 4731 li a4,12 - c003a8a0: 02e79f63 bne a5,a4,c003a8de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15224 (discriminator 1) - c003a8a4: 0416c703 lbu a4,65(a3) - c003a8a8: 02f71b63 bne a4,a5,c003a8de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15230 + c003aa6a: 0066d783 lhu a5,6(a3) + c003aa6e: 4731 li a4,12 + c003aa70: 02e79f63 bne a5,a4,c003aaae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15232 (discriminator 1) + c003aa74: 0416c703 lbu a4,65(a3) + c003aa78: 02f71b63 bne a4,a5,c003aaae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15238 if (argc == 0) { - c003a8ac: e609 bnez a2,c003a8b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15231 + c003aa7c: e609 bnez a2,c003aa86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15239 args[0] = JS_UNDEFINED; - c003a8ae: 478d li a5,3 - c003a8b0: f002 sd zero,32(sp) - c003a8b2: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15232 + c003aa7e: 478d li a5,3 + c003aa80: f002 sd zero,32(sp) + c003aa82: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15240 argv = args; - c003a8b4: 100c addi a1,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15235 + c003aa84: 100c addi a1,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15243 return func.iterator_next(ctx, enum_obj, argc, argv, - c003a8b6: 0386b883 ld a7,56(a3) - c003a8ba: 04269803 lh a6,66(a3) - c003a8be: 872e mv a4,a1 - c003a8c0: 86b2 mv a3,a2 - c003a8c2: 65c2 ld a1,16(sp) - c003a8c4: 6662 ld a2,24(sp) - c003a8c6: 87a6 mv a5,s1 - c003a8c8: 8522 mv a0,s0 - c003a8ca: 9882 jalr a7 - c003a8cc: f82a sd a0,48(sp) - c003a8ce: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15252 (discriminator 1) -} - c003a8d0: 60e6 ld ra,88(sp) - c003a8d2: 6446 ld s0,80(sp) - c003a8d4: 7542 ld a0,48(sp) - c003a8d6: 75e2 ld a1,56(sp) - c003a8d8: 64a6 ld s1,72(sp) - c003a8da: 6125 addi sp,sp,96 - c003a8dc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15239 + c003aa86: 0386b883 ld a7,56(a3) + c003aa8a: 04269803 lh a6,66(a3) + c003aa8e: 872e mv a4,a1 + c003aa90: 86b2 mv a3,a2 + c003aa92: 65c2 ld a1,16(sp) + c003aa94: 6662 ld a2,24(sp) + c003aa96: 87a6 mv a5,s1 + c003aa98: 8522 mv a0,s0 + c003aa9a: 9882 jalr a7 + c003aa9c: f82a sd a0,48(sp) + c003aa9e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15260 (discriminator 1) +} + c003aaa0: 60e6 ld ra,88(sp) + c003aaa2: 6446 ld s0,80(sp) + c003aaa4: 7542 ld a0,48(sp) + c003aaa6: 75e2 ld a1,56(sp) + c003aaa8: 64a6 ld s1,72(sp) + c003aaaa: 6125 addi sp,sp,96 + c003aaac: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15247 obj = JS_Call(ctx, method, enum_obj, argc, argv); - c003a8de: 87b2 mv a5,a2 - c003a8e0: 6762 ld a4,24(sp) - c003a8e2: 6622 ld a2,8(sp) - c003a8e4: 882e mv a6,a1 - c003a8e6: 66c2 ld a3,16(sp) - c003a8e8: 6582 ld a1,0(sp) - c003a8ea: 8522 mv a0,s0 - c003a8ec: e1bfe0ef jal ra,c0039706 - c003a8f0: f02a sd a0,32(sp) - c003a8f2: f42e sd a1,40(sp) + c003aaae: 87b2 mv a5,a2 + c003aab0: 6762 ld a4,24(sp) + c003aab2: 6622 ld a2,8(sp) + c003aab4: 882e mv a6,a1 + c003aab6: 66c2 ld a3,16(sp) + c003aab8: 6582 ld a1,0(sp) + c003aaba: 8522 mv a0,s0 + c003aabc: e1bfe0ef jal ra,c00398d6 + c003aac0: f02a sd a0,32(sp) + c003aac2: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003a8f4: 0005879b sext.w a5,a1 + c003aac4: 0005879b sext.w a5,a1 JS_IteratorNext2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15248 if (JS_IsException(obj)) - c003a8f8: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15239 + c003aac8: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15247 obj = JS_Call(ctx, method, enum_obj, argc, argv); - c003a8fa: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15240 + c003aaca: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15248 if (JS_IsException(obj)) - c003a8fc: 02e78063 beq a5,a4,c003a91c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15242 + c003aacc: 02e78063 beq a5,a4,c003aaec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15250 if (!JS_IsObject(obj)) { - c003a900: 577d li a4,-1 - c003a902: 02e78363 beq a5,a4,c003a928 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15243 + c003aad0: 577d li a4,-1 + c003aad2: 02e78363 beq a5,a4,c003aaf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15251 JS_FreeValue(ctx, obj); - c003a906: 85aa mv a1,a0 - c003a908: 8522 mv a0,s0 - c003a90a: a2ecd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15244 + c003aad6: 85aa mv a1,a0 + c003aad8: 8522 mv a0,s0 + c003aada: 94ccd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15252 JS_ThrowTypeError(ctx, "iterator must return an object"); - c003a90e: 00023597 auipc a1,0x23 - c003a912: 8c258593 addi a1,a1,-1854 # c005d1d0 - c003a916: 8522 mv a0,s0 - c003a918: adfd80ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15251 + c003aade: 00023597 auipc a1,0x23 + c003aae2: 92258593 addi a1,a1,-1758 # c005d400 + c003aae6: 8522 mv a0,s0 + c003aae8: 9fdd80ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15259 return JS_EXCEPTION; - c003a91c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15250 + c003aaec: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15258 *pdone = FALSE; - c003a91e: 0004a023 sw zero,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15251 + c003aaee: 0004a023 sw zero,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15259 return JS_EXCEPTION; - c003a922: f802 sd zero,48(sp) - c003a924: fc3e sd a5,56(sp) - c003a926: b76d j c003a8d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15247 + c003aaf2: f802 sd zero,48(sp) + c003aaf4: fc3e sd a5,56(sp) + c003aaf6: b76d j c003aaa0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15255 *pdone = 2; - c003a928: 4789 li a5,2 - c003a92a: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15248 + c003aaf8: 4789 li a5,2 + c003aafa: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15256 return obj; - c003a92c: f82a sd a0,48(sp) - c003a92e: fc2e sd a1,56(sp) - c003a930: b745 j c003a8d0 + c003aafc: f82a sd a0,48(sp) + c003aafe: fc2e sd a1,56(sp) + c003ab00: b745 j c003aaa0 -00000000c003a932 : +00000000c003ab02 : JS_IteratorNext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15254 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15262 static JSValue JS_IteratorNext(JSContext *ctx, JSValueConst enum_obj, - c003a932: 7171 addi sp,sp,-176 - c003a934: ed26 sd s1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15261 + c003ab02: 7171 addi sp,sp,-176 + c003ab04: ed26 sd s1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15269 obj = JS_IteratorNext2(ctx, enum_obj, method, argc, argv, &done); - c003a936: 02c10893 addi a7,sp,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15254 + c003ab06: 02c10893 addi a7,sp,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15262 static JSValue JS_IteratorNext(JSContext *ctx, JSValueConst enum_obj, - c003a93a: 84be mv s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15261 + c003ab0a: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15269 obj = JS_IteratorNext2(ctx, enum_obj, method, argc, argv, &done); - c003a93c: 4801 li a6,0 - c003a93e: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15254 + c003ab0c: 4801 li a6,0 + c003ab0e: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15262 static JSValue JS_IteratorNext(JSContext *ctx, JSValueConst enum_obj, - c003a940: f122 sd s0,160(sp) - c003a942: e94a sd s2,144(sp) - c003a944: f506 sd ra,168(sp) - c003a946: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15261 + c003ab10: f122 sd s0,160(sp) + c003ab12: e94a sd s2,144(sp) + c003ab14: f506 sd ra,168(sp) + c003ab16: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15269 obj = JS_IteratorNext2(ctx, enum_obj, method, argc, argv, &done); - c003a948: f33ff0ef jal ra,c003a87a - c003a94c: f82a sd a0,48(sp) - c003a94e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15262 + c003ab18: f33ff0ef jal ra,c003aa4a + c003ab1c: f82a sd a0,48(sp) + c003ab1e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15270 if (JS_IsException(obj)) - c003a950: 0005869b sext.w a3,a1 - c003a954: 4919 li s2,6 - c003a956: 09268163 beq a3,s2,c003a9d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15264 + c003ab20: 0005869b sext.w a3,a1 + c003ab24: 4919 li s2,6 + c003ab26: 09268163 beq a3,s2,c003aba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15272 if (done != 2) { - c003a95a: 56b2 lw a3,44(sp) - c003a95c: 4609 li a2,2 - c003a95e: 872a mv a4,a0 - c003a960: 87ae mv a5,a1 - c003a962: 00c68663 beq a3,a2,c003a96e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15265 + c003ab2a: 56b2 lw a3,44(sp) + c003ab2c: 4609 li a2,2 + c003ab2e: 872a mv a4,a0 + c003ab30: 87ae mv a5,a1 + c003ab32: 00c68663 beq a3,a2,c003ab3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15273 *pdone = done; - c003a966: c094 sw a3,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15266 + c003ab36: c094 sw a3,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15274 return obj; - c003a968: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15282 + c003ab38: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15290 return JS_EXCEPTION; - c003a96a: e53e sd a5,136(sp) - c003a96c: a8b1 j c003a9c8 + c003ab3a: e53e sd a5,136(sp) + c003ab3c: a8b1 j c003ab98 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003a96e: 863e mv a2,a5 - c003a970: e12a sd a0,128(sp) - c003a972: e52e sd a1,136(sp) - c003a974: 4801 li a6,0 - c003a976: 85aa mv a1,a0 - c003a978: 06a00693 li a3,106 - c003a97c: 8522 mv a0,s0 - c003a97e: ec5d60ef jal ra,c0011842 + c003ab3e: 863e mv a2,a5 + c003ab40: e12a sd a0,128(sp) + c003ab42: e52e sd a1,136(sp) + c003ab44: 4801 li a6,0 + c003ab46: 85aa mv a1,a0 + c003ab48: 06a00693 li a3,106 + c003ab4c: 8522 mv a0,s0 + c003ab4e: de3d60ef jal ra,c0011930 JS_IteratorNext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15269 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15277 if (JS_IsException(done_val)) - c003a982: 0005879b sext.w a5,a1 + c003ab52: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003a986: 862e mv a2,a1 + c003ab56: 862e mv a2,a1 JS_IteratorNext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15269 - c003a988: 05278863 beq a5,s2,c003a9d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15271 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15277 + c003ab58: 05278863 beq a5,s2,c003aba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15279 *pdone = JS_ToBoolFree(ctx, done_val); - c003a98c: 85aa mv a1,a0 - c003a98e: 8522 mv a0,s0 - c003a990: cd4cd0ef jal ra,c0007e64 - c003a994: c088 sw a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15272 + c003ab5c: 85aa mv a1,a0 + c003ab5e: 8522 mv a0,s0 + c003ab60: bf2cd0ef jal ra,c0007f52 + c003ab64: c088 sw a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15280 value = JS_UNDEFINED; - c003a996: e082 sd zero,64(sp) - c003a998: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15273 + c003ab66: e082 sd zero,64(sp) + c003ab68: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15281 if (!*pdone) { - c003a99a: ed19 bnez a0,c003a9b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15274 + c003ab6a: ed19 bnez a0,c003ab88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15282 value = JS_GetProperty(ctx, obj, JS_ATOM_value); - c003a99c: 7742 ld a4,48(sp) - c003a99e: 77e2 ld a5,56(sp) + c003ab6c: 7742 ld a4,48(sp) + c003ab6e: 77e2 ld a5,56(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003a9a0: 4801 li a6,0 - c003a9a2: 04100693 li a3,65 - c003a9a6: 85ba mv a1,a4 - c003a9a8: 863e mv a2,a5 - c003a9aa: 8522 mv a0,s0 - c003a9ac: e13a sd a4,128(sp) - c003a9ae: e53e sd a5,136(sp) - c003a9b0: e93d60ef jal ra,c0011842 - c003a9b4: 84ae mv s1,a1 - c003a9b6: e0aa sd a0,64(sp) + c003ab70: 4801 li a6,0 + c003ab72: 04100693 li a3,65 + c003ab76: 85ba mv a1,a4 + c003ab78: 863e mv a2,a5 + c003ab7a: 8522 mv a0,s0 + c003ab7c: e13a sd a4,128(sp) + c003ab7e: e53e sd a5,136(sp) + c003ab80: db1d60ef jal ra,c0011930 + c003ab84: 84ae mv s1,a1 + c003ab86: e0aa sd a0,64(sp) JS_IteratorNext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15276 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15284 JS_FreeValue(ctx, obj); - c003a9b8: 75c2 ld a1,48(sp) - c003a9ba: 7662 ld a2,56(sp) - c003a9bc: 8522 mv a0,s0 - c003a9be: 97acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15277 + c003ab88: 75c2 ld a1,48(sp) + c003ab8a: 7662 ld a2,56(sp) + c003ab8c: 8522 mv a0,s0 + c003ab8e: 898cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15285 return value; - c003a9c2: 6786 ld a5,64(sp) - c003a9c4: e526 sd s1,136(sp) - c003a9c6: e13e sd a5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15283 -} - c003a9c8: 70aa ld ra,168(sp) - c003a9ca: 740a ld s0,160(sp) - c003a9cc: 650a ld a0,128(sp) - c003a9ce: 65aa ld a1,136(sp) - c003a9d0: 64ea ld s1,152(sp) - c003a9d2: 694a ld s2,144(sp) - c003a9d4: 614d addi sp,sp,176 - c003a9d6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15280 + c003ab92: 6786 ld a5,64(sp) + c003ab94: e526 sd s1,136(sp) + c003ab96: e13e sd a5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15291 +} + c003ab98: 70aa ld ra,168(sp) + c003ab9a: 740a ld s0,160(sp) + c003ab9c: 650a ld a0,128(sp) + c003ab9e: 65aa ld a1,136(sp) + c003aba0: 64ea ld s1,152(sp) + c003aba2: 694a ld s2,144(sp) + c003aba4: 614d addi sp,sp,176 + c003aba6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15288 JS_FreeValue(ctx, obj); - c003a9d8: 75c2 ld a1,48(sp) - c003a9da: 7662 ld a2,56(sp) - c003a9dc: 8522 mv a0,s0 - c003a9de: 95acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15282 + c003aba8: 75c2 ld a1,48(sp) + c003abaa: 7662 ld a2,56(sp) + c003abac: 8522 mv a0,s0 + c003abae: 878cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15290 return JS_EXCEPTION; - c003a9e2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15281 + c003abb2: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15289 *pdone = FALSE; - c003a9e4: 0004a023 sw zero,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15282 + c003abb4: 0004a023 sw zero,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15290 return JS_EXCEPTION; - c003a9e8: e102 sd zero,128(sp) - c003a9ea: b741 j c003a96a + c003abb8: e102 sd zero,128(sp) + c003abba: b741 j c003ab3a -00000000c003a9ec : +00000000c003abbc : JS_GetIterator2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15166 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15174 { - c003a9ec: 8336 mv t1,a3 - c003a9ee: 88ba mv a7,a4 - c003a9f0: 715d addi sp,sp,-80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15169 + c003abbc: 8336 mv t1,a3 + c003abbe: 88ba mv a7,a4 + c003abc0: 715d addi sp,sp,-80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15177 enum_obj = JS_Call(ctx, method, obj, 0, NULL); - c003a9f2: 8732 mv a4,a2 - c003a9f4: 4781 li a5,0 - c003a9f6: 86ae mv a3,a1 - c003a9f8: 4801 li a6,0 - c003a9fa: 859a mv a1,t1 - c003a9fc: 8646 mv a2,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15166 -{ - c003a9fe: e0a2 sd s0,64(sp) - c003aa00: e486 sd ra,72(sp) - c003aa02: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15169 + c003abc2: 8732 mv a4,a2 + c003abc4: 4781 li a5,0 + c003abc6: 86ae mv a3,a1 + c003abc8: 4801 li a6,0 + c003abca: 859a mv a1,t1 + c003abcc: 8646 mv a2,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15174 +{ + c003abce: e0a2 sd s0,64(sp) + c003abd0: e486 sd ra,72(sp) + c003abd2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15177 enum_obj = JS_Call(ctx, method, obj, 0, NULL); - c003aa04: d03fe0ef jal ra,c0039706 - c003aa08: f02a sd a0,32(sp) - c003aa0a: f42e sd a1,40(sp) + c003abd4: d03fe0ef jal ra,c00398d6 + c003abd8: f02a sd a0,32(sp) + c003abda: f42e sd a1,40(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003aa0c: 0005879b sext.w a5,a1 + c003abdc: 0005879b sext.w a5,a1 JS_GetIterator2(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15178 if (JS_IsException(enum_obj)) - c003aa10: 4719 li a4,6 - c003aa12: 02e78063 beq a5,a4,c003aa32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15172 + c003abe0: 4719 li a4,6 + c003abe2: 02e78063 beq a5,a4,c003ac02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15180 if (!JS_IsObject(enum_obj)) { - c003aa16: 577d li a4,-1 - c003aa18: 00e78d63 beq a5,a4,c003aa32 - c003aa1c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15173 + c003abe6: 577d li a4,-1 + c003abe8: 00e78d63 beq a5,a4,c003ac02 + c003abec: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15181 JS_FreeValue(ctx, enum_obj); - c003aa1e: 85aa mv a1,a0 - c003aa20: 8522 mv a0,s0 - c003aa22: 916cd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15174 + c003abee: 85aa mv a1,a0 + c003abf0: 8522 mv a0,s0 + c003abf2: 834cd0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15182 return JS_ThrowTypeErrorNotAnObject(ctx); - c003aa26: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15177 + c003abf6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15185 } - c003aa28: 6406 ld s0,64(sp) - c003aa2a: 60a6 ld ra,72(sp) - c003aa2c: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15174 + c003abf8: 6406 ld s0,64(sp) + c003abfa: 60a6 ld ra,72(sp) + c003abfc: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15182 return JS_ThrowTypeErrorNotAnObject(ctx); - c003aa2e: f4bd806f j c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15177 + c003abfe: e69d806f j c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15185 } - c003aa32: 60a6 ld ra,72(sp) - c003aa34: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15171 + c003ac02: 60a6 ld ra,72(sp) + c003ac04: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15179 return enum_obj; - c003aa36: 7502 ld a0,32(sp) - c003aa38: 75a2 ld a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15177 + c003ac06: 7502 ld a0,32(sp) + c003ac08: 75a2 ld a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15185 } - c003aa3a: 6161 addi sp,sp,80 - c003aa3c: 8082 ret + c003ac0a: 6161 addi sp,sp,80 + c003ac0c: 8082 ret -00000000c003aa3e : +00000000c003ac0e : JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15188 { - c003aa3e: 7151 addi sp,sp,-240 - c003aa40: f1a2 sd s0,224(sp) - c003aa42: f586 sd ra,232(sp) - c003aa44: eda6 sd s1,216(sp) - c003aa46: e9ca sd s2,208(sp) - c003aa48: e5ce sd s3,200(sp) - c003aa4a: e1d2 sd s4,192(sp) - c003aa4c: e82e sd a1,16(sp) - c003aa4e: ec32 sd a2,24(sp) - c003aa50: f92e sd a1,176(sp) - c003aa52: fd32 sd a2,184(sp) - c003aa54: 842a mv s0,a0 - c003aa56: 872e mv a4,a1 - c003aa58: 87b2 mv a5,a2 + c003ac0e: 7151 addi sp,sp,-240 + c003ac10: f1a2 sd s0,224(sp) + c003ac12: f586 sd ra,232(sp) + c003ac14: eda6 sd s1,216(sp) + c003ac16: e9ca sd s2,208(sp) + c003ac18: e5ce sd s3,200(sp) + c003ac1a: e1d2 sd s4,192(sp) + c003ac1c: e82e sd a1,16(sp) + c003ac1e: ec32 sd a2,24(sp) + c003ac20: f92e sd a1,176(sp) + c003ac22: fd32 sd a2,184(sp) + c003ac24: 842a mv s0,a0 + c003ac26: 872e mv a4,a1 + c003ac28: 87b2 mv a5,a2 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003aa5a: 4801 li a6,0 + c003ac2a: 4801 li a6,0 JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15191 if (is_async) { - c003aa5c: 14068163 beqz a3,c003ab9e + c003ac2c: 14068163 beqz a3,c003ad6e JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003aa60: 0d700693 li a3,215 - c003aa64: ddfd60ef jal ra,c0011842 - c003aa68: f02a sd a0,32(sp) - c003aa6a: f42e sd a1,40(sp) + c003ac30: 0d700693 li a3,215 + c003ac34: cfdd60ef jal ra,c0011930 + c003ac38: f02a sd a0,32(sp) + c003ac3a: f42e sd a1,40(sp) JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15185 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15193 if (JS_IsException(method)) - c003aa6c: 0005879b sext.w a5,a1 - c003aa70: 4919 li s2,6 + c003ac3c: 0005879b sext.w a5,a1 + c003ac40: 4919 li s2,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003aa72: 862e mv a2,a1 + c003ac42: 862e mv a2,a1 JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15185 - c003aa74: 01279763 bne a5,s2,c003aa82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15193 + c003ac44: 01279763 bne a5,s2,c003ac52 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15194 return method; - c003aa78: 7782 ld a5,32(sp) - c003aa7a: f8be sd a5,112(sp) - c003aa7c: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15210 + c003ac48: 7782 ld a5,32(sp) + c003ac4a: f8be sd a5,112(sp) + c003ac4c: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15218 return ret; - c003aa7e: fcbe sd a5,120(sp) - c003aa80: a8a9 j c003aada -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15187 (discriminator 1) + c003ac4e: fcbe sd a5,120(sp) + c003ac50: a8a9 j c003acaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15195 (discriminator 1) if (JS_IsUndefined(method) || JS_IsNull(method)) { - c003aa82: 35f9 addiw a1,a1,-2 - c003aa84: 4785 li a5,1 - c003aa86: 12b7ea63 bltu a5,a1,c003abba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15188 + c003ac52: 35f9 addiw a1,a1,-2 + c003ac54: 4785 li a5,1 + c003ac56: 12b7ea63 bltu a5,a1,c003ad8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15196 method = JS_GetProperty(ctx, obj, JS_ATOM_Symbol_iterator); - c003aa8a: 6742 ld a4,16(sp) - c003aa8c: 67e2 ld a5,24(sp) + c003ac5a: 6742 ld a4,16(sp) + c003ac5c: 67e2 ld a5,24(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003aa8e: 0cc00693 li a3,204 - c003aa92: 85ba mv a1,a4 - c003aa94: 863e mv a2,a5 - c003aa96: 4801 li a6,0 - c003aa98: 8522 mv a0,s0 - c003aa9a: f93a sd a4,176(sp) - c003aa9c: fd3e sd a5,184(sp) - c003aa9e: da5d60ef jal ra,c0011842 - c003aaa2: f02a sd a0,32(sp) - c003aaa4: f42e sd a1,40(sp) + c003ac5e: 0cc00693 li a3,204 + c003ac62: 85ba mv a1,a4 + c003ac64: 863e mv a2,a5 + c003ac66: 4801 li a6,0 + c003ac68: 8522 mv a0,s0 + c003ac6a: f93a sd a4,176(sp) + c003ac6c: fd3e sd a5,184(sp) + c003ac6e: cc3d60ef jal ra,c0011930 + c003ac72: f02a sd a0,32(sp) + c003ac74: f42e sd a1,40(sp) JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15189 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15197 if (JS_IsException(method)) - c003aaa6: 0005879b sext.w a5,a1 + c003ac76: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003aaaa: 86aa mv a3,a0 - c003aaac: 872e mv a4,a1 + c003ac7a: 86aa mv a3,a0 + c003ac7c: 872e mv a4,a1 JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15189 - c003aaae: fd2785e3 beq a5,s2,c003aa78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15191 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15197 + c003ac7e: fd2785e3 beq a5,s2,c003ac48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15199 sync_iter = JS_GetIterator2(ctx, obj, method); - c003aab2: 6662 ld a2,24(sp) - c003aab4: 65c2 ld a1,16(sp) - c003aab6: 8522 mv a0,s0 - c003aab8: f35ff0ef jal ra,c003a9ec - c003aabc: 84ae mv s1,a1 - c003aabe: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15192 + c003ac82: 6662 ld a2,24(sp) + c003ac84: 65c2 ld a1,16(sp) + c003ac86: 8522 mv a0,s0 + c003ac88: f35ff0ef jal ra,c003abbc + c003ac8c: 84ae mv s1,a1 + c003ac8e: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15200 JS_FreeValue(ctx, method); - c003aac0: 7622 ld a2,40(sp) - c003aac2: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15191 + c003ac90: 7622 ld a2,40(sp) + c003ac92: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15199 sync_iter = JS_GetIterator2(ctx, obj, method); - c003aac4: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15192 + c003ac94: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15200 JS_FreeValue(ctx, method); - c003aac6: 8522 mv a0,s0 - c003aac8: 870cd0ef jal ra,c0007b38 + c003ac96: 8522 mv a0,s0 + c003ac98: f8fcc0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003aacc: 6706 ld a4,64(sp) - c003aace: 67a6 ld a5,72(sp) + c003ac9c: 6706 ld a4,64(sp) + c003ac9e: 67a6 ld a5,72(sp) JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15193 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15201 if (JS_IsException(sync_iter)) - c003aad0: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15194 + c003aca0: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15202 return sync_iter; - c003aad2: f8ba sd a4,112(sp) - c003aad4: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15193 + c003aca2: f8ba sd a4,112(sp) + c003aca4: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15201 if (JS_IsException(sync_iter)) - c003aad6: 01249c63 bne s1,s2,c003aaee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15211 -} - c003aada: 70ae ld ra,232(sp) - c003aadc: 740e ld s0,224(sp) - c003aade: 7546 ld a0,112(sp) - c003aae0: 75e6 ld a1,120(sp) - c003aae2: 64ee ld s1,216(sp) - c003aae4: 694e ld s2,208(sp) - c003aae6: 69ae ld s3,200(sp) - c003aae8: 6a0e ld s4,192(sp) - c003aaea: 616d addi sp,sp,240 - c003aaec: 8082 ret + c003aca6: 01249c63 bne s1,s2,c003acbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15219 +} + c003acaa: 70ae ld ra,232(sp) + c003acac: 740e ld s0,224(sp) + c003acae: 7546 ld a0,112(sp) + c003acb0: 75e6 ld a1,120(sp) + c003acb2: 64ee ld s1,216(sp) + c003acb4: 694e ld s2,208(sp) + c003acb6: 69ae ld s3,200(sp) + c003acb8: 6a0e ld s4,192(sp) + c003acba: 616d addi sp,sp,240 + c003acbc: 8082 ret JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003aaee: 4801 li a6,0 - c003aaf0: 06b00693 li a3,107 - c003aaf4: 85ba mv a1,a4 - c003aaf6: 863e mv a2,a5 - c003aaf8: 8522 mv a0,s0 - c003aafa: f93a sd a4,176(sp) - c003aafc: fd3e sd a5,184(sp) - c003aafe: d45d60ef jal ra,c0011842 - c003ab02: ed2e sd a1,152(sp) + c003acbe: 4801 li a6,0 + c003acc0: 06b00693 li a3,107 + c003acc4: 85ba mv a1,a4 + c003acc6: 863e mv a2,a5 + c003acc8: 8522 mv a0,s0 + c003acca: f93a sd a4,176(sp) + c003accc: fd3e sd a5,184(sp) + c003acce: c63d60ef jal ra,c0011930 + c003acd2: ed2e sd a1,152(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003ab04: e92a sd a0,144(sp) + c003acd4: e92a sd a0,144(sp) JS_CreateAsyncFromSyncIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48853 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48861 if (JS_IsException(next_method)) - c003ab06: 2581 sext.w a1,a1 - c003ab08: 03259163 bne a1,s2,c003ab2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48864 + c003acd6: 2581 sext.w a1,a1 + c003acd8: 03259163 bne a1,s2,c003acfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48872 return JS_EXCEPTION; - c003ab0c: f902 sd zero,176(sp) - c003ab0e: 4499 li s1,6 - c003ab10: 77ca ld a5,176(sp) + c003acdc: f902 sd zero,176(sp) + c003acde: 4499 li s1,6 + c003ace0: 77ca ld a5,176(sp) JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15196 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15204 JS_FreeValue(ctx, sync_iter); - c003ab12: 6586 ld a1,64(sp) - c003ab14: 6626 ld a2,72(sp) - c003ab16: fd26 sd s1,184(sp) - c003ab18: f83e sd a5,48(sp) - c003ab1a: fc26 sd s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15209 + c003ace2: 6586 ld a1,64(sp) + c003ace4: 6626 ld a2,72(sp) + c003ace6: fd26 sd s1,184(sp) + c003ace8: f83e sd a5,48(sp) + c003acea: fc26 sd s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15217 JS_FreeValue(ctx, method); - c003ab1c: 8522 mv a0,s0 - c003ab1e: 81acd0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15210 + c003acec: 8522 mv a0,s0 + c003acee: f39cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15218 return ret; - c003ab22: 77c2 ld a5,48(sp) - c003ab24: f8be sd a5,112(sp) - c003ab26: 77e2 ld a5,56(sp) - c003ab28: bf99 j c003aa7e + c003acf2: 77c2 ld a5,48(sp) + c003acf4: f8be sd a5,112(sp) + c003acf6: 77e2 ld a5,56(sp) + c003acf8: bf99 j c003ac4e JS_CreateAsyncFromSyncIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48855 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48863 async_iter = JS_NewObjectClass(ctx, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c003ab2a: 03300593 li a1,51 - c003ab2e: 8522 mv a0,s0 - c003ab30: 940dc0ef jal ra,c0016c70 - c003ab34: e12a sd a0,128(sp) - c003ab36: e52e sd a1,136(sp) + c003acfa: 03300593 li a1,51 + c003acfe: 8522 mv a0,s0 + c003ad00: 940dc0ef jal ra,c0016e40 + c003ad04: e12a sd a0,128(sp) + c003ad06: e52e sd a1,136(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003ab38: 00058a1b sext.w s4,a1 + c003ad08: 00058a1b sext.w s4,a1 JS_CreateAsyncFromSyncIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48855 - c003ab3c: 89aa mv s3,a0 - c003ab3e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48856 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48863 + c003ad0c: 89aa mv s3,a0 + c003ad0e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48864 if (JS_IsException(async_iter)) { - c003ab40: 012a1963 bne s4,s2,c003ab52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48857 + c003ad10: 012a1963 bne s4,s2,c003ad22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48865 JS_FreeValue(ctx, next_method); - c003ab44: 65ca ld a1,144(sp) - c003ab46: 666a ld a2,152(sp) - c003ab48: 8522 mv a0,s0 - c003ab4a: fefcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48869 + c003ad14: 65ca ld a1,144(sp) + c003ad16: 666a ld a2,152(sp) + c003ad18: 8522 mv a0,s0 + c003ad1a: f0dcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48877 return async_iter; - c003ab4e: f94e sd s3,176(sp) - c003ab50: b7c1 j c003ab10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48860 + c003ad1e: f94e sd s3,176(sp) + c003ad20: b7c1 j c003ace0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48868 s = js_mallocz(ctx, sizeof(*s)); - c003ab52: 02000593 li a1,32 - c003ab56: 8522 mv a0,s0 - c003ab58: 984db0ef jal ra,c0015cdc - c003ab5c: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48861 + c003ad22: 02000593 li a1,32 + c003ad26: 8522 mv a0,s0 + c003ad28: 984db0ef jal ra,c0015eac + c003ad2c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48869 if (!s) { - c003ab5e: ed01 bnez a0,c003ab76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48862 + c003ad2e: ed01 bnez a0,c003ad46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48870 JS_FreeValue(ctx, async_iter); - c003ab60: 658a ld a1,128(sp) - c003ab62: 662a ld a2,136(sp) - c003ab64: 8522 mv a0,s0 - c003ab66: fd3cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48863 + c003ad30: 658a ld a1,128(sp) + c003ad32: 662a ld a2,136(sp) + c003ad34: 8522 mv a0,s0 + c003ad36: ef1cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48871 JS_FreeValue(ctx, next_method); - c003ab6a: 65ca ld a1,144(sp) - c003ab6c: 666a ld a2,152(sp) - c003ab6e: 8522 mv a0,s0 - c003ab70: fc9cc0ef jal ra,c0007b38 - c003ab74: bf61 j c003ab0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48866 + c003ad3a: 65ca ld a1,144(sp) + c003ad3c: 666a ld a2,152(sp) + c003ad3e: 8522 mv a0,s0 + c003ad40: ee7cc0ef jal ra,c0007c26 + c003ad44: bf61 j c003acdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48874 s->sync_iter = JS_DupValue(ctx, sync_iter); - c003ab76: 7546 ld a0,112(sp) - c003ab78: 75e6 ld a1,120(sp) - c003ab7a: af5cb0ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48867 + c003ad46: 7546 ld a0,112(sp) + c003ad48: 75e6 ld a1,120(sp) + c003ad4a: a13cb0ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48875 s->next_method = next_method; - c003ab7e: 67ca ld a5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48866 + c003ad4e: 67ca ld a5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48874 s->sync_iter = JS_DupValue(ctx, sync_iter); - c003ab80: 00a93023 sd a0,0(s2) - c003ab84: 00b93423 sd a1,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48867 + c003ad50: 00a93023 sd a0,0(s2) + c003ad54: 00b93423 sd a1,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48875 s->next_method = next_method; - c003ab88: 00f93823 sd a5,16(s2) - c003ab8c: 67ea ld a5,152(sp) - c003ab8e: 00f93c23 sd a5,24(s2) + c003ad58: 00f93823 sd a5,16(s2) + c003ad5c: 67ea ld a5,152(sp) + c003ad5e: 00f93c23 sd a5,24(s2) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c003ab92: 57fd li a5,-1 - c003ab94: fafa1de3 bne s4,a5,c003ab4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c003ad62: 57fd li a5,-1 + c003ad64: fafa1de3 bne s4,a5,c003ad1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c003ab98: 0329b823 sd s2,48(s3) - c003ab9c: bf4d j c003ab4e + c003ad68: 0329b823 sd s2,48(s3) + c003ad6c: bf4d j c003ad1e JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003ab9e: 0cc00693 li a3,204 - c003aba2: ca1d60ef jal ra,c0011842 - c003aba6: e92a sd a0,144(sp) - c003aba8: ed2e sd a1,152(sp) - c003abaa: f02a sd a0,32(sp) - c003abac: f42e sd a1,40(sp) + c003ad6e: 0cc00693 li a3,204 + c003ad72: bbfd60ef jal ra,c0011930 + c003ad76: e92a sd a0,144(sp) + c003ad78: ed2e sd a1,152(sp) + c003ad7a: f02a sd a0,32(sp) + c003ad7c: f42e sd a1,40(sp) JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15201 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15209 if (JS_IsException(method)) - c003abae: 0005871b sext.w a4,a1 - c003abb2: 4799 li a5,6 + c003ad7e: 0005871b sext.w a4,a1 + c003ad82: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003abb4: 862e mv a2,a1 + c003ad84: 862e mv a2,a1 JS_GetIterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15201 - c003abb6: ecf701e3 beq a4,a5,c003aa78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15209 + c003ad86: ecf701e3 beq a4,a5,c003ac48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15212 if (!JS_IsFunction(ctx, method)) { - c003abba: 7582 ld a1,32(sp) - c003abbc: 8522 mv a0,s0 - c003abbe: f432 sd a2,40(sp) - c003abc0: e432 sd a2,8(sp) - c003abc2: b1bcf0ef jal ra,c000a6dc - c003abc6: 6622 ld a2,8(sp) - c003abc8: e11d bnez a0,c003abee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15205 + c003ad8a: 7582 ld a1,32(sp) + c003ad8c: 8522 mv a0,s0 + c003ad8e: f432 sd a2,40(sp) + c003ad90: e432 sd a2,8(sp) + c003ad92: a39cf0ef jal ra,c000a7ca + c003ad96: 6622 ld a2,8(sp) + c003ad98: e11d bnez a0,c003adbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15213 JS_FreeValue(ctx, method); - c003abca: 7582 ld a1,32(sp) - c003abcc: 8522 mv a0,s0 - c003abce: f6bcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15206 + c003ad9a: 7582 ld a1,32(sp) + c003ad9c: 8522 mv a0,s0 + c003ad9e: e89cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15214 return JS_ThrowTypeError(ctx, "value is not iterable"); - c003abd2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15211 -} - c003abd4: 740e ld s0,224(sp) - c003abd6: 70ae ld ra,232(sp) - c003abd8: 64ee ld s1,216(sp) - c003abda: 694e ld s2,208(sp) - c003abdc: 69ae ld s3,200(sp) - c003abde: 6a0e ld s4,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15206 + c003ada2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15219 +} + c003ada4: 740e ld s0,224(sp) + c003ada6: 70ae ld ra,232(sp) + c003ada8: 64ee ld s1,216(sp) + c003adaa: 694e ld s2,208(sp) + c003adac: 69ae ld s3,200(sp) + c003adae: 6a0e ld s4,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15214 return JS_ThrowTypeError(ctx, "value is not iterable"); - c003abe0: 00026597 auipc a1,0x26 - c003abe4: e2058593 addi a1,a1,-480 # c0060a00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15211 + c003adb0: 00026597 auipc a1,0x26 + c003adb4: eb058593 addi a1,a1,-336 # c0060c60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15219 } - c003abe8: 616d addi sp,sp,240 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15206 + c003adb8: 616d addi sp,sp,240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15214 return JS_ThrowTypeError(ctx, "value is not iterable"); - c003abea: 80dd806f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15208 + c003adba: f2ad806f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15216 ret = JS_GetIterator2(ctx, obj, method); - c003abee: 8732 mv a4,a2 - c003abf0: 7682 ld a3,32(sp) - c003abf2: 6662 ld a2,24(sp) - c003abf4: 65c2 ld a1,16(sp) - c003abf6: 8522 mv a0,s0 - c003abf8: df5ff0ef jal ra,c003a9ec - c003abfc: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15209 + c003adbe: 8732 mv a4,a2 + c003adc0: 7682 ld a3,32(sp) + c003adc2: 6662 ld a2,24(sp) + c003adc4: 65c2 ld a1,16(sp) + c003adc6: 8522 mv a0,s0 + c003adc8: df5ff0ef jal ra,c003abbc + c003adcc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15217 JS_FreeValue(ctx, method); - c003abfe: 7622 ld a2,40(sp) - c003ac00: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15208 + c003adce: 7622 ld a2,40(sp) + c003add0: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15216 ret = JS_GetIterator2(ctx, obj, method); - c003ac02: f82a sd a0,48(sp) - c003ac04: bf21 j c003ab1c + c003add2: f82a sd a0,48(sp) + c003add4: bf21 j c003acec -00000000c003ac06 : +00000000c003add6 : js_for_of_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15328 -{ - c003ac06: 7159 addi sp,sp,-112 - c003ac08: f0a2 sd s0,96(sp) - c003ac0a: eca6 sd s1,88(sp) - c003ac0c: e8ca sd s2,80(sp) - c003ac0e: f486 sd ra,104(sp) - c003ac10: 842e mv s0,a1 - c003ac12: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15336 +{ + c003add6: 7159 addi sp,sp,-112 + c003add8: f0a2 sd s0,96(sp) + c003adda: eca6 sd s1,88(sp) + c003addc: e8ca sd s2,80(sp) + c003adde: f486 sd ra,104(sp) + c003ade0: 842e mv s0,a1 + c003ade2: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15338 op1 = sp[-1]; - c003ac14: ff05b583 ld a1,-16(a1) - c003ac18: ff843603 ld a2,-8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15328 + c003ade4: ff05b583 ld a1,-16(a1) + c003ade8: ff843603 ld a2,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15336 { - c003ac1c: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15330 + c003adec: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15338 op1 = sp[-1]; - c003ac1e: e02e sd a1,0(sp) - c003ac20: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15331 + c003adee: e02e sd a1,0(sp) + c003adf0: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15339 obj = JS_GetIterator(ctx, op1, is_async); - c003ac22: e1dff0ef jal ra,c003aa3e - c003ac26: ec2e sd a1,24(sp) - c003ac28: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15332 + c003adf2: e1dff0ef jal ra,c003ac0e + c003adf6: ec2e sd a1,24(sp) + c003adf8: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15340 if (JS_IsException(obj)) - c003ac2a: 2581 sext.w a1,a1 - c003ac2c: 4919 li s2,6 - c003ac2e: 01259963 bne a1,s2,c003ac40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15333 - return -1; - c003ac32: 557d li a0,-1 + c003adfa: 2581 sext.w a1,a1 + c003adfc: 4919 li s2,6 + c003adfe: 01259963 bne a1,s2,c003ae10 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15341 + return -1; + c003ae02: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15349 } - c003ac34: 70a6 ld ra,104(sp) - c003ac36: 7406 ld s0,96(sp) - c003ac38: 64e6 ld s1,88(sp) - c003ac3a: 6946 ld s2,80(sp) - c003ac3c: 6165 addi sp,sp,112 - c003ac3e: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15334 + c003ae04: 70a6 ld ra,104(sp) + c003ae06: 7406 ld s0,96(sp) + c003ae08: 64e6 ld s1,88(sp) + c003ae0a: 6946 ld s2,80(sp) + c003ae0c: 6165 addi sp,sp,112 + c003ae0e: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15342 JS_FreeValue(ctx, op1); - c003ac40: 6582 ld a1,0(sp) - c003ac42: 6622 ld a2,8(sp) - c003ac44: 8526 mv a0,s1 - c003ac46: ef3cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15335 + c003ae10: 6582 ld a1,0(sp) + c003ae12: 6622 ld a2,8(sp) + c003ae14: 8526 mv a0,s1 + c003ae16: e11cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15343 sp[-1] = obj; - c003ac4a: 67e2 ld a5,24(sp) - c003ac4c: 6742 ld a4,16(sp) + c003ae1a: 67e2 ld a5,24(sp) + c003ae1c: 6742 ld a4,16(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ac4e: 4801 li a6,0 + c003ae1e: 4801 li a6,0 js_for_of_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15335 - c003ac50: fef43c23 sd a5,-8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15343 + c003ae20: fef43c23 sd a5,-8(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ac54: 863e mv a2,a5 + c003ae24: 863e mv a2,a5 js_for_of_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15335 - c003ac56: fee43823 sd a4,-16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15343 + c003ae26: fee43823 sd a4,-16(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ac5a: 06b00693 li a3,107 - c003ac5e: 85ba mv a1,a4 - c003ac60: 8526 mv a0,s1 - c003ac62: be1d60ef jal ra,c0011842 + c003ae2a: 06b00693 li a3,107 + c003ae2e: 85ba mv a1,a4 + c003ae30: 8526 mv a0,s1 + c003ae32: affd60ef jal ra,c0011930 js_for_of_start(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15337 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15345 if (JS_IsException(method)) - c003ac66: 0005879b sext.w a5,a1 - c003ac6a: fd2784e3 beq a5,s2,c003ac32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15339 + c003ae36: 0005879b sext.w a5,a1 + c003ae3a: fd2784e3 beq a5,s2,c003ae02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15347 sp[0] = method; - c003ac6e: e008 sd a0,0(s0) - c003ac70: e40c sd a1,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15340 + c003ae3e: e008 sd a0,0(s0) + c003ae40: e40c sd a1,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15348 return 0; - c003ac72: 4501 li a0,0 - c003ac74: b7c1 j c003ac34 + c003ae42: 4501 li a0,0 + c003ae44: b7c1 j c003ae04 -00000000c003ac76 : +00000000c003ae46 : js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38685 -{ - c003ac76: 710d addi sp,sp,-352 - c003ac78: eaa2 sd s0,336(sp) - c003ac7a: e2ca sd s2,320(sp) - c003ac7c: fe4e sd s3,312(sp) - c003ac7e: fa52 sd s4,304(sp) - c003ac80: 893a mv s2,a4 - c003ac82: 8a36 mv s4,a3 - c003ac84: ee86 sd ra,344(sp) - c003ac86: e6a6 sd s1,328(sp) - c003ac88: f656 sd s5,296(sp) - c003ac8a: f25a sd s6,288(sp) - c003ac8c: ee5e sd s7,280(sp) - c003ac8e: ea62 sd s8,272(sp) - c003ac90: e02e sd a1,0(sp) - c003ac92: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38693 +{ + c003ae46: 710d addi sp,sp,-352 + c003ae48: eaa2 sd s0,336(sp) + c003ae4a: e2ca sd s2,320(sp) + c003ae4c: fe4e sd s3,312(sp) + c003ae4e: fa52 sd s4,304(sp) + c003ae50: 893a mv s2,a4 + c003ae52: 8a36 mv s4,a3 + c003ae54: ee86 sd ra,344(sp) + c003ae56: e6a6 sd s1,328(sp) + c003ae58: f656 sd s5,296(sp) + c003ae5a: f25a sd s6,288(sp) + c003ae5c: ee5e sd s7,280(sp) + c003ae5e: ea62 sd s8,272(sp) + c003ae60: e02e sd a1,0(sp) + c003ae62: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38698 if (JS_IsUndefined(new_target)) - c003ac94: 0006069b sext.w a3,a2 - c003ac98: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38685 -{ - c003ac9a: 89be mv s3,a5 - c003ac9c: 842a mv s0,a0 - c003ac9e: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38690 + c003ae64: 0006069b sext.w a3,a2 + c003ae68: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38693 +{ + c003ae6a: 89be mv s3,a5 + c003ae6c: 842a mv s0,a0 + c003ae6e: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38698 if (JS_IsUndefined(new_target)) - c003aca0: 00e69963 bne a3,a4,c003acb2 + c003ae70: 00e69963 bne a3,a4,c003ae82 JS_GetActiveFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15627 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:15635 return ctx->rt->current_stack_frame->cur_func; - c003aca4: 6d1c ld a5,24(a0) - c003aca6: 7ffc ld a5,248(a5) - c003aca8: 6798 ld a4,8(a5) - c003acaa: 6b9c ld a5,16(a5) - c003acac: e93a sd a4,144(sp) - c003acae: ed3e sd a5,152(sp) - c003acb0: e03a sd a4,0(sp) + c003ae74: 6d1c ld a5,24(a0) + c003ae76: 7ffc ld a5,248(a5) + c003ae78: 6798 ld a4,8(a5) + c003ae7a: 6b9c ld a5,16(a5) + c003ae7c: e93a sd a4,144(sp) + c003ae7e: ed3e sd a5,152(sp) + c003ae80: e03a sd a4,0(sp) js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38692 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38700 proto = JS_GetProperty(ctx, new_target, JS_ATOM_prototype); - c003acb2: 6702 ld a4,0(sp) + c003ae82: 6702 ld a4,0(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003acb4: 863e mv a2,a5 - c003acb6: 4801 li a6,0 - c003acb8: 03c00693 li a3,60 - c003acbc: 85ba mv a1,a4 - c003acbe: 8522 mv a0,s0 - c003acc0: e43e sd a5,8(sp) - c003acc2: e63e sd a5,264(sp) - c003acc4: e23a sd a4,256(sp) - c003acc6: b7dd60ef jal ra,c0011842 - c003acca: f8aa sd a0,112(sp) - c003accc: fcae sd a1,120(sp) - c003acce: e0aa sd a0,64(sp) - c003acd0: e4ae sd a1,72(sp) + c003ae84: 863e mv a2,a5 + c003ae86: 4801 li a6,0 + c003ae88: 03c00693 li a3,60 + c003ae8c: 85ba mv a1,a4 + c003ae8e: 8522 mv a0,s0 + c003ae90: e43e sd a5,8(sp) + c003ae92: e63e sd a5,264(sp) + c003ae94: e23a sd a4,256(sp) + c003ae96: a9bd60ef jal ra,c0011930 + c003ae9a: f8aa sd a0,112(sp) + c003ae9c: fcae sd a1,120(sp) + c003ae9e: e0aa sd a0,64(sp) + c003aea0: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003acd2: 0005879b sext.w a5,a1 + c003aea2: 0005879b sext.w a5,a1 js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38693 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38701 if (JS_IsException(proto)) - c003acd6: 4499 li s1,6 + c003aea6: 4499 li s1,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003acd8: 862e mv a2,a1 + c003aea8: 862e mv a2,a1 js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38693 - c003acda: 02979263 bne a5,s1,c003acfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38701 + c003aeaa: 02979263 bne a5,s1,c003aece +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38702 return proto; - c003acde: f1aa sd a0,224(sp) - c003ace0: f5ae sd a1,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38755 (discriminator 2) -} - c003ace2: 60f6 ld ra,344(sp) - c003ace4: 6456 ld s0,336(sp) - c003ace6: 750e ld a0,224(sp) - c003ace8: 75ae ld a1,232(sp) - c003acea: 64b6 ld s1,328(sp) - c003acec: 6916 ld s2,320(sp) - c003acee: 79f2 ld s3,312(sp) - c003acf0: 7a52 ld s4,304(sp) - c003acf2: 7ab2 ld s5,296(sp) - c003acf4: 7b12 ld s6,288(sp) - c003acf6: 6bf2 ld s7,280(sp) - c003acf8: 6c52 ld s8,272(sp) - c003acfa: 6135 addi sp,sp,352 - c003acfc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38695 + c003aeae: f1aa sd a0,224(sp) + c003aeb0: f5ae sd a1,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38763 (discriminator 2) +} + c003aeb2: 60f6 ld ra,344(sp) + c003aeb4: 6456 ld s0,336(sp) + c003aeb6: 750e ld a0,224(sp) + c003aeb8: 75ae ld a1,232(sp) + c003aeba: 64b6 ld s1,328(sp) + c003aebc: 6916 ld s2,320(sp) + c003aebe: 79f2 ld s3,312(sp) + c003aec0: 7a52 ld s4,304(sp) + c003aec2: 7ab2 ld s5,296(sp) + c003aec4: 7b12 ld s6,288(sp) + c003aec6: 6bf2 ld s7,280(sp) + c003aec8: 6c52 ld s8,272(sp) + c003aeca: 6135 addi sp,sp,352 + c003aecc: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38703 if (!JS_IsObject(proto)) { - c003acfe: 577d li a4,-1 - c003ad00: 02e78c63 beq a5,a4,c003ad38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38699 + c003aece: 577d li a4,-1 + c003aed0: 02e78c63 beq a5,a4,c003af08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38707 JS_FreeValue(ctx, proto); - c003ad04: 85aa mv a1,a0 - c003ad06: 8522 mv a0,s0 - c003ad08: e31cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38700 + c003aed4: 85aa mv a1,a0 + c003aed6: 8522 mv a0,s0 + c003aed8: d4fcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38708 realm = JS_GetFunctionRealm(ctx, new_target); - c003ad0c: 6582 ld a1,0(sp) - c003ad0e: 6622 ld a2,8(sp) - c003ad10: 8522 mv a0,s0 - c003ad12: aa9d90ef jal ra,c00147ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38701 + c003aedc: 6582 ld a1,0(sp) + c003aede: 6622 ld a2,8(sp) + c003aee0: 8522 mv a0,s0 + c003aee2: 9c7d90ef jal ra,c00148a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38709 if (!realm) - c003ad16: e501 bnez a0,c003ad1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38702 + c003aee6: e501 bnez a0,c003aeee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38710 return JS_EXCEPTION; - c003ad18: f182 sd zero,224(sp) - c003ad1a: f5a6 sd s1,232(sp) - c003ad1c: b7d9 j c003ace2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38703 + c003aee8: f182 sd zero,224(sp) + c003aeea: f5a6 sd s1,232(sp) + c003aeec: b7d9 j c003aeb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38711 if (magic < 0) { - c003ad1e: 0409d463 bgez s3,c003ad66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38704 + c003aeee: 0409d463 bgez s3,c003af36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38712 proto1 = realm->class_proto[JS_CLASS_ERROR]; - c003ad22: 613c ld a5,64(a0) - c003ad24: 7b98 ld a4,48(a5) - c003ad26: 7f9c ld a5,56(a5) - c003ad28: e23a sd a4,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38706 + c003aef2: 613c ld a5,64(a0) + c003aef4: 7b98 ld a4,48(a5) + c003aef6: 7f9c ld a5,56(a5) + c003aef8: e23a sd a4,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38714 proto1 = realm->native_error_proto[magic]; - c003ad2a: e63e sd a5,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38708 + c003aefa: e63e sd a5,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38716 proto = JS_DupValue(ctx, proto1); - c003ad2c: 6512 ld a0,256(sp) - c003ad2e: 65b2 ld a1,264(sp) - c003ad30: 93fcb0ef jal ra,c000666e - c003ad34: e0aa sd a0,64(sp) - c003ad36: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38710 + c003aefc: 6512 ld a0,256(sp) + c003aefe: 65b2 ld a1,264(sp) + c003af00: 85dcb0ef jal ra,c000675c + c003af04: e0aa sd a0,64(sp) + c003af06: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38718 obj = JS_NewObjectProtoClass(ctx, proto, JS_CLASS_ERROR); - c003ad38: 6586 ld a1,64(sp) - c003ad3a: 468d li a3,3 - c003ad3c: 8522 mv a0,s0 - c003ad3e: e4b2 sd a2,72(sp) - c003ad40: a49db0ef jal ra,c0016788 - c003ad44: 84ae mv s1,a1 - c003ad46: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38711 + c003af08: 6586 ld a1,64(sp) + c003af0a: 468d li a3,3 + c003af0c: 8522 mv a0,s0 + c003af0e: e4b2 sd a2,72(sp) + c003af10: a49db0ef jal ra,c0016958 + c003af14: 84ae mv s1,a1 + c003af16: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38719 JS_FreeValue(ctx, proto); - c003ad48: 6626 ld a2,72(sp) - c003ad4a: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38710 + c003af18: 6626 ld a2,72(sp) + c003af1a: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38718 obj = JS_NewObjectProtoClass(ctx, proto, JS_CLASS_ERROR); - c003ad4c: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38712 + c003af1c: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38720 if (JS_IsException(obj)) - c003ad4e: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38711 + c003af1e: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38719 JS_FreeValue(ctx, proto); - c003ad50: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38712 + c003af20: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38720 if (JS_IsException(obj)) - c003ad52: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38711 + c003af22: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38719 JS_FreeValue(ctx, proto); - c003ad54: de5cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38712 + c003af24: d03cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38720 if (JS_IsException(obj)) - c003ad58: 01549f63 bne s1,s5,c003ad76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38751 + c003af28: 01549f63 bne s1,s5,c003af46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38759 return obj; - c003ad5c: 7782 ld a5,32(sp) - c003ad5e: f1be sd a5,224(sp) - c003ad60: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38754 + c003af2c: 7782 ld a5,32(sp) + c003af2e: f1be sd a5,224(sp) + c003af30: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38762 return JS_EXCEPTION; - c003ad62: f5be sd a5,232(sp) - c003ad64: bfbd j c003ace2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38706 - proto1 = realm->native_error_proto[magic]; - c003ad66: 00998793 addi a5,s3,9 - c003ad6a: 0792 slli a5,a5,0x4 - c003ad6c: 953e add a0,a0,a5 - c003ad6e: 651c ld a5,8(a0) - c003ad70: e23e sd a5,256(sp) - c003ad72: 691c ld a5,16(a0) - c003ad74: bf5d j c003ad2a + c003af32: f5be sd a5,232(sp) + c003af34: bfbd j c003aeb2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38714 + proto1 = realm->native_error_proto[magic]; + c003af36: 00998793 addi a5,s3,9 + c003af3a: 0792 slli a5,a5,0x4 + c003af3c: 953e add a0,a0,a5 + c003af3e: 651c ld a5,8(a0) + c003af40: e23e sd a5,256(sp) + c003af42: 691c ld a5,16(a0) + c003af44: bf5d j c003aefa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38722 arg_index = (magic == JS_AGGREGATE_ERROR); - c003ad76: ff998493 addi s1,s3,-7 - c003ad7a: 0014b793 seqz a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38716 + c003af46: ff998493 addi s1,s3,-7 + c003af4a: 0014b793 seqz a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38724 message = argv[arg_index++]; - c003ad7e: 00178493 addi s1,a5,1 - c003ad82: 0792 slli a5,a5,0x4 - c003ad84: 97ca add a5,a5,s2 - c003ad86: 6790 ld a2,8(a5) - c003ad88: 638c ld a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38717 + c003af4e: 00178493 addi s1,a5,1 + c003af52: 0792 slli a5,a5,0x4 + c003af54: 97ca add a5,a5,s2 + c003af56: 6790 ld a2,8(a5) + c003af58: 638c ld a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38725 if (!JS_IsUndefined(message)) { - c003ad8a: 478d li a5,3 - c003ad8c: 0006071b sext.w a4,a2 - c003ad90: 02f70363 beq a4,a5,c003adb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38718 + c003af5a: 478d li a5,3 + c003af5c: 0006071b sext.w a4,a2 + c003af60: 02f70363 beq a4,a5,c003af86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38726 msg = JS_ToString(ctx, message); - c003ad94: 8522 mv a0,s0 - c003ad96: a41df0ef jal ra,c001a7d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38719 + c003af64: 8522 mv a0,s0 + c003af66: a41df0ef jal ra,c001a9a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38727 if (unlikely(JS_IsException(msg))) - c003ad9a: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38718 + c003af6a: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38726 msg = JS_ToString(ctx, message); - c003ad9e: 872a mv a4,a0 - c003ada0: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38719 + c003af6e: 872a mv a4,a0 + c003af70: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38727 if (unlikely(JS_IsException(msg))) - c003ada2: 17568363 beq a3,s5,c003af08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38721 + c003af72: 17568363 beq a3,s5,c003b0d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38729 JS_DefinePropertyValue(ctx, obj, JS_ATOM_message, msg, - c003ada6: 7582 ld a1,32(sp) - c003ada8: 7622 ld a2,40(sp) - c003adaa: 480d li a6,3 - c003adac: 03300693 li a3,51 - c003adb0: 8522 mv a0,s0 - c003adb2: a04d80ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38725 + c003af76: 7582 ld a1,32(sp) + c003af78: 7622 ld a2,40(sp) + c003af7a: 480d li a6,3 + c003af7c: 03300693 li a3,51 + c003af80: 8522 mv a0,s0 + c003af82: 922d80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38733 if (arg_index < argc) { - c003adb6: 0744d263 bge s1,s4,c003ae1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38726 + c003af86: 0744d263 bge s1,s4,c003afea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38734 options = argv[arg_index]; - c003adba: 0492 slli s1,s1,0x4 - c003adbc: 94ca add s1,s1,s2 - c003adbe: 6490 ld a2,8(s1) - c003adc0: 608c ld a1,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38727 + c003af8a: 0492 slli s1,s1,0x4 + c003af8c: 94ca add s1,s1,s2 + c003af8e: 6490 ld a2,8(s1) + c003af90: 608c ld a1,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38735 if (JS_IsObject(options)) { - c003adc2: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38726 + c003af92: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38734 options = argv[arg_index]; - c003adc4: f4b2 sd a2,104(sp) - c003adc6: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38727 + c003af94: f4b2 sd a2,104(sp) + c003af96: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38735 if (JS_IsObject(options)) { - c003adc8: 0006071b sext.w a4,a2 - c003adcc: 04f71763 bne a4,a5,c003ae1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38728 + c003af98: 0006071b sext.w a4,a2 + c003af9c: 04f71763 bne a4,a5,c003afea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38736 int present = JS_HasProperty(ctx, options, JS_ATOM_cause); - c003add0: 03400693 li a3,52 - c003add4: 8522 mv a0,s0 - c003add6: c0df50ef jal ra,c00309e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38729 + c003afa0: 03400693 li a3,52 + c003afa4: 8522 mv a0,s0 + c003afa6: c0df50ef jal ra,c0030bb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38737 if (present < 0) - c003adda: 12054763 bltz a0,c003af08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38731 + c003afaa: 12054763 bltz a0,c003b0d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38739 if (present) { - c003adde: cd15 beqz a0,c003ae1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38732 + c003afae: cd15 beqz a0,c003afea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38740 JSValue cause = JS_GetProperty(ctx, options, JS_ATOM_cause); - c003ade0: 7706 ld a4,96(sp) - c003ade2: 77a6 ld a5,104(sp) + c003afb0: 7706 ld a4,96(sp) + c003afb2: 77a6 ld a5,104(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ade4: 03400693 li a3,52 - c003ade8: 85ba mv a1,a4 - c003adea: 863e mv a2,a5 - c003adec: 4801 li a6,0 - c003adee: 8522 mv a0,s0 - c003adf0: e23a sd a4,256(sp) - c003adf2: e63e sd a5,264(sp) - c003adf4: a4fd60ef jal ra,c0011842 - c003adf8: f9aa sd a0,240(sp) - c003adfa: fdae sd a1,248(sp) + c003afb4: 03400693 li a3,52 + c003afb8: 85ba mv a1,a4 + c003afba: 863e mv a2,a5 + c003afbc: 4801 li a6,0 + c003afbe: 8522 mv a0,s0 + c003afc0: e23a sd a4,256(sp) + c003afc2: e63e sd a5,264(sp) + c003afc4: 96dd60ef jal ra,c0011930 + c003afc8: f9aa sd a0,240(sp) + c003afca: fdae sd a1,248(sp) js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38733 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38741 if (JS_IsException(cause)) - c003adfc: 0005861b sext.w a2,a1 - c003ae00: 4699 li a3,6 + c003afcc: 0005861b sext.w a2,a1 + c003afd0: 4699 li a3,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ae02: 872a mv a4,a0 - c003ae04: 87ae mv a5,a1 + c003afd2: 872a mv a4,a0 + c003afd4: 87ae mv a5,a1 js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38733 - c003ae06: 10d60163 beq a2,a3,c003af08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38735 - JS_DefinePropertyValue(ctx, obj, JS_ATOM_cause, cause, - c003ae0a: 7582 ld a1,32(sp) - c003ae0c: 7622 ld a2,40(sp) - c003ae0e: 480d li a6,3 - c003ae10: 03400693 li a3,52 - c003ae14: 8522 mv a0,s0 - c003ae16: 9a0d80ef jal ra,c0012fb6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38741 + c003afd6: 10d60163 beq a2,a3,c003b0d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38743 + JS_DefinePropertyValue(ctx, obj, JS_ATOM_cause, cause, + c003afda: 7582 ld a1,32(sp) + c003afdc: 7622 ld a2,40(sp) + c003afde: 480d li a6,3 + c003afe0: 03400693 li a3,52 + c003afe4: 8522 mv a0,s0 + c003afe6: 8bed80ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38749 if (magic == JS_AGGREGATE_ERROR) { - c003ae1a: 479d li a5,7 - c003ae1c: 10f99c63 bne s3,a5,c003af34 + c003afea: 479d li a5,7 + c003afec: 10f99c63 bne s3,a5,c003b104 iterator_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38660 iter = JS_GetIterator(ctx, items, FALSE); - c003ae20: 00093583 ld a1,0(s2) - c003ae24: 00893603 ld a2,8(s2) - c003ae28: 4681 li a3,0 - c003ae2a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38647 + c003aff0: 00093583 ld a1,0(s2) + c003aff4: 00893603 ld a2,8(s2) + c003aff8: 4681 li a3,0 + c003affa: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38655 JSValue iter, next_method = JS_UNDEFINED; - c003ae2c: e182 sd zero,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38648 + c003affc: e182 sd zero,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38656 JSValue v, r = JS_UNDEFINED; - c003ae2e: f182 sd zero,224(sp) - c003ae30: f582 sd zero,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38652 + c003affe: f182 sd zero,224(sp) + c003b000: f582 sd zero,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38660 iter = JS_GetIterator(ctx, items, FALSE); - c003ae32: c0dff0ef jal ra,c003aa3e - c003ae36: f92a sd a0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38653 + c003b002: c0dff0ef jal ra,c003ac0e + c003b006: f92a sd a0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38661 if (JS_IsException(iter)) - c003ae38: 0005879b sext.w a5,a1 - c003ae3c: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38652 + c003b008: 0005879b sext.w a5,a1 + c003b00c: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38660 iter = JS_GetIterator(ctx, items, FALSE); - c003ae3e: 872a mv a4,a0 - c003ae40: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38653 + c003b00e: 872a mv a4,a0 + c003b010: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38661 if (JS_IsException(iter)) - c003ae42: 0d578b63 beq a5,s5,c003af18 + c003b012: 0d578b63 beq a5,s5,c003b0e8 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ae46: 87ae mv a5,a1 - c003ae48: e22a sd a0,256(sp) - c003ae4a: e62e sd a1,264(sp) - c003ae4c: 4801 li a6,0 - c003ae4e: 85aa mv a1,a0 - c003ae50: 06b00693 li a3,107 - c003ae54: 864e mv a2,s3 - c003ae56: 8522 mv a0,s0 - c003ae58: 9ebd60ef jal ra,c0011842 - c003ae5c: f9aa sd a0,240(sp) - c003ae5e: fdae sd a1,248(sp) - c003ae60: e1aa sd a0,192(sp) + c003b016: 87ae mv a5,a1 + c003b018: e22a sd a0,256(sp) + c003b01a: e62e sd a1,264(sp) + c003b01c: 4801 li a6,0 + c003b01e: 85aa mv a1,a0 + c003b020: 06b00693 li a3,107 + c003b024: 864e mv a2,s3 + c003b026: 8522 mv a0,s0 + c003b028: 909d60ef jal ra,c0011930 + c003b02c: f9aa sd a0,240(sp) + c003b02e: fdae sd a1,248(sp) + c003b030: e1aa sd a0,192(sp) iterator_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38656 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38664 if (JS_IsException(next_method)) - c003ae62: 0005879b sext.w a5,a1 + c003b032: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003ae66: 8a2e mv s4,a1 - c003ae68: 8bae mv s7,a1 + c003b036: 8a2e mv s4,a1 + c003b038: 8bae mv s7,a1 iterator_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38656 - c003ae6a: 0b578a63 beq a5,s5,c003af1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38658 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38664 + c003b03a: 0b578a63 beq a5,s5,c003b0ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38666 r = JS_NewArray(ctx); - c003ae6e: 8522 mv a0,s0 - c003ae70: 94edc0ef jal ra,c0016fbe - c003ae74: f1aa sd a0,224(sp) - c003ae76: f5ae sd a1,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38659 + c003b03e: 8522 mv a0,s0 + c003b040: 94edc0ef jal ra,c001718e + c003b044: f1aa sd a0,224(sp) + c003b046: f5ae sd a1,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38667 if (JS_IsException(r)) - c003ae78: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38658 + c003b048: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38666 r = JS_NewArray(ctx); - c003ae7c: 892e mv s2,a1 - c003ae7e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38659 - if (JS_IsException(r)) - c003ae80: 05578963 beq a5,s5,c003aed2 + c003b04c: 892e mv s2,a1 + c003b04e: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38667 + if (JS_IsException(r)) + c003b050: 05578963 beq a5,s5,c003b0a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38675 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003ae84: 6b11 lui s6,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38661 + c003b054: 6b11 lui s6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38669 for (k = 0;; k++) { - c003ae86: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38663 + c003b056: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38671 if (JS_IsException(v)) - c003ae88: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38667 + c003b058: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38675 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003ae8a: 0b1d addi s6,s6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38662 + c003b05a: 0b1d addi s6,s6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38670 v = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003ae8c: 668e ld a3,192(sp) - c003ae8e: 75ca ld a1,176(sp) - c003ae90: 087c addi a5,sp,28 - c003ae92: 8752 mv a4,s4 - c003ae94: 864e mv a2,s3 - c003ae96: 8522 mv a0,s0 - c003ae98: fd4e sd s3,184(sp) - c003ae9a: a99ff0ef jal ra,c003a932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38663 + c003b05c: 668e ld a3,192(sp) + c003b05e: 75ca ld a1,176(sp) + c003b060: 087c addi a5,sp,28 + c003b062: 8752 mv a4,s4 + c003b064: 864e mv a2,s3 + c003b066: 8522 mv a0,s0 + c003b068: fd4e sd s3,184(sp) + c003b06a: a99ff0ef jal ra,c003ab02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38671 if (JS_IsException(v)) - c003ae9e: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38662 + c003b06e: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38670 v = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003aea2: 872a mv a4,a0 - c003aea4: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38663 + c003b072: 872a mv a4,a0 + c003b074: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38671 if (JS_IsException(v)) - c003aea6: 03868063 beq a3,s8,c003aec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38665 + c003b076: 03868063 beq a3,s8,c003b096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38673 if (done) - c003aeaa: 46f2 lw a3,28(sp) - c003aeac: ea9d bnez a3,c003aee2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38667 + c003b07a: 46f2 lw a3,28(sp) + c003b07c: ea9d bnez a3,c003b0b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38675 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003aeae: 758e ld a1,224(sp) - c003aeb0: 885a mv a6,s6 - c003aeb2: 86d6 mv a3,s5 - c003aeb4: 864a mv a2,s2 - c003aeb6: 8522 mv a0,s0 - c003aeb8: f5ca sd s2,232(sp) - c003aeba: 85dee0ef jal ra,c0029716 - c003aebe: 00054463 bltz a0,c003aec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38661 + c003b07e: 758e ld a1,224(sp) + c003b080: 885a mv a6,s6 + c003b082: 86d6 mv a3,s5 + c003b084: 864a mv a2,s2 + c003b086: 8522 mv a0,s0 + c003b088: f5ca sd s2,232(sp) + c003b08a: 85dee0ef jal ra,c00298e6 + c003b08e: 00054463 bltz a0,c003b096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38669 for (k = 0;; k++) { - c003aec2: 0a85 addi s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38662 + c003b092: 0a85 addi s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38670 v = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003aec4: b7e1 j c003ae8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38676 + c003b094: b7e1 j c003b05c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38684 JS_IteratorClose(ctx, iter, TRUE); - c003aec6: 75ca ld a1,176(sp) - c003aec8: 766a ld a2,184(sp) - c003aeca: 4685 li a3,1 - c003aecc: 8522 mv a0,s0 - c003aece: abbd80ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38678 + c003b096: 75ca ld a1,176(sp) + c003b098: 766a ld a2,184(sp) + c003b09a: 4685 li a3,1 + c003b09c: 8522 mv a0,s0 + c003b09e: 9d9d80ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38686 JS_FreeValue(ctx, r); - c003aed2: 758e ld a1,224(sp) - c003aed4: 8626 mv a2,s1 - c003aed6: 8522 mv a0,s0 - c003aed8: f5a6 sd s1,232(sp) - c003aeda: c5fcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38679 + c003b0a2: 758e ld a1,224(sp) + c003b0a4: 8626 mv a2,s1 + c003b0a6: 8522 mv a0,s0 + c003b0a8: f5a6 sd s1,232(sp) + c003b0aa: b7dcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38687 r = JS_EXCEPTION; - c003aede: 4499 li s1,6 - c003aee0: f182 sd zero,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38672 + c003b0ae: 4499 li s1,6 + c003b0b0: f182 sd zero,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38680 JS_FreeValue(ctx, next_method); - c003aee2: 658e ld a1,192(sp) - c003aee4: 865e mv a2,s7 - c003aee6: 8522 mv a0,s0 - c003aee8: c51cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38673 + c003b0b2: 658e ld a1,192(sp) + c003b0b4: 865e mv a2,s7 + c003b0b6: 8522 mv a0,s0 + c003b0b8: b6fcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38681 JS_FreeValue(ctx, iter); - c003aeec: 75ca ld a1,176(sp) - c003aeee: 864e mv a2,s3 - c003aef0: 8522 mv a0,s0 - c003aef2: c47cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38674 + c003b0bc: 75ca ld a1,176(sp) + c003b0be: 864e mv a2,s3 + c003b0c0: 8522 mv a0,s0 + c003b0c2: b65cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38682 return r; - c003aef6: 770e ld a4,224(sp) - c003aef8: f5a6 sd s1,232(sp) - c003aefa: e626 sd s1,264(sp) - c003aefc: e23a sd a4,256(sp) + c003b0c6: 770e ld a4,224(sp) + c003b0c8: f5a6 sd s1,232(sp) + c003b0ca: e626 sd s1,264(sp) + c003b0cc: e23a sd a4,256(sp) js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38743 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38751 if (JS_IsException(error_list)) - c003aefe: 0004879b sext.w a5,s1 - c003af02: 4699 li a3,6 - c003af04: 00d79f63 bne a5,a3,c003af22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38753 + c003b0ce: 0004879b sext.w a5,s1 + c003b0d2: 4699 li a3,6 + c003b0d4: 00d79f63 bne a5,a3,c003b0f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38761 JS_FreeValue(ctx, obj); - c003af08: 7582 ld a1,32(sp) - c003af0a: 7622 ld a2,40(sp) - c003af0c: 8522 mv a0,s0 - c003af0e: c2bcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38754 + c003b0d8: 7582 ld a1,32(sp) + c003b0da: 7622 ld a2,40(sp) + c003b0dc: 8522 mv a0,s0 + c003b0de: b49cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38762 return JS_EXCEPTION; - c003af12: 4799 li a5,6 - c003af14: f182 sd zero,224(sp) - c003af16: b5b1 j c003ad62 + c003b0e2: 4799 li a5,6 + c003b0e4: f182 sd zero,224(sp) + c003b0e6: b5b1 j c003af32 iterator_to_array(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38648 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38656 JSValue v, r = JS_UNDEFINED; - c003af18: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38647 + c003b0e8: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38655 JSValue iter, next_method = JS_UNDEFINED; - c003af1a: 4b8d li s7,3 - c003af1c: bf5d j c003aed2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38648 + c003b0ea: 4b8d li s7,3 + c003b0ec: bf5d j c003b0a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38656 JSValue v, r = JS_UNDEFINED; - c003af1e: 448d li s1,3 - c003af20: bf4d j c003aed2 + c003b0ee: 448d li s1,3 + c003b0f0: bf4d j c003b0a2 js_error_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38745 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38753 JS_DefinePropertyValue(ctx, obj, JS_ATOM_errors, error_list, - c003af22: 7582 ld a1,32(sp) - c003af24: 7622 ld a2,40(sp) - c003af26: 480d li a6,3 - c003af28: 87a6 mv a5,s1 - c003af2a: 03500693 li a3,53 - c003af2e: 8522 mv a0,s0 - c003af30: 886d80ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38750 + c003b0f2: 7582 ld a1,32(sp) + c003b0f4: 7622 ld a2,40(sp) + c003b0f6: 480d li a6,3 + c003b0f8: 87a6 mv a5,s1 + c003b0fa: 03500693 li a3,53 + c003b0fe: 8522 mv a0,s0 + c003b100: fa5d70ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38758 build_backtrace(ctx, obj, NULL, 0, JS_BACKTRACE_FLAG_SKIP_FIRST_LEVEL); - c003af34: 7582 ld a1,32(sp) - c003af36: 7622 ld a2,40(sp) - c003af38: 4785 li a5,1 - c003af3a: 4701 li a4,0 - c003af3c: 4681 li a3,0 - c003af3e: 8522 mv a0,s0 - c003af40: b0ee40ef jal ra,c001f24e - c003af44: bd21 j c003ad5c - -00000000c003af46 : + c003b104: 7582 ld a1,32(sp) + c003b106: 7622 ld a2,40(sp) + c003b108: 4785 li a5,1 + c003b10a: 4701 li a4,0 + c003b10c: 4681 li a3,0 + c003b10e: 8522 mv a0,s0 + c003b110: b0ee40ef jal ra,c001f41e + c003b114: bd21 j c003af2c + +00000000c003b116 : js_object_fromEntries(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37903 -{ - c003af46: 7151 addi sp,sp,-240 - c003af48: f1a2 sd s0,224(sp) - c003af4a: e9ca sd s2,208(sp) - c003af4c: e1d2 sd s4,192(sp) - c003af4e: f586 sd ra,232(sp) - c003af50: eda6 sd s1,216(sp) - c003af52: e5ce sd s3,200(sp) - c003af54: fd56 sd s5,184(sp) - c003af56: f95a sd s6,176(sp) - c003af58: f55e sd s7,168(sp) - c003af5a: f162 sd s8,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37910 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37911 +{ + c003b116: 7151 addi sp,sp,-240 + c003b118: f1a2 sd s0,224(sp) + c003b11a: e9ca sd s2,208(sp) + c003b11c: e1d2 sd s4,192(sp) + c003b11e: f586 sd ra,232(sp) + c003b120: eda6 sd s1,216(sp) + c003b122: e5ce sd s3,200(sp) + c003b124: fd56 sd s5,184(sp) + c003b126: f95a sd s6,176(sp) + c003b128: f55e sd s7,168(sp) + c003b12a: f162 sd s8,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37918 iterable = argv[0]; - c003af5c: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37903 + c003b12c: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37911 { - c003af5e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37904 + c003b12e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37912 JSValue obj, iter, next_method = JS_UNDEFINED; - c003af60: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37910 + c003b130: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37918 iterable = argv[0]; - c003af62: e8be sd a5,80(sp) - c003af64: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37913 + c003b132: e8be sd a5,80(sp) + c003b134: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37921 if (JS_IsException(obj)) - c003af66: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37910 + c003b136: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37918 iterable = argv[0]; - c003af68: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37912 + c003b138: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37920 obj = JS_NewObject(ctx); - c003af6a: e1fdb0ef jal ra,c0016d88 - c003af6e: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37913 + c003b13a: e1fdb0ef jal ra,c0016f58 + c003b13e: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37921 if (JS_IsException(obj)) - c003af70: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37912 + c003b140: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37920 obj = JS_NewObject(ctx); - c003af74: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37913 + c003b144: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37921 if (JS_IsException(obj)) - c003af76: 03479263 bne a5,s4,c003af9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37914 + c003b146: 03479263 bne a5,s4,c003b16a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37922 return obj; - c003af7a: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37957 + c003b14a: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37965 return obj; - c003af7c: e54a sd s2,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37967 -} - c003af7e: 70ae ld ra,232(sp) - c003af80: 740e ld s0,224(sp) - c003af82: 650a ld a0,128(sp) - c003af84: 65aa ld a1,136(sp) - c003af86: 64ee ld s1,216(sp) - c003af88: 694e ld s2,208(sp) - c003af8a: 69ae ld s3,200(sp) - c003af8c: 6a0e ld s4,192(sp) - c003af8e: 7aea ld s5,184(sp) - c003af90: 7b4a ld s6,176(sp) - c003af92: 7baa ld s7,168(sp) - c003af94: 7c0a ld s8,160(sp) - c003af96: 616d addi sp,sp,240 - c003af98: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37916 + c003b14c: e54a sd s2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37975 +} + c003b14e: 70ae ld ra,232(sp) + c003b150: 740e ld s0,224(sp) + c003b152: 650a ld a0,128(sp) + c003b154: 65aa ld a1,136(sp) + c003b156: 64ee ld s1,216(sp) + c003b158: 694e ld s2,208(sp) + c003b15a: 69ae ld s3,200(sp) + c003b15c: 6a0e ld s4,192(sp) + c003b15e: 7aea ld s5,184(sp) + c003b160: 7b4a ld s6,176(sp) + c003b162: 7baa ld s7,168(sp) + c003b164: 7c0a ld s8,160(sp) + c003b166: 616d addi sp,sp,240 + c003b168: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37924 iter = JS_GetIterator(ctx, iterable, FALSE); - c003af9a: 65c6 ld a1,80(sp) - c003af9c: 6666 ld a2,88(sp) - c003af9e: 4681 li a3,0 - c003afa0: 8522 mv a0,s0 - c003afa2: a9dff0ef jal ra,c003aa3e - c003afa6: f82a sd a0,48(sp) + c003b16a: 65c6 ld a1,80(sp) + c003b16c: 6666 ld a2,88(sp) + c003b16e: 4681 li a3,0 + c003b170: 8522 mv a0,s0 + c003b172: a9dff0ef jal ra,c003ac0e + c003b176: f82a sd a0,48(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003afa8: 00058b9b sext.w s7,a1 + c003b178: 00058b9b sext.w s7,a1 js_object_fromEntries(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37916 - c003afac: 872a mv a4,a0 - c003afae: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37924 + c003b17c: 872a mv a4,a0 + c003b17e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37925 if (JS_IsException(iter)) - c003afb0: 114b8e63 beq s7,s4,c003b0cc + c003b180: 114b8e63 beq s7,s4,c003b29c JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003afb4: 87ae mv a5,a1 - c003afb6: e12a sd a0,128(sp) - c003afb8: e52e sd a1,136(sp) - c003afba: 4801 li a6,0 - c003afbc: 85aa mv a1,a0 - c003afbe: 06b00693 li a3,107 - c003afc2: 8626 mv a2,s1 - c003afc4: 8522 mv a0,s0 - c003afc6: 87dd60ef jal ra,c0011842 - c003afca: e0aa sd a0,64(sp) + c003b184: 87ae mv a5,a1 + c003b186: e12a sd a0,128(sp) + c003b188: e52e sd a1,136(sp) + c003b18a: 4801 li a6,0 + c003b18c: 85aa mv a1,a0 + c003b18e: 06b00693 li a3,107 + c003b192: 8626 mv a2,s1 + c003b194: 8522 mv a0,s0 + c003b196: f9ad60ef jal ra,c0011930 + c003b19a: e0aa sd a0,64(sp) js_object_fromEntries(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37928 if (JS_IsException(next_method)) - c003afcc: 0005879b sext.w a5,a1 + c003b19c: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003afd0: 89ae mv s3,a1 - c003afd2: 8b2e mv s6,a1 + c003b1a0: 89ae mv s3,a1 + c003b1a2: 8b2e mv s6,a1 js_object_fromEntries(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37920 - c003afd4: 07478463 beq a5,s4,c003b03c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37947 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37928 + c003b1a4: 07478463 beq a5,s4,c003b20c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37955 if (JS_DefinePropertyValueValue(ctx, obj, key, value, - c003afd8: 6a91 lui s5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37926 + c003b1a8: 6a91 lui s5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37934 if (JS_IsException(item)) - c003afda: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37935 + c003b1aa: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37943 if (!JS_IsObject(item)) { - c003afdc: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37947 + c003b1ac: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37955 if (JS_DefinePropertyValueValue(ctx, obj, key, value, - c003afde: 0a9d addi s5,s5,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37925 + c003b1ae: 0a9d addi s5,s5,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37933 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003afe0: 6686 ld a3,64(sp) - c003afe2: 75c2 ld a1,48(sp) - c003afe4: 087c addi a5,sp,28 - c003afe6: 8626 mv a2,s1 - c003afe8: 874e mv a4,s3 - c003afea: 8522 mv a0,s0 - c003afec: e4ce sd s3,72(sp) - c003afee: fc26 sd s1,56(sp) - c003aff0: 943ff0ef jal ra,c003a932 - c003aff4: e12a sd a0,128(sp) - c003aff6: e52e sd a1,136(sp) + c003b1b0: 6686 ld a3,64(sp) + c003b1b2: 75c2 ld a1,48(sp) + c003b1b4: 087c addi a5,sp,28 + c003b1b6: 8626 mv a2,s1 + c003b1b8: 874e mv a4,s3 + c003b1ba: 8522 mv a0,s0 + c003b1bc: e4ce sd s3,72(sp) + c003b1be: fc26 sd s1,56(sp) + c003b1c0: 943ff0ef jal ra,c003ab02 + c003b1c4: e12a sd a0,128(sp) + c003b1c6: e52e sd a1,136(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003aff8: 0005879b sext.w a5,a1 + c003b1c8: 0005879b sext.w a5,a1 js_object_fromEntries(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37925 - c003affc: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37926 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37933 + c003b1cc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37934 if (JS_IsException(item)) - c003affe: 03478f63 beq a5,s4,c003b03c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37928 + c003b1ce: 03478f63 beq a5,s4,c003b20c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37936 if (done) { - c003b002: 4772 lw a4,28(sp) - c003b004: c315 beqz a4,c003b028 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37929 + c003b1d2: 4772 lw a4,28(sp) + c003b1d4: c315 beqz a4,c003b1f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37937 JS_FreeValue(ctx, item); - c003b006: 85aa mv a1,a0 - c003b008: 8522 mv a0,s0 - c003b00a: b2fcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37955 + c003b1d6: 85aa mv a1,a0 + c003b1d8: 8522 mv a0,s0 + c003b1da: a4dcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37963 JS_FreeValue(ctx, next_method); - c003b00e: 6586 ld a1,64(sp) - c003b010: 6626 ld a2,72(sp) - c003b012: 8522 mv a0,s0 - c003b014: b25cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37956 + c003b1de: 6586 ld a1,64(sp) + c003b1e0: 6626 ld a2,72(sp) + c003b1e2: 8522 mv a0,s0 + c003b1e4: a43cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37964 JS_FreeValue(ctx, iter); - c003b018: 75c2 ld a1,48(sp) - c003b01a: 7662 ld a2,56(sp) - c003b01c: 8522 mv a0,s0 - c003b01e: b1bcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37957 + c003b1e8: 75c2 ld a1,48(sp) + c003b1ea: 7662 ld a2,56(sp) + c003b1ec: 8522 mv a0,s0 + c003b1ee: a39cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37965 return obj; - c003b022: 7782 ld a5,32(sp) - c003b024: e13e sd a5,128(sp) - c003b026: bf99 j c003af7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37935 + c003b1f2: 7782 ld a5,32(sp) + c003b1f4: e13e sd a5,128(sp) + c003b1f6: bf99 j c003b14c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37943 if (!JS_IsObject(item)) { - c003b028: 05878663 beq a5,s8,c003b074 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37936 + c003b1f8: 05878663 beq a5,s8,c003b244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37944 JS_ThrowTypeErrorNotAnObject(ctx); - c003b02c: 8522 mv a0,s0 - c003b02e: 94bd80ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37950 + c003b1fc: 8522 mv a0,s0 + c003b1fe: 869d80ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37958 JS_FreeValue(ctx, item); - c003b032: 658a ld a1,128(sp) - c003b034: 662a ld a2,136(sp) - c003b036: 8522 mv a0,s0 - c003b038: b01cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37959 + c003b202: 658a ld a1,128(sp) + c003b204: 662a ld a2,136(sp) + c003b206: 8522 mv a0,s0 + c003b208: a1fcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37967 if (JS_IsObject(iter)) { - c003b03c: 57fd li a5,-1 - c003b03e: 00fb9863 bne s7,a5,c003b04e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37961 + c003b20c: 57fd li a5,-1 + c003b20e: 00fb9863 bne s7,a5,c003b21e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37969 JS_IteratorClose(ctx, iter, TRUE); - c003b042: 75c2 ld a1,48(sp) - c003b044: 4685 li a3,1 - c003b046: 8626 mv a2,s1 - c003b048: 8522 mv a0,s0 - c003b04a: 93fd80ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37963 + c003b212: 75c2 ld a1,48(sp) + c003b214: 4685 li a3,1 + c003b216: 8626 mv a2,s1 + c003b218: 8522 mv a0,s0 + c003b21a: 85dd80ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37971 JS_FreeValue(ctx, next_method); - c003b04e: 6586 ld a1,64(sp) - c003b050: 865a mv a2,s6 - c003b052: 8522 mv a0,s0 - c003b054: ae5cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37964 + c003b21e: 6586 ld a1,64(sp) + c003b220: 865a mv a2,s6 + c003b222: 8522 mv a0,s0 + c003b224: a03cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37972 JS_FreeValue(ctx, iter); - c003b058: 75c2 ld a1,48(sp) - c003b05a: 8626 mv a2,s1 - c003b05c: 8522 mv a0,s0 - c003b05e: adbcc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37965 + c003b228: 75c2 ld a1,48(sp) + c003b22a: 8626 mv a2,s1 + c003b22c: 8522 mv a0,s0 + c003b22e: 9f9cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37973 JS_FreeValue(ctx, obj); - c003b062: 7582 ld a1,32(sp) - c003b064: 864a mv a2,s2 - c003b066: 8522 mv a0,s0 - c003b068: ad1cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37966 + c003b232: 7582 ld a1,32(sp) + c003b234: 864a mv a2,s2 + c003b236: 8522 mv a0,s0 + c003b238: 9efcc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37974 return JS_EXCEPTION; - c003b06c: 4799 li a5,6 - c003b06e: e102 sd zero,128(sp) - c003b070: e53e sd a5,136(sp) - c003b072: b731 j c003af7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37939 + c003b23c: 4799 li a5,6 + c003b23e: e102 sd zero,128(sp) + c003b240: e53e sd a5,136(sp) + c003b242: b731 j c003b14e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37947 key = JS_GetPropertyUint32(ctx, item, 0); - c003b074: 85aa mv a1,a0 - c003b076: 4681 li a3,0 - c003b078: 8522 mv a0,s0 - c003b07a: e53d60ef jal ra,c0011ecc - c003b07e: f4ae sd a1,104(sp) - c003b080: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37940 + c003b244: 85aa mv a1,a0 + c003b246: 4681 li a3,0 + c003b248: 8522 mv a0,s0 + c003b24a: d71d60ef jal ra,c0011fba + c003b24e: f4ae sd a1,104(sp) + c003b250: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37948 if (JS_IsException(key)) - c003b082: 2581 sext.w a1,a1 - c003b084: fb4587e3 beq a1,s4,c003b032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37942 + c003b252: 2581 sext.w a1,a1 + c003b254: fb4587e3 beq a1,s4,c003b202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37950 value = JS_GetPropertyUint32(ctx, item, 1); - c003b088: 658a ld a1,128(sp) - c003b08a: 662a ld a2,136(sp) - c003b08c: 4685 li a3,1 - c003b08e: 8522 mv a0,s0 - c003b090: e3dd60ef jal ra,c0011ecc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37943 + c003b258: 658a ld a1,128(sp) + c003b25a: 662a ld a2,136(sp) + c003b25c: 4685 li a3,1 + c003b25e: 8522 mv a0,s0 + c003b260: d5bd60ef jal ra,c0011fba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37951 if (JS_IsException(value)) { - c003b094: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37942 + c003b264: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37950 value = JS_GetPropertyUint32(ctx, item, 1); - c003b098: 87aa mv a5,a0 - c003b09a: 882e mv a6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37943 + c003b268: 87aa mv a5,a0 + c003b26a: 882e mv a6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37951 if (JS_IsException(value)) { - c003b09c: 01471863 bne a4,s4,c003b0ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37944 + c003b26c: 01471863 bne a4,s4,c003b27c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37952 JS_FreeValue(ctx, key); - c003b0a0: 7586 ld a1,96(sp) - c003b0a2: 7626 ld a2,104(sp) - c003b0a4: 8522 mv a0,s0 - c003b0a6: a93cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37945 + c003b270: 7586 ld a1,96(sp) + c003b272: 7626 ld a2,104(sp) + c003b274: 8522 mv a0,s0 + c003b276: 9b1cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37953 goto fail1; - c003b0aa: b761 j c003b032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37947 + c003b27a: b761 j c003b202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37955 if (JS_DefinePropertyValueValue(ctx, obj, key, value, - c003b0ac: 7686 ld a3,96(sp) - c003b0ae: 7726 ld a4,104(sp) - c003b0b0: 7582 ld a1,32(sp) - c003b0b2: 88d6 mv a7,s5 - c003b0b4: 864a mv a2,s2 - c003b0b6: 8522 mv a0,s0 - c003b0b8: bc4ee0ef jal ra,c002947c - c003b0bc: f6054be3 bltz a0,c003b032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37953 + c003b27c: 7686 ld a3,96(sp) + c003b27e: 7726 ld a4,104(sp) + c003b280: 7582 ld a1,32(sp) + c003b282: 88d6 mv a7,s5 + c003b284: 864a mv a2,s2 + c003b286: 8522 mv a0,s0 + c003b288: bc4ee0ef jal ra,c002964c + c003b28c: f6054be3 bltz a0,c003b202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37961 JS_FreeValue(ctx, item); - c003b0c0: 658a ld a1,128(sp) - c003b0c2: 662a ld a2,136(sp) - c003b0c4: 8522 mv a0,s0 - c003b0c6: a73cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37923 + c003b290: 658a ld a1,128(sp) + c003b292: 662a ld a2,136(sp) + c003b294: 8522 mv a0,s0 + c003b296: 991cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37931 for(;;) { - c003b0ca: bf19 j c003afe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37904 + c003b29a: bf19 j c003b1b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37912 JSValue obj, iter, next_method = JS_UNDEFINED; - c003b0cc: 4b0d li s6,3 - c003b0ce: b741 j c003b04e + c003b29c: 4b0d li s6,3 + c003b29e: b741 j c003b21e -00000000c003b0d0 : +00000000c003b2a0 : js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 { - c003b0d0: 7149 addi sp,sp,-368 - c003b0d2: eea6 sd s1,344(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54776 + c003b2a0: 7149 addi sp,sp,-368 + c003b2a2: eea6 sd s1,344(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54784 size_log2 = typed_array_size_log2(classid); - c003b0d4: feb7869b addiw a3,a5,-21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 + c003b2a4: feb7869b addiw a3,a5,-21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 { - c003b0d8: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54776 + c003b2a8: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54784 size_log2 = typed_array_size_log2(classid); - c003b0da: 0002c717 auipc a4,0x2c - c003b0de: e5e70713 addi a4,a4,-418 # c0066f38 - c003b0e2: 9736 add a4,a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 + c003b2aa: 0002c717 auipc a4,0x2c + c003b2ae: eee70713 addi a4,a4,-274 # c0067198 + c003b2b2: 9736 add a4,a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 { - c003b0e4: f2a2 sd s0,352(sp) - c003b0e6: eaca sd s2,336(sp) - c003b0e8: fe56 sd s5,312(sp) - c003b0ea: f686 sd ra,360(sp) - c003b0ec: e6ce sd s3,328(sp) - c003b0ee: e2d2 sd s4,320(sp) - c003b0f0: fa5a sd s6,304(sp) - c003b0f2: f65e sd s7,296(sp) - c003b0f4: f262 sd s8,288(sp) - c003b0f6: ee66 sd s9,280(sp) - c003b0f8: ea6a sd s10,272(sp) - c003b0fa: e66e sd s11,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54776 + c003b2b4: f2a2 sd s0,352(sp) + c003b2b6: eaca sd s2,336(sp) + c003b2b8: fe56 sd s5,312(sp) + c003b2ba: f686 sd ra,360(sp) + c003b2bc: e6ce sd s3,328(sp) + c003b2be: e2d2 sd s4,320(sp) + c003b2c0: fa5a sd s6,304(sp) + c003b2c2: f65e sd s7,296(sp) + c003b2c4: f262 sd s8,288(sp) + c003b2c6: ee66 sd s9,280(sp) + c003b2c8: ea6a sd s10,272(sp) + c003b2ca: e66e sd s11,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54784 size_log2 = typed_array_size_log2(classid); - c003b0fc: 00074a83 lbu s5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54777 + c003b2cc: 00074a83 lbu s5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54785 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) { - c003b100: 6498 ld a4,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 + c003b2d0: 6498 ld a4,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 { - c003b102: e02e sd a1,0(sp) - c003b104: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54777 + c003b2d2: e02e sd a1,0(sp) + c003b2d4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54785 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) { - c003b106: 0007081b sext.w a6,a4 - c003b10a: 56fd li a3,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54770 + c003b2d6: 0007081b sext.w a6,a4 + c003b2da: 56fd li a3,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 { - c003b10c: 842a mv s0,a0 - c003b10e: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54777 + c003b2dc: 842a mv s0,a0 + c003b2de: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54785 if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) { - c003b110: 08d80d63 beq a6,a3,c003b1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54778 + c003b2e0: 08d80d63 beq a6,a3,c003b37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54786 if (JS_ToIndex(ctx, &len, argv[0])) - c003b114: 6090 ld a2,0(s1) - c003b116: 86ba mv a3,a4 - c003b118: 018c addi a1,sp,192 - c003b11a: 96ce30ef jal ra,c001e286 - c003b11e: c50d beqz a0,c003b148 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54791 + c003b2e4: 6090 ld a2,0(s1) + c003b2e6: 86ba mv a3,a4 + c003b2e8: 018c addi a1,sp,192 + c003b2ea: 96ce30ef jal ra,c001e456 + c003b2ee: c50d beqz a0,c003b318 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54799 return JS_EXCEPTION; - c003b120: 4799 li a5,6 - c003b122: f102 sd zero,160(sp) - c003b124: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54832 (discriminator 4) -} - c003b126: 70b6 ld ra,360(sp) - c003b128: 7416 ld s0,352(sp) - c003b12a: 750a ld a0,160(sp) - c003b12c: 75aa ld a1,168(sp) - c003b12e: 64f6 ld s1,344(sp) - c003b130: 6956 ld s2,336(sp) - c003b132: 69b6 ld s3,328(sp) - c003b134: 6a16 ld s4,320(sp) - c003b136: 7af2 ld s5,312(sp) - c003b138: 7b52 ld s6,304(sp) - c003b13a: 7bb2 ld s7,296(sp) - c003b13c: 7c12 ld s8,288(sp) - c003b13e: 6cf2 ld s9,280(sp) - c003b140: 6d52 ld s10,272(sp) - c003b142: 6db2 ld s11,264(sp) - c003b144: 6175 addi sp,sp,368 - c003b146: 8082 ret + c003b2f0: 4799 li a5,6 + c003b2f2: f102 sd zero,160(sp) + c003b2f4: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54840 (discriminator 4) +} + c003b2f6: 70b6 ld ra,360(sp) + c003b2f8: 7416 ld s0,352(sp) + c003b2fa: 750a ld a0,160(sp) + c003b2fc: 75aa ld a1,168(sp) + c003b2fe: 64f6 ld s1,344(sp) + c003b300: 6956 ld s2,336(sp) + c003b302: 69b6 ld s3,328(sp) + c003b304: 6a16 ld s4,320(sp) + c003b306: 7af2 ld s5,312(sp) + c003b308: 7b52 ld s6,304(sp) + c003b30a: 7bb2 ld s7,296(sp) + c003b30c: 7c12 ld s8,288(sp) + c003b30e: 6cf2 ld s9,280(sp) + c003b310: 6d52 ld s10,272(sp) + c003b312: 6db2 ld s11,264(sp) + c003b314: 6175 addi sp,sp,368 + c003b316: 8082 ret js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b148: 668e ld a3,192(sp) - c003b14a: 478d li a5,3 - c003b14c: 474d li a4,19 - c003b14e: 015696b3 sll a3,a3,s5 - c003b152: 4581 li a1,0 - c003b154: 460d li a2,3 - c003b156: 8522 mv a0,s0 - c003b158: f5be sd a5,232(sp) - c003b15a: fdbe sd a5,248(sp) + c003b318: 668e ld a3,192(sp) + c003b31a: 478d li a5,3 + c003b31c: 474d li a4,19 + c003b31e: 015696b3 sll a3,a3,s5 + c003b322: 4581 li a1,0 + c003b324: 460d li a2,3 + c003b326: 8522 mv a0,s0 + c003b328: f5be sd a5,232(sp) + c003b32a: fdbe sd a5,248(sp) js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54780 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54788 buffer = js_array_buffer_constructor1(ctx, JS_UNDEFINED, - c003b15c: f182 sd zero,224(sp) - c003b15e: f982 sd zero,240(sp) + c003b32c: f182 sd zero,224(sp) + c003b32e: f982 sd zero,240(sp) js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b160: a85db0ef jal ra,c0016be4 - c003b164: f92a sd a0,176(sp) - c003b166: fd2e sd a1,184(sp) - c003b168: e9aa sd a0,208(sp) - c003b16a: edae sd a1,216(sp) + c003b330: a85db0ef jal ra,c0016db4 + c003b334: f92a sd a0,176(sp) + c003b336: fd2e sd a1,184(sp) + c003b338: e9aa sd a0,208(sp) + c003b33a: edae sd a1,216(sp) js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54790 if (JS_IsException(buffer)) - c003b16c: 0005871b sext.w a4,a1 - c003b170: 4799 li a5,6 + c003b33c: 0005871b sext.w a4,a1 + c003b340: 4799 li a5,6 js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b172: 84ae mv s1,a1 + c003b342: 84ae mv s1,a1 js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54782 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54790 if (JS_IsException(buffer)) - c003b174: faf706e3 beq a4,a5,c003b120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54784 + c003b344: faf706e3 beq a4,a5,c003b2f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54792 offset = 0; - c003b178: f982 sd zero,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54822 + c003b348: f982 sd zero,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54830 obj = js_create_from_ctor(ctx, new_target, classid); - c003b17a: 6582 ld a1,0(sp) - c003b17c: 6622 ld a2,8(sp) - c003b17e: 86ca mv a3,s2 - c003b180: 8522 mv a0,s0 - c003b182: 869db0ef jal ra,c00169ea - c003b186: e92a sd a0,144(sp) - c003b188: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54823 + c003b34a: 6582 ld a1,0(sp) + c003b34c: 6622 ld a2,8(sp) + c003b34e: 86ca mv a3,s2 + c003b350: 8522 mv a0,s0 + c003b352: 869db0ef jal ra,c0016bba + c003b356: e92a sd a0,144(sp) + c003b358: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54831 if (JS_IsException(obj)) { - c003b18a: 00058a9b sext.w s5,a1 - c003b18e: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54824 + c003b35a: 00058a9b sext.w s5,a1 + c003b35e: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54832 JS_FreeValue(ctx, buffer); - c003b190: eda6 sd s1,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54822 + c003b360: eda6 sd s1,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54830 obj = js_create_from_ctor(ctx, new_target, classid); - c003b192: 89aa mv s3,a0 - c003b194: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54823 + c003b362: 89aa mv s3,a0 + c003b364: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54831 if (JS_IsException(obj)) { - c003b196: 334a9f63 bne s5,s4,c003b4d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54824 + c003b366: 334a9f63 bne s5,s4,c003b6a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54832 JS_FreeValue(ctx, buffer); - c003b19a: 65ce ld a1,208(sp) - c003b19c: 8626 mv a2,s1 - c003b19e: 8522 mv a0,s0 - c003b1a0: 999cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54825 + c003b36a: 65ce ld a1,208(sp) + c003b36c: 8626 mv a2,s1 + c003b36e: 8522 mv a0,s0 + c003b370: 8b7cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54833 return JS_EXCEPTION; - c003b1a4: f102 sd zero,160(sp) - c003b1a6: f556 sd s5,168(sp) - c003b1a8: bfbd j c003b126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54786 + c003b374: f102 sd zero,160(sp) + c003b376: f556 sd s5,168(sp) + c003b378: bfbd j c003b2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54794 JSObject *p = JS_VALUE_GET_OBJ(argv[0]); - c003b1aa: 6094 ld a3,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54787 + c003b37a: 6094 ld a3,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54795 if (p->class_id == JS_CLASS_ARRAY_BUFFER || - c003b1ac: 4985 li s3,1 - c003b1ae: 0066d803 lhu a6,6(a3) - c003b1b2: fed8089b addiw a7,a6,-19 - c003b1b6: 18c2 slli a7,a7,0x30 - c003b1b8: 0308d893 srli a7,a7,0x30 - c003b1bc: 0b19e463 bltu s3,a7,c003b264 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54789 + c003b37c: 4985 li s3,1 + c003b37e: 0066d803 lhu a6,6(a3) + c003b382: fed8089b addiw a7,a6,-19 + c003b386: 18c2 slli a7,a7,0x30 + c003b388: 0308d893 srli a7,a7,0x30 + c003b38c: 0b19e463 bltu s3,a7,c003b434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54797 abuf = p->u.array_buffer; - c003b1c0: 0306b983 ld s3,48(a3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54790 + c003b390: 0306b983 ld s3,48(a3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54798 if (JS_ToIndex(ctx, &offset, argv[1])) - c003b1c4: 6890 ld a2,16(s1) - c003b1c6: 6c94 ld a3,24(s1) - c003b1c8: 198c addi a1,sp,240 - c003b1ca: 8bce30ef jal ra,c001e286 - c003b1ce: f929 bnez a0,c003b120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54792 + c003b394: 6890 ld a2,16(s1) + c003b396: 6c94 ld a3,24(s1) + c003b398: 198c addi a1,sp,240 + c003b39a: 8bce30ef jal ra,c001e456 + c003b39e: f929 bnez a0,c003b2f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54800 if (abuf->detached) - c003b1d0: 0049c783 lbu a5,4(s3) - c003b1d4: c799 beqz a5,c003b1e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54793 + c003b3a0: 0049c783 lbu a5,4(s3) + c003b3a4: c799 beqz a5,c003b3b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54801 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c003b1d6: 8522 mv a0,s0 - c003b1d8: afbd80ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54808 + c003b3a6: 8522 mv a0,s0 + c003b3a8: a19d80ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54816 return JS_ThrowRangeError(ctx, "invalid length"); - c003b1dc: f12a sd a0,160(sp) - c003b1de: f52e sd a1,168(sp) - c003b1e0: b799 j c003b126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54794 + c003b3ac: f12a sd a0,160(sp) + c003b3ae: f52e sd a1,168(sp) + c003b3b0: b799 j c003b2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54802 if ((offset & ((1 << size_log2) - 1)) != 0 || - c003b1e2: 764e ld a2,240(sp) - c003b1e4: 4705 li a4,1 - c003b1e6: 0157173b sllw a4,a4,s5 - c003b1ea: 377d addiw a4,a4,-1 - c003b1ec: 00c777b3 and a5,a4,a2 - c003b1f0: e789 bnez a5,c003b1fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54795 (discriminator 1) + c003b3b2: 764e ld a2,240(sp) + c003b3b4: 4705 li a4,1 + c003b3b6: 0157173b sllw a4,a4,s5 + c003b3ba: 377d addiw a4,a4,-1 + c003b3bc: 00c777b3 and a5,a4,a2 + c003b3c0: e789 bnez a5,c003b3ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54803 (discriminator 1) offset > abuf->byte_length) - c003b1f2: 0009a783 lw a5,0(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54794 (discriminator 1) + c003b3c2: 0009a783 lw a5,0(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54802 (discriminator 1) if ((offset & ((1 << size_log2) - 1)) != 0 || - c003b1f6: 00c7fa63 bgeu a5,a2,c003b20a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54796 + c003b3c6: 00c7fa63 bgeu a5,a2,c003b3da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54804 return JS_ThrowRangeError(ctx, "invalid offset"); - c003b1fa: 00026597 auipc a1,0x26 - c003b1fe: 81e58593 addi a1,a1,-2018 # c0060a18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54808 + c003b3ca: 00026597 auipc a1,0x26 + c003b3ce: 8ae58593 addi a1,a1,-1874 # c0060c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54816 return JS_ThrowRangeError(ctx, "invalid length"); - c003b202: 8522 mv a0,s0 - c003b204: f56d90ef jal ra,c001495a - c003b208: bfd1 j c003b1dc + c003b3d2: 8522 mv a0,s0 + c003b3d4: e74d90ef jal ra,c0014a48 + c003b3d8: bfd1 j c003b3ac JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003b20a: 7494 ld a3,40(s1) + c003b3da: 7494 ld a3,40(s1) js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54797 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54805 if (JS_IsUndefined(argv[2])) { - c003b20c: 458d li a1,3 - c003b20e: 0006851b sext.w a0,a3 - c003b212: 02b51563 bne a0,a1,c003b23c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54798 + c003b3dc: 458d li a1,3 + c003b3de: 0006851b sext.w a0,a3 + c003b3e2: 02b51563 bne a0,a1,c003b40c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54806 if ((abuf->byte_length & ((1 << size_log2) - 1)) != 0) - c003b216: 8f7d and a4,a4,a5 - c003b218: c711 beqz a4,c003b224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54808 + c003b3e6: 8f7d and a4,a4,a5 + c003b3e8: c711 beqz a4,c003b3f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54816 return JS_ThrowRangeError(ctx, "invalid length"); - c003b21a: 00026597 auipc a1,0x26 - c003b21e: 80e58593 addi a1,a1,-2034 # c0060a28 - c003b222: b7c5 j c003b202 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54800 + c003b3ea: 00026597 auipc a1,0x26 + c003b3ee: 89e58593 addi a1,a1,-1890 # c0060c88 + c003b3f2: b7c5 j c003b3d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54808 len = (abuf->byte_length - offset) >> size_log2; - c003b224: 8f91 sub a5,a5,a2 - c003b226: 0157dab3 srl s5,a5,s5 - c003b22a: e1d6 sd s5,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54811 + c003b3f4: 8f91 sub a5,a5,a2 + c003b3f6: 0157dab3 srl s5,a5,s5 + c003b3fa: e1d6 sd s5,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54819 buffer = JS_DupValue(ctx, argv[0]); - c003b22c: 6088 ld a0,0(s1) - c003b22e: 648c ld a1,8(s1) - c003b230: c3ecb0ef jal ra,c000666e - c003b234: 84ae mv s1,a1 - c003b236: e9aa sd a0,208(sp) - c003b238: edae sd a1,216(sp) - c003b23a: b781 j c003b17a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54802 + c003b3fc: 6088 ld a0,0(s1) + c003b3fe: 648c ld a1,8(s1) + c003b400: b5ccb0ef jal ra,c000675c + c003b404: 84ae mv s1,a1 + c003b406: e9aa sd a0,208(sp) + c003b408: edae sd a1,216(sp) + c003b40a: b781 j c003b34a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54810 if (JS_ToIndex(ctx, &len, argv[2])) - c003b23c: 7090 ld a2,32(s1) - c003b23e: 018c addi a1,sp,192 - c003b240: 8522 mv a0,s0 - c003b242: 844e30ef jal ra,c001e286 - c003b246: ec051de3 bnez a0,c003b120 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54804 + c003b40c: 7090 ld a2,32(s1) + c003b40e: 018c addi a1,sp,192 + c003b410: 8522 mv a0,s0 + c003b412: 844e30ef jal ra,c001e456 + c003b416: ec051de3 bnez a0,c003b2f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54812 if (abuf->detached) - c003b24a: 0049c783 lbu a5,4(s3) - c003b24e: f7c1 bnez a5,c003b1d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54806 + c003b41a: 0049c783 lbu a5,4(s3) + c003b41e: f7c1 bnez a5,c003b3a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54814 if ((offset + (len << size_log2)) > abuf->byte_length) { - c003b250: 678e ld a5,192(sp) - c003b252: 01579ab3 sll s5,a5,s5 - c003b256: 77ce ld a5,240(sp) - c003b258: 9abe add s5,s5,a5 - c003b25a: 0009a783 lw a5,0(s3) - c003b25e: fd57f7e3 bgeu a5,s5,c003b22c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54807 + c003b420: 678e ld a5,192(sp) + c003b422: 01579ab3 sll s5,a5,s5 + c003b426: 77ce ld a5,240(sp) + c003b428: 9abe add s5,s5,a5 + c003b42a: 0009a783 lw a5,0(s3) + c003b42e: fd57f7e3 bgeu a5,s5,c003b3fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54815 invalid_length: - c003b262: bf65 j c003b21a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54813 + c003b432: bf65 j c003b3ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54821 if (p->class_id >= JS_CLASS_UINT8C_ARRAY && - c003b264: 382d addiw a6,a6,-21 - c003b266: 1842 slli a6,a6,0x30 - c003b268: 03085813 srli a6,a6,0x30 - c003b26c: 48a9 li a7,10 - c003b26e: 0308e263 bltu a7,a6,c003b292 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54832 -} - c003b272: 7416 ld s0,352(sp) - c003b274: 70b6 ld ra,360(sp) - c003b276: 64f6 ld s1,344(sp) - c003b278: 6956 ld s2,336(sp) - c003b27a: 69b6 ld s3,328(sp) - c003b27c: 6a16 ld s4,320(sp) - c003b27e: 7af2 ld s5,312(sp) - c003b280: 7b52 ld s6,304(sp) - c003b282: 7bb2 ld s7,296(sp) - c003b284: 7c12 ld s8,288(sp) - c003b286: 6cf2 ld s9,280(sp) - c003b288: 6d52 ld s10,272(sp) - c003b28a: 6db2 ld s11,264(sp) - c003b28c: 6175 addi sp,sp,368 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54815 + c003b434: 382d addiw a6,a6,-21 + c003b436: 1842 slli a6,a6,0x30 + c003b438: 03085813 srli a6,a6,0x30 + c003b43c: 48a9 li a7,10 + c003b43e: 0308e263 bltu a7,a6,c003b462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54840 +} + c003b442: 7416 ld s0,352(sp) + c003b444: 70b6 ld ra,360(sp) + c003b446: 64f6 ld s1,344(sp) + c003b448: 6956 ld s2,336(sp) + c003b44a: 69b6 ld s3,328(sp) + c003b44c: 6a16 ld s4,320(sp) + c003b44e: 7af2 ld s5,312(sp) + c003b450: 7b52 ld s6,304(sp) + c003b452: 7bb2 ld s7,296(sp) + c003b454: 7c12 ld s8,288(sp) + c003b456: 6cf2 ld s9,280(sp) + c003b458: 6d52 ld s10,272(sp) + c003b45a: 6db2 ld s11,264(sp) + c003b45c: 6175 addi sp,sp,368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54823 return js_typed_array_constructor_ta(ctx, new_target, argv[0], classid); - c003b28e: 8b0f606f j c003133e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54817 + c003b45e: 8b0f606f j c003150e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54825 return js_typed_array_constructor_obj(ctx, new_target, argv[0], classid); - c003b292: f836 sd a3,48(sp) + c003b462: f836 sd a3,48(sp) js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54667 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54675 ret = js_create_from_ctor(ctx, new_target, classid); - c003b294: 86be mv a3,a5 - c003b296: fc3a sd a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54661 + c003b464: 86be mv a3,a5 + c003b466: fc3a sd a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54669 JSValue iter, ret, arr = JS_UNDEFINED, val, buffer; - c003b298: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54667 + c003b468: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54675 ret = js_create_from_ctor(ctx, new_target, classid); - c003b29a: f50db0ef jal ra,c00169ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54668 + c003b46a: f50db0ef jal ra,c0016bba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54676 if (JS_IsException(ret)) - c003b29e: 0005879b sext.w a5,a1 - c003b2a2: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54667 + c003b46e: 0005879b sext.w a5,a1 + c003b472: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54675 ret = js_create_from_ctor(ctx, new_target, classid); - c003b2a4: 8baa mv s7,a0 - c003b2a6: 8c2e mv s8,a1 - c003b2a8: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54668 + c003b474: 8baa mv s7,a0 + c003b476: 8c2e mv s8,a1 + c003b478: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54676 if (JS_IsException(ret)) - c003b2aa: 01479563 bne a5,s4,c003b2b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54706 + c003b47a: 01479563 bne a5,s4,c003b484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54714 return JS_EXCEPTION; - c003b2ae: f182 sd zero,224(sp) - c003b2b0: 4c99 li s9,6 - c003b2b2: a2bd j c003b420 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54671 + c003b47e: f182 sd zero,224(sp) + c003b480: 4c99 li s9,6 + c003b482: a2bd j c003b5f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54679 iter = JS_GetProperty(ctx, obj, JS_ATOM_Symbol_iterator); - c003b2b4: 77e2 ld a5,56(sp) - c003b2b6: 7742 ld a4,48(sp) + c003b484: 77e2 ld a5,56(sp) + c003b486: 7742 ld a4,48(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003b2b8: 4801 li a6,0 - c003b2ba: 863e mv a2,a5 - c003b2bc: 0cc00693 li a3,204 - c003b2c0: 85ba mv a1,a4 - c003b2c2: 8522 mv a0,s0 - c003b2c4: fdbe sd a5,248(sp) - c003b2c6: f9ba sd a4,240(sp) - c003b2c8: d7ad60ef jal ra,c0011842 - c003b2cc: e0aa sd a0,64(sp) - c003b2ce: e4ae sd a1,72(sp) + c003b488: 4801 li a6,0 + c003b48a: 863e mv a2,a5 + c003b48c: 0cc00693 li a3,204 + c003b490: 85ba mv a1,a4 + c003b492: 8522 mv a0,s0 + c003b494: fdbe sd a5,248(sp) + c003b496: f9ba sd a4,240(sp) + c003b498: c98d60ef jal ra,c0011930 + c003b49c: e0aa sd a0,64(sp) + c003b49e: e4ae sd a1,72(sp) js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54672 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54680 if (JS_IsException(iter)) - c003b2d0: 0005879b sext.w a5,a1 - c003b2d4: 1f478463 beq a5,s4,c003b4bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54674 + c003b4a0: 0005879b sext.w a5,a1 + c003b4a4: 1f478463 beq a5,s4,c003b68c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54682 if (!JS_IsUndefined(iter) && !JS_IsNull(iter)) { - c003b2d8: ffe5879b addiw a5,a1,-2 - c003b2dc: 18f9fa63 bgeu s3,a5,c003b470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54676 + c003b4a8: ffe5879b addiw a5,a1,-2 + c003b4ac: 18f9fa63 bgeu s3,a5,c003b640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54684 arr = js_array_from_iterator(ctx, &len1, obj, iter); - c003b2e0: 77c2 ld a5,48(sp) - c003b2e2: e92a sd a0,144(sp) + c003b4b0: 77c2 ld a5,48(sp) + c003b4b2: e92a sd a0,144(sp) js_array_from_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54623 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54631 arr = JS_NewArray(ctx); - c003b2e4: 8522 mv a0,s0 - c003b2e6: e13e sd a5,128(sp) - c003b2e8: 77e2 ld a5,56(sp) - c003b2ea: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54618 + c003b4b4: 8522 mv a0,s0 + c003b4b6: e13e sd a5,128(sp) + c003b4b8: 77e2 ld a5,56(sp) + c003b4ba: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54626 JSValue arr, iter, next_method = JS_UNDEFINED, val; - c003b2ec: f182 sd zero,224(sp) - c003b2ee: e53e sd a5,136(sp) - c003b2f0: f582 sd zero,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54623 + c003b4bc: f182 sd zero,224(sp) + c003b4be: e53e sd a5,136(sp) + c003b4c0: f582 sd zero,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54631 arr = JS_NewArray(ctx); - c003b2f2: ccddb0ef jal ra,c0016fbe - c003b2f6: f12a sd a0,160(sp) - c003b2f8: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54624 + c003b4c2: ccddb0ef jal ra,c001718e + c003b4c6: f12a sd a0,160(sp) + c003b4c8: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54632 if (JS_IsException(arr)) - c003b2fa: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54623 + c003b4ca: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54631 arr = JS_NewArray(ctx); - c003b2fe: 89ae mv s3,a1 - c003b300: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54624 + c003b4ce: 89ae mv s3,a1 + c003b4d0: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54632 if (JS_IsException(arr)) - c003b302: 01479563 bne a5,s4,c003b30c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54625 + c003b4d2: 01479563 bne a5,s4,c003b4dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54633 return arr; - c003b306: e9aa sd a0,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54622 + c003b4d6: e9aa sd a0,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54630 *plen = 0; - c003b308: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54653 + c003b4d8: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54661 return JS_EXCEPTION; - c003b30a: a861 j c003b3a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54626 + c003b4da: a861 j c003b572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54634 iter = JS_GetIterator2(ctx, obj, method); - c003b30c: 676a ld a4,152(sp) - c003b30e: 66ca ld a3,144(sp) - c003b310: 658a ld a1,128(sp) - c003b312: 662a ld a2,136(sp) - c003b314: 8522 mv a0,s0 - c003b316: ed6ff0ef jal ra,c003a9ec - c003b31a: f92a sd a0,176(sp) - c003b31c: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54627 + c003b4dc: 676a ld a4,152(sp) + c003b4de: 66ca ld a3,144(sp) + c003b4e0: 658a ld a1,128(sp) + c003b4e2: 662a ld a2,136(sp) + c003b4e4: 8522 mv a0,s0 + c003b4e6: ed6ff0ef jal ra,c003abbc + c003b4ea: f92a sd a0,176(sp) + c003b4ec: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54635 if (JS_IsException(iter)) - c003b31e: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54626 + c003b4ee: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54634 iter = JS_GetIterator2(ctx, obj, method); - c003b322: 872a mv a4,a0 - c003b324: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54627 + c003b4f2: 872a mv a4,a0 + c003b4f4: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54635 if (JS_IsException(iter)) - c003b326: 11478f63 beq a5,s4,c003b444 + c003b4f6: 11478f63 beq a5,s4,c003b614 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003b32a: 87ae mv a5,a1 - c003b32c: f9aa sd a0,240(sp) - c003b32e: fdae sd a1,248(sp) - c003b330: 4801 li a6,0 - c003b332: 85aa mv a1,a0 - c003b334: 06b00693 li a3,107 - c003b338: 864a mv a2,s2 - c003b33a: 8522 mv a0,s0 - c003b33c: d06d60ef jal ra,c0011842 - c003b340: e1aa sd a0,192(sp) - c003b342: e5ae sd a1,200(sp) - c003b344: f1aa sd a0,224(sp) + c003b4fa: 87ae mv a5,a1 + c003b4fc: f9aa sd a0,240(sp) + c003b4fe: fdae sd a1,248(sp) + c003b500: 4801 li a6,0 + c003b502: 85aa mv a1,a0 + c003b504: 06b00693 li a3,107 + c003b508: 864a mv a2,s2 + c003b50a: 8522 mv a0,s0 + c003b50c: c24d60ef jal ra,c0011930 + c003b510: e1aa sd a0,192(sp) + c003b512: e5ae sd a1,200(sp) + c003b514: f1aa sd a0,224(sp) js_array_from_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54638 if (JS_IsException(next_method)) - c003b346: 0005879b sext.w a5,a1 + c003b516: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003b34a: 8b2e mv s6,a1 - c003b34c: 8dae mv s11,a1 + c003b51a: 8b2e mv s6,a1 + c003b51c: 8dae mv s11,a1 js_array_from_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54630 - c003b34e: 0f478c63 beq a5,s4,c003b446 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54632 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54638 + c003b51e: 0f478c63 beq a5,s4,c003b616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54640 k = 0; - c003b352: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54635 + c003b522: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54643 if (JS_IsException(val)) - c003b354: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54634 + c003b524: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54642 val = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003b356: 768e ld a3,224(sp) - c003b358: 75ca ld a1,176(sp) - c003b35a: 087c addi a5,sp,28 - c003b35c: 875a mv a4,s6 - c003b35e: 864a mv a2,s2 - c003b360: 8522 mv a0,s0 - c003b362: f5da sd s6,232(sp) - c003b364: fd4a sd s2,184(sp) - c003b366: dccff0ef jal ra,c003a932 - c003b36a: f9aa sd a0,240(sp) - c003b36c: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54635 + c003b526: 768e ld a3,224(sp) + c003b528: 75ca ld a1,176(sp) + c003b52a: 087c addi a5,sp,28 + c003b52c: 875a mv a4,s6 + c003b52e: 864a mv a2,s2 + c003b530: 8522 mv a0,s0 + c003b532: f5da sd s6,232(sp) + c003b534: fd4a sd s2,184(sp) + c003b536: dccff0ef jal ra,c003ab02 + c003b53a: f9aa sd a0,240(sp) + c003b53c: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54643 if (JS_IsException(val)) - c003b36e: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54634 + c003b53e: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54642 val = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003b372: 872a mv a4,a0 - c003b374: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54635 + c003b542: 872a mv a4,a0 + c003b544: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54643 if (JS_IsException(val)) - c003b376: 0da68863 beq a3,s10,c003b446 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54637 + c003b546: 0da68863 beq a3,s10,c003b616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54645 if (done) { - c003b37a: 46f2 lw a3,28(sp) - c003b37c: c6d5 beqz a3,c003b428 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54638 + c003b54a: 46f2 lw a3,28(sp) + c003b54c: c6d5 beqz a3,c003b5f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54646 JS_FreeValue(ctx, val); - c003b37e: 863e mv a2,a5 - c003b380: 85aa mv a1,a0 - c003b382: 8522 mv a0,s0 - c003b384: fb4cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54645 + c003b54e: 863e mv a2,a5 + c003b550: 85aa mv a1,a0 + c003b552: 8522 mv a0,s0 + c003b554: ed2cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54653 JS_FreeValue(ctx, next_method); - c003b388: 758e ld a1,224(sp) - c003b38a: 762e ld a2,232(sp) - c003b38c: 8522 mv a0,s0 - c003b38e: faacc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54646 + c003b558: 758e ld a1,224(sp) + c003b55a: 762e ld a2,232(sp) + c003b55c: 8522 mv a0,s0 + c003b55e: ec8cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54654 JS_FreeValue(ctx, iter); - c003b392: 75ca ld a1,176(sp) - c003b394: 766a ld a2,184(sp) - c003b396: 8522 mv a0,s0 - c003b398: fa0cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54648 + c003b562: 75ca ld a1,176(sp) + c003b564: 766a ld a2,184(sp) + c003b566: 8522 mv a0,s0 + c003b568: ebecc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54656 return arr; - c003b39c: 778a ld a5,160(sp) - c003b39e: f54e sd s3,168(sp) - c003b3a0: e9be sd a5,208(sp) - c003b3a2: 67ce ld a5,208(sp) + c003b56c: 778a ld a5,160(sp) + c003b56e: f54e sd s3,168(sp) + c003b570: e9be sd a5,208(sp) + c003b572: 67ce ld a5,208(sp) js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54677 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54685 JS_FreeValue(ctx, iter); - c003b3a4: 6586 ld a1,64(sp) - c003b3a6: 6626 ld a2,72(sp) - c003b3a8: 8522 mv a0,s0 - c003b3aa: f0be sd a5,96(sp) - c003b3ac: eda6 sd s1,216(sp) - c003b3ae: f8acc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54678 + c003b574: 6586 ld a1,64(sp) + c003b576: 6626 ld a2,72(sp) + c003b578: 8522 mv a0,s0 + c003b57a: f0be sd a5,96(sp) + c003b57c: eda6 sd s1,216(sp) + c003b57e: ea8cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54686 if (JS_IsException(arr)) - c003b3b2: 0004879b sext.w a5,s1 - c003b3b6: 4719 li a4,6 - c003b3b8: 10e78363 beq a5,a4,c003b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54680 + c003b582: 0004879b sext.w a5,s1 + c003b586: 4719 li a4,6 + c003b588: 10e78363 beq a5,a4,c003b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54688 len = len1; - c003b3bc: 1a02 slli s4,s4,0x20 - c003b3be: 020a5a13 srli s4,s4,0x20 - c003b3c2: e152 sd s4,128(sp) + c003b58c: 1a02 slli s4,s4,0x20 + c003b58e: 020a5a13 srli s4,s4,0x20 + c003b592: e152 sd s4,128(sp) js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b3c4: 668a ld a3,128(sp) - c003b3c6: 478d li a5,3 - c003b3c8: 474d li a4,19 - c003b3ca: 015696b3 sll a3,a3,s5 - c003b3ce: 460d li a2,3 - c003b3d0: 4581 li a1,0 - c003b3d2: 8522 mv a0,s0 - c003b3d4: fd3e sd a5,184(sp) - c003b3d6: f5be sd a5,232(sp) + c003b594: 668a ld a3,128(sp) + c003b596: 478d li a5,3 + c003b598: 474d li a4,19 + c003b59a: 015696b3 sll a3,a3,s5 + c003b59e: 460d li a2,3 + c003b5a0: 4581 li a1,0 + c003b5a2: 8522 mv a0,s0 + c003b5a4: fd3e sd a5,184(sp) + c003b5a6: f5be sd a5,232(sp) js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54687 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54695 buffer = js_array_buffer_constructor1(ctx, JS_UNDEFINED, - c003b3d8: f902 sd zero,176(sp) - c003b3da: f182 sd zero,224(sp) + c003b5a8: f902 sd zero,176(sp) + c003b5aa: f182 sd zero,224(sp) js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b3dc: 809db0ef jal ra,c0016be4 - c003b3e0: f9aa sd a0,240(sp) - c003b3e2: fdae sd a1,248(sp) - c003b3e4: f12a sd a0,160(sp) - c003b3e6: f52e sd a1,168(sp) + c003b5ac: 809db0ef jal ra,c0016db4 + c003b5b0: f9aa sd a0,240(sp) + c003b5b2: fdae sd a1,248(sp) + c003b5b4: f12a sd a0,160(sp) + c003b5b6: f52e sd a1,168(sp) js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54697 if (JS_IsException(buffer)) - c003b3e8: 0005871b sext.w a4,a1 - c003b3ec: 4799 li a5,6 + c003b5b8: 0005871b sext.w a4,a1 + c003b5bc: 4799 li a5,6 js_array_buffer_constructor1(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 return js_array_buffer_constructor2(ctx, new_target, len, - c003b3ee: 862a mv a2,a0 - c003b3f0: 86ae mv a3,a1 + c003b5be: 862a mv a2,a0 + c003b5c0: 86ae mv a3,a1 js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54689 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54697 if (JS_IsException(buffer)) - c003b3f2: 0cf70663 beq a4,a5,c003b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54691 + c003b5c2: 0cf70663 beq a4,a5,c003b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54699 if (typed_array_init(ctx, ret, buffer, 0, len)) - c003b3f6: 678a ld a5,128(sp) - c003b3f8: 4701 li a4,0 - c003b3fa: 85de mv a1,s7 - c003b3fc: 8522 mv a0,s0 - c003b3fe: 859da0ef jal ra,c0015c56 - c003b402: ed55 bnez a0,c003b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54694 + c003b5c6: 678a ld a5,128(sp) + c003b5c8: 4701 li a4,0 + c003b5ca: 85de mv a1,s7 + c003b5cc: 8522 mv a0,s0 + c003b5ce: 859da0ef jal ra,c0015e26 + c003b5d2: ed55 bnez a0,c003b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54702 for(i = 0; i < len; i++) { - c003b404: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54696 + c003b5d4: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54704 if (JS_IsException(val)) - c003b406: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54694 + c003b5d6: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54702 for(i = 0; i < len; i++) { - c003b408: 670a ld a4,128(sp) - c003b40a: 02091793 slli a5,s2,0x20 - c003b40e: 9381 srli a5,a5,0x20 - c003b410: 06e7ce63 blt a5,a4,c003b48c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54701 + c003b5d8: 670a ld a4,128(sp) + c003b5da: 02091793 slli a5,s2,0x20 + c003b5de: 9381 srli a5,a5,0x20 + c003b5e0: 06e7ce63 blt a5,a4,c003b65c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54709 JS_FreeValue(ctx, arr); - c003b414: 7586 ld a1,96(sp) - c003b416: 8626 mv a2,s1 - c003b418: 8522 mv a0,s0 - c003b41a: f1ecc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54702 + c003b5e4: 7586 ld a1,96(sp) + c003b5e6: 8626 mv a2,s1 + c003b5e8: 8522 mv a0,s0 + c003b5ea: e3ccc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54710 return ret; - c003b41e: f1de sd s7,224(sp) - c003b420: 778e ld a5,224(sp) - c003b422: f566 sd s9,168(sp) - c003b424: f13e sd a5,160(sp) + c003b5ee: f1de sd s7,224(sp) + c003b5f0: 778e ld a5,224(sp) + c003b5f2: f566 sd s9,168(sp) + c003b5f4: f13e sd a5,160(sp) js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54817 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54825 return js_typed_array_constructor_obj(ctx, new_target, argv[0], classid); - c003b426: b301 j c003b126 + c003b5f6: b301 j c003b2f6 js_array_from_iterator(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54641 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54649 if (JS_CreateDataPropertyUint32(ctx, arr, k, val, JS_PROP_THROW) < 0) - c003b428: 758a ld a1,160(sp) - c003b42a: 020a1693 slli a3,s4,0x20 - c003b42e: 6811 lui a6,0x4 - c003b430: 9281 srli a3,a3,0x20 - c003b432: 864e mv a2,s3 - c003b434: 8522 mv a0,s0 - c003b436: f54e sd s3,168(sp) - c003b438: 8aeee0ef jal ra,c00294e6 - c003b43c: 00054563 bltz a0,c003b446 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54643 + c003b5f8: 758a ld a1,160(sp) + c003b5fa: 020a1693 slli a3,s4,0x20 + c003b5fe: 6811 lui a6,0x4 + c003b600: 9281 srli a3,a3,0x20 + c003b602: 864e mv a2,s3 + c003b604: 8522 mv a0,s0 + c003b606: f54e sd s3,168(sp) + c003b608: 8aeee0ef jal ra,c00296b6 + c003b60c: 00054563 bltz a0,c003b616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54651 k++; - c003b440: 2a05 addiw s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54634 + c003b610: 2a05 addiw s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54642 val = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003b442: bf11 j c003b356 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54618 + c003b612: bf11 j c003b526 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54626 JSValue arr, iter, next_method = JS_UNDEFINED, val; - c003b444: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54650 + c003b614: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54658 JS_FreeValue(ctx, next_method); - c003b446: 758e ld a1,224(sp) - c003b448: 866e mv a2,s11 - c003b44a: 8522 mv a0,s0 - c003b44c: f5ee sd s11,232(sp) - c003b44e: eeacc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54651 + c003b616: 758e ld a1,224(sp) + c003b618: 866e mv a2,s11 + c003b61a: 8522 mv a0,s0 + c003b61c: f5ee sd s11,232(sp) + c003b61e: e08cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54659 JS_FreeValue(ctx, iter); - c003b452: 75ca ld a1,176(sp) - c003b454: 864a mv a2,s2 - c003b456: 8522 mv a0,s0 - c003b458: fd4a sd s2,184(sp) - c003b45a: edecc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54652 + c003b622: 75ca ld a1,176(sp) + c003b624: 864a mv a2,s2 + c003b626: 8522 mv a0,s0 + c003b628: fd4a sd s2,184(sp) + c003b62a: dfccc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54660 JS_FreeValue(ctx, arr); - c003b45e: 758a ld a1,160(sp) - c003b460: 864e mv a2,s3 - c003b462: 8522 mv a0,s0 - c003b464: f54e sd s3,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54653 + c003b62e: 758a ld a1,160(sp) + c003b630: 864e mv a2,s3 + c003b632: 8522 mv a0,s0 + c003b634: f54e sd s3,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54661 return JS_EXCEPTION; - c003b466: 4499 li s1,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54652 + c003b636: 4499 li s1,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54660 JS_FreeValue(ctx, arr); - c003b468: ed0cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54653 + c003b638: deecc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54661 return JS_EXCEPTION; - c003b46c: e982 sd zero,208(sp) - c003b46e: bd69 j c003b308 + c003b63c: e982 sd zero,208(sp) + c003b63e: bd69 j c003b4d8 js_typed_array_constructor_obj(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54682 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54690 if (js_get_length64(ctx, &len, obj)) - c003b470: 7642 ld a2,48(sp) - c003b472: 76e2 ld a3,56(sp) - c003b474: 010c addi a1,sp,128 - c003b476: 8522 mv a0,s0 - c003b478: bc6e30ef jal ra,c001e83e - c003b47c: e121 bnez a0,c003b4bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54684 + c003b640: 7642 ld a2,48(sp) + c003b642: 76e2 ld a3,56(sp) + c003b644: 010c addi a1,sp,128 + c003b646: 8522 mv a0,s0 + c003b648: bc6e30ef jal ra,c001ea0e + c003b64c: e121 bnez a0,c003b68c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54692 arr = JS_DupValue(ctx, obj); - c003b47e: 7542 ld a0,48(sp) - c003b480: 75e2 ld a1,56(sp) - c003b482: 9eccb0ef jal ra,c000666e - c003b486: f0aa sd a0,96(sp) - c003b488: 84ae mv s1,a1 - c003b48a: bf2d j c003b3c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54695 + c003b64e: 7542 ld a0,48(sp) + c003b650: 75e2 ld a1,56(sp) + c003b652: 90acb0ef jal ra,c000675c + c003b656: f0aa sd a0,96(sp) + c003b658: 84ae mv s1,a1 + c003b65a: bf2d j c003b594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54703 val = JS_GetPropertyUint32(ctx, arr, i); - c003b48c: 7586 ld a1,96(sp) - c003b48e: 86ca mv a3,s2 - c003b490: 8626 mv a2,s1 - c003b492: 8522 mv a0,s0 - c003b494: a39d60ef jal ra,c0011ecc - c003b498: e92a sd a0,144(sp) - c003b49a: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54696 + c003b65c: 7586 ld a1,96(sp) + c003b65e: 86ca mv a3,s2 + c003b660: 8626 mv a2,s1 + c003b662: 8522 mv a0,s0 + c003b664: 957d60ef jal ra,c0011fba + c003b668: e92a sd a0,144(sp) + c003b66a: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54704 if (JS_IsException(val)) - c003b49c: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54695 + c003b66c: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54703 val = JS_GetPropertyUint32(ctx, arr, i); - c003b4a0: 872a mv a4,a0 - c003b4a2: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54696 + c003b670: 872a mv a4,a0 + c003b672: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54704 if (JS_IsException(val)) - c003b4a4: 01368d63 beq a3,s3,c003b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54698 + c003b674: 01368d63 beq a3,s3,c003b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54706 if (JS_SetPropertyUint32(ctx, ret, i, val) < 0) - c003b4a8: 86ca mv a3,s2 - c003b4aa: 85de mv a1,s7 - c003b4ac: 8662 mv a2,s8 - c003b4ae: 8522 mv a0,s0 - c003b4b0: bf0d70ef jal ra,c00128a0 - c003b4b4: 00054563 bltz a0,c003b4be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54694 + c003b678: 86ca mv a3,s2 + c003b67a: 85de mv a1,s7 + c003b67c: 8662 mv a2,s8 + c003b67e: 8522 mv a0,s0 + c003b680: b0ed70ef jal ra,c001298e + c003b684: 00054563 bltz a0,c003b68e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54702 for(i = 0; i < len; i++) { - c003b4b8: 2905 addiw s2,s2,1 - c003b4ba: b7b9 j c003b408 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54661 + c003b688: 2905 addiw s2,s2,1 + c003b68a: b7b9 j c003b5d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54669 JSValue iter, ret, arr = JS_UNDEFINED, val, buffer; - c003b4bc: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54704 + c003b68c: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54712 JS_FreeValue(ctx, arr); - c003b4be: 7586 ld a1,96(sp) - c003b4c0: 8626 mv a2,s1 - c003b4c2: 8522 mv a0,s0 - c003b4c4: e74cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54705 + c003b68e: 7586 ld a1,96(sp) + c003b690: 8626 mv a2,s1 + c003b692: 8522 mv a0,s0 + c003b694: d92cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54713 JS_FreeValue(ctx, ret); - c003b4c8: 85de mv a1,s7 - c003b4ca: 8662 mv a2,s8 - c003b4cc: 8522 mv a0,s0 - c003b4ce: e6acc0ef jal ra,c0007b38 - c003b4d2: bbf1 j c003b2ae + c003b698: 85de mv a1,s7 + c003b69a: 8662 mv a2,s8 + c003b69c: 8522 mv a0,s0 + c003b69e: d88cc0ef jal ra,c0007c26 + c003b6a2: bbf1 j c003b47e js_typed_array_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54827 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54835 if (typed_array_init(ctx, obj, buffer, offset, len)) { - c003b4d4: 678e ld a5,192(sp) - c003b4d6: 774e ld a4,240(sp) - c003b4d8: 664e ld a2,208(sp) - c003b4da: 85aa mv a1,a0 - c003b4dc: 86a6 mv a3,s1 - c003b4de: 8522 mv a0,s0 - c003b4e0: f76da0ef jal ra,c0015c56 - c003b4e4: c909 beqz a0,c003b4f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54828 + c003b6a4: 678e ld a5,192(sp) + c003b6a6: 774e ld a4,240(sp) + c003b6a8: 664e ld a2,208(sp) + c003b6aa: 85aa mv a1,a0 + c003b6ac: 86a6 mv a3,s1 + c003b6ae: 8522 mv a0,s0 + c003b6b0: f76da0ef jal ra,c0015e26 + c003b6b4: c909 beqz a0,c003b6c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54836 JS_FreeValue(ctx, obj); - c003b4e6: 65ca ld a1,144(sp) - c003b4e8: 666a ld a2,152(sp) - c003b4ea: 8522 mv a0,s0 - c003b4ec: e4ccc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54829 + c003b6b6: 65ca ld a1,144(sp) + c003b6b8: 666a ld a2,152(sp) + c003b6ba: 8522 mv a0,s0 + c003b6bc: d6acc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54837 return JS_EXCEPTION; - c003b4f0: f102 sd zero,160(sp) - c003b4f2: f552 sd s4,168(sp) - c003b4f4: b90d j c003b126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54831 + c003b6c0: f102 sd zero,160(sp) + c003b6c2: f552 sd s4,168(sp) + c003b6c4: b90d j c003b2f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54839 return obj; - c003b4f6: f14e sd s3,160(sp) - c003b4f8: f54a sd s2,168(sp) - c003b4fa: b135 j c003b126 + c003b6c6: f14e sd s3,160(sp) + c003b6c8: f54a sd s2,168(sp) + c003b6ca: b135 j c003b2f6 -00000000c003b4fc : +00000000c003b6cc : js_typed_array___speciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53403 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53411 static JSValue js_typed_array___speciesCreate(JSContext *ctx, - c003b4fc: 7119 addi sp,sp,-128 - c003b4fe: f8a2 sd s0,112(sp) - c003b500: f4a6 sd s1,104(sp) - c003b502: f0ca sd s2,96(sp) - c003b504: fc86 sd ra,120(sp) - c003b506: ecce sd s3,88(sp) - c003b508: e8d2 sd s4,80(sp) - c003b50a: 892e mv s2,a1 - c003b50c: 8432 mv s0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53412 + c003b6cc: 7119 addi sp,sp,-128 + c003b6ce: f8a2 sd s0,112(sp) + c003b6d0: f4a6 sd s1,104(sp) + c003b6d2: f0ca sd s2,96(sp) + c003b6d4: fc86 sd ra,120(sp) + c003b6d6: ecce sd s3,88(sp) + c003b6d8: e8d2 sd s4,80(sp) + c003b6da: 892e mv s2,a1 + c003b6dc: 8432 mv s0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53420 obj = argv[0]; - c003b50e: 620c ld a1,0(a2) - c003b510: 6610 ld a2,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53413 + c003b6de: 620c ld a1,0(a2) + c003b6e0: 6610 ld a2,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 p = get_typed_array(ctx, obj, 0); - c003b512: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53403 + c003b6e2: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53411 static JSValue js_typed_array___speciesCreate(JSContext *ctx, - c003b514: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53412 + c003b6e4: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53420 obj = argv[0]; - c003b516: e02e sd a1,0(sp) - c003b518: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53413 + c003b6e6: e02e sd a1,0(sp) + c003b6e8: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 p = get_typed_array(ctx, obj, 0); - c003b51a: a9fd80ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53414 + c003b6ea: 9bdd80ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53422 if (!p) - c003b51e: e509 bnez a0,c003b528 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53415 + c003b6ee: e509 bnez a0,c003b6f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53423 return JS_EXCEPTION; - c003b520: e082 sd zero,64(sp) - c003b522: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53427 + c003b6f0: e082 sd zero,64(sp) + c003b6f2: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53435 return ret; - c003b524: e4be sd a5,72(sp) - c003b526: a035 j c003b552 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53416 + c003b6f4: e4be sd a5,72(sp) + c003b6f6: a035 j c003b722 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53424 ctor = JS_SpeciesConstructor(ctx, obj, JS_UNDEFINED); - c003b528: 6622 ld a2,8(sp) - c003b52a: 6582 ld a1,0(sp) - c003b52c: 470d li a4,3 - c003b52e: 89aa mv s3,a0 - c003b530: 4a0d li s4,3 - c003b532: 4681 li a3,0 - c003b534: 8526 mv a0,s1 - c003b536: f802 sd zero,48(sp) - c003b538: fc52 sd s4,56(sp) - c003b53a: e80d80ef jal ra,c0013bba - c003b53e: e82a sd a0,16(sp) - c003b540: ec2e sd a1,24(sp) + c003b6f8: 6622 ld a2,8(sp) + c003b6fa: 6582 ld a1,0(sp) + c003b6fc: 470d li a4,3 + c003b6fe: 89aa mv s3,a0 + c003b700: 4a0d li s4,3 + c003b702: 4681 li a3,0 + c003b704: 8526 mv a0,s1 + c003b706: f802 sd zero,48(sp) + c003b708: fc52 sd s4,56(sp) + c003b70a: d9ed80ef jal ra,c0013ca8 + c003b70e: e82a sd a0,16(sp) + c003b710: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003b542: 0005879b sext.w a5,a1 + c003b712: 0005879b sext.w a5,a1 js_typed_array___speciesCreate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53425 if (JS_IsException(ctor)) - c003b546: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53416 + c003b716: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53424 ctor = JS_SpeciesConstructor(ctx, obj, JS_UNDEFINED); - c003b548: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53417 + c003b718: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53425 if (JS_IsException(ctor)) - c003b54a: 00e79e63 bne a5,a4,c003b566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53418 + c003b71a: 00e79e63 bne a5,a4,c003b736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53426 return ctor; - c003b54e: e0aa sd a0,64(sp) - c003b550: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 -} - c003b552: 70e6 ld ra,120(sp) - c003b554: 7446 ld s0,112(sp) - c003b556: 6506 ld a0,64(sp) - c003b558: 65a6 ld a1,72(sp) - c003b55a: 74a6 ld s1,104(sp) - c003b55c: 7906 ld s2,96(sp) - c003b55e: 69e6 ld s3,88(sp) - c003b560: 6a46 ld s4,80(sp) - c003b562: 6109 addi sp,sp,128 - c003b564: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53419 + c003b71e: e0aa sd a0,64(sp) + c003b720: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 +} + c003b722: 70e6 ld ra,120(sp) + c003b724: 7446 ld s0,112(sp) + c003b726: 6506 ld a0,64(sp) + c003b728: 65a6 ld a1,72(sp) + c003b72a: 74a6 ld s1,104(sp) + c003b72c: 7906 ld s2,96(sp) + c003b72e: 69e6 ld s3,88(sp) + c003b730: 6a46 ld s4,80(sp) + c003b732: 6109 addi sp,sp,128 + c003b734: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53427 argc1 = max_int(argc - 1, 0); - c003b566: fff9069b addiw a3,s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b736: fff9069b addiw a3,s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b56a: 01040713 addi a4,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53420 - if (JS_IsUndefined(ctor)) { - c003b56e: 03479263 bne a5,s4,c003b592 + c003b73a: 01040713 addi a4,s0,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 + if (JS_IsUndefined(ctor)) { + c003b73e: 03479263 bne a5,s4,c003b762 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 } - c003b572: 7446 ld s0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b742: 7446 ld s0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b574: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 + c003b744: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 } - c003b576: 70e6 ld ra,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b746: 70e6 ld ra,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b578: 0069d783 lhu a5,6(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 + c003b748: 0069d783 lhu a5,6(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 } - c003b57c: 7906 ld s2,96(sp) - c003b57e: 69e6 ld s3,88(sp) - c003b580: 6a46 ld s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b74c: 7906 ld s2,96(sp) + c003b74e: 69e6 ld s3,88(sp) + c003b750: 6a46 ld s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b582: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 + c003b752: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 } - c003b584: 74a6 ld s1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b754: 74a6 ld s1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b586: e082 sd zero,64(sp) - c003b588: 4581 li a1,0 - c003b58a: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53428 + c003b756: e082 sd zero,64(sp) + c003b758: 4581 li a1,0 + c003b75a: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53436 } - c003b58c: 6109 addi sp,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53421 + c003b75c: 6109 addi sp,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53429 ret = js_typed_array_constructor(ctx, JS_UNDEFINED, argc1, argv + 1, - c003b58e: b43ff06f j c003b0d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53424 + c003b75e: b43ff06f j c003b2a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 ret = js_typed_array_create(ctx, ctor, argc1, argv + 1); - c003b592: 85aa mv a1,a0 - c003b594: 8526 mv a0,s1 - c003b596: f23fc0ef jal ra,c00384b8 - c003b59a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53425 + c003b762: 85aa mv a1,a0 + c003b764: 8526 mv a0,s1 + c003b766: f23fc0ef jal ra,c0038688 + c003b76a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53433 JS_FreeValue(ctx, ctor); - c003b59c: 6662 ld a2,24(sp) - c003b59e: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53424 + c003b76c: 6662 ld a2,24(sp) + c003b76e: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 ret = js_typed_array_create(ctx, ctor, argc1, argv + 1); - c003b5a0: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53425 + c003b770: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53433 JS_FreeValue(ctx, ctor); - c003b5a2: 8526 mv a0,s1 - c003b5a4: d94cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53427 + c003b772: 8526 mv a0,s1 + c003b774: cb2cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53435 return ret; - c003b5a8: 7782 ld a5,32(sp) - c003b5aa: e0be sd a5,64(sp) - c003b5ac: 77a2 ld a5,40(sp) - c003b5ae: bf9d j c003b524 + c003b778: 7782 ld a5,32(sp) + c003b77a: e0be sd a5,64(sp) + c003b77c: 77a2 ld a5,40(sp) + c003b77e: bf9d j c003b6f4 -00000000c003b5b0 : +00000000c003b780 : js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54110 -{ - c003b5b0: 712d addi sp,sp,-288 - c003b5b2: ea22 sd s0,272(sp) - c003b5b4: e626 sd s1,264(sp) - c003b5b6: ee06 sd ra,280(sp) - c003b5b8: e24a sd s2,256(sp) - c003b5ba: fdce sd s3,248(sp) - c003b5bc: f9d2 sd s4,240(sp) - c003b5be: f5d6 sd s5,232(sp) - c003b5c0: f1da sd s6,224(sp) - c003b5c2: edde sd s7,216(sp) - c003b5c4: 842a mv s0,a0 - c003b5c6: e82e sd a1,16(sp) - c003b5c8: ec32 sd a2,24(sp) - c003b5ca: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54116 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54118 +{ + c003b780: 712d addi sp,sp,-288 + c003b782: ea22 sd s0,272(sp) + c003b784: e626 sd s1,264(sp) + c003b786: ee06 sd ra,280(sp) + c003b788: e24a sd s2,256(sp) + c003b78a: fdce sd s3,248(sp) + c003b78c: f9d2 sd s4,240(sp) + c003b78e: f5d6 sd s5,232(sp) + c003b790: f1da sd s6,224(sp) + c003b792: edde sd s7,216(sp) + c003b794: 842a mv s0,a0 + c003b796: e82e sd a1,16(sp) + c003b798: ec32 sd a2,24(sp) + c003b79a: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54124 arr = JS_UNDEFINED; - c003b5cc: f802 sd zero,48(sp) - c003b5ce: fc02 sd zero,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54117 + c003b79c: f802 sd zero,48(sp) + c003b79e: fc02 sd zero,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54125 len = js_typed_array_get_length_internal(ctx, this_val); - c003b5d0: a47d80ef jal ra,c0014016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54118 + c003b7a0: 965d80ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54126 if (len < 0) - c003b5d4: 02054f63 bltz a0,c003b612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54121 + c003b7a4: 02054f63 bltz a0,c003b7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54129 if (JS_ToInt32Clamp(ctx, &start, argv[0], 0, len, len)) - c003b5d8: 6090 ld a2,0(s1) - c003b5da: 6494 ld a3,8(s1) - c003b5dc: 882a mv a6,a0 - c003b5de: 87aa mv a5,a0 - c003b5e0: e42a sd a0,8(sp) - c003b5e2: 4701 li a4,0 - c003b5e4: 102c addi a1,sp,40 - c003b5e6: 8522 mv a0,s0 - c003b5e8: ce4e20ef jal ra,c001dacc - c003b5ec: e11d bnez a0,c003b612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54123 + c003b7a8: 6090 ld a2,0(s1) + c003b7aa: 6494 ld a3,8(s1) + c003b7ac: 882a mv a6,a0 + c003b7ae: 87aa mv a5,a0 + c003b7b0: e42a sd a0,8(sp) + c003b7b2: 4701 li a4,0 + c003b7b4: 102c addi a1,sp,40 + c003b7b6: 8522 mv a0,s0 + c003b7b8: ce4e20ef jal ra,c001dc9c + c003b7bc: e11d bnez a0,c003b7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54131 final = len; - c003b5ee: 6822 ld a6,8(sp) + c003b7be: 6822 ld a6,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003b5f0: 6c94 ld a3,24(s1) + c003b7c0: 6c94 ld a3,24(s1) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54124 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54132 if (!JS_IsUndefined(argv[1])) { - c003b5f2: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54123 + c003b7c2: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54131 final = len; - c003b5f4: d642 sw a6,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54124 + c003b7c4: d642 sw a6,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54132 if (!JS_IsUndefined(argv[1])) { - c003b5f6: 0006871b sext.w a4,a3 - c003b5fa: 02f71663 bne a4,a5,c003b626 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54130 + c003b7c6: 0006871b sext.w a4,a3 + c003b7ca: 02f71663 bne a4,a5,c003b7f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54138 p = get_typed_array(ctx, this_val, 0); - c003b5fe: 65c2 ld a1,16(sp) - c003b600: 6662 ld a2,24(sp) - c003b602: 4681 li a3,0 - c003b604: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54128 + c003b7ce: 65c2 ld a1,16(sp) + c003b7d0: 6662 ld a2,24(sp) + c003b7d2: 4681 li a3,0 + c003b7d4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54136 count = max_int(final - start, 0); - c003b606: 54b2 lw s1,44(sp) - c003b608: 5922 lw s2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54130 + c003b7d6: 54b2 lw s1,44(sp) + c003b7d8: 5922 lw s2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54138 p = get_typed_array(ctx, this_val, 0); - c003b60a: 9afd80ef jal ra,c0013fb8 - c003b60e: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54131 + c003b7da: 8cdd80ef jal ra,c00140a6 + c003b7de: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54139 if (p == NULL) - c003b610: e505 bnez a0,c003b638 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54116 + c003b7e0: e505 bnez a0,c003b808 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54124 arr = JS_UNDEFINED; - c003b612: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54167 + c003b7e2: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54175 JS_FreeValue(ctx, arr); - c003b614: 75c2 ld a1,48(sp) - c003b616: 865e mv a2,s7 - c003b618: 8522 mv a0,s0 - c003b61a: d1ecc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54168 + c003b7e4: 75c2 ld a1,48(sp) + c003b7e6: 865e mv a2,s7 + c003b7e8: 8522 mv a0,s0 + c003b7ea: c3ccc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54176 return JS_EXCEPTION; - c003b61e: 4799 li a5,6 - c003b620: f882 sd zero,112(sp) - c003b622: fcbe sd a5,120(sp) - c003b624: a0fd j c003b712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54125 + c003b7ee: 4799 li a5,6 + c003b7f0: f882 sd zero,112(sp) + c003b7f2: fcbe sd a5,120(sp) + c003b7f4: a0fd j c003b8e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54133 if (JS_ToInt32Clamp(ctx, &final, argv[1], 0, len, len)) - c003b626: 6890 ld a2,16(s1) - c003b628: 87c2 mv a5,a6 - c003b62a: 4701 li a4,0 - c003b62c: 106c addi a1,sp,44 - c003b62e: 8522 mv a0,s0 - c003b630: c9ce20ef jal ra,c001dacc - c003b634: d569 beqz a0,c003b5fe - c003b636: bff1 j c003b612 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54128 + c003b7f6: 6890 ld a2,16(s1) + c003b7f8: 87c2 mv a5,a6 + c003b7fa: 4701 li a4,0 + c003b7fc: 106c addi a1,sp,44 + c003b7fe: 8522 mv a0,s0 + c003b800: c9ce20ef jal ra,c001dc9c + c003b804: d569 beqz a0,c003b7ce + c003b806: bff1 j c003b7e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54136 count = max_int(final - start, 0); - c003b638: 412484bb subw s1,s1,s2 - c003b63c: 87a6 mv a5,s1 - c003b63e: 0004d363 bgez s1,c003b644 - c003b642: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54133 + c003b808: 412484bb subw s1,s1,s2 + c003b80c: 87a6 mv a5,s1 + c003b80e: 0004d363 bgez s1,c003b814 + c003b812: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54141 shift = typed_array_size_log2(p->class_id); - c003b644: 0069d703 lhu a4,6(s3) - c003b648: 0002ca17 auipc s4,0x2c - c003b64c: 8f0a0a13 addi s4,s4,-1808 # c0066f38 + c003b814: 0069d703 lhu a4,6(s3) + c003b818: 0002ca17 auipc s4,0x2c + c003b81c: 980a0a13 addi s4,s4,-1664 # c0067198 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003b650: e102 sd zero,128(sp) + c003b820: e102 sd zero,128(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54133 - c003b652: 372d addiw a4,a4,-21 - c003b654: 9752 add a4,a4,s4 - c003b656: 00074b03 lbu s6,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54135 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54141 + c003b822: 372d addiw a4,a4,-21 + c003b824: 9752 add a4,a4,s4 + c003b826: 00074b03 lbu s6,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54143 args[0] = this_val; - c003b65a: 6742 ld a4,16(sp) - c003b65c: c13e sw a5,128(sp) - c003b65e: 00078a9b sext.w s5,a5 - c003b662: f93a sd a4,176(sp) - c003b664: 678a ld a5,128(sp) - c003b666: 6762 ld a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54137 + c003b82a: 6742 ld a4,16(sp) + c003b82c: c13e sw a5,128(sp) + c003b82e: 00078a9b sext.w s5,a5 + c003b832: f93a sd a4,176(sp) + c003b834: 678a ld a5,128(sp) + c003b836: 6762 ld a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54145 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003b668: 1910 addi a2,sp,176 - c003b66a: 4589 li a1,2 - c003b66c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54135 + c003b838: 1910 addi a2,sp,176 + c003b83a: 4589 li a1,2 + c003b83c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54143 args[0] = this_val; - c003b66e: fd3a sd a4,184(sp) + c003b83e: fd3a sd a4,184(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b670: f13e sd a5,160(sp) + c003b840: f13e sd a5,160(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54144 args[1] = JS_NewInt32(ctx, count); - c003b672: e1be sd a5,192(sp) + c003b842: e1be sd a5,192(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b674: e502 sd zero,136(sp) - c003b676: f502 sd zero,168(sp) + c003b844: e502 sd zero,136(sp) + c003b846: f502 sd zero,168(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54136 - c003b678: e582 sd zero,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54137 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54144 + c003b848: e582 sd zero,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54145 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003b67a: e83ff0ef jal ra,c003b4fc - c003b67e: f82a sd a0,48(sp) - c003b680: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54138 + c003b84a: e83ff0ef jal ra,c003b6cc + c003b84e: f82a sd a0,48(sp) + c003b850: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54146 if (JS_IsException(arr)) - c003b682: 0005871b sext.w a4,a1 - c003b686: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54137 + c003b852: 0005871b sext.w a4,a1 + c003b856: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54145 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003b688: 892e mv s2,a1 - c003b68a: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54138 + c003b858: 892e mv s2,a1 + c003b85a: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54146 if (JS_IsException(arr)) - c003b68c: f8f704e3 beq a4,a5,c003b614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54141 + c003b85c: f8f704e3 beq a4,a5,c003b7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54149 if (count > 0) { - c003b690: 06905e63 blez s1,c003b70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54142 + c003b860: 06905e63 blez s1,c003b8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54150 if (validate_typed_array(ctx, this_val) - c003b694: 65c2 ld a1,16(sp) - c003b696: 6662 ld a2,24(sp) - c003b698: 8522 mv a0,s0 - c003b69a: b5fd80ef jal ra,c00141f8 - c003b69e: f93d bnez a0,c003b614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54143 + c003b864: 65c2 ld a1,16(sp) + c003b866: 6662 ld a2,24(sp) + c003b868: 8522 mv a0,s0 + c003b86a: a7dd80ef jal ra,c00142e6 + c003b86e: f93d bnez a0,c003b7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54151 || validate_typed_array(ctx, arr)) - c003b6a0: 75c2 ld a1,48(sp) - c003b6a2: 7662 ld a2,56(sp) - c003b6a4: 8522 mv a0,s0 - c003b6a6: b53d80ef jal ra,c00141f8 - c003b6aa: 84aa mv s1,a0 - c003b6ac: f525 bnez a0,c003b614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54146 + c003b870: 75c2 ld a1,48(sp) + c003b872: 7662 ld a2,56(sp) + c003b874: 8522 mv a0,s0 + c003b876: a71d80ef jal ra,c00142e6 + c003b87a: 84aa mv s1,a0 + c003b87c: f525 bnez a0,c003b7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54154 p1 = get_typed_array(ctx, arr, 0); - c003b6ae: 75c2 ld a1,48(sp) - c003b6b0: 7662 ld a2,56(sp) - c003b6b2: 4681 li a3,0 - c003b6b4: 8522 mv a0,s0 - c003b6b6: 903d80ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54147 + c003b87e: 75c2 ld a1,48(sp) + c003b880: 7662 ld a2,56(sp) + c003b882: 4681 li a3,0 + c003b884: 8522 mv a0,s0 + c003b886: 821d80ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 if (p1 != NULL && p->class_id == p1->class_id && - c003b6ba: c95d beqz a0,c003b770 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54147 (discriminator 1) - c003b6bc: 0069d703 lhu a4,6(s3) - c003b6c0: 00655783 lhu a5,6(a0) - c003b6c4: 0af71663 bne a4,a5,c003b770 + c003b88a: c95d beqz a0,c003b940 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 (discriminator 1) + c003b88c: 0069d703 lhu a4,6(s3) + c003b890: 00655783 lhu a5,6(a0) + c003b894: 0af71663 bne a4,a5,c003b940 typed_array_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53054 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53062 return ta->length >> size_log2; - c003b6c8: 7910 ld a2,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 + c003b898: 7910 ld a2,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53061 int size_log2 = typed_array_size_log2(p->class_id); - c003b6ca: 37ad addiw a5,a5,-21 - c003b6cc: 97d2 add a5,a5,s4 - c003b6ce: 0007c683 lbu a3,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53054 + c003b89a: 37ad addiw a5,a5,-21 + c003b89c: 97d2 add a5,a5,s4 + c003b89e: 0007c683 lbu a3,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53062 return ta->length >> size_log2; - c003b6d2: 525c lw a5,36(a2) + c003b8a2: 525c lw a5,36(a2) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54147 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 if (p1 != NULL && p->class_id == p1->class_id && - c003b6d4: 00d7d7bb srlw a5,a5,a3 - c003b6d8: 0957ec63 bltu a5,s5,c003b770 + c003b8a4: 00d7d7bb srlw a5,a5,a3 + c003b8a8: 0957ec63 bltu a5,s5,c003b940 typed_array_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53054 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53062 return ta->length >> size_log2; - c003b6dc: 0309b783 ld a5,48(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 + c003b8ac: 0309b783 ld a5,48(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53061 int size_log2 = typed_array_size_log2(p->class_id); - c003b6e0: 372d addiw a4,a4,-21 - c003b6e2: 9a3a add s4,s4,a4 + c003b8b0: 372d addiw a4,a4,-21 + c003b8b2: 9a3a add s4,s4,a4 js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54149 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54157 typed_array_get_length(ctx, p) >= start + count) { - c003b6e4: 55a2 lw a1,40(sp) + c003b8b4: 55a2 lw a1,40(sp) typed_array_get_length(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53061 int size_log2 = typed_array_size_log2(p->class_id); - c003b6e6: 000a4683 lbu a3,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53054 + c003b8b6: 000a4683 lbu a3,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53062 return ta->length >> size_log2; - c003b6ea: 53dc lw a5,36(a5) + c003b8ba: 53dc lw a5,36(a5) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54156 typed_array_get_length(ctx, p1) >= count && - c003b6ec: 0155873b addw a4,a1,s5 - c003b6f0: 00d7d7bb srlw a5,a5,a3 - c003b6f4: 06e7ee63 bltu a5,a4,c003b770 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54151 + c003b8bc: 0155873b addw a4,a1,s5 + c003b8c0: 00d7d7bb srlw a5,a5,a3 + c003b8c4: 06e7ee63 bltu a5,a4,c003b940 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54159 p->u.array.u.uint8_ptr + (start << shift), - c003b6f8: 0389b783 ld a5,56(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54150 + c003b8c8: 0389b783 ld a5,56(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54158 memcpy(p1->u.array.u.uint8_ptr, - c003b6fc: 7d08 ld a0,56(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54151 + c003b8cc: 7d08 ld a0,56(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54159 p->u.array.u.uint8_ptr + (start << shift), - c003b6fe: 016595bb sllw a1,a1,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54150 + c003b8ce: 016595bb sllw a1,a1,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54158 memcpy(p1->u.array.u.uint8_ptr, - c003b702: 016a963b sllw a2,s5,s6 - c003b706: 95be add a1,a1,a5 - c003b708: 2d21b0ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54164 + c003b8d2: 016a963b sllw a2,s5,s6 + c003b8d6: 95be add a1,a1,a5 + c003b8d8: 2d21b0ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54172 return arr; - c003b70c: 77c2 ld a5,48(sp) - c003b70e: fcca sd s2,120(sp) - c003b710: f8be sd a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54169 -} - c003b712: 60f2 ld ra,280(sp) - c003b714: 6452 ld s0,272(sp) - c003b716: 7546 ld a0,112(sp) - c003b718: 75e6 ld a1,120(sp) - c003b71a: 64b2 ld s1,264(sp) - c003b71c: 6912 ld s2,256(sp) - c003b71e: 79ee ld s3,248(sp) - c003b720: 7a4e ld s4,240(sp) - c003b722: 7aae ld s5,232(sp) - c003b724: 7b0e ld s6,224(sp) - c003b726: 6bee ld s7,216(sp) - c003b728: 6115 addi sp,sp,288 - c003b72a: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 + c003b8dc: 77c2 ld a5,48(sp) + c003b8de: fcca sd s2,120(sp) + c003b8e0: f8be sd a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54177 +} + c003b8e2: 60f2 ld ra,280(sp) + c003b8e4: 6452 ld s0,272(sp) + c003b8e6: 7546 ld a0,112(sp) + c003b8e8: 75e6 ld a1,120(sp) + c003b8ea: 64b2 ld s1,264(sp) + c003b8ec: 6912 ld s2,256(sp) + c003b8ee: 79ee ld s3,248(sp) + c003b8f0: 7a4e ld s4,240(sp) + c003b8f2: 7aae ld s5,232(sp) + c003b8f4: 7b0e ld s6,224(sp) + c003b8f6: 6bee ld s7,216(sp) + c003b8f8: 6115 addi sp,sp,288 + c003b8fa: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54163 val = JS_GetPropertyValue(ctx, this_val, JS_NewInt32(ctx, start + n)); - c003b72c: 57a2 lw a5,40(sp) + c003b8fc: 57a2 lw a5,40(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b72e: e902 sd zero,144(sp) + c003b8fe: e902 sd zero,144(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 - c003b730: 65c2 ld a1,16(sp) - c003b732: 9fa5 addw a5,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54163 + c003b900: 65c2 ld a1,16(sp) + c003b902: 9fa5 addw a5,a5,s1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b734: c93e sw a5,144(sp) + c003b904: c93e sw a5,144(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 - c003b736: 66ca ld a3,144(sp) - c003b738: 6662 ld a2,24(sp) - c003b73a: 4701 li a4,0 - c003b73c: 8522 mv a0,s0 - c003b73e: d6ad60ef jal ra,c0011ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54156 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54163 + c003b906: 66ca ld a3,144(sp) + c003b908: 6662 ld a2,24(sp) + c003b90a: 4701 li a4,0 + c003b90c: 8522 mv a0,s0 + c003b90e: c88d60ef jal ra,c0011d96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54164 if (JS_IsException(val)) - c003b742: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54155 + c003b912: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54163 val = JS_GetPropertyValue(ctx, this_val, JS_NewInt32(ctx, start + n)); - c003b746: 87aa mv a5,a0 - c003b748: 882e mv a6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54156 + c003b916: 87aa mv a5,a0 + c003b918: 882e mv a6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54164 if (JS_IsException(val)) - c003b74a: ed3705e3 beq a4,s3,c003b614 + c003b91a: ed3705e3 beq a4,s3,c003b7e4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b74e: f102 sd zero,160(sp) - c003b750: d126 sw s1,160(sp) + c003b91e: f102 sd zero,160(sp) + c003b920: d126 sw s1,160(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54158 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54166 if (JS_SetPropertyValue(ctx, arr, JS_NewInt32(ctx, n), val, - c003b752: 768a ld a3,160(sp) - c003b754: 75c2 ld a1,48(sp) - c003b756: 6891 lui a7,0x4 - c003b758: 4701 li a4,0 - c003b75a: 864a mv a2,s2 - c003b75c: 8522 mv a0,s0 + c003b922: 768a ld a3,160(sp) + c003b924: 75c2 ld a1,48(sp) + c003b926: 6891 lui a7,0x4 + c003b928: 4701 li a4,0 + c003b92a: 864a mv a2,s2 + c003b92c: 8522 mv a0,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b75e: f502 sd zero,168(sp) + c003b92e: f502 sd zero,168(sp) js_typed_array_slice(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54158 - c003b760: f29d60ef jal ra,c0012688 - c003b764: ea0548e3 bltz a0,c003b614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54154 (discriminator 2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54166 + c003b930: e47d60ef jal ra,c0012776 + c003b934: ea0548e3 bltz a0,c003b7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54162 (discriminator 2) for (n = 0; n < count; n++) { - c003b768: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54154 (discriminator 1) - c003b76a: fd5491e3 bne s1,s5,c003b72c - c003b76e: bf79 j c003b70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54156 (discriminator 1) + c003b938: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54162 (discriminator 1) + c003b93a: fd5491e3 bne s1,s5,c003b8fc + c003b93e: bf79 j c003b8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54164 (discriminator 1) if (JS_IsException(val)) - c003b770: 4999 li s3,6 - c003b772: bfe5 j c003b76a + c003b940: 4999 li s3,6 + c003b942: bfe5 j c003b93a -00000000c003b774 : +00000000c003b944 : js_typed_array_subarray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54173 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54181 { - c003b774: 7111 addi sp,sp,-256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54179 + c003b944: 7111 addi sp,sp,-256 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54187 p = get_typed_array(ctx, this_val, 0); - c003b776: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54173 -{ - c003b778: f9a2 sd s0,240(sp) - c003b77a: f5a6 sd s1,232(sp) - c003b77c: fd86 sd ra,248(sp) - c003b77e: f1ca sd s2,224(sp) - c003b780: edce sd s3,216(sp) - c003b782: e9d2 sd s4,208(sp) - c003b784: 842a mv s0,a0 - c003b786: e82e sd a1,16(sp) - c003b788: ec32 sd a2,24(sp) - c003b78a: 84ba mv s1,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54179 + c003b946: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54181 +{ + c003b948: f9a2 sd s0,240(sp) + c003b94a: f5a6 sd s1,232(sp) + c003b94c: fd86 sd ra,248(sp) + c003b94e: f1ca sd s2,224(sp) + c003b950: edce sd s3,216(sp) + c003b952: e9d2 sd s4,208(sp) + c003b954: 842a mv s0,a0 + c003b956: e82e sd a1,16(sp) + c003b958: ec32 sd a2,24(sp) + c003b95a: 84ba mv s1,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54187 p = get_typed_array(ctx, this_val, 0); - c003b78c: 82dd80ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54180 + c003b95c: f4ad80ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54188 if (!p) - c003b790: c125 beqz a0,c003b7f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54182 + c003b960: c125 beqz a0,c003b9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54190 len = p->u.array.count; - c003b792: 04052803 lw a6,64(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54183 + c003b962: 04052803 lw a6,64(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54191 if (JS_ToInt32Clamp(ctx, &start, argv[0], 0, len, len)) - c003b796: 6090 ld a2,0(s1) - c003b798: 6494 ld a3,8(s1) - c003b79a: 892a mv s2,a0 - c003b79c: 87c2 mv a5,a6 - c003b79e: 4701 li a4,0 - c003b7a0: 102c addi a1,sp,40 - c003b7a2: 8522 mv a0,s0 - c003b7a4: e442 sd a6,8(sp) - c003b7a6: b26e20ef jal ra,c001dacc - c003b7aa: e139 bnez a0,c003b7f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54186 + c003b966: 6090 ld a2,0(s1) + c003b968: 6494 ld a3,8(s1) + c003b96a: 892a mv s2,a0 + c003b96c: 87c2 mv a5,a6 + c003b96e: 4701 li a4,0 + c003b970: 102c addi a1,sp,40 + c003b972: 8522 mv a0,s0 + c003b974: e442 sd a6,8(sp) + c003b976: b26e20ef jal ra,c001dc9c + c003b97a: e139 bnez a0,c003b9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54194 final = len; - c003b7ac: 6822 ld a6,8(sp) + c003b97c: 6822 ld a6,8(sp) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003b7ae: 6c94 ld a3,24(s1) + c003b97e: 6c94 ld a3,24(s1) js_typed_array_subarray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54187 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54195 if (!JS_IsUndefined(argv[1])) { - c003b7b0: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54186 + c003b980: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54194 final = len; - c003b7b2: d642 sw a6,44(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54187 + c003b982: d642 sw a6,44(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54195 if (!JS_IsUndefined(argv[1])) { - c003b7b4: 0006871b sext.w a4,a3 - c003b7b8: 02f71f63 bne a4,a5,c003b7f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54191 + c003b984: 0006871b sext.w a4,a3 + c003b988: 02f71f63 bne a4,a5,c003b9c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54199 count = max_int(final - start, 0); - c003b7bc: 57b2 lw a5,44(sp) - c003b7be: 5722 lw a4,40(sp) - c003b7c0: 40e7873b subw a4,a5,a4 - c003b7c4: 87ba mv a5,a4 - c003b7c6: 00075363 bgez a4,c003b7cc - c003b7ca: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54192 + c003b98c: 57b2 lw a5,44(sp) + c003b98e: 5722 lw a4,40(sp) + c003b990: 40e7873b subw a4,a5,a4 + c003b994: 87ba mv a5,a4 + c003b996: 00075363 bgez a4,c003b99c + c003b99a: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54200 byteOffset = js_typed_array_get_byteOffset(ctx, this_val, 0); - c003b7cc: 6662 ld a2,24(sp) - c003b7ce: 65c2 ld a1,16(sp) - c003b7d0: 4681 li a3,0 - c003b7d2: 8522 mv a0,s0 - c003b7d4: 0007899b sext.w s3,a5 - c003b7d8: 943d80ef jal ra,c001411a - c003b7dc: e0aa sd a0,64(sp) - c003b7de: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54193 + c003b99c: 6662 ld a2,24(sp) + c003b99e: 65c2 ld a1,16(sp) + c003b9a0: 4681 li a3,0 + c003b9a2: 8522 mv a0,s0 + c003b9a4: 0007899b sext.w s3,a5 + c003b9a8: 861d80ef jal ra,c0014208 + c003b9ac: e0aa sd a0,64(sp) + c003b9ae: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54201 if (JS_IsException(byteOffset)) - c003b7e0: 0005879b sext.w a5,a1 - c003b7e4: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54192 + c003b9b0: 0005879b sext.w a5,a1 + c003b9b4: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54200 byteOffset = js_typed_array_get_byteOffset(ctx, this_val, 0); - c003b7e6: 862e mv a2,a1 - c003b7e8: 0005069b sext.w a3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54193 + c003b9b6: 862e mv a2,a1 + c003b9b8: 0005069b sext.w a3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54201 if (JS_IsException(byteOffset)) - c003b7ec: 01479e63 bne a5,s4,c003b808 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54210 + c003b9bc: 01479e63 bne a5,s4,c003b9d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54218 return JS_EXCEPTION; - c003b7f0: f082 sd zero,96(sp) - c003b7f2: 4799 li a5,6 - c003b7f4: a859 j c003b88a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54188 + c003b9c0: f082 sd zero,96(sp) + c003b9c2: 4799 li a5,6 + c003b9c4: a859 j c003ba5a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54196 if (JS_ToInt32Clamp(ctx, &final, argv[1], 0, len, len)) - c003b7f6: 6890 ld a2,16(s1) - c003b7f8: 87c2 mv a5,a6 - c003b7fa: 4701 li a4,0 - c003b7fc: 106c addi a1,sp,44 - c003b7fe: 8522 mv a0,s0 - c003b800: acce20ef jal ra,c001dacc - c003b804: dd45 beqz a0,c003b7bc - c003b806: b7ed j c003b7f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54195 + c003b9c6: 6890 ld a2,16(s1) + c003b9c8: 87c2 mv a5,a6 + c003b9ca: 4701 li a4,0 + c003b9cc: 106c addi a1,sp,44 + c003b9ce: 8522 mv a0,s0 + c003b9d0: acce20ef jal ra,c001dc9c + c003b9d4: dd45 beqz a0,c003b98c + c003b9d6: b7ed j c003b9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54203 shift = typed_array_size_log2(p->class_id); - c003b808: 00695783 lhu a5,6(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54196 + c003b9d8: 00695783 lhu a5,6(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54204 offset = JS_VALUE_GET_INT(byteOffset) + (start << shift); - c003b80c: 54a2 lw s1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54197 + c003b9dc: 54a2 lw s1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 JS_FreeValue(ctx, byteOffset); - c003b80e: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54195 + c003b9de: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54203 shift = typed_array_size_log2(p->class_id); - c003b810: feb7871b addiw a4,a5,-21 - c003b814: 0002b797 auipc a5,0x2b - c003b818: 72478793 addi a5,a5,1828 # c0066f38 - c003b81c: 97ba add a5,a5,a4 - c003b81e: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54197 + c003b9e0: feb7871b addiw a4,a5,-21 + c003b9e4: 0002b797 auipc a5,0x2b + c003b9e8: 7b478793 addi a5,a5,1972 # c0067198 + c003b9ec: 97ba add a5,a5,a4 + c003b9ee: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 JS_FreeValue(ctx, byteOffset); - c003b822: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54196 + c003b9f2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54204 offset = JS_VALUE_GET_INT(byteOffset) + (start << shift); - c003b824: 00f494bb sllw s1,s1,a5 - c003b828: 9cb5 addw s1,s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54197 + c003b9f4: 00f494bb sllw s1,s1,a5 + c003b9f8: 9cb5 addw s1,s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 JS_FreeValue(ctx, byteOffset); - c003b82a: b0ecc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54198 + c003b9fa: a2ccc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54206 ta_buffer = js_typed_array_get_buffer(ctx, this_val, 0); - c003b82e: 65c2 ld a1,16(sp) - c003b830: 6662 ld a2,24(sp) - c003b832: 4681 li a3,0 - c003b834: 8522 mv a0,s0 - c003b836: 995d80ef jal ra,c00141ca - c003b83a: e8aa sd a0,80(sp) - c003b83c: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54199 + c003b9fe: 65c2 ld a1,16(sp) + c003ba00: 6662 ld a2,24(sp) + c003ba02: 4681 li a3,0 + c003ba04: 8522 mv a0,s0 + c003ba06: 8b3d80ef jal ra,c00142b8 + c003ba0a: e8aa sd a0,80(sp) + c003ba0c: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54207 if (JS_IsException(ta_buffer)) - c003b83e: 0005879b sext.w a5,a1 - c003b842: fb4787e3 beq a5,s4,c003b7f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54201 + c003ba0e: 0005879b sext.w a5,a1 + c003ba12: fb4787e3 beq a5,s4,c003b9c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54209 args[0] = this_val; - c003b846: 67c2 ld a5,16(sp) + c003ba16: 67c2 ld a5,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003b848: e102 sd zero,128(sp) - c003b84a: c126 sw s1,128(sp) + c003ba18: e102 sd zero,128(sp) + c003ba1a: c126 sw s1,128(sp) js_typed_array_subarray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54201 - c003b84c: e93e sd a5,144(sp) - c003b84e: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54209 + c003ba1c: e93e sd a5,144(sp) + c003ba1e: 67e2 ld a5,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b850: f882 sd zero,112(sp) - c003b852: d8ce sw s3,112(sp) + c003ba20: f882 sd zero,112(sp) + c003ba22: d8ce sw s3,112(sp) js_typed_array_subarray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54201 - c003b854: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54209 + c003ba24: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54211 args[2] = JS_NewInt32(ctx, offset); - c003b856: 678a ld a5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54202 + c003ba26: 678a ld a5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54210 args[1] = ta_buffer; - c003b858: f12a sd a0,160(sp) - c003b85a: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54203 + c003ba28: f12a sd a0,160(sp) + c003ba2a: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54211 args[2] = JS_NewInt32(ctx, offset); - c003b85c: f93e sd a5,176(sp) - c003b85e: 77c6 ld a5,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 + c003ba2c: f93e sd a5,176(sp) + c003ba2e: 77c6 ld a5,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54213 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 4, args); - c003b860: 0910 addi a2,sp,144 - c003b862: 4591 li a1,4 - c003b864: 8522 mv a0,s0 - c003b866: f0be sd a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54204 + c003ba30: 0910 addi a2,sp,144 + c003ba32: 4591 li a1,4 + c003ba34: 8522 mv a0,s0 + c003ba36: f0be sd a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54212 args[3] = JS_NewInt32(ctx, count); - c003b868: e1be sd a5,192(sp) - c003b86a: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54203 + c003ba38: e1be sd a5,192(sp) + c003ba3a: fc82 sd zero,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54211 args[2] = JS_NewInt32(ctx, offset); - c003b86c: fd02 sd zero,184(sp) + c003ba3c: fd02 sd zero,184(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003b86e: f482 sd zero,104(sp) + c003ba3e: f482 sd zero,104(sp) js_typed_array_subarray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54212 args[3] = JS_NewInt32(ctx, count); - c003b870: e582 sd zero,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 + c003ba40: e582 sd zero,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54213 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 4, args); - c003b872: c8bff0ef jal ra,c003b4fc - c003b876: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54206 + c003ba42: c8bff0ef jal ra,c003b6cc + c003ba46: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54214 JS_FreeValue(ctx, ta_buffer); - c003b878: 6666 ld a2,88(sp) - c003b87a: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54205 + c003ba48: 6666 ld a2,88(sp) + c003ba4a: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54213 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 4, args); - c003b87c: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54206 + c003ba4c: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54214 JS_FreeValue(ctx, ta_buffer); - c003b87e: 8522 mv a0,s0 - c003b880: ab8cc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54207 + c003ba4e: 8522 mv a0,s0 + c003ba50: 9d6cc0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54215 return arr; - c003b884: 77c2 ld a5,48(sp) - c003b886: f0be sd a5,96(sp) - c003b888: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54211 + c003ba54: 77c2 ld a5,48(sp) + c003ba56: f0be sd a5,96(sp) + c003ba58: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54219 } - c003b88a: 70ee ld ra,248(sp) - c003b88c: 744e ld s0,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54210 + c003ba5a: 70ee ld ra,248(sp) + c003ba5c: 744e ld s0,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54218 return JS_EXCEPTION; - c003b88e: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54211 + c003ba5e: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54219 } - c003b890: 7506 ld a0,96(sp) - c003b892: 75a6 ld a1,104(sp) - c003b894: 74ae ld s1,232(sp) - c003b896: 790e ld s2,224(sp) - c003b898: 69ee ld s3,216(sp) - c003b89a: 6a4e ld s4,208(sp) - c003b89c: 6111 addi sp,sp,256 - c003b89e: 8082 ret + c003ba60: 7506 ld a0,96(sp) + c003ba62: 75a6 ld a1,104(sp) + c003ba64: 74ae ld s1,232(sp) + c003ba66: 790e ld s2,224(sp) + c003ba68: 69ee ld s3,216(sp) + c003ba6a: 6a4e ld s4,208(sp) + c003ba6c: 6111 addi sp,sp,256 + c003ba6e: 8082 ret -00000000c003b8a0 : +00000000c003ba70 : js_call_bound_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16081 -{ - c003b8a0: 7159 addi sp,sp,-112 - c003b8a2: f0a2 sd s0,96(sp) - c003b8a4: e8ca sd s2,80(sp) - c003b8a6: 1880 addi s0,sp,112 - c003b8a8: f486 sd ra,104(sp) - c003b8aa: eca6 sd s1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16088 - bf = p->u.bound_function; - c003b8ac: 7984 ld s1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16081 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16089 { - c003b8ae: 892a mv s2,a0 - c003b8b0: 853e mv a0,a5 + c003ba70: 7159 addi sp,sp,-112 + c003ba72: f0a2 sd s0,96(sp) + c003ba74: e8ca sd s2,80(sp) + c003ba76: 1880 addi s0,sp,112 + c003ba78: f486 sd ra,104(sp) + c003ba7a: eca6 sd s1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16096 + bf = p->u.bound_function; + c003ba7c: 7984 ld s1,48(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16089 - arg_count = bf->argc + argc; - c003b8b2: 509c lw a5,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16081 { - c003b8b4: fae43423 sd a4,-88(s0) - c003b8b8: fad43023 sd a3,-96(s0) + c003ba7e: 892a mv s2,a0 + c003ba80: 853e mv a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16097 + arg_count = bf->argc + argc; + c003ba82: 509c lw a5,32(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16089 +{ + c003ba84: fae43423 sd a4,-88(s0) + c003ba88: fad43023 sd a3,-96(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16097 arg_count = bf->argc + argc; - c003b8bc: 9fa9 addw a5,a5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16092 + c003ba8c: 9fa9 addw a5,a5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16100 arg_buf = alloca(sizeof(JSValue) * arg_count); - c003b8be: 00479713 slli a4,a5,0x4 - c003b8c2: 40e10133 sub sp,sp,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16081 -{ - c003b8c6: 8342 mv t1,a6 - c003b8c8: fab43823 sd a1,-80(s0) - c003b8cc: fac43c23 sd a2,-72(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16092 + c003ba8e: 00479713 slli a4,a5,0x4 + c003ba92: 40e10133 sub sp,sp,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16089 +{ + c003ba96: 8342 mv t1,a6 + c003ba98: fab43823 sd a1,-80(s0) + c003ba9c: fac43c23 sd a2,-72(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16100 arg_buf = alloca(sizeof(JSValue) * arg_count); - c003b8d0: 880a mv a6,sp -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16093 + c003baa0: 880a mv a6,sp +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 for(i = 0; i < bf->argc; i++) { - c003b8d2: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16093 (discriminator 1) - c003b8d4: 5098 lw a4,32(s1) - c003b8d6: 08e6c263 blt a3,a4,c003b95a - c003b8da: 4681 li a3,0 - c003b8dc: 0006861b sext.w a2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16096 (discriminator 1) + c003baa2: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 (discriminator 1) + c003baa4: 5098 lw a4,32(s1) + c003baa6: 08e6c263 blt a3,a4,c003bb2a + c003baaa: 4681 li a3,0 + c003baac: 0006861b sext.w a2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16104 (discriminator 1) for(i = 0; i < argc; i++) { - c003b8e0: 08a64a63 blt a2,a0,c003b974 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16099 + c003bab0: 08a64a63 blt a2,a0,c003bb44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16107 if (flags & JS_CALL_FLAG_CONSTRUCTOR) { - c003b8e4: 0018f893 andi a7,a7,1 - c003b8e8: 0a088363 beqz a7,c003b98e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16100 + c003bab4: 0018f893 andi a7,a7,1 + c003bab8: 0a088363 beqz a7,c003bb5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16108 new_target = this_obj; - c003b8ec: fa043683 ld a3,-96(s0) - c003b8f0: fa843703 ld a4,-88(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 + c003babc: fa043683 ld a3,-96(s0) + c003bac0: fa843703 ld a4,-88(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16109 if (js_same_value(ctx, func_obj, new_target)) - c003b8f4: fb043583 ld a1,-80(s0) - c003b8f8: fb843603 ld a2,-72(s0) - c003b8fc: 854a mv a0,s2 - c003b8fe: f9043823 sd a6,-112(s0) - c003b902: f8f43c23 sd a5,-104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16100 + c003bac4: fb043583 ld a1,-80(s0) + c003bac8: fb843603 ld a2,-72(s0) + c003bacc: 854a mv a0,s2 + c003bace: f9043823 sd a6,-112(s0) + c003bad2: f8f43c23 sd a5,-104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16108 new_target = this_obj; - c003b906: fcd43023 sd a3,-64(s0) - c003b90a: fce43423 sd a4,-56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 + c003bad6: fcd43023 sd a3,-64(s0) + c003bada: fce43423 sd a4,-56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16109 if (js_same_value(ctx, func_obj, new_target)) - c003b90e: bb4cc0ef jal ra,c0007cc2 - c003b912: f9843783 ld a5,-104(s0) - c003b916: f9043803 ld a6,-112(s0) - c003b91a: c519 beqz a0,c003b928 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16102 + c003bade: ad2cc0ef jal ra,c0007db0 + c003bae2: f9843783 ld a5,-104(s0) + c003bae6: f9043803 ld a6,-112(s0) + c003baea: c519 beqz a0,c003baf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16110 new_target = bf->func_obj; - c003b91c: 6098 ld a4,0(s1) - c003b91e: fce43023 sd a4,-64(s0) - c003b922: 6498 ld a4,8(s1) - c003b924: fce43423 sd a4,-56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16103 + c003baec: 6098 ld a4,0(s1) + c003baee: fce43023 sd a4,-64(s0) + c003baf2: 6498 ld a4,8(s1) + c003baf4: fce43423 sd a4,-56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16111 return JS_CallConstructor2(ctx, bf->func_obj, new_target, - c003b928: fc043683 ld a3,-64(s0) - c003b92c: fc843703 ld a4,-56(s0) - c003b930: 608c ld a1,0(s1) - c003b932: 6490 ld a2,8(s1) - c003b934: 854a mv a0,s2 - c003b936: abbfc0ef jal ra,c00383f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16106 + c003baf8: fc043683 ld a3,-64(s0) + c003bafc: fc843703 ld a4,-56(s0) + c003bb00: 608c ld a1,0(s1) + c003bb02: 6490 ld a2,8(s1) + c003bb04: 854a mv a0,s2 + c003bb06: abbfc0ef jal ra,c00385c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16114 return JS_Call(ctx, bf->func_obj, bf->this_val, - c003b93a: fca43823 sd a0,-48(s0) - c003b93e: fcb43c23 sd a1,-40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16109 -} - c003b942: fd043503 ld a0,-48(s0) - c003b946: fd843583 ld a1,-40(s0) - c003b94a: f9040113 addi sp,s0,-112 - c003b94e: 70a6 ld ra,104(sp) - c003b950: 7406 ld s0,96(sp) - c003b952: 64e6 ld s1,88(sp) - c003b954: 6946 ld s2,80(sp) - c003b956: 6165 addi sp,sp,112 - c003b958: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16094 (discriminator 3) + c003bb0a: fca43823 sd a0,-48(s0) + c003bb0e: fcb43c23 sd a1,-40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16117 +} + c003bb12: fd043503 ld a0,-48(s0) + c003bb16: fd843583 ld a1,-40(s0) + c003bb1a: f9040113 addi sp,s0,-112 + c003bb1e: 70a6 ld ra,104(sp) + c003bb20: 7406 ld s0,96(sp) + c003bb22: 64e6 ld s1,88(sp) + c003bb24: 6946 ld s2,80(sp) + c003bb26: 6165 addi sp,sp,112 + c003bb28: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16102 (discriminator 3) arg_buf[i] = bf->argv[i]; - c003b95a: 00268713 addi a4,a3,2 - c003b95e: 0712 slli a4,a4,0x4 - c003b960: 9726 add a4,a4,s1 - c003b962: 670c ld a1,8(a4) - c003b964: 00469613 slli a2,a3,0x4 - c003b968: 9642 add a2,a2,a6 - c003b96a: e20c sd a1,0(a2) - c003b96c: 6b18 ld a4,16(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16093 (discriminator 3) + c003bb2a: 00268713 addi a4,a3,2 + c003bb2e: 0712 slli a4,a4,0x4 + c003bb30: 9726 add a4,a4,s1 + c003bb32: 670c ld a1,8(a4) + c003bb34: 00469613 slli a2,a3,0x4 + c003bb38: 9642 add a2,a2,a6 + c003bb3a: e20c sd a1,0(a2) + c003bb3c: 6b18 ld a4,16(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 (discriminator 3) for(i = 0; i < bf->argc; i++) { - c003b96e: 2685 addiw a3,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16094 (discriminator 3) + c003bb3e: 2685 addiw a3,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16102 (discriminator 3) arg_buf[i] = bf->argv[i]; - c003b970: e618 sd a4,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16093 (discriminator 3) + c003bb40: e618 sd a4,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16101 (discriminator 3) for(i = 0; i < bf->argc; i++) { - c003b972: b78d j c003b8d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16097 (discriminator 3) + c003bb42: b78d j c003baa4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16105 (discriminator 3) arg_buf[bf->argc + i] = argv[i]; - c003b974: 5098 lw a4,32(s1) - c003b976: 9f31 addw a4,a4,a2 - c003b978: 00469613 slli a2,a3,0x4 - c003b97c: 961a add a2,a2,t1 - c003b97e: 620c ld a1,0(a2) - c003b980: 6610 ld a2,8(a2) - c003b982: 0712 slli a4,a4,0x4 - c003b984: 9742 add a4,a4,a6 - c003b986: e30c sd a1,0(a4) - c003b988: e710 sd a2,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16096 (discriminator 3) + c003bb44: 5098 lw a4,32(s1) + c003bb46: 9f31 addw a4,a4,a2 + c003bb48: 00469613 slli a2,a3,0x4 + c003bb4c: 961a add a2,a2,t1 + c003bb4e: 620c ld a1,0(a2) + c003bb50: 6610 ld a2,8(a2) + c003bb52: 0712 slli a4,a4,0x4 + c003bb54: 9742 add a4,a4,a6 + c003bb56: e30c sd a1,0(a4) + c003bb58: e710 sd a2,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16104 (discriminator 3) for(i = 0; i < argc; i++) { - c003b98a: 0685 addi a3,a3,1 - c003b98c: bf81 j c003b8dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16106 + c003bb5a: 0685 addi a3,a3,1 + c003bb5c: bf81 j c003baac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:16114 return JS_Call(ctx, bf->func_obj, bf->this_val, - c003b98e: 6894 ld a3,16(s1) - c003b990: 6c98 ld a4,24(s1) - c003b992: 608c ld a1,0(s1) - c003b994: 6490 ld a2,8(s1) - c003b996: 854a mv a0,s2 - c003b998: d6ffd0ef jal ra,c0039706 - c003b99c: bf79 j c003b93a - -00000000c003b99e : + c003bb5e: 6894 ld a3,16(s1) + c003bb60: 6c98 ld a4,24(s1) + c003bb62: 608c ld a1,0(s1) + c003bb64: 6490 ld a2,8(s1) + c003bb66: 854a mv a0,s2 + c003bb68: d6ffd0ef jal ra,c00398d6 + c003bb6c: bf79 j c003bb0a + +00000000c003bb6e : js_inner_module_linking(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28159 -{ - c003b99e: 7175 addi sp,sp,-144 - c003b9a0: fca6 sd s1,120(sp) - c003b9a2: e506 sd ra,136(sp) - c003b9a4: e122 sd s0,128(sp) - c003b9a6: f8ca sd s2,112(sp) - c003b9a8: f4ce sd s3,104(sp) - c003b9aa: f0d2 sd s4,96(sp) - c003b9ac: ecd6 sd s5,88(sp) - c003b9ae: e8da sd s6,80(sp) - c003b9b0: e4de sd s7,72(sp) - c003b9b2: e0e2 sd s8,64(sp) - c003b9b4: fc66 sd s9,56(sp) - c003b9b6: f86a sd s10,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28167 +{ + c003bb6e: 7175 addi sp,sp,-144 + c003bb70: fca6 sd s1,120(sp) + c003bb72: e506 sd ra,136(sp) + c003bb74: e122 sd s0,128(sp) + c003bb76: f8ca sd s2,112(sp) + c003bb78: f4ce sd s3,104(sp) + c003bb7a: f0d2 sd s4,96(sp) + c003bb7c: ecd6 sd s5,88(sp) + c003bb7e: e8da sd s6,80(sp) + c003bb80: e4de sd s7,72(sp) + c003bb82: e0e2 sd s8,64(sp) + c003bb84: fc66 sd s9,56(sp) + c003bb86: f86a sd s10,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28188 if (m->status == JS_MODULE_STATUS_LINKING || - c003b9b8: 0835c703 lbu a4,131(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28159 + c003bb88: 0835c703 lbu a4,131(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28167 { - c003b9bc: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28180 + c003bb8c: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28188 if (m->status == JS_MODULE_STATUS_LINKING || - c003b9be: 4785 li a5,1 - c003b9c0: fff7069b addiw a3,a4,-1 - c003b9c4: 0ff6f693 zext.b a3,a3 - c003b9c8: 28d7f263 bgeu a5,a3,c003bc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28181 + c003bb8e: 4785 li a5,1 + c003bb90: fff7069b addiw a3,a4,-1 + c003bb94: 0ff6f693 zext.b a3,a3 + c003bb98: 28d7f263 bgeu a5,a3,c003be1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28189 m->status == JS_MODULE_STATUS_LINKED || - c003b9cc: ffc7069b addiw a3,a4,-4 - c003b9d0: 0ff6f693 zext.b a3,a3 - c003b9d4: 26d7fc63 bgeu a5,a3,c003bc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28186 + c003bb9c: ffc7069b addiw a3,a4,-4 + c003bba0: 0ff6f693 zext.b a3,a3 + c003bba4: 26d7fc63 bgeu a5,a3,c003be1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28194 assert(m->status == JS_MODULE_STATUS_UNLINKED); - c003b9d8: cb19 beqz a4,c003b9ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28186 (discriminator 1) - c003b9da: 659d lui a1,0x7 - c003b9dc: 4601 li a2,0 - c003b9de: e1a58593 addi a1,a1,-486 # 6e1a <__clzdi2-0xbfff91e6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 (discriminator 9) + c003bba8: cb19 beqz a4,c003bbbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28194 (discriminator 1) + c003bbaa: 659d lui a1,0x7 + c003bbac: 4601 li a2,0 + c003bbae: e2258593 addi a1,a1,-478 # 6e22 <__clzdi2-0xbfff91de> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28209 (discriminator 9) assert(m1->status == JS_MODULE_STATUS_LINKING || - c003b9e2: 00021517 auipc a0,0x21 - c003b9e6: 09650513 addi a0,a0,150 # c005ca78 - c003b9ea: 02e180ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28188 (discriminator 2) + c003bbb2: 00021517 auipc a0,0x21 + c003bbb6: 09650513 addi a0,a0,150 # c005cc48 + c003bbba: 02e180ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28196 (discriminator 2) m->dfs_index = index; - c003b9ee: 0895a223 sw s1,132(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28189 (discriminator 2) + c003bbbe: 0895a223 sw s1,132(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28197 (discriminator 2) m->dfs_ancestor_index = index; - c003b9f2: 0895a423 sw s1,136(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28187 (discriminator 2) + c003bbc2: 0895a423 sw s1,136(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28195 (discriminator 2) m->status = JS_MODULE_STATUS_LINKING; - c003b9f6: 08f581a3 sb a5,131(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28192 (discriminator 2) + c003bbc6: 08f581a3 sb a5,131(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28200 (discriminator 2) m->stack_prev = *pstack_top; - c003b9fa: 621c ld a5,0(a2) - c003b9fc: 892a mv s2,a0 - c003b9fe: 842e mv s0,a1 - c003ba00: e9dc sd a5,144(a1) - c003ba02: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28190 (discriminator 2) + c003bbca: 621c ld a5,0(a2) + c003bbcc: 892a mv s2,a0 + c003bbce: 842e mv s0,a1 + c003bbd0: e9dc sd a5,144(a1) + c003bbd2: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28198 (discriminator 2) index++; - c003ba04: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28193 (discriminator 2) + c003bbd4: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 (discriminator 2) *pstack_top = m; - c003ba06: e20c sd a1,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28195 (discriminator 2) + c003bbd6: e20c sd a1,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28203 (discriminator 2) for(i = 0; i < m->req_module_entries_count; i++) { - c003ba08: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 (discriminator 2) + c003bbd8: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28209 (discriminator 2) assert(m1->status == JS_MODULE_STATUS_LINKING || - c003ba0a: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28195 (discriminator 1) + c003bbda: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28203 (discriminator 1) for(i = 0; i < m->req_module_entries_count; i++) { - c003ba0c: 501c lw a5,32(s0) - c003ba0e: 06f9cd63 blt s3,a5,c003ba88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28218 + c003bbdc: 501c lw a5,32(s0) + c003bbde: 06f9cd63 blt s3,a5,c003bc58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28226 for(i = 0; i < m->export_entries_count; i++) { - c003ba12: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28220 + c003bbe2: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28228 if (me->export_type == JS_EXPORT_TYPE_INDIRECT && - c003ba14: 4b05 li s6,1 - c003ba16: 07e00b93 li s7,126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28218 (discriminator 1) + c003bbe4: 4b05 li s6,1 + c003bbe6: 07e00b93 li s7,126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28226 (discriminator 1) for(i = 0; i < m->export_entries_count; i++) { - c003ba1a: 581c lw a5,48(s0) - c003ba1c: 0cfac863 blt s5,a5,c003baec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28248 + c003bbea: 581c lw a5,48(s0) + c003bbec: 0cfac863 blt s5,a5,c003bcbc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28256 if (!is_c_module) { - c003ba20: 7c3c ld a5,120(s0) - c003ba22: eba1 bnez a5,c003ba72 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28250 + c003bbf0: 7c3c ld a5,120(s0) + c003bbf2: eba1 bnez a5,c003bc42 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28258 var_refs = p->u.func.var_refs; - c003ba24: 743c ld a5,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28252 + c003bbf4: 743c ld a5,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 for(i = 0; i < m->import_entries_count; i++) { - c003ba26: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28253 + c003bbf6: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28261 mi = &m->import_entries[i]; - c003ba28: 4cb1 li s9,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28250 + c003bbf8: 4cb1 li s9,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28258 var_refs = p->u.func.var_refs; - c003ba2a: 0387ba83 ld s5,56(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 + c003bbfa: 0387ba83 ld s5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28268 if (mi->import_name == JS_ATOM__star_) { - c003ba2e: 07e00b93 li s7,126 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28288 + c003bbfe: 07e00b93 li s7,126 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28296 if (JS_IsException(val)) - c003ba32: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28252 (discriminator 1) + c003bc02: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 (discriminator 1) for(i = 0; i < m->import_entries_count; i++) { - c003ba34: 483c lw a5,80(s0) - c003ba36: 0efb4e63 blt s6,a5,c003bb32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28318 + c003bc04: 483c lw a5,80(s0) + c003bc06: 0efb4e63 blt s6,a5,c003bd02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28326 for(i = 0; i < m->export_entries_count; i++) { - c003ba3a: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28318 (discriminator 1) - c003ba3c: 581c lw a5,48(s0) - c003ba3e: 1cf6cb63 blt a3,a5,c003bc14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28328 + c003bc0a: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28326 (discriminator 1) + c003bc0c: 581c lw a5,48(s0) + c003bc0e: 1cf6cb63 blt a3,a5,c003bde4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28336 ret_val = JS_Call(ctx, m->func_obj, JS_TRUE, 0, NULL); - c003ba42: 7830 ld a2,112(s0) - c003ba44: 742c ld a1,104(s0) - c003ba46: 4785 li a5,1 - c003ba48: f03e sd a5,32(sp) - c003ba4a: f43e sd a5,40(sp) - c003ba4c: 4705 li a4,1 - c003ba4e: 4781 li a5,0 - c003ba50: 4801 li a6,0 - c003ba52: 4685 li a3,1 - c003ba54: 854a mv a0,s2 - c003ba56: cb1fd0ef jal ra,c0039706 - c003ba5a: e82a sd a0,16(sp) - c003ba5c: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28329 + c003bc12: 7830 ld a2,112(s0) + c003bc14: 742c ld a1,104(s0) + c003bc16: 4785 li a5,1 + c003bc18: f03e sd a5,32(sp) + c003bc1a: f43e sd a5,40(sp) + c003bc1c: 4705 li a4,1 + c003bc1e: 4781 li a5,0 + c003bc20: 4801 li a6,0 + c003bc22: 4685 li a3,1 + c003bc24: 854a mv a0,s2 + c003bc26: cb1fd0ef jal ra,c00398d6 + c003bc2a: e82a sd a0,16(sp) + c003bc2c: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28337 if (JS_IsException(ret_val)) - c003ba5e: 0005871b sext.w a4,a1 - c003ba62: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28328 + c003bc2e: 0005871b sext.w a4,a1 + c003bc32: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28336 ret_val = JS_Call(ctx, m->func_obj, JS_TRUE, 0, NULL); - c003ba64: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28329 + c003bc34: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28337 if (JS_IsException(ret_val)) - c003ba66: 0cf70263 beq a4,a5,c003bb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28331 + c003bc36: 0cf70263 beq a4,a5,c003bcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28339 JS_FreeValue(ctx, ret_val); - c003ba6a: 85aa mv a1,a0 - c003ba6c: 854a mv a0,s2 - c003ba6e: 8cacc0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28334 + c003bc3a: 85aa mv a1,a0 + c003bc3c: 854a mv a0,s2 + c003bc3e: fe9cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28342 assert(m->dfs_ancestor_index <= m->dfs_index); - c003ba72: 08842703 lw a4,136(s0) - c003ba76: 08442783 lw a5,132(s0) - c003ba7a: 1ae7dd63 bge a5,a4,c003bc34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28334 (discriminator 1) - c003ba7e: 659d lui a1,0x7 - c003ba80: 4601 li a2,0 - c003ba82: eae58593 addi a1,a1,-338 # 6eae <__clzdi2-0xbfff9152> - c003ba86: bfb1 j c003b9e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28197 + c003bc42: 08842703 lw a4,136(s0) + c003bc46: 08442783 lw a5,132(s0) + c003bc4a: 1ae7dd63 bge a5,a4,c003be04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28342 (discriminator 1) + c003bc4e: 659d lui a1,0x7 + c003bc50: 4601 li a2,0 + c003bc52: eb658593 addi a1,a1,-330 # 6eb6 <__clzdi2-0xbfff914a> + c003bc56: bfb1 j c003bbb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28205 m1 = rme->module; - c003ba88: 6c1c ld a5,24(s0) - c003ba8a: 00499713 slli a4,s3,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28198 + c003bc58: 6c1c ld a5,24(s0) + c003bc5a: 00499713 slli a4,s3,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28206 index = js_inner_module_linking(ctx, m1, pstack_top, index); - c003ba8e: 86a6 mv a3,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28197 + c003bc5e: 86a6 mv a3,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28205 m1 = rme->module; - c003ba90: 97ba add a5,a5,a4 - c003ba92: 0087bb03 ld s6,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28198 + c003bc60: 97ba add a5,a5,a4 + c003bc62: 0087bb03 ld s6,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28206 index = js_inner_module_linking(ctx, m1, pstack_top, index); - c003ba96: 8652 mv a2,s4 - c003ba98: 854a mv a0,s2 - c003ba9a: 85da mv a1,s6 - c003ba9c: f03ff0ef jal ra,c003b99e - c003baa0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28199 + c003bc66: 8652 mv a2,s4 + c003bc68: 854a mv a0,s2 + c003bc6a: 85da mv a1,s6 + c003bc6c: f03ff0ef jal ra,c003bb6e + c003bc70: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28207 if (index < 0) - c003baa2: 08054463 bltz a0,c003bb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 + c003bc72: 08054463 bltz a0,c003bcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28209 assert(m1->status == JS_MODULE_STATUS_LINKING || - c003baa6: 083b4783 lbu a5,131(s6) # 4083 <__clzdi2-0xbfffbf7d> - c003baaa: fff7871b addiw a4,a5,-1 - c003baae: 0ff77713 zext.b a4,a4 - c003bab2: 00eafc63 bgeu s5,a4,c003baca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 (discriminator 1) - c003bab6: 37f1 addiw a5,a5,-4 - c003bab8: 0ff7f793 zext.b a5,a5 - c003babc: 02faf663 bgeu s5,a5,c003bae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28201 (discriminator 9) - c003bac0: 659d lui a1,0x7 - c003bac2: 4601 li a2,0 - c003bac4: e2958593 addi a1,a1,-471 # 6e29 <__clzdi2-0xbfff91d7> - c003bac8: bf29 j c003b9e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28205 (discriminator 10) + c003bc76: 083b4783 lbu a5,131(s6) # 4083 <__clzdi2-0xbfffbf7d> + c003bc7a: fff7871b addiw a4,a5,-1 + c003bc7e: 0ff77713 zext.b a4,a4 + c003bc82: 00eafc63 bgeu s5,a4,c003bc9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28209 (discriminator 1) + c003bc86: 37f1 addiw a5,a5,-4 + c003bc88: 0ff7f793 zext.b a5,a5 + c003bc8c: 02faf663 bgeu s5,a5,c003bcb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28209 (discriminator 9) + c003bc90: 659d lui a1,0x7 + c003bc92: 4601 li a2,0 + c003bc94: e3158593 addi a1,a1,-463 # 6e31 <__clzdi2-0xbfff91cf> + c003bc98: bf29 j c003bbb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28213 (discriminator 10) if (m1->status == JS_MODULE_STATUS_LINKING) { - c003baca: 01579f63 bne a5,s5,c003bae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28206 + c003bc9a: 01579f63 bne a5,s5,c003bcb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28214 m->dfs_ancestor_index = min_int(m->dfs_ancestor_index, - c003bace: 088b2703 lw a4,136(s6) - c003bad2: 08842783 lw a5,136(s0) - c003bad6: 0007069b sext.w a3,a4 - c003bada: 0007861b sext.w a2,a5 - c003bade: 00c6d363 bge a3,a2,c003bae4 - c003bae2: 87ba mv a5,a4 - c003bae4: 08f42423 sw a5,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28195 (discriminator 2) + c003bc9e: 088b2703 lw a4,136(s6) + c003bca2: 08842783 lw a5,136(s0) + c003bca6: 0007069b sext.w a3,a4 + c003bcaa: 0007861b sext.w a2,a5 + c003bcae: 00c6d363 bge a3,a2,c003bcb4 + c003bcb2: 87ba mv a5,a4 + c003bcb4: 08f42423 sw a5,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28203 (discriminator 2) for(i = 0; i < m->req_module_entries_count; i++) { - c003bae8: 2985 addiw s3,s3,1 - c003baea: b70d j c003ba0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28219 + c003bcb8: 2985 addiw s3,s3,1 + c003bcba: b70d j c003bbdc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28227 JSExportEntry *me = &m->export_entries[i]; - c003baec: 741c ld a5,40(s0) - c003baee: 005a9993 slli s3,s5,0x5 - c003baf2: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28220 + c003bcbc: 741c ld a5,40(s0) + c003bcbe: 005a9993 slli s3,s5,0x5 + c003bcc2: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28228 if (me->export_type == JS_EXPORT_TYPE_INDIRECT && - c003baf4: 0109a783 lw a5,16(s3) - c003baf8: 03679b63 bne a5,s6,c003bb2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28221 (discriminator 1) + c003bcc4: 0109a783 lw a5,16(s3) + c003bcc8: 03679b63 bne a5,s6,c003bcfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28229 (discriminator 1) me->local_name != JS_ATOM__star_) { - c003bafc: 0149a703 lw a4,20(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28220 (discriminator 1) + c003bccc: 0149a703 lw a4,20(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28228 (discriminator 1) if (me->export_type == JS_EXPORT_TYPE_INDIRECT && - c003bb00: 03770763 beq a4,s7,c003bb2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28225 + c003bcd0: 03770763 beq a4,s7,c003bcfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28233 m1 = m->req_module_entries[me->u.req_module_idx].module; - c003bb04: 0009a683 lw a3,0(s3) - c003bb08: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28226 + c003bcd4: 0009a683 lw a3,0(s3) + c003bcd8: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28234 ret = js_resolve_export(ctx, &res_m, &res_me, m1, me->local_name); - c003bb0a: 100c addi a1,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28225 + c003bcda: 100c addi a1,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28233 m1 = m->req_module_entries[me->u.req_module_idx].module; - c003bb0c: 0692 slli a3,a3,0x4 - c003bb0e: 97b6 add a5,a5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28226 + c003bcdc: 0692 slli a3,a3,0x4 + c003bcde: 97b6 add a5,a5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28234 ret = js_resolve_export(ctx, &res_m, &res_me, m1, me->local_name); - c003bb10: 6794 ld a3,8(a5) - c003bb12: 0810 addi a2,sp,16 - c003bb14: 854a mv a0,s2 - c003bb16: ea5db0ef jal ra,c00179ba - c003bb1a: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28227 + c003bce0: 6794 ld a3,8(a5) + c003bce2: 0810 addi a2,sp,16 + c003bce4: 854a mv a0,s2 + c003bce6: ea5db0ef jal ra,c0017b8a + c003bcea: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28235 if (ret != JS_RESOLVE_RES_FOUND) { - c003bb1c: c909 beqz a0,c003bb2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28228 + c003bcec: c909 beqz a0,c003bcfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28236 js_resolve_export_throw_error(ctx, ret, m, me->export_name); - c003bb1e: 0189a683 lw a3,24(s3) - c003bb22: 8622 mv a2,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28279 + c003bcee: 0189a683 lw a3,24(s3) + c003bcf2: 8622 mv a2,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28287 js_resolve_export_throw_error(ctx, ret, m1, mi->import_name); - c003bb24: 854a mv a0,s2 - c003bb26: e46d70ef jal ra,c001316c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28351 + c003bcf4: 854a mv a0,s2 + c003bcf6: d64d70ef jal ra,c001325a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28359 return -1; - c003bb2a: 54fd li s1,-1 - c003bb2c: a205 j c003bc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28218 (discriminator 2) + c003bcfa: 54fd li s1,-1 + c003bcfc: a205 j c003be1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28226 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c003bb2e: 2a85 addiw s5,s5,1 - c003bb30: b5ed j c003ba1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28253 + c003bcfe: 2a85 addiw s5,s5,1 + c003bd00: b5ed j c003bbea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28261 mi = &m->import_entries[i]; - c003bb32: 039b09b3 mul s3,s6,s9 - c003bb36: 643c ld a5,72(s0) - c003bb38: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28259 + c003bd02: 039b09b3 mul s3,s6,s9 + c003bd06: 643c ld a5,72(s0) + c003bd08: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28267 m1 = m->req_module_entries[mi->req_module_idx].module; - c003bb3a: 0089a703 lw a4,8(s3) - c003bb3e: 6c1c ld a5,24(s0) - c003bb40: 0712 slli a4,a4,0x4 - c003bb42: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 + c003bd0a: 0089a703 lw a4,8(s3) + c003bd0e: 6c1c ld a5,24(s0) + c003bd10: 0712 slli a4,a4,0x4 + c003bd12: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28268 if (mi->import_name == JS_ATOM__star_) { - c003bb44: 0049a703 lw a4,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28259 + c003bd14: 0049a703 lw a4,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28267 m1 = m->req_module_entries[mi->req_module_idx].module; - c003bb48: 0087bd03 ld s10,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 + c003bd18: 0087bd03 ld s10,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28268 if (mi->import_name == JS_ATOM__star_) { - c003bb4c: 03771a63 bne a4,s7,c003bb80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28263 + c003bd1c: 03771a63 bne a4,s7,c003bd50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28271 val = JS_GetModuleNamespace(ctx, m1); - c003bb50: 85ea mv a1,s10 - c003bb52: 854a mv a0,s2 - c003bb54: c4fed0ef jal ra,c00297a2 - c003bb58: f02a sd a0,32(sp) - c003bb5a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28264 + c003bd20: 85ea mv a1,s10 + c003bd22: 854a mv a0,s2 + c003bd24: c4fed0ef jal ra,c0029972 + c003bd28: f02a sd a0,32(sp) + c003bd2a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28272 if (JS_IsException(val)) - c003bb5c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28263 + c003bd2c: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28271 val = JS_GetModuleNamespace(ctx, m1); - c003bb60: 862a mv a2,a0 - c003bb62: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28264 + c003bd30: 862a mv a2,a0 + c003bd32: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28272 if (JS_IsException(val)) - c003bb64: fd8783e3 beq a5,s8,c003bb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28266 + c003bd34: fd8783e3 beq a5,s8,c003bcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28274 set_value(ctx, &var_refs[mi->var_idx]->value, val); - c003bb68: 0009a783 lw a5,0(s3) - c003bb6c: 854a mv a0,s2 - c003bb6e: 078e slli a5,a5,0x3 - c003bb70: 97d6 add a5,a5,s5 - c003bb72: 638c ld a1,0(a5) - c003bb74: 02058593 addi a1,a1,32 - c003bb78: c0acc0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28252 (discriminator 2) + c003bd38: 0009a783 lw a5,0(s3) + c003bd3c: 854a mv a0,s2 + c003bd3e: 078e slli a5,a5,0x3 + c003bd40: 97d6 add a5,a5,s5 + c003bd42: 638c ld a1,0(a5) + c003bd44: 02058593 addi a1,a1,32 + c003bd48: b28cc0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28260 (discriminator 2) for(i = 0; i < m->import_entries_count; i++) { - c003bb7c: 2b05 addiw s6,s6,1 - c003bb7e: bd5d j c003ba34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28276 + c003bd4c: 2b05 addiw s6,s6,1 + c003bd4e: bd5d j c003bc04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28284 ret = js_resolve_export(ctx, &res_m, - c003bb80: 080c addi a1,sp,16 - c003bb82: 86ea mv a3,s10 - c003bb84: 0030 addi a2,sp,8 - c003bb86: 854a mv a0,s2 - c003bb88: e33db0ef jal ra,c00179ba - c003bb8c: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28278 + c003bd50: 080c addi a1,sp,16 + c003bd52: 86ea mv a3,s10 + c003bd54: 0030 addi a2,sp,8 + c003bd56: 854a mv a0,s2 + c003bd58: e33db0ef jal ra,c0017b8a + c003bd5c: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28286 if (ret != JS_RESOLVE_RES_FOUND) { - c003bb8e: c509 beqz a0,c003bb98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28279 + c003bd5e: c509 beqz a0,c003bd68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28287 js_resolve_export_throw_error(ctx, ret, m1, mi->import_name); - c003bb90: 0049a683 lw a3,4(s3) - c003bb94: 866a mv a2,s10 - c003bb96: b779 j c003bb24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28282 + c003bd60: 0049a683 lw a3,4(s3) + c003bd64: 866a mv a2,s10 + c003bd66: b779 j c003bcf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28290 if (res_me->local_name == JS_ATOM__star_) { - c003bb98: 67a2 ld a5,8(sp) - c003bb9a: 4bd8 lw a4,20(a5) - c003bb9c: 05771a63 bne a4,s7,c003bbf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28286 + c003bd68: 67a2 ld a5,8(sp) + c003bd6a: 4bd8 lw a4,20(a5) + c003bd6c: 05771a63 bne a4,s7,c003bdc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28294 m2 = res_m->req_module_entries[res_me->u.req_module_idx].module; - c003bba0: 4398 lw a4,0(a5) - c003bba2: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28287 + c003bd70: 4398 lw a4,0(a5) + c003bd72: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28295 val = JS_GetModuleNamespace(ctx, m2); - c003bba4: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28286 + c003bd74: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28294 m2 = res_m->req_module_entries[res_me->u.req_module_idx].module; - c003bba6: 0712 slli a4,a4,0x4 - c003bba8: 6f9c ld a5,24(a5) - c003bbaa: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28287 + c003bd76: 0712 slli a4,a4,0x4 + c003bd78: 6f9c ld a5,24(a5) + c003bd7a: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28295 val = JS_GetModuleNamespace(ctx, m2); - c003bbac: 678c ld a1,8(a5) - c003bbae: bf5ed0ef jal ra,c00297a2 - c003bbb2: f42e sd a1,40(sp) - c003bbb4: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28288 + c003bd7c: 678c ld a1,8(a5) + c003bd7e: bf5ed0ef jal ra,c0029972 + c003bd82: f42e sd a1,40(sp) + c003bd84: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28296 if (JS_IsException(val)) - c003bbb6: 2581 sext.w a1,a1 - c003bbb8: f78589e3 beq a1,s8,c003bb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28290 + c003bd86: 2581 sext.w a1,a1 + c003bd88: f78589e3 beq a1,s8,c003bcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28298 var_ref = js_create_module_var(ctx, TRUE); - c003bbbc: 4585 li a1,1 - c003bbbe: 854a mv a0,s2 - c003bbc0: a1bd90ef jal ra,c00155da - c003bbc4: 8d2a mv s10,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28291 + c003bd8c: 4585 li a1,1 + c003bd8e: 854a mv a0,s2 + c003bd90: a1bd90ef jal ra,c00157aa + c003bd94: 8d2a mv s10,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28299 if (!var_ref) { - c003bbc6: e519 bnez a0,c003bbd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28292 + c003bd96: e519 bnez a0,c003bda4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28300 JS_FreeValue(ctx, val); - c003bbc8: 7582 ld a1,32(sp) - c003bbca: 7622 ld a2,40(sp) - c003bbcc: 854a mv a0,s2 - c003bbce: f6bcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28293 + c003bd98: 7582 ld a1,32(sp) + c003bd9a: 7622 ld a2,40(sp) + c003bd9c: 854a mv a0,s2 + c003bd9e: e89cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28301 goto fail; - c003bbd2: bfa1 j c003bb2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28295 + c003bda2: bfa1 j c003bcfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28303 set_value(ctx, &var_ref->value, val); - c003bbd4: 7602 ld a2,32(sp) - c003bbd6: 76a2 ld a3,40(sp) - c003bbd8: 02050593 addi a1,a0,32 - c003bbdc: 854a mv a0,s2 - c003bbde: ba4cc0ef jal ra,c0007f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28296 + c003bda4: 7602 ld a2,32(sp) + c003bda6: 76a2 ld a3,40(sp) + c003bda8: 02050593 addi a1,a0,32 + c003bdac: 854a mv a0,s2 + c003bdae: ac2cc0ef jal ra,c0008070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28304 var_refs[mi->var_idx] = var_ref; - c003bbe2: 0009a783 lw a5,0(s3) - c003bbe6: 078e slli a5,a5,0x3 - c003bbe8: 97d6 add a5,a5,s5 - c003bbea: 01a7b023 sd s10,0(a5) - c003bbee: b779 j c003bb7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28301 + c003bdb2: 0009a783 lw a5,0(s3) + c003bdb6: 078e slli a5,a5,0x3 + c003bdb8: 97d6 add a5,a5,s5 + c003bdba: 01a7b023 sd s10,0(a5) + c003bdbe: b779 j c003bd4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28309 var_ref = res_me->u.local.var_ref; - c003bbf0: 6798 ld a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28302 + c003bdc0: 6798 ld a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28310 if (!var_ref) { - c003bbf2: eb01 bnez a4,c003bc02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28303 + c003bdc2: eb01 bnez a4,c003bdd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28311 p1 = JS_VALUE_GET_OBJ(res_m->func_obj); - c003bbf4: 6742 ld a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28304 + c003bdc4: 6742 ld a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28312 var_ref = p1->u.func.var_refs[res_me->u.local.var_idx]; - c003bbf6: 7734 ld a3,104(a4) - c003bbf8: 4398 lw a4,0(a5) - c003bbfa: 7e9c ld a5,56(a3) - c003bbfc: 070e slli a4,a4,0x3 - c003bbfe: 97ba add a5,a5,a4 - c003bc00: 6398 ld a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28306 + c003bdc6: 7734 ld a3,104(a4) + c003bdc8: 4398 lw a4,0(a5) + c003bdca: 7e9c ld a5,56(a3) + c003bdcc: 070e slli a4,a4,0x3 + c003bdce: 97ba add a5,a5,a4 + c003bdd0: 6398 ld a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28314 var_ref->header.ref_count++; - c003bc02: 431c lw a5,0(a4) - c003bc04: 2785 addiw a5,a5,1 - c003bc06: c31c sw a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28307 + c003bdd2: 431c lw a5,0(a4) + c003bdd4: 2785 addiw a5,a5,1 + c003bdd6: c31c sw a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28315 var_refs[mi->var_idx] = var_ref; - c003bc08: 0009a783 lw a5,0(s3) - c003bc0c: 078e slli a5,a5,0x3 - c003bc0e: 97d6 add a5,a5,s5 - c003bc10: e398 sd a4,0(a5) - c003bc12: b7ad j c003bb7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28319 + c003bdd8: 0009a783 lw a5,0(s3) + c003bddc: 078e slli a5,a5,0x3 + c003bdde: 97d6 add a5,a5,s5 + c003bde0: e398 sd a4,0(a5) + c003bde2: b7ad j c003bd4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28327 JSExportEntry *me = &m->export_entries[i]; - c003bc14: 7418 ld a4,40(s0) - c003bc16: 00569793 slli a5,a3,0x5 - c003bc1a: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28320 + c003bde4: 7418 ld a4,40(s0) + c003bde6: 00569793 slli a5,a3,0x5 + c003bdea: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28328 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c003bc1c: 4b98 lw a4,16(a5) - c003bc1e: eb09 bnez a4,c003bc30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28321 + c003bdec: 4b98 lw a4,16(a5) + c003bdee: eb09 bnez a4,c003be00 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28329 var_ref = var_refs[me->u.local.var_idx]; - c003bc20: 4398 lw a4,0(a5) - c003bc22: 070e slli a4,a4,0x3 - c003bc24: 9756 add a4,a4,s5 - c003bc26: 6318 ld a4,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28322 + c003bdf0: 4398 lw a4,0(a5) + c003bdf2: 070e slli a4,a4,0x3 + c003bdf4: 9756 add a4,a4,s5 + c003bdf6: 6318 ld a4,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28330 var_ref->header.ref_count++; - c003bc28: 4310 lw a2,0(a4) - c003bc2a: 2605 addiw a2,a2,1 - c003bc2c: c310 sw a2,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28323 + c003bdf8: 4310 lw a2,0(a4) + c003bdfa: 2605 addiw a2,a2,1 + c003bdfc: c310 sw a2,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28331 me->u.local.var_ref = var_ref; - c003bc2e: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28318 (discriminator 2) + c003bdfe: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28326 (discriminator 2) for(i = 0; i < m->export_entries_count; i++) { - c003bc30: 2685 addiw a3,a3,1 - c003bc32: b529 j c003ba3c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28335 (discriminator 2) + c003be00: 2685 addiw a3,a3,1 + c003be02: b529 j c003bc0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28343 (discriminator 2) if (m->dfs_index == m->dfs_ancestor_index) { - c003bc34: 00f71c63 bne a4,a5,c003bc4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28340 + c003be04: 00f71c63 bne a4,a5,c003be1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28348 m1->status = JS_MODULE_STATUS_LINKED; - c003bc38: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28338 + c003be08: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28346 m1 = *pstack_top; - c003bc3a: 000a3783 ld a5,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28339 + c003be0a: 000a3783 ld a5,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28347 *pstack_top = m1->stack_prev; - c003bc3e: 6bd4 ld a3,144(a5) - c003bc40: 00da3023 sd a3,0(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28340 + c003be0e: 6bd4 ld a3,144(a5) + c003be10: 00da3023 sd a3,0(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28348 m1->status = JS_MODULE_STATUS_LINKED; - c003bc44: 08e781a3 sb a4,131(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28341 + c003be14: 08e781a3 sb a4,131(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28349 if (m1 == m) - c003bc48: fef419e3 bne s0,a5,c003bc3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28352 -} - c003bc4c: 60aa ld ra,136(sp) - c003bc4e: 640a ld s0,128(sp) - c003bc50: 7946 ld s2,112(sp) - c003bc52: 79a6 ld s3,104(sp) - c003bc54: 7a06 ld s4,96(sp) - c003bc56: 6ae6 ld s5,88(sp) - c003bc58: 6b46 ld s6,80(sp) - c003bc5a: 6ba6 ld s7,72(sp) - c003bc5c: 6c06 ld s8,64(sp) - c003bc5e: 7ce2 ld s9,56(sp) - c003bc60: 7d42 ld s10,48(sp) - c003bc62: 8526 mv a0,s1 - c003bc64: 74e6 ld s1,120(sp) - c003bc66: 6149 addi sp,sp,144 - c003bc68: 8082 ret - -00000000c003bc6a : + c003be18: fef419e3 bne s0,a5,c003be0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28360 +} + c003be1c: 60aa ld ra,136(sp) + c003be1e: 640a ld s0,128(sp) + c003be20: 7946 ld s2,112(sp) + c003be22: 79a6 ld s3,104(sp) + c003be24: 7a06 ld s4,96(sp) + c003be26: 6ae6 ld s5,88(sp) + c003be28: 6b46 ld s6,80(sp) + c003be2a: 6ba6 ld s7,72(sp) + c003be2c: 6c06 ld s8,64(sp) + c003be2e: 7ce2 ld s9,56(sp) + c003be30: 7d42 ld s10,48(sp) + c003be32: 8526 mv a0,s1 + c003be34: 74e6 ld s1,120(sp) + c003be36: 6149 addi sp,sp,144 + c003be38: 8082 ret + +00000000c003be3a : js_async_module_execution_rejected(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28719 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28727 { - c003bc6a: 7159 addi sp,sp,-112 - c003bc6c: eca6 sd s1,88(sp) - c003bc6e: e8ca sd s2,80(sp) - c003bc70: f486 sd ra,104(sp) - c003bc72: f0a2 sd s0,96(sp) - c003bc74: e4ce sd s3,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28720 + c003be3a: 7159 addi sp,sp,-112 + c003be3c: eca6 sd s1,88(sp) + c003be3e: e8ca sd s2,80(sp) + c003be40: f486 sd ra,104(sp) + c003be42: f0a2 sd s0,96(sp) + c003be44: e4ce sd s3,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28728 JSModuleDef *module = JS_VALUE_GET_PTR(func_data[0]); - c003bc76: 00083403 ld s0,0(a6) # 4000 <__clzdi2-0xbfffc000> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28719 + c003be46: 00083403 ld s0,0(a6) # 4000 <__clzdi2-0xbfffc000> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28727 { - c003bc7a: 84aa mv s1,a0 - c003bc7c: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28721 + c003be4a: 84aa mv s1,a0 + c003be4c: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28729 JSValueConst error = argv[0]; - c003bc7e: 6308 ld a0,0(a4) - c003bc80: 670c ld a1,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28727 + c003be4e: 6308 ld a0,0(a4) + c003be50: 670c ld a1,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28735 if (module->status == JS_MODULE_STATUS_EVALUATED) { - c003bc82: 08344783 lbu a5,131(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28719 + c003be52: 08344783 lbu a5,131(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28727 { - c003bc86: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28721 + c003be56: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28729 JSValueConst error = argv[0]; - c003bc88: e82a sd a0,16(sp) - c003bc8a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28727 + c003be58: e82a sd a0,16(sp) + c003be5a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28735 if (module->status == JS_MODULE_STATUS_EVALUATED) { - c003bc8c: 4915 li s2,5 - c003bc8e: 01279f63 bne a5,s2,c003bcac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28728 + c003be5c: 4915 li s2,5 + c003be5e: 01279f63 bne a5,s2,c003be7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28736 assert(module->eval_has_exception); - c003bc92: 0f044783 lbu a5,240(s0) - c003bc96: e3e5 bnez a5,c003bd76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28728 (discriminator 1) - c003bc98: 659d lui a1,0x7 - c003bc9a: 4601 li a2,0 - c003bc9c: 03858593 addi a1,a1,56 # 7038 <__clzdi2-0xbfff8fc8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28732 (discriminator 1) + c003be62: 0f044783 lbu a5,240(s0) + c003be66: e3e5 bnez a5,c003bf46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28736 (discriminator 1) + c003be68: 659d lui a1,0x7 + c003be6a: 4601 li a2,0 + c003be6c: 04058593 addi a1,a1,64 # 7040 <__clzdi2-0xbfff8fc0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 1) assert(module->status == JS_MODULE_STATUS_EVALUATING_ASYNC); - c003bca0: 00021517 auipc a0,0x21 - c003bca4: dd850513 addi a0,a0,-552 # c005ca78 - c003bca8: 571170ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28732 - c003bcac: 4711 li a4,4 - c003bcae: 00e78763 beq a5,a4,c003bcbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28732 (discriminator 1) - c003bcb2: 659d lui a1,0x7 - c003bcb4: 4601 li a2,0 - c003bcb6: 03c58593 addi a1,a1,60 # 703c <__clzdi2-0xbfff8fc4> - c003bcba: b7dd j c003bca0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28733 (discriminator 2) + c003be70: 00021517 auipc a0,0x21 + c003be74: dd850513 addi a0,a0,-552 # c005cc48 + c003be78: 571170ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 + c003be7c: 4711 li a4,4 + c003be7e: 00e78763 beq a5,a4,c003be8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 1) + c003be82: 659d lui a1,0x7 + c003be84: 4601 li a2,0 + c003be86: 04458593 addi a1,a1,68 # 7044 <__clzdi2-0xbfff8fbc> + c003be8a: b7dd j c003be70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28741 (discriminator 2) assert(!module->eval_has_exception); - c003bcbc: 0f044783 lbu a5,240(s0) - c003bcc0: c791 beqz a5,c003bccc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28733 (discriminator 1) - c003bcc2: 659d lui a1,0x7 - c003bcc4: 4601 li a2,0 - c003bcc6: 03d58593 addi a1,a1,61 # 703d <__clzdi2-0xbfff8fc3> - c003bcca: bfd9 j c003bca0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28734 (discriminator 2) + c003be8c: 0f044783 lbu a5,240(s0) + c003be90: c791 beqz a5,c003be9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28741 (discriminator 1) + c003be92: 659d lui a1,0x7 + c003be94: 4601 li a2,0 + c003be96: 04558593 addi a1,a1,69 # 7045 <__clzdi2-0xbfff8fbb> + c003be9a: bfd9 j c003be70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28742 (discriminator 2) assert(module->async_evaluation); - c003bccc: 0ac42783 lw a5,172(s0) - c003bcd0: e791 bnez a5,c003bcdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28734 (discriminator 1) - c003bcd2: 659d lui a1,0x7 - c003bcd4: 4601 li a2,0 - c003bcd6: 03e58593 addi a1,a1,62 # 703e <__clzdi2-0xbfff8fc2> - c003bcda: b7d9 j c003bca0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28736 (discriminator 2) + c003be9c: 0ac42783 lw a5,172(s0) + c003bea0: e791 bnez a5,c003beac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28742 (discriminator 1) + c003bea2: 659d lui a1,0x7 + c003bea4: 4601 li a2,0 + c003bea6: 04658593 addi a1,a1,70 # 7046 <__clzdi2-0xbfff8fba> + c003beaa: b7d9 j c003be70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28744 (discriminator 2) module->eval_has_exception = TRUE; - c003bcdc: 4785 li a5,1 - c003bcde: 0ef40823 sb a5,240(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28737 (discriminator 2) + c003beac: 4785 li a5,1 + c003beae: 0ef40823 sb a5,240(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28745 (discriminator 2) module->eval_exception = JS_DupValue(ctx, error); - c003bce2: 98dca0ef jal ra,c000666e - c003bce6: fc68 sd a0,248(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28738 (discriminator 2) + c003beb2: 8abca0ef jal ra,c000675c + c003beb6: fc68 sd a0,248(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28746 (discriminator 2) module->status = JS_MODULE_STATUS_EVALUATED; - c003bce8: 092401a3 sb s2,131(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28737 (discriminator 2) + c003beb8: 092401a3 sb s2,131(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28745 (discriminator 2) module->eval_exception = JS_DupValue(ctx, error); - c003bcec: 10b43023 sd a1,256(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 2) + c003bebc: 10b43023 sd a1,256(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28748 (discriminator 2) for(i = 0; i < module->async_parent_modules_count; i++) { - c003bcf0: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28743 (discriminator 2) + c003bec0: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28751 (discriminator 2) js_async_module_execution_rejected(ctx, JS_UNDEFINED, 1, &error, 0, - c003bcf2: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 1) + c003bec2: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28748 (discriminator 1) for(i = 0; i < module->async_parent_modules_count; i++) { - c003bcf4: 0a042783 lw a5,160(s0) - c003bcf8: 00f94f63 blt s2,a5,c003bd16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28748 + c003bec4: 0a042783 lw a5,160(s0) + c003bec8: 00f94f63 blt s2,a5,c003bee6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28756 if (!JS_IsUndefined(module->promise)) { - c003bcfc: 0c842703 lw a4,200(s0) - c003bd00: 478d li a5,3 - c003bd02: 06f70a63 beq a4,a5,c003bd76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28750 + c003becc: 0c842703 lw a4,200(s0) + c003bed0: 478d li a5,3 + c003bed2: 06f70a63 beq a4,a5,c003bf46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28758 assert(module->cycle_root == module); - c003bd06: 7c58 ld a4,184(s0) - c003bd08: 04870463 beq a4,s0,c003bd50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28750 (discriminator 1) - c003bd0c: 659d lui a1,0x7 - c003bd0e: 4601 li a2,0 - c003bd10: 04e58593 addi a1,a1,78 # 704e <__clzdi2-0xbfff8fb2> - c003bd14: b771 j c003bca0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28741 (discriminator 3) + c003bed6: 7c58 ld a4,184(s0) + c003bed8: 04870463 beq a4,s0,c003bf20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28758 (discriminator 1) + c003bedc: 659d lui a1,0x7 + c003bede: 4601 li a2,0 + c003bee0: 05658593 addi a1,a1,86 # 7056 <__clzdi2-0xbfff8faa> + c003bee4: b771 j c003be70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28749 (discriminator 3) JSModuleDef *m = module->async_parent_modules[i]; - c003bd16: 6c5c ld a5,152(s0) - c003bd18: 00391713 slli a4,s2,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28742 (discriminator 3) + c003bee6: 6c5c ld a5,152(s0) + c003bee8: 00391713 slli a4,s2,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28750 (discriminator 3) JSValue m_obj = JS_NewModuleValue(ctx, m); - c003bd1c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28741 (discriminator 3) + c003beec: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28749 (discriminator 3) JSModuleDef *m = module->async_parent_modules[i]; - c003bd1e: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28742 (discriminator 3) + c003beee: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28750 (discriminator 3) JSValue m_obj = JS_NewModuleValue(ctx, m); - c003bd20: 638c ld a1,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 3) + c003bef0: 638c ld a1,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28748 (discriminator 3) for(i = 0; i < module->async_parent_modules_count; i++) { - c003bd22: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28742 (discriminator 3) + c003bef2: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28750 (discriminator 3) JSValue m_obj = JS_NewModuleValue(ctx, m); - c003bd24: a7dca0ef jal ra,c00067a0 - c003bd28: f02a sd a0,32(sp) - c003bd2a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28743 (discriminator 3) + c003bef4: 99bca0ef jal ra,c000688e + c003bef8: f02a sd a0,32(sp) + c003befa: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28751 (discriminator 3) js_async_module_execution_rejected(ctx, JS_UNDEFINED, 1, &error, 0, - c003bd2c: 02010813 addi a6,sp,32 - c003bd30: 4781 li a5,0 - c003bd32: 0818 addi a4,sp,16 - c003bd34: 4685 li a3,1 - c003bd36: 460d li a2,3 - c003bd38: 4581 li a1,0 - c003bd3a: 8526 mv a0,s1 - c003bd3c: f802 sd zero,48(sp) - c003bd3e: fc4e sd s3,56(sp) - c003bd40: f2bff0ef jal ra,c003bc6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28745 (discriminator 3) + c003befc: 02010813 addi a6,sp,32 + c003bf00: 4781 li a5,0 + c003bf02: 0818 addi a4,sp,16 + c003bf04: 4685 li a3,1 + c003bf06: 460d li a2,3 + c003bf08: 4581 li a1,0 + c003bf0a: 8526 mv a0,s1 + c003bf0c: f802 sd zero,48(sp) + c003bf0e: fc4e sd s3,56(sp) + c003bf10: f2bff0ef jal ra,c003be3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28753 (discriminator 3) JS_FreeValue(ctx, m_obj); - c003bd44: 7582 ld a1,32(sp) - c003bd46: 7622 ld a2,40(sp) - c003bd48: 8526 mv a0,s1 - c003bd4a: defcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28740 (discriminator 3) + c003bf14: 7582 ld a1,32(sp) + c003bf16: 7622 ld a2,40(sp) + c003bf18: 8526 mv a0,s1 + c003bf1a: d0dcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28748 (discriminator 3) for(i = 0; i < module->async_parent_modules_count; i++) { - c003bd4e: b75d j c003bcf4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28751 (discriminator 2) + c003bf1e: b75d j c003bec4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28759 (discriminator 2) ret_val = JS_Call(ctx, module->resolving_funcs[1], JS_UNDEFINED, - c003bd50: 7470 ld a2,232(s0) - c003bd52: 706c ld a1,224(s0) - c003bd54: fc3e sd a5,56(sp) - c003bd56: 01010813 addi a6,sp,16 - c003bd5a: 4785 li a5,1 - c003bd5c: 4681 li a3,0 - c003bd5e: 470d li a4,3 - c003bd60: 8526 mv a0,s1 - c003bd62: f802 sd zero,48(sp) - c003bd64: 9a3fd0ef jal ra,c0039706 - c003bd68: 862e mv a2,a1 - c003bd6a: f02a sd a0,32(sp) - c003bd6c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28753 (discriminator 2) + c003bf20: 7470 ld a2,232(s0) + c003bf22: 706c ld a1,224(s0) + c003bf24: fc3e sd a5,56(sp) + c003bf26: 01010813 addi a6,sp,16 + c003bf2a: 4785 li a5,1 + c003bf2c: 4681 li a3,0 + c003bf2e: 470d li a4,3 + c003bf30: 8526 mv a0,s1 + c003bf32: f802 sd zero,48(sp) + c003bf34: 9a3fd0ef jal ra,c00398d6 + c003bf38: 862e mv a2,a1 + c003bf3a: f02a sd a0,32(sp) + c003bf3c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28761 (discriminator 2) JS_FreeValue(ctx, ret_val); - c003bd6e: 85aa mv a1,a0 - c003bd70: 8526 mv a0,s1 - c003bd72: dc7cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28756 -} - c003bd76: 70a6 ld ra,104(sp) - c003bd78: 7406 ld s0,96(sp) - c003bd7a: 64e6 ld s1,88(sp) - c003bd7c: 6946 ld s2,80(sp) - c003bd7e: 69a6 ld s3,72(sp) - c003bd80: 4501 li a0,0 - c003bd82: 458d li a1,3 - c003bd84: 6165 addi sp,sp,112 - c003bd86: 8082 ret - -00000000c003bd88 : + c003bf3e: 85aa mv a1,a0 + c003bf40: 8526 mv a0,s1 + c003bf42: ce5cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28764 +} + c003bf46: 70a6 ld ra,104(sp) + c003bf48: 7406 ld s0,96(sp) + c003bf4a: 64e6 ld s1,88(sp) + c003bf4c: 6946 ld s2,80(sp) + c003bf4e: 69a6 ld s3,72(sp) + c003bf50: 4501 li a0,0 + c003bf52: 458d li a1,3 + c003bf54: 6165 addi sp,sp,112 + c003bf56: 8082 ret + +00000000c003bf58 : js_set_module_evaluated(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28645 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28653 if (!JS_IsUndefined(m->promise)) { - c003bd88: 0c85a703 lw a4,200(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28644 + c003bf58: 0c85a703 lw a4,200(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28652 m->status = JS_MODULE_STATUS_EVALUATED; - c003bd8c: 4795 li a5,5 - c003bd8e: 08f581a3 sb a5,131(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28645 + c003bf5c: 4795 li a5,5 + c003bf5e: 08f581a3 sb a5,131(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28653 if (!JS_IsUndefined(m->promise)) { - c003bd92: 478d li a5,3 - c003bd94: 04f70763 beq a4,a5,c003bde2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28643 + c003bf62: 478d li a5,3 + c003bf64: 04f70763 beq a4,a5,c003bfb2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28651 { - c003bd98: 7139 addi sp,sp,-64 - c003bd9a: fc06 sd ra,56(sp) - c003bd9c: f822 sd s0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28647 + c003bf68: 7139 addi sp,sp,-64 + c003bf6a: fc06 sd ra,56(sp) + c003bf6c: f822 sd s0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28655 assert(m->cycle_root == m); - c003bd9e: 7dd0 ld a2,184(a1) - c003bda0: 00b60b63 beq a2,a1,c003bdb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28647 (discriminator 1) - c003bda4: 659d lui a1,0x7 - c003bda6: 4601 li a2,0 - c003bda8: 159d addi a1,a1,-25 - c003bdaa: 00021517 auipc a0,0x21 - c003bdae: cce50513 addi a0,a0,-818 # c005ca78 - c003bdb2: 467170ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28649 + c003bf6e: 7dd0 ld a2,184(a1) + c003bf70: 00b60b63 beq a2,a1,c003bf86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28655 (discriminator 1) + c003bf74: 659d lui a1,0x7 + c003bf76: 4601 li a2,0 + c003bf78: 15bd addi a1,a1,-17 + c003bf7a: 00021517 auipc a0,0x21 + c003bf7e: cce50513 addi a0,a0,-818 # c005cc48 + c003bf82: 467170ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28657 ret_val = JS_Call(ctx, m->resolving_funcs[0], JS_UNDEFINED, - c003bdb6: 6a6c ld a1,208(a2) - c003bdb8: 6e70 ld a2,216(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28648 + c003bf86: 6a6c ld a1,208(a2) + c003bf88: 6e70 ld a2,216(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28656 value = JS_UNDEFINED; - c003bdba: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28649 + c003bf8a: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28657 ret_val = JS_Call(ctx, m->resolving_funcs[0], JS_UNDEFINED, - c003bdbc: f43e sd a5,40(sp) - c003bdbe: 880a mv a6,sp - c003bdc0: 4785 li a5,1 - c003bdc2: 4681 li a3,0 - c003bdc4: 470d li a4,3 - c003bdc6: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28648 + c003bf8c: f43e sd a5,40(sp) + c003bf8e: 880a mv a6,sp + c003bf90: 4785 li a5,1 + c003bf92: 4681 li a3,0 + c003bf94: 470d li a4,3 + c003bf96: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28656 value = JS_UNDEFINED; - c003bdc8: e002 sd zero,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28649 + c003bf98: e002 sd zero,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28657 ret_val = JS_Call(ctx, m->resolving_funcs[0], JS_UNDEFINED, - c003bdca: f002 sd zero,32(sp) - c003bdcc: 93bfd0ef jal ra,c0039706 - c003bdd0: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28651 + c003bf9a: f002 sd zero,32(sp) + c003bf9c: 93bfd0ef jal ra,c00398d6 + c003bfa0: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28659 JS_FreeValue(ctx, ret_val); - c003bdd2: 85aa mv a1,a0 - c003bdd4: 8522 mv a0,s0 - c003bdd6: d63cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28653 -} - c003bdda: 70e2 ld ra,56(sp) - c003bddc: 7442 ld s0,48(sp) - c003bdde: 6121 addi sp,sp,64 - c003bde0: 8082 ret - c003bde2: 8082 ret - -00000000c003bde4 : + c003bfa2: 85aa mv a1,a0 + c003bfa4: 8522 mv a0,s0 + c003bfa6: c81cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28661 +} + c003bfaa: 70e2 ld ra,56(sp) + c003bfac: 7442 ld s0,48(sp) + c003bfae: 6121 addi sp,sp,64 + c003bfb0: 8082 ret + c003bfb2: 8082 ret + +00000000c003bfb4 : js_promise_resolve(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48234 -{ - c003bde4: 7171 addi sp,sp,-176 - c003bde6: ed26 sd s1,152(sp) - c003bde8: e432 sd a2,8(sp) - c003bdea: 84be mv s1,a5 - c003bdec: f506 sd ra,168(sp) - c003bdee: f122 sd s0,160(sp) - c003bdf0: e94a sd s2,144(sp) - c003bdf2: e54e sd s3,136(sp) - c003bdf4: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48242 +{ + c003bfb4: 7171 addi sp,sp,-176 + c003bfb6: ed26 sd s1,152(sp) + c003bfb8: e432 sd a2,8(sp) + c003bfba: 84be mv s1,a5 + c003bfbc: f506 sd ra,168(sp) + c003bfbe: f122 sd s0,160(sp) + c003bfc0: e94a sd s2,144(sp) + c003bfc2: e54e sd s3,136(sp) + c003bfc4: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48246 if (!JS_IsObject(this_val)) - c003bdf6: 2601 sext.w a2,a2 - c003bdf8: 57fd li a5,-1 - c003bdfa: 00f60a63 beq a2,a5,c003be0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 + c003bfc6: 2601 sext.w a2,a2 + c003bfc8: 57fd li a5,-1 + c003bfca: 00f60a63 beq a2,a5,c003bfde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48271 } - c003bdfe: 740a ld s0,160(sp) - c003be00: 70aa ld ra,168(sp) - c003be02: 64ea ld s1,152(sp) - c003be04: 694a ld s2,144(sp) - c003be06: 69aa ld s3,136(sp) - c003be08: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48239 + c003bfce: 740a ld s0,160(sp) + c003bfd0: 70aa ld ra,168(sp) + c003bfd2: 64ea ld s1,152(sp) + c003bfd4: 694a ld s2,144(sp) + c003bfd6: 69aa ld s3,136(sp) + c003bfd8: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48247 return JS_ThrowTypeErrorNotAnObject(ctx); - c003be0a: b6fd706f j c0013978 - c003be0e: 842a mv s0,a0 - c003be10: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48240 + c003bfda: a8dd706f j c0013a66 + c003bfde: 842a mv s0,a0 + c003bfe0: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48248 if (!is_reject && JS_GetOpaque(argv[0], JS_CLASS_PROMISE)) { - c003be12: e4c9 bnez s1,c003be9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48240 (discriminator 1) - c003be14: 6308 ld a0,0(a4) - c003be16: 670c ld a1,8(a4) - c003be18: 02d00613 li a2,45 - c003be1c: a97ce0ef jal ra,c000a8b2 - c003be20: cd35 beqz a0,c003be9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48243 + c003bfe2: e4c9 bnez s1,c003c06c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48248 (discriminator 1) + c003bfe4: 6308 ld a0,0(a4) + c003bfe6: 670c ld a1,8(a4) + c003bfe8: 02d00613 li a2,45 + c003bfec: 9b5ce0ef jal ra,c000a9a0 + c003bff0: cd35 beqz a0,c003c06c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48251 ctor = JS_GetProperty(ctx, argv[0], JS_ATOM_constructor); - c003be22: 00093703 ld a4,0(s2) - c003be26: 00893783 ld a5,8(s2) + c003bff2: 00093703 ld a4,0(s2) + c003bff6: 00893783 ld a5,8(s2) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003be2a: 4801 li a6,0 - c003be2c: 85ba mv a1,a4 - c003be2e: 863e mv a2,a5 - c003be30: 03d00693 li a3,61 - c003be34: 8522 mv a0,s0 - c003be36: f0ba sd a4,96(sp) - c003be38: f4be sd a5,104(sp) - c003be3a: a09d50ef jal ra,c0011842 - c003be3e: e8aa sd a0,80(sp) - c003be40: ecae sd a1,88(sp) - c003be42: f82a sd a0,48(sp) - c003be44: fc2e sd a1,56(sp) + c003bffa: 4801 li a6,0 + c003bffc: 85ba mv a1,a4 + c003bffe: 863e mv a2,a5 + c003c000: 03d00693 li a3,61 + c003c004: 8522 mv a0,s0 + c003c006: f0ba sd a4,96(sp) + c003c008: f4be sd a5,104(sp) + c003c00a: 927d50ef jal ra,c0011930 + c003c00e: e8aa sd a0,80(sp) + c003c010: ecae sd a1,88(sp) + c003c012: f82a sd a0,48(sp) + c003c014: fc2e sd a1,56(sp) js_promise_resolve(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48244 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48252 if (JS_IsException(ctor)) - c003be46: 0005871b sext.w a4,a1 - c003be4a: 4799 li a5,6 + c003c016: 0005871b sext.w a4,a1 + c003c01a: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003be4c: 862e mv a2,a1 + c003c01c: 862e mv a2,a1 js_promise_resolve(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48244 - c003be4e: 00f71d63 bne a4,a5,c003be68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48245 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48252 + c003c01e: 00f71d63 bne a4,a5,c003c038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48253 return ctor; - c003be52: e0aa sd a0,64(sp) - c003be54: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 + c003c022: e0aa sd a0,64(sp) + c003c024: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48271 } - c003be56: 70aa ld ra,168(sp) - c003be58: 740a ld s0,160(sp) - c003be5a: 6506 ld a0,64(sp) - c003be5c: 65a6 ld a1,72(sp) - c003be5e: 64ea ld s1,152(sp) - c003be60: 694a ld s2,144(sp) - c003be62: 69aa ld s3,136(sp) - c003be64: 614d addi sp,sp,176 - c003be66: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48246 + c003c026: 70aa ld ra,168(sp) + c003c028: 740a ld s0,160(sp) + c003c02a: 6506 ld a0,64(sp) + c003c02c: 65a6 ld a1,72(sp) + c003c02e: 64ea ld s1,152(sp) + c003c030: 694a ld s2,144(sp) + c003c032: 69aa ld s3,136(sp) + c003c034: 614d addi sp,sp,176 + c003c036: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48254 is_same = js_same_value(ctx, ctor, this_val); - c003be68: 6682 ld a3,0(sp) - c003be6a: 6722 ld a4,8(sp) - c003be6c: 85aa mv a1,a0 - c003be6e: 8522 mv a0,s0 - c003be70: e53cb0ef jal ra,c0007cc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48247 + c003c038: 6682 ld a3,0(sp) + c003c03a: 6722 ld a4,8(sp) + c003c03c: 85aa mv a1,a0 + c003c03e: 8522 mv a0,s0 + c003c040: d71cb0ef jal ra,c0007db0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48255 JS_FreeValue(ctx, ctor); - c003be74: 75c2 ld a1,48(sp) - c003be76: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48246 + c003c044: 75c2 ld a1,48(sp) + c003c046: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48254 is_same = js_same_value(ctx, ctor, this_val); - c003be78: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48247 + c003c048: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48255 JS_FreeValue(ctx, ctor); - c003be7a: 8522 mv a0,s0 - c003be7c: cbdcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48248 + c003c04a: 8522 mv a0,s0 + c003c04c: bdbcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48256 if (is_same) - c003be80: 00098e63 beqz s3,c003be9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 + c003c050: 00098e63 beqz s3,c003c06c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48271 } - c003be84: 740a ld s0,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48249 + c003c054: 740a ld s0,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48257 return JS_DupValue(ctx, argv[0]); - c003be86: 00093503 ld a0,0(s2) - c003be8a: 00893583 ld a1,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 + c003c056: 00093503 ld a0,0(s2) + c003c05a: 00893583 ld a1,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48271 } - c003be8e: 70aa ld ra,168(sp) - c003be90: 64ea ld s1,152(sp) - c003be92: 694a ld s2,144(sp) - c003be94: 69aa ld s3,136(sp) - c003be96: 614d addi sp,sp,176 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48249 + c003c05e: 70aa ld ra,168(sp) + c003c060: 64ea ld s1,152(sp) + c003c062: 694a ld s2,144(sp) + c003c064: 69aa ld s3,136(sp) + c003c066: 614d addi sp,sp,176 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48257 return JS_DupValue(ctx, argv[0]); - c003be98: fd6ca06f j c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48251 + c003c068: ef4ca06f j c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48259 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003be9c: 6602 ld a2,0(sp) - c003be9e: 66a2 ld a3,8(sp) - c003bea0: 108c addi a1,sp,96 - c003bea2: 8522 mv a0,s0 - c003bea4: e82fe0ef jal ra,c003a526 - c003bea8: e82a sd a0,16(sp) - c003beaa: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48252 + c003c06c: 6602 ld a2,0(sp) + c003c06e: 66a2 ld a3,8(sp) + c003c070: 108c addi a1,sp,96 + c003c072: 8522 mv a0,s0 + c003c074: e82fe0ef jal ra,c003a6f6 + c003c078: e82a sd a0,16(sp) + c003c07a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48260 if (JS_IsException(result_promise)) - c003beac: 0005879b sext.w a5,a1 - c003beb0: 4999 li s3,6 - c003beb2: 01379563 bne a5,s3,c003bebc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48253 + c003c07c: 0005879b sext.w a5,a1 + c003c080: 4999 li s3,6 + c003c082: 01379563 bne a5,s3,c003c08c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48261 return result_promise; - c003beb6: e0aa sd a0,64(sp) - c003beb8: e4ae sd a1,72(sp) - c003beba: bf71 j c003be56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48254 + c003c086: e0aa sd a0,64(sp) + c003c088: e4ae sd a1,72(sp) + c003c08a: bf71 j c003c026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48262 ret = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, 1, argv); - c003bebc: 478d li a5,3 - c003bebe: fc3e sd a5,56(sp) - c003bec0: 0492 slli s1,s1,0x4 - c003bec2: 011c addi a5,sp,128 - c003bec4: 94be add s1,s1,a5 - c003bec6: fe84b603 ld a2,-24(s1) - c003beca: fe04b583 ld a1,-32(s1) - c003bece: 884a mv a6,s2 - c003bed0: 4785 li a5,1 - c003bed2: 4681 li a3,0 - c003bed4: 470d li a4,3 - c003bed6: 8522 mv a0,s0 - c003bed8: f802 sd zero,48(sp) - c003beda: 82dfd0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48255 + c003c08c: 478d li a5,3 + c003c08e: fc3e sd a5,56(sp) + c003c090: 0492 slli s1,s1,0x4 + c003c092: 011c addi a5,sp,128 + c003c094: 94be add s1,s1,a5 + c003c096: fe84b603 ld a2,-24(s1) + c003c09a: fe04b583 ld a1,-32(s1) + c003c09e: 884a mv a6,s2 + c003c0a0: 4785 li a5,1 + c003c0a2: 4681 li a3,0 + c003c0a4: 470d li a4,3 + c003c0a6: 8522 mv a0,s0 + c003c0a8: f802 sd zero,48(sp) + c003c0aa: 82dfd0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 JS_FreeValue(ctx, resolving_funcs[0]); - c003bede: 7626 ld a2,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48254 + c003c0ae: 7626 ld a2,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48262 ret = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, 1, argv); - c003bee0: 84ae mv s1,a1 - c003bee2: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48255 + c003c0b0: 84ae mv s1,a1 + c003c0b2: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 JS_FreeValue(ctx, resolving_funcs[0]); - c003bee4: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48254 + c003c0b4: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48262 ret = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, 1, argv); - c003bee6: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48255 + c003c0b6: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48263 JS_FreeValue(ctx, resolving_funcs[0]); - c003bee8: 8522 mv a0,s0 - c003beea: c4fcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48256 + c003c0b8: 8522 mv a0,s0 + c003c0ba: b6dcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48264 JS_FreeValue(ctx, resolving_funcs[1]); - c003beee: 75c6 ld a1,112(sp) - c003bef0: 7666 ld a2,120(sp) - c003bef2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48257 + c003c0be: 75c6 ld a1,112(sp) + c003c0c0: 7666 ld a2,120(sp) + c003c0c2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48265 if (JS_IsException(ret)) { - c003bef4: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48256 + c003c0c4: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48264 JS_FreeValue(ctx, resolving_funcs[1]); - c003bef6: c43cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48257 + c003c0c6: b61cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48265 if (JS_IsException(ret)) { - c003befa: 01349c63 bne s1,s3,c003bf12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48258 + c003c0ca: 01349c63 bne s1,s3,c003c0e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48266 JS_FreeValue(ctx, result_promise); - c003befe: 65c2 ld a1,16(sp) - c003bf00: 6662 ld a2,24(sp) - c003bf02: 8522 mv a0,s0 - c003bf04: c35cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48259 + c003c0ce: 65c2 ld a1,16(sp) + c003c0d0: 6662 ld a2,24(sp) + c003c0d2: 8522 mv a0,s0 + c003c0d4: b53cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48267 return ret; - c003bf08: 7782 ld a5,32(sp) - c003bf0a: e0be sd a5,64(sp) - c003bf0c: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48262 + c003c0d8: 7782 ld a5,32(sp) + c003c0da: e0be sd a5,64(sp) + c003c0dc: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48270 return result_promise; - c003bf0e: e4be sd a5,72(sp) - c003bf10: b799 j c003be56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48261 + c003c0de: e4be sd a5,72(sp) + c003c0e0: b799 j c003c026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48269 JS_FreeValue(ctx, ret); - c003bf12: 7582 ld a1,32(sp) - c003bf14: 7622 ld a2,40(sp) - c003bf16: 8522 mv a0,s0 - c003bf18: c21cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48262 + c003c0e2: 7582 ld a1,32(sp) + c003c0e4: 7622 ld a2,40(sp) + c003c0e6: 8522 mv a0,s0 + c003c0e8: b3fcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48270 return result_promise; - c003bf1c: 67c2 ld a5,16(sp) - c003bf1e: e0be sd a5,64(sp) - c003bf20: 67e2 ld a5,24(sp) - c003bf22: b7f5 j c003bf0e + c003c0ec: 67c2 ld a5,16(sp) + c003c0ee: e0be sd a5,64(sp) + c003c0f0: 67e2 ld a5,24(sp) + c003c0f2: b7f5 j c003c0de -00000000c003bf24 : +00000000c003c0f4 : js_async_function_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19185 -{ - c003bf24: 7135 addi sp,sp,-160 - c003bf26: e922 sd s0,144(sp) - c003bf28: e526 sd s1,136(sp) - c003bf2a: ed06 sd ra,152(sp) - c003bf2c: 84ae mv s1,a1 - c003bf2e: e14a sd s2,128(sp) - c003bf30: fcce sd s3,120(sp) - c003bf32: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19193 +{ + c003c0f4: 7135 addi sp,sp,-160 + c003c0f6: e922 sd s0,144(sp) + c003c0f8: e526 sd s1,136(sp) + c003c0fa: ed06 sd ra,152(sp) + c003c0fc: 84ae mv s1,a1 + c003c0fe: e14a sd s2,128(sp) + c003c100: fcce sd s3,120(sp) + c003c102: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19196 func_ret = async_func_resume(ctx, s); - c003bf34: fa9fb0ef jal ra,c0037edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19189 + c003c104: fa9fb0ef jal ra,c00380ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19197 if (s->is_completed) { - c003bf38: 589c lw a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19188 + c003c108: 589c lw a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19196 func_ret = async_func_resume(ctx, s); - c003bf3a: e02a sd a0,0(sp) - c003bf3c: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19189 + c003c10a: e02a sd a0,0(sp) + c003c10c: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19197 if (s->is_completed) { - c003bf3e: cbbd beqz a5,c003bfb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19190 + c003c10e: cbbd beqz a5,c003c184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19198 if (JS_IsException(func_ret)) { - c003bf40: 2581 sext.w a1,a1 - c003bf42: 4799 li a5,6 - c003bf44: 04f59763 bne a1,a5,c003bf92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19193 + c003c110: 2581 sext.w a1,a1 + c003c112: 4799 li a5,6 + c003c114: 04f59763 bne a1,a5,c003c162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19201 error = JS_GetException(ctx); - c003bf48: 8522 mv a0,s0 - c003bf4a: f7ece0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19194 + c003c118: 8522 mv a0,s0 + c003c11a: e9cce0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 ret2 = JS_Call(ctx, s->resolving_funcs[1], JS_UNDEFINED, - c003bf4e: 68b0 ld a2,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19193 + c003c11e: 68b0 ld a2,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19201 error = JS_GetException(ctx); - c003bf50: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19194 + c003c120: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 ret2 = JS_Call(ctx, s->resolving_funcs[1], JS_UNDEFINED, - c003bf52: 64ac ld a1,72(s1) - c003bf54: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19193 + c003c122: 64ac ld a1,72(s1) + c003c124: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19201 error = JS_GetException(ctx); - c003bf56: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19194 + c003c126: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 ret2 = JS_Call(ctx, s->resolving_funcs[1], JS_UNDEFINED, - c003bf58: ecbe sd a5,88(sp) - c003bf5a: 03010813 addi a6,sp,48 - c003bf5e: 4785 li a5,1 - c003bf60: 4681 li a3,0 - c003bf62: 470d li a4,3 - c003bf64: 8522 mv a0,s0 - c003bf66: e882 sd zero,80(sp) - c003bf68: f9efd0ef jal ra,c0039706 - c003bf6c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19196 + c003c128: ecbe sd a5,88(sp) + c003c12a: 03010813 addi a6,sp,48 + c003c12e: 4785 li a5,1 + c003c130: 4681 li a3,0 + c003c132: 470d li a4,3 + c003c134: 8522 mv a0,s0 + c003c136: e882 sd zero,80(sp) + c003c138: f9efd0ef jal ra,c00398d6 + c003c13c: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19204 JS_FreeValue(ctx, error); - c003bf6e: 7662 ld a2,56(sp) - c003bf70: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19194 + c003c13e: 7662 ld a2,56(sp) + c003c140: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 ret2 = JS_Call(ctx, s->resolving_funcs[1], JS_UNDEFINED, - c003bf72: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 (discriminator 2) + c003c142: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19210 (discriminator 2) JS_FreeValue(ctx, func_ret); - c003bf74: 8522 mv a0,s0 - c003bf76: bc3cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19203 (discriminator 2) + c003c144: 8522 mv a0,s0 + c003c146: ae1cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19211 (discriminator 2) JS_FreeValue(ctx, ret2); /* XXX: what to do if exception ? */ - c003bf7a: 7582 ld a1,32(sp) - c003bf7c: 7622 ld a2,40(sp) - c003bf7e: 8522 mv a0,s0 - c003bf80: bb9cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19237 -} - c003bf84: 60ea ld ra,152(sp) - c003bf86: 644a ld s0,144(sp) - c003bf88: 64aa ld s1,136(sp) - c003bf8a: 690a ld s2,128(sp) - c003bf8c: 79e6 ld s3,120(sp) - c003bf8e: 610d addi sp,sp,160 - c003bf90: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19200 (discriminator 2) + c003c14a: 7582 ld a1,32(sp) + c003c14c: 7622 ld a2,40(sp) + c003c14e: 8522 mv a0,s0 + c003c150: ad7cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19245 +} + c003c154: 60ea ld ra,152(sp) + c003c156: 644a ld s0,144(sp) + c003c158: 64aa ld s1,136(sp) + c003c15a: 690a ld s2,128(sp) + c003c15c: 79e6 ld s3,120(sp) + c003c15e: 610d addi sp,sp,160 + c003c160: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19208 (discriminator 2) ret2 = JS_Call(ctx, s->resolving_funcs[0], JS_UNDEFINED, - c003bf92: 60b0 ld a2,64(s1) - c003bf94: 7c8c ld a1,56(s1) - c003bf96: 478d li a5,3 - c003bf98: ecbe sd a5,88(sp) - c003bf9a: 880a mv a6,sp - c003bf9c: 4785 li a5,1 - c003bf9e: 4681 li a3,0 - c003bfa0: 470d li a4,3 - c003bfa2: 8522 mv a0,s0 - c003bfa4: e882 sd zero,80(sp) - c003bfa6: f60fd0ef jal ra,c0039706 - c003bfaa: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19202 (discriminator 2) + c003c162: 60b0 ld a2,64(s1) + c003c164: 7c8c ld a1,56(s1) + c003c166: 478d li a5,3 + c003c168: ecbe sd a5,88(sp) + c003c16a: 880a mv a6,sp + c003c16c: 4785 li a5,1 + c003c16e: 4681 li a3,0 + c003c170: 470d li a4,3 + c003c172: 8522 mv a0,s0 + c003c174: e882 sd zero,80(sp) + c003c176: f60fd0ef jal ra,c00398d6 + c003c17a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19210 (discriminator 2) JS_FreeValue(ctx, func_ret); - c003bfac: 6622 ld a2,8(sp) - c003bfae: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19200 (discriminator 2) + c003c17c: 6622 ld a2,8(sp) + c003c17e: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19208 (discriminator 2) ret2 = JS_Call(ctx, s->resolving_funcs[0], JS_UNDEFINED, - c003bfb0: f02a sd a0,32(sp) - c003bfb2: b7c9 j c003bf74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19209 + c003c180: f02a sd a0,32(sp) + c003c182: b7c9 j c003c144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19217 value = s->frame.cur_sp[-1]; - c003bfb4: 70dc ld a5,160(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19210 + c003c184: 70dc ld a5,160(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19218 s->frame.cur_sp[-1] = JS_UNDEFINED; - c003bfb6: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19213 + c003c186: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19221 JS_FreeValue(ctx, func_ret); /* not used */ - c003bfb8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19209 - value = s->frame.cur_sp[-1]; - c003bfba: ff07b703 ld a4,-16(a5) + c003c188: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19217 + value = s->frame.cur_sp[-1]; + c003c18a: ff07b703 ld a4,-16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19225 if (JS_IsException(promise)) - c003bfbe: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19209 + c003c18e: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19217 value = s->frame.cur_sp[-1]; - c003bfc0: e83a sd a4,16(sp) - c003bfc2: ff87b703 ld a4,-8(a5) - c003bfc6: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19210 + c003c190: e83a sd a4,16(sp) + c003c192: ff87b703 ld a4,-8(a5) + c003c196: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19218 s->frame.cur_sp[-1] = JS_UNDEFINED; - c003bfc8: fe07b823 sd zero,-16(a5) - c003bfcc: ff27bc23 sd s2,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19213 + c003c198: fe07b823 sd zero,-16(a5) + c003c19c: ff27bc23 sd s2,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19221 JS_FreeValue(ctx, func_ret); /* not used */ - c003bfd0: 6582 ld a1,0(sp) - c003bfd2: 6622 ld a2,8(sp) - c003bfd4: b65cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19214 + c003c1a0: 6582 ld a1,0(sp) + c003c1a2: 6622 ld a2,8(sp) + c003c1a4: a83cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19222 promise = js_promise_resolve(ctx, ctx->promise_ctor, - c003bfd8: 6850 ld a2,144(s0) - c003bfda: 644c ld a1,136(s0) - c003bfdc: 4781 li a5,0 - c003bfde: 0818 addi a4,sp,16 - c003bfe0: 4685 li a3,1 - c003bfe2: 8522 mv a0,s0 - c003bfe4: e01ff0ef jal ra,c003bde4 - c003bfe8: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19216 + c003c1a8: 6850 ld a2,144(s0) + c003c1aa: 644c ld a1,136(s0) + c003c1ac: 4781 li a5,0 + c003c1ae: 0818 addi a4,sp,16 + c003c1b0: 4685 li a3,1 + c003c1b2: 8522 mv a0,s0 + c003c1b4: e01ff0ef jal ra,c003bfb4 + c003c1b8: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19224 JS_FreeValue(ctx, value); - c003bfea: 6662 ld a2,24(sp) - c003bfec: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19214 + c003c1ba: 6662 ld a2,24(sp) + c003c1bc: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19222 promise = js_promise_resolve(ctx, ctx->promise_ctor, - c003bfee: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19216 + c003c1be: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19224 JS_FreeValue(ctx, value); - c003bff0: 8522 mv a0,s0 - c003bff2: b47cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19217 + c003c1c0: 8522 mv a0,s0 + c003c1c2: a65cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19225 if (JS_IsException(promise)) - c003bff6: 57a2 lw a5,40(sp) - c003bff8: f53788e3 beq a5,s3,c003bf48 + c003c1c6: 57a2 lw a5,40(sp) + c003c1c8: f53788e3 beq a5,s3,c003c118 js_async_function_resolve_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 JS_NewObjectProtoClass(ctx, ctx->function_proto, - c003bffc: 642c ld a1,72(s0) - c003bffe: 6830 ld a2,80(s0) - c003c000: 03100693 li a3,49 - c003c004: 8522 mv a0,s0 - c003c006: f82da0ef jal ra,c0016788 - c003c00a: fc2e sd a1,56(sp) - c003c00c: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19172 + c003c1cc: 642c ld a1,72(s0) + c003c1ce: 6830 ld a2,80(s0) + c003c1d0: 03100693 li a3,49 + c003c1d4: 8522 mv a0,s0 + c003c1d6: f82da0ef jal ra,c0016958 + c003c1da: fc2e sd a1,56(sp) + c003c1dc: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19180 if (JS_IsException(resolving_funcs[i])) { - c003c00e: 2581 sext.w a1,a1 - c003c010: 07358963 beq a1,s3,c003c082 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 + c003c1de: 2581 sext.w a1,a1 + c003c1e0: 07358963 beq a1,s3,c003c252 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19186 s->header.ref_count++; - c003c014: 409c lw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19170 - JS_NewObjectProtoClass(ctx, ctx->function_proto, - c003c016: 03200693 li a3,50 + c003c1e4: 409c lw a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 + JS_NewObjectProtoClass(ctx, ctx->function_proto, + c003c1e6: 03200693 li a3,50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19186 s->header.ref_count++; - c003c01a: 2785 addiw a5,a5,1 - c003c01c: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19179 + c003c1ea: 2785 addiw a5,a5,1 + c003c1ec: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19187 p->u.async_function_data = s; - c003c01e: f904 sd s1,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19170 + c003c1ee: f904 sd s1,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 JS_NewObjectProtoClass(ctx, ctx->function_proto, - c003c020: 642c ld a1,72(s0) - c003c022: 6830 ld a2,80(s0) - c003c024: 8522 mv a0,s0 - c003c026: f62da0ef jal ra,c0016788 - c003c02a: e4ae sd a1,72(sp) - c003c02c: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19172 + c003c1f0: 642c ld a1,72(s0) + c003c1f2: 6830 ld a2,80(s0) + c003c1f4: 8522 mv a0,s0 + c003c1f6: f62da0ef jal ra,c0016958 + c003c1fa: e4ae sd a1,72(sp) + c003c1fc: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19180 if (JS_IsException(resolving_funcs[i])) { - c003c02e: 2581 sext.w a1,a1 - c003c030: 05358463 beq a1,s3,c003c078 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 + c003c1fe: 2581 sext.w a1,a1 + c003c200: 05358463 beq a1,s3,c003c248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19186 s->header.ref_count++; - c003c034: 409c lw a5,0(s1) + c003c204: 409c lw a5,0(s1) js_async_function_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19236 res = perform_promise_then(ctx, promise, - c003c036: 7582 ld a1,32(sp) - c003c038: 7622 ld a2,40(sp) + c003c206: 7582 ld a1,32(sp) + c003c208: 7622 ld a2,40(sp) js_async_function_resolve_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19178 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19186 s->header.ref_count++; - c003c03a: 2785 addiw a5,a5,1 - c003c03c: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19179 + c003c20a: 2785 addiw a5,a5,1 + c003c20c: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19187 p->u.async_function_data = s; - c003c03e: f904 sd s1,48(a0) + c003c20e: f904 sd s1,48(a0) js_async_function_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19228 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19236 res = perform_promise_then(ctx, promise, - c003c040: 0898 addi a4,sp,80 - c003c042: 1814 addi a3,sp,48 - c003c044: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19227 + c003c210: 0898 addi a4,sp,80 + c003c212: 1814 addi a3,sp,48 + c003c214: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19235 resolving_funcs1[i] = JS_UNDEFINED; - c003c046: ecca sd s2,88(sp) - c003c048: f4ca sd s2,104(sp) - c003c04a: e882 sd zero,80(sp) - c003c04c: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19228 + c003c216: ecca sd s2,88(sp) + c003c218: f4ca sd s2,104(sp) + c003c21a: e882 sd zero,80(sp) + c003c21c: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19236 res = perform_promise_then(ctx, promise, - c003c04e: eb5d90ef jal ra,c0015f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19231 + c003c21e: eb5d90ef jal ra,c00160d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19239 JS_FreeValue(ctx, promise); - c003c052: 7582 ld a1,32(sp) - c003c054: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19228 + c003c222: 7582 ld a1,32(sp) + c003c224: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19236 res = perform_promise_then(ctx, promise, - c003c056: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19231 + c003c226: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19239 JS_FreeValue(ctx, promise); - c003c058: 8522 mv a0,s0 - c003c05a: adfcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19233 + c003c228: 8522 mv a0,s0 + c003c22a: 9fdcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19241 JS_FreeValue(ctx, resolving_funcs[i]); - c003c05e: 75c2 ld a1,48(sp) - c003c060: 7662 ld a2,56(sp) - c003c062: 8522 mv a0,s0 - c003c064: ad5cb0ef jal ra,c0007b38 - c003c068: 6586 ld a1,64(sp) - c003c06a: 6626 ld a2,72(sp) - c003c06c: 8522 mv a0,s0 - c003c06e: acbcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19234 + c003c22e: 75c2 ld a1,48(sp) + c003c230: 7662 ld a2,56(sp) + c003c232: 8522 mv a0,s0 + c003c234: 9f3cb0ef jal ra,c0007c26 + c003c238: 6586 ld a1,64(sp) + c003c23a: 6626 ld a2,72(sp) + c003c23c: 8522 mv a0,s0 + c003c23e: 9e9cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19242 if (res) - c003c072: f00909e3 beqz s2,c003bf84 - c003c076: bdc9 j c003bf48 + c003c242: f00909e3 beqz s2,c003c154 + c003c246: bdc9 j c003c118 js_async_function_resolve_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19182 JS_FreeValue(ctx, resolving_funcs[0]); - c003c078: 75c2 ld a1,48(sp) - c003c07a: 7662 ld a2,56(sp) - c003c07c: 8522 mv a0,s0 - c003c07e: abbcb0ef jal ra,c0007b38 + c003c248: 75c2 ld a1,48(sp) + c003c24a: 7662 ld a2,56(sp) + c003c24c: 8522 mv a0,s0 + c003c24e: 9d9cb0ef jal ra,c0007c26 js_async_function_resume(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19220 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19228 JS_FreeValue(ctx, promise); - c003c082: 7582 ld a1,32(sp) - c003c084: 7622 ld a2,40(sp) - c003c086: 8522 mv a0,s0 - c003c088: ab1cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19221 + c003c252: 7582 ld a1,32(sp) + c003c254: 7622 ld a2,40(sp) + c003c256: 8522 mv a0,s0 + c003c258: 9cfcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19229 goto fail; - c003c08c: bd75 j c003bf48 + c003c25c: bd75 j c003c118 -00000000c003c08e : +00000000c003c25e : js_async_function_resolve_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19244 -{ - c003c08e: 7159 addi sp,sp,-112 - c003c090: f0a2 sd s0,96(sp) - c003c092: f486 sd ra,104(sp) - c003c094: eca6 sd s1,88(sp) - c003c096: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19247 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19252 +{ + c003c25e: 7159 addi sp,sp,-112 + c003c260: f0a2 sd s0,96(sp) + c003c262: f486 sd ra,104(sp) + c003c264: eca6 sd s1,88(sp) + c003c266: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19255 BOOL is_reject = p->class_id - JS_CLASS_ASYNC_FUNCTION_RESOLVE; - c003c098: 0065d703 lhu a4,6(a1) # 7006 <__clzdi2-0xbfff8ffa> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19244 + c003c268: 0065d703 lhu a4,6(a1) # 7006 <__clzdi2-0xbfff8ffa> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19252 { - c003c09c: e036 sd a3,0(sp) - c003c09e: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19247 + c003c26c: e036 sd a3,0(sp) + c003c26e: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19255 BOOL is_reject = p->class_id - JS_CLASS_ASYNC_FUNCTION_RESOLVE; - c003c0a0: fcf7069b addiw a3,a4,-49 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19244 + c003c270: fcf7069b addiw a3,a4,-49 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19252 { - c003c0a4: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19246 + c003c274: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19254 JSAsyncFunctionState *s = p->u.async_function_data; - c003c0a6: 7984 ld s1,48(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19244 + c003c276: 7984 ld s1,48(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19252 { - c003c0a8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19247 + c003c278: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19255 BOOL is_reject = p->class_id - JS_CLASS_ASYNC_FUNCTION_RESOLVE; - c003c0aa: 8736 mv a4,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19250 + c003c27a: 8736 mv a4,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19258 if (argc > 0) - c003c0ac: 02f05e63 blez a5,c003c0e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19251 + c003c27c: 02f05e63 blez a5,c003c2b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19259 arg = argv[0]; - c003c0b0: 00083783 ld a5,0(a6) - c003c0b4: f03e sd a5,32(sp) - c003c0b6: 00883783 ld a5,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19253 + c003c280: 00083783 ld a5,0(a6) + c003c284: f03e sd a5,32(sp) + c003c286: 00883783 ld a5,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19261 arg = JS_UNDEFINED; - c003c0ba: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19254 + c003c28a: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19262 s->throw_flag = is_reject; - c003c0bc: d4d8 sw a4,44(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19256 + c003c28c: d4d8 sw a4,44(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19264 JS_Throw(ctx, JS_DupValue(ctx, arg)); - c003c0be: 7502 ld a0,32(sp) - c003c0c0: 75a2 ld a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19255 + c003c28e: 7502 ld a0,32(sp) + c003c290: 75a2 ld a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19263 if (is_reject) { - c003c0c2: c695 beqz a3,c003c0ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19256 + c003c292: c695 beqz a3,c003c2be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19264 JS_Throw(ctx, JS_DupValue(ctx, arg)); - c003c0c4: daaca0ef jal ra,c000666e - c003c0c8: 862e mv a2,a1 - c003c0ca: 85aa mv a1,a0 - c003c0cc: 8522 mv a0,s0 - c003c0ce: daece0ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19261 + c003c294: cc8ca0ef jal ra,c000675c + c003c298: 862e mv a2,a1 + c003c29a: 85aa mv a1,a0 + c003c29c: 8522 mv a0,s0 + c003c29e: cccce0ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19269 js_async_function_resume(ctx, s); - c003c0d2: 85a6 mv a1,s1 - c003c0d4: 8522 mv a0,s0 - c003c0d6: e4fff0ef jal ra,c003bf24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19263 -} - c003c0da: 70a6 ld ra,104(sp) - c003c0dc: 7406 ld s0,96(sp) - c003c0de: 64e6 ld s1,88(sp) - c003c0e0: 4501 li a0,0 - c003c0e2: 458d li a1,3 - c003c0e4: 6165 addi sp,sp,112 - c003c0e6: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19253 + c003c2a2: 85a6 mv a1,s1 + c003c2a4: 8522 mv a0,s0 + c003c2a6: e4fff0ef jal ra,c003c0f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19271 +} + c003c2aa: 70a6 ld ra,104(sp) + c003c2ac: 7406 ld s0,96(sp) + c003c2ae: 64e6 ld s1,88(sp) + c003c2b0: 4501 li a0,0 + c003c2b2: 458d li a1,3 + c003c2b4: 6165 addi sp,sp,112 + c003c2b6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19261 arg = JS_UNDEFINED; - c003c0e8: f002 sd zero,32(sp) - c003c0ea: 478d li a5,3 - c003c0ec: b7f9 j c003c0ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19259 + c003c2b8: f002 sd zero,32(sp) + c003c2ba: 478d li a5,3 + c003c2bc: b7f9 j c003c28a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19267 s->frame.cur_sp[-1] = JS_DupValue(ctx, arg); - c003c0ee: d80ca0ef jal ra,c000666e - c003c0f2: 70dc ld a5,160(s1) - c003c0f4: fea7b823 sd a0,-16(a5) - c003c0f8: feb7bc23 sd a1,-8(a5) - c003c0fc: bfd9 j c003c0d2 + c003c2be: c9eca0ef jal ra,c000675c + c003c2c2: 70dc ld a5,160(s1) + c003c2c4: fea7b823 sd a0,-16(a5) + c003c2c8: feb7bc23 sd a1,-8(a5) + c003c2cc: bfd9 j c003c2a2 -00000000c003c0fe : +00000000c003c2ce : js_json_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45225 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45233 { - c003c0fe: 7131 addi sp,sp,-192 - c003c100: f922 sd s0,176(sp) - c003c102: f14a sd s2,160(sp) - c003c104: ed4e sd s3,152(sp) - c003c106: f03a sd a4,32(sp) - c003c108: f43e sd a5,40(sp) - c003c10a: 843e mv s0,a5 - c003c10c: fd06 sd ra,184(sp) - c003c10e: f526 sd s1,168(sp) - c003c110: e952 sd s4,144(sp) - c003c112: f832 sd a2,48(sp) - c003c114: fc36 sd a3,56(sp) - c003c116: e842 sd a6,16(sp) - c003c118: ec46 sd a7,24(sp) + c003c2ce: 7131 addi sp,sp,-192 + c003c2d0: f922 sd s0,176(sp) + c003c2d2: f14a sd s2,160(sp) + c003c2d4: ed4e sd s3,152(sp) + c003c2d6: f03a sd a4,32(sp) + c003c2d8: f43e sd a5,40(sp) + c003c2da: 843e mv s0,a5 + c003c2dc: fd06 sd ra,184(sp) + c003c2de: f526 sd s1,168(sp) + c003c2e0: e952 sd s4,144(sp) + c003c2e2: f832 sd a2,48(sp) + c003c2e4: fc36 sd a3,56(sp) + c003c2e6: e842 sd a6,16(sp) + c003c2e8: ec46 sd a7,24(sp) JS_IsObject(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:630 return JS_VALUE_GET_TAG(v) == JS_TAG_OBJECT; - c003c11a: 2781 sext.w a5,a5 + c003c2ea: 2781 sext.w a5,a5 js_json_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45229 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45237 if (JS_IsObject(val) || - c003c11c: 577d li a4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45225 + c003c2ec: 577d li a4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45233 { - c003c11e: 892a mv s2,a0 - c003c120: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45229 + c003c2ee: 892a mv s2,a0 + c003c2f0: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45237 if (JS_IsObject(val) || - c003c122: 00e78563 beq a5,a4,c003c12c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45229 (discriminator 1) - c003c126: 5759 li a4,-10 - c003c128: 08e79163 bne a5,a4,c003c1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45232 + c003c2f2: 00e78563 beq a5,a4,c003c2fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45237 (discriminator 1) + c003c2f6: 5759 li a4,-10 + c003c2f8: 08e79163 bne a5,a4,c003c37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45240 JSValue f = JS_GetProperty(ctx, val, JS_ATOM_toJSON); - c003c12c: 77a2 ld a5,40(sp) - c003c12e: 7702 ld a4,32(sp) + c003c2fc: 77a2 ld a5,40(sp) + c003c2fe: 7702 ld a4,32(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003c130: 4801 li a6,0 - c003c132: 863e mv a2,a5 - c003c134: 09100693 li a3,145 - c003c138: 85ba mv a1,a4 - c003c13a: 854a mv a0,s2 - c003c13c: fcbe sd a5,120(sp) - c003c13e: f8ba sd a4,112(sp) - c003c140: f02d50ef jal ra,c0011842 - c003c144: e8aa sd a0,80(sp) - c003c146: ecae sd a1,88(sp) + c003c300: 4801 li a6,0 + c003c302: 863e mv a2,a5 + c003c304: 09100693 li a3,145 + c003c308: 85ba mv a1,a4 + c003c30a: 854a mv a0,s2 + c003c30c: fcbe sd a5,120(sp) + c003c30e: f8ba sd a4,112(sp) + c003c310: e20d50ef jal ra,c0011930 + c003c314: e8aa sd a0,80(sp) + c003c316: ecae sd a1,88(sp) js_json_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45233 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45241 if (JS_IsException(f)) - c003c148: 0005879b sext.w a5,a1 - c003c14c: 4a19 li s4,6 + c003c318: 0005879b sext.w a5,a1 + c003c31c: 4a19 li s4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003c14e: 84aa mv s1,a0 - c003c150: 862e mv a2,a1 + c003c31e: 84aa mv s1,a0 + c003c320: 862e mv a2,a1 js_json_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45233 - c003c152: 05478063 beq a5,s4,c003c192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45235 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45241 + c003c322: 05478063 beq a5,s4,c003c362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45243 if (JS_IsFunction(ctx, f)) { - c003c156: 85aa mv a1,a0 - c003c158: 854a mv a0,s2 - c003c15a: e432 sd a2,8(sp) - c003c15c: d80ce0ef jal ra,c000a6dc - c003c160: 6622 ld a2,8(sp) - c003c162: c121 beqz a0,c003c1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45236 + c003c326: 85aa mv a1,a0 + c003c328: 854a mv a0,s2 + c003c32a: e432 sd a2,8(sp) + c003c32c: c9ece0ef jal ra,c000a7ca + c003c330: 6622 ld a2,8(sp) + c003c332: c121 beqz a0,c003c372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45244 v = JS_CallFree(ctx, f, val, 1, &key); - c003c164: 7682 ld a3,32(sp) - c003c166: 7722 ld a4,40(sp) - c003c168: 4785 li a5,1 - c003c16a: 01010813 addi a6,sp,16 - c003c16e: 85a6 mv a1,s1 - c003c170: 854a mv a0,s2 - c003c172: e9ad50ef jal ra,c001180c - c003c176: 842e mv s0,a1 - c003c178: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45237 + c003c334: 7682 ld a3,32(sp) + c003c336: 7722 ld a4,40(sp) + c003c338: 4785 li a5,1 + c003c33a: 01010813 addi a6,sp,16 + c003c33e: 85a6 mv a1,s1 + c003c340: 854a mv a0,s2 + c003c342: db8d50ef jal ra,c00118fa + c003c346: 842e mv s0,a1 + c003c348: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45245 JS_FreeValue(ctx, val); - c003c17a: 7622 ld a2,40(sp) - c003c17c: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45236 + c003c34a: 7622 ld a2,40(sp) + c003c34c: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45244 v = JS_CallFree(ctx, f, val, 1, &key); - c003c17e: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45237 + c003c34e: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45245 JS_FreeValue(ctx, val); - c003c180: 854a mv a0,s2 - c003c182: 9b7cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45238 + c003c350: 854a mv a0,s2 + c003c352: 8d5cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45246 val = v; - c003c186: 6786 ld a5,64(sp) - c003c188: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45239 + c003c356: 6786 ld a5,64(sp) + c003c358: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45247 if (JS_IsException(val)) - c003c18a: 0004079b sext.w a5,s0 - c003c18e: 01479e63 bne a5,s4,c003c1aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45278 + c003c35a: 0004079b sext.w a5,s0 + c003c35e: 01479e63 bne a5,s4,c003c37a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45286 JS_FreeValue(ctx, val); - c003c192: 7582 ld a1,32(sp) - c003c194: 8622 mv a2,s0 - c003c196: 854a mv a0,s2 - c003c198: 9a1cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45279 + c003c362: 7582 ld a1,32(sp) + c003c364: 8622 mv a2,s0 + c003c366: 854a mv a0,s2 + c003c368: 8bfcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45287 return JS_EXCEPTION; - c003c19c: 4799 li a5,6 - c003c19e: e882 sd zero,80(sp) - c003c1a0: a855 j c003c254 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45242 + c003c36c: 4799 li a5,6 + c003c36e: e882 sd zero,80(sp) + c003c370: a855 j c003c424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45250 JS_FreeValue(ctx, f); - c003c1a2: 85a6 mv a1,s1 - c003c1a4: 854a mv a0,s2 - c003c1a6: 993cb0ef jal ra,c0007b38 + c003c372: 85a6 mv a1,s1 + c003c374: 854a mv a0,s2 + c003c376: 8b1cb0ef jal ra,c0007c26 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003c1aa: 0089b603 ld a2,8(s3) + c003c37a: 0089b603 ld a2,8(s3) js_json_check(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45246 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45254 if (!JS_IsUndefined(jsc->replacer_func)) { - c003c1ae: 478d li a5,3 - c003c1b0: 0006071b sext.w a4,a2 - c003c1b4: 04f70363 beq a4,a5,c003c1fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45247 + c003c37e: 478d li a5,3 + c003c380: 0006071b sext.w a4,a2 + c003c384: 04f70363 beq a4,a5,c003c3ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45255 args[0] = key; - c003c1b8: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c388: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1ba: 7762 ld a4,56(sp) - c003c1bc: 76c2 ld a3,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45247 + c003c38a: 7762 ld a4,56(sp) + c003c38c: 76c2 ld a3,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45255 args[0] = key; - c003c1be: f8be sd a5,112(sp) - c003c1c0: 67e2 ld a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c38e: f8be sd a5,112(sp) + c003c390: 67e2 ld a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1c2: 0009b583 ld a1,0(s3) - c003c1c6: 07010813 addi a6,sp,112 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45247 + c003c392: 0009b583 ld a1,0(s3) + c003c396: 07010813 addi a6,sp,112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45255 args[0] = key; - c003c1ca: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45248 + c003c39a: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45256 args[1] = val; - c003c1cc: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c39c: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1ce: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45248 + c003c39e: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45256 args[1] = val; - c003c1d0: f422 sd s0,40(sp) - c003c1d2: e13e sd a5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c3a0: f422 sd s0,40(sp) + c003c3a2: e13e sd a5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1d4: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45248 + c003c3a4: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45256 args[1] = val; - c003c1d6: e522 sd s0,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c3a6: e522 sd s0,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1d8: d2efd0ef jal ra,c0039706 - c003c1dc: 842e mv s0,a1 - c003c1de: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45250 + c003c3a8: d2efd0ef jal ra,c00398d6 + c003c3ac: 842e mv s0,a1 + c003c3ae: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45258 JS_FreeValue(ctx, val); - c003c1e0: 7622 ld a2,40(sp) - c003c1e2: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45249 + c003c3b0: 7622 ld a2,40(sp) + c003c3b2: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45257 v = JS_Call(ctx, jsc->replacer_func, holder, 2, args); - c003c1e4: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45250 + c003c3b4: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45258 JS_FreeValue(ctx, val); - c003c1e6: 854a mv a0,s2 - c003c1e8: 951cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45251 + c003c3b6: 854a mv a0,s2 + c003c3b8: 86fcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45259 val = v; - c003c1ec: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45252 + c003c3bc: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45260 if (JS_IsException(val)) - c003c1ee: 0004071b sext.w a4,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45251 + c003c3be: 0004071b sext.w a4,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45259 val = v; - c003c1f2: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45252 + c003c3c2: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45260 if (JS_IsException(val)) - c003c1f4: 4799 li a5,6 - c003c1f6: f8f70ee3 beq a4,a5,c003c192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45256 + c003c3c4: 4799 li a5,6 + c003c3c6: f8f70ee3 beq a4,a5,c003c362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45264 switch (JS_VALUE_GET_NORM_TAG(val)) { - c003c1fa: 00a4079b addiw a5,s0,10 - c003c1fe: 0007869b sext.w a3,a5 - c003c202: 4745 li a4,17 - c003c204: 04d76163 bltu a4,a3,c003c246 - c003c208: 02079713 slli a4,a5,0x20 - c003c20c: 01e75793 srli a5,a4,0x1e - c003c210: 00025717 auipc a4,0x25 - c003c214: 82870713 addi a4,a4,-2008 # c0060a38 - c003c218: 97ba add a5,a5,a4 - c003c21a: 439c lw a5,0(a5) - c003c21c: 97ba add a5,a5,a4 - c003c21e: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45258 + c003c3ca: 00a4079b addiw a5,s0,10 + c003c3ce: 0007869b sext.w a3,a5 + c003c3d2: 4745 li a4,17 + c003c3d4: 04d76163 bltu a4,a3,c003c416 + c003c3d8: 02079713 slli a4,a5,0x20 + c003c3dc: 01e75793 srli a5,a4,0x1e + c003c3e0: 00025717 auipc a4,0x25 + c003c3e4: 8b870713 addi a4,a4,-1864 # c0060c98 + c003c3e8: 97ba add a5,a5,a4 + c003c3ea: 439c lw a5,0(a5) + c003c3ec: 97ba add a5,a5,a4 + c003c3ee: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45266 if (JS_IsFunction(ctx, val)) - c003c220: 7582 ld a1,32(sp) - c003c222: 8622 mv a2,s0 - c003c224: 854a mv a0,s2 - c003c226: cb6ce0ef jal ra,c000a6dc - c003c22a: ed11 bnez a0,c003c246 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45270 + c003c3f0: 7582 ld a1,32(sp) + c003c3f2: 8622 mv a2,s0 + c003c3f4: 854a mv a0,s2 + c003c3f6: bd4ce0ef jal ra,c000a7ca + c003c3fa: ed11 bnez a0,c003c416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45278 return val; - c003c22c: 7782 ld a5,32(sp) - c003c22e: eca2 sd s0,88(sp) - c003c230: e8be sd a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45280 -} - c003c232: 70ea ld ra,184(sp) - c003c234: 744a ld s0,176(sp) - c003c236: 6546 ld a0,80(sp) - c003c238: 65e6 ld a1,88(sp) - c003c23a: 74aa ld s1,168(sp) - c003c23c: 790a ld s2,160(sp) - c003c23e: 69ea ld s3,152(sp) - c003c240: 6a4a ld s4,144(sp) - c003c242: 6129 addi sp,sp,192 - c003c244: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45274 + c003c3fc: 7782 ld a5,32(sp) + c003c3fe: eca2 sd s0,88(sp) + c003c400: e8be sd a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45288 +} + c003c402: 70ea ld ra,184(sp) + c003c404: 744a ld s0,176(sp) + c003c406: 6546 ld a0,80(sp) + c003c408: 65e6 ld a1,88(sp) + c003c40a: 74aa ld s1,168(sp) + c003c40c: 790a ld s2,160(sp) + c003c40e: 69ea ld s3,152(sp) + c003c410: 6a4a ld s4,144(sp) + c003c412: 6129 addi sp,sp,192 + c003c414: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45282 JS_FreeValue(ctx, val); - c003c246: 7582 ld a1,32(sp) - c003c248: 8622 mv a2,s0 - c003c24a: 854a mv a0,s2 - c003c24c: 8edcb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45275 + c003c416: 7582 ld a1,32(sp) + c003c418: 8622 mv a2,s0 + c003c41a: 854a mv a0,s2 + c003c41c: 80bcb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45283 return JS_UNDEFINED; - c003c250: 478d li a5,3 - c003c252: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45279 + c003c420: 478d li a5,3 + c003c422: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45287 return JS_EXCEPTION; - c003c254: ecbe sd a5,88(sp) - c003c256: bff1 j c003c232 + c003c424: ecbe sd a5,88(sp) + c003c426: bff1 j c003c402 -00000000c003c258 : +00000000c003c428 : js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45282 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45290 static int js_json_to_str(JSContext *ctx, JSONStringifyContext *jsc, - c003c258: 7125 addi sp,sp,-416 - c003c25a: f436 sd a3,40(sp) - c003c25c: 26a9 addiw a3,a3,10 - c003c25e: eb22 sd s0,400(sp) - c003c260: e83a sd a4,16(sp) - c003c262: ec3e sd a5,24(sp) - c003c264: ef06 sd ra,408(sp) - c003c266: e726 sd s1,392(sp) - c003c268: e34a sd s2,384(sp) - c003c26a: fece sd s3,376(sp) - c003c26c: fad2 sd s4,368(sp) - c003c26e: f6d6 sd s5,360(sp) - c003c270: f2da sd s6,352(sp) - c003c272: eede sd s7,344(sp) - c003c274: eae2 sd s8,336(sp) - c003c276: e6e6 sd s9,328(sp) - c003c278: e2ea sd s10,320(sp) - c003c27a: fe6e sd s11,312(sp) - c003c27c: f032 sd a2,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45292 + c003c428: 7125 addi sp,sp,-416 + c003c42a: f436 sd a3,40(sp) + c003c42c: 26a9 addiw a3,a3,10 + c003c42e: eb22 sd s0,400(sp) + c003c430: e83a sd a4,16(sp) + c003c432: ec3e sd a5,24(sp) + c003c434: ef06 sd ra,408(sp) + c003c436: e726 sd s1,392(sp) + c003c438: e34a sd s2,384(sp) + c003c43a: fece sd s3,376(sp) + c003c43c: fad2 sd s4,368(sp) + c003c43e: f6d6 sd s5,360(sp) + c003c440: f2da sd s6,352(sp) + c003c442: eede sd s7,344(sp) + c003c444: eae2 sd s8,336(sp) + c003c446: e6e6 sd s9,328(sp) + c003c448: e2ea sd s10,320(sp) + c003c44a: fe6e sd s11,312(sp) + c003c44c: f032 sd a2,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45300 indent1 = JS_UNDEFINED; - c003c27e: e082 sd zero,64(sp) - c003c280: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45293 + c003c44e: e082 sd zero,64(sp) + c003c450: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45301 sep = JS_UNDEFINED; - c003c282: e882 sd zero,80(sp) - c003c284: ec82 sd zero,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45294 + c003c452: e882 sd zero,80(sp) + c003c454: ec82 sd zero,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 sep1 = JS_UNDEFINED; - c003c286: f082 sd zero,96(sp) - c003c288: f482 sd zero,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c456: f082 sd zero,96(sp) + c003c458: f482 sd zero,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c28a: f882 sd zero,112(sp) - c003c28c: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c45a: f882 sd zero,112(sp) + c003c45c: fc82 sd zero,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c28e: e902 sd zero,144(sp) - c003c290: ed02 sd zero,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45298 + c003c45e: e902 sd zero,144(sp) + c003c460: ed02 sd zero,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45306 switch (JS_VALUE_GET_NORM_TAG(val)) { - c003c292: 0006871b sext.w a4,a3 - c003c296: 47c5 li a5,17 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45282 + c003c462: 0006871b sext.w a4,a3 + c003c466: 47c5 li a5,17 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45290 static int js_json_to_str(JSContext *ctx, JSONStringifyContext *jsc, - c003c298: 842a mv s0,a0 - c003c29a: 54e7ef63 bltu a5,a4,c003c7f8 - c003c29e: 02069793 slli a5,a3,0x20 - c003c2a2: 01e7d693 srli a3,a5,0x1e - c003c2a6: 00025717 auipc a4,0x25 - c003c2aa: 80270713 addi a4,a4,-2046 # c0060aa8 - c003c2ae: 96ba add a3,a3,a4 - c003c2b0: 429c lw a5,0(a3) - c003c2b2: 84ae mv s1,a1 - c003c2b4: 97ba add a5,a5,a4 - c003c2b6: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45300 + c003c468: 842a mv s0,a0 + c003c46a: 54e7ef63 bltu a5,a4,c003c9c8 + c003c46e: 02069793 slli a5,a3,0x20 + c003c472: 01e7d693 srli a3,a5,0x1e + c003c476: 00025717 auipc a4,0x25 + c003c47a: 89270713 addi a4,a4,-1902 # c0060d08 + c003c47e: 96ba add a3,a3,a4 + c003c480: 429c lw a5,0(a3) + c003c482: 84ae mv s1,a1 + c003c484: 97ba add a5,a5,a4 + c003c486: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45308 p = JS_VALUE_GET_OBJ(val); - c003c2b8: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 + c003c488: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45310 if (cl == JS_CLASS_STRING) { - c003c2ba: 4695 li a3,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45301 + c003c48a: 4695 li a3,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45309 cl = p->class_id; - c003c2bc: 0067d703 lhu a4,6(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 + c003c48c: 0067d703 lhu a4,6(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45310 if (cl == JS_CLASS_STRING) { - c003c2c0: 02d71f63 bne a4,a3,c003c2fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 + c003c490: 02d71f63 bne a4,a3,c003c4ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45311 val = JS_ToStringFree(ctx, val); - c003c2c4: 7622 ld a2,40(sp) - c003c2c6: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 + c003c494: 7622 ld a2,40(sp) + c003c496: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45312 if (JS_IsException(val)) - c003c2c8: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 + c003c498: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45311 val = JS_ToStringFree(ctx, val); - c003c2ca: d16de0ef jal ra,c001a7e0 - c003c2ce: f02a sd a0,32(sp) - c003c2d0: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 + c003c49a: d16de0ef jal ra,c001a9b0 + c003c49e: f02a sd a0,32(sp) + c003c4a0: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45312 if (JS_IsException(val)) - c003c2d2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 + c003c4a2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45311 val = JS_ToStringFree(ctx, val); - c003c2d6: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 + c003c4a6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45312 if (JS_IsException(val)) - c003c2d8: 05278263 beq a5,s2,c003c31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45306 + c003c4a8: 05278263 beq a5,s2,c003c4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45314 val = JS_ToQuotedStringFree(ctx, val); - c003c2dc: 85aa mv a1,a0 - c003c2de: 8522 mv a0,s0 - c003c2e0: d67de0ef jal ra,c001b046 - c003c2e4: f02a sd a0,32(sp) - c003c2e6: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45307 + c003c4ac: 85aa mv a1,a0 + c003c4ae: 8522 mv a0,s0 + c003c4b0: d67de0ef jal ra,c001b216 + c003c4b4: f02a sd a0,32(sp) + c003c4b6: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45315 if (JS_IsException(val)) - c003c2e8: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45306 + c003c4b8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45314 val = JS_ToQuotedStringFree(ctx, val); - c003c2ec: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45307 + c003c4bc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45315 if (JS_IsException(val)) - c003c2ee: 03278763 beq a5,s2,c003c31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45314 + c003c4be: 03278763 beq a5,s2,c003c4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45322 return string_buffer_concat_value_free(jsc->b, val); - c003c2f2: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45457 + c003c4c2: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45465 return string_buffer_concat_value_free(jsc->b, val); - c003c2f4: 68a8 ld a0,80(s1) - c003c2f6: 9e7de0ef jal ra,c001acdc - c003c2fa: 8aaa mv s5,a0 - c003c2fc: a0a1 j c003c344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45310 + c003c4c4: 68a8 ld a0,80(s1) + c003c4c6: 9e7de0ef jal ra,c001aeac + c003c4ca: 8aaa mv s5,a0 + c003c4cc: a0a1 j c003c514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45318 } else if (cl == JS_CLASS_NUMBER) { - c003c2fe: 4691 li a3,4 - c003c300: 02d71463 bne a4,a3,c003c328 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45311 + c003c4ce: 4691 li a3,4 + c003c4d0: 02d71463 bne a4,a3,c003c4f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45319 val = JS_ToNumberFree(ctx, val); - c003c304: 7622 ld a2,40(sp) - c003c306: 85be mv a1,a5 - c003c308: f63df0ef jal ra,c001c26a - c003c30c: f02a sd a0,32(sp) - c003c30e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45312 + c003c4d4: 7622 ld a2,40(sp) + c003c4d6: 85be mv a1,a5 + c003c4d8: f63df0ef jal ra,c001c43a + c003c4dc: f02a sd a0,32(sp) + c003c4de: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45320 if (JS_IsException(val)) - c003c310: 0005871b sext.w a4,a1 - c003c314: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45311 + c003c4e0: 0005871b sext.w a4,a1 + c003c4e4: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45319 val = JS_ToNumberFree(ctx, val); - c003c316: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45312 + c003c4e6: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45320 if (JS_IsException(val)) - c003c318: fcf71de3 bne a4,a5,c003c2f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c4e8: fcf71de3 bne a4,a5,c003c4c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c31c: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c4ec: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c31e: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45294 + c003c4ee: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 sep1 = JS_UNDEFINED; - c003c320: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45293 + c003c4f0: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45301 sep = JS_UNDEFINED; - c003c322: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45292 + c003c4f2: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45300 indent1 = JS_UNDEFINED; - c003c324: 4b8d li s7,3 - c003c326: a119 j c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45315 + c003c4f4: 4b8d li s7,3 + c003c4f6: a119 j c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45323 } else if (cl == JS_CLASS_BOOLEAN) { - c003c328: 4919 li s2,6 - c003c32a: 03271d63 bne a4,s2,c003c364 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45316 + c003c4f8: 4919 li s2,6 + c003c4fa: 03271d63 bne a4,s2,c003c534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45324 ret = string_buffer_concat_value(jsc->b, p->u.object_data); - c003c32e: 7b8c ld a1,48(a5) - c003c330: 7f90 ld a2,56(a5) - c003c332: 68a8 ld a0,80(s1) - c003c334: ba4df0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45317 + c003c4fe: 7b8c ld a1,48(a5) + c003c500: 7f90 ld a2,56(a5) + c003c502: 68a8 ld a0,80(s1) + c003c504: ba4df0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45325 JS_FreeValue(ctx, val); - c003c338: 7582 ld a1,32(sp) - c003c33a: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45316 + c003c508: 7582 ld a1,32(sp) + c003c50a: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45324 ret = string_buffer_concat_value(jsc->b, p->u.object_data); - c003c33c: 8aaa mv s5,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45438 + c003c50c: 8aaa mv s5,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45446 JS_FreeValue(ctx, prop); - c003c33e: 8522 mv a0,s0 - c003c340: ff8cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45474 -} - c003c344: 60fa ld ra,408(sp) - c003c346: 645a ld s0,400(sp) - c003c348: 64ba ld s1,392(sp) - c003c34a: 691a ld s2,384(sp) - c003c34c: 79f6 ld s3,376(sp) - c003c34e: 7a56 ld s4,368(sp) - c003c350: 7b16 ld s6,352(sp) - c003c352: 6bf6 ld s7,344(sp) - c003c354: 6c56 ld s8,336(sp) - c003c356: 6cb6 ld s9,328(sp) - c003c358: 6d16 ld s10,320(sp) - c003c35a: 7df2 ld s11,312(sp) - c003c35c: 8556 mv a0,s5 - c003c35e: 7ab6 ld s5,360(sp) - c003c360: 611d addi sp,sp,416 - c003c362: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45325 + c003c50e: 8522 mv a0,s0 + c003c510: f16cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45482 +} + c003c514: 60fa ld ra,408(sp) + c003c516: 645a ld s0,400(sp) + c003c518: 64ba ld s1,392(sp) + c003c51a: 691a ld s2,384(sp) + c003c51c: 79f6 ld s3,376(sp) + c003c51e: 7a56 ld s4,368(sp) + c003c520: 7b16 ld s6,352(sp) + c003c522: 6bf6 ld s7,344(sp) + c003c524: 6c56 ld s8,336(sp) + c003c526: 6cb6 ld s9,328(sp) + c003c528: 6d16 ld s10,320(sp) + c003c52a: 7df2 ld s11,312(sp) + c003c52c: 8556 mv a0,s5 + c003c52e: 7ab6 ld s5,360(sp) + c003c530: 611d addi sp,sp,416 + c003c532: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45333 if (cl == JS_CLASS_BIG_INT) { - c003c364: 02100793 li a5,33 - c003c368: 00f71763 bne a4,a5,c003c376 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45459 + c003c534: 02100793 li a5,33 + c003c538: 00f71763 bne a4,a5,c003c546 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45467 JS_ThrowTypeError(ctx, "bigint are forbidden in JSON.stringify"); - c003c36c: 00024597 auipc a1,0x24 - c003c370: 71458593 addi a1,a1,1812 # c0060a80 - c003c374: a035 j c003c3a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45329 + c003c53c: 00024597 auipc a1,0x24 + c003c540: 7a458593 addi a1,a1,1956 # c0060ce0 + c003c544: a035 j c003c570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45337 v = js_array_includes(ctx, jsc->stack, 1, (JSValueConst *)&val); - c003c376: 6c90 ld a2,24(s1) - c003c378: 698c ld a1,16(a1) - c003c37a: 1018 addi a4,sp,32 - c003c37c: 4685 li a3,1 - c003c37e: bcff50ef jal ra,c0031f4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45330 + c003c546: 6c90 ld a2,24(s1) + c003c548: 698c ld a1,16(a1) + c003c54a: 1018 addi a4,sp,32 + c003c54c: 4685 li a3,1 + c003c54e: bcff50ef jal ra,c003211c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45338 if (JS_IsException(v)) - c003c382: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45329 + c003c552: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45337 v = js_array_includes(ctx, jsc->stack, 1, (JSValueConst *)&val); - c003c386: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45330 + c003c556: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45338 if (JS_IsException(v)) - c003c388: f9278ae3 beq a5,s2,c003c31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45332 + c003c558: f9278ae3 beq a5,s2,c003c4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45340 if (JS_ToBoolFree(ctx, v)) { - c003c38c: 85aa mv a1,a0 - c003c38e: 8522 mv a0,s0 - c003c390: ad5cb0ef jal ra,c0007e64 - c003c394: 8aaa mv s5,a0 - c003c396: c909 beqz a0,c003c3a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45333 + c003c55c: 85aa mv a1,a0 + c003c55e: 8522 mv a0,s0 + c003c560: 9f3cb0ef jal ra,c0007f52 + c003c564: 8aaa mv s5,a0 + c003c566: c909 beqz a0,c003c578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45341 JS_ThrowTypeError(ctx, "circular reference"); - c003c398: 00024597 auipc a1,0x24 - c003c39c: 13858593 addi a1,a1,312 # c00604d0 - c003c3a0: 8522 mv a0,s0 - c003c3a2: 854d70ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45334 + c003c568: 00024597 auipc a1,0x24 + c003c56c: 1c858593 addi a1,a1,456 # c0060730 + c003c570: 8522 mv a0,s0 + c003c572: f73d60ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45342 goto exception; - c003c3a6: bf9d j c003c31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45336 + c003c576: bf9d j c003c4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45344 indent1 = JS_ConcatString(ctx, JS_DupValue(ctx, indent), JS_DupValue(ctx, jsc->gap)); - c003c3a8: 6542 ld a0,16(sp) - c003c3aa: 65e2 ld a1,24(sp) - c003c3ac: ac2ca0ef jal ra,c000666e - c003c3b0: f22a sd a0,288(sp) - c003c3b2: f62e sd a1,296(sp) - c003c3b4: 7888 ld a0,48(s1) - c003c3b6: 7c8c ld a1,56(s1) - c003c3b8: ab6ca0ef jal ra,c000666e - c003c3bc: 872e mv a4,a1 - c003c3be: ee2e sd a1,280(sp) - c003c3c0: 7632 ld a2,296(sp) - c003c3c2: 7592 ld a1,288(sp) - c003c3c4: 86aa mv a3,a0 - c003c3c6: ea2a sd a0,272(sp) - c003c3c8: 8522 mv a0,s0 - c003c3ca: d98de0ef jal ra,c001a962 - c003c3ce: e0aa sd a0,64(sp) - c003c3d0: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45337 + c003c578: 6542 ld a0,16(sp) + c003c57a: 65e2 ld a1,24(sp) + c003c57c: 9e0ca0ef jal ra,c000675c + c003c580: f22a sd a0,288(sp) + c003c582: f62e sd a1,296(sp) + c003c584: 7888 ld a0,48(s1) + c003c586: 7c8c ld a1,56(s1) + c003c588: 9d4ca0ef jal ra,c000675c + c003c58c: 872e mv a4,a1 + c003c58e: ee2e sd a1,280(sp) + c003c590: 7632 ld a2,296(sp) + c003c592: 7592 ld a1,288(sp) + c003c594: 86aa mv a3,a0 + c003c596: ea2a sd a0,272(sp) + c003c598: 8522 mv a0,s0 + c003c59a: d98de0ef jal ra,c001ab32 + c003c59e: e0aa sd a0,64(sp) + c003c5a0: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45345 if (JS_IsException(indent1)) - c003c3d2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45336 + c003c5a2: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45344 indent1 = JS_ConcatString(ctx, JS_DupValue(ctx, indent), JS_DupValue(ctx, jsc->gap)); - c003c3d6: 89aa mv s3,a0 - c003c3d8: 8b2e mv s6,a1 - c003c3da: 8bae mv s7,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45337 + c003c5a6: 89aa mv s3,a0 + c003c5a8: 8b2e mv s6,a1 + c003c5aa: 8bae mv s7,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45345 if (JS_IsException(indent1)) - c003c3dc: 43278563 beq a5,s2,c003c806 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45339 + c003c5ac: 43278563 beq a5,s2,c003c9d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45347 if (!JS_IsEmptyString(jsc->gap)) { - c003c3e0: 7888 ld a0,48(s1) - c003c3e2: 7c8c ld a1,56(s1) - c003c3e4: d65c70ef jal ra,c0004148 - c003c3e8: ed21 bnez a0,c003c440 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45340 + c003c5b0: 7888 ld a0,48(s1) + c003c5b2: 7c8c ld a1,56(s1) + c003c5b4: b95c70ef jal ra,c0004148 + c003c5b8: ed21 bnez a0,c003c610 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45348 sep = JS_ConcatString3(ctx, "\n", JS_DupValue(ctx, indent1), ""); - c003c3ea: 854e mv a0,s3 - c003c3ec: 85da mv a1,s6 - c003c3ee: a80ca0ef jal ra,c000666e - c003c3f2: 862a mv a2,a0 - c003c3f4: 86ae mv a3,a1 - c003c3f6: e22a sd a0,256(sp) - c003c3f8: e62e sd a1,264(sp) - c003c3fa: 00021717 auipc a4,0x21 - c003c3fe: bd670713 addi a4,a4,-1066 # c005cfd0 - c003c402: 00034597 auipc a1,0x34 - c003c406: 73e58593 addi a1,a1,1854 # c0070b40 - c003c40a: 8522 mv a0,s0 - c003c40c: bfede0ef jal ra,c001a80a - c003c410: e8aa sd a0,80(sp) - c003c412: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45341 + c003c5ba: 854e mv a0,s3 + c003c5bc: 85da mv a1,s6 + c003c5be: 99eca0ef jal ra,c000675c + c003c5c2: 862a mv a2,a0 + c003c5c4: 86ae mv a3,a1 + c003c5c6: e22a sd a0,256(sp) + c003c5c8: e62e sd a1,264(sp) + c003c5ca: 00021717 auipc a4,0x21 + c003c5ce: c3670713 addi a4,a4,-970 # c005d200 + c003c5d2: 00034597 auipc a1,0x34 + c003c5d6: 7ce58593 addi a1,a1,1998 # c0070da0 + c003c5da: 8522 mv a0,s0 + c003c5dc: bfede0ef jal ra,c001a9da + c003c5e0: e8aa sd a0,80(sp) + c003c5e2: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45349 if (JS_IsException(sep)) - c003c414: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45340 + c003c5e4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45348 sep = JS_ConcatString3(ctx, "\n", JS_DupValue(ctx, indent1), ""); - c003c418: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45341 + c003c5e8: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45349 if (JS_IsException(sep)) - c003c41a: 3f278b63 beq a5,s2,c003c810 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45343 + c003c5ea: 3f278b63 beq a5,s2,c003c9e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45351 sep1 = JS_NewString(ctx, " "); - c003c41e: 00024597 auipc a1,0x24 - c003c422: 08a58593 addi a1,a1,138 # c00604a8 - c003c426: 8522 mv a0,s0 - c003c428: dfadd0ef jal ra,c0019a22 - c003c42c: f0aa sd a0,96(sp) - c003c42e: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45344 + c003c5ee: 00024597 auipc a1,0x24 + c003c5f2: 11a58593 addi a1,a1,282 # c0060708 + c003c5f6: 8522 mv a0,s0 + c003c5f8: dfadd0ef jal ra,c0019bf2 + c003c5fc: f0aa sd a0,96(sp) + c003c5fe: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45352 if (JS_IsException(sep1)) - c003c430: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45343 + c003c600: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45351 sep1 = JS_NewString(ctx, " "); - c003c434: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45344 + c003c604: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45352 if (JS_IsException(sep1)) - c003c436: 03279363 bne a5,s2,c003c45c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45373 + c003c606: 03279363 bne a5,s2,c003c62c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45381 prop = JS_UNDEFINED; - c003c43a: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c60a: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c43c: 490d li s2,3 - c003c43e: a4fd j c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45347 + c003c60c: 490d li s2,3 + c003c60e: a4fd j c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45355 sep = JS_DupValue(ctx, jsc->empty); - c003c440: 60a8 ld a0,64(s1) - c003c442: 64ac ld a1,72(s1) - c003c444: a2aca0ef jal ra,c000666e - c003c448: e8aa sd a0,80(sp) - c003c44a: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45348 + c003c610: 60a8 ld a0,64(s1) + c003c612: 64ac ld a1,72(s1) + c003c614: 948ca0ef jal ra,c000675c + c003c618: e8aa sd a0,80(sp) + c003c61a: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45356 sep1 = JS_DupValue(ctx, jsc->empty); - c003c44c: 60a8 ld a0,64(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45347 + c003c61c: 60a8 ld a0,64(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45355 sep = JS_DupValue(ctx, jsc->empty); - c003c44e: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45348 + c003c61e: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45356 sep1 = JS_DupValue(ctx, jsc->empty); - c003c450: 64ac ld a1,72(s1) - c003c452: a1cca0ef jal ra,c000666e - c003c456: 89ae mv s3,a1 - c003c458: f0aa sd a0,96(sp) - c003c45a: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45350 + c003c620: 64ac ld a1,72(s1) + c003c622: 93aca0ef jal ra,c000675c + c003c626: 89ae mv s3,a1 + c003c628: f0aa sd a0,96(sp) + c003c62a: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45358 v = js_array_push(ctx, jsc->stack, 1, (JSValueConst *)&val, 0); - c003c45c: 6c90 ld a2,24(s1) - c003c45e: 688c ld a1,16(s1) - c003c460: 4781 li a5,0 - c003c462: 1018 addi a4,sp,32 - c003c464: 4685 li a3,1 - c003c466: 8522 mv a0,s0 - c003c468: dd3f60ef jal ra,c003323a - c003c46c: 892e mv s2,a1 - c003c46e: e12a sd a0,128(sp) - c003c470: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45351 + c003c62c: 6c90 ld a2,24(s1) + c003c62e: 688c ld a1,16(s1) + c003c630: 4781 li a5,0 + c003c632: 1018 addi a4,sp,32 + c003c634: 4685 li a3,1 + c003c636: 8522 mv a0,s0 + c003c638: dd3f60ef jal ra,c003340a + c003c63c: 892e mv s2,a1 + c003c63e: e12a sd a0,128(sp) + c003c640: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45359 if (check_exception_free(ctx, v)) - c003c472: f9aa sd a0,240(sp) - c003c474: fdae sd a1,248(sp) + c003c642: f9aa sd a0,240(sp) + c003c644: fdae sd a1,248(sp) check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003c476: 864a mv a2,s2 - c003c478: 85aa mv a1,a0 - c003c47a: 8522 mv a0,s0 - c003c47c: ebccb0ef jal ra,c0007b38 + c003c646: 864a mv a2,s2 + c003c648: 85aa mv a1,a0 + c003c64a: 8522 mv a0,s0 + c003c64c: ddacb0ef jal ra,c0007c26 js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45351 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45359 if (check_exception_free(ctx, v)) - c003c480: 2901 sext.w s2,s2 - c003c482: 4799 li a5,6 - c003c484: faf90be3 beq s2,a5,c003c43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45353 + c003c650: 2901 sext.w s2,s2 + c003c652: 4799 li a5,6 + c003c654: faf90be3 beq s2,a5,c003c60a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45361 ret = JS_IsArray(ctx, val); - c003c488: 7582 ld a1,32(sp) - c003c48a: 7622 ld a2,40(sp) - c003c48c: 8522 mv a0,s0 - c003c48e: e41d70ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45354 + c003c658: 7582 ld a1,32(sp) + c003c65a: 7622 ld a2,40(sp) + c003c65c: 8522 mv a0,s0 + c003c65e: d5fd70ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45362 if (ret < 0) - c003c492: fa0544e3 bltz a0,c003c43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45356 + c003c662: fa0544e3 bltz a0,c003c60a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45364 if (ret) { - c003c496: 16050963 beqz a0,c003c608 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45357 + c003c666: 16050963 beqz a0,c003c7d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45365 if (js_get_length64(ctx, &len, val)) - c003c49a: 7602 ld a2,32(sp) - c003c49c: 76a2 ld a3,40(sp) - c003c49e: 182c addi a1,sp,56 - c003c4a0: 8522 mv a0,s0 - c003c4a2: b9ce20ef jal ra,c001e83e - c003c4a6: f951 bnez a0,c003c43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45359 + c003c66a: 7602 ld a2,32(sp) + c003c66c: 76a2 ld a3,40(sp) + c003c66e: 182c addi a1,sp,56 + c003c670: 8522 mv a0,s0 + c003c672: b9ce20ef jal ra,c001ea0e + c003c676: f951 bnez a0,c003c60a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45367 string_buffer_putc8(jsc->b, '['); - c003c4a8: 68a8 ld a0,80(s1) - c003c4aa: 05b00593 li a1,91 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45360 + c003c678: 68a8 ld a0,80(s1) + c003c67a: 05b00593 li a1,91 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 for(i = 0; i < len; i++) { - c003c4ae: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45359 + c003c67e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45367 string_buffer_putc8(jsc->b, '['); - c003c4b0: c37dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45365 + c003c680: c37dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45373 if (JS_IsException(v)) - c003c4b4: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45376 + c003c684: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45384 if (JS_IsUndefined(v)) - c003c4b6: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45360 + c003c686: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 for(i = 0; i < len; i++) { - c003c4b8: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45362 + c003c688: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45370 string_buffer_putc8(jsc->b, ','); - c003c4ba: 0504bd03 ld s10,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45360 + c003c68a: 0504bd03 ld s10,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 for(i = 0; i < len; i++) { - c003c4be: 08f94763 blt s2,a5,c003c54c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45381 + c003c68e: 08f94763 blt s2,a5,c003c71c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45389 if (len > 0 && !JS_IsEmptyString(jsc->gap)) { - c003c4c2: 02f05063 blez a5,c003c4e2 - c003c4c6: 7888 ld a0,48(s1) - c003c4c8: 7c8c ld a1,56(s1) - c003c4ca: c7fc70ef jal ra,c0004148 - c003c4ce: e911 bnez a0,c003c4e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45382 + c003c692: 02f05063 blez a5,c003c6b2 + c003c696: 7888 ld a0,48(s1) + c003c698: 7c8c ld a1,56(s1) + c003c69a: aafc70ef jal ra,c0004148 + c003c69e: e911 bnez a0,c003c6b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45390 string_buffer_putc8(jsc->b, '\n'); - c003c4d0: 45a9 li a1,10 - c003c4d2: 856a mv a0,s10 - c003c4d4: c13dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45383 + c003c6a0: 45a9 li a1,10 + c003c6a2: 856a mv a0,s10 + c003c6a4: c13dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45391 string_buffer_concat_value(jsc->b, indent); - c003c4d8: 65c2 ld a1,16(sp) - c003c4da: 6662 ld a2,24(sp) - c003c4dc: 68a8 ld a0,80(s1) - c003c4de: 9fadf0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45385 + c003c6a8: 65c2 ld a1,16(sp) + c003c6aa: 6662 ld a2,24(sp) + c003c6ac: 68a8 ld a0,80(s1) + c003c6ae: 9fadf0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45393 string_buffer_putc8(jsc->b, ']'); - c003c4e2: 68a8 ld a0,80(s1) - c003c4e4: 05d00593 li a1,93 - c003c4e8: 4d8d li s11,3 - c003c4ea: bfddc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c6b2: 68a8 ld a0,80(s1) + c003c6b4: 05d00593 li a1,93 + c003c6b8: 4d8d li s11,3 + c003c6ba: bfddc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c4ee: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45431 + c003c6be: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45439 if (check_exception_free(ctx, js_array_pop(ctx, jsc->stack, 0, NULL, 0))) - c003c4f0: 6c90 ld a2,24(s1) - c003c4f2: 688c ld a1,16(s1) - c003c4f4: 4781 li a5,0 - c003c4f6: 4701 li a4,0 - c003c4f8: 4681 li a3,0 - c003c4fa: 8522 mv a0,s0 - c003c4fc: bd5f60ef jal ra,c00330d0 - c003c500: 84ae mv s1,a1 + c003c6c0: 6c90 ld a2,24(s1) + c003c6c2: 688c ld a1,16(s1) + c003c6c4: 4781 li a5,0 + c003c6c6: 4701 li a4,0 + c003c6c8: 4681 li a3,0 + c003c6ca: 8522 mv a0,s0 + c003c6cc: bd5f60ef jal ra,c00332a0 + c003c6d0: 84ae mv s1,a1 check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003c502: 8626 mv a2,s1 - c003c504: 85aa mv a1,a0 - c003c506: 8522 mv a0,s0 - c003c508: e30cb0ef jal ra,c0007b38 + c003c6d2: 8626 mv a2,s1 + c003c6d4: 85aa mv a1,a0 + c003c6d6: 8522 mv a0,s0 + c003c6d8: d4ecb0ef jal ra,c0007c26 js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45431 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45439 if (check_exception_free(ctx, js_array_pop(ctx, jsc->stack, 0, NULL, 0))) - c003c50c: 2481 sext.w s1,s1 - c003c50e: 4799 li a5,6 - c003c510: 20f48e63 beq s1,a5,c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45433 + c003c6dc: 2481 sext.w s1,s1 + c003c6de: 4799 li a5,6 + c003c6e0: 20f48e63 beq s1,a5,c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45441 JS_FreeValue(ctx, val); - c003c514: 7582 ld a1,32(sp) - c003c516: 7622 ld a2,40(sp) - c003c518: 8522 mv a0,s0 - c003c51a: e1ecb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45434 + c003c6e4: 7582 ld a1,32(sp) + c003c6e6: 7622 ld a2,40(sp) + c003c6e8: 8522 mv a0,s0 + c003c6ea: d3ccb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45442 JS_FreeValue(ctx, tab); - c003c51e: 75c6 ld a1,112(sp) - c003c520: 864a mv a2,s2 - c003c522: 8522 mv a0,s0 - c003c524: e14cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45435 + c003c6ee: 75c6 ld a1,112(sp) + c003c6f0: 864a mv a2,s2 + c003c6f2: 8522 mv a0,s0 + c003c6f4: d32cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45443 JS_FreeValue(ctx, sep); - c003c528: 65c6 ld a1,80(sp) - c003c52a: 8652 mv a2,s4 - c003c52c: 8522 mv a0,s0 - c003c52e: e0acb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45436 + c003c6f8: 65c6 ld a1,80(sp) + c003c6fa: 8652 mv a2,s4 + c003c6fc: 8522 mv a0,s0 + c003c6fe: d28cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45444 JS_FreeValue(ctx, sep1); - c003c532: 7586 ld a1,96(sp) - c003c534: 864e mv a2,s3 - c003c536: 8522 mv a0,s0 - c003c538: e00cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45437 + c003c702: 7586 ld a1,96(sp) + c003c704: 864e mv a2,s3 + c003c706: 8522 mv a0,s0 + c003c708: d1ecb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45445 JS_FreeValue(ctx, indent1); - c003c53c: 6586 ld a1,64(sp) - c003c53e: 865a mv a2,s6 - c003c540: 8522 mv a0,s0 - c003c542: df6cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45438 + c003c70c: 6586 ld a1,64(sp) + c003c70e: 865a mv a2,s6 + c003c710: 8522 mv a0,s0 + c003c712: d14cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45446 JS_FreeValue(ctx, prop); - c003c546: 65ca ld a1,144(sp) - c003c548: 866e mv a2,s11 - c003c54a: bbd5 j c003c33e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45361 + c003c716: 65ca ld a1,144(sp) + c003c718: 866e mv a2,s11 + c003c71a: bbd5 j c003c50e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45369 if (i > 0) - c003c54c: 01205763 blez s2,c003c55a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45362 + c003c71c: 01205763 blez s2,c003c72a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45370 string_buffer_putc8(jsc->b, ','); - c003c550: 02c00593 li a1,44 - c003c554: 856a mv a0,s10 - c003c556: b91dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45363 + c003c720: 02c00593 li a1,44 + c003c724: 856a mv a0,s10 + c003c726: b91dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45371 string_buffer_concat_value(jsc->b, sep); - c003c55a: 65c6 ld a1,80(sp) - c003c55c: 68a8 ld a0,80(s1) - c003c55e: 8652 mv a2,s4 - c003c560: 978df0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45364 + c003c72a: 65c6 ld a1,80(sp) + c003c72c: 68a8 ld a0,80(s1) + c003c72e: 8652 mv a2,s4 + c003c730: 978df0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45372 v = JS_GetPropertyInt64(ctx, val, i); - c003c564: 7582 ld a1,32(sp) - c003c566: 7622 ld a2,40(sp) - c003c568: 86ca mv a3,s2 - c003c56a: 8522 mv a0,s0 - c003c56c: 963f50ef jal ra,c0031ece - c003c570: e52e sd a1,136(sp) - c003c572: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45365 + c003c734: 7582 ld a1,32(sp) + c003c736: 7622 ld a2,40(sp) + c003c738: 86ca mv a3,s2 + c003c73a: 8522 mv a0,s0 + c003c73c: 963f50ef jal ra,c003209e + c003c740: e52e sd a1,136(sp) + c003c742: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45373 if (JS_IsException(v)) - c003c574: 2581 sext.w a1,a1 - c003c576: ed8582e3 beq a1,s8,c003c43a + c003c744: 2581 sext.w a1,a1 + c003c746: ed8582e3 beq a1,s8,c003c60a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003c57a: 0009079b sext.w a5,s2 - c003c57e: 06f91d63 bne s2,a5,c003c5f8 + c003c74a: 0009079b sext.w a5,s2 + c003c74e: 06f91d63 bne s2,a5,c003c7c8 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003c582: c382 sw zero,196(sp) - c003c584: c1ca sw s2,192(sp) - c003c586: 670e ld a4,192(sp) - c003c588: f582 sd zero,232(sp) - c003c58a: 4601 li a2,0 - c003c58c: f1ba sd a4,224(sp) + c003c752: c382 sw zero,196(sp) + c003c754: c1ca sw s2,192(sp) + c003c756: 670e ld a4,192(sp) + c003c758: f582 sd zero,232(sp) + c003c75a: 4601 li a2,0 + c003c75c: f1ba sd a4,224(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003c58e: d1be sw a5,224(sp) - c003c590: 378e fld fa5,224(sp) + c003c75e: d1be sw a5,224(sp) + c003c760: 378e fld fa5,224(sp) js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45376 prop = JS_ToStringFree(ctx, JS_NewInt64(ctx, i)); - c003c592: 758e ld a1,224(sp) - c003c594: 8522 mv a0,s0 - c003c596: b9be fsd fa5,240(sp) - c003c598: fdb2 sd a2,248(sp) - c003c59a: a46de0ef jal ra,c001a7e0 - c003c59e: e92a sd a0,144(sp) - c003c5a0: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45369 + c003c762: 758e ld a1,224(sp) + c003c764: 8522 mv a0,s0 + c003c766: b9be fsd fa5,240(sp) + c003c768: fdb2 sd a2,248(sp) + c003c76a: a46de0ef jal ra,c001a9b0 + c003c76e: e92a sd a0,144(sp) + c003c770: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45377 if (JS_IsException(prop)) - c003c5a2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 + c003c772: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45376 prop = JS_ToStringFree(ctx, JS_NewInt64(ctx, i)); - c003c5a6: 882a mv a6,a0 - c003c5a8: 88ae mv a7,a1 - c003c5aa: 8dae mv s11,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45369 + c003c776: 882a mv a6,a0 + c003c778: 88ae mv a7,a1 + c003c77a: 8dae mv s11,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45377 if (JS_IsException(prop)) - c003c5ac: e98788e3 beq a5,s8,c003c43c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45371 + c003c77c: e98788e3 beq a5,s8,c003c60c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45379 v = js_json_check(ctx, jsc, val, v, prop); - c003c5b0: 67aa ld a5,136(sp) - c003c5b2: 76a2 ld a3,40(sp) - c003c5b4: 670a ld a4,128(sp) - c003c5b6: 7602 ld a2,32(sp) - c003c5b8: 85a6 mv a1,s1 - c003c5ba: 8522 mv a0,s0 - c003c5bc: b43ff0ef jal ra,c003c0fe - c003c5c0: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45372 + c003c780: 67aa ld a5,136(sp) + c003c782: 76a2 ld a3,40(sp) + c003c784: 670a ld a4,128(sp) + c003c786: 7602 ld a2,32(sp) + c003c788: 85a6 mv a1,s1 + c003c78a: 8522 mv a0,s0 + c003c78c: b43ff0ef jal ra,c003c2ce + c003c790: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45380 JS_FreeValue(ctx, prop); - c003c5c2: 666a ld a2,152(sp) - c003c5c4: 65ca ld a1,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45371 + c003c792: 666a ld a2,152(sp) + c003c794: 65ca ld a1,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45379 v = js_json_check(ctx, jsc, val, v, prop); - c003c5c6: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45372 + c003c796: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45380 JS_FreeValue(ctx, prop); - c003c5c8: 8522 mv a0,s0 - c003c5ca: d6ecb0ef jal ra,c0007b38 + c003c798: 8522 mv a0,s0 + c003c79a: c8ccb0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003c5ce: 66a2 ld a3,8(sp) + c003c79e: 66a2 ld a3,8(sp) js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45373 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45381 prop = JS_UNDEFINED; - c003c5d0: e902 sd zero,144(sp) + c003c7a0: e902 sd zero,144(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003c5d2: 0006879b sext.w a5,a3 + c003c7a2: 0006879b sext.w a5,a3 js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45382 if (JS_IsException(v)) - c003c5d6: e78782e3 beq a5,s8,c003c43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45376 + c003c7a6: e78782e3 beq a5,s8,c003c60a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45384 if (JS_IsUndefined(v)) - c003c5da: 01979463 bne a5,s9,c003c5e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45377 + c003c7aa: 01979463 bne a5,s9,c003c7b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45385 v = JS_NULL; - c003c5de: e102 sd zero,128(sp) - c003c5e0: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45378 + c003c7ae: e102 sd zero,128(sp) + c003c7b0: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45386 if (js_json_to_str(ctx, jsc, val, v, indent1)) - c003c5e2: 6706 ld a4,64(sp) - c003c5e4: 660a ld a2,128(sp) - c003c5e6: 87da mv a5,s6 - c003c5e8: 85a6 mv a1,s1 - c003c5ea: 8522 mv a0,s0 - c003c5ec: c6dff0ef jal ra,c003c258 - c003c5f0: e40515e3 bnez a0,c003c43a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45360 + c003c7b2: 6706 ld a4,64(sp) + c003c7b4: 660a ld a2,128(sp) + c003c7b6: 87da mv a5,s6 + c003c7b8: 85a6 mv a1,s1 + c003c7ba: 8522 mv a0,s0 + c003c7bc: c6dff0ef jal ra,c003c428 + c003c7c0: e40515e3 bnez a0,c003c60a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45368 for(i = 0; i < len; i++) { - c003c5f4: 0905 addi s2,s2,1 - c003c5f6: b5c9 j c003c4b8 + c003c7c4: 0905 addi s2,s2,1 + c003c7c6: b5c9 j c003c688 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003c5f8: d22977d3 fcvt.d.l fa5,s2 - c003c5fc: 461d li a2,7 - c003c5fe: e20787d3 fmv.x.d a5,fa5 + c003c7c8: d22977d3 fcvt.d.l fa5,s2 + c003c7cc: 461d li a2,7 + c003c7ce: e20787d3 fmv.x.d a5,fa5 js_json_to_str(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003c602: b1be fsd fa5,224(sp) - c003c604: 2781 sext.w a5,a5 - c003c606: b761 j c003c58e + c003c7d2: b1be fsd fa5,224(sp) + c003c7d4: 2781 sext.w a5,a5 + c003c7d6: b761 j c003c75e JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003c608: 748c ld a1,40(s1) + c003c7d8: 748c ld a1,40(s1) js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45395 if (!JS_IsUndefined(jsc->property_list)) - c003c60a: 478d li a5,3 - c003c60c: 0005871b sext.w a4,a1 - c003c610: 06f70663 beq a4,a5,c003c67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45388 + c003c7da: 478d li a5,3 + c003c7dc: 0005871b sext.w a4,a1 + c003c7e0: 06f70663 beq a4,a5,c003c84c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45396 tab = JS_DupValue(ctx, jsc->property_list); - c003c614: 7088 ld a0,32(s1) - c003c616: 858ca0ef jal ra,c000666e - c003c61a: f8aa sd a0,112(sp) - c003c61c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45391 + c003c7e4: 7088 ld a0,32(s1) + c003c7e6: f77c90ef jal ra,c000675c + c003c7ea: f8aa sd a0,112(sp) + c003c7ec: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45399 if (JS_IsException(tab)) - c003c61e: 0009079b sext.w a5,s2 - c003c622: 4719 li a4,6 - c003c624: 1ee78a63 beq a5,a4,c003c818 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45393 + c003c7ee: 0009079b sext.w a5,s2 + c003c7f2: 4719 li a4,6 + c003c7f4: 1ee78a63 beq a5,a4,c003c9e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45401 if (js_get_length64(ctx, &len, tab)) - c003c628: 7646 ld a2,112(sp) - c003c62a: 86ca mv a3,s2 - c003c62c: 182c addi a1,sp,56 - c003c62e: 8522 mv a0,s0 - c003c630: fcca sd s2,120(sp) - c003c632: a0ce20ef jal ra,c001e83e - c003c636: 8c2a mv s8,a0 - c003c638: 1e051063 bnez a0,c003c818 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45395 + c003c7f8: 7646 ld a2,112(sp) + c003c7fa: 86ca mv a3,s2 + c003c7fc: 182c addi a1,sp,56 + c003c7fe: 8522 mv a0,s0 + c003c800: fcca sd s2,120(sp) + c003c802: a0ce20ef jal ra,c001ea0e + c003c806: 8c2a mv s8,a0 + c003c808: 1e051063 bnez a0,c003c9e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45403 string_buffer_putc8(jsc->b, '{'); - c003c63c: 68a8 ld a0,80(s1) - c003c63e: 07b00593 li a1,123 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c80c: 68a8 ld a0,80(s1) + c003c80e: 07b00593 li a1,123 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c642: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45395 + c003c812: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45403 string_buffer_putc8(jsc->b, '{'); - c003c644: aa3dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45397 + c003c814: aa3dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45405 for(i = 0; i < len; i++) { - c003c648: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45400 + c003c818: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45408 if (JS_IsException(prop)) - c003c64a: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45397 + c003c81a: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45405 for(i = 0; i < len; i++) { - c003c64c: 77e2 ld a5,56(sp) - c003c64e: 04fcc363 blt s9,a5,c003c694 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45425 + c003c81c: 77e2 ld a5,56(sp) + c003c81e: 04fcc363 blt s9,a5,c003c864 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45433 if (has_content && JS_VALUE_GET_STRING(jsc->gap)->len != 0) { - c003c652: 000c0f63 beqz s8,c003c670 - c003c656: 789c ld a5,48(s1) - c003c658: 43dc lw a5,4(a5) - c003c65a: 1786 slli a5,a5,0x21 - c003c65c: cb91 beqz a5,c003c670 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45426 + c003c822: 000c0f63 beqz s8,c003c840 + c003c826: 789c ld a5,48(s1) + c003c828: 43dc lw a5,4(a5) + c003c82a: 1786 slli a5,a5,0x21 + c003c82c: cb91 beqz a5,c003c840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45434 string_buffer_putc8(jsc->b, '\n'); - c003c65e: 68a8 ld a0,80(s1) - c003c660: 45a9 li a1,10 - c003c662: a85dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45427 + c003c82e: 68a8 ld a0,80(s1) + c003c830: 45a9 li a1,10 + c003c832: a85dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45435 string_buffer_concat_value(jsc->b, indent); - c003c666: 65c2 ld a1,16(sp) - c003c668: 6662 ld a2,24(sp) - c003c66a: 68a8 ld a0,80(s1) - c003c66c: 86cdf0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45429 + c003c836: 65c2 ld a1,16(sp) + c003c838: 6662 ld a2,24(sp) + c003c83a: 68a8 ld a0,80(s1) + c003c83c: 86cdf0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45437 string_buffer_putc8(jsc->b, '}'); - c003c670: 68a8 ld a0,80(s1) - c003c672: 07d00593 li a1,125 - c003c676: a71dc0ef jal ra,c00190e6 - c003c67a: bd9d j c003c4f0 + c003c840: 68a8 ld a0,80(s1) + c003c842: 07d00593 li a1,125 + c003c846: a71dc0ef jal ra,c00192b6 + c003c84a: bd9d j c003c6c0 js_object_keys(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:37616 return JS_GetOwnPropertyNames2(ctx, argv[0], - c003c67c: 7582 ld a1,32(sp) - c003c67e: 7622 ld a2,40(sp) - c003c680: 4701 li a4,0 - c003c682: 46c5 li a3,17 - c003c684: 8522 mv a0,s0 - c003c686: d0af80ef jal ra,c0034b90 - c003c68a: 892e mv s2,a1 - c003c68c: f92a sd a0,176(sp) - c003c68e: fd2e sd a1,184(sp) - c003c690: f8aa sd a0,112(sp) - c003c692: b771 j c003c61e + c003c84c: 7582 ld a1,32(sp) + c003c84e: 7622 ld a2,40(sp) + c003c850: 4701 li a4,0 + c003c852: 46c5 li a3,17 + c003c854: 8522 mv a0,s0 + c003c856: d0af80ef jal ra,c0034d60 + c003c85a: 892e mv s2,a1 + c003c85c: f92a sd a0,176(sp) + c003c85e: fd2e sd a1,184(sp) + c003c860: f8aa sd a0,112(sp) + c003c862: b771 j c003c7ee js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45398 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45406 JS_FreeValue(ctx, prop); - c003c694: 65ca ld a1,144(sp) - c003c696: 866e mv a2,s11 - c003c698: 8522 mv a0,s0 - c003c69a: c9ecb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45399 + c003c864: 65ca ld a1,144(sp) + c003c866: 866e mv a2,s11 + c003c868: 8522 mv a0,s0 + c003c86a: bbccb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45407 prop = JS_GetPropertyInt64(ctx, tab, i); - c003c69e: 75c6 ld a1,112(sp) - c003c6a0: 86e6 mv a3,s9 - c003c6a2: 864a mv a2,s2 - c003c6a4: 8522 mv a0,s0 - c003c6a6: fcca sd s2,120(sp) - c003c6a8: 827f50ef jal ra,c0031ece - c003c6ac: e92a sd a0,144(sp) - c003c6ae: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45400 + c003c86e: 75c6 ld a1,112(sp) + c003c870: 86e6 mv a3,s9 + c003c872: 864a mv a2,s2 + c003c874: 8522 mv a0,s0 + c003c876: fcca sd s2,120(sp) + c003c878: 827f50ef jal ra,c003209e + c003c87c: e92a sd a0,144(sp) + c003c87e: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45408 if (JS_IsException(prop)) - c003c6b0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45399 + c003c880: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45407 prop = JS_GetPropertyInt64(ctx, tab, i); - c003c6b4: 8dae mv s11,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45400 + c003c884: 8dae mv s11,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45408 if (JS_IsException(prop)) - c003c6b6: 07a78b63 beq a5,s10,c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45402 + c003c886: 07a78b63 beq a5,s10,c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45410 v = JS_GetPropertyValue(ctx, val, JS_DupValue(ctx, prop)); - c003c6ba: fb5c90ef jal ra,c000666e - c003c6be: 872e mv a4,a1 - c003c6c0: f5ae sd a1,232(sp) - c003c6c2: 7622 ld a2,40(sp) - c003c6c4: 7582 ld a1,32(sp) - c003c6c6: 86aa mv a3,a0 - c003c6c8: f1aa sd a0,224(sp) - c003c6ca: 8522 mv a0,s0 - c003c6cc: ddcd50ef jal ra,c0011ca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45403 + c003c88a: ed3c90ef jal ra,c000675c + c003c88e: 872e mv a4,a1 + c003c890: f5ae sd a1,232(sp) + c003c892: 7622 ld a2,40(sp) + c003c894: 7582 ld a1,32(sp) + c003c896: 86aa mv a3,a0 + c003c898: f1aa sd a0,224(sp) + c003c89a: 8522 mv a0,s0 + c003c89c: cfad50ef jal ra,c0011d96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45411 if (JS_IsException(v)) - c003c6d0: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45402 + c003c8a0: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45410 v = JS_GetPropertyValue(ctx, val, JS_DupValue(ctx, prop)); - c003c6d4: 872a mv a4,a0 - c003c6d6: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45403 + c003c8a4: 872a mv a4,a0 + c003c8a6: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45411 if (JS_IsException(v)) - c003c6d8: 05a68a63 beq a3,s10,c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45405 + c003c8a8: 05a68a63 beq a3,s10,c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45413 v = js_json_check(ctx, jsc, val, v, prop); - c003c6dc: 684a ld a6,144(sp) - c003c6de: 68ea ld a7,152(sp) - c003c6e0: 7602 ld a2,32(sp) - c003c6e2: 76a2 ld a3,40(sp) - c003c6e4: 85a6 mv a1,s1 - c003c6e6: 8522 mv a0,s0 - c003c6e8: a17ff0ef jal ra,c003c0fe - c003c6ec: e52e sd a1,136(sp) - c003c6ee: e12a sd a0,128(sp) + c003c8ac: 684a ld a6,144(sp) + c003c8ae: 68ea ld a7,152(sp) + c003c8b0: 7602 ld a2,32(sp) + c003c8b2: 76a2 ld a3,40(sp) + c003c8b4: 85a6 mv a1,s1 + c003c8b6: 8522 mv a0,s0 + c003c8b8: a17ff0ef jal ra,c003c2ce + c003c8bc: e52e sd a1,136(sp) + c003c8be: e12a sd a0,128(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003c6f0: 2581 sext.w a1,a1 + c003c8c0: 2581 sext.w a1,a1 js_json_to_str(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45406 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45414 if (JS_IsException(v)) - c003c6f2: 03a58d63 beq a1,s10,c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45408 + c003c8c2: 03a58d63 beq a1,s10,c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45416 if (!JS_IsUndefined(v)) { - c003c6f6: 478d li a5,3 - c003c6f8: 0af58b63 beq a1,a5,c003c7ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45409 + c003c8c6: 478d li a5,3 + c003c8c8: 0af58b63 beq a1,a5,c003c97e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45417 if (has_content) - c003c6fc: 000c0763 beqz s8,c003c70a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45410 + c003c8cc: 000c0763 beqz s8,c003c8da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45418 string_buffer_putc8(jsc->b, ','); - c003c700: 68a8 ld a0,80(s1) - c003c702: 02c00593 li a1,44 - c003c706: 9e1dc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45411 + c003c8d0: 68a8 ld a0,80(s1) + c003c8d2: 02c00593 li a1,44 + c003c8d6: 9e1dc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45419 prop = JS_ToQuotedStringFree(ctx, prop); - c003c70a: 65ca ld a1,144(sp) - c003c70c: 666a ld a2,152(sp) - c003c70e: 8522 mv a0,s0 - c003c710: 937de0ef jal ra,c001b046 - c003c714: e92a sd a0,144(sp) - c003c716: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45412 + c003c8da: 65ca ld a1,144(sp) + c003c8dc: 666a ld a2,152(sp) + c003c8de: 8522 mv a0,s0 + c003c8e0: 937de0ef jal ra,c001b216 + c003c8e4: e92a sd a0,144(sp) + c003c8e6: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45420 if (JS_IsException(prop)) { - c003c718: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45411 + c003c8e8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45419 prop = JS_ToQuotedStringFree(ctx, prop); - c003c71c: 8dae mv s11,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45412 + c003c8ec: 8dae mv s11,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45420 if (JS_IsException(prop)) { - c003c71e: 05a79763 bne a5,s10,c003c76c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45413 + c003c8ee: 05a79763 bne a5,s10,c003c93c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45421 JS_FreeValue(ctx, v); - c003c722: 658a ld a1,128(sp) - c003c724: 662a ld a2,136(sp) - c003c726: 8522 mv a0,s0 - c003c728: c10cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45467 + c003c8f2: 658a ld a1,128(sp) + c003c8f4: 662a ld a2,136(sp) + c003c8f6: 8522 mv a0,s0 + c003c8f8: b2ecb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45475 JS_FreeValue(ctx, val); - c003c72c: 7582 ld a1,32(sp) - c003c72e: 7622 ld a2,40(sp) - c003c730: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45473 + c003c8fc: 7582 ld a1,32(sp) + c003c8fe: 7622 ld a2,40(sp) + c003c900: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45481 return -1; - c003c732: 5afd li s5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45467 + c003c902: 5afd li s5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45475 JS_FreeValue(ctx, val); - c003c734: c04cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45468 + c003c904: b22cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45476 JS_FreeValue(ctx, tab); - c003c738: 75c6 ld a1,112(sp) - c003c73a: 864a mv a2,s2 - c003c73c: 8522 mv a0,s0 - c003c73e: bfacb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45469 + c003c908: 75c6 ld a1,112(sp) + c003c90a: 864a mv a2,s2 + c003c90c: 8522 mv a0,s0 + c003c90e: b18cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45477 JS_FreeValue(ctx, sep); - c003c742: 65c6 ld a1,80(sp) - c003c744: 8652 mv a2,s4 - c003c746: 8522 mv a0,s0 - c003c748: bf0cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45470 + c003c912: 65c6 ld a1,80(sp) + c003c914: 8652 mv a2,s4 + c003c916: 8522 mv a0,s0 + c003c918: b0ecb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45478 JS_FreeValue(ctx, sep1); - c003c74c: 7586 ld a1,96(sp) - c003c74e: 864e mv a2,s3 - c003c750: 8522 mv a0,s0 - c003c752: be6cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45471 + c003c91c: 7586 ld a1,96(sp) + c003c91e: 864e mv a2,s3 + c003c920: 8522 mv a0,s0 + c003c922: b04cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45479 JS_FreeValue(ctx, indent1); - c003c756: 6586 ld a1,64(sp) - c003c758: 865e mv a2,s7 - c003c75a: 8522 mv a0,s0 - c003c75c: bdccb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45472 + c003c926: 6586 ld a1,64(sp) + c003c928: 865e mv a2,s7 + c003c92a: 8522 mv a0,s0 + c003c92c: afacb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45480 JS_FreeValue(ctx, prop); - c003c760: 65ca ld a1,144(sp) - c003c762: 866e mv a2,s11 - c003c764: 8522 mv a0,s0 - c003c766: bd2cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45473 + c003c930: 65ca ld a1,144(sp) + c003c932: 866e mv a2,s11 + c003c934: 8522 mv a0,s0 + c003c936: af0cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45481 return -1; - c003c76a: bee9 j c003c344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45416 + c003c93a: bee9 j c003c514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45424 string_buffer_concat_value(jsc->b, sep); - c003c76c: 65c6 ld a1,80(sp) - c003c76e: 68a8 ld a0,80(s1) - c003c770: 8652 mv a2,s4 - c003c772: ecd2 sd s4,88(sp) - c003c774: f65de0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45417 + c003c93c: 65c6 ld a1,80(sp) + c003c93e: 68a8 ld a0,80(s1) + c003c940: 8652 mv a2,s4 + c003c942: ecd2 sd s4,88(sp) + c003c944: f65de0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45425 string_buffer_concat_value(jsc->b, prop); - c003c778: 666a ld a2,152(sp) - c003c77a: 65ca ld a1,144(sp) - c003c77c: 68a8 ld a0,80(s1) - c003c77e: f5bde0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45418 + c003c948: 666a ld a2,152(sp) + c003c94a: 65ca ld a1,144(sp) + c003c94c: 68a8 ld a0,80(s1) + c003c94e: f5bde0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45426 string_buffer_putc8(jsc->b, ':'); - c003c782: 68a8 ld a0,80(s1) - c003c784: 03a00593 li a1,58 - c003c788: 95fdc0ef jal ra,c00190e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45419 + c003c952: 68a8 ld a0,80(s1) + c003c954: 03a00593 li a1,58 + c003c958: 95fdc0ef jal ra,c00192b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45427 string_buffer_concat_value(jsc->b, sep1); - c003c78c: 7586 ld a1,96(sp) - c003c78e: 68a8 ld a0,80(s1) - c003c790: 864e mv a2,s3 - c003c792: f4ce sd s3,104(sp) - c003c794: f45de0ef jal ra,c001b6d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45420 + c003c95c: 7586 ld a1,96(sp) + c003c95e: 68a8 ld a0,80(s1) + c003c960: 864e mv a2,s3 + c003c962: f4ce sd s3,104(sp) + c003c964: f45de0ef jal ra,c001b8a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45428 if (js_json_to_str(ctx, jsc, val, v, indent1)) - c003c798: 6706 ld a4,64(sp) - c003c79a: 660a ld a2,128(sp) - c003c79c: 66aa ld a3,136(sp) - c003c79e: 87da mv a5,s6 - c003c7a0: 85a6 mv a1,s1 - c003c7a2: 8522 mv a0,s0 - c003c7a4: e4da sd s6,72(sp) - c003c7a6: ab3ff0ef jal ra,c003c258 - c003c7aa: f149 bnez a0,c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45422 + c003c968: 6706 ld a4,64(sp) + c003c96a: 660a ld a2,128(sp) + c003c96c: 66aa ld a3,136(sp) + c003c96e: 87da mv a5,s6 + c003c970: 85a6 mv a1,s1 + c003c972: 8522 mv a0,s0 + c003c974: e4da sd s6,72(sp) + c003c976: ab3ff0ef jal ra,c003c428 + c003c97a: f149 bnez a0,c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45430 has_content = TRUE; - c003c7ac: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45397 + c003c97c: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45405 for(i = 0; i < len; i++) { - c003c7ae: 0c85 addi s9,s9,1 - c003c7b0: bd71 j c003c64c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45441 + c003c97e: 0c85 addi s9,s9,1 + c003c980: bd71 j c003c81c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45449 val = JS_ToQuotedStringFree(ctx, val); - c003c7b2: 7582 ld a1,32(sp) - c003c7b4: 7622 ld a2,40(sp) - c003c7b6: 891de0ef jal ra,c001b046 - c003c7ba: f42e sd a1,40(sp) - c003c7bc: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45442 + c003c982: 7582 ld a1,32(sp) + c003c984: 7622 ld a2,40(sp) + c003c986: 891de0ef jal ra,c001b216 + c003c98a: f42e sd a1,40(sp) + c003c98c: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45450 if (JS_IsException(val)) - c003c7be: 2581 sext.w a1,a1 - c003c7c0: 4799 li a5,6 - c003c7c2: b4f58de3 beq a1,a5,c003c31c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45457 + c003c98e: 2581 sext.w a1,a1 + c003c990: 4799 li a5,6 + c003c992: b4f58de3 beq a1,a5,c003c4ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45465 return string_buffer_concat_value_free(jsc->b, val); - c003c7c6: 7582 ld a1,32(sp) - c003c7c8: 7622 ld a2,40(sp) - c003c7ca: b62d j c003c2f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45446 + c003c996: 7582 ld a1,32(sp) + c003c998: 7622 ld a2,40(sp) + c003c99a: b62d j c003c4c4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45454 if (!isfinite(JS_VALUE_GET_FLOAT64(val))) { - c003c7cc: 00038797 auipc a5,0x38 - c003c7d0: fbc7b787 fld fa5,-68(a5) # c0074788 <_erodata+0x8> - c003c7d4: 12f7f7d3 fmul.d fa5,fa5,fa5 - c003c7d8: 3702 fld fa4,32(sp) - c003c7da: a2f727d3 feq.d a5,fa4,fa5 - c003c7de: eb89 bnez a5,c003c7f0 - c003c7e0: 22f797d3 fneg.d fa5,fa5 - c003c7e4: a2f727d3 feq.d a5,fa4,fa5 - c003c7e8: e781 bnez a5,c003c7f0 - c003c7ea: a2e727d3 feq.d a5,fa4,fa4 - c003c7ee: ffe1 bnez a5,c003c7c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45447 + c003c99c: 00038797 auipc a5,0x38 + c003c9a0: 04c7b787 fld fa5,76(a5) # c00749e8 <_erodata+0x8> + c003c9a4: 12f7f7d3 fmul.d fa5,fa5,fa5 + c003c9a8: 3702 fld fa4,32(sp) + c003c9aa: a2f727d3 feq.d a5,fa4,fa5 + c003c9ae: eb89 bnez a5,c003c9c0 + c003c9b0: 22f797d3 fneg.d fa5,fa5 + c003c9b4: a2f727d3 feq.d a5,fa4,fa5 + c003c9b8: e781 bnez a5,c003c9c0 + c003c9ba: a2e727d3 feq.d a5,fa4,fa4 + c003c9be: ffe1 bnez a5,c003c996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45455 val = JS_NULL; - c003c7f0: 4789 li a5,2 - c003c7f2: f002 sd zero,32(sp) - c003c7f4: f43e sd a5,40(sp) - c003c7f6: bfc1 j c003c7c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45462 + c003c9c0: 4789 li a5,2 + c003c9c2: f002 sd zero,32(sp) + c003c9c4: f43e sd a5,40(sp) + c003c9c6: bfc1 j c003c996 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45470 JS_FreeValue(ctx, val); - c003c7f8: 7582 ld a1,32(sp) - c003c7fa: 7622 ld a2,40(sp) - c003c7fc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45463 + c003c9c8: 7582 ld a1,32(sp) + c003c9ca: 7622 ld a2,40(sp) + c003c9cc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45471 return 0; - c003c7fe: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45462 + c003c9ce: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45470 JS_FreeValue(ctx, val); - c003c800: b38cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45463 + c003c9d0: a56cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45471 return 0; - c003c804: b681 j c003c344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c9d4: b681 j c003c514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c806: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c9d6: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c808: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45294 + c003c9d8: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 sep1 = JS_UNDEFINED; - c003c80a: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45293 + c003c9da: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45301 sep = JS_UNDEFINED; - c003c80c: 4a0d li s4,3 - c003c80e: bf39 j c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c9dc: 4a0d li s4,3 + c003c9de: bf39 j c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c810: 4d8d li s11,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45295 + c003c9e0: 4d8d li s11,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45303 tab = JS_UNDEFINED; - c003c812: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45294 + c003c9e2: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45302 sep1 = JS_UNDEFINED; - c003c814: 498d li s3,3 - c003c816: bf19 j c003c72c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45296 + c003c9e4: 498d li s3,3 + c003c9e6: bf19 j c003c8fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45304 prop = JS_UNDEFINED; - c003c818: 4d8d li s11,3 - c003c81a: bf09 j c003c72c + c003c9e8: 4d8d li s11,3 + c003c9ea: bf09 j c003c8fc -00000000c003c81c : +00000000c003c9ec : JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 { - c003c81c: 7149 addi sp,sp,-368 - c003c81e: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45485 + c003c9ec: 7149 addi sp,sp,-368 + c003c9ee: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45493 jsc->replacer_func = JS_UNDEFINED; - c003c820: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45478 + c003c9f0: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 { - c003c822: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45485 + c003c9f2: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45493 jsc->replacer_func = JS_UNDEFINED; - c003c824: e9be sd a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 + c003c9f4: e9be sd a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45494 jsc->stack = JS_UNDEFINED; - c003c826: f1be sd a5,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45487 + c003c9f6: f1be sd a5,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45495 jsc->property_list = JS_UNDEFINED; - c003c828: f9be sd a5,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45488 + c003c9f8: f9be sd a5,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45496 jsc->gap = JS_UNDEFINED; - c003c82a: e23e sd a5,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45490 + c003c9fa: e23e sd a5,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45498 jsc->empty = JS_AtomToString(ctx, JS_ATOM_empty_string); - c003c82c: 02f00593 li a1,47 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45489 + c003c9fc: 02f00593 li a1,47 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45497 jsc->b = &b_s; - c003c830: 113c addi a5,sp,168 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45478 + c003ca00: 113c addi a5,sp,168 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 { - c003c832: f686 sd ra,360(sp) - c003c834: e836 sd a3,16(sp) - c003c836: ec3a sd a4,24(sp) - c003c838: e442 sd a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45489 + c003ca02: f686 sd ra,360(sp) + c003ca04: e836 sd a3,16(sp) + c003ca06: ec3a sd a4,24(sp) + c003ca08: e442 sd a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45497 jsc->b = &b_s; - c003c83a: ee3e sd a5,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45478 + c003ca0a: ee3e sd a5,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 { - c003c83c: f2a2 sd s0,352(sp) - c003c83e: eea6 sd s1,344(sp) - c003c840: 842a mv s0,a0 - c003c842: f432 sd a2,40(sp) - c003c844: eaca sd s2,336(sp) - c003c846: e6ce sd s3,328(sp) - c003c848: e2d2 sd s4,320(sp) - c003c84a: fe56 sd s5,312(sp) - c003c84c: fa5a sd s6,304(sp) - c003c84e: f65e sd s7,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45485 + c003ca0c: f2a2 sd s0,352(sp) + c003ca0e: eea6 sd s1,344(sp) + c003ca10: 842a mv s0,a0 + c003ca12: f432 sd a2,40(sp) + c003ca14: eaca sd s2,336(sp) + c003ca16: e6ce sd s3,328(sp) + c003ca18: e2d2 sd s4,320(sp) + c003ca1a: fe56 sd s5,312(sp) + c003ca1c: fa5a sd s6,304(sp) + c003ca1e: f65e sd s7,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45493 jsc->replacer_func = JS_UNDEFINED; - c003c850: e582 sd zero,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45486 + c003ca20: e582 sd zero,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45494 jsc->stack = JS_UNDEFINED; - c003c852: ed82 sd zero,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45487 + c003ca22: ed82 sd zero,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45495 jsc->property_list = JS_UNDEFINED; - c003c854: f582 sd zero,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45488 + c003ca24: f582 sd zero,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45496 jsc->gap = JS_UNDEFINED; - c003c856: fd82 sd zero,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45490 + c003ca26: fd82 sd zero,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45498 jsc->empty = JS_AtomToString(ctx, JS_ATOM_empty_string); - c003c858: ae4dd0ef jal ra,c0019b3c - c003c85c: ea2e sd a1,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45494 + c003ca28: ae4dd0ef jal ra,c0019d0c + c003ca2c: ea2e sd a1,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45502 string_buffer_init(ctx, jsc->b, 0); - c003c85e: 65f2 ld a1,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45490 + c003ca2e: 65f2 ld a1,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45498 jsc->empty = JS_AtomToString(ctx, JS_ATOM_empty_string); - c003c860: e62a sd a0,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45494 + c003ca30: e62a sd a0,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45502 string_buffer_init(ctx, jsc->b, 0); - c003c862: 4601 li a2,0 - c003c864: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45491 + c003ca32: 4601 li a2,0 + c003ca34: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45499 ret = JS_UNDEFINED; - c003c866: f482 sd zero,104(sp) - c003c868: f882 sd zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45492 + c003ca36: f482 sd zero,104(sp) + c003ca38: f882 sd zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45500 wrapper = JS_UNDEFINED; - c003c86a: fc82 sd zero,120(sp) - c003c86c: e102 sd zero,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45494 + c003ca3a: fc82 sd zero,120(sp) + c003ca3c: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45502 string_buffer_init(ctx, jsc->b, 0); - c003c86e: b60dc0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45495 + c003ca3e: b60dc0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45503 jsc->stack = JS_NewArray(ctx); - c003c872: 8522 mv a0,s0 - c003c874: f4ada0ef jal ra,c0016fbe - c003c878: f1ae sd a1,224(sp) - c003c87a: edaa sd a0,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45496 + c003ca42: 8522 mv a0,s0 + c003ca44: f4ada0ef jal ra,c001718e + c003ca48: f1ae sd a1,224(sp) + c003ca4a: edaa sd a0,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45504 if (JS_IsException(jsc->stack)) - c003c87c: 2581 sext.w a1,a1 - c003c87e: 4499 li s1,6 - c003c880: 0c958e63 beq a1,s1,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45498 + c003ca4c: 2581 sext.w a1,a1 + c003ca4e: 4499 li s1,6 + c003ca50: 0c958e63 beq a1,s1,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45506 if (JS_IsFunction(ctx, replacer)) { - c003c884: 65c2 ld a1,16(sp) - c003c886: 6662 ld a2,24(sp) - c003c888: 8522 mv a0,s0 - c003c88a: e53cd0ef jal ra,c000a6dc - c003c88e: c921 beqz a0,c003c8de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45499 + c003ca54: 65c2 ld a1,16(sp) + c003ca56: 6662 ld a2,24(sp) + c003ca58: 8522 mv a0,s0 + c003ca5a: d71cd0ef jal ra,c000a7ca + c003ca5e: c921 beqz a0,c003caae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45507 jsc->replacer_func = replacer; - c003c890: 67c2 ld a5,16(sp) - c003c892: e5be sd a5,200(sp) - c003c894: 67e2 ld a5,24(sp) - c003c896: e9be sd a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45549 + c003ca60: 67c2 ld a5,16(sp) + c003ca62: e5be sd a5,200(sp) + c003ca64: 67e2 ld a5,24(sp) + c003ca66: e9be sd a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45557 space = JS_DupValue(ctx, space0); - c003c898: 6502 ld a0,0(sp) - c003c89a: 65a2 ld a1,8(sp) - c003c89c: dd3c90ef jal ra,c000666e - c003c8a0: ecaa sd a0,88(sp) - c003c8a2: f0ae sd a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45550 + c003ca68: 6502 ld a0,0(sp) + c003ca6a: 65a2 ld a1,8(sp) + c003ca6c: cf1c90ef jal ra,c000675c + c003ca70: ecaa sd a0,88(sp) + c003ca72: f0ae sd a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45558 if (JS_IsObject(space)) { - c003c8a4: 0005871b sext.w a4,a1 - c003c8a8: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45549 + c003ca74: 0005871b sext.w a4,a1 + c003ca78: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45557 space = JS_DupValue(ctx, space0); - c003c8aa: 84ae mv s1,a1 - c003c8ac: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45550 + c003ca7a: 84ae mv s1,a1 + c003ca7c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45558 if (JS_IsObject(space)) { - c003c8ae: 12f71563 bne a4,a5,c003c9d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45552 + c003ca7e: 12f71563 bne a4,a5,c003cba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45560 if (p->class_id == JS_CLASS_NUMBER) { - c003c8b2: 00655783 lhu a5,6(a0) - c003c8b6: 4711 li a4,4 - c003c8b8: 10e79763 bne a5,a4,c003c9c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45553 + c003ca82: 00655783 lhu a5,6(a0) + c003ca86: 4711 li a4,4 + c003ca88: 10e79763 bne a5,a4,c003cb96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45561 space = JS_ToNumberFree(ctx, space); - c003c8bc: 85aa mv a1,a0 - c003c8be: 8626 mv a2,s1 - c003c8c0: 8522 mv a0,s0 - c003c8c2: 9a9df0ef jal ra,c001c26a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45555 + c003ca8c: 85aa mv a1,a0 + c003ca8e: 8626 mv a2,s1 + c003ca90: 8522 mv a0,s0 + c003ca92: 9a9df0ef jal ra,c001c43a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45563 space = JS_ToStringFree(ctx, space); - c003c8c6: 84ae mv s1,a1 - c003c8c8: ecaa sd a0,88(sp) - c003c8ca: f0ae sd a1,96(sp) - c003c8cc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45557 + c003ca96: 84ae mv s1,a1 + c003ca98: ecaa sd a0,88(sp) + c003ca9a: f0ae sd a1,96(sp) + c003ca9c: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45565 if (JS_IsException(space)) { - c003c8ce: 0004879b sext.w a5,s1 - c003c8d2: 4719 li a4,6 - c003c8d4: 10e79263 bne a5,a4,c003c9d8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45558 + c003ca9e: 0004879b sext.w a5,s1 + c003caa2: 4719 li a4,6 + c003caa4: 10e79263 bne a5,a4,c003cba8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45566 JS_FreeValue(ctx, space); - c003c8d8: 85ca mv a1,s2 - c003c8da: 8626 mv a2,s1 - c003c8dc: a84d j c003c98e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45501 + c003caa8: 85ca mv a1,s2 + c003caaa: 8626 mv a2,s1 + c003caac: a84d j c003cb5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45509 res = JS_IsArray(ctx, replacer); - c003c8de: 65c2 ld a1,16(sp) - c003c8e0: 6662 ld a2,24(sp) - c003c8e2: 8522 mv a0,s0 - c003c8e4: 9ebd70ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45502 + c003caae: 65c2 ld a1,16(sp) + c003cab0: 6662 ld a2,24(sp) + c003cab2: 8522 mv a0,s0 + c003cab4: 909d70ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45510 if (res < 0) - c003c8e8: 06054a63 bltz a0,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45504 + c003cab8: 06054a63 bltz a0,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45512 if (res) { - c003c8ec: d555 beqz a0,c003c898 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45506 + c003cabc: d555 beqz a0,c003ca68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45514 jsc->property_list = JS_NewArray(ctx); - c003c8ee: 8522 mv a0,s0 - c003c8f0: eceda0ef jal ra,c0016fbe - c003c8f4: f9ae sd a1,240(sp) - c003c8f6: f5aa sd a0,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45507 + c003cabe: 8522 mv a0,s0 + c003cac0: eceda0ef jal ra,c001718e + c003cac4: f9ae sd a1,240(sp) + c003cac6: f5aa sd a0,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45515 if (JS_IsException(jsc->property_list)) - c003c8f8: 2581 sext.w a1,a1 - c003c8fa: 06958163 beq a1,s1,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45509 + c003cac8: 2581 sext.w a1,a1 + c003caca: 06958163 beq a1,s1,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45517 if (js_get_length64(ctx, &n, replacer)) - c003c8fe: 6642 ld a2,16(sp) - c003c900: 66e2 ld a3,24(sp) - c003c902: 180c addi a1,sp,48 - c003c904: 8522 mv a0,s0 - c003c906: f39e10ef jal ra,c001e83e - c003c90a: e929 bnez a0,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45511 + c003cace: 6642 ld a2,16(sp) + c003cad0: 66e2 ld a3,24(sp) + c003cad2: 180c addi a1,sp,48 + c003cad4: 8522 mv a0,s0 + c003cad6: f39e10ef jal ra,c001ea0e + c003cada: e929 bnez a0,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45519 for (i = j = 0; i < n; i++) { - c003c90c: 4901 li s2,0 - c003c90e: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45514 + c003cadc: 4901 li s2,0 + c003cade: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45522 if (JS_IsException(v)) - c003c910: 4999 li s3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45516 + c003cae0: 4999 li s3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45524 if (JS_IsObject(v)) { - c003c912: 5a7d li s4,-1 + c003cae2: 5a7d li s4,-1 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c003c914: 4a9d li s5,7 + c003cae4: 4a9d li s5,7 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45539 } else if (!JS_IsString(v)) { - c003c916: 5b65 li s6,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45511 (discriminator 1) + c003cae6: 5b65 li s6,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45519 (discriminator 1) for (i = j = 0; i < n; i++) { - c003c918: 77c2 ld a5,48(sp) - c003c91a: f6f4dfe3 bge s1,a5,c003c898 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45513 + c003cae8: 77c2 ld a5,48(sp) + c003caea: f6f4dfe3 bge s1,a5,c003ca68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45521 v = JS_GetPropertyInt64(ctx, replacer, i); - c003c91e: 65c2 ld a1,16(sp) - c003c920: 6662 ld a2,24(sp) - c003c922: 86a6 mv a3,s1 - c003c924: 8522 mv a0,s0 - c003c926: da8f50ef jal ra,c0031ece - c003c92a: e8ae sd a1,80(sp) - c003c92c: e4aa sd a0,72(sp) + c003caee: 65c2 ld a1,16(sp) + c003caf0: 6662 ld a2,24(sp) + c003caf2: 86a6 mv a3,s1 + c003caf4: 8522 mv a0,s0 + c003caf6: da8f50ef jal ra,c003209e + c003cafa: e8ae sd a1,80(sp) + c003cafc: e4aa sd a0,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003c92e: 2581 sext.w a1,a1 + c003cafe: 2581 sext.w a1,a1 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45522 if (JS_IsException(v)) - c003c930: 03358663 beq a1,s3,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45516 + c003cb00: 03358663 beq a1,s3,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45524 if (JS_IsObject(v)) { - c003c934: 03459863 bne a1,s4,c003c964 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45518 + c003cb04: 03459863 bne a1,s4,c003cb34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45526 if (p->class_id == JS_CLASS_STRING || - c003c938: 00655783 lhu a5,6(a0) - c003c93c: 4705 li a4,1 - c003c93e: 37f1 addiw a5,a5,-4 - c003c940: 17c2 slli a5,a5,0x30 - c003c942: 93c1 srli a5,a5,0x30 - c003c944: 06f76b63 bltu a4,a5,c003c9ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45520 + c003cb08: 00655783 lhu a5,6(a0) + c003cb0c: 4705 li a4,1 + c003cb0e: 37f1 addiw a5,a5,-4 + c003cb10: 17c2 slli a5,a5,0x30 + c003cb12: 93c1 srli a5,a5,0x30 + c003cb14: 06f76b63 bltu a4,a5,c003cb8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45528 v = JS_ToStringFree(ctx, v); - c003c948: 65a6 ld a1,72(sp) - c003c94a: 6646 ld a2,80(sp) - c003c94c: 8522 mv a0,s0 - c003c94e: e93dd0ef jal ra,c001a7e0 - c003c952: e8ae sd a1,80(sp) - c003c954: e4aa sd a0,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45521 + c003cb18: 65a6 ld a1,72(sp) + c003cb1a: 6646 ld a2,80(sp) + c003cb1c: 8522 mv a0,s0 + c003cb1e: e93dd0ef jal ra,c001a9b0 + c003cb22: e8ae sd a1,80(sp) + c003cb24: e4aa sd a0,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45529 if (JS_IsException(v)) - c003c956: 2581 sext.w a1,a1 - c003c958: 01359b63 bne a1,s3,c003c96e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45492 + c003cb26: 2581 sext.w a1,a1 + c003cb28: 01359b63 bne a1,s3,c003cb3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45500 wrapper = JS_UNDEFINED; - c003c95c: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45598 + c003cb2c: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45606 ret = JS_EXCEPTION; - c003c95e: f482 sd zero,104(sp) - c003c960: 4499 li s1,6 - c003c962: aa15 j c003ca96 + c003cb2e: f482 sd zero,104(sp) + c003cb30: 4499 li s1,6 + c003cb32: aa15 j c003cc66 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c003c964: d1f5 beqz a1,c003c948 - c003c966: ff5581e3 beq a1,s5,c003c948 + c003cb34: d1f5 beqz a1,c003cb18 + c003cb36: ff5581e3 beq a1,s5,c003cb18 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45539 } else if (!JS_IsString(v)) { - c003c96a: 05659863 bne a1,s6,c003c9ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45535 + c003cb3a: 05659863 bne a1,s6,c003cb8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45543 present = js_array_includes(ctx, jsc->property_list, - c003c96e: 764e ld a2,240(sp) - c003c970: 75ae ld a1,232(sp) - c003c972: 00b8 addi a4,sp,72 - c003c974: 4685 li a3,1 - c003c976: 8522 mv a0,s0 - c003c978: dd4f50ef jal ra,c0031f4c - c003c97c: ed2a sd a0,152(sp) - c003c97e: f12e sd a1,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45537 + c003cb3e: 764e ld a2,240(sp) + c003cb40: 75ae ld a1,232(sp) + c003cb42: 00b8 addi a4,sp,72 + c003cb44: 4685 li a3,1 + c003cb46: 8522 mv a0,s0 + c003cb48: dd4f50ef jal ra,c003211c + c003cb4c: ed2a sd a0,152(sp) + c003cb4e: f12e sd a1,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45545 if (JS_IsException(present)) { - c003c980: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45535 + c003cb50: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45543 present = js_array_includes(ctx, jsc->property_list, - c003c984: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45537 + c003cb54: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45545 if (JS_IsException(present)) { - c003c986: 01379863 bne a5,s3,c003c996 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45538 + c003cb56: 01379863 bne a5,s3,c003cb66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45546 JS_FreeValue(ctx, v); - c003c98a: 65a6 ld a1,72(sp) - c003c98c: 6646 ld a2,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45558 + c003cb5a: 65a6 ld a1,72(sp) + c003cb5c: 6646 ld a2,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45566 JS_FreeValue(ctx, space); - c003c98e: 8522 mv a0,s0 - c003c990: 9a8cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45559 + c003cb5e: 8522 mv a0,s0 + c003cb60: 8c6cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45567 goto exception; - c003c994: b7e1 j c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45541 + c003cb64: b7e1 j c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45549 if (!JS_ToBoolFree(ctx, present)) { - c003c996: 85aa mv a1,a0 - c003c998: 8522 mv a0,s0 - c003c99a: ccacb0ef jal ra,c0007e64 - c003c99e: ed11 bnez a0,c003c9ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45542 + c003cb66: 85aa mv a1,a0 + c003cb68: 8522 mv a0,s0 + c003cb6a: be8cb0ef jal ra,c0007f52 + c003cb6e: ed11 bnez a0,c003cb8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45550 JS_SetPropertyInt64(ctx, jsc->property_list, j++, v); - c003c9a0: 6726 ld a4,72(sp) - c003c9a2: 67c6 ld a5,80(sp) - c003c9a4: 75ae ld a1,232(sp) - c003c9a6: 764e ld a2,240(sp) - c003c9a8: 86ca mv a3,s2 - c003c9aa: 00190b93 addi s7,s2,1 - c003c9ae: 8522 mv a0,s0 - c003c9b0: 9b1f30ef jal ra,c0030360 - c003c9b4: 895e mv s2,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45511 (discriminator 2) + c003cb70: 6726 ld a4,72(sp) + c003cb72: 67c6 ld a5,80(sp) + c003cb74: 75ae ld a1,232(sp) + c003cb76: 764e ld a2,240(sp) + c003cb78: 86ca mv a3,s2 + c003cb7a: 00190b93 addi s7,s2,1 + c003cb7e: 8522 mv a0,s0 + c003cb80: 9b1f30ef jal ra,c0030530 + c003cb84: 895e mv s2,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45519 (discriminator 2) for (i = j = 0; i < n; i++) { - c003c9b6: 0485 addi s1,s1,1 - c003c9b8: b785 j c003c918 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45544 + c003cb86: 0485 addi s1,s1,1 + c003cb88: b785 j c003cae8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45552 JS_FreeValue(ctx, v); - c003c9ba: 65a6 ld a1,72(sp) - c003c9bc: 6646 ld a2,80(sp) - c003c9be: 8522 mv a0,s0 - c003c9c0: 978cb0ef jal ra,c0007b38 - c003c9c4: bfcd j c003c9b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45554 + c003cb8a: 65a6 ld a1,72(sp) + c003cb8c: 6646 ld a2,80(sp) + c003cb8e: 8522 mv a0,s0 + c003cb90: 896cb0ef jal ra,c0007c26 + c003cb94: bfcd j c003cb86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45562 } else if (p->class_id == JS_CLASS_STRING) { - c003c9c6: 4715 li a4,5 - c003c9c8: f0e793e3 bne a5,a4,c003c8ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45555 + c003cb96: 4715 li a4,5 + c003cb98: f0e793e3 bne a5,a4,c003ca9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45563 space = JS_ToStringFree(ctx, space); - c003c9cc: 85aa mv a1,a0 - c003c9ce: 8626 mv a2,s1 - c003c9d0: 8522 mv a0,s0 - c003c9d2: e0fdd0ef jal ra,c001a7e0 - c003c9d6: bdc5 j c003c8c6 + c003cb9c: 85aa mv a1,a0 + c003cb9e: 8626 mv a2,s1 + c003cba0: 8522 mv a0,s0 + c003cba2: e0fdd0ef jal ra,c001a9b0 + c003cba6: bdc5 j c003ca96 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:571 int tag = JS_VALUE_GET_TAG(v); - c003c9d8: 0004879b sext.w a5,s1 + c003cba8: 0004879b sext.w a5,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c003c9dc: cf81 beqz a5,c003c9f4 - c003c9de: 471d li a4,7 - c003c9e0: 00e78a63 beq a5,a4,c003c9f4 + c003cbac: cf81 beqz a5,c003cbc4 + c003cbae: 471d li a4,7 + c003cbb0: 00e78a63 beq a5,a4,c003cbc4 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45575 } else if (JS_IsString(space)) { - c003c9e4: 5765 li a4,-7 - c003c9e6: 0ae78c63 beq a5,a4,c003ca9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45571 + c003cbb4: 5765 li a4,-7 + c003cbb6: 0ae78c63 beq a5,a4,c003cc6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45579 jsc->gap = JS_DupValue(ctx, jsc->empty); - c003c9ea: 6532 ld a0,264(sp) - c003c9ec: 65d2 ld a1,272(sp) - c003c9ee: c81c90ef jal ra,c000666e - c003c9f2: a01d j c003ca18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45564 + c003cbba: 6532 ld a0,264(sp) + c003cbbc: 65d2 ld a1,272(sp) + c003cbbe: b9fc90ef jal ra,c000675c + c003cbc2: a01d j c003cbe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45572 if (JS_ToInt32Clamp(ctx, &n, space, 0, 10, 0)) - c003c9f4: 4801 li a6,0 - c003c9f6: 47a9 li a5,10 - c003c9f8: 4701 li a4,0 - c003c9fa: 864a mv a2,s2 - c003c9fc: 86a6 mv a3,s1 - c003c9fe: 092c addi a1,sp,152 - c003ca00: 8522 mv a0,s0 - c003ca02: 8cae10ef jal ra,c001dacc - c003ca06: f939 bnez a0,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45566 + c003cbc4: 4801 li a6,0 + c003cbc6: 47a9 li a5,10 + c003cbc8: 4701 li a4,0 + c003cbca: 864a mv a2,s2 + c003cbcc: 86a6 mv a3,s1 + c003cbce: 092c addi a1,sp,152 + c003cbd0: 8522 mv a0,s0 + c003cbd2: 8cae10ef jal ra,c001dc9c + c003cbd6: f939 bnez a0,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45574 jsc->gap = JS_NewStringLen(ctx, " ", n); - c003ca08: 466a lw a2,152(sp) - c003ca0a: 00024597 auipc a1,0x24 - c003ca0e: 0e658593 addi a1,a1,230 # c0060af0 - c003ca12: 8522 mv a0,s0 - c003ca14: 87ddc0ef jal ra,c0019290 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45571 + c003cbd8: 466a lw a2,152(sp) + c003cbda: 00024597 auipc a1,0x24 + c003cbde: 17658593 addi a1,a1,374 # c0060d50 + c003cbe2: 8522 mv a0,s0 + c003cbe4: 87ddc0ef jal ra,c0019460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45579 jsc->gap = JS_DupValue(ctx, jsc->empty); - c003ca18: fdaa sd a0,248(sp) - c003ca1a: e22e sd a1,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45573 + c003cbe8: fdaa sd a0,248(sp) + c003cbea: e22e sd a1,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45581 JS_FreeValue(ctx, space); - c003ca1c: 8626 mv a2,s1 - c003ca1e: 85ca mv a1,s2 - c003ca20: 8522 mv a0,s0 - c003ca22: 916cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45574 + c003cbec: 8626 mv a2,s1 + c003cbee: 85ca mv a1,s2 + c003cbf0: 8522 mv a0,s0 + c003cbf2: 834cb0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45582 if (JS_IsException(jsc->gap)) - c003ca26: 10012783 lw a5,256(sp) - c003ca2a: 4499 li s1,6 - c003ca2c: f29788e3 beq a5,s1,c003c95c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45576 + c003cbf6: 10012783 lw a5,256(sp) + c003cbfa: 4499 li s1,6 + c003cbfc: f29788e3 beq a5,s1,c003cb2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45584 wrapper = JS_NewObject(ctx); - c003ca30: 8522 mv a0,s0 - c003ca32: b56da0ef jal ra,c0016d88 - c003ca36: fcaa sd a0,120(sp) - c003ca38: e12e sd a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45577 + c003cc00: 8522 mv a0,s0 + c003cc02: b56da0ef jal ra,c0016f58 + c003cc06: fcaa sd a0,120(sp) + c003cc08: e12e sd a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45585 if (JS_IsException(wrapper)) - c003ca3a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45576 + c003cc0a: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45584 wrapper = JS_NewObject(ctx); - c003ca3e: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45577 + c003cc0e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45585 if (JS_IsException(wrapper)) - c003ca40: f0978fe3 beq a5,s1,c003c95e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45579 + c003cc10: f0978fe3 beq a5,s1,c003cb2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45587 if (JS_DefinePropertyValue(ctx, wrapper, JS_ATOM_empty_string, - c003ca44: 7502 ld a0,32(sp) - c003ca46: 75a2 ld a1,40(sp) - c003ca48: c27c90ef jal ra,c000666e - c003ca4c: 87ae mv a5,a1 - c003ca4e: 660a ld a2,128(sp) - c003ca50: 75e6 ld a1,120(sp) - c003ca52: 872a mv a4,a0 - c003ca54: 481d li a6,7 - c003ca56: 02f00693 li a3,47 - c003ca5a: 8522 mv a0,s0 - c003ca5c: d5ad60ef jal ra,c0012fb6 - c003ca60: ee054fe3 bltz a0,c003c95e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45582 + c003cc14: 7502 ld a0,32(sp) + c003cc16: 75a2 ld a1,40(sp) + c003cc18: b45c90ef jal ra,c000675c + c003cc1c: 87ae mv a5,a1 + c003cc1e: 660a ld a2,128(sp) + c003cc20: 75e6 ld a1,120(sp) + c003cc22: 872a mv a4,a0 + c003cc24: 481d li a6,7 + c003cc26: 02f00693 li a3,47 + c003cc2a: 8522 mv a0,s0 + c003cc2c: c78d60ef jal ra,c00130a4 + c003cc30: ee054fe3 bltz a0,c003cb2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45590 val = JS_DupValue(ctx, obj); - c003ca64: 7502 ld a0,32(sp) - c003ca66: 75a2 ld a1,40(sp) - c003ca68: c07c90ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45584 + c003cc34: 7502 ld a0,32(sp) + c003cc36: 75a2 ld a1,40(sp) + c003cc38: b25c90ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45592 val = js_json_check(ctx, jsc, wrapper, val, jsc->empty); - c003ca6c: 7666 ld a2,120(sp) - c003ca6e: 668a ld a3,128(sp) - c003ca70: 6832 ld a6,264(sp) - c003ca72: 68d2 ld a7,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45582 + c003cc3c: 7666 ld a2,120(sp) + c003cc3e: 668a ld a3,128(sp) + c003cc40: 6832 ld a6,264(sp) + c003cc42: 68d2 ld a7,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45590 val = JS_DupValue(ctx, obj); - c003ca74: 87ae mv a5,a1 - c003ca76: 872a mv a4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45584 + c003cc44: 87ae mv a5,a1 + c003cc46: 872a mv a4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45592 val = js_json_check(ctx, jsc, wrapper, val, jsc->empty); - c003ca78: 01ac addi a1,sp,200 - c003ca7a: 8522 mv a0,s0 - c003ca7c: e82ff0ef jal ra,c003c0fe + c003cc48: 01ac addi a1,sp,200 + c003cc4a: 8522 mv a0,s0 + c003cc4c: e82ff0ef jal ra,c003c2ce JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003ca80: 0005879b sext.w a5,a1 + c003cc50: 0005879b sext.w a5,a1 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45584 - c003ca84: 862a mv a2,a0 - c003ca86: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45585 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45592 + c003cc54: 862a mv a2,a0 + c003cc56: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45593 if (JS_IsException(val)) - c003ca88: ec978be3 beq a5,s1,c003c95e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45587 + c003cc58: ec978be3 beq a5,s1,c003cb2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45595 if (JS_IsUndefined(val)) { - c003ca8c: 470d li a4,3 - c003ca8e: 02e79663 bne a5,a4,c003caba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45588 + c003cc5c: 470d li a4,3 + c003cc5e: 02e79663 bne a5,a4,c003cc8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45596 ret = JS_UNDEFINED; - c003ca92: f482 sd zero,104(sp) - c003ca94: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45600 + c003cc62: f482 sd zero,104(sp) + c003cc64: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45608 string_buffer_free(jsc->b); - c003ca96: 6572 ld a0,280(sp) - c003ca98: bceca0ef jal ra,c0006e66 - c003ca9c: a825 j c003cad4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45569 + c003cc66: 6572 ld a0,280(sp) + c003cc68: aecca0ef jal ra,c0006f54 + c003cc6c: a825 j c003cca4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45577 jsc->gap = js_sub_string(ctx, p, 0, min_int(p->len, 10)); - c003ca9e: 00492683 lw a3,4(s2) + c003cc6e: 00492683 lw a3,4(s2) min_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 if (a < b) - c003caa2: 47a5 li a5,9 + c003cc72: 47a5 li a5,9 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45569 - c003caa4: 1686 slli a3,a3,0x21 - c003caa6: 9285 srli a3,a3,0x21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45577 + c003cc74: 1686 slli a3,a3,0x21 + c003cc76: 9285 srli a3,a3,0x21 min_int(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:79 - c003caa8: 00d7d363 bge a5,a3,c003caae + c003cc78: 00d7d363 bge a5,a3,c003cc7e /Users/Luppy/riscv/quickjs-nuttx/cutils.h:82 return b; - c003caac: 46a9 li a3,10 + c003cc7c: 46a9 li a3,10 JS_JSONStringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45569 - c003caae: 4601 li a2,0 - c003cab0: 85ca mv a1,s2 - c003cab2: 8522 mv a0,s0 - c003cab4: ec4dd0ef jal ra,c001a178 - c003cab8: b785 j c003ca18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45591 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45577 + c003cc7e: 4601 li a2,0 + c003cc80: 85ca mv a1,s2 + c003cc82: 8522 mv a0,s0 + c003cc84: ec4dd0ef jal ra,c001a348 + c003cc88: b785 j c003cbe8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45599 if (js_json_to_str(ctx, jsc, wrapper, val, jsc->empty)) - c003caba: 6732 ld a4,264(sp) - c003cabc: 67d2 ld a5,272(sp) - c003cabe: 01ac addi a1,sp,200 - c003cac0: 8522 mv a0,s0 - c003cac2: f96ff0ef jal ra,c003c258 - c003cac6: e8051ce3 bnez a0,c003c95e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45594 - ret = string_buffer_end(jsc->b); - c003caca: 6572 ld a0,280(sp) - c003cacc: a3edd0ef jal ra,c0019d0a - c003cad0: f4aa sd a0,104(sp) - c003cad2: 84ae mv s1,a1 + c003cc8a: 6732 ld a4,264(sp) + c003cc8c: 67d2 ld a5,272(sp) + c003cc8e: 01ac addi a1,sp,200 + c003cc90: 8522 mv a0,s0 + c003cc92: f96ff0ef jal ra,c003c428 + c003cc96: e8051ce3 bnez a0,c003cb2e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45602 + ret = string_buffer_end(jsc->b); + c003cc9a: 6572 ld a0,280(sp) + c003cc9c: a3edd0ef jal ra,c0019eda + c003cca0: f4aa sd a0,104(sp) + c003cca2: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45610 JS_FreeValue(ctx, wrapper); - c003cad4: 75e6 ld a1,120(sp) - c003cad6: 864a mv a2,s2 - c003cad8: 8522 mv a0,s0 - c003cada: 85ecb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45603 + c003cca4: 75e6 ld a1,120(sp) + c003cca6: 864a mv a2,s2 + c003cca8: 8522 mv a0,s0 + c003ccaa: f7dca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45611 JS_FreeValue(ctx, jsc->empty); - c003cade: 65b2 ld a1,264(sp) - c003cae0: 6652 ld a2,272(sp) - c003cae2: 8522 mv a0,s0 - c003cae4: 854cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45604 + c003ccae: 65b2 ld a1,264(sp) + c003ccb0: 6652 ld a2,272(sp) + c003ccb2: 8522 mv a0,s0 + c003ccb4: f73ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45612 JS_FreeValue(ctx, jsc->gap); - c003cae8: 75ee ld a1,248(sp) - c003caea: 6612 ld a2,256(sp) - c003caec: 8522 mv a0,s0 - c003caee: 84acb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45605 + c003ccb8: 75ee ld a1,248(sp) + c003ccba: 6612 ld a2,256(sp) + c003ccbc: 8522 mv a0,s0 + c003ccbe: f69ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45613 JS_FreeValue(ctx, jsc->property_list); - c003caf2: 75ae ld a1,232(sp) - c003caf4: 764e ld a2,240(sp) - c003caf6: 8522 mv a0,s0 - c003caf8: 840cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45606 + c003ccc2: 75ae ld a1,232(sp) + c003ccc4: 764e ld a2,240(sp) + c003ccc6: 8522 mv a0,s0 + c003ccc8: f5fca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45614 JS_FreeValue(ctx, jsc->stack); - c003cafc: 65ee ld a1,216(sp) - c003cafe: 760e ld a2,224(sp) - c003cb00: 8522 mv a0,s0 - c003cb02: 836cb0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45608 -} - c003cb06: 70b6 ld ra,360(sp) - c003cb08: 7416 ld s0,352(sp) - c003cb0a: 7526 ld a0,104(sp) - c003cb0c: 6956 ld s2,336(sp) - c003cb0e: 69b6 ld s3,328(sp) - c003cb10: 6a16 ld s4,320(sp) - c003cb12: 7af2 ld s5,312(sp) - c003cb14: 7b52 ld s6,304(sp) - c003cb16: 7bb2 ld s7,296(sp) - c003cb18: 85a6 mv a1,s1 - c003cb1a: 64f6 ld s1,344(sp) - c003cb1c: 6175 addi sp,sp,368 - c003cb1e: 8082 ret - -00000000c003cb20 : + c003cccc: 65ee ld a1,216(sp) + c003ccce: 760e ld a2,224(sp) + c003ccd0: 8522 mv a0,s0 + c003ccd2: f55ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45616 +} + c003ccd6: 70b6 ld ra,360(sp) + c003ccd8: 7416 ld s0,352(sp) + c003ccda: 7526 ld a0,104(sp) + c003ccdc: 6956 ld s2,336(sp) + c003ccde: 69b6 ld s3,328(sp) + c003cce0: 6a16 ld s4,320(sp) + c003cce2: 7af2 ld s5,312(sp) + c003cce4: 7b52 ld s6,304(sp) + c003cce6: 7bb2 ld s7,296(sp) + c003cce8: 85a6 mv a1,s1 + c003ccea: 64f6 ld s1,344(sp) + c003ccec: 6175 addi sp,sp,368 + c003ccee: 8082 ret + +00000000c003ccf0 : js_json_stringify(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45612 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45620 { - c003cb20: 863a mv a2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45614 + c003ccf0: 863a mv a2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45622 return JS_JSONStringify(ctx, argv[0], argv[1], argv[2]); - c003cb22: 731c ld a5,32(a4) - c003cb24: 02873803 ld a6,40(a4) - c003cb28: 6b14 ld a3,16(a4) - c003cb2a: 620c ld a1,0(a2) - c003cb2c: 6f18 ld a4,24(a4) - c003cb2e: 6610 ld a2,8(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45612 -{ - c003cb30: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45615 -} - c003cb32: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45614 + c003ccf2: 731c ld a5,32(a4) + c003ccf4: 02873803 ld a6,40(a4) + c003ccf8: 6b14 ld a3,16(a4) + c003ccfa: 620c ld a1,0(a2) + c003ccfc: 6f18 ld a4,24(a4) + c003ccfe: 6610 ld a2,8(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45620 +{ + c003cd00: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45623 +} + c003cd02: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45622 return JS_JSONStringify(ctx, argv[0], argv[1], argv[2]); - c003cb34: ce9ff06f j c003c81c + c003cd04: ce9ff06f j c003c9ec -00000000c003cb38 : +00000000c003cd08 : internalize_json_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45107 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45115 { - c003cb38: 716d addi sp,sp,-272 - c003cb3a: e03a sd a4,0(sp) - c003cb3c: e43e sd a5,8(sp) - c003cb3e: 872e mv a4,a1 - c003cb40: 87b2 mv a5,a2 + c003cd08: 716d addi sp,sp,-272 + c003cd0a: e03a sd a4,0(sp) + c003cd0c: e43e sd a5,8(sp) + c003cd0e: 872e mv a4,a1 + c003cd10: 87b2 mv a5,a2 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003cb42: 4801 li a6,0 + c003cd12: 4801 li a6,0 internalize_json_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45107 - c003cb44: e222 sd s0,256(sp) - c003cb46: fda6 sd s1,248(sp) - c003cb48: f9ca sd s2,240(sp) - c003cb4a: e5de sd s7,200(sp) - c003cb4c: e606 sd ra,264(sp) - c003cb4e: f5ce sd s3,232(sp) - c003cb50: f1d2 sd s4,224(sp) - c003cb52: edd6 sd s5,216(sp) - c003cb54: e9da sd s6,208(sp) - c003cb56: e1e2 sd s8,192(sp) - c003cb58: fd66 sd s9,184(sp) - c003cb5a: 842a mv s0,a0 - c003cb5c: e82e sd a1,16(sp) - c003cb5e: ec32 sd a2,24(sp) - c003cb60: 8bb6 mv s7,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45111 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45115 + c003cd14: e222 sd s0,256(sp) + c003cd16: fda6 sd s1,248(sp) + c003cd18: f9ca sd s2,240(sp) + c003cd1a: e5de sd s7,200(sp) + c003cd1c: e606 sd ra,264(sp) + c003cd1e: f5ce sd s3,232(sp) + c003cd20: f1d2 sd s4,224(sp) + c003cd22: edd6 sd s5,216(sp) + c003cd24: e9da sd s6,208(sp) + c003cd26: e1e2 sd s8,192(sp) + c003cd28: fd66 sd s9,184(sp) + c003cd2a: 842a mv s0,a0 + c003cd2c: e82e sd a1,16(sp) + c003cd2e: ec32 sd a2,24(sp) + c003cd30: 8bb6 mv s7,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45119 uint32_t i, len = 0; - c003cb62: d202 sw zero,36(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45113 + c003cd32: d202 sw zero,36(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45121 JSPropertyEnum *atoms = NULL; - c003cb64: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45119 + c003cd34: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45127 val = JS_GetProperty(ctx, holder, name); - c003cb66: e92e sd a1,144(sp) - c003cb68: ed32 sd a2,152(sp) + c003cd36: e92e sd a1,144(sp) + c003cd38: ed32 sd a2,152(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003cb6a: cd9d40ef jal ra,c0011842 - c003cb6e: e12a sd a0,128(sp) - c003cb70: e52e sd a1,136(sp) - c003cb72: f82a sd a0,48(sp) - c003cb74: fc2e sd a1,56(sp) + c003cd3a: bf7d40ef jal ra,c0011930 + c003cd3e: e12a sd a0,128(sp) + c003cd40: e52e sd a1,136(sp) + c003cd42: f82a sd a0,48(sp) + c003cd44: fc2e sd a1,56(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003cb76: 0005879b sext.w a5,a1 + c003cd46: 0005879b sext.w a5,a1 internalize_json_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45128 if (JS_IsException(val)) - c003cb7a: 4719 li a4,6 + c003cd4a: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003cb7c: 892a mv s2,a0 - c003cb7e: 84ae mv s1,a1 + c003cd4c: 892a mv s2,a0 + c003cd4e: 84ae mv s1,a1 internalize_json_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45120 - c003cb80: 02e79363 bne a5,a4,c003cba6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45121 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45128 + c003cd50: 02e79363 bne a5,a4,c003cd76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45129 return val; - c003cb84: f8aa sd a0,112(sp) - c003cb86: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 -} - c003cb88: 60b2 ld ra,264(sp) - c003cb8a: 6412 ld s0,256(sp) - c003cb8c: 7546 ld a0,112(sp) - c003cb8e: 75e6 ld a1,120(sp) - c003cb90: 74ee ld s1,248(sp) - c003cb92: 794e ld s2,240(sp) - c003cb94: 79ae ld s3,232(sp) - c003cb96: 7a0e ld s4,224(sp) - c003cb98: 6aee ld s5,216(sp) - c003cb9a: 6b4e ld s6,208(sp) - c003cb9c: 6bae ld s7,200(sp) - c003cb9e: 6c0e ld s8,192(sp) - c003cba0: 7cea ld s9,184(sp) - c003cba2: 6151 addi sp,sp,272 - c003cba4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45122 + c003cd54: f8aa sd a0,112(sp) + c003cd56: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45180 +} + c003cd58: 60b2 ld ra,264(sp) + c003cd5a: 6412 ld s0,256(sp) + c003cd5c: 7546 ld a0,112(sp) + c003cd5e: 75e6 ld a1,120(sp) + c003cd60: 74ee ld s1,248(sp) + c003cd62: 794e ld s2,240(sp) + c003cd64: 79ae ld s3,232(sp) + c003cd66: 7a0e ld s4,224(sp) + c003cd68: 6aee ld s5,216(sp) + c003cd6a: 6b4e ld s6,208(sp) + c003cd6c: 6bae ld s7,200(sp) + c003cd6e: 6c0e ld s8,192(sp) + c003cd70: 7cea ld s9,184(sp) + c003cd72: 6151 addi sp,sp,272 + c003cd74: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45130 if (JS_IsObject(val)) { - c003cba6: 577d li a4,-1 - c003cba8: 04e78063 beq a5,a4,c003cbe8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45157 + c003cd76: 577d li a4,-1 + c003cd78: 04e78063 beq a5,a4,c003cdb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45165 js_free_prop_enum(ctx, atoms, len); - c003cbac: 5612 lw a2,36(sp) - c003cbae: 75a2 ld a1,40(sp) - c003cbb0: 8522 mv a0,s0 - c003cbb2: 96bca0ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45159 + c003cd7c: 5612 lw a2,36(sp) + c003cd7e: 75a2 ld a1,40(sp) + c003cd80: 8522 mv a0,s0 + c003cd82: 889ca0ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45167 name_val = JS_AtomToValue(ctx, name); - c003cbb6: 85de mv a1,s7 - c003cbb8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45158 + c003cd86: 85de mv a1,s7 + c003cd88: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45166 atoms = NULL; - c003cbba: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45159 + c003cd8a: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45167 name_val = JS_AtomToValue(ctx, name); - c003cbbc: f77dc0ef jal ra,c0019b32 - c003cbc0: e8aa sd a0,80(sp) - c003cbc2: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45160 + c003cd8c: f77dc0ef jal ra,c0019d02 + c003cd90: e8aa sd a0,80(sp) + c003cd92: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45168 if (JS_IsException(name_val)) - c003cbc4: 0005871b sext.w a4,a1 - c003cbc8: 4799 li a5,6 - c003cbca: 0ef71763 bne a4,a5,c003ccb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45169 + c003cd94: 0005871b sext.w a4,a1 + c003cd98: 4799 li a5,6 + c003cd9a: 0ef71763 bne a4,a5,c003ce88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45177 js_free_prop_enum(ctx, atoms, len); - c003cbce: 5612 lw a2,36(sp) - c003cbd0: 75a2 ld a1,40(sp) - c003cbd2: 8522 mv a0,s0 - c003cbd4: 949ca0ef jal ra,c000751c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45170 + c003cd9e: 5612 lw a2,36(sp) + c003cda0: 75a2 ld a1,40(sp) + c003cda2: 8522 mv a0,s0 + c003cda4: 867ca0ef jal ra,c000760a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45178 JS_FreeValue(ctx, val); - c003cbd8: 85ca mv a1,s2 - c003cbda: 8626 mv a2,s1 - c003cbdc: 8522 mv a0,s0 - c003cbde: f5bca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45171 + c003cda8: 85ca mv a1,s2 + c003cdaa: 8626 mv a2,s1 + c003cdac: 8522 mv a0,s0 + c003cdae: e79ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45179 return JS_EXCEPTION; - c003cbe2: 4799 li a5,6 - c003cbe4: f882 sd zero,112(sp) - c003cbe6: a231 j c003ccf2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45123 + c003cdb2: 4799 li a5,6 + c003cdb4: f882 sd zero,112(sp) + c003cdb6: a231 j c003cec2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45131 is_array = JS_IsArray(ctx, val); - c003cbe8: 85aa mv a1,a0 - c003cbea: 8626 mv a2,s1 - c003cbec: 8522 mv a0,s0 - c003cbee: ee0d70ef jal ra,c00142ce - c003cbf2: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45124 + c003cdb8: 85aa mv a1,a0 + c003cdba: 8626 mv a2,s1 + c003cdbc: 8522 mv a0,s0 + c003cdbe: dfed70ef jal ra,c00143bc + c003cdc2: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45132 if (is_array < 0) - c003cbf4: fc054de3 bltz a0,c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45126 + c003cdc4: fc054de3 bltz a0,c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45134 if (is_array) { - c003cbf8: cd39 beqz a0,c003cc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45127 + c003cdc8: cd39 beqz a0,c003ce26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45135 if (js_get_length32(ctx, &len, val)) - c003cbfa: 7642 ld a2,48(sp) - c003cbfc: 76e2 ld a3,56(sp) - c003cbfe: 104c addi a1,sp,36 - c003cc00: 8522 mv a0,s0 - c003cc02: f18df0ef jal ra,c001c31a - c003cc06: f561 bnez a0,c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45107 -{ - c003cc08: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45143 + c003cdca: 7642 ld a2,48(sp) + c003cdcc: 76e2 ld a3,56(sp) + c003cdce: 104c addi a1,sp,36 + c003cdd0: 8522 mv a0,s0 + c003cdd2: f18df0ef jal ra,c001c4ea + c003cdd6: f561 bnez a0,c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45115 +{ + c003cdd8: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45151 if (JS_IsException(new_el)) { - c003cc0a: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45147 + c003cdda: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45155 if (JS_IsUndefined(new_el)) { - c003cc0c: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45134 (discriminator 1) + c003cddc: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45142 (discriminator 1) for(i = 0; i < len; i++) { - c003cc0e: 5792 lw a5,36(sp) - c003cc10: f8fafee3 bgeu s5,a5,c003cbac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45135 + c003cdde: 5792 lw a5,36(sp) + c003cde0: f8fafee3 bgeu s5,a5,c003cd7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45143 if (is_array) { - c003cc14: 040b0b63 beqz s6,c003cc6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45136 + c003cde4: 040b0b63 beqz s6,c003ce3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45144 prop = JS_NewAtomUInt32(ctx, i); - c003cc18: 85d6 mv a1,s5 - c003cc1a: 8522 mv a0,s0 - c003cc1c: e27dc0ef jal ra,c0019a42 - c003cc20: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45137 + c003cde8: 85d6 mv a1,s5 + c003cdea: 8522 mv a0,s0 + c003cdec: e27dc0ef jal ra,c0019c12 + c003cdf0: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45145 if (prop == JS_ATOM_NULL) - c003cc24: fa0985e3 beqz s3,c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45142 + c003cdf4: fa0985e3 beqz s3,c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45150 new_el = internalize_json_property(ctx, val, prop, reviver); - c003cc28: 6702 ld a4,0(sp) - c003cc2a: 67a2 ld a5,8(sp) - c003cc2c: 86ce mv a3,s3 - c003cc2e: 85ca mv a1,s2 - c003cc30: 8626 mv a2,s1 - c003cc32: 8522 mv a0,s0 - c003cc34: f84a sd s2,48(sp) - c003cc36: fc26 sd s1,56(sp) - c003cc38: f01ff0ef jal ra,c003cb38 - c003cc3c: e0aa sd a0,64(sp) - c003cc3e: e4ae sd a1,72(sp) + c003cdf8: 6702 ld a4,0(sp) + c003cdfa: 67a2 ld a5,8(sp) + c003cdfc: 86ce mv a3,s3 + c003cdfe: 85ca mv a1,s2 + c003ce00: 8626 mv a2,s1 + c003ce02: 8522 mv a0,s0 + c003ce04: f84a sd s2,48(sp) + c003ce06: fc26 sd s1,56(sp) + c003ce08: f01ff0ef jal ra,c003cd08 + c003ce0c: e0aa sd a0,64(sp) + c003ce0e: e4ae sd a1,72(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003cc40: 0005869b sext.w a3,a1 + c003ce10: 0005869b sext.w a3,a1 internalize_json_property(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45142 - c003cc44: 872a mv a4,a0 - c003cc46: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45150 + c003ce14: 872a mv a4,a0 + c003ce16: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45151 if (JS_IsException(new_el)) { - c003cc48: 03869e63 bne a3,s8,c003cc84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45144 + c003ce18: 03869e63 bne a3,s8,c003ce54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45152 JS_FreeAtom(ctx, prop); - c003cc4c: 85ce mv a1,s3 - c003cc4e: 8522 mv a0,s0 - c003cc50: 8bdca0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45145 + c003ce1c: 85ce mv a1,s3 + c003ce1e: 8522 mv a0,s0 + c003ce20: fdaca0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45153 goto fail; - c003cc54: bfad j c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45130 + c003ce24: bfad j c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45138 ret = JS_GetOwnPropertyNamesInternal(ctx, &atoms, &len, JS_VALUE_GET_OBJ(val), JS_GPN_ENUM_ONLY | JS_GPN_STRING_MASK); - c003cc56: 4745 li a4,17 - c003cc58: 86ca mv a3,s2 - c003cc5a: 1050 addi a2,sp,36 - c003cc5c: 102c addi a1,sp,40 - c003cc5e: 8522 mv a0,s0 - c003cc60: 94bf30ef jal ra,c00305aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45131 + c003ce26: 4745 li a4,17 + c003ce28: 86ca mv a3,s2 + c003ce2a: 1050 addi a2,sp,36 + c003ce2c: 102c addi a1,sp,40 + c003ce2e: 8522 mv a0,s0 + c003ce30: 94bf30ef jal ra,c003077a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45139 if (ret < 0) - c003cc64: fa0552e3 bgez a0,c003cc08 - c003cc68: b79d j c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45140 + c003ce34: fa0552e3 bgez a0,c003cdd8 + c003ce38: b79d j c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45148 prop = JS_DupAtom(ctx, atoms[i].atom); - c003cc6a: 020a9713 slli a4,s5,0x20 - c003cc6e: 01d75793 srli a5,a4,0x1d - c003cc72: 7722 ld a4,40(sp) - c003cc74: 8522 mv a0,s0 - c003cc76: 97ba add a5,a5,a4 - c003cc78: 43cc lw a1,4(a5) - c003cc7a: 851ca0ef jal ra,c00074ca - c003cc7e: 0005099b sext.w s3,a0 - c003cc82: b75d j c003cc28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45147 + c003ce3a: 020a9713 slli a4,s5,0x20 + c003ce3e: 01d75793 srli a5,a4,0x1d + c003ce42: 7722 ld a4,40(sp) + c003ce44: 8522 mv a0,s0 + c003ce46: 97ba add a5,a5,a4 + c003ce48: 43cc lw a1,4(a5) + c003ce4a: f6eca0ef jal ra,c00075b8 + c003ce4e: 0005099b sext.w s3,a0 + c003ce52: b75d j c003cdf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45155 if (JS_IsUndefined(new_el)) { - c003cc84: 03969263 bne a3,s9,c003cca8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45148 + c003ce54: 03969263 bne a3,s9,c003ce78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45156 ret = JS_DeleteProperty(ctx, val, prop, 0); - c003cc88: 75c2 ld a1,48(sp) - c003cc8a: 7662 ld a2,56(sp) - c003cc8c: 4701 li a4,0 - c003cc8e: 86ce mv a3,s3 - c003cc90: 8522 mv a0,s0 - c003cc92: b8feb0ef jal ra,c0028820 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45150 + c003ce58: 75c2 ld a1,48(sp) + c003ce5a: 7662 ld a2,56(sp) + c003ce5c: 4701 li a4,0 + c003ce5e: 86ce mv a3,s3 + c003ce60: 8522 mv a0,s0 + c003ce62: b8feb0ef jal ra,c00289f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45158 ret = JS_DefinePropertyValue(ctx, val, prop, new_el, JS_PROP_C_W_E); - c003cc96: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45152 + c003ce66: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45160 JS_FreeAtom(ctx, prop); - c003cc98: 85ce mv a1,s3 - c003cc9a: 8522 mv a0,s0 - c003cc9c: 871ca0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45153 + c003ce68: 85ce mv a1,s3 + c003ce6a: 8522 mv a0,s0 + c003ce6c: f8eca0ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45161 if (ret < 0) - c003cca0: f20a47e3 bltz s4,c003cbce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45134 (discriminator 2) + c003ce70: f20a47e3 bltz s4,c003cd9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45142 (discriminator 2) for(i = 0; i < len; i++) { - c003cca4: 2a85 addiw s5,s5,1 - c003cca6: b7a5 j c003cc0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45150 + c003ce74: 2a85 addiw s5,s5,1 + c003ce76: b7a5 j c003cdde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45158 ret = JS_DefinePropertyValue(ctx, val, prop, new_el, JS_PROP_C_W_E); - c003cca8: 75c2 ld a1,48(sp) - c003ccaa: 7662 ld a2,56(sp) - c003ccac: 481d li a6,7 - c003ccae: 86ce mv a3,s3 - c003ccb0: 8522 mv a0,s0 - c003ccb2: b04d60ef jal ra,c0012fb6 - c003ccb6: b7c5 j c003cc96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003ce78: 75c2 ld a1,48(sp) + c003ce7a: 7662 ld a2,56(sp) + c003ce7c: 481d li a6,7 + c003ce7e: 86ce mv a3,s3 + c003ce80: 8522 mv a0,s0 + c003ce82: a22d60ef jal ra,c00130a4 + c003ce86: b7c5 j c003ce66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccb8: 66c2 ld a3,16(sp) - c003ccba: 6762 ld a4,24(sp) - c003ccbc: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45162 + c003ce88: 66c2 ld a3,16(sp) + c003ce8a: 6762 ld a4,24(sp) + c003ce8c: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45170 args[0] = name_val; - c003ccbe: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003ce8e: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccc0: 6582 ld a1,0(sp) - c003ccc2: 4789 li a5,2 - c003ccc4: 09010813 addi a6,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45162 + c003ce90: 6582 ld a1,0(sp) + c003ce92: 4789 li a5,2 + c003ce94: 09010813 addi a6,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45170 args[0] = name_val; - c003ccc8: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003ce98: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccca: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45163 + c003ce9a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45171 args[1] = val; - c003cccc: f14a sd s2,160(sp) - c003ccce: f526 sd s1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003ce9c: f14a sd s2,160(sp) + c003ce9e: f526 sd s1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccd0: a37fc0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45165 + c003cea0: a37fc0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45173 JS_FreeValue(ctx, name_val); - c003ccd4: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003cea4: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccd6: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45165 + c003cea6: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45173 JS_FreeValue(ctx, name_val); - c003ccd8: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45164 + c003cea8: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45172 res = JS_Call(ctx, reviver, holder, 2, args); - c003ccda: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45165 + c003ceaa: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45173 JS_FreeValue(ctx, name_val); - c003ccdc: 8522 mv a0,s0 - c003ccde: e5bca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45166 + c003ceac: 8522 mv a0,s0 + c003ceae: d79ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45174 JS_FreeValue(ctx, val); - c003cce2: 85ca mv a1,s2 - c003cce4: 8626 mv a2,s1 - c003cce6: 8522 mv a0,s0 - c003cce8: e51ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45167 + c003ceb2: 85ca mv a1,s2 + c003ceb4: 8626 mv a2,s1 + c003ceb6: 8522 mv a0,s0 + c003ceb8: d6fca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45175 return res; - c003ccec: 7786 ld a5,96(sp) - c003ccee: f8be sd a5,112(sp) - c003ccf0: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45171 + c003cebc: 7786 ld a5,96(sp) + c003cebe: f8be sd a5,112(sp) + c003cec0: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45179 return JS_EXCEPTION; - c003ccf2: fcbe sd a5,120(sp) - c003ccf4: bd51 j c003cb88 + c003cec2: fcbe sd a5,120(sp) + c003cec4: bd51 j c003cd58 -00000000c003ccf6 : +00000000c003cec6 : js_json_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45176 -{ - c003ccf6: 7175 addi sp,sp,-144 - c003ccf8: e122 sd s0,128(sp) - c003ccfa: f8ca sd s2,112(sp) - c003ccfc: f0d2 sd s4,96(sp) - c003ccfe: e506 sd ra,136(sp) - c003cd00: fca6 sd s1,120(sp) - c003cd02: f4ce sd s3,104(sp) - c003cd04: 6310 ld a2,0(a4) - c003cd06: 8a36 mv s4,a3 - c003cd08: 6714 ld a3,8(a4) - c003cd0a: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45184 +{ + c003cec6: 7175 addi sp,sp,-144 + c003cec8: e122 sd s0,128(sp) + c003ceca: f8ca sd s2,112(sp) + c003cecc: f0d2 sd s4,96(sp) + c003cece: e506 sd ra,136(sp) + c003ced0: fca6 sd s1,120(sp) + c003ced2: f4ce sd s3,104(sp) + c003ced4: 6310 ld a2,0(a4) + c003ced6: 8a36 mv s4,a3 + c003ced8: 6714 ld a3,8(a4) + c003ceda: 893a mv s2,a4 JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c003cd0c: 082c addi a1,sp,24 - c003cd0e: 4701 li a4,0 + c003cedc: 082c addi a1,sp,24 + c003cede: 4701 li a4,0 js_json_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45176 - c003cd10: 842a mv s0,a0 - c003cd12: e8b2 sd a2,80(sp) - c003cd14: ecb6 sd a3,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45184 + c003cee0: 842a mv s0,a0 + c003cee2: e8b2 sd a2,80(sp) + c003cee4: ecb6 sd a3,88(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c003cd16: 992df0ef jal ra,c001bea8 + c003cee6: 992df0ef jal ra,c001c078 js_json_parse(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45183 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45191 if (!str) - c003cd1a: ed11 bnez a0,c003cd36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45184 + c003ceea: ed11 bnez a0,c003cf06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45192 return JS_EXCEPTION; - c003cd1c: e882 sd zero,80(sp) - c003cd1e: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45188 + c003ceec: e882 sd zero,80(sp) + c003ceee: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45196 return obj; - c003cd20: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45206 (discriminator 1) -} - c003cd22: 60aa ld ra,136(sp) - c003cd24: 640a ld s0,128(sp) - c003cd26: 6546 ld a0,80(sp) - c003cd28: 65e6 ld a1,88(sp) - c003cd2a: 74e6 ld s1,120(sp) - c003cd2c: 7946 ld s2,112(sp) - c003cd2e: 79a6 ld s3,104(sp) - c003cd30: 7a06 ld s4,96(sp) - c003cd32: 6149 addi sp,sp,144 - c003cd34: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45185 + c003cef0: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45214 (discriminator 1) +} + c003cef2: 60aa ld ra,136(sp) + c003cef4: 640a ld s0,128(sp) + c003cef6: 6546 ld a0,80(sp) + c003cef8: 65e6 ld a1,88(sp) + c003cefa: 74e6 ld s1,120(sp) + c003cefc: 7946 ld s2,112(sp) + c003cefe: 79a6 ld s3,104(sp) + c003cf00: 7a06 ld s4,96(sp) + c003cf02: 6149 addi sp,sp,144 + c003cf04: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45193 obj = JS_ParseJSON(ctx, str, len, ""); - c003cd36: 6662 ld a2,24(sp) - c003cd38: 89aa mv s3,a0 - c003cd3a: 0001c697 auipc a3,0x1c - c003cd3e: c8668693 addi a3,a3,-890 # c00589c0 <__clz_tab+0x6c0> - c003cd42: 85aa mv a1,a0 - c003cd44: 8522 mv a0,s0 - c003cd46: 8e8ed0ef jal ra,c0029e2e - c003cd4a: 84ae mv s1,a1 - c003cd4c: f02a sd a0,32(sp) - c003cd4e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45186 + c003cf06: 6662 ld a2,24(sp) + c003cf08: 89aa mv s3,a0 + c003cf0a: 0001c697 auipc a3,0x1c + c003cf0e: c8668693 addi a3,a3,-890 # c0058b90 <__clz_tab+0x6c0> + c003cf12: 85aa mv a1,a0 + c003cf14: 8522 mv a0,s0 + c003cf16: 8e8ed0ef jal ra,c0029ffe + c003cf1a: 84ae mv s1,a1 + c003cf1c: f02a sd a0,32(sp) + c003cf1e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45194 JS_FreeCString(ctx, str); - c003cd50: 8522 mv a0,s0 - c003cd52: 85ce mv a1,s3 - c003cd54: 92ccc0ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45187 + c003cf20: 8522 mv a0,s0 + c003cf22: 85ce mv a1,s3 + c003cf24: 84acc0ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45195 if (JS_IsException(obj)) - c003cd58: 0004879b sext.w a5,s1 - c003cd5c: 4999 li s3,6 - c003cd5e: 01379663 bne a5,s3,c003cd6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45188 + c003cf28: 0004879b sext.w a5,s1 + c003cf2c: 4999 li s3,6 + c003cf2e: 01379663 bne a5,s3,c003cf3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45196 return obj; - c003cd62: 7782 ld a5,32(sp) - c003cd64: e8be sd a5,80(sp) - c003cd66: 77a2 ld a5,40(sp) - c003cd68: bf65 j c003cd20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45189 + c003cf32: 7782 ld a5,32(sp) + c003cf34: e8be sd a5,80(sp) + c003cf36: 77a2 ld a5,40(sp) + c003cf38: bf65 j c003cef0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45197 if (argc > 1 && JS_IsFunction(ctx, argv[1])) { - c003cd6a: 4785 li a5,1 - c003cd6c: 0947d563 bge a5,s4,c003cdf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45189 (discriminator 1) - c003cd70: 01093583 ld a1,16(s2) - c003cd74: 01893603 ld a2,24(s2) - c003cd78: 8522 mv a0,s0 - c003cd7a: 963cd0ef jal ra,c000a6dc - c003cd7e: cd25 beqz a0,c003cdf6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45190 + c003cf3a: 4785 li a5,1 + c003cf3c: 0947d563 bge a5,s4,c003cfc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45197 (discriminator 1) + c003cf40: 01093583 ld a1,16(s2) + c003cf44: 01893603 ld a2,24(s2) + c003cf48: 8522 mv a0,s0 + c003cf4a: 881cd0ef jal ra,c000a7ca + c003cf4e: cd25 beqz a0,c003cfc6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45198 reviver = argv[1]; - c003cd80: 01093783 ld a5,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45191 + c003cf50: 01093783 ld a5,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45199 root = JS_NewObject(ctx); - c003cd84: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45190 + c003cf54: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45198 reviver = argv[1]; - c003cd86: e0be sd a5,64(sp) - c003cd88: 01893783 ld a5,24(s2) - c003cd8c: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45191 + c003cf56: e0be sd a5,64(sp) + c003cf58: 01893783 ld a5,24(s2) + c003cf5c: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45199 root = JS_NewObject(ctx); - c003cd8e: ffbd90ef jal ra,c0016d88 - c003cd92: f82a sd a0,48(sp) - c003cd94: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45192 + c003cf5e: ffbd90ef jal ra,c0016f58 + c003cf62: f82a sd a0,48(sp) + c003cf64: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45200 if (JS_IsException(root)) { - c003cd96: 0005849b sext.w s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45191 + c003cf66: 0005849b sext.w s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45199 root = JS_NewObject(ctx); - c003cd9a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45192 + c003cf6a: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45200 if (JS_IsException(root)) { - c003cd9c: 01349a63 bne s1,s3,c003cdb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45193 + c003cf6c: 01349a63 bne s1,s3,c003cf80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45201 JS_FreeValue(ctx, obj); - c003cda0: 7582 ld a1,32(sp) - c003cda2: 7622 ld a2,40(sp) - c003cda4: 8522 mv a0,s0 - c003cda6: d93ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45194 + c003cf70: 7582 ld a1,32(sp) + c003cf72: 7622 ld a2,40(sp) + c003cf74: 8522 mv a0,s0 + c003cf76: cb1ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45202 return JS_EXCEPTION; - c003cdaa: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45205 + c003cf7a: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45213 return obj; - c003cdac: eca6 sd s1,88(sp) - c003cdae: bf95 j c003cd22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45196 + c003cf7c: eca6 sd s1,88(sp) + c003cf7e: bf95 j c003cef2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45204 if (JS_DefinePropertyValue(ctx, root, JS_ATOM_empty_string, obj, - c003cdb0: 7702 ld a4,32(sp) - c003cdb2: 77a2 ld a5,40(sp) - c003cdb4: 85aa mv a1,a0 - c003cdb6: 481d li a6,7 - c003cdb8: 02f00693 li a3,47 - c003cdbc: 8522 mv a0,s0 - c003cdbe: 9f8d60ef jal ra,c0012fb6 - c003cdc2: 00055a63 bgez a0,c003cdd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45198 + c003cf80: 7702 ld a4,32(sp) + c003cf82: 77a2 ld a5,40(sp) + c003cf84: 85aa mv a1,a0 + c003cf86: 481d li a6,7 + c003cf88: 02f00693 li a3,47 + c003cf8c: 8522 mv a0,s0 + c003cf8e: 916d60ef jal ra,c00130a4 + c003cf92: 00055a63 bgez a0,c003cfa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45206 JS_FreeValue(ctx, root); - c003cdc6: 75c2 ld a1,48(sp) - c003cdc8: 7662 ld a2,56(sp) - c003cdca: 8522 mv a0,s0 - c003cdcc: d6dca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45199 + c003cf96: 75c2 ld a1,48(sp) + c003cf98: 7662 ld a2,56(sp) + c003cf9a: 8522 mv a0,s0 + c003cf9c: c8bca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45207 return JS_EXCEPTION; - c003cdd0: e882 sd zero,80(sp) - c003cdd2: ecce sd s3,88(sp) - c003cdd4: b7b9 j c003cd22 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45201 + c003cfa0: e882 sd zero,80(sp) + c003cfa2: ecce sd s3,88(sp) + c003cfa4: b7b9 j c003cef2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45209 obj = internalize_json_property(ctx, root, JS_ATOM_empty_string, - c003cdd6: 7662 ld a2,56(sp) - c003cdd8: 6706 ld a4,64(sp) - c003cdda: 67a6 ld a5,72(sp) - c003cddc: 75c2 ld a1,48(sp) - c003cdde: 02f00693 li a3,47 - c003cde2: 8522 mv a0,s0 - c003cde4: d55ff0ef jal ra,c003cb38 - c003cde8: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45203 + c003cfa6: 7662 ld a2,56(sp) + c003cfa8: 6706 ld a4,64(sp) + c003cfaa: 67a6 ld a5,72(sp) + c003cfac: 75c2 ld a1,48(sp) + c003cfae: 02f00693 li a3,47 + c003cfb2: 8522 mv a0,s0 + c003cfb4: d55ff0ef jal ra,c003cd08 + c003cfb8: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45211 JS_FreeValue(ctx, root); - c003cdea: 7662 ld a2,56(sp) - c003cdec: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45201 + c003cfba: 7662 ld a2,56(sp) + c003cfbc: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45209 obj = internalize_json_property(ctx, root, JS_ATOM_empty_string, - c003cdee: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45203 + c003cfbe: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45211 JS_FreeValue(ctx, root); - c003cdf0: 8522 mv a0,s0 - c003cdf2: d47ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45205 + c003cfc0: 8522 mv a0,s0 + c003cfc2: c65ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:45213 return obj; - c003cdf6: 7782 ld a5,32(sp) - c003cdf8: e8be sd a5,80(sp) - c003cdfa: bf4d j c003cdac + c003cfc6: 7782 ld a5,32(sp) + c003cfc8: e8be sd a5,80(sp) + c003cfca: bf4d j c003cf7c -00000000c003cdfc : +00000000c003cfcc : js_proxy_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46604 { - c003cdfc: 7151 addi sp,sp,-240 - c003cdfe: eda6 sd s1,216(sp) - c003ce00: f586 sd ra,232(sp) - c003ce02: f1a2 sd s0,224(sp) - c003ce04: e9ca sd s2,208(sp) - c003ce06: e5ce sd s3,200(sp) - c003ce08: f02e sd a1,32(sp) - c003ce0a: f432 sd a2,40(sp) - c003ce0c: e836 sd a3,16(sp) - c003ce0e: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46601 + c003cfcc: 7151 addi sp,sp,-240 + c003cfce: eda6 sd s1,216(sp) + c003cfd0: f586 sd ra,232(sp) + c003cfd2: f1a2 sd s0,224(sp) + c003cfd4: e9ca sd s2,208(sp) + c003cfd6: e5ce sd s3,200(sp) + c003cfd8: f02e sd a1,32(sp) + c003cfda: f432 sd a2,40(sp) + c003cfdc: e836 sd a3,16(sp) + c003cfde: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46609 if (flags & JS_CALL_FLAG_CONSTRUCTOR) - c003ce10: 0018f893 andi a7,a7,1 - c003ce14: e442 sd a6,8(sp) - c003ce16: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46596 + c003cfe0: 0018f893 andi a7,a7,1 + c003cfe4: e442 sd a6,8(sp) + c003cfe6: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46604 { - c003ce18: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46601 + c003cfe8: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46609 if (flags & JS_CALL_FLAG_CONSTRUCTOR) - c003ce1a: 0e088b63 beqz a7,c003cf10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46602 + c003cfea: 0e088b63 beqz a7,c003d0e0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46610 return js_proxy_call_constructor(ctx, func_obj, this_obj, argc, argv); - c003ce1e: 88b2 mv a7,a2 - c003ce20: f82e sd a1,48(sp) - c003ce22: fc32 sd a2,56(sp) - c003ce24: e0b6 sd a3,64(sp) - c003ce26: e4ba sd a4,72(sp) + c003cfee: 88b2 mv a7,a2 + c003cff0: f82e sd a1,48(sp) + c003cff2: fc32 sd a2,56(sp) + c003cff4: e0b6 sd a3,64(sp) + c003cff6: e4ba sd a4,72(sp) js_proxy_call_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46567 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46575 s = get_proxy_method(ctx, &method, func_obj, JS_ATOM_construct); - c003ce28: 862e mv a2,a1 - c003ce2a: 05f00713 li a4,95 - c003ce2e: 86c6 mv a3,a7 - c003ce30: 088c addi a1,sp,80 - c003ce32: d38d70ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46568 + c003cff8: 862e mv a2,a1 + c003cffa: 05f00713 li a4,95 + c003cffe: 86c6 mv a3,a7 + c003d000: 088c addi a1,sp,80 + c003d002: c56d70ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46576 if (!s) - c003ce36: 6782 ld a5,0(sp) - c003ce38: 6822 ld a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46567 + c003d006: 6782 ld a5,0(sp) + c003d008: 6822 ld a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46575 s = get_proxy_method(ctx, &method, func_obj, JS_ATOM_construct); - c003ce3a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46568 + c003d00a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46576 if (!s) - c003ce3c: e519 bnez a0,c003ce4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46569 + c003d00c: e519 bnez a0,c003d01a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46577 return JS_EXCEPTION; - c003ce3e: e102 sd zero,128(sp) - c003ce40: 4419 li s0,6 + c003d00e: e102 sd zero,128(sp) + c003d010: 4419 li s0,6 js_proxy_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46633 return ret; - c003ce42: 678a ld a5,128(sp) - c003ce44: fca2 sd s0,120(sp) - c003ce46: f8be sd a5,112(sp) - c003ce48: a0d5 j c003cf2c + c003d012: 678a ld a5,128(sp) + c003d014: fca2 sd s0,120(sp) + c003d016: f8be sd a5,112(sp) + c003d018: a0d5 j c003d0fc JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c003ce4a: 6510 ld a2,8(a0) - c003ce4c: 577d li a4,-1 - c003ce4e: 0006091b sext.w s2,a2 - c003ce52: 00e91763 bne s2,a4,c003ce60 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c003d01a: 6510 ld a2,8(a0) + c003d01c: 577d li a4,-1 + c003d01e: 0006091b sext.w s2,a2 + c003d022: 00e91763 bne s2,a4,c003d030 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c003ce56: 610c ld a1,0(a0) - c003ce58: 6198 ld a4,0(a1) - c003ce5a: 9331 srli a4,a4,0x2c + c003d026: 610c ld a1,0(a0) + c003d028: 6198 ld a4,0(a1) + c003d02a: 9331 srli a4,a4,0x2c js_proxy_call_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46578 if (!JS_IsConstructor(ctx, s->target)) - c003ce5c: 8b05 andi a4,a4,1 - c003ce5e: eb19 bnez a4,c003ce74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46571 + c003d02c: 8b05 andi a4,a4,1 + c003d02e: eb19 bnez a4,c003d044 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46579 return JS_ThrowTypeError(ctx, "not a constructor"); - c003ce60: 00021597 auipc a1,0x21 - c003ce64: d6858593 addi a1,a1,-664 # c005dbc8 - c003ce68: 8526 mv a0,s1 - c003ce6a: d8cd60ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46573 + c003d030: 00021597 auipc a1,0x21 + c003d034: dc858593 addi a1,a1,-568 # c005ddf8 + c003d038: 8526 mv a0,s1 + c003d03a: caad60ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46581 return JS_CallConstructor2(ctx, s->target, new_target, argc, argv); - c003ce6e: e12a sd a0,128(sp) - c003ce70: 842e mv s0,a1 - c003ce72: bfc1 j c003ce42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46572 + c003d03e: e12a sd a0,128(sp) + c003d040: 842e mv s0,a1 + c003d042: bfc1 j c003d012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46580 if (JS_IsUndefined(method)) - c003ce74: 46e6 lw a3,88(sp) - c003ce76: 470d li a4,3 - c003ce78: 00e69863 bne a3,a4,c003ce88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46573 + c003d044: 46e6 lw a3,88(sp) + c003d046: 470d li a4,3 + c003d048: 00e69863 bne a3,a4,c003d058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46581 return JS_CallConstructor2(ctx, s->target, new_target, argc, argv); - c003ce7c: 6686 ld a3,64(sp) - c003ce7e: 6726 ld a4,72(sp) - c003ce80: 8526 mv a0,s1 - c003ce82: d6efb0ef jal ra,c00383f0 - c003ce86: b7e5 j c003ce6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46574 + c003d04c: 6686 ld a3,64(sp) + c003d04e: 6726 ld a4,72(sp) + c003d050: 8526 mv a0,s1 + c003d052: d6efb0ef jal ra,c00385c0 + c003d056: b7e5 j c003d03e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46582 arg_array = js_create_array(ctx, argc, argv); - c003ce88: 85be mv a1,a5 - c003ce8a: 8642 mv a2,a6 - c003ce8c: 8526 mv a0,s1 - c003ce8e: e9cec0ef jal ra,c002952a - c003ce92: f0aa sd a0,96(sp) - c003ce94: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46575 + c003d058: 85be mv a1,a5 + c003d05a: 8642 mv a2,a6 + c003d05c: 8526 mv a0,s1 + c003d05e: e9cec0ef jal ra,c00296fa + c003d062: f0aa sd a0,96(sp) + c003d064: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46583 if (JS_IsException(arg_array)) { - c003ce96: 0005879b sext.w a5,a1 - c003ce9a: 4999 li s3,6 - c003ce9c: 03379163 bne a5,s3,c003cebe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46576 + c003d066: 0005879b sext.w a5,a1 + c003d06a: 4999 li s3,6 + c003d06c: 03379163 bne a5,s3,c003d08e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46584 ret = JS_EXCEPTION; - c003cea0: f882 sd zero,112(sp) - c003cea2: 4419 li s0,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46588 + c003d070: f882 sd zero,112(sp) + c003d072: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46596 JS_FreeValue(ctx, method); - c003cea4: 65c6 ld a1,80(sp) - c003cea6: 6666 ld a2,88(sp) - c003cea8: 8526 mv a0,s1 - c003ceaa: c8fca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46589 + c003d074: 65c6 ld a1,80(sp) + c003d076: 6666 ld a2,88(sp) + c003d078: 8526 mv a0,s1 + c003d07a: badca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46597 JS_FreeValue(ctx, arg_array); - c003ceae: 7586 ld a1,96(sp) - c003ceb0: 7626 ld a2,104(sp) - c003ceb2: 8526 mv a0,s1 - c003ceb4: c85ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46590 + c003d07e: 7586 ld a1,96(sp) + c003d080: 7626 ld a2,104(sp) + c003d082: 8526 mv a0,s1 + c003d084: ba3ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46598 return ret; - c003ceb8: 77c6 ld a5,112(sp) - c003ceba: e13e sd a5,128(sp) - c003cebc: b759 j c003ce42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46579 + c003d088: 77c6 ld a5,112(sp) + c003d08a: e13e sd a5,128(sp) + c003d08c: b759 j c003d012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46587 args[0] = s->target; - c003cebe: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46582 + c003d08e: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46590 ret = JS_Call(ctx, method, s->handler, 3, args); - c003cec0: 6666 ld a2,88(sp) - c003cec2: 09010813 addi a6,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46579 + c003d090: 6666 ld a2,88(sp) + c003d092: 09010813 addi a6,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46587 args[0] = s->target; - c003cec6: e93e sd a5,144(sp) - c003cec8: 641c ld a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46580 + c003d096: e93e sd a5,144(sp) + c003d098: 641c ld a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46588 args[1] = arg_array; - c003ceca: f12a sd a0,160(sp) - c003cecc: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46579 + c003d09a: f12a sd a0,160(sp) + c003d09c: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46587 args[0] = s->target; - c003cece: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46581 + c003d09e: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46589 args[2] = new_target; - c003ced0: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46582 + c003d0a0: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46590 ret = JS_Call(ctx, method, s->handler, 3, args); - c003ced2: 65c6 ld a1,80(sp) - c003ced4: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46581 + c003d0a2: 65c6 ld a1,80(sp) + c003d0a4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46589 args[2] = new_target; - c003ced6: f93e sd a5,176(sp) - c003ced8: 67a6 ld a5,72(sp) - c003ceda: fd3e sd a5,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46582 + c003d0a6: f93e sd a5,176(sp) + c003d0a8: 67a6 ld a5,72(sp) + c003d0aa: fd3e sd a5,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46590 ret = JS_Call(ctx, method, s->handler, 3, args); - c003cedc: 6814 ld a3,16(s0) - c003cede: 6c18 ld a4,24(s0) - c003cee0: 478d li a5,3 - c003cee2: 825fc0ef jal ra,c0039706 - c003cee6: f8aa sd a0,112(sp) - c003cee8: fcae sd a1,120(sp) + c003d0ac: 6814 ld a3,16(s0) + c003d0ae: 6c18 ld a4,24(s0) + c003d0b0: 478d li a5,3 + c003d0b2: 825fc0ef jal ra,c00398d6 + c003d0b6: f8aa sd a0,112(sp) + c003d0b8: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003ceea: 0005879b sext.w a5,a1 + c003d0ba: 0005879b sext.w a5,a1 js_proxy_call_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46582 - c003ceee: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46583 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46590 + c003d0be: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46591 if (!JS_IsException(ret) && JS_VALUE_GET_TAG(ret) != JS_TAG_OBJECT) { - c003cef0: fb378ae3 beq a5,s3,c003cea4 - c003cef4: fb2788e3 beq a5,s2,c003cea4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46584 + c003d0c0: fb378ae3 beq a5,s3,c003d074 + c003d0c4: fb2788e3 beq a5,s2,c003d074 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46592 JS_FreeValue(ctx, ret); - c003cef8: 85aa mv a1,a0 - c003cefa: 8622 mv a2,s0 - c003cefc: 8526 mv a0,s1 - c003cefe: c3bca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46585 + c003d0c8: 85aa mv a1,a0 + c003d0ca: 8622 mv a2,s0 + c003d0cc: 8526 mv a0,s1 + c003d0ce: b59ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46593 ret = JS_ThrowTypeErrorNotAnObject(ctx); - c003cf02: 8526 mv a0,s1 - c003cf04: a75d60ef jal ra,c0013978 - c003cf08: f8aa sd a0,112(sp) - c003cf0a: fcae sd a1,120(sp) - c003cf0c: 842e mv s0,a1 - c003cf0e: bf59 j c003cea4 + c003d0d2: 8526 mv a0,s1 + c003d0d4: 993d60ef jal ra,c0013a66 + c003d0d8: f8aa sd a0,112(sp) + c003d0da: fcae sd a1,120(sp) + c003d0dc: 842e mv s0,a1 + c003d0de: bf59 j c003d074 js_proxy_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46604 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46612 s = get_proxy_method(ctx, &method, func_obj, JS_ATOM_apply); - c003cf10: 76a2 ld a3,40(sp) - c003cf12: 862e mv a2,a1 - c003cf14: 05b00713 li a4,91 - c003cf18: 088c addi a1,sp,80 - c003cf1a: c50d70ef jal ra,c001436a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46605 + c003d0e0: 76a2 ld a3,40(sp) + c003d0e2: 862e mv a2,a1 + c003d0e4: 05b00713 li a4,91 + c003d0e8: 088c addi a1,sp,80 + c003d0ea: b6ed70ef jal ra,c0014458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46613 if (!s) - c003cf1e: 6782 ld a5,0(sp) - c003cf20: 6822 ld a6,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46604 + c003d0ee: 6782 ld a5,0(sp) + c003d0f0: 6822 ld a6,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46612 s = get_proxy_method(ctx, &method, func_obj, JS_ATOM_apply); - c003cf22: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46605 + c003d0f2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46613 if (!s) - c003cf24: ed09 bnez a0,c003cf3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46606 + c003d0f4: ed09 bnez a0,c003d10e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46614 return JS_EXCEPTION; - c003cf26: 4799 li a5,6 - c003cf28: f882 sd zero,112(sp) - c003cf2a: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46626 (discriminator 1) -} - c003cf2c: 70ae ld ra,232(sp) - c003cf2e: 740e ld s0,224(sp) - c003cf30: 7546 ld a0,112(sp) - c003cf32: 75e6 ld a1,120(sp) - c003cf34: 64ee ld s1,216(sp) - c003cf36: 694e ld s2,208(sp) - c003cf38: 69ae ld s3,200(sp) - c003cf3a: 616d addi sp,sp,240 - c003cf3c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46607 + c003d0f6: 4799 li a5,6 + c003d0f8: f882 sd zero,112(sp) + c003d0fa: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46634 (discriminator 1) +} + c003d0fc: 70ae ld ra,232(sp) + c003d0fe: 740e ld s0,224(sp) + c003d100: 7546 ld a0,112(sp) + c003d102: 75e6 ld a1,120(sp) + c003d104: 64ee ld s1,216(sp) + c003d106: 694e ld s2,208(sp) + c003d108: 69ae ld s3,200(sp) + c003d10a: 616d addi sp,sp,240 + c003d10c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46615 if (!s->is_func) { - c003cf3e: 02054703 lbu a4,32(a0) - c003cf42: e305 bnez a4,c003cf62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46608 + c003d10e: 02054703 lbu a4,32(a0) + c003d112: e305 bnez a4,c003d132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46616 JS_FreeValue(ctx, method); - c003cf44: 65c6 ld a1,80(sp) - c003cf46: 6666 ld a2,88(sp) - c003cf48: 8526 mv a0,s1 - c003cf4a: befca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46609 + c003d114: 65c6 ld a1,80(sp) + c003d116: 6666 ld a2,88(sp) + c003d118: 8526 mv a0,s1 + c003d11a: b0dca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46617 return JS_ThrowTypeError(ctx, "not a function"); - c003cf4e: 00020597 auipc a1,0x20 - c003cf52: 0ba58593 addi a1,a1,186 # c005d008 - c003cf56: 8526 mv a0,s1 - c003cf58: c9ed60ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46612 + c003d11e: 00020597 auipc a1,0x20 + c003d122: 11a58593 addi a1,a1,282 # c005d238 + c003d126: 8526 mv a0,s1 + c003d128: bbcd60ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46620 return JS_Call(ctx, s->target, this_obj, argc, argv); - c003cf5c: f8aa sd a0,112(sp) - c003cf5e: fcae sd a1,120(sp) - c003cf60: b7f1 j c003cf2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46611 + c003d12c: f8aa sd a0,112(sp) + c003d12e: fcae sd a1,120(sp) + c003d130: b7f1 j c003d0fc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46619 if (JS_IsUndefined(method)) - c003cf62: 46e6 lw a3,88(sp) - c003cf64: 470d li a4,3 - c003cf66: 00e69a63 bne a3,a4,c003cf7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46612 + c003d132: 46e6 lw a3,88(sp) + c003d134: 470d li a4,3 + c003d136: 00e69a63 bne a3,a4,c003d14a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46620 return JS_Call(ctx, s->target, this_obj, argc, argv); - c003cf6a: 6510 ld a2,8(a0) - c003cf6c: 66c2 ld a3,16(sp) - c003cf6e: 6762 ld a4,24(sp) - c003cf70: 610c ld a1,0(a0) - c003cf72: 8526 mv a0,s1 - c003cf74: f92fc0ef jal ra,c0039706 - c003cf78: b7d5 j c003cf5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46613 + c003d13a: 6510 ld a2,8(a0) + c003d13c: 66c2 ld a3,16(sp) + c003d13e: 6762 ld a4,24(sp) + c003d140: 610c ld a1,0(a0) + c003d142: 8526 mv a0,s1 + c003d144: f92fc0ef jal ra,c00398d6 + c003d148: b7d5 j c003d12c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46621 arg_array = js_create_array(ctx, argc, argv); - c003cf7a: 85be mv a1,a5 - c003cf7c: 8642 mv a2,a6 - c003cf7e: 8526 mv a0,s1 - c003cf80: daaec0ef jal ra,c002952a - c003cf84: f0aa sd a0,96(sp) - c003cf86: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46614 + c003d14a: 85be mv a1,a5 + c003d14c: 8642 mv a2,a6 + c003d14e: 8526 mv a0,s1 + c003d150: daaec0ef jal ra,c00296fa + c003d154: f0aa sd a0,96(sp) + c003d156: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46622 if (JS_IsException(arg_array)) { - c003cf88: 0005871b sext.w a4,a1 - c003cf8c: 4799 li a5,6 - c003cf8e: 00f71f63 bne a4,a5,c003cfac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46615 - ret = JS_EXCEPTION; - c003cf92: e102 sd zero,128(sp) - c003cf94: 4419 li s0,6 + c003d158: 0005871b sext.w a4,a1 + c003d15c: 4799 li a5,6 + c003d15e: 00f71f63 bne a4,a5,c003d17c /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46623 + ret = JS_EXCEPTION; + c003d162: e102 sd zero,128(sp) + c003d164: 4419 li s0,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46631 JS_FreeValue(ctx, method); - c003cf96: 65c6 ld a1,80(sp) - c003cf98: 6666 ld a2,88(sp) - c003cf9a: 8526 mv a0,s1 - c003cf9c: b9dca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46624 + c003d166: 65c6 ld a1,80(sp) + c003d168: 6666 ld a2,88(sp) + c003d16a: 8526 mv a0,s1 + c003d16c: abbca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46632 JS_FreeValue(ctx, arg_array); - c003cfa0: 7586 ld a1,96(sp) - c003cfa2: 7626 ld a2,104(sp) - c003cfa4: 8526 mv a0,s1 - c003cfa6: b93ca0ef jal ra,c0007b38 - c003cfaa: bd61 j c003ce42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46618 + c003d170: 7586 ld a1,96(sp) + c003d172: 7626 ld a2,104(sp) + c003d174: 8526 mv a0,s1 + c003d176: ab1ca0ef jal ra,c0007c26 + c003d17a: bd61 j c003d012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46626 args[0] = s->target; - c003cfac: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46621 + c003d17c: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46629 ret = JS_Call(ctx, method, s->handler, 3, args); - c003cfae: 6666 ld a2,88(sp) - c003cfb0: 09010813 addi a6,sp,144 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46618 + c003d17e: 6666 ld a2,88(sp) + c003d180: 09010813 addi a6,sp,144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46626 args[0] = s->target; - c003cfb4: e93e sd a5,144(sp) - c003cfb6: 641c ld a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46620 + c003d184: e93e sd a5,144(sp) + c003d186: 641c ld a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46628 args[2] = arg_array; - c003cfb8: f92a sd a0,176(sp) - c003cfba: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46618 + c003d188: f92a sd a0,176(sp) + c003d18a: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46626 args[0] = s->target; - c003cfbc: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46619 + c003d18c: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46627 args[1] = this_obj; - c003cfbe: 67c2 ld a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46621 + c003d18e: 67c2 ld a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46629 ret = JS_Call(ctx, method, s->handler, 3, args); - c003cfc0: 65c6 ld a1,80(sp) - c003cfc2: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46619 + c003d190: 65c6 ld a1,80(sp) + c003d192: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46627 args[1] = this_obj; - c003cfc4: f13e sd a5,160(sp) - c003cfc6: 67e2 ld a5,24(sp) - c003cfc8: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46621 + c003d194: f13e sd a5,160(sp) + c003d196: 67e2 ld a5,24(sp) + c003d198: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46629 ret = JS_Call(ctx, method, s->handler, 3, args); - c003cfca: 6814 ld a3,16(s0) - c003cfcc: 6c18 ld a4,24(s0) - c003cfce: 478d li a5,3 - c003cfd0: f36fc0ef jal ra,c0039706 - c003cfd4: 842e mv s0,a1 - c003cfd6: e12a sd a0,128(sp) - c003cfd8: e52e sd a1,136(sp) - c003cfda: bf75 j c003cf96 - -00000000c003cfdc : + c003d19a: 6814 ld a3,16(s0) + c003d19c: 6c18 ld a4,24(s0) + c003d19e: 478d li a5,3 + c003d1a0: f36fc0ef jal ra,c00398d6 + c003d1a4: 842e mv s0,a1 + c003d1a6: e12a sd a0,128(sp) + c003d1a8: e52e sd a1,136(sp) + c003d1aa: bf75 j c003d166 + +00000000c003d1ac : js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46897 -{ - c003cfdc: 7149 addi sp,sp,-368 - c003cfde: fa5a sd s6,304(sp) - c003cfe0: 8b36 mv s6,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46905 +{ + c003d1ac: 7149 addi sp,sp,-368 + c003d1ae: fa5a sd s6,304(sp) + c003d1b0: 8b36 mv s6,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46913 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_MAP + magic); - c003cfe2: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46897 -{ - c003cfe6: f2a2 sd s0,352(sp) - c003cfe8: e2d2 sd s4,320(sp) - c003cfea: fe56 sd s5,312(sp) - c003cfec: f65e sd s7,296(sp) - c003cfee: 8a3e mv s4,a5 - c003cff0: f686 sd ra,360(sp) - c003cff2: eea6 sd s1,344(sp) - c003cff4: eaca sd s2,336(sp) - c003cff6: e6ce sd s3,328(sp) - c003cff8: f262 sd s8,288(sp) - c003cffa: ee66 sd s9,280(sp) - c003cffc: ea6a sd s10,272(sp) - c003cffe: e66e sd s11,264(sp) - c003d000: 842a mv s0,a0 - c003d002: 8aba mv s5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46899 - JSValue obj, adder = JS_UNDEFINED, iter = JS_UNDEFINED, next_method = JS_UNDEFINED; - c003d004: e082 sd zero,64(sp) - c003d006: e882 sd zero,80(sp) - c003d008: f082 sd zero,96(sp) + c003d1b2: 0227869b addiw a3,a5,34 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46905 +{ + c003d1b6: f2a2 sd s0,352(sp) + c003d1b8: e2d2 sd s4,320(sp) + c003d1ba: fe56 sd s5,312(sp) + c003d1bc: f65e sd s7,296(sp) + c003d1be: 8a3e mv s4,a5 + c003d1c0: f686 sd ra,360(sp) + c003d1c2: eea6 sd s1,344(sp) + c003d1c4: eaca sd s2,336(sp) + c003d1c6: e6ce sd s3,328(sp) + c003d1c8: f262 sd s8,288(sp) + c003d1ca: ee66 sd s9,280(sp) + c003d1cc: ea6a sd s10,272(sp) + c003d1ce: e66e sd s11,264(sp) + c003d1d0: 842a mv s0,a0 + c003d1d2: 8aba mv s5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46907 + JSValue obj, adder = JS_UNDEFINED, iter = JS_UNDEFINED, next_method = JS_UNDEFINED; + c003d1d4: e082 sd zero,64(sp) + c003d1d6: e882 sd zero,80(sp) + c003d1d8: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46913 obj = js_create_from_ctor(ctx, new_target, JS_CLASS_MAP + magic); - c003d00a: 9e1d90ef jal ra,c00169ea + c003d1da: 9e1d90ef jal ra,c0016bba JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c003d00e: 00058b9b sext.w s7,a1 + c003d1de: 00058b9b sext.w s7,a1 js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46906 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46914 if (JS_IsException(obj)) - c003d012: 4799 li a5,6 - c003d014: 02fb9563 bne s7,a5,c003d03e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46907 + c003d1e2: 4799 li a5,6 + c003d1e4: 02fb9563 bne s7,a5,c003d20e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46915 return JS_EXCEPTION; - c003d018: f182 sd zero,224(sp) - c003d01a: f5de sd s7,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47003 (discriminator 1) -} - c003d01c: 70b6 ld ra,360(sp) - c003d01e: 7416 ld s0,352(sp) - c003d020: 750e ld a0,224(sp) - c003d022: 75ae ld a1,232(sp) - c003d024: 64f6 ld s1,344(sp) - c003d026: 6956 ld s2,336(sp) - c003d028: 69b6 ld s3,328(sp) - c003d02a: 6a16 ld s4,320(sp) - c003d02c: 7af2 ld s5,312(sp) - c003d02e: 7b52 ld s6,304(sp) - c003d030: 7bb2 ld s7,296(sp) - c003d032: 7c12 ld s8,288(sp) - c003d034: 6cf2 ld s9,280(sp) - c003d036: 6d52 ld s10,272(sp) - c003d038: 6db2 ld s11,264(sp) - c003d03a: 6175 addi sp,sp,368 - c003d03c: 8082 ret - c003d03e: 892a mv s2,a0 - c003d040: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46908 + c003d1e8: f182 sd zero,224(sp) + c003d1ea: f5de sd s7,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47011 (discriminator 1) +} + c003d1ec: 70b6 ld ra,360(sp) + c003d1ee: 7416 ld s0,352(sp) + c003d1f0: 750e ld a0,224(sp) + c003d1f2: 75ae ld a1,232(sp) + c003d1f4: 64f6 ld s1,344(sp) + c003d1f6: 6956 ld s2,336(sp) + c003d1f8: 69b6 ld s3,328(sp) + c003d1fa: 6a16 ld s4,320(sp) + c003d1fc: 7af2 ld s5,312(sp) + c003d1fe: 7b52 ld s6,304(sp) + c003d200: 7bb2 ld s7,296(sp) + c003d202: 7c12 ld s8,288(sp) + c003d204: 6cf2 ld s9,280(sp) + c003d206: 6d52 ld s10,272(sp) + c003d208: 6db2 ld s11,264(sp) + c003d20a: 6175 addi sp,sp,368 + c003d20c: 8082 ret + c003d20e: 892a mv s2,a0 + c003d210: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46916 s = js_mallocz(ctx, sizeof(*s)); - c003d042: 8522 mv a0,s0 - c003d044: 03000593 li a1,48 - c003d048: c95d80ef jal ra,c0015cdc - c003d04c: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46909 + c003d212: 8522 mv a0,s0 + c003d214: 03000593 li a1,48 + c003d218: c95d80ef jal ra,c0015eac + c003d21c: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46917 if (!s) - c003d04e: 26050c63 beqz a0,c003d2c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46911 + c003d21e: 26050c63 beqz a0,c003d496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46919 init_list_head(&s->records); - c003d052: 00850793 addi a5,a0,8 + c003d222: 00850793 addi a5,a0,8 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c003d056: e51c sd a5,8(a0) + c003d226: e51c sd a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c003d058: e91c sd a5,16(a0) + c003d228: e91c sd a5,16(a0) js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46904 - is_weak = ((magic & MAGIC_WEAK) != 0); - c003d05a: 401a579b sraiw a5,s4,0x1 - c003d05e: 8b85 andi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46912 + is_weak = ((magic & MAGIC_WEAK) != 0); + c003d22a: 401a579b sraiw a5,s4,0x1 + c003d22e: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46920 s->is_weak = is_weak; - c003d060: c11c sw a5,0(a0) + c003d230: c11c sw a5,0(a0) JS_SetOpaque(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9909 if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - c003d062: 57fd li a5,-1 - c003d064: 00fb9463 bne s7,a5,c003d06c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9903 + c003d232: 57fd li a5,-1 + c003d234: 00fb9463 bne s7,a5,c003d23c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9911 p->u.opaque = opaque; - c003d068: 02a93823 sd a0,48(s2) + c003d238: 02a93823 sd a0,48(s2) js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46922 s->hash_size = 1; - c003d06c: 4785 li a5,1 - c003d06e: 02f9a423 sw a5,40(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46915 + c003d23c: 4785 li a5,1 + c003d23e: 02f9a423 sw a5,40(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46923 s->hash_table = js_malloc(ctx, sizeof(s->hash_table[0]) * s->hash_size); - c003d072: 45c1 li a1,16 - c003d074: 8522 mv a0,s0 - c003d076: bd7d70ef jal ra,c0014c4c - c003d07a: 02a9b023 sd a0,32(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46916 + c003d242: 45c1 li a1,16 + c003d244: 8522 mv a0,s0 + c003d246: af5d70ef jal ra,c0014d3a + c003d24a: 02a9b023 sd a0,32(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46924 if (!s->hash_table) - c003d07e: 24050463 beqz a0,c003d2c6 + c003d24e: 24050463 beqz a0,c003d496 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c003d082: e108 sd a0,0(a0) + c003d252: e108 sd a0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c003d084: e508 sd a0,8(a0) + c003d254: e508 sd a0,8(a0) js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46927 s->record_count_threshold = 4; - c003d086: 4791 li a5,4 - c003d088: 02f9a623 sw a5,44(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46922 + c003d256: 4791 li a5,4 + c003d258: 02f9a623 sw a5,44(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46930 if (argc > 0) - c003d08c: 07604363 bgtz s6,c003d0f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46921 + c003d25c: 07604363 bgtz s6,c003d2c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46929 arr = JS_UNDEFINED; - c003d090: f882 sd zero,112(sp) - c003d092: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46924 + c003d260: f882 sd zero,112(sp) + c003d262: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46932 if (!JS_IsUndefined(arr) && !JS_IsNull(arr)) { - c003d094: fcbe sd a5,120(sp) - c003d096: 4705 li a4,1 - c003d098: 37f9 addiw a5,a5,-2 - c003d09a: 0ef77963 bgeu a4,a5,c003d18c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46903 + c003d264: fcbe sd a5,120(sp) + c003d266: 4705 li a4,1 + c003d268: 37f9 addiw a5,a5,-2 + c003d26a: 0ef77963 bgeu a4,a5,c003d35c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46911 is_set = magic & MAGIC_SET; - c003d09e: 001a7793 andi a5,s4,1 - c003d0a2: e03e sd a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46928 + c003d26e: 001a7793 andi a5,s4,1 + c003d272: e03e sd a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46936 adder = JS_GetProperty(ctx, obj, is_set ? JS_ATOM_add : JS_ATOM_set); - c003d0a4: 06900693 li a3,105 - c003d0a8: e399 bnez a5,c003d0ae - c003d0aa: 04300693 li a3,67 + c003d274: 06900693 li a3,105 + c003d278: e399 bnez a5,c003d27e + c003d27a: 04300693 li a3,67 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003d0ae: 87a6 mv a5,s1 - c003d0b0: 4801 li a6,0 - c003d0b2: 874a mv a4,s2 - c003d0b4: 85ca mv a1,s2 - c003d0b6: 8626 mv a2,s1 - c003d0b8: 8522 mv a0,s0 - c003d0ba: f1ca sd s2,224(sp) - c003d0bc: f5a6 sd s1,232(sp) - c003d0be: f84d40ef jal ra,c0011842 - c003d0c2: e0aa sd a0,64(sp) + c003d27e: 87a6 mv a5,s1 + c003d280: 4801 li a6,0 + c003d282: 874a mv a4,s2 + c003d284: 85ca mv a1,s2 + c003d286: 8626 mv a2,s1 + c003d288: 8522 mv a0,s0 + c003d28a: f1ca sd s2,224(sp) + c003d28c: f5a6 sd s1,232(sp) + c003d28e: ea2d40ef jal ra,c0011930 + c003d292: e0aa sd a0,64(sp) js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46929 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46937 (discriminator 4) if (JS_IsException(adder)) - c003d0c4: 0005879b sext.w a5,a1 - c003d0c8: 4a99 li s5,6 + c003d294: 0005879b sext.w a5,a1 + c003d298: 4a99 li s5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) - c003d0ca: 8bae mv s7,a1 - c003d0cc: 8dae mv s11,a1 + c003d29a: 8bae mv s7,a1 + c003d29c: 8dae mv s11,a1 js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46929 (discriminator 4) - c003d0ce: 01578f63 beq a5,s5,c003d0ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46931 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46937 (discriminator 4) + c003d29e: 01578f63 beq a5,s5,c003d2bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46939 if (!JS_IsFunction(ctx, adder)) { - c003d0d2: 85aa mv a1,a0 - c003d0d4: 865e mv a2,s7 - c003d0d6: 8522 mv a0,s0 - c003d0d8: e04cd0ef jal ra,c000a6dc - c003d0dc: e10d bnez a0,c003d0fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46932 + c003d2a2: 85aa mv a1,a0 + c003d2a4: 865e mv a2,s7 + c003d2a6: 8522 mv a0,s0 + c003d2a8: d22cd0ef jal ra,c000a7ca + c003d2ac: e10d bnez a0,c003d2ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46940 JS_ThrowTypeError(ctx, "set/add is not a function"); - c003d0de: 00024597 auipc a1,0x24 - c003d0e2: a2258593 addi a1,a1,-1502 # c0060b00 - c003d0e6: 8522 mv a0,s0 - c003d0e8: b0ed60ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46899 + c003d2ae: 00024597 auipc a1,0x24 + c003d2b2: ab258593 addi a1,a1,-1358 # c0060d60 + c003d2b6: 8522 mv a0,s0 + c003d2b8: a2cd60ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46907 JSValue obj, adder = JS_UNDEFINED, iter = JS_UNDEFINED, next_method = JS_UNDEFINED; - c003d0ec: 4c8d li s9,3 - c003d0ee: 4b0d li s6,3 - c003d0f0: a8c1 j c003d1c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46923 + c003d2bc: 4c8d li s9,3 + c003d2be: 4b0d li s6,3 + c003d2c0: a8c1 j c003d390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46931 arr = argv[0]; - c003d0f2: 000ab783 ld a5,0(s5) # 4000 <__clzdi2-0xbfffc000> - c003d0f6: f8be sd a5,112(sp) - c003d0f8: 008ab783 ld a5,8(s5) - c003d0fc: bf61 j c003d094 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46936 + c003d2c2: 000ab783 ld a5,0(s5) # 4000 <__clzdi2-0xbfffc000> + c003d2c6: f8be sd a5,112(sp) + c003d2c8: 008ab783 ld a5,8(s5) + c003d2cc: bf61 j c003d264 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46944 iter = JS_GetIterator(ctx, arr, FALSE); - c003d0fe: 75c6 ld a1,112(sp) - c003d100: 7666 ld a2,120(sp) - c003d102: 4681 li a3,0 - c003d104: 8522 mv a0,s0 - c003d106: 939fd0ef jal ra,c003aa3e - c003d10a: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46937 + c003d2ce: 75c6 ld a1,112(sp) + c003d2d0: 7666 ld a2,120(sp) + c003d2d2: 4681 li a3,0 + c003d2d4: 8522 mv a0,s0 + c003d2d6: 939fd0ef jal ra,c003ac0e + c003d2da: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46945 if (JS_IsException(iter)) - c003d10c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46936 + c003d2dc: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46944 iter = JS_GetIterator(ctx, arr, FALSE); - c003d110: 872a mv a4,a0 - c003d112: 89ae mv s3,a1 - c003d114: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46937 + c003d2e0: 872a mv a4,a0 + c003d2e2: 89ae mv s3,a1 + c003d2e4: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46945 if (JS_IsException(iter)) - c003d116: 1b578663 beq a5,s5,c003d2c2 + c003d2e6: 1b578663 beq a5,s5,c003d492 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d11a: 87ae mv a5,a1 - c003d11c: f1aa sd a0,224(sp) - c003d11e: f5ae sd a1,232(sp) - c003d120: 4801 li a6,0 - c003d122: 85aa mv a1,a0 - c003d124: 06b00693 li a3,107 - c003d128: 864e mv a2,s3 - c003d12a: 8522 mv a0,s0 - c003d12c: f16d40ef jal ra,c0011842 - c003d130: f0aa sd a0,96(sp) + c003d2ea: 87ae mv a5,a1 + c003d2ec: f1aa sd a0,224(sp) + c003d2ee: f5ae sd a1,232(sp) + c003d2f0: 4801 li a6,0 + c003d2f2: 85aa mv a1,a0 + c003d2f4: 06b00693 li a3,107 + c003d2f8: 864e mv a2,s3 + c003d2fa: 8522 mv a0,s0 + c003d2fc: e34d40ef jal ra,c0011930 + c003d300: f0aa sd a0,96(sp) js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46940 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46948 if (JS_IsException(next_method)) - c003d132: 0005879b sext.w a5,a1 + c003d302: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d136: 8c2e mv s8,a1 - c003d138: 8cae mv s9,a1 + c003d306: 8c2e mv s8,a1 + c003d308: 8cae mv s9,a1 js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46940 - c003d13a: 09578363 beq a5,s5,c003d1c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46945 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46948 + c003d30a: 09578363 beq a5,s5,c003d390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46953 if (JS_IsException(item)) - c003d13e: 4d19 li s10,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46944 + c003d30e: 4d19 li s10,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46952 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003d140: 7686 ld a3,96(sp) - c003d142: 65c6 ld a1,80(sp) - c003d144: 107c addi a5,sp,44 - c003d146: 864e mv a2,s3 - c003d148: 8762 mv a4,s8 - c003d14a: 8522 mv a0,s0 - c003d14c: f4e2 sd s8,104(sp) - c003d14e: ecce sd s3,88(sp) - c003d150: fe2fd0ef jal ra,c003a932 - c003d154: e12a sd a0,128(sp) - c003d156: e52e sd a1,136(sp) + c003d310: 7686 ld a3,96(sp) + c003d312: 65c6 ld a1,80(sp) + c003d314: 107c addi a5,sp,44 + c003d316: 864e mv a2,s3 + c003d318: 8762 mv a4,s8 + c003d31a: 8522 mv a0,s0 + c003d31c: f4e2 sd s8,104(sp) + c003d31e: ecce sd s3,88(sp) + c003d320: fe2fd0ef jal ra,c003ab02 + c003d324: e12a sd a0,128(sp) + c003d326: e52e sd a1,136(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003d158: 0005879b sext.w a5,a1 + c003d328: 0005879b sext.w a5,a1 js_map_constructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46944 - c003d15c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46945 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46952 + c003d32c: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46953 if (JS_IsException(item)) - c003d15e: 07a78163 beq a5,s10,c003d1c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46947 + c003d32e: 07a78163 beq a5,s10,c003d390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46955 if (done) { - c003d162: 5732 lw a4,44(sp) - c003d164: c71d beqz a4,c003d192 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46948 + c003d332: 5732 lw a4,44(sp) + c003d334: c71d beqz a4,c003d362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46956 JS_FreeValue(ctx, item); - c003d166: 85aa mv a1,a0 - c003d168: 8522 mv a0,s0 - c003d16a: 9cfca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46988 + c003d336: 85aa mv a1,a0 + c003d338: 8522 mv a0,s0 + c003d33a: 8edca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46996 JS_FreeValue(ctx, next_method); - c003d16e: 7586 ld a1,96(sp) - c003d170: 7626 ld a2,104(sp) - c003d172: 8522 mv a0,s0 - c003d174: 9c5ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46989 + c003d33e: 7586 ld a1,96(sp) + c003d340: 7626 ld a2,104(sp) + c003d342: 8522 mv a0,s0 + c003d344: 8e3ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46997 JS_FreeValue(ctx, iter); - c003d178: 65c6 ld a1,80(sp) - c003d17a: 6666 ld a2,88(sp) - c003d17c: 8522 mv a0,s0 - c003d17e: 9bbca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46990 + c003d348: 65c6 ld a1,80(sp) + c003d34a: 6666 ld a2,88(sp) + c003d34c: 8522 mv a0,s0 + c003d34e: 8d9ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46998 JS_FreeValue(ctx, adder); - c003d182: 6586 ld a1,64(sp) - c003d184: 865e mv a2,s7 - c003d186: 8522 mv a0,s0 - c003d188: 9b1ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46992 + c003d352: 6586 ld a1,64(sp) + c003d354: 865e mv a2,s7 + c003d356: 8522 mv a0,s0 + c003d358: 8cfca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47000 return obj; - c003d18c: f1ca sd s2,224(sp) - c003d18e: f5a6 sd s1,232(sp) - c003d190: b571 j c003d01c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46951 + c003d35c: f1ca sd s2,224(sp) + c003d35e: f5a6 sd s1,232(sp) + c003d360: b571 j c003d1ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46959 if (is_set) { - c003d192: 6702 ld a4,0(sp) - c003d194: cb2d beqz a4,c003d206 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46952 + c003d362: 6702 ld a4,0(sp) + c003d364: cb2d beqz a4,c003d3d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46960 ret = JS_Call(ctx, adder, obj, 1, (JSValueConst *)&item); - c003d196: 6586 ld a1,64(sp) - c003d198: 4785 li a5,1 - c003d19a: 8726 mv a4,s1 - c003d19c: 08010813 addi a6,sp,128 - c003d1a0: 86ca mv a3,s2 - c003d1a2: 865e mv a2,s7 - c003d1a4: 8522 mv a0,s0 - c003d1a6: d60fc0ef jal ra,c0039706 - c003d1aa: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46953 + c003d366: 6586 ld a1,64(sp) + c003d368: 4785 li a5,1 + c003d36a: 8726 mv a4,s1 + c003d36c: 08010813 addi a6,sp,128 + c003d370: 86ca mv a3,s2 + c003d372: 865e mv a2,s7 + c003d374: 8522 mv a0,s0 + c003d376: d60fc0ef jal ra,c00398d6 + c003d37a: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46961 if (JS_IsException(ret)) { - c003d1ac: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46952 + c003d37c: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46960 ret = JS_Call(ctx, adder, obj, 1, (JSValueConst *)&item); - c003d1b0: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46953 + c003d380: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46961 if (JS_IsException(ret)) { - c003d1b2: 0fa71b63 bne a4,s10,c003d2a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46954 + c003d382: 0fa71b63 bne a4,s10,c003d478 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46962 JS_FreeValue(ctx, item); - c003d1b6: 658a ld a1,128(sp) - c003d1b8: 662a ld a2,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46979 + c003d386: 658a ld a1,128(sp) + c003d388: 662a ld a2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46987 JS_FreeValue(ctx, value); - c003d1ba: 8522 mv a0,s0 - c003d1bc: 97dca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46994 + c003d38a: 8522 mv a0,s0 + c003d38c: 89bca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47002 if (JS_IsObject(iter)) { - c003d1c0: 000b079b sext.w a5,s6 - c003d1c4: 577d li a4,-1 - c003d1c6: 00e79863 bne a5,a4,c003d1d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46996 + c003d390: 000b079b sext.w a5,s6 + c003d394: 577d li a4,-1 + c003d396: 00e79863 bne a5,a4,c003d3a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47004 JS_IteratorClose(ctx, iter, TRUE); - c003d1ca: 65c6 ld a1,80(sp) - c003d1cc: 4685 li a3,1 - c003d1ce: 865a mv a2,s6 - c003d1d0: 8522 mv a0,s0 - c003d1d2: fb6d60ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46998 + c003d39a: 65c6 ld a1,80(sp) + c003d39c: 4685 li a3,1 + c003d39e: 865a mv a2,s6 + c003d3a0: 8522 mv a0,s0 + c003d3a2: ed4d60ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47006 JS_FreeValue(ctx, next_method); - c003d1d6: 7586 ld a1,96(sp) - c003d1d8: 8666 mv a2,s9 - c003d1da: 8522 mv a0,s0 - c003d1dc: 95dca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46999 + c003d3a6: 7586 ld a1,96(sp) + c003d3a8: 8666 mv a2,s9 + c003d3aa: 8522 mv a0,s0 + c003d3ac: 87bca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47007 JS_FreeValue(ctx, iter); - c003d1e0: 65c6 ld a1,80(sp) - c003d1e2: 865a mv a2,s6 - c003d1e4: 8522 mv a0,s0 - c003d1e6: 953ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47000 + c003d3b0: 65c6 ld a1,80(sp) + c003d3b2: 865a mv a2,s6 + c003d3b4: 8522 mv a0,s0 + c003d3b6: 871ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47008 JS_FreeValue(ctx, adder); - c003d1ea: 6586 ld a1,64(sp) - c003d1ec: 866e mv a2,s11 - c003d1ee: 8522 mv a0,s0 - c003d1f0: 949ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47001 + c003d3ba: 6586 ld a1,64(sp) + c003d3bc: 866e mv a2,s11 + c003d3be: 8522 mv a0,s0 + c003d3c0: 867ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47009 JS_FreeValue(ctx, obj); - c003d1f4: 85ca mv a1,s2 - c003d1f6: 8626 mv a2,s1 - c003d1f8: 8522 mv a0,s0 - c003d1fa: 93fca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47002 + c003d3c4: 85ca mv a1,s2 + c003d3c6: 8626 mv a2,s1 + c003d3c8: 8522 mv a0,s0 + c003d3ca: 85dca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47010 return JS_EXCEPTION; - c003d1fe: 4799 li a5,6 - c003d200: f182 sd zero,224(sp) - c003d202: f5be sd a5,232(sp) - c003d204: bd21 j c003d01c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46960 + c003d3ce: 4799 li a5,6 + c003d3d0: f182 sd zero,224(sp) + c003d3d2: f5be sd a5,232(sp) + c003d3d4: bd21 j c003d1ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46968 key = JS_UNDEFINED; - c003d206: f102 sd zero,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46961 + c003d3d6: f102 sd zero,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46969 value = JS_UNDEFINED; - c003d208: f902 sd zero,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46962 + c003d3d8: f902 sd zero,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46970 if (!JS_IsObject(item)) { - c003d20a: 577d li a4,-1 - c003d20c: 02e78463 beq a5,a4,c003d234 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46963 + c003d3da: 577d li a4,-1 + c003d3dc: 02e78463 beq a5,a4,c003d404 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46971 JS_ThrowTypeErrorNotAnObject(ctx); - c003d210: 8522 mv a0,s0 - c003d212: f66d60ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46961 + c003d3e0: 8522 mv a0,s0 + c003d3e2: e84d60ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46969 value = JS_UNDEFINED; - c003d216: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46960 + c003d3e6: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46968 key = JS_UNDEFINED; - c003d218: 4a8d li s5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46977 + c003d3e8: 4a8d li s5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46985 JS_FreeValue(ctx, item); - c003d21a: 658a ld a1,128(sp) - c003d21c: 662a ld a2,136(sp) - c003d21e: 8522 mv a0,s0 - c003d220: 919ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46978 + c003d3ea: 658a ld a1,128(sp) + c003d3ec: 662a ld a2,136(sp) + c003d3ee: 8522 mv a0,s0 + c003d3f0: 837ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46986 JS_FreeValue(ctx, key); - c003d224: 758a ld a1,160(sp) - c003d226: 8656 mv a2,s5 - c003d228: 8522 mv a0,s0 - c003d22a: 90fca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46979 + c003d3f4: 758a ld a1,160(sp) + c003d3f6: 8656 mv a2,s5 + c003d3f8: 8522 mv a0,s0 + c003d3fa: 82dca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46987 JS_FreeValue(ctx, value); - c003d22e: 75ca ld a1,176(sp) - c003d230: 8652 mv a2,s4 - c003d232: b761 j c003d1ba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46966 + c003d3fe: 75ca ld a1,176(sp) + c003d400: 8652 mv a2,s4 + c003d402: b761 j c003d38a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46974 key = JS_GetPropertyUint32(ctx, item, 0); - c003d234: 85aa mv a1,a0 - c003d236: 4681 li a3,0 - c003d238: 8522 mv a0,s0 - c003d23a: c93d40ef jal ra,c0011ecc - c003d23e: f12a sd a0,160(sp) - c003d240: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46967 + c003d404: 85aa mv a1,a0 + c003d406: 4681 li a3,0 + c003d408: 8522 mv a0,s0 + c003d40a: bb1d40ef jal ra,c0011fba + c003d40e: f12a sd a0,160(sp) + c003d410: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46975 if (JS_IsException(key)) - c003d242: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46966 + c003d412: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46974 key = JS_GetPropertyUint32(ctx, item, 0); - c003d246: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46967 + c003d416: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46975 if (JS_IsException(key)) - c003d248: 07a78b63 beq a5,s10,c003d2be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46969 + c003d418: 07a78b63 beq a5,s10,c003d48e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46977 value = JS_GetPropertyUint32(ctx, item, 1); - c003d24c: 658a ld a1,128(sp) - c003d24e: 662a ld a2,136(sp) - c003d250: 4685 li a3,1 - c003d252: 8522 mv a0,s0 - c003d254: c79d40ef jal ra,c0011ecc - c003d258: f92a sd a0,176(sp) - c003d25a: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46970 + c003d41c: 658a ld a1,128(sp) + c003d41e: 662a ld a2,136(sp) + c003d420: 4685 li a3,1 + c003d422: 8522 mv a0,s0 + c003d424: b97d40ef jal ra,c0011fba + c003d428: f92a sd a0,176(sp) + c003d42a: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46978 if (JS_IsException(value)) - c003d25c: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46969 + c003d42c: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46977 value = JS_GetPropertyUint32(ctx, item, 1); - c003d260: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46970 + c003d430: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46978 if (JS_IsException(value)) - c003d262: fba78ce3 beq a5,s10,c003d21a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46972 + c003d432: fba78ce3 beq a5,s10,c003d3ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46980 args[0] = key; - c003d266: 778a ld a5,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46973 + c003d436: 778a ld a5,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46981 args[1] = value; - c003d268: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46974 + c003d438: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46982 ret = JS_Call(ctx, adder, obj, 2, args); - c003d26a: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46972 + c003d43a: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46980 args[0] = key; - c003d26c: f1be sd a5,224(sp) - c003d26e: 77aa ld a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46973 + c003d43c: f1be sd a5,224(sp) + c003d43e: 77aa ld a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46981 args[1] = value; - c003d270: f9aa sd a0,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46974 + c003d440: f9aa sd a0,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46982 ret = JS_Call(ctx, adder, obj, 2, args); - c003d272: 8726 mv a4,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46972 + c003d442: 8726 mv a4,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46980 args[0] = key; - c003d274: f5be sd a5,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46974 + c003d444: f5be sd a5,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46982 ret = JS_Call(ctx, adder, obj, 2, args); - c003d276: 0e010813 addi a6,sp,224 - c003d27a: 4789 li a5,2 - c003d27c: 86ca mv a3,s2 - c003d27e: 865e mv a2,s7 - c003d280: 8522 mv a0,s0 - c003d282: c84fc0ef jal ra,c0039706 - c003d286: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46975 + c003d446: 0e010813 addi a6,sp,224 + c003d44a: 4789 li a5,2 + c003d44c: 86ca mv a3,s2 + c003d44e: 865e mv a2,s7 + c003d450: 8522 mv a0,s0 + c003d452: c84fc0ef jal ra,c00398d6 + c003d456: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46983 if (JS_IsException(ret)) { - c003d288: 0005871b sext.w a4,a1 - c003d28c: f9a707e3 beq a4,s10,c003d21a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46982 + c003d458: 0005871b sext.w a4,a1 + c003d45c: f9a707e3 beq a4,s10,c003d3ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46990 JS_FreeValue(ctx, key); - c003d290: 762a ld a2,168(sp) - c003d292: e42e sd a1,8(sp) - c003d294: 758a ld a1,160(sp) - c003d296: 8522 mv a0,s0 - c003d298: 8a1ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46983 + c003d460: 762a ld a2,168(sp) + c003d462: e42e sd a1,8(sp) + c003d464: 758a ld a1,160(sp) + c003d466: 8522 mv a0,s0 + c003d468: fbeca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46991 JS_FreeValue(ctx, value); - c003d29c: 75ca ld a1,176(sp) - c003d29e: 766a ld a2,184(sp) - c003d2a0: 8522 mv a0,s0 - c003d2a2: 897ca0ef jal ra,c0007b38 - c003d2a6: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46985 + c003d46c: 75ca ld a1,176(sp) + c003d46e: 766a ld a2,184(sp) + c003d470: 8522 mv a0,s0 + c003d472: fb4ca0ef jal ra,c0007c26 + c003d476: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46993 JS_FreeValue(ctx, ret); - c003d2a8: 65ca ld a1,144(sp) - c003d2aa: 863e mv a2,a5 - c003d2ac: 8522 mv a0,s0 - c003d2ae: 88bca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46986 + c003d478: 65ca ld a1,144(sp) + c003d47a: 863e mv a2,a5 + c003d47c: 8522 mv a0,s0 + c003d47e: fa8ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46994 JS_FreeValue(ctx, item); - c003d2b2: 658a ld a1,128(sp) - c003d2b4: 662a ld a2,136(sp) - c003d2b6: 8522 mv a0,s0 - c003d2b8: 881ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46944 + c003d482: 658a ld a1,128(sp) + c003d484: 662a ld a2,136(sp) + c003d486: 8522 mv a0,s0 + c003d488: f9eca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46952 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003d2bc: b551 j c003d140 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46961 + c003d48c: b551 j c003d310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46969 value = JS_UNDEFINED; - c003d2be: 4a0d li s4,3 - c003d2c0: bfa9 j c003d21a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46899 + c003d48e: 4a0d li s4,3 + c003d490: bfa9 j c003d3ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:46907 JSValue obj, adder = JS_UNDEFINED, iter = JS_UNDEFINED, next_method = JS_UNDEFINED; - c003d2c2: 4c8d li s9,3 - c003d2c4: bdf5 j c003d1c0 - c003d2c6: 4c8d li s9,3 - c003d2c8: 4b0d li s6,3 - c003d2ca: 4d8d li s11,3 - c003d2cc: bdd5 j c003d1c0 - -00000000c003d2ce : + c003d492: 4c8d li s9,3 + c003d494: bdf5 j c003d390 + c003d496: 4c8d li s9,3 + c003d498: 4b0d li s6,3 + c003d49a: 4d8d li s11,3 + c003d49c: bdd5 j c003d390 + +00000000c003d49e : js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47364 -{ - c003d2ce: 710d addi sp,sp,-352 - c003d2d0: eaa2 sd s0,336(sp) - c003d2d2: e6a6 sd s1,328(sp) - c003d2d4: ea62 sd s8,272(sp) - c003d2d6: ee86 sd ra,344(sp) - c003d2d8: e2ca sd s2,320(sp) - c003d2da: fe4e sd s3,312(sp) - c003d2dc: fa52 sd s4,304(sp) - c003d2de: f656 sd s5,296(sp) - c003d2e0: f25a sd s6,288(sp) - c003d2e2: ee5e sd s7,280(sp) - c003d2e4: e666 sd s9,264(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47372 - cb = argv[1]; - c003d2e6: 6b0c ld a1,16(a4) - c003d2e8: 6f10 ld a2,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47364 { - c003d2ea: 842a mv s0,a0 - c003d2ec: 84ba mv s1,a4 - c003d2ee: 8c3e mv s8,a5 + c003d49e: 710d addi sp,sp,-352 + c003d4a0: eaa2 sd s0,336(sp) + c003d4a2: e6a6 sd s1,328(sp) + c003d4a4: ea62 sd s8,272(sp) + c003d4a6: ee86 sd ra,344(sp) + c003d4a8: e2ca sd s2,320(sp) + c003d4aa: fe4e sd s3,312(sp) + c003d4ac: fa52 sd s4,304(sp) + c003d4ae: f656 sd s5,296(sp) + c003d4b0: f25a sd s6,288(sp) + c003d4b2: ee5e sd s7,280(sp) + c003d4b4: e666 sd s9,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47380 + cb = argv[1]; + c003d4b6: 6b0c ld a1,16(a4) + c003d4b8: 6f10 ld a2,24(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47372 +{ + c003d4ba: 842a mv s0,a0 + c003d4bc: 84ba mv s1,a4 + c003d4be: 8c3e mv s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47380 cb = argv[1]; - c003d2f0: f02e sd a1,32(sp) - c003d2f2: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47373 + c003d4c0: f02e sd a1,32(sp) + c003d4c2: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47381 if (check_function(ctx, cb)) - c003d2f4: 9b4d60ef jal ra,c00134a8 - c003d2f8: c509 beqz a0,c003d302 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47476 + c003d4c4: 8d2d60ef jal ra,c0013596 + c003d4c8: c509 beqz a0,c003d4d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47484 return JS_EXCEPTION; - c003d2fa: 4799 li a5,6 - c003d2fc: e182 sd zero,192(sp) - c003d2fe: e5be sd a5,200(sp) - c003d300: ac79 j c003d59e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47376 + c003d4ca: 4799 li a5,6 + c003d4cc: e182 sd zero,192(sp) + c003d4ce: e5be sd a5,200(sp) + c003d4d0: ac79 j c003d76e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47384 iter = JS_GetIterator(ctx, argv[0], /*is_async*/FALSE); - c003d302: 608c ld a1,0(s1) - c003d304: 6490 ld a2,8(s1) - c003d306: 4681 li a3,0 - c003d308: 8522 mv a0,s0 - c003d30a: f34fd0ef jal ra,c003aa3e - c003d30e: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47377 + c003d4d2: 608c ld a1,0(s1) + c003d4d4: 6490 ld a2,8(s1) + c003d4d6: 4681 li a3,0 + c003d4d8: 8522 mv a0,s0 + c003d4da: f34fd0ef jal ra,c003ac0e + c003d4de: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47385 if (JS_IsException(iter)) - c003d310: 0005879b sext.w a5,a1 - c003d314: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47376 + c003d4e0: 0005879b sext.w a5,a1 + c003d4e4: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47384 iter = JS_GetIterator(ctx, argv[0], /*is_async*/FALSE); - c003d316: 872a mv a4,a0 - c003d318: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47377 + c003d4e6: 872a mv a4,a0 + c003d4e8: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47385 if (JS_IsException(iter)) - c003d31a: ff2780e3 beq a5,s2,c003d2fa + c003d4ea: ff2780e3 beq a5,s2,c003d4ca JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003d31e: 87ae mv a5,a1 + c003d4ee: 87ae mv a5,a1 js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47388 key = JS_UNDEFINED; - c003d320: 448d li s1,3 - c003d322: f1aa sd a0,224(sp) - c003d324: f5ae sd a1,232(sp) + c003d4f0: 448d li s1,3 + c003d4f2: f1aa sd a0,224(sp) + c003d4f4: f5ae sd a1,232(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d326: 4801 li a6,0 - c003d328: 85aa mv a1,a0 - c003d32a: 06b00693 li a3,107 - c003d32e: 8652 mv a2,s4 - c003d330: 8522 mv a0,s0 + c003d4f6: 4801 li a6,0 + c003d4f8: 85aa mv a1,a0 + c003d4fa: 06b00693 li a3,107 + c003d4fe: 8652 mv a2,s4 + c003d500: 8522 mv a0,s0 js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47380 - c003d332: f882 sd zero,112(sp) - c003d334: fca6 sd s1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47382 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47388 + c003d502: f882 sd zero,112(sp) + c003d504: fca6 sd s1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47390 v = JS_UNDEFINED; - c003d336: e102 sd zero,128(sp) - c003d338: e526 sd s1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47383 + c003d506: e102 sd zero,128(sp) + c003d508: e526 sd s1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47391 prop = JS_UNDEFINED; - c003d33a: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47384 + c003d50a: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47392 groups = JS_UNDEFINED; - c003d33c: f082 sd zero,96(sp) + c003d50c: f082 sd zero,96(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d33e: d04d40ef jal ra,c0011842 - c003d342: e8aa sd a0,80(sp) + c003d50e: c22d40ef jal ra,c0011930 + c003d512: e8aa sd a0,80(sp) js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47387 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47395 if (JS_IsException(next)) - c003d344: 0005879b sext.w a5,a1 + c003d514: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d348: 8b2e mv s6,a1 + c003d518: 8b2e mv s6,a1 js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47387 - c003d34a: 27278963 beq a5,s2,c003d5bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47391 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47395 + c003d51a: 27278963 beq a5,s2,c003d78c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47399 groups = js_map_constructor(ctx, JS_UNDEFINED, 0, NULL, 0); - c003d34e: f182 sd zero,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47390 + c003d51e: f182 sd zero,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47398 if (is_map) { - c003d350: 160c0a63 beqz s8,c003d4c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47391 + c003d520: 160c0a63 beqz s8,c003d694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47399 groups = js_map_constructor(ctx, JS_UNDEFINED, 0, NULL, 0); - c003d354: 4781 li a5,0 - c003d356: 4701 li a4,0 - c003d358: 4681 li a3,0 - c003d35a: 4581 li a1,0 - c003d35c: 460d li a2,3 - c003d35e: 8522 mv a0,s0 - c003d360: f5a6 sd s1,232(sp) - c003d362: c7bff0ef jal ra,c003cfdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47393 + c003d524: 4781 li a5,0 + c003d526: 4701 li a4,0 + c003d528: 4681 li a3,0 + c003d52a: 4581 li a1,0 + c003d52c: 460d li a2,3 + c003d52e: 8522 mv a0,s0 + c003d530: f5a6 sd s1,232(sp) + c003d532: c7bff0ef jal ra,c003d1ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47401 groups = JS_NewObjectProto(ctx, JS_NULL); - c003d366: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47395 + c003d536: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47403 if (JS_IsException(groups)) - c003d368: 0005879b sext.w a5,a1 - c003d36c: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47393 + c003d538: 0005879b sext.w a5,a1 + c003d53c: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47401 groups = JS_NewObjectProto(ctx, JS_NULL); - c003d36e: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47395 + c003d53e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47403 if (JS_IsException(groups)) - c003d370: 14e78863 beq a5,a4,c003d4c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47399 + c003d540: 14e78863 beq a5,a4,c003d690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47407 if (idx >= MAX_SAFE_INTEGER) { - c003d374: 5cfd li s9,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47398 + c003d544: 5cfd li s9,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47406 for (idx = 0; ; idx++) { - c003d376: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47404 + c003d546: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47412 if (JS_IsException(v)) - c003d378: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47399 + c003d548: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47407 if (idx >= MAX_SAFE_INTEGER) { - c003d37a: 00bcdc93 srli s9,s9,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47403 + c003d54a: 00bcdc93 srli s9,s9,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47411 v = JS_IteratorNext(ctx, iter, next, 0, NULL, &done); - c003d37e: 66c6 ld a3,80(sp) - c003d380: 6586 ld a1,64(sp) - c003d382: 087c addi a5,sp,28 - c003d384: 875a mv a4,s6 - c003d386: 8652 mv a2,s4 - c003d388: 8522 mv a0,s0 - c003d38a: ecda sd s6,88(sp) - c003d38c: e4d2 sd s4,72(sp) - c003d38e: da4fd0ef jal ra,c003a932 - c003d392: e12a sd a0,128(sp) - c003d394: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47404 + c003d54e: 66c6 ld a3,80(sp) + c003d550: 6586 ld a1,64(sp) + c003d552: 087c addi a5,sp,28 + c003d554: 875a mv a4,s6 + c003d556: 8652 mv a2,s4 + c003d558: 8522 mv a0,s0 + c003d55a: ecda sd s6,88(sp) + c003d55c: e4d2 sd s4,72(sp) + c003d55e: da4fd0ef jal ra,c003ab02 + c003d562: e12a sd a0,128(sp) + c003d564: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47412 if (JS_IsException(v)) - c003d396: 0005879b sext.w a5,a1 - c003d39a: 13778363 beq a5,s7,c003d4c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47406 + c003d566: 0005879b sext.w a5,a1 + c003d56a: 13778363 beq a5,s7,c003d690 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47414 if (done) - c003d39e: 47f2 lw a5,28(sp) - c003d3a0: 1e079263 bnez a5,c003d584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47409 + c003d56e: 47f2 lw a5,28(sp) + c003d570: 1e079263 bnez a5,c003d754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47417 args[0] = v; - c003d3a4: f1aa sd a0,224(sp) - c003d3a6: f5ae sd a1,232(sp) + c003d574: f1aa sd a0,224(sp) + c003d576: f5ae sd a1,232(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003d3a8: 000a869b sext.w a3,s5 - c003d3ac: 12da9463 bne s5,a3,c003d4d4 + c003d578: 000a869b sext.w a3,s5 + c003d57c: 12da9463 bne s5,a3,c003d6a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003d3b0: db02 sw zero,180(sp) - c003d3b2: d956 sw s5,176(sp) - c003d3b4: 77ca ld a5,176(sp) - c003d3b6: e582 sd zero,200(sp) - c003d3b8: e1be sd a5,192(sp) - c003d3ba: 4781 li a5,0 + c003d580: db02 sw zero,180(sp) + c003d582: d956 sw s5,176(sp) + c003d584: 77ca ld a5,176(sp) + c003d586: e582 sd zero,200(sp) + c003d588: e1be sd a5,192(sp) + c003d58a: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003d3bc: c1b6 sw a3,192(sp) - c003d3be: 278e fld fa5,192(sp) + c003d58c: c1b6 sw a3,192(sp) + c003d58e: 278e fld fa5,192(sp) js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47411 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 key = JS_Call(ctx, cb, ctx->global_obj, 2, args); - c003d3c0: 7622 ld a2,40(sp) - c003d3c2: 16843683 ld a3,360(s0) - c003d3c6: 17043703 ld a4,368(s0) - c003d3ca: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47410 + c003d590: 7622 ld a2,40(sp) + c003d592: 16843683 ld a3,360(s0) + c003d596: 17043703 ld a4,368(s0) + c003d59a: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47418 args[1] = JS_NewInt64(ctx, idx); - c003d3cc: fdbe sd a5,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47411 + c003d59c: fdbe sd a5,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 key = JS_Call(ctx, cb, ctx->global_obj, 2, args); - c003d3ce: 0e010813 addi a6,sp,224 - c003d3d2: 4789 li a5,2 - c003d3d4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47410 + c003d59e: 0e010813 addi a6,sp,224 + c003d5a2: 4789 li a5,2 + c003d5a4: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47418 args[1] = JS_NewInt64(ctx, idx); - c003d3d6: b9be fsd fa5,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47411 + c003d5a6: b9be fsd fa5,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 key = JS_Call(ctx, cb, ctx->global_obj, 2, args); - c003d3d8: b2efc0ef jal ra,c0039706 - c003d3dc: f8aa sd a0,112(sp) - c003d3de: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47412 + c003d5a8: b2efc0ef jal ra,c00398d6 + c003d5ac: f8aa sd a0,112(sp) + c003d5ae: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47420 if (JS_IsException(key)) - c003d3e0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47411 + c003d5b0: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 key = JS_Call(ctx, cb, ctx->global_obj, 2, args); - c003d3e4: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47412 + c003d5b4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47420 if (JS_IsException(key)) - c003d3e6: 0d778763 beq a5,s7,c003d4b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47415 + c003d5b6: 0d778763 beq a5,s7,c003d684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47423 if (is_map) { - c003d3ea: 0e0c0d63 beqz s8,c003d4e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47416 + c003d5ba: 0e0c0d63 beqz s8,c003d6b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47424 prop = js_map_get(ctx, groups, 1, (JSValueConst *)&key, 0); - c003d3ee: 7586 ld a1,96(sp) - c003d3f0: 4781 li a5,0 - c003d3f2: 1898 addi a4,sp,112 - c003d3f4: 4685 li a3,1 - c003d3f6: 864a mv a2,s2 - c003d3f8: 8522 mv a0,s0 - c003d3fa: 9b2d60ef jal ra,c00135ac - c003d3fe: e92a sd a0,144(sp) - c003d400: 84ae mv s1,a1 - c003d402: 4981 li s3,0 + c003d5be: 7586 ld a1,96(sp) + c003d5c0: 4781 li a5,0 + c003d5c2: 1898 addi a4,sp,112 + c003d5c4: 4685 li a3,1 + c003d5c6: 864a mv a2,s2 + c003d5c8: 8522 mv a0,s0 + c003d5ca: 8d0d60ef jal ra,c001369a + c003d5ce: e92a sd a0,144(sp) + c003d5d0: 84ae mv s1,a1 + c003d5d2: 4981 li s3,0 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003d404: 0004879b sext.w a5,s1 + c003d5d4: 0004879b sext.w a5,s1 js_object_groupBy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47425 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47433 if (JS_IsException(prop)) - c003d408: 13778b63 beq a5,s7,c003d53e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47428 + c003d5d8: 13778b63 beq a5,s7,c003d70e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47436 if (JS_IsUndefined(prop)) { - c003d40c: 470d li a4,3 - c003d40e: 04e79463 bne a5,a4,c003d456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47429 + c003d5dc: 470d li a4,3 + c003d5de: 04e79463 bne a5,a4,c003d626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47437 prop = JS_NewArray(ctx); - c003d412: 8522 mv a0,s0 - c003d414: babd90ef jal ra,c0016fbe - c003d418: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47430 + c003d5e2: 8522 mv a0,s0 + c003d5e4: babd90ef jal ra,c001718e + c003d5e8: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47438 if (JS_IsException(prop)) - c003d41a: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47429 + c003d5ea: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47437 prop = JS_NewArray(ctx); - c003d41e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47430 + c003d5ee: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47438 if (JS_IsException(prop)) - c003d420: 11770f63 beq a4,s7,c003d53e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47432 + c003d5f0: 11770f63 beq a4,s7,c003d70e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47440 if (is_map) { - c003d424: 0e0c0e63 beqz s8,c003d520 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47433 + c003d5f4: 0e0c0e63 beqz s8,c003d6f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47441 args[0] = key; - c003d428: 7746 ld a4,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47434 + c003d5f8: 7746 ld a4,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47442 args[1] = prop; - c003d42a: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47435 + c003d5fa: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47443 res = js_map_set(ctx, groups, 2, args, 0); - c003d42c: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47433 + c003d5fc: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47441 args[0] = key; - c003d42e: f1ba sd a4,224(sp) - c003d430: 7766 ld a4,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47434 + c003d5fe: f1ba sd a4,224(sp) + c003d600: 7766 ld a4,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47442 args[1] = prop; - c003d432: f9aa sd a0,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47435 + c003d602: f9aa sd a0,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47443 res = js_map_set(ctx, groups, 2, args, 0); - c003d434: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47433 + c003d604: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47441 args[0] = key; - c003d436: f5ba sd a4,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47435 + c003d606: f5ba sd a4,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47443 res = js_map_set(ctx, groups, 2, args, 0); - c003d438: 864a mv a2,s2 - c003d43a: 1198 addi a4,sp,224 - c003d43c: 4689 li a3,2 - c003d43e: 8522 mv a0,s0 - c003d440: ecdda0ef jal ra,c001830c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47436 + c003d608: 864a mv a2,s2 + c003d60a: 1198 addi a4,sp,224 + c003d60c: 4689 li a3,2 + c003d60e: 8522 mv a0,s0 + c003d610: ecdda0ef jal ra,c00184dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47444 if (JS_IsException(res)) - c003d444: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47435 + c003d614: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47443 res = js_map_set(ctx, groups, 2, args, 0); - c003d448: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47436 + c003d618: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47444 if (JS_IsException(res)) - c003d44a: 0f778a63 beq a5,s7,c003d53e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47438 + c003d61a: 0f778a63 beq a5,s7,c003d70e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47446 JS_FreeValue(ctx, res); - c003d44e: 85aa mv a1,a0 - c003d450: 8522 mv a0,s0 - c003d452: ee6ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47447 + c003d61e: 85aa mv a1,a0 + c003d620: 8522 mv a0,s0 + c003d622: e04ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47455 res = js_array_push(ctx, prop, 1, (JSValueConst *)&v, /*unshift*/0); - c003d456: 65ca ld a1,144(sp) - c003d458: 4781 li a5,0 - c003d45a: 0118 addi a4,sp,128 - c003d45c: 4685 li a3,1 - c003d45e: 8626 mv a2,s1 - c003d460: 8522 mv a0,s0 - c003d462: ed26 sd s1,152(sp) - c003d464: dd7f50ef jal ra,c003323a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47448 + c003d626: 65ca ld a1,144(sp) + c003d628: 4781 li a5,0 + c003d62a: 0118 addi a4,sp,128 + c003d62c: 4685 li a3,1 + c003d62e: 8626 mv a2,s1 + c003d630: 8522 mv a0,s0 + c003d632: ed26 sd s1,152(sp) + c003d634: dd7f50ef jal ra,c003340a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47456 if (JS_IsException(res)) - c003d468: 2581 sext.w a1,a1 - c003d46a: 0d758a63 beq a1,s7,c003d53e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47452 + c003d638: 2581 sext.w a1,a1 + c003d63a: 0d758a63 beq a1,s7,c003d70e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47460 JS_FreeValue(ctx, prop); - c003d46e: 65ca ld a1,144(sp) - c003d470: 666a ld a2,152(sp) - c003d472: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47398 + c003d63e: 65ca ld a1,144(sp) + c003d640: 666a ld a2,152(sp) + c003d642: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47406 for (idx = 0; ; idx++) { - c003d474: 0a85 addi s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47452 + c003d644: 0a85 addi s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47460 JS_FreeValue(ctx, prop); - c003d476: ec2ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47453 + c003d646: de0ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47461 JS_FreeValue(ctx, key); - c003d47a: 7666 ld a2,120(sp) - c003d47c: 75c6 ld a1,112(sp) - c003d47e: 8522 mv a0,s0 - c003d480: eb8ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47454 + c003d64a: 7666 ld a2,120(sp) + c003d64c: 75c6 ld a1,112(sp) + c003d64e: 8522 mv a0,s0 + c003d650: dd6ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47462 JS_FreeAtom(ctx, key_atom); - c003d484: 85ce mv a1,s3 - c003d486: 8522 mv a0,s0 - c003d488: 884ca0ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47455 + c003d654: 85ce mv a1,s3 + c003d656: 8522 mv a0,s0 + c003d658: fa3c90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47463 JS_FreeValue(ctx, v); - c003d48c: 658a ld a1,128(sp) - c003d48e: 662a ld a2,136(sp) - c003d490: 8522 mv a0,s0 - c003d492: ea6ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47457 + c003d65c: 658a ld a1,128(sp) + c003d65e: 662a ld a2,136(sp) + c003d660: 8522 mv a0,s0 + c003d662: dc4ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47465 key = JS_UNDEFINED; - c003d496: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47456 + c003d666: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47464 prop = JS_UNDEFINED; - c003d498: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47457 + c003d668: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47465 key = JS_UNDEFINED; - c003d49a: f882 sd zero,112(sp) - c003d49c: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47459 + c003d66a: f882 sd zero,112(sp) + c003d66c: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47467 v = JS_UNDEFINED; - c003d49e: e102 sd zero,128(sp) - c003d4a0: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47399 + c003d66e: e102 sd zero,128(sp) + c003d670: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47407 if (idx >= MAX_SAFE_INTEGER) { - c003d4a2: ed9a9ee3 bne s5,s9,c003d37e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47400 + c003d672: ed9a9ee3 bne s5,s9,c003d54e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47408 JS_ThrowTypeError(ctx, "too many elements"); - c003d4a6: 00023597 auipc a1,0x23 - c003d4aa: 67a58593 addi a1,a1,1658 # c0060b20 - c003d4ae: 8522 mv a0,s0 - c003d4b0: f47d50ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47467 (discriminator 1) + c003d676: 00023597 auipc a1,0x23 + c003d67a: 70a58593 addi a1,a1,1802 # c0060d80 + c003d67e: 8522 mv a0,s0 + c003d680: e65d50ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47475 (discriminator 1) JS_IteratorClose(ctx, iter, TRUE); - c003d4b4: 6586 ld a1,64(sp) - c003d4b6: 6626 ld a2,72(sp) - c003d4b8: 4685 li a3,1 - c003d4ba: 8522 mv a0,s0 - c003d4bc: cccd60ef jal ra,c0013988 - c003d4c0: 448d li s1,3 - c003d4c2: a8fd j c003d5c0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47393 + c003d684: 6586 ld a1,64(sp) + c003d686: 6626 ld a2,72(sp) + c003d688: 4685 li a3,1 + c003d68a: 8522 mv a0,s0 + c003d68c: bead60ef jal ra,c0013a76 + c003d690: 448d li s1,3 + c003d692: a8fd j c003d790 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47401 groups = JS_NewObjectProto(ctx, JS_NULL); - c003d4c4: 4789 li a5,2 - c003d4c6: 4609 li a2,2 - c003d4c8: 8522 mv a0,s0 - c003d4ca: 4581 li a1,0 - c003d4cc: f5be sd a5,232(sp) - c003d4ce: 861d90ef jal ra,c0016d2e - c003d4d2: bd51 j c003d366 + c003d694: 4789 li a5,2 + c003d696: 4609 li a2,2 + c003d698: 8522 mv a0,s0 + c003d69a: 4581 li a1,0 + c003d69c: f5be sd a5,232(sp) + c003d69e: 861d90ef jal ra,c0016efe + c003d6a2: bd51 j c003d536 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003d4d4: d22af7d3 fcvt.d.l fa5,s5 - c003d4d8: 479d li a5,7 - c003d4da: e20786d3 fmv.x.d a3,fa5 + c003d6a4: d22af7d3 fcvt.d.l fa5,s5 + c003d6a8: 479d li a5,7 + c003d6aa: e20786d3 fmv.x.d a3,fa5 js_object_groupBy(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003d4de: a1be fsd fa5,192(sp) - c003d4e0: 2681 sext.w a3,a3 - c003d4e2: bde9 j c003d3bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47418 + c003d6ae: a1be fsd fa5,192(sp) + c003d6b0: 2681 sext.w a3,a3 + c003d6b2: bde9 j c003d58c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47426 key_atom = JS_ValueToAtom(ctx, key); - c003d4e4: 85aa mv a1,a0 - c003d4e6: 8522 mv a0,s0 - c003d4e8: 934e40ef jal ra,c002161c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 + c003d6b4: 85aa mv a1,a0 + c003d6b6: 8522 mv a0,s0 + c003d6b8: 934e40ef jal ra,c00217ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47427 JS_FreeValue(ctx, key); - c003d4ec: 75c6 ld a1,112(sp) - c003d4ee: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47418 + c003d6bc: 75c6 ld a1,112(sp) + c003d6be: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47426 key_atom = JS_ValueToAtom(ctx, key); - c003d4f0: 0005099b sext.w s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47419 + c003d6c0: 0005099b sext.w s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47427 JS_FreeValue(ctx, key); - c003d4f4: 8522 mv a0,s0 - c003d4f6: e42ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47420 + c003d6c4: 8522 mv a0,s0 + c003d6c6: d60ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47428 key = JS_UNDEFINED; - c003d4fa: 478d li a5,3 - c003d4fc: f882 sd zero,112(sp) - c003d4fe: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47421 + c003d6ca: 478d li a5,3 + c003d6cc: f882 sd zero,112(sp) + c003d6ce: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47429 if (key_atom == JS_ATOM_NULL) - c003d500: fa098ae3 beqz s3,c003d4b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47423 + c003d6d0: fa098ae3 beqz s3,c003d684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47431 prop = JS_GetProperty(ctx, groups, key_atom); - c003d504: 7706 ld a4,96(sp) + c003d6d4: 7706 ld a4,96(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003d506: 4801 li a6,0 - c003d508: 87ca mv a5,s2 - c003d50a: 86ce mv a3,s3 - c003d50c: 85ba mv a1,a4 - c003d50e: 864a mv a2,s2 - c003d510: 8522 mv a0,s0 - c003d512: e1ba sd a4,192(sp) - c003d514: e5ca sd s2,200(sp) - c003d516: b2cd40ef jal ra,c0011842 - c003d51a: 84ae mv s1,a1 - c003d51c: e92a sd a0,144(sp) + c003d6d6: 4801 li a6,0 + c003d6d8: 87ca mv a5,s2 + c003d6da: 86ce mv a3,s3 + c003d6dc: 85ba mv a1,a4 + c003d6de: 864a mv a2,s2 + c003d6e0: 8522 mv a0,s0 + c003d6e2: e1ba sd a4,192(sp) + c003d6e4: e5ca sd s2,200(sp) + c003d6e6: a4ad40ef jal ra,c0011930 + c003d6ea: 84ae mv s1,a1 + c003d6ec: e92a sd a0,144(sp) js_object_groupBy(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d51e: b5dd j c003d404 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47440 + c003d6ee: b5dd j c003d5d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47448 prop = JS_DupValue(ctx, prop); - c003d520: 94ec90ef jal ra,c000666e - c003d524: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47441 + c003d6f0: 86cc90ef jal ra,c000675c + c003d6f4: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47449 if (JS_DefinePropertyValue(ctx, groups, key_atom, prop, - c003d526: 87ae mv a5,a1 - c003d528: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47440 + c003d6f6: 87ae mv a5,a1 + c003d6f8: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47448 prop = JS_DupValue(ctx, prop); - c003d52a: 872a mv a4,a0 - c003d52c: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47441 + c003d6fa: 872a mv a4,a0 + c003d6fc: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47449 if (JS_DefinePropertyValue(ctx, groups, key_atom, prop, - c003d52e: 481d li a6,7 - c003d530: 86ce mv a3,s3 - c003d532: 864a mv a2,s2 - c003d534: 8522 mv a0,s0 - c003d536: a81d50ef jal ra,c0012fb6 - c003d53a: f0055ee3 bgez a0,c003d456 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47469 + c003d6fe: 481d li a6,7 + c003d700: 86ce mv a3,s3 + c003d702: 864a mv a2,s2 + c003d704: 8522 mv a0,s0 + c003d706: 99fd50ef jal ra,c00130a4 + c003d70a: f0055ee3 bgez a0,c003d626 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47477 JS_FreeAtom(ctx, key_atom); - c003d53e: 85ce mv a1,s3 - c003d540: 8522 mv a0,s0 - c003d542: fcbc90ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47470 + c003d70e: 85ce mv a1,s3 + c003d710: 8522 mv a0,s0 + c003d712: ee9c90ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47478 JS_FreeValue(ctx, prop); - c003d546: 65ca ld a1,144(sp) - c003d548: 8626 mv a2,s1 - c003d54a: 8522 mv a0,s0 - c003d54c: decca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47471 + c003d716: 65ca ld a1,144(sp) + c003d718: 8626 mv a2,s1 + c003d71a: 8522 mv a0,s0 + c003d71c: d0aca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47479 JS_FreeValue(ctx, key); - c003d550: 75c6 ld a1,112(sp) - c003d552: 7666 ld a2,120(sp) - c003d554: 8522 mv a0,s0 - c003d556: de2ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47472 + c003d720: 75c6 ld a1,112(sp) + c003d722: 7666 ld a2,120(sp) + c003d724: 8522 mv a0,s0 + c003d726: d00ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47480 JS_FreeValue(ctx, v); - c003d55a: 658a ld a1,128(sp) - c003d55c: 662a ld a2,136(sp) - c003d55e: 8522 mv a0,s0 - c003d560: dd8ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47473 + c003d72a: 658a ld a1,128(sp) + c003d72c: 662a ld a2,136(sp) + c003d72e: 8522 mv a0,s0 + c003d730: cf6ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47481 JS_FreeValue(ctx, groups); - c003d564: 7586 ld a1,96(sp) - c003d566: 864a mv a2,s2 - c003d568: 8522 mv a0,s0 - c003d56a: dceca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47474 + c003d734: 7586 ld a1,96(sp) + c003d736: 864a mv a2,s2 + c003d738: 8522 mv a0,s0 + c003d73a: cecca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47482 JS_FreeValue(ctx, iter); - c003d56e: 6586 ld a1,64(sp) - c003d570: 8652 mv a2,s4 - c003d572: 8522 mv a0,s0 - c003d574: dc4ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47475 + c003d73e: 6586 ld a1,64(sp) + c003d740: 8652 mv a2,s4 + c003d742: 8522 mv a0,s0 + c003d744: ce2ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47483 JS_FreeValue(ctx, next); - c003d578: 65c6 ld a1,80(sp) - c003d57a: 865a mv a2,s6 - c003d57c: 8522 mv a0,s0 - c003d57e: dbaca0ef jal ra,c0007b38 - c003d582: bba5 j c003d2fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47462 + c003d748: 65c6 ld a1,80(sp) + c003d74a: 865a mv a2,s6 + c003d74c: 8522 mv a0,s0 + c003d74e: cd8ca0ef jal ra,c0007c26 + c003d752: bba5 j c003d4ca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47470 JS_FreeValue(ctx, iter); - c003d584: 6586 ld a1,64(sp) - c003d586: 6626 ld a2,72(sp) - c003d588: 8522 mv a0,s0 - c003d58a: daeca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47463 + c003d754: 6586 ld a1,64(sp) + c003d756: 6626 ld a2,72(sp) + c003d758: 8522 mv a0,s0 + c003d75a: cccca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47471 JS_FreeValue(ctx, next); - c003d58e: 65c6 ld a1,80(sp) - c003d590: 6666 ld a2,88(sp) - c003d592: 8522 mv a0,s0 - c003d594: da4ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47464 + c003d75e: 65c6 ld a1,80(sp) + c003d760: 6666 ld a2,88(sp) + c003d762: 8522 mv a0,s0 + c003d764: cc2ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47472 return groups; - c003d598: 7786 ld a5,96(sp) - c003d59a: e5ca sd s2,200(sp) - c003d59c: e1be sd a5,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47477 (discriminator 1) -} - c003d59e: 60f6 ld ra,344(sp) - c003d5a0: 6456 ld s0,336(sp) - c003d5a2: 650e ld a0,192(sp) - c003d5a4: 65ae ld a1,200(sp) - c003d5a6: 64b6 ld s1,328(sp) - c003d5a8: 6916 ld s2,320(sp) - c003d5aa: 79f2 ld s3,312(sp) - c003d5ac: 7a52 ld s4,304(sp) - c003d5ae: 7ab2 ld s5,296(sp) - c003d5b0: 7b12 ld s6,288(sp) - c003d5b2: 6bf2 ld s7,280(sp) - c003d5b4: 6c52 ld s8,272(sp) - c003d5b6: 6cb2 ld s9,264(sp) - c003d5b8: 6135 addi sp,sp,352 - c003d5ba: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47383 + c003d768: 7786 ld a5,96(sp) + c003d76a: e5ca sd s2,200(sp) + c003d76c: e1be sd a5,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47485 (discriminator 1) +} + c003d76e: 60f6 ld ra,344(sp) + c003d770: 6456 ld s0,336(sp) + c003d772: 650e ld a0,192(sp) + c003d774: 65ae ld a1,200(sp) + c003d776: 64b6 ld s1,328(sp) + c003d778: 6916 ld s2,320(sp) + c003d77a: 79f2 ld s3,312(sp) + c003d77c: 7a52 ld s4,304(sp) + c003d77e: 7ab2 ld s5,296(sp) + c003d780: 7b12 ld s6,288(sp) + c003d782: 6bf2 ld s7,280(sp) + c003d784: 6c52 ld s8,272(sp) + c003d786: 6cb2 ld s9,264(sp) + c003d788: 6135 addi sp,sp,352 + c003d78a: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47391 prop = JS_UNDEFINED; - c003d5bc: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47384 + c003d78c: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47392 groups = JS_UNDEFINED; - c003d5be: 490d li s2,3 - c003d5c0: 4981 li s3,0 - c003d5c2: bfb5 j c003d53e + c003d78e: 490d li s2,3 + c003d790: 4981 li s3,0 + c003d792: bfb5 j c003d70e -00000000c003d5c4 : +00000000c003d794 : js_map_forEach(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47316 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47324 { - c003d5c4: 7131 addi sp,sp,-192 - c003d5c6: ed4e sd s3,152(sp) - c003d5c8: 89b6 mv s3,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47317 + c003d794: 7131 addi sp,sp,-192 + c003d796: ed4e sd s3,152(sp) + c003d798: 89b6 mv s3,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47325 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c003d5ca: 0227869b addiw a3,a5,34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47316 + c003d79a: 0227869b addiw a3,a5,34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47324 { - c003d5ce: f922 sd s0,176(sp) - c003d5d0: f526 sd s1,168(sp) - c003d5d2: e556 sd s5,136(sp) - c003d5d4: fd06 sd ra,184(sp) - c003d5d6: f14a sd s2,160(sp) - c003d5d8: e952 sd s4,144(sp) - c003d5da: e15a sd s6,128(sp) - c003d5dc: 84aa mv s1,a0 - c003d5de: e02e sd a1,0(sp) - c003d5e0: e432 sd a2,8(sp) - c003d5e2: 843a mv s0,a4 - c003d5e4: 8abe mv s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47317 + c003d79e: f922 sd s0,176(sp) + c003d7a0: f526 sd s1,168(sp) + c003d7a2: e556 sd s5,136(sp) + c003d7a4: fd06 sd ra,184(sp) + c003d7a6: f14a sd s2,160(sp) + c003d7a8: e952 sd s4,144(sp) + c003d7aa: e15a sd s6,128(sp) + c003d7ac: 84aa mv s1,a0 + c003d7ae: e02e sd a1,0(sp) + c003d7b0: e432 sd a2,8(sp) + c003d7b2: 843a mv s0,a4 + c003d7b4: 8abe mv s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47325 JSMapState *s = JS_GetOpaque2(ctx, this_val, JS_CLASS_MAP + magic); - c003d5e6: f93d50ef jal ra,c0013578 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47323 + c003d7b6: eb1d50ef jal ra,c0013666 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47331 if (!s) - c003d5ea: e105 bnez a0,c003d60a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47324 + c003d7ba: e105 bnez a0,c003d7da +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47332 return JS_EXCEPTION; - c003d5ec: e082 sd zero,64(sp) - c003d5ee: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47360 + c003d7bc: e082 sd zero,64(sp) + c003d7be: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47368 } - c003d5f0: 70ea ld ra,184(sp) - c003d5f2: 744a ld s0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47359 + c003d7c0: 70ea ld ra,184(sp) + c003d7c2: 744a ld s0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47367 return JS_UNDEFINED; - c003d5f4: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47360 -} - c003d5f6: 6506 ld a0,64(sp) - c003d5f8: 65a6 ld a1,72(sp) - c003d5fa: 74aa ld s1,168(sp) - c003d5fc: 790a ld s2,160(sp) - c003d5fe: 69ea ld s3,152(sp) - c003d600: 6a4a ld s4,144(sp) - c003d602: 6aaa ld s5,136(sp) - c003d604: 6b0a ld s6,128(sp) - c003d606: 6129 addi sp,sp,192 - c003d608: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47325 + c003d7c4: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47368 +} + c003d7c6: 6506 ld a0,64(sp) + c003d7c8: 65a6 ld a1,72(sp) + c003d7ca: 74aa ld s1,168(sp) + c003d7cc: 790a ld s2,160(sp) + c003d7ce: 69ea ld s3,152(sp) + c003d7d0: 6a4a ld s4,144(sp) + c003d7d2: 6aaa ld s5,136(sp) + c003d7d4: 6b0a ld s6,128(sp) + c003d7d6: 6129 addi sp,sp,192 + c003d7d8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47333 func = argv[0]; - c003d60a: 601c ld a5,0(s0) - c003d60c: 8a2a mv s4,a0 - c003d60e: e83e sd a5,16(sp) - c003d610: 641c ld a5,8(s0) - c003d612: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47326 + c003d7da: 601c ld a5,0(s0) + c003d7dc: 8a2a mv s4,a0 + c003d7de: e83e sd a5,16(sp) + c003d7e0: 641c ld a5,8(s0) + c003d7e2: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47334 if (argc > 1) - c003d614: 4785 li a5,1 - c003d616: 0337d563 bge a5,s3,c003d640 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47327 + c003d7e4: 4785 li a5,1 + c003d7e6: 0337d563 bge a5,s3,c003d810 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47335 this_arg = argv[1]; - c003d61a: 681c ld a5,16(s0) - c003d61c: f03e sd a5,32(sp) - c003d61e: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47330 + c003d7ea: 681c ld a5,16(s0) + c003d7ec: f03e sd a5,32(sp) + c003d7ee: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47338 if (check_function(ctx, func)) - c003d620: 65c2 ld a1,16(sp) - c003d622: 6662 ld a2,24(sp) - c003d624: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47329 + c003d7f0: 65c2 ld a1,16(sp) + c003d7f2: 6662 ld a2,24(sp) + c003d7f4: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47337 this_arg = JS_UNDEFINED; - c003d626: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47330 + c003d7f6: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47338 if (check_function(ctx, func)) - c003d628: e81d50ef jal ra,c00134a8 - c003d62c: f161 bnez a0,c003d5ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47334 + c003d7f8: d9fd50ef jal ra,c0013596 + c003d7fc: f161 bnez a0,c003d7bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47342 el = s->records.next; - c003d62e: 010a3403 ld s0,16(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 + c003d7fe: 010a3403 ld s0,16(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47360 if (JS_IsException(ret)) - c003d632: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47335 + c003d802: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47343 while (el != &s->records) { - c003d634: 0a21 addi s4,s4,8 - c003d636: 01441863 bne s0,s4,c003d646 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47359 + c003d804: 0a21 addi s4,s4,8 + c003d806: 01441863 bne s0,s4,c003d816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47367 return JS_UNDEFINED; - c003d63a: e082 sd zero,64(sp) - c003d63c: 478d li a5,3 - c003d63e: bf4d j c003d5f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47329 - this_arg = JS_UNDEFINED; - c003d640: f002 sd zero,32(sp) - c003d642: 478d li a5,3 - c003d644: bff1 j c003d620 + c003d80a: e082 sd zero,64(sp) + c003d80c: 478d li a5,3 + c003d80e: bf4d j c003d7c0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47337 + this_arg = JS_UNDEFINED; + c003d810: f002 sd zero,32(sp) + c003d812: 478d li a5,3 + c003d814: bff1 j c003d7f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47345 if (!mr->empty) { - c003d646: fec42783 lw a5,-20(s0) - c003d64a: ebd1 bnez a5,c003d6de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47338 + c003d816: fec42783 lw a5,-20(s0) + c003d81a: ebd1 bnez a5,c003d8ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 mr->ref_count++; - c003d64c: fe842783 lw a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47336 + c003d81c: fe842783 lw a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47344 mr = list_entry(el, JSMapRecord, link); - c003d650: fe840993 addi s3,s0,-24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47338 + c003d820: fe840993 addi s3,s0,-24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 mr->ref_count++; - c003d654: 2785 addiw a5,a5,1 - c003d656: fef42423 sw a5,-24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47340 + c003d824: 2785 addiw a5,a5,1 + c003d826: fef42423 sw a5,-24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47348 args[1] = JS_DupValue(ctx, mr->key); - c003d65a: 0389b503 ld a0,56(s3) - c003d65e: 0409b583 ld a1,64(s3) - c003d662: 80cc90ef jal ra,c000666e - c003d666: f0aa sd a0,96(sp) - c003d668: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47341 + c003d82a: 0389b503 ld a0,56(s3) + c003d82e: 0409b583 ld a1,64(s3) + c003d832: f2bc80ef jal ra,c000675c + c003d836: f0aa sd a0,96(sp) + c003d838: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47349 if (magic) - c003d66a: 040a8d63 beqz s5,c003d6c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47345 + c003d83a: 040a8d63 beqz s5,c003d894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47353 args[2] = (JSValue)this_val; - c003d66e: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 + c003d83e: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47354 ret = JS_Call(ctx, func, this_arg, 3, (JSValueConst *)args); - c003d670: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47344 + c003d840: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 args[0] = JS_DupValue(ctx, mr->value); - c003d672: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47345 + c003d842: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47353 args[2] = (JSValue)this_val; - c003d674: f8be sd a5,112(sp) - c003d676: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 + c003d844: f8be sd a5,112(sp) + c003d846: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47354 ret = JS_Call(ctx, func, this_arg, 3, (JSValueConst *)args); - c003d678: 7682 ld a3,32(sp) - c003d67a: 7722 ld a4,40(sp) - c003d67c: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47344 + c003d848: 7682 ld a3,32(sp) + c003d84a: 7722 ld a4,40(sp) + c003d84c: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 args[0] = JS_DupValue(ctx, mr->value); - c003d67e: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47345 + c003d84e: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47353 args[2] = (JSValue)this_val; - c003d680: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 + c003d850: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47354 ret = JS_Call(ctx, func, this_arg, 3, (JSValueConst *)args); - c003d682: 05010813 addi a6,sp,80 - c003d686: 478d li a5,3 - c003d688: 8526 mv a0,s1 - c003d68a: 87cfc0ef jal ra,c0039706 - c003d68e: 892e mv s2,a1 - c003d690: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47347 + c003d852: 05010813 addi a6,sp,80 + c003d856: 478d li a5,3 + c003d858: 8526 mv a0,s1 + c003d85a: 87cfc0ef jal ra,c00398d6 + c003d85e: 892e mv s2,a1 + c003d860: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47355 JS_FreeValue(ctx, args[0]); - c003d692: 6666 ld a2,88(sp) - c003d694: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47346 + c003d862: 6666 ld a2,88(sp) + c003d864: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47354 ret = JS_Call(ctx, func, this_arg, 3, (JSValueConst *)args); - c003d696: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47347 + c003d866: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47355 JS_FreeValue(ctx, args[0]); - c003d698: 8526 mv a0,s1 - c003d69a: c9eca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47348 + c003d868: 8526 mv a0,s1 + c003d86a: bbcca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47356 if (!magic) - c003d69e: 000a9763 bnez s5,c003d6ac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47349 + c003d86e: 000a9763 bnez s5,c003d87c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47357 JS_FreeValue(ctx, args[1]); - c003d6a2: 7586 ld a1,96(sp) - c003d6a4: 7626 ld a2,104(sp) - c003d6a6: 8526 mv a0,s1 - c003d6a8: c90ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47351 + c003d872: 7586 ld a1,96(sp) + c003d874: 7626 ld a2,104(sp) + c003d876: 8526 mv a0,s1 + c003d878: baeca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47359 map_decref_record(ctx->rt, mr); - c003d6ac: 6c88 ld a0,24(s1) - c003d6ae: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 + c003d87c: 6c88 ld a0,24(s1) + c003d87e: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47360 if (JS_IsException(ret)) - c003d6b0: 2901 sext.w s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47350 + c003d880: 2901 sext.w s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47358 el = el->next; - c003d6b2: 6400 ld s0,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47351 + c003d882: 6400 ld s0,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47359 map_decref_record(ctx->rt, mr); - c003d6b4: deac90ef jal ra,c0006c9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 + c003d884: d08c90ef jal ra,c0006d8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47360 if (JS_IsException(ret)) - c003d6b8: 01691d63 bne s2,s6,c003d6d2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47353 + c003d888: 01691d63 bne s2,s6,c003d8a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47361 return ret; - c003d6bc: 77c2 ld a5,48(sp) - c003d6be: e0be sd a5,64(sp) - c003d6c0: 77e2 ld a5,56(sp) - c003d6c2: b73d j c003d5f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47344 + c003d88c: 77c2 ld a5,48(sp) + c003d88e: e0be sd a5,64(sp) + c003d890: 77e2 ld a5,56(sp) + c003d892: b73d j c003d7c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47352 args[0] = JS_DupValue(ctx, mr->value); - c003d6c4: 0489b503 ld a0,72(s3) - c003d6c8: 0509b583 ld a1,80(s3) - c003d6cc: fa3c80ef jal ra,c000666e - c003d6d0: bf79 j c003d66e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47354 + c003d894: 0489b503 ld a0,72(s3) + c003d898: 0509b583 ld a1,80(s3) + c003d89c: ec1c80ef jal ra,c000675c + c003d8a0: bf79 j c003d83e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47362 JS_FreeValue(ctx, ret); - c003d6d2: 75c2 ld a1,48(sp) - c003d6d4: 7662 ld a2,56(sp) - c003d6d6: 8526 mv a0,s1 - c003d6d8: c60ca0ef jal ra,c0007b38 - c003d6dc: bfa9 j c003d636 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47356 + c003d8a2: 75c2 ld a1,48(sp) + c003d8a4: 7662 ld a2,56(sp) + c003d8a6: 8526 mv a0,s1 + c003d8a8: b7eca0ef jal ra,c0007c26 + c003d8ac: bfa9 j c003d806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47364 el = el->next; - c003d6de: 6400 ld s0,8(s0) - c003d6e0: bf99 j c003d636 + c003d8ae: 6400 ld s0,8(s0) + c003d8b0: bf99 j c003d806 -00000000c003d6e2 : +00000000c003d8b2 : js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48529 -{ - c003d6e2: 714d addi sp,sp,-336 - c003d6e4: fe26 sd s1,312(sp) - c003d6e6: e686 sd ra,328(sp) - c003d6e8: 84ba mv s1,a4 - c003d6ea: e2a2 sd s0,320(sp) - c003d6ec: fa4a sd s2,304(sp) - c003d6ee: f64e sd s3,296(sp) - c003d6f0: f252 sd s4,288(sp) - c003d6f2: ee56 sd s5,280(sp) - c003d6f4: ea5a sd s6,272(sp) - c003d6f6: e65e sd s7,264(sp) - c003d6f8: e262 sd s8,256(sp) - c003d6fa: fde6 sd s9,248(sp) - c003d6fc: e02e sd a1,0(sp) - c003d6fe: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48537 +{ + c003d8b2: 714d addi sp,sp,-336 + c003d8b4: fe26 sd s1,312(sp) + c003d8b6: e686 sd ra,328(sp) + c003d8b8: 84ba mv s1,a4 + c003d8ba: e2a2 sd s0,320(sp) + c003d8bc: fa4a sd s2,304(sp) + c003d8be: f64e sd s3,296(sp) + c003d8c0: f252 sd s4,288(sp) + c003d8c2: ee56 sd s5,280(sp) + c003d8c4: ea5a sd s6,272(sp) + c003d8c6: e65e sd s7,264(sp) + c003d8c8: e262 sd s8,256(sp) + c003d8ca: fde6 sd s9,248(sp) + c003d8cc: e02e sd a1,0(sp) + c003d8ce: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48539 JSValue next_method = JS_UNDEFINED, iter = JS_UNDEFINED; - c003d700: f082 sd zero,96(sp) - c003d702: f882 sd zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48535 + c003d8d0: f082 sd zero,96(sp) + c003d8d2: f882 sd zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48543 if (!JS_IsObject(this_val)) - c003d704: 0006071b sext.w a4,a2 - c003d708: 57fd li a5,-1 - c003d70a: 02f70063 beq a4,a5,c003d72a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48594 -} - c003d70e: 6416 ld s0,320(sp) - c003d710: 60b6 ld ra,328(sp) - c003d712: 74f2 ld s1,312(sp) - c003d714: 7952 ld s2,304(sp) - c003d716: 79b2 ld s3,296(sp) - c003d718: 7a12 ld s4,288(sp) - c003d71a: 6af2 ld s5,280(sp) - c003d71c: 6b52 ld s6,272(sp) - c003d71e: 6bb2 ld s7,264(sp) - c003d720: 6c12 ld s8,256(sp) - c003d722: 7cee ld s9,248(sp) - c003d724: 6171 addi sp,sp,336 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48536 + c003d8d4: 0006071b sext.w a4,a2 + c003d8d8: 57fd li a5,-1 + c003d8da: 02f70063 beq a4,a5,c003d8fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48602 +} + c003d8de: 6416 ld s0,320(sp) + c003d8e0: 60b6 ld ra,328(sp) + c003d8e2: 74f2 ld s1,312(sp) + c003d8e4: 7952 ld s2,304(sp) + c003d8e6: 79b2 ld s3,296(sp) + c003d8e8: 7a12 ld s4,288(sp) + c003d8ea: 6af2 ld s5,280(sp) + c003d8ec: 6b52 ld s6,272(sp) + c003d8ee: 6bb2 ld s7,264(sp) + c003d8f0: 6c12 ld s8,256(sp) + c003d8f2: 7cee ld s9,248(sp) + c003d8f4: 6171 addi sp,sp,336 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48544 return JS_ThrowTypeErrorNotAnObject(ctx); - c003d726: a52d606f j c0013978 - c003d72a: 8a32 mv s4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48537 + c003d8f6: 970d606f j c0013a66 + c003d8fa: 8a32 mv s4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48545 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003d72c: 86d2 mv a3,s4 - c003d72e: 862e mv a2,a1 - c003d730: 098c addi a1,sp,208 - c003d732: 842a mv s0,a0 - c003d734: df3fc0ef jal ra,c003a526 - c003d738: f02a sd a0,32(sp) - c003d73a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48538 + c003d8fc: 86d2 mv a3,s4 + c003d8fe: 862e mv a2,a1 + c003d900: 098c addi a1,sp,208 + c003d902: 842a mv s0,a0 + c003d904: df3fc0ef jal ra,c003a6f6 + c003d908: f02a sd a0,32(sp) + c003d90a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48546 if (JS_IsException(result_promise)) - c003d73c: 0005879b sext.w a5,a1 - c003d740: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48537 + c003d90c: 0005879b sext.w a5,a1 + c003d910: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48545 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003d742: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48538 + c003d912: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48546 if (JS_IsException(result_promise)) - c003d744: 03279363 bne a5,s2,c003d76a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48539 + c003d914: 03279363 bne a5,s2,c003d93a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48547 return result_promise; - c003d748: e1aa sd a0,192(sp) - c003d74a: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48594 -} - c003d74c: 60b6 ld ra,328(sp) - c003d74e: 6416 ld s0,320(sp) - c003d750: 650e ld a0,192(sp) - c003d752: 65ae ld a1,200(sp) - c003d754: 74f2 ld s1,312(sp) - c003d756: 7952 ld s2,304(sp) - c003d758: 79b2 ld s3,296(sp) - c003d75a: 7a12 ld s4,288(sp) - c003d75c: 6af2 ld s5,280(sp) - c003d75e: 6b52 ld s6,272(sp) - c003d760: 6bb2 ld s7,264(sp) - c003d762: 6c12 ld s8,256(sp) - c003d764: 7cee ld s9,248(sp) - c003d766: 6171 addi sp,sp,336 - c003d768: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48540 + c003d918: e1aa sd a0,192(sp) + c003d91a: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48602 +} + c003d91c: 60b6 ld ra,328(sp) + c003d91e: 6416 ld s0,320(sp) + c003d920: 650e ld a0,192(sp) + c003d922: 65ae ld a1,200(sp) + c003d924: 74f2 ld s1,312(sp) + c003d926: 7952 ld s2,304(sp) + c003d928: 79b2 ld s3,296(sp) + c003d92a: 7a12 ld s4,288(sp) + c003d92c: 6af2 ld s5,280(sp) + c003d92e: 6b52 ld s6,272(sp) + c003d930: 6bb2 ld s7,264(sp) + c003d932: 6c12 ld s8,256(sp) + c003d934: 7cee ld s9,248(sp) + c003d936: 6171 addi sp,sp,336 + c003d938: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48548 promise_resolve = JS_GetProperty(ctx, this_val, JS_ATOM_resolve); - c003d76a: 67a2 ld a5,8(sp) - c003d76c: 6702 ld a4,0(sp) + c003d93a: 67a2 ld a5,8(sp) + c003d93c: 6702 ld a4,0(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d76e: 4801 li a6,0 - c003d770: 863e mv a2,a5 - c003d772: 08100693 li a3,129 - c003d776: 85ba mv a1,a4 - c003d778: 8522 mv a0,s0 - c003d77a: e5be sd a5,200(sp) - c003d77c: e1ba sd a4,192(sp) - c003d77e: 8c4d40ef jal ra,c0011842 - c003d782: e12a sd a0,128(sp) + c003d93e: 4801 li a6,0 + c003d940: 863e mv a2,a5 + c003d942: 08100693 li a3,129 + c003d946: 85ba mv a1,a4 + c003d948: 8522 mv a0,s0 + c003d94a: e5be sd a5,200(sp) + c003d94c: e1ba sd a4,192(sp) + c003d94e: fe3d30ef jal ra,c0011930 + c003d952: e12a sd a0,128(sp) js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48541 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 if (JS_IsException(promise_resolve) || - c003d784: 0005879b sext.w a5,a1 + c003d954: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d788: 89ae mv s3,a1 + c003d958: 89ae mv s3,a1 js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48541 - c003d78a: 09279663 bne a5,s2,c003d816 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48531 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 + c003d95a: 09279663 bne a5,s2,c003d9e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48539 JSValue next_method = JS_UNDEFINED, iter = JS_UNDEFINED; - c003d78e: 4b0d li s6,3 - c003d790: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48548 + c003d95e: 4b0d li s6,3 + c003d960: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48556 error = JS_GetException(ctx); - c003d792: 8522 mv a0,s0 - c003d794: f35cc0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 + c003d962: 8522 mv a0,s0 + c003d964: e53cc0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d798: 762e ld a2,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48548 + c003d968: 762e ld a2,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48556 error = JS_GetException(ctx); - c003d79a: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 + c003d96a: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d79c: 758e ld a1,224(sp) - c003d79e: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48548 + c003d96c: 758e ld a1,224(sp) + c003d96e: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48556 error = JS_GetException(ctx); - c003d7a0: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 + c003d970: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d7a2: e5be sd a5,200(sp) - c003d7a4: 09010813 addi a6,sp,144 - c003d7a8: 4785 li a5,1 - c003d7aa: 4681 li a3,0 - c003d7ac: 470d li a4,3 - c003d7ae: 8522 mv a0,s0 - c003d7b0: e182 sd zero,192(sp) - c003d7b2: f55fb0ef jal ra,c0039706 - c003d7b6: 84ae mv s1,a1 - c003d7b8: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48551 + c003d972: e5be sd a5,200(sp) + c003d974: 09010813 addi a6,sp,144 + c003d978: 4785 li a5,1 + c003d97a: 4681 li a3,0 + c003d97c: 470d li a4,3 + c003d97e: 8522 mv a0,s0 + c003d980: e182 sd zero,192(sp) + c003d982: f55fb0ef jal ra,c00398d6 + c003d986: 84ae mv s1,a1 + c003d988: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48559 JS_FreeValue(ctx, error); - c003d7ba: 666a ld a2,152(sp) - c003d7bc: 65ca ld a1,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 + c003d98a: 666a ld a2,152(sp) + c003d98c: 65ca ld a1,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d7be: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48551 + c003d98e: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48559 JS_FreeValue(ctx, error); - c003d7c0: 8522 mv a0,s0 - c003d7c2: b76ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48552 + c003d990: 8522 mv a0,s0 + c003d992: a94ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48560 if (JS_IsException(ret)) - c003d7c6: 2481 sext.w s1,s1 - c003d7c8: 4799 li a5,6 - c003d7ca: 0ef49a63 bne s1,a5,c003d8be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48591 + c003d996: 2481 sext.w s1,s1 + c003d998: 4799 li a5,6 + c003d99a: 0ef49a63 bne s1,a5,c003da8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48599 JS_FreeValue(ctx, result_promise); - c003d7ce: 7582 ld a1,32(sp) - c003d7d0: 7622 ld a2,40(sp) - c003d7d2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48592 + c003d99e: 7582 ld a1,32(sp) + c003d9a0: 7622 ld a2,40(sp) + c003d9a2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48600 result_promise = JS_EXCEPTION; - c003d7d4: 4c99 li s9,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48591 + c003d9a4: 4c99 li s9,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48599 JS_FreeValue(ctx, result_promise); - c003d7d6: b62ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48592 + c003d9a6: a80ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48600 result_promise = JS_EXCEPTION; - c003d7da: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48583 + c003d9aa: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48591 JS_FreeValue(ctx, promise_resolve); - c003d7dc: 658a ld a1,128(sp) - c003d7de: 864e mv a2,s3 - c003d7e0: 8522 mv a0,s0 - c003d7e2: b56ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48584 + c003d9ac: 658a ld a1,128(sp) + c003d9ae: 864e mv a2,s3 + c003d9b0: 8522 mv a0,s0 + c003d9b2: a74ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48592 JS_FreeValue(ctx, next_method); - c003d7e6: 7586 ld a1,96(sp) - c003d7e8: 865e mv a2,s7 - c003d7ea: 8522 mv a0,s0 - c003d7ec: b4cca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48585 + c003d9b6: 7586 ld a1,96(sp) + c003d9b8: 865e mv a2,s7 + c003d9ba: 8522 mv a0,s0 + c003d9bc: a6aca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48593 JS_FreeValue(ctx, iter); - c003d7f0: 75c6 ld a1,112(sp) - c003d7f2: 865a mv a2,s6 - c003d7f4: 8522 mv a0,s0 - c003d7f6: b42ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48586 + c003d9c0: 75c6 ld a1,112(sp) + c003d9c2: 865a mv a2,s6 + c003d9c4: 8522 mv a0,s0 + c003d9c6: a60ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48594 JS_FreeValue(ctx, resolving_funcs[0]); - c003d7fa: 65ce ld a1,208(sp) - c003d7fc: 666e ld a2,216(sp) - c003d7fe: 8522 mv a0,s0 - c003d800: b38ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48587 + c003d9ca: 65ce ld a1,208(sp) + c003d9cc: 666e ld a2,216(sp) + c003d9ce: 8522 mv a0,s0 + c003d9d0: a56ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48595 JS_FreeValue(ctx, resolving_funcs[1]); - c003d804: 758e ld a1,224(sp) - c003d806: 762e ld a2,232(sp) - c003d808: 8522 mv a0,s0 - c003d80a: b2eca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48588 + c003d9d4: 758e ld a1,224(sp) + c003d9d6: 762e ld a2,232(sp) + c003d9d8: 8522 mv a0,s0 + c003d9da: a4cca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48596 return result_promise; - c003d80e: 7782 ld a5,32(sp) - c003d810: e5e6 sd s9,200(sp) - c003d812: e1be sd a5,192(sp) - c003d814: bf25 j c003d74c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48542 (discriminator 1) + c003d9de: 7782 ld a5,32(sp) + c003d9e0: e5e6 sd s9,200(sp) + c003d9e2: e1be sd a5,192(sp) + c003d9e4: bf25 j c003d91c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48550 (discriminator 1) check_function(ctx, promise_resolve)) - c003d816: 85aa mv a1,a0 - c003d818: 864e mv a2,s3 - c003d81a: 8522 mv a0,s0 - c003d81c: c8dd50ef jal ra,c00134a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48541 (discriminator 1) + c003d9e6: 85aa mv a1,a0 + c003d9e8: 864e mv a2,s3 + c003d9ea: 8522 mv a0,s0 + c003d9ec: babd50ef jal ra,c0013596 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48549 (discriminator 1) if (JS_IsException(promise_resolve) || - c003d820: f53d bnez a0,c003d78e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48544 + c003d9f0: f53d bnez a0,c003d95e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48552 iter = JS_GetIterator(ctx, argv[0], FALSE); - c003d822: 608c ld a1,0(s1) - c003d824: 6490 ld a2,8(s1) - c003d826: 4681 li a3,0 - c003d828: 8522 mv a0,s0 - c003d82a: a14fd0ef jal ra,c003aa3e - c003d82e: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48545 + c003d9f2: 608c ld a1,0(s1) + c003d9f4: 6490 ld a2,8(s1) + c003d9f6: 4681 li a3,0 + c003d9f8: 8522 mv a0,s0 + c003d9fa: a14fd0ef jal ra,c003ac0e + c003d9fe: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48553 if (JS_IsException(iter)) { - c003d830: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48544 + c003da00: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48552 iter = JS_GetIterator(ctx, argv[0], FALSE); - c003d834: 872a mv a4,a0 - c003d836: 84ae mv s1,a1 - c003d838: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48545 + c003da04: 872a mv a4,a0 + c003da06: 84ae mv s1,a1 + c003da08: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48553 if (JS_IsException(iter)) { - c003d83a: f5278be3 beq a5,s2,c003d790 + c003da0a: f5278be3 beq a5,s2,c003d960 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d83e: 87ae mv a5,a1 - c003d840: e1aa sd a0,192(sp) - c003d842: e5ae sd a1,200(sp) - c003d844: 4801 li a6,0 - c003d846: 85aa mv a1,a0 - c003d848: 06b00693 li a3,107 - c003d84c: 8626 mv a2,s1 - c003d84e: 8522 mv a0,s0 - c003d850: ff3d30ef jal ra,c0011842 - c003d854: f0aa sd a0,96(sp) + c003da0e: 87ae mv a5,a1 + c003da10: e1aa sd a0,192(sp) + c003da12: e5ae sd a1,200(sp) + c003da14: 4801 li a6,0 + c003da16: 85aa mv a1,a0 + c003da18: 06b00693 li a3,107 + c003da1c: 8626 mv a2,s1 + c003da1e: 8522 mv a0,s0 + c003da20: f11d30ef jal ra,c0011930 + c003da24: f0aa sd a0,96(sp) js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48565 if (JS_IsException(next_method)) - c003d856: 0005879b sext.w a5,a1 + c003da26: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d85a: 8aae mv s5,a1 - c003d85c: 8bae mv s7,a1 + c003da2a: 8aae mv s5,a1 + c003da2c: 8bae mv s7,a1 js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48557 - c003d85e: f3278ae3 beq a5,s2,c003d792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48565 + c003da2e: f3278ae3 beq a5,s2,c003d962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48572 if (JS_IsException(item)) - c003d862: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48563 + c003da32: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48571 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003d864: 7686 ld a3,96(sp) - c003d866: 75c6 ld a1,112(sp) - c003d868: 087c addi a5,sp,28 - c003d86a: 8756 mv a4,s5 - c003d86c: 8626 mv a2,s1 - c003d86e: 8522 mv a0,s0 - c003d870: fca6 sd s1,120(sp) - c003d872: 8c0fd0ef jal ra,c003a932 - c003d876: fc2e sd a1,56(sp) - c003d878: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48564 + c003da34: 7686 ld a3,96(sp) + c003da36: 75c6 ld a1,112(sp) + c003da38: 087c addi a5,sp,28 + c003da3a: 8756 mv a4,s5 + c003da3c: 8626 mv a2,s1 + c003da3e: 8522 mv a0,s0 + c003da40: fca6 sd s1,120(sp) + c003da42: 8c0fd0ef jal ra,c003ab02 + c003da46: fc2e sd a1,56(sp) + c003da48: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48572 if (JS_IsException(item)) - c003d87a: 2581 sext.w a1,a1 - c003d87c: f1858be3 beq a1,s8,c003d792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48566 + c003da4a: 2581 sext.w a1,a1 + c003da4c: f1858be3 beq a1,s8,c003d962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48574 if (done) - c003d880: 47f2 lw a5,28(sp) - c003d882: ffa9 bnez a5,c003d7dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48568 + c003da50: 47f2 lw a5,28(sp) + c003da52: ffa9 bnez a5,c003d9ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48576 next_promise = JS_Call(ctx, promise_resolve, - c003d884: 6682 ld a3,0(sp) - c003d886: 658a ld a1,128(sp) - c003d888: 4785 li a5,1 - c003d88a: 03010813 addi a6,sp,48 - c003d88e: 8752 mv a4,s4 - c003d890: 864e mv a2,s3 - c003d892: 8522 mv a0,s0 - c003d894: e73fb0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48570 + c003da54: 6682 ld a3,0(sp) + c003da56: 658a ld a1,128(sp) + c003da58: 4785 li a5,1 + c003da5a: 03010813 addi a6,sp,48 + c003da5e: 8752 mv a4,s4 + c003da60: 864e mv a2,s3 + c003da62: 8522 mv a0,s0 + c003da64: e73fb0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 JS_FreeValue(ctx, item); - c003d898: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48568 + c003da68: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48576 next_promise = JS_Call(ctx, promise_resolve, - c003d89a: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48570 + c003da6a: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 JS_FreeValue(ctx, item); - c003d89c: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48568 + c003da6c: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48576 next_promise = JS_Call(ctx, promise_resolve, - c003d89e: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48570 + c003da6e: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 JS_FreeValue(ctx, item); - c003d8a0: 8522 mv a0,s0 - c003d8a2: a96ca0ef jal ra,c0007b38 + c003da70: 8522 mv a0,s0 + c003da72: 9b4ca0ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003d8a6: 6626 ld a2,72(sp) + c003da76: 6626 ld a2,72(sp) js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48571 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48579 if (JS_IsException(next_promise)) { - c003d8a8: 0006079b sext.w a5,a2 - c003d8ac: 01879f63 bne a5,s8,c003d8ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48573 + c003da78: 0006079b sext.w a5,a2 + c003da7c: 01879f63 bne a5,s8,c003da9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48581 JS_IteratorClose(ctx, iter, TRUE); - c003d8b0: 75c6 ld a1,112(sp) - c003d8b2: 7666 ld a2,120(sp) - c003d8b4: 4685 li a3,1 - c003d8b6: 8522 mv a0,s0 - c003d8b8: 8d0d60ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48574 + c003da80: 75c6 ld a1,112(sp) + c003da82: 7666 ld a2,120(sp) + c003da84: 4685 li a3,1 + c003da86: 8522 mv a0,s0 + c003da88: fefd50ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48582 goto fail_reject; - c003d8bc: bdd9 j c003d792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48554 + c003da8c: bdd9 j c003d962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48562 JS_FreeValue(ctx, ret); - c003d8be: 65c6 ld a1,80(sp) - c003d8c0: 6666 ld a2,88(sp) - c003d8c2: 8522 mv a0,s0 - c003d8c4: a74ca0ef jal ra,c0007b38 - c003d8c8: bf11 j c003d7dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48576 + c003da8e: 65c6 ld a1,80(sp) + c003da90: 6666 ld a2,88(sp) + c003da92: 8522 mv a0,s0 + c003da94: 992ca0ef jal ra,c0007c26 + c003da98: bf11 j c003d9ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48584 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, - c003d8ca: 6586 ld a1,64(sp) - c003d8cc: 099c addi a5,sp,208 - c003d8ce: 4709 li a4,2 - c003d8d0: 08000693 li a3,128 - c003d8d4: 8522 mv a0,s0 - c003d8d6: a7ff80ef jal ra,c0036354 - c003d8da: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 + c003da9a: 6586 ld a1,64(sp) + c003da9c: 099c addi a5,sp,208 + c003da9e: 4709 li a4,2 + c003daa0: 08000693 li a3,128 + c003daa4: 8522 mv a0,s0 + c003daa6: a7ff80ef jal ra,c0036524 + c003daaa: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48586 if (check_exception_free(ctx, ret)) - c003d8dc: e1aa sd a0,192(sp) - c003d8de: e5ae sd a1,200(sp) + c003daac: e1aa sd a0,192(sp) + c003daae: e5ae sd a1,200(sp) check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003d8e0: 864a mv a2,s2 - c003d8e2: 85aa mv a1,a0 + c003dab0: 864a mv a2,s2 + c003dab2: 85aa mv a1,a0 js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48586 if (check_exception_free(ctx, ret)) - c003d8e4: 2901 sext.w s2,s2 + c003dab4: 2901 sext.w s2,s2 check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003d8e6: 8522 mv a0,s0 - c003d8e8: a50ca0ef jal ra,c0007b38 + c003dab6: 8522 mv a0,s0 + c003dab8: 96eca0ef jal ra,c0007c26 js_promise_race(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48578 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48586 if (check_exception_free(ctx, ret)) - c003d8ec: f7891ce3 bne s2,s8,c003d864 - c003d8f0: b7c1 j c003d8b0 + c003dabc: f7891ce3 bne s2,s8,c003da34 + c003dac0: b7c1 j c003da80 -00000000c003d8f2 : +00000000c003dac2 : js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48384 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48392 { - c003d8f2: d8010113 addi sp,sp,-640 - c003d8f6: 25513423 sd s5,584(sp) - c003d8fa: 8abe mv s5,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48386 + c003dac2: d8010113 addi sp,sp,-640 + c003dac6: 25513423 sd s5,584(sp) + c003daca: 8abe mv s5,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 JSValue next_method = JS_UNDEFINED, values = JS_UNDEFINED; - c003d8fc: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48384 + c003dacc: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48392 { - c003d8fe: 27213023 sd s2,608(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48386 + c003dace: 27213023 sd s2,608(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 JSValue next_method = JS_UNDEFINED, values = JS_UNDEFINED; - c003d902: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48384 -{ - c003d904: 893a mv s2,a4 - c003d906: 26113c23 sd ra,632(sp) - c003d90a: 26813823 sd s0,624(sp) - c003d90e: 26913423 sd s1,616(sp) - c003d912: 25313c23 sd s3,600(sp) - c003d916: 25413823 sd s4,592(sp) - c003d91a: 25613023 sd s6,576(sp) - c003d91e: 23713c23 sd s7,568(sp) - c003d922: 23813823 sd s8,560(sp) - c003d926: 23913423 sd s9,552(sp) - c003d92a: 23a13023 sd s10,544(sp) - c003d92e: 21b13c23 sd s11,536(sp) - c003d932: f82e sd a1,48(sp) - c003d934: fc32 sd a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48386 + c003dad2: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48392 +{ + c003dad4: 893a mv s2,a4 + c003dad6: 26113c23 sd ra,632(sp) + c003dada: 26813823 sd s0,624(sp) + c003dade: 26913423 sd s1,616(sp) + c003dae2: 25313c23 sd s3,600(sp) + c003dae6: 25413823 sd s4,592(sp) + c003daea: 25613023 sd s6,576(sp) + c003daee: 23713c23 sd s7,568(sp) + c003daf2: 23813823 sd s8,560(sp) + c003daf6: 23913423 sd s9,552(sp) + c003dafa: 23a13023 sd s10,544(sp) + c003dafe: 21b13c23 sd s11,536(sp) + c003db02: f82e sd a1,48(sp) + c003db04: fc32 sd a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 JSValue next_method = JS_UNDEFINED, values = JS_UNDEFINED; - c003d936: e902 sd zero,144(sp) - c003d938: f102 sd zero,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48387 + c003db06: e902 sd zero,144(sp) + c003db08: f102 sd zero,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48395 JSValue resolve_element_env = JS_UNDEFINED, resolve_element, reject_element; - c003d93a: f902 sd zero,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48388 + c003db0a: f902 sd zero,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48396 JSValue promise_resolve = JS_UNDEFINED, iter = JS_UNDEFINED; - c003d93c: f982 sd zero,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48393 + c003db0c: f982 sd zero,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48401 if (!JS_IsObject(this_val)) - c003d93e: 0006071b sext.w a4,a2 - c003d942: 57fd li a5,-1 - c003d944: 04f70563 beq a4,a5,c003d98e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 + c003db0e: 0006071b sext.w a4,a2 + c003db12: 57fd li a5,-1 + c003db14: 04f70563 beq a4,a5,c003db5e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48402 return JS_ThrowTypeErrorNotAnObject(ctx); - c003d948: 830d60ef jal ra,c0013978 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48397 + c003db18: f4fd50ef jal ra,c0013a66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48405 return result_promise; - c003d94c: faaa sd a0,368(sp) - c003d94e: feae sd a1,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48525 -} - c003d950: 27813083 ld ra,632(sp) - c003d954: 27013403 ld s0,624(sp) - c003d958: 7556 ld a0,368(sp) - c003d95a: 75f6 ld a1,376(sp) - c003d95c: 26813483 ld s1,616(sp) - c003d960: 26013903 ld s2,608(sp) - c003d964: 25813983 ld s3,600(sp) - c003d968: 25013a03 ld s4,592(sp) - c003d96c: 24813a83 ld s5,584(sp) - c003d970: 24013b03 ld s6,576(sp) - c003d974: 23813b83 ld s7,568(sp) - c003d978: 23013c03 ld s8,560(sp) - c003d97c: 22813c83 ld s9,552(sp) - c003d980: 22013d03 ld s10,544(sp) - c003d984: 21813d83 ld s11,536(sp) - c003d988: 28010113 addi sp,sp,640 - c003d98c: 8082 ret - c003d98e: 8d32 mv s10,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48395 + c003db1c: faaa sd a0,368(sp) + c003db1e: feae sd a1,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48533 +} + c003db20: 27813083 ld ra,632(sp) + c003db24: 27013403 ld s0,624(sp) + c003db28: 7556 ld a0,368(sp) + c003db2a: 75f6 ld a1,376(sp) + c003db2c: 26813483 ld s1,616(sp) + c003db30: 26013903 ld s2,608(sp) + c003db34: 25813983 ld s3,600(sp) + c003db38: 25013a03 ld s4,592(sp) + c003db3c: 24813a83 ld s5,584(sp) + c003db40: 24013b03 ld s6,576(sp) + c003db44: 23813b83 ld s7,568(sp) + c003db48: 23013c03 ld s8,560(sp) + c003db4c: 22813c83 ld s9,552(sp) + c003db50: 22013d03 ld s10,544(sp) + c003db54: 21813d83 ld s11,536(sp) + c003db58: 28010113 addi sp,sp,640 + c003db5c: 8082 ret + c003db5e: 8d32 mv s10,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48403 result_promise = js_new_promise_capability(ctx, resolving_funcs, this_val); - c003d990: 86ea mv a3,s10 - c003d992: 862e mv a2,a1 - c003d994: 030c addi a1,sp,384 - c003d996: 842a mv s0,a0 - c003d998: b8ffc0ef jal ra,c003a526 - c003d99c: e8aa sd a0,80(sp) - c003d99e: ecae sd a1,88(sp) - c003d9a0: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48396 + c003db60: 86ea mv a3,s10 + c003db62: 862e mv a2,a1 + c003db64: 030c addi a1,sp,384 + c003db66: 842a mv s0,a0 + c003db68: b8ffc0ef jal ra,c003a6f6 + c003db6c: e8aa sd a0,80(sp) + c003db6e: ecae sd a1,88(sp) + c003db70: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48404 if (JS_IsException(result_promise)) - c003d9a2: 0005879b sext.w a5,a1 - c003d9a6: 4499 li s1,6 - c003d9a8: fa9782e3 beq a5,s1,c003d94c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48398 + c003db72: 0005879b sext.w a5,a1 + c003db76: 4499 li s1,6 + c003db78: fa9782e3 beq a5,s1,c003db1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48406 promise_resolve = JS_GetProperty(ctx, this_val, JS_ATOM_resolve); - c003d9ac: 77e2 ld a5,56(sp) - c003d9ae: 7742 ld a4,48(sp) + c003db7c: 77e2 ld a5,56(sp) + c003db7e: 7742 ld a4,48(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003d9b0: 4801 li a6,0 - c003d9b2: 863e mv a2,a5 - c003d9b4: 08100693 li a3,129 - c003d9b8: 85ba mv a1,a4 - c003d9ba: 8522 mv a0,s0 - c003d9bc: e7be sd a5,456(sp) - c003d9be: e3ba sd a4,448(sp) - c003d9c0: e83d30ef jal ra,c0011842 - c003d9c4: f22a sd a0,288(sp) - c003d9c6: f62e sd a1,296(sp) - c003d9c8: f1aa sd a0,224(sp) - c003d9ca: f5ae sd a1,232(sp) + c003db80: 4801 li a6,0 + c003db82: 863e mv a2,a5 + c003db84: 08100693 li a3,129 + c003db88: 85ba mv a1,a4 + c003db8a: 8522 mv a0,s0 + c003db8c: e7be sd a5,456(sp) + c003db8e: e3ba sd a4,448(sp) + c003db90: da1d30ef jal ra,c0011930 + c003db94: f22a sd a0,288(sp) + c003db96: f62e sd a1,296(sp) + c003db98: f1aa sd a0,224(sp) + c003db9a: f5ae sd a1,232(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 if (JS_IsException(promise_resolve) || - c003d9cc: 0005879b sext.w a5,a1 + c003db9c: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003d9d0: 89ae mv s3,a1 + c003dba0: 89ae mv s3,a1 js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48399 - c003d9d2: 0a979463 bne a5,s1,c003da7a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 + c003dba2: 0a979463 bne a5,s1,c003dc4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48396 JSValue promise_resolve = JS_UNDEFINED, iter = JS_UNDEFINED; - c003d9d6: 478d li a5,3 - c003d9d8: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48387 + c003dba6: 478d li a5,3 + c003dba8: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48395 JSValue resolve_element_env = JS_UNDEFINED, resolve_element, reject_element; - c003d9da: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48386 + c003dbaa: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 JSValue next_method = JS_UNDEFINED, values = JS_UNDEFINED; - c003d9dc: e43e sd a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48406 + c003dbac: e43e sd a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48414 error = JS_GetException(ctx); - c003d9de: 8522 mv a0,s0 - c003d9e0: ce9cc0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 + c003dbae: 8522 mv a0,s0 + c003dbb0: c07cc0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d9e4: 667a ld a2,408(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48406 + c003dbb4: 667a ld a2,408(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48414 error = JS_GetException(ctx); - c003d9e6: e62e sd a1,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 + c003dbb6: e62e sd a1,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d9e8: 65da ld a1,400(sp) - c003d9ea: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48406 + c003dbb8: 65da ld a1,400(sp) + c003dbba: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48414 error = JS_GetException(ctx); - c003d9ec: e22a sd a0,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 + c003dbbc: e22a sd a0,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003d9ee: febe sd a5,376(sp) - c003d9f0: 10010813 addi a6,sp,256 - c003d9f4: 4785 li a5,1 - c003d9f6: 4681 li a3,0 - c003d9f8: 470d li a4,3 - c003d9fa: 8522 mv a0,s0 - c003d9fc: fa82 sd zero,368(sp) - c003d9fe: d09fb0ef jal ra,c0039706 - c003da02: 84ae mv s1,a1 - c003da04: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48409 + c003dbbe: febe sd a5,376(sp) + c003dbc0: 10010813 addi a6,sp,256 + c003dbc4: 4785 li a5,1 + c003dbc6: 4681 li a3,0 + c003dbc8: 470d li a4,3 + c003dbca: 8522 mv a0,s0 + c003dbcc: fa82 sd zero,368(sp) + c003dbce: d09fb0ef jal ra,c00398d6 + c003dbd2: 84ae mv s1,a1 + c003dbd4: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48417 JS_FreeValue(ctx, error); - c003da06: 6632 ld a2,264(sp) - c003da08: 6592 ld a1,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 + c003dbd6: 6632 ld a2,264(sp) + c003dbd8: 6592 ld a1,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, 1, - c003da0a: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48409 + c003dbda: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48417 JS_FreeValue(ctx, error); - c003da0c: 8522 mv a0,s0 - c003da0e: 92aca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48410 + c003dbdc: 8522 mv a0,s0 + c003dbde: 848ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48418 if (JS_IsException(ret)) - c003da12: 2481 sext.w s1,s1 - c003da14: 4799 li a5,6 - c003da16: 08f49d63 bne s1,a5,c003dab0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48522 + c003dbe2: 2481 sext.w s1,s1 + c003dbe4: 4799 li a5,6 + c003dbe6: 08f49d63 bne s1,a5,c003dc80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48530 JS_FreeValue(ctx, result_promise); - c003da1a: 65c6 ld a1,80(sp) - c003da1c: 6666 ld a2,88(sp) - c003da1e: 8522 mv a0,s0 - c003da20: 918ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48523 + c003dbea: 65c6 ld a1,80(sp) + c003dbec: 6666 ld a2,88(sp) + c003dbee: 8522 mv a0,s0 + c003dbf0: 836ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48531 result_promise = JS_EXCEPTION; - c003da24: 4799 li a5,6 - c003da26: e882 sd zero,80(sp) - c003da28: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48513 + c003dbf4: 4799 li a5,6 + c003dbf6: e882 sd zero,80(sp) + c003dbf8: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48521 JS_FreeValue(ctx, promise_resolve); - c003da2a: 758e ld a1,224(sp) - c003da2c: 864e mv a2,s3 - c003da2e: 8522 mv a0,s0 - c003da30: 908ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48514 + c003dbfa: 758e ld a1,224(sp) + c003dbfc: 864e mv a2,s3 + c003dbfe: 8522 mv a0,s0 + c003dc00: 826ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48522 JS_FreeValue(ctx, resolve_element_env); - c003da34: 75ca ld a1,176(sp) - c003da36: 8666 mv a2,s9 - c003da38: 8522 mv a0,s0 - c003da3a: 8feca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48515 + c003dc04: 75ca ld a1,176(sp) + c003dc06: 8666 mv a2,s9 + c003dc08: 8522 mv a0,s0 + c003dc0a: 81cca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48523 JS_FreeValue(ctx, values); - c003da3e: 758a ld a1,160(sp) - c003da40: 762a ld a2,168(sp) - c003da42: 8522 mv a0,s0 - c003da44: 8f4ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48516 + c003dc0e: 758a ld a1,160(sp) + c003dc10: 762a ld a2,168(sp) + c003dc12: 8522 mv a0,s0 + c003dc14: 812ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48524 JS_FreeValue(ctx, next_method); - c003da48: 65ca ld a1,144(sp) - c003da4a: 6622 ld a2,8(sp) - c003da4c: 8522 mv a0,s0 - c003da4e: 8eaca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48517 + c003dc18: 65ca ld a1,144(sp) + c003dc1a: 6622 ld a2,8(sp) + c003dc1c: 8522 mv a0,s0 + c003dc1e: 808ca0ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48525 JS_FreeValue(ctx, iter); - c003da52: 75ce ld a1,240(sp) - c003da54: 6642 ld a2,16(sp) - c003da56: 8522 mv a0,s0 - c003da58: 8e0ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48518 + c003dc22: 75ce ld a1,240(sp) + c003dc24: 6642 ld a2,16(sp) + c003dc26: 8522 mv a0,s0 + c003dc28: fffc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48526 JS_FreeValue(ctx, resolving_funcs[0]); - c003da5c: 659a ld a1,384(sp) - c003da5e: 663a ld a2,392(sp) - c003da60: 8522 mv a0,s0 - c003da62: 8d6ca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48519 + c003dc2c: 659a ld a1,384(sp) + c003dc2e: 663a ld a2,392(sp) + c003dc30: 8522 mv a0,s0 + c003dc32: ff5c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48527 JS_FreeValue(ctx, resolving_funcs[1]); - c003da66: 65da ld a1,400(sp) - c003da68: 667a ld a2,408(sp) - c003da6a: 8522 mv a0,s0 - c003da6c: 8ccca0ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48520 + c003dc36: 65da ld a1,400(sp) + c003dc38: 667a ld a2,408(sp) + c003dc3a: 8522 mv a0,s0 + c003dc3c: febc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48528 return result_promise; - c003da70: 67c6 ld a5,80(sp) - c003da72: fabe sd a5,368(sp) - c003da74: 7782 ld a5,32(sp) - c003da76: febe sd a5,376(sp) - c003da78: bde1 j c003d950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48400 (discriminator 1) + c003dc40: 67c6 ld a5,80(sp) + c003dc42: fabe sd a5,368(sp) + c003dc44: 7782 ld a5,32(sp) + c003dc46: febe sd a5,376(sp) + c003dc48: bde1 j c003db20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48408 (discriminator 1) check_function(ctx, promise_resolve)) - c003da7a: 85aa mv a1,a0 - c003da7c: 864e mv a2,s3 - c003da7e: 8522 mv a0,s0 - c003da80: a29d50ef jal ra,c00134a8 - c003da84: 8b2a mv s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48399 (discriminator 1) + c003dc4a: 85aa mv a1,a0 + c003dc4c: 864e mv a2,s3 + c003dc4e: 8522 mv a0,s0 + c003dc50: 947d50ef jal ra,c0013596 + c003dc54: 8b2a mv s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48407 (discriminator 1) if (JS_IsException(promise_resolve) || - c003da86: f921 bnez a0,c003d9d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48402 + c003dc56: f921 bnez a0,c003dba6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48410 iter = JS_GetIterator(ctx, argv[0], FALSE); - c003da88: 00093583 ld a1,0(s2) - c003da8c: 00893603 ld a2,8(s2) - c003da90: 4681 li a3,0 - c003da92: 8522 mv a0,s0 - c003da94: fabfc0ef jal ra,c003aa3e - c003da98: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48403 + c003dc58: 00093583 ld a1,0(s2) + c003dc5c: 00893603 ld a2,8(s2) + c003dc60: 4681 li a3,0 + c003dc62: 8522 mv a0,s0 + c003dc64: fabfc0ef jal ra,c003ac0e + c003dc68: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48411 if (JS_IsException(iter)) { - c003da9a: 47c2 lw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48402 + c003dc6a: 47c2 lw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48410 iter = JS_GetIterator(ctx, argv[0], FALSE); - c003da9c: f9aa sd a0,240(sp) - c003da9e: 872a mv a4,a0 - c003daa0: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48403 + c003dc6c: f9aa sd a0,240(sp) + c003dc6e: 872a mv a4,a0 + c003dc70: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48411 if (JS_IsException(iter)) { - c003daa2: 00979d63 bne a5,s1,c003dabc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48387 + c003dc72: 00979d63 bne a5,s1,c003dc8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48395 JSValue resolve_element_env = JS_UNDEFINED, resolve_element, reject_element; - c003daa6: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48386 + c003dc76: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48394 JSValue next_method = JS_UNDEFINED, values = JS_UNDEFINED; - c003daa8: 478d li a5,3 - c003daaa: bf0d j c003d9dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48387 + c003dc78: 478d li a5,3 + c003dc7a: bf0d j c003dbac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48395 JSValue resolve_element_env = JS_UNDEFINED, resolve_element, reject_element; - c003daac: 4c8d li s9,3 - c003daae: bf05 j c003d9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48412 + c003dc7c: 4c8d li s9,3 + c003dc7e: bf05 j c003dbae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48420 JS_FreeValue(ctx, ret); - c003dab0: 658a ld a1,128(sp) - c003dab2: 662a ld a2,136(sp) - c003dab4: 8522 mv a0,s0 - c003dab6: 882ca0ef jal ra,c0007b38 - c003daba: bf85 j c003da2a + c003dc80: 658a ld a1,128(sp) + c003dc82: 662a ld a2,136(sp) + c003dc84: 8522 mv a0,s0 + c003dc86: fa1c90ef jal ra,c0007c26 + c003dc8a: bf85 j c003dbfa JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003dabc: 87ae mv a5,a1 - c003dabe: e3aa sd a0,448(sp) - c003dac0: e7ae sd a1,456(sp) - c003dac2: 4801 li a6,0 - c003dac4: 85aa mv a1,a0 - c003dac6: 06b00693 li a3,107 - c003daca: 8652 mv a2,s4 - c003dacc: 8522 mv a0,s0 - c003dace: d75d30ef jal ra,c0011842 - c003dad2: fa2a sd a0,304(sp) - c003dad4: fe2e sd a1,312(sp) - c003dad6: e42e sd a1,8(sp) - c003dad8: e92a sd a0,144(sp) + c003dc8c: 87ae mv a5,a1 + c003dc8e: e3aa sd a0,448(sp) + c003dc90: e7ae sd a1,456(sp) + c003dc92: 4801 li a6,0 + c003dc94: 85aa mv a1,a0 + c003dc96: 06b00693 li a3,107 + c003dc9a: 8652 mv a2,s4 + c003dc9c: 8522 mv a0,s0 + c003dc9e: c93d30ef jal ra,c0011930 + c003dca2: fa2a sd a0,304(sp) + c003dca4: fe2e sd a1,312(sp) + c003dca6: e42e sd a1,8(sp) + c003dca8: e92a sd a0,144(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48423 if (JS_IsException(next_method)) - c003dada: 0005879b sext.w a5,a1 + c003dcaa: 0005879b sext.w a5,a1 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003dade: 8bae mv s7,a1 + c003dcae: 8bae mv s7,a1 js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48415 - c003dae0: fc9786e3 beq a5,s1,c003daac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48417 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48423 + c003dcb0: fc9786e3 beq a5,s1,c003dc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48425 values = JS_NewArray(ctx); - c003dae4: 8522 mv a0,s0 - c003dae6: cd8d90ef jal ra,c0016fbe - c003daea: f52e sd a1,168(sp) - c003daec: f12a sd a0,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48418 + c003dcb4: 8522 mv a0,s0 + c003dcb6: cd8d90ef jal ra,c001718e + c003dcba: f52e sd a1,168(sp) + c003dcbc: f12a sd a0,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48426 if (JS_IsException(values)) - c003daee: 2581 sext.w a1,a1 - c003daf0: fa958ee3 beq a1,s1,c003daac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48420 + c003dcbe: 2581 sext.w a1,a1 + c003dcc0: fa958ee3 beq a1,s1,c003dc7c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48428 resolve_element_env = JS_NewArray(ctx); - c003daf4: 8522 mv a0,s0 - c003daf6: cc8d90ef jal ra,c0016fbe - c003dafa: f92a sd a0,176(sp) - c003dafc: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48421 + c003dcc4: 8522 mv a0,s0 + c003dcc6: cc8d90ef jal ra,c001718e + c003dcca: f92a sd a0,176(sp) + c003dccc: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48429 if (JS_IsException(resolve_element_env)) - c003dafe: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48420 + c003dcce: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48428 resolve_element_env = JS_NewArray(ctx); - c003db02: 892e mv s2,a1 - c003db04: 8cae mv s9,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48421 + c003dcd2: 892e mv s2,a1 + c003dcd4: 8cae mv s9,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48429 if (JS_IsException(resolve_element_env)) - c003db06: ec978ce3 beq a5,s1,c003d9de + c003dcd6: ec978ce3 beq a5,s1,c003dbae JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003db0a: e282 sd zero,320(sp) - c003db0c: 4785 li a5,1 - c003db0e: 14f12023 sw a5,320(sp) - c003db12: 6716 ld a4,320(sp) + c003dcda: e282 sd zero,320(sp) + c003dcdc: 4785 li a5,1 + c003dcde: 14f12023 sw a5,320(sp) + c003dce2: 6716 ld a4,320(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48424 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48432 if (JS_DefinePropertyValueUint32(ctx, resolve_element_env, 0, - c003db14: 85aa mv a1,a0 - c003db16: 481d li a6,7 - c003db18: 4781 li a5,0 - c003db1a: 4681 li a3,0 - c003db1c: 864a mv a2,s2 - c003db1e: 8522 mv a0,s0 + c003dce4: 85aa mv a1,a0 + c003dce6: 481d li a6,7 + c003dce8: 4781 li a5,0 + c003dcea: 4681 li a3,0 + c003dcec: 864a mv a2,s2 + c003dcee: 8522 mv a0,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003db20: e682 sd zero,328(sp) - c003db22: ea3a sd a4,272(sp) - c003db24: ee02 sd zero,280(sp) + c003dcf0: e682 sd zero,328(sp) + c003dcf2: ea3a sd a4,272(sp) + c003dcf4: ee02 sd zero,280(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48424 - c003db26: bafeb0ef jal ra,c00296d4 - c003db2a: ea054ae3 bltz a0,c003d9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48391 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48432 + c003dcf6: bafeb0ef jal ra,c00298a4 + c003dcfa: ea054ae3 bltz a0,c003dbae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48399 int index, is_zero, is_promise_any = (magic == PROMISE_MAGIC_any); - c003db2e: ffea8793 addi a5,s5,-2 - c003db32: 0017b793 seqz a5,a5 - c003db36: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 + c003dcfe: ffea8793 addi a5,s5,-2 + c003dd02: 0017b793 seqz a5,a5 + c003dd06: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48457 resolve_element_data[3] = resolving_funcs[is_promise_any]; - c003db38: 0c18 addi a4,sp,528 - c003db3a: 0792 slli a5,a5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48434 + c003dd08: 0c18 addi a4,sp,528 + c003dd0a: 0792 slli a5,a5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48442 if (JS_IsException(item)) - c003db3c: 4c19 li s8,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 + c003dd0c: 4c19 li s8,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48457 resolve_element_data[3] = resolving_funcs[is_promise_any]; - c003db3e: 00f70db3 add s11,a4,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48433 + c003dd0e: 00f70db3 add s11,a4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48441 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003db42: 66ca ld a3,144(sp) - c003db44: 75ce ld a1,240(sp) - c003db46: 00fc addi a5,sp,76 - c003db48: 875e mv a4,s7 - c003db4a: 8652 mv a2,s4 - c003db4c: 8522 mv a0,s0 - c003db4e: ed5e sd s7,152(sp) - c003db50: fdd2 sd s4,248(sp) - c003db52: de1fc0ef jal ra,c003a932 - c003db56: f4ae sd a1,104(sp) - c003db58: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48434 + c003dd12: 66ca ld a3,144(sp) + c003dd14: 75ce ld a1,240(sp) + c003dd16: 00fc addi a5,sp,76 + c003dd18: 875e mv a4,s7 + c003dd1a: 8652 mv a2,s4 + c003dd1c: 8522 mv a0,s0 + c003dd1e: ed5e sd s7,152(sp) + c003dd20: fdd2 sd s4,248(sp) + c003dd22: de1fc0ef jal ra,c003ab02 + c003dd26: f4ae sd a1,104(sp) + c003dd28: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48442 if (JS_IsException(item)) - c003db5a: 2581 sext.w a1,a1 - c003db5c: e98581e3 beq a1,s8,c003d9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48436 + c003dd2a: 2581 sext.w a1,a1 + c003dd2c: e98581e3 beq a1,s8,c003dbae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48444 if (done) - c003db60: 47b6 lw a5,76(sp) - c003db62: 18079e63 bnez a5,c003dcfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48438 + c003dd30: 47b6 lw a5,76(sp) + c003dd32: 18079e63 bnez a5,c003dece +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48446 next_promise = JS_Call(ctx, promise_resolve, - c003db66: 76c2 ld a3,48(sp) - c003db68: 758e ld a1,224(sp) - c003db6a: 4785 li a5,1 - c003db6c: 06010813 addi a6,sp,96 - c003db70: 876a mv a4,s10 - c003db72: 864e mv a2,s3 - c003db74: 8522 mv a0,s0 - c003db76: f5ce sd s3,232(sp) - c003db78: fc6a sd s10,56(sp) - c003db7a: b8dfb0ef jal ra,c0039706 - c003db7e: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48440 + c003dd36: 76c2 ld a3,48(sp) + c003dd38: 758e ld a1,224(sp) + c003dd3a: 4785 li a5,1 + c003dd3c: 06010813 addi a6,sp,96 + c003dd40: 876a mv a4,s10 + c003dd42: 864e mv a2,s3 + c003dd44: 8522 mv a0,s0 + c003dd46: f5ce sd s3,232(sp) + c003dd48: fc6a sd s10,56(sp) + c003dd4a: b8dfb0ef jal ra,c00398d6 + c003dd4e: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48448 JS_FreeValue(ctx, item); - c003db80: 7626 ld a2,104(sp) - c003db82: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48438 + c003dd50: 7626 ld a2,104(sp) + c003dd52: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48446 next_promise = JS_Call(ctx, promise_resolve, - c003db84: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48440 + c003dd54: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48448 JS_FreeValue(ctx, item); - c003db86: 8522 mv a0,s0 - c003db88: fb1c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48441 + c003dd56: 8522 mv a0,s0 + c003dd58: ecfc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 if (JS_IsException(next_promise)) { - c003db8c: 57e6 lw a5,120(sp) - c003db8e: 01879963 bne a5,s8,c003dba0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48443 + c003dd5c: 57e6 lw a5,120(sp) + c003dd5e: 01879963 bne a5,s8,c003dd70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48451 JS_IteratorClose(ctx, iter, TRUE); - c003db92: 75ce ld a1,240(sp) - c003db94: 766e ld a2,248(sp) - c003db96: 4685 li a3,1 - c003db98: 8522 mv a0,s0 - c003db9a: defd50ef jal ra,c0013988 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48444 + c003dd62: 75ce ld a1,240(sp) + c003dd64: 766e ld a2,248(sp) + c003dd66: 4685 li a3,1 + c003dd68: 8522 mv a0,s0 + c003dd6a: d0dd50ef jal ra,c0013a76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 goto fail_reject; - c003db9e: b581 j c003d9de + c003dd6e: b581 j c003dbae JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003dba0: ea82 sd zero,336(sp) - c003dba2: 15612823 sw s6,336(sp) - c003dba6: 67d6 ld a5,336(sp) - c003dba8: 4805 li a6,1 + c003dd70: ea82 sd zero,336(sp) + c003dd72: 15612823 sw s6,336(sp) + c003dd76: 67d6 ld a5,336(sp) + c003dd78: 4805 li a6,1 js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbaa: 4715 li a4,5 - c003dbac: fabe sd a5,368(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48447 + c003dd7a: 4715 li a4,5 + c003dd7c: fabe sd a5,368(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48455 resolve_element_data[1] = (JSValueConst)JS_NewInt32(ctx, index); - c003dbae: ebbe sd a5,464(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48448 + c003dd7e: ebbe sd a5,464(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48456 resolve_element_data[2] = values; - c003dbb0: 778a ld a5,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 + c003dd80: 778a ld a5,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbb2: 86d6 mv a3,s5 - c003dbb4: 4605 li a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48448 + c003dd82: 86d6 mv a3,s5 + c003dd84: 4605 li a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48456 resolve_element_data[2] = values; - c003dbb6: f3be sd a5,480(sp) - c003dbb8: 77aa ld a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 + c003dd86: f3be sd a5,480(sp) + c003dd88: 77aa ld a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbba: 00000597 auipc a1,0x0 - c003dbbe: 1c858593 addi a1,a1,456 # c003dd82 - c003dbc2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48448 + c003dd8a: 00000597 auipc a1,0x0 + c003dd8e: 1c858593 addi a1,a1,456 # c003df52 + c003dd92: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48456 resolve_element_data[2] = values; - c003dbc4: f7be sd a5,488(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 + c003dd94: f7be sd a5,488(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48457 resolve_element_data[3] = resolving_funcs[is_promise_any]; - c003dbc6: f70db783 ld a5,-144(s11) - c003dbca: f6c2 sd a6,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48446 + c003dd96: f70db783 ld a5,-144(s11) + c003dd9a: f6c2 sd a6,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48454 resolve_element_data[0] = JS_NewBool(ctx, FALSE); - c003dbcc: e7c2 sd a6,456(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 + c003dd9c: e7c2 sd a6,456(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48457 resolve_element_data[3] = resolving_funcs[is_promise_any]; - c003dbce: fbbe sd a5,496(sp) - c003dbd0: f78db783 ld a5,-136(s11) + c003dd9e: fbbe sd a5,496(sp) + c003dda0: f78db783 ld a5,-136(s11) JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c003dbd4: f282 sd zero,352(sp) + c003dda4: f282 sd zero,352(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48446 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48454 resolve_element_data[0] = JS_NewBool(ctx, FALSE); - c003dbd6: e382 sd zero,448(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48449 + c003dda6: e382 sd zero,448(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48457 resolve_element_data[3] = resolving_funcs[is_promise_any]; - c003dbd8: ffbe sd a5,504(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48450 + c003dda8: ffbe sd a5,504(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48458 resolve_element_data[4] = resolve_element_env; - c003dbda: 77ca ld a5,176(sp) + c003ddaa: 77ca ld a5,176(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003dbdc: ee82 sd zero,344(sp) - c003dbde: fe82 sd zero,376(sp) + c003ddac: ee82 sd zero,344(sp) + c003ddae: fe82 sd zero,376(sp) js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48450 - c003dbe0: 20f13023 sd a5,512(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48458 + c003ddb0: 20f13023 sd a5,512(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbe4: 039c addi a5,sp,448 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48447 + c003ddb4: 039c addi a5,sp,448 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48455 resolve_element_data[1] = (JSValueConst)JS_NewInt32(ctx, index); - c003dbe6: ef82 sd zero,472(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48450 + c003ddb6: ef82 sd zero,472(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48458 resolve_element_data[4] = resolve_element_env; - c003dbe8: fd4a sd s2,184(sp) - c003dbea: 21213423 sd s2,520(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 + c003ddb8: fd4a sd s2,184(sp) + c003ddba: 21213423 sd s2,520(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbee: e08eb0ef jal ra,c00291f6 - c003dbf2: e1aa sd a0,192(sp) - c003dbf4: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48454 + c003ddbe: e08eb0ef jal ra,c00293c6 + c003ddc2: e1aa sd a0,192(sp) + c003ddc4: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48462 if (JS_IsException(resolve_element)) { - c003dbf6: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48452 + c003ddc6: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48460 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dbfa: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48454 + c003ddca: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48462 if (JS_IsException(resolve_element)) { - c003dbfc: 4805 li a6,1 - c003dbfe: 01879863 bne a5,s8,c003dc0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48455 + c003ddcc: 4805 li a6,1 + c003ddce: 01879863 bne a5,s8,c003ddde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48463 JS_FreeValue(ctx, next_promise); - c003dc02: 75c6 ld a1,112(sp) - c003dc04: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48480 + c003ddd2: 75c6 ld a1,112(sp) + c003ddd4: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48488 JS_FreeValue(ctx, reject_element); - c003dc06: 8522 mv a0,s0 - c003dc08: f31c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48481 + c003ddd6: 8522 mv a0,s0 + c003ddd8: e4fc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48489 goto fail_reject1; - c003dc0c: b759 j c003db92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48459 + c003dddc: b759 j c003dd62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48467 if (magic == PROMISE_MAGIC_allSettled) { - c003dc0e: 050a9c63 bne s5,a6,c003dc66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48461 + c003ddde: 050a9c63 bne s5,a6,c003de36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48469 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dc12: 039c addi a5,sp,448 - c003dc14: 4715 li a4,5 - c003dc16: 4695 li a3,5 - c003dc18: 4605 li a2,1 - c003dc1a: 00000597 auipc a1,0x0 - c003dc1e: 16858593 addi a1,a1,360 # c003dd82 - c003dc22: 8522 mv a0,s0 - c003dc24: dd2eb0ef jal ra,c00291f6 - c003dc28: e9aa sd a0,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48463 + c003dde2: 039c addi a5,sp,448 + c003dde4: 4715 li a4,5 + c003dde6: 4695 li a3,5 + c003dde8: 4605 li a2,1 + c003ddea: 00000597 auipc a1,0x0 + c003ddee: 16858593 addi a1,a1,360 # c003df52 + c003ddf2: 8522 mv a0,s0 + c003ddf4: dd2eb0ef jal ra,c00293c6 + c003ddf8: e9aa sd a0,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48471 if (JS_IsException(reject_element)) { - c003dc2a: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48461 + c003ddfa: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48469 JS_NewCFunctionData(ctx, js_promise_all_resolve_element, 1, - c003dc2e: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48463 + c003ddfe: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48471 if (JS_IsException(reject_element)) { - c003dc30: fd8709e3 beq a4,s8,c003dc02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48477 + c003de00: fd8709e3 beq a4,s8,c003ddd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48485 if (remainingElementsCount_add(ctx, resolve_element_env, 1) < 0) { - c003dc34: 75ca ld a1,176(sp) - c003dc36: 766a ld a2,184(sp) - c003dc38: 4685 li a3,1 - c003dc3a: 8522 mv a0,s0 - c003dc3c: f43e sd a5,40(sp) - c003dc3e: a41f30ef jal ra,c003167e - c003dc42: 77a2 ld a5,40(sp) - c003dc44: 06055363 bgez a0,c003dcaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48478 + c003de04: 75ca ld a1,176(sp) + c003de06: 766a ld a2,184(sp) + c003de08: 4685 li a3,1 + c003de0a: 8522 mv a0,s0 + c003de0c: f43e sd a5,40(sp) + c003de0e: a41f30ef jal ra,c003184e + c003de12: 77a2 ld a5,40(sp) + c003de14: 06055363 bgez a0,c003de7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 JS_FreeValue(ctx, next_promise); - c003dc48: 75c6 ld a1,112(sp) - c003dc4a: 7666 ld a2,120(sp) - c003dc4c: 8522 mv a0,s0 - c003dc4e: ec3e sd a5,24(sp) - c003dc50: ee9c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48479 + c003de18: 75c6 ld a1,112(sp) + c003de1a: 7666 ld a2,120(sp) + c003de1c: 8522 mv a0,s0 + c003de1e: ec3e sd a5,24(sp) + c003de20: e07c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48487 JS_FreeValue(ctx, resolve_element); - c003dc54: 658e ld a1,192(sp) - c003dc56: 8626 mv a2,s1 - c003dc58: 8522 mv a0,s0 - c003dc5a: edfc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48480 + c003de24: 658e ld a1,192(sp) + c003de26: 8626 mv a2,s1 + c003de28: 8522 mv a0,s0 + c003de2a: dfdc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48488 JS_FreeValue(ctx, reject_element); - c003dc5e: 67e2 ld a5,24(sp) - c003dc60: 65ce ld a1,208(sp) - c003dc62: 863e mv a2,a5 - c003dc64: b74d j c003dc06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48467 + c003de2e: 67e2 ld a5,24(sp) + c003de30: 65ce ld a1,208(sp) + c003de32: 863e mv a2,a5 + c003de34: b74d j c003ddd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48475 } else if (magic == PROMISE_MAGIC_any) { - c003dc66: 4789 li a5,2 - c003dc68: 02fa9a63 bne s5,a5,c003dc9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48468 + c003de36: 4789 li a5,2 + c003de38: 02fa9a63 bne s5,a5,c003de6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48476 if (JS_DefinePropertyValueUint32(ctx, values, index, - c003dc6c: 758a ld a1,160(sp) - c003dc6e: 762a ld a2,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48469 + c003de3c: 758a ld a1,160(sp) + c003de3e: 762a ld a2,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48477 JS_UNDEFINED, JS_PROP_C_W_E) < 0) - c003dc70: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48468 + c003de40: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48476 if (JS_DefinePropertyValueUint32(ctx, values, index, - c003dc72: 481d li a6,7 - c003dc74: 4701 li a4,0 - c003dc76: 000b069b sext.w a3,s6 - c003dc7a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48469 + c003de42: 481d li a6,7 + c003de44: 4701 li a4,0 + c003de46: 000b069b sext.w a3,s6 + c003de4a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48477 JS_UNDEFINED, JS_PROP_C_W_E) < 0) - c003dc7c: fa82 sd zero,368(sp) - c003dc7e: febe sd a5,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48468 + c003de4c: fa82 sd zero,368(sp) + c003de4e: febe sd a5,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48476 if (JS_DefinePropertyValueUint32(ctx, values, index, - c003dc80: a55eb0ef jal ra,c00296d4 - c003dc84: f00547e3 bltz a0,c003db92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48471 + c003de50: a55eb0ef jal ra,c00298a4 + c003de54: f00547e3 bltz a0,c003dd62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48479 reject_element = resolve_element; - c003dc88: 678e ld a5,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48472 + c003de58: 678e ld a5,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48480 resolve_element = JS_DupValue(ctx, resolving_funcs[0]); - c003dc8a: 651a ld a0,384(sp) - c003dc8c: 65ba ld a1,392(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48471 + c003de5a: 651a ld a0,384(sp) + c003de5c: 65ba ld a1,392(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48479 reject_element = resolve_element; - c003dc8e: e9be sd a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48472 + c003de5e: e9be sd a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48480 resolve_element = JS_DupValue(ctx, resolving_funcs[0]); - c003dc90: 9dfc80ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48471 + c003de60: 8fdc80ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48479 reject_element = resolve_element; - c003dc94: 87a6 mv a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48472 + c003de64: 87a6 mv a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48480 resolve_element = JS_DupValue(ctx, resolving_funcs[0]); - c003dc96: e1aa sd a0,192(sp) - c003dc98: 84ae mv s1,a1 - c003dc9a: bf69 j c003dc34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48474 + c003de66: e1aa sd a0,192(sp) + c003de68: 84ae mv s1,a1 + c003de6a: bf69 j c003de04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48482 reject_element = JS_DupValue(ctx, resolving_funcs[1]); - c003dc9c: 655a ld a0,400(sp) - c003dc9e: 65fa ld a1,408(sp) - c003dca0: 9cfc80ef jal ra,c000666e - c003dca4: e9aa sd a0,208(sp) - c003dca6: 87ae mv a5,a1 - c003dca8: b771 j c003dc34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48484 + c003de6c: 655a ld a0,400(sp) + c003de6e: 65fa ld a1,408(sp) + c003de70: 8edc80ef jal ra,c000675c + c003de74: e9aa sd a0,208(sp) + c003de76: 87ae mv a5,a1 + c003de78: b771 j c003de04 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48492 then_args[0] = resolve_element; - c003dcaa: 670e ld a4,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003de7a: 670e ld a4,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcac: 7666 ld a2,120(sp) - c003dcae: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48484 + c003de7c: 7666 ld a2,120(sp) + c003de7e: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48492 then_args[0] = resolve_element; - c003dcb0: f33a sd a4,416(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48485 + c003de80: f33a sd a4,416(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48493 then_args[1] = reject_element; - c003dcb2: 674e ld a4,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003de82: 674e ld a4,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcb4: 08000693 li a3,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48485 + c003de84: 08000693 li a3,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48493 then_args[1] = reject_element; - c003dcb8: edbe sd a5,216(sp) - c003dcba: fb3a sd a4,432(sp) - c003dcbc: ff3e sd a5,440(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003de88: edbe sd a5,216(sp) + c003de8a: fb3a sd a4,432(sp) + c003de8c: ff3e sd a5,440(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcbe: 4709 li a4,2 - c003dcc0: 131c addi a5,sp,416 - c003dcc2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48484 + c003de8e: 4709 li a4,2 + c003de90: 131c addi a5,sp,416 + c003de92: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48492 then_args[0] = resolve_element; - c003dcc4: e5a6 sd s1,200(sp) - c003dcc6: f726 sd s1,424(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003de94: e5a6 sd s1,200(sp) + c003de96: f726 sd s1,424(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcc8: e8cf80ef jal ra,c0036354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48487 + c003de98: e8cf80ef jal ra,c0036524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48495 JS_FreeValue(ctx, resolve_element); - c003dccc: 662e ld a2,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003de9c: 662e ld a2,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcce: 84ae mv s1,a1 - c003dcd0: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48487 + c003de9e: 84ae mv s1,a1 + c003dea0: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48495 JS_FreeValue(ctx, resolve_element); - c003dcd2: 658e ld a1,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48486 + c003dea2: 658e ld a1,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 ret = JS_InvokeFree(ctx, next_promise, JS_ATOM_then, 2, then_args); - c003dcd4: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48487 + c003dea4: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48495 JS_FreeValue(ctx, resolve_element); - c003dcd6: 8522 mv a0,s0 - c003dcd8: e61c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48488 + c003dea6: 8522 mv a0,s0 + c003dea8: d7fc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48496 JS_FreeValue(ctx, reject_element); - c003dcdc: 65ce ld a1,208(sp) - c003dcde: 666e ld a2,216(sp) - c003dce0: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48489 + c003deac: 65ce ld a1,208(sp) + c003deae: 666e ld a2,216(sp) + c003deb0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48497 if (check_exception_free(ctx, ret)) - c003dce2: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48488 + c003deb2: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48496 JS_FreeValue(ctx, reject_element); - c003dce4: e55c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48489 + c003deb4: d73c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48497 if (check_exception_free(ctx, ret)) - c003dce8: 658a ld a1,128(sp) - c003dcea: 662a ld a2,136(sp) + c003deb8: 658a ld a1,128(sp) + c003deba: 662a ld a2,136(sp) check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003dcec: 8522 mv a0,s0 - c003dcee: faae sd a1,368(sp) - c003dcf0: feb2 sd a2,376(sp) - c003dcf2: e47c90ef jal ra,c0007b38 + c003debc: 8522 mv a0,s0 + c003debe: faae sd a1,368(sp) + c003dec0: feb2 sd a2,376(sp) + c003dec2: d65c90ef jal ra,c0007c26 js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48489 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48497 if (check_exception_free(ctx, ret)) - c003dcf6: e9848ee3 beq s1,s8,c003db92 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48491 + c003dec6: e9848ee3 beq s1,s8,c003dd62 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48499 index++; - c003dcfa: 2b05 addiw s6,s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48433 + c003deca: 2b05 addiw s6,s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48441 item = JS_IteratorNext(ctx, iter, next_method, 0, NULL, &done); - c003dcfc: b599 j c003db42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48494 + c003decc: b599 j c003dd12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48502 is_zero = remainingElementsCount_add(ctx, resolve_element_env, -1); - c003dcfe: 75ca ld a1,176(sp) - c003dd00: 56fd li a3,-1 - c003dd02: 864a mv a2,s2 - c003dd04: 8522 mv a0,s0 - c003dd06: fd4a sd s2,184(sp) - c003dd08: 977f30ef jal ra,c003167e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48495 + c003dece: 75ca ld a1,176(sp) + c003ded0: 56fd li a3,-1 + c003ded2: 864a mv a2,s2 + c003ded4: 8522 mv a0,s0 + c003ded6: fd4a sd s2,184(sp) + c003ded8: 977f30ef jal ra,c003184e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48503 if (is_zero < 0) - c003dd0c: cc0549e3 bltz a0,c003d9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48497 + c003dedc: cc0549e3 bltz a0,c003dbae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48505 if (is_zero) { - c003dd10: d0050de3 beqz a0,c003da2a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48498 + c003dee0: d0050de3 beqz a0,c003dbfa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48506 if (magic == PROMISE_MAGIC_any) { - c003dd14: 4789 li a5,2 - c003dd16: 02fa9563 bne s5,a5,c003dd40 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48500 + c003dee4: 4789 li a5,2 + c003dee6: 02fa9563 bne s5,a5,c003df10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48508 error = js_aggregate_error_constructor(ctx, values); - c003dd1a: 758a ld a1,160(sp) - c003dd1c: 762a ld a2,168(sp) - c003dd1e: 8522 mv a0,s0 - c003dd20: 9d2ec0ef jal ra,c0029ef2 - c003dd24: feae sd a1,376(sp) - c003dd26: faaa sd a0,368(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48501 + c003deea: 758a ld a1,160(sp) + c003deec: 762a ld a2,168(sp) + c003deee: 8522 mv a0,s0 + c003def0: 9d2ec0ef jal ra,c002a0c2 + c003def4: feae sd a1,376(sp) + c003def6: faaa sd a0,368(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48509 if (JS_IsException(error)) - c003dd28: 2581 sext.w a1,a1 - c003dd2a: cb858ae3 beq a1,s8,c003d9de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48503 + c003def8: 2581 sext.w a1,a1 + c003defa: cb858ae3 beq a1,s8,c003dbae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48511 JS_FreeValue(ctx, values); - c003dd2e: 758a ld a1,160(sp) - c003dd30: 762a ld a2,168(sp) - c003dd32: 8522 mv a0,s0 - c003dd34: e05c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48504 + c003defe: 758a ld a1,160(sp) + c003df00: 762a ld a2,168(sp) + c003df02: 8522 mv a0,s0 + c003df04: d23c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48512 values = error; - c003dd38: 77d6 ld a5,368(sp) - c003dd3a: f13e sd a5,160(sp) - c003dd3c: 77f6 ld a5,376(sp) - c003dd3e: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48506 + c003df08: 77d6 ld a5,368(sp) + c003df0a: f13e sd a5,160(sp) + c003df0c: 77f6 ld a5,376(sp) + c003df0e: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48514 ret = JS_Call(ctx, resolving_funcs[is_promise_any], JS_UNDEFINED, - c003dd40: 478d li a5,3 - c003dd42: e63e sd a5,264(sp) - c003dd44: 67e2 ld a5,24(sp) - c003dd46: 0a010813 addi a6,sp,160 - c003dd4a: 4681 li a3,0 - c003dd4c: 00479613 slli a2,a5,0x4 - c003dd50: 0c1c addi a5,sp,528 - c003dd52: 963e add a2,a2,a5 - c003dd54: f7063583 ld a1,-144(a2) - c003dd58: f7863603 ld a2,-136(a2) - c003dd5c: 4785 li a5,1 - c003dd5e: 470d li a4,3 - c003dd60: 8522 mv a0,s0 - c003dd62: e202 sd zero,256(sp) - c003dd64: 9a3fb0ef jal ra,c0039706 - c003dd68: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48508 + c003df10: 478d li a5,3 + c003df12: e63e sd a5,264(sp) + c003df14: 67e2 ld a5,24(sp) + c003df16: 0a010813 addi a6,sp,160 + c003df1a: 4681 li a3,0 + c003df1c: 00479613 slli a2,a5,0x4 + c003df20: 0c1c addi a5,sp,528 + c003df22: 963e add a2,a2,a5 + c003df24: f7063583 ld a1,-144(a2) + c003df28: f7863603 ld a2,-136(a2) + c003df2c: 4785 li a5,1 + c003df2e: 470d li a4,3 + c003df30: 8522 mv a0,s0 + c003df32: e202 sd zero,256(sp) + c003df34: 9a3fb0ef jal ra,c00398d6 + c003df38: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48516 if (check_exception_free(ctx, ret)) - c003dd6a: faaa sd a0,368(sp) - c003dd6c: feae sd a1,376(sp) + c003df3a: faaa sd a0,368(sp) + c003df3c: feae sd a1,376(sp) check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003dd6e: 8626 mv a2,s1 - c003dd70: 85aa mv a1,a0 - c003dd72: 8522 mv a0,s0 - c003dd74: dc5c90ef jal ra,c0007b38 + c003df3e: 8626 mv a2,s1 + c003df40: 85aa mv a1,a0 + c003df42: 8522 mv a0,s0 + c003df44: ce3c90ef jal ra,c0007c26 js_promise_all(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48508 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48516 if (check_exception_free(ctx, ret)) - c003dd78: 2481 sext.w s1,s1 - c003dd7a: 4799 li a5,6 - c003dd7c: caf497e3 bne s1,a5,c003da2a - c003dd80: b9b9 j c003d9de + c003df48: 2481 sext.w s1,s1 + c003df4a: 4799 li a5,6 + c003df4c: caf497e3 bne s1,a5,c003dbfa + c003df50: b9b9 j c003dbae -00000000c003dd82 : +00000000c003df52 : js_promise_all_resolve_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48316 -{ - c003dd82: 7151 addi sp,sp,-240 - c003dd84: f1a2 sd s0,224(sp) - c003dd86: eda6 sd s1,216(sp) - c003dd88: e9ca sd s2,208(sp) - c003dd8a: e5ce sd s3,200(sp) - c003dd8c: e1d2 sd s4,192(sp) - c003dd8e: f586 sd ra,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48319 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48324 +{ + c003df52: 7151 addi sp,sp,-240 + c003df54: f1a2 sd s0,224(sp) + c003df56: eda6 sd s1,216(sp) + c003df58: e9ca sd s2,208(sp) + c003df5a: e5ce sd s3,200(sp) + c003df5c: e1d2 sd s4,192(sp) + c003df5e: f586 sd ra,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48327 BOOL alreadyCalled = JS_ToBool(ctx, func_data[0]); - c003dd90: 00083583 ld a1,0(a6) - c003dd94: 00883603 ld a2,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48316 -{ - c003dd98: 84c2 mv s1,a6 - c003dd9a: 842a mv s0,a0 - c003dd9c: 8a3e mv s4,a5 - c003dd9e: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48319 + c003df60: 00083583 ld a1,0(a6) + c003df64: 00883603 ld a2,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48324 +{ + c003df68: 84c2 mv s1,a6 + c003df6a: 842a mv s0,a0 + c003df6c: 8a3e mv s4,a5 + c003df6e: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48327 BOOL alreadyCalled = JS_ToBool(ctx, func_data[0]); - c003dda0: 888cd0ef jal ra,c000ae28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48320 + c003df70: fa7cc0ef jal ra,c000af16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48328 JSValueConst values = func_data[2]; - c003dda4: 709c ld a5,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48326 + c003df74: 709c ld a5,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48334 if (JS_ToInt32(ctx, &index, func_data[1])) - c003dda6: 6890 ld a2,16(s1) - c003dda8: 6c94 ld a3,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48320 + c003df76: 6890 ld a2,16(s1) + c003df78: 6c94 ld a3,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48328 JSValueConst values = func_data[2]; - c003ddaa: f83e sd a5,48(sp) - c003ddac: 749c ld a5,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48319 + c003df7a: f83e sd a5,48(sp) + c003df7c: 749c ld a5,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48327 BOOL alreadyCalled = JS_ToBool(ctx, func_data[0]); - c003ddae: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48326 + c003df7e: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48334 if (JS_ToInt32(ctx, &index, func_data[1])) - c003ddb0: 106c addi a1,sp,44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48320 + c003df80: 106c addi a1,sp,44 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48328 JSValueConst values = func_data[2]; - c003ddb2: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48321 + c003df82: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48329 JSValueConst resolve = func_data[3]; - c003ddb4: 789c ld a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48326 + c003df84: 789c ld a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48334 if (JS_ToInt32(ctx, &index, func_data[1])) - c003ddb6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48321 + c003df86: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48329 JSValueConst resolve = func_data[3]; - c003ddb8: e0be sd a5,64(sp) - c003ddba: 7c9c ld a5,56(s1) - c003ddbc: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48322 + c003df88: e0be sd a5,64(sp) + c003df8a: 7c9c ld a5,56(s1) + c003df8c: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48330 JSValueConst resolve_element_env = func_data[4]; - c003ddbe: 60bc ld a5,64(s1) - c003ddc0: e8be sd a5,80(sp) - c003ddc2: 64bc ld a5,72(s1) - c003ddc4: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48326 + c003df8e: 60bc ld a5,64(s1) + c003df90: e8be sd a5,80(sp) + c003df92: 64bc ld a5,72(s1) + c003df94: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48334 if (JS_ToInt32(ctx, &index, func_data[1])) - c003ddc6: da8de0ef jal ra,c001c36e - c003ddca: c501 beqz a0,c003ddd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48351 + c003df96: da8de0ef jal ra,c001c53e + c003df9a: c501 beqz a0,c003dfa2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48359 return JS_EXCEPTION; - c003ddcc: e902 sd zero,144(sp) - c003ddce: 4799 li a5,6 - c003ddd0: a029 j c003ddda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48328 + c003df9c: e902 sd zero,144(sp) + c003df9e: 4799 li a5,6 + c003dfa0: a029 j c003dfaa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48336 if (alreadyCalled) - c003ddd2: 00098f63 beqz s3,c003ddf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48329 + c003dfa2: 00098f63 beqz s3,c003dfc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48337 return JS_UNDEFINED; - c003ddd6: e902 sd zero,144(sp) - c003ddd8: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48351 + c003dfa6: e902 sd zero,144(sp) + c003dfa8: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48359 return JS_EXCEPTION; - c003ddda: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48379 (discriminator 11) -} - c003dddc: 70ae ld ra,232(sp) - c003ddde: 740e ld s0,224(sp) - c003dde0: 654a ld a0,144(sp) - c003dde2: 65ea ld a1,152(sp) - c003dde4: 64ee ld s1,216(sp) - c003dde6: 694e ld s2,208(sp) - c003dde8: 69ae ld s3,200(sp) - c003ddea: 6a0e ld s4,192(sp) - c003ddec: 616d addi sp,sp,240 - c003ddee: 8082 ret + c003dfaa: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48387 (discriminator 11) +} + c003dfac: 70ae ld ra,232(sp) + c003dfae: 740e ld s0,224(sp) + c003dfb0: 654a ld a0,144(sp) + c003dfb2: 65ea ld a1,152(sp) + c003dfb4: 64ee ld s1,216(sp) + c003dfb6: 694e ld s2,208(sp) + c003dfb8: 69ae ld s3,200(sp) + c003dfba: 6a0e ld s4,192(sp) + c003dfbc: 616d addi sp,sp,240 + c003dfbe: 8082 ret JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c003ddf0: 4705 li a4,1 + c003dfc0: 4705 li a4,1 js_promise_all_resolve_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48317 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48325 int resolve_type = magic & 3; - c003ddf2: 003a7993 andi s3,s4,3 + c003dfc2: 003a7993 andi s3,s4,3 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c003ddf6: f13a sd a4,160(sp) - c003ddf8: f53a sd a4,168(sp) + c003dfc6: f13a sd a4,160(sp) + c003dfc8: f53a sd a4,168(sp) js_promise_all_resolve_element(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48338 func_data[0] = JS_NewBool(ctx, TRUE); - c003ddfa: e098 sd a4,0(s1) - c003ddfc: e498 sd a4,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48332 + c003dfca: e098 sd a4,0(s1) + c003dfcc: e498 sd a4,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48340 if (resolve_type == PROMISE_MAGIC_allSettled) { - c003ddfe: 12e99063 bne s3,a4,c003df1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48335 + c003dfce: 12e99063 bne s3,a4,c003e0ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48343 obj = JS_NewObject(ctx); - c003de02: 8522 mv a0,s0 - c003de04: f85d80ef jal ra,c0016d88 - c003de08: fcae sd a1,120(sp) - c003de0a: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48336 + c003dfd2: 8522 mv a0,s0 + c003dfd4: f85d80ef jal ra,c0016f58 + c003dfd8: fcae sd a1,120(sp) + c003dfda: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48344 if (JS_IsException(obj)) - c003de0c: 2581 sext.w a1,a1 - c003de0e: 4799 li a5,6 - c003de10: 00f59563 bne a1,a5,c003de1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48337 + c003dfdc: 2581 sext.w a1,a1 + c003dfde: 4799 li a5,6 + c003dfe0: 00f59563 bne a1,a5,c003dfea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48345 return JS_EXCEPTION; - c003de14: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48368 + c003dfe4: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48376 return JS_EXCEPTION; - c003de16: ed2e sd a1,152(sp) - c003de18: b7d1 j c003dddc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48318 + c003dfe6: ed2e sd a1,152(sp) + c003dfe8: b7d1 j c003dfac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48326 int is_reject = magic & 4; - c003de1a: 004a7a13 andi s4,s4,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48338 + c003dfea: 004a7a13 andi s4,s4,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48346 str = JS_NewString(ctx, is_reject ? "rejected" : "fulfilled"); - c003de1e: 00023597 auipc a1,0x23 - c003de22: d1a58593 addi a1,a1,-742 # c0060b38 - c003de26: 000a1663 bnez s4,c003de32 - c003de2a: 00023597 auipc a1,0x23 - c003de2e: d1e58593 addi a1,a1,-738 # c0060b48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48338 (discriminator 4) - c003de32: 8522 mv a0,s0 - c003de34: befdb0ef jal ra,c0019a22 - c003de38: e12a sd a0,128(sp) - c003de3a: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48339 (discriminator 4) + c003dfee: 00023597 auipc a1,0x23 + c003dff2: daa58593 addi a1,a1,-598 # c0060d98 + c003dff6: 000a1663 bnez s4,c003e002 + c003dffa: 00023597 auipc a1,0x23 + c003dffe: dae58593 addi a1,a1,-594 # c0060da8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48346 (discriminator 4) + c003e002: 8522 mv a0,s0 + c003e004: befdb0ef jal ra,c0019bf2 + c003e008: e12a sd a0,128(sp) + c003e00a: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48347 (discriminator 4) if (JS_IsException(str)) - c003de3c: 0005861b sext.w a2,a1 - c003de40: 4699 li a3,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48338 (discriminator 4) + c003e00c: 0005861b sext.w a2,a1 + c003e010: 4699 li a3,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48346 (discriminator 4) str = JS_NewString(ctx, is_reject ? "rejected" : "fulfilled"); - c003de42: 872a mv a4,a0 - c003de44: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48339 (discriminator 4) + c003e012: 872a mv a4,a0 + c003e014: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48347 (discriminator 4) if (JS_IsException(str)) - c003de46: 00d61863 bne a2,a3,c003de56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48350 + c003e016: 00d61863 bne a2,a3,c003e026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48358 JS_FreeValue(ctx, obj); - c003de4a: 75c6 ld a1,112(sp) - c003de4c: 7666 ld a2,120(sp) - c003de4e: 8522 mv a0,s0 - c003de50: ce9c90ef jal ra,c0007b38 - c003de54: bfa5 j c003ddcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48341 + c003e01a: 75c6 ld a1,112(sp) + c003e01c: 7666 ld a2,120(sp) + c003e01e: 8522 mv a0,s0 + c003e020: c07c90ef jal ra,c0007c26 + c003e024: bfa5 j c003df9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48349 if (JS_DefinePropertyValue(ctx, obj, JS_ATOM_status, - c003de56: 75c6 ld a1,112(sp) - c003de58: 7666 ld a2,120(sp) - c003de5a: 481d li a6,7 - c003de5c: 08a00693 li a3,138 - c003de60: 8522 mv a0,s0 - c003de62: 954d50ef jal ra,c0012fb6 - c003de66: fe0542e3 bltz a0,c003de4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48345 + c003e026: 75c6 ld a1,112(sp) + c003e028: 7666 ld a2,120(sp) + c003e02a: 481d li a6,7 + c003e02c: 08a00693 li a3,138 + c003e030: 8522 mv a0,s0 + c003e032: 872d50ef jal ra,c00130a4 + c003e036: fe0542e3 bltz a0,c003e01a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48353 if (JS_DefinePropertyValue(ctx, obj, - c003de6a: 08b00693 li a3,139 - c003de6e: 000a1463 bnez s4,c003de76 - c003de72: 04100693 li a3,65 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48345 (discriminator 4) - c003de76: 00093503 ld a0,0(s2) - c003de7a: 00893583 ld a1,8(s2) - c003de7e: e436 sd a3,8(sp) - c003de80: feec80ef jal ra,c000666e - c003de84: 87ae mv a5,a1 - c003de86: f52e sd a1,168(sp) - c003de88: 66a2 ld a3,8(sp) - c003de8a: 75c6 ld a1,112(sp) - c003de8c: 7666 ld a2,120(sp) - c003de8e: 872a mv a4,a0 - c003de90: f12a sd a0,160(sp) - c003de92: 481d li a6,7 - c003de94: 8522 mv a0,s0 - c003de96: 920d50ef jal ra,c0012fb6 - c003de9a: fa0548e3 bltz a0,c003de4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48356 + c003e03a: 08b00693 li a3,139 + c003e03e: 000a1463 bnez s4,c003e046 + c003e042: 04100693 li a3,65 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48353 (discriminator 4) + c003e046: 00093503 ld a0,0(s2) + c003e04a: 00893583 ld a1,8(s2) + c003e04e: e436 sd a3,8(sp) + c003e050: f0cc80ef jal ra,c000675c + c003e054: 87ae mv a5,a1 + c003e056: f52e sd a1,168(sp) + c003e058: 66a2 ld a3,8(sp) + c003e05a: 75c6 ld a1,112(sp) + c003e05c: 7666 ld a2,120(sp) + c003e05e: 872a mv a4,a0 + c003e060: f12a sd a0,160(sp) + c003e062: 481d li a6,7 + c003e064: 8522 mv a0,s0 + c003e066: 83ed50ef jal ra,c00130a4 + c003e06a: fa0548e3 bltz a0,c003e01a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48364 if (JS_DefinePropertyValueUint32(ctx, values, index, - c003de9e: 7746 ld a4,112(sp) - c003dea0: 77e6 ld a5,120(sp) - c003dea2: 56b2 lw a3,44(sp) - c003dea4: 75c2 ld a1,48(sp) - c003dea6: 7662 ld a2,56(sp) - c003dea8: 481d li a6,7 - c003deaa: 8522 mv a0,s0 - c003deac: 829eb0ef jal ra,c00296d4 - c003deb0: f0054ee3 bltz a0,c003ddcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48360 + c003e06e: 7746 ld a4,112(sp) + c003e070: 77e6 ld a5,120(sp) + c003e072: 56b2 lw a3,44(sp) + c003e074: 75c2 ld a1,48(sp) + c003e076: 7662 ld a2,56(sp) + c003e078: 481d li a6,7 + c003e07a: 8522 mv a0,s0 + c003e07c: 829eb0ef jal ra,c00298a4 + c003e080: f0054ee3 bltz a0,c003df9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48368 is_zero = remainingElementsCount_add(ctx, resolve_element_env, -1); - c003deb4: 65c6 ld a1,80(sp) - c003deb6: 6666 ld a2,88(sp) - c003deb8: 56fd li a3,-1 - c003deba: 8522 mv a0,s0 - c003debc: fc2f30ef jal ra,c003167e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48361 + c003e084: 65c6 ld a1,80(sp) + c003e086: 6666 ld a2,88(sp) + c003e088: 56fd li a3,-1 + c003e08a: 8522 mv a0,s0 + c003e08c: fc2f30ef jal ra,c003184e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48369 if (is_zero < 0) - c003dec0: f00546e3 bltz a0,c003ddcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48363 + c003e090: f00546e3 bltz a0,c003df9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48371 if (is_zero) { - c003dec4: f00509e3 beqz a0,c003ddd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48364 + c003e094: f00509e3 beqz a0,c003dfa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48372 if (resolve_type == PROMISE_MAGIC_any) { - c003dec8: 4789 li a5,2 - c003deca: 06f99363 bne s3,a5,c003df30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48366 + c003e098: 4789 li a5,2 + c003e09a: 06f99363 bne s3,a5,c003e100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48374 error = js_aggregate_error_constructor(ctx, values); - c003dece: 75c2 ld a1,48(sp) - c003ded0: 7662 ld a2,56(sp) - c003ded2: 8522 mv a0,s0 - c003ded4: 81eec0ef jal ra,c0029ef2 - c003ded8: e52e sd a1,136(sp) - c003deda: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48367 + c003e09e: 75c2 ld a1,48(sp) + c003e0a0: 7662 ld a2,56(sp) + c003e0a2: 8522 mv a0,s0 + c003e0a4: 81eec0ef jal ra,c002a0c2 + c003e0a8: e52e sd a1,136(sp) + c003e0aa: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48375 if (JS_IsException(error)) - c003dedc: 2581 sext.w a1,a1 - c003dede: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48368 + c003e0ac: 2581 sext.w a1,a1 + c003e0ae: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48376 return JS_EXCEPTION; - c003dee0: e902 sd zero,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48367 + c003e0b0: e902 sd zero,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48375 if (JS_IsException(error)) - c003dee2: f2f58ae3 beq a1,a5,c003de16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48369 + c003e0b2: f2f58ae3 beq a1,a5,c003dfe6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48377 ret = JS_Call(ctx, resolve, JS_UNDEFINED, 1, (JSValueConst *)&error); - c003dee6: 6626 ld a2,72(sp) - c003dee8: 6586 ld a1,64(sp) - c003deea: 478d li a5,3 - c003deec: ed3e sd a5,152(sp) - c003deee: 08010813 addi a6,sp,128 - c003def2: 4785 li a5,1 - c003def4: 4681 li a3,0 - c003def6: 470d li a4,3 - c003def8: 8522 mv a0,s0 - c003defa: 80dfb0ef jal ra,c0039706 - c003defe: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48370 + c003e0b6: 6626 ld a2,72(sp) + c003e0b8: 6586 ld a1,64(sp) + c003e0ba: 478d li a5,3 + c003e0bc: ed3e sd a5,152(sp) + c003e0be: 08010813 addi a6,sp,128 + c003e0c2: 4785 li a5,1 + c003e0c4: 4681 li a3,0 + c003e0c6: 470d li a4,3 + c003e0c8: 8522 mv a0,s0 + c003e0ca: 80dfb0ef jal ra,c00398d6 + c003e0ce: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48378 JS_FreeValue(ctx, error); - c003df00: 662a ld a2,136(sp) - c003df02: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48369 + c003e0d0: 662a ld a2,136(sp) + c003e0d2: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48377 ret = JS_Call(ctx, resolve, JS_UNDEFINED, 1, (JSValueConst *)&error); - c003df04: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48370 + c003e0d4: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48378 JS_FreeValue(ctx, error); - c003df06: 8522 mv a0,s0 - c003df08: c31c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48374 + c003e0d6: 8522 mv a0,s0 + c003e0d8: b4fc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48382 if (JS_IsException(ret)) - c003df0c: 0004879b sext.w a5,s1 - c003df10: 4719 li a4,6 - c003df12: 02e79f63 bne a5,a4,c003df50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48375 + c003e0dc: 0004879b sext.w a5,s1 + c003e0e0: 4719 li a4,6 + c003e0e2: 02e79f63 bne a5,a4,c003e120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48383 return ret; - c003df16: 7786 ld a5,96(sp) - c003df18: ed26 sd s1,152(sp) - c003df1a: e93e sd a5,144(sp) - c003df1c: b5c1 j c003dddc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48354 + c003e0e6: 7786 ld a5,96(sp) + c003e0e8: ed26 sd s1,152(sp) + c003e0ea: e93e sd a5,144(sp) + c003e0ec: b5c1 j c003dfac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48362 obj = JS_DupValue(ctx, argv[0]); - c003df1e: 00093503 ld a0,0(s2) - c003df22: 00893583 ld a1,8(s2) - c003df26: f48c80ef jal ra,c000666e - c003df2a: f8aa sd a0,112(sp) - c003df2c: fcae sd a1,120(sp) - c003df2e: bf85 j c003de9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48372 + c003e0ee: 00093503 ld a0,0(s2) + c003e0f2: 00893583 ld a1,8(s2) + c003e0f6: e66c80ef jal ra,c000675c + c003e0fa: f8aa sd a0,112(sp) + c003e0fc: fcae sd a1,120(sp) + c003e0fe: bf85 j c003e06e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48380 ret = JS_Call(ctx, resolve, JS_UNDEFINED, 1, (JSValueConst *)&values); - c003df30: 6586 ld a1,64(sp) - c003df32: 6626 ld a2,72(sp) - c003df34: 478d li a5,3 - c003df36: ed3e sd a5,152(sp) - c003df38: 03010813 addi a6,sp,48 - c003df3c: 4785 li a5,1 - c003df3e: 4681 li a3,0 - c003df40: 470d li a4,3 - c003df42: 8522 mv a0,s0 - c003df44: e902 sd zero,144(sp) - c003df46: fc0fb0ef jal ra,c0039706 - c003df4a: f0aa sd a0,96(sp) - c003df4c: 84ae mv s1,a1 - c003df4e: bf7d j c003df0c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48376 + c003e100: 6586 ld a1,64(sp) + c003e102: 6626 ld a2,72(sp) + c003e104: 478d li a5,3 + c003e106: ed3e sd a5,152(sp) + c003e108: 03010813 addi a6,sp,48 + c003e10c: 4785 li a5,1 + c003e10e: 4681 li a3,0 + c003e110: 470d li a4,3 + c003e112: 8522 mv a0,s0 + c003e114: e902 sd zero,144(sp) + c003e116: fc0fb0ef jal ra,c00398d6 + c003e11a: f0aa sd a0,96(sp) + c003e11c: 84ae mv s1,a1 + c003e11e: bf7d j c003e0dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48384 JS_FreeValue(ctx, ret); - c003df50: 7586 ld a1,96(sp) - c003df52: 8626 mv a2,s1 - c003df54: 8522 mv a0,s0 - c003df56: be3c90ef jal ra,c0007b38 - c003df5a: bdb5 j c003ddd6 + c003e120: 7586 ld a1,96(sp) + c003e122: 8626 mv a2,s1 + c003e124: 8522 mv a0,s0 + c003e126: b01c90ef jal ra,c0007c26 + c003e12a: bdb5 j c003dfa6 -00000000c003df5c : +00000000c003e12c : js_promise_then_finally_func(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48706 -{ - c003df5c: 7131 addi sp,sp,-192 - c003df5e: f922 sd s0,176(sp) - c003df60: f14a sd s2,160(sp) - c003df62: ed4e sd s3,152(sp) - c003df64: e952 sd s4,144(sp) - c003df66: fd06 sd ra,184(sp) - c003df68: f526 sd s1,168(sp) - c003df6a: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 +{ + c003e12c: 7131 addi sp,sp,-192 + c003e12e: f922 sd s0,176(sp) + c003e130: f14a sd s2,160(sp) + c003e132: ed4e sd s3,152(sp) + c003e134: e952 sd s4,144(sp) + c003e136: fd06 sd ra,184(sp) + c003e138: f526 sd s1,168(sp) + c003e13a: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48715 JSValueConst ctor = func_data[0]; - c003df6c: 00083783 ld a5,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48706 + c003e13c: 00083783 ld a5,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 { - c003df70: 8642 mv a2,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48711 + c003e140: 8642 mv a2,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48719 res = JS_Call(ctx, onFinally, JS_UNDEFINED, 0, NULL); - c003df72: 6a0c ld a1,16(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 + c003e142: 6a0c ld a1,16(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48715 JSValueConst ctor = func_data[0]; - c003df74: e83e sd a5,16(sp) - c003df76: 00883783 ld a5,8(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48711 + c003e144: e83e sd a5,16(sp) + c003e146: 00883783 ld a5,8(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48719 res = JS_Call(ctx, onFinally, JS_UNDEFINED, 0, NULL); - c003df7a: 6e10 ld a2,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48706 + c003e14a: 6e10 ld a2,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 { - c003df7c: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48707 + c003e14c: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48715 JSValueConst ctor = func_data[0]; - c003df7e: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48711 + c003e14e: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48719 res = JS_Call(ctx, onFinally, JS_UNDEFINED, 0, NULL); - c003df80: 4801 li a6,0 - c003df82: 4781 li a5,0 - c003df84: 4681 li a3,0 - c003df86: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48706 -{ - c003df88: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48711 + c003e150: 4801 li a6,0 + c003e152: 4781 li a5,0 + c003e154: 4681 li a3,0 + c003e156: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 +{ + c003e158: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48719 res = JS_Call(ctx, onFinally, JS_UNDEFINED, 0, NULL); - c003df8a: f7cfb0ef jal ra,c0039706 - c003df8e: f82a sd a0,48(sp) - c003df90: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48712 + c003e15a: f7cfb0ef jal ra,c00398d6 + c003e15e: f82a sd a0,48(sp) + c003e160: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48720 if (JS_IsException(res)) - c003df92: 0005879b sext.w a5,a1 - c003df96: 4a19 li s4,6 - c003df98: 01479e63 bne a5,s4,c003dfb4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48713 + c003e162: 0005879b sext.w a5,a1 + c003e166: 4a19 li s4,6 + c003e168: 01479e63 bne a5,s4,c003e184 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48721 return res; - c003df9c: e12a sd a0,128(sp) - c003df9e: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48732 -} - c003dfa0: 70ea ld ra,184(sp) - c003dfa2: 744a ld s0,176(sp) - c003dfa4: 650a ld a0,128(sp) - c003dfa6: 65aa ld a1,136(sp) - c003dfa8: 74aa ld s1,168(sp) - c003dfaa: 790a ld s2,160(sp) - c003dfac: 69ea ld s3,152(sp) - c003dfae: 6a4a ld s4,144(sp) - c003dfb0: 6129 addi sp,sp,192 - c003dfb2: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 + c003e16c: e12a sd a0,128(sp) + c003e16e: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48740 +} + c003e170: 70ea ld ra,184(sp) + c003e172: 744a ld s0,176(sp) + c003e174: 650a ld a0,128(sp) + c003e176: 65aa ld a1,136(sp) + c003e178: 74aa ld s1,168(sp) + c003e17a: 790a ld s2,160(sp) + c003e17c: 69ea ld s3,152(sp) + c003e17e: 6a4a ld s4,144(sp) + c003e180: 6129 addi sp,sp,192 + c003e182: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48722 promise = js_promise_resolve(ctx, ctor, 1, (JSValueConst *)&res, 0); - c003dfb4: 6662 ld a2,24(sp) - c003dfb6: 65c2 ld a1,16(sp) - c003dfb8: 4781 li a5,0 - c003dfba: 1818 addi a4,sp,48 - c003dfbc: 4685 li a3,1 - c003dfbe: 8522 mv a0,s0 - c003dfc0: e25fd0ef jal ra,c003bde4 - c003dfc4: 84ae mv s1,a1 - c003dfc6: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48715 + c003e184: 6662 ld a2,24(sp) + c003e186: 65c2 ld a1,16(sp) + c003e188: 4781 li a5,0 + c003e18a: 1818 addi a4,sp,48 + c003e18c: 4685 li a3,1 + c003e18e: 8522 mv a0,s0 + c003e190: e25fd0ef jal ra,c003bfb4 + c003e194: 84ae mv s1,a1 + c003e196: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48723 JS_FreeValue(ctx, res); - c003dfc8: 7662 ld a2,56(sp) - c003dfca: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48714 + c003e198: 7662 ld a2,56(sp) + c003e19a: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48722 promise = js_promise_resolve(ctx, ctor, 1, (JSValueConst *)&res, 0); - c003dfcc: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48716 + c003e19c: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48724 if (JS_IsException(promise)) - c003dfce: 2481 sext.w s1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48715 + c003e19e: 2481 sext.w s1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48723 JS_FreeValue(ctx, res); - c003dfd0: 8522 mv a0,s0 - c003dfd2: b67c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48716 + c003e1a0: 8522 mv a0,s0 + c003e1a2: a85c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48724 if (JS_IsException(promise)) - c003dfd6: 01449763 bne s1,s4,c003dfe4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48717 + c003e1a6: 01449763 bne s1,s4,c003e1b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48725 return promise; - c003dfda: 6786 ld a5,64(sp) - c003dfdc: e13e sd a5,128(sp) - c003dfde: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48731 + c003e1aa: 6786 ld a5,64(sp) + c003e1ac: e13e sd a5,128(sp) + c003e1ae: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48739 return ret; - c003dfe0: e53e sd a5,136(sp) - c003dfe2: bf7d j c003dfa0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48719 + c003e1b0: e53e sd a5,136(sp) + c003e1b2: bf7d j c003e170 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48727 then_func = JS_NewCFunctionData(ctx, js_promise_finally_value_thunk, 0, - c003dfe4: 87ca mv a5,s2 - c003dfe6: 4705 li a4,1 - c003dfe8: 4681 li a3,0 - c003dfea: 4601 li a2,0 - c003dfec: fffc8597 auipc a1,0xfffc8 - c003dff0: 69c58593 addi a1,a1,1692 # c0006688 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48718 + c003e1b4: 87ca mv a5,s2 + c003e1b6: 4705 li a4,1 + c003e1b8: 4681 li a3,0 + c003e1ba: 4601 li a2,0 + c003e1bc: fffc8597 auipc a1,0xfffc8 + c003e1c0: 5ba58593 addi a1,a1,1466 # c0006776 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48726 if (magic == 0) { - c003dff4: 00098663 beqz s3,c003e000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48722 + c003e1c4: 00098663 beqz s3,c003e1d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48730 then_func = JS_NewCFunctionData(ctx, js_promise_finally_thrower, 0, - c003dff8: fffcc597 auipc a1,0xfffcc - c003dffc: 6ac58593 addi a1,a1,1708 # c000a6a4 - c003e000: 8522 mv a0,s0 - c003e002: 9f4eb0ef jal ra,c00291f6 - c003e006: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48725 + c003e1c8: fffcc597 auipc a1,0xfffcc + c003e1cc: 5ca58593 addi a1,a1,1482 # c000a792 + c003e1d0: 8522 mv a0,s0 + c003e1d2: 9f4eb0ef jal ra,c00293c6 + c003e1d6: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48733 if (JS_IsException(then_func)) { - c003e008: 5726 lw a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48722 + c003e1d8: 5726 lw a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48730 then_func = JS_NewCFunctionData(ctx, js_promise_finally_thrower, 0, - c003e00a: f0aa sd a0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48725 + c003e1da: f0aa sd a0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48733 if (JS_IsException(then_func)) { - c003e00c: 4799 li a5,6 - c003e00e: 00f71b63 bne a4,a5,c003e024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48726 + c003e1dc: 4799 li a5,6 + c003e1de: 00f71b63 bne a4,a5,c003e1f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48734 JS_FreeValue(ctx, promise); - c003e012: 6586 ld a1,64(sp) - c003e014: 6626 ld a2,72(sp) - c003e016: 8522 mv a0,s0 - c003e018: b21c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48727 + c003e1e2: 6586 ld a1,64(sp) + c003e1e4: 6626 ld a2,72(sp) + c003e1e6: 8522 mv a0,s0 + c003e1e8: a3fc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48735 return then_func; - c003e01c: 7786 ld a5,96(sp) - c003e01e: e13e sd a5,128(sp) - c003e020: 77a6 ld a5,104(sp) - c003e022: bf7d j c003dfe0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48729 + c003e1ec: 7786 ld a5,96(sp) + c003e1ee: e13e sd a5,128(sp) + c003e1f0: 77a6 ld a5,104(sp) + c003e1f2: bf7d j c003e1b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48737 ret = JS_InvokeFree(ctx, promise, JS_ATOM_then, 1, (JSValueConst *)&then_func); - c003e024: 6626 ld a2,72(sp) - c003e026: 6586 ld a1,64(sp) - c003e028: 109c addi a5,sp,96 - c003e02a: 4705 li a4,1 - c003e02c: 08000693 li a3,128 - c003e030: 8522 mv a0,s0 - c003e032: b22f80ef jal ra,c0036354 - c003e036: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48730 + c003e1f4: 6626 ld a2,72(sp) + c003e1f6: 6586 ld a1,64(sp) + c003e1f8: 109c addi a5,sp,96 + c003e1fa: 4705 li a4,1 + c003e1fc: 08000693 li a3,128 + c003e200: 8522 mv a0,s0 + c003e202: b22f80ef jal ra,c0036524 + c003e206: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48738 JS_FreeValue(ctx, then_func); - c003e038: 7626 ld a2,104(sp) - c003e03a: 7586 ld a1,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48729 + c003e208: 7626 ld a2,104(sp) + c003e20a: 7586 ld a1,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48737 ret = JS_InvokeFree(ctx, promise, JS_ATOM_then, 1, (JSValueConst *)&then_func); - c003e03c: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48730 + c003e20c: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48738 JS_FreeValue(ctx, then_func); - c003e03e: 8522 mv a0,s0 - c003e040: af9c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48731 + c003e20e: 8522 mv a0,s0 + c003e210: a17c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48739 return ret; - c003e044: 67c6 ld a5,80(sp) - c003e046: e13e sd a5,128(sp) - c003e048: 67e6 ld a5,88(sp) - c003e04a: bf59 j c003dfe0 + c003e214: 67c6 ld a5,80(sp) + c003e216: e13e sd a5,128(sp) + c003e218: 67e6 ld a5,88(sp) + c003e21a: bf59 j c003e1b0 -00000000c003e04c : +00000000c003e21c : js_promise_resolve_thenable_job(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47932 -{ - c003e04c: 7135 addi sp,sp,-160 - c003e04e: ed06 sd ra,152(sp) - c003e050: e922 sd s0,144(sp) - c003e052: e526 sd s1,136(sp) - c003e054: e14a sd s2,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47939 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47940 +{ + c003e21c: 7135 addi sp,sp,-160 + c003e21e: ed06 sd ra,152(sp) + c003e220: e922 sd s0,144(sp) + c003e222: e526 sd s1,136(sp) + c003e224: e14a sd s2,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47947 assert(argc == 3); - c003e056: 470d li a4,3 - c003e058: 00e58c63 beq a1,a4,c003e070 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47939 (discriminator 1) - c003e05c: 65b1 lui a1,0xc - c003e05e: 4601 li a2,0 - c003e060: b4358593 addi a1,a1,-1213 # bb43 <__clzdi2-0xbfff44bd> - c003e064: 0001f517 auipc a0,0x1f - c003e068: a1450513 addi a0,a0,-1516 # c005ca78 - c003e06c: 1ad150ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47941 (discriminator 2) + c003e226: 470d li a4,3 + c003e228: 00e58c63 beq a1,a4,c003e240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47947 (discriminator 1) + c003e22c: 65b1 lui a1,0xc + c003e22e: 4601 li a2,0 + c003e230: b4b58593 addi a1,a1,-1205 # bb4b <__clzdi2-0xbfff44b5> + c003e234: 0001f517 auipc a0,0x1f + c003e238: a1450513 addi a0,a0,-1516 # c005cc48 + c003e23c: 1ad150ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47949 (discriminator 2) thenable = argv[1]; - c003e070: 6a18 ld a4,16(a2) - c003e072: 87b2 mv a5,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47943 (discriminator 2) + c003e240: 6a18 ld a4,16(a2) + c003e242: 87b2 mv a5,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47951 (discriminator 2) if (js_create_resolving_functions(ctx, args, promise) < 0) - c003e074: 6794 ld a3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47941 (discriminator 2) + c003e244: 6794 ld a3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47949 (discriminator 2) thenable = argv[1]; - c003e076: e83a sd a4,16(sp) - c003e078: 6e18 ld a4,24(a2) - c003e07a: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47943 (discriminator 2) + c003e246: e83a sd a4,16(sp) + c003e248: 6e18 ld a4,24(a2) + c003e24a: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47951 (discriminator 2) if (js_create_resolving_functions(ctx, args, promise) < 0) - c003e07c: 108c addi a1,sp,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47941 (discriminator 2) + c003e24c: 108c addi a1,sp,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47949 (discriminator 2) thenable = argv[1]; - c003e07e: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47942 (discriminator 2) + c003e24e: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47950 (discriminator 2) then = argv[2]; - c003e080: 7218 ld a4,32(a2) - c003e082: 842a mv s0,a0 - c003e084: f03a sd a4,32(sp) - c003e086: 7618 ld a4,40(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47943 (discriminator 2) + c003e250: 7218 ld a4,32(a2) + c003e252: 842a mv s0,a0 + c003e254: f03a sd a4,32(sp) + c003e256: 7618 ld a4,40(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47951 (discriminator 2) if (js_create_resolving_functions(ctx, args, promise) < 0) - c003e088: 6210 ld a2,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47942 (discriminator 2) + c003e258: 6210 ld a2,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47950 (discriminator 2) then = argv[2]; - c003e08a: f43a sd a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47943 (discriminator 2) + c003e25a: f43a sd a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47951 (discriminator 2) if (js_create_resolving_functions(ctx, args, promise) < 0) - c003e08c: dadea0ef jal ra,c0028e38 - c003e090: 00055d63 bgez a0,c003e0aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47944 + c003e25c: dadea0ef jal ra,c0029008 + c003e260: 00055d63 bgez a0,c003e27a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47952 return JS_EXCEPTION; - c003e094: 4799 li a5,6 - c003e096: e882 sd zero,80(sp) - c003e098: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47954 (discriminator 1) -} - c003e09a: 60ea ld ra,152(sp) - c003e09c: 644a ld s0,144(sp) - c003e09e: 6546 ld a0,80(sp) - c003e0a0: 65e6 ld a1,88(sp) - c003e0a2: 64aa ld s1,136(sp) - c003e0a4: 690a ld s2,128(sp) - c003e0a6: 610d addi sp,sp,160 - c003e0a8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47945 + c003e264: 4799 li a5,6 + c003e266: e882 sd zero,80(sp) + c003e268: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47962 (discriminator 1) +} + c003e26a: 60ea ld ra,152(sp) + c003e26c: 644a ld s0,144(sp) + c003e26e: 6546 ld a0,80(sp) + c003e270: 65e6 ld a1,88(sp) + c003e272: 64aa ld s1,136(sp) + c003e274: 690a ld s2,128(sp) + c003e276: 610d addi sp,sp,160 + c003e278: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47953 res = JS_Call(ctx, then, thenable, 2, (JSValueConst *)args); - c003e0aa: 6762 ld a4,24(sp) - c003e0ac: 66c2 ld a3,16(sp) - c003e0ae: 7582 ld a1,32(sp) - c003e0b0: 7622 ld a2,40(sp) - c003e0b2: 4789 li a5,2 - c003e0b4: 06010813 addi a6,sp,96 - c003e0b8: 8522 mv a0,s0 - c003e0ba: e4cfb0ef jal ra,c0039706 - c003e0be: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47946 + c003e27a: 6762 ld a4,24(sp) + c003e27c: 66c2 ld a3,16(sp) + c003e27e: 7582 ld a1,32(sp) + c003e280: 7622 ld a2,40(sp) + c003e282: 4789 li a5,2 + c003e284: 06010813 addi a6,sp,96 + c003e288: 8522 mv a0,s0 + c003e28a: e4cfb0ef jal ra,c00398d6 + c003e28e: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47954 if (JS_IsException(res)) { - c003e0c0: 0005871b sext.w a4,a1 - c003e0c4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47945 + c003e290: 0005871b sext.w a4,a1 + c003e294: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47953 res = JS_Call(ctx, then, thenable, 2, (JSValueConst *)args); - c003e0c6: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47946 + c003e296: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47954 if (JS_IsException(res)) { - c003e0c8: 02f71a63 bne a4,a5,c003e0fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47947 + c003e298: 02f71a63 bne a4,a5,c003e2cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47955 JSValue error = JS_GetException(ctx); - c003e0cc: 8522 mv a0,s0 - c003e0ce: dfacc0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47948 + c003e29c: 8522 mv a0,s0 + c003e29e: d18cc0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47956 res = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003e0d2: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47947 + c003e2a2: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47955 JSValue error = JS_GetException(ctx); - c003e0d4: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47948 + c003e2a4: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47956 res = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003e0d6: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47947 + c003e2a6: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47955 JSValue error = JS_GetException(ctx); - c003e0d8: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47948 + c003e2a8: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47956 res = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003e0da: 04010813 addi a6,sp,64 - c003e0de: 4785 li a5,1 - c003e0e0: 4681 li a3,0 - c003e0e2: 470d li a4,3 - c003e0e4: 8522 mv a0,s0 - c003e0e6: e882 sd zero,80(sp) - c003e0e8: ecca sd s2,88(sp) - c003e0ea: e1cfb0ef jal ra,c0039706 - c003e0ee: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47949 + c003e2aa: 04010813 addi a6,sp,64 + c003e2ae: 4785 li a5,1 + c003e2b0: 4681 li a3,0 + c003e2b2: 470d li a4,3 + c003e2b4: 8522 mv a0,s0 + c003e2b6: e882 sd zero,80(sp) + c003e2b8: ecca sd s2,88(sp) + c003e2ba: e1cfb0ef jal ra,c00398d6 + c003e2be: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47957 JS_FreeValue(ctx, error); - c003e0f0: 6626 ld a2,72(sp) - c003e0f2: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47948 + c003e2c0: 6626 ld a2,72(sp) + c003e2c2: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47956 res = JS_Call(ctx, args[1], JS_UNDEFINED, 1, (JSValueConst *)&error); - c003e0f4: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47949 + c003e2c4: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47957 JS_FreeValue(ctx, error); - c003e0f6: 8522 mv a0,s0 - c003e0f8: a41c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47951 + c003e2c6: 8522 mv a0,s0 + c003e2c8: 95fc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47959 JS_FreeValue(ctx, args[0]); - c003e0fc: 7586 ld a1,96(sp) - c003e0fe: 7626 ld a2,104(sp) - c003e100: 8522 mv a0,s0 - c003e102: a37c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47952 + c003e2cc: 7586 ld a1,96(sp) + c003e2ce: 7626 ld a2,104(sp) + c003e2d0: 8522 mv a0,s0 + c003e2d2: 955c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47960 JS_FreeValue(ctx, args[1]); - c003e106: 75c6 ld a1,112(sp) - c003e108: 7666 ld a2,120(sp) - c003e10a: 8522 mv a0,s0 - c003e10c: a2dc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47953 + c003e2d6: 75c6 ld a1,112(sp) + c003e2d8: 7666 ld a2,120(sp) + c003e2da: 8522 mv a0,s0 + c003e2dc: 94bc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:47961 return res; - c003e110: 77c2 ld a5,48(sp) - c003e112: eca6 sd s1,88(sp) - c003e114: e8be sd a5,80(sp) - c003e116: b751 j c003e09a + c003e2e0: 77c2 ld a5,48(sp) + c003e2e2: eca6 sd s1,88(sp) + c003e2e4: e8be sd a5,80(sp) + c003e2e6: b751 j c003e26a -00000000c003e118 : +00000000c003e2e8 : js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42056 -{ - c003e118: 7105 addi sp,sp,-480 - c003e11a: ef86 sd ra,472(sp) - c003e11c: eba2 sd s0,464(sp) - c003e11e: e7a6 sd s1,456(sp) - c003e120: e3ca sd s2,448(sp) - c003e122: ff4e sd s3,440(sp) - c003e124: fb52 sd s4,432(sp) - c003e126: f756 sd s5,424(sp) - c003e128: f35a sd s6,416(sp) - c003e12a: ef5e sd s7,408(sp) - c003e12c: eb62 sd s8,400(sp) - c003e12e: e766 sd s9,392(sp) - c003e130: e36a sd s10,384(sp) - c003e132: feee sd s11,376(sp) - c003e134: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42064 +{ + c003e2e8: 7105 addi sp,sp,-480 + c003e2ea: ef86 sd ra,472(sp) + c003e2ec: eba2 sd s0,464(sp) + c003e2ee: e7a6 sd s1,456(sp) + c003e2f0: e3ca sd s2,448(sp) + c003e2f2: ff4e sd s3,440(sp) + c003e2f4: fb52 sd s4,432(sp) + c003e2f6: f756 sd s5,424(sp) + c003e2f8: f35a sd s6,416(sp) + c003e2fa: ef5e sd s7,408(sp) + c003e2fc: eb62 sd s8,400(sp) + c003e2fe: e766 sd s9,392(sp) + c003e300: e36a sd s10,384(sp) + c003e302: feee sd s11,376(sp) + c003e304: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42066 JSValueConst O = this_val, searchValue = argv[0], replaceValue = argv[1]; - c003e136: 6b1c ld a5,16(a4) - c003e138: 6704 ld s1,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42056 + c003e306: 6b1c ld a5,16(a4) + c003e308: 6704 ld s1,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42064 { - c003e13a: f02e sd a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42058 + c003e30a: f02e sd a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42066 JSValueConst O = this_val, searchValue = argv[0], replaceValue = argv[1]; - c003e13c: f82e sd a1,48(sp) - c003e13e: e8be sd a5,80(sp) - c003e140: 630c ld a1,0(a4) - c003e142: 6f1c ld a5,24(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42056 + c003e30c: f82e sd a1,48(sp) + c003e30e: e8be sd a5,80(sp) + c003e310: 630c ld a1,0(a4) + c003e312: 6f1c ld a5,24(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42064 { - c003e144: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42058 - JSValueConst O = this_val, searchValue = argv[0], replaceValue = argv[1]; - c003e146: fc32 sd a2,56(sp) - c003e148: ecbe sd a5,88(sp) - c003e14a: e0ae sd a1,64(sp) - c003e14c: e4a6 sd s1,72(sp) + c003e314: f432 sd a2,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42066 + JSValueConst O = this_val, searchValue = argv[0], replaceValue = argv[1]; + c003e316: fc32 sd a2,56(sp) + c003e318: ecbe sd a5,88(sp) + c003e31a: e0ae sd a1,64(sp) + c003e31c: e4a6 sd s1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42074 if (JS_IsUndefined(O) || JS_IsNull(O)) - c003e14e: 3679 addiw a2,a2,-2 - c003e150: 4785 li a5,1 - c003e152: 02c7e663 bltu a5,a2,c003e17e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42164 -} - c003e156: 645e ld s0,464(sp) - c003e158: 60fe ld ra,472(sp) - c003e15a: 64be ld s1,456(sp) - c003e15c: 691e ld s2,448(sp) - c003e15e: 79fa ld s3,440(sp) - c003e160: 7a5a ld s4,432(sp) - c003e162: 7aba ld s5,424(sp) - c003e164: 7b1a ld s6,416(sp) - c003e166: 6bfa ld s7,408(sp) - c003e168: 6c5a ld s8,400(sp) - c003e16a: 6cba ld s9,392(sp) - c003e16c: 6d1a ld s10,384(sp) - c003e16e: 7df6 ld s11,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42067 + c003e31e: 3679 addiw a2,a2,-2 + c003e320: 4785 li a5,1 + c003e322: 02c7e663 bltu a5,a2,c003e34e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42172 +} + c003e326: 645e ld s0,464(sp) + c003e328: 60fe ld ra,472(sp) + c003e32a: 64be ld s1,456(sp) + c003e32c: 691e ld s2,448(sp) + c003e32e: 79fa ld s3,440(sp) + c003e330: 7a5a ld s4,432(sp) + c003e332: 7aba ld s5,424(sp) + c003e334: 7b1a ld s6,416(sp) + c003e336: 6bfa ld s7,408(sp) + c003e338: 6c5a ld s8,400(sp) + c003e33a: 6cba ld s9,392(sp) + c003e33c: 6d1a ld s10,384(sp) + c003e33e: 7df6 ld s11,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42075 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c003e170: 00020597 auipc a1,0x20 - c003e174: 16058593 addi a1,a1,352 # c005e2d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42164 + c003e340: 00020597 auipc a1,0x20 + c003e344: 1f058593 addi a1,a1,496 # c005e530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42172 } - c003e178: 613d addi sp,sp,480 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42067 + c003e348: 613d addi sp,sp,480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42075 return JS_ThrowTypeError(ctx, "cannot convert to object"); - c003e17a: a7cd506f j c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42070 + c003e34a: 99ad506f j c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42078 replaceValue_str = JS_UNDEFINED; - c003e17e: e102 sd zero,128(sp) - c003e180: e502 sd zero,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42073 + c003e34e: e102 sd zero,128(sp) + c003e350: e502 sd zero,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42081 if (!JS_IsUndefined(searchValue) && !JS_IsNull(searchValue)) { - c003e182: ffe4871b addiw a4,s1,-2 - c003e186: 842a mv s0,a0 - c003e188: 06e7fc63 bgeu a5,a4,c003e200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42075 + c003e352: ffe4871b addiw a4,s1,-2 + c003e356: 842a mv s0,a0 + c003e358: 06e7fc63 bgeu a5,a4,c003e3d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42083 if (is_replaceAll) { - c003e18c: 67c2 ld a5,16(sp) - c003e18e: cb91 beqz a5,c003e1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42076 + c003e35c: 67c2 ld a5,16(sp) + c003e35e: cb91 beqz a5,c003e372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42084 if (check_regexp_g_flag(ctx, searchValue) < 0) - c003e190: 8626 mv a2,s1 - c003e192: c7bdc0ef jal ra,c001ae0c - c003e196: 00055663 bgez a0,c003e1a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42163 + c003e360: 8626 mv a2,s1 + c003e362: c7bdc0ef jal ra,c001afdc + c003e366: 00055663 bgez a0,c003e372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42171 return JS_EXCEPTION; - c003e19a: 4799 li a5,6 - c003e19c: e982 sd zero,208(sp) - c003e19e: edbe sd a5,216(sp) - c003e1a0: aa31 j c003e2bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42079 + c003e36a: 4799 li a5,6 + c003e36c: e982 sd zero,208(sp) + c003e36e: edbe sd a5,216(sp) + c003e370: aa31 j c003e48c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42087 replacer = JS_GetProperty(ctx, searchValue, JS_ATOM_Symbol_replace); - c003e1a2: 6706 ld a4,64(sp) - c003e1a4: 67a6 ld a5,72(sp) + c003e372: 6706 ld a4,64(sp) + c003e374: 67a6 ld a5,72(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003e1a6: 4801 li a6,0 - c003e1a8: 85ba mv a1,a4 - c003e1aa: 863e mv a2,a5 - c003e1ac: 0cf00693 li a3,207 - c003e1b0: 8522 mv a0,s0 - c003e1b2: ea3a sd a4,272(sp) - c003e1b4: ee3e sd a5,280(sp) - c003e1b6: e8cd30ef jal ra,c0011842 - c003e1ba: f92a sd a0,176(sp) - c003e1bc: fd2e sd a1,184(sp) - c003e1be: f9aa sd a0,240(sp) - c003e1c0: fdae sd a1,248(sp) + c003e376: 4801 li a6,0 + c003e378: 85ba mv a1,a4 + c003e37a: 863e mv a2,a5 + c003e37c: 0cf00693 li a3,207 + c003e380: 8522 mv a0,s0 + c003e382: ea3a sd a4,272(sp) + c003e384: ee3e sd a5,280(sp) + c003e386: daad30ef jal ra,c0011930 + c003e38a: f92a sd a0,176(sp) + c003e38c: fd2e sd a1,184(sp) + c003e38e: f9aa sd a0,240(sp) + c003e390: fdae sd a1,248(sp) js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42080 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42088 if (JS_IsException(replacer)) - c003e1c2: 0005871b sext.w a4,a1 - c003e1c6: 4799 li a5,6 + c003e392: 0005871b sext.w a4,a1 + c003e396: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c003e1c8: 862e mv a2,a1 + c003e398: 862e mv a2,a1 js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42080 - c003e1ca: fcf708e3 beq a4,a5,c003e19a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42082 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42088 + c003e39a: fcf708e3 beq a4,a5,c003e36a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42090 (discriminator 1) if (!JS_IsUndefined(replacer) && !JS_IsNull(replacer)) { - c003e1ce: ffe5879b addiw a5,a1,-2 - c003e1d2: 4705 li a4,1 - c003e1d4: 02f77663 bgeu a4,a5,c003e200 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42083 + c003e39e: ffe5879b addiw a5,a1,-2 + c003e3a2: 4705 li a4,1 + c003e3a4: 02f77663 bgeu a4,a5,c003e3d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 args[0] = O; - c003e1d8: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42085 + c003e3a8: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 return JS_CallFree(ctx, replacer, searchValue, 2, args); - c003e1da: 6686 ld a3,64(sp) - c003e1dc: 6726 ld a4,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42083 + c003e3aa: 6686 ld a3,64(sp) + c003e3ac: 6726 ld a4,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 args[0] = O; - c003e1de: ea3e sd a5,272(sp) - c003e1e0: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42085 + c003e3ae: ea3e sd a5,272(sp) + c003e3b0: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 return JS_CallFree(ctx, replacer, searchValue, 2, args); - c003e1e2: 85aa mv a1,a0 - c003e1e4: 11010813 addi a6,sp,272 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42083 + c003e3b2: 85aa mv a1,a0 + c003e3b4: 11010813 addi a6,sp,272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 args[0] = O; - c003e1e8: ee3e sd a5,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42084 + c003e3b8: ee3e sd a5,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42092 args[1] = replaceValue; - c003e1ea: 67c6 ld a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42085 + c003e3ba: 67c6 ld a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 return JS_CallFree(ctx, replacer, searchValue, 2, args); - c003e1ec: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42084 + c003e3bc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42092 args[1] = replaceValue; - c003e1ee: f23e sd a5,288(sp) - c003e1f0: 67e6 ld a5,88(sp) - c003e1f2: f63e sd a5,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42085 + c003e3be: f23e sd a5,288(sp) + c003e3c0: 67e6 ld a5,88(sp) + c003e3c2: f63e sd a5,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 return JS_CallFree(ctx, replacer, searchValue, 2, args); - c003e1f4: 4789 li a5,2 - c003e1f6: e16d30ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42156 + c003e3c4: 4789 li a5,2 + c003e3c6: d34d30ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42164 return string_buffer_end(b); - c003e1fa: e9aa sd a0,208(sp) - c003e1fc: edae sd a1,216(sp) - c003e1fe: a87d j c003e2bc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42088 + c003e3ca: e9aa sd a0,208(sp) + c003e3cc: edae sd a1,216(sp) + c003e3ce: a87d j c003e48c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42096 string_buffer_init(ctx, b, 0); - c003e200: 4601 li a2,0 - c003e202: 198c addi a1,sp,240 - c003e204: 8522 mv a0,s0 - c003e206: 9c9da0ef jal ra,c0018bce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42090 + c003e3d0: 4601 li a2,0 + c003e3d2: 198c addi a1,sp,240 + c003e3d4: 8522 mv a0,s0 + c003e3d6: 9c9da0ef jal ra,c0018d9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42098 str = JS_ToString(ctx, O); - c003e20a: 75c2 ld a1,48(sp) - c003e20c: 7662 ld a2,56(sp) - c003e20e: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 + c003e3da: 75c2 ld a1,48(sp) + c003e3dc: 7662 ld a2,56(sp) + c003e3de: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42099 if (JS_IsException(str)) - c003e210: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42090 + c003e3e0: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42098 str = JS_ToString(ctx, O); - c003e212: dc4dc0ef jal ra,c001a7d6 - c003e216: f0aa sd a0,96(sp) - c003e218: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 + c003e3e2: dc4dc0ef jal ra,c001a9a6 + c003e3e6: f0aa sd a0,96(sp) + c003e3e8: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42099 if (JS_IsException(str)) - c003e21a: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42090 + c003e3ea: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42098 str = JS_ToString(ctx, O); - c003e21e: 892a mv s2,a0 - c003e220: 8a2e mv s4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42091 + c003e3ee: 892a mv s2,a0 + c003e3f0: 8a2e mv s4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42099 if (JS_IsException(str)) - c003e222: 1b678963 beq a5,s6,c003e3d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 + c003e3f2: 1b678963 beq a5,s6,c003e5a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42101 search_str = JS_ToString(ctx, searchValue); - c003e226: 6586 ld a1,64(sp) - c003e228: 8626 mv a2,s1 - c003e22a: 8522 mv a0,s0 - c003e22c: e4a6 sd s1,72(sp) - c003e22e: da8dc0ef jal ra,c001a7d6 - c003e232: f8aa sd a0,112(sp) - c003e234: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42094 + c003e3f6: 6586 ld a1,64(sp) + c003e3f8: 8626 mv a2,s1 + c003e3fa: 8522 mv a0,s0 + c003e3fc: e4a6 sd s1,72(sp) + c003e3fe: da8dc0ef jal ra,c001a9a6 + c003e402: f8aa sd a0,112(sp) + c003e404: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42102 if (JS_IsException(search_str)) - c003e236: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42093 + c003e406: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42101 search_str = JS_ToString(ctx, searchValue); - c003e23a: 89aa mv s3,a0 - c003e23c: 8aae mv s5,a1 - c003e23e: 8daa mv s11,a0 - c003e240: 8d2e mv s10,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42094 + c003e40a: 89aa mv s3,a0 + c003e40c: 8aae mv s5,a1 + c003e40e: 8daa mv s11,a0 + c003e410: 8d2e mv s10,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42102 if (JS_IsException(search_str)) - c003e242: 1b678f63 beq a5,s6,c003e400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42096 + c003e412: 1b678f63 beq a5,s6,c003e5d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42104 functionalReplace = JS_IsFunction(ctx, replaceValue); - c003e246: 65c6 ld a1,80(sp) - c003e248: 6666 ld a2,88(sp) - c003e24a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42070 + c003e416: 65c6 ld a1,80(sp) + c003e418: 6666 ld a2,88(sp) + c003e41a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42078 replaceValue_str = JS_UNDEFINED; - c003e24c: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42096 + c003e41c: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42104 functionalReplace = JS_IsFunction(ctx, replaceValue); - c003e24e: c8ecc0ef jal ra,c000a6dc - c003e252: e42a sd a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42097 + c003e41e: baccc0ef jal ra,c000a7ca + c003e422: e42a sd a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42105 if (!functionalReplace) { - c003e254: ed09 bnez a0,c003e26e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42098 + c003e424: ed09 bnez a0,c003e43e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42106 replaceValue_str = JS_ToString(ctx, replaceValue); - c003e256: 65c6 ld a1,80(sp) - c003e258: 6666 ld a2,88(sp) - c003e25a: 8522 mv a0,s0 - c003e25c: d7adc0ef jal ra,c001a7d6 - c003e260: e12a sd a0,128(sp) - c003e262: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42099 + c003e426: 65c6 ld a1,80(sp) + c003e428: 6666 ld a2,88(sp) + c003e42a: 8522 mv a0,s0 + c003e42c: d7adc0ef jal ra,c001a9a6 + c003e430: e12a sd a0,128(sp) + c003e432: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42107 if (JS_IsException(replaceValue_str)) - c003e264: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42098 + c003e434: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42106 replaceValue_str = JS_ToString(ctx, replaceValue); - c003e268: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42099 + c003e438: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42107 if (JS_IsException(replaceValue_str)) - c003e26a: 17678863 beq a5,s6,c003e3da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42108 + c003e43a: 17678863 beq a5,s6,c003e5aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42116 if (unlikely(searchp->len == 0)) { - c003e26e: 80000b37 lui s6,0x80000 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42106 + c003e43e: 80000b37 lui s6,0x80000 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42114 is_first = TRUE; - c003e272: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42105 + c003e442: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42113 endOfLastMatch = 0; - c003e274: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42108 + c003e444: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42116 if (unlikely(searchp->len == 0)) { - c003e276: fffb4b13 not s6,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42137 + c003e446: fffb4b13 not s6,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42145 args[3] = JS_UNDEFINED; - c003e27a: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42108 + c003e44a: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42116 if (unlikely(searchp->len == 0)) { - c003e27c: 0049a703 lw a4,4(s3) - c003e280: 00eb7733 and a4,s6,a4 - c003e284: ef29 bnez a4,c003e2de -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42109 + c003e44c: 0049a703 lw a4,4(s3) + c003e450: 00eb7733 and a4,s6,a4 + c003e454: ef29 bnez a4,c003e4ae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42117 if (is_first) - c003e286: e7ad bnez a5,c003e2f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42111 + c003e456: e7ad bnez a5,c003e4c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42119 else if (endOfLastMatch >= sp->len) - c003e288: 00492703 lw a4,4(s2) - c003e28c: 00eb7733 and a4,s6,a4 - c003e290: 0cebdf63 bge s7,a4,c003e36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42114 + c003e458: 00492703 lw a4,4(s2) + c003e45c: 00eb7733 and a4,s6,a4 + c003e460: 0cebdf63 bge s7,a4,c003e53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42122 pos = endOfLastMatch + 1; - c003e294: 001b8c1b addiw s8,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42118 + c003e464: 001b8c1b addiw s8,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42126 if (pos < 0) { - c003e298: 040c5d63 bgez s8,c003e2f2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42119 + c003e468: 040c5d63 bgez s8,c003e4c2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42127 if (is_first) { - c003e29c: cbe9 beqz a5,c003e36e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42120 + c003e46c: cbe9 beqz a5,c003e53e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42128 string_buffer_free(b); - c003e29e: 1988 addi a0,sp,240 - c003e2a0: bc7c80ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42121 + c003e46e: 1988 addi a0,sp,240 + c003e470: ae5c80ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42129 JS_FreeValue(ctx, search_str); - c003e2a4: 75c6 ld a1,112(sp) - c003e2a6: 7666 ld a2,120(sp) - c003e2a8: 8522 mv a0,s0 - c003e2aa: 88fc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42122 + c003e474: 75c6 ld a1,112(sp) + c003e476: 7666 ld a2,120(sp) + c003e478: 8522 mv a0,s0 + c003e47a: facc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42130 JS_FreeValue(ctx, replaceValue_str); - c003e2ae: 658a ld a1,128(sp) - c003e2b0: 8626 mv a2,s1 - c003e2b2: 8522 mv a0,s0 - c003e2b4: 885c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42123 + c003e47e: 658a ld a1,128(sp) + c003e480: 8626 mv a2,s1 + c003e482: 8522 mv a0,s0 + c003e484: fa2c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42131 return str; - c003e2b8: e9ca sd s2,208(sp) - c003e2ba: edd2 sd s4,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42164 (discriminator 3) -} - c003e2bc: 60fe ld ra,472(sp) - c003e2be: 645e ld s0,464(sp) - c003e2c0: 654e ld a0,208(sp) - c003e2c2: 65ee ld a1,216(sp) - c003e2c4: 64be ld s1,456(sp) - c003e2c6: 691e ld s2,448(sp) - c003e2c8: 79fa ld s3,440(sp) - c003e2ca: 7a5a ld s4,432(sp) - c003e2cc: 7aba ld s5,424(sp) - c003e2ce: 7b1a ld s6,416(sp) - c003e2d0: 6bfa ld s7,408(sp) - c003e2d2: 6c5a ld s8,400(sp) - c003e2d4: 6cba ld s9,392(sp) - c003e2d6: 6d1a ld s10,384(sp) - c003e2d8: 7df6 ld s11,376(sp) - c003e2da: 613d addi sp,sp,480 - c003e2dc: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42116 + c003e488: e9ca sd s2,208(sp) + c003e48a: edd2 sd s4,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42172 (discriminator 3) +} + c003e48c: 60fe ld ra,472(sp) + c003e48e: 645e ld s0,464(sp) + c003e490: 654e ld a0,208(sp) + c003e492: 65ee ld a1,216(sp) + c003e494: 64be ld s1,456(sp) + c003e496: 691e ld s2,448(sp) + c003e498: 79fa ld s3,440(sp) + c003e49a: 7a5a ld s4,432(sp) + c003e49c: 7aba ld s5,424(sp) + c003e49e: 7b1a ld s6,416(sp) + c003e4a0: 6bfa ld s7,408(sp) + c003e4a2: 6c5a ld s8,400(sp) + c003e4a4: 6cba ld s9,392(sp) + c003e4a6: 6d1a ld s10,384(sp) + c003e4a8: 7df6 ld s11,376(sp) + c003e4aa: 613d addi sp,sp,480 + c003e4ac: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42124 pos = string_indexof(sp, searchp, endOfLastMatch); - c003e2de: 865e mv a2,s7 - c003e2e0: 85ce mv a1,s3 - c003e2e2: 854a mv a0,s2 - c003e2e4: ec3e sd a5,24(sp) - c003e2e6: bf0c60ef jal ra,c00046d6 - c003e2ea: 67e2 ld a5,24(sp) - c003e2ec: 8c2a mv s8,a0 - c003e2ee: b76d j c003e298 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42110 + c003e4ae: 865e mv a2,s7 + c003e4b0: 85ce mv a1,s3 + c003e4b2: 854a mv a0,s2 + c003e4b4: ec3e sd a5,24(sp) + c003e4b6: a20c60ef jal ra,c00046d6 + c003e4ba: 67e2 ld a5,24(sp) + c003e4bc: 8c2a mv s8,a0 + c003e4be: b76d j c003e468 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42118 pos = 0; - c003e2f0: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42128 + c003e4c0: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42136 if (functionalReplace) { - c003e2f2: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42129 + c003e4c2: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42137 args[0] = search_str; - c003e2f4: ea4e sd s3,272(sp) - c003e2f6: ee56 sd s5,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42128 + c003e4c4: ea4e sd s3,272(sp) + c003e4c6: ee56 sd s5,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42136 if (functionalReplace) { - c003e2f8: c7dd beqz a5,c003e3a6 + c003e4c8: c7dd beqz a5,c003e576 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e2fa: e182 sd zero,192(sp) - c003e2fc: c1e2 sw s8,192(sp) - c003e2fe: 678e ld a5,192(sp) + c003e4ca: e182 sd zero,192(sp) + c003e4cc: c1e2 sw s8,192(sp) + c003e4ce: 678e ld a5,192(sp) js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42132 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42140 repl_str = JS_ToStringFree(ctx, JS_Call(ctx, replaceValue, JS_UNDEFINED, 3, args)); - c003e300: 6666 ld a2,88(sp) - c003e302: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42130 + c003e4d0: 6666 ld a2,88(sp) + c003e4d2: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42138 args[1] = JS_NewInt32(ctx, pos); - c003e304: f23e sd a5,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42132 + c003e4d4: f23e sd a5,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42140 repl_str = JS_ToStringFree(ctx, JS_Call(ctx, replaceValue, JS_UNDEFINED, 3, args)); - c003e306: 11010813 addi a6,sp,272 - c003e30a: 478d li a5,3 - c003e30c: 4681 li a3,0 - c003e30e: 470d li a4,3 - c003e310: 8522 mv a0,s0 + c003e4d6: 11010813 addi a6,sp,272 + c003e4da: 478d li a5,3 + c003e4dc: 4681 li a3,0 + c003e4de: 470d li a4,3 + c003e4e0: 8522 mv a0,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003e312: e582 sd zero,200(sp) + c003e4e2: e582 sd zero,200(sp) js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42130 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42138 args[1] = JS_NewInt32(ctx, pos); - c003e314: f602 sd zero,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42131 + c003e4e4: f602 sd zero,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42139 args[2] = str; - c003e316: fa4a sd s2,304(sp) - c003e318: fe52 sd s4,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42132 - repl_str = JS_ToStringFree(ctx, JS_Call(ctx, replaceValue, JS_UNDEFINED, 3, args)); - c003e31a: e982 sd zero,208(sp) - c003e31c: ede6 sd s9,216(sp) - c003e31e: be8fb0ef jal ra,c0039706 - c003e322: 862e mv a2,a1 - c003e324: f12a sd a0,160(sp) - c003e326: f52e sd a1,168(sp) - c003e328: 85aa mv a1,a0 - c003e32a: 8522 mv a0,s0 - c003e32c: cb4dc0ef jal ra,c001a7e0 + c003e4e6: fa4a sd s2,304(sp) + c003e4e8: fe52 sd s4,312(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42140 + repl_str = JS_ToStringFree(ctx, JS_Call(ctx, replaceValue, JS_UNDEFINED, 3, args)); + c003e4ea: e982 sd zero,208(sp) + c003e4ec: ede6 sd s9,216(sp) + c003e4ee: be8fb0ef jal ra,c00398d6 + c003e4f2: 862e mv a2,a1 + c003e4f4: f12a sd a0,160(sp) + c003e4f6: f52e sd a1,168(sp) + c003e4f8: 85aa mv a1,a0 + c003e4fa: 8522 mv a0,s0 + c003e4fc: cb4dc0ef jal ra,c001a9b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42148 repl_str = js_string___GetSubstitution(ctx, JS_UNDEFINED, 6, args); - c003e330: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42142 + c003e500: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42150 if (JS_IsException(repl_str)) - c003e332: 0005871b sext.w a4,a1 - c003e336: ec2e sd a1,24(sp) - c003e338: 4799 li a5,6 - c003e33a: 0af70063 beq a4,a5,c003e3da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42145 + c003e502: 0005871b sext.w a4,a1 + c003e506: ec2e sd a1,24(sp) + c003e508: 4799 li a5,6 + c003e50a: 0af70063 beq a4,a5,c003e5aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42153 string_buffer_concat(b, sp, endOfLastMatch, pos); - c003e33e: 865e mv a2,s7 - c003e340: 000c069b sext.w a3,s8 - c003e344: 85ca mv a1,s2 - c003e346: 1988 addi a0,sp,240 - c003e348: c21da0ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42146 + c003e50e: 865e mv a2,s7 + c003e510: 000c069b sext.w a3,s8 + c003e514: 85ca mv a1,s2 + c003e516: 1988 addi a0,sp,240 + c003e518: c21da0ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42154 string_buffer_concat_value_free(b, repl_str); - c003e34c: 67e2 ld a5,24(sp) - c003e34e: 65ca ld a1,144(sp) - c003e350: 1988 addi a0,sp,240 - c003e352: 863e mv a2,a5 - c003e354: ed3e sd a5,152(sp) - c003e356: 987dc0ef jal ra,c001acdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42147 + c003e51c: 67e2 ld a5,24(sp) + c003e51e: 65ca ld a1,144(sp) + c003e520: 1988 addi a0,sp,240 + c003e522: 863e mv a2,a5 + c003e524: ed3e sd a5,152(sp) + c003e526: 987dc0ef jal ra,c001aeac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42155 endOfLastMatch = pos + searchp->len; - c003e35a: 0049a883 lw a7,4(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42149 + c003e52a: 0049a883 lw a7,4(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42157 if (!is_replaceAll) - c003e35e: 6742 ld a4,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42148 + c003e52e: 6742 ld a4,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42156 is_first = FALSE; - c003e360: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42147 + c003e530: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42155 endOfLastMatch = pos + searchp->len; - c003e362: 0168f8b3 and a7,a7,s6 - c003e366: 01888bbb addw s7,a7,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42149 + c003e532: 0168f8b3 and a7,a7,s6 + c003e536: 01888bbb addw s7,a7,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42157 if (!is_replaceAll) - c003e36a: f00719e3 bnez a4,c003e27c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42152 + c003e53a: f00719e3 bnez a4,c003e44c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42160 string_buffer_concat(b, sp, endOfLastMatch, sp->len); - c003e36e: 00492683 lw a3,4(s2) - c003e372: 865e mv a2,s7 - c003e374: 85ca mv a1,s2 - c003e376: 1686 slli a3,a3,0x21 - c003e378: 9285 srli a3,a3,0x21 - c003e37a: 1988 addi a0,sp,240 - c003e37c: bedda0ef jal ra,c0018f68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42153 + c003e53e: 00492683 lw a3,4(s2) + c003e542: 865e mv a2,s7 + c003e544: 85ca mv a1,s2 + c003e546: 1686 slli a3,a3,0x21 + c003e548: 9285 srli a3,a3,0x21 + c003e54a: 1988 addi a0,sp,240 + c003e54c: bedda0ef jal ra,c0019138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42161 JS_FreeValue(ctx, search_str); - c003e380: 75c6 ld a1,112(sp) - c003e382: 7666 ld a2,120(sp) - c003e384: 8522 mv a0,s0 - c003e386: fb2c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42154 + c003e550: 75c6 ld a1,112(sp) + c003e552: 7666 ld a2,120(sp) + c003e554: 8522 mv a0,s0 + c003e556: ed0c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42162 JS_FreeValue(ctx, replaceValue_str); - c003e38a: 658a ld a1,128(sp) - c003e38c: 8626 mv a2,s1 - c003e38e: 8522 mv a0,s0 - c003e390: fa8c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42155 + c003e55a: 658a ld a1,128(sp) + c003e55c: 8626 mv a2,s1 + c003e55e: 8522 mv a0,s0 + c003e560: ec6c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42163 JS_FreeValue(ctx, str); - c003e394: 7586 ld a1,96(sp) - c003e396: 7626 ld a2,104(sp) - c003e398: 8522 mv a0,s0 - c003e39a: f9ec90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42156 + c003e564: 7586 ld a1,96(sp) + c003e566: 7626 ld a2,104(sp) + c003e568: 8522 mv a0,s0 + c003e56a: ebcc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42164 return string_buffer_end(b); - c003e39e: 1988 addi a0,sp,240 - c003e3a0: 96bdb0ef jal ra,c0019d0a - c003e3a4: bd99 j c003e1fa + c003e56e: 1988 addi a0,sp,240 + c003e570: 96bdb0ef jal ra,c0019eda + c003e574: bd99 j c003e3ca JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003e3a6: f182 sd zero,224(sp) - c003e3a8: d1e2 sw s8,224(sp) - c003e3aa: 778e ld a5,224(sp) + c003e576: f182 sd zero,224(sp) + c003e578: d1e2 sw s8,224(sp) + c003e57a: 778e ld a5,224(sp) js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42148 repl_str = js_string___GetSubstitution(ctx, JS_UNDEFINED, 6, args); - c003e3ac: 0a0c addi a1,sp,272 - c003e3ae: 8522 mv a0,s0 - c003e3b0: e9be sd a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42136 + c003e57c: 0a0c addi a1,sp,272 + c003e57e: 8522 mv a0,s0 + c003e580: e9be sd a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42144 args[2] = JS_NewInt32(ctx, pos); - c003e3b2: fa3e sd a5,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42139 + c003e582: fa3e sd a5,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42147 args[5] = replaceValue_str; - c003e3b4: 678a ld a5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42135 + c003e584: 678a ld a5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42143 args[1] = str; - c003e3b6: f24a sd s2,288(sp) - c003e3b8: f652 sd s4,296(sp) + c003e586: f24a sd s2,288(sp) + c003e588: f652 sd s4,296(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003e3ba: f582 sd zero,232(sp) - c003e3bc: ed82 sd zero,216(sp) + c003e58a: f582 sd zero,232(sp) + c003e58c: ed82 sd zero,216(sp) js_string_replace(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42144 args[2] = JS_NewInt32(ctx, pos); - c003e3be: fe02 sd zero,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42137 + c003e58e: fe02 sd zero,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42145 args[3] = JS_UNDEFINED; - c003e3c0: e282 sd zero,320(sp) - c003e3c2: e6e6 sd s9,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42138 + c003e590: e282 sd zero,320(sp) + c003e592: e6e6 sd s9,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42146 args[4] = JS_UNDEFINED; - c003e3c4: ea82 sd zero,336(sp) - c003e3c6: eee6 sd s9,344(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42139 + c003e594: ea82 sd zero,336(sp) + c003e596: eee6 sd s9,344(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42147 args[5] = replaceValue_str; - c003e3c8: e526 sd s1,136(sp) - c003e3ca: f2be sd a5,352(sp) - c003e3cc: f6a6 sd s1,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42140 + c003e598: e526 sd s1,136(sp) + c003e59a: f2be sd a5,352(sp) + c003e59c: f6a6 sd s1,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42148 repl_str = js_string___GetSubstitution(ctx, JS_UNDEFINED, 6, args); - c003e3ce: d19f30ef jal ra,c00320e6 - c003e3d2: bfb9 j c003e330 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42070 + c003e59e: d19f30ef jal ra,c00322b6 + c003e5a2: bfb9 j c003e500 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42078 replaceValue_str = JS_UNDEFINED; - c003e3d4: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42069 + c003e5a4: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42077 search_str = JS_UNDEFINED; - c003e3d6: 4d0d li s10,3 - c003e3d8: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42159 + c003e5a6: 4d0d li s10,3 + c003e5a8: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42167 string_buffer_free(b); - c003e3da: 1988 addi a0,sp,240 - c003e3dc: a8bc80ef jal ra,c0006e66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42160 + c003e5aa: 1988 addi a0,sp,240 + c003e5ac: 9a9c80ef jal ra,c0006f54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42168 JS_FreeValue(ctx, search_str); - c003e3e0: 85ee mv a1,s11 - c003e3e2: 866a mv a2,s10 - c003e3e4: 8522 mv a0,s0 - c003e3e6: f52c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42161 + c003e5b0: 85ee mv a1,s11 + c003e5b2: 866a mv a2,s10 + c003e5b4: 8522 mv a0,s0 + c003e5b6: e70c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42169 JS_FreeValue(ctx, replaceValue_str); - c003e3ea: 658a ld a1,128(sp) - c003e3ec: 8626 mv a2,s1 - c003e3ee: 8522 mv a0,s0 - c003e3f0: f48c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42162 + c003e5ba: 658a ld a1,128(sp) + c003e5bc: 8626 mv a2,s1 + c003e5be: 8522 mv a0,s0 + c003e5c0: e66c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42170 JS_FreeValue(ctx, str); - c003e3f4: 7586 ld a1,96(sp) - c003e3f6: 7626 ld a2,104(sp) - c003e3f8: 8522 mv a0,s0 - c003e3fa: f3ec90ef jal ra,c0007b38 - c003e3fe: bb71 j c003e19a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42070 + c003e5c4: 7586 ld a1,96(sp) + c003e5c6: 7626 ld a2,104(sp) + c003e5c8: 8522 mv a0,s0 + c003e5ca: e5cc90ef jal ra,c0007c26 + c003e5ce: bb71 j c003e36a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:42078 replaceValue_str = JS_UNDEFINED; - c003e400: 448d li s1,3 - c003e402: bfe1 j c003e3da + c003e5d0: 448d li s1,3 + c003e5d2: bfe1 j c003e5aa -00000000c003e404 : +00000000c003e5d4 : js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 -{ - c003e404: 7121 addi sp,sp,-448 - c003e406: fb22 sd s0,432(sp) - c003e408: f726 sd s1,424(sp) - c003e40a: ef4e sd s3,408(sp) - c003e40c: e35a sd s6,384(sp) - c003e40e: ff06 sd ra,440(sp) - c003e410: f34a sd s2,416(sp) - c003e412: eb52 sd s4,400(sp) - c003e414: e756 sd s5,392(sp) - c003e416: fede sd s7,376(sp) - c003e418: fae2 sd s8,368(sp) - c003e41a: f6e6 sd s9,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38913 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38919 +{ + c003e5d4: 7121 addi sp,sp,-448 + c003e5d6: fb22 sd s0,432(sp) + c003e5d8: f726 sd s1,424(sp) + c003e5da: ef4e sd s3,408(sp) + c003e5dc: e35a sd s6,384(sp) + c003e5de: ff06 sd ra,440(sp) + c003e5e0: f34a sd s2,416(sp) + c003e5e2: eb52 sd s4,400(sp) + c003e5e4: e756 sd s5,392(sp) + c003e5e6: fede sd s7,376(sp) + c003e5e8: fae2 sd s8,368(sp) + c003e5ea: f6e6 sd s9,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 JSValueConst items = argv[0], mapfn, this_arg; - c003e41c: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 + c003e5ec: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38919 { - c003e41e: 89ba mv s3,a4 - c003e420: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38913 + c003e5ee: 89ba mv s3,a4 + c003e5f0: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 JSValueConst items = argv[0], mapfn, this_arg; - c003e422: f83e sd a5,48(sp) - c003e424: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 + c003e5f2: f83e sd a5,48(sp) + c003e5f4: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38919 { - c003e426: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 + c003e5f6: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38929 mapfn = JS_UNDEFINED; - c003e428: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38913 + c003e5f8: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 JSValueConst items = argv[0], mapfn, this_arg; - c003e42a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38922 + c003e5fa: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38930 this_arg = JS_UNDEFINED; - c003e42c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 + c003e5fc: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38929 mapfn = JS_UNDEFINED; - c003e42e: e482 sd zero,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38922 + c003e5fe: e482 sd zero,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38930 this_arg = JS_UNDEFINED; - c003e430: e882 sd zero,80(sp) - c003e432: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38923 + c003e600: e882 sd zero,80(sp) + c003e602: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38931 r = JS_UNDEFINED; - c003e434: f882 sd zero,112(sp) - c003e436: fc82 sd zero,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38924 + c003e604: f882 sd zero,112(sp) + c003e606: fc82 sd zero,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38932 arrayLike = JS_UNDEFINED; - c003e438: f102 sd zero,160(sp) - c003e43a: f502 sd zero,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38925 + c003e608: f102 sd zero,160(sp) + c003e60a: f502 sd zero,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38933 stack[0] = JS_UNDEFINED; - c003e43c: e282 sd zero,320(sp) - c003e43e: e6be sd a5,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38926 + c003e60c: e282 sd zero,320(sp) + c003e60e: e6be sd a5,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38934 stack[1] = JS_UNDEFINED; - c003e440: ea82 sd zero,336(sp) - c003e442: eebe sd a5,344(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38928 + c003e610: ea82 sd zero,336(sp) + c003e612: eebe sd a5,344(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38936 if (argc > 1) { - c003e444: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38911 + c003e614: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38919 { - c003e446: 842a mv s0,a0 - c003e448: 8b2e mv s6,a1 - c003e44a: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38928 + c003e616: 842a mv s0,a0 + c003e618: 8b2e mv s6,a1 + c003e61a: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38936 if (argc > 1) { - c003e44c: 10d75663 bge a4,a3,c003e558 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38929 + c003e61c: 10d75663 bge a4,a3,c003e728 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38937 mapfn = argv[1]; - c003e450: 0189b903 ld s2,24(s3) - c003e454: 0109b583 ld a1,16(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38920 + c003e620: 0189b903 ld s2,24(s3) + c003e624: 0109b583 ld a1,16(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38928 mapping = FALSE; - c003e458: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38929 + c003e628: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38937 mapfn = argv[1]; - c003e45a: e4ca sd s2,72(sp) - c003e45c: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38930 + c003e62a: e4ca sd s2,72(sp) + c003e62c: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38938 if (!JS_IsUndefined(mapfn)) { - c003e45e: 0009071b sext.w a4,s2 - c003e462: 02f70463 beq a4,a5,c003e48a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38931 + c003e62e: 0009071b sext.w a4,s2 + c003e632: 02f70463 beq a4,a5,c003e65a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38939 if (check_function(ctx, mapfn)) - c003e466: 864a mv a2,s2 - c003e468: 8a36 mv s4,a3 - c003e46a: 83ed50ef jal ra,c00134a8 - c003e46e: c501 beqz a0,c003e476 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38924 + c003e636: 864a mv a2,s2 + c003e638: 8a36 mv s4,a3 + c003e63a: f5dd40ef jal ra,c0013596 + c003e63e: c501 beqz a0,c003e646 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38932 arrayLike = JS_UNDEFINED; - c003e470: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38923 + c003e640: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38931 r = JS_UNDEFINED; - c003e472: 448d li s1,3 - c003e474: aced j c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38934 + c003e642: 448d li s1,3 + c003e644: aced j c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38942 if (argc > 2) - c003e476: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38933 + c003e646: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38941 mapping = 1; - c003e478: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38934 + c003e648: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38942 if (argc > 2) - c003e47a: 00fa0863 beq s4,a5,c003e48a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38935 + c003e64a: 00fa0863 beq s4,a5,c003e65a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38943 this_arg = argv[2]; - c003e47e: 0209b783 ld a5,32(s3) - c003e482: e8be sd a5,80(sp) - c003e484: 0289b783 ld a5,40(s3) - c003e488: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38938 + c003e64e: 0209b783 ld a5,32(s3) + c003e652: e8be sd a5,80(sp) + c003e654: 0289b783 ld a5,40(s3) + c003e658: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38946 iter = JS_GetProperty(ctx, items, JS_ATOM_Symbol_iterator); - c003e48a: 77e2 ld a5,56(sp) - c003e48c: 7742 ld a4,48(sp) + c003e65a: 77e2 ld a5,56(sp) + c003e65c: 7742 ld a4,48(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003e48e: 4801 li a6,0 - c003e490: 863e mv a2,a5 - c003e492: 0cc00693 li a3,204 - c003e496: 85ba mv a1,a4 - c003e498: 8522 mv a0,s0 - c003e49a: f63e sd a5,296(sp) - c003e49c: f23a sd a4,288(sp) - c003e49e: ba4d30ef jal ra,c0011842 - c003e4a2: e1aa sd a0,192(sp) - c003e4a4: e5ae sd a1,200(sp) - c003e4a6: f0aa sd a0,96(sp) - c003e4a8: f4ae sd a1,104(sp) + c003e65e: 4801 li a6,0 + c003e660: 863e mv a2,a5 + c003e662: 0cc00693 li a3,204 + c003e666: 85ba mv a1,a4 + c003e668: 8522 mv a0,s0 + c003e66a: f63e sd a5,296(sp) + c003e66c: f23a sd a4,288(sp) + c003e66e: ac2d30ef jal ra,c0011930 + c003e672: e1aa sd a0,192(sp) + c003e674: e5ae sd a1,200(sp) + c003e676: f0aa sd a0,96(sp) + c003e678: f4ae sd a1,104(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003e4aa: 0005879b sext.w a5,a1 + c003e67a: 0005879b sext.w a5,a1 js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38939 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38947 if (JS_IsException(iter)) - c003e4ae: 4b99 li s7,6 + c003e67e: 4b99 li s7,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003e4b0: 862e mv a2,a1 + c003e680: 862e mv a2,a1 js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38939 - c003e4b2: fb778fe3 beq a5,s7,c003e470 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38941 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38947 + c003e682: fb778fe3 beq a5,s7,c003e640 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38949 if (!JS_IsUndefined(iter)) { - c003e4b6: 470d li a4,3 - c003e4b8: 10e78763 beq a5,a4,c003e5c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38942 + c003e686: 470d li a4,3 + c003e688: 10e78763 beq a5,a4,c003e796 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38950 JS_FreeValue(ctx, iter); - c003e4bc: 85aa mv a1,a0 - c003e4be: 8522 mv a0,s0 - c003e4c0: e78c90ef jal ra,c0007b38 + c003e68c: 85aa mv a1,a0 + c003e68e: 8522 mv a0,s0 + c003e690: d96c90ef jal ra,c0007c26 JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c003e4c4: 2481 sext.w s1,s1 - c003e4c6: 57fd li a5,-1 - c003e4c8: 08f49b63 bne s1,a5,c003e55e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c003e694: 2481 sext.w s1,s1 + c003e696: 57fd li a5,-1 + c003e698: 08f49b63 bne s1,a5,c003e72e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c003e4cc: 000b3783 ld a5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> - c003e4d0: 93b1 srli a5,a5,0x2c + c003e69c: 000b3783 ld a5,0(s6) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c003e6a0: 93b1 srli a5,a5,0x2c js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38943 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38951 if (JS_IsConstructor(ctx, this_val)) - c003e4d2: 8b85 andi a5,a5,1 - c003e4d4: c7c9 beqz a5,c003e55e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38944 + c003e6a2: 8b85 andi a5,a5,1 + c003e6a4: c7c9 beqz a5,c003e72e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38952 r = JS_CallConstructor(ctx, this_val, 0, NULL); - c003e4d6: 65c2 ld a1,16(sp) - c003e4d8: 6662 ld a2,24(sp) - c003e4da: 4701 li a4,0 - c003e4dc: 4681 li a3,0 - c003e4de: 8522 mv a0,s0 - c003e4e0: fc7f90ef jal ra,c00384a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38946 + c003e6a6: 65c2 ld a1,16(sp) + c003e6a8: 6662 ld a2,24(sp) + c003e6aa: 4701 li a4,0 + c003e6ac: 4681 li a3,0 + c003e6ae: 8522 mv a0,s0 + c003e6b0: fc7f90ef jal ra,c0038676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 r = JS_NewArray(ctx); - c003e4e4: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38947 + c003e6b4: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38955 if (JS_IsException(r)) - c003e4e6: 0005879b sext.w a5,a1 - c003e4ea: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38946 + c003e6b6: 0005879b sext.w a5,a1 + c003e6ba: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 r = JS_NewArray(ctx); - c003e4ec: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38947 + c003e6bc: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38955 if (JS_IsException(r)) - c003e4ee: 2ae78263 beq a5,a4,c003e792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38949 + c003e6be: 2ae78263 beq a5,a4,c003e962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38957 stack[0] = JS_DupValue(ctx, items); - c003e4f2: 7542 ld a0,48(sp) - c003e4f4: 75e2 ld a1,56(sp) - c003e4f6: 978c80ef jal ra,c000666e - c003e4fa: e2aa sd a0,320(sp) - c003e4fc: e6ae sd a1,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38950 + c003e6c2: 7542 ld a0,48(sp) + c003e6c4: 75e2 ld a1,56(sp) + c003e6c6: 896c80ef jal ra,c000675c + c003e6ca: e2aa sd a0,320(sp) + c003e6cc: e6ae sd a1,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38958 if (js_for_of_start(ctx, &stack[1], FALSE)) - c003e4fe: 4601 li a2,0 - c003e500: 0a8c addi a1,sp,336 - c003e502: 8522 mv a0,s0 - c003e504: f02fc0ef jal ra,c003ac06 - c003e508: 28051563 bnez a0,c003e792 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38967 + c003e6ce: 4601 li a2,0 + c003e6d0: 0a8c addi a1,sp,336 + c003e6d2: 8522 mv a0,s0 + c003e6d4: f02fc0ef jal ra,c003add6 + c003e6d8: 28051563 bnez a0,c003e962 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38975 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e50c: 6991 lui s3,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38952 + c003e6dc: 6991 lui s3,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38960 for (k = 0;; k++) { - c003e50e: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 + c003e6de: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38962 if (JS_IsException(v)) - c003e510: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38967 + c003e6e0: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38975 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e512: 099d addi s3,s3,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38953 + c003e6e2: 099d addi s3,s3,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003e514: 6776 ld a4,344(sp) - c003e516: 66d6 ld a3,336(sp) - c003e518: 6596 ld a1,320(sp) - c003e51a: 6636 ld a2,328(sp) - c003e51c: 105c addi a5,sp,36 - c003e51e: 8522 mv a0,s0 - c003e520: c12fc0ef jal ra,c003a932 - c003e524: e12a sd a0,128(sp) - c003e526: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 + c003e6e4: 6776 ld a4,344(sp) + c003e6e6: 66d6 ld a3,336(sp) + c003e6e8: 6596 ld a1,320(sp) + c003e6ea: 6636 ld a2,328(sp) + c003e6ec: 105c addi a5,sp,36 + c003e6ee: 8522 mv a0,s0 + c003e6f0: c12fc0ef jal ra,c003ab02 + c003e6f4: e12a sd a0,128(sp) + c003e6f6: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38962 if (JS_IsException(v)) - c003e528: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38953 + c003e6f8: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003e52c: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 + c003e6fc: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38962 if (JS_IsException(v)) - c003e52e: 09470063 beq a4,s4,c003e5ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38956 + c003e6fe: 09470063 beq a4,s4,c003e77e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38964 if (done) - c003e532: 5712 lw a4,36(sp) - c003e534: 24071563 bnez a4,c003e77e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38958 + c003e702: 5712 lw a4,36(sp) + c003e704: 24071563 bnez a4,c003e94e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38966 if (mapping) { - c003e538: 020a9763 bnez s5,c003e566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38953 + c003e708: 020a9763 bnez s5,c003e736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003e53c: 4b0a lw s6,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38967 + c003e70c: 4b0a lw s6,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38975 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e53e: c15a sw s6,128(sp) - c003e540: 670a ld a4,128(sp) - c003e542: 75c6 ld a1,112(sp) - c003e544: 884e mv a6,s3 - c003e546: 86e2 mv a3,s8 - c003e548: 8626 mv a2,s1 - c003e54a: 8522 mv a0,s0 - c003e54c: 9caeb0ef jal ra,c0029716 - c003e550: 04054f63 bltz a0,c003e5ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38952 + c003e70e: c15a sw s6,128(sp) + c003e710: 670a ld a4,128(sp) + c003e712: 75c6 ld a1,112(sp) + c003e714: 884e mv a6,s3 + c003e716: 86e2 mv a3,s8 + c003e718: 8626 mv a2,s1 + c003e71a: 8522 mv a0,s0 + c003e71c: 9caeb0ef jal ra,c00298e6 + c003e720: 04054f63 bltz a0,c003e77e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38960 for (k = 0;; k++) { - c003e554: 0c05 addi s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38953 + c003e724: 0c05 addi s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003e556: bf7d j c003e514 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38921 + c003e726: bf7d j c003e6e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38929 mapfn = JS_UNDEFINED; - c003e558: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38920 + c003e728: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38928 mapping = FALSE; - c003e55a: 4a81 li s5,0 - c003e55c: b73d j c003e48a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38946 + c003e72a: 4a81 li s5,0 + c003e72c: b73d j c003e65a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38954 r = JS_NewArray(ctx); - c003e55e: 8522 mv a0,s0 - c003e560: a5fd80ef jal ra,c0016fbe - c003e564: b741 j c003e4e4 + c003e72e: 8522 mv a0,s0 + c003e730: a5fd80ef jal ra,c001718e + c003e734: b741 j c003e6b4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e566: e982 sd zero,208(sp) + c003e736: e982 sd zero,208(sp) js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38960 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38968 args[1] = JS_NewInt32(ctx, k); - c003e568: c9e2 sw s8,208(sp) - c003e56a: 67ce ld a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 + c003e738: c9e2 sw s8,208(sp) + c003e73a: 67ce ld a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38969 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e56c: 6766 ld a4,88(sp) - c003e56e: 66c6 ld a3,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38959 + c003e73c: 6766 ld a4,88(sp) + c003e73e: 66c6 ld a3,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38967 args[0] = v; - c003e570: f62e sd a1,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 + c003e740: f62e sd a1,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38969 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e572: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38959 + c003e742: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38967 args[0] = v; - c003e574: f22a sd a0,288(sp) - c003e576: ea3e sd a5,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38960 + c003e744: f22a sd a0,288(sp) + c003e746: ea3e sd a5,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38968 args[1] = JS_NewInt32(ctx, k); - c003e578: fa3e sd a5,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 + c003e748: fa3e sd a5,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38969 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e57a: 12010813 addi a6,sp,288 - c003e57e: 4789 li a5,2 - c003e580: 864a mv a2,s2 - c003e582: 8522 mv a0,s0 - c003e584: ee02 sd zero,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38960 + c003e74a: 12010813 addi a6,sp,288 + c003e74e: 4789 li a5,2 + c003e750: 864a mv a2,s2 + c003e752: 8522 mv a0,s0 + c003e754: ee02 sd zero,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38968 args[1] = JS_NewInt32(ctx, k); - c003e586: fe02 sd zero,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 + c003e756: fe02 sd zero,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38969 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e588: 97efb0ef jal ra,c0039706 - c003e58c: ed2e sd a1,152(sp) - c003e58e: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38962 + c003e758: 97efb0ef jal ra,c00398d6 + c003e75c: ed2e sd a1,152(sp) + c003e75e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38970 JS_FreeValue(ctx, v); - c003e590: 662a ld a2,136(sp) - c003e592: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38961 + c003e760: 662a ld a2,136(sp) + c003e762: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38969 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e594: e92a sd a0,144(sp) - c003e596: 00050b1b sext.w s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38962 + c003e764: e92a sd a0,144(sp) + c003e766: 00050b1b sext.w s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38970 JS_FreeValue(ctx, v); - c003e59a: 8522 mv a0,s0 - c003e59c: d9cc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38963 + c003e76a: 8522 mv a0,s0 + c003e76c: cbac90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38971 v = v2; - c003e5a0: 674a ld a4,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38964 + c003e770: 674a ld a4,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38972 if (JS_IsException(v)) - c003e5a2: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38963 + c003e772: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38971 v = v2; - c003e5a4: e13a sd a4,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38964 + c003e774: e13a sd a4,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38972 if (JS_IsException(v)) - c003e5a6: 0007871b sext.w a4,a5 - c003e5aa: f9471ae3 bne a4,s4,c003e53e + c003e776: 0007871b sext.w a4,a5 + c003e77a: f9471ae3 bne a4,s4,c003e70e JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003e5ae: 6636 ld a2,328(sp) + c003e77e: 6636 ld a2,328(sp) js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38932 arrayLike = JS_UNDEFINED; - c003e5b0: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39010 + c003e780: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39018 if (!JS_IsUndefined(stack[0])) - c003e5b2: 0006079b sext.w a5,a2 - c003e5b6: 1b378c63 beq a5,s3,c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39011 + c003e782: 0006079b sext.w a5,a2 + c003e786: 1b378c63 beq a5,s3,c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39019 JS_IteratorClose(ctx, stack[0], TRUE); - c003e5ba: 6596 ld a1,320(sp) - c003e5bc: 4685 li a3,1 - c003e5be: 8522 mv a0,s0 - c003e5c0: bc8d50ef jal ra,c0013988 - c003e5c4: a26d j c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38972 + c003e78a: 6596 ld a1,320(sp) + c003e78c: 4685 li a3,1 + c003e78e: 8522 mv a0,s0 + c003e790: ae6d50ef jal ra,c0013a76 + c003e794: a26d j c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38980 arrayLike = JS_ToObject(ctx, items); - c003e5c6: 7662 ld a2,56(sp) - c003e5c8: 75c2 ld a1,48(sp) - c003e5ca: 8522 mv a0,s0 - c003e5cc: 820ea0ef jal ra,c00285ec - c003e5d0: f12a sd a0,160(sp) - c003e5d2: f52e sd a1,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38973 + c003e796: 7662 ld a2,56(sp) + c003e798: 75c2 ld a1,48(sp) + c003e79a: 8522 mv a0,s0 + c003e79c: 820ea0ef jal ra,c00287bc + c003e7a0: f12a sd a0,160(sp) + c003e7a2: f52e sd a1,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38981 if (JS_IsException(arrayLike)) - c003e5d4: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38972 + c003e7a4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38980 arrayLike = JS_ToObject(ctx, items); - c003e5d8: 862a mv a2,a0 - c003e5da: 8a2e mv s4,a1 - c003e5dc: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38973 + c003e7a8: 862a mv a2,a0 + c003e7aa: 8a2e mv s4,a1 + c003e7ac: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38981 if (JS_IsException(arrayLike)) - c003e5de: e9778ae3 beq a5,s7,c003e472 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38975 + c003e7ae: e9778ae3 beq a5,s7,c003e642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38983 if (js_get_length64(ctx, &len, arrayLike) < 0) - c003e5e2: 86ae mv a3,a1 - c003e5e4: 8522 mv a0,s0 - c003e5e6: 102c addi a1,sp,40 - c003e5e8: a56e00ef jal ra,c001e83e - c003e5ec: e80543e3 bltz a0,c003e472 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38977 + c003e7b2: 86ae mv a3,a1 + c003e7b4: 8522 mv a0,s0 + c003e7b6: 102c addi a1,sp,40 + c003e7b8: a56e00ef jal ra,c001ea0e + c003e7bc: e80543e3 bltz a0,c003e642 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38985 v = JS_NewInt64(ctx, len); - c003e5f0: 7722 ld a4,40(sp) + c003e7c0: 7722 ld a4,40(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003e5f2: 0007079b sext.w a5,a4 - c003e5f6: 0cf71863 bne a4,a5,c003e6c6 + c003e7c2: 0007079b sext.w a5,a4 + c003e7c6: 0cf71863 bne a4,a5,c003e896 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e5fa: d382 sw zero,228(sp) - c003e5fc: d1be sw a5,224(sp) - c003e5fe: 770e ld a4,224(sp) - c003e600: f582 sd zero,232(sp) - c003e602: f23a sd a4,288(sp) - c003e604: 4701 li a4,0 + c003e7ca: d382 sw zero,228(sp) + c003e7cc: d1be sw a5,224(sp) + c003e7ce: 770e ld a4,224(sp) + c003e7d0: f582 sd zero,232(sp) + c003e7d2: f23a sd a4,288(sp) + c003e7d4: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003e606: 12f12023 sw a5,288(sp) - c003e60a: 3792 fld fa5,288(sp) - c003e60c: e53a sd a4,136(sp) + c003e7d6: 12f12023 sw a5,288(sp) + c003e7da: 3792 fld fa5,288(sp) + c003e7dc: e53a sd a4,136(sp) js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38978 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38986 args[0] = v; - c003e60e: f63a sd a4,296(sp) + c003e7de: f63a sd a4,296(sp) JS_IsConstructor(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9848 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9856 if (JS_VALUE_GET_TAG(val) != JS_TAG_OBJECT) - c003e610: a13e fsd fa5,128(sp) - c003e612: 2481 sext.w s1,s1 - c003e614: 57fd li a5,-1 - c003e616: 0cf49063 bne s1,a5,c003e6d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9851 + c003e7e0: a13e fsd fa5,128(sp) + c003e7e2: 2481 sext.w s1,s1 + c003e7e4: 57fd li a5,-1 + c003e7e6: 0cf49063 bne s1,a5,c003e8a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:9859 return p->is_constructor; - c003e61a: 000b3783 ld a5,0(s6) - c003e61e: 93b1 srli a5,a5,0x2c + c003e7ea: 000b3783 ld a5,0(s6) + c003e7ee: 93b1 srli a5,a5,0x2c js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38979 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38987 if (JS_IsConstructor(ctx, this_val)) { - c003e620: 8b85 andi a5,a5,1 - c003e622: cbd5 beqz a5,c003e6d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38980 + c003e7f0: 8b85 andi a5,a5,1 + c003e7f2: cbd5 beqz a5,c003e8a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38988 r = JS_CallConstructor(ctx, this_val, 1, args); - c003e624: 65c2 ld a1,16(sp) - c003e626: 6662 ld a2,24(sp) - c003e628: 1218 addi a4,sp,288 - c003e62a: 4685 li a3,1 - c003e62c: 8522 mv a0,s0 - c003e62e: e79f90ef jal ra,c00384a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38982 + c003e7f4: 65c2 ld a1,16(sp) + c003e7f6: 6662 ld a2,24(sp) + c003e7f8: 1218 addi a4,sp,288 + c003e7fa: 4685 li a3,1 + c003e7fc: 8522 mv a0,s0 + c003e7fe: e79f90ef jal ra,c0038676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38990 r = js_array_constructor(ctx, JS_UNDEFINED, 1, args); - c003e632: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38984 + c003e802: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38992 JS_FreeValue(ctx, v); - c003e634: 662a ld a2,136(sp) - c003e636: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38982 + c003e804: 662a ld a2,136(sp) + c003e806: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38990 r = js_array_constructor(ctx, JS_UNDEFINED, 1, args); - c003e638: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38984 + c003e808: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38992 JS_FreeValue(ctx, v); - c003e63a: 8522 mv a0,s0 - c003e63c: cfcc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38985 + c003e80a: 8522 mv a0,s0 + c003e80c: c1ac90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38993 if (JS_IsException(r)) - c003e640: 0004879b sext.w a5,s1 - c003e644: 4719 li a4,6 - c003e646: 12e78463 beq a5,a4,c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39000 + c003e810: 0004879b sext.w a5,s1 + c003e814: 4719 li a4,6 + c003e816: 12e78463 beq a5,a4,c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39008 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e64a: 6b11 lui s6,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38987 + c003e81a: 6b11 lui s6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38995 for(k = 0; k < len; k++) { - c003e64c: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38989 + c003e81c: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38997 if (JS_IsException(v)) - c003e64e: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39000 + c003e81e: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39008 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e650: 0b1d addi s6,s6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38987 (discriminator 1) + c003e820: 0b1d addi s6,s6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38995 (discriminator 1) for(k = 0; k < len; k++) { - c003e652: 77a2 ld a5,40(sp) - c003e654: 08fc4c63 blt s8,a5,c003e6ec + c003e822: 77a2 ld a5,40(sp) + c003e824: 08fc4c63 blt s8,a5,c003e8bc JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:537 if (val <= 0x7fffffff) { - c003e658: 000c071b sext.w a4,s8 - c003e65c: 12074363 bltz a4,c003e782 + c003e828: 000c071b sext.w a4,s8 + c003e82c: 12074363 bltz a4,c003e952 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e660: 10012a23 sw zero,276(sp) - c003e664: 10e12823 sw a4,272(sp) - c003e668: 67d2 ld a5,272(sp) - c003e66a: ee02 sd zero,280(sp) - c003e66c: e602 sd zero,264(sp) - c003e66e: e23e sd a5,256(sp) - c003e670: 4781 li a5,0 + c003e830: 10012a23 sw zero,276(sp) + c003e834: 10e12823 sw a4,272(sp) + c003e838: 67d2 ld a5,272(sp) + c003e83a: ee02 sd zero,280(sp) + c003e83c: e602 sd zero,264(sp) + c003e83e: e23e sd a5,256(sp) + c003e840: 4781 li a5,0 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:542 return v; - c003e672: 10e12023 sw a4,256(sp) + c003e842: 10e12023 sw a4,256(sp) js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39005 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39013 if (JS_SetProperty(ctx, r, JS_ATOM_length, JS_NewUint32(ctx, k)) < 0) - c003e676: 6712 ld a4,256(sp) - c003e678: 75c6 ld a1,112(sp) - c003e67a: 03000693 li a3,48 - c003e67e: 8626 mv a2,s1 - c003e680: 8522 mv a0,s0 - c003e682: a77f10ef jal ra,c00300f8 - c003e686: 0e054463 bltz a0,c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39016 + c003e846: 6712 ld a4,256(sp) + c003e848: 75c6 ld a1,112(sp) + c003e84a: 03000693 li a3,48 + c003e84e: 8626 mv a2,s1 + c003e850: 8522 mv a0,s0 + c003e852: a77f10ef jal ra,c00302c8 + c003e856: 0e054463 bltz a0,c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39024 JS_FreeValue(ctx, arrayLike); - c003e68a: 758a ld a1,160(sp) - c003e68c: 864e mv a2,s3 - c003e68e: 8522 mv a0,s0 - c003e690: ca8c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39017 + c003e85a: 758a ld a1,160(sp) + c003e85c: 864e mv a2,s3 + c003e85e: 8522 mv a0,s0 + c003e860: bc6c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39025 JS_FreeValue(ctx, stack[0]); - c003e694: 6596 ld a1,320(sp) - c003e696: 6636 ld a2,328(sp) - c003e698: 8522 mv a0,s0 - c003e69a: c9ec90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39018 + c003e864: 6596 ld a1,320(sp) + c003e866: 6636 ld a2,328(sp) + c003e868: 8522 mv a0,s0 + c003e86a: bbcc90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39026 JS_FreeValue(ctx, stack[1]); - c003e69e: 65d6 ld a1,336(sp) - c003e6a0: 6676 ld a2,344(sp) - c003e6a2: 8522 mv a0,s0 - c003e6a4: c94c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39020 -} - c003e6a8: 70fa ld ra,440(sp) - c003e6aa: 745a ld s0,432(sp) - c003e6ac: 7546 ld a0,112(sp) - c003e6ae: 791a ld s2,416(sp) - c003e6b0: 69fa ld s3,408(sp) - c003e6b2: 6a5a ld s4,400(sp) - c003e6b4: 6aba ld s5,392(sp) - c003e6b6: 6b1a ld s6,384(sp) - c003e6b8: 7bf6 ld s7,376(sp) - c003e6ba: 7c56 ld s8,368(sp) - c003e6bc: 7cb6 ld s9,360(sp) - c003e6be: 85a6 mv a1,s1 - c003e6c0: 74ba ld s1,424(sp) - c003e6c2: 6139 addi sp,sp,448 - c003e6c4: 8082 ret + c003e86e: 65d6 ld a1,336(sp) + c003e870: 6676 ld a2,344(sp) + c003e872: 8522 mv a0,s0 + c003e874: bb2c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39028 +} + c003e878: 70fa ld ra,440(sp) + c003e87a: 745a ld s0,432(sp) + c003e87c: 7546 ld a0,112(sp) + c003e87e: 791a ld s2,416(sp) + c003e880: 69fa ld s3,408(sp) + c003e882: 6a5a ld s4,400(sp) + c003e884: 6aba ld s5,392(sp) + c003e886: 6b1a ld s6,384(sp) + c003e888: 7bf6 ld s7,376(sp) + c003e88a: 7c56 ld s8,368(sp) + c003e88c: 7cb6 ld s9,360(sp) + c003e88e: 85a6 mv a1,s1 + c003e890: 74ba ld s1,424(sp) + c003e892: 6139 addi sp,sp,448 + c003e894: 8082 ret JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003e6c6: d22777d3 fcvt.d.l fa5,a4 - c003e6ca: 471d li a4,7 - c003e6cc: e20787d3 fmv.x.d a5,fa5 + c003e896: d22777d3 fcvt.d.l fa5,a4 + c003e89a: 471d li a4,7 + c003e89c: e20787d3 fmv.x.d a5,fa5 js_array_from(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003e6d0: b23e fsd fa5,288(sp) - c003e6d2: 2781 sext.w a5,a5 - c003e6d4: bf0d j c003e606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38982 + c003e8a0: b23e fsd fa5,288(sp) + c003e8a2: 2781 sext.w a5,a5 + c003e8a4: bf0d j c003e7d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38990 r = js_array_constructor(ctx, JS_UNDEFINED, 1, args); - c003e6d6: 478d li a5,3 - c003e6d8: 1218 addi a4,sp,288 - c003e6da: 4685 li a3,1 - c003e6dc: 460d li a2,3 - c003e6de: 8522 mv a0,s0 - c003e6e0: 4581 li a1,0 - c003e6e2: ea02 sd zero,272(sp) - c003e6e4: ee3e sd a5,280(sp) - c003e6e6: b83f10ef jal ra,c0030268 - c003e6ea: b7a1 j c003e632 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38988 + c003e8a6: 478d li a5,3 + c003e8a8: 1218 addi a4,sp,288 + c003e8aa: 4685 li a3,1 + c003e8ac: 460d li a2,3 + c003e8ae: 8522 mv a0,s0 + c003e8b0: 4581 li a1,0 + c003e8b2: ea02 sd zero,272(sp) + c003e8b4: ee3e sd a5,280(sp) + c003e8b6: b83f10ef jal ra,c0030438 + c003e8ba: b7a1 j c003e802 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38996 v = JS_GetPropertyInt64(ctx, arrayLike, k); - c003e6ec: 758a ld a1,160(sp) - c003e6ee: 86e2 mv a3,s8 - c003e6f0: 8652 mv a2,s4 - c003e6f2: 8522 mv a0,s0 - c003e6f4: fdaf30ef jal ra,c0031ece - c003e6f8: e12a sd a0,128(sp) - c003e6fa: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38989 + c003e8bc: 758a ld a1,160(sp) + c003e8be: 86e2 mv a3,s8 + c003e8c0: 8652 mv a2,s4 + c003e8c2: 8522 mv a0,s0 + c003e8c4: fdaf30ef jal ra,c003209e + c003e8c8: e12a sd a0,128(sp) + c003e8ca: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38997 if (JS_IsException(v)) - c003e6fc: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38988 + c003e8cc: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38996 v = JS_GetPropertyInt64(ctx, arrayLike, k); - c003e700: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38989 + c003e8d0: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38997 if (JS_IsException(v)) - c003e702: 07770663 beq a4,s7,c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38991 + c003e8d2: 07770663 beq a4,s7,c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38999 if (mapping) { - c003e706: 020a9063 bnez s5,c003e726 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38988 + c003e8d6: 020a9063 bnez s5,c003e8f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38996 v = JS_GetPropertyInt64(ctx, arrayLike, k); - c003e70a: 4c8a lw s9,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39000 + c003e8da: 4c8a lw s9,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39008 if (JS_DefinePropertyValueInt64(ctx, r, k, v, - c003e70c: c166 sw s9,128(sp) - c003e70e: 670a ld a4,128(sp) - c003e710: 75c6 ld a1,112(sp) - c003e712: 885a mv a6,s6 - c003e714: 86e2 mv a3,s8 - c003e716: 8626 mv a2,s1 - c003e718: 8522 mv a0,s0 - c003e71a: ffdea0ef jal ra,c0029716 - c003e71e: 04054863 bltz a0,c003e76e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38987 (discriminator 2) + c003e8dc: c166 sw s9,128(sp) + c003e8de: 670a ld a4,128(sp) + c003e8e0: 75c6 ld a1,112(sp) + c003e8e2: 885a mv a6,s6 + c003e8e4: 86e2 mv a3,s8 + c003e8e6: 8626 mv a2,s1 + c003e8e8: 8522 mv a0,s0 + c003e8ea: ffdea0ef jal ra,c00298e6 + c003e8ee: 04054863 bltz a0,c003e93e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38995 (discriminator 2) for(k = 0; k < len; k++) { - c003e722: 0c05 addi s8,s8,1 - c003e724: b73d j c003e652 + c003e8f2: 0c05 addi s8,s8,1 + c003e8f4: b73d j c003e822 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e726: f982 sd zero,240(sp) + c003e8f6: f982 sd zero,240(sp) js_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38993 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39001 args[1] = JS_NewInt32(ctx, k); - c003e728: d9e2 sw s8,240(sp) - c003e72a: 77ce ld a5,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38994 + c003e8f8: d9e2 sw s8,240(sp) + c003e8fa: 77ce ld a5,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39002 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e72c: 6766 ld a4,88(sp) - c003e72e: 66c6 ld a3,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38992 + c003e8fc: 6766 ld a4,88(sp) + c003e8fe: 66c6 ld a3,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39000 args[0] = v; - c003e730: f62e sd a1,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38994 + c003e900: f62e sd a1,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39002 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e732: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38992 + c003e902: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39000 args[0] = v; - c003e734: f22a sd a0,288(sp) - c003e736: ea3e sd a5,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38993 + c003e904: f22a sd a0,288(sp) + c003e906: ea3e sd a5,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39001 args[1] = JS_NewInt32(ctx, k); - c003e738: fa3e sd a5,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38994 + c003e908: fa3e sd a5,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39002 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e73a: 12010813 addi a6,sp,288 - c003e73e: 4789 li a5,2 - c003e740: 864a mv a2,s2 - c003e742: 8522 mv a0,s0 - c003e744: ee02 sd zero,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38993 + c003e90a: 12010813 addi a6,sp,288 + c003e90e: 4789 li a5,2 + c003e910: 864a mv a2,s2 + c003e912: 8522 mv a0,s0 + c003e914: ee02 sd zero,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39001 args[1] = JS_NewInt32(ctx, k); - c003e746: fe02 sd zero,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38994 + c003e916: fe02 sd zero,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39002 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e748: fbffa0ef jal ra,c0039706 - c003e74c: ed2e sd a1,152(sp) - c003e74e: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38995 + c003e918: fbffa0ef jal ra,c00398d6 + c003e91c: ed2e sd a1,152(sp) + c003e91e: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39003 JS_FreeValue(ctx, v); - c003e750: 662a ld a2,136(sp) - c003e752: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38994 + c003e920: 662a ld a2,136(sp) + c003e922: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39002 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003e754: e92a sd a0,144(sp) - c003e756: 00050c9b sext.w s9,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38995 + c003e924: e92a sd a0,144(sp) + c003e926: 00050c9b sext.w s9,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39003 JS_FreeValue(ctx, v); - c003e75a: 8522 mv a0,s0 - c003e75c: bdcc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38996 + c003e92a: 8522 mv a0,s0 + c003e92c: afac90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39004 v = v2; - c003e760: 674a ld a4,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38997 + c003e930: 674a ld a4,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39005 if (JS_IsException(v)) - c003e762: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38996 + c003e932: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39004 v = v2; - c003e764: e13a sd a4,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38997 + c003e934: e13a sd a4,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39005 if (JS_IsException(v)) - c003e766: 0007871b sext.w a4,a5 - c003e76a: fb7711e3 bne a4,s7,c003e70c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39013 + c003e936: 0007871b sext.w a4,a5 + c003e93a: fb7711e3 bne a4,s7,c003e8dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39021 JS_FreeValue(ctx, r); - c003e76e: 75c6 ld a1,112(sp) - c003e770: 8626 mv a2,s1 - c003e772: 8522 mv a0,s0 - c003e774: bc4c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39014 + c003e93e: 75c6 ld a1,112(sp) + c003e940: 8626 mv a2,s1 + c003e942: 8522 mv a0,s0 + c003e944: ae2c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39022 r = JS_EXCEPTION; - c003e778: 4499 li s1,6 - c003e77a: f882 sd zero,112(sp) - c003e77c: b739 j c003e68a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38924 + c003e948: 4499 li s1,6 + c003e94a: f882 sd zero,112(sp) + c003e94c: b739 j c003e85a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38932 arrayLike = JS_UNDEFINED; - c003e77e: 498d li s3,3 - c003e780: bde1 j c003e658 + c003e94e: 498d li s3,3 + c003e950: bde1 j c003e828 JS_NewUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:540 v = __JS_NewFloat64(ctx, val); - c003e782: d21c07d3 fcvt.d.wu fa5,s8 - c003e786: 479d li a5,7 - c003e788: e2078753 fmv.x.d a4,fa5 + c003e952: d21c07d3 fcvt.d.wu fa5,s8 + c003e956: 479d li a5,7 + c003e958: e2078753 fmv.x.d a4,fa5 js_array_from(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003e78c: a23e fsd fa5,256(sp) - c003e78e: 2701 sext.w a4,a4 - c003e790: b5cd j c003e672 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38924 - c003e792: 498d li s3,3 - c003e794: bfe9 j c003e76e - -00000000c003e796 : + c003e95c: a23e fsd fa5,256(sp) + c003e95e: 2701 sext.w a4,a4 + c003e960: b5cd j c003e842 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38932 + c003e962: 498d li s3,3 + c003e964: bfe9 j c003e93e + +00000000c003e966 : JS_FlattenIntoArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40340 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40348 { - c003e796: 7111 addi sp,sp,-256 - c003e798: e5d6 sd s5,200(sp) - c003e79a: e1da sd s6,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40381 + c003e966: 7111 addi sp,sp,-256 + c003e968: e5d6 sd s5,200(sp) + c003e96a: e1da sd s6,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40389 if (targetIndex >= MAX_SAFE_INTEGER) { - c003e79c: 7afd lui s5,0xfffff -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40385 + c003e96c: 7afd lui s5,0xfffff +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40393 if (JS_DefinePropertyValueInt64(ctx, target, targetIndex, element, - c003e79e: 6b11 lui s6,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40340 -{ - c003e7a0: f9a2 sd s0,240(sp) - c003e7a2: f5a6 sd s1,232(sp) - c003e7a4: f1ca sd s2,224(sp) - c003e7a6: edce sd s3,216(sp) - c003e7a8: e9d2 sd s4,208(sp) - c003e7aa: fd5e sd s7,184(sp) - c003e7ac: fd86 sd ra,248(sp) - c003e7ae: 84aa mv s1,a0 - c003e7b0: f82e sd a1,48(sp) - c003e7b2: fc32 sd a2,56(sp) - c003e7b4: f036 sd a3,32(sp) - c003e7b6: f43a sd a4,40(sp) - c003e7b8: 8a3e mv s4,a5 - c003e7ba: 89c6 mv s3,a7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40350 + c003e96e: 6b11 lui s6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40348 +{ + c003e970: f9a2 sd s0,240(sp) + c003e972: f5a6 sd s1,232(sp) + c003e974: f1ca sd s2,224(sp) + c003e976: edce sd s3,216(sp) + c003e978: e9d2 sd s4,208(sp) + c003e97a: fd5e sd s7,184(sp) + c003e97c: fd86 sd ra,248(sp) + c003e97e: 84aa mv s1,a0 + c003e980: f82e sd a1,48(sp) + c003e982: fc32 sd a2,56(sp) + c003e984: f036 sd a3,32(sp) + c003e986: f43a sd a4,40(sp) + c003e988: 8a3e mv s4,a5 + c003e98a: 89c6 mv s3,a7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 for (sourceIndex = 0; sourceIndex < sourceLen; sourceIndex++) { - c003e7bc: 8442 mv s0,a6 - c003e7be: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40381 + c003e98c: 8442 mv s0,a6 + c003e98e: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40389 if (targetIndex >= MAX_SAFE_INTEGER) { - c003e7c0: 00bada93 srli s5,s5,0xb -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40385 + c003e990: 00bada93 srli s5,s5,0xb +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40393 if (JS_DefinePropertyValueInt64(ctx, target, targetIndex, element, - c003e7c4: 0b1d addi s6,s6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40371 + c003e994: 0b1d addi s6,s6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40379 targetIndex = JS_FlattenIntoArray(ctx, target, element, - c003e7c6: fff88b9b addiw s7,a7,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40350 (discriminator 1) + c003e996: fff88b9b addiw s7,a7,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 (discriminator 1) for (sourceIndex = 0; sourceIndex < sourceLen; sourceIndex++) { - c003e7ca: 01494e63 blt s2,s4,c003e7e6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40395 -} - c003e7ce: 70ee ld ra,248(sp) - c003e7d0: 8522 mv a0,s0 - c003e7d2: 744e ld s0,240(sp) - c003e7d4: 74ae ld s1,232(sp) - c003e7d6: 790e ld s2,224(sp) - c003e7d8: 69ee ld s3,216(sp) - c003e7da: 6a4e ld s4,208(sp) - c003e7dc: 6aae ld s5,200(sp) - c003e7de: 6b0e ld s6,192(sp) - c003e7e0: 7bea ld s7,184(sp) - c003e7e2: 6111 addi sp,sp,256 - c003e7e4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40351 + c003e99a: 01494e63 blt s2,s4,c003e9b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40403 +} + c003e99e: 70ee ld ra,248(sp) + c003e9a0: 8522 mv a0,s0 + c003e9a2: 744e ld s0,240(sp) + c003e9a4: 74ae ld s1,232(sp) + c003e9a6: 790e ld s2,224(sp) + c003e9a8: 69ee ld s3,216(sp) + c003e9aa: 6a4e ld s4,208(sp) + c003e9ac: 6aae ld s5,200(sp) + c003e9ae: 6b0e ld s6,192(sp) + c003e9b0: 7bea ld s7,184(sp) + c003e9b2: 6111 addi sp,sp,256 + c003e9b4: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40359 present = JS_TryGetPropertyInt64(ctx, source, sourceIndex, &element); - c003e7e6: 7582 ld a1,32(sp) - c003e7e8: 7622 ld a2,40(sp) - c003e7ea: 0898 addi a4,sp,80 - c003e7ec: 86ca mv a3,s2 - c003e7ee: 8526 mv a0,s1 - c003e7f0: cedf30ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40352 + c003e9b6: 7582 ld a1,32(sp) + c003e9b8: 7622 ld a2,40(sp) + c003e9ba: 0898 addi a4,sp,80 + c003e9bc: 86ca mv a3,s2 + c003e9be: 8526 mv a0,s1 + c003e9c0: cedf30ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40360 if (present < 0) - c003e7f4: 00055463 bgez a0,c003e7fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40394 + c003e9c4: 00055463 bgez a0,c003e9cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40402 return -1; - c003e7f8: 547d li s0,-1 - c003e7fa: bfd1 j c003e7ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40354 + c003e9c8: 547d li s0,-1 + c003e9ca: bfd1 j c003e99e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40362 if (!present) - c003e7fc: c179 beqz a0,c003e8c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40356 + c003e9cc: c179 beqz a0,c003ea92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40364 if (!JS_IsUndefined(mapperFunction)) { - c003e7fe: 10812703 lw a4,264(sp) - c003e802: 478d li a5,3 - c003e804: 06f70263 beq a4,a5,c003e868 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 + c003e9ce: 10812703 lw a4,264(sp) + c003e9d2: 478d li a5,3 + c003e9d4: 06f70263 beq a4,a5,c003ea38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 JSValueConst args[3] = { element, JS_NewInt64(ctx, sourceIndex), source }; - c003e808: 67c6 ld a5,80(sp) + c003e9d8: 67c6 ld a5,80(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003e80a: 0009071b sext.w a4,s2 + c003e9da: 0009071b sext.w a4,s2 JS_FlattenIntoArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 - c003e80e: e13e sd a5,128(sp) - c003e810: 67e6 ld a5,88(sp) - c003e812: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 + c003e9de: e13e sd a5,128(sp) + c003e9e0: 67e6 ld a5,88(sp) + c003e9e2: e53e sd a5,136(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 - c003e814: 0ae91963 bne s2,a4,c003e8c6 + c003e9e4: 0ae91963 bne s2,a4,c003ea96 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003e818: da82 sw zero,116(sp) - c003e81a: d8ca sw s2,112(sp) - c003e81c: 77c6 ld a5,112(sp) - c003e81e: f482 sd zero,104(sp) - c003e820: f0be sd a5,96(sp) - c003e822: 4781 li a5,0 + c003e9e8: da82 sw zero,116(sp) + c003e9ea: d8ca sw s2,112(sp) + c003e9ec: 77c6 ld a5,112(sp) + c003e9ee: f482 sd zero,104(sp) + c003e9f0: f0be sd a5,96(sp) + c003e9f2: 4781 li a5,0 JS_FlattenIntoArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 - c003e824: ed3e sd a5,152(sp) - c003e826: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 + c003e9f4: ed3e sd a5,152(sp) + c003e9f6: 7782 ld a5,32(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003e828: d0ba sw a4,96(sp) - c003e82a: 3786 fld fa5,96(sp) + c003e9f8: d0ba sw a4,96(sp) + c003e9fa: 3786 fld fa5,96(sp) JS_FlattenIntoArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 - c003e82c: f13e sd a5,160(sp) - c003e82e: 77a2 ld a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 + c003e9fc: f13e sd a5,160(sp) + c003e9fe: 77a2 ld a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 element = JS_Call(ctx, mapperFunction, thisArg, 3, args); - c003e830: 6772 ld a4,280(sp) - c003e832: 66d2 ld a3,272(sp) - c003e834: 6632 ld a2,264(sp) - c003e836: 6592 ld a1,256(sp) - c003e838: 08010813 addi a6,sp,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 + c003ea00: 6772 ld a4,280(sp) + c003ea02: 66d2 ld a3,272(sp) + c003ea04: 6632 ld a2,264(sp) + c003ea06: 6592 ld a1,256(sp) + c003ea08: 08010813 addi a6,sp,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 JSValueConst args[3] = { element, JS_NewInt64(ctx, sourceIndex), source }; - c003e83c: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 + c003ea0c: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 element = JS_Call(ctx, mapperFunction, thisArg, 3, args); - c003e83e: 8526 mv a0,s1 - c003e840: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40357 + c003ea0e: 8526 mv a0,s1 + c003ea10: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 JSValueConst args[3] = { element, JS_NewInt64(ctx, sourceIndex), source }; - c003e842: a93e fsd fa5,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 + c003ea12: a93e fsd fa5,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 element = JS_Call(ctx, mapperFunction, thisArg, 3, args); - c003e844: ec3fa0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40359 + c003ea14: ec3fa0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40367 JS_FreeValue(ctx, (JSValue)args[0]); - c003e848: 662a ld a2,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 + c003ea18: 662a ld a2,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 element = JS_Call(ctx, mapperFunction, thisArg, 3, args); - c003e84a: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40359 + c003ea1a: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40367 JS_FreeValue(ctx, (JSValue)args[0]); - c003e84c: 658a ld a1,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 + c003ea1c: 658a ld a1,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 element = JS_Call(ctx, mapperFunction, thisArg, 3, args); - c003e84e: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40359 + c003ea1e: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40367 JS_FreeValue(ctx, (JSValue)args[0]); - c003e850: 8526 mv a0,s1 - c003e852: ae6c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40360 + c003ea20: 8526 mv a0,s1 + c003ea22: a04c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40368 JS_FreeValue(ctx, (JSValue)args[1]); - c003e856: 65ca ld a1,144(sp) - c003e858: 666a ld a2,152(sp) - c003e85a: 8526 mv a0,s1 - c003e85c: adcc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40361 + c003ea26: 65ca ld a1,144(sp) + c003ea28: 666a ld a2,152(sp) + c003ea2a: 8526 mv a0,s1 + c003ea2c: 9fac90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40369 if (JS_IsException(element)) - c003e860: 4766 lw a4,88(sp) - c003e862: 4799 li a5,6 - c003e864: f8f70ae3 beq a4,a5,c003e7f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40364 + c003ea30: 4766 lw a4,88(sp) + c003ea32: 4799 li a5,6 + c003ea34: f8f70ae3 beq a4,a5,c003e9c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40372 if (depth > 0) { - c003e868: 07305763 blez s3,c003e8d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40365 + c003ea38: 07305763 blez s3,c003eaa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40373 is_array = JS_IsArray(ctx, element); - c003e86c: 65c6 ld a1,80(sp) - c003e86e: 6666 ld a2,88(sp) - c003e870: 8526 mv a0,s1 - c003e872: a5dd50ef jal ra,c00142ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40366 + c003ea3c: 65c6 ld a1,80(sp) + c003ea3e: 6666 ld a2,88(sp) + c003ea40: 8526 mv a0,s1 + c003ea42: 97bd50ef jal ra,c00143bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40374 if (is_array < 0) - c003e876: 06054963 bltz a0,c003e8e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40368 + c003ea46: 06054963 bltz a0,c003eab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40376 if (is_array) { - c003e87a: cd31 beqz a0,c003e8d6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40369 + c003ea4a: cd31 beqz a0,c003eaa6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40377 if (js_get_length64(ctx, &elementLen, element) < 0) - c003e87c: 6646 ld a2,80(sp) - c003e87e: 66e6 ld a3,88(sp) - c003e880: 00ac addi a1,sp,72 - c003e882: 8526 mv a0,s1 - c003e884: fbbdf0ef jal ra,c001e83e - c003e888: 06054063 bltz a0,c003e8e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40374 + c003ea4c: 6646 ld a2,80(sp) + c003ea4e: 66e6 ld a3,88(sp) + c003ea50: 00ac addi a1,sp,72 + c003ea52: 8526 mv a0,s1 + c003ea54: fbbdf0ef jal ra,c001ea0e + c003ea58: 06054063 bltz a0,c003eab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40382 JS_UNDEFINED, JS_UNDEFINED); - c003e88c: 470d li a4,3 - c003e88e: f4ba sd a4,104(sp) - c003e890: e53a sd a4,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40371 + c003ea5c: 470d li a4,3 + c003ea5e: f4ba sd a4,104(sp) + c003ea60: e53a sd a4,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40379 targetIndex = JS_FlattenIntoArray(ctx, target, element, - c003e892: ec3a sd a4,24(sp) - c003e894: e43a sd a4,8(sp) - c003e896: 67a6 ld a5,72(sp) - c003e898: 66c6 ld a3,80(sp) - c003e89a: 6766 ld a4,88(sp) - c003e89c: 75c2 ld a1,48(sp) - c003e89e: 7662 ld a2,56(sp) - c003e8a0: 8822 mv a6,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40374 + c003ea62: ec3a sd a4,24(sp) + c003ea64: e43a sd a4,8(sp) + c003ea66: 67a6 ld a5,72(sp) + c003ea68: 66c6 ld a3,80(sp) + c003ea6a: 6766 ld a4,88(sp) + c003ea6c: 75c2 ld a1,48(sp) + c003ea6e: 7662 ld a2,56(sp) + c003ea70: 8822 mv a6,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40382 JS_UNDEFINED, JS_UNDEFINED); - c003e8a2: f082 sd zero,96(sp) - c003e8a4: e102 sd zero,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40371 + c003ea72: f082 sd zero,96(sp) + c003ea74: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40379 targetIndex = JS_FlattenIntoArray(ctx, target, element, - c003e8a6: e802 sd zero,16(sp) - c003e8a8: e002 sd zero,0(sp) - c003e8aa: 88de mv a7,s7 - c003e8ac: 8526 mv a0,s1 - c003e8ae: ee9ff0ef jal ra,c003e796 - c003e8b2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40375 + c003ea76: e802 sd zero,16(sp) + c003ea78: e002 sd zero,0(sp) + c003ea7a: 88de mv a7,s7 + c003ea7c: 8526 mv a0,s1 + c003ea7e: ee9ff0ef jal ra,c003e966 + c003ea82: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40383 if (targetIndex < 0) - c003e8b4: 02054a63 bltz a0,c003e8e8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40377 + c003ea84: 02054a63 bltz a0,c003eab8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40385 JS_FreeValue(ctx, element); - c003e8b8: 65c6 ld a1,80(sp) - c003e8ba: 6666 ld a2,88(sp) - c003e8bc: 8526 mv a0,s1 - c003e8be: a7ac90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40350 (discriminator 2) + c003ea88: 65c6 ld a1,80(sp) + c003ea8a: 6666 ld a2,88(sp) + c003ea8c: 8526 mv a0,s1 + c003ea8e: 998c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40358 (discriminator 2) for (sourceIndex = 0; sourceIndex < sourceLen; sourceIndex++) { - c003e8c2: 0905 addi s2,s2,1 - c003e8c4: b719 j c003e7ca + c003ea92: 0905 addi s2,s2,1 + c003ea94: b719 j c003e99a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003e8c6: d22977d3 fcvt.d.l fa5,s2 - c003e8ca: 479d li a5,7 - c003e8cc: e2078753 fmv.x.d a4,fa5 + c003ea96: d22977d3 fcvt.d.l fa5,s2 + c003ea9a: 479d li a5,7 + c003ea9c: e2078753 fmv.x.d a4,fa5 JS_FlattenIntoArray(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003e8d0: b0be fsd fa5,96(sp) - c003e8d2: 2701 sext.w a4,a4 - c003e8d4: bf81 j c003e824 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40381 + c003eaa0: b0be fsd fa5,96(sp) + c003eaa2: 2701 sext.w a4,a4 + c003eaa4: bf81 j c003e9f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40389 if (targetIndex >= MAX_SAFE_INTEGER) { - c003e8d6: 008adf63 bge s5,s0,c003e8f4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40382 + c003eaa6: 008adf63 bge s5,s0,c003eac4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40390 JS_ThrowTypeError(ctx, "Array too long"); - c003e8da: 00022597 auipc a1,0x22 - c003e8de: 27e58593 addi a1,a1,638 # c0060b58 - c003e8e2: 8526 mv a0,s1 - c003e8e4: b13d40ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40393 + c003eaaa: 00022597 auipc a1,0x22 + c003eaae: 30e58593 addi a1,a1,782 # c0060db8 + c003eab2: 8526 mv a0,s1 + c003eab4: a31d40ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40401 JS_FreeValue(ctx, element); - c003e8e8: 65c6 ld a1,80(sp) - c003e8ea: 6666 ld a2,88(sp) - c003e8ec: 8526 mv a0,s1 - c003e8ee: a4ac90ef jal ra,c0007b38 - c003e8f2: b719 j c003e7f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40385 + c003eab8: 65c6 ld a1,80(sp) + c003eaba: 6666 ld a2,88(sp) + c003eabc: 8526 mv a0,s1 + c003eabe: 968c90ef jal ra,c0007c26 + c003eac2: b719 j c003e9c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40393 if (JS_DefinePropertyValueInt64(ctx, target, targetIndex, element, - c003e8f4: 6746 ld a4,80(sp) - c003e8f6: 67e6 ld a5,88(sp) - c003e8f8: 75c2 ld a1,48(sp) - c003e8fa: 7662 ld a2,56(sp) - c003e8fc: 885a mv a6,s6 - c003e8fe: 86a2 mv a3,s0 - c003e900: 8526 mv a0,s1 - c003e902: e15ea0ef jal ra,c0029716 - c003e906: ee0549e3 bltz a0,c003e7f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40388 + c003eac4: 6746 ld a4,80(sp) + c003eac6: 67e6 ld a5,88(sp) + c003eac8: 75c2 ld a1,48(sp) + c003eaca: 7662 ld a2,56(sp) + c003eacc: 885a mv a6,s6 + c003eace: 86a2 mv a3,s0 + c003ead0: 8526 mv a0,s1 + c003ead2: e15ea0ef jal ra,c00298e6 + c003ead6: ee0549e3 bltz a0,c003e9c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40396 targetIndex++; - c003e90a: 0405 addi s0,s0,1 - c003e90c: bf5d j c003e8c2 + c003eada: 0405 addi s0,s0,1 + c003eadc: bf5d j c003ea92 -00000000c003e90e : +00000000c003eade : js_array_flatten(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40399 -{ - c003e90e: 7155 addi sp,sp,-208 - c003e910: e1a2 sd s0,192(sp) - c003e912: fd26 sd s1,184(sp) - c003e914: f94a sd s2,176(sp) - c003e916: f54e sd s3,168(sp) - c003e918: e586 sd ra,200(sp) - c003e91a: 842a mv s0,a0 - c003e91c: 8936 mv s2,a3 - c003e91e: 84ba mv s1,a4 - c003e920: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40405 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40407 +{ + c003eade: 7155 addi sp,sp,-208 + c003eae0: e1a2 sd s0,192(sp) + c003eae2: fd26 sd s1,184(sp) + c003eae4: f94a sd s2,176(sp) + c003eae6: f54e sd s3,168(sp) + c003eae8: e586 sd ra,200(sp) + c003eaea: 842a mv s0,a0 + c003eaec: 8936 mv s2,a3 + c003eaee: 84ba mv s1,a4 + c003eaf0: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40413 arr = JS_UNDEFINED; - c003e922: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40406 + c003eaf2: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40414 obj = JS_ToObject(ctx, this_val); - c003e924: cc9e90ef jal ra,c00285ec - c003e928: 862a mv a2,a0 - c003e92a: 86ae mv a3,a1 - c003e92c: e0aa sd a0,64(sp) - c003e92e: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40407 + c003eaf4: cc9e90ef jal ra,c00287bc + c003eaf8: 862a mv a2,a0 + c003eafa: 86ae mv a3,a1 + c003eafc: e0aa sd a0,64(sp) + c003eafe: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40415 if (js_get_length64(ctx, &sourceLen, obj)) - c003e930: 8522 mv a0,s0 - c003e932: 182c addi a1,sp,56 - c003e934: f0bdf0ef jal ra,c001e83e - c003e938: e549 bnez a0,c003e9c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40411 + c003eb00: 8522 mv a0,s0 + c003eb02: 182c addi a1,sp,56 + c003eb04: f0bdf0ef jal ra,c001ea0e + c003eb08: e549 bnez a0,c003eb92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40419 mapperFunction = JS_UNDEFINED; - c003e93a: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40410 + c003eb0a: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40418 depthNum = 1; - c003e93c: 4785 li a5,1 - c003e93e: da3e sw a5,52(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40411 + c003eb0c: 4785 li a5,1 + c003eb0e: da3e sw a5,52(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40419 mapperFunction = JS_UNDEFINED; - c003e940: f082 sd zero,96(sp) - c003e942: f4ba sd a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40412 + c003eb10: f082 sd zero,96(sp) + c003eb12: f4ba sd a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40420 thisArg = JS_UNDEFINED; - c003e944: f882 sd zero,112(sp) - c003e946: fcba sd a4,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40413 + c003eb14: f882 sd zero,112(sp) + c003eb16: fcba sd a4,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40421 if (map) { - c003e948: 04098f63 beqz s3,c003e9a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40414 + c003eb18: 04098f63 beqz s3,c003eb76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40422 mapperFunction = argv[0]; - c003e94c: 6098 ld a4,0(s1) - c003e94e: f0ba sd a4,96(sp) - c003e950: 6498 ld a4,8(s1) - c003e952: f4ba sd a4,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40415 + c003eb1c: 6098 ld a4,0(s1) + c003eb1e: f0ba sd a4,96(sp) + c003eb20: 6498 ld a4,8(s1) + c003eb22: f4ba sd a4,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40423 if (argc > 1) { - c003e954: 0127d663 bge a5,s2,c003e960 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40416 + c003eb24: 0127d663 bge a5,s2,c003eb30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40424 thisArg = argv[1]; - c003e958: 689c ld a5,16(s1) - c003e95a: f8be sd a5,112(sp) - c003e95c: 6c9c ld a5,24(s1) - c003e95e: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40418 - if (check_function(ctx, mapperFunction)) - c003e960: 7586 ld a1,96(sp) - c003e962: 7626 ld a2,104(sp) - c003e964: 8522 mv a0,s0 - c003e966: b43d40ef jal ra,c00134a8 - c003e96a: ed21 bnez a0,c003e9c2 + c003eb28: 689c ld a5,16(s1) + c003eb2a: f8be sd a5,112(sp) + c003eb2c: 6c9c ld a5,24(s1) + c003eb2e: fcbe sd a5,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40426 + if (check_function(ctx, mapperFunction)) + c003eb30: 7586 ld a1,96(sp) + c003eb32: 7626 ld a2,104(sp) + c003eb34: 8522 mv a0,s0 + c003eb36: a61d40ef jal ra,c0013596 + c003eb3a: ed21 bnez a0,c003eb92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40434 arr = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c003e96c: 6626 ld a2,72(sp) - c003e96e: 6586 ld a1,64(sp) - c003e970: 4701 li a4,0 - c003e972: 4681 li a3,0 - c003e974: 8522 mv a0,s0 - c003e976: 968fa0ef jal ra,c0038ade - c003e97a: e8aa sd a0,80(sp) - c003e97c: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40427 + c003eb3c: 6626 ld a2,72(sp) + c003eb3e: 6586 ld a1,64(sp) + c003eb40: 4701 li a4,0 + c003eb42: 4681 li a3,0 + c003eb44: 8522 mv a0,s0 + c003eb46: 968fa0ef jal ra,c0038cae + c003eb4a: e8aa sd a0,80(sp) + c003eb4c: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40435 if (JS_IsException(arr)) - c003e97e: 0005871b sext.w a4,a1 - c003e982: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40426 + c003eb4e: 0005871b sext.w a4,a1 + c003eb52: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40434 arr = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c003e984: 862e mv a2,a1 - c003e986: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40427 + c003eb54: 862e mv a2,a1 + c003eb56: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40435 if (JS_IsException(arr)) - c003e988: 02f71f63 bne a4,a5,c003e9c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40436 + c003eb58: 02f71f63 bne a4,a5,c003eb96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40444 JS_FreeValue(ctx, obj); - c003e98c: 6586 ld a1,64(sp) - c003e98e: 6626 ld a2,72(sp) - c003e990: 8522 mv a0,s0 - c003e992: 9a6c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40437 + c003eb5c: 6586 ld a1,64(sp) + c003eb5e: 6626 ld a2,72(sp) + c003eb60: 8522 mv a0,s0 + c003eb62: 8c4c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40445 JS_FreeValue(ctx, arr); - c003e996: 65c6 ld a1,80(sp) - c003e998: 8626 mv a2,s1 - c003e99a: 8522 mv a0,s0 - c003e99c: 99cc90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40438 + c003eb66: 65c6 ld a1,80(sp) + c003eb68: 8626 mv a2,s1 + c003eb6a: 8522 mv a0,s0 + c003eb6c: 8bac90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40446 return JS_EXCEPTION; - c003e9a0: 4799 li a5,6 - c003e9a2: e902 sd zero,144(sp) - c003e9a4: a8a1 j c003e9fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40421 + c003eb70: 4799 li a5,6 + c003eb72: e902 sd zero,144(sp) + c003eb74: a8a1 j c003ebcc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40429 if (argc > 0 && !JS_IsUndefined(argv[0])) { - c003e9a6: fd2053e3 blez s2,c003e96c + c003eb76: fd2053e3 blez s2,c003eb3c JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003e9aa: 6494 ld a3,8(s1) + c003eb7a: 6494 ld a3,8(s1) js_array_flatten(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40421 (discriminator 1) - c003e9ac: 0006879b sext.w a5,a3 - c003e9b0: fae78ee3 beq a5,a4,c003e96c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40429 (discriminator 1) + c003eb7c: 0006879b sext.w a5,a3 + c003eb80: fae78ee3 beq a5,a4,c003eb3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40430 if (JS_ToInt32Sat(ctx, &depthNum, argv[0]) < 0) - c003e9b4: 6090 ld a2,0(s1) - c003e9b6: 184c addi a1,sp,52 - c003e9b8: 8522 mv a0,s0 - c003e9ba: bcdde0ef jal ra,c001d586 - c003e9be: fa0557e3 bgez a0,c003e96c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40405 + c003eb84: 6090 ld a2,0(s1) + c003eb86: 184c addi a1,sp,52 + c003eb88: 8522 mv a0,s0 + c003eb8a: bcdde0ef jal ra,c001d756 + c003eb8e: fa0557e3 bgez a0,c003eb3c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40413 arr = JS_UNDEFINED; - c003e9c2: 448d li s1,3 - c003e9c4: b7e1 j c003e98c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40429 + c003eb92: 448d li s1,3 + c003eb94: b7e1 j c003eb5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40437 if (JS_FlattenIntoArray(ctx, arr, obj, sourceLen, 0, depthNum, - c003e9c6: 77c6 ld a5,112(sp) - c003e9c8: 58d2 lw a7,52(sp) - c003e9ca: 6686 ld a3,64(sp) - c003e9cc: e83e sd a5,16(sp) - c003e9ce: 77e6 ld a5,120(sp) - c003e9d0: 6726 ld a4,72(sp) - c003e9d2: 85aa mv a1,a0 - c003e9d4: ec3e sd a5,24(sp) - c003e9d6: 7786 ld a5,96(sp) - c003e9d8: 4801 li a6,0 - c003e9da: 8522 mv a0,s0 - c003e9dc: e03e sd a5,0(sp) - c003e9de: 77a6 ld a5,104(sp) - c003e9e0: e43e sd a5,8(sp) - c003e9e2: 77e2 ld a5,56(sp) - c003e9e4: db3ff0ef jal ra,c003e796 - c003e9e8: fa0542e3 bltz a0,c003e98c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40432 + c003eb96: 77c6 ld a5,112(sp) + c003eb98: 58d2 lw a7,52(sp) + c003eb9a: 6686 ld a3,64(sp) + c003eb9c: e83e sd a5,16(sp) + c003eb9e: 77e6 ld a5,120(sp) + c003eba0: 6726 ld a4,72(sp) + c003eba2: 85aa mv a1,a0 + c003eba4: ec3e sd a5,24(sp) + c003eba6: 7786 ld a5,96(sp) + c003eba8: 4801 li a6,0 + c003ebaa: 8522 mv a0,s0 + c003ebac: e03e sd a5,0(sp) + c003ebae: 77a6 ld a5,104(sp) + c003ebb0: e43e sd a5,8(sp) + c003ebb2: 77e2 ld a5,56(sp) + c003ebb4: db3ff0ef jal ra,c003e966 + c003ebb8: fa0542e3 bltz a0,c003eb5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40440 JS_FreeValue(ctx, obj); - c003e9ec: 6586 ld a1,64(sp) - c003e9ee: 6626 ld a2,72(sp) - c003e9f0: 8522 mv a0,s0 - c003e9f2: 946c90ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40433 + c003ebbc: 6586 ld a1,64(sp) + c003ebbe: 6626 ld a2,72(sp) + c003ebc0: 8522 mv a0,s0 + c003ebc2: 864c90ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40441 return arr; - c003e9f6: 67c6 ld a5,80(sp) - c003e9f8: e93e sd a5,144(sp) - c003e9fa: 67e6 ld a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40439 -} - c003e9fc: 60ae ld ra,200(sp) - c003e9fe: 640e ld s0,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40438 + c003ebc6: 67c6 ld a5,80(sp) + c003ebc8: e93e sd a5,144(sp) + c003ebca: 67e6 ld a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40447 +} + c003ebcc: 60ae ld ra,200(sp) + c003ebce: 640e ld s0,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40446 return JS_EXCEPTION; - c003ea00: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40439 -} - c003ea02: 654a ld a0,144(sp) - c003ea04: 65ea ld a1,152(sp) - c003ea06: 74ea ld s1,184(sp) - c003ea08: 794a ld s2,176(sp) - c003ea0a: 79aa ld s3,168(sp) - c003ea0c: 6169 addi sp,sp,208 - c003ea0e: 8082 ret - -00000000c003ea10 : + c003ebd0: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40447 +} + c003ebd2: 654a ld a0,144(sp) + c003ebd4: 65ea ld a1,152(sp) + c003ebd6: 74ea ld s1,184(sp) + c003ebd8: 794a ld s2,176(sp) + c003ebda: 79aa ld s3,168(sp) + c003ebdc: 6169 addi sp,sp,208 + c003ebde: 8082 ret + +00000000c003ebe0 : js_array_cmp_generic(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40456 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40464 static int js_array_cmp_generic(const void *a, const void *b, void *opaque) { - c003ea10: 7119 addi sp,sp,-128 - c003ea12: fc86 sd ra,120(sp) - c003ea14: f8a2 sd s0,112(sp) - c003ea16: f4a6 sd s1,104(sp) - c003ea18: f0ca sd s2,96(sp) - c003ea1a: ecce sd s3,88(sp) - c003ea1c: e8d2 sd s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40465 + c003ebe0: 7119 addi sp,sp,-128 + c003ebe2: fc86 sd ra,120(sp) + c003ebe4: f8a2 sd s0,112(sp) + c003ebe6: f4a6 sd s1,104(sp) + c003ebe8: f0ca sd s2,96(sp) + c003ebea: ecce sd s3,88(sp) + c003ebec: e8d2 sd s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40473 if (psc->exception) - c003ea1e: 4600 lw s0,8(a2) - c003ea20: 0e041c63 bnez s0,c003eb18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40468 + c003ebee: 4600 lw s0,8(a2) + c003ebf0: 0e041c63 bnez s0,c003ece8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 if (psc->has_method) { - c003ea24: 465c lw a5,12(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40458 + c003ebf4: 465c lw a5,12(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40466 JSContext *ctx = psc->ctx; - c003ea26: 00063a03 ld s4,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40468 + c003ebf6: 00063a03 ld s4,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 if (psc->has_method) { - c003ea2a: 892a mv s2,a0 - c003ea2c: 84ae mv s1,a1 - c003ea2e: 89b2 mv s3,a2 - c003ea30: cfc1 beqz a5,c003eac8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40472 + c003ebfa: 892a mv s2,a0 + c003ebfc: 84ae mv s1,a1 + c003ebfe: 89b2 mv s3,a2 + c003ec00: cfc1 beqz a5,c003ec98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40480 if (!memcmp(&ap->val, &bp->val, sizeof(ap->val))) - c003ea32: 4641 li a2,16 - c003ea34: 5cf170ef jal ra,c0056802 - c003ea38: c539 beqz a0,c003ea86 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40474 + c003ec02: 4641 li a2,16 + c003ec04: 5cf170ef jal ra,c00569d2 + c003ec08: c539 beqz a0,c003ec56 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40482 argv[0] = ap->val; - c003ea3a: 00093783 ld a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec0a: 00093783 ld a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea3e: 0189b603 ld a2,24(s3) # 4018 <__clzdi2-0xbfffbfe8> - c003ea42: 0109b583 ld a1,16(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40474 + c003ec0e: 0189b603 ld a2,24(s3) # 4018 <__clzdi2-0xbfffbfe8> + c003ec12: 0109b583 ld a1,16(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40482 argv[0] = ap->val; - c003ea46: f83e sd a5,48(sp) - c003ea48: 00893783 ld a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec16: f83e sd a5,48(sp) + c003ec18: 00893783 ld a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea4c: 4681 li a3,0 - c003ea4e: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40474 + c003ec1c: 4681 li a3,0 + c003ec1e: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40482 argv[0] = ap->val; - c003ea50: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40475 + c003ec20: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40483 argv[1] = bp->val; - c003ea52: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec22: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea54: 03010813 addi a6,sp,48 - c003ea58: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40475 + c003ec24: 03010813 addi a6,sp,48 + c003ec28: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40483 argv[1] = bp->val; - c003ea5a: e0be sd a5,64(sp) - c003ea5c: 649c ld a5,8(s1) - c003ea5e: e4be sd a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec2a: e0be sd a5,64(sp) + c003ec2c: 649c ld a5,8(s1) + c003ec2e: e4be sd a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea60: 4789 li a5,2 - c003ea62: ca5fa0ef jal ra,c0039706 - c003ea66: e82a sd a0,16(sp) + c003ec30: 4789 li a5,2 + c003ec32: ca5fa0ef jal ra,c00398d6 + c003ec36: e82a sd a0,16(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003ea68: 0005879b sext.w a5,a1 + c003ec38: 0005879b sext.w a5,a1 js_array_cmp_generic(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40477 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40485 if (JS_IsException(res)) - c003ea6c: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec3c: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea6e: 862a mv a2,a0 - c003ea70: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40477 + c003ec3e: 862a mv a2,a0 + c003ec40: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40485 if (JS_IsException(res)) - c003ea72: 08e78f63 beq a5,a4,c003eb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40479 + c003ec42: 08e78f63 beq a5,a4,c003ece0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40487 if (JS_VALUE_GET_TAG(res) == JS_TAG_INT) { - c003ea76: eb95 bnez a5,c003eaaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40476 + c003ec46: eb95 bnez a5,c003ec7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 res = JS_Call(ctx, psc->method, JS_UNDEFINED, 2, argv); - c003ea78: 47c2 lw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40481 + c003ec48: 47c2 lw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40489 cmp = (val > 0) - (val < 0); - c003ea7a: 00f02433 sgtz s0,a5 - c003ea7e: 01f7d79b srliw a5,a5,0x1f - c003ea82: 9c1d subw s0,s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40506 + c003ec4a: 00f02433 sgtz s0,a5 + c003ec4e: 01f7d79b srliw a5,a5,0x1f + c003ec52: 9c1d subw s0,s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40514 if (cmp != 0) - c003ea84: e811 bnez s0,c003ea98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40510 + c003ec54: e811 bnez s0,c003ec68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40518 return (ap->pos > bp->pos) - (ap->pos < bp->pos); - c003ea86: 6c80 ld s0,24(s1) - c003ea88: 01893783 ld a5,24(s2) - c003ea8c: 00f42533 slt a0,s0,a5 - c003ea90: 0087a7b3 slt a5,a5,s0 - c003ea94: 40f5043b subw s0,a0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40515 -} - c003ea98: 70e6 ld ra,120(sp) - c003ea9a: 8522 mv a0,s0 - c003ea9c: 7446 ld s0,112(sp) - c003ea9e: 74a6 ld s1,104(sp) - c003eaa0: 7906 ld s2,96(sp) - c003eaa2: 69e6 ld s3,88(sp) - c003eaa4: 6a46 ld s4,80(sp) - c003eaa6: 6109 addi sp,sp,128 - c003eaa8: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40484 + c003ec56: 6c80 ld s0,24(s1) + c003ec58: 01893783 ld a5,24(s2) + c003ec5c: 00f42533 slt a0,s0,a5 + c003ec60: 0087a7b3 slt a5,a5,s0 + c003ec64: 40f5043b subw s0,a0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40523 +} + c003ec68: 70e6 ld ra,120(sp) + c003ec6a: 8522 mv a0,s0 + c003ec6c: 7446 ld s0,112(sp) + c003ec6e: 74a6 ld s1,104(sp) + c003ec70: 7906 ld s2,96(sp) + c003ec72: 69e6 ld s3,88(sp) + c003ec74: 6a46 ld s4,80(sp) + c003ec76: 6109 addi sp,sp,128 + c003ec78: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40492 if (JS_ToFloat64Free(ctx, &val, res) < 0) - c003eaaa: 002c addi a1,sp,8 - c003eaac: 8552 mv a0,s4 - c003eaae: b41dd0ef jal ra,c001c5ee - c003eab2: 04054f63 bltz a0,c003eb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40486 + c003ec7a: 002c addi a1,sp,8 + c003ec7c: 8552 mv a0,s4 + c003ec7e: b41dd0ef jal ra,c001c7be + c003ec82: 04054f63 bltz a0,c003ece0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40494 cmp = (val > 0) - (val < 0); - c003eab6: 2722 fld fa4,8(sp) - c003eab8: f20007d3 fmv.d.x fa5,zero - c003eabc: a2e79453 flt.d s0,fa5,fa4 - c003eac0: a2f71553 flt.d a0,fa4,fa5 - c003eac4: 9c09 subw s0,s0,a0 - c003eac6: bf7d j c003ea84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40492 + c003ec86: 2722 fld fa4,8(sp) + c003ec88: f20007d3 fmv.d.x fa5,zero + c003ec8c: a2e79453 flt.d s0,fa5,fa4 + c003ec90: a2f71553 flt.d a0,fa4,fa5 + c003ec94: 9c09 subw s0,s0,a0 + c003ec96: bf7d j c003ec54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40500 if (!ap->str) { - c003eac8: 691c ld a5,16(a0) - c003eaca: ef91 bnez a5,c003eae6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40493 + c003ec98: 691c ld a5,16(a0) + c003ec9a: ef91 bnez a5,c003ecb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40501 JSValue str = JS_ToString(ctx, ap->val); - c003eacc: 610c ld a1,0(a0) - c003eace: 6510 ld a2,8(a0) - c003ead0: 8552 mv a0,s4 - c003ead2: d05db0ef jal ra,c001a7d6 - c003ead6: fc2e sd a1,56(sp) - c003ead8: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40494 + c003ec9c: 610c ld a1,0(a0) + c003ec9e: 6510 ld a2,8(a0) + c003eca0: 8552 mv a0,s4 + c003eca2: d05db0ef jal ra,c001a9a6 + c003eca6: fc2e sd a1,56(sp) + c003eca8: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40502 if (JS_IsException(str)) - c003eada: 2581 sext.w a1,a1 - c003eadc: 4799 li a5,6 - c003eade: 02f58963 beq a1,a5,c003eb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40496 + c003ecaa: 2581 sext.w a1,a1 + c003ecac: 4799 li a5,6 + c003ecae: 02f58963 beq a1,a5,c003ece0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40504 ap->str = JS_VALUE_GET_STRING(str); - c003eae2: 00a93823 sd a0,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40498 + c003ecb2: 00a93823 sd a0,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40506 if (!bp->str) { - c003eae6: 689c ld a5,16(s1) - c003eae8: ef89 bnez a5,c003eb02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40499 + c003ecb6: 689c ld a5,16(s1) + c003ecb8: ef89 bnez a5,c003ecd2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40507 JSValue str = JS_ToString(ctx, bp->val); - c003eaea: 608c ld a1,0(s1) - c003eaec: 6490 ld a2,8(s1) - c003eaee: 8552 mv a0,s4 - c003eaf0: ce7db0ef jal ra,c001a7d6 - c003eaf4: fc2e sd a1,56(sp) - c003eaf6: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40500 + c003ecba: 608c ld a1,0(s1) + c003ecbc: 6490 ld a2,8(s1) + c003ecbe: 8552 mv a0,s4 + c003ecc0: ce7db0ef jal ra,c001a9a6 + c003ecc4: fc2e sd a1,56(sp) + c003ecc6: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40508 if (JS_IsException(str)) - c003eaf8: 2581 sext.w a1,a1 - c003eafa: 4799 li a5,6 - c003eafc: 00f58a63 beq a1,a5,c003eb10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40502 + c003ecc8: 2581 sext.w a1,a1 + c003ecca: 4799 li a5,6 + c003eccc: 00f58a63 beq a1,a5,c003ece0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40510 bp->str = JS_VALUE_GET_STRING(str); - c003eb00: e888 sd a0,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40504 + c003ecd0: e888 sd a0,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40512 cmp = js_string_compare(ctx, ap->str, bp->str); - c003eb02: 688c ld a1,16(s1) - c003eb04: 01093503 ld a0,16(s2) - c003eb08: fa5c70ef jal ra,c0006aac - c003eb0c: 842a mv s0,a0 - c003eb0e: bf9d j c003ea84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40513 + c003ecd2: 688c ld a1,16(s1) + c003ecd4: 01093503 ld a0,16(s2) + c003ecd8: ec3c70ef jal ra,c0006b9a + c003ecdc: 842a mv s0,a0 + c003ecde: bf9d j c003ec54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40521 psc->exception = 1; - c003eb10: 4785 li a5,1 - c003eb12: 00f9a423 sw a5,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40514 + c003ece0: 4785 li a5,1 + c003ece2: 00f9a423 sw a5,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40522 return 0; - c003eb16: b749 j c003ea98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40466 + c003ece6: b749 j c003ec68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:40474 return 0; - c003eb18: 4401 li s0,0 - c003eb1a: bfbd j c003ea98 + c003ece8: 4401 li s0,0 + c003ecea: bfbd j c003ec68 -00000000c003eb1c : +00000000c003ecec : js_array_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39741 -{ - c003eb1c: 7129 addi sp,sp,-320 - c003eb1e: fa22 sd s0,304(sp) - c003eb20: f626 sd s1,296(sp) - c003eb22: f24a sd s2,288(sp) - c003eb24: ee4e sd s3,280(sp) - c003eb26: fe06 sd ra,312(sp) - c003eb28: ea52 sd s4,272(sp) - c003eb2a: e656 sd s5,264(sp) - c003eb2c: e25a sd s6,256(sp) - c003eb2e: fdde sd s7,248(sp) - c003eb30: f9e2 sd s8,240(sp) - c003eb32: f5e6 sd s9,232(sp) - c003eb34: 842a mv s0,a0 - c003eb36: e432 sd a2,8(sp) - c003eb38: 8936 mv s2,a3 - c003eb3a: e02e sd a1,0(sp) - c003eb3c: 84ba mv s1,a4 - c003eb3e: 89be mv s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39748 - index_val = JS_UNDEFINED; - c003eb40: f082 sd zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39749 +{ + c003ecec: 7129 addi sp,sp,-320 + c003ecee: fa22 sd s0,304(sp) + c003ecf0: f626 sd s1,296(sp) + c003ecf2: f24a sd s2,288(sp) + c003ecf4: ee4e sd s3,280(sp) + c003ecf6: fe06 sd ra,312(sp) + c003ecf8: ea52 sd s4,272(sp) + c003ecfa: e656 sd s5,264(sp) + c003ecfc: e25a sd s6,256(sp) + c003ecfe: fdde sd s7,248(sp) + c003ed00: f9e2 sd s8,240(sp) + c003ed02: f5e6 sd s9,232(sp) + c003ed04: 842a mv s0,a0 + c003ed06: e432 sd a2,8(sp) + c003ed08: 8936 mv s2,a3 + c003ed0a: e02e sd a1,0(sp) + c003ed0c: 84ba mv s1,a4 + c003ed0e: 89be mv s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39756 + index_val = JS_UNDEFINED; + c003ed10: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39757 val = JS_UNDEFINED; - c003eb42: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39750 + c003ed12: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39758 obj = JS_ToObject(ctx, this_val); - c003eb44: aa9e90ef jal ra,c00285ec - c003eb48: 862a mv a2,a0 - c003eb4a: 86ae mv a3,a1 - c003eb4c: e0aa sd a0,64(sp) - c003eb4e: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39751 + c003ed14: aa9e90ef jal ra,c00287bc + c003ed18: 862a mv a2,a0 + c003ed1a: 86ae mv a3,a1 + c003ed1c: e0aa sd a0,64(sp) + c003ed1e: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39759 if (js_get_length64(ctx, &len, obj)) - c003eb50: 8522 mv a0,s0 - c003eb52: 082c addi a1,sp,24 - c003eb54: cebdf0ef jal ra,c001e83e - c003eb58: 16051b63 bnez a0,c003ecce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39754 + c003ed20: 8522 mv a0,s0 + c003ed22: 082c addi a1,sp,24 + c003ed24: cebdf0ef jal ra,c001ea0e + c003ed28: 16051b63 bnez a0,c003ee9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39762 func = argv[0]; - c003eb5c: 608c ld a1,0(s1) - c003eb5e: 6490 ld a2,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39755 + c003ed2c: 608c ld a1,0(s1) + c003ed2e: 6490 ld a2,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39763 if (check_function(ctx, func)) - c003eb60: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39754 + c003ed30: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39762 func = argv[0]; - c003eb62: f02e sd a1,32(sp) - c003eb64: f432 sd a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39755 + c003ed32: f02e sd a1,32(sp) + c003ed34: f432 sd a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39763 if (check_function(ctx, func)) - c003eb66: 943d40ef jal ra,c00134a8 - c003eb6a: 8a2a mv s4,a0 - c003eb6c: 16051163 bnez a0,c003ecce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39758 + c003ed36: 861d40ef jal ra,c0013596 + c003ed3a: 8a2a mv s4,a0 + c003ed3c: 16051163 bnez a0,c003ee9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39766 this_arg = JS_UNDEFINED; - c003eb70: f802 sd zero,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39759 + c003ed40: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39767 if (argc > 1) - c003eb72: 4785 li a5,1 - c003eb74: 0327c163 blt a5,s2,c003eb96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39758 + c003ed42: 4785 li a5,1 + c003ed44: 0327c163 blt a5,s2,c003ed66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39766 this_arg = JS_UNDEFINED; - c003eb78: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39760 + c003ed48: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39768 this_arg = argv[1]; - c003eb7a: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39762 + c003ed4a: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39770 if (mode == special_findLast || mode == special_findLastIndex) { - c003eb7c: 4705 li a4,1 - c003eb7e: ffe9879b addiw a5,s3,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39763 + c003ed4c: 4705 li a4,1 + c003ed4e: ffe9879b addiw a5,s3,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39771 k = len - 1; - c003eb82: 6b62 ld s6,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39762 + c003ed52: 6b62 ld s6,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39770 if (mode == special_findLast || mode == special_findLastIndex) { - c003eb84: 12f76f63 bltu a4,a5,c003ecc2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39763 + c003ed54: 12f76f63 bltu a4,a5,c003ee92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39771 k = len - 1; - c003eb88: fffb0c93 addi s9,s6,-1 # 3fff <__clzdi2-0xbfffc001> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39764 + c003ed58: fffb0c93 addi s9,s6,-1 # 3fff <__clzdi2-0xbfffc001> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39772 dir = -1; - c003eb8c: 5c7d li s8,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39765 + c003ed5c: 5c7d li s8,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39773 end = -1; - c003eb8e: 5b7d li s6,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39749 (discriminator 1) + c003ed5e: 5b7d li s6,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39757 (discriminator 1) val = JS_UNDEFINED; - c003eb90: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39775 (discriminator 1) + c003ed60: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 (discriminator 1) if (JS_IsException(index_val)) - c003eb92: 4b99 li s7,6 - c003eb94: a8c5 j c003ec84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39760 + c003ed62: 4b99 li s7,6 + c003ed64: a8c5 j c003ee54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39768 this_arg = argv[1]; - c003eb96: 689c ld a5,16(s1) - c003eb98: f83e sd a5,48(sp) - c003eb9a: 6c9c ld a5,24(s1) - c003eb9c: bff9 j c003eb7a + c003ed66: 689c ld a5,16(s1) + c003ed68: f83e sd a5,48(sp) + c003ed6a: 6c9c ld a5,24(s1) + c003ed6c: bff9 j c003ed4a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003eb9e: 000c891b sext.w s2,s9 - c003eba2: 0b2c9063 bne s9,s2,c003ec42 + c003ed6e: 000c891b sext.w s2,s9 + c003ed72: 0b2c9063 bne s9,s2,c003ee12 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003eba6: cb02 sw zero,148(sp) - c003eba8: c966 sw s9,144(sp) - c003ebaa: 67ca ld a5,144(sp) - c003ebac: f502 sd zero,168(sp) - c003ebae: 4a81 li s5,0 - c003ebb0: f13e sd a5,160(sp) + c003ed76: cb02 sw zero,148(sp) + c003ed78: c966 sw s9,144(sp) + c003ed7a: 67ca ld a5,144(sp) + c003ed7c: f502 sd zero,168(sp) + c003ed7e: 4a81 li s5,0 + c003ed80: f13e sd a5,160(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003ebb2: d14a sw s2,160(sp) - c003ebb4: 378a fld fa5,160(sp) - c003ebb6: f4d6 sd s5,104(sp) + c003ed82: d14a sw s2,160(sp) + c003ed84: 378a fld fa5,160(sp) + c003ed86: f4d6 sd s5,104(sp) js_array_find(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003ebb8: b0be fsd fa5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39775 + c003ed88: b0be fsd fa5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 if (JS_IsException(index_val)) - c003ebba: 117a8e63 beq s5,s7,c003ecd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39777 + c003ed8a: 117a8e63 beq s5,s7,c003eea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39785 val = JS_GetPropertyValue(ctx, obj, index_val); - c003ebbe: 7686 ld a3,96(sp) - c003ebc0: 6586 ld a1,64(sp) - c003ebc2: 6626 ld a2,72(sp) - c003ebc4: 8756 mv a4,s5 - c003ebc6: 8522 mv a0,s0 - c003ebc8: 8e0d30ef jal ra,c0011ca8 - c003ebcc: e8aa sd a0,80(sp) - c003ebce: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39778 + c003ed8e: 7686 ld a3,96(sp) + c003ed90: 6586 ld a1,64(sp) + c003ed92: 6626 ld a2,72(sp) + c003ed94: 8756 mv a4,s5 + c003ed96: 8522 mv a0,s0 + c003ed98: fffd20ef jal ra,c0011d96 + c003ed9c: e8aa sd a0,80(sp) + c003ed9e: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39786 if (JS_IsException(val)) - c003ebd0: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39777 + c003eda0: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39785 val = JS_GetPropertyValue(ctx, obj, index_val); - c003ebd4: 84ae mv s1,a1 - c003ebd6: 00050a1b sext.w s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39778 + c003eda4: 84ae mv s1,a1 + c003eda6: 00050a1b sext.w s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39786 if (JS_IsException(val)) - c003ebda: 0f778e63 beq a5,s7,c003ecd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39781 + c003edaa: 0f778e63 beq a5,s7,c003eea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39789 args[1] = index_val; - c003ebde: 7786 ld a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edae: 7786 ld a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ebe0: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39780 + c003edb0: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39788 args[0] = val; - c003ebe2: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39781 + c003edb2: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39789 args[1] = index_val; - c003ebe4: e1be sd a5,192(sp) - c003ebe6: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edb4: e1be sd a5,192(sp) + c003edb6: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ebe8: 76c2 ld a3,48(sp) - c003ebea: 7762 ld a4,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39781 + c003edb8: 76c2 ld a3,48(sp) + c003edba: 7762 ld a4,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39789 args[1] = index_val; - c003ebec: e5be sd a5,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39782 + c003edbc: e5be sd a5,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39790 args[2] = this_val; - c003ebee: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edbe: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ebf0: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39780 + c003edc0: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39788 args[0] = val; - c003ebf2: f92a sd a0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39782 + c003edc2: f92a sd a0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39790 args[2] = this_val; - c003ebf4: e9be sd a5,208(sp) - c003ebf6: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edc4: e9be sd a5,208(sp) + c003edc6: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ebf8: 0b010813 addi a6,sp,176 - c003ebfc: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39782 + c003edc8: 0b010813 addi a6,sp,176 + c003edcc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39790 args[2] = this_val; - c003ebfe: edbe sd a5,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edce: edbe sd a5,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ec00: 478d li a5,3 - c003ec02: b05fa0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39784 + c003edd0: 478d li a5,3 + c003edd2: b05fa0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39792 if (JS_IsException(res)) - c003ec06: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39783 + c003edd6: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39791 res = JS_Call(ctx, func, this_arg, 3, args); - c003ec0a: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39784 + c003edda: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39792 if (JS_IsException(res)) - c003ec0c: 0d778563 beq a5,s7,c003ecd6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39786 + c003eddc: 0d778563 beq a5,s7,c003eea6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39794 if (JS_ToBoolFree(ctx, res)) { - c003ec10: 85aa mv a1,a0 - c003ec12: 8522 mv a0,s0 - c003ec14: a50c90ef jal ra,c0007e64 - c003ec18: c939 beqz a0,c003ec6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39787 + c003ede0: 85aa mv a1,a0 + c003ede2: 8522 mv a0,s0 + c003ede4: 96ec90ef jal ra,c0007f52 + c003ede8: c939 beqz a0,c003ee3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39795 if (mode == special_findIndex || mode == special_findLastIndex) { - c003ec1a: ffd9f993 andi s3,s3,-3 - c003ec1e: 4705 li a4,1 - c003ec20: 02e99963 bne s3,a4,c003ec52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39788 + c003edea: ffd9f993 andi s3,s3,-3 + c003edee: 4705 li a4,1 + c003edf0: 02e99963 bne s3,a4,c003ee22 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39796 JS_FreeValue(ctx, val); - c003ec24: 65c6 ld a1,80(sp) - c003ec26: 6666 ld a2,88(sp) - c003ec28: 8522 mv a0,s0 - c003ec2a: f0fc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39789 + c003edf4: 65c6 ld a1,80(sp) + c003edf6: 6666 ld a2,88(sp) + c003edf8: 8522 mv a0,s0 + c003edfa: e2dc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39797 JS_FreeValue(ctx, obj); - c003ec2e: 6586 ld a1,64(sp) - c003ec30: 6626 ld a2,72(sp) - c003ec32: 8522 mv a0,s0 - c003ec34: f05c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39790 + c003edfe: 6586 ld a1,64(sp) + c003ee00: 6626 ld a2,72(sp) + c003ee02: 8522 mv a0,s0 + c003ee04: e23c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39798 return index_val; - c003ec38: 7786 ld a5,96(sp) - c003ec3a: e13e sd a5,128(sp) - c003ec3c: 77a6 ld a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39810 + c003ee08: 7786 ld a5,96(sp) + c003ee0a: e13e sd a5,128(sp) + c003ee0c: 77a6 ld a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39818 return JS_EXCEPTION; - c003ec3e: e53e sd a5,136(sp) - c003ec40: a095 j c003eca4 + c003ee0e: e53e sd a5,136(sp) + c003ee10: a095 j c003ee74 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003ec42: d22cf7d3 fcvt.d.l fa5,s9 - c003ec46: 4a9d li s5,7 - c003ec48: e2078953 fmv.x.d s2,fa5 + c003ee12: d22cf7d3 fcvt.d.l fa5,s9 + c003ee16: 4a9d li s5,7 + c003ee18: e2078953 fmv.x.d s2,fa5 js_array_find(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003ec4c: b13e fsd fa5,160(sp) - c003ec4e: 2901 sext.w s2,s2 - c003ec50: b78d j c003ebb2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39792 + c003ee1c: b13e fsd fa5,160(sp) + c003ee1e: 2901 sext.w s2,s2 + c003ee20: b78d j c003ed82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39800 JS_FreeValue(ctx, index_val); - c003ec52: 7586 ld a1,96(sp) - c003ec54: 7626 ld a2,104(sp) - c003ec56: 8522 mv a0,s0 - c003ec58: ee1c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39793 + c003ee22: 7586 ld a1,96(sp) + c003ee24: 7626 ld a2,104(sp) + c003ee26: 8522 mv a0,s0 + c003ee28: dffc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39801 JS_FreeValue(ctx, obj); - c003ec5c: 6586 ld a1,64(sp) - c003ec5e: 6626 ld a2,72(sp) - c003ec60: 8522 mv a0,s0 - c003ec62: ed7c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39794 + c003ee2c: 6586 ld a1,64(sp) + c003ee2e: 6626 ld a2,72(sp) + c003ee30: 8522 mv a0,s0 + c003ee32: df5c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39802 return val; - c003ec66: 67c6 ld a5,80(sp) - c003ec68: e13e sd a5,128(sp) - c003ec6a: 67e6 ld a5,88(sp) - c003ec6c: bfc9 j c003ec3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39797 + c003ee36: 67c6 ld a5,80(sp) + c003ee38: e13e sd a5,128(sp) + c003ee3a: 67e6 ld a5,88(sp) + c003ee3c: bfc9 j c003ee0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39805 JS_FreeValue(ctx, val); - c003ec6e: 65c6 ld a1,80(sp) - c003ec70: 6666 ld a2,88(sp) - c003ec72: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39773 + c003ee3e: 65c6 ld a1,80(sp) + c003ee40: 6666 ld a2,88(sp) + c003ee42: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39781 for(; k != end; k += dir) { - c003ec74: 9ce2 add s9,s9,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39797 + c003ee44: 9ce2 add s9,s9,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39805 JS_FreeValue(ctx, val); - c003ec76: ec3c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39798 + c003ee46: de1c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39806 JS_FreeValue(ctx, index_val); - c003ec7a: 7586 ld a1,96(sp) - c003ec7c: 7626 ld a2,104(sp) - c003ec7e: 8522 mv a0,s0 - c003ec80: eb9c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39773 (discriminator 1) + c003ee4a: 7586 ld a1,96(sp) + c003ee4c: 7626 ld a2,104(sp) + c003ee4e: 8522 mv a0,s0 + c003ee50: dd7c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39781 (discriminator 1) for(; k != end; k += dir) { - c003ec84: f16c9de3 bne s9,s6,c003eb9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39800 + c003ee54: f16c9de3 bne s9,s6,c003ed6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39808 JS_FreeValue(ctx, obj); - c003ec88: 6586 ld a1,64(sp) - c003ec8a: 6626 ld a2,72(sp) - c003ec8c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39801 + c003ee58: 6586 ld a1,64(sp) + c003ee5a: 6626 ld a2,72(sp) + c003ee5c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39809 if (mode == special_findIndex || mode == special_findLastIndex) - c003ec8e: ffd9f993 andi s3,s3,-3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39800 + c003ee5e: ffd9f993 andi s3,s3,-3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39808 JS_FreeValue(ctx, obj); - c003ec92: ea7c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39801 + c003ee62: dc5c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39809 if (mode == special_findIndex || mode == special_findLastIndex) - c003ec96: 4785 li a5,1 - c003ec98: 02f99863 bne s3,a5,c003ecc8 + c003ee66: 4785 li a5,1 + c003ee68: 02f99863 bne s3,a5,c003ee98 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003ec9c: 57fd li a5,-1 - c003ec9e: 9381 srli a5,a5,0x20 - c003eca0: e13e sd a5,128(sp) - c003eca2: e502 sd zero,136(sp) + c003ee6c: 57fd li a5,-1 + c003ee6e: 9381 srli a5,a5,0x20 + c003ee70: e13e sd a5,128(sp) + c003ee72: e502 sd zero,136(sp) js_array_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39811 (discriminator 1) -} - c003eca4: 70f2 ld ra,312(sp) - c003eca6: 7452 ld s0,304(sp) - c003eca8: 650a ld a0,128(sp) - c003ecaa: 65aa ld a1,136(sp) - c003ecac: 74b2 ld s1,296(sp) - c003ecae: 7912 ld s2,288(sp) - c003ecb0: 69f2 ld s3,280(sp) - c003ecb2: 6a52 ld s4,272(sp) - c003ecb4: 6ab2 ld s5,264(sp) - c003ecb6: 6b12 ld s6,256(sp) - c003ecb8: 7bee ld s7,248(sp) - c003ecba: 7c4e ld s8,240(sp) - c003ecbc: 7cae ld s9,232(sp) - c003ecbe: 6131 addi sp,sp,320 - c003ecc0: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39768 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39819 (discriminator 1) +} + c003ee74: 70f2 ld ra,312(sp) + c003ee76: 7452 ld s0,304(sp) + c003ee78: 650a ld a0,128(sp) + c003ee7a: 65aa ld a1,136(sp) + c003ee7c: 74b2 ld s1,296(sp) + c003ee7e: 7912 ld s2,288(sp) + c003ee80: 69f2 ld s3,280(sp) + c003ee82: 6a52 ld s4,272(sp) + c003ee84: 6ab2 ld s5,264(sp) + c003ee86: 6b12 ld s6,256(sp) + c003ee88: 7bee ld s7,248(sp) + c003ee8a: 7c4e ld s8,240(sp) + c003ee8c: 7cae ld s9,232(sp) + c003ee8e: 6131 addi sp,sp,320 + c003ee90: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39776 dir = 1; - c003ecc2: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39767 + c003ee92: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39775 k = 0; - c003ecc4: 4c81 li s9,0 - c003ecc6: b5e9 j c003eb90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39804 + c003ee94: 4c81 li s9,0 + c003ee96: b5e9 j c003ed60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39812 return JS_UNDEFINED; - c003ecc8: e102 sd zero,128(sp) - c003ecca: 478d li a5,3 - c003eccc: bf8d j c003ec3e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39748 + c003ee98: e102 sd zero,128(sp) + c003ee9a: 478d li a5,3 + c003ee9c: bf8d j c003ee0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39756 index_val = JS_UNDEFINED; - c003ecce: 4a8d li s5,3 - c003ecd0: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39749 + c003ee9e: 4a8d li s5,3 + c003eea0: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39757 val = JS_UNDEFINED; - c003ecd2: 448d li s1,3 - c003ecd4: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39807 + c003eea2: 448d li s1,3 + c003eea4: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39815 JS_FreeValue(ctx, index_val); - c003ecd6: d0ca sw s2,96(sp) - c003ecd8: 7586 ld a1,96(sp) - c003ecda: 8656 mv a2,s5 - c003ecdc: 8522 mv a0,s0 - c003ecde: e5bc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39808 + c003eea6: d0ca sw s2,96(sp) + c003eea8: 7586 ld a1,96(sp) + c003eeaa: 8656 mv a2,s5 + c003eeac: 8522 mv a0,s0 + c003eeae: d79c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39816 JS_FreeValue(ctx, val); - c003ece2: c8d2 sw s4,80(sp) - c003ece4: 65c6 ld a1,80(sp) - c003ece6: 8626 mv a2,s1 - c003ece8: 8522 mv a0,s0 - c003ecea: e4fc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39809 + c003eeb2: c8d2 sw s4,80(sp) + c003eeb4: 65c6 ld a1,80(sp) + c003eeb6: 8626 mv a2,s1 + c003eeb8: 8522 mv a0,s0 + c003eeba: d6dc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39817 JS_FreeValue(ctx, obj); - c003ecee: 6586 ld a1,64(sp) - c003ecf0: 6626 ld a2,72(sp) - c003ecf2: 8522 mv a0,s0 - c003ecf4: e45c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39810 + c003eebe: 6586 ld a1,64(sp) + c003eec0: 6626 ld a2,72(sp) + c003eec2: 8522 mv a0,s0 + c003eec4: d63c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39818 return JS_EXCEPTION; - c003ecf8: 4799 li a5,6 - c003ecfa: e102 sd zero,128(sp) - c003ecfc: b789 j c003ec3e + c003eec8: 4799 li a5,6 + c003eeca: e102 sd zero,128(sp) + c003eecc: b789 j c003ee0e -00000000c003ecfe : +00000000c003eece : js_array_reduce(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39478 { - c003ecfe: 7169 addi sp,sp,-304 - c003ed00: ea4a sd s2,272(sp) - c003ed02: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39477 + c003eece: 7169 addi sp,sp,-304 + c003eed0: ea4a sd s2,272(sp) + c003eed2: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39485 acc = JS_UNDEFINED; - c003ed04: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39470 + c003eed4: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39478 { - c003ed06: f222 sd s0,288(sp) - c003ed08: e64e sd s3,264(sp) - c003ed0a: e252 sd s4,256(sp) - c003ed0c: fdd6 sd s5,248(sp) - c003ed0e: f606 sd ra,296(sp) - c003ed10: ee26 sd s1,280(sp) - c003ed12: f9da sd s6,240(sp) - c003ed14: f5de sd s7,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39477 + c003eed6: f222 sd s0,288(sp) + c003eed8: e64e sd s3,264(sp) + c003eeda: e252 sd s4,256(sp) + c003eedc: fdd6 sd s5,248(sp) + c003eede: f606 sd ra,296(sp) + c003eee0: ee26 sd s1,280(sp) + c003eee2: f9da sd s6,240(sp) + c003eee4: f5de sd s7,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39485 acc = JS_UNDEFINED; - c003ed16: e882 sd zero,80(sp) - c003ed18: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39478 + c003eee6: e882 sd zero,80(sp) + c003eee8: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39486 val = JS_UNDEFINED; - c003ed1a: f802 sd zero,48(sp) - c003ed1c: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39479 + c003eeea: f802 sd zero,48(sp) + c003eeec: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39487 if (special & special_TA) { - c003ed1e: 00897a13 andi s4,s2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39470 + c003eeee: 00897a13 andi s4,s2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39478 { - c003ed22: 842a mv s0,a0 - c003ed24: 8ab6 mv s5,a3 - c003ed26: 89ba mv s3,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39479 + c003eef2: 842a mv s0,a0 + c003eef4: 8ab6 mv s5,a3 + c003eef6: 89ba mv s3,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39487 if (special & special_TA) { - c003ed28: 040a0c63 beqz s4,c003ed80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39480 + c003eef8: 040a0c63 beqz s4,c003ef50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39488 obj = JS_DupValue(ctx, this_val); - c003ed2c: 852e mv a0,a1 - c003ed2e: 85b2 mv a1,a2 - c003ed30: 93fc70ef jal ra,c000666e - c003ed34: 862e mv a2,a1 - c003ed36: f02a sd a0,32(sp) - c003ed38: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39481 + c003eefc: 852e mv a0,a1 + c003eefe: 85b2 mv a1,a2 + c003ef00: 85dc70ef jal ra,c000675c + c003ef04: 862e mv a2,a1 + c003ef06: f02a sd a0,32(sp) + c003ef08: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39489 len = js_typed_array_get_length_internal(ctx, obj); - c003ed3a: 85aa mv a1,a0 - c003ed3c: 8522 mv a0,s0 - c003ed3e: ad8d50ef jal ra,c0014016 - c003ed42: ec2a sd a0,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39482 + c003ef0a: 85aa mv a1,a0 + c003ef0c: 8522 mv a0,s0 + c003ef0e: 9f6d50ef jal ra,c0014104 + c003ef12: ec2a sd a0,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39490 if (len < 0) - c003ed44: 00054c63 bltz a0,c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39489 + c003ef14: 00054c63 bltz a0,c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39497 func = argv[0]; - c003ed48: 0009b583 ld a1,0(s3) - c003ed4c: 0089b603 ld a2,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39491 + c003ef18: 0009b583 ld a1,0(s3) + c003ef1c: 0089b603 ld a2,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39499 if (check_function(ctx, func)) - c003ed50: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39489 + c003ef20: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39497 func = argv[0]; - c003ed52: f8ae sd a1,112(sp) - c003ed54: fcb2 sd a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39491 + c003ef22: f8ae sd a1,112(sp) + c003ef24: fcb2 sd a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39499 if (check_function(ctx, func)) - c003ed56: f52d40ef jal ra,c00134a8 - c003ed5a: cd1d beqz a0,c003ed98 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39553 + c003ef26: e70d40ef jal ra,c0013596 + c003ef2a: cd1d beqz a0,c003ef68 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39561 JS_FreeValue(ctx, acc); - c003ed5c: 65c6 ld a1,80(sp) - c003ed5e: 6666 ld a2,88(sp) - c003ed60: 8522 mv a0,s0 - c003ed62: dd7c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39554 + c003ef2c: 65c6 ld a1,80(sp) + c003ef2e: 6666 ld a2,88(sp) + c003ef30: 8522 mv a0,s0 + c003ef32: cf5c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39562 JS_FreeValue(ctx, val); - c003ed66: 75c2 ld a1,48(sp) - c003ed68: 7662 ld a2,56(sp) - c003ed6a: 8522 mv a0,s0 - c003ed6c: dcdc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39555 + c003ef36: 75c2 ld a1,48(sp) + c003ef38: 7662 ld a2,56(sp) + c003ef3a: 8522 mv a0,s0 + c003ef3c: cebc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39563 JS_FreeValue(ctx, obj); - c003ed70: 7582 ld a1,32(sp) - c003ed72: 7622 ld a2,40(sp) - c003ed74: 8522 mv a0,s0 - c003ed76: dc3c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39556 + c003ef40: 7582 ld a1,32(sp) + c003ef42: 7622 ld a2,40(sp) + c003ef44: 8522 mv a0,s0 + c003ef46: ce1c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39564 return JS_EXCEPTION; - c003ed7a: 4799 li a5,6 - c003ed7c: e102 sd zero,128(sp) - c003ed7e: a0ad j c003ede8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39485 + c003ef4a: 4799 li a5,6 + c003ef4c: e102 sd zero,128(sp) + c003ef4e: a0ad j c003efb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39493 obj = JS_ToObject(ctx, this_val); - c003ed80: 86de90ef jal ra,c00285ec - c003ed84: 862a mv a2,a0 - c003ed86: 86ae mv a3,a1 - c003ed88: f02a sd a0,32(sp) - c003ed8a: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39486 + c003ef50: 86de90ef jal ra,c00287bc + c003ef54: 862a mv a2,a0 + c003ef56: 86ae mv a3,a1 + c003ef58: f02a sd a0,32(sp) + c003ef5a: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39494 if (js_get_length64(ctx, &len, obj)) - c003ed8c: 8522 mv a0,s0 - c003ed8e: 082c addi a1,sp,24 - c003ed90: aafdf0ef jal ra,c001e83e - c003ed94: d955 beqz a0,c003ed48 - c003ed96: b7d9 j c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39495 + c003ef5c: 8522 mv a0,s0 + c003ef5e: 082c addi a1,sp,24 + c003ef60: aafdf0ef jal ra,c001ea0e + c003ef64: d955 beqz a0,c003ef18 + c003ef66: b7d9 j c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39503 if (argc > 1) { - c003ed98: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39494 + c003ef68: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39502 k = 0; - c003ed9a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39495 - if (argc > 1) { - c003ed9c: 0157cf63 blt a5,s5,c003edba + c003ef6a: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39503 + if (argc > 1) { + c003ef6c: 0157cf63 blt a5,s5,c003ef8a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39511 k1 = (special & special_reduceRight) ? len - k - 1 : k; - c003eda0: 00197993 andi s3,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39499 + c003ef70: 00197993 andi s3,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39507 if (k >= len) { - c003eda4: 67e2 ld a5,24(sp) - c003eda6: 04f4cf63 blt s1,a5,c003ee04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39500 + c003ef74: 67e2 ld a5,24(sp) + c003ef76: 04f4cf63 blt s1,a5,c003efd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39508 JS_ThrowTypeError(ctx, "empty array"); - c003edaa: 8522 mv a0,s0 - c003edac: 00022597 auipc a1,0x22 - c003edb0: dbc58593 addi a1,a1,-580 # c0060b68 - c003edb4: e42d40ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39501 + c003ef7a: 8522 mv a0,s0 + c003ef7c: 00022597 auipc a1,0x22 + c003ef80: e4c58593 addi a1,a1,-436 # c0060dc8 + c003ef84: d60d40ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39509 goto exception; - c003edb8: b755 j c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39496 + c003ef88: b755 j c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39504 acc = JS_DupValue(ctx, argv[1]); - c003edba: 0109b503 ld a0,16(s3) - c003edbe: 0189b583 ld a1,24(s3) - c003edc2: 8adc70ef jal ra,c000666e - c003edc6: e8aa sd a0,80(sp) - c003edc8: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39520 (discriminator 1) + c003ef8a: 0109b503 ld a0,16(s3) + c003ef8e: 0189b583 ld a1,24(s3) + c003ef92: fcac70ef jal ra,c000675c + c003ef96: e8aa sd a0,80(sp) + c003ef98: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39528 (discriminator 1) k1 = (special & special_reduceRight) ? len - k - 1 : k; - c003edca: 00197913 andi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39533 (discriminator 1) + c003ef9a: 00197913 andi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39541 (discriminator 1) if (JS_IsException(index_val)) - c003edce: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 (discriminator 1) + c003ef9e: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 (discriminator 1) acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003edd0: 4b0d li s6,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39519 (discriminator 1) + c003efa0: 4b0d li s6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39527 (discriminator 1) for (; k < len; k++) { - c003edd2: 67e2 ld a5,24(sp) - c003edd4: 06f4c763 blt s1,a5,c003ee42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39549 + c003efa2: 67e2 ld a5,24(sp) + c003efa4: 06f4c763 blt s1,a5,c003f012 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39557 JS_FreeValue(ctx, obj); - c003edd8: 7582 ld a1,32(sp) - c003edda: 7622 ld a2,40(sp) - c003eddc: 8522 mv a0,s0 - c003edde: d5bc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39550 + c003efa8: 7582 ld a1,32(sp) + c003efaa: 7622 ld a2,40(sp) + c003efac: 8522 mv a0,s0 + c003efae: c79c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39558 return acc; - c003ede2: 67c6 ld a5,80(sp) - c003ede4: e13e sd a5,128(sp) - c003ede6: 67e6 ld a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39557 + c003efb2: 67c6 ld a5,80(sp) + c003efb4: e13e sd a5,128(sp) + c003efb6: 67e6 ld a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39565 } - c003ede8: 70b2 ld ra,296(sp) - c003edea: 7412 ld s0,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39556 + c003efb8: 70b2 ld ra,296(sp) + c003efba: 7412 ld s0,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39564 return JS_EXCEPTION; - c003edec: e53e sd a5,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39557 + c003efbc: e53e sd a5,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39565 } - c003edee: 650a ld a0,128(sp) - c003edf0: 65aa ld a1,136(sp) - c003edf2: 64f2 ld s1,280(sp) - c003edf4: 6952 ld s2,272(sp) - c003edf6: 69b2 ld s3,264(sp) - c003edf8: 6a12 ld s4,256(sp) - c003edfa: 7aee ld s5,248(sp) - c003edfc: 7b4e ld s6,240(sp) - c003edfe: 7bae ld s7,232(sp) - c003ee00: 6155 addi sp,sp,304 - c003ee02: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39503 + c003efbe: 650a ld a0,128(sp) + c003efc0: 65aa ld a1,136(sp) + c003efc2: 64f2 ld s1,280(sp) + c003efc4: 6952 ld s2,272(sp) + c003efc6: 69b2 ld s3,264(sp) + c003efc8: 6a12 ld s4,256(sp) + c003efca: 7aee ld s5,248(sp) + c003efcc: 7b4e ld s6,240(sp) + c003efce: 7bae ld s7,232(sp) + c003efd0: 6155 addi sp,sp,304 + c003efd2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39511 k1 = (special & special_reduceRight) ? len - k - 1 : k; - c003ee04: 86a6 mv a3,s1 - c003ee06: 00098563 beqz s3,c003ee10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39503 (discriminator 1) - c003ee0a: 17fd addi a5,a5,-1 - c003ee0c: 409786b3 sub a3,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39504 (discriminator 4) + c003efd4: 86a6 mv a3,s1 + c003efd6: 00098563 beqz s3,c003efe0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39511 (discriminator 1) + c003efda: 17fd addi a5,a5,-1 + c003efdc: 409786b3 sub a3,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39512 (discriminator 4) k++; - c003ee10: 0485 addi s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39505 (discriminator 4) + c003efe0: 0485 addi s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39513 (discriminator 4) if (special & special_TA) { - c003ee12: 000a0e63 beqz s4,c003ee2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39506 + c003efe2: 000a0e63 beqz s4,c003effe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39514 acc = JS_GetPropertyInt64(ctx, obj, k1); - c003ee16: 7582 ld a1,32(sp) - c003ee18: 7622 ld a2,40(sp) - c003ee1a: 8522 mv a0,s0 - c003ee1c: 8b2f30ef jal ra,c0031ece - c003ee20: ecae sd a1,88(sp) - c003ee22: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39507 + c003efe6: 7582 ld a1,32(sp) + c003efe8: 7622 ld a2,40(sp) + c003efea: 8522 mv a0,s0 + c003efec: 8b2f30ef jal ra,c003209e + c003eff0: ecae sd a1,88(sp) + c003eff2: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39515 if (JS_IsException(acc)) - c003ee24: 2581 sext.w a1,a1 - c003ee26: 4799 li a5,6 - c003ee28: faf591e3 bne a1,a5,c003edca - c003ee2c: bf05 j c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39511 + c003eff4: 2581 sext.w a1,a1 + c003eff6: 4799 li a5,6 + c003eff8: faf591e3 bne a1,a5,c003ef9a + c003effc: bf05 j c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39519 present = JS_TryGetPropertyInt64(ctx, obj, k1, &acc); - c003ee2e: 7582 ld a1,32(sp) - c003ee30: 7622 ld a2,40(sp) - c003ee32: 0898 addi a4,sp,80 - c003ee34: 8522 mv a0,s0 - c003ee36: ea6f30ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39512 + c003effe: 7582 ld a1,32(sp) + c003f000: 7622 ld a2,40(sp) + c003f002: 0898 addi a4,sp,80 + c003f004: 8522 mv a0,s0 + c003f006: ea6f30ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39520 if (present < 0) - c003ee3a: f20541e3 bltz a0,c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39514 + c003f00a: f20541e3 bltz a0,c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39522 if (present) - c003ee3e: d13d beqz a0,c003eda4 - c003ee40: b769 j c003edca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39520 + c003f00e: d13d beqz a0,c003ef74 + c003f010: b769 j c003ef9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39528 k1 = (special & special_reduceRight) ? len - k - 1 : k; - c003ee42: 89a6 mv s3,s1 - c003ee44: 00090563 beqz s2,c003ee4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39520 (discriminator 1) - c003ee48: 17fd addi a5,a5,-1 - c003ee4a: 409789b3 sub s3,a5,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39521 (discriminator 4) + c003f012: 89a6 mv s3,s1 + c003f014: 00090563 beqz s2,c003f01e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39528 (discriminator 1) + c003f018: 17fd addi a5,a5,-1 + c003f01a: 409789b3 sub s3,a5,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39529 (discriminator 4) if (special & special_TA) { - c003ee4e: 0a0a0063 beqz s4,c003eeee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39522 + c003f01e: 0a0a0063 beqz s4,c003f0be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39530 val = JS_GetPropertyInt64(ctx, obj, k1); - c003ee52: 7582 ld a1,32(sp) - c003ee54: 7622 ld a2,40(sp) - c003ee56: 86ce mv a3,s3 - c003ee58: 8522 mv a0,s0 - c003ee5a: 874f30ef jal ra,c0031ece - c003ee5e: fc2e sd a1,56(sp) - c003ee60: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39523 + c003f022: 7582 ld a1,32(sp) + c003f024: 7622 ld a2,40(sp) + c003f026: 86ce mv a3,s3 + c003f028: 8522 mv a0,s0 + c003f02a: 874f30ef jal ra,c003209e + c003f02e: fc2e sd a1,56(sp) + c003f030: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39531 if (JS_IsException(val)) - c003ee62: 2581 sext.w a1,a1 - c003ee64: ef558ce3 beq a1,s5,c003ed5c + c003f032: 2581 sext.w a1,a1 + c003f034: ef558ce3 beq a1,s5,c003ef2c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003ee68: 0009879b sext.w a5,s3 - c003ee6c: 08f99d63 bne s3,a5,c003ef06 + c003f038: 0009879b sext.w a5,s3 + c003f03c: 08f99d63 bne s3,a5,c003f0d6 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003ee70: cb02 sw zero,148(sp) - c003ee72: c93e sw a5,144(sp) - c003ee74: 674a ld a4,144(sp) - c003ee76: e502 sd zero,136(sp) - c003ee78: 4981 li s3,0 - c003ee7a: e13a sd a4,128(sp) + c003f040: cb02 sw zero,148(sp) + c003f042: c93e sw a5,144(sp) + c003f044: 674a ld a4,144(sp) + c003f046: e502 sd zero,136(sp) + c003f048: 4981 li s3,0 + c003f04a: e13a sd a4,128(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003ee7c: c13e sw a5,128(sp) - c003ee7e: 6b8a ld s7,128(sp) + c003f04c: c13e sw a5,128(sp) + c003f04e: 6b8a ld s7,128(sp) js_array_reduce(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39533 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39541 if (JS_IsException(index_val)) - c003ee80: ed598ee3 beq s3,s5,c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39535 + c003f050: ed598ee3 beq s3,s5,c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39543 args[0] = acc; - c003ee84: 67c6 ld a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 + c003f054: 67c6 ld a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003ee86: 7666 ld a2,120(sp) - c003ee88: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39535 + c003f056: 7666 ld a2,120(sp) + c003f058: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39543 args[0] = acc; - c003ee8a: f13e sd a5,160(sp) - c003ee8c: 67e6 ld a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 + c003f05a: f13e sd a5,160(sp) + c003f05c: 67e6 ld a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003ee8e: 0a010813 addi a6,sp,160 - c003ee92: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39535 + c003f05e: 0a010813 addi a6,sp,160 + c003f062: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39543 args[0] = acc; - c003ee94: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39536 + c003f064: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39544 args[1] = val; - c003ee96: 77c2 ld a5,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 + c003f066: 77c2 ld a5,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003ee98: 470d li a4,3 - c003ee9a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39536 + c003f068: 470d li a4,3 + c003f06a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39544 args[1] = val; - c003ee9c: f93e sd a5,176(sp) - c003ee9e: 77e2 ld a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39537 + c003f06c: f93e sd a5,176(sp) + c003f06e: 77e2 ld a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39545 args[2] = index_val; - c003eea0: e1de sd s7,192(sp) - c003eea2: e5ce sd s3,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39536 + c003f070: e1de sd s7,192(sp) + c003f072: e5ce sd s3,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39544 args[1] = val; - c003eea4: fd3e sd a5,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39538 + c003f074: fd3e sd a5,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39546 args[3] = obj; - c003eea6: 7782 ld a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 + c003f076: 7782 ld a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003eea8: e102 sd zero,128(sp) - c003eeaa: e55a sd s6,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39538 + c003f078: e102 sd zero,128(sp) + c003f07a: e55a sd s6,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39546 args[3] = obj; - c003eeac: e9be sd a5,208(sp) - c003eeae: 77a2 ld a5,40(sp) - c003eeb0: edbe sd a5,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 + c003f07c: e9be sd a5,208(sp) + c003f07e: 77a2 ld a5,40(sp) + c003f080: edbe sd a5,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39547 acc1 = JS_Call(ctx, func, JS_UNDEFINED, 4, args); - c003eeb2: 4791 li a5,4 - c003eeb4: 853fa0ef jal ra,c0039706 - c003eeb8: f0aa sd a0,96(sp) - c003eeba: f4ae sd a1,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39540 + c003f082: 4791 li a5,4 + c003f084: 853fa0ef jal ra,c00398d6 + c003f088: f0aa sd a0,96(sp) + c003f08a: f4ae sd a1,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39548 JS_FreeValue(ctx, index_val); - c003eebc: 864e mv a2,s3 - c003eebe: 85de mv a1,s7 - c003eec0: 8522 mv a0,s0 - c003eec2: c77c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39541 + c003f08c: 864e mv a2,s3 + c003f08e: 85de mv a1,s7 + c003f090: 8522 mv a0,s0 + c003f092: b95c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39549 JS_FreeValue(ctx, val); - c003eec6: 75c2 ld a1,48(sp) - c003eec8: 7662 ld a2,56(sp) - c003eeca: 8522 mv a0,s0 - c003eecc: c6dc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39543 + c003f096: 75c2 ld a1,48(sp) + c003f098: 7662 ld a2,56(sp) + c003f09a: 8522 mv a0,s0 + c003f09c: b8bc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39551 if (JS_IsException(acc1)) - c003eed0: 57a6 lw a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39542 + c003f0a0: 57a6 lw a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39550 val = JS_UNDEFINED; - c003eed2: f802 sd zero,48(sp) - c003eed4: fc5a sd s6,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39543 + c003f0a2: f802 sd zero,48(sp) + c003f0a4: fc5a sd s6,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39551 if (JS_IsException(acc1)) - c003eed6: e95783e3 beq a5,s5,c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39545 + c003f0a6: e95783e3 beq a5,s5,c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39553 JS_FreeValue(ctx, acc); - c003eeda: 65c6 ld a1,80(sp) - c003eedc: 6666 ld a2,88(sp) - c003eede: 8522 mv a0,s0 - c003eee0: c59c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39546 + c003f0aa: 65c6 ld a1,80(sp) + c003f0ac: 6666 ld a2,88(sp) + c003f0ae: 8522 mv a0,s0 + c003f0b0: b77c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39554 acc = acc1; - c003eee4: 7786 ld a5,96(sp) - c003eee6: e8be sd a5,80(sp) - c003eee8: 77a6 ld a5,104(sp) - c003eeea: ecbe sd a5,88(sp) - c003eeec: a819 j c003ef02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39527 + c003f0b4: 7786 ld a5,96(sp) + c003f0b6: e8be sd a5,80(sp) + c003f0b8: 77a6 ld a5,104(sp) + c003f0ba: ecbe sd a5,88(sp) + c003f0bc: a819 j c003f0d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39535 present = JS_TryGetPropertyInt64(ctx, obj, k1, &val); - c003eeee: 7582 ld a1,32(sp) - c003eef0: 7622 ld a2,40(sp) - c003eef2: 1818 addi a4,sp,48 - c003eef4: 86ce mv a3,s3 - c003eef6: 8522 mv a0,s0 - c003eef8: de4f30ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39528 + c003f0be: 7582 ld a1,32(sp) + c003f0c0: 7622 ld a2,40(sp) + c003f0c2: 1818 addi a4,sp,48 + c003f0c4: 86ce mv a3,s3 + c003f0c6: 8522 mv a0,s0 + c003f0c8: de4f30ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39536 if (present < 0) - c003eefc: e60540e3 bltz a0,c003ed5c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39531 + c003f0cc: e60540e3 bltz a0,c003ef2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39539 if (present) { - c003ef00: f525 bnez a0,c003ee68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39519 + c003f0d0: f525 bnez a0,c003f038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39527 for (; k < len; k++) { - c003ef02: 0485 addi s1,s1,1 - c003ef04: b5f9 j c003edd2 + c003f0d2: 0485 addi s1,s1,1 + c003f0d4: b5f9 j c003efa2 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003ef06: d229f7d3 fcvt.d.l fa5,s3 - c003ef0a: 499d li s3,7 - c003ef0c: e20787d3 fmv.x.d a5,fa5 + c003f0d6: d229f7d3 fcvt.d.l fa5,s3 + c003f0da: 499d li s3,7 + c003f0dc: e20787d3 fmv.x.d a5,fa5 js_array_reduce(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003ef10: a13e fsd fa5,128(sp) - c003ef12: 2781 sext.w a5,a5 - c003ef14: b7a5 j c003ee7c + c003f0e0: a13e fsd fa5,128(sp) + c003f0e2: 2781 sext.w a5,a5 + c003f0e4: b7a5 j c003f04c -00000000c003ef16 : +00000000c003f0e6 : js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39315 -{ - c003ef16: 7101 addi sp,sp,-512 - c003ef18: ebd2 sd s4,464(sp) - c003ef1a: 8a3e mv s4,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39323 +{ + c003f0e6: 7101 addi sp,sp,-512 + c003f0e8: ebd2 sd s4,464(sp) + c003f0ea: 8a3e mv s4,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39331 val = JS_UNDEFINED; - c003ef1c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39315 -{ - c003ef1e: fba2 sd s0,496(sp) - c003ef20: f7a6 sd s1,488(sp) - c003ef22: f3ca sd s2,480(sp) - c003ef24: ff5e sd s7,440(sp) - c003ef26: ff86 sd ra,504(sp) - c003ef28: efce sd s3,472(sp) - c003ef2a: e7d6 sd s5,456(sp) - c003ef2c: e3da sd s6,448(sp) - c003ef2e: fb62 sd s8,432(sp) - c003ef30: f766 sd s9,424(sp) - c003ef32: f36a sd s10,416(sp) - c003ef34: ef6e sd s11,408(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39322 - ret = JS_UNDEFINED; - c003ef36: e102 sd zero,128(sp) + c003f0ec: 478d li a5,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39323 +{ + c003f0ee: fba2 sd s0,496(sp) + c003f0f0: f7a6 sd s1,488(sp) + c003f0f2: f3ca sd s2,480(sp) + c003f0f4: ff5e sd s7,440(sp) + c003f0f6: ff86 sd ra,504(sp) + c003f0f8: efce sd s3,472(sp) + c003f0fa: e7d6 sd s5,456(sp) + c003f0fc: e3da sd s6,448(sp) + c003f0fe: fb62 sd s8,432(sp) + c003f100: f766 sd s9,424(sp) + c003f102: f36a sd s10,416(sp) + c003f104: ef6e sd s11,408(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39330 + ret = JS_UNDEFINED; + c003f106: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39331 val = JS_UNDEFINED; - c003ef38: e882 sd zero,80(sp) - c003ef3a: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39324 + c003f108: e882 sd zero,80(sp) + c003f10a: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39332 if (special & special_TA) { - c003ef3c: 008a7b93 andi s7,s4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39315 + c003f10c: 008a7b93 andi s7,s4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39323 { - c003ef40: 84aa mv s1,a0 - c003ef42: 8936 mv s2,a3 - c003ef44: 843a mv s0,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39324 + c003f110: 84aa mv s1,a0 + c003f112: 8936 mv s2,a3 + c003f114: 843a mv s0,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39332 if (special & special_TA) { - c003ef46: 040b8e63 beqz s7,c003efa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39325 + c003f116: 040b8e63 beqz s7,c003f172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39333 obj = JS_DupValue(ctx, this_val); - c003ef4a: 852e mv a0,a1 - c003ef4c: 85b2 mv a1,a2 - c003ef4e: f20c70ef jal ra,c000666e - c003ef52: 862e mv a2,a1 - c003ef54: e0aa sd a0,64(sp) - c003ef56: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39326 + c003f11a: 852e mv a0,a1 + c003f11c: 85b2 mv a1,a2 + c003f11e: e3ec70ef jal ra,c000675c + c003f122: 862e mv a2,a1 + c003f124: e0aa sd a0,64(sp) + c003f126: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39334 len = js_typed_array_get_length_internal(ctx, obj); - c003ef58: 85aa mv a1,a0 - c003ef5a: 8526 mv a0,s1 - c003ef5c: 8bad50ef jal ra,c0014016 - c003ef60: fc2a sd a0,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39327 + c003f128: 85aa mv a1,a0 + c003f12a: 8526 mv a0,s1 + c003f12c: fd9d40ef jal ra,c0014104 + c003f130: fc2a sd a0,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39335 if (len < 0) - c003ef62: 04054b63 bltz a0,c003efb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39334 + c003f132: 04054b63 bltz a0,c003f188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39342 func = argv[0]; - c003ef66: 601c ld a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39335 + c003f136: 601c ld a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39343 this_arg = JS_UNDEFINED; - c003ef68: f102 sd zero,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39334 + c003f138: f102 sd zero,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39342 func = argv[0]; - c003ef6a: e93e sd a5,144(sp) - c003ef6c: 641c ld a5,8(s0) - c003ef6e: ed3e sd a5,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39336 + c003f13a: e93e sd a5,144(sp) + c003f13c: 641c ld a5,8(s0) + c003f13e: ed3e sd a5,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39344 if (argc > 1) - c003ef70: 4785 li a5,1 - c003ef72: 0527c663 blt a5,s2,c003efbe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39335 + c003f140: 4785 li a5,1 + c003f142: 0527c663 blt a5,s2,c003f18e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39343 this_arg = JS_UNDEFINED; - c003ef76: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39339 + c003f146: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39347 if (check_function(ctx, func)) - c003ef78: 65ca ld a1,144(sp) - c003ef7a: 666a ld a2,152(sp) - c003ef7c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39337 + c003f148: 65ca ld a1,144(sp) + c003f14a: 666a ld a2,152(sp) + c003f14c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39345 this_arg = argv[1]; - c003ef7e: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39339 + c003f14e: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39347 if (check_function(ctx, func)) - c003ef80: d28d40ef jal ra,c00134a8 - c003ef84: 842a mv s0,a0 - c003ef86: e90d bnez a0,c003efb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39342 + c003f150: c46d40ef jal ra,c0013596 + c003f154: 842a mv s0,a0 + c003f156: e90d bnez a0,c003f188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39350 switch (special) { - c003ef88: 47b1 li a5,12 - c003ef8a: 1947e863 bltu a5,s4,c003f11a - c003ef8e: 00022697 auipc a3,0x22 - c003ef92: be668693 addi a3,a3,-1050 # c0060b74 - c003ef96: 002a1713 slli a4,s4,0x2 - c003ef9a: 9736 add a4,a4,a3 - c003ef9c: 431c lw a5,0(a4) - c003ef9e: 97b6 add a5,a5,a3 - c003efa0: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39330 + c003f158: 47b1 li a5,12 + c003f15a: 1947e863 bltu a5,s4,c003f2ea + c003f15e: 00022697 auipc a3,0x22 + c003f162: c7668693 addi a3,a3,-906 # c0060dd4 + c003f166: 002a1713 slli a4,s4,0x2 + c003f16a: 9736 add a4,a4,a3 + c003f16c: 431c lw a5,0(a4) + c003f16e: 97b6 add a5,a5,a3 + c003f170: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39338 obj = JS_ToObject(ctx, this_val); - c003efa2: e4ae90ef jal ra,c00285ec - c003efa6: 862a mv a2,a0 - c003efa8: 86ae mv a3,a1 - c003efaa: e0aa sd a0,64(sp) - c003efac: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39331 + c003f172: e4ae90ef jal ra,c00287bc + c003f176: 862a mv a2,a0 + c003f178: 86ae mv a3,a1 + c003f17a: e0aa sd a0,64(sp) + c003f17c: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39339 if (js_get_length64(ctx, &len, obj)) - c003efae: 8526 mv a0,s1 - c003efb0: 182c addi a1,sp,56 - c003efb2: 88ddf0ef jal ra,c001e83e - c003efb6: d945 beqz a0,c003ef66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39322 + c003f17e: 8526 mv a0,s1 + c003f180: 182c addi a1,sp,56 + c003f182: 88ddf0ef jal ra,c001ea0e + c003f186: d945 beqz a0,c003f136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39330 ret = JS_UNDEFINED; - c003efb8: 490d li s2,3 - c003efba: 4401 li s0,0 - c003efbc: a8cd j c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39337 - this_arg = argv[1]; - c003efbe: 681c ld a5,16(s0) - c003efc0: f13e sd a5,160(sp) - c003efc2: 6c1c ld a5,24(s0) - c003efc4: bf55 j c003ef78 + c003f188: 490d li s2,3 + c003f18a: 4401 li s0,0 + c003f18c: a8cd j c003f27e /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39345 + this_arg = argv[1]; + c003f18e: 681c ld a5,16(s0) + c003f190: f13e sd a5,160(sp) + c003f192: 6c1c ld a5,24(s0) + c003f194: bf55 j c003f148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39353 ret = JS_TRUE; - c003efc6: e102 sd zero,128(sp) - c003efc8: 4905 li s2,1 - c003efca: 4405 li s0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39377 + c003f196: e102 sd zero,128(sp) + c003f198: 4905 li s2,1 + c003f19a: 4405 li s0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39385 for(k = 0; k < len; k++) { - c003efcc: 002a1a93 slli s5,s4,0x2 - c003efd0: 00022d17 auipc s10,0x22 - c003efd4: bd8d0d13 addi s10,s10,-1064 # c0060ba8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39426 + c003f19c: 002a1a93 slli s5,s4,0x2 + c003f1a0: 00022d17 auipc s10,0x22 + c003f1a4: c68d0d13 addi s10,s10,-920 # c0060e08 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39434 if (JS_DefinePropertyValueInt64(ctx, ret, n++, JS_DupValue(ctx, val), - c003efd8: 6c11 lui s8,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39375 + c003f1a8: 6c11 lui s8,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39383 n = 0; - c003efda: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39377 + c003f1aa: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39385 for(k = 0; k < len; k++) { - c003efdc: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39390 + c003f1ac: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39398 if (JS_IsException(index_val)) - c003efde: 4c99 li s9,6 - c003efe0: 9aea add s5,s5,s10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39426 + c003f1ae: 4c99 li s9,6 + c003f1b0: 9aea add s5,s5,s10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39434 if (JS_DefinePropertyValueInt64(ctx, ret, n++, JS_DupValue(ctx, val), - c003efe2: 0c1d addi s8,s8,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39377 (discriminator 1) + c003f1b2: 0c1d addi s8,s8,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39385 (discriminator 1) for(k = 0; k < len; k++) { - c003efe4: 77e2 ld a5,56(sp) - c003efe6: 12f9cc63 blt s3,a5,c003f11e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39440 + c003f1b4: 77e2 ld a5,56(sp) + c003f1b6: 12f9cc63 blt s3,a5,c003f2ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39448 if (special == (special_filter | special_TA)) { - c003efea: 47b1 li a5,12 - c003efec: 1efa1f63 bne s4,a5,c003f1ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39442 + c003f1ba: 47b1 li a5,12 + c003f1bc: 1efa1f63 bne s4,a5,c003f3ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39450 args[0] = obj; - c003eff0: 6786 ld a5,64(sp) + c003f1c0: 6786 ld a5,64(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003eff2: e282 sd zero,320(sp) + c003f1c2: e282 sd zero,320(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39443 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39451 args[1] = JS_NewInt32(ctx, n); - c003eff4: 15612023 sw s6,320(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39442 + c003f1c4: 15612023 sw s6,320(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39450 args[0] = obj; - c003eff8: f2be sd a5,352(sp) - c003effa: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39444 + c003f1c8: f2be sd a5,352(sp) + c003f1ca: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003effc: 1290 addi a2,sp,352 - c003effe: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39442 + c003f1cc: 1290 addi a2,sp,352 + c003f1ce: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39450 args[0] = obj; - c003f000: f6be sd a5,360(sp) + c003f1d0: f6be sd a5,360(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003f002: 6796 ld a5,320(sp) + c003f1d2: 6796 ld a5,320(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f004: 8526 mv a0,s1 - c003f006: ee82 sd zero,344(sp) - c003f008: eabe sd a5,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39443 + c003f1d4: 8526 mv a0,s1 + c003f1d6: ee82 sd zero,344(sp) + c003f1d8: eabe sd a5,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39451 args[1] = JS_NewInt32(ctx, n); - c003f00a: fabe sd a5,368(sp) - c003f00c: fe82 sd zero,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39444 + c003f1da: fabe sd a5,368(sp) + c003f1dc: fe82 sd zero,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f00e: ceefc0ef jal ra,c003b4fc - c003f012: f92a sd a0,176(sp) - c003f014: fd2e sd a1,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39445 + c003f1de: ceefc0ef jal ra,c003b6cc + c003f1e2: f92a sd a0,176(sp) + c003f1e4: fd2e sd a1,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39453 if (JS_IsException(arr)) - c003f016: 0005879b sext.w a5,a1 - c003f01a: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39444 + c003f1e6: 0005879b sext.w a5,a1 + c003f1ea: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 arr = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f01c: 8a2e mv s4,a1 - c003f01e: 00050b1b sext.w s6,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39445 + c003f1ec: 8a2e mv s4,a1 + c003f1ee: 00050b1b sext.w s6,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39453 if (JS_IsException(arr)) - c003f022: 09578663 beq a5,s5,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39447 + c003f1f2: 09578663 beq a5,s5,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39455 args[0] = ret; - c003f026: c122 sw s0,128(sp) - c003f028: 678a ld a5,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39448 + c003f1f6: c122 sw s0,128(sp) + c003f1f8: 678a ld a5,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39456 res = JS_Invoke(ctx, arr, JS_ATOM_set, 1, args); - c003f02a: 4705 li a4,1 - c003f02c: 04300693 li a3,67 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39447 + c003f1fa: 4705 li a4,1 + c003f1fc: 04300693 li a3,67 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39455 args[0] = ret; - c003f030: f2be sd a5,352(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39448 + c003f200: f2be sd a5,352(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39456 res = JS_Invoke(ctx, arr, JS_ATOM_set, 1, args); - c003f032: 85aa mv a1,a0 - c003f034: 129c addi a5,sp,352 - c003f036: 8652 mv a2,s4 - c003f038: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39447 + c003f202: 85aa mv a1,a0 + c003f204: 129c addi a5,sp,352 + c003f206: 8652 mv a2,s4 + c003f208: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39455 args[0] = ret; - c003f03a: e54a sd s2,136(sp) - c003f03c: f6ca sd s2,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39448 + c003f20a: e54a sd s2,136(sp) + c003f20c: f6ca sd s2,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39456 res = JS_Invoke(ctx, arr, JS_ATOM_set, 1, args); - c003f03e: ac2f70ef jal ra,c0036300 - c003f042: 89ae mv s3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39449 + c003f20e: ac2f70ef jal ra,c00364d0 + c003f212: 89ae mv s3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39457 if (check_exception_free(ctx, res)) - c003f044: eaaa sd a0,336(sp) - c003f046: eeae sd a1,344(sp) + c003f214: eaaa sd a0,336(sp) + c003f216: eeae sd a1,344(sp) check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003f048: 864e mv a2,s3 - c003f04a: 85aa mv a1,a0 + c003f218: 864e mv a2,s3 + c003f21a: 85aa mv a1,a0 js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39449 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39457 if (check_exception_free(ctx, res)) - c003f04c: 2981 sext.w s3,s3 + c003f21c: 2981 sext.w s3,s3 check_exception_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36766 JS_FreeValue(ctx, obj); - c003f04e: 8526 mv a0,s1 - c003f050: ae9c80ef jal ra,c0007b38 + c003f21e: 8526 mv a0,s1 + c003f220: a07c80ef jal ra,c0007c26 js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39449 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39457 if (check_exception_free(ctx, res)) - c003f054: 05598d63 beq s3,s5,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39451 + c003f224: 05598d63 beq s3,s5,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39459 JS_FreeValue(ctx, ret); - c003f058: 658a ld a1,128(sp) - c003f05a: 662a ld a2,136(sp) - c003f05c: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 + c003f228: 658a ld a1,128(sp) + c003f22a: 662a ld a2,136(sp) + c003f22c: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39460 ret = arr; - c003f05e: 8952 mv s2,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39451 + c003f22e: 8952 mv s2,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39459 JS_FreeValue(ctx, ret); - c003f060: ad9c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39452 + c003f230: 9f7c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39460 ret = arr; - c003f064: 77ca ld a5,176(sp) - c003f066: 845a mv s0,s6 - c003f068: e13e sd a5,128(sp) - c003f06a: a241 j c003f1ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39349 + c003f234: 77ca ld a5,176(sp) + c003f236: 845a mv s0,s6 + c003f238: e13e sd a5,128(sp) + c003f23a: a241 j c003f3ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39357 ret = JS_FALSE; - c003f06c: e102 sd zero,128(sp) - c003f06e: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39350 + c003f23c: e102 sd zero,128(sp) + c003f23e: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39358 break; - c003f070: bfb1 j c003efcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39353 + c003f240: bfb1 j c003f19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39361 ret = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt64(ctx, len)); - c003f072: 77e2 ld a5,56(sp) + c003f242: 77e2 ld a5,56(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003f074: 0007869b sext.w a3,a5 - c003f078: 04d79f63 bne a5,a3,c003f0d6 + c003f244: 0007869b sext.w a3,a5 + c003f248: 04d79f63 bne a5,a3,c003f2a6 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f07c: 10012223 sw zero,260(sp) - c003f080: 10d12023 sw a3,256(sp) - c003f084: 6792 ld a5,256(sp) - c003f086: f682 sd zero,360(sp) - c003f088: 4701 li a4,0 - c003f08a: f2be sd a5,352(sp) + c003f24c: 10012223 sw zero,260(sp) + c003f250: 10d12023 sw a3,256(sp) + c003f254: 6792 ld a5,256(sp) + c003f256: f682 sd zero,360(sp) + c003f258: 4701 li a4,0 + c003f25a: f2be sd a5,352(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003f08c: 16d12023 sw a3,352(sp) + c003f25c: 16d12023 sw a3,352(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39353 - c003f090: 7696 ld a3,352(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39358 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39361 + c003f260: 7696 ld a3,352(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39366 ret = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c003f092: 6586 ld a1,64(sp) - c003f094: 6626 ld a2,72(sp) - c003f096: 8526 mv a0,s1 - c003f098: a47f90ef jal ra,c0038ade -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39370 + c003f262: 6586 ld a1,64(sp) + c003f264: 6626 ld a2,72(sp) + c003f266: 8526 mv a0,s1 + c003f268: a47f90ef jal ra,c0038cae +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39378 ret = JS_NewArray(ctx); - c003f09c: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39371 + c003f26c: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39379 if (JS_IsException(ret)) - c003f09e: 0005871b sext.w a4,a1 - c003f0a2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39370 + c003f26e: 0005871b sext.w a4,a1 + c003f272: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39378 ret = JS_NewArray(ctx); - c003f0a4: 0005041b sext.w s0,a0 - c003f0a8: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39371 + c003f274: 0005041b sext.w s0,a0 + c003f278: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39379 if (JS_IsException(ret)) - c003f0aa: f2f711e3 bne a4,a5,c003efcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39459 + c003f27a: f2f711e3 bne a4,a5,c003f19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39467 JS_FreeValue(ctx, ret); - c003f0ae: c122 sw s0,128(sp) - c003f0b0: 658a ld a1,128(sp) - c003f0b2: 864a mv a2,s2 - c003f0b4: 8526 mv a0,s1 - c003f0b6: a83c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39460 + c003f27e: c122 sw s0,128(sp) + c003f280: 658a ld a1,128(sp) + c003f282: 864a mv a2,s2 + c003f284: 8526 mv a0,s1 + c003f286: 9a1c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39468 JS_FreeValue(ctx, val); - c003f0ba: 65c6 ld a1,80(sp) - c003f0bc: 6666 ld a2,88(sp) - c003f0be: 8526 mv a0,s1 - c003f0c0: a79c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39461 + c003f28a: 65c6 ld a1,80(sp) + c003f28c: 6666 ld a2,88(sp) + c003f28e: 8526 mv a0,s1 + c003f290: 997c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39469 JS_FreeValue(ctx, obj); - c003f0c4: 6586 ld a1,64(sp) - c003f0c6: 6626 ld a2,72(sp) - c003f0c8: 8526 mv a0,s1 - c003f0ca: a6fc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39462 + c003f294: 6586 ld a1,64(sp) + c003f296: 6626 ld a2,72(sp) + c003f298: 8526 mv a0,s1 + c003f29a: 98dc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39470 return JS_EXCEPTION; - c003f0ce: 4799 li a5,6 - c003f0d0: ea82 sd zero,336(sp) - c003f0d2: eebe sd a5,344(sp) - c003f0d4: aa0d j c003f206 + c003f29e: 4799 li a5,6 + c003f2a0: ea82 sd zero,336(sp) + c003f2a2: eebe sd a5,344(sp) + c003f2a4: aa0d j c003f3d6 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003f0d6: d227f7d3 fcvt.d.l fa5,a5 - c003f0da: 471d li a4,7 - c003f0dc: e20786d3 fmv.x.d a3,fa5 + c003f2a6: d227f7d3 fcvt.d.l fa5,a5 + c003f2aa: 471d li a4,7 + c003f2ac: e20786d3 fmv.x.d a3,fa5 js_array_every(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003f0e0: b2be fsd fa5,352(sp) - c003f0e2: 2681 sext.w a3,a3 - c003f0e4: b765 j c003f08c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39358 + c003f2b0: b2be fsd fa5,352(sp) + c003f2b2: 2681 sext.w a3,a3 + c003f2b4: b765 j c003f25c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39366 ret = JS_ArraySpeciesCreate(ctx, obj, JS_NewInt32(ctx, 0)); - c003f0e6: 4681 li a3,0 - c003f0e8: 4701 li a4,0 - c003f0ea: b765 j c003f092 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39363 + c003f2b6: 4681 li a3,0 + c003f2b8: 4701 li a4,0 + c003f2ba: b765 j c003f262 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39371 args[0] = obj; - c003f0ec: 6786 ld a5,64(sp) + c003f2bc: 6786 ld a5,64(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f0ee: ea02 sd zero,272(sp) + c003f2be: ea02 sd zero,272(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39365 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39373 ret = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f0f0: 1290 addi a2,sp,352 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39363 + c003f2c0: 1290 addi a2,sp,352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39371 args[0] = obj; - c003f0f2: f2be sd a5,352(sp) - c003f0f4: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39365 + c003f2c2: f2be sd a5,352(sp) + c003f2c4: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39373 ret = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f0f6: 8526 mv a0,s1 - c003f0f8: 4589 li a1,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39363 + c003f2c6: 8526 mv a0,s1 + c003f2c8: 4589 li a1,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39371 args[0] = obj; - c003f0fa: f6be sd a5,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39364 + c003f2ca: f6be sd a5,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39372 args[1] = JS_NewInt32(ctx, len); - c003f0fc: 57e2 lw a5,56(sp) + c003f2cc: 57e2 lw a5,56(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003f0fe: ee82 sd zero,344(sp) + c003f2ce: ee82 sd zero,344(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39364 - c003f100: fe82 sd zero,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39365 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39372 + c003f2d0: fe82 sd zero,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39373 ret = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f102: 10f12823 sw a5,272(sp) - c003f106: 67d2 ld a5,272(sp) - c003f108: eabe sd a5,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39364 + c003f2d2: 10f12823 sw a5,272(sp) + c003f2d6: 67d2 ld a5,272(sp) + c003f2d8: eabe sd a5,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39372 args[1] = JS_NewInt32(ctx, len); - c003f10a: fabe sd a5,368(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39365 + c003f2da: fabe sd a5,368(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39373 ret = js_typed_array___speciesCreate(ctx, JS_UNDEFINED, 2, args); - c003f10c: bf0fc0ef jal ra,c003b4fc - c003f110: b771 j c003f09c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39370 + c003f2dc: bf0fc0ef jal ra,c003b6cc + c003f2e0: b771 j c003f26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39378 ret = JS_NewArray(ctx); - c003f112: 8526 mv a0,s1 - c003f114: eabd70ef jal ra,c0016fbe - c003f118: b751 j c003f09c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39339 + c003f2e2: 8526 mv a0,s1 + c003f2e4: eabd70ef jal ra,c001718e + c003f2e8: b751 j c003f26c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39347 if (check_function(ctx, func)) - c003f11a: 490d li s2,3 - c003f11c: bd45 j c003efcc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39378 + c003f2ea: 490d li s2,3 + c003f2ec: bd45 j c003f19c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39386 if (special & special_TA) { - c003f11e: 080b8963 beqz s7,c003f1b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39379 + c003f2ee: 080b8963 beqz s7,c003f380 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39387 val = JS_GetPropertyInt64(ctx, obj, k); - c003f122: 6586 ld a1,64(sp) - c003f124: 6626 ld a2,72(sp) - c003f126: 86ce mv a3,s3 - c003f128: 8526 mv a0,s1 - c003f12a: da5f20ef jal ra,c0031ece - c003f12e: ecae sd a1,88(sp) - c003f130: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39380 + c003f2f2: 6586 ld a1,64(sp) + c003f2f4: 6626 ld a2,72(sp) + c003f2f6: 86ce mv a3,s3 + c003f2f8: 8526 mv a0,s1 + c003f2fa: da5f20ef jal ra,c003209e + c003f2fe: ecae sd a1,88(sp) + c003f300: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39388 if (JS_IsException(val)) - c003f132: 2581 sext.w a1,a1 - c003f134: f7958de3 beq a1,s9,c003f0ae + c003f302: 2581 sext.w a1,a1 + c003f304: f7958de3 beq a1,s9,c003f27e JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003f138: 00098d9b sext.w s11,s3 - c003f13c: 09b99663 bne s3,s11,c003f1c8 + c003f308: 00098d9b sext.w s11,s3 + c003f30c: 09b99663 bne s3,s11,c003f398 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f140: 12012223 sw zero,292(sp) - c003f144: 13312023 sw s3,288(sp) - c003f148: 7792 ld a5,288(sp) - c003f14a: ee82 sd zero,344(sp) - c003f14c: 4881 li a7,0 - c003f14e: eabe sd a5,336(sp) - c003f150: 87ce mv a5,s3 + c003f310: 12012223 sw zero,292(sp) + c003f314: 13312023 sw s3,288(sp) + c003f318: 7792 ld a5,288(sp) + c003f31a: ee82 sd zero,344(sp) + c003f31c: 4881 li a7,0 + c003f31e: eabe sd a5,336(sp) + c003f320: 87ce mv a5,s3 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003f152: 14f12823 sw a5,336(sp) - c003f156: 27d6 fld fa5,336(sp) - c003f158: a43e fsd fa5,8(sp) + c003f322: 14f12823 sw a5,336(sp) + c003f326: 27d6 fld fa5,336(sp) + c003f328: a43e fsd fa5,8(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39398 if (JS_IsException(index_val)) - c003f15a: f5988ae3 beq a7,s9,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39392 + c003f32a: f5988ae3 beq a7,s9,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39400 args[0] = val; - c003f15e: 67c6 ld a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f32e: 67c6 ld a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f160: 768a ld a3,160(sp) - c003f162: 772a ld a4,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39392 + c003f330: 768a ld a3,160(sp) + c003f332: 772a ld a4,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39400 args[0] = val; - c003f164: f2be sd a5,352(sp) - c003f166: 67e6 ld a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f334: f2be sd a5,352(sp) + c003f336: 67e6 ld a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f168: 666a ld a2,152(sp) - c003f16a: 65ca ld a1,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39392 + c003f338: 666a ld a2,152(sp) + c003f33a: 65ca ld a1,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39400 args[0] = val; - c003f16c: f6be sd a5,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39394 + c003f33c: f6be sd a5,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39402 args[2] = obj; - c003f16e: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f33e: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f170: 16010813 addi a6,sp,352 - c003f174: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39394 + c003f340: 16010813 addi a6,sp,352 + c003f344: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39402 args[2] = obj; - c003f176: e33e sd a5,384(sp) - c003f178: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39393 + c003f346: e33e sd a5,384(sp) + c003f348: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39401 args[1] = index_val; - c003f17a: babe fsd fa5,368(sp) - c003f17c: fec6 sd a7,376(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39394 + c003f34a: babe fsd fa5,368(sp) + c003f34c: fec6 sd a7,376(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39402 args[2] = obj; - c003f17e: e73e sd a5,392(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f34e: e73e sd a5,392(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f180: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39393 + c003f350: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39401 args[1] = index_val; - c003f182: ec46 sd a7,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f352: ec46 sd a7,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f184: d82fa0ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39396 + c003f354: d82fa0ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39404 JS_FreeValue(ctx, index_val); - c003f188: 68e2 ld a7,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f358: 68e2 ld a7,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f18a: fcae sd a1,120(sp) - c003f18c: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39396 + c003f35a: fcae sd a1,120(sp) + c003f35c: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39404 JS_FreeValue(ctx, index_val); - c003f18e: 65a2 ld a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39395 + c003f35e: 65a2 ld a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 res = JS_Call(ctx, func, this_arg, 3, args); - c003f190: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39396 + c003f360: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39404 JS_FreeValue(ctx, index_val); - c003f192: 8646 mv a2,a7 - c003f194: 8526 mv a0,s1 - c003f196: 9a3c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39397 + c003f362: 8646 mv a2,a7 + c003f364: 8526 mv a0,s1 + c003f366: 8c1c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39405 if (JS_IsException(res)) - c003f19a: 67c2 ld a5,16(sp) - c003f19c: 2781 sext.w a5,a5 - c003f19e: f19788e3 beq a5,s9,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39399 + c003f36a: 67c2 ld a5,16(sp) + c003f36c: 2781 sext.w a5,a5 + c003f36e: f19788e3 beq a5,s9,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39407 switch (special) { - c003f1a2: 47b1 li a5,12 - c003f1a4: 1147eb63 bltu a5,s4,c003f2ba - c003f1a8: 000aa783 lw a5,0(s5) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> - c003f1ac: 97ea add a5,a5,s10 - c003f1ae: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39384 + c003f372: 47b1 li a5,12 + c003f374: 1147eb63 bltu a5,s4,c003f48a + c003f378: 000aa783 lw a5,0(s5) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> + c003f37c: 97ea add a5,a5,s10 + c003f37e: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39392 present = JS_TryGetPropertyInt64(ctx, obj, k, &val); - c003f1b0: 6586 ld a1,64(sp) - c003f1b2: 6626 ld a2,72(sp) - c003f1b4: 0898 addi a4,sp,80 - c003f1b6: 86ce mv a3,s3 - c003f1b8: 8526 mv a0,s1 - c003f1ba: b22f30ef jal ra,c00324dc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39385 + c003f380: 6586 ld a1,64(sp) + c003f382: 6626 ld a2,72(sp) + c003f384: 0898 addi a4,sp,80 + c003f386: 86ce mv a3,s3 + c003f388: 8526 mv a0,s1 + c003f38a: b22f30ef jal ra,c00326ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39393 if (present < 0) - c003f1be: ee0548e3 bltz a0,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39388 + c003f38e: ee0548e3 bltz a0,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39396 if (present) { - c003f1c2: f93d bnez a0,c003f138 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39377 (discriminator 2) + c003f392: f93d bnez a0,c003f308 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39385 (discriminator 2) for(k = 0; k < len; k++) { - c003f1c4: 0985 addi s3,s3,1 - c003f1c6: bd39 j c003efe4 + c003f394: 0985 addi s3,s3,1 + c003f396: bd39 j c003f1b4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003f1c8: d229f7d3 fcvt.d.l fa5,s3 - c003f1cc: 489d li a7,7 - c003f1ce: e20787d3 fmv.x.d a5,fa5 + c003f398: d229f7d3 fcvt.d.l fa5,s3 + c003f39c: 489d li a7,7 + c003f39e: e20787d3 fmv.x.d a5,fa5 js_array_every(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003f1d2: aabe fsd fa5,336(sp) - c003f1d4: 2781 sext.w a5,a5 - c003f1d6: bfb5 j c003f152 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39402 + c003f3a2: aabe fsd fa5,336(sp) + c003f3a4: 2781 sext.w a5,a5 + c003f3a6: bfb5 j c003f322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39410 if (!JS_ToBoolFree(ctx, res)) { - c003f1d8: 75c6 ld a1,112(sp) - c003f1da: 7666 ld a2,120(sp) - c003f1dc: 8526 mv a0,s1 - c003f1de: c87c80ef jal ra,c0007e64 - c003f1e2: e935 bnez a0,c003f256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39403 + c003f3a8: 75c6 ld a1,112(sp) + c003f3aa: 7666 ld a2,120(sp) + c003f3ac: 8526 mv a0,s1 + c003f3ae: ba5c80ef jal ra,c0007f52 + c003f3b2: e935 bnez a0,c003f426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39411 ret = JS_FALSE; - c003f1e4: c302 sw zero,132(sp) - c003f1e6: 4401 li s0,0 - c003f1e8: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39454 + c003f3b4: c302 sw zero,132(sp) + c003f3b6: 4401 li s0,0 + c003f3b8: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39462 JS_FreeValue(ctx, val); - c003f1ea: 65c6 ld a1,80(sp) - c003f1ec: 6666 ld a2,88(sp) - c003f1ee: 8526 mv a0,s1 - c003f1f0: 949c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39455 + c003f3ba: 65c6 ld a1,80(sp) + c003f3bc: 6666 ld a2,88(sp) + c003f3be: 8526 mv a0,s1 + c003f3c0: 867c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39463 JS_FreeValue(ctx, obj); - c003f1f4: 6586 ld a1,64(sp) - c003f1f6: 6626 ld a2,72(sp) - c003f1f8: 8526 mv a0,s1 - c003f1fa: 93fc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39456 + c003f3c4: 6586 ld a1,64(sp) + c003f3c6: 6626 ld a2,72(sp) + c003f3c8: 8526 mv a0,s1 + c003f3ca: 85dc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39464 return ret; - c003f1fe: c122 sw s0,128(sp) - c003f200: 678a ld a5,128(sp) - c003f202: eeca sd s2,344(sp) - c003f204: eabe sd a5,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39463 -} - c003f206: 70fe ld ra,504(sp) - c003f208: 745e ld s0,496(sp) - c003f20a: 6556 ld a0,336(sp) - c003f20c: 65f6 ld a1,344(sp) - c003f20e: 74be ld s1,488(sp) - c003f210: 791e ld s2,480(sp) - c003f212: 69fe ld s3,472(sp) - c003f214: 6a5e ld s4,464(sp) - c003f216: 6abe ld s5,456(sp) - c003f218: 6b1e ld s6,448(sp) - c003f21a: 7bfa ld s7,440(sp) - c003f21c: 7c5a ld s8,432(sp) - c003f21e: 7cba ld s9,424(sp) - c003f220: 7d1a ld s10,416(sp) - c003f222: 6dfa ld s11,408(sp) - c003f224: 20010113 addi sp,sp,512 - c003f228: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39409 + c003f3ce: c122 sw s0,128(sp) + c003f3d0: 678a ld a5,128(sp) + c003f3d2: eeca sd s2,344(sp) + c003f3d4: eabe sd a5,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39471 +} + c003f3d6: 70fe ld ra,504(sp) + c003f3d8: 745e ld s0,496(sp) + c003f3da: 6556 ld a0,336(sp) + c003f3dc: 65f6 ld a1,344(sp) + c003f3de: 74be ld s1,488(sp) + c003f3e0: 791e ld s2,480(sp) + c003f3e2: 69fe ld s3,472(sp) + c003f3e4: 6a5e ld s4,464(sp) + c003f3e6: 6abe ld s5,456(sp) + c003f3e8: 6b1e ld s6,448(sp) + c003f3ea: 7bfa ld s7,440(sp) + c003f3ec: 7c5a ld s8,432(sp) + c003f3ee: 7cba ld s9,424(sp) + c003f3f0: 7d1a ld s10,416(sp) + c003f3f2: 6dfa ld s11,408(sp) + c003f3f4: 20010113 addi sp,sp,512 + c003f3f8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39417 if (JS_ToBoolFree(ctx, res)) { - c003f22a: 75c6 ld a1,112(sp) - c003f22c: 7666 ld a2,120(sp) - c003f22e: 8526 mv a0,s1 - c003f230: c35c80ef jal ra,c0007e64 - c003f234: c10d beqz a0,c003f256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39410 + c003f3fa: 75c6 ld a1,112(sp) + c003f3fc: 7666 ld a2,120(sp) + c003f3fe: 8526 mv a0,s1 + c003f400: b53c80ef jal ra,c0007f52 + c003f404: c10d beqz a0,c003f426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39418 ret = JS_TRUE; - c003f236: c302 sw zero,132(sp) - c003f238: 4905 li s2,1 - c003f23a: 4405 li s0,1 - c003f23c: b77d j c003f1ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39415 + c003f406: c302 sw zero,132(sp) + c003f408: 4905 li s2,1 + c003f40a: 4405 li s0,1 + c003f40c: b77d j c003f3ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39423 if (JS_DefinePropertyValueInt64(ctx, ret, k, res, - c003f23e: c122 sw s0,128(sp) - c003f240: 7746 ld a4,112(sp) - c003f242: 77e6 ld a5,120(sp) - c003f244: 658a ld a1,128(sp) - c003f246: 8862 mv a6,s8 - c003f248: 86ce mv a3,s3 - c003f24a: 864a mv a2,s2 - c003f24c: 8526 mv a0,s1 - c003f24e: cc8ea0ef jal ra,c0029716 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39420 + c003f40e: c122 sw s0,128(sp) + c003f410: 7746 ld a4,112(sp) + c003f412: 77e6 ld a5,120(sp) + c003f414: 658a ld a1,128(sp) + c003f416: 8862 mv a6,s8 + c003f418: 86ce mv a3,s3 + c003f41a: 864a mv a2,s2 + c003f41c: 8526 mv a0,s1 + c003f41e: cc8ea0ef jal ra,c00298e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39428 if (JS_SetPropertyValue(ctx, ret, JS_NewInt32(ctx, k), res, JS_PROP_THROW) < 0) - c003f252: e4054ee3 bltz a0,c003f0ae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39435 (discriminator 2) + c003f422: e4054ee3 bltz a0,c003f27e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39443 (discriminator 2) JS_FreeValue(ctx, val); - c003f256: 65c6 ld a1,80(sp) - c003f258: 6666 ld a2,88(sp) - c003f25a: 8526 mv a0,s1 - c003f25c: 8ddc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39436 (discriminator 2) + c003f426: 65c6 ld a1,80(sp) + c003f428: 6666 ld a2,88(sp) + c003f42a: 8526 mv a0,s1 + c003f42c: ffac80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39444 (discriminator 2) val = JS_UNDEFINED; - c003f260: 478d li a5,3 - c003f262: e882 sd zero,80(sp) - c003f264: ecbe sd a5,88(sp) - c003f266: bfb9 j c003f1c4 + c003f430: 478d li a5,3 + c003f432: e882 sd zero,80(sp) + c003f434: ecbe sd a5,88(sp) + c003f436: bfb9 j c003f394 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f268: fa02 sd zero,304(sp) - c003f26a: 13b12823 sw s11,304(sp) + c003f438: fa02 sd zero,304(sp) + c003f43a: 13b12823 sw s11,304(sp) js_array_every(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39428 if (JS_SetPropertyValue(ctx, ret, JS_NewInt32(ctx, k), res, JS_PROP_THROW) < 0) - c003f26e: c122 sw s0,128(sp) - c003f270: 77c6 ld a5,112(sp) - c003f272: 7866 ld a6,120(sp) - c003f274: 76d2 ld a3,304(sp) - c003f276: 658a ld a1,128(sp) - c003f278: 6891 lui a7,0x4 - c003f27a: 4701 li a4,0 - c003f27c: 864a mv a2,s2 - c003f27e: 8526 mv a0,s1 - c003f280: c08d30ef jal ra,c0012688 - c003f284: b7f9 j c003f252 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39425 + c003f43e: c122 sw s0,128(sp) + c003f440: 77c6 ld a5,112(sp) + c003f442: 7866 ld a6,120(sp) + c003f444: 76d2 ld a3,304(sp) + c003f446: 658a ld a1,128(sp) + c003f448: 6891 lui a7,0x4 + c003f44a: 4701 li a4,0 + c003f44c: 864a mv a2,s2 + c003f44e: 8526 mv a0,s1 + c003f450: b26d30ef jal ra,c0012776 + c003f454: b7f9 j c003f422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39433 if (JS_ToBoolFree(ctx, res)) { - c003f286: 75c6 ld a1,112(sp) - c003f288: 7666 ld a2,120(sp) - c003f28a: 8526 mv a0,s1 - c003f28c: bd9c80ef jal ra,c0007e64 - c003f290: d179 beqz a0,c003f256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39426 + c003f456: 75c6 ld a1,112(sp) + c003f458: 7666 ld a2,120(sp) + c003f45a: 8526 mv a0,s1 + c003f45c: af7c80ef jal ra,c0007f52 + c003f460: d179 beqz a0,c003f426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39434 if (JS_DefinePropertyValueInt64(ctx, ret, n++, JS_DupValue(ctx, val), - c003f292: 6546 ld a0,80(sp) - c003f294: 65e6 ld a1,88(sp) - c003f296: 001b0d93 addi s11,s6,1 - c003f29a: bd4c70ef jal ra,c000666e - c003f29e: c122 sw s0,128(sp) - c003f2a0: 87ae mv a5,a1 - c003f2a2: 658a ld a1,128(sp) - c003f2a4: 872a mv a4,a0 - c003f2a6: 8862 mv a6,s8 - c003f2a8: 86da mv a3,s6 - c003f2aa: 864a mv a2,s2 - c003f2ac: 8526 mv a0,s1 - c003f2ae: c68ea0ef jal ra,c0029716 - c003f2b2: de054ee3 bltz a0,c003f0ae - c003f2b6: 8b6e mv s6,s11 - c003f2b8: bf79 j c003f256 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39432 + c003f462: 6546 ld a0,80(sp) + c003f464: 65e6 ld a1,88(sp) + c003f466: 001b0d93 addi s11,s6,1 + c003f46a: af2c70ef jal ra,c000675c + c003f46e: c122 sw s0,128(sp) + c003f470: 87ae mv a5,a1 + c003f472: 658a ld a1,128(sp) + c003f474: 872a mv a4,a0 + c003f476: 8862 mv a6,s8 + c003f478: 86da mv a3,s6 + c003f47a: 864a mv a2,s2 + c003f47c: 8526 mv a0,s1 + c003f47e: c68ea0ef jal ra,c00298e6 + c003f482: de054ee3 bltz a0,c003f27e + c003f486: 8b6e mv s6,s11 + c003f488: bf79 j c003f426 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39440 JS_FreeValue(ctx, res); - c003f2ba: 75c6 ld a1,112(sp) - c003f2bc: 7666 ld a2,120(sp) - c003f2be: 8526 mv a0,s1 - c003f2c0: 879c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39433 + c003f48a: 75c6 ld a1,112(sp) + c003f48c: 7666 ld a2,120(sp) + c003f48e: 8526 mv a0,s1 + c003f490: f96c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:39441 break; - c003f2c4: bf49 j c003f256 + c003f494: bf49 j c003f426 -00000000c003f2c6 : +00000000c003f496 : js_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38485 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38493 { - c003f2c6: 7179 addi sp,sp,-48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38486 + c003f496: 7179 addi sp,sp,-48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38494 if (argc <= 0) { - c003f2c8: 00d04963 bgtz a3,c003f2da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38487 + c003f498: 00d04963 bgtz a3,c003f4aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38495 return JS_Call(ctx, this_val, JS_UNDEFINED, 0, NULL); - c003f2cc: 4801 li a6,0 - c003f2ce: 4781 li a5,0 - c003f2d0: 4681 li a3,0 - c003f2d2: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38491 -} - c003f2d4: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38489 + c003f49c: 4801 li a6,0 + c003f49e: 4781 li a5,0 + c003f4a0: 4681 li a3,0 + c003f4a2: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38499 +} + c003f4a4: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:38497 return JS_Call(ctx, this_val, argv[0], argc - 1, argv + 1); - c003f2d6: c30fa06f j c0039706 - c003f2da: 01070813 addi a6,a4,16 - c003f2de: fff6879b addiw a5,a3,-1 - c003f2e2: 6314 ld a3,0(a4) - c003f2e4: 6718 ld a4,8(a4) - c003f2e6: b7fd j c003f2d4 - -00000000c003f2e8 : + c003f4a6: c30fa06f j c00398d6 + c003f4aa: 01070813 addi a6,a4,16 + c003f4ae: fff6879b addiw a5,a3,-1 + c003f4b2: 6314 ld a3,0(a4) + c003f4b4: 6718 ld a4,8(a4) + c003f4b6: b7fd j c003f4a4 + +00000000c003f4b8 : js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 -{ - c003f2e8: 7109 addi sp,sp,-384 - c003f2ea: faa2 sd s0,368(sp) - c003f2ec: f6a6 sd s1,360(sp) - c003f2ee: fe86 sd ra,376(sp) - c003f2f0: f2ca sd s2,352(sp) - c003f2f2: eece sd s3,344(sp) - c003f2f4: ead2 sd s4,336(sp) - c003f2f6: e6d6 sd s5,328(sp) - c003f2f8: e2da sd s6,320(sp) - c003f2fa: fe5e sd s7,312(sp) - c003f2fc: fa62 sd s8,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53440 +{ + c003f4b8: 7109 addi sp,sp,-384 + c003f4ba: faa2 sd s0,368(sp) + c003f4bc: f6a6 sd s1,360(sp) + c003f4be: fe86 sd ra,376(sp) + c003f4c0: f2ca sd s2,352(sp) + c003f4c2: eece sd s3,344(sp) + c003f4c4: ead2 sd s4,336(sp) + c003f4c6: e6d6 sd s5,328(sp) + c003f4c8: e2da sd s6,320(sp) + c003f4ca: fe5e sd s7,312(sp) + c003f4cc: fa62 sd s8,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53442 JSValueConst items = argv[0], mapfn, this_arg; - c003f2fe: 631c ld a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 + c003f4ce: 631c ld a5,0(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53440 { - c003f300: 84ba mv s1,a4 - c003f302: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53434 + c003f4d0: 84ba mv s1,a4 + c003f4d2: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53442 JSValueConst items = argv[0], mapfn, this_arg; - c003f304: f83e sd a5,48(sp) - c003f306: 671c ld a5,8(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 + c003f4d4: f83e sd a5,48(sp) + c003f4d6: 671c ld a5,8(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53440 { - c003f308: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53442 + c003f4d8: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53450 mapfn = JS_UNDEFINED; - c003f30a: e082 sd zero,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53434 + c003f4da: e082 sd zero,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53442 JSValueConst items = argv[0], mapfn, this_arg; - c003f30c: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53443 + c003f4dc: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53451 this_arg = JS_UNDEFINED; - c003f30e: 478d li a5,3 - c003f310: e882 sd zero,80(sp) - c003f312: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53444 + c003f4de: 478d li a5,3 + c003f4e0: e882 sd zero,80(sp) + c003f4e2: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53452 r = JS_UNDEFINED; - c003f314: e102 sd zero,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53445 + c003f4e4: e102 sd zero,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53453 arr = JS_UNDEFINED; - c003f316: f882 sd zero,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53446 + c003f4e6: f882 sd zero,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53454 stack[0] = JS_UNDEFINED; - c003f318: ea02 sd zero,272(sp) - c003f31a: ee3e sd a5,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53447 + c003f4e8: ea02 sd zero,272(sp) + c003f4ea: ee3e sd a5,280(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53455 stack[1] = JS_UNDEFINED; - c003f31c: f202 sd zero,288(sp) - c003f31e: f63e sd a5,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53449 + c003f4ec: f202 sd zero,288(sp) + c003f4ee: f63e sd a5,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53457 if (argc > 1) { - c003f320: 4705 li a4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53432 + c003f4f0: 4705 li a4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53440 { - c003f322: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53449 + c003f4f2: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53457 if (argc > 1) { - c003f324: 0ed75163 bge a4,a3,c003f406 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53450 + c003f4f4: 0ed75163 bge a4,a3,c003f5d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53458 mapfn = argv[1]; - c003f328: 688c ld a1,16(s1) - c003f32a: 0184ba03 ld s4,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53441 + c003f4f8: 688c ld a1,16(s1) + c003f4fa: 0184ba03 ld s4,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53449 mapping = FALSE; - c003f32e: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53450 + c003f4fe: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53458 mapfn = argv[1]; - c003f330: e0ae sd a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53451 + c003f500: e0ae sd a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53459 if (!JS_IsUndefined(mapfn)) { - c003f332: 000a071b sext.w a4,s4 - c003f336: 02f70963 beq a4,a5,c003f368 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53452 + c003f502: 000a071b sext.w a4,s4 + c003f506: 02f70963 beq a4,a5,c003f538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53460 if (check_function(ctx, mapfn)) - c003f33a: 8652 mv a2,s4 - c003f33c: 8936 mv s2,a3 - c003f33e: 96ad40ef jal ra,c00134a8 - c003f342: c919 beqz a0,c003f358 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53444 + c003f50a: 8652 mv a2,s4 + c003f50c: 8936 mv s2,a3 + c003f50e: 888d40ef jal ra,c0013596 + c003f512: c919 beqz a0,c003f528 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53452 r = JS_UNDEFINED; - c003f344: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53445 + c003f514: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53453 arr = JS_UNDEFINED; - c003f346: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53514 + c003f516: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53522 JS_FreeValue(ctx, r); - c003f348: 658a ld a1,128(sp) - c003f34a: 8626 mv a2,s1 - c003f34c: 8522 mv a0,s0 - c003f34e: feac80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53515 + c003f518: 658a ld a1,128(sp) + c003f51a: 8626 mv a2,s1 + c003f51c: 8522 mv a0,s0 + c003f51e: f08c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53523 r = JS_EXCEPTION; - c003f352: 4499 li s1,6 - c003f354: e102 sd zero,128(sp) - c003f356: a235 j c003f482 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53455 + c003f522: 4499 li s1,6 + c003f524: e102 sd zero,128(sp) + c003f526: a235 j c003f652 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53463 if (argc > 2) - c003f358: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53454 + c003f528: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53462 mapping = 1; - c003f35a: 4985 li s3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53455 + c003f52a: 4985 li s3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53463 if (argc > 2) - c003f35c: 00f90663 beq s2,a5,c003f368 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53456 + c003f52c: 00f90663 beq s2,a5,c003f538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53464 this_arg = argv[2]; - c003f360: 709c ld a5,32(s1) - c003f362: e8be sd a5,80(sp) - c003f364: 749c ld a5,40(s1) - c003f366: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53459 + c003f530: 709c ld a5,32(s1) + c003f532: e8be sd a5,80(sp) + c003f534: 749c ld a5,40(s1) + c003f536: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53467 iter = JS_GetProperty(ctx, items, JS_ATOM_Symbol_iterator); - c003f368: 77e2 ld a5,56(sp) - c003f36a: 7742 ld a4,48(sp) + c003f538: 77e2 ld a5,56(sp) + c003f53a: 7742 ld a4,48(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003f36c: 4801 li a6,0 - c003f36e: 863e mv a2,a5 - c003f370: 0cc00693 li a3,204 - c003f374: 85ba mv a1,a4 - c003f376: 8522 mv a0,s0 - c003f378: fdbe sd a5,248(sp) - c003f37a: f9ba sd a4,240(sp) - c003f37c: cc6d20ef jal ra,c0011842 + c003f53c: 4801 li a6,0 + c003f53e: 863e mv a2,a5 + c003f540: 0cc00693 li a3,204 + c003f544: 85ba mv a1,a4 + c003f546: 8522 mv a0,s0 + c003f548: fdbe sd a5,248(sp) + c003f54a: f9ba sd a4,240(sp) + c003f54c: be4d20ef jal ra,c0011930 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003f380: 0005879b sext.w a5,a1 + c003f550: 0005879b sext.w a5,a1 js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53460 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53468 if (JS_IsException(iter)) - c003f384: 4a99 li s5,6 + c003f554: 4a99 li s5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c003f386: 862e mv a2,a1 + c003f556: 862e mv a2,a1 js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53460 - c003f388: fb578ee3 beq a5,s5,c003f344 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53462 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53468 + c003f558: fb578ee3 beq a5,s5,c003f514 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53470 if (!JS_IsUndefined(iter)) { - c003f38c: 470d li a4,3 - c003f38e: 06e78f63 beq a5,a4,c003f40c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53463 + c003f55c: 470d li a4,3 + c003f55e: 06e78f63 beq a5,a4,c003f5dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53471 JS_FreeValue(ctx, iter); - c003f392: 85aa mv a1,a0 - c003f394: 8522 mv a0,s0 - c003f396: fa2c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53464 + c003f562: 85aa mv a1,a0 + c003f564: 8522 mv a0,s0 + c003f566: ec0c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53472 arr = JS_NewArray(ctx); - c003f39a: 8522 mv a0,s0 - c003f39c: c23d70ef jal ra,c0016fbe - c003f3a0: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53465 + c003f56a: 8522 mv a0,s0 + c003f56c: c23d70ef jal ra,c001718e + c003f570: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53473 if (JS_IsException(arr)) - c003f3a2: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53464 + c003f572: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53472 arr = JS_NewArray(ctx); - c003f3a6: 84ae mv s1,a1 - c003f3a8: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53465 + c003f576: 84ae mv s1,a1 + c003f578: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53473 if (JS_IsException(arr)) - c003f3aa: 1b578e63 beq a5,s5,c003f566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53467 + c003f57a: 1b578e63 beq a5,s5,c003f736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53475 stack[0] = JS_DupValue(ctx, items); - c003f3ae: 7542 ld a0,48(sp) - c003f3b0: 75e2 ld a1,56(sp) - c003f3b2: abcc70ef jal ra,c000666e - c003f3b6: ea2a sd a0,272(sp) - c003f3b8: ee2e sd a1,280(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53468 - if (js_for_of_start(ctx, &stack[1], FALSE)) - c003f3ba: 4601 li a2,0 - c003f3bc: 120c addi a1,sp,288 - c003f3be: 8522 mv a0,s0 - c003f3c0: 847fb0ef jal ra,c003ac06 - c003f3c4: 1a051163 bnez a0,c003f566 + c003f57e: 7542 ld a0,48(sp) + c003f580: 75e2 ld a1,56(sp) + c003f582: 9dac70ef jal ra,c000675c + c003f586: ea2a sd a0,272(sp) + c003f588: ee2e sd a1,280(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53476 + if (js_for_of_start(ctx, &stack[1], FALSE)) + c003f58a: 4601 li a2,0 + c003f58c: 120c addi a1,sp,288 + c003f58e: 8522 mv a0,s0 + c003f590: 847fb0ef jal ra,c003add6 + c003f594: 1a051163 bnez a0,c003f736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53484 if (JS_DefinePropertyValueInt64(ctx, arr, k, v, JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003f3c8: 6b11 lui s6,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53470 + c003f598: 6b11 lui s6,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53478 for (k = 0;; k++) { - c003f3ca: 4a81 li s5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53472 + c003f59a: 4a81 li s5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53480 if (JS_IsException(v)) - c003f3cc: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53476 + c003f59c: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53484 if (JS_DefinePropertyValueInt64(ctx, arr, k, v, JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003f3ce: 0b1d addi s6,s6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53471 + c003f59e: 0b1d addi s6,s6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53479 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003f3d0: 7692 ld a3,288(sp) - c003f3d2: 7732 ld a4,296(sp) - c003f3d4: 65d2 ld a1,272(sp) - c003f3d6: 6672 ld a2,280(sp) - c003f3d8: 105c addi a5,sp,36 - c003f3da: 8522 mv a0,s0 - c003f3dc: d56fb0ef jal ra,c003a932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53472 + c003f5a0: 7692 ld a3,288(sp) + c003f5a2: 7732 ld a4,296(sp) + c003f5a4: 65d2 ld a1,272(sp) + c003f5a6: 6672 ld a2,280(sp) + c003f5a8: 105c addi a5,sp,36 + c003f5aa: 8522 mv a0,s0 + c003f5ac: d56fb0ef jal ra,c003ab02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53480 if (JS_IsException(v)) - c003f3e0: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53471 + c003f5b0: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53479 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003f3e4: 872a mv a4,a0 - c003f3e6: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53472 + c003f5b4: 872a mv a4,a0 + c003f5b6: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53480 if (JS_IsException(v)) - c003f3e8: 17768363 beq a3,s7,c003f54e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53474 + c003f5b8: 17768363 beq a3,s7,c003f71e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53482 if (done) - c003f3ec: 5692 lw a3,36(sp) - c003f3ee: ea95 bnez a3,c003f422 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53476 + c003f5bc: 5692 lw a3,36(sp) + c003f5be: ea95 bnez a3,c003f5f2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53484 if (JS_DefinePropertyValueInt64(ctx, arr, k, v, JS_PROP_C_W_E | JS_PROP_THROW) < 0) - c003f3f0: 75c6 ld a1,112(sp) - c003f3f2: 885a mv a6,s6 - c003f3f4: 86d6 mv a3,s5 - c003f3f6: 8626 mv a2,s1 - c003f3f8: 8522 mv a0,s0 - c003f3fa: b1cea0ef jal ra,c0029716 - c003f3fe: 14054863 bltz a0,c003f54e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53470 + c003f5c0: 75c6 ld a1,112(sp) + c003f5c2: 885a mv a6,s6 + c003f5c4: 86d6 mv a3,s5 + c003f5c6: 8626 mv a2,s1 + c003f5c8: 8522 mv a0,s0 + c003f5ca: b1cea0ef jal ra,c00298e6 + c003f5ce: 14054863 bltz a0,c003f71e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53478 for (k = 0;; k++) { - c003f402: 0a85 addi s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53471 + c003f5d2: 0a85 addi s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53479 v = JS_IteratorNext(ctx, stack[0], stack[1], 0, NULL, &done); - c003f404: b7f1 j c003f3d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53442 + c003f5d4: b7f1 j c003f5a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53450 mapfn = JS_UNDEFINED; - c003f406: 4a0d li s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53441 + c003f5d6: 4a0d li s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53449 mapping = FALSE; - c003f408: 4981 li s3,0 - c003f40a: bfb9 j c003f368 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53480 + c003f5d8: 4981 li s3,0 + c003f5da: bfb9 j c003f538 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 arr = JS_ToObject(ctx, items); - c003f40c: 75c2 ld a1,48(sp) - c003f40e: 7662 ld a2,56(sp) - c003f410: 8522 mv a0,s0 - c003f412: 9dae90ef jal ra,c00285ec - c003f416: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53481 + c003f5dc: 75c2 ld a1,48(sp) + c003f5de: 7662 ld a2,56(sp) + c003f5e0: 8522 mv a0,s0 + c003f5e2: 9dae90ef jal ra,c00287bc + c003f5e6: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53489 if (JS_IsException(arr)) - c003f418: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53480 + c003f5e8: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 arr = JS_ToObject(ctx, items); - c003f41c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53481 + c003f5ec: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53489 if (JS_IsException(arr)) - c003f41e: 15578463 beq a5,s5,c003f566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53484 + c003f5ee: 15578463 beq a5,s5,c003f736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53492 if (js_get_length64(ctx, &len, arr) < 0) - c003f422: 7646 ld a2,112(sp) - c003f424: 86ca mv a3,s2 - c003f426: 102c addi a1,sp,40 - c003f428: 8522 mv a0,s0 - c003f42a: c14df0ef jal ra,c001e83e - c003f42e: 12054c63 bltz a0,c003f566 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53486 + c003f5f2: 7646 ld a2,112(sp) + c003f5f4: 86ca mv a3,s2 + c003f5f6: 102c addi a1,sp,40 + c003f5f8: 8522 mv a0,s0 + c003f5fa: c14df0ef jal ra,c001ea0e + c003f5fe: 12054c63 bltz a0,c003f736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53494 v = JS_NewInt64(ctx, len); - c003f432: 7722 ld a4,40(sp) + c003f602: 7722 ld a4,40(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c003f434: 0007079b sext.w a5,a4 - c003f438: 08f71263 bne a4,a5,c003f4bc + c003f604: 0007079b sext.w a5,a4 + c003f608: 08f71263 bne a4,a5,c003f68c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f43c: c382 sw zero,196(sp) - c003f43e: c1be sw a5,192(sp) - c003f440: 670e ld a4,192(sp) - c003f442: f9ba sd a4,240(sp) - c003f444: 4701 li a4,0 + c003f60c: c382 sw zero,196(sp) + c003f60e: c1be sw a5,192(sp) + c003f610: 670e ld a4,192(sp) + c003f612: f9ba sd a4,240(sp) + c003f614: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c003f446: d9be sw a5,240(sp) - c003f448: 37ce fld fa5,240(sp) + c003f616: d9be sw a5,240(sp) + c003f618: 37ce fld fa5,240(sp) js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53496 r = js_typed_array_create(ctx, this_val, 1, args); - c003f44a: 6662 ld a2,24(sp) - c003f44c: 65c2 ld a1,16(sp) - c003f44e: ed3a sd a4,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53487 + c003f61a: 6662 ld a2,24(sp) + c003f61c: 65c2 ld a1,16(sp) + c003f61e: ed3a sd a4,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53495 args[0] = v; - c003f450: fdba sd a4,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 + c003f620: fdba sd a4,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53496 r = js_typed_array_create(ctx, this_val, 1, args); - c003f452: 4685 li a3,1 - c003f454: 1998 addi a4,sp,240 - c003f456: 8522 mv a0,s0 - c003f458: a93e fsd fa5,144(sp) - c003f45a: 85ef90ef jal ra,c00384b8 - c003f45e: 8aae mv s5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53489 + c003f622: 4685 li a3,1 + c003f624: 1998 addi a4,sp,240 + c003f626: 8522 mv a0,s0 + c003f628: a93e fsd fa5,144(sp) + c003f62a: 85ef90ef jal ra,c0038688 + c003f62e: 8aae mv s5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53497 JS_FreeValue(ctx, v); - c003f460: 666a ld a2,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 + c003f630: 666a ld a2,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53496 r = js_typed_array_create(ctx, this_val, 1, args); - c003f462: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53489 + c003f632: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53497 JS_FreeValue(ctx, v); - c003f464: 65ca ld a1,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53488 + c003f634: 65ca ld a1,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53496 r = js_typed_array_create(ctx, this_val, 1, args); - c003f466: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53489 + c003f636: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53497 JS_FreeValue(ctx, v); - c003f468: 8522 mv a0,s0 - c003f46a: ecec80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53490 + c003f638: 8522 mv a0,s0 + c003f63a: decc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53498 if (JS_IsException(r)) - c003f46e: 000a871b sext.w a4,s5 - c003f472: 4799 li a5,6 - c003f474: ecf70ae3 beq a4,a5,c003f348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53492 + c003f63e: 000a871b sext.w a4,s5 + c003f642: 4799 li a5,6 + c003f644: ecf70ae3 beq a4,a5,c003f518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53500 for(k = 0; k < len; k++) { - c003f478: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53494 + c003f648: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53502 if (JS_IsException(v)) - c003f47a: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53492 (discriminator 1) + c003f64a: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53500 (discriminator 1) for(k = 0; k < len; k++) { - c003f47c: 77a2 ld a5,40(sp) - c003f47e: 04fc4763 blt s8,a5,c003f4cc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53517 + c003f64c: 77a2 ld a5,40(sp) + c003f64e: 04fc4763 blt s8,a5,c003f69c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53525 JS_FreeValue(ctx, arr); - c003f482: 75c6 ld a1,112(sp) - c003f484: 864a mv a2,s2 - c003f486: 8522 mv a0,s0 - c003f488: eb0c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53518 + c003f652: 75c6 ld a1,112(sp) + c003f654: 864a mv a2,s2 + c003f656: 8522 mv a0,s0 + c003f658: dcec80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53526 JS_FreeValue(ctx, stack[0]); - c003f48c: 65d2 ld a1,272(sp) - c003f48e: 6672 ld a2,280(sp) - c003f490: 8522 mv a0,s0 - c003f492: ea6c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53519 + c003f65c: 65d2 ld a1,272(sp) + c003f65e: 6672 ld a2,280(sp) + c003f660: 8522 mv a0,s0 + c003f662: dc4c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53527 JS_FreeValue(ctx, stack[1]); - c003f496: 7592 ld a1,288(sp) - c003f498: 7632 ld a2,296(sp) - c003f49a: 8522 mv a0,s0 - c003f49c: e9cc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53521 -} - c003f4a0: 70f6 ld ra,376(sp) - c003f4a2: 7456 ld s0,368(sp) - c003f4a4: 650a ld a0,128(sp) - c003f4a6: 7916 ld s2,352(sp) - c003f4a8: 69f6 ld s3,344(sp) - c003f4aa: 6a56 ld s4,336(sp) - c003f4ac: 6ab6 ld s5,328(sp) - c003f4ae: 6b16 ld s6,320(sp) - c003f4b0: 7bf2 ld s7,312(sp) - c003f4b2: 7c52 ld s8,304(sp) - c003f4b4: 85a6 mv a1,s1 - c003f4b6: 74b6 ld s1,360(sp) - c003f4b8: 6119 addi sp,sp,384 - c003f4ba: 8082 ret + c003f666: 7592 ld a1,288(sp) + c003f668: 7632 ld a2,296(sp) + c003f66a: 8522 mv a0,s0 + c003f66c: dbac80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53529 +} + c003f670: 70f6 ld ra,376(sp) + c003f672: 7456 ld s0,368(sp) + c003f674: 650a ld a0,128(sp) + c003f676: 7916 ld s2,352(sp) + c003f678: 69f6 ld s3,344(sp) + c003f67a: 6a56 ld s4,336(sp) + c003f67c: 6ab6 ld s5,328(sp) + c003f67e: 6b16 ld s6,320(sp) + c003f680: 7bf2 ld s7,312(sp) + c003f682: 7c52 ld s8,304(sp) + c003f684: 85a6 mv a1,s1 + c003f686: 74b6 ld s1,360(sp) + c003f688: 6119 addi sp,sp,384 + c003f68a: 8082 ret JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c003f4bc: d22777d3 fcvt.d.l fa5,a4 - c003f4c0: 471d li a4,7 - c003f4c2: e20787d3 fmv.x.d a5,fa5 + c003f68c: d22777d3 fcvt.d.l fa5,a4 + c003f690: 471d li a4,7 + c003f692: e20787d3 fmv.x.d a5,fa5 js_typed_array_from(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c003f4c6: b9be fsd fa5,240(sp) - c003f4c8: 2781 sext.w a5,a5 - c003f4ca: bfb5 j c003f446 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53493 + c003f696: b9be fsd fa5,240(sp) + c003f698: 2781 sext.w a5,a5 + c003f69a: bfb5 j c003f616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53501 v = JS_GetPropertyInt64(ctx, arr, k); - c003f4cc: 75c6 ld a1,112(sp) - c003f4ce: 86e2 mv a3,s8 - c003f4d0: 864a mv a2,s2 - c003f4d2: 8522 mv a0,s0 - c003f4d4: 9fbf20ef jal ra,c0031ece - c003f4d8: e92a sd a0,144(sp) - c003f4da: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53494 + c003f69c: 75c6 ld a1,112(sp) + c003f69e: 86e2 mv a3,s8 + c003f6a0: 864a mv a2,s2 + c003f6a2: 8522 mv a0,s0 + c003f6a4: 9fbf20ef jal ra,c003209e + c003f6a8: e92a sd a0,144(sp) + c003f6aa: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53502 if (JS_IsException(v)) - c003f4dc: 0005871b sext.w a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53493 + c003f6ac: 0005871b sext.w a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53501 v = JS_GetPropertyInt64(ctx, arr, k); - c003f4e0: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53494 + c003f6b0: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53502 if (JS_IsException(v)) - c003f4e2: e76703e3 beq a4,s6,c003f348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53496 + c003f6b2: e76703e3 beq a4,s6,c003f518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53504 if (mapping) { - c003f4e6: 00099f63 bnez s3,c003f504 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53493 + c003f6b6: 00099f63 bnez s3,c003f6d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53501 v = JS_GetPropertyInt64(ctx, arr, k); - c003f4ea: 4bca lw s7,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53505 + c003f6ba: 4bca lw s7,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53513 if (JS_SetPropertyInt64(ctx, r, k, v) < 0) - c003f4ec: c95e sw s7,144(sp) - c003f4ee: 674a ld a4,144(sp) - c003f4f0: 658a ld a1,128(sp) - c003f4f2: 86e2 mv a3,s8 - c003f4f4: 8656 mv a2,s5 - c003f4f6: 8522 mv a0,s0 - c003f4f8: e69f00ef jal ra,c0030360 - c003f4fc: e40546e3 bltz a0,c003f348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53492 (discriminator 2) + c003f6bc: c95e sw s7,144(sp) + c003f6be: 674a ld a4,144(sp) + c003f6c0: 658a ld a1,128(sp) + c003f6c2: 86e2 mv a3,s8 + c003f6c4: 8656 mv a2,s5 + c003f6c6: 8522 mv a0,s0 + c003f6c8: e69f00ef jal ra,c0030530 + c003f6cc: e40546e3 bltz a0,c003f518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53500 (discriminator 2) for(k = 0; k < len; k++) { - c003f500: 0c05 addi s8,s8,1 - c003f502: bfad j c003f47c + c003f6d0: 0c05 addi s8,s8,1 + c003f6d2: bfad j c003f64c JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f504: f182 sd zero,224(sp) + c003f6d4: f182 sd zero,224(sp) js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53498 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53506 args[1] = JS_NewInt32(ctx, k); - c003f506: d1e2 sw s8,224(sp) - c003f508: 778e ld a5,224(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53499 + c003f6d6: d1e2 sw s8,224(sp) + c003f6d8: 778e ld a5,224(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53507 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003f50a: 6766 ld a4,88(sp) - c003f50c: 66c6 ld a3,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53497 + c003f6da: 6766 ld a4,88(sp) + c003f6dc: 66c6 ld a3,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53505 args[0] = v; - c003f50e: fdae sd a1,248(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53499 + c003f6de: fdae sd a1,248(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53507 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003f510: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53497 + c003f6e0: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53505 args[0] = v; - c003f512: f9aa sd a0,240(sp) - c003f514: e9be sd a5,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53498 + c003f6e2: f9aa sd a0,240(sp) + c003f6e4: e9be sd a5,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53506 args[1] = JS_NewInt32(ctx, k); - c003f516: e23e sd a5,256(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53499 + c003f6e6: e23e sd a5,256(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53507 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003f518: 0f010813 addi a6,sp,240 - c003f51c: 4789 li a5,2 - c003f51e: 8652 mv a2,s4 - c003f520: 8522 mv a0,s0 - c003f522: ed82 sd zero,216(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53498 + c003f6e8: 0f010813 addi a6,sp,240 + c003f6ec: 4789 li a5,2 + c003f6ee: 8652 mv a2,s4 + c003f6f0: 8522 mv a0,s0 + c003f6f2: ed82 sd zero,216(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53506 args[1] = JS_NewInt32(ctx, k); - c003f524: e602 sd zero,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53499 + c003f6f4: e602 sd zero,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53507 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003f526: 9e0fa0ef jal ra,c0039706 - c003f52a: f52e sd a1,168(sp) - c003f52c: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53500 + c003f6f6: 9e0fa0ef jal ra,c00398d6 + c003f6fa: f52e sd a1,168(sp) + c003f6fc: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53508 JS_FreeValue(ctx, v); - c003f52e: 666a ld a2,152(sp) - c003f530: 65ca ld a1,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53499 + c003f6fe: 666a ld a2,152(sp) + c003f700: 65ca ld a1,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53507 v2 = JS_Call(ctx, mapfn, this_arg, 2, args); - c003f532: f12a sd a0,160(sp) - c003f534: 00050b9b sext.w s7,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53500 + c003f702: f12a sd a0,160(sp) + c003f704: 00050b9b sext.w s7,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53508 JS_FreeValue(ctx, v); - c003f538: 8522 mv a0,s0 - c003f53a: dfec80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53501 + c003f708: 8522 mv a0,s0 + c003f70a: d1cc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53509 v = v2; - c003f53e: 770a ld a4,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53502 + c003f70e: 770a ld a4,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53510 if (JS_IsException(v)) - c003f540: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53501 + c003f710: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53509 v = v2; - c003f542: e93a sd a4,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53502 + c003f712: e93a sd a4,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53510 if (JS_IsException(v)) - c003f544: 0007871b sext.w a4,a5 - c003f548: fb6712e3 bne a4,s6,c003f4ec - c003f54c: bbf5 j c003f348 + c003f714: 0007871b sext.w a4,a5 + c003f718: fb6712e3 bne a4,s6,c003f6bc + c003f71c: bbf5 j c003f518 JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c003f54e: 6672 ld a2,280(sp) + c003f71e: 6672 ld a2,280(sp) js_typed_array_from(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53452 r = JS_UNDEFINED; - c003f550: 448d li s1,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53511 + c003f720: 448d li s1,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53519 if (!JS_IsUndefined(stack[0])) - c003f552: 0006079b sext.w a5,a2 - c003f556: de9789e3 beq a5,s1,c003f348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53512 + c003f722: 0006079b sext.w a5,a2 + c003f726: de9789e3 beq a5,s1,c003f518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53520 JS_IteratorClose(ctx, stack[0], TRUE); - c003f55a: 65d2 ld a1,272(sp) - c003f55c: 4685 li a3,1 - c003f55e: 8522 mv a0,s0 - c003f560: c28d40ef jal ra,c0013988 - c003f564: b3d5 j c003f348 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53444 + c003f72a: 65d2 ld a1,272(sp) + c003f72c: 4685 li a3,1 + c003f72e: 8522 mv a0,s0 + c003f730: b46d40ef jal ra,c0013a76 + c003f734: b3d5 j c003f518 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53452 r = JS_UNDEFINED; - c003f566: 448d li s1,3 - c003f568: b3c5 j c003f348 + c003f736: 448d li s1,3 + c003f738: b3c5 j c003f518 -00000000c003f56a : +00000000c003f73a : js_TA_cmp_generic(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54324 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54332 static int js_TA_cmp_generic(const void *a, const void *b, void *opaque) { - c003f56a: 7119 addi sp,sp,-128 - c003f56c: fc86 sd ra,120(sp) - c003f56e: f8a2 sd s0,112(sp) - c003f570: f4a6 sd s1,104(sp) - c003f572: f0ca sd s2,96(sp) - c003f574: ecce sd s3,88(sp) - c003f576: e8d2 sd s4,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54333 + c003f73a: 7119 addi sp,sp,-128 + c003f73c: fc86 sd ra,120(sp) + c003f73e: f8a2 sd s0,112(sp) + c003f740: f4a6 sd s1,104(sp) + c003f742: f0ca sd s2,96(sp) + c003f744: ecce sd s3,88(sp) + c003f746: e8d2 sd s4,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54341 if (!psc->exception) { - c003f578: 4604 lw s1,8(a2) - c003f57a: e0f5 bnez s1,c003f65e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54336 + c003f748: 4604 lw s1,8(a2) + c003f74a: e0f5 bnez s1,c003f82e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54344 a_idx = *(uint32_t *)a; - c003f57c: 00052983 lw s3,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54339 + c003f74c: 00052983 lw s3,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54347 a_idx * (size_t)psc->elt_size); - c003f580: 423c lw a5,64(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54337 + c003f750: 423c lw a5,64(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54345 b_idx = *(uint32_t *)b; - c003f582: 0005aa03 lw s4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54339 + c003f752: 0005aa03 lw s4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54347 a_idx * (size_t)psc->elt_size); - c003f586: 02099593 slli a1,s3,0x20 - c003f58a: 9181 srli a1,a1,0x20 - c003f58c: 02b787b3 mul a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54326 + c003f756: 02099593 slli a1,s3,0x20 + c003f75a: 9181 srli a1,a1,0x20 + c003f75c: 02b787b3 mul a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54334 JSContext *ctx = psc->ctx; - c003f590: 00063903 ld s2,0(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54338 + c003f760: 00063903 ld s2,0(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54346 argv[0] = psc->getfun(ctx, psc->array_ptr + - c003f594: 7e0c ld a1,56(a2) - c003f596: 7a18 ld a4,48(a2) - c003f598: 854a mv a0,s2 - c003f59a: 8432 mv s0,a2 - c003f59c: 95be add a1,a1,a5 - c003f59e: 9702 jalr a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54341 + c003f764: 7e0c ld a1,56(a2) + c003f766: 7a18 ld a4,48(a2) + c003f768: 854a mv a0,s2 + c003f76a: 8432 mv s0,a2 + c003f76c: 95be add a1,a1,a5 + c003f76e: 9702 jalr a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54349 b_idx * (size_t)(psc->elt_size)); - c003f5a0: 403c lw a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54338 + c003f770: 403c lw a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54346 argv[0] = psc->getfun(ctx, psc->array_ptr + - c003f5a2: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54341 + c003f772: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54349 b_idx * (size_t)(psc->elt_size)); - c003f5a4: 020a1593 slli a1,s4,0x20 - c003f5a8: 9181 srli a1,a1,0x20 - c003f5aa: 02b787b3 mul a5,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54340 + c003f774: 020a1593 slli a1,s4,0x20 + c003f778: 9181 srli a1,a1,0x20 + c003f77a: 02b787b3 mul a5,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54348 argv[1] = psc->getfun(ctx, psc->array_ptr + - c003f5ae: 7c0c ld a1,56(s0) - c003f5b0: 7818 ld a4,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54338 + c003f77e: 7c0c ld a1,56(s0) + c003f780: 7818 ld a4,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54346 argv[0] = psc->getfun(ctx, psc->array_ptr + - c003f5b2: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54340 + c003f782: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54348 argv[1] = psc->getfun(ctx, psc->array_ptr + - c003f5b4: 854a mv a0,s2 - c003f5b6: 95be add a1,a1,a5 - c003f5b8: 9702 jalr a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54342 + c003f784: 854a mv a0,s2 + c003f786: 95be add a1,a1,a5 + c003f788: 9702 jalr a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54350 res = JS_Call(ctx, psc->cmp, JS_UNDEFINED, 2, argv); - c003f5ba: 7410 ld a2,40(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54340 + c003f78a: 7410 ld a2,40(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54348 argv[1] = psc->getfun(ctx, psc->array_ptr + - c003f5bc: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54342 + c003f78c: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54350 res = JS_Call(ctx, psc->cmp, JS_UNDEFINED, 2, argv); - c003f5be: 700c ld a1,32(s0) - c003f5c0: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54340 + c003f78e: 700c ld a1,32(s0) + c003f790: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54348 argv[1] = psc->getfun(ctx, psc->array_ptr + - c003f5c2: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54342 + c003f792: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54350 res = JS_Call(ctx, psc->cmp, JS_UNDEFINED, 2, argv); - c003f5c4: f43e sd a5,40(sp) - c003f5c6: 4681 li a3,0 - c003f5c8: 4789 li a5,2 - c003f5ca: 470d li a4,3 - c003f5cc: 03010813 addi a6,sp,48 - c003f5d0: 854a mv a0,s2 - c003f5d2: f002 sd zero,32(sp) - c003f5d4: 932fa0ef jal ra,c0039706 - c003f5d8: e82a sd a0,16(sp) - c003f5da: ec2e sd a1,24(sp) + c003f794: f43e sd a5,40(sp) + c003f796: 4681 li a3,0 + c003f798: 4789 li a5,2 + c003f79a: 470d li a4,3 + c003f79c: 03010813 addi a6,sp,48 + c003f7a0: 854a mv a0,s2 + c003f7a2: f002 sd zero,32(sp) + c003f7a4: 932fa0ef jal ra,c00398d6 + c003f7a8: e82a sd a0,16(sp) + c003f7aa: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c003f5dc: 0005879b sext.w a5,a1 + c003f7ac: 0005879b sext.w a5,a1 js_TA_cmp_generic(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54343 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54351 if (JS_IsException(res)) { - c003f5e0: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54342 + c003f7b0: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54350 res = JS_Call(ctx, psc->cmp, JS_UNDEFINED, 2, argv); - c003f5e2: 862a mv a2,a0 - c003f5e4: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54343 + c003f7b2: 862a mv a2,a0 + c003f7b4: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54351 if (JS_IsException(res)) { - c003f5e6: 02e79763 bne a5,a4,c003f614 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54353 + c003f7b6: 02e79763 bne a5,a4,c003f7e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54361 psc->exception = 1; - c003f5ea: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54365 + c003f7ba: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54373 psc->exception = 2; - c003f5ec: c41c sw a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54368 + c003f7bc: c41c sw a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54376 JS_FreeValue(ctx, (JSValue)argv[0]); - c003f5ee: 75c2 ld a1,48(sp) - c003f5f0: 7662 ld a2,56(sp) - c003f5f2: 854a mv a0,s2 - c003f5f4: d44c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54369 + c003f7be: 75c2 ld a1,48(sp) + c003f7c0: 7662 ld a2,56(sp) + c003f7c2: 854a mv a0,s2 + c003f7c4: c62c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54377 JS_FreeValue(ctx, (JSValue)argv[1]); - c003f5f8: 6586 ld a1,64(sp) - c003f5fa: 6626 ld a2,72(sp) - c003f5fc: 854a mv a0,s2 - c003f5fe: d3ac80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54372 -} - c003f602: 70e6 ld ra,120(sp) - c003f604: 7446 ld s0,112(sp) - c003f606: 7906 ld s2,96(sp) - c003f608: 69e6 ld s3,88(sp) - c003f60a: 6a46 ld s4,80(sp) - c003f60c: 8526 mv a0,s1 - c003f60e: 74a6 ld s1,104(sp) - c003f610: 6109 addi sp,sp,128 - c003f612: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54347 + c003f7c8: 6586 ld a1,64(sp) + c003f7ca: 6626 ld a2,72(sp) + c003f7cc: 854a mv a0,s2 + c003f7ce: c58c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54380 +} + c003f7d2: 70e6 ld ra,120(sp) + c003f7d4: 7446 ld s0,112(sp) + c003f7d6: 7906 ld s2,96(sp) + c003f7d8: 69e6 ld s3,88(sp) + c003f7da: 6a46 ld s4,80(sp) + c003f7dc: 8526 mv a0,s1 + c003f7de: 74a6 ld s1,104(sp) + c003f7e0: 6109 addi sp,sp,128 + c003f7e2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54355 if (JS_VALUE_GET_TAG(res) == JS_TAG_INT) { - c003f614: e79d bnez a5,c003f642 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54342 + c003f7e4: e79d bnez a5,c003f812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54350 res = JS_Call(ctx, psc->cmp, JS_UNDEFINED, 2, argv); - c003f616: 47c2 lw a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54349 + c003f7e6: 47c2 lw a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54357 cmp = (val > 0) - (val < 0); - c003f618: 00f024b3 sgtz s1,a5 - c003f61c: 01f7d79b srliw a5,a5,0x1f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54356 + c003f7e8: 00f024b3 sgtz s1,a5 + c003f7ec: 01f7d79b srliw a5,a5,0x1f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54364 cmp = (val > 0) - (val < 0); - c003f620: 9c9d subw s1,s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54359 + c003f7f0: 9c9d subw s1,s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54367 if (cmp == 0) { - c003f622: e499 bnez s1,c003f630 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54361 + c003f7f2: e499 bnez s1,c003f800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54369 cmp = (a_idx > b_idx) - (a_idx < b_idx); - c003f624: 013a34b3 sltu s1,s4,s3 - c003f628: 0149b9b3 sltu s3,s3,s4 - c003f62c: 413484bb subw s1,s1,s3 + c003f7f4: 013a34b3 sltu s1,s4,s3 + c003f7f8: 0149b9b3 sltu s3,s3,s4 + c003f7fc: 413484bb subw s1,s1,s3 typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53049 JSTypedArray *ta = p->u.typed_array; - c003f630: 681c ld a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 + c003f800: 681c ld a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c003f632: 7b9c ld a5,48(a5) - c003f634: 6f9c ld a5,24(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c003f802: 7b9c ld a5,48(a5) + c003f804: 6f9c ld a5,24(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c003f636: 7b9c ld a5,48(a5) + c003f806: 7b9c ld a5,48(a5) js_TA_cmp_generic(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54363 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54371 if (unlikely(typed_array_is_detached(ctx, - c003f638: 0047c783 lbu a5,4(a5) - c003f63c: dbcd beqz a5,c003f5ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54365 + c003f808: 0047c783 lbu a5,4(a5) + c003f80c: dbcd beqz a5,c003f7be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54373 psc->exception = 2; - c003f63e: 4789 li a5,2 - c003f640: b775 j c003f5ec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54352 + c003f80e: 4789 li a5,2 + c003f810: b775 j c003f7bc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54360 if (JS_ToFloat64Free(ctx, &val, res) < 0) { - c003f642: 002c addi a1,sp,8 - c003f644: 854a mv a0,s2 - c003f646: fa9dc0ef jal ra,c001c5ee - c003f64a: fa0540e3 bltz a0,c003f5ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54356 + c003f812: 002c addi a1,sp,8 + c003f814: 854a mv a0,s2 + c003f816: fa9dc0ef jal ra,c001c7be + c003f81a: fa0540e3 bltz a0,c003f7ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54364 cmp = (val > 0) - (val < 0); - c003f64e: 2722 fld fa4,8(sp) - c003f650: f20007d3 fmv.d.x fa5,zero - c003f654: a2e794d3 flt.d s1,fa5,fa4 - c003f658: a2f717d3 flt.d a5,fa4,fa5 - c003f65c: b7d1 j c003f620 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54332 + c003f81e: 2722 fld fa4,8(sp) + c003f820: f20007d3 fmv.d.x fa5,zero + c003f824: a2e794d3 flt.d s1,fa5,fa4 + c003f828: a2f717d3 flt.d a5,fa4,fa5 + c003f82c: b7d1 j c003f7f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:54340 cmp = 0; - c003f65e: 4481 li s1,0 - c003f660: b74d j c003f602 + c003f82e: 4481 li s1,0 + c003f830: b74d j c003f7d2 -00000000c003f662 : +00000000c003f832 : js_typed_array_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53667 -{ - c003f662: 716d addi sp,sp,-272 - c003f664: e222 sd s0,256(sp) - c003f666: fda6 sd s1,248(sp) - c003f668: f9ca sd s2,240(sp) - c003f66a: edd6 sd s5,216(sp) - c003f66c: e606 sd ra,264(sp) - c003f66e: f5ce sd s3,232(sp) - c003f670: f1d2 sd s4,224(sp) - c003f672: e9da sd s6,208(sp) - c003f674: e5de sd s7,200(sp) - c003f676: 842a mv s0,a0 - c003f678: e02e sd a1,0(sp) - c003f67a: e432 sd a2,8(sp) - c003f67c: 8ab6 mv s5,a3 - c003f67e: 893a mv s2,a4 - c003f680: 84be mv s1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53674 - val = JS_UNDEFINED; - c003f682: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53675 +{ + c003f832: 716d addi sp,sp,-272 + c003f834: e222 sd s0,256(sp) + c003f836: fda6 sd s1,248(sp) + c003f838: f9ca sd s2,240(sp) + c003f83a: edd6 sd s5,216(sp) + c003f83c: e606 sd ra,264(sp) + c003f83e: f5ce sd s3,232(sp) + c003f840: f1d2 sd s4,224(sp) + c003f842: e9da sd s6,208(sp) + c003f844: e5de sd s7,200(sp) + c003f846: 842a mv s0,a0 + c003f848: e02e sd a1,0(sp) + c003f84a: e432 sd a2,8(sp) + c003f84c: 8ab6 mv s5,a3 + c003f84e: 893a mv s2,a4 + c003f850: 84be mv s1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53682 + val = JS_UNDEFINED; + c003f852: f802 sd zero,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53683 len = js_typed_array_get_length_internal(ctx, this_val); - c003f684: 993d40ef jal ra,c0014016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53676 + c003f854: 8b1d40ef jal ra,c0014104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53684 if (len < 0) - c003f688: 10054b63 bltz a0,c003f79e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53679 + c003f858: 10054b63 bltz a0,c003f96e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53687 func = argv[0]; - c003f68c: 00093583 ld a1,0(s2) - c003f690: 00893603 ld a2,8(s2) - c003f694: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53680 + c003f85c: 00093583 ld a1,0(s2) + c003f860: 00893603 ld a2,8(s2) + c003f864: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53688 if (check_function(ctx, func)) - c003f696: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53679 + c003f866: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53687 func = argv[0]; - c003f698: e82e sd a1,16(sp) - c003f69a: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53680 + c003f868: e82e sd a1,16(sp) + c003f86a: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53688 if (check_function(ctx, func)) - c003f69c: e0dd30ef jal ra,c00134a8 - c003f6a0: 89aa mv s3,a0 - c003f6a2: 0e051e63 bnez a0,c003f79e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53683 + c003f86c: d2bd30ef jal ra,c0013596 + c003f870: 89aa mv s3,a0 + c003f872: 0e051e63 bnez a0,c003f96e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53691 this_arg = JS_UNDEFINED; - c003f6a6: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53684 + c003f876: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53692 if (argc > 1) - c003f6a8: 4785 li a5,1 - c003f6aa: 0157cf63 blt a5,s5,c003f6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53683 + c003f878: 4785 li a5,1 + c003f87a: 0157cf63 blt a5,s5,c003f898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53691 this_arg = JS_UNDEFINED; - c003f6ae: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53685 - this_arg = argv[1]; - c003f6b0: f43e sd a5,40(sp) + c003f87e: 478d li a5,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53693 + this_arg = argv[1]; + c003f880: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53701 dir = 1; - c003f6b2: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53687 + c003f882: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53695 if (mode == special_findLast || mode == special_findLastIndex) { - c003f6b4: ffe4879b addiw a5,s1,-2 - c003f6b8: 00f96663 bltu s2,a5,c003f6c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53688 + c003f884: ffe4879b addiw a5,s1,-2 + c003f888: 00f96663 bltu s2,a5,c003f894 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53696 k = len - 1; - c003f6bc: fffa099b addiw s3,s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53689 + c003f88c: fffa099b addiw s3,s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53697 dir = -1; - c003f6c0: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53690 + c003f890: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53698 end = -1; - c003f6c2: 5a7d li s4,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53700 (discriminator 1) + c003f892: 5a7d li s4,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53708 (discriminator 1) if (JS_IsException(val)) - c003f6c4: 4a99 li s5,6 - c003f6c6: a055 j c003f76a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53685 + c003f894: 4a99 li s5,6 + c003f896: a055 j c003f93a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53693 this_arg = argv[1]; - c003f6c8: 01093783 ld a5,16(s2) - c003f6cc: f03e sd a5,32(sp) - c003f6ce: 01893783 ld a5,24(s2) - c003f6d2: bff9 j c003f6b0 + c003f898: 01093783 ld a5,16(s2) + c003f89c: f03e sd a5,32(sp) + c003f89e: 01893783 ld a5,24(s2) + c003f8a2: bff9 j c003f880 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c003f6d4: da82 sw zero,116(sp) - c003f6d6: d8ce sw s3,112(sp) - c003f6d8: 76c6 ld a3,112(sp) + c003f8a4: da82 sw zero,116(sp) + c003f8a6: d8ce sw s3,112(sp) + c003f8a8: 76c6 ld a3,112(sp) js_typed_array_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53699 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53707 val = JS_GetPropertyValue(ctx, this_val, index_val); - c003f6da: 6582 ld a1,0(sp) - c003f6dc: 6622 ld a2,8(sp) - c003f6de: 4701 li a4,0 - c003f6e0: 8522 mv a0,s0 - c003f6e2: e0b6 sd a3,64(sp) - c003f6e4: e482 sd zero,72(sp) - c003f6e6: dc2d20ef jal ra,c0011ca8 - c003f6ea: f82a sd a0,48(sp) - c003f6ec: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53700 + c003f8aa: 6582 ld a1,0(sp) + c003f8ac: 6622 ld a2,8(sp) + c003f8ae: 4701 li a4,0 + c003f8b0: 8522 mv a0,s0 + c003f8b2: e0b6 sd a3,64(sp) + c003f8b4: e482 sd zero,72(sp) + c003f8b6: ce0d20ef jal ra,c0011d96 + c003f8ba: f82a sd a0,48(sp) + c003f8bc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53708 if (JS_IsException(val)) - c003f6ee: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53699 + c003f8be: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53707 val = JS_GetPropertyValue(ctx, this_val, index_val); - c003f6f2: 00050b9b sext.w s7,a0 - c003f6f6: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53700 + c003f8c2: 00050b9b sext.w s7,a0 + c003f8c6: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53708 if (JS_IsException(val)) - c003f6f8: 0b578563 beq a5,s5,c003f7a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53703 + c003f8c8: 0b578563 beq a5,s5,c003f972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53711 args[1] = index_val; - c003f6fc: 6786 ld a5,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8cc: 6786 ld a5,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f6fe: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53702 + c003f8ce: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53710 args[0] = val; - c003f700: ed2e sd a1,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53703 + c003f8d0: ed2e sd a1,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53711 args[1] = index_val; - c003f702: f13e sd a5,160(sp) - c003f704: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8d2: f13e sd a5,160(sp) + c003f8d4: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f706: 7682 ld a3,32(sp) - c003f708: 7722 ld a4,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53703 + c003f8d6: 7682 ld a3,32(sp) + c003f8d8: 7722 ld a4,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53711 args[1] = index_val; - c003f70a: f53e sd a5,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53704 + c003f8da: f53e sd a5,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53712 args[2] = this_val; - c003f70c: 6782 ld a5,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8dc: 6782 ld a5,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f70e: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53702 + c003f8de: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53710 args[0] = val; - c003f710: e92a sd a0,144(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53704 + c003f8e0: e92a sd a0,144(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53712 args[2] = this_val; - c003f712: f93e sd a5,176(sp) - c003f714: 67a2 ld a5,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8e2: f93e sd a5,176(sp) + c003f8e4: 67a2 ld a5,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f716: 09010813 addi a6,sp,144 - c003f71a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53704 + c003f8e6: 09010813 addi a6,sp,144 + c003f8ea: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53712 args[2] = this_val; - c003f71c: fd3e sd a5,184(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8ec: fd3e sd a5,184(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f71e: 478d li a5,3 - c003f720: fe7f90ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53706 + c003f8ee: 478d li a5,3 + c003f8f0: fe7f90ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53714 if (JS_IsException(res)) - c003f724: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 + c003f8f4: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 res = JS_Call(ctx, func, this_arg, 3, args); - c003f728: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53706 + c003f8f8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53714 if (JS_IsException(res)) - c003f72a: 07578c63 beq a5,s5,c003f7a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53708 + c003f8fa: 07578c63 beq a5,s5,c003f972 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53716 if (JS_ToBoolFree(ctx, res)) { - c003f72e: 85aa mv a1,a0 - c003f730: 8522 mv a0,s0 - c003f732: f32c80ef jal ra,c0007e64 - c003f736: c11d beqz a0,c003f75c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53709 + c003f8fe: 85aa mv a1,a0 + c003f900: 8522 mv a0,s0 + c003f902: e50c80ef jal ra,c0007f52 + c003f906: c11d beqz a0,c003f92c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53717 if (mode == special_findIndex || mode == special_findLastIndex) { - c003f738: 98f5 andi s1,s1,-3 - c003f73a: 4705 li a4,1 - c003f73c: 00e49c63 bne s1,a4,c003f754 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53710 + c003f908: 98f5 andi s1,s1,-3 + c003f90a: 4705 li a4,1 + c003f90c: 00e49c63 bne s1,a4,c003f924 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53718 JS_FreeValue(ctx, val); - c003f740: 75c2 ld a1,48(sp) - c003f742: 7662 ld a2,56(sp) - c003f744: 8522 mv a0,s0 - c003f746: bf2c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53711 + c003f910: 75c2 ld a1,48(sp) + c003f912: 7662 ld a2,56(sp) + c003f914: 8522 mv a0,s0 + c003f916: b10c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53719 return index_val; - c003f74a: 6786 ld a5,64(sp) - c003f74c: f0be sd a5,96(sp) - c003f74e: 67a6 ld a5,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53725 + c003f91a: 6786 ld a5,64(sp) + c003f91c: f0be sd a5,96(sp) + c003f91e: 67a6 ld a5,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53733 return JS_EXCEPTION; - c003f750: f4be sd a5,104(sp) - c003f752: a035 j c003f77e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53713 + c003f920: f4be sd a5,104(sp) + c003f922: a035 j c003f94e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53721 return val; - c003f754: 77c2 ld a5,48(sp) - c003f756: f0be sd a5,96(sp) - c003f758: 77e2 ld a5,56(sp) - c003f75a: bfdd j c003f750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53716 + c003f924: 77c2 ld a5,48(sp) + c003f926: f0be sd a5,96(sp) + c003f928: 77e2 ld a5,56(sp) + c003f92a: bfdd j c003f920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53724 JS_FreeValue(ctx, val); - c003f75c: 75c2 ld a1,48(sp) - c003f75e: 7662 ld a2,56(sp) - c003f760: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53697 + c003f92c: 75c2 ld a1,48(sp) + c003f92e: 7662 ld a2,56(sp) + c003f930: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 for(; k != end; k += dir) { - c003f762: 012989bb addw s3,s3,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53716 + c003f932: 012989bb addw s3,s3,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53724 JS_FreeValue(ctx, val); - c003f766: bd2c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53697 (discriminator 1) + c003f936: af0c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53705 (discriminator 1) for(; k != end; k += dir) { - c003f76a: f74995e3 bne s3,s4,c003f6d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53718 + c003f93a: f74995e3 bne s3,s4,c003f8a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53726 if (mode == special_findIndex || mode == special_findLastIndex) - c003f76e: 98f5 andi s1,s1,-3 - c003f770: 4785 li a5,1 - c003f772: 02f49363 bne s1,a5,c003f798 + c003f93e: 98f5 andi s1,s1,-3 + c003f940: 4785 li a5,1 + c003f942: 02f49363 bne s1,a5,c003f968 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003f776: 57fd li a5,-1 - c003f778: 9381 srli a5,a5,0x20 - c003f77a: f0be sd a5,96(sp) - c003f77c: f482 sd zero,104(sp) + c003f946: 57fd li a5,-1 + c003f948: 9381 srli a5,a5,0x20 + c003f94a: f0be sd a5,96(sp) + c003f94c: f482 sd zero,104(sp) js_typed_array_find(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53726 (discriminator 1) -} - c003f77e: 60b2 ld ra,264(sp) - c003f780: 6412 ld s0,256(sp) - c003f782: 7506 ld a0,96(sp) - c003f784: 75a6 ld a1,104(sp) - c003f786: 74ee ld s1,248(sp) - c003f788: 794e ld s2,240(sp) - c003f78a: 79ae ld s3,232(sp) - c003f78c: 7a0e ld s4,224(sp) - c003f78e: 6aee ld s5,216(sp) - c003f790: 6b4e ld s6,208(sp) - c003f792: 6bae ld s7,200(sp) - c003f794: 6151 addi sp,sp,272 - c003f796: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53721 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53734 (discriminator 1) +} + c003f94e: 60b2 ld ra,264(sp) + c003f950: 6412 ld s0,256(sp) + c003f952: 7506 ld a0,96(sp) + c003f954: 75a6 ld a1,104(sp) + c003f956: 74ee ld s1,248(sp) + c003f958: 794e ld s2,240(sp) + c003f95a: 79ae ld s3,232(sp) + c003f95c: 7a0e ld s4,224(sp) + c003f95e: 6aee ld s5,216(sp) + c003f960: 6b4e ld s6,208(sp) + c003f962: 6bae ld s7,200(sp) + c003f964: 6151 addi sp,sp,272 + c003f966: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53729 return JS_UNDEFINED; - c003f798: f082 sd zero,96(sp) - c003f79a: 478d li a5,3 - c003f79c: bf55 j c003f750 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53674 + c003f968: f082 sd zero,96(sp) + c003f96a: 478d li a5,3 + c003f96c: bf55 j c003f920 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53682 val = JS_UNDEFINED; - c003f79e: 4b0d li s6,3 - c003f7a0: 4b81 li s7,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53724 + c003f96e: 4b0d li s6,3 + c003f970: 4b81 li s7,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53732 JS_FreeValue(ctx, val); - c003f7a2: d85e sw s7,48(sp) - c003f7a4: 75c2 ld a1,48(sp) - c003f7a6: 865a mv a2,s6 - c003f7a8: 8522 mv a0,s0 - c003f7aa: b8ec80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53725 + c003f972: d85e sw s7,48(sp) + c003f974: 75c2 ld a1,48(sp) + c003f976: 865a mv a2,s6 + c003f978: 8522 mv a0,s0 + c003f97a: aacc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53733 return JS_EXCEPTION; - c003f7ae: 4799 li a5,6 - c003f7b0: f082 sd zero,96(sp) - c003f7b2: bf79 j c003f750 + c003f97e: 4799 li a5,6 + c003f980: f082 sd zero,96(sp) + c003f982: bf79 j c003f920 -00000000c003f7b4 : +00000000c003f984 : js_async_generator_resolve_or_reject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19427 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19435 static void js_async_generator_resolve_or_reject(JSContext *ctx, - c003f7b4: 715d addi sp,sp,-80 - c003f7b6: f84a sd s2,48(sp) - c003f7b8: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19436 + c003f984: 715d addi sp,sp,-80 + c003f986: f84a sd s2,48(sp) + c003f988: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19444 list_del(&next->link); - c003f7ba: 852e mv a0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19427 + c003f98a: 852e mv a0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19435 static void js_async_generator_resolve_or_reject(JSContext *ctx, - c003f7bc: e486 sd ra,72(sp) - c003f7be: e0a2 sd s0,64(sp) - c003f7c0: fc26 sd s1,56(sp) - c003f7c2: 842e mv s0,a1 - c003f7c4: 84ba mv s1,a4 - c003f7c6: e032 sd a2,0(sp) - c003f7c8: e436 sd a3,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19436 + c003f98c: e486 sd ra,72(sp) + c003f98e: e0a2 sd s0,64(sp) + c003f990: fc26 sd s1,56(sp) + c003f992: 842e mv s0,a1 + c003f994: 84ba mv s1,a4 + c003f996: e032 sd a2,0(sp) + c003f998: e436 sd a3,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19444 list_del(&next->link); - c003f7ca: 891c40ef jal ra,c000405a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19437 + c003f99a: ec0c40ef jal ra,c000405a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19445 ret = JS_Call(ctx, next->resolving_funcs[is_reject], JS_UNDEFINED, 1, - c003f7ce: 00348613 addi a2,s1,3 - c003f7d2: 0612 slli a2,a2,0x4 - c003f7d4: 9622 add a2,a2,s0 - c003f7d6: 660c ld a1,8(a2) - c003f7d8: 6a10 ld a2,16(a2) - c003f7da: 880a mv a6,sp - c003f7dc: 4785 li a5,1 - c003f7de: 4681 li a3,0 - c003f7e0: 470d li a4,3 - c003f7e2: 854a mv a0,s2 - c003f7e4: f23f90ef jal ra,c0039706 - c003f7e8: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19439 + c003f99e: 00348613 addi a2,s1,3 + c003f9a2: 0612 slli a2,a2,0x4 + c003f9a4: 9622 add a2,a2,s0 + c003f9a6: 660c ld a1,8(a2) + c003f9a8: 6a10 ld a2,16(a2) + c003f9aa: 880a mv a6,sp + c003f9ac: 4785 li a5,1 + c003f9ae: 4681 li a3,0 + c003f9b0: 470d li a4,3 + c003f9b2: 854a mv a0,s2 + c003f9b4: f23f90ef jal ra,c00398d6 + c003f9b8: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19447 JS_FreeValue(ctx, ret); - c003f7ea: 85aa mv a1,a0 - c003f7ec: 854a mv a0,s2 - c003f7ee: b4ac80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19440 + c003f9ba: 85aa mv a1,a0 + c003f9bc: 854a mv a0,s2 + c003f9be: a68c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19448 JS_FreeValue(ctx, next->result); - c003f7f2: 6c0c ld a1,24(s0) - c003f7f4: 7010 ld a2,32(s0) - c003f7f6: 854a mv a0,s2 - c003f7f8: b40c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19441 + c003f9c2: 6c0c ld a1,24(s0) + c003f9c4: 7010 ld a2,32(s0) + c003f9c6: 854a mv a0,s2 + c003f9c8: a5ec80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19449 JS_FreeValue(ctx, next->promise); - c003f7fc: 740c ld a1,40(s0) - c003f7fe: 7810 ld a2,48(s0) - c003f800: 854a mv a0,s2 - c003f802: b36c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19442 + c003f9cc: 740c ld a1,40(s0) + c003f9ce: 7810 ld a2,48(s0) + c003f9d0: 854a mv a0,s2 + c003f9d2: a54c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19450 JS_FreeValue(ctx, next->resolving_funcs[0]); - c003f806: 7c0c ld a1,56(s0) - c003f808: 6030 ld a2,64(s0) - c003f80a: 854a mv a0,s2 - c003f80c: b2cc80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19443 + c003f9d6: 7c0c ld a1,56(s0) + c003f9d8: 6030 ld a2,64(s0) + c003f9da: 854a mv a0,s2 + c003f9dc: a4ac80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19451 JS_FreeValue(ctx, next->resolving_funcs[1]); - c003f810: 642c ld a1,72(s0) - c003f812: 6830 ld a2,80(s0) - c003f814: 854a mv a0,s2 - c003f816: b22c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19444 + c003f9e0: 642c ld a1,72(s0) + c003f9e2: 6830 ld a2,80(s0) + c003f9e4: 854a mv a0,s2 + c003f9e6: a40c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19452 js_free(ctx, next); - c003f81a: 85a2 mv a1,s0 - c003f81c: 854a mv a0,s2 - c003f81e: e1cc70ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19445 + c003f9ea: 85a2 mv a1,s0 + c003f9ec: 854a mv a0,s2 + c003f9ee: d3ac70ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19453 } - c003f822: 60a6 ld ra,72(sp) - c003f824: 6406 ld s0,64(sp) - c003f826: 74e2 ld s1,56(sp) - c003f828: 7942 ld s2,48(sp) - c003f82a: 6161 addi sp,sp,80 - c003f82c: 8082 ret + c003f9f2: 60a6 ld ra,72(sp) + c003f9f4: 6406 ld s0,64(sp) + c003f9f6: 74e2 ld s1,56(sp) + c003f9f8: 7942 ld s2,48(sp) + c003f9fa: 6161 addi sp,sp,80 + c003f9fc: 8082 ret -00000000c003f82e : +00000000c003f9fe : js_async_generator_resolve(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19451 -{ - c003f82e: 715d addi sp,sp,-80 - c003f830: e0a2 sd s0,64(sp) - c003f832: fc26 sd s1,56(sp) - c003f834: 842a mv s0,a0 - c003f836: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19459 +{ + c003f9fe: 715d addi sp,sp,-80 + c003fa00: e0a2 sd s0,64(sp) + c003fa02: fc26 sd s1,56(sp) + c003fa04: 842a mv s0,a0 + c003fa06: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19461 result = js_create_iterator_result(ctx, JS_DupValue(ctx, value), done); - c003f838: 8532 mv a0,a2 - c003f83a: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19451 -{ - c003f83c: e486 sd ra,72(sp) - c003f83e: f84a sd s2,48(sp) - c003f840: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19453 + c003fa08: 8532 mv a0,a2 + c003fa0a: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19459 +{ + c003fa0c: e486 sd ra,72(sp) + c003fa0e: f84a sd s2,48(sp) + c003fa10: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19461 result = js_create_iterator_result(ctx, JS_DupValue(ctx, value), done); - c003f842: e2dc60ef jal ra,c000666e - c003f846: 862e mv a2,a1 - c003f848: 86ca mv a3,s2 - c003f84a: 85aa mv a1,a0 - c003f84c: 8522 mv a0,s0 - c003f84e: a74e90ef jal ra,c0028ac2 - c003f852: ec2e sd a1,24(sp) - c003f854: 86ae mv a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19455 + c003fa12: d4bc60ef jal ra,c000675c + c003fa16: 862e mv a2,a1 + c003fa18: 86ca mv a3,s2 + c003fa1a: 85aa mv a1,a0 + c003fa1c: 8522 mv a0,s0 + c003fa1e: a74e90ef jal ra,c0028c92 + c003fa22: ec2e sd a1,24(sp) + c003fa24: 86ae mv a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19463 js_async_generator_resolve_or_reject(ctx, s, result, 0); - c003f856: 708c ld a1,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19453 + c003fa26: 708c ld a1,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19461 result = js_create_iterator_result(ctx, JS_DupValue(ctx, value), done); - c003f858: 862a mv a2,a0 - c003f85a: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19455 + c003fa28: 862a mv a2,a0 + c003fa2a: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19463 js_async_generator_resolve_or_reject(ctx, s, result, 0); - c003f85c: 4701 li a4,0 - c003f85e: 8522 mv a0,s0 - c003f860: f55ff0ef jal ra,c003f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19456 + c003fa2c: 4701 li a4,0 + c003fa2e: 8522 mv a0,s0 + c003fa30: f55ff0ef jal ra,c003f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19464 JS_FreeValue(ctx, result); - c003f864: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19457 + c003fa34: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19465 } - c003f866: 6406 ld s0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19456 + c003fa36: 6406 ld s0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19464 JS_FreeValue(ctx, result); - c003f868: 65c2 ld a1,16(sp) - c003f86a: 6662 ld a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19457 + c003fa38: 65c2 ld a1,16(sp) + c003fa3a: 6662 ld a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19465 } - c003f86c: 60a6 ld ra,72(sp) - c003f86e: 74e2 ld s1,56(sp) - c003f870: 7942 ld s2,48(sp) - c003f872: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19456 + c003fa3c: 60a6 ld ra,72(sp) + c003fa3e: 74e2 ld s1,56(sp) + c003fa40: 7942 ld s2,48(sp) + c003fa42: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19464 JS_FreeValue(ctx, result); - c003f874: ac4c806f j c0007b38 + c003fa44: 9e2c806f j c0007c26 -00000000c003f878 : +00000000c003fa48 : js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19516 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19524 { - c003f878: 7115 addi sp,sp,-224 - c003f87a: e9a2 sd s0,208(sp) - c003f87c: e5a6 sd s1,200(sp) - c003f87e: f556 sd s5,168(sp) - c003f880: f15a sd s6,160(sp) - c003f882: ed86 sd ra,216(sp) - c003f884: e1ca sd s2,192(sp) - c003f886: fd4e sd s3,184(sp) - c003f888: f952 sd s4,176(sp) - c003f88a: ed5e sd s7,152(sp) - c003f88c: 842a mv s0,a0 - c003f88e: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19521 + c003fa48: 7115 addi sp,sp,-224 + c003fa4a: e9a2 sd s0,208(sp) + c003fa4c: e5a6 sd s1,200(sp) + c003fa4e: f556 sd s5,168(sp) + c003fa50: f15a sd s6,160(sp) + c003fa52: ed86 sd ra,216(sp) + c003fa54: e1ca sd s2,192(sp) + c003fa56: fd4e sd s3,184(sp) + c003fa58: f952 sd s4,176(sp) + c003fa5a: ed5e sd s7,152(sp) + c003fa5c: 842a mv s0,a0 + c003fa5e: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19529 if (list_empty(&s->queue)) - c003f890: 01858b13 addi s6,a1,24 - c003f894: 00021a97 auipc s5,0x21 - c003f898: 348a8a93 addi s5,s5,840 # c0060bdc + c003fa60: 01858b13 addi s6,a1,24 + c003fa64: 00021a97 auipc s5,0x21 + c003fa68: 3d8a8a93 addi s5,s5,984 # c0060e3c list_empty(): /Users/Luppy/riscv/quickjs-nuttx/list.h:82 return el->next == el; - c003f89c: 0204b903 ld s2,32(s1) + c003fa6c: 0204b903 ld s2,32(s1) js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19521 - c003f8a0: 0f690263 beq s2,s6,c003f984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19529 + c003fa70: 0f690263 beq s2,s6,c003fb54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19532 switch(s->state) { - c003f8a4: 4498 lw a4,8(s1) - c003f8a6: 4795 li a5,5 - c003f8a8: 30e7ec63 bltu a5,a4,c003fbc0 - c003f8ac: 0084e783 lwu a5,8(s1) - c003f8b0: 078a slli a5,a5,0x2 - c003f8b2: 97d6 add a5,a5,s5 - c003f8b4: 439c lw a5,0(a5) - c003f8b6: 97d6 add a5,a5,s5 - c003f8b8: 8782 jr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19531 + c003fa74: 4498 lw a4,8(s1) + c003fa76: 4795 li a5,5 + c003fa78: 30e7ec63 bltu a5,a4,c003fd90 + c003fa7c: 0084e783 lwu a5,8(s1) + c003fa80: 078a slli a5,a5,0x2 + c003fa82: 97d6 add a5,a5,s5 + c003fa84: 439c lw a5,0(a5) + c003fa86: 97d6 add a5,a5,s5 + c003fa88: 8782 jr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19539 if (next->completion_type == GEN_MAGIC_NEXT) { - c003f8ba: 01092783 lw a5,16(s2) - c003f8be: 1e078863 beqz a5,c003faae -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19534 + c003fa8a: 01092783 lw a5,16(s2) + c003fa8e: 1e078863 beqz a5,c003fc7e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19542 js_async_generator_complete(ctx, s); - c003f8c2: 85a6 mv a1,s1 - c003f8c4: 8522 mv a0,s0 - c003f8c6: cf9c80ef jal ra,c00085be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19536 + c003fa92: 85a6 mv a1,s1 + c003fa94: 8522 mv a0,s0 + c003fa96: c17c80ef jal ra,c00086ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19544 break; - c003f8ca: bfc9 j c003f89c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19538 + c003fa9a: bfc9 j c003fa6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19546 if (next->completion_type == GEN_MAGIC_NEXT) { - c003f8cc: 01092783 lw a5,16(s2) - c003f8d0: e78d bnez a5,c003f8fa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19539 + c003fa9c: 01092783 lw a5,16(s2) + c003faa0: e78d bnez a5,c003faca +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19547 js_async_generator_resolve(ctx, s, JS_UNDEFINED, TRUE); - c003f8d2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19614 -} - c003f8d4: 644e ld s0,208(sp) - c003f8d6: 60ee ld ra,216(sp) - c003f8d8: 690e ld s2,192(sp) - c003f8da: 79ea ld s3,184(sp) - c003f8dc: 7a4a ld s4,176(sp) - c003f8de: 7aaa ld s5,168(sp) - c003f8e0: 7b0a ld s6,160(sp) - c003f8e2: 6bea ld s7,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19539 + c003faa2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 +} + c003faa4: 644e ld s0,208(sp) + c003faa6: 60ee ld ra,216(sp) + c003faa8: 690e ld s2,192(sp) + c003faaa: 79ea ld s3,184(sp) + c003faac: 7a4a ld s4,176(sp) + c003faae: 7aaa ld s5,168(sp) + c003fab0: 7b0a ld s6,160(sp) + c003fab2: 6bea ld s7,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19547 js_async_generator_resolve(ctx, s, JS_UNDEFINED, TRUE); - c003f8e4: 478d li a5,3 - c003f8e6: 85a6 mv a1,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19614 + c003fab4: 478d li a5,3 + c003fab6: 85a6 mv a1,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 } - c003f8e8: 64ae ld s1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19539 + c003fab8: 64ae ld s1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19547 js_async_generator_resolve(ctx, s, JS_UNDEFINED, TRUE); - c003f8ea: f882 sd zero,112(sp) - c003f8ec: fcbe sd a5,120(sp) - c003f8ee: 4705 li a4,1 - c003f8f0: 4601 li a2,0 - c003f8f2: 468d li a3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19614 -} - c003f8f4: 612d addi sp,sp,224 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19539 + c003faba: f882 sd zero,112(sp) + c003fabc: fcbe sd a5,120(sp) + c003fabe: 4705 li a4,1 + c003fac0: 4601 li a2,0 + c003fac2: 468d li a3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 +} + c003fac4: 612d addi sp,sp,224 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19547 js_async_generator_resolve(ctx, s, JS_UNDEFINED, TRUE); - c003f8f6: f39ff06f j c003f82e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19540 + c003fac6: f39ff06f j c003f9fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19548 } else if (next->completion_type == GEN_MAGIC_RETURN) { - c003f8fa: 4705 li a4,1 - c003f8fc: 0ce79963 bne a5,a4,c003f9ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19541 + c003faca: 4705 li a4,1 + c003facc: 0ce79963 bne a5,a4,c003fb9e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19549 s->state = JS_ASYNC_GENERATOR_STATE_AWAITING_RETURN; - c003f900: 4791 li a5,4 - c003f902: c49c sw a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19542 + c003fad0: 4791 li a5,4 + c003fad2: c49c sw a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19550 js_async_generator_completed_return(ctx, s, next->result); - c003f904: 01893783 ld a5,24(s2) + c003fad4: 01893783 ld a5,24(s2) js_async_generator_completed_return(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19484 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19492 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, &value, - c003f908: 644c ld a1,136(s0) - c003f90a: 6850 ld a2,144(s0) - c003f90c: f83e sd a5,48(sp) - c003f90e: 02093783 ld a5,32(s2) - c003f912: 1818 addi a4,sp,48 - c003f914: 4685 li a3,1 - c003f916: fc3e sd a5,56(sp) - c003f918: 8522 mv a0,s0 - c003f91a: 4781 li a5,0 - c003f91c: cc8fc0ef jal ra,c003bde4 - c003f920: e0aa sd a0,64(sp) - c003f922: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19488 + c003fad8: 644c ld a1,136(s0) + c003fada: 6850 ld a2,144(s0) + c003fadc: f83e sd a5,48(sp) + c003fade: 02093783 ld a5,32(s2) + c003fae2: 1818 addi a4,sp,48 + c003fae4: 4685 li a3,1 + c003fae6: fc3e sd a5,56(sp) + c003fae8: 8522 mv a0,s0 + c003faea: 4781 li a5,0 + c003faec: cc8fc0ef jal ra,c003bfb4 + c003faf0: e0aa sd a0,64(sp) + c003faf2: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19496 if (JS_IsException(promise)) { - c003f924: 0005899b sext.w s3,a1 - c003f928: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19484 + c003faf4: 0005899b sext.w s3,a1 + c003faf8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19492 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, &value, - c003f92a: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19488 + c003fafa: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19496 if (JS_IsException(promise)) { - c003f92c: 02f99b63 bne s3,a5,c003f962 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19489 + c003fafc: 02f99b63 bne s3,a5,c003fb32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19497 JSValue err = JS_GetException(ctx); - c003f930: 8522 mv a0,s0 - c003f932: d97ca0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19490 + c003fb00: 8522 mv a0,s0 + c003fb02: cb5ca0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19498 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, (JSValueConst *)&err, - c003f936: 6850 ld a2,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19489 + c003fb06: 6850 ld a2,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19497 JSValue err = JS_GetException(ctx); - c003f938: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19490 + c003fb08: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19498 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, (JSValueConst *)&err, - c003f93a: 644c ld a1,136(s0) - c003f93c: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19489 + c003fb0a: 644c ld a1,136(s0) + c003fb0c: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19497 JSValue err = JS_GetException(ctx); - c003f93e: f8aa sd a0,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19490 + c003fb0e: f8aa sd a0,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19498 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, (JSValueConst *)&err, - c003f940: 1898 addi a4,sp,112 - c003f942: 4685 li a3,1 - c003f944: 8522 mv a0,s0 - c003f946: c9efc0ef jal ra,c003bde4 - c003f94a: 892e mv s2,a1 - c003f94c: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19492 + c003fb10: 1898 addi a4,sp,112 + c003fb12: 4685 li a3,1 + c003fb14: 8522 mv a0,s0 + c003fb16: c9efc0ef jal ra,c003bfb4 + c003fb1a: 892e mv s2,a1 + c003fb1c: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19500 JS_FreeValue(ctx, err); - c003f94e: 7666 ld a2,120(sp) - c003f950: 75c6 ld a1,112(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19490 + c003fb1e: 7666 ld a2,120(sp) + c003fb20: 75c6 ld a1,112(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19498 promise = js_promise_resolve(ctx, ctx->promise_ctor, 1, (JSValueConst *)&err, - c003f952: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19492 + c003fb22: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19500 JS_FreeValue(ctx, err); - c003f954: 8522 mv a0,s0 - c003f956: 9e2c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19493 + c003fb24: 8522 mv a0,s0 + c003fb26: 900c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19501 if (JS_IsException(promise)) - c003f95a: 0009079b sext.w a5,s2 - c003f95e: 03378363 beq a5,s3,c003f984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19497 + c003fb2a: 0009079b sext.w a5,s2 + c003fb2e: 03378363 beq a5,s3,c003fb54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19505 JS_MKPTR(JS_TAG_OBJECT, s->generator), - c003f962: 608c ld a1,0(s1) - c003f964: 57fd li a5,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19496 + c003fb32: 608c ld a1,0(s1) + c003fb34: 57fd li a5,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19504 if (js_async_generator_resolve_function_create(ctx, - c003f966: 4705 li a4,1 - c003f968: 1894 addi a3,sp,112 - c003f96a: 567d li a2,-1 - c003f96c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19497 + c003fb36: 4705 li a4,1 + c003fb38: 1894 addi a3,sp,112 + c003fb3a: 567d li a2,-1 + c003fb3c: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19505 JS_MKPTR(JS_TAG_OBJECT, s->generator), - c003f96e: e8ae sd a1,80(sp) - c003f970: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19496 + c003fb3e: e8ae sd a1,80(sp) + c003fb40: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19504 if (js_async_generator_resolve_function_create(ctx, - c003f972: 95de90ef jal ra,c00292ce - c003f976: c115 beqz a0,c003f99a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19500 + c003fb42: 95de90ef jal ra,c002949e + c003fb46: c115 beqz a0,c003fb6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19508 JS_FreeValue(ctx, promise); - c003f978: 6586 ld a1,64(sp) - c003f97a: e4ca sd s2,72(sp) - c003f97c: 864a mv a2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19510 + c003fb48: 6586 ld a1,64(sp) + c003fb4a: e4ca sd s2,72(sp) + c003fb4c: 864a mv a2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19518 JS_FreeValue(ctx, promise); - c003f97e: 8522 mv a0,s0 - c003f980: 9b8c80ef jal ra,c0007b38 + c003fb4e: 8522 mv a0,s0 + c003fb50: 8d6c80ef jal ra,c0007c26 js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19614 -} - c003f984: 60ee ld ra,216(sp) - c003f986: 644e ld s0,208(sp) - c003f988: 64ae ld s1,200(sp) - c003f98a: 690e ld s2,192(sp) - c003f98c: 79ea ld s3,184(sp) - c003f98e: 7a4a ld s4,176(sp) - c003f990: 7aaa ld s5,168(sp) - c003f992: 7b0a ld s6,160(sp) - c003f994: 6bea ld s7,152(sp) - c003f996: 612d addi sp,sp,224 - c003f998: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 +} + c003fb54: 60ee ld ra,216(sp) + c003fb56: 644e ld s0,208(sp) + c003fb58: 64ae ld s1,200(sp) + c003fb5a: 690e ld s2,192(sp) + c003fb5c: 79ea ld s3,184(sp) + c003fb5e: 7a4a ld s4,176(sp) + c003fb60: 7aaa ld s5,168(sp) + c003fb62: 7b0a ld s6,160(sp) + c003fb64: 6bea ld s7,152(sp) + c003fb66: 612d addi sp,sp,224 + c003fb68: 8082 ret js_async_generator_completed_return(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19505 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19513 res = perform_promise_then(ctx, promise, - c003f99a: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19503 + c003fb6a: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19511 resolving_funcs[0] = JS_UNDEFINED; - c003f99c: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19505 + c003fb6c: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19513 res = perform_promise_then(ctx, promise, - c003f99e: 0898 addi a4,sp,80 - c003f9a0: 1894 addi a3,sp,112 - c003f9a2: 864a mv a2,s2 - c003f9a4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19503 + c003fb6e: 0898 addi a4,sp,80 + c003fb70: 1894 addi a3,sp,112 + c003fb72: 864a mv a2,s2 + c003fb74: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19511 resolving_funcs[0] = JS_UNDEFINED; - c003f9a6: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19504 + c003fb76: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19512 resolving_funcs[1] = JS_UNDEFINED; - c003f9a8: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19503 + c003fb78: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19511 resolving_funcs[0] = JS_UNDEFINED; - c003f9aa: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19504 + c003fb7a: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19512 resolving_funcs[1] = JS_UNDEFINED; - c003f9ac: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19505 + c003fb7c: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19513 res = perform_promise_then(ctx, promise, - c003f9ae: e4ca sd s2,72(sp) - c003f9b0: d52d60ef jal ra,c0015f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19508 + c003fb7e: e4ca sd s2,72(sp) + c003fb80: d52d60ef jal ra,c00160d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19516 JS_FreeValue(ctx, resolving_funcs1[0]); - c003f9b4: 75c6 ld a1,112(sp) - c003f9b6: 7666 ld a2,120(sp) - c003f9b8: 8522 mv a0,s0 - c003f9ba: 97ec80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19509 + c003fb84: 75c6 ld a1,112(sp) + c003fb86: 7666 ld a2,120(sp) + c003fb88: 8522 mv a0,s0 + c003fb8a: 89cc80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19517 JS_FreeValue(ctx, resolving_funcs1[1]); - c003f9be: 658a ld a1,128(sp) - c003f9c0: 662a ld a2,136(sp) - c003f9c2: 8522 mv a0,s0 - c003f9c4: 974c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19510 + c003fb8e: 658a ld a1,128(sp) + c003fb90: 662a ld a2,136(sp) + c003fb92: 8522 mv a0,s0 + c003fb94: 892c80ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19518 JS_FreeValue(ctx, promise); - c003f9c8: 6586 ld a1,64(sp) - c003f9ca: 6626 ld a2,72(sp) - c003f9cc: bf4d j c003f97e + c003fb98: 6586 ld a1,64(sp) + c003fb9a: 6626 ld a2,72(sp) + c003fb9c: bf4d j c003fb4e js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19544 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19552 js_async_generator_reject(ctx, s, next->result); - c003f9ce: 01893603 ld a2,24(s2) - c003f9d2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19614 -} - c003f9d4: 644e ld s0,208(sp) - c003f9d6: f8b2 sd a2,112(sp) - c003f9d8: 02093683 ld a3,32(s2) - c003f9dc: 60ee ld ra,216(sp) - c003f9de: 64ae ld s1,200(sp) - c003f9e0: 79ea ld s3,184(sp) - c003f9e2: 7a4a ld s4,176(sp) - c003f9e4: 7aaa ld s5,168(sp) - c003f9e6: 7b0a ld s6,160(sp) - c003f9e8: 6bea ld s7,152(sp) - c003f9ea: 85ca mv a1,s2 - c003f9ec: 690e ld s2,192(sp) - c003f9ee: fcb6 sd a3,120(sp) - c003f9f0: 4705 li a4,1 - c003f9f2: 612d addi sp,sp,224 - c003f9f4: dc1ff06f j c003f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19549 + c003fb9e: 01893603 ld a2,24(s2) + c003fba2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 +} + c003fba4: 644e ld s0,208(sp) + c003fba6: f8b2 sd a2,112(sp) + c003fba8: 02093683 ld a3,32(s2) + c003fbac: 60ee ld ra,216(sp) + c003fbae: 64ae ld s1,200(sp) + c003fbb0: 79ea ld s3,184(sp) + c003fbb2: 7a4a ld s4,176(sp) + c003fbb4: 7aaa ld s5,168(sp) + c003fbb6: 7b0a ld s6,160(sp) + c003fbb8: 6bea ld s7,152(sp) + c003fbba: 85ca mv a1,s2 + c003fbbc: 690e ld s2,192(sp) + c003fbbe: fcb6 sd a3,120(sp) + c003fbc0: 4705 li a4,1 + c003fbc2: 612d addi sp,sp,224 + c003fbc4: dc1ff06f j c003f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 value = JS_DupValue(ctx, next->result); - c003f9f8: 01893503 ld a0,24(s2) - c003f9fc: 02093583 ld a1,32(s2) - c003fa00: c6fc60ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19550 + c003fbc8: 01893503 ld a0,24(s2) + c003fbcc: 02093583 ld a1,32(s2) + c003fbd0: b8dc60ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19558 if (next->completion_type == GEN_MAGIC_THROW && - c003fa04: 01092703 lw a4,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19549 + c003fbd4: 01092703 lw a4,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 value = JS_DupValue(ctx, next->result); - c003fa08: e82a sd a0,16(sp) - c003fa0a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19550 + c003fbd8: e82a sd a0,16(sp) + c003fbda: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19558 if (next->completion_type == GEN_MAGIC_THROW && - c003fa0c: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19549 + c003fbdc: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 value = JS_DupValue(ctx, next->result); - c003fa0e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19550 + c003fbde: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19558 if (next->completion_type == GEN_MAGIC_THROW && - c003fa10: 06f71663 bne a4,a5,c003fa7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19550 (discriminator 1) - c003fa14: 0084a983 lw s3,8(s1) - c003fa18: 4785 li a5,1 - c003fa1a: 06f99163 bne s3,a5,c003fa7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19552 + c003fbe0: 06f71663 bne a4,a5,c003fc4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19558 (discriminator 1) + c003fbe4: 0084a983 lw s3,8(s1) + c003fbe8: 4785 li a5,1 + c003fbea: 06f99163 bne s3,a5,c003fc4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19560 JS_Throw(ctx, value); - c003fa1e: 85aa mv a1,a0 - c003fa20: 8522 mv a0,s0 - c003fa22: c5bca0ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19553 + c003fbee: 85aa mv a1,a0 + c003fbf0: 8522 mv a0,s0 + c003fbf2: b79ca0ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19561 s->func_state->throw_flag = TRUE; - c003fa26: 689c ld a5,16(s1) - c003fa28: 0337a623 sw s3,44(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19564 + c003fbf6: 689c ld a5,16(s1) + c003fbf8: 0337a623 sw s3,44(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19572 s->state = JS_ASYNC_GENERATOR_STATE_EXECUTING; - c003fa2c: 478d li a5,3 - c003fa2e: c49c sw a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19584 + c003fbfc: 478d li a5,3 + c003fbfe: c49c sw a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19592 s->func_state->frame.cur_sp[-1] = JS_UNDEFINED; - c003fa30: 498d li s3,3 + c003fc00: 498d li s3,3 js_async_generator_await(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19401 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19409 if (JS_IsException(promise)) - c003fa32: 4b99 li s7,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19424 + c003fc02: 4b99 li s7,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19432 return -1; - c003fa34: 5a7d li s4,-1 + c003fc04: 5a7d li s4,-1 js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19566 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19574 func_ret = async_func_resume(ctx, s->func_state); - c003fa36: 688c ld a1,16(s1) - c003fa38: 8522 mv a0,s0 - c003fa3a: ca2f80ef jal ra,c0037edc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19567 + c003fc06: 688c ld a1,16(s1) + c003fc08: 8522 mv a0,s0 + c003fc0a: ca2f80ef jal ra,c00380ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19575 if (s->func_state->is_completed) { - c003fa3e: 689c ld a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19566 + c003fc0e: 689c ld a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19574 func_ret = async_func_resume(ctx, s->func_state); - c003fa40: e02a sd a0,0(sp) - c003fa42: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19567 + c003fc10: e02a sd a0,0(sp) + c003fc12: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19575 if (s->func_state->is_completed) { - c003fa44: 5b98 lw a4,48(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19566 + c003fc14: 5b98 lw a4,48(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19574 func_ret = async_func_resume(ctx, s->func_state); - c003fa46: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19567 + c003fc16: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19575 if (s->func_state->is_completed) { - c003fa48: 2581 sext.w a1,a1 - c003fa4a: c759 beqz a4,c003fad8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19568 + c003fc18: 2581 sext.w a1,a1 + c003fc1a: c759 beqz a4,c003fca8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19576 if (JS_IsException(func_ret)) { - c003fa4c: 4799 li a5,6 - c003fa4e: 06f59463 bne a1,a5,c003fab6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19569 + c003fc1c: 4799 li a5,6 + c003fc1e: 06f59463 bne a1,a5,c003fc86 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19577 value = JS_GetException(ctx); - c003fa52: 8522 mv a0,s0 - c003fa54: c75ca0ef jal ra,c000a6c8 - c003fa58: e82a sd a0,16(sp) - c003fa5a: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19570 + c003fc22: 8522 mv a0,s0 + c003fc24: b93ca0ef jal ra,c000a7b6 + c003fc28: e82a sd a0,16(sp) + c003fc2a: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19578 js_async_generator_complete(ctx, s); - c003fa5c: 8522 mv a0,s0 - c003fa5e: 85a6 mv a1,s1 - c003fa60: b5fc80ef jal ra,c00085be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19571 + c003fc2c: 8522 mv a0,s0 + c003fc2e: 85a6 mv a1,s1 + c003fc30: a7dc80ef jal ra,c00086ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19579 js_async_generator_reject(ctx, s, value); - c003fa64: 6642 ld a2,16(sp) - c003fa66: 66e2 ld a3,24(sp) - c003fa68: 708c ld a1,32(s1) - c003fa6a: 4705 li a4,1 - c003fa6c: 8522 mv a0,s0 - c003fa6e: f8b2 sd a2,112(sp) - c003fa70: fcb6 sd a3,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19463 + c003fc34: 6642 ld a2,16(sp) + c003fc36: 66e2 ld a3,24(sp) + c003fc38: 708c ld a1,32(s1) + c003fc3a: 4705 li a4,1 + c003fc3c: 8522 mv a0,s0 + c003fc3e: f8b2 sd a2,112(sp) + c003fc40: fcb6 sd a3,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19471 js_async_generator_resolve_or_reject(ctx, s, exception, 1); - c003fa72: d43ff0ef jal ra,c003f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19593 + c003fc42: d43ff0ef jal ra,c003f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19601 JS_FreeValue(ctx, value); - c003fa76: 65c2 ld a1,16(sp) - c003fa78: 6662 ld a2,24(sp) - c003fa7a: a899 j c003fad0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 + c003fc46: 65c2 ld a1,16(sp) + c003fc48: 6662 ld a2,24(sp) + c003fc4a: a899 j c003fca0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19565 s->func_state->frame.cur_sp[-1] = value; - c003fa7c: 689c ld a5,16(s1) - c003fa7e: 6742 ld a4,16(sp) + c003fc4c: 689c ld a5,16(s1) + c003fc4e: 6742 ld a4,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003fa80: f002 sd zero,32(sp) + c003fc50: f002 sd zero,32(sp) js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 - c003fa82: 73dc ld a5,160(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19565 + c003fc52: 73dc ld a5,160(a5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003fa84: f402 sd zero,40(sp) + c003fc54: f402 sd zero,40(sp) js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19557 - c003fa86: fee7b823 sd a4,-16(a5) - c003fa8a: 6762 ld a4,24(sp) - c003fa8c: fee7bc23 sd a4,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19559 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19565 + c003fc56: fee7b823 sd a4,-16(a5) + c003fc5a: 6762 ld a4,24(sp) + c003fc5c: fee7bc23 sd a4,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19567 JS_NewInt32(ctx, next->completion_type); - c003fa90: 01092703 lw a4,16(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19558 + c003fc60: 01092703 lw a4,16(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19566 s->func_state->frame.cur_sp[0] = - c003fa94: 689c ld a5,16(s1) - c003fa96: d03a sw a4,32(sp) - c003fa98: 7702 ld a4,32(sp) - c003fa9a: 73dc ld a5,160(a5) + c003fc64: 689c ld a5,16(s1) + c003fc66: d03a sw a4,32(sp) + c003fc68: 7702 ld a4,32(sp) + c003fc6a: 73dc ld a5,160(a5) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c003fa9c: fc82 sd zero,120(sp) - c003fa9e: f8ba sd a4,112(sp) + c003fc6c: fc82 sd zero,120(sp) + c003fc6e: f8ba sd a4,112(sp) js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19559 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19567 JS_NewInt32(ctx, next->completion_type); - c003faa0: e398 sd a4,0(a5) - c003faa2: 7766 ld a4,120(sp) - c003faa4: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19560 + c003fc70: e398 sd a4,0(a5) + c003fc72: 7766 ld a4,120(sp) + c003fc74: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19568 s->func_state->frame.cur_sp++; - c003faa6: 6898 ld a4,16(s1) - c003faa8: 735c ld a5,160(a4) - c003faaa: 07c1 addi a5,a5,16 - c003faac: f35c sd a5,160(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19562 + c003fc76: 6898 ld a4,16(s1) + c003fc78: 735c ld a5,160(a4) + c003fc7a: 07c1 addi a5,a5,16 + c003fc7c: f35c sd a5,160(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19570 s->func_state->throw_flag = FALSE; - c003faae: 689c ld a5,16(s1) - c003fab0: 0207a623 sw zero,44(a5) - c003fab4: bfa5 j c003fa2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19575 + c003fc7e: 689c ld a5,16(s1) + c003fc80: 0207a623 sw zero,44(a5) + c003fc84: bfa5 j c003fbfc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19583 js_async_generator_complete(ctx, s); - c003fab6: 85a6 mv a1,s1 - c003fab8: 8522 mv a0,s0 - c003faba: b05c80ef jal ra,c00085be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19576 + c003fc86: 85a6 mv a1,s1 + c003fc88: 8522 mv a0,s0 + c003fc8a: a23c80ef jal ra,c00086ac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19584 js_async_generator_resolve(ctx, s, func_ret, TRUE); - c003fabe: 6602 ld a2,0(sp) - c003fac0: 66a2 ld a3,8(sp) - c003fac2: 85a6 mv a1,s1 - c003fac4: 4705 li a4,1 - c003fac6: 8522 mv a0,s0 - c003fac8: d67ff0ef jal ra,c003f82e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19577 + c003fc8e: 6602 ld a2,0(sp) + c003fc90: 66a2 ld a3,8(sp) + c003fc92: 85a6 mv a1,s1 + c003fc94: 4705 li a4,1 + c003fc96: 8522 mv a0,s0 + c003fc98: d67ff0ef jal ra,c003f9fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19585 JS_FreeValue(ctx, func_ret); - c003facc: 6582 ld a1,0(sp) - c003face: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19593 + c003fc9c: 6582 ld a1,0(sp) + c003fc9e: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19601 JS_FreeValue(ctx, value); - c003fad0: 8522 mv a0,s0 - c003fad2: 866c80ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19594 + c003fca0: 8522 mv a0,s0 + c003fca2: f85c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19602 break; - c003fad6: b3d9 j c003f89c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19581 + c003fca6: b3d9 j c003fa6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19589 assert(JS_VALUE_GET_TAG(func_ret) == JS_TAG_INT); - c003fad8: c999 beqz a1,c003faee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19581 (discriminator 1) - c003fada: 6595 lui a1,0x5 - c003fadc: 4601 li a2,0 - c003fade: c7d58593 addi a1,a1,-899 # 4c7d <__clzdi2-0xbfffb383> - c003fae2: 0001d517 auipc a0,0x1d - c003fae6: f9650513 addi a0,a0,-106 # c005ca78 - c003faea: 72f130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19583 (discriminator 2) + c003fca8: c999 beqz a1,c003fcbe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19589 (discriminator 1) + c003fcaa: 6595 lui a1,0x5 + c003fcac: 4601 li a2,0 + c003fcae: c8558593 addi a1,a1,-891 # 4c85 <__clzdi2-0xbfffb37b> + c003fcb2: 0001d517 auipc a0,0x1d + c003fcb6: f9650513 addi a0,a0,-106 # c005cc48 + c003fcba: 72f130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19591 (discriminator 2) value = s->func_state->frame.cur_sp[-1]; - c003faee: 73dc ld a5,160(a5) - c003faf0: ff07b683 ld a3,-16(a5) - c003faf4: ff87b703 ld a4,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19584 (discriminator 2) + c003fcbe: 73dc ld a5,160(a5) + c003fcc0: ff07b683 ld a3,-16(a5) + c003fcc4: ff87b703 ld a4,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19592 (discriminator 2) s->func_state->frame.cur_sp[-1] = JS_UNDEFINED; - c003faf8: fe07b823 sd zero,-16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19583 (discriminator 2) + c003fcc8: fe07b823 sd zero,-16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19591 (discriminator 2) value = s->func_state->frame.cur_sp[-1]; - c003fafc: e836 sd a3,16(sp) - c003fafe: ec3a sd a4,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19584 (discriminator 2) + c003fccc: e836 sd a3,16(sp) + c003fcce: ec3a sd a4,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19592 (discriminator 2) s->func_state->frame.cur_sp[-1] = JS_UNDEFINED; - c003fb00: ff37bc23 sd s3,-8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19585 (discriminator 2) + c003fcd0: ff37bc23 sd s3,-8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19593 (discriminator 2) switch(func_ret_code) { - c003fb04: c505 beqz a0,c003fb2c - c003fb06: fff5079b addiw a5,a0,-1 - c003fb0a: 4705 li a4,1 - c003fb0c: 0af76a63 bltu a4,a5,c003fbc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19588 + c003fcd4: c505 beqz a0,c003fcfc + c003fcd6: fff5079b addiw a5,a0,-1 + c003fcda: 4705 li a4,1 + c003fcdc: 0af76a63 bltu a4,a5,c003fd90 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19596 if (func_ret_code == FUNC_RET_YIELD_STAR) - c003fb10: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19589 + c003fce0: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19597 s->state = JS_ASYNC_GENERATOR_STATE_SUSPENDED_YIELD_STAR; - c003fb12: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19588 + c003fce2: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19596 if (func_ret_code == FUNC_RET_YIELD_STAR) - c003fb14: 00e50363 beq a0,a4,c003fb1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19591 + c003fce4: 00e50363 beq a0,a4,c003fcea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19599 s->state = JS_ASYNC_GENERATOR_STATE_SUSPENDED_YIELD; - c003fb18: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19592 + c003fce8: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19600 js_async_generator_resolve(ctx, s, value, FALSE); - c003fb1a: 6642 ld a2,16(sp) - c003fb1c: 66e2 ld a3,24(sp) - c003fb1e: c49c sw a5,8(s1) - c003fb20: 4701 li a4,0 - c003fb22: 85a6 mv a1,s1 - c003fb24: 8522 mv a0,s0 - c003fb26: d09ff0ef jal ra,c003f82e - c003fb2a: b7b1 j c003fa76 + c003fcea: 6642 ld a2,16(sp) + c003fcec: 66e2 ld a3,24(sp) + c003fcee: c49c sw a5,8(s1) + c003fcf0: 4701 li a4,0 + c003fcf2: 85a6 mv a1,s1 + c003fcf4: 8522 mv a0,s0 + c003fcf6: d09ff0ef jal ra,c003f9fe + c003fcfa: b7b1 j c003fc46 js_async_generator_await(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19407 promise = js_promise_resolve(ctx, ctx->promise_ctor, - c003fb2c: 644c ld a1,136(s0) - c003fb2e: 6850 ld a2,144(s0) - c003fb30: f836 sd a3,48(sp) - c003fb32: fc3a sd a4,56(sp) - c003fb34: 4781 li a5,0 - c003fb36: 1818 addi a4,sp,48 - c003fb38: 4685 li a3,1 - c003fb3a: 8522 mv a0,s0 - c003fb3c: aa8fc0ef jal ra,c003bde4 - c003fb40: e4ae sd a1,72(sp) - c003fb42: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19401 + c003fcfc: 644c ld a1,136(s0) + c003fcfe: 6850 ld a2,144(s0) + c003fd00: f836 sd a3,48(sp) + c003fd02: fc3a sd a4,56(sp) + c003fd04: 4781 li a5,0 + c003fd06: 1818 addi a4,sp,48 + c003fd08: 4685 li a3,1 + c003fd0a: 8522 mv a0,s0 + c003fd0c: aa8fc0ef jal ra,c003bfb4 + c003fd10: e4ae sd a1,72(sp) + c003fd12: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19409 if (JS_IsException(promise)) - c003fb44: 2581 sext.w a1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19424 + c003fd14: 2581 sext.w a1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19432 return -1; - c003fb46: 597d li s2,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19401 + c003fd16: 597d li s2,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19409 if (JS_IsException(promise)) - c003fb48: 03758163 beq a1,s7,c003fb6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19404 + c003fd18: 03758163 beq a1,s7,c003fd3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19412 if (js_async_generator_resolve_function_create(ctx, JS_MKPTR(JS_TAG_OBJECT, s->generator), - c003fb4c: 608c ld a1,0(s1) - c003fb4e: 4701 li a4,0 - c003fb50: 0894 addi a3,sp,80 - c003fb52: 567d li a2,-1 - c003fb54: 8522 mv a0,s0 - c003fb56: f8ae sd a1,112(sp) - c003fb58: fcd2 sd s4,120(sp) - c003fb5a: f74e90ef jal ra,c00292ce - c003fb5e: c10d beqz a0,c003fb80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19406 + c003fd1c: 608c ld a1,0(s1) + c003fd1e: 4701 li a4,0 + c003fd20: 0894 addi a3,sp,80 + c003fd22: 567d li a2,-1 + c003fd24: 8522 mv a0,s0 + c003fd26: f8ae sd a1,112(sp) + c003fd28: fcd2 sd s4,120(sp) + c003fd2a: f74e90ef jal ra,c002949e + c003fd2e: c10d beqz a0,c003fd50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19414 JS_FreeValue(ctx, promise); - c003fb60: 6586 ld a1,64(sp) - c003fb62: 6626 ld a2,72(sp) - c003fb64: 8522 mv a0,s0 - c003fb66: fd3c70ef jal ra,c0007b38 + c003fd30: 6586 ld a1,64(sp) + c003fd32: 6626 ld a2,72(sp) + c003fd34: 8522 mv a0,s0 + c003fd36: ef1c70ef jal ra,c0007c26 js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19597 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19605 JS_FreeValue(ctx, value); - c003fb6a: 65c2 ld a1,16(sp) - c003fb6c: 6662 ld a2,24(sp) - c003fb6e: 8522 mv a0,s0 - c003fb70: fc9c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19598 + c003fd3a: 65c2 ld a1,16(sp) + c003fd3c: 6662 ld a2,24(sp) + c003fd3e: 8522 mv a0,s0 + c003fd40: ee7c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19606 if (ret < 0) { - c003fb74: e14918e3 bne s2,s4,c003f984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19600 + c003fd44: e14918e3 bne s2,s4,c003fb54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19608 s->func_state->throw_flag = TRUE; - c003fb78: 689c ld a5,16(s1) - c003fb7a: 4705 li a4,1 - c003fb7c: d7d8 sw a4,44(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19601 + c003fd48: 689c ld a5,16(s1) + c003fd4a: 4705 li a4,1 + c003fd4c: d7d8 sw a4,44(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19609 goto resume_exec; - c003fb7e: bd65 j c003fa36 + c003fd4e: bd65 j c003fc06 js_async_generator_await(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19414 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19422 res = perform_promise_then(ctx, promise, - c003fb80: 6586 ld a1,64(sp) - c003fb82: 6626 ld a2,72(sp) - c003fb84: 1898 addi a4,sp,112 - c003fb86: 0894 addi a3,sp,80 - c003fb88: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19413 + c003fd50: 6586 ld a1,64(sp) + c003fd52: 6626 ld a2,72(sp) + c003fd54: 1898 addi a4,sp,112 + c003fd56: 0894 addi a3,sp,80 + c003fd58: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19421 resolving_funcs1[i] = JS_UNDEFINED; - c003fb8a: f882 sd zero,112(sp) - c003fb8c: fcce sd s3,120(sp) - c003fb8e: e102 sd zero,128(sp) - c003fb90: e54e sd s3,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19414 + c003fd5a: f882 sd zero,112(sp) + c003fd5c: fcce sd s3,120(sp) + c003fd5e: e102 sd zero,128(sp) + c003fd60: e54e sd s3,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19422 res = perform_promise_then(ctx, promise, - c003fb92: b70d60ef jal ra,c0015f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19417 + c003fd62: b70d60ef jal ra,c00160d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19425 JS_FreeValue(ctx, promise); - c003fb96: 6586 ld a1,64(sp) - c003fb98: 6626 ld a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19414 + c003fd66: 6586 ld a1,64(sp) + c003fd68: 6626 ld a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19422 res = perform_promise_then(ctx, promise, - c003fb9a: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19417 + c003fd6a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19425 JS_FreeValue(ctx, promise); - c003fb9c: 8522 mv a0,s0 - c003fb9e: f9bc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19419 + c003fd6c: 8522 mv a0,s0 + c003fd6e: eb9c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19427 JS_FreeValue(ctx, resolving_funcs[i]); - c003fba2: 65c6 ld a1,80(sp) - c003fba4: 6666 ld a2,88(sp) - c003fba6: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19420 + c003fd72: 65c6 ld a1,80(sp) + c003fd74: 6666 ld a2,88(sp) + c003fd76: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19428 if (res) - c003fba8: 01203933 snez s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19419 + c003fd78: 01203933 snez s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19427 JS_FreeValue(ctx, resolving_funcs[i]); - c003fbac: f8dc70ef jal ra,c0007b38 - c003fbb0: 7586 ld a1,96(sp) - c003fbb2: 7626 ld a2,104(sp) - c003fbb4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19420 + c003fd7c: eabc70ef jal ra,c0007c26 + c003fd80: 7586 ld a1,96(sp) + c003fd82: 7626 ld a2,104(sp) + c003fd84: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19428 if (res) - c003fbb6: 41200933 neg s2,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19419 + c003fd86: 41200933 neg s2,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19427 JS_FreeValue(ctx, resolving_funcs[i]); - c003fbba: f7fc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19420 + c003fd8a: e9dc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19428 if (res) - c003fbbe: b775 j c003fb6a + c003fd8e: b775 j c003fd3a js_async_generator_resume_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19613 abort(); - c003fbc0: 44b150ef jal ra,c005580a + c003fd90: 44b150ef jal ra,c00559da -00000000c003fbc4 : +00000000c003fd94 : js_async_generator_resolve_function(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19620 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19628 { - c003fbc4: 7159 addi sp,sp,-112 - c003fbc6: eca6 sd s1,88(sp) - c003fbc8: e02e sd a1,0(sp) - c003fbca: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 + c003fd94: 7159 addi sp,sp,-112 + c003fd96: eca6 sd s1,88(sp) + c003fd98: e02e sd a1,0(sp) + c003fd9a: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19630 JSAsyncGeneratorData *s = JS_GetOpaque(func_data[0], JS_CLASS_ASYNC_GENERATOR); - c003fbcc: 00883583 ld a1,8(a6) - c003fbd0: 00083503 ld a0,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19620 + c003fd9c: 00883583 ld a1,8(a6) + c003fda0: 00083503 ld a0,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19628 { - c003fbd4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 + c003fda4: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19630 JSAsyncGeneratorData *s = JS_GetOpaque(func_data[0], JS_CLASS_ASYNC_GENERATOR); - c003fbd6: 03500613 li a2,53 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19620 -{ - c003fbda: f0a2 sd s0,96(sp) - c003fbdc: e8ca sd s2,80(sp) - c003fbde: e4ce sd s3,72(sp) - c003fbe0: e0d2 sd s4,64(sp) - c003fbe2: 89ba mv s3,a4 - c003fbe4: 893e mv s2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19621 + c003fda6: 03500613 li a2,53 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19628 +{ + c003fdaa: f0a2 sd s0,96(sp) + c003fdac: e8ca sd s2,80(sp) + c003fdae: e4ce sd s3,72(sp) + c003fdb0: e0d2 sd s4,64(sp) + c003fdb2: 89ba mv s3,a4 + c003fdb4: 893e mv s2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19629 BOOL is_reject = magic & 1; - c003fbe6: 0017fa13 andi s4,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19620 + c003fdb6: 0017fa13 andi s4,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19628 { - c003fbea: f486 sd ra,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 + c003fdba: f486 sd ra,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19630 JSAsyncGeneratorData *s = JS_GetOpaque(func_data[0], JS_CLASS_ASYNC_GENERATOR); - c003fbec: cc7ca0ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19623 + c003fdbc: be5ca0ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19631 JSValueConst arg = argv[0]; - c003fbf0: 0009b603 ld a2,0(s3) - c003fbf4: 0089b683 ld a3,8(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19627 + c003fdc0: 0009b603 ld a2,0(s3) + c003fdc4: 0089b683 ld a3,8(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19635 if (magic >= 2) { - c003fbf8: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19623 + c003fdc8: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19631 JSValueConst arg = argv[0]; - c003fbfa: e832 sd a2,16(sp) - c003fbfc: ec36 sd a3,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19629 + c003fdca: e832 sd a2,16(sp) + c003fdcc: ec36 sd a3,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19637 assert(s->state == JS_ASYNC_GENERATOR_STATE_AWAITING_RETURN || - c003fbfe: 4518 lw a4,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19622 + c003fdce: 4518 lw a4,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19630 JSAsyncGeneratorData *s = JS_GetOpaque(func_data[0], JS_CLASS_ASYNC_GENERATOR); - c003fc00: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19627 + c003fdd0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19635 if (magic >= 2) { - c003fc02: 0527da63 bge a5,s2,c003fc56 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19629 + c003fdd2: 0527da63 bge a5,s2,c003fe26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19637 assert(s->state == JS_ASYNC_GENERATOR_STATE_AWAITING_RETURN || - c003fc06: 3771 addiw a4,a4,-4 - c003fc08: 00e7fc63 bgeu a5,a4,c003fc20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19629 (discriminator 1) - c003fc0c: 6595 lui a1,0x5 - c003fc0e: 4601 li a2,0 - c003fc10: cad58593 addi a1,a1,-851 # 4cad <__clzdi2-0xbfffb353> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19639 (discriminator 1) + c003fdd6: 3771 addiw a4,a4,-4 + c003fdd8: 00e7fc63 bgeu a5,a4,c003fdf0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19637 (discriminator 1) + c003fddc: 6595 lui a1,0x5 + c003fdde: 4601 li a2,0 + c003fde0: cb558593 addi a1,a1,-843 # 4cb5 <__clzdi2-0xbfffb34b> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19647 (discriminator 1) assert(s->state == JS_ASYNC_GENERATOR_STATE_EXECUTING); - c003fc14: 0001d517 auipc a0,0x1d - c003fc18: e6450513 addi a0,a0,-412 # c005ca78 - c003fc1c: 5fd130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19631 (discriminator 2) + c003fde4: 0001d517 auipc a0,0x1d + c003fde8: e6450513 addi a0,a0,-412 # c005cc48 + c003fdec: 5fd130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19639 (discriminator 2) s->state = JS_ASYNC_GENERATOR_STATE_COMPLETED; - c003fc20: 4795 li a5,5 - c003fc22: c51c sw a5,8(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19632 (discriminator 2) + c003fdf0: 4795 li a5,5 + c003fdf2: c51c sw a5,8(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19640 (discriminator 2) if (is_reject) { - c003fc24: 020a0363 beqz s4,c003fc4a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19633 + c003fdf4: 020a0363 beqz s4,c003fe1a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19641 js_async_generator_reject(ctx, s, arg); - c003fc28: 710c ld a1,32(a0) - c003fc2a: 4705 li a4,1 - c003fc2c: 8526 mv a0,s1 - c003fc2e: f832 sd a2,48(sp) - c003fc30: fc36 sd a3,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19463 + c003fdf8: 710c ld a1,32(a0) + c003fdfa: 4705 li a4,1 + c003fdfc: 8526 mv a0,s1 + c003fdfe: f832 sd a2,48(sp) + c003fe00: fc36 sd a3,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19471 js_async_generator_resolve_or_reject(ctx, s, exception, 1); - c003fc32: b83ff0ef jal ra,c003f7b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19650 -} - c003fc36: 70a6 ld ra,104(sp) - c003fc38: 7406 ld s0,96(sp) - c003fc3a: 64e6 ld s1,88(sp) - c003fc3c: 6946 ld s2,80(sp) - c003fc3e: 69a6 ld s3,72(sp) - c003fc40: 6a06 ld s4,64(sp) - c003fc42: 4501 li a0,0 - c003fc44: 458d li a1,3 - c003fc46: 6165 addi sp,sp,112 - c003fc48: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19635 + c003fe02: b83ff0ef jal ra,c003f984 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19658 +} + c003fe06: 70a6 ld ra,104(sp) + c003fe08: 7406 ld s0,96(sp) + c003fe0a: 64e6 ld s1,88(sp) + c003fe0c: 6946 ld s2,80(sp) + c003fe0e: 69a6 ld s3,72(sp) + c003fe10: 6a06 ld s4,64(sp) + c003fe12: 4501 li a0,0 + c003fe14: 458d li a1,3 + c003fe16: 6165 addi sp,sp,112 + c003fe18: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19643 js_async_generator_resolve(ctx, s, arg, TRUE); - c003fc4a: 85aa mv a1,a0 - c003fc4c: 4705 li a4,1 - c003fc4e: 8526 mv a0,s1 - c003fc50: bdfff0ef jal ra,c003f82e - c003fc54: b7cd j c003fc36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19639 + c003fe1a: 85aa mv a1,a0 + c003fe1c: 4705 li a4,1 + c003fe1e: 8526 mv a0,s1 + c003fe20: bdfff0ef jal ra,c003f9fe + c003fe24: b7cd j c003fe06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19647 assert(s->state == JS_ASYNC_GENERATOR_STATE_EXECUTING); - c003fc56: 478d li a5,3 - c003fc58: 00f70763 beq a4,a5,c003fc66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19639 (discriminator 1) - c003fc5c: 6595 lui a1,0x5 - c003fc5e: 4601 li a2,0 - c003fc60: cb758593 addi a1,a1,-841 # 4cb7 <__clzdi2-0xbfffb349> - c003fc64: bf45 j c003fc14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19640 (discriminator 2) + c003fe26: 478d li a5,3 + c003fe28: 00f70763 beq a4,a5,c003fe36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19647 (discriminator 1) + c003fe2c: 6595 lui a1,0x5 + c003fe2e: 4601 li a2,0 + c003fe30: cbf58593 addi a1,a1,-833 # 4cbf <__clzdi2-0xbfffb341> + c003fe34: bf45 j c003fde4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19648 (discriminator 2) s->func_state->throw_flag = is_reject; - c003fc66: 691c ld a5,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19642 (discriminator 2) + c003fe36: 691c ld a5,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19650 (discriminator 2) JS_Throw(ctx, JS_DupValue(ctx, arg)); - c003fc68: 85b6 mv a1,a3 - c003fc6a: 8532 mv a0,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19640 (discriminator 2) + c003fe38: 85b6 mv a1,a3 + c003fe3a: 8532 mv a0,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19648 (discriminator 2) s->func_state->throw_flag = is_reject; - c003fc6c: 0347a623 sw s4,44(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19641 (discriminator 2) + c003fe3c: 0347a623 sw s4,44(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19649 (discriminator 2) if (is_reject) { - c003fc70: 000a0e63 beqz s4,c003fc8c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19642 + c003fe40: 000a0e63 beqz s4,c003fe5c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19650 JS_Throw(ctx, JS_DupValue(ctx, arg)); - c003fc74: 9fbc60ef jal ra,c000666e - c003fc78: 862e mv a2,a1 - c003fc7a: 85aa mv a1,a0 - c003fc7c: 8526 mv a0,s1 - c003fc7e: 9ffca0ef jal ra,c000a67c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19647 + c003fe44: 919c60ef jal ra,c000675c + c003fe48: 862e mv a2,a1 + c003fe4a: 85aa mv a1,a0 + c003fe4c: 8526 mv a0,s1 + c003fe4e: 91dca0ef jal ra,c000a76a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19655 js_async_generator_resume_next(ctx, s); - c003fc82: 85a2 mv a1,s0 - c003fc84: 8526 mv a0,s1 - c003fc86: bf3ff0ef jal ra,c003f878 - c003fc8a: b775 j c003fc36 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19645 + c003fe52: 85a2 mv a1,s0 + c003fe54: 8526 mv a0,s1 + c003fe56: bf3ff0ef jal ra,c003fa48 + c003fe5a: b775 j c003fe06 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19653 s->func_state->frame.cur_sp[-1] = JS_DupValue(ctx, arg); - c003fc8c: 9e3c60ef jal ra,c000666e - c003fc90: 681c ld a5,16(s0) - c003fc92: 73dc ld a5,160(a5) - c003fc94: fea7b823 sd a0,-16(a5) - c003fc98: feb7bc23 sd a1,-8(a5) - c003fc9c: b7dd j c003fc82 - -00000000c003fc9e : + c003fe5c: 901c60ef jal ra,c000675c + c003fe60: 681c ld a5,16(s0) + c003fe62: 73dc ld a5,160(a5) + c003fe64: fea7b823 sd a0,-16(a5) + c003fe68: feb7bc23 sd a1,-8(a5) + c003fe6c: b7dd j c003fe52 + +00000000c003fe6e : js_async_function_call(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19268 -{ - c003fc9e: 711d addi sp,sp,-96 - c003fca0: e0ca sd s2,64(sp) - c003fca2: ec86 sd ra,88(sp) - c003fca4: e8a2 sd s0,80(sp) - c003fca6: e4a6 sd s1,72(sp) - c003fca8: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19276 +{ + c003fe6e: 711d addi sp,sp,-96 + c003fe70: e0ca sd s2,64(sp) + c003fe72: ec86 sd ra,88(sp) + c003fe74: e8a2 sd s0,80(sp) + c003fe76: e4a6 sd s1,72(sp) + c003fe78: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19280 s = async_func_init(ctx, func_obj, this_obj, argc, argv); - c003fcaa: 858d60ef jal ra,c0015d02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19273 + c003fe7a: 858d60ef jal ra,c0015ed2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19281 if (!s) - c003fcae: e509 bnez a0,c003fcb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19274 + c003fe7e: e509 bnez a0,c003fe88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19282 return JS_EXCEPTION; - c003fcb0: f802 sd zero,48(sp) - c003fcb2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19286 + c003fe80: f802 sd zero,48(sp) + c003fe82: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19294 return promise; - c003fcb4: fc3e sd a5,56(sp) - c003fcb6: a02d j c003fce0 - c003fcb8: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19276 + c003fe84: fc3e sd a5,56(sp) + c003fe86: a02d j c003feb0 + c003fe88: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19284 promise = JS_NewPromiseCapability(ctx, s->resolving_funcs); - c003fcba: 03850593 addi a1,a0,56 - c003fcbe: 854a mv a0,s2 - c003fcc0: ad0cb0ef jal ra,c000af90 - c003fcc4: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19277 + c003fe8a: 03850593 addi a1,a0,56 + c003fe8e: 854a mv a0,s2 + c003fe90: 9eecb0ef jal ra,c000b07e + c003fe94: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19285 if (JS_IsException(promise)) { - c003fcc6: 0005849b sext.w s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19276 + c003fe96: 0005849b sext.w s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19284 promise = JS_NewPromiseCapability(ctx, s->resolving_funcs); - c003fcca: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19277 + c003fe9a: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19285 if (JS_IsException(promise)) { - c003fccc: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19278 + c003fe9c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19286 async_func_free(ctx->rt, s); - c003fcce: 85a2 mv a1,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19277 + c003fe9e: 85a2 mv a1,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19285 if (JS_IsException(promise)) { - c003fcd0: 02f49063 bne s1,a5,c003fcf0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19278 + c003fea0: 02f49063 bne s1,a5,c003fec0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19286 async_func_free(ctx->rt, s); - c003fcd4: 01893503 ld a0,24(s2) - c003fcd8: fdac80ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19279 + c003fea4: 01893503 ld a0,24(s2) + c003fea8: ef8c80ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19287 return JS_EXCEPTION; - c003fcdc: f802 sd zero,48(sp) - c003fcde: fc26 sd s1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19287 (discriminator 1) -} - c003fce0: 60e6 ld ra,88(sp) - c003fce2: 6446 ld s0,80(sp) - c003fce4: 7542 ld a0,48(sp) - c003fce6: 75e2 ld a1,56(sp) - c003fce8: 64a6 ld s1,72(sp) - c003fcea: 6906 ld s2,64(sp) - c003fcec: 6125 addi sp,sp,96 - c003fcee: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19282 + c003feac: f802 sd zero,48(sp) + c003feae: fc26 sd s1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19295 (discriminator 1) +} + c003feb0: 60e6 ld ra,88(sp) + c003feb2: 6446 ld s0,80(sp) + c003feb4: 7542 ld a0,48(sp) + c003feb6: 75e2 ld a1,56(sp) + c003feb8: 64a6 ld s1,72(sp) + c003feba: 6906 ld s2,64(sp) + c003febc: 6125 addi sp,sp,96 + c003febe: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19290 js_async_function_resume(ctx, s); - c003fcf0: 854a mv a0,s2 - c003fcf2: a32fc0ef jal ra,c003bf24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19284 + c003fec0: 854a mv a0,s2 + c003fec2: a32fc0ef jal ra,c003c0f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19292 async_func_free(ctx->rt, s); - c003fcf6: 01893503 ld a0,24(s2) - c003fcfa: 85a2 mv a1,s0 - c003fcfc: fb6c80ef jal ra,c00084b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19286 + c003fec6: 01893503 ld a0,24(s2) + c003feca: 85a2 mv a1,s0 + c003fecc: ed4c80ef jal ra,c00085a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19294 return promise; - c003fd00: 7782 ld a5,32(sp) - c003fd02: f83e sd a5,48(sp) - c003fd04: 77a2 ld a5,40(sp) - c003fd06: b77d j c003fcb4 + c003fed0: 7782 ld a5,32(sp) + c003fed2: f83e sd a5,48(sp) + c003fed4: 77a2 ld a5,40(sp) + c003fed6: b77d j c003fe84 -00000000c003fd08 : +00000000c003fed8 : js_execute_sync_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28842 { - c003fd08: 715d addi sp,sp,-80 - c003fd0a: e0a2 sd s0,64(sp) - c003fd0c: fc26 sd s1,56(sp) - c003fd0e: e486 sd ra,72(sp) - c003fd10: f84a sd s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28835 + c003fed8: 715d addi sp,sp,-80 + c003feda: e0a2 sd s0,64(sp) + c003fedc: fc26 sd s1,56(sp) + c003fede: e486 sd ra,72(sp) + c003fee0: f84a sd s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28843 if (m->init_func) { - c003fd12: 7dbc ld a5,120(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28834 + c003fee2: 7dbc ld a5,120(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28842 { - c003fd14: 842a mv s0,a0 - c003fd16: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28835 + c003fee4: 842a mv s0,a0 + c003fee6: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28843 if (m->init_func) { - c003fd18: cb91 beqz a5,c003fd2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28837 + c003fee8: cb91 beqz a5,c003fefc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28845 if (m->init_func(ctx, m) < 0) - c003fd1a: 9782 jalr a5 - c003fd1c: 04055a63 bgez a0,c003fd70 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28857 + c003feea: 9782 jalr a5 + c003feec: 04055a63 bgez a0,c003ff40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28865 *pvalue = JS_GetException(ctx); - c003fd20: 8522 mv a0,s0 - c003fd22: 9a7ca0ef jal ra,c000a6c8 - c003fd26: e088 sd a0,0(s1) - c003fd28: e48c sd a1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28858 + c003fef0: 8522 mv a0,s0 + c003fef2: 8c5ca0ef jal ra,c000a7b6 + c003fef6: e088 sd a0,0(s1) + c003fef8: e48c sd a1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28866 return -1; - c003fd2a: a0bd j c003fd98 - c003fd2c: 832e mv t1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28843 + c003fefa: a0bd j c003ff68 + c003fefc: 832e mv t1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28851 promise = js_async_function_call(ctx, m->func_obj, JS_UNDEFINED, 0, NULL, 0); - c003fd2e: 07033603 ld a2,112(t1) - c003fd32: 75ac ld a1,104(a1) - c003fd34: 4781 li a5,0 - c003fd36: 470d li a4,3 - c003fd38: 4881 li a7,0 - c003fd3a: 4801 li a6,0 - c003fd3c: 4681 li a3,0 - c003fd3e: f61ff0ef jal ra,c003fc9e - c003fd42: e82a sd a0,16(sp) - c003fd44: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28844 + c003fefe: 07033603 ld a2,112(t1) + c003ff02: 75ac ld a1,104(a1) + c003ff04: 4781 li a5,0 + c003ff06: 470d li a4,3 + c003ff08: 4881 li a7,0 + c003ff0a: 4801 li a6,0 + c003ff0c: 4681 li a3,0 + c003ff0e: f61ff0ef jal ra,c003fe6e + c003ff12: e82a sd a0,16(sp) + c003ff14: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28852 if (JS_IsException(promise)) - c003fd46: 0005871b sext.w a4,a1 - c003fd4a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28843 + c003ff16: 0005871b sext.w a4,a1 + c003ff1a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28851 promise = js_async_function_call(ctx, m->func_obj, JS_UNDEFINED, 0, NULL, 0); - c003fd4c: 892a mv s2,a0 - c003fd4e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28844 + c003ff1c: 892a mv s2,a0 + c003ff1e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28852 if (JS_IsException(promise)) - c003fd50: fcf708e3 beq a4,a5,c003fd20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28846 + c003ff20: fcf708e3 beq a4,a5,c003fef0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28854 state = JS_PromiseState(ctx, promise); - c003fd54: 85aa mv a1,a0 - c003fd56: 8522 mv a0,s0 - c003fd58: e432 sd a2,8(sp) - c003fd5a: 9dacb0ef jal ra,c000af34 - c003fd5e: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28847 + c003ff24: 85aa mv a1,a0 + c003ff26: 8522 mv a0,s0 + c003ff28: e432 sd a2,8(sp) + c003ff2a: 8f8cb0ef jal ra,c000b022 + c003ff2e: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28855 if (state == JS_PROMISE_FULFILLED) { - c003fd60: 4785 li a5,1 - c003fd62: 6622 ld a2,8(sp) - c003fd64: 00f51c63 bne a0,a5,c003fd7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28848 + c003ff30: 4785 li a5,1 + c003ff32: 6622 ld a2,8(sp) + c003ff34: 00f51c63 bne a0,a5,c003ff4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28856 JS_FreeValue(ctx, promise); - c003fd68: 85ca mv a1,s2 - c003fd6a: 8522 mv a0,s0 - c003fd6c: dcdc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28861 + c003ff38: 85ca mv a1,s2 + c003ff3a: 8522 mv a0,s0 + c003ff3c: cebc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28869 *pvalue = JS_UNDEFINED; - c003fd70: 478d li a5,3 - c003fd72: 0004b023 sd zero,0(s1) - c003fd76: e49c sd a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28862 + c003ff40: 478d li a5,3 + c003ff42: 0004b023 sd zero,0(s1) + c003ff46: e49c sd a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28870 return 0; - c003fd78: 4501 li a0,0 - c003fd7a: a005 j c003fd9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28849 + c003ff48: 4501 li a0,0 + c003ff4a: a005 j c003ff6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28857 } else if (state == JS_PROMISE_REJECTED) { - c003fd7c: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28850 + c003ff4c: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28858 *pvalue = JS_PromiseResult(ctx, promise); - c003fd7e: 85ca mv a1,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28849 + c003ff4e: 85ca mv a1,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28857 } else if (state == JS_PROMISE_REJECTED) { - c003fd80: 02f51363 bne a0,a5,c003fda6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28850 + c003ff50: 02f51363 bne a0,a5,c003ff76 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28858 *pvalue = JS_PromiseResult(ctx, promise); - c003fd84: 8522 mv a0,s0 - c003fd86: 9d2cb0ef jal ra,c000af58 - c003fd8a: e48c sd a1,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28851 + c003ff54: 8522 mv a0,s0 + c003ff56: 8f0cb0ef jal ra,c000b046 + c003ff5a: e48c sd a1,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28859 JS_FreeValue(ctx, promise); - c003fd8c: 6662 ld a2,24(sp) - c003fd8e: 65c2 ld a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28850 + c003ff5c: 6662 ld a2,24(sp) + c003ff5e: 65c2 ld a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28858 *pvalue = JS_PromiseResult(ctx, promise); - c003fd90: e088 sd a0,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28851 + c003ff60: e088 sd a0,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28859 JS_FreeValue(ctx, promise); - c003fd92: 8522 mv a0,s0 - c003fd94: da5c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28852 (discriminator 1) + c003ff62: 8522 mv a0,s0 + c003ff64: cc3c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28860 (discriminator 1) return -1; - c003fd98: 557d li a0,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28863 -} - c003fd9a: 60a6 ld ra,72(sp) - c003fd9c: 6406 ld s0,64(sp) - c003fd9e: 74e2 ld s1,56(sp) - c003fda0: 7942 ld s2,48(sp) - c003fda2: 6161 addi sp,sp,80 - c003fda4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28854 + c003ff68: 557d li a0,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28871 +} + c003ff6a: 60a6 ld ra,72(sp) + c003ff6c: 6406 ld s0,64(sp) + c003ff6e: 74e2 ld s1,56(sp) + c003ff70: 7942 ld s2,48(sp) + c003ff72: 6161 addi sp,sp,80 + c003ff74: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28862 JS_FreeValue(ctx, promise); - c003fda6: 8522 mv a0,s0 - c003fda8: d91c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28855 + c003ff76: 8522 mv a0,s0 + c003ff78: cafc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28863 JS_ThrowTypeError(ctx, "promise is pending"); - c003fdac: 8522 mv a0,s0 - c003fdae: 00021597 auipc a1,0x21 - c003fdb2: e4a58593 addi a1,a1,-438 # c0060bf8 - c003fdb6: e40d30ef jal ra,c00133f6 - c003fdba: b79d j c003fd20 + c003ff7c: 8522 mv a0,s0 + c003ff7e: 00021597 auipc a1,0x21 + c003ff82: eda58593 addi a1,a1,-294 # c0060e58 + c003ff86: d5ed30ef jal ra,c00134e4 + c003ff8a: b79d j c003fef0 -00000000c003fdbc : +00000000c003ff8c : js_execute_async_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28812 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28820 static int js_execute_async_module(JSContext *ctx, JSModuleDef *m) - c003fdbc: 7119 addi sp,sp,-128 - c003fdbe: f8a2 sd s0,112(sp) - c003fdc0: f4a6 sd s1,104(sp) - c003fdc2: fc86 sd ra,120(sp) - c003fdc4: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28816 + c003ff8c: 7119 addi sp,sp,-128 + c003ff8e: f8a2 sd s0,112(sp) + c003ff90: f4a6 sd s1,104(sp) + c003ff92: fc86 sd ra,120(sp) + c003ff94: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28824 promise = js_async_function_call(ctx, m->func_obj, JS_UNDEFINED, 0, NULL, 0); - c003fdc6: 78b0 ld a2,112(s1) - c003fdc8: 75ac ld a1,104(a1) - c003fdca: 4781 li a5,0 - c003fdcc: 470d li a4,3 - c003fdce: 4881 li a7,0 - c003fdd0: 4801 li a6,0 - c003fdd2: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28812 + c003ff96: 78b0 ld a2,112(s1) + c003ff98: 75ac ld a1,104(a1) + c003ff9a: 4781 li a5,0 + c003ff9c: 470d li a4,3 + c003ff9e: 4881 li a7,0 + c003ffa0: 4801 li a6,0 + c003ffa2: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28820 static int js_execute_async_module(JSContext *ctx, JSModuleDef *m) - c003fdd4: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28816 + c003ffa4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28824 promise = js_async_function_call(ctx, m->func_obj, JS_UNDEFINED, 0, NULL, 0); - c003fdd6: ec9ff0ef jal ra,c003fc9e - c003fdda: e02a sd a0,0(sp) - c003fddc: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28817 + c003ffa6: ec9ff0ef jal ra,c003fe6e + c003ffaa: e02a sd a0,0(sp) + c003ffac: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28825 if (JS_IsException(promise)) - c003fdde: 0005879b sext.w a5,a1 - c003fde2: 4719 li a4,6 - c003fde4: 08e78263 beq a5,a4,c003fe68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28819 + c003ffae: 0005879b sext.w a5,a1 + c003ffb2: 4719 li a4,6 + c003ffb4: 08e78263 beq a5,a4,c0040038 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28827 m_obj = JS_NewModuleValue(ctx, m); - c003fde8: 85a6 mv a1,s1 - c003fdea: 8522 mv a0,s0 - c003fdec: 9b5c60ef jal ra,c00067a0 - c003fdf0: e82a sd a0,16(sp) - c003fdf2: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28820 + c003ffb8: 85a6 mv a1,s1 + c003ffba: 8522 mv a0,s0 + c003ffbc: 8d3c60ef jal ra,c000688e + c003ffc0: e82a sd a0,16(sp) + c003ffc2: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28828 resolve_funcs[0] = JS_NewCFunctionData(ctx, js_async_module_execution_fulfilled, 0, 0, 1, (JSValueConst *)&m_obj); - c003fdf4: 081c addi a5,sp,16 - c003fdf6: 4705 li a4,1 - c003fdf8: 4681 li a3,0 - c003fdfa: 4601 li a2,0 - c003fdfc: 00000597 auipc a1,0x0 - c003fe00: 07658593 addi a1,a1,118 # c003fe72 - c003fe04: 8522 mv a0,s0 - c003fe06: bf0e90ef jal ra,c00291f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28821 + c003ffc4: 081c addi a5,sp,16 + c003ffc6: 4705 li a4,1 + c003ffc8: 4681 li a3,0 + c003ffca: 4601 li a2,0 + c003ffcc: 00000597 auipc a1,0x0 + c003ffd0: 07658593 addi a1,a1,118 # c0040042 + c003ffd4: 8522 mv a0,s0 + c003ffd6: bf0e90ef jal ra,c00293c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28829 resolve_funcs[1] = JS_NewCFunctionData(ctx, js_async_module_execution_rejected, 0, 0, 1, (JSValueConst *)&m_obj); - c003fe0a: 081c addi a5,sp,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28820 + c003ffda: 081c addi a5,sp,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28828 resolve_funcs[0] = JS_NewCFunctionData(ctx, js_async_module_execution_fulfilled, 0, 0, 1, (JSValueConst *)&m_obj); - c003fe0c: e0aa sd a0,64(sp) - c003fe0e: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28821 + c003ffdc: e0aa sd a0,64(sp) + c003ffde: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28829 resolve_funcs[1] = JS_NewCFunctionData(ctx, js_async_module_execution_rejected, 0, 0, 1, (JSValueConst *)&m_obj); - c003fe10: 4705 li a4,1 - c003fe12: 4681 li a3,0 - c003fe14: 4601 li a2,0 - c003fe16: ffffc597 auipc a1,0xffffc - c003fe1a: e5458593 addi a1,a1,-428 # c003bc6a - c003fe1e: 8522 mv a0,s0 - c003fe20: bd6e90ef jal ra,c00291f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28822 + c003ffe0: 4705 li a4,1 + c003ffe2: 4681 li a3,0 + c003ffe4: 4601 li a2,0 + c003ffe6: ffffc597 auipc a1,0xffffc + c003ffea: e5458593 addi a1,a1,-428 # c003be3a + c003ffee: 8522 mv a0,s0 + c003fff0: bd6e90ef jal ra,c00293c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28830 ret_val = js_promise_then(ctx, promise, 2, (JSValueConst *)resolve_funcs); - c003fe24: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28821 + c003fff4: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28829 resolve_funcs[1] = JS_NewCFunctionData(ctx, js_async_module_execution_rejected, 0, 0, 1, (JSValueConst *)&m_obj); - c003fe26: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28822 + c003fff6: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28830 ret_val = js_promise_then(ctx, promise, 2, (JSValueConst *)resolve_funcs); - c003fe28: 6582 ld a1,0(sp) - c003fe2a: 0098 addi a4,sp,64 - c003fe2c: 4689 li a3,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28821 + c003fff8: 6582 ld a1,0(sp) + c003fffa: 0098 addi a4,sp,64 + c003fffc: 4689 li a3,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28829 resolve_funcs[1] = JS_NewCFunctionData(ctx, js_async_module_execution_rejected, 0, 0, 1, (JSValueConst *)&m_obj); - c003fe2e: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28822 + c003fffe: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28830 ret_val = js_promise_then(ctx, promise, 2, (JSValueConst *)resolve_funcs); - c003fe30: 8522 mv a0,s0 - c003fe32: feafa0ef jal ra,c003a61c - c003fe36: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28823 + c0040000: 8522 mv a0,s0 + c0040002: feafa0ef jal ra,c003a7ec + c0040006: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28831 JS_FreeValue(ctx, ret_val); - c003fe38: 85aa mv a1,a0 - c003fe3a: 8522 mv a0,s0 - c003fe3c: cfdc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28824 + c0040008: 85aa mv a1,a0 + c004000a: 8522 mv a0,s0 + c004000c: c1bc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28832 JS_FreeValue(ctx, m_obj); - c003fe40: 65c2 ld a1,16(sp) - c003fe42: 6662 ld a2,24(sp) - c003fe44: 8522 mv a0,s0 - c003fe46: cf3c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28825 + c0040010: 65c2 ld a1,16(sp) + c0040012: 6662 ld a2,24(sp) + c0040014: 8522 mv a0,s0 + c0040016: c11c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28833 JS_FreeValue(ctx, resolve_funcs[0]); - c003fe4a: 6586 ld a1,64(sp) - c003fe4c: 6626 ld a2,72(sp) - c003fe4e: 8522 mv a0,s0 - c003fe50: ce9c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28826 + c004001a: 6586 ld a1,64(sp) + c004001c: 6626 ld a2,72(sp) + c004001e: 8522 mv a0,s0 + c0040020: c07c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28834 JS_FreeValue(ctx, resolve_funcs[1]); - c003fe54: 65c6 ld a1,80(sp) - c003fe56: 6666 ld a2,88(sp) - c003fe58: 8522 mv a0,s0 - c003fe5a: cdfc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28827 + c0040024: 65c6 ld a1,80(sp) + c0040026: 6666 ld a2,88(sp) + c0040028: 8522 mv a0,s0 + c004002a: bfdc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28835 JS_FreeValue(ctx, promise); - c003fe5e: 6582 ld a1,0(sp) - c003fe60: 6622 ld a2,8(sp) - c003fe62: 8522 mv a0,s0 - c003fe64: cd5c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28829 + c004002e: 6582 ld a1,0(sp) + c0040030: 6622 ld a2,8(sp) + c0040032: 8522 mv a0,s0 + c0040034: bf3c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28837 } - c003fe68: 70e6 ld ra,120(sp) - c003fe6a: 7446 ld s0,112(sp) - c003fe6c: 74a6 ld s1,104(sp) - c003fe6e: 6109 addi sp,sp,128 - c003fe70: 8082 ret + c0040038: 70e6 ld ra,120(sp) + c004003a: 7446 ld s0,112(sp) + c004003c: 74a6 ld s1,104(sp) + c004003e: 6109 addi sp,sp,128 + c0040040: 8082 ret -00000000c003fe72 : +00000000c0040042 : js_async_module_execution_fulfilled(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28760 -{ - c003fe72: 7175 addi sp,sp,-144 - c003fe74: e506 sd ra,136(sp) - c003fe76: e122 sd s0,128(sp) - c003fe78: fca6 sd s1,120(sp) - c003fe7a: f8ca sd s2,112(sp) - c003fe7c: f4ce sd s3,104(sp) - c003fe7e: e82e sd a1,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28768 +{ + c0040042: 7175 addi sp,sp,-144 + c0040044: e506 sd ra,136(sp) + c0040046: e122 sd s0,128(sp) + c0040048: fca6 sd s1,120(sp) + c004004a: f8ca sd s2,112(sp) + c004004c: f4ce sd s3,104(sp) + c004004e: e82e sd a1,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28769 JSModuleDef *module = JS_VALUE_GET_PTR(func_data[0]); - c003fe80: 00083583 ld a1,0(a6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28760 + c0040050: 00083583 ld a1,0(a6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28768 { - c003fe84: ec32 sd a2,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28765 + c0040054: ec32 sd a2,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28773 if (module->status == JS_MODULE_STATUS_EVALUATED) { - c003fe86: 4715 li a4,5 - c003fe88: 0835c783 lbu a5,131(a1) - c003fe8c: 00e79f63 bne a5,a4,c003feaa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28766 + c0040056: 4715 li a4,5 + c0040058: 0835c783 lbu a5,131(a1) + c004005c: 00e79f63 bne a5,a4,c004007a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28774 assert(module->eval_has_exception); - c003fe90: 0f05c783 lbu a5,240(a1) - c003fe94: e7dd bnez a5,c003ff42 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28766 (discriminator 1) - c003fe96: 659d lui a1,0x7 - c003fe98: 4601 li a2,0 - c003fe9a: 05e58593 addi a1,a1,94 # 705e <__clzdi2-0xbfff8fa2> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28769 (discriminator 1) + c0040060: 0f05c783 lbu a5,240(a1) + c0040064: e7dd bnez a5,c0040112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28774 (discriminator 1) + c0040066: 659d lui a1,0x7 + c0040068: 4601 li a2,0 + c004006a: 06658593 addi a1,a1,102 # 7066 <__clzdi2-0xbfff8f9a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28777 (discriminator 1) assert(module->status == JS_MODULE_STATUS_EVALUATING_ASYNC); - c003fe9e: 0001d517 auipc a0,0x1d - c003fea2: bda50513 addi a0,a0,-1062 # c005ca78 - c003fea6: 373130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28769 - c003feaa: 4711 li a4,4 - c003feac: 00e78763 beq a5,a4,c003feba -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28769 (discriminator 1) - c003feb0: 659d lui a1,0x7 - c003feb2: 4601 li a2,0 - c003feb4: 06158593 addi a1,a1,97 # 7061 <__clzdi2-0xbfff8f9f> - c003feb8: b7dd j c003fe9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28770 (discriminator 2) + c004006e: 0001d517 auipc a0,0x1d + c0040072: bda50513 addi a0,a0,-1062 # c005cc48 + c0040076: 373130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28777 + c004007a: 4711 li a4,4 + c004007c: 00e78763 beq a5,a4,c004008a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28777 (discriminator 1) + c0040080: 659d lui a1,0x7 + c0040082: 4601 li a2,0 + c0040084: 06958593 addi a1,a1,105 # 7069 <__clzdi2-0xbfff8f97> + c0040088: b7dd j c004006e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28778 (discriminator 2) assert(!module->eval_has_exception); - c003feba: 0f05c783 lbu a5,240(a1) - c003febe: c791 beqz a5,c003feca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28770 (discriminator 1) - c003fec0: 659d lui a1,0x7 - c003fec2: 4601 li a2,0 - c003fec4: 06258593 addi a1,a1,98 # 7062 <__clzdi2-0xbfff8f9e> - c003fec8: bfd9 j c003fe9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28771 (discriminator 2) + c004008a: 0f05c783 lbu a5,240(a1) + c004008e: c791 beqz a5,c004009a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28778 (discriminator 1) + c0040090: 659d lui a1,0x7 + c0040092: 4601 li a2,0 + c0040094: 06a58593 addi a1,a1,106 # 706a <__clzdi2-0xbfff8f96> + c0040098: bfd9 j c004006e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28779 (discriminator 2) assert(module->async_evaluation); - c003feca: 0ac5a783 lw a5,172(a1) - c003fece: e791 bnez a5,c003feda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28771 (discriminator 1) - c003fed0: 659d lui a1,0x7 - c003fed2: 4601 li a2,0 - c003fed4: 06358593 addi a1,a1,99 # 7063 <__clzdi2-0xbfff8f9d> - c003fed8: b7d9 j c003fe9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28772 (discriminator 2) + c004009a: 0ac5a783 lw a5,172(a1) + c004009e: e791 bnez a5,c00400aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28779 (discriminator 1) + c00400a0: 659d lui a1,0x7 + c00400a2: 4601 li a2,0 + c00400a4: 06b58593 addi a1,a1,107 # 706b <__clzdi2-0xbfff8f95> + c00400a8: b7d9 j c004006e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28780 (discriminator 2) module->async_evaluation = FALSE; - c003feda: 0a05a623 sw zero,172(a1) - c003fede: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28773 (discriminator 2) + c00400aa: 0a05a623 sw zero,172(a1) + c00400ae: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28781 (discriminator 2) js_set_module_evaluated(ctx, module); - c003fee0: e42e sd a1,8(sp) - c003fee2: ea7fb0ef jal ra,c003bd88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28779 (discriminator 2) + c00400b0: e42e sd a1,8(sp) + c00400b2: ea7fb0ef jal ra,c003bf58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28787 (discriminator 2) if (gather_available_ancestors(ctx, module, exec_list) < 0) { - c003fee6: 65a2 ld a1,8(sp) - c003fee8: 1010 addi a2,sp,32 - c003feea: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28775 (discriminator 2) + c00400b6: 65a2 ld a1,8(sp) + c00400b8: 1010 addi a2,sp,32 + c00400ba: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28783 (discriminator 2) exec_list->tab = NULL; - c003feec: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28776 (discriminator 2) + c00400bc: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28784 (discriminator 2) exec_list->count = 0; - c003feee: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28779 (discriminator 2) + c00400be: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28787 (discriminator 2) if (gather_available_ancestors(ctx, module, exec_list) < 0) { - c003fef0: b13d70ef jal ra,c0017a02 - c003fef4: 7782 ld a5,32(sp) - c003fef6: 02055263 bgez a0,c003ff1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28780 + c00400c0: b13d70ef jal ra,c0017bd2 + c00400c4: 7782 ld a5,32(sp) + c00400c6: 02055263 bgez a0,c00400ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28788 js_free(ctx, exec_list->tab); - c003fefa: 85be mv a1,a5 - c003fefc: 8522 mv a0,s0 - c003fefe: f3dc60ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28781 + c00400ca: 85be mv a1,a5 + c00400cc: 8522 mv a0,s0 + c00400ce: e5bc60ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28789 return JS_EXCEPTION; - c003ff02: 4799 li a5,6 - c003ff04: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28810 + c00400d2: 4799 li a5,6 + c00400d4: e882 sd zero,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28818 } - c003ff06: 60aa ld ra,136(sp) - c003ff08: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28809 + c00400d6: 60aa ld ra,136(sp) + c00400d8: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28817 return JS_UNDEFINED; - c003ff0a: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28810 -} - c003ff0c: 6546 ld a0,80(sp) - c003ff0e: 65e6 ld a1,88(sp) - c003ff10: 74e6 ld s1,120(sp) - c003ff12: 7946 ld s2,112(sp) - c003ff14: 79a6 ld s3,104(sp) - c003ff16: 6149 addi sp,sp,144 - c003ff18: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28785 + c00400da: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28818 +} + c00400dc: 6546 ld a0,80(sp) + c00400de: 65e6 ld a1,88(sp) + c00400e0: 74e6 ld s1,120(sp) + c00400e2: 7946 ld s2,112(sp) + c00400e4: 79a6 ld s3,104(sp) + c00400e6: 6149 addi sp,sp,144 + c00400e8: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28793 rqsort(exec_list->tab, exec_list->count, sizeof(exec_list->tab[0]), - c003ff1a: 55a2 lw a1,40(sp) - c003ff1c: 4701 li a4,0 - c003ff1e: fffc4697 auipc a3,0xfffc4 - c003ff22: 59e68693 addi a3,a3,1438 # c00044bc - c003ff26: 4621 li a2,8 - c003ff28: 853e mv a0,a5 - c003ff2a: 086080ef jal ra,c0047fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28788 + c00400ea: 55a2 lw a1,40(sp) + c00400ec: 4701 li a4,0 + c00400ee: fffc4697 auipc a3,0xfffc4 + c00400f2: 3ce68693 addi a3,a3,974 # c00044bc + c00400f6: 4621 li a2,8 + c00400f8: 853e mv a0,a5 + c00400fa: 086080ef jal ra,c0048180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28796 for(i = 0; i < exec_list->count; i++) { - c003ff2e: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28790 - if (m->status == JS_MODULE_STATUS_EVALUATED) { - c003ff30: 4915 li s2,5 + c00400fe: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28798 + if (m->status == JS_MODULE_STATUS_EVALUATED) { + c0040100: 4915 li s2,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28806 js_async_module_execution_rejected(ctx, JS_UNDEFINED, - c003ff32: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28788 (discriminator 1) + c0040102: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28796 (discriminator 1) for(i = 0; i < exec_list->count; i++) { - c003ff34: 57a2 lw a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28789 (discriminator 1) + c0040104: 57a2 lw a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28797 (discriminator 1) JSModuleDef *m = exec_list->tab[i]; - c003ff36: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28788 (discriminator 1) + c0040106: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28796 (discriminator 1) for(i = 0; i < exec_list->count; i++) { - c003ff38: 00f4c863 blt s1,a5,c003ff48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28808 + c0040108: 00f4c863 blt s1,a5,c0040118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28816 js_free(ctx, exec_list->tab); - c003ff3c: 8522 mv a0,s0 - c003ff3e: efdc60ef jal ra,c0006e3a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28809 + c004010c: 8522 mv a0,s0 + c004010e: e1bc60ef jal ra,c0006f28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28817 return JS_UNDEFINED; - c003ff42: e882 sd zero,80(sp) - c003ff44: 478d li a5,3 - c003ff46: b7c1 j c003ff06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28789 + c0040112: e882 sd zero,80(sp) + c0040114: 478d li a5,3 + c0040116: b7c1 j c00400d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28797 JSModuleDef *m = exec_list->tab[i]; - c003ff48: 00349793 slli a5,s1,0x3 - c003ff4c: 95be add a1,a1,a5 - c003ff4e: 618c ld a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28790 + c0040118: 00349793 slli a5,s1,0x3 + c004011c: 95be add a1,a1,a5 + c004011e: 618c ld a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28798 if (m->status == JS_MODULE_STATUS_EVALUATED) { - c003ff50: 0835c783 lbu a5,131(a1) - c003ff54: 01279a63 bne a5,s2,c003ff68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28791 + c0040120: 0835c783 lbu a5,131(a1) + c0040124: 01279a63 bne a5,s2,c0040138 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28799 assert(m->eval_has_exception); - c003ff58: 0f05c783 lbu a5,240(a1) - c003ff5c: ef81 bnez a5,c003ff74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28791 (discriminator 1) - c003ff5e: 659d lui a1,0x7 - c003ff60: 4601 li a2,0 - c003ff62: 07758593 addi a1,a1,119 # 7077 <__clzdi2-0xbfff8f89> - c003ff66: bf25 j c003fe9e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28792 + c0040128: 0f05c783 lbu a5,240(a1) + c004012c: ef81 bnez a5,c0040144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28799 (discriminator 1) + c004012e: 659d lui a1,0x7 + c0040130: 4601 li a2,0 + c0040132: 07f58593 addi a1,a1,127 # 707f <__clzdi2-0xbfff8f81> + c0040136: bf25 j c004006e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28800 } else if (m->has_tla) { - c003ff68: 0805c783 lbu a5,128(a1) - c003ff6c: c791 beqz a5,c003ff78 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28793 + c0040138: 0805c783 lbu a5,128(a1) + c004013c: c791 beqz a5,c0040148 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28801 js_execute_async_module(ctx, m); - c003ff6e: 8522 mv a0,s0 - c003ff70: e4dff0ef jal ra,c003fdbc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28788 (discriminator 2) + c004013e: 8522 mv a0,s0 + c0040140: e4dff0ef jal ra,c003ff8c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28796 (discriminator 2) for(i = 0; i < exec_list->count; i++) { - c003ff74: 2485 addiw s1,s1,1 - c003ff76: bf7d j c003ff34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28796 + c0040144: 2485 addiw s1,s1,1 + c0040146: bf7d j c0040104 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28804 if (js_execute_sync_module(ctx, m, &error) < 0) { - c003ff78: 1810 addi a2,sp,48 - c003ff7a: 8522 mv a0,s0 - c003ff7c: e42e sd a1,8(sp) - c003ff7e: d8bff0ef jal ra,c003fd08 - c003ff82: 65a2 ld a1,8(sp) - c003ff84: 02055e63 bgez a0,c003ffc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28797 + c0040148: 1810 addi a2,sp,48 + c004014a: 8522 mv a0,s0 + c004014c: e42e sd a1,8(sp) + c004014e: d8bff0ef jal ra,c003fed8 + c0040152: 65a2 ld a1,8(sp) + c0040154: 02055e63 bgez a0,c0040190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28805 JSValue m_obj = JS_NewModuleValue(ctx, m); - c003ff88: 8522 mv a0,s0 - c003ff8a: 817c60ef jal ra,c00067a0 - c003ff8e: e0aa sd a0,64(sp) - c003ff90: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28798 + c0040158: 8522 mv a0,s0 + c004015a: f34c60ef jal ra,c000688e + c004015e: e0aa sd a0,64(sp) + c0040160: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28806 js_async_module_execution_rejected(ctx, JS_UNDEFINED, - c003ff92: 04010813 addi a6,sp,64 - c003ff96: 4781 li a5,0 - c003ff98: 1818 addi a4,sp,48 - c003ff9a: 4685 li a3,1 - c003ff9c: 460d li a2,3 - c003ff9e: 8522 mv a0,s0 - c003ffa0: 4581 li a1,0 - c003ffa2: e882 sd zero,80(sp) - c003ffa4: ecce sd s3,88(sp) - c003ffa6: cc5fb0ef jal ra,c003bc6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28801 + c0040162: 04010813 addi a6,sp,64 + c0040166: 4781 li a5,0 + c0040168: 1818 addi a4,sp,48 + c004016a: 4685 li a3,1 + c004016c: 460d li a2,3 + c004016e: 8522 mv a0,s0 + c0040170: 4581 li a1,0 + c0040172: e882 sd zero,80(sp) + c0040174: ecce sd s3,88(sp) + c0040176: cc5fb0ef jal ra,c003be3a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28809 JS_FreeValue(ctx, m_obj); - c003ffaa: 6586 ld a1,64(sp) - c003ffac: 6626 ld a2,72(sp) - c003ffae: 8522 mv a0,s0 - c003ffb0: b89c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28802 + c004017a: 6586 ld a1,64(sp) + c004017c: 6626 ld a2,72(sp) + c004017e: 8522 mv a0,s0 + c0040180: aa7c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28810 JS_FreeValue(ctx, error); - c003ffb4: 75c2 ld a1,48(sp) - c003ffb6: 7662 ld a2,56(sp) - c003ffb8: 8522 mv a0,s0 - c003ffba: b7fc70ef jal ra,c0007b38 - c003ffbe: bf5d j c003ff74 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28804 + c0040184: 75c2 ld a1,48(sp) + c0040186: 7662 ld a2,56(sp) + c0040188: 8522 mv a0,s0 + c004018a: a9dc70ef jal ra,c0007c26 + c004018e: bf5d j c0040144 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28812 js_set_module_evaluated(ctx, m); - c003ffc0: 8522 mv a0,s0 - c003ffc2: dc7fb0ef jal ra,c003bd88 - c003ffc6: b77d j c003ff74 + c0040190: 8522 mv a0,s0 + c0040192: dc7fb0ef jal ra,c003bf58 + c0040196: b77d j c0040144 -00000000c003ffc8 : +00000000c0040198 : js_inner_module_evaluation(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28870 -{ - c003ffc8: 711d addi sp,sp,-96 - c003ffca: e8a2 sd s0,80(sp) - c003ffcc: e4a6 sd s1,72(sp) - c003ffce: e0ca sd s2,64(sp) - c003ffd0: f456 sd s5,40(sp) - c003ffd2: ec86 sd ra,88(sp) - c003ffd4: fc4e sd s3,56(sp) - c003ffd6: f852 sd s4,48(sp) - c003ffd8: f05a sd s6,32(sp) - c003ffda: ec5e sd s7,24(sp) - c003ffdc: e862 sd s8,16(sp) - c003ffde: e466 sd s9,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28887 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28878 +{ + c0040198: 711d addi sp,sp,-96 + c004019a: e8a2 sd s0,80(sp) + c004019c: e4a6 sd s1,72(sp) + c004019e: e0ca sd s2,64(sp) + c00401a0: f456 sd s5,40(sp) + c00401a2: ec86 sd ra,88(sp) + c00401a4: fc4e sd s3,56(sp) + c00401a6: f852 sd s4,48(sp) + c00401a8: f05a sd s6,32(sp) + c00401aa: ec5e sd s7,24(sp) + c00401ac: e862 sd s8,16(sp) + c00401ae: e466 sd s9,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28895 if (m->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c003ffe0: 0835c783 lbu a5,131(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28870 + c00401b0: 0835c783 lbu a5,131(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28878 { - c003ffe4: 893a mv s2,a4 - c003ffe6: 8ab6 mv s5,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28887 + c00401b4: 893a mv s2,a4 + c00401b6: 8ab6 mv s5,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28895 if (m->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c003ffe8: ffc7871b addiw a4,a5,-4 - c003ffec: 0ff77713 zext.b a4,a4 - c003fff0: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28870 -{ - c003fff2: 842e mv s0,a1 - c003fff4: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28887 + c00401b8: ffc7871b addiw a4,a5,-4 + c00401bc: 0ff77713 zext.b a4,a4 + c00401c0: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28878 +{ + c00401c2: 842e mv s0,a1 + c00401c4: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28895 if (m->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c003fff6: 02e6e063 bltu a3,a4,c0040016 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28889 + c00401c6: 02e6e063 bltu a3,a4,c00401e6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28897 if (m->eval_has_exception) { - c003fffa: 0f05c783 lbu a5,240(a1) - c003fffe: 20078763 beqz a5,c004020c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28890 + c00401ca: 0f05c783 lbu a5,240(a1) + c00401ce: 20078763 beqz a5,c00403dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28898 *pvalue = JS_DupValue(ctx, m->eval_exception); - c0040002: 7de8 ld a0,248(a1) - c0040004: 1005b583 ld a1,256(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28929 + c00401d2: 7de8 ld a0,248(a1) + c00401d4: 1005b583 ld a1,256(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28937 *pvalue = JS_DupValue(ctx, m1->eval_exception); - c0040008: e66c60ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28936 + c00401d8: d84c60ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28944 *pvalue = JS_GetException(ctx); - c004000c: 00a93023 sd a0,0(s2) - c0040010: 00b93423 sd a1,8(s2) - c0040014: a851 j c00400a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28897 + c00401dc: 00a93023 sd a0,0(s2) + c00401e0: 00b93423 sd a1,8(s2) + c00401e4: a851 j c0040278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28905 if (m->status == JS_MODULE_STATUS_EVALUATING) { - c0040016: 470d li a4,3 - c0040018: 00e79763 bne a5,a4,c0040026 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28898 + c00401e6: 470d li a4,3 + c00401e8: 00e79763 bne a5,a4,c00401f6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28906 *pvalue = JS_UNDEFINED; - c004001c: 00093023 sd zero,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28976 + c00401ec: 00093023 sd zero,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28984 *pvalue = JS_UNDEFINED; - c0040020: 00f93423 sd a5,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28977 + c00401f0: 00f93423 sd a5,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28985 return index; - c0040024: a059 j c00400aa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28901 + c00401f4: a059 j c004027a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28909 assert(m->status == JS_MODULE_STATUS_LINKED); - c0040026: 4689 li a3,2 - c0040028: 00d78c63 beq a5,a3,c0040040 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28901 (discriminator 1) - c004002c: 659d lui a1,0x7 - c004002e: 4601 li a2,0 - c0040030: 0e558593 addi a1,a1,229 # 70e5 <__clzdi2-0xbfff8f1b> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28918 (discriminator 1) + c00401f6: 4689 li a3,2 + c00401f8: 00d78c63 beq a5,a3,c0040210 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28909 (discriminator 1) + c00401fc: 659d lui a1,0x7 + c00401fe: 4601 li a2,0 + c0040200: 0ed58593 addi a1,a1,237 # 70ed <__clzdi2-0xbfff8f13> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 (discriminator 1) assert(m1->status == JS_MODULE_STATUS_EVALUATING || - c0040034: 0001d517 auipc a0,0x1d - c0040038: a4450513 addi a0,a0,-1468 # c005ca78 - c004003c: 1dd130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28903 (discriminator 2) + c0040204: 0001d517 auipc a0,0x1d + c0040208: a4450513 addi a0,a0,-1468 # c005cc48 + c004020c: 1dd130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28911 (discriminator 2) m->status = JS_MODULE_STATUS_EVALUATING; - c0040040: 08e581a3 sb a4,131(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28904 (discriminator 2) + c0040210: 08e581a3 sb a4,131(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28912 (discriminator 2) m->dfs_index = index; - c0040044: 08c42223 sw a2,132(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28905 (discriminator 2) + c0040214: 08c42223 sw a2,132(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28913 (discriminator 2) m->dfs_ancestor_index = index; - c0040048: 08c42423 sw a2,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28906 (discriminator 2) + c0040218: 08c42423 sw a2,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28914 (discriminator 2) m->pending_async_dependencies = 0; - c004004c: 0a05a423 sw zero,168(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28909 (discriminator 2) + c004021c: 0a05a423 sw zero,168(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28917 (discriminator 2) m->stack_prev = *pstack_top; - c0040050: 000ab783 ld a5,0(s5) - c0040054: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28907 (discriminator 2) + c0040220: 000ab783 ld a5,0(s5) + c0040224: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28915 (discriminator 2) index++; - c0040056: 0016049b addiw s1,a2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28909 (discriminator 2) + c0040226: 0016049b addiw s1,a2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28917 (discriminator 2) m->stack_prev = *pstack_top; - c004005a: e9dc sd a5,144(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28910 (discriminator 2) + c004022a: e9dc sd a5,144(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28918 (discriminator 2) *pstack_top = m; - c004005c: 00bab023 sd a1,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28912 (discriminator 2) + c004022c: 00bab023 sd a1,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28920 (discriminator 2) for(i = 0; i < m->req_module_entries_count; i++) { - c0040060: 4c81 li s9,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28918 (discriminator 2) + c0040230: 4c81 li s9,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 (discriminator 2) assert(m1->status == JS_MODULE_STATUS_EVALUATING || - c0040062: 4b09 li s6,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28921 (discriminator 2) + c0040232: 4b09 li s6,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28929 (discriminator 2) if (m1->status == JS_MODULE_STATUS_EVALUATING) { - c0040064: 4b8d li s7,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 (discriminator 2) + c0040234: 4b8d li s7,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28934 (discriminator 2) assert(m1->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c0040066: 4c05 li s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28912 (discriminator 1) + c0040236: 4c05 li s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28920 (discriminator 1) for(i = 0; i < m->req_module_entries_count; i++) { - c0040068: 501c lw a5,32(s0) - c004006a: 00fccf63 blt s9,a5,c0040088 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28943 + c0040238: 501c lw a5,32(s0) + c004023a: 00fccf63 blt s9,a5,c0040258 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28951 if (m->pending_async_dependencies > 0) { - c004006e: 0a842783 lw a5,168(s0) - c0040072: 12f05863 blez a5,c00401a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28944 + c004023e: 0a842783 lw a5,168(s0) + c0040242: 12f05863 blez a5,c0040372 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28952 assert(!m->async_evaluation); - c0040076: 0ac42783 lw a5,172(s0) - c004007a: 0e078d63 beqz a5,c0040174 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28944 (discriminator 1) - c004007e: 659d lui a1,0x7 - c0040080: 4601 li a2,0 - c0040082: 11058593 addi a1,a1,272 # 7110 <__clzdi2-0xbfff8ef0> - c0040086: b77d j c0040034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28914 + c0040246: 0ac42783 lw a5,172(s0) + c004024a: 0e078d63 beqz a5,c0040344 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28952 (discriminator 1) + c004024e: 659d lui a1,0x7 + c0040250: 4601 li a2,0 + c0040252: 11858593 addi a1,a1,280 # 7118 <__clzdi2-0xbfff8ee8> + c0040256: b77d j c0040204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28922 m1 = rme->module; - c0040088: 6c1c ld a5,24(s0) - c004008a: 004c9713 slli a4,s9,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28915 + c0040258: 6c1c ld a5,24(s0) + c004025a: 004c9713 slli a4,s9,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28923 index = js_inner_module_evaluation(ctx, m1, index, pstack_top, pvalue); - c004008e: 8626 mv a2,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28914 + c004025e: 8626 mv a2,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28922 m1 = rme->module; - c0040090: 97ba add a5,a5,a4 - c0040092: 0087b983 ld s3,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28915 + c0040260: 97ba add a5,a5,a4 + c0040262: 0087b983 ld s3,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28923 index = js_inner_module_evaluation(ctx, m1, index, pstack_top, pvalue); - c0040096: 874a mv a4,s2 - c0040098: 86d6 mv a3,s5 - c004009a: 85ce mv a1,s3 - c004009c: 8552 mv a0,s4 - c004009e: f2bff0ef jal ra,c003ffc8 - c00400a2: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28916 + c0040266: 874a mv a4,s2 + c0040268: 86d6 mv a3,s5 + c004026a: 85ce mv a1,s3 + c004026c: 8552 mv a0,s4 + c004026e: f2bff0ef jal ra,c0040198 + c0040272: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28924 if (index < 0) - c00400a4: 02055163 bgez a0,c00400c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28937 + c0040274: 02055163 bgez a0,c0040296 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28945 return -1; - c00400a8: 54fd li s1,-1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28978 (discriminator 1) -} - c00400aa: 60e6 ld ra,88(sp) - c00400ac: 6446 ld s0,80(sp) - c00400ae: 6906 ld s2,64(sp) - c00400b0: 79e2 ld s3,56(sp) - c00400b2: 7a42 ld s4,48(sp) - c00400b4: 7aa2 ld s5,40(sp) - c00400b6: 7b02 ld s6,32(sp) - c00400b8: 6be2 ld s7,24(sp) - c00400ba: 6c42 ld s8,16(sp) - c00400bc: 6ca2 ld s9,8(sp) - c00400be: 8526 mv a0,s1 - c00400c0: 64a6 ld s1,72(sp) - c00400c2: 6125 addi sp,sp,96 - c00400c4: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28918 + c0040278: 54fd li s1,-1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28986 (discriminator 1) +} + c004027a: 60e6 ld ra,88(sp) + c004027c: 6446 ld s0,80(sp) + c004027e: 6906 ld s2,64(sp) + c0040280: 79e2 ld s3,56(sp) + c0040282: 7a42 ld s4,48(sp) + c0040284: 7aa2 ld s5,40(sp) + c0040286: 7b02 ld s6,32(sp) + c0040288: 6be2 ld s7,24(sp) + c004028a: 6c42 ld s8,16(sp) + c004028c: 6ca2 ld s9,8(sp) + c004028e: 8526 mv a0,s1 + c0040290: 64a6 ld s1,72(sp) + c0040292: 6125 addi sp,sp,96 + c0040294: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 assert(m1->status == JS_MODULE_STATUS_EVALUATING || - c00400c6: 0839c703 lbu a4,131(s3) - c00400ca: ffd7079b addiw a5,a4,-3 - c00400ce: 0ff7f793 zext.b a5,a5 - c00400d2: 00fb7763 bgeu s6,a5,c00400e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28918 (discriminator 1) - c00400d6: 659d lui a1,0x7 - c00400d8: 4601 li a2,0 - c00400da: 0f658593 addi a1,a1,246 # 70f6 <__clzdi2-0xbfff8f0a> - c00400de: bf99 j c0040034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28921 (discriminator 2) + c0040296: 0839c703 lbu a4,131(s3) + c004029a: ffd7079b addiw a5,a4,-3 + c004029e: 0ff7f793 zext.b a5,a5 + c00402a2: 00fb7763 bgeu s6,a5,c00402b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 (discriminator 1) + c00402a6: 659d lui a1,0x7 + c00402a8: 4601 li a2,0 + c00402aa: 0fe58593 addi a1,a1,254 # 70fe <__clzdi2-0xbfff8f02> + c00402ae: bf99 j c0040204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28929 (discriminator 2) if (m1->status == JS_MODULE_STATUS_EVALUATING) { - c00400e0: 05771763 bne a4,s7,c004012e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28922 + c00402b0: 05771763 bne a4,s7,c00402fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28930 m->dfs_ancestor_index = min_int(m->dfs_ancestor_index, - c00400e4: 0889a703 lw a4,136(s3) - c00400e8: 08842783 lw a5,136(s0) - c00400ec: 0007069b sext.w a3,a4 - c00400f0: 0007861b sext.w a2,a5 - c00400f4: 00c6d363 bge a3,a2,c00400fa - c00400f8: 87ba mv a5,a4 - c00400fa: 08f42423 sw a5,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28933 + c00402b4: 0889a703 lw a4,136(s3) + c00402b8: 08842783 lw a5,136(s0) + c00402bc: 0007069b sext.w a3,a4 + c00402c0: 0007861b sext.w a2,a5 + c00402c4: 00c6d363 bge a3,a2,c00402ca + c00402c8: 87ba mv a5,a4 + c00402ca: 08f42423 sw a5,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28941 if (m1->async_evaluation) { - c00400fe: 0ac9a783 lw a5,172(s3) - c0040102: c7bd beqz a5,c0040170 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28934 + c00402ce: 0ac9a783 lw a5,172(s3) + c00402d2: c7bd beqz a5,c0040340 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28942 m->pending_async_dependencies++; - c0040104: 0a842783 lw a5,168(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28935 + c00402d4: 0a842783 lw a5,168(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28943 if (js_resize_array(ctx, (void **)&m1->async_parent_modules, sizeof(m1->async_parent_modules[0]), &m1->async_parent_modules_size, m1->async_parent_modules_count + 1)) { - c0040108: 0a498693 addi a3,s3,164 - c004010c: 4621 li a2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28934 + c00402d8: 0a498693 addi a3,s3,164 + c00402dc: 4621 li a2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28942 m->pending_async_dependencies++; - c004010e: 2785 addiw a5,a5,1 - c0040110: 0af42423 sw a5,168(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28935 + c00402de: 2785 addiw a5,a5,1 + c00402e0: 0af42423 sw a5,168(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28943 if (js_resize_array(ctx, (void **)&m1->async_parent_modules, sizeof(m1->async_parent_modules[0]), &m1->async_parent_modules_size, m1->async_parent_modules_count + 1)) { - c0040114: 0a09a703 lw a4,160(s3) - c0040118: 09898593 addi a1,s3,152 - c004011c: 8552 mv a0,s4 - c004011e: 2705 addiw a4,a4,1 - c0040120: df0d70ef jal ra,c0017710 - c0040124: c91d beqz a0,c004015a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28936 + c00402e4: 0a09a703 lw a4,160(s3) + c00402e8: 09898593 addi a1,s3,152 + c00402ec: 8552 mv a0,s4 + c00402ee: 2705 addiw a4,a4,1 + c00402f0: df0d70ef jal ra,c00178e0 + c00402f4: c91d beqz a0,c004032a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28944 *pvalue = JS_GetException(ctx); - c0040126: 8552 mv a0,s4 - c0040128: da0ca0ef jal ra,c000a6c8 - c004012c: b5c5 j c004000c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28925 + c00402f6: 8552 mv a0,s4 + c00402f8: cbeca0ef jal ra,c000a7b6 + c00402fc: b5c5 j c00401dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28933 m1 = m1->cycle_root; - c004012e: 0b89b983 ld s3,184(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 + c00402fe: 0b89b983 ld s3,184(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28934 assert(m1->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c0040132: 0839c783 lbu a5,131(s3) - c0040136: 37f1 addiw a5,a5,-4 - c0040138: 0ff7f793 zext.b a5,a5 - c004013c: 00fc7763 bgeu s8,a5,c004014a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28926 (discriminator 1) - c0040140: 659d lui a1,0x7 - c0040142: 4601 li a2,0 - c0040144: 0fe58593 addi a1,a1,254 # 70fe <__clzdi2-0xbfff8f02> - c0040148: b5f5 j c0040034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28928 (discriminator 2) + c0040302: 0839c783 lbu a5,131(s3) + c0040306: 37f1 addiw a5,a5,-4 + c0040308: 0ff7f793 zext.b a5,a5 + c004030c: 00fc7763 bgeu s8,a5,c004031a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28934 (discriminator 1) + c0040310: 659d lui a1,0x7 + c0040312: 4601 li a2,0 + c0040314: 10658593 addi a1,a1,262 # 7106 <__clzdi2-0xbfff8efa> + c0040318: b5f5 j c0040204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28936 (discriminator 2) if (m1->eval_has_exception) { - c004014a: 0f09c783 lbu a5,240(s3) - c004014e: dbc5 beqz a5,c00400fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28929 + c004031a: 0f09c783 lbu a5,240(s3) + c004031e: dbc5 beqz a5,c00402ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28937 *pvalue = JS_DupValue(ctx, m1->eval_exception); - c0040150: 0f89b503 ld a0,248(s3) - c0040154: 1009b583 ld a1,256(s3) - c0040158: bd45 j c0040008 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28939 + c0040320: 0f89b503 ld a0,248(s3) + c0040324: 1009b583 ld a1,256(s3) + c0040328: bd45 j c00401d8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28947 m1->async_parent_modules[m1->async_parent_modules_count++] = m; - c004015a: 0a09a783 lw a5,160(s3) - c004015e: 0989b703 ld a4,152(s3) - c0040162: 0017869b addiw a3,a5,1 - c0040166: 078e slli a5,a5,0x3 - c0040168: 0ad9a023 sw a3,160(s3) - c004016c: 97ba add a5,a5,a4 - c004016e: e380 sd s0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28912 (discriminator 2) + c004032a: 0a09a783 lw a5,160(s3) + c004032e: 0989b703 ld a4,152(s3) + c0040332: 0017869b addiw a3,a5,1 + c0040336: 078e slli a5,a5,0x3 + c0040338: 0ad9a023 sw a3,160(s3) + c004033c: 97ba add a5,a5,a4 + c004033e: e380 sd s0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28920 (discriminator 2) for(i = 0; i < m->req_module_entries_count; i++) { - c0040170: 2c85 addiw s9,s9,1 - c0040172: bddd j c0040068 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28945 (discriminator 2) + c0040340: 2c85 addiw s9,s9,1 + c0040342: bddd j c0040238 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28953 (discriminator 2) m->async_evaluation = TRUE; - c0040174: 4785 li a5,1 - c0040176: 0af42623 sw a5,172(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28947 (discriminator 2) + c0040344: 4785 li a5,1 + c0040346: 0af42623 sw a5,172(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28955 (discriminator 2) ctx->rt->module_async_evaluation_next_timestamp++; - c004017a: 018a3703 ld a4,24(s4) - c004017e: 14873783 ld a5,328(a4) - c0040182: 00178693 addi a3,a5,1 - c0040186: 14d73423 sd a3,328(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28946 (discriminator 2) + c004034a: 018a3703 ld a4,24(s4) + c004034e: 14873783 ld a5,328(a4) + c0040352: 00178693 addi a3,a5,1 + c0040356: 14d73423 sd a3,328(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28954 (discriminator 2) m->async_evaluation_timestamp = - c004018a: f85c sd a5,176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28959 + c004035a: f85c sd a5,176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28967 assert(m->dfs_ancestor_index <= m->dfs_index); - c004018c: 08842703 lw a4,136(s0) - c0040190: 08442783 lw a5,132(s0) - c0040194: 04e7db63 bge a5,a4,c00401ea -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28959 (discriminator 1) - c0040198: 659d lui a1,0x7 - c004019a: 4601 li a2,0 - c004019c: 11f58593 addi a1,a1,287 # 711f <__clzdi2-0xbfff8ee1> - c00401a0: bd51 j c0040034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28948 + c004035c: 08842703 lw a4,136(s0) + c0040360: 08442783 lw a5,132(s0) + c0040364: 04e7db63 bge a5,a4,c00403ba +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28967 (discriminator 1) + c0040368: 659d lui a1,0x7 + c004036a: 4601 li a2,0 + c004036c: 12758593 addi a1,a1,295 # 7127 <__clzdi2-0xbfff8ed9> + c0040370: bd51 j c0040204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28956 } else if (m->has_tla) { - c00401a2: 08044783 lbu a5,128(s0) - c00401a6: cb95 beqz a5,c00401da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28949 + c0040372: 08044783 lbu a5,128(s0) + c0040376: cb95 beqz a5,c00403aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28957 assert(!m->async_evaluation); - c00401a8: 0ac42783 lw a5,172(s0) - c00401ac: c791 beqz a5,c00401b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28949 (discriminator 1) - c00401ae: 659d lui a1,0x7 - c00401b0: 4601 li a2,0 - c00401b2: 11558593 addi a1,a1,277 # 7115 <__clzdi2-0xbfff8eeb> - c00401b6: bdbd j c0040034 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28950 (discriminator 2) + c0040378: 0ac42783 lw a5,172(s0) + c004037c: c791 beqz a5,c0040388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28957 (discriminator 1) + c004037e: 659d lui a1,0x7 + c0040380: 4601 li a2,0 + c0040382: 11d58593 addi a1,a1,285 # 711d <__clzdi2-0xbfff8ee3> + c0040386: bdbd j c0040204 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28958 (discriminator 2) m->async_evaluation = TRUE; - c00401b8: 4785 li a5,1 - c00401ba: 0af42623 sw a5,172(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28952 (discriminator 2) + c0040388: 4785 li a5,1 + c004038a: 0af42623 sw a5,172(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28960 (discriminator 2) ctx->rt->module_async_evaluation_next_timestamp++; - c00401be: 018a3703 ld a4,24(s4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28953 (discriminator 2) + c004038e: 018a3703 ld a4,24(s4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28961 (discriminator 2) js_execute_async_module(ctx, m); - c00401c2: 85a2 mv a1,s0 - c00401c4: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28952 (discriminator 2) + c0040392: 85a2 mv a1,s0 + c0040394: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28960 (discriminator 2) ctx->rt->module_async_evaluation_next_timestamp++; - c00401c6: 14873783 ld a5,328(a4) - c00401ca: 00178693 addi a3,a5,1 - c00401ce: 14d73423 sd a3,328(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28951 (discriminator 2) + c0040396: 14873783 ld a5,328(a4) + c004039a: 00178693 addi a3,a5,1 + c004039e: 14d73423 sd a3,328(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28959 (discriminator 2) m->async_evaluation_timestamp = - c00401d2: f85c sd a5,176(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28953 (discriminator 2) + c00403a2: f85c sd a5,176(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28961 (discriminator 2) js_execute_async_module(ctx, m); - c00401d4: be9ff0ef jal ra,c003fdbc - c00401d8: bf55 j c004018c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28955 + c00403a4: be9ff0ef jal ra,c003ff8c + c00403a8: bf55 j c004035c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28963 if (js_execute_sync_module(ctx, m, pvalue) < 0) - c00401da: 864a mv a2,s2 - c00401dc: 85a2 mv a1,s0 - c00401de: 8552 mv a0,s4 - c00401e0: b29ff0ef jal ra,c003fd08 - c00401e4: fa0554e3 bgez a0,c004018c - c00401e8: b5c1 j c00400a8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28960 (discriminator 2) + c00403aa: 864a mv a2,s2 + c00403ac: 85a2 mv a1,s0 + c00403ae: 8552 mv a0,s4 + c00403b0: b29ff0ef jal ra,c003fed8 + c00403b4: fa0554e3 bgez a0,c004035c + c00403b8: b5c1 j c0040278 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28968 (discriminator 2) if (m->dfs_index == m->dfs_ancestor_index) { - c00401ea: 02f71163 bne a4,a5,c004020c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28963 + c00403ba: 02f71163 bne a4,a5,c00403dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28971 m1 = *pstack_top; - c00401ee: 000ab783 ld a5,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28964 + c00403be: 000ab783 ld a5,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28972 *pstack_top = m1->stack_prev; - c00401f2: 6bd8 ld a4,144(a5) - c00401f4: 00eab023 sd a4,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28965 + c00403c2: 6bd8 ld a4,144(a5) + c00403c4: 00eab023 sd a4,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28973 if (!m1->async_evaluation) { - c00401f8: 0ac7a703 lw a4,172(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28971 + c00403c8: 0ac7a703 lw a4,172(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28979 m1->cycle_root = m; - c00401fc: ffc0 sd s0,184(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28968 + c00403cc: ffc0 sd s0,184(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28976 m1->status = JS_MODULE_STATUS_EVALUATING_ASYNC; - c00401fe: 00173713 seqz a4,a4 - c0040202: 0711 addi a4,a4,4 - c0040204: 08e781a3 sb a4,131(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28972 + c00403ce: 00173713 seqz a4,a4 + c00403d2: 0711 addi a4,a4,4 + c00403d4: 08e781a3 sb a4,131(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28980 if (m1 == m) - c0040208: fef413e3 bne s0,a5,c00401ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28976 + c00403d8: fef413e3 bne s0,a5,c00403be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28984 *pvalue = JS_UNDEFINED; - c004020c: 00093023 sd zero,0(s2) - c0040210: 478d li a5,3 - c0040212: b539 j c0040020 + c00403dc: 00093023 sd zero,0(s2) + c00403e0: 478d li a5,3 + c00403e2: b539 j c00401f0 -00000000c0040214 : +00000000c00403e4 : JS_EvalFunctionInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34330 { - c0040214: 7171 addi sp,sp,-176 - c0040216: ed26 sd s1,152(sp) - c0040218: e036 sd a3,0(sp) - c004021a: f506 sd ra,168(sp) - c004021c: 86be mv a3,a5 - c004021e: f122 sd s0,160(sp) - c0040220: e94a sd s2,144(sp) - c0040222: e54e sd s3,136(sp) - c0040224: e152 sd s4,128(sp) - c0040226: fcd6 sd s5,120(sp) - c0040228: e82e sd a1,16(sp) - c004022a: ec32 sd a2,24(sp) - c004022c: e43a sd a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34326 + c00403e4: 7171 addi sp,sp,-176 + c00403e6: ed26 sd s1,152(sp) + c00403e8: e036 sd a3,0(sp) + c00403ea: f506 sd ra,168(sp) + c00403ec: 86be mv a3,a5 + c00403ee: f122 sd s0,160(sp) + c00403f0: e94a sd s2,144(sp) + c00403f2: e54e sd s3,136(sp) + c00403f4: e152 sd s4,128(sp) + c00403f6: fcd6 sd s5,120(sp) + c00403f8: e82e sd a1,16(sp) + c00403fa: ec32 sd a2,24(sp) + c00403fc: e43a sd a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34334 tag = JS_VALUE_GET_TAG(fun_obj); - c004022e: 0006089b sext.w a7,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34327 + c00403fe: 0006089b sext.w a7,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34335 if (tag == JS_TAG_FUNCTION_BYTECODE) { - c0040232: 57f9 li a5,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 + c0040402: 57f9 li a5,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34330 { - c0040234: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34327 + c0040404: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34335 if (tag == JS_TAG_FUNCTION_BYTECODE) { - c0040236: 02f89063 bne a7,a5,c0040256 - c004023a: 8742 mv a4,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34328 + c0040406: 02f89063 bne a7,a5,c0040426 + c004040a: 8742 mv a4,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34336 fun_obj = js_closure(ctx, fun_obj, var_refs, sf); - c004023c: 914e90ef jal ra,c0029350 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34329 + c004040c: 914e90ef jal ra,c0029520 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34337 ret_val = JS_CallFree(ctx, fun_obj, this_obj, 0, NULL); - c0040240: 6682 ld a3,0(sp) - c0040242: 6722 ld a4,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34328 + c0040410: 6682 ld a3,0(sp) + c0040412: 6722 ld a4,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34336 fun_obj = js_closure(ctx, fun_obj, var_refs, sf); - c0040244: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34329 + c0040414: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34337 ret_val = JS_CallFree(ctx, fun_obj, this_obj, 0, NULL); - c0040246: 4801 li a6,0 - c0040248: 85aa mv a1,a0 - c004024a: 4781 li a5,0 - c004024c: 8526 mv a0,s1 - c004024e: dbed10ef jal ra,c001180c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34346 + c0040416: 4801 li a6,0 + c0040418: 85aa mv a1,a0 + c004041a: 4781 li a5,0 + c004041c: 8526 mv a0,s1 + c004041e: cdcd10ef jal ra,c00118fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34354 ret_val = JS_ThrowTypeError(ctx, "bytecode function expected"); - c0040252: e0aa sd a0,64(sp) - c0040254: a0fd j c0040342 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34330 + c0040422: e0aa sd a0,64(sp) + c0040424: a0fd j c0040512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34338 } else if (tag == JS_TAG_MODULE) { - c0040256: 57f5 li a5,-3 - c0040258: 20f89f63 bne a7,a5,c0040476 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34332 + c0040426: 57f5 li a5,-3 + c0040428: 20f89f63 bne a7,a5,c0040646 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34340 m = JS_VALUE_GET_PTR(fun_obj); - c004025c: 842e mv s0,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34334 + c004042c: 842e mv s0,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34342 JS_FreeValue(ctx, fun_obj); - c004025e: 8dbc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34335 + c004042e: ff8c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34343 if (js_create_module_function(ctx, m) < 0) - c0040262: 85a2 mv a1,s0 - c0040264: 8526 mv a0,s1 - c0040266: b33d60ef jal ra,c0016d98 - c004026a: 04054463 bltz a0,c00402b2 + c0040432: 85a2 mv a1,s0 + c0040434: 8526 mv a0,s1 + c0040436: b33d60ef jal ra,c0016f68 + c004043a: 04054463 bltz a0,c0040482 js_link_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28366 - assert(m->status == JS_MODULE_STATUS_UNLINKED || - c004026e: 08344783 lbu a5,131(s0) - c0040272: 0fd7f713 andi a4,a5,253 - c0040276: c30d beqz a4,c0040298 - c0040278: 37f1 addiw a5,a5,-4 - c004027a: 0ff7f793 zext.b a5,a5 - c004027e: 4705 li a4,1 - c0040280: 00f77c63 bgeu a4,a5,c0040298 - c0040284: 659d lui a1,0x7 - c0040286: 4601 li a2,0 - c0040288: ece58593 addi a1,a1,-306 # 6ece <__clzdi2-0xbfff9132> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28374 + assert(m->status == JS_MODULE_STATUS_UNLINKED || + c004043e: 08344783 lbu a5,131(s0) + c0040442: 0fd7f713 andi a4,a5,253 + c0040446: c30d beqz a4,c0040468 + c0040448: 37f1 addiw a5,a5,-4 + c004044a: 0ff7f793 zext.b a5,a5 + c004044e: 4705 li a4,1 + c0040450: 00f77c63 bgeu a4,a5,c0040468 + c0040454: 659d lui a1,0x7 + c0040456: 4601 li a2,0 + c0040458: ed658593 addi a1,a1,-298 # 6ed6 <__clzdi2-0xbfff912a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28382 assert(m1->status == JS_MODULE_STATUS_LINKING); - c004028c: 0001c517 auipc a0,0x1c - c0040290: 7ec50513 addi a0,a0,2028 # c005ca78 - c0040294: 784130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28371 + c004045c: 0001c517 auipc a0,0x1c + c0040460: 7ec50513 addi a0,a0,2028 # c005cc48 + c0040464: 784130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28379 if (js_inner_module_linking(ctx, m, &stack_top, 0) < 0) { - c0040298: 4681 li a3,0 - c004029a: 1090 addi a2,sp,96 - c004029c: 85a2 mv a1,s0 - c004029e: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28370 + c0040468: 4681 li a3,0 + c004046a: 1090 addi a2,sp,96 + c004046c: 85a2 mv a1,s0 + c004046e: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28378 stack_top = NULL; - c00402a0: f082 sd zero,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28371 + c0040470: f082 sd zero,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28379 if (js_inner_module_linking(ctx, m, &stack_top, 0) < 0) { - c00402a2: efcfb0ef jal ra,c003b99e - c00402a6: 7786 ld a5,96(sp) - c00402a8: 04055363 bgez a0,c00402ee - c00402ac: 4701 li a4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28374 + c0040472: efcfb0ef jal ra,c003bb6e + c0040476: 7786 ld a5,96(sp) + c0040478: 04055363 bgez a0,c00404be + c004047c: 4701 li a4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28382 assert(m1->status == JS_MODULE_STATUS_LINKING); - c00402ae: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28372 + c004047e: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28380 while (stack_top != NULL) { - c00402b0: ef99 bnez a5,c00402ce + c0040480: ef99 bnez a5,c004049e JS_EvalFunctionInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34342 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34350 return JS_EXCEPTION; - c00402b2: 4799 li a5,6 - c00402b4: e882 sd zero,80(sp) - c00402b6: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34349 (discriminator 1) -} - c00402b8: 70aa ld ra,168(sp) - c00402ba: 740a ld s0,160(sp) - c00402bc: 6546 ld a0,80(sp) - c00402be: 65e6 ld a1,88(sp) - c00402c0: 64ea ld s1,152(sp) - c00402c2: 694a ld s2,144(sp) - c00402c4: 69aa ld s3,136(sp) - c00402c6: 6a0a ld s4,128(sp) - c00402c8: 7ae6 ld s5,120(sp) - c00402ca: 614d addi sp,sp,176 - c00402cc: 8082 ret + c0040482: 4799 li a5,6 + c0040484: e882 sd zero,80(sp) + c0040486: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34357 (discriminator 1) +} + c0040488: 70aa ld ra,168(sp) + c004048a: 740a ld s0,160(sp) + c004048c: 6546 ld a0,80(sp) + c004048e: 65e6 ld a1,88(sp) + c0040490: 64ea ld s1,152(sp) + c0040492: 694a ld s2,144(sp) + c0040494: 69aa ld s3,136(sp) + c0040496: 6a0a ld s4,128(sp) + c0040498: 7ae6 ld s5,120(sp) + c004049a: 614d addi sp,sp,176 + c004049c: 8082 ret js_link_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28374 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28382 assert(m1->status == JS_MODULE_STATUS_LINKING); - c00402ce: 0837c603 lbu a2,131(a5) - c00402d2: 00d60963 beq a2,a3,c00402e4 - c00402d6: c311 beqz a4,c00402da - c00402d8: f0be sd a5,96(sp) - c00402da: 659d lui a1,0x7 - c00402dc: 4601 li a2,0 - c00402de: ed658593 addi a1,a1,-298 # 6ed6 <__clzdi2-0xbfff912a> - c00402e2: b76d j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28375 + c004049e: 0837c603 lbu a2,131(a5) + c00404a2: 00d60963 beq a2,a3,c00404b4 + c00404a6: c311 beqz a4,c00404aa + c00404a8: f0be sd a5,96(sp) + c00404aa: 659d lui a1,0x7 + c00404ac: 4601 li a2,0 + c00404ae: ede58593 addi a1,a1,-290 # 6ede <__clzdi2-0xbfff9122> + c00404b2: b76d j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28383 m1->status = JS_MODULE_STATUS_UNLINKED; - c00402e4: 080781a3 sb zero,131(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28376 + c00404b4: 080781a3 sb zero,131(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28384 stack_top = m1->stack_prev; - c00402e8: 4705 li a4,1 - c00402ea: 6bdc ld a5,144(a5) - c00402ec: b7d1 j c00402b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28380 + c00404b8: 4705 li a4,1 + c00404ba: 6bdc ld a5,144(a5) + c00404bc: b7d1 j c0040480 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28388 assert(stack_top == NULL); - c00402ee: c791 beqz a5,c00402fa - c00402f0: 659d lui a1,0x7 - c00402f2: 4601 li a2,0 - c00402f4: edc58593 addi a1,a1,-292 # 6edc <__clzdi2-0xbfff9124> - c00402f8: bf51 j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28381 + c00404be: c791 beqz a5,c00404ca + c00404c0: 659d lui a1,0x7 + c00404c2: 4601 li a2,0 + c00404c4: ee458593 addi a1,a1,-284 # 6ee4 <__clzdi2-0xbfff911c> + c00404c8: bf51 j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28389 assert(m->status == JS_MODULE_STATUS_LINKED || - c00402fa: 08344783 lbu a5,131(s0) - c00402fe: 4709 li a4,2 - c0040300: 18e78663 beq a5,a4,c004048c - c0040304: 37f1 addiw a5,a5,-4 - c0040306: 0ff7f793 zext.b a5,a5 - c004030a: 4705 li a4,1 - c004030c: 16f77f63 bgeu a4,a5,c004048a - c0040310: 659d lui a1,0x7 - c0040312: 4601 li a2,0 - c0040314: edd58593 addi a1,a1,-291 # 6edd <__clzdi2-0xbfff9123> - c0040318: bf95 j c004028c + c00404ca: 08344783 lbu a5,131(s0) + c00404ce: 4709 li a4,2 + c00404d0: 18e78663 beq a5,a4,c004065c + c00404d4: 37f1 addiw a5,a5,-4 + c00404d6: 0ff7f793 zext.b a5,a5 + c00404da: 4705 li a4,1 + c00404dc: 16f77f63 bgeu a4,a5,c004065a + c00404e0: 659d lui a1,0x7 + c00404e2: 4601 li a2,0 + c00404e4: ee558593 addi a1,a1,-283 # 6ee5 <__clzdi2-0xbfff911b> + c00404e8: bf95 j c004045c js_evaluate_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28997 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29005 m->promise = JS_NewPromiseCapability(ctx, m->resolving_funcs); - c004031a: 0d040593 addi a1,s0,208 - c004031e: 8526 mv a0,s1 - c0040320: c71ca0ef jal ra,c000af90 - c0040324: e46c sd a1,200(s0) - c0040326: e068 sd a0,192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28998 + c00404ea: 0d040593 addi a1,s0,208 + c00404ee: 8526 mv a0,s1 + c00404f0: b8fca0ef jal ra,c000b07e + c00404f4: e46c sd a1,200(s0) + c00404f6: e068 sd a0,192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29006 if (JS_IsException(m->promise)) - c0040328: 2581 sext.w a1,a1 - c004032a: 4799 li a5,6 - c004032c: 00f59f63 bne a1,a5,c004034a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28999 + c00404f8: 2581 sext.w a1,a1 + c00404fa: 4799 li a5,6 + c00404fc: 00f59f63 bne a1,a5,c004051a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29007 return JS_EXCEPTION; - c0040330: f082 sd zero,96(sp) - c0040332: 4599 li a1,6 - c0040334: 7786 ld a5,96(sp) + c0040500: f082 sd zero,96(sp) + c0040502: 4599 li a1,6 + c0040504: 7786 ld a5,96(sp) JS_EvalFunctionInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34340 - if (JS_IsException(ret_val)) { - c0040336: 4719 li a4,6 - c0040338: e0be sd a5,64(sp) - c004033a: 0005879b sext.w a5,a1 - c004033e: f6e78ae3 beq a5,a4,c00402b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34348 + if (JS_IsException(ret_val)) { + c0040506: 4719 li a4,6 + c0040508: e0be sd a5,64(sp) + c004050a: 0005879b sext.w a5,a1 + c004050e: f6e78ae3 beq a5,a4,c0040482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34356 return ret_val; - c0040342: 6786 ld a5,64(sp) - c0040344: ecae sd a1,88(sp) - c0040346: e8be sd a5,80(sp) - c0040348: bf85 j c00402b8 + c0040512: 6786 ld a5,64(sp) + c0040514: ecae sd a1,88(sp) + c0040516: e8be sd a5,80(sp) + c0040518: bf85 j c0040488 js_evaluate_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29002 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29010 if (js_inner_module_evaluation(ctx, m, 0, &stack_top, &result) < 0) { - c004034a: 0098 addi a4,sp,64 - c004034c: 1034 addi a3,sp,40 - c004034e: 4601 li a2,0 - c0040350: 85a2 mv a1,s0 - c0040352: 8526 mv a0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29001 + c004051a: 0098 addi a4,sp,64 + c004051c: 1034 addi a3,sp,40 + c004051e: 4601 li a2,0 + c0040520: 85a2 mv a1,s0 + c0040522: 8526 mv a0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29009 stack_top = NULL; - c0040354: f402 sd zero,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29002 + c0040524: f402 sd zero,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29010 if (js_inner_module_evaluation(ctx, m, 0, &stack_top, &result) < 0) { - c0040356: c73ff0ef jal ra,c003ffc8 - c004035a: 0a055163 bgez a0,c00403fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29005 + c0040526: c73ff0ef jal ra,c0040198 + c004052a: 0a055163 bgez a0,c00405cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29013 assert(m1->status == JS_MODULE_STATUS_EVALUATING); - c004035e: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29006 + c004052e: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29014 m1->status = JS_MODULE_STATUS_EVALUATED; - c0040360: 4a15 li s4,5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29007 + c0040530: 4a15 li s4,5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29015 m1->eval_has_exception = TRUE; - c0040362: 4a85 li s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29003 + c0040532: 4a85 li s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29011 while (stack_top != NULL) { - c0040364: 7922 ld s2,40(sp) - c0040366: 02091163 bnez s2,c0040388 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29012 + c0040534: 7922 ld s2,40(sp) + c0040536: 02091163 bnez s2,c0040558 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29020 JS_FreeValue(ctx, result); - c004036a: 6586 ld a1,64(sp) - c004036c: 6626 ld a2,72(sp) - c004036e: 8526 mv a0,s1 - c0040370: fc8c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29013 + c004053a: 6586 ld a1,64(sp) + c004053c: 6626 ld a2,72(sp) + c004053e: 8526 mv a0,s1 + c0040540: ee6c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29021 assert(m->status == JS_MODULE_STATUS_EVALUATED); - c0040374: 08344703 lbu a4,131(s0) - c0040378: 4795 li a5,5 - c004037a: 04f70263 beq a4,a5,c00403be - c004037e: 659d lui a1,0x7 - c0040380: 4601 li a2,0 - c0040382: 15558593 addi a1,a1,341 # 7155 <__clzdi2-0xbfff8eab> - c0040386: b719 j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29005 + c0040544: 08344703 lbu a4,131(s0) + c0040548: 4795 li a5,5 + c004054a: 04f70263 beq a4,a5,c004058e + c004054e: 659d lui a1,0x7 + c0040550: 4601 li a2,0 + c0040552: 15d58593 addi a1,a1,349 # 715d <__clzdi2-0xbfff8ea3> + c0040556: b719 j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29013 assert(m1->status == JS_MODULE_STATUS_EVALUATING); - c0040388: 08394783 lbu a5,131(s2) - c004038c: 01378763 beq a5,s3,c004039a - c0040390: 659d lui a1,0x7 - c0040392: 4601 li a2,0 - c0040394: 14d58593 addi a1,a1,333 # 714d <__clzdi2-0xbfff8eb3> - c0040398: bdd5 j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29006 + c0040558: 08394783 lbu a5,131(s2) + c004055c: 01378763 beq a5,s3,c004056a + c0040560: 659d lui a1,0x7 + c0040562: 4601 li a2,0 + c0040564: 15558593 addi a1,a1,341 # 7155 <__clzdi2-0xbfff8eab> + c0040568: bdd5 j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29014 m1->status = JS_MODULE_STATUS_EVALUATED; - c004039a: 094901a3 sb s4,131(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29007 + c004056a: 094901a3 sb s4,131(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29015 m1->eval_has_exception = TRUE; - c004039e: 0f590823 sb s5,240(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29008 + c004056e: 0f590823 sb s5,240(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29016 m1->eval_exception = JS_DupValue(ctx, result); - c00403a2: 6506 ld a0,64(sp) - c00403a4: 65a6 ld a1,72(sp) - c00403a6: ac8c60ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29010 + c0040572: 6506 ld a0,64(sp) + c0040574: 65a6 ld a1,72(sp) + c0040576: 9e6c60ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29018 stack_top = m1->stack_prev; - c00403aa: 09093783 ld a5,144(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29008 + c004057a: 09093783 ld a5,144(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29016 m1->eval_exception = JS_DupValue(ctx, result); - c00403ae: 0ea93c23 sd a0,248(s2) - c00403b2: 10b93023 sd a1,256(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29009 + c004057e: 0ea93c23 sd a0,248(s2) + c0040582: 10b93023 sd a1,256(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29017 m1->cycle_root = m; /* spec bug: should be present */ - c00403b6: 0a893c23 sd s0,184(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29010 + c0040586: 0a893c23 sd s0,184(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29018 stack_top = m1->stack_prev; - c00403ba: f43e sd a5,40(sp) - c00403bc: b765 j c0040364 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29014 + c004058a: f43e sd a5,40(sp) + c004058c: b765 j c0040534 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29022 assert(m->eval_has_exception); - c00403be: 0f044783 lbu a5,240(s0) - c00403c2: e791 bnez a5,c00403ce - c00403c4: 659d lui a1,0x7 - c00403c6: 4601 li a2,0 - c00403c8: 15658593 addi a1,a1,342 # 7156 <__clzdi2-0xbfff8eaa> - c00403cc: b5c1 j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29015 + c004058e: 0f044783 lbu a5,240(s0) + c0040592: e791 bnez a5,c004059e + c0040594: 659d lui a1,0x7 + c0040596: 4601 li a2,0 + c0040598: 15e58593 addi a1,a1,350 # 715e <__clzdi2-0xbfff8ea2> + c004059c: b5c1 j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29023 ret_val = JS_Call(ctx, m->resolving_funcs[1], JS_UNDEFINED, - c00403ce: 478d li a5,3 - c00403d0: f4be sd a5,104(sp) - c00403d2: f082 sd zero,96(sp) - c00403d4: 7470 ld a2,232(s0) - c00403d6: 706c ld a1,224(s0) - c00403d8: 0f840813 addi a6,s0,248 - c00403dc: 4785 li a5,1 - c00403de: 4681 li a3,0 - c00403e0: 470d li a4,3 - c00403e2: 8526 mv a0,s1 - c00403e4: b22f90ef jal ra,c0039706 - c00403e8: 862e mv a2,a1 - c00403ea: f82a sd a0,48(sp) - c00403ec: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29017 + c004059e: 478d li a5,3 + c00405a0: f4be sd a5,104(sp) + c00405a2: f082 sd zero,96(sp) + c00405a4: 7470 ld a2,232(s0) + c00405a6: 706c ld a1,224(s0) + c00405a8: 0f840813 addi a6,s0,248 + c00405ac: 4785 li a5,1 + c00405ae: 4681 li a3,0 + c00405b0: 470d li a4,3 + c00405b2: 8526 mv a0,s1 + c00405b4: b22f90ef jal ra,c00398d6 + c00405b8: 862e mv a2,a1 + c00405ba: f82a sd a0,48(sp) + c00405bc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29025 JS_FreeValue(ctx, ret_val); - c00403ee: 85aa mv a1,a0 - c00403f0: 8526 mv a0,s1 - c00403f2: f46c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29032 + c00405be: 85aa mv a1,a0 + c00405c0: 8526 mv a0,s1 + c00405c2: e64c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29040 return JS_DupValue(ctx, m->promise); - c00403f6: 6068 ld a0,192(s0) - c00403f8: 646c ld a1,200(s0) - c00403fa: a045 j c004049a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29019 + c00405c6: 6068 ld a0,192(s0) + c00405c8: 646c ld a1,200(s0) + c00405ca: a045 j c004066a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29027 assert(m->status == JS_MODULE_STATUS_EVALUATING_ASYNC || - c00403fc: 08344703 lbu a4,131(s0) - c0040400: 4685 li a3,1 - c0040402: ffc7079b addiw a5,a4,-4 - c0040406: 0ff7f793 zext.b a5,a5 - c004040a: 00f6f763 bgeu a3,a5,c0040418 - c004040e: 659d lui a1,0x7 - c0040410: 4601 li a2,0 - c0040412: 15b58593 addi a1,a1,347 # 715b <__clzdi2-0xbfff8ea5> - c0040416: bd9d j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29021 + c00405cc: 08344703 lbu a4,131(s0) + c00405d0: 4685 li a3,1 + c00405d2: ffc7079b addiw a5,a4,-4 + c00405d6: 0ff7f793 zext.b a5,a5 + c00405da: 00f6f763 bgeu a3,a5,c00405e8 + c00405de: 659d lui a1,0x7 + c00405e0: 4601 li a2,0 + c00405e2: 16358593 addi a1,a1,355 # 7163 <__clzdi2-0xbfff8e9d> + c00405e6: bd9d j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29029 assert(!m->eval_has_exception); - c0040418: 0f044783 lbu a5,240(s0) - c004041c: c791 beqz a5,c0040428 - c004041e: 659d lui a1,0x7 - c0040420: 4601 li a2,0 - c0040422: 15d58593 addi a1,a1,349 # 715d <__clzdi2-0xbfff8ea3> - c0040426: b59d j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29022 + c00405e8: 0f044783 lbu a5,240(s0) + c00405ec: c791 beqz a5,c00405f8 + c00405ee: 659d lui a1,0x7 + c00405f0: 4601 li a2,0 + c00405f2: 16558593 addi a1,a1,357 # 7165 <__clzdi2-0xbfff8e9b> + c00405f6: b59d j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29030 if (!m->async_evaluation) { - c0040428: 0ac42783 lw a5,172(s0) - c004042c: ef95 bnez a5,c0040468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29024 + c00405f8: 0ac42783 lw a5,172(s0) + c00405fc: ef95 bnez a5,c0040638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29032 assert(m->status == JS_MODULE_STATUS_EVALUATED); - c004042e: 4795 li a5,5 - c0040430: 00f70763 beq a4,a5,c004043e - c0040434: 659d lui a1,0x7 - c0040436: 4601 li a2,0 - c0040438: 16058593 addi a1,a1,352 # 7160 <__clzdi2-0xbfff8ea0> - c004043c: bd81 j c004028c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29025 + c00405fe: 4795 li a5,5 + c0040600: 00f70763 beq a4,a5,c004060e + c0040604: 659d lui a1,0x7 + c0040606: 4601 li a2,0 + c0040608: 16858593 addi a1,a1,360 # 7168 <__clzdi2-0xbfff8e98> + c004060c: bd81 j c004045c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29033 value = JS_UNDEFINED; - c004043e: e882 sd zero,80(sp) - c0040440: ecca sd s2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29026 + c004060e: e882 sd zero,80(sp) + c0040610: ecca sd s2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29034 ret_val = JS_Call(ctx, m->resolving_funcs[0], JS_UNDEFINED, - c0040442: f082 sd zero,96(sp) - c0040444: f4ca sd s2,104(sp) - c0040446: 6c70 ld a2,216(s0) - c0040448: 686c ld a1,208(s0) - c004044a: 05010813 addi a6,sp,80 - c004044e: 4785 li a5,1 - c0040450: 4681 li a3,0 - c0040452: 470d li a4,3 - c0040454: 8526 mv a0,s1 - c0040456: ab0f90ef jal ra,c0039706 - c004045a: 862e mv a2,a1 - c004045c: f82a sd a0,48(sp) - c004045e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29028 + c0040612: f082 sd zero,96(sp) + c0040614: f4ca sd s2,104(sp) + c0040616: 6c70 ld a2,216(s0) + c0040618: 686c ld a1,208(s0) + c004061a: 05010813 addi a6,sp,80 + c004061e: 4785 li a5,1 + c0040620: 4681 li a3,0 + c0040622: 470d li a4,3 + c0040624: 8526 mv a0,s1 + c0040626: ab0f90ef jal ra,c00398d6 + c004062a: 862e mv a2,a1 + c004062c: f82a sd a0,48(sp) + c004062e: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29036 JS_FreeValue(ctx, ret_val); - c0040460: 85aa mv a1,a0 - c0040462: 8526 mv a0,s1 - c0040464: ed4c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29030 + c0040630: 85aa mv a1,a0 + c0040632: 8526 mv a0,s1 + c0040634: df2c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29038 assert(stack_top == NULL); - c0040468: 77a2 ld a5,40(sp) - c004046a: d7d1 beqz a5,c00403f6 - c004046c: 659d lui a1,0x7 - c004046e: 4601 li a2,0 - c0040470: 16658593 addi a1,a1,358 # 7166 <__clzdi2-0xbfff8e9a> - c0040474: bd21 j c004028c + c0040638: 77a2 ld a5,40(sp) + c004063a: d7d1 beqz a5,c00405c6 + c004063c: 659d lui a1,0x7 + c004063e: 4601 li a2,0 + c0040640: 16e58593 addi a1,a1,366 # 716e <__clzdi2-0xbfff8e92> + c0040644: bd21 j c004045c JS_EvalFunctionInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34345 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34353 JS_FreeValue(ctx, fun_obj); - c0040476: ec2c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34346 + c0040646: de0c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34354 ret_val = JS_ThrowTypeError(ctx, "bytecode function expected"); - c004047a: 8526 mv a0,s1 - c004047c: 00020597 auipc a1,0x20 - c0040480: 79458593 addi a1,a1,1940 # c0060c10 - c0040484: f73d20ef jal ra,c00133f6 - c0040488: b3e9 j c0040252 + c004064a: 8526 mv a0,s1 + c004064c: 00021597 auipc a1,0x21 + c0040650: 82458593 addi a1,a1,-2012 # c0060e70 + c0040654: e91d20ef jal ra,c00134e4 + c0040658: b3e9 j c0040422 js_evaluate_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28992 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29000 m = m->cycle_root; - c004048a: 7c40 ld s0,184(s0) + c004065a: 7c40 ld s0,184(s0) JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c004048c: 646c ld a1,200(s0) + c004065c: 646c ld a1,200(s0) js_evaluate_module(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28995 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29003 if (!JS_IsUndefined(m->promise)) - c004048e: 478d li a5,3 - c0040490: 0005891b sext.w s2,a1 - c0040494: e8f903e3 beq s2,a5,c004031a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28996 + c004065e: 478d li a5,3 + c0040660: 0005891b sext.w s2,a1 + c0040664: e8f903e3 beq s2,a5,c00404ea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29004 return JS_DupValue(ctx, m->promise); - c0040498: 6068 ld a0,192(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29032 + c0040668: 6068 ld a0,192(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:29040 return JS_DupValue(ctx, m->promise); - c004049a: 9d4c60ef jal ra,c000666e - c004049e: f0aa sd a0,96(sp) - c00404a0: bd51 j c0040334 + c004066a: 8f2c60ef jal ra,c000675c + c004066e: f0aa sd a0,96(sp) + c0040670: bd51 j c0040504 -00000000c00404a2 : +00000000c0040672 : JS_EvalFunction(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34353 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34361 return JS_EvalFunctionInternal(ctx, fun_obj, ctx->global_obj, NULL, NULL); - c00404a2: 16853683 ld a3,360(a0) - c00404a6: 17053703 ld a4,368(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34352 + c0040672: 16853683 ld a3,360(a0) + c0040676: 17053703 ld a4,368(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34360 { - c00404aa: 1101 addi sp,sp,-32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34353 + c004067a: 1101 addi sp,sp,-32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34361 return JS_EvalFunctionInternal(ctx, fun_obj, ctx->global_obj, NULL, NULL); - c00404ac: 4801 li a6,0 - c00404ae: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34354 + c004067c: 4801 li a6,0 + c004067e: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34362 } - c00404b0: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34353 + c0040680: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34361 return JS_EvalFunctionInternal(ctx, fun_obj, ctx->global_obj, NULL, NULL); - c00404b2: d63ff06f j c0040214 + c0040682: d63ff06f j c00403e4 -00000000c00404b6 : +00000000c0040686 : JS_LoadModuleInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28511 -{ - c00404b6: 7135 addi sp,sp,-160 - c00404b8: e922 sd s0,144(sp) - c00404ba: e526 sd s1,136(sp) - c00404bc: ed06 sd ra,152(sp) - c00404be: e14a sd s2,128(sp) - c00404c0: 842a mv s0,a0 - c00404c2: 84b6 mv s1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28517 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28519 +{ + c0040686: 7135 addi sp,sp,-160 + c0040688: e922 sd s0,144(sp) + c004068a: e526 sd s1,136(sp) + c004068c: ed06 sd ra,152(sp) + c004068e: e14a sd s2,128(sp) + c0040690: 842a mv s0,a0 + c0040692: 84b6 mv s1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28525 m = js_host_resolve_imported_module(ctx, basename, filename); - c00404c4: f9dd80ef jal ra,c0019460 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28518 + c0040694: f9dd80ef jal ra,c0019630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28526 if (!m) - c00404c8: cd01 beqz a0,c00404e0 - c00404ca: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28521 + c0040698: cd01 beqz a0,c00406b0 + c004069a: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28529 if (js_resolve_module(ctx, m) < 0) { - c00404cc: 85aa mv a1,a0 - c00404ce: 8522 mv a0,s0 - c00404d0: 870df0ef jal ra,c001f540 - c00404d4: 04055863 bgez a0,c0040524 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28522 + c004069c: 85aa mv a1,a0 + c004069e: 8522 mv a0,s0 + c00406a0: 870df0ef jal ra,c001f710 + c00406a4: 04055863 bgez a0,c00406f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28530 js_free_modules(ctx, JS_FREE_MODULE_NOT_RESOLVED); - c00404d8: 4585 li a1,1 - c00404da: 8522 mv a0,s0 - c00404dc: c5cc80ef jal ra,c0008938 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28531 + c00406a8: 4585 li a1,1 + c00406aa: 8522 mv a0,s0 + c00406ac: b7ac80ef jal ra,c0008a26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28539 err = JS_GetException(ctx); - c00404e0: 8522 mv a0,s0 - c00404e2: 9e6ca0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28532 + c00406b0: 8522 mv a0,s0 + c00406b2: 904ca0ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c00404e6: 6c90 ld a2,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28531 + c00406b6: 6c90 ld a2,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28539 err = JS_GetException(ctx); - c00404e8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28532 + c00406b8: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c00404ea: 688c ld a1,16(s1) - c00404ec: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28531 + c00406ba: 688c ld a1,16(s1) + c00406bc: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28539 err = JS_GetException(ctx); - c00404ee: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28532 + c00406be: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c00404f0: ecbe sd a5,88(sp) - c00404f2: 03010813 addi a6,sp,48 - c00404f6: 4785 li a5,1 - c00404f8: 4681 li a3,0 - c00404fa: 470d li a4,3 - c00404fc: 8522 mv a0,s0 - c00404fe: e882 sd zero,80(sp) - c0040500: a06f90ef jal ra,c0039706 - c0040504: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28534 + c00406c0: ecbe sd a5,88(sp) + c00406c2: 03010813 addi a6,sp,48 + c00406c6: 4785 li a5,1 + c00406c8: 4681 li a3,0 + c00406ca: 470d li a4,3 + c00406cc: 8522 mv a0,s0 + c00406ce: e882 sd zero,80(sp) + c00406d0: a06f90ef jal ra,c00398d6 + c00406d4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28542 JS_FreeValue(ctx, ret); /* XXX: what to do if exception ? */ - c0040506: 85aa mv a1,a0 - c0040508: 8522 mv a0,s0 - c004050a: e2ec70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28535 + c00406d6: 85aa mv a1,a0 + c00406d8: 8522 mv a0,s0 + c00406da: d4cc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28543 JS_FreeValue(ctx, err); - c004050e: 75c2 ld a1,48(sp) - c0040510: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28550 + c00406de: 75c2 ld a1,48(sp) + c00406e0: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28558 JS_FreeValue(ctx, evaluate_promise); - c0040512: 8522 mv a0,s0 - c0040514: e24c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28551 -} - c0040518: 60ea ld ra,152(sp) - c004051a: 644a ld s0,144(sp) - c004051c: 64aa ld s1,136(sp) - c004051e: 690a ld s2,128(sp) - c0040520: 610d addi sp,sp,160 - c0040522: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28527 + c00406e2: 8522 mv a0,s0 + c00406e4: d42c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28559 +} + c00406e8: 60ea ld ra,152(sp) + c00406ea: 644a ld s0,144(sp) + c00406ec: 64aa ld s1,136(sp) + c00406ee: 690a ld s2,128(sp) + c00406f0: 610d addi sp,sp,160 + c00406f2: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28535 func_obj = JS_NewModuleValue(ctx, m); - c0040524: 85ca mv a1,s2 - c0040526: 8522 mv a0,s0 - c0040528: a78c60ef jal ra,c00067a0 - c004052c: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28528 + c00406f4: 85ca mv a1,s2 + c00406f6: 8522 mv a0,s0 + c00406f8: 996c60ef jal ra,c000688e + c00406fc: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28536 evaluate_promise = JS_EvalFunction(ctx, func_obj); - c004052e: 85aa mv a1,a0 - c0040530: 8522 mv a0,s0 - c0040532: f71ff0ef jal ra,c00404a2 - c0040536: e42e sd a1,8(sp) - c0040538: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28529 + c00406fe: 85aa mv a1,a0 + c0040700: 8522 mv a0,s0 + c0040702: f71ff0ef jal ra,c0040672 + c0040706: e42e sd a1,8(sp) + c0040708: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28537 if (JS_IsException(evaluate_promise)) { - c004053a: 2581 sext.w a1,a1 - c004053c: 4799 li a5,6 - c004053e: faf581e3 beq a1,a5,c00404e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28539 + c004070a: 2581 sext.w a1,a1 + c004070c: 4799 li a5,6 + c004070e: faf581e3 beq a1,a5,c00406b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28547 func_obj = JS_NewModuleValue(ctx, m); - c0040542: 85ca mv a1,s2 - c0040544: 8522 mv a0,s0 - c0040546: a5ac60ef jal ra,c00067a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 + c0040712: 85ca mv a1,s2 + c0040714: 8522 mv a0,s0 + c0040716: 978c60ef jal ra,c000688e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28548 func_data[0] = resolving_funcs[0]; - c004054a: 609c ld a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28539 + c004071a: 609c ld a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28547 func_obj = JS_NewModuleValue(ctx, m); - c004054c: f02a sd a0,32(sp) - c004054e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 + c004071c: f02a sd a0,32(sp) + c004071e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28548 func_data[0] = resolving_funcs[0]; - c0040550: e8be sd a5,80(sp) - c0040552: 649c ld a5,8(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28542 + c0040720: e8be sd a5,80(sp) + c0040722: 649c ld a5,8(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28550 func_data[2] = func_obj; - c0040554: f8aa sd a0,112(sp) - c0040556: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28540 + c0040724: f8aa sd a0,112(sp) + c0040726: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28548 func_data[0] = resolving_funcs[0]; - c0040558: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28541 + c0040728: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28549 func_data[1] = resolving_funcs[1]; - c004055a: 689c ld a5,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28543 + c004072a: 689c ld a5,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28551 evaluate_resolving_funcs[0] = JS_NewCFunctionData(ctx, js_load_module_fulfilled, 0, 0, 3, func_data); - c004055c: 470d li a4,3 - c004055e: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28541 + c004072c: 470d li a4,3 + c004072e: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28549 func_data[1] = resolving_funcs[1]; - c0040560: f0be sd a5,96(sp) - c0040562: 6c9c ld a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28543 + c0040730: f0be sd a5,96(sp) + c0040732: 6c9c ld a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28551 evaluate_resolving_funcs[0] = JS_NewCFunctionData(ctx, js_load_module_fulfilled, 0, 0, 3, func_data); - c0040564: 4601 li a2,0 - c0040566: ffffa597 auipc a1,0xffffa - c004056a: dee58593 addi a1,a1,-530 # c003a354 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28541 + c0040734: 4601 li a2,0 + c0040736: ffffa597 auipc a1,0xffffa + c004073a: dee58593 addi a1,a1,-530 # c003a524 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28549 func_data[1] = resolving_funcs[1]; - c004056e: f4be sd a5,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28543 + c004073e: f4be sd a5,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28551 evaluate_resolving_funcs[0] = JS_NewCFunctionData(ctx, js_load_module_fulfilled, 0, 0, 3, func_data); - c0040570: 8522 mv a0,s0 - c0040572: 089c addi a5,sp,80 - c0040574: c83e80ef jal ra,c00291f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28544 + c0040740: 8522 mv a0,s0 + c0040742: 089c addi a5,sp,80 + c0040744: c83e80ef jal ra,c00293c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28552 evaluate_resolving_funcs[1] = JS_NewCFunctionData(ctx, js_load_module_rejected, 0, 0, 3, func_data); - c0040578: 089c addi a5,sp,80 - c004057a: 470d li a4,3 - c004057c: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28543 + c0040748: 089c addi a5,sp,80 + c004074a: 470d li a4,3 + c004074c: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28551 evaluate_resolving_funcs[0] = JS_NewCFunctionData(ctx, js_load_module_fulfilled, 0, 0, 3, func_data); - c004057e: f82a sd a0,48(sp) - c0040580: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28544 + c004074e: f82a sd a0,48(sp) + c0040750: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28552 evaluate_resolving_funcs[1] = JS_NewCFunctionData(ctx, js_load_module_rejected, 0, 0, 3, func_data); - c0040582: 4601 li a2,0 - c0040584: ffffa597 auipc a1,0xffffa - c0040588: d8a58593 addi a1,a1,-630 # c003a30e - c004058c: 8522 mv a0,s0 - c004058e: c69e80ef jal ra,c00291f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28545 + c0040752: 4601 li a2,0 + c0040754: ffffa597 auipc a1,0xffffa + c0040758: d8a58593 addi a1,a1,-630 # c003a4de + c004075c: 8522 mv a0,s0 + c004075e: c69e80ef jal ra,c00293c6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28553 JS_FreeValue(ctx, func_obj); - c0040592: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28544 + c0040762: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28552 evaluate_resolving_funcs[1] = JS_NewCFunctionData(ctx, js_load_module_rejected, 0, 0, 3, func_data); - c0040594: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28545 + c0040764: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28553 JS_FreeValue(ctx, func_obj); - c0040596: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28544 + c0040766: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28552 evaluate_resolving_funcs[1] = JS_NewCFunctionData(ctx, js_load_module_rejected, 0, 0, 3, func_data); - c0040598: e0aa sd a0,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28545 + c0040768: e0aa sd a0,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28553 JS_FreeValue(ctx, func_obj); - c004059a: 8522 mv a0,s0 - c004059c: d9cc70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28546 + c004076a: 8522 mv a0,s0 + c004076c: cbac70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28554 ret = js_promise_then(ctx, evaluate_promise, 2, (JSValueConst *)evaluate_resolving_funcs); - c00405a0: 6622 ld a2,8(sp) - c00405a2: 6582 ld a1,0(sp) - c00405a4: 1818 addi a4,sp,48 - c00405a6: 4689 li a3,2 - c00405a8: 8522 mv a0,s0 - c00405aa: 872fa0ef jal ra,c003a61c - c00405ae: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28547 + c0040770: 6622 ld a2,8(sp) + c0040772: 6582 ld a1,0(sp) + c0040774: 1818 addi a4,sp,48 + c0040776: 4689 li a3,2 + c0040778: 8522 mv a0,s0 + c004077a: 872fa0ef jal ra,c003a7ec + c004077e: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28555 JS_FreeValue(ctx, ret); - c00405b0: 85aa mv a1,a0 - c00405b2: 8522 mv a0,s0 - c00405b4: d84c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28548 + c0040780: 85aa mv a1,a0 + c0040782: 8522 mv a0,s0 + c0040784: ca2c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28556 JS_FreeValue(ctx, evaluate_resolving_funcs[0]); - c00405b8: 75c2 ld a1,48(sp) - c00405ba: 7662 ld a2,56(sp) - c00405bc: 8522 mv a0,s0 - c00405be: d7ac70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28549 + c0040788: 75c2 ld a1,48(sp) + c004078a: 7662 ld a2,56(sp) + c004078c: 8522 mv a0,s0 + c004078e: c98c70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28557 JS_FreeValue(ctx, evaluate_resolving_funcs[1]); - c00405c2: 6586 ld a1,64(sp) - c00405c4: 6626 ld a2,72(sp) - c00405c6: 8522 mv a0,s0 - c00405c8: d70c70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28550 + c0040792: 6586 ld a1,64(sp) + c0040794: 6626 ld a2,72(sp) + c0040796: 8522 mv a0,s0 + c0040798: c8ec70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28558 JS_FreeValue(ctx, evaluate_promise); - c00405cc: 6582 ld a1,0(sp) - c00405ce: 6622 ld a2,8(sp) - c00405d0: b789 j c0040512 + c004079c: 6582 ld a1,0(sp) + c004079e: 6622 ld a2,8(sp) + c00407a0: b789 j c00406e2 -00000000c00405d2 : +00000000c00407a2 : js_dynamic_import_job(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28572 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28580 { - c00405d2: 7175 addi sp,sp,-144 - c00405d4: fca6 sd s1,120(sp) - c00405d6: 84b2 mv s1,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 + c00407a2: 7175 addi sp,sp,-144 + c00407a4: fca6 sd s1,120(sp) + c00407a6: 84b2 mv s1,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28583 JSValueConst specifier = argv[3]; - c00405d8: 789c ld a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28572 + c00407a8: 789c ld a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28580 { - c00405da: e122 sd s0,128(sp) - c00405dc: e506 sd ra,136(sp) - c00405de: f8ca sd s2,112(sp) - c00405e0: f4ce sd s3,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28574 + c00407aa: e122 sd s0,128(sp) + c00407ac: e506 sd ra,136(sp) + c00407ae: f8ca sd s2,112(sp) + c00407b0: f4ce sd s3,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28582 JSValueConst basename_val = argv[2]; - c00405e2: 720c ld a1,32(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 + c00407b2: 720c ld a1,32(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28583 JSValueConst specifier = argv[3]; - c00405e4: e83e sd a5,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28574 + c00407b4: e83e sd a5,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28582 JSValueConst basename_val = argv[2]; - c00405e6: 7610 ld a2,40(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 + c00407b6: 7610 ld a2,40(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28583 JSValueConst specifier = argv[3]; - c00405e8: 7c9c ld a5,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28572 + c00407b8: 7c9c ld a5,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28580 { - c00405ea: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28579 + c00407ba: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28587 if (!JS_IsString(basename_val)) { - c00405ec: 0006071b sext.w a4,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 + c00407bc: 0006071b sext.w a4,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28583 JSValueConst specifier = argv[3]; - c00405f0: ec3e sd a5,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28579 + c00407c0: ec3e sd a5,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28587 if (!JS_IsString(basename_val)) { - c00405f2: 57e5 li a5,-7 - c00405f4: 04f70363 beq a4,a5,c004063a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28580 + c00407c2: 57e5 li a5,-7 + c00407c4: 04f70363 beq a4,a5,c004080a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28588 JS_ThrowTypeError(ctx, "no function filename for import()"); - c00405f8: 00020597 auipc a1,0x20 - c00405fc: 63858593 addi a1,a1,1592 # c0060c30 - c0040600: df7d20ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28576 + c00407c8: 00020597 auipc a1,0x20 + c00407cc: 6c858593 addi a1,a1,1736 # c0060e90 + c00407d0: d15d20ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28584 const char *basename = NULL, *filename; - c0040604: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28597 + c00407d4: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28605 err = JS_GetException(ctx); - c0040606: 8522 mv a0,s0 - c0040608: 8c0ca0ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28598 + c00407d6: 8522 mv a0,s0 + c00407d8: fdfc90ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28606 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c004060c: 6c90 ld a2,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28597 + c00407dc: 6c90 ld a2,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28605 err = JS_GetException(ctx); - c004060e: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28598 + c00407de: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28606 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040610: 688c ld a1,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28597 + c00407e0: 688c ld a1,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28605 err = JS_GetException(ctx); - c0040612: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28598 + c00407e2: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28606 ret = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040614: 03010813 addi a6,sp,48 - c0040618: 4785 li a5,1 - c004061a: 4681 li a3,0 - c004061c: 470d li a4,3 - c004061e: 8522 mv a0,s0 - c0040620: 8e6f90ef jal ra,c0039706 - c0040624: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28600 + c00407e4: 03010813 addi a6,sp,48 + c00407e8: 4785 li a5,1 + c00407ea: 4681 li a3,0 + c00407ec: 470d li a4,3 + c00407ee: 8522 mv a0,s0 + c00407f0: 8e6f90ef jal ra,c00398d6 + c00407f4: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28608 JS_FreeValue(ctx, ret); /* XXX: what to do if exception ? */ - c0040626: 85aa mv a1,a0 - c0040628: 8522 mv a0,s0 - c004062a: d0ec70ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28601 + c00407f6: 85aa mv a1,a0 + c00407f8: 8522 mv a0,s0 + c00407fa: c2cc70ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28609 JS_FreeValue(ctx, err); - c004062e: 75c2 ld a1,48(sp) - c0040630: 7662 ld a2,56(sp) - c0040632: 8522 mv a0,s0 - c0040634: d04c70ef jal ra,c0007b38 - c0040638: a035 j c0040664 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28583 + c00407fe: 75c2 ld a1,48(sp) + c0040800: 7662 ld a2,56(sp) + c0040802: 8522 mv a0,s0 + c0040804: c22c70ef jal ra,c0007c26 + c0040808: a035 j c0040834 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28591 basename = JS_ToCString(ctx, basename_val); - c004063a: bc5de0ef jal ra,c001f1fe - c004063e: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28584 + c004080a: bc5de0ef jal ra,c001f3ce + c004080e: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28592 if (!basename) - c0040640: d179 beqz a0,c0040606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28587 + c0040810: d179 beqz a0,c00407d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28595 filename = JS_ToCString(ctx, specifier); - c0040642: 65c2 ld a1,16(sp) - c0040644: 6662 ld a2,24(sp) - c0040646: 8522 mv a0,s0 - c0040648: bb7de0ef jal ra,c001f1fe - c004064c: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28588 + c0040812: 65c2 ld a1,16(sp) + c0040814: 6662 ld a2,24(sp) + c0040816: 8522 mv a0,s0 + c0040818: bb7de0ef jal ra,c001f3ce + c004081c: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28596 if (!filename) - c004064e: dd45 beqz a0,c0040606 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28591 + c004081e: dd45 beqz a0,c00407d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28599 JS_LoadModuleInternal(ctx, basename, filename, - c0040650: 862a mv a2,a0 - c0040652: 85ca mv a1,s2 - c0040654: 8522 mv a0,s0 - c0040656: 86a6 mv a3,s1 - c0040658: e5fff0ef jal ra,c00404b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28593 + c0040820: 862a mv a2,a0 + c0040822: 85ca mv a1,s2 + c0040824: 8522 mv a0,s0 + c0040826: 86a6 mv a3,s1 + c0040828: e5fff0ef jal ra,c0040686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28601 JS_FreeCString(ctx, filename); - c004065c: 85ce mv a1,s3 - c004065e: 8522 mv a0,s0 - c0040660: 821c80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28602 + c004082c: 85ce mv a1,s3 + c004082e: 8522 mv a0,s0 + c0040830: f3ec80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28610 JS_FreeCString(ctx, basename); - c0040664: 85ca mv a1,s2 - c0040666: 8522 mv a0,s0 - c0040668: 819c80ef jal ra,c0008e80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28604 -} - c004066c: 60aa ld ra,136(sp) - c004066e: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28603 + c0040834: 85ca mv a1,s2 + c0040836: 8522 mv a0,s0 + c0040838: f36c80ef jal ra,c0008f6e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28612 +} + c004083c: 60aa ld ra,136(sp) + c004083e: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28611 return JS_UNDEFINED; - c0040670: 478d li a5,3 - c0040672: e882 sd zero,80(sp) - c0040674: ecbe sd a5,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28604 -} - c0040676: 6546 ld a0,80(sp) - c0040678: 65e6 ld a1,88(sp) - c004067a: 74e6 ld s1,120(sp) - c004067c: 7946 ld s2,112(sp) - c004067e: 79a6 ld s3,104(sp) - c0040680: 6149 addi sp,sp,144 - c0040682: 8082 ret - -00000000c0040684 <__JS_EvalInternal>: + c0040840: 478d li a5,3 + c0040842: e882 sd zero,80(sp) + c0040844: ecbe sd a5,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28612 +} + c0040846: 6546 ld a0,80(sp) + c0040848: 65e6 ld a1,88(sp) + c004084a: 74e6 ld s1,120(sp) + c004084c: 7946 ld s2,112(sp) + c004084e: 79a6 ld s3,104(sp) + c0040850: 6149 addi sp,sp,144 + c0040852: 8082 ret + +00000000c0040854 <__JS_EvalInternal>: __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34360 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34368 { - c0040684: 712d addi sp,sp,-288 - c0040686: e24a sd s2,256(sp) - c0040688: e02e sd a1,0(sp) - c004068a: 892a mv s2,a0 - c004068c: e432 sd a2,8(sp) + c0040854: 712d addi sp,sp,-288 + c0040856: e24a sd s2,256(sp) + c0040858: e02e sd a1,0(sp) + c004085a: 892a mv s2,a0 + c004085c: e432 sd a2,8(sp) js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34317 memset(s, 0, sizeof(*s)); - c004068e: 4581 li a1,0 - c0040690: 07800613 li a2,120 - c0040694: 00a8 addi a0,sp,72 + c004085e: 4581 li a1,0 + c0040860: 07800613 li a2,120 + c0040864: 00a8 addi a0,sp,72 __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34360 -{ - c0040696: ee06 sd ra,280(sp) - c0040698: ea22 sd s0,272(sp) - c004069a: e626 sd s1,264(sp) - c004069c: 8436 mv s0,a3 - c004069e: 84ba mv s1,a4 - c00406a0: f9d2 sd s4,240(sp) - c00406a2: edde sd s7,216(sp) - c00406a4: 8a42 mv s4,a6 - c00406a6: e5e6 sd s9,200(sp) - c00406a8: e1ea sd s10,192(sp) - c00406aa: 8cbe mv s9,a5 - c00406ac: 8bc6 mv s7,a7 - c00406ae: fdce sd s3,248(sp) - c00406b0: f5d6 sd s5,232(sp) - c00406b2: f1da sd s6,224(sp) - c00406b4: e9e2 sd s8,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34368 +{ + c0040866: ee06 sd ra,280(sp) + c0040868: ea22 sd s0,272(sp) + c004086a: e626 sd s1,264(sp) + c004086c: 8436 mv s0,a3 + c004086e: 84ba mv s1,a4 + c0040870: f9d2 sd s4,240(sp) + c0040872: edde sd s7,216(sp) + c0040874: 8a42 mv s4,a6 + c0040876: e5e6 sd s9,200(sp) + c0040878: e1ea sd s10,192(sp) + c004087a: 8cbe mv s9,a5 + c004087c: 8bc6 mv s7,a7 + c004087e: fdce sd s3,248(sp) + c0040880: f5d6 sd s5,232(sp) + c0040882: f1da sd s6,224(sp) + c0040884: e9e2 sd s8,208(sp) js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34309 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34317 memset(s, 0, sizeof(*s)); - c00406b6: 1ba160ef jal ra,c0056870 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34312 + c0040886: 1ba160ef jal ra,c0056a40 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34320 s->line_num = 1; - c00406ba: 4605 li a2,1 - c00406bc: c6b2 sw a2,76(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c004088a: 4605 li a2,1 + c004088c: c6b2 sw a2,76(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c00406be: 1602 slli a2,a2,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34314 + c004088e: 1602 slli a2,a2,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 s->buf_end = s->buf_ptr + input_len; - c00406c0: 009405b3 add a1,s0,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c0040890: 009405b3 add a1,s0,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c00406c4: 02060613 addi a2,a2,32 + c0040894: 02060613 addi a2,a2,32 __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34371 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34379 skip_shebang(&s->buf_ptr, s->buf_end); - c00406c8: 0928 addi a0,sp,152 + c0040898: 0928 addi a0,sp,152 js_parse_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34310 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34318 s->ctx = ctx; - c00406ca: e0ca sd s2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34311 + c004089a: e0ca sd s2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34319 s->filename = filename; - c00406cc: e8e6 sd s9,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34313 + c004089c: e8e6 sd s9,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34321 s->buf_ptr = (const uint8_t *)input; - c00406ce: ed22 sd s0,152(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34314 + c004089e: ed22 sd s0,152(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34322 s->buf_end = s->buf_ptr + input_len; - c00406d0: f12e sd a1,160(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34315 + c00408a0: f12e sd a1,160(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34323 s->token.val = ' '; - c00406d2: ecb2 sd a2,88(sp) + c00408a2: ecb2 sd a2,88(sp) __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34371 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34379 skip_shebang(&s->buf_ptr, s->buf_end); - c00406d4: 859c40ef jal ra,c0004f2c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34373 + c00408a4: e88c40ef jal ra,c0004f2c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34381 eval_type = flags & JS_EVAL_TYPE_MASK; - c00406d8: 003a7d13 andi s10,s4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34375 + c00408a8: 003a7d13 andi s10,s4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34383 if (eval_type == JS_EVAL_TYPE_DIRECT) { - c00406dc: 4789 li a5,2 - c00406de: 12fd1763 bne s10,a5,c004080c <__JS_EvalInternal+0x188> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34377 + c00408ac: 4789 li a5,2 + c00408ae: 12fd1763 bne s10,a5,c00409dc <__JS_EvalInternal+0x188> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34385 sf = ctx->rt->current_stack_frame; - c00406e2: 01893783 ld a5,24(s2) - c00406e6: 0f87ba83 ld s5,248(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34378 + c00408b2: 01893783 ld a5,24(s2) + c00408b6: 0f87ba83 ld s5,248(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34386 assert(sf != NULL); - c00406ea: 000a9c63 bnez s5,c0040702 <__JS_EvalInternal+0x7e> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34378 (discriminator 1) - c00406ee: 65a1 lui a1,0x8 - c00406f0: 4601 li a2,0 - c00406f2: 64a58593 addi a1,a1,1610 # 864a <__clzdi2-0xbfff79b6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34379 (discriminator 1) + c00408ba: 000a9c63 bnez s5,c00408d2 <__JS_EvalInternal+0x7e> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34386 (discriminator 1) + c00408be: 65a1 lui a1,0x8 + c00408c0: 4601 li a2,0 + c00408c2: 65258593 addi a1,a1,1618 # 8652 <__clzdi2-0xbfff79ae> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34387 (discriminator 1) assert(JS_VALUE_GET_TAG(sf->cur_func) == JS_TAG_OBJECT); - c00406f6: 0001c517 auipc a0,0x1c - c00406fa: 38250513 addi a0,a0,898 # c005ca78 - c00406fe: 31a130ef jal ra,c0053a18 <__assert> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34379 (discriminator 2) - c0040702: 010aa703 lw a4,16(s5) - c0040706: 57fd li a5,-1 - c0040708: 00f70763 beq a4,a5,c0040716 <__JS_EvalInternal+0x92> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34379 (discriminator 1) - c004070c: 65a1 lui a1,0x8 - c004070e: 4601 li a2,0 - c0040710: 64b58593 addi a1,a1,1611 # 864b <__clzdi2-0xbfff79b5> - c0040714: b7cd j c00406f6 <__JS_EvalInternal+0x72> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34380 (discriminator 2) + c00408c6: 0001c517 auipc a0,0x1c + c00408ca: 38250513 addi a0,a0,898 # c005cc48 + c00408ce: 31a130ef jal ra,c0053be8 <__assert> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34387 (discriminator 2) + c00408d2: 010aa703 lw a4,16(s5) + c00408d6: 57fd li a5,-1 + c00408d8: 00f70763 beq a4,a5,c00408e6 <__JS_EvalInternal+0x92> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34387 (discriminator 1) + c00408dc: 65a1 lui a1,0x8 + c00408de: 4601 li a2,0 + c00408e0: 65358593 addi a1,a1,1619 # 8653 <__clzdi2-0xbfff79ad> + c00408e4: b7cd j c00408c6 <__JS_EvalInternal+0x72> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34388 (discriminator 2) p = JS_VALUE_GET_OBJ(sf->cur_func); - c0040716: 008ab403 ld s0,8(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34381 (discriminator 2) + c00408e6: 008ab403 ld s0,8(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34389 (discriminator 2) assert(js_class_has_bytecode(p->class_id)); - c004071a: 00645503 lhu a0,6(s0) - c004071e: 834c50ef jal ra,c0005752 - c0040722: e511 bnez a0,c004072e <__JS_EvalInternal+0xaa> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34381 (discriminator 1) - c0040724: 65a1 lui a1,0x8 - c0040726: 4601 li a2,0 - c0040728: 64d58593 addi a1,a1,1613 # 864d <__clzdi2-0xbfff79b3> - c004072c: b7e9 j c00406f6 <__JS_EvalInternal+0x72> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34382 (discriminator 2) + c00408ea: 00645503 lhu a0,6(s0) + c00408ee: f53c40ef jal ra,c0005840 + c00408f2: e511 bnez a0,c00408fe <__JS_EvalInternal+0xaa> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34389 (discriminator 1) + c00408f4: 65a1 lui a1,0x8 + c00408f6: 4601 li a2,0 + c00408f8: 65558593 addi a1,a1,1621 # 8655 <__clzdi2-0xbfff79ab> + c00408fc: b7e9 j c00408c6 <__JS_EvalInternal+0x72> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34390 (discriminator 2) b = p->u.func.function_bytecode; - c004072e: 7804 ld s1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34383 (discriminator 2) + c00408fe: 7804 ld s1,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34391 (discriminator 2) var_refs = p->u.func.var_refs; - c0040730: 03843b03 ld s6,56(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34374 (discriminator 2) + c0040900: 03843b03 ld s6,56(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34382 (discriminator 2) m = NULL; - c0040734: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34384 (discriminator 2) + c0040904: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34392 (discriminator 2) js_mode = b->js_mode; - c0040736: 0184cc03 lbu s8,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34404 + c0040906: 0184cc03 lbu s8,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34412 fd = js_new_function_def(ctx, NULL, TRUE, FALSE, filename, 1); - c004073a: 4785 li a5,1 - c004073c: 8766 mv a4,s9 - c004073e: 4681 li a3,0 - c0040740: 4605 li a2,1 - c0040742: 4581 li a1,0 - c0040744: 854a mv a0,s2 - c0040746: 838d90ef jal ra,c001977e - c004074a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34405 + c004090a: 4785 li a5,1 + c004090c: 8766 mv a4,s9 + c004090e: 4681 li a3,0 + c0040910: 4605 li a2,1 + c0040912: 4581 li a1,0 + c0040914: 854a mv a0,s2 + c0040916: 838d90ef jal ra,c001994e + c004091a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34413 if (!fd) - c004074c: 16050763 beqz a0,c00408ba <__JS_EvalInternal+0x236> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34409 + c004091c: 16050763 beqz a0,c0040a8a <__JS_EvalInternal+0x236> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34417 fd->has_this_binding = (eval_type != JS_EVAL_TYPE_DIRECT); - c0040750: ffed0793 addi a5,s10,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34407 + c0040920: ffed0793 addi a5,s10,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34415 s->cur_func = fd; - c0040754: f52a sd a0,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34409 + c0040924: f52a sd a0,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34417 fd->has_this_binding = (eval_type != JS_EVAL_TYPE_DIRECT); - c0040756: 00f037b3 snez a5,a5 - c004075a: d17c sw a5,100(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34410 + c0040926: 00f037b3 snez a5,a5 + c004092a: d17c sw a5,100(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34418 fd->backtrace_barrier = ((flags & JS_EVAL_FLAG_BACKTRACE_BARRIER) != 0); - c004075c: 406a579b sraiw a5,s4,0x6 - c0040760: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34408 + c004092c: 406a579b sraiw a5,s4,0x6 + c0040930: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34416 fd->eval_type = eval_type; - c0040762: 03a52e23 sw s10,60(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34409 + c0040932: 03a52e23 sw s10,60(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34417 fd->has_this_binding = (eval_type != JS_EVAL_TYPE_DIRECT); - c0040766: 4709 li a4,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34410 + c0040936: 4709 li a4,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34418 fd->backtrace_barrier = ((flags & JS_EVAL_FLAG_BACKTRACE_BARRIER) != 0); - c0040768: 08f52023 sw a5,128(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34411 + c0040938: 08f52023 sw a5,128(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34419 if (eval_type == JS_EVAL_TYPE_DIRECT) { - c004076c: 10ed1263 bne s10,a4,c0040870 <__JS_EvalInternal+0x1ec> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34412 + c004093c: 10ed1263 bne s10,a4,c0040a40 <__JS_EvalInternal+0x1ec> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34420 fd->new_target_allowed = b->new_target_allowed; - c0040770: 6c9c ld a5,24(s1) - c0040772: 83b9 srli a5,a5,0xe - c0040774: 8b85 andi a5,a5,1 - c0040776: d53c sw a5,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34413 + c0040940: 6c9c ld a5,24(s1) + c0040942: 83b9 srli a5,a5,0xe + c0040944: 8b85 andi a5,a5,1 + c0040946: d53c sw a5,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34421 fd->super_call_allowed = b->super_call_allowed; - c0040778: 6c9c ld a5,24(s1) - c004077a: 83bd srli a5,a5,0xf - c004077c: 8b85 andi a5,a5,1 - c004077e: d57c sw a5,108(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34414 + c0040948: 6c9c ld a5,24(s1) + c004094a: 83bd srli a5,a5,0xf + c004094c: 8b85 andi a5,a5,1 + c004094e: d57c sw a5,108(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34422 fd->super_allowed = b->super_allowed; - c0040780: 01a4d783 lhu a5,26(s1) - c0040784: 8b85 andi a5,a5,1 - c0040786: d93c sw a5,112(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34415 - fd->arguments_allowed = b->arguments_allowed; - c0040788: 6c9c ld a5,24(s1) - c004078a: 83c5 srli a5,a5,0x11 - c004078c: 8b85 andi a5,a5,1 - c004078e: d97c sw a5,116(a0) + c0040950: 01a4d783 lhu a5,26(s1) + c0040954: 8b85 andi a5,a5,1 + c0040956: d93c sw a5,112(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34423 + fd->arguments_allowed = b->arguments_allowed; + c0040958: 6c9c ld a5,24(s1) + c004095a: 83c5 srli a5,a5,0x11 + c004095c: 8b85 andi a5,a5,1 + c004095e: d97c sw a5,116(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34431 fd->func_name = JS_DupAtom(ctx, JS_ATOM__eval_); - c0040790: 05100793 li a5,81 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34422 + c0040960: 05100793 li a5,81 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34430 fd->js_mode = js_mode; - c0040794: 09840323 sb s8,134(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34423 + c0040964: 09840323 sb s8,134(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34431 fd->func_name = JS_DupAtom(ctx, JS_ATOM__eval_); - c0040798: 08f42423 sw a5,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34424 + c0040968: 08f42423 sw a5,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34432 if (b) { - c004079c: e0e5 bnez s1,c004087c <__JS_EvalInternal+0x1f8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34428 + c004096c: e0e5 bnez s1,c0040a4c <__JS_EvalInternal+0x1f8> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34436 fd->module = m; - c004079e: 21343c23 sd s3,536(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34429 + c004096e: 21343c23 sd s3,536(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34437 if (m != NULL || (flags & JS_EVAL_FLAG_ASYNC)) { - c00407a2: 00099563 bnez s3,c00407ac <__JS_EvalInternal+0x128> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34429 (discriminator 1) - c00407a6: 080a7793 andi a5,s4,128 - c00407aa: c791 beqz a5,c00407b6 <__JS_EvalInternal+0x132> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34430 + c0040972: 00099563 bnez s3,c004097c <__JS_EvalInternal+0x128> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34437 (discriminator 1) + c0040976: 080a7793 andi a5,s4,128 + c004097a: c791 beqz a5,c0040986 <__JS_EvalInternal+0x132> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34438 fd->in_function_body = TRUE; - c00407ac: 4785 li a5,1 - c00407ae: dc7c sw a5,124(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34431 + c004097c: 4785 li a5,1 + c004097e: dc7c sw a5,124(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34439 fd->func_kind = JS_FUNC_ASYNC; - c00407b0: 4789 li a5,2 - c00407b2: 08f40223 sb a5,132(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34433 + c0040980: 4789 li a5,2 + c0040982: 08f40223 sb a5,132(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34441 s->is_module = (m != NULL); - c00407b6: 013037b3 snez a5,s3 - c00407ba: d93e sw a5,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34436 + c0040986: 013037b3 snez a5,s3 + c004098a: d93e sw a5,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34444 push_scope(s); /* body scope */ - c00407bc: 0088 addi a0,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34434 + c004098c: 0088 addi a0,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34442 s->allow_html_comments = !s->is_module; - c00407be: 0019b793 seqz a5,s3 - c00407c2: db3e sw a5,180(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34436 + c004098e: 0019b793 seqz a5,s3 + c0040992: db3e sw a5,180(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34444 push_scope(s); /* body scope */ - c00407c4: d49d70ef jal ra,c001850c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34437 + c0040994: d49d70ef jal ra,c00186dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34445 fd->body_scope = fd->scope_level; - c00407c8: 0e042783 lw a5,224(s0) + c0040998: 0e042783 lw a5,224(s0) js_parse_program(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34258 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34266 if (next_token(s)) - c00407cc: 0088 addi a0,sp,64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34255 + c004099c: 0088 addi a0,sp,64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34263 JSFunctionDef *fd = s->cur_func; - c00407ce: 74aa ld s1,168(sp) + c004099e: 74aa ld s1,168(sp) __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34437 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34445 fd->body_scope = fd->scope_level; - c00407d0: 10f42c23 sw a5,280(s0) + c00409a0: 10f42c23 sw a5,280(s0) js_parse_program(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34258 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34266 if (next_token(s)) - c00407d4: bc2e60ef jal ra,c0026b96 - c00407d8: e969 bnez a0,c00408aa <__JS_EvalInternal+0x226> + c00409a4: bc2e60ef jal ra,c0026d66 + c00409a8: e969 bnez a0,c0040a7a <__JS_EvalInternal+0x226> js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33510 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:33518 if (s->token.val != TOK_STRING) - c00407da: 4766 lw a4,88(sp) - c00407dc: f8100793 li a5,-127 - c00407e0: 36f70363 beq a4,a5,c0040b46 <__JS_EvalInternal+0x4c2> + c00409aa: 4766 lw a4,88(sp) + c00409ac: f8100793 li a5,-127 + c00409b0: 36f70363 beq a4,a5,c0040d16 <__JS_EvalInternal+0x4c2> js_parse_program(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34265 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34273 (fd->eval_type == JS_EVAL_TYPE_MODULE) || - c00407e4: 5cd8 lw a4,60(s1) - c00407e6: 4785 li a5,1 - c00407e8: 36e7e563 bltu a5,a4,c0040b52 <__JS_EvalInternal+0x4ce> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34264 + c00409b4: 5cd8 lw a4,60(s1) + c00409b6: 4785 li a5,1 + c00409b8: 36e7e563 bltu a5,a4,c0040d22 <__JS_EvalInternal+0x4ce> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34272 fd->is_global_var = (fd->eval_type == JS_EVAL_TYPE_GLOBAL) || - c00407ec: c0bc sw a5,64(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34268 + c00409bc: c0bc sw a5,64(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34276 if (!s->is_module) { - c00407ee: 57ca lw a5,176(sp) - c00407f0: eb99 bnez a5,c0040806 <__JS_EvalInternal+0x182> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34270 + c00409be: 57ca lw a5,176(sp) + c00409c0: eb99 bnez a5,c00409d6 <__JS_EvalInternal+0x182> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34278 fd->eval_ret_idx = idx = add_var(s->ctx, fd, JS_ATOM__ret_); - c00407f2: 6506 ld a0,64(sp) - c00407f4: 05200613 li a2,82 - c00407f8: 85a6 mv a1,s1 - c00407fa: f6ee10ef jal ra,c0021f68 - c00407fe: 0ca4a423 sw a0,200(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34271 + c00409c2: 6506 ld a0,64(sp) + c00409c4: 05200613 li a2,82 + c00409c8: 85a6 mv a1,s1 + c00409ca: f6ee10ef jal ra,c0022138 + c00409ce: 0ca4a423 sw a0,200(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34279 if (idx < 0) - c0040802: 0a054463 bltz a0,c00408aa <__JS_EvalInternal+0x226> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34275 + c00409d2: 0a054463 bltz a0,c0040a7a <__JS_EvalInternal+0x226> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34283 while (s->token.val != TOK_EOF) { - c0040806: faa00b93 li s7,-86 - c004080a: aeb9 j c0040b68 <__JS_EvalInternal+0x4e4> + c00409d6: faa00b93 li s7,-86 + c00409da: aeb9 j c0040d38 <__JS_EvalInternal+0x4e4> __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34390 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34398 if (flags & JS_EVAL_FLAG_STRICT) - c004080c: 403a5c1b sraiw s8,s4,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34392 + c00409dc: 403a5c1b sraiw s8,s4,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34400 if (flags & JS_EVAL_FLAG_STRIP) - c0040810: 010a7793 andi a5,s4,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34391 + c00409e0: 010a7793 andi a5,s4,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34399 js_mode |= JS_MODE_STRICT; - c0040814: 001c7c13 andi s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34392 + c00409e4: 001c7c13 andi s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34400 if (flags & JS_EVAL_FLAG_STRIP) - c0040818: c399 beqz a5,c004081e <__JS_EvalInternal+0x19a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34393 + c00409e8: c399 beqz a5,c00409ee <__JS_EvalInternal+0x19a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34401 js_mode |= JS_MODE_STRIP; - c004081a: 002c6c13 ori s8,s8,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34394 + c00409ea: 002c6c13 ori s8,s8,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34402 if (eval_type == JS_EVAL_TYPE_MODULE) { - c004081e: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34374 + c00409ee: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34382 m = NULL; - c0040820: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34394 + c00409f0: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34402 if (eval_type == JS_EVAL_TYPE_MODULE) { - c0040822: 04fd1363 bne s10,a5,c0040868 <__JS_EvalInternal+0x1e4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34395 + c00409f2: 04fd1363 bne s10,a5,c0040a38 <__JS_EvalInternal+0x1e4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34403 JSAtom module_name = JS_NewAtom(ctx, filename); - c0040826: 85e6 mv a1,s9 - c0040828: 854a mv a0,s2 - c004082a: c17d80ef jal ra,c0019440 - c004082e: 0005059b sext.w a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34396 + c00409f6: 85e6 mv a1,s9 + c00409f8: 854a mv a0,s2 + c00409fa: c17d80ef jal ra,c0019610 + c00409fe: 0005059b sext.w a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34404 if (module_name == JS_ATOM_NULL) - c0040832: e585 bnez a1,c004085a <__JS_EvalInternal+0x1d6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34397 + c0040a02: e585 bnez a1,c0040a2a <__JS_EvalInternal+0x1d6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34405 return JS_EXCEPTION; - c0040834: 4799 li a5,6 - c0040836: f802 sd zero,48(sp) - c0040838: fc3e sd a5,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34472 (discriminator 1) -} - c004083a: 60f2 ld ra,280(sp) - c004083c: 6452 ld s0,272(sp) - c004083e: 7542 ld a0,48(sp) - c0040840: 75e2 ld a1,56(sp) - c0040842: 64b2 ld s1,264(sp) - c0040844: 6912 ld s2,256(sp) - c0040846: 79ee ld s3,248(sp) - c0040848: 7a4e ld s4,240(sp) - c004084a: 7aae ld s5,232(sp) - c004084c: 7b0e ld s6,224(sp) - c004084e: 6bee ld s7,216(sp) - c0040850: 6c4e ld s8,208(sp) - c0040852: 6cae ld s9,200(sp) - c0040854: 6d0e ld s10,192(sp) - c0040856: 6115 addi sp,sp,288 - c0040858: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34398 + c0040a04: 4799 li a5,6 + c0040a06: f802 sd zero,48(sp) + c0040a08: fc3e sd a5,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34480 (discriminator 1) +} + c0040a0a: 60f2 ld ra,280(sp) + c0040a0c: 6452 ld s0,272(sp) + c0040a0e: 7542 ld a0,48(sp) + c0040a10: 75e2 ld a1,56(sp) + c0040a12: 64b2 ld s1,264(sp) + c0040a14: 6912 ld s2,256(sp) + c0040a16: 79ee ld s3,248(sp) + c0040a18: 7a4e ld s4,240(sp) + c0040a1a: 7aae ld s5,232(sp) + c0040a1c: 7b0e ld s6,224(sp) + c0040a1e: 6bee ld s7,216(sp) + c0040a20: 6c4e ld s8,208(sp) + c0040a22: 6cae ld s9,200(sp) + c0040a24: 6d0e ld s10,192(sp) + c0040a26: 6115 addi sp,sp,288 + c0040a28: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34406 m = js_new_module_def(ctx, module_name); - c004085a: 854a mv a0,s2 - c004085c: 84fd50ef jal ra,c00160aa - c0040860: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34401 + c0040a2a: 854a mv a0,s2 + c0040a2c: 84fd50ef jal ra,c001627a + c0040a30: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34409 js_mode |= JS_MODE_STRICT; - c0040862: 001c6c13 ori s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34399 + c0040a32: 001c6c13 ori s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34407 if (!m) - c0040866: d579 beqz a0,c0040834 <__JS_EvalInternal+0x1b0> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34387 + c0040a36: d579 beqz a0,c0040a04 <__JS_EvalInternal+0x1b0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34395 b = NULL; - c0040868: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34388 + c0040a38: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34396 var_refs = NULL; - c004086a: 4b01 li s6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34386 + c0040a3a: 4b01 li s6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34394 sf = NULL; - c004086c: 4a81 li s5,0 - c004086e: b5f1 j c004073a <__JS_EvalInternal+0xb6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34419 + c0040a3c: 4a81 li s5,0 + c0040a3e: b5f1 j c004090a <__JS_EvalInternal+0xb6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34427 fd->super_allowed = FALSE; - c0040870: 4785 li a5,1 - c0040872: 1782 slli a5,a5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34417 + c0040a40: 4785 li a5,1 + c0040a42: 1782 slli a5,a5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34425 fd->new_target_allowed = FALSE; - c0040874: 06053423 sd zero,104(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34419 + c0040a44: 06053423 sd zero,104(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34427 fd->super_allowed = FALSE; - c0040878: f93c sd a5,112(a0) - c004087a: bf19 j c0040790 <__JS_EvalInternal+0x10c> + c0040a48: f93c sd a5,112(a0) + c0040a4a: bf19 j c0040960 <__JS_EvalInternal+0x10c> add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31070 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31078 count = b->arg_count + b->var_count + b->closure_var_count; - c004087c: 0424d703 lhu a4,66(s1) - c0040880: 0404d783 lhu a5,64(s1) - c0040884: 9fb9 addw a5,a5,a4 - c0040886: 4cf8 lw a4,92(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31071 + c0040a4c: 0424d703 lhu a4,66(s1) + c0040a50: 0404d783 lhu a5,64(s1) + c0040a54: 9fb9 addw a5,a5,a4 + c0040a56: 4cf8 lw a4,92(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31079 s->closure_var = NULL; - c0040888: 1a043023 sd zero,416(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31072 + c0040a58: 1a043023 sd zero,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31080 s->closure_var_count = 0; - c004088c: 18042c23 sw zero,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31070 + c0040a5c: 18042c23 sw zero,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31078 count = b->arg_count + b->var_count + b->closure_var_count; - c0040890: 00e785bb addw a1,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31073 + c0040a60: 00e785bb addw a1,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31081 s->closure_var_size = count; - c0040894: 18b42e23 sw a1,412(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31074 + c0040a64: 18b42e23 sw a1,412(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31082 if (count == 0) - c0040898: f00583e3 beqz a1,c004079e <__JS_EvalInternal+0x11a> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31076 + c0040a68: f00583e3 beqz a1,c004096e <__JS_EvalInternal+0x11a> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31084 s->closure_var = js_malloc(ctx, sizeof(s->closure_var[0]) * count); - c004089c: 058e slli a1,a1,0x3 - c004089e: 854a mv a0,s2 - c00408a0: bacd40ef jal ra,c0014c4c - c00408a4: 1aa43023 sd a0,416(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31077 + c0040a6c: 058e slli a1,a1,0x3 + c0040a6e: 854a mv a0,s2 + c0040a70: acad40ef jal ra,c0014d3a + c0040a74: 1aa43023 sd a0,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31085 if (!s->closure_var) - c00408a8: e155 bnez a0,c004094c <__JS_EvalInternal+0x2c8> + c0040a78: e155 bnez a0,c0040b1c <__JS_EvalInternal+0x2c8> __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34442 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34450 free_token(s, &s->token); - c00408aa: 08ac addi a1,sp,88 - c00408ac: 0088 addi a0,sp,64 - c00408ae: e2cc80ef jal ra,c0008eda -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34443 + c0040a7a: 08ac addi a1,sp,88 + c0040a7c: 0088 addi a0,sp,64 + c0040a7e: d4ac80ef jal ra,c0008fc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34451 js_free_function_def(ctx, fd); - c00408b2: 85a2 mv a1,s0 - c00408b4: 854a mv a0,s2 - c00408b6: eacc80ef jal ra,c0008f62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34469 + c0040a82: 85a2 mv a1,s0 + c0040a84: 854a mv a0,s2 + c0040a86: dcac80ef jal ra,c0009050 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34477 if (m) - c00408ba: f6098de3 beqz s3,c0040834 <__JS_EvalInternal+0x1b0> - c00408be: ae2d j c0040bf8 <__JS_EvalInternal+0x574> + c0040a8a: f6098de3 beqz s3,c0040a04 <__JS_EvalInternal+0x1b0> + c0040a8e: ae2d j c0040dc8 <__JS_EvalInternal+0x574> add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31081 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31089 vd = &b->vardefs[b->arg_count + i]; - c00408c0: 0404dc83 lhu s9,64(s1) - c00408c4: 017c8cbb addw s9,s9,s7 - c00408c8: 004c9793 slli a5,s9,0x4 - c00408cc: 0304bc83 ld s9,48(s1) - c00408d0: 9cbe add s9,s9,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31082 + c0040a90: 0404dc83 lhu s9,64(s1) + c0040a94: 017c8cbb addw s9,s9,s7 + c0040a98: 004c9793 slli a5,s9,0x4 + c0040a9c: 0304bc83 ld s9,48(s1) + c0040aa0: 9cbe add s9,s9,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31090 if (vd->scope_level > 0) { - c00408d2: 004ca783 lw a5,4(s9) - c00408d6: 06f05963 blez a5,c0040948 <__JS_EvalInternal+0x2c4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31083 + c0040aa2: 004ca783 lw a5,4(s9) + c0040aa6: 06f05963 blez a5,c0040b18 <__JS_EvalInternal+0x2c4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31091 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c00408da: 19842783 lw a5,408(s0) - c00408de: 1a043c03 ld s8,416(s0) + c0040aaa: 19842783 lw a5,408(s0) + c0040aae: 1a043c03 ld s8,416(s0) set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c00408e2: 854a mv a0,s2 + c0040ab2: 854a mv a0,s2 add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31083 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31091 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c00408e4: 0017871b addiw a4,a5,1 - c00408e8: 078e slli a5,a5,0x3 - c00408ea: 18e42c23 sw a4,408(s0) - c00408ee: 9c3e add s8,s8,a5 + c0040ab4: 0017871b addiw a4,a5,1 + c0040ab8: 078e slli a5,a5,0x3 + c0040aba: 18e42c23 sw a4,408(s0) + c0040abe: 9c3e add s8,s8,a5 set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31060 cv->is_local = TRUE; - c00408f0: 000c4683 lbu a3,0(s8) # 4000 <__clzdi2-0xbfffc000> - c00408f4: 9af1 andi a3,a3,-4 - c00408f6: 0016e693 ori a3,a3,1 - c00408fa: 00dc0023 sb a3,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31054 + c0040ac0: 000c4683 lbu a3,0(s8) # 4000 <__clzdi2-0xbfffc000> + c0040ac4: 9af1 andi a3,a3,-4 + c0040ac6: 0016e693 ori a3,a3,1 + c0040aca: 00dc0023 sb a3,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31062 cv->is_const = vd->is_const; - c00408fe: 00cca703 lw a4,12(s9) - c0040902: 8b05 andi a4,a4,1 - c0040904: 0027179b slliw a5,a4,0x2 - c0040908: ffb6f713 andi a4,a3,-5 - c004090c: 8f5d or a4,a4,a5 - c004090e: 00ec0023 sb a4,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31055 + c0040ace: 00cca703 lw a4,12(s9) + c0040ad2: 8b05 andi a4,a4,1 + c0040ad4: 0027179b slliw a5,a4,0x2 + c0040ad8: ffb6f713 andi a4,a3,-5 + c0040adc: 8f5d or a4,a4,a5 + c0040ade: 00ec0023 sb a4,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31063 cv->is_lexical = vd->is_lexical; - c0040912: 00cca783 lw a5,12(s9) - c0040916: 0027979b slliw a5,a5,0x2 - c004091a: 0087f693 andi a3,a5,8 - c004091e: ff777793 andi a5,a4,-9 - c0040922: 8fd5 or a5,a5,a3 - c0040924: 00fc0023 sb a5,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040ae2: 00cca783 lw a5,12(s9) + c0040ae6: 0027979b slliw a5,a5,0x2 + c0040aea: 0087f693 andi a3,a5,8 + c0040aee: ff777793 andi a5,a4,-9 + c0040af2: 8fd5 or a5,a5,a3 + c0040af4: 00fc0023 sb a5,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c0040928: 00cca703 lw a4,12(s9) - c004092c: 8bbd andi a5,a5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31057 + c0040af8: 00cca703 lw a4,12(s9) + c0040afc: 8bbd andi a5,a5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31065 cv->var_idx = var_idx; - c004092e: 017c1123 sh s7,2(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040afe: 017c1123 sh s7,2(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c0040932: 0f077713 andi a4,a4,240 - c0040936: 8fd9 or a5,a5,a4 - c0040938: 00fc0023 sb a5,0(s8) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 + c0040b02: 0f077713 andi a4,a4,240 + c0040b06: 8fd9 or a5,a5,a4 + c0040b08: 00fc0023 sb a5,0(s8) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c004093c: 000ca583 lw a1,0(s9) - c0040940: b8bc60ef jal ra,c00074ca - c0040944: 00ac2223 sw a0,4(s8) + c0040b0c: 000ca583 lw a1,0(s9) + c0040b10: aa9c60ef jal ra,c00075b8 + c0040b14: 00ac2223 sw a0,4(s8) add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31086 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31094 i = vd->scope_next; - c0040948: 008cab83 lw s7,8(s9) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31080 + c0040b18: 008cab83 lw s7,8(s9) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31088 for (i = scope_idx; i >= 0;) { - c004094c: f60bdae3 bgez s7,c00408c0 <__JS_EvalInternal+0x23c> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31089 + c0040b1c: f60bdae3 bgez s7,c0040a90 <__JS_EvalInternal+0x23c> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31097 if (!is_arg_scope) { - c0040950: 57f9 li a5,-2 - c0040952: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31094 + c0040b20: 57f9 li a5,-2 + c0040b22: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31102 cv->is_local = TRUE; - c0040954: 4c8d li s9,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31089 + c0040b24: 4c8d li s9,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31097 if (!is_arg_scope) { - c0040956: 0cfb9963 bne s7,a5,c0040a28 <__JS_EvalInternal+0x3a4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31112 + c0040b26: 0cfb9963 bne s7,a5,c0040bf8 <__JS_EvalInternal+0x3a4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 for(i = 0; i < b->var_count; i++) { - c004095a: 4c81 li s9,0 - c004095c: 0424d783 lhu a5,66(s1) - c0040960: 0efcd163 bge s9,a5,c0040a42 <__JS_EvalInternal+0x3be> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31113 + c0040b2a: 4c81 li s9,0 + c0040b2c: 0424d783 lhu a5,66(s1) + c0040b30: 0efcd163 bge s9,a5,c0040c12 <__JS_EvalInternal+0x3be> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31121 vd = &b->vardefs[b->arg_count + i]; - c0040964: 0404dc03 lhu s8,64(s1) - c0040968: 019c0c3b addw s8,s8,s9 - c004096c: 004c1793 slli a5,s8,0x4 - c0040970: 0304bc03 ld s8,48(s1) - c0040974: 9c3e add s8,s8,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31114 + c0040b34: 0404dc03 lhu s8,64(s1) + c0040b38: 019c0c3b addw s8,s8,s9 + c0040b3c: 004c1793 slli a5,s8,0x4 + c0040b40: 0304bc03 ld s8,48(s1) + c0040b44: 9c3e add s8,s8,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31122 if (vd->scope_level == 0 && is_var_in_arg_scope(vd)) { - c0040976: 004c2783 lw a5,4(s8) - c004097a: efa5 bnez a5,c00409f2 <__JS_EvalInternal+0x36e> - c004097c: 8562 mv a0,s8 - c004097e: f8dc40ef jal ra,c000590a - c0040982: c925 beqz a0,c00409f2 <__JS_EvalInternal+0x36e> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31115 + c0040b46: 004c2783 lw a5,4(s8) + c0040b4a: efa5 bnez a5,c0040bc2 <__JS_EvalInternal+0x36e> + c0040b4c: 8562 mv a0,s8 + c0040b4e: eabc40ef jal ra,c00059f8 + c0040b52: c925 beqz a0,c0040bc2 <__JS_EvalInternal+0x36e> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31123 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040984: 19842783 lw a5,408(s0) - c0040988: 1a043b83 ld s7,416(s0) + c0040b54: 19842783 lw a5,408(s0) + c0040b58: 1a043b83 ld s7,416(s0) set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c004098c: 854a mv a0,s2 + c0040b5c: 854a mv a0,s2 add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31115 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31123 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c004098e: 0017871b addiw a4,a5,1 - c0040992: 078e slli a5,a5,0x3 - c0040994: 18e42c23 sw a4,408(s0) - c0040998: 9bbe add s7,s7,a5 + c0040b5e: 0017871b addiw a4,a5,1 + c0040b62: 078e slli a5,a5,0x3 + c0040b64: 18e42c23 sw a4,408(s0) + c0040b68: 9bbe add s7,s7,a5 set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31060 cv->is_local = TRUE; - c004099a: 000bc683 lbu a3,0(s7) # 4000 <__clzdi2-0xbfffc000> - c004099e: 9af1 andi a3,a3,-4 - c00409a0: 0016e693 ori a3,a3,1 - c00409a4: 00db8023 sb a3,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31054 + c0040b6a: 000bc683 lbu a3,0(s7) # 4000 <__clzdi2-0xbfffc000> + c0040b6e: 9af1 andi a3,a3,-4 + c0040b70: 0016e693 ori a3,a3,1 + c0040b74: 00db8023 sb a3,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31062 cv->is_const = vd->is_const; - c00409a8: 00cc2703 lw a4,12(s8) - c00409ac: 8b05 andi a4,a4,1 - c00409ae: 0027179b slliw a5,a4,0x2 - c00409b2: ffb6f713 andi a4,a3,-5 - c00409b6: 8f5d or a4,a4,a5 - c00409b8: 00eb8023 sb a4,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31055 + c0040b78: 00cc2703 lw a4,12(s8) + c0040b7c: 8b05 andi a4,a4,1 + c0040b7e: 0027179b slliw a5,a4,0x2 + c0040b82: ffb6f713 andi a4,a3,-5 + c0040b86: 8f5d or a4,a4,a5 + c0040b88: 00eb8023 sb a4,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31063 cv->is_lexical = vd->is_lexical; - c00409bc: 00cc2783 lw a5,12(s8) - c00409c0: 0027979b slliw a5,a5,0x2 - c00409c4: 0087f693 andi a3,a5,8 - c00409c8: ff777793 andi a5,a4,-9 - c00409cc: 8fd5 or a5,a5,a3 - c00409ce: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040b8c: 00cc2783 lw a5,12(s8) + c0040b90: 0027979b slliw a5,a5,0x2 + c0040b94: 0087f693 andi a3,a5,8 + c0040b98: ff777793 andi a5,a4,-9 + c0040b9c: 8fd5 or a5,a5,a3 + c0040b9e: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c00409d2: 00cc2703 lw a4,12(s8) - c00409d6: 8bbd andi a5,a5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31057 + c0040ba2: 00cc2703 lw a4,12(s8) + c0040ba6: 8bbd andi a5,a5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31065 cv->var_idx = var_idx; - c00409d8: 019b9123 sh s9,2(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040ba8: 019b9123 sh s9,2(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c00409dc: 0f077713 andi a4,a4,240 - c00409e0: 8fd9 or a5,a5,a4 - c00409e2: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 + c0040bac: 0f077713 andi a4,a4,240 + c0040bb0: 8fd9 or a5,a5,a4 + c0040bb2: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c00409e6: 000c2583 lw a1,0(s8) - c00409ea: ae1c60ef jal ra,c00074ca - c00409ee: 00aba223 sw a0,4(s7) + c0040bb6: 000c2583 lw a1,0(s8) + c0040bba: 9ffc60ef jal ra,c00075b8 + c0040bbe: 00aba223 sw a0,4(s7) add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 for(i = 0; i < b->var_count; i++) { - c00409f2: 2c85 addiw s9,s9,1 - c00409f4: b7a5 j c004095c <__JS_EvalInternal+0x2d8> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31092 - JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c00409f6: 19842783 lw a5,408(s0) - c00409fa: 1a043b83 ld s7,416(s0) + c0040bc2: 2c85 addiw s9,s9,1 + c0040bc4: b7a5 j c0040b2c <__JS_EvalInternal+0x2d8> /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31100 + JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; + c0040bc6: 19842783 lw a5,408(s0) + c0040bca: 1a043b83 ld s7,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31108 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c00409fe: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31092 + c0040bce: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31100 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040a00: 0017871b addiw a4,a5,1 - c0040a04: 18e42c23 sw a4,408(s0) - c0040a08: 078e slli a5,a5,0x3 - c0040a0a: 9bbe add s7,s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31093 + c0040bd0: 0017871b addiw a4,a5,1 + c0040bd4: 18e42c23 sw a4,408(s0) + c0040bd8: 078e slli a5,a5,0x3 + c0040bda: 9bbe add s7,s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31101 vd = &b->vardefs[i]; - c0040a0c: 789c ld a5,48(s1) - c0040a0e: 004c1713 slli a4,s8,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31099 + c0040bdc: 789c ld a5,48(s1) + c0040bde: 004c1713 slli a4,s8,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31107 cv->var_idx = i; - c0040a12: 018b9123 sh s8,2(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31093 + c0040be2: 018b9123 sh s8,2(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31101 vd = &b->vardefs[i]; - c0040a16: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31094 + c0040be6: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31102 cv->is_local = TRUE; - c0040a18: 019b8023 sb s9,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31100 + c0040be8: 019b8023 sb s9,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31108 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c0040a1c: 438c lw a1,0(a5) - c0040a1e: 0c05 addi s8,s8,1 - c0040a20: aabc60ef jal ra,c00074ca - c0040a24: 00aba223 sw a0,4(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31091 + c0040bec: 438c lw a1,0(a5) + c0040bee: 0c05 addi s8,s8,1 + c0040bf0: 9c9c60ef jal ra,c00075b8 + c0040bf4: 00aba223 sw a0,4(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31099 for(i = 0; i < b->arg_count; i++) { - c0040a28: 0404d703 lhu a4,64(s1) - c0040a2c: 000c079b sext.w a5,s8 - c0040a30: fce7c3e3 blt a5,a4,c00409f6 <__JS_EvalInternal+0x372> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31103 + c0040bf8: 0404d703 lhu a4,64(s1) + c0040bfc: 000c079b sext.w a5,s8 + c0040c00: fce7c3e3 blt a5,a4,c0040bc6 <__JS_EvalInternal+0x372> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31111 for(i = 0; i < b->var_count; i++) { - c0040a34: 4c01 li s8,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31105 + c0040c04: 4c01 li s8,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31113 if (vd->scope_level == 0 && vd->var_name != JS_ATOM__ret_) { - c0040a36: 05200c93 li s9,82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31103 + c0040c06: 05200c93 li s9,82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31111 for(i = 0; i < b->var_count; i++) { - c0040a3a: 0424d783 lhu a5,66(s1) - c0040a3e: 00fc4463 blt s8,a5,c0040a46 <__JS_EvalInternal+0x3c2> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31112 + c0040c0a: 0424d783 lhu a5,66(s1) + c0040c0e: 00fc4463 blt s8,a5,c0040c16 <__JS_EvalInternal+0x3c2> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 for(i = 0; i < b->var_count; i++) { - c0040a42: 4c01 li s8,0 - c0040a44: a8ed j c0040b3e <__JS_EvalInternal+0x4ba> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31104 + c0040c12: 4c01 li s8,0 + c0040c14: a8ed j c0040d0e <__JS_EvalInternal+0x4ba> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31112 vd = &b->vardefs[b->arg_count + i]; - c0040a46: 0404d603 lhu a2,64(s1) - c0040a4a: 0186063b addw a2,a2,s8 - c0040a4e: 00461793 slli a5,a2,0x4 - c0040a52: 7890 ld a2,48(s1) - c0040a54: 963e add a2,a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31105 + c0040c16: 0404d603 lhu a2,64(s1) + c0040c1a: 0186063b addw a2,a2,s8 + c0040c1e: 00461793 slli a5,a2,0x4 + c0040c22: 7890 ld a2,48(s1) + c0040c24: 963e add a2,a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31113 if (vd->scope_level == 0 && vd->var_name != JS_ATOM__ret_) { - c0040a56: 425c lw a5,4(a2) - c0040a58: e7bd bnez a5,c0040ac6 <__JS_EvalInternal+0x442> - c0040a5a: 421c lw a5,0(a2) - c0040a5c: 07978563 beq a5,s9,c0040ac6 <__JS_EvalInternal+0x442> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31106 + c0040c26: 425c lw a5,4(a2) + c0040c28: e7bd bnez a5,c0040c96 <__JS_EvalInternal+0x442> + c0040c2a: 421c lw a5,0(a2) + c0040c2c: 07978563 beq a5,s9,c0040c96 <__JS_EvalInternal+0x442> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31114 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040a60: 19842783 lw a5,408(s0) - c0040a64: 1a043b83 ld s7,416(s0) + c0040c30: 19842783 lw a5,408(s0) + c0040c34: 1a043b83 ld s7,416(s0) set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c0040a68: 854a mv a0,s2 + c0040c38: 854a mv a0,s2 add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31106 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31114 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040a6a: 0017871b addiw a4,a5,1 - c0040a6e: 078e slli a5,a5,0x3 - c0040a70: 18e42c23 sw a4,408(s0) - c0040a74: 9bbe add s7,s7,a5 + c0040c3a: 0017871b addiw a4,a5,1 + c0040c3e: 078e slli a5,a5,0x3 + c0040c40: 18e42c23 sw a4,408(s0) + c0040c44: 9bbe add s7,s7,a5 set_closure_from_var(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31052 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31060 cv->is_local = TRUE; - c0040a76: 000bc683 lbu a3,0(s7) - c0040a7a: 9af1 andi a3,a3,-4 - c0040a7c: 0016e693 ori a3,a3,1 - c0040a80: 00db8023 sb a3,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31054 + c0040c46: 000bc683 lbu a3,0(s7) + c0040c4a: 9af1 andi a3,a3,-4 + c0040c4c: 0016e693 ori a3,a3,1 + c0040c50: 00db8023 sb a3,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31062 cv->is_const = vd->is_const; - c0040a84: 4658 lw a4,12(a2) - c0040a86: 8b05 andi a4,a4,1 - c0040a88: 0027179b slliw a5,a4,0x2 - c0040a8c: ffb6f713 andi a4,a3,-5 - c0040a90: 8f5d or a4,a4,a5 - c0040a92: 00eb8023 sb a4,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31055 + c0040c54: 4658 lw a4,12(a2) + c0040c56: 8b05 andi a4,a4,1 + c0040c58: 0027179b slliw a5,a4,0x2 + c0040c5c: ffb6f713 andi a4,a3,-5 + c0040c60: 8f5d or a4,a4,a5 + c0040c62: 00eb8023 sb a4,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31063 cv->is_lexical = vd->is_lexical; - c0040a96: 465c lw a5,12(a2) - c0040a98: 0027979b slliw a5,a5,0x2 - c0040a9c: 0087f693 andi a3,a5,8 - c0040aa0: ff777793 andi a5,a4,-9 - c0040aa4: 8fd5 or a5,a5,a3 - c0040aa6: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040c66: 465c lw a5,12(a2) + c0040c68: 0027979b slliw a5,a5,0x2 + c0040c6c: 0087f693 andi a3,a5,8 + c0040c70: ff777793 andi a5,a4,-9 + c0040c74: 8fd5 or a5,a5,a3 + c0040c76: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c0040aaa: 4658 lw a4,12(a2) - c0040aac: 8bbd andi a5,a5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31057 + c0040c7a: 4658 lw a4,12(a2) + c0040c7c: 8bbd andi a5,a5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31065 cv->var_idx = var_idx; - c0040aae: 018b9123 sh s8,2(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31056 + c0040c7e: 018b9123 sh s8,2(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31064 cv->var_kind = vd->var_kind; - c0040ab2: 0f077713 andi a4,a4,240 - c0040ab6: 8fd9 or a5,a5,a4 - c0040ab8: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31058 + c0040c82: 0f077713 andi a4,a4,240 + c0040c86: 8fd9 or a5,a5,a4 + c0040c88: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31066 cv->var_name = JS_DupAtom(ctx, vd->var_name); - c0040abc: 420c lw a1,0(a2) - c0040abe: a0dc60ef jal ra,c00074ca - c0040ac2: 00aba223 sw a0,4(s7) + c0040c8c: 420c lw a1,0(a2) + c0040c8e: 92bc60ef jal ra,c00075b8 + c0040c92: 00aba223 sw a0,4(s7) add_closure_variables(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31103 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31111 for(i = 0; i < b->var_count; i++) { - c0040ac6: 2c05 addiw s8,s8,1 - c0040ac8: bf8d j c0040a3a <__JS_EvalInternal+0x3b6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31121 + c0040c96: 2c05 addiw s8,s8,1 + c0040c98: bf8d j c0040c0a <__JS_EvalInternal+0x3b6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31129 JSClosureVar *cv0 = &b->closure_var[i]; - c0040aca: 7c90 ld a2,56(s1) - c0040acc: 003c1793 slli a5,s8,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31122 + c0040c9a: 7c90 ld a2,56(s1) + c0040c9c: 003c1793 slli a5,s8,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31130 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040ad0: 1a043b83 ld s7,416(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31121 + c0040ca0: 1a043b83 ld s7,416(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31129 JSClosureVar *cv0 = &b->closure_var[i]; - c0040ad4: 963e add a2,a2,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31122 + c0040ca4: 963e add a2,a2,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31130 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040ad6: 19842783 lw a5,408(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31129 + c0040ca6: 19842783 lw a5,408(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31137 cv->var_name = JS_DupAtom(ctx, cv0->var_name); - c0040ada: 854a mv a0,s2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31122 + c0040caa: 854a mv a0,s2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31130 JSClosureVar *cv = &s->closure_var[s->closure_var_count++]; - c0040adc: 0017871b addiw a4,a5,1 - c0040ae0: 078e slli a5,a5,0x3 - c0040ae2: 18e42c23 sw a4,408(s0) - c0040ae6: 9bbe add s7,s7,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31123 + c0040cac: 0017871b addiw a4,a5,1 + c0040cb0: 078e slli a5,a5,0x3 + c0040cb2: 18e42c23 sw a4,408(s0) + c0040cb6: 9bbe add s7,s7,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31131 cv->is_local = FALSE; - c0040ae8: 000bc783 lbu a5,0(s7) - c0040aec: ffe7f713 andi a4,a5,-2 - c0040af0: 00eb8023 sb a4,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31124 + c0040cb8: 000bc783 lbu a5,0(s7) + c0040cbc: ffe7f713 andi a4,a5,-2 + c0040cc0: 00eb8023 sb a4,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31132 cv->is_arg = cv0->is_arg; - c0040af4: 4214 lw a3,0(a2) - c0040af6: 9bf1 andi a5,a5,-4 - c0040af8: 8a89 andi a3,a3,2 - c0040afa: 8edd or a3,a3,a5 - c0040afc: 00db8023 sb a3,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31125 + c0040cc4: 4214 lw a3,0(a2) + c0040cc6: 9bf1 andi a5,a5,-4 + c0040cc8: 8a89 andi a3,a3,2 + c0040cca: 8edd or a3,a3,a5 + c0040ccc: 00db8023 sb a3,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31133 cv->is_const = cv0->is_const; - c0040b00: 4218 lw a4,0(a2) - c0040b02: 00477793 andi a5,a4,4 - c0040b06: ffb6f713 andi a4,a3,-5 - c0040b0a: 8f5d or a4,a4,a5 - c0040b0c: 00eb8023 sb a4,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31126 + c0040cd0: 4218 lw a4,0(a2) + c0040cd2: 00477793 andi a5,a4,4 + c0040cd6: ffb6f713 andi a4,a3,-5 + c0040cda: 8f5d or a4,a4,a5 + c0040cdc: 00eb8023 sb a4,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31134 cv->is_lexical = cv0->is_lexical; - c0040b10: 421c lw a5,0(a2) - c0040b12: 0087f693 andi a3,a5,8 - c0040b16: ff777793 andi a5,a4,-9 - c0040b1a: 8fd5 or a5,a5,a3 - c0040b1c: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31127 + c0040ce0: 421c lw a5,0(a2) + c0040ce2: 0087f693 andi a3,a5,8 + c0040ce6: ff777793 andi a5,a4,-9 + c0040cea: 8fd5 or a5,a5,a3 + c0040cec: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31135 cv->var_kind = cv0->var_kind; - c0040b20: 4218 lw a4,0(a2) - c0040b22: 8bbd andi a5,a5,15 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31128 + c0040cf0: 4218 lw a4,0(a2) + c0040cf2: 8bbd andi a5,a5,15 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31136 cv->var_idx = i; - c0040b24: 018b9123 sh s8,2(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31127 + c0040cf4: 018b9123 sh s8,2(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31135 cv->var_kind = cv0->var_kind; - c0040b28: 0f077713 andi a4,a4,240 - c0040b2c: 8fd9 or a5,a5,a4 - c0040b2e: 00fb8023 sb a5,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31129 + c0040cf8: 0f077713 andi a4,a4,240 + c0040cfc: 8fd9 or a5,a5,a4 + c0040cfe: 00fb8023 sb a5,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31137 cv->var_name = JS_DupAtom(ctx, cv0->var_name); - c0040b32: 424c lw a1,4(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 + c0040d02: 424c lw a1,4(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31128 for(i = 0; i < b->closure_var_count; i++) { - c0040b34: 2c05 addiw s8,s8,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31129 + c0040d04: 2c05 addiw s8,s8,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31137 cv->var_name = JS_DupAtom(ctx, cv0->var_name); - c0040b36: 995c60ef jal ra,c00074ca - c0040b3a: 00aba223 sw a0,4(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 + c0040d06: 8b3c60ef jal ra,c00075b8 + c0040d0a: 00aba223 sw a0,4(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31128 for(i = 0; i < b->closure_var_count; i++) { - c0040b3e: 4cfc lw a5,92(s1) - c0040b40: f8fc45e3 blt s8,a5,c0040aca <__JS_EvalInternal+0x446> - c0040b44: b9a9 j c004079e <__JS_EvalInternal+0x11a> + c0040d0e: 4cfc lw a5,92(s1) + c0040d10: f8fc45e3 blt s8,a5,c0040c9a <__JS_EvalInternal+0x446> + c0040d14: b9a9 j c004096e <__JS_EvalInternal+0x11a> js_parse_directives(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31120 - c0040b46: 0088 addi a0,sp,64 - c0040b48: ff0e60ef jal ra,c0027338 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:31128 + c0040d16: 0088 addi a0,sp,64 + c0040d18: ff0e60ef jal ra,c0027508 js_parse_program(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34261 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34269 if (js_parse_directives(s)) - c0040b4c: c8050ce3 beqz a0,c00407e4 <__JS_EvalInternal+0x160> - c0040b50: bba9 j c00408aa <__JS_EvalInternal+0x226> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34265 + c0040d1c: c8050ce3 beqz a0,c00409b4 <__JS_EvalInternal+0x160> + c0040d20: bba9 j c0040a7a <__JS_EvalInternal+0x226> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34273 (fd->eval_type == JS_EVAL_TYPE_MODULE) || - c0040b52: 0864c783 lbu a5,134(s1) - c0040b56: 8b85 andi a5,a5,1 - c0040b58: 0017c793 xori a5,a5,1 - c0040b5c: b941 j c00407ec <__JS_EvalInternal+0x168> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34276 + c0040d22: 0864c783 lbu a5,134(s1) + c0040d26: 8b85 andi a5,a5,1 + c0040d28: 0017c793 xori a5,a5,1 + c0040d2c: b941 j c00409bc <__JS_EvalInternal+0x168> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34284 if (js_parse_source_element(s)) - c0040b5e: 0088 addi a0,sp,64 - c0040b60: 97fee0ef jal ra,c002f4de - c0040b64: d40513e3 bnez a0,c00408aa <__JS_EvalInternal+0x226> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34275 + c0040d2e: 0088 addi a0,sp,64 + c0040d30: 97fee0ef jal ra,c002f6ae + c0040d34: d40513e3 bnez a0,c0040a7a <__JS_EvalInternal+0x226> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34283 while (s->token.val != TOK_EOF) { - c0040b68: 47e6 lw a5,88(sp) - c0040b6a: ff779ae3 bne a5,s7,c0040b5e <__JS_EvalInternal+0x4da> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34280 + c0040d38: 47e6 lw a5,88(sp) + c0040d3a: ff779ae3 bne a5,s7,c0040d2e <__JS_EvalInternal+0x4da> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34288 if (!s->is_module) { - c0040b6e: 57ca lw a5,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34299 + c0040d3e: 57ca lw a5,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34307 emit_return(s, FALSE); - c0040b70: 4581 li a1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34280 + c0040d40: 4581 li a1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34288 if (!s->is_module) { - c0040b72: e3b9 bnez a5,c0040bb8 <__JS_EvalInternal+0x534> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34282 + c0040d42: e3b9 bnez a5,c0040d88 <__JS_EvalInternal+0x534> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34290 if (fd->func_kind == JS_FUNC_ASYNC) { - c0040b74: 0844c703 lbu a4,132(s1) - c0040b78: 4789 li a5,2 - c0040b7a: 08f71463 bne a4,a5,c0040c02 <__JS_EvalInternal+0x57e> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34285 + c0040d44: 0844c703 lbu a4,132(s1) + c0040d48: 4789 li a5,2 + c0040d4a: 08f71463 bne a4,a5,c0040dd2 <__JS_EvalInternal+0x57e> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34293 emit_op(s, OP_object); - c0040b7e: 45ad li a1,11 - c0040b80: 0088 addi a0,sp,64 - c0040b82: 8bbc40ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34286 + c0040d4e: 45ad li a1,11 + c0040d50: 0088 addi a0,sp,64 + c0040d52: fd8c40ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34294 emit_op(s, OP_dup); - c0040b86: 45c5 li a1,17 - c0040b88: 0088 addi a0,sp,64 - c0040b8a: 8b3c40ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34288 + c0040d56: 45c5 li a1,17 + c0040d58: 0088 addi a0,sp,64 + c0040d5a: fd0c40ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34296 emit_op(s, OP_get_loc); - c0040b8e: 05800593 li a1,88 - c0040b92: 0088 addi a0,sp,64 - c0040b94: 8a9c40ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34289 + c0040d5e: 05800593 li a1,88 + c0040d62: 0088 addi a0,sp,64 + c0040d64: fc6c40ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34297 emit_u16(s, fd->eval_ret_idx); - c0040b98: 0c84d583 lhu a1,200(s1) - c0040b9c: 0088 addi a0,sp,64 - c0040b9e: f6cc40ef jal ra,c000530a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34291 + c0040d68: 0c84d583 lhu a1,200(s1) + c0040d6c: 0088 addi a0,sp,64 + c0040d6e: e8ac40ef jal ra,c00053f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34299 emit_op(s, OP_put_field); - c0040ba2: 04300593 li a1,67 - c0040ba6: 0088 addi a0,sp,64 - c0040ba8: 895c40ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34292 + c0040d72: 04300593 li a1,67 + c0040d76: 0088 addi a0,sp,64 + c0040d78: fb2c40ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34300 emit_atom(s, JS_ATOM_value); - c0040bac: 04100593 li a1,65 - c0040bb0: 0088 addi a0,sp,64 - c0040bb2: 93dc60ef jal ra,c00074ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34297 + c0040d7c: 04100593 li a1,65 + c0040d80: 0088 addi a0,sp,64 + c0040d82: 85bc60ef jal ra,c00075dc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34305 emit_return(s, TRUE); - c0040bb6: 4585 li a1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34299 + c0040d86: 4585 li a1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34307 emit_return(s, FALSE); - c0040bb8: 0088 addi a0,sp,64 - c0040bba: 9e4d70ef jal ra,c0017d9e + c0040d88: 0088 addi a0,sp,64 + c0040d8a: 9e4d70ef jal ra,c0017f6e __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34447 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34455 if (m != NULL) - c0040bbe: 00098663 beqz s3,c0040bca <__JS_EvalInternal+0x546> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34448 + c0040d8e: 00098663 beqz s3,c0040d9a <__JS_EvalInternal+0x546> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34456 m->has_tla = fd->has_await; - c0040bc2: 22042783 lw a5,544(s0) - c0040bc6: 08f98023 sb a5,128(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34451 + c0040d92: 22042783 lw a5,544(s0) + c0040d96: 08f98023 sb a5,128(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34459 fun_obj = js_create_function(ctx, fd); - c0040bca: 85a2 mv a1,s0 - c0040bcc: 854a mv a0,s2 - c0040bce: b9ae30ef jal ra,c0023f68 - c0040bd2: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34452 + c0040d9a: 85a2 mv a1,s0 + c0040d9c: 854a mv a0,s2 + c0040d9e: b9ae30ef jal ra,c0024138 + c0040da2: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34460 if (JS_IsException(fun_obj)) - c0040bd4: 0005871b sext.w a4,a1 - c0040bd8: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34451 + c0040da4: 0005871b sext.w a4,a1 + c0040da8: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34459 fun_obj = js_create_function(ctx, fd); - c0040bda: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34452 + c0040daa: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34460 if (JS_IsException(fun_obj)) - c0040bdc: ccf70fe3 beq a4,a5,c00408ba <__JS_EvalInternal+0x236> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34455 + c0040dac: ccf70fe3 beq a4,a5,c0040a8a <__JS_EvalInternal+0x236> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34463 if (m) { - c0040be0: 04098263 beqz s3,c0040c24 <__JS_EvalInternal+0x5a0> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34456 + c0040db0: 04098263 beqz s3,c0040df4 <__JS_EvalInternal+0x5a0> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34464 m->func_obj = fun_obj; - c0040be4: 06a9b423 sd a0,104(s3) - c0040be8: 06b9b823 sd a1,112(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34457 + c0040db4: 06a9b423 sd a0,104(s3) + c0040db8: 06b9b823 sd a1,112(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34465 if (js_resolve_module(ctx, m) < 0) - c0040bec: 854a mv a0,s2 - c0040bee: 85ce mv a1,s3 - c0040bf0: 951de0ef jal ra,c001f540 - c0040bf4: 02055263 bgez a0,c0040c18 <__JS_EvalInternal+0x594> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34470 + c0040dbc: 854a mv a0,s2 + c0040dbe: 85ce mv a1,s3 + c0040dc0: 951de0ef jal ra,c001f710 + c0040dc4: 02055263 bgez a0,c0040de8 <__JS_EvalInternal+0x594> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34478 js_free_module_def(ctx, m); - c0040bf8: 85ce mv a1,s3 - c0040bfa: 854a mv a0,s2 - c0040bfc: c2bc70ef jal ra,c0008826 - c0040c00: b915 j c0040834 <__JS_EvalInternal+0x1b0> + c0040dc8: 85ce mv a1,s3 + c0040dca: 854a mv a0,s2 + c0040dcc: b49c70ef jal ra,c0008914 + c0040dd0: b915 j c0040a04 <__JS_EvalInternal+0x1b0> js_parse_program(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34294 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34302 emit_op(s, OP_get_loc); - c0040c02: 0088 addi a0,sp,64 - c0040c04: 05800593 li a1,88 - c0040c08: 835c40ef jal ra,c000543c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34295 + c0040dd2: 0088 addi a0,sp,64 + c0040dd4: 05800593 li a1,88 + c0040dd8: f52c40ef jal ra,c000552a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34303 emit_u16(s, fd->eval_ret_idx); - c0040c0c: 0c84d583 lhu a1,200(s1) - c0040c10: 0088 addi a0,sp,64 - c0040c12: ef8c40ef jal ra,c000530a - c0040c16: b745 j c0040bb6 <__JS_EvalInternal+0x532> + c0040ddc: 0c84d583 lhu a1,200(s1) + c0040de0: 0088 addi a0,sp,64 + c0040de2: e16c40ef jal ra,c00053f8 + c0040de6: b745 j c0040d86 <__JS_EvalInternal+0x532> __JS_EvalInternal(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34459 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34467 fun_obj = JS_NewModuleValue(ctx, m); - c0040c18: 85ce mv a1,s3 - c0040c1a: 854a mv a0,s2 - c0040c1c: b85c50ef jal ra,c00067a0 - c0040c20: e82a sd a0,16(sp) - c0040c22: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34461 + c0040de8: 85ce mv a1,s3 + c0040dea: 854a mv a0,s2 + c0040dec: aa3c50ef jal ra,c000688e + c0040df0: e82a sd a0,16(sp) + c0040df2: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34469 if (flags & JS_EVAL_FLAG_COMPILE_ONLY) { - c0040c24: 020a7a13 andi s4,s4,32 - c0040c28: 000a0863 beqz s4,c0040c38 <__JS_EvalInternal+0x5b4> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34462 + c0040df4: 020a7a13 andi s4,s4,32 + c0040df8: 000a0863 beqz s4,c0040e08 <__JS_EvalInternal+0x5b4> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34470 ret_val = fun_obj; - c0040c2c: 67c2 ld a5,16(sp) - c0040c2e: f03e sd a5,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34466 + c0040dfc: 67c2 ld a5,16(sp) + c0040dfe: f03e sd a5,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34474 return ret_val; - c0040c30: 7782 ld a5,32(sp) - c0040c32: fc32 sd a2,56(sp) - c0040c34: f83e sd a5,48(sp) - c0040c36: b111 j c004083a <__JS_EvalInternal+0x1b6> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34464 + c0040e00: 7782 ld a5,32(sp) + c0040e02: fc32 sd a2,56(sp) + c0040e04: f83e sd a5,48(sp) + c0040e06: b111 j c0040a0a <__JS_EvalInternal+0x1b6> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:34472 ret_val = JS_EvalFunctionInternal(ctx, fun_obj, this_obj, var_refs, sf); - c0040c38: 6682 ld a3,0(sp) - c0040c3a: 6722 ld a4,8(sp) - c0040c3c: 65c2 ld a1,16(sp) - c0040c3e: 8856 mv a6,s5 - c0040c40: 87da mv a5,s6 - c0040c42: 854a mv a0,s2 - c0040c44: dd0ff0ef jal ra,c0040214 - c0040c48: f02a sd a0,32(sp) - c0040c4a: 862e mv a2,a1 - c0040c4c: b7d5 j c0040c30 <__JS_EvalInternal+0x5ac> - -00000000c0040c4e : + c0040e08: 6682 ld a3,0(sp) + c0040e0a: 6722 ld a4,8(sp) + c0040e0c: 65c2 ld a1,16(sp) + c0040e0e: 8856 mv a6,s5 + c0040e10: 87da mv a5,s6 + c0040e12: 854a mv a0,s2 + c0040e14: dd0ff0ef jal ra,c00403e4 + c0040e18: f02a sd a0,32(sp) + c0040e1a: 862e mv a2,a1 + c0040e1c: b7d5 j c0040e00 <__JS_EvalInternal+0x5ac> + +00000000c0040e1e : JS_LoadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28557 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28565 { - c0040c4e: 7159 addi sp,sp,-112 - c0040c50: eca6 sd s1,88(sp) - c0040c52: 84ae mv s1,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28560 + c0040e1e: 7159 addi sp,sp,-112 + c0040e20: eca6 sd s1,88(sp) + c0040e22: 84ae mv s1,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28568 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c0040c54: 180c addi a1,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28557 + c0040e24: 180c addi a1,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28565 { - c0040c56: f0a2 sd s0,96(sp) - c0040c58: e432 sd a2,8(sp) - c0040c5a: f486 sd ra,104(sp) - c0040c5c: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28560 + c0040e26: f0a2 sd s0,96(sp) + c0040e28: e432 sd a2,8(sp) + c0040e2a: f486 sd ra,104(sp) + c0040e2c: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28568 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c0040c5e: b32ca0ef jal ra,c000af90 - c0040c62: e82a sd a0,16(sp) - c0040c64: ec2e sd a1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28561 + c0040e2e: a50ca0ef jal ra,c000b07e + c0040e32: e82a sd a0,16(sp) + c0040e34: ec2e sd a1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28569 if (JS_IsException(promise)) - c0040c66: 0005879b sext.w a5,a1 - c0040c6a: 4719 li a4,6 - c0040c6c: 6622 ld a2,8(sp) - c0040c6e: 00e79b63 bne a5,a4,c0040c84 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28562 + c0040e36: 0005879b sext.w a5,a1 + c0040e3a: 4719 li a4,6 + c0040e3c: 6622 ld a2,8(sp) + c0040e3e: 00e79b63 bne a5,a4,c0040e54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28570 return JS_EXCEPTION; - c0040c72: f002 sd zero,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28568 + c0040e42: f002 sd zero,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28576 } - c0040c74: 70a6 ld ra,104(sp) - c0040c76: 7406 ld s0,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28567 + c0040e44: 70a6 ld ra,104(sp) + c0040e46: 7406 ld s0,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 return promise; - c0040c78: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28568 + c0040e48: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28576 } - c0040c7a: 7502 ld a0,32(sp) - c0040c7c: 75a2 ld a1,40(sp) - c0040c7e: 64e6 ld s1,88(sp) - c0040c80: 6165 addi sp,sp,112 - c0040c82: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28563 + c0040e4a: 7502 ld a0,32(sp) + c0040e4c: 75a2 ld a1,40(sp) + c0040e4e: 64e6 ld s1,88(sp) + c0040e50: 6165 addi sp,sp,112 + c0040e52: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28571 JS_LoadModuleInternal(ctx, basename, filename, - c0040c84: 1814 addi a3,sp,48 - c0040c86: 85a6 mv a1,s1 - c0040c88: 8522 mv a0,s0 - c0040c8a: 82dff0ef jal ra,c00404b6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28565 + c0040e54: 1814 addi a3,sp,48 + c0040e56: 85a6 mv a1,s1 + c0040e58: 8522 mv a0,s0 + c0040e5a: 82dff0ef jal ra,c0040686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28573 JS_FreeValue(ctx, resolving_funcs[0]); - c0040c8e: 75c2 ld a1,48(sp) - c0040c90: 7662 ld a2,56(sp) - c0040c92: 8522 mv a0,s0 - c0040c94: ea5c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28566 + c0040e5e: 75c2 ld a1,48(sp) + c0040e60: 7662 ld a2,56(sp) + c0040e62: 8522 mv a0,s0 + c0040e64: dc3c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28574 JS_FreeValue(ctx, resolving_funcs[1]); - c0040c98: 6586 ld a1,64(sp) - c0040c9a: 6626 ld a2,72(sp) - c0040c9c: 8522 mv a0,s0 - c0040c9e: e9bc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28567 + c0040e68: 6586 ld a1,64(sp) + c0040e6a: 6626 ld a2,72(sp) + c0040e6c: 8522 mv a0,s0 + c0040e6e: db9c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:28575 return promise; - c0040ca2: 67c2 ld a5,16(sp) - c0040ca4: f03e sd a5,32(sp) - c0040ca6: 67e2 ld a5,24(sp) - c0040ca8: b7f1 j c0040c74 + c0040e72: 67c2 ld a5,16(sp) + c0040e74: f03e sd a5,32(sp) + c0040e76: 67e2 ld a5,24(sp) + c0040e78: b7f1 j c0040e44 -00000000c0040caa : +00000000c0040e7a : js_async_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19656 -{ - c0040caa: 7131 addi sp,sp,-192 - c0040cac: 86b2 mv a3,a2 - c0040cae: f526 sd s1,168(sp) - c0040cb0: e02e sd a1,0(sp) - c0040cb2: 84aa mv s1,a0 - c0040cb4: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19657 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19664 +{ + c0040e7a: 7131 addi sp,sp,-192 + c0040e7c: 86b2 mv a3,a2 + c0040e7e: f526 sd s1,168(sp) + c0040e80: e02e sd a1,0(sp) + c0040e82: 84aa mv s1,a0 + c0040e84: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19665 JSAsyncGeneratorData *s = JS_GetOpaque(this_val, JS_CLASS_ASYNC_GENERATOR); - c0040cb6: 852e mv a0,a1 - c0040cb8: 03500613 li a2,53 - c0040cbc: 85b6 mv a1,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19656 -{ - c0040cbe: fd06 sd ra,184(sp) - c0040cc0: f14a sd s2,160(sp) - c0040cc2: ed4e sd s3,152(sp) - c0040cc4: e952 sd s4,144(sp) - c0040cc6: e556 sd s5,136(sp) - c0040cc8: 89ba mv s3,a4 - c0040cca: 8a3e mv s4,a5 - c0040ccc: f922 sd s0,176(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19657 + c0040e86: 852e mv a0,a1 + c0040e88: 03500613 li a2,53 + c0040e8c: 85b6 mv a1,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19664 +{ + c0040e8e: fd06 sd ra,184(sp) + c0040e90: f14a sd s2,160(sp) + c0040e92: ed4e sd s3,152(sp) + c0040e94: e952 sd s4,144(sp) + c0040e96: e556 sd s5,136(sp) + c0040e98: 89ba mv s3,a4 + c0040e9a: 8a3e mv s4,a5 + c0040e9c: f922 sd s0,176(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19665 JSAsyncGeneratorData *s = JS_GetOpaque(this_val, JS_CLASS_ASYNC_GENERATOR); - c0040cce: be5c90ef jal ra,c000a8b2 - c0040cd2: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19661 + c0040e9e: b03c90ef jal ra,c000a9a0 + c0040ea2: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19669 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c0040cd4: 108c addi a1,sp,96 - c0040cd6: 8526 mv a0,s1 - c0040cd8: ab8ca0ef jal ra,c000af90 - c0040cdc: ec2e sd a1,24(sp) - c0040cde: e82a sd a0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19662 + c0040ea4: 108c addi a1,sp,96 + c0040ea6: 8526 mv a0,s1 + c0040ea8: 9d6ca0ef jal ra,c000b07e + c0040eac: ec2e sd a1,24(sp) + c0040eae: e82a sd a0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19670 if (JS_IsException(promise)) - c0040ce0: 2581 sext.w a1,a1 - c0040ce2: 4a99 li s5,6 - c0040ce4: 01559f63 bne a1,s5,c0040d02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19663 + c0040eb0: 2581 sext.w a1,a1 + c0040eb2: 4a99 li s5,6 + c0040eb4: 01559f63 bne a1,s5,c0040ed2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19671 return JS_EXCEPTION; - c0040ce8: e882 sd zero,80(sp) - c0040cea: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19694 (discriminator 1) -} - c0040cec: 70ea ld ra,184(sp) - c0040cee: 744a ld s0,176(sp) - c0040cf0: 6546 ld a0,80(sp) - c0040cf2: 65e6 ld a1,88(sp) - c0040cf4: 74aa ld s1,168(sp) - c0040cf6: 790a ld s2,160(sp) - c0040cf8: 69ea ld s3,152(sp) - c0040cfa: 6a4a ld s4,144(sp) - c0040cfc: 6aaa ld s5,136(sp) - c0040cfe: 6129 addi sp,sp,192 - c0040d00: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19664 + c0040eb8: e882 sd zero,80(sp) + c0040eba: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19702 (discriminator 1) +} + c0040ebc: 70ea ld ra,184(sp) + c0040ebe: 744a ld s0,176(sp) + c0040ec0: 6546 ld a0,80(sp) + c0040ec2: 65e6 ld a1,88(sp) + c0040ec4: 74aa ld s1,168(sp) + c0040ec6: 790a ld s2,160(sp) + c0040ec8: 69ea ld s3,152(sp) + c0040eca: 6a4a ld s4,144(sp) + c0040ecc: 6aaa ld s5,136(sp) + c0040ece: 6129 addi sp,sp,192 + c0040ed0: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19672 if (!s) { - c0040d02: 06091363 bnez s2,c0040d68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19666 + c0040ed2: 06091363 bnez s2,c0040f38 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19674 JS_ThrowTypeError(ctx, "not an AsyncGenerator object"); - c0040d06: 00020597 auipc a1,0x20 - c0040d0a: f5258593 addi a1,a1,-174 # c0060c58 - c0040d0e: 8526 mv a0,s1 - c0040d10: ee6d20ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19667 + c0040ed6: 00020597 auipc a1,0x20 + c0040eda: fe258593 addi a1,a1,-30 # c0060eb8 + c0040ede: 8526 mv a0,s1 + c0040ee0: e04d20ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19675 err = JS_GetException(ctx); - c0040d14: 8526 mv a0,s1 - c0040d16: 9b3c90ef jal ra,c000a6c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19668 + c0040ee4: 8526 mv a0,s1 + c0040ee6: 8d1c90ef jal ra,c000a7b6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 res2 = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040d1a: 7666 ld a2,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19667 + c0040eea: 7666 ld a2,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19675 err = JS_GetException(ctx); - c0040d1c: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19668 + c0040eec: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 res2 = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040d1e: 75c6 ld a1,112(sp) - c0040d20: 02010813 addi a6,sp,32 - c0040d24: 4785 li a5,1 - c0040d26: 4681 li a3,0 - c0040d28: 470d li a4,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19667 + c0040eee: 75c6 ld a1,112(sp) + c0040ef0: 02010813 addi a6,sp,32 + c0040ef4: 4785 li a5,1 + c0040ef6: 4681 li a3,0 + c0040ef8: 470d li a4,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19675 err = JS_GetException(ctx); - c0040d2a: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19668 + c0040efa: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 res2 = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040d2c: 8526 mv a0,s1 - c0040d2e: 9d9f80ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19670 + c0040efc: 8526 mv a0,s1 + c0040efe: 9d9f80ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19678 JS_FreeValue(ctx, err); - c0040d32: 7622 ld a2,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19668 + c0040f02: 7622 ld a2,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 res2 = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040d34: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19670 + c0040f04: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19678 JS_FreeValue(ctx, err); - c0040d36: 7582 ld a1,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19668 + c0040f06: 7582 ld a1,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 res2 = JS_Call(ctx, resolving_funcs[1], JS_UNDEFINED, - c0040d38: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19670 + c0040f08: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19678 JS_FreeValue(ctx, err); - c0040d3a: 8526 mv a0,s1 - c0040d3c: dfdc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19671 + c0040f0a: 8526 mv a0,s1 + c0040f0c: d1bc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19679 JS_FreeValue(ctx, res2); - c0040d40: 75c2 ld a1,48(sp) - c0040d42: 7662 ld a2,56(sp) - c0040d44: 8526 mv a0,s1 - c0040d46: df3c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19672 + c0040f10: 75c2 ld a1,48(sp) + c0040f12: 7662 ld a2,56(sp) + c0040f14: 8526 mv a0,s1 + c0040f16: d11c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19680 JS_FreeValue(ctx, resolving_funcs[0]); - c0040d4a: 7586 ld a1,96(sp) - c0040d4c: 7626 ld a2,104(sp) - c0040d4e: 8526 mv a0,s1 - c0040d50: de9c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19673 + c0040f1a: 7586 ld a1,96(sp) + c0040f1c: 7626 ld a2,104(sp) + c0040f1e: 8526 mv a0,s1 + c0040f20: d07c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19681 JS_FreeValue(ctx, resolving_funcs[1]); - c0040d54: 75c6 ld a1,112(sp) - c0040d56: 7666 ld a2,120(sp) - c0040d58: 8526 mv a0,s1 - c0040d5a: ddfc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19688 + c0040f24: 75c6 ld a1,112(sp) + c0040f26: 7666 ld a2,120(sp) + c0040f28: 8526 mv a0,s1 + c0040f2a: cfdc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19696 return promise; - c0040d5e: 67c2 ld a5,16(sp) - c0040d60: e8be sd a5,80(sp) - c0040d62: 67e2 ld a5,24(sp) - c0040d64: ecbe sd a5,88(sp) - c0040d66: b759 j c0040cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19676 + c0040f2e: 67c2 ld a5,16(sp) + c0040f30: e8be sd a5,80(sp) + c0040f32: 67e2 ld a5,24(sp) + c0040f34: ecbe sd a5,88(sp) + c0040f36: b759 j c0040ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19684 req = js_mallocz(ctx, sizeof(*req)); - c0040d68: 05800593 li a1,88 - c0040d6c: 8526 mv a0,s1 - c0040d6e: f6fd40ef jal ra,c0015cdc - c0040d72: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19677 + c0040f38: 05800593 li a1,88 + c0040f3c: 8526 mv a0,s1 + c0040f3e: f6fd40ef jal ra,c0015eac + c0040f42: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19685 if (!req) - c0040d74: e11d bnez a0,c0040d9a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19690 + c0040f44: e11d bnez a0,c0040f6a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19698 JS_FreeValue(ctx, resolving_funcs[0]); - c0040d76: 7586 ld a1,96(sp) - c0040d78: 7626 ld a2,104(sp) - c0040d7a: 8526 mv a0,s1 - c0040d7c: dbdc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19691 + c0040f46: 7586 ld a1,96(sp) + c0040f48: 7626 ld a2,104(sp) + c0040f4a: 8526 mv a0,s1 + c0040f4c: cdbc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19699 JS_FreeValue(ctx, resolving_funcs[1]); - c0040d80: 75c6 ld a1,112(sp) - c0040d82: 7666 ld a2,120(sp) - c0040d84: 8526 mv a0,s1 - c0040d86: db3c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19692 + c0040f50: 75c6 ld a1,112(sp) + c0040f52: 7666 ld a2,120(sp) + c0040f54: 8526 mv a0,s1 + c0040f56: cd1c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19700 JS_FreeValue(ctx, promise); - c0040d8a: 65c2 ld a1,16(sp) - c0040d8c: 6662 ld a2,24(sp) - c0040d8e: 8526 mv a0,s1 - c0040d90: da9c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19693 + c0040f5a: 65c2 ld a1,16(sp) + c0040f5c: 6662 ld a2,24(sp) + c0040f5e: 8526 mv a0,s1 + c0040f60: cc7c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19701 return JS_EXCEPTION; - c0040d94: e882 sd zero,80(sp) - c0040d96: ecd6 sd s5,88(sp) - c0040d98: bf91 j c0040cec -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19679 + c0040f64: e882 sd zero,80(sp) + c0040f66: ecd6 sd s5,88(sp) + c0040f68: bf91 j c0040ebc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19687 req->completion_type = magic; - c0040d9a: 01452823 sw s4,16(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19680 + c0040f6a: 01452823 sw s4,16(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19688 req->result = JS_DupValue(ctx, argv[0]); - c0040d9e: 0009b503 ld a0,0(s3) - c0040da2: 0089b583 ld a1,8(s3) - c0040da6: 8c9c50ef jal ra,c000666e - c0040daa: ec08 sd a0,24(s0) - c0040dac: f00c sd a1,32(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19681 + c0040f6e: 0009b503 ld a0,0(s3) + c0040f72: 0089b583 ld a1,8(s3) + c0040f76: fe6c50ef jal ra,c000675c + c0040f7a: ec08 sd a0,24(s0) + c0040f7c: f00c sd a1,32(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19689 req->promise = JS_DupValue(ctx, promise); - c0040dae: 6542 ld a0,16(sp) - c0040db0: 65e2 ld a1,24(sp) - c0040db2: 8bdc50ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19682 + c0040f7e: 6542 ld a0,16(sp) + c0040f80: 65e2 ld a1,24(sp) + c0040f82: fdac50ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19690 req->resolving_funcs[0] = resolving_funcs[0]; - c0040db6: 7786 ld a5,96(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19681 + c0040f86: 7786 ld a5,96(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19689 req->promise = JS_DupValue(ctx, promise); - c0040db8: f408 sd a0,40(s0) - c0040dba: f80c sd a1,48(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19682 + c0040f88: f408 sd a0,40(s0) + c0040f8a: f80c sd a1,48(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19690 req->resolving_funcs[0] = resolving_funcs[0]; - c0040dbc: fc1c sd a5,56(s0) - c0040dbe: 77a6 ld a5,104(sp) - c0040dc0: e03c sd a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19683 + c0040f8c: fc1c sd a5,56(s0) + c0040f8e: 77a6 ld a5,104(sp) + c0040f90: e03c sd a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19691 req->resolving_funcs[1] = resolving_funcs[1]; - c0040dc2: 77c6 ld a5,112(sp) - c0040dc4: e43c sd a5,72(s0) - c0040dc6: 77e6 ld a5,120(sp) - c0040dc8: e83c sd a5,80(s0) + c0040f92: 77c6 ld a5,112(sp) + c0040f94: e43c sd a5,72(s0) + c0040f96: 77e6 ld a5,120(sp) + c0040f98: e83c sd a5,80(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0040dca: 01893783 ld a5,24(s2) + c0040f9a: 01893783 ld a5,24(s2) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0040dce: e780 sd s0,8(a5) + c0040f9e: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0040dd0: e01c sd a5,0(s0) + c0040fa0: e01c sd a5,0(s0) js_async_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19684 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19692 list_add_tail(&req->link, &s->queue); - c0040dd2: 01890793 addi a5,s2,24 + c0040fa2: 01890793 addi a5,s2,24 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0040dd6: e41c sd a5,8(s0) + c0040fa6: e41c sd a5,8(s0) js_async_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19685 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19693 if (s->state != JS_ASYNC_GENERATOR_STATE_EXECUTING) { - c0040dd8: 00892703 lw a4,8(s2) + c0040fa8: 00892703 lw a4,8(s2) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0040ddc: 00893c23 sd s0,24(s2) + c0040fac: 00893c23 sd s0,24(s2) js_async_generator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19685 - c0040de0: 478d li a5,3 - c0040de2: f6f70ee3 beq a4,a5,c0040d5e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19686 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19693 + c0040fb0: 478d li a5,3 + c0040fb2: f6f70ee3 beq a4,a5,c0040f2e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:19694 js_async_generator_resume_next(ctx, s); - c0040de6: 85ca mv a1,s2 - c0040de8: 8526 mv a0,s1 - c0040dea: a8ffe0ef jal ra,c003f878 - c0040dee: bf85 j c0040d5e + c0040fb6: 85ca mv a1,s2 + c0040fb8: 8526 mv a0,s1 + c0040fba: a8ffe0ef jal ra,c003fa48 + c0040fbe: bf85 j c0040f2e -00000000c0040df0 : +00000000c0040fc0 : js_async_from_sync_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48875 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48883 { - c0040df0: 716d addi sp,sp,-272 - c0040df2: e02e sd a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48881 + c0040fc0: 716d addi sp,sp,-272 + c0040fc2: e02e sd a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48889 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c0040df4: 110c addi a1,sp,160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48875 + c0040fc4: 110c addi a1,sp,160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48883 { - c0040df6: e222 sd s0,256(sp) - c0040df8: f9ca sd s2,240(sp) - c0040dfa: f5ce sd s3,232(sp) - c0040dfc: f1d2 sd s4,224(sp) - c0040dfe: e606 sd ra,264(sp) - c0040e00: 8a3e mv s4,a5 - c0040e02: fda6 sd s1,248(sp) - c0040e04: 842a mv s0,a0 - c0040e06: e432 sd a2,8(sp) - c0040e08: 89b6 mv s3,a3 - c0040e0a: 893a mv s2,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48881 + c0040fc6: e222 sd s0,256(sp) + c0040fc8: f9ca sd s2,240(sp) + c0040fca: f5ce sd s3,232(sp) + c0040fcc: f1d2 sd s4,224(sp) + c0040fce: e606 sd ra,264(sp) + c0040fd0: 8a3e mv s4,a5 + c0040fd2: fda6 sd s1,248(sp) + c0040fd4: 842a mv s0,a0 + c0040fd6: e432 sd a2,8(sp) + c0040fd8: 89b6 mv s3,a3 + c0040fda: 893a mv s2,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48889 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c0040e0c: 984ca0ef jal ra,c000af90 - c0040e10: f42e sd a1,40(sp) - c0040e12: f02a sd a0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48882 + c0040fdc: 8a2ca0ef jal ra,c000b07e + c0040fe0: f42e sd a1,40(sp) + c0040fe2: f02a sd a0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48890 if (JS_IsException(promise)) - c0040e14: 2581 sext.w a1,a1 - c0040e16: 4799 li a5,6 - c0040e18: 00f59e63 bne a1,a5,c0040e34 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48883 + c0040fe4: 2581 sext.w a1,a1 + c0040fe6: 4799 li a5,6 + c0040fe8: 00f59e63 bne a1,a5,c0041004 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48891 return JS_EXCEPTION; - c0040e1c: f882 sd zero,112(sp) - c0040e1e: fcae sd a1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48975 (discriminator 4) -} - c0040e20: 60b2 ld ra,264(sp) - c0040e22: 6412 ld s0,256(sp) - c0040e24: 7546 ld a0,112(sp) - c0040e26: 75e6 ld a1,120(sp) - c0040e28: 74ee ld s1,248(sp) - c0040e2a: 794e ld s2,240(sp) - c0040e2c: 79ae ld s3,232(sp) - c0040e2e: 7a0e ld s4,224(sp) - c0040e30: 6151 addi sp,sp,272 - c0040e32: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48884 + c0040fec: f882 sd zero,112(sp) + c0040fee: fcae sd a1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48983 (discriminator 4) +} + c0040ff0: 60b2 ld ra,264(sp) + c0040ff2: 6412 ld s0,256(sp) + c0040ff4: 7546 ld a0,112(sp) + c0040ff6: 75e6 ld a1,120(sp) + c0040ff8: 74ee ld s1,248(sp) + c0040ffa: 794e ld s2,240(sp) + c0040ffc: 79ae ld s3,232(sp) + c0040ffe: 7a0e ld s4,224(sp) + c0041000: 6151 addi sp,sp,272 + c0041002: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48892 s = JS_GetOpaque(this_val, JS_CLASS_ASYNC_FROM_SYNC_ITERATOR); - c0040e34: 6502 ld a0,0(sp) - c0040e36: 65a2 ld a1,8(sp) - c0040e38: 03300613 li a2,51 - c0040e3c: a77c90ef jal ra,c000a8b2 - c0040e40: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48885 + c0041004: 6502 ld a0,0(sp) + c0041006: 65a2 ld a1,8(sp) + c0041008: 03300613 li a2,51 + c004100c: 995c90ef jal ra,c000a9a0 + c0041010: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48893 if (!s) { - c0040e42: ed01 bnez a0,c0040e5a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48886 + c0041012: ed01 bnez a0,c004102a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48894 JS_ThrowTypeError(ctx, "not an Async-from-Sync Iterator"); - c0040e44: 00020597 auipc a1,0x20 - c0040e48: e3458593 addi a1,a1,-460 # c0060c78 - c0040e4c: 8522 mv a0,s0 - c0040e4e: da8d20ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48925 + c0041014: 00020597 auipc a1,0x20 + c0041018: ec458593 addi a1,a1,-316 # c0060ed8 + c004101c: 8522 mv a0,s0 + c004101e: cc6d20ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48933 err = JS_GetException(ctx); - c0040e52: 8522 mv a0,s0 - c0040e54: 875c90ef jal ra,c000a6c8 - c0040e58: aaa1 j c0040fb0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48890 + c0041022: 8522 mv a0,s0 + c0041024: f92c90ef jal ra,c000a7b6 + c0041028: aaa1 j c0041180 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48898 if (magic == GEN_MAGIC_NEXT) { - c0040e5a: 080a1a63 bnez s4,c0040eee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48891 + c004102a: 080a1a63 bnez s4,c00410be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48899 method = JS_DupValue(ctx, s->next_method); - c0040e5e: 6908 ld a0,16(a0) - c0040e60: 6c8c ld a1,24(s1) - c0040e62: 80dc50ef jal ra,c000666e - c0040e66: e0aa sd a0,64(sp) - c0040e68: 872e mv a4,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48909 + c004102e: 6908 ld a0,16(a0) + c0041030: 6c8c ld a1,24(s1) + c0041032: f2ac50ef jal ra,c000675c + c0041036: e0aa sd a0,64(sp) + c0041038: 872e mv a4,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48917 value = JS_IteratorNext2(ctx, s->sync_iter, method, - c0040e6a: 6490 ld a2,8(s1) - c0040e6c: 6686 ld a3,64(sp) - c0040e6e: 608c ld a1,0(s1) - c0040e70: 013027b3 sgtz a5,s3 - c0040e74: 01c10893 addi a7,sp,28 - c0040e78: 884a mv a6,s2 - c0040e7a: 8522 mv a0,s0 - c0040e7c: e4ba sd a4,72(sp) - c0040e7e: 9fdf90ef jal ra,c003a87a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48911 + c004103a: 6490 ld a2,8(s1) + c004103c: 6686 ld a3,64(sp) + c004103e: 608c ld a1,0(s1) + c0041040: 013027b3 sgtz a5,s3 + c0041044: 01c10893 addi a7,sp,28 + c0041048: 884a mv a6,s2 + c004104a: 8522 mv a0,s0 + c004104c: e4ba sd a4,72(sp) + c004104e: 9fdf90ef jal ra,c003aa4a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48919 JS_FreeValue(ctx, method); - c0040e82: 6626 ld a2,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48909 + c0041052: 6626 ld a2,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48917 value = JS_IteratorNext2(ctx, s->sync_iter, method, - c0040e84: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48911 + c0041054: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48919 JS_FreeValue(ctx, method); - c0040e86: 6586 ld a1,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48909 + c0041056: 6586 ld a1,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48917 value = JS_IteratorNext2(ctx, s->sync_iter, method, - c0040e88: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48911 + c0041058: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48919 JS_FreeValue(ctx, method); - c0040e8a: 8522 mv a0,s0 - c0040e8c: cadc60ef jal ra,c0007b38 + c004105a: 8522 mv a0,s0 + c004105c: bcbc60ef jal ra,c0007c26 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0040e90: 7662 ld a2,56(sp) + c0041060: 7662 ld a2,56(sp) js_async_from_sync_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48912 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48920 if (JS_IsException(value)) - c0040e92: 4499 li s1,6 - c0040e94: 0006079b sext.w a5,a2 - c0040e98: fa978de3 beq a5,s1,c0040e52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48914 + c0041062: 4499 li s1,6 + c0041064: 0006079b sext.w a5,a2 + c0041068: fa978de3 beq a5,s1,c0041022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48922 if (done == 2) { - c0040e9c: 4772 lw a4,28(sp) - c0040e9e: 4789 li a5,2 - c0040ea0: 02f71363 bne a4,a5,c0040ec6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48915 + c004106c: 4772 lw a4,28(sp) + c004106e: 4789 li a5,2 + c0041070: 02f71363 bne a4,a5,c0041096 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48923 JSValue obj = value; - c0040ea4: 75c2 ld a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48916 + c0041074: 75c2 ld a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48924 value = JS_IteratorGetCompleteValue(ctx, obj, &done); - c0040ea6: 0874 addi a3,sp,28 - c0040ea8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48915 + c0041076: 0874 addi a3,sp,28 + c0041078: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48923 JSValue obj = value; - c0040eaa: e5b2 sd a2,200(sp) - c0040eac: e1ae sd a1,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48916 + c004107a: e5b2 sd a2,200(sp) + c004107c: e1ae sd a1,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48924 value = JS_IteratorGetCompleteValue(ctx, obj, &done); - c0040eae: cf9d00ef jal ra,c0011ba6 - c0040eb2: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48917 + c004107e: c17d00ef jal ra,c0011c94 + c0041082: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48925 JS_FreeValue(ctx, obj); - c0040eb4: 662e ld a2,200(sp) - c0040eb6: 658e ld a1,192(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48916 + c0041084: 662e ld a2,200(sp) + c0041086: 658e ld a1,192(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48924 value = JS_IteratorGetCompleteValue(ctx, obj, &done); - c0040eb8: f82a sd a0,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48917 + c0041088: f82a sd a0,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48925 JS_FreeValue(ctx, obj); - c0040eba: 8522 mv a0,s0 - c0040ebc: c7dc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48918 + c004108a: 8522 mv a0,s0 + c004108c: b9bc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48926 if (JS_IsException(value)) - c0040ec0: 57e2 lw a5,56(sp) - c0040ec2: f89788e3 beq a5,s1,c0040e52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48940 + c0041090: 57e2 lw a5,56(sp) + c0041092: f89788e3 beq a5,s1,c0041022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48948 value_wrapper_promise = js_promise_resolve(ctx, ctx->promise_ctor, - c0040ec6: 644c ld a1,136(s0) - c0040ec8: 6850 ld a2,144(s0) - c0040eca: 4781 li a5,0 - c0040ecc: 1818 addi a4,sp,48 - c0040ece: 4685 li a3,1 - c0040ed0: 8522 mv a0,s0 - c0040ed2: f13fa0ef jal ra,c003bde4 - c0040ed6: ecae sd a1,88(sp) - c0040ed8: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48942 + c0041096: 644c ld a1,136(s0) + c0041098: 6850 ld a2,144(s0) + c004109a: 4781 li a5,0 + c004109c: 1818 addi a4,sp,48 + c004109e: 4685 li a3,1 + c00410a0: 8522 mv a0,s0 + c00410a2: f13fa0ef jal ra,c003bfb4 + c00410a6: ecae sd a1,88(sp) + c00410a8: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48950 if (JS_IsException(value_wrapper_promise)) { - c0040eda: 2581 sext.w a1,a1 - c0040edc: 4919 li s2,6 - c0040ede: 0d259d63 bne a1,s2,c0040fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48943 + c00410aa: 2581 sext.w a1,a1 + c00410ac: 4919 li s2,6 + c00410ae: 0d259d63 bne a1,s2,c0041188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48951 JS_FreeValue(ctx, value); - c0040ee2: 75c2 ld a1,48(sp) - c0040ee4: 7662 ld a2,56(sp) - c0040ee6: 8522 mv a0,s0 - c0040ee8: c51c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48944 + c00410b2: 75c2 ld a1,48(sp) + c00410b4: 7662 ld a2,56(sp) + c00410b6: 8522 mv a0,s0 + c00410b8: b6fc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48952 goto reject; - c0040eec: b79d j c0040e52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48893 + c00410bc: b79d j c0041022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48901 method = JS_GetProperty(ctx, s->sync_iter, - c0040eee: 4785 li a5,1 - c0040ef0: 4699 li a3,6 - c0040ef2: 00fa0363 beq s4,a5,c0040ef8 - c0040ef6: 46dd li a3,23 - c0040ef8: 6098 ld a4,0(s1) + c00410be: 4785 li a5,1 + c00410c0: 4699 li a3,6 + c00410c2: 00fa0363 beq s4,a5,c00410c8 + c00410c6: 46dd li a3,23 + c00410c8: 6098 ld a4,0(s1) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0040efa: 4801 li a6,0 - c0040efc: 8522 mv a0,s0 - c0040efe: e1ba sd a4,192(sp) - c0040f00: 649c ld a5,8(s1) - c0040f02: 85ba mv a1,a4 - c0040f04: 863e mv a2,a5 - c0040f06: e5be sd a5,200(sp) - c0040f08: 93bd00ef jal ra,c0011842 - c0040f0c: f0aa sd a0,96(sp) - c0040f0e: f4ae sd a1,104(sp) - c0040f10: e0aa sd a0,64(sp) - c0040f12: e4ae sd a1,72(sp) + c00410ca: 4801 li a6,0 + c00410cc: 8522 mv a0,s0 + c00410ce: e1ba sd a4,192(sp) + c00410d0: 649c ld a5,8(s1) + c00410d2: 85ba mv a1,a4 + c00410d4: 863e mv a2,a5 + c00410d6: e5be sd a5,200(sp) + c00410d8: 859d00ef jal ra,c0011930 + c00410dc: f0aa sd a0,96(sp) + c00410de: f4ae sd a1,104(sp) + c00410e0: e0aa sd a0,64(sp) + c00410e2: e4ae sd a1,72(sp) js_async_from_sync_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48896 (discriminator 4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48904 (discriminator 4) if (JS_IsException(method)) - c0040f14: 0005869b sext.w a3,a1 - c0040f18: 4799 li a5,6 + c00410e4: 0005869b sext.w a3,a1 + c00410e8: 4799 li a5,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 (discriminator 4) - c0040f1a: 872e mv a4,a1 + c00410ea: 872e mv a4,a1 js_async_from_sync_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48896 (discriminator 4) - c0040f1c: f2f68be3 beq a3,a5,c0040e52 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48898 (discriminator 1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48904 (discriminator 4) + c00410ec: f2f68be3 beq a3,a5,c0041022 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48906 (discriminator 1) if (JS_IsUndefined(method) || JS_IsNull(method)) { - c0040f20: ffe5861b addiw a2,a1,-2 - c0040f24: 4785 li a5,1 - c0040f26: f4c7e2e3 bltu a5,a2,c0040e6a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48900 + c00410f0: ffe5861b addiw a2,a1,-2 + c00410f4: 4785 li a5,1 + c00410f6: f4c7e2e3 bltu a5,a2,c004103a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48908 err = js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), TRUE); - c0040f2a: 00093503 ld a0,0(s2) - c0040f2e: 00893583 ld a1,8(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48899 + c00410fa: 00093503 ld a0,0(s2) + c00410fe: 00893583 ld a1,8(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48907 if (magic == GEN_MAGIC_RETURN) { - c0040f32: 06fa1d63 bne s4,a5,c0040fac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48900 + c0041102: 06fa1d63 bne s4,a5,c004117c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48908 err = js_create_iterator_result(ctx, JS_DupValue(ctx, argv[0]), TRUE); - c0040f36: f38c50ef jal ra,c000666e - c0040f3a: 862e mv a2,a1 - c0040f3c: e1aa sd a0,192(sp) - c0040f3e: e5ae sd a1,200(sp) - c0040f40: 4685 li a3,1 - c0040f42: 85aa mv a1,a0 - c0040f44: 8522 mv a0,s0 - c0040f46: b7de70ef jal ra,c0028ac2 - c0040f4a: e8aa sd a0,80(sp) - c0040f4c: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48901 + c0041106: e56c50ef jal ra,c000675c + c004110a: 862e mv a2,a1 + c004110c: e1aa sd a0,192(sp) + c004110e: e5ae sd a1,200(sp) + c0041110: 4685 li a3,1 + c0041112: 85aa mv a1,a0 + c0041114: 8522 mv a0,s0 + c0041116: b7de70ef jal ra,c0028c92 + c004111a: e8aa sd a0,80(sp) + c004111c: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48909 is_reject = 0; - c0040f4e: 4781 li a5,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48928 + c004111e: 4781 li a5,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48936 res2 = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, - c0040f50: 470d li a4,3 - c0040f52: ed3a sd a4,152(sp) - c0040f54: 0792 slli a5,a5,0x4 - c0040f56: 1198 addi a4,sp,224 - c0040f58: 00f70633 add a2,a4,a5 - c0040f5c: fc063583 ld a1,-64(a2) - c0040f60: fc863603 ld a2,-56(a2) - c0040f64: 05010813 addi a6,sp,80 - c0040f68: 4785 li a5,1 - c0040f6a: 4681 li a3,0 - c0040f6c: 470d li a4,3 - c0040f6e: 8522 mv a0,s0 - c0040f70: e902 sd zero,144(sp) - c0040f72: f94f80ef jal ra,c0039706 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48930 + c0041120: 470d li a4,3 + c0041122: ed3a sd a4,152(sp) + c0041124: 0792 slli a5,a5,0x4 + c0041126: 1198 addi a4,sp,224 + c0041128: 00f70633 add a2,a4,a5 + c004112c: fc063583 ld a1,-64(a2) + c0041130: fc863603 ld a2,-56(a2) + c0041134: 05010813 addi a6,sp,80 + c0041138: 4785 li a5,1 + c004113a: 4681 li a3,0 + c004113c: 470d li a4,3 + c004113e: 8522 mv a0,s0 + c0041140: e902 sd zero,144(sp) + c0041142: f94f80ef jal ra,c00398d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48938 JS_FreeValue(ctx, err); - c0040f76: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48928 + c0041146: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48936 res2 = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, - c0040f78: e52e sd a1,136(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48930 + c0041148: e52e sd a1,136(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48938 JS_FreeValue(ctx, err); - c0040f7a: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48928 + c004114a: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48936 res2 = JS_Call(ctx, resolving_funcs[is_reject], JS_UNDEFINED, - c0040f7c: e12a sd a0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48930 + c004114c: e12a sd a0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48938 JS_FreeValue(ctx, err); - c0040f7e: 8522 mv a0,s0 - c0040f80: bb9c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48931 + c004114e: 8522 mv a0,s0 + c0041150: ad7c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48939 JS_FreeValue(ctx, res2); - c0040f84: 658a ld a1,128(sp) - c0040f86: 662a ld a2,136(sp) - c0040f88: 8522 mv a0,s0 - c0040f8a: bafc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48932 + c0041154: 658a ld a1,128(sp) + c0041156: 662a ld a2,136(sp) + c0041158: 8522 mv a0,s0 + c004115a: acdc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48940 JS_FreeValue(ctx, resolving_funcs[0]); - c0040f8e: 758a ld a1,160(sp) - c0040f90: 762a ld a2,168(sp) - c0040f92: 8522 mv a0,s0 - c0040f94: ba5c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48933 + c004115e: 758a ld a1,160(sp) + c0041160: 762a ld a2,168(sp) + c0041162: 8522 mv a0,s0 + c0041164: ac3c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48941 JS_FreeValue(ctx, resolving_funcs[1]); - c0040f98: 75ca ld a1,176(sp) - c0040f9a: 766a ld a2,184(sp) - c0040f9c: 8522 mv a0,s0 - c0040f9e: b9bc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48968 + c0041168: 75ca ld a1,176(sp) + c004116a: 766a ld a2,184(sp) + c004116c: 8522 mv a0,s0 + c004116e: ab9c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48976 return promise; - c0040fa2: 7782 ld a5,32(sp) - c0040fa4: f8be sd a5,112(sp) - c0040fa6: 77a2 ld a5,40(sp) - c0040fa8: fcbe sd a5,120(sp) - c0040faa: bd9d j c0040e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48903 + c0041172: 7782 ld a5,32(sp) + c0041174: f8be sd a5,112(sp) + c0041176: 77a2 ld a5,40(sp) + c0041178: fcbe sd a5,120(sp) + c004117a: bd9d j c0040ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48911 err = JS_DupValue(ctx, argv[0]); - c0040fac: ec2c50ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48925 + c004117c: de0c50ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48933 err = JS_GetException(ctx); - c0040fb0: e8aa sd a0,80(sp) - c0040fb2: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48926 + c0041180: e8aa sd a0,80(sp) + c0041182: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48934 is_reject = 1; - c0040fb4: 4785 li a5,1 - c0040fb6: bf69 j c0040f50 + c0041184: 4785 li a5,1 + c0041186: bf69 j c0041120 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0040fb8: 47f2 lw a5,28(sp) - c0040fba: c302 sw zero,132(sp) + c0041188: 47f2 lw a5,28(sp) + c004118a: c302 sw zero,132(sp) js_async_from_sync_iterator_unwrap_func_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48807 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48815 return JS_NewCFunctionData(ctx, js_async_from_sync_iterator_unwrap, - c0040fbc: 4681 li a3,0 + c004118c: 4681 li a3,0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c0040fbe: 00f037b3 snez a5,a5 - c0040fc2: c13e sw a5,128(sp) - c0040fc4: 670a ld a4,128(sp) - c0040fc6: 4785 li a5,1 - c0040fc8: e53e sd a5,136(sp) - c0040fca: e1ba sd a4,192(sp) - c0040fcc: e5be sd a5,200(sp) + c004118e: 00f037b3 snez a5,a5 + c0041192: c13e sw a5,128(sp) + c0041194: 670a ld a4,128(sp) + c0041196: 4785 li a5,1 + c0041198: e53e sd a5,136(sp) + c004119a: e1ba sd a4,192(sp) + c004119c: e5be sd a5,200(sp) js_async_from_sync_iterator_unwrap_func_create(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48806 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48814 func_data[0] = (JSValueConst)JS_NewBool(ctx, done); - c0040fce: f8ba sd a4,112(sp) - c0040fd0: fcbe sd a5,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48807 + c004119e: f8ba sd a4,112(sp) + c00411a0: fcbe sd a5,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48815 return JS_NewCFunctionData(ctx, js_async_from_sync_iterator_unwrap, - c0040fd2: 4705 li a4,1 - c0040fd4: 189c addi a5,sp,112 - c0040fd6: 4605 li a2,1 - c0040fd8: fffe8597 auipc a1,0xfffe8 - c0040fdc: b7658593 addi a1,a1,-1162 # c0028b4e - c0040fe0: 8522 mv a0,s0 - c0040fe2: a14e80ef jal ra,c00291f6 - c0040fe6: e92a sd a0,144(sp) - c0040fe8: ed2e sd a1,152(sp) - c0040fea: f8aa sd a0,112(sp) - c0040fec: fcae sd a1,120(sp) + c00411a2: 4705 li a4,1 + c00411a4: 189c addi a5,sp,112 + c00411a6: 4605 li a2,1 + c00411a8: fffe8597 auipc a1,0xfffe8 + c00411ac: b7658593 addi a1,a1,-1162 # c0028d1e + c00411b0: 8522 mv a0,s0 + c00411b2: a14e80ef jal ra,c00293c6 + c00411b6: e92a sd a0,144(sp) + c00411b8: ed2e sd a1,152(sp) + c00411ba: f8aa sd a0,112(sp) + c00411bc: fcae sd a1,120(sp) js_async_from_sync_iterator_next(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48948 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48956 js_async_from_sync_iterator_unwrap_func_create(ctx, done); - c0040fee: e1aa sd a0,192(sp) - c0040ff0: e5ae sd a1,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48949 + c00411be: e1aa sd a0,192(sp) + c00411c0: e5ae sd a1,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48957 if (JS_IsException(resolve_reject[0])) { - c0040ff2: 0005849b sext.w s1,a1 - c0040ff6: 03249e63 bne s1,s2,c0041032 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48950 + c00411c2: 0005849b sext.w s1,a1 + c00411c6: 03249e63 bne s1,s2,c0041202 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48958 JS_FreeValue(ctx, value_wrapper_promise); - c0040ffa: 65c6 ld a1,80(sp) - c0040ffc: 6666 ld a2,88(sp) - c0040ffe: 8522 mv a0,s0 - c0041000: b39c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48970 + c00411ca: 65c6 ld a1,80(sp) + c00411cc: 6666 ld a2,88(sp) + c00411ce: 8522 mv a0,s0 + c00411d0: a57c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48978 JS_FreeValue(ctx, value); - c0041004: 75c2 ld a1,48(sp) - c0041006: 7662 ld a2,56(sp) - c0041008: 8522 mv a0,s0 - c004100a: b2fc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48971 + c00411d4: 75c2 ld a1,48(sp) + c00411d6: 7662 ld a2,56(sp) + c00411d8: 8522 mv a0,s0 + c00411da: a4dc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48979 JS_FreeValue(ctx, resolving_funcs[0]); - c004100e: 758a ld a1,160(sp) - c0041010: 762a ld a2,168(sp) - c0041012: 8522 mv a0,s0 - c0041014: b25c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48972 + c00411de: 758a ld a1,160(sp) + c00411e0: 762a ld a2,168(sp) + c00411e2: 8522 mv a0,s0 + c00411e4: a43c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48980 JS_FreeValue(ctx, resolving_funcs[1]); - c0041018: 75ca ld a1,176(sp) - c004101a: 766a ld a2,184(sp) - c004101c: 8522 mv a0,s0 - c004101e: b1bc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48973 + c00411e8: 75ca ld a1,176(sp) + c00411ea: 766a ld a2,184(sp) + c00411ec: 8522 mv a0,s0 + c00411ee: a39c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48981 JS_FreeValue(ctx, promise); - c0041022: 7582 ld a1,32(sp) - c0041024: 7622 ld a2,40(sp) - c0041026: 8522 mv a0,s0 - c0041028: b11c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48974 + c00411f2: 7582 ld a1,32(sp) + c00411f4: 7622 ld a2,40(sp) + c00411f6: 8522 mv a0,s0 + c00411f8: a2fc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48982 return JS_EXCEPTION; - c004102c: f882 sd zero,112(sp) - c004102e: fca6 sd s1,120(sp) - c0041030: bbc5 j c0040e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48953 + c00411fc: f882 sd zero,112(sp) + c00411fe: fca6 sd s1,120(sp) + c0041200: bbc5 j c0040ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48961 JS_FreeValue(ctx, value); - c0041032: 75c2 ld a1,48(sp) - c0041034: 7662 ld a2,56(sp) - c0041036: 8522 mv a0,s0 - c0041038: b01c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48956 + c0041202: 75c2 ld a1,48(sp) + c0041204: 7662 ld a2,56(sp) + c0041206: 8522 mv a0,s0 + c0041208: a1fc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48964 res = perform_promise_then(ctx, value_wrapper_promise, - c004103c: 65c6 ld a1,80(sp) - c004103e: 6666 ld a2,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48954 + c004120c: 65c6 ld a1,80(sp) + c004120e: 6666 ld a2,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48962 resolve_reject[1] = JS_UNDEFINED; - c0041040: 478d li a5,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48956 + c0041210: 478d li a5,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48964 res = perform_promise_then(ctx, value_wrapper_promise, - c0041042: 1118 addi a4,sp,160 - c0041044: 0194 addi a3,sp,192 - c0041046: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48954 + c0041212: 1118 addi a4,sp,160 + c0041214: 0194 addi a3,sp,192 + c0041216: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48962 resolve_reject[1] = JS_UNDEFINED; - c0041048: edbe sd a5,216(sp) - c004104a: e982 sd zero,208(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48956 + c0041218: edbe sd a5,216(sp) + c004121a: e982 sd zero,208(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48964 res = perform_promise_then(ctx, value_wrapper_promise, - c004104c: eb7d40ef jal ra,c0015f02 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48959 + c004121c: eb7d40ef jal ra,c00160d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48967 JS_FreeValue(ctx, resolve_reject[0]); - c0041050: 658e ld a1,192(sp) - c0041052: 662e ld a2,200(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48956 + c0041220: 658e ld a1,192(sp) + c0041222: 662e ld a2,200(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48964 res = perform_promise_then(ctx, value_wrapper_promise, - c0041054: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48959 + c0041224: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48967 JS_FreeValue(ctx, resolve_reject[0]); - c0041056: 8522 mv a0,s0 - c0041058: ae1c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48960 + c0041226: 8522 mv a0,s0 + c0041228: 9ffc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48968 JS_FreeValue(ctx, value_wrapper_promise); - c004105c: 65c6 ld a1,80(sp) - c004105e: 6666 ld a2,88(sp) - c0041060: 8522 mv a0,s0 - c0041062: ad7c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48961 + c004122c: 65c6 ld a1,80(sp) + c004122e: 6666 ld a2,88(sp) + c0041230: 8522 mv a0,s0 + c0041232: 9f5c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48969 JS_FreeValue(ctx, resolving_funcs[0]); - c0041066: 758a ld a1,160(sp) - c0041068: 762a ld a2,168(sp) - c004106a: 8522 mv a0,s0 - c004106c: acdc60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48962 + c0041236: 758a ld a1,160(sp) + c0041238: 762a ld a2,168(sp) + c004123a: 8522 mv a0,s0 + c004123c: 9ebc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48970 JS_FreeValue(ctx, resolving_funcs[1]); - c0041070: 75ca ld a1,176(sp) - c0041072: 766a ld a2,184(sp) - c0041074: 8522 mv a0,s0 - c0041076: ac3c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48963 + c0041240: 75ca ld a1,176(sp) + c0041242: 766a ld a2,184(sp) + c0041244: 8522 mv a0,s0 + c0041246: 9e1c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48971 if (res) { - c004107a: f20484e3 beqz s1,c0040fa2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48964 + c004124a: f20484e3 beqz s1,c0041172 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48972 JS_FreeValue(ctx, promise); - c004107e: 7582 ld a1,32(sp) - c0041080: 7622 ld a2,40(sp) - c0041082: 8522 mv a0,s0 - c0041084: ab5c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48965 + c004124e: 7582 ld a1,32(sp) + c0041250: 7622 ld a2,40(sp) + c0041252: 8522 mv a0,s0 + c0041254: 9d3c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:48973 return JS_EXCEPTION; - c0041088: f882 sd zero,112(sp) - c004108a: fcca sd s2,120(sp) - c004108c: bb51 j c0040e20 + c0041258: f882 sd zero,112(sp) + c004125a: fcca sd s2,120(sp) + c004125c: bb51 j c0040ff0 -00000000c004108e : +00000000c004125e : JS_AddIntrinsicPromise(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49019 { - c004108e: 7179 addi sp,sp,-48 - c0041090: f022 sd s0,32(sp) - c0041092: f406 sd ra,40(sp) - c0041094: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49012 + c004125e: 7179 addi sp,sp,-48 + c0041260: f022 sd s0,32(sp) + c0041262: f406 sd ra,40(sp) + c0041264: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49020 JSRuntime *rt = ctx->rt; - c0041096: 6d04 ld s1,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49011 + c0041266: 6d04 ld s1,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49019 { - c0041098: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49015 + c0041268: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49023 if (!JS_IsRegisteredClass(rt, JS_CLASS_PROMISE)) { - c004109a: 02d00593 li a1,45 - c004109e: 8526 mv a0,s1 - c00410a0: 9fdc60ef jal ra,c0007a9c - c00410a4: ed39 bnez a0,c0041102 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49016 + c004126a: 02d00593 li a1,45 + c004126e: 8526 mv a0,s1 + c0041270: 91bc60ef jal ra,c0007b8a + c0041274: ed39 bnez a0,c00412d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49024 init_class_range(rt, js_async_class_def, JS_CLASS_PROMISE, - c00410a6: 46a5 li a3,9 - c00410a8: 02d00613 li a2,45 - c00410ac: 00021597 auipc a1,0x21 - c00410b0: 74458593 addi a1,a1,1860 # c00627f0 - c00410b4: 8526 mv a0,s1 - c00410b6: c0bc30ef jal ra,c0004cc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49018 + c0041276: 46a5 li a3,9 + c0041278: 02d00613 li a2,45 + c004127c: 00021597 auipc a1,0x21 + c0041280: 7d458593 addi a1,a1,2004 # c0062a50 + c0041284: 8526 mv a0,s1 + c0041286: a3bc30ef jal ra,c0004cc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49026 rt->class_array[JS_CLASS_PROMISE_RESOLVE_FUNCTION].call = js_promise_resolve_function_call; - c00410ba: 78b8 ld a4,112(s1) - c00410bc: fffd4797 auipc a5,0xfffd4 - c00410c0: 3ac78793 addi a5,a5,940 # c0015468 - c00410c4: 74f73423 sd a5,1864(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49019 + c004128a: 78b8 ld a4,112(s1) + c004128c: fffd4797 auipc a5,0xfffd4 + c0041290: 3ac78793 addi a5,a5,940 # c0015638 + c0041294: 74f73423 sd a5,1864(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49027 rt->class_array[JS_CLASS_PROMISE_REJECT_FUNCTION].call = js_promise_resolve_function_call; - c00410c8: 78b8 ld a4,112(s1) - c00410ca: 76f73823 sd a5,1904(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49020 + c0041298: 78b8 ld a4,112(s1) + c004129a: 76f73823 sd a5,1904(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49028 rt->class_array[JS_CLASS_ASYNC_FUNCTION].call = js_async_function_call; - c00410ce: 78bc ld a5,112(s1) - c00410d0: fffff717 auipc a4,0xfffff - c00410d4: bce70713 addi a4,a4,-1074 # c003fc9e - c00410d8: 78e7bc23 sd a4,1944(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49021 + c004129e: 78bc ld a5,112(s1) + c00412a0: fffff717 auipc a4,0xfffff + c00412a4: bce70713 addi a4,a4,-1074 # c003fe6e + c00412a8: 78e7bc23 sd a4,1944(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49029 rt->class_array[JS_CLASS_ASYNC_FUNCTION_RESOLVE].call = js_async_function_resolve_call; - c00410dc: 78b8 ld a4,112(s1) - c00410de: ffffb797 auipc a5,0xffffb - c00410e2: fb078793 addi a5,a5,-80 # c003c08e - c00410e6: 7cf73023 sd a5,1984(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49022 + c00412ac: 78b8 ld a4,112(s1) + c00412ae: ffffb797 auipc a5,0xffffb + c00412b2: fb078793 addi a5,a5,-80 # c003c25e + c00412b6: 7cf73023 sd a5,1984(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49030 rt->class_array[JS_CLASS_ASYNC_FUNCTION_REJECT].call = js_async_function_resolve_call; - c00410ea: 78b8 ld a4,112(s1) - c00410ec: 7ef73423 sd a5,2024(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49023 + c00412ba: 78b8 ld a4,112(s1) + c00412bc: 7ef73423 sd a5,2024(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49031 rt->class_array[JS_CLASS_ASYNC_GENERATOR_FUNCTION].call = js_async_generator_function_call; - c00410f0: 78bc ld a5,112(s1) - c00410f2: 6705 lui a4,0x1 - c00410f4: 97ba add a5,a5,a4 - c00410f6: ffff7717 auipc a4,0xffff7 - c00410fa: 0fc70713 addi a4,a4,252 # c00381f2 - c00410fe: 82e7bc23 sd a4,-1992(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49027 + c00412c0: 78bc ld a5,112(s1) + c00412c2: 6705 lui a4,0x1 + c00412c4: 97ba add a5,a5,a4 + c00412c6: ffff7717 auipc a4,0xffff7 + c00412ca: 0fc70713 addi a4,a4,252 # c00383c2 + c00412ce: 82e7bc23 sd a4,-1992(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49035 ctx->class_proto[JS_CLASS_PROMISE] = JS_NewObject(ctx); - c0041102: 8522 mv a0,s0 - c0041104: c85d50ef jal ra,c0016d88 - c0041108: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49028 + c00412d2: 8522 mv a0,s0 + c00412d4: c85d50ef jal ra,c0016f58 + c00412d8: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49036 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_PROMISE], - c004110a: 4711 li a4,4 - c004110c: 00024697 auipc a3,0x24 - c0041110: f2c68693 addi a3,a3,-212 # c0065038 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49027 + c00412da: 4711 li a4,4 + c00412dc: 00024697 auipc a3,0x24 + c00412e0: fbc68693 addi a3,a3,-68 # c0065298 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49035 ctx->class_proto[JS_CLASS_PROMISE] = JS_NewObject(ctx); - c0041114: 2ca7b823 sd a0,720(a5) - c0041118: 2cb7bc23 sd a1,728(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49028 + c00412e4: 2ca7b823 sd a0,720(a5) + c00412e8: 2cb7bc23 sd a1,728(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49036 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_PROMISE], - c004111c: 603c ld a5,64(s0) - c004111e: 8522 mv a0,s0 - c0041120: 2d07b583 ld a1,720(a5) - c0041124: 2d87b603 ld a2,728(a5) - c0041128: b59f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49031 + c00412ec: 603c ld a5,64(s0) + c00412ee: 8522 mv a0,s0 + c00412f0: 2d07b583 ld a1,720(a5) + c00412f4: 2d87b603 ld a2,728(a5) + c00412f8: b59f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49039 obj1 = JS_NewCFunction2(ctx, js_promise_constructor, "Promise", 1, - c004112c: 4781 li a5,0 - c004112e: 4709 li a4,2 - c0041130: 4685 li a3,1 - c0041132: 00020617 auipc a2,0x20 - c0041136: b6660613 addi a2,a2,-1178 # c0060c98 - c004113a: 8522 mv a0,s0 - c004113c: ffff9597 auipc a1,0xffff9 - c0041140: 2a458593 addi a1,a1,676 # c003a3e0 - c0041144: 8a2e80ef jal ra,c00291e6 - c0041148: e02a sd a0,0(sp) - c004114a: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49033 + c00412fc: 4781 li a5,0 + c00412fe: 4709 li a4,2 + c0041300: 4685 li a3,1 + c0041302: 00020617 auipc a2,0x20 + c0041306: bf660613 addi a2,a2,-1034 # c0060ef8 + c004130a: 8522 mv a0,s0 + c004130c: ffff9597 auipc a1,0xffff9 + c0041310: 2a458593 addi a1,a1,676 # c003a5b0 + c0041314: 8a2e80ef jal ra,c00293b6 + c0041318: e02a sd a0,0(sp) + c004131a: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49041 ctx->promise_ctor = JS_DupValue(ctx, obj1); - c004114c: d22c50ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49034 + c004131c: c40c50ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 JS_SetPropertyFunctionList(ctx, obj1, - c0041150: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49033 + c0041320: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49041 ctx->promise_ctor = JS_DupValue(ctx, obj1); - c0041152: e84c sd a1,144(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49034 + c0041322: e84c sd a1,144(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 JS_SetPropertyFunctionList(ctx, obj1, - c0041154: 6582 ld a1,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49033 + c0041324: 6582 ld a1,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49041 ctx->promise_ctor = JS_DupValue(ctx, obj1); - c0041156: e448 sd a0,136(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49034 + c0041326: e448 sd a0,136(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 JS_SetPropertyFunctionList(ctx, obj1, - c0041158: 4721 li a4,8 - c004115a: 8522 mv a0,s0 - c004115c: 00024697 auipc a3,0x24 - c0041160: ddc68693 addi a3,a3,-548 # c0064f38 - c0041164: b1df40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49037 + c0041328: 4721 li a4,8 + c004132a: 8522 mv a0,s0 + c004132c: 00024697 auipc a3,0x24 + c0041330: e6c68693 addi a3,a3,-404 # c0065198 + c0041334: b1df40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49045 JS_NewGlobalCConstructor2(ctx, obj1, "Promise", - c0041168: 603c ld a5,64(s0) - c004116a: 6582 ld a1,0(sp) - c004116c: 6622 ld a2,8(sp) - c004116e: 2d07b703 ld a4,720(a5) - c0041172: 2d87b783 ld a5,728(a5) - c0041176: 00020697 auipc a3,0x20 - c004117a: b2268693 addi a3,a3,-1246 # c0060c98 - c004117e: 8522 mv a0,s0 - c0041180: 8a9e80ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49041 + c0041338: 603c ld a5,64(s0) + c004133a: 6582 ld a1,0(sp) + c004133c: 6622 ld a2,8(sp) + c004133e: 2d07b703 ld a4,720(a5) + c0041342: 2d87b783 ld a5,728(a5) + c0041346: 00020697 auipc a3,0x20 + c004134a: bb268693 addi a3,a3,-1102 # c0060ef8 + c004134e: 8522 mv a0,s0 + c0041350: 8a9e80ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49049 ctx->class_proto[JS_CLASS_ASYNC_FUNCTION] = JS_NewObjectProto(ctx, ctx->function_proto); - c0041184: 6830 ld a2,80(s0) - c0041186: 642c ld a1,72(s0) - c0041188: 8522 mv a0,s0 - c004118a: ba5d50ef jal ra,c0016d2e - c004118e: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 + c0041354: 6830 ld a2,80(s0) + c0041356: 642c ld a1,72(s0) + c0041358: 8522 mv a0,s0 + c004135a: ba5d50ef jal ra,c0016efe + c004135e: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49050 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c0041190: 4715 li a4,5 - c0041192: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49041 + c0041360: 4715 li a4,5 + c0041362: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49049 ctx->class_proto[JS_CLASS_ASYNC_FUNCTION] = JS_NewObjectProto(ctx, ctx->function_proto); - c0041194: 30a7b023 sd a0,768(a5) - c0041198: 30b7b423 sd a1,776(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 + c0041364: 30a7b023 sd a0,768(a5) + c0041368: 30b7b423 sd a1,776(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49050 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c004119c: 06043883 ld a7,96(s0) - c00411a0: 05843803 ld a6,88(s0) - c00411a4: 4789 li a5,2 - c00411a6: 00020617 auipc a2,0x20 - c00411aa: afa60613 addi a2,a2,-1286 # c0060ca0 - c00411ae: 8522 mv a0,s0 - c00411b0: fffe0597 auipc a1,0xfffe0 - c00411b4: aea58593 addi a1,a1,-1302 # c0020c9a - c00411b8: d79e70ef jal ra,c0028f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49046 + c004136c: 06043883 ld a7,96(s0) + c0041370: 05843803 ld a6,88(s0) + c0041374: 4789 li a5,2 + c0041376: 00020617 auipc a2,0x20 + c004137a: b8a60613 addi a2,a2,-1142 # c0060f00 + c004137e: 8522 mv a0,s0 + c0041380: fffe0597 auipc a1,0xfffe0 + c0041384: aea58593 addi a1,a1,-1302 # c0020e6a + c0041388: d79e70ef jal ra,c0029100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49054 JS_SetPropertyFunctionList(ctx, - c00411bc: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49042 + c004138c: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49050 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c00411be: e42e sd a1,8(sp) - c00411c0: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49046 + c004138e: e42e sd a1,8(sp) + c0041390: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49054 JS_SetPropertyFunctionList(ctx, - c00411c2: 3007b583 ld a1,768(a5) - c00411c6: 3087b603 ld a2,776(a5) - c00411ca: 8522 mv a0,s0 - c00411cc: 4705 li a4,1 - c00411ce: 00021697 auipc a3,0x21 - c00411d2: 75a68693 addi a3,a3,1882 # c0062928 - c00411d6: aabf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49050 + c0041392: 3007b583 ld a1,768(a5) + c0041396: 3087b603 ld a2,776(a5) + c004139a: 8522 mv a0,s0 + c004139c: 4705 li a4,1 + c004139e: 00021697 auipc a3,0x21 + c00413a2: 7ea68693 addi a3,a3,2026 # c0062b88 + c00413a6: aabf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49058 JS_SetConstructor2(ctx, obj1, ctx->class_proto[JS_CLASS_ASYNC_FUNCTION], - c00411da: 6038 ld a4,64(s0) - c00411dc: 6582 ld a1,0(sp) - c00411de: 6622 ld a2,8(sp) - c00411e0: 30073683 ld a3,768(a4) - c00411e4: 30873703 ld a4,776(a4) - c00411e8: 4805 li a6,1 - c00411ea: 4781 li a5,0 - c00411ec: 8522 mv a0,s0 - c00411ee: fd4e80ef jal ra,c00299c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49052 + c00413aa: 6038 ld a4,64(s0) + c00413ac: 6582 ld a1,0(sp) + c00413ae: 6622 ld a2,8(sp) + c00413b0: 30073683 ld a3,768(a4) + c00413b4: 30873703 ld a4,776(a4) + c00413b8: 4805 li a6,1 + c00413ba: 4781 li a5,0 + c00413bc: 8522 mv a0,s0 + c00413be: fd4e80ef jal ra,c0029b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49060 JS_FreeValue(ctx, obj1); - c00411f2: 6622 ld a2,8(sp) - c00411f4: 6582 ld a1,0(sp) - c00411f6: 8522 mv a0,s0 - c00411f8: 941c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49055 + c00413c2: 6622 ld a2,8(sp) + c00413c4: 6582 ld a1,0(sp) + c00413c6: 8522 mv a0,s0 + c00413c8: 85fc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49063 ctx->async_iterator_proto = JS_NewObject(ctx); - c00411fc: 8522 mv a0,s0 - c00411fe: b8bd50ef jal ra,c0016d88 - c0041202: 862e mv a2,a1 - c0041204: 12a43423 sd a0,296(s0) - c0041208: 12b43823 sd a1,304(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49056 + c00413cc: 8522 mv a0,s0 + c00413ce: b8bd50ef jal ra,c0016f58 + c00413d2: 862e mv a2,a1 + c00413d4: 12a43423 sd a0,296(s0) + c00413d8: 12b43823 sd a1,304(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49064 JS_SetPropertyFunctionList(ctx, ctx->async_iterator_proto, - c004120c: 4705 li a4,1 - c004120e: 00021697 auipc a3,0x21 - c0041212: 7da68693 addi a3,a3,2010 # c00629e8 - c0041216: 85aa mv a1,a0 - c0041218: 8522 mv a0,s0 - c004121a: a67f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49062 + c00413dc: 4705 li a4,1 + c00413de: 00022697 auipc a3,0x22 + c00413e2: 86a68693 addi a3,a3,-1942 # c0062c48 + c00413e6: 85aa mv a1,a0 + c00413e8: 8522 mv a0,s0 + c00413ea: a67f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49070 JS_NewObjectProto(ctx, ctx->async_iterator_proto); - c004121e: 13043603 ld a2,304(s0) - c0041222: 12843583 ld a1,296(s0) - c0041226: 8522 mv a0,s0 - c0041228: b07d50ef jal ra,c0016d2e - c004122c: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49063 + c00413ee: 13043603 ld a2,304(s0) + c00413f2: 12843583 ld a1,296(s0) + c00413f6: 8522 mv a0,s0 + c00413f8: b07d50ef jal ra,c0016efe + c00413fc: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49071 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ASYNC_FROM_SYNC_ITERATOR], - c004122e: 470d li a4,3 - c0041230: 00021697 auipc a3,0x21 - c0041234: 69868693 addi a3,a3,1688 # c00628c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49062 + c00413fe: 470d li a4,3 + c0041400: 00021697 auipc a3,0x21 + c0041404: 72868693 addi a3,a3,1832 # c0062b28 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49070 JS_NewObjectProto(ctx, ctx->async_iterator_proto); - c0041238: 32a7b823 sd a0,816(a5) - c004123c: 32b7bc23 sd a1,824(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49063 + c0041408: 32a7b823 sd a0,816(a5) + c004140c: 32b7bc23 sd a1,824(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49071 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ASYNC_FROM_SYNC_ITERATOR], - c0041240: 603c ld a5,64(s0) - c0041242: 8522 mv a0,s0 - c0041244: 3307b583 ld a1,816(a5) - c0041248: 3387b603 ld a2,824(a5) - c004124c: a35f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49069 + c0041410: 603c ld a5,64(s0) + c0041412: 8522 mv a0,s0 + c0041414: 3307b583 ld a1,816(a5) + c0041418: 3387b603 ld a2,824(a5) + c004141c: a35f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49077 JS_NewObjectProto(ctx, ctx->async_iterator_proto); - c0041250: 13043603 ld a2,304(s0) - c0041254: 12843583 ld a1,296(s0) - c0041258: 8522 mv a0,s0 - c004125a: ad5d50ef jal ra,c0016d2e - c004125e: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49070 + c0041420: 13043603 ld a2,304(s0) + c0041424: 12843583 ld a1,296(s0) + c0041428: 8522 mv a0,s0 + c004142a: ad5d50ef jal ra,c0016efe + c004142e: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49078 JS_SetPropertyFunctionList(ctx, - c0041260: 4711 li a4,4 - c0041262: 00021697 auipc a3,0x21 - c0041266: 70668693 addi a3,a3,1798 # c0062968 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49069 + c0041430: 4711 li a4,4 + c0041432: 00021697 auipc a3,0x21 + c0041436: 79668693 addi a3,a3,1942 # c0062bc8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49077 JS_NewObjectProto(ctx, ctx->async_iterator_proto); - c004126a: 34a7b823 sd a0,848(a5) - c004126e: 34b7bc23 sd a1,856(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49070 + c004143a: 34a7b823 sd a0,848(a5) + c004143e: 34b7bc23 sd a1,856(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49078 JS_SetPropertyFunctionList(ctx, - c0041272: 603c ld a5,64(s0) - c0041274: 8522 mv a0,s0 - c0041276: 3507b583 ld a1,848(a5) - c004127a: 3587b603 ld a2,856(a5) - c004127e: a03f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49077 + c0041442: 603c ld a5,64(s0) + c0041444: 8522 mv a0,s0 + c0041446: 3507b583 ld a1,848(a5) + c004144a: 3587b603 ld a2,856(a5) + c004144e: a03f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49085 JS_NewObjectProto(ctx, ctx->function_proto); - c0041282: 6830 ld a2,80(s0) - c0041284: 642c ld a1,72(s0) - c0041286: 8522 mv a0,s0 - c0041288: aa7d50ef jal ra,c0016d2e - c004128c: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49078 + c0041452: 6830 ld a2,80(s0) + c0041454: 642c ld a1,72(s0) + c0041456: 8522 mv a0,s0 + c0041458: aa7d50ef jal ra,c0016efe + c004145c: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49086 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c004128e: 4715 li a4,5 - c0041290: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49077 + c004145e: 4715 li a4,5 + c0041460: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49085 JS_NewObjectProto(ctx, ctx->function_proto); - c0041292: 34a7b023 sd a0,832(a5) - c0041296: 34b7b423 sd a1,840(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49078 + c0041462: 34a7b023 sd a0,832(a5) + c0041466: 34b7b423 sd a1,840(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49086 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c004129a: 06043883 ld a7,96(s0) - c004129e: 05843803 ld a6,88(s0) - c00412a2: 478d li a5,3 - c00412a4: 00020617 auipc a2,0x20 - c00412a8: a0c60613 addi a2,a2,-1524 # c0060cb0 - c00412ac: 8522 mv a0,s0 - c00412ae: fffe0597 auipc a1,0xfffe0 - c00412b2: 9ec58593 addi a1,a1,-1556 # c0020c9a - c00412b6: c7be70ef jal ra,c0028f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49083 + c004146a: 06043883 ld a7,96(s0) + c004146e: 05843803 ld a6,88(s0) + c0041472: 478d li a5,3 + c0041474: 00020617 auipc a2,0x20 + c0041478: a9c60613 addi a2,a2,-1380 # c0060f10 + c004147c: 8522 mv a0,s0 + c004147e: fffe0597 auipc a1,0xfffe0 + c0041482: 9ec58593 addi a1,a1,-1556 # c0020e6a + c0041486: c7be70ef jal ra,c0029100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49091 JS_SetPropertyFunctionList(ctx, - c00412ba: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49078 + c004148a: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49086 obj1 = JS_NewCFunction3(ctx, (JSCFunction *)js_function_constructor, - c00412bc: e42e sd a1,8(sp) - c00412be: e02a sd a0,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49083 + c004148c: e42e sd a1,8(sp) + c004148e: e02a sd a0,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49091 JS_SetPropertyFunctionList(ctx, - c00412c0: 3407b583 ld a1,832(a5) - c00412c4: 3487b603 ld a2,840(a5) - c00412c8: 8522 mv a0,s0 - c00412ca: 4705 li a4,1 - c00412cc: 00021697 auipc a3,0x21 - c00412d0: 67c68693 addi a3,a3,1660 # c0062948 - c00412d4: 9adf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49087 + c0041490: 3407b583 ld a1,832(a5) + c0041494: 3487b603 ld a2,840(a5) + c0041498: 8522 mv a0,s0 + c004149a: 4705 li a4,1 + c004149c: 00021697 auipc a3,0x21 + c00414a0: 70c68693 addi a3,a3,1804 # c0062ba8 + c00414a4: 9adf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49095 JS_SetConstructor2(ctx, ctx->class_proto[JS_CLASS_ASYNC_GENERATOR_FUNCTION], - c00412d8: 6030 ld a2,64(s0) - c00412da: 8522 mv a0,s0 - c00412dc: 4805 li a6,1 - c00412de: 35063683 ld a3,848(a2) - c00412e2: 35863703 ld a4,856(a2) - c00412e6: 34063583 ld a1,832(a2) - c00412ea: 34863603 ld a2,840(a2) - c00412ee: 4785 li a5,1 - c00412f0: ed2e80ef jal ra,c00299c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49090 + c00414a8: 6030 ld a2,64(s0) + c00414aa: 8522 mv a0,s0 + c00414ac: 4805 li a6,1 + c00414ae: 35063683 ld a3,848(a2) + c00414b2: 35863703 ld a4,856(a2) + c00414b6: 34063583 ld a1,832(a2) + c00414ba: 34863603 ld a2,840(a2) + c00414be: 4785 li a5,1 + c00414c0: ed2e80ef jal ra,c0029b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49098 JS_SetConstructor2(ctx, obj1, ctx->class_proto[JS_CLASS_ASYNC_GENERATOR_FUNCTION], - c00412f4: 6038 ld a4,64(s0) - c00412f6: 6582 ld a1,0(sp) - c00412f8: 6622 ld a2,8(sp) - c00412fa: 34073683 ld a3,832(a4) - c00412fe: 34873703 ld a4,840(a4) - c0041302: 8522 mv a0,s0 - c0041304: 4805 li a6,1 - c0041306: 4781 li a5,0 - c0041308: ebae80ef jal ra,c00299c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49092 + c00414c4: 6038 ld a4,64(s0) + c00414c6: 6582 ld a1,0(sp) + c00414c8: 6622 ld a2,8(sp) + c00414ca: 34073683 ld a3,832(a4) + c00414ce: 34873703 ld a4,840(a4) + c00414d2: 8522 mv a0,s0 + c00414d4: 4805 li a6,1 + c00414d6: 4781 li a5,0 + c00414d8: ebae80ef jal ra,c0029b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49100 JS_FreeValue(ctx, obj1); - c004130c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49093 + c00414dc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49101 } - c004130e: 7402 ld s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49092 + c00414de: 7402 ld s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49100 JS_FreeValue(ctx, obj1); - c0041310: 6582 ld a1,0(sp) - c0041312: 6622 ld a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49093 -} - c0041314: 70a2 ld ra,40(sp) - c0041316: 64e2 ld s1,24(sp) - c0041318: 6145 addi sp,sp,48 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49092 + c00414e0: 6582 ld a1,0(sp) + c00414e2: 6622 ld a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49101 +} + c00414e4: 70a2 ld ra,40(sp) + c00414e6: 64e2 ld s1,24(sp) + c00414e8: 6145 addi sp,sp,48 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:49100 JS_FreeValue(ctx, obj1); - c004131a: 81fc606f j c0007b38 + c00414ea: f3cc606f j c0007c26 -00000000c004131e : +00000000c00414ee : JS_AddIntrinsicDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50320 { - c004131e: 1101 addi sp,sp,-32 - c0041320: ec06 sd ra,24(sp) - c0041322: e822 sd s0,16(sp) - c0041324: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50316 + c00414ee: 1101 addi sp,sp,-32 + c00414f0: ec06 sd ra,24(sp) + c00414f2: e822 sd s0,16(sp) + c00414f4: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50324 ctx->class_proto[JS_CLASS_DATE] = JS_NewObject(ctx); - c0041326: a63d50ef jal ra,c0016d88 - c004132a: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50317 + c00414f6: a63d50ef jal ra,c0016f58 + c00414fa: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50325 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_DATE], js_date_proto_funcs, - c004132c: 02f00713 li a4,47 - c0041330: 00022697 auipc a3,0x22 - c0041334: 32068693 addi a3,a3,800 # c0063650 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50316 + c00414fc: 02f00713 li a4,47 + c0041500: 00022697 auipc a3,0x22 + c0041504: 3b068693 addi a3,a3,944 # c00638b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50324 ctx->class_proto[JS_CLASS_DATE] = JS_NewObject(ctx); - c0041338: f3c8 sd a0,160(a5) - c004133a: f7cc sd a1,168(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50317 + c0041508: f3c8 sd a0,160(a5) + c004150a: f7cc sd a1,168(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50325 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_DATE], js_date_proto_funcs, - c004133c: 603c ld a5,64(s0) - c004133e: 8522 mv a0,s0 - c0041340: 73cc ld a1,160(a5) - c0041342: 77d0 ld a2,168(a5) - c0041344: 93df40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50319 + c004150c: 603c ld a5,64(s0) + c004150e: 8522 mv a0,s0 + c0041510: 73cc ld a1,160(a5) + c0041512: 77d0 ld a2,168(a5) + c0041514: 93df40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50327 obj = JS_NewGlobalCConstructor(ctx, "Date", js_date_constructor, 7, - c0041348: 603c ld a5,64(s0) - c004134a: 469d li a3,7 - c004134c: fffe1617 auipc a2,0xfffe1 - c0041350: 9d860613 addi a2,a2,-1576 # c0021d24 - c0041354: 73d8 ld a4,160(a5) - c0041356: 77dc ld a5,168(a5) - c0041358: 8522 mv a0,s0 - c004135a: 0001d597 auipc a1,0x1d - c004135e: 4a658593 addi a1,a1,1190 # c005e800 - c0041362: f14e80ef jal ra,c0029a76 - c0041366: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50321 + c0041518: 603c ld a5,64(s0) + c004151a: 469d li a3,7 + c004151c: fffe1617 auipc a2,0xfffe1 + c0041520: 9d860613 addi a2,a2,-1576 # c0021ef4 + c0041524: 73d8 ld a4,160(a5) + c0041526: 77dc ld a5,168(a5) + c0041528: 8522 mv a0,s0 + c004152a: 0001d597 auipc a1,0x1d + c004152e: 53658593 addi a1,a1,1334 # c005ea60 + c0041532: f14e80ef jal ra,c0029c46 + c0041536: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50329 JS_SetPropertyFunctionList(ctx, obj, js_date_funcs, countof(js_date_funcs)); - c0041368: 85aa mv a1,a0 - c004136a: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50322 + c0041538: 85aa mv a1,a0 + c004153a: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50330 } - c004136c: 6442 ld s0,16(sp) - c004136e: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50321 + c004153c: 6442 ld s0,16(sp) + c004153e: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50329 JS_SetPropertyFunctionList(ctx, obj, js_date_funcs, countof(js_date_funcs)); - c0041370: 470d li a4,3 - c0041372: 00022697 auipc a3,0x22 - c0041376: 27e68693 addi a3,a3,638 # c00635f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50322 + c0041540: 470d li a4,3 + c0041542: 00022697 auipc a3,0x22 + c0041546: 30e68693 addi a3,a3,782 # c0063850 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50330 } - c004137a: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50321 + c004154a: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50329 JS_SetPropertyFunctionList(ctx, obj, js_date_funcs, countof(js_date_funcs)); - c004137c: 905f406f j c0035c80 + c004154c: 905f406f j c0035e50 -00000000c0041380 : +00000000c0041550 : JS_AddIntrinsicEval(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50336 ctx->eval_internal = __JS_EvalInternal; - c0041380: fffff797 auipc a5,0xfffff - c0041384: 30478793 addi a5,a5,772 # c0040684 <__JS_EvalInternal> - c0041388: 1af53c23 sd a5,440(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50329 + c0041550: fffff797 auipc a5,0xfffff + c0041554: 30478793 addi a5,a5,772 # c0040854 <__JS_EvalInternal> + c0041558: 1af53c23 sd a5,440(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50337 } - c004138c: 8082 ret + c004155c: 8082 ret -00000000c004138e : +00000000c004155e : JS_AddIntrinsicBigInt(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50965 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50973 { - c004138e: 1101 addi sp,sp,-32 - c0041390: ec06 sd ra,24(sp) - c0041392: e822 sd s0,16(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50966 + c004155e: 1101 addi sp,sp,-32 + c0041560: ec06 sd ra,24(sp) + c0041562: e822 sd s0,16(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50974 JSRuntime *rt = ctx->rt; - c0041394: 6d1c ld a5,24(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50969 + c0041564: 6d1c ld a5,24(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50977 rt->bigint_ops.to_string = js_bigint_to_string; - c0041396: fffe0717 auipc a4,0xfffe0 - c004139a: 67870713 addi a4,a4,1656 # c0021a0e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50965 + c0041566: fffe0717 auipc a4,0xfffe0 + c004156a: 67870713 addi a4,a4,1656 # c0021bde +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50973 { - c004139e: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50969 + c004156e: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50977 rt->bigint_ops.to_string = js_bigint_to_string; - c00413a0: 20e7b423 sd a4,520(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50970 + c0041570: 20e7b423 sd a4,520(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50978 rt->bigint_ops.from_string = js_string_to_bigint; - c00413a4: fffd8717 auipc a4,0xfffd8 - c00413a8: 9d870713 addi a4,a4,-1576 # c0018d7c - c00413ac: 20e7b823 sd a4,528(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50971 + c0041574: fffd8717 auipc a4,0xfffd8 + c0041578: 9d870713 addi a4,a4,-1576 # c0018f4c + c004157c: 20e7b823 sd a4,528(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50979 rt->bigint_ops.unary_arith = js_unary_arith_bigint; - c00413b0: fffdf717 auipc a4,0xfffdf - c00413b4: e2270713 addi a4,a4,-478 # c00201d2 - c00413b8: 20e7bc23 sd a4,536(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50972 + c0041580: fffdf717 auipc a4,0xfffdf + c0041584: e2270713 addi a4,a4,-478 # c00203a2 + c0041588: 20e7bc23 sd a4,536(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50980 rt->bigint_ops.binary_arith = js_binary_arith_bigint; - c00413bc: fffdf717 auipc a4,0xfffdf - c00413c0: bec70713 addi a4,a4,-1044 # c001ffa8 - c00413c4: 22e7b023 sd a4,544(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50973 + c004158c: fffdf717 auipc a4,0xfffdf + c0041590: bec70713 addi a4,a4,-1044 # c0020178 + c0041594: 22e7b023 sd a4,544(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50981 rt->bigint_ops.compare = js_compare_bigfloat; - c00413c8: fffc8717 auipc a4,0xfffc8 - c00413cc: d1470713 addi a4,a4,-748 # c00090dc - c00413d0: 22e7b423 sd a4,552(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50975 + c0041598: fffc8717 auipc a4,0xfffc8 + c004159c: c3270713 addi a4,a4,-974 # c00091ca + c00415a0: 22e7b423 sd a4,552(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50983 ctx->class_proto[JS_CLASS_BIG_INT] = JS_NewObject(ctx); - c00413d4: 9b5d50ef jal ra,c0016d88 - c00413d8: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50976 + c00415a4: 9b5d50ef jal ra,c0016f58 + c00415a8: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50984 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_BIG_INT], - c00413da: 470d li a4,3 - c00413dc: 00022697 auipc a3,0x22 - c00413e0: e7468693 addi a3,a3,-396 # c0063250 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50975 + c00415aa: 470d li a4,3 + c00415ac: 00022697 auipc a3,0x22 + c00415b0: f0468693 addi a3,a3,-252 # c00634b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50983 ctx->class_proto[JS_CLASS_BIG_INT] = JS_NewObject(ctx); - c00413e4: 20a7b823 sd a0,528(a5) - c00413e8: 20b7bc23 sd a1,536(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50976 + c00415b4: 20a7b823 sd a0,528(a5) + c00415b8: 20b7bc23 sd a1,536(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50984 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_BIG_INT], - c00413ec: 603c ld a5,64(s0) - c00413ee: 8522 mv a0,s0 - c00413f0: 2107b583 ld a1,528(a5) - c00413f4: 2187b603 ld a2,536(a5) - c00413f8: 889f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50979 + c00415bc: 603c ld a5,64(s0) + c00415be: 8522 mv a0,s0 + c00415c0: 2107b583 ld a1,528(a5) + c00415c4: 2187b603 ld a2,536(a5) + c00415c8: 889f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50987 obj1 = JS_NewGlobalCConstructor(ctx, "BigInt", js_bigint_constructor, 1, - c00413fc: 603c ld a5,64(s0) - c00413fe: 4685 li a3,1 - c0041400: fffdf617 auipc a2,0xfffdf - c0041404: efe60613 addi a2,a2,-258 # c00202fe - c0041408: 2107b703 ld a4,528(a5) - c004140c: 2187b783 ld a5,536(a5) - c0041410: 8522 mv a0,s0 - c0041412: 00020597 auipc a1,0x20 - c0041416: 8b658593 addi a1,a1,-1866 # c0060cc8 - c004141a: e5ce80ef jal ra,c0029a76 - c004141e: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50981 + c00415cc: 603c ld a5,64(s0) + c00415ce: 4685 li a3,1 + c00415d0: fffdf617 auipc a2,0xfffdf + c00415d4: efe60613 addi a2,a2,-258 # c00204ce + c00415d8: 2107b703 ld a4,528(a5) + c00415dc: 2187b783 ld a5,536(a5) + c00415e0: 8522 mv a0,s0 + c00415e2: 00020597 auipc a1,0x20 + c00415e6: 94658593 addi a1,a1,-1722 # c0060f28 + c00415ea: e5ce80ef jal ra,c0029c46 + c00415ee: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50989 JS_SetPropertyFunctionList(ctx, obj1, js_bigint_funcs, - c0041420: 85aa mv a1,a0 - c0041422: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50983 + c00415f0: 85aa mv a1,a0 + c00415f2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50991 } - c0041424: 6442 ld s0,16(sp) - c0041426: 60e2 ld ra,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50981 + c00415f4: 6442 ld s0,16(sp) + c00415f6: 60e2 ld ra,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50989 JS_SetPropertyFunctionList(ctx, obj1, js_bigint_funcs, - c0041428: 4709 li a4,2 - c004142a: 00022697 auipc a3,0x22 - c004142e: de668693 addi a3,a3,-538 # c0063210 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50983 + c00415f8: 4709 li a4,2 + c00415fa: 00022697 auipc a3,0x22 + c00415fe: e7668693 addi a3,a3,-394 # c0063470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50991 } - c0041432: 6105 addi sp,sp,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50981 + c0041602: 6105 addi sp,sp,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50989 JS_SetPropertyFunctionList(ctx, obj1, js_bigint_funcs, - c0041434: 84df406f j c0035c80 + c0041604: 84df406f j c0035e50 -00000000c0041438 : +00000000c0041608 : JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52455 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52463 { - c0041438: db010113 addi sp,sp,-592 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c0041608: db010113 addi sp,sp,-592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c004143c: 4679 li a2,30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52455 + c004160c: 4679 li a2,30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52463 { - c004143e: 24813023 sd s0,576(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c004160e: 24813023 sd s0,576(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c0041442: 00020597 auipc a1,0x20 - c0041446: 88e58593 addi a1,a1,-1906 # c0060cd0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52455 + c0041612: 00020597 auipc a1,0x20 + c0041616: 91e58593 addi a1,a1,-1762 # c0060f30 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52463 { - c004144a: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c004161a: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c004144c: 4505 li a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52455 -{ - c004144e: 24113423 sd ra,584(sp) - c0041452: 22913c23 sd s1,568(sp) - c0041456: 23213823 sd s2,560(sp) - c004145a: 23313423 sd s3,552(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c004161c: 4505 li a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52463 +{ + c004161e: 24113423 sd ra,584(sp) + c0041622: 22913c23 sd s1,568(sp) + c0041626: 23213823 sd s2,560(sp) + c004162a: 23313423 sd s3,552(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c004145e: 000c0917 auipc s2,0xc0 - c0041462: c9290913 addi s2,s2,-878 # c01010f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52455 -{ - c0041466: 23413023 sd s4,544(sp) - c004146a: 21513c23 sd s5,536(sp) - c004146e: 21613823 sd s6,528(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c004162e: 000c0917 auipc s2,0xc0 + c0041632: ac290913 addi s2,s2,-1342 # c01010f0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52463 +{ + c0041636: 23413023 sd s4,544(sp) + c004163a: 21513c23 sd s5,536(sp) + c004163e: 21613823 sd s6,528(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c0041472: 1d6160ef jal ra,c0057648 - c0041476: 00093583 ld a1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52467 + c0041642: 1d6160ef jal ra,c0057818 + c0041646: 00093583 ld a1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52475 JS_DefineProperty(ctx, ctx->function_proto, JS_ATOM_caller, JS_UNDEFINED, - c004147a: 6489 lui s1,0x2 - c004147c: 498d li s3,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52460 + c004164a: 6489 lui s1,0x2 + c004164c: 498d li s3,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52468 _d("JS_AddIntrinsicBaseObjects: a="); _d(debug_expr); _d("\n"); //// - c004147e: 852e mv a0,a1 - c0041480: f42e sd a1,40(sp) - c0041482: 52e150ef jal ra,c00569b0 - c0041486: 75a2 ld a1,40(sp) - c0041488: 862a mv a2,a0 - c004148a: 4505 li a0,1 - c004148c: 1bc160ef jal ra,c0057648 - c0041490: 4605 li a2,1 - c0041492: 0002f597 auipc a1,0x2f - c0041496: 6ae58593 addi a1,a1,1710 # c0070b40 - c004149a: 4505 li a0,1 - c004149c: 1ac160ef jal ra,c0057648 + c004164e: 852e mv a0,a1 + c0041650: f42e sd a1,40(sp) + c0041652: 52e150ef jal ra,c0056b80 + c0041656: 75a2 ld a1,40(sp) + c0041658: 862a mv a2,a0 + c004165a: 4505 li a0,1 + c004165c: 1bc160ef jal ra,c0057818 + c0041660: 4605 li a2,1 + c0041662: 0002f597 auipc a1,0x2f + c0041666: 73e58593 addi a1,a1,1854 # c0070da0 + c004166a: 4505 li a0,1 + c004166c: 1ac160ef jal ra,c0057818 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 return JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_generic, 0); - c00414a0: 4781 li a5,0 - c00414a2: 4701 li a4,0 - c00414a4: 4681 li a3,0 - c00414a6: 4601 li a2,0 - c00414a8: fffd3597 auipc a1,0xfffd3 - c00414ac: db058593 addi a1,a1,-592 # c0014258 - c00414b0: 8522 mv a0,s0 - c00414b2: d35e70ef jal ra,c00291e6 + c0041670: 4781 li a5,0 + c0041672: 4701 li a4,0 + c0041674: 4681 li a3,0 + c0041676: 4601 li a2,0 + c0041678: fffd3597 auipc a1,0xfffd3 + c004167c: cce58593 addi a1,a1,-818 # c0014346 + c0041680: 8522 mv a0,s0 + c0041682: d35e70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52464 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52472 _d("JS_AddIntrinsicBaseObjects: b="); _d(debug_expr); _d("\n"); //// - c00414b6: 4679 li a2,30 + c0041686: 4679 li a2,30 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c00414b8: faaa sd a0,368(sp) - c00414ba: feae sd a1,376(sp) - c00414bc: eb2a sd a0,400(sp) - c00414be: ef2e sd a1,408(sp) + c0041688: faaa sd a0,368(sp) + c004168a: feae sd a1,376(sp) + c004168c: eb2a sd a0,400(sp) + c004168e: ef2e sd a1,408(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52461 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52469 ctx->throw_type_error = JS_NewCFunction(ctx, js_throw_type_error, NULL, 0); - c00414c0: 14a43423 sd a0,328(s0) - c00414c4: 14b43823 sd a1,336(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52464 + c0041690: 14a43423 sd a0,328(s0) + c0041694: 14b43823 sd a1,336(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52472 _d("JS_AddIntrinsicBaseObjects: b="); _d(debug_expr); _d("\n"); //// - c00414c8: 4505 li a0,1 - c00414ca: 00020597 auipc a1,0x20 - c00414ce: 82658593 addi a1,a1,-2010 # c0060cf0 - c00414d2: 176160ef jal ra,c0057648 - c00414d6: 00093583 ld a1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52467 + c0041698: 4505 li a0,1 + c004169a: 00020597 auipc a1,0x20 + c004169e: 8b658593 addi a1,a1,-1866 # c0060f50 + c00416a2: 176160ef jal ra,c0057818 + c00416a6: 00093583 ld a1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52475 JS_DefineProperty(ctx, ctx->function_proto, JS_ATOM_caller, JS_UNDEFINED, - c00414da: 90148493 addi s1,s1,-1791 # 1901 <__clzdi2-0xbfffe6ff> -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52507 + c00416aa: 90148493 addi s1,s1,-1791 # 1901 <__clzdi2-0xbfffe6ff> +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52515 func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_error_constructor, - c00414de: ffff9a97 auipc s5,0xffff9 - c00414e2: 798a8a93 addi s5,s5,1944 # c003ac76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52464 + c00416ae: ffff9a97 auipc s5,0xffff9 + c00416b2: 798a8a93 addi s5,s5,1944 # c003ae46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52472 _d("JS_AddIntrinsicBaseObjects: b="); _d(debug_expr); _d("\n"); //// - c00414e6: 852e mv a0,a1 - c00414e8: f42e sd a1,40(sp) - c00414ea: 4c6150ef jal ra,c00569b0 - c00414ee: 75a2 ld a1,40(sp) - c00414f0: 862a mv a2,a0 - c00414f2: 4505 li a0,1 - c00414f4: 154160ef jal ra,c0057648 - c00414f8: 4605 li a2,1 - c00414fa: 0002f597 auipc a1,0x2f - c00414fe: 64658593 addi a1,a1,1606 # c0070b40 - c0041502: 4505 li a0,1 - c0041504: 144160ef jal ra,c0057648 + c00416b6: 852e mv a0,a1 + c00416b8: f42e sd a1,40(sp) + c00416ba: 4c6150ef jal ra,c0056b80 + c00416be: 75a2 ld a1,40(sp) + c00416c0: 862a mv a2,a0 + c00416c2: 4505 li a0,1 + c00416c4: 154160ef jal ra,c0057818 + c00416c8: 4605 li a2,1 + c00416ca: 0002f597 auipc a1,0x2f + c00416ce: 6d658593 addi a1,a1,1750 # c0070da0 + c00416d2: 4505 li a0,1 + c00416d4: 144160ef jal ra,c0057818 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c0041508: 4781 li a5,0 - c004150a: 4701 li a4,0 - c004150c: 4681 li a3,0 - c004150e: 4601 li a2,0 - c0041510: fffd3597 auipc a1,0xfffd3 - c0041514: d5858593 addi a1,a1,-680 # c0014268 - c0041518: 8522 mv a0,s0 - c004151a: ccde70ef jal ra,c00291e6 + c00416d8: 4781 li a5,0 + c00416da: 4701 li a4,0 + c00416dc: 4681 li a3,0 + c00416de: 4601 li a2,0 + c00416e0: fffd3597 auipc a1,0xfffd3 + c00416e4: c7658593 addi a1,a1,-906 # c0014356 + c00416e8: 8522 mv a0,s0 + c00416ea: ccde70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52466 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52474 _d("JS_AddIntrinsicBaseObjects: c="); _d(debug_expr); _d("\n"); //// - c004151e: 4679 li a2,30 + c00416ee: 4679 li a2,30 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c0041520: f2aa sd a0,352(sp) - c0041522: f6ae sd a1,360(sp) - c0041524: e8aa sd a0,80(sp) - c0041526: ecae sd a1,88(sp) + c00416f0: f2aa sd a0,352(sp) + c00416f2: f6ae sd a1,360(sp) + c00416f4: e8aa sd a0,80(sp) + c00416f6: ecae sd a1,88(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52466 - c0041528: 4505 li a0,1 - c004152a: 0001f597 auipc a1,0x1f - c004152e: 7e658593 addi a1,a1,2022 # c0060d10 - c0041532: 116160ef jal ra,c0057648 - c0041536: 00093583 ld a1,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52503 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52474 + c00416f8: 4505 li a0,1 + c00416fa: 00020597 auipc a1,0x20 + c00416fe: 87658593 addi a1,a1,-1930 # c0060f70 + c0041702: 116160ef jal ra,c0057818 + c0041706: 00093583 ld a1,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52511 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c004153a: 4a21 li s4,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52506 + c004170a: 4a21 li s4,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52514 n_args = 1 + (i == JS_AGGREGATE_ERROR); - c004153c: 4b1d li s6,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52466 + c004170c: 4b1d li s6,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52474 _d("JS_AddIntrinsicBaseObjects: c="); _d(debug_expr); _d("\n"); //// - c004153e: 852e mv a0,a1 - c0041540: f42e sd a1,40(sp) - c0041542: 46e150ef jal ra,c00569b0 - c0041546: 75a2 ld a1,40(sp) - c0041548: 862a mv a2,a0 - c004154a: 4505 li a0,1 - c004154c: 0fc160ef jal ra,c0057648 - c0041550: 4605 li a2,1 - c0041552: 0002f597 auipc a1,0x2f - c0041556: 5ee58593 addi a1,a1,1518 # c0070b40 - c004155a: 4505 li a0,1 - c004155c: 0ec160ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52467 + c004170e: 852e mv a0,a1 + c0041710: f42e sd a1,40(sp) + c0041712: 46e150ef jal ra,c0056b80 + c0041716: 75a2 ld a1,40(sp) + c0041718: 862a mv a2,a0 + c004171a: 4505 li a0,1 + c004171c: 0fc160ef jal ra,c0057818 + c0041720: 4605 li a2,1 + c0041722: 0002f597 auipc a1,0x2f + c0041726: 67e58593 addi a1,a1,1662 # c0070da0 + c004172a: 4505 li a0,1 + c004172c: 0ec160ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52475 JS_DefineProperty(ctx, ctx->function_proto, JS_ATOM_caller, JS_UNDEFINED, - c0041560: 14843783 ld a5,328(s0) - c0041564: 6846 ld a6,80(sp) - c0041566: 68e6 ld a7,88(sp) - c0041568: e03e sd a5,0(sp) - c004156a: 15043783 ld a5,336(s0) - c004156e: 642c ld a1,72(s0) - c0041570: 6830 ld a2,80(s0) - c0041572: 4701 li a4,0 - c0041574: 05000693 li a3,80 - c0041578: e826 sd s1,16(sp) - c004157a: e43e sd a5,8(sp) - c004157c: f082 sd zero,96(sp) - c004157e: 478d li a5,3 - c0041580: f4ce sd s3,104(sp) - c0041582: 8522 mv a0,s0 - c0041584: b5ed10ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52471 + c0041730: 14843783 ld a5,328(s0) + c0041734: 6846 ld a6,80(sp) + c0041736: 68e6 ld a7,88(sp) + c0041738: e03e sd a5,0(sp) + c004173a: 15043783 ld a5,336(s0) + c004173e: 642c ld a1,72(s0) + c0041740: 6830 ld a2,80(s0) + c0041742: 4701 li a4,0 + c0041744: 05000693 li a3,80 + c0041748: e826 sd s1,16(sp) + c004174a: e43e sd a5,8(sp) + c004174c: f082 sd zero,96(sp) + c004174e: 478d li a5,3 + c0041750: f4ce sd s3,104(sp) + c0041752: 8522 mv a0,s0 + c0041754: a7cd10ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52479 _d("JS_AddIntrinsicBaseObjects: d="); _d(debug_expr); _d("\n"); //// - c0041588: 4679 li a2,30 - c004158a: 0001f597 auipc a1,0x1f - c004158e: 7a658593 addi a1,a1,1958 # c0060d30 - c0041592: 4505 li a0,1 - c0041594: 0b4160ef jal ra,c0057648 - c0041598: 00093583 ld a1,0(s2) - c004159c: 00025917 auipc s2,0x25 - c00415a0: 4e490913 addi s2,s2,1252 # c0066a80 - c00415a4: 852e mv a0,a1 - c00415a6: f42e sd a1,40(sp) - c00415a8: 408150ef jal ra,c00569b0 - c00415ac: 75a2 ld a1,40(sp) - c00415ae: 862a mv a2,a0 - c00415b0: 4505 li a0,1 - c00415b2: 096160ef jal ra,c0057648 - c00415b6: 4605 li a2,1 - c00415b8: 0002f597 auipc a1,0x2f - c00415bc: 58858593 addi a1,a1,1416 # c0070b40 - c00415c0: 4505 li a0,1 - c00415c2: 086160ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52472 + c0041758: 4679 li a2,30 + c004175a: 00020597 auipc a1,0x20 + c004175e: 83658593 addi a1,a1,-1994 # c0060f90 + c0041762: 4505 li a0,1 + c0041764: 0b4160ef jal ra,c0057818 + c0041768: 00093583 ld a1,0(s2) + c004176c: 00025917 auipc s2,0x25 + c0041770: 57490913 addi s2,s2,1396 # c0066ce0 + c0041774: 852e mv a0,a1 + c0041776: f42e sd a1,40(sp) + c0041778: 408150ef jal ra,c0056b80 + c004177c: 75a2 ld a1,40(sp) + c004177e: 862a mv a2,a0 + c0041780: 4505 li a0,1 + c0041782: 096160ef jal ra,c0057818 + c0041786: 4605 li a2,1 + c0041788: 0002f597 auipc a1,0x2f + c004178c: 61858593 addi a1,a1,1560 # c0070da0 + c0041790: 4505 li a0,1 + c0041792: 086160ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52480 JS_DefineProperty(ctx, ctx->function_proto, JS_ATOM_arguments, JS_UNDEFINED, - c00415c6: 14843783 ld a5,328(s0) - c00415ca: 6846 ld a6,80(sp) - c00415cc: 68e6 ld a7,88(sp) - c00415ce: e03e sd a5,0(sp) - c00415d0: 15043783 ld a5,336(s0) - c00415d4: 642c ld a1,72(s0) - c00415d6: 6830 ld a2,80(s0) - c00415d8: 4701 li a4,0 - c00415da: 04e00693 li a3,78 - c00415de: e826 sd s1,16(sp) - c00415e0: e43e sd a5,8(sp) - c00415e2: f882 sd zero,112(sp) - c00415e4: 478d li a5,3 - c00415e6: fcce sd s3,120(sp) - c00415e8: 8522 mv a0,s0 - c00415ea: af8d10ef jal ra,c00128e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52476 + c0041796: 14843783 ld a5,328(s0) + c004179a: 6846 ld a6,80(sp) + c004179c: 68e6 ld a7,88(sp) + c004179e: e03e sd a5,0(sp) + c00417a0: 15043783 ld a5,336(s0) + c00417a4: 642c ld a1,72(s0) + c00417a6: 6830 ld a2,80(s0) + c00417a8: 4701 li a4,0 + c00417aa: 04e00693 li a3,78 + c00417ae: e826 sd s1,16(sp) + c00417b0: e43e sd a5,8(sp) + c00417b2: f882 sd zero,112(sp) + c00417b4: 478d li a5,3 + c00417b6: fcce sd s3,120(sp) + c00417b8: 8522 mv a0,s0 + c00417ba: a16d10ef jal ra,c00129d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52484 JS_FreeValue(ctx, obj1); - c00415ee: 65c6 ld a1,80(sp) - c00415f0: 6666 ld a2,88(sp) - c00415f2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52503 + c00417be: 65c6 ld a1,80(sp) + c00417c0: 6666 ld a2,88(sp) + c00417c2: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52511 for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c00415f4: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52476 + c00417c4: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52484 JS_FreeValue(ctx, obj1); - c00415f6: d42c60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52477 + c00417c6: c60c60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52485 JS_FreeValue(ctx, js_object_seal(ctx, JS_UNDEFINED, 1, (JSValueConst *)&ctx->throw_type_error, 1)); - c00415fa: 14840713 addi a4,s0,328 - c00415fe: 4685 li a3,1 - c0041600: 4785 li a5,1 - c0041602: 460d li a2,3 - c0041604: 4581 li a1,0 - c0041606: 8522 mv a0,s0 - c0041608: e102 sd zero,128(sp) - c004160a: e54e sd s3,136(sp) - c004160c: bd5ef0ef jal ra,c00311e0 - c0041610: 862e mv a2,a1 - c0041612: f12a sd a0,160(sp) - c0041614: f52e sd a1,168(sp) - c0041616: 85aa mv a1,a0 - c0041618: 8522 mv a0,s0 - c004161a: d1ec60ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52479 + c00417ca: 14840713 addi a4,s0,328 + c00417ce: 4685 li a3,1 + c00417d0: 4785 li a5,1 + c00417d2: 460d li a2,3 + c00417d4: 4581 li a1,0 + c00417d6: 8522 mv a0,s0 + c00417d8: e102 sd zero,128(sp) + c00417da: e54e sd s3,136(sp) + c00417dc: bd5ef0ef jal ra,c00313b0 + c00417e0: 862e mv a2,a1 + c00417e2: f12a sd a0,160(sp) + c00417e4: f52e sd a1,168(sp) + c00417e6: 85aa mv a1,a0 + c00417e8: 8522 mv a0,s0 + c00417ea: c3cc60ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52487 ctx->global_obj = JS_NewObject(ctx); - c004161e: 8522 mv a0,s0 - c0041620: f68d50ef jal ra,c0016d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52480 + c00417ee: 8522 mv a0,s0 + c00417f0: f68d50ef jal ra,c0016f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52488 ctx->global_var_obj = JS_NewObjectProto(ctx, JS_NULL); - c0041624: 4789 li a5,2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52479 + c00417f4: 4789 li a5,2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52487 ctx->global_obj = JS_NewObject(ctx); - c0041626: 16a43423 sd a0,360(s0) - c004162a: 16b43823 sd a1,368(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52480 + c00417f6: 16a43423 sd a0,360(s0) + c00417fa: 16b43823 sd a1,368(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52488 ctx->global_var_obj = JS_NewObjectProto(ctx, JS_NULL); - c004162e: 4609 li a2,2 - c0041630: 4581 li a1,0 - c0041632: 8522 mv a0,s0 - c0041634: ed3e sd a5,152(sp) - c0041636: e902 sd zero,144(sp) - c0041638: ef6d50ef jal ra,c0016d2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52483 + c00417fe: 4609 li a2,2 + c0041800: 4581 li a1,0 + c0041802: 8522 mv a0,s0 + c0041804: ed3e sd a5,152(sp) + c0041806: e902 sd zero,144(sp) + c0041808: ef6d50ef jal ra,c0016efe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52491 obj = JS_NewGlobalCConstructor(ctx, "Object", js_object_constructor, 1, - c004163c: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52480 + c004180c: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52488 ctx->global_var_obj = JS_NewObjectProto(ctx, JS_NULL); - c004163e: 16a43c23 sd a0,376(s0) - c0041642: 18b43023 sd a1,384(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52483 + c004180e: 16a43c23 sd a0,376(s0) + c0041812: 18b43023 sd a1,384(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52491 obj = JS_NewGlobalCConstructor(ctx, "Object", js_object_constructor, 1, - c0041646: 6b98 ld a4,16(a5) - c0041648: 6f9c ld a5,24(a5) - c004164a: 4685 li a3,1 - c004164c: fffe7617 auipc a2,0xfffe7 - c0041650: 19260613 addi a2,a2,402 # c00287de - c0041654: 0001f597 auipc a1,0x1f - c0041658: 6fc58593 addi a1,a1,1788 # c0060d50 - c004165c: 8522 mv a0,s0 - c004165e: c18e80ef jal ra,c0029a76 - c0041662: 862e mv a2,a1 - c0041664: f82a sd a0,48(sp) - c0041666: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52485 + c0041816: 6b98 ld a4,16(a5) + c0041818: 6f9c ld a5,24(a5) + c004181a: 4685 li a3,1 + c004181c: fffe7617 auipc a2,0xfffe7 + c0041820: 19260613 addi a2,a2,402 # c00289ae + c0041824: 0001f597 auipc a1,0x1f + c0041828: 78c58593 addi a1,a1,1932 # c0060fb0 + c004182c: 8522 mv a0,s0 + c004182e: c18e80ef jal ra,c0029c46 + c0041832: 862e mv a2,a1 + c0041834: f82a sd a0,48(sp) + c0041836: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52493 JS_SetPropertyFunctionList(ctx, obj, js_object_funcs, countof(js_object_funcs)); - c0041668: 4761 li a4,24 - c004166a: 85aa mv a1,a0 - c004166c: 00023697 auipc a3,0x23 - c0041670: 46c68693 addi a3,a3,1132 # c0064ad8 - c0041674: 8522 mv a0,s0 - c0041676: e0af40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52486 + c0041838: 4761 li a4,24 + c004183a: 85aa mv a1,a0 + c004183c: 00023697 auipc a3,0x23 + c0041840: 4fc68693 addi a3,a3,1276 # c0064d38 + c0041844: 8522 mv a0,s0 + c0041846: e0af40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52494 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c004167a: 603c ld a5,64(s0) - c004167c: 472d li a4,11 - c004167e: 00023697 auipc a3,0x23 - c0041682: 75a68693 addi a3,a3,1882 # c0064dd8 - c0041686: 6b8c ld a1,16(a5) - c0041688: 6f90 ld a2,24(a5) - c004168a: 8522 mv a0,s0 - c004168c: df4f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52490 + c004184a: 603c ld a5,64(s0) + c004184c: 472d li a4,11 + c004184e: 00023697 auipc a3,0x23 + c0041852: 7ea68693 addi a3,a3,2026 # c0065038 + c0041856: 6b8c ld a1,16(a5) + c0041858: 6f90 ld a2,24(a5) + c004185a: 8522 mv a0,s0 + c004185c: df4f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52498 JS_SetPropertyFunctionList(ctx, ctx->function_proto, js_function_proto_funcs, countof(js_function_proto_funcs)); - c0041690: 642c ld a1,72(s0) - c0041692: 6830 ld a2,80(s0) - c0041694: 471d li a4,7 - c0041696: 00022697 auipc a3,0x22 - c004169a: 5fa68693 addi a3,a3,1530 # c0063c90 - c004169e: 8522 mv a0,s0 - c00416a0: de0f40ef jal ra,c0035c80 + c0041860: 642c ld a1,72(s0) + c0041862: 6830 ld a2,80(s0) + c0041864: 471d li a4,7 + c0041866: 00022697 auipc a3,0x22 + c004186a: 68a68693 addi a3,a3,1674 # c0063ef0 + c004186e: 8522 mv a0,s0 + c0041870: de0f40ef jal ra,c0035e50 JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 return JS_NewCFunction2(ctx, (JSCFunction *)func, name, length, cproto, magic); - c00416a4: 4781 li a5,0 - c00416a6: 4715 li a4,5 - c00416a8: 4685 li a3,1 - c00416aa: 0001f617 auipc a2,0x1f - c00416ae: 6ae60613 addi a2,a2,1710 # c0060d58 - c00416b2: fffdf597 auipc a1,0xfffdf - c00416b6: 5e858593 addi a1,a1,1512 # c0020c9a - c00416ba: 8522 mv a0,s0 - c00416bc: b2be70ef jal ra,c00291e6 + c0041874: 4781 li a5,0 + c0041876: 4715 li a4,5 + c0041878: 4685 li a3,1 + c004187a: 0001f617 auipc a2,0x1f + c004187e: 73e60613 addi a2,a2,1854 # c0060fb8 + c0041882: fffdf597 auipc a1,0xfffdf + c0041886: 5e858593 addi a1,a1,1512 # c0020e6a + c004188a: 8522 mv a0,s0 + c004188c: b2be70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52491 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52499 ctx->function_ctor = JS_NewCFunctionMagic(ctx, js_function_constructor, - c00416c0: ec28 sd a0,88(s0) - c00416c2: f02c sd a1,96(s0) + c0041890: ec28 sd a0,88(s0) + c0041892: f02c sd a1,96(s0) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c00416c4: e2aa sd a0,320(sp) - c00416c6: e6ae sd a1,328(sp) - c00416c8: eb2a sd a0,400(sp) - c00416ca: ef2e sd a1,408(sp) + c0041894: e2aa sd a0,320(sp) + c0041896: e6ae sd a1,328(sp) + c0041898: eb2a sd a0,400(sp) + c004189a: ef2e sd a1,408(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52494 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52502 JS_NewGlobalCConstructor2(ctx, JS_DupValue(ctx, ctx->function_ctor), "Function", - c00416cc: fa3c40ef jal ra,c000666e - c00416d0: 6438 ld a4,72(s0) - c00416d2: 683c ld a5,80(s0) - c00416d4: 862e mv a2,a1 - c00416d6: f92a sd a0,176(sp) - c00416d8: fd2e sd a1,184(sp) - c00416da: 0001f697 auipc a3,0x1f - c00416de: 67e68693 addi a3,a3,1662 # c0060d58 - c00416e2: 85aa mv a1,a0 - c00416e4: 8522 mv a0,s0 - c00416e6: b42e80ef jal ra,c0029a28 + c004189c: ec1c40ef jal ra,c000675c + c00418a0: 6438 ld a4,72(s0) + c00418a2: 683c ld a5,80(s0) + c00418a4: 862e mv a2,a1 + c00418a6: f92a sd a0,176(sp) + c00418a8: fd2e sd a1,184(sp) + c00418aa: 0001f697 auipc a3,0x1f + c00418ae: 70e68693 addi a3,a3,1806 # c0060fb8 + c00418b2: 85aa mv a1,a0 + c00418b4: 8522 mv a0,s0 + c00418b6: b42e80ef jal ra,c0029bf8 JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c00416ea: 57fd li a5,-1 - c00416ec: 4715 li a4,5 - c00416ee: 4685 li a3,1 - c00416f0: 00020617 auipc a2,0x20 - c00416f4: c8060613 addi a2,a2,-896 # c0061370 - c00416f8: ffff9597 auipc a1,0xffff9 - c00416fc: 57e58593 addi a1,a1,1406 # c003ac76 - c0041700: 8522 mv a0,s0 - c0041702: ae5e70ef jal ra,c00291e6 + c00418ba: 57fd li a5,-1 + c00418bc: 4715 li a4,5 + c00418be: 4685 li a3,1 + c00418c0: 00020617 auipc a2,0x20 + c00418c4: d1060613 addi a2,a2,-752 # c00615d0 + c00418c8: ffff9597 auipc a1,0xffff9 + c00418cc: 57e58593 addi a1,a1,1406 # c003ae46 + c00418d0: 8522 mv a0,s0 + c00418d2: ae5e70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52500 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52508 JS_NewGlobalCConstructor2(ctx, obj1, - c0041706: 603c ld a5,64(s0) + c00418d6: 603c ld a5,64(s0) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0041708: 862e mv a2,a1 - c004170a: fa2a sd a0,304(sp) + c00418d8: 862e mv a2,a1 + c00418da: fa2a sd a0,304(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52500 - c004170c: 7b98 ld a4,48(a5) - c004170e: 7f9c ld a5,56(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52508 + c00418dc: 7b98 ld a4,48(a5) + c00418de: 7f9c ld a5,56(a5) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0041710: fe2e sd a1,312(sp) - c0041712: e8aa sd a0,80(sp) - c0041714: ecae sd a1,88(sp) + c00418e0: fe2e sd a1,312(sp) + c00418e2: e8aa sd a0,80(sp) + c00418e4: ecae sd a1,88(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52500 - c0041716: 00020697 auipc a3,0x20 - c004171a: c5a68693 addi a3,a3,-934 # c0061370 - c004171e: 85aa mv a1,a0 - c0041720: 8522 mv a0,s0 - c0041722: b06e80ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52508 + c00418e6: 00020697 auipc a3,0x20 + c00418ea: cea68693 addi a3,a3,-790 # c00615d0 + c00418ee: 85aa mv a1,a0 + c00418f0: 8522 mv a0,s0 + c00418f2: b06e80ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52514 n_args = 1 + (i == JS_AGGREGATE_ERROR); - c0041726: 4685 li a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52507 (discriminator 4) + c00418f6: 4685 li a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52515 (discriminator 4) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_error_constructor, - c0041728: 00093983 ld s3,0(s2) - c004172c: 6846 ld a6,80(sp) - c004172e: 68e6 ld a7,88(sp) - c0041730: 87a6 mv a5,s1 - c0041732: 4715 li a4,5 - c0041734: 864e mv a2,s3 - c0041736: 85d6 mv a1,s5 - c0041738: 8522 mv a0,s0 - c004173a: ff6e70ef jal ra,c0028f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52510 (discriminator 4) + c00418f8: 00093983 ld s3,0(s2) + c00418fc: 6846 ld a6,80(sp) + c00418fe: 68e6 ld a7,88(sp) + c0041900: 87a6 mv a5,s1 + c0041902: 4715 li a4,5 + c0041904: 864e mv a2,s3 + c0041906: 85d6 mv a1,s5 + c0041908: 8522 mv a0,s0 + c004190a: ff6e70ef jal ra,c0029100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52518 (discriminator 4) JS_NewGlobalCConstructor2(ctx, func_obj, native_error_name[i], - c004173e: 00948793 addi a5,s1,9 - c0041742: 0792 slli a5,a5,0x4 - c0041744: 97a2 add a5,a5,s0 - c0041746: 6798 ld a4,8(a5) - c0041748: 6b9c ld a5,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52507 (discriminator 4) + c004190e: 00948793 addi a5,s1,9 + c0041912: 0792 slli a5,a5,0x4 + c0041914: 97a2 add a5,a5,s0 + c0041916: 6798 ld a4,8(a5) + c0041918: 6b9c ld a5,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52515 (discriminator 4) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_error_constructor, - c004174a: 862e mv a2,a1 - c004174c: eb2a sd a0,400(sp) - c004174e: ef2e sd a1,408(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52510 (discriminator 4) + c004191a: 862e mv a2,a1 + c004191c: eb2a sd a0,400(sp) + c004191e: ef2e sd a1,408(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52518 (discriminator 4) JS_NewGlobalCConstructor2(ctx, func_obj, native_error_name[i], - c0041750: 86ce mv a3,s3 - c0041752: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52503 (discriminator 4) + c0041920: 86ce mv a3,s3 + c0041922: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52511 (discriminator 4) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c0041754: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52510 (discriminator 4) + c0041924: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52518 (discriminator 4) JS_NewGlobalCConstructor2(ctx, func_obj, native_error_name[i], - c0041756: 8522 mv a0,s0 - c0041758: ad0e80ef jal ra,c0029a28 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52503 (discriminator 4) + c0041926: 8522 mv a0,s0 + c0041928: ad0e80ef jal ra,c0029bf8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52511 (discriminator 4) for(i = 0; i < JS_NATIVE_ERROR_COUNT; i++) { - c004175c: 51449363 bne s1,s4,c0041c62 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52515 + c004192c: 51449363 bne s1,s4,c0041e32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52523 ctx->iterator_proto = JS_NewObject(ctx); - c0041760: 8522 mv a0,s0 - c0041762: e26d50ef jal ra,c0016d88 - c0041766: 862e mv a2,a1 - c0041768: 10a43c23 sd a0,280(s0) - c004176c: 12b43023 sd a1,288(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52516 + c0041930: 8522 mv a0,s0 + c0041932: e26d50ef jal ra,c0016f58 + c0041936: 862e mv a2,a1 + c0041938: 10a43c23 sd a0,280(s0) + c004193c: 12b43023 sd a1,288(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52524 JS_SetPropertyFunctionList(ctx, ctx->iterator_proto, - c0041770: 4705 li a4,1 - c0041772: 85aa mv a1,a0 - c0041774: 00023697 auipc a3,0x23 - c0041778: 83c68693 addi a3,a3,-1988 # c0063fb0 - c004177c: 8522 mv a0,s0 - c004177e: d02f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52521 + c0041940: 4705 li a4,1 + c0041942: 85aa mv a1,a0 + c0041944: 00023697 auipc a3,0x23 + c0041948: 8cc68693 addi a3,a3,-1844 # c0064210 + c004194c: 8522 mv a0,s0 + c004194e: d02f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52529 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY], - c0041782: 603c ld a5,64(s0) - c0041784: 02700713 li a4,39 - c0041788: 00021697 auipc a3,0x21 - c004178c: b8868693 addi a3,a3,-1144 # c0062310 - c0041790: 738c ld a1,32(a5) - c0041792: 7790 ld a2,40(a5) - c0041794: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52552 + c0041952: 603c ld a5,64(s0) + c0041954: 02700713 li a4,39 + c0041958: 00021697 auipc a3,0x21 + c004195c: c1868693 addi a3,a3,-1000 # c0062570 + c0041960: 738c ld a1,32(a5) + c0041962: 7790 ld a2,40(a5) + c0041964: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52560 for(p = unscopables; *p; p += strlen(p) + 1) { - c0041796: 0b04 addi s1,sp,400 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52521 + c0041966: 0b04 addi s1,sp,400 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52529 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY], - c0041798: ce8f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52525 + c0041968: ce8f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52533 obj = JS_NewGlobalCConstructor(ctx, "Array", js_array_constructor, 1, - c004179c: 603c ld a5,64(s0) - c004179e: 4685 li a3,1 - c00417a0: fffef617 auipc a2,0xfffef - c00417a4: ac860613 addi a2,a2,-1336 # c0030268 - c00417a8: 7398 ld a4,32(a5) - c00417aa: 779c ld a5,40(a5) - c00417ac: 0001f597 auipc a1,0x1f - c00417b0: 5bc58593 addi a1,a1,1468 # c0060d68 - c00417b4: 8522 mv a0,s0 - c00417b6: ac0e80ef jal ra,c0029a76 - c00417ba: f82a sd a0,48(sp) - c00417bc: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52527 + c004196c: 603c ld a5,64(s0) + c004196e: 4685 li a3,1 + c0041970: fffef617 auipc a2,0xfffef + c0041974: ac860613 addi a2,a2,-1336 # c0030438 + c0041978: 7398 ld a4,32(a5) + c004197a: 779c ld a5,40(a5) + c004197c: 0001f597 auipc a1,0x1f + c0041980: 64c58593 addi a1,a1,1612 # c0060fc8 + c0041984: 8522 mv a0,s0 + c0041986: ac0e80ef jal ra,c0029c46 + c004198a: f82a sd a0,48(sp) + c004198c: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52535 ctx->array_ctor = JS_DupValue(ctx, obj); - c00417be: eb1c40ef jal ra,c000666e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52528 + c004198e: dcfc40ef jal ra,c000675c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52536 JS_SetPropertyFunctionList(ctx, obj, js_array_funcs, - c00417c2: 7662 ld a2,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52527 + c0041992: 7662 ld a2,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52535 ctx->array_ctor = JS_DupValue(ctx, obj); - c00417c4: f82c sd a1,112(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52528 + c0041994: f82c sd a1,112(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52536 JS_SetPropertyFunctionList(ctx, obj, js_array_funcs, - c00417c6: 75c2 ld a1,48(sp) - c00417c8: 4711 li a4,4 - c00417ca: 00021697 auipc a3,0x21 - c00417ce: a8668693 addi a3,a3,-1402 # c0062250 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52527 + c0041996: 75c2 ld a1,48(sp) + c0041998: 4711 li a4,4 + c004199a: 00021697 auipc a3,0x21 + c004199e: b1668693 addi a3,a3,-1258 # c00624b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52535 ctx->array_ctor = JS_DupValue(ctx, obj); - c00417d2: f428 sd a0,104(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52528 + c00419a2: f428 sd a0,104(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52536 JS_SetPropertyFunctionList(ctx, obj, js_array_funcs, - c00417d4: 8522 mv a0,s0 - c00417d6: caaf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52534 + c00419a4: 8522 mv a0,s0 + c00419a6: caaf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52542 char const unscopables[] = - c00417da: 07f00613 li a2,127 - c00417de: 00017597 auipc a1,0x17 - c00417e2: 9ca58593 addi a1,a1,-1590 # c00581a8 <_srodata+0x38> - c00417e6: 0b08 addi a0,sp,400 - c00417e8: 1f2150ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52551 + c00419aa: 07f00613 li a2,127 + c00419ae: 00017597 auipc a1,0x17 + c00419b2: 9ca58593 addi a1,a1,-1590 # c0058378 <_srodata+0x38> + c00419b6: 0b08 addi a0,sp,400 + c00419b8: 1f2150ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52559 obj1 = JS_NewObjectProto(ctx, JS_NULL); - c00417ec: 4789 li a5,2 - c00417ee: 4581 li a1,0 - c00417f0: 4609 li a2,2 - c00417f2: 8522 mv a0,s0 - c00417f4: ea82 sd zero,336(sp) - c00417f6: eebe sd a5,344(sp) - c00417f8: d36d50ef jal ra,c0016d2e - c00417fc: e8aa sd a0,80(sp) - c00417fe: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52553 + c00419bc: 4789 li a5,2 + c00419be: 4581 li a1,0 + c00419c0: 4609 li a2,2 + c00419c2: 8522 mv a0,s0 + c00419c4: ea82 sd zero,336(sp) + c00419c6: eebe sd a5,344(sp) + c00419c8: d36d50ef jal ra,c0016efe + c00419cc: e8aa sd a0,80(sp) + c00419ce: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52561 JS_DefinePropertyValueStr(ctx, obj1, p, JS_TRUE, JS_PROP_C_W_E); - c0041800: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52552 (discriminator 1) + c00419d0: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52560 (discriminator 1) for(p = unscopables; *p; p += strlen(p) + 1) { - c0041802: 0004c783 lbu a5,0(s1) - c0041806: 46079463 bnez a5,c0041c6e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52555 + c00419d2: 0004c783 lbu a5,0(s1) + c00419d6: 46079463 bnez a5,c0041e3e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52563 JS_DefinePropertyValue(ctx, ctx->class_proto[JS_CLASS_ARRAY], - c004180a: 6030 ld a2,64(s0) - c004180c: 6746 ld a4,80(sp) - c004180e: 67e6 ld a5,88(sp) - c0041810: 720c ld a1,32(a2) - c0041812: 7610 ld a2,40(a2) - c0041814: 4805 li a6,1 - c0041816: 0d600693 li a3,214 - c004181a: 8522 mv a0,s0 - c004181c: f9ad10ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52561 + c00419da: 6030 ld a2,64(s0) + c00419dc: 6746 ld a4,80(sp) + c00419de: 67e6 ld a5,88(sp) + c00419e0: 720c ld a1,32(a2) + c00419e2: 7610 ld a2,40(a2) + c00419e4: 4805 li a6,1 + c00419e6: 0d600693 li a3,214 + c00419ea: 8522 mv a0,s0 + c00419ec: eb8d10ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52569 ctx->array_proto_values = - c0041820: 603c ld a5,64(s0) + c00419f0: 603c ld a5,64(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0041822: 4801 li a6,0 - c0041824: 06c00693 li a3,108 - c0041828: 7398 ld a4,32(a5) - c004182a: 779c ld a5,40(a5) - c004182c: 8522 mv a0,s0 - c004182e: 85ba mv a1,a4 - c0041830: 863e mv a2,a5 - c0041832: e33a sd a4,384(sp) - c0041834: e73e sd a5,392(sp) - c0041836: 80cd00ef jal ra,c0011842 + c00419f2: 4801 li a6,0 + c00419f4: 06c00693 li a3,108 + c00419f8: 7398 ld a4,32(a5) + c00419fa: 779c ld a5,40(a5) + c00419fc: 8522 mv a0,s0 + c00419fe: 85ba mv a1,a4 + c0041a00: 863e mv a2,a5 + c0041a02: e33a sd a4,384(sp) + c0041a04: e73e sd a5,392(sp) + c0041a06: f2bcf0ef jal ra,c0011930 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52564 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52572 ctx->class_proto[JS_CLASS_ARRAY_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c004183a: 12043603 ld a2,288(s0) + c0041a0a: 12043603 ld a2,288(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c004183e: f62e sd a1,296(sp) - c0041840: ef2e sd a1,408(sp) + c0041a0e: f62e sd a1,296(sp) + c0041a10: ef2e sd a1,408(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52570 JS_GetProperty(ctx, ctx->class_proto[JS_CLASS_ARRAY], JS_ATOM_values); - c0041842: 14b43023 sd a1,320(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52564 + c0041a12: 14b43023 sd a1,320(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52572 ctx->class_proto[JS_CLASS_ARRAY_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c0041846: 11843583 ld a1,280(s0) + c0041a16: 11843583 ld a1,280(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c004184a: f22a sd a0,288(sp) - c004184c: eb2a sd a0,400(sp) + c0041a1a: f22a sd a0,288(sp) + c0041a1c: eb2a sd a0,400(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52562 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52570 JS_GetProperty(ctx, ctx->class_proto[JS_CLASS_ARRAY], JS_ATOM_values); - c004184e: 12a43c23 sd a0,312(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52564 + c0041a1e: 12a43c23 sd a0,312(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52572 ctx->class_proto[JS_CLASS_ARRAY_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c0041852: 8522 mv a0,s0 - c0041854: cdad50ef jal ra,c0016d2e - c0041858: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52565 + c0041a22: 8522 mv a0,s0 + c0041a24: cdad50ef jal ra,c0016efe + c0041a28: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52573 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY_ITERATOR], - c004185a: 4709 li a4,2 - c004185c: 00021697 auipc a3,0x21 - c0041860: a7468693 addi a3,a3,-1420 # c00622d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52564 + c0041a2a: 4709 li a4,2 + c0041a2c: 00021697 auipc a3,0x21 + c0041a30: b0468693 addi a3,a3,-1276 # c0062530 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52572 ctx->class_proto[JS_CLASS_ARRAY_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c0041864: 28a7b023 sd a0,640(a5) - c0041868: 28b7b423 sd a1,648(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52565 + c0041a34: 28a7b023 sd a0,640(a5) + c0041a38: 28b7b423 sd a1,648(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52573 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY_ITERATOR], - c004186c: 603c ld a5,64(s0) - c004186e: 8522 mv a0,s0 - c0041870: 4905 li s2,1 - c0041872: 2807b583 ld a1,640(a5) - c0041876: 2887b603 ld a2,648(a5) - c004187a: c06f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52572 + c0041a3c: 603c ld a5,64(s0) + c0041a3e: 8522 mv a0,s0 + c0041a40: 4905 li s2,1 + c0041a42: 2807b583 ld a1,640(a5) + c0041a46: 2887b603 ld a2,648(a5) + c0041a4a: c06f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52580 JS_SetPropertyFunctionList(ctx, ctx->global_obj, js_global_funcs, - c004187e: 16843583 ld a1,360(s0) - c0041882: 17043603 ld a2,368(s0) - c0041886: 4735 li a4,13 - c0041888: 00022697 auipc a3,0x22 - c004188c: 58868693 addi a3,a3,1416 # c0063e10 - c0041890: 8522 mv a0,s0 - c0041892: beef40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52576 + c0041a4e: 16843583 ld a1,360(s0) + c0041a52: 17043603 ld a2,368(s0) + c0041a56: 4735 li a4,13 + c0041a58: 00022697 auipc a3,0x22 + c0041a5c: 61868693 addi a3,a3,1560 # c0064070 + c0041a60: 8522 mv a0,s0 + c0041a62: beef40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52584 ctx->class_proto[JS_CLASS_NUMBER] = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c0041896: 6024 ld s1,64(s0) - c0041898: 4691 li a3,4 - c004189a: 8522 mv a0,s0 - c004189c: 6c90 ld a2,24(s1) - c004189e: 688c ld a1,16(s1) - c00418a0: ee9d40ef jal ra,c0016788 - c00418a4: e0a8 sd a0,64(s1) - c00418a6: e4ac sd a1,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52578 + c0041a66: 6024 ld s1,64(s0) + c0041a68: 4691 li a3,4 + c0041a6a: 8522 mv a0,s0 + c0041a6c: 6c90 ld a2,24(s1) + c0041a6e: 688c ld a1,16(s1) + c0041a70: ee9d40ef jal ra,c0016958 + c0041a74: e0a8 sd a0,64(s1) + c0041a76: e4ac sd a1,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52586 JS_SetObjectData(ctx, ctx->class_proto[JS_CLASS_NUMBER], JS_NewInt32(ctx, 0)); - c00418a8: 603c ld a5,64(s0) - c00418aa: 4681 li a3,0 - c00418ac: 4701 li a4,0 - c00418ae: 63ac ld a1,64(a5) - c00418b0: 67b0 ld a2,72(a5) - c00418b2: 8522 mv a0,s0 - c00418b4: e182 sd zero,192(sp) - c00418b6: e582 sd zero,200(sp) - c00418b8: f77d20ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52579 + c0041a78: 603c ld a5,64(s0) + c0041a7a: 4681 li a3,0 + c0041a7c: 4701 li a4,0 + c0041a7e: 63ac ld a1,64(a5) + c0041a80: 67b0 ld a2,72(a5) + c0041a82: 8522 mv a0,s0 + c0041a84: e182 sd zero,192(sp) + c0041a86: e582 sd zero,200(sp) + c0041a88: e95d20ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52587 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_NUMBER], - c00418bc: 603c ld a5,64(s0) - c00418be: 4719 li a4,6 - c00418c0: 00023697 auipc a3,0x23 - c00418c4: 15868693 addi a3,a3,344 # c0064a18 - c00418c8: 63ac ld a1,64(a5) - c00418ca: 67b0 ld a2,72(a5) - c00418cc: 8522 mv a0,s0 - c00418ce: bb2f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52582 + c0041a8c: 603c ld a5,64(s0) + c0041a8e: 4719 li a4,6 + c0041a90: 00023697 auipc a3,0x23 + c0041a94: 1e868693 addi a3,a3,488 # c0064c78 + c0041a98: 63ac ld a1,64(a5) + c0041a9a: 67b0 ld a2,72(a5) + c0041a9c: 8522 mv a0,s0 + c0041a9e: bb2f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52590 number_obj = JS_NewGlobalCConstructor(ctx, "Number", js_number_constructor, 1, - c00418d2: 603c ld a5,64(s0) - c00418d4: 4685 li a3,1 - c00418d6: fffde617 auipc a2,0xfffde - c00418da: 87460613 addi a2,a2,-1932 # c001f14a - c00418de: 63b8 ld a4,64(a5) - c00418e0: 67bc ld a5,72(a5) - c00418e2: 0001f597 auipc a1,0x1f - c00418e6: 48e58593 addi a1,a1,1166 # c0060d70 - c00418ea: 8522 mv a0,s0 - c00418ec: 98ae80ef jal ra,c0029a76 - c00418f0: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52584 + c0041aa2: 603c ld a5,64(s0) + c0041aa4: 4685 li a3,1 + c0041aa6: fffde617 auipc a2,0xfffde + c0041aaa: 87460613 addi a2,a2,-1932 # c001f31a + c0041aae: 63b8 ld a4,64(a5) + c0041ab0: 67bc ld a5,72(a5) + c0041ab2: 0001f597 auipc a1,0x1f + c0041ab6: 51e58593 addi a1,a1,1310 # c0060fd0 + c0041aba: 8522 mv a0,s0 + c0041abc: 98ae80ef jal ra,c0029c46 + c0041ac0: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52592 JS_SetPropertyFunctionList(ctx, number_obj, js_number_funcs, countof(js_number_funcs)); - c00418f2: 4739 li a4,14 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52582 + c0041ac2: 4739 li a4,14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52590 number_obj = JS_NewGlobalCConstructor(ctx, "Number", js_number_constructor, 1, - c00418f4: e0aa sd a0,64(sp) - c00418f6: e4ae sd a1,72(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52584 + c0041ac4: e0aa sd a0,64(sp) + c0041ac6: e4ae sd a1,72(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52592 JS_SetPropertyFunctionList(ctx, number_obj, js_number_funcs, countof(js_number_funcs)); - c00418f8: 00023697 auipc a3,0x23 - c00418fc: f6068693 addi a3,a3,-160 # c0064858 - c0041900: 85aa mv a1,a0 - c0041902: 8522 mv a0,s0 - c0041904: b7cf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52587 + c0041ac8: 00023697 auipc a3,0x23 + c0041acc: ff068693 addi a3,a3,-16 # c0064ab8 + c0041ad0: 85aa mv a1,a0 + c0041ad2: 8522 mv a0,s0 + c0041ad4: b7cf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52595 ctx->class_proto[JS_CLASS_BOOLEAN] = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c0041908: 6024 ld s1,64(s0) - c004190a: 4699 li a3,6 - c004190c: 8522 mv a0,s0 - c004190e: 6c90 ld a2,24(s1) - c0041910: 688c ld a1,16(s1) - c0041912: e77d40ef jal ra,c0016788 - c0041916: f0a8 sd a0,96(s1) - c0041918: f4ac sd a1,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52589 + c0041ad8: 6024 ld s1,64(s0) + c0041ada: 4699 li a3,6 + c0041adc: 8522 mv a0,s0 + c0041ade: 6c90 ld a2,24(s1) + c0041ae0: 688c ld a1,16(s1) + c0041ae2: e77d40ef jal ra,c0016958 + c0041ae6: f0a8 sd a0,96(s1) + c0041ae8: f4ac sd a1,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52597 JS_SetObjectData(ctx, ctx->class_proto[JS_CLASS_BOOLEAN], JS_NewBool(ctx, FALSE)); - c004191a: 603c ld a5,64(s0) - c004191c: 4681 li a3,0 - c004191e: 4705 li a4,1 - c0041920: 73ac ld a1,96(a5) - c0041922: 77b0 ld a2,104(a5) - c0041924: 8522 mv a0,s0 + c0041aea: 603c ld a5,64(s0) + c0041aec: 4681 li a3,0 + c0041aee: 4705 li a4,1 + c0041af0: 73ac ld a1,96(a5) + c0041af2: 77b0 ld a2,104(a5) + c0041af4: 8522 mv a0,s0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0041926: ea02 sd zero,272(sp) - c0041928: ee4a sd s2,280(sp) - c004192a: e982 sd zero,208(sp) - c004192c: edca sd s2,216(sp) + c0041af6: ea02 sd zero,272(sp) + c0041af8: ee4a sd s2,280(sp) + c0041afa: e982 sd zero,208(sp) + c0041afc: edca sd s2,216(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52589 - c004192e: f01d20ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52590 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52597 + c0041afe: e1fd20ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52598 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_BOOLEAN], js_boolean_proto_funcs, - c0041932: 603c ld a5,64(s0) - c0041934: 4709 li a4,2 - c0041936: 00022697 auipc a3,0x22 - c004193a: 97a68693 addi a3,a3,-1670 # c00632b0 - c004193e: 73ac ld a1,96(a5) - c0041940: 77b0 ld a2,104(a5) - c0041942: 8522 mv a0,s0 - c0041944: b3cf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52592 + c0041b02: 603c ld a5,64(s0) + c0041b04: 4709 li a4,2 + c0041b06: 00022697 auipc a3,0x22 + c0041b0a: a0a68693 addi a3,a3,-1526 # c0063510 + c0041b0e: 73ac ld a1,96(a5) + c0041b10: 77b0 ld a2,104(a5) + c0041b12: 8522 mv a0,s0 + c0041b14: b3cf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52600 JS_NewGlobalCConstructor(ctx, "Boolean", js_boolean_constructor, 1, - c0041948: 603c ld a5,64(s0) - c004194a: 4685 li a3,1 - c004194c: fffd5617 auipc a2,0xfffd5 - c0041950: 2b660613 addi a2,a2,694 # c0016c02 - c0041954: 73b8 ld a4,96(a5) - c0041956: 77bc ld a5,104(a5) - c0041958: 0001f597 auipc a1,0x1f - c004195c: 42058593 addi a1,a1,1056 # c0060d78 - c0041960: 8522 mv a0,s0 - c0041962: 914e80ef jal ra,c0029a76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52596 + c0041b18: 603c ld a5,64(s0) + c0041b1a: 4685 li a3,1 + c0041b1c: fffd5617 auipc a2,0xfffd5 + c0041b20: 2b660613 addi a2,a2,694 # c0016dd2 + c0041b24: 73b8 ld a4,96(a5) + c0041b26: 77bc ld a5,104(a5) + c0041b28: 0001f597 auipc a1,0x1f + c0041b2c: 4b058593 addi a1,a1,1200 # c0060fd8 + c0041b30: 8522 mv a0,s0 + c0041b32: 914e80ef jal ra,c0029c46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52604 ctx->class_proto[JS_CLASS_STRING] = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_OBJECT], - c0041966: 6024 ld s1,64(s0) - c0041968: 4695 li a3,5 - c004196a: 8522 mv a0,s0 - c004196c: 6c90 ld a2,24(s1) - c004196e: 688c ld a1,16(s1) - c0041970: e19d40ef jal ra,c0016788 - c0041974: e8a8 sd a0,80(s1) - c0041976: ecac sd a1,88(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52598 + c0041b36: 6024 ld s1,64(s0) + c0041b38: 4695 li a3,5 + c0041b3a: 8522 mv a0,s0 + c0041b3c: 6c90 ld a2,24(s1) + c0041b3e: 688c ld a1,16(s1) + c0041b40: e19d40ef jal ra,c0016958 + c0041b44: e8a8 sd a0,80(s1) + c0041b46: ecac sd a1,88(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52606 JS_SetObjectData(ctx, ctx->class_proto[JS_CLASS_STRING], JS_AtomToString(ctx, JS_ATOM_empty_string)); - c0041978: 6024 ld s1,64(s0) - c004197a: 02f00593 li a1,47 - c004197e: 8522 mv a0,s0 - c0041980: 9bcd80ef jal ra,c0019b3c - c0041984: 872e mv a4,a1 - c0041986: 6cb0 ld a2,88(s1) - c0041988: f5ae sd a1,232(sp) - c004198a: 68ac ld a1,80(s1) - c004198c: 86aa mv a3,a0 - c004198e: f1aa sd a0,224(sp) - c0041990: 8522 mv a0,s0 - c0041992: e9dd20ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52599 + c0041b48: 6024 ld s1,64(s0) + c0041b4a: 02f00593 li a1,47 + c0041b4e: 8522 mv a0,s0 + c0041b50: 9bcd80ef jal ra,c0019d0c + c0041b54: 872e mv a4,a1 + c0041b56: 6cb0 ld a2,88(s1) + c0041b58: f5ae sd a1,232(sp) + c0041b5a: 68ac ld a1,80(s1) + c0041b5c: 86aa mv a3,a0 + c0041b5e: f1aa sd a0,224(sp) + c0041b60: 8522 mv a0,s0 + c0041b62: dbbd20ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52607 obj = JS_NewGlobalCConstructor(ctx, "String", js_string_constructor, 1, - c0041996: 603c ld a5,64(s0) - c0041998: 4685 li a3,1 - c004199a: fffee617 auipc a2,0xfffee - c004199e: 1d660613 addi a2,a2,470 # c002fb70 - c00419a2: 6bb8 ld a4,80(a5) - c00419a4: 6fbc ld a5,88(a5) - c00419a6: 00020597 auipc a1,0x20 - c00419aa: 90a58593 addi a1,a1,-1782 # c00612b0 - c00419ae: 8522 mv a0,s0 - c00419b0: 8c6e80ef jal ra,c0029a76 - c00419b4: 862e mv a2,a1 - c00419b6: f82a sd a0,48(sp) - c00419b8: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52601 + c0041b66: 603c ld a5,64(s0) + c0041b68: 4685 li a3,1 + c0041b6a: fffee617 auipc a2,0xfffee + c0041b6e: 1d660613 addi a2,a2,470 # c002fd40 + c0041b72: 6bb8 ld a4,80(a5) + c0041b74: 6fbc ld a5,88(a5) + c0041b76: 00020597 auipc a1,0x20 + c0041b7a: 99a58593 addi a1,a1,-1638 # c0061510 + c0041b7e: 8522 mv a0,s0 + c0041b80: 8c6e80ef jal ra,c0029c46 + c0041b84: 862e mv a2,a1 + c0041b86: f82a sd a0,48(sp) + c0041b88: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52609 JS_SetPropertyFunctionList(ctx, obj, js_string_funcs, - c00419ba: 470d li a4,3 - c00419bc: 85aa mv a1,a0 - c00419be: 00024697 auipc a3,0x24 - c00419c2: 24a68693 addi a3,a3,586 # c0065c08 - c00419c6: 8522 mv a0,s0 - c00419c8: ab8f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52603 + c0041b8a: 470d li a4,3 + c0041b8c: 85aa mv a1,a0 + c0041b8e: 00024697 auipc a3,0x24 + c0041b92: 2da68693 addi a3,a3,730 # c0065e68 + c0041b96: 8522 mv a0,s0 + c0041b98: ab8f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52611 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_STRING], js_string_proto_funcs, - c00419cc: 603c ld a5,64(s0) - c00419ce: 03400713 li a4,52 - c00419d2: 00024697 auipc a3,0x24 - c00419d6: 2d668693 addi a3,a3,726 # c0065ca8 - c00419da: 6bac ld a1,80(a5) - c00419dc: 6fb0 ld a2,88(a5) - c00419de: 8522 mv a0,s0 - c00419e0: aa0f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52606 + c0041b9c: 603c ld a5,64(s0) + c0041b9e: 03400713 li a4,52 + c0041ba2: 00024697 auipc a3,0x24 + c0041ba6: 36668693 addi a3,a3,870 # c0065f08 + c0041baa: 6bac ld a1,80(a5) + c0041bac: 6fb0 ld a2,88(a5) + c0041bae: 8522 mv a0,s0 + c0041bb0: aa0f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52614 ctx->class_proto[JS_CLASS_STRING_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c00419e4: 12043603 ld a2,288(s0) - c00419e8: 11843583 ld a1,280(s0) - c00419ec: 8522 mv a0,s0 - c00419ee: b40d50ef jal ra,c0016d2e - c00419f2: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52607 + c0041bb4: 12043603 ld a2,288(s0) + c0041bb8: 11843583 ld a1,280(s0) + c0041bbc: 8522 mv a0,s0 + c0041bbe: b40d50ef jal ra,c0016efe + c0041bc2: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52615 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_STRING_ITERATOR], - c00419f4: 4709 li a4,2 - c00419f6: 00024697 auipc a3,0x24 - c00419fa: 27268693 addi a3,a3,626 # c0065c68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52606 + c0041bc4: 4709 li a4,2 + c0041bc6: 00024697 auipc a3,0x24 + c0041bca: 30268693 addi a3,a3,770 # c0065ec8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52614 ctx->class_proto[JS_CLASS_STRING_ITERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c00419fe: 28a7b823 sd a0,656(a5) - c0041a02: 28b7bc23 sd a1,664(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52607 + c0041bce: 28a7b823 sd a0,656(a5) + c0041bd2: 28b7bc23 sd a1,664(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52615 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_STRING_ITERATOR], - c0041a06: 603c ld a5,64(s0) - c0041a08: 8522 mv a0,s0 - c0041a0a: 2907b583 ld a1,656(a5) - c0041a0e: 2987b603 ld a2,664(a5) - c0041a12: a6ef40ef jal ra,c0035c80 + c0041bd6: 603c ld a5,64(s0) + c0041bd8: 8522 mv a0,s0 + c0041bda: 2907b583 ld a1,656(a5) + c0041bde: 2987b603 ld a2,664(a5) + c0041be2: a6ef40ef jal ra,c0035e50 js_random_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43222 gettimeofday(&tv, NULL); - c0041a16: 4581 li a1,0 - c0041a18: 0b08 addi a0,sp,400 - c0041a1a: 08e150ef jal ra,c0056aa8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43215 + c0041be6: 4581 li a1,0 + c0041be8: 0b08 addi a0,sp,400 + c0041bea: 08e150ef jal ra,c0056c78 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43223 ctx->random_state = ((int64_t)tv.tv_sec * 1000000) + tv.tv_usec; - c0041a1e: 19016783 lwu a5,400(sp) - c0041a22: 000f4737 lui a4,0xf4 - c0041a26: 24070713 addi a4,a4,576 # f4240 <__clzdi2-0xbff0bdc0> - c0041a2a: 02e787b3 mul a5,a5,a4 - c0041a2e: 677a ld a4,408(sp) - c0041a30: 97ba add a5,a5,a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43217 + c0041bee: 19016783 lwu a5,400(sp) + c0041bf2: 000f4737 lui a4,0xf4 + c0041bf6: 24070713 addi a4,a4,576 # f4240 <__clzdi2-0xbff0bdc0> + c0041bfa: 02e787b3 mul a5,a5,a4 + c0041bfe: 677a ld a4,408(sp) + c0041c00: 97ba add a5,a5,a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43225 if (ctx->random_state == 0) - c0041a32: 24078f63 beqz a5,c0041c90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43215 + c0041c02: 24078f63 beqz a5,c0041e60 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43223 ctx->random_state = ((int64_t)tv.tv_sec * 1000000) + tv.tv_usec; - c0041a36: 18f43423 sd a5,392(s0) + c0041c06: 18f43423 sd a5,392(s0) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52613 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52621 JS_SetPropertyFunctionList(ctx, ctx->global_obj, js_math_obj, countof(js_math_obj)); - c0041a3a: 16843583 ld a1,360(s0) - c0041a3e: 17043603 ld a2,368(s0) - c0041a42: 4705 li a4,1 - c0041a44: 00023697 auipc a3,0x23 - c0041a48: dbc68693 addi a3,a3,-580 # c0064800 - c0041a4c: 8522 mv a0,s0 - c0041a4e: a32f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52616 + c0041c0a: 16843583 ld a1,360(s0) + c0041c0e: 17043603 ld a2,368(s0) + c0041c12: 4705 li a4,1 + c0041c14: 00023697 auipc a3,0x23 + c0041c18: e4c68693 addi a3,a3,-436 # c0064a60 + c0041c1c: 8522 mv a0,s0 + c0041c1e: a32f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52624 JS_SetPropertyFunctionList(ctx, ctx->global_obj, js_reflect_obj, countof(js_reflect_obj)); - c0041a52: 17043603 ld a2,368(s0) - c0041a56: 16843583 ld a1,360(s0) - c0041a5a: 4705 li a4,1 - c0041a5c: 00024697 auipc a3,0x24 - c0041a60: 88c68693 addi a3,a3,-1908 # c00652e8 - c0041a64: 8522 mv a0,s0 - c0041a66: a1af40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52619 + c0041c22: 17043603 ld a2,368(s0) + c0041c26: 16843583 ld a1,360(s0) + c0041c2a: 4705 li a4,1 + c0041c2c: 00024697 auipc a3,0x24 + c0041c30: 91c68693 addi a3,a3,-1764 # c0065548 + c0041c34: 8522 mv a0,s0 + c0041c36: a1af40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52627 ctx->class_proto[JS_CLASS_SYMBOL] = JS_NewObject(ctx); - c0041a6a: 8522 mv a0,s0 - c0041a6c: b1cd50ef jal ra,c0016d88 - c0041a70: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52620 + c0041c3a: 8522 mv a0,s0 + c0041c3c: b1cd50ef jal ra,c0016f58 + c0041c40: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52628 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SYMBOL], js_symbol_proto_funcs, - c0041a72: 4715 li a4,5 - c0041a74: 00025697 auipc a3,0x25 - c0041a78: 91468693 addi a3,a3,-1772 # c0066388 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52619 + c0041c42: 4715 li a4,5 + c0041c44: 00025697 auipc a3,0x25 + c0041c48: 9a468693 addi a3,a3,-1628 # c00665e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52627 ctx->class_proto[JS_CLASS_SYMBOL] = JS_NewObject(ctx); - c0041a7c: fba8 sd a0,112(a5) - c0041a7e: ffac sd a1,120(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52620 + c0041c4c: fba8 sd a0,112(a5) + c0041c4e: ffac sd a1,120(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52628 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SYMBOL], js_symbol_proto_funcs, - c0041a80: 603c ld a5,64(s0) - c0041a82: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52626 + c0041c50: 603c ld a5,64(s0) + c0041c52: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52634 for(i = JS_ATOM_Symbol_toPrimitive; i < JS_ATOM_END; i++) { - c0041a84: 0cb00493 li s1,203 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52620 + c0041c54: 0cb00493 li s1,203 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52628 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SYMBOL], js_symbol_proto_funcs, - c0041a88: 7bac ld a1,112(a5) - c0041a8a: 7fb0 ld a2,120(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52626 + c0041c58: 7bac ld a1,112(a5) + c0041c5a: 7fb0 ld a2,120(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52634 for(i = JS_ATOM_Symbol_toPrimitive; i < JS_ATOM_END; i++) { - c0041a8c: 0d800a13 li s4,216 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52620 + c0041c5c: 0d800a13 li s4,216 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52628 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SYMBOL], js_symbol_proto_funcs, - c0041a90: 9f0f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52622 + c0041c60: 9f0f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52630 obj = JS_NewGlobalCConstructor(ctx, "Symbol", js_symbol_constructor, 0, - c0041a94: 603c ld a5,64(s0) - c0041a96: 4681 li a3,0 - c0041a98: fffda617 auipc a2,0xfffda - c0041a9c: 10260613 addi a2,a2,258 # c001bb9a - c0041aa0: 7bb8 ld a4,112(a5) - c0041aa2: 7fbc ld a5,120(a5) - c0041aa4: 0001f597 auipc a1,0x1f - c0041aa8: 2dc58593 addi a1,a1,732 # c0060d80 - c0041aac: 8522 mv a0,s0 - c0041aae: fc9e70ef jal ra,c0029a76 - c0041ab2: 862e mv a2,a1 - c0041ab4: f82a sd a0,48(sp) - c0041ab6: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52624 + c0041c64: 603c ld a5,64(s0) + c0041c66: 4681 li a3,0 + c0041c68: fffda617 auipc a2,0xfffda + c0041c6c: 10260613 addi a2,a2,258 # c001bd6a + c0041c70: 7bb8 ld a4,112(a5) + c0041c72: 7fbc ld a5,120(a5) + c0041c74: 0001f597 auipc a1,0x1f + c0041c78: 36c58593 addi a1,a1,876 # c0060fe0 + c0041c7c: 8522 mv a0,s0 + c0041c7e: fc9e70ef jal ra,c0029c46 + c0041c82: 862e mv a2,a1 + c0041c84: f82a sd a0,48(sp) + c0041c86: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52632 JS_SetPropertyFunctionList(ctx, obj, js_symbol_funcs, - c0041ab8: 4709 li a4,2 - c0041aba: 85aa mv a1,a0 - c0041abc: 00025697 auipc a3,0x25 - c0041ac0: 88c68693 addi a3,a3,-1908 # c0066348 - c0041ac4: 8522 mv a0,s0 - c0041ac6: 9baf40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52629 + c0041c88: 4709 li a4,2 + c0041c8a: 85aa mv a1,a0 + c0041c8c: 00025697 auipc a3,0x25 + c0041c90: 91c68693 addi a3,a3,-1764 # c00665a8 + c0041c94: 8522 mv a0,s0 + c0041c96: 9baf40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52637 str = JS_AtomGetStr(ctx, buf, sizeof(buf), i); - c0041aca: 0004899b sext.w s3,s1 - c0041ace: 0b0c addi a1,sp,400 - c0041ad0: 864e mv a2,s3 - c0041ad2: 8522 mv a0,s0 - c0041ad4: b97c40ef jal ra,c000666a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52631 + c0041c9a: 0004899b sext.w s3,s1 + c0041c9e: 0b0c addi a1,sp,400 + c0041ca0: 864e mv a2,s3 + c0041ca2: 8522 mv a0,s0 + c0041ca4: ab5c40ef jal ra,c0006758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52639 p = strchr(str, '.'); - c0041ad8: 02e00593 li a1,46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52629 + c0041ca8: 02e00593 li a1,46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52637 str = JS_AtomGetStr(ctx, buf, sizeof(buf), i); - c0041adc: 892a mv s2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52631 + c0041cac: 892a mv s2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52639 p = strchr(str, '.'); - c0041ade: 65f140ef jal ra,c005693c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52632 + c0041cae: 65f140ef jal ra,c0056b0c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52640 if (p) - c0041ae2: c119 beqz a0,c0041ae8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52633 + c0041cb2: c119 beqz a0,c0041cb8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52641 str = p + 1; - c0041ae4: 00150913 addi s2,a0,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52634 (discriminator 2) + c0041cb4: 00150913 addi s2,a0,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52642 (discriminator 2) JS_DefinePropertyValueStr(ctx, obj, str, JS_AtomToValue(ctx, i), 0); - c0041ae8: 85ce mv a1,s3 - c0041aea: 8522 mv a0,s0 - c0041aec: 846d80ef jal ra,c0019b32 - c0041af0: 87ae mv a5,a1 - c0041af2: fdae sd a1,248(sp) - c0041af4: 7662 ld a2,56(sp) - c0041af6: 75c2 ld a1,48(sp) - c0041af8: 872a mv a4,a0 - c0041afa: f9aa sd a0,240(sp) - c0041afc: 4801 li a6,0 - c0041afe: 86ca mv a3,s2 - c0041b00: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52626 (discriminator 2) - for(i = JS_ATOM_Symbol_toPrimitive; i < JS_ATOM_END; i++) { - c0041b02: 2485 addiw s1,s1,1 + c0041cb8: 85ce mv a1,s3 + c0041cba: 8522 mv a0,s0 + c0041cbc: 846d80ef jal ra,c0019d02 + c0041cc0: 87ae mv a5,a1 + c0041cc2: fdae sd a1,248(sp) + c0041cc4: 7662 ld a2,56(sp) + c0041cc6: 75c2 ld a1,48(sp) + c0041cc8: 872a mv a4,a0 + c0041cca: f9aa sd a0,240(sp) + c0041ccc: 4801 li a6,0 + c0041cce: 86ca mv a3,s2 + c0041cd0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52634 (discriminator 2) + for(i = JS_ATOM_Symbol_toPrimitive; i < JS_ATOM_END; i++) { + c0041cd2: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52642 (discriminator 2) JS_DefinePropertyValueStr(ctx, obj, str, JS_AtomToValue(ctx, i), 0); - c0041b04: c55e70ef jal ra,c0029758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52626 (discriminator 2) + c0041cd4: c55e70ef jal ra,c0029928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52634 (discriminator 2) for(i = JS_ATOM_Symbol_toPrimitive; i < JS_ATOM_END; i++) { - c0041b08: fd4491e3 bne s1,s4,c0041aca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52638 + c0041cd8: fd4491e3 bne s1,s4,c0041c9a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52646 ctx->class_proto[JS_CLASS_GENERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c0041b0c: 12043603 ld a2,288(s0) - c0041b10: 11843583 ld a1,280(s0) - c0041b14: 8522 mv a0,s0 - c0041b16: a18d50ef jal ra,c0016d2e - c0041b1a: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52639 + c0041cdc: 12043603 ld a2,288(s0) + c0041ce0: 11843583 ld a1,280(s0) + c0041ce4: 8522 mv a0,s0 + c0041ce6: a18d50ef jal ra,c0016efe + c0041cea: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52647 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_GENERATOR], - c0041b1c: 4711 li a4,4 - c0041b1e: 00022697 auipc a3,0x22 - c0041b22: 27268693 addi a3,a3,626 # c0063d90 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52638 + c0041cec: 4711 li a4,4 + c0041cee: 00022697 auipc a3,0x22 + c0041cf2: 30268693 addi a3,a3,770 # c0063ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52646 ctx->class_proto[JS_CLASS_GENERATOR] = JS_NewObjectProto(ctx, ctx->iterator_proto); - c0041b26: 2aa7b823 sd a0,688(a5) - c0041b2a: 2ab7bc23 sd a1,696(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52639 + c0041cf6: 2aa7b823 sd a0,688(a5) + c0041cfa: 2ab7bc23 sd a1,696(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52647 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_GENERATOR], - c0041b2e: 603c ld a5,64(s0) - c0041b30: 8522 mv a0,s0 - c0041b32: 2b07b583 ld a1,688(a5) - c0041b36: 2b87b603 ld a2,696(a5) - c0041b3a: 946f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52643 + c0041cfe: 603c ld a5,64(s0) + c0041d00: 8522 mv a0,s0 + c0041d02: 2b07b583 ld a1,688(a5) + c0041d06: 2b87b603 ld a2,696(a5) + c0041d0a: 946f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52651 ctx->class_proto[JS_CLASS_GENERATOR_FUNCTION] = JS_NewObjectProto(ctx, ctx->function_proto); - c0041b3e: 6830 ld a2,80(s0) - c0041b40: 642c ld a1,72(s0) - c0041b42: 8522 mv a0,s0 - c0041b44: 9ead50ef jal ra,c0016d2e - c0041b48: 603c ld a5,64(s0) + c0041d0e: 6830 ld a2,80(s0) + c0041d10: 642c ld a1,72(s0) + c0041d12: 8522 mv a0,s0 + c0041d14: 9ead50ef jal ra,c0016efe + c0041d18: 603c ld a5,64(s0) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 return JS_NewCFunction2(ctx, (JSCFunction *)func, name, length, cproto, magic); - c0041b4a: 4715 li a4,5 - c0041b4c: 4685 li a3,1 + c0041d1a: 4715 li a4,5 + c0041d1c: 4685 li a3,1 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52643 - c0041b4e: 10a7b023 sd a0,256(a5) - c0041b52: 10b7b423 sd a1,264(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52651 + c0041d1e: 10a7b023 sd a0,256(a5) + c0041d22: 10b7b423 sd a1,264(a5) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0041b56: 0001f617 auipc a2,0x1f - c0041b5a: 23260613 addi a2,a2,562 # c0060d88 - c0041b5e: 4785 li a5,1 - c0041b60: 8522 mv a0,s0 - c0041b62: fffdf597 auipc a1,0xfffdf - c0041b66: 13858593 addi a1,a1,312 # c0020c9a - c0041b6a: e7ce70ef jal ra,c00291e6 + c0041d26: 0001f617 auipc a2,0x1f + c0041d2a: 2c260613 addi a2,a2,706 # c0060fe8 + c0041d2e: 4785 li a5,1 + c0041d30: 8522 mv a0,s0 + c0041d32: fffdf597 auipc a1,0xfffdf + c0041d36: 13858593 addi a1,a1,312 # c0020e6a + c0041d3a: e7ce70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52647 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52655 JS_SetPropertyFunctionList(ctx, - c0041b6e: 603c ld a5,64(s0) + c0041d3e: 603c ld a5,64(s0) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0041b70: eeae sd a1,344(sp) - c0041b72: ecae sd a1,88(sp) + c0041d40: eeae sd a1,344(sp) + c0041d42: ecae sd a1,88(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52647 - c0041b74: 1087b603 ld a2,264(a5) - c0041b78: 1007b583 ld a1,256(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52655 + c0041d44: 1087b603 ld a2,264(a5) + c0041d48: 1007b583 ld a1,256(a5) JS_NewCFunctionMagic(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:970 - c0041b7c: eaaa sd a0,336(sp) - c0041b7e: e8aa sd a0,80(sp) + c0041d4c: eaaa sd a0,336(sp) + c0041d4e: e8aa sd a0,80(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52647 - c0041b80: 4705 li a4,1 - c0041b82: 8522 mv a0,s0 - c0041b84: 00022697 auipc a3,0x22 - c0041b88: 1ec68693 addi a3,a3,492 # c0063d70 - c0041b8c: 8f4f40ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52655 + c0041d50: 4705 li a4,1 + c0041d52: 8522 mv a0,s0 + c0041d54: 00022697 auipc a3,0x22 + c0041d58: 27c68693 addi a3,a3,636 # c0063fd0 + c0041d5c: 8f4f40ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52659 JS_SetConstructor2(ctx, ctx->class_proto[JS_CLASS_GENERATOR_FUNCTION], - c0041b90: 6030 ld a2,64(s0) - c0041b92: 8522 mv a0,s0 - c0041b94: 4805 li a6,1 - c0041b96: 2b063683 ld a3,688(a2) - c0041b9a: 2b863703 ld a4,696(a2) - c0041b9e: 10063583 ld a1,256(a2) - c0041ba2: 10863603 ld a2,264(a2) - c0041ba6: 4785 li a5,1 - c0041ba8: e1be70ef jal ra,c00299c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52654 + c0041d60: 6030 ld a2,64(s0) + c0041d62: 8522 mv a0,s0 + c0041d64: 4805 li a6,1 + c0041d66: 2b063683 ld a3,688(a2) + c0041d6a: 2b863703 ld a4,696(a2) + c0041d6e: 10063583 ld a1,256(a2) + c0041d72: 10863603 ld a2,264(a2) + c0041d76: 4785 li a5,1 + c0041d78: e1be70ef jal ra,c0029b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52662 JS_SetConstructor2(ctx, obj1, ctx->class_proto[JS_CLASS_GENERATOR_FUNCTION], - c0041bac: 6038 ld a4,64(s0) - c0041bae: 65c6 ld a1,80(sp) - c0041bb0: 6666 ld a2,88(sp) - c0041bb2: 10073683 ld a3,256(a4) - c0041bb6: 10873703 ld a4,264(a4) - c0041bba: 4805 li a6,1 - c0041bbc: 4781 li a5,0 - c0041bbe: 8522 mv a0,s0 - c0041bc0: e03e70ef jal ra,c00299c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52656 + c0041d7c: 6038 ld a4,64(s0) + c0041d7e: 65c6 ld a1,80(sp) + c0041d80: 6666 ld a2,88(sp) + c0041d82: 10073683 ld a3,256(a4) + c0041d86: 10873703 ld a4,264(a4) + c0041d8a: 4805 li a6,1 + c0041d8c: 4781 li a5,0 + c0041d8e: 8522 mv a0,s0 + c0041d90: e03e70ef jal ra,c0029b92 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52664 JS_FreeValue(ctx, obj1); - c0041bc4: 65c6 ld a1,80(sp) - c0041bc6: 6666 ld a2,88(sp) - c0041bc8: 8522 mv a0,s0 - c0041bca: f6fc50ef jal ra,c0007b38 + c0041d94: 65c6 ld a1,80(sp) + c0041d96: 6666 ld a2,88(sp) + c0041d98: 8522 mv a0,s0 + c0041d9a: e8dc50ef jal ra,c0007c26 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 return JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_generic, 0); - c0041bce: 4781 li a5,0 - c0041bd0: 4701 li a4,0 - c0041bd2: 4685 li a3,1 - c0041bd4: 00017617 auipc a2,0x17 - c0041bd8: bec60613 addi a2,a2,-1044 # c00587c0 <__clz_tab+0x4c0> - c0041bdc: 8522 mv a0,s0 - c0041bde: fffdf597 auipc a1,0xfffdf - c0041be2: 2aa58593 addi a1,a1,682 # c0020e88 - c0041be6: e00e70ef jal ra,c00291e6 + c0041d9e: 4781 li a5,0 + c0041da0: 4701 li a4,0 + c0041da2: 4685 li a3,1 + c0041da4: 00017617 auipc a2,0x17 + c0041da8: bec60613 addi a2,a2,-1044 # c0058990 <__clz_tab+0x4c0> + c0041dac: 8522 mv a0,s0 + c0041dae: fffdf597 auipc a1,0xfffdf + c0041db2: 2aa58593 addi a1,a1,682 # c0021058 + c0041db6: e00e70ef jal ra,c00293b6 JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52659 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52667 ctx->eval_obj = JS_NewCFunction(ctx, js_global_eval, "eval", 1); - c0041bea: 14a43c23 sd a0,344(s0) - c0041bee: 16b43023 sd a1,352(s0) + c0041dba: 14a43c23 sd a0,344(s0) + c0041dbe: 16b43023 sd a1,352(s0) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c0041bf2: eb2a sd a0,400(sp) - c0041bf4: ef2e sd a1,408(sp) - c0041bf6: e32a sd a0,384(sp) - c0041bf8: e72e sd a1,392(sp) + c0041dc2: eb2a sd a0,400(sp) + c0041dc4: ef2e sd a1,408(sp) + c0041dc6: e32a sd a0,384(sp) + c0041dc8: e72e sd a1,392(sp) JS_AddIntrinsicBaseObjects(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52660 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52668 JS_DefinePropertyValue(ctx, ctx->global_obj, JS_ATOM_eval, - c0041bfa: a75c40ef jal ra,c000666e - c0041bfe: 17043603 ld a2,368(s0) - c0041c02: 87ae mv a5,a1 - c0041c04: 16843583 ld a1,360(s0) - c0041c08: 872a mv a4,a0 - c0041c0a: 480d li a6,3 - c0041c0c: 03b00693 li a3,59 - c0041c10: 8522 mv a0,s0 - c0041c12: ba4d10ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52664 + c0041dca: 993c40ef jal ra,c000675c + c0041dce: 17043603 ld a2,368(s0) + c0041dd2: 87ae mv a5,a1 + c0041dd4: 16843583 ld a1,360(s0) + c0041dd8: 872a mv a4,a0 + c0041dda: 480d li a6,3 + c0041ddc: 03b00693 li a3,59 + c0041de0: 8522 mv a0,s0 + c0041de2: ac2d10ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52672 JS_DefinePropertyValue(ctx, ctx->global_obj, JS_ATOM_globalThis, - c0041c16: 16843503 ld a0,360(s0) - c0041c1a: 17043583 ld a1,368(s0) - c0041c1e: a51c40ef jal ra,c000666e - c0041c22: e32a sd a0,384(sp) - c0041c24: e72e sd a1,392(sp) - c0041c26: 17043603 ld a2,368(s0) - c0041c2a: 872a mv a4,a0 - c0041c2c: 87ae mv a5,a1 - c0041c2e: 8522 mv a0,s0 - c0041c30: 16843583 ld a1,360(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52667 -} - c0041c34: 24013403 ld s0,576(sp) - c0041c38: 24813083 ld ra,584(sp) - c0041c3c: 23813483 ld s1,568(sp) - c0041c40: 23013903 ld s2,560(sp) - c0041c44: 22813983 ld s3,552(sp) - c0041c48: 22013a03 ld s4,544(sp) - c0041c4c: 21813a83 ld s5,536(sp) - c0041c50: 21013b03 ld s6,528(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52664 + c0041de6: 16843503 ld a0,360(s0) + c0041dea: 17043583 ld a1,368(s0) + c0041dee: 96fc40ef jal ra,c000675c + c0041df2: e32a sd a0,384(sp) + c0041df4: e72e sd a1,392(sp) + c0041df6: 17043603 ld a2,368(s0) + c0041dfa: 872a mv a4,a0 + c0041dfc: 87ae mv a5,a1 + c0041dfe: 8522 mv a0,s0 + c0041e00: 16843583 ld a1,360(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52675 +} + c0041e04: 24013403 ld s0,576(sp) + c0041e08: 24813083 ld ra,584(sp) + c0041e0c: 23813483 ld s1,568(sp) + c0041e10: 23013903 ld s2,560(sp) + c0041e14: 22813983 ld s3,552(sp) + c0041e18: 22013a03 ld s4,544(sp) + c0041e1c: 21813a83 ld s5,536(sp) + c0041e20: 21013b03 ld s6,528(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52672 JS_DefinePropertyValue(ctx, ctx->global_obj, JS_ATOM_globalThis, - c0041c54: 480d li a6,3 - c0041c56: 08c00693 li a3,140 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52667 + c0041e24: 480d li a6,3 + c0041e26: 08c00693 li a3,140 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52675 } - c0041c5a: 25010113 addi sp,sp,592 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52664 + c0041e2a: 25010113 addi sp,sp,592 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52672 JS_DefinePropertyValue(ctx, ctx->global_obj, JS_ATOM_globalThis, - c0041c5e: b58d106f j c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52506 + c0041e2e: a76d106f j c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52514 n_args = 1 + (i == JS_AGGREGATE_ERROR); - c0041c62: 4689 li a3,2 - c0041c64: 01648363 beq s1,s6,c0041c6a - c0041c68: 4685 li a3,1 - c0041c6a: 0921 addi s2,s2,8 - c0041c6c: bc75 j c0041728 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52553 (discriminator 3) + c0041e32: 4689 li a3,2 + c0041e34: 01648363 beq s1,s6,c0041e3a + c0041e38: 4685 li a3,1 + c0041e3a: 0921 addi s2,s2,8 + c0041e3c: bc75 j c00418f8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52561 (discriminator 3) JS_DefinePropertyValueStr(ctx, obj1, p, JS_TRUE, JS_PROP_C_W_E); - c0041c6e: 65c6 ld a1,80(sp) - c0041c70: 6666 ld a2,88(sp) - c0041c72: 86a6 mv a3,s1 - c0041c74: 481d li a6,7 - c0041c76: 4705 li a4,1 - c0041c78: 4785 li a5,1 - c0041c7a: 8522 mv a0,s0 - c0041c7c: e34a sd s2,384(sp) - c0041c7e: e74a sd s2,392(sp) - c0041c80: ad9e70ef jal ra,c0029758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52552 (discriminator 3) + c0041e3e: 65c6 ld a1,80(sp) + c0041e40: 6666 ld a2,88(sp) + c0041e42: 86a6 mv a3,s1 + c0041e44: 481d li a6,7 + c0041e46: 4705 li a4,1 + c0041e48: 4785 li a5,1 + c0041e4a: 8522 mv a0,s0 + c0041e4c: e34a sd s2,384(sp) + c0041e4e: e74a sd s2,392(sp) + c0041e50: ad9e70ef jal ra,c0029928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52560 (discriminator 3) for(p = unscopables; *p; p += strlen(p) + 1) { - c0041c84: 8526 mv a0,s1 - c0041c86: 52b140ef jal ra,c00569b0 - c0041c8a: 0505 addi a0,a0,1 - c0041c8c: 94aa add s1,s1,a0 - c0041c8e: be95 j c0041802 + c0041e54: 8526 mv a0,s1 + c0041e56: 52b140ef jal ra,c0056b80 + c0041e5a: 0505 addi a0,a0,1 + c0041e5c: 94aa add s1,s1,a0 + c0041e5e: be95 j c00419d2 js_random_init(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43218 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:43226 ctx->random_state = 1; - c0041c90: 19243423 sd s2,392(s0) - c0041c94: b35d j c0041a3a + c0041e60: 19243423 sd s2,392(s0) + c0041e64: b35d j c0041c0a -00000000c0041c96 : +00000000c0041e66 : JS_NewArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52761 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52769 { - c0041c96: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 + c0041e66: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52770 return js_array_buffer_constructor3(ctx, JS_UNDEFINED, len, - c0041c98: 00f03333 snez t1,a5 - c0041c9c: e002 sd zero,0(sp) - c0041c9e: 88ba mv a7,a4 - c0041ca0: 8836 mv a6,a3 - c0041ca2: 87ae mv a5,a1 - c0041ca4: 86b2 mv a3,a2 - c0041ca6: 01330713 addi a4,t1,19 - c0041caa: 4581 li a1,0 - c0041cac: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52761 -{ - c0041cae: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52762 + c0041e68: 00f03333 snez t1,a5 + c0041e6c: e002 sd zero,0(sp) + c0041e6e: 88ba mv a7,a4 + c0041e70: 8836 mv a6,a3 + c0041e72: 87ae mv a5,a1 + c0041e74: 86b2 mv a3,a2 + c0041e76: 01330713 addi a4,t1,19 + c0041e7a: 4581 li a1,0 + c0041e7c: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52769 +{ + c0041e7e: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52770 return js_array_buffer_constructor3(ctx, JS_UNDEFINED, len, - c0041cb0: dedd40ef jal ra,c0016a9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52765 + c0041e80: dedd40ef jal ra,c0016c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52773 } - c0041cb4: 70e2 ld ra,56(sp) - c0041cb6: 6121 addi sp,sp,64 - c0041cb8: 8082 ret + c0041e84: 70e2 ld ra,56(sp) + c0041e86: 6121 addi sp,sp,64 + c0041e88: 8082 ret -00000000c0041cba : +00000000c0041e8a : JS_NewArrayBufferCopy(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52769 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52777 { - c0041cba: 7139 addi sp,sp,-64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52770 + c0041e8a: 7139 addi sp,sp,-64 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52778 return js_array_buffer_constructor3(ctx, JS_UNDEFINED, len, - c0041cbc: 4705 li a4,1 - c0041cbe: e03a sd a4,0(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52769 + c0041e8c: 4705 li a4,1 + c0041e8e: e03a sd a4,0(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52777 { - c0041cc0: 87ae mv a5,a1 - c0041cc2: 86b2 mv a3,a2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52770 + c0041e90: 87ae mv a5,a1 + c0041e92: 86b2 mv a3,a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52778 return js_array_buffer_constructor3(ctx, JS_UNDEFINED, len, - c0041cc4: 4881 li a7,0 - c0041cc6: fffc5817 auipc a6,0xfffc5 - c0041cca: 09680813 addi a6,a6,150 # c0006d5c - c0041cce: 474d li a4,19 - c0041cd0: 4581 li a1,0 - c0041cd2: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52769 -{ - c0041cd4: fc06 sd ra,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52770 + c0041e94: 4881 li a7,0 + c0041e96: fffc5817 auipc a6,0xfffc5 + c0041e9a: fb480813 addi a6,a6,-76 # c0006e4a + c0041e9e: 474d li a4,19 + c0041ea0: 4581 li a1,0 + c0041ea2: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52777 +{ + c0041ea4: fc06 sd ra,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52778 return js_array_buffer_constructor3(ctx, JS_UNDEFINED, len, - c0041cd6: dc7d40ef jal ra,c0016a9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52775 + c0041ea6: dc7d40ef jal ra,c0016c6c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52783 } - c0041cda: 70e2 ld ra,56(sp) - c0041cdc: 6121 addi sp,sp,64 - c0041cde: 8082 ret + c0041eaa: 70e2 ld ra,56(sp) + c0041eac: 6121 addi sp,sp,64 + c0041eae: 8082 ret -00000000c0041ce0 : +00000000c0041eb0 : JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36538 -{ - c0041ce0: dd010113 addi sp,sp,-560 - c0041ce4: 22813023 sd s0,544(sp) - c0041ce8: 22113423 sd ra,552(sp) - c0041cec: 20913c23 sd s1,536(sp) - c0041cf0: 21213823 sd s2,528(sp) - c0041cf4: 21313423 sd s3,520(sp) - c0041cf8: 21413023 sd s4,512(sp) - c0041cfc: ffd6 sd s5,504(sp) - c0041cfe: fbda sd s6,496(sp) - c0041d00: f7de sd s7,488(sp) - c0041d02: f3e2 sd s8,480(sp) - c0041d04: efe6 sd s9,472(sp) - c0041d06: ebea sd s10,464(sp) - c0041d08: e7ee sd s11,456(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36546 +{ + c0041eb0: dd010113 addi sp,sp,-560 + c0041eb4: 22813023 sd s0,544(sp) + c0041eb8: 22113423 sd ra,552(sp) + c0041ebc: 20913c23 sd s1,536(sp) + c0041ec0: 21213823 sd s2,528(sp) + c0041ec4: 21313423 sd s3,520(sp) + c0041ec8: 21413023 sd s4,512(sp) + c0041ecc: ffd6 sd s5,504(sp) + c0041ece: fbda sd s6,496(sp) + c0041ed0: f7de sd s7,488(sp) + c0041ed2: f3e2 sd s8,480(sp) + c0041ed4: efe6 sd s9,472(sp) + c0041ed6: ebea sd s10,464(sp) + c0041ed8: e7ee sd s11,456(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36554 if (bc_get_u8(s, &tag)) - c0041d0a: 01f10593 addi a1,sp,31 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36539 + c0041eda: 01f10593 addi a1,sp,31 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36547 JSContext *ctx = s->ctx; - c0041d0e: 6104 ld s1,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36538 -{ - c0041d10: 842a mv s0,a0 + c0041ede: 6104 ld s1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36546 +{ + c0041ee0: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36554 if (bc_get_u8(s, &tag)) - c0041d12: d14d10ef jal ra,c0013226 - c0041d16: cd05 beqz a0,c0041d4e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36636 + c0041ee2: c32d10ef jal ra,c0013314 + c0041ee6: cd05 beqz a0,c0041f1e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36644 return JS_EXCEPTION; - c0041d18: 4799 li a5,6 - c0041d1a: f002 sd zero,32(sp) - c0041d1c: f43e sd a5,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36652 (discriminator 12) -} - c0041d1e: 22813083 ld ra,552(sp) - c0041d22: 22013403 ld s0,544(sp) - c0041d26: 7502 ld a0,32(sp) - c0041d28: 75a2 ld a1,40(sp) - c0041d2a: 21813483 ld s1,536(sp) - c0041d2e: 21013903 ld s2,528(sp) - c0041d32: 20813983 ld s3,520(sp) - c0041d36: 20013a03 ld s4,512(sp) - c0041d3a: 7afe ld s5,504(sp) - c0041d3c: 7b5e ld s6,496(sp) - c0041d3e: 7bbe ld s7,488(sp) - c0041d40: 7c1e ld s8,480(sp) - c0041d42: 6cfe ld s9,472(sp) - c0041d44: 6d5e ld s10,464(sp) - c0041d46: 6dbe ld s11,456(sp) - c0041d48: 23010113 addi sp,sp,560 - c0041d4c: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36551 + c0041ee8: 4799 li a5,6 + c0041eea: f002 sd zero,32(sp) + c0041eec: f43e sd a5,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36660 (discriminator 12) +} + c0041eee: 22813083 ld ra,552(sp) + c0041ef2: 22013403 ld s0,544(sp) + c0041ef6: 7502 ld a0,32(sp) + c0041ef8: 75a2 ld a1,40(sp) + c0041efa: 21813483 ld s1,536(sp) + c0041efe: 21013903 ld s2,528(sp) + c0041f02: 20813983 ld s3,520(sp) + c0041f06: 20013a03 ld s4,512(sp) + c0041f0a: 7afe ld s5,504(sp) + c0041f0c: 7b5e ld s6,496(sp) + c0041f0e: 7bbe ld s7,488(sp) + c0041f10: 7c1e ld s8,480(sp) + c0041f12: 6cfe ld s9,472(sp) + c0041f14: 6d5e ld s10,464(sp) + c0041f16: 6dbe ld s11,456(sp) + c0041f18: 23010113 addi sp,sp,560 + c0041f1c: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36559 switch(tag) { - c0041d4e: 01f14783 lbu a5,31(sp) - c0041d52: 4751 li a4,20 - c0041d54: 0007891b sext.w s2,a5 - c0041d58: 37fd addiw a5,a5,-1 - c0041d5a: 0ff7f793 zext.b a5,a5 - c0041d5e: 50f764e3 bltu a4,a5,c0042a66 - c0041d62: 0001f717 auipc a4,0x1f - c0041d66: 0fa70713 addi a4,a4,250 # c0060e5c - c0041d6a: 078a slli a5,a5,0x2 - c0041d6c: 97ba add a5,a5,a4 - c0041d6e: 439c lw a5,0(a5) - c0041d70: 97ba add a5,a5,a4 - c0041d72: 8782 jr a5 - c0041d74: 490d li s2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36553 + c0041f1e: 01f14783 lbu a5,31(sp) + c0041f22: 4751 li a4,20 + c0041f24: 0007891b sext.w s2,a5 + c0041f28: 37fd addiw a5,a5,-1 + c0041f2a: 0ff7f793 zext.b a5,a5 + c0041f2e: 50f764e3 bltu a4,a5,c0042c36 + c0041f32: 0001f717 auipc a4,0x1f + c0041f36: 18a70713 addi a4,a4,394 # c00610bc + c0041f3a: 078a slli a5,a5,0x2 + c0041f3c: 97ba add a5,a5,a4 + c0041f3e: 439c lw a5,0(a5) + c0041f40: 97ba add a5,a5,a4 + c0041f42: 8782 jr a5 + c0041f44: 490d li s2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36561 obj = JS_NULL; - c0041d76: 4481 li s1,0 - c0041d78: a801 j c0041d88 + c0041f46: 4481 li s1,0 + c0041f48: a801 j c0041f58 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0041d7a: 1975 addi s2,s2,-3 - c0041d7c: 01203933 snez s2,s2 - c0041d80: d84a sw s2,48(sp) - c0041d82: da02 sw zero,52(sp) - c0041d84: 74c2 ld s1,48(sp) - c0041d86: 4905 li s2,1 + c0041f4a: 1975 addi s2,s2,-3 + c0041f4c: 01203933 snez s2,s2 + c0041f50: d84a sw s2,48(sp) + c0041f52: da02 sw zero,52(sp) + c0041f54: 74c2 ld s1,48(sp) + c0041f56: 4905 li s2,1 JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36651 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36659 return obj; - c0041d88: f026 sd s1,32(sp) - c0041d8a: f44a sd s2,40(sp) - c0041d8c: bf49 j c0041d1e + c0041f58: f026 sd s1,32(sp) + c0041f5a: f44a sd s2,40(sp) + c0041f5c: bf49 j c0041eee bc_get_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35702 ret = get_sleb128(pval, s->ptr, s->buf_end); - c0041d8e: 6c10 ld a2,24(s0) - c0041d90: 680c ld a1,16(s0) - c0041d92: 0288 addi a0,sp,320 - c0041d94: 808c30ef jal ra,c0004d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35695 + c0041f5e: 6c10 ld a2,24(s0) + c0041f60: 680c ld a1,16(s0) + c0041f62: 0288 addi a0,sp,320 + c0041f64: e39c20ef jal ra,c0004d9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35703 if (unlikely(ret < 0)) - c0041d98: 00055d63 bgez a0,c0041db2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35696 + c0041f68: 00055d63 bgez a0,c0041f82 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 return bc_read_error_end(s); - c0041d9c: 8522 mv a0,s0 - c0041d9e: c60d10ef jal ra,c00131fe + c0041f6c: 8522 mv a0,s0 + c0041f6e: b7ed10ef jal ra,c00132ec JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36565 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36573 if (bc_get_sleb128(s, &val)) - c0041da2: f93d bnez a0,c0041d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36568 + c0041f72: f93d bnez a0,c0041ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36576 obj = JS_NewInt32(ctx, val); - c0041da4: 14012783 lw a5,320(sp) + c0041f74: 14012783 lw a5,320(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0041da8: e082 sd zero,64(sp) + c0041f78: e082 sd zero,64(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36570 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36578 break; - c0041daa: 4901 li s2,0 - c0041dac: c0be sw a5,64(sp) - c0041dae: 6486 ld s1,64(sp) - c0041db0: bfe1 j c0041d88 + c0041f7a: 4901 li s2,0 + c0041f7c: c0be sw a5,64(sp) + c0041f7e: 6486 ld s1,64(sp) + c0041f80: bfe1 j c0041f58 bc_get_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35697 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35705 s->ptr += ret; - c0041db2: 681c ld a5,16(s0) - c0041db4: 953e add a0,a0,a5 - c0041db6: e808 sd a0,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35698 + c0041f82: 681c ld a5,16(s0) + c0041f84: 953e add a0,a0,a5 + c0041f86: e808 sd a0,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35706 return 0; - c0041db8: b7f5 j c0041da4 + c0041f88: b7f5 j c0041f74 JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36574 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36582 if (bc_get_u64(s, &u.u64)) - c0041dba: 028c addi a1,sp,320 - c0041dbc: 8522 mv a0,s0 - c0041dbe: ce4d10ef jal ra,c00132a2 - c0041dc2: f939 bnez a0,c0041d18 + c0041f8a: 028c addi a1,sp,320 + c0041f8c: 8522 mv a0,s0 + c0041f8e: c02d10ef jal ra,c0013390 + c0041f92: f939 bnez a0,c0041ee8 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c0041dc4: 6496 ld s1,320(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36579 + c0041f94: 6496 ld s1,320(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36587 break; - c0041dc6: 491d li s2,7 - c0041dc8: b7c1 j c0041d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36583 + c0041f96: 491d li s2,7 + c0041f98: b7c1 j c0041f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36591 p = JS_ReadString(s); - c0041dca: 8522 mv a0,s0 - c0041dcc: e4bd60ef jal ra,c0018c16 - c0041dd0: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36586 + c0041f9a: 8522 mv a0,s0 + c0041f9c: e4bd60ef jal ra,c0018de6 + c0041fa0: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36594 obj = JS_MKPTR(JS_TAG_STRING, p); - c0041dd2: 5965 li s2,-7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36584 + c0041fa2: 5965 li s2,-7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36592 if (!p) - c0041dd4: f955 bnez a0,c0041d88 - c0041dd6: b789 j c0041d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36590 + c0041fa4: f955 bnez a0,c0041f58 + c0041fa6: b789 j c0041ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36598 if (!s->allow_bytecode) - c0041dd8: 03544783 lbu a5,53(s0) - c0041ddc: 480785e3 beqz a5,c0042a66 + c0041fa8: 03544783 lbu a5,53(s0) + c0041fac: 480785e3 beqz a5,c0042c36 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36025 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36033 memset(&bc, 0, sizeof(bc)); - c0041de0: 08000613 li a2,128 - c0041de4: 4581 li a1,0 - c0041de6: 0288 addi a0,sp,320 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36016 + c0041fb0: 08000613 li a2,128 + c0041fb4: 4581 li a1,0 + c0041fb6: 0288 addi a0,sp,320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36024 JSContext *ctx = s->ctx; - c0041de8: 00043a03 ld s4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36025 + c0041fb8: 00043a03 ld s4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36033 memset(&bc, 0, sizeof(bc)); - c0041dec: 285140ef jal ra,c0056870 + c0041fbc: 285140ef jal ra,c0056a40 bc_get_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35658 if (unlikely(s->buf_end - s->ptr < 2)) { - c0041df0: 6818 ld a4,16(s0) - c0041df2: 6c1c ld a5,24(s0) + c0041fc0: 6818 ld a4,16(s0) + c0041fc2: 6c1c ld a5,24(s0) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36026 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36034 bc.header.ref_count = 1; - c0041df4: 4685 li a3,1 - c0041df6: 14d12023 sw a3,320(sp) + c0041fc4: 4685 li a3,1 + c0041fc6: 14d12023 sw a3,320(sp) bc_get_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35650 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35658 if (unlikely(s->buf_end - s->ptr < 2)) { - c0041dfa: 8f99 sub a5,a5,a4 - c0041dfc: 00f6ca63 blt a3,a5,c0041e10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35652 + c0041fca: 8f99 sub a5,a5,a4 + c0041fcc: 00f6ca63 blt a3,a5,c0041fe0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35660 return bc_read_error_end(s); - c0041e00: 8522 mv a0,s0 - c0041e02: bfcd10ef jal ra,c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35651 + c0041fd0: 8522 mv a0,s0 + c0041fd2: b1ad10ef jal ra,c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35659 *pval = 0; /* avoid warning */ - c0041e06: 4781 li a5,0 + c0041fd6: 4781 li a5,0 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36029 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36037 if (bc_get_u16(s, &v16)) - c0041e08: cd01 beqz a0,c0041e20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36018 + c0041fd8: cd01 beqz a0,c0041ff0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36026 JSValue obj = JS_UNDEFINED; - c0041e0a: 490d li s2,3 - c0041e0c: 4481 li s1,0 - c0041e0e: a92d j c0042248 + c0041fda: 490d li s2,3 + c0041fdc: 4481 li s1,0 + c0041fde: a92d j c0042418 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0041e10: 00174783 lbu a5,1(a4) - c0041e14: 00074683 lbu a3,0(a4) + c0041fe0: 00174783 lbu a5,1(a4) + c0041fe4: 00074683 lbu a3,0(a4) bc_get_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35655 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35663 s->ptr += 2; - c0041e18: 0709 addi a4,a4,2 + c0041fe8: 0709 addi a4,a4,2 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0041e1a: 07a2 slli a5,a5,0x8 - c0041e1c: 8fd5 or a5,a5,a3 + c0041fea: 07a2 slli a5,a5,0x8 + c0041fec: 8fd5 or a5,a5,a3 bc_get_u16(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35655 - c0041e1e: e818 sd a4,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35663 + c0041fee: e818 sd a4,16(s0) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e20: 0007871b sext.w a4,a5 + c0041ff0: 0007871b sext.w a4,a5 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e24: 0017561b srliw a2,a4,0x1 + c0041ff4: 0017561b srliw a2,a4,0x1 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e28: 8a05 andi a2,a2,1 - c0041e2a: 0016161b slliw a2,a2,0x1 - c0041e2e: 8b85 andi a5,a5,1 - c0041e30: 8fd1 or a5,a5,a2 + c0041ff8: 8a05 andi a2,a2,1 + c0041ffa: 0016161b slliw a2,a2,0x1 + c0041ffe: 8b85 andi a5,a5,1 + c0042000: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e32: 0027561b srliw a2,a4,0x2 + c0042002: 0027561b srliw a2,a4,0x2 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e36: 8a05 andi a2,a2,1 - c0041e38: 0026161b slliw a2,a2,0x2 - c0041e3c: 8fd1 or a5,a5,a2 + c0042006: 8a05 andi a2,a2,1 + c0042008: 0026161b slliw a2,a2,0x2 + c004200c: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e3e: 0037561b srliw a2,a4,0x3 + c004200e: 0037561b srliw a2,a4,0x3 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e42: 8a05 andi a2,a2,1 - c0041e44: 0036161b slliw a2,a2,0x3 - c0041e48: 8fd1 or a5,a5,a2 + c0042012: 8a05 andi a2,a2,1 + c0042014: 0036161b slliw a2,a2,0x3 + c0042018: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e4a: 0047561b srliw a2,a4,0x4 + c004201a: 0047561b srliw a2,a4,0x4 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e4e: 8a0d andi a2,a2,3 - c0041e50: 0046161b slliw a2,a2,0x4 - c0041e54: 8fd1 or a5,a5,a2 + c004201e: 8a0d andi a2,a2,3 + c0042020: 0046161b slliw a2,a2,0x4 + c0042024: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e56: 0067561b srliw a2,a4,0x6 + c0042026: 0067561b srliw a2,a4,0x6 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e5a: 8a05 andi a2,a2,1 - c0041e5c: 0066161b slliw a2,a2,0x6 - c0041e60: 8fd1 or a5,a5,a2 + c004202a: 8a05 andi a2,a2,1 + c004202c: 0066161b slliw a2,a2,0x6 + c0042030: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e62: 0077561b srliw a2,a4,0x7 + c0042032: 0077561b srliw a2,a4,0x7 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36032 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36040 bc.has_prototype = bc_get_flags(v16, &idx, 1); - c0041e66: 0076161b slliw a2,a2,0x7 - c0041e6a: 8fd1 or a5,a5,a2 - c0041e6c: 14f10ca3 sb a5,345(sp) + c0042036: 0076161b slliw a2,a2,0x7 + c004203a: 8fd1 or a5,a5,a2 + c004203c: 14f10ca3 sb a5,345(sp) bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e70: 0097579b srliw a5,a4,0x9 + c0042040: 0097579b srliw a5,a4,0x9 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041e74: 8b85 andi a5,a5,1 - c0041e76: 0017961b slliw a2,a5,0x1 + c0042044: 8b85 andi a5,a5,1 + c0042046: 0017961b slliw a2,a5,0x1 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e7a: 0087579b srliw a5,a4,0x8 + c004204a: 0087579b srliw a5,a4,0x8 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041e7e: 8b85 andi a5,a5,1 - c0041e80: 8fd1 or a5,a5,a2 + c004204e: 8b85 andi a5,a5,1 + c0042050: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e82: 00a7561b srliw a2,a4,0xa + c0042052: 00a7561b srliw a2,a4,0xa JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041e86: 8a05 andi a2,a2,1 - c0041e88: 0026161b slliw a2,a2,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36044 + c0042056: 8a05 andi a2,a2,1 + c0042058: 0026161b slliw a2,a2,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36052 bc.read_only_bytecode = s->is_rom_data; - c0041e8c: 03640683 lb a3,54(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 + c004205c: 03640683 lb a3,54(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041e90: 8fd1 or a5,a5,a2 + c0042060: 8fd1 or a5,a5,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041e92: 00b7561b srliw a2,a4,0xb + c0042062: 00b7561b srliw a2,a4,0xb JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041e96: 8a05 andi a2,a2,1 - c0041e98: 0036161b slliw a2,a2,0x3 - c0041e9c: 0046969b slliw a3,a3,0x4 + c0042066: 8a05 andi a2,a2,1 + c0042068: 0036161b slliw a2,a2,0x3 + c004206c: 0046969b slliw a3,a3,0x4 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c0041ea0: 00c7571b srliw a4,a4,0xc + c0042070: 00c7571b srliw a4,a4,0xc JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041ea4: 8fd1 or a5,a5,a2 - c0041ea6: 8ac1 andi a3,a3,16 - c0041ea8: 8b05 andi a4,a4,1 - c0041eaa: 8fd5 or a5,a5,a3 - c0041eac: 0057171b slliw a4,a4,0x5 - c0041eb0: 8f5d or a4,a4,a5 - c0041eb2: 15a14783 lbu a5,346(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36045 + c0042074: 8fd1 or a5,a5,a2 + c0042076: 8ac1 andi a3,a3,16 + c0042078: 8b05 andi a4,a4,1 + c004207a: 8fd5 or a5,a5,a3 + c004207c: 0057171b slliw a4,a4,0x5 + c0042080: 8f5d or a4,a4,a5 + c0042082: 15a14783 lbu a5,346(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36053 if (bc_get_u8(s, &v8)) - c0041eb6: 0a0c addi a1,sp,272 - c0041eb8: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36039 + c0042086: 0a0c addi a1,sp,272 + c0042088: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 bc.super_allowed = bc_get_flags(v16, &idx, 1); - c0041eba: fc07f793 andi a5,a5,-64 - c0041ebe: 8f5d or a4,a4,a5 - c0041ec0: 14e10d23 sb a4,346(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36045 + c004208a: fc07f793 andi a5,a5,-64 + c004208e: 8f5d or a4,a4,a5 + c0042090: 14e10d23 sb a4,346(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36053 if (bc_get_u8(s, &v8)) - c0041ec4: b62d10ef jal ra,c0013226 - c0041ec8: f129 bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 + c0042094: a80d10ef jal ra,c0013314 + c0042098: f129 bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36055 bc.js_mode = v8; - c0041eca: 11014783 lbu a5,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36048 + c004209a: 11014783 lbu a5,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36056 if (bc_get_atom(s, &bc.func_name)) //@ atom leak if failure - c0041ece: 12ec addi a1,sp,364 - c0041ed0: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36047 + c004209e: 12ec addi a1,sp,364 + c00420a0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36055 bc.js_mode = v8; - c0041ed2: 14f10c23 sb a5,344(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36048 + c00420a2: 14f10c23 sb a5,344(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36056 if (bc_get_atom(s, &bc.func_name)) //@ atom leak if failure - c0041ed6: cded10ef jal ra,c00133b4 - c0041eda: f905 bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36050 + c00420a6: bfcd10ef jal ra,c00134a2 + c00420aa: f905 bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36058 if (bc_get_leb128_u16(s, &bc.arg_count)) - c0041edc: 030c addi a1,sp,384 - c0041ede: 8522 mv a0,s0 - c0041ee0: b9cd10ef jal ra,c001327c - c0041ee4: f11d bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36052 + c00420ac: 030c addi a1,sp,384 + c00420ae: 8522 mv a0,s0 + c00420b0: abad10ef jal ra,c001336a + c00420b4: f11d bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36060 if (bc_get_leb128_u16(s, &bc.var_count)) - c0041ee6: 18210593 addi a1,sp,386 - c0041eea: 8522 mv a0,s0 - c0041eec: b90d10ef jal ra,c001327c - c0041ef0: fd09 bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36054 + c00420b6: 18210593 addi a1,sp,386 + c00420ba: 8522 mv a0,s0 + c00420bc: aaed10ef jal ra,c001336a + c00420c0: fd09 bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36062 if (bc_get_leb128_u16(s, &bc.defined_arg_count)) - c0041ef2: 034c addi a1,sp,388 - c0041ef4: 8522 mv a0,s0 - c0041ef6: b86d10ef jal ra,c001327c - c0041efa: f00518e3 bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36056 + c00420c2: 034c addi a1,sp,388 + c00420c4: 8522 mv a0,s0 + c00420c6: aa4d10ef jal ra,c001336a + c00420ca: f00518e3 bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36064 if (bc_get_leb128_u16(s, &bc.stack_size)) - c0041efe: 18610593 addi a1,sp,390 - c0041f02: 8522 mv a0,s0 - c0041f04: b78d10ef jal ra,c001327c - c0041f08: f00511e3 bnez a0,c0041e0a + c00420ce: 18610593 addi a1,sp,390 + c00420d2: 8522 mv a0,s0 + c00420d4: a96d10ef jal ra,c001336a + c00420d8: f00511e3 bnez a0,c0041fda bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0041f0c: 0b6c addi a1,sp,412 - c0041f0e: 8522 mv a0,s0 - c0041f10: b3ad10ef jal ra,c001324a + c00420dc: 0b6c addi a1,sp,412 + c00420de: 8522 mv a0,s0 + c00420e0: a58d10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36058 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36066 if (bc_get_leb128_int(s, &bc.closure_var_count)) - c0041f14: ee051be3 bnez a0,c0041e0a + c00420e4: ee051be3 bnez a0,c0041fda bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0041f18: 0b2c addi a1,sp,408 - c0041f1a: 8522 mv a0,s0 - c0041f1c: b2ed10ef jal ra,c001324a + c00420e8: 0b2c addi a1,sp,408 + c00420ea: 8522 mv a0,s0 + c00420ec: a4cd10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36060 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36068 if (bc_get_leb128_int(s, &bc.cpool_count)) - c0041f20: ee0515e3 bnez a0,c0041e0a + c00420f0: ee0515e3 bnez a0,c0041fda bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0041f24: 12ac addi a1,sp,360 - c0041f26: 8522 mv a0,s0 - c0041f28: b22d10ef jal ra,c001324a + c00420f4: 12ac addi a1,sp,360 + c00420f6: 8522 mv a0,s0 + c00420f8: a40d10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36062 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36070 if (bc_get_leb128_int(s, &bc.byte_code_len)) - c0041f2c: ec051fe3 bnez a0,c0041e0a + c00420fc: ec051fe3 bnez a0,c0041fda bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0041f30: 120c addi a1,sp,288 - c0041f32: 8522 mv a0,s0 - c0041f34: b16d10ef jal ra,c001324a - c0041f38: 8aaa mv s5,a0 + c0042100: 120c addi a1,sp,288 + c0042102: 8522 mv a0,s0 + c0042104: a34d10ef jal ra,c0013338 + c0042108: 8aaa mv s5,a0 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36064 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36072 if (bc_get_leb128_int(s, &local_count)) - c0041f3a: ec0518e3 bnez a0,c0041e0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36067 + c004210a: ec0518e3 bnez a0,c0041fda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36075 if (bc.has_debug) { - c0041f3e: 15a14683 lbu a3,346(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36068 + c004210e: 15a14683 lbu a3,346(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36076 function_size = sizeof(*b); - c0041f42: 08000b93 li s7,128 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36067 + c0042112: 08000b93 li s7,128 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36075 if (bc.has_debug) { - c0041f46: 0046f793 andi a5,a3,4 - c0041f4a: e399 bnez a5,c0041f50 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36070 + c0042116: 0046f793 andi a5,a3,4 + c004211a: e399 bnez a5,c0042120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36078 function_size = offsetof(JSFunctionBytecode, debug); - c0041f4c: 06000b93 li s7,96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36073 + c004211c: 06000b93 li s7,96 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36081 function_size += bc.cpool_count * sizeof(*bc.cpool); - c0041f50: 19812783 lw a5,408(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36075 + c0042120: 19812783 lw a5,408(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36083 function_size += local_count * sizeof(*bc.vardefs); - c0041f54: 12012b03 lw s6,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36077 + c0042124: 12012b03 lw s6,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36085 function_size += bc.closure_var_count * sizeof(*bc.closure_var); - c0041f58: 19c12703 lw a4,412(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36073 + c0042128: 19c12703 lw a4,412(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36081 function_size += bc.cpool_count * sizeof(*bc.cpool); - c0041f5c: 0047979b slliw a5,a5,0x4 - c0041f60: 01778c3b addw s8,a5,s7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36075 + c004212c: 0047979b slliw a5,a5,0x4 + c0042130: 01778c3b addw s8,a5,s7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36083 function_size += local_count * sizeof(*bc.vardefs); - c0041f64: 004b1b1b slliw s6,s6,0x4 - c0041f68: 018b0b3b addw s6,s6,s8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36077 + c0042134: 004b1b1b slliw s6,s6,0x4 + c0042138: 018b0b3b addw s6,s6,s8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36085 function_size += bc.closure_var_count * sizeof(*bc.closure_var); - c0041f6c: 0037171b slliw a4,a4,0x3 - c0041f70: 016709bb addw s3,a4,s6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36079 + c004213c: 0037171b slliw a4,a4,0x3 + c0042140: 016709bb addw s3,a4,s6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36087 if (!bc.read_only_bytecode) { - c0041f74: 8ac1 andi a3,a3,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36077 + c0042144: 8ac1 andi a3,a3,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36085 function_size += bc.closure_var_count * sizeof(*bc.closure_var); - c0041f76: 85ce mv a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36079 + c0042146: 85ce mv a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36087 if (!bc.read_only_bytecode) { - c0041f78: e689 bnez a3,c0041f82 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36080 + c0042148: e689 bnez a3,c0042152 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36088 function_size += bc.byte_code_len; - c0041f7a: 16812583 lw a1,360(sp) - c0041f7e: 013585bb addw a1,a1,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36083 + c004214a: 16812583 lw a1,360(sp) + c004214e: 013585bb addw a1,a1,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36091 b = js_mallocz(ctx, function_size); - c0041f82: 8552 mv a0,s4 - c0041f84: d59d30ef jal ra,c0015cdc - c0041f88: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36085 + c0042152: 8552 mv a0,s4 + c0042154: d59d30ef jal ra,c0015eac + c0042158: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36093 return JS_EXCEPTION; - c0041f8a: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36084 + c004215a: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36092 if (!b) - c0041f8c: de050ee3 beqz a0,c0041d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36087 + c004215c: de050ee3 beqz a0,c0041f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36095 memcpy(b, &bc, offsetof(JSFunctionBytecode, debug)); - c0041f90: 06000613 li a2,96 - c0041f94: 028c addi a1,sp,320 - c0041f96: 245140ef jal ra,c00569da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36088 + c0042160: 06000613 li a2,96 + c0042164: 028c addi a1,sp,320 + c0042166: 245140ef jal ra,c0056baa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36096 b->header.ref_count = 1; - c0041f9a: 4785 li a5,1 - c0041f9c: c09c sw a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36089 + c004216a: 4785 li a5,1 + c004216c: c09c sw a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36097 if (local_count != 0) { - c0041f9e: 12012683 lw a3,288(sp) - c0041fa2: c689 beqz a3,c0041fac -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36090 + c004216e: 12012683 lw a3,288(sp) + c0042172: c689 beqz a3,c004217c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36098 b->vardefs = (void *)((uint8_t*)b + vardefs_offset); - c0041fa4: 000c079b sext.w a5,s8 - c0041fa8: 97a6 add a5,a5,s1 - c0041faa: f89c sd a5,48(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36092 + c0042174: 000c079b sext.w a5,s8 + c0042178: 97a6 add a5,a5,s1 + c004217a: f89c sd a5,48(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36100 if (b->closure_var_count != 0) { - c0041fac: 4cfc lw a5,92(s1) - c0041fae: c781 beqz a5,c0041fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36093 + c004217c: 4cfc lw a5,92(s1) + c004217e: c781 beqz a5,c0042186 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36101 b->closure_var = (void *)((uint8_t*)b + closure_var_offset); - c0041fb0: 9b26 add s6,s6,s1 - c0041fb2: 0364bc23 sd s6,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36095 + c0042180: 9b26 add s6,s6,s1 + c0042182: 0364bc23 sd s6,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36103 if (b->cpool_count != 0) { - c0041fb6: 4cbc lw a5,88(s1) - c0041fb8: c781 beqz a5,c0041fc0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36096 + c0042186: 4cbc lw a5,88(s1) + c0042188: c781 beqz a5,c0042190 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36104 b->cpool = (void *)((uint8_t*)b + cpool_offset); - c0041fba: 9ba6 add s7,s7,s1 - c0041fbc: 0574b823 sd s7,80(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36099 + c004218a: 9ba6 add s7,s7,s1 + c004218c: 0574b823 sd s7,80(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36107 add_gc_object(ctx->rt, &b->header, JS_GC_OBJ_TYPE_FUNCTION_BYTECODE); - c0041fc0: 018a3703 ld a4,24(s4) + c0042190: 018a3703 ld a4,24(s4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5669 h->gc_obj_type = type; - c0041fc4: 4785 li a5,1 - c0041fc6: 00f48223 sb a5,4(s1) + c0042194: 4785 li a5,1 + c0042196: 00f48223 sb a5,4(s1) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0041fca: 6750 ld a2,136(a4) + c004219a: 6750 ld a2,136(a4) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 list_add_tail(&h->link, &rt->gc_obj_list); - c0041fcc: 00848793 addi a5,s1,8 + c004219c: 00848793 addi a5,s1,8 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0041fd0: e61c sd a5,8(a2) + c00421a0: e61c sd a5,8(a2) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0041fd2: e490 sd a2,8(s1) + c00421a2: e490 sd a2,8(s1) add_gc_object(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5662 - c0041fd4: 08870613 addi a2,a4,136 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:5670 + c00421a4: 08870613 addi a2,a4,136 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0041fd8: e890 sd a2,16(s1) + c00421a8: e890 sd a2,16(s1) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0041fda: e75c sd a5,136(a4) + c00421aa: e75c sd a5,136(a4) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36112 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36120 if (local_count != 0) { - c0041fdc: e6dd bnez a3,c004208a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36136 + c00421ac: e6dd bnez a3,c004225a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36144 if (b->closure_var_count != 0) { - c0041fde: 4cfc lw a5,92(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36138 + c00421ae: 4cfc lw a5,92(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36146 for(i = 0; i < b->closure_var_count; i++) { - c0041fe0: 4901 li s2,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36136 + c00421b0: 4901 li s2,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36144 if (b->closure_var_count != 0) { - c0041fe2: 12079a63 bnez a5,c0042116 + c00421b2: 12079a63 bnez a5,c00422e6 JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35822 if (s->is_rom_data) { - c0041fe6: 03644783 lbu a5,54(s0) + c00421b6: 03644783 lbu a5,54(s0) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36162 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36170 if (JS_ReadFunctionBytecode(s, b, byte_code_offset, b->byte_code_len)) - c0041fea: 0284ab03 lw s6,40(s1) + c00421ba: 0284ab03 lw s6,40(s1) JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35814 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35822 if (s->is_rom_data) { - c0041fee: 12079863 bnez a5,c004211e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35821 + c00421be: 12079863 bnez a5,c00422ee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35829 bc_buf = (void *)((uint8_t*)b + byte_code_offset); - c0041ff2: 99a6 add s3,s3,s1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35822 + c00421c2: 99a6 add s3,s3,s1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35830 if (bc_get_buf(s, bc_buf, bc_len)) - c0041ff4: 865a mv a2,s6 - c0041ff6: 85ce mv a1,s3 - c0041ff8: 8522 mv a0,s0 - c0041ffa: b04d10ef jal ra,c00132fe - c0041ffe: 16050363 beqz a0,c0042164 + c00421c4: 865a mv a2,s6 + c00421c6: 85ce mv a1,s3 + c00421c8: 8522 mv a0,s0 + c00421ca: a22d10ef jal ra,c00133ec + c00421ce: 16050363 beqz a0,c0042334 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36109 obj = JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b); - c0042002: 5979 li s2,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36201 + c00421d2: 5979 li s2,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36209 JS_FreeValue(ctx, obj); - c0042004: a491 j c0042248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36115 + c00421d4: a491 j c0042418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36123 JSVarDef *vd = &b->vardefs[i]; - c0042006: 789c ld a5,48(s1) - c0042008: 00491b13 slli s6,s2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36116 + c00421d6: 789c ld a5,48(s1) + c00421d8: 00491b13 slli s6,s2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36124 if (bc_get_atom(s, &vd->var_name)) - c004200c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36115 + c00421dc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36123 JSVarDef *vd = &b->vardefs[i]; - c004200e: 9b3e add s6,s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36116 + c00421de: 9b3e add s6,s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36124 if (bc_get_atom(s, &vd->var_name)) - c0042010: 85da mv a1,s6 - c0042012: ba2d10ef jal ra,c00133b4 - c0042016: f575 bnez a0,c0042002 + c00421e0: 85da mv a1,s6 + c00421e2: ac0d10ef jal ra,c00134a2 + c00421e6: f575 bnez a0,c00421d2 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042018: 004b0593 addi a1,s6,4 # 4004 <__clzdi2-0xbfffbffc> - c004201c: 8522 mv a0,s0 - c004201e: a2cd10ef jal ra,c001324a + c00421e8: 004b0593 addi a1,s6,4 # 4004 <__clzdi2-0xbfffbffc> + c00421ec: 8522 mv a0,s0 + c00421ee: 94ad10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36118 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36126 if (bc_get_leb128_int(s, &vd->scope_level)) - c0042022: f165 bnez a0,c0042002 + c00421f2: f165 bnez a0,c00421d2 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042024: 008b0593 addi a1,s6,8 - c0042028: 8522 mv a0,s0 - c004202a: a20d10ef jal ra,c001324a + c00421f4: 008b0593 addi a1,s6,8 + c00421f8: 8522 mv a0,s0 + c00421fa: 93ed10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36120 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36128 if (bc_get_leb128_int(s, &vd->scope_next)) - c004202e: f971 bnez a0,c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36122 + c00421fe: f971 bnez a0,c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36130 vd->scope_next--; - c0042030: 008b2783 lw a5,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36123 + c0042200: 008b2783 lw a5,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36131 if (bc_get_u8(s, &v8)) - c0042034: 0a0c addi a1,sp,272 - c0042036: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36122 + c0042204: 0a0c addi a1,sp,272 + c0042206: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36130 vd->scope_next--; - c0042038: 37fd addiw a5,a5,-1 - c004203a: 00fb2423 sw a5,8(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36123 + c0042208: 37fd addiw a5,a5,-1 + c004220a: 00fb2423 sw a5,8(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36131 if (bc_get_u8(s, &v8)) - c004203e: 9e8d10ef jal ra,c0013226 - c0042042: f161 bnez a0,c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36126 + c004220e: 906d10ef jal ra,c0013314 + c0042212: f161 bnez a0,c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36134 vd->var_kind = bc_get_flags(v8, &idx, 4); - c0042044: 11014603 lbu a2,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36114 + c0042214: 11014603 lbu a2,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36122 for(i = 0; i < local_count; i++) { - c0042048: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36126 + c0042218: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36134 vd->var_kind = bc_get_flags(v8, &idx, 4); - c004204a: 0006071b sext.w a4,a2 + c004221a: 0006071b sext.w a4,a2 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c004204e: 0057569b srliw a3,a4,0x5 + c004221e: 0057569b srliw a3,a4,0x5 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36135 vd->is_const = bc_get_flags(v8, &idx, 1); - c0042052: 0016f793 andi a5,a3,1 - c0042056: 0017969b slliw a3,a5,0x1 + c0042222: 0016f793 andi a5,a3,1 + c0042226: 0017969b slliw a3,a5,0x1 bc_get_flags(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35801 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35809 val = (flags >> *pidx) & ((1U << n) - 1); - c004205a: 0047579b srliw a5,a4,0x4 - c004205e: 0067571b srliw a4,a4,0x6 + c004222a: 0047579b srliw a5,a4,0x4 + c004222e: 0067571b srliw a4,a4,0x6 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36127 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36135 vd->is_const = bc_get_flags(v8, &idx, 1); - c0042062: 8b85 andi a5,a5,1 - c0042064: 8b05 andi a4,a4,1 - c0042066: 0027171b slliw a4,a4,0x2 - c004206a: 8fd5 or a5,a5,a3 - c004206c: 8fd9 or a5,a5,a4 - c004206e: 00cb4703 lbu a4,12(s6) - c0042072: 0046161b slliw a2,a2,0x4 - c0042076: 8fd1 or a5,a5,a2 - c0042078: 8b21 andi a4,a4,8 - c004207a: 8fd9 or a5,a5,a4 - c004207c: 00fb0623 sb a5,12(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36114 + c0042232: 8b85 andi a5,a5,1 + c0042234: 8b05 andi a4,a4,1 + c0042236: 0027171b slliw a4,a4,0x2 + c004223a: 8fd5 or a5,a5,a3 + c004223c: 8fd9 or a5,a5,a4 + c004223e: 00cb4703 lbu a4,12(s6) + c0042242: 0046161b slliw a2,a2,0x4 + c0042246: 8fd1 or a5,a5,a2 + c0042248: 8b21 andi a4,a4,8 + c004224a: 8fd9 or a5,a5,a4 + c004224c: 00fb0623 sb a5,12(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36122 for(i = 0; i < local_count; i++) { - c0042080: 12012783 lw a5,288(sp) - c0042084: f8f941e3 blt s2,a5,c0042006 - c0042088: bf99 j c0041fde - c004208a: 4901 li s2,0 - c004208c: bfd5 j c0042080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36139 + c0042250: 12012783 lw a5,288(sp) + c0042254: f8f941e3 blt s2,a5,c00421d6 + c0042258: bf99 j c00421ae + c004225a: 4901 li s2,0 + c004225c: bfd5 j c0042250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36147 JSClosureVar *cv = &b->closure_var[i]; - c004208e: 7c9c ld a5,56(s1) - c0042090: 00391b13 slli s6,s2,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36141 + c004225e: 7c9c ld a5,56(s1) + c0042260: 00391b13 slli s6,s2,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36149 if (bc_get_atom(s, &cv->var_name)) - c0042094: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36139 + c0042264: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36147 JSClosureVar *cv = &b->closure_var[i]; - c0042096: 9b3e add s6,s6,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36141 + c0042266: 9b3e add s6,s6,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36149 if (bc_get_atom(s, &cv->var_name)) - c0042098: 004b0593 addi a1,s6,4 - c004209c: b18d10ef jal ra,c00133b4 - c00420a0: f12d bnez a0,c0042002 + c0042268: 004b0593 addi a1,s6,4 + c004226c: a36d10ef jal ra,c00134a2 + c0042270: f12d bnez a0,c00421d2 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c00420a2: 1a0c addi a1,sp,304 - c00420a4: 8522 mv a0,s0 - c00420a6: 9a4d10ef jal ra,c001324a + c0042272: 1a0c addi a1,sp,304 + c0042274: 8522 mv a0,s0 + c0042276: 8c2d10ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36143 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36151 if (bc_get_leb128_int(s, &var_idx)) - c00420aa: fd21 bnez a0,c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36145 + c004227a: fd21 bnez a0,c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36153 cv->var_idx = var_idx; - c00420ac: 13012783 lw a5,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36146 + c004227c: 13012783 lw a5,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36154 if (bc_get_u8(s, &v8)) - c00420b0: 0a0c addi a1,sp,272 - c00420b2: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36145 + c0042280: 0a0c addi a1,sp,272 + c0042282: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36153 cv->var_idx = var_idx; - c00420b4: 00fb1123 sh a5,2(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36146 + c0042284: 00fb1123 sh a5,2(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36154 if (bc_get_u8(s, &v8)) - c00420b8: 96ed10ef jal ra,c0013226 - c00420bc: f139 bnez a0,c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36149 + c0042288: 88cd10ef jal ra,c0013314 + c004228c: f139 bnez a0,c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36157 cv->is_local = bc_get_flags(v8, &idx, 1); - c00420be: 11014783 lbu a5,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36138 + c004228e: 11014783 lbu a5,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36146 for(i = 0; i < b->closure_var_count; i++) { - c00420c2: 2905 addiw s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36149 + c0042292: 2905 addiw s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36157 cv->is_local = bc_get_flags(v8, &idx, 1); - c00420c4: 0017f693 andi a3,a5,1 - c00420c8: 000b4783 lbu a5,0(s6) - c00420cc: 9bf9 andi a5,a5,-2 - c00420ce: 8fd5 or a5,a5,a3 - c00420d0: 00fb0023 sb a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36150 + c0042294: 0017f693 andi a3,a5,1 + c0042298: 000b4783 lbu a5,0(s6) + c004229c: 9bf9 andi a5,a5,-2 + c004229e: 8fd5 or a5,a5,a3 + c00422a0: 00fb0023 sb a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36158 cv->is_arg = bc_get_flags(v8, &idx, 1); - c00420d4: 11014683 lbu a3,272(sp) - c00420d8: 9bf5 andi a5,a5,-3 - c00420da: 8a89 andi a3,a3,2 - c00420dc: 8edd or a3,a3,a5 - c00420de: 00db0023 sb a3,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36151 + c00422a4: 11014683 lbu a3,272(sp) + c00422a8: 9bf5 andi a5,a5,-3 + c00422aa: 8a89 andi a3,a3,2 + c00422ac: 8edd or a3,a3,a5 + c00422ae: 00db0023 sb a3,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36159 cv->is_const = bc_get_flags(v8, &idx, 1); - c00420e2: 11014703 lbu a4,272(sp) - c00420e6: 00477793 andi a5,a4,4 - c00420ea: ffb6f713 andi a4,a3,-5 - c00420ee: 8f5d or a4,a4,a5 - c00420f0: 00eb0023 sb a4,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36152 + c00422b2: 11014703 lbu a4,272(sp) + c00422b6: 00477793 andi a5,a4,4 + c00422ba: ffb6f713 andi a4,a3,-5 + c00422be: 8f5d or a4,a4,a5 + c00422c0: 00eb0023 sb a4,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36160 cv->is_lexical = bc_get_flags(v8, &idx, 1); - c00420f4: 11014783 lbu a5,272(sp) - c00420f8: 0087f693 andi a3,a5,8 - c00420fc: ff777793 andi a5,a4,-9 - c0042100: 8fd5 or a5,a5,a3 - c0042102: 00fb0023 sb a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36153 + c00422c4: 11014783 lbu a5,272(sp) + c00422c8: 0087f693 andi a3,a5,8 + c00422cc: ff777793 andi a5,a4,-9 + c00422d0: 8fd5 or a5,a5,a3 + c00422d2: 00fb0023 sb a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36161 cv->var_kind = bc_get_flags(v8, &idx, 4); - c0042106: 11014703 lbu a4,272(sp) - c004210a: 8bbd andi a5,a5,15 - c004210c: 0f077713 andi a4,a4,240 - c0042110: 8fd9 or a5,a5,a4 - c0042112: 00fb0023 sb a5,0(s6) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36138 + c00422d6: 11014703 lbu a4,272(sp) + c00422da: 8bbd andi a5,a5,15 + c00422dc: 0f077713 andi a4,a4,240 + c00422e0: 8fd9 or a5,a5,a4 + c00422e2: 00fb0023 sb a5,0(s6) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36146 for(i = 0; i < b->closure_var_count; i++) { - c0042116: 4cfc lw a5,92(s1) - c0042118: f6f94be3 blt s2,a5,c004208e - c004211c: b5e9 j c0041fe6 + c00422e6: 4cfc lw a5,92(s1) + c00422e8: f6f94be3 blt s2,a5,c004225e + c00422ec: b5e9 j c00421b6 JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35816 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35824 if (unlikely(s->buf_end - s->ptr < bc_len)) - c004211e: 01043983 ld s3,16(s0) - c0042122: 6c18 ld a4,24(s0) - c0042124: 020b1793 slli a5,s6,0x20 - c0042128: 9381 srli a5,a5,0x20 - c004212a: 41370733 sub a4,a4,s3 - c004212e: 02f75963 bge a4,a5,c0042160 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35817 + c00422ee: 01043983 ld s3,16(s0) + c00422f2: 6c18 ld a4,24(s0) + c00422f4: 020b1793 slli a5,s6,0x20 + c00422f8: 9381 srli a5,a5,0x20 + c00422fa: 41370733 sub a4,a4,s3 + c00422fe: 02f75963 bge a4,a5,c0042330 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35825 return bc_read_error_end(s); - c0042132: 8522 mv a0,s0 - c0042134: 8cad10ef jal ra,c00131fe + c0042302: 8522 mv a0,s0 + c0042304: fe9d00ef jal ra,c00132ec JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36101 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36109 obj = JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b); - c0042138: 5979 li s2,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36162 + c0042308: 5979 li s2,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36170 if (JS_ReadFunctionBytecode(s, b, byte_code_offset, b->byte_code_len)) - c004213a: 10051763 bnez a0,c0042248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36166 + c004230a: 10051763 bnez a0,c0042418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36174 if (b->has_debug) { - c004213e: 01a4c783 lbu a5,26(s1) - c0042142: 8b91 andi a5,a5,4 - c0042144: e3e9 bnez a5,c0042206 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36187 + c004230e: 01a4c783 lbu a5,26(s1) + c0042312: 8b91 andi a5,a5,4 + c0042314: e3e9 bnez a5,c00423d6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36195 if (b->cpool_count != 0) { - c0042146: 4cbc lw a5,88(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36192 + c0042316: 4cbc lw a5,88(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36200 if (JS_IsException(val)) - c0042148: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36187 + c0042318: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36195 if (b->cpool_count != 0) { - c004214a: 12079263 bnez a5,c004226e + c004231a: 12079263 bnez a5,c004243e JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c004214e: 000a2783 lw a5,0(s4) + c004231e: 000a2783 lw a5,0(s4) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36199 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36207 return obj; - c0042152: 5979 li s2,-2 + c0042322: 5979 li s2,-2 JS_DupContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2261 ctx->header.ref_count++; - c0042154: 2785 addiw a5,a5,1 - c0042156: 00fa2023 sw a5,0(s4) + c0042324: 2785 addiw a5,a5,1 + c0042326: 00fa2023 sw a5,0(s4) JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36198 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36206 b->realm = JS_DupContext(ctx); - c004215a: 0544b423 sd s4,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36199 + c004232a: 0544b423 sd s4,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36207 return obj; - c004215e: b12d j c0041d88 + c004232e: b12d j c0041f58 JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35819 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35827 s->ptr += bc_len; - c0042160: 97ce add a5,a5,s3 - c0042162: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35825 + c0042330: 97ce add a5,a5,s3 + c0042332: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35833 b->byte_code_buf = bc_buf; - c0042164: 0334b023 sd s3,32(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35827 + c0042334: 0334b023 sd s3,32(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35835 pos = 0; - c0042168: 4d81 li s11,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35830 + c0042338: 4d81 li s11,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35838 len = short_opcode_info(op).size; - c004216a: 0b300b93 li s7,179 - c004216e: 00025c17 auipc s8,0x25 - c0042172: 9a2c0c13 addi s8,s8,-1630 # c0066b10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35831 + c004233a: 0b300b93 li s7,179 + c004233e: 00025c17 auipc s8,0x25 + c0042342: a32c0c13 addi s8,s8,-1486 # c0066d70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35839 switch(short_opcode_info(op).fmt) { - c0042176: 4c91 li s9,4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35828 + c0042346: 4c91 li s9,4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35836 while (pos < bc_len) { - c0042178: fd6df3e3 bgeu s11,s6,c004213e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35829 + c0042348: fd6df3e3 bgeu s11,s6,c004230e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35837 op = bc_buf[pos]; - c004217c: 01b987b3 add a5,s3,s11 - c0042180: 0007c783 lbu a5,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35830 + c004234c: 01b987b3 add a5,s3,s11 + c0042350: 0007c783 lbu a5,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35838 len = short_opcode_info(op).size; - c0042184: 00fbd363 bge s7,a5,c004218a - c0042188: 27cd addiw a5,a5,19 - c004218a: 078a slli a5,a5,0x2 - c004218c: 97e2 add a5,a5,s8 - c004218e: 0007cd03 lbu s10,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35831 + c0042354: 00fbd363 bge s7,a5,c004235a + c0042358: 27cd addiw a5,a5,19 + c004235a: 078a slli a5,a5,0x2 + c004235c: 97e2 add a5,a5,s8 + c004235e: 0007cd03 lbu s10,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35839 switch(short_opcode_info(op).fmt) { - c0042192: 0037c783 lbu a5,3(a5) - c0042196: 37a5 addiw a5,a5,-23 - c0042198: 02fceb63 bltu s9,a5,c00421ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35837 + c0042362: 0037c783 lbu a5,3(a5) + c0042366: 37a5 addiw a5,a5,-23 + c0042368: 02fceb63 bltu s9,a5,c004239e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35845 idx = get_u32(bc_buf + pos + 1); - c004219c: 001d8913 addi s2,s11,1 - c00421a0: 994e add s2,s2,s3 + c004236c: 001d8913 addi s2,s11,1 + c0042370: 994e add s2,s2,s3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c00421a2: 00194583 lbu a1,1(s2) - c00421a6: 00094603 lbu a2,0(s2) + c0042372: 00194583 lbu a1,1(s2) + c0042376: 00094603 lbu a2,0(s2) JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35838 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35846 if (s->is_rom_data) { - c00421aa: 03644783 lbu a5,54(s0) + c004237a: 03644783 lbu a5,54(s0) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00421ae: 05a2 slli a1,a1,0x8 - c00421b0: 8dd1 or a1,a1,a2 - c00421b2: 00294603 lbu a2,2(s2) - c00421b6: 0642 slli a2,a2,0x10 - c00421b8: 8dd1 or a1,a1,a2 - c00421ba: 00394603 lbu a2,3(s2) - c00421be: 0662 slli a2,a2,0x18 - c00421c0: 8e4d or a2,a2,a1 - c00421c2: 2601 sext.w a2,a2 + c004237e: 05a2 slli a1,a1,0x8 + c0042380: 8dd1 or a1,a1,a2 + c0042382: 00294603 lbu a2,2(s2) + c0042386: 0642 slli a2,a2,0x10 + c0042388: 8dd1 or a1,a1,a2 + c004238a: 00394603 lbu a2,3(s2) + c004238e: 0662 slli a2,a2,0x18 + c0042390: 8e4d or a2,a2,a1 + c0042392: 2601 sext.w a2,a2 JS_ReadFunctionBytecode(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35838 - c00421c4: cb81 beqz a5,c00421d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35840 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35846 + c0042394: cb81 beqz a5,c00423a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35848 JS_DupAtom(s->ctx, (JSAtom)idx); - c00421c6: 6008 ld a0,0(s0) - c00421c8: 85b2 mv a1,a2 - c00421ca: b00c50ef jal ra,c00074ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35856 + c0042396: 6008 ld a0,0(s0) + c0042398: 85b2 mv a1,a2 + c004239a: a1ec50ef jal ra,c00075b8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35864 pos += len; - c00421ce: 01bd0dbb addw s11,s10,s11 - c00421d2: b75d j c0042178 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35842 + c004239e: 01bd0dbb addw s11,s10,s11 + c00423a2: b75d j c0042348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35850 if (bc_idx_to_atom(s, &atom, idx)) { - c00421d4: 1a0c addi a1,sp,304 - c00421d6: 8522 mv a0,s0 - c00421d8: 970d10ef jal ra,c0013348 - c00421dc: c501 beqz a0,c00421e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35844 + c00423a4: 1a0c addi a1,sp,304 + c00423a6: 8522 mv a0,s0 + c00423a8: 88ed10ef jal ra,c0013436 + c00423ac: c501 beqz a0,c00423b4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35852 b->byte_code_len = pos; - c00421de: 03b4a423 sw s11,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35845 + c00423ae: 03b4a423 sw s11,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35853 return -1; - c00421e2: b505 j c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35847 + c00423b2: b505 j c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35855 put_u32(bc_buf + pos + 1, atom); - c00421e4: 13012783 lw a5,304(sp) + c00423b4: 13012783 lw a5,304(sp) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c00421e8: 0087d71b srliw a4,a5,0x8 - c00421ec: 00f90023 sb a5,0(s2) - c00421f0: 00e900a3 sb a4,1(s2) - c00421f4: 0107d71b srliw a4,a5,0x10 - c00421f8: 0187d79b srliw a5,a5,0x18 - c00421fc: 00e90123 sb a4,2(s2) - c0042200: 00f901a3 sb a5,3(s2) + c00423b8: 0087d71b srliw a4,a5,0x8 + c00423bc: 00f90023 sb a5,0(s2) + c00423c0: 00e900a3 sb a4,1(s2) + c00423c4: 0107d71b srliw a4,a5,0x10 + c00423c8: 0187d79b srliw a5,a5,0x18 + c00423cc: 00e90123 sb a4,2(s2) + c00423d0: 00f901a3 sb a5,3(s2) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:181 } - c0042204: b7e9 j c00421ce + c00423d4: b7e9 j c004239e JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36169 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36177 if (bc_get_atom(s, &b->debug.filename)) - c0042206: 06048593 addi a1,s1,96 - c004220a: 8522 mv a0,s0 - c004220c: 9a8d10ef jal ra,c00133b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36101 + c00423d6: 06048593 addi a1,s1,96 + c00423da: 8522 mv a0,s0 + c00423dc: 8c6d10ef jal ra,c00134a2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36109 obj = JS_MKPTR(JS_TAG_FUNCTION_BYTECODE, b); - c0042210: 5979 li s2,-2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36169 + c00423e0: 5979 li s2,-2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36177 if (bc_get_atom(s, &b->debug.filename)) - c0042212: e91d bnez a0,c0042248 + c00423e2: e91d bnez a0,c0042418 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042214: 06448593 addi a1,s1,100 - c0042218: 8522 mv a0,s0 - c004221a: 830d10ef jal ra,c001324a + c00423e4: 06448593 addi a1,s1,100 + c00423e8: 8522 mv a0,s0 + c00423ea: f4fd00ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36171 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36179 if (bc_get_leb128_int(s, &b->debug.line_num)) - c004221e: e50d bnez a0,c0042248 + c00423ee: e50d bnez a0,c0042418 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042220: 06c48593 addi a1,s1,108 - c0042224: 8522 mv a0,s0 - c0042226: 824d10ef jal ra,c001324a + c00423f0: 06c48593 addi a1,s1,108 + c00423f4: 8522 mv a0,s0 + c00423f6: f43d00ef jal ra,c0013338 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36173 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36181 if (bc_get_leb128_int(s, &b->debug.pc2line_len)) - c004222a: ed19 bnez a0,c0042248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36175 + c00423fa: ed19 bnez a0,c0042418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36183 if (b->debug.pc2line_len) { - c004222c: 54ec lw a1,108(s1) - c004222e: dd81 beqz a1,c0042146 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36176 + c00423fc: 54ec lw a1,108(s1) + c00423fe: dd81 beqz a1,c0042316 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36184 b->debug.pc2line_buf = js_mallocz(ctx, b->debug.pc2line_len); - c0042230: 8552 mv a0,s4 - c0042232: aabd30ef jal ra,c0015cdc - c0042236: f8a8 sd a0,112(s1) - c0042238: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36177 + c0042400: 8552 mv a0,s4 + c0042402: aabd30ef jal ra,c0015eac + c0042406: f8a8 sd a0,112(s1) + c0042408: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36185 if (!b->debug.pc2line_buf) - c004223a: c519 beqz a0,c0042248 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36179 + c004240a: c519 beqz a0,c0042418 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36187 if (bc_get_buf(s, b->debug.pc2line_buf, b->debug.pc2line_len)) - c004223c: 54f0 lw a2,108(s1) - c004223e: 8522 mv a0,s0 - c0042240: 8bed10ef jal ra,c00132fe - c0042244: f00501e3 beqz a0,c0042146 + c004240c: 54f0 lw a2,108(s1) + c004240e: 8522 mv a0,s0 + c0042410: fddd00ef jal ra,c00133ec + c0042414: f00501e3 beqz a0,c0042316 JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36434 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36442 JS_FreeValue(ctx, obj); - c0042248: 85a6 mv a1,s1 - c004224a: 864a mv a2,s2 - c004224c: aef1 j c0042628 + c0042418: 85a6 mv a1,s1 + c004241a: 864a mv a2,s2 + c004241c: aef1 j c00427f8 JS_ReadFunctionTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36191 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36199 val = JS_ReadObjectRec(s); - c004224e: 8522 mv a0,s0 - c0042250: a91ff0ef jal ra,c0041ce0 - c0042254: fe2e sd a1,312(sp) - c0042256: fa2a sd a0,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36192 + c004241e: 8522 mv a0,s0 + c0042420: a91ff0ef jal ra,c0041eb0 + c0042424: fe2e sd a1,312(sp) + c0042426: fa2a sd a0,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36200 if (JS_IsException(val)) - c0042258: 2581 sext.w a1,a1 - c004225a: db2584e3 beq a1,s2,c0042002 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36194 + c0042428: 2581 sext.w a1,a1 + c004242a: db2584e3 beq a1,s2,c00421d2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36202 b->cpool[i] = val; - c004225e: 68bc ld a5,80(s1) - c0042260: 004a9713 slli a4,s5,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36189 + c004242e: 68bc ld a5,80(s1) + c0042430: 004a9713 slli a4,s5,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36197 for(i = 0; i < b->cpool_count; i++) { - c0042264: 2a85 addiw s5,s5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36194 + c0042434: 2a85 addiw s5,s5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36202 b->cpool[i] = val; - c0042266: 97ba add a5,a5,a4 - c0042268: e388 sd a0,0(a5) - c004226a: 7772 ld a4,312(sp) - c004226c: e798 sd a4,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36189 + c0042436: 97ba add a5,a5,a4 + c0042438: e388 sd a0,0(a5) + c004243a: 7772 ld a4,312(sp) + c004243c: e798 sd a4,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36197 for(i = 0; i < b->cpool_count; i++) { - c004226e: 4cbc lw a5,88(s1) - c0042270: fcfacfe3 blt s5,a5,c004224e - c0042274: bde9 j c004214e + c004243e: 4cbc lw a5,88(s1) + c0042440: fcfacfe3 blt s5,a5,c004241e + c0042444: bde9 j c004231e JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36595 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36603 if (!s->allow_bytecode) - c0042276: 03544783 lbu a5,53(s0) - c004227a: 7e078663 beqz a5,c0042a66 + c0042446: 03544783 lbu a5,53(s0) + c004244a: 7e078663 beqz a5,c0042c36 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36214 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36222 if (bc_get_atom(s, &module_name)) - c004227e: 1a0c addi a1,sp,304 - c0042280: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36207 + c004244e: 1a0c addi a1,sp,304 + c0042450: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36215 JSContext *ctx = s->ctx; - c0042282: 00043a03 ld s4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36214 + c0042452: 00043a03 ld s4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36222 if (bc_get_atom(s, &module_name)) - c0042286: 92ed10ef jal ra,c00133b4 - c004228a: e131 bnez a0,c00422ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36219 + c0042456: 84cd10ef jal ra,c00134a2 + c004245a: e131 bnez a0,c004249e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36227 m = js_new_module_def(ctx, module_name); - c004228c: 13012583 lw a1,304(sp) - c0042290: 8552 mv a0,s4 - c0042292: e19d30ef jal ra,c00160aa - c0042296: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36220 + c004245c: 13012583 lw a1,304(sp) + c0042460: 8552 mv a0,s4 + c0042462: e19d30ef jal ra,c001627a + c0042466: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36228 if (!m) - c0042298: c91d beqz a0,c00422ce -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36222 + c0042468: c91d beqz a0,c004249e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36230 obj = JS_NewModuleValue(ctx, m); - c004229a: 85aa mv a1,a0 - c004229c: 8552 mv a0,s4 - c004229e: d02c40ef jal ra,c00067a0 - c00422a2: e2aa sd a0,320(sp) - c00422a4: e6ae sd a1,328(sp) + c004246a: 85aa mv a1,a0 + c004246c: 8552 mv a0,s4 + c004246e: c20c40ef jal ra,c000688e + c0042472: e2aa sd a0,320(sp) + c0042474: e6ae sd a1,328(sp) bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c00422a6: 8522 mv a0,s0 - c00422a8: 02048593 addi a1,s1,32 - c00422ac: f9fd00ef jal ra,c001324a - c00422b0: 892a mv s2,a0 + c0042476: 8522 mv a0,s0 + c0042478: 02048593 addi a1,s1,32 + c004247c: ebdd00ef jal ra,c0013338 + c0042480: 892a mv s2,a0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36223 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36231 if (bc_get_leb128_int(s, &m->req_module_entries_count)) - c00422b2: e911 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36225 + c0042482: e911 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36233 if (m->req_module_entries_count != 0) { - c00422b4: 508c lw a1,32(s1) - c00422b6: ed99 bnez a1,c00422d4 + c0042484: 508c lw a1,32(s1) + c0042486: ed99 bnez a1,c00424a4 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c00422b8: 03048593 addi a1,s1,48 - c00422bc: 8522 mv a0,s0 - c00422be: f8dd00ef jal ra,c001324a - c00422c2: 892a mv s2,a0 + c0042488: 03048593 addi a1,s1,48 + c004248c: 8522 mv a0,s0 + c004248e: eabd00ef jal ra,c0013338 + c0042492: 892a mv s2,a0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36237 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36245 if (bc_get_leb128_int(s, &m->export_entries_count)) - c00422c4: cd05 beqz a0,c00422fc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36305 + c0042494: cd05 beqz a0,c00424cc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36313 js_free_module_def(ctx, m); - c00422c6: 85a6 mv a1,s1 - c00422c8: 8552 mv a0,s4 - c00422ca: d5cc60ef jal ra,c0008826 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36307 + c0042496: 85a6 mv a1,s1 + c0042498: 8552 mv a0,s4 + c004249a: c7ac60ef jal ra,c0008914 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36315 return JS_EXCEPTION; - c00422ce: f082 sd zero,96(sp) - c00422d0: 4919 li s2,6 - c00422d2: a041 j c0042352 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36226 + c004249e: f082 sd zero,96(sp) + c00424a0: 4919 li s2,6 + c00424a2: a041 j c0042522 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36234 m->req_module_entries_size = m->req_module_entries_count; - c00422d4: d0cc sw a1,36(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36227 + c00424a4: d0cc sw a1,36(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36235 m->req_module_entries = js_mallocz(ctx, sizeof(m->req_module_entries[0]) * m->req_module_entries_size); - c00422d6: 8552 mv a0,s4 - c00422d8: 0592 slli a1,a1,0x4 - c00422da: a03d30ef jal ra,c0015cdc - c00422de: ec88 sd a0,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36228 + c00424a6: 8552 mv a0,s4 + c00424a8: 0592 slli a1,a1,0x4 + c00424aa: a03d30ef jal ra,c0015eac + c00424ae: ec88 sd a0,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36236 if (!m->req_module_entries) - c00422e0: d17d beqz a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36230 + c00424b0: d17d beqz a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36238 for(i = 0; i < m->req_module_entries_count; i++) { - c00422e2: 509c lw a5,32(s1) - c00422e4: fcf95ae3 bge s2,a5,c00422b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36231 + c00424b2: 509c lw a5,32(s1) + c00424b4: fcf95ae3 bge s2,a5,c0042488 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36239 JSReqModuleEntry *rme = &m->req_module_entries[i]; - c00422e8: 6c8c ld a1,24(s1) - c00422ea: 00491793 slli a5,s2,0x4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36232 + c00424b8: 6c8c ld a1,24(s1) + c00424ba: 00491793 slli a5,s2,0x4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36240 if (bc_get_atom(s, &rme->module_name)) - c00422ee: 8522 mv a0,s0 - c00422f0: 95be add a1,a1,a5 - c00422f2: 8c2d10ef jal ra,c00133b4 - c00422f6: f961 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36230 + c00424be: 8522 mv a0,s0 + c00424c0: 95be add a1,a1,a5 + c00424c2: fe1d00ef jal ra,c00134a2 + c00424c6: f961 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36238 for(i = 0; i < m->req_module_entries_count; i++) { - c00422f8: 2905 addiw s2,s2,1 - c00422fa: b7e5 j c00422e2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36239 + c00424c8: 2905 addiw s2,s2,1 + c00424ca: b7e5 j c00424b2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36247 if (m->export_entries_count != 0) { - c00422fc: 588c lw a1,48(s1) - c00422fe: eda1 bnez a1,c0042356 + c00424cc: 588c lw a1,48(s1) + c00424ce: eda1 bnez a1,c0042526 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042300: 04048593 addi a1,s1,64 - c0042304: 8522 mv a0,s0 - c0042306: f45d00ef jal ra,c001324a - c004230a: 892a mv s2,a0 + c00424d0: 04048593 addi a1,s1,64 + c00424d4: 8522 mv a0,s0 + c00424d6: e63d00ef jal ra,c0013338 + c00424da: 892a mv s2,a0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36263 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36271 if (bc_get_leb128_int(s, &m->star_export_entries_count)) - c004230c: fd4d bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36265 + c00424dc: fd4d bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36273 if (m->star_export_entries_count != 0) { - c004230e: 40ac lw a1,64(s1) - c0042310: e1d5 bnez a1,c00423b4 + c00424de: 40ac lw a1,64(s1) + c00424e0: e1d5 bnez a1,c0042584 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042312: 05048593 addi a1,s1,80 - c0042316: 8522 mv a0,s0 - c0042318: f33d00ef jal ra,c001324a - c004231c: 892a mv s2,a0 + c00424e2: 05048593 addi a1,s1,80 + c00424e6: 8522 mv a0,s0 + c00424e8: e51d00ef jal ra,c0013338 + c00424ec: 892a mv s2,a0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36277 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36285 if (bc_get_leb128_int(s, &m->import_entries_count)) - c004231e: f545 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36279 + c00424ee: f545 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36287 if (m->import_entries_count != 0) { - c0042320: 48bc lw a5,80(s1) - c0042322: efdd bnez a5,c00423e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36295 + c00424f0: 48bc lw a5,80(s1) + c00424f2: efdd bnez a5,c00425b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36303 if (bc_get_u8(s, &v8)) - c0042324: 120c addi a1,sp,288 - c0042326: 8522 mv a0,s0 - c0042328: effd00ef jal ra,c0013226 - c004232c: fd49 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36297 + c00424f4: 120c addi a1,sp,288 + c00424f6: 8522 mv a0,s0 + c00424f8: e1dd00ef jal ra,c0013314 + c00424fc: fd49 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36305 m->has_tla = (v8 != 0); - c004232e: 12014783 lbu a5,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36299 + c00424fe: 12014783 lbu a5,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36307 m->func_obj = JS_ReadObjectRec(s); - c0042332: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36297 + c0042502: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36305 m->has_tla = (v8 != 0); - c0042334: 00f037b3 snez a5,a5 - c0042338: 08f48023 sb a5,128(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36299 + c0042504: 00f037b3 snez a5,a5 + c0042508: 08f48023 sb a5,128(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36307 m->func_obj = JS_ReadObjectRec(s); - c004233c: 9a5ff0ef jal ra,c0041ce0 - c0042340: f8ac sd a1,112(s1) - c0042342: f4a8 sd a0,104(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36300 + c004250c: 9a5ff0ef jal ra,c0041eb0 + c0042510: f8ac sd a1,112(s1) + c0042512: f4a8 sd a0,104(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36308 if (JS_IsException(m->func_obj)) - c0042344: 2581 sext.w a1,a1 - c0042346: 4799 li a5,6 - c0042348: f6f58fe3 beq a1,a5,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36302 + c0042514: 2581 sext.w a1,a1 + c0042516: 4799 li a5,6 + c0042518: f6f58fe3 beq a1,a5,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36310 return obj; - c004234c: 6796 ld a5,320(sp) - c004234e: 6936 ld s2,328(sp) - c0042350: f0be sd a5,96(sp) - c0042352: 7486 ld s1,96(sp) + c004251c: 6796 ld a5,320(sp) + c004251e: 6936 ld s2,328(sp) + c0042520: f0be sd a5,96(sp) + c0042522: 7486 ld s1,96(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36598 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36606 break; - c0042354: bc15 j c0041d88 + c0042524: bc15 j c0041f58 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36240 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36248 m->export_entries_size = m->export_entries_count; - c0042356: d8cc sw a1,52(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36241 + c0042526: d8cc sw a1,52(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36249 m->export_entries = js_mallocz(ctx, sizeof(m->export_entries[0]) * m->export_entries_size); - c0042358: 8552 mv a0,s4 - c004235a: 0596 slli a1,a1,0x5 - c004235c: 981d30ef jal ra,c0015cdc - c0042360: f488 sd a0,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36242 + c0042528: 8552 mv a0,s4 + c004252a: 0596 slli a1,a1,0x5 + c004252c: 981d30ef jal ra,c0015eac + c0042530: f488 sd a0,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36250 if (!m->export_entries) - c0042362: d135 beqz a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36244 + c0042532: d135 beqz a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36252 for(i = 0; i < m->export_entries_count; i++) { - c0042364: 589c lw a5,48(s1) - c0042366: f8f95de3 bge s2,a5,c0042300 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36245 + c0042534: 589c lw a5,48(s1) + c0042536: f8f95de3 bge s2,a5,c00424d0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36253 JSExportEntry *me = &m->export_entries[i]; - c004236a: 749c ld a5,40(s1) - c004236c: 00591993 slli s3,s2,0x5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36246 + c004253a: 749c ld a5,40(s1) + c004253c: 00591993 slli s3,s2,0x5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36254 if (bc_get_u8(s, &v8)) - c0042370: 120c addi a1,sp,288 - c0042372: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36245 + c0042540: 120c addi a1,sp,288 + c0042542: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36253 JSExportEntry *me = &m->export_entries[i]; - c0042374: 99be add s3,s3,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36246 + c0042544: 99be add s3,s3,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36254 if (bc_get_u8(s, &v8)) - c0042376: eb1d00ef jal ra,c0013226 - c004237a: f531 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36248 + c0042546: dcfd00ef jal ra,c0013314 + c004254a: f531 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36256 me->export_type = v8; - c004237c: 12014703 lbu a4,288(sp) + c004254c: 12014703 lbu a4,288(sp) bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042380: 85ce mv a1,s3 - c0042382: 8522 mv a0,s0 + c0042550: 85ce mv a1,s3 + c0042552: 8522 mv a0,s0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36248 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36256 me->export_type = v8; - c0042384: 00e9a823 sw a4,16(s3) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36249 + c0042554: 00e9a823 sw a4,16(s3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36257 if (me->export_type == JS_EXPORT_TYPE_LOCAL) { - c0042388: ef01 bnez a4,c00423a0 + c0042558: ef01 bnez a4,c0042570 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c004238a: ec1d00ef jal ra,c001324a + c004255a: ddfd00ef jal ra,c0013338 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36250 - if (bc_get_leb128_int(s, &me->u.local.var_idx)) - c004238e: fd05 bnez a0,c00422c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36258 + if (bc_get_leb128_int(s, &me->u.local.var_idx)) + c004255e: fd05 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36266 if (bc_get_atom(s, &me->export_name)) - c0042390: 01898593 addi a1,s3,24 - c0042394: 8522 mv a0,s0 - c0042396: 81ed10ef jal ra,c00133b4 - c004239a: f515 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36244 + c0042560: 01898593 addi a1,s3,24 + c0042564: 8522 mv a0,s0 + c0042566: f3dd00ef jal ra,c00134a2 + c004256a: f515 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36252 for(i = 0; i < m->export_entries_count; i++) { - c004239c: 2905 addiw s2,s2,1 - c004239e: b7d9 j c0042364 + c004256c: 2905 addiw s2,s2,1 + c004256e: b7d9 j c0042534 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c00423a0: eabd00ef jal ra,c001324a + c0042570: dc9d00ef jal ra,c0013338 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36253 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36261 if (bc_get_leb128_int(s, &me->u.req_module_idx)) - c00423a4: f20511e3 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36255 + c0042574: f20511e3 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36263 if (bc_get_atom(s, &me->local_name)) - c00423a8: 01498593 addi a1,s3,20 - c00423ac: 8522 mv a0,s0 - c00423ae: 806d10ef jal ra,c00133b4 - c00423b2: bff1 j c004238e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36266 + c0042578: 01498593 addi a1,s3,20 + c004257c: 8522 mv a0,s0 + c004257e: f25d00ef jal ra,c00134a2 + c0042582: bff1 j c004255e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36274 m->star_export_entries_size = m->star_export_entries_count; - c00423b4: c0ec sw a1,68(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36267 + c0042584: c0ec sw a1,68(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36275 m->star_export_entries = js_mallocz(ctx, sizeof(m->star_export_entries[0]) * m->star_export_entries_size); - c00423b6: 8552 mv a0,s4 - c00423b8: 058a slli a1,a1,0x2 - c00423ba: 923d30ef jal ra,c0015cdc - c00423be: fc88 sd a0,56(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36268 + c0042586: 8552 mv a0,s4 + c0042588: 058a slli a1,a1,0x2 + c004258a: 923d30ef jal ra,c0015eac + c004258e: fc88 sd a0,56(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36276 if (!m->star_export_entries) - c00423c0: f00503e3 beqz a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36270 + c0042590: f00503e3 beqz a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36278 for(i = 0; i < m->star_export_entries_count; i++) { - c00423c4: 40bc lw a5,64(s1) - c00423c6: f4f956e3 bge s2,a5,c0042312 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36271 + c0042594: 40bc lw a5,64(s1) + c0042596: f4f956e3 bge s2,a5,c00424e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36279 JSStarExportEntry *se = &m->star_export_entries[i]; - c00423ca: 7c8c ld a1,56(s1) - c00423cc: 00291793 slli a5,s2,0x2 + c004259a: 7c8c ld a1,56(s1) + c004259c: 00291793 slli a5,s2,0x2 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c00423d0: 8522 mv a0,s0 - c00423d2: 95be add a1,a1,a5 - c00423d4: e77d00ef jal ra,c001324a + c00425a0: 8522 mv a0,s0 + c00425a2: 95be add a1,a1,a5 + c00425a4: d95d00ef jal ra,c0013338 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36272 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36280 if (bc_get_leb128_int(s, &se->req_module_idx)) - c00423d8: ee0517e3 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36270 + c00425a8: ee0517e3 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36278 for(i = 0; i < m->star_export_entries_count; i++) { - c00423dc: 2905 addiw s2,s2,1 - c00423de: b7dd j c00423c4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36281 + c00425ac: 2905 addiw s2,s2,1 + c00425ae: b7dd j c0042594 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36289 m->import_entries = js_mallocz(ctx, sizeof(m->import_entries[0]) * m->import_entries_size); - c00423e0: 45b1 li a1,12 - c00423e2: 02b785b3 mul a1,a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36280 + c00425b0: 45b1 li a1,12 + c00425b2: 02b785b3 mul a1,a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36288 m->import_entries_size = m->import_entries_count; - c00423e6: c8fc sw a5,84(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36281 + c00425b6: c8fc sw a5,84(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36289 m->import_entries = js_mallocz(ctx, sizeof(m->import_entries[0]) * m->import_entries_size); - c00423e8: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36285 + c00425b8: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36293 JSImportEntry *mi = &m->import_entries[i]; - c00423ea: 4ab1 li s5,12 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36281 + c00425ba: 4ab1 li s5,12 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36289 m->import_entries = js_mallocz(ctx, sizeof(m->import_entries[0]) * m->import_entries_size); - c00423ec: 8f1d30ef jal ra,c0015cdc - c00423f0: e4a8 sd a0,72(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36282 + c00425bc: 8f1d30ef jal ra,c0015eac + c00425c0: e4a8 sd a0,72(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36290 if (!m->import_entries) - c00423f2: ec050ae3 beqz a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36284 + c00425c2: ec050ae3 beqz a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36292 for(i = 0; i < m->import_entries_count; i++) { - c00423f6: 48bc lw a5,80(s1) - c00423f8: f2f956e3 bge s2,a5,c0042324 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36285 + c00425c6: 48bc lw a5,80(s1) + c00425c8: f2f956e3 bge s2,a5,c00424f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36293 JSImportEntry *mi = &m->import_entries[i]; - c00423fc: 035909b3 mul s3,s2,s5 - c0042400: 64bc ld a5,72(s1) + c00425cc: 035909b3 mul s3,s2,s5 + c00425d0: 64bc ld a5,72(s1) bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042402: 8522 mv a0,s0 + c00425d2: 8522 mv a0,s0 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36285 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36293 JSImportEntry *mi = &m->import_entries[i]; - c0042404: 99be add s3,s3,a5 + c00425d4: 99be add s3,s3,a5 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c0042406: 85ce mv a1,s3 - c0042408: e43d00ef jal ra,c001324a + c00425d6: 85ce mv a1,s3 + c00425d8: d61d00ef jal ra,c0013338 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36286 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36294 if (bc_get_leb128_int(s, &mi->var_idx)) - c004240c: ea051de3 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36288 + c00425dc: ea051de3 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36296 if (bc_get_atom(s, &mi->import_name)) - c0042410: 00498593 addi a1,s3,4 - c0042414: 8522 mv a0,s0 - c0042416: f9fd00ef jal ra,c00133b4 - c004241a: ea0516e3 bnez a0,c00422c6 + c00425e0: 00498593 addi a1,s3,4 + c00425e4: 8522 mv a0,s0 + c00425e6: ebdd00ef jal ra,c00134a2 + c00425ea: ea0516e3 bnez a0,c0042496 bc_get_leb128_int(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35712 return bc_get_leb128(s, (uint32_t *)pval); - c004241e: 00898593 addi a1,s3,8 - c0042422: 8522 mv a0,s0 - c0042424: e27d00ef jal ra,c001324a + c00425ee: 00898593 addi a1,s3,8 + c00425f2: 8522 mv a0,s0 + c00425f4: d45d00ef jal ra,c0013338 JS_ReadModule(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36290 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36298 if (bc_get_leb128_int(s, &mi->req_module_idx)) - c0042428: e8051fe3 bnez a0,c00422c6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36284 + c00425f8: e8051fe3 bnez a0,c0042496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36292 for(i = 0; i < m->import_entries_count; i++) { - c004242c: 2905 addiw s2,s2,1 - c004242e: b7e1 j c00423f6 + c00425fc: 2905 addiw s2,s2,1 + c00425fe: b7e1 j c00425c6 JS_ReadObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36312 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36320 JSContext *ctx = s->ctx; - c0042430: 00043903 ld s2,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36319 + c0042600: 00043903 ld s2,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36327 obj = JS_NewObject(ctx); - c0042434: 854a mv a0,s2 - c0042436: 953d40ef jal ra,c0016d88 - c004243a: 84aa mv s1,a0 - c004243c: fa2a sd a0,304(sp) - c004243e: fe2e sd a1,312(sp) + c0042604: 854a mv a0,s2 + c0042606: 953d40ef jal ra,c0016f58 + c004260a: 84aa mv s1,a0 + c004260c: fa2a sd a0,304(sp) + c004260e: fe2e sd a1,312(sp) BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c0042440: 85aa mv a1,a0 - c0042442: 8522 mv a0,s0 - c0042444: fc8d50ef jal ra,c0017c0c + c0042610: 85aa mv a1,a0 + c0042612: 8522 mv a0,s0 + c0042614: fc8d50ef jal ra,c0017ddc JS_ReadObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36320 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36328 if (BC_add_object_ref(s, obj)) - c0042448: e531 bnez a0,c0042494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36322 + c0042618: e531 bnez a0,c0042664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36330 if (bc_get_leb128(s, &prop_count)) - c004244a: 0a0c addi a1,sp,272 - c004244c: 8522 mv a0,s0 - c004244e: dfdd00ef jal ra,c001324a - c0042452: e129 bnez a0,c0042494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36324 + c004261a: 0a0c addi a1,sp,272 + c004261c: 8522 mv a0,s0 + c004261e: d1bd00ef jal ra,c0013338 + c0042622: e129 bnez a0,c0042664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36332 for(i = 0; i < prop_count; i++) { - c0042454: 4981 li s3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36331 + c0042624: 4981 li s3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36339 if (JS_IsException(val)) { - c0042456: 4a99 li s5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36324 + c0042626: 4a99 li s5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36332 for(i = 0; i < prop_count; i++) { - c0042458: 11012783 lw a5,272(sp) - c004245c: 00f9e663 bltu s3,a5,c0042468 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36340 + c0042628: 11012783 lw a5,272(sp) + c004262c: 00f9e663 bltu s3,a5,c0042638 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36348 return obj; - c0042460: 7972 ld s2,312(sp) - c0042462: f8a6 sd s1,112(sp) - c0042464: 74c6 ld s1,112(sp) + c0042630: 7972 ld s2,312(sp) + c0042632: f8a6 sd s1,112(sp) + c0042634: 74c6 ld s1,112(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36601 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36609 break; - c0042466: b20d j c0041d88 + c0042636: b20d j c0041f58 JS_ReadObjectTag(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36325 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36333 if (bc_get_atom(s, &atom)) - c0042468: 120c addi a1,sp,288 - c004246a: 8522 mv a0,s0 - c004246c: f49d00ef jal ra,c00133b4 - c0042470: e115 bnez a0,c0042494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36330 + c0042638: 120c addi a1,sp,288 + c004263a: 8522 mv a0,s0 + c004263c: e67d00ef jal ra,c00134a2 + c0042640: e115 bnez a0,c0042664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36338 val = JS_ReadObjectRec(s); - c0042472: 8522 mv a0,s0 - c0042474: 86dff0ef jal ra,c0041ce0 - c0042478: e2aa sd a0,320(sp) - c004247a: e6ae sd a1,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36331 + c0042642: 8522 mv a0,s0 + c0042644: 86dff0ef jal ra,c0041eb0 + c0042648: e2aa sd a0,320(sp) + c004264a: e6ae sd a1,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36339 if (JS_IsException(val)) { - c004247c: 0005861b sext.w a2,a1 - c0042480: 12012683 lw a3,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36330 + c004264c: 0005861b sext.w a2,a1 + c0042650: 12012683 lw a3,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36338 val = JS_ReadObjectRec(s); - c0042484: 872a mv a4,a0 - c0042486: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36331 + c0042654: 872a mv a4,a0 + c0042656: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36339 if (JS_IsException(val)) { - c0042488: 01561f63 bne a2,s5,c00424a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36332 + c0042658: 01561f63 bne a2,s5,c0042676 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36340 JS_FreeAtom(ctx, atom); - c004248c: 85b6 mv a1,a3 - c004248e: 854a mv a0,s2 - c0042490: 87cc50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36342 + c004265c: 85b6 mv a1,a3 + c004265e: 854a mv a0,s2 + c0042660: f9bc40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36350 JS_FreeValue(ctx, obj); - c0042494: 7672 ld a2,312(sp) - c0042496: 854a mv a0,s2 - c0042498: 85a6 mv a1,s1 - c004249a: fa26 sd s1,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36343 + c0042664: 7672 ld a2,312(sp) + c0042666: 854a mv a0,s2 + c0042668: 85a6 mv a1,s1 + c004266a: fa26 sd s1,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36351 return JS_EXCEPTION; - c004249c: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36342 + c004266c: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36350 JS_FreeValue(ctx, obj); - c004249e: e9ac50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36343 + c004266e: db8c50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36351 return JS_EXCEPTION; - c00424a2: f882 sd zero,112(sp) - c00424a4: b7c1 j c0042464 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36335 + c0042672: f882 sd zero,112(sp) + c0042674: b7c1 j c0042634 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36343 ret = JS_DefinePropertyValue(ctx, obj, atom, val, JS_PROP_C_W_E); - c00424a6: 7672 ld a2,312(sp) - c00424a8: 85a6 mv a1,s1 - c00424aa: 481d li a6,7 - c00424ac: 854a mv a0,s2 - c00424ae: fa26 sd s1,304(sp) - c00424b0: b07d00ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36336 + c0042676: 7672 ld a2,312(sp) + c0042678: 85a6 mv a1,s1 + c004267a: 481d li a6,7 + c004267c: 854a mv a0,s2 + c004267e: fa26 sd s1,304(sp) + c0042680: a25d00ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36344 JS_FreeAtom(ctx, atom); - c00424b4: 12012583 lw a1,288(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36335 + c0042684: 12012583 lw a1,288(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36343 ret = JS_DefinePropertyValue(ctx, obj, atom, val, JS_PROP_C_W_E); - c00424b8: 8a2a mv s4,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36336 + c0042688: 8a2a mv s4,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36344 JS_FreeAtom(ctx, atom); - c00424ba: 854a mv a0,s2 - c00424bc: 850c50ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36337 + c004268a: 854a mv a0,s2 + c004268c: f6fc40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36345 if (ret < 0) - c00424c0: fc0a4ae3 bltz s4,c0042494 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36324 + c0042690: fc0a4ae3 bltz s4,c0042664 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36332 for(i = 0; i < prop_count; i++) { - c00424c4: 2985 addiw s3,s3,1 - c00424c6: bf49 j c0042458 + c0042694: 2985 addiw s3,s3,1 + c0042696: bf49 j c0042628 JS_ReadArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36356 JSContext *ctx = s->ctx; - c00424c8: 00043983 ld s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36355 + c0042698: 00043983 ld s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36363 obj = JS_NewArray(ctx); - c00424cc: 854e mv a0,s3 - c00424ce: af1d40ef jal ra,c0016fbe - c00424d2: 84aa mv s1,a0 - c00424d4: fa2a sd a0,304(sp) - c00424d6: fe2e sd a1,312(sp) + c004269c: 854e mv a0,s3 + c004269e: af1d40ef jal ra,c001718e + c00426a2: 84aa mv s1,a0 + c00426a4: fa2a sd a0,304(sp) + c00426a6: fe2e sd a1,312(sp) BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c00424d8: 85aa mv a1,a0 - c00424da: 8522 mv a0,s0 - c00424dc: f30d50ef jal ra,c0017c0c + c00426a8: 85aa mv a1,a0 + c00426aa: 8522 mv a0,s0 + c00426ac: f30d50ef jal ra,c0017ddc JS_ReadArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36356 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36364 if (BC_add_object_ref(s, obj)) - c00424e0: e155 bnez a0,c0042584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36359 + c00426b0: e155 bnez a0,c0042754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36367 if (bc_get_leb128(s, &len)) - c00424e2: 120c addi a1,sp,288 - c00424e4: 8522 mv a0,s0 - c00424e6: d65d00ef jal ra,c001324a - c00424ea: ed49 bnez a0,c0042584 - c00424ec: 47b5 li a5,13 - c00424ee: 481d li a6,7 - c00424f0: 00f91363 bne s2,a5,c00424f6 - c00424f4: 4811 li a6,4 - c00424f6: 00080a9b sext.w s5,a6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36361 + c00426b2: 120c addi a1,sp,288 + c00426b4: 8522 mv a0,s0 + c00426b6: c83d00ef jal ra,c0013338 + c00426ba: ed49 bnez a0,c0042754 + c00426bc: 47b5 li a5,13 + c00426be: 481d li a6,7 + c00426c0: 00f91363 bne s2,a5,c00426c6 + c00426c4: 4811 li a6,4 + c00426c6: 00080a9b sext.w s5,a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36369 for(i = 0; i < len; i++) { - c00424fa: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36363 + c00426ca: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36371 if (JS_IsException(val)) - c00424fc: 4b19 li s6,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36361 + c00426cc: 4b19 li s6,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36369 for(i = 0; i < len; i++) { - c00424fe: 12012783 lw a5,288(sp) - c0042502: 02fa6f63 bltu s4,a5,c0042540 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36374 + c00426ce: 12012783 lw a5,288(sp) + c00426d2: 02fa6f63 bltu s4,a5,c0042710 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36382 if (is_template) { - c0042506: 47b5 li a5,13 - c0042508: 02f91763 bne s2,a5,c0042536 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36375 + c00426d6: 47b5 li a5,13 + c00426d8: 02f91763 bne s2,a5,c0042706 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36383 val = JS_ReadObjectRec(s); - c004250c: 8522 mv a0,s0 - c004250e: fd2ff0ef jal ra,c0041ce0 - c0042512: e2aa sd a0,320(sp) - c0042514: e6ae sd a1,328(sp) + c00426dc: 8522 mv a0,s0 + c00426de: fd2ff0ef jal ra,c0041eb0 + c00426e2: e2aa sd a0,320(sp) + c00426e4: e6ae sd a1,328(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0042516: 0005869b sext.w a3,a1 + c00426e6: 0005869b sext.w a3,a1 JS_ReadArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36376 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36384 if (JS_IsException(val)) - c004251a: 4619 li a2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36375 + c00426ea: 4619 li a2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36383 val = JS_ReadObjectRec(s); - c004251c: 872a mv a4,a0 - c004251e: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36376 + c00426ec: 872a mv a4,a0 + c00426ee: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36384 if (JS_IsException(val)) - c0042520: 06c68263 beq a3,a2,c0042584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36378 + c00426f0: 06c68263 beq a3,a2,c0042754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36386 if (!JS_IsUndefined(val)) { - c0042524: 460d li a2,3 - c0042526: 04c69463 bne a3,a2,c004256e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36383 + c00426f4: 460d li a2,3 + c00426f6: 04c69463 bne a3,a2,c004273e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36391 JS_PreventExtensions(ctx, obj); - c004252a: 7672 ld a2,312(sp) - c004252c: 85a6 mv a1,s1 - c004252e: 854e mv a0,s3 - c0042530: fa26 sd s1,304(sp) - c0042532: 944d20ef jal ra,c0014676 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36385 + c00426fa: 7672 ld a2,312(sp) + c00426fc: 85a6 mv a1,s1 + c00426fe: 854e mv a0,s3 + c0042700: fa26 sd s1,304(sp) + c0042702: 862d20ef jal ra,c0014764 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36393 return obj; - c0042536: 7972 ld s2,312(sp) - c0042538: e126 sd s1,128(sp) - c004253a: 648a ld s1,128(sp) + c0042706: 7972 ld s2,312(sp) + c0042708: e126 sd s1,128(sp) + c004270a: 648a ld s1,128(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36605 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36613 break; - c004253c: 84dff06f j c0041d88 + c004270c: 84dff06f j c0041f58 JS_ReadArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36362 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36370 val = JS_ReadObjectRec(s); - c0042540: 8522 mv a0,s0 - c0042542: f9eff0ef jal ra,c0041ce0 - c0042546: e2aa sd a0,320(sp) - c0042548: e6ae sd a1,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36363 + c0042710: 8522 mv a0,s0 + c0042712: f9eff0ef jal ra,c0041eb0 + c0042716: e2aa sd a0,320(sp) + c0042718: e6ae sd a1,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36371 if (JS_IsException(val)) - c004254a: 0005869b sext.w a3,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36362 + c004271a: 0005869b sext.w a3,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36370 val = JS_ReadObjectRec(s); - c004254e: 872a mv a4,a0 - c0042550: 87ae mv a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36363 + c004271e: 872a mv a4,a0 + c0042720: 87ae mv a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36371 if (JS_IsException(val)) - c0042552: 03668963 beq a3,s6,c0042584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36369 + c0042722: 03668963 beq a3,s6,c0042754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36377 ret = JS_DefinePropertyValueUint32(ctx, obj, i, val, - c0042556: 7672 ld a2,312(sp) - c0042558: 8856 mv a6,s5 - c004255a: 86d2 mv a3,s4 - c004255c: 85a6 mv a1,s1 - c004255e: 854e mv a0,s3 - c0042560: fa26 sd s1,304(sp) - c0042562: 972e70ef jal ra,c00296d4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36371 + c0042726: 7672 ld a2,312(sp) + c0042728: 8856 mv a6,s5 + c004272a: 86d2 mv a3,s4 + c004272c: 85a6 mv a1,s1 + c004272e: 854e mv a0,s3 + c0042730: fa26 sd s1,304(sp) + c0042732: 972e70ef jal ra,c00298a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36379 if (ret < 0) - c0042566: 00054f63 bltz a0,c0042584 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36361 + c0042736: 00054f63 bltz a0,c0042754 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36369 for(i = 0; i < len; i++) { - c004256a: 2a05 addiw s4,s4,1 - c004256c: bf49 j c00424fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36379 + c004273a: 2a05 addiw s4,s4,1 + c004273c: bf49 j c00426ce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36387 ret = JS_DefinePropertyValue(ctx, obj, JS_ATOM_raw, val, 0); - c004256e: 7672 ld a2,312(sp) - c0042570: 4801 li a6,0 - c0042572: 07100693 li a3,113 - c0042576: 85a6 mv a1,s1 - c0042578: 854e mv a0,s3 - c004257a: fa26 sd s1,304(sp) - c004257c: a3bd00ef jal ra,c0012fb6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36380 + c004273e: 7672 ld a2,312(sp) + c0042740: 4801 li a6,0 + c0042742: 07100693 li a3,113 + c0042746: 85a6 mv a1,s1 + c0042748: 854e mv a0,s3 + c004274a: fa26 sd s1,304(sp) + c004274c: 959d00ef jal ra,c00130a4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36388 if (ret < 0) - c0042580: fa0555e3 bgez a0,c004252a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36387 + c0042750: fa0555e3 bgez a0,c00426fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36395 JS_FreeValue(ctx, obj); - c0042584: 7672 ld a2,312(sp) - c0042586: 85a6 mv a1,s1 - c0042588: 854e mv a0,s3 - c004258a: fa26 sd s1,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36388 + c0042754: 7672 ld a2,312(sp) + c0042756: 85a6 mv a1,s1 + c0042758: 854e mv a0,s3 + c004275a: fa26 sd s1,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36396 return JS_EXCEPTION; - c004258c: 4919 li s2,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36387 + c004275c: 4919 li s2,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36395 JS_FreeValue(ctx, obj); - c004258e: daac50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36388 + c004275e: cc8c50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36396 return JS_EXCEPTION; - c0042592: e102 sd zero,128(sp) - c0042594: b75d j c004253a + c0042762: e102 sd zero,128(sp) + c0042764: b75d j c004270a JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36399 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36407 if (bc_get_u8(s, &array_tag)) - c0042596: 020c addi a1,sp,256 - c0042598: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36393 + c0042766: 020c addi a1,sp,256 + c0042768: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36401 JSContext *ctx = s->ctx; - c004259a: 00043a03 ld s4,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36399 + c004276a: 00043a03 ld s4,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36407 if (bc_get_u8(s, &array_tag)) - c004259e: c89d00ef jal ra,c0013226 - c00425a2: c501 beqz a0,c00425aa + c004276e: ba7d00ef jal ra,c0013314 + c0042772: c501 beqz a0,c004277a JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36513 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36521 return JS_EXCEPTION; - c00425a4: 4919 li s2,6 - c00425a6: fd0ff06f j c0041d76 + c0042774: 4919 li s2,6 + c0042776: fd0ff06f j c0041f46 JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36401 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36409 if (array_tag >= JS_TYPED_ARRAY_COUNT) - c00425aa: 10014703 lbu a4,256(sp) - c00425ae: 47a9 li a5,10 - c00425b0: 00e7fd63 bgeu a5,a4,c00425ca -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36402 + c004277a: 10014703 lbu a4,256(sp) + c004277e: 47a9 li a5,10 + c0042780: 00e7fd63 bgeu a5,a4,c004279a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36410 return JS_ThrowTypeError(ctx, "invalid typed array"); - c00425b4: 0001e597 auipc a1,0x1e - c00425b8: 7ec58593 addi a1,a1,2028 # c0060da0 - c00425bc: 8552 mv a0,s4 - c00425be: e39d00ef jal ra,c00133f6 - c00425c2: 84aa mv s1,a0 - c00425c4: 892e mv s2,a1 - c00425c6: fc2ff06f j c0041d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36403 + c0042784: 0001f597 auipc a1,0x1f + c0042788: 87c58593 addi a1,a1,-1924 # c0061000 + c004278c: 8552 mv a0,s4 + c004278e: d57d00ef jal ra,c00134e4 + c0042792: 84aa mv s1,a0 + c0042794: 892e mv s2,a1 + c0042796: fc2ff06f j c0041f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36411 if (bc_get_leb128(s, &len)) - c00425ca: 120c addi a1,sp,288 - c00425cc: 8522 mv a0,s0 - c00425ce: c7dd00ef jal ra,c001324a - c00425d2: f969 bnez a0,c00425a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36405 + c004279a: 120c addi a1,sp,288 + c004279c: 8522 mv a0,s0 + c004279e: b9bd00ef jal ra,c0013338 + c00427a2: f969 bnez a0,c0042774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36413 if (bc_get_leb128(s, &offset)) - c00425d4: 0a0c addi a1,sp,272 - c00425d6: 8522 mv a0,s0 - c00425d8: c73d00ef jal ra,c001324a - c00425dc: f561 bnez a0,c00425a4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36410 + c00427a4: 0a0c addi a1,sp,272 + c00427a6: 8522 mv a0,s0 + c00427a8: b91d00ef jal ra,c0013338 + c00427ac: f561 bnez a0,c0042774 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36418 if (BC_add_object_ref1(s, NULL)) - c00425de: 4581 li a1,0 - c00425e0: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36409 + c00427ae: 4581 li a1,0 + c00427b0: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36417 idx = s->objects_count; - c00425e2: 04042a83 lw s5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36410 + c00427b2: 04042a83 lw s5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36418 if (BC_add_object_ref1(s, NULL)) - c00425e6: e26d50ef jal ra,c0017c0c - c00425ea: 10051363 bnez a0,c00426f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36412 + c00427b6: e26d50ef jal ra,c0017ddc + c00427ba: 10051363 bnez a0,c00428c0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 array_buffer = JS_ReadObjectRec(s); - c00425ee: 8522 mv a0,s0 - c00425f0: ef0ff0ef jal ra,c0041ce0 - c00425f4: f12a sd a0,160(sp) - c00425f6: f52e sd a1,168(sp) + c00427be: 8522 mv a0,s0 + c00427c0: ef0ff0ef jal ra,c0041eb0 + c00427c4: f12a sd a0,160(sp) + c00427c6: f52e sd a1,168(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c00425f8: 0005879b sext.w a5,a1 + c00427c8: 0005879b sext.w a5,a1 JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36413 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 if (JS_IsException(array_buffer)) - c00425fc: 4719 li a4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36412 + c00427cc: 4719 li a4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 array_buffer = JS_ReadObjectRec(s); - c00425fe: 89aa mv s3,a0 - c0042600: 8b2e mv s6,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36413 + c00427ce: 89aa mv s3,a0 + c00427d0: 8b2e mv s6,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 if (JS_IsException(array_buffer)) - c0042602: fae781e3 beq a5,a4,c00425a4 + c00427d2: fae781e3 beq a5,a4,c0042774 js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52910 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0042606: 577d li a4,-1 - c0042608: 00e79a63 bne a5,a4,c004261c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52905 + c00427d6: 577d li a4,-1 + c00427d8: 00e79a63 bne a5,a4,c00427ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52913 if (p->class_id != JS_CLASS_ARRAY_BUFFER && - c004260c: 00655783 lhu a5,6(a0) - c0042610: 4705 li a4,1 - c0042612: 37b5 addiw a5,a5,-19 - c0042614: 17c2 slli a5,a5,0x30 - c0042616: 93c1 srli a5,a5,0x30 - c0042618: 00f77c63 bgeu a4,a5,c0042630 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52908 + c00427dc: 00655783 lhu a5,6(a0) + c00427e0: 4705 li a4,1 + c00427e2: 37b5 addiw a5,a5,-19 + c00427e4: 17c2 slli a5,a5,0x30 + c00427e6: 93c1 srli a5,a5,0x30 + c00427e8: 00f77c63 bgeu a4,a5,c0042800 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52916 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_ARRAY_BUFFER); - c004261c: 45cd li a1,19 - c004261e: 8552 mv a0,s4 - c0042620: f31d00ef jal ra,c0013550 + c00427ec: 45cd li a1,19 + c00427ee: 8552 mv a0,s4 + c00427f0: e4fd00ef jal ra,c001363e JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36416 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36424 JS_FreeValue(ctx, array_buffer); - c0042624: 758a ld a1,160(sp) - c0042626: 762a ld a2,168(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36434 + c00427f4: 758a ld a1,160(sp) + c00427f6: 762a ld a2,168(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36442 JS_FreeValue(ctx, obj); - c0042628: 8552 mv a0,s4 + c00427f8: 8552 mv a0,s4 JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36512 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36520 JS_FreeValue(ctx, obj); - c004262a: d0ec50ef jal ra,c0007b38 - c004262e: bf9d j c00425a4 + c00427fa: c2cc50ef jal ra,c0007c26 + c00427fe: bf9d j c0042774 JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36415 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36423 if (!js_get_array_buffer(ctx, array_buffer)) { - c0042630: 791c ld a5,48(a0) - c0042632: dbed beqz a5,c0042624 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 + c0042800: 791c ld a5,48(a0) + c0042802: dbed beqz a5,c00427f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36428 args[1] = JS_NewInt64(ctx, offset); - c0042634: 11012703 lw a4,272(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36419 + c0042804: 11012703 lw a4,272(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36427 args[0] = array_buffer; - c0042638: e2aa sd a0,320(sp) - c004263a: e6ae sd a1,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 + c0042808: e2aa sd a0,320(sp) + c004280a: e6ae sd a1,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36428 args[1] = JS_NewInt64(ctx, offset); - c004263c: 02071693 slli a3,a4,0x20 - c0042640: 9281 srli a3,a3,0x20 + c004280c: 02071693 slli a3,a4,0x20 + c0042810: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0042642: 0007079b sext.w a5,a4 - c0042646: 08e69563 bne a3,a4,c00426d0 + c0042812: 0007079b sext.w a5,a4 + c0042816: 08e69563 bne a3,a4,c00428a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004264a: db02 sw zero,180(sp) - c004264c: d93e sw a5,176(sp) - c004264e: 774a ld a4,176(sp) - c0042650: fa3a sd a4,304(sp) - c0042652: 4701 li a4,0 + c004281a: db02 sw zero,180(sp) + c004281c: d93e sw a5,176(sp) + c004281e: 774a ld a4,176(sp) + c0042820: fa3a sd a4,304(sp) + c0042822: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0042654: 12f12823 sw a5,304(sp) + c0042824: 12f12823 sw a5,304(sp) JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 - c0042658: eeba sd a4,344(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36428 + c0042828: eeba sd a4,344(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36429 args[2] = JS_NewInt64(ctx, len); - c004265a: 12012703 lw a4,288(sp) + c004282a: 12012703 lw a4,288(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 - c004265e: 37d2 fld fa5,304(sp) + c004282e: 37d2 fld fa5,304(sp) JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 - c0042660: 02071693 slli a3,a4,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36420 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36429 + c0042830: 02071693 slli a3,a4,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36428 args[1] = JS_NewInt64(ctx, offset); - c0042664: aabe fsd fa5,336(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 + c0042834: aabe fsd fa5,336(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36429 args[2] = JS_NewInt64(ctx, len); - c0042666: 9281 srli a3,a3,0x20 + c0042836: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0042668: 0007079b sext.w a5,a4 - c004266c: 06e69a63 bne a3,a4,c00426e0 + c0042838: 0007079b sext.w a5,a4 + c004283c: 06e69a63 bne a3,a4,c00428b0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0042670: c382 sw zero,196(sp) - c0042672: c1be sw a5,192(sp) - c0042674: 670e ld a4,192(sp) - c0042676: fa3a sd a4,304(sp) - c0042678: 4701 li a4,0 + c0042840: c382 sw zero,196(sp) + c0042842: c1be sw a5,192(sp) + c0042844: 670e ld a4,192(sp) + c0042846: fa3a sd a4,304(sp) + c0042848: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004267a: 12f12823 sw a5,304(sp) + c004284a: 12f12823 sw a5,304(sp) JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36422 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36430 obj = js_typed_array_constructor(ctx, JS_UNDEFINED, - c004267e: 478d li a5,3 - c0042680: fe3e sd a5,312(sp) - c0042682: 10014783 lbu a5,256(sp) + c004284e: 478d li a5,3 + c0042850: fe3e sd a5,312(sp) + c0042852: 10014783 lbu a5,256(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 - c0042686: 37d2 fld fa5,304(sp) + c0042856: 37d2 fld fa5,304(sp) JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36429 args[2] = JS_NewInt64(ctx, len); - c0042688: f6ba sd a4,360(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36422 + c0042858: f6ba sd a4,360(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36430 obj = js_typed_array_constructor(ctx, JS_UNDEFINED, - c004268a: 27d5 addiw a5,a5,21 - c004268c: 0298 addi a4,sp,320 - c004268e: 468d li a3,3 - c0042690: 4581 li a1,0 - c0042692: 460d li a2,3 - c0042694: 8552 mv a0,s4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36421 + c004285a: 27d5 addiw a5,a5,21 + c004285c: 0298 addi a4,sp,320 + c004285e: 468d li a3,3 + c0042860: 4581 li a1,0 + c0042862: 460d li a2,3 + c0042864: 8552 mv a0,s4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36429 args[2] = JS_NewInt64(ctx, len); - c0042696: b2be fsd fa5,352(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36422 + c0042866: b2be fsd fa5,352(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36430 obj = js_typed_array_constructor(ctx, JS_UNDEFINED, - c0042698: fa02 sd zero,304(sp) - c004269a: a37f80ef jal ra,c003b0d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36425 + c0042868: fa02 sd zero,304(sp) + c004286a: a37f80ef jal ra,c003b2a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36433 if (JS_IsException(obj)) - c004269e: 0005871b sext.w a4,a1 - c00426a2: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36422 + c004286e: 0005871b sext.w a4,a1 + c0042872: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36430 obj = js_typed_array_constructor(ctx, JS_UNDEFINED, - c00426a4: 84aa mv s1,a0 - c00426a6: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36425 + c0042874: 84aa mv s1,a0 + c0042876: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36433 if (JS_IsException(obj)) - c00426a8: 04f70863 beq a4,a5,c00426f8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36427 + c0042878: 04f70863 beq a4,a5,c00428c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36435 if (s->allow_reference) { - c00426ac: 03744783 lbu a5,55(s0) - c00426b0: cb89 beqz a5,c00426c2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36428 + c004287c: 03744783 lbu a5,55(s0) + c0042880: cb89 beqz a5,c0042892 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36436 s->objects[idx] = JS_VALUE_GET_OBJ(obj); - c00426b2: 7c1c ld a5,56(s0) - c00426b4: 020a9713 slli a4,s5,0x20 - c00426b8: 01d75a93 srli s5,a4,0x1d - c00426bc: 9abe add s5,s5,a5 - c00426be: 00aab023 sd a0,0(s5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36430 + c0042882: 7c1c ld a5,56(s0) + c0042884: 020a9713 slli a4,s5,0x20 + c0042888: 01d75a93 srli s5,a4,0x1d + c004288c: 9abe add s5,s5,a5 + c004288e: 00aab023 sd a0,0(s5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36438 JS_FreeValue(ctx, array_buffer); - c00426c2: 758a ld a1,160(sp) - c00426c4: 762a ld a2,168(sp) - c00426c6: 8552 mv a0,s4 + c0042892: 758a ld a1,160(sp) + c0042894: 762a ld a2,168(sp) + c0042896: 8552 mv a0,s4 JS_ReadObjectValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36529 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36537 JS_FreeValue(ctx, val); - c00426c8: c70c50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36530 + c0042898: b8ec50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36538 return obj; - c00426cc: ebcff06f j c0041d88 + c004289c: ebcff06f j c0041f58 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c00426d0: d226f7d3 fcvt.d.l fa5,a3 - c00426d4: 471d li a4,7 - c00426d6: e20787d3 fmv.x.d a5,fa5 + c00428a0: d226f7d3 fcvt.d.l fa5,a3 + c00428a4: 471d li a4,7 + c00428a6: e20787d3 fmv.x.d a5,fa5 JS_ReadObjectRec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00426da: ba3e fsd fa5,304(sp) - c00426dc: 2781 sext.w a5,a5 - c00426de: bf9d j c0042654 + c00428aa: ba3e fsd fa5,304(sp) + c00428ac: 2781 sext.w a5,a5 + c00428ae: bf9d j c0042824 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c00426e0: d226f7d3 fcvt.d.l fa5,a3 - c00426e4: 471d li a4,7 - c00426e6: e20787d3 fmv.x.d a5,fa5 + c00428b0: d226f7d3 fcvt.d.l fa5,a3 + c00428b4: 471d li a4,7 + c00428b6: e20787d3 fmv.x.d a5,fa5 JS_ReadObjectRec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00426ea: ba3e fsd fa5,304(sp) - c00426ec: 2781 sext.w a5,a5 - c00426ee: b771 j c004267a + c00428ba: ba3e fsd fa5,304(sp) + c00428bc: 2781 sext.w a5,a5 + c00428be: b771 j c004284a JS_ReadTypedArray(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36394 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36402 JSValue obj = JS_UNDEFINED, array_buffer = JS_UNDEFINED; - c00426f0: 4981 li s3,0 - c00426f2: 4b0d li s6,3 - c00426f4: 490d li s2,3 - c00426f6: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36433 + c00428c0: 4981 li s3,0 + c00428c2: 4b0d li s6,3 + c00428c4: 490d li s2,3 + c00428c6: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36441 JS_FreeValue(ctx, array_buffer); - c00426f8: 85ce mv a1,s3 - c00426fa: 865a mv a2,s6 - c00426fc: 8552 mv a0,s4 - c00426fe: c3ac50ef jal ra,c0007b38 - c0042702: b699 j c0042248 + c00428c8: 85ce mv a1,s3 + c00428ca: 865a mv a2,s6 + c00428cc: 8552 mv a0,s4 + c00428ce: b58c50ef jal ra,c0007c26 + c00428d2: b699 j c0042418 JS_ReadArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36444 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36452 if (bc_get_leb128(s, &byte_length)) - c0042704: 028c addi a1,sp,320 - c0042706: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36440 + c00428d4: 028c addi a1,sp,320 + c00428d6: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36448 JSContext *ctx = s->ctx; - c0042708: 00043983 ld s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36444 + c00428d8: 00043983 ld s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36452 if (bc_get_leb128(s, &byte_length)) - c004270c: b3fd00ef jal ra,c001324a - c0042710: c501 beqz a0,c0042718 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36459 + c00428dc: a5dd00ef jal ra,c0013338 + c00428e0: c501 beqz a0,c00428e8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36467 return JS_EXCEPTION; - c0042712: f982 sd zero,240(sp) - c0042714: 4919 li s2,6 - c0042716: a099 j c004275c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36446 + c00428e2: f982 sd zero,240(sp) + c00428e4: 4919 li s2,6 + c00428e6: a099 j c004292c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36454 if (unlikely(s->buf_end - s->ptr < byte_length)) { - c0042718: 680c ld a1,16(s0) - c004271a: 6c1c ld a5,24(s0) - c004271c: 14016603 lwu a2,320(sp) - c0042720: 8f8d sub a5,a5,a1 - c0042722: 00c7d663 bge a5,a2,c004272e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36447 + c00428e8: 680c ld a1,16(s0) + c00428ea: 6c1c ld a5,24(s0) + c00428ec: 14016603 lwu a2,320(sp) + c00428f0: 8f8d sub a5,a5,a1 + c00428f2: 00c7d663 bge a5,a2,c00428fe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36455 bc_read_error_end(s); - c0042726: 8522 mv a0,s0 - c0042728: ad7d00ef jal ra,c00131fe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36448 + c00428f6: 8522 mv a0,s0 + c00428f8: 9f5d00ef jal ra,c00132ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36456 return JS_EXCEPTION; - c004272c: b7dd j c0042712 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36450 + c00428fc: b7dd j c00428e2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36458 obj = JS_NewArrayBufferCopy(ctx, s->ptr, byte_length); - c004272e: 854e mv a0,s3 - c0042730: d8aff0ef jal ra,c0041cba - c0042734: f1aa sd a0,224(sp) - c0042736: f5ae sd a1,232(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36451 + c00428fe: 854e mv a0,s3 + c0042900: d8aff0ef jal ra,c0041e8a + c0042904: f1aa sd a0,224(sp) + c0042906: f5ae sd a1,232(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36459 if (JS_IsException(obj)) - c0042738: 0005871b sext.w a4,a1 - c004273c: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36450 + c0042908: 0005871b sext.w a4,a1 + c004290c: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36458 obj = JS_NewArrayBufferCopy(ctx, s->ptr, byte_length); - c004273e: 84aa mv s1,a0 - c0042740: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36451 + c004290e: 84aa mv s1,a0 + c0042910: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36459 if (JS_IsException(obj)) - c0042742: 02f70063 beq a4,a5,c0042762 + c0042912: 02f70063 beq a4,a5,c0042932 BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c0042746: 85aa mv a1,a0 - c0042748: 8522 mv a0,s0 - c004274a: cc2d50ef jal ra,c0017c0c + c0042916: 85aa mv a1,a0 + c0042918: 8522 mv a0,s0 + c004291a: cc2d50ef jal ra,c0017ddc JS_ReadArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36453 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36461 if (BC_add_object_ref(s, obj)) - c004274e: e911 bnez a0,c0042762 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36455 + c004291e: e911 bnez a0,c0042932 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36463 s->ptr += byte_length; - c0042750: 681c ld a5,16(s0) - c0042752: 14016703 lwu a4,320(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36456 + c0042920: 681c ld a5,16(s0) + c0042922: 14016703 lwu a4,320(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36464 return obj; - c0042756: f9a6 sd s1,240(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36455 + c0042926: f9a6 sd s1,240(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36463 s->ptr += byte_length; - c0042758: 97ba add a5,a5,a4 - c004275a: e81c sd a5,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36456 + c0042928: 97ba add a5,a5,a4 + c004292a: e81c sd a5,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36464 return obj; - c004275c: 74ce ld s1,240(sp) + c004292c: 74ce ld s1,240(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36611 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36619 break; - c004275e: e2aff06f j c0041d88 + c004292e: e2aff06f j c0041f58 JS_ReadArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36458 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36466 JS_FreeValue(ctx, obj); - c0042762: 758e ld a1,224(sp) - c0042764: 762e ld a2,232(sp) - c0042766: 854e mv a0,s3 - c0042768: bd0c50ef jal ra,c0007b38 - c004276c: b75d j c0042712 + c0042932: 758e ld a1,224(sp) + c0042934: 762e ld a2,232(sp) + c0042936: 854e mv a0,s3 + c0042938: aeec50ef jal ra,c0007c26 + c004293c: b75d j c00428e2 JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36613 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36621 if (!s->allow_sab || !ctx->rt->sab_funcs.sab_dup) - c004276e: 03444783 lbu a5,52(s0) - c0042772: 2e078a63 beqz a5,c0042a66 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36613 (discriminator 1) - c0042776: 6c9c ld a5,24(s1) - c0042778: 1687b783 ld a5,360(a5) - c004277c: 2e078563 beqz a5,c0042a66 + c004293e: 03444783 lbu a5,52(s0) + c0042942: 2e078a63 beqz a5,c0042c36 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36621 (discriminator 1) + c0042946: 6c9c ld a5,24(s1) + c0042948: 1687b783 ld a5,360(a5) + c004294c: 2e078563 beqz a5,c0042c36 JS_ReadSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36470 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36478 if (bc_get_leb128(s, &byte_length)) - c0042780: 120c addi a1,sp,288 - c0042782: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36464 + c0042950: 120c addi a1,sp,288 + c0042952: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36472 JSContext *ctx = s->ctx; - c0042784: 00043983 ld s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36470 + c0042954: 00043983 ld s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36478 if (bc_get_leb128(s, &byte_length)) - c0042788: ac3d00ef jal ra,c001324a - c004278c: c501 beqz a0,c0042794 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36487 + c0042958: 9e1d00ef jal ra,c0013338 + c004295c: c501 beqz a0,c0042964 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36495 return JS_EXCEPTION; - c004278e: ea02 sd zero,272(sp) - c0042790: 4919 li s2,6 - c0042792: a0a1 j c00427da -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36472 + c004295e: ea02 sd zero,272(sp) + c0042960: 4919 li s2,6 + c0042962: a0a1 j c00429aa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36480 if (bc_get_u64(s, &u64)) - c0042794: 1a0c addi a1,sp,304 - c0042796: 8522 mv a0,s0 - c0042798: b0bd00ef jal ra,c00132a2 - c004279c: f96d bnez a0,c004278e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36476 + c0042964: 1a0c addi a1,sp,304 + c0042966: 8522 mv a0,s0 + c0042968: a29d00ef jal ra,c0013390 + c004296c: f96d bnez a0,c004295e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36484 obj = js_array_buffer_constructor3(ctx, JS_UNDEFINED, byte_length, - c004279e: 478d li a5,3 - c00427a0: e6be sd a5,328(sp) - c00427a2: 12016683 lwu a3,288(sp) - c00427a6: 77d2 ld a5,304(sp) - c00427a8: 4751 li a4,20 - c00427aa: e002 sd zero,0(sp) - c00427ac: 4881 li a7,0 - c00427ae: 4801 li a6,0 - c00427b0: 4581 li a1,0 - c00427b2: 460d li a2,3 - c00427b4: 854e mv a0,s3 - c00427b6: e282 sd zero,320(sp) - c00427b8: ae4d40ef jal ra,c0016a9c - c00427bc: e22a sd a0,256(sp) - c00427be: e62e sd a1,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36480 + c004296e: 478d li a5,3 + c0042970: e6be sd a5,328(sp) + c0042972: 12016683 lwu a3,288(sp) + c0042976: 77d2 ld a5,304(sp) + c0042978: 4751 li a4,20 + c004297a: e002 sd zero,0(sp) + c004297c: 4881 li a7,0 + c004297e: 4801 li a6,0 + c0042980: 4581 li a1,0 + c0042982: 460d li a2,3 + c0042984: 854e mv a0,s3 + c0042986: e282 sd zero,320(sp) + c0042988: ae4d40ef jal ra,c0016c6c + c004298c: e22a sd a0,256(sp) + c004298e: e62e sd a1,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36488 if (JS_IsException(obj)) - c00427c0: 0005871b sext.w a4,a1 - c00427c4: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36476 + c0042990: 0005871b sext.w a4,a1 + c0042994: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36484 obj = js_array_buffer_constructor3(ctx, JS_UNDEFINED, byte_length, - c00427c6: 84aa mv s1,a0 - c00427c8: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36480 + c0042996: 84aa mv s1,a0 + c0042998: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36488 if (JS_IsException(obj)) - c00427ca: 00f70b63 beq a4,a5,c00427e0 + c004299a: 00f70b63 beq a4,a5,c00429b0 BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c00427ce: 85aa mv a1,a0 - c00427d0: 8522 mv a0,s0 - c00427d2: c3ad50ef jal ra,c0017c0c + c004299e: 85aa mv a1,a0 + c00429a0: 8522 mv a0,s0 + c00429a2: c3ad50ef jal ra,c0017ddc JS_ReadSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36482 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36490 if (BC_add_object_ref(s, obj)) - c00427d6: e509 bnez a0,c00427e0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36484 + c00429a6: e509 bnez a0,c00429b0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36492 return obj; - c00427d8: ea26 sd s1,272(sp) - c00427da: 64d2 ld s1,272(sp) + c00429a8: ea26 sd s1,272(sp) + c00429aa: 64d2 ld s1,272(sp) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36616 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36624 break; - c00427dc: dacff06f j c0041d88 + c00429ac: dacff06f j c0041f58 JS_ReadSharedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36486 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36494 JS_FreeValue(ctx, obj); - c00427e0: 6592 ld a1,256(sp) - c00427e2: 6632 ld a2,264(sp) - c00427e4: 854e mv a0,s3 - c00427e6: b52c50ef jal ra,c0007b38 - c00427ea: b755 j c004278e + c00429b0: 6592 ld a1,256(sp) + c00429b2: 6632 ld a2,264(sp) + c00429b4: 854e mv a0,s3 + c00429b6: a70c50ef jal ra,c0007c26 + c00429ba: b755 j c004295e JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36495 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36503 val = JS_ReadObjectRec(s); - c00427ec: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36492 + c00429bc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36500 JSContext *ctx = s->ctx; - c00427ee: 00043983 ld s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36495 + c00429be: 00043983 ld s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36503 val = JS_ReadObjectRec(s); - c00427f2: ceeff0ef jal ra,c0041ce0 - c00427f6: e6ae sd a1,328(sp) - c00427f8: e2aa sd a0,320(sp) + c00429c2: ceeff0ef jal ra,c0041eb0 + c00429c6: e6ae sd a1,328(sp) + c00429c8: e2aa sd a0,320(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c00427fa: 2581 sext.w a1,a1 + c00429ca: 2581 sext.w a1,a1 JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36496 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36504 if (JS_IsException(val)) - c00427fc: 4799 li a5,6 - c00427fe: 00f58d63 beq a1,a5,c0042818 + c00429cc: 4799 li a5,6 + c00429ce: 00f58d63 beq a1,a5,c00429e8 JS_IsNumber(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:572 return tag == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag); - c0042802: c985 beqz a1,c0042832 - c0042804: 479d li a5,7 - c0042806: 02f58663 beq a1,a5,c0042832 + c00429d2: c985 beqz a1,c0042a02 + c00429d4: 479d li a5,7 + c00429d6: 02f58663 beq a1,a5,c0042a02 JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36499 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36507 JS_ThrowTypeError(ctx, "Number tag expected for date"); - c004280a: 0001e597 auipc a1,0x1e - c004280e: 5ae58593 addi a1,a1,1454 # c0060db8 - c0042812: 854e mv a0,s3 - c0042814: be3d00ef jal ra,c00133f6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36493 + c00429da: 0001e597 auipc a1,0x1e + c00429de: 63e58593 addi a1,a1,1598 # c0061018 + c00429e2: 854e mv a0,s3 + c00429e4: b01d00ef jal ra,c00134e4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36501 JSValue val, obj = JS_UNDEFINED; - c0042818: 490d li s2,3 - c004281a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36511 + c00429e8: 490d li s2,3 + c00429ea: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36519 JS_FreeValue(ctx, val); - c004281c: 6596 ld a1,320(sp) - c004281e: 6636 ld a2,328(sp) - c0042820: 854e mv a0,s3 - c0042822: b16c50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36512 + c00429ec: 6596 ld a1,320(sp) + c00429ee: 6636 ld a2,328(sp) + c00429f0: 854e mv a0,s3 + c00429f2: a34c50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36520 JS_FreeValue(ctx, obj); - c0042826: f226 sd s1,288(sp) - c0042828: f64a sd s2,296(sp) - c004282a: 85a6 mv a1,s1 - c004282c: 864a mv a2,s2 - c004282e: 854e mv a0,s3 - c0042830: bbed j c004262a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36502 + c00429f6: f226 sd s1,288(sp) + c00429f8: f64a sd s2,296(sp) + c00429fa: 85a6 mv a1,s1 + c00429fc: 864a mv a2,s2 + c00429fe: 854e mv a0,s3 + c0042a00: bbed j c00427fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36510 obj = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_DATE], - c0042832: 0409b783 ld a5,64(s3) - c0042836: 46a9 li a3,10 - c0042838: 854e mv a0,s3 - c004283a: 73cc ld a1,160(a5) - c004283c: 77d0 ld a2,168(a5) - c004283e: f4bd30ef jal ra,c0016788 - c0042842: f22a sd a0,288(sp) - c0042844: f62e sd a1,296(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36504 + c0042a02: 0409b783 ld a5,64(s3) + c0042a06: 46a9 li a3,10 + c0042a08: 854e mv a0,s3 + c0042a0a: 73cc ld a1,160(a5) + c0042a0c: 77d0 ld a2,168(a5) + c0042a0e: f4bd30ef jal ra,c0016958 + c0042a12: f22a sd a0,288(sp) + c0042a14: f62e sd a1,296(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36512 if (JS_IsException(obj)) - c0042846: 0005871b sext.w a4,a1 - c004284a: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36502 + c0042a16: 0005871b sext.w a4,a1 + c0042a1a: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36510 obj = JS_NewObjectProtoClass(ctx, ctx->class_proto[JS_CLASS_DATE], - c004284c: 84aa mv s1,a0 - c004284e: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36504 + c0042a1c: 84aa mv s1,a0 + c0042a1e: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36512 if (JS_IsException(obj)) - c0042850: fcf706e3 beq a4,a5,c004281c + c0042a20: fcf706e3 beq a4,a5,c00429ec BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c0042854: 85aa mv a1,a0 - c0042856: 8522 mv a0,s0 - c0042858: bb4d50ef jal ra,c0017c0c + c0042a24: 85aa mv a1,a0 + c0042a26: 8522 mv a0,s0 + c0042a28: bb4d50ef jal ra,c0017ddc JS_ReadDate(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36506 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36514 if (BC_add_object_ref(s, obj)) - c004285c: f161 bnez a0,c004281c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36508 + c0042a2c: f161 bnez a0,c00429ec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36516 JS_SetObjectData(ctx, obj, val); - c004285e: 6696 ld a3,320(sp) - c0042860: 6736 ld a4,328(sp) - c0042862: 7592 ld a1,288(sp) - c0042864: 7632 ld a2,296(sp) - c0042866: 854e mv a0,s3 - c0042868: fc7d10ef jal ra,c001482e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36509 + c0042a2e: 6696 ld a3,320(sp) + c0042a30: 6736 ld a4,328(sp) + c0042a32: 7592 ld a1,288(sp) + c0042a34: 7632 ld a2,296(sp) + c0042a36: 854e mv a0,s3 + c0042a38: ee5d10ef jal ra,c001491c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36517 return obj; - c004286c: d1cff06f j c0041d88 + c0042a3c: d1cff06f j c0041f58 JS_ReadObjectValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36521 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36529 val = JS_ReadObjectRec(s); - c0042870: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36518 + c0042a40: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36526 JSContext *ctx = s->ctx; - c0042872: 00043983 ld s3,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36521 + c0042a42: 00043983 ld s3,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36529 val = JS_ReadObjectRec(s); - c0042876: c6aff0ef jal ra,c0041ce0 - c004287a: e2aa sd a0,320(sp) - c004287c: e6ae sd a1,328(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36522 + c0042a46: c6aff0ef jal ra,c0041eb0 + c0042a4a: e2aa sd a0,320(sp) + c0042a4c: e6ae sd a1,328(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36530 if (JS_IsException(val)) - c004287e: 0005879b sext.w a5,a1 - c0042882: 4a19 li s4,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36521 + c0042a4e: 0005879b sext.w a5,a1 + c0042a52: 4a19 li s4,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36529 val = JS_ReadObjectRec(s); - c0042884: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36522 + c0042a54: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36530 if (JS_IsException(val)) - c0042886: 03478763 beq a5,s4,c00428b4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36524 + c0042a56: 03478763 beq a5,s4,c0042a84 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36532 obj = JS_ToObject(ctx, val); - c004288a: 85aa mv a1,a0 - c004288c: 854e mv a0,s3 - c004288e: d5fe50ef jal ra,c00285ec - c0042892: fa2a sd a0,304(sp) - c0042894: fe2e sd a1,312(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36525 + c0042a5a: 85aa mv a1,a0 + c0042a5c: 854e mv a0,s3 + c0042a5e: d5fe50ef jal ra,c00287bc + c0042a62: fa2a sd a0,304(sp) + c0042a64: fe2e sd a1,312(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36533 if (JS_IsException(obj)) - c0042896: 0005879b sext.w a5,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36524 + c0042a66: 0005879b sext.w a5,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36532 obj = JS_ToObject(ctx, val); - c004289a: 84aa mv s1,a0 - c004289c: 892e mv s2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36525 + c0042a6a: 84aa mv s1,a0 + c0042a6c: 892e mv s2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36533 if (JS_IsException(obj)) - c004289e: 01478d63 beq a5,s4,c00428b8 + c0042a6e: 01478d63 beq a5,s4,c0042a88 BC_add_object_ref(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36011 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36019 return BC_add_object_ref1(s, JS_VALUE_GET_OBJ(obj)); - c00428a2: 85aa mv a1,a0 - c00428a4: 8522 mv a0,s0 - c00428a6: b66d50ef jal ra,c0017c0c + c0042a72: 85aa mv a1,a0 + c0042a74: 8522 mv a0,s0 + c0042a76: b66d50ef jal ra,c0017ddc JS_ReadObjectValue(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36527 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36535 if (BC_add_object_ref(s, obj)) - c00428aa: e519 bnez a0,c00428b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36529 + c0042a7a: e519 bnez a0,c0042a88 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36537 JS_FreeValue(ctx, val); - c00428ac: 6596 ld a1,320(sp) - c00428ae: 6636 ld a2,328(sp) - c00428b0: 854e mv a0,s3 - c00428b2: bd19 j c00426c8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36519 + c0042a7c: 6596 ld a1,320(sp) + c0042a7e: 6636 ld a2,328(sp) + c0042a80: 854e mv a0,s3 + c0042a82: bd19 j c0042898 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36527 JSValue val, obj = JS_UNDEFINED; - c00428b4: 490d li s2,3 - c00428b6: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36532 + c0042a84: 490d li s2,3 + c0042a86: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36540 JS_FreeValue(ctx, val); - c00428b8: 6596 ld a1,320(sp) - c00428ba: 6636 ld a2,328(sp) - c00428bc: 854e mv a0,s3 - c00428be: a7ac50ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36533 + c0042a88: 6596 ld a1,320(sp) + c0042a8a: 6636 ld a2,328(sp) + c0042a8c: 854e mv a0,s3 + c0042a8e: 998c50ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36541 JS_FreeValue(ctx, obj); - c00428c2: fa26 sd s1,304(sp) - c00428c4: fe4a sd s2,312(sp) - c00428c6: b795 j c004282a + c0042a92: fa26 sd s1,304(sp) + c0042a94: fe4a sd s2,312(sp) + c0042a96: b795 j c00429fa JS_ReadBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35873 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35881 p = js_new_bf(s->ctx); - c00428c8: 00043983 ld s3,0(s0) + c0042a98: 00043983 ld s3,0(s0) js_new_bf(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12348 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12356 p = js_malloc(ctx, sizeof(*p)); - c00428cc: 03000593 li a1,48 - c00428d0: 854e mv a0,s3 - c00428d2: b7ad20ef jal ra,c0014c4c - c00428d6: 84aa mv s1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12349 + c0042a9c: 03000593 li a1,48 + c0042aa0: 854e mv a0,s3 + c0042aa2: a98d20ef jal ra,c0014d3a + c0042aa6: 84aa mv s1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12357 if (!p) - c00428d8: 12050763 beqz a0,c0042a06 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12351 + c0042aa8: 12050763 beqz a0,c0042bd6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12359 p->header.ref_count = 1; - c00428dc: 4785 li a5,1 - c00428de: c11c sw a5,0(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12352 + c0042aac: 4785 li a5,1 + c0042aae: c11c sw a5,0(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:12360 bf_init(ctx->bf_ctx, &p->num); - c00428e0: 00850913 addi s2,a0,8 - c00428e4: 1909b503 ld a0,400(s3) - c00428e8: 85ca mv a1,s2 - c00428ea: 7220a0ef jal ra,c004d00c + c0042ab0: 00850913 addi s2,a0,8 + c0042ab4: 1909b503 ld a0,400(s3) + c0042ab8: 85ca mv a1,s2 + c0042aba: 7220a0ef jal ra,c004d1dc bc_get_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35694 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35702 ret = get_sleb128(pval, s->ptr, s->buf_end); - c00428ee: 6c10 ld a2,24(s0) - c00428f0: 680c ld a1,16(s0) - c00428f2: 0a08 addi a0,sp,272 - c00428f4: ca8c20ef jal ra,c0004d9c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35695 + c0042abe: 6c10 ld a2,24(s0) + c0042ac0: 680c ld a1,16(s0) + c0042ac2: 0a08 addi a0,sp,272 + c0042ac4: ad8c20ef jal ra,c0004d9c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35703 if (unlikely(ret < 0)) - c00428f8: 02055963 bgez a0,c004292a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35696 + c0042ac8: 02055963 bgez a0,c0042afa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35704 return bc_read_error_end(s); - c00428fc: 8522 mv a0,s0 - c00428fe: 901d00ef jal ra,c00131fe + c0042acc: 8522 mv a0,s0 + c0042ace: 81fd00ef jal ra,c00132ec JS_ReadBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35878 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35886 obj = JS_MKPTR(JS_TAG_BIG_INT, p); - c0042902: 5659 li a2,-10 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35893 + c0042ad2: 5659 li a2,-10 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35901 if (bc_get_sleb128(s, &e)) - c0042904: 10051263 bnez a0,c0042a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35897 + c0042ad4: 10051263 bnez a0,c0042bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35905 a->sign = e & 1; - c0042908: 11012783 lw a5,272(sp) - c004290c: 0017f713 andi a4,a5,1 - c0042910: c898 sw a4,16(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35898 + c0042ad8: 11012783 lw a5,272(sp) + c0042adc: 0017f713 andi a4,a5,1 + c0042ae0: c898 sw a4,16(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35906 e >>= 1; - c0042912: 4017d71b sraiw a4,a5,0x1 - c0042916: 10e12823 sw a4,272(sp) - c004291a: 8785 srai a5,a5,0x1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35899 + c0042ae2: 4017d71b sraiw a4,a5,0x1 + c0042ae6: 10e12823 sw a4,272(sp) + c0042aea: 8785 srai a5,a5,0x1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35907 if (e == 0) - c004291c: eb99 bnez a5,c0042932 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35900 + c0042aec: eb99 bnez a5,c0042b02 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35908 a->expn = BF_EXP_ZERO; - c004291e: 57fd li a5,-1 - c0042920: 17fe slli a5,a5,0x3f -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35904 + c0042aee: 57fd li a5,-1 + c0042af0: 17fe slli a5,a5,0x3f +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35912 a->expn = BF_EXP_NAN; - c0042922: ec9c sd a5,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35989 + c0042af2: ec9c sd a5,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35997 return obj; - c0042924: 5959 li s2,-10 - c0042926: c62ff06f j c0041d88 + c0042af4: 5959 li s2,-10 + c0042af6: c62ff06f j c0041f58 bc_get_sleb128(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35697 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35705 s->ptr += ret; - c004292a: 681c ld a5,16(s0) - c004292c: 953e add a0,a0,a5 - c004292e: e808 sd a0,16(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35698 + c0042afa: 681c ld a5,16(s0) + c0042afc: 953e add a0,a0,a5 + c0042afe: e808 sd a0,16(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35706 return 0; - c0042930: bfe1 j c0042908 + c0042b00: bfe1 j c0042ad8 JS_ReadBigNum(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35901 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35909 else if (e == 1) - c0042932: 4685 li a3,1 - c0042934: 00d79563 bne a5,a3,c004293e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35902 + c0042b02: 4685 li a3,1 + c0042b04: 00d79563 bne a5,a3,c0042b0e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35910 a->expn = BF_EXP_INF; - c0042938: 57f5 li a5,-3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35904 + c0042b08: 57f5 li a5,-3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35912 a->expn = BF_EXP_NAN; - c004293a: 8385 srli a5,a5,0x1 - c004293c: b7dd j c0042922 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35903 + c0042b0a: 8385 srli a5,a5,0x1 + c0042b0c: b7dd j c0042af2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35911 else if (e == 2) - c004293e: 4689 li a3,2 - c0042940: 00d79463 bne a5,a3,c0042948 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35904 + c0042b0e: 4689 li a3,2 + c0042b10: 00d79463 bne a5,a3,c0042b18 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35912 a->expn = BF_EXP_NAN; - c0042944: 57fd li a5,-1 - c0042946: bfd5 j c004293a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35905 + c0042b14: 57fd li a5,-1 + c0042b16: bfd5 j c0042b0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35913 else if (e >= 3) - c0042948: 02f6dc63 bge a3,a5,c0042980 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35906 + c0042b18: 02f6dc63 bge a3,a5,c0042b50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35914 a->expn = e - 3; - c004294c: 3775 addiw a4,a4,-3 - c004294e: ec98 sd a4,24(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35911 + c0042b1c: 3775 addiw a4,a4,-3 + c0042b1e: ec98 sd a4,24(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35919 if (a->expn != BF_EXP_ZERO && - c0042950: 6c9c ld a5,24(s1) - c0042952: 577d li a4,-1 - c0042954: 8305 srli a4,a4,0x1 - c0042956: 97ba add a5,a5,a4 - c0042958: 5771 li a4,-4 - c004295a: fcf765e3 bltu a4,a5,c0042924 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35914 + c0042b20: 6c9c ld a5,24(s1) + c0042b22: 577d li a4,-1 + c0042b24: 8305 srli a4,a4,0x1 + c0042b26: 97ba add a5,a5,a4 + c0042b28: 5771 li a4,-4 + c0042b2a: fcf765e3 bltu a4,a5,c0042af4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35922 if (bc_get_leb128(s, &len)) - c004295e: 120c addi a1,sp,288 - c0042960: 8522 mv a0,s0 - c0042962: 8e9d00ef jal ra,c001324a - c0042966: e919 bnez a0,c004297c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35917 + c0042b2e: 120c addi a1,sp,288 + c0042b30: 8522 mv a0,s0 + c0042b32: 807d00ef jal ra,c0013338 + c0042b36: e919 bnez a0,c0042b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35925 if (len == 0) { - c0042968: 12012583 lw a1,288(sp) - c004296c: ed81 bnez a1,c0042984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35918 + c0042b38: 12012583 lw a1,288(sp) + c0042b3c: ed81 bnez a1,c0042b54 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35926 JS_ThrowInternalError(s->ctx, "invalid bignum length"); - c004296e: 6008 ld a0,0(s0) - c0042970: 0001e597 auipc a1,0x1e - c0042974: 46858593 addi a1,a1,1128 # c0060dd8 - c0042978: 80cd20ef jal ra,c0014984 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35878 + c0042b3e: 6008 ld a0,0(s0) + c0042b40: 0001e597 auipc a1,0x1e + c0042b44: 4f858593 addi a1,a1,1272 # c0061038 + c0042b48: f2bd10ef jal ra,c0014a72 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35886 obj = JS_MKPTR(JS_TAG_BIG_INT, p); - c004297c: 5659 li a2,-10 - c004297e: a069 j c0042a08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35908 + c0042b4c: 5659 li a2,-10 + c0042b4e: a069 j c0042bd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35916 a->expn = e; - c0042980: ec9c sd a5,24(s1) - c0042982: b7f9 j c0042950 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35922 + c0042b50: ec9c sd a5,24(s1) + c0042b52: b7f9 j c0042b20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35930 l = (len + sizeof(limb_t) - 1) / sizeof(limb_t); - c0042984: 1582 slli a1,a1,0x20 - c0042986: 9181 srli a1,a1,0x20 - c0042988: 059d addi a1,a1,7 - c004298a: 0035d993 srli s3,a1,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35925 + c0042b54: 1582 slli a1,a1,0x20 + c0042b56: 9181 srli a1,a1,0x20 + c0042b58: 059d addi a1,a1,7 + c0042b5a: 0035d993 srli s3,a1,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35933 if (bf_resize(a, l)) { - c004298e: 85ce mv a1,s3 - c0042990: 854a mv a0,s2 - c0042992: 6900a0ef jal ra,c004d022 - c0042996: c509 beqz a0,c00429a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35926 + c0042b5e: 85ce mv a1,s3 + c0042b60: 854a mv a0,s2 + c0042b62: 6900a0ef jal ra,c004d1f2 + c0042b66: c509 beqz a0,c0042b70 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35934 JS_ThrowOutOfMemory(s->ctx); - c0042998: 6008 ld a0,0(s0) - c004299a: a82d20ef jal ra,c0014c1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35927 + c0042b68: 6008 ld a0,0(s0) + c0042b6a: 9a0d20ef jal ra,c0014d0a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35935 goto fail; - c004299e: bff9 j c004297c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35930 + c0042b6e: bff9 j c0042b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35938 n = len & (sizeof(limb_t) - 1); - c00429a0: 12012903 lw s2,288(sp) - c00429a4: 00797793 andi a5,s2,7 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35931 + c0042b70: 12012903 lw s2,288(sp) + c0042b74: 00797793 andi a5,s2,7 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35939 if (n != 0) { - c00429a8: cfa9 beqz a5,c0042a02 - c00429aa: 4921 li s2,8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35930 + c0042b78: cfa9 beqz a5,c0042bd2 + c0042b7a: 4921 li s2,8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35938 n = len & (sizeof(limb_t) - 1); - c00429ac: 02079a93 slli s5,a5,0x20 - c00429b0: 40f90933 sub s2,s2,a5 - c00429b4: 020ada93 srli s5,s5,0x20 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35932 + c0042b7c: 02079a93 slli s5,a5,0x20 + c0042b80: 40f90933 sub s2,s2,a5 + c0042b84: 020ada93 srli s5,s5,0x20 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35940 v = 0; - c00429b8: fa02 sd zero,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35933 + c0042b88: fa02 sd zero,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35941 for(i = 0; i < n; i++) { - c00429ba: 090e slli s2,s2,0x3 - c00429bc: 4a01 li s4,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35934 + c0042b8a: 090e slli s2,s2,0x3 + c0042b8c: 4a01 li s4,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35942 if (bc_get_u8(s, &v8)) - c00429be: 020c addi a1,sp,256 - c00429c0: 8522 mv a0,s0 - c00429c2: 865d00ef jal ra,c0013226 - c00429c6: f95d bnez a0,c004297c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35936 + c0042b8e: 020c addi a1,sp,256 + c0042b90: 8522 mv a0,s0 + c0042b92: f82d00ef jal ra,c0013314 + c0042b96: f95d bnez a0,c0042b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35944 v |= (limb_t)v8 << ((sizeof(limb_t) - n + i) * 8); - c00429c8: 10014783 lbu a5,256(sp) - c00429cc: 7752 ld a4,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35933 + c0042b98: 10014783 lbu a5,256(sp) + c0042b9c: 7752 ld a4,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35941 for(i = 0; i < n; i++) { - c00429ce: 0a05 addi s4,s4,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35936 + c0042b9e: 0a05 addi s4,s4,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35944 v |= (limb_t)v8 << ((sizeof(limb_t) - n + i) * 8); - c00429d0: 012797b3 sll a5,a5,s2 - c00429d4: 8fd9 or a5,a5,a4 - c00429d6: fa3e sd a5,304(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35933 + c0042ba0: 012797b3 sll a5,a5,s2 + c0042ba4: 8fd9 or a5,a5,a4 + c0042ba6: fa3e sd a5,304(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35941 for(i = 0; i < n; i++) { - c00429d8: 2921 addiw s2,s2,8 - c00429da: ff5a62e3 bltu s4,s5,c00429be -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35938 + c0042ba8: 2921 addiw s2,s2,8 + c0042baa: ff5a62e3 bltu s4,s5,c0042b8e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35946 a->tab[0] = v; - c00429de: 7498 ld a4,40(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35939 + c0042bae: 7498 ld a4,40(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35947 i = 1; - c00429e0: 4905 li s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35938 + c0042bb0: 4905 li s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35946 a->tab[0] = v; - c00429e2: e31c sd a5,0(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35943 - for(; i < l; i++) { - c00429e4: f52980e3 beq s3,s2,c0042924 + c0042bb2: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35951 + for(; i < l; i++) { + c0042bb4: f52980e3 beq s3,s2,c0042af4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35959 if (bc_get_u64(s, &v)) - c00429e8: 1a0c addi a1,sp,304 - c00429ea: 8522 mv a0,s0 - c00429ec: 8b7d00ef jal ra,c00132a2 - c00429f0: f551 bnez a0,c004297c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35957 + c0042bb8: 1a0c addi a1,sp,304 + c0042bba: 8522 mv a0,s0 + c0042bbc: fd4d00ef jal ra,c0013390 + c0042bc0: f551 bnez a0,c0042b4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35965 a->tab[i] = v; - c00429f2: 749c ld a5,40(s1) - c00429f4: 00391713 slli a4,s2,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35943 + c0042bc2: 749c ld a5,40(s1) + c0042bc4: 00391713 slli a4,s2,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35951 for(; i < l; i++) { - c00429f8: 0905 addi s2,s2,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35957 + c0042bc8: 0905 addi s2,s2,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35965 a->tab[i] = v; - c00429fa: 97ba add a5,a5,a4 - c00429fc: 7752 ld a4,304(sp) - c00429fe: e398 sd a4,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35943 + c0042bca: 97ba add a5,a5,a4 + c0042bcc: 7752 ld a4,304(sp) + c0042bce: e398 sd a4,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35951 for(; i < l; i++) { - c0042a00: b7d5 j c00429e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35941 + c0042bd0: b7d5 j c0042bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35949 i = 0; - c0042a02: 4901 li s2,0 - c0042a04: b7c5 j c00429e4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35863 + c0042bd2: 4901 li s2,0 + c0042bd4: b7c5 j c0042bb4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35871 JSValue obj = JS_UNDEFINED; - c0042a06: 460d li a2,3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35991 + c0042bd6: 460d li a2,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:35999 JS_FreeValue(s->ctx, obj); - c0042a08: 6008 ld a0,0(s0) - c0042a0a: e2a6 sd s1,320(sp) - c0042a0c: e6b2 sd a2,328(sp) - c0042a0e: 85a6 mv a1,s1 - c0042a10: b929 j c004262a + c0042bd8: 6008 ld a0,0(s0) + c0042bda: e2a6 sd s1,320(sp) + c0042bdc: e6b2 sd a2,328(sp) + c0042bde: 85a6 mv a1,s1 + c0042be0: b929 j c00427fa JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36633 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36641 if (!s->allow_reference) - c0042a12: 03744783 lbu a5,55(s0) - c0042a16: ef81 bnez a5,c0042a2e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36634 + c0042be2: 03744783 lbu a5,55(s0) + c0042be6: ef81 bnez a5,c0042bfe +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36642 return JS_ThrowSyntaxError(ctx, "object references are not allowed"); - c0042a18: 0001e597 auipc a1,0x1e - c0042a1c: 3d858593 addi a1,a1,984 # c0060df0 - c0042a20: 8526 mv a0,s1 - c0042a22: eead00ef jal ra,c001310c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36647 + c0042be8: 0001e597 auipc a1,0x1e + c0042bec: 46858593 addi a1,a1,1128 # c0061050 + c0042bf0: 8526 mv a0,s1 + c0042bf2: e08d00ef jal ra,c00131fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36655 return JS_ThrowSyntaxError(ctx, "invalid tag (tag=%d pos=%u)", - c0042a26: f02a sd a0,32(sp) - c0042a28: f42e sd a1,40(sp) - c0042a2a: af4ff06f j c0041d1e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36635 + c0042bf6: f02a sd a0,32(sp) + c0042bf8: f42e sd a1,40(sp) + c0042bfa: af4ff06f j c0041eee +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36643 if (bc_get_leb128(s, &val)) - c0042a2e: 028c addi a1,sp,320 - c0042a30: 8522 mv a0,s0 - c0042a32: 819d00ef jal ra,c001324a - c0042a36: ae051163 bnez a0,c0041d18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36638 + c0042bfe: 028c addi a1,sp,320 + c0042c00: 8522 mv a0,s0 + c0042c02: f36d00ef jal ra,c0013338 + c0042c06: ae051163 bnez a0,c0041ee8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36646 if (val >= s->objects_count) { - c0042a3a: 4034 lw a3,64(s0) - c0042a3c: 14012603 lw a2,320(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36639 + c0042c0a: 4034 lw a3,64(s0) + c0042c0c: 14012603 lw a2,320(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36647 return JS_ThrowSyntaxError(ctx, "invalid object reference (%u >= %u)", - c0042a40: 0001e597 auipc a1,0x1e - c0042a44: 3d858593 addi a1,a1,984 # c0060e18 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36638 + c0042c10: 0001e597 auipc a1,0x1e + c0042c14: 46858593 addi a1,a1,1128 # c0061078 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36646 if (val >= s->objects_count) { - c0042a48: 02d67763 bgeu a2,a3,c0042a76 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36642 + c0042c18: 02d67763 bgeu a2,a3,c0042c46 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36650 obj = JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, s->objects[val])); - c0042a4c: 7c1c ld a5,56(s0) - c0042a4e: 02061713 slli a4,a2,0x20 - c0042a52: 01d75613 srli a2,a4,0x1d - c0042a56: 963e add a2,a2,a5 - c0042a58: 6204 ld s1,0(a2) - c0042a5a: 597d li s2,-1 + c0042c1c: 7c1c ld a5,56(s0) + c0042c1e: 02061713 slli a4,a2,0x20 + c0042c22: 01d75613 srli a2,a4,0x1d + c0042c26: 963e add a2,a2,a5 + c0042c28: 6204 ld s1,0(a2) + c0042c2a: 597d li s2,-1 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c0042a5c: 409c lw a5,0(s1) - c0042a5e: 2785 addiw a5,a5,1 - c0042a60: c09c sw a5,0(s1) + c0042c2c: 409c lw a5,0(s1) + c0042c2e: 2785 addiw a5,a5,1 + c0042c30: c09c sw a5,0(s1) JS_ReadObjectRec(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36644 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36652 break; - c0042a62: b26ff06f j c0041d88 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36648 + c0042c32: b26ff06f j c0041f58 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36656 tag, (unsigned int)(s->ptr - s->buf_start)); - c0042a66: 6814 ld a3,16(s0) - c0042a68: 641c ld a5,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36647 + c0042c36: 6814 ld a3,16(s0) + c0042c38: 641c ld a5,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36655 return JS_ThrowSyntaxError(ctx, "invalid tag (tag=%d pos=%u)", - c0042a6a: 864a mv a2,s2 - c0042a6c: 0001e597 auipc a1,0x1e - c0042a70: 3d458593 addi a1,a1,980 # c0060e40 - c0042a74: 9e9d subw a3,a3,a5 - c0042a76: 8526 mv a0,s1 - c0042a78: e94d00ef jal ra,c001310c - c0042a7c: b76d j c0042a26 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36553 + c0042c3a: 864a mv a2,s2 + c0042c3c: 0001e597 auipc a1,0x1e + c0042c40: 46458593 addi a1,a1,1124 # c00610a0 + c0042c44: 9e9d subw a3,a3,a5 + c0042c46: 8526 mv a0,s1 + c0042c48: db2d00ef jal ra,c00131fa + c0042c4c: b76d j c0042bf6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36561 obj = JS_NULL; - c0042a7e: 4909 li s2,2 - c0042a80: af6ff06f j c0041d76 + c0042c4e: 4909 li s2,2 + c0042c50: af6ff06f j c0041f46 -00000000c0042a84 : +00000000c0042c54 : JS_ReadObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36709 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36717 { - c0042a84: 7175 addi sp,sp,-144 - c0042a86: e506 sd ra,136(sp) - c0042a88: e122 sd s0,128(sp) - c0042a8a: fca6 sd s1,120(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36713 + c0042c54: 7175 addi sp,sp,-144 + c0042c56: e506 sd ra,136(sp) + c0042c58: e122 sd s0,128(sp) + c0042c5a: fca6 sd s1,120(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36721 ctx->binary_object_count += 1; - c0042a8c: 03055783 lhu a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36716 + c0042c5c: 03055783 lhu a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 memset(s, 0, sizeof(*s)); - c0042a90: ec82 sd zero,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36721 + c0042c60: ec82 sd zero,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36729 s->allow_bytecode = ((flags & JS_READ_OBJ_BYTECODE) != 0); - c0042a92: 0016f713 andi a4,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36713 + c0042c62: 0016f713 andi a4,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36721 ctx->binary_object_count += 1; - c0042a96: 2785 addiw a5,a5,1 - c0042a98: 02f51823 sh a5,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36714 + c0042c66: 2785 addiw a5,a5,1 + c0042c68: 02f51823 sh a5,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36722 ctx->binary_object_size += buf_len; - c0042a9c: 595c lw a5,52(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36716 + c0042c6c: 595c lw a5,52(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 memset(s, 0, sizeof(*s)); - c0042a9e: e482 sd zero,72(sp) - c0042aa0: e882 sd zero,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36714 - ctx->binary_object_size += buf_len; - c0042aa2: 9fb1 addw a5,a5,a2 - c0042aa4: d95c sw a5,52(a0) + c0042c6e: e482 sd zero,72(sp) + c0042c70: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36722 + ctx->binary_object_size += buf_len; + c0042c72: 9fb1 addw a5,a5,a2 + c0042c74: d95c sw a5,52(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36730 s->is_rom_data = ((flags & JS_READ_OBJ_ROM_DATA) != 0); - c0042aa6: 4016d79b sraiw a5,a3,0x1 - c0042aaa: 8b85 andi a5,a5,1 - c0042aac: 04f10f23 sb a5,94(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36723 + c0042c76: 4016d79b sraiw a5,a3,0x1 + c0042c7a: 8b85 andi a5,a5,1 + c0042c7c: 04f10f23 sb a5,94(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36731 s->allow_sab = ((flags & JS_READ_OBJ_SAB) != 0); - c0042ab0: 4026d79b sraiw a5,a3,0x2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 + c0042c80: 4026d79b sraiw a5,a3,0x2 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36732 s->allow_reference = ((flags & JS_READ_OBJ_REFERENCE) != 0); - c0042ab4: 4036d69b sraiw a3,a3,0x3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36723 + c0042c84: 4036d69b sraiw a3,a3,0x3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36731 s->allow_sab = ((flags & JS_READ_OBJ_SAB) != 0); - c0042ab8: 8b85 andi a5,a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36719 + c0042c88: 8b85 andi a5,a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36727 s->buf_end = buf + buf_len; - c0042aba: 962e add a2,a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 + c0042c8a: 962e add a2,a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36732 s->allow_reference = ((flags & JS_READ_OBJ_REFERENCE) != 0); - c0042abc: 8a85 andi a3,a3,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36723 + c0042c8c: 8a85 andi a3,a3,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36731 s->allow_sab = ((flags & JS_READ_OBJ_SAB) != 0); - c0042abe: 04f10e23 sb a5,92(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36716 + c0042c8e: 04f10e23 sb a5,92(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 memset(s, 0, sizeof(*s)); - c0042ac2: f082 sd zero,96(sp) - c0042ac4: f482 sd zero,104(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36717 + c0042c92: f082 sd zero,96(sp) + c0042c94: f482 sd zero,104(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36725 s->ctx = ctx; - c0042ac6: f42a sd a0,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36718 + c0042c96: f42a sd a0,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36726 s->buf_start = buf; - c0042ac8: f82e sd a1,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36719 + c0042c98: f82e sd a1,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36727 s->buf_end = buf + buf_len; - c0042aca: e0b2 sd a2,64(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36720 + c0042c9a: e0b2 sd a2,64(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36728 s->ptr = buf; - c0042acc: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36721 + c0042c9c: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36729 s->allow_bytecode = ((flags & JS_READ_OBJ_BYTECODE) != 0); - c0042ace: 04e10ea3 sb a4,93(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36724 + c0042c9e: 04e10ea3 sb a4,93(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36732 s->allow_reference = ((flags & JS_READ_OBJ_REFERENCE) != 0); - c0042ad2: 04d10fa3 sb a3,95(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36728 + c0042ca2: 04d10fa3 sb a3,95(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36736 s->first_atom = 1; - c0042ad6: 4785 li a5,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36725 + c0042ca6: 4785 li a5,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36733 if (s->allow_bytecode) - c0042ad8: c319 beqz a4,c0042ade - c0042ada: 0d800793 li a5,216 + c0042ca8: c319 beqz a4,c0042cae + c0042caa: 0d800793 li a5,216 JS_ReadObjectAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36661 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36669 if (bc_get_u8(s, &v8)) - c0042ade: 082c addi a1,sp,24 - c0042ae0: 1028 addi a0,sp,40 - c0042ae2: c4be sw a5,72(sp) - c0042ae4: f42d00ef jal ra,c0013226 - c0042ae8: ed11 bnez a0,c0042b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36664 + c0042cae: 082c addi a1,sp,24 + c0042cb0: 1028 addi a0,sp,40 + c0042cb2: c4be sw a5,72(sp) + c0042cb4: e60d00ef jal ra,c0013314 + c0042cb8: ed11 bnez a0,c0042cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36672 if (v8 != BC_VERSION) { - c0042aea: 01814603 lbu a2,24(sp) - c0042aee: 4785 li a5,1 - c0042af0: 02f60a63 beq a2,a5,c0042b24 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36665 + c0042cba: 01814603 lbu a2,24(sp) + c0042cbe: 4785 li a5,1 + c0042cc0: 02f60a63 beq a2,a5,c0042cf4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36673 JS_ThrowSyntaxError(s->ctx, "invalid version (%d expected=%d)", - c0042af4: 7522 ld a0,40(sp) - c0042af6: 4685 li a3,1 - c0042af8: 0001e597 auipc a1,0x1e - c0042afc: 3b858593 addi a1,a1,952 # c0060eb0 - c0042b00: e0cd00ef jal ra,c001310c + c0042cc4: 7522 ld a0,40(sp) + c0042cc6: 4685 li a3,1 + c0042cc8: 0001e597 auipc a1,0x1e + c0042ccc: 44858593 addi a1,a1,1096 # c0061110 + c0042cd0: d2ad00ef jal ra,c00131fa JS_ReadObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36730 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36738 obj = JS_EXCEPTION; - c0042b04: e402 sd zero,8(sp) - c0042b06: 4419 li s0,6 + c0042cd4: e402 sd zero,8(sp) + c0042cd6: 4419 li s0,6 bc_reader_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36698 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36706 if (s->idx_to_atom) { - c0042b08: 67c6 ld a5,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36699 + c0042cd8: 67c6 ld a5,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36707 for(i = 0; i < s->idx_to_atom_count; i++) { - c0042b0a: 4481 li s1,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36698 + c0042cda: 4481 li s1,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36706 if (s->idx_to_atom) { - c0042b0c: efc1 bnez a5,c0042ba4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36704 + c0042cdc: efc1 bnez a5,c0042d74 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36712 js_free(s->ctx, s->objects); - c0042b0e: 7586 ld a1,96(sp) - c0042b10: 7522 ld a0,40(sp) - c0042b12: b28c40ef jal ra,c0006e3a + c0042cde: 7586 ld a1,96(sp) + c0042ce0: 7522 ld a0,40(sp) + c0042ce2: a46c40ef jal ra,c0006f28 JS_ReadObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36736 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36744 } - c0042b16: 60aa ld ra,136(sp) - c0042b18: 85a2 mv a1,s0 - c0042b1a: 640a ld s0,128(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36735 + c0042ce6: 60aa ld ra,136(sp) + c0042ce8: 85a2 mv a1,s0 + c0042cea: 640a ld s0,128(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36743 return obj; - c0042b1c: 6522 ld a0,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36736 + c0042cec: 6522 ld a0,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36744 } - c0042b1e: 74e6 ld s1,120(sp) - c0042b20: 6149 addi sp,sp,144 - c0042b22: 8082 ret + c0042cee: 74e6 ld s1,120(sp) + c0042cf0: 6149 addi sp,sp,144 + c0042cf2: 8082 ret JS_ReadObjectAtoms(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36669 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36677 if (bc_get_leb128(s, &s->idx_to_atom_count)) - c0042b24: 00ec addi a1,sp,76 - c0042b26: 1028 addi a0,sp,40 - c0042b28: f22d00ef jal ra,c001324a - c0042b2c: 842a mv s0,a0 - c0042b2e: f979 bnez a0,c0042b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36674 + c0042cf4: 00ec addi a1,sp,76 + c0042cf6: 1028 addi a0,sp,40 + c0042cf8: e40d00ef jal ra,c0013338 + c0042cfc: 842a mv s0,a0 + c0042cfe: f979 bnez a0,c0042cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36682 if (s->idx_to_atom_count != 0) { - c0042b30: 45b6 lw a1,76(sp) - c0042b32: c5b1 beqz a1,c0042b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36675 + c0042d00: 45b6 lw a1,76(sp) + c0042d02: c5b1 beqz a1,c0042d4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36683 s->idx_to_atom = js_mallocz(s->ctx, s->idx_to_atom_count * - c0042b34: 7522 ld a0,40(sp) - c0042b36: 02059793 slli a5,a1,0x20 - c0042b3a: 01e7d593 srli a1,a5,0x1e - c0042b3e: 99ed30ef jal ra,c0015cdc - c0042b42: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36677 + c0042d04: 7522 ld a0,40(sp) + c0042d06: 02059793 slli a5,a1,0x20 + c0042d0a: 01e7d593 srli a1,a5,0x1e + c0042d0e: 99ed30ef jal ra,c0015eac + c0042d12: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36685 if (!s->idx_to_atom) - c0042b44: ed0d bnez a0,c0042b7e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36678 + c0042d14: ed0d bnez a0,c0042d4e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36686 return s->error_state = -1; - c0042b46: 57fd li a5,-1 - c0042b48: ccbe sw a5,88(sp) - c0042b4a: bf6d j c0042b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36681 + c0042d16: 57fd li a5,-1 + c0042d18: ccbe sw a5,88(sp) + c0042d1a: bf6d j c0042cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36689 p = JS_ReadString(s); - c0042b4c: 1028 addi a0,sp,40 - c0042b4e: 8c8d60ef jal ra,c0018c16 - c0042b52: 85aa mv a1,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36682 + c0042d1c: 1028 addi a0,sp,40 + c0042d1e: 8c8d60ef jal ra,c0018de6 + c0042d22: 85aa mv a1,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36690 if (!p) - c0042b54: d945 beqz a0,c0042b04 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36684 + c0042d24: d945 beqz a0,c0042cd4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36692 atom = JS_NewAtomStr(s->ctx, p); - c0042b56: 7522 ld a0,40(sp) - c0042b58: f7ec40ef jal ra,c00072d6 - c0042b5c: 2501 sext.w a0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36685 + c0042d26: 7522 ld a0,40(sp) + c0042d28: e9cc40ef jal ra,c00073c4 + c0042d2c: 2501 sext.w a0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36693 if (atom == JS_ATOM_NULL) - c0042b5e: d565 beqz a0,c0042b46 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36687 + c0042d2e: d565 beqz a0,c0042d16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36695 s->idx_to_atom[i] = atom; - c0042b60: 6746 ld a4,80(sp) - c0042b62: 00241793 slli a5,s0,0x2 - c0042b66: 97ba add a5,a5,a4 - c0042b68: c388 sw a0,0(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36688 + c0042d30: 6746 ld a4,80(sp) + c0042d32: 00241793 slli a5,s0,0x2 + c0042d36: 97ba add a5,a5,a4 + c0042d38: c388 sw a0,0(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36696 if (s->is_rom_data && (atom != (i + s->first_atom))) - c0042b6a: 05e14783 lbu a5,94(sp) - c0042b6e: c799 beqz a5,c0042b7c - c0042b70: 47a6 lw a5,72(sp) - c0042b72: 9fa5 addw a5,a5,s1 - c0042b74: 00a78463 beq a5,a0,c0042b7c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36689 + c0042d3a: 05e14783 lbu a5,94(sp) + c0042d3e: c799 beqz a5,c0042d4c + c0042d40: 47a6 lw a5,72(sp) + c0042d42: 9fa5 addw a5,a5,s1 + c0042d44: 00a78463 beq a5,a0,c0042d4c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36697 s->is_rom_data = FALSE; /* atoms must be relocated */ - c0042b78: 04010f23 sb zero,94(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36680 + c0042d48: 04010f23 sb zero,94(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36688 for(i = 0; i < s->idx_to_atom_count; i++) { - c0042b7c: 2405 addiw s0,s0,1 - c0042b7e: 47b6 lw a5,76(sp) - c0042b80: 0004049b sext.w s1,s0 - c0042b84: fcf4e4e3 bltu s1,a5,c0042b4c + c0042d4c: 2405 addiw s0,s0,1 + c0042d4e: 47b6 lw a5,76(sp) + c0042d50: 0004049b sext.w s1,s0 + c0042d54: fcf4e4e3 bltu s1,a5,c0042d1c JS_ReadObject(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36732 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36740 obj = JS_ReadObjectRec(s); - c0042b88: 1028 addi a0,sp,40 - c0042b8a: 956ff0ef jal ra,c0041ce0 - c0042b8e: 842e mv s0,a1 - c0042b90: e42a sd a0,8(sp) - c0042b92: e82e sd a1,16(sp) - c0042b94: bf95 j c0042b08 + c0042d58: 1028 addi a0,sp,40 + c0042d5a: 956ff0ef jal ra,c0041eb0 + c0042d5e: 842e mv s0,a1 + c0042d60: e42a sd a0,8(sp) + c0042d62: e82e sd a1,16(sp) + c0042d64: bf95 j c0042cd8 bc_reader_free(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36700 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36708 JS_FreeAtom(s->ctx, s->idx_to_atom[i]); - c0042b96: 00249793 slli a5,s1,0x2 - c0042b9a: 95be add a1,a1,a5 - c0042b9c: 418c lw a1,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36699 + c0042d66: 00249793 slli a5,s1,0x2 + c0042d6a: 95be add a1,a1,a5 + c0042d6c: 418c lw a1,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36707 for(i = 0; i < s->idx_to_atom_count; i++) { - c0042b9e: 2485 addiw s1,s1,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36700 + c0042d6e: 2485 addiw s1,s1,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36708 JS_FreeAtom(s->ctx, s->idx_to_atom[i]); - c0042ba0: 96dc40ef jal ra,c000750c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36699 + c0042d70: 88bc40ef jal ra,c00075fa +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36707 for(i = 0; i < s->idx_to_atom_count; i++) { - c0042ba4: 47b6 lw a5,76(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36700 + c0042d74: 47b6 lw a5,76(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36708 JS_FreeAtom(s->ctx, s->idx_to_atom[i]); - c0042ba6: 7522 ld a0,40(sp) - c0042ba8: 65c6 ld a1,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36699 + c0042d76: 7522 ld a0,40(sp) + c0042d78: 65c6 ld a1,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36707 for(i = 0; i < s->idx_to_atom_count; i++) { - c0042baa: fef4e6e3 bltu s1,a5,c0042b96 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36702 + c0042d7a: fef4e6e3 bltu s1,a5,c0042d66 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:36710 js_free(s->ctx, s->idx_to_atom); - c0042bae: a8cc40ef jal ra,c0006e3a - c0042bb2: bfb1 j c0042b0e + c0042d7e: 9aac40ef jal ra,c0006f28 + c0042d82: bfb1 j c0042cde -00000000c0042bb4 : +00000000c0042d84 : JS_DetachArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52872 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52880 { - c0042bb4: 7179 addi sp,sp,-48 - c0042bb6: 87b2 mv a5,a2 - c0042bb8: ec26 sd s1,24(sp) - c0042bba: e02e sd a1,0(sp) - c0042bbc: 84aa mv s1,a0 - c0042bbe: e432 sd a2,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52873 + c0042d84: 7179 addi sp,sp,-48 + c0042d86: 87b2 mv a5,a2 + c0042d88: ec26 sd s1,24(sp) + c0042d8a: e02e sd a1,0(sp) + c0042d8c: 84aa mv s1,a0 + c0042d8e: e432 sd a2,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52881 JSArrayBuffer *abuf = JS_GetOpaque(obj, JS_CLASS_ARRAY_BUFFER); - c0042bc0: 852e mv a0,a1 - c0042bc2: 464d li a2,19 - c0042bc4: 85be mv a1,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52872 + c0042d90: 852e mv a0,a1 + c0042d92: 464d li a2,19 + c0042d94: 85be mv a1,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52880 { - c0042bc6: f406 sd ra,40(sp) - c0042bc8: f022 sd s0,32(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52873 + c0042d96: f406 sd ra,40(sp) + c0042d98: f022 sd s0,32(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52881 JSArrayBuffer *abuf = JS_GetOpaque(obj, JS_CLASS_ARRAY_BUFFER); - c0042bca: ce9c70ef jal ra,c000a8b2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52876 + c0042d9a: c07c70ef jal ra,c000a9a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 if (!abuf || abuf->detached) - c0042bce: c905 beqz a0,c0042bfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52876 (discriminator 1) - c0042bd0: 00454783 lbu a5,4(a0) - c0042bd4: 842a mv s0,a0 - c0042bd6: e785 bnez a5,c0042bfe -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52878 + c0042d9e: c905 beqz a0,c0042dce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 (discriminator 1) + c0042da0: 00454783 lbu a5,4(a0) + c0042da4: 842a mv s0,a0 + c0042da6: e785 bnez a5,c0042dce +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52886 if (abuf->free_func) - c0042bd8: 751c ld a5,40(a0) - c0042bda: c789 beqz a5,c0042be4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52879 + c0042da8: 751c ld a5,40(a0) + c0042daa: c789 beqz a5,c0042db4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52887 abuf->free_func(ctx->rt, abuf->opaque, abuf->data); - c0042bdc: 6510 ld a2,8(a0) - c0042bde: 710c ld a1,32(a0) - c0042be0: 6c88 ld a0,24(s1) - c0042be2: 9782 jalr a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52882 + c0042dac: 6510 ld a2,8(a0) + c0042dae: 710c ld a1,32(a0) + c0042db0: 6c88 ld a0,24(s1) + c0042db2: 9782 jalr a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52890 abuf->detached = TRUE; - c0042be4: 4785 li a5,1 - c0042be6: 00f40223 sb a5,4(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52880 + c0042db4: 4785 li a5,1 + c0042db6: 00f40223 sb a5,4(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52888 abuf->data = NULL; - c0042bea: 00043423 sd zero,8(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 + c0042dba: 00043423 sd zero,8(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52892 list_for_each(el, &abuf->array_list) { - c0042bee: 6c1c ld a5,24(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52881 + c0042dbe: 6c1c ld a5,24(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52889 abuf->byte_length = 0; - c0042bf0: 00042023 sw zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52891 + c0042dc0: 00042023 sw zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52899 if (p->class_id != JS_CLASS_DATAVIEW) { - c0042bf4: 02000693 li a3,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 + c0042dc4: 02000693 li a3,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52892 list_for_each(el, &abuf->array_list) { - c0042bf8: 0441 addi s0,s0,16 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 (discriminator 1) - c0042bfa: 00879763 bne a5,s0,c0042c08 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52896 -} - c0042bfe: 70a2 ld ra,40(sp) - c0042c00: 7402 ld s0,32(sp) - c0042c02: 64e2 ld s1,24(sp) - c0042c04: 6145 addi sp,sp,48 - c0042c06: 8082 ret -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52889 + c0042dc8: 0441 addi s0,s0,16 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52892 (discriminator 1) + c0042dca: 00879763 bne a5,s0,c0042dd8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52904 +} + c0042dce: 70a2 ld ra,40(sp) + c0042dd0: 7402 ld s0,32(sp) + c0042dd2: 64e2 ld s1,24(sp) + c0042dd4: 6145 addi sp,sp,48 + c0042dd6: 8082 ret +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52897 p = ta->obj; - c0042c08: 6b98 ld a4,16(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52891 + c0042dd8: 6b98 ld a4,16(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52899 if (p->class_id != JS_CLASS_DATAVIEW) { - c0042c0a: 00675603 lhu a2,6(a4) - c0042c0e: 00d60663 beq a2,a3,c0042c1a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52892 + c0042dda: 00675603 lhu a2,6(a4) + c0042dde: 00d60663 beq a2,a3,c0042dea +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52900 p->u.array.count = 0; - c0042c12: 04072023 sw zero,64(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52893 + c0042de2: 04072023 sw zero,64(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52901 p->u.array.u.ptr = NULL; - c0042c16: 02073c23 sd zero,56(a4) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52884 (discriminator 2) + c0042de6: 02073c23 sd zero,56(a4) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52892 (discriminator 2) list_for_each(el, &abuf->array_list) { - c0042c1a: 679c ld a5,8(a5) - c0042c1c: bff9 j c0042bfa + c0042dea: 679c ld a5,8(a5) + c0042dec: bff9 j c0042dca -00000000c0042c1e : +00000000c0042dee : JS_GetArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52925 { - c0042c1e: 1101 addi sp,sp,-32 - c0042c20: e822 sd s0,16(sp) - c0042c22: e436 sd a3,8(sp) - c0042c24: ec06 sd ra,24(sp) - c0042c26: e032 sd a2,0(sp) + c0042dee: 1101 addi sp,sp,-32 + c0042df0: e822 sd s0,16(sp) + c0042df2: e436 sd a3,8(sp) + c0042df4: ec06 sd ra,24(sp) + c0042df6: e032 sd a2,0(sp) js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52910 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0042c28: 2681 sext.w a3,a3 - c0042c2a: 57fd li a5,-1 + c0042df8: 2681 sext.w a3,a3 + c0042dfa: 57fd li a5,-1 JS_GetArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52917 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52925 { - c0042c2c: 872a mv a4,a0 - c0042c2e: 842e mv s0,a1 + c0042dfc: 872a mv a4,a0 + c0042dfe: 842e mv s0,a1 js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52902 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52910 if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) - c0042c30: 00f69a63 bne a3,a5,c0042c44 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52905 + c0042e00: 00f69a63 bne a3,a5,c0042e14 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52913 if (p->class_id != JS_CLASS_ARRAY_BUFFER && - c0042c34: 00665783 lhu a5,6(a2) - c0042c38: 4685 li a3,1 - c0042c3a: 37b5 addiw a5,a5,-19 - c0042c3c: 17c2 slli a5,a5,0x30 - c0042c3e: 93c1 srli a5,a5,0x30 - c0042c40: 00f6fa63 bgeu a3,a5,c0042c54 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52908 + c0042e04: 00665783 lhu a5,6(a2) + c0042e08: 4685 li a3,1 + c0042e0a: 37b5 addiw a5,a5,-19 + c0042e0c: 17c2 slli a5,a5,0x30 + c0042e0e: 93c1 srli a5,a5,0x30 + c0042e10: 00f6fa63 bgeu a3,a5,c0042e24 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52916 JS_ThrowTypeErrorInvalidClass(ctx, JS_CLASS_ARRAY_BUFFER); - c0042c44: 45cd li a1,19 - c0042c46: 853a mv a0,a4 - c0042c48: 909d00ef jal ra,c0013550 + c0042e14: 45cd li a1,19 + c0042e16: 853a mv a0,a4 + c0042e18: 827d00ef jal ra,c001363e JS_GetArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52936 *psize = 0; - c0042c4c: 00043023 sd zero,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52929 + c0042e1c: 00043023 sd zero,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52937 return NULL; - c0042c50: 4501 li a0,0 - c0042c52: a821 j c0042c6a + c0042e20: 4501 li a0,0 + c0042e22: a821 j c0042e3a js_get_array_buffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52911 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52919 return p->u.array_buffer; - c0042c54: 7a1c ld a5,48(a2) + c0042e24: 7a1c ld a5,48(a2) JS_GetArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52919 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52927 if (!abuf) - c0042c56: dbfd beqz a5,c0042c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52921 + c0042e26: dbfd beqz a5,c0042e1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52929 if (abuf->detached) { - c0042c58: 0047c703 lbu a4,4(a5) - c0042c5c: c701 beqz a4,c0042c64 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52922 + c0042e28: 0047c703 lbu a4,4(a5) + c0042e2c: c701 beqz a4,c0042e34 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52930 JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0042c5e: 874d10ef jal ra,c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52923 + c0042e2e: f93d00ef jal ra,c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52931 goto fail; - c0042c62: b7ed j c0042c4c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52925 + c0042e32: b7ed j c0042e1c +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52933 *psize = abuf->byte_length; - c0042c64: 4398 lw a4,0(a5) - c0042c66: e198 sd a4,0(a1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52926 + c0042e34: 4398 lw a4,0(a5) + c0042e36: e198 sd a4,0(a1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52934 return abuf->data; - c0042c68: 6788 ld a0,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52930 + c0042e38: 6788 ld a0,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:52938 } - c0042c6a: 60e2 ld ra,24(sp) - c0042c6c: 6442 ld s0,16(sp) - c0042c6e: 6105 addi sp,sp,32 - c0042c70: 8082 ret + c0042e3a: 60e2 ld ra,24(sp) + c0042e3c: 6442 ld s0,16(sp) + c0042e3e: 6105 addi sp,sp,32 + c0042e40: 8082 ret -00000000c0042c72 : +00000000c0042e42 : JS_GetTypedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53139 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53147 { - c0042c72: 715d addi sp,sp,-80 - c0042c74: f84a sd s2,48(sp) - c0042c76: 8936 mv s2,a3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53142 + c0042e42: 715d addi sp,sp,-80 + c0042e44: f84a sd s2,48(sp) + c0042e46: 8936 mv s2,a3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53150 p = get_typed_array(ctx, obj, FALSE); - c0042c78: 4681 li a3,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53139 -{ - c0042c7a: e0a2 sd s0,64(sp) - c0042c7c: fc26 sd s1,56(sp) - c0042c7e: f44e sd s3,40(sp) - c0042c80: e486 sd ra,72(sp) - c0042c82: 89aa mv s3,a0 - c0042c84: e02e sd a1,0(sp) - c0042c86: e432 sd a2,8(sp) - c0042c88: 84ba mv s1,a4 - c0042c8a: 843e mv s0,a5 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53142 + c0042e48: 4681 li a3,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53147 +{ + c0042e4a: e0a2 sd s0,64(sp) + c0042e4c: fc26 sd s1,56(sp) + c0042e4e: f44e sd s3,40(sp) + c0042e50: e486 sd ra,72(sp) + c0042e52: 89aa mv s3,a0 + c0042e54: e02e sd a1,0(sp) + c0042e56: e432 sd a2,8(sp) + c0042e58: 84ba mv s1,a4 + c0042e5a: 843e mv s0,a5 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53150 p = get_typed_array(ctx, obj, FALSE); - c0042c8c: b2cd10ef jal ra,c0013fb8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53143 + c0042e5c: a4ad10ef jal ra,c00140a6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53151 if (!p) - c0042c90: ed09 bnez a0,c0042caa -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53144 + c0042e60: ed09 bnez a0,c0042e7a +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53152 return JS_EXCEPTION; - c0042c92: e802 sd zero,16(sp) - c0042c94: 4799 li a5,6 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53156 -} - c0042c96: 60a6 ld ra,72(sp) - c0042c98: 6406 ld s0,64(sp) - c0042c9a: ec3e sd a5,24(sp) - c0042c9c: 6542 ld a0,16(sp) - c0042c9e: 65e2 ld a1,24(sp) - c0042ca0: 74e2 ld s1,56(sp) - c0042ca2: 7942 ld s2,48(sp) - c0042ca4: 79a2 ld s3,40(sp) - c0042ca6: 6161 addi sp,sp,80 - c0042ca8: 8082 ret + c0042e62: e802 sd zero,16(sp) + c0042e64: 4799 li a5,6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53164 +} + c0042e66: 60a6 ld ra,72(sp) + c0042e68: 6406 ld s0,64(sp) + c0042e6a: ec3e sd a5,24(sp) + c0042e6c: 6542 ld a0,16(sp) + c0042e6e: 65e2 ld a1,24(sp) + c0042e70: 74e2 ld s1,56(sp) + c0042e72: 7942 ld s2,48(sp) + c0042e74: 79a2 ld s3,40(sp) + c0042e76: 6161 addi sp,sp,80 + c0042e78: 8082 ret typed_array_is_detached(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53041 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53049 JSTypedArray *ta = p->u.typed_array; - c0042caa: 7910 ld a2,48(a0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53042 + c0042e7a: 7910 ld a2,48(a0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53050 JSArrayBuffer *abuf = ta->buffer->u.array_buffer; - c0042cac: 6e1c ld a5,24(a2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53045 + c0042e7c: 6e1c ld a5,24(a2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53053 return abuf->detached; - c0042cae: 7b9c ld a5,48(a5) + c0042e7e: 7b9c ld a5,48(a5) JS_GetTypedArrayBuffer(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53145 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53153 if (typed_array_is_detached(ctx, p)) - c0042cb0: 0047c783 lbu a5,4(a5) - c0042cb4: cb91 beqz a5,c0042cc8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53156 -} - c0042cb6: 6406 ld s0,64(sp) - c0042cb8: 60a6 ld ra,72(sp) - c0042cba: 74e2 ld s1,56(sp) - c0042cbc: 7942 ld s2,48(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53146 + c0042e80: 0047c783 lbu a5,4(a5) + c0042e84: cb91 beqz a5,c0042e98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53164 +} + c0042e86: 6406 ld s0,64(sp) + c0042e88: 60a6 ld ra,72(sp) + c0042e8a: 74e2 ld s1,56(sp) + c0042e8c: 7942 ld s2,48(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53154 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0042cbe: 854e mv a0,s3 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53156 + c0042e8e: 854e mv a0,s3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53164 } - c0042cc0: 79a2 ld s3,40(sp) - c0042cc2: 6161 addi sp,sp,80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53146 + c0042e90: 79a2 ld s3,40(sp) + c0042e92: 6161 addi sp,sp,80 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53154 return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); - c0042cc4: 80ed106f j c0013cd2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53148 + c0042e94: f2dd006f j c0013dc0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53156 if (pbyte_offset) - c0042cc8: 00090663 beqz s2,c0042cd4 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53149 + c0042e98: 00090663 beqz s2,c0042ea4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53157 *pbyte_offset = ta->offset; - c0042ccc: 02066783 lwu a5,32(a2) - c0042cd0: 00f93023 sd a5,0(s2) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53150 + c0042e9c: 02066783 lwu a5,32(a2) + c0042ea0: 00f93023 sd a5,0(s2) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53158 if (pbyte_length) - c0042cd4: c481 beqz s1,c0042cdc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53151 + c0042ea4: c481 beqz s1,c0042eac +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53159 *pbyte_length = ta->length; - c0042cd6: 02466783 lwu a5,36(a2) - c0042cda: e09c sd a5,0(s1) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53152 + c0042ea6: 02466783 lwu a5,36(a2) + c0042eaa: e09c sd a5,0(s1) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53160 if (pbytes_per_element) { - c0042cdc: c005 beqz s0,c0042cfc -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53153 + c0042eac: c005 beqz s0,c0042ecc +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53161 *pbytes_per_element = 1 << typed_array_size_log2(p->class_id); - c0042cde: 00655783 lhu a5,6(a0) - c0042ce2: feb7871b addiw a4,a5,-21 - c0042ce6: 00024797 auipc a5,0x24 - c0042cea: 25278793 addi a5,a5,594 # c0066f38 - c0042cee: 97ba add a5,a5,a4 - c0042cf0: 0007c703 lbu a4,0(a5) - c0042cf4: 4785 li a5,1 - c0042cf6: 00e797bb sllw a5,a5,a4 - c0042cfa: e01c sd a5,0(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53155 + c0042eae: 00655783 lhu a5,6(a0) + c0042eb2: feb7871b addiw a4,a5,-21 + c0042eb6: 00024797 auipc a5,0x24 + c0042eba: 2e278793 addi a5,a5,738 # c0067198 + c0042ebe: 97ba add a5,a5,a4 + c0042ec0: 0007c703 lbu a4,0(a5) + c0042ec4: 4785 li a5,1 + c0042ec6: 00e797bb sllw a5,a5,a4 + c0042eca: e01c sd a5,0(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:53163 return JS_DupValue(ctx, JS_MKPTR(JS_TAG_OBJECT, ta->buffer)); - c0042cfc: 6e1c ld a5,24(a2) + c0042ecc: 6e1c ld a5,24(a2) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 - c0042cfe: 4398 lw a4,0(a5) - c0042d00: e83e sd a5,16(sp) - c0042d02: 2705 addiw a4,a4,1 - c0042d04: c398 sw a4,0(a5) + c0042ece: 4398 lw a4,0(a5) + c0042ed0: e83e sd a5,16(sp) + c0042ed2: 2705 addiw a4,a4,1 + c0042ed4: c398 sw a4,0(a5) JS_GetTypedArrayBuffer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c0042d06: 57fd li a5,-1 - c0042d08: b779 j c0042c96 + c0042ed6: 57fd li a5,-1 + c0042ed8: b779 j c0042e66 -00000000c0042d0a : +00000000c0042eda : JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55588 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55596 } #endif /* CONFIG_ATOMICS */ void JS_AddIntrinsicTypedArrays(JSContext *ctx) { - c0042d0a: 710d addi sp,sp,-352 - c0042d0c: ee86 sd ra,344(sp) - c0042d0e: eaa2 sd s0,336(sp) - c0042d10: e6a6 sd s1,328(sp) - c0042d12: 842a mv s0,a0 - c0042d14: fa52 sd s4,304(sp) - c0042d16: f656 sd s5,296(sp) - c0042d18: f25a sd s6,288(sp) - c0042d1a: ee5e sd s7,280(sp) - c0042d1c: ea62 sd s8,272(sp) - c0042d1e: e2ca sd s2,320(sp) - c0042d20: fe4e sd s3,312(sp) - c0042d22: e666 sd s9,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55593 + c0042eda: 710d addi sp,sp,-352 + c0042edc: ee86 sd ra,344(sp) + c0042ede: eaa2 sd s0,336(sp) + c0042ee0: e6a6 sd s1,328(sp) + c0042ee2: 842a mv s0,a0 + c0042ee4: fa52 sd s4,304(sp) + c0042ee6: f656 sd s5,296(sp) + c0042ee8: f25a sd s6,288(sp) + c0042eea: ee5e sd s7,280(sp) + c0042eec: ea62 sd s8,272(sp) + c0042eee: e2ca sd s2,320(sp) + c0042ef0: fe4e sd s3,312(sp) + c0042ef2: e666 sd s9,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55601 JSValue typed_array_base_proto, typed_array_base_func; JSValueConst array_buffer_func, shared_array_buffer_func; int i; ctx->class_proto[JS_CLASS_ARRAY_BUFFER] = JS_NewObject(ctx); - c0042d24: 864d40ef jal ra,c0016d88 - c0042d28: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55594 + c0042ef4: 864d40ef jal ra,c0016f58 + c0042ef8: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55602 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY_BUFFER], - c0042d2a: 470d li a4,3 - c0042d2c: 0001f697 auipc a3,0x1f - c0042d30: 4c468693 addi a3,a3,1220 # c00621f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55593 + c0042efa: 470d li a4,3 + c0042efc: 0001f697 auipc a3,0x1f + c0042f00: 55468693 addi a3,a3,1364 # c0062450 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55601 ctx->class_proto[JS_CLASS_ARRAY_BUFFER] = JS_NewObject(ctx); - c0042d34: 12a7b823 sd a0,304(a5) - c0042d38: 12b7bc23 sd a1,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55594 + c0042f04: 12a7b823 sd a0,304(a5) + c0042f08: 12b7bc23 sd a1,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55602 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY_BUFFER], - c0042d3c: 603c ld a5,64(s0) - c0042d3e: 8522 mv a0,s0 - c0042d40: 00024b97 auipc s7,0x24 - c0042d44: 1f8b8b93 addi s7,s7,504 # c0066f38 - c0042d48: 1307b583 ld a1,304(a5) - c0042d4c: 1387b603 ld a2,312(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55633 + c0042f0c: 603c ld a5,64(s0) + c0042f0e: 8522 mv a0,s0 + c0042f10: 00024b97 auipc s7,0x24 + c0042f14: 288b8b93 addi s7,s7,648 # c0067198 + c0042f18: 1307b583 ld a1,304(a5) + c0042f1c: 1387b603 ld a2,312(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 typed_array_base_func = JS_NewCFunction(ctx, js_typed_array_base_constructor, "TypedArray", 0); JS_SetPropertyFunctionList(ctx, typed_array_base_func, js_typed_array_base_funcs, countof(js_typed_array_base_funcs)); JS_SetConstructor(ctx, typed_array_base_func, typed_array_base_proto); - c0042d50: 44d5 li s1,21 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 + c0042f20: 44d5 li s1,21 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55649 JSValue func_obj; char buf[ATOM_GET_STR_BUF_SIZE]; const char *name; ctx->class_proto[i] = JS_NewObjectProto(ctx, typed_array_base_proto); JS_DefinePropertyValueStr(ctx, ctx->class_proto[i], - c0042d52: 4b05 li s6,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55594 + c0042f22: 4b05 li s6,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55602 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_ARRAY_BUFFER], - c0042d54: f2df20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55598 + c0042f24: f2df20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 array_buffer_func = JS_NewGlobalCConstructorOnly(ctx, "ArrayBuffer", - c0042d58: 603c ld a5,64(s0) - c0042d5a: fffdb617 auipc a2,0xfffdb - c0042d5e: 70860613 addi a2,a2,1800 # c001e462 - c0042d62: 0001e597 auipc a1,0x1e - c0042d66: 17658593 addi a1,a1,374 # c0060ed8 - c0042d6a: 1307b683 ld a3,304(a5) - c0042d6e: 1387b703 ld a4,312(a5) - c0042d72: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 + c0042f28: 603c ld a5,64(s0) + c0042f2a: fffdb617 auipc a2,0xfffdb + c0042f2e: 70860613 addi a2,a2,1800 # c001e632 + c0042f32: 0001e597 auipc a1,0x1e + c0042f36: 20658593 addi a1,a1,518 # c0061138 + c0042f3a: 1307b683 ld a3,304(a5) + c0042f3e: 1387b703 ld a4,312(a5) + c0042f42: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55649 JS_DefinePropertyValueStr(ctx, ctx->class_proto[i], - c0042d74: 0001ea17 auipc s4,0x1e - c0042d78: 18ca0a13 addi s4,s4,396 # c0060f00 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55598 + c0042f44: 0001ea17 auipc s4,0x1e + c0042f48: 21ca0a13 addi s4,s4,540 # c0061160 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 array_buffer_func = JS_NewGlobalCConstructorOnly(ctx, "ArrayBuffer", - c0042d7c: d39e60ef jal ra,c0029ab4 - c0042d80: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55601 + c0042f4c: d39e60ef jal ra,c0029c84 + c0042f50: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55609 JS_SetPropertyFunctionList(ctx, array_buffer_func, - c0042d82: 4709 li a4,2 - c0042d84: 0001f697 auipc a3,0x1f - c0042d88: 42c68693 addi a3,a3,1068 # c00621b0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55598 + c0042f52: 4709 li a4,2 + c0042f54: 0001f697 auipc a3,0x1f + c0042f58: 4bc68693 addi a3,a3,1212 # c0062410 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 array_buffer_func = JS_NewGlobalCConstructorOnly(ctx, "ArrayBuffer", - c0042d8c: f02a sd a0,32(sp) - c0042d8e: f42e sd a1,40(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55601 + c0042f5c: f02a sd a0,32(sp) + c0042f5e: f42e sd a1,40(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55609 JS_SetPropertyFunctionList(ctx, array_buffer_func, - c0042d90: 85aa mv a1,a0 - c0042d92: 8522 mv a0,s0 - c0042d94: eedf20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55605 + c0042f60: 85aa mv a1,a0 + c0042f62: 8522 mv a0,s0 + c0042f64: eedf20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55613 ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER] = JS_NewObject(ctx); - c0042d98: 8522 mv a0,s0 - c0042d9a: fefd30ef jal ra,c0016d88 - c0042d9e: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 + c0042f68: 8522 mv a0,s0 + c0042f6a: fefd30ef jal ra,c0016f58 + c0042f6e: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55614 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER], - c0042da0: 470d li a4,3 - c0042da2: 00023697 auipc a3,0x23 - c0042da6: 9c668693 addi a3,a3,-1594 # c0065768 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55605 + c0042f70: 470d li a4,3 + c0042f72: 00023697 auipc a3,0x23 + c0042f76: a5668693 addi a3,a3,-1450 # c00659c8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55613 ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER] = JS_NewObject(ctx); - c0042daa: 14a7b023 sd a0,320(a5) - c0042dae: 14b7b423 sd a1,328(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 + c0042f7a: 14a7b023 sd a0,320(a5) + c0042f7e: 14b7b423 sd a1,328(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55614 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER], - c0042db2: 603c ld a5,64(s0) - c0042db4: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55647 + c0042f82: 603c ld a5,64(s0) + c0042f84: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55655 "BYTES_PER_ELEMENT", JS_NewInt32(ctx, 1 << typed_array_size_log2(i)), 0); name = JS_AtomGetStr(ctx, buf, sizeof(buf), JS_ATOM_Uint8ClampedArray + i - JS_CLASS_UINT8C_ARRAY); func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_typed_array_constructor, - c0042db6: ffff8a97 auipc s5,0xffff8 - c0042dba: 31aa8a93 addi s5,s5,794 # c003b0d0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 + c0042f86: ffff8a97 auipc s5,0xffff8 + c0042f8a: 31aa8a93 addi s5,s5,794 # c003b2a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55614 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER], - c0042dbe: 1407b583 ld a1,320(a5) - c0042dc2: 1487b603 ld a2,328(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55635 + c0042f8e: 1407b583 ld a1,320(a5) + c0042f92: 1487b603 ld a2,328(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55643 for(i = JS_CLASS_UINT8C_ARRAY; i < JS_CLASS_UINT8C_ARRAY + JS_TYPED_ARRAY_COUNT; i++) { - c0042dc6: 02000c13 li s8,32 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55606 + c0042f96: 02000c13 li s8,32 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55614 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_SHARED_ARRAY_BUFFER], - c0042dca: eb7f20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55610 + c0042f9a: eb7f20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55618 shared_array_buffer_func = JS_NewGlobalCConstructorOnly(ctx, "SharedArrayBuffer", - c0042dce: 603c ld a5,64(s0) - c0042dd0: fffdb617 auipc a2,0xfffdb - c0042dd4: 65460613 addi a2,a2,1620 # c001e424 - c0042dd8: 0001e597 auipc a1,0x1e - c0042ddc: 11058593 addi a1,a1,272 # c0060ee8 - c0042de0: 1407b683 ld a3,320(a5) - c0042de4: 1487b703 ld a4,328(a5) - c0042de8: 8522 mv a0,s0 - c0042dea: ccbe60ef jal ra,c0029ab4 - c0042dee: 862e mv a2,a1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55613 + c0042f9e: 603c ld a5,64(s0) + c0042fa0: fffdb617 auipc a2,0xfffdb + c0042fa4: 65460613 addi a2,a2,1620 # c001e5f4 + c0042fa8: 0001e597 auipc a1,0x1e + c0042fac: 1a058593 addi a1,a1,416 # c0061148 + c0042fb0: 1407b683 ld a3,320(a5) + c0042fb4: 1487b703 ld a4,328(a5) + c0042fb8: 8522 mv a0,s0 + c0042fba: ccbe60ef jal ra,c0029c84 + c0042fbe: 862e mv a2,a1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55621 JS_SetPropertyFunctionList(ctx, shared_array_buffer_func, - c0042df0: 4705 li a4,1 - c0042df2: 00023697 auipc a3,0x23 - c0042df6: 95668693 addi a3,a3,-1706 # c0065748 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55610 + c0042fc0: 4705 li a4,1 + c0042fc2: 00023697 auipc a3,0x23 + c0042fc6: 9e668693 addi a3,a3,-1562 # c00659a8 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55618 shared_array_buffer_func = JS_NewGlobalCConstructorOnly(ctx, "SharedArrayBuffer", - c0042dfa: f82a sd a0,48(sp) - c0042dfc: fc2e sd a1,56(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55613 + c0042fca: f82a sd a0,48(sp) + c0042fcc: fc2e sd a1,56(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55621 JS_SetPropertyFunctionList(ctx, shared_array_buffer_func, - c0042dfe: 85aa mv a1,a0 - c0042e00: 8522 mv a0,s0 - c0042e02: e7ff20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55617 + c0042fce: 85aa mv a1,a0 + c0042fd0: 8522 mv a0,s0 + c0042fd2: e7ff20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55625 typed_array_base_proto = JS_NewObject(ctx); - c0042e06: 8522 mv a0,s0 - c0042e08: f81d30ef jal ra,c0016d88 - c0042e0c: 862e mv a2,a1 - c0042e0e: e02a sd a0,0(sp) - c0042e10: e42e sd a1,8(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55618 + c0042fd6: 8522 mv a0,s0 + c0042fd8: f81d30ef jal ra,c0016f58 + c0042fdc: 862e mv a2,a1 + c0042fde: e02a sd a0,0(sp) + c0042fe0: e42e sd a1,8(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55626 JS_SetPropertyFunctionList(ctx, typed_array_base_proto, - c0042e12: 02400713 li a4,36 - c0042e16: 85aa mv a1,a0 - c0042e18: 00023697 auipc a3,0x23 - c0042e1c: 67068693 addi a3,a3,1648 # c0066488 - c0042e20: 8522 mv a0,s0 - c0042e22: e5ff20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55623 + c0042fe2: 02400713 li a4,36 + c0042fe6: 85aa mv a1,a0 + c0042fe8: 00023697 auipc a3,0x23 + c0042fec: 70068693 addi a3,a3,1792 # c00666e8 + c0042ff0: 8522 mv a0,s0 + c0042ff2: e5ff20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55631 JSValue obj = JS_GetProperty(ctx, ctx->class_proto[JS_CLASS_ARRAY], JS_ATOM_toString); - c0042e26: 603c ld a5,64(s0) + c0042ff6: 603c ld a5,64(s0) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c0042e28: 4801 li a6,0 - c0042e2a: 03800693 li a3,56 - c0042e2e: 7398 ld a4,32(a5) - c0042e30: 8522 mv a0,s0 - c0042e32: e1ba sd a4,192(sp) - c0042e34: 779c ld a5,40(a5) - c0042e36: 85ba mv a1,a4 - c0042e38: 863e mv a2,a5 - c0042e3a: e5be sd a5,200(sp) - c0042e3c: a07ce0ef jal ra,c0011842 - c0042e40: 87ae mv a5,a1 + c0042ff8: 4801 li a6,0 + c0042ffa: 03800693 li a3,56 + c0042ffe: 7398 ld a4,32(a5) + c0043000: 8522 mv a0,s0 + c0043002: e1ba sd a4,192(sp) + c0043004: 779c ld a5,40(a5) + c0043006: 85ba mv a1,a4 + c0043008: 863e mv a2,a5 + c004300a: e5be sd a5,200(sp) + c004300c: 925ce0ef jal ra,c0011930 + c0043010: 87ae mv a5,a1 JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55625 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55633 JS_DefinePropertyValue(ctx, typed_array_base_proto, JS_ATOM_toString, obj, - c0042e42: 6622 ld a2,8(sp) + c0043012: 6622 ld a2,8(sp) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0042e44: e52e sd a1,136(sp) - c0042e46: e4ae sd a1,72(sp) + c0043014: e52e sd a1,136(sp) + c0043016: e4ae sd a1,72(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55625 - c0042e48: 6582 ld a1,0(sp) - c0042e4a: 480d li a6,3 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55633 + c0043018: 6582 ld a1,0(sp) + c004301a: 480d li a6,3 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c0042e4c: 872a mv a4,a0 - c0042e4e: e12a sd a0,128(sp) - c0042e50: e0aa sd a0,64(sp) + c004301c: 872a mv a4,a0 + c004301e: e12a sd a0,128(sp) + c0043020: e0aa sd a0,64(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55625 - c0042e52: 03800693 li a3,56 - c0042e56: 8522 mv a0,s0 - c0042e58: 95ed00ef jal ra,c0012fb6 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55633 + c0043022: 03800693 li a3,56 + c0043026: 8522 mv a0,s0 + c0043028: 87cd00ef jal ra,c00130a4 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 return JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_generic, 0); - c0042e5c: 4781 li a5,0 - c0042e5e: 4701 li a4,0 - c0042e60: 4681 li a3,0 - c0042e62: 0001b617 auipc a2,0x1b - c0042e66: e1660613 addi a2,a2,-490 # c005dc78 - c0042e6a: fffd1597 auipc a1,0xfffd1 - c0042e6e: 44458593 addi a1,a1,1092 # c00142ae - c0042e72: 8522 mv a0,s0 - c0042e74: b72e60ef jal ra,c00291e6 - c0042e78: 862e mv a2,a1 - c0042e7a: f92a sd a0,176(sp) - c0042e7c: fd2e sd a1,184(sp) - c0042e7e: e82a sd a0,16(sp) - c0042e80: ec2e sd a1,24(sp) + c004302c: 4781 li a5,0 + c004302e: 4701 li a4,0 + c0043030: 4681 li a3,0 + c0043032: 0001b617 auipc a2,0x1b + c0043036: e7660613 addi a2,a2,-394 # c005dea8 + c004303a: fffd1597 auipc a1,0xfffd1 + c004303e: 36258593 addi a1,a1,866 # c001439c + c0043042: 8522 mv a0,s0 + c0043044: b72e60ef jal ra,c00293b6 + c0043048: 862e mv a2,a1 + c004304a: f92a sd a0,176(sp) + c004304c: fd2e sd a1,184(sp) + c004304e: e82a sd a0,16(sp) + c0043050: ec2e sd a1,24(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55630 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55638 JS_SetPropertyFunctionList(ctx, typed_array_base_func, - c0042e82: 470d li a4,3 - c0042e84: 85aa mv a1,a0 - c0042e86: 00023697 auipc a3,0x23 - c0042e8a: 5a268693 addi a3,a3,1442 # c0066428 - c0042e8e: 8522 mv a0,s0 - c0042e90: df1f20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55633 + c0043052: 470d li a4,3 + c0043054: 85aa mv a1,a0 + c0043056: 00023697 auipc a3,0x23 + c004305a: 63268693 addi a3,a3,1586 # c0066688 + c004305e: 8522 mv a0,s0 + c0043060: df1f20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 JS_SetConstructor(ctx, typed_array_base_func, typed_array_base_proto); - c0042e94: 6682 ld a3,0(sp) - c0042e96: 6722 ld a4,8(sp) - c0042e98: 65c2 ld a1,16(sp) - c0042e9a: 6662 ld a2,24(sp) - c0042e9c: 8522 mv a0,s0 - c0042e9e: b7fe60ef jal ra,c0029a1c -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55640 (discriminator 3) + c0043064: 6682 ld a3,0(sp) + c0043066: 6722 ld a4,8(sp) + c0043068: 65c2 ld a1,16(sp) + c004306a: 6662 ld a2,24(sp) + c004306c: 8522 mv a0,s0 + c004306e: b7fe60ef jal ra,c0029bec +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55648 (discriminator 3) ctx->class_proto[i] = JS_NewObjectProto(ctx, typed_array_base_proto); - c0042ea2: 6622 ld a2,8(sp) - c0042ea4: 6582 ld a1,0(sp) - c0042ea6: 8522 mv a0,s0 - c0042ea8: 00449c93 slli s9,s1,0x4 - c0042eac: e83d30ef jal ra,c0016d2e - c0042eb0: 603c ld a5,64(s0) + c0043072: 6622 ld a2,8(sp) + c0043074: 6582 ld a1,0(sp) + c0043076: 8522 mv a0,s0 + c0043078: 00449c93 slli s9,s1,0x4 + c004307c: e83d30ef jal ra,c0016efe + c0043080: 603c ld a5,64(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 3) return JS_MKVAL(JS_TAG_INT, val); - c0042eb2: f102 sd zero,160(sp) + c0043082: f102 sd zero,160(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55649 (discriminator 3) JS_DefinePropertyValueStr(ctx, ctx->class_proto[i], - c0042eb4: 4801 li a6,0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55640 (discriminator 3) + c0043084: 4801 li a6,0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55648 (discriminator 3) ctx->class_proto[i] = JS_NewObjectProto(ctx, typed_array_base_proto); - c0042eb6: 97e6 add a5,a5,s9 - c0042eb8: e388 sd a0,0(a5) - c0042eba: e78c sd a1,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55643 (discriminator 3) + c0043086: 97e6 add a5,a5,s9 + c0043088: e388 sd a0,0(a5) + c004308a: e78c sd a1,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55651 (discriminator 3) JS_NewInt32(ctx, 1 << typed_array_size_log2(i)), - c0042ebc: 000bc903 lbu s2,0(s7) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 (discriminator 3) + c004308c: 000bc903 lbu s2,0(s7) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55649 (discriminator 3) JS_DefinePropertyValueStr(ctx, ctx->class_proto[i], - c0042ec0: 6030 ld a2,64(s0) - c0042ec2: 4781 li a5,0 - c0042ec4: 012b193b sllw s2,s6,s2 - c0042ec8: 9666 add a2,a2,s9 - c0042eca: d14a sw s2,160(sp) - c0042ecc: 770a ld a4,160(sp) - c0042ece: 620c ld a1,0(a2) - c0042ed0: 6610 ld a2,8(a2) - c0042ed2: 86d2 mv a3,s4 - c0042ed4: 8522 mv a0,s0 - c0042ed6: f0ba sd a4,96(sp) + c0043090: 6030 ld a2,64(s0) + c0043092: 4781 li a5,0 + c0043094: 012b193b sllw s2,s6,s2 + c0043098: 9666 add a2,a2,s9 + c004309a: d14a sw s2,160(sp) + c004309c: 770a ld a4,160(sp) + c004309e: 620c ld a1,0(a2) + c00430a0: 6610 ld a2,8(a2) + c00430a2: 86d2 mv a3,s4 + c00430a4: 8522 mv a0,s0 + c00430a6: f0ba sd a4,96(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 3) - c0042ed8: f502 sd zero,168(sp) - c0042eda: f482 sd zero,104(sp) + c00430a8: f502 sd zero,168(sp) + c00430aa: f482 sd zero,104(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55641 (discriminator 3) - c0042edc: 87de60ef jal ra,c0029758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55645 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55649 (discriminator 3) + c00430ac: 87de60ef jal ra,c0029928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55653 (discriminator 3) name = JS_AtomGetStr(ctx, buf, sizeof(buf), - c0042ee0: 08e4861b addiw a2,s1,142 - c0042ee4: 018c addi a1,sp,192 - c0042ee6: 8522 mv a0,s0 - c0042ee8: f82c30ef jal ra,c000666a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55647 (discriminator 3) + c00430b0: 08e4861b addiw a2,s1,142 + c00430b4: 018c addi a1,sp,192 + c00430b6: 8522 mv a0,s0 + c00430b8: ea0c30ef jal ra,c0006758 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55655 (discriminator 3) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_typed_array_constructor, - c0042eec: 6842 ld a6,16(sp) - c0042eee: 68e2 ld a7,24(sp) - c0042ef0: 0004879b sext.w a5,s1 - c0042ef4: 862a mv a2,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55645 (discriminator 3) + c00430bc: 6842 ld a6,16(sp) + c00430be: 68e2 ld a7,24(sp) + c00430c0: 0004879b sext.w a5,s1 + c00430c4: 862a mv a2,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55653 (discriminator 3) name = JS_AtomGetStr(ctx, buf, sizeof(buf), - c0042ef6: 89aa mv s3,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55647 (discriminator 3) + c00430c6: 89aa mv s3,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55655 (discriminator 3) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_typed_array_constructor, - c0042ef8: 470d li a4,3 - c0042efa: 468d li a3,3 - c0042efc: 85d6 mv a1,s5 - c0042efe: 8522 mv a0,s0 - c0042f00: 830e60ef jal ra,c0028f30 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55650 (discriminator 3) + c00430c8: 470d li a4,3 + c00430ca: 468d li a3,3 + c00430cc: 85d6 mv a1,s5 + c00430ce: 8522 mv a0,s0 + c00430d0: 830e60ef jal ra,c0029100 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55658 (discriminator 3) name, 3, JS_CFUNC_constructor_magic, i, typed_array_base_func); JS_NewGlobalCConstructor2(ctx, func_obj, name, ctx->class_proto[i]); - c0042f04: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55647 (discriminator 3) + c00430d4: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55655 (discriminator 3) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_typed_array_constructor, - c0042f06: 862e mv a2,a1 - c0042f08: e8aa sd a0,80(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55650 (discriminator 3) + c00430d6: 862e mv a2,a1 + c00430d8: e8aa sd a0,80(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55658 (discriminator 3) JS_NewGlobalCConstructor2(ctx, func_obj, name, ctx->class_proto[i]); - c0042f0a: 97e6 add a5,a5,s9 - c0042f0c: 6398 ld a4,0(a5) - c0042f0e: 679c ld a5,8(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55647 (discriminator 3) + c00430da: 97e6 add a5,a5,s9 + c00430dc: 6398 ld a4,0(a5) + c00430de: 679c ld a5,8(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55655 (discriminator 3) func_obj = JS_NewCFunction3(ctx, (JSCFunction *)js_typed_array_constructor, - c0042f10: ecae sd a1,88(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55650 (discriminator 3) + c00430e0: ecae sd a1,88(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55658 (discriminator 3) JS_NewGlobalCConstructor2(ctx, func_obj, name, ctx->class_proto[i]); - c0042f12: 86ce mv a3,s3 - c0042f14: 85aa mv a1,a0 - c0042f16: 8522 mv a0,s0 - c0042f18: b11e60ef jal ra,c0029a28 + c00430e2: 86ce mv a3,s3 + c00430e4: 85aa mv a1,a0 + c00430e6: 8522 mv a0,s0 + c00430e8: b11e60ef jal ra,c0029bf8 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 3) - c0042f1c: e902 sd zero,144(sp) - c0042f1e: c94a sw s2,144(sp) - c0042f20: 674a ld a4,144(sp) + c00430ec: e902 sd zero,144(sp) + c00430ee: c94a sw s2,144(sp) + c00430f0: 674a ld a4,144(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55651 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55659 (discriminator 3) JS_DefinePropertyValueStr(ctx, func_obj, - c0042f22: 65c6 ld a1,80(sp) - c0042f24: 6666 ld a2,88(sp) - c0042f26: 4801 li a6,0 - c0042f28: 4781 li a5,0 - c0042f2a: 86d2 mv a3,s4 - c0042f2c: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55635 (discriminator 3) + c00430f2: 65c6 ld a1,80(sp) + c00430f4: 6666 ld a2,88(sp) + c00430f6: 4801 li a6,0 + c00430f8: 4781 li a5,0 + c00430fa: 86d2 mv a3,s4 + c00430fc: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55643 (discriminator 3) for(i = JS_CLASS_UINT8C_ARRAY; i < JS_CLASS_UINT8C_ARRAY + JS_TYPED_ARRAY_COUNT; i++) { - c0042f2e: 0485 addi s1,s1,1 + c00430fe: 0485 addi s1,s1,1 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 (discriminator 3) - c0042f30: ed02 sd zero,152(sp) - c0042f32: f8ba sd a4,112(sp) - c0042f34: fc82 sd zero,120(sp) + c0043100: ed02 sd zero,152(sp) + c0043102: f8ba sd a4,112(sp) + c0043104: fc82 sd zero,120(sp) JS_AddIntrinsicTypedArrays(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55635 (discriminator 3) - c0042f36: 0b85 addi s7,s7,1 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55651 (discriminator 3) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55643 (discriminator 3) + c0043106: 0b85 addi s7,s7,1 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55659 (discriminator 3) JS_DefinePropertyValueStr(ctx, func_obj, - c0042f38: 821e60ef jal ra,c0029758 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55635 (discriminator 3) + c0043108: 821e60ef jal ra,c0029928 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55643 (discriminator 3) for(i = JS_CLASS_UINT8C_ARRAY; i < JS_CLASS_UINT8C_ARRAY + JS_TYPED_ARRAY_COUNT; i++) { - c0042f3c: f78493e3 bne s1,s8,c0042ea2 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55656 + c004310c: f78493e3 bne s1,s8,c0043072 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55664 "BYTES_PER_ELEMENT", JS_NewInt32(ctx, 1 << typed_array_size_log2(i)), 0); } JS_FreeValue(ctx, typed_array_base_proto); - c0042f40: 6582 ld a1,0(sp) - c0042f42: 6622 ld a2,8(sp) - c0042f44: 8522 mv a0,s0 - c0042f46: bf3c40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55657 + c0043110: 6582 ld a1,0(sp) + c0043112: 6622 ld a2,8(sp) + c0043114: 8522 mv a0,s0 + c0043116: b11c40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55665 JS_FreeValue(ctx, typed_array_base_func); - c0042f4a: 6662 ld a2,24(sp) - c0042f4c: 65c2 ld a1,16(sp) - c0042f4e: 8522 mv a0,s0 - c0042f50: be9c40ef jal ra,c0007b38 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55660 + c004311a: 6662 ld a2,24(sp) + c004311c: 65c2 ld a1,16(sp) + c004311e: 8522 mv a0,s0 + c0043120: b07c40ef jal ra,c0007c26 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55668 /* DataView */ ctx->class_proto[JS_CLASS_DATAVIEW] = JS_NewObject(ctx); - c0042f54: 8522 mv a0,s0 - c0042f56: e33d30ef jal ra,c0016d88 - c0042f5a: 603c ld a5,64(s0) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55661 + c0043124: 8522 mv a0,s0 + c0043126: e33d30ef jal ra,c0016f58 + c004312a: 603c ld a5,64(s0) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55669 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_DATAVIEW], - c0042f5c: 4761 li a4,24 - c0042f5e: 00020697 auipc a3,0x20 - c0042f62: 39268693 addi a3,a3,914 # c00632f0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55660 + c004312c: 4761 li a4,24 + c004312e: 00020697 auipc a3,0x20 + c0043132: 42268693 addi a3,a3,1058 # c0063550 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55668 ctx->class_proto[JS_CLASS_DATAVIEW] = JS_NewObject(ctx); - c0042f66: 20a7b023 sd a0,512(a5) - c0042f6a: 20b7b423 sd a1,520(a5) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55661 + c0043136: 20a7b023 sd a0,512(a5) + c004313a: 20b7b423 sd a1,520(a5) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55669 JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_DATAVIEW], - c0042f6e: 603c ld a5,64(s0) - c0042f70: 8522 mv a0,s0 - c0042f72: 2007b583 ld a1,512(a5) - c0042f76: 2087b603 ld a2,520(a5) - c0042f7a: d07f20ef jal ra,c0035c80 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55664 + c004313e: 603c ld a5,64(s0) + c0043140: 8522 mv a0,s0 + c0043142: 2007b583 ld a1,512(a5) + c0043146: 2087b603 ld a2,520(a5) + c004314a: d07f20ef jal ra,c0035e50 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55672 js_dataview_proto_funcs, countof(js_dataview_proto_funcs)); JS_NewGlobalCConstructorOnly(ctx, "DataView", - c0042f7e: 603c ld a5,64(s0) - c0042f80: 8522 mv a0,s0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55671 + c004314e: 603c ld a5,64(s0) + c0043150: 8522 mv a0,s0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55679 ctx->class_proto[JS_CLASS_DATAVIEW]); /* Atomics */ #ifdef CONFIG_ATOMICS JS_AddIntrinsicAtomics(ctx); #endif } - c0042f82: 6456 ld s0,336(sp) - c0042f84: 60f6 ld ra,344(sp) - c0042f86: 64b6 ld s1,328(sp) - c0042f88: 6916 ld s2,320(sp) - c0042f8a: 79f2 ld s3,312(sp) - c0042f8c: 7a52 ld s4,304(sp) - c0042f8e: 7ab2 ld s5,296(sp) - c0042f90: 7b12 ld s6,288(sp) - c0042f92: 6bf2 ld s7,280(sp) - c0042f94: 6c52 ld s8,272(sp) - c0042f96: 6cb2 ld s9,264(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55664 + c0043152: 6456 ld s0,336(sp) + c0043154: 60f6 ld ra,344(sp) + c0043156: 64b6 ld s1,328(sp) + c0043158: 6916 ld s2,320(sp) + c004315a: 79f2 ld s3,312(sp) + c004315c: 7a52 ld s4,304(sp) + c004315e: 7ab2 ld s5,296(sp) + c0043160: 7b12 ld s6,288(sp) + c0043162: 6bf2 ld s7,280(sp) + c0043164: 6c52 ld s8,272(sp) + c0043166: 6cb2 ld s9,264(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55672 JS_NewGlobalCConstructorOnly(ctx, "DataView", - c0042f98: 2007b683 ld a3,512(a5) - c0042f9c: 2087b703 ld a4,520(a5) - c0042fa0: fffdb617 auipc a2,0xfffdb - c0042fa4: 32660613 addi a2,a2,806 # c001e2c6 - c0042fa8: 0001b597 auipc a1,0x1b - c0042fac: cc058593 addi a1,a1,-832 # c005dc68 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55671 -} - c0042fb0: 6135 addi sp,sp,352 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55664 + c0043168: 2007b683 ld a3,512(a5) + c004316c: 2087b703 ld a4,520(a5) + c0043170: fffdb617 auipc a2,0xfffdb + c0043174: 32660613 addi a2,a2,806 # c001e496 + c0043178: 0001b597 auipc a1,0x1b + c004317c: d2058593 addi a1,a1,-736 # c005de98 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55679 +} + c0043180: 6135 addi sp,sp,352 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:55672 JS_NewGlobalCConstructorOnly(ctx, "DataView", - c0042fb2: b03e606f j c0029ab4 + c0043182: b03e606f j c0029c84 -00000000c0042fb6 : +00000000c0043186 : JS_NewContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2174 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2182 { - c0042fb6: 7179 addi sp,sp,-48 - c0042fb8: f022 sd s0,32(sp) - c0042fba: f406 sd ra,40(sp) - c0042fbc: ec26 sd s1,24(sp) -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2177 + c0043186: 7179 addi sp,sp,-48 + c0043188: f022 sd s0,32(sp) + c004318a: f406 sd ra,40(sp) + c004318c: ec26 sd s1,24(sp) +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2185 ctx = JS_NewContextRaw(rt); - c0042fbe: d8bf20ef jal ra,c0035d48 - c0042fc2: 842a mv s0,a0 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2178 + c004318e: d8bf20ef jal ra,c0035f18 + c0043192: 842a mv s0,a0 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2186 if (!ctx) - c0042fc4: 0a050e63 beqz a0,c0043080 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2181 + c0043194: 0a050e63 beqz a0,c0043250 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2189 _d("JS_NewContext: a="); _d(debug_expr); _d("\n"); //// - c0042fc8: 4645 li a2,17 - c0042fca: 0001e597 auipc a1,0x1e - c0042fce: f4e58593 addi a1,a1,-178 # c0060f18 - c0042fd2: 4505 li a0,1 - c0042fd4: 674140ef jal ra,c0057648 - c0042fd8: 000be497 auipc s1,0xbe - c0042fdc: 11848493 addi s1,s1,280 # c01010f0 - c0042fe0: 608c ld a1,0(s1) - c0042fe2: 852e mv a0,a1 - c0042fe4: e42e sd a1,8(sp) - c0042fe6: 1cb130ef jal ra,c00569b0 - c0042fea: 65a2 ld a1,8(sp) - c0042fec: 862a mv a2,a0 - c0042fee: 4505 li a0,1 - c0042ff0: 658140ef jal ra,c0057648 - c0042ff4: 4605 li a2,1 - c0042ff6: 0002e597 auipc a1,0x2e - c0042ffa: b4a58593 addi a1,a1,-1206 # c0070b40 - c0042ffe: 4505 li a0,1 - c0043000: 648140ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2183 + c0043198: 4645 li a2,17 + c004319a: 0001e597 auipc a1,0x1e + c004319e: fde58593 addi a1,a1,-34 # c0061178 + c00431a2: 4505 li a0,1 + c00431a4: 674140ef jal ra,c0057818 + c00431a8: 000be497 auipc s1,0xbe + c00431ac: f4848493 addi s1,s1,-184 # c01010f0 + c00431b0: 608c ld a1,0(s1) + c00431b2: 852e mv a0,a1 + c00431b4: e42e sd a1,8(sp) + c00431b6: 1cb130ef jal ra,c0056b80 + c00431ba: 65a2 ld a1,8(sp) + c00431bc: 862a mv a2,a0 + c00431be: 4505 li a0,1 + c00431c0: 658140ef jal ra,c0057818 + c00431c4: 4605 li a2,1 + c00431c6: 0002e597 auipc a1,0x2e + c00431ca: bda58593 addi a1,a1,-1062 # c0070da0 + c00431ce: 4505 li a0,1 + c00431d0: 648140ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2191 JS_AddIntrinsicBaseObjects(ctx); - c0043004: 8522 mv a0,s0 - c0043006: c32fe0ef jal ra,c0041438 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2184 + c00431d4: 8522 mv a0,s0 + c00431d6: c32fe0ef jal ra,c0041608 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2192 _d("JS_NewContext: b="); _d(debug_expr); _d("\n"); //// - c004300a: 4645 li a2,17 - c004300c: 0001e597 auipc a1,0x1e - c0043010: f2458593 addi a1,a1,-220 # c0060f30 - c0043014: 4505 li a0,1 - c0043016: 632140ef jal ra,c0057648 - c004301a: 608c ld a1,0(s1) - c004301c: 852e mv a0,a1 - c004301e: e42e sd a1,8(sp) - c0043020: 191130ef jal ra,c00569b0 - c0043024: 65a2 ld a1,8(sp) - c0043026: 862a mv a2,a0 - c0043028: 4505 li a0,1 - c004302a: 61e140ef jal ra,c0057648 - c004302e: 4605 li a2,1 - c0043030: 0002e597 auipc a1,0x2e - c0043034: b1058593 addi a1,a1,-1264 # c0070b40 - c0043038: 4505 li a0,1 - c004303a: 60e140ef jal ra,c0057648 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2186 + c00431da: 4645 li a2,17 + c00431dc: 0001e597 auipc a1,0x1e + c00431e0: fb458593 addi a1,a1,-76 # c0061190 + c00431e4: 4505 li a0,1 + c00431e6: 632140ef jal ra,c0057818 + c00431ea: 608c ld a1,0(s1) + c00431ec: 852e mv a0,a1 + c00431ee: e42e sd a1,8(sp) + c00431f0: 191130ef jal ra,c0056b80 + c00431f4: 65a2 ld a1,8(sp) + c00431f6: 862a mv a2,a0 + c00431f8: 4505 li a0,1 + c00431fa: 61e140ef jal ra,c0057818 + c00431fe: 4605 li a2,1 + c0043200: 0002e597 auipc a1,0x2e + c0043204: ba058593 addi a1,a1,-1120 # c0070da0 + c0043208: 4505 li a0,1 + c004320a: 60e140ef jal ra,c0057818 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2194 JS_AddIntrinsicDate(ctx); - c004303e: 8522 mv a0,s0 - c0043040: adefe0ef jal ra,c004131e + c004320e: 8522 mv a0,s0 + c0043210: adefe0ef jal ra,c00414ee JS_AddIntrinsicEval(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50328 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:50336 ctx->eval_internal = __JS_EvalInternal; - c0043044: ffffd797 auipc a5,0xffffd - c0043048: 64078793 addi a5,a5,1600 # c0040684 <__JS_EvalInternal> - c004304c: 1af43c23 sd a5,440(s0) + c0043214: ffffd797 auipc a5,0xffffd + c0043218: 64078793 addi a5,a5,1600 # c0040854 <__JS_EvalInternal> + c004321c: 1af43c23 sd a5,440(s0) JS_NewContext(): -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2188 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2196 JS_AddIntrinsicStringNormalize(ctx); - c0043050: 8522 mv a0,s0 - c0043052: fd3f20ef jal ra,c0036024 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2189 + c0043220: 8522 mv a0,s0 + c0043222: fd3f20ef jal ra,c00361f4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2197 JS_AddIntrinsicRegExp(ctx); - c0043056: 8522 mv a0,s0 - c0043058: fe1f20ef jal ra,c0036038 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2190 + c0043226: 8522 mv a0,s0 + c0043228: fe1f20ef jal ra,c0036208 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2198 JS_AddIntrinsicJSON(ctx); - c004305c: 8522 mv a0,s0 - c004305e: 890f30ef jal ra,c00360ee -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2191 + c004322c: 8522 mv a0,s0 + c004322e: 890f30ef jal ra,c00362be +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2199 JS_AddIntrinsicProxy(ctx); - c0043062: 8522 mv a0,s0 - c0043064: 8a0f30ef jal ra,c0036104 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2192 + c0043232: 8522 mv a0,s0 + c0043234: 8a0f30ef jal ra,c00362d4 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2200 JS_AddIntrinsicMapSet(ctx); - c0043068: 8522 mv a0,s0 - c004306a: 94ef30ef jal ra,c00361b8 -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2193 + c0043238: 8522 mv a0,s0 + c004323a: 94ef30ef jal ra,c0036388 +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2201 JS_AddIntrinsicTypedArrays(ctx); - c004306e: 8522 mv a0,s0 - c0043070: c9bff0ef jal ra,c0042d0a -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2194 + c004323e: 8522 mv a0,s0 + c0043240: c9bff0ef jal ra,c0042eda +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2202 JS_AddIntrinsicPromise(ctx); - c0043074: 8522 mv a0,s0 - c0043076: 818fe0ef jal ra,c004108e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2195 + c0043244: 8522 mv a0,s0 + c0043246: 818fe0ef jal ra,c004125e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2203 JS_AddIntrinsicBigInt(ctx); - c004307a: 8522 mv a0,s0 - c004307c: b12fe0ef jal ra,c004138e -/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2197 -} - c0043080: 70a2 ld ra,40(sp) - c0043082: 8522 mv a0,s0 - c0043084: 7402 ld s0,32(sp) - c0043086: 64e2 ld s1,24(sp) - c0043088: 6145 addi sp,sp,48 - c004308a: 8082 ret - -00000000c004308c : + c004324a: 8522 mv a0,s0 + c004324c: b12fe0ef jal ra,c004155e +/Users/Luppy/riscv/quickjs-nuttx/quickjs.c:2205 +} + c0043250: 70a2 ld ra,40(sp) + c0043252: 8522 mv a0,s0 + c0043254: 7402 ld s0,32(sp) + c0043256: 64e2 ld s1,24(sp) + c0043258: 6145 addi sp,sp,48 + c004325a: 8082 ret + +00000000c004325c : from_hex(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:286 if (c >= '0' && c <= '9') - c004308c: fd05061b addiw a2,a0,-48 - c0043090: 46a5 li a3,9 + c004325c: fd05061b addiw a2,a0,-48 + c0043260: 46a5 li a3,9 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:285 { - c0043092: 87aa mv a5,a0 + c0043262: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:286 if (c >= '0' && c <= '9') - c0043094: 0005071b sext.w a4,a0 - c0043098: 00c6e463 bltu a3,a2,c00430a0 + c0043264: 0005071b sext.w a4,a0 + c0043268: 00c6e463 bltu a3,a2,c0043270 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:287 return c - '0'; - c004309c: 8532 mv a0,a2 - c004309e: 8082 ret + c004326c: 8532 mv a0,a2 + c004326e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.h:288 else if (c >= 'A' && c <= 'F') - c00430a0: fbf7069b addiw a3,a4,-65 - c00430a4: 4615 li a2,5 - c00430a6: 00d66563 bltu a2,a3,c00430b0 + c0043270: fbf7069b addiw a3,a4,-65 + c0043274: 4615 li a2,5 + c0043276: 00d66563 bltu a2,a3,c0043280 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:289 return c - 'A' + 10; - c00430aa: fc95051b addiw a0,a0,-55 - c00430ae: 8082 ret + c004327a: fc95051b addiw a0,a0,-55 + c004327e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.h:290 else if (c >= 'a' && c <= 'f') - c00430b0: f9f7071b addiw a4,a4,-97 + c0043280: f9f7071b addiw a4,a4,-97 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:293 else return -1; - c00430b4: 557d li a0,-1 + c0043284: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:290 else if (c >= 'a' && c <= 'f') - c00430b6: 00e66463 bltu a2,a4,c00430be + c0043286: 00e66463 bltu a2,a4,c004328e /Users/Luppy/riscv/quickjs-nuttx/cutils.h:291 return c - 'a' + 10; - c00430ba: fa97851b addiw a0,a5,-87 + c004328a: fa97851b addiw a0,a5,-87 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:294 } - c00430be: 8082 ret + c004328e: 8082 ret -00000000c00430c0 : +00000000c0043290 : parse_digits(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:396 { @@ -183174,7 +183372,7 @@ parse_digits(): int c; p = *pp; - c00430c0: 6118 ld a4,0(a0) + c0043290: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:403 for(;;) { c = *p; @@ -183182,67 +183380,67 @@ parse_digits(): break; v = v * 10 + c - '0'; if (v >= INT32_MAX) { - c00430c2: 800006b7 lui a3,0x80000 - c00430c6: ffe6c313 xori t1,a3,-2 + c0043292: 800006b7 lui a3,0x80000 + c0043296: ffe6c313 xori t1,a3,-2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:397 v = 0; - c00430ca: 4781 li a5,0 + c004329a: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:400 if (c < '0' || c > '9') - c00430cc: 4825 li a6,9 + c004329c: 4825 li a6,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:402 v = v * 10 + c - '0'; - c00430ce: 48a9 li a7,10 + c004329e: 48a9 li a7,10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:405 if (allow_overflow) v = INT32_MAX; - c00430d0: fff6c693 not a3,a3 + c00432a0: fff6c693 not a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:399 c = *p; - c00430d4: 00074603 lbu a2,0(a4) + c00432a4: 00074603 lbu a2,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:400 if (c < '0' || c > '9') - c00430d8: fd060e1b addiw t3,a2,-48 - c00430dc: 01c86d63 bltu a6,t3,c00430f6 + c00432a8: fd060e1b addiw t3,a2,-48 + c00432ac: 01c86d63 bltu a6,t3,c00432c6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:402 v = v * 10 + c - '0'; - c00430e0: 031787b3 mul a5,a5,a7 - c00430e4: fd078793 addi a5,a5,-48 - c00430e8: 97b2 add a5,a5,a2 + c00432b0: 031787b3 mul a5,a5,a7 + c00432b4: fd078793 addi a5,a5,-48 + c00432b8: 97b2 add a5,a5,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:403 if (v >= INT32_MAX) { - c00430ea: 00f37463 bgeu t1,a5,c00430f2 + c00432ba: 00f37463 bgeu t1,a5,c00432c2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:404 if (allow_overflow) - c00430ee: c981 beqz a1,c00430fe + c00432be: c981 beqz a1,c00432ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:405 v = INT32_MAX; - c00430f0: 87b6 mv a5,a3 + c00432c0: 87b6 mv a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:409 else return -1; } p++; - c00430f2: 0705 addi a4,a4,1 + c00432c2: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:399 c = *p; - c00430f4: b7c5 j c00430d4 + c00432c4: b7c5 j c00432a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:411 } *pp = p; - c00430f6: e118 sd a4,0(a0) + c00432c6: e118 sd a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:412 return v; - c00430f8: 0007851b sext.w a0,a5 - c00430fc: 8082 ret + c00432c8: 0007851b sext.w a0,a5 + c00432cc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:407 return -1; - c00430fe: 557d li a0,-1 + c00432ce: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:413 } - c0043100: 8082 ret + c00432d0: 8082 ret -00000000c0043102 : +00000000c00432d2 : is_unicode_char(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:553 /* XXX: we use the same chars for name and value */ @@ -183251,130 +183449,130 @@ static BOOL is_unicode_char(int c) return ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || - c0043102: fd05061b addiw a2,a0,-48 - c0043106: 46a5 li a3,9 + c00432d2: fd05061b addiw a2,a0,-48 + c00432d6: 46a5 li a3,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:550 { - c0043108: 87aa mv a5,a0 + c00432d8: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:551 return ((c >= '0' && c <= '9') || - c004310a: 0005071b sext.w a4,a0 + c00432da: 0005071b sext.w a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:553 (c >= 'a' && c <= 'z') || - c004310e: 00c6ff63 bgeu a3,a2,c004312c + c00432de: 00c6ff63 bgeu a3,a2,c00432fc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:551 return ((c >= '0' && c <= '9') || - c0043112: fdf77713 andi a4,a4,-33 - c0043116: fbf7071b addiw a4,a4,-65 - c004311a: 46e5 li a3,25 + c00432e2: fdf77713 andi a4,a4,-33 + c00432e6: fbf7071b addiw a4,a4,-65 + c00432ea: 46e5 li a3,25 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:553 (c >= 'a' && c <= 'z') || - c004311c: 4505 li a0,1 + c00432ec: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:551 return ((c >= '0' && c <= '9') || - c004311e: 00e6f863 bgeu a3,a4,c004312e + c00432ee: 00e6f863 bgeu a3,a4,c00432fe /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:553 (c >= 'a' && c <= 'z') || - c0043122: fa178793 addi a5,a5,-95 - c0043126: 0017b513 seqz a0,a5 - c004312a: 8082 ret - c004312c: 4505 li a0,1 + c00432f2: fa178793 addi a5,a5,-95 + c00432f6: 0017b513 seqz a0,a5 + c00432fa: 8082 ret + c00432fc: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:555 (discriminator 5) (c == '_')); } - c004312e: 8082 ret + c00432fe: 8082 ret -00000000c0043130 : +00000000c0043300 : re_emit_op_u8(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:363 { - c0043130: 1101 addi sp,sp,-32 + c0043300: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:364 dbuf_putc(&s->byte_code, op); - c0043132: 0ff5f593 zext.b a1,a1 + c0043302: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:363 { - c0043136: e822 sd s0,16(sp) - c0043138: e426 sd s1,8(sp) - c004313a: ec06 sd ra,24(sp) - c004313c: 842a mv s0,a0 - c004313e: 84b2 mv s1,a2 + c0043306: e822 sd s0,16(sp) + c0043308: e426 sd s1,8(sp) + c004330a: ec06 sd ra,24(sp) + c004330c: 842a mv s0,a0 + c004330e: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:364 dbuf_putc(&s->byte_code, op); - c0043140: 403040ef jal ra,c0047d42 + c0043310: 403040ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:365 dbuf_putc(&s->byte_code, val); - c0043144: 8522 mv a0,s0 + c0043314: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:366 } - c0043146: 6442 ld s0,16(sp) - c0043148: 60e2 ld ra,24(sp) + c0043316: 6442 ld s0,16(sp) + c0043318: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:365 dbuf_putc(&s->byte_code, val); - c004314a: 0ff4f593 zext.b a1,s1 + c004331a: 0ff4f593 zext.b a1,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:366 } - c004314e: 64a2 ld s1,8(sp) - c0043150: 6105 addi sp,sp,32 + c004331e: 64a2 ld s1,8(sp) + c0043320: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:365 dbuf_putc(&s->byte_code, val); - c0043152: 3f10406f j c0047d42 + c0043322: 3f10406f j c0047f12 -00000000c0043156 : +00000000c0043326 : dbuf_insert(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:112 { - c0043156: 7179 addi sp,sp,-48 - c0043158: f022 sd s0,32(sp) - c004315a: ec26 sd s1,24(sp) - c004315c: e84a sd s2,16(sp) - c004315e: e44e sd s3,8(sp) - c0043160: f406 sd ra,40(sp) - c0043162: 89ae mv s3,a1 + c0043326: 7179 addi sp,sp,-48 + c0043328: f022 sd s0,32(sp) + c004332a: ec26 sd s1,24(sp) + c004332c: e84a sd s2,16(sp) + c004332e: e44e sd s3,8(sp) + c0043330: f406 sd ra,40(sp) + c0043332: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:113 if (dbuf_realloc(s, s->size + len)) - c0043164: 650c ld a1,8(a0) + c0043334: 650c ld a1,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:112 { - c0043166: 842a mv s0,a0 - c0043168: 8932 mv s2,a2 + c0043336: 842a mv s0,a0 + c0043338: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:113 if (dbuf_realloc(s, s->size + len)) - c004316a: 95b2 add a1,a1,a2 - c004316c: 2a3040ef jal ra,c0047c0e + c004333a: 95b2 add a1,a1,a2 + c004333c: 2a3040ef jal ra,c0047dde /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:114 return -1; - c0043170: 54fd li s1,-1 + c0043340: 54fd li s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:113 if (dbuf_realloc(s, s->size + len)) - c0043172: e10d bnez a0,c0043194 + c0043342: e10d bnez a0,c0043364 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:115 memmove(s->buf + pos + len, s->buf + pos, s->size - pos); - c0043174: 601c ld a5,0(s0) - c0043176: 6410 ld a2,8(s0) - c0043178: 84aa mv s1,a0 - c004317a: 01390533 add a0,s2,s3 - c004317e: 41360633 sub a2,a2,s3 - c0043182: 013785b3 add a1,a5,s3 - c0043186: 953e add a0,a0,a5 - c0043188: 6a6130ef jal ra,c005682e + c0043344: 601c ld a5,0(s0) + c0043346: 6410 ld a2,8(s0) + c0043348: 84aa mv s1,a0 + c004334a: 01390533 add a0,s2,s3 + c004334e: 41360633 sub a2,a2,s3 + c0043352: 013785b3 add a1,a5,s3 + c0043356: 953e add a0,a0,a5 + c0043358: 6a6130ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:116 s->size += len; - c004318c: 6410 ld a2,8(s0) - c004318e: 9932 add s2,s2,a2 - c0043190: 01243423 sd s2,8(s0) + c004335c: 6410 ld a2,8(s0) + c004335e: 9932 add s2,s2,a2 + c0043360: 01243423 sd s2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:118 } - c0043194: 70a2 ld ra,40(sp) - c0043196: 7402 ld s0,32(sp) - c0043198: 6942 ld s2,16(sp) - c004319a: 69a2 ld s3,8(sp) - c004319c: 8526 mv a0,s1 - c004319e: 64e2 ld s1,24(sp) - c00431a0: 6145 addi sp,sp,48 - c00431a2: 8082 ret + c0043364: 70a2 ld ra,40(sp) + c0043366: 7402 ld s0,32(sp) + c0043368: 6942 ld s2,16(sp) + c004336a: 69a2 ld s3,8(sp) + c004336c: 8526 mv a0,s1 + c004336e: 64e2 ld s1,24(sp) + c0043370: 6145 addi sp,sp,48 + c0043372: 8082 ret -00000000c00431a4 : +00000000c0043374 : find_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1112 re_count_captures(s); @@ -183383,46 +183581,46 @@ find_group_name(): static int find_group_name(REParseState *s, const char *name) { - c00431a4: 7139 addi sp,sp,-64 - c00431a6: f426 sd s1,40(sp) - c00431a8: 84aa mv s1,a0 + c0043374: 7139 addi sp,sp,-64 + c0043376: f426 sd s1,40(sp) + c0043378: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1117 const char *p, *buf_end; size_t len, name_len; int capture_index; name_len = strlen(name); - c00431aa: 852e mv a0,a1 + c004337a: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1112 { - c00431ac: f822 sd s0,48(sp) - c00431ae: f04a sd s2,32(sp) - c00431b0: ec4e sd s3,24(sp) - c00431b2: e852 sd s4,16(sp) - c00431b4: e456 sd s5,8(sp) - c00431b6: fc06 sd ra,56(sp) - c00431b8: 8a2e mv s4,a1 + c004337c: f822 sd s0,48(sp) + c004337e: f04a sd s2,32(sp) + c0043380: ec4e sd s3,24(sp) + c0043382: e852 sd s4,16(sp) + c0043384: e456 sd s5,8(sp) + c0043386: fc06 sd ra,56(sp) + c0043388: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1117 name_len = strlen(name); - c00431ba: 7f6130ef jal ra,c00569b0 + c004338a: 7f6130ef jal ra,c0056b80 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1118 p = (char *)s->group_names.buf; - c00431be: 78a0 ld s0,112(s1) + c004338e: 78a0 ld s0,112(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1119 buf_end = (char *)s->group_names.buf + s->group_names.size; - c00431c0: 0784ba83 ld s5,120(s1) + c0043390: 0784ba83 ld s5,120(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1117 name_len = strlen(name); - c00431c4: 89aa mv s3,a0 + c0043394: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1120 capture_index = 1; - c00431c6: 4905 li s2,1 + c0043396: 4905 li s2,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1119 buf_end = (char *)s->group_names.buf + s->group_names.size; - c00431c8: 9aa2 add s5,s5,s0 + c0043398: 9aa2 add s5,s5,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1121 while (p < buf_end) { - c00431ca: 01546d63 bltu s0,s5,c00431e4 + c004339a: 01546d63 bltu s0,s5,c00433b4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1128 if (len == name_len && memcmp(name, p, name_len) == 0) return capture_index; @@ -183430,43 +183628,43 @@ static int find_group_name(REParseState *s, const char *name) capture_index++; } return -1; - c00431ce: 597d li s2,-1 + c004339e: 597d li s2,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1129 } - c00431d0: 70e2 ld ra,56(sp) - c00431d2: 7442 ld s0,48(sp) - c00431d4: 74a2 ld s1,40(sp) - c00431d6: 69e2 ld s3,24(sp) - c00431d8: 6a42 ld s4,16(sp) - c00431da: 6aa2 ld s5,8(sp) - c00431dc: 854a mv a0,s2 - c00431de: 7902 ld s2,32(sp) - c00431e0: 6121 addi sp,sp,64 - c00431e2: 8082 ret + c00433a0: 70e2 ld ra,56(sp) + c00433a2: 7442 ld s0,48(sp) + c00433a4: 74a2 ld s1,40(sp) + c00433a6: 69e2 ld s3,24(sp) + c00433a8: 6a42 ld s4,16(sp) + c00433aa: 6aa2 ld s5,8(sp) + c00433ac: 854a mv a0,s2 + c00433ae: 7902 ld s2,32(sp) + c00433b0: 6121 addi sp,sp,64 + c00433b2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1122 len = strlen(p); - c00431e4: 8522 mv a0,s0 - c00431e6: 7ca130ef jal ra,c00569b0 - c00431ea: 84aa mv s1,a0 + c00433b4: 8522 mv a0,s0 + c00433b6: 7ca130ef jal ra,c0056b80 + c00433ba: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1123 if (len == name_len && memcmp(name, p, name_len) == 0) - c00431ec: 00a99863 bne s3,a0,c00431fc + c00433bc: 00a99863 bne s3,a0,c00433cc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1123 (discriminator 1) - c00431f0: 864e mv a2,s3 - c00431f2: 85a2 mv a1,s0 - c00431f4: 8552 mv a0,s4 - c00431f6: 60c130ef jal ra,c0056802 - c00431fa: d979 beqz a0,c00431d0 + c00433c0: 864e mv a2,s3 + c00433c2: 85a2 mv a1,s0 + c00433c4: 8552 mv a0,s4 + c00433c6: 60c130ef jal ra,c00569d2 + c00433ca: d979 beqz a0,c00433a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1125 p += len + 1; - c00431fc: 0485 addi s1,s1,1 - c00431fe: 9426 add s0,s0,s1 + c00433cc: 0485 addi s1,s1,1 + c00433ce: 9426 add s0,s0,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1126 capture_index++; - c0043200: 2905 addiw s2,s2,1 - c0043202: b7e1 j c00431ca + c00433d0: 2905 addiw s2,s2,1 + c00433d2: b7e1 j c004339a -00000000c0043204 : +00000000c00433d4 : push_state(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1976 static int push_state(REExecContext *s, @@ -183475,19 +183673,19 @@ static int push_state(REExecContext *s, const uint8_t *pc, const uint8_t *cptr, REExecStateEnum type, size_t count) { - c0043204: 715d addi sp,sp,-80 - c0043206: e0a2 sd s0,64(sp) - c0043208: 842a mv s0,a0 - c004320a: fc26 sd s1,56(sp) - c004320c: f84a sd s2,48(sp) - c004320e: f44e sd s3,40(sp) - c0043210: f052 sd s4,32(sp) - c0043212: ec56 sd s5,24(sp) - c0043214: e85a sd s6,16(sp) - c0043216: e45e sd s7,8(sp) - c0043218: e486 sd ra,72(sp) - c004321a: e062 sd s8,0(sp) - c004321c: 8abe mv s5,a5 + c00433d4: 715d addi sp,sp,-80 + c00433d6: e0a2 sd s0,64(sp) + c00433d8: 842a mv s0,a0 + c00433da: fc26 sd s1,56(sp) + c00433dc: f84a sd s2,48(sp) + c00433de: f44e sd s3,40(sp) + c00433e0: f052 sd s4,32(sp) + c00433e2: ec56 sd s5,24(sp) + c00433e4: e85a sd s6,16(sp) + c00433e6: e45e sd s7,8(sp) + c00433e8: e486 sd ra,72(sp) + c00433ea: e062 sd s8,0(sp) + c00433ec: 8abe mv s5,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1982 REExecState *rs; uint8_t *new_stack; @@ -183495,67 +183693,67 @@ static int push_state(REExecContext *s, StackInt *stack_buf; if (unlikely((s->state_stack_len + 1) > s->state_stack_size)) { - c004321e: 643c ld a5,72(s0) - c0043220: 6128 ld a0,64(a0) + c00433ee: 643c ld a5,72(s0) + c00433f0: 6128 ld a0,64(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1976 { - c0043222: 89ae mv s3,a1 + c00433f2: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1982 if (unlikely((s->state_stack_len + 1) > s->state_stack_size)) { - c0043224: 0785 addi a5,a5,1 + c00433f4: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1976 { - c0043226: 8932 mv s2,a2 - c0043228: 84b6 mv s1,a3 - c004322a: 8a3a mv s4,a4 - c004322c: 8bc2 mv s7,a6 - c004322e: 8b46 mv s6,a7 + c00433f6: 8932 mv s2,a2 + c00433f8: 84b6 mv s1,a3 + c00433fa: 8a3a mv s4,a4 + c00433fc: 8bc2 mv s7,a6 + c00433fe: 8b46 mv s6,a7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1982 if (unlikely((s->state_stack_len + 1) > s->state_stack_size)) { - c0043230: 02f57863 bgeu a0,a5,c0043260 + c0043400: 02f57863 bgeu a0,a5,c0043430 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1984 /* reallocate the stack */ new_size = s->state_stack_size * 3 / 2; - c0043234: 478d li a5,3 - c0043236: 02f50533 mul a0,a0,a5 + c0043404: 478d li a5,3 + c0043406: 02f50533 mul a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1985 if (new_size < 8) - c004323a: 47bd li a5,15 + c004340a: 47bd li a5,15 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1986 new_size = 8; - c004323c: 4c21 li s8,8 + c004340c: 4c21 li s8,8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1985 if (new_size < 8) - c004323e: 00a7f463 bgeu a5,a0,c0043246 + c004340e: 00a7f463 bgeu a5,a0,c0043416 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1984 new_size = s->state_stack_size * 3 / 2; - c0043242: 00155c13 srli s8,a0,0x1 + c0043412: 00155c13 srli s8,a0,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1987 new_stack = lre_realloc(s->opaque, s->state_stack, new_size * s->state_size); - c0043246: 7810 ld a2,48(s0) - c0043248: 7c0c ld a1,56(s0) - c004324a: 7408 ld a0,40(s0) - c004324c: 02cc0633 mul a2,s8,a2 - c0043250: cd1c70ef jal ra,c000af20 - c0043254: 86aa mv a3,a0 + c0043416: 7810 ld a2,48(s0) + c0043418: 7c0c ld a1,56(s0) + c004341a: 7408 ld a0,40(s0) + c004341c: 02cc0633 mul a2,s8,a2 + c0043420: befc70ef jal ra,c000b00e + c0043424: 86aa mv a3,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1989 if (!new_stack) return -1; - c0043256: 557d li a0,-1 + c0043426: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1988 if (!new_stack) - c0043258: c6a9 beqz a3,c00432a2 + c0043428: c6a9 beqz a3,c0043472 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1990 s->state_stack_size = new_size; - c004325a: 05843023 sd s8,64(s0) + c004342a: 05843023 sd s8,64(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1991 s->state_stack = new_stack; - c004325e: fc14 sd a3,56(s0) + c004342e: fc14 sd a3,56(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1993 } rs = (REExecState *)(s->state_stack + s->state_stack_len * s->state_size); - c0043260: 6434 ld a3,72(s0) - c0043262: 7808 ld a0,48(s0) + c0043430: 6434 ld a3,72(s0) + c0043432: 7808 ld a0,48(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2001 rs->count = count; rs->stack_len = stack_len; @@ -183563,196 +183761,196 @@ static int push_state(REExecContext *s, rs->pc = pc; n = 2 * s->capture_count; for(i = 0; i < n; i++) - c0043264: 4701 li a4,0 + c0043434: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1993 rs = (REExecState *)(s->state_stack + s->state_stack_len * s->state_size); - c0043266: 02a687b3 mul a5,a3,a0 - c004326a: 7c08 ld a0,56(s0) + c0043436: 02a687b3 mul a5,a3,a0 + c004343a: 7c08 ld a0,56(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1994 s->state_stack_len++; - c004326c: 0685 addi a3,a3,1 - c004326e: e434 sd a3,72(s0) + c004343c: 0685 addi a3,a3,1 + c004343e: e434 sd a3,72(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1993 rs = (REExecState *)(s->state_stack + s->state_stack_len * s->state_size); - c0043270: 953e add a0,a0,a5 + c0043440: 953e add a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1995 rs->type = type; - c0043272: 01750023 sb s7,0(a0) + c0043442: 01750023 sb s7,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1996 rs->count = count; - c0043276: 01653423 sd s6,8(a0) + c0043446: 01653423 sd s6,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1997 rs->stack_len = stack_len; - c004327a: 009500a3 sb s1,1(a0) + c004344a: 009500a3 sb s1,1(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1998 rs->cptr = cptr; - c004327e: 01553823 sd s5,16(a0) + c004344e: 01553823 sd s5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1999 rs->pc = pc; - c0043282: 01453c23 sd s4,24(a0) + c0043452: 01453c23 sd s4,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2000 n = 2 * s->capture_count; - c0043286: 485c lw a5,20(s0) - c0043288: 02050693 addi a3,a0,32 - c004328c: 0017979b slliw a5,a5,0x1 + c0043456: 485c lw a5,20(s0) + c0043458: 02050693 addi a3,a0,32 + c004345c: 0017979b slliw a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2001 (discriminator 1) for(i = 0; i < n; i++) - c0043290: 02f76563 bltu a4,a5,c00432ba + c0043460: 02f76563 bltu a4,a5,c004348a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2004 rs->buf[i] = capture[i]; stack_buf = (StackInt *)(rs->buf + n); for(i = 0; i < stack_len; i++) - c0043294: 078e slli a5,a5,0x3 - c0043296: 953e add a0,a0,a5 - c0043298: 4781 li a5,0 + c0043464: 078e slli a5,a5,0x3 + c0043466: 953e add a0,a0,a5 + c0043468: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2004 (discriminator 1) - c004329a: 0521 addi a0,a0,8 - c004329c: 02979863 bne a5,s1,c00432cc + c004346a: 0521 addi a0,a0,8 + c004346c: 02979863 bne a5,s1,c004349c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2006 stack_buf[i] = stack[i]; return 0; - c00432a0: 4501 li a0,0 + c0043470: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2007 } - c00432a2: 60a6 ld ra,72(sp) - c00432a4: 6406 ld s0,64(sp) - c00432a6: 74e2 ld s1,56(sp) - c00432a8: 7942 ld s2,48(sp) - c00432aa: 79a2 ld s3,40(sp) - c00432ac: 7a02 ld s4,32(sp) - c00432ae: 6ae2 ld s5,24(sp) - c00432b0: 6b42 ld s6,16(sp) - c00432b2: 6ba2 ld s7,8(sp) - c00432b4: 6c02 ld s8,0(sp) - c00432b6: 6161 addi sp,sp,80 - c00432b8: 8082 ret + c0043472: 60a6 ld ra,72(sp) + c0043474: 6406 ld s0,64(sp) + c0043476: 74e2 ld s1,56(sp) + c0043478: 7942 ld s2,48(sp) + c004347a: 79a2 ld s3,40(sp) + c004347c: 7a02 ld s4,32(sp) + c004347e: 6ae2 ld s5,24(sp) + c0043480: 6b42 ld s6,16(sp) + c0043482: 6ba2 ld s7,8(sp) + c0043484: 6c02 ld s8,0(sp) + c0043486: 6161 addi sp,sp,80 + c0043488: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2002 (discriminator 3) rs->buf[i] = capture[i]; - c00432ba: 00371613 slli a2,a4,0x3 - c00432be: 964e add a2,a2,s3 - c00432c0: 6210 ld a2,0(a2) + c004348a: 00371613 slli a2,a4,0x3 + c004348e: 964e add a2,a2,s3 + c0043490: 6210 ld a2,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2001 (discriminator 3) for(i = 0; i < n; i++) - c00432c2: 0705 addi a4,a4,1 - c00432c4: 06a1 addi a3,a3,8 + c0043492: 0705 addi a4,a4,1 + c0043494: 06a1 addi a3,a3,8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2002 (discriminator 3) rs->buf[i] = capture[i]; - c00432c6: fec6bc23 sd a2,-8(a3) # ffffffff7ffffff8 <_ebss+0xfffffffebfefeed2> + c0043496: fec6bc23 sd a2,-8(a3) # ffffffff7ffffff8 <_ebss+0xfffffffebfefeed2> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2001 (discriminator 3) for(i = 0; i < n; i++) - c00432ca: b7d9 j c0043290 + c004349a: b7d9 j c0043460 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2005 (discriminator 3) stack_buf[i] = stack[i]; - c00432cc: 00379713 slli a4,a5,0x3 - c00432d0: 974a add a4,a4,s2 - c00432d2: 6318 ld a4,0(a4) + c004349c: 00379713 slli a4,a5,0x3 + c00434a0: 974a add a4,a4,s2 + c00434a2: 6318 ld a4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2004 (discriminator 3) for(i = 0; i < stack_len; i++) - c00432d4: 0785 addi a5,a5,1 + c00434a4: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2005 (discriminator 3) stack_buf[i] = stack[i]; - c00432d6: ed18 sd a4,24(a0) + c00434a6: ed18 sd a4,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2004 (discriminator 3) for(i = 0; i < stack_len; i++) - c00432d8: b7c9 j c004329a + c00434a8: b7c9 j c004346a -00000000c00432da : +00000000c00434aa : re_parse_error(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:375 { - c00432da: 715d addi sp,sp,-80 - c00432dc: f032 sd a2,32(sp) - c00432de: f436 sd a3,40(sp) + c00434aa: 715d addi sp,sp,-80 + c00434ac: f032 sd a2,32(sp) + c00434ae: f436 sd a3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:378 vsnprintf(s->u.error_msg, sizeof(s->u.error_msg), fmt, ap); - c00432e0: 862e mv a2,a1 + c00434b0: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:377 va_start(ap, fmt); - c00432e2: 1014 addi a3,sp,32 + c00434b2: 1014 addi a3,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:378 vsnprintf(s->u.error_msg, sizeof(s->u.error_msg), fmt, ap); - c00432e4: 08000593 li a1,128 - c00432e8: 0a050513 addi a0,a0,160 + c00434b4: 08000593 li a1,128 + c00434b8: 0a050513 addi a0,a0,160 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:375 { - c00432ec: ec06 sd ra,24(sp) - c00432ee: f83a sd a4,48(sp) - c00432f0: fc3e sd a5,56(sp) - c00432f2: e0c2 sd a6,64(sp) - c00432f4: e4c6 sd a7,72(sp) + c00434bc: ec06 sd ra,24(sp) + c00434be: f83a sd a4,48(sp) + c00434c0: fc3e sd a5,56(sp) + c00434c2: e0c2 sd a6,64(sp) + c00434c4: e4c6 sd a7,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:377 va_start(ap, fmt); - c00432f6: e436 sd a3,8(sp) + c00434c6: e436 sd a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:378 vsnprintf(s->u.error_msg, sizeof(s->u.error_msg), fmt, ap); - c00432f8: 749100ef jal ra,c0054240 + c00434c8: 749100ef jal ra,c0054410 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:381 } - c00432fc: 60e2 ld ra,24(sp) - c00432fe: 557d li a0,-1 - c0043300: 6161 addi sp,sp,80 - c0043302: 8082 ret + c00434cc: 60e2 ld ra,24(sp) + c00434ce: 557d li a0,-1 + c00434d0: 6161 addi sp,sp,80 + c00434d2: 8082 ret -00000000c0043304 : +00000000c00434d4 : is_line_terminator(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1834 return (c == '\n' || c == '\r' || c == CP_LS || c == CP_PS); - c0043304: 47a9 li a5,10 + c00434d4: 47a9 li a5,10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1833 { - c0043306: 872a mv a4,a0 + c00434d6: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1834 return (c == '\n' || c == '\r' || c == CP_LS || c == CP_PS); - c0043308: 00f50e63 beq a0,a5,c0043324 + c00434d8: 00f50e63 beq a0,a5,c00434f4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1834 (discriminator 2) - c004330c: 47b5 li a5,13 - c004330e: 4505 li a0,1 - c0043310: 00f70b63 beq a4,a5,c0043326 + c00434dc: 47b5 li a5,13 + c00434de: 4505 li a0,1 + c00434e0: 00f70b63 beq a4,a5,c00434f6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1834 - c0043314: 77f9 lui a5,0xffffe - c0043316: fd87879b addiw a5,a5,-40 - c004331a: 00e7853b addw a0,a5,a4 - c004331e: 00253513 sltiu a0,a0,2 - c0043322: 8082 ret - c0043324: 4505 li a0,1 + c00434e4: 77f9 lui a5,0xffffe + c00434e6: fd87879b addiw a5,a5,-40 + c00434ea: 00e7853b addw a0,a5,a4 + c00434ee: 00253513 sltiu a0,a0,2 + c00434f2: 8082 ret + c00434f4: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1835 (discriminator 10) } - c0043326: 8082 ret + c00434f6: 8082 ret -00000000c0043328 : +00000000c00434f8 : is_word_char(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1841 (c >= 'A' && c <= 'Z') || - c0043328: fd05069b addiw a3,a0,-48 - c004332c: 4725 li a4,9 + c00434f8: fd05069b addiw a3,a0,-48 + c00434fc: 4725 li a4,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1838 { - c004332e: 87aa mv a5,a0 + c00434fe: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1841 (c >= 'A' && c <= 'Z') || - c0043330: 00d77f63 bgeu a4,a3,c004334e + c0043500: 00d77f63 bgeu a4,a3,c004351e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1840 (c >= 'a' && c <= 'z') || - c0043334: fdf57713 andi a4,a0,-33 - c0043338: fbf7071b addiw a4,a4,-65 - c004333c: 46e5 li a3,25 + c0043504: fdf57713 andi a4,a0,-33 + c0043508: fbf7071b addiw a4,a4,-65 + c004350c: 46e5 li a3,25 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1841 (c >= 'A' && c <= 'Z') || - c004333e: 4505 li a0,1 + c004350e: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1840 (c >= 'a' && c <= 'z') || - c0043340: 00e6f863 bgeu a3,a4,c0043350 + c0043510: 00e6f863 bgeu a3,a4,c0043520 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1841 (c >= 'A' && c <= 'Z') || - c0043344: fa178793 addi a5,a5,-95 # ffffffffffffdfa1 <_ebss+0xffffffff3fefce7b> - c0043348: 0017b513 seqz a0,a5 - c004334c: 8082 ret - c004334e: 4505 li a0,1 + c0043514: fa178793 addi a5,a5,-95 # ffffffffffffdfa1 <_ebss+0xffffffff3fefce7b> + c0043518: 0017b513 seqz a0,a5 + c004351c: 8082 ret + c004351e: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1843 (discriminator 5) } - c0043350: 8082 ret + c0043520: 8082 ret -00000000c0043352 : +00000000c0043522 : lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2014 /* return 1 if match, 0 if not match or -1 if error. */ @@ -183761,20 +183959,20 @@ static intptr_t lre_exec_backtrack(REExecContext *s, uint8_t **capture, const uint8_t *pc, const uint8_t *cptr, BOOL no_recurse) { - c0043352: 7171 addi sp,sp,-176 - c0043354: f122 sd s0,160(sp) - c0043356: ed26 sd s1,152(sp) - c0043358: e152 sd s4,128(sp) - c004335a: fcd6 sd s5,120(sp) - c004335c: f4de sd s7,104(sp) - c004335e: f0e2 sd s8,96(sp) - c0043360: ece6 sd s9,88(sp) - c0043362: e8ea sd s10,80(sp) - c0043364: e4ee sd s11,72(sp) - c0043366: f506 sd ra,168(sp) - c0043368: e94a sd s2,144(sp) - c004336a: e54e sd s3,136(sp) - c004336c: f8da sd s6,112(sp) + c0043522: 7171 addi sp,sp,-176 + c0043524: f122 sd s0,160(sp) + c0043526: ed26 sd s1,152(sp) + c0043528: e152 sd s4,128(sp) + c004352a: fcd6 sd s5,120(sp) + c004352c: f4de sd s7,104(sp) + c004352e: f0e2 sd s8,96(sp) + c0043530: ece6 sd s9,88(sp) + c0043532: e8ea sd s10,80(sp) + c0043534: e4ee sd s11,72(sp) + c0043536: f506 sd ra,168(sp) + c0043538: e94a sd s2,144(sp) + c004353a: e54e sd s3,136(sp) + c004353c: f8da sd s6,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 return res; if (!res) @@ -183782,65 +183980,65 @@ static intptr_t lre_exec_backtrack(REExecContext *s, uint8_t **capture, cptr = (uint8_t *)res; q++; if (q >= quant_max && quant_max != INT32_MAX) - c004336e: 80000d37 lui s10,0x80000 + c004353e: 80000d37 lui s10,0x80000 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2020 cbuf_type = s->cbuf_type; - c0043372: 01052983 lw s3,16(a0) + c0043542: 01052983 lw s3,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2021 cbuf_end = s->cbuf_end; - c0043376: 00853b03 ld s6,8(a0) + c0043546: 00853b03 ld s6,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2014 { - c004337a: 843e mv s0,a5 + c004354a: 843e mv s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 PREV_CHAR(cptr, s->cbuf); - c004337c: 7a49 lui s4,0xffff2 + c004354c: 7a49 lui s4,0xffff2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c004337e: fffd4793 not a5,s10 + c004354e: fffd4793 not a5,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 PREV_CHAR(cptr, s->cbuf); - c0043382: 7acd lui s5,0xffff3 + c0043552: 7acd lui s5,0xffff3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2014 { - c0043384: 8caa mv s9,a0 - c0043386: 8bae mv s7,a1 - c0043388: 8c32 mv s8,a2 - c004338a: 8db6 mv s11,a3 - c004338c: 84ba mv s1,a4 - c004338e: e442 sd a6,8(sp) + c0043554: 8caa mv s9,a0 + c0043556: 8bae mv s7,a1 + c0043558: 8c32 mv s8,a2 + c004355a: 8db6 mv s11,a3 + c004355c: 84ba mv s1,a4 + c004355e: e442 sd a6,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c0043390: e83e sd a5,16(sp) + c0043560: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 PREV_CHAR(cptr, s->cbuf); - c0043392: 400a0a1b addiw s4,s4,1024 - c0043396: 800a8a9b addiw s5,s5,-2048 + c0043562: 400a0a1b addiw s4,s4,1024 + c0043566: 800a8a9b addiw s5,s5,-2048 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2025 opcode = *pc++; - c004339a: 0004c783 lbu a5,0(s1) - c004339e: 46ed li a3,27 - c00433a0: 00148913 addi s2,s1,1 - c00433a4: fff7871b addiw a4,a5,-1 - c00433a8: 0ff77713 zext.b a4,a4 - c00433ac: 00078d1b sext.w s10,a5 + c004356a: 0004c783 lbu a5,0(s1) + c004356e: 46ed li a3,27 + c0043570: 00148913 addi s2,s1,1 + c0043574: fff7871b addiw a4,a5,-1 + c0043578: 0ff77713 zext.b a4,a4 + c004357c: 00078d1b sext.w s10,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2026 switch(opcode) { - c00433b0: 36e6ece3 bltu a3,a4,c0043f28 - c00433b4: 00024697 auipc a3,0x24 - c00433b8: be868693 addi a3,a3,-1048 # c0066f9c - c00433bc: 070a slli a4,a4,0x2 - c00433be: 9736 add a4,a4,a3 - c00433c0: 4318 lw a4,0(a4) - c00433c2: 9736 add a4,a4,a3 - c00433c4: 8702 jr a4 + c0043580: 36e6ece3 bltu a3,a4,c00440f8 + c0043584: 00024697 auipc a3,0x24 + c0043588: c7868693 addi a3,a3,-904 # c00671fc + c004358c: 070a slli a4,a4,0x2 + c004358e: 9736 add a4,a4,a3 + c0043590: 4318 lw a4,0(a4) + c0043592: 9736 add a4,a4,a3 + c0043594: 8702 jr a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2030 if (no_recurse) - c00433c6: 67a2 ld a5,8(sp) - c00433c8: c38d beqz a5,c00433ea + c0043596: 67a2 ld a5,8(sp) + c0043598: c38d beqz a5,c00435ba /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2041 return ret; - c00433ca: 8522 mv a0,s0 + c004359a: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2413 break; default: @@ -183848,2623 +184046,2623 @@ static intptr_t lre_exec_backtrack(REExecContext *s, uint8_t **capture, } } } - c00433cc: 70aa ld ra,168(sp) - c00433ce: 740a ld s0,160(sp) - c00433d0: 64ea ld s1,152(sp) - c00433d2: 694a ld s2,144(sp) - c00433d4: 69aa ld s3,136(sp) - c00433d6: 6a0a ld s4,128(sp) - c00433d8: 7ae6 ld s5,120(sp) - c00433da: 7b46 ld s6,112(sp) - c00433dc: 7ba6 ld s7,104(sp) - c00433de: 7c06 ld s8,96(sp) - c00433e0: 6ce6 ld s9,88(sp) - c00433e2: 6d46 ld s10,80(sp) - c00433e4: 6da6 ld s11,72(sp) - c00433e6: 614d addi sp,sp,176 - c00433e8: 8082 ret + c004359c: 70aa ld ra,168(sp) + c004359e: 740a ld s0,160(sp) + c00435a0: 64ea ld s1,152(sp) + c00435a2: 694a ld s2,144(sp) + c00435a4: 69aa ld s3,136(sp) + c00435a6: 6a0a ld s4,128(sp) + c00435a8: 7ae6 ld s5,120(sp) + c00435aa: 7b46 ld s6,112(sp) + c00435ac: 7ba6 ld s7,104(sp) + c00435ae: 7c06 ld s8,96(sp) + c00435b0: 6ce6 ld s9,88(sp) + c00435b2: 6d46 ld s10,80(sp) + c00435b4: 6da6 ld s11,72(sp) + c00435b6: 614d addi sp,sp,176 + c00435b8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2032 ret = 1; - c00433ea: 4405 li s0,1 - c00433ec: aca9 j c0043646 + c00435ba: 4405 li s0,1 + c00435bc: aca9 j c0043816 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2058 } else if (rs->type == RE_EXEC_STATE_GREEDY_QUANT) { - c00433ee: 0cd71863 bne a4,a3,c00434be + c00435be: 0cd71863 bne a4,a3,c004368e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2059 if (!ret) { - c00433f2: e871 bnez s0,c00434c6 + c00435c2: e871 bnez s0,c0043696 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2062 sizeof(capture[0]) * 2 * s->capture_count); - c00433f4: 014ca603 lw a2,20(s9) + c00435c4: 014ca603 lw a2,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2061 memcpy(capture, rs->buf, - c00433f8: 02048413 addi s0,s1,32 - c00433fc: 85a2 mv a1,s0 - c00433fe: 0612 slli a2,a2,0x4 - c0043400: 855e mv a0,s7 - c0043402: 5d8130ef jal ra,c00569da + c00435c8: 02048413 addi s0,s1,32 + c00435cc: 85a2 mv a1,s0 + c00435ce: 0612 slli a2,a2,0x4 + c00435d0: 855e mv a0,s7 + c00435d2: 5d8130ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2064 memcpy(stack, rs->buf + 2 * s->capture_count, - c0043406: 014ca783 lw a5,20(s9) + c00435d6: 014ca783 lw a5,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2063 stack_len = rs->stack_len; - c004340a: 0014c603 lbu a2,1(s1) + c00435da: 0014c603 lbu a2,1(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2064 memcpy(stack, rs->buf + 2 * s->capture_count, - c004340e: 8562 mv a0,s8 - c0043410: 0017979b slliw a5,a5,0x1 - c0043414: 078e slli a5,a5,0x3 - c0043416: 00f405b3 add a1,s0,a5 + c00435de: 8562 mv a0,s8 + c00435e0: 0017979b slliw a5,a5,0x1 + c00435e4: 078e slli a5,a5,0x3 + c00435e6: 00f405b3 add a1,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2063 stack_len = rs->stack_len; - c004341a: 00060d9b sext.w s11,a2 + c00435ea: 00060d9b sext.w s11,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2064 memcpy(stack, rs->buf + 2 * s->capture_count, - c004341e: 060e slli a2,a2,0x3 - c0043420: 5ba130ef jal ra,c00569da + c00435ee: 060e slli a2,a2,0x3 + c00435f0: 5ba130ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2066 pc = rs->pc; - c0043424: 0184b903 ld s2,24(s1) + c00435f4: 0184b903 ld s2,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2067 cptr = rs->cptr; - c0043428: 6880 ld s0,16(s1) + c00435f8: 6880 ld s0,16(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2070 for(i = 0; i < char_count; i++) { - c004342a: 4681 li a3,0 + c00435fa: 4681 li a3,0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c004342c: 00d94703 lbu a4,13(s2) - c0043430: 00c94783 lbu a5,12(s2) + c00435fc: 00d94703 lbu a4,13(s2) + c0043600: 00c94783 lbu a5,12(s2) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 PREV_CHAR(cptr, s->cbuf); - c0043434: 4509 li a0,2 + c0043604: 4509 li a0,2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043436: 0722 slli a4,a4,0x8 - c0043438: 8f5d or a4,a4,a5 - c004343a: 00e94783 lbu a5,14(s2) + c0043606: 0722 slli a4,a4,0x8 + c0043608: 8f5d or a4,a4,a5 + c004360a: 00e94783 lbu a5,14(s2) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 - c004343e: 3ff00593 li a1,1023 + c004360e: 3ff00593 li a1,1023 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043442: 07c2 slli a5,a5,0x10 - c0043444: 8f5d or a4,a4,a5 - c0043446: 00f94783 lbu a5,15(s2) - c004344a: 07e2 slli a5,a5,0x18 - c004344c: 8fd9 or a5,a5,a4 - c004344e: 2781 sext.w a5,a5 + c0043612: 07c2 slli a5,a5,0x10 + c0043614: 8f5d or a4,a4,a5 + c0043616: 00f94783 lbu a5,15(s2) + c004361a: 07e2 slli a5,a5,0x18 + c004361c: 8fd9 or a5,a5,a4 + c004361e: 2781 sext.w a5,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2070 (discriminator 2) for(i = 0; i < char_count; i++) { - c0043450: 02f69a63 bne a3,a5,c0043484 + c0043620: 02f69a63 bne a3,a5,c0043654 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043454: 00194703 lbu a4,1(s2) - c0043458: 00094783 lbu a5,0(s2) - c004345c: 0722 slli a4,a4,0x8 - c004345e: 8f5d or a4,a4,a5 - c0043460: 00294783 lbu a5,2(s2) - c0043464: 07c2 slli a5,a5,0x10 - c0043466: 8f5d or a4,a4,a5 - c0043468: 00394783 lbu a5,3(s2) + c0043624: 00194703 lbu a4,1(s2) + c0043628: 00094783 lbu a5,0(s2) + c004362c: 0722 slli a4,a4,0x8 + c004362e: 8f5d or a4,a4,a5 + c0043630: 00294783 lbu a5,2(s2) + c0043634: 07c2 slli a5,a5,0x10 + c0043636: 8f5d or a4,a4,a5 + c0043638: 00394783 lbu a5,3(s2) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2074 rs->cptr = cptr; - c004346c: e880 sd s0,16(s1) + c004363c: e880 sd s0,16(s1) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c004346e: 07e2 slli a5,a5,0x18 - c0043470: 8fd9 or a5,a5,a4 + c004363e: 07e2 slli a5,a5,0x18 + c0043640: 8fd9 or a5,a5,a4 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2073 pc = (pc + 16) + (int)get_u32(pc); - c0043472: 2781 sext.w a5,a5 - c0043474: 07c1 addi a5,a5,16 - c0043476: 993e add s2,s2,a5 + c0043642: 2781 sext.w a5,a5 + c0043644: 07c1 addi a5,a5,16 + c0043646: 993e add s2,s2,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2075 rs->count--; - c0043478: 649c ld a5,8(s1) - c004347a: 17fd addi a5,a5,-1 - c004347c: e49c sd a5,8(s1) + c0043648: 649c ld a5,8(s1) + c004364a: 17fd addi a5,a5,-1 + c004364c: e49c sd a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2076 if (rs->count == 0) { - c004347e: 34079b63 bnez a5,c00437d4 - c0043482: a415 j c00436a6 + c004364e: 34079b63 bnez a5,c00439a4 + c0043652: a415 j c0043876 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 PREV_CHAR(cptr, s->cbuf); - c0043484: fff40713 addi a4,s0,-1 - c0043488: 02098863 beqz s3,c00434b8 + c0043654: fff40713 addi a4,s0,-1 + c0043658: 02098863 beqz s3,c0043688 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 (discriminator 2) - c004348c: ffe40713 addi a4,s0,-2 - c0043490: 02a99463 bne s3,a0,c00434b8 + c004365c: ffe40713 addi a4,s0,-2 + c0043660: 02a99463 bne s3,a0,c0043688 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 (discriminator 4) - c0043494: ffe45603 lhu a2,-2(s0) - c0043498: 0146063b addw a2,a2,s4 - c004349c: 00c5ee63 bltu a1,a2,c00434b8 + c0043664: ffe45603 lhu a2,-2(s0) + c0043668: 0146063b addw a2,a2,s4 + c004366c: 00c5ee63 bltu a1,a2,c0043688 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 (discriminator 6) - c00434a0: 000cb603 ld a2,0(s9) - c00434a4: 00e67a63 bgeu a2,a4,c00434b8 + c0043670: 000cb603 ld a2,0(s9) + c0043674: 00e67a63 bgeu a2,a4,c0043688 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 (discriminator 8) - c00434a8: ffc45603 lhu a2,-4(s0) - c00434ac: 0156063b addw a2,a2,s5 - c00434b0: 00c5e463 bltu a1,a2,c00434b8 + c0043678: ffc45603 lhu a2,-4(s0) + c004367c: 0156063b addw a2,a2,s5 + c0043680: 00c5e463 bltu a1,a2,c0043688 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2071 (discriminator 10) - c00434b4: ffc40713 addi a4,s0,-4 + c0043684: ffc40713 addi a4,s0,-4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2070 (discriminator 12) for(i = 0; i < char_count; i++) { - c00434b8: 2685 addiw a3,a3,1 - c00434ba: 843a mv s0,a4 - c00434bc: bf51 j c0043450 + c0043688: 2685 addiw a3,a3,1 + c004368a: 843a mv s0,a4 + c004368c: bf51 j c0043620 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2082 ret = ((rs->type == RE_EXEC_STATE_LOOKAHEAD && ret) || - c00434be: 00c71763 bne a4,a2,c00434cc + c004368e: 00c71763 bne a4,a2,c004369c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2082 (discriminator 1) - c00434c2: 1a041f63 bnez s0,c0043680 + c0043692: 1a041f63 bnez s0,c0043850 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2092 s->state_stack_len--; - c00434c6: 04fcb423 sd a5,72(s9) + c0043696: 04fcb423 sd a5,72(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2040 if (s->state_stack_len == 0) - c00434ca: a249 j c004364c + c004369a: a249 j c004381c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2082 (discriminator 4) ret = ((rs->type == RE_EXEC_STATE_LOOKAHEAD && ret) || - c00434cc: 00a71463 bne a4,a0,c00434d4 + c004369c: 00a71463 bne a4,a0,c00436a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2083 (rs->type == RE_EXEC_STATE_NEGATIVE_LOOKAHEAD && !ret)); - c00434d0: 1a040063 beqz s0,c0043670 + c00436a0: 1a040063 beqz s0,c0043840 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2082 ret = ((rs->type == RE_EXEC_STATE_LOOKAHEAD && ret) || - c00434d4: 4401 li s0,0 - c00434d6: bfc5 j c00434c6 + c00436a4: 4401 li s0,0 + c00436a6: bfc5 j c0043696 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00434d8: 0024c703 lbu a4,2(s1) - c00434dc: 0014c783 lbu a5,1(s1) + c00436a8: 0024c703 lbu a4,2(s1) + c00436ac: 0014c783 lbu a5,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2098 pc += 4; - c00434e0: 00548913 addi s2,s1,5 + c00436b0: 00548913 addi s2,s1,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00434e4: 0722 slli a4,a4,0x8 - c00434e6: 8f5d or a4,a4,a5 - c00434e8: 0034c783 lbu a5,3(s1) - c00434ec: 07c2 slli a5,a5,0x10 - c00434ee: 8f5d or a4,a4,a5 - c00434f0: 0044c783 lbu a5,4(s1) - c00434f4: 07e2 slli a5,a5,0x18 - c00434f6: 8fd9 or a5,a5,a4 - c00434f8: 00078d1b sext.w s10,a5 + c00436b4: 0722 slli a4,a4,0x8 + c00436b6: 8f5d or a4,a4,a5 + c00436b8: 0034c783 lbu a5,3(s1) + c00436bc: 07c2 slli a5,a5,0x10 + c00436be: 8f5d or a4,a4,a5 + c00436c0: 0044c783 lbu a5,4(s1) + c00436c4: 07e2 slli a5,a5,0x18 + c00436c6: 8fd9 or a5,a5,a4 + c00436c8: 00078d1b sext.w s10,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2104 if (cptr >= cbuf_end) - c00434fc: 15647163 bgeu s0,s6,c004363e + c00436cc: 15647163 bgeu s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 GET_CHAR(c, cptr, cbuf_end); - c0043500: 02099c63 bnez s3,c0043538 + c00436d0: 02099c63 bnez s3,c0043708 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 1) - c0043504: 00044503 lbu a0,0(s0) - c0043508: 00140493 addi s1,s0,1 + c00436d4: 00044503 lbu a0,0(s0) + c00436d8: 00140493 addi s1,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2107 (discriminator 12) if (s->ignore_case) { - c004350c: 020ca703 lw a4,32(s9) - c0043510: c711 beqz a4,c004351c + c00436dc: 020ca703 lw a4,32(s9) + c00436e0: c711 beqz a4,c00436ec /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2108 c = lre_canonicalize(c, s->is_utf16); - c0043512: 024ca583 lw a1,36(s9) - c0043516: 1dc030ef jal ra,c00466f2 - c004351a: 2501 sext.w a0,a0 + c00436e2: 024ca583 lw a1,36(s9) + c00436e6: 1dc030ef jal ra,c00468c2 + c00436ea: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2110 if (val != c) - c004351c: 12ad1163 bne s10,a0,c004363e - c0043520: 8426 mv s0,s1 - c0043522: ac4d j c00437d4 + c00436ec: 12ad1163 bne s10,a0,c004380e + c00436f0: 8426 mv s0,s1 + c00436f2: ac4d j c00439a4 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0043524: 0024c783 lbu a5,2(s1) - c0043528: 0014c703 lbu a4,1(s1) + c00436f4: 0024c783 lbu a5,2(s1) + c00436f8: 0014c703 lbu a4,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2102 pc += 2; - c004352c: 00348913 addi s2,s1,3 + c00436fc: 00348913 addi s2,s1,3 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043530: 07a2 slli a5,a5,0x8 - c0043532: 00e7ed33 or s10,a5,a4 + c0043700: 07a2 slli a5,a5,0x8 + c0043702: 00e7ed33 or s10,a5,a4 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2102 - c0043536: b7d9 j c00434fc + c0043706: b7d9 j c00436cc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 2) GET_CHAR(c, cptr, cbuf_end); - c0043538: 00045503 lhu a0,0(s0) - c004353c: 3ff00613 li a2,1023 - c0043540: 00240493 addi s1,s0,2 - c0043544: 015506bb addw a3,a0,s5 - c0043548: fcd662e3 bltu a2,a3,c004350c + c0043708: 00045503 lhu a0,0(s0) + c004370c: 3ff00613 li a2,1023 + c0043710: 00240493 addi s1,s0,2 + c0043714: 015506bb addw a3,a0,s5 + c0043718: fcd662e3 bltu a2,a3,c00436dc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 4) - c004354c: 4689 li a3,2 - c004354e: fad99fe3 bne s3,a3,c004350c + c004371c: 4689 li a3,2 + c004371e: fad99fe3 bne s3,a3,c00436dc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 6) - c0043552: fb64fde3 bgeu s1,s6,c004350c + c0043722: fb64fde3 bgeu s1,s6,c00436dc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 8) - c0043556: 00245683 lhu a3,2(s0) - c004355a: 00da05bb addw a1,s4,a3 - c004355e: fab667e3 bltu a2,a1,c004350c + c0043726: 00245683 lhu a3,2(s0) + c004372a: 00da05bb addw a1,s4,a3 + c004372e: fab667e3 bltu a2,a1,c00436dc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2106 (discriminator 10) - c0043562: 00a5171b slliw a4,a0,0xa - c0043566: 00100537 lui a0,0x100 - c004356a: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> - c004356e: 8d79 and a0,a0,a4 - c0043570: 3ff6f713 andi a4,a3,1023 - c0043574: 8f49 or a4,a4,a0 - c0043576: 6541 lui a0,0x10 - c0043578: 9d39 addw a0,a0,a4 - c004357a: 00440493 addi s1,s0,4 - c004357e: b779 j c004350c + c0043732: 00a5171b slliw a4,a0,0xa + c0043736: 00100537 lui a0,0x100 + c004373a: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> + c004373e: 8d79 and a0,a0,a4 + c0043740: 3ff6f713 andi a4,a3,1023 + c0043744: 8f49 or a4,a4,a0 + c0043746: 6541 lui a0,0x10 + c0043748: 9d39 addw a0,a0,a4 + c004374a: 00440493 addi s1,s0,4 + c004374e: b779 j c00436dc get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0043580: 0024c783 lbu a5,2(s1) - c0043584: 0014c903 lbu s2,1(s1) + c0043750: 0024c783 lbu a5,2(s1) + c0043754: 0014c903 lbu s2,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2119 pc += 4; - c0043588: 00548713 addi a4,s1,5 + c0043758: 00548713 addi a4,s1,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c004358c: 07a2 slli a5,a5,0x8 - c004358e: 0127e7b3 or a5,a5,s2 - c0043592: 0034c903 lbu s2,3(s1) - c0043596: 0942 slli s2,s2,0x10 - c0043598: 00f967b3 or a5,s2,a5 - c004359c: 0044c903 lbu s2,4(s1) - c00435a0: 0962 slli s2,s2,0x18 - c00435a2: 00f96933 or s2,s2,a5 + c004375c: 07a2 slli a5,a5,0x8 + c004375e: 0127e7b3 or a5,a5,s2 + c0043762: 0034c903 lbu s2,3(s1) + c0043766: 0942 slli s2,s2,0x10 + c0043768: 00f967b3 or a5,s2,a5 + c004376c: 0044c903 lbu s2,4(s1) + c0043770: 0962 slli s2,s2,0x18 + c0043772: 00f96933 or s2,s2,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2121 pc1 = pc + (int)val; - c00435a6: 2901 sext.w s2,s2 + c0043776: 2901 sext.w s2,s2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2120 if (opcode == REOP_split_next_first) { - c00435a8: 47a5 li a5,9 + c0043778: 47a5 li a5,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2121 pc1 = pc + (int)val; - c00435aa: 993a add s2,s2,a4 + c004377a: 993a add s2,s2,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2120 if (opcode == REOP_split_next_first) { - c00435ac: 00fd1563 bne s10,a5,c00435b6 - c00435b0: 87ca mv a5,s2 + c004377c: 00fd1563 bne s10,a5,c0043786 + c0043780: 87ca mv a5,s2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2119 pc += 4; - c00435b2: 893a mv s2,a4 + c0043782: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2121 pc1 = pc + (int)val; - c00435b4: 873e mv a4,a5 + c0043784: 873e mv a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2126 ret = push_state(s, capture, stack, stack_len, - c00435b6: 4881 li a7,0 - c00435b8: 4801 li a6,0 - c00435ba: 87a2 mv a5,s0 - c00435bc: 86ee mv a3,s11 - c00435be: 8662 mv a2,s8 - c00435c0: 85de mv a1,s7 - c00435c2: 8566 mv a0,s9 - c00435c4: c41ff0ef jal ra,c0043204 + c0043786: 4881 li a7,0 + c0043788: 4801 li a6,0 + c004378a: 87a2 mv a5,s0 + c004378c: 86ee mv a3,s11 + c004378e: 8662 mv a2,s8 + c0043790: 85de mv a1,s7 + c0043792: 8566 mv a0,s9 + c0043794: c41ff0ef jal ra,c00433d4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2128 if (ret < 0) - c00435c8: 20055663 bgez a0,c00437d4 + c0043798: 20055663 bgez a0,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2129 return -1; - c00435cc: 557d li a0,-1 - c00435ce: bbfd j c00433cc + c004379c: 557d li a0,-1 + c004379e: bbfd j c004359c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00435d0: 0024c783 lbu a5,2(s1) - c00435d4: 0014c703 lbu a4,1(s1) + c00437a0: 0024c783 lbu a5,2(s1) + c00437a4: 0014c703 lbu a4,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2135 pc += 4; - c00435d8: 00548913 addi s2,s1,5 + c00437a8: 00548913 addi s2,s1,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00435dc: 07a2 slli a5,a5,0x8 - c00435de: 8fd9 or a5,a5,a4 - c00435e0: 0034c703 lbu a4,3(s1) + c00437ac: 07a2 slli a5,a5,0x8 + c00437ae: 8fd9 or a5,a5,a4 + c00437b0: 0034c703 lbu a4,3(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2136 ret = push_state(s, capture, stack, stack_len, - c00435e4: 4881 li a7,0 - c00435e6: fead081b addiw a6,s10,-22 + c00437b4: 4881 li a7,0 + c00437b6: fead081b addiw a6,s10,-22 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00435ea: 0742 slli a4,a4,0x10 - c00435ec: 8fd9 or a5,a5,a4 - c00435ee: 0044c703 lbu a4,4(s1) - c00435f2: 0762 slli a4,a4,0x18 - c00435f4: 8f5d or a4,a4,a5 + c00437ba: 0742 slli a4,a4,0x10 + c00437bc: 8fd9 or a5,a5,a4 + c00437be: 0044c703 lbu a4,4(s1) + c00437c2: 0762 slli a4,a4,0x18 + c00437c4: 8f5d or a4,a4,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2137 pc + (int)val, cptr, - c00435f6: 2701 sext.w a4,a4 + c00437c6: 2701 sext.w a4,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2136 ret = push_state(s, capture, stack, stack_len, - c00435f8: 87a2 mv a5,s0 - c00435fa: 974a add a4,a4,s2 - c00435fc: b7c1 j c00435bc + c00437c8: 87a2 mv a5,s0 + c00437ca: 974a add a4,a4,s2 + c00437cc: b7c1 j c004378c get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00435fe: 0024c703 lbu a4,2(s1) - c0043602: 0014c783 lbu a5,1(s1) - c0043606: 0722 slli a4,a4,0x8 - c0043608: 8f5d or a4,a4,a5 - c004360a: 0034c783 lbu a5,3(s1) - c004360e: 07c2 slli a5,a5,0x10 - c0043610: 8f5d or a4,a4,a5 - c0043612: 0044c783 lbu a5,4(s1) - c0043616: 07e2 slli a5,a5,0x18 - c0043618: 8fd9 or a5,a5,a4 + c00437ce: 0024c703 lbu a4,2(s1) + c00437d2: 0014c783 lbu a5,1(s1) + c00437d6: 0722 slli a4,a4,0x8 + c00437d8: 8f5d or a4,a4,a5 + c00437da: 0034c783 lbu a5,3(s1) + c00437de: 07c2 slli a5,a5,0x10 + c00437e0: 8f5d or a4,a4,a5 + c00437e2: 0044c783 lbu a5,4(s1) + c00437e6: 07e2 slli a5,a5,0x18 + c00437e8: 8fd9 or a5,a5,a4 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2146 pc += 4 + (int)val; - c004361a: 2791 addiw a5,a5,4 + c00437ea: 2791 addiw a5,a5,4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2210 pc += (int)val; - c004361c: 993e add s2,s2,a5 - c004361e: aa5d j c00437d4 + c00437ec: 993e add s2,s2,a5 + c00437ee: aa5d j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2149 if (cptr == s->cbuf) - c0043620: 000cb783 ld a5,0(s9) - c0043624: 1a878863 beq a5,s0,c00437d4 + c00437f0: 000cb783 ld a5,0(s9) + c00437f4: 1a878863 beq a5,s0,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2151 if (!s->multi_line) - c0043628: 01cca703 lw a4,28(s9) - c004362c: cb09 beqz a4,c004363e + c00437f8: 01cca703 lw a4,28(s9) + c00437fc: cb09 beqz a4,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 PEEK_PREV_CHAR(c, cptr, s->cbuf); - c004362e: 08099263 bnez s3,c00436b2 + c00437fe: 08099263 bnez s3,c0043882 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 (discriminator 1) - c0043632: fff44503 lbu a0,-1(s0) + c0043802: fff44503 lbu a0,-1(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2163 (discriminator 12) if (!is_line_terminator(c)) - c0043636: ccfff0ef jal ra,c0043304 - c004363a: 18051d63 bnez a0,c00437d4 + c0043806: ccfff0ef jal ra,c00434d4 + c004380a: 18051d63 bnez a0,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2035 if (no_recurse) - c004363e: 67a2 ld a5,8(sp) - c0043640: 0e0796e3 bnez a5,c0043f2c + c004380e: 67a2 ld a5,8(sp) + c0043810: 0e0796e3 bnez a5,c00440fc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2037 ret = 0; - c0043644: 4401 li s0,0 + c0043814: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2058 } else if (rs->type == RE_EXEC_STATE_GREEDY_QUANT) { - c0043646: 468d li a3,3 + c0043816: 468d li a3,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2082 ret = ((rs->type == RE_EXEC_STATE_LOOKAHEAD && ret) || - c0043648: 4605 li a2,1 - c004364a: 4509 li a0,2 + c0043818: 4605 li a2,1 + c004381a: 4509 li a0,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2040 if (s->state_stack_len == 0) - c004364c: 048cb783 ld a5,72(s9) - c0043650: d6078de3 beqz a5,c00433ca + c004381c: 048cb783 ld a5,72(s9) + c0043820: d6078de3 beqz a5,c004359a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2043 (s->state_stack_len - 1) * s->state_size); - c0043654: 030cb483 ld s1,48(s9) - c0043658: 17fd addi a5,a5,-1 - c004365a: 029785b3 mul a1,a5,s1 + c0043824: 030cb483 ld s1,48(s9) + c0043828: 17fd addi a5,a5,-1 + c004382a: 029785b3 mul a1,a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2042 rs = (REExecState *)(s->state_stack + - c004365e: 038cb483 ld s1,56(s9) - c0043662: 94ae add s1,s1,a1 + c004382e: 038cb483 ld s1,56(s9) + c0043832: 94ae add s1,s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2044 if (rs->type == RE_EXEC_STATE_SPLIT) { - c0043664: 0004c703 lbu a4,0(s1) - c0043668: d80713e3 bnez a4,c00433ee + c0043834: 0004c703 lbu a4,0(s1) + c0043838: d80713e3 bnez a4,c00435be /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2045 if (!ret) { - c004366c: e4041de3 bnez s0,c00434c6 + c004383c: e4041de3 bnez s0,c0043696 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2048 sizeof(capture[0]) * 2 * s->capture_count); - c0043670: 014ca603 lw a2,20(s9) + c0043840: 014ca603 lw a2,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2047 memcpy(capture, rs->buf, - c0043674: 02048593 addi a1,s1,32 - c0043678: 855e mv a0,s7 - c004367a: 0612 slli a2,a2,0x4 - c004367c: 35e130ef jal ra,c00569da + c0043844: 02048593 addi a1,s1,32 + c0043848: 855e mv a0,s7 + c004384a: 0612 slli a2,a2,0x4 + c004384c: 35e130ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2053 memcpy(stack, rs->buf + 2 * s->capture_count, - c0043680: 014ca783 lw a5,20(s9) + c0043850: 014ca783 lw a5,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2052 stack_len = rs->stack_len; - c0043684: 0014c603 lbu a2,1(s1) + c0043854: 0014c603 lbu a2,1(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2053 memcpy(stack, rs->buf + 2 * s->capture_count, - c0043688: 02048593 addi a1,s1,32 - c004368c: 0017979b slliw a5,a5,0x1 - c0043690: 078e slli a5,a5,0x3 + c0043858: 02048593 addi a1,s1,32 + c004385c: 0017979b slliw a5,a5,0x1 + c0043860: 078e slli a5,a5,0x3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2052 stack_len = rs->stack_len; - c0043692: 00060d9b sext.w s11,a2 + c0043862: 00060d9b sext.w s11,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2053 memcpy(stack, rs->buf + 2 * s->capture_count, - c0043696: 95be add a1,a1,a5 - c0043698: 060e slli a2,a2,0x3 - c004369a: 8562 mv a0,s8 + c0043866: 95be add a1,a1,a5 + c0043868: 060e slli a2,a2,0x3 + c004386a: 8562 mv a0,s8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2050 pc = rs->pc; - c004369c: 0184b903 ld s2,24(s1) + c004386c: 0184b903 ld s2,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2051 cptr = rs->cptr; - c00436a0: 6880 ld s0,16(s1) + c0043870: 6880 ld s0,16(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2053 memcpy(stack, rs->buf + 2 * s->capture_count, - c00436a2: 338130ef jal ra,c00569da + c0043872: 338130ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2077 s->state_stack_len--; - c00436a6: 048cb783 ld a5,72(s9) - c00436aa: 17fd addi a5,a5,-1 - c00436ac: 04fcb423 sd a5,72(s9) - c00436b0: a215 j c00437d4 + c0043876: 048cb783 ld a5,72(s9) + c004387a: 17fd addi a5,a5,-1 + c004387c: 04fcb423 sd a5,72(s9) + c0043880: a215 j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 (discriminator 2) PEEK_PREV_CHAR(c, cptr, s->cbuf); - c00436b2: ffe45703 lhu a4,-2(s0) - c00436b6: 3ff00693 li a3,1023 - c00436ba: 00ea063b addw a2,s4,a4 - c00436be: 0007051b sext.w a0,a4 - c00436c2: f6c6eae3 bltu a3,a2,c0043636 + c0043882: ffe45703 lhu a4,-2(s0) + c0043886: 3ff00693 li a3,1023 + c004388a: 00ea063b addw a2,s4,a4 + c004388e: 0007051b sext.w a0,a4 + c0043892: f6c6eae3 bltu a3,a2,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 (discriminator 4) - c00436c6: 4609 li a2,2 - c00436c8: f6c997e3 bne s3,a2,c0043636 + c0043896: 4609 li a2,2 + c0043898: f6c997e3 bne s3,a2,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 (discriminator 6) - c00436cc: ffc40613 addi a2,s0,-4 - c00436d0: f6f663e3 bltu a2,a5,c0043636 + c004389c: ffc40613 addi a2,s0,-4 + c00438a0: f6f663e3 bltu a2,a5,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2153 (discriminator 8) - c00436d4: ffc45783 lhu a5,-4(s0) - c00436d8: 0157863b addw a2,a5,s5 + c00438a4: ffc45783 lhu a5,-4(s0) + c00438a8: 0157863b addw a2,a5,s5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 8) PEEK_CHAR(c, cptr, cbuf_end); - c00436dc: f4c6ede3 bltu a3,a2,c0043636 + c00438ac: f4c6ede3 bltu a3,a2,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 10) - c00436e0: 00100537 lui a0,0x100 - c00436e4: 00a7979b slliw a5,a5,0xa - c00436e8: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> - c00436ec: 8d7d and a0,a0,a5 - c00436ee: 3ff77713 andi a4,a4,1023 - c00436f2: 8d59 or a0,a0,a4 - c00436f4: 67c1 lui a5,0x10 - c00436f6: 9d3d addw a0,a0,a5 - c00436f8: bf3d j c0043636 + c00438b0: 00100537 lui a0,0x100 + c00438b4: 00a7979b slliw a5,a5,0xa + c00438b8: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> + c00438bc: 8d7d and a0,a0,a5 + c00438be: 3ff77713 andi a4,a4,1023 + c00438c2: 8d59 or a0,a0,a4 + c00438c4: 67c1 lui a5,0x10 + c00438c6: 9d3d addw a0,a0,a5 + c00438c8: bf3d j c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2158 if (cptr == cbuf_end) - c00436fa: 0d640d63 beq s0,s6,c00437d4 + c00438ca: 0d640d63 beq s0,s6,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2160 if (!s->multi_line) - c00436fe: 01cca783 lw a5,28(s9) - c0043702: df95 beqz a5,c004363e + c00438ce: 01cca783 lw a5,28(s9) + c00438d2: df95 beqz a5,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 PEEK_CHAR(c, cptr, cbuf_end); - c0043704: 00099563 bnez s3,c004370e + c00438d4: 00099563 bnez s3,c00438de /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 1) - c0043708: 00044503 lbu a0,0(s0) - c004370c: b72d j c0043636 + c00438d8: 00044503 lbu a0,0(s0) + c00438dc: b72d j c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 2) - c004370e: 00045503 lhu a0,0(s0) - c0043712: 3ff00693 li a3,1023 - c0043716: 0155073b addw a4,a0,s5 - c004371a: 87aa mv a5,a0 - c004371c: f0e6ede3 bltu a3,a4,c0043636 + c00438de: 00045503 lhu a0,0(s0) + c00438e2: 3ff00693 li a3,1023 + c00438e6: 0155073b addw a4,a0,s5 + c00438ea: 87aa mv a5,a0 + c00438ec: f0e6ede3 bltu a3,a4,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 4) - c0043720: 4709 li a4,2 - c0043722: f0e99ae3 bne s3,a4,c0043636 + c00438f0: 4709 li a4,2 + c00438f2: f0e99ae3 bne s3,a4,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 6) - c0043726: 00240713 addi a4,s0,2 - c004372a: f16776e3 bgeu a4,s6,c0043636 + c00438f6: 00240713 addi a4,s0,2 + c00438fa: f16776e3 bgeu a4,s6,c0043806 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2162 (discriminator 8) - c004372e: 00245703 lhu a4,2(s0) - c0043732: 00ea063b addw a2,s4,a4 - c0043736: b75d j c00436dc + c00438fe: 00245703 lhu a4,2(s0) + c0043902: 00ea063b addw a2,s4,a4 + c0043906: b75d j c00438ac /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2167 if (cptr == cbuf_end) - c0043738: f16403e3 beq s0,s6,c004363e + c0043908: f16403e3 beq s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 GET_CHAR(c, cptr, cbuf_end); - c004373c: 00099b63 bnez s3,c0043752 + c004390c: 00099b63 bnez s3,c0043922 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 1) - c0043740: 00044503 lbu a0,0(s0) - c0043744: 00140493 addi s1,s0,1 + c0043910: 00044503 lbu a0,0(s0) + c0043914: 00140493 addi s1,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2170 (discriminator 12) if (is_line_terminator(c)) - c0043748: bbdff0ef jal ra,c0043304 - c004374c: dc050ae3 beqz a0,c0043520 - c0043750: b5fd j c004363e + c0043918: bbdff0ef jal ra,c00434d4 + c004391c: dc050ae3 beqz a0,c00436f0 + c0043920: b5fd j c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 2) GET_CHAR(c, cptr, cbuf_end); - c0043752: 00045503 lhu a0,0(s0) - c0043756: 3ff00693 li a3,1023 - c004375a: 00240493 addi s1,s0,2 - c004375e: 0155073b addw a4,a0,s5 - c0043762: fee6e3e3 bltu a3,a4,c0043748 + c0043922: 00045503 lhu a0,0(s0) + c0043926: 3ff00693 li a3,1023 + c004392a: 00240493 addi s1,s0,2 + c004392e: 0155073b addw a4,a0,s5 + c0043932: fee6e3e3 bltu a3,a4,c0043918 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 4) - c0043766: 4709 li a4,2 - c0043768: fee990e3 bne s3,a4,c0043748 + c0043936: 4709 li a4,2 + c0043938: fee990e3 bne s3,a4,c0043918 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 6) - c004376c: fd64fee3 bgeu s1,s6,c0043748 + c004393c: fd64fee3 bgeu s1,s6,c0043918 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 8) - c0043770: 00245703 lhu a4,2(s0) - c0043774: 00ea063b addw a2,s4,a4 - c0043778: fcc6e8e3 bltu a3,a2,c0043748 + c0043940: 00245703 lhu a4,2(s0) + c0043944: 00ea063b addw a2,s4,a4 + c0043948: fcc6e8e3 bltu a3,a2,c0043918 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2169 (discriminator 10) - c004377c: 00a5179b slliw a5,a0,0xa - c0043780: 00100537 lui a0,0x100 - c0043784: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> - c0043788: 8d7d and a0,a0,a5 - c004378a: 3ff77713 andi a4,a4,1023 - c004378e: 8d59 or a0,a0,a4 - c0043790: 67c1 lui a5,0x10 - c0043792: 9d3d addw a0,a0,a5 - c0043794: 00440493 addi s1,s0,4 - c0043798: bf45 j c0043748 + c004394c: 00a5179b slliw a5,a0,0xa + c0043950: 00100537 lui a0,0x100 + c0043954: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043958: 8d7d and a0,a0,a5 + c004395a: 3ff77713 andi a4,a4,1023 + c004395e: 8d59 or a0,a0,a4 + c0043960: 67c1 lui a5,0x10 + c0043962: 9d3d addw a0,a0,a5 + c0043964: 00440493 addi s1,s0,4 + c0043968: bf45 j c0043918 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2174 if (cptr == cbuf_end) - c004379a: eb6402e3 beq s0,s6,c004363e + c004396a: eb6402e3 beq s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 GET_CHAR(c, cptr, cbuf_end); - c004379e: 00099463 bnez s3,c00437a6 + c004396e: 00099463 bnez s3,c0043976 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 (discriminator 1) - c00437a2: 0405 addi s0,s0,1 - c00437a4: a805 j c00437d4 + c0043972: 0405 addi s0,s0,1 + c0043974: a805 j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 (discriminator 2) - c00437a6: 00045703 lhu a4,0(s0) - c00437aa: 3ff00693 li a3,1023 - c00437ae: 00240793 addi a5,s0,2 - c00437b2: 0157073b addw a4,a4,s5 - c00437b6: 00e6ee63 bltu a3,a4,c00437d2 + c0043976: 00045703 lhu a4,0(s0) + c004397a: 3ff00693 li a3,1023 + c004397e: 00240793 addi a5,s0,2 + c0043982: 0157073b addw a4,a4,s5 + c0043986: 00e6ee63 bltu a3,a4,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 (discriminator 4) - c00437ba: 4709 li a4,2 - c00437bc: 00e99b63 bne s3,a4,c00437d2 + c004398a: 4709 li a4,2 + c004398c: 00e99b63 bne s3,a4,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 (discriminator 6) - c00437c0: 0167f963 bgeu a5,s6,c00437d2 + c0043990: 0167f963 bgeu a5,s6,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2176 (discriminator 8) - c00437c4: 00245703 lhu a4,2(s0) - c00437c8: 0411 addi s0,s0,4 - c00437ca: 0147073b addw a4,a4,s4 - c00437ce: 00e6f363 bgeu a3,a4,c00437d4 - c00437d2: 843e mv s0,a5 + c0043994: 00245703 lhu a4,2(s0) + c0043998: 0411 addi s0,s0,4 + c004399a: 0147073b addw a4,a4,s4 + c004399e: 00e6f363 bgeu a3,a4,c00439a4 + c00439a2: 843e mv s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2381 pc += (int)next_pos; - c00437d4: 84ca mv s1,s2 - c00437d6: b6d1 j c004339a + c00439a4: 84ca mv s1,s2 + c00439a6: b6d1 j c004356a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2180 val = *pc++; - c00437d8: 0014c683 lbu a3,1(s1) + c00439a8: 0014c683 lbu a3,1(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2181 assert(val < s->capture_count); - c00437dc: 014ca603 lw a2,20(s9) + c00439ac: 014ca603 lw a2,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2180 val = *pc++; - c00437e0: 00248913 addi s2,s1,2 + c00439b0: 00248913 addi s2,s1,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2181 assert(val < s->capture_count); - c00437e4: 00c6ec63 bltu a3,a2,c00437fc + c00439b4: 00c6ec63 bltu a3,a2,c00439cc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2181 (discriminator 1) - c00437e8: 6585 lui a1,0x1 - c00437ea: 4601 li a2,0 - c00437ec: 88558593 addi a1,a1,-1915 # 885 <__clzdi2-0xbffff77b> + c00439b8: 6585 lui a1,0x1 + c00439ba: 4601 li a2,0 + c00439bc: 88558593 addi a1,a1,-1915 # 885 <__clzdi2-0xbffff77b> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2190 (discriminator 1) assert(val2 < s->capture_count); - c00437f0: 00023517 auipc a0,0x23 - c00437f4: 7a050513 addi a0,a0,1952 # c0066f90 - c00437f8: 220100ef jal ra,c0053a18 <__assert> + c00439c0: 00024517 auipc a0,0x24 + c00439c4: 83050513 addi a0,a0,-2000 # c00671f0 + c00439c8: 220100ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2182 (discriminator 2) capture[2 * val + opcode - REOP_save_start] = (uint8_t *)cptr; - c00437fc: 0016971b slliw a4,a3,0x1 - c0043800: 37d5 addiw a5,a5,-11 - c0043802: 9fb9 addw a5,a5,a4 - c0043804: 02079713 slli a4,a5,0x20 - c0043808: 01d75793 srli a5,a4,0x1d - c004380c: 97de add a5,a5,s7 - c004380e: e380 sd s0,0(a5) + c00439cc: 0016971b slliw a4,a3,0x1 + c00439d0: 37d5 addiw a5,a5,-11 + c00439d2: 9fb9 addw a5,a5,a4 + c00439d4: 02079713 slli a4,a5,0x20 + c00439d8: 01d75793 srli a5,a4,0x1d + c00439dc: 97de add a5,a5,s7 + c00439de: e380 sd s0,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2183 (discriminator 2) break; - c0043810: b7d1 j c00437d4 + c00439e0: b7d1 j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2188 val2 = pc[1]; - c0043812: 0024c603 lbu a2,2(s1) + c00439e2: 0024c603 lbu a2,2(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2190 assert(val2 < s->capture_count); - c0043816: 014ca703 lw a4,20(s9) + c00439e6: 014ca703 lw a4,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2187 val = pc[0]; - c004381a: 0014c683 lbu a3,1(s1) + c00439ea: 0014c683 lbu a3,1(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2189 pc += 2; - c004381e: 00348913 addi s2,s1,3 + c00439ee: 00348913 addi s2,s1,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2190 assert(val2 < s->capture_count); - c0043822: 02e67663 bgeu a2,a4,c004384e - c0043826: 0016979b slliw a5,a3,0x1 - c004382a: 02079713 slli a4,a5,0x20 - c004382e: 2785 addiw a5,a5,1 - c0043830: 1782 slli a5,a5,0x20 - c0043832: 8375 srli a4,a4,0x1d - c0043834: 83f5 srli a5,a5,0x1d - c0043836: 975e add a4,a4,s7 - c0043838: 97de add a5,a5,s7 + c00439f2: 02e67663 bgeu a2,a4,c0043a1e + c00439f6: 0016979b slliw a5,a3,0x1 + c00439fa: 02079713 slli a4,a5,0x20 + c00439fe: 2785 addiw a5,a5,1 + c0043a00: 1782 slli a5,a5,0x20 + c0043a02: 8375 srli a4,a4,0x1d + c0043a04: 83f5 srli a5,a5,0x1d + c0043a06: 975e add a4,a4,s7 + c0043a08: 97de add a5,a5,s7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2191 while (val <= val2) { - c004383a: f8d66de3 bltu a2,a3,c00437d4 + c0043a0a: f8d66de3 bltu a2,a3,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2192 capture[2 * val] = NULL; - c004383e: 00073023 sd zero,0(a4) + c0043a0e: 00073023 sd zero,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2193 capture[2 * val + 1] = NULL; - c0043842: 0007b023 sd zero,0(a5) # 10000 <__clzdi2-0xbfff0000> + c0043a12: 0007b023 sd zero,0(a5) # 10000 <__clzdi2-0xbfff0000> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2194 val++; - c0043846: 2685 addiw a3,a3,1 - c0043848: 0741 addi a4,a4,16 - c004384a: 07c1 addi a5,a5,16 - c004384c: b7fd j c004383a + c0043a16: 2685 addiw a3,a3,1 + c0043a18: 0741 addi a4,a4,16 + c0043a1a: 07c1 addi a5,a5,16 + c0043a1c: b7fd j c0043a0a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2190 (discriminator 1) assert(val2 < s->capture_count); - c004384e: 6585 lui a1,0x1 - c0043850: 4601 li a2,0 - c0043852: 88e58593 addi a1,a1,-1906 # 88e <__clzdi2-0xbffff772> - c0043856: bf69 j c00437f0 + c0043a1e: 6585 lui a1,0x1 + c0043a20: 4601 li a2,0 + c0043a22: 88e58593 addi a1,a1,-1906 # 88e <__clzdi2-0xbffff772> + c0043a26: bf69 j c00439c0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043858: 0024c703 lbu a4,2(s1) - c004385c: 0014c783 lbu a5,1(s1) + c0043a28: 0024c703 lbu a4,2(s1) + c0043a2c: 0014c783 lbu a5,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2201 stack[stack_len++] = val; - c0043860: 003d9693 slli a3,s11,0x3 + c0043a30: 003d9693 slli a3,s11,0x3 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043864: 0722 slli a4,a4,0x8 - c0043866: 8f5d or a4,a4,a5 - c0043868: 0034c783 lbu a5,3(s1) + c0043a34: 0722 slli a4,a4,0x8 + c0043a36: 8f5d or a4,a4,a5 + c0043a38: 0034c783 lbu a5,3(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2201 - c004386c: 96e2 add a3,a3,s8 + c0043a3c: 96e2 add a3,a3,s8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2200 pc += 4; - c004386e: 00548913 addi s2,s1,5 + c0043a3e: 00548913 addi s2,s1,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043872: 07c2 slli a5,a5,0x10 - c0043874: 8f5d or a4,a4,a5 - c0043876: 0044c783 lbu a5,4(s1) - c004387a: 07e2 slli a5,a5,0x18 + c0043a42: 07c2 slli a5,a5,0x10 + c0043a44: 8f5d or a4,a4,a5 + c0043a46: 0044c783 lbu a5,4(s1) + c0043a4a: 07e2 slli a5,a5,0x18 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2201 stack[stack_len++] = val; - c004387c: 8fd9 or a5,a5,a4 - c004387e: e29c sd a5,0(a3) + c0043a4c: 8fd9 or a5,a5,a4 + c0043a4e: e29c sd a5,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2214 stack[stack_len++] = (uintptr_t)cptr; - c0043880: 2d85 addiw s11,s11,1 + c0043a50: 2d85 addiw s11,s11,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2215 break; - c0043882: bf89 j c00437d4 + c0043a52: bf89 j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2204 stack_len--; - c0043884: 3dfd addiw s11,s11,-1 + c0043a54: 3dfd addiw s11,s11,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2205 break; - c0043886: b7b9 j c00437d4 + c0043a56: b7b9 j c00439a4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043888: 0024c703 lbu a4,2(s1) - c004388c: 0014c783 lbu a5,1(s1) + c0043a58: 0024c703 lbu a4,2(s1) + c0043a5c: 0014c783 lbu a5,1(s1) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2208 pc += 4; - c0043890: 00548913 addi s2,s1,5 + c0043a60: 00548913 addi s2,s1,5 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043894: 0722 slli a4,a4,0x8 - c0043896: 8f5d or a4,a4,a5 - c0043898: 0034c783 lbu a5,3(s1) - c004389c: 07c2 slli a5,a5,0x10 - c004389e: 8f5d or a4,a4,a5 - c00438a0: 0044c783 lbu a5,4(s1) - c00438a4: 07e2 slli a5,a5,0x18 - c00438a6: 8fd9 or a5,a5,a4 + c0043a64: 0722 slli a4,a4,0x8 + c0043a66: 8f5d or a4,a4,a5 + c0043a68: 0034c783 lbu a5,3(s1) + c0043a6c: 07c2 slli a5,a5,0x10 + c0043a6e: 8f5d or a4,a4,a5 + c0043a70: 0044c783 lbu a5,4(s1) + c0043a74: 07e2 slli a5,a5,0x18 + c0043a76: 8fd9 or a5,a5,a4 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2209 if (--stack[stack_len - 1] != 0) { - c00438a8: fffd871b addiw a4,s11,-1 - c00438ac: 070e slli a4,a4,0x3 - c00438ae: 9762 add a4,a4,s8 - c00438b0: 6314 ld a3,0(a4) + c0043a78: fffd871b addiw a4,s11,-1 + c0043a7c: 070e slli a4,a4,0x3 + c0043a7e: 9762 add a4,a4,s8 + c0043a80: 6314 ld a3,0(a4) get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c00438b2: 2781 sext.w a5,a5 + c0043a82: 2781 sext.w a5,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2209 - c00438b4: 16fd addi a3,a3,-1 - c00438b6: e314 sd a3,0(a4) - c00438b8: de91 beqz a3,c00437d4 - c00438ba: b38d j c004361c + c0043a84: 16fd addi a3,a3,-1 + c0043a86: e314 sd a3,0(a4) + c0043a88: de91 beqz a3,c00439a4 + c0043a8a: b38d j c00437ec /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2214 stack[stack_len++] = (uintptr_t)cptr; - c00438bc: 003d9793 slli a5,s11,0x3 - c00438c0: 97e2 add a5,a5,s8 - c00438c2: e380 sd s0,0(a5) - c00438c4: bf75 j c0043880 + c0043a8c: 003d9793 slli a5,s11,0x3 + c0043a90: 97e2 add a5,a5,s8 + c0043a92: e380 sd s0,0(a5) + c0043a94: bf75 j c0043a50 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2217 if (stack[--stack_len] == (uintptr_t)cptr) - c00438c6: 3dfd addiw s11,s11,-1 - c00438c8: 003d9793 slli a5,s11,0x3 - c00438cc: 97e2 add a5,a5,s8 - c00438ce: 639c ld a5,0(a5) - c00438d0: f0f412e3 bne s0,a5,c00437d4 - c00438d4: b3ad j c004363e + c0043a96: 3dfd addiw s11,s11,-1 + c0043a98: 003d9793 slli a5,s11,0x3 + c0043a9c: 97e2 add a5,a5,s8 + c0043a9e: 639c ld a5,0(a5) + c0043aa0: f0f412e3 bne s0,a5,c00439a4 + c0043aa4: b3ad j c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2225 if (cptr == s->cbuf) { - c00438d6: 000cb783 ld a5,0(s9) + c0043aa6: 000cb783 ld a5,0(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2226 v1 = FALSE; - c00438da: 4481 li s1,0 + c0043aaa: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2225 if (cptr == s->cbuf) { - c00438dc: 00878963 beq a5,s0,c00438ee + c0043aac: 00878963 beq a5,s0,c0043abe /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 PEEK_PREV_CHAR(c, cptr, s->cbuf); - c00438e0: 02099863 bnez s3,c0043910 + c0043ab0: 02099863 bnez s3,c0043ae0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 1) - c00438e4: fff44503 lbu a0,-1(s0) + c0043ab4: fff44503 lbu a0,-1(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2229 (discriminator 12) v1 = is_word_char(c); - c00438e8: a41ff0ef jal ra,c0043328 - c00438ec: 84aa mv s1,a0 + c0043ab8: a41ff0ef jal ra,c00434f8 + c0043abc: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2233 v2 = FALSE; - c00438ee: 4501 li a0,0 + c0043abe: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2232 if (cptr >= cbuf_end) { - c00438f0: 01647863 bgeu s0,s6,c0043900 + c0043ac0: 01647863 bgeu s0,s6,c0043ad0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 PEEK_CHAR(c, cptr, cbuf_end); - c00438f4: 06099263 bnez s3,c0043958 + c0043ac4: 06099263 bnez s3,c0043b28 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 1) - c00438f8: 00044503 lbu a0,0(s0) + c0043ac8: 00044503 lbu a0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2236 (discriminator 12) v2 = is_word_char(c); - c00438fc: a2dff0ef jal ra,c0043328 + c0043acc: a2dff0ef jal ra,c00434f8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2238 if (v1 ^ v2 ^ (REOP_not_word_boundary - opcode)) - c0043900: 8ca9 xor s1,s1,a0 - c0043902: 47c9 li a5,18 - c0043904: 41a7883b subw a6,a5,s10 - c0043908: 2481 sext.w s1,s1 - c004390a: ec9805e3 beq a6,s1,c00437d4 - c004390e: bb05 j c004363e + c0043ad0: 8ca9 xor s1,s1,a0 + c0043ad2: 47c9 li a5,18 + c0043ad4: 41a7883b subw a6,a5,s10 + c0043ad8: 2481 sext.w s1,s1 + c0043ada: ec9805e3 beq a6,s1,c00439a4 + c0043ade: bb05 j c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 2) PEEK_PREV_CHAR(c, cptr, s->cbuf); - c0043910: ffe45703 lhu a4,-2(s0) - c0043914: 3ff00693 li a3,1023 - c0043918: 00ea063b addw a2,s4,a4 - c004391c: 0007051b sext.w a0,a4 - c0043920: fcc6e4e3 bltu a3,a2,c00438e8 + c0043ae0: ffe45703 lhu a4,-2(s0) + c0043ae4: 3ff00693 li a3,1023 + c0043ae8: 00ea063b addw a2,s4,a4 + c0043aec: 0007051b sext.w a0,a4 + c0043af0: fcc6e4e3 bltu a3,a2,c0043ab8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 4) - c0043924: 4609 li a2,2 - c0043926: fcc991e3 bne s3,a2,c00438e8 + c0043af4: 4609 li a2,2 + c0043af6: fcc991e3 bne s3,a2,c0043ab8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 6) - c004392a: ffc40613 addi a2,s0,-4 - c004392e: faf66de3 bltu a2,a5,c00438e8 + c0043afa: ffc40613 addi a2,s0,-4 + c0043afe: faf66de3 bltu a2,a5,c0043ab8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 8) - c0043932: ffc45783 lhu a5,-4(s0) - c0043936: 0157863b addw a2,a5,s5 - c004393a: fac6e7e3 bltu a3,a2,c00438e8 + c0043b02: ffc45783 lhu a5,-4(s0) + c0043b06: 0157863b addw a2,a5,s5 + c0043b0a: fac6e7e3 bltu a3,a2,c0043ab8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2228 (discriminator 10) - c004393e: 00100537 lui a0,0x100 - c0043942: 00a7979b slliw a5,a5,0xa - c0043946: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> - c004394a: 8d7d and a0,a0,a5 - c004394c: 3ff77713 andi a4,a4,1023 - c0043950: 8d59 or a0,a0,a4 - c0043952: 67c1 lui a5,0x10 - c0043954: 9d3d addw a0,a0,a5 - c0043956: bf49 j c00438e8 + c0043b0e: 00100537 lui a0,0x100 + c0043b12: 00a7979b slliw a5,a5,0xa + c0043b16: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043b1a: 8d7d and a0,a0,a5 + c0043b1c: 3ff77713 andi a4,a4,1023 + c0043b20: 8d59 or a0,a0,a4 + c0043b22: 67c1 lui a5,0x10 + c0043b24: 9d3d addw a0,a0,a5 + c0043b26: bf49 j c0043ab8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 2) PEEK_CHAR(c, cptr, cbuf_end); - c0043958: 00045503 lhu a0,0(s0) - c004395c: 3ff00693 li a3,1023 - c0043960: 0155073b addw a4,a0,s5 - c0043964: f8e6ece3 bltu a3,a4,c00438fc + c0043b28: 00045503 lhu a0,0(s0) + c0043b2c: 3ff00693 li a3,1023 + c0043b30: 0155073b addw a4,a0,s5 + c0043b34: f8e6ece3 bltu a3,a4,c0043acc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 4) - c0043968: 4709 li a4,2 - c004396a: f8e999e3 bne s3,a4,c00438fc + c0043b38: 4709 li a4,2 + c0043b3a: f8e999e3 bne s3,a4,c0043acc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 6) - c004396e: 00240713 addi a4,s0,2 - c0043972: f96775e3 bgeu a4,s6,c00438fc + c0043b3e: 00240713 addi a4,s0,2 + c0043b42: f96775e3 bgeu a4,s6,c0043acc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 8) - c0043976: 00245703 lhu a4,2(s0) - c004397a: 00ea063b addw a2,s4,a4 - c004397e: f6c6efe3 bltu a3,a2,c00438fc + c0043b46: 00245703 lhu a4,2(s0) + c0043b4a: 00ea063b addw a2,s4,a4 + c0043b4e: f6c6efe3 bltu a3,a2,c0043acc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2235 (discriminator 10) - c0043982: 00a5179b slliw a5,a0,0xa - c0043986: 00100537 lui a0,0x100 - c004398a: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> - c004398e: 8fe9 and a5,a5,a0 - c0043990: 3ff77713 andi a4,a4,1023 - c0043994: 8fd9 or a5,a5,a4 - c0043996: 6541 lui a0,0x10 - c0043998: 9d3d addw a0,a0,a5 - c004399a: b78d j c00438fc + c0043b52: 00a5179b slliw a5,a0,0xa + c0043b56: 00100537 lui a0,0x100 + c0043b5a: c0050513 addi a0,a0,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043b5e: 8fe9 and a5,a5,a0 + c0043b60: 3ff77713 andi a4,a4,1023 + c0043b64: 8fd9 or a5,a5,a4 + c0043b66: 6541 lui a0,0x10 + c0043b68: 9d3d addw a0,a0,a5 + c0043b6a: b78d j c0043acc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2248 val = *pc++; - c004399c: 0014c703 lbu a4,1(s1) + c0043b6c: 0014c703 lbu a4,1(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2249 if (val >= s->capture_count) - c00439a0: 014ca683 lw a3,20(s9) + c0043b70: 014ca683 lw a3,20(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2248 val = *pc++; - c00439a4: 00248913 addi s2,s1,2 + c0043b74: 00248913 addi s2,s1,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2249 if (val >= s->capture_count) - c00439a8: c8d77be3 bgeu a4,a3,c004363e + c0043b78: c8d77be3 bgeu a4,a3,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2251 cptr1_start = capture[2 * val]; - c00439ac: 0017179b slliw a5,a4,0x1 - c00439b0: 02079713 slli a4,a5,0x20 - c00439b4: 8375 srli a4,a4,0x1d - c00439b6: 975e add a4,a4,s7 - c00439b8: 6304 ld s1,0(a4) + c0043b7c: 0017179b slliw a5,a4,0x1 + c0043b80: 02079713 slli a4,a5,0x20 + c0043b84: 8375 srli a4,a4,0x1d + c0043b86: 975e add a4,a4,s7 + c0043b88: 6304 ld s1,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2253 if (!cptr1_start || !cptr1_end) - c00439ba: e0048de3 beqz s1,c00437d4 + c0043b8a: e0048de3 beqz s1,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2252 (discriminator 1) cptr1_end = capture[2 * val + 1]; - c00439be: 2785 addiw a5,a5,1 - c00439c0: 1782 slli a5,a5,0x20 - c00439c2: 83f5 srli a5,a5,0x1d - c00439c4: 97de add a5,a5,s7 - c00439c6: 639c ld a5,0(a5) + c0043b8e: 2785 addiw a5,a5,1 + c0043b90: 1782 slli a5,a5,0x20 + c0043b92: 83f5 srli a5,a5,0x1d + c0043b94: 97de add a5,a5,s7 + c0043b96: 639c ld a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2253 (discriminator 1) if (!cptr1_start || !cptr1_end) - c00439c8: e00786e3 beqz a5,c00437d4 + c0043b98: e00786e3 beqz a5,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2255 if (opcode == REOP_back_reference) { - c00439cc: 474d li a4,19 - c00439ce: 06ed1c63 bne s10,a4,c0043a46 + c0043b9c: 474d li a4,19 + c0043b9e: 06ed1c63 bne s10,a4,c0043c16 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 GET_CHAR(c2, cptr, cbuf_end); - c00439d2: 00100637 lui a2,0x100 + c0043ba2: 00100637 lui a2,0x100 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 GET_CHAR(c1, cptr1, cptr1_end); - c00439d6: 3ff00693 li a3,1023 + c0043ba6: 3ff00693 li a3,1023 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 GET_CHAR(c2, cptr, cbuf_end); - c00439da: 4809 li a6,2 - c00439dc: c0060613 addi a2,a2,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043baa: 4809 li a6,2 + c0043bac: c0060613 addi a2,a2,-1024 # ffc00 <__clzdi2-0xbff00400> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2257 while (cptr1 < cptr1_end) { - c00439e0: def4fae3 bgeu s1,a5,c00437d4 + c0043bb0: def4fae3 bgeu s1,a5,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2258 if (cptr >= cbuf_end) - c00439e4: c5647de3 bgeu s0,s6,c004363e + c0043bb4: c5647de3 bgeu s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 GET_CHAR(c1, cptr1, cptr1_end); - c00439e8: 0c099b63 bnez s3,c0043abe + c0043bb8: 0c099b63 bnez s3,c0043c8e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 1) - c00439ec: 0004c883 lbu a7,0(s1) - c00439f0: 00148e13 addi t3,s1,1 + c0043bbc: 0004c883 lbu a7,0(s1) + c0043bc0: 00148e13 addi t3,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 (discriminator 1) GET_CHAR(c2, cptr, cbuf_end); - c00439f4: 00044483 lbu s1,0(s0) - c00439f8: 00140e93 addi t4,s0,1 + c0043bc4: 00044483 lbu s1,0(s0) + c0043bc8: 00140e93 addi t4,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2262 (discriminator 12) if (s->ignore_case) { - c00439fc: 020ca703 lw a4,32(s9) - c0043a00: cf15 beqz a4,c0043a3c + c0043bcc: 020ca703 lw a4,32(s9) + c0043bd0: cf15 beqz a4,c0043c0c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2263 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a02: 024ca583 lw a1,36(s9) - c0043a06: 8546 mv a0,a7 - c0043a08: f872 sd t3,48(sp) - c0043a0a: f43e sd a5,40(sp) - c0043a0c: f076 sd t4,32(sp) - c0043a0e: 4e5020ef jal ra,c00466f2 + c0043bd2: 024ca583 lw a1,36(s9) + c0043bd6: 8546 mv a0,a7 + c0043bd8: f872 sd t3,48(sp) + c0043bda: f43e sd a5,40(sp) + c0043bdc: f076 sd t4,32(sp) + c0043bde: 4e5020ef jal ra,c00468c2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2264 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a12: 024ca583 lw a1,36(s9) + c0043be2: 024ca583 lw a1,36(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2263 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a16: 0005089b sext.w a7,a0 + c0043be6: 0005089b sext.w a7,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2264 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a1a: 8526 mv a0,s1 + c0043bea: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2263 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a1c: ec46 sd a7,24(sp) + c0043bec: ec46 sd a7,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2264 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a1e: 4d5020ef jal ra,c00466f2 - c0043a22: 001007b7 lui a5,0x100 - c0043a26: c0078613 addi a2,a5,-1024 # ffc00 <__clzdi2-0xbff00400> - c0043a2a: 7e42 ld t3,48(sp) - c0043a2c: 77a2 ld a5,40(sp) - c0043a2e: 7e82 ld t4,32(sp) - c0043a30: 68e2 ld a7,24(sp) - c0043a32: 0005049b sext.w s1,a0 - c0043a36: 4809 li a6,2 - c0043a38: 3ff00693 li a3,1023 + c0043bee: 4d5020ef jal ra,c00468c2 + c0043bf2: 001007b7 lui a5,0x100 + c0043bf6: c0078613 addi a2,a5,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043bfa: 7e42 ld t3,48(sp) + c0043bfc: 77a2 ld a5,40(sp) + c0043bfe: 7e82 ld t4,32(sp) + c0043c00: 68e2 ld a7,24(sp) + c0043c02: 0005049b sext.w s1,a0 + c0043c06: 4809 li a6,2 + c0043c08: 3ff00693 li a3,1023 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2266 if (c1 != c2) - c0043a3c: c09891e3 bne a7,s1,c004363e - c0043a40: 84f2 mv s1,t3 - c0043a42: 8476 mv s0,t4 - c0043a44: bf71 j c00439e0 + c0043c0c: c09891e3 bne a7,s1,c004380e + c0043c10: 84f2 mv s1,t3 + c0043c12: 8476 mv s0,t4 + c0043c14: bf71 j c0043bb0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 GET_PREV_CHAR(c2, cptr, s->cbuf); - c0043a46: 001008b7 lui a7,0x100 + c0043c16: 001008b7 lui a7,0x100 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 GET_PREV_CHAR(c1, cptr1, cptr1_start); - c0043a4a: 3ff00813 li a6,1023 + c0043c1a: 3ff00813 li a6,1023 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 GET_PREV_CHAR(c2, cptr, s->cbuf); - c0043a4e: 4e09 li t3,2 - c0043a50: c0088893 addi a7,a7,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043c1e: 4e09 li t3,2 + c0043c20: c0088893 addi a7,a7,-1024 # ffc00 <__clzdi2-0xbff00400> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2271 while (cptr1 > cptr1_start) { - c0043a54: d8f4f0e3 bgeu s1,a5,c00437d4 + c0043c24: d8f4f0e3 bgeu s1,a5,c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2272 if (cptr == s->cbuf) - c0043a58: 000cbf03 ld t5,0(s9) - c0043a5c: be8f01e3 beq t5,s0,c004363e + c0043c28: 000cbf03 ld t5,0(s9) + c0043c2c: be8f01e3 beq t5,s0,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 GET_PREV_CHAR(c1, cptr1, cptr1_start); - c0043a60: 0c099b63 bnez s3,c0043b36 + c0043c30: 0c099b63 bnez s3,c0043d06 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 1) - c0043a64: fff7c703 lbu a4,-1(a5) - c0043a68: fff78613 addi a2,a5,-1 + c0043c34: fff7c703 lbu a4,-1(a5) + c0043c38: fff78613 addi a2,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 (discriminator 1) GET_PREV_CHAR(c2, cptr, s->cbuf); - c0043a6c: fff44783 lbu a5,-1(s0) - c0043a70: fff40e93 addi t4,s0,-1 + c0043c3c: fff44783 lbu a5,-1(s0) + c0043c40: fff40e93 addi t4,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2276 (discriminator 12) if (s->ignore_case) { - c0043a74: 020ca683 lw a3,32(s9) - c0043a78: ce95 beqz a3,c0043ab4 + c0043c44: 020ca683 lw a3,32(s9) + c0043c48: ce95 beqz a3,c0043c84 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2277 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a7a: 024ca583 lw a1,36(s9) - c0043a7e: 853a mv a0,a4 - c0043a80: f832 sd a2,48(sp) - c0043a82: f076 sd t4,32(sp) - c0043a84: f43e sd a5,40(sp) - c0043a86: 46d020ef jal ra,c00466f2 + c0043c4a: 024ca583 lw a1,36(s9) + c0043c4e: 853a mv a0,a4 + c0043c50: f832 sd a2,48(sp) + c0043c52: f076 sd t4,32(sp) + c0043c54: f43e sd a5,40(sp) + c0043c56: 46d020ef jal ra,c00468c2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2278 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a8a: 77a2 ld a5,40(sp) - c0043a8c: 024ca583 lw a1,36(s9) + c0043c5a: 77a2 ld a5,40(sp) + c0043c5c: 024ca583 lw a1,36(s9) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2277 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a90: 0005071b sext.w a4,a0 + c0043c60: 0005071b sext.w a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2278 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a94: 853e mv a0,a5 + c0043c64: 853e mv a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2277 c1 = lre_canonicalize(c1, s->is_utf16); - c0043a96: ec3a sd a4,24(sp) + c0043c66: ec3a sd a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2278 c2 = lre_canonicalize(c2, s->is_utf16); - c0043a98: 45b020ef jal ra,c00466f2 - c0043a9c: 00100737 lui a4,0x100 - c0043aa0: c0070893 addi a7,a4,-1024 # ffc00 <__clzdi2-0xbff00400> - c0043aa4: 7642 ld a2,48(sp) - c0043aa6: 7e82 ld t4,32(sp) - c0043aa8: 6762 ld a4,24(sp) - c0043aaa: 0005079b sext.w a5,a0 - c0043aae: 4e09 li t3,2 - c0043ab0: 3ff00813 li a6,1023 + c0043c68: 45b020ef jal ra,c00468c2 + c0043c6c: 00100737 lui a4,0x100 + c0043c70: c0070893 addi a7,a4,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043c74: 7642 ld a2,48(sp) + c0043c76: 7e82 ld t4,32(sp) + c0043c78: 6762 ld a4,24(sp) + c0043c7a: 0005079b sext.w a5,a0 + c0043c7e: 4e09 li t3,2 + c0043c80: 3ff00813 li a6,1023 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2280 if (c1 != c2) - c0043ab4: b8f715e3 bne a4,a5,c004363e - c0043ab8: 87b2 mv a5,a2 - c0043aba: 8476 mv s0,t4 - c0043abc: bf61 j c0043a54 + c0043c84: b8f715e3 bne a4,a5,c004380e + c0043c88: 87b2 mv a5,a2 + c0043c8a: 8476 mv s0,t4 + c0043c8c: bf61 j c0043c24 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 2) GET_CHAR(c1, cptr1, cptr1_end); - c0043abe: 0004d883 lhu a7,0(s1) - c0043ac2: 00248e13 addi t3,s1,2 - c0043ac6: 015885bb addw a1,a7,s5 - c0043aca: 02b6e763 bltu a3,a1,c0043af8 + c0043c8e: 0004d883 lhu a7,0(s1) + c0043c92: 00248e13 addi t3,s1,2 + c0043c96: 015885bb addw a1,a7,s5 + c0043c9a: 02b6e763 bltu a3,a1,c0043cc8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 4) - c0043ace: 03099563 bne s3,a6,c0043af8 + c0043c9e: 03099563 bne s3,a6,c0043cc8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 6) - c0043ad2: 02fe7363 bgeu t3,a5,c0043af8 + c0043ca2: 02fe7363 bgeu t3,a5,c0043cc8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 8) - c0043ad6: 0024d583 lhu a1,2(s1) - c0043ada: 00ba053b addw a0,s4,a1 - c0043ade: 00a6ed63 bltu a3,a0,c0043af8 + c0043ca6: 0024d583 lhu a1,2(s1) + c0043caa: 00ba053b addw a0,s4,a1 + c0043cae: 00a6ed63 bltu a3,a0,c0043cc8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2260 (discriminator 10) - c0043ae2: 00a8971b slliw a4,a7,0xa - c0043ae6: 8f71 and a4,a4,a2 - c0043ae8: 3ff5f593 andi a1,a1,1023 - c0043aec: 8f4d or a4,a4,a1 - c0043aee: 68c1 lui a7,0x10 - c0043af0: 00e888bb addw a7,a7,a4 - c0043af4: 00448e13 addi t3,s1,4 + c0043cb2: 00a8971b slliw a4,a7,0xa + c0043cb6: 8f71 and a4,a4,a2 + c0043cb8: 3ff5f593 andi a1,a1,1023 + c0043cbc: 8f4d or a4,a4,a1 + c0043cbe: 68c1 lui a7,0x10 + c0043cc0: 00e888bb addw a7,a7,a4 + c0043cc4: 00448e13 addi t3,s1,4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 GET_CHAR(c2, cptr, cbuf_end); - c0043af8: 00045483 lhu s1,0(s0) - c0043afc: 00240e93 addi t4,s0,2 - c0043b00: 015485bb addw a1,s1,s5 - c0043b04: 8726 mv a4,s1 - c0043b06: eeb6ebe3 bltu a3,a1,c00439fc + c0043cc8: 00045483 lhu s1,0(s0) + c0043ccc: 00240e93 addi t4,s0,2 + c0043cd0: 015485bb addw a1,s1,s5 + c0043cd4: 8726 mv a4,s1 + c0043cd6: eeb6ebe3 bltu a3,a1,c0043bcc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 (discriminator 4) - c0043b0a: ef0999e3 bne s3,a6,c00439fc + c0043cda: ef0999e3 bne s3,a6,c0043bcc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 (discriminator 6) - c0043b0e: ef6ef7e3 bgeu t4,s6,c00439fc + c0043cde: ef6ef7e3 bgeu t4,s6,c0043bcc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 (discriminator 8) - c0043b12: 00245583 lhu a1,2(s0) - c0043b16: 00ba053b addw a0,s4,a1 - c0043b1a: eea6e1e3 bltu a3,a0,c00439fc + c0043ce2: 00245583 lhu a1,2(s0) + c0043ce6: 00ba053b addw a0,s4,a1 + c0043cea: eea6e1e3 bltu a3,a0,c0043bcc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2261 (discriminator 10) - c0043b1e: 00a7171b slliw a4,a4,0xa - c0043b22: 00c774b3 and s1,a4,a2 - c0043b26: 3ff5f713 andi a4,a1,1023 - c0043b2a: 8f45 or a4,a4,s1 - c0043b2c: 64c1 lui s1,0x10 - c0043b2e: 9cb9 addw s1,s1,a4 - c0043b30: 00440e93 addi t4,s0,4 - c0043b34: b5e1 j c00439fc + c0043cee: 00a7171b slliw a4,a4,0xa + c0043cf2: 00c774b3 and s1,a4,a2 + c0043cf6: 3ff5f713 andi a4,a1,1023 + c0043cfa: 8f45 or a4,a4,s1 + c0043cfc: 64c1 lui s1,0x10 + c0043cfe: 9cb9 addw s1,s1,a4 + c0043d00: 00440e93 addi t4,s0,4 + c0043d04: b5e1 j c0043bcc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 2) GET_PREV_CHAR(c1, cptr1, cptr1_start); - c0043b36: ffe7d583 lhu a1,-2(a5) - c0043b3a: ffe78613 addi a2,a5,-2 - c0043b3e: 00ba06bb addw a3,s4,a1 - c0043b42: 0005871b sext.w a4,a1 - c0043b46: 02d86763 bltu a6,a3,c0043b74 + c0043d06: ffe7d583 lhu a1,-2(a5) + c0043d0a: ffe78613 addi a2,a5,-2 + c0043d0e: 00ba06bb addw a3,s4,a1 + c0043d12: 0005871b sext.w a4,a1 + c0043d16: 02d86763 bltu a6,a3,c0043d44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 4) - c0043b4a: 03c99563 bne s3,t3,c0043b74 + c0043d1a: 03c99563 bne s3,t3,c0043d44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 6) - c0043b4e: 02c4f363 bgeu s1,a2,c0043b74 + c0043d1e: 02c4f363 bgeu s1,a2,c0043d44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 8) - c0043b52: ffc7d683 lhu a3,-4(a5) - c0043b56: 0156853b addw a0,a3,s5 - c0043b5a: 00a86d63 bltu a6,a0,c0043b74 + c0043d22: ffc7d683 lhu a3,-4(a5) + c0043d26: 0156853b addw a0,a3,s5 + c0043d2a: 00a86d63 bltu a6,a0,c0043d44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2274 (discriminator 10) - c0043b5e: 00a6969b slliw a3,a3,0xa - c0043b62: 0116f733 and a4,a3,a7 - c0043b66: 3ff5f693 andi a3,a1,1023 - c0043b6a: 8ed9 or a3,a3,a4 - c0043b6c: 6741 lui a4,0x10 - c0043b6e: ffc78613 addi a2,a5,-4 - c0043b72: 9f35 addw a4,a4,a3 + c0043d2e: 00a6969b slliw a3,a3,0xa + c0043d32: 0116f733 and a4,a3,a7 + c0043d36: 3ff5f693 andi a3,a1,1023 + c0043d3a: 8ed9 or a3,a3,a4 + c0043d3c: 6741 lui a4,0x10 + c0043d3e: ffc78613 addi a2,a5,-4 + c0043d42: 9f35 addw a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 GET_PREV_CHAR(c2, cptr, s->cbuf); - c0043b74: ffe45583 lhu a1,-2(s0) - c0043b78: ffe40e93 addi t4,s0,-2 - c0043b7c: 00ba06bb addw a3,s4,a1 - c0043b80: 0005879b sext.w a5,a1 - c0043b84: eed868e3 bltu a6,a3,c0043a74 + c0043d44: ffe45583 lhu a1,-2(s0) + c0043d48: ffe40e93 addi t4,s0,-2 + c0043d4c: 00ba06bb addw a3,s4,a1 + c0043d50: 0005879b sext.w a5,a1 + c0043d54: eed868e3 bltu a6,a3,c0043c44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 (discriminator 4) - c0043b88: efc996e3 bne s3,t3,c0043a74 + c0043d58: efc996e3 bne s3,t3,c0043c44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 (discriminator 6) - c0043b8c: efdf74e3 bgeu t5,t4,c0043a74 + c0043d5c: efdf74e3 bgeu t5,t4,c0043c44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 (discriminator 8) - c0043b90: ffc45683 lhu a3,-4(s0) - c0043b94: 0156853b addw a0,a3,s5 - c0043b98: eca86ee3 bltu a6,a0,c0043a74 + c0043d60: ffc45683 lhu a3,-4(s0) + c0043d64: 0156853b addw a0,a3,s5 + c0043d68: eca86ee3 bltu a6,a0,c0043c44 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2275 (discriminator 10) - c0043b9c: 00a6969b slliw a3,a3,0xa - c0043ba0: 0116f7b3 and a5,a3,a7 - c0043ba4: 3ff5f693 andi a3,a1,1023 - c0043ba8: 8edd or a3,a3,a5 - c0043baa: 67c1 lui a5,0x10 - c0043bac: ffc40e93 addi t4,s0,-4 - c0043bb0: 9fb5 addw a5,a5,a3 - c0043bb2: b5c9 j c0043a74 + c0043d6c: 00a6969b slliw a3,a3,0xa + c0043d70: 0116f7b3 and a5,a3,a7 + c0043d74: 3ff5f693 andi a3,a1,1023 + c0043d78: 8edd or a3,a3,a5 + c0043d7a: 67c1 lui a5,0x10 + c0043d7c: ffc40e93 addi t4,s0,-4 + c0043d80: 9fb5 addw a5,a5,a3 + c0043d82: b5c9 j c0043c44 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0043bb4: 0024c903 lbu s2,2(s1) # 10002 <__clzdi2-0xbffefffe> - c0043bb8: 0014c783 lbu a5,1(s1) - c0043bbc: 0922 slli s2,s2,0x8 - c0043bbe: 00f96933 or s2,s2,a5 + c0043d84: 0024c903 lbu s2,2(s1) # 10002 <__clzdi2-0xbffefffe> + c0043d88: 0014c783 lbu a5,1(s1) + c0043d8c: 0922 slli s2,s2,0x8 + c0043d8e: 00f96933 or s2,s2,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2293 if (cptr >= cbuf_end) - c0043bc2: a7647ee3 bgeu s0,s6,c004363e + c0043d92: a7647ee3 bgeu s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 GET_CHAR(c, cptr, cbuf_end); - c0043bc6: 0a099263 bnez s3,c0043c6a + c0043d96: 0a099263 bnez s3,c0043e3a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 1) - c0043bca: 00044503 lbu a0,0(s0) - c0043bce: 00140693 addi a3,s0,1 + c0043d9a: 00044503 lbu a0,0(s0) + c0043d9e: 00140693 addi a3,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2296 (discriminator 12) if (s->ignore_case) { - c0043bd2: 020ca783 lw a5,32(s9) - c0043bd6: cb81 beqz a5,c0043be6 + c0043da2: 020ca783 lw a5,32(s9) + c0043da6: cb81 beqz a5,c0043db6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2297 c = lre_canonicalize(c, s->is_utf16); - c0043bd8: 024ca583 lw a1,36(s9) - c0043bdc: ec36 sd a3,24(sp) - c0043bde: 315020ef jal ra,c00466f2 - c0043be2: 66e2 ld a3,24(sp) - c0043be4: 2501 sext.w a0,a0 + c0043da8: 024ca583 lw a1,36(s9) + c0043dac: ec36 sd a3,24(sp) + c0043dae: 315020ef jal ra,c00468c2 + c0043db2: 66e2 ld a3,24(sp) + c0043db4: 2501 sext.w a0,a0 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043be6: 0044c783 lbu a5,4(s1) - c0043bea: 0034c703 lbu a4,3(s1) - c0043bee: 07a2 slli a5,a5,0x8 + c0043db6: 0044c783 lbu a5,4(s1) + c0043dba: 0034c703 lbu a4,3(s1) + c0043dbe: 07a2 slli a5,a5,0x8 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2301 if (c < low) - c0043bf0: 8fd9 or a5,a5,a4 - c0043bf2: a4f566e3 bltu a0,a5,c004363e + c0043dc0: 8fd9 or a5,a5,a4 + c0043dc2: a4f566e3 bltu a0,a5,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2303 idx_max = n - 1; - c0043bf6: fff9071b addiw a4,s2,-1 + c0043dc6: fff9071b addiw a4,s2,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2304 high = get_u16(pc + idx_max * 4 + 2); - c0043bfa: 0027179b slliw a5,a4,0x2 - c0043bfe: 2789 addiw a5,a5,2 - c0043c00: 1782 slli a5,a5,0x20 + c0043dca: 0027179b slliw a5,a4,0x2 + c0043dce: 2789 addiw a5,a5,2 + c0043dd0: 1782 slli a5,a5,0x20 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2292 pc += 2; - c0043c02: 048d addi s1,s1,3 + c0043dd2: 048d addi s1,s1,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2304 high = get_u16(pc + idx_max * 4 + 2); - c0043c04: 9381 srli a5,a5,0x20 + c0043dd4: 9381 srli a5,a5,0x20 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043c06: 97a6 add a5,a5,s1 - c0043c08: 0007c603 lbu a2,0(a5) # 10000 <__clzdi2-0xbfff0000> - c0043c0c: 0017c783 lbu a5,1(a5) + c0043dd6: 97a6 add a5,a5,s1 + c0043dd8: 0007c603 lbu a2,0(a5) # 10000 <__clzdi2-0xbfff0000> + c0043ddc: 0017c783 lbu a5,1(a5) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2291 n = get_u16(pc); /* n must be >= 1 */ - c0043c10: 0009059b sext.w a1,s2 + c0043de0: 0009059b sext.w a1,s2 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043c14: 07a2 slli a5,a5,0x8 - c0043c16: 8fd1 or a5,a5,a2 + c0043de4: 07a2 slli a5,a5,0x8 + c0043de6: 8fd1 or a5,a5,a2 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2306 if (unlikely(c >= 0xffff) && high == 0xffff) - c0043c18: 6641 lui a2,0x10 - c0043c1a: ffe60813 addi a6,a2,-2 # fffe <__clzdi2-0xbfff0002> - c0043c1e: 00a87563 bgeu a6,a0,c0043c28 + c0043de8: 6641 lui a2,0x10 + c0043dea: ffe60813 addi a6,a2,-2 # fffe <__clzdi2-0xbfff0002> + c0043dee: 00a87563 bgeu a6,a0,c0043df8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2306 (discriminator 1) - c0043c22: 167d addi a2,a2,-1 - c0043c24: 08c78c63 beq a5,a2,c0043cbc + c0043df2: 167d addi a2,a2,-1 + c0043df4: 08c78c63 beq a5,a2,c0043e8c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2308 if (c > high) - c0043c28: a0a7ebe3 bltu a5,a0,c004363e + c0043df8: a0a7ebe3 bltu a5,a0,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2299 idx_min = 0; - c0043c2c: 4881 li a7,0 + c0043dfc: 4881 li a7,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2311 idx = (idx_min + idx_max) / 2; - c0043c2e: 00e8863b addw a2,a7,a4 - c0043c32: 0016561b srliw a2,a2,0x1 + c0043dfe: 00e8863b addw a2,a7,a4 + c0043e02: 0016561b srliw a2,a2,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2312 low = get_u16(pc + idx * 4); - c0043c36: 0026179b slliw a5,a2,0x2 - c0043c3a: 1782 slli a5,a5,0x20 - c0043c3c: 9381 srli a5,a5,0x20 + c0043e06: 0026179b slliw a5,a2,0x2 + c0043e0a: 1782 slli a5,a5,0x20 + c0043e0c: 9381 srli a5,a5,0x20 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043c3e: 97a6 add a5,a5,s1 - c0043c40: 0037c803 lbu a6,3(a5) - c0043c44: 0027ce03 lbu t3,2(a5) - c0043c48: 0822 slli a6,a6,0x8 - c0043c4a: 01c86833 or a6,a6,t3 - c0043c4e: 0007ce03 lbu t3,0(a5) - c0043c52: 0017c783 lbu a5,1(a5) - c0043c56: 07a2 slli a5,a5,0x8 + c0043e0e: 97a6 add a5,a5,s1 + c0043e10: 0037c803 lbu a6,3(a5) + c0043e14: 0027ce03 lbu t3,2(a5) + c0043e18: 0822 slli a6,a6,0x8 + c0043e1a: 01c86833 or a6,a6,t3 + c0043e1e: 0007ce03 lbu t3,0(a5) + c0043e22: 0017c783 lbu a5,1(a5) + c0043e26: 07a2 slli a5,a5,0x8 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2314 if (c < low) - c0043c58: 01c7e7b3 or a5,a5,t3 - c0043c5c: 04f57b63 bgeu a0,a5,c0043cb2 + c0043e28: 01c7e7b3 or a5,a5,t3 + c0043e2c: 04f57b63 bgeu a0,a5,c0043e82 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2315 idx_max = idx - 1; - c0043c60: fff6071b addiw a4,a2,-1 + c0043e30: fff6071b addiw a4,a2,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2310 while (idx_min <= idx_max) { - c0043c64: fd1775e3 bgeu a4,a7,c0043c2e - c0043c68: bad9 j c004363e + c0043e34: fd1775e3 bgeu a4,a7,c0043dfe + c0043e38: bad9 j c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 2) GET_CHAR(c, cptr, cbuf_end); - c0043c6a: 00045503 lhu a0,0(s0) - c0043c6e: 3ff00613 li a2,1023 - c0043c72: 00240693 addi a3,s0,2 - c0043c76: 0155073b addw a4,a0,s5 - c0043c7a: f4e66ce3 bltu a2,a4,c0043bd2 + c0043e3a: 00045503 lhu a0,0(s0) + c0043e3e: 3ff00613 li a2,1023 + c0043e42: 00240693 addi a3,s0,2 + c0043e46: 0155073b addw a4,a0,s5 + c0043e4a: f4e66ce3 bltu a2,a4,c0043da2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 4) - c0043c7e: 4709 li a4,2 - c0043c80: f4e999e3 bne s3,a4,c0043bd2 + c0043e4e: 4709 li a4,2 + c0043e50: f4e999e3 bne s3,a4,c0043da2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 6) - c0043c84: f566f7e3 bgeu a3,s6,c0043bd2 + c0043e54: f566f7e3 bgeu a3,s6,c0043da2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 8) - c0043c88: 00245703 lhu a4,2(s0) - c0043c8c: 00ea05bb addw a1,s4,a4 - c0043c90: f4b661e3 bltu a2,a1,c0043bd2 + c0043e58: 00245703 lhu a4,2(s0) + c0043e5c: 00ea05bb addw a1,s4,a4 + c0043e60: f4b661e3 bltu a2,a1,c0043da2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2295 (discriminator 10) - c0043c94: 001007b7 lui a5,0x100 - c0043c98: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> - c0043c9c: 00a5151b slliw a0,a0,0xa - c0043ca0: 8d7d and a0,a0,a5 - c0043ca2: 3ff77713 andi a4,a4,1023 - c0043ca6: 8d59 or a0,a0,a4 - c0043ca8: 67c1 lui a5,0x10 - c0043caa: 9d3d addw a0,a0,a5 - c0043cac: 00440693 addi a3,s0,4 - c0043cb0: b70d j c0043bd2 + c0043e64: 001007b7 lui a5,0x100 + c0043e68: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043e6c: 00a5151b slliw a0,a0,0xa + c0043e70: 8d7d and a0,a0,a5 + c0043e72: 3ff77713 andi a4,a4,1023 + c0043e76: 8d59 or a0,a0,a4 + c0043e78: 67c1 lui a5,0x10 + c0043e7a: 9d3d addw a0,a0,a5 + c0043e7c: 00440693 addi a3,s0,4 + c0043e80: b70d j c0043da2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2316 else if (c > high) - c0043cb2: 00a87563 bgeu a6,a0,c0043cbc + c0043e82: 00a87563 bgeu a6,a0,c0043e8c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2317 idx_min = idx + 1; - c0043cb6: 0016089b addiw a7,a2,1 - c0043cba: b76d j c0043c64 + c0043e86: 0016089b addiw a7,a2,1 + c0043e8a: b76d j c0043e34 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2323 pc += 4 * n; - c0043cbc: 00259913 slli s2,a1,0x2 + c0043e8c: 00259913 slli s2,a1,0x2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2360 pc += 8 * n; - c0043cc0: 9926 add s2,s2,s1 + c0043e90: 9926 add s2,s2,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2362 break; - c0043cc2: 8436 mv s0,a3 - c0043cc4: be01 j c00437d4 + c0043e92: 8436 mv s0,a3 + c0043e94: be01 j c00439a4 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0043cc6: 0024c903 lbu s2,2(s1) - c0043cca: 0014c783 lbu a5,1(s1) - c0043cce: 0922 slli s2,s2,0x8 - c0043cd0: 00f96933 or s2,s2,a5 + c0043e96: 0024c903 lbu s2,2(s1) + c0043e9a: 0014c783 lbu a5,1(s1) + c0043e9e: 0922 slli s2,s2,0x8 + c0043ea0: 00f96933 or s2,s2,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2333 if (cptr >= cbuf_end) - c0043cd4: 976475e3 bgeu s0,s6,c004363e + c0043ea4: 976475e3 bgeu s0,s6,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 GET_CHAR(c, cptr, cbuf_end); - c0043cd8: 0c099263 bnez s3,c0043d9c + c0043ea8: 0c099263 bnez s3,c0043f6c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 1) - c0043cdc: 00044503 lbu a0,0(s0) - c0043ce0: 00140693 addi a3,s0,1 + c0043eac: 00044503 lbu a0,0(s0) + c0043eb0: 00140693 addi a3,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2336 (discriminator 12) if (s->ignore_case) { - c0043ce4: 020ca783 lw a5,32(s9) - c0043ce8: cb81 beqz a5,c0043cf8 + c0043eb4: 020ca783 lw a5,32(s9) + c0043eb8: cb81 beqz a5,c0043ec8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2337 c = lre_canonicalize(c, s->is_utf16); - c0043cea: 024ca583 lw a1,36(s9) - c0043cee: ec36 sd a3,24(sp) - c0043cf0: 203020ef jal ra,c00466f2 - c0043cf4: 66e2 ld a3,24(sp) - c0043cf6: 2501 sext.w a0,a0 + c0043eba: 024ca583 lw a1,36(s9) + c0043ebe: ec36 sd a3,24(sp) + c0043ec0: 203020ef jal ra,c00468c2 + c0043ec4: 66e2 ld a3,24(sp) + c0043ec6: 2501 sext.w a0,a0 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0043cf8: 0044c703 lbu a4,4(s1) - c0043cfc: 0034c783 lbu a5,3(s1) - c0043d00: 0722 slli a4,a4,0x8 - c0043d02: 8f5d or a4,a4,a5 - c0043d04: 0054c783 lbu a5,5(s1) - c0043d08: 07c2 slli a5,a5,0x10 - c0043d0a: 8f5d or a4,a4,a5 - c0043d0c: 0064c783 lbu a5,6(s1) - c0043d10: 07e2 slli a5,a5,0x18 - c0043d12: 8fd9 or a5,a5,a4 + c0043ec8: 0044c703 lbu a4,4(s1) + c0043ecc: 0034c783 lbu a5,3(s1) + c0043ed0: 0722 slli a4,a4,0x8 + c0043ed2: 8f5d or a4,a4,a5 + c0043ed4: 0054c783 lbu a5,5(s1) + c0043ed8: 07c2 slli a5,a5,0x10 + c0043eda: 8f5d or a4,a4,a5 + c0043edc: 0064c783 lbu a5,6(s1) + c0043ee0: 07e2 slli a5,a5,0x18 + c0043ee2: 8fd9 or a5,a5,a4 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2341 if (c < low) - c0043d14: 2781 sext.w a5,a5 - c0043d16: 92f564e3 bltu a0,a5,c004363e + c0043ee4: 2781 sext.w a5,a5 + c0043ee6: 92f564e3 bltu a0,a5,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2343 idx_max = n - 1; - c0043d1a: fff9071b addiw a4,s2,-1 + c0043eea: fff9071b addiw a4,s2,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2344 high = get_u32(pc + idx_max * 8 + 4); - c0043d1e: 0037179b slliw a5,a4,0x3 - c0043d22: 2791 addiw a5,a5,4 - c0043d24: 1782 slli a5,a5,0x20 + c0043eee: 0037179b slliw a5,a4,0x3 + c0043ef2: 2791 addiw a5,a5,4 + c0043ef4: 1782 slli a5,a5,0x20 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2332 pc += 2; - c0043d26: 048d addi s1,s1,3 + c0043ef6: 048d addi s1,s1,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2344 high = get_u32(pc + idx_max * 8 + 4); - c0043d28: 9381 srli a5,a5,0x20 + c0043ef8: 9381 srli a5,a5,0x20 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043d2a: 97a6 add a5,a5,s1 - c0043d2c: 0017c603 lbu a2,1(a5) # 10001 <__clzdi2-0xbffeffff> - c0043d30: 0007c803 lbu a6,0(a5) + c0043efa: 97a6 add a5,a5,s1 + c0043efc: 0017c603 lbu a2,1(a5) # 10001 <__clzdi2-0xbffeffff> + c0043f00: 0007c803 lbu a6,0(a5) lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2331 n = get_u16(pc); /* n must be >= 1 */ - c0043d34: 0009059b sext.w a1,s2 + c0043f04: 0009059b sext.w a1,s2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043d38: 0622 slli a2,a2,0x8 - c0043d3a: 01066833 or a6,a2,a6 - c0043d3e: 0027c603 lbu a2,2(a5) - c0043d42: 0037c783 lbu a5,3(a5) - c0043d46: 0642 slli a2,a2,0x10 - c0043d48: 01066633 or a2,a2,a6 - c0043d4c: 07e2 slli a5,a5,0x18 - c0043d4e: 8fd1 or a5,a5,a2 + c0043f08: 0622 slli a2,a2,0x8 + c0043f0a: 01066833 or a6,a2,a6 + c0043f0e: 0027c603 lbu a2,2(a5) + c0043f12: 0037c783 lbu a5,3(a5) + c0043f16: 0642 slli a2,a2,0x10 + c0043f18: 01066633 or a2,a2,a6 + c0043f1c: 07e2 slli a5,a5,0x18 + c0043f1e: 8fd1 or a5,a5,a2 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2345 if (c > high) - c0043d50: 2781 sext.w a5,a5 - c0043d52: 8ea7e6e3 bltu a5,a0,c004363e + c0043f20: 2781 sext.w a5,a5 + c0043f22: 8ea7e6e3 bltu a5,a0,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2339 idx_min = 0; - c0043d56: 4e01 li t3,0 + c0043f26: 4e01 li t3,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2348 idx = (idx_min + idx_max) / 2; - c0043d58: 00ee083b addw a6,t3,a4 - c0043d5c: 0018581b srliw a6,a6,0x1 + c0043f28: 00ee083b addw a6,t3,a4 + c0043f2c: 0018581b srliw a6,a6,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2349 low = get_u32(pc + idx * 8); - c0043d60: 0038179b slliw a5,a6,0x3 - c0043d64: 1782 slli a5,a5,0x20 - c0043d66: 9381 srli a5,a5,0x20 + c0043f30: 0038179b slliw a5,a6,0x3 + c0043f34: 1782 slli a5,a5,0x20 + c0043f36: 9381 srli a5,a5,0x20 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043d68: 97a6 add a5,a5,s1 - c0043d6a: 0017c883 lbu a7,1(a5) - c0043d6e: 0007c603 lbu a2,0(a5) - c0043d72: 08a2 slli a7,a7,0x8 - c0043d74: 00c8e8b3 or a7,a7,a2 - c0043d78: 0027c603 lbu a2,2(a5) - c0043d7c: 0642 slli a2,a2,0x10 - c0043d7e: 011668b3 or a7,a2,a7 - c0043d82: 0037c603 lbu a2,3(a5) - c0043d86: 0662 slli a2,a2,0x18 - c0043d88: 01166633 or a2,a2,a7 + c0043f38: 97a6 add a5,a5,s1 + c0043f3a: 0017c883 lbu a7,1(a5) + c0043f3e: 0007c603 lbu a2,0(a5) + c0043f42: 08a2 slli a7,a7,0x8 + c0043f44: 00c8e8b3 or a7,a7,a2 + c0043f48: 0027c603 lbu a2,2(a5) + c0043f4c: 0642 slli a2,a2,0x10 + c0043f4e: 011668b3 or a7,a2,a7 + c0043f52: 0037c603 lbu a2,3(a5) + c0043f56: 0662 slli a2,a2,0x18 + c0043f58: 01166633 or a2,a2,a7 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2351 if (c < low) - c0043d8c: 2601 sext.w a2,a2 - c0043d8e: 04c57b63 bgeu a0,a2,c0043de4 + c0043f5c: 2601 sext.w a2,a2 + c0043f5e: 04c57b63 bgeu a0,a2,c0043fb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2352 idx_max = idx - 1; - c0043d92: fff8071b addiw a4,a6,-1 + c0043f62: fff8071b addiw a4,a6,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2347 while (idx_min <= idx_max) { - c0043d96: fdc771e3 bgeu a4,t3,c0043d58 - c0043d9a: b055 j c004363e + c0043f66: fdc771e3 bgeu a4,t3,c0043f28 + c0043f6a: b055 j c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 2) GET_CHAR(c, cptr, cbuf_end); - c0043d9c: 00045503 lhu a0,0(s0) - c0043da0: 3ff00613 li a2,1023 - c0043da4: 00240693 addi a3,s0,2 - c0043da8: 0155073b addw a4,a0,s5 - c0043dac: f2e66ce3 bltu a2,a4,c0043ce4 + c0043f6c: 00045503 lhu a0,0(s0) + c0043f70: 3ff00613 li a2,1023 + c0043f74: 00240693 addi a3,s0,2 + c0043f78: 0155073b addw a4,a0,s5 + c0043f7c: f2e66ce3 bltu a2,a4,c0043eb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 4) - c0043db0: 4709 li a4,2 - c0043db2: f2e999e3 bne s3,a4,c0043ce4 + c0043f80: 4709 li a4,2 + c0043f82: f2e999e3 bne s3,a4,c0043eb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 6) - c0043db6: f366f7e3 bgeu a3,s6,c0043ce4 + c0043f86: f366f7e3 bgeu a3,s6,c0043eb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 8) - c0043dba: 00245703 lhu a4,2(s0) - c0043dbe: 00ea05bb addw a1,s4,a4 - c0043dc2: f2b661e3 bltu a2,a1,c0043ce4 + c0043f8a: 00245703 lhu a4,2(s0) + c0043f8e: 00ea05bb addw a1,s4,a4 + c0043f92: f2b661e3 bltu a2,a1,c0043eb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2335 (discriminator 10) - c0043dc6: 001007b7 lui a5,0x100 - c0043dca: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> - c0043dce: 00a5151b slliw a0,a0,0xa - c0043dd2: 8d7d and a0,a0,a5 - c0043dd4: 3ff77713 andi a4,a4,1023 - c0043dd8: 8d59 or a0,a0,a4 - c0043dda: 67c1 lui a5,0x10 - c0043ddc: 9d3d addw a0,a0,a5 - c0043dde: 00440693 addi a3,s0,4 - c0043de2: b709 j c0043ce4 + c0043f96: 001007b7 lui a5,0x100 + c0043f9a: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> + c0043f9e: 00a5151b slliw a0,a0,0xa + c0043fa2: 8d7d and a0,a0,a5 + c0043fa4: 3ff77713 andi a4,a4,1023 + c0043fa8: 8d59 or a0,a0,a4 + c0043faa: 67c1 lui a5,0x10 + c0043fac: 9d3d addw a0,a0,a5 + c0043fae: 00440693 addi a3,s0,4 + c0043fb2: b709 j c0043eb4 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043de4: 0057c603 lbu a2,5(a5) # 10005 <__clzdi2-0xbffefffb> - c0043de8: 0047c883 lbu a7,4(a5) - c0043dec: 0622 slli a2,a2,0x8 - c0043dee: 011668b3 or a7,a2,a7 - c0043df2: 0067c603 lbu a2,6(a5) - c0043df6: 0077c783 lbu a5,7(a5) - c0043dfa: 0642 slli a2,a2,0x10 - c0043dfc: 01166633 or a2,a2,a7 - c0043e00: 07e2 slli a5,a5,0x18 - c0043e02: 8fd1 or a5,a5,a2 + c0043fb4: 0057c603 lbu a2,5(a5) # 10005 <__clzdi2-0xbffefffb> + c0043fb8: 0047c883 lbu a7,4(a5) + c0043fbc: 0622 slli a2,a2,0x8 + c0043fbe: 011668b3 or a7,a2,a7 + c0043fc2: 0067c603 lbu a2,6(a5) + c0043fc6: 0077c783 lbu a5,7(a5) + c0043fca: 0642 slli a2,a2,0x10 + c0043fcc: 01166633 or a2,a2,a7 + c0043fd0: 07e2 slli a5,a5,0x18 + c0043fd2: 8fd1 or a5,a5,a2 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2353 else if (c > high) - c0043e04: 2781 sext.w a5,a5 - c0043e06: 00a7f563 bgeu a5,a0,c0043e10 + c0043fd4: 2781 sext.w a5,a5 + c0043fd6: 00a7f563 bgeu a5,a0,c0043fe0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2354 idx_min = idx + 1; - c0043e0a: 00180e1b addiw t3,a6,1 - c0043e0e: b761 j c0043d96 + c0043fda: 00180e1b addiw t3,a6,1 + c0043fde: b761 j c0043f66 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2360 pc += 8 * n; - c0043e10: 00359913 slli s2,a1,0x3 - c0043e14: b575 j c0043cc0 + c0043fe0: 00359913 slli s2,a1,0x3 + c0043fe4: b575 j c0043e90 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2365 if (cptr == s->cbuf) - c0043e16: 000cb603 ld a2,0(s9) - c0043e1a: 828602e3 beq a2,s0,c004363e + c0043fe6: 000cb603 ld a2,0(s9) + c0043fea: 828602e3 beq a2,s0,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 PREV_CHAR(cptr, s->cbuf); - c0043e1e: 00099463 bnez s3,c0043e26 + c0043fee: 00099463 bnez s3,c0043ff6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 (discriminator 1) - c0043e22: 147d addi s0,s0,-1 - c0043e24: ba45 j c00437d4 + c0043ff2: 147d addi s0,s0,-1 + c0043ff4: ba45 j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 (discriminator 2) - c0043e26: 4709 li a4,2 - c0043e28: ffe40793 addi a5,s0,-2 - c0043e2c: 9ae993e3 bne s3,a4,c00437d2 + c0043ff6: 4709 li a4,2 + c0043ff8: ffe40793 addi a5,s0,-2 + c0043ffc: 9ae993e3 bne s3,a4,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 (discriminator 4) - c0043e30: ffe45703 lhu a4,-2(s0) - c0043e34: 3ff00693 li a3,1023 - c0043e38: 0147073b addw a4,a4,s4 - c0043e3c: 98e6ebe3 bltu a3,a4,c00437d2 + c0044000: ffe45703 lhu a4,-2(s0) + c0044004: 3ff00693 li a3,1023 + c0044008: 0147073b addw a4,a4,s4 + c004400c: 98e6ebe3 bltu a3,a4,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 (discriminator 6) - c0043e40: 98f679e3 bgeu a2,a5,c00437d2 + c0044010: 98f679e3 bgeu a2,a5,c00439a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2367 (discriminator 8) - c0043e44: ffc45703 lhu a4,-4(s0) - c0043e48: 1471 addi s0,s0,-4 - c0043e4a: 0157073b addw a4,a4,s5 - c0043e4e: 98e6f3e3 bgeu a3,a4,c00437d4 - c0043e52: b241 j c00437d2 + c0044014: ffc45703 lhu a4,-4(s0) + c0044018: 1471 addi s0,s0,-4 + c004401a: 0157073b addw a4,a4,s5 + c004401e: 98e6f3e3 bgeu a3,a4,c00439a4 + c0044022: b241 j c00439a2 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043e54: 00a4c703 lbu a4,10(s1) - c0043e58: 0094c783 lbu a5,9(s1) - c0043e5c: 0064c883 lbu a7,6(s1) - c0043e60: 0722 slli a4,a4,0x8 - c0043e62: 8f5d or a4,a4,a5 - c0043e64: 00b4c783 lbu a5,11(s1) - c0043e68: 0054ce03 lbu t3,5(s1) - c0043e6c: 0024c683 lbu a3,2(s1) - c0043e70: 07c2 slli a5,a5,0x10 - c0043e72: 08a2 slli a7,a7,0x8 - c0043e74: 8f5d or a4,a4,a5 - c0043e76: 0014c603 lbu a2,1(s1) - c0043e7a: 00c4c783 lbu a5,12(s1) - c0043e7e: 01c8e8b3 or a7,a7,t3 - c0043e82: 0074ce03 lbu t3,7(s1) - c0043e86: 06a2 slli a3,a3,0x8 - c0043e88: 8e55 or a2,a2,a3 - c0043e8a: 0e42 slli t3,t3,0x10 - c0043e8c: 0034c683 lbu a3,3(s1) - c0043e90: 07e2 slli a5,a5,0x18 - c0043e92: 8fd9 or a5,a5,a4 - c0043e94: 011e68b3 or a7,t3,a7 + c0044024: 00a4c703 lbu a4,10(s1) + c0044028: 0094c783 lbu a5,9(s1) + c004402c: 0064c883 lbu a7,6(s1) + c0044030: 0722 slli a4,a4,0x8 + c0044032: 8f5d or a4,a4,a5 + c0044034: 00b4c783 lbu a5,11(s1) + c0044038: 0054ce03 lbu t3,5(s1) + c004403c: 0024c683 lbu a3,2(s1) + c0044040: 07c2 slli a5,a5,0x10 + c0044042: 08a2 slli a7,a7,0x8 + c0044044: 8f5d or a4,a4,a5 + c0044046: 0014c603 lbu a2,1(s1) + c004404a: 00c4c783 lbu a5,12(s1) + c004404e: 01c8e8b3 or a7,a7,t3 + c0044052: 0074ce03 lbu t3,7(s1) + c0044056: 06a2 slli a3,a3,0x8 + c0044058: 8e55 or a2,a2,a3 + c004405a: 0e42 slli t3,t3,0x10 + c004405c: 0034c683 lbu a3,3(s1) + c0044060: 07e2 slli a5,a5,0x18 + c0044062: 8fd9 or a5,a5,a4 + c0044064: 011e68b3 or a7,t3,a7 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2379 pc += 16; - c0043e98: 01148713 addi a4,s1,17 + c0044068: 01148713 addi a4,s1,17 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043e9c: 0084ce03 lbu t3,8(s1) - c0043ea0: 0044c483 lbu s1,4(s1) - c0043ea4: 06c2 slli a3,a3,0x10 - c0043ea6: 8ed1 or a3,a3,a2 - c0043ea8: 04e2 slli s1,s1,0x18 - c0043eaa: 0e62 slli t3,t3,0x18 - c0043eac: 8cd5 or s1,s1,a3 - c0043eae: 011e6e33 or t3,t3,a7 + c004406c: 0084ce03 lbu t3,8(s1) + c0044070: 0044c483 lbu s1,4(s1) + c0044074: 06c2 slli a3,a3,0x10 + c0044076: 8ed1 or a3,a3,a2 + c0044078: 04e2 slli s1,s1,0x18 + c004407a: 0e62 slli t3,t3,0x18 + c004407c: 8cd5 or s1,s1,a3 + c004407e: 011e6e33 or t3,t3,a7 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2381 pc += (int)next_pos; - c0043eb2: 2481 sext.w s1,s1 + c0044082: 2481 sext.w s1,s1 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 - c0043eb4: 2e01 sext.w t3,t3 - c0043eb6: 00078e9b sext.w t4,a5 + c0044084: 2e01 sext.w t3,t3 + c0044086: 00078e9b sext.w t4,a5 lre_exec_backtrack(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2381 - c0043eba: 94ba add s1,s1,a4 + c004408a: 94ba add s1,s1,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2383 q = 0; - c0043ebc: 4f81 li t6,0 + c004408c: 4f81 li t6,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c0043ebe: 8f3e mv t5,a5 + c004408e: 8f3e mv t5,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2385 res = lre_exec_backtrack(s, capture, stack, stack_len, - c0043ec0: 4805 li a6,1 - c0043ec2: 87a2 mv a5,s0 - c0043ec4: 86ee mv a3,s11 - c0043ec6: 8662 mv a2,s8 - c0043ec8: 85de mv a1,s7 - c0043eca: 8566 mv a0,s9 - c0043ecc: fc7a sd t5,56(sp) - c0043ece: f872 sd t3,48(sp) - c0043ed0: f476 sd t4,40(sp) - c0043ed2: f07e sd t6,32(sp) - c0043ed4: ec3a sd a4,24(sp) - c0043ed6: c7cff0ef jal ra,c0043352 + c0044090: 4805 li a6,1 + c0044092: 87a2 mv a5,s0 + c0044094: 86ee mv a3,s11 + c0044096: 8662 mv a2,s8 + c0044098: 85de mv a1,s7 + c004409a: 8566 mv a0,s9 + c004409c: fc7a sd t5,56(sp) + c004409e: f872 sd t3,48(sp) + c00440a0: f476 sd t4,40(sp) + c00440a2: f07e sd t6,32(sp) + c00440a4: ec3a sd a4,24(sp) + c00440a6: c7cff0ef jal ra,c0043522 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2387 if (res == -1) - c0043eda: 58fd li a7,-1 - c0043edc: ef150863 beq a0,a7,c00435cc + c00440aa: 58fd li a7,-1 + c00440ac: ef150863 beq a0,a7,c004379c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2389 if (!res) - c0043ee0: 7f82 ld t6,32(sp) - c0043ee2: 7e42 ld t3,48(sp) - c0043ee4: c919 beqz a0,c0043efa + c00440b0: 7f82 ld t6,32(sp) + c00440b2: 7e42 ld t3,48(sp) + c00440b4: c919 beqz a0,c00440ca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c0043ee6: 7f62 ld t5,56(sp) + c00440b6: 7f62 ld t5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2392 q++; - c0043ee8: 0f85 addi t6,t6,1 + c00440b8: 0f85 addi t6,t6,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c0043eea: 6762 ld a4,24(sp) - c0043eec: 7ea2 ld t4,40(sp) + c00440ba: 6762 ld a4,24(sp) + c00440bc: 7ea2 ld t4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2391 cptr = (uint8_t *)res; - c0043eee: 842a mv s0,a0 + c00440be: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 if (q >= quant_max && quant_max != INT32_MAX) - c0043ef0: fdefe8e3 bltu t6,t5,c0043ec0 + c00440c0: fdefe8e3 bltu t6,t5,c0044090 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2393 (discriminator 1) - c0043ef4: 67c2 ld a5,16(sp) - c0043ef6: fcfe85e3 beq t4,a5,c0043ec0 + c00440c4: 67c2 ld a5,16(sp) + c00440c6: fcfe85e3 beq t4,a5,c0044090 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2396 if (q < quant_min) - c0043efa: 020e1893 slli a7,t3,0x20 - c0043efe: 0208d893 srli a7,a7,0x20 - c0043f02: f31fee63 bltu t6,a7,c004363e + c00440ca: 020e1893 slli a7,t3,0x20 + c00440ce: 0208d893 srli a7,a7,0x20 + c00440d2: f31fee63 bltu t6,a7,c004380e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2398 if (q > quant_min) { - c0043f06: 01f8ff63 bgeu a7,t6,c0043f24 + c00440d6: 01f8ff63 bgeu a7,t6,c00440f4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2400 ret = push_state(s, capture, stack, stack_len, - c0043f0a: 411f88b3 sub a7,t6,a7 - c0043f0e: 480d li a6,3 - c0043f10: 87a2 mv a5,s0 - c0043f12: 874a mv a4,s2 - c0043f14: 86ee mv a3,s11 - c0043f16: 8662 mv a2,s8 - c0043f18: 85de mv a1,s7 - c0043f1a: 8566 mv a0,s9 - c0043f1c: ae8ff0ef jal ra,c0043204 + c00440da: 411f88b3 sub a7,t6,a7 + c00440de: 480d li a6,3 + c00440e0: 87a2 mv a5,s0 + c00440e2: 874a mv a4,s2 + c00440e4: 86ee mv a3,s11 + c00440e6: 8662 mv a2,s8 + c00440e8: 85de mv a1,s7 + c00440ea: 8566 mv a0,s9 + c00440ec: ae8ff0ef jal ra,c00433d4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2404 if (ret < 0) - c0043f20: ea054663 bltz a0,c00435cc + c00440f0: ea054663 bltz a0,c004379c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2381 pc += (int)next_pos; - c0043f24: 8926 mv s2,s1 - c0043f26: b07d j c00437d4 + c00440f4: 8926 mv s2,s1 + c00440f6: b07d j c00439a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2410 abort(); - c0043f28: 0e3110ef jal ra,c005580a + c00440f8: 0e3110ef jal ra,c00559da /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2036 return 0; - c0043f2c: 4501 li a0,0 - c0043f2e: c9eff06f j c00433cc + c00440fc: 4501 li a0,0 + c00440fe: c9eff06f j c004359c -00000000c0043f32 : +00000000c0044102 : re_parse_expect(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:418 p = *pp; - c0043f32: 619c ld a5,0(a1) + c0044102: 619c ld a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:419 if (*p != c) - c0043f34: 0007c703 lbu a4,0(a5) - c0043f38: 00c70863 beq a4,a2,c0043f48 + c0044104: 0007c703 lbu a4,0(a5) + c0044108: 00c70863 beq a4,a2,c0044118 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:420 return re_parse_error(s, "expecting '%c'", c); - c0043f3c: 0001b597 auipc a1,0x1b - c0043f40: 08458593 addi a1,a1,132 # c005efc0 - c0043f44: b96ff06f j c00432da + c004410c: 0001b597 auipc a1,0x1b + c0044110: 11458593 addi a1,a1,276 # c005f220 + c0044114: b96ff06f j c00434aa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:421 p++; - c0043f48: 0785 addi a5,a5,1 + c0044118: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:422 *pp = p; - c0043f4a: e19c sd a5,0(a1) + c004411a: e19c sd a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:424 } - c0043f4c: 4501 li a0,0 - c0043f4e: 8082 ret + c004411c: 4501 li a0,0 + c004411e: 8082 ret -00000000c0043f50 : +00000000c0044120 : dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:260 static inline int dbuf_put_u32(DynBuf *s, uint32_t val) - c0043f50: 1101 addi sp,sp,-32 - c0043f52: c62e sw a1,12(sp) + c0044120: 1101 addi sp,sp,-32 + c0044122: c62e sw a1,12(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 return dbuf_put(s, (uint8_t *)&val, 4); - c0043f54: 4611 li a2,4 - c0043f56: 006c addi a1,sp,12 + c0044124: 4611 li a2,4 + c0044126: 006c addi a1,sp,12 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:260 static inline int dbuf_put_u32(DynBuf *s, uint32_t val) - c0043f58: ec06 sd ra,24(sp) + c0044128: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 return dbuf_put(s, (uint8_t *)&val, 4); - c0043f5a: 557030ef jal ra,c0047cb0 + c004412a: 557030ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/cutils.h:263 } - c0043f5e: 60e2 ld ra,24(sp) - c0043f60: 6105 addi sp,sp,32 - c0043f62: 8082 ret + c004412e: 60e2 ld ra,24(sp) + c0044130: 6105 addi sp,sp,32 + c0044132: 8082 ret -00000000c0043f64 : +00000000c0044134 : re_emit_goto(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:353 static int re_emit_goto(REParseState *s, int op, uint32_t val) - c0043f64: 1101 addi sp,sp,-32 + c0044134: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:356 dbuf_putc(&s->byte_code, op); - c0043f66: 0ff5f593 zext.b a1,a1 + c0044136: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:353 static int re_emit_goto(REParseState *s, int op, uint32_t val) - c0043f6a: e822 sd s0,16(sp) - c0043f6c: e426 sd s1,8(sp) - c0043f6e: ec06 sd ra,24(sp) - c0043f70: 84aa mv s1,a0 - c0043f72: 8432 mv s0,a2 + c004413a: e822 sd s0,16(sp) + c004413c: e426 sd s1,8(sp) + c004413e: ec06 sd ra,24(sp) + c0044140: 84aa mv s1,a0 + c0044142: 8432 mv s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:356 dbuf_putc(&s->byte_code, op); - c0043f74: 5cf030ef jal ra,c0047d42 + c0044144: 5cf030ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:358 dbuf_put_u32(&s->byte_code, val - (pos + 4)); - c0043f78: 648c ld a1,8(s1) - c0043f7a: 3471 addiw s0,s0,-4 + c0044148: 648c ld a1,8(s1) + c004414a: 3471 addiw s0,s0,-4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:360 } - c0043f7c: 60e2 ld ra,24(sp) + c004414c: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:358 dbuf_put_u32(&s->byte_code, val - (pos + 4)); - c0043f7e: 40b405bb subw a1,s0,a1 + c004414e: 40b405bb subw a1,s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:360 } - c0043f82: 6442 ld s0,16(sp) + c0044152: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:358 dbuf_put_u32(&s->byte_code, val - (pos + 4)); - c0043f84: 8526 mv a0,s1 + c0044154: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:360 } - c0043f86: 64a2 ld s1,8(sp) - c0043f88: 6105 addi sp,sp,32 + c0044156: 64a2 ld s1,8(sp) + c0044158: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:358 dbuf_put_u32(&s->byte_code, val - (pos + 4)); - c0043f8a: fc7ff06f j c0043f50 + c004415a: fc7ff06f j c0044120 -00000000c0043f8e : +00000000c004415e : re_emit_op_u32(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:345 { - c0043f8e: 1101 addi sp,sp,-32 + c004415e: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:347 dbuf_putc(&s->byte_code, op); - c0043f90: 0ff5f593 zext.b a1,a1 + c0044160: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:345 { - c0043f94: ec06 sd ra,24(sp) - c0043f96: e822 sd s0,16(sp) - c0043f98: e426 sd s1,8(sp) - c0043f9a: e04a sd s2,0(sp) - c0043f9c: 842a mv s0,a0 - c0043f9e: 84b2 mv s1,a2 + c0044164: ec06 sd ra,24(sp) + c0044166: e822 sd s0,16(sp) + c0044168: e426 sd s1,8(sp) + c004416a: e04a sd s2,0(sp) + c004416c: 842a mv s0,a0 + c004416e: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:347 dbuf_putc(&s->byte_code, op); - c0043fa0: 5a3030ef jal ra,c0047d42 + c0044170: 5a3030ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:349 dbuf_put_u32(&s->byte_code, val); - c0043fa4: 8522 mv a0,s0 - c0043fa6: 85a6 mv a1,s1 + c0044174: 8522 mv a0,s0 + c0044176: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:348 pos = s->byte_code.size; - c0043fa8: 00842903 lw s2,8(s0) + c0044178: 00842903 lw s2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:349 dbuf_put_u32(&s->byte_code, val); - c0043fac: fa5ff0ef jal ra,c0043f50 + c004417c: fa5ff0ef jal ra,c0044120 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:351 } - c0043fb0: 60e2 ld ra,24(sp) - c0043fb2: 6442 ld s0,16(sp) - c0043fb4: 64a2 ld s1,8(sp) - c0043fb6: 854a mv a0,s2 - c0043fb8: 6902 ld s2,0(sp) - c0043fba: 6105 addi sp,sp,32 - c0043fbc: 8082 ret + c0044180: 60e2 ld ra,24(sp) + c0044182: 6442 ld s0,16(sp) + c0044184: 64a2 ld s1,8(sp) + c0044186: 854a mv a0,s2 + c0044188: 6902 ld s2,0(sp) + c004418a: 6105 addi sp,sp,32 + c004418c: 8082 ret -00000000c0043fbe : +00000000c004418e : re_emit_op_u16(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:369 { - c0043fbe: 7179 addi sp,sp,-48 + c004418e: 7179 addi sp,sp,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:370 dbuf_putc(&s->byte_code, op); - c0043fc0: 0ff5f593 zext.b a1,a1 + c0044190: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:369 { - c0043fc4: f406 sd ra,40(sp) - c0043fc6: f022 sd s0,32(sp) - c0043fc8: ec26 sd s1,24(sp) - c0043fca: 842a mv s0,a0 - c0043fcc: 84b2 mv s1,a2 + c0044194: f406 sd ra,40(sp) + c0044196: f022 sd s0,32(sp) + c0044198: ec26 sd s1,24(sp) + c004419a: 842a mv s0,a0 + c004419c: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:370 dbuf_putc(&s->byte_code, op); - c0043fce: 575030ef jal ra,c0047d42 + c004419e: 575030ef jal ra,c0047f12 dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 return dbuf_put(s, (uint8_t *)&val, 2); - c0043fd2: 00e10593 addi a1,sp,14 - c0043fd6: 8522 mv a0,s0 - c0043fd8: 4609 li a2,2 + c00441a2: 00e10593 addi a1,sp,14 + c00441a6: 8522 mv a0,s0 + c00441a8: 4609 li a2,2 re_emit_op_u16(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:371 dbuf_put_u16(&s->byte_code, val); - c0043fda: 00911723 sh s1,14(sp) + c00441aa: 00911723 sh s1,14(sp) dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 - c0043fde: 4d3030ef jal ra,c0047cb0 + c00441ae: 4d3030ef jal ra,c0047e80 re_emit_op_u16(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:372 } - c0043fe2: 70a2 ld ra,40(sp) - c0043fe4: 7402 ld s0,32(sp) - c0043fe6: 64e2 ld s1,24(sp) - c0043fe8: 6145 addi sp,sp,48 - c0043fea: 8082 ret + c00441b2: 70a2 ld ra,40(sp) + c00441b4: 7402 ld s0,32(sp) + c00441b6: 64e2 ld s1,24(sp) + c00441b8: 6145 addi sp,sp,48 + c00441ba: 8082 ret -00000000c0043fec : +00000000c00441bc : re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:770 len = (unsigned)cr->len / 2; - c0043fec: 419c lw a5,0(a1) + c00441bc: 419c lw a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:771 if (len >= 65535) - c0043fee: 6741 lui a4,0x10 - c0043ff0: 1779 addi a4,a4,-2 + c00441be: 6741 lui a4,0x10 + c00441c0: 1779 addi a4,a4,-2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:770 len = (unsigned)cr->len / 2; - c0043ff2: 0017d61b srliw a2,a5,0x1 + c00441c2: 0017d61b srliw a2,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:771 if (len >= 65535) - c0043ff6: 00c77863 bgeu a4,a2,c0044006 + c00441c6: 00c77863 bgeu a4,a2,c00441d6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:772 return re_parse_error(s, "too many ranges"); - c0043ffa: 00023597 auipc a1,0x23 - c0043ffe: 01658593 addi a1,a1,22 # c0067010 - c0044002: ad8ff06f j c00432da + c00441ca: 00023597 auipc a1,0x23 + c00441ce: 0a658593 addi a1,a1,166 # c0067270 + c00441d2: ad8ff06f j c00434aa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:766 { - c0044006: 7139 addi sp,sp,-64 - c0044008: fc06 sd ra,56(sp) - c004400a: f822 sd s0,48(sp) - c004400c: f426 sd s1,40(sp) - c004400e: f04a sd s2,32(sp) - c0044010: ec4e sd s3,24(sp) - c0044012: e852 sd s4,16(sp) + c00441d6: 7139 addi sp,sp,-64 + c00441d8: fc06 sd ra,56(sp) + c00441da: f822 sd s0,48(sp) + c00441dc: f426 sd s1,40(sp) + c00441de: f04a sd s2,32(sp) + c00441e0: ec4e sd s3,24(sp) + c00441e2: e852 sd s4,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:773 if (len == 0) { - c0044014: ee11 bnez a2,c0044030 + c00441e4: ee11 bnez a2,c0044200 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:776 re_emit_op_u32(s, REOP_char32, -1); - c0044016: 567d li a2,-1 - c0044018: 4589 li a1,2 - c004401a: f75ff0ef jal ra,c0043f8e + c00441e6: 567d li a2,-1 + c00441e8: 4589 li a1,2 + c00441ea: f75ff0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:801 } - c004401e: 70e2 ld ra,56(sp) - c0044020: 7442 ld s0,48(sp) - c0044022: 74a2 ld s1,40(sp) - c0044024: 7902 ld s2,32(sp) - c0044026: 69e2 ld s3,24(sp) - c0044028: 6a42 ld s4,16(sp) - c004402a: 4501 li a0,0 - c004402c: 6121 addi sp,sp,64 - c004402e: 8082 ret + c00441ee: 70e2 ld ra,56(sp) + c00441f0: 7442 ld s0,48(sp) + c00441f2: 74a2 ld s1,40(sp) + c00441f4: 7902 ld s2,32(sp) + c00441f6: 69e2 ld s3,24(sp) + c00441f8: 6a42 ld s4,16(sp) + c00441fa: 4501 li a0,0 + c00441fc: 6121 addi sp,sp,64 + c00441fe: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:778 high = cr->points[cr->len - 1]; - c0044030: 6594 ld a3,8(a1) - c0044032: fff7871b addiw a4,a5,-1 - c0044036: 070a slli a4,a4,0x2 - c0044038: 9736 add a4,a4,a3 - c004403a: 4318 lw a4,0(a4) - c004403c: 842e mv s0,a1 + c0044200: 6594 ld a3,8(a1) + c0044202: fff7871b addiw a4,a5,-1 + c0044206: 070a slli a4,a4,0x2 + c0044208: 9736 add a4,a4,a3 + c004420a: 4318 lw a4,0(a4) + c004420c: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:779 if (high == UINT32_MAX) - c004403e: 55fd li a1,-1 - c0044040: 84aa mv s1,a0 - c0044042: 00b71663 bne a4,a1,c004404e + c004420e: 55fd li a1,-1 + c0044210: 84aa mv s1,a0 + c0044212: 00b71663 bne a4,a1,c004421e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:780 high = cr->points[cr->len - 2]; - c0044046: 37f9 addiw a5,a5,-2 - c0044048: 078a slli a5,a5,0x2 - c004404a: 97b6 add a5,a5,a3 - c004404c: 4398 lw a4,0(a5) + c0044216: 37f9 addiw a5,a5,-2 + c0044218: 078a slli a5,a5,0x2 + c004421a: 97b6 add a5,a5,a3 + c004421c: 4398 lw a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:781 if (high <= 0xffff) { - c004404e: 69c1 lui s3,0x10 - c0044050: 05377d63 bgeu a4,s3,c00440aa + c004421e: 69c1 lui s3,0x10 + c0044220: 05377d63 bgeu a4,s3,c004427a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:784 re_emit_op_u16(s, REOP_range, len); - c0044054: 45d5 li a1,21 - c0044056: 8526 mv a0,s1 - c0044058: f67ff0ef jal ra,c0043fbe + c0044224: 45d5 li a1,21 + c0044226: 8526 mv a0,s1 + c0044228: f67ff0ef jal ra,c004418e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:785 for(i = 0; i < cr->len; i += 2) { - c004405c: 4901 li s2,0 + c004422c: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:788 if (high == UINT32_MAX - 1) - c004405e: 5a79 li s4,-2 + c004422e: 5a79 li s4,-2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:789 high = 0xffff; - c0044060: 19fd addi s3,s3,-1 + c0044230: 19fd addi s3,s3,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:785 (discriminator 1) for(i = 0; i < cr->len; i += 2) { - c0044062: 401c lw a5,0(s0) - c0044064: faf95de3 bge s2,a5,c004401e + c0044232: 401c lw a5,0(s0) + c0044234: faf95de3 bge s2,a5,c00441ee /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:786 dbuf_put_u16(&s->byte_code, cr->points[i]); - c0044068: 641c ld a5,8(s0) - c004406a: 00291713 slli a4,s2,0x2 + c0044238: 641c ld a5,8(s0) + c004423a: 00291713 slli a4,s2,0x2 dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 - c004406e: 4609 li a2,2 + c004423e: 4609 li a2,2 re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:786 - c0044070: 97ba add a5,a5,a4 - c0044072: 439c lw a5,0(a5) + c0044240: 97ba add a5,a5,a4 + c0044242: 439c lw a5,0(a5) dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 - c0044074: 00e10593 addi a1,sp,14 - c0044078: 8526 mv a0,s1 + c0044244: 00e10593 addi a1,sp,14 + c0044248: 8526 mv a0,s1 re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:786 - c004407a: 00f11723 sh a5,14(sp) + c004424a: 00f11723 sh a5,14(sp) dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 - c004407e: 433030ef jal ra,c0047cb0 + c004424e: 433030ef jal ra,c0047e80 re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:787 high = cr->points[i + 1] - 1; - c0044082: 6418 ld a4,8(s0) - c0044084: 0019079b addiw a5,s2,1 - c0044088: 078a slli a5,a5,0x2 - c004408a: 97ba add a5,a5,a4 - c004408c: 439c lw a5,0(a5) - c004408e: 37fd addiw a5,a5,-1 + c0044252: 6418 ld a4,8(s0) + c0044254: 0019079b addiw a5,s2,1 + c0044258: 078a slli a5,a5,0x2 + c004425a: 97ba add a5,a5,a4 + c004425c: 439c lw a5,0(a5) + c004425e: 37fd addiw a5,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:788 if (high == UINT32_MAX - 1) - c0044090: 01479363 bne a5,s4,c0044096 + c0044260: 01479363 bne a5,s4,c0044266 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:789 high = 0xffff; - c0044094: 87ce mv a5,s3 + c0044264: 87ce mv a5,s3 dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 (discriminator 2) - c0044096: 4609 li a2,2 - c0044098: 00e10593 addi a1,sp,14 - c004409c: 8526 mv a0,s1 + c0044266: 4609 li a2,2 + c0044268: 00e10593 addi a1,sp,14 + c004426c: 8526 mv a0,s1 re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:790 (discriminator 2) dbuf_put_u16(&s->byte_code, high); - c004409e: 00f11723 sh a5,14(sp) + c004426e: 00f11723 sh a5,14(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:785 (discriminator 2) for(i = 0; i < cr->len; i += 2) { - c00440a2: 2909 addiw s2,s2,2 + c0044272: 2909 addiw s2,s2,2 dbuf_put_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:258 (discriminator 2) - c00440a4: 40d030ef jal ra,c0047cb0 + c0044274: 40d030ef jal ra,c0047e80 re_emit_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:785 (discriminator 2) - c00440a8: bf6d j c0044062 + c0044278: bf6d j c0044232 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:793 re_emit_op_u16(s, REOP_range32, len); - c00440aa: 45d9 li a1,22 - c00440ac: 8526 mv a0,s1 - c00440ae: f11ff0ef jal ra,c0043fbe + c004427a: 45d9 li a1,22 + c004427c: 8526 mv a0,s1 + c004427e: f11ff0ef jal ra,c004418e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:794 for(i = 0; i < cr->len; i += 2) { - c00440b2: 4901 li s2,0 + c0044282: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:794 (discriminator 1) - c00440b4: 401c lw a5,0(s0) - c00440b6: f6f954e3 bge s2,a5,c004401e + c0044284: 401c lw a5,0(s0) + c0044286: f6f954e3 bge s2,a5,c00441ee /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:795 (discriminator 3) dbuf_put_u32(&s->byte_code, cr->points[i]); - c00440ba: 641c ld a5,8(s0) - c00440bc: 00291713 slli a4,s2,0x2 - c00440c0: 8526 mv a0,s1 - c00440c2: 97ba add a5,a5,a4 - c00440c4: 438c lw a1,0(a5) - c00440c6: e8bff0ef jal ra,c0043f50 + c004428a: 641c ld a5,8(s0) + c004428c: 00291713 slli a4,s2,0x2 + c0044290: 8526 mv a0,s1 + c0044292: 97ba add a5,a5,a4 + c0044294: 438c lw a1,0(a5) + c0044296: e8bff0ef jal ra,c0044120 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:796 (discriminator 3) dbuf_put_u32(&s->byte_code, cr->points[i + 1] - 1); - c00440ca: 641c ld a5,8(s0) - c00440cc: 0019071b addiw a4,s2,1 - c00440d0: 070a slli a4,a4,0x2 - c00440d2: 97ba add a5,a5,a4 - c00440d4: 438c lw a1,0(a5) - c00440d6: 8526 mv a0,s1 + c004429a: 641c ld a5,8(s0) + c004429c: 0019071b addiw a4,s2,1 + c00442a0: 070a slli a4,a4,0x2 + c00442a2: 97ba add a5,a5,a4 + c00442a4: 438c lw a1,0(a5) + c00442a6: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:794 (discriminator 3) for(i = 0; i < cr->len; i += 2) { - c00440d8: 2909 addiw s2,s2,2 + c00442a8: 2909 addiw s2,s2,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:796 (discriminator 3) dbuf_put_u32(&s->byte_code, cr->points[i + 1] - 1); - c00440da: 35fd addiw a1,a1,-1 - c00440dc: e75ff0ef jal ra,c0043f50 + c00442aa: 35fd addiw a1,a1,-1 + c00442ac: e75ff0ef jal ra,c0044120 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:794 (discriminator 3) for(i = 0; i < cr->len; i += 2) { - c00440e0: bfd1 j c00440b4 + c00442b0: bfd1 j c0044284 -00000000c00440e2 : +00000000c00442b2 : lre_is_space(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:147 for(i = 0; i < n; i++) { - c00440e2: 00023797 auipc a5,0x23 - c00440e6: 39678793 addi a5,a5,918 # c0067478 - c00440ea: 00023717 auipc a4,0x23 - c00440ee: 3b670713 addi a4,a4,950 # c00674a0 + c00442b2: 00023797 auipc a5,0x23 + c00442b6: 42678793 addi a5,a5,1062 # c00676d8 + c00442ba: 00023717 auipc a4,0x23 + c00442be: 44670713 addi a4,a4,1094 # c0067700 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:149 if (c < low) - c00440f2: 0027d683 lhu a3,2(a5) - c00440f6: 00d54963 blt a0,a3,c0044108 + c00442c2: 0027d683 lhu a3,2(a5) + c00442c6: 00d54963 blt a0,a3,c00442d8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:152 if (c < high) - c00440fa: 0047d683 lhu a3,4(a5) - c00440fe: 00d54763 blt a0,a3,c004410c + c00442ca: 0047d683 lhu a3,4(a5) + c00442ce: 00d54763 blt a0,a3,c00442dc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:147 (discriminator 1) for(i = 0; i < n; i++) { - c0044102: 0791 addi a5,a5,4 - c0044104: fee797e3 bne a5,a4,c00440f2 + c00442d2: 0791 addi a5,a5,4 + c00442d4: fee797e3 bne a5,a4,c00442c2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:150 return FALSE; - c0044108: 4501 li a0,0 - c004410a: 8082 ret + c00442d8: 4501 li a0,0 + c00442da: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:153 return TRUE; - c004410c: 4505 li a0,1 + c00442dc: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:156 } - c004410e: 8082 ret + c00442de: 8082 ret -00000000c0044110 : +00000000c00442e0 : lre_parse_escape(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:437 { - c0044110: 7139 addi sp,sp,-64 - c0044112: f426 sd s1,40(sp) - c0044114: f04a sd s2,32(sp) - c0044116: ec4e sd s3,24(sp) - c0044118: fc06 sd ra,56(sp) - c004411a: f822 sd s0,48(sp) - c004411c: e852 sd s4,16(sp) - c004411e: e456 sd s5,8(sp) - c0044120: e05a sd s6,0(sp) + c00442e0: 7139 addi sp,sp,-64 + c00442e2: f426 sd s1,40(sp) + c00442e4: f04a sd s2,32(sp) + c00442e6: ec4e sd s3,24(sp) + c00442e8: fc06 sd ra,56(sp) + c00442ea: f822 sd s0,48(sp) + c00442ec: e852 sd s4,16(sp) + c00442ee: e456 sd s5,8(sp) + c00442f0: e05a sd s6,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:441 p = *pp; - c0044122: 611c ld a5,0(a0) + c00442f2: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:443 switch(c) { - c0044124: 03700613 li a2,55 + c00442f4: 03700613 li a2,55 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:437 { - c0044128: 892a mv s2,a0 + c00442f8: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:442 c = *p++; - c004412a: 0007c703 lbu a4,0(a5) + c00442fa: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:437 { - c004412e: 89ae mv s3,a1 + c00442fe: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:442 c = *p++; - c0044130: 00178493 addi s1,a5,1 - c0044134: 0007069b sext.w a3,a4 + c0044300: 00178493 addi s1,a5,1 + c0044304: 0007069b sext.w a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:443 switch(c) { - c0044138: 00e66e63 bltu a2,a4,c0044154 - c004413c: 02f00613 li a2,47 - c0044140: 14e66263 bltu a2,a4,c0044284 - c0044144: 5579 li a0,-2 - c0044146: aaa9 j c00442a0 - c0044148: 4431 li s0,12 + c0044308: 00e66e63 bltu a2,a4,c0044324 + c004430c: 02f00613 li a2,47 + c0044310: 14e66263 bltu a2,a4,c0044454 + c0044314: 5579 li a0,-2 + c0044316: aaa9 j c0044470 + c0044318: 4431 li s0,12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:543 *pp = p; - c004414a: 00993023 sd s1,0(s2) + c004431a: 00993023 sd s1,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:544 return c; - c004414e: 0004051b sext.w a0,s0 - c0044152: a2b9 j c00442a0 + c004431e: 0004051b sext.w a0,s0 + c0044322: a2b9 j c0044470 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:443 switch(c) { - c0044154: f9e7071b addiw a4,a4,-98 - c0044158: 0ff77713 zext.b a4,a4 - c004415c: 4659 li a2,22 - c004415e: fee663e3 bltu a2,a4,c0044144 - c0044162: 00023617 auipc a2,0x23 - c0044166: ebe60613 addi a2,a2,-322 # c0067020 - c004416a: 070a slli a4,a4,0x2 - c004416c: 9732 add a4,a4,a2 - c004416e: 4318 lw a4,0(a4) - c0044170: 9732 add a4,a4,a2 - c0044172: 8702 jr a4 + c0044324: f9e7071b addiw a4,a4,-98 + c0044328: 0ff77713 zext.b a4,a4 + c004432c: 4659 li a2,22 + c004432e: fee663e3 bltu a2,a4,c0044314 + c0044332: 00023617 auipc a2,0x23 + c0044336: f4e60613 addi a2,a2,-178 # c0067280 + c004433a: 070a slli a4,a4,0x2 + c004433c: 9732 add a4,a4,a2 + c004433e: 4318 lw a4,0(a4) + c0044340: 9732 add a4,a4,a2 + c0044342: 8702 jr a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:451 c = '\n'; - c0044174: 4429 li s0,10 + c0044344: 4429 li s0,10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:452 break; - c0044176: bfd1 j c004414a + c0044346: bfd1 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:454 c = '\r'; - c0044178: 4435 li s0,13 + c0044348: 4435 li s0,13 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:455 break; - c004417a: bfc1 j c004414a + c004434a: bfc1 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:457 c = '\t'; - c004417c: 4425 li s0,9 + c004434c: 4425 li s0,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:458 break; - c004417e: b7f1 j c004414a + c004434e: b7f1 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:460 c = '\v'; - c0044180: 442d li s0,11 + c0044350: 442d li s0,11 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:461 break; - c0044182: b7e1 j c004414a + c0044352: b7e1 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:468 if (*p == '{' && allow_utf16) { - c0044184: 0017c603 lbu a2,1(a5) - c0044188: 07b00713 li a4,123 - c004418c: 04e61063 bne a2,a4,c00441cc + c0044354: 0017c603 lbu a2,1(a5) + c0044358: 07b00713 li a4,123 + c004435c: 04e61063 bne a2,a4,c004439c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:468 (discriminator 1) - c0044190: 02098e63 beqz s3,c00441cc + c0044360: 02098e63 beqz s3,c004439c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:469 p++; - c0044194: 00278993 addi s3,a5,2 + c0044364: 00278993 addi s3,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:470 c = 0; - c0044198: 4401 li s0,0 + c0044368: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:476 if (c > 0x10FFFF) - c004419a: 00110ab7 lui s5,0x110 + c004436a: 00110ab7 lui s5,0x110 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:478 if (*p == '}') - c004419e: 07d00a13 li s4,125 + c004436e: 07d00a13 li s4,125 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:472 h = from_hex(*p++); - c00441a2: 84ce mv s1,s3 - c00441a4: 0009c503 lbu a0,0(s3) # 10000 <__clzdi2-0xbfff0000> - c00441a8: 0985 addi s3,s3,1 - c00441aa: ee3fe0ef jal ra,c004308c + c0044372: 84ce mv s1,s3 + c0044374: 0009c503 lbu a0,0(s3) # 10000 <__clzdi2-0xbfff0000> + c0044378: 0985 addi s3,s3,1 + c004437a: ee3fe0ef jal ra,c004325c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:473 if (h < 0) - c00441ae: 14054663 bltz a0,c00442fa + c004437e: 14054663 bltz a0,c00444ca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:475 c = (c << 4) | h; - c00441b2: 0044141b slliw s0,s0,0x4 - c00441b6: 8d41 or a0,a0,s0 - c00441b8: 0005041b sext.w s0,a0 + c0044382: 0044141b slliw s0,s0,0x4 + c0044386: 8d41 or a0,a0,s0 + c0044388: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:476 if (c > 0x10FFFF) - c00441bc: 13547f63 bgeu s0,s5,c00442fa + c004438c: 13547f63 bgeu s0,s5,c00444ca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:478 if (*p == '}') - c00441c0: 0009c783 lbu a5,0(s3) - c00441c4: fd479fe3 bne a5,s4,c00441a2 + c0044390: 0009c783 lbu a5,0(s3) + c0044394: fd479fe3 bne a5,s4,c0044372 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:481 p++; - c00441c8: 0489 addi s1,s1,2 - c00441ca: b741 j c004414a + c0044398: 0489 addi s1,s1,2 + c004439a: b741 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:483 if (c == 'x') { - c00441cc: 07800793 li a5,120 + c004439c: 07800793 li a5,120 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:484 n = 2; - c00441d0: 4b09 li s6,2 + c00443a0: 4b09 li s6,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:483 if (c == 'x') { - c00441d2: 00f68363 beq a3,a5,c00441d8 + c00443a2: 00f68363 beq a3,a5,c00443a8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:486 n = 4; - c00441d6: 4b11 li s6,4 + c00443a6: 4b11 li s6,4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:490 for(i = 0; i < n; i++) { - c00441d8: 4a81 li s5,0 + c00443a8: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:489 c = 0; - c00441da: 4401 li s0,0 + c00443aa: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:491 h = from_hex(*p++); - c00441dc: 8a26 mv s4,s1 - c00441de: 0004c503 lbu a0,0(s1) - c00441e2: 0485 addi s1,s1,1 - c00441e4: ea9fe0ef jal ra,c004308c + c00443ac: 8a26 mv s4,s1 + c00443ae: 0004c503 lbu a0,0(s1) + c00443b2: 0485 addi s1,s1,1 + c00443b4: ea9fe0ef jal ra,c004325c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:492 if (h < 0) { - c00441e8: 10054963 bltz a0,c00442fa + c00443b8: 10054963 bltz a0,c00444ca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:495 (discriminator 2) c = (c << 4) | h; - c00441ec: 0044141b slliw s0,s0,0x4 - c00441f0: 8d41 or a0,a0,s0 + c00443bc: 0044141b slliw s0,s0,0x4 + c00443c0: 8d41 or a0,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:490 (discriminator 2) for(i = 0; i < n; i++) { - c00441f2: 2a85 addiw s5,s5,1 + c00443c2: 2a85 addiw s5,s5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:495 (discriminator 2) c = (c << 4) | h; - c00441f4: 0005041b sext.w s0,a0 + c00443c4: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:490 (discriminator 2) for(i = 0; i < n; i++) { - c00441f8: ff5b12e3 bne s6,s5,c00441dc + c00443c8: ff5b12e3 bne s6,s5,c00443ac /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:497 if (c >= 0xd800 && c < 0xdc00 && - c00441fc: 77cd lui a5,0xffff3 - c00441fe: 8007879b addiw a5,a5,-2048 - c0044202: 9fa1 addw a5,a5,s0 - c0044204: 3ff00713 li a4,1023 - c0044208: f4f761e3 bltu a4,a5,c004414a + c00443cc: 77cd lui a5,0xffff3 + c00443ce: 8007879b addiw a5,a5,-2048 + c00443d2: 9fa1 addw a5,a5,s0 + c00443d4: 3ff00713 li a4,1023 + c00443d8: f4f761e3 bltu a4,a5,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:497 (discriminator 1) - c004420c: 4789 li a5,2 - c004420e: f2f99ee3 bne s3,a5,c004414a + c00443dc: 4789 li a5,2 + c00443de: f2f99ee3 bne s3,a5,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:498 allow_utf16 == 2 && p[0] == '\\' && p[1] == 'u') { - c0044212: 0004c703 lbu a4,0(s1) - c0044216: 05c00793 li a5,92 - c004421a: f2f718e3 bne a4,a5,c004414a + c00443e2: 0004c703 lbu a4,0(s1) + c00443e6: 05c00793 li a5,92 + c00443ea: f2f718e3 bne a4,a5,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:498 (discriminator 1) - c004421e: 0014c703 lbu a4,1(s1) - c0044222: 07500793 li a5,117 - c0044226: f2f712e3 bne a4,a5,c004414a - c004422a: 003a0a93 addi s5,s4,3 # ffffffffffff2003 <_ebss+0xffffffff3fef0edd> - c004422e: 00648b13 addi s6,s1,6 + c00443ee: 0014c703 lbu a4,1(s1) + c00443f2: 07500793 li a5,117 + c00443f6: f2f712e3 bne a4,a5,c004431a + c00443fa: 003a0a93 addi s5,s4,3 # ffffffffffff2003 <_ebss+0xffffffff3fef0edd> + c00443fe: 00648b13 addi s6,s1,6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:501 c1 = 0; - c0044232: 4981 li s3,0 + c0044402: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:503 h = from_hex(p[2 + i]); - c0044234: 000ac503 lbu a0,0(s5) # 110000 <__clzdi2-0xbfef0000> - c0044238: e55fe0ef jal ra,c004308c + c0044404: 000ac503 lbu a0,0(s5) # 110000 <__clzdi2-0xbfef0000> + c0044408: e55fe0ef jal ra,c004325c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:504 if (h < 0) - c004423c: f00547e3 bltz a0,c004414a + c004440c: f00547e3 bltz a0,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:506 (discriminator 2) c1 = (c1 << 4) | h; - c0044240: 0049999b slliw s3,s3,0x4 - c0044244: 013569b3 or s3,a0,s3 + c0044410: 0049999b slliw s3,s3,0x4 + c0044414: 013569b3 or s3,a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:502 (discriminator 2) for(i = 0; i < 4; i++) { - c0044248: 0a85 addi s5,s5,1 + c0044418: 0a85 addi s5,s5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:506 (discriminator 2) c1 = (c1 << 4) | h; - c004424a: 2981 sext.w s3,s3 + c004441a: 2981 sext.w s3,s3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:502 (discriminator 2) for(i = 0; i < 4; i++) { - c004424c: ff6a94e3 bne s5,s6,c0044234 + c004441c: ff6a94e3 bne s5,s6,c0044404 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:508 if (i == 4 && c1 >= 0xdc00 && c1 < 0xe000) { - c0044250: 77c9 lui a5,0xffff2 - c0044252: 4007879b addiw a5,a5,1024 - c0044256: 013787bb addw a5,a5,s3 - c004425a: 3ff00713 li a4,1023 - c004425e: eef766e3 bltu a4,a5,c004414a + c0044420: 77c9 lui a5,0xffff2 + c0044422: 4007879b addiw a5,a5,1024 + c0044426: 013787bb addw a5,a5,s3 + c004442a: 3ff00713 li a4,1023 + c004442e: eef766e3 bltu a4,a5,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:510 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c0044262: 001007b7 lui a5,0x100 - c0044266: 00a4141b slliw s0,s0,0xa - c004426a: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> - c004426e: 8c7d and s0,s0,a5 - c0044270: 3ff9f993 andi s3,s3,1023 - c0044274: 013469b3 or s3,s0,s3 - c0044278: 6441 lui s0,0x10 + c0044432: 001007b7 lui a5,0x100 + c0044436: 00a4141b slliw s0,s0,0xa + c004443a: c0078793 addi a5,a5,-1024 # ffc00 <__clzdi2-0xbff00400> + c004443e: 8c7d and s0,s0,a5 + c0044440: 3ff9f993 andi s3,s3,1023 + c0044444: 013469b3 or s3,s0,s3 + c0044448: 6441 lui s0,0x10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:509 p += 6; - c004427a: 007a0493 addi s1,s4,7 + c004444a: 007a0493 addi s1,s4,7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:510 c = (((c & 0x3ff) << 10) | (c1 & 0x3ff)) + 0x10000; - c004427e: 0134043b addw s0,s0,s3 - c0044282: b5e1 j c004414a + c004444e: 0134043b addw s0,s0,s3 + c0044452: b5e1 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:518 c -= '0'; - c0044284: fd06841b addiw s0,a3,-48 + c0044454: fd06841b addiw s0,a3,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:519 if (allow_utf16 == 2) { - c0044288: 4689 li a3,2 - c004428a: 02d59563 bne a1,a3,c00442b4 + c0044458: 4689 li a3,2 + c004445a: 02d59563 bne a1,a3,c0044484 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:474 return -1; - c004428e: 557d li a0,-1 + c004445e: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:521 if (c != 0 || is_digit(*p)) - c0044290: e801 bnez s0,c00442a0 + c0044460: e801 bnez s0,c0044470 is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 (discriminator 1) return c >= '0' && c <= '9'; - c0044292: 0017c783 lbu a5,1(a5) + c0044462: 0017c783 lbu a5,1(a5) lre_parse_escape(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:521 (discriminator 1) if (c != 0 || is_digit(*p)) - c0044296: 4725 li a4,9 - c0044298: fd07879b addiw a5,a5,-48 - c004429c: eaf767e3 bltu a4,a5,c004414a + c0044466: 4725 li a4,9 + c0044468: fd07879b addiw a5,a5,-48 + c004446c: eaf767e3 bltu a4,a5,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:545 } - c00442a0: 70e2 ld ra,56(sp) - c00442a2: 7442 ld s0,48(sp) - c00442a4: 74a2 ld s1,40(sp) - c00442a6: 7902 ld s2,32(sp) - c00442a8: 69e2 ld s3,24(sp) - c00442aa: 6a42 ld s4,16(sp) - c00442ac: 6aa2 ld s5,8(sp) - c00442ae: 6b02 ld s6,0(sp) - c00442b0: 6121 addi sp,sp,64 - c00442b2: 8082 ret + c0044470: 70e2 ld ra,56(sp) + c0044472: 7442 ld s0,48(sp) + c0044474: 74a2 ld s1,40(sp) + c0044476: 7902 ld s2,32(sp) + c0044478: 69e2 ld s3,24(sp) + c004447a: 6a42 ld s4,16(sp) + c004447c: 6aa2 ld s5,8(sp) + c004447e: 6b02 ld s6,0(sp) + c0044480: 6121 addi sp,sp,64 + c0044482: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:526 v = *p - '0'; - c00442b4: 0017c683 lbu a3,1(a5) + c0044484: 0017c683 lbu a3,1(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:527 if (v > 7) - c00442b8: 461d li a2,7 + c0044488: 461d li a2,7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:526 v = *p - '0'; - c00442ba: fd06869b addiw a3,a3,-48 - c00442be: 0006859b sext.w a1,a3 + c004448a: fd06869b addiw a3,a3,-48 + c004448e: 0006859b sext.w a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:527 if (v > 7) - c00442c2: e8b664e3 bltu a2,a1,c004414a + c0044492: e8b664e3 bltu a2,a1,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:529 c = (c << 3) | v; - c00442c6: 0034141b slliw s0,s0,0x3 - c00442ca: 8c55 or s0,s0,a3 - c00442cc: 2401 sext.w s0,s0 + c0044496: 0034141b slliw s0,s0,0x3 + c004449a: 8c55 or s0,s0,a3 + c004449c: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:531 if (c >= 32) - c00442ce: 477d li a4,31 + c004449e: 477d li a4,31 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:530 p++; - c00442d0: 00278493 addi s1,a5,2 + c00444a0: 00278493 addi s1,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:531 if (c >= 32) - c00442d4: e6876be3 bltu a4,s0,c004414a + c00444a4: e6876be3 bltu a4,s0,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:533 v = *p - '0'; - c00442d8: 0027c703 lbu a4,2(a5) - c00442dc: fd07071b addiw a4,a4,-48 - c00442e0: 0007069b sext.w a3,a4 + c00444a8: 0027c703 lbu a4,2(a5) + c00444ac: fd07071b addiw a4,a4,-48 + c00444b0: 0007069b sext.w a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:534 if (v > 7) - c00442e4: e6d663e3 bltu a2,a3,c004414a + c00444b4: e6d663e3 bltu a2,a3,c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:536 c = (c << 3) | v; - c00442e8: 0034141b slliw s0,s0,0x3 - c00442ec: 8c59 or s0,s0,a4 - c00442ee: 2401 sext.w s0,s0 + c00444b8: 0034141b slliw s0,s0,0x3 + c00444bc: 8c59 or s0,s0,a4 + c00444be: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:537 p++; - c00442f0: 00378493 addi s1,a5,3 - c00442f4: bd99 j c004414a + c00444c0: 00378493 addi s1,a5,3 + c00444c4: bd99 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:445 c = '\b'; - c00442f6: 4421 li s0,8 - c00442f8: bd89 j c004414a + c00444c6: 4421 li s0,8 + c00444c8: bd89 j c004431a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:474 return -1; - c00442fa: 557d li a0,-1 - c00442fc: b755 j c00442a0 + c00444ca: 557d li a0,-1 + c00444cc: b755 j c0044470 -00000000c00442fe : +00000000c00444ce : get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:657 { - c00442fe: 7151 addi sp,sp,-240 - c0044300: e9ca sd s2,208(sp) - c0044302: e1d2 sd s4,192(sp) - c0044304: f586 sd ra,232(sp) - c0044306: f1a2 sd s0,224(sp) - c0044308: eda6 sd s1,216(sp) - c004430a: e5ce sd s3,200(sp) - c004430c: fd56 sd s5,184(sp) - c004430e: f95a sd s6,176(sp) - c0044310: f55e sd s7,168(sp) - c0044312: f162 sd s8,160(sp) - c0044314: ed66 sd s9,152(sp) + c00444ce: 7151 addi sp,sp,-240 + c00444d0: e9ca sd s2,208(sp) + c00444d2: e1d2 sd s4,192(sp) + c00444d4: f586 sd ra,232(sp) + c00444d6: f1a2 sd s0,224(sp) + c00444d8: eda6 sd s1,216(sp) + c00444da: e5ce sd s3,200(sp) + c00444dc: fd56 sd s5,184(sp) + c00444de: f95a sd s6,176(sp) + c00444e0: f55e sd s7,168(sp) + c00444e2: f162 sd s8,160(sp) + c00444e4: ed66 sd s9,152(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:662 p = *pp; - c0044316: 6204 ld s1,0(a2) + c00444e6: 6204 ld s1,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:657 { - c0044318: 8a2a mv s4,a0 - c004431a: 8932 mv s2,a2 + c00444e8: 8a2a mv s4,a0 + c00444ea: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:662 p = *pp; - c004431c: e426 sd s1,8(sp) + c00444ec: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:664 c = *p; - c004431e: 0004c403 lbu s0,0(s1) + c00444ee: 0004c403 lbu s0,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:665 switch(c) { - c0044322: 40040463 beqz s0,c004472a - c0044326: 05c00793 li a5,92 - c004432a: 40f41863 bne s0,a5,c004473a + c00444f2: 40040463 beqz s0,c00448fa + c00444f6: 05c00793 li a5,92 + c00444fa: 40f41863 bne s0,a5,c004490a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:668 if (p >= s->buf_end) - c004432e: 7d1c ld a5,56(a0) + c00444fe: 7d1c ld a5,56(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:667 p++; - c0044330: 00148713 addi a4,s1,1 - c0044334: e43a sd a4,8(sp) + c0044500: 00148713 addi a4,s1,1 + c0044504: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:668 if (p >= s->buf_end) - c0044336: 02f76663 bltu a4,a5,c0044362 + c0044506: 02f76663 bltu a4,a5,c0044532 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:744 return re_parse_error(s, "unexpected end"); - c004433a: 00023597 auipc a1,0x23 - c004433e: d4658593 addi a1,a1,-698 # c0067080 + c004450a: 00023597 auipc a1,0x23 + c004450e: dd658593 addi a1,a1,-554 # c00672e0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:732 return re_parse_error(s, "invalid escape sequence in regular expression"); - c0044342: 8552 mv a0,s4 - c0044344: f97fe0ef jal ra,c00432da + c0044512: 8552 mv a0,s4 + c0044514: f97fe0ef jal ra,c00434aa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:763 } - c0044348: 70ae ld ra,232(sp) - c004434a: 740e ld s0,224(sp) - c004434c: 64ee ld s1,216(sp) - c004434e: 694e ld s2,208(sp) - c0044350: 69ae ld s3,200(sp) - c0044352: 6a0e ld s4,192(sp) - c0044354: 7aea ld s5,184(sp) - c0044356: 7b4a ld s6,176(sp) - c0044358: 7baa ld s7,168(sp) - c004435a: 7c0a ld s8,160(sp) - c004435c: 6cea ld s9,152(sp) - c004435e: 616d addi sp,sp,240 - c0044360: 8082 ret + c0044518: 70ae ld ra,232(sp) + c004451a: 740e ld s0,224(sp) + c004451c: 64ee ld s1,216(sp) + c004451e: 694e ld s2,208(sp) + c0044520: 69ae ld s3,200(sp) + c0044522: 6a0e ld s4,192(sp) + c0044524: 7aea ld s5,184(sp) + c0044526: 7b4a ld s6,176(sp) + c0044528: 7baa ld s7,168(sp) + c004452a: 7c0a ld s8,160(sp) + c004452c: 6cea ld s9,152(sp) + c004452e: 616d addi sp,sp,240 + c0044530: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:670 c = *p++; - c0044362: 00248793 addi a5,s1,2 - c0044366: e43e sd a5,8(sp) - c0044368: 0014c783 lbu a5,1(s1) - c004436c: 06300613 li a2,99 - c0044370: 0007841b sext.w s0,a5 + c0044532: 00248793 addi a5,s1,2 + c0044536: e43e sd a5,8(sp) + c0044538: 0014c783 lbu a5,1(s1) + c004453c: 06300613 li a2,99 + c0044540: 0007841b sext.w s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:671 switch(c) { - c0044374: 20c78563 beq a5,a2,c004457e - c0044378: 89ae mv s3,a1 - c004437a: 14f66363 bltu a2,a5,c00444c0 - c004437e: 05300693 li a3,83 - c0044382: 1ad78463 beq a5,a3,c004452a - c0044386: 10f6eb63 bltu a3,a5,c004449c - c004438a: 04400693 li a3,68 + c0044544: 20c78563 beq a5,a2,c004474e + c0044548: 89ae mv s3,a1 + c004454a: 14f66363 bltu a2,a5,c0044690 + c004454e: 05300693 li a3,83 + c0044552: 1ad78463 beq a5,a3,c00446fa + c0044556: 10f6eb63 bltu a3,a5,c004466c + c004455a: 04400693 li a3,68 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:676 c = CHAR_RANGE_D; - c004438e: 4a85 li s5,1 - c0044390: 14d78b63 beq a5,a3,c00444e6 - c0044394: 05000693 li a3,80 - c0044398: 10d79763 bne a5,a3,c00444a6 + c004455e: 4a85 li s5,1 + c0044560: 14d78b63 beq a5,a3,c00446b6 + c0044564: 05000693 li a3,80 + c0044568: 10d79763 bne a5,a3,c0044676 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:713 if (s->is_utf16) { - c004439c: 04ca2783 lw a5,76(s4) - c00443a0: 10078363 beqz a5,c00444a6 + c004456c: 04ca2783 lw a5,76(s4) + c0044570: 10078363 beqz a5,c0044676 parse_unicode_property(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:567 if (*p != '{') - c00443a4: 0024c703 lbu a4,2(s1) - c00443a8: 07b00793 li a5,123 + c0044574: 0024c703 lbu a4,2(s1) + c0044578: 07b00793 li a5,123 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:568 return re_parse_error(s, "expecting '{' after \\p"); - c00443ac: 00023597 auipc a1,0x23 - c00443b0: d1458593 addi a1,a1,-748 # c00670c0 + c004457c: 00023597 auipc a1,0x23 + c0044580: da458593 addi a1,a1,-604 # c0067320 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:567 if (*p != '{') - c00443b4: 22f71c63 bne a4,a5,c00445ec + c0044584: 22f71c63 bne a4,a5,c00447bc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:570 q = name; - c00443b8: 01010a93 addi s5,sp,16 + c0044588: 01010a93 addi s5,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:569 p++; - c00443bc: 048d addi s1,s1,3 + c004458c: 048d addi s1,s1,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:571 while (is_unicode_char(*p)) { - c00443be: 8b56 mv s6,s5 + c004458e: 8b56 mv s6,s5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:572 if ((q - name) >= sizeof(name) - 1) - c00443c0: 03e00c13 li s8,62 + c0044590: 03e00c13 li s8,62 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:571 while (is_unicode_char(*p)) { - c00443c4: 0004cb83 lbu s7,0(s1) - c00443c8: 855e mv a0,s7 - c00443ca: d39fe0ef jal ra,c0043102 - c00443ce: 20051763 bnez a0,c00445dc + c0044594: 0004cb83 lbu s7,0(s1) + c0044598: 855e mv a0,s7 + c004459a: d39fe0ef jal ra,c00432d2 + c004459e: 20051763 bnez a0,c00447ac /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:576 *q = '\0'; - c00443d2: 000a8023 sb zero,0(s5) + c00445a2: 000a8023 sb zero,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:578 if (*p == '=') { - c00443d6: 0004c703 lbu a4,0(s1) - c00443da: 05010b93 addi s7,sp,80 - c00443de: 03d00793 li a5,61 + c00445a6: 0004c703 lbu a4,0(s1) + c00445aa: 05010b93 addi s7,sp,80 + c00445ae: 03d00793 li a5,61 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:577 q = value; - c00443e2: 8ade mv s5,s7 + c00445b2: 8ade mv s5,s7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:578 if (*p == '=') { - c00443e4: 00f71c63 bne a4,a5,c00443fc + c00445b4: 00f71c63 bne a4,a5,c00445cc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:579 p++; - c00443e8: 0485 addi s1,s1,1 + c00445b8: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:581 if ((q - value) >= sizeof(value) - 1) - c00443ea: 03e00c93 li s9,62 + c00445ba: 03e00c93 li s9,62 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:580 while (is_unicode_char(*p)) { - c00443ee: 0004cc03 lbu s8,0(s1) - c00443f2: 8562 mv a0,s8 - c00443f4: d0ffe0ef jal ra,c0043102 - c00443f8: 20051663 bnez a0,c0044604 + c00445be: 0004cc03 lbu s8,0(s1) + c00445c2: 8562 mv a0,s8 + c00445c4: d0ffe0ef jal ra,c00432d2 + c00445c8: 20051663 bnez a0,c00447d4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:586 *q = '\0'; - c00443fc: 000a8023 sb zero,0(s5) + c00445cc: 000a8023 sb zero,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:587 if (*p != '}') - c0044400: 0004c703 lbu a4,0(s1) - c0044404: 07d00793 li a5,125 + c00445d0: 0004c703 lbu a4,0(s1) + c00445d4: 07d00793 li a5,125 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:588 return re_parse_error(s, "expecting '}'"); - c0044408: 00023597 auipc a1,0x23 - c004440c: d1058593 addi a1,a1,-752 # c0067118 + c00445d8: 00023597 auipc a1,0x23 + c00445dc: da058593 addi a1,a1,-608 # c0067378 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:587 if (*p != '}') - c0044410: 1cf71e63 bne a4,a5,c00445ec + c00445e0: 1cf71e63 bne a4,a5,c00447bc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:592 if (!strcmp(name, "Script") || !strcmp(name, "sc")) { - c0044414: 00023597 auipc a1,0x23 - c0044418: d1458593 addi a1,a1,-748 # c0067128 - c004441c: 855a mv a0,s6 - c004441e: 530120ef jal ra,c005694e - c0044422: 8aaa mv s5,a0 - c0044424: cd05 beqz a0,c004445c - c0044426: 00023597 auipc a1,0x23 - c004442a: d0a58593 addi a1,a1,-758 # c0067130 - c004442e: 855a mv a0,s6 - c0044430: 51e120ef jal ra,c005694e - c0044434: 8aaa mv s5,a0 - c0044436: c11d beqz a0,c004445c + c00445e4: 00023597 auipc a1,0x23 + c00445e8: da458593 addi a1,a1,-604 # c0067388 + c00445ec: 855a mv a0,s6 + c00445ee: 530120ef jal ra,c0056b1e + c00445f2: 8aaa mv s5,a0 + c00445f4: cd05 beqz a0,c004462c + c00445f6: 00023597 auipc a1,0x23 + c00445fa: d9a58593 addi a1,a1,-614 # c0067390 + c00445fe: 855a mv a0,s6 + c0044600: 51e120ef jal ra,c0056b1e + c0044604: 8aaa mv s5,a0 + c0044606: c11d beqz a0,c004462c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:595 } else if (!strcmp(name, "Script_Extensions") || !strcmp(name, "scx")) { - c0044438: 00023597 auipc a1,0x23 - c004443c: d0058593 addi a1,a1,-768 # c0067138 - c0044440: 855a mv a0,s6 - c0044442: 50c120ef jal ra,c005694e - c0044446: c911 beqz a0,c004445a - c0044448: 00023597 auipc a1,0x23 - c004444c: d0858593 addi a1,a1,-760 # c0067150 - c0044450: 855a mv a0,s6 - c0044452: 4fc120ef jal ra,c005694e - c0044456: 1c051563 bnez a0,c0044620 + c0044608: 00023597 auipc a1,0x23 + c004460c: d9058593 addi a1,a1,-624 # c0067398 + c0044610: 855a mv a0,s6 + c0044612: 50c120ef jal ra,c0056b1e + c0044616: c911 beqz a0,c004462a + c0044618: 00023597 auipc a1,0x23 + c004461c: d9858593 addi a1,a1,-616 # c00673b0 + c0044620: 855a mv a0,s6 + c0044622: 4fc120ef jal ra,c0056b1e + c0044626: 1c051563 bnez a0,c00447f0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:596 script_ext = TRUE; - c004445a: 4a85 li s5,1 + c004462a: 4a85 li s5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:598 cr_init(cr, s->opaque, lre_realloc); - c004445c: 068a3583 ld a1,104(s4) - c0044460: fffc7617 auipc a2,0xfffc7 - c0044464: ac060613 addi a2,a2,-1344 # c000af20 - c0044468: 854e mv a0,s3 - c004446a: 37c020ef jal ra,c00467e6 + c004462c: 068a3583 ld a1,104(s4) + c0044630: fffc7617 auipc a2,0xfffc7 + c0044634: 9de60613 addi a2,a2,-1570 # c000b00e + c0044638: 854e mv a0,s3 + c004463a: 37c020ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:599 ret = unicode_script(cr, value, script_ext); - c004446e: 8656 mv a2,s5 - c0044470: 85de mv a1,s7 - c0044472: 854e mv a0,s3 - c0044474: 651020ef jal ra,c00472c4 - c0044478: 8aaa mv s5,a0 + c004463e: 8656 mv a2,s5 + c0044640: 85de mv a1,s7 + c0044642: 854e mv a0,s3 + c0044644: 651020ef jal ra,c0047494 + c0044648: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:600 if (ret) { - c004447a: 24050363 beqz a0,c00446c0 + c004464a: 24050363 beqz a0,c0044890 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:601 cr_free(cr); - c004447e: 854e mv a0,s3 - c0044480: 37e020ef jal ra,c00467fe + c004464e: 854e mv a0,s3 + c0044650: 37e020ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:602 if (ret == -2) - c0044484: 57f9 li a5,-2 + c0044654: 57f9 li a5,-2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:603 return re_parse_error(s, "unknown unicode script"); - c0044486: 00023597 auipc a1,0x23 - c004448a: cd258593 addi a1,a1,-814 # c0067158 + c0044656: 00023597 auipc a1,0x23 + c004465a: d6258593 addi a1,a1,-670 # c00673b8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:602 if (ret == -2) - c004448e: 14fa8f63 beq s5,a5,c00445ec + c004465e: 14fa8f63 beq s5,a5,c00447bc re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c0044492: 0001a597 auipc a1,0x1a - c0044496: 9ae58593 addi a1,a1,-1618 # c005de40 - c004449a: aa89 j c00445ec + c0044662: 0001a597 auipc a1,0x1a + c0044666: a0e58593 addi a1,a1,-1522 # c005e070 + c004466a: aa89 j c00447bc get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 - c004449c: 05700693 li a3,87 + c004466c: 05700693 li a3,87 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:688 c = CHAR_RANGE_W; - c00444a0: 4a95 li s5,5 - c00444a2: 04d78263 beq a5,a3,c00444e6 + c0044670: 4a95 li s5,5 + c0044672: 04d78263 beq a5,a3,c00446b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:723 ret = lre_parse_escape(&p, s->is_utf16 * 2); - c00444a6: 04ca2583 lw a1,76(s4) - c00444aa: 0028 addi a0,sp,8 + c0044676: 04ca2583 lw a1,76(s4) + c004467a: 0028 addi a0,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:722 p--; - c00444ac: e43a sd a4,8(sp) + c004467c: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:723 ret = lre_parse_escape(&p, s->is_utf16 * 2); - c00444ae: 0015959b slliw a1,a1,0x1 - c00444b2: c5fff0ef jal ra,c0044110 + c004467e: 0015959b slliw a1,a1,0x1 + c0044682: c5fff0ef jal ra,c00442e0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:724 if (ret >= 0) { - c00444b6: 22054163 bltz a0,c00446d8 + c0044686: 22054163 bltz a0,c00448a8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:725 c = ret; - c00444ba: 0005041b sext.w s0,a0 + c004468a: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:738 break; - c00444be: a219 j c00445c4 - c00444c0: 07300693 li a3,115 - c00444c4: 06d78563 beq a5,a3,c004452e - c00444c8: 00f6ea63 bltu a3,a5,c00444dc - c00444cc: 06400693 li a3,100 - c00444d0: 4a81 li s5,0 - c00444d2: 00d78a63 beq a5,a3,c00444e6 - c00444d6: 07000693 li a3,112 - c00444da: bd7d j c0044398 - c00444dc: 07700693 li a3,119 + c004468e: a219 j c0044794 + c0044690: 07300693 li a3,115 + c0044694: 06d78563 beq a5,a3,c00446fe + c0044698: 00f6ea63 bltu a3,a5,c00446ac + c004469c: 06400693 li a3,100 + c00446a0: 4a81 li s5,0 + c00446a2: 00d78a63 beq a5,a3,c00446b6 + c00446a6: 07000693 li a3,112 + c00446aa: bd7d j c0044568 + c00446ac: 07700693 li a3,119 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:685 c = CHAR_RANGE_w; - c00444e0: 4a91 li s5,4 - c00444e2: fcd792e3 bne a5,a3,c00444a6 + c00446b0: 4a91 li s5,4 + c00446b2: fcd792e3 bne a5,a3,c0044676 cr_init_char_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:201 c_pt = char_range_table[c >> 1]; - c00444e6: 001ad793 srli a5,s5,0x1 - c00444ea: 00379713 slli a4,a5,0x3 - c00444ee: 00023797 auipc a5,0x23 - c00444f2: fba78793 addi a5,a5,-70 # c00674a8 - c00444f6: 97ba add a5,a5,a4 - c00444f8: 6380 ld s0,0(a5) + c00446b6: 001ad793 srli a5,s5,0x1 + c00446ba: 00379713 slli a4,a5,0x3 + c00446be: 00023797 auipc a5,0x23 + c00446c2: 04a78793 addi a5,a5,74 # c0067708 + c00446c6: 97ba add a5,a5,a4 + c00446c8: 6380 ld s0,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:203 cr_init(cr, s->opaque, lre_realloc); - c00444fa: 068a3583 ld a1,104(s4) - c00444fe: fffc7617 auipc a2,0xfffc7 - c0044502: a2260613 addi a2,a2,-1502 # c000af20 + c00446ca: 068a3583 ld a1,104(s4) + c00446ce: fffc7617 auipc a2,0xfffc7 + c00446d2: 94060613 addi a2,a2,-1728 # c000b00e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:202 len = *c_pt++; - c0044506: 00045483 lhu s1,0(s0) # 10000 <__clzdi2-0xbfff0000> + c00446d6: 00045483 lhu s1,0(s0) # 10000 <__clzdi2-0xbfff0000> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:203 cr_init(cr, s->opaque, lre_realloc); - c004450a: 854e mv a0,s3 - c004450c: 2da020ef jal ra,c00467e6 + c00446da: 854e mv a0,s3 + c00446dc: 2da020ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:204 for(i = 0; i < len * 2; i++) { - c0044510: 0014949b slliw s1,s1,0x1 - c0044514: 0409 addi s0,s0,2 - c0044516: 4a01 li s4,0 - c0044518: 009a1d63 bne s4,s1,c0044532 + c00446e0: 0014949b slliw s1,s1,0x1 + c00446e4: 0409 addi s0,s0,2 + c00446e6: 4a01 li s4,0 + c00446e8: 009a1d63 bne s4,s1,c0044702 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:208 if (invert) { - c004451c: 001afa93 andi s5,s5,1 - c0044520: 040a9a63 bnez s5,c0044574 + c00446ec: 001afa93 andi s5,s5,1 + c00446f0: 040a9a63 bnez s5,c0044744 get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:716 c = CLASS_RANGE_BASE; - c0044524: 40000437 lui s0,0x40000 - c0044528: a871 j c00445c4 + c00446f4: 40000437 lui s0,0x40000 + c00446f8: a871 j c0044794 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:682 c = CHAR_RANGE_S; - c004452a: 4a8d li s5,3 - c004452c: bf6d j c00444e6 + c00446fa: 4a8d li s5,3 + c00446fc: bf6d j c00446b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:679 c = CHAR_RANGE_s; - c004452e: 4a89 li s5,2 - c0044530: bf5d j c00444e6 + c00446fe: 4a89 li s5,2 + c0044700: bf5d j c00446b6 cr_add_point(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:71 int cr_realloc(CharRange *cr, int size); @@ -186473,2051 +186671,2051 @@ int cr_copy(CharRange *cr, const CharRange *cr1); static inline int cr_add_point(CharRange *cr, uint32_t v) { if (cr->len >= cr->size) { - c0044532: 0009a583 lw a1,0(s3) - c0044536: 0049a783 lw a5,4(s3) + c0044702: 0009a583 lw a1,0(s3) + c0044706: 0049a783 lw a5,4(s3) cr_init_char_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:205 if (cr_add_point(cr, c_pt[i])) - c004453a: 00045b03 lhu s6,0(s0) # 40000000 <__clzdi2-0x80000000> + c004470a: 00045b03 lhu s6,0(s0) # 40000000 <__clzdi2-0x80000000> cr_add_point(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:71 - c004453e: 2a05 addiw s4,s4,1 - c0044540: 02f5d063 bge a1,a5,c0044560 + c004470e: 2a05 addiw s4,s4,1 + c0044710: 02f5d063 bge a1,a5,c0044730 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:75 if (cr_realloc(cr, cr->len + 1)) return -1; } cr->points[cr->len++] = v; - c0044544: 0009a783 lw a5,0(s3) - c0044548: 0089b703 ld a4,8(s3) - c004454c: 0409 addi s0,s0,2 - c004454e: 0017869b addiw a3,a5,1 - c0044552: 078a slli a5,a5,0x2 - c0044554: 00d9a023 sw a3,0(s3) - c0044558: 97ba add a5,a5,a4 - c004455a: 0167a023 sw s6,0(a5) + c0044714: 0009a783 lw a5,0(s3) + c0044718: 0089b703 ld a4,8(s3) + c004471c: 0409 addi s0,s0,2 + c004471e: 0017869b addiw a3,a5,1 + c0044722: 078a slli a5,a5,0x2 + c0044724: 00d9a023 sw a3,0(s3) + c0044728: 97ba add a5,a5,a4 + c004472a: 0167a023 sw s6,0(a5) cr_init_char_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:204 for(i = 0; i < len * 2; i++) { - c004455e: bf6d j c0044518 + c004472e: bf6d j c00446e8 cr_add_point(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:72 if (cr_realloc(cr, cr->len + 1)) - c0044560: 2585 addiw a1,a1,1 - c0044562: 854e mv a0,s3 - c0044564: 2a4020ef jal ra,c0046808 - c0044568: dd71 beqz a0,c0044544 + c0044730: 2585 addiw a1,a1,1 + c0044732: 854e mv a0,s3 + c0044734: 2a4020ef jal ra,c00469d8 + c0044738: dd71 beqz a0,c0044714 parse_unicode_property(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:641 cr_free(cr); - c004456a: 854e mv a0,s3 - c004456c: 292020ef jal ra,c00467fe + c004473a: 854e mv a0,s3 + c004473c: 292020ef jal ra,c00469ce get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:715 return -1; - c0044570: 557d li a0,-1 - c0044572: bbd9 j c0044348 + c0044740: 557d li a0,-1 + c0044742: bbd9 j c0044518 cr_init_char_range(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:209 if (cr_invert(cr)) - c0044574: 854e mv a0,s3 - c0044576: 7d4020ef jal ra,c0046d4a - c004457a: d54d beqz a0,c0044524 - c004457c: b7fd j c004456a + c0044744: 854e mv a0,s3 + c0044746: 7d4020ef jal ra,c0046f1a + c004474a: d54d beqz a0,c00446f4 + c004474c: b7fd j c004473a get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:695 c = *p; - c004457e: 0024c403 lbu s0,2(s1) + c004474e: 0024c403 lbu s0,2(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:696 if ((c >= 'a' && c <= 'z') || - c0044582: 4665 li a2,25 - c0044584: fdf47793 andi a5,s0,-33 - c0044588: fbf7879b addiw a5,a5,-65 - c004458c: 0ff7f793 zext.b a5,a5 - c0044590: 02f67763 bgeu a2,a5,c00445be + c0044752: 4665 li a2,25 + c0044754: fdf47793 andi a5,s0,-33 + c0044758: fbf7879b addiw a5,a5,-65 + c004475c: 0ff7f793 zext.b a5,a5 + c0044760: 02f67763 bgeu a2,a5,c004478e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:697 (c >= 'A' && c <= 'Z') || - c0044594: fd04061b addiw a2,s0,-48 - c0044598: 4525 li a0,9 - c004459a: 04ca2783 lw a5,76(s4) + c0044764: fd04061b addiw a2,s0,-48 + c0044768: 4525 li a0,9 + c004476a: 04ca2783 lw a5,76(s4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:695 c = *p; - c004459e: 0004059b sext.w a1,s0 + c004476e: 0004059b sext.w a1,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:697 (c >= 'A' && c <= 'Z') || - c00445a2: 00c57663 bgeu a0,a2,c00445ae + c0044772: 00c57663 bgeu a0,a2,c004477e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:698 (((c >= '0' && c <= '9') || c == '_') && - c00445a6: 05f00613 li a2,95 - c00445aa: 02c59363 bne a1,a2,c00445d0 + c0044776: 05f00613 li a2,95 + c004477a: 02c59363 bne a1,a2,c00447a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:698 (discriminator 1) - c00445ae: c28d beqz a3,c00445d0 + c004477e: c28d beqz a3,c00447a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:699 inclass && !s->is_utf16)) { /* Annex B.1.4 */ - c00445b0: 2781 sext.w a5,a5 - c00445b2: c791 beqz a5,c00445be + c0044780: 2781 sext.w a5,a5 + c0044782: c791 beqz a5,c004478e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:732 return re_parse_error(s, "invalid escape sequence in regular expression"); - c00445b4: 00023597 auipc a1,0x23 - c00445b8: adc58593 addi a1,a1,-1316 # c0067090 - c00445bc: b359 j c0044342 + c0044784: 00023597 auipc a1,0x23 + c0044788: b6c58593 addi a1,a1,-1172 # c00672f0 + c004478c: b359 j c0044512 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:701 p++; - c00445be: 048d addi s1,s1,3 + c004478e: 048d addi s1,s1,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:700 c &= 0x1f; - c00445c0: 887d andi s0,s0,31 + c0044790: 887d andi s0,s0,31 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:701 p++; - c00445c2: e426 sd s1,8(sp) + c0044792: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:761 *pp = p; - c00445c4: 67a2 ld a5,8(sp) + c0044794: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:762 return c; - c00445c6: 0004051b sext.w a0,s0 + c0044796: 0004051b sext.w a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:761 *pp = p; - c00445ca: 00f93023 sd a5,0(s2) + c004479a: 00f93023 sd a5,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:762 return c; - c00445ce: bbad j c0044348 + c004479e: bbad j c0044518 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:702 } else if (s->is_utf16) { - c00445d0: 2781 sext.w a5,a5 - c00445d2: f3ed bnez a5,c00445b4 + c00447a0: 2781 sext.w a5,a5 + c00447a2: f3ed bnez a5,c0044784 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:706 p--; - c00445d4: e43a sd a4,8(sp) + c00447a4: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:707 c = '\\'; - c00445d6: 05c00413 li s0,92 - c00445da: b7ed j c00445c4 + c00447a6: 05c00413 li s0,92 + c00447aa: b7ed j c0044794 parse_unicode_property(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:572 if ((q - name) >= sizeof(name) - 1) - c00445dc: 416a87b3 sub a5,s5,s6 - c00445e0: 00fc7d63 bgeu s8,a5,c00445fa + c00447ac: 416a87b3 sub a5,s5,s6 + c00447b0: 00fc7d63 bgeu s8,a5,c00447ca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:636 return re_parse_error(s, "unknown unicode property name"); - c00445e4: 00023597 auipc a1,0x23 - c00445e8: af458593 addi a1,a1,-1292 # c00670d8 + c00447b4: 00023597 auipc a1,0x23 + c00447b8: b8458593 addi a1,a1,-1148 # c0067338 re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c00445ec: 8552 mv a0,s4 - c00445ee: cedfe0ef jal ra,c00432da - c00445f2: 87aa mv a5,a0 + c00447bc: 8552 mv a0,s4 + c00447be: cedfe0ef jal ra,c00434aa + c00447c2: 87aa mv a5,a0 get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:715 return -1; - c00445f4: 557d li a0,-1 + c00447c4: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:714 if (parse_unicode_property(s, cr, &p, (c == 'P'))) - c00445f6: d79d beqz a5,c0044524 - c00445f8: bb81 j c0044348 + c00447c6: d79d beqz a5,c00446f4 + c00447c8: bb81 j c0044518 parse_unicode_property(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:574 *q++ = *p++; - c00445fa: 0a85 addi s5,s5,1 - c00445fc: 0485 addi s1,s1,1 - c00445fe: ff7a8fa3 sb s7,-1(s5) - c0044602: b3c9 j c00443c4 + c00447ca: 0a85 addi s5,s5,1 + c00447cc: 0485 addi s1,s1,1 + c00447ce: ff7a8fa3 sb s7,-1(s5) + c00447d2: b3c9 j c0044594 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:581 if ((q - value) >= sizeof(value) - 1) - c0044604: 417a87b3 sub a5,s5,s7 - c0044608: 00fcf763 bgeu s9,a5,c0044616 + c00447d4: 417a87b3 sub a5,s5,s7 + c00447d8: 00fcf763 bgeu s9,a5,c00447e6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:582 return re_parse_error(s, "unknown unicode property value"); - c004460c: 00023597 auipc a1,0x23 - c0044610: aec58593 addi a1,a1,-1300 # c00670f8 - c0044614: bfe1 j c00445ec + c00447dc: 00023597 auipc a1,0x23 + c00447e0: b7c58593 addi a1,a1,-1156 # c0067358 + c00447e4: bfe1 j c00447bc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:583 *q++ = *p++; - c0044616: 0a85 addi s5,s5,1 - c0044618: 0485 addi s1,s1,1 - c004461a: ff8a8fa3 sb s8,-1(s5) - c004461e: bbc1 j c00443ee + c00447e6: 0a85 addi s5,s5,1 + c00447e8: 0485 addi s1,s1,1 + c00447ea: ff8a8fa3 sb s8,-1(s5) + c00447ee: bbc1 j c00445be /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:607 } else if (!strcmp(name, "General_Category") || !strcmp(name, "gc")) { - c0044620: 00023597 auipc a1,0x23 - c0044624: b5058593 addi a1,a1,-1200 # c0067170 - c0044628: 855a mv a0,s6 - c004462a: 324120ef jal ra,c005694e - c004462e: c909 beqz a0,c0044640 - c0044630: 00023597 auipc a1,0x23 - c0044634: b5858593 addi a1,a1,-1192 # c0067188 - c0044638: 855a mv a0,s6 - c004463a: 314120ef jal ra,c005694e - c004463e: e91d bnez a0,c0044674 + c00447f0: 00023597 auipc a1,0x23 + c00447f4: be058593 addi a1,a1,-1056 # c00673d0 + c00447f8: 855a mv a0,s6 + c00447fa: 324120ef jal ra,c0056b1e + c00447fe: c909 beqz a0,c0044810 + c0044800: 00023597 auipc a1,0x23 + c0044804: be858593 addi a1,a1,-1048 # c00673e8 + c0044808: 855a mv a0,s6 + c004480a: 314120ef jal ra,c0056b1e + c004480e: e91d bnez a0,c0044844 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:608 cr_init(cr, s->opaque, lre_realloc); - c0044640: 068a3583 ld a1,104(s4) - c0044644: fffc7617 auipc a2,0xfffc7 - c0044648: 8dc60613 addi a2,a2,-1828 # c000af20 - c004464c: 854e mv a0,s3 - c004464e: 198020ef jal ra,c00467e6 + c0044810: 068a3583 ld a1,104(s4) + c0044814: fffc6617 auipc a2,0xfffc6 + c0044818: 7fa60613 addi a2,a2,2042 # c000b00e + c004481c: 854e mv a0,s3 + c004481e: 198020ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:609 ret = unicode_general_category(cr, value); - c0044652: 85de mv a1,s7 - c0044654: 854e mv a0,s3 - c0044656: 102030ef jal ra,c0047758 - c004465a: 8aaa mv s5,a0 + c0044822: 85de mv a1,s7 + c0044824: 854e mv a0,s3 + c0044826: 102030ef jal ra,c0047928 + c004482a: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:610 if (ret) { - c004465c: c135 beqz a0,c00446c0 + c004482c: c135 beqz a0,c0044890 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:611 cr_free(cr); - c004465e: 854e mv a0,s3 - c0044660: 19e020ef jal ra,c00467fe + c004482e: 854e mv a0,s3 + c0044830: 19e020ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:612 if (ret == -2) - c0044664: 57f9 li a5,-2 + c0044834: 57f9 li a5,-2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:613 return re_parse_error(s, "unknown unicode general category"); - c0044666: 00023597 auipc a1,0x23 - c004466a: b2a58593 addi a1,a1,-1238 # c0067190 + c0044836: 00023597 auipc a1,0x23 + c004483a: bba58593 addi a1,a1,-1094 # c00673f0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:612 if (ret == -2) - c004466e: e2fa92e3 bne s5,a5,c0044492 - c0044672: bfad j c00445ec + c004483e: e2fa92e3 bne s5,a5,c0044662 + c0044842: bfad j c00447bc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:617 } else if (value[0] == '\0') { - c0044674: 05014783 lbu a5,80(sp) - c0044678: f7b5 bnez a5,c00445e4 + c0044844: 05014783 lbu a5,80(sp) + c0044848: f7b5 bnez a5,c00447b4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:618 cr_init(cr, s->opaque, lre_realloc); - c004467a: 068a3583 ld a1,104(s4) - c004467e: fffc7617 auipc a2,0xfffc7 - c0044682: 8a260613 addi a2,a2,-1886 # c000af20 - c0044686: 854e mv a0,s3 - c0044688: 15e020ef jal ra,c00467e6 + c004484a: 068a3583 ld a1,104(s4) + c004484e: fffc6617 auipc a2,0xfffc6 + c0044852: 7c060613 addi a2,a2,1984 # c000b00e + c0044856: 854e mv a0,s3 + c0044858: 15e020ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:619 ret = unicode_general_category(cr, name); - c004468c: 85da mv a1,s6 - c004468e: 854e mv a0,s3 - c0044690: 0c8030ef jal ra,c0047758 + c004485c: 85da mv a1,s6 + c004485e: 854e mv a0,s3 + c0044860: 0c8030ef jal ra,c0047928 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:620 if (ret == -1) { - c0044694: 57fd li a5,-1 - c0044696: 00f51663 bne a0,a5,c00446a2 + c0044864: 57fd li a5,-1 + c0044866: 00f51663 bne a0,a5,c0044872 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:621 cr_free(cr); - c004469a: 854e mv a0,s3 - c004469c: 162020ef jal ra,c00467fe + c004486a: 854e mv a0,s3 + c004486c: 162020ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:622 goto out_of_memory; - c00446a0: bbcd j c0044492 + c0044870: bbcd j c0044662 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:624 if (ret < 0) { - c00446a2: 00055f63 bgez a0,c00446c0 + c0044872: 00055f63 bgez a0,c0044890 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:625 ret = unicode_prop(cr, name); - c00446a6: 85da mv a1,s6 - c00446a8: 854e mv a0,s3 - c00446aa: 0fe030ef jal ra,c00477a8 - c00446ae: 8aaa mv s5,a0 + c0044876: 85da mv a1,s6 + c0044878: 854e mv a0,s3 + c004487a: 0fe030ef jal ra,c0047978 + c004487e: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:626 if (ret) { - c00446b0: c901 beqz a0,c00446c0 + c0044880: c901 beqz a0,c0044890 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:627 cr_free(cr); - c00446b2: 854e mv a0,s3 - c00446b4: 14a020ef jal ra,c00467fe + c0044882: 854e mv a0,s3 + c0044884: 14a020ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:628 if (ret == -2) - c00446b8: 57f9 li a5,-2 - c00446ba: dcfa9ce3 bne s5,a5,c0044492 - c00446be: b71d j c00445e4 + c0044888: 57f9 li a5,-2 + c004488a: dcfa9ce3 bne s5,a5,c0044662 + c004488e: b71d j c00447b4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:639 if (is_inv) { - c00446c0: 05000793 li a5,80 - c00446c4: 00f41763 bne s0,a5,c00446d2 + c0044890: 05000793 li a5,80 + c0044894: 00f41763 bne s0,a5,c00448a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:640 if (cr_invert(cr)) { - c00446c8: 854e mv a0,s3 - c00446ca: 680020ef jal ra,c0046d4a - c00446ce: e8051ee3 bnez a0,c004456a + c0044898: 854e mv a0,s3 + c004489a: 680020ef jal ra,c0046f1a + c004489e: e8051ee3 bnez a0,c004473a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:589 p++; - c00446d2: 0485 addi s1,s1,1 + c00448a2: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:645 *pp = p; - c00446d4: e426 sd s1,8(sp) - c00446d6: b5b9 j c0044524 + c00448a4: e426 sd s1,8(sp) + c00448a6: b5b9 j c00446f4 get_class_atom(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:727 if (ret == -2 && *p != '\0' && strchr("^$\\.*+?()[]{}|/", *p)) { - c00446d8: 57f9 li a5,-2 - c00446da: 00f51d63 bne a0,a5,c00446f4 + c00448a8: 57f9 li a5,-2 + c00448aa: 00f51d63 bne a0,a5,c00448c4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:727 (discriminator 1) - c00446de: 67a2 ld a5,8(sp) - c00446e0: 0007c583 lbu a1,0(a5) - c00446e4: c981 beqz a1,c00446f4 + c00448ae: 67a2 ld a5,8(sp) + c00448b0: 0007c583 lbu a1,0(a5) + c00448b4: c981 beqz a1,c00448c4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:727 (discriminator 2) - c00446e6: 00023517 auipc a0,0x23 - c00446ea: ad250513 addi a0,a0,-1326 # c00671b8 - c00446ee: 24e120ef jal ra,c005693c - c00446f2: e509 bnez a0,c00446fc + c00448b6: 00023517 auipc a0,0x23 + c00448ba: b6250513 addi a0,a0,-1182 # c0067418 + c00448be: 24e120ef jal ra,c0056b0c + c00448c2: e509 bnez a0,c00448cc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:730 } else if (s->is_utf16) { - c00446f4: 04ca2783 lw a5,76(s4) - c00446f8: ea079ee3 bnez a5,c00445b4 + c00448c4: 04ca2783 lw a5,76(s4) + c00448c8: ea079ee3 bnez a5,c0044784 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:750 if (c >= 128) { - c00446fc: 07f00793 li a5,127 - c0044700: 0287f963 bgeu a5,s0,c0044732 + c00448cc: 07f00793 li a5,127 + c00448d0: 0287f963 bgeu a5,s0,c0044902 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:751 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c0044704: 6522 ld a0,8(sp) - c0044706: 0030 addi a2,sp,8 - c0044708: 4599 li a1,6 - c004470a: 011030ef jal ra,c0047f1a - c004470e: 0005041b sext.w s0,a0 + c00448d4: 6522 ld a0,8(sp) + c00448d6: 0030 addi a2,sp,8 + c00448d8: 4599 li a1,6 + c00448da: 011030ef jal ra,c00480ea + c00448de: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:752 if ((unsigned)c > 0xffff && !s->is_utf16) { - c0044712: 67c1 lui a5,0x10 - c0044714: eaf468e3 bltu s0,a5,c00445c4 + c00448e2: 67c1 lui a5,0x10 + c00448e4: eaf468e3 bltu s0,a5,c0044794 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:752 (discriminator 1) - c0044718: 04ca2783 lw a5,76(s4) + c00448e8: 04ca2783 lw a5,76(s4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:754 (discriminator 1) return re_parse_error(s, "malformed unicode char"); - c004471c: 00023597 auipc a1,0x23 - c0044720: aac58593 addi a1,a1,-1364 # c00671c8 + c00448ec: 00023597 auipc a1,0x23 + c00448f0: b3c58593 addi a1,a1,-1220 # c0067428 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:752 (discriminator 1) if ((unsigned)c > 0xffff && !s->is_utf16) { - c0044724: ea0790e3 bnez a5,c00445c4 - c0044728: b929 j c0044342 + c00448f4: ea0790e3 bnez a5,c0044794 + c00448f8: b929 j c0044512 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:742 if (p >= s->buf_end) { - c004472a: 7d1c ld a5,56(a0) + c00448fa: 7d1c ld a5,56(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:748 normal_char: - c004472c: 4401 li s0,0 + c00448fc: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:742 if (p >= s->buf_end) { - c004472e: c0f4f6e3 bgeu s1,a5,c004433a + c00448fe: c0f4f6e3 bgeu s1,a5,c004450a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:757 p++; - c0044732: 67a2 ld a5,8(sp) - c0044734: 0785 addi a5,a5,1 - c0044736: e43e sd a5,8(sp) - c0044738: b571 j c00445c4 + c0044902: 67a2 ld a5,8(sp) + c0044904: 0785 addi a5,a5,1 + c0044906: e43e sd a5,8(sp) + c0044908: b571 j c0044794 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:664 c = *p; - c004473a: 2401 sext.w s0,s0 - c004473c: b7c1 j c00446fc + c004490a: 2401 sext.w s0,s0 + c004490c: b7c1 j c00448cc -00000000c004473e : +00000000c004490e : re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:987 static int re_parse_group_name(char *buf, int buf_size, const uint8_t **pp) - c004473e: 7159 addi sp,sp,-112 - c0044740: eca6 sd s1,88(sp) - c0044742: e8ca sd s2,80(sp) - c0044744: e4ce sd s3,72(sp) - c0044746: e0d2 sd s4,64(sp) - c0044748: fc56 sd s5,56(sp) - c004474a: f85a sd s6,48(sp) - c004474c: f45e sd s7,40(sp) - c004474e: f062 sd s8,32(sp) - c0044750: ec66 sd s9,24(sp) - c0044752: f486 sd ra,104(sp) - c0044754: f0a2 sd s0,96(sp) - c0044756: e86a sd s10,16(sp) + c004490e: 7159 addi sp,sp,-112 + c0044910: eca6 sd s1,88(sp) + c0044912: e8ca sd s2,80(sp) + c0044914: e4ce sd s3,72(sp) + c0044916: e0d2 sd s4,64(sp) + c0044918: fc56 sd s5,56(sp) + c004491a: f85a sd s6,48(sp) + c004491c: f45e sd s7,40(sp) + c004491e: f062 sd s8,32(sp) + c0044920: ec66 sd s9,24(sp) + c0044922: f486 sd ra,104(sp) + c0044924: f0a2 sd s0,96(sp) + c0044926: e86a sd s10,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:993 p = *pp; - c0044758: 619c ld a5,0(a1) + c0044928: 619c ld a5,0(a1) lre_js_is_ident_next(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 return lre_is_id_continue(c) || c == 0x200C || c == 0x200D; - c004475a: 7af9 lui s5,0xffffe + c004492a: 7af9 lui s5,0xffffe re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1006 if (c >= 0xD800 && c <= 0xDBFF) { - c004475c: 7b4d lui s6,0xffff3 + c004492c: 7b4d lui s6,0xffff3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1008 if (d >= 0xDC00 && d <= 0xDFFF) { - c004475e: 7a49 lui s4,0xffff2 + c004492e: 7a49 lui s4,0xffff2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:987 static int re_parse_group_name(char *buf, int buf_size, const uint8_t **pp) - c0044760: 892a mv s2,a0 - c0044762: 89ae mv s3,a1 + c0044930: 892a mv s2,a0 + c0044932: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:993 p = *pp; - c0044764: e03e sd a5,0(sp) - c0044766: 84aa mv s1,a0 + c0044934: e03e sd a5,0(sp) + c0044936: 84aa mv s1,a0 lre_js_is_ident_next(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 - c0044768: 3ad1 addiw s5,s5,-12 + c0044938: 3ad1 addiw s5,s5,-12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:80 return (lre_id_continue_table_ascii[c >> 5] >> (c & 31)) & 1; - c004476a: 00023b97 auipc s7,0x23 - c004476e: d6eb8b93 addi s7,s7,-658 # c00674d8 + c004493a: 00023b97 auipc s7,0x23 + c004493e: dfeb8b93 addi s7,s7,-514 # c0067738 lre_js_is_ident_first(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:67 return (lre_id_start_table_ascii[c >> 5] >> (c & 31)) & 1; - c0044772: 00023c17 auipc s8,0x23 - c0044776: d76c0c13 addi s8,s8,-650 # c00674e8 + c0044942: 00023c17 auipc s8,0x23 + c0044946: e06c0c13 addi s8,s8,-506 # c0067748 re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1006 if (c >= 0xD800 && c <= 0xDBFF) { - c004477a: 800b0c9b addiw s9,s6,-2048 + c004494a: 800b0c9b addiw s9,s6,-2048 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1008 if (d >= 0xDC00 && d <= 0xDFFF) { - c004477e: 400a0a1b addiw s4,s4,1024 + c004494e: 400a0a1b addiw s4,s4,1024 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:996 c = *p; - c0044782: 6502 ld a0,0(sp) + c0044952: 6502 ld a0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:997 if (c == '\\') { - c0044784: 05c00793 li a5,92 + c0044954: 05c00793 li a5,92 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:996 c = *p; - c0044788: 00054403 lbu s0,0(a0) + c0044958: 00054403 lbu s0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:997 if (c == '\\') { - c004478c: 04f41e63 bne s0,a5,c00447e8 + c004495c: 04f41e63 bne s0,a5,c00449b8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:998 p++; - c0044790: 00150793 addi a5,a0,1 - c0044794: e03e sd a5,0(sp) + c0044960: 00150793 addi a5,a0,1 + c0044964: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:999 if (*p != 'u') - c0044796: 00154703 lbu a4,1(a0) - c004479a: 07500793 li a5,117 - c004479e: 02f70163 beq a4,a5,c00447c0 + c0044966: 00154703 lbu a4,1(a0) + c004496a: 07500793 li a5,117 + c004496e: 02f70163 beq a4,a5,c0044990 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1000 return -1; - c00447a2: 557d li a0,-1 + c0044972: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1039 } - c00447a4: 70a6 ld ra,104(sp) - c00447a6: 7406 ld s0,96(sp) - c00447a8: 64e6 ld s1,88(sp) - c00447aa: 6946 ld s2,80(sp) - c00447ac: 69a6 ld s3,72(sp) - c00447ae: 6a06 ld s4,64(sp) - c00447b0: 7ae2 ld s5,56(sp) - c00447b2: 7b42 ld s6,48(sp) - c00447b4: 7ba2 ld s7,40(sp) - c00447b6: 7c02 ld s8,32(sp) - c00447b8: 6ce2 ld s9,24(sp) - c00447ba: 6d42 ld s10,16(sp) - c00447bc: 6165 addi sp,sp,112 - c00447be: 8082 ret + c0044974: 70a6 ld ra,104(sp) + c0044976: 7406 ld s0,96(sp) + c0044978: 64e6 ld s1,88(sp) + c004497a: 6946 ld s2,80(sp) + c004497c: 69a6 ld s3,72(sp) + c004497e: 6a06 ld s4,64(sp) + c0044980: 7ae2 ld s5,56(sp) + c0044982: 7b42 ld s6,48(sp) + c0044984: 7ba2 ld s7,40(sp) + c0044986: 7c02 ld s8,32(sp) + c0044988: 6ce2 ld s9,24(sp) + c004498a: 6d42 ld s10,16(sp) + c004498c: 6165 addi sp,sp,112 + c004498e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1001 c = lre_parse_escape(&p, 2); // accept surrogate pairs - c00447c0: 4589 li a1,2 - c00447c2: 850a mv a0,sp - c00447c4: 94dff0ef jal ra,c0044110 - c00447c8: 0005041b sext.w s0,a0 + c0044990: 4589 li a1,2 + c0044992: 850a mv a0,sp + c0044994: 94dff0ef jal ra,c00442e0 + c0044998: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1016 if (c > 0x10FFFF) - c00447cc: 001107b7 lui a5,0x110 - c00447d0: fcf479e3 bgeu s0,a5,c00447a2 + c004499c: 001107b7 lui a5,0x110 + c00449a0: fcf479e3 bgeu s0,a5,c0044972 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1018 if (q == buf) { - c00447d4: 0b249c63 bne s1,s2,c004488c + c00449a4: 0b249c63 bne s1,s2,c0044a5c lre_js_is_ident_first(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:66 if ((uint32_t)c < 128) { - c00447d8: 07f00793 li a5,127 - c00447dc: 0887f063 bgeu a5,s0,c004485c + c00449a8: 07f00793 li a5,127 + c00449ac: 0887f063 bgeu a5,s0,c0044a2c /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:70 return lre_is_id_start(c); - c00447e0: 8522 mv a0,s0 - c00447e2: 7d6020ef jal ra,c0046fb8 - c00447e6: a059 j c004486c + c00449b0: 8522 mv a0,s0 + c00449b2: 7d6020ef jal ra,c0047188 + c00449b6: a059 j c0044a3c re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1002 } else if (c == '>') { - c00447e8: 03e00793 li a5,62 - c00447ec: 0cf40463 beq s0,a5,c00448b4 + c00449b8: 03e00793 li a5,62 + c00449bc: 0cf40463 beq s0,a5,c0044a84 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1004 } else if (c >= 128) { - c00447f0: 07f00793 li a5,127 - c00447f4: 0487ff63 bgeu a5,s0,c0044852 + c00449c0: 07f00793 li a5,127 + c00449c4: 0487ff63 bgeu a5,s0,c0044a22 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1005 c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); - c00447f8: 860a mv a2,sp - c00447fa: 4599 li a1,6 - c00447fc: 71e030ef jal ra,c0047f1a - c0044800: 0005041b sext.w s0,a0 + c00449c8: 860a mv a2,sp + c00449ca: 4599 li a1,6 + c00449cc: 71e030ef jal ra,c00480ea + c00449d0: 0005041b sext.w s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1006 if (c >= 0xD800 && c <= 0xDBFF) { - c0044804: 3ff00d13 li s10,1023 - c0044808: 00ac853b addw a0,s9,a0 - c004480c: fcad60e3 bltu s10,a0,c00447cc + c00449d4: 3ff00d13 li s10,1023 + c00449d8: 00ac853b addw a0,s9,a0 + c00449dc: fcad60e3 bltu s10,a0,c004499c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1007 d = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1); - c0044810: 6502 ld a0,0(sp) - c0044812: 0030 addi a2,sp,8 - c0044814: 4599 li a1,6 - c0044816: 704030ef jal ra,c0047f1a - c004481a: 0005079b sext.w a5,a0 + c00449e0: 6502 ld a0,0(sp) + c00449e2: 0030 addi a2,sp,8 + c00449e4: 4599 li a1,6 + c00449e6: 704030ef jal ra,c00480ea + c00449ea: 0005079b sext.w a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1008 if (d >= 0xDC00 && d <= 0xDFFF) { - c004481e: 00aa053b addw a0,s4,a0 - c0044822: 00ad6c63 bltu s10,a0,c004483a + c00449ee: 00aa053b addw a0,s4,a0 + c00449f2: 00ad6c63 bltu s10,a0,c0044a0a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1009 c = 0x10000 + 0x400 * (c - 0xD800) + (d - 0xDC00); - c0044826: 840b051b addiw a0,s6,-1984 - c004482a: 9c29 addw s0,s0,a0 - c004482c: 00a4141b slliw s0,s0,0xa - c0044830: 0144043b addw s0,s0,s4 - c0044834: 9c3d addw s0,s0,a5 + c00449f6: 840b051b addiw a0,s6,-1984 + c00449fa: 9c29 addw s0,s0,a0 + c00449fc: 00a4141b slliw s0,s0,0xa + c0044a00: 0144043b addw s0,s0,s4 + c0044a04: 9c3d addw s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1010 p = p1; - c0044836: 67a2 ld a5,8(sp) - c0044838: e03e sd a5,0(sp) + c0044a06: 67a2 ld a5,8(sp) + c0044a08: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1018 if (q == buf) { - c004483a: fb2483e3 beq s1,s2,c00447e0 + c0044a0a: fb2483e3 beq s1,s2,c00449b0 lre_js_is_ident_next(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:84 return lre_is_id_continue(c) || c == 0x200C || c == 0x200D; - c004483e: 8522 mv a0,s0 - c0044840: 790020ef jal ra,c0046fd0 - c0044844: e50d bnez a0,c004486e - c0044846: 008a87bb addw a5,s5,s0 - c004484a: 4705 li a4,1 - c004484c: f4f76be3 bltu a4,a5,c00447a2 - c0044850: a839 j c004486e + c0044a0e: 8522 mv a0,s0 + c0044a10: 790020ef jal ra,c00471a0 + c0044a14: e50d bnez a0,c0044a3e + c0044a16: 008a87bb addw a5,s5,s0 + c0044a1a: 4705 li a4,1 + c0044a1c: f4f76be3 bltu a4,a5,c0044972 + c0044a20: a839 j c0044a3e re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1014 p++; - c0044852: 00150793 addi a5,a0,1 - c0044856: e03e sd a5,0(sp) + c0044a22: 00150793 addi a5,a0,1 + c0044a26: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1018 if (q == buf) { - c0044858: 03249a63 bne s1,s2,c004488c + c0044a28: 03249a63 bne s1,s2,c0044a5c lre_js_is_ident_first(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:67 return (lre_id_start_table_ascii[c >> 5] >> (c & 31)) & 1; - c004485c: 40545793 srai a5,s0,0x5 - c0044860: 078a slli a5,a5,0x2 - c0044862: 97e2 add a5,a5,s8 - c0044864: 4388 lw a0,0(a5) - c0044866: 0085553b srlw a0,a0,s0 - c004486a: 8905 andi a0,a0,1 + c0044a2c: 40545793 srai a5,s0,0x5 + c0044a30: 078a slli a5,a5,0x2 + c0044a32: 97e2 add a5,a5,s8 + c0044a34: 4388 lw a0,0(a5) + c0044a36: 0085553b srlw a0,a0,s0 + c0044a3a: 8905 andi a0,a0,1 re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1019 if (!lre_js_is_ident_first(c)) - c004486c: d91d beqz a0,c00447a2 + c0044a3c: d91d beqz a0,c0044972 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1025 if ((q - buf + UTF8_CHAR_LEN_MAX + 1) > buf_size) - c004486e: 412487b3 sub a5,s1,s2 - c0044872: 079d addi a5,a5,7 - c0044874: 08000713 li a4,128 - c0044878: f2f745e3 blt a4,a5,c00447a2 + c0044a3e: 412487b3 sub a5,s1,s2 + c0044a42: 079d addi a5,a5,7 + c0044a44: 08000713 li a4,128 + c0044a48: f2f745e3 blt a4,a5,c0044972 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1027 if (c < 128) { - c004487c: 07f00793 li a5,127 - c0044880: 0287e463 bltu a5,s0,c00448a8 + c0044a4c: 07f00793 li a5,127 + c0044a50: 0287e463 bltu a5,s0,c0044a78 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1028 *q++ = c; - c0044884: 00848023 sb s0,0(s1) - c0044888: 0485 addi s1,s1,1 - c004488a: bde5 j c0044782 + c0044a54: 00848023 sb s0,0(s1) + c0044a58: 0485 addi s1,s1,1 + c0044a5a: bde5 j c0044952 lre_js_is_ident_next(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:79 if ((uint32_t)c < 128) { - c004488c: 07f00793 li a5,127 - c0044890: fa87e7e3 bltu a5,s0,c004483e + c0044a5c: 07f00793 li a5,127 + c0044a60: fa87e7e3 bltu a5,s0,c0044a0e /Users/Luppy/riscv/quickjs-nuttx/libregexp.h:80 return (lre_id_continue_table_ascii[c >> 5] >> (c & 31)) & 1; - c0044894: 40545793 srai a5,s0,0x5 - c0044898: 078a slli a5,a5,0x2 - c004489a: 97de add a5,a5,s7 - c004489c: 439c lw a5,0(a5) - c004489e: 0087d7bb srlw a5,a5,s0 + c0044a64: 40545793 srai a5,s0,0x5 + c0044a68: 078a slli a5,a5,0x2 + c0044a6a: 97de add a5,a5,s7 + c0044a6c: 439c lw a5,0(a5) + c0044a6e: 0087d7bb srlw a5,a5,s0 re_parse_group_name(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1022 if (!lre_js_is_ident_next(c)) - c00448a2: 8b85 andi a5,a5,1 - c00448a4: f7e9 bnez a5,c004486e - c00448a6: bdf5 j c00447a2 + c0044a72: 8b85 andi a5,a5,1 + c0044a74: f7e9 bnez a5,c0044a3e + c0044a76: bdf5 j c0044972 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1030 q += unicode_to_utf8((uint8_t*)q, c); - c00448a8: 8526 mv a0,s1 - c00448aa: 85a2 mv a1,s0 - c00448ac: 580030ef jal ra,c0047e2c - c00448b0: 94aa add s1,s1,a0 - c00448b2: bdc1 j c0044782 + c0044a78: 8526 mv a0,s1 + c0044a7a: 85a2 mv a1,s0 + c0044a7c: 580030ef jal ra,c0047ffc + c0044a80: 94aa add s1,s1,a0 + c0044a82: bdc1 j c0044952 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1033 if (q == buf) - c00448b4: ef2487e3 beq s1,s2,c00447a2 + c0044a84: ef2487e3 beq s1,s2,c0044972 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1036 p++; - c00448b8: 0505 addi a0,a0,1 + c0044a88: 0505 addi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1035 *q = '\0'; - c00448ba: 00048023 sb zero,0(s1) + c0044a8a: 00048023 sb zero,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1037 *pp = p; - c00448be: 00a9b023 sd a0,0(s3) + c0044a8e: 00a9b023 sd a0,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1038 return 0; - c00448c2: 4501 li a0,0 - c00448c4: b5c5 j c00447a4 + c0044a92: 4501 li a0,0 + c0044a94: b5c5 j c0044974 -00000000c00448c6 : +00000000c0044a96 : re_parse_captures(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1046 { - c00448c6: 7115 addi sp,sp,-224 - c00448c8: e9a2 sd s0,208(sp) - c00448ca: e5a6 sd s1,200(sp) - c00448cc: e1ca sd s2,192(sp) - c00448ce: fd4e sd s3,184(sp) - c00448d0: f952 sd s4,176(sp) - c00448d2: f556 sd s5,168(sp) - c00448d4: f15a sd s6,160(sp) - c00448d6: ed5e sd s7,152(sp) - c00448d8: ed86 sd ra,216(sp) + c0044a96: 7115 addi sp,sp,-224 + c0044a98: e9a2 sd s0,208(sp) + c0044a9a: e5a6 sd s1,200(sp) + c0044a9c: e1ca sd s2,192(sp) + c0044a9e: fd4e sd s3,184(sp) + c0044aa0: f952 sd s4,176(sp) + c0044aa2: f556 sd s5,168(sp) + c0044aa4: f15a sd s6,160(sp) + c0044aa6: ed5e sd s7,152(sp) + c0044aa8: ed86 sd ra,216(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1052 *phas_named_captures = 0; - c00448da: 0005a023 sw zero,0(a1) + c0044aaa: 0005a023 sw zero,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1053 for (p = s->buf_start; p < s->buf_end; p++) { - c00448de: 613c ld a5,64(a0) + c0044aae: 613c ld a5,64(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1046 { - c00448e0: 8baa mv s7,a0 - c00448e2: 892e mv s2,a1 - c00448e4: 84b2 mv s1,a2 + c0044ab0: 8baa mv s7,a0 + c0044ab2: 892e mv s2,a1 + c0044ab4: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1053 for (p = s->buf_start; p < s->buf_end; p++) { - c00448e6: e43e sd a5,8(sp) + c0044ab6: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1051 capture_index = 1; - c00448e8: 4405 li s0,1 + c0044ab8: 4405 li s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1054 switch (*p) { - c00448ea: 05b00a13 li s4,91 + c0044aba: 05b00a13 li s4,91 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1081 for (p += 1 + (*p == ']'); p < s->buf_end && *p != ']'; p++) { - c00448ee: 05d00a93 li s5,93 + c0044abe: 05d00a93 li s5,93 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1082 if (*p == '\\') - c00448f2: 05c00993 li s3,92 + c0044ac2: 05c00993 li s3,92 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1054 switch (*p) { - c00448f6: 02800b13 li s6,40 + c0044ac6: 02800b13 li s6,40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1053 (discriminator 1) for (p = s->buf_start; p < s->buf_end; p++) { - c00448fa: 038bb683 ld a3,56(s7) - c00448fe: 67a2 ld a5,8(sp) - c0044900: 04d7f963 bgeu a5,a3,c0044952 + c0044aca: 038bb683 ld a3,56(s7) + c0044ace: 67a2 ld a5,8(sp) + c0044ad0: 04d7f963 bgeu a5,a3,c0044b22 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1054 switch (*p) { - c0044904: 0007c703 lbu a4,0(a5) # 110000 <__clzdi2-0xbfef0000> - c0044908: 09470b63 beq a4,s4,c004499e - c004490c: 07370e63 beq a4,s3,c0044988 - c0044910: 07671e63 bne a4,s6,c004498c + c0044ad4: 0007c703 lbu a4,0(a5) # 110000 <__clzdi2-0xbfef0000> + c0044ad8: 09470b63 beq a4,s4,c0044b6e + c0044adc: 07370e63 beq a4,s3,c0044b58 + c0044ae0: 07671e63 bne a4,s6,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1056 if (p[1] == '?') { - c0044914: 0017c683 lbu a3,1(a5) - c0044918: 03f00713 li a4,63 - c004491c: 02e69663 bne a3,a4,c0044948 + c0044ae4: 0017c683 lbu a3,1(a5) + c0044ae8: 03f00713 li a4,63 + c0044aec: 02e69663 bne a3,a4,c0044b18 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1057 if (p[2] == '<' && p[3] != '=' && p[3] != '!') { - c0044920: 0027c683 lbu a3,2(a5) - c0044924: 03c00713 li a4,60 - c0044928: 06e69263 bne a3,a4,c004498c + c0044af0: 0027c683 lbu a3,2(a5) + c0044af4: 03c00713 li a4,60 + c0044af8: 06e69263 bne a3,a4,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1057 (discriminator 1) - c004492c: 0037c703 lbu a4,3(a5) - c0044930: 03d00693 li a3,61 - c0044934: 04d70c63 beq a4,a3,c004498c + c0044afc: 0037c703 lbu a4,3(a5) + c0044b00: 03d00693 li a3,61 + c0044b04: 04d70c63 beq a4,a3,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1057 (discriminator 2) - c0044938: 02100693 li a3,33 - c004493c: 04d70863 beq a4,a3,c004498c + c0044b08: 02100693 li a3,33 + c0044b0c: 04d70863 beq a4,a3,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1058 *phas_named_captures = 1; - c0044940: 4705 li a4,1 - c0044942: 00e92023 sw a4,0(s2) + c0044b10: 4705 li a4,1 + c0044b12: 00e92023 sw a4,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1060 if (capture_name) { - c0044946: e889 bnez s1,c0044958 + c0044b16: e889 bnez s1,c0044b28 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1072 capture_index++; - c0044948: 2405 addiw s0,s0,1 + c0044b18: 2405 addiw s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1073 if (capture_index >= CAPTURE_COUNT_MAX) - c004494a: 0fe00793 li a5,254 - c004494e: 0287df63 bge a5,s0,c004498c + c0044b1a: 0fe00793 li a5,254 + c0044b1e: 0287df63 bge a5,s0,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1089 if (capture_name) - c0044952: cc99 beqz s1,c0044970 + c0044b22: cc99 beqz s1,c0044b40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1090 return -1; - c0044954: 547d li s0,-1 - c0044956: a829 j c0044970 + c0044b24: 547d li s0,-1 + c0044b26: a829 j c0044b40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1061 p += 3; - c0044958: 078d addi a5,a5,3 + c0044b28: 078d addi a5,a5,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1062 if (re_parse_group_name(name, sizeof(name), &p) == 0) { - c004495a: 002c addi a1,sp,8 - c004495c: 0808 addi a0,sp,16 + c0044b2a: 002c addi a1,sp,8 + c0044b2c: 0808 addi a0,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1061 p += 3; - c004495e: e43e sd a5,8(sp) + c0044b2e: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1062 if (re_parse_group_name(name, sizeof(name), &p) == 0) { - c0044960: ddfff0ef jal ra,c004473e - c0044964: f175 bnez a0,c0044948 + c0044b30: ddfff0ef jal ra,c004490e + c0044b34: f175 bnez a0,c0044b18 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1063 if (!strcmp(name, capture_name)) - c0044966: 85a6 mv a1,s1 - c0044968: 0808 addi a0,sp,16 - c004496a: 7e5110ef jal ra,c005694e - c004496e: fd69 bnez a0,c0044948 + c0044b36: 85a6 mv a1,s1 + c0044b38: 0808 addi a0,sp,16 + c0044b3a: 7e5110ef jal ra,c0056b1e + c0044b3e: fd69 bnez a0,c0044b18 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1093 } - c0044970: 60ee ld ra,216(sp) - c0044972: 8522 mv a0,s0 - c0044974: 644e ld s0,208(sp) - c0044976: 64ae ld s1,200(sp) - c0044978: 690e ld s2,192(sp) - c004497a: 79ea ld s3,184(sp) - c004497c: 7a4a ld s4,176(sp) - c004497e: 7aaa ld s5,168(sp) - c0044980: 7b0a ld s6,160(sp) - c0044982: 6bea ld s7,152(sp) - c0044984: 612d addi sp,sp,224 - c0044986: 8082 ret + c0044b40: 60ee ld ra,216(sp) + c0044b42: 8522 mv a0,s0 + c0044b44: 644e ld s0,208(sp) + c0044b46: 64ae ld s1,200(sp) + c0044b48: 690e ld s2,192(sp) + c0044b4a: 79ea ld s3,184(sp) + c0044b4c: 7a4a ld s4,176(sp) + c0044b4e: 7aaa ld s5,168(sp) + c0044b50: 7b0a ld s6,160(sp) + c0044b52: 6bea ld s7,152(sp) + c0044b54: 612d addi sp,sp,224 + c0044b56: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1078 p++; - c0044988: 0785 addi a5,a5,1 - c004498a: e43e sd a5,8(sp) + c0044b58: 0785 addi a5,a5,1 + c0044b5a: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1053 (discriminator 2) for (p = s->buf_start; p < s->buf_end; p++) { - c004498c: 67a2 ld a5,8(sp) - c004498e: 0785 addi a5,a5,1 - c0044990: e43e sd a5,8(sp) - c0044992: b7a5 j c00448fa + c0044b5c: 67a2 ld a5,8(sp) + c0044b5e: 0785 addi a5,a5,1 + c0044b60: e43e sd a5,8(sp) + c0044b62: b7a5 j c0044aca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1082 if (*p == '\\') - c0044994: 01371463 bne a4,s3,c004499c + c0044b64: 01371463 bne a4,s3,c0044b6c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1083 p++; - c0044998: 0785 addi a5,a5,1 - c004499a: e43e sd a5,8(sp) + c0044b68: 0785 addi a5,a5,1 + c0044b6a: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1081 (discriminator 6) for (p += 1 + (*p == ']'); p < s->buf_end && *p != ']'; p++) { - c004499c: 67a2 ld a5,8(sp) - c004499e: 0785 addi a5,a5,1 - c00449a0: e43e sd a5,8(sp) - c00449a2: 67a2 ld a5,8(sp) - c00449a4: fed7f4e3 bgeu a5,a3,c004498c + c0044b6c: 67a2 ld a5,8(sp) + c0044b6e: 0785 addi a5,a5,1 + c0044b70: e43e sd a5,8(sp) + c0044b72: 67a2 ld a5,8(sp) + c0044b74: fed7f4e3 bgeu a5,a3,c0044b5c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1081 (discriminator 7) - c00449a8: 0007c703 lbu a4,0(a5) - c00449ac: ff5714e3 bne a4,s5,c0044994 - c00449b0: bff1 j c004498c + c0044b78: 0007c703 lbu a4,0(a5) + c0044b7c: ff5714e3 bne a4,s5,c0044b64 + c0044b80: bff1 j c0044b5c -00000000c00449b2 : +00000000c0044b82 : re_count_captures(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1096 { - c00449b2: 1141 addi sp,sp,-16 - c00449b4: e022 sd s0,0(sp) - c00449b6: e406 sd ra,8(sp) + c0044b82: 1141 addi sp,sp,-16 + c0044b84: e022 sd s0,0(sp) + c0044b86: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1097 if (s->total_capture_count < 0) { - c00449b8: 4d7c lw a5,92(a0) + c0044b88: 4d7c lw a5,92(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1096 { - c00449ba: 842a mv s0,a0 + c0044b8a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1097 if (s->total_capture_count < 0) { - c00449bc: 0007d863 bgez a5,c00449cc + c0044b8c: 0007d863 bgez a5,c0044b9c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1098 s->total_capture_count = re_parse_captures(s, &s->has_named_captures, - c00449c0: 4601 li a2,0 - c00449c2: 06050593 addi a1,a0,96 - c00449c6: f01ff0ef jal ra,c00448c6 - c00449ca: cc68 sw a0,92(s0) + c0044b90: 4601 li a2,0 + c0044b92: 06050593 addi a1,a0,96 + c0044b96: f01ff0ef jal ra,c0044a96 + c0044b9a: cc68 sw a0,92(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1102 } - c00449cc: 4c68 lw a0,92(s0) - c00449ce: 60a2 ld ra,8(sp) - c00449d0: 6402 ld s0,0(sp) - c00449d2: 0141 addi sp,sp,16 - c00449d4: 8082 ret + c0044b9c: 4c68 lw a0,92(s0) + c0044b9e: 60a2 ld ra,8(sp) + c0044ba0: 6402 ld s0,0(sp) + c0044ba2: 0141 addi sp,sp,16 + c0044ba4: 8082 ret -00000000c00449d6 : +00000000c0044ba6 : re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1626 { - c00449d6: 7151 addi sp,sp,-240 - c00449d8: e9ca sd s2,208(sp) - c00449da: f162 sd s8,160(sp) - c00449dc: e96a sd s10,144(sp) - c00449de: f586 sd ra,232(sp) - c00449e0: f1a2 sd s0,224(sp) - c00449e2: eda6 sd s1,216(sp) - c00449e4: e5ce sd s3,200(sp) - c00449e6: e1d2 sd s4,192(sp) - c00449e8: fd56 sd s5,184(sp) - c00449ea: f95a sd s6,176(sp) - c00449ec: f55e sd s7,168(sp) - c00449ee: ed66 sd s9,152(sp) - c00449f0: e56e sd s11,136(sp) + c0044ba6: 7151 addi sp,sp,-240 + c0044ba8: e9ca sd s2,208(sp) + c0044baa: f162 sd s8,160(sp) + c0044bac: e96a sd s10,144(sp) + c0044bae: f586 sd ra,232(sp) + c0044bb0: f1a2 sd s0,224(sp) + c0044bb2: eda6 sd s1,216(sp) + c0044bb4: e5ce sd s3,200(sp) + c0044bb6: e1d2 sd s4,192(sp) + c0044bb8: fd56 sd s5,184(sp) + c0044bba: f95a sd s6,176(sp) + c0044bbc: f55e sd s7,168(sp) + c0044bbe: ed66 sd s9,152(sp) + c0044bc0: e56e sd s11,136(sp) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1368 re_emit_op_u8(s, REOP_back_reference + is_backward_dir, c); - c00449f2: 0135879b addiw a5,a1,19 + c0044bc2: 0135879b addiw a5,a1,19 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1268 re_emit_op_u8(s, REOP_save_start + 1 - is_backward_dir, - c00449f6: 4c31 li s8,12 + c0044bc6: 4c31 li s8,12 re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1631 start = s->byte_code.size; - c00449f8: 00853b83 ld s7,8(a0) + c0044bc8: 00853b83 ld s7,8(a0) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1368 re_emit_op_u8(s, REOP_back_reference + is_backward_dir, c); - c00449fc: e03e sd a5,0(sp) + c0044bcc: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1268 re_emit_op_u8(s, REOP_save_start + 1 - is_backward_dir, - c00449fe: 40bc07bb subw a5,s8,a1 + c0044bce: 40bc07bb subw a5,s8,a1 re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1626 { - c0044a02: 8d2a mv s10,a0 - c0044a04: 892e mv s2,a1 + c0044bd2: 8d2a mv s10,a0 + c0044bd4: 892e mv s2,a1 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1268 re_emit_op_u8(s, REOP_save_start + 1 - is_backward_dir, - c0044a06: e83e sd a5,16(sp) + c0044bd6: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1260 re_emit_op_u8(s, REOP_save_start + is_backward_dir, - c0044a08: 00b9079b addiw a5,s2,11 - c0044a0c: e43e sd a5,8(sp) + c0044bd8: 00b9079b addiw a5,s2,11 + c0044bdc: e43e sd a5,8(sp) re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1633 p = s->buf_ptr; - c0044a0e: 030d3403 ld s0,48(s10) # ffffffff80000030 <_ebss+0xfffffffebfefef0a> + c0044bde: 030d3403 ld s0,48(s10) # ffffffff80000030 <_ebss+0xfffffffebfefef0a> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1634 if (p >= s->buf_end) - c0044a12: 038d3703 ld a4,56(s10) - c0044a16: 50e477e3 bgeu s0,a4,c0045724 + c0044be2: 038d3703 ld a4,56(s10) + c0044be6: 50e477e3 bgeu s0,a4,c00458f4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1636 if (*p == '|' || *p == ')') - c0044a1a: 00044703 lbu a4,0(s0) - c0044a1e: 07c00693 li a3,124 - c0044a22: 50d701e3 beq a4,a3,c0045724 + c0044bea: 00044703 lbu a4,0(s0) + c0044bee: 07c00693 li a3,124 + c0044bf2: 50d701e3 beq a4,a3,c00458f4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1636 (discriminator 1) - c0044a26: 02900693 li a3,41 - c0044a2a: 4ed70de3 beq a4,a3,c0045724 + c0044bf6: 02900693 li a3,41 + c0044bfa: 4ed70de3 beq a4,a3,c00458f4 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1142 p = s->buf_ptr; - c0044a2e: f022 sd s0,32(sp) + c0044bfe: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1143 c = *p; - c0044a30: 00044703 lbu a4,0(s0) + c0044c00: 00044703 lbu a4,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1144 switch(c) { - c0044a34: 05b00613 li a2,91 + c0044c04: 05b00613 li a2,91 re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1638 term_start = s->byte_code.size; - c0044a38: 008d3b03 ld s6,8(s10) + c0044c08: 008d3b03 ld s6,8(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1144 switch(c) { - c0044a3c: 66c70863 beq a4,a2,c00450ac - c0044a40: 04e66763 bltu a2,a4,c0044a8e - c0044a44: 02b00613 li a2,43 - c0044a48: 02e66663 bltu a2,a4,c0044a74 - c0044a4c: 02e6ec63 bltu a3,a4,c0044a84 - c0044a50: 02400693 li a3,36 - c0044a54: 06d70d63 beq a4,a3,c0044ace - c0044a58: 02800693 li a3,40 - c0044a5c: 12d70b63 beq a4,a3,c0044b92 + c0044c0c: 66c70863 beq a4,a2,c004527c + c0044c10: 04e66763 bltu a2,a4,c0044c5e + c0044c14: 02b00613 li a2,43 + c0044c18: 02e66663 bltu a2,a4,c0044c44 + c0044c1c: 02e6ec63 bltu a3,a4,c0044c54 + c0044c20: 02400693 li a3,36 + c0044c24: 06d70d63 beq a4,a3,c0044c9e + c0044c28: 02800693 li a3,40 + c0044c2c: 12d70b63 beq a4,a3,c0044d62 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1392 c = get_class_atom(s, cr, &p, FALSE); - c0044a60: 4681 li a3,0 - c0044a62: 1010 addi a2,sp,32 - c0044a64: 108c addi a1,sp,96 - c0044a66: 856a mv a0,s10 - c0044a68: 897ff0ef jal ra,c00442fe - c0044a6c: 84aa mv s1,a0 + c0044c30: 4681 li a3,0 + c0044c32: 1010 addi a2,sp,32 + c0044c34: 108c addi a1,sp,96 + c0044c36: 856a mv a0,s10 + c0044c38: 897ff0ef jal ra,c00444ce + c0044c3c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1393 if ((int)c < 0) - c0044a6e: 52055d63 bgez a0,c0044fa8 - c0044a72: aa91 j c0044bc6 + c0044c3e: 52055d63 bgez a0,c0045178 + c0044c42: aa91 j c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1144 switch(c) { - c0044a74: 02e00693 li a3,46 - c0044a78: 04d70f63 beq a4,a3,c0044ad6 - c0044a7c: 03f00693 li a3,63 + c0044c44: 02e00693 li a3,46 + c0044c48: 04d70f63 beq a4,a3,c0044ca6 + c0044c4c: 03f00693 li a3,63 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1180 if (*p1 != '}') { - c0044a80: fee690e3 bne a3,a4,c0044a60 + c0044c50: fee690e3 bne a3,a4,c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1188 return re_parse_error(s, "nothing to repeat"); - c0044a84: 00022597 auipc a1,0x22 - c0044a88: 76c58593 addi a1,a1,1900 # c00671f0 - c0044a8c: a079 j c0044b1a + c0044c54: 00022597 auipc a1,0x22 + c0044c58: 7fc58593 addi a1,a1,2044 # c0067450 + c0044c5c: a079 j c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1144 switch(c) { - c0044a8e: 05e00693 li a3,94 - c0044a92: 02d70763 beq a4,a3,c0044ac0 - c0044a96: 00e6ee63 bltu a3,a4,c0044ab2 - c0044a9a: 05c00693 li a3,92 - c0044a9e: 36d70663 beq a4,a3,c0044e0a - c0044aa2: 05d00693 li a3,93 - c0044aa6: fad71de3 bne a4,a3,c0044a60 + c0044c5e: 05e00693 li a3,94 + c0044c62: 02d70763 beq a4,a3,c0044c90 + c0044c66: 00e6ee63 bltu a3,a4,c0044c82 + c0044c6a: 05c00693 li a3,92 + c0044c6e: 36d70663 beq a4,a3,c0044fda + c0044c72: 05d00693 li a3,93 + c0044c76: fad71de3 bne a4,a3,c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1387 if (s->is_utf16) - c0044aaa: 04cd2703 lw a4,76(s10) - c0044aae: db4d beqz a4,c0044a60 - c0044ab0: a08d j c0044b12 + c0044c7a: 04cd2703 lw a4,76(s10) + c0044c7e: db4d beqz a4,c0044c30 + c0044c80: a08d j c0044ce2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1144 switch(c) { - c0044ab2: 07b00693 li a3,123 - c0044ab6: 04d70b63 beq a4,a3,c0044b0c - c0044aba: 07d00693 li a3,125 - c0044abe: b7e5 j c0044aa6 + c0044c82: 07b00693 li a3,123 + c0044c86: 04d70b63 beq a4,a3,c0044cdc + c0044c8a: 07d00693 li a3,125 + c0044c8e: b7e5 j c0044c76 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1146 p++; - c0044ac0: 0405 addi s0,s0,1 - c0044ac2: f022 sd s0,32(sp) + c0044c90: 0405 addi s0,s0,1 + c0044c92: f022 sd s0,32(sp) re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044ac4: 4595 li a1,5 - c0044ac6: 856a mv a0,s10 - c0044ac8: 27a030ef jal ra,c0047d42 + c0044c94: 4595 li a1,5 + c0044c96: 856a mv a0,s10 + c0044c98: 27a030ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:341 } - c0044acc: a6d9 j c0044e92 + c0044c9c: a6d9 j c0045062 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1150 p++; - c0044ace: 0405 addi s0,s0,1 - c0044ad0: f022 sd s0,32(sp) + c0044c9e: 0405 addi s0,s0,1 + c0044ca0: f022 sd s0,32(sp) re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044ad2: 4599 li a1,6 - c0044ad4: bfcd j c0044ac6 + c0044ca2: 4599 li a1,6 + c0044ca4: bfcd j c0044c96 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1154 p++; - c0044ad6: 0405 addi s0,s0,1 - c0044ad8: f022 sd s0,32(sp) + c0044ca6: 0405 addi s0,s0,1 + c0044ca8: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1156 last_capture_count = s->capture_count; - c0044ada: 058d2a03 lw s4,88(s10) + c0044caa: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1155 last_atom_start = s->byte_code.size; - c0044ade: 000b041b sext.w s0,s6 + c0044cae: 000b041b sext.w s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1157 if (is_backward_dir) - c0044ae2: 00090663 beqz s2,c0044aee + c0044cb2: 00090663 beqz s2,c0044cbe re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044ae6: 45ed li a1,27 - c0044ae8: 856a mv a0,s10 - c0044aea: 258030ef jal ra,c0047d42 + c0044cb6: 45ed li a1,27 + c0044cb8: 856a mv a0,s10 + c0044cba: 258030ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1159 re_emit_op(s, s->dotall ? REOP_any : REOP_dot); - c0044aee: 054d2583 lw a1,84(s10) + c0044cbe: 054d2583 lw a1,84(s10) re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044af2: 856a mv a0,s10 + c0044cc2: 856a mv a0,s10 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1159 re_emit_op(s, s->dotall ? REOP_any : REOP_dot); - c0044af4: 00b035b3 snez a1,a1 + c0044cc4: 00b035b3 snez a1,a1 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044af8: 058d addi a1,a1,3 - c0044afa: 248030ef jal ra,c0047d42 + c0044cc8: 058d addi a1,a1,3 + c0044cca: 248030ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1415 if (is_backward_dir) - c0044afe: 18090063 beqz s2,c0044c7e + c0044cce: 18090063 beqz s2,c0044e4e re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044b02: 45ed li a1,27 - c0044b04: 856a mv a0,s10 - c0044b06: 23c030ef jal ra,c0047d42 + c0044cd2: 45ed li a1,27 + c0044cd4: 856a mv a0,s10 + c0044cd6: 23c030ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:341 } - c0044b0a: aa95 j c0044c7e + c0044cda: aa95 j c0044e4e re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1164 if (s->is_utf16) { - c0044b0c: 04cd2703 lw a4,76(s10) - c0044b10: cb0d beqz a4,c0044b42 + c0044cdc: 04cd2703 lw a4,76(s10) + c0044ce0: cb0d beqz a4,c0044d12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1165 return re_parse_error(s, "syntax error"); - c0044b12: 00022597 auipc a1,0x22 - c0044b16: 6ce58593 addi a1,a1,1742 # c00671e0 + c0044ce2: 00022597 auipc a1,0x22 + c0044ce6: 75e58593 addi a1,a1,1886 # c0067440 re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c0044b1a: 856a mv a0,s10 - c0044b1c: fbefe0ef jal ra,c00432da + c0044cea: 856a mv a0,s10 + c0044cec: fbefe0ef jal ra,c00434aa re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1640 if (ret) - c0044b20: 36050c63 beqz a0,c0044e98 + c0044cf0: 36050c63 beqz a0,c0045068 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1657 } - c0044b24: 70ae ld ra,232(sp) - c0044b26: 740e ld s0,224(sp) - c0044b28: 64ee ld s1,216(sp) - c0044b2a: 694e ld s2,208(sp) - c0044b2c: 69ae ld s3,200(sp) - c0044b2e: 6a0e ld s4,192(sp) - c0044b30: 7aea ld s5,184(sp) - c0044b32: 7b4a ld s6,176(sp) - c0044b34: 7baa ld s7,168(sp) - c0044b36: 7c0a ld s8,160(sp) - c0044b38: 6cea ld s9,152(sp) - c0044b3a: 6d4a ld s10,144(sp) - c0044b3c: 6daa ld s11,136(sp) - c0044b3e: 616d addi sp,sp,240 - c0044b40: 8082 ret + c0044cf4: 70ae ld ra,232(sp) + c0044cf6: 740e ld s0,224(sp) + c0044cf8: 64ee ld s1,216(sp) + c0044cfa: 694e ld s2,208(sp) + c0044cfc: 69ae ld s3,200(sp) + c0044cfe: 6a0e ld s4,192(sp) + c0044d00: 7aea ld s5,184(sp) + c0044d02: 7b4a ld s6,176(sp) + c0044d04: 7baa ld s7,168(sp) + c0044d06: 7c0a ld s8,160(sp) + c0044d08: 6cea ld s9,152(sp) + c0044d0a: 6d4a ld s10,144(sp) + c0044d0c: 6daa ld s11,136(sp) + c0044d0e: 616d addi sp,sp,240 + c0044d10: 8082 ret is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 return c >= '0' && c <= '9'; - c0044b42: 00144703 lbu a4,1(s0) + c0044d12: 00144703 lbu a4,1(s0) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1166 } else if (!is_digit(p[1])) { - c0044b46: 46a5 li a3,9 - c0044b48: fd07071b addiw a4,a4,-48 - c0044b4c: f0e6eae3 bltu a3,a4,c0044a60 + c0044d16: 46a5 li a3,9 + c0044d18: fd07071b addiw a4,a4,-48 + c0044d1c: f0e6eae3 bltu a3,a4,c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1171 const uint8_t *p1 = p + 1; - c0044b50: 0405 addi s0,s0,1 + c0044d20: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1173 parse_digits(&p1, TRUE); - c0044b52: 4585 li a1,1 - c0044b54: 1088 addi a0,sp,96 + c0044d22: 4585 li a1,1 + c0044d24: 1088 addi a0,sp,96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1171 const uint8_t *p1 = p + 1; - c0044b56: f0a2 sd s0,96(sp) + c0044d26: f0a2 sd s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1173 parse_digits(&p1, TRUE); - c0044b58: d68fe0ef jal ra,c00430c0 + c0044d28: d68fe0ef jal ra,c0043290 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1174 if (*p1 == ',') { - c0044b5c: 7706 ld a4,96(sp) - c0044b5e: 02c00693 li a3,44 - c0044b62: 00074603 lbu a2,0(a4) - c0044b66: 02d61063 bne a2,a3,c0044b86 + c0044d2c: 7706 ld a4,96(sp) + c0044d2e: 02c00693 li a3,44 + c0044d32: 00074603 lbu a2,0(a4) + c0044d36: 02d61063 bne a2,a3,c0044d56 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1175 p1++; - c0044b6a: 00170693 addi a3,a4,1 - c0044b6e: f0b6 sd a3,96(sp) + c0044d3a: 00170693 addi a3,a4,1 + c0044d3e: f0b6 sd a3,96(sp) is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 return c >= '0' && c <= '9'; - c0044b70: 00174703 lbu a4,1(a4) + c0044d40: 00174703 lbu a4,1(a4) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1176 if (is_digit(*p1)) { - c0044b74: 46a5 li a3,9 - c0044b76: fd07071b addiw a4,a4,-48 - c0044b7a: 00e6e663 bltu a3,a4,c0044b86 + c0044d44: 46a5 li a3,9 + c0044d46: fd07071b addiw a4,a4,-48 + c0044d4a: 00e6e663 bltu a3,a4,c0044d56 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1177 parse_digits(&p1, TRUE); - c0044b7e: 4585 li a1,1 - c0044b80: 1088 addi a0,sp,96 - c0044b82: d3efe0ef jal ra,c00430c0 + c0044d4e: 4585 li a1,1 + c0044d50: 1088 addi a0,sp,96 + c0044d52: d3efe0ef jal ra,c0043290 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1180 if (*p1 != '}') { - c0044b86: 7706 ld a4,96(sp) - c0044b88: 00074683 lbu a3,0(a4) - c0044b8c: 07d00713 li a4,125 - c0044b90: bdc5 j c0044a80 + c0044d56: 7706 ld a4,96(sp) + c0044d58: 00074683 lbu a3,0(a4) + c0044d5c: 07d00713 li a4,125 + c0044d60: bdc5 j c0044c50 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1190 if (p[1] == '?') { - c0044b92: 00144683 lbu a3,1(s0) - c0044b96: 03f00713 li a4,63 - c0044b9a: 26e69063 bne a3,a4,c0044dfa + c0044d62: 00144683 lbu a3,1(s0) + c0044d66: 03f00713 li a4,63 + c0044d6a: 26e69063 bne a3,a4,c0044fca /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1191 if (p[2] == ':') { - c0044b9e: 00244583 lbu a1,2(s0) - c0044ba2: 03a00713 li a4,58 - c0044ba6: 02e59d63 bne a1,a4,c0044be0 + c0044d6e: 00244583 lbu a1,2(s0) + c0044d72: 03a00713 li a4,58 + c0044d76: 02e59d63 bne a1,a4,c0044db0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1192 p += 3; - c0044baa: 00340713 addi a4,s0,3 + c0044d7a: 00340713 addi a4,s0,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1195 s->buf_ptr = p; - c0044bae: 02ed3823 sd a4,48(s10) + c0044d7e: 02ed3823 sd a4,48(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1196 if (re_parse_disjunction(s, is_backward_dir)) - c0044bb2: 85ca mv a1,s2 - c0044bb4: 856a mv a0,s10 + c0044d82: 85ca mv a1,s2 + c0044d84: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1194 last_capture_count = s->capture_count; - c0044bb6: 058d2a03 lw s4,88(s10) + c0044d86: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1192 p += 3; - c0044bba: f03a sd a4,32(sp) + c0044d8a: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1193 last_atom_start = s->byte_code.size; - c0044bbc: 000b041b sext.w s0,s6 + c0044d8c: 000b041b sext.w s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1196 if (re_parse_disjunction(s, is_backward_dir)) - c0044bc0: 36b000ef jal ra,c004572a - c0044bc4: c119 beqz a0,c0044bca + c0044d90: 36b000ef jal ra,c00458fa + c0044d94: c119 beqz a0,c0044d9a re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1648 return -1; - c0044bc6: 557d li a0,-1 - c0044bc8: bfb1 j c0044b24 + c0044d96: 557d li a0,-1 + c0044d98: bfb1 j c0044cf4 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1198 p = s->buf_ptr; - c0044bca: 030d3703 ld a4,48(s10) - c0044bce: f03a sd a4,32(sp) + c0044d9a: 030d3703 ld a4,48(s10) + c0044d9e: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1271 if (re_parse_expect(s, &p, ')')) - c0044bd0: 02900613 li a2,41 - c0044bd4: 100c addi a1,sp,32 - c0044bd6: 856a mv a0,s10 - c0044bd8: b5aff0ef jal ra,c0043f32 - c0044bdc: c14d beqz a0,c0044c7e - c0044bde: b7e5 j c0044bc6 + c0044da0: 02900613 li a2,41 + c0044da4: 100c addi a1,sp,32 + c0044da6: 856a mv a0,s10 + c0044da8: b5aff0ef jal ra,c0044102 + c0044dac: c14d beqz a0,c0044e4e + c0044dae: b7e5 j c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1201 } else if ((p[2] == '=' || p[2] == '!')) { - c0044be0: 03d00693 li a3,61 - c0044be4: 00d58663 beq a1,a3,c0044bf0 - c0044be8: 02100713 li a4,33 - c0044bec: 12e59f63 bne a1,a4,c0044d2a + c0044db0: 03d00693 li a3,61 + c0044db4: 00d58663 beq a1,a3,c0044dc0 + c0044db8: 02100713 li a4,33 + c0044dbc: 12e59f63 bne a1,a4,c0044efa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1202 is_neg = (p[2] == '!'); - c0044bf0: fdf58593 addi a1,a1,-33 + c0044dc0: fdf58593 addi a1,a1,-33 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1204 p += 3; - c0044bf4: 040d addi s0,s0,3 + c0044dc4: 040d addi s0,s0,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1202 is_neg = (p[2] == '!'); - c0044bf6: 0015b593 seqz a1,a1 + c0044dc6: 0015b593 seqz a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1204 p += 3; - c0044bfa: f022 sd s0,32(sp) + c0044dca: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1203 is_backward_lookahead = FALSE; - c0044bfc: 4981 li s3,0 + c0044dcc: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1216 if (!s->is_utf16 && !is_backward_lookahead) { - c0044bfe: 04cd2703 lw a4,76(s10) - c0044c02: 00e9e733 or a4,s3,a4 - c0044c06: 14071463 bnez a4,c0044d4e + c0044dce: 04cd2703 lw a4,76(s10) + c0044dd2: 00e9e733 or a4,s3,a4 + c0044dd6: 14071463 bnez a4,c0044f1e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1218 last_capture_count = s->capture_count; - c0044c0a: 058d2a03 lw s4,88(s10) + c0044dda: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1217 last_atom_start = s->byte_code.size; - c0044c0e: 000b041b sext.w s0,s6 + c0044dde: 000b041b sext.w s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1220 pos = re_emit_op_u32(s, REOP_lookahead + is_neg, 0); - c0044c12: 05dd addi a1,a1,23 - c0044c14: 4601 li a2,0 - c0044c16: 856a mv a0,s10 - c0044c18: b76ff0ef jal ra,c0043f8e + c0044de2: 05dd addi a1,a1,23 + c0044de4: 4601 li a2,0 + c0044de6: 856a mv a0,s10 + c0044de8: b76ff0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1221 s->buf_ptr = p; - c0044c1c: 7702 ld a4,32(sp) + c0044dec: 7702 ld a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1220 pos = re_emit_op_u32(s, REOP_lookahead + is_neg, 0); - c0044c1e: 84aa mv s1,a0 + c0044dee: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1222 if (re_parse_disjunction(s, is_backward_lookahead)) - c0044c20: 85ce mv a1,s3 + c0044df0: 85ce mv a1,s3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1221 s->buf_ptr = p; - c0044c22: 02ed3823 sd a4,48(s10) + c0044df2: 02ed3823 sd a4,48(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1222 if (re_parse_disjunction(s, is_backward_lookahead)) - c0044c26: 856a mv a0,s10 - c0044c28: 303000ef jal ra,c004572a - c0044c2c: fd49 bnez a0,c0044bc6 + c0044df6: 856a mv a0,s10 + c0044df8: 303000ef jal ra,c00458fa + c0044dfc: fd49 bnez a0,c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1224 p = s->buf_ptr; - c0044c2e: 030d3703 ld a4,48(s10) + c0044dfe: 030d3703 ld a4,48(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1225 if (re_parse_expect(s, &p, ')')) - c0044c32: 02900613 li a2,41 - c0044c36: 100c addi a1,sp,32 - c0044c38: 856a mv a0,s10 + c0044e02: 02900613 li a2,41 + c0044e06: 100c addi a1,sp,32 + c0044e08: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1224 p = s->buf_ptr; - c0044c3a: f03a sd a4,32(sp) + c0044e0a: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1225 if (re_parse_expect(s, &p, ')')) - c0044c3c: af6ff0ef jal ra,c0043f32 - c0044c40: f159 bnez a0,c0044bc6 + c0044e0c: af6ff0ef jal ra,c0044102 + c0044e10: f159 bnez a0,c0044d96 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044c42: 45a9 li a1,10 - c0044c44: 856a mv a0,s10 - c0044c46: 0fc030ef jal ra,c0047d42 + c0044e12: 45a9 li a1,10 + c0044e14: 856a mv a0,s10 + c0044e16: 0fc030ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1229 if (dbuf_error(&s->byte_code)) - c0044c4a: 018d2703 lw a4,24(s10) - c0044c4e: ff25 bnez a4,c0044bc6 + c0044e1a: 018d2703 lw a4,24(s10) + c0044e1e: ff25 bnez a4,c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1231 put_u32(s->byte_code.buf + pos, s->byte_code.size - (pos + 4)); - c0044c50: 008d3503 ld a0,8(s10) + c0044e20: 008d3503 ld a0,8(s10) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0044c54: 000d3683 ld a3,0(s10) + c0044e24: 000d3683 ld a3,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1231 - c0044c58: ffc5071b addiw a4,a0,-4 - c0044c5c: 4097053b subw a0,a4,s1 + c0044e28: ffc5071b addiw a4,a0,-4 + c0044e2c: 4097053b subw a0,a4,s1 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0044c60: 96a6 add a3,a3,s1 - c0044c62: 0085571b srliw a4,a0,0x8 - c0044c66: 00a68023 sb a0,0(a3) - c0044c6a: 00e680a3 sb a4,1(a3) - c0044c6e: 0105571b srliw a4,a0,0x10 - c0044c72: 0185551b srliw a0,a0,0x18 - c0044c76: 00e68123 sb a4,2(a3) - c0044c7a: 00a681a3 sb a0,3(a3) + c0044e30: 96a6 add a3,a3,s1 + c0044e32: 0085571b srliw a4,a0,0x8 + c0044e36: 00a68023 sb a0,0(a3) + c0044e3a: 00e680a3 sb a4,1(a3) + c0044e3e: 0105571b srliw a4,a0,0x10 + c0044e42: 0185551b srliw a0,a0,0x18 + c0044e46: 00e68123 sb a4,2(a3) + c0044e4a: 00a681a3 sb a0,3(a3) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1421 if (last_atom_start >= 0) { - c0044c7e: 20044a63 bltz s0,c0044e92 + c0044e4e: 20044a63 bltz s0,c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1422 c = *p; - c0044c82: 7482 ld s1,32(sp) + c0044e52: 7482 ld s1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1423 switch(c) { - c0044c84: 03f00693 li a3,63 + c0044e54: 03f00693 li a3,63 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1422 c = *p; - c0044c88: 0004c703 lbu a4,0(s1) + c0044e58: 0004c703 lbu a4,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1423 switch(c) { - c0044c8c: 5ed70063 beq a4,a3,c004526c - c0044c90: 5ae6e163 bltu a3,a4,c0045232 - c0044c94: 02a00693 li a3,42 - c0044c98: 5cd70263 beq a4,a3,c004525c - c0044c9c: 02b00693 li a3,43 - c0044ca0: 1ed71963 bne a4,a3,c0044e92 + c0044e5c: 5ed70063 beq a4,a3,c004543c + c0044e60: 5ae6e163 bltu a3,a4,c0045402 + c0044e64: 02a00693 li a3,42 + c0044e68: 5cd70263 beq a4,a3,c004542c + c0044e6c: 02b00693 li a3,43 + c0044e70: 1ed71963 bne a4,a3,c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1430 p++; - c0044ca4: 0485 addi s1,s1,1 + c0044e74: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1432 quant_max = INT32_MAX; - c0044ca6: 80000737 lui a4,0x80000 + c0044e76: 80000737 lui a4,0x80000 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1430 p++; - c0044caa: f026 sd s1,32(sp) + c0044e7a: f026 sd s1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1432 quant_max = INT32_MAX; - c0044cac: fff74c93 not s9,a4 + c0044e7c: fff74c93 not s9,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1431 quant_min = 1; - c0044cb0: 4c05 li s8,1 + c0044e80: 4c05 li s8,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1474 if (*p == '?') { - c0044cb2: 7602 ld a2,32(sp) - c0044cb4: 03f00593 li a1,63 - c0044cb8: 00064503 lbu a0,0(a2) - c0044cbc: 62b51663 bne a0,a1,c00452e8 + c0044e82: 7602 ld a2,32(sp) + c0044e84: 03f00593 li a1,63 + c0044e88: 00064503 lbu a0,0(a2) + c0044e8c: 62b51663 bne a0,a1,c00454b8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1475 p++; - c0044cc0: 0605 addi a2,a2,1 - c0044cc2: f032 sd a2,32(sp) + c0044e90: 0605 addi a2,a2,1 + c0044e92: f032 sd a2,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1476 greedy = FALSE; - c0044cc4: 4a81 li s5,0 + c0044e94: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1519 add_zero_advance_check = FALSE; - c0044cc6: 4481 li s1,0 + c0044e96: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1524 len = s->byte_code.size - last_atom_start; - c0044cc8: 008d3983 ld s3,8(s10) - c0044ccc: 0004061b sext.w a2,s0 - c0044cd0: 40898dbb subw s11,s3,s0 - c0044cd4: 89ee mv s3,s11 + c0044e98: 008d3983 ld s3,8(s10) + c0044e9c: 0004061b sext.w a2,s0 + c0044ea0: 40898dbb subw s11,s3,s0 + c0044ea4: 89ee mv s3,s11 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1525 if (quant_min == 0) { - c0044cd6: 120c1de3 bnez s8,c0045610 + c0044ea6: 120c1de3 bnez s8,c00457e0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1528 if (last_capture_count != s->capture_count) { - c0044cda: 058d2683 lw a3,88(s10) - c0044cde: 05468163 beq a3,s4,c0044d20 + c0044eaa: 058d2683 lw a3,88(s10) + c0044eae: 05468163 beq a3,s4,c0044ef0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1529 if (dbuf_insert(&s->byte_code, last_atom_start, 3)) - c0044ce2: 460d li a2,3 - c0044ce4: 85a2 mv a1,s0 - c0044ce6: 856a mv a0,s10 - c0044ce8: c6efe0ef jal ra,c0043156 - c0044cec: 220516e3 bnez a0,c0045718 + c0044eb2: 460d li a2,3 + c0044eb4: 85a2 mv a1,s0 + c0044eb6: 856a mv a0,s10 + c0044eb8: c6efe0ef jal ra,c0043326 + c0044ebc: 220516e3 bnez a0,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1531 s->byte_code.buf[last_atom_start++] = REOP_save_reset; - c0044cf0: 000d3683 ld a3,0(s10) - c0044cf4: 4635 li a2,13 + c0044ec0: 000d3683 ld a3,0(s10) + c0044ec4: 4635 li a2,13 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1532 s->byte_code.buf[last_atom_start++] = last_capture_count; - c0044cf6: 0014059b addiw a1,s0,1 + c0044ec6: 0014059b addiw a1,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1531 s->byte_code.buf[last_atom_start++] = REOP_save_reset; - c0044cfa: 96a2 add a3,a3,s0 - c0044cfc: 00c68023 sb a2,0(a3) + c0044eca: 96a2 add a3,a3,s0 + c0044ecc: 00c68023 sb a2,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1532 s->byte_code.buf[last_atom_start++] = last_capture_count; - c0044d00: 000d3603 ld a2,0(s10) - c0044d04: 0024069b addiw a3,s0,2 + c0044ed0: 000d3603 ld a2,0(s10) + c0044ed4: 0024069b addiw a3,s0,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1533 s->byte_code.buf[last_atom_start++] = s->capture_count - 1; - c0044d08: 240d addiw s0,s0,3 + c0044ed8: 240d addiw s0,s0,3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1532 s->byte_code.buf[last_atom_start++] = last_capture_count; - c0044d0a: 962e add a2,a2,a1 - c0044d0c: 01460023 sb s4,0(a2) + c0044eda: 962e add a2,a2,a1 + c0044edc: 01460023 sb s4,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1533 s->byte_code.buf[last_atom_start++] = s->capture_count - 1; - c0044d10: 000d3603 ld a2,0(s10) - c0044d14: 96b2 add a3,a3,a2 - c0044d16: 058d2603 lw a2,88(s10) - c0044d1a: 367d addiw a2,a2,-1 - c0044d1c: 00c68023 sb a2,0(a3) + c0044ee0: 000d3603 ld a2,0(s10) + c0044ee4: 96b2 add a3,a3,a2 + c0044ee6: 058d2603 lw a2,88(s10) + c0044eea: 367d addiw a2,a2,-1 + c0044eec: 00c68023 sb a2,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1535 if (quant_max == 0) { - c0044d20: 7a0c9463 bnez s9,c00454c8 + c0044ef0: 7a0c9463 bnez s9,c0045698 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1536 s->byte_code.size = last_atom_start; - c0044d24: 008d3423 sd s0,8(s10) - c0044d28: a2ad j c0044e92 + c0044ef4: 008d3423 sd s0,8(s10) + c0044ef8: a2ad j c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1206 } else if (p[2] == '<' && - c0044d2a: 03c00613 li a2,60 - c0044d2e: 0cc59163 bne a1,a2,c0044df0 + c0044efa: 03c00613 li a2,60 + c0044efe: 0cc59163 bne a1,a2,c0044fc0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1207 (p[3] == '=' || p[3] == '!')) { - c0044d32: 00344583 lbu a1,3(s0) + c0044f02: 00344583 lbu a1,3(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1206 } else if (p[2] == '<' && - c0044d36: 00d58463 beq a1,a3,c0044d3e + c0044f06: 00d58463 beq a1,a3,c0044f0e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1207 (p[3] == '=' || p[3] == '!')) { - c0044d3a: 00e59d63 bne a1,a4,c0044d54 + c0044f0a: 00e59d63 bne a1,a4,c0044f24 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1209 is_neg = (p[3] == '!'); - c0044d3e: fdf58593 addi a1,a1,-33 + c0044f0e: fdf58593 addi a1,a1,-33 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1211 p += 4; - c0044d42: 0411 addi s0,s0,4 + c0044f12: 0411 addi s0,s0,4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1209 is_neg = (p[3] == '!'); - c0044d44: 0015b593 seqz a1,a1 + c0044f14: 0015b593 seqz a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1211 p += 4; - c0044d48: f022 sd s0,32(sp) + c0044f18: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1210 is_backward_lookahead = TRUE; - c0044d4a: 4985 li s3,1 - c0044d4c: bd4d j c0044bfe + c0044f1a: 4985 li s3,1 + c0044f1c: bd4d j c0044dce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1141 last_capture_count = 0; - c0044d4e: 4a01 li s4,0 + c0044f1e: 4a01 li s4,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1140 last_atom_start = -1; - c0044d50: 547d li s0,-1 - c0044d52: b5c1 j c0044c12 + c0044f20: 547d li s0,-1 + c0044f22: b5c1 j c0044de2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1233 p += 3; - c0044d54: 040d addi s0,s0,3 - c0044d56: f022 sd s0,32(sp) + c0044f24: 040d addi s0,s0,3 + c0044f26: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1234 if (re_parse_group_name(s->u.tmp_buf, sizeof(s->u.tmp_buf), - c0044d58: 0a0d0413 addi s0,s10,160 - c0044d5c: 100c addi a1,sp,32 - c0044d5e: 8522 mv a0,s0 - c0044d60: 9dfff0ef jal ra,c004473e - c0044d64: c511 beqz a0,c0044d70 + c0044f28: 0a0d0413 addi s0,s10,160 + c0044f2c: 100c addi a1,sp,32 + c0044f2e: 8522 mv a0,s0 + c0044f30: 9dfff0ef jal ra,c004490e + c0044f34: c511 beqz a0,c0044f40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1301 return re_parse_error(s, "invalid group name"); - c0044d66: 00022597 auipc a1,0x22 - c0044d6a: 4a258593 addi a1,a1,1186 # c0067208 - c0044d6e: b375 j c0044b1a + c0044f36: 00022597 auipc a1,0x22 + c0044f3a: 53258593 addi a1,a1,1330 # c0067468 + c0044f3e: b375 j c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1238 if (find_group_name(s, s->u.tmp_buf) > 0) { - c0044d70: 85a2 mv a1,s0 - c0044d72: 856a mv a0,s10 - c0044d74: c30fe0ef jal ra,c00431a4 + c0044f40: 85a2 mv a1,s0 + c0044f42: 856a mv a0,s10 + c0044f44: c30fe0ef jal ra,c0043374 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1239 return re_parse_error(s, "duplicate group name"); - c0044d78: 00022597 auipc a1,0x22 - c0044d7c: 4a858593 addi a1,a1,1192 # c0067220 + c0044f48: 00022597 auipc a1,0x22 + c0044f4c: 53858593 addi a1,a1,1336 # c0067480 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1238 if (find_group_name(s, s->u.tmp_buf) > 0) { - c0044d80: d8a04de3 bgtz a0,c0044b1a + c0044f50: d8a04de3 bgtz a0,c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1243 strlen(s->u.tmp_buf) + 1); - c0044d84: 8522 mv a0,s0 - c0044d86: 42b110ef jal ra,c00569b0 + c0044f54: 8522 mv a0,s0 + c0044f56: 42b110ef jal ra,c0056b80 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1242 dbuf_put(&s->group_names, (uint8_t *)s->u.tmp_buf, - c0044d8a: 00150613 addi a2,a0,1 - c0044d8e: 85a2 mv a1,s0 - c0044d90: 070d0513 addi a0,s10,112 - c0044d94: 71d020ef jal ra,c0047cb0 + c0044f5a: 00150613 addi a2,a0,1 + c0044f5e: 85a2 mv a1,s0 + c0044f60: 070d0513 addi a0,s10,112 + c0044f64: 71d020ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1244 s->has_named_captures = 1; - c0044d98: 4705 li a4,1 - c0044d9a: 06ed2023 sw a4,96(s10) + c0044f68: 4705 li a4,1 + c0044f6a: 06ed2023 sw a4,96(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1255 if (s->capture_count >= CAPTURE_COUNT_MAX) - c0044d9e: 058d2a03 lw s4,88(s10) - c0044da2: 0fe00713 li a4,254 + c0044f6e: 058d2a03 lw s4,88(s10) + c0044f72: 0fe00713 li a4,254 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1256 return re_parse_error(s, "too many captures"); - c0044da6: 00022597 auipc a1,0x22 - c0044daa: 4a258593 addi a1,a1,1186 # c0067248 + c0044f76: 00022597 auipc a1,0x22 + c0044f7a: 53258593 addi a1,a1,1330 # c00674a8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1255 if (s->capture_count >= CAPTURE_COUNT_MAX) - c0044dae: d74746e3 blt a4,s4,c0044b1a + c0044f7e: d74746e3 blt a4,s4,c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1260 re_emit_op_u8(s, REOP_save_start + is_backward_dir, - c0044db2: 65a2 ld a1,8(sp) + c0044f82: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1259 capture_index = s->capture_count++; - c0044db4: 001a071b addiw a4,s4,1 - c0044db8: 04ed2c23 sw a4,88(s10) + c0044f84: 001a071b addiw a4,s4,1 + c0044f88: 04ed2c23 sw a4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1260 re_emit_op_u8(s, REOP_save_start + is_backward_dir, - c0044dbc: 000a061b sext.w a2,s4 - c0044dc0: 856a mv a0,s10 + c0044f8c: 000a061b sext.w a2,s4 + c0044f90: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1257 last_atom_start = s->byte_code.size; - c0044dc2: 008d2403 lw s0,8(s10) + c0044f92: 008d2403 lw s0,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1260 re_emit_op_u8(s, REOP_save_start + is_backward_dir, - c0044dc6: ec32 sd a2,24(sp) - c0044dc8: b68fe0ef jal ra,c0043130 + c0044f96: ec32 sd a2,24(sp) + c0044f98: b68fe0ef jal ra,c0043300 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1263 s->buf_ptr = p; - c0044dcc: 7702 ld a4,32(sp) + c0044f9c: 7702 ld a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1264 if (re_parse_disjunction(s, is_backward_dir)) - c0044dce: 85ca mv a1,s2 - c0044dd0: 856a mv a0,s10 + c0044f9e: 85ca mv a1,s2 + c0044fa0: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1263 s->buf_ptr = p; - c0044dd2: 02ed3823 sd a4,48(s10) + c0044fa2: 02ed3823 sd a4,48(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1264 if (re_parse_disjunction(s, is_backward_dir)) - c0044dd6: 155000ef jal ra,c004572a - c0044dda: de0516e3 bnez a0,c0044bc6 + c0044fa6: 155000ef jal ra,c00458fa + c0044faa: de0516e3 bnez a0,c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1266 p = s->buf_ptr; - c0044dde: 030d3703 ld a4,48(s10) + c0044fae: 030d3703 ld a4,48(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1268 re_emit_op_u8(s, REOP_save_start + 1 - is_backward_dir, - c0044de2: 6662 ld a2,24(sp) - c0044de4: 65c2 ld a1,16(sp) - c0044de6: 856a mv a0,s10 + c0044fb2: 6662 ld a2,24(sp) + c0044fb4: 65c2 ld a1,16(sp) + c0044fb6: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1266 p = s->buf_ptr; - c0044de8: f03a sd a4,32(sp) + c0044fb8: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1268 re_emit_op_u8(s, REOP_save_start + 1 - is_backward_dir, - c0044dea: b46fe0ef jal ra,c0043130 - c0044dee: b3cd j c0044bd0 + c0044fba: b46fe0ef jal ra,c0043300 + c0044fbe: b3cd j c0044da0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1247 return re_parse_error(s, "invalid group"); - c0044df0: 00022597 auipc a1,0x22 - c0044df4: 44858593 addi a1,a1,1096 # c0067238 - c0044df8: b30d j c0044b1a + c0044fc0: 00022597 auipc a1,0x22 + c0044fc4: 4d858593 addi a1,a1,1240 # c0067498 + c0044fc8: b30d j c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1251 p++; - c0044dfa: 0405 addi s0,s0,1 + c0044fca: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1253 dbuf_putc(&s->group_names, 0); - c0044dfc: 4581 li a1,0 - c0044dfe: 070d0513 addi a0,s10,112 + c0044fcc: 4581 li a1,0 + c0044fce: 070d0513 addi a0,s10,112 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1251 p++; - c0044e02: f022 sd s0,32(sp) + c0044fd2: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1253 dbuf_putc(&s->group_names, 0); - c0044e04: 73f020ef jal ra,c0047d42 - c0044e08: bf59 j c0044d9e + c0044fd4: 73f020ef jal ra,c0047f12 + c0044fd8: bf59 j c0044f6e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1276 switch(p[1]) { - c0044e0a: 00144703 lbu a4,1(s0) - c0044e0e: 04200693 li a3,66 - c0044e12: 06d70963 beq a4,a3,c0044e84 - c0044e16: 04e6e063 bltu a3,a4,c0044e56 - c0044e1a: 03000693 li a3,48 - c0044e1e: 16d70363 beq a4,a3,c0044f84 - c0044e22: fcf7071b addiw a4,a4,-49 - c0044e26: 0ff77713 zext.b a4,a4 - c0044e2a: 46a1 li a3,8 - c0044e2c: c2e6eae3 bltu a3,a4,c0044a60 + c0044fda: 00144703 lbu a4,1(s0) + c0044fde: 04200693 li a3,66 + c0044fe2: 06d70963 beq a4,a3,c0045054 + c0044fe6: 04e6e063 bltu a3,a4,c0045026 + c0044fea: 03000693 li a3,48 + c0044fee: 16d70363 beq a4,a3,c0045154 + c0044ff2: fcf7071b addiw a4,a4,-49 + c0044ff6: 0ff77713 zext.b a4,a4 + c0044ffa: 46a1 li a3,8 + c0044ffc: c2e6eae3 bltu a3,a4,c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1341 const uint8_t *q = ++p; - c0044e30: 00140993 addi s3,s0,1 + c0045000: 00140993 addi s3,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1343 c = parse_digits(&p, FALSE); - c0044e34: 4581 li a1,0 - c0044e36: 1008 addi a0,sp,32 + c0045004: 4581 li a1,0 + c0045006: 1008 addi a0,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1341 const uint8_t *q = ++p; - c0044e38: f04e sd s3,32(sp) + c0045008: f04e sd s3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1343 c = parse_digits(&p, FALSE); - c0044e3a: a86fe0ef jal ra,c00430c0 - c0044e3e: 84aa mv s1,a0 + c004500a: a86fe0ef jal ra,c0043290 + c004500e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1344 if (c < 0 || (c >= s->capture_count && c >= re_count_captures(s))) { - c0044e40: 1e055063 bgez a0,c0045020 + c0045010: 1e055063 bgez a0,c00451f0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1345 if (!s->is_utf16) { - c0044e44: 04cd2483 lw s1,76(s10) - c0044e48: 1e048663 beqz s1,c0045034 + c0045014: 04cd2483 lw s1,76(s10) + c0045018: 1e048663 beqz s1,c0045204 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1363 return re_parse_error(s, "back reference out of range in regular expression"); - c0044e4c: 00022597 auipc a1,0x22 - c0044e50: 47458593 addi a1,a1,1140 # c00672c0 - c0044e54: b1d9 j c0044b1a - c0044e56: 06200693 li a3,98 - c0044e5a: 08d70063 beq a4,a3,c0044eda - c0044e5e: 06b00693 li a3,107 - c0044e62: bed71fe3 bne a4,a3,c0044a60 + c004501c: 00022597 auipc a1,0x22 + c0045020: 50458593 addi a1,a1,1284 # c0067520 + c0045024: b1d9 j c0044cea + c0045026: 06200693 li a3,98 + c004502a: 08d70063 beq a4,a3,c00450aa + c004502e: 06b00693 li a3,107 + c0045032: bed71fe3 bne a4,a3,c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1287 p1 = p; - c0044e66: f0a2 sd s0,96(sp) + c0045036: f0a2 sd s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1288 if (p1[2] != '<') { - c0044e68: 00244683 lbu a3,2(s0) - c0044e6c: 03c00713 li a4,60 - c0044e70: 08e68263 beq a3,a4,c0044ef4 + c0045038: 00244683 lbu a3,2(s0) + c004503c: 03c00713 li a4,60 + c0045040: 08e68263 beq a3,a4,c00450c4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1292 if (s->is_utf16 || re_has_named_captures(s)) - c0044e74: 04cd2703 lw a4,76(s10) - c0044e78: c33d beqz a4,c0044ede + c0045044: 04cd2703 lw a4,76(s10) + c0045048: c33d beqz a4,c00450ae /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1293 return re_parse_error(s, "expecting group name"); - c0044e7a: 00022597 auipc a1,0x22 - c0044e7e: 3e658593 addi a1,a1,998 # c0067260 - c0044e82: b961 j c0044b1a + c004504a: 00022597 auipc a1,0x22 + c004504e: 47658593 addi a1,a1,1142 # c00674c0 + c0045052: b961 j c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1279 re_emit_op(s, REOP_word_boundary + (p[1] != 'b')); - c0044e84: 45c9 li a1,18 + c0045054: 45c9 li a1,18 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044e86: 856a mv a0,s10 - c0044e88: 6bb020ef jal ra,c0047d42 + c0045056: 856a mv a0,s10 + c0045058: 6bb020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1280 p += 2; - c0044e8c: 7702 ld a4,32(sp) - c0044e8e: 0709 addi a4,a4,2 - c0044e90: f03a sd a4,32(sp) + c004505c: 7702 ld a4,32(sp) + c004505e: 0709 addi a4,a4,2 + c0045060: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1619 s->buf_ptr = p; - c0044e92: 7702 ld a4,32(sp) - c0044e94: 02ed3823 sd a4,48(s10) + c0045062: 7702 ld a4,32(sp) + c0045064: 02ed3823 sd a4,48(s10) re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1642 if (is_backward_dir) { - c0044e98: b6090be3 beqz s2,c0044a0e + c0045068: b6090be3 beqz s2,c0044bde /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1645 end = s->byte_code.size; - c0044e9c: 008d3403 ld s0,8(s10) + c004506c: 008d3403 ld s0,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1647 if (dbuf_realloc(&s->byte_code, end + term_size)) - c0044ea0: 856a mv a0,s10 + c0045070: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1646 term_size = end - term_start; - c0044ea2: 41640b33 sub s6,s0,s6 + c0045072: 41640b33 sub s6,s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1647 if (dbuf_realloc(&s->byte_code, end + term_size)) - c0044ea6: 016405b3 add a1,s0,s6 - c0044eaa: 565020ef jal ra,c0047c0e - c0044eae: d0051ce3 bnez a0,c0044bc6 + c0045076: 016405b3 add a1,s0,s6 + c004507a: 565020ef jal ra,c0047dde + c004507e: d0051ce3 bnez a0,c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1649 memmove(s->byte_code.buf + start + term_size, - c0044eb2: 000d3703 ld a4,0(s10) - c0044eb6: 016b8533 add a0,s7,s6 - c0044eba: 41740633 sub a2,s0,s7 - c0044ebe: 017705b3 add a1,a4,s7 - c0044ec2: 953a add a0,a0,a4 - c0044ec4: 16b110ef jal ra,c005682e + c0045082: 000d3703 ld a4,0(s10) + c0045086: 016b8533 add a0,s7,s6 + c004508a: 41740633 sub a2,s0,s7 + c004508e: 017705b3 add a1,a4,s7 + c0045092: 953a add a0,a0,a4 + c0045094: 16b110ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1652 memcpy(s->byte_code.buf + start, s->byte_code.buf + end, - c0044ec8: 000d3503 ld a0,0(s10) - c0044ecc: 865a mv a2,s6 - c0044ece: 008505b3 add a1,a0,s0 - c0044ed2: 955e add a0,a0,s7 - c0044ed4: 307110ef jal ra,c00569da - c0044ed8: be05 j c0044a08 + c0045098: 000d3503 ld a0,0(s10) + c004509c: 865a mv a2,s6 + c004509e: 008505b3 add a1,a0,s0 + c00450a2: 955e add a0,a0,s7 + c00450a4: 307110ef jal ra,c0056baa + c00450a8: be05 j c0044bd8 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1279 re_emit_op(s, REOP_word_boundary + (p[1] != 'b')); - c0044eda: 45c5 li a1,17 - c0044edc: b76d j c0044e86 + c00450aa: 45c5 li a1,17 + c00450ac: b76d j c0045056 re_has_named_captures(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1106 if (s->has_named_captures < 0) - c0044ede: 060d2703 lw a4,96(s10) - c0044ee2: 00075563 bgez a4,c0044eec + c00450ae: 060d2703 lw a4,96(s10) + c00450b2: 00075563 bgez a4,c00450bc /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1107 re_count_captures(s); - c0044ee6: 856a mv a0,s10 - c0044ee8: acbff0ef jal ra,c00449b2 + c00450b6: 856a mv a0,s10 + c00450b8: acbff0ef jal ra,c0044b82 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1292 if (s->is_utf16 || re_has_named_captures(s)) - c0044eec: 060d2703 lw a4,96(s10) - c0044ef0: f749 bnez a4,c0044e7a - c0044ef2: b6bd j c0044a60 + c00450bc: 060d2703 lw a4,96(s10) + c00450c0: f749 bnez a4,c004504a + c00450c2: b6bd j c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1297 p1 += 3; - c0044ef4: 040d addi s0,s0,3 - c0044ef6: f0a2 sd s0,96(sp) + c00450c4: 040d addi s0,s0,3 + c00450c6: f0a2 sd s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1298 if (re_parse_group_name(s->u.tmp_buf, sizeof(s->u.tmp_buf), - c0044ef8: 0a0d0413 addi s0,s10,160 - c0044efc: 108c addi a1,sp,96 - c0044efe: 8522 mv a0,s0 - c0044f00: 83fff0ef jal ra,c004473e - c0044f04: c10d beqz a0,c0044f26 + c00450c8: 0a0d0413 addi s0,s10,160 + c00450cc: 108c addi a1,sp,96 + c00450ce: 8522 mv a0,s0 + c00450d0: 83fff0ef jal ra,c004490e + c00450d4: c10d beqz a0,c00450f6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1300 if (s->is_utf16 || re_has_named_captures(s)) - c0044f06: 04cd2703 lw a4,76(s10) - c0044f0a: e4071ee3 bnez a4,c0044d66 + c00450d6: 04cd2703 lw a4,76(s10) + c00450da: e4071ee3 bnez a4,c0044f36 re_has_named_captures(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1106 if (s->has_named_captures < 0) - c0044f0e: 060d2703 lw a4,96(s10) - c0044f12: 00075563 bgez a4,c0044f1c + c00450de: 060d2703 lw a4,96(s10) + c00450e2: 00075563 bgez a4,c00450ec /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1107 re_count_captures(s); - c0044f16: 856a mv a0,s10 - c0044f18: a9bff0ef jal ra,c00449b2 + c00450e6: 856a mv a0,s10 + c00450e8: a9bff0ef jal ra,c0044b82 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1300 if (s->is_utf16 || re_has_named_captures(s)) - c0044f1c: 060d2703 lw a4,96(s10) - c0044f20: e40713e3 bnez a4,c0044d66 - c0044f24: be35 j c0044a60 + c00450ec: 060d2703 lw a4,96(s10) + c00450f0: e40713e3 bnez a4,c0044f36 + c00450f4: be35 j c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1305 c = find_group_name(s, s->u.tmp_buf); - c0044f26: 85a2 mv a1,s0 - c0044f28: 856a mv a0,s10 - c0044f2a: a7afe0ef jal ra,c00431a4 - c0044f2e: 84aa mv s1,a0 + c00450f6: 85a2 mv a1,s0 + c00450f8: 856a mv a0,s10 + c00450fa: a7afe0ef jal ra,c0043374 + c00450fe: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1306 if (c < 0) { - c0044f30: 02055d63 bgez a0,c0044f6a + c0045100: 02055d63 bgez a0,c004513a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1309 c = re_parse_captures(s, &dummy_res, s->u.tmp_buf); - c0044f34: 8622 mv a2,s0 - c0044f36: 008c addi a1,sp,64 - c0044f38: 856a mv a0,s10 - c0044f3a: 98dff0ef jal ra,c00448c6 - c0044f3e: 84aa mv s1,a0 + c0045104: 8622 mv a2,s0 + c0045106: 008c addi a1,sp,64 + c0045108: 856a mv a0,s10 + c004510a: 98dff0ef jal ra,c0044a96 + c004510e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1310 if (c < 0) { - c0044f40: 02055563 bgez a0,c0044f6a + c0045110: 02055563 bgez a0,c004513a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1311 if (s->is_utf16 || re_has_named_captures(s)) - c0044f44: 04cd2703 lw a4,76(s10) - c0044f48: c711 beqz a4,c0044f54 + c0045114: 04cd2703 lw a4,76(s10) + c0045118: c711 beqz a4,c0045124 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1312 return re_parse_error(s, "group name not defined"); - c0044f4a: 00022597 auipc a1,0x22 - c0044f4e: 32e58593 addi a1,a1,814 # c0067278 - c0044f52: b6e1 j c0044b1a + c004511a: 00022597 auipc a1,0x22 + c004511e: 3be58593 addi a1,a1,958 # c00674d8 + c0045122: b6e1 j c0044cea re_has_named_captures(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1106 if (s->has_named_captures < 0) - c0044f54: 060d2703 lw a4,96(s10) - c0044f58: 00075563 bgez a4,c0044f62 + c0045124: 060d2703 lw a4,96(s10) + c0045128: 00075563 bgez a4,c0045132 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1107 re_count_captures(s); - c0044f5c: 856a mv a0,s10 - c0044f5e: a55ff0ef jal ra,c00449b2 + c004512c: 856a mv a0,s10 + c004512e: a55ff0ef jal ra,c0044b82 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1311 if (s->is_utf16 || re_has_named_captures(s)) - c0044f62: 060d2703 lw a4,96(s10) - c0044f66: f375 bnez a4,c0044f4a - c0044f68: bce5 j c0044a60 + c0045132: 060d2703 lw a4,96(s10) + c0045136: f375 bnez a4,c004511a + c0045138: bce5 j c0044c30 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1317 p = p1; - c0044f6a: 7706 ld a4,96(sp) - c0044f6c: f03a sd a4,32(sp) + c004513a: 7706 ld a4,96(sp) + c004513c: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1368 re_emit_op_u8(s, REOP_back_reference + is_backward_dir, c); - c0044f6e: 6582 ld a1,0(sp) - c0044f70: 0004861b sext.w a2,s1 - c0044f74: 856a mv a0,s10 + c004513e: 6582 ld a1,0(sp) + c0045140: 0004861b sext.w a2,s1 + c0045144: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1366 last_atom_start = s->byte_code.size; - c0044f76: 008d2403 lw s0,8(s10) + c0045146: 008d2403 lw s0,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1367 last_capture_count = s->capture_count; - c0044f7a: 058d2a03 lw s4,88(s10) + c004514a: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1368 re_emit_op_u8(s, REOP_back_reference + is_backward_dir, c); - c0044f7e: 9b2fe0ef jal ra,c0043130 + c004514e: 9b2fe0ef jal ra,c0043300 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1370 break; - c0044f82: b9f5 j c0044c7e + c0045152: b9f5 j c0044e4e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1323 if (s->is_utf16) { - c0044f84: 04cd2483 lw s1,76(s10) + c0045154: 04cd2483 lw s1,76(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1321 p += 2; - c0044f88: 00240713 addi a4,s0,2 - c0044f8c: f03a sd a4,32(sp) + c0045158: 00240713 addi a4,s0,2 + c004515c: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1323 if (s->is_utf16) { - c0044f8e: c4b1 beqz s1,c0044fda + c004515e: c4b1 beqz s1,c00451aa is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 return c >= '0' && c <= '9'; - c0044f90: 00244703 lbu a4,2(s0) + c0045160: 00244703 lbu a4,2(s0) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1324 if (is_digit(*p)) { - c0044f94: 46a5 li a3,9 + c0045164: 46a5 li a3,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1322 c = 0; - c0044f96: 4481 li s1,0 + c0045166: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1324 if (is_digit(*p)) { - c0044f98: fd07071b addiw a4,a4,-48 + c0045168: fd07071b addiw a4,a4,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1325 return re_parse_error(s, "invalid decimal escape in regular expression"); - c0044f9c: 00022597 auipc a1,0x22 - c0044fa0: 2f458593 addi a1,a1,756 # c0067290 + c004516c: 00022597 auipc a1,0x22 + c0045170: 38458593 addi a1,a1,900 # c00674f0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1324 if (is_digit(*p)) { - c0044fa4: b6e6fbe3 bgeu a3,a4,c0044b1a + c0045174: b6e6fbe3 bgeu a3,a4,c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1396 last_atom_start = s->byte_code.size; - c0044fa8: 008d2403 lw s0,8(s10) + c0045178: 008d2403 lw s0,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1397 last_capture_count = s->capture_count; - c0044fac: 058d2a03 lw s4,88(s10) + c004517c: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1398 if (is_backward_dir) - c0044fb0: 00090663 beqz s2,c0044fbc + c0045180: 00090663 beqz s2,c004518c re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0044fb4: 45ed li a1,27 - c0044fb6: 856a mv a0,s10 - c0044fb8: 58b020ef jal ra,c0047d42 + c0045184: 45ed li a1,27 + c0045186: 856a mv a0,s10 + c0045188: 58b020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1400 if (c >= CLASS_RANGE_BASE) { - c0044fbc: 40000737 lui a4,0x40000 - c0044fc0: 22e4cf63 blt s1,a4,c00451fe + c004518c: 40000737 lui a4,0x40000 + c0045190: 22e4cf63 blt s1,a4,c00453ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1403 ret = re_emit_range(s, cr); - c0044fc4: 108c addi a1,sp,96 - c0044fc6: 856a mv a0,s10 - c0044fc8: 824ff0ef jal ra,c0043fec - c0044fcc: 84aa mv s1,a0 + c0045194: 108c addi a1,sp,96 + c0045196: 856a mv a0,s10 + c0045198: 824ff0ef jal ra,c00441bc + c004519c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1404 cr_free(cr); - c0044fce: 1088 addi a0,sp,96 - c0044fd0: 02f010ef jal ra,c00467fe + c004519e: 1088 addi a0,sp,96 + c00451a0: 02f010ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1405 if (ret) - c0044fd4: b20485e3 beqz s1,c0044afe - c0044fd8: b6fd j c0044bc6 + c00451a4: b20485e3 beqz s1,c0044cce + c00451a8: b6fd j c0044d96 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1329 if (*p >= '0' && *p <= '7') { - c0044fda: 00244703 lbu a4,2(s0) - c0044fde: 469d li a3,7 - c0044fe0: fd07071b addiw a4,a4,-48 - c0044fe4: 0ff77713 zext.b a4,a4 - c0044fe8: fce6e0e3 bltu a3,a4,c0044fa8 + c00451aa: 00244703 lbu a4,2(s0) + c00451ae: 469d li a3,7 + c00451b0: fd07071b addiw a4,a4,-48 + c00451b4: 0ff77713 zext.b a4,a4 + c00451b8: fce6e0e3 bltu a3,a4,c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1330 c = *p++ - '0'; - c0044fec: 00340713 addi a4,s0,3 - c0044ff0: f03a sd a4,32(sp) + c00451bc: 00340713 addi a4,s0,3 + c00451c0: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1331 if (*p >= '0' && *p <= '7') { - c0044ff2: 00344703 lbu a4,3(s0) + c00451c2: 00344703 lbu a4,3(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1330 c = *p++ - '0'; - c0044ff6: 00244503 lbu a0,2(s0) + c00451c6: 00244503 lbu a0,2(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1331 if (*p >= '0' && *p <= '7') { - c0044ffa: fd07071b addiw a4,a4,-48 - c0044ffe: 0ff77713 zext.b a4,a4 + c00451ca: fd07071b addiw a4,a4,-48 + c00451ce: 0ff77713 zext.b a4,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1330 c = *p++ - '0'; - c0045002: fd05049b addiw s1,a0,-48 + c00451d2: fd05049b addiw s1,a0,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1331 if (*p >= '0' && *p <= '7') { - c0045006: fae6e1e3 bltu a3,a4,c0044fa8 + c00451d6: fae6e1e3 bltu a3,a4,c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1332 c = (c << 3) + *p++ - '0'; - c004500a: 00440713 addi a4,s0,4 - c004500e: f03a sd a4,32(sp) - c0045010: 0034951b slliw a0,s1,0x3 - c0045014: 00344483 lbu s1,3(s0) + c00451da: 00440713 addi a4,s0,4 + c00451de: f03a sd a4,32(sp) + c00451e0: 0034951b slliw a0,s1,0x3 + c00451e4: 00344483 lbu s1,3(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1355 c = (c << 3) + *p++ - '0'; - c0045018: fd04849b addiw s1,s1,-48 - c004501c: 9ca9 addw s1,s1,a0 - c004501e: b769 j c0044fa8 + c00451e8: fd04849b addiw s1,s1,-48 + c00451ec: 9ca9 addw s1,s1,a0 + c00451ee: b769 j c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1344 if (c < 0 || (c >= s->capture_count && c >= re_count_captures(s))) { - c0045020: 058d2703 lw a4,88(s10) - c0045024: f4e545e3 blt a0,a4,c0044f6e - c0045028: 856a mv a0,s10 - c004502a: 989ff0ef jal ra,c00449b2 - c004502e: e0a4dbe3 bge s1,a0,c0044e44 - c0045032: bf35 j c0044f6e + c00451f0: 058d2703 lw a4,88(s10) + c00451f4: f4e545e3 blt a0,a4,c004513e + c00451f8: 856a mv a0,s10 + c00451fa: 989ff0ef jal ra,c0044b82 + c00451fe: e0a4dbe3 bge s1,a0,c0045014 + c0045202: bf35 j c004513e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1347 p = q; - c0045034: f04e sd s3,32(sp) + c0045204: f04e sd s3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1348 if (*p <= '7') { - c0045036: 00144703 lbu a4,1(s0) - c004503a: 03700693 li a3,55 - c004503e: 06e6e163 bltu a3,a4,c00450a0 + c0045206: 00144703 lbu a4,1(s0) + c004520a: 03700693 li a3,55 + c004520e: 06e6e163 bltu a3,a4,c0045270 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1350 if (*p <= '3') - c0045042: 03300693 li a3,51 - c0045046: 00e6e963 bltu a3,a4,c0045058 + c0045212: 03300693 li a3,51 + c0045216: 00e6e963 bltu a3,a4,c0045228 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1351 c = *p++ - '0'; - c004504a: 00240713 addi a4,s0,2 - c004504e: f03a sd a4,32(sp) - c0045050: 00144483 lbu s1,1(s0) - c0045054: fd04849b addiw s1,s1,-48 + c004521a: 00240713 addi a4,s0,2 + c004521e: f03a sd a4,32(sp) + c0045220: 00144483 lbu s1,1(s0) + c0045224: fd04849b addiw s1,s1,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1352 if (*p >= '0' && *p <= '7') { - c0045058: 7702 ld a4,32(sp) - c004505a: 461d li a2,7 - c004505c: 00074683 lbu a3,0(a4) # 40000000 <__clzdi2-0x80000000> - c0045060: fd06869b addiw a3,a3,-48 - c0045064: 0ff6f693 zext.b a3,a3 - c0045068: f4d660e3 bltu a2,a3,c0044fa8 + c0045228: 7702 ld a4,32(sp) + c004522a: 461d li a2,7 + c004522c: 00074683 lbu a3,0(a4) # 40000000 <__clzdi2-0x80000000> + c0045230: fd06869b addiw a3,a3,-48 + c0045234: 0ff6f693 zext.b a3,a3 + c0045238: f4d660e3 bltu a2,a3,c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1353 c = (c << 3) + *p++ - '0'; - c004506c: 00170693 addi a3,a4,1 - c0045070: f036 sd a3,32(sp) + c004523c: 00170693 addi a3,a4,1 + c0045240: f036 sd a3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1354 if (*p >= '0' && *p <= '7') { - c0045072: 00174683 lbu a3,1(a4) + c0045242: 00174683 lbu a3,1(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1353 c = (c << 3) + *p++ - '0'; - c0045076: 00074503 lbu a0,0(a4) - c004507a: 0034949b slliw s1,s1,0x3 + c0045246: 00074503 lbu a0,0(a4) + c004524a: 0034949b slliw s1,s1,0x3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1354 if (*p >= '0' && *p <= '7') { - c004507e: fd06869b addiw a3,a3,-48 + c004524e: fd06869b addiw a3,a3,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1353 c = (c << 3) + *p++ - '0'; - c0045082: fd05051b addiw a0,a0,-48 + c0045252: fd05051b addiw a0,a0,-48 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1354 if (*p >= '0' && *p <= '7') { - c0045086: 0ff6f693 zext.b a3,a3 + c0045256: 0ff6f693 zext.b a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1353 c = (c << 3) + *p++ - '0'; - c004508a: 9ca9 addw s1,s1,a0 + c004525a: 9ca9 addw s1,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1354 if (*p >= '0' && *p <= '7') { - c004508c: f0d66ee3 bltu a2,a3,c0044fa8 + c004525c: f0d66ee3 bltu a2,a3,c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1355 c = (c << 3) + *p++ - '0'; - c0045090: 00270693 addi a3,a4,2 - c0045094: f036 sd a3,32(sp) - c0045096: 0034951b slliw a0,s1,0x3 - c004509a: 00174483 lbu s1,1(a4) - c004509e: bfad j c0045018 + c0045260: 00270693 addi a3,a4,2 + c0045264: f036 sd a3,32(sp) + c0045266: 0034951b slliw a0,s1,0x3 + c004526a: 00174483 lbu s1,1(a4) + c004526e: bfad j c00451e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1359 c = *p++; - c00450a0: 00240713 addi a4,s0,2 - c00450a4: f03a sd a4,32(sp) - c00450a6: 00144483 lbu s1,1(s0) - c00450aa: bdfd j c0044fa8 + c0045270: 00240713 addi a4,s0,2 + c0045274: f03a sd a4,32(sp) + c0045276: 00144483 lbu s1,1(s0) + c004527a: bdfd j c0045178 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1377 last_capture_count = s->capture_count; - c00450ac: 058d2a03 lw s4,88(s10) + c004527c: 058d2a03 lw s4,88(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1376 last_atom_start = s->byte_code.size; - c00450b0: 000b041b sext.w s0,s6 + c0045280: 000b041b sext.w s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1378 if (is_backward_dir) - c00450b4: 00090663 beqz s2,c00450c0 + c0045284: 00090663 beqz s2,c0045290 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00450b8: 45ed li a1,27 - c00450ba: 856a mv a0,s10 - c00450bc: 487020ef jal ra,c0047d42 + c0045288: 45ed li a1,27 + c004528a: 856a mv a0,s10 + c004528c: 487020ef jal ra,c0047f12 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:811 cr_init(cr, s->opaque, lre_realloc); - c00450c0: 068d3583 ld a1,104(s10) - c00450c4: fffc6617 auipc a2,0xfffc6 - c00450c8: e5c60613 addi a2,a2,-420 # c000af20 - c00450cc: 0088 addi a0,sp,64 - c00450ce: 718010ef jal ra,c00467e6 + c0045290: 068d3583 ld a1,104(s10) + c0045294: fffc6617 auipc a2,0xfffc6 + c0045298: d7a60613 addi a2,a2,-646 # c000b00e + c004529c: 0088 addi a0,sp,64 + c004529e: 718010ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:812 p = *pp; - c00450d2: 7702 ld a4,32(sp) + c00452a2: 7702 ld a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:814 invert = FALSE; - c00450d4: 4981 li s3,0 + c00452a4: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:813 p++; /* skip '[' */ - c00450d6: 00170693 addi a3,a4,1 - c00450da: f436 sd a3,40(sp) + c00452a6: 00170693 addi a3,a4,1 + c00452aa: f436 sd a3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:815 if (*p == '^') { - c00450dc: 00174603 lbu a2,1(a4) - c00450e0: 05e00693 li a3,94 - c00450e4: 00d61563 bne a2,a3,c00450ee + c00452ac: 00174603 lbu a2,1(a4) + c00452b0: 05e00693 li a3,94 + c00452b4: 00d61563 bne a2,a3,c00452be /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:816 p++; - c00450e8: 0709 addi a4,a4,2 - c00450ea: f43a sd a4,40(sp) + c00452b8: 0709 addi a4,a4,2 + c00452ba: f43a sd a4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:817 invert = TRUE; - c00450ec: 4985 li s3,1 + c00452bc: 4985 li s3,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:820 if (*p == ']') - c00450ee: 05d00a93 li s5,93 + c00452be: 05d00a93 li s5,93 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:825 if (*p == '-' && p[1] != ']') { - c00450f2: 02d00d93 li s11,45 + c00452c2: 02d00d93 li s11,45 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:856 if (c1 >= CLASS_RANGE_BASE) { - c00450f6: 400004b7 lui s1,0x40000 + c00452c6: 400004b7 lui s1,0x40000 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:820 if (*p == ']') - c00450fa: 7722 ld a4,40(sp) - c00450fc: 00074703 lbu a4,0(a4) - c0045100: 0b570e63 beq a4,s5,c00451bc + c00452ca: 7722 ld a4,40(sp) + c00452cc: 00074703 lbu a4,0(a4) + c00452d0: 0b570e63 beq a4,s5,c004538c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:822 c1 = get_class_atom(s, cr1, &p, TRUE); - c0045104: 4685 li a3,1 - c0045106: 1030 addi a2,sp,40 - c0045108: 108c addi a1,sp,96 - c004510a: 856a mv a0,s10 - c004510c: 9f2ff0ef jal ra,c00442fe - c0045110: 00050c1b sext.w s8,a0 + c00452d4: 4685 li a3,1 + c00452d6: 1030 addi a2,sp,40 + c00452d8: 108c addi a1,sp,96 + c00452da: 856a mv a0,s10 + c00452dc: 9f2ff0ef jal ra,c00444ce + c00452e0: 00050c1b sext.w s8,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:823 if ((int)c1 < 0) - c0045114: 0a054e63 bltz a0,c00451d0 + c00452e4: 0a054e63 bltz a0,c00453a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:825 if (*p == '-' && p[1] != ']') { - c0045118: 76a2 ld a3,40(sp) - c004511a: 0006c603 lbu a2,0(a3) - c004511e: 05b61a63 bne a2,s11,c0045172 - c0045122: 0016c603 lbu a2,1(a3) - c0045126: 05560663 beq a2,s5,c0045172 + c00452e8: 76a2 ld a3,40(sp) + c00452ea: 0006c603 lbu a2,0(a3) + c00452ee: 05b61a63 bne a2,s11,c0045342 + c00452f2: 0016c603 lbu a2,1(a3) + c00452f6: 05560663 beq a2,s5,c0045342 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:826 const uint8_t *p0 = p + 1; - c004512a: 0685 addi a3,a3,1 - c004512c: f836 sd a3,48(sp) + c00452fa: 0685 addi a3,a3,1 + c00452fc: f836 sd a3,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:827 if (c1 >= CLASS_RANGE_BASE) { - c004512e: 029c6063 bltu s8,s1,c004514e + c00452fe: 029c6063 bltu s8,s1,c004531e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:828 if (s->is_utf16) { - c0045132: 04cd2683 lw a3,76(s10) - c0045136: ce95 beqz a3,c0045172 + c0045302: 04cd2683 lw a3,76(s10) + c0045306: ce95 beqz a3,c0045342 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:829 cr_free(cr1); - c0045138: 1088 addi a0,sp,96 - c004513a: 6c4010ef jal ra,c00467fe + c0045308: 1088 addi a0,sp,96 + c004530a: 6c4010ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:849 re_parse_error(s, "invalid class range"); - c004513e: 00022597 auipc a1,0x22 - c0045142: 1ba58593 addi a1,a1,442 # c00672f8 + c004530e: 00022597 auipc a1,0x22 + c0045312: 24a58593 addi a1,a1,586 # c0067558 re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c0045146: 856a mv a0,s10 - c0045148: 992fe0ef jal ra,c00432da - c004514c: a051 j c00451d0 + c0045316: 856a mv a0,s10 + c0045318: 992fe0ef jal ra,c00434aa + c004531c: a051 j c00453a0 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:835 c2 = get_class_atom(s, cr1, &p0, TRUE); - c004514e: 4685 li a3,1 - c0045150: 1810 addi a2,sp,48 - c0045152: 108c addi a1,sp,96 - c0045154: 856a mv a0,s10 - c0045156: 9a8ff0ef jal ra,c00442fe - c004515a: 0005069b sext.w a3,a0 + c004531e: 4685 li a3,1 + c0045320: 1810 addi a2,sp,48 + c0045322: 108c addi a1,sp,96 + c0045324: 856a mv a0,s10 + c0045326: 9a8ff0ef jal ra,c00444ce + c004532a: 0005069b sext.w a3,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:836 if ((int)c2 < 0) - c004515e: 06054963 bltz a0,c00451d0 + c004532e: 06054963 bltz a0,c00453a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:838 if (c2 >= CLASS_RANGE_BASE) { - c0045162: 0296ea63 bltu a3,s1,c0045196 + c0045332: 0296ea63 bltu a3,s1,c0045366 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:839 cr_free(cr1); - c0045166: 1088 addi a0,sp,96 - c0045168: 696010ef jal ra,c00467fe + c0045336: 1088 addi a0,sp,96 + c0045338: 696010ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:840 if (s->is_utf16) { - c004516c: 04cd2683 lw a3,76(s10) - c0045170: f6f9 bnez a3,c004513e + c004533c: 04cd2683 lw a3,76(s10) + c0045340: f6f9 bnez a3,c004530e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:856 if (c1 >= CLASS_RANGE_BASE) { - c0045172: 049c6063 bltu s8,s1,c00451b2 + c0045342: 049c6063 bltu s8,s1,c0045382 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:858 ret = cr_union1(cr, cr1->points, cr1->len); - c0045176: 5606 lw a2,96(sp) - c0045178: 75a6 ld a1,104(sp) - c004517a: 0088 addi a0,sp,64 - c004517c: 38d010ef jal ra,c0046d08 - c0045180: 8c2a mv s8,a0 + c0045346: 5606 lw a2,96(sp) + c0045348: 75a6 ld a1,104(sp) + c004534a: 0088 addi a0,sp,64 + c004534c: 38d010ef jal ra,c0046ed8 + c0045350: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:859 cr_free(cr1); - c0045182: 1088 addi a0,sp,96 - c0045184: 67a010ef jal ra,c00467fe + c0045352: 1088 addi a0,sp,96 + c0045354: 67a010ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:860 if (ret) - c0045188: f60c09e3 beqz s8,c00450fa + c0045358: f60c09e3 beqz s8,c00452ca re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c004518c: 00019597 auipc a1,0x19 - c0045190: cb458593 addi a1,a1,-844 # c005de40 - c0045194: bf4d j c0045146 + c004535c: 00019597 auipc a1,0x19 + c0045360: d1458593 addi a1,a1,-748 # c005e070 + c0045364: bf4d j c0045316 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:846 p = p0; - c0045196: 7642 ld a2,48(sp) - c0045198: f432 sd a2,40(sp) + c0045366: 7642 ld a2,48(sp) + c0045368: f432 sd a2,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:847 if (c2 < c1) { - c004519a: fb86e2e3 bltu a3,s8,c004513e + c004536a: fb86e2e3 bltu a3,s8,c004530e cr_union_interval(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:96 @@ -188526,1506 +188724,1506 @@ static inline int cr_union_interval(CharRange *cr, uint32_t c1, uint32_t c2) uint32_t b_pt[2]; b_pt[0] = c1; b_pt[1] = c2 + 1; - c004519e: 2685 addiw a3,a3,1 + c004536e: 2685 addiw a3,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:95 b_pt[0] = c1; - c00451a0: dc62 sw s8,56(sp) + c0045370: dc62 sw s8,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:96 b_pt[1] = c2 + 1; - c00451a2: de36 sw a3,60(sp) + c0045372: de36 sw a3,60(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:97 return cr_union1(cr, b_pt, 2); - c00451a4: 4609 li a2,2 - c00451a6: 182c addi a1,sp,56 - c00451a8: 0088 addi a0,sp,64 - c00451aa: 35f010ef jal ra,c0046d08 + c0045374: 4609 li a2,2 + c0045376: 182c addi a1,sp,56 + c0045378: 0088 addi a0,sp,64 + c004537a: 35f010ef jal ra,c0046ed8 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:863 if (cr_union_interval(cr, c1, c1)) - c00451ae: d531 beqz a0,c00450fa - c00451b0: bff1 j c004518c + c004537e: d531 beqz a0,c00452ca + c0045380: bff1 j c004535c cr_union_interval(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:96 b_pt[1] = c2 + 1; - c00451b2: 001c071b addiw a4,s8,1 + c0045382: 001c071b addiw a4,s8,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:95 b_pt[0] = c1; - c00451b6: dc62 sw s8,56(sp) + c0045386: dc62 sw s8,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:96 b_pt[1] = c2 + 1; - c00451b8: de3a sw a4,60(sp) - c00451ba: b7ed j c00451a4 + c0045388: de3a sw a4,60(sp) + c004538a: b7ed j c0045374 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:868 if (s->ignore_case) { - c00451bc: 050d2703 lw a4,80(s10) - c00451c0: ef01 bnez a4,c00451d8 + c004538c: 050d2703 lw a4,80(s10) + c0045390: ef01 bnez a4,c00453a8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:872 if (invert) { - c00451c2: 02099263 bnez s3,c00451e6 + c0045392: 02099263 bnez s3,c00453b6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:876 if (re_emit_range(s, cr)) - c00451c6: 008c addi a1,sp,64 - c00451c8: 856a mv a0,s10 - c00451ca: e23fe0ef jal ra,c0043fec - c00451ce: c10d beqz a0,c00451f0 + c0045396: 008c addi a1,sp,64 + c0045398: 856a mv a0,s10 + c004539a: e23fe0ef jal ra,c00441bc + c004539e: c10d beqz a0,c00453c0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:885 cr_free(cr); - c00451d0: 0088 addi a0,sp,64 - c00451d2: 62c010ef jal ra,c00467fe + c00453a0: 0088 addi a0,sp,64 + c00453a2: 62c010ef jal ra,c00469ce re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1640 if (ret) - c00451d6: bac5 j c0044bc6 + c00453a6: bac5 j c0044d96 re_parse_char_class(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:869 if (cr_regexp_canonicalize(cr, s->is_utf16)) - c00451d8: 04cd2583 lw a1,76(s10) - c00451dc: 0088 addi a0,sp,64 - c00451de: 2fe020ef jal ra,c00474dc - c00451e2: d165 beqz a0,c00451c2 - c00451e4: b765 j c004518c + c00453a8: 04cd2583 lw a1,76(s10) + c00453ac: 0088 addi a0,sp,64 + c00453ae: 2fe020ef jal ra,c00476ac + c00453b2: d165 beqz a0,c0045392 + c00453b4: b765 j c004535c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:873 if (cr_invert(cr)) - c00451e6: 0088 addi a0,sp,64 - c00451e8: 363010ef jal ra,c0046d4a - c00451ec: dd69 beqz a0,c00451c6 - c00451ee: bf79 j c004518c + c00453b6: 0088 addi a0,sp,64 + c00453b8: 363010ef jal ra,c0046f1a + c00453bc: dd69 beqz a0,c0045396 + c00453be: bf79 j c004535c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:878 cr_free(cr); - c00451f0: 0088 addi a0,sp,64 - c00451f2: 60c010ef jal ra,c00467fe + c00453c0: 0088 addi a0,sp,64 + c00453c2: 60c010ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:879 p++; /* skip ']' */ - c00451f6: 7722 ld a4,40(sp) - c00451f8: 0705 addi a4,a4,1 + c00453c6: 7722 ld a4,40(sp) + c00453c8: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:880 *pp = p; - c00451fa: f03a sd a4,32(sp) + c00453ca: f03a sd a4,32(sp) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1382 if (is_backward_dir) - c00451fc: b209 j c0044afe + c00453cc: b209 j c0044cce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1408 if (s->ignore_case) - c00451fe: 050d2703 lw a4,80(s10) - c0045202: cb01 beqz a4,c0045212 + c00453ce: 050d2703 lw a4,80(s10) + c00453d2: cb01 beqz a4,c00453e2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1409 c = lre_canonicalize(c, s->is_utf16); - c0045204: 04cd2583 lw a1,76(s10) - c0045208: 0004851b sext.w a0,s1 - c004520c: 4e6010ef jal ra,c00466f2 - c0045210: 84aa mv s1,a0 + c00453d4: 04cd2583 lw a1,76(s10) + c00453d8: 0004851b sext.w a0,s1 + c00453dc: 4e6010ef jal ra,c00468c2 + c00453e0: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1410 if (c <= 0xffff) - c0045212: 6741 lui a4,0x10 + c00453e2: 6741 lui a4,0x10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1411 re_emit_op_u16(s, REOP_char, c); - c0045214: 0004861b sext.w a2,s1 + c00453e4: 0004861b sext.w a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1410 if (c <= 0xffff) - c0045218: 00e4d763 bge s1,a4,c0045226 + c00453e8: 00e4d763 bge s1,a4,c00453f6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1411 re_emit_op_u16(s, REOP_char, c); - c004521c: 4585 li a1,1 - c004521e: 856a mv a0,s10 - c0045220: d9ffe0ef jal ra,c0043fbe - c0045224: b8e9 j c0044afe + c00453ec: 4585 li a1,1 + c00453ee: 856a mv a0,s10 + c00453f0: d9ffe0ef jal ra,c004418e + c00453f4: b8e9 j c0044cce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1413 re_emit_op_u32(s, REOP_char32, c); - c0045226: 4589 li a1,2 - c0045228: 856a mv a0,s10 - c004522a: d65fe0ef jal ra,c0043f8e - c004522e: 8d1ff06f j c0044afe + c00453f6: 4589 li a1,2 + c00453f8: 856a mv a0,s10 + c00453fa: d65fe0ef jal ra,c004415e + c00453fe: 8d1ff06f j c0044cce /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1423 switch(c) { - c0045232: 07b00693 li a3,123 - c0045236: c4d71ee3 bne a4,a3,c0044e92 + c0045402: 07b00693 li a3,123 + c0045406: c4d71ee3 bne a4,a3,c0045062 is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 return c >= '0' && c <= '9'; - c004523a: 0014c703 lbu a4,1(s1) # 40000001 <__clzdi2-0x7fffffff> + c004540a: 0014c703 lbu a4,1(s1) # 40000001 <__clzdi2-0x7fffffff> re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1444 if (!is_digit(p[1])) { - c004523e: 49a5 li s3,9 - c0045240: fd07071b addiw a4,a4,-48 - c0045244: 02e9f863 bgeu s3,a4,c0045274 + c004540e: 49a5 li s3,9 + c0045410: fd07071b addiw a4,a4,-48 + c0045414: 02e9f863 bgeu s3,a4,c0045444 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1445 if (s->is_utf16) - c0045248: 04cd2703 lw a4,76(s10) - c004524c: c40703e3 beqz a4,c0044e92 + c0045418: 04cd2703 lw a4,76(s10) + c004541c: c40703e3 beqz a4,c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1458 return re_parse_error(s, "invalid repetition count"); - c0045250: 00022597 auipc a1,0x22 - c0045254: 0c058593 addi a1,a1,192 # c0067310 - c0045258: 8c3ff06f j c0044b1a + c0045420: 00022597 auipc a1,0x22 + c0045424: 15058593 addi a1,a1,336 # c0067570 + c0045428: 8c3ff06f j c0044cea /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1425 p++; - c004525c: 0485 addi s1,s1,1 + c004542c: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1427 quant_max = INT32_MAX; - c004525e: 80000737 lui a4,0x80000 + c004542e: 80000737 lui a4,0x80000 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1425 p++; - c0045262: f026 sd s1,32(sp) + c0045432: f026 sd s1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1427 quant_max = INT32_MAX; - c0045264: fff74c93 not s9,a4 + c0045434: fff74c93 not s9,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1436 quant_min = 0; - c0045268: 4c01 li s8,0 + c0045438: 4c01 li s8,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1438 goto quantifier; - c004526a: b4a1 j c0044cb2 + c004543a: b4a1 j c0044e82 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1435 p++; - c004526c: 0485 addi s1,s1,1 - c004526e: f026 sd s1,32(sp) + c004543c: 0485 addi s1,s1,1 + c004543e: f026 sd s1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1437 quant_max = 1; - c0045270: 4c85 li s9,1 - c0045272: bfdd j c0045268 + c0045440: 4c85 li s9,1 + c0045442: bfdd j c0045438 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1449 p++; - c0045274: 00148713 addi a4,s1,1 + c0045444: 00148713 addi a4,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1450 quant_min = parse_digits(&p, TRUE); - c0045278: 4585 li a1,1 - c004527a: 1008 addi a0,sp,32 + c0045448: 4585 li a1,1 + c004544a: 1008 addi a0,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1449 p++; - c004527c: f03a sd a4,32(sp) + c004544c: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1450 quant_min = parse_digits(&p, TRUE); - c004527e: e43fd0ef jal ra,c00430c0 + c004544e: e43fd0ef jal ra,c0043290 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1452 if (*p == ',') { - c0045282: 7602 ld a2,32(sp) + c0045452: 7602 ld a2,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1450 quant_min = parse_digits(&p, TRUE); - c0045284: 8c2a mv s8,a0 + c0045454: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1452 if (*p == ',') { - c0045286: 02c00593 li a1,44 - c004528a: 00064503 lbu a0,0(a2) + c0045456: 02c00593 li a1,44 + c004545a: 00064503 lbu a0,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1450 quant_min = parse_digits(&p, TRUE); - c004528e: 8ce2 mv s9,s8 + c004545e: 8ce2 mv s9,s8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1452 if (*p == ',') { - c0045290: 02b51263 bne a0,a1,c00452b4 + c0045460: 02b51263 bne a0,a1,c0045484 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1453 p++; - c0045294: 00160713 addi a4,a2,1 - c0045298: f03a sd a4,32(sp) + c0045464: 00160713 addi a4,a2,1 + c0045468: f03a sd a4,32(sp) is_digit(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:107 return c >= '0' && c <= '9'; - c004529a: 00164703 lbu a4,1(a2) + c004546a: 00164703 lbu a4,1(a2) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1454 if (is_digit(*p)) { - c004529e: fd07071b addiw a4,a4,-48 - c00452a2: 02e9e563 bltu s3,a4,c00452cc + c004546e: fd07071b addiw a4,a4,-48 + c0045472: 02e9e563 bltu s3,a4,c004549c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1455 quant_max = parse_digits(&p, TRUE); - c00452a6: 4585 li a1,1 - c00452a8: 1008 addi a0,sp,32 - c00452aa: e17fd0ef jal ra,c00430c0 - c00452ae: 8caa mv s9,a0 + c0045476: 4585 li a1,1 + c0045478: 1008 addi a0,sp,32 + c004547a: e17fd0ef jal ra,c0043290 + c004547e: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1456 if (quant_max < quant_min) { - c00452b0: fb8540e3 blt a0,s8,c0045250 + c0045480: fb8540e3 blt a0,s8,c0045420 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1464 if (*p != '}' && !s->is_utf16) { - c00452b4: 7602 ld a2,32(sp) - c00452b6: 00064583 lbu a1,0(a2) - c00452ba: 07d00613 li a2,125 - c00452be: 00c58c63 beq a1,a2,c00452d6 - c00452c2: 04cd2603 lw a2,76(s10) - c00452c6: ea01 bnez a2,c00452d6 + c0045484: 7602 ld a2,32(sp) + c0045486: 00064583 lbu a1,0(a2) + c004548a: 07d00613 li a2,125 + c004548e: 00c58c63 beq a1,a2,c00454a6 + c0045492: 04cd2603 lw a2,76(s10) + c0045496: ea01 bnez a2,c00454a6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1466 p = p1; - c00452c8: f026 sd s1,32(sp) + c0045498: f026 sd s1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1467 break; - c00452ca: b6e1 j c0044e92 + c004549a: b6e1 j c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1461 quant_max = INT32_MAX; /* infinity */ - c00452cc: 80000737 lui a4,0x80000 - c00452d0: fff74c93 not s9,a4 - c00452d4: b7c5 j c00452b4 + c004549c: 80000737 lui a4,0x80000 + c00454a0: fff74c93 not s9,a4 + c00454a4: b7c5 j c0045484 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1469 if (re_parse_expect(s, &p, '}')) - c00452d6: 07d00613 li a2,125 - c00452da: 100c addi a1,sp,32 - c00452dc: 856a mv a0,s10 - c00452de: c55fe0ef jal ra,c0043f32 - c00452e2: 9c0508e3 beqz a0,c0044cb2 - c00452e6: b0c5 j c0044bc6 + c00454a6: 07d00613 li a2,125 + c00454aa: 100c addi a1,sp,32 + c00454ac: 856a mv a0,s10 + c00454ae: c55fe0ef jal ra,c0044102 + c00454b2: 9c0508e3 beqz a0,c0044e82 + c00454b6: b0c5 j c0044d96 dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 return s->error; - c00452e8: 018d2483 lw s1,24(s10) + c00454b8: 018d2483 lw s1,24(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1484 if (quant_max > 0) { - c00452ec: 15905763 blez s9,c004543a + c00454bc: 15905763 blez s9,c004560a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1486 if (dbuf_error(&s->byte_code)) - c00452f0: 42049463 bnez s1,c0045718 + c00454c0: 42049463 bnez s1,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1488 len = re_is_simple_quantifier(s->byte_code.buf + last_atom_start, - c00452f4: 000d3883 ld a7,0(s10) + c00454c4: 000d3883 ld a7,0(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1489 s->byte_code.size - last_atom_start); - c00452f8: 008d3803 ld a6,8(s10) - c00452fc: 0004099b sext.w s3,s0 + c00454c8: 008d3803 ld a6,8(s10) + c00454cc: 0004099b sext.w s3,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1488 len = re_is_simple_quantifier(s->byte_code.buf + last_atom_start, - c0045300: 98a2 add a7,a7,s0 - c0045302: 4088083b subw a6,a6,s0 + c00454d0: 98a2 add a7,a7,s0 + c00454d2: 4088083b subw a6,a6,s0 re_is_simple_quantifier(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:953 pos = 0; - c0045306: 4501 li a0,0 - c0045308: 4ed5 li t4,21 - c004530a: 00022e17 auipc t3,0x22 - c004530e: 022e0e13 addi t3,t3,34 # c006732c + c00454d6: 4501 li a0,0 + c00454d8: 4ed5 li t4,21 + c00454da: 00022e17 auipc t3,0x22 + c00454de: 0b2e0e13 addi t3,t3,178 # c006758c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:954 while (pos < bc_buf_len) { - c0045312: 0d054663 blt a0,a6,c00453de + c00454e2: 0d054663 blt a0,a6,c00455ae re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1490 if (len > 0) { - c0045316: 12905463 blez s1,c004543e + c00454e6: 12905463 blez s1,c004560e re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c004531a: 45a9 li a1,10 - c004531c: 856a mv a0,s10 - c004531e: 225020ef jal ra,c0047d42 + c00454ea: 45a9 li a1,10 + c00454ec: 856a mv a0,s10 + c00454ee: 225020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1493 if (dbuf_insert(&s->byte_code, last_atom_start, 17)) - c0045322: 4645 li a2,17 - c0045324: 85a2 mv a1,s0 - c0045326: 856a mv a0,s10 - c0045328: e2ffd0ef jal ra,c0043156 - c004532c: 3e051663 bnez a0,c0045718 + c00454f2: 4645 li a2,17 + c00454f4: 85a2 mv a1,s0 + c00454f6: 856a mv a0,s10 + c00454f8: e2ffd0ef jal ra,c0043326 + c00454fc: 3e051663 bnez a0,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1496 s->byte_code.buf[pos++] = REOP_simple_greedy_quant; - c0045330: 000d3603 ld a2,0(s10) - c0045334: 45f1 li a1,28 + c0045500: 000d3603 ld a2,0(s10) + c0045504: 45f1 li a1,28 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c0045336: 018c569b srliw a3,s8,0x18 + c0045506: 018c569b srliw a3,s8,0x18 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1496 - c004533a: 9622 add a2,a2,s0 - c004533c: 00b60023 sb a1,0(a2) + c004550a: 9622 add a2,a2,s0 + c004550c: 00b60023 sb a1,0(a2) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045340: 000d3583 ld a1,0(s10) + c0045510: 000d3583 ld a1,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1497 put_u32(&s->byte_code.buf[pos], - c0045344: 0014061b addiw a2,s0,1 + c0045514: 0014061b addiw a2,s0,1 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045348: 018cd71b srliw a4,s9,0x18 - c004534c: 95b2 add a1,a1,a2 + c0045518: 018cd71b srliw a4,s9,0x18 + c004551c: 95b2 add a1,a1,a2 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1498 s->byte_code.size - last_atom_start - 17); - c004534e: 008d3603 ld a2,8(s10) + c004551e: 008d3603 ld a2,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1497 put_u32(&s->byte_code.buf[pos], - c0045352: 363d addiw a2,a2,-17 - c0045354: 4136063b subw a2,a2,s3 + c0045522: 363d addiw a2,a2,-17 + c0045524: 4136063b subw a2,a2,s3 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045358: 0086551b srliw a0,a2,0x8 - c004535c: 00c58023 sb a2,0(a1) - c0045360: 00a580a3 sb a0,1(a1) - c0045364: 0106551b srliw a0,a2,0x10 - c0045368: 0186561b srliw a2,a2,0x18 - c004536c: 00a58123 sb a0,2(a1) - c0045370: 00c581a3 sb a2,3(a1) - c0045374: 000d3603 ld a2,0(s10) + c0045528: 0086551b srliw a0,a2,0x8 + c004552c: 00c58023 sb a2,0(a1) + c0045530: 00a580a3 sb a0,1(a1) + c0045534: 0106551b srliw a0,a2,0x10 + c0045538: 0186561b srliw a2,a2,0x18 + c004553c: 00a58123 sb a0,2(a1) + c0045540: 00c581a3 sb a2,3(a1) + c0045544: 000d3603 ld a2,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1500 put_u32(&s->byte_code.buf[pos], quant_min); - c0045378: 0054059b addiw a1,s0,5 + c0045548: 0054059b addiw a1,s0,5 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c004537c: 962e add a2,a2,a1 - c004537e: 008c559b srliw a1,s8,0x8 - c0045382: 00b600a3 sb a1,1(a2) - c0045386: 010c559b srliw a1,s8,0x10 - c004538a: 01860023 sb s8,0(a2) - c004538e: 00b60123 sb a1,2(a2) - c0045392: 00d601a3 sb a3,3(a2) - c0045396: 000d3683 ld a3,0(s10) + c004554c: 962e add a2,a2,a1 + c004554e: 008c559b srliw a1,s8,0x8 + c0045552: 00b600a3 sb a1,1(a2) + c0045556: 010c559b srliw a1,s8,0x10 + c004555a: 01860023 sb s8,0(a2) + c004555e: 00b60123 sb a1,2(a2) + c0045562: 00d601a3 sb a3,3(a2) + c0045566: 000d3683 ld a3,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1502 put_u32(&s->byte_code.buf[pos], quant_max); - c004539a: 0094061b addiw a2,s0,9 + c004556a: 0094061b addiw a2,s0,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1504 put_u32(&s->byte_code.buf[pos], len); - c004539e: 2435 addiw s0,s0,13 + c004556e: 2435 addiw s0,s0,13 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00453a0: 96b2 add a3,a3,a2 - c00453a2: 008cd61b srliw a2,s9,0x8 - c00453a6: 00c680a3 sb a2,1(a3) - c00453aa: 010cd61b srliw a2,s9,0x10 - c00453ae: 01968023 sb s9,0(a3) - c00453b2: 00c68123 sb a2,2(a3) - c00453b6: 00e681a3 sb a4,3(a3) - c00453ba: 000d3703 ld a4,0(s10) - c00453be: 943a add s0,s0,a4 - c00453c0: 0084d71b srliw a4,s1,0x8 - c00453c4: 00940023 sb s1,0(s0) - c00453c8: 00e400a3 sb a4,1(s0) - c00453cc: 0104d71b srliw a4,s1,0x10 - c00453d0: 0184d49b srliw s1,s1,0x18 - c00453d4: 00e40123 sb a4,2(s0) - c00453d8: 009401a3 sb s1,3(s0) + c0045570: 96b2 add a3,a3,a2 + c0045572: 008cd61b srliw a2,s9,0x8 + c0045576: 00c680a3 sb a2,1(a3) + c004557a: 010cd61b srliw a2,s9,0x10 + c004557e: 01968023 sb s9,0(a3) + c0045582: 00c68123 sb a2,2(a3) + c0045586: 00e681a3 sb a4,3(a3) + c004558a: 000d3703 ld a4,0(s10) + c004558e: 943a add s0,s0,a4 + c0045590: 0084d71b srliw a4,s1,0x8 + c0045594: 00940023 sb s1,0(s0) + c0045598: 00e400a3 sb a4,1(s0) + c004559c: 0104d71b srliw a4,s1,0x10 + c00455a0: 0184d49b srliw s1,s1,0x18 + c00455a4: 00e40123 sb a4,2(s0) + c00455a8: 009401a3 sb s1,3(s0) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1506 goto done; - c00453dc: bc5d j c0044e92 + c00455ac: bc5d j c0045062 re_is_simple_quantifier(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:955 opcode = bc_buf[pos]; - c00453de: 00a88f33 add t5,a7,a0 - c00453e2: 000f4583 lbu a1,0(t5) + c00455ae: 00a88f33 add t5,a7,a0 + c00455b2: 000f4583 lbu a1,0(t5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:956 len = reopcode_info[opcode].size; - c00453e6: 00022797 auipc a5,0x22 - c00453ea: 11278793 addi a5,a5,274 # c00674f8 - c00453ee: 00b78633 add a2,a5,a1 - c00453f2: 00064303 lbu t1,0(a2) - c00453f6: 35fd addiw a1,a1,-1 - c00453f8: 0ff5f593 zext.b a1,a1 - c00453fc: 0003061b sext.w a2,t1 + c00455b6: 00022797 auipc a5,0x22 + c00455ba: 1a278793 addi a5,a5,418 # c0067758 + c00455be: 00b78633 add a2,a5,a1 + c00455c2: 00064303 lbu t1,0(a2) + c00455c6: 35fd addiw a1,a1,-1 + c00455c8: 0ff5f593 zext.b a1,a1 + c00455cc: 0003061b sext.w a2,t1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:957 switch(opcode) { - c0045400: 02beef63 bltu t4,a1,c004543e - c0045404: 058a slli a1,a1,0x2 - c0045406: 95f2 add a1,a1,t3 - c0045408: 418c lw a1,0(a1) - c004540a: 95f2 add a1,a1,t3 - c004540c: 8582 jr a1 + c00455d0: 02beef63 bltu t4,a1,c004560e + c00455d4: 058a slli a1,a1,0x2 + c00455d6: 95f2 add a1,a1,t3 + c00455d8: 418c lw a1,0(a1) + c00455da: 95f2 add a1,a1,t3 + c00455dc: 8582 jr a1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c004540e: 002f4603 lbu a2,2(t5) - c0045412: 001f4583 lbu a1,1(t5) - c0045416: 0622 slli a2,a2,0x8 - c0045418: 8e4d or a2,a2,a1 + c00455de: 002f4603 lbu a2,2(t5) + c00455e2: 001f4583 lbu a1,1(t5) + c00455e6: 0622 slli a2,a2,0x8 + c00455e8: 8e4d or a2,a2,a1 re_is_simple_quantifier(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:960 len += val * 4; - c004541a: 0026161b slliw a2,a2,0x2 + c00455ea: 0026161b slliw a2,a2,0x2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:964 len += val * 8; - c004541e: 0066063b addw a2,a2,t1 + c00455ee: 0066063b addw a2,a2,t1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:971 count++; - c0045422: 2485 addiw s1,s1,1 + c00455f2: 2485 addiw s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:981 pos += len; - c0045424: 9d31 addw a0,a0,a2 - c0045426: b5f5 j c0045312 + c00455f4: 9d31 addw a0,a0,a2 + c00455f6: b5f5 j c00454e2 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0045428: 002f4603 lbu a2,2(t5) - c004542c: 001f4583 lbu a1,1(t5) - c0045430: 0622 slli a2,a2,0x8 - c0045432: 8e4d or a2,a2,a1 + c00455f8: 002f4603 lbu a2,2(t5) + c00455fc: 001f4583 lbu a1,1(t5) + c0045600: 0622 slli a2,a2,0x8 + c0045602: 8e4d or a2,a2,a1 re_is_simple_quantifier(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:964 len += val * 8; - c0045434: 0036161b slliw a2,a2,0x3 - c0045438: b7dd j c004541e + c0045604: 0036161b slliw a2,a2,0x3 + c0045608: b7dd j c00455ee re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1510 if (dbuf_error(&s->byte_code)) - c004543a: 2c049f63 bnez s1,c0045718 + c004560a: 2c049f63 bnez s1,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1516 add_zero_advance_check = re_need_check_advance(s->byte_code.buf + last_atom_start, - c004543e: 000d3883 ld a7,0(s10) + c004560e: 000d3883 ld a7,0(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1517 s->byte_code.size - last_atom_start); - c0045442: 008d3803 ld a6,8(s10) + c0045612: 008d3803 ld a6,8(s10) re_need_check_advance(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:899 ret = TRUE; - c0045446: 4485 li s1,1 + c0045616: 4485 li s1,1 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1516 add_zero_advance_check = re_need_check_advance(s->byte_code.buf + last_atom_start, - c0045448: 98a2 add a7,a7,s0 - c004544a: 4088083b subw a6,a6,s0 + c0045618: 98a2 add a7,a7,s0 + c004561a: 4088083b subw a6,a6,s0 re_need_check_advance(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:900 pos = 0; - c004544e: 4501 li a0,0 - c0045450: 4ee9 li t4,26 - c0045452: 00022e17 auipc t3,0x22 - c0045456: f32e0e13 addi t3,t3,-206 # c0067384 + c004561e: 4501 li a0,0 + c0045620: 4ee9 li t4,26 + c0045622: 00022e17 auipc t3,0x22 + c0045626: fc2e0e13 addi t3,t3,-62 # c00675e4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:901 while (pos < bc_buf_len) { - c004545a: 01054563 blt a0,a6,c0045464 + c004562a: 01054563 blt a0,a6,c0045634 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1473 greedy = TRUE; - c004545e: 4a85 li s5,1 + c004562e: 4a85 li s5,1 re_need_check_advance(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1473 - c0045460: 869ff06f j c0044cc8 + c0045630: 869ff06f j c0044e98 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:902 opcode = bc_buf[pos]; - c0045464: 00a88f33 add t5,a7,a0 - c0045468: 000f4583 lbu a1,0(t5) + c0045634: 00a88f33 add t5,a7,a0 + c0045638: 000f4583 lbu a1,0(t5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:903 len = reopcode_info[opcode].size; - c004546c: 00022797 auipc a5,0x22 - c0045470: 08c78793 addi a5,a5,140 # c00674f8 - c0045474: 00b78633 add a2,a5,a1 - c0045478: 00064303 lbu t1,0(a2) - c004547c: 35fd addiw a1,a1,-1 - c004547e: 0ff5f593 zext.b a1,a1 - c0045482: 0003061b sext.w a2,t1 + c004563c: 00022797 auipc a5,0x22 + c0045640: 11c78793 addi a5,a5,284 # c0067758 + c0045644: 00b78633 add a2,a5,a1 + c0045648: 00064303 lbu t1,0(a2) + c004564c: 35fd addiw a1,a1,-1 + c004564e: 0ff5f593 zext.b a1,a1 + c0045652: 0003061b sext.w a2,t1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:904 switch(opcode) { - c0045486: 02beed63 bltu t4,a1,c00454c0 - c004548a: 058a slli a1,a1,0x2 - c004548c: 95f2 add a1,a1,t3 - c004548e: 418c lw a1,0(a1) - c0045490: 95f2 add a1,a1,t3 - c0045492: 8582 jr a1 + c0045656: 02beed63 bltu t4,a1,c0045690 + c004565a: 058a slli a1,a1,0x2 + c004565c: 95f2 add a1,a1,t3 + c004565e: 418c lw a1,0(a1) + c0045660: 95f2 add a1,a1,t3 + c0045662: 8582 jr a1 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0045494: 002f4603 lbu a2,2(t5) - c0045498: 001f4583 lbu a1,1(t5) - c004549c: 0622 slli a2,a2,0x8 - c004549e: 8e4d or a2,a2,a1 + c0045664: 002f4603 lbu a2,2(t5) + c0045668: 001f4583 lbu a1,1(t5) + c004566c: 0622 slli a2,a2,0x8 + c004566e: 8e4d or a2,a2,a1 re_need_check_advance(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:907 len += val * 4; - c00454a0: 0026161b slliw a2,a2,0x2 + c0045670: 0026161b slliw a2,a2,0x2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:911 len += val * 8; - c00454a4: 0066063b addw a2,a2,t1 + c0045674: 0066063b addw a2,a2,t1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:918 ret = FALSE; - c00454a8: 4481 li s1,0 + c0045678: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:940 pos += len; - c00454aa: 9d31 addw a0,a0,a2 - c00454ac: b77d j c004545a + c004567a: 9d31 addw a0,a0,a2 + c004567c: b77d j c004562a get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c00454ae: 002f4603 lbu a2,2(t5) - c00454b2: 001f4583 lbu a1,1(t5) - c00454b6: 0622 slli a2,a2,0x8 - c00454b8: 8e4d or a2,a2,a1 + c004567e: 002f4603 lbu a2,2(t5) + c0045682: 001f4583 lbu a1,1(t5) + c0045686: 0622 slli a2,a2,0x8 + c0045688: 8e4d or a2,a2,a1 re_need_check_advance(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:911 len += val * 8; - c00454ba: 0036161b slliw a2,a2,0x3 - c00454be: b7dd j c00454a4 + c004568a: 0036161b slliw a2,a2,0x3 + c004568e: b7dd j c0045674 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:903 len = reopcode_info[opcode].size; - c00454c0: 4a85 li s5,1 - c00454c2: 4485 li s1,1 - c00454c4: 805ff06f j c0044cc8 + c0045690: 4a85 li s5,1 + c0045692: 4485 li s1,1 + c0045694: 805ff06f j c0044e98 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1537 } else if (quant_max == 1 || quant_max == INT32_MAX) { - c00454c8: 4685 li a3,1 - c00454ca: 00dc8863 beq s9,a3,c00454da - c00454ce: 800006b7 lui a3,0x80000 - c00454d2: fff6c693 not a3,a3 - c00454d6: 08dc9863 bne s9,a3,c0045566 + c0045698: 4685 li a3,1 + c004569a: 00dc8863 beq s9,a3,c00456aa + c004569e: 800006b7 lui a3,0x80000 + c00456a2: fff6c693 not a3,a3 + c00456a6: 08dc9863 bne s9,a3,c0045736 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1539 if (dbuf_insert(&s->byte_code, last_atom_start, 5 + add_zero_advance_check)) - c00454da: 00548613 addi a2,s1,5 - c00454de: 85a2 mv a1,s0 - c00454e0: 856a mv a0,s10 - c00454e2: c75fd0ef jal ra,c0043156 - c00454e6: 22051963 bnez a0,c0045718 + c00456aa: 00548613 addi a2,s1,5 + c00456ae: 85a2 mv a1,s0 + c00456b0: 856a mv a0,s10 + c00456b2: c75fd0ef jal ra,c0043326 + c00456b6: 22051963 bnez a0,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1538 BOOL has_goto = (quant_max == INT32_MAX); - c00454ea: 80000637 lui a2,0x80000 - c00454ee: fff64613 not a2,a2 - c00454f2: 40cc8633 sub a2,s9,a2 - c00454f6: 00163613 seqz a2,a2 + c00456ba: 80000637 lui a2,0x80000 + c00456be: fff64613 not a2,a2 + c00456c2: 40cc8633 sub a2,s9,a2 + c00456c6: 00163613 seqz a2,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1544 len + 5 * has_goto + add_zero_advance_check * 2); - c00454fa: 4595 li a1,5 - c00454fc: 02b6063b mulw a2,a2,a1 + c00456ca: 4595 li a1,5 + c00456cc: 02b6063b mulw a2,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1541 s->byte_code.buf[last_atom_start] = REOP_split_goto_first + - c0045500: 000d3683 ld a3,0(s10) - c0045504: 2aa1 addiw s5,s5,8 - c0045506: 96a2 add a3,a3,s0 - c0045508: 01568023 sb s5,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c00456d0: 000d3683 ld a3,0(s10) + c00456d4: 2aa1 addiw s5,s5,8 + c00456d6: 96a2 add a3,a3,s0 + c00456d8: 01568023 sb s5,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c004550c: 000d3683 ld a3,0(s10) - c0045510: 96a2 add a3,a3,s0 + c00456dc: 000d3683 ld a3,0(s10) + c00456e0: 96a2 add a3,a3,s0 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1544 len + 5 * has_goto + add_zero_advance_check * 2); - c0045512: 013609bb addw s3,a2,s3 - c0045516: 0014961b slliw a2,s1,0x1 - c004551a: 00c989bb addw s3,s3,a2 + c00456e2: 013609bb addw s3,a2,s3 + c00456e6: 0014961b slliw a2,s1,0x1 + c00456ea: 00c989bb addw s3,s3,a2 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c004551e: 0089d61b srliw a2,s3,0x8 - c0045522: 013680a3 sb s3,1(a3) - c0045526: 00c68123 sb a2,2(a3) - c004552a: 0109d61b srliw a2,s3,0x10 - c004552e: 0189d99b srliw s3,s3,0x18 - c0045532: 00c681a3 sb a2,3(a3) - c0045536: 01368223 sb s3,4(a3) + c00456ee: 0089d61b srliw a2,s3,0x8 + c00456f2: 013680a3 sb s3,1(a3) + c00456f6: 00c68123 sb a2,2(a3) + c00456fa: 0109d61b srliw a2,s3,0x10 + c00456fe: 0189d99b srliw s3,s3,0x18 + c0045702: 00c681a3 sb a2,3(a3) + c0045706: 01368223 sb s3,4(a3) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1545 if (add_zero_advance_check) { - c004553a: cc89 beqz s1,c0045554 + c004570a: cc89 beqz s1,c0045724 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1546 s->byte_code.buf[last_atom_start + 1 + 4] = REOP_push_char_pos; - c004553c: 000d3603 ld a2,0(s10) - c0045540: 0054069b addiw a3,s0,5 + c004570c: 000d3603 ld a2,0(s10) + c0045710: 0054069b addiw a3,s0,5 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0045544: 45e9 li a1,26 + c0045714: 45e9 li a1,26 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1546 s->byte_code.buf[last_atom_start + 1 + 4] = REOP_push_char_pos; - c0045546: 96b2 add a3,a3,a2 - c0045548: 4665 li a2,25 - c004554a: 00c68023 sb a2,0(a3) + c0045716: 96b2 add a3,a3,a2 + c0045718: 4665 li a2,25 + c004571a: 00c68023 sb a2,0(a3) re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c004554e: 856a mv a0,s10 - c0045550: 7f2020ef jal ra,c0047d42 + c004571e: 856a mv a0,s10 + c0045720: 7f2020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1549 if (has_goto) - c0045554: 800006b7 lui a3,0x80000 - c0045558: fff6c693 not a3,a3 + c0045724: 800006b7 lui a3,0x80000 + c0045728: fff6c693 not a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1550 re_emit_goto(s, REOP_goto, last_atom_start); - c004555c: 8622 mv a2,s0 + c004572c: 8622 mv a2,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1549 if (has_goto) - c004555e: 92dc9ae3 bne s9,a3,c0044e92 + c004572e: 92dc9ae3 bne s9,a3,c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1595 re_emit_goto(s, REOP_goto, pos); - c0045562: 459d li a1,7 - c0045564: a0d9 j c004562a + c0045732: 459d li a1,7 + c0045734: a0d9 j c00457fa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1552 if (dbuf_insert(&s->byte_code, last_atom_start, 10 + add_zero_advance_check)) - c0045566: 00a48613 addi a2,s1,10 - c004556a: 85a2 mv a1,s0 - c004556c: 856a mv a0,s10 - c004556e: be9fd0ef jal ra,c0043156 - c0045572: 1a051363 bnez a0,c0045718 + c0045736: 00a48613 addi a2,s1,10 + c004573a: 85a2 mv a1,s0 + c004573c: 856a mv a0,s10 + c004573e: be9fd0ef jal ra,c0043326 + c0045742: 1a051363 bnez a0,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1555 s->byte_code.buf[pos++] = REOP_push_i32; - c0045576: 000d3683 ld a3,0(s10) - c004557a: 463d li a2,15 + c0045746: 000d3683 ld a3,0(s10) + c004574a: 463d li a2,15 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c004557c: 018cd71b srliw a4,s9,0x18 + c004574c: 018cd71b srliw a4,s9,0x18 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1555 - c0045580: 96a2 add a3,a3,s0 - c0045582: 00c68023 sb a2,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0045750: 96a2 add a3,a3,s0 + c0045752: 00c68023 sb a2,0(a3) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045586: 000d3603 ld a2,0(s10) + c0045756: 000d3603 ld a2,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1556 put_u32(s->byte_code.buf + pos, quant_max); - c004558a: 0014069b addiw a3,s0,1 + c004575a: 0014069b addiw a3,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1557 pos += 4; - c004558e: 00540a1b addiw s4,s0,5 + c004575e: 00540a1b addiw s4,s0,5 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045592: 96b2 add a3,a3,a2 - c0045594: 008cd61b srliw a2,s9,0x8 - c0045598: 00c680a3 sb a2,1(a3) - c004559c: 010cd61b srliw a2,s9,0x10 - c00455a0: 01968023 sb s9,0(a3) - c00455a4: 00c68123 sb a2,2(a3) - c00455a8: 00e681a3 sb a4,3(a3) + c0045762: 96b2 add a3,a3,a2 + c0045764: 008cd61b srliw a2,s9,0x8 + c0045768: 00c680a3 sb a2,1(a3) + c004576c: 010cd61b srliw a2,s9,0x10 + c0045770: 01968023 sb s9,0(a3) + c0045774: 00c68123 sb a2,2(a3) + c0045778: 00e681a3 sb a4,3(a3) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1558 s->byte_code.buf[pos++] = REOP_split_goto_first + greedy; - c00455ac: 000d3703 ld a4,0(s10) - c00455b0: 2aa1 addiw s5,s5,8 + c004577c: 000d3703 ld a4,0(s10) + c0045780: 2aa1 addiw s5,s5,8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1559 put_u32(s->byte_code.buf + pos, len + 5 + add_zero_advance_check * 2); - c00455b2: 0064069b addiw a3,s0,6 + c0045782: 0064069b addiw a3,s0,6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1558 s->byte_code.buf[pos++] = REOP_split_goto_first + greedy; - c00455b6: 9752 add a4,a4,s4 - c00455b8: 01570023 sb s5,0(a4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0045786: 9752 add a4,a4,s4 + c0045788: 01570023 sb s5,0(a4) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00455bc: 000d3703 ld a4,0(s10) + c004578c: 000d3703 ld a4,0(s10) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1559 put_u32(s->byte_code.buf + pos, len + 5 + add_zero_advance_check * 2); - c00455c0: 2995 addiw s3,s3,5 + c0045790: 2995 addiw s3,s3,5 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00455c2: 96ba add a3,a3,a4 + c0045792: 96ba add a3,a3,a4 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1559 - c00455c4: 0014971b slliw a4,s1,0x1 - c00455c8: 013709bb addw s3,a4,s3 + c0045794: 0014971b slliw a4,s1,0x1 + c0045798: 013709bb addw s3,a4,s3 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00455cc: 0089d71b srliw a4,s3,0x8 - c00455d0: 01368023 sb s3,0(a3) - c00455d4: 00e680a3 sb a4,1(a3) - c00455d8: 0109d71b srliw a4,s3,0x10 - c00455dc: 0189d99b srliw s3,s3,0x18 - c00455e0: 00e68123 sb a4,2(a3) - c00455e4: 013681a3 sb s3,3(a3) + c004579c: 0089d71b srliw a4,s3,0x8 + c00457a0: 01368023 sb s3,0(a3) + c00457a4: 00e680a3 sb a4,1(a3) + c00457a8: 0109d71b srliw a4,s3,0x10 + c00457ac: 0189d99b srliw s3,s3,0x18 + c00457b0: 00e68123 sb a4,2(a3) + c00457b4: 013681a3 sb s3,3(a3) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1561 if (add_zero_advance_check) { - c00455e8: cc81 beqz s1,c0045600 + c00457b8: cc81 beqz s1,c00457d0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1562 s->byte_code.buf[pos++] = REOP_push_char_pos; - c00455ea: 000d3703 ld a4,0(s10) - c00455ee: 2429 addiw s0,s0,10 + c00457ba: 000d3703 ld a4,0(s10) + c00457be: 2429 addiw s0,s0,10 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00455f0: 45e9 li a1,26 + c00457c0: 45e9 li a1,26 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1562 s->byte_code.buf[pos++] = REOP_push_char_pos; - c00455f2: 943a add s0,s0,a4 - c00455f4: 4765 li a4,25 - c00455f6: 00e40023 sb a4,0(s0) + c00457c2: 943a add s0,s0,a4 + c00457c4: 4765 li a4,25 + c00457c6: 00e40023 sb a4,0(s0) re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00455fa: 856a mv a0,s10 - c00455fc: 746020ef jal ra,c0047d42 + c00457ca: 856a mv a0,s10 + c00457cc: 746020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1565 re_emit_goto(s, REOP_loop, last_atom_start + 5); - c0045600: 8652 mv a2,s4 + c00457d0: 8652 mv a2,s4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1607 re_emit_goto(s, REOP_loop, pos); - c0045602: 45b9 li a1,14 - c0045604: 856a mv a0,s10 - c0045606: 95ffe0ef jal ra,c0043f64 + c00457d2: 45b9 li a1,14 + c00457d4: 856a mv a0,s10 + c00457d6: 95ffe0ef jal ra,c0044134 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c004560a: 45c1 li a1,16 - c004560c: cbaff06f j c0044ac6 + c00457da: 45c1 li a1,16 + c00457dc: cbaff06f j c0044c96 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1568 } else if (quant_min == 1 && quant_max == INT32_MAX && - c0045610: 4585 li a1,1 - c0045612: 02bc1163 bne s8,a1,c0045634 - c0045616: 800005b7 lui a1,0x80000 - c004561a: fff5c593 not a1,a1 - c004561e: 0abc9763 bne s9,a1,c00456cc - c0045622: e4bd bnez s1,c0045690 + c00457e0: 4585 li a1,1 + c00457e2: 02bc1163 bne s8,a1,c0045804 + c00457e6: 800005b7 lui a1,0x80000 + c00457ea: fff5c593 not a1,a1 + c00457ee: 0abc9763 bne s9,a1,c004589c + c00457f2: e4bd bnez s1,c0045860 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1570 re_emit_goto(s, REOP_split_next_first - greedy, - c0045624: 45a5 li a1,9 - c0045626: 415585bb subw a1,a1,s5 + c00457f4: 45a5 li a1,9 + c00457f6: 415585bb subw a1,a1,s5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1595 re_emit_goto(s, REOP_goto, pos); - c004562a: 856a mv a0,s10 - c004562c: 939fe0ef jal ra,c0043f64 - c0045630: 863ff06f j c0044e92 + c00457fa: 856a mv a0,s10 + c00457fc: 939fe0ef jal ra,c0044134 + c0045800: 863ff06f j c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1576 if (dbuf_insert(&s->byte_code, last_atom_start, 5)) - c0045634: 4615 li a2,5 - c0045636: 85a2 mv a1,s0 - c0045638: 856a mv a0,s10 - c004563a: b1dfd0ef jal ra,c0043156 - c004563e: 0c051d63 bnez a0,c0045718 + c0045804: 4615 li a2,5 + c0045806: 85a2 mv a1,s0 + c0045808: 856a mv a0,s10 + c004580a: b1dfd0ef jal ra,c0043326 + c004580e: 0c051d63 bnez a0,c00458e8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1578 s->byte_code.buf[last_atom_start] = REOP_push_i32; - c0045642: 000d3603 ld a2,0(s10) - c0045646: 45bd li a1,15 + c0045812: 000d3603 ld a2,0(s10) + c0045816: 45bd li a1,15 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1582 re_emit_goto(s, REOP_loop, last_atom_start); - c0045648: 856a mv a0,s10 + c0045818: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1578 s->byte_code.buf[last_atom_start] = REOP_push_i32; - c004564a: 9622 add a2,a2,s0 - c004564c: 00b60023 sb a1,0(a2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c004581a: 9622 add a2,a2,s0 + c004581c: 00b60023 sb a1,0(a2) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045650: 000d3603 ld a2,0(s10) - c0045654: 008c559b srliw a1,s8,0x8 - c0045658: 9622 add a2,a2,s0 - c004565a: 00b60123 sb a1,2(a2) - c004565e: 010c559b srliw a1,s8,0x10 - c0045662: 00b601a3 sb a1,3(a2) + c0045820: 000d3603 ld a2,0(s10) + c0045824: 008c559b srliw a1,s8,0x8 + c0045828: 9622 add a2,a2,s0 + c004582a: 00b60123 sb a1,2(a2) + c004582e: 010c559b srliw a1,s8,0x10 + c0045832: 00b601a3 sb a1,3(a2) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1581 last_atom_start += 5; - c0045666: 2415 addiw s0,s0,5 + c0045836: 2415 addiw s0,s0,5 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045668: 018c559b srliw a1,s8,0x18 - c004566c: 00b60223 sb a1,4(a2) - c0045670: 018600a3 sb s8,1(a2) + c0045838: 018c559b srliw a1,s8,0x18 + c004583c: 00b60223 sb a1,4(a2) + c0045840: 018600a3 sb s8,1(a2) re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1582 re_emit_goto(s, REOP_loop, last_atom_start); - c0045674: 45b9 li a1,14 - c0045676: 8622 mv a2,s0 - c0045678: 8edfe0ef jal ra,c0043f64 + c0045844: 45b9 li a1,14 + c0045846: 8622 mv a2,s0 + c0045848: 8edfe0ef jal ra,c0044134 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c004567c: 45c1 li a1,16 - c004567e: 856a mv a0,s10 - c0045680: 6c2020ef jal ra,c0047d42 + c004584c: 45c1 li a1,16 + c004584e: 856a mv a0,s10 + c0045850: 6c2020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1585 if (quant_max == INT32_MAX) { - c0045684: 80000637 lui a2,0x80000 - c0045688: fff64613 not a2,a2 - c004568c: 04cc9063 bne s9,a2,c00456cc + c0045854: 80000637 lui a2,0x80000 + c0045858: fff64613 not a2,a2 + c004585c: 04cc9063 bne s9,a2,c004589c /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1588 len + 5 + add_zero_advance_check * 2); - c0045690: 0059861b addiw a2,s3,5 - c0045694: 0014971b slliw a4,s1,0x1 + c0045860: 0059861b addiw a2,s3,5 + c0045864: 0014971b slliw a4,s1,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1587 re_emit_op_u32(s, REOP_split_goto_first + greedy, - c0045698: 9e39 addw a2,a2,a4 - c004569a: 008a8593 addi a1,s5,8 # ffffffffffffe008 <_ebss+0xffffffff3fefcee2> - c004569e: 856a mv a0,s10 + c0045868: 9e39 addw a2,a2,a4 + c004586a: 008a8593 addi a1,s5,8 # ffffffffffffe008 <_ebss+0xffffffff3fefcee2> + c004586e: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1586 pos = s->byte_code.size; - c00456a0: 008d3a03 ld s4,8(s10) + c0045870: 008d3a03 ld s4,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1587 re_emit_op_u32(s, REOP_split_goto_first + greedy, - c00456a4: 8ebfe0ef jal ra,c0043f8e + c0045874: 8ebfe0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1589 if (add_zero_advance_check) - c00456a8: c489 beqz s1,c00456b2 + c0045878: c489 beqz s1,c0045882 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00456aa: 45e5 li a1,25 - c00456ac: 856a mv a0,s10 - c00456ae: 694020ef jal ra,c0047d42 + c004587a: 45e5 li a1,25 + c004587c: 856a mv a0,s10 + c004587e: 694020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1592 dbuf_put_self(&s->byte_code, last_atom_start, len); - c00456b2: 866e mv a2,s11 - c00456b4: 85a2 mv a1,s0 - c00456b6: 856a mv a0,s10 - c00456b8: 640020ef jal ra,c0047cf8 + c0045882: 866e mv a2,s11 + c0045884: 85a2 mv a1,s0 + c0045886: 856a mv a0,s10 + c0045888: 640020ef jal ra,c0047ec8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1593 if (add_zero_advance_check) - c00456bc: c489 beqz s1,c00456c6 + c004588c: c489 beqz s1,c0045896 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00456be: 45e9 li a1,26 - c00456c0: 856a mv a0,s10 - c00456c2: 680020ef jal ra,c0047d42 + c004588e: 45e9 li a1,26 + c0045890: 856a mv a0,s10 + c0045892: 680020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1595 re_emit_goto(s, REOP_goto, pos); - c00456c6: 000a061b sext.w a2,s4 - c00456ca: bd61 j c0045562 + c0045896: 000a061b sext.w a2,s4 + c004589a: bd61 j c0045732 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1596 } else if (quant_max > quant_min) { - c00456cc: fd9c5363 bge s8,s9,c0044e92 + c004589c: fd9c5363 bge s8,s9,c0045062 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1597 re_emit_op_u32(s, REOP_push_i32, quant_max - quant_min); - c00456d0: 418c863b subw a2,s9,s8 - c00456d4: 45bd li a1,15 - c00456d6: 856a mv a0,s10 - c00456d8: 8b7fe0ef jal ra,c0043f8e + c00458a0: 418c863b subw a2,s9,s8 + c00458a4: 45bd li a1,15 + c00458a6: 856a mv a0,s10 + c00458a8: 8b7fe0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1600 len + 5 + add_zero_advance_check * 2); - c00456dc: 0014961b slliw a2,s1,0x1 - c00456e0: 2995 addiw s3,s3,5 + c00458ac: 0014961b slliw a2,s1,0x1 + c00458b0: 2995 addiw s3,s3,5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1599 re_emit_op_u32(s, REOP_split_goto_first + greedy, - c00456e2: 0136063b addw a2,a2,s3 - c00456e6: 008a8593 addi a1,s5,8 - c00456ea: 856a mv a0,s10 + c00458b2: 0136063b addw a2,a2,s3 + c00458b6: 008a8593 addi a1,s5,8 + c00458ba: 856a mv a0,s10 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1598 pos = s->byte_code.size; - c00456ec: 008d3a03 ld s4,8(s10) + c00458bc: 008d3a03 ld s4,8(s10) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1599 re_emit_op_u32(s, REOP_split_goto_first + greedy, - c00456f0: 89ffe0ef jal ra,c0043f8e + c00458c0: 89ffe0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1601 if (add_zero_advance_check) - c00456f4: c489 beqz s1,c00456fe + c00458c4: c489 beqz s1,c00458ce re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00456f6: 45e5 li a1,25 - c00456f8: 856a mv a0,s10 - c00456fa: 648020ef jal ra,c0047d42 + c00458c6: 45e5 li a1,25 + c00458c8: 856a mv a0,s10 + c00458ca: 648020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1604 dbuf_put_self(&s->byte_code, last_atom_start, len); - c00456fe: 866e mv a2,s11 - c0045700: 85a2 mv a1,s0 - c0045702: 856a mv a0,s10 - c0045704: 5f4020ef jal ra,c0047cf8 + c00458ce: 866e mv a2,s11 + c00458d0: 85a2 mv a1,s0 + c00458d2: 856a mv a0,s10 + c00458d4: 5f4020ef jal ra,c0047ec8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1605 if (add_zero_advance_check) - c0045708: c489 beqz s1,c0045712 + c00458d8: c489 beqz s1,c00458e2 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c004570a: 45e9 li a1,26 - c004570c: 856a mv a0,s10 - c004570e: 634020ef jal ra,c0047d42 + c00458da: 45e9 li a1,26 + c00458dc: 856a mv a0,s10 + c00458de: 634020ef jal ra,c0047f12 re_parse_term(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1607 re_emit_goto(s, REOP_loop, pos); - c0045712: 000a061b sext.w a2,s4 - c0045716: b5f5 j c0045602 + c00458e2: 000a061b sext.w a2,s4 + c00458e6: b5f5 j c00457d2 re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c0045718: 00018597 auipc a1,0x18 - c004571c: 72858593 addi a1,a1,1832 # c005de40 - c0045720: bfaff06f j c0044b1a + c00458e8: 00018597 auipc a1,0x18 + c00458ec: 78858593 addi a1,a1,1928 # c005e070 + c00458f0: bfaff06f j c0044cea re_parse_alternative(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1656 return 0; - c0045724: 4501 li a0,0 - c0045726: bfeff06f j c0044b24 + c00458f4: 4501 li a0,0 + c00458f6: bfeff06f j c0044cf4 -00000000c004572a : +00000000c00458fa : re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1660 { - c004572a: 715d addi sp,sp,-80 - c004572c: e0a2 sd s0,64(sp) - c004572e: f84a sd s2,48(sp) - c0045730: e486 sd ra,72(sp) - c0045732: fc26 sd s1,56(sp) - c0045734: f44e sd s3,40(sp) - c0045736: f052 sd s4,32(sp) - c0045738: ec56 sd s5,24(sp) - c004573a: e85a sd s6,16(sp) - c004573c: e45e sd s7,8(sp) - c004573e: 842a mv s0,a0 + c00458fa: 715d addi sp,sp,-80 + c00458fc: e0a2 sd s0,64(sp) + c00458fe: f84a sd s2,48(sp) + c0045900: e486 sd ra,72(sp) + c0045902: fc26 sd s1,56(sp) + c0045904: f44e sd s3,40(sp) + c0045906: f052 sd s4,32(sp) + c0045908: ec56 sd s5,24(sp) + c004590a: e85a sd s6,16(sp) + c004590c: e45e sd s7,8(sp) + c004590e: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1663 if (lre_check_stack_overflow(s->opaque, 0)) - c0045740: 7528 ld a0,104(a0) + c0045910: 7528 ld a0,104(a0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1660 { - c0045742: 892e mv s2,a1 + c0045912: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1663 if (lre_check_stack_overflow(s->opaque, 0)) - c0045744: 4581 li a1,0 - c0045746: fd6c50ef jal ra,c000af1c + c0045914: 4581 li a1,0 + c0045916: ef4c50ef jal ra,c000b00a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1664 return re_parse_error(s, "stack overflow"); - c004574a: 00022597 auipc a1,0x22 - c004574e: ca658593 addi a1,a1,-858 # c00673f0 + c004591a: 00022597 auipc a1,0x22 + c004591e: d3658593 addi a1,a1,-714 # c0067650 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1663 if (lre_check_stack_overflow(s->opaque, 0)) - c0045752: e131 bnez a0,c0045796 + c0045922: e131 bnez a0,c0045966 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1666 start = s->byte_code.size; - c0045754: 00843a03 ld s4,8(s0) + c0045924: 00843a03 ld s4,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1667 if (re_parse_alternative(s, is_backward_dir)) - c0045758: 85ca mv a1,s2 - c004575a: 8522 mv a0,s0 - c004575c: a7aff0ef jal ra,c00449d6 + c0045928: 85ca mv a1,s2 + c004592a: 8522 mv a0,s0 + c004592c: a7aff0ef jal ra,c0044ba6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1666 start = s->byte_code.size; - c0045760: 000a099b sext.w s3,s4 + c0045930: 000a099b sext.w s3,s4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1667 if (re_parse_alternative(s, is_backward_dir)) - c0045764: 8baa mv s7,a0 - c0045766: e529 bnez a0,c00457b0 + c0045934: 8baa mv s7,a0 + c0045936: e529 bnez a0,c0045980 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1669 while (*s->buf_ptr == '|') { - c0045768: 07c00a93 li s5,124 + c0045938: 07c00a93 li s5,124 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1678 s->byte_code.buf[start] = REOP_split_next_first; - c004576c: 4b25 li s6,9 + c004593c: 4b25 li s6,9 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1669 while (*s->buf_ptr == '|') { - c004576e: 781c ld a5,48(s0) - c0045770: 0007c703 lbu a4,0(a5) - c0045774: 03571f63 bne a4,s5,c00457b2 + c004593e: 781c ld a5,48(s0) + c0045940: 0007c703 lbu a4,0(a5) + c0045944: 03571f63 bne a4,s5,c0045982 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1670 s->buf_ptr++; - c0045778: 0785 addi a5,a5,1 - c004577a: f81c sd a5,48(s0) + c0045948: 0785 addi a5,a5,1 + c004594a: f81c sd a5,48(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1672 len = s->byte_code.size - start; - c004577c: 641c ld a5,8(s0) + c004594c: 641c ld a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1675 if (dbuf_insert(&s->byte_code, start, 5)) { - c004577e: 4615 li a2,5 - c0045780: 85ce mv a1,s3 - c0045782: 8522 mv a0,s0 + c004594e: 4615 li a2,5 + c0045950: 85ce mv a1,s3 + c0045952: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1672 len = s->byte_code.size - start; - c0045784: 414784bb subw s1,a5,s4 + c0045954: 414784bb subw s1,a5,s4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1675 if (dbuf_insert(&s->byte_code, start, 5)) { - c0045788: 9cffd0ef jal ra,c0043156 - c004578c: cd1d beqz a0,c00457ca + c0045958: 9cffd0ef jal ra,c0043326 + c004595c: cd1d beqz a0,c004599a re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c004578e: 00018597 auipc a1,0x18 - c0045792: 6b258593 addi a1,a1,1714 # c005de40 - c0045796: 8522 mv a0,s0 + c004595e: 00018597 auipc a1,0x18 + c0045962: 71258593 addi a1,a1,1810 # c005e070 + c0045966: 8522 mv a0,s0 re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1691 } - c0045798: 6406 ld s0,64(sp) - c004579a: 60a6 ld ra,72(sp) - c004579c: 74e2 ld s1,56(sp) - c004579e: 7942 ld s2,48(sp) - c00457a0: 79a2 ld s3,40(sp) - c00457a2: 7a02 ld s4,32(sp) - c00457a4: 6ae2 ld s5,24(sp) - c00457a6: 6b42 ld s6,16(sp) - c00457a8: 6ba2 ld s7,8(sp) - c00457aa: 6161 addi sp,sp,80 + c0045968: 6406 ld s0,64(sp) + c004596a: 60a6 ld ra,72(sp) + c004596c: 74e2 ld s1,56(sp) + c004596e: 7942 ld s2,48(sp) + c0045970: 79a2 ld s3,40(sp) + c0045972: 7a02 ld s4,32(sp) + c0045974: 6ae2 ld s5,24(sp) + c0045976: 6b42 ld s6,16(sp) + c0045978: 6ba2 ld s7,8(sp) + c004597a: 6161 addi sp,sp,80 re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c00457ac: b2ffd06f j c00432da + c004597c: b2ffd06f j c00434aa re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1668 return -1; - c00457b0: 5bfd li s7,-1 + c0045980: 5bfd li s7,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1691 } - c00457b2: 60a6 ld ra,72(sp) - c00457b4: 6406 ld s0,64(sp) - c00457b6: 74e2 ld s1,56(sp) - c00457b8: 7942 ld s2,48(sp) - c00457ba: 79a2 ld s3,40(sp) - c00457bc: 7a02 ld s4,32(sp) - c00457be: 6ae2 ld s5,24(sp) - c00457c0: 6b42 ld s6,16(sp) - c00457c2: 855e mv a0,s7 - c00457c4: 6ba2 ld s7,8(sp) - c00457c6: 6161 addi sp,sp,80 - c00457c8: 8082 ret + c0045982: 60a6 ld ra,72(sp) + c0045984: 6406 ld s0,64(sp) + c0045986: 74e2 ld s1,56(sp) + c0045988: 7942 ld s2,48(sp) + c004598a: 79a2 ld s3,40(sp) + c004598c: 7a02 ld s4,32(sp) + c004598e: 6ae2 ld s5,24(sp) + c0045990: 6b42 ld s6,16(sp) + c0045992: 855e mv a0,s7 + c0045994: 6ba2 ld s7,8(sp) + c0045996: 6161 addi sp,sp,80 + c0045998: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1678 s->byte_code.buf[start] = REOP_split_next_first; - c00457ca: 601c ld a5,0(s0) + c004599a: 601c ld a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1681 pos = re_emit_op_u32(s, REOP_goto, 0); - c00457cc: 459d li a1,7 - c00457ce: 4601 li a2,0 + c004599c: 459d li a1,7 + c004599e: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1678 s->byte_code.buf[start] = REOP_split_next_first; - c00457d0: 97ce add a5,a5,s3 - c00457d2: 01678023 sb s6,0(a5) + c00459a0: 97ce add a5,a5,s3 + c00459a2: 01678023 sb s6,0(a5) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00457d6: 6018 ld a4,0(s0) + c00459a6: 6018 ld a4,0(s0) re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1679 put_u32(s->byte_code.buf + start + 1, len + 5); - c00457d8: 0054879b addiw a5,s1,5 + c00459a8: 0054879b addiw a5,s1,5 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c00457dc: 0087d69b srliw a3,a5,0x8 - c00457e0: 974e add a4,a4,s3 - c00457e2: 00f700a3 sb a5,1(a4) - c00457e6: 00d70123 sb a3,2(a4) - c00457ea: 0107d69b srliw a3,a5,0x10 - c00457ee: 0187d79b srliw a5,a5,0x18 - c00457f2: 00d701a3 sb a3,3(a4) - c00457f6: 00f70223 sb a5,4(a4) + c00459ac: 0087d69b srliw a3,a5,0x8 + c00459b0: 974e add a4,a4,s3 + c00459b2: 00f700a3 sb a5,1(a4) + c00459b6: 00d70123 sb a3,2(a4) + c00459ba: 0107d69b srliw a3,a5,0x10 + c00459be: 0187d79b srliw a5,a5,0x18 + c00459c2: 00d701a3 sb a3,3(a4) + c00459c6: 00f70223 sb a5,4(a4) re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1681 pos = re_emit_op_u32(s, REOP_goto, 0); - c00457fa: 8522 mv a0,s0 - c00457fc: f92fe0ef jal ra,c0043f8e - c0045800: 84aa mv s1,a0 + c00459ca: 8522 mv a0,s0 + c00459cc: f92fe0ef jal ra,c004415e + c00459d0: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1683 if (re_parse_alternative(s, is_backward_dir)) - c0045802: 85ca mv a1,s2 - c0045804: 8522 mv a0,s0 - c0045806: 9d0ff0ef jal ra,c00449d6 - c004580a: f15d bnez a0,c00457b0 + c00459d2: 85ca mv a1,s2 + c00459d4: 8522 mv a0,s0 + c00459d6: 9d0ff0ef jal ra,c0044ba6 + c00459da: f15d bnez a0,c0045980 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1687 len = s->byte_code.size - (pos + 4); - c004580c: 641c ld a5,8(s0) + c00459dc: 641c ld a5,8(s0) put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c004580e: 6018 ld a4,0(s0) + c00459de: 6018 ld a4,0(s0) re_parse_disjunction(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1687 - c0045810: 37f1 addiw a5,a5,-4 - c0045812: 9f85 subw a5,a5,s1 + c00459e0: 37f1 addiw a5,a5,-4 + c00459e2: 9f85 subw a5,a5,s1 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 - c0045814: 9726 add a4,a4,s1 - c0045816: 0087d69b srliw a3,a5,0x8 - c004581a: 00f70023 sb a5,0(a4) - c004581e: 00d700a3 sb a3,1(a4) - c0045822: 0107d69b srliw a3,a5,0x10 - c0045826: 0187d79b srliw a5,a5,0x18 - c004582a: 00d70123 sb a3,2(a4) - c004582e: 00f701a3 sb a5,3(a4) + c00459e4: 9726 add a4,a4,s1 + c00459e6: 0087d69b srliw a3,a5,0x8 + c00459ea: 00f70023 sb a5,0(a4) + c00459ee: 00d700a3 sb a3,1(a4) + c00459f2: 0107d69b srliw a3,a5,0x10 + c00459f6: 0187d79b srliw a5,a5,0x18 + c00459fa: 00d70123 sb a3,2(a4) + c00459fe: 00f701a3 sb a5,3(a4) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:181 } - c0045832: bf35 j c004576e + c0045a02: bf35 j c004593e -00000000c0045834 : +00000000c0045a04 : lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1745 { - c0045834: 710d addi sp,sp,-352 - c0045836: eaa2 sd s0,336(sp) - c0045838: e6a6 sd s1,328(sp) - c004583a: e2ca sd s2,320(sp) - c004583c: 842a mv s0,a0 - c004583e: 84ae mv s1,a1 - c0045840: 8932 mv s2,a2 + c0045a04: 710d addi sp,sp,-352 + c0045a06: eaa2 sd s0,336(sp) + c0045a08: e6a6 sd s1,328(sp) + c0045a0a: e2ca sd s2,320(sp) + c0045a0c: 842a mv s0,a0 + c0045a0e: 84ae mv s1,a1 + c0045a10: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1750 memset(s, 0, sizeof(*s)); - c0045842: 4581 li a1,0 - c0045844: 12000613 li a2,288 - c0045848: 850a mv a0,sp + c0045a12: 4581 li a1,0 + c0045a14: 12000613 li a2,288 + c0045a18: 850a mv a0,sp /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1745 { - c004584a: ee86 sd ra,344(sp) - c004584c: fe4e sd s3,312(sp) - c004584e: fa52 sd s4,304(sp) - c0045850: 89be mv s3,a5 - c0045852: 8a42 mv s4,a6 - c0045854: f656 sd s5,296(sp) - c0045856: f25a sd s6,288(sp) - c0045858: 8ab6 mv s5,a3 - c004585a: 8b3a mv s6,a4 + c0045a1a: ee86 sd ra,344(sp) + c0045a1c: fe4e sd s3,312(sp) + c0045a1e: fa52 sd s4,304(sp) + c0045a20: 89be mv s3,a5 + c0045a22: 8a42 mv s4,a6 + c0045a24: f656 sd s5,296(sp) + c0045a26: f25a sd s6,288(sp) + c0045a28: 8ab6 mv s5,a3 + c0045a2a: 8b3a mv s6,a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1750 memset(s, 0, sizeof(*s)); - c004585c: 014110ef jal ra,c0056870 + c0045a2c: 014110ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1756 s->is_utf16 = ((re_flags & LRE_FLAG_UTF16) != 0); - c0045860: 4049d79b sraiw a5,s3,0x4 - c0045864: 8b85 andi a5,a5,1 - c0045866: c6be sw a5,76(sp) + c0045a30: 4049d79b sraiw a5,s3,0x4 + c0045a34: 8b85 andi a5,a5,1 + c0045a36: c6be sw a5,76(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1758 s->ignore_case = ((re_flags & LRE_FLAG_IGNORECASE) != 0); - c0045868: 4019d79b sraiw a5,s3,0x1 - c004586c: 8b85 andi a5,a5,1 - c004586e: c8be sw a5,80(sp) + c0045a38: 4019d79b sraiw a5,s3,0x1 + c0045a3c: 8b85 andi a5,a5,1 + c0045a3e: c8be sw a5,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1759 s->dotall = ((re_flags & LRE_FLAG_DOTALL) != 0); - c0045870: 4039d79b sraiw a5,s3,0x3 + c0045a40: 4039d79b sraiw a5,s3,0x3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1760 s->capture_count = 1; - c0045874: 577d li a4,-1 + c0045a44: 577d li a4,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1759 s->dotall = ((re_flags & LRE_FLAG_DOTALL) != 0); - c0045876: 8b85 andi a5,a5,1 - c0045878: cabe sw a5,84(sp) + c0045a46: 8b85 andi a5,a5,1 + c0045a48: cabe sw a5,84(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1760 s->capture_count = 1; - c004587a: 02071793 slli a5,a4,0x20 - c004587e: 0785 addi a5,a5,1 + c0045a4a: 02071793 slli a5,a4,0x20 + c0045a4e: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1764 dbuf_init2(&s->byte_code, opaque, lre_realloc); - c0045880: fffc5617 auipc a2,0xfffc5 - c0045884: 6a060613 addi a2,a2,1696 # c000af20 - c0045888: 85d2 mv a1,s4 - c004588a: 850a mv a0,sp + c0045a50: fffc5617 auipc a2,0xfffc5 + c0045a54: 5be60613 addi a2,a2,1470 # c000b00e + c0045a58: 85d2 mv a1,s4 + c0045a5a: 850a mv a0,sp /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1753 s->buf_end = s->buf_ptr + buf_len; - c004588c: 9b56 add s6,s6,s5 + c0045a5c: 9b56 add s6,s6,s5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1760 s->capture_count = 1; - c004588e: ecbe sd a5,88(sp) + c0045a5e: ecbe sd a5,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1762 s->has_named_captures = -1; - c0045890: d0ba sw a4,96(sp) + c0045a60: d0ba sw a4,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1755 s->re_flags = re_flags; - c0045892: c4ce sw s3,72(sp) + c0045a62: c4ce sw s3,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1751 s->opaque = opaque; - c0045894: f4d2 sd s4,104(sp) + c0045a64: f4d2 sd s4,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1752 s->buf_ptr = (const uint8_t *)buf; - c0045896: f856 sd s5,48(sp) + c0045a66: f856 sd s5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1753 s->buf_end = s->buf_ptr + buf_len; - c0045898: fc5a sd s6,56(sp) + c0045a68: fc5a sd s6,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1754 s->buf_start = s->buf_ptr; - c004589a: e0d6 sd s5,64(sp) + c0045a6a: e0d6 sd s5,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1764 dbuf_init2(&s->byte_code, opaque, lre_realloc); - c004589c: 334020ef jal ra,c0047bd0 + c0045a6c: 334020ef jal ra,c0047da0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1765 dbuf_init2(&s->group_names, opaque, lre_realloc); - c00458a0: fffc5617 auipc a2,0xfffc5 - c00458a4: 68060613 addi a2,a2,1664 # c000af20 - c00458a8: 85d2 mv a1,s4 - c00458aa: 1888 addi a0,sp,112 - c00458ac: 324020ef jal ra,c0047bd0 + c0045a70: fffc5617 auipc a2,0xfffc5 + c0045a74: 59e60613 addi a2,a2,1438 # c000b00e + c0045a78: 85d2 mv a1,s4 + c0045a7a: 1888 addi a0,sp,112 + c0045a7c: 324020ef jal ra,c0047da0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1767 dbuf_putc(&s->byte_code, re_flags); /* first element is the flags */ - c00458b0: 0ff9f593 zext.b a1,s3 - c00458b4: 850a mv a0,sp - c00458b6: 48c020ef jal ra,c0047d42 + c0045a80: 0ff9f593 zext.b a1,s3 + c0045a84: 850a mv a0,sp + c0045a86: 48c020ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1768 dbuf_putc(&s->byte_code, 0); /* second element is the number of captures */ - c00458ba: 4581 li a1,0 - c00458bc: 850a mv a0,sp - c00458be: 484020ef jal ra,c0047d42 + c0045a8a: 4581 li a1,0 + c0045a8c: 850a mv a0,sp + c0045a8e: 484020ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1769 dbuf_putc(&s->byte_code, 0); /* stack size */ - c00458c2: 4581 li a1,0 - c00458c4: 850a mv a0,sp - c00458c6: 47c020ef jal ra,c0047d42 + c0045a92: 4581 li a1,0 + c0045a94: 850a mv a0,sp + c0045a96: 47c020ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1770 dbuf_put_u32(&s->byte_code, 0); /* bytecode length */ - c00458ca: 4581 li a1,0 - c00458cc: 850a mv a0,sp + c0045a9a: 4581 li a1,0 + c0045a9c: 850a mv a0,sp /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1772 if (!is_sticky) { - c00458ce: 0209f993 andi s3,s3,32 + c0045a9e: 0209f993 andi s3,s3,32 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1770 dbuf_put_u32(&s->byte_code, 0); /* bytecode length */ - c00458d2: e7efe0ef jal ra,c0043f50 + c0045aa2: e7efe0ef jal ra,c0044120 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1772 if (!is_sticky) { - c00458d6: 02099063 bnez s3,c00458f6 + c0045aa6: 02099063 bnez s3,c0045ac6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1777 re_emit_op_u32(s, REOP_split_goto_first, 1 + 5); - c00458da: 4619 li a2,6 - c00458dc: 45a1 li a1,8 - c00458de: 850a mv a0,sp - c00458e0: eaefe0ef jal ra,c0043f8e + c0045aaa: 4619 li a2,6 + c0045aac: 45a1 li a1,8 + c0045aae: 850a mv a0,sp + c0045ab0: eaefe0ef jal ra,c004415e re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c00458e4: 4591 li a1,4 - c00458e6: 850a mv a0,sp - c00458e8: 45a020ef jal ra,c0047d42 + c0045ab4: 4591 li a1,4 + c0045ab6: 850a mv a0,sp + c0045ab8: 45a020ef jal ra,c0047f12 lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1779 re_emit_op_u32(s, REOP_goto, -(5 + 1 + 5)); - c00458ec: 5655 li a2,-11 - c00458ee: 459d li a1,7 - c00458f0: 850a mv a0,sp - c00458f2: e9cfe0ef jal ra,c0043f8e + c0045abc: 5655 li a2,-11 + c0045abe: 459d li a1,7 + c0045ac0: 850a mv a0,sp + c0045ac2: e9cfe0ef jal ra,c004415e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1781 re_emit_op_u8(s, REOP_save_start, 0); - c00458f6: 45ad li a1,11 - c00458f8: 850a mv a0,sp - c00458fa: 4601 li a2,0 - c00458fc: 835fd0ef jal ra,c0043130 + c0045ac6: 45ad li a1,11 + c0045ac8: 850a mv a0,sp + c0045aca: 4601 li a2,0 + c0045acc: 835fd0ef jal ra,c0043300 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1783 if (re_parse_disjunction(s, FALSE)) { - c0045900: 4581 li a1,0 - c0045902: 850a mv a0,sp - c0045904: e27ff0ef jal ra,c004572a - c0045908: c90d beqz a0,c004593a + c0045ad0: 4581 li a1,0 + c0045ad2: 850a mv a0,sp + c0045ad4: e27ff0ef jal ra,c00458fa + c0045ad8: c90d beqz a0,c0045b0a /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1785 dbuf_free(&s->byte_code); - c004590a: 850a mv a0,sp - c004590c: 4fa020ef jal ra,c0047e06 + c0045ada: 850a mv a0,sp + c0045adc: 4fa020ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1786 dbuf_free(&s->group_names); - c0045910: 1888 addi a0,sp,112 - c0045912: 4f4020ef jal ra,c0047e06 + c0045ae0: 1888 addi a0,sp,112 + c0045ae2: 4f4020ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1787 pstrcpy(error_msg, error_msg_size, s->u.error_msg); - c0045916: 8526 mv a0,s1 - c0045918: 1110 addi a2,sp,160 - c004591a: 85ca mv a1,s2 - c004591c: 200020ef jal ra,c0047b1c + c0045ae6: 8526 mv a0,s1 + c0045ae8: 1110 addi a2,sp,160 + c0045aea: 85ca mv a1,s2 + c0045aec: 200020ef jal ra,c0047cec /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1789 return NULL; - c0045920: 4501 li a0,0 + c0045af0: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1788 *plen = 0; - c0045922: 00042023 sw zero,0(s0) + c0045af2: 00042023 sw zero,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1830 } - c0045926: 60f6 ld ra,344(sp) - c0045928: 6456 ld s0,336(sp) - c004592a: 64b6 ld s1,328(sp) - c004592c: 6916 ld s2,320(sp) - c004592e: 79f2 ld s3,312(sp) - c0045930: 7a52 ld s4,304(sp) - c0045932: 7ab2 ld s5,296(sp) - c0045934: 7b12 ld s6,288(sp) - c0045936: 6135 addi sp,sp,352 - c0045938: 8082 ret + c0045af6: 60f6 ld ra,344(sp) + c0045af8: 6456 ld s0,336(sp) + c0045afa: 64b6 ld s1,328(sp) + c0045afc: 6916 ld s2,320(sp) + c0045afe: 79f2 ld s3,312(sp) + c0045b00: 7a52 ld s4,304(sp) + c0045b02: 7ab2 ld s5,296(sp) + c0045b04: 7b12 ld s6,288(sp) + c0045b06: 6135 addi sp,sp,352 + c0045b08: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1792 re_emit_op_u8(s, REOP_save_end, 0); - c004593a: 4601 li a2,0 - c004593c: 45b1 li a1,12 - c004593e: 850a mv a0,sp - c0045940: ff0fd0ef jal ra,c0043130 + c0045b0a: 4601 li a2,0 + c0045b0c: 45b1 li a1,12 + c0045b0e: 850a mv a0,sp + c0045b10: ff0fd0ef jal ra,c0043300 re_emit_op(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:340 dbuf_putc(&s->byte_code, op); - c0045944: 45a9 li a1,10 - c0045946: 850a mv a0,sp - c0045948: 3fa020ef jal ra,c0047d42 + c0045b14: 45a9 li a1,10 + c0045b16: 850a mv a0,sp + c0045b18: 3fa020ef jal ra,c0047f12 lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1796 if (*s->buf_ptr != '\0') { - c004594c: 77c2 ld a5,48(sp) + c0045b1c: 77c2 ld a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1797 re_parse_error(s, "extraneous characters at the end"); - c004594e: 00022597 auipc a1,0x22 - c0045952: ab258593 addi a1,a1,-1358 # c0067400 + c0045b1e: 00022597 auipc a1,0x22 + c0045b22: b4258593 addi a1,a1,-1214 # c0067660 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1796 if (*s->buf_ptr != '\0') { - c0045956: 0007c783 lbu a5,0(a5) - c004595a: 12079c63 bnez a5,c0045a92 + c0045b26: 0007c783 lbu a5,0(a5) + c0045b2a: 12079c63 bnez a5,c0045c62 dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 return s->error; - c004595e: 46e2 lw a3,24(sp) + c0045b2e: 46e2 lw a3,24(sp) re_parse_out_of_memory(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:385 return re_parse_error(s, "out of memory"); - c0045960: 00018597 auipc a1,0x18 - c0045964: 4e058593 addi a1,a1,1248 # c005de40 + c0045b30: 00018597 auipc a1,0x18 + c0045b34: 54058593 addi a1,a1,1344 # c005e070 lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1801 if (dbuf_error(&s->byte_code)) { - c0045968: 12069563 bnez a3,c0045a92 + c0045b38: 12069563 bnez a3,c0045c62 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1806 stack_size = compute_stack_size(s->byte_code.buf, s->byte_code.size); - c004596c: 6882 ld a7,0(sp) + c0045b3c: 6882 ld a7,0(sp) compute_stack_size(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1702 bc_buf_len -= RE_HEADER_LEN; - c004596e: 65a2 ld a1,8(sp) + c0045b3e: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1703 pos = 0; - c0045970: 4601 li a2,0 + c0045b40: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1701 bc_buf += RE_HEADER_LEN; - c0045972: 00788e13 addi t3,a7,7 # 10007 <__clzdi2-0xbffefff9> + c0045b42: 00788e13 addi t3,a7,7 # 10007 <__clzdi2-0xbffefff9> /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1702 bc_buf_len -= RE_HEADER_LEN; - c0045976: 35e5 addiw a1,a1,-7 + c0045b46: 35e5 addiw a1,a1,-7 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1700 stack_size_max = 0; - c0045978: 4501 li a0,0 + c0045b48: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1706 len = reopcode_info[opcode].size; - c004597a: 00022e97 auipc t4,0x22 - c004597e: b7ee8e93 addi t4,t4,-1154 # c00674f8 + c0045b4a: 00022e97 auipc t4,0x22 + c0045b4e: c0ee8e93 addi t4,t4,-1010 # c0067758 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1707 assert(opcode < REOP_COUNT); - c0045982: 4f71 li t5,28 - c0045984: 4fad li t6,11 - c0045986: 00022317 auipc t1,0x22 - c004598a: ac230313 addi t1,t1,-1342 # c0067448 + c0045b52: 4f71 li t5,28 + c0045b54: 4fad li t6,11 + c0045b56: 00022317 auipc t1,0x22 + c0045b5a: b5230313 addi t1,t1,-1198 # c00676a8 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1714 if (stack_size > STACK_SIZE_MAX) - c004598e: 0ff00293 li t0,255 + c0045b5e: 0ff00293 li t0,255 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1704 while (pos < bc_buf_len) { - c0045992: 06b64263 blt a2,a1,c00459f6 + c0045b62: 06b64263 blt a2,a1,c0045bc6 lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1812 s->byte_code.buf[RE_HEADER_CAPTURE_COUNT] = s->capture_count; - c0045996: 47e6 lw a5,88(sp) - c0045998: 00f880a3 sb a5,1(a7) + c0045b66: 47e6 lw a5,88(sp) + c0045b68: 00f880a3 sb a5,1(a7) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1813 s->byte_code.buf[RE_HEADER_STACK_SIZE] = stack_size; - c004599c: 6782 ld a5,0(sp) - c004599e: 00a78123 sb a0,2(a5) + c0045b6c: 6782 ld a5,0(sp) + c0045b6e: 00a78123 sb a0,2(a5) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1814 put_u32(s->byte_code.buf + 3, s->byte_code.size - RE_HEADER_LEN); - c00459a2: 67a2 ld a5,8(sp) - c00459a4: 6702 ld a4,0(sp) - c00459a6: 37e5 addiw a5,a5,-7 + c0045b72: 67a2 ld a5,8(sp) + c0045b74: 6702 ld a4,0(sp) + c0045b76: 37e5 addiw a5,a5,-7 put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:180 ((struct packed_u32 *)tab)->v = val; - c00459a8: 0087d69b srliw a3,a5,0x8 - c00459ac: 00f701a3 sb a5,3(a4) - c00459b0: 00d70223 sb a3,4(a4) - c00459b4: 0107d69b srliw a3,a5,0x10 - c00459b8: 0187d79b srliw a5,a5,0x18 - c00459bc: 00d702a3 sb a3,5(a4) - c00459c0: 00f70323 sb a5,6(a4) + c0045b78: 0087d69b srliw a3,a5,0x8 + c0045b7c: 00f701a3 sb a5,3(a4) + c0045b80: 00d70223 sb a3,4(a4) + c0045b84: 0107d69b srliw a3,a5,0x10 + c0045b88: 0187d79b srliw a5,a5,0x18 + c0045b8c: 00d702a3 sb a3,5(a4) + c0045b90: 00f70323 sb a5,6(a4) lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1817 if (s->group_names.size > (s->capture_count - 1)) { - c00459c4: 47e6 lw a5,88(sp) - c00459c6: 7666 ld a2,120(sp) - c00459c8: 37fd addiw a5,a5,-1 - c00459ca: 00c7fd63 bgeu a5,a2,c00459e4 + c0045b94: 47e6 lw a5,88(sp) + c0045b96: 7666 ld a2,120(sp) + c0045b98: 37fd addiw a5,a5,-1 + c0045b9a: 00c7fd63 bgeu a5,a2,c0045bb4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1818 dbuf_put(&s->byte_code, s->group_names.buf, s->group_names.size); - c00459ce: 75c6 ld a1,112(sp) - c00459d0: 850a mv a0,sp - c00459d2: 2de020ef jal ra,c0047cb0 + c0045b9e: 75c6 ld a1,112(sp) + c0045ba0: 850a mv a0,sp + c0045ba2: 2de020ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1819 s->byte_code.buf[RE_HEADER_FLAGS] |= LRE_FLAG_NAMED_GROUPS; - c00459d6: 6702 ld a4,0(sp) - c00459d8: 00074783 lbu a5,0(a4) - c00459dc: f807e793 ori a5,a5,-128 - c00459e0: 00f70023 sb a5,0(a4) + c0045ba6: 6702 ld a4,0(sp) + c0045ba8: 00074783 lbu a5,0(a4) + c0045bac: f807e793 ori a5,a5,-128 + c0045bb0: 00f70023 sb a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1821 dbuf_free(&s->group_names); - c00459e4: 1888 addi a0,sp,112 - c00459e6: 420020ef jal ra,c0047e06 + c0045bb4: 1888 addi a0,sp,112 + c0045bb6: 420020ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1828 *plen = s->byte_code.size; - c00459ea: 67a2 ld a5,8(sp) + c0045bba: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1827 error_msg[0] = '\0'; - c00459ec: 00048023 sb zero,0(s1) + c0045bbc: 00048023 sb zero,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1829 return s->byte_code.buf; - c00459f0: 6502 ld a0,0(sp) + c0045bc0: 6502 ld a0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1828 *plen = s->byte_code.size; - c00459f2: c01c sw a5,0(s0) + c0045bc2: c01c sw a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1829 return s->byte_code.buf; - c00459f4: bf0d j c0045926 + c0045bc4: bf0d j c0045af6 compute_stack_size(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1705 opcode = bc_buf[pos]; - c00459f6: 00ce03b3 add t2,t3,a2 - c00459fa: 0003c703 lbu a4,0(t2) + c0045bc6: 00ce03b3 add t2,t3,a2 + c0045bca: 0003c703 lbu a4,0(t2) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1706 len = reopcode_info[opcode].size; - c00459fe: 00ee87b3 add a5,t4,a4 - c0045a02: 0007c803 lbu a6,0(a5) - c0045a06: 0008079b sext.w a5,a6 + c0045bce: 00ee87b3 add a5,t4,a4 + c0045bd2: 0007c803 lbu a6,0(a5) + c0045bd6: 0008079b sext.w a5,a6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1707 assert(opcode < REOP_COUNT); - c0045a0a: 00ef5b63 bge t5,a4,c0045a20 - c0045a0e: 4601 li a2,0 - c0045a10: 6ab00593 li a1,1707 + c0045bda: 00ef5b63 bge t5,a4,c0045bf0 + c0045bde: 4601 li a2,0 + c0045be0: 6ab00593 li a1,1707 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1708 assert((pos + len) <= bc_buf_len); - c0045a14: 00021517 auipc a0,0x21 - c0045a18: 57c50513 addi a0,a0,1404 # c0066f90 - c0045a1c: 7fd0d0ef jal ra,c0053a18 <__assert> - c0045a20: 00f609bb addw s3,a2,a5 - c0045a24: 0135d663 bge a1,s3,c0045a30 - c0045a28: 4601 li a2,0 - c0045a2a: 6ac00593 li a1,1708 - c0045a2e: b7dd j c0045a14 + c0045be4: 00021517 auipc a0,0x21 + c0045be8: 60c50513 addi a0,a0,1548 # c00671f0 + c0045bec: 7fd0d0ef jal ra,c0053be8 <__assert> + c0045bf0: 00f609bb addw s3,a2,a5 + c0045bf4: 0135d663 bge a1,s3,c0045c00 + c0045bf8: 4601 li a2,0 + c0045bfa: 6ac00593 li a1,1708 + c0045bfe: b7dd j c0045be4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1709 switch(opcode) { - c0045a30: 3745 addiw a4,a4,-15 - c0045a32: 0ff77713 zext.b a4,a4 - c0045a36: 00efed63 bltu t6,a4,c0045a50 - c0045a3a: 070a slli a4,a4,0x2 - c0045a3c: 971a add a4,a4,t1 - c0045a3e: 4318 lw a4,0(a4) - c0045a40: 971a add a4,a4,t1 - c0045a42: 8702 jr a4 + c0045c00: 3745 addiw a4,a4,-15 + c0045c02: 0ff77713 zext.b a4,a4 + c0045c06: 00efed63 bltu t6,a4,c0045c20 + c0045c0a: 070a slli a4,a4,0x2 + c0045c0c: 971a add a4,a4,t1 + c0045c0e: 4318 lw a4,0(a4) + c0045c10: 971a add a4,a4,t1 + c0045c12: 8702 jr a4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1712 stack_size++; - c0045a44: 2685 addiw a3,a3,1 + c0045c14: 2685 addiw a3,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1713 if (stack_size > stack_size_max) { - c0045a46: 00d55563 bge a0,a3,c0045a50 + c0045c16: 00d55563 bge a0,a3,c0045c20 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1714 if (stack_size > STACK_SIZE_MAX) - c0045a4a: 04d2c063 blt t0,a3,c0045a8a - c0045a4e: 8536 mv a0,a3 + c0045c1a: 04d2c063 blt t0,a3,c0045c5a + c0045c1e: 8536 mv a0,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1733 pos += len; - c0045a50: 9e3d addw a2,a2,a5 - c0045a52: b781 j c0045992 + c0045c20: 9e3d addw a2,a2,a5 + c0045c22: b781 j c0045b62 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1721 assert(stack_size > 0); - c0045a54: e689 bnez a3,c0045a5e - c0045a56: 4601 li a2,0 - c0045a58: 6b900593 li a1,1721 - c0045a5c: bf65 j c0045a14 + c0045c24: e689 bnez a3,c0045c2e + c0045c26: 4601 li a2,0 + c0045c28: 6b900593 li a1,1721 + c0045c2c: bf65 j c0045be4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1722 stack_size--; - c0045a5e: 36fd addiw a3,a3,-1 + c0045c2e: 36fd addiw a3,a3,-1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1723 break; - c0045a60: bfc5 j c0045a50 + c0045c30: bfc5 j c0045c20 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 return ((const struct packed_u16 *)tab)->v; - c0045a62: 0023c783 lbu a5,2(t2) - c0045a66: 0013c703 lbu a4,1(t2) - c0045a6a: 07a2 slli a5,a5,0x8 - c0045a6c: 8fd9 or a5,a5,a4 + c0045c32: 0023c783 lbu a5,2(t2) + c0045c36: 0013c703 lbu a4,1(t2) + c0045c3a: 07a2 slli a5,a5,0x8 + c0045c3c: 8fd9 or a5,a5,a4 compute_stack_size(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1726 len += val * 4; - c0045a6e: 0027979b slliw a5,a5,0x2 + c0045c3e: 0027979b slliw a5,a5,0x2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1730 len += val * 8; - c0045a72: 010787bb addw a5,a5,a6 + c0045c42: 010787bb addw a5,a5,a6 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1731 break; - c0045a76: bfe9 j c0045a50 + c0045c46: bfe9 j c0045c20 get_u16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:185 - c0045a78: 0023c783 lbu a5,2(t2) - c0045a7c: 0013c703 lbu a4,1(t2) - c0045a80: 07a2 slli a5,a5,0x8 - c0045a82: 8fd9 or a5,a5,a4 + c0045c48: 0023c783 lbu a5,2(t2) + c0045c4c: 0013c703 lbu a4,1(t2) + c0045c50: 07a2 slli a5,a5,0x8 + c0045c52: 8fd9 or a5,a5,a4 compute_stack_size(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1730 len += val * 8; - c0045a84: 0037979b slliw a5,a5,0x3 - c0045a88: b7ed j c0045a72 + c0045c54: 0037979b slliw a5,a5,0x3 + c0045c58: b7ed j c0045c42 lre_compile(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1808 re_parse_error(s, "too many imbricated quantifiers"); - c0045a8a: 00022597 auipc a1,0x22 - c0045a8e: 99e58593 addi a1,a1,-1634 # c0067428 - c0045a92: 850a mv a0,sp - c0045a94: 847fd0ef jal ra,c00432da + c0045c5a: 00022597 auipc a1,0x22 + c0045c5e: a2e58593 addi a1,a1,-1490 # c0067688 + c0045c62: 850a mv a0,sp + c0045c64: 847fd0ef jal ra,c00434aa /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:1809 goto error; - c0045a98: bd8d j c004590a + c0045c68: bd8d j c0045ada -00000000c0045a9a : +00000000c0045c6a : lre_exec(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2421 starting position of the match and must be such as 0 <= cindex <= @@ -190034,103 +190232,103 @@ int lre_exec(uint8_t **capture, const uint8_t *bc_buf, const uint8_t *cbuf, int cindex, int clen, int cbuf_type, void *opaque) { - c0045a9a: 7175 addi sp,sp,-144 - c0045a9c: e122 sd s0,128(sp) - c0045a9e: fca6 sd s1,120(sp) - c0045aa0: 0900 addi s0,sp,144 - c0045aa2: f8ca sd s2,112(sp) - c0045aa4: f4ce sd s3,104(sp) - c0045aa6: f0d2 sd s4,96(sp) - c0045aa8: ecd6 sd s5,88(sp) - c0045aaa: e506 sd ra,136(sp) + c0045c6a: 7175 addi sp,sp,-144 + c0045c6c: e122 sd s0,128(sp) + c0045c6e: fca6 sd s1,120(sp) + c0045c70: 0900 addi s0,sp,144 + c0045c72: f8ca sd s2,112(sp) + c0045c74: f4ce sd s3,104(sp) + c0045c76: f0d2 sd s4,96(sp) + c0045c78: ecd6 sd s5,88(sp) + c0045c7a: e506 sd ra,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2426 REExecContext s_s, *s = &s_s; int re_flags, i, alloca_size, ret; StackInt *stack_buf; re_flags = bc_buf[RE_HEADER_FLAGS]; - c0045aac: 0005c883 lbu a7,0(a1) + c0045c7c: 0005c883 lbu a7,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2421 { - c0045ab0: 89be mv s3,a5 - c0045ab2: 8ab2 mv s5,a2 + c0045c80: 89be mv s3,a5 + c0045c82: 8ab2 mv s5,a2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2427 s->multi_line = (re_flags & LRE_FLAG_MULTILINE) != 0; - c0045ab4: 0028d79b srliw a5,a7,0x2 - c0045ab8: 8b85 andi a5,a5,1 - c0045aba: f8f42623 sw a5,-116(s0) + c0045c84: 0028d79b srliw a5,a7,0x2 + c0045c88: 8b85 andi a5,a5,1 + c0045c8a: f8f42623 sw a5,-116(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2428 s->ignore_case = (re_flags & LRE_FLAG_IGNORECASE) != 0; - c0045abe: 0018d79b srliw a5,a7,0x1 - c0045ac2: 8b85 andi a5,a5,1 - c0045ac4: f8f42823 sw a5,-112(s0) + c0045c8e: 0018d79b srliw a5,a7,0x1 + c0045c92: 8b85 andi a5,a5,1 + c0045c94: f8f42823 sw a5,-112(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2431 s->is_utf16 = (re_flags & LRE_FLAG_UTF16) != 0; s->capture_count = bc_buf[RE_HEADER_CAPTURE_COUNT]; s->stack_size_max = bc_buf[RE_HEADER_STACK_SIZE]; - c0045ac8: 0025c783 lbu a5,2(a1) + c0045c98: 0025c783 lbu a5,2(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2430 s->capture_count = bc_buf[RE_HEADER_CAPTURE_COUNT]; - c0045acc: 0015c603 lbu a2,1(a1) + c0045c9c: 0015c603 lbu a2,1(a1) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2421 { - c0045ad0: 8a36 mv s4,a3 + c0045ca0: 8a36 mv s4,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2433 s->cbuf = cbuf; s->cbuf_end = cbuf + (clen << cbuf_type); - c0045ad2: 0137173b sllw a4,a4,s3 - c0045ad6: 0108f693 andi a3,a7,16 - c0045ada: 9756 add a4,a4,s5 + c0045ca2: 0137173b sllw a4,a4,s3 + c0045ca6: 0108f693 andi a3,a7,16 + c0045caa: 9756 add a4,a4,s5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2429 s->is_utf16 = (re_flags & LRE_FLAG_UTF16) != 0; - c0045adc: 00d038b3 snez a7,a3 + c0045cac: 00d038b3 snez a7,a3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2431 s->stack_size_max = bc_buf[RE_HEADER_STACK_SIZE]; - c0045ae0: 0007849b sext.w s1,a5 + c0045cb0: 0007849b sext.w s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2433 s->cbuf_end = cbuf + (clen << cbuf_type); - c0045ae4: f6e43c23 sd a4,-136(s0) + c0045cb4: f6e43c23 sd a4,-136(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2429 s->is_utf16 = (re_flags & LRE_FLAG_UTF16) != 0; - c0045ae8: f9142a23 sw a7,-108(s0) + c0045cb8: f9142a23 sw a7,-108(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2430 s->capture_count = bc_buf[RE_HEADER_CAPTURE_COUNT]; - c0045aec: f8c42223 sw a2,-124(s0) + c0045cbc: f8c42223 sw a2,-124(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2431 s->stack_size_max = bc_buf[RE_HEADER_STACK_SIZE]; - c0045af0: f8942423 sw s1,-120(s0) + c0045cc0: f8942423 sw s1,-120(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2432 s->cbuf = cbuf; - c0045af4: f7543823 sd s5,-144(s0) + c0045cc4: f7543823 sd s5,-144(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2434 s->cbuf_type = cbuf_type; - c0045af8: f9342023 sw s3,-128(s0) + c0045cc8: f9342023 sw s3,-128(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2435 if (s->cbuf_type == 1 && s->is_utf16) - c0045afc: 4705 li a4,1 + c0045ccc: 4705 li a4,1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2421 { - c0045afe: 832a mv t1,a0 - c0045b00: 892e mv s2,a1 + c0045cce: 832a mv t1,a0 + c0045cd0: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2435 if (s->cbuf_type == 1 && s->is_utf16) - c0045b02: 00e99663 bne s3,a4,c0045b0e + c0045cd2: 00e99663 bne s3,a4,c0045cde /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2435 (discriminator 1) - c0045b06: c681 beqz a3,c0045b0e + c0045cd6: c681 beqz a3,c0045cde /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2436 s->cbuf_type = 2; - c0045b08: 4709 li a4,2 - c0045b0a: f8e42023 sw a4,-128(s0) + c0045cd8: 4709 li a4,2 + c0045cda: f8e42023 sw a4,-128(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2437 s->opaque = opaque; - c0045b0e: f9043c23 sd a6,-104(s0) + c0045cde: f9043c23 sd a6,-104(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2439 s->state_size = sizeof(REExecState) + - c0045b12: 0026081b addiw a6,a2,2 + c0045ce2: 0026081b addiw a6,a2,2 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2440 s->capture_count * sizeof(capture[0]) * 2 + - c0045b16: 0806 slli a6,a6,0x1 + c0045ce6: 0806 slli a6,a6,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2449 s->state_stack_size = 0; @@ -190138,85 +190336,85 @@ int lre_exec(uint8_t **capture, capture[i] = NULL; alloca_size = s->stack_size_max * sizeof(stack_buf[0]); stack_buf = alloca(alloca_size); - c0045b18: 048e slli s1,s1,0x3 + c0045ce8: 048e slli s1,s1,0x3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2440 s->capture_count * sizeof(capture[0]) * 2 + - c0045b1a: 983e add a6,a6,a5 + c0045cea: 983e add a6,a6,a5 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2447 capture[i] = NULL; - c0045b1c: 0016161b slliw a2,a2,0x1 + c0045cec: 0016161b slliw a2,a2,0x1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2449 stack_buf = alloca(alloca_size); - c0045b20: 04bd addi s1,s1,15 + c0045cf0: 04bd addi s1,s1,15 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2440 s->capture_count * sizeof(capture[0]) * 2 + - c0045b22: 080e slli a6,a6,0x3 + c0045cf2: 080e slli a6,a6,0x3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2447 capture[i] = NULL; - c0045b24: 851a mv a0,t1 - c0045b26: 060e slli a2,a2,0x3 - c0045b28: 4581 li a1,0 + c0045cf4: 851a mv a0,t1 + c0045cf6: 060e slli a2,a2,0x3 + c0045cf8: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2449 stack_buf = alloca(alloca_size); - c0045b2a: 8091 srli s1,s1,0x4 + c0045cfa: 8091 srli s1,s1,0x4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2439 s->state_size = sizeof(REExecState) + - c0045b2c: fb043023 sd a6,-96(s0) + c0045cfc: fb043023 sd a6,-96(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2442 s->state_stack = NULL; - c0045b30: fa043423 sd zero,-88(s0) + c0045d00: fa043423 sd zero,-88(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2443 s->state_stack_len = 0; - c0045b34: fa043c23 sd zero,-72(s0) + c0045d04: fa043c23 sd zero,-72(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2444 s->state_stack_size = 0; - c0045b38: fa043823 sd zero,-80(s0) + c0045d08: fa043823 sd zero,-80(s0) /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2449 stack_buf = alloca(alloca_size); - c0045b3c: 0492 slli s1,s1,0x4 + c0045d0c: 0492 slli s1,s1,0x4 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2447 capture[i] = NULL; - c0045b3e: 533100ef jal ra,c0056870 + c0045d0e: 533100ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2451 ret = lre_exec_backtrack(s, capture, stack_buf, 0, bc_buf + RE_HEADER_LEN, cbuf + (cindex << cbuf_type), FALSE); - c0045b42: 013a17bb sllw a5,s4,s3 + c0045d12: 013a17bb sllw a5,s4,s3 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2449 stack_buf = alloca(alloca_size); - c0045b46: 40910133 sub sp,sp,s1 + c0045d16: 40910133 sub sp,sp,s1 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2450 ret = lre_exec_backtrack(s, capture, stack_buf, 0, bc_buf + RE_HEADER_LEN, - c0045b4a: 97d6 add a5,a5,s5 - c0045b4c: 00790713 addi a4,s2,7 - c0045b50: 860a mv a2,sp - c0045b52: 85aa mv a1,a0 - c0045b54: 4801 li a6,0 - c0045b56: 4681 li a3,0 - c0045b58: f7040513 addi a0,s0,-144 - c0045b5c: ff6fd0ef jal ra,c0043352 - c0045b60: 84aa mv s1,a0 + c0045d1a: 97d6 add a5,a5,s5 + c0045d1c: 00790713 addi a4,s2,7 + c0045d20: 860a mv a2,sp + c0045d22: 85aa mv a1,a0 + c0045d24: 4801 li a6,0 + c0045d26: 4681 li a3,0 + c0045d28: f7040513 addi a0,s0,-144 + c0045d2c: ff6fd0ef jal ra,c0043522 + c0045d30: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2452 lre_realloc(s->opaque, s->state_stack, 0); - c0045b62: fa843583 ld a1,-88(s0) - c0045b66: f9843503 ld a0,-104(s0) - c0045b6a: 4601 li a2,0 - c0045b6c: bb4c50ef jal ra,c000af20 + c0045d32: fa843583 ld a1,-88(s0) + c0045d36: f9843503 ld a0,-104(s0) + c0045d3a: 4601 li a2,0 + c0045d3c: ad2c50ef jal ra,c000b00e /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2454 return ret; } - c0045b70: f7040113 addi sp,s0,-144 - c0045b74: 60aa ld ra,136(sp) - c0045b76: 0004851b sext.w a0,s1 - c0045b7a: 640a ld s0,128(sp) - c0045b7c: 74e6 ld s1,120(sp) - c0045b7e: 7946 ld s2,112(sp) - c0045b80: 79a6 ld s3,104(sp) - c0045b82: 7a06 ld s4,96(sp) - c0045b84: 6ae6 ld s5,88(sp) - c0045b86: 6149 addi sp,sp,144 - c0045b88: 8082 ret - -00000000c0045b8a : + c0045d40: f7040113 addi sp,s0,-144 + c0045d44: 60aa ld ra,136(sp) + c0045d46: 0004851b sext.w a0,s1 + c0045d4a: 640a ld s0,128(sp) + c0045d4c: 74e6 ld s1,120(sp) + c0045d4e: 7946 ld s2,112(sp) + c0045d50: 79a6 ld s3,104(sp) + c0045d52: 7a06 ld s4,96(sp) + c0045d54: 6ae6 ld s5,88(sp) + c0045d56: 6149 addi sp,sp,144 + c0045d58: 8082 ret + +00000000c0045d5a : lre_get_capture_count(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2459 @@ -190224,10 +190422,10 @@ int lre_get_capture_count(const uint8_t *bc_buf) { return bc_buf[RE_HEADER_CAPTURE_COUNT]; } - c0045b8a: 00154503 lbu a0,1(a0) - c0045b8e: 8082 ret + c0045d5a: 00154503 lbu a0,1(a0) + c0045d5e: 8082 ret -00000000c0045b90 : +00000000c0045d60 : lre_get_flags(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2464 @@ -190235,10 +190433,10 @@ int lre_get_flags(const uint8_t *bc_buf) { return bc_buf[RE_HEADER_FLAGS]; } - c0045b90: 00054503 lbu a0,0(a0) - c0045b94: 8082 ret + c0045d60: 00054503 lbu a0,0(a0) + c0045d64: 8082 ret -00000000c0045b96 : +00000000c0045d66 : lre_get_groupnames(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2471 /* Return NULL if no group names. Otherwise, return a pointer to @@ -190247,37 +190445,37 @@ const char *lre_get_groupnames(const uint8_t *bc_buf) { uint32_t re_bytecode_len; if ((lre_get_flags(bc_buf) & LRE_FLAG_NAMED_GROUPS) == 0) - c0045b96: 00050783 lb a5,0(a0) - c0045b9a: 0207d363 bgez a5,c0045bc0 + c0045d66: 00050783 lb a5,0(a0) + c0045d6a: 0207d363 bgez a5,c0045d90 get_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:170 return ((const struct packed_u32 *)tab)->v; - c0045b9e: 00454703 lbu a4,4(a0) - c0045ba2: 00354783 lbu a5,3(a0) - c0045ba6: 0722 slli a4,a4,0x8 - c0045ba8: 8f5d or a4,a4,a5 - c0045baa: 00554783 lbu a5,5(a0) - c0045bae: 07c2 slli a5,a5,0x10 - c0045bb0: 8f5d or a4,a4,a5 - c0045bb2: 00654783 lbu a5,6(a0) - c0045bb6: 07e2 slli a5,a5,0x18 + c0045d6e: 00454703 lbu a4,4(a0) + c0045d72: 00354783 lbu a5,3(a0) + c0045d76: 0722 slli a4,a4,0x8 + c0045d78: 8f5d or a4,a4,a5 + c0045d7a: 00554783 lbu a5,5(a0) + c0045d7e: 07c2 slli a5,a5,0x10 + c0045d80: 8f5d or a4,a4,a5 + c0045d82: 00654783 lbu a5,6(a0) + c0045d86: 07e2 slli a5,a5,0x18 lre_get_groupnames(): /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2474 return NULL; re_bytecode_len = get_u32(bc_buf + 3); return (const char *)(bc_buf + 7 + re_bytecode_len); - c0045bb8: 8fd9 or a5,a5,a4 - c0045bba: 079d addi a5,a5,7 - c0045bbc: 953e add a0,a0,a5 - c0045bbe: 8082 ret + c0045d88: 8fd9 or a5,a5,a4 + c0045d8a: 079d addi a5,a5,7 + c0045d8c: 953e add a0,a0,a5 + c0045d8e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2472 return NULL; - c0045bc0: 4501 li a0,0 + c0045d90: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libregexp.c:2475 } - c0045bc2: 8082 ret + c0045d92: 8082 ret -00000000c0045bc4 : +00000000c0045d94 : get_le24(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:268 static uint32_t get_le24(const uint8_t *ptr) @@ -190286,20 +190484,20 @@ static uint32_t get_le24(const uint8_t *ptr) return *(uint16_t *)ptr | (ptr[2] << 16); #else return ptr[0] | (ptr[1] << 8) | (ptr[2] << 16); - c0045bc4: 00154783 lbu a5,1(a0) - c0045bc8: 00254703 lbu a4,2(a0) - c0045bcc: 00054503 lbu a0,0(a0) - c0045bd0: 0087979b slliw a5,a5,0x8 - c0045bd4: 0107171b slliw a4,a4,0x10 - c0045bd8: 8fd9 or a5,a5,a4 - c0045bda: 8d5d or a0,a0,a5 + c0045d94: 00154783 lbu a5,1(a0) + c0045d98: 00254703 lbu a4,2(a0) + c0045d9c: 00054503 lbu a0,0(a0) + c0045da0: 0087979b slliw a5,a5,0x8 + c0045da4: 0107171b slliw a4,a4,0x10 + c0045da8: 8fd9 or a5,a5,a4 + c0045daa: 8d5d or a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:270 #endif } - c0045bdc: 2501 sext.w a0,a0 - c0045bde: 8082 ret + c0045dac: 2501 sext.w a0,a0 + c0045dae: 8082 ret -00000000c0045be0 : +00000000c0045db0 : cr_compress(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:434 static void cr_compress(CharRange *cr) @@ -190308,22 +190506,22 @@ static void cr_compress(CharRange *cr) uint32_t *pt; pt = cr->points; - c0045be0: 6518 ld a4,8(a0) + c0045db0: 6518 ld a4,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:435 len = cr->len; - c0045be2: 00052803 lw a6,0(a0) + c0045db2: 00052803 lw a6,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:438 i = 0; j = 0; k = 0; - c0045be6: 4601 li a2,0 + c0045db6: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:436 i = 0; - c0045be8: 4781 li a5,0 + c0045db8: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:439 while ((i + 1) < len) { - c0045bea: 0017869b addiw a3,a5,1 - c0045bee: 0106c463 blt a3,a6,c0045bf6 + c0045dba: 0017869b addiw a3,a5,1 + c0045dbe: 0106c463 blt a3,a6,c0045dc6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:454 pt[k + 1] = pt[j + 1]; k += 2; @@ -190331,57 +190529,57 @@ static void cr_compress(CharRange *cr) } } cr->len = k; - c0045bf2: c110 sw a2,0(a0) + c0045dc2: c110 sw a2,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:455 } - c0045bf4: 8082 ret + c0045dc4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:440 if (pt[i] == pt[i + 1]) { - c0045bf6: 00279593 slli a1,a5,0x2 - c0045bfa: 068a slli a3,a3,0x2 - c0045bfc: 95ba add a1,a1,a4 - c0045bfe: 96ba add a3,a3,a4 - c0045c00: 0005a883 lw a7,0(a1) - c0045c04: 4294 lw a3,0(a3) - c0045c06: 01169463 bne a3,a7,c0045c0e + c0045dc6: 00279593 slli a1,a5,0x2 + c0045dca: 068a slli a3,a3,0x2 + c0045dcc: 95ba add a1,a1,a4 + c0045dce: 96ba add a3,a3,a4 + c0045dd0: 0005a883 lw a7,0(a1) + c0045dd4: 4294 lw a3,0(a3) + c0045dd6: 01169463 bne a3,a7,c0045dde /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:442 i += 2; - c0045c0a: 2789 addiw a5,a5,2 - c0045c0c: bff9 j c0045bea + c0045dda: 2789 addiw a5,a5,2 + c0045ddc: bff9 j c0045dba /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:445 while ((j + 3) < len && pt[j + 1] == pt[j + 2]) - c0045c0e: 0017869b addiw a3,a5,1 - c0045c12: 068a slli a3,a3,0x2 - c0045c14: 0037859b addiw a1,a5,3 - c0045c18: 96ba add a3,a3,a4 - c0045c1a: 2789 addiw a5,a5,2 - c0045c1c: 0105da63 bge a1,a6,c0045c30 + c0045dde: 0017869b addiw a3,a5,1 + c0045de2: 068a slli a3,a3,0x2 + c0045de4: 0037859b addiw a1,a5,3 + c0045de8: 96ba add a3,a3,a4 + c0045dea: 2789 addiw a5,a5,2 + c0045dec: 0105da63 bge a1,a6,c0045e00 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:445 (discriminator 1) - c0045c20: 00279593 slli a1,a5,0x2 - c0045c24: 95ba add a1,a1,a4 - c0045c26: 0006a303 lw t1,0(a3) - c0045c2a: 418c lw a1,0(a1) - c0045c2c: feb301e3 beq t1,a1,c0045c0e + c0045df0: 00279593 slli a1,a5,0x2 + c0045df4: 95ba add a1,a1,a4 + c0045df6: 0006a303 lw t1,0(a3) + c0045dfa: 418c lw a1,0(a1) + c0045dfc: feb301e3 beq t1,a1,c0045dde /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:448 pt[k] = pt[i]; - c0045c30: 00261593 slli a1,a2,0x2 - c0045c34: 95ba add a1,a1,a4 - c0045c36: 0115a023 sw a7,0(a1) + c0045e00: 00261593 slli a1,a2,0x2 + c0045e04: 95ba add a1,a1,a4 + c0045e06: 0115a023 sw a7,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:449 pt[k + 1] = pt[j + 1]; - c0045c3a: 428c lw a1,0(a3) - c0045c3c: 0016069b addiw a3,a2,1 - c0045c40: 068a slli a3,a3,0x2 - c0045c42: 96ba add a3,a3,a4 - c0045c44: c28c sw a1,0(a3) + c0045e0a: 428c lw a1,0(a3) + c0045e0c: 0016069b addiw a3,a2,1 + c0045e10: 068a slli a3,a3,0x2 + c0045e12: 96ba add a3,a3,a4 + c0045e14: c28c sw a1,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:450 k += 2; - c0045c46: 2609 addiw a2,a2,2 + c0045e16: 2609 addiw a2,a2,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:451 i = j + 2; - c0045c48: b74d j c0045bea + c0045e18: b74d j c0045dba -00000000c0045c4a : +00000000c0045e1a : point_cmp(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1345 return 0; @@ -190390,3025 +190588,3025 @@ point_cmp(): static int point_cmp(const void *p1, const void *p2, void *arg) { uint32_t v1 = *(uint32_t *)p1; - c0045c4a: 411c lw a5,0(a0) + c0045e1a: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1346 uint32_t v2 = *(uint32_t *)p2; - c0045c4c: 4198 lw a4,0(a1) + c0045e1c: 4198 lw a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1347 return (v1 > v2) - (v1 < v2); - c0045c4e: 00f73533 sltu a0,a4,a5 - c0045c52: 00e7b7b3 sltu a5,a5,a4 + c0045e1e: 00f73533 sltu a0,a4,a5 + c0045e22: 00e7b7b3 sltu a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1348 } - c0045c56: 9d1d subw a0,a0,a5 - c0045c58: 8082 ret + c0045e26: 9d1d subw a0,a0,a5 + c0045e28: 8082 ret -00000000c0045c5a : +00000000c0045e2a : cr_default_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:385 { - c0045c5a: 852e mv a0,a1 + c0045e2a: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:386 return realloc(ptr, size); - c0045c5c: 85b2 mv a1,a2 - c0045c5e: 1fa0d06f j c0052e58 + c0045e2c: 85b2 mv a1,a2 + c0045e2e: 1fa0d06f j c0053028 -00000000c0045c62 : +00000000c0045e32 : unicode_find_name(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1032 { - c0045c62: 7139 addi sp,sp,-64 - c0045c64: f822 sd s0,48(sp) - c0045c66: 842a mv s0,a0 + c0045e32: 7139 addi sp,sp,-64 + c0045e34: f822 sd s0,48(sp) + c0045e36: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1039 name_len = strlen(name); - c0045c68: 852e mv a0,a1 + c0045e38: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1032 { - c0045c6a: ec4e sd s3,24(sp) - c0045c6c: e852 sd s4,16(sp) - c0045c6e: e456 sd s5,8(sp) - c0045c70: fc06 sd ra,56(sp) - c0045c72: f426 sd s1,40(sp) - c0045c74: f04a sd s2,32(sp) - c0045c76: 8a2e mv s4,a1 + c0045e3a: ec4e sd s3,24(sp) + c0045e3c: e852 sd s4,16(sp) + c0045e3e: e456 sd s5,8(sp) + c0045e40: fc06 sd ra,56(sp) + c0045e42: f426 sd s1,40(sp) + c0045e44: f04a sd s2,32(sp) + c0045e46: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1039 name_len = strlen(name); - c0045c78: 539100ef jal ra,c00569b0 - c0045c7c: 8aaa mv s5,a0 + c0045e48: 539100ef jal ra,c0056b80 + c0045e4c: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1038 pos = 0; - c0045c7e: 4981 li s3,0 + c0045e4e: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1040 while (*p) { - c0045c80: 00044783 lbu a5,0(s0) - c0045c84: ef81 bnez a5,c0045c9c + c0045e50: 00044783 lbu a5,0(s0) + c0045e54: ef81 bnez a5,c0045e6c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1055 return -1; - c0045c86: 59fd li s3,-1 + c0045e56: 59fd li s3,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1056 } - c0045c88: 70e2 ld ra,56(sp) - c0045c8a: 7442 ld s0,48(sp) - c0045c8c: 74a2 ld s1,40(sp) - c0045c8e: 7902 ld s2,32(sp) - c0045c90: 6a42 ld s4,16(sp) - c0045c92: 6aa2 ld s5,8(sp) - c0045c94: 854e mv a0,s3 - c0045c96: 69e2 ld s3,24(sp) - c0045c98: 6121 addi sp,sp,64 - c0045c9a: 8082 ret + c0045e58: 70e2 ld ra,56(sp) + c0045e5a: 7442 ld s0,48(sp) + c0045e5c: 74a2 ld s1,40(sp) + c0045e5e: 7902 ld s2,32(sp) + c0045e60: 6a42 ld s4,16(sp) + c0045e62: 6aa2 ld s5,8(sp) + c0045e64: 854e mv a0,s3 + c0045e66: 69e2 ld s3,24(sp) + c0045e68: 6121 addi sp,sp,64 + c0045e6a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1042 r = strchr(p, ','); - c0045c9c: 02c00593 li a1,44 - c0045ca0: 8522 mv a0,s0 - c0045ca2: 49b100ef jal ra,c005693c - c0045ca6: 892a mv s2,a0 + c0045e6c: 02c00593 li a1,44 + c0045e70: 8522 mv a0,s0 + c0045e72: 49b100ef jal ra,c0056b0c + c0045e76: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1046 len = r - p; - c0045ca8: 408504b3 sub s1,a0,s0 + c0045e78: 408504b3 sub s1,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1043 if (!r) - c0045cac: e509 bnez a0,c0045cb6 + c0045e7c: e509 bnez a0,c0045e86 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1044 len = strlen(p); - c0045cae: 8522 mv a0,s0 - c0045cb0: 501100ef jal ra,c00569b0 - c0045cb4: 84aa mv s1,a0 + c0045e7e: 8522 mv a0,s0 + c0045e80: 501100ef jal ra,c0056b80 + c0045e84: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1047 if (len == name_len && !memcmp(p, name, name_len)) - c0045cb6: 01549863 bne s1,s5,c0045cc6 + c0045e86: 01549863 bne s1,s5,c0045e96 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1047 (discriminator 1) - c0045cba: 8626 mv a2,s1 - c0045cbc: 85d2 mv a1,s4 - c0045cbe: 8522 mv a0,s0 - c0045cc0: 343100ef jal ra,c0056802 - c0045cc4: d171 beqz a0,c0045c88 + c0045e8a: 8626 mv a2,s1 + c0045e8c: 85d2 mv a1,s4 + c0045e8e: 8522 mv a0,s0 + c0045e90: 343100ef jal ra,c00569d2 + c0045e94: d171 beqz a0,c0045e58 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1049 p += len + 1; - c0045cc6: 0485 addi s1,s1,1 - c0045cc8: 9426 add s0,s0,s1 + c0045e96: 0485 addi s1,s1,1 + c0045e98: 9426 add s0,s0,s1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1050 if (!r) - c0045cca: fc0919e3 bnez s2,c0045c9c + c0045e9a: fc0919e3 bnez s2,c0045e6c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1053 pos++; - c0045cce: 2985 addiw s3,s3,1 - c0045cd0: bf45 j c0045c80 + c0045e9e: 2985 addiw s3,s3,1 + c0045ea0: bf45 j c0045e50 -00000000c0045cd2 : +00000000c0045ea2 : get_index_pos(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:277 { - c0045cd2: 711d addi sp,sp,-96 - c0045cd4: fc4e sd s3,56(sp) - c0045cd6: 89aa mv s3,a0 + c0045ea2: 711d addi sp,sp,-96 + c0045ea4: fc4e sd s3,56(sp) + c0045ea6: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:282 v = get_le24(index_table); - c0045cd8: 8532 mv a0,a2 + c0045ea8: 8532 mv a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:277 { - c0045cda: e8a2 sd s0,80(sp) - c0045cdc: e4a6 sd s1,72(sp) - c0045cde: e0ca sd s2,64(sp) - c0045ce0: f852 sd s4,48(sp) - c0045ce2: ec86 sd ra,88(sp) - c0045ce4: f456 sd s5,40(sp) - c0045ce6: f05a sd s6,32(sp) - c0045ce8: ec5e sd s7,24(sp) - c0045cea: e862 sd s8,16(sp) - c0045cec: e466 sd s9,8(sp) - c0045cee: 892e mv s2,a1 - c0045cf0: 84b2 mv s1,a2 - c0045cf2: 8436 mv s0,a3 + c0045eaa: e8a2 sd s0,80(sp) + c0045eac: e4a6 sd s1,72(sp) + c0045eae: e0ca sd s2,64(sp) + c0045eb0: f852 sd s4,48(sp) + c0045eb2: ec86 sd ra,88(sp) + c0045eb4: f456 sd s5,40(sp) + c0045eb6: f05a sd s6,32(sp) + c0045eb8: ec5e sd s7,24(sp) + c0045eba: e862 sd s8,16(sp) + c0045ebc: e466 sd s9,8(sp) + c0045ebe: 892e mv s2,a1 + c0045ec0: 84b2 mv s1,a2 + c0045ec2: 8436 mv s0,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:283 code = v & ((1 << 21) - 1); - c0045cf4: 00200a37 lui s4,0x200 + c0045ec4: 00200a37 lui s4,0x200 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:282 v = get_le24(index_table); - c0045cf8: ecdff0ef jal ra,c0045bc4 - c0045cfc: 2501 sext.w a0,a0 + c0045ec8: ecdff0ef jal ra,c0045d94 + c0045ecc: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:283 code = v & ((1 << 21) - 1); - c0045cfe: 1a7d addi s4,s4,-1 + c0045ece: 1a7d addi s4,s4,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:284 if (c < code) { - c0045d00: 01457533 and a0,a0,s4 - c0045d04: 02a97263 bgeu s2,a0,c0045d28 + c0045ed0: 01457533 and a0,a0,s4 + c0045ed4: 02a97263 bgeu s2,a0,c0045ef8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:285 *pcode = 0; - c0045d08: 0009a023 sw zero,0(s3) + c0045ed8: 0009a023 sw zero,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:286 return 0; - c0045d0c: 4501 li a0,0 + c0045edc: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:306 } - c0045d0e: 60e6 ld ra,88(sp) - c0045d10: 6446 ld s0,80(sp) - c0045d12: 64a6 ld s1,72(sp) - c0045d14: 6906 ld s2,64(sp) - c0045d16: 79e2 ld s3,56(sp) - c0045d18: 7a42 ld s4,48(sp) - c0045d1a: 7aa2 ld s5,40(sp) - c0045d1c: 7b02 ld s6,32(sp) - c0045d1e: 6be2 ld s7,24(sp) - c0045d20: 6c42 ld s8,16(sp) - c0045d22: 6ca2 ld s9,8(sp) - c0045d24: 6125 addi sp,sp,96 - c0045d26: 8082 ret + c0045ede: 60e6 ld ra,88(sp) + c0045ee0: 6446 ld s0,80(sp) + c0045ee2: 64a6 ld s1,72(sp) + c0045ee4: 6906 ld s2,64(sp) + c0045ee6: 79e2 ld s3,56(sp) + c0045ee8: 7a42 ld s4,48(sp) + c0045eea: 7aa2 ld s5,40(sp) + c0045eec: 7b02 ld s6,32(sp) + c0045eee: 6be2 ld s7,24(sp) + c0045ef0: 6c42 ld s8,16(sp) + c0045ef2: 6ca2 ld s9,8(sp) + c0045ef4: 6125 addi sp,sp,96 + c0045ef6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:288 idx_max = index_table_len - 1; - c0045d28: fff40a9b addiw s5,s0,-1 + c0045ef8: fff40a9b addiw s5,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:289 code = get_le24(index_table + idx_max * 3); - c0045d2c: 450d li a0,3 - c0045d2e: 0355053b mulw a0,a0,s5 - c0045d32: 9526 add a0,a0,s1 - c0045d34: e91ff0ef jal ra,c0045bc4 - c0045d38: 0005079b sext.w a5,a0 + c0045efc: 450d li a0,3 + c0045efe: 0355053b mulw a0,a0,s5 + c0045f02: 9526 add a0,a0,s1 + c0045f04: e91ff0ef jal ra,c0045d94 + c0045f08: 0005079b sext.w a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:291 return -1; - c0045d3c: 557d li a0,-1 + c0045f0c: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:290 if (c >= code) - c0045d3e: fcf978e3 bgeu s2,a5,c0045d0e + c0045f0e: fcf978e3 bgeu s2,a5,c0045ede /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:281 idx_min = 0; - c0045d42: 4401 li s0,0 + c0045f12: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:293 while ((idx_max - idx_min) > 1) { - c0045d44: 4b85 li s7,1 + c0045f14: 4b85 li s7,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:294 idx = (idx_max + idx_min) / 2; - c0045d46: 4c09 li s8,2 + c0045f16: 4c09 li s8,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:295 v = get_le24(index_table + idx * 3); - c0045d48: 4c8d li s9,3 + c0045f18: 4c8d li s9,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:293 while ((idx_max - idx_min) > 1) { - c0045d4a: 408a87bb subw a5,s5,s0 - c0045d4e: 02fbc463 blt s7,a5,c0045d76 + c0045f1a: 408a87bb subw a5,s5,s0 + c0045f1e: 02fbc463 blt s7,a5,c0045f46 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:303 v = get_le24(index_table + idx_min * 3); - c0045d52: 450d li a0,3 - c0045d54: 0285053b mulw a0,a0,s0 + c0045f22: 450d li a0,3 + c0045f24: 0285053b mulw a0,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:305 return (idx_min + 1) * UNICODE_INDEX_BLOCK_LEN + (v >> 21); - c0045d58: 2405 addiw s0,s0,1 - c0045d5a: 0054141b slliw s0,s0,0x5 + c0045f28: 2405 addiw s0,s0,1 + c0045f2a: 0054141b slliw s0,s0,0x5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:303 v = get_le24(index_table + idx_min * 3); - c0045d5e: 9526 add a0,a0,s1 - c0045d60: e65ff0ef jal ra,c0045bc4 + c0045f2e: 9526 add a0,a0,s1 + c0045f30: e65ff0ef jal ra,c0045d94 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:304 *pcode = v & ((1 << 21) - 1); - c0045d64: 02b51793 slli a5,a0,0x2b - c0045d68: 93ad srli a5,a5,0x2b + c0045f34: 02b51793 slli a5,a0,0x2b + c0045f38: 93ad srli a5,a5,0x2b /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:305 return (idx_min + 1) * UNICODE_INDEX_BLOCK_LEN + (v >> 21); - c0045d6a: 0155551b srliw a0,a0,0x15 + c0045f3a: 0155551b srliw a0,a0,0x15 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:304 *pcode = v & ((1 << 21) - 1); - c0045d6e: 00f9a023 sw a5,0(s3) + c0045f3e: 00f9a023 sw a5,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:305 return (idx_min + 1) * UNICODE_INDEX_BLOCK_LEN + (v >> 21); - c0045d72: 9d21 addw a0,a0,s0 - c0045d74: bf69 j c0045d0e + c0045f42: 9d21 addw a0,a0,s0 + c0045f44: bf69 j c0045ede /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:294 idx = (idx_max + idx_min) / 2; - c0045d76: 008a87bb addw a5,s5,s0 - c0045d7a: 0387cb3b divw s6,a5,s8 + c0045f46: 008a87bb addw a5,s5,s0 + c0045f4a: 0387cb3b divw s6,a5,s8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:295 v = get_le24(index_table + idx * 3); - c0045d7e: 036c87bb mulw a5,s9,s6 - c0045d82: 00f48533 add a0,s1,a5 - c0045d86: e3fff0ef jal ra,c0045bc4 - c0045d8a: 0005079b sext.w a5,a0 + c0045f4e: 036c87bb mulw a5,s9,s6 + c0045f52: 00f48533 add a0,s1,a5 + c0045f56: e3fff0ef jal ra,c0045d94 + c0045f5a: 0005079b sext.w a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:297 if (c < code) { - c0045d8e: 0147f7b3 and a5,a5,s4 - c0045d92: 00f96463 bltu s2,a5,c0045d9a + c0045f5e: 0147f7b3 and a5,a5,s4 + c0045f62: 00f96463 bltu s2,a5,c0045f6a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:294 idx = (idx_max + idx_min) / 2; - c0045d96: 845a mv s0,s6 - c0045d98: bf4d j c0045d4a - c0045d9a: 8ada mv s5,s6 - c0045d9c: b77d j c0045d4a + c0045f66: 845a mv s0,s6 + c0045f68: bf4d j c0045f1a + c0045f6a: 8ada mv s5,s6 + c0045f6c: b77d j c0045f1a -00000000c0045d9e : +00000000c0045f6e : lre_is_in_table(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:310 { - c0045d9e: 7179 addi sp,sp,-48 - c0045da0: f022 sd s0,32(sp) - c0045da2: ec26 sd s1,24(sp) - c0045da4: 842e mv s0,a1 - c0045da6: 84aa mv s1,a0 + c0045f6e: 7179 addi sp,sp,-48 + c0045f70: f022 sd s0,32(sp) + c0045f72: ec26 sd s1,24(sp) + c0045f74: 842e mv s0,a1 + c0045f76: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:315 pos = get_index_pos(&code, c, index_table, index_table_len); - c0045da8: 85aa mv a1,a0 - c0045daa: 0068 addi a0,sp,12 + c0045f78: 85aa mv a1,a0 + c0045f7a: 0068 addi a0,sp,12 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:310 { - c0045dac: f406 sd ra,40(sp) + c0045f7c: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:315 pos = get_index_pos(&code, c, index_table, index_table_len); - c0045dae: f25ff0ef jal ra,c0045cd2 + c0045f7e: f25ff0ef jal ra,c0045ea2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:316 if (pos < 0) - c0045db2: 0a054363 bltz a0,c0045e58 + c0045f82: 0a054363 bltz a0,c0046028 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:318 p = table + pos; - c0045db6: 4732 lw a4,12(sp) - c0045db8: 00a40633 add a2,s0,a0 + c0045f86: 4732 lw a4,12(sp) + c0045f88: 00a40633 add a2,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:319 bit = 0; - c0045dbc: 4801 li a6,0 + c0045f8c: 4801 li a6,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:322 if (b < 64) { - c0045dbe: 03f00513 li a0,63 + c0045f8e: 03f00513 li a0,63 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:328 } else if (b >= 0x80) { - c0045dc2: 07f00313 li t1,127 + c0045f92: 07f00313 li t1,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:330 } else if (b < 0x60) { - c0045dc6: 05f00e13 li t3,95 + c0045f96: 05f00e13 li t3,95 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:321 b = *p++; - c0045dca: 00064683 lbu a3,0(a2) - c0045dce: 00160593 addi a1,a2,1 - c0045dd2: 0006879b sext.w a5,a3 + c0045f9a: 00064683 lbu a3,0(a2) + c0045f9e: 00160593 addi a1,a2,1 + c0045fa2: 0006879b sext.w a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:322 if (b < 64) { - c0045dd6: 02d56c63 bltu a0,a3,c0045e0e + c0045fa6: 02d56c63 bltu a0,a3,c0045fde /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:323 code += (b >> 3) + 1; - c0045dda: 0037d79b srliw a5,a5,0x3 - c0045dde: 2705 addiw a4,a4,1 - c0045de0: 9f3d addw a4,a4,a5 - c0045de2: 87ba mv a5,a4 + c0045faa: 0037d79b srliw a5,a5,0x3 + c0045fae: 2705 addiw a4,a4,1 + c0045fb0: 9f3d addw a4,a4,a5 + c0045fb2: 87ba mv a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:324 if (c < code) - c0045de4: 00e4f963 bgeu s1,a4,c0045df6 + c0045fb4: 00e4f963 bgeu s1,a4,c0045fc6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:338 return bit; - c0045de8: 0008051b sext.w a0,a6 + c0045fb8: 0008051b sext.w a0,a6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:341 } - c0045dec: 70a2 ld ra,40(sp) - c0045dee: 7402 ld s0,32(sp) - c0045df0: 64e2 ld s1,24(sp) - c0045df2: 6145 addi sp,sp,48 - c0045df4: 8082 ret + c0045fbc: 70a2 ld ra,40(sp) + c0045fbe: 7402 ld s0,32(sp) + c0045fc0: 64e2 ld s1,24(sp) + c0045fc2: 6145 addi sp,sp,48 + c0045fc4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:327 code += (b & 7) + 1; - c0045df6: 0076f713 andi a4,a3,7 + c0045fc6: 0076f713 andi a4,a3,7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:326 bit ^= 1; - c0045dfa: 00184813 xori a6,a6,1 + c0045fca: 00184813 xori a6,a6,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:327 code += (b & 7) + 1; - c0045dfe: 2705 addiw a4,a4,1 + c0045fce: 2705 addiw a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:329 code += b - 0x80 + 1; - c0045e00: 9f3d addw a4,a4,a5 + c0045fd0: 9f3d addw a4,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:337 if (c < code) - c0045e02: fee4e3e3 bltu s1,a4,c0045de8 + c0045fd2: fee4e3e3 bltu s1,a4,c0045fb8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:339 bit ^= 1; - c0045e06: 00184813 xori a6,a6,1 + c0045fd6: 00184813 xori a6,a6,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:321 b = *p++; - c0045e0a: 862e mv a2,a1 - c0045e0c: bf7d j c0045dca + c0045fda: 862e mv a2,a1 + c0045fdc: bf7d j c0045f9a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:328 } else if (b >= 0x80) { - c0045e0e: 00f37563 bgeu t1,a5,c0045e18 + c0045fde: 00f37563 bgeu t1,a5,c0045fe8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:329 code += b - 0x80 + 1; - c0045e12: f817071b addiw a4,a4,-127 - c0045e16: b7ed j c0045e00 + c0045fe2: f817071b addiw a4,a4,-127 + c0045fe6: b7ed j c0045fd0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:331 code += (((b - 0x40) << 8) | p[0]) + 1; - c0045e18: 00164883 lbu a7,1(a2) - c0045e1c: 0017069b addiw a3,a4,1 + c0045fe8: 00164883 lbu a7,1(a2) + c0045fec: 0017069b addiw a3,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:330 } else if (b < 0x60) { - c0045e20: 00fe6c63 bltu t3,a5,c0045e38 + c0045ff0: 00fe6c63 bltu t3,a5,c0046008 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:331 code += (((b - 0x40) << 8) | p[0]) + 1; - c0045e24: fc07871b addiw a4,a5,-64 - c0045e28: 0087171b slliw a4,a4,0x8 - c0045e2c: 00e8e733 or a4,a7,a4 - c0045e30: 9f35 addw a4,a4,a3 + c0045ff4: fc07871b addiw a4,a5,-64 + c0045ff8: 0087171b slliw a4,a4,0x8 + c0045ffc: 00e8e733 or a4,a7,a4 + c0046000: 9f35 addw a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:332 p++; - c0045e32: 00260593 addi a1,a2,2 - c0045e36: b7f1 j c0045e02 + c0046002: 00260593 addi a1,a2,2 + c0046006: b7f1 j c0045fd2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:334 code += (((b - 0x60) << 16) | (p[0] << 8) | p[1]) + 1; - c0045e38: 00264703 lbu a4,2(a2) - c0045e3c: fa07879b addiw a5,a5,-96 - c0045e40: 0107979b slliw a5,a5,0x10 - c0045e44: 0088989b slliw a7,a7,0x8 - c0045e48: 0117e7b3 or a5,a5,a7 - c0045e4c: 8fd9 or a5,a5,a4 - c0045e4e: 00f6873b addw a4,a3,a5 + c0046008: 00264703 lbu a4,2(a2) + c004600c: fa07879b addiw a5,a5,-96 + c0046010: 0107979b slliw a5,a5,0x10 + c0046014: 0088989b slliw a7,a7,0x8 + c0046018: 0117e7b3 or a5,a5,a7 + c004601c: 8fd9 or a5,a5,a4 + c004601e: 00f6873b addw a4,a3,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:335 p += 2; - c0045e52: 00360593 addi a1,a2,3 - c0045e56: b775 j c0045e02 + c0046022: 00360593 addi a1,a2,3 + c0046026: b775 j c0045fd2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:317 return FALSE; /* outside the table */ - c0045e58: 4501 li a0,0 - c0045e5a: bf49 j c0045dec + c0046028: 4501 li a0,0 + c004602a: bf49 j c0045fbc -00000000c0045e5c : +00000000c004602c : unicode_get_cc(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:826 { - c0045e5c: 1101 addi sp,sp,-32 - c0045e5e: e822 sd s0,16(sp) + c004602c: 1101 addi sp,sp,-32 + c004602e: e822 sd s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:831 pos = get_index_pos(&code, c, - c0045e60: 85aa mv a1,a0 + c0046030: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:826 { - c0045e62: 842a mv s0,a0 + c0046032: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:831 pos = get_index_pos(&code, c, - c0045e64: 46f5 li a3,29 - c0045e66: 00022617 auipc a2,0x22 - c0045e6a: faa60613 addi a2,a2,-86 # c0067e10 - c0045e6e: 0068 addi a0,sp,12 + c0046034: 46f5 li a3,29 + c0046036: 00022617 auipc a2,0x22 + c004603a: 03a60613 addi a2,a2,58 # c0068070 + c004603e: 0068 addi a0,sp,12 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:826 { - c0045e70: ec06 sd ra,24(sp) + c0046040: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:831 pos = get_index_pos(&code, c, - c0045e72: e61ff0ef jal ra,c0045cd2 + c0046042: e61ff0ef jal ra,c0045ea2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:833 if (pos < 0) - c0045e76: 0a054e63 bltz a0,c0045f32 + c0046046: 0a054e63 bltz a0,c0046102 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:835 p = unicode_cc_table + pos; - c0045e7a: 00022717 auipc a4,0x22 - c0045e7e: fee70713 addi a4,a4,-18 # c0067e68 - c0045e82: 972a add a4,a4,a0 - c0045e84: 4532 lw a0,12(sp) + c004604a: 00022717 auipc a4,0x22 + c004604e: 07e70713 addi a4,a4,126 # c00680c8 + c0046052: 972a add a4,a4,a0 + c0046054: 4532 lw a0,12(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:849 n += 48 + (1 << 11); - c0045e86: 6585 lui a1,0x1 + c0046056: 6585 lui a1,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:840 if (n < 48) { - c0045e88: 02f00893 li a7,47 + c0046058: 02f00893 li a7,47 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:841 } else if (n < 56) { - c0045e8c: 03700e13 li t3,55 + c004605c: 03700e13 li t3,55 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:849 n += 48 + (1 << 11); - c0045e90: 8305859b addiw a1,a1,-2000 + c0046060: 8305859b addiw a1,a1,-2000 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:851 if (type <= 1) - c0045e94: 4305 li t1,1 + c0046064: 4305 li t1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:837 b = *p++; - c0045e96: 00074783 lbu a5,0(a4) + c0046066: 00074783 lbu a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:838 type = b >> 6; - c0045e9a: 03f7f693 andi a3,a5,63 - c0045e9e: 0067d613 srli a2,a5,0x6 + c004606a: 03f7f693 andi a3,a5,63 + c004606e: 0067d613 srli a2,a5,0x6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:839 n = b & 0x3f; - c0045ea2: 87b6 mv a5,a3 + c0046072: 87b6 mv a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:840 if (n < 48) { - c0045ea4: 02d8ed63 bltu a7,a3,c0045ede + c0046074: 02d8ed63 bltu a7,a3,c00460ae /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:837 b = *p++; - c0045ea8: 0705 addi a4,a4,1 + c0046078: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:851 if (type <= 1) - c0045eaa: 00c36363 bltu t1,a2,c0045eb0 + c004607a: 00c36363 bltu t1,a2,c0046080 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:852 p++; - c0045eae: 0705 addi a4,a4,1 + c004607e: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:853 c1 = code + n + 1; - c0045eb0: 2785 addiw a5,a5,1 - c0045eb2: 9fa9 addw a5,a5,a0 + c0046080: 2785 addiw a5,a5,1 + c0046082: 9fa9 addw a5,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:854 if (c < c1) { - c0045eb4: 02f47363 bgeu s0,a5,c0045eda + c0046084: 02f47363 bgeu s0,a5,c00460aa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:855 switch(type) { - c0045eb8: 4785 li a5,1 - c0045eba: 06f60663 beq a2,a5,c0045f26 - c0045ebe: 4789 li a5,2 + c0046088: 4785 li a5,1 + c004608a: 06f60663 beq a2,a5,c00460f6 + c004608e: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:863 cc = 0; - c0045ec0: 4501 li a0,0 + c0046090: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:855 switch(type) { - c0045ec2: 00f60763 beq a2,a5,c0045ed0 - c0045ec6: 0e600513 li a0,230 - c0045eca: e219 bnez a2,c0045ed0 + c0046092: 00f60763 beq a2,a5,c00460a0 + c0046096: 0e600513 li a0,230 + c004609a: e219 bnez a2,c00460a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:857 cc = p[-1]; - c0045ecc: fff74503 lbu a0,-1(a4) + c004609c: fff74503 lbu a0,-1(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:870 return cc; - c0045ed0: 2501 sext.w a0,a0 + c00460a0: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:874 } - c0045ed2: 60e2 ld ra,24(sp) - c0045ed4: 6442 ld s0,16(sp) - c0045ed6: 6105 addi sp,sp,32 - c0045ed8: 8082 ret - c0045eda: 853e mv a0,a5 - c0045edc: bf6d j c0045e96 + c00460a2: 60e2 ld ra,24(sp) + c00460a4: 6442 ld s0,16(sp) + c00460a6: 6105 addi sp,sp,32 + c00460a8: 8082 ret + c00460aa: 853e mv a0,a5 + c00460ac: bf6d j c0046066 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:843 n |= *p++; - c0045ede: 00174803 lbu a6,1(a4) + c00460ae: 00174803 lbu a6,1(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:841 } else if (n < 56) { - c0045ee2: 00de6c63 bltu t3,a3,c0045efa + c00460b2: 00de6c63 bltu t3,a3,c00460ca /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:842 n = (n - 48) << 8; - c0045ee6: fd06879b addiw a5,a3,-48 - c0045eea: 0087979b slliw a5,a5,0x8 + c00460b6: fd06879b addiw a5,a3,-48 + c00460ba: 0087979b slliw a5,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:843 n |= *p++; - c0045eee: 00f867b3 or a5,a6,a5 - c0045ef2: 0709 addi a4,a4,2 + c00460be: 00f867b3 or a5,a6,a5 + c00460c2: 0709 addi a4,a4,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:844 n += 48; - c0045ef4: 0307879b addiw a5,a5,48 - c0045ef8: bf4d j c0045eaa + c00460c4: 0307879b addiw a5,a5,48 + c00460c8: bf4d j c004607a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:846 n = (n - 56) << 8; - c0045efa: fc86879b addiw a5,a3,-56 - c0045efe: 00274683 lbu a3,2(a4) - c0045f02: 0087979b slliw a5,a5,0x8 + c00460ca: fc86879b addiw a5,a3,-56 + c00460ce: 00274683 lbu a3,2(a4) + c00460d2: 0087979b slliw a5,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:848 n |= *p++; - c0045f06: 070d addi a4,a4,3 - c0045f08: 06a2 slli a3,a3,0x8 - c0045f0a: 0106e6b3 or a3,a3,a6 - c0045f0e: 0086981b slliw a6,a3,0x8 - c0045f12: 82a1 srli a3,a3,0x8 - c0045f14: 0106e6b3 or a3,a3,a6 - c0045f18: 0106969b slliw a3,a3,0x10 - c0045f1c: 0106d69b srliw a3,a3,0x10 - c0045f20: 8fd5 or a5,a5,a3 + c00460d6: 070d addi a4,a4,3 + c00460d8: 06a2 slli a3,a3,0x8 + c00460da: 0106e6b3 or a3,a3,a6 + c00460de: 0086981b slliw a6,a3,0x8 + c00460e2: 82a1 srli a3,a3,0x8 + c00460e4: 0106e6b3 or a3,a3,a6 + c00460e8: 0106969b slliw a3,a3,0x10 + c00460ec: 0106d69b srliw a3,a3,0x10 + c00460f0: 8fd5 or a5,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:849 n += 48 + (1 << 11); - c0045f22: 9fad addw a5,a5,a1 - c0045f24: b759 j c0045eaa + c00460f2: 9fad addw a5,a5,a1 + c00460f4: b759 j c004607a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:860 cc = p[-1] + c - code; - c0045f26: fff74783 lbu a5,-1(a4) - c0045f2a: 40a4053b subw a0,s0,a0 - c0045f2e: 9d3d addw a0,a0,a5 + c00460f6: fff74783 lbu a5,-1(a4) + c00460fa: 40a4053b subw a0,s0,a0 + c00460fe: 9d3d addw a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:861 break; - c0045f30: b745 j c0045ed0 + c0046100: b745 j c00460a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:834 return 0; - c0045f32: 4501 li a0,0 - c0045f34: bf79 j c0045ed2 + c0046102: 4501 li a0,0 + c0046104: bf79 j c00460a2 -00000000c0045f36 : +00000000c0046106 : unicode_get_short_code(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:597 if (c < 0x80) - c0045f36: 07f00793 li a5,127 - c0045f3a: 02a7f663 bgeu a5,a0,c0045f66 + c0046106: 07f00793 li a5,127 + c004610a: 02a7f663 bgeu a5,a0,c0046136 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:599 else if (c < 0x80 + 0x50) - c0045f3e: 0cf00793 li a5,207 - c0045f42: 00a7e563 bltu a5,a0,c0045f4c + c004610e: 0cf00793 li a5,207 + c0046112: 00a7e563 bltu a5,a0,c004611c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:600 return c - 0x80 + 0x300; - c0045f46: 2805051b addiw a0,a0,640 - c0045f4a: 8082 ret + c0046116: 2805051b addiw a0,a0,640 + c004611a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:602 return unicode_short_table[c - 0x80 - 0x50]; - c0045f4c: f305051b addiw a0,a0,-208 - c0045f50: 02051793 slli a5,a0,0x20 - c0045f54: 01f7d513 srli a0,a5,0x1f - c0045f58: 0002f797 auipc a5,0x2f - c0045f5c: a7078793 addi a5,a5,-1424 # c00749c8 - c0045f60: 953e add a0,a0,a5 - c0045f62: 00055503 lhu a0,0(a0) + c004611c: f305051b addiw a0,a0,-208 + c0046120: 02051793 slli a5,a0,0x20 + c0046124: 01f7d513 srli a0,a5,0x1f + c0046128: 0002f797 auipc a5,0x2f + c004612c: b0078793 addi a5,a5,-1280 # c0074c28 + c0046130: 953e add a0,a0,a5 + c0046132: 00055503 lhu a0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:603 } - c0045f66: 8082 ret + c0046136: 8082 ret -00000000c0045f68 : +00000000c0046138 : unicode_decomp_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:622 { - c0045f68: 7179 addi sp,sp,-48 - c0045f6a: ec26 sd s1,24(sp) - c0045f6c: 84aa mv s1,a0 + c0046138: 7179 addi sp,sp,-48 + c004613a: ec26 sd s1,24(sp) + c004613c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:628 res[0] = unicode_decomp_table2[idx]; - c0045f6e: 00161513 slli a0,a2,0x1 - c0045f72: 00026617 auipc a2,0x26 - c0045f76: 95e60613 addi a2,a2,-1698 # c006b8d0 + c004613e: 00161513 slli a0,a2,0x1 + c0046142: 00026617 auipc a2,0x26 + c0046146: 9ee60613 addi a2,a2,-1554 # c006bb30 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:622 { - c0045f7a: e84a sd s2,16(sp) + c004614a: e84a sd s2,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:628 res[0] = unicode_decomp_table2[idx]; - c0045f7c: 962a add a2,a2,a0 + c004614c: 962a add a2,a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:622 { - c0045f7e: f406 sd ra,40(sp) - c0045f80: f022 sd s0,32(sp) - c0045f82: e44e sd s3,8(sp) - c0045f84: e052 sd s4,0(sp) + c004614e: f406 sd ra,40(sp) + c0046150: f022 sd s0,32(sp) + c0046152: e44e sd s3,8(sp) + c0046154: e052 sd s4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:628 res[0] = unicode_decomp_table2[idx]; - c0045f86: 00065903 lhu s2,0(a2) + c0046156: 00065903 lhu s2,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:627 if (type == DECOMP_TYPE_C1) { - c0045f8a: ef89 bnez a5,c0045fa4 + c004615a: ef89 bnez a5,c0046174 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:628 res[0] = unicode_decomp_table2[idx]; - c0045f8c: 0124a023 sw s2,0(s1) + c004615c: 0124a023 sw s2,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:629 return 1; - c0045f90: 4985 li s3,1 + c0046160: 4985 li s3,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:755 } - c0045f92: 70a2 ld ra,40(sp) - c0045f94: 7402 ld s0,32(sp) - c0045f96: 64e2 ld s1,24(sp) - c0045f98: 6942 ld s2,16(sp) - c0045f9a: 6a02 ld s4,0(sp) - c0045f9c: 854e mv a0,s3 - c0045f9e: 69a2 ld s3,8(sp) - c0045fa0: 6145 addi sp,sp,48 - c0045fa2: 8082 ret + c0046162: 70a2 ld ra,40(sp) + c0046164: 7402 ld s0,32(sp) + c0046166: 64e2 ld s1,24(sp) + c0046168: 6942 ld s2,16(sp) + c004616a: 6a02 ld s4,0(sp) + c004616c: 854e mv a0,s3 + c004616e: 69a2 ld s3,8(sp) + c0046170: 6145 addi sp,sp,48 + c0046172: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:631 d = unicode_decomp_data + unicode_decomp_table2[idx]; - c0045fa4: 00023617 auipc a2,0x23 - c0045fa8: 9b460613 addi a2,a2,-1612 # c0068958 - c0045fac: 9932 add s2,s2,a2 + c0046174: 00023617 auipc a2,0x23 + c0046178: a4460613 addi a2,a2,-1468 # c0068bb8 + c004617c: 9932 add s2,s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:632 switch(type) { - c0045fae: fff7861b addiw a2,a5,-1 - c0045fb2: 0006081b sext.w a6,a2 - c0045fb6: 02100513 li a0,33 + c004617e: fff7861b addiw a2,a5,-1 + c0046182: 0006081b sext.w a6,a2 + c0046186: 02100513 li a0,33 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:631 d = unicode_decomp_data + unicode_decomp_table2[idx]; - c0045fba: 4981 li s3,0 - c0045fbc: fd056be3 bltu a0,a6,c0045f92 - c0045fc0: 02061513 slli a0,a2,0x20 - c0045fc4: 01e55613 srli a2,a0,0x1e - c0045fc8: 00021517 auipc a0,0x21 - c0045fcc: 55050513 addi a0,a0,1360 # c0067518 - c0045fd0: 962a add a2,a2,a0 - c0045fd2: 4210 lw a2,0(a2) - c0045fd4: 962a add a2,a2,a0 - c0045fd6: 8602 jr a2 + c004618a: 4981 li s3,0 + c004618c: fd056be3 bltu a0,a6,c0046162 + c0046190: 02061513 slli a0,a2,0x20 + c0046194: 01e55613 srli a2,a0,0x1e + c0046198: 00021517 auipc a0,0x21 + c004619c: 5e050513 addi a0,a0,1504 # c0067778 + c00461a0: 962a add a2,a2,a0 + c00461a2: 4210 lw a2,0(a2) + c00461a4: 962a add a2,a2,a0 + c00461a6: 8602 jr a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:641 d += (c - code) * l * 2; - c0045fd8: 40d586bb subw a3,a1,a3 + c00461a8: 40d586bb subw a3,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:640 l = type - DECOMP_TYPE_L1 + 1; - c0045fdc: 0007899b sext.w s3,a5 + c00461ac: 0007899b sext.w s3,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:641 d += (c - code) * l * 2; - c0045fe0: 02f687bb mulw a5,a3,a5 - c0045fe4: 4681 li a3,0 - c0045fe6: 0017979b slliw a5,a5,0x1 - c0045fea: 1782 slli a5,a5,0x20 - c0045fec: 9381 srli a5,a5,0x20 - c0045fee: 97ca add a5,a5,s2 + c00461b0: 02f687bb mulw a5,a3,a5 + c00461b4: 4681 li a3,0 + c00461b6: 0017979b slliw a5,a5,0x1 + c00461ba: 1782 slli a5,a5,0x20 + c00461bc: 9381 srli a5,a5,0x20 + c00461be: 97ca add a5,a5,s2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:643 if ((res[i] = unicode_get16(d + 2 * i)) == 0) - c0045ff0: 0017c703 lbu a4,1(a5) - c0045ff4: 0007c603 lbu a2,0(a5) - c0045ff8: 0722 slli a4,a4,0x8 - c0045ffa: 00c765b3 or a1,a4,a2 - c0045ffe: 00269613 slli a2,a3,0x2 - c0046002: 9626 add a2,a2,s1 - c0046004: c20c sw a1,0(a2) - c0046006: e199 bnez a1,c004600c + c00461c0: 0017c703 lbu a4,1(a5) + c00461c4: 0007c603 lbu a2,0(a5) + c00461c8: 0722 slli a4,a4,0x8 + c00461ca: 00c765b3 or a1,a4,a2 + c00461ce: 00269613 slli a2,a3,0x2 + c00461d2: 9626 add a2,a2,s1 + c00461d4: c20c sw a1,0(a2) + c00461d6: e199 bnez a1,c00461dc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:644 return 0; - c0046008: 4981 li s3,0 - c004600a: b761 j c0045f92 + c00461d8: 4981 li s3,0 + c00461da: b761 j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:642 for(i = 0; i < l; i++) { - c004600c: 0685 addi a3,a3,1 - c004600e: 0006871b sext.w a4,a3 - c0046012: 0789 addi a5,a5,2 - c0046014: fd374ee3 blt a4,s3,c0045ff0 - c0046018: bfad j c0045f92 + c00461dc: 0685 addi a3,a3,1 + c00461de: 0006871b sext.w a4,a3 + c00461e2: 0789 addi a5,a5,2 + c00461e4: fd374ee3 blt a4,s3,c00461c0 + c00461e8: bfad j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:651 l = type - DECOMP_TYPE_LL1 + 1; - c004601a: ff97899b addiw s3,a5,-7 + c00461ea: ff97899b addiw s3,a5,-7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:652 k = (c - code) * l; - c004601e: 40d586bb subw a3,a1,a3 + c00461ee: 40d586bb subw a3,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:653 p = len * l * 2; - c0046022: 033707bb mulw a5,a4,s3 - c0046026: 4581 li a1,0 + c00461f2: 033707bb mulw a5,a4,s3 + c00461f6: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:656 (((d[p + (k / 4)] >> ((k % 4) * 2)) & 3) << 16); - c0046028: 00030537 lui a0,0x30 + c00461f8: 00030537 lui a0,0x30 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:652 k = (c - code) * l; - c004602c: 033686bb mulw a3,a3,s3 + c00461fc: 033686bb mulw a3,a3,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:653 p = len * l * 2; - c0046030: 0017979b slliw a5,a5,0x1 + c0046200: 0017979b slliw a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:656 (((d[p + (k / 4)] >> ((k % 4) * 2)) & 3) << 16); - c0046034: 0026d71b srliw a4,a3,0x2 - c0046038: 9f3d addw a4,a4,a5 - c004603a: 1702 slli a4,a4,0x20 - c004603c: 9301 srli a4,a4,0x20 - c004603e: 974a add a4,a4,s2 - c0046040: 00074703 lbu a4,0(a4) - c0046044: 0036f613 andi a2,a3,3 - c0046048: 0016161b slliw a2,a2,0x1 - c004604c: 40c7573b sraw a4,a4,a2 + c0046204: 0026d71b srliw a4,a3,0x2 + c0046208: 9f3d addw a4,a4,a5 + c004620a: 1702 slli a4,a4,0x20 + c004620c: 9301 srli a4,a4,0x20 + c004620e: 974a add a4,a4,s2 + c0046210: 00074703 lbu a4,0(a4) + c0046214: 0036f613 andi a2,a3,3 + c0046218: 0016161b slliw a2,a2,0x1 + c004621c: 40c7573b sraw a4,a4,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:655 c1 = unicode_get16(d + 2 * k) | - c0046050: 0016961b slliw a2,a3,0x1 - c0046054: 1602 slli a2,a2,0x20 - c0046056: 9201 srli a2,a2,0x20 - c0046058: 964a add a2,a2,s2 - c004605a: 00064803 lbu a6,0(a2) - c004605e: 00164603 lbu a2,1(a2) + c0046220: 0016961b slliw a2,a3,0x1 + c0046224: 1602 slli a2,a2,0x20 + c0046226: 9201 srli a2,a2,0x20 + c0046228: 964a add a2,a2,s2 + c004622a: 00064803 lbu a6,0(a2) + c004622e: 00164603 lbu a2,1(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:656 (((d[p + (k / 4)] >> ((k % 4) * 2)) & 3) << 16); - c0046062: 0107171b slliw a4,a4,0x10 - c0046066: 8f69 and a4,a4,a0 + c0046232: 0107171b slliw a4,a4,0x10 + c0046236: 8f69 and a4,a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:655 c1 = unicode_get16(d + 2 * k) | - c0046068: 0622 slli a2,a2,0x8 - c004606a: 01066633 or a2,a2,a6 - c004606e: 8f51 or a4,a4,a2 - c0046070: 0007061b sext.w a2,a4 - c0046074: 8732 mv a4,a2 + c0046238: 0622 slli a2,a2,0x8 + c004623a: 01066633 or a2,a2,a6 + c004623e: 8f51 or a4,a4,a2 + c0046240: 0007061b sext.w a2,a4 + c0046244: 8732 mv a4,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:657 if (!c1) - c0046076: da49 beqz a2,c0046008 + c0046246: da49 beqz a2,c00461d8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:659 res[i] = c1; - c0046078: 00259613 slli a2,a1,0x2 - c004607c: 9626 add a2,a2,s1 + c0046248: 00259613 slli a2,a1,0x2 + c004624c: 9626 add a2,a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:654 for(i = 0; i < l; i++) { - c004607e: 0585 addi a1,a1,1 + c004624e: 0585 addi a1,a1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:659 res[i] = c1; - c0046080: c218 sw a4,0(a2) + c0046250: c218 sw a4,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:654 for(i = 0; i < l; i++) { - c0046082: 0005871b sext.w a4,a1 + c0046252: 0005871b sext.w a4,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:660 k++; - c0046086: 2685 addiw a3,a3,1 + c0046256: 2685 addiw a3,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:654 for(i = 0; i < l; i++) { - c0046088: fb3746e3 blt a4,s3,c0046034 - c004608c: b719 j c0045f92 + c0046258: fb3746e3 blt a4,s3,c0046204 + c004625c: b719 j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:669 l = type - DECOMP_TYPE_S1 + 1; - c004608e: ff77899b addiw s3,a5,-9 + c004625e: ff77899b addiw s3,a5,-9 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:670 d += (c - code) * l; - c0046092: 40d586bb subw a3,a1,a3 - c0046096: 033687bb mulw a5,a3,s3 - c004609a: 4401 li s0,0 - c004609c: 02079a13 slli s4,a5,0x20 - c00460a0: 020a5a13 srli s4,s4,0x20 + c0046262: 40d586bb subw a3,a1,a3 + c0046266: 033687bb mulw a5,a3,s3 + c004626a: 4401 li s0,0 + c004626c: 02079a13 slli s4,a5,0x20 + c0046270: 020a5a13 srli s4,s4,0x20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:672 if ((res[i] = unicode_get_short_code(d[i])) == 0) - c00460a4: 008a07b3 add a5,s4,s0 - c00460a8: 97ca add a5,a5,s2 - c00460aa: 0007c503 lbu a0,0(a5) - c00460ae: e89ff0ef jal ra,c0045f36 - c00460b2: 00241793 slli a5,s0,0x2 - c00460b6: 2501 sext.w a0,a0 - c00460b8: 97a6 add a5,a5,s1 - c00460ba: c388 sw a0,0(a5) - c00460bc: d531 beqz a0,c0046008 + c0046274: 008a07b3 add a5,s4,s0 + c0046278: 97ca add a5,a5,s2 + c004627a: 0007c503 lbu a0,0(a5) + c004627e: e89ff0ef jal ra,c0046106 + c0046282: 00241793 slli a5,s0,0x2 + c0046286: 2501 sext.w a0,a0 + c0046288: 97a6 add a5,a5,s1 + c004628a: c388 sw a0,0(a5) + c004628c: d531 beqz a0,c00461d8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:671 for(i = 0; i < l; i++) { - c00460be: 0405 addi s0,s0,1 - c00460c0: 0004079b sext.w a5,s0 - c00460c4: ff37c0e3 blt a5,s3,c00460a4 - c00460c8: b5e9 j c0045f92 + c004628e: 0405 addi s0,s0,1 + c0046290: 0004079b sext.w a5,s0 + c0046294: ff37c0e3 blt a5,s3,c0046274 + c0046298: b5e9 j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:686 l = 2 + ((type - DECOMP_TYPE_I2_0) >> 1); - c00460ca: ff07899b addiw s3,a5,-16 - c00460ce: 0019d99b srliw s3,s3,0x1 - c00460d2: 2989 addiw s3,s3,2 + c004629a: ff07899b addiw s3,a5,-16 + c004629e: 0019d99b srliw s3,s3,0x1 + c00462a2: 2989 addiw s3,s3,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:687 p = ((type - DECOMP_TYPE_I2_0) & 1) + (l > 2); - c00460d4: 4709 li a4,2 - c00460d6: 8b85 andi a5,a5,1 - c00460d8: 01372733 slt a4,a4,s3 - c00460dc: 9fb9 addw a5,a5,a4 + c00462a4: 4709 li a4,2 + c00462a6: 8b85 andi a5,a5,1 + c00462a8: 01372733 slt a4,a4,s3 + c00462ac: 9fb9 addw a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:688 decomp_type_i: - c00460de: 4601 li a2,0 + c00462ae: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:692 c1 += c - code; - c00460e0: 40d586bb subw a3,a1,a3 + c00462b0: 40d586bb subw a3,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:690 c1 = unicode_get16(d + 2 * i); - c00460e4: 00161513 slli a0,a2,0x1 - c00460e8: 954a add a0,a0,s2 - c00460ea: 00154703 lbu a4,1(a0) # 30001 <__clzdi2-0xbffcffff> - c00460ee: 00054803 lbu a6,0(a0) + c00462b4: 00161513 slli a0,a2,0x1 + c00462b8: 954a add a0,a0,s2 + c00462ba: 00154703 lbu a4,1(a0) # 30001 <__clzdi2-0xbffcffff> + c00462be: 00054803 lbu a6,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:691 if (i == p) - c00460f2: 0006051b sext.w a0,a2 + c00462c2: 0006051b sext.w a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:690 c1 = unicode_get16(d + 2 * i); - c00460f6: 0722 slli a4,a4,0x8 - c00460f8: 010765b3 or a1,a4,a6 - c00460fc: 872e mv a4,a1 + c00462c6: 0722 slli a4,a4,0x8 + c00462c8: 010765b3 or a1,a4,a6 + c00462cc: 872e mv a4,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:691 if (i == p) - c00460fe: 00f51463 bne a0,a5,c0046106 + c00462ce: 00f51463 bne a0,a5,c00462d6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:692 c1 += c - code; - c0046102: 00b6873b addw a4,a3,a1 + c00462d2: 00b6873b addw a4,a3,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:693 res[i] = c1; - c0046106: 00261513 slli a0,a2,0x2 - c004610a: 9526 add a0,a0,s1 + c00462d6: 00261513 slli a0,a2,0x2 + c00462da: 9526 add a0,a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:689 for(i = 0; i < l; i++) { - c004610c: 0605 addi a2,a2,1 + c00462dc: 0605 addi a2,a2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:693 res[i] = c1; - c004610e: c118 sw a4,0(a0) + c00462de: c118 sw a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:689 for(i = 0; i < l; i++) { - c0046110: 0006071b sext.w a4,a2 - c0046114: fd3748e3 blt a4,s3,c00460e4 - c0046118: bdad j c0045f92 + c00462e0: 0006071b sext.w a4,a2 + c00462e4: fd3748e3 blt a4,s3,c00462b4 + c00462e8: bdad j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:631 d = unicode_decomp_data + unicode_decomp_table2[idx]; - c004611a: 4781 li a5,0 - c004611c: 4985 li s3,1 - c004611e: b7c1 j c00460de + c00462ea: 4781 li a5,0 + c00462ec: 4985 li s3,1 + c00462ee: b7c1 j c00462ae /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:707 l = type - DECOMP_TYPE_B1 + 1; - c0046120: feb7899b addiw s3,a5,-21 + c00462f0: feb7899b addiw s3,a5,-21 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:712 d += 2 + (c - code) * l; - c0046124: 40d586bb subw a3,a1,a3 - c0046128: 033686bb mulw a3,a3,s3 + c00462f4: 40d586bb subw a3,a1,a3 + c00462f8: 033686bb mulw a3,a3,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:711 c_min = unicode_get16(d); - c004612c: 00194703 lbu a4,1(s2) - c0046130: 00094783 lbu a5,0(s2) + c00462fc: 00194703 lbu a4,1(s2) + c0046300: 00094783 lbu a5,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:715 if (c1 == 0xff) - c0046134: 0ff00513 li a0,255 + c0046304: 0ff00513 li a0,255 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:711 c_min = unicode_get16(d); - c0046138: 0722 slli a4,a4,0x8 - c004613a: 8f5d or a4,a4,a5 + c0046308: 0722 slli a4,a4,0x8 + c004630a: 8f5d or a4,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:712 d += 2 + (c - code) * l; - c004613c: 4781 li a5,0 - c004613e: 2689 addiw a3,a3,2 - c0046140: 1682 slli a3,a3,0x20 - c0046142: 9281 srli a3,a3,0x20 + c004630c: 4781 li a5,0 + c004630e: 2689 addiw a3,a3,2 + c0046310: 1682 slli a3,a3,0x20 + c0046312: 9281 srli a3,a3,0x20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:714 c1 = d[i]; - c0046144: 00d78633 add a2,a5,a3 - c0046148: 964a add a2,a2,s2 - c004614a: 00064803 lbu a6,0(a2) + c0046314: 00d78633 add a2,a5,a3 + c0046318: 964a add a2,a2,s2 + c004631a: 00064803 lbu a6,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:716 c1 = 0x20; - c004614e: 02000593 li a1,32 + c004631e: 02000593 li a1,32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:715 if (c1 == 0xff) - c0046152: 00a80463 beq a6,a0,c004615a + c0046322: 00a80463 beq a6,a0,c004632a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:718 c1 += c_min; - c0046156: 00e805bb addw a1,a6,a4 + c0046326: 00e805bb addw a1,a6,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:719 res[i] = c1; - c004615a: 00279613 slli a2,a5,0x2 - c004615e: 9626 add a2,a2,s1 + c004632a: 00279613 slli a2,a5,0x2 + c004632e: 9626 add a2,a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:713 for(i = 0; i < l; i++) { - c0046160: 0785 addi a5,a5,1 + c0046330: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:719 res[i] = c1; - c0046162: c20c sw a1,0(a2) + c0046332: c20c sw a1,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:713 for(i = 0; i < l; i++) { - c0046164: 0007861b sext.w a2,a5 - c0046168: fd364ee3 blt a2,s3,c0046144 - c004616c: b51d j c0045f92 + c0046334: 0007861b sext.w a2,a5 + c0046338: fd364ee3 blt a2,s3,c0046314 + c004633c: b51d j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:631 d = unicode_decomp_data + unicode_decomp_table2[idx]; - c004616e: 49c9 li s3,18 - c0046170: bf55 j c0046124 + c004633e: 49c9 li s3,18 + c0046340: bf55 j c00462f4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:724 d += (c - code) * 3; - c0046172: 478d li a5,3 - c0046174: 40d586bb subw a3,a1,a3 - c0046178: 02f686bb mulw a3,a3,a5 - c004617c: 1682 slli a3,a3,0x20 - c004617e: 9281 srli a3,a3,0x20 - c0046180: 00d907b3 add a5,s2,a3 + c0046342: 478d li a5,3 + c0046344: 40d586bb subw a3,a1,a3 + c0046348: 02f686bb mulw a3,a3,a5 + c004634c: 1682 slli a3,a3,0x20 + c004634e: 9281 srli a3,a3,0x20 + c0046350: 00d907b3 add a5,s2,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:725 if (!(res[0] = unicode_get16(d))) - c0046184: 0017c703 lbu a4,1(a5) - c0046188: 0007c683 lbu a3,0(a5) - c004618c: 0722 slli a4,a4,0x8 - c004618e: 00d76633 or a2,a4,a3 - c0046192: c090 sw a2,0(s1) - c0046194: e6060ae3 beqz a2,c0046008 + c0046354: 0017c703 lbu a4,1(a5) + c0046358: 0007c683 lbu a3,0(a5) + c004635c: 0722 slli a4,a4,0x8 + c004635e: 00d76633 or a2,a4,a3 + c0046362: c090 sw a2,0(s1) + c0046364: e6060ae3 beqz a2,c00461d8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:727 res[1] = unicode_get_short_code(d[2]); - c0046198: 0027c503 lbu a0,2(a5) + c0046368: 0027c503 lbu a0,2(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:750 res[1] = unicode_get_short_code(*d); - c004619c: d9bff0ef jal ra,c0045f36 - c00461a0: c0c8 sw a0,4(s1) + c004636c: d9bff0ef jal ra,c0046106 + c0046370: c0c8 sw a0,4(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:751 return 2; - c00461a2: 4989 li s3,2 - c00461a4: b3fd j c0045f92 + c0046372: 4989 li s3,2 + c0046374: b3fd j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:730 res[0] = unicode_get16(d); - c00461a6: 00194783 lbu a5,1(s2) - c00461aa: 00094703 lbu a4,0(s2) + c0046376: 00194783 lbu a5,1(s2) + c004637a: 00094703 lbu a4,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:732 d += 4 + (c - code) * 2; - c00461ae: 40d586bb subw a3,a1,a3 + c004637e: 40d586bb subw a3,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:730 res[0] = unicode_get16(d); - c00461b2: 07a2 slli a5,a5,0x8 - c00461b4: 8fd9 or a5,a5,a4 - c00461b6: c09c sw a5,0(s1) + c0046382: 07a2 slli a5,a5,0x8 + c0046384: 8fd9 or a5,a5,a4 + c0046386: c09c sw a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:731 res[2] = unicode_get16(d + 2); - c00461b8: 00394783 lbu a5,3(s2) - c00461bc: 00294703 lbu a4,2(s2) + c0046388: 00394783 lbu a5,3(s2) + c004638c: 00294703 lbu a4,2(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:732 d += 4 + (c - code) * 2; - c00461c0: 2689 addiw a3,a3,2 - c00461c2: 0016969b slliw a3,a3,0x1 + c0046390: 2689 addiw a3,a3,2 + c0046392: 0016969b slliw a3,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:731 res[2] = unicode_get16(d + 2); - c00461c6: 07a2 slli a5,a5,0x8 + c0046396: 07a2 slli a5,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:732 d += 4 + (c - code) * 2; - c00461c8: 1682 slli a3,a3,0x20 + c0046398: 1682 slli a3,a3,0x20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:731 res[2] = unicode_get16(d + 2); - c00461ca: 8fd9 or a5,a5,a4 + c004639a: 8fd9 or a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:732 d += 4 + (c - code) * 2; - c00461cc: 9281 srli a3,a3,0x20 + c004639c: 9281 srli a3,a3,0x20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:731 res[2] = unicode_get16(d + 2); - c00461ce: c49c sw a5,8(s1) + c004639e: c49c sw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:733 res[1] = unicode_get16(d); - c00461d0: 00d907b3 add a5,s2,a3 - c00461d4: 0007c703 lbu a4,0(a5) - c00461d8: 0017c783 lbu a5,1(a5) + c00463a0: 00d907b3 add a5,s2,a3 + c00463a4: 0007c703 lbu a4,0(a5) + c00463a8: 0017c783 lbu a5,1(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:734 return 3; - c00461dc: 498d li s3,3 + c00463ac: 498d li s3,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:733 res[1] = unicode_get16(d); - c00461de: 07a2 slli a5,a5,0x8 - c00461e0: 8fd9 or a5,a5,a4 - c00461e2: c0dc sw a5,4(s1) + c00463ae: 07a2 slli a5,a5,0x8 + c00463b0: 8fd9 or a5,a5,a4 + c00463b2: c0dc sw a5,4(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:734 return 3; - c00461e4: b37d j c0045f92 + c00463b4: b37d j c0046162 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:738 if (type == DECOMP_TYPE_S2_UL) { - c00461e6: 02100713 li a4,33 + c00463b6: 02100713 li a4,33 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:737 c1 = c - code; - c00461ea: 40d5843b subw s0,a1,a3 + c00463ba: 40d5843b subw s0,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:738 if (type == DECOMP_TYPE_S2_UL) { - c00461ee: 04e79163 bne a5,a4,c0046230 + c00463be: 04e79163 bne a5,a4,c0046400 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:739 d += c1 & ~1; - c00461f2: ffe47793 andi a5,s0,-2 - c00461f6: 1782 slli a5,a5,0x20 - c00461f8: 9381 srli a5,a5,0x20 - c00461fa: 993e add s2,s2,a5 + c00463c2: ffe47793 andi a5,s0,-2 + c00463c6: 1782 slli a5,a5,0x20 + c00463c8: 9381 srli a5,a5,0x20 + c00463ca: 993e add s2,s2,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:740 c = unicode_get_short_code(*d); - c00461fc: 00094503 lbu a0,0(s2) - c0046200: d37ff0ef jal ra,c0045f36 - c0046204: 0005071b sext.w a4,a0 + c00463cc: 00094503 lbu a0,0(s2) + c00463d0: d37ff0ef jal ra,c0046106 + c00463d4: 0005071b sext.w a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:741 d++; - c0046208: 00190793 addi a5,s2,1 + c00463d8: 00190793 addi a5,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:747 if (c1 & 1) - c004620c: 00147693 andi a3,s0,1 - c0046210: ce81 beqz a3,c0046228 + c00463dc: 00147693 andi a3,s0,1 + c00463e0: ce81 beqz a3,c00463f8 unicode_get_lower_simple(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:607 if (c < 0x100 || (c >= 0x410 && c <= 0x42f)) - c0046212: 0ff00693 li a3,255 - c0046216: 00e6f763 bgeu a3,a4,c0046224 - c004621a: bf07069b addiw a3,a4,-1040 - c004621e: 467d li a2,31 - c0046220: 02d66863 bltu a2,a3,c0046250 + c00463e2: 0ff00693 li a3,255 + c00463e6: 00e6f763 bgeu a3,a4,c00463f4 + c00463ea: bf07069b addiw a3,a4,-1040 + c00463ee: 467d li a2,31 + c00463f0: 02d66863 bltu a2,a3,c0046420 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:608 c += 0x20; - c0046224: 0207071b addiw a4,a4,32 + c00463f4: 0207071b addiw a4,a4,32 unicode_decomp_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:749 res[0] = c; - c0046228: c098 sw a4,0(s1) + c00463f8: c098 sw a4,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:750 res[1] = unicode_get_short_code(*d); - c004622a: 0007c503 lbu a0,0(a5) - c004622e: b7bd j c004619c + c00463fa: 0007c503 lbu a0,0(a5) + c00463fe: b7bd j c004636c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:743 d += (c1 >> 1) * 3; - c0046230: 470d li a4,3 - c0046232: 0014579b srliw a5,s0,0x1 - c0046236: 02e787bb mulw a5,a5,a4 - c004623a: 1782 slli a5,a5,0x20 - c004623c: 9381 srli a5,a5,0x20 - c004623e: 97ca add a5,a5,s2 + c0046400: 470d li a4,3 + c0046402: 0014579b srliw a5,s0,0x1 + c0046406: 02e787bb mulw a5,a5,a4 + c004640a: 1782 slli a5,a5,0x20 + c004640c: 9381 srli a5,a5,0x20 + c004640e: 97ca add a5,a5,s2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:744 c = unicode_get16(d); - c0046240: 0017c703 lbu a4,1(a5) - c0046244: 0007c503 lbu a0,0(a5) + c0046410: 0017c703 lbu a4,1(a5) + c0046414: 0007c503 lbu a0,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:745 d += 2; - c0046248: 0789 addi a5,a5,2 + c0046418: 0789 addi a5,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:744 c = unicode_get16(d); - c004624a: 0722 slli a4,a4,0x8 - c004624c: 8f49 or a4,a4,a0 + c004641a: 0722 slli a4,a4,0x8 + c004641c: 8f49 or a4,a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:745 d += 2; - c004624e: bf7d j c004620c + c004641e: bf7d j c00463dc unicode_get_lower_simple(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:610 c++; - c0046250: 2705 addiw a4,a4,1 - c0046252: bfd9 j c0046228 + c0046420: 2705 addiw a4,a4,1 + c0046422: bfd9 j c00463f8 -00000000c0046254 : +00000000c0046424 : to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:914 { - c0046254: 7131 addi sp,sp,-192 - c0046256: e15a sd s6,128(sp) - c0046258: fcde sd s7,120(sp) - c004625a: f8e2 sd s8,112(sp) + c0046424: 7131 addi sp,sp,-192 + c0046426: e15a sd s6,128(sp) + c0046428: fcde sd s7,120(sp) + c004642a: f8e2 sd s8,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:921 if (c >= 0xac00 && c < 0xd7a4) { - c004625c: 7b55 lui s6,0xffff5 - c004625e: 6b8d lui s7,0x3 + c004642c: 7b55 lui s6,0xffff5 + c004642e: 6b8d lui s7,0x3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:924 dbuf_put_u32(dbuf, 0x1100 + c / 588); - c0046260: 6c05 lui s8,0x1 + c0046430: 6c05 lui s8,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:914 { - c0046262: f526 sd s1,168(sp) - c0046264: f14a sd s2,160(sp) - c0046266: ed4e sd s3,152(sp) - c0046268: e952 sd s4,144(sp) - c004626a: e556 sd s5,136(sp) - c004626c: f4e6 sd s9,104(sp) - c004626e: f0ea sd s10,96(sp) - c0046270: fd06 sd ra,184(sp) - c0046272: f922 sd s0,176(sp) - c0046274: ecee sd s11,88(sp) - c0046276: 84aa mv s1,a0 - c0046278: 8aae mv s5,a1 - c004627a: 8a32 mv s4,a2 - c004627c: 89b6 mv s3,a3 + c0046432: f526 sd s1,168(sp) + c0046434: f14a sd s2,160(sp) + c0046436: ed4e sd s3,152(sp) + c0046438: e952 sd s4,144(sp) + c004643a: e556 sd s5,136(sp) + c004643c: f4e6 sd s9,104(sp) + c004643e: f0ea sd s10,96(sp) + c0046440: fd06 sd ra,184(sp) + c0046442: f922 sd s0,176(sp) + c0046444: ecee sd s11,88(sp) + c0046446: 84aa mv s1,a0 + c0046448: 8aae mv s5,a1 + c004644a: 8a32 mv s4,a2 + c004644c: 89b6 mv s3,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:919 for(i = 0; i < src_len; i++) { - c004627e: 4901 li s2,0 + c004644e: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:921 if (c >= 0xac00 && c < 0xd7a4) { - c0046280: 400b0b1b addiw s6,s6,1024 - c0046284: ba3b8b93 addi s7,s7,-1117 # 2ba3 <__clzdi2-0xbfffd45d> + c0046450: 400b0b1b addiw s6,s6,1024 + c0046454: ba3b8b93 addi s7,s7,-1117 # 2ba3 <__clzdi2-0xbfffd45d> unicode_decomp_char(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:769 v = unicode_decomp_table1[idx]; - c0046288: 00025c97 auipc s9,0x25 - c004628c: b58c8c93 addi s9,s9,-1192 # c006ade0 + c0046458: 00025c97 auipc s9,0x25 + c004645c: be8c8c93 addi s9,s9,-1048 # c006b040 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:924 dbuf_put_u32(dbuf, 0x1100 + c / 588); - c0046290: 100c0d1b addiw s10,s8,256 + c0046460: 100c0d1b addiw s10,s8,256 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:919 (discriminator 1) for(i = 0; i < src_len; i++) { - c0046294: 0009079b sext.w a5,s2 - c0046298: 0347c163 blt a5,s4,c00462ba + c0046464: 0009079b sext.w a5,s2 + c0046468: 0347c163 blt a5,s4,c004648a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:938 } - c004629c: 70ea ld ra,184(sp) - c004629e: 744a ld s0,176(sp) - c00462a0: 74aa ld s1,168(sp) - c00462a2: 790a ld s2,160(sp) - c00462a4: 69ea ld s3,152(sp) - c00462a6: 6a4a ld s4,144(sp) - c00462a8: 6aaa ld s5,136(sp) - c00462aa: 6b0a ld s6,128(sp) - c00462ac: 7be6 ld s7,120(sp) - c00462ae: 7c46 ld s8,112(sp) - c00462b0: 7ca6 ld s9,104(sp) - c00462b2: 7d06 ld s10,96(sp) - c00462b4: 6de6 ld s11,88(sp) - c00462b6: 6129 addi sp,sp,192 - c00462b8: 8082 ret + c004646c: 70ea ld ra,184(sp) + c004646e: 744a ld s0,176(sp) + c0046470: 74aa ld s1,168(sp) + c0046472: 790a ld s2,160(sp) + c0046474: 69ea ld s3,152(sp) + c0046476: 6a4a ld s4,144(sp) + c0046478: 6aaa ld s5,136(sp) + c004647a: 6b0a ld s6,128(sp) + c004647c: 7be6 ld s7,120(sp) + c004647e: 7c46 ld s8,112(sp) + c0046480: 7ca6 ld s9,104(sp) + c0046482: 7d06 ld s10,96(sp) + c0046484: 6de6 ld s11,88(sp) + c0046486: 6129 addi sp,sp,192 + c0046488: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:920 c = src[i]; - c00462ba: 00291793 slli a5,s2,0x2 - c00462be: 97d6 add a5,a5,s5 - c00462c0: 0007ad83 lw s11,0(a5) + c004648a: 00291793 slli a5,s2,0x2 + c004648e: 97d6 add a5,a5,s5 + c0046490: 0007ad83 lw s11,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:921 if (c >= 0xac00 && c < 0xd7a4) { - c00462c4: 016d87bb addw a5,s11,s6 - c00462c8: 843e mv s0,a5 - c00462ca: 04fbec63 bltu s7,a5,c0046322 + c0046494: 016d87bb addw a5,s11,s6 + c0046498: 843e mv s0,a5 + c004649a: 04fbec63 bltu s7,a5,c00464f2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:924 dbuf_put_u32(dbuf, 0x1100 + c / 588); - c00462ce: 24c00d93 li s11,588 - c00462d2: 03b7d7bb divuw a5,a5,s11 + c004649e: 24c00d93 li s11,588 + c00464a2: 03b7d7bb divuw a5,a5,s11 dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 return dbuf_put(s, (uint8_t *)&val, 4); - c00462d6: 4611 li a2,4 - c00462d8: 004c addi a1,sp,4 - c00462da: 8526 mv a0,s1 + c00464a6: 4611 li a2,4 + c00464a8: 004c addi a1,sp,4 + c00464aa: 8526 mv a0,s1 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:924 - c00462dc: 01a787bb addw a5,a5,s10 - c00462e0: c23e sw a5,4(sp) + c00464ac: 01a787bb addw a5,a5,s10 + c00464b0: c23e sw a5,4(sp) dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 - c00462e2: 1cf010ef jal ra,c0047cb0 + c00464b2: 1cf010ef jal ra,c0047e80 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:925 dbuf_put_u32(dbuf, 0x1161 + (c % 588) / 28); - c00462e6: 03b47dbb remuw s11,s0,s11 - c00462ea: 47f1 li a5,28 - c00462ec: 161c071b addiw a4,s8,353 + c00464b6: 03b47dbb remuw s11,s0,s11 + c00464ba: 47f1 li a5,28 + c00464bc: 161c071b addiw a4,s8,353 dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 - c00462f0: 4611 li a2,4 - c00462f2: 004c addi a1,sp,4 - c00462f4: 8526 mv a0,s1 + c00464c0: 4611 li a2,4 + c00464c2: 004c addi a1,sp,4 + c00464c4: 8526 mv a0,s1 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:925 - c00462f6: 02fdddbb divuw s11,s11,a5 - c00462fa: 00ed8dbb addw s11,s11,a4 - c00462fe: c26e sw s11,4(sp) + c00464c6: 02fdddbb divuw s11,s11,a5 + c00464ca: 00ed8dbb addw s11,s11,a4 + c00464ce: c26e sw s11,4(sp) dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 - c0046300: 1b1010ef jal ra,c0047cb0 + c00464d0: 1b1010ef jal ra,c0047e80 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:926 v = c % 28; - c0046304: 47f1 li a5,28 - c0046306: 02f477bb remuw a5,s0,a5 - c004630a: 843e mv s0,a5 + c00464d4: 47f1 li a5,28 + c00464d6: 02f477bb remuw a5,s0,a5 + c00464da: 843e mv s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:927 if (v != 0) - c004630c: c3c9 beqz a5,c004638e + c00464dc: c3c9 beqz a5,c004655e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:928 dbuf_put_u32(dbuf, 0x11a7 + v); - c004630e: 1a7c079b addiw a5,s8,423 - c0046312: 9c3d addw s0,s0,a5 - c0046314: c222 sw s0,4(sp) + c00464de: 1a7c079b addiw a5,s8,423 + c00464e2: 9c3d addw s0,s0,a5 + c00464e4: c222 sw s0,4(sp) dbuf_put_u32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:262 - c0046316: 4611 li a2,4 - c0046318: 004c addi a1,sp,4 - c004631a: 8526 mv a0,s1 - c004631c: 195010ef jal ra,c0047cb0 - c0046320: a0bd j c004638e + c00464e6: 4611 li a2,4 + c00464e8: 004c addi a1,sp,4 + c00464ea: 8526 mv a0,s1 + c00464ec: 195010ef jal ra,c0047e80 + c00464f0: a0bd j c004655e unicode_decomp_char(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:766 idx_max = countof(unicode_decomp_table1) - 1; - c0046322: 2ba00513 li a0,698 + c00464f2: 2ba00513 li a0,698 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:765 idx_min = 0; - c0046326: 4701 li a4,0 + c00464f6: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:768 idx = (idx_max + idx_min) / 2; - c0046328: 00a705bb addw a1,a4,a0 - c004632c: 4015d61b sraiw a2,a1,0x1 + c00464f8: 00a705bb addw a1,a4,a0 + c00464fc: 4015d61b sraiw a2,a1,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:769 v = unicode_decomp_table1[idx]; - c0046330: 00261793 slli a5,a2,0x2 - c0046334: 97e6 add a5,a5,s9 - c0046336: 439c lw a5,0(a5) + c0046500: 00261793 slli a5,a2,0x2 + c0046504: 97e6 add a5,a5,s9 + c0046506: 439c lw a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:770 code = v >> (32 - 18); - c0046338: 00e7d69b srliw a3,a5,0xe - c004633c: 00e7d81b srliw a6,a5,0xe + c0046508: 00e7d69b srliw a3,a5,0xe + c004650c: 00e7d81b srliw a6,a5,0xe /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:773 if (c < code) { - c0046340: 00ddf763 bgeu s11,a3,c004634e + c0046510: 00ddf763 bgeu s11,a3,c004651e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:774 idx_max = idx - 1; - c0046344: fff6051b addiw a0,a2,-1 + c0046514: fff6051b addiw a0,a2,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:767 while (idx_min <= idx_max) { - c0046348: fee550e3 bge a0,a4,c0046328 - c004634c: a815 j c0046380 + c0046518: fee550e3 bge a0,a4,c00464f8 + c004651c: a815 j c0046550 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:771 len = (v >> (32 - 18 - 7)) & 0x7f; - c004634e: 0077d71b srliw a4,a5,0x7 - c0046352: 07f77713 andi a4,a4,127 + c004651e: 0077d71b srliw a4,a5,0x7 + c0046522: 07f77713 andi a4,a4,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:775 } else if (c >= code + len) { - c0046356: 00e8083b addw a6,a6,a4 - c004635a: 010de563 bltu s11,a6,c0046364 + c0046526: 00e8083b addw a6,a6,a4 + c004652a: 010de563 bltu s11,a6,c0046534 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:776 idx_min = idx + 1; - c004635e: 0016071b addiw a4,a2,1 - c0046362: b7dd j c0046348 + c004652e: 0016071b addiw a4,a2,1 + c0046532: b7dd j c0046518 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:779 if (is_compat1 < is_compat) - c0046364: 0017f593 andi a1,a5,1 - c0046368: 00b9ec63 bltu s3,a1,c0046380 + c0046534: 0017f593 andi a1,a5,1 + c0046538: 00b9ec63 bltu s3,a1,c0046550 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:781 type = (v >> (32 - 18 - 7 - 6)) & 0x3f; - c004636c: 0017d79b srliw a5,a5,0x1 + c004653c: 0017d79b srliw a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:782 return unicode_decomp_entry(res, c, idx, code, len, type); - c0046370: 03f7f793 andi a5,a5,63 - c0046374: 85ee mv a1,s11 - c0046376: 0028 addi a0,sp,8 - c0046378: bf1ff0ef jal ra,c0045f68 - c004637c: 862a mv a2,a0 + c0046540: 03f7f793 andi a5,a5,63 + c0046544: 85ee mv a1,s11 + c0046546: 0028 addi a0,sp,8 + c0046548: bf1ff0ef jal ra,c0046138 + c004654c: 862a mv a2,a0 to_nfd_rec(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:931 if (l) { - c004637e: e119 bnez a0,c0046384 + c004654e: e119 bnez a0,c0046554 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:934 dbuf_put_u32(dbuf, c); - c0046380: c26e sw s11,4(sp) - c0046382: bf51 j c0046316 + c0046550: c26e sw s11,4(sp) + c0046552: bf51 j c00464e6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:932 to_nfd_rec(dbuf, (int *)res, l, is_compat); - c0046384: 86ce mv a3,s3 - c0046386: 002c addi a1,sp,8 - c0046388: 8526 mv a0,s1 - c004638a: ecbff0ef jal ra,c0046254 + c0046554: 86ce mv a3,s3 + c0046556: 002c addi a1,sp,8 + c0046558: 8526 mv a0,s1 + c004655a: ecbff0ef jal ra,c0046424 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:919 (discriminator 2) for(i = 0; i < src_len; i++) { - c004638e: 0905 addi s2,s2,1 - c0046390: b711 j c0046294 + c004655e: 0905 addi s2,s2,1 + c0046560: b711 j c0046464 -00000000c0046392 : +00000000c0046562 : lre_case_conv(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:158 if (c < 128) { - c0046392: 07f00793 li a5,127 - c0046396: 02b7e463 bltu a5,a1,c00463be + c0046562: 07f00793 li a5,127 + c0046566: 02b7e463 bltu a5,a1,c004658e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:159 if (conv_type) { - c004639a: ca19 beqz a2,c00463b0 + c004656a: ca19 beqz a2,c0046580 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:160 if (c >= 'A' && c <= 'Z') { - c004639c: fbf5879b addiw a5,a1,-65 - c00463a0: 4765 li a4,25 - c00463a2: 00f76463 bltu a4,a5,c00463aa + c004656c: fbf5879b addiw a5,a1,-65 + c0046570: 4765 li a4,25 + c0046572: 00f76463 bltu a4,a5,c004657a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:161 c = c - 'A' + 'a'; - c00463a6: 0205859b addiw a1,a1,32 + c0046576: 0205859b addiw a1,a1,32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:188 res[0] = c; - c00463aa: c10c sw a1,0(a0) + c004657a: c10c sw a1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:190 } - c00463ac: 4505 li a0,1 - c00463ae: 8082 ret + c004657c: 4505 li a0,1 + c004657e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:164 if (c >= 'a' && c <= 'z') { - c00463b0: f9f5879b addiw a5,a1,-97 - c00463b4: 4765 li a4,25 - c00463b6: fef76ae3 bltu a4,a5,c00463aa + c0046580: f9f5879b addiw a5,a1,-97 + c0046584: 4765 li a4,25 + c0046586: fef76ae3 bltu a4,a5,c004657a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:165 c = c - 'a' + 'A'; - c00463ba: 3581 addiw a1,a1,-32 - c00463bc: b7fd j c00463aa + c004658a: 3581 addiw a1,a1,-32 + c004658c: b7fd j c004657a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:173 idx_max = countof(case_conv_table1) - 1; - c00463be: 17100793 li a5,369 + c004658e: 17100793 li a5,369 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:172 idx_min = 0; - c00463c2: 4801 li a6,0 + c0046592: 4801 li a6,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:176 v = case_conv_table1[idx]; - c00463c4: 00021e17 auipc t3,0x21 - c00463c8: 30ce0e13 addi t3,t3,780 # c00676d0 + c0046594: 00021e17 auipc t3,0x21 + c0046598: 39ce0e13 addi t3,t3,924 # c0067930 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:175 idx = (unsigned)(idx_max + idx_min) / 2; - c00463cc: 00f806bb addw a3,a6,a5 - c00463d0: 0016d31b srliw t1,a3,0x1 - c00463d4: 0016d69b srliw a3,a3,0x1 + c004659c: 00f806bb addw a3,a6,a5 + c00465a0: 0016d31b srliw t1,a3,0x1 + c00465a4: 0016d69b srliw a3,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:176 v = case_conv_table1[idx]; - c00463d8: 00269713 slli a4,a3,0x2 - c00463dc: 9772 add a4,a4,t3 - c00463de: 4318 lw a4,0(a4) + c00465a8: 00269713 slli a4,a3,0x2 + c00465ac: 9772 add a4,a4,t3 + c00465ae: 4318 lw a4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:177 code = v >> (32 - 17); - c00463e0: 00f75e9b srliw t4,a4,0xf - c00463e4: 00f7589b srliw a7,a4,0xf + c00465b0: 00f75e9b srliw t4,a4,0xf + c00465b4: 00f7589b srliw a7,a4,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:179 if (c < code) { - c00463e8: 01d5f763 bgeu a1,t4,c00463f6 + c00465b8: 01d5f763 bgeu a1,t4,c00465c6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:180 idx_max = idx - 1; - c00463ec: fff3079b addiw a5,t1,-1 + c00465bc: fff3079b addiw a5,t1,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:174 while (idx_min <= idx_max) { - c00463f0: fd07dee3 bge a5,a6,c00463cc - c00463f4: bf5d j c00463aa + c00465c0: fd07dee3 bge a5,a6,c004659c + c00465c4: bf5d j c004657a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:178 len = (v >> (32 - 17 - 7)) & 0x7f; - c00463f6: 0087581b srliw a6,a4,0x8 - c00463fa: 07f87813 andi a6,a6,127 + c00465c6: 0087581b srliw a6,a4,0x8 + c00465ca: 07f87813 andi a6,a6,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:181 } else if (c >= code + len) { - c00463fe: 0108883b addw a6,a7,a6 - c0046402: 0105e563 bltu a1,a6,c004640c + c00465ce: 0108883b addw a6,a7,a6 + c00465d2: 0105e563 bltu a1,a6,c00465dc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:182 idx_min = idx + 1; - c0046406: 0013081b addiw a6,t1,1 - c004640a: b7dd j c00463f0 + c00465d6: 0013081b addiw a6,t1,1 + c00465da: b7dd j c00465c0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:184 return lre_case_conv_entry(res, c, conv_type, idx, v); - c004640c: a009 j c004640e + c00465dc: a009 j c00465de -00000000c004640e : +00000000c00465de : lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:64 data = ((v & 0xf) << 8) | case_conv_table2[idx]; - c004640e: 6885 lui a7,0x1 - c0046410: f0088893 addi a7,a7,-256 # f00 <__clzdi2-0xbffff100> - c0046414: 0087179b slliw a5,a4,0x8 - c0046418: 0117f7b3 and a5,a5,a7 - c004641c: 02069893 slli a7,a3,0x20 - c0046420: 0208d893 srli a7,a7,0x20 - c0046424: 00022697 auipc a3,0x22 - c0046428: 87468693 addi a3,a3,-1932 # c0067c98 - c004642c: 96c6 add a3,a3,a7 - c004642e: 0006c683 lbu a3,0(a3) + c00465de: 6885 lui a7,0x1 + c00465e0: f0088893 addi a7,a7,-256 # f00 <__clzdi2-0xbffff100> + c00465e4: 0087179b slliw a5,a4,0x8 + c00465e8: 0117f7b3 and a5,a5,a7 + c00465ec: 02069893 slli a7,a3,0x20 + c00465f0: 0208d893 srli a7,a7,0x20 + c00465f4: 00022697 auipc a3,0x22 + c00465f8: 90468693 addi a3,a3,-1788 # c0067ef8 + c00465fc: 96c6 add a3,a3,a7 + c00465fe: 0006c683 lbu a3,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:60 { - c0046432: 7179 addi sp,sp,-48 + c0046602: 7179 addi sp,sp,-48 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:63 type = (v >> (32 - 17 - 7 - 4)) & 0xf; - c0046434: 0047581b srliw a6,a4,0x4 + c0046604: 0047581b srliw a6,a4,0x4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:64 data = ((v & 0xf) << 8) | case_conv_table2[idx]; - c0046438: 8fd5 or a5,a5,a3 + c0046608: 8fd5 or a5,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:60 { - c004643a: f022 sd s0,32(sp) - c004643c: ec26 sd s1,24(sp) - c004643e: f406 sd ra,40(sp) - c0046440: 84aa mv s1,a0 - c0046442: 46b1 li a3,12 + c004660a: f022 sd s0,32(sp) + c004660c: ec26 sd s1,24(sp) + c004660e: f406 sd ra,40(sp) + c0046610: 84aa mv s1,a0 + c0046612: 46b1 li a3,12 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:63 type = (v >> (32 - 17 - 7 - 4)) & 0xf; - c0046444: 00f87513 andi a0,a6,15 + c0046614: 00f87513 andi a0,a6,15 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:60 { - c0046448: 8432 mv s0,a2 + c0046618: 8432 mv s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:64 data = ((v & 0xf) << 8) | case_conv_table2[idx]; - c004644a: 2781 sext.w a5,a5 + c004661a: 2781 sext.w a5,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:66 switch(type) { - c004644c: 1aa6eb63 bltu a3,a0,c0046602 - c0046450: 00021e17 auipc t3,0x21 - c0046454: 150e0e13 addi t3,t3,336 # c00675a0 - c0046458: 00251893 slli a7,a0,0x2 - c004645c: 98f2 add a7,a7,t3 - c004645e: 0008a683 lw a3,0(a7) - c0046462: 00c03633 snez a2,a2 - c0046466: 8332 mv t1,a2 - c0046468: 96f2 add a3,a3,t3 - c004646a: 00f7571b srliw a4,a4,0xf - c004646e: 8682 jr a3 + c004661c: 1aa6eb63 bltu a3,a0,c00467d2 + c0046620: 00021e17 auipc t3,0x21 + c0046624: 1e0e0e13 addi t3,t3,480 # c0067800 + c0046628: 00251893 slli a7,a0,0x2 + c004662c: 98f2 add a7,a7,t3 + c004662e: 0008a683 lw a3,0(a7) + c0046632: 00c03633 snez a2,a2 + c0046636: 8332 mv t1,a2 + c0046638: 96f2 add a3,a3,t3 + c004663a: 00f7571b srliw a4,a4,0xf + c004663e: 8682 jr a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:71 if (conv_type == (type & 1) || - c0046470: 00187693 andi a3,a6,1 - c0046474: 00868963 beq a3,s0,c0046486 + c0046640: 00187693 andi a3,a6,1 + c0046644: 00868963 beq a3,s0,c0046656 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:71 (discriminator 1) - c0046478: 00e87813 andi a6,a6,14 - c004647c: 02080463 beqz a6,c00464a4 + c0046648: 00e87813 andi a6,a6,14 + c004664c: 02080463 beqz a6,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:72 (type >= RUN_TYPE_UF && conv_type == 2)) { - c0046480: 4689 li a3,2 - c0046482: 02d41163 bne s0,a3,c00464a4 + c0046650: 4689 li a3,2 + c0046652: 02d41163 bne s0,a3,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:73 c = c - code + (case_conv_table1[data] >> (32 - 17)); - c0046486: 02079613 slli a2,a5,0x20 - c004648a: 01e65693 srli a3,a2,0x1e - c004648e: 00021797 auipc a5,0x21 - c0046492: 24278793 addi a5,a5,578 # c00676d0 - c0046496: 97b6 add a5,a5,a3 - c0046498: 40e5873b subw a4,a1,a4 - c004649c: 438c lw a1,0(a5) - c004649e: 00f5d59b srliw a1,a1,0xf + c0046656: 02079613 slli a2,a5,0x20 + c004665a: 01e65693 srli a3,a2,0x1e + c004665e: 00021797 auipc a5,0x21 + c0046662: 2d278793 addi a5,a5,722 # c0067930 + c0046666: 97b6 add a5,a5,a3 + c0046668: 40e5873b subw a4,a1,a4 + c004666c: 438c lw a1,0(a5) + c004666e: 00f5d59b srliw a1,a1,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:80 c = (a ^ 1) + code; - c00464a2: 9db9 addw a1,a1,a4 + c0046672: 9db9 addw a1,a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:147 res[0] = c; - c00464a4: c08c sw a1,0(s1) + c0046674: c08c sw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:148 return 1; - c00464a6: 4405 li s0,1 - c00464a8: a0a5 j c0046510 + c0046676: 4405 li s0,1 + c0046678: a0a5 j c00466e0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:77 a = c - code; - c00464aa: 40e587bb subw a5,a1,a4 + c004667a: 40e587bb subw a5,a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:78 if ((a & 1) != (1 - is_lower)) - c00464ae: 00164613 xori a2,a2,1 - c00464b2: 0017f693 andi a3,a5,1 - c00464b6: fed617e3 bne a2,a3,c00464a4 + c004667e: 00164613 xori a2,a2,1 + c0046682: 0017f693 andi a3,a5,1 + c0046686: fed617e3 bne a2,a3,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:80 c = (a ^ 1) + code; - c00464ba: 0017c593 xori a1,a5,1 - c00464be: b7d5 j c00464a2 + c004668a: 0017c593 xori a1,a5,1 + c004668e: b7d5 j c0046672 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:83 a = c - code; - c00464c0: 40e5873b subw a4,a1,a4 + c0046690: 40e5873b subw a4,a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:84 if (a == 1) { - c00464c4: 4785 li a5,1 - c00464c6: 00f71863 bne a4,a5,c00464d6 + c0046694: 4785 li a5,1 + c0046696: 00f71863 bne a4,a5,c00466a6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:85 c += 2 * is_lower - 1; - c00464ca: 35fd addiw a1,a1,-1 - c00464cc: 0016131b slliw t1,a2,0x1 + c004669a: 35fd addiw a1,a1,-1 + c004669c: 0016131b slliw t1,a2,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:87 c += (2 * is_lower - 1) * 2; - c00464d0: 00b305bb addw a1,t1,a1 - c00464d4: bfc1 j c00464a4 + c00466a0: 00b305bb addw a1,t1,a1 + c00466a4: bfc1 j c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:86 } else if (a == (1 - is_lower) * 2) { - c00464d6: 00163613 seqz a2,a2 - c00464da: 0016161b slliw a2,a2,0x1 - c00464de: fce613e3 bne a2,a4,c00464a4 + c00466a6: 00163613 seqz a2,a2 + c00466aa: 0016161b slliw a2,a2,0x1 + c00466ae: fce613e3 bne a2,a4,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:87 c += (2 * is_lower - 1) * 2; - c00464e2: 35f9 addiw a1,a1,-2 - c00464e4: 0023131b slliw t1,t1,0x2 - c00464e8: b7e5 j c00464d0 + c00466b2: 35f9 addiw a1,a1,-2 + c00466b4: 0023131b slliw t1,t1,0x2 + c00466b8: b7e5 j c00466a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:73 c = c - code + (case_conv_table1[data] >> (32 - 17)); - c00464ea: 40e5873b subw a4,a1,a4 - c00464ee: 00021697 auipc a3,0x21 - c00464f2: 16a68693 addi a3,a3,362 # c0067658 + c00466ba: 40e5873b subw a4,a1,a4 + c00466be: 00021697 auipc a3,0x21 + c00466c2: 1fa68693 addi a3,a3,506 # c00678b8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:91 if (!is_lower) { - c00464f6: e01d bnez s0,c004651c + c00466c6: e01d bnez s0,c00466ec /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:92 res[0] = c - code + case_conv_ext[data >> 6]; - c00464f8: 0067d79b srliw a5,a5,0x6 - c00464fc: 0786 slli a5,a5,0x1 - c00464fe: 96be add a3,a3,a5 - c0046500: 0006d583 lhu a1,0(a3) + c00466c8: 0067d79b srliw a5,a5,0x6 + c00466cc: 0786 slli a5,a5,0x1 + c00466ce: 96be add a3,a3,a5 + c00466d0: 0006d583 lhu a1,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:93 res[1] = 0x399; - c0046504: 39900793 li a5,921 + c00466d4: 39900793 li a5,921 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:92 res[0] = c - code + case_conv_ext[data >> 6]; - c0046508: 9db9 addw a1,a1,a4 - c004650a: c08c sw a1,0(s1) + c00466d8: 9db9 addw a1,a1,a4 + c00466da: c08c sw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:119 res[1] = case_conv_ext[data & 0x3f]; - c004650c: c0dc sw a5,4(s1) + c00466dc: c0dc sw a5,4(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:120 return 2; - c004650e: 4409 li s0,2 + c00466de: 4409 li s0,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:149 } - c0046510: 70a2 ld ra,40(sp) - c0046512: 8522 mv a0,s0 - c0046514: 7402 ld s0,32(sp) - c0046516: 64e2 ld s1,24(sp) - c0046518: 6145 addi sp,sp,48 - c004651a: 8082 ret + c00466e0: 70a2 ld ra,40(sp) + c00466e2: 8522 mv a0,s0 + c00466e4: 7402 ld s0,32(sp) + c00466e6: 64e2 ld s1,24(sp) + c00466e8: 6145 addi sp,sp,48 + c00466ea: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:96 c = c - code + case_conv_ext[data & 0x3f]; - c004651c: 03f7f793 andi a5,a5,63 - c0046520: 0786 slli a5,a5,0x1 - c0046522: 96be add a3,a3,a5 - c0046524: 0006d583 lhu a1,0(a3) - c0046528: bfad j c00464a2 + c00466ec: 03f7f793 andi a5,a5,63 + c00466f0: 0786 slli a5,a5,0x1 + c00466f2: 96be add a3,a3,a5 + c00466f4: 0006d583 lhu a1,0(a3) + c00466f8: bfad j c0046672 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:100 if (conv_type == 1) - c004652a: 4705 li a4,1 - c004652c: f6e40ce3 beq s0,a4,c00464a4 + c00466fa: 4705 li a4,1 + c00466fc: f6e40ce3 beq s0,a4,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:102 c = data + (conv_type == 2) * 0x20; - c0046530: 4709 li a4,2 - c0046532: 02000593 li a1,32 - c0046536: 00e40363 beq s0,a4,c004653c - c004653a: 4581 li a1,0 + c0046700: 4709 li a4,2 + c0046702: 02000593 li a1,32 + c0046706: 00e40363 beq s0,a4,c004670c + c004670a: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:102 (discriminator 4) - c004653c: 9dbd addw a1,a1,a5 + c004670c: 9dbd addw a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:103 (discriminator 4) break; - c004653e: b79d j c00464a4 + c004670e: b79d j c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:105 if (conv_type == 1) - c0046540: 4705 li a4,1 - c0046542: f6e401e3 beq s0,a4,c00464a4 + c0046710: 4705 li a4,1 + c0046712: f6e401e3 beq s0,a4,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:107 c = case_conv_ext[data] + (conv_type == 2); - c0046546: 02079693 slli a3,a5,0x20 - c004654a: 01f6d713 srli a4,a3,0x1f - c004654e: 00021797 auipc a5,0x21 - c0046552: 10a78793 addi a5,a5,266 # c0067658 - c0046556: 97ba add a5,a5,a4 - c0046558: 0007d583 lhu a1,0(a5) - c004655c: 1479 addi s0,s0,-2 - c004655e: 00143413 seqz s0,s0 - c0046562: 9da1 addw a1,a1,s0 + c0046716: 02079693 slli a3,a5,0x20 + c004671a: 01f6d713 srli a4,a3,0x1f + c004671e: 00021797 auipc a5,0x21 + c0046722: 19a78793 addi a5,a5,410 # c00678b8 + c0046726: 97ba add a5,a5,a4 + c0046728: 0007d583 lhu a1,0(a5) + c004672c: 1479 addi s0,s0,-2 + c004672e: 00143413 seqz s0,s0 + c0046732: 9da1 addw a1,a1,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:108 break; - c0046564: b781 j c00464a4 + c0046734: b781 j c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:111 if (is_lower != (type - RUN_TYPE_U_EXT)) - c0046566: 155d addi a0,a0,-9 - c0046568: 00a03533 snez a0,a0 - c004656c: f2c51ce3 bne a0,a2,c00464a4 + c0046736: 155d addi a0,a0,-9 + c0046738: 00a03533 snez a0,a0 + c004673c: f2c51ce3 bne a0,a2,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:113 c = case_conv_ext[data]; - c0046570: 02079693 slli a3,a5,0x20 - c0046574: 01f6d713 srli a4,a3,0x1f - c0046578: 00021797 auipc a5,0x21 - c004657c: 0e078793 addi a5,a5,224 # c0067658 - c0046580: 97ba add a5,a5,a4 - c0046582: 0007d583 lhu a1,0(a5) + c0046740: 02079693 slli a3,a5,0x20 + c0046744: 01f6d713 srli a4,a3,0x1f + c0046748: 00021797 auipc a5,0x21 + c004674c: 17078793 addi a5,a5,368 # c00678b8 + c0046750: 97ba add a5,a5,a4 + c0046752: 0007d583 lhu a1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:114 break; - c0046586: bf39 j c00464a4 + c0046756: bf39 j c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:116 if (!is_lower) - c0046588: dc11 beqz s0,c00464a4 + c0046758: dc11 beqz s0,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:118 res[0] = c - code + case_conv_ext[data >> 6]; - c004658a: 0067d69b srliw a3,a5,0x6 - c004658e: 00021617 auipc a2,0x21 - c0046592: 0ca60613 addi a2,a2,202 # c0067658 - c0046596: 0686 slli a3,a3,0x1 - c0046598: 96b2 add a3,a3,a2 - c004659a: 0006d683 lhu a3,0(a3) + c004675a: 0067d69b srliw a3,a5,0x6 + c004675e: 00021617 auipc a2,0x21 + c0046762: 15a60613 addi a2,a2,346 # c00678b8 + c0046766: 0686 slli a3,a3,0x1 + c0046768: 96b2 add a3,a3,a2 + c004676a: 0006d683 lhu a3,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:119 res[1] = case_conv_ext[data & 0x3f]; - c004659e: 03f7f793 andi a5,a5,63 - c00465a2: 0786 slli a5,a5,0x1 + c004676e: 03f7f793 andi a5,a5,63 + c0046772: 0786 slli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:118 res[0] = c - code + case_conv_ext[data >> 6]; - c00465a4: 9d99 subw a1,a1,a4 - c00465a6: 9db5 addw a1,a1,a3 + c0046774: 9d99 subw a1,a1,a4 + c0046776: 9db5 addw a1,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:119 res[1] = case_conv_ext[data & 0x3f]; - c00465a8: 963e add a2,a2,a5 - c00465aa: 00065783 lhu a5,0(a2) + c0046778: 963e add a2,a2,a5 + c004677a: 00065783 lhu a5,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:118 res[0] = c - code + case_conv_ext[data >> 6]; - c00465ae: c08c sw a1,0(s1) + c004677e: c08c sw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:119 res[1] = case_conv_ext[data & 0x3f]; - c00465b0: bfb1 j c004650c + c0046780: bfb1 j c00466dc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:122 if (conv_type == 1) - c00465b2: 4685 li a3,1 - c00465b4: eed408e3 beq s0,a3,c00464a4 + c0046782: 4685 li a3,1 + c0046784: eed408e3 beq s0,a3,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:124 res[0] = c - code + case_conv_ext[data >> 6]; - c00465b8: 0067d69b srliw a3,a5,0x6 - c00465bc: 00021617 auipc a2,0x21 - c00465c0: 09c60613 addi a2,a2,156 # c0067658 - c00465c4: 0686 slli a3,a3,0x1 + c0046788: 0067d69b srliw a3,a5,0x6 + c004678c: 00021617 auipc a2,0x21 + c0046790: 12c60613 addi a2,a2,300 # c00678b8 + c0046794: 0686 slli a3,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:125 res[1] = case_conv_ext[data & 0x3f]; - c00465c6: 03f7f793 andi a5,a5,63 + c0046796: 03f7f793 andi a5,a5,63 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:124 res[0] = c - code + case_conv_ext[data >> 6]; - c00465ca: 96b2 add a3,a3,a2 + c004679a: 96b2 add a3,a3,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:125 res[1] = case_conv_ext[data & 0x3f]; - c00465cc: 0786 slli a5,a5,0x1 + c004679c: 0786 slli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:124 res[0] = c - code + case_conv_ext[data >> 6]; - c00465ce: 0006d683 lhu a3,0(a3) + c004679e: 0006d683 lhu a3,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:125 res[1] = case_conv_ext[data & 0x3f]; - c00465d2: 963e add a2,a2,a5 - c00465d4: 00065783 lhu a5,0(a2) + c00467a2: 963e add a2,a2,a5 + c00467a4: 00065783 lhu a5,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:124 res[0] = c - code + case_conv_ext[data >> 6]; - c00465d8: 9d99 subw a1,a1,a4 - c00465da: 9db5 addw a1,a1,a3 + c00467a8: 9d99 subw a1,a1,a4 + c00467aa: 9db5 addw a1,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:125 res[1] = case_conv_ext[data & 0x3f]; - c00465dc: c0dc sw a5,4(s1) + c00467ac: c0dc sw a5,4(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:124 res[0] = c - code + case_conv_ext[data >> 6]; - c00465de: c08c sw a1,0(s1) + c00467ae: c08c sw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:126 if (conv_type == 2) { - c00465e0: 4789 li a5,2 - c00465e2: f2f416e3 bne s0,a5,c004650e + c00467b0: 4789 li a5,2 + c00467b2: f2f416e3 bne s0,a5,c00466de lre_case_conv1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c00465e6: 4605 li a2,1 - c00465e8: 850a mv a0,sp - c00465ea: da9ff0ef jal ra,c0046392 + c00467b6: 4605 li a2,1 + c00467b8: 850a mv a0,sp + c00467ba: da9ff0ef jal ra,c0046562 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:55 return res[0]; - c00465ee: 4782 lw a5,0(sp) + c00467be: 4782 lw a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c00465f0: 40cc lw a1,4(s1) - c00465f2: 4605 li a2,1 + c00467c0: 40cc lw a1,4(s1) + c00467c2: 4605 li a2,1 lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:128 res[0] = lre_case_conv1(res[0], 1); - c00465f4: c09c sw a5,0(s1) + c00467c4: c09c sw a5,0(s1) lre_case_conv1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c00465f6: 850a mv a0,sp - c00465f8: d9bff0ef jal ra,c0046392 + c00467c6: 850a mv a0,sp + c00467c8: d9bff0ef jal ra,c0046562 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:55 return res[0]; - c00465fc: 4782 lw a5,0(sp) + c00467cc: 4782 lw a5,0(sp) lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:129 res[1] = lre_case_conv1(res[1], 1); - c00465fe: c0dc sw a5,4(s1) - c0046600: bf01 j c0046510 + c00467ce: c0dc sw a5,4(s1) + c00467d0: bf01 j c00466e0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:134 if (conv_type == 1) - c0046602: 4705 li a4,1 - c0046604: eae600e3 beq a2,a4,c00464a4 + c00467d2: 4705 li a4,1 + c00467d4: eae600e3 beq a2,a4,c0046674 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:136 res[0] = case_conv_ext[data >> 8]; - c0046608: 0087d71b srliw a4,a5,0x8 - c004660c: 00021697 auipc a3,0x21 - c0046610: 04c68693 addi a3,a3,76 # c0067658 - c0046614: 0706 slli a4,a4,0x1 - c0046616: 9736 add a4,a4,a3 - c0046618: 00075583 lhu a1,0(a4) + c00467d8: 0087d71b srliw a4,a5,0x8 + c00467dc: 00021697 auipc a3,0x21 + c00467e0: 0dc68693 addi a3,a3,220 # c00678b8 + c00467e4: 0706 slli a4,a4,0x1 + c00467e6: 9736 add a4,a4,a3 + c00467e8: 00075583 lhu a1,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:137 res[1] = case_conv_ext[(data >> 4) & 0xf]; - c004661c: 0047d71b srliw a4,a5,0x4 - c0046620: 8b3d andi a4,a4,15 + c00467ec: 0047d71b srliw a4,a5,0x4 + c00467f0: 8b3d andi a4,a4,15 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:138 res[2] = case_conv_ext[data & 0xf]; - c0046622: 8bbd andi a5,a5,15 + c00467f2: 8bbd andi a5,a5,15 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:137 res[1] = case_conv_ext[(data >> 4) & 0xf]; - c0046624: 0706 slli a4,a4,0x1 + c00467f4: 0706 slli a4,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:138 res[2] = case_conv_ext[data & 0xf]; - c0046626: 0786 slli a5,a5,0x1 + c00467f6: 0786 slli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:137 res[1] = case_conv_ext[(data >> 4) & 0xf]; - c0046628: 9736 add a4,a4,a3 + c00467f8: 9736 add a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:138 res[2] = case_conv_ext[data & 0xf]; - c004662a: 97b6 add a5,a5,a3 - c004662c: 0007d783 lhu a5,0(a5) + c00467fa: 97b6 add a5,a5,a3 + c00467fc: 0007d783 lhu a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:137 res[1] = case_conv_ext[(data >> 4) & 0xf]; - c0046630: 00075703 lhu a4,0(a4) + c0046800: 00075703 lhu a4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:136 res[0] = case_conv_ext[data >> 8]; - c0046634: c08c sw a1,0(s1) + c0046804: c08c sw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:138 res[2] = case_conv_ext[data & 0xf]; - c0046636: c49c sw a5,8(s1) + c0046806: c49c sw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:137 res[1] = case_conv_ext[(data >> 4) & 0xf]; - c0046638: c0d8 sw a4,4(s1) + c0046808: c0d8 sw a4,4(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:139 if (conv_type == 2) { - c004663a: 4789 li a5,2 - c004663c: 02f61663 bne a2,a5,c0046668 + c004680a: 4789 li a5,2 + c004680c: 02f61663 bne a2,a5,c0046838 lre_case_conv1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c0046640: 4605 li a2,1 - c0046642: 850a mv a0,sp - c0046644: d4fff0ef jal ra,c0046392 + c0046810: 4605 li a2,1 + c0046812: 850a mv a0,sp + c0046814: d4fff0ef jal ra,c0046562 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:55 return res[0]; - c0046648: 4782 lw a5,0(sp) + c0046818: 4782 lw a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c004664a: 40cc lw a1,4(s1) - c004664c: 4605 li a2,1 + c004681a: 40cc lw a1,4(s1) + c004681c: 4605 li a2,1 lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:141 res[0] = lre_case_conv1(res[0], 1); - c004664e: c09c sw a5,0(s1) + c004681e: c09c sw a5,0(s1) lre_case_conv1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c0046650: 850a mv a0,sp - c0046652: d41ff0ef jal ra,c0046392 + c0046820: 850a mv a0,sp + c0046822: d41ff0ef jal ra,c0046562 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:55 return res[0]; - c0046656: 4782 lw a5,0(sp) + c0046826: 4782 lw a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c0046658: 448c lw a1,8(s1) - c004665a: 4605 li a2,1 + c0046828: 448c lw a1,8(s1) + c004682a: 4605 li a2,1 lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:142 res[1] = lre_case_conv1(res[1], 1); - c004665c: c0dc sw a5,4(s1) + c004682c: c0dc sw a5,4(s1) lre_case_conv1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:54 lre_case_conv(res, c, conv_type); - c004665e: 850a mv a0,sp - c0046660: d33ff0ef jal ra,c0046392 + c004682e: 850a mv a0,sp + c0046830: d33ff0ef jal ra,c0046562 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:55 return res[0]; - c0046664: 4782 lw a5,0(sp) + c0046834: 4782 lw a5,0(sp) lre_case_conv_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:143 res[2] = lre_case_conv1(res[2], 1); - c0046666: c49c sw a5,8(s1) + c0046836: c49c sw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:145 return 3; - c0046668: 440d li s0,3 - c004666a: b55d j c0046510 + c0046838: 440d li s0,3 + c004683a: b55d j c00466e0 -00000000c004666c : +00000000c004683c : lre_case_folding_entry(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:193 { - c004666c: 7179 addi sp,sp,-48 - c004666e: f022 sd s0,32(sp) - c0046670: f406 sd ra,40(sp) - c0046672: ec26 sd s1,24(sp) - c0046674: 842a mv s0,a0 - c0046676: 8732 mv a4,a2 + c004683c: 7179 addi sp,sp,-48 + c004683e: f022 sd s0,32(sp) + c0046840: f406 sd ra,40(sp) + c0046842: ec26 sd s1,24(sp) + c0046844: 842a mv s0,a0 + c0046846: 8732 mv a4,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:197 if (is_unicode) { - c0046678: c6a9 beqz a3,c00466c2 + c0046848: c6a9 beqz a3,c0046892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:198 len = lre_case_conv_entry(res, c, 2, idx, v); - c004667a: 86ae mv a3,a1 - c004667c: 4609 li a2,2 - c004667e: 85aa mv a1,a0 - c0046680: 850a mv a0,sp - c0046682: d8dff0ef jal ra,c004640e + c004684a: 86ae mv a3,a1 + c004684c: 4609 li a2,2 + c004684e: 85aa mv a1,a0 + c0046850: 850a mv a0,sp + c0046852: d8dff0ef jal ra,c00465de /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:199 if (len == 1) { - c0046686: 4785 li a5,1 - c0046688: 00f51863 bne a0,a5,c0046698 + c0046856: 4785 li a5,1 + c0046858: 00f51863 bne a0,a5,c0046868 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:200 c = res[0]; - c004668c: 4502 lw a0,0(sp) + c004685c: 4502 lw a0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:224 } - c004668e: 70a2 ld ra,40(sp) - c0046690: 7402 ld s0,32(sp) - c0046692: 64e2 ld s1,24(sp) - c0046694: 6145 addi sp,sp,48 - c0046696: 8082 ret + c004685e: 70a2 ld ra,40(sp) + c0046860: 7402 ld s0,32(sp) + c0046862: 64e2 ld s1,24(sp) + c0046864: 6145 addi sp,sp,48 + c0046866: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:204 if (c == 0xfb06) { - c0046698: 67c1 lui a5,0x10 - c004669a: b0678713 addi a4,a5,-1274 # fb06 <__clzdi2-0xbfff04fa> + c0046868: 67c1 lui a5,0x10 + c004686a: b0678713 addi a4,a5,-1274 # fb06 <__clzdi2-0xbfff04fa> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:205 c = 0xfb05; - c004669e: b0578513 addi a0,a5,-1275 + c004686e: b0578513 addi a0,a5,-1275 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:204 if (c == 0xfb06) { - c00466a2: fee406e3 beq s0,a4,c004668e + c0046872: fee406e3 beq s0,a4,c004685e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:206 } else if (c == 0x01fd3) { - c00466a6: 6789 lui a5,0x2 - c00466a8: fd378713 addi a4,a5,-45 # 1fd3 <__clzdi2-0xbfffe02d> + c0046876: 6789 lui a5,0x2 + c0046878: fd378713 addi a4,a5,-45 # 1fd3 <__clzdi2-0xbfffe02d> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:207 c = 0x390; - c00466ac: 39000513 li a0,912 + c004687c: 39000513 li a0,912 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:206 } else if (c == 0x01fd3) { - c00466b0: fce40fe3 beq s0,a4,c004668e + c0046880: fce40fe3 beq s0,a4,c004685e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:208 } else if (c == 0x01fe3) { - c00466b4: 178d addi a5,a5,-29 + c0046884: 178d addi a5,a5,-29 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:209 c = 0x3b0; - c00466b6: 3b000513 li a0,944 + c0046886: 3b000513 li a0,944 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:208 } else if (c == 0x01fe3) { - c00466ba: fcf40ae3 beq s0,a5,c004668e + c004688a: fcf40ae3 beq s0,a5,c004685e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:193 { - c00466be: 8522 mv a0,s0 - c00466c0: b7f9 j c004668e + c004688e: 8522 mv a0,s0 + c0046890: b7f9 j c004685e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:213 if (likely(c < 128)) { - c00466c2: 07f00493 li s1,127 - c00466c6: 00a4e963 bltu s1,a0,c00466d8 + c0046892: 07f00493 li s1,127 + c0046896: 00a4e963 bltu s1,a0,c00468a8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:214 if (c >= 'a' && c <= 'z') - c00466ca: f9f5079b addiw a5,a0,-97 - c00466ce: 4765 li a4,25 - c00466d0: fef767e3 bltu a4,a5,c00466be + c004689a: f9f5079b addiw a5,a0,-97 + c004689e: 4765 li a4,25 + c00468a0: fef767e3 bltu a4,a5,c004688e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:215 c = c - 'a' + 'A'; - c00466d4: 3501 addiw a0,a0,-32 - c00466d6: bf65 j c004668e + c00468a4: 3501 addiw a0,a0,-32 + c00468a6: bf65 j c004685e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:218 len = lre_case_conv_entry(res, c, FALSE, idx, v); - c00466d8: 86ae mv a3,a1 - c00466da: 4601 li a2,0 - c00466dc: 85aa mv a1,a0 - c00466de: 850a mv a0,sp - c00466e0: d2fff0ef jal ra,c004640e + c00468a8: 86ae mv a3,a1 + c00468aa: 4601 li a2,0 + c00468ac: 85aa mv a1,a0 + c00468ae: 850a mv a0,sp + c00468b0: d2fff0ef jal ra,c00465de /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:219 if (len == 1 && res[0] >= 128) - c00466e4: 4785 li a5,1 - c00466e6: fcf51ce3 bne a0,a5,c00466be + c00468b4: 4785 li a5,1 + c00468b6: fcf51ce3 bne a0,a5,c004688e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:219 (discriminator 1) - c00466ea: 4502 lw a0,0(sp) - c00466ec: fca4f9e3 bgeu s1,a0,c00466be - c00466f0: bf79 j c004668e + c00468ba: 4502 lw a0,0(sp) + c00468bc: fca4f9e3 bgeu s1,a0,c004688e + c00468c0: bf79 j c004685e -00000000c00466f2 : +00000000c00468c2 : lre_canonicalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:229 if (c < 128) { - c00466f2: 07f00793 li a5,127 + c00468c2: 07f00793 li a5,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:228 { - c00466f6: 86ae mv a3,a1 + c00468c6: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:229 if (c < 128) { - c00466f8: 02a7e263 bltu a5,a0,c004671c + c00468c8: 02a7e263 bltu a5,a0,c00468ec /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:231 if (is_unicode) { - c00466fc: c989 beqz a1,c004670e + c00468cc: c989 beqz a1,c00468de /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:232 if (c >= 'A' && c <= 'Z') { - c00466fe: fbf5079b addiw a5,a0,-65 - c0046702: 4765 li a4,25 - c0046704: 04f76763 bltu a4,a5,c0046752 + c00468ce: fbf5079b addiw a5,a0,-65 + c00468d2: 4765 li a4,25 + c00468d4: 04f76763 bltu a4,a5,c0046922 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:233 c = c - 'A' + 'a'; - c0046708: 0205051b addiw a0,a0,32 - c004670c: 8082 ret + c00468d8: 0205051b addiw a0,a0,32 + c00468dc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:236 if (c >= 'a' && c <= 'z') { - c004670e: f9f5079b addiw a5,a0,-97 - c0046712: 4765 li a4,25 - c0046714: 02f76f63 bltu a4,a5,c0046752 + c00468de: f9f5079b addiw a5,a0,-97 + c00468e2: 4765 li a4,25 + c00468e4: 02f76f63 bltu a4,a5,c0046922 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:237 c = c - 'a' + 'A'; - c0046718: 3501 addiw a0,a0,-32 - c004671a: 8082 ret + c00468e8: 3501 addiw a0,a0,-32 + c00468ea: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:245 idx_max = countof(case_conv_table1) - 1; - c004671c: 17100713 li a4,369 + c00468ec: 17100713 li a4,369 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:244 idx_min = 0; - c0046720: 4801 li a6,0 + c00468f0: 4801 li a6,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:248 v = case_conv_table1[idx]; - c0046722: 00021317 auipc t1,0x21 - c0046726: fae30313 addi t1,t1,-82 # c00676d0 + c00468f2: 00021317 auipc t1,0x21 + c00468f6: 03e30313 addi t1,t1,62 # c0067930 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:247 idx = (unsigned)(idx_max + idx_min) / 2; - c004672a: 00e807bb addw a5,a6,a4 - c004672e: 0017d59b srliw a1,a5,0x1 - c0046732: 0017d89b srliw a7,a5,0x1 + c00468fa: 00e807bb addw a5,a6,a4 + c00468fe: 0017d59b srliw a1,a5,0x1 + c0046902: 0017d89b srliw a7,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:248 v = case_conv_table1[idx]; - c0046736: 00259793 slli a5,a1,0x2 - c004673a: 979a add a5,a5,t1 - c004673c: 4390 lw a2,0(a5) + c0046906: 00259793 slli a5,a1,0x2 + c004690a: 979a add a5,a5,t1 + c004690c: 4390 lw a2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:249 code = v >> (32 - 17); - c004673e: 00f65e1b srliw t3,a2,0xf - c0046742: 00f6579b srliw a5,a2,0xf + c004690e: 00f65e1b srliw t3,a2,0xf + c0046912: 00f6579b srliw a5,a2,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:251 if (c < code) { - c0046746: 01c57763 bgeu a0,t3,c0046754 + c0046916: 01c57763 bgeu a0,t3,c0046924 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:252 idx_max = idx - 1; - c004674a: fff8871b addiw a4,a7,-1 + c004691a: fff8871b addiw a4,a7,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:246 while (idx_min <= idx_max) { - c004674e: fd075ee3 bge a4,a6,c004672a + c004691e: fd075ee3 bge a4,a6,c00468fa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:261 } - c0046752: 8082 ret + c0046922: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:250 len = (v >> (32 - 17 - 7)) & 0x7f; - c0046754: 0086581b srliw a6,a2,0x8 - c0046758: 07f87813 andi a6,a6,127 + c0046924: 0086581b srliw a6,a2,0x8 + c0046928: 07f87813 andi a6,a6,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:253 } else if (c >= code + len) { - c004675c: 010787bb addw a5,a5,a6 - c0046760: 00f56563 bltu a0,a5,c004676a + c004692c: 010787bb addw a5,a5,a6 + c0046930: 00f56563 bltu a0,a5,c004693a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:254 idx_min = idx + 1; - c0046764: 0018881b addiw a6,a7,1 - c0046768: b7dd j c004674e + c0046934: 0018881b addiw a6,a7,1 + c0046938: b7dd j c004691e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:256 return lre_case_folding_entry(c, idx, v, is_unicode); - c004676a: f03ff06f j c004666c + c004693a: f03ff06f j c004683c -00000000c004676e : +00000000c004693e : lre_is_cased(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:349 idx_max = countof(case_conv_table1) - 1; - c004676e: 17100713 li a4,369 + c004693e: 17100713 li a4,369 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:348 idx_min = 0; - c0046772: 4681 li a3,0 + c0046942: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:352 v = case_conv_table1[idx]; - c0046774: 00021817 auipc a6,0x21 - c0046778: f5c80813 addi a6,a6,-164 # c00676d0 + c0046944: 00021817 auipc a6,0x21 + c0046948: fec80813 addi a6,a6,-20 # c0067930 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:351 idx = (unsigned)(idx_max + idx_min) / 2; - c004677c: 00e687bb addw a5,a3,a4 - c0046780: 0017d59b srliw a1,a5,0x1 - c0046784: 0017d79b srliw a5,a5,0x1 + c004694c: 00e687bb addw a5,a3,a4 + c0046950: 0017d59b srliw a1,a5,0x1 + c0046954: 0017d79b srliw a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:352 v = case_conv_table1[idx]; - c0046788: 078a slli a5,a5,0x2 - c004678a: 97c2 add a5,a5,a6 - c004678c: 439c lw a5,0(a5) + c0046958: 078a slli a5,a5,0x2 + c004695a: 97c2 add a5,a5,a6 + c004695c: 439c lw a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:353 code = v >> (32 - 17); - c004678e: 00f7d89b srliw a7,a5,0xf - c0046792: 00f7d61b srliw a2,a5,0xf + c004695e: 00f7d89b srliw a7,a5,0xf + c0046962: 00f7d61b srliw a2,a5,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:355 if (c < code) { - c0046796: 03157163 bgeu a0,a7,c00467b8 + c0046966: 03157163 bgeu a0,a7,c0046988 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:356 idx_max = idx - 1; - c004679a: fff5871b addiw a4,a1,-1 + c004696a: fff5871b addiw a4,a1,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:350 while (idx_min <= idx_max) { - c004679e: fcd75fe3 bge a4,a3,c004677c + c004696e: fcd75fe3 bge a4,a3,c004694c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:363 return lre_is_in_table(c, unicode_prop_Cased1_table, - c00467a2: 469d li a3,7 - c00467a4: 00027617 auipc a2,0x27 - c00467a8: cbc60613 addi a2,a2,-836 # c006d460 - c00467ac: 00027597 auipc a1,0x27 - c00467b0: ccc58593 addi a1,a1,-820 # c006d478 - c00467b4: deaff06f j c0045d9e + c0046972: 469d li a3,7 + c0046974: 00027617 auipc a2,0x27 + c0046978: d4c60613 addi a2,a2,-692 # c006d6c0 + c004697c: 00027597 auipc a1,0x27 + c0046980: d5c58593 addi a1,a1,-676 # c006d6d8 + c0046984: deaff06f j c0045f6e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:354 len = (v >> (32 - 17 - 7)) & 0x7f; - c00467b8: 0087d79b srliw a5,a5,0x8 - c00467bc: 07f7f793 andi a5,a5,127 + c0046988: 0087d79b srliw a5,a5,0x8 + c004698c: 07f7f793 andi a5,a5,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:357 } else if (c >= code + len) { - c00467c0: 9fb1 addw a5,a5,a2 - c00467c2: 00f56563 bltu a0,a5,c00467cc + c0046990: 9fb1 addw a5,a5,a2 + c0046992: 00f56563 bltu a0,a5,c004699c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:358 idx_min = idx + 1; - c00467c6: 0015869b addiw a3,a1,1 - c00467ca: bfd1 j c004679e + c0046996: 0015869b addiw a3,a1,1 + c004699a: bfd1 j c004696e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:366 } - c00467cc: 4505 li a0,1 - c00467ce: 8082 ret + c004699c: 4505 li a0,1 + c004699e: 8082 ret -00000000c00467d0 : +00000000c00469a0 : lre_is_case_ignorable(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:370 return lre_is_in_table(c, unicode_prop_Case_Ignorable_table, - c00467d0: 46dd li a3,23 - c00467d2: 00027617 auipc a2,0x27 - c00467d6: 95e60613 addi a2,a2,-1698 # c006d130 - c00467da: 00027597 auipc a1,0x27 - c00467de: 99e58593 addi a1,a1,-1634 # c006d178 - c00467e2: dbcff06f j c0045d9e - -00000000c00467e6 : + c00469a0: 46dd li a3,23 + c00469a2: 00027617 auipc a2,0x27 + c00469a6: 9ee60613 addi a2,a2,-1554 # c006d390 + c00469aa: 00027597 auipc a1,0x27 + c00469ae: a2e58593 addi a1,a1,-1490 # c006d3d8 + c00469b2: dbcff06f j c0045f6e + +00000000c00469b6 : cr_init(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:391 cr->len = cr->size = 0; - c00467e6: 00053023 sd zero,0(a0) + c00469b6: 00053023 sd zero,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:392 cr->points = NULL; - c00467ea: 00053423 sd zero,8(a0) + c00469ba: 00053423 sd zero,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:393 cr->mem_opaque = mem_opaque; - c00467ee: e90c sd a1,16(a0) + c00469be: e90c sd a1,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:394 cr->realloc_func = realloc_func ? realloc_func : cr_default_realloc; - c00467f0: e609 bnez a2,c00467fa - c00467f2: fffff617 auipc a2,0xfffff - c00467f6: 46860613 addi a2,a2,1128 # c0045c5a + c00469c0: e609 bnez a2,c00469ca + c00469c2: fffff617 auipc a2,0xfffff + c00469c6: 46860613 addi a2,a2,1128 # c0045e2a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:394 (discriminator 4) - c00467fa: ed10 sd a2,24(a0) + c00469ca: ed10 sd a2,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:395 (discriminator 4) } - c00467fc: 8082 ret + c00469cc: 8082 ret -00000000c00467fe : +00000000c00469ce : cr_free(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:399 cr->realloc_func(cr->mem_opaque, cr->points, 0); - c00467fe: 6d1c ld a5,24(a0) - c0046800: 650c ld a1,8(a0) - c0046802: 6908 ld a0,16(a0) - c0046804: 4601 li a2,0 - c0046806: 8782 jr a5 + c00469ce: 6d1c ld a5,24(a0) + c00469d0: 650c ld a1,8(a0) + c00469d2: 6908 ld a0,16(a0) + c00469d4: 4601 li a2,0 + c00469d6: 8782 jr a5 -00000000c0046808 : +00000000c00469d8 : cr_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:407 if (size > cr->size) { - c0046808: 415c lw a5,4(a0) - c004680a: 04b7d363 bge a5,a1,c0046850 + c00469d8: 415c lw a5,4(a0) + c00469da: 04b7d363 bge a5,a1,c0046a20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:403 { - c004680e: 1101 addi sp,sp,-32 - c0046810: e426 sd s1,8(sp) + c00469de: 1101 addi sp,sp,-32 + c00469e0: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:408 new_size = max_int(size, cr->size * 3 / 2); - c0046812: 448d li s1,3 - c0046814: 02f484bb mulw s1,s1,a5 - c0046818: 4789 li a5,2 + c00469e2: 448d li s1,3 + c00469e4: 02f484bb mulw s1,s1,a5 + c00469e8: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:403 { - c004681a: e822 sd s0,16(sp) - c004681c: ec06 sd ra,24(sp) - c004681e: 842a mv s0,a0 + c00469ea: e822 sd s0,16(sp) + c00469ec: ec06 sd ra,24(sp) + c00469ee: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:408 new_size = max_int(size, cr->size * 3 / 2); - c0046820: 02f4c7bb divw a5,s1,a5 - c0046824: 84be mv s1,a5 - c0046826: 00b7d363 bge a5,a1,c004682c - c004682a: 84ae mv s1,a1 + c00469f0: 02f4c7bb divw a5,s1,a5 + c00469f4: 84be mv s1,a5 + c00469f6: 00b7d363 bge a5,a1,c00469fc + c00469fa: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:409 new_buf = cr->realloc_func(cr->mem_opaque, cr->points, - c004682c: 6c1c ld a5,24(s0) - c004682e: 640c ld a1,8(s0) - c0046830: 6808 ld a0,16(s0) - c0046832: 0004861b sext.w a2,s1 - c0046836: 060a slli a2,a2,0x2 - c0046838: 9782 jalr a5 - c004683a: 87aa mv a5,a0 + c00469fc: 6c1c ld a5,24(s0) + c00469fe: 640c ld a1,8(s0) + c0046a00: 6808 ld a0,16(s0) + c0046a02: 0004861b sext.w a2,s1 + c0046a06: 060a slli a2,a2,0x2 + c0046a08: 9782 jalr a5 + c0046a0a: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:412 return -1; - c004683c: 557d li a0,-1 + c0046a0c: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:411 if (!new_buf) - c004683e: c781 beqz a5,c0046846 + c0046a0e: c781 beqz a5,c0046a16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:413 cr->points = new_buf; - c0046840: e41c sd a5,8(s0) + c0046a10: e41c sd a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:414 cr->size = new_size; - c0046842: c044 sw s1,4(s0) + c0046a12: c044 sw s1,4(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:416 return 0; - c0046844: 4501 li a0,0 + c0046a14: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:417 } - c0046846: 60e2 ld ra,24(sp) - c0046848: 6442 ld s0,16(sp) - c004684a: 64a2 ld s1,8(sp) - c004684c: 6105 addi sp,sp,32 - c004684e: 8082 ret + c0046a16: 60e2 ld ra,24(sp) + c0046a18: 6442 ld s0,16(sp) + c0046a1a: 64a2 ld s1,8(sp) + c0046a1c: 6105 addi sp,sp,32 + c0046a1e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:416 return 0; - c0046850: 4501 li a0,0 + c0046a20: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:417 } - c0046852: 8082 ret + c0046a22: 8082 ret -00000000c0046854 : +00000000c0046a24 : cr_add_interval(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:80 { - c0046854: 1101 addi sp,sp,-32 - c0046856: e822 sd s0,16(sp) - c0046858: e426 sd s1,8(sp) - c004685a: e04a sd s2,0(sp) - c004685c: ec06 sd ra,24(sp) + c0046a24: 1101 addi sp,sp,-32 + c0046a26: e822 sd s0,16(sp) + c0046a28: e426 sd s1,8(sp) + c0046a2a: e04a sd s2,0(sp) + c0046a2c: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:81 if ((cr->len + 2) > cr->size) { - c004685e: 411c lw a5,0(a0) + c0046a2e: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:80 { - c0046860: 84ae mv s1,a1 - c0046862: 842a mv s0,a0 + c0046a30: 84ae mv s1,a1 + c0046a32: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:81 if ((cr->len + 2) > cr->size) { - c0046864: 0027859b addiw a1,a5,2 - c0046868: 415c lw a5,4(a0) + c0046a34: 0027859b addiw a1,a5,2 + c0046a38: 415c lw a5,4(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:80 { - c004686a: 8932 mv s2,a2 + c0046a3a: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:81 if ((cr->len + 2) > cr->size) { - c004686c: 02b7ca63 blt a5,a1,c00468a0 + c0046a3c: 02b7ca63 blt a5,a1,c0046a70 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:85 cr->points[cr->len++] = c1; - c0046870: 401c lw a5,0(s0) - c0046872: 6418 ld a4,8(s0) + c0046a40: 401c lw a5,0(s0) + c0046a42: 6418 ld a4,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:87 return 0; - c0046874: 4501 li a0,0 + c0046a44: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:85 cr->points[cr->len++] = c1; - c0046876: 0017869b addiw a3,a5,1 - c004687a: 078a slli a5,a5,0x2 - c004687c: c014 sw a3,0(s0) - c004687e: 97ba add a5,a5,a4 - c0046880: c384 sw s1,0(a5) + c0046a46: 0017869b addiw a3,a5,1 + c0046a4a: 078a slli a5,a5,0x2 + c0046a4c: c014 sw a3,0(s0) + c0046a4e: 97ba add a5,a5,a4 + c0046a50: c384 sw s1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:86 cr->points[cr->len++] = c2; - c0046882: 401c lw a5,0(s0) - c0046884: 6418 ld a4,8(s0) - c0046886: 0017869b addiw a3,a5,1 - c004688a: 078a slli a5,a5,0x2 - c004688c: c014 sw a3,0(s0) - c004688e: 97ba add a5,a5,a4 - c0046890: 0127a023 sw s2,0(a5) + c0046a52: 401c lw a5,0(s0) + c0046a54: 6418 ld a4,8(s0) + c0046a56: 0017869b addiw a3,a5,1 + c0046a5a: 078a slli a5,a5,0x2 + c0046a5c: c014 sw a3,0(s0) + c0046a5e: 97ba add a5,a5,a4 + c0046a60: 0127a023 sw s2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:88 } - c0046894: 60e2 ld ra,24(sp) - c0046896: 6442 ld s0,16(sp) - c0046898: 64a2 ld s1,8(sp) - c004689a: 6902 ld s2,0(sp) - c004689c: 6105 addi sp,sp,32 - c004689e: 8082 ret + c0046a64: 60e2 ld ra,24(sp) + c0046a66: 6442 ld s0,16(sp) + c0046a68: 64a2 ld s1,8(sp) + c0046a6a: 6902 ld s2,0(sp) + c0046a6c: 6105 addi sp,sp,32 + c0046a6e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:82 if (cr_realloc(cr, cr->len + 2)) - c00468a0: f69ff0ef jal ra,c0046808 - c00468a4: d571 beqz a0,c0046870 + c0046a70: f69ff0ef jal ra,c00469d8 + c0046a74: d571 beqz a0,c0046a40 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:83 return -1; - c00468a6: 557d li a0,-1 - c00468a8: b7f5 j c0046894 + c0046a76: 557d li a0,-1 + c0046a78: b7f5 j c0046a64 -00000000c00468aa : +00000000c0046a7a : unicode_case1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1281 { - c00468aa: 7119 addi sp,sp,-128 + c0046a7a: 7119 addi sp,sp,-128 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1283 const uint32_t tab_run_mask[3] = { - c00468ac: 0002e797 auipc a5,0x2e - c00468b0: fbc7b783 ld a5,-68(a5) # c0074868 <_erodata+0xe8> - c00468b4: e03e sd a5,0(sp) - c00468b6: 6791 lui a5,0x4 - c00468b8: dfc78793 addi a5,a5,-516 # 3dfc <__clzdi2-0xbfffc204> + c0046a7c: 0002e797 auipc a5,0x2e + c0046a80: 04c7b783 ld a5,76(a5) # c0074ac8 <_erodata+0xe8> + c0046a84: e03e sd a5,0(sp) + c0046a86: 6791 lui a5,0x4 + c0046a88: dfc78793 addi a5,a5,-516 # 3dfc <__clzdi2-0xbfffc204> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1281 { - c00468bc: fc86 sd ra,120(sp) - c00468be: f8a2 sd s0,112(sp) - c00468c0: f4a6 sd s1,104(sp) - c00468c2: f0ca sd s2,96(sp) - c00468c4: ecce sd s3,88(sp) - c00468c6: e8d2 sd s4,80(sp) - c00468c8: e4d6 sd s5,72(sp) - c00468ca: e0da sd s6,64(sp) - c00468cc: fc5e sd s7,56(sp) - c00468ce: f862 sd s8,48(sp) - c00468d0: f466 sd s9,40(sp) - c00468d2: f06a sd s10,32(sp) - c00468d4: ec6e sd s11,24(sp) + c0046a8c: fc86 sd ra,120(sp) + c0046a8e: f8a2 sd s0,112(sp) + c0046a90: f4a6 sd s1,104(sp) + c0046a92: f0ca sd s2,96(sp) + c0046a94: ecce sd s3,88(sp) + c0046a96: e8d2 sd s4,80(sp) + c0046a98: e4d6 sd s5,72(sp) + c0046a9a: e0da sd s6,64(sp) + c0046a9c: fc5e sd s7,56(sp) + c0046a9e: f862 sd s8,48(sp) + c0046aa0: f466 sd s9,40(sp) + c0046aa2: f06a sd s10,32(sp) + c0046aa4: ec6e sd s11,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1283 const uint32_t tab_run_mask[3] = { - c00468d6: c43e sw a5,8(sp) + c0046aa6: c43e sw a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1294 if (case_mask == 0) - c00468d8: c9b9 beqz a1,c004692e - c00468da: 89aa mv s3,a0 - c00468dc: 870a mv a4,sp + c0046aa8: c9b9 beqz a1,c0046afe + c0046aaa: 89aa mv s3,a0 + c0046aac: 870a mv a4,sp /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1297 for(i = 0; i < 3; i++) { - c00468de: 4781 li a5,0 + c0046aae: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1296 mask = 0; - c00468e0: 4b01 li s6,0 + c0046ab0: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1297 for(i = 0; i < 3; i++) { - c00468e2: 460d li a2,3 + c0046ab2: 460d li a2,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1298 if ((case_mask >> i) & 1) - c00468e4: 40f5d6bb sraw a3,a1,a5 - c00468e8: 8a85 andi a3,a3,1 - c00468ea: c681 beqz a3,c00468f2 + c0046ab4: 40f5d6bb sraw a3,a1,a5 + c0046ab8: 8a85 andi a3,a3,1 + c0046aba: c681 beqz a3,c0046ac2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1299 mask |= tab_run_mask[i]; - c00468ec: 4314 lw a3,0(a4) - c00468ee: 00db6b33 or s6,s6,a3 + c0046abc: 4314 lw a3,0(a4) + c0046abe: 00db6b33 or s6,s6,a3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1297 (discriminator 2) for(i = 0; i < 3; i++) { - c00468f2: 2785 addiw a5,a5,1 - c00468f4: 0711 addi a4,a4,4 - c00468f6: fec797e3 bne a5,a2,c00468e4 - c00468fa: 00021a17 auipc s4,0x21 - c00468fe: dd6a0a13 addi s4,s4,-554 # c00676d0 - c0046902: 00021b97 auipc s7,0x21 - c0046906: 396b8b93 addi s7,s7,918 # c0067c98 + c0046ac2: 2785 addiw a5,a5,1 + c0046ac4: 0711 addi a4,a4,4 + c0046ac6: fec797e3 bne a5,a2,c0046ab4 + c0046aca: 00021a17 auipc s4,0x21 + c0046ace: e66a0a13 addi s4,s4,-410 # c0067930 + c0046ad2: 00021b97 auipc s7,0x21 + c0046ad6: 426b8b93 addi s7,s7,1062 # c0067ef8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1308 switch(type) { - c004690a: 4c11 li s8,4 + c0046ada: 4c11 li s8,4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1310 if ((case_mask & CASE_U) && (case_mask & (CASE_L | CASE_F))) - c004690c: 0015fa93 andi s5,a1,1 - c0046910: 0065f913 andi s2,a1,6 + c0046adc: 0015fa93 andi s5,a1,1 + c0046ae0: 0065f913 andi s2,a1,6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1308 switch(type) { - c0046914: 4c95 li s9,5 + c0046ae4: 4c95 li s9,5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1302 v = case_conv_table1[idx]; - c0046916: 000a2783 lw a5,0(s4) + c0046ae6: 000a2783 lw a5,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1303 type = (v >> (32 - 17 - 7 - 4)) & 0xf; - c004691a: 0047d71b srliw a4,a5,0x4 - c004691e: 8b3d andi a4,a4,15 + c0046aea: 0047d71b srliw a4,a5,0x4 + c0046aee: 8b3d andi a4,a4,15 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1306 if ((mask >> type) & 1) { - c0046920: 00eb56bb srlw a3,s6,a4 - c0046924: 8a85 andi a3,a3,1 - c0046926: e691 bnez a3,c0046932 + c0046af0: 00eb56bb srlw a3,s6,a4 + c0046af4: 8a85 andi a3,a3,1 + c0046af6: e691 bnez a3,c0046b02 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1301 for(idx = 0; idx < countof(case_conv_table1); idx++) { - c0046928: 0a11 addi s4,s4,4 - c004692a: ff4b96e3 bne s7,s4,c0046916 + c0046af8: 0a11 addi s4,s4,4 + c0046afa: ff4b96e3 bne s7,s4,c0046ae6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1295 return 0; - c004692e: 4501 li a0,0 - c0046930: a0a1 j c0046978 + c0046afe: 4501 li a0,0 + c0046b00: a0a1 j c0046b48 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1304 code = v >> (32 - 17); - c0046932: 00f7d49b srliw s1,a5,0xf - c0046936: 00f7d59b srliw a1,a5,0xf + c0046b02: 00f7d49b srliw s1,a5,0xf + c0046b06: 00f7d59b srliw a1,a5,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1305 len = (v >> (32 - 17 - 7)) & 0x7f; - c004693a: 0087d79b srliw a5,a5,0x8 - c004693e: 07f7f413 andi s0,a5,127 + c0046b0a: 0087d79b srliw a5,a5,0x8 + c0046b0e: 07f7f413 andi s0,a5,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1308 switch(type) { - c0046942: 01870763 beq a4,s8,c0046950 - c0046946: 05970a63 beq a4,s9,c004699a + c0046b12: 01870763 beq a4,s8,c0046b20 + c0046b16: 05970a63 beq a4,s9,c0046b6a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1334 if (cr_add_interval(cr, code, code + len)) - c004694a: 0084863b addw a2,s1,s0 - c004694e: a885 j c00469be + c0046b1a: 0084863b addw a2,s1,s0 + c0046b1e: a885 j c0046b8e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1310 if ((case_mask & CASE_U) && (case_mask & (CASE_L | CASE_F))) - c0046950: 000a8463 beqz s5,c0046958 + c0046b20: 000a8463 beqz s5,c0046b28 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1310 (discriminator 1) - c0046954: fe091be3 bnez s2,c004694a + c0046b24: fe091be3 bnez s2,c0046b1a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1312 code += ((case_mask & CASE_U) != 0); - c0046958: 015484bb addw s1,s1,s5 + c0046b28: 015484bb addw s1,s1,s5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1313 for(i = 0; i < len; i += 2) { - c004695c: 4d01 li s10,0 + c0046b2c: 4d01 li s10,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1314 if (cr_add_interval(cr, code + i, code + i + 1)) - c004695e: 00148d9b addiw s11,s1,1 + c0046b2e: 00148d9b addiw s11,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1313 (discriminator 1) for(i = 0; i < len; i += 2) { - c0046962: fc8d73e3 bgeu s10,s0,c0046928 + c0046b32: fc8d73e3 bgeu s10,s0,c0046af8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1314 if (cr_add_interval(cr, code + i, code + i + 1)) - c0046966: 01ad863b addw a2,s11,s10 - c004696a: 009d05bb addw a1,s10,s1 - c004696e: 854e mv a0,s3 - c0046970: ee5ff0ef jal ra,c0046854 - c0046974: c10d beqz a0,c0046996 + c0046b36: 01ad863b addw a2,s11,s10 + c0046b3a: 009d05bb addw a1,s10,s1 + c0046b3e: 854e mv a0,s3 + c0046b40: ee5ff0ef jal ra,c0046a24 + c0046b44: c10d beqz a0,c0046b66 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1315 return -1; - c0046976: 557d li a0,-1 + c0046b46: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1341 } - c0046978: 70e6 ld ra,120(sp) - c004697a: 7446 ld s0,112(sp) - c004697c: 74a6 ld s1,104(sp) - c004697e: 7906 ld s2,96(sp) - c0046980: 69e6 ld s3,88(sp) - c0046982: 6a46 ld s4,80(sp) - c0046984: 6aa6 ld s5,72(sp) - c0046986: 6b06 ld s6,64(sp) - c0046988: 7be2 ld s7,56(sp) - c004698a: 7c42 ld s8,48(sp) - c004698c: 7ca2 ld s9,40(sp) - c004698e: 7d02 ld s10,32(sp) - c0046990: 6de2 ld s11,24(sp) - c0046992: 6109 addi sp,sp,128 - c0046994: 8082 ret + c0046b48: 70e6 ld ra,120(sp) + c0046b4a: 7446 ld s0,112(sp) + c0046b4c: 74a6 ld s1,104(sp) + c0046b4e: 7906 ld s2,96(sp) + c0046b50: 69e6 ld s3,88(sp) + c0046b52: 6a46 ld s4,80(sp) + c0046b54: 6aa6 ld s5,72(sp) + c0046b56: 6b06 ld s6,64(sp) + c0046b58: 7be2 ld s7,56(sp) + c0046b5a: 7c42 ld s8,48(sp) + c0046b5c: 7ca2 ld s9,40(sp) + c0046b5e: 7d02 ld s10,32(sp) + c0046b60: 6de2 ld s11,24(sp) + c0046b62: 6109 addi sp,sp,128 + c0046b64: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1313 (discriminator 2) for(i = 0; i < len; i += 2) { - c0046996: 2d09 addiw s10,s10,2 - c0046998: b7e9 j c0046962 + c0046b66: 2d09 addiw s10,s10,2 + c0046b68: b7e9 j c0046b32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1319 if ((case_mask & CASE_U) && (case_mask & (CASE_L | CASE_F))) - c004699a: 020a8763 beqz s5,c00469c8 + c0046b6a: 020a8763 beqz s5,c0046b98 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1319 (discriminator 1) - c004699e: fa0916e3 bnez s2,c004694a + c0046b6e: fa0916e3 bnez s2,c0046b1a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1325 if (cr_add_interval(cr, code + 1, code + 2)) - c00469a2: 0024841b addiw s0,s1,2 - c00469a6: 8622 mv a2,s0 - c00469a8: 0014859b addiw a1,s1,1 - c00469ac: 854e mv a0,s3 - c00469ae: ea7ff0ef jal ra,c0046854 - c00469b2: f171 bnez a0,c0046976 + c0046b72: 0024841b addiw s0,s1,2 + c0046b76: 8622 mv a2,s0 + c0046b78: 0014859b addiw a1,s1,1 + c0046b7c: 854e mv a0,s3 + c0046b7e: ea7ff0ef jal ra,c0046a24 + c0046b82: f171 bnez a0,c0046b46 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1327 if (case_mask & CASE_U) { - c00469b4: f60a8ae3 beqz s5,c0046928 + c0046b84: f60a8ae3 beqz s5,c0046af8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1328 if (cr_add_interval(cr, code + 2, code + 3)) - c00469b8: 0034861b addiw a2,s1,3 - c00469bc: 85a2 mv a1,s0 + c0046b88: 0034861b addiw a2,s1,3 + c0046b8c: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1334 if (cr_add_interval(cr, code, code + len)) - c00469be: 854e mv a0,s3 - c00469c0: e95ff0ef jal ra,c0046854 - c00469c4: d135 beqz a0,c0046928 - c00469c6: bf45 j c0046976 + c0046b8e: 854e mv a0,s3 + c0046b90: e95ff0ef jal ra,c0046a24 + c0046b94: d135 beqz a0,c0046af8 + c0046b96: bf45 j c0046b46 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1322 if (cr_add_interval(cr, code, code + 1)) - c00469c8: 0014861b addiw a2,s1,1 - c00469cc: 854e mv a0,s3 - c00469ce: e87ff0ef jal ra,c0046854 - c00469d2: d961 beqz a0,c00469a2 - c00469d4: b74d j c0046976 + c0046b98: 0014861b addiw a2,s1,1 + c0046b9c: 854e mv a0,s3 + c0046b9e: e87ff0ef jal ra,c0046a24 + c0046ba2: d961 beqz a0,c0046b72 + c0046ba4: b74d j c0046b46 -00000000c00469d6 : +00000000c0046ba6 : unicode_general_category1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1181 { - c00469d6: 711d addi sp,sp,-96 - c00469d8: e862 sd s8,16(sp) - c00469da: 8c2e mv s8,a1 - c00469dc: e0ca sd s2,64(sp) - c00469de: fc4e sd s3,56(sp) + c0046ba6: 711d addi sp,sp,-96 + c0046ba8: e862 sd s8,16(sp) + c0046baa: 8c2e mv s8,a1 + c0046bac: e0ca sd s2,64(sp) + c0046bae: fc4e sd s3,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1204 n += 7 + 128 + (1 << 14); - c00469e0: 6911 lui s2,0x4 + c0046bb0: 6911 lui s2,0x4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1216 c0 += ((gc_mask & M(Ll)) != 0); - c00469e2: 402c599b sraiw s3,s8,0x2 + c0046bb2: 402c599b sraiw s3,s8,0x2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1181 { - c00469e6: e4a6 sd s1,72(sp) - c00469e8: f852 sd s4,48(sp) - c00469ea: f456 sd s5,40(sp) - c00469ec: f05a sd s6,32(sp) - c00469ee: ec5e sd s7,24(sp) - c00469f0: ec86 sd ra,88(sp) - c00469f2: e8a2 sd s0,80(sp) - c00469f4: e466 sd s9,8(sp) - c00469f6: 84aa mv s1,a0 + c0046bb6: e4a6 sd s1,72(sp) + c0046bb8: f852 sd s4,48(sp) + c0046bba: f456 sd s5,40(sp) + c0046bbc: f05a sd s6,32(sp) + c0046bbe: ec5e sd s7,24(sp) + c0046bc0: ec86 sd ra,88(sp) + c0046bc2: e8a2 sd s0,80(sp) + c0046bc4: e466 sd s9,8(sp) + c0046bc6: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1187 c = 0; - c00469f8: 4581 li a1,0 + c0046bc8: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1185 p = unicode_gc_table; - c00469fa: 00025b97 auipc s7,0x25 - c00469fe: 706b8b93 addi s7,s7,1798 # c006c100 + c0046bca: 00025b97 auipc s7,0x25 + c0046bce: 796b8b93 addi s7,s7,1942 # c006c360 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1192 if (n == 7) { - c0046a02: 4a9d li s5,7 + c0046bd2: 4a9d li s5,7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1204 n += 7 + 128 + (1 << 14); - c0046a04: 0879091b addiw s2,s2,135 + c0046bd4: 0879091b addiw s2,s2,135 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1211 b = gc_mask & (M(Lu) | M(Ll)); - c0046a08: 006c7a13 andi s4,s8,6 + c0046bd8: 006c7a13 andi s4,s8,6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1216 c0 += ((gc_mask & M(Ll)) != 0); - c0046a0c: 0019f993 andi s3,s3,1 + c0046bdc: 0019f993 andi s3,s3,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1188 while (p < p_end) { - c0046a10: 00026b17 auipc s6,0x26 - c0046a14: 65cb0b13 addi s6,s6,1628 # c006d06c + c0046be0: 00026b17 auipc s6,0x26 + c0046be4: 6ecb0b13 addi s6,s6,1772 # c006d2cc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1189 b = *p++; - c0046a18: 000bc683 lbu a3,0(s7) + c0046be8: 000bc683 lbu a3,0(s7) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1190 n = b >> 5; - c0046a1c: 0056d613 srli a2,a3,0x5 + c0046bec: 0056d613 srli a2,a3,0x5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1191 v = b & 0x1f; - c0046a20: 8afd andi a3,a3,31 + c0046bf0: 8afd andi a3,a3,31 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1192 if (n == 7) { - c0046a22: 03560d63 beq a2,s5,c0046a5c + c0046bf2: 03560d63 beq a2,s5,c0046c2c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1189 b = *p++; - c0046a26: 0b85 addi s7,s7,1 + c0046bf6: 0b85 addi s7,s7,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1208 c += n + 1; - c0046a28: 2605 addiw a2,a2,1 + c0046bf8: 2605 addiw a2,a2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1209 if (v == 31) { - c0046a2a: 47fd li a5,31 + c0046bfa: 47fd li a5,31 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1208 c += n + 1; - c0046a2c: 00b6043b addw s0,a2,a1 + c0046bfc: 00b6043b addw s0,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1209 if (v == 31) { - c0046a30: 08f69f63 bne a3,a5,c0046ace + c0046c00: 08f69f63 bne a3,a5,c0046c9e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1212 if (b != 0) { - c0046a34: 060a1b63 bnez s4,c0046aaa + c0046c04: 060a1b63 bnez s4,c0046c7a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1188 while (p < p_end) { - c0046a38: 036be063 bltu s7,s6,c0046a58 + c0046c08: 036be063 bltu s7,s6,c0046c28 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1229 return 0; - c0046a3c: 4501 li a0,0 + c0046c0c: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1230 } - c0046a3e: 60e6 ld ra,88(sp) - c0046a40: 6446 ld s0,80(sp) - c0046a42: 64a6 ld s1,72(sp) - c0046a44: 6906 ld s2,64(sp) - c0046a46: 79e2 ld s3,56(sp) - c0046a48: 7a42 ld s4,48(sp) - c0046a4a: 7aa2 ld s5,40(sp) - c0046a4c: 7b02 ld s6,32(sp) - c0046a4e: 6be2 ld s7,24(sp) - c0046a50: 6c42 ld s8,16(sp) - c0046a52: 6ca2 ld s9,8(sp) - c0046a54: 6125 addi sp,sp,96 - c0046a56: 8082 ret + c0046c0e: 60e6 ld ra,88(sp) + c0046c10: 6446 ld s0,80(sp) + c0046c12: 64a6 ld s1,72(sp) + c0046c14: 6906 ld s2,64(sp) + c0046c16: 79e2 ld s3,56(sp) + c0046c18: 7a42 ld s4,48(sp) + c0046c1a: 7aa2 ld s5,40(sp) + c0046c1c: 7b02 ld s6,32(sp) + c0046c1e: 6be2 ld s7,24(sp) + c0046c20: 6c42 ld s8,16(sp) + c0046c22: 6ca2 ld s9,8(sp) + c0046c24: 6125 addi sp,sp,96 + c0046c26: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1208 c += n + 1; - c0046a58: 85a2 mv a1,s0 - c0046a5a: bf7d j c0046a18 + c0046c28: 85a2 mv a1,s0 + c0046c2a: bf7d j c0046be8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1193 n = *p++; - c0046a5c: 001bc703 lbu a4,1(s7) + c0046c2c: 001bc703 lbu a4,1(s7) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1194 if (n < 128) { - c0046a60: 07f00793 li a5,127 - c0046a64: 00e7e663 bltu a5,a4,c0046a70 + c0046c30: 07f00793 li a5,127 + c0046c34: 00e7e663 bltu a5,a4,c0046c40 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1193 n = *p++; - c0046a68: 0b89 addi s7,s7,2 + c0046c38: 0b89 addi s7,s7,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1195 n += 7; - c0046a6a: 0077061b addiw a2,a4,7 - c0046a6e: bf6d j c0046a28 + c0046c3a: 0077061b addiw a2,a4,7 + c0046c3e: bf6d j c0046bf8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1196 } else if (n < 128 + 64) { - c0046a70: 0bf00513 li a0,191 + c0046c40: 0bf00513 li a0,191 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1198 n |= *p++; - c0046a74: 002bc783 lbu a5,2(s7) + c0046c44: 002bc783 lbu a5,2(s7) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1196 } else if (n < 128 + 64) { - c0046a78: 00e56b63 bltu a0,a4,c0046a8e + c0046c48: 00e56b63 bltu a0,a4,c0046c5e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1197 n = (n - 128) << 8; - c0046a7c: f807061b addiw a2,a4,-128 - c0046a80: 0086161b slliw a2,a2,0x8 + c0046c4c: f807061b addiw a2,a4,-128 + c0046c50: 0086161b slliw a2,a2,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1198 n |= *p++; - c0046a84: 8e5d or a2,a2,a5 - c0046a86: 0b8d addi s7,s7,3 + c0046c54: 8e5d or a2,a2,a5 + c0046c56: 0b8d addi s7,s7,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1199 n += 7 + 128; - c0046a88: 0876061b addiw a2,a2,135 - c0046a8c: bf71 j c0046a28 + c0046c58: 0876061b addiw a2,a2,135 + c0046c5c: bf71 j c0046bf8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1201 n = (n - 128 - 64) << 16; - c0046a8e: f407061b addiw a2,a4,-192 - c0046a92: 0106171b slliw a4,a2,0x10 + c0046c5e: f407061b addiw a2,a4,-192 + c0046c62: 0106171b slliw a4,a2,0x10 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1202 n |= *p++ << 8; - c0046a96: 0087961b slliw a2,a5,0x8 + c0046c66: 0087961b slliw a2,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1203 n |= *p++; - c0046a9a: 003bc783 lbu a5,3(s7) + c0046c6a: 003bc783 lbu a5,3(s7) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1202 n |= *p++ << 8; - c0046a9e: 8e59 or a2,a2,a4 + c0046c6e: 8e59 or a2,a2,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1203 n |= *p++; - c0046aa0: 0b91 addi s7,s7,4 - c0046aa2: 8e5d or a2,a2,a5 + c0046c70: 0b91 addi s7,s7,4 + c0046c72: 8e5d or a2,a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1204 n += 7 + 128 + (1 << 14); - c0046aa4: 00c9063b addw a2,s2,a2 - c0046aa8: b741 j c0046a28 + c0046c74: 00c9063b addw a2,s2,a2 + c0046c78: b741 j c0046bf8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1213 if (b == (M(Lu) | M(Ll))) { - c0046aaa: 4799 li a5,6 - c0046aac: 02fa0563 beq s4,a5,c0046ad6 + c0046c7a: 4799 li a5,6 + c0046c7c: 02fa0563 beq s4,a5,c0046ca6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1216 c0 += ((gc_mask & M(Ll)) != 0); - c0046ab0: 00b98cbb addw s9,s3,a1 + c0046c80: 00b98cbb addw s9,s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1217 (discriminator 1) for(; c0 < c; c0 += 2) { - c0046ab4: f88cf2e3 bgeu s9,s0,c0046a38 + c0046c84: f88cf2e3 bgeu s9,s0,c0046c08 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1218 if (cr_add_interval(cr, c0, c0 + 1)) - c0046ab8: 001c861b addiw a2,s9,1 - c0046abc: 85e6 mv a1,s9 - c0046abe: 8526 mv a0,s1 - c0046ac0: d95ff0ef jal ra,c0046854 - c0046ac4: c119 beqz a0,c0046aca + c0046c88: 001c861b addiw a2,s9,1 + c0046c8c: 85e6 mv a1,s9 + c0046c8e: 8526 mv a0,s1 + c0046c90: d95ff0ef jal ra,c0046a24 + c0046c94: c119 beqz a0,c0046c9a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1219 return -1; - c0046ac6: 557d li a0,-1 - c0046ac8: bf9d j c0046a3e + c0046c96: 557d li a0,-1 + c0046c98: bf9d j c0046c0e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1217 for(; c0 < c; c0 += 2) { - c0046aca: 2c89 addiw s9,s9,2 - c0046acc: b7e5 j c0046ab4 + c0046c9a: 2c89 addiw s9,s9,2 + c0046c9c: b7e5 j c0046c84 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1223 } else if ((gc_mask >> v) & 1) { - c0046ace: 00dc56bb srlw a3,s8,a3 - c0046ad2: 8a85 andi a3,a3,1 - c0046ad4: d2b5 beqz a3,c0046a38 + c0046c9e: 00dc56bb srlw a3,s8,a3 + c0046ca2: 8a85 andi a3,a3,1 + c0046ca4: d2b5 beqz a3,c0046c08 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1225 if (cr_add_interval(cr, c0, c)) - c0046ad6: 8622 mv a2,s0 - c0046ad8: 8526 mv a0,s1 - c0046ada: d7bff0ef jal ra,c0046854 - c0046ade: dd29 beqz a0,c0046a38 - c0046ae0: b7dd j c0046ac6 + c0046ca6: 8622 mv a2,s0 + c0046ca8: 8526 mv a0,s1 + c0046caa: d7bff0ef jal ra,c0046a24 + c0046cae: dd29 beqz a0,c0046c08 + c0046cb0: b7dd j c0046c96 -00000000c0046ae2 : +00000000c0046cb2 : unicode_prop1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1237 p = unicode_prop_table[prop_idx]; - c0046ae2: 00359713 slli a4,a1,0x3 - c0046ae6: 00028797 auipc a5,0x28 - c0046aea: 4d278793 addi a5,a5,1234 # c006efb8 - c0046aee: 97ba add a5,a5,a4 - c0046af0: 6398 ld a4,0(a5) + c0046cb2: 00359713 slli a4,a1,0x3 + c0046cb6: 00028797 auipc a5,0x28 + c0046cba: 56278793 addi a5,a5,1378 # c006f218 + c0046cbe: 97ba add a5,a5,a4 + c0046cc0: 6398 ld a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1238 p_end = p + unicode_prop_len_table[prop_idx]; - c0046af2: 0586 slli a1,a1,0x1 - c0046af4: 00028797 auipc a5,0x28 - c0046af8: 04478793 addi a5,a5,68 # c006eb38 + c0046cc2: 0586 slli a1,a1,0x1 + c0046cc4: 00028797 auipc a5,0x28 + c0046cc8: 0d478793 addi a5,a5,212 # c006ed98 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1233 { - c0046afc: 711d addi sp,sp,-96 + c0046ccc: 711d addi sp,sp,-96 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1238 p_end = p + unicode_prop_len_table[prop_idx]; - c0046afe: 95be add a1,a1,a5 + c0046cce: 95be add a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1233 { - c0046b00: e0ca sd s2,64(sp) + c0046cd0: e0ca sd s2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1238 p_end = p + unicode_prop_len_table[prop_idx]; - c0046b02: 0005d903 lhu s2,0(a1) + c0046cd2: 0005d903 lhu s2,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1233 { - c0046b06: e4a6 sd s1,72(sp) - c0046b08: fc4e sd s3,56(sp) - c0046b0a: f852 sd s4,48(sp) - c0046b0c: f456 sd s5,40(sp) - c0046b0e: ec5e sd s7,24(sp) - c0046b10: ec86 sd ra,88(sp) - c0046b12: e8a2 sd s0,80(sp) - c0046b14: f05a sd s6,32(sp) - c0046b16: e862 sd s8,16(sp) - c0046b18: e466 sd s9,8(sp) - c0046b1a: 84aa mv s1,a0 + c0046cd6: e4a6 sd s1,72(sp) + c0046cd8: fc4e sd s3,56(sp) + c0046cda: f852 sd s4,48(sp) + c0046cdc: f456 sd s5,40(sp) + c0046cde: ec5e sd s7,24(sp) + c0046ce0: ec86 sd ra,88(sp) + c0046ce2: e8a2 sd s0,80(sp) + c0046ce4: f05a sd s6,32(sp) + c0046ce6: e862 sd s8,16(sp) + c0046ce8: e466 sd s9,8(sp) + c0046cea: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1238 p_end = p + unicode_prop_len_table[prop_idx]; - c0046b1c: 993a add s2,s2,a4 + c0046cec: 993a add s2,s2,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1240 bit = 0; - c0046b1e: 4b81 li s7,0 + c0046cee: 4b81 li s7,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1239 c = 0; - c0046b20: 4581 li a1,0 + c0046cf0: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1244 if (b < 64) { - c0046b22: 03f00993 li s3,63 + c0046cf2: 03f00993 li s3,63 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1253 } else if (b >= 0x80) { - c0046b26: 07f00a13 li s4,127 + c0046cf6: 07f00a13 li s4,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1255 } else if (b < 0x60) { - c0046b2a: 05f00a93 li s5,95 + c0046cfa: 05f00a93 li s5,95 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1241 while (p < p_end) { - c0046b2e: 01276463 bltu a4,s2,c0046b36 + c0046cfe: 01276463 bltu a4,s2,c0046d06 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1268 return 0; - c0046b32: 4501 li a0,0 - c0046b34: a0b9 j c0046b82 + c0046d02: 4501 li a0,0 + c0046d04: a0b9 j c0046d52 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1243 b = *p++; - c0046b36: 00074b03 lbu s6,0(a4) - c0046b3a: 00170c13 addi s8,a4,1 - c0046b3e: 000b061b sext.w a2,s6 + c0046d06: 00074b03 lbu s6,0(a4) + c0046d0a: 00170c13 addi s8,a4,1 + c0046d0e: 000b061b sext.w a2,s6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1244 if (b < 64) { - c0046b42: 0569ed63 bltu s3,s6,c0046b9c + c0046d12: 0569ed63 bltu s3,s6,c0046d6c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1245 c += (b >> 3) + 1; - c0046b46: 0015841b addiw s0,a1,1 - c0046b4a: 0036561b srliw a2,a2,0x3 - c0046b4e: 00860cbb addw s9,a2,s0 - c0046b52: 8466 mv s0,s9 + c0046d16: 0015841b addiw s0,a1,1 + c0046d1a: 0036561b srliw a2,a2,0x3 + c0046d1e: 00860cbb addw s9,a2,s0 + c0046d22: 8466 mv s0,s9 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1246 if (bit) { - c0046b54: 020b9163 bnez s7,c0046b76 + c0046d24: 020b9163 bnez s7,c0046d46 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1252 c += (b & 7) + 1; - c0046b58: 007b7b13 andi s6,s6,7 - c0046b5c: 001b079b addiw a5,s6,1 + c0046d28: 007b7b13 andi s6,s6,7 + c0046d2c: 001b079b addiw a5,s6,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1250 bit ^= 1; - c0046b60: 001bcb93 xori s7,s7,1 + c0046d30: 001bcb93 xori s7,s7,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1252 c += (b & 7) + 1; - c0046b64: 9c3d addw s0,s0,a5 + c0046d34: 9c3d addw s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1251 c0 = c; - c0046b66: 85e6 mv a1,s9 + c0046d36: 85e6 mv a1,s9 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1262 if (bit) { - c0046b68: 060b9e63 bnez s7,c0046be4 + c0046d38: 060b9e63 bnez s7,c0046db4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1266 bit ^= 1; - c0046b6c: 001bcb93 xori s7,s7,1 - c0046b70: 85a2 mv a1,s0 - c0046b72: 8762 mv a4,s8 - c0046b74: bf6d j c0046b2e + c0046d3c: 001bcb93 xori s7,s7,1 + c0046d40: 85a2 mv a1,s0 + c0046d42: 8762 mv a4,s8 + c0046d44: bf6d j c0046cfe /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1247 if (cr_add_interval(cr, c0, c)) - c0046b76: 8666 mv a2,s9 - c0046b78: 8526 mv a0,s1 - c0046b7a: cdbff0ef jal ra,c0046854 - c0046b7e: dd69 beqz a0,c0046b58 + c0046d46: 8666 mv a2,s9 + c0046d48: 8526 mv a0,s1 + c0046d4a: cdbff0ef jal ra,c0046a24 + c0046d4e: dd69 beqz a0,c0046d28 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1248 return -1; - c0046b80: 557d li a0,-1 + c0046d50: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1269 } - c0046b82: 60e6 ld ra,88(sp) - c0046b84: 6446 ld s0,80(sp) - c0046b86: 64a6 ld s1,72(sp) - c0046b88: 6906 ld s2,64(sp) - c0046b8a: 79e2 ld s3,56(sp) - c0046b8c: 7a42 ld s4,48(sp) - c0046b8e: 7aa2 ld s5,40(sp) - c0046b90: 7b02 ld s6,32(sp) - c0046b92: 6be2 ld s7,24(sp) - c0046b94: 6c42 ld s8,16(sp) - c0046b96: 6ca2 ld s9,8(sp) - c0046b98: 6125 addi sp,sp,96 - c0046b9a: 8082 ret + c0046d52: 60e6 ld ra,88(sp) + c0046d54: 6446 ld s0,80(sp) + c0046d56: 64a6 ld s1,72(sp) + c0046d58: 6906 ld s2,64(sp) + c0046d5a: 79e2 ld s3,56(sp) + c0046d5c: 7a42 ld s4,48(sp) + c0046d5e: 7aa2 ld s5,40(sp) + c0046d60: 7b02 ld s6,32(sp) + c0046d62: 6be2 ld s7,24(sp) + c0046d64: 6c42 ld s8,16(sp) + c0046d66: 6ca2 ld s9,8(sp) + c0046d68: 6125 addi sp,sp,96 + c0046d6a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1253 } else if (b >= 0x80) { - c0046b9c: 00ca7663 bgeu s4,a2,c0046ba8 + c0046d6c: 00ca7663 bgeu s4,a2,c0046d78 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1254 c += b - 0x80 + 1; - c0046ba0: f815841b addiw s0,a1,-127 - c0046ba4: 9c31 addw s0,s0,a2 - c0046ba6: b7c9 j c0046b68 + c0046d70: f815841b addiw s0,a1,-127 + c0046d74: 9c31 addw s0,s0,a2 + c0046d76: b7c9 j c0046d38 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1256 c += (((b - 0x40) << 8) | p[0]) + 1; - c0046ba8: 00174683 lbu a3,1(a4) - c0046bac: 0015841b addiw s0,a1,1 + c0046d78: 00174683 lbu a3,1(a4) + c0046d7c: 0015841b addiw s0,a1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1255 } else if (b < 0x60) { - c0046bb0: 00caec63 bltu s5,a2,c0046bc8 + c0046d80: 00caec63 bltu s5,a2,c0046d98 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1256 c += (((b - 0x40) << 8) | p[0]) + 1; - c0046bb4: fc06079b addiw a5,a2,-64 - c0046bb8: 0087979b slliw a5,a5,0x8 - c0046bbc: 00f6e633 or a2,a3,a5 - c0046bc0: 9c31 addw s0,s0,a2 + c0046d84: fc06079b addiw a5,a2,-64 + c0046d88: 0087979b slliw a5,a5,0x8 + c0046d8c: 00f6e633 or a2,a3,a5 + c0046d90: 9c31 addw s0,s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1257 p++; - c0046bc2: 00270c13 addi s8,a4,2 - c0046bc6: b74d j c0046b68 + c0046d92: 00270c13 addi s8,a4,2 + c0046d96: b74d j c0046d38 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1259 c += (((b - 0x60) << 16) | (p[0] << 8) | p[1]) + 1; - c0046bc8: 00274783 lbu a5,2(a4) - c0046bcc: fa06061b addiw a2,a2,-96 - c0046bd0: 0106161b slliw a2,a2,0x10 - c0046bd4: 0086969b slliw a3,a3,0x8 - c0046bd8: 8e55 or a2,a2,a3 - c0046bda: 8e5d or a2,a2,a5 - c0046bdc: 9c31 addw s0,s0,a2 + c0046d98: 00274783 lbu a5,2(a4) + c0046d9c: fa06061b addiw a2,a2,-96 + c0046da0: 0106161b slliw a2,a2,0x10 + c0046da4: 0086969b slliw a3,a3,0x8 + c0046da8: 8e55 or a2,a2,a3 + c0046daa: 8e5d or a2,a2,a5 + c0046dac: 9c31 addw s0,s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1260 p += 2; - c0046bde: 00370c13 addi s8,a4,3 - c0046be2: b759 j c0046b68 + c0046dae: 00370c13 addi s8,a4,3 + c0046db2: b759 j c0046d38 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1263 if (cr_add_interval(cr, c0, c)) - c0046be4: 8622 mv a2,s0 - c0046be6: 8526 mv a0,s1 - c0046be8: c6dff0ef jal ra,c0046854 - c0046bec: d141 beqz a0,c0046b6c - c0046bee: bf49 j c0046b80 + c0046db4: 8622 mv a2,s0 + c0046db6: 8526 mv a0,s1 + c0046db8: c6dff0ef jal ra,c0046a24 + c0046dbc: d141 beqz a0,c0046d3c + c0046dbe: bf49 j c0046d50 -00000000c0046bf0 : +00000000c0046dc0 : cr_copy(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:420 { - c0046bf0: 1101 addi sp,sp,-32 - c0046bf2: e822 sd s0,16(sp) - c0046bf4: e426 sd s1,8(sp) - c0046bf6: e04a sd s2,0(sp) - c0046bf8: ec06 sd ra,24(sp) - c0046bfa: 842e mv s0,a1 + c0046dc0: 1101 addi sp,sp,-32 + c0046dc2: e822 sd s0,16(sp) + c0046dc4: e426 sd s1,8(sp) + c0046dc6: e04a sd s2,0(sp) + c0046dc8: ec06 sd ra,24(sp) + c0046dca: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:421 if (cr_realloc(cr, cr1->len)) - c0046bfc: 418c lw a1,0(a1) + c0046dcc: 418c lw a1,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:420 { - c0046bfe: 892a mv s2,a0 + c0046dce: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:422 return -1; - c0046c00: 54fd li s1,-1 + c0046dd0: 54fd li s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:421 if (cr_realloc(cr, cr1->len)) - c0046c02: c07ff0ef jal ra,c0046808 - c0046c06: ed01 bnez a0,c0046c1e + c0046dd2: c07ff0ef jal ra,c00469d8 + c0046dd6: ed01 bnez a0,c0046dee /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:423 memcpy(cr->points, cr1->points, sizeof(cr->points[0]) * cr1->len); - c0046c08: 4010 lw a2,0(s0) - c0046c0a: 640c ld a1,8(s0) - c0046c0c: 84aa mv s1,a0 - c0046c0e: 00893503 ld a0,8(s2) # 4008 <__clzdi2-0xbfffbff8> - c0046c12: 060a slli a2,a2,0x2 - c0046c14: 5c70f0ef jal ra,c00569da + c0046dd8: 4010 lw a2,0(s0) + c0046dda: 640c ld a1,8(s0) + c0046ddc: 84aa mv s1,a0 + c0046dde: 00893503 ld a0,8(s2) # 4008 <__clzdi2-0xbfffbff8> + c0046de2: 060a slli a2,a2,0x2 + c0046de4: 5c70f0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:424 cr->len = cr1->len; - c0046c18: 401c lw a5,0(s0) - c0046c1a: 00f92023 sw a5,0(s2) + c0046de8: 401c lw a5,0(s0) + c0046dea: 00f92023 sw a5,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:426 } - c0046c1e: 60e2 ld ra,24(sp) - c0046c20: 6442 ld s0,16(sp) - c0046c22: 6902 ld s2,0(sp) - c0046c24: 8526 mv a0,s1 - c0046c26: 64a2 ld s1,8(sp) - c0046c28: 6105 addi sp,sp,32 - c0046c2a: 8082 ret + c0046dee: 60e2 ld ra,24(sp) + c0046df0: 6442 ld s0,16(sp) + c0046df2: 6902 ld s2,0(sp) + c0046df4: 8526 mv a0,s1 + c0046df6: 64a2 ld s1,8(sp) + c0046df8: 6105 addi sp,sp,32 + c0046dfa: 8082 ret -00000000c0046c2c : +00000000c0046dfc : cr_op(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:460 { - c0046c2c: 711d addi sp,sp,-96 - c0046c2e: e8a2 sd s0,80(sp) - c0046c30: e4a6 sd s1,72(sp) - c0046c32: e0ca sd s2,64(sp) - c0046c34: fc4e sd s3,56(sp) - c0046c36: f456 sd s5,40(sp) - c0046c38: f05a sd s6,32(sp) - c0046c3a: ec5e sd s7,24(sp) - c0046c3c: e862 sd s8,16(sp) - c0046c3e: e466 sd s9,8(sp) - c0046c40: e06a sd s10,0(sp) - c0046c42: ec86 sd ra,88(sp) - c0046c44: f852 sd s4,48(sp) - c0046c46: 84aa mv s1,a0 - c0046c48: 8bae mv s7,a1 - c0046c4a: 8c32 mv s8,a2 - c0046c4c: 8ab6 mv s5,a3 - c0046c4e: 8b3a mv s6,a4 - c0046c50: 89be mv s3,a5 + c0046dfc: 711d addi sp,sp,-96 + c0046dfe: e8a2 sd s0,80(sp) + c0046e00: e4a6 sd s1,72(sp) + c0046e02: e0ca sd s2,64(sp) + c0046e04: fc4e sd s3,56(sp) + c0046e06: f456 sd s5,40(sp) + c0046e08: f05a sd s6,32(sp) + c0046e0a: ec5e sd s7,24(sp) + c0046e0c: e862 sd s8,16(sp) + c0046e0e: e466 sd s9,8(sp) + c0046e10: e06a sd s10,0(sp) + c0046e12: ec86 sd ra,88(sp) + c0046e14: f852 sd s4,48(sp) + c0046e16: 84aa mv s1,a0 + c0046e18: 8bae mv s7,a1 + c0046e1a: 8c32 mv s8,a2 + c0046e1c: 8ab6 mv s5,a3 + c0046e1e: 8b3a mv s6,a4 + c0046e20: 89be mv s3,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:465 b_idx = 0; - c0046c52: 4401 li s0,0 + c0046e22: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:464 a_idx = 0; - c0046c54: 4901 li s2,0 + c0046e24: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:488 switch(op) { - c0046c56: 4c85 li s9,1 - c0046c58: 4d09 li s10,2 + c0046e26: 4c85 li s9,1 + c0046e28: 4d09 li s10,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:468 if (a_idx < a_len && b_idx < b_len) { - c0046c5a: 07895063 bge s2,s8,c0046cba + c0046e2a: 07895063 bge s2,s8,c0046e8a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:469 (discriminator 1) if (a_pt[a_idx] < b_pt[b_idx]) { - c0046c5e: 00291793 slli a5,s2,0x2 - c0046c62: 97de add a5,a5,s7 - c0046c64: 0007aa03 lw s4,0(a5) + c0046e2e: 00291793 slli a5,s2,0x2 + c0046e32: 97de add a5,a5,s7 + c0046e34: 0007aa03 lw s4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:468 (discriminator 1) if (a_idx < a_len && b_idx < b_len) { - c0046c68: 01645b63 bge s0,s6,c0046c7e + c0046e38: 01645b63 bge s0,s6,c0046e4e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:469 if (a_pt[a_idx] < b_pt[b_idx]) { - c0046c6c: 00241793 slli a5,s0,0x2 - c0046c70: 97d6 add a5,a5,s5 - c0046c72: 439c lw a5,0(a5) - c0046c74: 00fa6563 bltu s4,a5,c0046c7e + c0046e3c: 00241793 slli a5,s0,0x2 + c0046e40: 97d6 add a5,a5,s5 + c0046e42: 439c lw a5,0(a5) + c0046e44: 00fa6563 bltu s4,a5,c0046e4e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:471 } else if (a_pt[a_idx] == b_pt[b_idx]) { - c0046c78: 05479363 bne a5,s4,c0046cbe + c0046e48: 05479363 bne a5,s4,c0046e8e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:474 b_idx++; - c0046c7c: 2405 addiw s0,s0,1 + c0046e4c: 2405 addiw s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:480 v = a_pt[a_idx++]; - c0046c7e: 2905 addiw s2,s2,1 + c0046e4e: 2905 addiw s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:488 switch(op) { - c0046c80: 05998663 beq s3,s9,c0046ccc + c0046e50: 05998663 beq s3,s9,c0046e9c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:496 is_in = (a_idx & 1) ^ (b_idx & 1); - c0046c84: 00894533 xor a0,s2,s0 + c0046e54: 00894533 xor a0,s2,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:488 switch(op) { - c0046c88: 01a98663 beq s3,s10,c0046c94 - c0046c8c: 04099363 bnez s3,c0046cd2 + c0046e58: 01a98663 beq s3,s10,c0046e64 + c0046e5c: 04099363 bnez s3,c0046ea2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:490 is_in = (a_idx & 1) | (b_idx & 1); - c0046c90: 00896533 or a0,s2,s0 + c0046e60: 00896533 or a0,s2,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:501 if (is_in != (cr->len & 1)) { - c0046c94: 408c lw a1,0(s1) + c0046e64: 408c lw a1,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:496 is_in = (a_idx & 1) ^ (b_idx & 1); - c0046c96: 8905 andi a0,a0,1 + c0046e66: 8905 andi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:501 if (is_in != (cr->len & 1)) { - c0046c98: 0015f713 andi a4,a1,1 - c0046c9c: faa70fe3 beq a4,a0,c0046c5a + c0046e68: 0015f713 andi a4,a1,1 + c0046e6c: faa70fe3 beq a4,a0,c0046e2a cr_add_point(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:71 if (cr->len >= cr->size) { - c0046ca0: 40d8 lw a4,4(s1) - c0046ca2: 02e5da63 bge a1,a4,c0046cd6 + c0046e70: 40d8 lw a4,4(s1) + c0046e72: 02e5da63 bge a1,a4,c0046ea6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:75 cr->points[cr->len++] = v; - c0046ca6: 409c lw a5,0(s1) - c0046ca8: 6498 ld a4,8(s1) - c0046caa: 0017869b addiw a3,a5,1 - c0046cae: 078a slli a5,a5,0x2 - c0046cb0: c094 sw a3,0(s1) - c0046cb2: 97ba add a5,a5,a4 - c0046cb4: 0147a023 sw s4,0(a5) + c0046e76: 409c lw a5,0(s1) + c0046e78: 6498 ld a4,8(s1) + c0046e7a: 0017869b addiw a3,a5,1 + c0046e7e: 078a slli a5,a5,0x2 + c0046e80: c094 sw a3,0(s1) + c0046e82: 97ba add a5,a5,a4 + c0046e84: 0147a023 sw s4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:76 return 0; - c0046cb8: b74d j c0046c5a + c0046e88: b74d j c0046e2a cr_op(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:481 } else if (b_idx < b_len) { - c0046cba: 03645563 bge s0,s6,c0046ce4 + c0046e8a: 03645563 bge s0,s6,c0046eb4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:483 v = b_pt[b_idx++]; - c0046cbe: 00241793 slli a5,s0,0x2 - c0046cc2: 97d6 add a5,a5,s5 - c0046cc4: 0007aa03 lw s4,0(a5) - c0046cc8: 2405 addiw s0,s0,1 - c0046cca: bf5d j c0046c80 + c0046e8e: 00241793 slli a5,s0,0x2 + c0046e92: 97d6 add a5,a5,s5 + c0046e94: 0007aa03 lw s4,0(a5) + c0046e98: 2405 addiw s0,s0,1 + c0046e9a: bf5d j c0046e50 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:493 is_in = (a_idx & 1) & (b_idx & 1); - c0046ccc: 00897533 and a0,s2,s0 - c0046cd0: b7d1 j c0046c94 + c0046e9c: 00897533 and a0,s2,s0 + c0046ea0: b7d1 j c0046e64 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:499 abort(); - c0046cd2: 3390e0ef jal ra,c005580a + c0046ea2: 3390e0ef jal ra,c00559da cr_add_point(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.h:72 if (cr_realloc(cr, cr->len + 1)) - c0046cd6: 2585 addiw a1,a1,1 - c0046cd8: 8526 mv a0,s1 - c0046cda: b2fff0ef jal ra,c0046808 - c0046cde: d561 beqz a0,c0046ca6 + c0046ea6: 2585 addiw a1,a1,1 + c0046ea8: 8526 mv a0,s1 + c0046eaa: b2fff0ef jal ra,c00469d8 + c0046eae: d561 beqz a0,c0046e76 cr_op(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:503 return -1; - c0046ce0: 557d li a0,-1 - c0046ce2: a029 j c0046cec + c0046eb0: 557d li a0,-1 + c0046eb2: a029 j c0046ebc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:506 cr_compress(cr); - c0046ce4: 8526 mv a0,s1 - c0046ce6: efbfe0ef jal ra,c0045be0 + c0046eb4: 8526 mv a0,s1 + c0046eb6: efbfe0ef jal ra,c0045db0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:507 return 0; - c0046cea: 4501 li a0,0 + c0046eba: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:508 } - c0046cec: 60e6 ld ra,88(sp) - c0046cee: 6446 ld s0,80(sp) - c0046cf0: 64a6 ld s1,72(sp) - c0046cf2: 6906 ld s2,64(sp) - c0046cf4: 79e2 ld s3,56(sp) - c0046cf6: 7a42 ld s4,48(sp) - c0046cf8: 7aa2 ld s5,40(sp) - c0046cfa: 7b02 ld s6,32(sp) - c0046cfc: 6be2 ld s7,24(sp) - c0046cfe: 6c42 ld s8,16(sp) - c0046d00: 6ca2 ld s9,8(sp) - c0046d02: 6d02 ld s10,0(sp) - c0046d04: 6125 addi sp,sp,96 - c0046d06: 8082 ret - -00000000c0046d08 : + c0046ebc: 60e6 ld ra,88(sp) + c0046ebe: 6446 ld s0,80(sp) + c0046ec0: 64a6 ld s1,72(sp) + c0046ec2: 6906 ld s2,64(sp) + c0046ec4: 79e2 ld s3,56(sp) + c0046ec6: 7a42 ld s4,48(sp) + c0046ec8: 7aa2 ld s5,40(sp) + c0046eca: 7b02 ld s6,32(sp) + c0046ecc: 6be2 ld s7,24(sp) + c0046ece: 6c42 ld s8,16(sp) + c0046ed0: 6ca2 ld s9,8(sp) + c0046ed2: 6d02 ld s10,0(sp) + c0046ed4: 6125 addi sp,sp,96 + c0046ed6: 8082 ret + +00000000c0046ed8 : cr_union1(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:511 { - c0046d08: 7139 addi sp,sp,-64 - c0046d0a: f822 sd s0,48(sp) - c0046d0c: e42e sd a1,8(sp) - c0046d0e: 842a mv s0,a0 - c0046d10: e032 sd a2,0(sp) + c0046ed8: 7139 addi sp,sp,-64 + c0046eda: f822 sd s0,48(sp) + c0046edc: e42e sd a1,8(sp) + c0046ede: 842a mv s0,a0 + c0046ee0: e032 sd a2,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:512 CharRange a = *cr; - c0046d12: 85aa mv a1,a0 - c0046d14: 02000613 li a2,32 - c0046d18: 0808 addi a0,sp,16 + c0046ee2: 85aa mv a1,a0 + c0046ee4: 02000613 li a2,32 + c0046ee8: 0808 addi a0,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:511 { - c0046d1a: fc06 sd ra,56(sp) + c0046eea: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:512 CharRange a = *cr; - c0046d1c: 4bf0f0ef jal ra,c00569da + c0046eec: 4bf0f0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:517 ret = cr_op(cr, a.points, a.len, b_pt, b_len, CR_OP_UNION); - c0046d20: 6702 ld a4,0(sp) - c0046d22: 66a2 ld a3,8(sp) - c0046d24: 4642 lw a2,16(sp) - c0046d26: 65e2 ld a1,24(sp) + c0046ef0: 6702 ld a4,0(sp) + c0046ef2: 66a2 ld a3,8(sp) + c0046ef4: 4642 lw a2,16(sp) + c0046ef6: 65e2 ld a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:514 cr->len = 0; - c0046d28: 00043023 sd zero,0(s0) + c0046ef8: 00043023 sd zero,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:516 cr->points = NULL; - c0046d2c: 00043423 sd zero,8(s0) + c0046efc: 00043423 sd zero,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:517 ret = cr_op(cr, a.points, a.len, b_pt, b_len, CR_OP_UNION); - c0046d30: 4781 li a5,0 - c0046d32: 8522 mv a0,s0 - c0046d34: ef9ff0ef jal ra,c0046c2c - c0046d38: 842a mv s0,a0 + c0046f00: 4781 li a5,0 + c0046f02: 8522 mv a0,s0 + c0046f04: ef9ff0ef jal ra,c0046dfc + c0046f08: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:518 cr_free(&a); - c0046d3a: 0808 addi a0,sp,16 - c0046d3c: ac3ff0ef jal ra,c00467fe + c0046f0a: 0808 addi a0,sp,16 + c0046f0c: ac3ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:520 } - c0046d40: 70e2 ld ra,56(sp) - c0046d42: 8522 mv a0,s0 - c0046d44: 7442 ld s0,48(sp) - c0046d46: 6121 addi sp,sp,64 - c0046d48: 8082 ret + c0046f10: 70e2 ld ra,56(sp) + c0046f12: 8522 mv a0,s0 + c0046f14: 7442 ld s0,48(sp) + c0046f16: 6121 addi sp,sp,64 + c0046f18: 8082 ret -00000000c0046d4a : +00000000c0046f1a : cr_invert(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:523 { - c0046d4a: 7179 addi sp,sp,-48 - c0046d4c: f022 sd s0,32(sp) - c0046d4e: e84a sd s2,16(sp) - c0046d50: e44e sd s3,8(sp) - c0046d52: f406 sd ra,40(sp) - c0046d54: ec26 sd s1,24(sp) + c0046f1a: 7179 addi sp,sp,-48 + c0046f1c: f022 sd s0,32(sp) + c0046f1e: e84a sd s2,16(sp) + c0046f20: e44e sd s3,8(sp) + c0046f22: f406 sd ra,40(sp) + c0046f24: ec26 sd s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:525 len = cr->len; - c0046d56: 4104 lw s1,0(a0) + c0046f26: 4104 lw s1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:523 { - c0046d58: 842a mv s0,a0 + c0046f28: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:527 return -1; - c0046d5a: 597d li s2,-1 + c0046f2a: 597d li s2,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:526 if (cr_realloc(cr, len + 2)) - c0046d5c: 0024859b addiw a1,s1,2 - c0046d60: 89ae mv s3,a1 - c0046d62: aa7ff0ef jal ra,c0046808 - c0046d66: e51d bnez a0,c0046d94 + c0046f2c: 0024859b addiw a1,s1,2 + c0046f30: 89ae mv s3,a1 + c0046f32: aa7ff0ef jal ra,c00469d8 + c0046f36: e51d bnez a0,c0046f64 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:528 memmove(cr->points + 1, cr->points, len * sizeof(cr->points[0])); - c0046d68: 640c ld a1,8(s0) - c0046d6a: 00249613 slli a2,s1,0x2 - c0046d6e: 892a mv s2,a0 - c0046d70: 00458513 addi a0,a1,4 - c0046d74: 2bb0f0ef jal ra,c005682e + c0046f38: 640c ld a1,8(s0) + c0046f3a: 00249613 slli a2,s1,0x2 + c0046f3e: 892a mv s2,a0 + c0046f40: 00458513 addi a0,a1,4 + c0046f44: 2bb0f0ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:529 cr->points[0] = 0; - c0046d78: 641c ld a5,8(s0) + c0046f48: 641c ld a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:530 cr->points[len + 1] = UINT32_MAX; - c0046d7a: 2485 addiw s1,s1,1 - c0046d7c: 048a slli s1,s1,0x2 + c0046f4a: 2485 addiw s1,s1,1 + c0046f4c: 048a slli s1,s1,0x2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:529 cr->points[0] = 0; - c0046d7e: 0007a023 sw zero,0(a5) + c0046f4e: 0007a023 sw zero,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:530 cr->points[len + 1] = UINT32_MAX; - c0046d82: 641c ld a5,8(s0) + c0046f52: 641c ld a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:532 cr_compress(cr); - c0046d84: 8522 mv a0,s0 + c0046f54: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:530 cr->points[len + 1] = UINT32_MAX; - c0046d86: 94be add s1,s1,a5 - c0046d88: 57fd li a5,-1 - c0046d8a: c09c sw a5,0(s1) + c0046f56: 94be add s1,s1,a5 + c0046f58: 57fd li a5,-1 + c0046f5a: c09c sw a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:531 cr->len = len + 2; - c0046d8c: 01342023 sw s3,0(s0) + c0046f5c: 01342023 sw s3,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:532 cr_compress(cr); - c0046d90: e51fe0ef jal ra,c0045be0 + c0046f60: e51fe0ef jal ra,c0045db0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:534 } - c0046d94: 70a2 ld ra,40(sp) - c0046d96: 7402 ld s0,32(sp) - c0046d98: 64e2 ld s1,24(sp) - c0046d9a: 69a2 ld s3,8(sp) - c0046d9c: 854a mv a0,s2 - c0046d9e: 6942 ld s2,16(sp) - c0046da0: 6145 addi sp,sp,48 - c0046da2: 8082 ret + c0046f64: 70a2 ld ra,40(sp) + c0046f66: 7402 ld s0,32(sp) + c0046f68: 64e2 ld s1,24(sp) + c0046f6a: 69a2 ld s3,8(sp) + c0046f6c: 854a mv a0,s2 + c0046f6e: 6942 ld s2,16(sp) + c0046f70: 6145 addi sp,sp,48 + c0046f72: 8082 ret -00000000c0046da4 : +00000000c0046f74 : unicode_prop_ops(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1486 } PropOPEnum; @@ -193417,8 +193615,8 @@ unicode_prop_ops(): static int unicode_prop_ops(CharRange *cr, ...) { - c0046da4: 714d addi sp,sp,-336 - c0046da6: fe3e sd a5,312(sp) + c0046f74: 714d addi sp,sp,-336 + c0046f76: fe3e sd a5,312(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1492 va_list ap; CharRange stack[POP_STACK_LEN_MAX]; @@ -193426,38 +193624,38 @@ static int unicode_prop_ops(CharRange *cr, ...) uint32_t a; va_start(ap, cr); - c0046da8: 0a3c addi a5,sp,280 + c0046f78: 0a3c addi a5,sp,280 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1486 { - c0046daa: e222 sd s0,256(sp) - c0046dac: fda6 sd s1,248(sp) - c0046dae: edd6 sd s5,216(sp) - c0046db0: e9da sd s6,208(sp) - c0046db2: e5de sd s7,200(sp) - c0046db4: e1e2 sd s8,192(sp) - c0046db6: e606 sd ra,264(sp) - c0046db8: f9ca sd s2,240(sp) - c0046dba: f5ce sd s3,232(sp) - c0046dbc: f1d2 sd s4,224(sp) - c0046dbe: fd66 sd s9,184(sp) - c0046dc0: f96a sd s10,176(sp) - c0046dc2: f56e sd s11,168(sp) - c0046dc4: 84aa mv s1,a0 - c0046dc6: ee2e sd a1,280(sp) - c0046dc8: f232 sd a2,288(sp) - c0046dca: f636 sd a3,296(sp) - c0046dcc: fa3a sd a4,304(sp) - c0046dce: e2c2 sd a6,320(sp) - c0046dd0: e6c6 sd a7,328(sp) + c0046f7a: e222 sd s0,256(sp) + c0046f7c: fda6 sd s1,248(sp) + c0046f7e: edd6 sd s5,216(sp) + c0046f80: e9da sd s6,208(sp) + c0046f82: e5de sd s7,200(sp) + c0046f84: e1e2 sd s8,192(sp) + c0046f86: e606 sd ra,264(sp) + c0046f88: f9ca sd s2,240(sp) + c0046f8a: f5ce sd s3,232(sp) + c0046f8c: f1d2 sd s4,224(sp) + c0046f8e: fd66 sd s9,184(sp) + c0046f90: f96a sd s10,176(sp) + c0046f92: f56e sd s11,168(sp) + c0046f94: 84aa mv s1,a0 + c0046f96: ee2e sd a1,280(sp) + c0046f98: f232 sd a2,288(sp) + c0046f9a: f636 sd a3,296(sp) + c0046f9c: fa3a sd a4,304(sp) + c0046f9e: e2c2 sd a6,320(sp) + c0046fa0: e6c6 sd a7,328(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1492 va_start(ap, cr); - c0046dd2: ec3e sd a5,24(sp) + c0046fa2: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1493 stack_len = 0; - c0046dd4: 4401 li s0,0 - c0046dd6: 4b9d li s7,7 - c0046dd8: 00021b17 auipc s6,0x21 - c0046ddc: 810b0b13 addi s6,s6,-2032 # c00675e8 + c0046fa4: 4401 li s0,0 + c0046fa6: 4b9d li s7,7 + c0046fa8: 00021b17 auipc s6,0x21 + c0046fac: 8a0b0b13 addi s6,s6,-1888 # c0067848 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1523 case POP_UNION: case POP_INTER: @@ -193465,65 +193663,65 @@ static int unicode_prop_ops(CharRange *cr, ...) { CharRange *cr1, *cr2, *cr3; assert(stack_len >= 2); - c0046de0: 4c05 li s8,1 + c0046fb0: 4c05 li s8,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1524 assert(stack_len < POP_STACK_LEN_MAX); - c0046de2: 4a8d li s5,3 + c0046fb2: 4a8d li s5,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1495 op = va_arg(ap, int); - c0046de4: 6762 ld a4,24(sp) - c0046de6: 00072d83 lw s11,0(a4) - c0046dea: 00870793 addi a5,a4,8 - c0046dee: ec3e sd a5,24(sp) - c0046df0: 19bbea63 bltu s7,s11,c0046f84 - c0046df4: 002d9793 slli a5,s11,0x2 - c0046df8: 97da add a5,a5,s6 - c0046dfa: 439c lw a5,0(a5) - c0046dfc: 97da add a5,a5,s6 - c0046dfe: 8782 jr a5 + c0046fb4: 6762 ld a4,24(sp) + c0046fb6: 00072d83 lw s11,0(a4) + c0046fba: 00870793 addi a5,a4,8 + c0046fbe: ec3e sd a5,24(sp) + c0046fc0: 19bbea63 bltu s7,s11,c0047154 + c0046fc4: 002d9793 slli a5,s11,0x2 + c0046fc8: 97da add a5,a5,s6 + c0046fca: 439c lw a5,0(a5) + c0046fcc: 97da add a5,a5,s6 + c0046fce: 8782 jr a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1498 assert(stack_len < POP_STACK_LEN_MAX); - c0046e00: 008adb63 bge s5,s0,c0046e16 + c0046fd0: 008adb63 bge s5,s0,c0046fe6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1498 (discriminator 1) - c0046e04: 4601 li a2,0 - c0046e06: 5da00593 li a1,1498 + c0046fd4: 4601 li a2,0 + c0046fd6: 5da00593 li a1,1498 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1505 (discriminator 1) assert(stack_len < POP_STACK_LEN_MAX); - c0046e0a: 00020517 auipc a0,0x20 - c0046e0e: 7ce50513 addi a0,a0,1998 # c00675d8 - c0046e12: 4070c0ef jal ra,c0053a18 <__assert> + c0046fda: 00021517 auipc a0,0x21 + c0046fde: 85e50513 addi a0,a0,-1954 # c0067838 + c0046fe2: 4070c0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1499 a = va_arg(ap, int); - c0046e16: 01070793 addi a5,a4,16 + c0046fe6: 01070793 addi a5,a4,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1500 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e1a: 688c ld a1,16(s1) - c0046e1c: 6c90 ld a2,24(s1) + c0046fea: 688c ld a1,16(s1) + c0046fec: 6c90 ld a2,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1499 a = va_arg(ap, int); - c0046e1e: ec3e sd a5,24(sp) + c0046fee: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1500 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e20: 00541513 slli a0,s0,0x5 - c0046e24: 101c addi a5,sp,32 - c0046e26: 953e add a0,a0,a5 + c0046ff0: 00541513 slli a0,s0,0x5 + c0046ff4: 101c addi a5,sp,32 + c0046ff6: 953e add a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1499 a = va_arg(ap, int); - c0046e28: 00872983 lw s3,8(a4) + c0046ff8: 00872983 lw s3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1500 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e2c: e02a sd a0,0(sp) - c0046e2e: 9b9ff0ef jal ra,c00467e6 + c0046ffc: e02a sd a0,0(sp) + c0046ffe: 9b9ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1501 if (unicode_general_category1(&stack[stack_len - 1], a)) - c0046e32: 6502 ld a0,0(sp) - c0046e34: 85ce mv a1,s3 + c0047002: 6502 ld a0,0(sp) + c0047004: 85ce mv a1,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1500 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e36: 0014091b addiw s2,s0,1 + c0047006: 0014091b addiw s2,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1501 if (unicode_general_category1(&stack[stack_len - 1], a)) - c0046e3a: b9dff0ef jal ra,c00469d6 + c004700a: b9dff0ef jal ra,c0046ba6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1540 (discriminator 2) stack_len -= 2; } @@ -193531,153 +193729,153 @@ static int unicode_prop_ops(CharRange *cr, ...) case POP_INVERT: assert(stack_len >= 1); if (cr_invert(&stack[stack_len - 1])) - c0046e3e: 10050c63 beqz a0,c0046f56 - c0046e42: a8e9 j c0046f1c + c004700e: 10050c63 beqz a0,c0047126 + c0047012: a8e9 j c00470ec /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1505 assert(stack_len < POP_STACK_LEN_MAX); - c0046e44: 008ad663 bge s5,s0,c0046e50 + c0047014: 008ad663 bge s5,s0,c0047020 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1505 (discriminator 1) - c0046e48: 4601 li a2,0 - c0046e4a: 5e100593 li a1,1505 - c0046e4e: bf75 j c0046e0a + c0047018: 4601 li a2,0 + c004701a: 5e100593 li a1,1505 + c004701e: bf75 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1506 a = va_arg(ap, int); - c0046e50: 01070793 addi a5,a4,16 + c0047020: 01070793 addi a5,a4,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1507 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e54: 688c ld a1,16(s1) - c0046e56: 6c90 ld a2,24(s1) + c0047024: 688c ld a1,16(s1) + c0047026: 6c90 ld a2,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1506 a = va_arg(ap, int); - c0046e58: ec3e sd a5,24(sp) + c0047028: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1507 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e5a: 00541513 slli a0,s0,0x5 - c0046e5e: 101c addi a5,sp,32 - c0046e60: 953e add a0,a0,a5 + c004702a: 00541513 slli a0,s0,0x5 + c004702e: 101c addi a5,sp,32 + c0047030: 953e add a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1506 a = va_arg(ap, int); - c0046e62: 00872983 lw s3,8(a4) + c0047032: 00872983 lw s3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1507 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e66: e02a sd a0,0(sp) - c0046e68: 97fff0ef jal ra,c00467e6 + c0047036: e02a sd a0,0(sp) + c0047038: 97fff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1508 if (unicode_prop1(&stack[stack_len - 1], a)) - c0046e6c: 6502 ld a0,0(sp) - c0046e6e: 85ce mv a1,s3 + c004703c: 6502 ld a0,0(sp) + c004703e: 85ce mv a1,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1507 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e70: 0014091b addiw s2,s0,1 + c0047040: 0014091b addiw s2,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1508 if (unicode_prop1(&stack[stack_len - 1], a)) - c0046e74: c6fff0ef jal ra,c0046ae2 - c0046e78: b7d9 j c0046e3e + c0047044: c6fff0ef jal ra,c0046cb2 + c0047048: b7d9 j c004700e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1512 assert(stack_len < POP_STACK_LEN_MAX); - c0046e7a: 008ad663 bge s5,s0,c0046e86 + c004704a: 008ad663 bge s5,s0,c0047056 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1512 (discriminator 1) - c0046e7e: 4601 li a2,0 - c0046e80: 5e800593 li a1,1512 - c0046e84: b759 j c0046e0a + c004704e: 4601 li a2,0 + c0047050: 5e800593 li a1,1512 + c0047054: b759 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1513 a = va_arg(ap, int); - c0046e86: 01070793 addi a5,a4,16 + c0047056: 01070793 addi a5,a4,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1514 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e8a: 688c ld a1,16(s1) - c0046e8c: 6c90 ld a2,24(s1) + c004705a: 688c ld a1,16(s1) + c004705c: 6c90 ld a2,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1513 a = va_arg(ap, int); - c0046e8e: ec3e sd a5,24(sp) + c004705e: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1514 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e90: 00541513 slli a0,s0,0x5 - c0046e94: 101c addi a5,sp,32 - c0046e96: 953e add a0,a0,a5 + c0047060: 00541513 slli a0,s0,0x5 + c0047064: 101c addi a5,sp,32 + c0047066: 953e add a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1513 a = va_arg(ap, int); - c0046e98: 00872983 lw s3,8(a4) + c0047068: 00872983 lw s3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1514 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046e9c: e02a sd a0,0(sp) - c0046e9e: 949ff0ef jal ra,c00467e6 + c004706c: e02a sd a0,0(sp) + c004706e: 949ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1515 if (unicode_case1(&stack[stack_len - 1], a)) - c0046ea2: 6502 ld a0,0(sp) - c0046ea4: 85ce mv a1,s3 + c0047072: 6502 ld a0,0(sp) + c0047074: 85ce mv a1,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1514 cr_init(&stack[stack_len++], cr->mem_opaque, cr->realloc_func); - c0046ea6: 0014091b addiw s2,s0,1 + c0047076: 0014091b addiw s2,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1515 if (unicode_case1(&stack[stack_len - 1], a)) - c0046eaa: a01ff0ef jal ra,c00468aa - c0046eae: bf41 j c0046e3e + c004707a: a01ff0ef jal ra,c0046a7a + c004707e: bf41 j c004700e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1523 assert(stack_len >= 2); - c0046eb0: 008c4663 blt s8,s0,c0046ebc + c0047080: 008c4663 blt s8,s0,c004708c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1523 (discriminator 1) - c0046eb4: 4601 li a2,0 - c0046eb6: 5f300593 li a1,1523 - c0046eba: bf81 j c0046e0a + c0047084: 4601 li a2,0 + c0047086: 5f300593 li a1,1523 + c004708a: bf81 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1524 (discriminator 2) assert(stack_len < POP_STACK_LEN_MAX); - c0046ebc: 008ad663 bge s5,s0,c0046ec8 + c004708c: 008ad663 bge s5,s0,c0047098 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1524 (discriminator 1) - c0046ec0: 4601 li a2,0 - c0046ec2: 5f400593 li a1,1524 - c0046ec6: b791 j c0046e0a + c0047090: 4601 li a2,0 + c0047092: 5f400593 li a1,1524 + c0047096: b791 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1528 (discriminator 2) cr_init(cr3, cr->mem_opaque, cr->realloc_func); - c0046ec8: 6c90 ld a2,24(s1) - c0046eca: 688c ld a1,16(s1) + c0047098: 6c90 ld a2,24(s1) + c004709a: 688c ld a1,16(s1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1525 (discriminator 2) cr1 = &stack[stack_len - 2]; - c0046ecc: ffe4099b addiw s3,s0,-2 - c0046ed0: 101c addi a5,sp,32 - c0046ed2: 0996 slli s3,s3,0x5 + c004709c: ffe4099b addiw s3,s0,-2 + c00470a0: 101c addi a5,sp,32 + c00470a2: 0996 slli s3,s3,0x5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1526 (discriminator 2) cr2 = &stack[stack_len - 1]; - c0046ed4: fff4091b addiw s2,s0,-1 + c00470a4: fff4091b addiw s2,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1527 (discriminator 2) cr3 = &stack[stack_len++]; - c0046ed8: 00541c93 slli s9,s0,0x5 + c00470a8: 00541c93 slli s9,s0,0x5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1525 (discriminator 2) cr1 = &stack[stack_len - 2]; - c0046edc: 01378833 add a6,a5,s3 + c00470ac: 01378833 add a6,a5,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1527 (discriminator 2) cr3 = &stack[stack_len++]; - c0046ee0: 01978533 add a0,a5,s9 + c00470b0: 01978533 add a0,a5,s9 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1526 (discriminator 2) cr2 = &stack[stack_len - 1]; - c0046ee4: 00591a13 slli s4,s2,0x5 + c00470b4: 00591a13 slli s4,s2,0x5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1525 (discriminator 2) cr1 = &stack[stack_len - 2]; - c0046ee8: e442 sd a6,8(sp) + c00470b8: e442 sd a6,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1526 (discriminator 2) cr2 = &stack[stack_len - 1]; - c0046eea: 01478d33 add s10,a5,s4 + c00470ba: 01478d33 add s10,a5,s4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1528 (discriminator 2) cr_init(cr3, cr->mem_opaque, cr->realloc_func); - c0046eee: e02a sd a0,0(sp) - c0046ef0: 8f7ff0ef jal ra,c00467e6 + c00470be: e02a sd a0,0(sp) + c00470c0: 8f7ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1529 (discriminator 2) if (cr_op(cr3, cr1->points, cr1->len, - c0046ef4: 111c addi a5,sp,160 - c0046ef6: 9a3e add s4,s4,a5 - c0046ef8: 99be add s3,s3,a5 - c0046efa: f80a2703 lw a4,-128(s4) - c0046efe: f88a3683 ld a3,-120(s4) - c0046f02: f809a603 lw a2,-128(s3) - c0046f06: f889b583 ld a1,-120(s3) - c0046f0a: 6502 ld a0,0(sp) - c0046f0c: ffdd879b addiw a5,s11,-3 - c0046f10: d1dff0ef jal ra,c0046c2c - c0046f14: 6822 ld a6,8(sp) - c0046f16: cd19 beqz a0,c0046f34 + c00470c4: 111c addi a5,sp,160 + c00470c6: 9a3e add s4,s4,a5 + c00470c8: 99be add s3,s3,a5 + c00470ca: f80a2703 lw a4,-128(s4) + c00470ce: f88a3683 ld a3,-120(s4) + c00470d2: f809a603 lw a2,-128(s3) + c00470d6: f889b583 ld a1,-120(s3) + c00470da: 6502 ld a0,0(sp) + c00470dc: ffdd879b addiw a5,s11,-3 + c00470e0: d1dff0ef jal ra,c0046dfc + c00470e4: 6822 ld a6,8(sp) + c00470e6: cd19 beqz a0,c0047104 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1527 cr3 = &stack[stack_len++]; - c0046f18: 0014091b addiw s2,s0,1 + c00470e8: 0014091b addiw s2,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1555 assert(stack_len == 1); ret = cr_copy(cr, &stack[0]); @@ -193685,1383 +193883,1383 @@ static int unicode_prop_ops(CharRange *cr, ...) return ret; fail: for(i = 0; i < stack_len; i++) - c0046f1c: 1000 addi s0,sp,32 - c0046f1e: 4481 li s1,0 + c00470ec: 1000 addi s0,sp,32 + c00470ee: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1556 (discriminator 3) cr_free(&stack[i]); - c0046f20: 8522 mv a0,s0 + c00470f0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1555 (discriminator 3) for(i = 0; i < stack_len; i++) - c0046f22: 2485 addiw s1,s1,1 + c00470f2: 2485 addiw s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1556 (discriminator 3) cr_free(&stack[i]); - c0046f24: 8dbff0ef jal ra,c00467fe + c00470f4: 8dbff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1555 (discriminator 3) for(i = 0; i < stack_len; i++) - c0046f28: 02040413 addi s0,s0,32 - c0046f2c: fe991ae3 bne s2,s1,c0046f20 + c00470f8: 02040413 addi s0,s0,32 + c00470fc: fe991ae3 bne s2,s1,c00470f0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1557 return -1; - c0046f30: 547d li s0,-1 - c0046f32: a09d j c0046f98 + c0047100: 547d li s0,-1 + c0047102: a09d j c0047168 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1532 cr_free(cr1); - c0046f34: 8542 mv a0,a6 - c0046f36: 8c9ff0ef jal ra,c00467fe + c0047104: 8542 mv a0,a6 + c0047106: 8c9ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1533 cr_free(cr2); - c0046f3a: 856a mv a0,s10 - c0046f3c: 8c3ff0ef jal ra,c00467fe + c004710a: 856a mv a0,s10 + c004710c: 8c3ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1534 *cr1 = *cr3; - c0046f40: 111c addi a5,sp,160 - c0046f42: 019785b3 add a1,a5,s9 - c0046f46: 02000613 li a2,32 - c0046f4a: f8058593 addi a1,a1,-128 - c0046f4e: f8098513 addi a0,s3,-128 - c0046f52: 2890f0ef jal ra,c00569da + c0047110: 111c addi a5,sp,160 + c0047112: 019785b3 add a1,a5,s9 + c0047116: 02000613 li a2,32 + c004711a: f8058593 addi a1,a1,-128 + c004711e: f8098513 addi a0,s3,-128 + c0047122: 2890f0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1537 break; - c0046f56: 844a mv s0,s2 - c0046f58: b571 j c0046de4 + c0047126: 844a mv s0,s2 + c0047128: b571 j c0046fb4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1539 assert(stack_len >= 1); - c0046f5a: e409 bnez s0,c0046f64 + c004712a: e409 bnez s0,c0047134 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1539 (discriminator 1) - c0046f5c: 4601 li a2,0 - c0046f5e: 60300593 li a1,1539 - c0046f62: b565 j c0046e0a + c004712c: 4601 li a2,0 + c004712e: 60300593 li a1,1539 + c0047132: b565 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1540 (discriminator 2) if (cr_invert(&stack[stack_len - 1])) - c0046f64: fff4051b addiw a0,s0,-1 - c0046f68: 101c addi a5,sp,32 - c0046f6a: 0516 slli a0,a0,0x5 - c0046f6c: 953e add a0,a0,a5 - c0046f6e: dddff0ef jal ra,c0046d4a - c0046f72: 8922 mv s2,s0 - c0046f74: b5e9 j c0046e3e + c0047134: fff4051b addiw a0,s0,-1 + c0047138: 101c addi a5,sp,32 + c004713a: 0516 slli a0,a0,0x5 + c004713c: 953e add a0,a0,a5 + c004713e: dddff0ef jal ra,c0046f1a + c0047142: 8922 mv s2,s0 + c0047144: b5e9 j c004700e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1550 assert(stack_len == 1); - c0046f76: 4785 li a5,1 - c0046f78: 00f40863 beq s0,a5,c0046f88 + c0047146: 4785 li a5,1 + c0047148: 00f40863 beq s0,a5,c0047158 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1550 (discriminator 1) - c0046f7c: 4601 li a2,0 - c0046f7e: 60e00593 li a1,1550 - c0046f82: b561 j c0046e0a + c004714c: 4601 li a2,0 + c004714e: 60e00593 li a1,1550 + c0047152: b561 j c0046fda /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1546 abort(); - c0046f84: 0870e0ef jal ra,c005580a + c0047154: 0870e0ef jal ra,c00559da /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1551 (discriminator 2) ret = cr_copy(cr, &stack[0]); - c0046f88: 100c addi a1,sp,32 - c0046f8a: 8526 mv a0,s1 - c0046f8c: c65ff0ef jal ra,c0046bf0 - c0046f90: 842a mv s0,a0 + c0047158: 100c addi a1,sp,32 + c004715a: 8526 mv a0,s1 + c004715c: c65ff0ef jal ra,c0046dc0 + c0047160: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1552 (discriminator 2) cr_free(&stack[0]); - c0046f92: 1008 addi a0,sp,32 - c0046f94: 86bff0ef jal ra,c00467fe + c0047162: 1008 addi a0,sp,32 + c0047164: 86bff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1558 } - c0046f98: 60b2 ld ra,264(sp) - c0046f9a: 8522 mv a0,s0 - c0046f9c: 6412 ld s0,256(sp) - c0046f9e: 74ee ld s1,248(sp) - c0046fa0: 794e ld s2,240(sp) - c0046fa2: 79ae ld s3,232(sp) - c0046fa4: 7a0e ld s4,224(sp) - c0046fa6: 6aee ld s5,216(sp) - c0046fa8: 6b4e ld s6,208(sp) - c0046faa: 6bae ld s7,200(sp) - c0046fac: 6c0e ld s8,192(sp) - c0046fae: 7cea ld s9,184(sp) - c0046fb0: 7d4a ld s10,176(sp) - c0046fb2: 7daa ld s11,168(sp) - c0046fb4: 6171 addi sp,sp,336 - c0046fb6: 8082 ret - -00000000c0046fb8 : + c0047168: 60b2 ld ra,264(sp) + c004716a: 8522 mv a0,s0 + c004716c: 6412 ld s0,256(sp) + c004716e: 74ee ld s1,248(sp) + c0047170: 794e ld s2,240(sp) + c0047172: 79ae ld s3,232(sp) + c0047174: 7a0e ld s4,224(sp) + c0047176: 6aee ld s5,216(sp) + c0047178: 6b4e ld s6,208(sp) + c004717a: 6bae ld s7,200(sp) + c004717c: 6c0e ld s8,192(sp) + c004717e: 7cea ld s9,184(sp) + c0047180: 7d4a ld s10,176(sp) + c0047182: 7daa ld s11,168(sp) + c0047184: 6171 addi sp,sp,336 + c0047186: 8082 ret + +00000000c0047188 : lre_is_id_start(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:540 return lre_is_in_table(c, unicode_prop_ID_Start_table, - c0046fb8: 02300693 li a3,35 - c0046fbc: 00027617 auipc a2,0x27 - c0046fc0: f8c60613 addi a2,a2,-116 # c006df48 - c0046fc4: 00027597 auipc a1,0x27 - c0046fc8: ff458593 addi a1,a1,-12 # c006dfb8 - c0046fcc: dd3fe06f j c0045d9e - -00000000c0046fd0 : + c0047188: 02300693 li a3,35 + c004718c: 00027617 auipc a2,0x27 + c0047190: 01c60613 addi a2,a2,28 # c006e1a8 + c0047194: 00027597 auipc a1,0x27 + c0047198: 08458593 addi a1,a1,132 # c006e218 + c004719c: dd3fe06f j c0045f6e + +00000000c00471a0 : lre_is_id_continue(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:546 { - c0046fd0: 1141 addi sp,sp,-16 - c0046fd2: e022 sd s0,0(sp) - c0046fd4: e406 sd ra,8(sp) - c0046fd6: 842a mv s0,a0 + c00471a0: 1141 addi sp,sp,-16 + c00471a2: e022 sd s0,0(sp) + c00471a4: e406 sd ra,8(sp) + c00471a6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:547 return lre_is_id_start(c) || - c0046fd8: fe1ff0ef jal ra,c0046fb8 - c0046fdc: e11d bnez a0,c0047002 + c00471a8: fe1ff0ef jal ra,c0047188 + c00471ac: e11d bnez a0,c00471d2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:548 (discriminator 2) lre_is_in_table(c, unicode_prop_ID_Continue1_table, - c0046fde: 46d5 li a3,21 - c0046fe0: 00027617 auipc a2,0x27 - c0046fe4: c9060613 addi a2,a2,-880 # c006dc70 - c0046fe8: 00027597 auipc a1,0x27 - c0046fec: cc858593 addi a1,a1,-824 # c006dcb0 - c0046ff0: 8522 mv a0,s0 - c0046ff2: dadfe0ef jal ra,c0045d9e + c00471ae: 46d5 li a3,21 + c00471b0: 00027617 auipc a2,0x27 + c00471b4: d2060613 addi a2,a2,-736 # c006ded0 + c00471b8: 00027597 auipc a1,0x27 + c00471bc: d5858593 addi a1,a1,-680 # c006df10 + c00471c0: 8522 mv a0,s0 + c00471c2: dadfe0ef jal ra,c0045f6e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:547 (discriminator 2) return lre_is_id_start(c) || - c0046ff6: 00a03533 snez a0,a0 + c00471c6: 00a03533 snez a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:551 (discriminator 6) } - c0046ffa: 60a2 ld ra,8(sp) - c0046ffc: 6402 ld s0,0(sp) - c0046ffe: 0141 addi sp,sp,16 - c0047000: 8082 ret + c00471ca: 60a2 ld ra,8(sp) + c00471cc: 6402 ld s0,0(sp) + c00471ce: 0141 addi sp,sp,16 + c00471d0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:547 return lre_is_id_start(c) || - c0047002: 4505 li a0,1 - c0047004: bfdd j c0046ffa + c00471d2: 4505 li a0,1 + c00471d4: bfdd j c00471ca -00000000c0047006 : +00000000c00471d6 : unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:959 { - c0047006: 7115 addi sp,sp,-224 - c0047008: e9a2 sd s0,208(sp) - c004700a: e1ca sd s2,192(sp) - c004700c: e566 sd s9,136(sp) - c004700e: 892a mv s2,a0 - c0047010: 8cb2 mv s9,a2 + c00471d6: 7115 addi sp,sp,-224 + c00471d8: e9a2 sd s0,208(sp) + c00471da: e1ca sd s2,192(sp) + c00471dc: e566 sd s9,136(sp) + c00471de: 892a mv s2,a0 + c00471e0: 8cb2 mv s9,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:966 dbuf_init2(dbuf, opaque, realloc_func); - c0047012: 0088 addi a0,sp,64 - c0047014: 863e mv a2,a5 + c00471e2: 0088 addi a0,sp,64 + c00471e4: 863e mv a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:959 { - c0047016: 842e mv s0,a1 + c00471e6: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:966 dbuf_init2(dbuf, opaque, realloc_func); - c0047018: 85ba mv a1,a4 + c00471e8: 85ba mv a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:959 { - c004701a: ed86 sd ra,216(sp) - c004701c: fd4e sd s3,184(sp) - c004701e: e5a6 sd s1,200(sp) - c0047020: 89b6 mv s3,a3 - c0047022: f952 sd s4,176(sp) - c0047024: f556 sd s5,168(sp) - c0047026: f15a sd s6,160(sp) - c0047028: ed5e sd s7,152(sp) - c004702a: e962 sd s8,144(sp) - c004702c: e16a sd s10,128(sp) - c004702e: fcee sd s11,120(sp) + c00471ea: ed86 sd ra,216(sp) + c00471ec: fd4e sd s3,184(sp) + c00471ee: e5a6 sd s1,200(sp) + c00471f0: 89b6 mv s3,a3 + c00471f2: f952 sd s4,176(sp) + c00471f4: f556 sd s5,168(sp) + c00471f6: f15a sd s6,160(sp) + c00471f8: ed5e sd s7,152(sp) + c00471fa: e962 sd s8,144(sp) + c00471fc: e16a sd s10,128(sp) + c00471fe: fcee sd s11,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:966 dbuf_init2(dbuf, opaque, realloc_func); - c0047030: 3a1000ef jal ra,c0047bd0 + c0047200: 3a1000ef jal ra,c0047da0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:967 if (dbuf_realloc(dbuf, sizeof(int) * src_len)) - c0047034: 002c9613 slli a2,s9,0x2 - c0047038: 85b2 mv a1,a2 - c004703a: 0088 addi a0,sp,64 - c004703c: e432 sd a2,8(sp) - c004703e: 3d1000ef jal ra,c0047c0e - c0047042: 6622 ld a2,8(sp) - c0047044: c505 beqz a0,c004706c + c0047204: 002c9613 slli a2,s9,0x2 + c0047208: 85b2 mv a1,a2 + c004720a: 0088 addi a0,sp,64 + c004720c: e432 sd a2,8(sp) + c004720e: 3d1000ef jal ra,c0047dde + c0047212: 6622 ld a2,8(sp) + c0047214: c505 beqz a0,c004723c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:986 *pdst = NULL; - c0047046: 00093023 sd zero,0(s2) + c0047216: 00093023 sd zero,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:987 return -1; - c004704a: 5cfd li s9,-1 + c004721a: 5cfd li s9,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1027 } - c004704c: 60ee ld ra,216(sp) - c004704e: 644e ld s0,208(sp) - c0047050: 64ae ld s1,200(sp) - c0047052: 690e ld s2,192(sp) - c0047054: 79ea ld s3,184(sp) - c0047056: 7a4a ld s4,176(sp) - c0047058: 7aaa ld s5,168(sp) - c004705a: 7b0a ld s6,160(sp) - c004705c: 6bea ld s7,152(sp) - c004705e: 6c4a ld s8,144(sp) - c0047060: 6d0a ld s10,128(sp) - c0047062: 7de6 ld s11,120(sp) - c0047064: 8566 mv a0,s9 - c0047066: 6caa ld s9,136(sp) - c0047068: 612d addi sp,sp,224 - c004706a: 8082 ret + c004721c: 60ee ld ra,216(sp) + c004721e: 644e ld s0,208(sp) + c0047220: 64ae ld s1,200(sp) + c0047222: 690e ld s2,192(sp) + c0047224: 79ea ld s3,184(sp) + c0047226: 7a4a ld s4,176(sp) + c0047228: 7aaa ld s5,168(sp) + c004722a: 7b0a ld s6,160(sp) + c004722c: 6bea ld s7,152(sp) + c004722e: 6c4a ld s8,144(sp) + c0047230: 6d0a ld s10,128(sp) + c0047232: 7de6 ld s11,120(sp) + c0047234: 8566 mv a0,s9 + c0047236: 6caa ld s9,136(sp) + c0047238: 612d addi sp,sp,224 + c004723a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:971 if (n_type == UNICODE_NFC) { - c004706c: 4781 li a5,0 + c004723c: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:973 if (src[i] >= 0x100) - c004706e: 0ff00693 li a3,255 + c004723e: 0ff00693 li a3,255 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:971 if (n_type == UNICODE_NFC) { - c0047072: 04098563 beqz s3,c00470bc + c0047242: 04098563 beqz s3,c004728c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:983 (discriminator 1) to_nfd_rec(dbuf, (const int *)src, src_len, is_compat); - c0047076: 0019d69b srliw a3,s3,0x1 - c004707a: 8666 mv a2,s9 - c004707c: 85a2 mv a1,s0 - c004707e: 0088 addi a0,sp,64 - c0047080: 9d4ff0ef jal ra,c0046254 + c0047246: 0019d69b srliw a3,s3,0x1 + c004724a: 8666 mv a2,s9 + c004724c: 85a2 mv a1,s0 + c004724e: 0088 addi a0,sp,64 + c0047250: 9d4ff0ef jal ra,c0046424 dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 (discriminator 1) return s->error; - c0047084: 4a66 lw s4,88(sp) + c0047254: 4a66 lw s4,88(sp) unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:984 (discriminator 1) if (dbuf_error(dbuf)) { - c0047086: fc0a10e3 bnez s4,c0047046 + c0047256: fc0a10e3 bnez s4,c0047216 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:990 buf_len = dbuf->size / sizeof(int); - c004708a: 64a6 ld s1,72(sp) + c004725a: 64a6 ld s1,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:989 buf = (int *)dbuf->buf; - c004708c: 6406 ld s0,64(sp) + c004725c: 6406 ld s0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:990 buf_len = dbuf->size / sizeof(int); - c004708e: 8089 srli s1,s1,0x2 - c0047090: 2481 sext.w s1,s1 + c004725e: 8089 srli s1,s1,0x2 + c0047260: 2481 sext.w s1,s1 sort_cc(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:880 for(i = 0; i < len; i++) { - c0047092: 049a4163 blt s4,s1,c00470d4 + c0047262: 049a4163 blt s4,s1,c00472a4 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:994 if (buf_len <= 1 || (n_type & 1) != 0) { - c0047096: 4785 li a5,1 - c0047098: 0097d663 bge a5,s1,c00470a4 + c0047266: 4785 li a5,1 + c0047268: 0097d663 bge a5,s1,c0047274 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:994 (discriminator 1) - c004709c: 0019f993 andi s3,s3,1 - c00470a0: 08098f63 beqz s3,c004713e + c004726c: 0019f993 andi s3,s3,1 + c0047270: 08098f63 beqz s3,c004730e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:996 *pdst = (uint32_t *)buf; - c00470a4: 00893023 sd s0,0(s2) + c0047274: 00893023 sd s0,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:997 return buf_len; - c00470a8: 8ca6 mv s9,s1 - c00470aa: b74d j c004704c + c0047278: 8ca6 mv s9,s1 + c004727a: b74d j c004721c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:973 if (src[i] >= 0x100) - c00470ac: 0785 addi a5,a5,1 - c00470ae: 00279713 slli a4,a5,0x2 - c00470b2: 9722 add a4,a4,s0 - c00470b4: ffc72703 lw a4,-4(a4) - c00470b8: fae6efe3 bltu a3,a4,c0047076 + c004727c: 0785 addi a5,a5,1 + c004727e: 00279713 slli a4,a5,0x2 + c0047282: 9722 add a4,a4,s0 + c0047284: ffc72703 lw a4,-4(a4) + c0047288: fae6efe3 bltu a3,a4,c0047246 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:972 (discriminator 1) for(i = 0; i < src_len; i++) { - c00470bc: 0007871b sext.w a4,a5 - c00470c0: ff9746e3 blt a4,s9,c00470ac + c004728c: 0007871b sext.w a4,a5 + c0047290: ff9746e3 blt a4,s9,c004727c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:976 buf = (int *)dbuf->buf; - c00470c4: 6786 ld a5,64(sp) + c0047294: 6786 ld a5,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:977 memcpy(buf, src, src_len * sizeof(int)); - c00470c6: 85a2 mv a1,s0 - c00470c8: 853e mv a0,a5 - c00470ca: 1110f0ef jal ra,c00569da + c0047296: 85a2 mv a1,s0 + c0047298: 853e mv a0,a5 + c004729a: 1110f0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:978 *pdst = (uint32_t *)buf; - c00470ce: 00a93023 sd a0,0(s2) + c004729e: 00a93023 sd a0,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:979 return src_len; - c00470d2: bfad j c004704c + c00472a2: bfad j c004721c sort_cc(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:881 cc = unicode_get_cc(buf[i]); - c00470d4: 002a1793 slli a5,s4,0x2 - c00470d8: 97a2 add a5,a5,s0 - c00470da: 4388 lw a0,0(a5) - c00470dc: 8ad2 mv s5,s4 - c00470de: d7ffe0ef jal ra,c0045e5c + c00472a4: 002a1793 slli a5,s4,0x2 + c00472a8: 97a2 add a5,a5,s0 + c00472aa: 4388 lw a0,0(a5) + c00472ac: 8ad2 mv s5,s4 + c00472ae: d7ffe0ef jal ra,c004602c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:882 if (cc != 0) { - c00470e2: c901 beqz a0,c00470f2 + c00472b2: c901 beqz a0,c00472c2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:884 j = i + 1; - c00470e4: 001a0a9b addiw s5,s4,1 - c00470e8: 002a9b93 slli s7,s5,0x2 - c00470ec: 9ba2 add s7,s7,s0 + c00472b4: 001a0a9b addiw s5,s4,1 + c00472b8: 002a9b93 slli s7,s5,0x2 + c00472bc: 9ba2 add s7,s7,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:885 while (j < len) { - c00470ee: 01549563 bne s1,s5,c00470f8 + c00472be: 01549563 bne s1,s5,c00472c8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:880 for(i = 0; i < len; i++) { - c00470f2: 001a8a1b addiw s4,s5,1 - c00470f6: bf71 j c0047092 + c00472c2: 001a8a1b addiw s4,s5,1 + c00472c6: bf71 j c0047262 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:886 ch1 = buf[j]; - c00470f8: 000bac83 lw s9,0(s7) + c00472c8: 000bac83 lw s9,0(s7) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:887 cc1 = unicode_get_cc(ch1); - c00470fc: 8566 mv a0,s9 - c00470fe: d5ffe0ef jal ra,c0045e5c - c0047102: 8d2a mv s10,a0 + c00472cc: 8566 mv a0,s9 + c00472ce: d5ffe0ef jal ra,c004602c + c00472d2: 8d2a mv s10,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:888 if (cc1 == 0) - c0047104: d57d beqz a0,c00470f2 + c00472d4: d57d beqz a0,c00472c2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:890 k = j - 1; - c0047106: fffa8c1b addiw s8,s5,-1 + c00472d6: fffa8c1b addiw s8,s5,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:894 buf[k + 1] = buf[k]; - c004710a: 001c0b1b addiw s6,s8,1 - c004710e: 0b0a slli s6,s6,0x2 - c0047110: 9b22 add s6,s6,s0 + c00472da: 001c0b1b addiw s6,s8,1 + c00472de: 0b0a slli s6,s6,0x2 + c00472e0: 9b22 add s6,s6,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:891 while (k >= start) { - c0047112: 014c4b63 blt s8,s4,c0047128 + c00472e2: 014c4b63 blt s8,s4,c00472f8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:892 if (unicode_get_cc(buf[k]) <= cc1) - c0047116: 002c1d93 slli s11,s8,0x2 - c004711a: 9da2 add s11,s11,s0 - c004711c: 000da503 lw a0,0(s11) - c0047120: d3dfe0ef jal ra,c0045e5c - c0047124: 00ad4763 blt s10,a0,c0047132 + c00472e6: 002c1d93 slli s11,s8,0x2 + c00472ea: 9da2 add s11,s11,s0 + c00472ec: 000da503 lw a0,0(s11) + c00472f0: d3dfe0ef jal ra,c004602c + c00472f4: 00ad4763 blt s10,a0,c0047302 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:897 buf[k + 1] = ch1; - c0047128: 019b2023 sw s9,0(s6) + c00472f8: 019b2023 sw s9,0(s6) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:898 j++; - c004712c: 2a85 addiw s5,s5,1 - c004712e: 0b91 addi s7,s7,4 - c0047130: bf7d j c00470ee + c00472fc: 2a85 addiw s5,s5,1 + c00472fe: 0b91 addi s7,s7,4 + c0047300: bf7d j c00472be /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:894 buf[k + 1] = buf[k]; - c0047132: 000da783 lw a5,0(s11) + c0047302: 000da783 lw a5,0(s11) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:895 k--; - c0047136: 3c7d addiw s8,s8,-1 + c0047306: 3c7d addiw s8,s8,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:894 buf[k + 1] = buf[k]; - c0047138: 00fb2023 sw a5,0(s6) + c0047308: 00fb2023 sw a5,0(s6) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:895 k--; - c004713c: b7f9 j c004710a + c004730c: b7f9 j c00472da compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:947 } else if (c0 >= 0xac00 && c0 < 0xac00 + 11172 && - c004713e: 7ad5 lui s5,0xffff5 - c0047140: 6b0d lui s6,0x3 + c004730e: 7ad5 lui s5,0xffff5 + c0047310: 6b0d lui s6,0x3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:946 return 0xac00 + (c0 - 0x1100) * 588 + (c1 - 0x1161) * 28; - c0047142: ffd7cbb7 lui s7,0xffd7c - c0047146: 00440c13 addi s8,s0,4 + c0047312: ffd7cbb7 lui s7,0xffd7c + c0047316: 00440c13 addi s8,s0,4 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:994 if (buf_len <= 1 || (n_type & 1) != 0) { - c004714a: 4989 li s3,2 + c004731a: 4989 li s3,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1001 out_len = 1; - c004714c: 4c85 li s9,1 + c004731c: 4c85 li s9,1 compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:944 if (c0 >= 0x1100 && c0 < 0x1100 + 19 && - c004714e: 7a7d lui s4,0xfffff + c004731e: 7a7d lui s4,0xfffff /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:947 } else if (c0 >= 0xac00 && c0 < 0xac00 + 11172 && - c0047150: 400a8a9b addiw s5,s5,1024 - c0047154: ba3b0b13 addi s6,s6,-1117 # 2ba3 <__clzdi2-0xbfffd45d> + c0047320: 400a8a9b addiw s5,s5,1024 + c0047324: ba3b0b13 addi s6,s6,-1117 # 2ba3 <__clzdi2-0xbfffd45d> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:946 return 0xac00 + (c0 - 0x1100) * 588 + (c1 - 0x1161) * 28; - c0047158: 964b8b9b addiw s7,s7,-1692 + c0047328: 964b8b9b addiw s7,s7,-1692 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1005 last_cc = unicode_get_cc(buf[i]); - c004715c: 000c2503 lw a0,0(s8) # 1000 <__clzdi2-0xbffff000> + c004732c: 000c2503 lw a0,0(s8) # 1000 <__clzdi2-0xbffff000> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1006 starter_pos = out_len - 1; - c0047160: fffc8d9b addiw s11,s9,-1 - c0047164: 002d9d13 slli s10,s11,0x2 + c0047330: fffc8d9b addiw s11,s9,-1 + c0047334: 002d9d13 slli s10,s11,0x2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1005 last_cc = unicode_get_cc(buf[i]); - c0047168: cf5fe0ef jal ra,c0045e5c - c004716c: 87aa mv a5,a0 + c0047338: cf5fe0ef jal ra,c004602c + c004733c: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1007 while (starter_pos >= 0) { - c004716e: 9d22 add s10,s10,s0 - c0047170: 000ddc63 bgez s11,c0047188 + c004733e: 9d22 add s10,s10,s0 + c0047340: 000ddc63 bgez s11,c0047358 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1022 buf[out_len++] = buf[i++]; - c0047174: 000c2683 lw a3,0(s8) - c0047178: 002c9793 slli a5,s9,0x2 - c004717c: 97a2 add a5,a5,s0 - c004717e: 0009871b sext.w a4,s3 - c0047182: c394 sw a3,0(a5) - c0047184: 2c85 addiw s9,s9,1 - c0047186: a0b1 j c00471d2 + c0047344: 000c2683 lw a3,0(s8) + c0047348: 002c9793 slli a5,s9,0x2 + c004734c: 97a2 add a5,a5,s0 + c004734e: 0009871b sext.w a4,s3 + c0047352: c394 sw a3,0(a5) + c0047354: 2c85 addiw s9,s9,1 + c0047356: a0b1 j c00473a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1008 cc = unicode_get_cc(buf[starter_pos]); - c0047188: 000d2503 lw a0,0(s10) - c004718c: e43e sd a5,8(sp) - c004718e: ccffe0ef jal ra,c0045e5c - c0047192: 8eaa mv t4,a0 + c0047358: 000d2503 lw a0,0(s10) + c004735c: e43e sd a5,8(sp) + c004735e: ccffe0ef jal ra,c004602c + c0047362: 8eaa mv t4,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1009 if (cc == 0) - c0047194: c12d beqz a0,c00471f6 + c0047364: c12d beqz a0,c00473c6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1011 if (cc >= last_cc) - c0047196: 67a2 ld a5,8(sp) - c0047198: 1d71 addi s10,s10,-4 - c004719a: fcf55de3 bge a0,a5,c0047174 + c0047366: 67a2 ld a5,8(sp) + c0047368: 1d71 addi s10,s10,-4 + c004736a: fcf55de3 bge a0,a5,c0047344 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1014 starter_pos--; - c004719e: 3dfd addiw s11,s11,-1 + c004736e: 3dfd addiw s11,s11,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1013 last_cc = 256; - c00471a0: 10000793 li a5,256 - c00471a4: b7f1 j c0047170 + c0047370: 10000793 li a5,256 + c0047374: b7f1 j c0047340 compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:944 if (c0 >= 0x1100 && c0 < 0x1100 + 19 && - c00471a6: e9fa079b addiw a5,s4,-353 - c00471aa: 01c787bb addw a5,a5,t3 - c00471ae: 4751 li a4,20 - c00471b0: 04f76f63 bltu a4,a5,c004720e + c0047376: e9fa079b addiw a5,s4,-353 + c004737a: 01c787bb addw a5,a5,t3 + c004737e: 4751 li a4,20 + c0047380: 04f76f63 bltu a4,a5,c00473de /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:946 return 0xac00 + (c0 - 0x1100) * 588 + (c1 - 0x1161) * 28; - c00471b4: 47f1 li a5,28 - c00471b6: 03c787bb mulw a5,a5,t3 - c00471ba: 24c00713 li a4,588 - c00471be: 03b70dbb mulw s11,a4,s11 - c00471c2: 017787bb addw a5,a5,s7 + c0047384: 47f1 li a5,28 + c0047386: 03c787bb mulw a5,a5,t3 + c004738a: 24c00713 li a4,588 + c004738e: 03b70dbb mulw s11,a4,s11 + c0047392: 017787bb addw a5,a5,s7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:950 return c0 + c1 - 0x11a7; - c00471c6: 01b787bb addw a5,a5,s11 + c0047396: 01b787bb addw a5,a5,s11 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1018 buf[starter_pos] = p; - c00471ca: 00fd2023 sw a5,0(s10) + c004739a: 00fd2023 sw a5,0(s10) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1019 i++; - c00471ce: 0009871b sext.w a4,s3 + c004739e: 0009871b sext.w a4,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1002 while (i < buf_len) { - c00471d2: 0c11 addi s8,s8,4 - c00471d4: 2985 addiw s3,s3,1 - c00471d6: f89743e3 blt a4,s1,c004715c + c00473a2: 0c11 addi s8,s8,4 + c00473a4: 2985 addiw s3,s3,1 + c00473a6: f89743e3 blt a4,s1,c004732c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1025 *pdst = (uint32_t *)buf; - c00471da: 00893023 sd s0,0(s2) + c00473aa: 00893023 sd s0,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1026 return out_len; - c00471de: b5bd j c004704c + c00473ae: b5bd j c004721c unicode_compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:815 } else if (d > 0) { - c00471e0: c781 beqz a5,c00471e8 + c00473b0: c781 beqz a5,c00473b8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:816 idx_min = idx + 1; - c00471e2: 00188e9b addiw t4,a7,1 - c00471e6: a8e1 j c00472be + c00473b2: 00188e9b addiw t4,a7,1 + c00473b6: a8e1 j c004748e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:818 return ch; - c00471e8: 0005879b sext.w a5,a1 + c00473b8: 0005879b sext.w a5,a1 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1016 if (starter_pos >= 0 && - c00471ec: fdf9 bnez a1,c00471ca - c00471ee: b759 j c0047174 + c00473bc: fdf9 bnez a1,c004739a + c00473be: b759 j c0047344 unicode_compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:813 if (d < 0) { - c00471f0: fe07d9e3 bgez a5,c00471e2 - c00471f4: a0d9 j c00472ba + c00473c0: fe07d9e3 bgez a5,c00473b2 + c00473c4: a0d9 j c004748a unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1017 (p = compose_pair(buf[starter_pos], buf[i])) != 0) { - c00471f6: 000d2d83 lw s11,0(s10) + c00473c6: 000d2d83 lw s11,0(s10) compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:944 if (c0 >= 0x1100 && c0 < 0x1100 + 19 && - c00471fa: 77fd lui a5,0xfffff - c00471fc: f007879b addiw a5,a5,-256 - c0047200: 01b7873b addw a4,a5,s11 - c0047204: 47c9 li a5,18 + c00473ca: 77fd lui a5,0xfffff + c00473cc: f007879b addiw a5,a5,-256 + c00473d0: 01b7873b addw a4,a5,s11 + c00473d4: 47c9 li a5,18 unicode_normalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1017 (p = compose_pair(buf[starter_pos], buf[i])) != 0) { - c0047206: 000c2e03 lw t3,0(s8) + c00473d6: 000c2e03 lw t3,0(s8) compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:944 if (c0 >= 0x1100 && c0 < 0x1100 + 19 && - c004720a: f8e7fee3 bgeu a5,a4,c00471a6 + c00473da: f8e7fee3 bgeu a5,a4,c0047376 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:947 } else if (c0 >= 0xac00 && c0 < 0xac00 + 11172 && - c004720e: 015d873b addw a4,s11,s5 - c0047212: 87ba mv a5,a4 - c0047214: 00eb6e63 bltu s6,a4,c0047230 - c0047218: 4771 li a4,28 - c004721a: 02e7f7bb remuw a5,a5,a4 - c004721e: eb89 bnez a5,c0047230 + c00473de: 015d873b addw a4,s11,s5 + c00473e2: 87ba mv a5,a4 + c00473e4: 00eb6e63 bltu s6,a4,c0047400 + c00473e8: 4771 li a4,28 + c00473ea: 02e7f7bb remuw a5,a5,a4 + c00473ee: eb89 bnez a5,c0047400 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:948 (c0 - 0xac00) % 28 == 0 && - c0047220: e59a079b addiw a5,s4,-423 - c0047224: 00fe06bb addw a3,t3,a5 - c0047228: 476d li a4,27 - c004722a: 87b6 mv a5,a3 - c004722c: f8d77de3 bgeu a4,a3,c00471c6 - c0047230: 3b000313 li t1,944 + c00473f0: e59a079b addiw a5,s4,-423 + c00473f4: 00fe06bb addw a3,t3,a5 + c00473f8: 476d li a4,27 + c00473fa: 87b6 mv a5,a3 + c00473fc: f8d77de3 bgeu a4,a3,c0047396 + c0047400: 3b000313 li t1,944 unicode_compose_pair(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:799 idx1 = unicode_comp_table[idx]; - c0047234: 00021f17 auipc t5,0x21 - c0047238: fbcf0f13 addi t5,t5,-68 # c00681f0 + c0047404: 00021f17 auipc t5,0x21 + c0047408: 04cf0f13 addi t5,t5,76 # c0068450 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:804 v = unicode_decomp_table1[d_idx]; - c004723c: 00024f97 auipc t6,0x24 - c0047240: ba4f8f93 addi t6,t6,-1116 # c006ade0 + c004740c: 00024f97 auipc t6,0x24 + c0047410: c34f8f93 addi t6,t6,-972 # c006b040 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:798 idx = (idx_max + idx_min) / 2; - c0047244: 006e88bb addw a7,t4,t1 - c0047248: 4018d79b sraiw a5,a7,0x1 - c004724c: ca3e sw a5,20(sp) + c0047414: 006e88bb addw a7,t4,t1 + c0047418: 4018d79b sraiw a5,a7,0x1 + c004741c: ca3e sw a5,20(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:799 idx1 = unicode_comp_table[idx]; - c004724e: 0786 slli a5,a5,0x1 - c0047250: 97fa add a5,a5,t5 - c0047252: 0007d603 lhu a2,0(a5) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> + c004741e: 0786 slli a5,a5,0x1 + c0047420: 97fa add a5,a5,t5 + c0047422: 0007d603 lhu a2,0(a5) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:809 unicode_decomp_entry(pair, ch, d_idx, code, len, type); - c0047256: 1828 addi a0,sp,56 - c0047258: f472 sd t3,40(sp) + c0047426: 1828 addi a0,sp,56 + c0047428: f472 sd t3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:804 v = unicode_decomp_table1[d_idx]; - c004725a: 00665793 srli a5,a2,0x6 - c004725e: 078a slli a5,a5,0x2 - c0047260: 97fe add a5,a5,t6 - c0047262: 4394 lw a3,0(a5) + c004742a: 00665793 srli a5,a2,0x6 + c004742e: 078a slli a5,a5,0x2 + c0047430: 97fe add a5,a5,t6 + c0047432: 4394 lw a3,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:803 d_offset = idx1 & 0x3f; - c0047264: 03f67793 andi a5,a2,63 + c0047434: 03f67793 andi a5,a2,63 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:809 unicode_decomp_entry(pair, ch, d_idx, code, len, type); - c0047268: 8219 srli a2,a2,0x6 + c0047438: 8219 srli a2,a2,0x6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:805 code = v >> (32 - 18); - c004726a: 00e6d59b srliw a1,a3,0xe + c004743a: 00e6d59b srliw a1,a3,0xe /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:808 ch = code + d_offset; - c004726e: 9dbd addw a1,a1,a5 + c004743e: 9dbd addw a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:806 len = (v >> (32 - 18 - 7)) & 0x7f; - c0047270: 0076d71b srliw a4,a3,0x7 + c0047440: 0076d71b srliw a4,a3,0x7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:807 type = (v >> (32 - 18 - 7 - 6)) & 0x3f; - c0047274: 0016d79b srliw a5,a3,0x1 + c0047444: 0016d79b srliw a5,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:809 unicode_decomp_entry(pair, ch, d_idx, code, len, type); - c0047278: 03f7f793 andi a5,a5,63 - c004727c: 07f77713 andi a4,a4,127 - c0047280: 00e6d69b srliw a3,a3,0xe + c0047448: 03f7f793 andi a5,a5,63 + c004744c: 07f77713 andi a4,a4,127 + c0047450: 00e6d69b srliw a3,a3,0xe /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:798 idx = (idx_max + idx_min) / 2; - c0047284: f01a sd t1,32(sp) - c0047286: ec76 sd t4,24(sp) + c0047454: f01a sd t1,32(sp) + c0047456: ec76 sd t4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:809 unicode_decomp_entry(pair, ch, d_idx, code, len, type); - c0047288: e42e sd a1,8(sp) - c004728a: cdffe0ef jal ra,c0045f68 + c0047458: e42e sd a1,8(sp) + c004745a: cdffe0ef jal ra,c0046138 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:810 d = c0 - pair[0]; - c004728e: 57e2 lw a5,56(sp) + c004745e: 57e2 lw a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:811 if (d == 0) - c0047290: 48d2 lw a7,20(sp) - c0047292: 6ee2 ld t4,24(sp) + c0047460: 48d2 lw a7,20(sp) + c0047462: 6ee2 ld t4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:810 d = c0 - pair[0]; - c0047294: 40fd87bb subw a5,s11,a5 + c0047464: 40fd87bb subw a5,s11,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:811 if (d == 0) - c0047298: 7302 ld t1,32(sp) - c004729a: 7e22 ld t3,40(sp) - c004729c: 00024f97 auipc t6,0x24 - c00472a0: b44f8f93 addi t6,t6,-1212 # c006ade0 - c00472a4: 00021f17 auipc t5,0x21 - c00472a8: f4cf0f13 addi t5,t5,-180 # c00681f0 - c00472ac: f3b1 bnez a5,c00471f0 + c0047468: 7302 ld t1,32(sp) + c004746a: 7e22 ld t3,40(sp) + c004746c: 00024f97 auipc t6,0x24 + c0047470: bd4f8f93 addi t6,t6,-1068 # c006b040 + c0047474: 00021f17 auipc t5,0x21 + c0047478: fdcf0f13 addi t5,t5,-36 # c0068450 + c004747c: f3b1 bnez a5,c00473c0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:812 d = c1 - pair[1]; - c00472ae: 57f2 lw a5,60(sp) + c004747e: 57f2 lw a5,60(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:813 if (d < 0) { - c00472b0: 65a2 ld a1,8(sp) + c0047480: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:812 d = c1 - pair[1]; - c00472b2: 40fe07bb subw a5,t3,a5 + c0047482: 40fe07bb subw a5,t3,a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:813 if (d < 0) { - c00472b6: f207d5e3 bgez a5,c00471e0 + c0047486: f207d5e3 bgez a5,c00473b0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:814 idx_max = idx - 1; - c00472ba: fff8831b addiw t1,a7,-1 + c004748a: fff8831b addiw t1,a7,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:797 while (idx_min <= idx_max) { - c00472be: f9d353e3 bge t1,t4,c0047244 - c00472c2: bd4d j c0047174 + c004748e: f9d353e3 bge t1,t4,c0047414 + c0047492: bd4d j c0047344 -00000000c00472c4 : +00000000c0047494 : unicode_script(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1062 { - c00472c4: 7171 addi sp,sp,-176 - c00472c6: e94a sd s2,144(sp) - c00472c8: 892a mv s2,a0 + c0047494: 7171 addi sp,sp,-176 + c0047496: e94a sd s2,144(sp) + c0047498: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1070 script_idx = unicode_find_name(unicode_script_name_table, script_name); - c00472ca: 00028517 auipc a0,0x28 - c00472ce: 1be50513 addi a0,a0,446 # c006f488 + c004749a: 00028517 auipc a0,0x28 + c004749e: 24e50513 addi a0,a0,590 # c006f6e8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1062 { - c00472d2: e152 sd s4,128(sp) - c00472d4: f506 sd ra,168(sp) - c00472d6: f122 sd s0,160(sp) - c00472d8: ed26 sd s1,152(sp) - c00472da: e54e sd s3,136(sp) - c00472dc: fcd6 sd s5,120(sp) - c00472de: f8da sd s6,112(sp) - c00472e0: f4de sd s7,104(sp) - c00472e2: f0e2 sd s8,96(sp) - c00472e4: ece6 sd s9,88(sp) - c00472e6: e8ea sd s10,80(sp) - c00472e8: e4ee sd s11,72(sp) - c00472ea: 8a32 mv s4,a2 + c00474a2: e152 sd s4,128(sp) + c00474a4: f506 sd ra,168(sp) + c00474a6: f122 sd s0,160(sp) + c00474a8: ed26 sd s1,152(sp) + c00474aa: e54e sd s3,136(sp) + c00474ac: fcd6 sd s5,120(sp) + c00474ae: f8da sd s6,112(sp) + c00474b0: f4de sd s7,104(sp) + c00474b2: f0e2 sd s8,96(sp) + c00474b4: ece6 sd s9,88(sp) + c00474b6: e8ea sd s10,80(sp) + c00474b8: e4ee sd s11,72(sp) + c00474ba: 8a32 mv s4,a2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1070 script_idx = unicode_find_name(unicode_script_name_table, script_name); - c00472ec: 977fe0ef jal ra,c0045c62 + c00474bc: 977fe0ef jal ra,c0045e32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1071 if (script_idx < 0) - c00472f0: 1e054463 bltz a0,c00474d8 + c00474c0: 1e054463 bltz a0,c00476a8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1074 script_idx += UNICODE_SCRIPT_Unknown + 1; - c00472f4: 0015099b addiw s3,a0,1 + c00474c4: 0015099b addiw s3,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1076 is_common = (script_idx == UNICODE_SCRIPT_Common || - c00472f8: 47e5 li a5,25 - c00472fa: 4a85 li s5,1 - c00472fc: 00f98663 beq s3,a5,c0047308 + c00474c8: 47e5 li a5,25 + c00474ca: 4a85 li s5,1 + c00474cc: 00f98663 beq s3,a5,c00474d8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1076 (discriminator 2) - c0047300: fc898a93 addi s5,s3,-56 - c0047304: 001aba93 seqz s5,s5 + c00474d0: fc898a93 addi s5,s3,-56 + c00474d4: 001aba93 seqz s5,s5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1078 (discriminator 6) if (is_ext) { - c0047308: 84ca mv s1,s2 - c004730a: 020a0163 beqz s4,c004732c + c00474d8: 84ca mv s1,s2 + c00474da: 020a0163 beqz s4,c00474fc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1080 cr_init(cr1, cr->mem_opaque, cr->realloc_func); - c004730e: 01893603 ld a2,24(s2) - c0047312: 01093583 ld a1,16(s2) - c0047316: 850a mv a0,sp + c00474de: 01893603 ld a2,24(s2) + c00474e2: 01093583 ld a1,16(s2) + c00474e6: 850a mv a0,sp /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1079 cr1 = &cr1_s; - c0047318: 848a mv s1,sp + c00474e8: 848a mv s1,sp /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1080 cr_init(cr1, cr->mem_opaque, cr->realloc_func); - c004731a: cccff0ef jal ra,c00467e6 + c00474ea: cccff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1081 cr_init(cr2, cr->mem_opaque, cr->realloc_func); - c004731e: 01893603 ld a2,24(s2) - c0047322: 01093583 ld a1,16(s2) - c0047326: 1008 addi a0,sp,32 - c0047328: cbeff0ef jal ra,c00467e6 + c00474ee: 01893603 ld a2,24(s2) + c00474f2: 01093583 ld a1,16(s2) + c00474f6: 1008 addi a0,sp,32 + c00474f8: cbeff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1102 n += 96 + (1 << 12); - c004732c: 6b85 lui s7,0x1 + c00474fc: 6b85 lui s7,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1088 c = 0; - c004732e: 4581 li a1,0 + c00474fe: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1086 p = unicode_script_table; - c0047330: 00029b17 auipc s6,0x29 - c0047334: aa0b0b13 addi s6,s6,-1376 # c006fdd0 + c0047500: 00029b17 auipc s6,0x29 + c0047504: b30b0b13 addi s6,s6,-1232 # c0070030 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1093 if (n < 96) { - c0047338: 05f00c13 li s8,95 + c0047508: 05f00c13 li s8,95 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1094 } else if (n < 112) { - c004733c: 06f00d13 li s10,111 + c004750c: 06f00d13 li s10,111 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1102 n += 96 + (1 << 12); - c0047340: 060b8b9b addiw s7,s7,96 + c0047510: 060b8b9b addiw s7,s7,96 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1109 if (v == script_idx) { - c0047344: 00098c9b sext.w s9,s3 + c0047514: 00098c9b sext.w s9,s3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1089 while (p < p_end) { - c0047348: 00029d97 auipc s11,0x29 - c004734c: 528d8d93 addi s11,s11,1320 # c0070870 + c0047518: 00029d97 auipc s11,0x29 + c004751c: 5b8d8d93 addi s11,s11,1464 # c0070ad0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1090 b = *p++; - c0047350: 000b4783 lbu a5,0(s6) + c0047520: 000b4783 lbu a5,0(s6) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1091 type = b >> 7; - c0047354: 07f7f713 andi a4,a5,127 - c0047358: 0077d693 srli a3,a5,0x7 + c0047524: 07f7f713 andi a4,a5,127 + c0047528: 0077d693 srli a3,a5,0x7 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1092 n = b & 0x7f; - c004735c: 87ba mv a5,a4 + c004752c: 87ba mv a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1093 if (n < 96) { - c004735e: 08ec6f63 bltu s8,a4,c00473fc + c004752e: 08ec6f63 bltu s8,a4,c00475cc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1090 b = *p++; - c0047362: 0b05 addi s6,s6,1 + c0047532: 0b05 addi s6,s6,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1104 if (type == 0) - c0047364: c681 beqz a3,c004736c + c0047534: c681 beqz a3,c004753c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1107 v = *p++; - c0047366: 000b4683 lbu a3,0(s6) - c004736a: 0b05 addi s6,s6,1 + c0047536: 000b4683 lbu a3,0(s6) + c004753a: 0b05 addi s6,s6,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1108 c1 = c + n + 1; - c004736c: 2785 addiw a5,a5,1 - c004736e: 00b7843b addw s0,a5,a1 + c004753c: 2785 addiw a5,a5,1 + c004753e: 00b7843b addw s0,a5,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1109 if (v == script_idx) { - c0047372: 0cdc8763 beq s9,a3,c0047440 + c0047542: 0cdc8763 beq s9,a3,c0047610 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1089 while (p < p_end) { - c0047376: 09bb6163 bltu s6,s11,c00473f8 + c0047546: 09bb6163 bltu s6,s11,c00475c8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1116 if (is_ext) { - c004737a: 120a0663 beqz s4,c00474a6 + c004754a: 120a0663 beqz s4,c0047676 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1133 n += 128 + (1 << 14); - c004737e: 6b11 lui s6,0x4 + c004754e: 6b11 lui s6,0x4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1120 c = 0; - c0047380: 4581 li a1,0 + c0047550: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1118 p = unicode_script_ext_table; - c0047382: 00028797 auipc a5,0x28 - c0047386: dc678793 addi a5,a5,-570 # c006f148 + c0047552: 00028797 auipc a5,0x28 + c0047556: e5678793 addi a5,a5,-426 # c006f3a8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1123 if (b < 128) { - c004738a: 07f00b93 li s7,127 + c004755a: 07f00b93 li s7,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1125 } else if (b < 128 + 64) { - c004738e: 0bf00c13 li s8,191 + c004755e: 0bf00c13 li s8,191 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1133 n += 128 + (1 << 14); - c0047392: 080b0b1b addiw s6,s6,128 + c0047562: 080b0b1b addiw s6,s6,128 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1121 while (p < p_end) { - c0047396: 00028c97 auipc s9,0x28 - c004739a: 0eec8c93 addi s9,s9,238 # c006f484 + c0047566: 00028c97 auipc s9,0x28 + c004756a: 17ec8c93 addi s9,s9,382 # c006f6e4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1122 b = *p++; - c004739e: 0007c603 lbu a2,0(a5) - c00473a2: 00178d93 addi s11,a5,1 + c004756e: 0007c603 lbu a2,0(a5) + c0047572: 00178d93 addi s11,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1123 if (b < 128) { - c00473a6: 02cbf263 bgeu s7,a2,c00473ca + c0047576: 02cbf263 bgeu s7,a2,c004759a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1127 n |= *p++; - c00473aa: 0017c683 lbu a3,1(a5) + c004757a: 0017c683 lbu a3,1(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1132 n |= *p++; - c00473ae: 0027c503 lbu a0,2(a5) + c004757e: 0027c503 lbu a0,2(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1125 } else if (b < 128 + 64) { - c00473b2: 0acc6163 bltu s8,a2,c0047454 + c0047582: 0acc6163 bltu s8,a2,c0047624 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1126 n = (b - 128) << 8; - c00473b6: f806071b addiw a4,a2,-128 - c00473ba: 0087171b slliw a4,a4,0x8 + c0047586: f806071b addiw a4,a2,-128 + c004758a: 0087171b slliw a4,a4,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1127 n |= *p++; - c00473be: 00e6e633 or a2,a3,a4 - c00473c2: 00278d93 addi s11,a5,2 + c004758e: 00e6e633 or a2,a3,a4 + c0047592: 00278d93 addi s11,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1128 n += 128; - c00473c6: 0806061b addiw a2,a2,128 + c0047596: 0806061b addiw a2,a2,128 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1135 c1 = c + n + 1; - c00473ca: 2605 addiw a2,a2,1 + c004759a: 2605 addiw a2,a2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1136 v_len = *p++; - c00473cc: 000dc403 lbu s0,0(s11) + c004759c: 000dc403 lbu s0,0(s11) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1135 c1 = c + n + 1; - c00473d0: 00b60d3b addw s10,a2,a1 + c00475a0: 00b60d3b addw s10,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1137 if (is_common) { - c00473d4: 080a9d63 bnez s5,c004746e - c00473d8: 87ee mv a5,s11 - c00473da: 01b40733 add a4,s0,s11 + c00475a4: 080a9d63 bnez s5,c004763e + c00475a8: 87ee mv a5,s11 + c00475aa: 01b40733 add a4,s0,s11 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1143 (discriminator 1) for(i = 0; i < v_len; i++) { - c00473de: 08e78963 beq a5,a4,c0047470 + c00475ae: 08e78963 beq a5,a4,c0047640 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1144 if (p[i] == script_idx) { - c00473e2: 0017c683 lbu a3,1(a5) - c00473e6: 0785 addi a5,a5,1 - c00473e8: ff369be3 bne a3,s3,c00473de + c00475b2: 0017c683 lbu a3,1(a5) + c00475b6: 0785 addi a5,a5,1 + c00475b8: ff369be3 bne a3,s3,c00475ae /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1145 if (cr_add_interval(cr2, c, c1)) - c00473ec: 866a mv a2,s10 - c00473ee: 1008 addi a0,sp,32 - c00473f0: c64ff0ef jal ra,c0046854 - c00473f4: cd35 beqz a0,c0047470 - c00473f6: a891 j c004744a - c00473f8: 85a2 mv a1,s0 - c00473fa: bf99 j c0047350 + c00475bc: 866a mv a2,s10 + c00475be: 1008 addi a0,sp,32 + c00475c0: c64ff0ef jal ra,c0046a24 + c00475c4: cd35 beqz a0,c0047640 + c00475c6: a891 j c004761a + c00475c8: 85a2 mv a1,s0 + c00475ca: bf99 j c0047520 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1096 n |= *p++; - c00473fc: 001b4603 lbu a2,1(s6) # 4001 <__clzdi2-0xbfffbfff> + c00475cc: 001b4603 lbu a2,1(s6) # 4001 <__clzdi2-0xbfffbfff> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1094 } else if (n < 112) { - c0047400: 00ed6b63 bltu s10,a4,c0047416 + c00475d0: 00ed6b63 bltu s10,a4,c00475e6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1095 n = (n - 96) << 8; - c0047404: fa07079b addiw a5,a4,-96 - c0047408: 0087979b slliw a5,a5,0x8 + c00475d4: fa07079b addiw a5,a4,-96 + c00475d8: 0087979b slliw a5,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1096 n |= *p++; - c004740c: 8fd1 or a5,a5,a2 - c004740e: 0b09 addi s6,s6,2 + c00475dc: 8fd1 or a5,a5,a2 + c00475de: 0b09 addi s6,s6,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1097 n += 96; - c0047410: 0607879b addiw a5,a5,96 - c0047414: bf81 j c0047364 + c00475e0: 0607879b addiw a5,a5,96 + c00475e4: bf81 j c0047534 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1099 n = (n - 112) << 16; - c0047416: f907079b addiw a5,a4,-112 - c004741a: 002b4703 lbu a4,2(s6) - c004741e: 0107979b slliw a5,a5,0x10 + c00475e6: f907079b addiw a5,a4,-112 + c00475ea: 002b4703 lbu a4,2(s6) + c00475ee: 0107979b slliw a5,a5,0x10 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1101 n |= *p++; - c0047422: 0b0d addi s6,s6,3 - c0047424: 0722 slli a4,a4,0x8 - c0047426: 8f51 or a4,a4,a2 - c0047428: 0087161b slliw a2,a4,0x8 - c004742c: 8321 srli a4,a4,0x8 - c004742e: 8f51 or a4,a4,a2 - c0047430: 0107171b slliw a4,a4,0x10 - c0047434: 0107571b srliw a4,a4,0x10 - c0047438: 8fd9 or a5,a5,a4 + c00475f2: 0b0d addi s6,s6,3 + c00475f4: 0722 slli a4,a4,0x8 + c00475f6: 8f51 or a4,a4,a2 + c00475f8: 0087161b slliw a2,a4,0x8 + c00475fc: 8321 srli a4,a4,0x8 + c00475fe: 8f51 or a4,a4,a2 + c0047600: 0107171b slliw a4,a4,0x10 + c0047604: 0107571b srliw a4,a4,0x10 + c0047608: 8fd9 or a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1102 n += 96 + (1 << 12); - c004743a: 00fb87bb addw a5,s7,a5 - c004743e: b71d j c0047364 + c004760a: 00fb87bb addw a5,s7,a5 + c004760e: b71d j c0047534 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1110 if (cr_add_interval(cr1, c, c1)) - c0047440: 8622 mv a2,s0 - c0047442: 8526 mv a0,s1 - c0047444: c10ff0ef jal ra,c0046854 - c0047448: d51d beqz a0,c0047376 + c0047610: 8622 mv a2,s0 + c0047612: 8526 mv a0,s1 + c0047614: c10ff0ef jal ra,c0046a24 + c0047618: d51d beqz a0,c0047546 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1171 if (is_ext) { - c004744a: 080a1063 bnez s4,c00474ca - c004744e: a001 j c004744e + c004761a: 080a1063 bnez s4,c004769a + c004761e: a001 j c004761e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1152 c = c1; - c0047450: 85ea mv a1,s10 - c0047452: b7b1 j c004739e + c0047620: 85ea mv a1,s10 + c0047622: b7b1 j c004756e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1130 n = (b - 128 - 64) << 16; - c0047454: f406071b addiw a4,a2,-192 - c0047458: 0107171b slliw a4,a4,0x10 + c0047624: f406071b addiw a4,a2,-192 + c0047628: 0107171b slliw a4,a4,0x10 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1131 n |= *p++ << 8; - c004745c: 0086961b slliw a2,a3,0x8 - c0047460: 8e59 or a2,a2,a4 + c004762c: 0086961b slliw a2,a3,0x8 + c0047630: 8e59 or a2,a2,a4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1132 n |= *p++; - c0047462: 8e49 or a2,a2,a0 - c0047464: 00378d93 addi s11,a5,3 + c0047632: 8e49 or a2,a2,a0 + c0047634: 00378d93 addi s11,a5,3 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1133 n += 128 + (1 << 14); - c0047468: 00cb063b addw a2,s6,a2 - c004746c: bfb9 j c00473ca + c0047638: 00cb063b addw a2,s6,a2 + c004763c: bfb9 j c004759a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1138 if (v_len != 0) { - c004746e: fc3d bnez s0,c00473ec + c004763e: fc3d bnez s0,c00475bc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1151 p += v_len; - c0047470: 0405 addi s0,s0,1 - c0047472: 008d87b3 add a5,s11,s0 + c0047640: 0405 addi s0,s0,1 + c0047642: 008d87b3 add a5,s11,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1121 while (p < p_end) { - c0047476: fd97ede3 bltu a5,s9,c0047450 + c0047646: fd97ede3 bltu a5,s9,c0047620 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1154 if (is_common) { - c004747a: 040a8663 beqz s5,c00474c6 + c004764a: 040a8663 beqz s5,c0047696 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1156 if (cr_invert(cr2)) - c004747e: 1008 addi a0,sp,32 - c0047480: 8cbff0ef jal ra,c0046d4a - c0047484: f179 bnez a0,c004744a + c004764e: 1008 addi a0,sp,32 + c0047650: 8cbff0ef jal ra,c0046f1a + c0047654: f179 bnez a0,c004761a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1158 if (cr_op(cr, cr1->points, cr1->len, cr2->points, cr2->len, - c0047486: 4785 li a5,1 - c0047488: 5702 lw a4,32(sp) - c004748a: 76a2 ld a3,40(sp) - c004748c: 4090 lw a2,0(s1) - c004748e: 648c ld a1,8(s1) - c0047490: 854a mv a0,s2 - c0047492: f9aff0ef jal ra,c0046c2c - c0047496: f955 bnez a0,c004744a + c0047656: 4785 li a5,1 + c0047658: 5702 lw a4,32(sp) + c004765a: 76a2 ld a3,40(sp) + c004765c: 4090 lw a2,0(s1) + c004765e: 648c ld a1,8(s1) + c0047660: 854a mv a0,s2 + c0047662: f9aff0ef jal ra,c0046dfc + c0047666: f955 bnez a0,c004761a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1166 cr_free(cr1); - c0047498: 8526 mv a0,s1 - c004749a: b64ff0ef jal ra,c00467fe + c0047668: 8526 mv a0,s1 + c004766a: b64ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1167 cr_free(cr2); - c004749e: 1008 addi a0,sp,32 - c00474a0: b5eff0ef jal ra,c00467fe + c004766e: 1008 addi a0,sp,32 + c0047670: b5eff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1169 return 0; - c00474a4: 4a01 li s4,0 + c0047674: 4a01 li s4,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1176 } - c00474a6: 70aa ld ra,168(sp) - c00474a8: 740a ld s0,160(sp) - c00474aa: 64ea ld s1,152(sp) - c00474ac: 694a ld s2,144(sp) - c00474ae: 69aa ld s3,136(sp) - c00474b0: 7ae6 ld s5,120(sp) - c00474b2: 7b46 ld s6,112(sp) - c00474b4: 7ba6 ld s7,104(sp) - c00474b6: 7c06 ld s8,96(sp) - c00474b8: 6ce6 ld s9,88(sp) - c00474ba: 6d46 ld s10,80(sp) - c00474bc: 6da6 ld s11,72(sp) - c00474be: 8552 mv a0,s4 - c00474c0: 6a0a ld s4,128(sp) - c00474c2: 614d addi sp,sp,176 - c00474c4: 8082 ret + c0047676: 70aa ld ra,168(sp) + c0047678: 740a ld s0,160(sp) + c004767a: 64ea ld s1,152(sp) + c004767c: 694a ld s2,144(sp) + c004767e: 69aa ld s3,136(sp) + c0047680: 7ae6 ld s5,120(sp) + c0047682: 7b46 ld s6,112(sp) + c0047684: 7ba6 ld s7,104(sp) + c0047686: 7c06 ld s8,96(sp) + c0047688: 6ce6 ld s9,88(sp) + c004768a: 6d46 ld s10,80(sp) + c004768c: 6da6 ld s11,72(sp) + c004768e: 8552 mv a0,s4 + c0047690: 6a0a ld s4,128(sp) + c0047692: 614d addi sp,sp,176 + c0047694: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1162 if (cr_op(cr, cr1->points, cr1->len, cr2->points, cr2->len, - c00474c6: 4781 li a5,0 - c00474c8: b7c1 j c0047488 + c0047696: 4781 li a5,0 + c0047698: b7c1 j c0047658 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1172 cr_free(cr1); - c00474ca: 8526 mv a0,s1 - c00474cc: b32ff0ef jal ra,c00467fe + c004769a: 8526 mv a0,s1 + c004769c: b32ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1173 cr_free(cr2); - c00474d0: 1008 addi a0,sp,32 - c00474d2: b2cff0ef jal ra,c00467fe - c00474d6: bf95 j c004744a + c00476a0: 1008 addi a0,sp,32 + c00476a2: b2cff0ef jal ra,c00469ce + c00476a6: bf95 j c004761a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1072 return -2; - c00474d8: 5a79 li s4,-2 - c00474da: b7f1 j c00474a6 + c00476a8: 5a79 li s4,-2 + c00476aa: b7f1 j c0047676 -00000000c00474dc : +00000000c00476ac : cr_regexp_canonicalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1389 { - c00474dc: 7151 addi sp,sp,-240 - c00474de: f586 sd ra,232(sp) - c00474e0: f1a2 sd s0,224(sp) - c00474e2: e1d2 sd s4,192(sp) - c00474e4: eda6 sd s1,216(sp) - c00474e6: e9ca sd s2,208(sp) - c00474e8: e5ce sd s3,200(sp) - c00474ea: fd56 sd s5,184(sp) - c00474ec: f95a sd s6,176(sp) - c00474ee: f55e sd s7,168(sp) - c00474f0: f162 sd s8,160(sp) - c00474f2: ed66 sd s9,152(sp) - c00474f4: e96a sd s10,144(sp) - c00474f6: e56e sd s11,136(sp) + c00476ac: 7151 addi sp,sp,-240 + c00476ae: f586 sd ra,232(sp) + c00476b0: f1a2 sd s0,224(sp) + c00476b2: e1d2 sd s4,192(sp) + c00476b4: eda6 sd s1,216(sp) + c00476b6: e9ca sd s2,208(sp) + c00476b8: e5ce sd s3,200(sp) + c00476ba: fd56 sd s5,184(sp) + c00476bc: f95a sd s6,176(sp) + c00476be: f55e sd s7,168(sp) + c00476c0: f162 sd s8,160(sp) + c00476c2: ed66 sd s9,152(sp) + c00476c4: e96a sd s10,144(sp) + c00476c6: e56e sd s11,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1393 cr_init(&cr_mask, cr->mem_opaque, cr->realloc_func); - c00474f8: 6d10 ld a2,24(a0) + c00476c8: 6d10 ld a2,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1389 { - c00474fa: 8a2e mv s4,a1 + c00476ca: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1393 cr_init(&cr_mask, cr->mem_opaque, cr->realloc_func); - c00474fc: 690c ld a1,16(a0) + c00476cc: 690c ld a1,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1389 { - c00474fe: 842a mv s0,a0 + c00476ce: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1393 cr_init(&cr_mask, cr->mem_opaque, cr->realloc_func); - c0047500: 1008 addi a0,sp,32 - c0047502: ae4ff0ef jal ra,c00467e6 + c00476d0: 1008 addi a0,sp,32 + c00476d2: ae4ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1394 cr_init(&cr_inter, cr->mem_opaque, cr->realloc_func); - c0047506: 6c10 ld a2,24(s0) - c0047508: 680c ld a1,16(s0) - c004750a: 850a mv a0,sp - c004750c: adaff0ef jal ra,c00467e6 + c00476d6: 6c10 ld a2,24(s0) + c00476d8: 680c ld a1,16(s0) + c00476da: 850a mv a0,sp + c00476dc: adaff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1395 cr_init(&cr_result, cr->mem_opaque, cr->realloc_func); - c0047510: 6c10 ld a2,24(s0) - c0047512: 680c ld a1,16(s0) - c0047514: 0088 addi a0,sp,64 - c0047516: ad0ff0ef jal ra,c00467e6 + c00476e0: 6c10 ld a2,24(s0) + c00476e2: 680c ld a1,16(s0) + c00476e4: 0088 addi a0,sp,64 + c00476e6: ad0ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1396 cr_init(&cr_sub, cr->mem_opaque, cr->realloc_func); - c004751a: 680c ld a1,16(s0) - c004751c: 6c10 ld a2,24(s0) - c004751e: 1088 addi a0,sp,96 - c0047520: ac6ff0ef jal ra,c00467e6 + c00476ea: 680c ld a1,16(s0) + c00476ec: 6c10 ld a2,24(s0) + c00476ee: 1088 addi a0,sp,96 + c00476f0: ac6ff0ef jal ra,c00469b6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1398 if (unicode_case1(&cr_mask, is_unicode ? CASE_F : CASE_U)) - c0047524: 4585 li a1,1 - c0047526: 000a0363 beqz s4,c004752c - c004752a: 4591 li a1,4 + c00476f4: 4585 li a1,1 + c00476f6: 000a0363 beqz s4,c00476fc + c00476fa: 4591 li a1,4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1398 (discriminator 4) - c004752c: 1008 addi a0,sp,32 - c004752e: b7cff0ef jal ra,c00468aa - c0047532: 18051863 bnez a0,c00476c2 + c00476fc: 1008 addi a0,sp,32 + c00476fe: b7cff0ef jal ra,c0046a7a + c0047702: 18051863 bnez a0,c0047892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1400 if (cr_op(&cr_inter, cr_mask.points, cr_mask.len, cr->points, cr->len, CR_OP_INTER)) - c0047536: 4018 lw a4,0(s0) - c0047538: 6414 ld a3,8(s0) - c004753a: 5602 lw a2,32(sp) - c004753c: 75a2 ld a1,40(sp) - c004753e: 4785 li a5,1 - c0047540: 850a mv a0,sp - c0047542: eeaff0ef jal ra,c0046c2c - c0047546: 16051e63 bnez a0,c00476c2 + c0047706: 4018 lw a4,0(s0) + c0047708: 6414 ld a3,8(s0) + c004770a: 5602 lw a2,32(sp) + c004770c: 75a2 ld a1,40(sp) + c004770e: 4785 li a5,1 + c0047710: 850a mv a0,sp + c0047712: eeaff0ef jal ra,c0046dfc + c0047716: 16051e63 bnez a0,c0047892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1403 if (cr_invert(&cr_mask)) - c004754a: 1008 addi a0,sp,32 - c004754c: ffeff0ef jal ra,c0046d4a - c0047550: 16051963 bnez a0,c00476c2 + c004771a: 1008 addi a0,sp,32 + c004771c: ffeff0ef jal ra,c0046f1a + c0047720: 16051963 bnez a0,c0047892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1405 if (cr_op(&cr_sub, cr_mask.points, cr_mask.len, cr->points, cr->len, CR_OP_INTER)) - c0047554: 4018 lw a4,0(s0) - c0047556: 6414 ld a3,8(s0) - c0047558: 5602 lw a2,32(sp) - c004755a: 75a2 ld a1,40(sp) - c004755c: 4785 li a5,1 - c004755e: 1088 addi a0,sp,96 - c0047560: eccff0ef jal ra,c0046c2c - c0047564: 14051f63 bnez a0,c00476c2 + c0047724: 4018 lw a4,0(s0) + c0047726: 6414 ld a3,8(s0) + c0047728: 5602 lw a2,32(sp) + c004772a: 75a2 ld a1,40(sp) + c004772c: 4785 li a5,1 + c004772e: 1088 addi a0,sp,96 + c0047730: eccff0ef jal ra,c0046dfc + c0047734: 14051f63 bnez a0,c0047892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1415 v = case_conv_table1[idx]; - c0047568: 0020ad37 lui s10,0x20a + c0047738: 0020ad37 lui s10,0x20a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1413 d_end = -1; - c004756c: 54fd li s1,-1 + c004773c: 54fd li s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1412 d_start = -1; - c004756e: 5cfd li s9,-1 + c004773e: 5cfd li s9,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1414 idx = 0; - c0047570: 4b81 li s7,0 + c0047740: 4b81 li s7,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1418 for(i = 0; i < cr_inter.len; i += 2) { - c0047572: 4a81 li s5,0 + c0047742: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1417 len = (v >> (32 - 17 - 7)) & 0x7f; - c0047574: 49e9 li s3,26 + c0047744: 49e9 li s3,26 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1416 code = v >> (32 - 17); - c0047576: 04100b13 li s6,65 + c0047746: 04100b13 li s6,65 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1415 v = case_conv_table1[idx]; - c004757a: a30d0d13 addi s10,s10,-1488 # 209a30 <__clzdi2-0xbfdf65d0> + c004774a: a30d0d13 addi s10,s10,-1488 # 209a30 <__clzdi2-0xbfdf65d0> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1418 (discriminator 1) for(i = 0; i < cr_inter.len; i += 2) { - c004757e: 4782 lw a5,0(sp) - c0047580: 08fae163 bltu s5,a5,c0047602 + c004774e: 4782 lw a5,0(sp) + c0047750: 08fae163 bltu s5,a5,c00477d2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1446 if (d_start != -1) { - c0047584: 57fd li a5,-1 - c0047586: 12fc9763 bne s9,a5,c00476b4 + c0047754: 57fd li a5,-1 + c0047756: 12fc9763 bne s9,a5,c0047884 cr_sort_and_remove_overlap(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1355 rqsort(cr->points, cr->len / 2, sizeof(cr->points[0]) * 2, point_cmp, NULL); - c004758a: 4586 lw a1,64(sp) - c004758c: 4789 li a5,2 - c004758e: 6526 ld a0,72(sp) - c0047590: 02f5c5bb divw a1,a1,a5 - c0047594: 4621 li a2,8 - c0047596: 4701 li a4,0 - c0047598: ffffe697 auipc a3,0xffffe - c004759c: 6b268693 addi a3,a3,1714 # c0045c4a - c00475a0: 211000ef jal ra,c0047fb0 + c004775a: 4586 lw a1,64(sp) + c004775c: 4789 li a5,2 + c004775e: 6526 ld a0,72(sp) + c0047760: 02f5c5bb divw a1,a1,a5 + c0047764: 4621 li a2,8 + c0047766: 4701 li a4,0 + c0047768: ffffe697 auipc a3,0xffffe + c004776c: 6b268693 addi a3,a3,1714 # c0045e1a + c0047770: 211000ef jal ra,c0048180 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1356 j = 0; - c00475a4: 4601 li a2,0 + c0047774: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1357 for(i = 0; i < cr->len; ) { - c00475a6: 4781 li a5,0 - c00475a8: 4506 lw a0,64(sp) + c0047776: 4781 li a5,0 + c0047778: 4506 lw a0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1358 start = cr->points[i]; - c00475aa: 65a6 ld a1,72(sp) + c004777a: 65a6 ld a1,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1357 for(i = 0; i < cr->len; ) { - c00475ac: 12a7e963 bltu a5,a0,c00476de + c004777c: 12a7e963 bltu a5,a0,c00478ae cr_regexp_canonicalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1456 if (cr_op(cr, cr_result.points, cr_result.len, cr_sub.points, cr_sub.len, CR_OP_UNION)) - c00475b0: 5706 lw a4,96(sp) - c00475b2: 76a6 ld a3,104(sp) + c0047780: 5706 lw a4,96(sp) + c0047782: 76a6 ld a3,104(sp) cr_sort_and_remove_overlap(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1383 cr->len = j; - c00475b4: 2601 sext.w a2,a2 + c0047784: 2601 sext.w a2,a2 cr_regexp_canonicalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1455 cr->len = 0; - c00475b6: 00042023 sw zero,0(s0) + c0047786: 00042023 sw zero,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1456 if (cr_op(cr, cr_result.points, cr_result.len, cr_sub.points, cr_sub.len, CR_OP_UNION)) - c00475ba: 8522 mv a0,s0 - c00475bc: 4781 li a5,0 + c004778a: 8522 mv a0,s0 + c004778c: 4781 li a5,0 cr_sort_and_remove_overlap(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1383 cr->len = j; - c00475be: c0b2 sw a2,64(sp) + c004778e: c0b2 sw a2,64(sp) cr_regexp_canonicalize(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1456 if (cr_op(cr, cr_result.points, cr_result.len, cr_sub.points, cr_sub.len, CR_OP_UNION)) - c00475c0: e6cff0ef jal ra,c0046c2c - c00475c4: 842a mv s0,a0 - c00475c6: 0e051e63 bnez a0,c00476c2 + c0047790: e6cff0ef jal ra,c0046dfc + c0047794: 842a mv s0,a0 + c0047796: 0e051e63 bnez a0,c0047892 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1459 cr_free(&cr_inter); - c00475ca: 850a mv a0,sp - c00475cc: a32ff0ef jal ra,c00467fe + c004779a: 850a mv a0,sp + c004779c: a32ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1460 cr_free(&cr_mask); - c00475d0: 1008 addi a0,sp,32 - c00475d2: a2cff0ef jal ra,c00467fe + c00477a0: 1008 addi a0,sp,32 + c00477a2: a2cff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1461 cr_free(&cr_result); - c00475d6: 0088 addi a0,sp,64 - c00475d8: a26ff0ef jal ra,c00467fe + c00477a6: 0088 addi a0,sp,64 + c00477a8: a26ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1462 cr_free(&cr_sub); - c00475dc: 1088 addi a0,sp,96 - c00475de: a20ff0ef jal ra,c00467fe + c00477ac: 1088 addi a0,sp,96 + c00477ae: a20ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1470 } - c00475e2: 70ae ld ra,232(sp) - c00475e4: 8522 mv a0,s0 - c00475e6: 740e ld s0,224(sp) - c00475e8: 64ee ld s1,216(sp) - c00475ea: 694e ld s2,208(sp) - c00475ec: 69ae ld s3,200(sp) - c00475ee: 6a0e ld s4,192(sp) - c00475f0: 7aea ld s5,184(sp) - c00475f2: 7b4a ld s6,176(sp) - c00475f4: 7baa ld s7,168(sp) - c00475f6: 7c0a ld s8,160(sp) - c00475f8: 6cea ld s9,152(sp) - c00475fa: 6d4a ld s10,144(sp) - c00475fc: 6daa ld s11,136(sp) - c00475fe: 616d addi sp,sp,240 - c0047600: 8082 ret + c00477b2: 70ae ld ra,232(sp) + c00477b4: 8522 mv a0,s0 + c00477b6: 740e ld s0,224(sp) + c00477b8: 64ee ld s1,216(sp) + c00477ba: 694e ld s2,208(sp) + c00477bc: 69ae ld s3,200(sp) + c00477be: 6a0e ld s4,192(sp) + c00477c0: 7aea ld s5,184(sp) + c00477c2: 7b4a ld s6,176(sp) + c00477c4: 7baa ld s7,168(sp) + c00477c6: 7c0a ld s8,160(sp) + c00477c8: 6cea ld s9,152(sp) + c00477ca: 6d4a ld s10,144(sp) + c00477cc: 6daa ld s11,136(sp) + c00477ce: 616d addi sp,sp,240 + c00477d0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1419 start = cr_inter.points[i]; - c0047602: 67a2 ld a5,8(sp) - c0047604: 020a9713 slli a4,s5,0x20 - c0047608: 01e75693 srli a3,a4,0x1e - c004760c: 96be add a3,a3,a5 - c004760e: 0006ad83 lw s11,0(a3) + c00477d2: 67a2 ld a5,8(sp) + c00477d4: 020a9713 slli a4,s5,0x20 + c00477d8: 01e75693 srli a3,a4,0x1e + c00477dc: 96be add a3,a3,a5 + c00477de: 0006ad83 lw s11,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1420 end = cr_inter.points[i + 1]; - c0047612: 001a869b addiw a3,s5,1 - c0047616: 02069713 slli a4,a3,0x20 - c004761a: 01e75693 srli a3,a4,0x1e - c004761e: 97b6 add a5,a5,a3 - c0047620: 0007ac03 lw s8,0(a5) + c00477e2: 001a869b addiw a3,s5,1 + c00477e6: 02069713 slli a4,a3,0x20 + c00477ea: 01e75693 srli a3,a4,0x1e + c00477ee: 97b6 add a5,a5,a3 + c00477f0: 0007ac03 lw s8,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1422 (discriminator 1) for(c = start; c < end; c++) { - c0047624: 098df663 bgeu s11,s8,c00476b0 - c0047628: 001b879b addiw a5,s7,1 - c004762c: 02079713 slli a4,a5,0x20 - c0047630: 01e75793 srli a5,a4,0x1e - c0047634: 00020717 auipc a4,0x20 - c0047638: 09c70713 addi a4,a4,156 # c00676d0 - c004763c: 97ba add a5,a5,a4 - c004763e: a811 j c0047652 + c00477f4: 098df663 bgeu s11,s8,c0047880 + c00477f8: 001b879b addiw a5,s7,1 + c00477fc: 02079713 slli a4,a5,0x20 + c0047800: 01e75793 srli a5,a4,0x1e + c0047804: 00020717 auipc a4,0x20 + c0047808: 12c70713 addi a4,a4,300 # c0067930 + c004780c: 97ba add a5,a5,a4 + c004780e: a811 j c0047822 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1428 (discriminator 2) v = case_conv_table1[idx]; - c0047640: 0007ad03 lw s10,0(a5) + c0047810: 0007ad03 lw s10,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1429 (discriminator 2) code = v >> (32 - 17); - c0047644: 0791 addi a5,a5,4 + c0047814: 0791 addi a5,a5,4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1430 (discriminator 2) len = (v >> (32 - 17 - 7)) & 0x7f; - c0047646: 008d599b srliw s3,s10,0x8 + c0047816: 008d599b srliw s3,s10,0x8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1429 (discriminator 2) code = v >> (32 - 17); - c004764a: 00fd5b1b srliw s6,s10,0xf + c004781a: 00fd5b1b srliw s6,s10,0xf /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1430 (discriminator 2) len = (v >> (32 - 17 - 7)) & 0x7f; - c004764e: 07f9f993 andi s3,s3,127 + c004781e: 07f9f993 andi s3,s3,127 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1424 if (c >= code && c < code + len) - c0047652: 016de663 bltu s11,s6,c004765e + c0047822: 016de663 bltu s11,s6,c004782e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1424 (discriminator 1) - c0047656: 013b06b3 add a3,s6,s3 - c004765a: 02dde063 bltu s11,a3,c004767a + c0047826: 013b06b3 add a3,s6,s3 + c004782a: 02dde063 bltu s11,a3,c004784a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1426 idx++; - c004765e: 2b85 addiw s7,s7,1 + c004782e: 2b85 addiw s7,s7,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1427 assert(idx < countof(case_conv_table1)); - c0047660: 17100713 li a4,369 - c0047664: fd777ee3 bgeu a4,s7,c0047640 + c0047830: 17100713 li a4,369 + c0047834: fd777ee3 bgeu a4,s7,c0047810 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1427 (discriminator 1) - c0047668: 4601 li a2,0 - c004766a: 59300593 li a1,1427 - c004766e: 00020517 auipc a0,0x20 - c0047672: f6a50513 addi a0,a0,-150 # c00675d8 - c0047676: 3a20c0ef jal ra,c0053a18 <__assert> + c0047838: 4601 li a2,0 + c004783a: 59300593 li a1,1427 + c004783e: 00020517 auipc a0,0x20 + c0047842: ffa50513 addi a0,a0,-6 # c0067838 + c0047846: 3a20c0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1432 d = lre_case_folding_entry(c, idx, v, is_unicode); - c004767a: 86d2 mv a3,s4 - c004767c: 866a mv a2,s10 - c004767e: 85de mv a1,s7 - c0047680: 856e mv a0,s11 - c0047682: febfe0ef jal ra,c004666c + c004784a: 86d2 mv a3,s4 + c004784c: 866a mv a2,s10 + c004784e: 85de mv a1,s7 + c0047850: 856e mv a0,s11 + c0047852: febfe0ef jal ra,c004683c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1434 if (d_start == -1) { - c0047686: 57fd li a5,-1 + c0047856: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1432 d = lre_case_folding_entry(c, idx, v, is_unicode); - c0047688: 0005091b sext.w s2,a0 + c0047858: 0005091b sext.w s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1434 if (d_start == -1) { - c004768c: 00fc9563 bne s9,a5,c0047696 + c004785c: 00fc9563 bne s9,a5,c0047866 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1442 d_end = d + 1; - c0047690: 0019049b addiw s1,s2,1 - c0047694: a029 j c004769e + c0047860: 0019049b addiw s1,s2,1 + c0047864: a029 j c004786e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1437 } else if (d_end == d) { - c0047696: 01249763 bne s1,s2,c00476a4 + c0047866: 01249763 bne s1,s2,c0047874 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1438 d_end++; - c004769a: 2485 addiw s1,s1,1 - c004769c: 8966 mv s2,s9 + c004786a: 2485 addiw s1,s1,1 + c004786c: 8966 mv s2,s9 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1422 (discriminator 2) for(c = start; c < end; c++) { - c004769e: 2d85 addiw s11,s11,1 - c00476a0: 8cca mv s9,s2 - c00476a2: b749 j c0047624 + c004786e: 2d85 addiw s11,s11,1 + c0047870: 8cca mv s9,s2 + c0047872: b749 j c00477f4 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1440 cr_add_interval(&cr_result, d_start, d_end); - c00476a4: 8626 mv a2,s1 - c00476a6: 85e6 mv a1,s9 - c00476a8: 0088 addi a0,sp,64 - c00476aa: 9aaff0ef jal ra,c0046854 - c00476ae: b7cd j c0047690 + c0047874: 8626 mv a2,s1 + c0047876: 85e6 mv a1,s9 + c0047878: 0088 addi a0,sp,64 + c004787a: 9aaff0ef jal ra,c0046a24 + c004787e: b7cd j c0047860 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1418 (discriminator 2) for(i = 0; i < cr_inter.len; i += 2) { - c00476b0: 2a89 addiw s5,s5,2 - c00476b2: b5f1 j c004757e + c0047880: 2a89 addiw s5,s5,2 + c0047882: b5f1 j c004774e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1447 if (cr_add_interval(&cr_result, d_start, d_end)) - c00476b4: 8626 mv a2,s1 - c00476b6: 85e6 mv a1,s9 - c00476b8: 0088 addi a0,sp,64 - c00476ba: 99aff0ef jal ra,c0046854 - c00476be: ec0506e3 beqz a0,c004758a + c0047884: 8626 mv a2,s1 + c0047886: 85e6 mv a1,s9 + c0047888: 0088 addi a0,sp,64 + c004788a: 99aff0ef jal ra,c0046a24 + c004788e: ec0506e3 beqz a0,c004775a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1465 cr_free(&cr_inter); - c00476c2: 850a mv a0,sp - c00476c4: 93aff0ef jal ra,c00467fe + c0047892: 850a mv a0,sp + c0047894: 93aff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1466 cr_free(&cr_mask); - c00476c8: 1008 addi a0,sp,32 - c00476ca: 934ff0ef jal ra,c00467fe + c0047898: 1008 addi a0,sp,32 + c004789a: 934ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1467 cr_free(&cr_result); - c00476ce: 0088 addi a0,sp,64 - c00476d0: 92eff0ef jal ra,c00467fe + c004789e: 0088 addi a0,sp,64 + c00478a0: 92eff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1468 cr_free(&cr_sub); - c00476d4: 1088 addi a0,sp,96 - c00476d6: 928ff0ef jal ra,c00467fe + c00478a4: 1088 addi a0,sp,96 + c00478a6: 928ff0ef jal ra,c00469ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1469 return -1; - c00476da: 547d li s0,-1 - c00476dc: b719 j c00475e2 + c00478aa: 547d li s0,-1 + c00478ac: b719 j c00477b2 cr_sort_and_remove_overlap(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1358 start = cr->points[i]; - c00476de: 02079693 slli a3,a5,0x20 - c00476e2: 01e6d713 srli a4,a3,0x1e - c00476e6: 972e add a4,a4,a1 - c00476e8: 00072883 lw a7,0(a4) + c00478ae: 02079693 slli a3,a5,0x20 + c00478b2: 01e6d713 srli a4,a3,0x1e + c00478b6: 972e add a4,a4,a1 + c00478b8: 00072883 lw a7,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1359 end = cr->points[i + 1]; - c00476ec: 0017871b addiw a4,a5,1 - c00476f0: 02071693 slli a3,a4,0x20 - c00476f4: 01e6d713 srli a4,a3,0x1e - c00476f8: 972e add a4,a4,a1 - c00476fa: 4318 lw a4,0(a4) + c00478bc: 0017871b addiw a4,a5,1 + c00478c0: 02071693 slli a3,a4,0x20 + c00478c4: 01e6d713 srli a4,a3,0x1e + c00478c8: 972e add a4,a4,a1 + c00478ca: 4318 lw a4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1360 i += 2; - c00476fc: 2789 addiw a5,a5,2 + c00478cc: 2789 addiw a5,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1361 while (i < cr->len) { - c00476fe: 02a7e463 bltu a5,a0,c0047726 + c00478ce: 02a7e463 bltu a5,a0,c00478f6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1379 cr->points[j] = start; - c0047702: 02061513 slli a0,a2,0x20 - c0047706: 01e55693 srli a3,a0,0x1e - c004770a: 95b6 add a1,a1,a3 - c004770c: 0115a023 sw a7,0(a1) + c00478d2: 02061513 slli a0,a2,0x20 + c00478d6: 01e55693 srli a3,a0,0x1e + c00478da: 95b6 add a1,a1,a3 + c00478dc: 0115a023 sw a7,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1380 cr->points[j + 1] = end; - c0047710: 0016069b addiw a3,a2,1 - c0047714: 02069513 slli a0,a3,0x20 - c0047718: 66a6 ld a3,72(sp) - c004771a: 01e55593 srli a1,a0,0x1e + c00478e0: 0016069b addiw a3,a2,1 + c00478e4: 02069513 slli a0,a3,0x20 + c00478e8: 66a6 ld a3,72(sp) + c00478ea: 01e55593 srli a1,a0,0x1e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1381 j += 2; - c004771e: 2609 addiw a2,a2,2 + c00478ee: 2609 addiw a2,a2,2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1380 cr->points[j + 1] = end; - c0047720: 96ae add a3,a3,a1 - c0047722: c298 sw a4,0(a3) + c00478f0: 96ae add a3,a3,a1 + c00478f2: c298 sw a4,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1381 j += 2; - c0047724: b551 j c00475a8 + c00478f4: b551 j c0047778 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1363 end1 = cr->points[i + 1]; - c0047726: 0017869b addiw a3,a5,1 - c004772a: 02069493 slli s1,a3,0x20 - c004772e: 01e4d693 srli a3,s1,0x1e - c0047732: 96ae add a3,a3,a1 + c00478f6: 0017869b addiw a3,a5,1 + c00478fa: 02069493 slli s1,a3,0x20 + c00478fe: 01e4d693 srli a3,s1,0x1e + c0047902: 96ae add a3,a3,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1362 start1 = cr->points[i]; - c0047734: 02079493 slli s1,a5,0x20 + c0047904: 02079493 slli s1,a5,0x20 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1363 end1 = cr->points[i + 1]; - c0047738: 0006a803 lw a6,0(a3) + c0047908: 0006a803 lw a6,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1362 start1 = cr->points[i]; - c004773c: 01e4d693 srli a3,s1,0x1e - c0047740: 96ae add a3,a3,a1 + c004790c: 01e4d693 srli a3,s1,0x1e + c0047910: 96ae add a3,a3,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1364 if (start1 > end) { - c0047742: 4294 lw a3,0(a3) - c0047744: fad76fe3 bltu a4,a3,c0047702 + c0047912: 4294 lw a3,0(a3) + c0047914: fad76fe3 bltu a4,a3,c00478d2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1371 i += 2; - c0047748: 2789 addiw a5,a5,2 - c004774a: 86ba mv a3,a4 - c004774c: 01077363 bgeu a4,a6,c0047752 - c0047750: 86c2 mv a3,a6 - c0047752: 0006871b sext.w a4,a3 - c0047756: b765 j c00476fe - -00000000c0047758 : + c0047918: 2789 addiw a5,a5,2 + c004791a: 86ba mv a3,a4 + c004791c: 01077363 bgeu a4,a6,c0047922 + c0047920: 86c2 mv a3,a6 + c0047922: 0006871b sext.w a4,a3 + c0047926: b765 j c00478ce + +00000000c0047928 : unicode_general_category(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1574 }; @@ -195070,67 +195268,67 @@ unicode_general_category(): if not found */ int unicode_general_category(CharRange *cr, const char *gc_name) { - c0047758: 1141 addi sp,sp,-16 - c004775a: e022 sd s0,0(sp) - c004775c: 842a mv s0,a0 + c0047928: 1141 addi sp,sp,-16 + c004792a: e022 sd s0,0(sp) + c004792c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1578 int gc_idx; uint32_t gc_mask; gc_idx = unicode_find_name(unicode_gc_name_table, gc_name); - c004775e: 00024517 auipc a0,0x24 - c0047762: 70a50513 addi a0,a0,1802 # c006be68 + c004792e: 00024517 auipc a0,0x24 + c0047932: 79a50513 addi a0,a0,1946 # c006c0c8 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1574 { - c0047766: e406 sd ra,8(sp) + c0047936: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1578 gc_idx = unicode_find_name(unicode_gc_name_table, gc_name); - c0047768: cfafe0ef jal ra,c0045c62 + c0047938: cfafe0ef jal ra,c0045e32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1579 if (gc_idx < 0) - c004776c: 02054963 bltz a0,c004779e + c004793c: 02054963 bltz a0,c004796e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1581 return -2; if (gc_idx <= UNICODE_GC_Co) { - c0047770: 47f5 li a5,29 - c0047772: 00a7cc63 blt a5,a0,c004778a + c0047940: 47f5 li a5,29 + c0047942: 00a7cc63 blt a5,a0,c004795a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1582 gc_mask = (uint64_t)1 << gc_idx; - c0047776: 4585 li a1,1 - c0047778: 00a595b3 sll a1,a1,a0 - c004777c: 2581 sext.w a1,a1 + c0047946: 4585 li a1,1 + c0047948: 00a595b3 sll a1,a1,a0 + c004794c: 2581 sext.w a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1586 } else { gc_mask = unicode_gc_mask_table[gc_idx - UNICODE_GC_LC]; } return unicode_general_category1(cr, gc_mask); - c004777e: 8522 mv a0,s0 + c004794e: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1587 } - c0047780: 6402 ld s0,0(sp) - c0047782: 60a2 ld ra,8(sp) - c0047784: 0141 addi sp,sp,16 + c0047950: 6402 ld s0,0(sp) + c0047952: 60a2 ld ra,8(sp) + c0047954: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1586 return unicode_general_category1(cr, gc_mask); - c0047786: a50ff06f j c00469d6 + c0047956: a50ff06f j c0046ba6 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1584 gc_mask = unicode_gc_mask_table[gc_idx - UNICODE_GC_LC]; - c004778a: fe25079b addiw a5,a0,-30 - c004778e: 078a slli a5,a5,0x2 - c0047790: 00024517 auipc a0,0x24 - c0047794: 6b850513 addi a0,a0,1720 # c006be48 - c0047798: 97aa add a5,a5,a0 - c004779a: 438c lw a1,0(a5) - c004779c: b7cd j c004777e + c004795a: fe25079b addiw a5,a0,-30 + c004795e: 078a slli a5,a5,0x2 + c0047960: 00024517 auipc a0,0x24 + c0047964: 74850513 addi a0,a0,1864 # c006c0a8 + c0047968: 97aa add a5,a5,a0 + c004796a: 438c lw a1,0(a5) + c004796c: b7cd j c004794e /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1587 } - c004779e: 60a2 ld ra,8(sp) - c00477a0: 6402 ld s0,0(sp) - c00477a2: 5579 li a0,-2 - c00477a4: 0141 addi sp,sp,16 - c00477a6: 8082 ret + c004796e: 60a2 ld ra,8(sp) + c0047970: 6402 ld s0,0(sp) + c0047972: 5579 li a0,-2 + c0047974: 0141 addi sp,sp,16 + c0047976: 8082 ret -00000000c00477a8 : +00000000c0047978 : unicode_prop(): /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1593 @@ -195139,58 +195337,58 @@ unicode_prop(): if not found */ int unicode_prop(CharRange *cr, const char *prop_name) { - c00477a8: 7159 addi sp,sp,-112 - c00477aa: f0a2 sd s0,96(sp) - c00477ac: 842a mv s0,a0 + c0047978: 7159 addi sp,sp,-112 + c004797a: f0a2 sd s0,96(sp) + c004797c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1596 int prop_idx, ret; prop_idx = unicode_find_name(unicode_prop_name_table, prop_name); - c00477ae: 00027517 auipc a0,0x27 - c00477b2: 3f250513 addi a0,a0,1010 # c006eba0 + c004797e: 00027517 auipc a0,0x27 + c0047982: 48250513 addi a0,a0,1154 # c006ee00 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1593 { - c00477b6: f486 sd ra,104(sp) + c0047986: f486 sd ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1596 prop_idx = unicode_find_name(unicode_prop_name_table, prop_name); - c00477b8: caafe0ef jal ra,c0045c62 + c0047988: caafe0ef jal ra,c0045e32 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1597 if (prop_idx < 0) - c00477bc: 1c054d63 bltz a0,c0047996 + c004798c: 1c054d63 bltz a0,c0047b66 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1599 return -2; prop_idx += UNICODE_PROP_ASCII_Hex_Digit; - c00477c0: 0105059b addiw a1,a0,16 + c0047990: 0105059b addiw a1,a0,16 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1602 ret = 0; switch(prop_idx) { - c00477c4: fde5051b addiw a0,a0,-34 - c00477c8: 0005071b sext.w a4,a0 - c00477cc: 47c9 li a5,18 - c00477ce: 1ae7ea63 bltu a5,a4,c0047982 - c00477d2: 02051793 slli a5,a0,0x20 - c00477d6: 01e7d513 srli a0,a5,0x1e - c00477da: 00020717 auipc a4,0x20 - c00477de: e2e70713 addi a4,a4,-466 # c0067608 - c00477e2: 953a add a0,a0,a4 - c00477e4: 411c lw a5,0(a0) - c00477e6: 97ba add a5,a5,a4 - c00477e8: 8782 jr a5 + c0047994: fde5051b addiw a0,a0,-34 + c0047998: 0005071b sext.w a4,a0 + c004799c: 47c9 li a5,18 + c004799e: 1ae7ea63 bltu a5,a4,c0047b52 + c00479a2: 02051793 slli a5,a0,0x20 + c00479a6: 01e7d513 srli a0,a5,0x1e + c00479aa: 00020717 auipc a4,0x20 + c00479ae: ebe70713 addi a4,a4,-322 # c0067868 + c00479b2: 953a add a0,a0,a4 + c00479b4: 411c lw a5,0(a0) + c00479b6: 97ba add a5,a5,a4 + c00479b8: 8782 jr a5 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1604 case UNICODE_PROP_ASCII: if (cr_add_interval(cr, 0x00, 0x7f + 1)) - c00477ea: 08000613 li a2,128 + c00479ba: 08000613 li a2,128 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1608 return -1; break; case UNICODE_PROP_Any: if (cr_add_interval(cr, 0x00000, 0x10ffff + 1)) - c00477ee: 4581 li a1,0 - c00477f0: 8522 mv a0,s0 - c00477f2: 862ff0ef jal ra,c0046854 - c00477f6: 00a03533 snez a0,a0 - c00477fa: 40a00533 neg a0,a0 + c00479be: 4581 li a1,0 + c00479c0: 8522 mv a0,s0 + c00479c2: 862ff0ef jal ra,c0046a24 + c00479c6: 00a03533 snez a0,a0 + c00479ca: 40a00533 neg a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 return -2; ret = unicode_prop1(cr, prop_idx); @@ -195198,277 +195396,277 @@ int unicode_prop(CharRange *cr, const char *prop_name) } return ret; } - c00477fe: 70a6 ld ra,104(sp) - c0047800: 7406 ld s0,96(sp) - c0047802: 6165 addi sp,sp,112 - c0047804: 8082 ret + c00479ce: 70a6 ld ra,104(sp) + c00479d0: 7406 ld s0,96(sp) + c00479d2: 6165 addi sp,sp,112 + c00479d4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1608 if (cr_add_interval(cr, 0x00000, 0x10ffff + 1)) - c0047806: 00110637 lui a2,0x110 - c004780a: b7d5 j c00477ee + c00479d6: 00110637 lui a2,0x110 + c00479da: b7d5 j c00479be /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1612 ret = unicode_prop_ops(cr, - c004780c: 8522 mv a0,s0 + c00479dc: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c004780e: 7406 ld s0,96(sp) - c0047810: 70a6 ld ra,104(sp) + c00479de: 7406 ld s0,96(sp) + c00479e0: 70a6 ld ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1612 ret = unicode_prop_ops(cr, - c0047812: 471d li a4,7 - c0047814: 4699 li a3,6 - c0047816: 4605 li a2,1 - c0047818: 4581 li a1,0 + c00479e2: 471d li a4,7 + c00479e4: 4699 li a3,6 + c00479e6: 4605 li a2,1 + c00479e8: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c004781a: 6165 addi sp,sp,112 + c00479ea: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1612 ret = unicode_prop_ops(cr, - c004781c: d88ff06f j c0046da4 + c00479ec: d88ff06f j c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1618 ret = unicode_prop_ops(cr, - c0047820: 481d li a6,7 - c0047822: 478d li a5,3 - c0047824: 4705 li a4,1 - c0047826: 4685 li a3,1 - c0047828: 6605 lui a2,0x1 + c00479f0: 481d li a6,7 + c00479f2: 478d li a5,3 + c00479f4: 4705 li a4,1 + c00479f6: 4685 li a3,1 + c00479f8: 6605 lui a2,0x1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1625 ret = unicode_prop_ops(cr, - c004782a: 4581 li a1,0 - c004782c: 8522 mv a0,s0 + c00479fa: 4581 li a1,0 + c00479fc: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c004782e: 7406 ld s0,96(sp) - c0047830: 70a6 ld ra,104(sp) - c0047832: 6165 addi sp,sp,112 + c00479fe: 7406 ld s0,96(sp) + c0047a00: 70a6 ld ra,104(sp) + c0047a02: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1625 ret = unicode_prop_ops(cr, - c0047834: d70ff06f j c0046da4 - c0047838: 481d li a6,7 - c004783a: 478d li a5,3 - c004783c: 470d li a4,3 - c004783e: 4685 li a3,1 - c0047840: 4611 li a2,4 - c0047842: b7e5 j c004782a + c0047a04: d70ff06f j c0046f74 + c0047a08: 481d li a6,7 + c0047a0a: 478d li a5,3 + c0047a0c: 470d li a4,3 + c0047a0e: 4685 li a3,1 + c0047a10: 4611 li a2,4 + c0047a12: b7e5 j c00479fa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1632 ret = unicode_prop_ops(cr, - c0047844: 481d li a6,7 - c0047846: 478d li a5,3 - c0047848: 4711 li a4,4 - c004784a: 4685 li a3,1 - c004784c: 4609 li a2,2 - c004784e: bff1 j c004782a + c0047a14: 481d li a6,7 + c0047a16: 478d li a5,3 + c0047a18: 4711 li a4,4 + c0047a1a: 4685 li a3,1 + c0047a1c: 4609 li a2,2 + c0047a1e: bff1 j c00479fa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1639 ret = unicode_prop_ops(cr, - c0047850: 479d li a5,7 - c0047852: e43e sd a5,8(sp) - c0047854: 478d li a5,3 - c0047856: e03e sd a5,0(sp) - c0047858: 488d li a7,3 - c004785a: 4805 li a6,1 - c004785c: 4711 li a4,4 - c004785e: 4685 li a3,1 - c0047860: 4639 li a2,14 - c0047862: 4581 li a1,0 - c0047864: 8522 mv a0,s0 - c0047866: d3eff0ef jal ra,c0046da4 + c0047a20: 479d li a5,7 + c0047a22: e43e sd a5,8(sp) + c0047a24: 478d li a5,3 + c0047a26: e03e sd a5,0(sp) + c0047a28: 488d li a7,3 + c0047a2a: 4805 li a6,1 + c0047a2c: 4711 li a4,4 + c0047a2e: 4685 li a3,1 + c0047a30: 4639 li a2,14 + c0047a32: 4581 li a1,0 + c0047a34: 8522 mv a0,s0 + c0047a36: d3eff0ef jal ra,c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1646 break; - c004786a: bf51 j c00477fe + c0047a3a: bf51 j c00479ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1648 ret = unicode_prop_ops(cr, - c004786c: 479d li a5,7 - c004786e: 4709 li a4,2 - c0047870: f03e sd a5,32(sp) - c0047872: e83a sd a4,16(sp) - c0047874: 478d li a5,3 - c0047876: 4705 li a4,1 - c0047878: e43a sd a4,8(sp) - c004787a: ec3e sd a5,24(sp) - c004787c: e03e sd a5,0(sp) - c004787e: 488d li a7,3 - c0047880: 4805 li a6,1 - c0047882: 4711 li a4,4 - c0047884: 4685 li a3,1 - c0047886: 43e00613 li a2,1086 - c004788a: 4581 li a1,0 - c004788c: 8522 mv a0,s0 - c004788e: d16ff0ef jal ra,c0046da4 + c0047a3c: 479d li a5,7 + c0047a3e: 4709 li a4,2 + c0047a40: f03e sd a5,32(sp) + c0047a42: e83a sd a4,16(sp) + c0047a44: 478d li a5,3 + c0047a46: 4705 li a4,1 + c0047a48: e43a sd a4,8(sp) + c0047a4a: ec3e sd a5,24(sp) + c0047a4c: e03e sd a5,0(sp) + c0047a4e: 488d li a7,3 + c0047a50: 4805 li a6,1 + c0047a52: 4711 li a4,4 + c0047a54: 4685 li a3,1 + c0047a56: 43e00613 li a2,1086 + c0047a5a: 4581 li a1,0 + c0047a5c: 8522 mv a0,s0 + c0047a5e: d16ff0ef jal ra,c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1657 break; - c0047892: b7b5 j c00477fe + c0047a62: b7b5 j c00479ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1659 ret = unicode_prop_ops(cr, - c0047894: 8522 mv a0,s0 + c0047a64: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c0047896: 7406 ld s0,96(sp) - c0047898: 70a6 ld ra,104(sp) + c0047a66: 7406 ld s0,96(sp) + c0047a68: 70a6 ld ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1659 ret = unicode_prop_ops(cr, - c004789a: 3f000637 lui a2,0x3f000 - c004789e: 489d li a7,7 - c00478a0: 4819 li a6,6 - c00478a2: 478d li a5,3 - c00478a4: 4715 li a4,5 - c00478a6: 4685 li a3,1 - c00478a8: 14160613 addi a2,a2,321 # 3f000141 <__clzdi2-0x80fffebf> - c00478ac: 4581 li a1,0 + c0047a6a: 3f000637 lui a2,0x3f000 + c0047a6e: 489d li a7,7 + c0047a70: 4819 li a6,6 + c0047a72: 478d li a5,3 + c0047a74: 4715 li a4,5 + c0047a76: 4685 li a3,1 + c0047a78: 14160613 addi a2,a2,321 # 3f000141 <__clzdi2-0x80fffebf> + c0047a7c: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c00478ae: 6165 addi sp,sp,112 + c0047a7e: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1659 ret = unicode_prop_ops(cr, - c00478b0: cf4ff06f j c0046da4 + c0047a80: cf4ff06f j c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1667 ret = unicode_prop_ops(cr, - c00478b4: 481d li a6,7 - c00478b6: 478d li a5,3 - c00478b8: 4715 li a4,5 - c00478ba: 4685 li a3,1 - c00478bc: 14000613 li a2,320 - c00478c0: b7ad j c004782a + c0047a84: 481d li a6,7 + c0047a86: 478d li a5,3 + c0047a88: 4715 li a4,5 + c0047a8a: 4685 li a3,1 + c0047a8c: 14000613 li a2,320 + c0047a90: b7ad j c00479fa /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1674 ret = unicode_prop_ops(cr, - c00478c2: 479d li a5,7 - c00478c4: e0be sd a5,64(sp) - c00478c6: 4791 li a5,4 - c00478c8: fc3e sd a5,56(sp) - c00478ca: 4799 li a5,6 - c00478cc: 470d li a4,3 - c00478ce: f83e sd a5,48(sp) - c00478d0: 47ad li a5,11 - c00478d2: f43a sd a4,40(sp) - c00478d4: f03e sd a5,32(sp) - c00478d6: e83a sd a4,16(sp) - c00478d8: 4785 li a5,1 - c00478da: 4779 li a4,30 - c00478dc: ec3e sd a5,24(sp) - c00478de: e43a sd a4,8(sp) - c00478e0: e03e sd a5,0(sp) - c00478e2: 48f5 li a7,29 - c00478e4: 4805 li a6,1 - c00478e6: 478d li a5,3 - c00478e8: 471d li a4,7 - c00478ea: 4685 li a3,1 - c00478ec: 43e00613 li a2,1086 - c00478f0: 4581 li a1,0 - c00478f2: 8522 mv a0,s0 - c00478f4: cb0ff0ef jal ra,c0046da4 + c0047a92: 479d li a5,7 + c0047a94: e0be sd a5,64(sp) + c0047a96: 4791 li a5,4 + c0047a98: fc3e sd a5,56(sp) + c0047a9a: 4799 li a5,6 + c0047a9c: 470d li a4,3 + c0047a9e: f83e sd a5,48(sp) + c0047aa0: 47ad li a5,11 + c0047aa2: f43a sd a4,40(sp) + c0047aa4: f03e sd a5,32(sp) + c0047aa6: e83a sd a4,16(sp) + c0047aa8: 4785 li a5,1 + c0047aaa: 4779 li a4,30 + c0047aac: ec3e sd a5,24(sp) + c0047aae: e43a sd a4,8(sp) + c0047ab0: e03e sd a5,0(sp) + c0047ab2: 48f5 li a7,29 + c0047ab4: 4805 li a6,1 + c0047ab6: 478d li a5,3 + c0047ab8: 471d li a4,7 + c0047aba: 4685 li a3,1 + c0047abc: 43e00613 li a2,1086 + c0047ac0: 4581 li a1,0 + c0047ac2: 8522 mv a0,s0 + c0047ac4: cb0ff0ef jal ra,c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1686 break; - c00478f8: b719 j c00477fe + c0047ac8: b719 j c00479ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1688 ret = unicode_prop_ops(cr, - c00478fa: 479d li a5,7 - c00478fc: ecbe sd a5,88(sp) - c00478fe: 4791 li a5,4 - c0047900: e8be sd a5,80(sp) - c0047902: 4731 li a4,12 - c0047904: 4799 li a5,6 - c0047906: 46f9 li a3,30 - c0047908: e4be sd a5,72(sp) - c004790a: fc3a sd a4,56(sp) - c004790c: 478d li a5,3 - c004790e: 4705 li a4,1 - c0047910: f036 sd a3,32(sp) - c0047912: 6641 lui a2,0x10 - c0047914: 46f5 li a3,29 - c0047916: f83a sd a4,48(sp) - c0047918: ec3a sd a4,24(sp) - c004791a: e836 sd a3,16(sp) - c004791c: e43a sd a4,8(sp) - c004791e: e0be sd a5,64(sp) - c0047920: f43e sd a5,40(sp) - c0047922: e03e sd a5,0(sp) - c0047924: 48a1 li a7,8 - c0047926: 4805 li a6,1 - c0047928: 471d li a4,7 - c004792a: 4685 li a3,1 - c004792c: 6fe60613 addi a2,a2,1790 # 106fe <__clzdi2-0xbffef902> - c0047930: 4581 li a1,0 - c0047932: 8522 mv a0,s0 - c0047934: c70ff0ef jal ra,c0046da4 + c0047aca: 479d li a5,7 + c0047acc: ecbe sd a5,88(sp) + c0047ace: 4791 li a5,4 + c0047ad0: e8be sd a5,80(sp) + c0047ad2: 4731 li a4,12 + c0047ad4: 4799 li a5,6 + c0047ad6: 46f9 li a3,30 + c0047ad8: e4be sd a5,72(sp) + c0047ada: fc3a sd a4,56(sp) + c0047adc: 478d li a5,3 + c0047ade: 4705 li a4,1 + c0047ae0: f036 sd a3,32(sp) + c0047ae2: 6641 lui a2,0x10 + c0047ae4: 46f5 li a3,29 + c0047ae6: f83a sd a4,48(sp) + c0047ae8: ec3a sd a4,24(sp) + c0047aea: e836 sd a3,16(sp) + c0047aec: e43a sd a4,8(sp) + c0047aee: e0be sd a5,64(sp) + c0047af0: f43e sd a5,40(sp) + c0047af2: e03e sd a5,0(sp) + c0047af4: 48a1 li a7,8 + c0047af6: 4805 li a6,1 + c0047af8: 471d li a4,7 + c0047afa: 4685 li a3,1 + c0047afc: 6fe60613 addi a2,a2,1790 # 106fe <__clzdi2-0xbffef902> + c0047b00: 4581 li a1,0 + c0047b02: 8522 mv a0,s0 + c0047b04: c70ff0ef jal ra,c0046f74 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1703 break; - c0047938: b5d9 j c00477fe + c0047b08: b5d9 j c00479ce /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1705 ret = unicode_case1(cr, CASE_U); - c004793a: 4585 li a1,1 + c0047b0a: 4585 li a1,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1711 ret = unicode_case1(cr, CASE_U | CASE_L | CASE_F); - c004793c: 8522 mv a0,s0 + c0047b0c: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c004793e: 7406 ld s0,96(sp) - c0047940: 70a6 ld ra,104(sp) - c0047942: 6165 addi sp,sp,112 + c0047b0e: 7406 ld s0,96(sp) + c0047b10: 70a6 ld ra,104(sp) + c0047b12: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1711 ret = unicode_case1(cr, CASE_U | CASE_L | CASE_F); - c0047944: f67fe06f j c00468aa + c0047b14: f67fe06f j c0046a7a /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1708 ret = unicode_case1(cr, CASE_L); - c0047948: 4589 li a1,2 - c004794a: bfcd j c004793c + c0047b18: 4589 li a1,2 + c0047b1a: bfcd j c0047b0c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1711 ret = unicode_case1(cr, CASE_U | CASE_L | CASE_F); - c004794c: 459d li a1,7 - c004794e: b7fd j c004793c + c0047b1c: 459d li a1,7 + c0047b1e: b7fd j c0047b0c /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1714 ret = unicode_prop_ops(cr, - c0047950: 481d li a6,7 - c0047952: 4795 li a5,5 - c0047954: 4735 li a4,13 - c0047956: 4685 li a3,1 - c0047958: 4605 li a2,1 + c0047b20: 481d li a6,7 + c0047b22: 4795 li a5,5 + c0047b24: 4735 li a4,13 + c0047b26: 4685 li a3,1 + c0047b28: 4605 li a2,1 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1728 ret = unicode_prop_ops(cr, - c004795a: 4589 li a1,2 - c004795c: bdc1 j c004782c + c0047b2a: 4589 li a1,2 + c0047b2c: bdc1 j c00479fc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1721 ret = unicode_prop_ops(cr, - c004795e: 481d li a6,7 - c0047960: 4795 li a5,5 - c0047962: 4739 li a4,14 + c0047b2e: 481d li a6,7 + c0047b30: 4795 li a5,5 + c0047b32: 4739 li a4,14 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1728 ret = unicode_prop_ops(cr, - c0047964: 4685 li a3,1 - c0047966: 4611 li a2,4 - c0047968: bfcd j c004795a - c004796a: 481d li a6,7 - c004796c: 4795 li a5,5 - c004796e: 473d li a4,15 - c0047970: bfd5 j c0047964 + c0047b34: 4685 li a3,1 + c0047b36: 4611 li a2,4 + c0047b38: bfcd j c0047b2a + c0047b3a: 481d li a6,7 + c0047b3c: 4795 li a5,5 + c0047b3e: 473d li a4,15 + c0047b40: bfd5 j c0047b34 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1772 ret = unicode_prop_ops(cr, - c0047972: 481d li a6,7 - c0047974: 4795 li a5,5 - c0047976: 4729 li a4,10 - c0047978: 4685 li a3,1 - c004797a: 03000613 li a2,48 - c004797e: 4585 li a1,1 - c0047980: b575 j c004782c + c0047b42: 481d li a6,7 + c0047b44: 4795 li a5,5 + c0047b46: 4729 li a4,10 + c0047b48: 4685 li a3,1 + c0047b4a: 03000613 li a2,48 + c0047b4e: 4585 li a1,1 + c0047b50: b575 j c00479fc /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1780 if (prop_idx >= countof(unicode_prop_table)) - c0047982: 03100793 li a5,49 - c0047986: 00b7e863 bltu a5,a1,c0047996 + c0047b52: 03100793 li a5,49 + c0047b56: 00b7e863 bltu a5,a1,c0047b66 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1782 ret = unicode_prop1(cr, prop_idx); - c004798a: 8522 mv a0,s0 + c0047b5a: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1786 } - c004798c: 7406 ld s0,96(sp) - c004798e: 70a6 ld ra,104(sp) - c0047990: 6165 addi sp,sp,112 + c0047b5c: 7406 ld s0,96(sp) + c0047b5e: 70a6 ld ra,104(sp) + c0047b60: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1782 ret = unicode_prop1(cr, prop_idx); - c0047992: 950ff06f j c0046ae2 + c0047b62: 950ff06f j c0046cb2 /Users/Luppy/riscv/quickjs-nuttx/libunicode.c:1598 return -2; - c0047996: 5579 li a0,-2 - c0047998: b59d j c00477fe + c0047b66: 5579 li a0,-2 + c0047b68: b59d j c00479ce -00000000c004799a : +00000000c0047b6a : exchange_bytes(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:339 @@ -195477,34 +195675,34 @@ static void exchange_bytes(void *a, void *b, size_t size) { uint8_t *bp = (uint8_t *)b; while (size-- != 0) { - c004799a: 962e add a2,a2,a1 - c004799c: 00c59363 bne a1,a2,c00479a2 + c0047b6a: 962e add a2,a2,a1 + c0047b6c: 00c59363 bne a1,a2,c0047b72 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:344 uint8_t t = *ap; *ap++ = *bp; *bp++ = t; } } - c00479a0: 8082 ret + c0047b70: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:341 *ap++ = *bp; - c00479a2: 0005c703 lbu a4,0(a1) + c0047b72: 0005c703 lbu a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:340 uint8_t t = *ap; - c00479a6: 00054783 lbu a5,0(a0) + c0047b76: 00054783 lbu a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:342 *bp++ = t; - c00479aa: 0585 addi a1,a1,1 + c0047b7a: 0585 addi a1,a1,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:341 *ap++ = *bp; - c00479ac: 0505 addi a0,a0,1 - c00479ae: fee50fa3 sb a4,-1(a0) + c0047b7c: 0505 addi a0,a0,1 + c0047b7e: fee50fa3 sb a4,-1(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:342 *bp++ = t; - c00479b2: fef58fa3 sb a5,-1(a1) - c00479b6: b7dd j c004799c + c0047b82: fef58fa3 sb a5,-1(a1) + c0047b86: b7dd j c0047b6c -00000000c00479b8 : +00000000c0047b88 : exchange_one_byte(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:350 @@ -195513,21 +195711,21 @@ static void exchange_one_byte(void *a, void *b, size_t size) { uint8_t *bp = (uint8_t *)b; uint8_t t = *ap; *ap = *bp; - c00479b8: 0005c703 lbu a4,0(a1) + c0047b88: 0005c703 lbu a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:349 uint8_t t = *ap; - c00479bc: 00054783 lbu a5,0(a0) + c0047b8c: 00054783 lbu a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:350 *ap = *bp; - c00479c0: 00e50023 sb a4,0(a0) + c0047b90: 00e50023 sb a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:351 *bp = t; - c00479c4: 00f58023 sb a5,0(a1) + c0047b94: 00f58023 sb a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:352 } - c00479c8: 8082 ret + c0047b98: 8082 ret -00000000c00479ca : +00000000c0047b9a : exchange_int16s(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:358 @@ -195536,36 +195734,36 @@ static void exchange_int16s(void *a, void *b, size_t size) { uint16_t *bp = (uint16_t *)b; for (size /= sizeof(uint16_t); size-- != 0;) { - c00479ca: 9a79 andi a2,a2,-2 - c00479cc: 962e add a2,a2,a1 + c0047b9a: 9a79 andi a2,a2,-2 + c0047b9c: 962e add a2,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:358 (discriminator 1) - c00479ce: 00c59363 bne a1,a2,c00479d4 + c0047b9e: 00c59363 bne a1,a2,c0047ba4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:363 uint16_t t = *ap; *ap++ = *bp; *bp++ = t; } } - c00479d2: 8082 ret + c0047ba2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:360 *ap++ = *bp; - c00479d4: 0005d703 lhu a4,0(a1) + c0047ba4: 0005d703 lhu a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:359 uint16_t t = *ap; - c00479d8: 00055783 lhu a5,0(a0) + c0047ba8: 00055783 lhu a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:361 *bp++ = t; - c00479dc: 0589 addi a1,a1,2 + c0047bac: 0589 addi a1,a1,2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:360 *ap++ = *bp; - c00479de: 0509 addi a0,a0,2 - c00479e0: fee51f23 sh a4,-2(a0) + c0047bae: 0509 addi a0,a0,2 + c0047bb0: fee51f23 sh a4,-2(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:361 *bp++ = t; - c00479e4: fef59f23 sh a5,-2(a1) - c00479e8: b7dd j c00479ce + c0047bb4: fef59f23 sh a5,-2(a1) + c0047bb8: b7dd j c0047b9e -00000000c00479ea : +00000000c0047bba : exchange_one_int16(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:369 @@ -195574,21 +195772,21 @@ static void exchange_one_int16(void *a, void *b, size_t size) { uint16_t *bp = (uint16_t *)b; uint16_t t = *ap; *ap = *bp; - c00479ea: 0005d703 lhu a4,0(a1) + c0047bba: 0005d703 lhu a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:368 uint16_t t = *ap; - c00479ee: 00055783 lhu a5,0(a0) + c0047bbe: 00055783 lhu a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:369 *ap = *bp; - c00479f2: 00e51023 sh a4,0(a0) + c0047bc2: 00e51023 sh a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:370 *bp = t; - c00479f6: 00f59023 sh a5,0(a1) + c0047bc6: 00f59023 sh a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:371 } - c00479fa: 8082 ret + c0047bca: 8082 ret -00000000c00479fc : +00000000c0047bcc : exchange_int32s(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:377 @@ -195597,36 +195795,36 @@ static void exchange_int32s(void *a, void *b, size_t size) { uint32_t *bp = (uint32_t *)b; for (size /= sizeof(uint32_t); size-- != 0;) { - c00479fc: 9a71 andi a2,a2,-4 - c00479fe: 962e add a2,a2,a1 + c0047bcc: 9a71 andi a2,a2,-4 + c0047bce: 962e add a2,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:377 (discriminator 1) - c0047a00: 00c59363 bne a1,a2,c0047a06 + c0047bd0: 00c59363 bne a1,a2,c0047bd6 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:382 uint32_t t = *ap; *ap++ = *bp; *bp++ = t; } } - c0047a04: 8082 ret + c0047bd4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:379 *ap++ = *bp; - c0047a06: 4198 lw a4,0(a1) + c0047bd6: 4198 lw a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:378 uint32_t t = *ap; - c0047a08: 411c lw a5,0(a0) + c0047bd8: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:380 *bp++ = t; - c0047a0a: 0591 addi a1,a1,4 + c0047bda: 0591 addi a1,a1,4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:379 *ap++ = *bp; - c0047a0c: 0511 addi a0,a0,4 - c0047a0e: fee52e23 sw a4,-4(a0) + c0047bdc: 0511 addi a0,a0,4 + c0047bde: fee52e23 sw a4,-4(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:380 *bp++ = t; - c0047a12: fef5ae23 sw a5,-4(a1) - c0047a16: b7ed j c0047a00 + c0047be2: fef5ae23 sw a5,-4(a1) + c0047be6: b7ed j c0047bd0 -00000000c0047a18 : +00000000c0047be8 : exchange_one_int32(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:388 @@ -195635,21 +195833,21 @@ static void exchange_one_int32(void *a, void *b, size_t size) { uint32_t *bp = (uint32_t *)b; uint32_t t = *ap; *ap = *bp; - c0047a18: 4198 lw a4,0(a1) + c0047be8: 4198 lw a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:387 uint32_t t = *ap; - c0047a1a: 411c lw a5,0(a0) + c0047bea: 411c lw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:388 *ap = *bp; - c0047a1c: c118 sw a4,0(a0) + c0047bec: c118 sw a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:389 *bp = t; - c0047a1e: c19c sw a5,0(a1) + c0047bee: c19c sw a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:390 } - c0047a20: 8082 ret + c0047bf0: 8082 ret -00000000c0047a22 : +00000000c0047bf2 : exchange_int64s(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:396 @@ -195658,36 +195856,36 @@ static void exchange_int64s(void *a, void *b, size_t size) { uint64_t *bp = (uint64_t *)b; for (size /= sizeof(uint64_t); size-- != 0;) { - c0047a22: 9a61 andi a2,a2,-8 - c0047a24: 962e add a2,a2,a1 + c0047bf2: 9a61 andi a2,a2,-8 + c0047bf4: 962e add a2,a2,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:396 (discriminator 1) - c0047a26: 00c59363 bne a1,a2,c0047a2c + c0047bf6: 00c59363 bne a1,a2,c0047bfc /Users/Luppy/riscv/quickjs-nuttx/cutils.c:401 uint64_t t = *ap; *ap++ = *bp; *bp++ = t; } } - c0047a2a: 8082 ret + c0047bfa: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:398 *ap++ = *bp; - c0047a2c: 6198 ld a4,0(a1) + c0047bfc: 6198 ld a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:397 uint64_t t = *ap; - c0047a2e: 611c ld a5,0(a0) + c0047bfe: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:399 *bp++ = t; - c0047a30: 05a1 addi a1,a1,8 + c0047c00: 05a1 addi a1,a1,8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:398 *ap++ = *bp; - c0047a32: 0521 addi a0,a0,8 - c0047a34: fee53c23 sd a4,-8(a0) + c0047c02: 0521 addi a0,a0,8 + c0047c04: fee53c23 sd a4,-8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:399 *bp++ = t; - c0047a38: fef5bc23 sd a5,-8(a1) - c0047a3c: b7ed j c0047a26 + c0047c08: fef5bc23 sd a5,-8(a1) + c0047c0c: b7ed j c0047bf6 -00000000c0047a3e : +00000000c0047c0e : exchange_one_int64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:407 @@ -195696,21 +195894,21 @@ static void exchange_one_int64(void *a, void *b, size_t size) { uint64_t *bp = (uint64_t *)b; uint64_t t = *ap; *ap = *bp; - c0047a3e: 6198 ld a4,0(a1) + c0047c0e: 6198 ld a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:406 uint64_t t = *ap; - c0047a40: 611c ld a5,0(a0) + c0047c10: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:407 *ap = *bp; - c0047a42: e118 sd a4,0(a0) + c0047c12: e118 sd a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:408 *bp = t; - c0047a44: e19c sd a5,0(a1) + c0047c14: e19c sd a5,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:409 } - c0047a46: 8082 ret + c0047c16: 8082 ret -00000000c0047a48 : +00000000c0047c18 : exchange_int128s(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:415 @@ -195719,10 +195917,10 @@ static void exchange_int128s(void *a, void *b, size_t size) { uint64_t *bp = (uint64_t *)b; for (size /= sizeof(uint64_t) * 2; size-- != 0; ap += 2, bp += 2) { - c0047a48: 9a41 andi a2,a2,-16 - c0047a4a: 962a add a2,a2,a0 + c0047c18: 9a41 andi a2,a2,-16 + c0047c1a: 962a add a2,a2,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:415 (discriminator 1) - c0047a4c: 00c51363 bne a0,a2,c0047a52 + c0047c1c: 00c51363 bne a0,a2,c0047c22 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:423 ap[0] = bp[0]; ap[1] = bp[1]; @@ -195730,40 +195928,40 @@ static void exchange_int128s(void *a, void *b, size_t size) { bp[1] = u; } } - c0047a50: 8082 ret + c0047c20: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:418 (discriminator 3) ap[0] = bp[0]; - c0047a52: 6194 ld a3,0(a1) + c0047c22: 6194 ld a3,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:416 (discriminator 3) uint64_t t = ap[0]; - c0047a54: 6118 ld a4,0(a0) + c0047c24: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:417 (discriminator 3) uint64_t u = ap[1]; - c0047a56: 651c ld a5,8(a0) + c0047c26: 651c ld a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:418 (discriminator 3) ap[0] = bp[0]; - c0047a58: e114 sd a3,0(a0) + c0047c28: e114 sd a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:419 (discriminator 3) ap[1] = bp[1]; - c0047a5a: 6594 ld a3,8(a1) + c0047c2a: 6594 ld a3,8(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:415 (discriminator 3) for (size /= sizeof(uint64_t) * 2; size-- != 0; ap += 2, bp += 2) { - c0047a5c: 0541 addi a0,a0,16 - c0047a5e: 05c1 addi a1,a1,16 + c0047c2c: 0541 addi a0,a0,16 + c0047c2e: 05c1 addi a1,a1,16 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:419 (discriminator 3) ap[1] = bp[1]; - c0047a60: fed53c23 sd a3,-8(a0) + c0047c30: fed53c23 sd a3,-8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:420 (discriminator 3) bp[0] = t; - c0047a64: fee5b823 sd a4,-16(a1) + c0047c34: fee5b823 sd a4,-16(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:421 (discriminator 3) bp[1] = u; - c0047a68: fef5bc23 sd a5,-8(a1) + c0047c38: fef5bc23 sd a5,-8(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:415 (discriminator 3) for (size /= sizeof(uint64_t) * 2; size-- != 0; ap += 2, bp += 2) { - c0047a6c: b7c5 j c0047a4c + c0047c3c: b7c5 j c0047c1c -00000000c0047a6e : +00000000c0047c3e : exchange_one_int128(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:430 static void exchange_one_int128(void *a, void *b, size_t size) { @@ -195772,1009 +195970,1009 @@ static void exchange_one_int128(void *a, void *b, size_t size) { uint64_t t = ap[0]; uint64_t u = ap[1]; ap[0] = bp[0]; - c0047a6e: 6194 ld a3,0(a1) + c0047c3e: 6194 ld a3,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:428 uint64_t t = ap[0]; - c0047a70: 6118 ld a4,0(a0) + c0047c40: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:429 uint64_t u = ap[1]; - c0047a72: 651c ld a5,8(a0) + c0047c42: 651c ld a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:430 ap[0] = bp[0]; - c0047a74: e114 sd a3,0(a0) + c0047c44: e114 sd a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:431 ap[1] = bp[1]; - c0047a76: 6594 ld a3,8(a1) - c0047a78: e514 sd a3,8(a0) + c0047c46: 6594 ld a3,8(a1) + c0047c48: e514 sd a3,8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:432 bp[0] = t; - c0047a7a: e198 sd a4,0(a1) + c0047c4a: e198 sd a4,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:433 bp[1] = u; - c0047a7c: e59c sd a5,8(a1) + c0047c4c: e59c sd a5,8(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:434 } - c0047a7e: 8082 ret + c0047c4e: 8082 ret -00000000c0047a80 : +00000000c0047c50 : exchange_func(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:437 static inline exchange_f exchange_func(const void *base, size_t size) { switch (((uintptr_t)base | (uintptr_t)size) & 15) { - c0047a80: 8d4d or a0,a0,a1 - c0047a82: 893d andi a0,a0,15 - c0047a84: 47b9 li a5,14 - c0047a86: 06a7eb63 bltu a5,a0,c0047afc - c0047a8a: 00029717 auipc a4,0x29 - c0047a8e: de670713 addi a4,a4,-538 # c0070870 - c0047a92: 050a slli a0,a0,0x2 - c0047a94: 953a add a0,a0,a4 - c0047a96: 411c lw a5,0(a0) - c0047a98: 97ba add a5,a5,a4 - c0047a9a: 8782 jr a5 + c0047c50: 8d4d or a0,a0,a1 + c0047c52: 893d andi a0,a0,15 + c0047c54: 47b9 li a5,14 + c0047c56: 06a7eb63 bltu a5,a0,c0047ccc + c0047c5a: 00029717 auipc a4,0x29 + c0047c5e: e7670713 addi a4,a4,-394 # c0070ad0 + c0047c62: 050a slli a0,a0,0x2 + c0047c64: 953a add a0,a0,a4 + c0047c66: 411c lw a5,0(a0) + c0047c68: 97ba add a5,a5,a4 + c0047c6a: 8782 jr a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:439 case 0: if (size == sizeof(uint64_t) * 2) - c0047a9c: 47c1 li a5,16 + c0047c6c: 47c1 li a5,16 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:440 return exchange_one_int128; - c0047a9e: 00000517 auipc a0,0x0 - c0047aa2: fd050513 addi a0,a0,-48 # c0047a6e + c0047c6e: 00000517 auipc a0,0x0 + c0047c72: fd050513 addi a0,a0,-48 # c0047c3e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:439 if (size == sizeof(uint64_t) * 2) - c0047aa6: 06f58663 beq a1,a5,c0047b12 + c0047c76: 06f58663 beq a1,a5,c0047ce2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:442 else return exchange_int128s; - c0047aaa: 00000517 auipc a0,0x0 - c0047aae: f9e50513 addi a0,a0,-98 # c0047a48 - c0047ab2: 8082 ret + c0047c7a: 00000517 auipc a0,0x0 + c0047c7e: f9e50513 addi a0,a0,-98 # c0047c18 + c0047c82: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:444 case 8: if (size == sizeof(uint64_t)) - c0047ab4: 47a1 li a5,8 + c0047c84: 47a1 li a5,8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:445 return exchange_one_int64; - c0047ab6: 00000517 auipc a0,0x0 - c0047aba: f8850513 addi a0,a0,-120 # c0047a3e + c0047c86: 00000517 auipc a0,0x0 + c0047c8a: f8850513 addi a0,a0,-120 # c0047c0e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:444 if (size == sizeof(uint64_t)) - c0047abe: 04f58a63 beq a1,a5,c0047b12 + c0047c8e: 04f58a63 beq a1,a5,c0047ce2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:447 else return exchange_int64s; - c0047ac2: 00000517 auipc a0,0x0 - c0047ac6: f6050513 addi a0,a0,-160 # c0047a22 - c0047aca: 8082 ret + c0047c92: 00000517 auipc a0,0x0 + c0047c96: f6050513 addi a0,a0,-160 # c0047bf2 + c0047c9a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:450 case 4: case 12: if (size == sizeof(uint32_t)) - c0047acc: 4791 li a5,4 + c0047c9c: 4791 li a5,4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:451 return exchange_one_int32; - c0047ace: 00000517 auipc a0,0x0 - c0047ad2: f4a50513 addi a0,a0,-182 # c0047a18 + c0047c9e: 00000517 auipc a0,0x0 + c0047ca2: f4a50513 addi a0,a0,-182 # c0047be8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:450 if (size == sizeof(uint32_t)) - c0047ad6: 02f58e63 beq a1,a5,c0047b12 + c0047ca6: 02f58e63 beq a1,a5,c0047ce2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:453 else return exchange_int32s; - c0047ada: 00000517 auipc a0,0x0 - c0047ade: f2250513 addi a0,a0,-222 # c00479fc - c0047ae2: 8082 ret + c0047caa: 00000517 auipc a0,0x0 + c0047cae: f2250513 addi a0,a0,-222 # c0047bcc + c0047cb2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:458 case 2: case 6: case 10: case 14: if (size == sizeof(uint16_t)) - c0047ae4: 4789 li a5,2 + c0047cb4: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:459 return exchange_one_int16; - c0047ae6: 00000517 auipc a0,0x0 - c0047aea: f0450513 addi a0,a0,-252 # c00479ea + c0047cb6: 00000517 auipc a0,0x0 + c0047cba: f0450513 addi a0,a0,-252 # c0047bba /Users/Luppy/riscv/quickjs-nuttx/cutils.c:458 if (size == sizeof(uint16_t)) - c0047aee: 02f58263 beq a1,a5,c0047b12 + c0047cbe: 02f58263 beq a1,a5,c0047ce2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:461 else return exchange_int16s; - c0047af2: 00000517 auipc a0,0x0 - c0047af6: ed850513 addi a0,a0,-296 # c00479ca - c0047afa: 8082 ret + c0047cc2: 00000517 auipc a0,0x0 + c0047cc6: ed850513 addi a0,a0,-296 # c0047b9a + c0047cca: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:463 default: if (size == 1) - c0047afc: 4785 li a5,1 + c0047ccc: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:464 return exchange_one_byte; - c0047afe: 00000517 auipc a0,0x0 - c0047b02: eba50513 addi a0,a0,-326 # c00479b8 + c0047cce: 00000517 auipc a0,0x0 + c0047cd2: eba50513 addi a0,a0,-326 # c0047b88 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:463 if (size == 1) - c0047b06: 00f58663 beq a1,a5,c0047b12 + c0047cd6: 00f58663 beq a1,a5,c0047ce2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:466 else return exchange_bytes; - c0047b0a: 00000517 auipc a0,0x0 - c0047b0e: e9050513 addi a0,a0,-368 # c004799a + c0047cda: 00000517 auipc a0,0x0 + c0047cde: e9050513 addi a0,a0,-368 # c0047b6a /Users/Luppy/riscv/quickjs-nuttx/cutils.c:468 } } - c0047b12: 8082 ret + c0047ce2: 8082 ret -00000000c0047b14 : +00000000c0047ce4 : dbuf_default_realloc(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:85 { - c0047b14: 852e mv a0,a1 + c0047ce4: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:86 return realloc(ptr, size); - c0047b16: 85b2 mv a1,a2 - c0047b18: 3400b06f j c0052e58 + c0047ce6: 85b2 mv a1,a2 + c0047ce8: 3400b06f j c0053028 -00000000c0047b1c : +00000000c0047cec : pstrcpy(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:37 if (buf_size <= 0) - c0047b1c: 02b05063 blez a1,c0047b3c + c0047cec: 02b05063 blez a1,c0047d0c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:42 if (c == 0 || q >= buf + buf_size - 1) - c0047b20: 15fd addi a1,a1,-1 - c0047b22: 95aa add a1,a1,a0 + c0047cf0: 15fd addi a1,a1,-1 + c0047cf2: 95aa add a1,a1,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:41 c = *str++; - c0047b24: 00064783 lbu a5,0(a2) - c0047b28: 0605 addi a2,a2,1 + c0047cf4: 00064783 lbu a5,0(a2) + c0047cf8: 0605 addi a2,a2,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:42 if (c == 0 || q >= buf + buf_size - 1) - c0047b2a: c799 beqz a5,c0047b38 - c0047b2c: 00b57663 bgeu a0,a1,c0047b38 + c0047cfa: c799 beqz a5,c0047d08 + c0047cfc: 00b57663 bgeu a0,a1,c0047d08 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:44 *q++ = c; - c0047b30: 0505 addi a0,a0,1 - c0047b32: fef50fa3 sb a5,-1(a0) + c0047d00: 0505 addi a0,a0,1 + c0047d02: fef50fa3 sb a5,-1(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:41 c = *str++; - c0047b36: b7fd j c0047b24 + c0047d06: b7fd j c0047cf4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:46 *q = '\0'; - c0047b38: 00050023 sb zero,0(a0) + c0047d08: 00050023 sb zero,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:47 } - c0047b3c: 8082 ret + c0047d0c: 8082 ret -00000000c0047b3e : +00000000c0047d0e : pstrcat(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:51 { - c0047b3e: 7179 addi sp,sp,-48 - c0047b40: f022 sd s0,32(sp) - c0047b42: ec26 sd s1,24(sp) - c0047b44: e432 sd a2,8(sp) - c0047b46: f406 sd ra,40(sp) - c0047b48: 842a mv s0,a0 - c0047b4a: 84ae mv s1,a1 + c0047d0e: 7179 addi sp,sp,-48 + c0047d10: f022 sd s0,32(sp) + c0047d12: ec26 sd s1,24(sp) + c0047d14: e432 sd a2,8(sp) + c0047d16: f406 sd ra,40(sp) + c0047d18: 842a mv s0,a0 + c0047d1a: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:53 len = strlen(buf); - c0047b4c: 6650e0ef jal ra,c00569b0 - c0047b50: 2501 sext.w a0,a0 + c0047d1c: 6650e0ef jal ra,c0056b80 + c0047d20: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:54 if (len < buf_size) - c0047b52: 6622 ld a2,8(sp) - c0047b54: 00955763 bge a0,s1,c0047b62 + c0047d22: 6622 ld a2,8(sp) + c0047d24: 00955763 bge a0,s1,c0047d32 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:55 pstrcpy(buf + len, buf_size - len, s); - c0047b58: 40a485bb subw a1,s1,a0 - c0047b5c: 9522 add a0,a0,s0 - c0047b5e: fbfff0ef jal ra,c0047b1c + c0047d28: 40a485bb subw a1,s1,a0 + c0047d2c: 9522 add a0,a0,s0 + c0047d2e: fbfff0ef jal ra,c0047cec /Users/Luppy/riscv/quickjs-nuttx/cutils.c:57 } - c0047b62: 70a2 ld ra,40(sp) - c0047b64: 8522 mv a0,s0 - c0047b66: 7402 ld s0,32(sp) - c0047b68: 64e2 ld s1,24(sp) - c0047b6a: 6145 addi sp,sp,48 - c0047b6c: 8082 ret + c0047d32: 70a2 ld ra,40(sp) + c0047d34: 8522 mv a0,s0 + c0047d36: 7402 ld s0,32(sp) + c0047d38: 64e2 ld s1,24(sp) + c0047d3a: 6145 addi sp,sp,48 + c0047d3c: 8082 ret -00000000c0047b6e : +00000000c0047d3e : strstart(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:60 { - c0047b6e: 87aa mv a5,a0 + c0047d3e: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:64 while (*q != '\0') { - c0047b70: 0005c703 lbu a4,0(a1) - c0047b74: e709 bnez a4,c0047b7e + c0047d40: 0005c703 lbu a4,0(a1) + c0047d44: e709 bnez a4,c0047d4e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:72 return 1; - c0047b76: 4505 li a0,1 + c0047d46: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:70 if (ptr) - c0047b78: ca19 beqz a2,c0047b8e + c0047d48: ca19 beqz a2,c0047d5e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:71 *ptr = p; - c0047b7a: e21c sd a5,0(a2) - c0047b7c: 8082 ret + c0047d4a: e21c sd a5,0(a2) + c0047d4c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:65 if (*p != *q) - c0047b7e: 0007c683 lbu a3,0(a5) - c0047b82: 00e69563 bne a3,a4,c0047b8c + c0047d4e: 0007c683 lbu a3,0(a5) + c0047d52: 00e69563 bne a3,a4,c0047d5c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:67 p++; - c0047b86: 0785 addi a5,a5,1 + c0047d56: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:68 q++; - c0047b88: 0585 addi a1,a1,1 - c0047b8a: b7dd j c0047b70 + c0047d58: 0585 addi a1,a1,1 + c0047d5a: b7dd j c0047d40 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:66 return 0; - c0047b8c: 4501 li a0,0 + c0047d5c: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:73 } - c0047b8e: 8082 ret + c0047d5e: 8082 ret -00000000c0047b90 : +00000000c0047d60 : has_suffix(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:76 { - c0047b90: 1101 addi sp,sp,-32 - c0047b92: e822 sd s0,16(sp) - c0047b94: e426 sd s1,8(sp) - c0047b96: e04a sd s2,0(sp) - c0047b98: ec06 sd ra,24(sp) - c0047b9a: 84ae mv s1,a1 - c0047b9c: 892a mv s2,a0 + c0047d60: 1101 addi sp,sp,-32 + c0047d62: e822 sd s0,16(sp) + c0047d64: e426 sd s1,8(sp) + c0047d66: e04a sd s2,0(sp) + c0047d68: ec06 sd ra,24(sp) + c0047d6a: 84ae mv s1,a1 + c0047d6c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:77 size_t len = strlen(str); - c0047b9e: 6130e0ef jal ra,c00569b0 - c0047ba2: 842a mv s0,a0 + c0047d6e: 6130e0ef jal ra,c0056b80 + c0047d72: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:78 size_t slen = strlen(suffix); - c0047ba4: 8526 mv a0,s1 - c0047ba6: 60b0e0ef jal ra,c00569b0 + c0047d74: 8526 mv a0,s1 + c0047d76: 60b0e0ef jal ra,c0056b80 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:79 return (len >= slen && !memcmp(str + len - slen, suffix, slen)); - c0047baa: 02a46163 bltu s0,a0,c0047bcc + c0047d7a: 02a46163 bltu s0,a0,c0047d9c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:79 (discriminator 1) - c0047bae: 8c09 sub s0,s0,a0 - c0047bb0: 862a mv a2,a0 - c0047bb2: 85a6 mv a1,s1 - c0047bb4: 00890533 add a0,s2,s0 - c0047bb8: 44b0e0ef jal ra,c0056802 - c0047bbc: 00153513 seqz a0,a0 + c0047d7e: 8c09 sub s0,s0,a0 + c0047d80: 862a mv a2,a0 + c0047d82: 85a6 mv a1,s1 + c0047d84: 00890533 add a0,s2,s0 + c0047d88: 44b0e0ef jal ra,c00569d2 + c0047d8c: 00153513 seqz a0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:80 (discriminator 6) } - c0047bc0: 60e2 ld ra,24(sp) - c0047bc2: 6442 ld s0,16(sp) - c0047bc4: 64a2 ld s1,8(sp) - c0047bc6: 6902 ld s2,0(sp) - c0047bc8: 6105 addi sp,sp,32 - c0047bca: 8082 ret + c0047d90: 60e2 ld ra,24(sp) + c0047d92: 6442 ld s0,16(sp) + c0047d94: 64a2 ld s1,8(sp) + c0047d96: 6902 ld s2,0(sp) + c0047d98: 6105 addi sp,sp,32 + c0047d9a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:79 return (len >= slen && !memcmp(str + len - slen, suffix, slen)); - c0047bcc: 4501 li a0,0 - c0047bce: bfcd j c0047bc0 + c0047d9c: 4501 li a0,0 + c0047d9e: bfcd j c0047d90 -00000000c0047bd0 : +00000000c0047da0 : dbuf_init2(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:90 { - c0047bd0: 1101 addi sp,sp,-32 - c0047bd2: e822 sd s0,16(sp) - c0047bd4: e04a sd s2,0(sp) - c0047bd6: 8432 mv s0,a2 - c0047bd8: 892e mv s2,a1 + c0047da0: 1101 addi sp,sp,-32 + c0047da2: e822 sd s0,16(sp) + c0047da4: e04a sd s2,0(sp) + c0047da6: 8432 mv s0,a2 + c0047da8: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:91 memset(s, 0, sizeof(*s)); - c0047bda: 03000613 li a2,48 - c0047bde: 4581 li a1,0 + c0047daa: 03000613 li a2,48 + c0047dae: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:90 { - c0047be0: e426 sd s1,8(sp) - c0047be2: ec06 sd ra,24(sp) - c0047be4: 84aa mv s1,a0 + c0047db0: e426 sd s1,8(sp) + c0047db2: ec06 sd ra,24(sp) + c0047db4: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:91 memset(s, 0, sizeof(*s)); - c0047be6: 48b0e0ef jal ra,c0056870 + c0047db6: 48b0e0ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:92 if (!realloc_func) - c0047bea: e409 bnez s0,c0047bf4 + c0047dba: e409 bnez s0,c0047dc4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:93 realloc_func = dbuf_default_realloc; - c0047bec: 00000417 auipc s0,0x0 - c0047bf0: f2840413 addi s0,s0,-216 # c0047b14 + c0047dbc: 00000417 auipc s0,0x0 + c0047dc0: f2840413 addi s0,s0,-216 # c0047ce4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:95 s->realloc_func = realloc_func; - c0047bf4: f080 sd s0,32(s1) + c0047dc4: f080 sd s0,32(s1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:96 } - c0047bf6: 60e2 ld ra,24(sp) - c0047bf8: 6442 ld s0,16(sp) + c0047dc6: 60e2 ld ra,24(sp) + c0047dc8: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:94 s->opaque = opaque; - c0047bfa: 0324b423 sd s2,40(s1) + c0047dca: 0324b423 sd s2,40(s1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:96 } - c0047bfe: 64a2 ld s1,8(sp) - c0047c00: 6902 ld s2,0(sp) - c0047c02: 6105 addi sp,sp,32 - c0047c04: 8082 ret + c0047dce: 64a2 ld s1,8(sp) + c0047dd0: 6902 ld s2,0(sp) + c0047dd2: 6105 addi sp,sp,32 + c0047dd4: 8082 ret -00000000c0047c06 : +00000000c0047dd6 : dbuf_init(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:100 dbuf_init2(s, NULL, NULL); - c0047c06: 4601 li a2,0 - c0047c08: 4581 li a1,0 - c0047c0a: fc7ff06f j c0047bd0 + c0047dd6: 4601 li a2,0 + c0047dd8: 4581 li a1,0 + c0047dda: fc7ff06f j c0047da0 -00000000c0047c0e : +00000000c0047dde : dbuf_realloc(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:105 { - c0047c0e: 1101 addi sp,sp,-32 - c0047c10: e04a sd s2,0(sp) - c0047c12: ec06 sd ra,24(sp) - c0047c14: e822 sd s0,16(sp) - c0047c16: e426 sd s1,8(sp) + c0047dde: 1101 addi sp,sp,-32 + c0047de0: e04a sd s2,0(sp) + c0047de2: ec06 sd ra,24(sp) + c0047de4: e822 sd s0,16(sp) + c0047de6: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:108 if (new_size > s->allocated_size) { - c0047c18: 6904 ld s1,16(a0) + c0047de8: 6904 ld s1,16(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:122 return 0; - c0047c1a: 4901 li s2,0 + c0047dea: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:108 if (new_size > s->allocated_size) { - c0047c1c: 02b4fa63 bgeu s1,a1,c0047c50 + c0047dec: 02b4fa63 bgeu s1,a1,c0047e20 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:109 if (s->error) - c0047c20: 01852903 lw s2,24(a0) - c0047c24: 842a mv s0,a0 - c0047c26: 02091163 bnez s2,c0047c48 + c0047df0: 01852903 lw s2,24(a0) + c0047df4: 842a mv s0,a0 + c0047df6: 02091163 bnez s2,c0047e18 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:111 size = s->allocated_size * 3 / 2; - c0047c2a: 460d li a2,3 - c0047c2c: 02c484b3 mul s1,s1,a2 - c0047c30: 8085 srli s1,s1,0x1 - c0047c32: 00b4f363 bgeu s1,a1,c0047c38 - c0047c36: 84ae mv s1,a1 + c0047dfa: 460d li a2,3 + c0047dfc: 02c484b3 mul s1,s1,a2 + c0047e00: 8085 srli s1,s1,0x1 + c0047e02: 00b4f363 bgeu s1,a1,c0047e08 + c0047e06: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:114 new_buf = s->realloc_func(s->opaque, s->buf, new_size); - c0047c38: 701c ld a5,32(s0) - c0047c3a: 600c ld a1,0(s0) - c0047c3c: 7408 ld a0,40(s0) - c0047c3e: 8626 mv a2,s1 - c0047c40: 9782 jalr a5 + c0047e08: 701c ld a5,32(s0) + c0047e0a: 600c ld a1,0(s0) + c0047e0c: 7408 ld a0,40(s0) + c0047e0e: 8626 mv a2,s1 + c0047e10: 9782 jalr a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:115 if (!new_buf) { - c0047c42: e509 bnez a0,c0047c4c + c0047e12: e509 bnez a0,c0047e1c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:116 s->error = TRUE; - c0047c44: 4785 li a5,1 - c0047c46: cc1c sw a5,24(s0) + c0047e14: 4785 li a5,1 + c0047e16: cc1c sw a5,24(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:110 return -1; - c0047c48: 597d li s2,-1 - c0047c4a: a019 j c0047c50 + c0047e18: 597d li s2,-1 + c0047e1a: a019 j c0047e20 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:119 s->buf = new_buf; - c0047c4c: e008 sd a0,0(s0) + c0047e1c: e008 sd a0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:120 s->allocated_size = new_size; - c0047c4e: e804 sd s1,16(s0) + c0047e1e: e804 sd s1,16(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:123 } - c0047c50: 60e2 ld ra,24(sp) - c0047c52: 6442 ld s0,16(sp) - c0047c54: 64a2 ld s1,8(sp) - c0047c56: 854a mv a0,s2 - c0047c58: 6902 ld s2,0(sp) - c0047c5a: 6105 addi sp,sp,32 - c0047c5c: 8082 ret + c0047e20: 60e2 ld ra,24(sp) + c0047e22: 6442 ld s0,16(sp) + c0047e24: 64a2 ld s1,8(sp) + c0047e26: 854a mv a0,s2 + c0047e28: 6902 ld s2,0(sp) + c0047e2a: 6105 addi sp,sp,32 + c0047e2c: 8082 ret -00000000c0047c5e : +00000000c0047e2e : dbuf_write(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:126 { - c0047c5e: 7139 addi sp,sp,-64 - c0047c60: e852 sd s4,16(sp) + c0047e2e: 7139 addi sp,sp,-64 + c0047e30: e852 sd s4,16(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:128 end = offset + len; - c0047c62: 00d58a33 add s4,a1,a3 + c0047e32: 00d58a33 add s4,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:126 { - c0047c66: f04a sd s2,32(sp) - c0047c68: 892e mv s2,a1 + c0047e36: f04a sd s2,32(sp) + c0047e38: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:129 if (dbuf_realloc(s, end)) - c0047c6a: 85d2 mv a1,s4 + c0047e3a: 85d2 mv a1,s4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:126 { - c0047c6c: f822 sd s0,48(sp) - c0047c6e: f426 sd s1,40(sp) - c0047c70: ec4e sd s3,24(sp) - c0047c72: e456 sd s5,8(sp) - c0047c74: fc06 sd ra,56(sp) - c0047c76: 84aa mv s1,a0 - c0047c78: 8ab2 mv s5,a2 - c0047c7a: 89b6 mv s3,a3 + c0047e3c: f822 sd s0,48(sp) + c0047e3e: f426 sd s1,40(sp) + c0047e40: ec4e sd s3,24(sp) + c0047e42: e456 sd s5,8(sp) + c0047e44: fc06 sd ra,56(sp) + c0047e46: 84aa mv s1,a0 + c0047e48: 8ab2 mv s5,a2 + c0047e4a: 89b6 mv s3,a3 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:129 if (dbuf_realloc(s, end)) - c0047c7c: f93ff0ef jal ra,c0047c0e + c0047e4c: f93ff0ef jal ra,c0047dde /Users/Luppy/riscv/quickjs-nuttx/cutils.c:130 return -1; - c0047c80: 547d li s0,-1 + c0047e50: 547d li s0,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:129 if (dbuf_realloc(s, end)) - c0047c82: ed09 bnez a0,c0047c9c - c0047c84: 842a mv s0,a0 + c0047e52: ed09 bnez a0,c0047e6c + c0047e54: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:131 memcpy(s->buf + offset, data, len); - c0047c86: 6088 ld a0,0(s1) - c0047c88: 864e mv a2,s3 - c0047c8a: 85d6 mv a1,s5 - c0047c8c: 954a add a0,a0,s2 - c0047c8e: 54d0e0ef jal ra,c00569da + c0047e56: 6088 ld a0,0(s1) + c0047e58: 864e mv a2,s3 + c0047e5a: 85d6 mv a1,s5 + c0047e5c: 954a add a0,a0,s2 + c0047e5e: 54d0e0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/cutils.c:132 if (end > s->size) - c0047c92: 649c ld a5,8(s1) - c0047c94: 0147f463 bgeu a5,s4,c0047c9c + c0047e62: 649c ld a5,8(s1) + c0047e64: 0147f463 bgeu a5,s4,c0047e6c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:133 s->size = end; - c0047c98: 0144b423 sd s4,8(s1) + c0047e68: 0144b423 sd s4,8(s1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:135 } - c0047c9c: 70e2 ld ra,56(sp) - c0047c9e: 8522 mv a0,s0 - c0047ca0: 7442 ld s0,48(sp) - c0047ca2: 74a2 ld s1,40(sp) - c0047ca4: 7902 ld s2,32(sp) - c0047ca6: 69e2 ld s3,24(sp) - c0047ca8: 6a42 ld s4,16(sp) - c0047caa: 6aa2 ld s5,8(sp) - c0047cac: 6121 addi sp,sp,64 - c0047cae: 8082 ret - -00000000c0047cb0 : + c0047e6c: 70e2 ld ra,56(sp) + c0047e6e: 8522 mv a0,s0 + c0047e70: 7442 ld s0,48(sp) + c0047e72: 74a2 ld s1,40(sp) + c0047e74: 7902 ld s2,32(sp) + c0047e76: 69e2 ld s3,24(sp) + c0047e78: 6a42 ld s4,16(sp) + c0047e7a: 6aa2 ld s5,8(sp) + c0047e7c: 6121 addi sp,sp,64 + c0047e7e: 8082 ret + +00000000c0047e80 : dbuf_put(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:138 { - c0047cb0: 1101 addi sp,sp,-32 - c0047cb2: e822 sd s0,16(sp) - c0047cb4: e426 sd s1,8(sp) - c0047cb6: e04a sd s2,0(sp) - c0047cb8: ec06 sd ra,24(sp) + c0047e80: 1101 addi sp,sp,-32 + c0047e82: e822 sd s0,16(sp) + c0047e84: e426 sd s1,8(sp) + c0047e86: e04a sd s2,0(sp) + c0047e88: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:139 if (unlikely((s->size + len) > s->allocated_size)) { - c0047cba: 651c ld a5,8(a0) + c0047e8a: 651c ld a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:138 { - c0047cbc: 892e mv s2,a1 - c0047cbe: 842a mv s0,a0 + c0047e8c: 892e mv s2,a1 + c0047e8e: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:139 if (unlikely((s->size + len) > s->allocated_size)) { - c0047cc0: 00f605b3 add a1,a2,a5 - c0047cc4: 691c ld a5,16(a0) + c0047e90: 00f605b3 add a1,a2,a5 + c0047e94: 691c ld a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:138 { - c0047cc6: 84b2 mv s1,a2 + c0047e96: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:139 if (unlikely((s->size + len) > s->allocated_size)) { - c0047cc8: 02b7e363 bltu a5,a1,c0047cee + c0047e98: 02b7e363 bltu a5,a1,c0047ebe /Users/Luppy/riscv/quickjs-nuttx/cutils.c:143 memcpy(s->buf + s->size, data, len); - c0047ccc: 6008 ld a0,0(s0) - c0047cce: 641c ld a5,8(s0) - c0047cd0: 8626 mv a2,s1 - c0047cd2: 85ca mv a1,s2 - c0047cd4: 953e add a0,a0,a5 - c0047cd6: 5050e0ef jal ra,c00569da + c0047e9c: 6008 ld a0,0(s0) + c0047e9e: 641c ld a5,8(s0) + c0047ea0: 8626 mv a2,s1 + c0047ea2: 85ca mv a1,s2 + c0047ea4: 953e add a0,a0,a5 + c0047ea6: 5050e0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/cutils.c:144 s->size += len; - c0047cda: 6410 ld a2,8(s0) + c0047eaa: 6410 ld a2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:145 return 0; - c0047cdc: 4501 li a0,0 + c0047eac: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:144 s->size += len; - c0047cde: 9626 add a2,a2,s1 - c0047ce0: e410 sd a2,8(s0) + c0047eae: 9626 add a2,a2,s1 + c0047eb0: e410 sd a2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:146 } - c0047ce2: 60e2 ld ra,24(sp) - c0047ce4: 6442 ld s0,16(sp) - c0047ce6: 64a2 ld s1,8(sp) - c0047ce8: 6902 ld s2,0(sp) - c0047cea: 6105 addi sp,sp,32 - c0047cec: 8082 ret + c0047eb2: 60e2 ld ra,24(sp) + c0047eb4: 6442 ld s0,16(sp) + c0047eb6: 64a2 ld s1,8(sp) + c0047eb8: 6902 ld s2,0(sp) + c0047eba: 6105 addi sp,sp,32 + c0047ebc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:140 if (dbuf_realloc(s, s->size + len)) - c0047cee: f21ff0ef jal ra,c0047c0e - c0047cf2: dd69 beqz a0,c0047ccc + c0047ebe: f21ff0ef jal ra,c0047dde + c0047ec2: dd69 beqz a0,c0047e9c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:141 return -1; - c0047cf4: 557d li a0,-1 - c0047cf6: b7f5 j c0047ce2 + c0047ec4: 557d li a0,-1 + c0047ec6: b7f5 j c0047eb2 -00000000c0047cf8 : +00000000c0047ec8 : dbuf_put_self(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:149 { - c0047cf8: 1101 addi sp,sp,-32 - c0047cfa: e822 sd s0,16(sp) - c0047cfc: e426 sd s1,8(sp) - c0047cfe: e04a sd s2,0(sp) - c0047d00: ec06 sd ra,24(sp) + c0047ec8: 1101 addi sp,sp,-32 + c0047eca: e822 sd s0,16(sp) + c0047ecc: e426 sd s1,8(sp) + c0047ece: e04a sd s2,0(sp) + c0047ed0: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:150 if (unlikely((s->size + len) > s->allocated_size)) { - c0047d02: 651c ld a5,8(a0) + c0047ed2: 651c ld a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:149 { - c0047d04: 892e mv s2,a1 - c0047d06: 842a mv s0,a0 + c0047ed4: 892e mv s2,a1 + c0047ed6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:150 if (unlikely((s->size + len) > s->allocated_size)) { - c0047d08: 00f605b3 add a1,a2,a5 - c0047d0c: 691c ld a5,16(a0) + c0047ed8: 00f605b3 add a1,a2,a5 + c0047edc: 691c ld a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:149 { - c0047d0e: 84b2 mv s1,a2 + c0047ede: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:150 if (unlikely((s->size + len) > s->allocated_size)) { - c0047d10: 02b7e463 bltu a5,a1,c0047d38 + c0047ee0: 02b7e463 bltu a5,a1,c0047f08 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:154 memcpy(s->buf + s->size, s->buf + offset, len); - c0047d14: 601c ld a5,0(s0) - c0047d16: 6408 ld a0,8(s0) - c0047d18: 8626 mv a2,s1 - c0047d1a: 012785b3 add a1,a5,s2 - c0047d1e: 953e add a0,a0,a5 - c0047d20: 4bb0e0ef jal ra,c00569da + c0047ee4: 601c ld a5,0(s0) + c0047ee6: 6408 ld a0,8(s0) + c0047ee8: 8626 mv a2,s1 + c0047eea: 012785b3 add a1,a5,s2 + c0047eee: 953e add a0,a0,a5 + c0047ef0: 4bb0e0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/cutils.c:155 s->size += len; - c0047d24: 6410 ld a2,8(s0) + c0047ef4: 6410 ld a2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:156 return 0; - c0047d26: 4501 li a0,0 + c0047ef6: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:155 s->size += len; - c0047d28: 9626 add a2,a2,s1 - c0047d2a: e410 sd a2,8(s0) + c0047ef8: 9626 add a2,a2,s1 + c0047efa: e410 sd a2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:157 } - c0047d2c: 60e2 ld ra,24(sp) - c0047d2e: 6442 ld s0,16(sp) - c0047d30: 64a2 ld s1,8(sp) - c0047d32: 6902 ld s2,0(sp) - c0047d34: 6105 addi sp,sp,32 - c0047d36: 8082 ret + c0047efc: 60e2 ld ra,24(sp) + c0047efe: 6442 ld s0,16(sp) + c0047f00: 64a2 ld s1,8(sp) + c0047f02: 6902 ld s2,0(sp) + c0047f04: 6105 addi sp,sp,32 + c0047f06: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:151 if (dbuf_realloc(s, s->size + len)) - c0047d38: ed7ff0ef jal ra,c0047c0e - c0047d3c: dd61 beqz a0,c0047d14 + c0047f08: ed7ff0ef jal ra,c0047dde + c0047f0c: dd61 beqz a0,c0047ee4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:152 return -1; - c0047d3e: 557d li a0,-1 - c0047d40: b7f5 j c0047d2c + c0047f0e: 557d li a0,-1 + c0047f10: b7f5 j c0047efc -00000000c0047d42 : +00000000c0047f12 : dbuf_putc(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:160 { - c0047d42: 1101 addi sp,sp,-32 - c0047d44: 00b107a3 sb a1,15(sp) + c0047f12: 1101 addi sp,sp,-32 + c0047f14: 00b107a3 sb a1,15(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:161 return dbuf_put(s, &c, 1); - c0047d48: 4605 li a2,1 - c0047d4a: 00f10593 addi a1,sp,15 + c0047f18: 4605 li a2,1 + c0047f1a: 00f10593 addi a1,sp,15 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:160 { - c0047d4e: ec06 sd ra,24(sp) + c0047f1e: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:161 return dbuf_put(s, &c, 1); - c0047d50: f61ff0ef jal ra,c0047cb0 + c0047f20: f61ff0ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:162 } - c0047d54: 60e2 ld ra,24(sp) - c0047d56: 6105 addi sp,sp,32 - c0047d58: 8082 ret + c0047f24: 60e2 ld ra,24(sp) + c0047f26: 6105 addi sp,sp,32 + c0047f28: 8082 ret -00000000c0047d5a : +00000000c0047f2a : dbuf_putstr(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:165 { - c0047d5a: 1101 addi sp,sp,-32 - c0047d5c: e822 sd s0,16(sp) - c0047d5e: 842a mv s0,a0 + c0047f2a: 1101 addi sp,sp,-32 + c0047f2c: e822 sd s0,16(sp) + c0047f2e: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:166 return dbuf_put(s, (const uint8_t *)str, strlen(str)); - c0047d60: 852e mv a0,a1 + c0047f30: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:165 { - c0047d62: ec06 sd ra,24(sp) + c0047f32: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:166 return dbuf_put(s, (const uint8_t *)str, strlen(str)); - c0047d64: e42e sd a1,8(sp) - c0047d66: 44b0e0ef jal ra,c00569b0 - c0047d6a: 862a mv a2,a0 - c0047d6c: 8522 mv a0,s0 + c0047f34: e42e sd a1,8(sp) + c0047f36: 44b0e0ef jal ra,c0056b80 + c0047f3a: 862a mv a2,a0 + c0047f3c: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:167 } - c0047d6e: 6442 ld s0,16(sp) + c0047f3e: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:166 return dbuf_put(s, (const uint8_t *)str, strlen(str)); - c0047d70: 65a2 ld a1,8(sp) + c0047f40: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:167 } - c0047d72: 60e2 ld ra,24(sp) - c0047d74: 6105 addi sp,sp,32 + c0047f42: 60e2 ld ra,24(sp) + c0047f44: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:166 return dbuf_put(s, (const uint8_t *)str, strlen(str)); - c0047d76: f3bff06f j c0047cb0 + c0047f46: f3bff06f j c0047e80 -00000000c0047d7a : +00000000c0047f4a : dbuf_printf(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:171 { - c0047d7a: 7151 addi sp,sp,-240 - c0047d7c: edbe sd a5,216(sp) + c0047f4a: 7151 addi sp,sp,-240 + c0047f4c: edbe sd a5,216(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:176 va_start(ap, fmt); - c0047d7e: 019c addi a5,sp,192 + c0047f4e: 019c addi a5,sp,192 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:171 { - c0047d80: f922 sd s0,176(sp) - c0047d82: ed4e sd s3,152(sp) - c0047d84: e1b2 sd a2,192(sp) - c0047d86: e5b6 sd a3,200(sp) + c0047f50: f922 sd s0,176(sp) + c0047f52: ed4e sd s3,152(sp) + c0047f54: e1b2 sd a2,192(sp) + c0047f56: e5b6 sd a3,200(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:177 len = vsnprintf(buf, sizeof(buf), fmt, ap); - c0047d88: 862e mv a2,a1 - c0047d8a: 86be mv a3,a5 + c0047f58: 862e mv a2,a1 + c0047f5a: 86be mv a3,a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:171 { - c0047d8c: 842a mv s0,a0 - c0047d8e: 89ae mv s3,a1 + c0047f5c: 842a mv s0,a0 + c0047f5e: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:177 len = vsnprintf(buf, sizeof(buf), fmt, ap); - c0047d90: 0808 addi a0,sp,16 - c0047d92: 08000593 li a1,128 + c0047f60: 0808 addi a0,sp,16 + c0047f62: 08000593 li a1,128 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:171 { - c0047d96: f14a sd s2,160(sp) - c0047d98: e9ba sd a4,208(sp) + c0047f66: f14a sd s2,160(sp) + c0047f68: e9ba sd a4,208(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:176 va_start(ap, fmt); - c0047d9a: e43e sd a5,8(sp) + c0047f6a: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:171 { - c0047d9c: fd06 sd ra,184(sp) - c0047d9e: f526 sd s1,168(sp) - c0047da0: f1c2 sd a6,224(sp) - c0047da2: f5c6 sd a7,232(sp) + c0047f6c: fd06 sd ra,184(sp) + c0047f6e: f526 sd s1,168(sp) + c0047f70: f1c2 sd a6,224(sp) + c0047f72: f5c6 sd a7,232(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:177 len = vsnprintf(buf, sizeof(buf), fmt, ap); - c0047da4: 49c0c0ef jal ra,c0054240 + c0047f74: 49c0c0ef jal ra,c0054410 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:179 if (len < sizeof(buf)) { - c0047da8: 0005071b sext.w a4,a0 - c0047dac: 07f00793 li a5,127 + c0047f78: 0005071b sext.w a4,a0 + c0047f7c: 07f00793 li a5,127 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:177 len = vsnprintf(buf, sizeof(buf), fmt, ap); - c0047db0: 892a mv s2,a0 + c0047f80: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:179 if (len < sizeof(buf)) { - c0047db2: 02e7e063 bltu a5,a4,c0047dd2 + c0047f82: 02e7e063 bltu a5,a4,c0047fa2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:181 return dbuf_put(s, (uint8_t *)buf, len); - c0047db6: 862a mv a2,a0 - c0047db8: 080c addi a1,sp,16 - c0047dba: 8522 mv a0,s0 - c0047dbc: ef5ff0ef jal ra,c0047cb0 - c0047dc0: 84aa mv s1,a0 + c0047f86: 862a mv a2,a0 + c0047f88: 080c addi a1,sp,16 + c0047f8a: 8522 mv a0,s0 + c0047f8c: ef5ff0ef jal ra,c0047e80 + c0047f90: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:192 } - c0047dc2: 70ea ld ra,184(sp) - c0047dc4: 744a ld s0,176(sp) - c0047dc6: 790a ld s2,160(sp) - c0047dc8: 69ea ld s3,152(sp) - c0047dca: 8526 mv a0,s1 - c0047dcc: 74aa ld s1,168(sp) - c0047dce: 616d addi sp,sp,240 - c0047dd0: 8082 ret + c0047f92: 70ea ld ra,184(sp) + c0047f94: 744a ld s0,176(sp) + c0047f96: 790a ld s2,160(sp) + c0047f98: 69ea ld s3,152(sp) + c0047f9a: 8526 mv a0,s1 + c0047f9c: 74aa ld s1,168(sp) + c0047f9e: 616d addi sp,sp,240 + c0047fa0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:183 if (dbuf_realloc(s, s->size + len + 1)) - c0047dd2: 640c ld a1,8(s0) - c0047dd4: 0585 addi a1,a1,1 - c0047dd6: 95aa add a1,a1,a0 - c0047dd8: 8522 mv a0,s0 - c0047dda: e35ff0ef jal ra,c0047c0e - c0047dde: 84aa mv s1,a0 - c0047de0: e10d bnez a0,c0047e02 + c0047fa2: 640c ld a1,8(s0) + c0047fa4: 0585 addi a1,a1,1 + c0047fa6: 95aa add a1,a1,a0 + c0047fa8: 8522 mv a0,s0 + c0047faa: e35ff0ef jal ra,c0047dde + c0047fae: 84aa mv s1,a0 + c0047fb0: e10d bnez a0,c0047fd2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:185 va_start(ap, fmt); - c0047de2: 019c addi a5,sp,192 + c0047fb2: 019c addi a5,sp,192 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:186 vsnprintf((char *)(s->buf + s->size), s->allocated_size - s->size, - c0047de4: 680c ld a1,16(s0) - c0047de6: 6008 ld a0,0(s0) + c0047fb4: 680c ld a1,16(s0) + c0047fb6: 6008 ld a0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:185 va_start(ap, fmt); - c0047de8: e43e sd a5,8(sp) + c0047fb8: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:186 vsnprintf((char *)(s->buf + s->size), s->allocated_size - s->size, - c0047dea: 641c ld a5,8(s0) - c0047dec: 0194 addi a3,sp,192 - c0047dee: 864e mv a2,s3 - c0047df0: 8d9d sub a1,a1,a5 - c0047df2: 953e add a0,a0,a5 - c0047df4: 44c0c0ef jal ra,c0054240 + c0047fba: 641c ld a5,8(s0) + c0047fbc: 0194 addi a3,sp,192 + c0047fbe: 864e mv a2,s3 + c0047fc0: 8d9d sub a1,a1,a5 + c0047fc2: 953e add a0,a0,a5 + c0047fc4: 44c0c0ef jal ra,c0054410 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:189 s->size += len; - c0047df8: 6408 ld a0,8(s0) - c0047dfa: 992a add s2,s2,a0 - c0047dfc: 01243423 sd s2,8(s0) + c0047fc8: 6408 ld a0,8(s0) + c0047fca: 992a add s2,s2,a0 + c0047fcc: 01243423 sd s2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:191 return 0; - c0047e00: b7c9 j c0047dc2 + c0047fd0: b7c9 j c0047f92 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:184 return -1; - c0047e02: 54fd li s1,-1 - c0047e04: bf7d j c0047dc2 + c0047fd2: 54fd li s1,-1 + c0047fd4: bf7d j c0047f92 -00000000c0047e06 : +00000000c0047fd6 : dbuf_free(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:195 { - c0047e06: 1141 addi sp,sp,-16 - c0047e08: e022 sd s0,0(sp) - c0047e0a: e406 sd ra,8(sp) + c0047fd6: 1141 addi sp,sp,-16 + c0047fd8: e022 sd s0,0(sp) + c0047fda: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:198 if (s->buf) { - c0047e0c: 610c ld a1,0(a0) + c0047fdc: 610c ld a1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:195 { - c0047e0e: 842a mv s0,a0 + c0047fde: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:198 if (s->buf) { - c0047e10: c589 beqz a1,c0047e1a + c0047fe0: c589 beqz a1,c0047fea /Users/Luppy/riscv/quickjs-nuttx/cutils.c:199 s->realloc_func(s->opaque, s->buf, 0); - c0047e12: 711c ld a5,32(a0) - c0047e14: 7508 ld a0,40(a0) - c0047e16: 4601 li a2,0 - c0047e18: 9782 jalr a5 + c0047fe2: 711c ld a5,32(a0) + c0047fe4: 7508 ld a0,40(a0) + c0047fe6: 4601 li a2,0 + c0047fe8: 9782 jalr a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:201 memset(s, 0, sizeof(*s)); - c0047e1a: 8522 mv a0,s0 + c0047fea: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:202 } - c0047e1c: 6402 ld s0,0(sp) - c0047e1e: 60a2 ld ra,8(sp) + c0047fec: 6402 ld s0,0(sp) + c0047fee: 60a2 ld ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:201 memset(s, 0, sizeof(*s)); - c0047e20: 03000613 li a2,48 - c0047e24: 4581 li a1,0 + c0047ff0: 03000613 li a2,48 + c0047ff4: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:202 } - c0047e26: 0141 addi sp,sp,16 + c0047ff6: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:201 memset(s, 0, sizeof(*s)); - c0047e28: 2490e06f j c0056870 + c0047ff8: 2490e06f j c0056a40 -00000000c0047e2c : +00000000c0047ffc : unicode_to_utf8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:210 if (c < 0x80) { - c0047e2c: 07f00713 li a4,127 + c0047ffc: 07f00713 li a4,127 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:207 { - c0047e30: 87aa mv a5,a0 + c0048000: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:210 if (c < 0x80) { - c0047e32: 00b76763 bltu a4,a1,c0047e40 + c0048002: 00b76763 bltu a4,a1,c0048010 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:211 *q++ = c; - c0047e36: 0505 addi a0,a0,1 - c0047e38: 00b78023 sb a1,0(a5) + c0048006: 0505 addi a0,a0,1 + c0048008: 00b78023 sb a1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:238 return q - buf; - c0047e3c: 9d1d subw a0,a0,a5 + c004800c: 9d1d subw a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:239 } - c0047e3e: 8082 ret + c004800e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:213 if (c < 0x800) { - c0047e40: 7ff00713 li a4,2047 - c0047e44: 02b76363 bltu a4,a1,c0047e6a + c0048010: 7ff00713 li a4,2047 + c0048014: 02b76363 bltu a4,a1,c004803a /Users/Luppy/riscv/quickjs-nuttx/cutils.c:214 *q++ = (c >> 6) | 0xc0; - c0047e48: 0065d71b srliw a4,a1,0x6 - c0047e4c: fc076713 ori a4,a4,-64 - c0047e50: 00150693 addi a3,a0,1 - c0047e54: 00e50023 sb a4,0(a0) + c0048018: 0065d71b srliw a4,a1,0x6 + c004801c: fc076713 ori a4,a4,-64 + c0048020: 00150693 addi a3,a0,1 + c0048024: 00e50023 sb a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:236 *q++ = (c & 0x3f) | 0x80; - c0047e58: 03f5f593 andi a1,a1,63 - c0047e5c: f805e593 ori a1,a1,-128 - c0047e60: 00168513 addi a0,a3,1 - c0047e64: 00b68023 sb a1,0(a3) - c0047e68: bfd1 j c0047e3c + c0048028: 03f5f593 andi a1,a1,63 + c004802c: f805e593 ori a1,a1,-128 + c0048030: 00168513 addi a0,a3,1 + c0048034: 00b68023 sb a1,0(a3) + c0048038: bfd1 j c004800c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:216 if (c < 0x10000) { - c0047e6a: 6741 lui a4,0x10 - c0047e6c: 02e5f563 bgeu a1,a4,c0047e96 + c004803a: 6741 lui a4,0x10 + c004803c: 02e5f563 bgeu a1,a4,c0048066 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:217 *q++ = (c >> 12) | 0xe0; - c0047e70: 00c5d71b srliw a4,a1,0xc - c0047e74: fe076713 ori a4,a4,-32 - c0047e78: 00150613 addi a2,a0,1 - c0047e7c: 00e50023 sb a4,0(a0) + c0048040: 00c5d71b srliw a4,a1,0xc + c0048044: fe076713 ori a4,a4,-32 + c0048048: 00150613 addi a2,a0,1 + c004804c: 00e50023 sb a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:234 *q++ = ((c >> 6) & 0x3f) | 0x80; - c0047e80: 0065d71b srliw a4,a1,0x6 - c0047e84: 03f77713 andi a4,a4,63 - c0047e88: f8076713 ori a4,a4,-128 - c0047e8c: 00160693 addi a3,a2,1 - c0047e90: 00e60023 sb a4,0(a2) - c0047e94: b7d1 j c0047e58 + c0048050: 0065d71b srliw a4,a1,0x6 + c0048054: 03f77713 andi a4,a4,63 + c0048058: f8076713 ori a4,a4,-128 + c004805c: 00160693 addi a3,a2,1 + c0048060: 00e60023 sb a4,0(a2) + c0048064: b7d1 j c0048028 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:219 if (c < 0x00200000) { - c0047e96: 00200737 lui a4,0x200 - c0047e9a: 02e5f563 bgeu a1,a4,c0047ec4 + c0048066: 00200737 lui a4,0x200 + c004806a: 02e5f563 bgeu a1,a4,c0048094 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:220 *q++ = (c >> 18) | 0xf0; - c0047e9e: 0125d71b srliw a4,a1,0x12 - c0047ea2: ff076713 ori a4,a4,-16 - c0047ea6: 00150693 addi a3,a0,1 - c0047eaa: 00e50023 sb a4,0(a0) + c004806e: 0125d71b srliw a4,a1,0x12 + c0048072: ff076713 ori a4,a4,-16 + c0048076: 00150693 addi a3,a0,1 + c004807a: 00e50023 sb a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:232 *q++ = ((c >> 12) & 0x3f) | 0x80; - c0047eae: 00c5d71b srliw a4,a1,0xc - c0047eb2: 03f77713 andi a4,a4,63 - c0047eb6: f8076713 ori a4,a4,-128 - c0047eba: 00168613 addi a2,a3,1 - c0047ebe: 00e68023 sb a4,0(a3) - c0047ec2: bf7d j c0047e80 + c004807e: 00c5d71b srliw a4,a1,0xc + c0048082: 03f77713 andi a4,a4,63 + c0048086: f8076713 ori a4,a4,-128 + c004808a: 00168613 addi a2,a3,1 + c004808e: 00e68023 sb a4,0(a3) + c0048092: bf7d j c0048050 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:222 if (c < 0x04000000) { - c0047ec4: 04000737 lui a4,0x4000 - c0047ec8: 02e5f563 bgeu a1,a4,c0047ef2 + c0048094: 04000737 lui a4,0x4000 + c0048098: 02e5f563 bgeu a1,a4,c00480c2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:223 *q++ = (c >> 24) | 0xf8; - c0047ecc: 0185d71b srliw a4,a1,0x18 - c0047ed0: ff876713 ori a4,a4,-8 - c0047ed4: 00150613 addi a2,a0,1 - c0047ed8: 00e50023 sb a4,0(a0) + c004809c: 0185d71b srliw a4,a1,0x18 + c00480a0: ff876713 ori a4,a4,-8 + c00480a4: 00150613 addi a2,a0,1 + c00480a8: 00e50023 sb a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:230 *q++ = ((c >> 18) & 0x3f) | 0x80; - c0047edc: 0125d71b srliw a4,a1,0x12 - c0047ee0: 03f77713 andi a4,a4,63 - c0047ee4: f8076713 ori a4,a4,-128 - c0047ee8: 00160693 addi a3,a2,1 - c0047eec: 00e60023 sb a4,0(a2) - c0047ef0: bf7d j c0047eae + c00480ac: 0125d71b srliw a4,a1,0x12 + c00480b0: 03f77713 andi a4,a4,63 + c00480b4: f8076713 ori a4,a4,-128 + c00480b8: 00160693 addi a3,a2,1 + c00480bc: 00e60023 sb a4,0(a2) + c00480c0: bf7d j c004807e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:228 return 0; - c0047ef2: 4501 li a0,0 + c00480c2: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:224 } else if (c < 0x80000000) { - c0047ef4: f405c5e3 bltz a1,c0047e3e + c00480c4: f405c5e3 bltz a1,c004800e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:225 *q++ = (c >> 30) | 0xfc; - c0047ef8: 01e5d71b srliw a4,a1,0x1e - c0047efc: ffc76713 ori a4,a4,-4 - c0047f00: 00e78023 sb a4,0(a5) + c00480c8: 01e5d71b srliw a4,a1,0x1e + c00480cc: ffc76713 ori a4,a4,-4 + c00480d0: 00e78023 sb a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:226 *q++ = ((c >> 24) & 0x3f) | 0x80; - c0047f04: 0185d71b srliw a4,a1,0x18 - c0047f08: 03f77713 andi a4,a4,63 - c0047f0c: f8076713 ori a4,a4,-128 - c0047f10: 00278613 addi a2,a5,2 - c0047f14: 00e780a3 sb a4,1(a5) - c0047f18: b7d1 j c0047edc - -00000000c0047f1a : + c00480d4: 0185d71b srliw a4,a1,0x18 + c00480d8: 03f77713 andi a4,a4,63 + c00480dc: f8076713 ori a4,a4,-128 + c00480e0: 00278613 addi a2,a5,2 + c00480e4: 00e780a3 sb a4,1(a5) + c00480e8: b7d1 j c00480ac + +00000000c00480ea : unicode_from_utf8(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:255 c = *p++; - c0047f1a: 00054683 lbu a3,0(a0) + c00480ea: 00054683 lbu a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:256 if (c < 0x80) { - c0047f1e: 07f00793 li a5,127 + c00480ee: 07f00793 li a5,127 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:255 c = *p++; - c0047f22: 00150713 addi a4,a0,1 - c0047f26: 0006851b sext.w a0,a3 + c00480f2: 00150713 addi a4,a0,1 + c00480f6: 0006851b sext.w a0,a3 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:256 if (c < 0x80) { - c0047f2a: 00d7c463 blt a5,a3,c0047f32 + c00480fa: 00d7c463 blt a5,a3,c0048102 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:302 *pp = p; - c0047f2e: e218 sd a4,0(a2) + c00480fe: e218 sd a4,0(a2) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:303 return c; - c0047f30: 8082 ret + c0048100: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:260 switch(c) { - c0047f32: 0406879b addiw a5,a3,64 - c0047f36: 0ff7f793 zext.b a5,a5 - c0047f3a: 03d00813 li a6,61 + c0048102: 0406879b addiw a5,a3,64 + c0048106: 0ff7f793 zext.b a5,a5 + c004810a: 03d00813 li a6,61 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:288 return -1; - c0047f3e: 557d li a0,-1 - c0047f40: 04f86863 bltu a6,a5,c0047f90 - c0047f44: 00029517 auipc a0,0x29 - c0047f48: 96c50513 addi a0,a0,-1684 # c00708b0 - c0047f4c: 97aa add a5,a5,a0 - c0047f4e: 00078803 lb a6,0(a5) + c004810e: 557d li a0,-1 + c0048110: 04f86863 bltu a6,a5,c0048160 + c0048114: 00029517 auipc a0,0x29 + c0048118: 9fc50513 addi a0,a0,-1540 # c0070b10 + c004811c: 97aa add a5,a5,a0 + c004811e: 00078803 lb a6,0(a5) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:291 if (l > (max_len - 1)) - c0047f52: 35fd addiw a1,a1,-1 + c0048122: 35fd addiw a1,a1,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:288 return -1; - c0047f54: 557d li a0,-1 + c0048124: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:291 if (l > (max_len - 1)) - c0047f56: 0305cd63 blt a1,a6,c0047f90 + c0048126: 0305cd63 blt a1,a6,c0048160 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:293 c &= utf8_first_code_mask[l - 1]; - c0047f5a: fff8079b addiw a5,a6,-1 - c0047f5e: 0002d597 auipc a1,0x2d - c0047f62: a7258593 addi a1,a1,-1422 # c00749d0 - c0047f66: 95be add a1,a1,a5 - c0047f68: 0005c503 lbu a0,0(a1) + c004812a: fff8079b addiw a5,a6,-1 + c004812e: 0002d597 auipc a1,0x2d + c0048132: b0258593 addi a1,a1,-1278 # c0074c30 + c0048136: 95be add a1,a1,a5 + c0048138: 0005c503 lbu a0,0(a1) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:296 if (b < 0x80 || b >= 0xc0) - c0047f6c: 03f00893 li a7,63 + c004813c: 03f00893 li a7,63 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:294 for(i = 0; i < l; i++) { - c0047f70: 4581 li a1,0 + c0048140: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:293 c &= utf8_first_code_mask[l - 1]; - c0047f72: 8d75 and a0,a0,a3 + c0048142: 8d75 and a0,a0,a3 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:294 (discriminator 1) for(i = 0; i < l; i++) { - c0047f74: 0105cf63 blt a1,a6,c0047f92 + c0048144: 0105cf63 blt a1,a6,c0048162 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:300 if (c < utf8_min_code[l - 1]) - c0047f78: 00029697 auipc a3,0x29 - c0047f7c: 97868693 addi a3,a3,-1672 # c00708f0 - c0047f80: 078a slli a5,a5,0x2 - c0047f82: 97b6 add a5,a5,a3 - c0047f84: 4394 lw a3,0(a5) - c0047f86: 0005079b sext.w a5,a0 - c0047f8a: fad7f2e3 bgeu a5,a3,c0047f2e + c0048148: 00029697 auipc a3,0x29 + c004814c: a0868693 addi a3,a3,-1528 # c0070b50 + c0048150: 078a slli a5,a5,0x2 + c0048152: 97b6 add a5,a5,a3 + c0048154: 4394 lw a3,0(a5) + c0048156: 0005079b sext.w a5,a0 + c004815a: fad7f2e3 bgeu a5,a3,c00480fe /Users/Luppy/riscv/quickjs-nuttx/cutils.c:288 return -1; - c0047f8e: 557d li a0,-1 + c004815e: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:304 } - c0047f90: 8082 ret + c0048160: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/cutils.c:295 b = *p++; - c0047f92: 00074683 lbu a3,0(a4) # 4000000 <__clzdi2-0xbc000000> - c0047f96: 0705 addi a4,a4,1 + c0048162: 00074683 lbu a3,0(a4) # 4000000 <__clzdi2-0xbc000000> + c0048166: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:296 if (b < 0x80 || b >= 0xc0) - c0047f98: f806831b addiw t1,a3,-128 - c0047f9c: fe68e9e3 bltu a7,t1,c0047f8e + c0048168: f806831b addiw t1,a3,-128 + c004816c: fe68e9e3 bltu a7,t1,c004815e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:298 (discriminator 2) c = (c << 6) | (b & 0x3f); - c0047fa0: 0065151b slliw a0,a0,0x6 - c0047fa4: 03f6f693 andi a3,a3,63 - c0047fa8: 8d55 or a0,a0,a3 - c0047faa: 2501 sext.w a0,a0 + c0048170: 0065151b slliw a0,a0,0x6 + c0048174: 03f6f693 andi a3,a3,63 + c0048178: 8d55 or a0,a0,a3 + c004817a: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:294 (discriminator 2) for(i = 0; i < l; i++) { - c0047fac: 2585 addiw a1,a1,1 - c0047fae: b7d9 j c0047f74 + c004817c: 2585 addiw a1,a1,1 + c004817e: b7d9 j c0048144 -00000000c0047fb0 : +00000000c0048180 : rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:521 size_t m4, i, lt, gt, span, span2; @@ -196783,42 +196981,42 @@ rqsort(): exchange_f swap_block = exchange_func(base, size | 128); if (nmemb < 2 || size <= 0) - c0047fb0: 4785 li a5,1 - c0047fb2: 30b7f463 bgeu a5,a1,c00482ba + c0048180: 4785 li a5,1 + c0048182: 30b7f463 bgeu a5,a1,c004848a /Users/Luppy/riscv/quickjs-nuttx/cutils.c:513 (discriminator 1) { - c0047fb6: aa010113 addi sp,sp,-1376 - c0047fba: 54813823 sd s0,1360(sp) - c0047fbe: 54113c23 sd ra,1368(sp) - c0047fc2: 54913423 sd s1,1352(sp) - c0047fc6: 55213023 sd s2,1344(sp) - c0047fca: 53313c23 sd s3,1336(sp) - c0047fce: 53413823 sd s4,1328(sp) - c0047fd2: 53513423 sd s5,1320(sp) - c0047fd6: 53613023 sd s6,1312(sp) - c0047fda: 51713c23 sd s7,1304(sp) - c0047fde: 51813823 sd s8,1296(sp) - c0047fe2: 51913423 sd s9,1288(sp) - c0047fe6: 51a13023 sd s10,1280(sp) - c0047fea: 4fb13c23 sd s11,1272(sp) - c0047fee: 8432 mv s0,a2 + c0048186: aa010113 addi sp,sp,-1376 + c004818a: 54813823 sd s0,1360(sp) + c004818e: 54113c23 sd ra,1368(sp) + c0048192: 54913423 sd s1,1352(sp) + c0048196: 55213023 sd s2,1344(sp) + c004819a: 53313c23 sd s3,1336(sp) + c004819e: 53413823 sd s4,1328(sp) + c00481a2: 53513423 sd s5,1320(sp) + c00481a6: 53613023 sd s6,1312(sp) + c00481aa: 51713c23 sd s7,1304(sp) + c00481ae: 51813823 sd s8,1296(sp) + c00481b2: 51913423 sd s9,1288(sp) + c00481b6: 51a13023 sd s10,1280(sp) + c00481ba: 4fb13c23 sd s11,1272(sp) + c00481be: 8432 mv s0,a2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:521 (discriminator 1) if (nmemb < 2 || size <= 0) - c0047ff0: c649 beqz a2,c004807a - c0047ff2: 84ae mv s1,a1 + c00481c0: c649 beqz a2,c004824a + c00481c2: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:518 exchange_f swap = exchange_func(base, size); - c0047ff4: 85b2 mv a1,a2 - c0047ff6: 892a mv s2,a0 - c0047ff8: 8a36 mv s4,a3 - c0047ffa: 8aba mv s5,a4 - c0047ffc: a85ff0ef jal ra,c0047a80 - c0048000: 8caa mv s9,a0 + c00481c4: 85b2 mv a1,a2 + c00481c6: 892a mv s2,a0 + c00481c8: 8a36 mv s4,a3 + c00481ca: 8aba mv s5,a4 + c00481cc: a85ff0ef jal ra,c0047c50 + c00481d0: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:519 exchange_f swap_block = exchange_func(base, size | 128); - c0048002: 08046593 ori a1,s0,128 - c0048006: 854a mv a0,s2 - c0048008: a79ff0ef jal ra,c0047a80 + c00481d2: 08046593 ori a1,s0,128 + c00481d6: 854a mv a0,s2 + c00481d8: a79ff0ef jal ra,c0047c50 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:561 plt += size; } @@ -196826,78 +197024,78 @@ rqsort(): pi += size; } while (pi < (pj -= size) && (c = cmp(ptr, pj, opaque)) <= 0) { - c004800c: 408007b3 neg a5,s0 + c00481dc: 408007b3 neg a5,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:519 exchange_f swap_block = exchange_func(base, size | 128); - c0048010: f82a sd a0,48(sp) + c00481e0: f82a sd a0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:524 sp->base = (uint8_t *)base; - c0048012: e0ca sd s2,64(sp) + c00481e2: e0ca sd s2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:525 sp->count = nmemb; - c0048014: e4a6 sd s1,72(sp) + c00481e4: e4a6 sd s1,72(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:526 sp->depth = 0; - c0048016: c882 sw zero,80(sp) + c00481e6: c882 sw zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:527 sp++; - c0048018: 05810993 addi s3,sp,88 + c00481e8: 05810993 addi s3,sp,88 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:561 while (pi < (pj -= size) && (c = cmp(ptr, pj, opaque)) <= 0) { - c004801c: fc3e sd a5,56(sp) + c00481ec: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:533 depth = sp->depth; - c004801e: ff89a783 lw a5,-8(s3) + c00481ee: ff89a783 lw a5,-8(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:531 ptr = sp->base; - c0048022: fe89b903 ld s2,-24(s3) + c00481f2: fe89b903 ld s2,-24(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:532 nmemb = sp->count; - c0048026: ff09b483 ld s1,-16(s3) + c00481f6: ff09b483 ld s1,-16(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:533 depth = sp->depth; - c004802a: e83e sd a5,16(sp) + c00481fa: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:530 sp--; - c004802c: 19a1 addi s3,s3,-24 + c00481fc: 19a1 addi s3,s3,-24 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:535 while (nmemb > 6) { - c004802e: 4799 li a5,6 - c0048030: 0297fb63 bgeu a5,s1,c0048066 + c00481fe: 4799 li a5,6 + c0048200: 0297fb63 bgeu a5,s1,c0048236 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:536 if (++depth > 50) { - c0048034: 67c2 ld a5,16(sp) - c0048036: 03200713 li a4,50 - c004803a: 02848c33 mul s8,s1,s0 - c004803e: 2785 addiw a5,a5,1 - c0048040: d23e sw a5,36(sp) - c0048042: e83e sd a5,16(sp) - c0048044: 10f75963 bge a4,a5,c0048156 + c0048204: 67c2 ld a5,16(sp) + c0048206: 03200713 li a4,50 + c004820a: 02848c33 mul s8,s1,s0 + c004820e: 2785 addiw a5,a5,1 + c0048210: d23e sw a5,36(sp) + c0048212: e83e sd a5,16(sp) + c0048214: 10f75963 bge a4,a5,c0048326 heapsortx(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:474 exchange_f swap = exchange_func(base, size); - c0048048: 85a2 mv a1,s0 - c004804a: 854a mv a0,s2 + c0048218: 85a2 mv a1,s0 + c004821a: 854a mv a0,s2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:477 i = (nmemb / 2) * size; - c004804c: 8085 srli s1,s1,0x1 + c004821c: 8085 srli s1,s1,0x1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:474 exchange_f swap = exchange_func(base, size); - c004804e: a33ff0ef jal ra,c0047a80 + c004821e: a33ff0ef jal ra,c0047c50 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:477 i = (nmemb / 2) * size; - c0048052: 02848b33 mul s6,s1,s0 + c0048222: 02848b33 mul s6,s1,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:474 exchange_f swap = exchange_func(base, size); - c0048056: 8baa mv s7,a0 + c0048226: 8baa mv s7,a0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:480 while (i > 0) { - c0048058: 408c04b3 sub s1,s8,s0 - c004805c: 040b1c63 bnez s6,c00480b4 + c0048228: 408c04b3 sub s1,s8,s0 + c004822c: 040b1c63 bnez s6,c0048284 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:490 for (i = n - size; i > 0; i -= size) { - c0048060: 40848b33 sub s6,s1,s0 - c0048064: ecd1 bnez s1,c0048100 + c0048230: 40848b33 sub s6,s1,s0 + c0048234: ecd1 bnez s1,c00482d0 rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:624 sp++; @@ -196906,424 +197104,424 @@ rqsort(): } /* Use insertion sort for small fragments */ for (pi = ptr + size, top = ptr + nmemb * size; pi < top; pi += size) { - c0048066: 00890bb3 add s7,s2,s0 - c004806a: 028484b3 mul s1,s1,s0 - c004806e: 94ca add s1,s1,s2 + c0048236: 00890bb3 add s7,s2,s0 + c004823a: 028484b3 mul s1,s1,s0 + c004823e: 94ca add s1,s1,s2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:624 (discriminator 1) - c0048070: 1c9be563 bltu s7,s1,c004823a + c0048240: 1c9be563 bltu s7,s1,c004840a /Users/Luppy/riscv/quickjs-nuttx/cutils.c:529 while (sp > stack) { - c0048074: 009c addi a5,sp,64 - c0048076: fb37e4e3 bltu a5,s3,c004801e + c0048244: 009c addi a5,sp,64 + c0048246: fb37e4e3 bltu a5,s3,c00481ee /Users/Luppy/riscv/quickjs-nuttx/cutils.c:629 for (pj = pi; pj > ptr && cmp(pj - size, pj, opaque) > 0; pj -= size) swap(pj, pj - size, size); } } } - c004807a: 55813083 ld ra,1368(sp) - c004807e: 55013403 ld s0,1360(sp) - c0048082: 54813483 ld s1,1352(sp) - c0048086: 54013903 ld s2,1344(sp) - c004808a: 53813983 ld s3,1336(sp) - c004808e: 53013a03 ld s4,1328(sp) - c0048092: 52813a83 ld s5,1320(sp) - c0048096: 52013b03 ld s6,1312(sp) - c004809a: 51813b83 ld s7,1304(sp) - c004809e: 51013c03 ld s8,1296(sp) - c00480a2: 50813c83 ld s9,1288(sp) - c00480a6: 50013d03 ld s10,1280(sp) - c00480aa: 4f813d83 ld s11,1272(sp) - c00480ae: 56010113 addi sp,sp,1376 - c00480b2: 8082 ret + c004824a: 55813083 ld ra,1368(sp) + c004824e: 55013403 ld s0,1360(sp) + c0048252: 54813483 ld s1,1352(sp) + c0048256: 54013903 ld s2,1344(sp) + c004825a: 53813983 ld s3,1336(sp) + c004825e: 53013a03 ld s4,1328(sp) + c0048262: 52813a83 ld s5,1320(sp) + c0048266: 52013b03 ld s6,1312(sp) + c004826a: 51813b83 ld s7,1304(sp) + c004826e: 51013c03 ld s8,1296(sp) + c0048272: 50813c83 ld s9,1288(sp) + c0048276: 50013d03 ld s10,1280(sp) + c004827a: 4f813d83 ld s11,1272(sp) + c004827e: 56010113 addi sp,sp,1376 + c0048282: 8082 ret heapsortx(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:481 i -= size; - c00480b4: 408b0b33 sub s6,s6,s0 + c0048284: 408b0b33 sub s6,s6,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:482 for (r = i; (c = r * 2 + size) < n; r = c) { - c00480b8: 8dda mv s11,s6 - c00480ba: 001d9d13 slli s10,s11,0x1 - c00480be: 9d22 add s10,s10,s0 - c00480c0: f98d7ee3 bgeu s10,s8,c004805c + c0048288: 8dda mv s11,s6 + c004828a: 001d9d13 slli s10,s11,0x1 + c004828e: 9d22 add s10,s10,s0 + c0048290: f98d7ee3 bgeu s10,s8,c004822c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:483 if (c < n - size && cmp(basep + c, basep + c + size, opaque) <= 0) - c00480c4: 009d7f63 bgeu s10,s1,c00480e2 - c00480c8: 01a407b3 add a5,s0,s10 - c00480cc: 8656 mv a2,s5 - c00480ce: 00f905b3 add a1,s2,a5 - c00480d2: e43e sd a5,8(sp) - c00480d4: 01a90533 add a0,s2,s10 - c00480d8: 9a02 jalr s4 - c00480da: 00a04463 bgtz a0,c00480e2 + c0048294: 009d7f63 bgeu s10,s1,c00482b2 + c0048298: 01a407b3 add a5,s0,s10 + c004829c: 8656 mv a2,s5 + c004829e: 00f905b3 add a1,s2,a5 + c00482a2: e43e sd a5,8(sp) + c00482a4: 01a90533 add a0,s2,s10 + c00482a8: 9a02 jalr s4 + c00482aa: 00a04463 bgtz a0,c00482b2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:484 c += size; - c00480de: 67a2 ld a5,8(sp) - c00480e0: 8d3e mv s10,a5 + c00482ae: 67a2 ld a5,8(sp) + c00482b0: 8d3e mv s10,a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:485 if (cmp(basep + r, basep + c, opaque) > 0) - c00480e2: 9dca add s11,s11,s2 - c00480e4: 01a905b3 add a1,s2,s10 - c00480e8: 8656 mv a2,s5 - c00480ea: e42e sd a1,8(sp) - c00480ec: 856e mv a0,s11 - c00480ee: 9a02 jalr s4 - c00480f0: f6a046e3 bgtz a0,c004805c + c00482b2: 9dca add s11,s11,s2 + c00482b4: 01a905b3 add a1,s2,s10 + c00482b8: 8656 mv a2,s5 + c00482ba: e42e sd a1,8(sp) + c00482bc: 856e mv a0,s11 + c00482be: 9a02 jalr s4 + c00482c0: f6a046e3 bgtz a0,c004822c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:487 swap(basep + r, basep + c, size); - c00480f4: 65a2 ld a1,8(sp) - c00480f6: 856e mv a0,s11 - c00480f8: 8622 mv a2,s0 - c00480fa: 9b82 jalr s7 + c00482c4: 65a2 ld a1,8(sp) + c00482c6: 856e mv a0,s11 + c00482c8: 8622 mv a2,s0 + c00482ca: 9b82 jalr s7 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:482 for (r = i; (c = r * 2 + size) < n; r = c) { - c00480fc: 8dea mv s11,s10 - c00480fe: bf75 j c00480ba + c00482cc: 8dea mv s11,s10 + c00482ce: bf75 j c004828a /Users/Luppy/riscv/quickjs-nuttx/cutils.c:491 swap(basep, basep + i, size); - c0048100: 8622 mv a2,s0 - c0048102: 009905b3 add a1,s2,s1 - c0048106: 854a mv a0,s2 - c0048108: 9b82 jalr s7 + c00482d0: 8622 mv a2,s0 + c00482d2: 009905b3 add a1,s2,s1 + c00482d6: 854a mv a0,s2 + c00482d8: 9b82 jalr s7 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:493 for (r = 0; (c = r * 2 + size) < i; r = c) { - c004810a: 4d01 li s10,0 - c004810c: 001d1c13 slli s8,s10,0x1 - c0048110: 9c22 add s8,s8,s0 - c0048112: 029c7963 bgeu s8,s1,c0048144 + c00482da: 4d01 li s10,0 + c00482dc: 001d1c13 slli s8,s10,0x1 + c00482e0: 9c22 add s8,s8,s0 + c00482e2: 029c7963 bgeu s8,s1,c0048314 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:494 if (c < i - size && cmp(basep + c, basep + c + size, opaque) <= 0) - c0048116: 016c7d63 bgeu s8,s6,c0048130 - c004811a: 01840db3 add s11,s0,s8 - c004811e: 8656 mv a2,s5 - c0048120: 01b905b3 add a1,s2,s11 - c0048124: 01890533 add a0,s2,s8 - c0048128: 9a02 jalr s4 - c004812a: 00a04363 bgtz a0,c0048130 + c00482e6: 016c7d63 bgeu s8,s6,c0048300 + c00482ea: 01840db3 add s11,s0,s8 + c00482ee: 8656 mv a2,s5 + c00482f0: 01b905b3 add a1,s2,s11 + c00482f4: 01890533 add a0,s2,s8 + c00482f8: 9a02 jalr s4 + c00482fa: 00a04363 bgtz a0,c0048300 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:495 c += size; - c004812e: 8c6e mv s8,s11 + c00482fe: 8c6e mv s8,s11 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:496 if (cmp(basep + r, basep + c, opaque) > 0) - c0048130: 018905b3 add a1,s2,s8 - c0048134: 9d4a add s10,s10,s2 - c0048136: e42e sd a1,8(sp) - c0048138: 8656 mv a2,s5 - c004813a: 856a mv a0,s10 - c004813c: 9a02 jalr s4 - c004813e: 65a2 ld a1,8(sp) - c0048140: 00a05663 blez a0,c004814c + c0048300: 018905b3 add a1,s2,s8 + c0048304: 9d4a add s10,s10,s2 + c0048306: e42e sd a1,8(sp) + c0048308: 8656 mv a2,s5 + c004830a: 856a mv a0,s10 + c004830c: 9a02 jalr s4 + c004830e: 65a2 ld a1,8(sp) + c0048310: 00a05663 blez a0,c004831c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:490 for (i = n - size; i > 0; i -= size) { - c0048144: 8c81 sub s1,s1,s0 - c0048146: 408b0b33 sub s6,s6,s0 - c004814a: bf29 j c0048064 + c0048314: 8c81 sub s1,s1,s0 + c0048316: 408b0b33 sub s6,s6,s0 + c004831a: bf29 j c0048234 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:498 swap(basep + r, basep + c, size); - c004814c: 856a mv a0,s10 - c004814e: 8622 mv a2,s0 - c0048150: 9b82 jalr s7 + c004831c: 856a mv a0,s10 + c004831e: 8622 mv a2,s0 + c0048320: 9b82 jalr s7 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:493 for (r = 0; (c = r * 2 + size) < i; r = c) { - c0048152: 8d62 mv s10,s8 - c0048154: bf65 j c004810c + c0048322: 8d62 mv s10,s8 + c0048324: bf65 j c00482dc rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:544 m4 = (nmemb >> 2) * size; - c0048156: 0024db13 srli s6,s1,0x2 - c004815a: 028b0b33 mul s6,s6,s0 + c0048326: 0024db13 srli s6,s1,0x2 + c004832a: 028b0b33 mul s6,s6,s0 med3(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:506 return cmp(a, b, opaque) < 0 ? - c004815e: 8656 mv a2,s5 + c004832e: 8656 mv a2,s5 rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:545 m = med3(ptr + m4, ptr + 2 * m4, ptr + 3 * m4, cmp, opaque); - c0048160: 01690bb3 add s7,s2,s6 - c0048164: 016b8d33 add s10,s7,s6 + c0048330: 01690bb3 add s7,s2,s6 + c0048334: 016b8d33 add s10,s7,s6 med3(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:506 return cmp(a, b, opaque) < 0 ? - c0048168: 85ea mv a1,s10 - c004816a: 855e mv a0,s7 - c004816c: 9a02 jalr s4 + c0048338: 85ea mv a1,s10 + c004833a: 855e mv a0,s7 + c004833c: 9a02 jalr s4 rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:545 m = med3(ptr + m4, ptr + 2 * m4, ptr + 3 * m4, cmp, opaque); - c004816e: 9b6a add s6,s6,s10 + c004833e: 9b6a add s6,s6,s10 med3(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:507 (cmp(b, c, opaque) < 0 ? b : (cmp(a, c, opaque) < 0 ? c : a )) : - c0048170: 8656 mv a2,s5 - c0048172: 85da mv a1,s6 - c0048174: 06055663 bgez a0,c00481e0 - c0048178: 856a mv a0,s10 - c004817a: 9a02 jalr s4 - c004817c: 00054a63 bltz a0,c0048190 - c0048180: 8656 mv a2,s5 - c0048182: 85da mv a1,s6 - c0048184: 855e mv a0,s7 - c0048186: 9a02 jalr s4 - c0048188: 8d5a mv s10,s6 - c004818a: 00054363 bltz a0,c0048190 - c004818e: 8d5e mv s10,s7 + c0048340: 8656 mv a2,s5 + c0048342: 85da mv a1,s6 + c0048344: 06055663 bgez a0,c00483b0 + c0048348: 856a mv a0,s10 + c004834a: 9a02 jalr s4 + c004834c: 00054a63 bltz a0,c0048360 + c0048350: 8656 mv a2,s5 + c0048352: 85da mv a1,s6 + c0048354: 855e mv a0,s7 + c0048356: 9a02 jalr s4 + c0048358: 8d5a mv s10,s6 + c004835a: 00054363 bltz a0,c0048360 + c004835e: 8d5e mv s10,s7 rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:546 swap(ptr, m, size); /* move the pivot to the start or the array */ - c0048190: 85ea mv a1,s10 - c0048192: 8622 mv a2,s0 - c0048194: 854a mv a0,s2 - c0048196: 9c82 jalr s9 + c0048360: 85ea mv a1,s10 + c0048362: 8622 mv a2,s0 + c0048364: 854a mv a0,s2 + c0048366: 9c82 jalr s9 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:550 pj = pgt = top = ptr + nmemb * size; - c0048198: 4789 li a5,2 - c004819a: 9c4a add s8,s8,s2 + c0048368: 4789 li a5,2 + c004836a: 9c4a add s8,s8,s2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:548 pi = plt = ptr + size; - c004819c: 00890b33 add s6,s2,s0 + c004836c: 00890b33 add s6,s2,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:550 pj = pgt = top = ptr + nmemb * size; - c00481a0: ec3e sd a5,24(sp) + c0048370: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:547 i = lt = 1; - c00481a2: 4785 li a5,1 - c00481a4: 8dda mv s11,s6 + c0048372: 4785 li a5,1 + c0048374: 8dda mv s11,s6 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:550 pj = pgt = top = ptr + nmemb * size; - c00481a6: 8be2 mv s7,s8 - c00481a8: 8d62 mv s10,s8 + c0048376: 8be2 mv s7,s8 + c0048378: 8d62 mv s10,s8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:547 i = lt = 1; - c00481aa: e43e sd a5,8(sp) - c00481ac: 67e2 ld a5,24(sp) - c00481ae: 17fd addi a5,a5,-1 - c00481b0: f43e sd a5,40(sp) + c004837a: e43e sd a5,8(sp) + c004837c: 67e2 ld a5,24(sp) + c004837e: 17fd addi a5,a5,-1 + c0048380: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:552 while (pi < pj && (c = cmp(ptr, pi, opaque)) >= 0) { - c00481b2: 01adf863 bgeu s11,s10,c00481c2 + c0048382: 01adf863 bgeu s11,s10,c0048392 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:552 (discriminator 1) - c00481b6: 8656 mv a2,s5 - c00481b8: 85ee mv a1,s11 - c00481ba: 854a mv a0,s2 - c00481bc: 9a02 jalr s4 - c00481be: 02055e63 bgez a0,c00481fa + c0048386: 8656 mv a2,s5 + c0048388: 85ee mv a1,s11 + c004838a: 854a mv a0,s2 + c004838c: 9a02 jalr s4 + c004838e: 02055e63 bgez a0,c00483ca /Users/Luppy/riscv/quickjs-nuttx/cutils.c:561 while (pi < (pj -= size) && (c = cmp(ptr, pj, opaque)) <= 0) { - c00481c2: 77e2 ld a5,56(sp) - c00481c4: 9d3e add s10,s10,a5 - c00481c6: 09adfd63 bgeu s11,s10,c0048260 + c0048392: 77e2 ld a5,56(sp) + c0048394: 9d3e add s10,s10,a5 + c0048396: 09adfd63 bgeu s11,s10,c0048430 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:561 (discriminator 1) - c00481ca: 8656 mv a2,s5 - c00481cc: 85ea mv a1,s10 - c00481ce: 854a mv a0,s2 - c00481d0: 9a02 jalr s4 - c00481d2: 04a05263 blez a0,c0048216 + c004839a: 8656 mv a2,s5 + c004839c: 85ea mv a1,s10 + c004839e: 854a mv a0,s2 + c00483a0: 9a02 jalr s4 + c00483a2: 04a05263 blez a0,c00483e6 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:570 swap(pi, pj, size); - c00481d6: 8622 mv a2,s0 - c00481d8: 85ea mv a1,s10 - c00481da: 856e mv a0,s11 - c00481dc: 9c82 jalr s9 + c00483a6: 8622 mv a2,s0 + c00483a8: 85ea mv a1,s10 + c00483aa: 856e mv a0,s11 + c00483ac: 9c82 jalr s9 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:552 while (pi < pj && (c = cmp(ptr, pi, opaque)) >= 0) { - c00481de: a03d j c004820c + c00483ae: a03d j c00483dc med3(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:508 (cmp(b, c, opaque) > 0 ? b : (cmp(a, c, opaque) < 0 ? a : c )); - c00481e0: 856a mv a0,s10 - c00481e2: 9a02 jalr s4 - c00481e4: faa046e3 bgtz a0,c0048190 - c00481e8: 8656 mv a2,s5 - c00481ea: 85da mv a1,s6 - c00481ec: 855e mv a0,s7 - c00481ee: 9a02 jalr s4 - c00481f0: 8d5e mv s10,s7 - c00481f2: f8054fe3 bltz a0,c0048190 - c00481f6: 8d5a mv s10,s6 - c00481f8: bf61 j c0048190 + c00483b0: 856a mv a0,s10 + c00483b2: 9a02 jalr s4 + c00483b4: faa046e3 bgtz a0,c0048360 + c00483b8: 8656 mv a2,s5 + c00483ba: 85da mv a1,s6 + c00483bc: 855e mv a0,s7 + c00483be: 9a02 jalr s4 + c00483c0: 8d5e mv s10,s7 + c00483c2: f8054fe3 bltz a0,c0048360 + c00483c6: 8d5a mv s10,s6 + c00483c8: bf61 j c0048360 rqsort(): /Users/Luppy/riscv/quickjs-nuttx/cutils.c:553 if (c == 0) { - c00481fa: e909 bnez a0,c004820c + c00483ca: e909 bnez a0,c00483dc /Users/Luppy/riscv/quickjs-nuttx/cutils.c:554 swap(plt, pi, size); - c00481fc: 855a mv a0,s6 - c00481fe: 8622 mv a2,s0 - c0048200: 85ee mv a1,s11 - c0048202: 9c82 jalr s9 + c00483cc: 855a mv a0,s6 + c00483ce: 8622 mv a2,s0 + c00483d0: 85ee mv a1,s11 + c00483d2: 9c82 jalr s9 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:555 lt++; - c0048204: 67a2 ld a5,8(sp) + c00483d4: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:556 plt += size; - c0048206: 9b22 add s6,s6,s0 + c00483d6: 9b22 add s6,s6,s0 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:555 lt++; - c0048208: 0785 addi a5,a5,1 - c004820a: e43e sd a5,8(sp) + c00483d8: 0785 addi a5,a5,1 + c00483da: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:559 pi += size; - c004820c: 67e2 ld a5,24(sp) - c004820e: 9da2 add s11,s11,s0 - c0048210: 0785 addi a5,a5,1 - c0048212: ec3e sd a5,24(sp) - c0048214: bf61 j c00481ac + c00483dc: 67e2 ld a5,24(sp) + c00483de: 9da2 add s11,s11,s0 + c00483e0: 0785 addi a5,a5,1 + c00483e2: ec3e sd a5,24(sp) + c00483e4: bf61 j c004837c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:562 if (c == 0) { - c0048216: f555 bnez a0,c00481c2 + c00483e6: f555 bnez a0,c0048392 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:564 pgt -= size; - c0048218: 77e2 ld a5,56(sp) + c00483e8: 77e2 ld a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:565 swap(pgt, pj, size); - c004821a: 8622 mv a2,s0 - c004821c: 85ea mv a1,s10 + c00483ea: 8622 mv a2,s0 + c00483ec: 85ea mv a1,s10 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:564 pgt -= size; - c004821e: 9bbe add s7,s7,a5 + c00483ee: 9bbe add s7,s7,a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:565 swap(pgt, pj, size); - c0048220: 855e mv a0,s7 + c00483f0: 855e mv a0,s7 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:563 gt--; - c0048222: 14fd addi s1,s1,-1 + c00483f2: 14fd addi s1,s1,-1 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:565 swap(pgt, pj, size); - c0048224: 9c82 jalr s9 - c0048226: bf71 j c00481c2 + c00483f4: 9c82 jalr s9 + c00483f6: bf71 j c0048392 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:611 sp->depth = depth; - c0048228: 5792 lw a5,36(sp) + c00483f8: 5792 lw a5,36(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:609 sp->base = ptr; - c004822a: ff29b423 sd s2,-24(s3) + c00483fa: ff29b423 sd s2,-24(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:610 sp->count = lt; - c004822e: ffa9b823 sd s10,-16(s3) + c00483fe: ffa9b823 sd s10,-16(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:611 sp->depth = depth; - c0048232: fef9ac23 sw a5,-8(s3) + c0048402: fef9ac23 sw a5,-8(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:618 sp->depth = depth; - c0048236: 895a mv s2,s6 - c0048238: bbdd j c004802e - c004823a: 8b5e mv s6,s7 - c004823c: a831 j c0048258 + c0048406: 895a mv s2,s6 + c0048408: bbdd j c00481fe + c004840a: 8b5e mv s6,s7 + c004840c: a831 j c0048428 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:625 (discriminator 3) for (pj = pi; pj > ptr && cmp(pj - size, pj, opaque) > 0; pj -= size) - c004823e: 408b0c33 sub s8,s6,s0 - c0048242: 8656 mv a2,s5 - c0048244: 85da mv a1,s6 - c0048246: 8562 mv a0,s8 - c0048248: 9a02 jalr s4 - c004824a: 00a05963 blez a0,c004825c + c004840e: 408b0c33 sub s8,s6,s0 + c0048412: 8656 mv a2,s5 + c0048414: 85da mv a1,s6 + c0048416: 8562 mv a0,s8 + c0048418: 9a02 jalr s4 + c004841a: 00a05963 blez a0,c004842c /Users/Luppy/riscv/quickjs-nuttx/cutils.c:626 (discriminator 4) swap(pj, pj - size, size); - c004824e: 855a mv a0,s6 - c0048250: 8622 mv a2,s0 - c0048252: 85e2 mv a1,s8 - c0048254: 9c82 jalr s9 + c004841e: 855a mv a0,s6 + c0048420: 8622 mv a2,s0 + c0048422: 85e2 mv a1,s8 + c0048424: 9c82 jalr s9 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:625 (discriminator 4) for (pj = pi; pj > ptr && cmp(pj - size, pj, opaque) > 0; pj -= size) - c0048256: 8b62 mv s6,s8 + c0048426: 8b62 mv s6,s8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:625 (discriminator 1) - c0048258: ff6963e3 bltu s2,s6,c004823e + c0048428: ff6963e3 bltu s2,s6,c004840e /Users/Luppy/riscv/quickjs-nuttx/cutils.c:624 for (pi = ptr + size, top = ptr + nmemb * size; pi < top; pi += size) { - c004825c: 9ba2 add s7,s7,s0 - c004825e: bd09 j c0048070 + c004842c: 9ba2 add s7,s7,s0 + c004842e: bd09 j c0048240 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:586 lt = i - lt; - c0048260: 77a2 ld a5,40(sp) - c0048262: 66a2 ld a3,8(sp) + c0048430: 77a2 ld a5,40(sp) + c0048432: 66a2 ld a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:584 span = plt - ptr; - c0048264: 412b0733 sub a4,s6,s2 + c0048434: 412b0733 sub a4,s6,s2 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:585 span2 = pi - plt; - c0048268: 416d8633 sub a2,s11,s6 + c0048438: 416d8633 sub a2,s11,s6 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:586 lt = i - lt; - c004826c: 40d78d33 sub s10,a5,a3 + c004843c: 40d78d33 sub s10,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:587 if (span > span2) - c0048270: 00c77363 bgeu a4,a2,c0048276 - c0048274: 863a mv a2,a4 + c0048440: 00c77363 bgeu a4,a2,c0048446 + c0048444: 863a mv a2,a4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:589 swap_block(ptr, pi - span, span); - c0048276: 77c2 ld a5,48(sp) - c0048278: 40cd85b3 sub a1,s11,a2 - c004827c: 854a mv a0,s2 - c004827e: 9782 jalr a5 + c0048446: 77c2 ld a5,48(sp) + c0048448: 40cd85b3 sub a1,s11,a2 + c004844c: 854a mv a0,s2 + c004844e: 9782 jalr a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:594 span2 = pgt - pi; - c0048280: 41bb8733 sub a4,s7,s11 + c0048450: 41bb8733 sub a4,s7,s11 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:595 pgt = top - span2; - c0048284: 417c0633 sub a2,s8,s7 - c0048288: 40ec0b33 sub s6,s8,a4 + c0048454: 417c0633 sub a2,s8,s7 + c0048458: 40ec0b33 sub s6,s8,a4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:597 if (span > span2) - c004828c: 00c77363 bgeu a4,a2,c0048292 - c0048290: 863a mv a2,a4 + c004845c: 00c77363 bgeu a4,a2,c0048462 + c0048460: 863a mv a2,a4 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:599 swap_block(pi, top - span, span); - c0048292: 77c2 ld a5,48(sp) - c0048294: 40cc05b3 sub a1,s8,a2 - c0048298: 856e mv a0,s11 - c004829a: 9782 jalr a5 + c0048462: 77c2 ld a5,48(sp) + c0048464: 40cc05b3 sub a1,s8,a2 + c0048468: 856e mv a0,s11 + c004846a: 9782 jalr a5 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:608 if (lt > nmemb - gt) { - c004829c: 77a2 ld a5,40(sp) + c004846c: 77a2 ld a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:612 sp++; - c004829e: 09e1 addi s3,s3,24 + c004846e: 09e1 addi s3,s3,24 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:608 if (lt > nmemb - gt) { - c00482a0: 8c9d sub s1,s1,a5 - c00482a2: f9a4e3e3 bltu s1,s10,c0048228 + c0048470: 8c9d sub s1,s1,a5 + c0048472: f9a4e3e3 bltu s1,s10,c00483f8 /Users/Luppy/riscv/quickjs-nuttx/cutils.c:618 sp->depth = depth; - c00482a6: 5792 lw a5,36(sp) + c0048476: 5792 lw a5,36(sp) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:616 sp->base = pgt; - c00482a8: ff69b423 sd s6,-24(s3) + c0048478: ff69b423 sd s6,-24(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:617 sp->count = nmemb - gt; - c00482ac: fe99b823 sd s1,-16(s3) + c004847c: fe99b823 sd s1,-16(s3) /Users/Luppy/riscv/quickjs-nuttx/cutils.c:618 sp->depth = depth; - c00482b0: fef9ac23 sw a5,-8(s3) - c00482b4: 8b4a mv s6,s2 - c00482b6: 84ea mv s1,s10 - c00482b8: bfbd j c0048236 - c00482ba: 8082 ret + c0048480: fef9ac23 sw a5,-8(s3) + c0048484: 8b4a mv s6,s2 + c0048486: 84ea mv s1,s10 + c0048488: bfbd j c0048406 + c004848a: 8082 ret -00000000c00482bc : +00000000c004848c : list_del(): /Users/Luppy/riscv/quickjs-nuttx/list.h:72 prev = el->prev; - c00482bc: 6118 ld a4,0(a0) + c004848c: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:73 next = el->next; - c00482be: 651c ld a5,8(a0) + c004848e: 651c ld a5,8(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:74 prev->next = next; - c00482c0: e71c sd a5,8(a4) + c0048490: e71c sd a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/list.h:75 next->prev = prev; - c00482c2: e398 sd a4,0(a5) + c0048492: e398 sd a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:76 el->prev = NULL; /* fail safe */ - c00482c4: 00053023 sd zero,0(a0) + c0048494: 00053023 sd zero,0(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:77 el->next = NULL; /* fail safe */ - c00482c8: 00053423 sd zero,8(a0) + c0048498: 00053423 sd zero,8(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:78 } - c00482cc: 8082 ret + c004849c: 8082 ret -00000000c00482ce : +00000000c004849e : interrupt_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:727 return JS_UNDEFINED; @@ -197332,15 +197530,15 @@ interrupt_handler(): static int interrupt_handler(JSRuntime *rt, void *opaque) { return (os_pending_signals >> SIGINT) & 1; - c00482ce: 000b9517 auipc a0,0xb9 - c00482d2: e3a53503 ld a0,-454(a0) # c0101108 - c00482d6: 8109 srli a0,a0,0x2 + c004849e: 000b9517 auipc a0,0xb9 + c00484a2: c6a53503 ld a0,-918(a0) # c0101108 + c00484a6: 8109 srli a0,a0,0x2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:728 } - c00482d8: 8905 andi a0,a0,1 - c00482da: 8082 ret + c00484a8: 8905 andi a0,a0,1 + c00484aa: 8082 ret -00000000c00482dc : +00000000c00484ac : os_signal_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1919 js_free_rt(rt, sh); @@ -197349,18 +197547,18 @@ os_signal_handler(): static void os_signal_handler(int sig_num) { os_pending_signals |= ((uint64_t)1 << sig_num); - c00482dc: 000b9717 auipc a4,0xb9 - c00482e0: e2c70713 addi a4,a4,-468 # c0101108 - c00482e4: 4785 li a5,1 - c00482e6: 00a797b3 sll a5,a5,a0 - c00482ea: 6308 ld a0,0(a4) - c00482ec: 8fc9 or a5,a5,a0 - c00482ee: e31c sd a5,0(a4) + c00484ac: 000b9717 auipc a4,0xb9 + c00484b0: c5c70713 addi a4,a4,-932 # c0101108 + c00484b4: 4785 li a5,1 + c00484b6: 00a797b3 sll a5,a5,a0 + c00484ba: 6308 ld a0,0(a4) + c00484bc: 8fc9 or a5,a5,a0 + c00484be: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1920 } - c00482f0: 8082 ret + c00484c0: 8082 ret -00000000c00482f2 : +00000000c00484c2 : js_sab_alloc(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3199 return atomic_fetch_add((_Atomic(uint32_t) *)ptr, v) + v; @@ -197369,4439 +197567,4439 @@ js_sab_alloc(): /* shared array buffer allocator */ static void *js_sab_alloc(void *opaque, size_t size) { - c00482f2: 1141 addi sp,sp,-16 + c00484c2: 1141 addi sp,sp,-16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3201 JSSABHeader *sab; sab = malloc(sizeof(JSSABHeader) + size); - c00482f4: 00858513 addi a0,a1,8 + c00484c4: 00858513 addi a0,a1,8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3199 { - c00482f8: e406 sd ra,8(sp) + c00484c8: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3201 sab = malloc(sizeof(JSSABHeader) + size); - c00482fa: 30b0a0ef jal ra,c0052e04 + c00484ca: 30b0a0ef jal ra,c0052fd4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3202 if (!sab) - c00482fe: c501 beqz a0,c0048306 + c00484ce: c501 beqz a0,c00484d6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3204 return NULL; sab->ref_count = 1; - c0048300: 4785 li a5,1 - c0048302: c11c sw a5,0(a0) + c00484d0: 4785 li a5,1 + c00484d2: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3205 return sab->buf; - c0048304: 0521 addi a0,a0,8 + c00484d4: 0521 addi a0,a0,8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3206 } - c0048306: 60a2 ld ra,8(sp) - c0048308: 0141 addi sp,sp,16 - c004830a: 8082 ret + c00484d6: 60a2 ld ra,8(sp) + c00484d8: 0141 addi sp,sp,16 + c00484da: 8082 ret -00000000c004830c : +00000000c00484dc : JS_FreeValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:647 { - c004830c: 1141 addi sp,sp,-16 - c004830e: e02e sd a1,0(sp) - c0048310: e432 sd a2,8(sp) + c00484dc: 1141 addi sp,sp,-16 + c00484de: e02e sd a1,0(sp) + c00484e0: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:648 if (JS_VALUE_HAS_REF_COUNT(v)) { - c0048312: 0006079b sext.w a5,a2 - c0048316: 5751 li a4,-12 - c0048318: 00f77b63 bgeu a4,a5,c004832e + c00484e2: 0006079b sext.w a5,a2 + c00484e6: 5751 li a4,-12 + c00484e8: 00f77b63 bgeu a4,a5,c00484fe /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:650 if (--p->ref_count <= 0) { - c004831c: 4198 lw a4,0(a1) - c004831e: fff7069b addiw a3,a4,-1 - c0048322: c194 sw a3,0(a1) - c0048324: 00d04563 bgtz a3,c004832e + c00484ec: 4198 lw a4,0(a1) + c00484ee: fff7069b addiw a3,a4,-1 + c00484f2: c194 sw a3,0(a1) + c00484f4: 00d04563 bgtz a3,c00484fe /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:654 } - c0048328: 0141 addi sp,sp,16 + c00484f8: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:651 __JS_FreeValue(ctx, v); - c004832a: 805bf06f j c0007b2e <__JS_FreeValue> + c00484fa: f22bf06f j c0007c1c <__JS_FreeValue> /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:654 } - c004832e: 0141 addi sp,sp,16 - c0048330: 8082 ret + c00484fe: 0141 addi sp,sp,16 + c0048500: 8082 ret -00000000c0048332 : +00000000c0048502 : js_std_dbuf_init(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:137 { - c0048332: 1141 addi sp,sp,-16 - c0048334: e022 sd s0,0(sp) - c0048336: e406 sd ra,8(sp) - c0048338: 842e mv s0,a1 + c0048502: 1141 addi sp,sp,-16 + c0048504: e022 sd s0,0(sp) + c0048506: e406 sd ra,8(sp) + c0048508: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:138 dbuf_init2(s, JS_GetRuntime(ctx), (DynBufReallocFunc *)js_realloc_rt); - c004833a: be5be0ef jal ra,c0006f1e - c004833e: 85aa mv a1,a0 - c0048340: 8522 mv a0,s0 + c004850a: b03be0ef jal ra,c000700c + c004850e: 85aa mv a1,a0 + c0048510: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:139 } - c0048342: 6402 ld s0,0(sp) - c0048344: 60a2 ld ra,8(sp) + c0048512: 6402 ld s0,0(sp) + c0048514: 60a2 ld ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:138 dbuf_init2(s, JS_GetRuntime(ctx), (DynBufReallocFunc *)js_realloc_rt); - c0048346: fffbc617 auipc a2,0xfffbc - c004834a: d2a60613 addi a2,a2,-726 # c0004070 + c0048516: fffbc617 auipc a2,0xfffbc + c004851a: b5a60613 addi a2,a2,-1190 # c0004070 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:139 } - c004834e: 0141 addi sp,sp,16 + c004851e: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:138 dbuf_init2(s, JS_GetRuntime(ctx), (DynBufReallocFunc *)js_realloc_rt); - c0048350: 881ff06f j c0047bd0 + c0048520: 881ff06f j c0047da0 -00000000c0048354 : +00000000c0048524 : JS_ToCString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:709 { - c0048354: 1141 addi sp,sp,-16 - c0048356: 86b2 mv a3,a2 + c0048524: 1141 addi sp,sp,-16 + c0048526: 86b2 mv a3,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:710 return JS_ToCStringLen2(ctx, NULL, val1, 0); - c0048358: 862e mv a2,a1 - c004835a: 4701 li a4,0 - c004835c: 4581 li a1,0 + c0048528: 862e mv a2,a1 + c004852a: 4701 li a4,0 + c004852c: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:711 } - c004835e: 0141 addi sp,sp,16 + c004852e: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:710 return JS_ToCStringLen2(ctx, NULL, val1, 0); - c0048360: b49d306f j c001bea8 + c0048530: b49d306f j c001c078 -00000000c0048364 : +00000000c0048534 : js_printf_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:148 { - c0048364: 7129 addi sp,sp,-320 - c0048366: f626 sd s1,296(sp) + c0048534: 7129 addi sp,sp,-320 + c0048536: f626 sd s1,296(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:166 js_std_dbuf_init(ctx, &dbuf); - c0048368: 1104 addi s1,sp,160 + c0048538: 1104 addi s1,sp,160 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:148 { - c004836a: ee4e sd s3,280(sp) - c004836c: 89ae mv s3,a1 + c004853a: ee4e sd s3,280(sp) + c004853c: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:166 js_std_dbuf_init(ctx, &dbuf); - c004836e: 85a6 mv a1,s1 + c004853e: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:148 { - c0048370: fa22 sd s0,304(sp) - c0048372: f24a sd s2,288(sp) - c0048374: fe06 sd ra,312(sp) - c0048376: ea52 sd s4,272(sp) - c0048378: e656 sd s5,264(sp) - c004837a: e25a sd s6,256(sp) - c004837c: fdde sd s7,248(sp) - c004837e: f9e2 sd s8,240(sp) - c0048380: f5e6 sd s9,232(sp) - c0048382: f1ea sd s10,224(sp) - c0048384: edee sd s11,216(sp) - c0048386: 842a mv s0,a0 - c0048388: 8932 mv s2,a2 - c004838a: e436 sd a3,8(sp) + c0048540: fa22 sd s0,304(sp) + c0048542: f24a sd s2,288(sp) + c0048544: fe06 sd ra,312(sp) + c0048546: ea52 sd s4,272(sp) + c0048548: e656 sd s5,264(sp) + c004854a: e25a sd s6,256(sp) + c004854c: fdde sd s7,248(sp) + c004854e: f9e2 sd s8,240(sp) + c0048550: f5e6 sd s9,232(sp) + c0048552: f1ea sd s10,224(sp) + c0048554: edee sd s11,216(sp) + c0048556: 842a mv s0,a0 + c0048558: 8932 mv s2,a2 + c004855a: e436 sd a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:166 js_std_dbuf_init(ctx, &dbuf); - c004838c: fa7ff0ef jal ra,c0048332 + c004855c: fa7ff0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:168 if (argc > 0) { - c0048390: 07305663 blez s3,c00483fc + c0048560: 07305663 blez s3,c00485cc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:169 fmt_str = JS_ToCStringLen(ctx, &fmt_len, argv[0]); - c0048394: 00093603 ld a2,0(s2) - c0048398: 00893683 ld a3,8(s2) + c0048564: 00093603 ld a2,0(s2) + c0048568: 00893683 ld a3,8(s2) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c004839c: 4701 li a4,0 - c004839e: 182c addi a1,sp,56 - c00483a0: 8522 mv a0,s0 - c00483a2: e132 sd a2,128(sp) - c00483a4: e536 sd a3,136(sp) - c00483a6: b03d30ef jal ra,c001bea8 - c00483aa: 8a2a mv s4,a0 + c004856c: 4701 li a4,0 + c004856e: 182c addi a1,sp,56 + c0048570: 8522 mv a0,s0 + c0048572: e132 sd a2,128(sp) + c0048574: e536 sd a3,136(sp) + c0048576: b03d30ef jal ra,c001c078 + c004857a: 8a2a mv s4,a0 js_printf_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:170 if (!fmt_str) - c00483ac: 28050763 beqz a0,c004863a + c004857c: 28050763 beqz a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:175 fmt_end = fmt + fmt_len; - c00483b0: 7b62 ld s6,56(sp) + c0048580: 7b62 ld s6,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:188 if (c == '0' || c == '#' || c == '+' || c == '-' || c == ' ' || - c00483b2: 12889d37 lui s10,0x12889 - c00483b6: 014d1793 slli a5,s10,0x14 + c0048582: 12889d37 lui s10,0x12889 + c0048586: 014d1793 slli a5,s10,0x14 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:262 int32_arg = 0xFFFD; - c00483ba: 6dc1 lui s11,0x10 + c004858a: 6dc1 lui s11,0x10 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:175 fmt_end = fmt + fmt_len; - c00483bc: 9b2a add s6,s6,a0 + c004858c: 9b2a add s6,s6,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:176 while (fmt < fmt_end) { - c00483be: 8aaa mv s5,a0 + c004858e: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:173 i = 1; - c00483c0: 4c05 li s8,1 + c0048590: 4c05 li s8,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:188 if (c == '0' || c == '#' || c == '+' || c == '-' || c == ' ' || - c00483c2: ec3e sd a5,24(sp) + c0048592: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:208 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c00483c4: 09f10c93 addi s9,sp,159 + c0048594: 09f10c93 addi s9,sp,159 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:262 int32_arg = 0xFFFD; - c00483c8: 1df5 addi s11,s11,-3 + c0048598: 1df5 addi s11,s11,-3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:176 while (fmt < fmt_end) { - c00483ca: 036af563 bgeu s5,s6,c00483f4 + c004859a: 036af563 bgeu s5,s6,c00485c4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:177 for (p = fmt; fmt < fmt_end && *fmt != '%'; fmt++) - c00483ce: f856 sd s5,48(sp) - c00483d0: 8d56 mv s10,s5 - c00483d2: 02500693 li a3,37 + c004859e: f856 sd s5,48(sp) + c00485a0: 8d56 mv s10,s5 + c00485a2: 02500693 li a3,37 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:177 (discriminator 3) - c00483d6: 000d4603 lbu a2,0(s10) # 12889000 <__clzdi2-0xad777000> - c00483da: 00d60563 beq a2,a3,c00483e4 + c00485a6: 000d4603 lbu a2,0(s10) # 12889000 <__clzdi2-0xad777000> + c00485aa: 00d60563 beq a2,a3,c00485b4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:177 - c00483de: 0d05 addi s10,s10,1 - c00483e0: ffab1be3 bne s6,s10,c00483d6 + c00485ae: 0d05 addi s10,s10,1 + c00485b0: ffab1be3 bne s6,s10,c00485a6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:179 dbuf_put(&dbuf, p, fmt - p); - c00483e4: 415d0633 sub a2,s10,s5 - c00483e8: 85d6 mv a1,s5 - c00483ea: 8526 mv a0,s1 - c00483ec: 8c5ff0ef jal ra,c0047cb0 + c00485b4: 415d0633 sub a2,s10,s5 + c00485b8: 85d6 mv a1,s5 + c00485ba: 8526 mv a0,s1 + c00485bc: 8c5ff0ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:180 if (fmt >= fmt_end) - c00483f0: 036d6163 bltu s10,s6,c0048412 + c00485c0: 036d6163 bltu s10,s6,c00485e2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:342 JS_FreeCString(ctx, fmt_str); - c00483f4: 85d2 mv a1,s4 - c00483f6: 8522 mv a0,s0 - c00483f8: a89c00ef jal ra,c0008e80 + c00485c4: 85d2 mv a1,s4 + c00485c6: 8522 mv a0,s0 + c00485c8: 9a7c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:344 if (dbuf.error) { - c00483fc: 57ea lw a5,184(sp) - c00483fe: 30078463 beqz a5,c0048706 + c00485cc: 57ea lw a5,184(sp) + c00485ce: 30078463 beqz a5,c00488d6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:345 res = JS_ThrowOutOfMemory(ctx); - c0048402: 8522 mv a0,s0 - c0048404: 819cc0ef jal ra,c0014c1c + c00485d2: 8522 mv a0,s0 + c00485d4: f36cc0ef jal ra,c0014d0a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:351 res = JS_NewStringLen(ctx, (char *)dbuf.buf, dbuf.size); - c0048408: e8aa sd a0,80(sp) - c004840a: 0005041b sext.w s0,a0 - c004840e: 892e mv s2,a1 - c0048410: ae11 j c0048724 + c00485d8: e8aa sd a0,80(sp) + c00485da: 0005041b sext.w s0,a0 + c00485de: 892e mv s2,a1 + c00485e0: ae11 j c00488f4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:183 *q++ = *fmt++; /* copy '%' */ - c0048412: 000d4683 lbu a3,0(s10) - c0048416: 001d0b93 addi s7,s10,1 + c00485e2: 000d4683 lbu a3,0(s10) + c00485e6: 001d0b93 addi s7,s10,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:188 if (c == '0' || c == '#' || c == '+' || c == '-' || c == ' ' || - c004841a: 03000513 li a0,48 + c00485ea: 03000513 li a0,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:183 *q++ = *fmt++; /* copy '%' */ - c004841e: 08d10023 sb a3,128(sp) - c0048422: 01fd0693 addi a3,s10,31 - c0048426: 08110d13 addi s10,sp,129 + c00485ee: 08d10023 sb a3,128(sp) + c00485f2: 01fd0693 addi a3,s10,31 + c00485f6: 08110d13 addi s10,sp,129 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:187 c = *fmt; - c004842a: 000bc603 lbu a2,0(s7) # 1000 <__clzdi2-0xbffff000> + c00485fa: 000bc603 lbu a2,0(s7) # 1000 <__clzdi2-0xbffff000> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:188 if (c == '0' || c == '#' || c == '+' || c == '-' || c == ' ' || - c004842e: 0ac56d63 bltu a0,a2,c00484e8 + c00485fe: 0ac56d63 bltu a0,a2,c00486b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:188 (discriminator 4) - c0048432: 67e2 ld a5,24(sp) - c0048434: 00c7d5b3 srl a1,a5,a2 - c0048438: 8985 andi a1,a1,1 - c004843a: c981 beqz a1,c004844a + c0048602: 67e2 ld a5,24(sp) + c0048604: 00c7d5b3 srl a1,a5,a2 + c0048608: 8985 andi a1,a1,1 + c004860a: c981 beqz a1,c004861a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:190 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c004843c: 2b768563 beq a3,s7,c00486e6 + c004860c: 2b768563 beq a3,s7,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:192 *q++ = c; - c0048440: 0d05 addi s10,s10,1 + c0048610: 0d05 addi s10,s10,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:193 fmt++; - c0048442: 0b85 addi s7,s7,1 + c0048612: 0b85 addi s7,s7,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:192 *q++ = c; - c0048444: fecd0fa3 sb a2,-1(s10) + c0048614: fecd0fa3 sb a2,-1(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:187 c = *fmt; - c0048448: b7cd j c004842a + c0048618: b7cd j c00485fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:199 if (*fmt == '*') { - c004844a: 02a00693 li a3,42 - c004844e: 08d61d63 bne a2,a3,c00484e8 + c004861a: 02a00693 li a3,42 + c004861e: 08d61d63 bne a2,a3,c00486b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:200 if (i >= argc) - c0048452: 2b3c5263 bge s8,s3,c00486f6 + c0048622: 2b3c5263 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:202 if (JS_ToInt32(ctx, &int32_arg, argv[i++])) - c0048456: 004c1793 slli a5,s8,0x4 - c004845a: 97ca add a5,a5,s2 - c004845c: 6390 ld a2,0(a5) - c004845e: 6794 ld a3,8(a5) - c0048460: 104c addi a1,sp,36 - c0048462: 8522 mv a0,s0 - c0048464: 001c0a9b addiw s5,s8,1 - c0048468: f07d30ef jal ra,c001c36e - c004846c: 1c051763 bnez a0,c004863a + c0048626: 004c1793 slli a5,s8,0x4 + c004862a: 97ca add a5,a5,s2 + c004862c: 6390 ld a2,0(a5) + c004862e: 6794 ld a3,8(a5) + c0048630: 104c addi a1,sp,36 + c0048632: 8522 mv a0,s0 + c0048634: 001c0a9b addiw s5,s8,1 + c0048638: f07d30ef jal ra,c001c53e + c004863c: 1c051763 bnez a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:204 q += snprintf(q, fmtbuf + sizeof(fmtbuf) - q, "%d", int32_arg); - c0048470: 5692 lw a3,36(sp) - c0048472: 41a485b3 sub a1,s1,s10 - c0048476: 856a mv a0,s10 - c0048478: 00016617 auipc a2,0x16 - c004847c: da860613 addi a2,a2,-600 # c005e220 - c0048480: 5850b0ef jal ra,c0054204 - c0048484: 9d2a add s10,s10,a0 + c0048640: 5692 lw a3,36(sp) + c0048642: 41a485b3 sub a1,s1,s10 + c0048646: 856a mv a0,s10 + c0048648: 00016617 auipc a2,0x16 + c004864c: e3860613 addi a2,a2,-456 # c005e480 + c0048650: 5850b0ef jal ra,c00543d4 + c0048654: 9d2a add s10,s10,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:205 fmt++; - c0048486: 0b85 addi s7,s7,1 + c0048656: 0b85 addi s7,s7,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:202 if (JS_ToInt32(ctx, &int32_arg, argv[i++])) - c0048488: 8c56 mv s8,s5 + c0048658: 8c56 mv s8,s5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:213 if (*fmt == '.') { - c004848a: 000bc683 lbu a3,0(s7) - c004848e: 02e00613 li a2,46 - c0048492: 08c69b63 bne a3,a2,c0048528 + c004865a: 000bc683 lbu a3,0(s7) + c004865e: 02e00613 li a2,46 + c0048662: 08c69b63 bne a3,a2,c00486f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:214 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c0048496: 259d7863 bgeu s10,s9,c00486e6 + c0048666: 259d7863 bgeu s10,s9,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:216 *q++ = *fmt++; - c004849a: 00dd0023 sb a3,0(s10) + c004866a: 00dd0023 sb a3,0(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:217 if (*fmt == '*') { - c004849e: 001bc683 lbu a3,1(s7) - c00484a2: 02a00713 li a4,42 + c004866e: 001bc683 lbu a3,1(s7) + c0048672: 02a00713 li a4,42 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:216 *q++ = *fmt++; - c00484a6: 001d0a93 addi s5,s10,1 + c0048676: 001d0a93 addi s5,s10,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:217 if (*fmt == '*') { - c00484aa: 04e68163 beq a3,a4,c00484ec + c004867a: 04e68163 beq a3,a4,c00486bc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:216 *q++ = *fmt++; - c00484ae: 0b85 addi s7,s7,1 - c00484b0: 8d56 mv s10,s5 + c004867e: 0b85 addi s7,s7,1 + c0048680: 8d56 mv s10,s5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:225 while (my_isdigit(*fmt)) { - c00484b2: 4625 li a2,9 - c00484b4: 000bc683 lbu a3,0(s7) - c00484b8: fd06859b addiw a1,a3,-48 - c00484bc: 06b66663 bltu a2,a1,c0048528 + c0048682: 4625 li a2,9 + c0048684: 000bc683 lbu a3,0(s7) + c0048688: fd06859b addiw a1,a3,-48 + c004868c: 06b66663 bltu a2,a1,c00486f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:226 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c00484c0: 239d7363 bgeu s10,s9,c00486e6 + c0048690: 239d7363 bgeu s10,s9,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:228 *q++ = *fmt++; - c00484c4: 0d05 addi s10,s10,1 - c00484c6: 0b85 addi s7,s7,1 - c00484c8: fedd0fa3 sb a3,-1(s10) - c00484cc: b7e5 j c00484b4 + c0048694: 0d05 addi s10,s10,1 + c0048696: 0b85 addi s7,s7,1 + c0048698: fedd0fa3 sb a3,-1(s10) + c004869c: b7e5 j c0048684 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:208 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c00484ce: 219d7c63 bgeu s10,s9,c00486e6 + c004869e: 219d7c63 bgeu s10,s9,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:210 *q++ = *fmt++; - c00484d2: 0d05 addi s10,s10,1 - c00484d4: 0b85 addi s7,s7,1 - c00484d6: fedd0fa3 sb a3,-1(s10) + c00486a2: 0d05 addi s10,s10,1 + c00486a4: 0b85 addi s7,s7,1 + c00486a6: fedd0fa3 sb a3,-1(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:207 while (my_isdigit(*fmt)) { - c00484da: 000bc683 lbu a3,0(s7) - c00484de: fd06859b addiw a1,a3,-48 - c00484e2: feb676e3 bgeu a2,a1,c00484ce - c00484e6: b755 j c004848a - c00484e8: 4625 li a2,9 - c00484ea: bfc5 j c00484da + c00486aa: 000bc683 lbu a3,0(s7) + c00486ae: fd06859b addiw a1,a3,-48 + c00486b2: feb676e3 bgeu a2,a1,c004869e + c00486b6: b755 j c004865a + c00486b8: 4625 li a2,9 + c00486ba: bfc5 j c00486aa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:218 if (i >= argc) - c00484ec: 213c5563 bge s8,s3,c00486f6 + c00486bc: 213c5563 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:220 if (JS_ToInt32(ctx, &int32_arg, argv[i++])) - c00484f0: 001c079b addiw a5,s8,1 - c00484f4: e83e sd a5,16(sp) - c00484f6: 004c1793 slli a5,s8,0x4 - c00484fa: 97ca add a5,a5,s2 - c00484fc: 6390 ld a2,0(a5) - c00484fe: 6794 ld a3,8(a5) - c0048500: 104c addi a1,sp,36 - c0048502: 8522 mv a0,s0 - c0048504: e6bd30ef jal ra,c001c36e - c0048508: 12051963 bnez a0,c004863a + c00486c0: 001c079b addiw a5,s8,1 + c00486c4: e83e sd a5,16(sp) + c00486c6: 004c1793 slli a5,s8,0x4 + c00486ca: 97ca add a5,a5,s2 + c00486cc: 6390 ld a2,0(a5) + c00486ce: 6794 ld a3,8(a5) + c00486d0: 104c addi a1,sp,36 + c00486d2: 8522 mv a0,s0 + c00486d4: e6bd30ef jal ra,c001c53e + c00486d8: 12051963 bnez a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:222 q += snprintf(q, fmtbuf + sizeof(fmtbuf) - q, "%d", int32_arg); - c004850c: 5692 lw a3,36(sp) - c004850e: 00016617 auipc a2,0x16 - c0048512: d1260613 addi a2,a2,-750 # c005e220 - c0048516: 415485b3 sub a1,s1,s5 - c004851a: 8556 mv a0,s5 - c004851c: 4e90b0ef jal ra,c0054204 + c00486dc: 5692 lw a3,36(sp) + c00486de: 00016617 auipc a2,0x16 + c00486e2: da260613 addi a2,a2,-606 # c005e480 + c00486e6: 415485b3 sub a1,s1,s5 + c00486ea: 8556 mv a0,s5 + c00486ec: 4e90b0ef jal ra,c00543d4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:220 if (JS_ToInt32(ctx, &int32_arg, argv[i++])) - c0048520: 6c42 ld s8,16(sp) + c00486f0: 6c42 ld s8,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:222 q += snprintf(q, fmtbuf + sizeof(fmtbuf) - q, "%d", int32_arg); - c0048522: 00aa8d33 add s10,s5,a0 + c00486f2: 00aa8d33 add s10,s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:223 fmt++; - c0048526: 0b89 addi s7,s7,2 + c00486f6: 0b89 addi s7,s7,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:235 if (*fmt == 'l') { - c0048528: 000bc603 lbu a2,0(s7) - c004852c: 06c00693 li a3,108 + c00486f8: 000bc603 lbu a2,0(s7) + c00486fc: 06c00693 li a3,108 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:234 mod = ' '; - c0048530: 02000813 li a6,32 + c0048700: 02000813 li a6,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:235 if (*fmt == 'l') { - c0048534: 00d61563 bne a2,a3,c004853e + c0048704: 00d61563 bne a2,a3,c004870e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:236 mod = *fmt++; - c0048538: 0b85 addi s7,s7,1 - c004853a: 06c00813 li a6,108 + c0048708: 0b85 addi s7,s7,1 + c004870a: 06c00813 li a6,108 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:240 c = *fmt++; - c004853e: 000bc683 lbu a3,0(s7) - c0048542: 001b8a93 addi s5,s7,1 + c004870e: 000bc683 lbu a3,0(s7) + c0048712: 001b8a93 addi s5,s7,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:241 if (q >= fmtbuf + sizeof(fmtbuf) - 1) - c0048546: 1b9d7063 bgeu s10,s9,c00486e6 + c0048716: 1b9d7063 bgeu s10,s9,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:243 *q++ = c; - c004854a: 00dd0023 sb a3,0(s10) + c004871a: 00dd0023 sb a3,0(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:244 *q = '\0'; - c004854e: 000d00a3 sb zero,1(s10) + c004871e: 000d00a3 sb zero,1(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:246 switch (c) { - c0048552: 07800613 li a2,120 - c0048556: 18d66863 bltu a2,a3,c00486e6 - c004855a: 05700613 li a2,87 - c004855e: 04d66963 bltu a2,a3,c00485b0 - c0048562: 02500713 li a4,37 - c0048566: 16e68963 beq a3,a4,c00486d8 - c004856a: 02400713 li a4,36 - c004856e: 16d77c63 bgeu a4,a3,c00486e6 - c0048572: 04100713 li a4,65 - c0048576: 00e68963 beq a3,a4,c0048588 - c004857a: fbb6869b addiw a3,a3,-69 - c004857e: 0ff6f693 zext.b a3,a3 - c0048582: 4709 li a4,2 - c0048584: 16d76163 bltu a4,a3,c00486e6 + c0048722: 07800613 li a2,120 + c0048726: 18d66863 bltu a2,a3,c00488b6 + c004872a: 05700613 li a2,87 + c004872e: 04d66963 bltu a2,a3,c0048780 + c0048732: 02500713 li a4,37 + c0048736: 16e68963 beq a3,a4,c00488a8 + c004873a: 02400713 li a4,36 + c004873e: 16d77c63 bgeu a4,a3,c00488b6 + c0048742: 04100713 li a4,65 + c0048746: 00e68963 beq a3,a4,c0048758 + c004874a: fbb6869b addiw a3,a3,-69 + c004874e: 0ff6f693 zext.b a3,a3 + c0048752: 4709 li a4,2 + c0048754: 16d76163 bltu a4,a3,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:321 if (i >= argc) - c0048588: 173c5763 bge s8,s3,c00486f6 + c0048758: 173c5763 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:323 if (JS_ToFloat64(ctx, &double_arg, argv[i++])) - c004858c: 004c1793 slli a5,s8,0x4 - c0048590: 97ca add a5,a5,s2 - c0048592: 6390 ld a2,0(a5) - c0048594: 6794 ld a3,8(a5) - c0048596: 00ac addi a1,sp,72 - c0048598: 8522 mv a0,s0 - c004859a: 001c0b9b addiw s7,s8,1 - c004859e: 8f0d40ef jal ra,c001c68e - c00485a2: ed41 bnez a0,c004863a + c004875c: 004c1793 slli a5,s8,0x4 + c0048760: 97ca add a5,a5,s2 + c0048762: 6390 ld a2,0(a5) + c0048764: 6794 ld a3,8(a5) + c0048766: 00ac addi a1,sp,72 + c0048768: 8522 mv a0,s0 + c004876a: 001c0b9b addiw s7,s8,1 + c004876e: 8f0d40ef jal ra,c001c85e + c0048772: ed41 bnez a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:325 dbuf_printf_fun(&dbuf, fmtbuf, double_arg); - c00485a4: 6626 ld a2,72(sp) - c00485a6: 010c addi a1,sp,128 - c00485a8: 8526 mv a0,s1 - c00485aa: fd0ff0ef jal ra,c0047d7a + c0048774: 6626 ld a2,72(sp) + c0048776: 010c addi a1,sp,128 + c0048778: 8526 mv a0,s1 + c004877a: fd0ff0ef jal ra,c0047f4a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:326 break; - c00485ae: a8b5 j c004862a - c00485b0: fa86869b addiw a3,a3,-88 - c00485b4: 0ff6f693 zext.b a3,a3 - c00485b8: 02000613 li a2,32 - c00485bc: 12d66563 bltu a2,a3,c00486e6 - c00485c0: 00028617 auipc a2,0x28 - c00485c4: 3a460613 addi a2,a2,932 # c0070964 - c00485c8: 068a slli a3,a3,0x2 - c00485ca: 96b2 add a3,a3,a2 - c00485cc: 4294 lw a3,0(a3) - c00485ce: 96b2 add a3,a3,a2 - c00485d0: 8682 jr a3 + c004877e: a8b5 j c00487fa + c0048780: fa86869b addiw a3,a3,-88 + c0048784: 0ff6f693 zext.b a3,a3 + c0048788: 02000613 li a2,32 + c004878c: 12d66563 bltu a2,a3,c00488b6 + c0048790: 00028617 auipc a2,0x28 + c0048794: 43460613 addi a2,a2,1076 # c0070bc4 + c0048798: 068a slli a3,a3,0x2 + c004879a: 96b2 add a3,a3,a2 + c004879c: 4294 lw a3,0(a3) + c004879e: 96b2 add a3,a3,a2 + c00487a0: 8682 jr a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:248 if (i >= argc) - c00485d2: 133c5263 bge s8,s3,c00486f6 + c00487a2: 133c5263 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:250 if (JS_IsString(argv[i])) { - c00485d6: 004c1713 slli a4,s8,0x4 - c00485da: 974a add a4,a4,s2 + c00487a6: 004c1713 slli a4,s8,0x4 + c00487aa: 974a add a4,a4,s2 JS_IsString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:620 return JS_VALUE_GET_TAG(v) == JS_TAG_STRING; - c00485dc: 6714 ld a3,8(a4) + c00487ac: 6714 ld a3,8(a4) js_printf_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:250 - c00485de: 57e5 li a5,-7 + c00487ae: 57e5 li a5,-7 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:251 string_arg = JS_ToCString(ctx, argv[i++]); - c00485e0: 001c0b9b addiw s7,s8,1 + c00487b0: 001c0b9b addiw s7,s8,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:250 if (JS_IsString(argv[i])) { - c00485e4: 0006861b sext.w a2,a3 - c00485e8: 04f61363 bne a2,a5,c004862e + c00487b4: 0006861b sext.w a2,a3 + c00487b8: 04f61363 bne a2,a5,c00487fe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:251 string_arg = JS_ToCString(ctx, argv[i++]); - c00485ec: 630c ld a1,0(a4) - c00485ee: 8636 mv a2,a3 - c00485f0: 8522 mv a0,s0 - c00485f2: d63ff0ef jal ra,c0048354 - c00485f6: 8c2a mv s8,a0 + c00487bc: 630c ld a1,0(a4) + c00487be: 8636 mv a2,a3 + c00487c0: 8522 mv a0,s0 + c00487c2: d63ff0ef jal ra,c0048524 + c00487c6: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:252 if (!string_arg) - c00485f8: c129 beqz a0,c004863a + c00487c8: c129 beqz a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:254 int32_arg = unicode_from_utf8((uint8_t *)string_arg, UTF8_CHAR_LEN_MAX, &p); - c00485fa: 4599 li a1,6 - c00485fc: 1810 addi a2,sp,48 - c00485fe: 91dff0ef jal ra,c0047f1a - c0048602: d22a sw a0,36(sp) + c00487ca: 4599 li a1,6 + c00487cc: 1810 addi a2,sp,48 + c00487ce: 91dff0ef jal ra,c00480ea + c00487d2: d22a sw a0,36(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:255 JS_FreeCString(ctx, string_arg); - c0048604: 85e2 mv a1,s8 - c0048606: 8522 mv a0,s0 - c0048608: 879c00ef jal ra,c0008e80 + c00487d4: 85e2 mv a1,s8 + c00487d6: 8522 mv a0,s0 + c00487d8: f96c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:261 if ((unsigned)int32_arg > 0x10FFFF) - c004860c: 5712 lw a4,36(sp) - c004860e: 001107b7 lui a5,0x110 - c0048612: 00f76363 bltu a4,a5,c0048618 + c00487dc: 5712 lw a4,36(sp) + c00487de: 001107b7 lui a5,0x110 + c00487e2: 00f76363 bltu a4,a5,c00487e8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:262 int32_arg = 0xFFFD; - c0048616: d26e sw s11,36(sp) + c00487e6: d26e sw s11,36(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:264 len = unicode_to_utf8(cbuf, int32_arg); - c0048618: 5592 lw a1,36(sp) - c004861a: 1028 addi a0,sp,40 - c004861c: 811ff0ef jal ra,c0047e2c - c0048620: 862a mv a2,a0 + c00487e8: 5592 lw a1,36(sp) + c00487ea: 1028 addi a0,sp,40 + c00487ec: 811ff0ef jal ra,c0047ffc + c00487f0: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:265 dbuf_put(&dbuf, cbuf, len); - c0048622: 102c addi a1,sp,40 - c0048624: 8526 mv a0,s1 - c0048626: e8aff0ef jal ra,c0047cb0 + c00487f2: 102c addi a1,sp,40 + c00487f4: 8526 mv a0,s1 + c00487f6: e8aff0ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:330 break; - c004862a: 8c5e mv s8,s7 - c004862c: bb79 j c00483ca + c00487fa: 8c5e mv s8,s7 + c00487fc: bb79 j c004859a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:257 if (JS_ToInt32(ctx, &int32_arg, argv[i++])) - c004862e: 6310 ld a2,0(a4) - c0048630: 104c addi a1,sp,36 - c0048632: 8522 mv a0,s0 - c0048634: d3bd30ef jal ra,c001c36e - c0048638: d971 beqz a0,c004860c + c00487fe: 6310 ld a2,0(a4) + c0048800: 104c addi a1,sp,36 + c0048802: 8522 mv a0,s0 + c0048804: d3bd30ef jal ra,c001c53e + c0048808: d971 beqz a0,c00487dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:358 dbuf_free(&dbuf); - c004863a: 8526 mv a0,s1 - c004863c: fcaff0ef jal ra,c0047e06 + c004880a: 8526 mv a0,s1 + c004880c: fcaff0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:359 return JS_EXCEPTION; - c0048640: 4799 li a5,6 - c0048642: f082 sd zero,96(sp) - c0048644: f4be sd a5,104(sp) - c0048646: a0f5 j c0048732 - c0048648: e842 sd a6,16(sp) + c0048810: 4799 li a5,6 + c0048812: f082 sd zero,96(sp) + c0048814: f4be sd a5,104(sp) + c0048816: a0f5 j c0048902 + c0048818: e842 sd a6,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:274 if (i >= argc) - c004864a: 0b3c5663 bge s8,s3,c00486f6 + c004881a: 0b3c5663 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:276 if (JS_ToInt64Ext(ctx, &int64_arg, argv[i++])) - c004864e: 004c1793 slli a5,s8,0x4 - c0048652: 97ca add a5,a5,s2 - c0048654: 6390 ld a2,0(a5) - c0048656: 6794 ld a3,8(a5) - c0048658: 008c addi a1,sp,64 - c004865a: 8522 mv a0,s0 - c004865c: 001c0b9b addiw s7,s8,1 - c0048660: c1cd70ef jal ra,c001fa7c - c0048664: f979 bnez a0,c004863a + c004881e: 004c1793 slli a5,s8,0x4 + c0048822: 97ca add a5,a5,s2 + c0048824: 6390 ld a2,0(a5) + c0048826: 6794 ld a3,8(a5) + c0048828: 008c addi a1,sp,64 + c004882a: 8522 mv a0,s0 + c004882c: 001c0b9b addiw s7,s8,1 + c0048830: c1cd70ef jal ra,c001fc4c + c0048834: f979 bnez a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:278 if (mod == 'l') { - c0048666: 6842 ld a6,16(sp) - c0048668: 06c00793 li a5,108 - c004866c: 02f81863 bne a6,a5,c004869c + c0048836: 6842 ld a6,16(sp) + c0048838: 06c00793 li a5,108 + c004883c: 02f81863 bne a6,a5,c004886c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:290 if (q >= fmtbuf + sizeof(fmtbuf) - 2) - c0048670: 09e10693 addi a3,sp,158 + c0048840: 09e10693 addi a3,sp,158 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:243 *q++ = c; - c0048674: 001d0793 addi a5,s10,1 + c0048844: 001d0793 addi a5,s10,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:290 if (q >= fmtbuf + sizeof(fmtbuf) - 2) - c0048678: 06d7f763 bgeu a5,a3,c00486e6 + c0048848: 06d7f763 bgeu a5,a3,c00488b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:292 q[1] = q[-1]; - c004867c: 000d4783 lbu a5,0(s10) + c004884c: 000d4783 lbu a5,0(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:295 dbuf_printf_fun(&dbuf, fmtbuf, (long long)int64_arg); - c0048680: 6606 ld a2,64(sp) + c0048850: 6606 ld a2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:293 q[-1] = q[0] = 'l'; - c0048682: 010d00a3 sb a6,1(s10) + c0048852: 010d00a3 sb a6,1(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:292 q[1] = q[-1]; - c0048686: 00fd0123 sb a5,2(s10) + c0048856: 00fd0123 sb a5,2(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:293 q[-1] = q[0] = 'l'; - c004868a: 010d0023 sb a6,0(s10) + c004885a: 010d0023 sb a6,0(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:294 q[2] = '\0'; - c004868e: 000d01a3 sb zero,3(s10) + c004885e: 000d01a3 sb zero,3(s10) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:295 dbuf_printf_fun(&dbuf, fmtbuf, (long long)int64_arg); - c0048692: 010c addi a1,sp,128 - c0048694: 8526 mv a0,s1 - c0048696: ee4ff0ef jal ra,c0047d7a - c004869a: bf41 j c004862a + c0048862: 010c addi a1,sp,128 + c0048864: 8526 mv a0,s1 + c0048866: ee4ff0ef jal ra,c0047f4a + c004886a: bf41 j c00487fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:298 dbuf_printf_fun(&dbuf, fmtbuf, (int)int64_arg); - c004869c: 4606 lw a2,64(sp) - c004869e: 010c addi a1,sp,128 - c00486a0: 8526 mv a0,s1 - c00486a2: ed8ff0ef jal ra,c0047d7a - c00486a6: b751 j c004862a + c004886c: 4606 lw a2,64(sp) + c004886e: 010c addi a1,sp,128 + c0048870: 8526 mv a0,s1 + c0048872: ed8ff0ef jal ra,c0047f4a + c0048876: b751 j c00487fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:303 if (i >= argc) - c00486a8: 053c5763 bge s8,s3,c00486f6 + c0048878: 053c5763 bge s8,s3,c00488c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:306 string_arg = JS_ToCString(ctx, argv[i++]); - c00486ac: 004c1793 slli a5,s8,0x4 - c00486b0: 97ca add a5,a5,s2 - c00486b2: 638c ld a1,0(a5) - c00486b4: 6790 ld a2,8(a5) - c00486b6: 8522 mv a0,s0 - c00486b8: 001c0b9b addiw s7,s8,1 - c00486bc: c99ff0ef jal ra,c0048354 - c00486c0: 8c2a mv s8,a0 + c004887c: 004c1793 slli a5,s8,0x4 + c0048880: 97ca add a5,a5,s2 + c0048882: 638c ld a1,0(a5) + c0048884: 6790 ld a2,8(a5) + c0048886: 8522 mv a0,s0 + c0048888: 001c0b9b addiw s7,s8,1 + c004888c: c99ff0ef jal ra,c0048524 + c0048890: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:307 if (!string_arg) - c00486c2: dd25 beqz a0,c004863a + c0048892: dd25 beqz a0,c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:309 dbuf_printf_fun(&dbuf, fmtbuf, string_arg); - c00486c4: 862a mv a2,a0 - c00486c6: 010c addi a1,sp,128 - c00486c8: 8526 mv a0,s1 - c00486ca: eb0ff0ef jal ra,c0047d7a + c0048894: 862a mv a2,a0 + c0048896: 010c addi a1,sp,128 + c0048898: 8526 mv a0,s1 + c004889a: eb0ff0ef jal ra,c0047f4a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:310 JS_FreeCString(ctx, string_arg); - c00486ce: 85e2 mv a1,s8 - c00486d0: 8522 mv a0,s0 - c00486d2: faec00ef jal ra,c0008e80 + c004889e: 85e2 mv a1,s8 + c00488a0: 8522 mv a0,s0 + c00488a2: eccc00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:311 break; - c00486d6: bf91 j c004862a + c00488a6: bf91 j c00487fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:329 dbuf_putc(&dbuf, '%'); - c00486d8: 02500593 li a1,37 - c00486dc: 8526 mv a0,s1 - c00486de: e64ff0ef jal ra,c0047d42 + c00488a8: 02500593 li a1,37 + c00488ac: 8526 mv a0,s1 + c00488ae: e64ff0ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:330 break; - c00486e2: 8be2 mv s7,s8 - c00486e4: b799 j c004862a + c00488b2: 8be2 mv s7,s8 + c00488b4: b799 j c00487fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:335 JS_ThrowTypeError(ctx, "invalid conversion specifier in format string"); - c00486e6: 8522 mv a0,s0 - c00486e8: 00028597 auipc a1,0x28 - c00486ec: 22058593 addi a1,a1,544 # c0070908 - c00486f0: d07ca0ef jal ra,c00133f6 + c00488b6: 8522 mv a0,s0 + c00488b8: 00028597 auipc a1,0x28 + c00488bc: 2b058593 addi a1,a1,688 # c0070b68 + c00488c0: c25ca0ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:336 goto fail; - c00486f4: b799 j c004863a + c00488c4: b799 j c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:338 JS_ThrowReferenceError(ctx, "missing argument for conversion specifier"); - c00486f6: 8522 mv a0,s0 - c00486f8: 00028597 auipc a1,0x28 - c00486fc: 24058593 addi a1,a1,576 # c0070938 - c0048700: 9aecc0ef jal ra,c00148ae + c00488c6: 8522 mv a0,s0 + c00488c8: 00028597 auipc a1,0x28 + c00488cc: 2d058593 addi a1,a1,720 # c0070b98 + c00488d0: 8cccc0ef jal ra,c001499c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:339 goto fail; - c0048704: bf1d j c004863a + c00488d4: bf1d j c004880a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:347 if (fp) { - c0048706: 67a2 ld a5,8(sp) + c00488d6: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:348 len = fwrite(dbuf.buf, 1, dbuf.size, fp); - c0048708: 750a ld a0,160(sp) - c004870a: 762a ld a2,168(sp) + c00488d8: 750a ld a0,160(sp) + c00488da: 762a ld a2,168(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:347 if (fp) { - c004870c: c7a1 beqz a5,c0048754 + c00488dc: c7a1 beqz a5,c0048924 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:348 len = fwrite(dbuf.buf, 1, dbuf.size, fp); - c004870e: 86be mv a3,a5 - c0048710: 4585 li a1,1 - c0048712: 4b90c0ef jal ra,c00553ca - c0048716: 0005041b sext.w s0,a0 + c00488de: 86be mv a3,a5 + c00488e0: 4585 li a1,1 + c00488e2: 4b90c0ef jal ra,c005559a + c00488e6: 0005041b sext.w s0,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004871a: da82 sw zero,116(sp) - c004871c: d8a2 sw s0,112(sp) - c004871e: 77c6 ld a5,112(sp) - c0048720: 4901 li s2,0 - c0048722: e8be sd a5,80(sp) + c00488ea: da82 sw zero,116(sp) + c00488ec: d8a2 sw s0,112(sp) + c00488ee: 77c6 ld a5,112(sp) + c00488f0: 4901 li s2,0 + c00488f2: e8be sd a5,80(sp) js_printf_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:354 dbuf_free(&dbuf); - c0048724: 8526 mv a0,s1 - c0048726: ee0ff0ef jal ra,c0047e06 + c00488f4: 8526 mv a0,s1 + c00488f6: ee0ff0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:355 return res; - c004872a: c8a2 sw s0,80(sp) - c004872c: 67c6 ld a5,80(sp) - c004872e: f4ca sd s2,104(sp) - c0048730: f0be sd a5,96(sp) + c00488fa: c8a2 sw s0,80(sp) + c00488fc: 67c6 ld a5,80(sp) + c00488fe: f4ca sd s2,104(sp) + c0048900: f0be sd a5,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:360 } - c0048732: 70f2 ld ra,312(sp) - c0048734: 7452 ld s0,304(sp) - c0048736: 7506 ld a0,96(sp) - c0048738: 75a6 ld a1,104(sp) - c004873a: 74b2 ld s1,296(sp) - c004873c: 7912 ld s2,288(sp) - c004873e: 69f2 ld s3,280(sp) - c0048740: 6a52 ld s4,272(sp) - c0048742: 6ab2 ld s5,264(sp) - c0048744: 6b12 ld s6,256(sp) - c0048746: 7bee ld s7,248(sp) - c0048748: 7c4e ld s8,240(sp) - c004874a: 7cae ld s9,232(sp) - c004874c: 7d0e ld s10,224(sp) - c004874e: 6dee ld s11,216(sp) - c0048750: 6131 addi sp,sp,320 - c0048752: 8082 ret + c0048902: 70f2 ld ra,312(sp) + c0048904: 7452 ld s0,304(sp) + c0048906: 7506 ld a0,96(sp) + c0048908: 75a6 ld a1,104(sp) + c004890a: 74b2 ld s1,296(sp) + c004890c: 7912 ld s2,288(sp) + c004890e: 69f2 ld s3,280(sp) + c0048910: 6a52 ld s4,272(sp) + c0048912: 6ab2 ld s5,264(sp) + c0048914: 6b12 ld s6,256(sp) + c0048916: 7bee ld s7,248(sp) + c0048918: 7c4e ld s8,240(sp) + c004891a: 7cae ld s9,232(sp) + c004891c: 7d0e ld s10,224(sp) + c004891e: 6dee ld s11,216(sp) + c0048920: 6131 addi sp,sp,320 + c0048922: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:351 res = JS_NewStringLen(ctx, (char *)dbuf.buf, dbuf.size); - c0048754: 85aa mv a1,a0 - c0048756: 8522 mv a0,s0 - c0048758: b39d00ef jal ra,c0019290 - c004875c: b175 j c0048408 + c0048924: 85aa mv a1,a0 + c0048926: 8522 mv a0,s0 + c0048928: b39d00ef jal ra,c0019460 + c004892c: b175 j c00485d8 -00000000c004875e : +00000000c004892e : js_std_sprintf(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:994 { - c004875e: 1101 addi sp,sp,-32 - c0048760: 85b6 mv a1,a3 + c004892e: 1101 addi sp,sp,-32 + c0048930: 85b6 mv a1,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:995 return js_printf_internal(ctx, argc, argv, NULL); - c0048762: 4681 li a3,0 - c0048764: 863a mv a2,a4 + c0048932: 4681 li a3,0 + c0048934: 863a mv a2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:996 } - c0048766: 6105 addi sp,sp,32 + c0048936: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:995 return js_printf_internal(ctx, argc, argv, NULL); - c0048768: bfdff06f j c0048364 + c0048938: bfdff06f j c0048534 -00000000c004876c : +00000000c004893c : js_std_printf(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1000 { - c004876c: 7139 addi sp,sp,-64 - c004876e: f822 sd s0,48(sp) - c0048770: 842a mv s0,a0 + c004893c: 7139 addi sp,sp,-64 + c004893e: f822 sd s0,48(sp) + c0048940: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1001 return js_printf_internal(ctx, argc, argv, stdout); - c0048772: 4505 li a0,1 + c0048942: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1000 { - c0048774: fc06 sd ra,56(sp) - c0048776: e436 sd a3,8(sp) - c0048778: e03a sd a4,0(sp) + c0048944: fc06 sd ra,56(sp) + c0048946: e436 sd a3,8(sp) + c0048948: e03a sd a4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1001 return js_printf_internal(ctx, argc, argv, stdout); - c004877a: 06e0d0ef jal ra,c00557e8 - c004877e: 86aa mv a3,a0 - c0048780: 8522 mv a0,s0 + c004894a: 06e0d0ef jal ra,c00559b8 + c004894e: 86aa mv a3,a0 + c0048950: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1002 } - c0048782: 7442 ld s0,48(sp) + c0048952: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1001 return js_printf_internal(ctx, argc, argv, stdout); - c0048784: 6602 ld a2,0(sp) - c0048786: 65a2 ld a1,8(sp) + c0048954: 6602 ld a2,0(sp) + c0048956: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1002 } - c0048788: 70e2 ld ra,56(sp) - c004878a: 6121 addi sp,sp,64 + c0048958: 70e2 ld ra,56(sp) + c004895a: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1001 return js_printf_internal(ctx, argc, argv, stdout); - c004878c: bd9ff06f j c0048364 + c004895c: bd9ff06f j c0048534 -00000000c0048790 : +00000000c0048960 : js_std_file_get(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1005 { - c0048790: 7179 addi sp,sp,-48 + c0048960: 7179 addi sp,sp,-48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1006 JSSTDFile *s = JS_GetOpaque2(ctx, obj, js_std_file_class_id); - c0048792: 000b9697 auipc a3,0xb9 - c0048796: 9666a683 lw a3,-1690(a3) # c01010f8 + c0048962: 000b8697 auipc a3,0xb8 + c0048966: 7966a683 lw a3,1942(a3) # c01010f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1005 { - c004879a: f022 sd s0,32(sp) - c004879c: ec26 sd s1,24(sp) - c004879e: f406 sd ra,40(sp) - c00487a0: 84aa mv s1,a0 - c00487a2: e02e sd a1,0(sp) - c00487a4: e432 sd a2,8(sp) + c004896a: f022 sd s0,32(sp) + c004896c: ec26 sd s1,24(sp) + c004896e: f406 sd ra,40(sp) + c0048970: 84aa mv s1,a0 + c0048972: e02e sd a1,0(sp) + c0048974: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1006 JSSTDFile *s = JS_GetOpaque2(ctx, obj, js_std_file_class_id); - c00487a6: dd3ca0ef jal ra,c0013578 - c00487aa: 842a mv s0,a0 + c0048976: cf1ca0ef jal ra,c0013666 + c004897a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1007 if (!s) - c00487ac: c911 beqz a0,c00487c0 + c004897c: c911 beqz a0,c0048990 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1009 if (!s->f) { - c00487ae: 6100 ld s0,0(a0) - c00487b0: e801 bnez s0,c00487c0 + c004897e: 6100 ld s0,0(a0) + c0048980: e801 bnez s0,c0048990 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1010 JS_ThrowTypeError(ctx, "invalid file handle"); - c00487b2: 00028597 auipc a1,0x28 - c00487b6: 23658593 addi a1,a1,566 # c00709e8 - c00487ba: 8526 mv a0,s1 - c00487bc: c3bca0ef jal ra,c00133f6 + c0048982: 00028597 auipc a1,0x28 + c0048986: 2c658593 addi a1,a1,710 # c0070c48 + c004898a: 8526 mv a0,s1 + c004898c: b59ca0ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1014 } - c00487c0: 70a2 ld ra,40(sp) - c00487c2: 8522 mv a0,s0 - c00487c4: 7402 ld s0,32(sp) - c00487c6: 64e2 ld s1,24(sp) - c00487c8: 6145 addi sp,sp,48 - c00487ca: 8082 ret + c0048990: 70a2 ld ra,40(sp) + c0048992: 8522 mv a0,s0 + c0048994: 7402 ld s0,32(sp) + c0048996: 64e2 ld s1,24(sp) + c0048998: 6145 addi sp,sp,48 + c004899a: 8082 ret -00000000c00487cc : +00000000c004899c : js_std_file_seek(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1098 { - c00487cc: 711d addi sp,sp,-96 - c00487ce: e8a2 sd s0,80(sp) - c00487d0: e0ca sd s2,64(sp) - c00487d2: ec86 sd ra,88(sp) - c00487d4: e4a6 sd s1,72(sp) - c00487d6: 892a mv s2,a0 - c00487d8: e02e sd a1,0(sp) - c00487da: e432 sd a2,8(sp) - c00487dc: 843a mv s0,a4 + c004899c: 711d addi sp,sp,-96 + c004899e: e8a2 sd s0,80(sp) + c00489a0: e0ca sd s2,64(sp) + c00489a2: ec86 sd ra,88(sp) + c00489a4: e4a6 sd s1,72(sp) + c00489a6: 892a mv s2,a0 + c00489a8: e02e sd a1,0(sp) + c00489aa: e432 sd a2,8(sp) + c00489ac: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1099 FILE *f = js_std_file_get(ctx, this_val); - c00487de: fb3ff0ef jal ra,c0048790 + c00489ae: fb3ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1102 if (!f) - c00487e2: ed01 bnez a0,c00487fa + c00489b2: ed01 bnez a0,c00489ca /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1103 return JS_EXCEPTION; - c00487e4: 4799 li a5,6 - c00487e6: f002 sd zero,32(sp) - c00487e8: f43e sd a5,40(sp) + c00489b4: 4799 li a5,6 + c00489b6: f002 sd zero,32(sp) + c00489b8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1116 (discriminator 1) } - c00487ea: 60e6 ld ra,88(sp) - c00487ec: 6446 ld s0,80(sp) - c00487ee: 7502 ld a0,32(sp) - c00487f0: 75a2 ld a1,40(sp) - c00487f2: 64a6 ld s1,72(sp) - c00487f4: 6906 ld s2,64(sp) - c00487f6: 6125 addi sp,sp,96 - c00487f8: 8082 ret + c00489ba: 60e6 ld ra,88(sp) + c00489bc: 6446 ld s0,80(sp) + c00489be: 7502 ld a0,32(sp) + c00489c0: 75a2 ld a1,40(sp) + c00489c2: 64a6 ld s1,72(sp) + c00489c4: 6906 ld s2,64(sp) + c00489c6: 6125 addi sp,sp,96 + c00489c8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1104 if (JS_ToInt64Ext(ctx, &pos, argv[0])) - c00487fa: 6010 ld a2,0(s0) - c00487fc: 6414 ld a3,8(s0) - c00487fe: 84aa mv s1,a0 - c0048800: 082c addi a1,sp,24 - c0048802: 854a mv a0,s2 - c0048804: a78d70ef jal ra,c001fa7c - c0048808: fd71 bnez a0,c00487e4 + c00489ca: 6010 ld a2,0(s0) + c00489cc: 6414 ld a3,8(s0) + c00489ce: 84aa mv s1,a0 + c00489d0: 082c addi a1,sp,24 + c00489d2: 854a mv a0,s2 + c00489d4: a78d70ef jal ra,c001fc4c + c00489d8: fd71 bnez a0,c00489b4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1106 if (JS_ToInt32(ctx, &whence, argv[1])) - c004880a: 6810 ld a2,16(s0) - c004880c: 6c14 ld a3,24(s0) - c004880e: 084c addi a1,sp,20 - c0048810: 854a mv a0,s2 - c0048812: b5dd30ef jal ra,c001c36e - c0048816: f579 bnez a0,c00487e4 + c00489da: 6810 ld a2,16(s0) + c00489dc: 6c14 ld a3,24(s0) + c00489de: 084c addi a1,sp,20 + c00489e0: 854a mv a0,s2 + c00489e2: b5dd30ef jal ra,c001c53e + c00489e6: f579 bnez a0,c00489b4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1111 ret = fseek(f, pos, whence); - c0048818: 4652 lw a2,20(sp) - c004881a: 65e2 ld a1,24(sp) - c004881c: 8526 mv a0,s1 - c004881e: 2bd0c0ef jal ra,c00552da + c00489e8: 4652 lw a2,20(sp) + c00489ea: 65e2 ld a1,24(sp) + c00489ec: 8526 mv a0,s1 + c00489ee: 2bd0c0ef jal ra,c00554aa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1113 if (ret < 0) - c0048822: 00055763 bgez a0,c0048830 + c00489f2: 00055763 bgez a0,c0048a00 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1114 ret = -errno; - c0048826: 2ae0b0ef jal ra,c0053ad4 <__errno> - c004882a: 4108 lw a0,0(a0) - c004882c: 40a0053b negw a0,a0 + c00489f6: 2ae0b0ef jal ra,c0053ca4 <__errno> + c00489fa: 4108 lw a0,0(a0) + c00489fc: 40a0053b negw a0,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0048830: da02 sw zero,52(sp) - c0048832: d82a sw a0,48(sp) - c0048834: 77c2 ld a5,48(sp) - c0048836: f402 sd zero,40(sp) - c0048838: f03e sd a5,32(sp) - c004883a: bf45 j c00487ea - -00000000c004883c : + c0048a00: da02 sw zero,52(sp) + c0048a02: d82a sw a0,48(sp) + c0048a04: 77c2 ld a5,48(sp) + c0048a06: f402 sd zero,40(sp) + c0048a08: f03e sd a5,32(sp) + c0048a0a: bf45 j c00489ba + +00000000c0048a0c : js_std_file_printf(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1061 { - c004883c: 7139 addi sp,sp,-64 - c004883e: f822 sd s0,48(sp) - c0048840: f426 sd s1,40(sp) - c0048842: f04a sd s2,32(sp) - c0048844: fc06 sd ra,56(sp) - c0048846: 842a mv s0,a0 - c0048848: 84b6 mv s1,a3 - c004884a: 893a mv s2,a4 + c0048a0c: 7139 addi sp,sp,-64 + c0048a0e: f822 sd s0,48(sp) + c0048a10: f426 sd s1,40(sp) + c0048a12: f04a sd s2,32(sp) + c0048a14: fc06 sd ra,56(sp) + c0048a16: 842a mv s0,a0 + c0048a18: 84b6 mv s1,a3 + c0048a1a: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1062 FILE *f = js_std_file_get(ctx, this_val); - c004884c: f45ff0ef jal ra,c0048790 + c0048a1c: f45ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1063 if (!f) - c0048850: cd01 beqz a0,c0048868 - c0048852: 86aa mv a3,a0 + c0048a20: cd01 beqz a0,c0048a38 + c0048a22: 86aa mv a3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1065 return js_printf_internal(ctx, argc, argv, f); - c0048854: 8522 mv a0,s0 + c0048a24: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1066 } - c0048856: 7442 ld s0,48(sp) - c0048858: 70e2 ld ra,56(sp) + c0048a26: 7442 ld s0,48(sp) + c0048a28: 70e2 ld ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1065 return js_printf_internal(ctx, argc, argv, f); - c004885a: 864a mv a2,s2 - c004885c: 85a6 mv a1,s1 + c0048a2a: 864a mv a2,s2 + c0048a2c: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1066 } - c004885e: 7902 ld s2,32(sp) - c0048860: 74a2 ld s1,40(sp) - c0048862: 6121 addi sp,sp,64 + c0048a2e: 7902 ld s2,32(sp) + c0048a30: 74a2 ld s1,40(sp) + c0048a32: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1065 return js_printf_internal(ctx, argc, argv, f); - c0048864: b01ff06f j c0048364 + c0048a34: b01ff06f j c0048534 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1066 (discriminator 1) } - c0048868: 70e2 ld ra,56(sp) - c004886a: 7442 ld s0,48(sp) - c004886c: 74a2 ld s1,40(sp) - c004886e: 7902 ld s2,32(sp) - c0048870: 4599 li a1,6 - c0048872: 6121 addi sp,sp,64 - c0048874: 8082 ret + c0048a38: 70e2 ld ra,56(sp) + c0048a3a: 7442 ld s0,48(sp) + c0048a3c: 74a2 ld s1,40(sp) + c0048a3e: 7902 ld s2,32(sp) + c0048a40: 4599 li a1,6 + c0048a42: 6121 addi sp,sp,64 + c0048a44: 8082 ret -00000000c0048876 : +00000000c0048a46 : js_set_error_object(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:870 if (!JS_IsUndefined(obj)) { - c0048876: 0006079b sext.w a5,a2 - c004887a: 470d li a4,3 - c004887c: 00e78e63 beq a5,a4,c0048898 + c0048a46: 0006079b sext.w a5,a2 + c0048a4a: 470d li a4,3 + c0048a4c: 00e78e63 beq a5,a4,c0048a68 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:869 { - c0048880: 7179 addi sp,sp,-48 + c0048a50: 7179 addi sp,sp,-48 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0048882: f002 sd zero,32(sp) - c0048884: d036 sw a3,32(sp) + c0048a52: f002 sd zero,32(sp) + c0048a54: d036 sw a3,32(sp) js_set_error_object(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:871 JS_SetPropertyStr(ctx, obj, "errno", JS_NewInt32(ctx, err)); - c0048886: 7702 ld a4,32(sp) - c0048888: 4781 li a5,0 - c004888a: 00028697 auipc a3,0x28 - c004888e: 17668693 addi a3,a3,374 # c0070a00 + c0048a56: 7702 ld a4,32(sp) + c0048a58: 4781 li a5,0 + c0048a5a: 00028697 auipc a3,0x28 + c0048a5e: 20668693 addi a3,a3,518 # c0070c60 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:873 } - c0048892: 6145 addi sp,sp,48 + c0048a62: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:871 JS_SetPropertyStr(ctx, obj, "errno", JS_NewInt32(ctx, err)); - c0048894: c15e706f j c00304a8 - c0048898: 8082 ret + c0048a64: c15e706f j c0030678 + c0048a68: 8082 ret -00000000c004889a : +00000000c0048a6a : js_new_std_file(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:850 { - c004889a: 715d addi sp,sp,-80 - c004889c: fc26 sd s1,56(sp) - c004889e: 84ae mv s1,a1 + c0048a6a: 715d addi sp,sp,-80 + c0048a6c: fc26 sd s1,56(sp) + c0048a6e: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:853 obj = JS_NewObjectClass(ctx, js_std_file_class_id); - c00488a0: 000b9597 auipc a1,0xb9 - c00488a4: 8585a583 lw a1,-1960(a1) # c01010f8 + c0048a70: 000b8597 auipc a1,0xb8 + c0048a74: 6885a583 lw a1,1672(a1) # c01010f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:850 { - c00488a8: e0a2 sd s0,64(sp) - c00488aa: f84a sd s2,48(sp) - c00488ac: f44e sd s3,40(sp) - c00488ae: f052 sd s4,32(sp) - c00488b0: e486 sd ra,72(sp) - c00488b2: 842a mv s0,a0 - c00488b4: 89b2 mv s3,a2 - c00488b6: 8936 mv s2,a3 + c0048a78: e0a2 sd s0,64(sp) + c0048a7a: f84a sd s2,48(sp) + c0048a7c: f44e sd s3,40(sp) + c0048a7e: f052 sd s4,32(sp) + c0048a80: e486 sd ra,72(sp) + c0048a82: 842a mv s0,a0 + c0048a84: 89b2 mv s3,a2 + c0048a86: 8936 mv s2,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:853 obj = JS_NewObjectClass(ctx, js_std_file_class_id); - c00488b8: bb8ce0ef jal ra,c0016c70 - c00488bc: e02a sd a0,0(sp) - c00488be: e42e sd a1,8(sp) + c0048a88: bb8ce0ef jal ra,c0016e40 + c0048a8c: e02a sd a0,0(sp) + c0048a8e: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:854 if (JS_IsException(obj)) - c00488c0: 0005879b sext.w a5,a1 - c00488c4: 4a19 li s4,6 - c00488c6: 01479e63 bne a5,s4,c00488e2 + c0048a90: 0005879b sext.w a5,a1 + c0048a94: 4a19 li s4,6 + c0048a96: 01479e63 bne a5,s4,c0048ab2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:855 return obj; - c00488ca: e82a sd a0,16(sp) - c00488cc: ec2e sd a1,24(sp) + c0048a9a: e82a sd a0,16(sp) + c0048a9c: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:866 (discriminator 1) } - c00488ce: 60a6 ld ra,72(sp) - c00488d0: 6406 ld s0,64(sp) - c00488d2: 6542 ld a0,16(sp) - c00488d4: 65e2 ld a1,24(sp) - c00488d6: 74e2 ld s1,56(sp) - c00488d8: 7942 ld s2,48(sp) - c00488da: 79a2 ld s3,40(sp) - c00488dc: 7a02 ld s4,32(sp) - c00488de: 6161 addi sp,sp,80 - c00488e0: 8082 ret + c0048a9e: 60a6 ld ra,72(sp) + c0048aa0: 6406 ld s0,64(sp) + c0048aa2: 6542 ld a0,16(sp) + c0048aa4: 65e2 ld a1,24(sp) + c0048aa6: 74e2 ld s1,56(sp) + c0048aa8: 7942 ld s2,48(sp) + c0048aaa: 79a2 ld s3,40(sp) + c0048aac: 7a02 ld s4,32(sp) + c0048aae: 6161 addi sp,sp,80 + c0048ab0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:856 s = js_mallocz(ctx, sizeof(*s)); - c00488e2: 45c1 li a1,16 - c00488e4: 8522 mv a0,s0 - c00488e6: bf6cd0ef jal ra,c0015cdc - c00488ea: 862a mv a2,a0 + c0048ab2: 45c1 li a1,16 + c0048ab4: 8522 mv a0,s0 + c0048ab6: bf6cd0ef jal ra,c0015eac + c0048aba: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:857 if (!s) { - c00488ec: e909 bnez a0,c00488fe + c0048abc: e909 bnez a0,c0048ace /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:858 JS_FreeValue(ctx, obj); - c00488ee: 6582 ld a1,0(sp) - c00488f0: 6622 ld a2,8(sp) - c00488f2: 8522 mv a0,s0 - c00488f4: a19ff0ef jal ra,c004830c + c0048abe: 6582 ld a1,0(sp) + c0048ac0: 6622 ld a2,8(sp) + c0048ac2: 8522 mv a0,s0 + c0048ac4: a19ff0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:859 return JS_EXCEPTION; - c00488f8: e802 sd zero,16(sp) - c00488fa: ec52 sd s4,24(sp) - c00488fc: bfc9 j c00488ce + c0048ac8: e802 sd zero,16(sp) + c0048aca: ec52 sd s4,24(sp) + c0048acc: bfc9 j c0048a9e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:861 s->close_in_finalizer = close_in_finalizer; - c00488fe: 01352423 sw s3,8(a0) + c0048ace: 01352423 sw s3,8(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:862 s->is_popen = is_popen; - c0048902: 01252623 sw s2,12(a0) + c0048ad2: 01252623 sw s2,12(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:863 s->f = f; - c0048906: e104 sd s1,0(a0) + c0048ad6: e104 sd s1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:864 JS_SetOpaque(obj, s); - c0048908: 65a2 ld a1,8(sp) - c004890a: 6502 ld a0,0(sp) - c004890c: f97c10ef jal ra,c000a8a2 + c0048ad8: 65a2 ld a1,8(sp) + c0048ada: 6502 ld a0,0(sp) + c0048adc: eb5c10ef jal ra,c000a990 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:865 return obj; - c0048910: 6782 ld a5,0(sp) - c0048912: e83e sd a5,16(sp) - c0048914: 67a2 ld a5,8(sp) - c0048916: ec3e sd a5,24(sp) - c0048918: bf5d j c00488ce + c0048ae0: 6782 ld a5,0(sp) + c0048ae2: e83e sd a5,16(sp) + c0048ae4: 67a2 ld a5,8(sp) + c0048ae6: ec3e sd a5,24(sp) + c0048ae8: bf5d j c0048a9e -00000000c004891a : +00000000c0048aea : js_std_tmpfile(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:982 { - c004891a: 715d addi sp,sp,-80 - c004891c: e0a2 sd s0,64(sp) - c004891e: fc26 sd s1,56(sp) - c0048920: f84a sd s2,48(sp) - c0048922: f44e sd s3,40(sp) - c0048924: e486 sd ra,72(sp) - c0048926: 84aa mv s1,a0 - c0048928: e02e sd a1,0(sp) - c004892a: e432 sd a2,8(sp) - c004892c: 89b6 mv s3,a3 - c004892e: 893a mv s2,a4 + c0048aea: 715d addi sp,sp,-80 + c0048aec: e0a2 sd s0,64(sp) + c0048aee: fc26 sd s1,56(sp) + c0048af0: f84a sd s2,48(sp) + c0048af2: f44e sd s3,40(sp) + c0048af4: e486 sd ra,72(sp) + c0048af6: 84aa mv s1,a0 + c0048af8: e02e sd a1,0(sp) + c0048afa: e432 sd a2,8(sp) + c0048afc: 89b6 mv s3,a3 + c0048afe: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:984 f = tmpfile(); - c0048930: 6410c0ef jal ra,c0055770 - c0048934: 842a mv s0,a0 + c0048b00: 6410c0ef jal ra,c0055940 + c0048b04: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:985 if (argc >= 1) - c0048936: 01305e63 blez s3,c0048952 + c0048b06: 01305e63 blez s3,c0048b22 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:986 js_set_error_object(ctx, argv[0], f ? 0 : errno); - c004893a: 4681 li a3,0 - c004893c: e501 bnez a0,c0048944 + c0048b0a: 4681 li a3,0 + c0048b0c: e501 bnez a0,c0048b14 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:986 (discriminator 1) - c004893e: 1960b0ef jal ra,c0053ad4 <__errno> - c0048942: 4114 lw a3,0(a0) + c0048b0e: 1960b0ef jal ra,c0053ca4 <__errno> + c0048b12: 4114 lw a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:986 (discriminator 4) - c0048944: 00093583 ld a1,0(s2) - c0048948: 00893603 ld a2,8(s2) - c004894c: 8526 mv a0,s1 - c004894e: f29ff0ef jal ra,c0048876 + c0048b14: 00093583 ld a1,0(s2) + c0048b18: 00893603 ld a2,8(s2) + c0048b1c: 8526 mv a0,s1 + c0048b1e: f29ff0ef jal ra,c0048a46 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:987 if (!f) - c0048952: cc09 beqz s0,c004896c + c0048b22: cc09 beqz s0,c0048b3c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:989 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048954: 85a2 mv a1,s0 + c0048b24: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:990 } - c0048956: 6406 ld s0,64(sp) - c0048958: 60a6 ld ra,72(sp) - c004895a: 7942 ld s2,48(sp) - c004895c: 79a2 ld s3,40(sp) + c0048b26: 6406 ld s0,64(sp) + c0048b28: 60a6 ld ra,72(sp) + c0048b2a: 7942 ld s2,48(sp) + c0048b2c: 79a2 ld s3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:989 return js_new_std_file(ctx, f, TRUE, FALSE); - c004895e: 8526 mv a0,s1 + c0048b2e: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:990 } - c0048960: 74e2 ld s1,56(sp) + c0048b30: 74e2 ld s1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:989 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048962: 4681 li a3,0 - c0048964: 4605 li a2,1 + c0048b32: 4681 li a3,0 + c0048b34: 4605 li a2,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:990 } - c0048966: 6161 addi sp,sp,80 + c0048b36: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:989 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048968: f33ff06f j c004889a + c0048b38: f33ff06f j c0048a6a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:990 (discriminator 1) } - c004896c: 60a6 ld ra,72(sp) - c004896e: 6406 ld s0,64(sp) - c0048970: 74e2 ld s1,56(sp) - c0048972: 7942 ld s2,48(sp) - c0048974: 79a2 ld s3,40(sp) - c0048976: 4501 li a0,0 - c0048978: 4589 li a1,2 - c004897a: 6161 addi sp,sp,80 - c004897c: 8082 ret - -00000000c004897e : + c0048b3c: 60a6 ld ra,72(sp) + c0048b3e: 6406 ld s0,64(sp) + c0048b40: 74e2 ld s1,56(sp) + c0048b42: 7942 ld s2,48(sp) + c0048b44: 79a2 ld s3,40(sp) + c0048b46: 4501 li a0,0 + c0048b48: 4589 li a1,2 + c0048b4a: 6161 addi sp,sp,80 + c0048b4c: 8082 ret + +00000000c0048b4e : js_std_open(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:877 { - c004897e: 711d addi sp,sp,-96 - c0048980: e02e sd a1,0(sp) - c0048982: e432 sd a2,8(sp) + c0048b4e: 711d addi sp,sp,-96 + c0048b50: e02e sd a1,0(sp) + c0048b52: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:882 filename = JS_ToCString(ctx, argv[0]); - c0048984: 630c ld a1,0(a4) - c0048986: 6710 ld a2,8(a4) + c0048b54: 630c ld a1,0(a4) + c0048b56: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:877 { - c0048988: e8a2 sd s0,80(sp) - c004898a: e0ca sd s2,64(sp) - c004898c: fc4e sd s3,56(sp) - c004898e: f456 sd s5,40(sp) - c0048990: ec86 sd ra,88(sp) - c0048992: e4a6 sd s1,72(sp) - c0048994: f852 sd s4,48(sp) - c0048996: 842a mv s0,a0 - c0048998: 8ab6 mv s5,a3 - c004899a: 893a mv s2,a4 + c0048b58: e8a2 sd s0,80(sp) + c0048b5a: e0ca sd s2,64(sp) + c0048b5c: fc4e sd s3,56(sp) + c0048b5e: f456 sd s5,40(sp) + c0048b60: ec86 sd ra,88(sp) + c0048b62: e4a6 sd s1,72(sp) + c0048b64: f852 sd s4,48(sp) + c0048b66: 842a mv s0,a0 + c0048b68: 8ab6 mv s5,a3 + c0048b6a: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:882 filename = JS_ToCString(ctx, argv[0]); - c004899c: 9b9ff0ef jal ra,c0048354 - c00489a0: 89aa mv s3,a0 + c0048b6c: 9b9ff0ef jal ra,c0048524 + c0048b70: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:883 if (!filename) - c00489a2: c161 beqz a0,c0048a62 + c0048b72: c161 beqz a0,c0048c32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:885 mode = JS_ToCString(ctx, argv[1]); - c00489a4: 01093583 ld a1,16(s2) - c00489a8: 01893603 ld a2,24(s2) - c00489ac: 8522 mv a0,s0 - c00489ae: 9a7ff0ef jal ra,c0048354 - c00489b2: 84aa mv s1,a0 + c0048b74: 01093583 ld a1,16(s2) + c0048b78: 01893603 ld a2,24(s2) + c0048b7c: 8522 mv a0,s0 + c0048b7e: 9a7ff0ef jal ra,c0048524 + c0048b82: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:886 if (!mode) - c00489b4: c55d beqz a0,c0048a62 + c0048b84: c55d beqz a0,c0048c32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:888 if (mode[strspn(mode, "rwa+b")] != '\0') { - c00489b6: 00028597 auipc a1,0x28 - c00489ba: 05258593 addi a1,a1,82 # c0070a08 - c00489be: 5f70d0ef jal ra,c00567b4 - c00489c2: 9526 add a0,a0,s1 - c00489c4: 00054783 lbu a5,0(a0) - c00489c8: c39d beqz a5,c00489ee + c0048b86: 00028597 auipc a1,0x28 + c0048b8a: 0e258593 addi a1,a1,226 # c0070c68 + c0048b8e: 5f70d0ef jal ra,c0056984 + c0048b92: 9526 add a0,a0,s1 + c0048b94: 00054783 lbu a5,0(a0) + c0048b98: c39d beqz a5,c0048bbe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:889 JS_ThrowTypeError(ctx, "invalid file mode"); - c00489ca: 00028597 auipc a1,0x28 - c00489ce: 04658593 addi a1,a1,70 # c0070a10 - c00489d2: 8522 mv a0,s0 - c00489d4: a23ca0ef jal ra,c00133f6 + c0048b9a: 00028597 auipc a1,0x28 + c0048b9e: 0d658593 addi a1,a1,214 # c0070c70 + c0048ba2: 8522 mv a0,s0 + c0048ba4: 941ca0ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:906 JS_FreeCString(ctx, filename); - c00489d8: 85ce mv a1,s3 - c00489da: 8522 mv a0,s0 - c00489dc: ca4c00ef jal ra,c0008e80 + c0048ba8: 85ce mv a1,s3 + c0048baa: 8522 mv a0,s0 + c0048bac: bc2c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:907 JS_FreeCString(ctx, mode); - c00489e0: 85a6 mv a1,s1 - c00489e2: 8522 mv a0,s0 - c00489e4: c9cc00ef jal ra,c0008e80 + c0048bb0: 85a6 mv a1,s1 + c0048bb2: 8522 mv a0,s0 + c0048bb4: bbac00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:908 return JS_EXCEPTION; - c00489e8: 4799 li a5,6 - c00489ea: e802 sd zero,16(sp) - c00489ec: a089 j c0048a2e + c0048bb8: 4799 li a5,6 + c0048bba: e802 sd zero,16(sp) + c0048bbc: a089 j c0048bfe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:893 f = fopen(filename, mode); - c00489ee: 85a6 mv a1,s1 - c00489f0: 854e mv a0,s3 - c00489f2: 6ae0c0ef jal ra,c00550a0 - c00489f6: 8a2a mv s4,a0 + c0048bbe: 85a6 mv a1,s1 + c0048bc0: 854e mv a0,s3 + c0048bc2: 6ae0c0ef jal ra,c0055270 + c0048bc6: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:897 err = 0; - c00489f8: 4681 li a3,0 + c0048bc8: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:894 if (!f) - c00489fa: e501 bnez a0,c0048a02 + c0048bca: e501 bnez a0,c0048bd2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:895 err = errno; - c00489fc: 0d80b0ef jal ra,c0053ad4 <__errno> - c0048a00: 4114 lw a3,0(a0) + c0048bcc: 0d80b0ef jal ra,c0053ca4 <__errno> + c0048bd0: 4114 lw a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:898 if (argc >= 3) - c0048a02: 4789 li a5,2 - c0048a04: 0157d963 bge a5,s5,c0048a16 + c0048bd2: 4789 li a5,2 + c0048bd4: 0157d963 bge a5,s5,c0048be6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:899 js_set_error_object(ctx, argv[2], err); - c0048a08: 02093583 ld a1,32(s2) - c0048a0c: 02893603 ld a2,40(s2) - c0048a10: 8522 mv a0,s0 - c0048a12: e65ff0ef jal ra,c0048876 + c0048bd8: 02093583 ld a1,32(s2) + c0048bdc: 02893603 ld a2,40(s2) + c0048be0: 8522 mv a0,s0 + c0048be2: e65ff0ef jal ra,c0048a46 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:900 JS_FreeCString(ctx, filename); - c0048a16: 85ce mv a1,s3 - c0048a18: 8522 mv a0,s0 - c0048a1a: c66c00ef jal ra,c0008e80 + c0048be6: 85ce mv a1,s3 + c0048be8: 8522 mv a0,s0 + c0048bea: b84c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:901 JS_FreeCString(ctx, mode); - c0048a1e: 85a6 mv a1,s1 - c0048a20: 8522 mv a0,s0 - c0048a22: c5ec00ef jal ra,c0008e80 + c0048bee: 85a6 mv a1,s1 + c0048bf0: 8522 mv a0,s0 + c0048bf2: b7cc00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:902 if (!f) - c0048a26: 020a1063 bnez s4,c0048a46 + c0048bf6: 020a1063 bnez s4,c0048c16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:903 return JS_NULL; - c0048a2a: e802 sd zero,16(sp) - c0048a2c: 4789 li a5,2 + c0048bfa: e802 sd zero,16(sp) + c0048bfc: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:909 } - c0048a2e: 60e6 ld ra,88(sp) - c0048a30: 6446 ld s0,80(sp) + c0048bfe: 60e6 ld ra,88(sp) + c0048c00: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:908 return JS_EXCEPTION; - c0048a32: ec3e sd a5,24(sp) + c0048c02: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:909 } - c0048a34: 6542 ld a0,16(sp) - c0048a36: 65e2 ld a1,24(sp) - c0048a38: 64a6 ld s1,72(sp) - c0048a3a: 6906 ld s2,64(sp) - c0048a3c: 79e2 ld s3,56(sp) - c0048a3e: 7a42 ld s4,48(sp) - c0048a40: 7aa2 ld s5,40(sp) - c0048a42: 6125 addi sp,sp,96 - c0048a44: 8082 ret + c0048c04: 6542 ld a0,16(sp) + c0048c06: 65e2 ld a1,24(sp) + c0048c08: 64a6 ld s1,72(sp) + c0048c0a: 6906 ld s2,64(sp) + c0048c0c: 79e2 ld s3,56(sp) + c0048c0e: 7a42 ld s4,48(sp) + c0048c10: 7aa2 ld s5,40(sp) + c0048c12: 6125 addi sp,sp,96 + c0048c14: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:904 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048a46: 8522 mv a0,s0 + c0048c16: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:909 } - c0048a48: 6446 ld s0,80(sp) - c0048a4a: 60e6 ld ra,88(sp) - c0048a4c: 64a6 ld s1,72(sp) - c0048a4e: 6906 ld s2,64(sp) - c0048a50: 79e2 ld s3,56(sp) - c0048a52: 7aa2 ld s5,40(sp) + c0048c18: 6446 ld s0,80(sp) + c0048c1a: 60e6 ld ra,88(sp) + c0048c1c: 64a6 ld s1,72(sp) + c0048c1e: 6906 ld s2,64(sp) + c0048c20: 79e2 ld s3,56(sp) + c0048c22: 7aa2 ld s5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:904 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048a54: 85d2 mv a1,s4 + c0048c24: 85d2 mv a1,s4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:909 } - c0048a56: 7a42 ld s4,48(sp) + c0048c26: 7a42 ld s4,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:904 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048a58: 4681 li a3,0 - c0048a5a: 4605 li a2,1 + c0048c28: 4681 li a3,0 + c0048c2a: 4605 li a2,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:909 } - c0048a5c: 6125 addi sp,sp,96 + c0048c2c: 6125 addi sp,sp,96 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:904 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048a5e: e3dff06f j c004889a + c0048c2e: e3dff06f j c0048a6a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:878 const char *filename, *mode = NULL; - c0048a62: 4481 li s1,0 - c0048a64: bf95 j c00489d8 + c0048c32: 4481 li s1,0 + c0048c34: bf95 j c0048ba8 -00000000c0048a66 : +00000000c0048c36 : js_std_fdopen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:949 { - c0048a66: 7159 addi sp,sp,-112 - c0048a68: fc56 sd s5,56(sp) - c0048a6a: e432 sd a2,8(sp) - c0048a6c: 8ab6 mv s5,a3 + c0048c36: 7159 addi sp,sp,-112 + c0048c38: fc56 sd s5,56(sp) + c0048c3a: e432 sd a2,8(sp) + c0048c3c: 8ab6 mv s5,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:954 if (JS_ToInt32(ctx, &fd, argv[0])) - c0048a6e: 6310 ld a2,0(a4) - c0048a70: 6714 ld a3,8(a4) + c0048c3e: 6310 ld a2,0(a4) + c0048c40: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:949 { - c0048a72: e02e sd a1,0(sp) + c0048c42: e02e sd a1,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:954 if (JS_ToInt32(ctx, &fd, argv[0])) - c0048a74: 086c addi a1,sp,28 + c0048c44: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:949 { - c0048a76: f0a2 sd s0,96(sp) - c0048a78: eca6 sd s1,88(sp) - c0048a7a: f486 sd ra,104(sp) - c0048a7c: e8ca sd s2,80(sp) - c0048a7e: e4ce sd s3,72(sp) - c0048a80: e0d2 sd s4,64(sp) - c0048a82: 842a mv s0,a0 - c0048a84: 84ba mv s1,a4 + c0048c46: f0a2 sd s0,96(sp) + c0048c48: eca6 sd s1,88(sp) + c0048c4a: f486 sd ra,104(sp) + c0048c4c: e8ca sd s2,80(sp) + c0048c4e: e4ce sd s3,72(sp) + c0048c50: e0d2 sd s4,64(sp) + c0048c52: 842a mv s0,a0 + c0048c54: 84ba mv s1,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:954 if (JS_ToInt32(ctx, &fd, argv[0])) - c0048a86: 8e9d30ef jal ra,c001c36e - c0048a8a: c501 beqz a0,c0048a92 + c0048c56: 8e9d30ef jal ra,c001c53e + c0048c5a: c501 beqz a0,c0048c62 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:977 return JS_EXCEPTION; - c0048a8c: f002 sd zero,32(sp) - c0048a8e: 4799 li a5,6 - c0048a90: a895 j c0048b04 + c0048c5c: f002 sd zero,32(sp) + c0048c5e: 4799 li a5,6 + c0048c60: a895 j c0048cd4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:956 mode = JS_ToCString(ctx, argv[1]); - c0048a92: 688c ld a1,16(s1) - c0048a94: 6c90 ld a2,24(s1) - c0048a96: 8a2a mv s4,a0 - c0048a98: 8522 mv a0,s0 - c0048a9a: 8bbff0ef jal ra,c0048354 - c0048a9e: 892a mv s2,a0 + c0048c62: 688c ld a1,16(s1) + c0048c64: 6c90 ld a2,24(s1) + c0048c66: 8a2a mv s4,a0 + c0048c68: 8522 mv a0,s0 + c0048c6a: 8bbff0ef jal ra,c0048524 + c0048c6e: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:957 if (!mode) - c0048aa0: c115 beqz a0,c0048ac4 + c0048c70: c115 beqz a0,c0048c94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:959 if (mode[strspn(mode, "rwa+")] != '\0') { - c0048aa2: 00028597 auipc a1,0x28 - c0048aa6: f8658593 addi a1,a1,-122 # c0070a28 - c0048aaa: 50b0d0ef jal ra,c00567b4 - c0048aae: 954a add a0,a0,s2 - c0048ab0: 00054783 lbu a5,0(a0) - c0048ab4: cf89 beqz a5,c0048ace + c0048c72: 00028597 auipc a1,0x28 + c0048c76: 01658593 addi a1,a1,22 # c0070c88 + c0048c7a: 50b0d0ef jal ra,c0056984 + c0048c7e: 954a add a0,a0,s2 + c0048c80: 00054783 lbu a5,0(a0) + c0048c84: cf89 beqz a5,c0048c9e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:960 JS_ThrowTypeError(ctx, "invalid file mode"); - c0048ab6: 00028597 auipc a1,0x28 - c0048aba: f5a58593 addi a1,a1,-166 # c0070a10 - c0048abe: 8522 mv a0,s0 - c0048ac0: 937ca0ef jal ra,c00133f6 + c0048c86: 00028597 auipc a1,0x28 + c0048c8a: fea58593 addi a1,a1,-22 # c0070c70 + c0048c8e: 8522 mv a0,s0 + c0048c90: 855ca0ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:976 JS_FreeCString(ctx, mode); - c0048ac4: 85ca mv a1,s2 - c0048ac6: 8522 mv a0,s0 - c0048ac8: bb8c00ef jal ra,c0008e80 - c0048acc: b7c1 j c0048a8c + c0048c94: 85ca mv a1,s2 + c0048c96: 8522 mv a0,s0 + c0048c98: ad6c00ef jal ra,c0008f6e + c0048c9c: b7c1 j c0048c5c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:964 f = fdopen(fd, mode); - c0048ace: 4572 lw a0,28(sp) - c0048ad0: 85ca mv a1,s2 - c0048ad2: 5180c0ef jal ra,c0054fea - c0048ad6: 89aa mv s3,a0 + c0048c9e: 4572 lw a0,28(sp) + c0048ca0: 85ca mv a1,s2 + c0048ca2: 5180c0ef jal ra,c00551ba + c0048ca6: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:965 if (!f) - c0048ad8: e509 bnez a0,c0048ae2 + c0048ca8: e509 bnez a0,c0048cb2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:966 err = errno; - c0048ada: 7fb0a0ef jal ra,c0053ad4 <__errno> - c0048ade: 00052a03 lw s4,0(a0) + c0048caa: 7fb0a0ef jal ra,c0053ca4 <__errno> + c0048cae: 00052a03 lw s4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:969 if (argc >= 3) - c0048ae2: 4789 li a5,2 - c0048ae4: 0157d863 bge a5,s5,c0048af4 + c0048cb2: 4789 li a5,2 + c0048cb4: 0157d863 bge a5,s5,c0048cc4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:970 js_set_error_object(ctx, argv[2], err); - c0048ae8: 708c ld a1,32(s1) - c0048aea: 7490 ld a2,40(s1) - c0048aec: 86d2 mv a3,s4 - c0048aee: 8522 mv a0,s0 - c0048af0: d87ff0ef jal ra,c0048876 + c0048cb8: 708c ld a1,32(s1) + c0048cba: 7490 ld a2,40(s1) + c0048cbc: 86d2 mv a3,s4 + c0048cbe: 8522 mv a0,s0 + c0048cc0: d87ff0ef jal ra,c0048a46 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:971 JS_FreeCString(ctx, mode); - c0048af4: 85ca mv a1,s2 - c0048af6: 8522 mv a0,s0 - c0048af8: b88c00ef jal ra,c0008e80 + c0048cc4: 85ca mv a1,s2 + c0048cc6: 8522 mv a0,s0 + c0048cc8: aa6c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:972 if (!f) - c0048afc: 00099663 bnez s3,c0048b08 + c0048ccc: 00099663 bnez s3,c0048cd8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:973 return JS_NULL; - c0048b00: f002 sd zero,32(sp) - c0048b02: 4789 li a5,2 + c0048cd0: f002 sd zero,32(sp) + c0048cd2: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:977 return JS_EXCEPTION; - c0048b04: f43e sd a5,40(sp) - c0048b06: a809 j c0048b18 + c0048cd4: f43e sd a5,40(sp) + c0048cd6: a809 j c0048ce8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:974 return js_new_std_file(ctx, f, TRUE, FALSE); - c0048b08: 4681 li a3,0 - c0048b0a: 4605 li a2,1 - c0048b0c: 85ce mv a1,s3 - c0048b0e: 8522 mv a0,s0 - c0048b10: d8bff0ef jal ra,c004889a - c0048b14: f02a sd a0,32(sp) - c0048b16: f42e sd a1,40(sp) + c0048cd8: 4681 li a3,0 + c0048cda: 4605 li a2,1 + c0048cdc: 85ce mv a1,s3 + c0048cde: 8522 mv a0,s0 + c0048ce0: d8bff0ef jal ra,c0048a6a + c0048ce4: f02a sd a0,32(sp) + c0048ce6: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:978 (discriminator 1) } - c0048b18: 70a6 ld ra,104(sp) - c0048b1a: 7406 ld s0,96(sp) - c0048b1c: 7502 ld a0,32(sp) - c0048b1e: 75a2 ld a1,40(sp) - c0048b20: 64e6 ld s1,88(sp) - c0048b22: 6946 ld s2,80(sp) - c0048b24: 69a6 ld s3,72(sp) - c0048b26: 6a06 ld s4,64(sp) - c0048b28: 7ae2 ld s5,56(sp) - c0048b2a: 6165 addi sp,sp,112 - c0048b2c: 8082 ret - -00000000c0048b2e : + c0048ce8: 70a6 ld ra,104(sp) + c0048cea: 7406 ld s0,96(sp) + c0048cec: 7502 ld a0,32(sp) + c0048cee: 75a2 ld a1,40(sp) + c0048cf0: 64e6 ld s1,88(sp) + c0048cf2: 6946 ld s2,80(sp) + c0048cf4: 69a6 ld s3,72(sp) + c0048cf6: 6a06 ld s4,64(sp) + c0048cf8: 7ae2 ld s5,56(sp) + c0048cfa: 6165 addi sp,sp,112 + c0048cfc: 8082 ret + +00000000c0048cfe : js_std_popen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:913 { - c0048b2e: 711d addi sp,sp,-96 - c0048b30: e02e sd a1,0(sp) - c0048b32: e432 sd a2,8(sp) + c0048cfe: 711d addi sp,sp,-96 + c0048d00: e02e sd a1,0(sp) + c0048d02: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:918 filename = JS_ToCString(ctx, argv[0]); - c0048b34: 630c ld a1,0(a4) - c0048b36: 6710 ld a2,8(a4) + c0048d04: 630c ld a1,0(a4) + c0048d06: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:913 { - c0048b38: e8a2 sd s0,80(sp) - c0048b3a: e0ca sd s2,64(sp) - c0048b3c: fc4e sd s3,56(sp) - c0048b3e: f456 sd s5,40(sp) - c0048b40: ec86 sd ra,88(sp) - c0048b42: e4a6 sd s1,72(sp) - c0048b44: f852 sd s4,48(sp) - c0048b46: 842a mv s0,a0 - c0048b48: 8ab6 mv s5,a3 - c0048b4a: 893a mv s2,a4 + c0048d08: e8a2 sd s0,80(sp) + c0048d0a: e0ca sd s2,64(sp) + c0048d0c: fc4e sd s3,56(sp) + c0048d0e: f456 sd s5,40(sp) + c0048d10: ec86 sd ra,88(sp) + c0048d12: e4a6 sd s1,72(sp) + c0048d14: f852 sd s4,48(sp) + c0048d16: 842a mv s0,a0 + c0048d18: 8ab6 mv s5,a3 + c0048d1a: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:918 filename = JS_ToCString(ctx, argv[0]); - c0048b4c: 809ff0ef jal ra,c0048354 - c0048b50: 89aa mv s3,a0 + c0048d1c: 809ff0ef jal ra,c0048524 + c0048d20: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:919 if (!filename) - c0048b52: c161 beqz a0,c0048c12 + c0048d22: c161 beqz a0,c0048de2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:921 mode = JS_ToCString(ctx, argv[1]); - c0048b54: 01093583 ld a1,16(s2) - c0048b58: 01893603 ld a2,24(s2) - c0048b5c: 8522 mv a0,s0 - c0048b5e: ff6ff0ef jal ra,c0048354 - c0048b62: 84aa mv s1,a0 + c0048d24: 01093583 ld a1,16(s2) + c0048d28: 01893603 ld a2,24(s2) + c0048d2c: 8522 mv a0,s0 + c0048d2e: ff6ff0ef jal ra,c0048524 + c0048d32: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:922 if (!mode) - c0048b64: c55d beqz a0,c0048c12 + c0048d34: c55d beqz a0,c0048de2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:924 if (mode[strspn(mode, "rw")] != '\0') { - c0048b66: 00028597 auipc a1,0x28 - c0048b6a: eca58593 addi a1,a1,-310 # c0070a30 - c0048b6e: 4470d0ef jal ra,c00567b4 - c0048b72: 9526 add a0,a0,s1 - c0048b74: 00054783 lbu a5,0(a0) - c0048b78: c39d beqz a5,c0048b9e + c0048d36: 00028597 auipc a1,0x28 + c0048d3a: f5a58593 addi a1,a1,-166 # c0070c90 + c0048d3e: 4470d0ef jal ra,c0056984 + c0048d42: 9526 add a0,a0,s1 + c0048d44: 00054783 lbu a5,0(a0) + c0048d48: c39d beqz a5,c0048d6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:925 JS_ThrowTypeError(ctx, "invalid file mode"); - c0048b7a: 00028597 auipc a1,0x28 - c0048b7e: e9658593 addi a1,a1,-362 # c0070a10 - c0048b82: 8522 mv a0,s0 - c0048b84: 873ca0ef jal ra,c00133f6 + c0048d4a: 00028597 auipc a1,0x28 + c0048d4e: f2658593 addi a1,a1,-218 # c0070c70 + c0048d52: 8522 mv a0,s0 + c0048d54: f90ca0ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:942 JS_FreeCString(ctx, filename); - c0048b88: 85ce mv a1,s3 - c0048b8a: 8522 mv a0,s0 - c0048b8c: af4c00ef jal ra,c0008e80 + c0048d58: 85ce mv a1,s3 + c0048d5a: 8522 mv a0,s0 + c0048d5c: a12c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:943 JS_FreeCString(ctx, mode); - c0048b90: 85a6 mv a1,s1 - c0048b92: 8522 mv a0,s0 - c0048b94: aecc00ef jal ra,c0008e80 + c0048d60: 85a6 mv a1,s1 + c0048d62: 8522 mv a0,s0 + c0048d64: a0ac00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:944 return JS_EXCEPTION; - c0048b98: 4799 li a5,6 - c0048b9a: e802 sd zero,16(sp) - c0048b9c: a089 j c0048bde + c0048d68: 4799 li a5,6 + c0048d6a: e802 sd zero,16(sp) + c0048d6c: a089 j c0048dae /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:929 f = popen(filename, mode); - c0048b9e: 85a6 mv a1,s1 - c0048ba0: 854e mv a0,s3 - c0048ba2: 2140a0ef jal ra,c0052db6 - c0048ba6: 8a2a mv s4,a0 + c0048d6e: 85a6 mv a1,s1 + c0048d70: 854e mv a0,s3 + c0048d72: 2140a0ef jal ra,c0052f86 + c0048d76: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:933 err = 0; - c0048ba8: 4681 li a3,0 + c0048d78: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:930 if (!f) - c0048baa: e501 bnez a0,c0048bb2 + c0048d7a: e501 bnez a0,c0048d82 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:931 err = errno; - c0048bac: 7290a0ef jal ra,c0053ad4 <__errno> - c0048bb0: 4114 lw a3,0(a0) + c0048d7c: 7290a0ef jal ra,c0053ca4 <__errno> + c0048d80: 4114 lw a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:934 if (argc >= 3) - c0048bb2: 4789 li a5,2 - c0048bb4: 0157d963 bge a5,s5,c0048bc6 + c0048d82: 4789 li a5,2 + c0048d84: 0157d963 bge a5,s5,c0048d96 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:935 js_set_error_object(ctx, argv[2], err); - c0048bb8: 02093583 ld a1,32(s2) - c0048bbc: 02893603 ld a2,40(s2) - c0048bc0: 8522 mv a0,s0 - c0048bc2: cb5ff0ef jal ra,c0048876 + c0048d88: 02093583 ld a1,32(s2) + c0048d8c: 02893603 ld a2,40(s2) + c0048d90: 8522 mv a0,s0 + c0048d92: cb5ff0ef jal ra,c0048a46 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:936 JS_FreeCString(ctx, filename); - c0048bc6: 85ce mv a1,s3 - c0048bc8: 8522 mv a0,s0 - c0048bca: ab6c00ef jal ra,c0008e80 + c0048d96: 85ce mv a1,s3 + c0048d98: 8522 mv a0,s0 + c0048d9a: 9d4c00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:937 JS_FreeCString(ctx, mode); - c0048bce: 85a6 mv a1,s1 - c0048bd0: 8522 mv a0,s0 - c0048bd2: aaec00ef jal ra,c0008e80 + c0048d9e: 85a6 mv a1,s1 + c0048da0: 8522 mv a0,s0 + c0048da2: 9ccc00ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:938 if (!f) - c0048bd6: 020a1063 bnez s4,c0048bf6 + c0048da6: 020a1063 bnez s4,c0048dc6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:939 return JS_NULL; - c0048bda: e802 sd zero,16(sp) - c0048bdc: 4789 li a5,2 + c0048daa: e802 sd zero,16(sp) + c0048dac: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:945 } - c0048bde: 60e6 ld ra,88(sp) - c0048be0: 6446 ld s0,80(sp) + c0048dae: 60e6 ld ra,88(sp) + c0048db0: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:944 return JS_EXCEPTION; - c0048be2: ec3e sd a5,24(sp) + c0048db2: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:945 } - c0048be4: 6542 ld a0,16(sp) - c0048be6: 65e2 ld a1,24(sp) - c0048be8: 64a6 ld s1,72(sp) - c0048bea: 6906 ld s2,64(sp) - c0048bec: 79e2 ld s3,56(sp) - c0048bee: 7a42 ld s4,48(sp) - c0048bf0: 7aa2 ld s5,40(sp) - c0048bf2: 6125 addi sp,sp,96 - c0048bf4: 8082 ret + c0048db4: 6542 ld a0,16(sp) + c0048db6: 65e2 ld a1,24(sp) + c0048db8: 64a6 ld s1,72(sp) + c0048dba: 6906 ld s2,64(sp) + c0048dbc: 79e2 ld s3,56(sp) + c0048dbe: 7a42 ld s4,48(sp) + c0048dc0: 7aa2 ld s5,40(sp) + c0048dc2: 6125 addi sp,sp,96 + c0048dc4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:940 return js_new_std_file(ctx, f, TRUE, TRUE); - c0048bf6: 8522 mv a0,s0 + c0048dc6: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:945 } - c0048bf8: 6446 ld s0,80(sp) - c0048bfa: 60e6 ld ra,88(sp) - c0048bfc: 64a6 ld s1,72(sp) - c0048bfe: 6906 ld s2,64(sp) - c0048c00: 79e2 ld s3,56(sp) - c0048c02: 7aa2 ld s5,40(sp) + c0048dc8: 6446 ld s0,80(sp) + c0048dca: 60e6 ld ra,88(sp) + c0048dcc: 64a6 ld s1,72(sp) + c0048dce: 6906 ld s2,64(sp) + c0048dd0: 79e2 ld s3,56(sp) + c0048dd2: 7aa2 ld s5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:940 return js_new_std_file(ctx, f, TRUE, TRUE); - c0048c04: 85d2 mv a1,s4 + c0048dd4: 85d2 mv a1,s4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:945 } - c0048c06: 7a42 ld s4,48(sp) + c0048dd6: 7a42 ld s4,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:940 return js_new_std_file(ctx, f, TRUE, TRUE); - c0048c08: 4685 li a3,1 - c0048c0a: 4605 li a2,1 + c0048dd8: 4685 li a3,1 + c0048dda: 4605 li a2,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:945 } - c0048c0c: 6125 addi sp,sp,96 + c0048ddc: 6125 addi sp,sp,96 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:940 return js_new_std_file(ctx, f, TRUE, TRUE); - c0048c0e: c8dff06f j c004889a + c0048dde: c8dff06f j c0048a6a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:914 const char *filename, *mode = NULL; - c0048c12: 4481 li s1,0 - c0048c14: bf95 j c0048b88 + c0048de2: 4481 li s1,0 + c0048de4: bf95 j c0048d58 -00000000c0048c16 : +00000000c0048de6 : js_std_strerror(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:827 if (JS_ToInt32(ctx, &err, argv[0])) - c0048c16: 6310 ld a2,0(a4) - c0048c18: 6714 ld a3,8(a4) + c0048de6: 6310 ld a2,0(a4) + c0048de8: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:825 { - c0048c1a: 7139 addi sp,sp,-64 + c0048dea: 7139 addi sp,sp,-64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:827 if (JS_ToInt32(ctx, &err, argv[0])) - c0048c1c: 086c addi a1,sp,28 + c0048dec: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:825 { - c0048c1e: f822 sd s0,48(sp) - c0048c20: fc06 sd ra,56(sp) - c0048c22: 842a mv s0,a0 + c0048dee: f822 sd s0,48(sp) + c0048df0: fc06 sd ra,56(sp) + c0048df2: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:827 if (JS_ToInt32(ctx, &err, argv[0])) - c0048c24: f4ad30ef jal ra,c001c36e - c0048c28: c911 beqz a0,c0048c3c + c0048df4: f4ad30ef jal ra,c001c53e + c0048df8: c911 beqz a0,c0048e0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:828 return JS_EXCEPTION; - c0048c2a: 4799 li a5,6 - c0048c2c: f002 sd zero,32(sp) - c0048c2e: f43e sd a5,40(sp) + c0048dfa: 4799 li a5,6 + c0048dfc: f002 sd zero,32(sp) + c0048dfe: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:830 (discriminator 1) } - c0048c30: 70e2 ld ra,56(sp) - c0048c32: 7442 ld s0,48(sp) - c0048c34: 7502 ld a0,32(sp) - c0048c36: 75a2 ld a1,40(sp) - c0048c38: 6121 addi sp,sp,64 - c0048c3a: 8082 ret + c0048e00: 70e2 ld ra,56(sp) + c0048e02: 7442 ld s0,48(sp) + c0048e04: 7502 ld a0,32(sp) + c0048e06: 75a2 ld a1,40(sp) + c0048e08: 6121 addi sp,sp,64 + c0048e0a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:829 return JS_NewString(ctx, strerror(err)); - c0048c3c: 4572 lw a0,28(sp) - c0048c3e: 31f0d0ef jal ra,c005675c - c0048c42: 85aa mv a1,a0 - c0048c44: 8522 mv a0,s0 - c0048c46: dddd00ef jal ra,c0019a22 - c0048c4a: f02a sd a0,32(sp) - c0048c4c: f42e sd a1,40(sp) - c0048c4e: b7cd j c0048c30 - -00000000c0048c50 : + c0048e0c: 4572 lw a0,28(sp) + c0048e0e: 31f0d0ef jal ra,c005692c + c0048e12: 85aa mv a1,a0 + c0048e14: 8522 mv a0,s0 + c0048e16: dddd00ef jal ra,c0019bf2 + c0048e1a: f02a sd a0,32(sp) + c0048e1c: f42e sd a1,40(sp) + c0048e1e: b7cd j c0048e00 + +00000000c0048e20 : get_bool_option(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:733 { - c0048c50: 7139 addi sp,sp,-64 - c0048c52: 87b6 mv a5,a3 - c0048c54: f426 sd s1,40(sp) + c0048e20: 7139 addi sp,sp,-64 + c0048e22: 87b6 mv a5,a3 + c0048e24: f426 sd s1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:735 val = JS_GetPropertyStr(ctx, obj, option); - c0048c56: 86ba mv a3,a4 + c0048e26: 86ba mv a3,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:733 { - c0048c58: 84ae mv s1,a1 + c0048e28: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:735 val = JS_GetPropertyStr(ctx, obj, option); - c0048c5a: 85b2 mv a1,a2 - c0048c5c: 863e mv a2,a5 + c0048e2a: 85b2 mv a1,a2 + c0048e2c: 863e mv a2,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:733 { - c0048c5e: f822 sd s0,48(sp) - c0048c60: fc06 sd ra,56(sp) - c0048c62: 842a mv s0,a0 + c0048e2e: f822 sd s0,48(sp) + c0048e30: fc06 sd ra,56(sp) + c0048e32: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:735 val = JS_GetPropertyStr(ctx, obj, option); - c0048c64: 9a1d00ef jal ra,c0019604 - c0048c68: e82a sd a0,16(sp) - c0048c6a: ec2e sd a1,24(sp) + c0048e34: 9a1d00ef jal ra,c00197d4 + c0048e38: e82a sd a0,16(sp) + c0048e3a: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c0048c6c: 0005879b sext.w a5,a1 + c0048e3c: 0005879b sext.w a5,a1 get_bool_option(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:736 if (JS_IsException(val)) - c0048c70: 4719 li a4,6 - c0048c72: 02e78663 beq a5,a4,c0048c9e + c0048e40: 4719 li a4,6 + c0048e42: 02e78663 beq a5,a4,c0048e6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:738 if (!JS_IsUndefined(val)) { - c0048c76: 470d li a4,3 - c0048c78: 00e78863 beq a5,a4,c0048c88 - c0048c7c: 862e mv a2,a1 + c0048e46: 470d li a4,3 + c0048e48: 00e78863 beq a5,a4,c0048e58 + c0048e4c: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:739 *pbool = JS_ToBool(ctx, val); - c0048c7e: 85aa mv a1,a0 - c0048c80: 8522 mv a0,s0 - c0048c82: 9a6c20ef jal ra,c000ae28 - c0048c86: c088 sw a0,0(s1) + c0048e4e: 85aa mv a1,a0 + c0048e50: 8522 mv a0,s0 + c0048e52: 8c4c20ef jal ra,c000af16 + c0048e56: c088 sw a0,0(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:741 JS_FreeValue(ctx, val); - c0048c88: 65c2 ld a1,16(sp) - c0048c8a: 6662 ld a2,24(sp) - c0048c8c: 8522 mv a0,s0 - c0048c8e: e7eff0ef jal ra,c004830c + c0048e58: 65c2 ld a1,16(sp) + c0048e5a: 6662 ld a2,24(sp) + c0048e5c: 8522 mv a0,s0 + c0048e5e: e7eff0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:742 return 0; - c0048c92: 4501 li a0,0 + c0048e62: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:743 } - c0048c94: 70e2 ld ra,56(sp) - c0048c96: 7442 ld s0,48(sp) - c0048c98: 74a2 ld s1,40(sp) - c0048c9a: 6121 addi sp,sp,64 - c0048c9c: 8082 ret + c0048e64: 70e2 ld ra,56(sp) + c0048e66: 7442 ld s0,48(sp) + c0048e68: 74a2 ld s1,40(sp) + c0048e6a: 6121 addi sp,sp,64 + c0048e6c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:737 return -1; - c0048c9e: 557d li a0,-1 - c0048ca0: bfd5 j c0048c94 + c0048e6e: 557d li a0,-1 + c0048e70: bfd5 j c0048e64 -00000000c0048ca2 : +00000000c0048e72 : js_std_file_getByte(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1262 { - c0048ca2: 7139 addi sp,sp,-64 - c0048ca4: fc06 sd ra,56(sp) + c0048e72: 7139 addi sp,sp,-64 + c0048e74: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1263 FILE *f = js_std_file_get(ctx, this_val); - c0048ca6: aebff0ef jal ra,c0048790 + c0048e76: aebff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1264 if (!f) - c0048caa: e909 bnez a0,c0048cbc + c0048e7a: e909 bnez a0,c0048e8c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1265 return JS_EXCEPTION; - c0048cac: 4799 li a5,6 - c0048cae: e802 sd zero,16(sp) - c0048cb0: ec3e sd a5,24(sp) + c0048e7c: 4799 li a5,6 + c0048e7e: e802 sd zero,16(sp) + c0048e80: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1267 (discriminator 1) } - c0048cb2: 70e2 ld ra,56(sp) - c0048cb4: 6542 ld a0,16(sp) - c0048cb6: 65e2 ld a1,24(sp) - c0048cb8: 6121 addi sp,sp,64 - c0048cba: 8082 ret + c0048e82: 70e2 ld ra,56(sp) + c0048e84: 6542 ld a0,16(sp) + c0048e86: 65e2 ld a1,24(sp) + c0048e88: 6121 addi sp,sp,64 + c0048e8a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1266 return JS_NewInt32(ctx, fgetc(f)); - c0048cbc: 6be0c0ef jal ra,c005537a + c0048e8c: 6be0c0ef jal ra,c005554a JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0048cc0: d02a sw a0,32(sp) - c0048cc2: d202 sw zero,36(sp) - c0048cc4: 7782 ld a5,32(sp) - c0048cc6: ec02 sd zero,24(sp) - c0048cc8: e83e sd a5,16(sp) - c0048cca: b7e5 j c0048cb2 - -00000000c0048ccc : + c0048e90: d02a sw a0,32(sp) + c0048e92: d202 sw zero,36(sp) + c0048e94: 7782 ld a5,32(sp) + c0048e96: ec02 sd zero,24(sp) + c0048e98: e83e sd a5,16(sp) + c0048e9a: b7e5 j c0048e82 + +00000000c0048e9c : js_std_file_getline(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1184 { - c0048ccc: 7175 addi sp,sp,-144 - c0048cce: e122 sd s0,128(sp) - c0048cd0: e506 sd ra,136(sp) - c0048cd2: fca6 sd s1,120(sp) - c0048cd4: f8ca sd s2,112(sp) - c0048cd6: f4ce sd s3,104(sp) - c0048cd8: 842a mv s0,a0 + c0048e9c: 7175 addi sp,sp,-144 + c0048e9e: e122 sd s0,128(sp) + c0048ea0: e506 sd ra,136(sp) + c0048ea2: fca6 sd s1,120(sp) + c0048ea4: f8ca sd s2,112(sp) + c0048ea6: f4ce sd s3,104(sp) + c0048ea8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1185 FILE *f = js_std_file_get(ctx, this_val); - c0048cda: ab7ff0ef jal ra,c0048790 + c0048eaa: ab7ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1190 if (!f) - c0048cde: e509 bnez a0,c0048ce8 + c0048eae: e509 bnez a0,c0048eb8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1191 return JS_EXCEPTION; - c0048ce0: f002 sd zero,32(sp) - c0048ce2: 4799 li a5,6 + c0048eb0: f002 sd zero,32(sp) + c0048eb2: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1214 return obj; - c0048ce4: f43e sd a5,40(sp) - c0048ce6: a0a9 j c0048d30 - c0048ce8: 84aa mv s1,a0 + c0048eb4: f43e sd a5,40(sp) + c0048eb6: a0a9 j c0048f00 + c0048eb8: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1193 js_std_dbuf_init(ctx, &dbuf); - c0048cea: 180c addi a1,sp,48 - c0048cec: 8522 mv a0,s0 - c0048cee: e44ff0ef jal ra,c0048332 + c0048eba: 180c addi a1,sp,48 + c0048ebc: 8522 mv a0,s0 + c0048ebe: e44ff0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1196 if (c == EOF) { - c0048cf2: 597d li s2,-1 + c0048ec2: 597d li s2,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1205 if (c == '\n') - c0048cf4: 49a9 li s3,10 + c0048ec4: 49a9 li s3,10 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1195 c = fgetc(f); - c0048cf6: 8526 mv a0,s1 - c0048cf8: 6820c0ef jal ra,c005537a + c0048ec6: 8526 mv a0,s1 + c0048ec8: 6820c0ef jal ra,c005554a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1196 if (c == EOF) { - c0048cfc: 01251a63 bne a0,s2,c0048d10 + c0048ecc: 01251a63 bne a0,s2,c0048ee0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1197 if (dbuf.size == 0) { - c0048d00: 77e2 ld a5,56(sp) - c0048d02: e3a1 bnez a5,c0048d42 + c0048ed0: 77e2 ld a5,56(sp) + c0048ed2: e3a1 bnez a5,c0048f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1199 dbuf_free(&dbuf); - c0048d04: 1808 addi a0,sp,48 - c0048d06: 900ff0ef jal ra,c0047e06 + c0048ed4: 1808 addi a0,sp,48 + c0048ed6: 900ff0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1200 return JS_NULL; - c0048d0a: 4789 li a5,2 - c0048d0c: f002 sd zero,32(sp) - c0048d0e: bfd9 j c0048ce4 + c0048eda: 4789 li a5,2 + c0048edc: f002 sd zero,32(sp) + c0048ede: bfd9 j c0048eb4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1205 if (c == '\n') - c0048d10: 03350963 beq a0,s3,c0048d42 + c0048ee0: 03350963 beq a0,s3,c0048f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1207 if (dbuf_putc(&dbuf, c)) { - c0048d14: 0ff57593 zext.b a1,a0 - c0048d18: 1808 addi a0,sp,48 - c0048d1a: 828ff0ef jal ra,c0047d42 - c0048d1e: dd61 beqz a0,c0048cf6 + c0048ee4: 0ff57593 zext.b a1,a0 + c0048ee8: 1808 addi a0,sp,48 + c0048eea: 828ff0ef jal ra,c0047f12 + c0048eee: dd61 beqz a0,c0048ec6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1208 dbuf_free(&dbuf); - c0048d20: 1808 addi a0,sp,48 - c0048d22: 8e4ff0ef jal ra,c0047e06 + c0048ef0: 1808 addi a0,sp,48 + c0048ef2: 8e4ff0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1209 return JS_ThrowOutOfMemory(ctx); - c0048d26: 8522 mv a0,s0 - c0048d28: ef5cb0ef jal ra,c0014c1c - c0048d2c: f02a sd a0,32(sp) - c0048d2e: f42e sd a1,40(sp) + c0048ef6: 8522 mv a0,s0 + c0048ef8: e13cb0ef jal ra,c0014d0a + c0048efc: f02a sd a0,32(sp) + c0048efe: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1215 (discriminator 1) } - c0048d30: 60aa ld ra,136(sp) - c0048d32: 640a ld s0,128(sp) - c0048d34: 7502 ld a0,32(sp) - c0048d36: 75a2 ld a1,40(sp) - c0048d38: 74e6 ld s1,120(sp) - c0048d3a: 7946 ld s2,112(sp) - c0048d3c: 79a6 ld s3,104(sp) - c0048d3e: 6149 addi sp,sp,144 - c0048d40: 8082 ret + c0048f00: 60aa ld ra,136(sp) + c0048f02: 640a ld s0,128(sp) + c0048f04: 7502 ld a0,32(sp) + c0048f06: 75a2 ld a1,40(sp) + c0048f08: 74e6 ld s1,120(sp) + c0048f0a: 7946 ld s2,112(sp) + c0048f0c: 79a6 ld s3,104(sp) + c0048f0e: 6149 addi sp,sp,144 + c0048f10: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1212 obj = JS_NewStringLen(ctx, (const char *)dbuf.buf, dbuf.size); - c0048d42: 7662 ld a2,56(sp) - c0048d44: 75c2 ld a1,48(sp) - c0048d46: 8522 mv a0,s0 - c0048d48: d48d00ef jal ra,c0019290 - c0048d4c: e82a sd a0,16(sp) + c0048f12: 7662 ld a2,56(sp) + c0048f14: 75c2 ld a1,48(sp) + c0048f16: 8522 mv a0,s0 + c0048f18: d48d00ef jal ra,c0019460 + c0048f1c: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1213 dbuf_free(&dbuf); - c0048d4e: 1808 addi a0,sp,48 + c0048f1e: 1808 addi a0,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1212 obj = JS_NewStringLen(ctx, (const char *)dbuf.buf, dbuf.size); - c0048d50: ec2e sd a1,24(sp) + c0048f20: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1213 dbuf_free(&dbuf); - c0048d52: 8b4ff0ef jal ra,c0047e06 + c0048f22: 8b4ff0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1214 return obj; - c0048d56: 67c2 ld a5,16(sp) - c0048d58: f03e sd a5,32(sp) - c0048d5a: 67e2 ld a5,24(sp) - c0048d5c: b761 j c0048ce4 + c0048f26: 67c2 ld a5,16(sp) + c0048f28: f03e sd a5,32(sp) + c0048f2a: 67e2 ld a5,24(sp) + c0048f2c: b761 j c0048eb4 -00000000c0048d5e : +00000000c0048f2e : js_std_getenviron(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:683 { - c0048d5e: 7119 addi sp,sp,-128 - c0048d60: f4a6 sd s1,104(sp) - c0048d62: fc86 sd ra,120(sp) - c0048d64: f8a2 sd s0,112(sp) - c0048d66: f0ca sd s2,96(sp) - c0048d68: ecce sd s3,88(sp) - c0048d6a: e8d2 sd s4,80(sp) - c0048d6c: e4d6 sd s5,72(sp) - c0048d6e: 84aa mv s1,a0 - c0048d70: e02e sd a1,0(sp) - c0048d72: e432 sd a2,8(sp) + c0048f2e: 7119 addi sp,sp,-128 + c0048f30: f4a6 sd s1,104(sp) + c0048f32: fc86 sd ra,120(sp) + c0048f34: f8a2 sd s0,112(sp) + c0048f36: f0ca sd s2,96(sp) + c0048f38: ecce sd s3,88(sp) + c0048f3a: e8d2 sd s4,80(sp) + c0048f3c: e4d6 sd s5,72(sp) + c0048f3e: 84aa mv s1,a0 + c0048f40: e02e sd a1,0(sp) + c0048f42: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:692 obj = JS_NewObject(ctx); - c0048d74: 814ce0ef jal ra,c0016d88 - c0048d78: e82a sd a0,16(sp) - c0048d7a: ec2e sd a1,24(sp) + c0048f44: 814ce0ef jal ra,c0016f58 + c0048f48: e82a sd a0,16(sp) + c0048f4a: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:693 if (JS_IsException(obj)) - c0048d7c: 0005879b sext.w a5,a1 - c0048d80: 4719 li a4,6 - c0048d82: 00e79563 bne a5,a4,c0048d8c + c0048f4c: 0005879b sext.w a5,a1 + c0048f50: 4719 li a4,6 + c0048f52: 00e79563 bne a5,a4,c0048f5c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:694 return JS_EXCEPTION; - c0048d86: f002 sd zero,32(sp) + c0048f56: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:715 return JS_EXCEPTION; - c0048d88: f43e sd a5,40(sp) - c0048d8a: a015 j c0048dae - c0048d8c: 842e mv s0,a1 + c0048f58: f43e sd a5,40(sp) + c0048f5a: a015 j c0048f7e + c0048f5c: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:695 envp = environ; - c0048d8e: 5d00e0ef jal ra,c005735e - c0048d92: 89aa mv s3,a0 + c0048f5e: 5d00e0ef jal ra,c005752e + c0048f62: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:696 for(idx = 0; envp[idx] != NULL; idx++) { - c0048d94: 4a01 li s4,0 + c0048f64: 4a01 li s4,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:696 (discriminator 1) - c0048d96: 020a1713 slli a4,s4,0x20 - c0048d9a: 01d75793 srli a5,a4,0x1d - c0048d9e: 97ce add a5,a5,s3 - c0048da0: 0007b903 ld s2,0(a5) # 110000 <__clzdi2-0xbfef0000> - c0048da4: 02091063 bnez s2,c0048dc4 + c0048f66: 020a1713 slli a4,s4,0x20 + c0048f6a: 01d75793 srli a5,a4,0x1d + c0048f6e: 97ce add a5,a5,s3 + c0048f70: 0007b903 ld s2,0(a5) # 110000 <__clzdi2-0xbfef0000> + c0048f74: 02091063 bnez s2,c0048f94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:712 return obj; - c0048da8: 67c2 ld a5,16(sp) - c0048daa: f422 sd s0,40(sp) - c0048dac: f03e sd a5,32(sp) + c0048f78: 67c2 ld a5,16(sp) + c0048f7a: f422 sd s0,40(sp) + c0048f7c: f03e sd a5,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:716 (discriminator 1) } - c0048dae: 70e6 ld ra,120(sp) - c0048db0: 7446 ld s0,112(sp) - c0048db2: 7502 ld a0,32(sp) - c0048db4: 75a2 ld a1,40(sp) - c0048db6: 74a6 ld s1,104(sp) - c0048db8: 7906 ld s2,96(sp) - c0048dba: 69e6 ld s3,88(sp) - c0048dbc: 6a46 ld s4,80(sp) - c0048dbe: 6aa6 ld s5,72(sp) - c0048dc0: 6109 addi sp,sp,128 - c0048dc2: 8082 ret + c0048f7e: 70e6 ld ra,120(sp) + c0048f80: 7446 ld s0,112(sp) + c0048f82: 7502 ld a0,32(sp) + c0048f84: 75a2 ld a1,40(sp) + c0048f86: 74a6 ld s1,104(sp) + c0048f88: 7906 ld s2,96(sp) + c0048f8a: 69e6 ld s3,88(sp) + c0048f8c: 6a46 ld s4,80(sp) + c0048f8e: 6aa6 ld s5,72(sp) + c0048f90: 6109 addi sp,sp,128 + c0048f92: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:698 p = strchr(name, '='); - c0048dc4: 03d00593 li a1,61 - c0048dc8: 854a mv a0,s2 - c0048dca: 3730d0ef jal ra,c005693c + c0048f94: 03d00593 li a1,61 + c0048f98: 854a mv a0,s2 + c0048f9a: 3730d0ef jal ra,c0056b0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:700 if (!p) - c0048dce: e119 bnez a0,c0048dd4 + c0048f9e: e119 bnez a0,c0048fa4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:696 for(idx = 0; envp[idx] != NULL; idx++) { - c0048dd0: 2a05 addiw s4,s4,1 - c0048dd2: b7d1 j c0048d96 + c0048fa0: 2a05 addiw s4,s4,1 + c0048fa2: b7d1 j c0048f66 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:703 atom = JS_NewAtomLen(ctx, name, name_len); - c0048dd4: 41250633 sub a2,a0,s2 - c0048dd8: 85ca mv a1,s2 + c0048fa4: 41250633 sub a2,a0,s2 + c0048fa8: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:702 value = p + 1; - c0048dda: 00150a93 addi s5,a0,1 + c0048faa: 00150a93 addi s5,a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:703 atom = JS_NewAtomLen(ctx, name, name_len); - c0048dde: 8526 mv a0,s1 - c0048de0: e0ed00ef jal ra,c00193ee - c0048de4: 0005091b sext.w s2,a0 + c0048fae: 8526 mv a0,s1 + c0048fb0: e0ed00ef jal ra,c00195be + c0048fb4: 0005091b sext.w s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:704 if (atom == JS_ATOM_NULL) - c0048de8: 02090963 beqz s2,c0048e1a + c0048fb8: 02090963 beqz s2,c0048fea /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:706 ret = JS_DefinePropertyValue(ctx, obj, atom, JS_NewString(ctx, value), - c0048dec: 85d6 mv a1,s5 - c0048dee: 8526 mv a0,s1 - c0048df0: c33d00ef jal ra,c0019a22 - c0048df4: 87ae mv a5,a1 - c0048df6: fc2e sd a1,56(sp) - c0048df8: 65c2 ld a1,16(sp) - c0048dfa: 872a mv a4,a0 - c0048dfc: f82a sd a0,48(sp) - c0048dfe: 481d li a6,7 - c0048e00: 86ca mv a3,s2 - c0048e02: 8622 mv a2,s0 - c0048e04: 8526 mv a0,s1 - c0048e06: ec22 sd s0,24(sp) - c0048e08: 9aeca0ef jal ra,c0012fb6 - c0048e0c: 8aaa mv s5,a0 + c0048fbc: 85d6 mv a1,s5 + c0048fbe: 8526 mv a0,s1 + c0048fc0: c33d00ef jal ra,c0019bf2 + c0048fc4: 87ae mv a5,a1 + c0048fc6: fc2e sd a1,56(sp) + c0048fc8: 65c2 ld a1,16(sp) + c0048fca: 872a mv a4,a0 + c0048fcc: f82a sd a0,48(sp) + c0048fce: 481d li a6,7 + c0048fd0: 86ca mv a3,s2 + c0048fd2: 8622 mv a2,s0 + c0048fd4: 8526 mv a0,s1 + c0048fd6: ec22 sd s0,24(sp) + c0048fd8: 8ccca0ef jal ra,c00130a4 + c0048fdc: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:708 JS_FreeAtom(ctx, atom); - c0048e0e: 85ca mv a1,s2 - c0048e10: 8526 mv a0,s1 - c0048e12: efabe0ef jal ra,c000750c + c0048fde: 85ca mv a1,s2 + c0048fe0: 8526 mv a0,s1 + c0048fe2: e18be0ef jal ra,c00075fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:709 if (ret < 0) - c0048e16: fa0adde3 bgez s5,c0048dd0 + c0048fe6: fa0adde3 bgez s5,c0048fa0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:714 JS_FreeValue(ctx, obj); - c0048e1a: 65c2 ld a1,16(sp) - c0048e1c: 8622 mv a2,s0 - c0048e1e: 8526 mv a0,s1 - c0048e20: cecff0ef jal ra,c004830c + c0048fea: 65c2 ld a1,16(sp) + c0048fec: 8622 mv a2,s0 + c0048fee: 8526 mv a0,s1 + c0048ff0: cecff0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:715 return JS_EXCEPTION; - c0048e24: 4799 li a5,6 - c0048e26: f002 sd zero,32(sp) - c0048e28: b785 j c0048d88 + c0048ff4: 4799 li a5,6 + c0048ff6: f002 sd zero,32(sp) + c0048ff8: b785 j c0048f58 -00000000c0048e2a : +00000000c0048ffa : js_std_unsetenv(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:671 name = JS_ToCString(ctx, argv[0]); - c0048e2a: 630c ld a1,0(a4) - c0048e2c: 6710 ld a2,8(a4) + c0048ffa: 630c ld a1,0(a4) + c0048ffc: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:669 { - c0048e2e: 7139 addi sp,sp,-64 - c0048e30: f822 sd s0,48(sp) - c0048e32: fc06 sd ra,56(sp) - c0048e34: 842a mv s0,a0 + c0048ffe: 7139 addi sp,sp,-64 + c0049000: f822 sd s0,48(sp) + c0049002: fc06 sd ra,56(sp) + c0049004: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:671 name = JS_ToCString(ctx, argv[0]); - c0048e36: d1eff0ef jal ra,c0048354 + c0049006: d1eff0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:672 if (!name) - c0048e3a: e911 bnez a0,c0048e4e + c004900a: e911 bnez a0,c004901e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:673 return JS_EXCEPTION; - c0048e3c: f002 sd zero,32(sp) - c0048e3e: 4799 li a5,6 + c004900c: f002 sd zero,32(sp) + c004900e: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:677 } - c0048e40: 70e2 ld ra,56(sp) - c0048e42: 7442 ld s0,48(sp) + c0049010: 70e2 ld ra,56(sp) + c0049012: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:676 return JS_UNDEFINED; - c0048e44: f43e sd a5,40(sp) + c0049014: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:677 } - c0048e46: 7502 ld a0,32(sp) - c0048e48: 75a2 ld a1,40(sp) - c0048e4a: 6121 addi sp,sp,64 - c0048e4c: 8082 ret - c0048e4e: e42a sd a0,8(sp) + c0049016: 7502 ld a0,32(sp) + c0049018: 75a2 ld a1,40(sp) + c004901a: 6121 addi sp,sp,64 + c004901c: 8082 ret + c004901e: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:674 unsetenv(name); - c0048e50: 7ae0e0ef jal ra,c00575fe + c0049020: 7ae0e0ef jal ra,c00577ce /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:675 JS_FreeCString(ctx, name); - c0048e54: 65a2 ld a1,8(sp) - c0048e56: 8522 mv a0,s0 - c0048e58: 828c00ef jal ra,c0008e80 + c0049024: 65a2 ld a1,8(sp) + c0049026: 8522 mv a0,s0 + c0049028: f47bf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:676 return JS_UNDEFINED; - c0048e5c: 478d li a5,3 - c0048e5e: f002 sd zero,32(sp) - c0048e60: b7c5 j c0048e40 + c004902c: 478d li a5,3 + c004902e: f002 sd zero,32(sp) + c0049030: b7c5 j c0049010 -00000000c0048e62 : +00000000c0049032 : js_std_setenv(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:653 name = JS_ToCString(ctx, argv[0]); - c0048e62: 630c ld a1,0(a4) - c0048e64: 6710 ld a2,8(a4) + c0049032: 630c ld a1,0(a4) + c0049034: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:651 { - c0048e66: 7139 addi sp,sp,-64 - c0048e68: f822 sd s0,48(sp) - c0048e6a: f04a sd s2,32(sp) - c0048e6c: fc06 sd ra,56(sp) - c0048e6e: f426 sd s1,40(sp) - c0048e70: 842a mv s0,a0 - c0048e72: 893a mv s2,a4 + c0049036: 7139 addi sp,sp,-64 + c0049038: f822 sd s0,48(sp) + c004903a: f04a sd s2,32(sp) + c004903c: fc06 sd ra,56(sp) + c004903e: f426 sd s1,40(sp) + c0049040: 842a mv s0,a0 + c0049042: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:653 name = JS_ToCString(ctx, argv[0]); - c0048e74: ce0ff0ef jal ra,c0048354 + c0049044: ce0ff0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:654 if (!name) - c0048e78: ed01 bnez a0,c0048e90 + c0049048: ed01 bnez a0,c0049060 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:659 return JS_EXCEPTION; - c0048e7a: e802 sd zero,16(sp) - c0048e7c: 4799 li a5,6 + c004904a: e802 sd zero,16(sp) + c004904c: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:665 } - c0048e7e: 70e2 ld ra,56(sp) - c0048e80: 7442 ld s0,48(sp) + c004904e: 70e2 ld ra,56(sp) + c0049050: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:664 return JS_UNDEFINED; - c0048e82: ec3e sd a5,24(sp) + c0049052: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:665 } - c0048e84: 6542 ld a0,16(sp) - c0048e86: 65e2 ld a1,24(sp) - c0048e88: 74a2 ld s1,40(sp) - c0048e8a: 7902 ld s2,32(sp) - c0048e8c: 6121 addi sp,sp,64 - c0048e8e: 8082 ret + c0049054: 6542 ld a0,16(sp) + c0049056: 65e2 ld a1,24(sp) + c0049058: 74a2 ld s1,40(sp) + c004905a: 7902 ld s2,32(sp) + c004905c: 6121 addi sp,sp,64 + c004905e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:656 value = JS_ToCString(ctx, argv[1]); - c0048e90: 01093583 ld a1,16(s2) - c0048e94: 01893603 ld a2,24(s2) - c0048e98: 84aa mv s1,a0 - c0048e9a: 8522 mv a0,s0 - c0048e9c: cb8ff0ef jal ra,c0048354 - c0048ea0: 892a mv s2,a0 + c0049060: 01093583 ld a1,16(s2) + c0049064: 01893603 ld a2,24(s2) + c0049068: 84aa mv s1,a0 + c004906a: 8522 mv a0,s0 + c004906c: cb8ff0ef jal ra,c0048524 + c0049070: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:657 if (!value) { - c0048ea2: e511 bnez a0,c0048eae + c0049072: e511 bnez a0,c004907e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:658 JS_FreeCString(ctx, name); - c0048ea4: 85a6 mv a1,s1 - c0048ea6: 8522 mv a0,s0 - c0048ea8: fd9bf0ef jal ra,c0008e80 - c0048eac: b7f9 j c0048e7a + c0049074: 85a6 mv a1,s1 + c0049076: 8522 mv a0,s0 + c0049078: ef7bf0ef jal ra,c0008f6e + c004907c: b7f9 j c004904a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:661 setenv(name, value, TRUE); - c0048eae: 4605 li a2,1 - c0048eb0: 85aa mv a1,a0 - c0048eb2: 8526 mv a0,s1 - c0048eb4: 6f60e0ef jal ra,c00575aa + c004907e: 4605 li a2,1 + c0049080: 85aa mv a1,a0 + c0049082: 8526 mv a0,s1 + c0049084: 6f60e0ef jal ra,c005777a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:662 JS_FreeCString(ctx, name); - c0048eb8: 85a6 mv a1,s1 - c0048eba: 8522 mv a0,s0 - c0048ebc: fc5bf0ef jal ra,c0008e80 + c0049088: 85a6 mv a1,s1 + c004908a: 8522 mv a0,s0 + c004908c: ee3bf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:663 JS_FreeCString(ctx, value); - c0048ec0: 85ca mv a1,s2 - c0048ec2: 8522 mv a0,s0 - c0048ec4: fbdbf0ef jal ra,c0008e80 + c0049090: 85ca mv a1,s2 + c0049092: 8522 mv a0,s0 + c0049094: edbbf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:664 return JS_UNDEFINED; - c0048ec8: 478d li a5,3 - c0048eca: e802 sd zero,16(sp) - c0048ecc: bf4d j c0048e7e + c0049098: 478d li a5,3 + c004909a: e802 sd zero,16(sp) + c004909c: bf4d j c004904e -00000000c0048ece : +00000000c004909e : js_std_getenv(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:616 name = JS_ToCString(ctx, argv[0]); - c0048ece: 630c ld a1,0(a4) - c0048ed0: 6710 ld a2,8(a4) + c004909e: 630c ld a1,0(a4) + c00490a0: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:614 { - c0048ed2: 715d addi sp,sp,-80 - c0048ed4: e0a2 sd s0,64(sp) - c0048ed6: e486 sd ra,72(sp) - c0048ed8: fc26 sd s1,56(sp) - c0048eda: 842a mv s0,a0 + c00490a2: 715d addi sp,sp,-80 + c00490a4: e0a2 sd s0,64(sp) + c00490a6: e486 sd ra,72(sp) + c00490a8: fc26 sd s1,56(sp) + c00490aa: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:616 name = JS_ToCString(ctx, argv[0]); - c0048edc: c78ff0ef jal ra,c0048354 + c00490ac: c78ff0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:617 if (!name) - c0048ee0: e919 bnez a0,c0048ef6 + c00490b0: e919 bnez a0,c00490c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:618 return JS_EXCEPTION; - c0048ee2: f002 sd zero,32(sp) - c0048ee4: 4799 li a5,6 + c00490b2: f002 sd zero,32(sp) + c00490b4: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:625 } - c0048ee6: 60a6 ld ra,72(sp) - c0048ee8: 6406 ld s0,64(sp) + c00490b6: 60a6 ld ra,72(sp) + c00490b8: 6406 ld s0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:622 return JS_UNDEFINED; - c0048eea: f43e sd a5,40(sp) + c00490ba: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:625 } - c0048eec: 7502 ld a0,32(sp) - c0048eee: 75a2 ld a1,40(sp) - c0048ef0: 74e2 ld s1,56(sp) - c0048ef2: 6161 addi sp,sp,80 - c0048ef4: 8082 ret - c0048ef6: e42a sd a0,8(sp) + c00490bc: 7502 ld a0,32(sp) + c00490be: 75a2 ld a1,40(sp) + c00490c0: 74e2 ld s1,56(sp) + c00490c2: 6161 addi sp,sp,80 + c00490c4: 8082 ret + c00490c6: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:619 str = getenv(name); - c0048ef8: 4720e0ef jal ra,c005736a + c00490c8: 4720e0ef jal ra,c005753a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:620 JS_FreeCString(ctx, name); - c0048efc: 65a2 ld a1,8(sp) + c00490cc: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:619 str = getenv(name); - c0048efe: 84aa mv s1,a0 + c00490ce: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:620 JS_FreeCString(ctx, name); - c0048f00: 8522 mv a0,s0 - c0048f02: f7fbf0ef jal ra,c0008e80 + c00490d0: 8522 mv a0,s0 + c00490d2: e9dbf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:621 if (!str) - c0048f06: e481 bnez s1,c0048f0e + c00490d6: e481 bnez s1,c00490de /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:622 return JS_UNDEFINED; - c0048f08: f002 sd zero,32(sp) - c0048f0a: 478d li a5,3 - c0048f0c: bfe9 j c0048ee6 + c00490d8: f002 sd zero,32(sp) + c00490da: 478d li a5,3 + c00490dc: bfe9 j c00490b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:624 return JS_NewString(ctx, str); - c0048f0e: 8522 mv a0,s0 + c00490de: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:625 } - c0048f10: 6406 ld s0,64(sp) - c0048f12: 60a6 ld ra,72(sp) + c00490e0: 6406 ld s0,64(sp) + c00490e2: 60a6 ld ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:624 return JS_NewString(ctx, str); - c0048f14: 85a6 mv a1,s1 + c00490e4: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:625 } - c0048f16: 74e2 ld s1,56(sp) - c0048f18: 6161 addi sp,sp,80 + c00490e6: 74e2 ld s1,56(sp) + c00490e8: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:624 return JS_NewString(ctx, str); - c0048f1a: b09d006f j c0019a22 + c00490ea: b09d006f j c0019bf2 -00000000c0048f1e : +00000000c00490ee : js_std_gc(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:720 { - c0048f1e: 7179 addi sp,sp,-48 - c0048f20: f406 sd ra,40(sp) + c00490ee: 7179 addi sp,sp,-48 + c00490f0: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:721 JS_RunGC(JS_GetRuntime(ctx)); - c0048f22: ffdbd0ef jal ra,c0006f1e - c0048f26: fdec00ef jal ra,c0009704 + c00490f2: f1bbd0ef jal ra,c000700c + c00490f6: efcc00ef jal ra,c00097f2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:723 } - c0048f2a: 70a2 ld ra,40(sp) - c0048f2c: 4501 li a0,0 - c0048f2e: 458d li a1,3 - c0048f30: 6145 addi sp,sp,48 - c0048f32: 8082 ret + c00490fa: 70a2 ld ra,40(sp) + c00490fc: 4501 li a0,0 + c00490fe: 458d li a1,3 + c0049100: 6145 addi sp,sp,48 + c0049102: 8082 ret -00000000c0048f34 : +00000000c0049104 : js_std_exit(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:606 if (JS_ToInt32(ctx, &status, argv[0])) - c0048f34: 6310 ld a2,0(a4) - c0048f36: 6714 ld a3,8(a4) + c0049104: 6310 ld a2,0(a4) + c0049106: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:604 { - c0048f38: 7179 addi sp,sp,-48 + c0049108: 7179 addi sp,sp,-48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:606 if (JS_ToInt32(ctx, &status, argv[0])) - c0048f3a: 086c addi a1,sp,28 + c004910a: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:604 { - c0048f3c: f406 sd ra,40(sp) + c004910c: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:606 if (JS_ToInt32(ctx, &status, argv[0])) - c0048f3e: c30d30ef jal ra,c001c36e - c0048f42: c119 beqz a0,c0048f48 + c004910e: c30d30ef jal ra,c001c53e + c0049112: c119 beqz a0,c0049118 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:607 status = -1; - c0048f44: 57fd li a5,-1 - c0048f46: ce3e sw a5,28(sp) + c0049114: 57fd li a5,-1 + c0049116: ce3e sw a5,28(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:608 exit(status); - c0048f48: 4572 lw a0,28(sp) - c0048f4a: 0df0c0ef jal ra,c0055828 + c0049118: 4572 lw a0,28(sp) + c004911a: 0df0c0ef jal ra,c00559f8 -00000000c0048f4e : +00000000c004911e : js_std_init(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1540 { - c0048f4e: 711d addi sp,sp,-96 - c0048f50: e0ca sd s2,64(sp) + c004911e: 711d addi sp,sp,-96 + c0049120: e0ca sd s2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1545 JS_NewClassID(&js_std_file_class_id); - c0048f52: 000b8917 auipc s2,0xb8 - c0048f56: 1a690913 addi s2,s2,422 # c01010f8 + c0049122: 000b8917 auipc s2,0xb8 + c0049126: fd690913 addi s2,s2,-42 # c01010f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1540 { - c0048f5a: e8a2 sd s0,80(sp) - c0048f5c: 842a mv s0,a0 + c004912a: e8a2 sd s0,80(sp) + c004912c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1545 JS_NewClassID(&js_std_file_class_id); - c0048f5e: 854a mv a0,s2 + c004912e: 854a mv a0,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1540 { - c0048f60: ec86 sd ra,88(sp) - c0048f62: e4a6 sd s1,72(sp) - c0048f64: 84ae mv s1,a1 + c0049130: ec86 sd ra,88(sp) + c0049132: e4a6 sd s1,72(sp) + c0049134: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1545 JS_NewClassID(&js_std_file_class_id); - c0048f66: b1dbe0ef jal ra,c0007a82 + c0049136: a3bbe0ef jal ra,c0007b70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1547 JS_NewClass(JS_GetRuntime(ctx), js_std_file_class_id, &js_std_file_class); - c0048f6a: 8522 mv a0,s0 - c0048f6c: fb3bd0ef jal ra,c0006f1e - c0048f70: 00092583 lw a1,0(s2) - c0048f74: 000b8617 auipc a2,0xb8 - c0048f78: 08c60613 addi a2,a2,140 # c0101000 - c0048f7c: b43be0ef jal ra,c0007abe + c004913a: 8522 mv a0,s0 + c004913c: ed1bd0ef jal ra,c000700c + c0049140: 00092583 lw a1,0(s2) + c0049144: 000b8617 auipc a2,0xb8 + c0049148: ebc60613 addi a2,a2,-324 # c0101000 + c004914c: a61be0ef jal ra,c0007bac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1548 proto = JS_NewObject(ctx); - c0048f80: 8522 mv a0,s0 - c0048f82: e07cd0ef jal ra,c0016d88 + c0049150: 8522 mv a0,s0 + c0049152: e07cd0ef jal ra,c0016f58 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1549 JS_SetPropertyFunctionList(ctx, proto, js_std_file_proto_funcs, - c0048f86: 4745 li a4,17 + c0049156: 4745 li a4,17 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1548 proto = JS_NewObject(ctx); - c0048f88: 862e mv a2,a1 - c0048f8a: e02a sd a0,0(sp) - c0048f8c: e42e sd a1,8(sp) + c0049158: 862e mv a2,a1 + c004915a: e02a sd a0,0(sp) + c004915c: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1549 JS_SetPropertyFunctionList(ctx, proto, js_std_file_proto_funcs, - c0048f8e: 00029697 auipc a3,0x29 - c0048f92: e3268693 addi a3,a3,-462 # c0071dc0 - c0048f96: 85aa mv a1,a0 - c0048f98: 8522 mv a0,s0 - c0048f9a: ce7ec0ef jal ra,c0035c80 + c004915e: 00029697 auipc a3,0x29 + c0049162: ec268693 addi a3,a3,-318 # c0072020 + c0049166: 85aa mv a1,a0 + c0049168: 8522 mv a0,s0 + c004916a: ce7ec0ef jal ra,c0035e50 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1551 JS_SetClassProto(ctx, js_std_file_class_id, proto); - c0048f9e: 6602 ld a2,0(sp) - c0048fa0: 66a2 ld a3,8(sp) - c0048fa2: 00092583 lw a1,0(s2) - c0048fa6: 8522 mv a0,s0 - c0048fa8: fefbe0ef jal ra,c0007f96 + c004916e: 6602 ld a2,0(sp) + c0049170: 66a2 ld a3,8(sp) + c0049172: 00092583 lw a1,0(s2) + c0049176: 8522 mv a0,s0 + c0049178: f0dbe0ef jal ra,c0008084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1553 JS_SetModuleExportList(ctx, m, js_std_funcs, - c0048fac: 85a6 mv a1,s1 - c0048fae: 46dd li a3,23 - c0048fb0: 00029617 auipc a2,0x29 - c0048fb4: 03060613 addi a2,a2,48 # c0071fe0 - c0048fb8: 8522 mv a0,s0 - c0048fba: f6bec0ef jal ra,c0035f24 + c004917c: 85a6 mv a1,s1 + c004917e: 46dd li a3,23 + c0049180: 00029617 auipc a2,0x29 + c0049184: 0c060613 addi a2,a2,192 # c0072240 + c0049188: 8522 mv a0,s0 + c004918a: f6bec0ef jal ra,c00360f4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1555 JS_SetModuleExport(ctx, m, "in", js_new_std_file(ctx, stdin, FALSE, FALSE)); - c0048fbe: 4501 li a0,0 - c0048fc0: 0290c0ef jal ra,c00557e8 - c0048fc4: 85aa mv a1,a0 - c0048fc6: 4681 li a3,0 - c0048fc8: 4601 li a2,0 - c0048fca: 8522 mv a0,s0 - c0048fcc: 8cfff0ef jal ra,c004889a - c0048fd0: 872e mv a4,a1 - c0048fd2: 86aa mv a3,a0 - c0048fd4: 85a6 mv a1,s1 - c0048fd6: 00018617 auipc a2,0x18 - c0048fda: 1fa60613 addi a2,a2,506 # c00611d0 - c0048fde: 8522 mv a0,s0 - c0048fe0: e96d00ef jal ra,c0019676 + c004918e: 4501 li a0,0 + c0049190: 0290c0ef jal ra,c00559b8 + c0049194: 85aa mv a1,a0 + c0049196: 4681 li a3,0 + c0049198: 4601 li a2,0 + c004919a: 8522 mv a0,s0 + c004919c: 8cfff0ef jal ra,c0048a6a + c00491a0: 872e mv a4,a1 + c00491a2: 86aa mv a3,a0 + c00491a4: 85a6 mv a1,s1 + c00491a6: 00018617 auipc a2,0x18 + c00491aa: 28a60613 addi a2,a2,650 # c0061430 + c00491ae: 8522 mv a0,s0 + c00491b0: e96d00ef jal ra,c0019846 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1556 JS_SetModuleExport(ctx, m, "out", js_new_std_file(ctx, stdout, FALSE, FALSE)); - c0048fe4: 4505 li a0,1 - c0048fe6: 0030c0ef jal ra,c00557e8 - c0048fea: 85aa mv a1,a0 - c0048fec: 4681 li a3,0 - c0048fee: 4601 li a2,0 - c0048ff0: 8522 mv a0,s0 - c0048ff2: 8a9ff0ef jal ra,c004889a - c0048ff6: 872e mv a4,a1 - c0048ff8: 86aa mv a3,a0 - c0048ffa: 85a6 mv a1,s1 - c0048ffc: 00028617 auipc a2,0x28 - c0049000: a3c60613 addi a2,a2,-1476 # c0070a38 - c0049004: 8522 mv a0,s0 - c0049006: e70d00ef jal ra,c0019676 + c00491b4: 4505 li a0,1 + c00491b6: 0030c0ef jal ra,c00559b8 + c00491ba: 85aa mv a1,a0 + c00491bc: 4681 li a3,0 + c00491be: 4601 li a2,0 + c00491c0: 8522 mv a0,s0 + c00491c2: 8a9ff0ef jal ra,c0048a6a + c00491c6: 872e mv a4,a1 + c00491c8: 86aa mv a3,a0 + c00491ca: 85a6 mv a1,s1 + c00491cc: 00028617 auipc a2,0x28 + c00491d0: acc60613 addi a2,a2,-1332 # c0070c98 + c00491d4: 8522 mv a0,s0 + c00491d6: e70d00ef jal ra,c0019846 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1557 JS_SetModuleExport(ctx, m, "err", js_new_std_file(ctx, stderr, FALSE, FALSE)); - c004900a: 4509 li a0,2 - c004900c: 7dc0c0ef jal ra,c00557e8 - c0049010: 85aa mv a1,a0 - c0049012: 4681 li a3,0 - c0049014: 4601 li a2,0 - c0049016: 8522 mv a0,s0 - c0049018: 883ff0ef jal ra,c004889a - c004901c: 86aa mv a3,a0 - c004901e: 872e mv a4,a1 - c0049020: 8522 mv a0,s0 - c0049022: 85a6 mv a1,s1 - c0049024: 00028617 auipc a2,0x28 - c0049028: a1c60613 addi a2,a2,-1508 # c0070a40 - c004902c: e4ad00ef jal ra,c0019676 + c00491da: 4509 li a0,2 + c00491dc: 7dc0c0ef jal ra,c00559b8 + c00491e0: 85aa mv a1,a0 + c00491e2: 4681 li a3,0 + c00491e4: 4601 li a2,0 + c00491e6: 8522 mv a0,s0 + c00491e8: 883ff0ef jal ra,c0048a6a + c00491ec: 86aa mv a3,a0 + c00491ee: 872e mv a4,a1 + c00491f0: 8522 mv a0,s0 + c00491f2: 85a6 mv a1,s1 + c00491f4: 00028617 auipc a2,0x28 + c00491f8: aac60613 addi a2,a2,-1364 # c0070ca0 + c00491fc: e4ad00ef jal ra,c0019846 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1559 } - c0049030: 60e6 ld ra,88(sp) - c0049032: 6446 ld s0,80(sp) - c0049034: 64a6 ld s1,72(sp) - c0049036: 6906 ld s2,64(sp) - c0049038: 4501 li a0,0 - c004903a: 6125 addi sp,sp,96 - c004903c: 8082 ret + c0049200: 60e6 ld ra,88(sp) + c0049202: 6446 ld s0,80(sp) + c0049204: 64a6 ld s1,72(sp) + c0049206: 6906 ld s2,64(sp) + c0049208: 4501 li a0,0 + c004920a: 6125 addi sp,sp,96 + c004920c: 8082 ret -00000000c004903e : +00000000c004920e : js_std_file_putByte(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1271 { - c004903e: 711d addi sp,sp,-96 - c0049040: e4a6 sd s1,72(sp) - c0049042: e0ca sd s2,64(sp) - c0049044: ec86 sd ra,88(sp) - c0049046: e8a2 sd s0,80(sp) - c0049048: 892a mv s2,a0 - c004904a: 84ba mv s1,a4 + c004920e: 711d addi sp,sp,-96 + c0049210: e4a6 sd s1,72(sp) + c0049212: e0ca sd s2,64(sp) + c0049214: ec86 sd ra,88(sp) + c0049216: e8a2 sd s0,80(sp) + c0049218: 892a mv s2,a0 + c004921a: 84ba mv s1,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1272 FILE *f = js_std_file_get(ctx, this_val); - c004904c: f44ff0ef jal ra,c0048790 + c004921c: f44ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1274 if (!f) - c0049050: ed01 bnez a0,c0049068 + c0049220: ed01 bnez a0,c0049238 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1275 return JS_EXCEPTION; - c0049052: 4799 li a5,6 - c0049054: f002 sd zero,32(sp) - c0049056: f43e sd a5,40(sp) + c0049222: 4799 li a5,6 + c0049224: f002 sd zero,32(sp) + c0049226: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1280 (discriminator 1) } - c0049058: 60e6 ld ra,88(sp) - c004905a: 6446 ld s0,80(sp) - c004905c: 7502 ld a0,32(sp) - c004905e: 75a2 ld a1,40(sp) - c0049060: 64a6 ld s1,72(sp) - c0049062: 6906 ld s2,64(sp) - c0049064: 6125 addi sp,sp,96 - c0049066: 8082 ret + c0049228: 60e6 ld ra,88(sp) + c004922a: 6446 ld s0,80(sp) + c004922c: 7502 ld a0,32(sp) + c004922e: 75a2 ld a1,40(sp) + c0049230: 64a6 ld s1,72(sp) + c0049232: 6906 ld s2,64(sp) + c0049234: 6125 addi sp,sp,96 + c0049236: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1276 if (JS_ToInt32(ctx, &c, argv[0])) - c0049068: 6090 ld a2,0(s1) - c004906a: 6494 ld a3,8(s1) - c004906c: 842a mv s0,a0 - c004906e: 086c addi a1,sp,28 - c0049070: 854a mv a0,s2 - c0049072: afcd30ef jal ra,c001c36e - c0049076: fd71 bnez a0,c0049052 + c0049238: 6090 ld a2,0(s1) + c004923a: 6494 ld a3,8(s1) + c004923c: 842a mv s0,a0 + c004923e: 086c addi a1,sp,28 + c0049240: 854a mv a0,s2 + c0049242: afcd30ef jal ra,c001c53e + c0049246: fd71 bnez a0,c0049222 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1278 c = fputc(c, f); - c0049078: 4572 lw a0,28(sp) - c004907a: 85a2 mv a1,s0 - c004907c: 57e0c0ef jal ra,c00555fa + c0049248: 4572 lw a0,28(sp) + c004924a: 85a2 mv a1,s0 + c004924c: 57e0c0ef jal ra,c00557ca JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049080: d82a sw a0,48(sp) - c0049082: da02 sw zero,52(sp) - c0049084: 77c2 ld a5,48(sp) - c0049086: f402 sd zero,40(sp) - c0049088: f03e sd a5,32(sp) - c004908a: b7f9 j c0049058 - -00000000c004908c : + c0049250: d82a sw a0,48(sp) + c0049252: da02 sw zero,52(sp) + c0049254: 77c2 ld a5,48(sp) + c0049256: f402 sd zero,40(sp) + c0049258: f03e sd a5,32(sp) + c004925a: b7f9 j c0049228 + +00000000c004925c : js_std_file_readAsString(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1220 { - c004908c: 7171 addi sp,sp,-176 - c004908e: f122 sd s0,160(sp) - c0049090: ed26 sd s1,152(sp) - c0049092: e54e sd s3,136(sp) - c0049094: f506 sd ra,168(sp) - c0049096: e94a sd s2,144(sp) - c0049098: 842a mv s0,a0 - c004909a: 89b6 mv s3,a3 - c004909c: 84ba mv s1,a4 + c004925c: 7171 addi sp,sp,-176 + c004925e: f122 sd s0,160(sp) + c0049260: ed26 sd s1,152(sp) + c0049262: e54e sd s3,136(sp) + c0049264: f506 sd ra,168(sp) + c0049266: e94a sd s2,144(sp) + c0049268: 842a mv s0,a0 + c004926a: 89b6 mv s3,a3 + c004926c: 84ba mv s1,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1221 FILE *f = js_std_file_get(ctx, this_val); - c004909e: ef2ff0ef jal ra,c0048790 + c004926e: ef2ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1229 if (!f) - c00490a2: e501 bnez a0,c00490aa + c0049272: e501 bnez a0,c004927a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1251 return JS_EXCEPTION; - c00490a4: e082 sd zero,64(sp) - c00490a6: 4799 li a5,6 - c00490a8: a899 j c00490fe - c00490aa: 892a mv s2,a0 + c0049274: e082 sd zero,64(sp) + c0049276: 4799 li a5,6 + c0049278: a899 j c00492ce + c004927a: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1232 if (argc >= 1) - c00490ac: 07305363 blez s3,c0049112 + c004927c: 07305363 blez s3,c00492e2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1233 max_size_val = argv[0]; - c00490b0: 609c ld a5,0(s1) - c00490b2: 6494 ld a3,8(s1) - c00490b4: f83e sd a5,48(sp) + c0049280: 609c ld a5,0(s1) + c0049282: 6494 ld a3,8(s1) + c0049284: f83e sd a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1237 if (!JS_IsUndefined(max_size_val)) { - c00490b6: 0006879b sext.w a5,a3 - c00490ba: 470d li a4,3 - c00490bc: 04e78e63 beq a5,a4,c0049118 + c0049286: 0006879b sext.w a5,a3 + c004928a: 470d li a4,3 + c004928c: 04e78e63 beq a5,a4,c00492e8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1238 if (JS_ToIndex(ctx, &max_size64, max_size_val)) - c00490c0: 7642 ld a2,48(sp) - c00490c2: 082c addi a1,sp,24 - c00490c4: 8522 mv a0,s0 - c00490c6: 9c0d50ef jal ra,c001e286 - c00490ca: fd69 bnez a0,c00490a4 + c0049290: 7642 ld a2,48(sp) + c0049292: 082c addi a1,sp,24 + c0049294: 8522 mv a0,s0 + c0049296: 9c0d50ef jal ra,c001e456 + c004929a: fd69 bnez a0,c0049274 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1240 if (max_size64 < max_size) - c00490cc: 64e2 ld s1,24(sp) + c004929c: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1244 js_std_dbuf_init(ctx, &dbuf); - c00490ce: 088c addi a1,sp,80 - c00490d0: 8522 mv a0,s0 - c00490d2: a60ff0ef jal ra,c0048332 + c004929e: 088c addi a1,sp,80 + c00492a0: 8522 mv a0,s0 + c00492a2: a60ff0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1247 if (c == EOF) - c00490d6: 59fd li s3,-1 + c00492a6: 59fd li s3,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1245 while (max_size != 0) { - c00490d8: c491 beqz s1,c00490e4 + c00492a8: c491 beqz s1,c00492b4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1246 c = fgetc(f); - c00490da: 854a mv a0,s2 - c00490dc: 29e0c0ef jal ra,c005537a + c00492aa: 854a mv a0,s2 + c00492ac: 29e0c0ef jal ra,c005554a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1247 if (c == EOF) - c00490e0: 03351e63 bne a0,s3,c004911c + c00492b0: 03351e63 bne a0,s3,c00492ec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1255 obj = JS_NewStringLen(ctx, (const char *)dbuf.buf, dbuf.size); - c00490e4: 6666 ld a2,88(sp) - c00490e6: 65c6 ld a1,80(sp) - c00490e8: 8522 mv a0,s0 - c00490ea: 9a6d00ef jal ra,c0019290 - c00490ee: f02a sd a0,32(sp) + c00492b4: 6666 ld a2,88(sp) + c00492b6: 65c6 ld a1,80(sp) + c00492b8: 8522 mv a0,s0 + c00492ba: 9a6d00ef jal ra,c0019460 + c00492be: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1256 dbuf_free(&dbuf); - c00490f0: 0888 addi a0,sp,80 + c00492c0: 0888 addi a0,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1255 obj = JS_NewStringLen(ctx, (const char *)dbuf.buf, dbuf.size); - c00490f2: f42e sd a1,40(sp) + c00492c2: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1256 dbuf_free(&dbuf); - c00490f4: d13fe0ef jal ra,c0047e06 + c00492c4: d13fe0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1257 return obj; - c00490f8: 7782 ld a5,32(sp) - c00490fa: e0be sd a5,64(sp) - c00490fc: 77a2 ld a5,40(sp) + c00492c8: 7782 ld a5,32(sp) + c00492ca: e0be sd a5,64(sp) + c00492cc: 77a2 ld a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1258 } - c00490fe: 70aa ld ra,168(sp) - c0049100: 740a ld s0,160(sp) + c00492ce: 70aa ld ra,168(sp) + c00492d0: 740a ld s0,160(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1251 return JS_EXCEPTION; - c0049102: e4be sd a5,72(sp) + c00492d2: e4be sd a5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1258 } - c0049104: 6506 ld a0,64(sp) - c0049106: 65a6 ld a1,72(sp) - c0049108: 64ea ld s1,152(sp) - c004910a: 694a ld s2,144(sp) - c004910c: 69aa ld s3,136(sp) - c004910e: 614d addi sp,sp,176 - c0049110: 8082 ret + c00492d4: 6506 ld a0,64(sp) + c00492d6: 65a6 ld a1,72(sp) + c00492d8: 64ea ld s1,152(sp) + c00492da: 694a ld s2,144(sp) + c00492dc: 69aa ld s3,136(sp) + c00492de: 614d addi sp,sp,176 + c00492e0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1235 max_size_val = JS_UNDEFINED; - c0049112: f802 sd zero,48(sp) - c0049114: 468d li a3,3 - c0049116: b745 j c00490b6 + c00492e2: f802 sd zero,48(sp) + c00492e4: 468d li a3,3 + c00492e6: b745 j c0049286 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1236 max_size = (size_t)-1; - c0049118: 54fd li s1,-1 - c004911a: bf55 j c00490ce + c00492e8: 54fd li s1,-1 + c00492ea: bf55 j c004929e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1249 if (dbuf_putc(&dbuf, c)) { - c004911c: 0ff57593 zext.b a1,a0 - c0049120: 0888 addi a0,sp,80 - c0049122: c21fe0ef jal ra,c0047d42 - c0049126: c509 beqz a0,c0049130 + c00492ec: 0ff57593 zext.b a1,a0 + c00492f0: 0888 addi a0,sp,80 + c00492f2: c21fe0ef jal ra,c0047f12 + c00492f6: c509 beqz a0,c0049300 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1250 dbuf_free(&dbuf); - c0049128: 0888 addi a0,sp,80 - c004912a: cddfe0ef jal ra,c0047e06 - c004912e: bf9d j c00490a4 + c00492f8: 0888 addi a0,sp,80 + c00492fa: cddfe0ef jal ra,c0047fd6 + c00492fe: bf9d j c0049274 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1253 max_size--; - c0049130: 14fd addi s1,s1,-1 - c0049132: b75d j c00490d8 + c0049300: 14fd addi s1,s1,-1 + c0049302: b75d j c00492a8 -00000000c0049134 : +00000000c0049304 : js_std_file_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1157 { - c0049134: 7119 addi sp,sp,-128 - c0049136: f8a2 sd s0,112(sp) - c0049138: f4a6 sd s1,104(sp) - c004913a: ecce sd s3,88(sp) - c004913c: fc86 sd ra,120(sp) - c004913e: f0ca sd s2,96(sp) - c0049140: 84aa mv s1,a0 - c0049142: 843a mv s0,a4 - c0049144: 89be mv s3,a5 + c0049304: 7119 addi sp,sp,-128 + c0049306: f8a2 sd s0,112(sp) + c0049308: f4a6 sd s1,104(sp) + c004930a: ecce sd s3,88(sp) + c004930c: fc86 sd ra,120(sp) + c004930e: f0ca sd s2,96(sp) + c0049310: 84aa mv s1,a0 + c0049312: 843a mv s0,a4 + c0049314: 89be mv s3,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1158 FILE *f = js_std_file_get(ctx, this_val); - c0049146: e4aff0ef jal ra,c0048790 + c0049316: e4aff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1163 if (!f) - c004914a: ed09 bnez a0,c0049164 + c004931a: ed09 bnez a0,c0049334 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1164 return JS_EXCEPTION; - c004914c: 4799 li a5,6 - c004914e: f802 sd zero,48(sp) - c0049150: fc3e sd a5,56(sp) + c004931c: 4799 li a5,6 + c004931e: f802 sd zero,48(sp) + c0049320: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1179 (discriminator 1) } - c0049152: 70e6 ld ra,120(sp) - c0049154: 7446 ld s0,112(sp) - c0049156: 7542 ld a0,48(sp) - c0049158: 75e2 ld a1,56(sp) - c004915a: 74a6 ld s1,104(sp) - c004915c: 7906 ld s2,96(sp) - c004915e: 69e6 ld s3,88(sp) - c0049160: 6109 addi sp,sp,128 - c0049162: 8082 ret + c0049322: 70e6 ld ra,120(sp) + c0049324: 7446 ld s0,112(sp) + c0049326: 7542 ld a0,48(sp) + c0049328: 75e2 ld a1,56(sp) + c004932a: 74a6 ld s1,104(sp) + c004932c: 7906 ld s2,96(sp) + c004932e: 69e6 ld s3,88(sp) + c0049330: 6109 addi sp,sp,128 + c0049332: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1165 if (JS_ToIndex(ctx, &pos, argv[1])) - c0049164: 6810 ld a2,16(s0) - c0049166: 6c14 ld a3,24(s0) - c0049168: 892a mv s2,a0 - c004916a: 082c addi a1,sp,24 - c004916c: 8526 mv a0,s1 - c004916e: 918d50ef jal ra,c001e286 - c0049172: fd69 bnez a0,c004914c + c0049334: 6810 ld a2,16(s0) + c0049336: 6c14 ld a3,24(s0) + c0049338: 892a mv s2,a0 + c004933a: 082c addi a1,sp,24 + c004933c: 8526 mv a0,s1 + c004933e: 918d50ef jal ra,c001e456 + c0049342: fd69 bnez a0,c004931c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1167 if (JS_ToIndex(ctx, &len, argv[2])) - c0049174: 7010 ld a2,32(s0) - c0049176: 7414 ld a3,40(s0) - c0049178: 100c addi a1,sp,32 - c004917a: 8526 mv a0,s1 - c004917c: 90ad50ef jal ra,c001e286 - c0049180: f571 bnez a0,c004914c + c0049344: 7010 ld a2,32(s0) + c0049346: 7414 ld a3,40(s0) + c0049348: 100c addi a1,sp,32 + c004934a: 8526 mv a0,s1 + c004934c: 90ad50ef jal ra,c001e456 + c0049350: f571 bnez a0,c004931c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1169 buf = JS_GetArrayBuffer(ctx, &size, argv[0]); - c0049182: 6010 ld a2,0(s0) - c0049184: 6414 ld a3,8(s0) - c0049186: 102c addi a1,sp,40 - c0049188: 8526 mv a0,s1 - c004918a: a95f90ef jal ra,c0042c1e + c0049352: 6010 ld a2,0(s0) + c0049354: 6414 ld a3,8(s0) + c0049356: 102c addi a1,sp,40 + c0049358: 8526 mv a0,s1 + c004935a: a95f90ef jal ra,c0042dee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1170 if (!buf) - c004918e: dd5d beqz a0,c004914c + c004935e: dd5d beqz a0,c004931c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1172 if (pos + len > size) - c0049190: 67e2 ld a5,24(sp) - c0049192: 7602 ld a2,32(sp) - c0049194: 7722 ld a4,40(sp) - c0049196: 00c786b3 add a3,a5,a2 - c004919a: 00d77c63 bgeu a4,a3,c00491b2 + c0049360: 67e2 ld a5,24(sp) + c0049362: 7602 ld a2,32(sp) + c0049364: 7722 ld a4,40(sp) + c0049366: 00c786b3 add a3,a5,a2 + c004936a: 00d77c63 bgeu a4,a3,c0049382 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1173 return JS_ThrowRangeError(ctx, "read/write array buffer overflow"); - c004919e: 00028597 auipc a1,0x28 - c00491a2: 8aa58593 addi a1,a1,-1878 # c0070a48 - c00491a6: 8526 mv a0,s1 - c00491a8: fb2cb0ef jal ra,c001495a - c00491ac: f82a sd a0,48(sp) - c00491ae: fc2e sd a1,56(sp) - c00491b0: b74d j c0049152 + c004936e: 00028597 auipc a1,0x28 + c0049372: 93a58593 addi a1,a1,-1734 # c0070ca8 + c0049376: 8526 mv a0,s1 + c0049378: ed0cb0ef jal ra,c0014a48 + c004937c: f82a sd a0,48(sp) + c004937e: fc2e sd a1,56(sp) + c0049380: b74d j c0049322 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1175 ret = fwrite(buf + pos, 1, len, f); - c00491b2: 953e add a0,a0,a5 - c00491b4: 86ca mv a3,s2 - c00491b6: 4585 li a1,1 + c0049382: 953e add a0,a0,a5 + c0049384: 86ca mv a3,s2 + c0049386: 4585 li a1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1174 if (magic) - c00491b8: 02098063 beqz s3,c00491d8 + c0049388: 02098063 beqz s3,c00493a8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1175 ret = fwrite(buf + pos, 1, len, f); - c00491bc: 20e0c0ef jal ra,c00553ca + c004938c: 20e0c0ef jal ra,c005559a JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00491c0: 0005079b sext.w a5,a0 - c00491c4: 00f51d63 bne a0,a5,c00491de + c0049390: 0005079b sext.w a5,a0 + c0049394: 00f51d63 bne a0,a5,c00493ae JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00491c8: c282 sw zero,68(sp) - c00491ca: c0be sw a5,64(sp) - c00491cc: 6706 ld a4,64(sp) - c00491ce: f83a sd a4,48(sp) - c00491d0: 4701 li a4,0 + c0049398: c282 sw zero,68(sp) + c004939a: c0be sw a5,64(sp) + c004939c: 6706 ld a4,64(sp) + c004939e: f83a sd a4,48(sp) + c00493a0: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00491d2: d83e sw a5,48(sp) - c00491d4: fc3a sd a4,56(sp) - c00491d6: bfb5 j c0049152 + c00493a2: d83e sw a5,48(sp) + c00493a4: fc3a sd a4,56(sp) + c00493a6: bfb5 j c0049322 js_std_file_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1177 ret = fread(buf + pos, 1, len, f); - c00491d8: 0060c0ef jal ra,c00551de - c00491dc: b7d5 j c00491c0 + c00493a8: 0060c0ef jal ra,c00553ae + c00493ac: b7d5 j c0049390 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c00491de: d22577d3 fcvt.d.l fa5,a0 - c00491e2: 471d li a4,7 - c00491e4: e20787d3 fmv.x.d a5,fa5 + c00493ae: d22577d3 fcvt.d.l fa5,a0 + c00493b2: 471d li a4,7 + c00493b4: e20787d3 fmv.x.d a5,fa5 js_std_file_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00491e8: b83e fsd fa5,48(sp) - c00491ea: 2781 sext.w a5,a5 - c00491ec: b7dd j c00491d2 + c00493b8: b83e fsd fa5,48(sp) + c00493ba: 2781 sext.w a5,a5 + c00493bc: b7dd j c00493a2 -00000000c00491ee : +00000000c00493be : js_std_file_clearerr(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1138 { - c00491ee: 7179 addi sp,sp,-48 - c00491f0: f406 sd ra,40(sp) + c00493be: 7179 addi sp,sp,-48 + c00493c0: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1139 FILE *f = js_std_file_get(ctx, this_val); - c00491f2: d9eff0ef jal ra,c0048790 + c00493c2: d9eff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1140 if (!f) - c00491f6: e909 bnez a0,c0049208 + c00493c6: e909 bnez a0,c00493d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1141 return JS_EXCEPTION; - c00491f8: e802 sd zero,16(sp) - c00491fa: 4799 li a5,6 + c00493c8: e802 sd zero,16(sp) + c00493ca: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1144 } - c00491fc: 70a2 ld ra,40(sp) + c00493cc: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1143 return JS_UNDEFINED; - c00491fe: ec3e sd a5,24(sp) + c00493ce: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1144 } - c0049200: 6542 ld a0,16(sp) - c0049202: 65e2 ld a1,24(sp) - c0049204: 6145 addi sp,sp,48 - c0049206: 8082 ret + c00493d0: 6542 ld a0,16(sp) + c00493d2: 65e2 ld a1,24(sp) + c00493d4: 6145 addi sp,sp,48 + c00493d6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1142 clearerr(f); - c0049208: 5480c0ef jal ra,c0055750 + c00493d8: 5480c0ef jal ra,c0055920 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1143 return JS_UNDEFINED; - c004920c: 478d li a5,3 - c004920e: e802 sd zero,16(sp) - c0049210: b7f5 j c00491fc + c00493dc: 478d li a5,3 + c00493de: e802 sd zero,16(sp) + c00493e0: b7f5 j c00493cc -00000000c0049212 : +00000000c00493e2 : js_std_file_error(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1129 { - c0049212: 7139 addi sp,sp,-64 - c0049214: fc06 sd ra,56(sp) + c00493e2: 7139 addi sp,sp,-64 + c00493e4: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1130 FILE *f = js_std_file_get(ctx, this_val); - c0049216: d7aff0ef jal ra,c0048790 + c00493e6: d7aff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1131 if (!f) - c004921a: e909 bnez a0,c004922c + c00493ea: e909 bnez a0,c00493fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1132 return JS_EXCEPTION; - c004921c: e802 sd zero,16(sp) - c004921e: 4799 li a5,6 + c00493ec: e802 sd zero,16(sp) + c00493ee: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1134 } - c0049220: 70e2 ld ra,56(sp) - c0049222: ec3e sd a5,24(sp) - c0049224: 6542 ld a0,16(sp) - c0049226: 65e2 ld a1,24(sp) - c0049228: 6121 addi sp,sp,64 - c004922a: 8082 ret + c00493f0: 70e2 ld ra,56(sp) + c00493f2: ec3e sd a5,24(sp) + c00493f4: 6542 ld a0,16(sp) + c00493f6: 65e2 ld a1,24(sp) + c00493f8: 6121 addi sp,sp,64 + c00493fa: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1133 return JS_NewBool(ctx, ferror(f)); - c004922c: 50c0c0ef jal ra,c0055738 + c00493fc: 50c0c0ef jal ra,c0055908 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0049230: 00a03533 snez a0,a0 - c0049234: d202 sw zero,36(sp) - c0049236: d02a sw a0,32(sp) - c0049238: 7782 ld a5,32(sp) - c004923a: e83e sd a5,16(sp) - c004923c: 4785 li a5,1 - c004923e: b7cd j c0049220 - -00000000c0049240 : + c0049400: 00a03533 snez a0,a0 + c0049404: d202 sw zero,36(sp) + c0049406: d02a sw a0,32(sp) + c0049408: 7782 ld a5,32(sp) + c004940a: e83e sd a5,16(sp) + c004940c: 4785 li a5,1 + c004940e: b7cd j c00493f0 + +00000000c0049410 : js_std_file_fileno(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1148 { - c0049240: 7139 addi sp,sp,-64 - c0049242: fc06 sd ra,56(sp) + c0049410: 7139 addi sp,sp,-64 + c0049412: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1149 FILE *f = js_std_file_get(ctx, this_val); - c0049244: d4cff0ef jal ra,c0048790 + c0049414: d4cff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1150 if (!f) - c0049248: e909 bnez a0,c004925a + c0049418: e909 bnez a0,c004942a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1151 return JS_EXCEPTION; - c004924a: 4799 li a5,6 - c004924c: e802 sd zero,16(sp) - c004924e: ec3e sd a5,24(sp) + c004941a: 4799 li a5,6 + c004941c: e802 sd zero,16(sp) + c004941e: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1153 (discriminator 1) } - c0049250: 70e2 ld ra,56(sp) - c0049252: 6542 ld a0,16(sp) - c0049254: 65e2 ld a1,24(sp) - c0049256: 6121 addi sp,sp,64 - c0049258: 8082 ret + c0049420: 70e2 ld ra,56(sp) + c0049422: 6542 ld a0,16(sp) + c0049424: 65e2 ld a1,24(sp) + c0049426: 6121 addi sp,sp,64 + c0049428: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1152 return JS_NewInt32(ctx, fileno(f)); - c004925a: 7250a0ef jal ra,c005417e + c004942a: 7250a0ef jal ra,c005434e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004925e: d02a sw a0,32(sp) - c0049260: d202 sw zero,36(sp) - c0049262: 7782 ld a5,32(sp) - c0049264: ec02 sd zero,24(sp) - c0049266: e83e sd a5,16(sp) - c0049268: b7e5 j c0049250 - -00000000c004926a : + c004942e: d02a sw a0,32(sp) + c0049430: d202 sw zero,36(sp) + c0049432: 7782 ld a5,32(sp) + c0049434: ec02 sd zero,24(sp) + c0049436: e83e sd a5,16(sp) + c0049438: b7e5 j c0049420 + +00000000c004943a : js_std_file_eof(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1120 { - c004926a: 7139 addi sp,sp,-64 - c004926c: fc06 sd ra,56(sp) + c004943a: 7139 addi sp,sp,-64 + c004943c: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1121 FILE *f = js_std_file_get(ctx, this_val); - c004926e: d22ff0ef jal ra,c0048790 + c004943e: d22ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1122 if (!f) - c0049272: e909 bnez a0,c0049284 + c0049442: e909 bnez a0,c0049454 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1123 return JS_EXCEPTION; - c0049274: e802 sd zero,16(sp) - c0049276: 4799 li a5,6 + c0049444: e802 sd zero,16(sp) + c0049446: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1125 } - c0049278: 70e2 ld ra,56(sp) - c004927a: ec3e sd a5,24(sp) - c004927c: 6542 ld a0,16(sp) - c004927e: 65e2 ld a1,24(sp) - c0049280: 6121 addi sp,sp,64 - c0049282: 8082 ret + c0049448: 70e2 ld ra,56(sp) + c004944a: ec3e sd a5,24(sp) + c004944c: 6542 ld a0,16(sp) + c004944e: 65e2 ld a1,24(sp) + c0049450: 6121 addi sp,sp,64 + c0049452: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1124 return JS_NewBool(ctx, feof(f)); - c0049284: 4ac0c0ef jal ra,c0055730 + c0049454: 4ac0c0ef jal ra,c0055900 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0049288: 00a03533 snez a0,a0 - c004928c: d202 sw zero,36(sp) - c004928e: d02a sw a0,32(sp) - c0049290: 7782 ld a5,32(sp) - c0049292: e83e sd a5,16(sp) - c0049294: 4785 li a5,1 - c0049296: b7cd j c0049278 - -00000000c0049298 : + c0049458: 00a03533 snez a0,a0 + c004945c: d202 sw zero,36(sp) + c004945e: d02a sw a0,32(sp) + c0049460: 7782 ld a5,32(sp) + c0049462: e83e sd a5,16(sp) + c0049464: 4785 li a5,1 + c0049466: b7cd j c0049448 + +00000000c0049468 : js_std_file_tell(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1080 { - c0049298: 715d addi sp,sp,-80 - c004929a: e0a2 sd s0,64(sp) - c004929c: fc26 sd s1,56(sp) - c004929e: e486 sd ra,72(sp) - c00492a0: 842a mv s0,a0 - c00492a2: 84be mv s1,a5 + c0049468: 715d addi sp,sp,-80 + c004946a: e0a2 sd s0,64(sp) + c004946c: fc26 sd s1,56(sp) + c004946e: e486 sd ra,72(sp) + c0049470: 842a mv s0,a0 + c0049472: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1081 FILE *f = js_std_file_get(ctx, this_val); - c00492a4: cecff0ef jal ra,c0048790 + c0049474: cecff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1083 if (!f) - c00492a8: e919 bnez a0,c00492be + c0049478: e919 bnez a0,c004948e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1084 return JS_EXCEPTION; - c00492aa: 4799 li a5,6 - c00492ac: e802 sd zero,16(sp) - c00492ae: ec3e sd a5,24(sp) + c004947a: 4799 li a5,6 + c004947c: e802 sd zero,16(sp) + c004947e: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1094 (discriminator 1) } - c00492b0: 60a6 ld ra,72(sp) - c00492b2: 6406 ld s0,64(sp) - c00492b4: 6542 ld a0,16(sp) - c00492b6: 65e2 ld a1,24(sp) - c00492b8: 74e2 ld s1,56(sp) - c00492ba: 6161 addi sp,sp,80 - c00492bc: 8082 ret + c0049480: 60a6 ld ra,72(sp) + c0049482: 6406 ld s0,64(sp) + c0049484: 6542 ld a0,16(sp) + c0049486: 65e2 ld a1,24(sp) + c0049488: 74e2 ld s1,56(sp) + c004948a: 6161 addi sp,sp,80 + c004948c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1088 pos = ftell(f); - c00492be: 05c0c0ef jal ra,c005531a - c00492c2: 85aa mv a1,a0 + c004948e: 05c0c0ef jal ra,c00554ea + c0049492: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1090 if (is_bigint) - c00492c4: c881 beqz s1,c00492d4 + c0049494: c881 beqz s1,c00494a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1091 return JS_NewBigInt64(ctx, pos); - c00492c6: 8522 mv a0,s0 + c0049496: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1094 } - c00492c8: 6406 ld s0,64(sp) - c00492ca: 60a6 ld ra,72(sp) - c00492cc: 74e2 ld s1,56(sp) - c00492ce: 6161 addi sp,sp,80 + c0049498: 6406 ld s0,64(sp) + c004949a: 60a6 ld ra,72(sp) + c004949c: 74e2 ld s1,56(sp) + c004949e: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1091 return JS_NewBigInt64(ctx, pos); - c00492d0: a2dcf06f j c0018cfc + c00494a0: a2dcf06f j c0018ecc JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c00492d4: 0005079b sext.w a5,a0 - c00492d8: 00f51a63 bne a0,a5,c00492ec + c00494a4: 0005079b sext.w a5,a0 + c00494a8: 00f51a63 bne a0,a5,c00494bc JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00492dc: d202 sw zero,36(sp) - c00492de: d03e sw a5,32(sp) - c00492e0: 7702 ld a4,32(sp) - c00492e2: e83a sd a4,16(sp) - c00492e4: 4701 li a4,0 + c00494ac: d202 sw zero,36(sp) + c00494ae: d03e sw a5,32(sp) + c00494b0: 7702 ld a4,32(sp) + c00494b2: e83a sd a4,16(sp) + c00494b4: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c00492e6: c83e sw a5,16(sp) - c00492e8: ec3a sd a4,24(sp) + c00494b6: c83e sw a5,16(sp) + c00494b8: ec3a sd a4,24(sp) js_std_file_tell(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1093 return JS_NewInt64(ctx, pos); - c00492ea: b7d9 j c00492b0 + c00494ba: b7d9 j c0049480 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c00492ec: d22577d3 fcvt.d.l fa5,a0 - c00492f0: 471d li a4,7 - c00492f2: e20787d3 fmv.x.d a5,fa5 + c00494bc: d22577d3 fcvt.d.l fa5,a0 + c00494c0: 471d li a4,7 + c00494c2: e20787d3 fmv.x.d a5,fa5 js_std_file_tell(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c00492f6: a83e fsd fa5,16(sp) - c00492f8: 2781 sext.w a5,a5 - c00492fa: b7f5 j c00492e6 + c00494c6: a83e fsd fa5,16(sp) + c00494c8: 2781 sext.w a5,a5 + c00494ca: b7f5 j c00494b6 -00000000c00492fc : +00000000c00494cc : js_std_file_flush(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1070 { - c00492fc: 7179 addi sp,sp,-48 - c00492fe: f406 sd ra,40(sp) + c00494cc: 7179 addi sp,sp,-48 + c00494ce: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1071 FILE *f = js_std_file_get(ctx, this_val); - c0049300: c90ff0ef jal ra,c0048790 + c00494d0: c90ff0ef jal ra,c0048960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1072 if (!f) - c0049304: e909 bnez a0,c0049316 + c00494d4: e909 bnez a0,c00494e6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1073 return JS_EXCEPTION; - c0049306: e802 sd zero,16(sp) - c0049308: 4799 li a5,6 + c00494d6: e802 sd zero,16(sp) + c00494d8: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1076 } - c004930a: 70a2 ld ra,40(sp) + c00494da: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1075 return JS_UNDEFINED; - c004930c: ec3e sd a5,24(sp) + c00494dc: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1076 } - c004930e: 6542 ld a0,16(sp) - c0049310: 65e2 ld a1,24(sp) - c0049312: 6145 addi sp,sp,48 - c0049314: 8082 ret + c00494de: 6542 ld a0,16(sp) + c00494e0: 65e2 ld a1,24(sp) + c00494e2: 6145 addi sp,sp,48 + c00494e4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1074 fflush(f); - c0049316: 1880c0ef jal ra,c005549e + c00494e6: 1880c0ef jal ra,c005566e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1075 return JS_UNDEFINED; - c004931a: 478d li a5,3 - c004931c: e802 sd zero,16(sp) - c004931e: b7f5 j c004930a + c00494ea: 478d li a5,3 + c00494ec: e802 sd zero,16(sp) + c00494ee: b7f5 j c00494da -00000000c0049320 : +00000000c00494f0 : js_std_file_finalizer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:803 { - c0049320: 7179 addi sp,sp,-48 - c0049322: 87b2 mv a5,a2 - c0049324: ec26 sd s1,24(sp) - c0049326: e02e sd a1,0(sp) - c0049328: 84aa mv s1,a0 - c004932a: e432 sd a2,8(sp) + c00494f0: 7179 addi sp,sp,-48 + c00494f2: 87b2 mv a5,a2 + c00494f4: ec26 sd s1,24(sp) + c00494f6: e02e sd a1,0(sp) + c00494f8: 84aa mv s1,a0 + c00494fa: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:804 JSSTDFile *s = JS_GetOpaque(val, js_std_file_class_id); - c004932c: 852e mv a0,a1 - c004932e: 000b8617 auipc a2,0xb8 - c0049332: dca62603 lw a2,-566(a2) # c01010f8 - c0049336: 85be mv a1,a5 + c00494fc: 852e mv a0,a1 + c00494fe: 000b8617 auipc a2,0xb8 + c0049502: bfa62603 lw a2,-1030(a2) # c01010f8 + c0049506: 85be mv a1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:803 { - c0049338: f406 sd ra,40(sp) - c004933a: f022 sd s0,32(sp) + c0049508: f406 sd ra,40(sp) + c004950a: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:804 JSSTDFile *s = JS_GetOpaque(val, js_std_file_class_id); - c004933c: d76c10ef jal ra,c000a8b2 + c004950c: c94c10ef jal ra,c000a9a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:805 if (s) { - c0049340: c50d beqz a0,c004936a - c0049342: 842a mv s0,a0 + c0049510: c50d beqz a0,c004953a + c0049512: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:806 if (s->f && s->close_in_finalizer) { - c0049344: 6108 ld a0,0(a0) - c0049346: c519 beqz a0,c0049354 + c0049514: 6108 ld a0,0(a0) + c0049516: c519 beqz a0,c0049524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:806 (discriminator 1) - c0049348: 441c lw a5,8(s0) - c004934a: c789 beqz a5,c0049354 + c0049518: 441c lw a5,8(s0) + c004951a: c789 beqz a5,c0049524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:807 if (s->is_popen) - c004934c: 445c lw a5,12(s0) - c004934e: cb99 beqz a5,c0049364 + c004951c: 445c lw a5,12(s0) + c004951e: cb99 beqz a5,c0049534 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:808 pclose(s->f); - c0049350: 23b090ef jal ra,c0052d8a + c0049520: 23b090ef jal ra,c0052f5a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:812 js_free_rt(rt, s); - c0049354: 85a2 mv a1,s0 + c0049524: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:814 } - c0049356: 7402 ld s0,32(sp) - c0049358: 70a2 ld ra,40(sp) + c0049526: 7402 ld s0,32(sp) + c0049528: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:812 js_free_rt(rt, s); - c004935a: 8526 mv a0,s1 + c004952a: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:814 } - c004935c: 64e2 ld s1,24(sp) - c004935e: 6145 addi sp,sp,48 + c004952c: 64e2 ld s1,24(sp) + c004952e: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:812 js_free_rt(rt, s); - c0049360: 847bd06f j c0006ba6 + c0049530: f64bd06f j c0006c94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:810 fclose(s->f); - c0049364: 5850b0ef jal ra,c00550e8 - c0049368: b7f5 j c0049354 + c0049534: 5850b0ef jal ra,c00552b8 + c0049538: b7f5 j c0049524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:814 } - c004936a: 70a2 ld ra,40(sp) - c004936c: 7402 ld s0,32(sp) - c004936e: 64e2 ld s1,24(sp) - c0049370: 6145 addi sp,sp,48 - c0049372: 8082 ret + c004953a: 70a2 ld ra,40(sp) + c004953c: 7402 ld s0,32(sp) + c004953e: 64e2 ld s1,24(sp) + c0049540: 6145 addi sp,sp,48 + c0049542: 8082 ret -00000000c0049374 : +00000000c0049544 : js_os_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3109 { - c0049374: 7175 addi sp,sp,-144 - c0049376: e122 sd s0,128(sp) + c0049544: 7175 addi sp,sp,-144 + c0049546: e122 sd s0,128(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3113 ret = pipe(pipe_fds); - c0049378: 4581 li a1,0 + c0049548: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3109 { - c004937a: 842a mv s0,a0 + c004954a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3113 ret = pipe(pipe_fds); - c004937c: 0828 addi a0,sp,24 + c004954c: 0828 addi a0,sp,24 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3109 { - c004937e: e506 sd ra,136(sp) + c004954e: e506 sd ra,136(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3113 ret = pipe(pipe_fds); - c0049380: 221090ef jal ra,c0052da0 + c0049550: 221090ef jal ra,c0052f70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3114 if (ret < 0) - c0049384: 00055663 bgez a0,c0049390 + c0049554: 00055663 bgez a0,c0049560 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3115 return JS_NULL; - c0049388: f802 sd zero,48(sp) - c004938a: 4789 li a5,2 + c0049558: f802 sd zero,48(sp) + c004955a: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3123 return obj; - c004938c: fc3e sd a5,56(sp) - c004938e: a831 j c00493aa + c004955c: fc3e sd a5,56(sp) + c004955e: a831 j c004957a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3116 obj = JS_NewArray(ctx); - c0049390: 8522 mv a0,s0 - c0049392: c2dcd0ef jal ra,c0016fbe - c0049396: f02a sd a0,32(sp) - c0049398: f42e sd a1,40(sp) + c0049560: 8522 mv a0,s0 + c0049562: c2dcd0ef jal ra,c001718e + c0049566: f02a sd a0,32(sp) + c0049568: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3117 if (JS_IsException(obj)) - c004939a: 0005871b sext.w a4,a1 - c004939e: 4799 li a5,6 + c004956a: 0005871b sext.w a4,a1 + c004956e: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3116 obj = JS_NewArray(ctx); - c00493a0: 862e mv a2,a1 + c0049570: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3117 if (JS_IsException(obj)) - c00493a2: 00f71a63 bne a4,a5,c00493b6 + c0049572: 00f71a63 bne a4,a5,c0049586 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3118 return obj; - c00493a6: f82a sd a0,48(sp) - c00493a8: fc2e sd a1,56(sp) + c0049576: f82a sd a0,48(sp) + c0049578: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3124 (discriminator 1) } - c00493aa: 60aa ld ra,136(sp) - c00493ac: 640a ld s0,128(sp) - c00493ae: 7542 ld a0,48(sp) - c00493b0: 75e2 ld a1,56(sp) - c00493b2: 6149 addi sp,sp,144 - c00493b4: 8082 ret + c004957a: 60aa ld ra,136(sp) + c004957c: 640a ld s0,128(sp) + c004957e: 7542 ld a0,48(sp) + c0049580: 75e2 ld a1,56(sp) + c0049582: 6149 addi sp,sp,144 + c0049584: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3119 JS_DefinePropertyValueUint32(ctx, obj, 0, JS_NewInt32(ctx, pipe_fds[0]), - c00493b6: 47e2 lw a5,24(sp) + c0049586: 47e2 lw a5,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00493b8: f882 sd zero,112(sp) + c0049588: f882 sd zero,112(sp) js_os_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3119 - c00493ba: 85aa mv a1,a0 - c00493bc: d8be sw a5,112(sp) - c00493be: 7746 ld a4,112(sp) - c00493c0: 481d li a6,7 - c00493c2: 4781 li a5,0 - c00493c4: 4681 li a3,0 - c00493c6: 8522 mv a0,s0 - c00493c8: b0ce00ef jal ra,c00296d4 + c004958a: 85aa mv a1,a0 + c004958c: d8be sw a5,112(sp) + c004958e: 7746 ld a4,112(sp) + c0049590: 481d li a6,7 + c0049592: 4781 li a5,0 + c0049594: 4681 li a3,0 + c0049596: 8522 mv a0,s0 + c0049598: b0ce00ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3121 JS_DefinePropertyValueUint32(ctx, obj, 1, JS_NewInt32(ctx, pipe_fds[1]), - c00493cc: 47f2 lw a5,28(sp) + c004959c: 47f2 lw a5,28(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00493ce: f082 sd zero,96(sp) + c004959e: f082 sd zero,96(sp) js_os_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3121 - c00493d0: 7582 ld a1,32(sp) - c00493d2: d0be sw a5,96(sp) - c00493d4: 7706 ld a4,96(sp) - c00493d6: 7622 ld a2,40(sp) - c00493d8: 4781 li a5,0 - c00493da: 481d li a6,7 - c00493dc: 4685 li a3,1 - c00493de: 8522 mv a0,s0 - c00493e0: af4e00ef jal ra,c00296d4 + c00495a0: 7582 ld a1,32(sp) + c00495a2: d0be sw a5,96(sp) + c00495a4: 7706 ld a4,96(sp) + c00495a6: 7622 ld a2,40(sp) + c00495a8: 4781 li a5,0 + c00495aa: 481d li a6,7 + c00495ac: 4685 li a3,1 + c00495ae: 8522 mv a0,s0 + c00495b0: af4e00ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3123 return obj; - c00493e4: 7782 ld a5,32(sp) - c00493e6: f83e sd a5,48(sp) - c00493e8: 77a2 ld a5,40(sp) - c00493ea: b74d j c004938c + c00495b4: 7782 ld a5,32(sp) + c00495b6: f83e sd a5,48(sp) + c00495b8: 77a2 ld a5,40(sp) + c00495ba: b74d j c004955c -00000000c00493ec : +00000000c00495bc : make_obj_error(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2388 { - c00493ec: 7159 addi sp,sp,-112 - c00493ee: e8ca sd s2,80(sp) - c00493f0: f486 sd ra,104(sp) - c00493f2: f0a2 sd s0,96(sp) - c00493f4: eca6 sd s1,88(sp) - c00493f6: e02e sd a1,0(sp) - c00493f8: e432 sd a2,8(sp) + c00495bc: 7159 addi sp,sp,-112 + c00495be: e8ca sd s2,80(sp) + c00495c0: f486 sd ra,104(sp) + c00495c2: f0a2 sd s0,96(sp) + c00495c4: eca6 sd s1,88(sp) + c00495c6: e02e sd a1,0(sp) + c00495c8: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2390 if (JS_IsException(obj)) - c00493fa: 0006079b sext.w a5,a2 - c00493fe: 4919 li s2,6 - c0049400: 01279c63 bne a5,s2,c0049418 + c00495ca: 0006079b sext.w a5,a2 + c00495ce: 4919 li s2,6 + c00495d0: 01279c63 bne a5,s2,c00495e8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2391 return obj; - c0049404: f02e sd a1,32(sp) - c0049406: f432 sd a2,40(sp) + c00495d4: f02e sd a1,32(sp) + c00495d6: f432 sd a2,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2400 (discriminator 1) } - c0049408: 70a6 ld ra,104(sp) - c004940a: 7406 ld s0,96(sp) - c004940c: 7502 ld a0,32(sp) - c004940e: 75a2 ld a1,40(sp) - c0049410: 64e6 ld s1,88(sp) - c0049412: 6946 ld s2,80(sp) - c0049414: 6165 addi sp,sp,112 - c0049416: 8082 ret - c0049418: 842a mv s0,a0 - c004941a: 84b6 mv s1,a3 + c00495d8: 70a6 ld ra,104(sp) + c00495da: 7406 ld s0,96(sp) + c00495dc: 7502 ld a0,32(sp) + c00495de: 75a2 ld a1,40(sp) + c00495e0: 64e6 ld s1,88(sp) + c00495e2: 6946 ld s2,80(sp) + c00495e4: 6165 addi sp,sp,112 + c00495e6: 8082 ret + c00495e8: 842a mv s0,a0 + c00495ea: 84b6 mv s1,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2392 arr = JS_NewArray(ctx); - c004941c: ba3cd0ef jal ra,c0016fbe - c0049420: e82a sd a0,16(sp) - c0049422: ec2e sd a1,24(sp) + c00495ec: ba3cd0ef jal ra,c001718e + c00495f0: e82a sd a0,16(sp) + c00495f2: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2393 if (JS_IsException(arr)) - c0049424: 0005879b sext.w a5,a1 + c00495f4: 0005879b sext.w a5,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2392 arr = JS_NewArray(ctx); - c0049428: 862e mv a2,a1 + c00495f8: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2393 if (JS_IsException(arr)) - c004942a: 01279563 bne a5,s2,c0049434 + c00495fa: 01279563 bne a5,s2,c0049604 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2394 return JS_EXCEPTION; - c004942e: f002 sd zero,32(sp) + c00495fe: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2399 return arr; - c0049430: f43e sd a5,40(sp) - c0049432: bfd9 j c0049408 + c0049600: f43e sd a5,40(sp) + c0049602: bfd9 j c00495d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2395 JS_DefinePropertyValueUint32(ctx, arr, 0, obj, - c0049434: 6702 ld a4,0(sp) - c0049436: 67a2 ld a5,8(sp) - c0049438: 85aa mv a1,a0 - c004943a: 481d li a6,7 - c004943c: 4681 li a3,0 - c004943e: 8522 mv a0,s0 - c0049440: a94e00ef jal ra,c00296d4 + c0049604: 6702 ld a4,0(sp) + c0049606: 67a2 ld a5,8(sp) + c0049608: 85aa mv a1,a0 + c004960a: 481d li a6,7 + c004960c: 4681 li a3,0 + c004960e: 8522 mv a0,s0 + c0049610: a94e00ef jal ra,c00298a4 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049444: e082 sd zero,64(sp) - c0049446: c0a6 sw s1,64(sp) + c0049614: e082 sd zero,64(sp) + c0049616: c0a6 sw s1,64(sp) make_obj_error(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2397 JS_DefinePropertyValueUint32(ctx, arr, 1, JS_NewInt32(ctx, err), - c0049448: 6706 ld a4,64(sp) - c004944a: 65c2 ld a1,16(sp) - c004944c: 6662 ld a2,24(sp) - c004944e: 4781 li a5,0 - c0049450: 481d li a6,7 - c0049452: 4685 li a3,1 - c0049454: 8522 mv a0,s0 - c0049456: a7ee00ef jal ra,c00296d4 + c0049618: 6706 ld a4,64(sp) + c004961a: 65c2 ld a1,16(sp) + c004961c: 6662 ld a2,24(sp) + c004961e: 4781 li a5,0 + c0049620: 481d li a6,7 + c0049622: 4685 li a3,1 + c0049624: 8522 mv a0,s0 + c0049626: a7ee00ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2399 return arr; - c004945a: 67c2 ld a5,16(sp) - c004945c: f03e sd a5,32(sp) - c004945e: 67e2 ld a5,24(sp) - c0049460: bfc1 j c0049430 + c004962a: 67c2 ld a5,16(sp) + c004962c: f03e sd a5,32(sp) + c004962e: 67e2 ld a5,24(sp) + c0049630: bfc1 j c0049600 -00000000c0049462 : +00000000c0049632 : make_string_error(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2405 { - c0049462: 7139 addi sp,sp,-64 - c0049464: f822 sd s0,48(sp) - c0049466: fc06 sd ra,56(sp) - c0049468: 842a mv s0,a0 - c004946a: e432 sd a2,8(sp) + c0049632: 7139 addi sp,sp,-64 + c0049634: f822 sd s0,48(sp) + c0049636: fc06 sd ra,56(sp) + c0049638: 842a mv s0,a0 + c004963a: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2406 return make_obj_error(ctx, JS_NewString(ctx, buf), err); - c004946c: db6d00ef jal ra,c0019a22 - c0049470: 862e mv a2,a1 - c0049472: 85aa mv a1,a0 - c0049474: 8522 mv a0,s0 + c004963c: db6d00ef jal ra,c0019bf2 + c0049640: 862e mv a2,a1 + c0049642: 85aa mv a1,a0 + c0049644: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2407 } - c0049476: 7442 ld s0,48(sp) + c0049646: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2406 return make_obj_error(ctx, JS_NewString(ctx, buf), err); - c0049478: 66a2 ld a3,8(sp) + c0049648: 66a2 ld a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2407 } - c004947a: 70e2 ld ra,56(sp) - c004947c: 6121 addi sp,sp,64 + c004964a: 70e2 ld ra,56(sp) + c004964c: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2406 return make_obj_error(ctx, JS_NewString(ctx, buf), err); - c004947e: f6fff06f j c00493ec + c004964e: f6fff06f j c00495bc -00000000c0049482 : +00000000c0049652 : js_os_realpath(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2694 { - c0049482: 7129 addi sp,sp,-320 - c0049484: e02e sd a1,0(sp) - c0049486: e432 sd a2,8(sp) + c0049652: 7129 addi sp,sp,-320 + c0049654: e02e sd a1,0(sp) + c0049656: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2699 path = JS_ToCString(ctx, argv[0]); - c0049488: 630c ld a1,0(a4) - c004948a: 6710 ld a2,8(a4) + c0049658: 630c ld a1,0(a4) + c004965a: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2694 { - c004948c: fa22 sd s0,304(sp) - c004948e: fe06 sd ra,312(sp) - c0049490: f626 sd s1,296(sp) - c0049492: f24a sd s2,288(sp) - c0049494: 842a mv s0,a0 + c004965c: fa22 sd s0,304(sp) + c004965e: fe06 sd ra,312(sp) + c0049660: f626 sd s1,296(sp) + c0049662: f24a sd s2,288(sp) + c0049664: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2699 path = JS_ToCString(ctx, argv[0]); - c0049496: ebffe0ef jal ra,c0048354 + c0049666: ebffe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2700 if (!path) - c004949a: ed01 bnez a0,c00494b2 + c004966a: ed01 bnez a0,c0049682 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2701 return JS_EXCEPTION; - c004949c: 4799 li a5,6 - c004949e: e802 sd zero,16(sp) - c00494a0: ec3e sd a5,24(sp) + c004966c: 4799 li a5,6 + c004966e: e802 sd zero,16(sp) + c0049670: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2711 (discriminator 1) } - c00494a2: 70f2 ld ra,312(sp) - c00494a4: 7452 ld s0,304(sp) - c00494a6: 6542 ld a0,16(sp) - c00494a8: 65e2 ld a1,24(sp) - c00494aa: 74b2 ld s1,296(sp) - c00494ac: 7912 ld s2,288(sp) - c00494ae: 6131 addi sp,sp,320 - c00494b0: 8082 ret + c0049672: 70f2 ld ra,312(sp) + c0049674: 7452 ld s0,304(sp) + c0049676: 6542 ld a0,16(sp) + c0049678: 65e2 ld a1,24(sp) + c004967a: 74b2 ld s1,296(sp) + c004967c: 7912 ld s2,288(sp) + c004967e: 6131 addi sp,sp,320 + c0049680: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2702 res = realpath(path, buf); - c00494b2: 100c addi a1,sp,32 - c00494b4: 84aa mv s1,a0 - c00494b6: 3ac0c0ef jal ra,c0055862 - c00494ba: 892a mv s2,a0 + c0049682: 100c addi a1,sp,32 + c0049684: 84aa mv s1,a0 + c0049686: 3ac0c0ef jal ra,c0055a32 + c004968a: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2703 JS_FreeCString(ctx, path); - c00494bc: 85a6 mv a1,s1 - c00494be: 8522 mv a0,s0 - c00494c0: 9c1bf0ef jal ra,c0008e80 + c004968c: 85a6 mv a1,s1 + c004968e: 8522 mv a0,s0 + c0049690: 8dfbf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2708 err = 0; - c00494c4: 4601 li a2,0 + c0049694: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2704 if (!res) { - c00494c6: 00091763 bnez s2,c00494d4 + c0049696: 00091763 bnez s2,c00496a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2705 buf[0] = '\0'; - c00494ca: 02010023 sb zero,32(sp) + c004969a: 02010023 sb zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2706 err = errno; - c00494ce: 6060a0ef jal ra,c0053ad4 <__errno> - c00494d2: 4110 lw a2,0(a0) + c004969e: 6060a0ef jal ra,c0053ca4 <__errno> + c00496a2: 4110 lw a2,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2710 return make_string_error(ctx, buf, err); - c00494d4: 100c addi a1,sp,32 - c00494d6: 8522 mv a0,s0 - c00494d8: f8bff0ef jal ra,c0049462 - c00494dc: e82a sd a0,16(sp) - c00494de: ec2e sd a1,24(sp) - c00494e0: b7c9 j c00494a2 - -00000000c00494e2 : + c00496a4: 100c addi a1,sp,32 + c00496a6: 8522 mv a0,s0 + c00496a8: f8bff0ef jal ra,c0049632 + c00496ac: e82a sd a0,16(sp) + c00496ae: ec2e sd a1,24(sp) + c00496b0: b7c9 j c0049672 + +00000000c00496b2 : js_os_waitpid(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3081 { - c00494e2: 7135 addi sp,sp,-160 - c00494e4: e922 sd s0,144(sp) - c00494e6: e526 sd s1,136(sp) - c00494e8: ed06 sd ra,152(sp) - c00494ea: e432 sd a2,8(sp) + c00496b2: 7135 addi sp,sp,-160 + c00496b4: e922 sd s0,144(sp) + c00496b6: e526 sd s1,136(sp) + c00496b8: ed06 sd ra,152(sp) + c00496ba: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3085 if (JS_ToInt32(ctx, &pid, argv[0])) - c00494ec: 6714 ld a3,8(a4) - c00494ee: 6310 ld a2,0(a4) + c00496bc: 6714 ld a3,8(a4) + c00496be: 6310 ld a2,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3081 { - c00494f0: e02e sd a1,0(sp) + c00496c0: e02e sd a1,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3085 if (JS_ToInt32(ctx, &pid, argv[0])) - c00494f2: 084c addi a1,sp,20 + c00496c2: 084c addi a1,sp,20 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3081 { - c00494f4: 84aa mv s1,a0 - c00494f6: 843a mv s0,a4 + c00496c4: 84aa mv s1,a0 + c00496c6: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3085 if (JS_ToInt32(ctx, &pid, argv[0])) - c00494f8: e77d20ef jal ra,c001c36e - c00494fc: c509 beqz a0,c0049506 + c00496c8: e77d20ef jal ra,c001c53e + c00496cc: c509 beqz a0,c00496d6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3086 return JS_EXCEPTION; - c00494fe: f802 sd zero,48(sp) - c0049500: 4799 li a5,6 + c00496ce: f802 sd zero,48(sp) + c00496d0: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3103 return obj; - c0049502: fc3e sd a5,56(sp) - c0049504: a099 j c004954a + c00496d2: fc3e sd a5,56(sp) + c00496d4: a099 j c004971a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3087 if (JS_ToInt32(ctx, &options, argv[1])) - c0049506: 6810 ld a2,16(s0) - c0049508: 6c14 ld a3,24(s0) - c004950a: 086c addi a1,sp,28 - c004950c: 8526 mv a0,s1 - c004950e: e61d20ef jal ra,c001c36e - c0049512: f575 bnez a0,c00494fe + c00496d6: 6810 ld a2,16(s0) + c00496d8: 6c14 ld a3,24(s0) + c00496da: 086c addi a1,sp,28 + c00496dc: 8526 mv a0,s1 + c00496de: e61d20ef jal ra,c001c53e + c00496e2: f575 bnez a0,c00496ce /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3090 ret = waitpid(pid, &status, options); - c0049514: 4672 lw a2,28(sp) - c0049516: 4552 lw a0,20(sp) - c0049518: 082c addi a1,sp,24 - c004951a: 1160e0ef jal ra,c0057630 - c004951e: 842a mv s0,a0 + c00496e4: 4672 lw a2,28(sp) + c00496e6: 4552 lw a0,20(sp) + c00496e8: 082c addi a1,sp,24 + c00496ea: 1160e0ef jal ra,c0057800 + c00496ee: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3091 if (ret < 0) { - c0049520: 00055863 bgez a0,c0049530 + c00496f0: 00055863 bgez a0,c0049700 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3092 ret = -errno; - c0049524: 5b00a0ef jal ra,c0053ad4 <__errno> - c0049528: 4100 lw s0,0(a0) + c00496f4: 5b00a0ef jal ra,c0053ca4 <__errno> + c00496f8: 4100 lw s0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3093 status = 0; - c004952a: cc02 sw zero,24(sp) + c00496fa: cc02 sw zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3092 ret = -errno; - c004952c: 4080043b negw s0,s0 + c00496fc: 4080043b negw s0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3096 obj = JS_NewArray(ctx); - c0049530: 8526 mv a0,s1 - c0049532: a8dcd0ef jal ra,c0016fbe - c0049536: f02a sd a0,32(sp) - c0049538: f42e sd a1,40(sp) + c0049700: 8526 mv a0,s1 + c0049702: a8dcd0ef jal ra,c001718e + c0049706: f02a sd a0,32(sp) + c0049708: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3097 if (JS_IsException(obj)) - c004953a: 0005871b sext.w a4,a1 - c004953e: 4799 li a5,6 + c004970a: 0005871b sext.w a4,a1 + c004970e: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3096 obj = JS_NewArray(ctx); - c0049540: 862e mv a2,a1 + c0049710: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3097 if (JS_IsException(obj)) - c0049542: 00f71b63 bne a4,a5,c0049558 + c0049712: 00f71b63 bne a4,a5,c0049728 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3098 return obj; - c0049546: f82a sd a0,48(sp) - c0049548: fc2e sd a1,56(sp) + c0049716: f82a sd a0,48(sp) + c0049718: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3104 (discriminator 1) } - c004954a: 60ea ld ra,152(sp) - c004954c: 644a ld s0,144(sp) - c004954e: 7542 ld a0,48(sp) - c0049550: 75e2 ld a1,56(sp) - c0049552: 64aa ld s1,136(sp) - c0049554: 610d addi sp,sp,160 - c0049556: 8082 ret + c004971a: 60ea ld ra,152(sp) + c004971c: 644a ld s0,144(sp) + c004971e: 7542 ld a0,48(sp) + c0049720: 75e2 ld a1,56(sp) + c0049722: 64aa ld s1,136(sp) + c0049724: 610d addi sp,sp,160 + c0049726: 8082 ret JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049558: f882 sd zero,112(sp) - c004955a: d8a2 sw s0,112(sp) + c0049728: f882 sd zero,112(sp) + c004972a: d8a2 sw s0,112(sp) js_os_waitpid(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3099 JS_DefinePropertyValueUint32(ctx, obj, 0, JS_NewInt32(ctx, ret), - c004955c: 7746 ld a4,112(sp) - c004955e: 85aa mv a1,a0 - c0049560: 481d li a6,7 - c0049562: 4781 li a5,0 - c0049564: 4681 li a3,0 - c0049566: 8526 mv a0,s1 - c0049568: 96ce00ef jal ra,c00296d4 + c004972c: 7746 ld a4,112(sp) + c004972e: 85aa mv a1,a0 + c0049730: 481d li a6,7 + c0049732: 4781 li a5,0 + c0049734: 4681 li a3,0 + c0049736: 8526 mv a0,s1 + c0049738: 96ce00ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3101 JS_DefinePropertyValueUint32(ctx, obj, 1, JS_NewInt32(ctx, status), - c004956c: 47e2 lw a5,24(sp) + c004973c: 47e2 lw a5,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004956e: f082 sd zero,96(sp) + c004973e: f082 sd zero,96(sp) js_os_waitpid(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3101 - c0049570: 7582 ld a1,32(sp) - c0049572: d0be sw a5,96(sp) - c0049574: 7706 ld a4,96(sp) - c0049576: 7622 ld a2,40(sp) - c0049578: 4781 li a5,0 - c004957a: 481d li a6,7 - c004957c: 4685 li a3,1 - c004957e: 8526 mv a0,s1 - c0049580: 954e00ef jal ra,c00296d4 + c0049740: 7582 ld a1,32(sp) + c0049742: d0be sw a5,96(sp) + c0049744: 7706 ld a4,96(sp) + c0049746: 7622 ld a2,40(sp) + c0049748: 4781 li a5,0 + c004974a: 481d li a6,7 + c004974c: 4685 li a3,1 + c004974e: 8526 mv a0,s1 + c0049750: 954e00ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3103 return obj; - c0049584: 7782 ld a5,32(sp) - c0049586: f83e sd a5,48(sp) - c0049588: 77a2 ld a5,40(sp) - c004958a: bfa5 j c0049502 + c0049754: 7782 ld a5,32(sp) + c0049756: f83e sd a5,48(sp) + c0049758: 77a2 ld a5,40(sp) + c004975a: bfa5 j c00496d2 -00000000c004958c : +00000000c004975c : js_os_getpid(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3074 { - c004958c: 7139 addi sp,sp,-64 - c004958e: fc06 sd ra,56(sp) + c004975c: 7139 addi sp,sp,-64 + c004975e: fc06 sd ra,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3075 return JS_NewInt32(ctx, getpid()); - c0049590: 5e90d0ef jal ra,c0057378 + c0049760: 5e90d0ef jal ra,c0057548 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3076 } - c0049594: 70e2 ld ra,56(sp) + c0049764: 70e2 ld ra,56(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049596: f002 sd zero,32(sp) - c0049598: d02a sw a0,32(sp) + c0049766: f002 sd zero,32(sp) + c0049768: d02a sw a0,32(sp) js_os_getpid(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3076 - c004959a: 7502 ld a0,32(sp) - c004959c: 4581 li a1,0 - c004959e: 6121 addi sp,sp,64 - c00495a0: 8082 ret + c004976a: 7502 ld a0,32(sp) + c004976c: 4581 li a1,0 + c004976e: 6121 addi sp,sp,64 + c0049770: 8082 ret -00000000c00495a2 : +00000000c0049772 : js_os_readlink(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2737 { - c00495a2: 714d addi sp,sp,-336 - c00495a4: e82e sd a1,16(sp) - c00495a6: ec32 sd a2,24(sp) + c0049772: 714d addi sp,sp,-336 + c0049774: e82e sd a1,16(sp) + c0049776: ec32 sd a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2743 path = JS_ToCString(ctx, argv[0]); - c00495a8: 630c ld a1,0(a4) - c00495aa: 6710 ld a2,8(a4) + c0049778: 630c ld a1,0(a4) + c004977a: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2737 { - c00495ac: e2a2 sd s0,320(sp) - c00495ae: e686 sd ra,328(sp) - c00495b0: fe26 sd s1,312(sp) - c00495b2: 842a mv s0,a0 + c004977c: e2a2 sd s0,320(sp) + c004977e: e686 sd ra,328(sp) + c0049780: fe26 sd s1,312(sp) + c0049782: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2743 path = JS_ToCString(ctx, argv[0]); - c00495b4: da1fe0ef jal ra,c0048354 + c0049784: da1fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2744 if (!path) - c00495b8: e919 bnez a0,c00495ce + c0049788: e919 bnez a0,c004979e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2745 return JS_EXCEPTION; - c00495ba: 4799 li a5,6 - c00495bc: f002 sd zero,32(sp) - c00495be: f43e sd a5,40(sp) + c004978a: 4799 li a5,6 + c004978c: f002 sd zero,32(sp) + c004978e: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2756 (discriminator 1) } - c00495c0: 60b6 ld ra,328(sp) - c00495c2: 6416 ld s0,320(sp) - c00495c4: 7502 ld a0,32(sp) - c00495c6: 75a2 ld a1,40(sp) - c00495c8: 74f2 ld s1,312(sp) - c00495ca: 6171 addi sp,sp,336 - c00495cc: 8082 ret + c0049790: 60b6 ld ra,328(sp) + c0049792: 6416 ld s0,320(sp) + c0049794: 7502 ld a0,32(sp) + c0049796: 75a2 ld a1,40(sp) + c0049798: 74f2 ld s1,312(sp) + c004979a: 6171 addi sp,sp,336 + c004979c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2746 res = readlink(path, buf, sizeof(buf) - 1); - c00495ce: 0ff00613 li a2,255 - c00495d2: 180c addi a1,sp,48 - c00495d4: 84aa mv s1,a0 - c00495d6: 7f6090ef jal ra,c0052dcc + c004979e: 0ff00613 li a2,255 + c00497a2: 180c addi a1,sp,48 + c00497a4: 84aa mv s1,a0 + c00497a6: 7f6090ef jal ra,c0052f9c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2747 if (res < 0) { - c00495da: 02055463 bgez a0,c0049602 + c00497aa: 02055463 bgez a0,c00497d2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2748 buf[0] = '\0'; - c00495de: 02010823 sb zero,48(sp) + c00497ae: 02010823 sb zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2749 err = errno; - c00495e2: 4f20a0ef jal ra,c0053ad4 <__errno> - c00495e6: 4110 lw a2,0(a0) + c00497b2: 4f20a0ef jal ra,c0053ca4 <__errno> + c00497b6: 4110 lw a2,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2754 JS_FreeCString(ctx, path); - c00495e8: 85a6 mv a1,s1 - c00495ea: 8522 mv a0,s0 - c00495ec: e432 sd a2,8(sp) - c00495ee: 893bf0ef jal ra,c0008e80 + c00497b8: 85a6 mv a1,s1 + c00497ba: 8522 mv a0,s0 + c00497bc: e432 sd a2,8(sp) + c00497be: fb0bf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2755 return make_string_error(ctx, buf, err); - c00495f2: 6622 ld a2,8(sp) - c00495f4: 180c addi a1,sp,48 - c00495f6: 8522 mv a0,s0 - c00495f8: e6bff0ef jal ra,c0049462 - c00495fc: f02a sd a0,32(sp) - c00495fe: f42e sd a1,40(sp) - c0049600: b7c1 j c00495c0 + c00497c2: 6622 ld a2,8(sp) + c00497c4: 180c addi a1,sp,48 + c00497c6: 8522 mv a0,s0 + c00497c8: e6bff0ef jal ra,c0049632 + c00497cc: f02a sd a0,32(sp) + c00497ce: f42e sd a1,40(sp) + c00497d0: b7c1 j c0049790 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2751 buf[res] = '\0'; - c0049602: 1a1c addi a5,sp,304 - c0049604: 97aa add a5,a5,a0 - c0049606: f0078023 sb zero,-256(a5) + c00497d2: 1a1c addi a5,sp,304 + c00497d4: 97aa add a5,a5,a0 + c00497d6: f0078023 sb zero,-256(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2752 err = 0; - c004960a: 4601 li a2,0 - c004960c: bff1 j c00495e8 + c00497da: 4601 li a2,0 + c00497dc: bff1 j c00497b8 -00000000c004960e : +00000000c00497de : js_os_readdir(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2467 { - c004960e: 7159 addi sp,sp,-112 - c0049610: f0a2 sd s0,96(sp) - c0049612: f486 sd ra,104(sp) - c0049614: eca6 sd s1,88(sp) - c0049616: e8ca sd s2,80(sp) - c0049618: e4ce sd s3,72(sp) - c004961a: e02e sd a1,0(sp) - c004961c: e432 sd a2,8(sp) + c00497de: 7159 addi sp,sp,-112 + c00497e0: f0a2 sd s0,96(sp) + c00497e2: f486 sd ra,104(sp) + c00497e4: eca6 sd s1,88(sp) + c00497e6: e8ca sd s2,80(sp) + c00497e8: e4ce sd s3,72(sp) + c00497ea: e02e sd a1,0(sp) + c00497ec: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2475 path = JS_ToCString(ctx, argv[0]); - c004961e: 630c ld a1,0(a4) - c0049620: 6710 ld a2,8(a4) + c00497ee: 630c ld a1,0(a4) + c00497f0: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2467 { - c0049622: 842a mv s0,a0 + c00497f2: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2475 path = JS_ToCString(ctx, argv[0]); - c0049624: d31fe0ef jal ra,c0048354 + c00497f4: d31fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2476 if (!path) - c0049628: ed09 bnez a0,c0049642 + c00497f8: ed09 bnez a0,c0049812 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2477 return JS_EXCEPTION; - c004962a: 4799 li a5,6 - c004962c: f002 sd zero,32(sp) - c004962e: f43e sd a5,40(sp) + c00497fa: 4799 li a5,6 + c00497fc: f002 sd zero,32(sp) + c00497fe: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2506 (discriminator 1) } - c0049630: 70a6 ld ra,104(sp) - c0049632: 7406 ld s0,96(sp) - c0049634: 7502 ld a0,32(sp) - c0049636: 75a2 ld a1,40(sp) - c0049638: 64e6 ld s1,88(sp) - c004963a: 6946 ld s2,80(sp) - c004963c: 69a6 ld s3,72(sp) - c004963e: 6165 addi sp,sp,112 - c0049640: 8082 ret - c0049642: 892a mv s2,a0 + c0049800: 70a6 ld ra,104(sp) + c0049802: 7406 ld s0,96(sp) + c0049804: 7502 ld a0,32(sp) + c0049806: 75a2 ld a1,40(sp) + c0049808: 64e6 ld s1,88(sp) + c004980a: 6946 ld s2,80(sp) + c004980c: 69a6 ld s3,72(sp) + c004980e: 6165 addi sp,sp,112 + c0049810: 8082 ret + c0049812: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2478 obj = JS_NewArray(ctx); - c0049644: 8522 mv a0,s0 - c0049646: 979cd0ef jal ra,c0016fbe - c004964a: e82a sd a0,16(sp) - c004964c: ec2e sd a1,24(sp) + c0049814: 8522 mv a0,s0 + c0049816: 979cd0ef jal ra,c001718e + c004981a: e82a sd a0,16(sp) + c004981c: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2479 if (JS_IsException(obj)) { - c004964e: 0005849b sext.w s1,a1 - c0049652: 4799 li a5,6 - c0049654: 00f49963 bne s1,a5,c0049666 + c004981e: 0005849b sext.w s1,a1 + c0049822: 4799 li a5,6 + c0049824: 00f49963 bne s1,a5,c0049836 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2480 JS_FreeCString(ctx, path); - c0049658: 85ca mv a1,s2 - c004965a: 8522 mv a0,s0 - c004965c: 825bf0ef jal ra,c0008e80 + c0049828: 85ca mv a1,s2 + c004982a: 8522 mv a0,s0 + c004982c: f42bf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2481 return JS_EXCEPTION; - c0049660: f002 sd zero,32(sp) - c0049662: f426 sd s1,40(sp) - c0049664: b7f1 j c0049630 + c0049830: f002 sd zero,32(sp) + c0049832: f426 sd s1,40(sp) + c0049834: b7f1 j c0049800 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2483 f = opendir(path); - c0049666: 854a mv a0,s2 - c0049668: 3be0a0ef jal ra,c0053a26 - c004966c: 84aa mv s1,a0 + c0049836: 854a mv a0,s2 + c0049838: 3be0a0ef jal ra,c0053bf6 + c004983c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2487 err = 0; - c004966e: 4981 li s3,0 + c004983e: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2484 if (!f) - c0049670: e509 bnez a0,c004967a + c0049840: e509 bnez a0,c004984a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2485 err = errno; - c0049672: 4620a0ef jal ra,c0053ad4 <__errno> - c0049676: 00052983 lw s3,0(a0) + c0049842: 4620a0ef jal ra,c0053ca4 <__errno> + c0049846: 00052983 lw s3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2488 JS_FreeCString(ctx, path); - c004967a: 85ca mv a1,s2 - c004967c: 8522 mv a0,s0 - c004967e: 803bf0ef jal ra,c0008e80 + c004984a: 85ca mv a1,s2 + c004984c: 8522 mv a0,s0 + c004984e: f20bf0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2489 if (!f) - c0049682: c08d beqz s1,c00496a4 + c0049852: c08d beqz s1,c0049874 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2491 len = 0; - c0049684: 4901 li s2,0 + c0049854: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2493 errno = 0; - c0049686: 44e0a0ef jal ra,c0053ad4 <__errno> - c004968a: 00052023 sw zero,0(a0) + c0049856: 44e0a0ef jal ra,c0053ca4 <__errno> + c004985a: 00052023 sw zero,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2494 d = readdir(f); - c004968e: 8526 mv a0,s1 - c0049690: 4100a0ef jal ra,c0053aa0 + c004985e: 8526 mv a0,s1 + c0049860: 4100a0ef jal ra,c0053c70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2495 if (!d) { - c0049694: e505 bnez a0,c00496bc + c0049864: e505 bnez a0,c004988c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2496 err = errno; - c0049696: 43e0a0ef jal ra,c0053ad4 <__errno> - c004969a: 00052983 lw s3,0(a0) + c0049866: 43e0a0ef jal ra,c0053ca4 <__errno> + c004986a: 00052983 lw s3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2503 closedir(f); - c004969e: 8526 mv a0,s1 - c00496a0: 3ce0a0ef jal ra,c0053a6e + c004986e: 8526 mv a0,s1 + c0049870: 3ce0a0ef jal ra,c0053c3e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2505 return make_obj_error(ctx, obj, err); - c00496a4: 8522 mv a0,s0 + c0049874: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2506 } - c00496a6: 7406 ld s0,96(sp) + c0049876: 7406 ld s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2505 return make_obj_error(ctx, obj, err); - c00496a8: 65c2 ld a1,16(sp) - c00496aa: 6662 ld a2,24(sp) + c0049878: 65c2 ld a1,16(sp) + c004987a: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2506 } - c00496ac: 70a6 ld ra,104(sp) - c00496ae: 64e6 ld s1,88(sp) - c00496b0: 6946 ld s2,80(sp) + c004987c: 70a6 ld ra,104(sp) + c004987e: 64e6 ld s1,88(sp) + c0049880: 6946 ld s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2505 return make_obj_error(ctx, obj, err); - c00496b2: 86ce mv a3,s3 + c0049882: 86ce mv a3,s3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2506 } - c00496b4: 69a6 ld s3,72(sp) - c00496b6: 6165 addi sp,sp,112 + c0049884: 69a6 ld s3,72(sp) + c0049886: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2505 return make_obj_error(ctx, obj, err); - c00496b8: d35ff06f j c00493ec + c0049888: d35ff06f j c00495bc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2499 JS_DefinePropertyValueUint32(ctx, obj, len++, - c00496bc: 00150593 addi a1,a0,1 - c00496c0: 8522 mv a0,s0 - c00496c2: b60d00ef jal ra,c0019a22 - c00496c6: 87ae mv a5,a1 - c00496c8: fc2e sd a1,56(sp) - c00496ca: 6662 ld a2,24(sp) - c00496cc: 65c2 ld a1,16(sp) - c00496ce: 872a mv a4,a0 - c00496d0: f82a sd a0,48(sp) - c00496d2: 86ca mv a3,s2 - c00496d4: 0019099b addiw s3,s2,1 - c00496d8: 481d li a6,7 - c00496da: 8522 mv a0,s0 - c00496dc: ff9df0ef jal ra,c00296d4 - c00496e0: 894e mv s2,s3 + c004988c: 00150593 addi a1,a0,1 + c0049890: 8522 mv a0,s0 + c0049892: b60d00ef jal ra,c0019bf2 + c0049896: 87ae mv a5,a1 + c0049898: fc2e sd a1,56(sp) + c004989a: 6662 ld a2,24(sp) + c004989c: 65c2 ld a1,16(sp) + c004989e: 872a mv a4,a0 + c00498a0: f82a sd a0,48(sp) + c00498a2: 86ca mv a3,s2 + c00498a4: 0019099b addiw s3,s2,1 + c00498a8: 481d li a6,7 + c00498aa: 8522 mv a0,s0 + c00498ac: ff9df0ef jal ra,c00298a4 + c00498b0: 894e mv s2,s3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2493 errno = 0; - c00496e2: b755 j c0049686 + c00498b2: b755 j c0049856 -00000000c00496e4 : +00000000c00498b4 : js_os_getcwd(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2412 { - c00496e4: 7169 addi sp,sp,-304 - c00496e6: f222 sd s0,288(sp) - c00496e8: e02e sd a1,0(sp) - c00496ea: 842a mv s0,a0 + c00498b4: 7169 addi sp,sp,-304 + c00498b6: f222 sd s0,288(sp) + c00498b8: e02e sd a1,0(sp) + c00498ba: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2416 if (!getcwd(buf, sizeof(buf))) { - c00496ec: 10000593 li a1,256 - c00496f0: 1008 addi a0,sp,32 + c00498bc: 10000593 li a1,256 + c00498c0: 1008 addi a0,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2412 { - c00496f2: e432 sd a2,8(sp) - c00496f4: f606 sd ra,296(sp) + c00498c2: e432 sd a2,8(sp) + c00498c4: f606 sd ra,296(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2416 if (!getcwd(buf, sizeof(buf))) { - c00496f6: 7820d0ef jal ra,c0056e78 + c00498c6: 7820d0ef jal ra,c0057048 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2420 err = 0; - c00496fa: 4601 li a2,0 + c00498ca: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2416 if (!getcwd(buf, sizeof(buf))) { - c00496fc: e511 bnez a0,c0049708 + c00498cc: e511 bnez a0,c00498d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2417 buf[0] = '\0'; - c00496fe: 02010023 sb zero,32(sp) + c00498ce: 02010023 sb zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2418 err = errno; - c0049702: 3d20a0ef jal ra,c0053ad4 <__errno> - c0049706: 4110 lw a2,0(a0) + c00498d2: 3d20a0ef jal ra,c0053ca4 <__errno> + c00498d6: 4110 lw a2,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2422 return make_string_error(ctx, buf, err); - c0049708: 100c addi a1,sp,32 - c004970a: 8522 mv a0,s0 - c004970c: d57ff0ef jal ra,c0049462 + c00498d8: 100c addi a1,sp,32 + c00498da: 8522 mv a0,s0 + c00498dc: d57ff0ef jal ra,c0049632 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2423 } - c0049710: 70b2 ld ra,296(sp) - c0049712: 7412 ld s0,288(sp) - c0049714: 6155 addi sp,sp,304 - c0049716: 8082 ret + c00498e0: 70b2 ld ra,296(sp) + c00498e2: 7412 ld s0,288(sp) + c00498e4: 6155 addi sp,sp,304 + c00498e6: 8082 ret -00000000c0049718 : +00000000c00498e8 : get_time_ms(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1990 { - c0049718: 1101 addi sp,sp,-32 + c00498e8: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1992 gettimeofday(&tv, NULL); - c004971a: 850a mv a0,sp - c004971c: 4581 li a1,0 + c00498ea: 850a mv a0,sp + c00498ec: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1990 { - c004971e: ec06 sd ra,24(sp) + c00498ee: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1992 gettimeofday(&tv, NULL); - c0049720: 3880d0ef jal ra,c0056aa8 + c00498f0: 3880d0ef jal ra,c0056c78 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1993 return (int64_t)tv.tv_sec * 1000 + (tv.tv_usec / 1000); - c0049724: 67a2 ld a5,8(sp) - c0049726: 3e800713 li a4,1000 - c004972a: 00016503 lwu a0,0(sp) - c004972e: 02e7c7b3 div a5,a5,a4 + c00498f4: 67a2 ld a5,8(sp) + c00498f6: 3e800713 li a4,1000 + c00498fa: 00016503 lwu a0,0(sp) + c00498fe: 02e7c7b3 div a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1994 } - c0049732: 60e2 ld ra,24(sp) - c0049734: 6105 addi sp,sp,32 + c0049902: 60e2 ld ra,24(sp) + c0049904: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1993 return (int64_t)tv.tv_sec * 1000 + (tv.tv_usec / 1000); - c0049736: 02e50533 mul a0,a0,a4 + c0049906: 02e50533 mul a0,a0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1994 } - c004973a: 953e add a0,a0,a5 - c004973c: 8082 ret + c004990a: 953e add a0,a0,a5 + c004990c: 8082 ret -00000000c004973e : +00000000c004990e : js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2006 { - c004973e: 7179 addi sp,sp,-48 + c004990e: 7179 addi sp,sp,-48 get_time_ns(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1999 gettimeofday(&tv, NULL); - c0049740: 4581 li a1,0 - c0049742: 0808 addi a0,sp,16 + c0049910: 4581 li a1,0 + c0049912: 0808 addi a0,sp,16 js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2006 { - c0049744: f406 sd ra,40(sp) + c0049914: f406 sd ra,40(sp) get_time_ns(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1999 gettimeofday(&tv, NULL); - c0049746: 3620d0ef jal ra,c0056aa8 + c0049916: 3620d0ef jal ra,c0056c78 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2000 return (int64_t)tv.tv_sec * 1000000000 + (tv.tv_usec * 1000); - c004974a: 01016783 lwu a5,16(sp) - c004974e: 66e2 ld a3,24(sp) - c0049750: 3b9ad737 lui a4,0x3b9ad - c0049754: a0070713 addi a4,a4,-1536 # 3b9aca00 <__clzdi2-0x84653600> - c0049758: 02e787b3 mul a5,a5,a4 - c004975c: 3e800713 li a4,1000 - c0049760: 02d70733 mul a4,a4,a3 - c0049764: 97ba add a5,a5,a4 + c004991a: 01016783 lwu a5,16(sp) + c004991e: 66e2 ld a3,24(sp) + c0049920: 3b9ad737 lui a4,0x3b9ad + c0049924: a0070713 addi a4,a4,-1536 # 3b9aca00 <__clzdi2-0x84653600> + c0049928: 02e787b3 mul a5,a5,a4 + c004992c: 3e800713 li a4,1000 + c0049930: 02d70733 mul a4,a4,a3 + c0049934: 97ba add a5,a5,a4 js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2007 return JS_NewFloat64(ctx, (double)get_time_ns() / 1e6); - c0049766: d227f7d3 fcvt.d.l fa5,a5 - c004976a: 0002b797 auipc a5,0x2b - c004976e: 1067b707 fld fa4,262(a5) # c0074870 <_erodata+0xf0> - c0049772: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c0049936: d227f7d3 fcvt.d.l fa5,a5 + c004993a: 0002b797 auipc a5,0x2b + c004993e: 1967b707 fld fa4,406(a5) # c0074ad0 <_erodata+0xf0> + c0049942: 1ae7f7d3 fdiv.d fa5,fa5,fa4 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0049776: c2079653 fcvt.w.d a2,fa5,rtz + c0049946: c2079653 fcvt.w.d a2,fa5,rtz js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2007 - c004977a: e20787d3 fmv.x.d a5,fa5 + c004994a: e20787d3 fmv.x.d a5,fa5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c004977e: d20607d3 fcvt.d.w fa5,a2 + c004994e: d20607d3 fcvt.d.w fa5,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:557 val = (int32_t)d; - c0049782: 0006071b sext.w a4,a2 + c0049952: 0006071b sext.w a4,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c0049786: e2078653 fmv.x.d a2,fa5 - c004978a: 00c79963 bne a5,a2,c004979c + c0049956: e2078653 fmv.x.d a2,fa5 + c004995a: 00c79963 bne a5,a2,c004996c /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:562 v = JS_MKVAL(JS_TAG_INT, val); - c004978e: ca02 sw zero,20(sp) - c0049790: 4581 li a1,0 + c004995e: ca02 sw zero,20(sp) + c0049960: 4581 li a1,0 js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2008 } - c0049792: 70a2 ld ra,40(sp) + c0049962: 70a2 ld ra,40(sp) JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:566 return v; - c0049794: c83a sw a4,16(sp) + c0049964: c83a sw a4,16(sp) js_os_now(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2008 - c0049796: 6542 ld a0,16(sp) - c0049798: 6145 addi sp,sp,48 - c004979a: 8082 ret + c0049966: 6542 ld a0,16(sp) + c0049968: 6145 addi sp,sp,48 + c004996a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004979c: e83e sd a5,16(sp) - c004979e: 0007871b sext.w a4,a5 + c004996c: e83e sd a5,16(sp) + c004996e: 0007871b sext.w a4,a5 JS_NewFloat64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:561 if (u.u == t.u) { - c00497a2: 459d li a1,7 - c00497a4: b7fd j c0049792 + c0049972: 459d li a1,7 + c0049974: b7fd j c0049962 -00000000c00497a6 : +00000000c0049976 : JS_FreeValueRT(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:657 { - c00497a6: 1141 addi sp,sp,-16 - c00497a8: e02e sd a1,0(sp) - c00497aa: e432 sd a2,8(sp) + c0049976: 1141 addi sp,sp,-16 + c0049978: e02e sd a1,0(sp) + c004997a: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:658 if (JS_VALUE_HAS_REF_COUNT(v)) { - c00497ac: 0006079b sext.w a5,a2 - c00497b0: 5751 li a4,-12 - c00497b2: 00f77b63 bgeu a4,a5,c00497c8 + c004997c: 0006079b sext.w a5,a2 + c0049980: 5751 li a4,-12 + c0049982: 00f77b63 bgeu a4,a5,c0049998 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:660 if (--p->ref_count <= 0) { - c00497b6: 4198 lw a4,0(a1) - c00497b8: fff7069b addiw a3,a4,-1 - c00497bc: c194 sw a3,0(a1) - c00497be: 00d04563 bgtz a3,c00497c8 + c0049986: 4198 lw a4,0(a1) + c0049988: fff7069b addiw a3,a4,-1 + c004998c: c194 sw a3,0(a1) + c004998e: 00d04563 bgtz a3,c0049998 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:664 } - c00497c2: 0141 addi sp,sp,16 + c0049992: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:661 __JS_FreeValueRT(rt, v); - c00497c4: e37be06f j c00085fa <__JS_FreeValueRT> + c0049994: d55be06f j c00086e8 <__JS_FreeValueRT> /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:664 } - c00497c8: 0141 addi sp,sp,16 - c00497ca: 8082 ret + c0049998: 0141 addi sp,sp,16 + c004999a: 8082 ret -00000000c00497cc : +00000000c004999c : free_timer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2011 { - c00497cc: 1101 addi sp,sp,-32 - c00497ce: e426 sd s1,8(sp) - c00497d0: 84aa mv s1,a0 + c004999c: 1101 addi sp,sp,-32 + c004999e: e426 sd s1,8(sp) + c00499a0: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2012 list_del(&th->link); - c00497d2: 852e mv a0,a1 + c00499a2: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2011 { - c00497d4: ec06 sd ra,24(sp) - c00497d6: e822 sd s0,16(sp) - c00497d8: 842e mv s0,a1 + c00499a4: ec06 sd ra,24(sp) + c00499a6: e822 sd s0,16(sp) + c00499a8: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2012 list_del(&th->link); - c00497da: ae3fe0ef jal ra,c00482bc + c00499aa: ae3fe0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2013 JS_FreeValueRT(rt, th->func); - c00497de: 700c ld a1,32(s0) - c00497e0: 7410 ld a2,40(s0) - c00497e2: 8526 mv a0,s1 - c00497e4: fc3ff0ef jal ra,c00497a6 + c00499ae: 700c ld a1,32(s0) + c00499b0: 7410 ld a2,40(s0) + c00499b2: 8526 mv a0,s1 + c00499b4: fc3ff0ef jal ra,c0049976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2014 js_free_rt(rt, th); - c00497e8: 85a2 mv a1,s0 + c00499b8: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2015 } - c00497ea: 6442 ld s0,16(sp) - c00497ec: 60e2 ld ra,24(sp) + c00499ba: 6442 ld s0,16(sp) + c00499bc: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2014 js_free_rt(rt, th); - c00497ee: 8526 mv a0,s1 + c00499be: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2015 } - c00497f0: 64a2 ld s1,8(sp) - c00497f2: 6105 addi sp,sp,32 + c00499c0: 64a2 ld s1,8(sp) + c00499c2: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2014 js_free_rt(rt, th); - c00497f4: bb2bd06f j c0006ba6 + c00499c4: ad0bd06f j c0006c94 -00000000c00497f8 : +00000000c00499c8 : js_os_clearTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2060 { - c00497f8: 711d addi sp,sp,-96 - c00497fa: ec86 sd ra,88(sp) - c00497fc: e8a2 sd s0,80(sp) - c00497fe: e4a6 sd s1,72(sp) - c0049800: e0ca sd s2,64(sp) - c0049802: 84ba mv s1,a4 - c0049804: fc4e sd s3,56(sp) - c0049806: e02e sd a1,0(sp) - c0049808: e432 sd a2,8(sp) - c004980a: 89aa mv s3,a0 + c00499c8: 711d addi sp,sp,-96 + c00499ca: ec86 sd ra,88(sp) + c00499cc: e8a2 sd s0,80(sp) + c00499ce: e4a6 sd s1,72(sp) + c00499d0: e0ca sd s2,64(sp) + c00499d2: 84ba mv s1,a4 + c00499d4: fc4e sd s3,56(sp) + c00499d6: e02e sd a1,0(sp) + c00499d8: e432 sd a2,8(sp) + c00499da: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2061 JSRuntime *rt = JS_GetRuntime(ctx); - c004980c: f12bd0ef jal ra,c0006f1e - c0049810: 892a mv s2,a0 + c00499dc: e30bd0ef jal ra,c000700c + c00499e0: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2062 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c0049812: e74bd0ef jal ra,c0006e86 + c00499e2: d92bd0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2066 if (JS_ToInt32(ctx, &timer_id, argv[0])) - c0049816: 6090 ld a2,0(s1) - c0049818: 6494 ld a3,8(s1) + c00499e6: 6090 ld a2,0(s1) + c00499e8: 6494 ld a3,8(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2062 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004981a: 842a mv s0,a0 + c00499ea: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2066 if (JS_ToInt32(ctx, &timer_id, argv[0])) - c004981c: 086c addi a1,sp,28 - c004981e: 854e mv a0,s3 - c0049820: b4fd20ef jal ra,c001c36e - c0049824: cd09 beqz a0,c004983e + c00499ec: 086c addi a1,sp,28 + c00499ee: 854e mv a0,s3 + c00499f0: b4fd20ef jal ra,c001c53e + c00499f4: cd09 beqz a0,c0049a0e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2067 return JS_EXCEPTION; - c0049826: f002 sd zero,32(sp) - c0049828: 4799 li a5,6 + c00499f6: f002 sd zero,32(sp) + c00499f8: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2073 } - c004982a: 60e6 ld ra,88(sp) - c004982c: 6446 ld s0,80(sp) + c00499fa: 60e6 ld ra,88(sp) + c00499fc: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2072 return JS_UNDEFINED; - c004982e: f43e sd a5,40(sp) + c00499fe: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2073 } - c0049830: 7502 ld a0,32(sp) - c0049832: 75a2 ld a1,40(sp) - c0049834: 64a6 ld s1,72(sp) - c0049836: 6906 ld s2,64(sp) - c0049838: 79e2 ld s3,56(sp) - c004983a: 6125 addi sp,sp,96 - c004983c: 8082 ret + c0049a00: 7502 ld a0,32(sp) + c0049a02: 75a2 ld a1,40(sp) + c0049a04: 64a6 ld s1,72(sp) + c0049a06: 6906 ld s2,64(sp) + c0049a08: 79e2 ld s3,56(sp) + c0049a0a: 6125 addi sp,sp,96 + c0049a0c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2068 th = find_timer_by_id(ts, timer_id); - c004983e: 47f2 lw a5,28(sp) + c0049a0e: 47f2 lw a5,28(sp) find_timer_by_id(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2048 if (timer_id <= 0) - c0049840: 00f05763 blez a5,c004984e + c0049a10: 00f05763 blez a5,c0049a1e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2050 list_for_each(el, &ts->os_timers) { - c0049844: 740c ld a1,40(s0) - c0049846: 02040413 addi s0,s0,32 - c004984a: 00859563 bne a1,s0,c0049854 + c0049a14: 740c ld a1,40(s0) + c0049a16: 02040413 addi s0,s0,32 + c0049a1a: 00859563 bne a1,s0,c0049a24 js_os_clearTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2072 return JS_UNDEFINED; - c004984e: f002 sd zero,32(sp) - c0049850: 478d li a5,3 - c0049852: bfe1 j c004982a + c0049a1e: f002 sd zero,32(sp) + c0049a20: 478d li a5,3 + c0049a22: bfe1 j c00499fa find_timer_by_id(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2052 if (th->timer_id == timer_id) - c0049854: 4998 lw a4,16(a1) - c0049856: 00f70463 beq a4,a5,c004985e + c0049a24: 4998 lw a4,16(a1) + c0049a26: 00f70463 beq a4,a5,c0049a2e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2050 list_for_each(el, &ts->os_timers) { - c004985a: 658c ld a1,8(a1) - c004985c: b7fd j c004984a + c0049a2a: 658c ld a1,8(a1) + c0049a2c: b7fd j c0049a1a js_os_clearTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2071 free_timer(rt, th); - c004985e: 854a mv a0,s2 - c0049860: f6dff0ef jal ra,c00497cc - c0049864: b7ed j c004984e + c0049a2e: 854a mv a0,s2 + c0049a30: f6dff0ef jal ra,c004999c + c0049a34: b7ed j c0049a1e -00000000c0049866 : +00000000c0049a36 : free_rw_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1847 { - c0049866: 1101 addi sp,sp,-32 - c0049868: e426 sd s1,8(sp) - c004986a: 84aa mv s1,a0 + c0049a36: 1101 addi sp,sp,-32 + c0049a38: e426 sd s1,8(sp) + c0049a3a: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1849 list_del(&rh->link); - c004986c: 852e mv a0,a1 + c0049a3c: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1847 { - c004986e: ec06 sd ra,24(sp) - c0049870: e822 sd s0,16(sp) - c0049872: 842e mv s0,a1 + c0049a3e: ec06 sd ra,24(sp) + c0049a40: e822 sd s0,16(sp) + c0049a42: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1849 list_del(&rh->link); - c0049874: a49fe0ef jal ra,c00482bc + c0049a44: a49fe0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1851 JS_FreeValueRT(rt, rh->rw_func[i]); - c0049878: 6c0c ld a1,24(s0) - c004987a: 7010 ld a2,32(s0) - c004987c: 8526 mv a0,s1 - c004987e: f29ff0ef jal ra,c00497a6 - c0049882: 740c ld a1,40(s0) - c0049884: 7810 ld a2,48(s0) - c0049886: 8526 mv a0,s1 - c0049888: f1fff0ef jal ra,c00497a6 + c0049a48: 6c0c ld a1,24(s0) + c0049a4a: 7010 ld a2,32(s0) + c0049a4c: 8526 mv a0,s1 + c0049a4e: f29ff0ef jal ra,c0049976 + c0049a52: 740c ld a1,40(s0) + c0049a54: 7810 ld a2,48(s0) + c0049a56: 8526 mv a0,s1 + c0049a58: f1fff0ef jal ra,c0049976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1853 js_free_rt(rt, rh); - c004988c: 85a2 mv a1,s0 + c0049a5c: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1854 } - c004988e: 6442 ld s0,16(sp) - c0049890: 60e2 ld ra,24(sp) + c0049a5e: 6442 ld s0,16(sp) + c0049a60: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1853 js_free_rt(rt, rh); - c0049892: 8526 mv a0,s1 + c0049a62: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1854 } - c0049894: 64a2 ld s1,8(sp) - c0049896: 6105 addi sp,sp,32 + c0049a64: 64a2 ld s1,8(sp) + c0049a66: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1853 js_free_rt(rt, rh); - c0049898: b0ebd06f j c0006ba6 + c0049a68: a2cbd06f j c0006c94 -00000000c004989c : +00000000c0049a6c : term_exit(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1747 tcsetattr(0, TCSANOW, &oldtty); - c004989c: 000b8617 auipc a2,0xb8 - c00498a0: 82c60613 addi a2,a2,-2004 # c01010c8 - c00498a4: 4581 li a1,0 - c00498a6: 4501 li a0,0 - c00498a8: 1c60d06f j c0056a6e + c0049a6c: 000b7617 auipc a2,0xb7 + c0049a70: 65c60613 addi a2,a2,1628 # c01010c8 + c0049a74: 4581 li a1,0 + c0049a76: 4501 li a0,0 + c0049a78: 1c60d06f j c0056c3e -00000000c00498ac : +00000000c0049a7c : js_os_ttySetRaw(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1753 { - c00498ac: 711d addi sp,sp,-96 - c00498ae: ec86 sd ra,88(sp) + c0049a7c: 711d addi sp,sp,-96 + c0049a7e: ec86 sd ra,88(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1757 if (JS_ToInt32(ctx, &fd, argv[0])) - c00498b0: 6310 ld a2,0(a4) - c00498b2: 6714 ld a3,8(a4) - c00498b4: 084c addi a1,sp,20 - c00498b6: ab9d20ef jal ra,c001c36e - c00498ba: c909 beqz a0,c00498cc + c0049a80: 6310 ld a2,0(a4) + c0049a82: 6714 ld a3,8(a4) + c0049a84: 084c addi a1,sp,20 + c0049a86: ab9d20ef jal ra,c001c53e + c0049a8a: c909 beqz a0,c0049a9c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1758 return JS_EXCEPTION; - c00498bc: ec02 sd zero,24(sp) - c00498be: 4799 li a5,6 + c0049a8c: ec02 sd zero,24(sp) + c0049a8e: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1777 } - c00498c0: 60e6 ld ra,88(sp) + c0049a90: 60e6 ld ra,88(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1776 return JS_UNDEFINED; - c00498c2: f03e sd a5,32(sp) + c0049a92: f03e sd a5,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1777 } - c00498c4: 6562 ld a0,24(sp) - c00498c6: 7582 ld a1,32(sp) - c00498c8: 6125 addi sp,sp,96 - c00498ca: 8082 ret + c0049a94: 6562 ld a0,24(sp) + c0049a96: 7582 ld a1,32(sp) + c0049a98: 6125 addi sp,sp,96 + c0049a9a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1761 tcgetattr(fd, &tty); - c00498cc: 4552 lw a0,20(sp) - c00498ce: 102c addi a1,sp,40 + c0049a9c: 4552 lw a0,20(sp) + c0049a9e: 102c addi a1,sp,40 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1760 memset(&tty, 0, sizeof(tty)); - c00498d0: f402 sd zero,40(sp) - c00498d2: f802 sd zero,48(sp) - c00498d4: fc02 sd zero,56(sp) - c00498d6: e082 sd zero,64(sp) - c00498d8: e482 sd zero,72(sp) + c0049aa0: f402 sd zero,40(sp) + c0049aa2: f802 sd zero,48(sp) + c0049aa4: fc02 sd zero,56(sp) + c0049aa6: e082 sd zero,64(sp) + c0049aa8: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1761 tcgetattr(fd, &tty); - c00498da: 18a0d0ef jal ra,c0056a64 + c0049aaa: 18a0d0ef jal ra,c0056c34 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1762 oldtty = tty; - c00498de: 02800613 li a2,40 - c00498e2: 102c addi a1,sp,40 - c00498e4: 000b7517 auipc a0,0xb7 - c00498e8: 7e450513 addi a0,a0,2020 # c01010c8 - c00498ec: 0ee0d0ef jal ra,c00569da + c0049aae: 02800613 li a2,40 + c0049ab2: 102c addi a1,sp,40 + c0049ab4: 000b7517 auipc a0,0xb7 + c0049ab8: 61450513 addi a0,a0,1556 # c01010c8 + c0049abc: 0ee0d0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1764 tty.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP - c00498f0: 57a2 lw a5,40(sp) + c0049ac0: 57a2 lw a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1767 tty.c_lflag &= ~(ECHO|ECHONL|ICANON|IEXTEN); - c00498f2: 7761 lui a4,0xffff8 - c00498f4: fb570713 addi a4,a4,-75 # ffffffffffff7fb5 <_ebss+0xffffffff3fef6e8f> + c0049ac2: 7761 lui a4,0xffff8 + c0049ac4: fb570713 addi a4,a4,-75 # ffffffffffff7fb5 <_ebss+0xffffffff3fef6e8f> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1764 tty.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP - c00498f8: a147f793 andi a5,a5,-1516 - c00498fc: d43e sw a5,40(sp) + c0049ac8: a147f793 andi a5,a5,-1516 + c0049acc: d43e sw a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1766 tty.c_oflag |= OPOST; - c00498fe: 57b2 lw a5,44(sp) + c0049ace: 57b2 lw a5,44(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1773 tcsetattr(fd, TCSANOW, &tty); - c0049900: 4552 lw a0,20(sp) - c0049902: 1030 addi a2,sp,40 + c0049ad0: 4552 lw a0,20(sp) + c0049ad2: 1030 addi a2,sp,40 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1766 tty.c_oflag |= OPOST; - c0049904: 0017e793 ori a5,a5,1 - c0049908: d63e sw a5,44(sp) + c0049ad4: 0017e793 ori a5,a5,1 + c0049ad8: d63e sw a5,44(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1767 tty.c_lflag &= ~(ECHO|ECHONL|ICANON|IEXTEN); - c004990a: 57d2 lw a5,52(sp) + c0049ada: 57d2 lw a5,52(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1773 tcsetattr(fd, TCSANOW, &tty); - c004990c: 4581 li a1,0 + c0049adc: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1771 tty.c_cc[VTIME] = 0; - c004990e: 02010ea3 sb zero,61(sp) + c0049ade: 02010ea3 sb zero,61(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1767 tty.c_lflag &= ~(ECHO|ECHONL|ICANON|IEXTEN); - c0049912: 8ff9 and a5,a5,a4 - c0049914: da3e sw a5,52(sp) + c0049ae2: 8ff9 and a5,a5,a4 + c0049ae4: da3e sw a5,52(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1768 tty.c_cflag &= ~(CSIZE|PARENB); - c0049916: 57c2 lw a5,48(sp) - c0049918: ecf7f793 andi a5,a5,-305 + c0049ae6: 57c2 lw a5,48(sp) + c0049ae8: ecf7f793 andi a5,a5,-305 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1769 tty.c_cflag |= CS8; - c004991c: 0307e793 ori a5,a5,48 - c0049920: d83e sw a5,48(sp) + c0049aec: 0307e793 ori a5,a5,48 + c0049af0: d83e sw a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1770 tty.c_cc[VMIN] = 1; - c0049922: 4785 li a5,1 - c0049924: 02f10f23 sb a5,62(sp) + c0049af2: 4785 li a5,1 + c0049af4: 02f10f23 sb a5,62(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1773 tcsetattr(fd, TCSANOW, &tty); - c0049928: 1460d0ef jal ra,c0056a6e + c0049af8: 1460d0ef jal ra,c0056c3e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1775 atexit(term_exit); - c004992c: 00000517 auipc a0,0x0 - c0049930: f7050513 addi a0,a0,-144 # c004989c - c0049934: 3270c0ef jal ra,c005645a + c0049afc: 00000517 auipc a0,0x0 + c0049b00: f7050513 addi a0,a0,-144 # c0049a6c + c0049b04: 3270c0ef jal ra,c005662a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1776 return JS_UNDEFINED; - c0049938: 478d li a5,3 - c004993a: ec02 sd zero,24(sp) - c004993c: b751 j c00498c0 + c0049b08: 478d li a5,3 + c0049b0a: ec02 sd zero,24(sp) + c0049b0c: b751 j c0049a90 -00000000c004993e : +00000000c0049b0e : js_os_ttyGetWinSize(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1723 { - c004993e: 7175 addi sp,sp,-144 - c0049940: e122 sd s0,128(sp) - c0049942: e506 sd ra,136(sp) + c0049b0e: 7175 addi sp,sp,-144 + c0049b10: e122 sd s0,128(sp) + c0049b12: e506 sd ra,136(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1728 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049944: 6310 ld a2,0(a4) - c0049946: 6714 ld a3,8(a4) - c0049948: 084c addi a1,sp,20 + c0049b14: 6310 ld a2,0(a4) + c0049b16: 6714 ld a3,8(a4) + c0049b18: 084c addi a1,sp,20 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1723 { - c004994a: 842a mv s0,a0 + c0049b1a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1728 if (JS_ToInt32(ctx, &fd, argv[0])) - c004994c: a23d20ef jal ra,c001c36e - c0049950: c509 beqz a0,c004995a + c0049b1c: a23d20ef jal ra,c001c53e + c0049b20: c509 beqz a0,c0049b2a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1729 return JS_EXCEPTION; - c0049952: f802 sd zero,48(sp) - c0049954: 4799 li a5,6 + c0049b22: f802 sd zero,48(sp) + c0049b24: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1739 return JS_NULL; - c0049956: fc3e sd a5,56(sp) - c0049958: a835 j c0049994 + c0049b26: fc3e sd a5,56(sp) + c0049b28: a835 j c0049b64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1730 if (ioctl(fd, TIOCGWINSZ, &ws) == 0 && - c004995a: 4552 lw a0,20(sp) - c004995c: 0830 addi a2,sp,24 - c004995e: 10b00593 li a1,267 - c0049962: 22f0d0ef jal ra,c0057390 - c0049966: e935 bnez a0,c00499da + c0049b2a: 4552 lw a0,20(sp) + c0049b2c: 0830 addi a2,sp,24 + c0049b2e: 10b00593 li a1,267 + c0049b32: 22f0d0ef jal ra,c0057560 + c0049b36: e935 bnez a0,c0049baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1730 (discriminator 1) - c0049968: 01a15703 lhu a4,26(sp) - c004996c: 478d li a5,3 - c004996e: 06e7f663 bgeu a5,a4,c00499da + c0049b38: 01a15703 lhu a4,26(sp) + c0049b3c: 478d li a5,3 + c0049b3e: 06e7f663 bgeu a5,a4,c0049baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1731 ws.ws_col >= 4 && ws.ws_row >= 4) { - c0049972: 01815703 lhu a4,24(sp) - c0049976: 06e7f263 bgeu a5,a4,c00499da + c0049b42: 01815703 lhu a4,24(sp) + c0049b46: 06e7f263 bgeu a5,a4,c0049baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1732 obj = JS_NewArray(ctx); - c004997a: 8522 mv a0,s0 - c004997c: e42cd0ef jal ra,c0016fbe - c0049980: f02a sd a0,32(sp) - c0049982: f42e sd a1,40(sp) + c0049b4a: 8522 mv a0,s0 + c0049b4c: e42cd0ef jal ra,c001718e + c0049b50: f02a sd a0,32(sp) + c0049b52: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1733 if (JS_IsException(obj)) - c0049984: 0005871b sext.w a4,a1 - c0049988: 4799 li a5,6 + c0049b54: 0005871b sext.w a4,a1 + c0049b58: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1732 obj = JS_NewArray(ctx); - c004998a: 862e mv a2,a1 + c0049b5a: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1733 if (JS_IsException(obj)) - c004998c: 00f71a63 bne a4,a5,c00499a0 + c0049b5c: 00f71a63 bne a4,a5,c0049b70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1734 return obj; - c0049990: f82a sd a0,48(sp) - c0049992: fc2e sd a1,56(sp) + c0049b60: f82a sd a0,48(sp) + c0049b62: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1741 (discriminator 1) } - c0049994: 60aa ld ra,136(sp) - c0049996: 640a ld s0,128(sp) - c0049998: 7542 ld a0,48(sp) - c004999a: 75e2 ld a1,56(sp) - c004999c: 6149 addi sp,sp,144 - c004999e: 8082 ret + c0049b64: 60aa ld ra,136(sp) + c0049b66: 640a ld s0,128(sp) + c0049b68: 7542 ld a0,48(sp) + c0049b6a: 75e2 ld a1,56(sp) + c0049b6c: 6149 addi sp,sp,144 + c0049b6e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1735 JS_DefinePropertyValueUint32(ctx, obj, 0, JS_NewInt32(ctx, ws.ws_col), JS_PROP_C_W_E); - c00499a0: 01a15783 lhu a5,26(sp) + c0049b70: 01a15783 lhu a5,26(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c00499a4: f882 sd zero,112(sp) + c0049b74: f882 sd zero,112(sp) js_os_ttyGetWinSize(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1735 - c00499a6: 85aa mv a1,a0 - c00499a8: d8be sw a5,112(sp) - c00499aa: 7746 ld a4,112(sp) - c00499ac: 481d li a6,7 - c00499ae: 4781 li a5,0 - c00499b0: 4681 li a3,0 - c00499b2: 8522 mv a0,s0 - c00499b4: d21df0ef jal ra,c00296d4 + c0049b76: 85aa mv a1,a0 + c0049b78: d8be sw a5,112(sp) + c0049b7a: 7746 ld a4,112(sp) + c0049b7c: 481d li a6,7 + c0049b7e: 4781 li a5,0 + c0049b80: 4681 li a3,0 + c0049b82: 8522 mv a0,s0 + c0049b84: d21df0ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1736 JS_DefinePropertyValueUint32(ctx, obj, 1, JS_NewInt32(ctx, ws.ws_row), JS_PROP_C_W_E); - c00499b8: 01815783 lhu a5,24(sp) + c0049b88: 01815783 lhu a5,24(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c00499bc: f082 sd zero,96(sp) + c0049b8c: f082 sd zero,96(sp) js_os_ttyGetWinSize(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1736 - c00499be: 7582 ld a1,32(sp) - c00499c0: d0be sw a5,96(sp) - c00499c2: 7706 ld a4,96(sp) - c00499c4: 7622 ld a2,40(sp) - c00499c6: 4781 li a5,0 - c00499c8: 481d li a6,7 - c00499ca: 4685 li a3,1 - c00499cc: 8522 mv a0,s0 - c00499ce: d07df0ef jal ra,c00296d4 + c0049b8e: 7582 ld a1,32(sp) + c0049b90: d0be sw a5,96(sp) + c0049b92: 7706 ld a4,96(sp) + c0049b94: 7622 ld a2,40(sp) + c0049b96: 4781 li a5,0 + c0049b98: 481d li a6,7 + c0049b9a: 4685 li a3,1 + c0049b9c: 8522 mv a0,s0 + c0049b9e: d07df0ef jal ra,c00298a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1737 return obj; - c00499d2: 7782 ld a5,32(sp) - c00499d4: f83e sd a5,48(sp) - c00499d6: 77a2 ld a5,40(sp) - c00499d8: bfbd j c0049956 + c0049ba2: 7782 ld a5,32(sp) + c0049ba4: f83e sd a5,48(sp) + c0049ba6: 77a2 ld a5,40(sp) + c0049ba8: bfbd j c0049b26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1739 return JS_NULL; - c00499da: f802 sd zero,48(sp) - c00499dc: 4789 li a5,2 - c00499de: bfa5 j c0049956 + c0049baa: f802 sd zero,48(sp) + c0049bac: 4789 li a5,2 + c0049bae: bfa5 j c0049b26 -00000000c00499e0 : +00000000c0049bb0 : js_os_isatty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1671 if (JS_ToInt32(ctx, &fd, argv[0])) - c00499e0: 6310 ld a2,0(a4) - c00499e2: 6714 ld a3,8(a4) + c0049bb0: 6310 ld a2,0(a4) + c0049bb2: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1669 { - c00499e4: 715d addi sp,sp,-80 + c0049bb4: 715d addi sp,sp,-80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1671 if (JS_ToInt32(ctx, &fd, argv[0])) - c00499e6: 086c addi a1,sp,28 + c0049bb6: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1669 { - c00499e8: e486 sd ra,72(sp) + c0049bb8: e486 sd ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1671 if (JS_ToInt32(ctx, &fd, argv[0])) - c00499ea: 985d20ef jal ra,c001c36e - c00499ee: c909 beqz a0,c0049a00 + c0049bba: 985d20ef jal ra,c001c53e + c0049bbe: c909 beqz a0,c0049bd0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1672 return JS_EXCEPTION; - c00499f0: f002 sd zero,32(sp) - c00499f2: 4799 li a5,6 + c0049bc0: f002 sd zero,32(sp) + c0049bc2: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1674 } - c00499f4: 60a6 ld ra,72(sp) - c00499f6: f43e sd a5,40(sp) - c00499f8: 7502 ld a0,32(sp) - c00499fa: 75a2 ld a1,40(sp) - c00499fc: 6161 addi sp,sp,80 - c00499fe: 8082 ret + c0049bc4: 60a6 ld ra,72(sp) + c0049bc6: f43e sd a5,40(sp) + c0049bc8: 7502 ld a0,32(sp) + c0049bca: 75a2 ld a1,40(sp) + c0049bcc: 6161 addi sp,sp,80 + c0049bce: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1673 return JS_NewBool(ctx, (isatty(fd) != 0)); - c0049a00: 4572 lw a0,28(sp) - c0049a02: 04a0d0ef jal ra,c0056a4c - c0049a06: 00a03533 snez a0,a0 + c0049bd0: 4572 lw a0,28(sp) + c0049bd2: 04a0d0ef jal ra,c0056c1c + c0049bd6: 00a03533 snez a0,a0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c0049a0a: da02 sw zero,52(sp) - c0049a0c: d82a sw a0,48(sp) - c0049a0e: 77c2 ld a5,48(sp) - c0049a10: f03e sd a5,32(sp) - c0049a12: 4785 li a5,1 - c0049a14: b7c5 j c00499f4 - -00000000c0049a16 : + c0049bda: da02 sw zero,52(sp) + c0049bdc: d82a sw a0,48(sp) + c0049bde: 77c2 ld a5,48(sp) + c0049be0: f03e sd a5,32(sp) + c0049be2: 4785 li a5,1 + c0049be4: b7c5 j c0049bc4 + +00000000c0049be6 : js_os_seek(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1619 { - c0049a16: 7159 addi sp,sp,-112 - c0049a18: e432 sd a2,8(sp) + c0049be6: 7159 addi sp,sp,-112 + c0049be8: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1624 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049a1a: 6714 ld a3,8(a4) - c0049a1c: 6310 ld a2,0(a4) + c0049bea: 6714 ld a3,8(a4) + c0049bec: 6310 ld a2,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1619 { - c0049a1e: e02e sd a1,0(sp) + c0049bee: e02e sd a1,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1624 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049a20: 080c addi a1,sp,16 + c0049bf0: 080c addi a1,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1619 { - c0049a22: f0a2 sd s0,96(sp) - c0049a24: eca6 sd s1,88(sp) - c0049a26: f486 sd ra,104(sp) - c0049a28: e8ca sd s2,80(sp) - c0049a2a: 84aa mv s1,a0 - c0049a2c: 843a mv s0,a4 + c0049bf2: f0a2 sd s0,96(sp) + c0049bf4: eca6 sd s1,88(sp) + c0049bf6: f486 sd ra,104(sp) + c0049bf8: e8ca sd s2,80(sp) + c0049bfa: 84aa mv s1,a0 + c0049bfc: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1624 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049a2e: 941d20ef jal ra,c001c36e - c0049a32: cd01 beqz a0,c0049a4a + c0049bfe: 941d20ef jal ra,c001c53e + c0049c02: cd01 beqz a0,c0049c1a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1625 return JS_EXCEPTION; - c0049a34: 4799 li a5,6 - c0049a36: f002 sd zero,32(sp) - c0049a38: f43e sd a5,40(sp) + c0049c04: 4799 li a5,6 + c0049c06: f002 sd zero,32(sp) + c0049c08: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1638 (discriminator 1) } - c0049a3a: 70a6 ld ra,104(sp) - c0049a3c: 7406 ld s0,96(sp) - c0049a3e: 7502 ld a0,32(sp) - c0049a40: 75a2 ld a1,40(sp) - c0049a42: 64e6 ld s1,88(sp) - c0049a44: 6946 ld s2,80(sp) - c0049a46: 6165 addi sp,sp,112 - c0049a48: 8082 ret + c0049c0a: 70a6 ld ra,104(sp) + c0049c0c: 7406 ld s0,96(sp) + c0049c0e: 7502 ld a0,32(sp) + c0049c10: 75a2 ld a1,40(sp) + c0049c12: 64e6 ld s1,88(sp) + c0049c14: 6946 ld s2,80(sp) + c0049c16: 6165 addi sp,sp,112 + c0049c18: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1626 is_bigint = JS_IsBigInt(ctx, argv[1]); - c0049a4a: 01843903 ld s2,24(s0) + c0049c1a: 01843903 ld s2,24(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1627 if (JS_ToInt64Ext(ctx, &pos, argv[1])) - c0049a4e: 6810 ld a2,16(s0) - c0049a50: 082c addi a1,sp,24 - c0049a52: 86ca mv a3,s2 - c0049a54: 8526 mv a0,s1 - c0049a56: 826d60ef jal ra,c001fa7c - c0049a5a: fd69 bnez a0,c0049a34 + c0049c1e: 6810 ld a2,16(s0) + c0049c20: 082c addi a1,sp,24 + c0049c22: 86ca mv a3,s2 + c0049c24: 8526 mv a0,s1 + c0049c26: 826d60ef jal ra,c001fc4c + c0049c2a: fd69 bnez a0,c0049c04 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1629 if (JS_ToInt32(ctx, &whence, argv[2])) - c0049a5c: 7010 ld a2,32(s0) - c0049a5e: 7414 ld a3,40(s0) - c0049a60: 084c addi a1,sp,20 - c0049a62: 8526 mv a0,s1 - c0049a64: 90bd20ef jal ra,c001c36e - c0049a68: f571 bnez a0,c0049a34 + c0049c2c: 7010 ld a2,32(s0) + c0049c2e: 7414 ld a3,40(s0) + c0049c30: 084c addi a1,sp,20 + c0049c32: 8526 mv a0,s1 + c0049c34: 90bd20ef jal ra,c001c53e + c0049c38: f571 bnez a0,c0049c04 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1631 ret = lseek(fd, pos, whence); - c0049a6a: 45e2 lw a1,24(sp) - c0049a6c: 4652 lw a2,20(sp) - c0049a6e: 4542 lw a0,16(sp) - c0049a70: 1610d0ef jal ra,c00573d0 + c0049c3a: 45e2 lw a1,24(sp) + c0049c3c: 4652 lw a2,20(sp) + c0049c3e: 4542 lw a0,16(sp) + c0049c40: 1610d0ef jal ra,c00575a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1632 if (ret == -1) - c0049a74: 57fd li a5,-1 + c0049c44: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1631 ret = lseek(fd, pos, whence); - c0049a76: 85aa mv a1,a0 + c0049c46: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1632 if (ret == -1) - c0049a78: 00f51763 bne a0,a5,c0049a86 + c0049c48: 00f51763 bne a0,a5,c0049c56 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1633 ret = -errno; - c0049a7c: 0580a0ef jal ra,c0053ad4 <__errno> - c0049a80: 410c lw a1,0(a0) - c0049a82: 40b005bb negw a1,a1 + c0049c4c: 0580a0ef jal ra,c0053ca4 <__errno> + c0049c50: 410c lw a1,0(a0) + c0049c52: 40b005bb negw a1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1634 if (is_bigint) - c0049a86: 2901 sext.w s2,s2 - c0049a88: 57d9 li a5,-10 - c0049a8a: 00f91863 bne s2,a5,c0049a9a + c0049c56: 2901 sext.w s2,s2 + c0049c58: 57d9 li a5,-10 + c0049c5a: 00f91863 bne s2,a5,c0049c6a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1635 return JS_NewBigInt64(ctx, ret); - c0049a8e: 8526 mv a0,s1 - c0049a90: a6ccf0ef jal ra,c0018cfc - c0049a94: f02a sd a0,32(sp) - c0049a96: f42e sd a1,40(sp) - c0049a98: b74d j c0049a3a + c0049c5e: 8526 mv a0,s1 + c0049c60: a6ccf0ef jal ra,c0018ecc + c0049c64: f02a sd a0,32(sp) + c0049c66: f42e sd a1,40(sp) + c0049c68: b74d j c0049c0a JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0049a9a: da02 sw zero,52(sp) + c0049c6a: da02 sw zero,52(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c0049a9c: d82e sw a1,48(sp) - c0049a9e: 77c2 ld a5,48(sp) - c0049aa0: f402 sd zero,40(sp) + c0049c6c: d82e sw a1,48(sp) + c0049c6e: 77c2 ld a5,48(sp) + c0049c70: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c0049aa2: f03e sd a5,32(sp) + c0049c72: f03e sd a5,32(sp) js_os_seek(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1637 return JS_NewInt64(ctx, ret); - c0049aa4: bf59 j c0049a3a + c0049c74: bf59 j c0049c0a -00000000c0049aa6 : +00000000c0049c76 : js_new_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3228 sab = (JSSABHeader *)((uint8_t *)ptr - sizeof(JSSABHeader)); @@ -201810,44 +202008,44 @@ js_new_message_pipe(): static JSWorkerMessagePipe *js_new_message_pipe(void) { - c0049aa6: 1101 addi sp,sp,-32 + c0049c76: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3232 JSWorkerMessagePipe *ps; int pipe_fds[2]; if (pipe(pipe_fds) < 0) - c0049aa8: 4581 li a1,0 - c0049aaa: 0028 addi a0,sp,8 + c0049c78: 4581 li a1,0 + c0049c7a: 0028 addi a0,sp,8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3228 { - c0049aac: e822 sd s0,16(sp) - c0049aae: ec06 sd ra,24(sp) + c0049c7c: e822 sd s0,16(sp) + c0049c7e: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3232 if (pipe(pipe_fds) < 0) - c0049ab0: 2f0090ef jal ra,c0052da0 + c0049c80: 2f0090ef jal ra,c0052f70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3233 return NULL; - c0049ab4: 4401 li s0,0 + c0049c84: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3232 if (pipe(pipe_fds) < 0) - c0049ab6: 00054e63 bltz a0,c0049ad2 + c0049c86: 00054e63 bltz a0,c0049ca2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3235 ps = malloc(sizeof(*ps)); - c0049aba: 04800513 li a0,72 - c0049abe: 346090ef jal ra,c0052e04 - c0049ac2: 842a mv s0,a0 + c0049c8a: 04800513 li a0,72 + c0049c8e: 346090ef jal ra,c0052fd4 + c0049c92: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3236 if (!ps) { - c0049ac4: ed01 bnez a0,c0049adc + c0049c94: ed01 bnez a0,c0049cac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3237 close(pipe_fds[0]); - c0049ac6: 4522 lw a0,8(sp) - c0049ac8: 01b0d0ef jal ra,c00572e2 + c0049c96: 4522 lw a0,8(sp) + c0049c98: 01b0d0ef jal ra,c00574b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3238 close(pipe_fds[1]); - c0049acc: 4532 lw a0,12(sp) - c0049ace: 0150d0ef jal ra,c00572e2 + c0049c9c: 4532 lw a0,12(sp) + c0049c9e: 0150d0ef jal ra,c00574b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3247 init_list_head(&ps->msg_queue); pthread_mutex_init(&ps->mutex, NULL); @@ -201855,62 +202053,62 @@ static JSWorkerMessagePipe *js_new_message_pipe(void) ps->write_fd = pipe_fds[1]; return ps; } - c0049ad2: 60e2 ld ra,24(sp) - c0049ad4: 8522 mv a0,s0 - c0049ad6: 6442 ld s0,16(sp) - c0049ad8: 6105 addi sp,sp,32 - c0049ada: 8082 ret + c0049ca2: 60e2 ld ra,24(sp) + c0049ca4: 8522 mv a0,s0 + c0049ca6: 6442 ld s0,16(sp) + c0049ca8: 6105 addi sp,sp,32 + c0049caa: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3241 ps->ref_count = 1; - c0049adc: 4785 li a5,1 - c0049ade: c11c sw a5,0(a0) + c0049cac: 4785 li a5,1 + c0049cae: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3242 init_list_head(&ps->msg_queue); - c0049ae0: 03050793 addi a5,a0,48 + c0049cb0: 03050793 addi a5,a0,48 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c0049ae4: f91c sd a5,48(a0) + c0049cb4: f91c sd a5,48(a0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c0049ae6: fd1c sd a5,56(a0) + c0049cb6: fd1c sd a5,56(a0) js_new_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3243 pthread_mutex_init(&ps->mutex, NULL); - c0049ae8: 4581 li a1,0 - c0049aea: 0521 addi a0,a0,8 - c0049aec: 2150d0ef jal ra,c0057500 + c0049cb8: 4581 li a1,0 + c0049cba: 0521 addi a0,a0,8 + c0049cbc: 2150d0ef jal ra,c00576d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3244 ps->read_fd = pipe_fds[0]; - c0049af0: 67a2 ld a5,8(sp) - c0049af2: e03c sd a5,64(s0) + c0049cc0: 67a2 ld a5,8(sp) + c0049cc2: e03c sd a5,64(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3246 return ps; - c0049af4: bff9 j c0049ad2 + c0049cc4: bff9 j c0049ca2 -00000000c0049af6 : +00000000c0049cc6 : atomic_add_int(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3194 return atomic_fetch_add((_Atomic(uint32_t) *)ptr, v) + v; - c0049af6: 0f50000f fence iorw,ow - c0049afa: 04b527af amoadd.w.aq a5,a1,(a0) + c0049cc6: 0f50000f fence iorw,ow + c0049cca: 04b527af amoadd.w.aq a5,a1,(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3195 } - c0049afe: 00b7853b addw a0,a5,a1 - c0049b02: 8082 ret + c0049cce: 00b7853b addw a0,a5,a1 + c0049cd2: 8082 ret -00000000c0049b04 : +00000000c0049cd4 : js_sab_dup(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3221 { - c0049b04: 852e mv a0,a1 + c0049cd4: 852e mv a0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3224 atomic_add_int(&sab->ref_count, 1); - c0049b06: 1561 addi a0,a0,-8 - c0049b08: 4585 li a1,1 - c0049b0a: fedff06f j c0049af6 + c0049cd6: 1561 addi a0,a0,-8 + c0049cd8: 4585 li a1,1 + c0049cda: fedff06f j c0049cc6 -00000000c0049b0e : +00000000c0049cde : js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3481 return JS_EXCEPTION; @@ -201919,27 +202117,27 @@ js_worker_postMessage(): static JSValue js_worker_postMessage(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) { - c0049b0e: 7175 addi sp,sp,-144 + c0049cde: 7175 addi sp,sp,-144 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3482 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c0049b10: 000b7697 auipc a3,0xb7 - c0049b14: 5ec6a683 lw a3,1516(a3) # c01010fc + c0049ce0: 000b7697 auipc a3,0xb7 + c0049ce4: 41c6a683 lw a3,1052(a3) # c01010fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3481 { - c0049b18: e122 sd s0,128(sp) - c0049b1a: fca6 sd s1,120(sp) - c0049b1c: e506 sd ra,136(sp) - c0049b1e: f8ca sd s2,112(sp) - c0049b20: f4ce sd s3,104(sp) - c0049b22: f0d2 sd s4,96(sp) - c0049b24: ecd6 sd s5,88(sp) - c0049b26: 84aa mv s1,a0 - c0049b28: e82e sd a1,16(sp) - c0049b2a: ec32 sd a2,24(sp) - c0049b2c: 843a mv s0,a4 + c0049ce8: e122 sd s0,128(sp) + c0049cea: fca6 sd s1,120(sp) + c0049cec: e506 sd ra,136(sp) + c0049cee: f8ca sd s2,112(sp) + c0049cf0: f4ce sd s3,104(sp) + c0049cf2: f0d2 sd s4,96(sp) + c0049cf4: ecd6 sd s5,88(sp) + c0049cf6: 84aa mv s1,a0 + c0049cf8: e82e sd a1,16(sp) + c0049cfa: ec32 sd a2,24(sp) + c0049cfc: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3482 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c0049b2e: a4bc90ef jal ra,c0013578 + c0049cfe: 969c90ef jal ra,c0013666 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3489 size_t data_len, sab_tab_len, i; uint8_t *data; @@ -201947,7 +202145,7 @@ static JSValue js_worker_postMessage(JSContext *ctx, JSValueConst this_val, uint8_t **sab_tab; if (!worker) - c0049b32: e501 bnez a0,c0049b3a + c0049d02: e501 bnez a0,c0049d0a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3550 free(msg->sab_tab); free(msg); @@ -201955,383 +202153,383 @@ static JSValue js_worker_postMessage(JSContext *ctx, JSValueConst this_val, js_free(ctx, data); js_free(ctx, sab_tab); return JS_EXCEPTION; - c0049b34: e082 sd zero,64(sp) - c0049b36: 4799 li a5,6 - c0049b38: a8f9 j c0049c16 + c0049d04: e082 sd zero,64(sp) + c0049d06: 4799 li a5,6 + c0049d08: a8f9 j c0049de6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3492 data = JS_WriteObject2(ctx, &data_len, argv[0], - c0049b3a: 6010 ld a2,0(s0) - c0049b3c: 6414 ld a3,8(s0) - c0049b3e: 8a2a mv s4,a0 - c0049b40: 03010813 addi a6,sp,48 - c0049b44: 183c addi a5,sp,56 - c0049b46: 4731 li a4,12 - c0049b48: 102c addi a1,sp,40 - c0049b4a: 8526 mv a0,s1 - c0049b4c: e91ea0ef jal ra,c00349dc - c0049b50: 892a mv s2,a0 + c0049d0a: 6010 ld a2,0(s0) + c0049d0c: 6414 ld a3,8(s0) + c0049d0e: 8a2a mv s4,a0 + c0049d10: 03010813 addi a6,sp,48 + c0049d14: 183c addi a5,sp,56 + c0049d16: 4731 li a4,12 + c0049d18: 102c addi a1,sp,40 + c0049d1a: 8526 mv a0,s1 + c0049d1c: e91ea0ef jal ra,c0034bac + c0049d20: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3495 if (!data) - c0049b52: d16d beqz a0,c0049b34 + c0049d22: d16d beqz a0,c0049d04 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3498 msg = malloc(sizeof(*msg)); - c0049b54: 03000513 li a0,48 - c0049b58: 2ac090ef jal ra,c0052e04 - c0049b5c: 842a mv s0,a0 + c0049d24: 03000513 li a0,48 + c0049d28: 2ac090ef jal ra,c0052fd4 + c0049d2c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3499 if (!msg) - c0049b5e: 0e050c63 beqz a0,c0049c56 + c0049d2e: 0e050c63 beqz a0,c0049e26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3505 msg->data = malloc(data_len); - c0049b62: 7aa2 ld s5,40(sp) + c0049d32: 7aa2 ld s5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3502 msg->sab_tab = NULL; - c0049b64: 02053023 sd zero,32(a0) + c0049d34: 02053023 sd zero,32(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3505 msg->data = malloc(data_len); - c0049b68: 8556 mv a0,s5 - c0049b6a: 29a090ef jal ra,c0052e04 - c0049b6e: e808 sd a0,16(s0) - c0049b70: 89aa mv s3,a0 + c0049d38: 8556 mv a0,s5 + c0049d3a: 29a090ef jal ra,c0052fd4 + c0049d3e: e808 sd a0,16(s0) + c0049d40: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3506 if (!msg->data) - c0049b72: c969 beqz a0,c0049c44 + c0049d42: c969 beqz a0,c0049e14 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3508 memcpy(msg->data, data, data_len); - c0049b74: 8656 mv a2,s5 - c0049b76: 85ca mv a1,s2 - c0049b78: 6630c0ef jal ra,c00569da + c0049d44: 8656 mv a2,s5 + c0049d46: 85ca mv a1,s2 + c0049d48: 6630c0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3509 msg->data_len = data_len; - c0049b7c: 01543c23 sd s5,24(s0) + c0049d4c: 01543c23 sd s5,24(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3511 msg->sab_tab = malloc(sizeof(msg->sab_tab[0]) * sab_tab_len); - c0049b80: 7ac2 ld s5,48(sp) - c0049b82: 003a9613 slli a2,s5,0x3 - c0049b86: 8532 mv a0,a2 - c0049b88: e432 sd a2,8(sp) - c0049b8a: 27a090ef jal ra,c0052e04 - c0049b8e: f008 sd a0,32(s0) + c0049d50: 7ac2 ld s5,48(sp) + c0049d52: 003a9613 slli a2,s5,0x3 + c0049d56: 8532 mv a0,a2 + c0049d58: e432 sd a2,8(sp) + c0049d5a: 27a090ef jal ra,c0052fd4 + c0049d5e: f008 sd a0,32(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3512 if (!msg->sab_tab) - c0049b90: c955 beqz a0,c0049c44 + c0049d60: c955 beqz a0,c0049e14 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3514 memcpy(msg->sab_tab, sab_tab, sizeof(msg->sab_tab[0]) * sab_tab_len); - c0049b92: 6622 ld a2,8(sp) - c0049b94: 75e2 ld a1,56(sp) - c0049b96: 6450c0ef jal ra,c00569da + c0049d62: 6622 ld a2,8(sp) + c0049d64: 75e2 ld a1,56(sp) + c0049d66: 6450c0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3517 js_free(ctx, data); - c0049b9a: 8526 mv a0,s1 - c0049b9c: 85ca mv a1,s2 + c0049d6a: 8526 mv a0,s1 + c0049d6c: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3515 msg->sab_tab_len = sab_tab_len; - c0049b9e: 03543423 sd s5,40(s0) + c0049d6e: 03543423 sd s5,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3517 js_free(ctx, data); - c0049ba2: a98bd0ef jal ra,c0006e3a + c0049d72: 9b6bd0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3518 js_free(ctx, sab_tab); - c0049ba6: 75e2 ld a1,56(sp) - c0049ba8: 8526 mv a0,s1 + c0049d76: 75e2 ld a1,56(sp) + c0049d78: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3521 for(i = 0; i < msg->sab_tab_len; i++) { - c0049baa: 4481 li s1,0 + c0049d7a: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3518 js_free(ctx, sab_tab); - c0049bac: a8ebd0ef jal ra,c0006e3a + c0049d7c: 9acbd0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3521 (discriminator 1) for(i = 0; i < msg->sab_tab_len; i++) { - c0049bb0: 741c ld a5,40(s0) - c0049bb2: 06f4ee63 bltu s1,a5,c0049c2e + c0049d80: 741c ld a5,40(s0) + c0049d82: 06f4ee63 bltu s1,a5,c0049dfe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3525 ps = worker->send_pipe; - c0049bb6: 008a3483 ld s1,8(s4) # fffffffffffff008 <_ebss+0xffffffff3fefdee2> + c0049d86: 008a3483 ld s1,8(s4) # fffffffffffff008 <_ebss+0xffffffff3fefdee2> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3526 pthread_mutex_lock(&ps->mutex); - c0049bba: 00848913 addi s2,s1,8 - c0049bbe: 854a mv a0,s2 - c0049bc0: 36a0a0ef jal ra,c0053f2a + c0049d8a: 00848913 addi s2,s1,8 + c0049d8e: 854a mv a0,s2 + c0049d90: 36a0a0ef jal ra,c00540fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3528 if (list_empty(&ps->msg_queue)) { - c0049bc4: 7c9c ld a5,56(s1) - c0049bc6: 03048993 addi s3,s1,48 - c0049bca: 02f99b63 bne s3,a5,c0049c00 + c0049d94: 7c9c ld a5,56(s1) + c0049d96: 03048993 addi s3,s1,48 + c0049d9a: 02f99b63 bne s3,a5,c0049dd0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3529 uint8_t ch = '\0'; - c0049bce: 04010023 sb zero,64(sp) + c0049d9e: 04010023 sb zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3535 if (ret < 0 && (errno != EAGAIN || errno != EINTR)) - c0049bd2: 4aad li s5,11 - c0049bd4: 4a11 li s4,4 + c0049da2: 4aad li s5,11 + c0049da4: 4a11 li s4,4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3532 ret = write(ps->write_fd, &ch, 1); - c0049bd6: 40e8 lw a0,68(s1) - c0049bd8: 4605 li a2,1 - c0049bda: 008c addi a1,sp,64 - c0049bdc: 26d0d0ef jal ra,c0057648 - c0049be0: 2501 sext.w a0,a0 + c0049da6: 40e8 lw a0,68(s1) + c0049da8: 4605 li a2,1 + c0049daa: 008c addi a1,sp,64 + c0049dac: 26d0d0ef jal ra,c0057818 + c0049db0: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3533 if (ret == 1) - c0049be2: 4785 li a5,1 - c0049be4: 00f50e63 beq a0,a5,c0049c00 + c0049db2: 4785 li a5,1 + c0049db4: 00f50e63 beq a0,a5,c0049dd0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3535 if (ret < 0 && (errno != EAGAIN || errno != EINTR)) - c0049be8: fe0557e3 bgez a0,c0049bd6 + c0049db8: fe0557e3 bgez a0,c0049da6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3535 (discriminator 1) - c0049bec: 6e9090ef jal ra,c0053ad4 <__errno> - c0049bf0: 411c lw a5,0(a0) - c0049bf2: 01579763 bne a5,s5,c0049c00 + c0049dbc: 6e9090ef jal ra,c0053ca4 <__errno> + c0049dc0: 411c lw a5,0(a0) + c0049dc2: 01579763 bne a5,s5,c0049dd0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3535 (discriminator 2) - c0049bf6: 6df090ef jal ra,c0053ad4 <__errno> - c0049bfa: 411c lw a5,0(a0) - c0049bfc: fd478de3 beq a5,s4,c0049bd6 + c0049dc6: 6df090ef jal ra,c0053ca4 <__errno> + c0049dca: 411c lw a5,0(a0) + c0049dcc: fd478de3 beq a5,s4,c0049da6 list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c0049c00: 789c ld a5,48(s1) + c0049dd0: 789c ld a5,48(s1) js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3540 pthread_mutex_unlock(&ps->mutex); - c0049c02: 854a mv a0,s2 + c0049dd2: 854a mv a0,s2 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c0049c04: e780 sd s0,8(a5) + c0049dd4: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c0049c06: e01c sd a5,0(s0) + c0049dd6: e01c sd a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c0049c08: 01343423 sd s3,8(s0) + c0049dd8: 01343423 sd s3,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c0049c0c: f880 sd s0,48(s1) + c0049ddc: f880 sd s0,48(s1) js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3540 - c0049c0e: 11b0d0ef jal ra,c0057528 + c0049dde: 11b0d0ef jal ra,c00576f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3541 return JS_UNDEFINED; - c0049c12: 478d li a5,3 - c0049c14: e082 sd zero,64(sp) + c0049de2: 478d li a5,3 + c0049de4: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3552 } - c0049c16: 60aa ld ra,136(sp) - c0049c18: 640a ld s0,128(sp) + c0049de6: 60aa ld ra,136(sp) + c0049de8: 640a ld s0,128(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3541 return JS_UNDEFINED; - c0049c1a: e4be sd a5,72(sp) + c0049dea: e4be sd a5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3552 } - c0049c1c: 6506 ld a0,64(sp) - c0049c1e: 65a6 ld a1,72(sp) - c0049c20: 74e6 ld s1,120(sp) - c0049c22: 7946 ld s2,112(sp) - c0049c24: 79a6 ld s3,104(sp) - c0049c26: 7a06 ld s4,96(sp) - c0049c28: 6ae6 ld s5,88(sp) - c0049c2a: 6149 addi sp,sp,144 - c0049c2c: 8082 ret + c0049dec: 6506 ld a0,64(sp) + c0049dee: 65a6 ld a1,72(sp) + c0049df0: 74e6 ld s1,120(sp) + c0049df2: 7946 ld s2,112(sp) + c0049df4: 79a6 ld s3,104(sp) + c0049df6: 7a06 ld s4,96(sp) + c0049df8: 6ae6 ld s5,88(sp) + c0049dfa: 6149 addi sp,sp,144 + c0049dfc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3522 (discriminator 3) js_sab_dup(NULL, msg->sab_tab[i]); - c0049c2e: 701c ld a5,32(s0) - c0049c30: 00349713 slli a4,s1,0x3 + c0049dfe: 701c ld a5,32(s0) + c0049e00: 00349713 slli a4,s1,0x3 js_sab_dup(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3224 (discriminator 3) atomic_add_int(&sab->ref_count, 1); - c0049c34: 4585 li a1,1 + c0049e04: 4585 li a1,1 js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3522 (discriminator 3) js_sab_dup(NULL, msg->sab_tab[i]); - c0049c36: 97ba add a5,a5,a4 + c0049e06: 97ba add a5,a5,a4 js_sab_dup(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3224 (discriminator 3) atomic_add_int(&sab->ref_count, 1); - c0049c38: 6388 ld a0,0(a5) + c0049e08: 6388 ld a0,0(a5) js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3521 (discriminator 3) for(i = 0; i < msg->sab_tab_len; i++) { - c0049c3a: 0485 addi s1,s1,1 + c0049e0a: 0485 addi s1,s1,1 js_sab_dup(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3224 (discriminator 3) atomic_add_int(&sab->ref_count, 1); - c0049c3c: 1561 addi a0,a0,-8 - c0049c3e: eb9ff0ef jal ra,c0049af6 + c0049e0c: 1561 addi a0,a0,-8 + c0049e0e: eb9ff0ef jal ra,c0049cc6 js_worker_postMessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3521 (discriminator 3) for(i = 0; i < msg->sab_tab_len; i++) { - c0049c42: b7bd j c0049bb0 + c0049e12: b7bd j c0049d80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3544 free(msg->data); - c0049c44: 854e mv a0,s3 - c0049c46: 1b2090ef jal ra,c0052df8 + c0049e14: 854e mv a0,s3 + c0049e16: 1b2090ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3545 free(msg->sab_tab); - c0049c4a: 7008 ld a0,32(s0) - c0049c4c: 1ac090ef jal ra,c0052df8 + c0049e1a: 7008 ld a0,32(s0) + c0049e1c: 1ac090ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3546 free(msg); - c0049c50: 8522 mv a0,s0 - c0049c52: 1a6090ef jal ra,c0052df8 + c0049e20: 8522 mv a0,s0 + c0049e22: 1a6090ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3548 js_free(ctx, data); - c0049c56: 85ca mv a1,s2 - c0049c58: 8526 mv a0,s1 - c0049c5a: 9e0bd0ef jal ra,c0006e3a + c0049e26: 85ca mv a1,s2 + c0049e28: 8526 mv a0,s1 + c0049e2a: 8febd0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3549 js_free(ctx, sab_tab); - c0049c5e: 75e2 ld a1,56(sp) - c0049c60: 8526 mv a0,s1 - c0049c62: 9d8bd0ef jal ra,c0006e3a - c0049c66: b5f9 j c0049b34 + c0049e2e: 75e2 ld a1,56(sp) + c0049e30: 8526 mv a0,s1 + c0049e32: 8f6bd0ef jal ra,c0006f28 + c0049e36: b5f9 j c0049d04 -00000000c0049c68 : +00000000c0049e38 : js_worker_ctor_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3369 { - c0049c68: 7159 addi sp,sp,-112 - c0049c6a: eca6 sd s1,88(sp) - c0049c6c: e4ce sd s3,72(sp) - c0049c6e: e0d2 sd s4,64(sp) - c0049c70: 89ba mv s3,a4 - c0049c72: f486 sd ra,104(sp) - c0049c74: f0a2 sd s0,96(sp) - c0049c76: e8ca sd s2,80(sp) + c0049e38: 7159 addi sp,sp,-112 + c0049e3a: eca6 sd s1,88(sp) + c0049e3c: e4ce sd s3,72(sp) + c0049e3e: e0d2 sd s4,64(sp) + c0049e40: 89ba mv s3,a4 + c0049e42: f486 sd ra,104(sp) + c0049e44: f0a2 sd s0,96(sp) + c0049e46: e8ca sd s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3370 JSValue obj = JS_UNDEFINED, proto; - c0049c78: e802 sd zero,16(sp) + c0049e48: e802 sd zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3374 if (JS_IsUndefined(new_target)) { - c0049c7a: 0006079b sext.w a5,a2 - c0049c7e: 470d li a4,3 + c0049e4a: 0006079b sext.w a5,a2 + c0049e4e: 470d li a4,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3369 { - c0049c80: 84aa mv s1,a0 - c0049c82: 8a36 mv s4,a3 + c0049e50: 84aa mv s1,a0 + c0049e52: 8a36 mv s4,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3374 if (JS_IsUndefined(new_target)) { - c0049c84: 08e79563 bne a5,a4,c0049d0e + c0049e54: 08e79563 bne a5,a4,c0049ede /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3375 proto = JS_GetClassProto(ctx, js_worker_class_id); - c0049c88: 000b7597 auipc a1,0xb7 - c0049c8c: 4745a583 lw a1,1140(a1) # c01010fc - c0049c90: a52bd0ef jal ra,c0006ee2 - c0049c94: f02a sd a0,32(sp) - c0049c96: f42e sd a1,40(sp) + c0049e58: 000b7597 auipc a1,0xb7 + c0049e5c: 2a45a583 lw a1,676(a1) # c01010fc + c0049e60: 970bd0ef jal ra,c0006fd0 + c0049e64: f02a sd a0,32(sp) + c0049e66: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3381 obj = JS_NewObjectProtoClass(ctx, proto, js_worker_class_id); - c0049c98: 7622 ld a2,40(sp) - c0049c9a: 7582 ld a1,32(sp) - c0049c9c: 000b7697 auipc a3,0xb7 - c0049ca0: 4606a683 lw a3,1120(a3) # c01010fc - c0049ca4: 8526 mv a0,s1 - c0049ca6: ae3cc0ef jal ra,c0016788 - c0049caa: 842e mv s0,a1 - c0049cac: ec2e sd a1,24(sp) + c0049e68: 7622 ld a2,40(sp) + c0049e6a: 7582 ld a1,32(sp) + c0049e6c: 000b7697 auipc a3,0xb7 + c0049e70: 2906a683 lw a3,656(a3) # c01010fc + c0049e74: 8526 mv a0,s1 + c0049e76: ae3cc0ef jal ra,c0016958 + c0049e7a: 842e mv s0,a1 + c0049e7c: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3382 JS_FreeValue(ctx, proto); - c0049cae: 7622 ld a2,40(sp) - c0049cb0: 7582 ld a1,32(sp) + c0049e7e: 7622 ld a2,40(sp) + c0049e80: 7582 ld a1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3381 obj = JS_NewObjectProtoClass(ctx, proto, js_worker_class_id); - c0049cb2: e82a sd a0,16(sp) + c0049e82: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3382 JS_FreeValue(ctx, proto); - c0049cb4: 8526 mv a0,s1 - c0049cb6: e56fe0ef jal ra,c004830c + c0049e84: 8526 mv a0,s1 + c0049e86: e56fe0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3383 if (JS_IsException(obj)) - c0049cba: 0004071b sext.w a4,s0 - c0049cbe: 4799 li a5,6 - c0049cc0: 06f70463 beq a4,a5,c0049d28 + c0049e8a: 0004071b sext.w a4,s0 + c0049e8e: 4799 li a5,6 + c0049e90: 06f70463 beq a4,a5,c0049ef8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3385 s = js_mallocz(ctx, sizeof(*s)); - c0049cc4: 45e1 li a1,24 - c0049cc6: 8526 mv a0,s1 - c0049cc8: 814cc0ef jal ra,c0015cdc - c0049ccc: 892a mv s2,a0 + c0049e94: 45e1 li a1,24 + c0049e96: 8526 mv a0,s1 + c0049e98: 814cc0ef jal ra,c0015eac + c0049e9c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3386 if (!s) - c0049cce: cd29 beqz a0,c0049d28 + c0049e9e: cd29 beqz a0,c0049ef8 js_dup_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3251 atomic_add_int(&ps->ref_count, 1); - c0049cd0: 4585 li a1,1 - c0049cd2: 8552 mv a0,s4 - c0049cd4: e23ff0ef jal ra,c0049af6 - c0049cd8: 4585 li a1,1 + c0049ea0: 4585 li a1,1 + c0049ea2: 8552 mv a0,s4 + c0049ea4: e23ff0ef jal ra,c0049cc6 + c0049ea8: 4585 li a1,1 js_worker_ctor_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3388 s->recv_pipe = js_dup_message_pipe(recv_pipe); - c0049cda: 01493023 sd s4,0(s2) + c0049eaa: 01493023 sd s4,0(s2) js_dup_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3251 atomic_add_int(&ps->ref_count, 1); - c0049cde: 854e mv a0,s3 - c0049ce0: e17ff0ef jal ra,c0049af6 + c0049eae: 854e mv a0,s3 + c0049eb0: e17ff0ef jal ra,c0049cc6 js_worker_ctor_internal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3391 JS_SetOpaque(obj, s); - c0049ce4: 6542 ld a0,16(sp) - c0049ce6: 65e2 ld a1,24(sp) + c0049eb4: 6542 ld a0,16(sp) + c0049eb6: 65e2 ld a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3389 s->send_pipe = js_dup_message_pipe(send_pipe); - c0049ce8: 01393423 sd s3,8(s2) + c0049eb8: 01393423 sd s3,8(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3391 JS_SetOpaque(obj, s); - c0049cec: 864a mv a2,s2 - c0049cee: bb5c00ef jal ra,c000a8a2 + c0049ebc: 864a mv a2,s2 + c0049ebe: ad3c00ef jal ra,c000a990 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3392 return obj; - c0049cf2: 67c2 ld a5,16(sp) - c0049cf4: f83e sd a5,48(sp) - c0049cf6: 67e2 ld a5,24(sp) + c0049ec2: 67c2 ld a5,16(sp) + c0049ec4: f83e sd a5,48(sp) + c0049ec6: 67e2 ld a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3396 } - c0049cf8: 70a6 ld ra,104(sp) - c0049cfa: 7406 ld s0,96(sp) + c0049ec8: 70a6 ld ra,104(sp) + c0049eca: 7406 ld s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3395 return JS_EXCEPTION; - c0049cfc: fc3e sd a5,56(sp) + c0049ecc: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3396 } - c0049cfe: 7542 ld a0,48(sp) - c0049d00: 75e2 ld a1,56(sp) - c0049d02: 64e6 ld s1,88(sp) - c0049d04: 6946 ld s2,80(sp) - c0049d06: 69a6 ld s3,72(sp) - c0049d08: 6a06 ld s4,64(sp) - c0049d0a: 6165 addi sp,sp,112 - c0049d0c: 8082 ret + c0049ece: 7542 ld a0,48(sp) + c0049ed0: 75e2 ld a1,56(sp) + c0049ed2: 64e6 ld s1,88(sp) + c0049ed4: 6946 ld s2,80(sp) + c0049ed6: 69a6 ld s3,72(sp) + c0049ed8: 6a06 ld s4,64(sp) + c0049eda: 6165 addi sp,sp,112 + c0049edc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3377 proto = JS_GetPropertyStr(ctx, new_target, "prototype"); - c0049d0e: 00027697 auipc a3,0x27 - c0049d12: d6268693 addi a3,a3,-670 # c0070a70 - c0049d16: 8efcf0ef jal ra,c0019604 - c0049d1a: f42e sd a1,40(sp) - c0049d1c: f02a sd a0,32(sp) + c0049ede: 00027697 auipc a3,0x27 + c0049ee2: df268693 addi a3,a3,-526 # c0070cd0 + c0049ee6: 8efcf0ef jal ra,c00197d4 + c0049eea: f42e sd a1,40(sp) + c0049eec: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3378 if (JS_IsException(proto)) - c0049d1e: 2581 sext.w a1,a1 - c0049d20: 4799 li a5,6 - c0049d22: f6f59be3 bne a1,a5,c0049c98 + c0049eee: 2581 sext.w a1,a1 + c0049ef0: 4799 li a5,6 + c0049ef2: f6f59be3 bne a1,a5,c0049e68 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3370 JSValue obj = JS_UNDEFINED, proto; - c0049d26: 440d li s0,3 + c0049ef6: 440d li s0,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3394 JS_FreeValue(ctx, obj); - c0049d28: 65c2 ld a1,16(sp) - c0049d2a: 8622 mv a2,s0 - c0049d2c: 8526 mv a0,s1 - c0049d2e: ddefe0ef jal ra,c004830c + c0049ef8: 65c2 ld a1,16(sp) + c0049efa: 8622 mv a2,s0 + c0049efc: 8526 mv a0,s1 + c0049efe: ddefe0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3395 return JS_EXCEPTION; - c0049d32: 4799 li a5,6 - c0049d34: f802 sd zero,48(sp) - c0049d36: b7c9 j c0049cf8 + c0049f02: 4799 li a5,6 + c0049f04: f802 sd zero,48(sp) + c0049f06: b7c9 j c0049ec8 -00000000c0049d38 : +00000000c0049f08 : js_os_init(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3715 JS_CFUNC_DEF("dup2", 2, js_os_dup2 ), @@ -202340,1700 +202538,1700 @@ js_os_init(): static int js_os_init(JSContext *ctx, JSModuleDef *m) { - c0049d38: 7159 addi sp,sp,-112 + c0049f08: 7159 addi sp,sp,-112 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3716 os_poll_func = js_os_poll; - c0049d3a: 00003797 auipc a5,0x3 - c0049d3e: 8f878793 addi a5,a5,-1800 # c004c632 + c0049f0a: 00003797 auipc a5,0x3 + c0049f0e: 8f878793 addi a5,a5,-1800 # c004c802 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3715 { - c0049d42: f486 sd ra,104(sp) + c0049f12: f486 sd ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3716 os_poll_func = js_os_poll; - c0049d44: 000b7717 auipc a4,0xb7 - c0049d48: 3cf73623 sd a5,972(a4) # c0101110 + c0049f14: 000b7717 auipc a4,0xb7 + c0049f18: 1ef73e23 sd a5,508(a4) # c0101110 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3715 { - c0049d4c: f0a2 sd s0,96(sp) - c0049d4e: eca6 sd s1,88(sp) - c0049d50: 842a mv s0,a0 - c0049d52: 84ae mv s1,a1 - c0049d54: e8ca sd s2,80(sp) - c0049d56: e4ce sd s3,72(sp) + c0049f1c: f0a2 sd s0,96(sp) + c0049f1e: eca6 sd s1,88(sp) + c0049f20: 842a mv s0,a0 + c0049f22: 84ae mv s1,a1 + c0049f24: e8ca sd s2,80(sp) + c0049f26: e4ce sd s3,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3720 #ifdef USE_WORKER { JSRuntime *rt = JS_GetRuntime(ctx); - c0049d58: 9c6bd0ef jal ra,c0006f1e + c0049f28: 8e4bd0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3721 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c0049d5c: 92abd0ef jal ra,c0006e86 + c0049f2c: 848bd0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3724 JSValue proto, obj; /* Worker class */ JS_NewClassID(&js_worker_class_id); - c0049d60: 000b7997 auipc s3,0xb7 - c0049d64: 39c98993 addi s3,s3,924 # c01010fc + c0049f30: 000b7997 auipc s3,0xb7 + c0049f34: 1cc98993 addi s3,s3,460 # c01010fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3721 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c0049d68: 892a mv s2,a0 + c0049f38: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3724 JS_NewClassID(&js_worker_class_id); - c0049d6a: 854e mv a0,s3 - c0049d6c: d17bd0ef jal ra,c0007a82 + c0049f3a: 854e mv a0,s3 + c0049f3c: c35bd0ef jal ra,c0007b70 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3725 JS_NewClass(JS_GetRuntime(ctx), js_worker_class_id, &js_worker_class); - c0049d70: 8522 mv a0,s0 - c0049d72: 9acbd0ef jal ra,c0006f1e - c0049d76: 0009a583 lw a1,0(s3) - c0049d7a: 000b7617 auipc a2,0xb7 - c0049d7e: 2ae60613 addi a2,a2,686 # c0101028 - c0049d82: d3dbd0ef jal ra,c0007abe + c0049f40: 8522 mv a0,s0 + c0049f42: 8cabd0ef jal ra,c000700c + c0049f46: 0009a583 lw a1,0(s3) + c0049f4a: 000b7617 auipc a2,0xb7 + c0049f4e: 0de60613 addi a2,a2,222 # c0101028 + c0049f52: c5bbd0ef jal ra,c0007bac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3726 proto = JS_NewObject(ctx); - c0049d86: 8522 mv a0,s0 - c0049d88: 800cd0ef jal ra,c0016d88 - c0049d8c: 862e mv a2,a1 - c0049d8e: e02a sd a0,0(sp) - c0049d90: e42e sd a1,8(sp) + c0049f56: 8522 mv a0,s0 + c0049f58: 800cd0ef jal ra,c0016f58 + c0049f5c: 862e mv a2,a1 + c0049f5e: e02a sd a0,0(sp) + c0049f60: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3727 JS_SetPropertyFunctionList(ctx, proto, js_worker_proto_funcs, countof(js_worker_proto_funcs)); - c0049d92: 4709 li a4,2 - c0049d94: 85aa mv a1,a0 - c0049d96: 00028697 auipc a3,0x28 - c0049d9a: 52a68693 addi a3,a3,1322 # c00722c0 - c0049d9e: 8522 mv a0,s0 - c0049da0: ee1eb0ef jal ra,c0035c80 + c0049f62: 4709 li a4,2 + c0049f64: 85aa mv a1,a0 + c0049f66: 00028697 auipc a3,0x28 + c0049f6a: 5ba68693 addi a3,a3,1466 # c0072520 + c0049f6e: 8522 mv a0,s0 + c0049f70: ee1eb0ef jal ra,c0035e50 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3729 obj = JS_NewCFunction2(ctx, js_worker_ctor, "Worker", 1, - c0049da4: 4781 li a5,0 - c0049da6: 4709 li a4,2 - c0049da8: 4685 li a3,1 - c0049daa: 00027617 auipc a2,0x27 - c0049dae: cd660613 addi a2,a2,-810 # c0070a80 - c0049db2: 00000597 auipc a1,0x0 - c0049db6: 6c458593 addi a1,a1,1732 # c004a476 - c0049dba: 8522 mv a0,s0 - c0049dbc: c2adf0ef jal ra,c00291e6 + c0049f74: 4781 li a5,0 + c0049f76: 4709 li a4,2 + c0049f78: 4685 li a3,1 + c0049f7a: 00027617 auipc a2,0x27 + c0049f7e: d6660613 addi a2,a2,-666 # c0070ce0 + c0049f82: 00000597 auipc a1,0x0 + c0049f86: 6c458593 addi a1,a1,1732 # c004a646 + c0049f8a: 8522 mv a0,s0 + c0049f8c: c2adf0ef jal ra,c00293b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3731 JS_CFUNC_constructor, 0); JS_SetConstructor(ctx, obj, proto); - c0049dc0: 6682 ld a3,0(sp) - c0049dc2: 6722 ld a4,8(sp) + c0049f90: 6682 ld a3,0(sp) + c0049f92: 6722 ld a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3729 obj = JS_NewCFunction2(ctx, js_worker_ctor, "Worker", 1, - c0049dc4: 862e mv a2,a1 - c0049dc6: e82a sd a0,16(sp) - c0049dc8: ec2e sd a1,24(sp) + c0049f94: 862e mv a2,a1 + c0049f96: e82a sd a0,16(sp) + c0049f98: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3731 JS_SetConstructor(ctx, obj, proto); - c0049dca: 85aa mv a1,a0 - c0049dcc: 8522 mv a0,s0 - c0049dce: c4fdf0ef jal ra,c0029a1c + c0049f9a: 85aa mv a1,a0 + c0049f9c: 8522 mv a0,s0 + c0049f9e: c4fdf0ef jal ra,c0029bec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3733 JS_SetClassProto(ctx, js_worker_class_id, proto); - c0049dd2: 66a2 ld a3,8(sp) - c0049dd4: 6602 ld a2,0(sp) - c0049dd6: 0009a583 lw a1,0(s3) - c0049dda: 8522 mv a0,s0 - c0049ddc: 9babe0ef jal ra,c0007f96 + c0049fa2: 66a2 ld a3,8(sp) + c0049fa4: 6602 ld a2,0(sp) + c0049fa6: 0009a583 lw a1,0(s3) + c0049faa: 8522 mv a0,s0 + c0049fac: 8d8be0ef jal ra,c0008084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3736 /* set 'Worker.parent' if necessary */ if (ts->recv_pipe && ts->send_pipe) { - c0049de0: 04893683 ld a3,72(s2) - c0049de4: c68d beqz a3,c0049e0e + c0049fb0: 04893683 ld a3,72(s2) + c0049fb4: c68d beqz a3,c0049fde /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3736 (discriminator 1) - c0049de6: 05093703 ld a4,80(s2) - c0049dea: c315 beqz a4,c0049e0e + c0049fb6: 05093703 ld a4,80(s2) + c0049fba: c315 beqz a4,c0049fde /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3737 JS_DefinePropertyValueStr(ctx, obj, "parent", - c0049dec: 460d li a2,3 - c0049dee: 4581 li a1,0 - c0049df0: 8522 mv a0,s0 - c0049df2: e77ff0ef jal ra,c0049c68 - c0049df6: 87ae mv a5,a1 - c0049df8: 6662 ld a2,24(sp) - c0049dfa: 65c2 ld a1,16(sp) - c0049dfc: 872a mv a4,a0 - c0049dfe: 481d li a6,7 - c0049e00: 00027697 auipc a3,0x27 - c0049e04: c8868693 addi a3,a3,-888 # c0070a88 - c0049e08: 8522 mv a0,s0 - c0049e0a: 94fdf0ef jal ra,c0029758 + c0049fbc: 460d li a2,3 + c0049fbe: 4581 li a1,0 + c0049fc0: 8522 mv a0,s0 + c0049fc2: e77ff0ef jal ra,c0049e38 + c0049fc6: 87ae mv a5,a1 + c0049fc8: 6662 ld a2,24(sp) + c0049fca: 65c2 ld a1,16(sp) + c0049fcc: 872a mv a4,a0 + c0049fce: 481d li a6,7 + c0049fd0: 00027697 auipc a3,0x27 + c0049fd4: d1868693 addi a3,a3,-744 # c0070ce8 + c0049fd8: 8522 mv a0,s0 + c0049fda: 94fdf0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3742 js_worker_ctor_internal(ctx, JS_UNDEFINED, ts->recv_pipe, ts->send_pipe), JS_PROP_C_W_E); } JS_SetModuleExport(ctx, m, "Worker", obj); - c0049e0e: 66c2 ld a3,16(sp) - c0049e10: 6762 ld a4,24(sp) - c0049e12: 85a6 mv a1,s1 - c0049e14: 00027617 auipc a2,0x27 - c0049e18: c6c60613 addi a2,a2,-916 # c0070a80 - c0049e1c: 8522 mv a0,s0 - c0049e1e: 859cf0ef jal ra,c0019676 + c0049fde: 66c2 ld a3,16(sp) + c0049fe0: 6762 ld a4,24(sp) + c0049fe2: 85a6 mv a1,s1 + c0049fe4: 00027617 auipc a2,0x27 + c0049fe8: cfc60613 addi a2,a2,-772 # c0070ce0 + c0049fec: 8522 mv a0,s0 + c0049fee: 859cf0ef jal ra,c0019846 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3746 } #endif /* USE_WORKER */ return JS_SetModuleExportList(ctx, m, js_os_funcs, - c0049e22: 8522 mv a0,s0 + c0049ff2: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3748 countof(js_os_funcs)); } - c0049e24: 7406 ld s0,96(sp) - c0049e26: 70a6 ld ra,104(sp) - c0049e28: 6946 ld s2,80(sp) - c0049e2a: 69a6 ld s3,72(sp) + c0049ff4: 7406 ld s0,96(sp) + c0049ff6: 70a6 ld ra,104(sp) + c0049ff8: 6946 ld s2,80(sp) + c0049ffa: 69a6 ld s3,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3746 return JS_SetModuleExportList(ctx, m, js_os_funcs, - c0049e2c: 85a6 mv a1,s1 + c0049ffc: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3748 } - c0049e2e: 64e6 ld s1,88(sp) + c0049ffe: 64e6 ld s1,88(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3746 return JS_SetModuleExportList(ctx, m, js_os_funcs, - c0049e30: 04700693 li a3,71 - c0049e34: 00027617 auipc a2,0x27 - c0049e38: 54c60613 addi a2,a2,1356 # c0071380 + c004a000: 04700693 li a3,71 + c004a004: 00027617 auipc a2,0x27 + c004a008: 5dc60613 addi a2,a2,1500 # c00715e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3748 } - c0049e3c: 6165 addi sp,sp,112 + c004a00c: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3746 return JS_SetModuleExportList(ctx, m, js_os_funcs, - c0049e3e: 8e6ec06f j c0035f24 + c004a00e: 8e6ec06f j c00360f4 -00000000c0049e42 : +00000000c004a012 : js_get_errno(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:818 if (ret == -1) - c0049e42: 57fd li a5,-1 - c0049e44: 00f51c63 bne a0,a5,c0049e5c + c004a012: 57fd li a5,-1 + c004a014: 00f51c63 bne a0,a5,c004a02c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:817 { - c0049e48: 1141 addi sp,sp,-16 - c0049e4a: e406 sd ra,8(sp) + c004a018: 1141 addi sp,sp,-16 + c004a01a: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:819 ret = -errno; - c0049e4c: 489090ef jal ra,c0053ad4 <__errno> - c0049e50: 4108 lw a0,0(a0) + c004a01c: 489090ef jal ra,c0053ca4 <__errno> + c004a020: 4108 lw a0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:821 } - c0049e52: 60a2 ld ra,8(sp) + c004a022: 60a2 ld ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:819 ret = -errno; - c0049e54: 40a0053b negw a0,a0 + c004a024: 40a0053b negw a0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:821 } - c0049e58: 0141 addi sp,sp,16 - c0049e5a: 8082 ret - c0049e5c: 8082 ret + c004a028: 0141 addi sp,sp,16 + c004a02a: 8082 ret + c004a02c: 8082 ret -00000000c0049e5e : +00000000c004a02e : js_std_file_close(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1044 { - c0049e5e: 715d addi sp,sp,-80 + c004a02e: 715d addi sp,sp,-80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1045 JSSTDFile *s = JS_GetOpaque2(ctx, this_val, js_std_file_class_id); - c0049e60: 000b7697 auipc a3,0xb7 - c0049e64: 2986a683 lw a3,664(a3) # c01010f8 + c004a030: 000b7697 auipc a3,0xb7 + c004a034: 0c86a683 lw a3,200(a3) # c01010f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1044 { - c0049e68: fc26 sd s1,56(sp) - c0049e6a: e486 sd ra,72(sp) - c0049e6c: e0a2 sd s0,64(sp) - c0049e6e: 84aa mv s1,a0 - c0049e70: e02e sd a1,0(sp) - c0049e72: e432 sd a2,8(sp) + c004a038: fc26 sd s1,56(sp) + c004a03a: e486 sd ra,72(sp) + c004a03c: e0a2 sd s0,64(sp) + c004a03e: 84aa mv s1,a0 + c004a040: e02e sd a1,0(sp) + c004a042: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1045 JSSTDFile *s = JS_GetOpaque2(ctx, this_val, js_std_file_class_id); - c0049e74: f04c90ef jal ra,c0013578 + c004a044: e22c90ef jal ra,c0013666 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1047 if (!s) - c0049e78: e919 bnez a0,c0049e8e + c004a048: e919 bnez a0,c004a05e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1048 return JS_EXCEPTION; - c0049e7a: 4799 li a5,6 - c0049e7c: e802 sd zero,16(sp) - c0049e7e: ec3e sd a5,24(sp) + c004a04a: 4799 li a5,6 + c004a04c: e802 sd zero,16(sp) + c004a04e: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1057 (discriminator 1) } - c0049e80: 60a6 ld ra,72(sp) - c0049e82: 6406 ld s0,64(sp) - c0049e84: 6542 ld a0,16(sp) - c0049e86: 65e2 ld a1,24(sp) - c0049e88: 74e2 ld s1,56(sp) - c0049e8a: 6161 addi sp,sp,80 - c0049e8c: 8082 ret - c0049e8e: 842a mv s0,a0 + c004a050: 60a6 ld ra,72(sp) + c004a052: 6406 ld s0,64(sp) + c004a054: 6542 ld a0,16(sp) + c004a056: 65e2 ld a1,24(sp) + c004a058: 74e2 ld s1,56(sp) + c004a05a: 6161 addi sp,sp,80 + c004a05c: 8082 ret + c004a05e: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1049 if (!s->f) - c0049e90: 6108 ld a0,0(a0) - c0049e92: ed01 bnez a0,c0049eaa + c004a060: 6108 ld a0,0(a0) + c004a062: ed01 bnez a0,c004a07a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1057 } - c0049e94: 6406 ld s0,64(sp) - c0049e96: 60a6 ld ra,72(sp) + c004a064: 6406 ld s0,64(sp) + c004a066: 60a6 ld ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1050 return JS_ThrowTypeError(ctx, "invalid file handle"); - c0049e98: 8526 mv a0,s1 + c004a068: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1057 } - c0049e9a: 74e2 ld s1,56(sp) + c004a06a: 74e2 ld s1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1050 return JS_ThrowTypeError(ctx, "invalid file handle"); - c0049e9c: 00027597 auipc a1,0x27 - c0049ea0: b4c58593 addi a1,a1,-1204 # c00709e8 + c004a06c: 00027597 auipc a1,0x27 + c004a070: bdc58593 addi a1,a1,-1060 # c0070c48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1057 } - c0049ea4: 6161 addi sp,sp,80 + c004a074: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1050 return JS_ThrowTypeError(ctx, "invalid file handle"); - c0049ea6: d50c906f j c00133f6 + c004a076: c6ec906f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1051 if (s->is_popen) - c0049eaa: 445c lw a5,12(s0) - c0049eac: cf99 beqz a5,c0049eca + c004a07a: 445c lw a5,12(s0) + c004a07c: cf99 beqz a5,c004a09a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1052 err = js_get_errno(pclose(s->f)); - c0049eae: 6dd080ef jal ra,c0052d8a + c004a07e: 6dd080ef jal ra,c0052f5a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1054 err = js_get_errno(fclose(s->f)); - c0049eb2: f91ff0ef jal ra,c0049e42 - c0049eb6: 0005079b sext.w a5,a0 + c004a082: f91ff0ef jal ra,c004a012 + c004a086: 0005079b sext.w a5,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c0049eba: d202 sw zero,36(sp) - c0049ebc: d03e sw a5,32(sp) - c0049ebe: 7782 ld a5,32(sp) + c004a08a: d202 sw zero,36(sp) + c004a08c: d03e sw a5,32(sp) + c004a08e: 7782 ld a5,32(sp) js_std_file_close(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1055 s->f = NULL; - c0049ec0: 00043023 sd zero,0(s0) + c004a090: 00043023 sd zero,0(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049ec4: ec02 sd zero,24(sp) - c0049ec6: e83e sd a5,16(sp) - c0049ec8: bf65 j c0049e80 + c004a094: ec02 sd zero,24(sp) + c004a096: e83e sd a5,16(sp) + c004a098: bf65 j c004a050 js_std_file_close(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1054 err = js_get_errno(fclose(s->f)); - c0049eca: 21e0b0ef jal ra,c00550e8 - c0049ece: b7d5 j c0049eb2 + c004a09a: 21e0b0ef jal ra,c00552b8 + c004a09e: b7d5 j c004a082 -00000000c0049ed0 : +00000000c004a0a0 : js_os_dup2(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3158 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049ed0: 6310 ld a2,0(a4) - c0049ed2: 6714 ld a3,8(a4) + c004a0a0: 6310 ld a2,0(a4) + c004a0a2: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3155 { - c0049ed4: 711d addi sp,sp,-96 + c004a0a4: 711d addi sp,sp,-96 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3158 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049ed6: 082c addi a1,sp,24 + c004a0a6: 082c addi a1,sp,24 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3155 { - c0049ed8: e8a2 sd s0,80(sp) - c0049eda: e4a6 sd s1,72(sp) - c0049edc: ec86 sd ra,88(sp) - c0049ede: 84aa mv s1,a0 - c0049ee0: 843a mv s0,a4 + c004a0a8: e8a2 sd s0,80(sp) + c004a0aa: e4a6 sd s1,72(sp) + c004a0ac: ec86 sd ra,88(sp) + c004a0ae: 84aa mv s1,a0 + c004a0b0: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3158 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049ee2: c8cd20ef jal ra,c001c36e - c0049ee6: c919 beqz a0,c0049efc + c004a0b2: c8cd20ef jal ra,c001c53e + c004a0b6: c919 beqz a0,c004a0cc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3159 return JS_EXCEPTION; - c0049ee8: 4799 li a5,6 - c0049eea: f002 sd zero,32(sp) - c0049eec: f43e sd a5,40(sp) + c004a0b8: 4799 li a5,6 + c004a0ba: f002 sd zero,32(sp) + c004a0bc: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3164 (discriminator 1) } - c0049eee: 60e6 ld ra,88(sp) - c0049ef0: 6446 ld s0,80(sp) - c0049ef2: 7502 ld a0,32(sp) - c0049ef4: 75a2 ld a1,40(sp) - c0049ef6: 64a6 ld s1,72(sp) - c0049ef8: 6125 addi sp,sp,96 - c0049efa: 8082 ret + c004a0be: 60e6 ld ra,88(sp) + c004a0c0: 6446 ld s0,80(sp) + c004a0c2: 7502 ld a0,32(sp) + c004a0c4: 75a2 ld a1,40(sp) + c004a0c6: 64a6 ld s1,72(sp) + c004a0c8: 6125 addi sp,sp,96 + c004a0ca: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3160 if (JS_ToInt32(ctx, &fd2, argv[1])) - c0049efc: 6810 ld a2,16(s0) - c0049efe: 6c14 ld a3,24(s0) - c0049f00: 086c addi a1,sp,28 - c0049f02: 8526 mv a0,s1 - c0049f04: c6ad20ef jal ra,c001c36e - c0049f08: f165 bnez a0,c0049ee8 + c004a0cc: 6810 ld a2,16(s0) + c004a0ce: 6c14 ld a3,24(s0) + c004a0d0: 086c addi a1,sp,28 + c004a0d2: 8526 mv a0,s1 + c004a0d4: c6ad20ef jal ra,c001c53e + c004a0d8: f165 bnez a0,c004a0b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3162 ret = js_get_errno(dup2(fd, fd2)); - c0049f0a: 45f2 lw a1,28(sp) - c0049f0c: 4562 lw a0,24(sp) - c0049f0e: 3f40d0ef jal ra,c0057302 - c0049f12: f31ff0ef jal ra,c0049e42 - c0049f16: d82a sw a0,48(sp) + c004a0da: 45f2 lw a1,28(sp) + c004a0dc: 4562 lw a0,24(sp) + c004a0de: 3f40d0ef jal ra,c00574d2 + c004a0e2: f31ff0ef jal ra,c004a012 + c004a0e6: d82a sw a0,48(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049f18: da02 sw zero,52(sp) - c0049f1a: 77c2 ld a5,48(sp) - c0049f1c: f402 sd zero,40(sp) - c0049f1e: f03e sd a5,32(sp) - c0049f20: b7f9 j c0049eee + c004a0e8: da02 sw zero,52(sp) + c004a0ea: 77c2 ld a5,48(sp) + c004a0ec: f402 sd zero,40(sp) + c004a0ee: f03e sd a5,32(sp) + c004a0f0: b7f9 j c004a0be -00000000c0049f22 : +00000000c004a0f2 : js_os_dup(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3146 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049f22: 6310 ld a2,0(a4) - c0049f24: 6714 ld a3,8(a4) + c004a0f2: 6310 ld a2,0(a4) + c004a0f4: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3143 { - c0049f26: 715d addi sp,sp,-80 + c004a0f6: 715d addi sp,sp,-80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3146 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049f28: 086c addi a1,sp,28 + c004a0f8: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3143 { - c0049f2a: e486 sd ra,72(sp) + c004a0fa: e486 sd ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3146 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049f2c: c42d20ef jal ra,c001c36e - c0049f30: c909 beqz a0,c0049f42 + c004a0fc: c42d20ef jal ra,c001c53e + c004a100: c909 beqz a0,c004a112 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3147 return JS_EXCEPTION; - c0049f32: 4799 li a5,6 - c0049f34: f002 sd zero,32(sp) - c0049f36: f43e sd a5,40(sp) + c004a102: 4799 li a5,6 + c004a104: f002 sd zero,32(sp) + c004a106: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3150 (discriminator 1) } - c0049f38: 60a6 ld ra,72(sp) - c0049f3a: 7502 ld a0,32(sp) - c0049f3c: 75a2 ld a1,40(sp) - c0049f3e: 6161 addi sp,sp,80 - c0049f40: 8082 ret + c004a108: 60a6 ld ra,72(sp) + c004a10a: 7502 ld a0,32(sp) + c004a10c: 75a2 ld a1,40(sp) + c004a10e: 6161 addi sp,sp,80 + c004a110: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3148 ret = js_get_errno(dup(fd)); - c0049f42: 4572 lw a0,28(sp) - c0049f44: 3ae0d0ef jal ra,c00572f2 - c0049f48: efbff0ef jal ra,c0049e42 - c0049f4c: d82a sw a0,48(sp) + c004a112: 4572 lw a0,28(sp) + c004a114: 3ae0d0ef jal ra,c00574c2 + c004a118: efbff0ef jal ra,c004a012 + c004a11c: d82a sw a0,48(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049f4e: da02 sw zero,52(sp) - c0049f50: 77c2 ld a5,48(sp) - c0049f52: f402 sd zero,40(sp) - c0049f54: f03e sd a5,32(sp) - c0049f56: b7cd j c0049f38 + c004a11e: da02 sw zero,52(sp) + c004a120: 77c2 ld a5,48(sp) + c004a122: f402 sd zero,40(sp) + c004a124: f03e sd a5,32(sp) + c004a126: b7cd j c004a108 -00000000c0049f58 : +00000000c004a128 : js_os_kill(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3132 if (JS_ToInt32(ctx, &pid, argv[0])) - c0049f58: 6310 ld a2,0(a4) - c0049f5a: 6714 ld a3,8(a4) + c004a128: 6310 ld a2,0(a4) + c004a12a: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3129 { - c0049f5c: 711d addi sp,sp,-96 + c004a12c: 711d addi sp,sp,-96 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3132 if (JS_ToInt32(ctx, &pid, argv[0])) - c0049f5e: 082c addi a1,sp,24 + c004a12e: 082c addi a1,sp,24 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3129 { - c0049f60: e8a2 sd s0,80(sp) - c0049f62: e4a6 sd s1,72(sp) - c0049f64: ec86 sd ra,88(sp) - c0049f66: 84aa mv s1,a0 - c0049f68: 843a mv s0,a4 + c004a130: e8a2 sd s0,80(sp) + c004a132: e4a6 sd s1,72(sp) + c004a134: ec86 sd ra,88(sp) + c004a136: 84aa mv s1,a0 + c004a138: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3132 if (JS_ToInt32(ctx, &pid, argv[0])) - c0049f6a: c04d20ef jal ra,c001c36e - c0049f6e: c919 beqz a0,c0049f84 + c004a13a: c04d20ef jal ra,c001c53e + c004a13e: c919 beqz a0,c004a154 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3133 return JS_EXCEPTION; - c0049f70: 4799 li a5,6 - c0049f72: f002 sd zero,32(sp) - c0049f74: f43e sd a5,40(sp) + c004a140: 4799 li a5,6 + c004a142: f002 sd zero,32(sp) + c004a144: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3138 (discriminator 1) } - c0049f76: 60e6 ld ra,88(sp) - c0049f78: 6446 ld s0,80(sp) - c0049f7a: 7502 ld a0,32(sp) - c0049f7c: 75a2 ld a1,40(sp) - c0049f7e: 64a6 ld s1,72(sp) - c0049f80: 6125 addi sp,sp,96 - c0049f82: 8082 ret + c004a146: 60e6 ld ra,88(sp) + c004a148: 6446 ld s0,80(sp) + c004a14a: 7502 ld a0,32(sp) + c004a14c: 75a2 ld a1,40(sp) + c004a14e: 64a6 ld s1,72(sp) + c004a150: 6125 addi sp,sp,96 + c004a152: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3134 if (JS_ToInt32(ctx, &sig, argv[1])) - c0049f84: 6810 ld a2,16(s0) - c0049f86: 6c14 ld a3,24(s0) - c0049f88: 086c addi a1,sp,28 - c0049f8a: 8526 mv a0,s1 - c0049f8c: be2d20ef jal ra,c001c36e - c0049f90: f165 bnez a0,c0049f70 + c004a154: 6810 ld a2,16(s0) + c004a156: 6c14 ld a3,24(s0) + c004a158: 086c addi a1,sp,28 + c004a15a: 8526 mv a0,s1 + c004a15c: be2d20ef jal ra,c001c53e + c004a160: f165 bnez a0,c004a140 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3136 ret = js_get_errno(kill(pid, sig)); - c0049f92: 45f2 lw a1,28(sp) - c0049f94: 4562 lw a0,24(sp) - c0049f96: 4260d0ef jal ra,c00573bc - c0049f9a: ea9ff0ef jal ra,c0049e42 - c0049f9e: d82a sw a0,48(sp) + c004a162: 45f2 lw a1,28(sp) + c004a164: 4562 lw a0,24(sp) + c004a166: 4260d0ef jal ra,c005758c + c004a16a: ea9ff0ef jal ra,c004a012 + c004a16e: d82a sw a0,48(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049fa0: da02 sw zero,52(sp) - c0049fa2: 77c2 ld a5,48(sp) - c0049fa4: f402 sd zero,40(sp) - c0049fa6: f03e sd a5,32(sp) - c0049fa8: b7f9 j c0049f76 + c004a170: da02 sw zero,52(sp) + c004a172: 77c2 ld a5,48(sp) + c004a174: f402 sd zero,40(sp) + c004a176: f03e sd a5,32(sp) + c004a178: b7f9 j c004a146 -00000000c0049faa : +00000000c004a17a : js_os_close(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1611 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049faa: 6310 ld a2,0(a4) - c0049fac: 6714 ld a3,8(a4) + c004a17a: 6310 ld a2,0(a4) + c004a17c: 6714 ld a3,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1609 { - c0049fae: 715d addi sp,sp,-80 + c004a17e: 715d addi sp,sp,-80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1611 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049fb0: 086c addi a1,sp,28 + c004a180: 086c addi a1,sp,28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1609 { - c0049fb2: e486 sd ra,72(sp) + c004a182: e486 sd ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1611 if (JS_ToInt32(ctx, &fd, argv[0])) - c0049fb4: bbad20ef jal ra,c001c36e - c0049fb8: c909 beqz a0,c0049fca + c004a184: bbad20ef jal ra,c001c53e + c004a188: c909 beqz a0,c004a19a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1612 return JS_EXCEPTION; - c0049fba: 4799 li a5,6 - c0049fbc: f002 sd zero,32(sp) - c0049fbe: f43e sd a5,40(sp) + c004a18a: 4799 li a5,6 + c004a18c: f002 sd zero,32(sp) + c004a18e: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1615 (discriminator 1) } - c0049fc0: 60a6 ld ra,72(sp) - c0049fc2: 7502 ld a0,32(sp) - c0049fc4: 75a2 ld a1,40(sp) - c0049fc6: 6161 addi sp,sp,80 - c0049fc8: 8082 ret + c004a190: 60a6 ld ra,72(sp) + c004a192: 7502 ld a0,32(sp) + c004a194: 75a2 ld a1,40(sp) + c004a196: 6161 addi sp,sp,80 + c004a198: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1613 ret = js_get_errno(close(fd)); - c0049fca: 4572 lw a0,28(sp) - c0049fcc: 3160d0ef jal ra,c00572e2 - c0049fd0: e73ff0ef jal ra,c0049e42 - c0049fd4: d82a sw a0,48(sp) + c004a19a: 4572 lw a0,28(sp) + c004a19c: 3160d0ef jal ra,c00574b2 + c004a1a0: e73ff0ef jal ra,c004a012 + c004a1a4: d82a sw a0,48(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c0049fd6: da02 sw zero,52(sp) - c0049fd8: 77c2 ld a5,48(sp) - c0049fda: f402 sd zero,40(sp) - c0049fdc: f03e sd a5,32(sp) - c0049fde: b7cd j c0049fc0 + c004a1a6: da02 sw zero,52(sp) + c004a1a8: 77c2 ld a5,48(sp) + c004a1aa: f402 sd zero,40(sp) + c004a1ac: f03e sd a5,32(sp) + c004a1ae: b7cd j c004a190 -00000000c0049fe0 : +00000000c004a1b0 : js_os_chdir(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2431 target = JS_ToCString(ctx, argv[0]); - c0049fe0: 630c ld a1,0(a4) - c0049fe2: 6710 ld a2,8(a4) + c004a1b0: 630c ld a1,0(a4) + c004a1b2: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2427 { - c0049fe4: 711d addi sp,sp,-96 - c0049fe6: e4a6 sd s1,72(sp) - c0049fe8: ec86 sd ra,88(sp) - c0049fea: e8a2 sd s0,80(sp) - c0049fec: 84aa mv s1,a0 + c004a1b4: 711d addi sp,sp,-96 + c004a1b6: e4a6 sd s1,72(sp) + c004a1b8: ec86 sd ra,88(sp) + c004a1ba: e8a2 sd s0,80(sp) + c004a1bc: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2431 target = JS_ToCString(ctx, argv[0]); - c0049fee: b66fe0ef jal ra,c0048354 + c004a1be: b66fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2432 if (!target) - c0049ff2: e919 bnez a0,c004a008 + c004a1c2: e919 bnez a0,c004a1d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2433 return JS_EXCEPTION; - c0049ff4: 4799 li a5,6 - c0049ff6: f002 sd zero,32(sp) - c0049ff8: f43e sd a5,40(sp) + c004a1c4: 4799 li a5,6 + c004a1c6: f002 sd zero,32(sp) + c004a1c8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2437 (discriminator 1) } - c0049ffa: 60e6 ld ra,88(sp) - c0049ffc: 6446 ld s0,80(sp) - c0049ffe: 7502 ld a0,32(sp) - c004a000: 75a2 ld a1,40(sp) - c004a002: 64a6 ld s1,72(sp) - c004a004: 6125 addi sp,sp,96 - c004a006: 8082 ret - c004a008: e42a sd a0,8(sp) + c004a1ca: 60e6 ld ra,88(sp) + c004a1cc: 6446 ld s0,80(sp) + c004a1ce: 7502 ld a0,32(sp) + c004a1d0: 75a2 ld a1,40(sp) + c004a1d2: 64a6 ld s1,72(sp) + c004a1d4: 6125 addi sp,sp,96 + c004a1d6: 8082 ret + c004a1d8: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2434 err = js_get_errno(chdir(target)); - c004a00a: 5e10c0ef jal ra,c0056dea - c004a00e: e35ff0ef jal ra,c0049e42 + c004a1da: 5e10c0ef jal ra,c0056fba + c004a1de: e35ff0ef jal ra,c004a012 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2435 JS_FreeCString(ctx, target); - c004a012: 65a2 ld a1,8(sp) + c004a1e2: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2434 err = js_get_errno(chdir(target)); - c004a014: 842a mv s0,a0 + c004a1e4: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2435 JS_FreeCString(ctx, target); - c004a016: 8526 mv a0,s1 - c004a018: e69be0ef jal ra,c0008e80 + c004a1e6: 8526 mv a0,s1 + c004a1e8: d87be0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a01c: da02 sw zero,52(sp) + c004a1ec: da02 sw zero,52(sp) js_os_chdir(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2434 err = js_get_errno(chdir(target)); - c004a01e: d822 sw s0,48(sp) - c004a020: 77c2 ld a5,48(sp) - c004a022: f402 sd zero,40(sp) - c004a024: f03e sd a5,32(sp) + c004a1ee: d822 sw s0,48(sp) + c004a1f0: 77c2 ld a5,48(sp) + c004a1f2: f402 sd zero,40(sp) + c004a1f4: f03e sd a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a026: bfd1 j c0049ffa + c004a1f6: bfd1 j c004a1ca -00000000c004a028 : +00000000c004a1f8 : js_os_symlink(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2720 target = JS_ToCString(ctx, argv[0]); - c004a028: 630c ld a1,0(a4) - c004a02a: 6710 ld a2,8(a4) + c004a1f8: 630c ld a1,0(a4) + c004a1fa: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2716 { - c004a02c: 711d addi sp,sp,-96 - c004a02e: e8a2 sd s0,80(sp) - c004a030: e0ca sd s2,64(sp) - c004a032: ec86 sd ra,88(sp) - c004a034: e4a6 sd s1,72(sp) - c004a036: fc4e sd s3,56(sp) - c004a038: 842a mv s0,a0 - c004a03a: 893a mv s2,a4 + c004a1fc: 711d addi sp,sp,-96 + c004a1fe: e8a2 sd s0,80(sp) + c004a200: e0ca sd s2,64(sp) + c004a202: ec86 sd ra,88(sp) + c004a204: e4a6 sd s1,72(sp) + c004a206: fc4e sd s3,56(sp) + c004a208: 842a mv s0,a0 + c004a20a: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2720 target = JS_ToCString(ctx, argv[0]); - c004a03c: b18fe0ef jal ra,c0048354 + c004a20c: b18fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2721 if (!target) - c004a040: ed09 bnez a0,c004a05a + c004a210: ed09 bnez a0,c004a22a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2726 return JS_EXCEPTION; - c004a042: 4799 li a5,6 - c004a044: e802 sd zero,16(sp) - c004a046: ec3e sd a5,24(sp) + c004a212: 4799 li a5,6 + c004a214: e802 sd zero,16(sp) + c004a216: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2732 (discriminator 1) } - c004a048: 60e6 ld ra,88(sp) - c004a04a: 6446 ld s0,80(sp) - c004a04c: 6542 ld a0,16(sp) - c004a04e: 65e2 ld a1,24(sp) - c004a050: 64a6 ld s1,72(sp) - c004a052: 6906 ld s2,64(sp) - c004a054: 79e2 ld s3,56(sp) - c004a056: 6125 addi sp,sp,96 - c004a058: 8082 ret + c004a218: 60e6 ld ra,88(sp) + c004a21a: 6446 ld s0,80(sp) + c004a21c: 6542 ld a0,16(sp) + c004a21e: 65e2 ld a1,24(sp) + c004a220: 64a6 ld s1,72(sp) + c004a222: 6906 ld s2,64(sp) + c004a224: 79e2 ld s3,56(sp) + c004a226: 6125 addi sp,sp,96 + c004a228: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2723 linkpath = JS_ToCString(ctx, argv[1]); - c004a05a: 01093583 ld a1,16(s2) - c004a05e: 01893603 ld a2,24(s2) - c004a062: 84aa mv s1,a0 - c004a064: 8522 mv a0,s0 - c004a066: aeefe0ef jal ra,c0048354 - c004a06a: 892a mv s2,a0 + c004a22a: 01093583 ld a1,16(s2) + c004a22e: 01893603 ld a2,24(s2) + c004a232: 84aa mv s1,a0 + c004a234: 8522 mv a0,s0 + c004a236: aeefe0ef jal ra,c0048524 + c004a23a: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2724 if (!linkpath) { - c004a06c: e511 bnez a0,c004a078 + c004a23c: e511 bnez a0,c004a248 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2725 JS_FreeCString(ctx, target); - c004a06e: 85a6 mv a1,s1 - c004a070: 8522 mv a0,s0 - c004a072: e0fbe0ef jal ra,c0008e80 - c004a076: b7f1 j c004a042 + c004a23e: 85a6 mv a1,s1 + c004a240: 8522 mv a0,s0 + c004a242: d2dbe0ef jal ra,c0008f6e + c004a246: b7f1 j c004a212 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2728 err = js_get_errno(symlink(target, linkpath)); - c004a078: 85aa mv a1,a0 - c004a07a: 8526 mv a0,s1 - c004a07c: 567080ef jal ra,c0052de2 - c004a080: dc3ff0ef jal ra,c0049e42 - c004a084: 89aa mv s3,a0 + c004a248: 85aa mv a1,a0 + c004a24a: 8526 mv a0,s1 + c004a24c: 567080ef jal ra,c0052fb2 + c004a250: dc3ff0ef jal ra,c004a012 + c004a254: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2729 JS_FreeCString(ctx, target); - c004a086: 85a6 mv a1,s1 - c004a088: 8522 mv a0,s0 - c004a08a: df7be0ef jal ra,c0008e80 + c004a256: 85a6 mv a1,s1 + c004a258: 8522 mv a0,s0 + c004a25a: d15be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2730 JS_FreeCString(ctx, linkpath); - c004a08e: 85ca mv a1,s2 - c004a090: 8522 mv a0,s0 - c004a092: defbe0ef jal ra,c0008e80 + c004a25e: 85ca mv a1,s2 + c004a260: 8522 mv a0,s0 + c004a262: d0dbe0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a096: d202 sw zero,36(sp) + c004a266: d202 sw zero,36(sp) js_os_symlink(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2728 err = js_get_errno(symlink(target, linkpath)); - c004a098: d04e sw s3,32(sp) - c004a09a: 7782 ld a5,32(sp) - c004a09c: ec02 sd zero,24(sp) - c004a09e: e83e sd a5,16(sp) + c004a268: d04e sw s3,32(sp) + c004a26a: 7782 ld a5,32(sp) + c004a26c: ec02 sd zero,24(sp) + c004a26e: e83e sd a5,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a0a0: b765 j c004a048 + c004a270: b765 j c004a218 -00000000c004a0a2 : +00000000c004a272 : js_os_sleep(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2652 { - c004a0a2: 715d addi sp,sp,-80 - c004a0a4: e486 sd ra,72(sp) + c004a272: 715d addi sp,sp,-80 + c004a274: e486 sd ra,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2656 if (JS_ToInt64(ctx, &delay, argv[0])) - c004a0a6: 6310 ld a2,0(a4) - c004a0a8: 6714 ld a3,8(a4) - c004a0aa: 082c addi a1,sp,24 - c004a0ac: fded40ef jal ra,c001e88a - c004a0b0: c909 beqz a0,c004a0c2 + c004a276: 6310 ld a2,0(a4) + c004a278: 6714 ld a3,8(a4) + c004a27a: 082c addi a1,sp,24 + c004a27c: fded40ef jal ra,c001ea5a + c004a280: c909 beqz a0,c004a292 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2657 return JS_EXCEPTION; - c004a0b2: 4799 li a5,6 - c004a0b4: f002 sd zero,32(sp) - c004a0b6: f43e sd a5,40(sp) + c004a282: 4799 li a5,6 + c004a284: f002 sd zero,32(sp) + c004a286: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2677 (discriminator 1) } - c004a0b8: 60a6 ld ra,72(sp) - c004a0ba: 7502 ld a0,32(sp) - c004a0bc: 75a2 ld a1,40(sp) - c004a0be: 6161 addi sp,sp,80 - c004a0c0: 8082 ret + c004a288: 60a6 ld ra,72(sp) + c004a28a: 7502 ld a0,32(sp) + c004a28c: 75a2 ld a1,40(sp) + c004a28e: 6161 addi sp,sp,80 + c004a290: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2658 if (delay < 0) - c004a0c2: 67e2 ld a5,24(sp) - c004a0c4: 0007d363 bgez a5,c004a0ca + c004a292: 67e2 ld a5,24(sp) + c004a294: 0007d363 bgez a5,c004a29a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2659 delay = 0; - c004a0c8: ec02 sd zero,24(sp) + c004a298: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2671 ts.tv_sec = delay / 1000; - c004a0ca: 67e2 ld a5,24(sp) - c004a0cc: 3e800713 li a4,1000 + c004a29a: 67e2 ld a5,24(sp) + c004a29c: 3e800713 li a4,1000 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2673 ret = js_get_errno(nanosleep(&ts, NULL)); - c004a0d0: 4581 li a1,0 + c004a2a0: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2671 ts.tv_sec = delay / 1000; - c004a0d2: 02e7c6b3 div a3,a5,a4 + c004a2a2: 02e7c6b3 div a3,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2673 ret = js_get_errno(nanosleep(&ts, NULL)); - c004a0d6: 1808 addi a0,sp,48 + c004a2a6: 1808 addi a0,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2672 ts.tv_nsec = (delay % 1000) * 1000000; - c004a0d8: 02e7e7b3 rem a5,a5,a4 - c004a0dc: 000f4737 lui a4,0xf4 - c004a0e0: 24070713 addi a4,a4,576 # f4240 <__clzdi2-0xbff0bdc0> + c004a2a8: 02e7e7b3 rem a5,a5,a4 + c004a2ac: 000f4737 lui a4,0xf4 + c004a2b0: 24070713 addi a4,a4,576 # f4240 <__clzdi2-0xbff0bdc0> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2671 ts.tv_sec = delay / 1000; - c004a0e4: d836 sw a3,48(sp) + c004a2b4: d836 sw a3,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2672 ts.tv_nsec = (delay % 1000) * 1000000; - c004a0e6: 02e787b3 mul a5,a5,a4 - c004a0ea: fc3e sd a5,56(sp) + c004a2b6: 02e787b3 mul a5,a5,a4 + c004a2ba: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2673 ret = js_get_errno(nanosleep(&ts, NULL)); - c004a0ec: 1f50c0ef jal ra,c0056ae0 - c004a0f0: d53ff0ef jal ra,c0049e42 - c004a0f4: d82a sw a0,48(sp) + c004a2bc: 1f50c0ef jal ra,c0056cb0 + c004a2c0: d53ff0ef jal ra,c004a012 + c004a2c4: d82a sw a0,48(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a0f6: da02 sw zero,52(sp) - c004a0f8: 77c2 ld a5,48(sp) - c004a0fa: f402 sd zero,40(sp) - c004a0fc: f03e sd a5,32(sp) - c004a0fe: bf6d j c004a0b8 + c004a2c6: da02 sw zero,52(sp) + c004a2c8: 77c2 ld a5,48(sp) + c004a2ca: f402 sd zero,40(sp) + c004a2cc: f03e sd a5,32(sp) + c004a2ce: bf6d j c004a288 -00000000c004a100 : +00000000c004a2d0 : js_os_mkdir(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2441 { - c004a100: 711d addi sp,sp,-96 - c004a102: e8a2 sd s0,80(sp) - c004a104: e4a6 sd s1,72(sp) - c004a106: ec86 sd ra,88(sp) - c004a108: e0ca sd s2,64(sp) + c004a2d0: 711d addi sp,sp,-96 + c004a2d2: e8a2 sd s0,80(sp) + c004a2d4: e4a6 sd s1,72(sp) + c004a2d6: ec86 sd ra,88(sp) + c004a2d8: e0ca sd s2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2445 if (argc >= 2) { - c004a10a: 4785 li a5,1 + c004a2da: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2441 { - c004a10c: 84aa mv s1,a0 - c004a10e: 843a mv s0,a4 + c004a2dc: 84aa mv s1,a0 + c004a2de: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2445 if (argc >= 2) { - c004a110: 02d7d363 bge a5,a3,c004a136 + c004a2e0: 02d7d363 bge a5,a3,c004a306 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2446 if (JS_ToInt32(ctx, &mode, argv[1])) - c004a114: 6b10 ld a2,16(a4) - c004a116: 6f14 ld a3,24(a4) - c004a118: 086c addi a1,sp,28 - c004a11a: a54d20ef jal ra,c001c36e - c004a11e: cd19 beqz a0,c004a13c + c004a2e4: 6b10 ld a2,16(a4) + c004a2e6: 6f14 ld a3,24(a4) + c004a2e8: 086c addi a1,sp,28 + c004a2ea: a54d20ef jal ra,c001c53e + c004a2ee: cd19 beqz a0,c004a30c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2447 return JS_EXCEPTION; - c004a120: 4799 li a5,6 - c004a122: f002 sd zero,32(sp) - c004a124: f43e sd a5,40(sp) + c004a2f0: 4799 li a5,6 + c004a2f2: f002 sd zero,32(sp) + c004a2f4: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2462 (discriminator 1) } - c004a126: 60e6 ld ra,88(sp) - c004a128: 6446 ld s0,80(sp) - c004a12a: 7502 ld a0,32(sp) - c004a12c: 75a2 ld a1,40(sp) - c004a12e: 64a6 ld s1,72(sp) - c004a130: 6906 ld s2,64(sp) - c004a132: 6125 addi sp,sp,96 - c004a134: 8082 ret + c004a2f6: 60e6 ld ra,88(sp) + c004a2f8: 6446 ld s0,80(sp) + c004a2fa: 7502 ld a0,32(sp) + c004a2fc: 75a2 ld a1,40(sp) + c004a2fe: 64a6 ld s1,72(sp) + c004a300: 6906 ld s2,64(sp) + c004a302: 6125 addi sp,sp,96 + c004a304: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2449 mode = 0777; - c004a136: 1ff00793 li a5,511 - c004a13a: ce3e sw a5,28(sp) + c004a306: 1ff00793 li a5,511 + c004a30a: ce3e sw a5,28(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2451 path = JS_ToCString(ctx, argv[0]); - c004a13c: 600c ld a1,0(s0) - c004a13e: 6410 ld a2,8(s0) - c004a140: 8526 mv a0,s1 - c004a142: a12fe0ef jal ra,c0048354 - c004a146: 842a mv s0,a0 + c004a30c: 600c ld a1,0(s0) + c004a30e: 6410 ld a2,8(s0) + c004a310: 8526 mv a0,s1 + c004a312: a12fe0ef jal ra,c0048524 + c004a316: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2452 if (!path) - c004a148: dd61 beqz a0,c004a120 + c004a318: dd61 beqz a0,c004a2f0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2458 ret = js_get_errno(mkdir(path, mode)); - c004a14a: 45f2 lw a1,28(sp) - c004a14c: 2b00d0ef jal ra,c00573fc - c004a150: cf3ff0ef jal ra,c0049e42 - c004a154: 892a mv s2,a0 + c004a31a: 45f2 lw a1,28(sp) + c004a31c: 2b00d0ef jal ra,c00575cc + c004a320: cf3ff0ef jal ra,c004a012 + c004a324: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2460 JS_FreeCString(ctx, path); - c004a156: 85a2 mv a1,s0 - c004a158: 8526 mv a0,s1 - c004a15a: d27be0ef jal ra,c0008e80 + c004a326: 85a2 mv a1,s0 + c004a328: 8526 mv a0,s1 + c004a32a: c45be0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a15e: da02 sw zero,52(sp) + c004a32e: da02 sw zero,52(sp) js_os_mkdir(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2458 ret = js_get_errno(mkdir(path, mode)); - c004a160: d84a sw s2,48(sp) - c004a162: 77c2 ld a5,48(sp) - c004a164: f402 sd zero,40(sp) - c004a166: f03e sd a5,32(sp) + c004a330: d84a sw s2,48(sp) + c004a332: 77c2 ld a5,48(sp) + c004a334: f402 sd zero,40(sp) + c004a336: f03e sd a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a168: bf7d j c004a126 + c004a338: bf7d j c004a2f6 -00000000c004a16a : +00000000c004a33a : js_os_rename(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1813 oldpath = JS_ToCString(ctx, argv[0]); - c004a16a: 630c ld a1,0(a4) - c004a16c: 6710 ld a2,8(a4) + c004a33a: 630c ld a1,0(a4) + c004a33c: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1809 { - c004a16e: 711d addi sp,sp,-96 - c004a170: e8a2 sd s0,80(sp) - c004a172: e0ca sd s2,64(sp) - c004a174: ec86 sd ra,88(sp) - c004a176: e4a6 sd s1,72(sp) - c004a178: fc4e sd s3,56(sp) - c004a17a: 842a mv s0,a0 - c004a17c: 893a mv s2,a4 + c004a33e: 711d addi sp,sp,-96 + c004a340: e8a2 sd s0,80(sp) + c004a342: e0ca sd s2,64(sp) + c004a344: ec86 sd ra,88(sp) + c004a346: e4a6 sd s1,72(sp) + c004a348: fc4e sd s3,56(sp) + c004a34a: 842a mv s0,a0 + c004a34c: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1813 oldpath = JS_ToCString(ctx, argv[0]); - c004a17e: 9d6fe0ef jal ra,c0048354 + c004a34e: 9d6fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1814 if (!oldpath) - c004a182: ed09 bnez a0,c004a19c + c004a352: ed09 bnez a0,c004a36c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1819 return JS_EXCEPTION; - c004a184: 4799 li a5,6 - c004a186: e802 sd zero,16(sp) - c004a188: ec3e sd a5,24(sp) + c004a354: 4799 li a5,6 + c004a356: e802 sd zero,16(sp) + c004a358: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1825 (discriminator 1) } - c004a18a: 60e6 ld ra,88(sp) - c004a18c: 6446 ld s0,80(sp) - c004a18e: 6542 ld a0,16(sp) - c004a190: 65e2 ld a1,24(sp) - c004a192: 64a6 ld s1,72(sp) - c004a194: 6906 ld s2,64(sp) - c004a196: 79e2 ld s3,56(sp) - c004a198: 6125 addi sp,sp,96 - c004a19a: 8082 ret + c004a35a: 60e6 ld ra,88(sp) + c004a35c: 6446 ld s0,80(sp) + c004a35e: 6542 ld a0,16(sp) + c004a360: 65e2 ld a1,24(sp) + c004a362: 64a6 ld s1,72(sp) + c004a364: 6906 ld s2,64(sp) + c004a366: 79e2 ld s3,56(sp) + c004a368: 6125 addi sp,sp,96 + c004a36a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1816 newpath = JS_ToCString(ctx, argv[1]); - c004a19c: 01093583 ld a1,16(s2) - c004a1a0: 01893603 ld a2,24(s2) - c004a1a4: 84aa mv s1,a0 - c004a1a6: 8522 mv a0,s0 - c004a1a8: 9acfe0ef jal ra,c0048354 - c004a1ac: 892a mv s2,a0 + c004a36c: 01093583 ld a1,16(s2) + c004a370: 01893603 ld a2,24(s2) + c004a374: 84aa mv s1,a0 + c004a376: 8522 mv a0,s0 + c004a378: 9acfe0ef jal ra,c0048524 + c004a37c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1817 if (!newpath) { - c004a1ae: e511 bnez a0,c004a1ba + c004a37e: e511 bnez a0,c004a38a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1818 JS_FreeCString(ctx, oldpath); - c004a1b0: 85a6 mv a1,s1 - c004a1b2: 8522 mv a0,s0 - c004a1b4: ccdbe0ef jal ra,c0008e80 - c004a1b8: b7f1 j c004a184 + c004a380: 85a6 mv a1,s1 + c004a382: 8522 mv a0,s0 + c004a384: bebbe0ef jal ra,c0008f6e + c004a388: b7f1 j c004a354 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1821 ret = js_get_errno(rename(oldpath, newpath)); - c004a1ba: 85aa mv a1,a0 - c004a1bc: 8526 mv a0,s1 - c004a1be: 3900d0ef jal ra,c005754e - c004a1c2: c81ff0ef jal ra,c0049e42 - c004a1c6: 89aa mv s3,a0 + c004a38a: 85aa mv a1,a0 + c004a38c: 8526 mv a0,s1 + c004a38e: 3900d0ef jal ra,c005771e + c004a392: c81ff0ef jal ra,c004a012 + c004a396: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1822 JS_FreeCString(ctx, oldpath); - c004a1c8: 85a6 mv a1,s1 - c004a1ca: 8522 mv a0,s0 - c004a1cc: cb5be0ef jal ra,c0008e80 + c004a398: 85a6 mv a1,s1 + c004a39a: 8522 mv a0,s0 + c004a39c: bd3be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1823 JS_FreeCString(ctx, newpath); - c004a1d0: 85ca mv a1,s2 - c004a1d2: 8522 mv a0,s0 - c004a1d4: cadbe0ef jal ra,c0008e80 + c004a3a0: 85ca mv a1,s2 + c004a3a2: 8522 mv a0,s0 + c004a3a4: bcbbe0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a1d8: d202 sw zero,36(sp) + c004a3a8: d202 sw zero,36(sp) js_os_rename(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1821 ret = js_get_errno(rename(oldpath, newpath)); - c004a1da: d04e sw s3,32(sp) - c004a1dc: 7782 ld a5,32(sp) - c004a1de: ec02 sd zero,24(sp) - c004a1e0: e83e sd a5,16(sp) + c004a3aa: d04e sw s3,32(sp) + c004a3ac: 7782 ld a5,32(sp) + c004a3ae: ec02 sd zero,24(sp) + c004a3b0: e83e sd a5,16(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a1e2: b765 j c004a18a + c004a3b2: b765 j c004a35a -00000000c004a1e4 : +00000000c004a3b4 : js_os_remove(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1787 filename = JS_ToCString(ctx, argv[0]); - c004a1e4: 630c ld a1,0(a4) - c004a1e6: 6710 ld a2,8(a4) + c004a3b4: 630c ld a1,0(a4) + c004a3b6: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1783 { - c004a1e8: 711d addi sp,sp,-96 - c004a1ea: e4a6 sd s1,72(sp) - c004a1ec: ec86 sd ra,88(sp) - c004a1ee: e8a2 sd s0,80(sp) - c004a1f0: 84aa mv s1,a0 + c004a3b8: 711d addi sp,sp,-96 + c004a3ba: e4a6 sd s1,72(sp) + c004a3bc: ec86 sd ra,88(sp) + c004a3be: e8a2 sd s0,80(sp) + c004a3c0: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1787 filename = JS_ToCString(ctx, argv[0]); - c004a1f2: 962fe0ef jal ra,c0048354 + c004a3c2: 962fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1788 if (!filename) - c004a1f6: e919 bnez a0,c004a20c + c004a3c6: e919 bnez a0,c004a3dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1789 return JS_EXCEPTION; - c004a1f8: 4799 li a5,6 - c004a1fa: f002 sd zero,32(sp) - c004a1fc: f43e sd a5,40(sp) + c004a3c8: 4799 li a5,6 + c004a3ca: f002 sd zero,32(sp) + c004a3cc: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1805 (discriminator 1) } - c004a1fe: 60e6 ld ra,88(sp) - c004a200: 6446 ld s0,80(sp) - c004a202: 7502 ld a0,32(sp) - c004a204: 75a2 ld a1,40(sp) - c004a206: 64a6 ld s1,72(sp) - c004a208: 6125 addi sp,sp,96 - c004a20a: 8082 ret - c004a20c: e42a sd a0,8(sp) + c004a3ce: 60e6 ld ra,88(sp) + c004a3d0: 6446 ld s0,80(sp) + c004a3d2: 7502 ld a0,32(sp) + c004a3d4: 75a2 ld a1,40(sp) + c004a3d6: 64a6 ld s1,72(sp) + c004a3d8: 6125 addi sp,sp,96 + c004a3da: 8082 ret + c004a3dc: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1800 ret = remove(filename); - c004a20e: 3010a0ef jal ra,c0054d0e + c004a3de: 3010a0ef jal ra,c0054ede /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1802 ret = js_get_errno(ret); - c004a212: c31ff0ef jal ra,c0049e42 + c004a3e2: c31ff0ef jal ra,c004a012 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1803 JS_FreeCString(ctx, filename); - c004a216: 65a2 ld a1,8(sp) + c004a3e6: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1802 ret = js_get_errno(ret); - c004a218: 842a mv s0,a0 + c004a3e8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1803 JS_FreeCString(ctx, filename); - c004a21a: 8526 mv a0,s1 - c004a21c: c65be0ef jal ra,c0008e80 + c004a3ea: 8526 mv a0,s1 + c004a3ec: b83be0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a220: da02 sw zero,52(sp) + c004a3f0: da02 sw zero,52(sp) js_os_remove(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1802 ret = js_get_errno(ret); - c004a222: d822 sw s0,48(sp) - c004a224: 77c2 ld a5,48(sp) - c004a226: f402 sd zero,40(sp) - c004a228: f03e sd a5,32(sp) + c004a3f2: d822 sw s0,48(sp) + c004a3f4: 77c2 ld a5,48(sp) + c004a3f6: f402 sd zero,40(sp) + c004a3f8: f03e sd a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a22a: bfd1 j c004a1fe + c004a3fa: bfd1 j c004a3ce -00000000c004a22c : +00000000c004a3fc : js_os_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1642 { - c004a22c: 7159 addi sp,sp,-112 - c004a22e: f0a2 sd s0,96(sp) - c004a230: eca6 sd s1,88(sp) - c004a232: e8ca sd s2,80(sp) - c004a234: f486 sd ra,104(sp) + c004a3fc: 7159 addi sp,sp,-112 + c004a3fe: f0a2 sd s0,96(sp) + c004a400: eca6 sd s1,88(sp) + c004a402: e8ca sd s2,80(sp) + c004a404: f486 sd ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1649 if (JS_ToInt32(ctx, &fd, argv[0])) - c004a236: 6310 ld a2,0(a4) - c004a238: 6714 ld a3,8(a4) - c004a23a: 084c addi a1,sp,20 + c004a406: 6310 ld a2,0(a4) + c004a408: 6714 ld a3,8(a4) + c004a40a: 084c addi a1,sp,20 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1642 { - c004a23c: 84aa mv s1,a0 - c004a23e: 843a mv s0,a4 - c004a240: 893e mv s2,a5 + c004a40c: 84aa mv s1,a0 + c004a40e: 843a mv s0,a4 + c004a410: 893e mv s2,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1649 if (JS_ToInt32(ctx, &fd, argv[0])) - c004a242: 92cd20ef jal ra,c001c36e - c004a246: cd01 beqz a0,c004a25e + c004a412: 92cd20ef jal ra,c001c53e + c004a416: cd01 beqz a0,c004a42e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1650 return JS_EXCEPTION; - c004a248: 4799 li a5,6 - c004a24a: f802 sd zero,48(sp) - c004a24c: fc3e sd a5,56(sp) + c004a418: 4799 li a5,6 + c004a41a: f802 sd zero,48(sp) + c004a41c: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1665 (discriminator 1) } - c004a24e: 70a6 ld ra,104(sp) - c004a250: 7406 ld s0,96(sp) - c004a252: 7542 ld a0,48(sp) - c004a254: 75e2 ld a1,56(sp) - c004a256: 64e6 ld s1,88(sp) - c004a258: 6946 ld s2,80(sp) - c004a25a: 6165 addi sp,sp,112 - c004a25c: 8082 ret + c004a41e: 70a6 ld ra,104(sp) + c004a420: 7406 ld s0,96(sp) + c004a422: 7542 ld a0,48(sp) + c004a424: 75e2 ld a1,56(sp) + c004a426: 64e6 ld s1,88(sp) + c004a428: 6946 ld s2,80(sp) + c004a42a: 6165 addi sp,sp,112 + c004a42c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1651 if (JS_ToIndex(ctx, &pos, argv[2])) - c004a25e: 7010 ld a2,32(s0) - c004a260: 7414 ld a3,40(s0) - c004a262: 082c addi a1,sp,24 - c004a264: 8526 mv a0,s1 - c004a266: 820d40ef jal ra,c001e286 - c004a26a: fd79 bnez a0,c004a248 + c004a42e: 7010 ld a2,32(s0) + c004a430: 7414 ld a3,40(s0) + c004a432: 082c addi a1,sp,24 + c004a434: 8526 mv a0,s1 + c004a436: 820d40ef jal ra,c001e456 + c004a43a: fd79 bnez a0,c004a418 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1653 if (JS_ToIndex(ctx, &len, argv[3])) - c004a26c: 7810 ld a2,48(s0) - c004a26e: 7c14 ld a3,56(s0) - c004a270: 100c addi a1,sp,32 - c004a272: 8526 mv a0,s1 - c004a274: 812d40ef jal ra,c001e286 - c004a278: f961 bnez a0,c004a248 + c004a43c: 7810 ld a2,48(s0) + c004a43e: 7c14 ld a3,56(s0) + c004a440: 100c addi a1,sp,32 + c004a442: 8526 mv a0,s1 + c004a444: 812d40ef jal ra,c001e456 + c004a448: f961 bnez a0,c004a418 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1655 buf = JS_GetArrayBuffer(ctx, &size, argv[1]); - c004a27a: 6810 ld a2,16(s0) - c004a27c: 6c14 ld a3,24(s0) - c004a27e: 102c addi a1,sp,40 - c004a280: 8526 mv a0,s1 - c004a282: 99df80ef jal ra,c0042c1e - c004a286: 85aa mv a1,a0 + c004a44a: 6810 ld a2,16(s0) + c004a44c: 6c14 ld a3,24(s0) + c004a44e: 102c addi a1,sp,40 + c004a450: 8526 mv a0,s1 + c004a452: 99df80ef jal ra,c0042dee + c004a456: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1656 if (!buf) - c004a288: d161 beqz a0,c004a248 + c004a458: d161 beqz a0,c004a418 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1658 if (pos + len > size) - c004a28a: 67e2 ld a5,24(sp) - c004a28c: 7602 ld a2,32(sp) - c004a28e: 7722 ld a4,40(sp) - c004a290: 00c786b3 add a3,a5,a2 - c004a294: 00d77c63 bgeu a4,a3,c004a2ac + c004a45a: 67e2 ld a5,24(sp) + c004a45c: 7602 ld a2,32(sp) + c004a45e: 7722 ld a4,40(sp) + c004a460: 00c786b3 add a3,a5,a2 + c004a464: 00d77c63 bgeu a4,a3,c004a47c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1659 return JS_ThrowRangeError(ctx, "read/write array buffer overflow"); - c004a298: 00026597 auipc a1,0x26 - c004a29c: 7b058593 addi a1,a1,1968 # c0070a48 - c004a2a0: 8526 mv a0,s1 - c004a2a2: eb8ca0ef jal ra,c001495a - c004a2a6: f82a sd a0,48(sp) - c004a2a8: fc2e sd a1,56(sp) - c004a2aa: b755 j c004a24e + c004a468: 00027597 auipc a1,0x27 + c004a46c: 84058593 addi a1,a1,-1984 # c0070ca8 + c004a470: 8526 mv a0,s1 + c004a472: dd6ca0ef jal ra,c0014a48 + c004a476: f82a sd a0,48(sp) + c004a478: fc2e sd a1,56(sp) + c004a47a: b755 j c004a41e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1661 ret = js_get_errno(write(fd, buf + pos, len)); - c004a2ac: 4552 lw a0,20(sp) - c004a2ae: 95be add a1,a1,a5 + c004a47c: 4552 lw a0,20(sp) + c004a47e: 95be add a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1660 if (magic) - c004a2b0: 02090263 beqz s2,c004a2d4 + c004a480: 02090263 beqz s2,c004a4a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1661 ret = js_get_errno(write(fd, buf + pos, len)); - c004a2b4: 3940d0ef jal ra,c0057648 + c004a484: 3940d0ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1663 ret = js_get_errno(read(fd, buf + pos, len)); - c004a2b8: b8bff0ef jal ra,c0049e42 + c004a488: b8bff0ef jal ra,c004a012 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004a2bc: 0005079b sext.w a5,a0 - c004a2c0: 00f51d63 bne a0,a5,c004a2da + c004a48c: 0005079b sext.w a5,a0 + c004a490: 00f51d63 bne a0,a5,c004a4aa JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004a2c4: c282 sw zero,68(sp) - c004a2c6: c0be sw a5,64(sp) - c004a2c8: 6706 ld a4,64(sp) - c004a2ca: f83a sd a4,48(sp) - c004a2cc: 4701 li a4,0 + c004a494: c282 sw zero,68(sp) + c004a496: c0be sw a5,64(sp) + c004a498: 6706 ld a4,64(sp) + c004a49a: f83a sd a4,48(sp) + c004a49c: 4701 li a4,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004a2ce: d83e sw a5,48(sp) - c004a2d0: fc3a sd a4,56(sp) - c004a2d2: bfb5 j c004a24e + c004a49e: d83e sw a5,48(sp) + c004a4a0: fc3a sd a4,56(sp) + c004a4a2: bfb5 j c004a41e js_os_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1663 - c004a2d4: 2640d0ef jal ra,c0057538 - c004a2d8: b7c5 j c004a2b8 + c004a4a4: 2640d0ef jal ra,c0057708 + c004a4a8: b7c5 j c004a488 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004a2da: d22577d3 fcvt.d.l fa5,a0 - c004a2de: 471d li a4,7 - c004a2e0: e20787d3 fmv.x.d a5,fa5 + c004a4aa: d22577d3 fcvt.d.l fa5,a0 + c004a4ae: 471d li a4,7 + c004a4b0: e20787d3 fmv.x.d a5,fa5 js_os_read_write(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004a2e4: b83e fsd fa5,48(sp) - c004a2e6: 2781 sext.w a5,a5 - c004a2e8: b7dd j c004a2ce + c004a4b4: b83e fsd fa5,48(sp) + c004a4b6: 2781 sext.w a5,a5 + c004a4b8: b7dd j c004a49e -00000000c004a2ea : +00000000c004a4ba : js_os_open(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1579 { - c004a2ea: 7159 addi sp,sp,-112 - c004a2ec: f0a2 sd s0,96(sp) - c004a2ee: eca6 sd s1,88(sp) - c004a2f0: e4ce sd s3,72(sp) - c004a2f2: f486 sd ra,104(sp) - c004a2f4: e8ca sd s2,80(sp) + c004a4ba: 7159 addi sp,sp,-112 + c004a4bc: f0a2 sd s0,96(sp) + c004a4be: eca6 sd s1,88(sp) + c004a4c0: e4ce sd s3,72(sp) + c004a4c2: f486 sd ra,104(sp) + c004a4c4: e8ca sd s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1583 filename = JS_ToCString(ctx, argv[0]); - c004a2f6: 630c ld a1,0(a4) - c004a2f8: 6710 ld a2,8(a4) + c004a4c6: 630c ld a1,0(a4) + c004a4c8: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1579 { - c004a2fa: 84aa mv s1,a0 - c004a2fc: 89b6 mv s3,a3 - c004a2fe: 843a mv s0,a4 + c004a4ca: 84aa mv s1,a0 + c004a4cc: 89b6 mv s3,a3 + c004a4ce: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1583 filename = JS_ToCString(ctx, argv[0]); - c004a300: 854fe0ef jal ra,c0048354 + c004a4d0: 854fe0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1584 if (!filename) - c004a304: ed09 bnez a0,c004a31e + c004a4d4: ed09 bnez a0,c004a4ee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1592 return JS_EXCEPTION; - c004a306: 4799 li a5,6 - c004a308: f002 sd zero,32(sp) - c004a30a: f43e sd a5,40(sp) + c004a4d6: 4799 li a5,6 + c004a4d8: f002 sd zero,32(sp) + c004a4da: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1605 (discriminator 1) } - c004a30c: 70a6 ld ra,104(sp) - c004a30e: 7406 ld s0,96(sp) - c004a310: 7502 ld a0,32(sp) - c004a312: 75a2 ld a1,40(sp) - c004a314: 64e6 ld s1,88(sp) - c004a316: 6946 ld s2,80(sp) - c004a318: 69a6 ld s3,72(sp) - c004a31a: 6165 addi sp,sp,112 - c004a31c: 8082 ret + c004a4dc: 70a6 ld ra,104(sp) + c004a4de: 7406 ld s0,96(sp) + c004a4e0: 7502 ld a0,32(sp) + c004a4e2: 75a2 ld a1,40(sp) + c004a4e4: 64e6 ld s1,88(sp) + c004a4e6: 6946 ld s2,80(sp) + c004a4e8: 69a6 ld s3,72(sp) + c004a4ea: 6165 addi sp,sp,112 + c004a4ec: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1586 if (JS_ToInt32(ctx, &flags, argv[1])) - c004a31e: 6810 ld a2,16(s0) - c004a320: 6c14 ld a3,24(s0) - c004a322: 892a mv s2,a0 - c004a324: 082c addi a1,sp,24 - c004a326: 8526 mv a0,s1 - c004a328: 846d20ef jal ra,c001c36e - c004a32c: c511 beqz a0,c004a338 + c004a4ee: 6810 ld a2,16(s0) + c004a4f0: 6c14 ld a3,24(s0) + c004a4f2: 892a mv s2,a0 + c004a4f4: 082c addi a1,sp,24 + c004a4f6: 8526 mv a0,s1 + c004a4f8: 846d20ef jal ra,c001c53e + c004a4fc: c511 beqz a0,c004a508 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1591 JS_FreeCString(ctx, filename); - c004a32e: 85ca mv a1,s2 - c004a330: 8526 mv a0,s1 - c004a332: b4fbe0ef jal ra,c0008e80 - c004a336: bfc1 j c004a306 + c004a4fe: 85ca mv a1,s2 + c004a500: 8526 mv a0,s1 + c004a502: a6dbe0ef jal ra,c0008f6e + c004a506: bfc1 j c004a4d6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1588 if (argc >= 3 && !JS_IsUndefined(argv[2])) { - c004a338: 4789 li a5,2 - c004a33a: 0537d063 bge a5,s3,c004a37a + c004a508: 4789 li a5,2 + c004a50a: 0537d063 bge a5,s3,c004a54a JS_IsUndefined(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:605 (discriminator 1) return JS_VALUE_GET_TAG(v) == JS_TAG_UNDEFINED; - c004a33e: 7414 ld a3,40(s0) + c004a50e: 7414 ld a3,40(s0) js_os_open(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1588 (discriminator 1) - c004a340: 478d li a5,3 - c004a342: 0006871b sext.w a4,a3 - c004a346: 02f70a63 beq a4,a5,c004a37a + c004a510: 478d li a5,3 + c004a512: 0006871b sext.w a4,a3 + c004a516: 02f70a63 beq a4,a5,c004a54a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1589 if (JS_ToInt32(ctx, &mode, argv[2])) { - c004a34a: 7010 ld a2,32(s0) - c004a34c: 086c addi a1,sp,28 - c004a34e: 8526 mv a0,s1 - c004a350: 81ed20ef jal ra,c001c36e - c004a354: fd69 bnez a0,c004a32e + c004a51a: 7010 ld a2,32(s0) + c004a51c: 086c addi a1,sp,28 + c004a51e: 8526 mv a0,s1 + c004a520: 81ed20ef jal ra,c001c53e + c004a524: fd69 bnez a0,c004a4fe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1602 ret = js_get_errno(open(filename, flags, mode)); - c004a356: 4672 lw a2,28(sp) - c004a358: 45e2 lw a1,24(sp) - c004a35a: 854a mv a0,s2 - c004a35c: 14c0d0ef jal ra,c00574a8 - c004a360: ae3ff0ef jal ra,c0049e42 - c004a364: 842a mv s0,a0 + c004a526: 4672 lw a2,28(sp) + c004a528: 45e2 lw a1,24(sp) + c004a52a: 854a mv a0,s2 + c004a52c: 14c0d0ef jal ra,c0057678 + c004a530: ae3ff0ef jal ra,c004a012 + c004a534: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1603 JS_FreeCString(ctx, filename); - c004a366: 85ca mv a1,s2 - c004a368: 8526 mv a0,s1 - c004a36a: b17be0ef jal ra,c0008e80 + c004a536: 85ca mv a1,s2 + c004a538: 8526 mv a0,s1 + c004a53a: a35be0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004a36e: da02 sw zero,52(sp) + c004a53e: da02 sw zero,52(sp) js_os_open(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1602 ret = js_get_errno(open(filename, flags, mode)); - c004a370: d822 sw s0,48(sp) - c004a372: 77c2 ld a5,48(sp) - c004a374: f402 sd zero,40(sp) - c004a376: f03e sd a5,32(sp) + c004a540: d822 sw s0,48(sp) + c004a542: 77c2 ld a5,48(sp) + c004a544: f402 sd zero,40(sp) + c004a546: f03e sd a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004a378: bf51 j c004a30c + c004a548: bf51 j c004a4dc js_os_open(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1595 mode = 0666; - c004a37a: 1b600793 li a5,438 - c004a37e: ce3e sw a5,28(sp) - c004a380: bfd9 j c004a356 + c004a54a: 1b600793 li a5,438 + c004a54e: ce3e sw a5,28(sp) + c004a550: bfd9 j c004a526 -00000000c004a382 : +00000000c004a552 : js_sab_free(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3209 { - c004a382: 1141 addi sp,sp,-16 - c004a384: e022 sd s0,0(sp) + c004a552: 1141 addi sp,sp,-16 + c004a554: e022 sd s0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3213 ref_count = atomic_add_int(&sab->ref_count, -1); - c004a386: ff858413 addi s0,a1,-8 - c004a38a: 8522 mv a0,s0 - c004a38c: 55fd li a1,-1 + c004a556: ff858413 addi s0,a1,-8 + c004a55a: 8522 mv a0,s0 + c004a55c: 55fd li a1,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3209 { - c004a38e: e406 sd ra,8(sp) + c004a55e: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3213 ref_count = atomic_add_int(&sab->ref_count, -1); - c004a390: f66ff0ef jal ra,c0049af6 + c004a560: f66ff0ef jal ra,c0049cc6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3214 assert(ref_count >= 0); - c004a394: 00055c63 bgez a0,c004a3ac - c004a398: 6585 lui a1,0x1 - c004a39a: 4601 li a2,0 - c004a39c: c8e58593 addi a1,a1,-882 # c8e <__clzdi2-0xbffff372> - c004a3a0: 00026517 auipc a0,0x26 - c004a3a4: 6f050513 addi a0,a0,1776 # c0070a90 - c004a3a8: 670090ef jal ra,c0053a18 <__assert> + c004a564: 00055c63 bgez a0,c004a57c + c004a568: 6585 lui a1,0x1 + c004a56a: 4601 li a2,0 + c004a56c: c8e58593 addi a1,a1,-882 # c8e <__clzdi2-0xbffff372> + c004a570: 00026517 auipc a0,0x26 + c004a574: 78050513 addi a0,a0,1920 # c0070cf0 + c004a578: 670090ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3215 (discriminator 2) if (ref_count == 0) { - c004a3ac: e519 bnez a0,c004a3ba + c004a57c: e519 bnez a0,c004a58a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3216 free(sab); - c004a3ae: 8522 mv a0,s0 + c004a57e: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3218 } - c004a3b0: 6402 ld s0,0(sp) - c004a3b2: 60a2 ld ra,8(sp) - c004a3b4: 0141 addi sp,sp,16 + c004a580: 6402 ld s0,0(sp) + c004a582: 60a2 ld ra,8(sp) + c004a584: 0141 addi sp,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3216 free(sab); - c004a3b6: 2430806f j c0052df8 + c004a586: 2430806f j c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3218 } - c004a3ba: 60a2 ld ra,8(sp) - c004a3bc: 6402 ld s0,0(sp) - c004a3be: 0141 addi sp,sp,16 - c004a3c0: 8082 ret + c004a58a: 60a2 ld ra,8(sp) + c004a58c: 6402 ld s0,0(sp) + c004a58e: 0141 addi sp,sp,16 + c004a590: 8082 ret -00000000c004a3c2 : +00000000c004a592 : js_free_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3256 { - c004a3c2: 1101 addi sp,sp,-32 - c004a3c4: e822 sd s0,16(sp) - c004a3c6: e426 sd s1,8(sp) - c004a3c8: ec06 sd ra,24(sp) - c004a3ca: 842a mv s0,a0 + c004a592: 1101 addi sp,sp,-32 + c004a594: e822 sd s0,16(sp) + c004a596: e426 sd s1,8(sp) + c004a598: ec06 sd ra,24(sp) + c004a59a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3259 for(i = 0; i < msg->sab_tab_len; i++) { - c004a3cc: 4481 li s1,0 + c004a59c: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3259 (discriminator 1) - c004a3ce: 741c ld a5,40(s0) + c004a59e: 741c ld a5,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3260 (discriminator 1) js_sab_free(NULL, msg->sab_tab[i]); - c004a3d0: 7008 ld a0,32(s0) + c004a5a0: 7008 ld a0,32(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3259 (discriminator 1) for(i = 0; i < msg->sab_tab_len; i++) { - c004a3d2: 00f4ee63 bltu s1,a5,c004a3ee + c004a5a2: 00f4ee63 bltu s1,a5,c004a5be /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3262 free(msg->sab_tab); - c004a3d6: 223080ef jal ra,c0052df8 + c004a5a6: 223080ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3263 free(msg->data); - c004a3da: 6808 ld a0,16(s0) - c004a3dc: 21d080ef jal ra,c0052df8 + c004a5aa: 6808 ld a0,16(s0) + c004a5ac: 21d080ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3264 free(msg); - c004a3e0: 8522 mv a0,s0 + c004a5b0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3265 } - c004a3e2: 6442 ld s0,16(sp) - c004a3e4: 60e2 ld ra,24(sp) - c004a3e6: 64a2 ld s1,8(sp) - c004a3e8: 6105 addi sp,sp,32 + c004a5b2: 6442 ld s0,16(sp) + c004a5b4: 60e2 ld ra,24(sp) + c004a5b6: 64a2 ld s1,8(sp) + c004a5b8: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3264 free(msg); - c004a3ea: 20f0806f j c0052df8 + c004a5ba: 20f0806f j c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3260 (discriminator 3) js_sab_free(NULL, msg->sab_tab[i]); - c004a3ee: 00349793 slli a5,s1,0x3 - c004a3f2: 953e add a0,a0,a5 - c004a3f4: 610c ld a1,0(a0) - c004a3f6: 4501 li a0,0 + c004a5be: 00349793 slli a5,s1,0x3 + c004a5c2: 953e add a0,a0,a5 + c004a5c4: 610c ld a1,0(a0) + c004a5c6: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3259 (discriminator 3) for(i = 0; i < msg->sab_tab_len; i++) { - c004a3f8: 0485 addi s1,s1,1 + c004a5c8: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3260 (discriminator 3) js_sab_free(NULL, msg->sab_tab[i]); - c004a3fa: f89ff0ef jal ra,c004a382 + c004a5ca: f89ff0ef jal ra,c004a552 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3259 (discriminator 3) for(i = 0; i < msg->sab_tab_len; i++) { - c004a3fe: bfc1 j c004a3ce + c004a5ce: bfc1 j c004a59e -00000000c004a400 : +00000000c004a5d0 : js_free_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3273 if (!ps) - c004a400: c935 beqz a0,c004a474 + c004a5d0: c935 beqz a0,c004a644 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3268 { - c004a402: 1101 addi sp,sp,-32 + c004a5d2: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3276 ref_count = atomic_add_int(&ps->ref_count, -1); - c004a404: 55fd li a1,-1 + c004a5d4: 55fd li a1,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3268 { - c004a406: e822 sd s0,16(sp) - c004a408: ec06 sd ra,24(sp) - c004a40a: e426 sd s1,8(sp) - c004a40c: e04a sd s2,0(sp) - c004a40e: 842a mv s0,a0 + c004a5d6: e822 sd s0,16(sp) + c004a5d8: ec06 sd ra,24(sp) + c004a5da: e426 sd s1,8(sp) + c004a5dc: e04a sd s2,0(sp) + c004a5de: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3276 ref_count = atomic_add_int(&ps->ref_count, -1); - c004a410: ee6ff0ef jal ra,c0049af6 + c004a5e0: ee6ff0ef jal ra,c0049cc6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3277 assert(ref_count >= 0); - c004a414: 00055c63 bgez a0,c004a42c + c004a5e4: 00055c63 bgez a0,c004a5fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3277 (discriminator 1) - c004a418: 6585 lui a1,0x1 - c004a41a: 4601 li a2,0 - c004a41c: ccd58593 addi a1,a1,-819 # ccd <__clzdi2-0xbffff333> - c004a420: 00026517 auipc a0,0x26 - c004a424: 67050513 addi a0,a0,1648 # c0070a90 - c004a428: 5f0090ef jal ra,c0053a18 <__assert> + c004a5e8: 6585 lui a1,0x1 + c004a5ea: 4601 li a2,0 + c004a5ec: ccd58593 addi a1,a1,-819 # ccd <__clzdi2-0xbffff333> + c004a5f0: 00026517 auipc a0,0x26 + c004a5f4: 70050513 addi a0,a0,1792 # c0070cf0 + c004a5f8: 5f0090ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3278 (discriminator 2) if (ref_count == 0) { - c004a42c: ed15 bnez a0,c004a468 + c004a5fc: ed15 bnez a0,c004a638 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3279 list_for_each_safe(el, el1, &ps->msg_queue) { - c004a42e: 7c08 ld a0,56(s0) - c004a430: 03040913 addi s2,s0,48 - c004a434: 6504 ld s1,8(a0) - c004a436: 03251463 bne a0,s2,c004a45e + c004a5fe: 7c08 ld a0,56(s0) + c004a600: 03040913 addi s2,s0,48 + c004a604: 6504 ld s1,8(a0) + c004a606: 03251463 bne a0,s2,c004a62e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3283 pthread_mutex_destroy(&ps->mutex); - c004a43a: 00840513 addi a0,s0,8 - c004a43e: 0b20d0ef jal ra,c00574f0 + c004a60a: 00840513 addi a0,s0,8 + c004a60e: 0b20d0ef jal ra,c00576c0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3284 close(ps->read_fd); - c004a442: 4028 lw a0,64(s0) - c004a444: 69f0c0ef jal ra,c00572e2 + c004a612: 4028 lw a0,64(s0) + c004a614: 69f0c0ef jal ra,c00574b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3285 close(ps->write_fd); - c004a448: 4068 lw a0,68(s0) - c004a44a: 6990c0ef jal ra,c00572e2 + c004a618: 4068 lw a0,68(s0) + c004a61a: 6990c0ef jal ra,c00574b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3286 free(ps); - c004a44e: 8522 mv a0,s0 + c004a61e: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3288 } - c004a450: 6442 ld s0,16(sp) - c004a452: 60e2 ld ra,24(sp) - c004a454: 64a2 ld s1,8(sp) - c004a456: 6902 ld s2,0(sp) - c004a458: 6105 addi sp,sp,32 + c004a620: 6442 ld s0,16(sp) + c004a622: 60e2 ld ra,24(sp) + c004a624: 64a2 ld s1,8(sp) + c004a626: 6902 ld s2,0(sp) + c004a628: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3286 free(ps); - c004a45a: 19f0806f j c0052df8 + c004a62a: 19f0806f j c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3281 js_free_message(msg); - c004a45e: f65ff0ef jal ra,c004a3c2 + c004a62e: f65ff0ef jal ra,c004a592 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3279 list_for_each_safe(el, el1, &ps->msg_queue) { - c004a462: 8526 mv a0,s1 - c004a464: 6484 ld s1,8(s1) - c004a466: bfc1 j c004a436 + c004a632: 8526 mv a0,s1 + c004a634: 6484 ld s1,8(s1) + c004a636: bfc1 j c004a606 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3288 } - c004a468: 60e2 ld ra,24(sp) - c004a46a: 6442 ld s0,16(sp) - c004a46c: 64a2 ld s1,8(sp) - c004a46e: 6902 ld s2,0(sp) - c004a470: 6105 addi sp,sp,32 - c004a472: 8082 ret - c004a474: 8082 ret + c004a638: 60e2 ld ra,24(sp) + c004a63a: 6442 ld s0,16(sp) + c004a63c: 64a2 ld s1,8(sp) + c004a63e: 6902 ld s2,0(sp) + c004a640: 6105 addi sp,sp,32 + c004a642: 8082 ret + c004a644: 8082 ret -00000000c004a476 : +00000000c004a646 : js_worker_ctor(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3400 { - c004a476: 7135 addi sp,sp,-160 - c004a478: e82e sd a1,16(sp) - c004a47a: ed06 sd ra,152(sp) - c004a47c: e922 sd s0,144(sp) - c004a47e: e526 sd s1,136(sp) - c004a480: e14a sd s2,128(sp) - c004a482: ec32 sd a2,24(sp) - c004a484: 893a mv s2,a4 - c004a486: fcce sd s3,120(sp) - c004a488: f8d2 sd s4,112(sp) - c004a48a: f4d6 sd s5,104(sp) - c004a48c: 84aa mv s1,a0 + c004a646: 7135 addi sp,sp,-160 + c004a648: e82e sd a1,16(sp) + c004a64a: ed06 sd ra,152(sp) + c004a64c: e922 sd s0,144(sp) + c004a64e: e526 sd s1,136(sp) + c004a650: e14a sd s2,128(sp) + c004a652: ec32 sd a2,24(sp) + c004a654: 893a mv s2,a4 + c004a656: fcce sd s3,120(sp) + c004a658: f8d2 sd s4,112(sp) + c004a65a: f4d6 sd s5,104(sp) + c004a65c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3401 JSRuntime *rt = JS_GetRuntime(ctx); - c004a48e: a91bc0ef jal ra,c0006f1e + c004a65e: 9afbc0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3405 JSValue obj = JS_UNDEFINED; - c004a492: f402 sd zero,40(sp) - c004a494: f802 sd zero,48(sp) + c004a662: f402 sd zero,40(sp) + c004a664: f802 sd zero,48(sp) is_main_thread(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1829 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004a496: 9f1bc0ef jal ra,c0006e86 + c004a666: 90fbc0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1830 return !ts->recv_pipe; - c004a49a: 6520 ld s0,72(a0) + c004a66a: 6520 ld s0,72(a0) js_worker_ctor(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3413 return JS_ThrowTypeError(ctx, "cannot create a worker inside a worker"); - c004a49c: 00026597 auipc a1,0x26 - c004a4a0: 60458593 addi a1,a1,1540 # c0070aa0 + c004a66c: 00026597 auipc a1,0x26 + c004a670: 69458593 addi a1,a1,1684 # c0070d00 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3412 if (!is_main_thread(rt)) - c004a4a4: ec01 bnez s0,c004a4bc + c004a674: ec01 bnez s0,c004a68c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3417 basename_atom = JS_GetScriptOrModuleName(ctx, 1); - c004a4a6: 4585 li a1,1 - c004a4a8: 8526 mv a0,s1 - c004a4aa: 9fbc00ef jal ra,c000aea4 - c004a4ae: 0005059b sext.w a1,a0 + c004a676: 4585 li a1,1 + c004a678: 8526 mv a0,s1 + c004a67a: 919c00ef jal ra,c000af92 + c004a67e: 0005059b sext.w a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3418 if (basename_atom == JS_ATOM_NULL) { - c004a4b2: e185 bnez a1,c004a4d2 + c004a682: e185 bnez a1,c004a6a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3419 return JS_ThrowTypeError(ctx, "could not determine calling script or module name"); - c004a4b4: 00026597 auipc a1,0x26 - c004a4b8: 61458593 addi a1,a1,1556 # c0070ac8 + c004a684: 00026597 auipc a1,0x26 + c004a688: 6a458593 addi a1,a1,1700 # c0070d28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3477 } - c004a4bc: 644a ld s0,144(sp) - c004a4be: 60ea ld ra,152(sp) - c004a4c0: 690a ld s2,128(sp) - c004a4c2: 79e6 ld s3,120(sp) - c004a4c4: 7a46 ld s4,112(sp) - c004a4c6: 7aa6 ld s5,104(sp) + c004a68c: 644a ld s0,144(sp) + c004a68e: 60ea ld ra,152(sp) + c004a690: 690a ld s2,128(sp) + c004a692: 79e6 ld s3,120(sp) + c004a694: 7a46 ld s4,112(sp) + c004a696: 7aa6 ld s5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3419 return JS_ThrowTypeError(ctx, "could not determine calling script or module name"); - c004a4c8: 8526 mv a0,s1 + c004a698: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3477 } - c004a4ca: 64aa ld s1,136(sp) - c004a4cc: 610d addi sp,sp,160 + c004a69a: 64aa ld s1,136(sp) + c004a69c: 610d addi sp,sp,160 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3419 return JS_ThrowTypeError(ctx, "could not determine calling script or module name"); - c004a4ce: f29c806f j c00133f6 + c004a69e: e47c806f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3421 basename = JS_AtomToCString(ctx, basename_atom); - c004a4d2: 8526 mv a0,s1 - c004a4d4: e42e sd a1,8(sp) - c004a4d6: d39d40ef jal ra,c001f20e + c004a6a2: 8526 mv a0,s1 + c004a6a4: e42e sd a1,8(sp) + c004a6a6: d39d40ef jal ra,c001f3de /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3422 JS_FreeAtom(ctx, basename_atom); - c004a4da: 65a2 ld a1,8(sp) + c004a6aa: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3421 basename = JS_AtomToCString(ctx, basename_atom); - c004a4dc: 8a2a mv s4,a0 + c004a6ac: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3422 JS_FreeAtom(ctx, basename_atom); - c004a4de: 8526 mv a0,s1 - c004a4e0: 82cbd0ef jal ra,c000750c + c004a6ae: 8526 mv a0,s1 + c004a6b0: f4bbc0ef jal ra,c00075fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3423 if (!basename) - c004a4e4: 000a1563 bnez s4,c004a4ee + c004a6b4: 000a1563 bnez s4,c004a6be /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3407 const char *filename = NULL, *basename; - c004a4e8: 4981 li s3,0 + c004a6b8: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3405 JSValue obj = JS_UNDEFINED; - c004a4ea: 490d li s2,3 - c004a4ec: a07d j c004a59a + c004a6ba: 490d li s2,3 + c004a6bc: a07d j c004a76a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3427 filename = JS_ToCString(ctx, argv[0]); - c004a4ee: 00093583 ld a1,0(s2) - c004a4f2: 00893603 ld a2,8(s2) - c004a4f6: 8526 mv a0,s1 - c004a4f8: e5dfd0ef jal ra,c0048354 - c004a4fc: 89aa mv s3,a0 + c004a6be: 00093583 ld a1,0(s2) + c004a6c2: 00893603 ld a2,8(s2) + c004a6c6: 8526 mv a0,s1 + c004a6c8: e5dfd0ef jal ra,c0048524 + c004a6cc: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3428 if (!filename) - c004a4fe: d56d beqz a0,c004a4e8 + c004a6ce: d56d beqz a0,c004a6b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3431 args = malloc(sizeof(*args)); - c004a500: 02000513 li a0,32 - c004a504: 101080ef jal ra,c0052e04 - c004a508: 842a mv s0,a0 + c004a6d0: 02000513 li a0,32 + c004a6d4: 101080ef jal ra,c0052fd4 + c004a6d8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3432 if (!args) - c004a50a: 0e050f63 beqz a0,c004a608 + c004a6da: 0e050f63 beqz a0,c004a7d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3434 memset(args, 0, sizeof(*args)); - c004a50e: 00053023 sd zero,0(a0) - c004a512: 00053423 sd zero,8(a0) - c004a516: 00053823 sd zero,16(a0) - c004a51a: 00053c23 sd zero,24(a0) + c004a6de: 00053023 sd zero,0(a0) + c004a6e2: 00053423 sd zero,8(a0) + c004a6e6: 00053823 sd zero,16(a0) + c004a6ea: 00053c23 sd zero,24(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3435 args->filename = strdup(filename); - c004a51e: 854e mv a0,s3 - c004a520: 20e0c0ef jal ra,c005672e - c004a524: e008 sd a0,0(s0) + c004a6ee: 854e mv a0,s3 + c004a6f0: 20e0c0ef jal ra,c00568fe + c004a6f4: e008 sd a0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3436 args->basename = strdup(basename); - c004a526: 8552 mv a0,s4 - c004a528: 2060c0ef jal ra,c005672e - c004a52c: e408 sd a0,8(s0) + c004a6f6: 8552 mv a0,s4 + c004a6f8: 2060c0ef jal ra,c00568fe + c004a6fc: e408 sd a0,8(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3439 args->recv_pipe = js_new_message_pipe(); - c004a52e: d78ff0ef jal ra,c0049aa6 - c004a532: e808 sd a0,16(s0) + c004a6fe: d78ff0ef jal ra,c0049c76 + c004a702: e808 sd a0,16(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3440 if (!args->recv_pipe) - c004a534: 0c050a63 beqz a0,c004a608 + c004a704: 0c050a63 beqz a0,c004a7d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3442 args->send_pipe = js_new_message_pipe(); - c004a538: d6eff0ef jal ra,c0049aa6 - c004a53c: ec08 sd a0,24(s0) - c004a53e: 86aa mv a3,a0 + c004a708: d6eff0ef jal ra,c0049c76 + c004a70c: ec08 sd a0,24(s0) + c004a70e: 86aa mv a3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3443 if (!args->send_pipe) - c004a540: 0c050463 beqz a0,c004a608 + c004a710: 0c050463 beqz a0,c004a7d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3446 obj = js_worker_ctor_internal(ctx, new_target, - c004a544: 6818 ld a4,16(s0) - c004a546: 65c2 ld a1,16(sp) - c004a548: 6662 ld a2,24(sp) - c004a54a: 8526 mv a0,s1 - c004a54c: f1cff0ef jal ra,c0049c68 - c004a550: f42a sd a0,40(sp) - c004a552: f82e sd a1,48(sp) + c004a714: 6818 ld a4,16(s0) + c004a716: 65c2 ld a1,16(sp) + c004a718: 6662 ld a2,24(sp) + c004a71a: 8526 mv a0,s1 + c004a71c: f1cff0ef jal ra,c0049e38 + c004a720: f42a sd a0,40(sp) + c004a722: f82e sd a1,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3448 if (JS_IsException(obj)) - c004a554: 0005871b sext.w a4,a1 - c004a558: 4799 li a5,6 + c004a724: 0005871b sext.w a4,a1 + c004a728: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3446 obj = js_worker_ctor_internal(ctx, new_target, - c004a55a: 892e mv s2,a1 + c004a72a: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3448 if (JS_IsException(obj)) - c004a55c: 02f70f63 beq a4,a5,c004a59a + c004a72c: 02f70f63 beq a4,a5,c004a76a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3451 pthread_attr_init(&attr); - c004a560: 00a8 addi a0,sp,72 - c004a562: 12b090ef jal ra,c0053e8c + c004a730: 00a8 addi a0,sp,72 + c004a732: 12b090ef jal ra,c005405c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3453 pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); - c004a566: 4585 li a1,1 - c004a568: 00a8 addi a0,sp,72 - c004a56a: 15d090ef jal ra,c0053ec6 + c004a736: 4585 li a1,1 + c004a738: 00a8 addi a0,sp,72 + c004a73a: 15d090ef jal ra,c0054096 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3454 ret = pthread_create(&tid, &attr, worker_func, args); - c004a56e: 86a2 mv a3,s0 - c004a570: 00002617 auipc a2,0x2 - c004a574: 54e60613 addi a2,a2,1358 # c004cabe - c004a578: 00ac addi a1,sp,72 - c004a57a: 1048 addi a0,sp,36 - c004a57c: 185090ef jal ra,c0053f00 - c004a580: 8aaa mv s5,a0 + c004a73e: 86a2 mv a3,s0 + c004a740: 00002617 auipc a2,0x2 + c004a744: 54e60613 addi a2,a2,1358 # c004cc8e + c004a748: 00ac addi a1,sp,72 + c004a74a: 1048 addi a0,sp,36 + c004a74c: 185090ef jal ra,c00540d0 + c004a750: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3455 pthread_attr_destroy(&attr); - c004a582: 00a8 addi a0,sp,72 - c004a584: 129090ef jal ra,c0053eac + c004a752: 00a8 addi a0,sp,72 + c004a754: 129090ef jal ra,c005407c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3456 if (ret != 0) { - c004a588: 040a8963 beqz s5,c004a5da + c004a758: 040a8963 beqz s5,c004a7aa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3457 JS_ThrowTypeError(ctx, "could not create worker"); - c004a58c: 00026597 auipc a1,0x26 - c004a590: 57458593 addi a1,a1,1396 # c0070b00 - c004a594: 8526 mv a0,s1 - c004a596: e61c80ef jal ra,c00133f6 + c004a75c: 00026597 auipc a1,0x26 + c004a760: 60458593 addi a1,a1,1540 # c0070d60 + c004a764: 8526 mv a0,s1 + c004a766: d7fc80ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3466 JS_FreeCString(ctx, basename); - c004a59a: 85d2 mv a1,s4 - c004a59c: 8526 mv a0,s1 - c004a59e: 8e3be0ef jal ra,c0008e80 + c004a76a: 85d2 mv a1,s4 + c004a76c: 8526 mv a0,s1 + c004a76e: 801be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3467 JS_FreeCString(ctx, filename); - c004a5a2: 85ce mv a1,s3 - c004a5a4: 8526 mv a0,s1 - c004a5a6: 8dbbe0ef jal ra,c0008e80 + c004a772: 85ce mv a1,s3 + c004a774: 8526 mv a0,s1 + c004a776: ff8be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3468 if (args) { - c004a5aa: c005 beqz s0,c004a5ca + c004a77a: c005 beqz s0,c004a79a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3469 free(args->filename); - c004a5ac: 6008 ld a0,0(s0) - c004a5ae: 04b080ef jal ra,c0052df8 + c004a77c: 6008 ld a0,0(s0) + c004a77e: 04b080ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3470 free(args->basename); - c004a5b2: 6408 ld a0,8(s0) - c004a5b4: 045080ef jal ra,c0052df8 + c004a782: 6408 ld a0,8(s0) + c004a784: 045080ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3471 js_free_message_pipe(args->recv_pipe); - c004a5b8: 6808 ld a0,16(s0) - c004a5ba: e47ff0ef jal ra,c004a400 + c004a788: 6808 ld a0,16(s0) + c004a78a: e47ff0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3472 js_free_message_pipe(args->send_pipe); - c004a5be: 6c08 ld a0,24(s0) - c004a5c0: e41ff0ef jal ra,c004a400 + c004a78e: 6c08 ld a0,24(s0) + c004a790: e41ff0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3473 free(args); - c004a5c4: 8522 mv a0,s0 - c004a5c6: 033080ef jal ra,c0052df8 + c004a794: 8522 mv a0,s0 + c004a796: 033080ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3475 JS_FreeValue(ctx, obj); - c004a5ca: 75a2 ld a1,40(sp) - c004a5cc: 864a mv a2,s2 - c004a5ce: 8526 mv a0,s1 - c004a5d0: d3dfd0ef jal ra,c004830c + c004a79a: 75a2 ld a1,40(sp) + c004a79c: 864a mv a2,s2 + c004a79e: 8526 mv a0,s1 + c004a7a0: d3dfd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3476 return JS_EXCEPTION; - c004a5d4: 4799 li a5,6 - c004a5d6: fc02 sd zero,56(sp) - c004a5d8: a821 j c004a5f0 + c004a7a4: 4799 li a5,6 + c004a7a6: fc02 sd zero,56(sp) + c004a7a8: a821 j c004a7c0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3460 JS_FreeCString(ctx, basename); - c004a5da: 85d2 mv a1,s4 - c004a5dc: 8526 mv a0,s1 - c004a5de: 8a3be0ef jal ra,c0008e80 + c004a7aa: 85d2 mv a1,s4 + c004a7ac: 8526 mv a0,s1 + c004a7ae: fc0be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3461 JS_FreeCString(ctx, filename); - c004a5e2: 85ce mv a1,s3 - c004a5e4: 8526 mv a0,s1 - c004a5e6: 89bbe0ef jal ra,c0008e80 + c004a7b2: 85ce mv a1,s3 + c004a7b4: 8526 mv a0,s1 + c004a7b6: fb8be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3462 return obj; - c004a5ea: 77a2 ld a5,40(sp) - c004a5ec: fc3e sd a5,56(sp) - c004a5ee: 77c2 ld a5,48(sp) + c004a7ba: 77a2 ld a5,40(sp) + c004a7bc: fc3e sd a5,56(sp) + c004a7be: 77c2 ld a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3477 } - c004a5f0: 60ea ld ra,152(sp) - c004a5f2: 644a ld s0,144(sp) + c004a7c0: 60ea ld ra,152(sp) + c004a7c2: 644a ld s0,144(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3476 return JS_EXCEPTION; - c004a5f4: e0be sd a5,64(sp) + c004a7c4: e0be sd a5,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3477 } - c004a5f6: 7562 ld a0,56(sp) - c004a5f8: 6586 ld a1,64(sp) - c004a5fa: 64aa ld s1,136(sp) - c004a5fc: 690a ld s2,128(sp) - c004a5fe: 79e6 ld s3,120(sp) - c004a600: 7a46 ld s4,112(sp) - c004a602: 7aa6 ld s5,104(sp) - c004a604: 610d addi sp,sp,160 - c004a606: 8082 ret + c004a7c6: 7562 ld a0,56(sp) + c004a7c8: 6586 ld a1,64(sp) + c004a7ca: 64aa ld s1,136(sp) + c004a7cc: 690a ld s2,128(sp) + c004a7ce: 79e6 ld s3,120(sp) + c004a7d0: 7a46 ld s4,112(sp) + c004a7d2: 7aa6 ld s5,104(sp) + c004a7d4: 610d addi sp,sp,160 + c004a7d6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3464 JS_ThrowOutOfMemory(ctx); - c004a608: 8526 mv a0,s1 - c004a60a: e12ca0ef jal ra,c0014c1c - c004a60e: bdf1 j c004a4ea + c004a7d8: 8526 mv a0,s1 + c004a7da: d30ca0ef jal ra,c0014d0a + c004a7de: bdf1 j c004a6ba -00000000c004a610 : +00000000c004a7e0 : js_free_port(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3290 static void js_free_port(JSRuntime *rt, JSWorkerMessageHandler *port) - c004a610: 1101 addi sp,sp,-32 - c004a612: ec06 sd ra,24(sp) - c004a614: e822 sd s0,16(sp) - c004a616: e426 sd s1,8(sp) - c004a618: 84aa mv s1,a0 + c004a7e0: 1101 addi sp,sp,-32 + c004a7e2: ec06 sd ra,24(sp) + c004a7e4: e822 sd s0,16(sp) + c004a7e6: e426 sd s1,8(sp) + c004a7e8: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3293 js_free_message_pipe(port->recv_pipe); - c004a61a: 6988 ld a0,16(a1) + c004a7ea: 6988 ld a0,16(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3290 static void js_free_port(JSRuntime *rt, JSWorkerMessageHandler *port) - c004a61c: 842e mv s0,a1 + c004a7ec: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3293 js_free_message_pipe(port->recv_pipe); - c004a61e: de3ff0ef jal ra,c004a400 + c004a7ee: de3ff0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3294 JS_FreeValueRT(rt, port->on_message_func); - c004a622: 6c0c ld a1,24(s0) - c004a624: 7010 ld a2,32(s0) - c004a626: 8526 mv a0,s1 - c004a628: 97eff0ef jal ra,c00497a6 + c004a7f2: 6c0c ld a1,24(s0) + c004a7f4: 7010 ld a2,32(s0) + c004a7f6: 8526 mv a0,s1 + c004a7f8: 97eff0ef jal ra,c0049976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3295 list_del(&port->link); - c004a62c: 8522 mv a0,s0 - c004a62e: c8ffd0ef jal ra,c00482bc + c004a7fc: 8522 mv a0,s0 + c004a7fe: c8ffd0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3296 js_free_rt(rt, port); - c004a632: 85a2 mv a1,s0 + c004a802: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3298 } - c004a634: 6442 ld s0,16(sp) - c004a636: 60e2 ld ra,24(sp) + c004a804: 6442 ld s0,16(sp) + c004a806: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3296 js_free_rt(rt, port); - c004a638: 8526 mv a0,s1 + c004a808: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3298 } - c004a63a: 64a2 ld s1,8(sp) - c004a63c: 6105 addi sp,sp,32 + c004a80a: 64a2 ld s1,8(sp) + c004a80c: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3296 js_free_rt(rt, port); - c004a63e: d68bc06f j c0006ba6 + c004a80e: c86bc06f j c0006c94 -00000000c004a642 : +00000000c004a812 : js_dump_obj(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3876 @@ -204042,6277 +204240,6277 @@ js_dump_obj(): } static void js_dump_obj(JSContext *ctx, FILE *f, JSValueConst val) - c004a642: 7179 addi sp,sp,-48 - c004a644: ec26 sd s1,24(sp) - c004a646: f406 sd ra,40(sp) - c004a648: f022 sd s0,32(sp) - c004a64a: 84aa mv s1,a0 + c004a812: 7179 addi sp,sp,-48 + c004a814: ec26 sd s1,24(sp) + c004a816: f406 sd ra,40(sp) + c004a818: f022 sd s0,32(sp) + c004a81a: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3880 { const char *str; str = JS_ToCString(ctx, val); - c004a64c: d09fd0ef jal ra,c0048354 + c004a81c: d09fd0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3881 if (str) { - c004a650: c131 beqz a0,c004a694 - c004a652: 842a mv s0,a0 + c004a820: c131 beqz a0,c004a864 + c004a822: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3882 write(1, "js_dump_obj: ", 13); write(1, str, strlen(str)); write(1, "\n", 1);//// - c004a654: 4635 li a2,13 - c004a656: 00026597 auipc a1,0x26 - c004a65a: 4c258593 addi a1,a1,1218 # c0070b18 - c004a65e: 4505 li a0,1 - c004a660: 7e90c0ef jal ra,c0057648 - c004a664: 8522 mv a0,s0 - c004a666: 34a0c0ef jal ra,c00569b0 - c004a66a: 862a mv a2,a0 - c004a66c: 85a2 mv a1,s0 - c004a66e: 4505 li a0,1 - c004a670: 7d90c0ef jal ra,c0057648 - c004a674: 00026597 auipc a1,0x26 - c004a678: 4cc58593 addi a1,a1,1228 # c0070b40 - c004a67c: 4605 li a2,1 - c004a67e: 4505 li a0,1 - c004a680: 7c90c0ef jal ra,c0057648 + c004a824: 4635 li a2,13 + c004a826: 00026597 auipc a1,0x26 + c004a82a: 55258593 addi a1,a1,1362 # c0070d78 + c004a82e: 4505 li a0,1 + c004a830: 7e90c0ef jal ra,c0057818 + c004a834: 8522 mv a0,s0 + c004a836: 34a0c0ef jal ra,c0056b80 + c004a83a: 862a mv a2,a0 + c004a83c: 85a2 mv a1,s0 + c004a83e: 4505 li a0,1 + c004a840: 7d90c0ef jal ra,c0057818 + c004a844: 00026597 auipc a1,0x26 + c004a848: 55c58593 addi a1,a1,1372 # c0070da0 + c004a84c: 4605 li a2,1 + c004a84e: 4505 li a0,1 + c004a850: 7c90c0ef jal ra,c0057818 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3884 ////fprintf(f, "%s\n", str); JS_FreeCString(ctx, str); - c004a684: 85a2 mv a1,s0 + c004a854: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3889 } else { write(1, "js_dump_obj: [exception]\n", 25);//// ////fprintf(f, "[exception]\n"); } } - c004a686: 7402 ld s0,32(sp) - c004a688: 70a2 ld ra,40(sp) + c004a856: 7402 ld s0,32(sp) + c004a858: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3884 JS_FreeCString(ctx, str); - c004a68a: 8526 mv a0,s1 + c004a85a: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3889 } - c004a68c: 64e2 ld s1,24(sp) - c004a68e: 6145 addi sp,sp,48 + c004a85c: 64e2 ld s1,24(sp) + c004a85e: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3884 JS_FreeCString(ctx, str); - c004a690: ff0be06f j c0008e80 + c004a860: f0ebe06f j c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3889 } - c004a694: 7402 ld s0,32(sp) - c004a696: 70a2 ld ra,40(sp) - c004a698: 64e2 ld s1,24(sp) + c004a864: 7402 ld s0,32(sp) + c004a866: 70a2 ld ra,40(sp) + c004a868: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3886 write(1, "js_dump_obj: [exception]\n", 25);//// - c004a69a: 4665 li a2,25 - c004a69c: 00026597 auipc a1,0x26 - c004a6a0: 48c58593 addi a1,a1,1164 # c0070b28 - c004a6a4: 4505 li a0,1 + c004a86a: 4665 li a2,25 + c004a86c: 00026597 auipc a1,0x26 + c004a870: 51c58593 addi a1,a1,1308 # c0070d88 + c004a874: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3889 } - c004a6a6: 6145 addi sp,sp,48 + c004a876: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3886 write(1, "js_dump_obj: [exception]\n", 25);//// - c004a6a8: 7a10c06f j c0057648 + c004a878: 7a10c06f j c0057818 -00000000c004a6ac : +00000000c004a87c : js_std_dump_error1(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3892 static void js_std_dump_error1(JSContext *ctx, JSValueConst exception_val) { - c004a6ac: 7139 addi sp,sp,-64 - c004a6ae: fc06 sd ra,56(sp) - c004a6b0: f822 sd s0,48(sp) - c004a6b2: f426 sd s1,40(sp) - c004a6b4: e02e sd a1,0(sp) - c004a6b6: e432 sd a2,8(sp) - c004a6b8: 842a mv s0,a0 + c004a87c: 7139 addi sp,sp,-64 + c004a87e: fc06 sd ra,56(sp) + c004a880: f822 sd s0,48(sp) + c004a882: f426 sd s1,40(sp) + c004a884: e02e sd a1,0(sp) + c004a886: e432 sd a2,8(sp) + c004a888: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3896 JSValue val; BOOL is_error; is_error = JS_IsError(ctx, exception_val); - c004a6ba: 968c00ef jal ra,c000a822 - c004a6be: 84aa mv s1,a0 + c004a88a: 886c00ef jal ra,c000a910 + c004a88e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3897 js_dump_obj(ctx, stderr, exception_val); - c004a6c0: 4509 li a0,2 - c004a6c2: 1260b0ef jal ra,c00557e8 - c004a6c6: 6582 ld a1,0(sp) - c004a6c8: 6622 ld a2,8(sp) - c004a6ca: 8522 mv a0,s0 - c004a6cc: f77ff0ef jal ra,c004a642 + c004a890: 4509 li a0,2 + c004a892: 1260b0ef jal ra,c00559b8 + c004a896: 6582 ld a1,0(sp) + c004a898: 6622 ld a2,8(sp) + c004a89a: 8522 mv a0,s0 + c004a89c: f77ff0ef jal ra,c004a812 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3898 if (is_error) { - c004a6d0: c0a9 beqz s1,c004a712 + c004a8a0: c0a9 beqz s1,c004a8e2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3899 val = JS_GetPropertyStr(ctx, exception_val, "stack"); - c004a6d2: 6582 ld a1,0(sp) - c004a6d4: 6622 ld a2,8(sp) - c004a6d6: 00026697 auipc a3,0x26 - c004a6da: 47268693 addi a3,a3,1138 # c0070b48 - c004a6de: 8522 mv a0,s0 - c004a6e0: f25ce0ef jal ra,c0019604 - c004a6e4: ec2e sd a1,24(sp) - c004a6e6: e82a sd a0,16(sp) + c004a8a2: 6582 ld a1,0(sp) + c004a8a4: 6622 ld a2,8(sp) + c004a8a6: 00026697 auipc a3,0x26 + c004a8aa: 50268693 addi a3,a3,1282 # c0070da8 + c004a8ae: 8522 mv a0,s0 + c004a8b0: f25ce0ef jal ra,c00197d4 + c004a8b4: ec2e sd a1,24(sp) + c004a8b6: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3900 if (!JS_IsUndefined(val)) { - c004a6e8: 2581 sext.w a1,a1 - c004a6ea: 478d li a5,3 - c004a6ec: 00f58a63 beq a1,a5,c004a700 + c004a8b8: 2581 sext.w a1,a1 + c004a8ba: 478d li a5,3 + c004a8bc: 00f58a63 beq a1,a5,c004a8d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3901 js_dump_obj(ctx, stderr, val); - c004a6f0: 4509 li a0,2 - c004a6f2: 0f60b0ef jal ra,c00557e8 - c004a6f6: 65c2 ld a1,16(sp) - c004a6f8: 6662 ld a2,24(sp) - c004a6fa: 8522 mv a0,s0 - c004a6fc: f47ff0ef jal ra,c004a642 + c004a8c0: 4509 li a0,2 + c004a8c2: 0f60b0ef jal ra,c00559b8 + c004a8c6: 65c2 ld a1,16(sp) + c004a8c8: 6662 ld a2,24(sp) + c004a8ca: 8522 mv a0,s0 + c004a8cc: f47ff0ef jal ra,c004a812 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3903 } JS_FreeValue(ctx, val); - c004a700: 8522 mv a0,s0 + c004a8d0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3905 } } - c004a702: 7442 ld s0,48(sp) + c004a8d2: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3903 JS_FreeValue(ctx, val); - c004a704: 65c2 ld a1,16(sp) - c004a706: 6662 ld a2,24(sp) + c004a8d4: 65c2 ld a1,16(sp) + c004a8d6: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3905 } - c004a708: 70e2 ld ra,56(sp) - c004a70a: 74a2 ld s1,40(sp) - c004a70c: 6121 addi sp,sp,64 + c004a8d8: 70e2 ld ra,56(sp) + c004a8da: 74a2 ld s1,40(sp) + c004a8dc: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3903 JS_FreeValue(ctx, val); - c004a70e: bfffd06f j c004830c + c004a8de: bfffd06f j c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3905 } - c004a712: 70e2 ld ra,56(sp) - c004a714: 7442 ld s0,48(sp) - c004a716: 74a2 ld s1,40(sp) - c004a718: 6121 addi sp,sp,64 - c004a71a: 8082 ret + c004a8e2: 70e2 ld ra,56(sp) + c004a8e4: 7442 ld s0,48(sp) + c004a8e6: 74a2 ld s1,40(sp) + c004a8e8: 6121 addi sp,sp,64 + c004a8ea: 8082 ret -00000000c004a71c : +00000000c004a8ec : js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2876 { - c004a71c: de010113 addi sp,sp,-544 - c004a720: 20113c23 sd ra,536(sp) - c004a724: 20813823 sd s0,528(sp) - c004a728: 21213023 sd s2,512(sp) - c004a72c: ffce sd s3,504(sp) - c004a72e: f3da sd s6,480(sp) - c004a730: 20913423 sd s1,520(sp) - c004a734: fbd2 sd s4,496(sp) - c004a736: f7d6 sd s5,488(sp) - c004a738: efde sd s7,472(sp) - c004a73a: ebe2 sd s8,464(sp) - c004a73c: e7e6 sd s9,456(sp) - c004a73e: e3ea sd s10,448(sp) - c004a740: ff6e sd s11,440(sp) + c004a8ec: de010113 addi sp,sp,-544 + c004a8f0: 20113c23 sd ra,536(sp) + c004a8f4: 20813823 sd s0,528(sp) + c004a8f8: 21213023 sd s2,512(sp) + c004a8fc: ffce sd s3,504(sp) + c004a8fe: f3da sd s6,480(sp) + c004a900: 20913423 sd s1,520(sp) + c004a904: fbd2 sd s4,496(sp) + c004a906: f7d6 sd s5,488(sp) + c004a908: efde sd s7,472(sp) + c004a90a: ebe2 sd s8,464(sp) + c004a90c: e7e6 sd s9,456(sp) + c004a90e: e3ea sd s10,448(sp) + c004a910: ff6e sd s11,440(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2877 JSValueConst options, args = argv[0]; - c004a742: 631c ld a5,0(a4) + c004a912: 631c ld a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2876 { - c004a744: 89ba mv s3,a4 - c004a746: 842a mv s0,a0 + c004a914: 89ba mv s3,a4 + c004a916: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2877 JSValueConst options, args = argv[0]; - c004a748: f0be sd a5,96(sp) - c004a74a: 671c ld a5,8(a4) + c004a918: f0be sd a5,96(sp) + c004a91a: 671c ld a5,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2876 { - c004a74c: e82e sd a1,16(sp) - c004a74e: ec32 sd a2,24(sp) - c004a750: 8b36 mv s6,a3 + c004a91c: e82e sd a1,16(sp) + c004a91e: ec32 sd a2,24(sp) + c004a920: 8b36 mv s6,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2877 JSValueConst options, args = argv[0]; - c004a752: f4be sd a5,104(sp) + c004a922: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2880 char **envp = environ; - c004a754: 40b0c0ef jal ra,c005735e + c004a924: 40b0c0ef jal ra,c005752e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2888 val = JS_GetPropertyStr(ctx, args, "length"); - c004a758: 7586 ld a1,96(sp) - c004a75a: 7626 ld a2,104(sp) + c004a928: 7586 ld a1,96(sp) + c004a92a: 7626 ld a2,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2883 BOOL block_flag = TRUE, use_path = TRUE; - c004a75c: 4785 li a5,1 - c004a75e: d23e sw a5,36(sp) - c004a760: d43e sw a5,40(sp) + c004a92c: 4785 li a5,1 + c004a92e: d23e sw a5,36(sp) + c004a930: d43e sw a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2880 char **envp = environ; - c004a762: 892a mv s2,a0 + c004a932: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2886 uint32_t uid = -1, gid = -1; - c004a764: 57fd li a5,-1 + c004a934: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2888 val = JS_GetPropertyStr(ctx, args, "length"); - c004a766: 00016697 auipc a3,0x16 - c004a76a: 2ca68693 addi a3,a3,714 # c0060a30 - c004a76e: 8522 mv a0,s0 + c004a936: 00016697 auipc a3,0x16 + c004a93a: 35a68693 addi a3,a3,858 # c0060c90 + c004a93e: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2886 uint32_t uid = -1, gid = -1; - c004a770: d63e sw a5,44(sp) - c004a772: d83e sw a5,48(sp) + c004a940: d63e sw a5,44(sp) + c004a942: d83e sw a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2888 val = JS_GetPropertyStr(ctx, args, "length"); - c004a774: e91ce0ef jal ra,c0019604 - c004a778: f8aa sd a0,112(sp) - c004a77a: fcae sd a1,120(sp) + c004a944: e91ce0ef jal ra,c00197d4 + c004a948: f8aa sd a0,112(sp) + c004a94a: fcae sd a1,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2889 if (JS_IsException(val)) - c004a77c: 0005871b sext.w a4,a1 - c004a780: 4799 li a5,6 - c004a782: 02f71b63 bne a4,a5,c004a7b8 + c004a94c: 0005871b sext.w a4,a1 + c004a950: 4799 li a5,6 + c004a952: 02f71b63 bne a4,a5,c004a988 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2890 return JS_EXCEPTION; - c004a786: 4799 li a5,6 - c004a788: e902 sd zero,144(sp) - c004a78a: ed3e sd a5,152(sp) + c004a956: 4799 li a5,6 + c004a958: e902 sd zero,144(sp) + c004a95a: ed3e sd a5,152(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3069 (discriminator 1) } - c004a78c: 21813083 ld ra,536(sp) - c004a790: 21013403 ld s0,528(sp) - c004a794: 654a ld a0,144(sp) - c004a796: 65ea ld a1,152(sp) - c004a798: 20813483 ld s1,520(sp) - c004a79c: 20013903 ld s2,512(sp) - c004a7a0: 79fe ld s3,504(sp) - c004a7a2: 7a5e ld s4,496(sp) - c004a7a4: 7abe ld s5,488(sp) - c004a7a6: 7b1e ld s6,480(sp) - c004a7a8: 6bfe ld s7,472(sp) - c004a7aa: 6c5e ld s8,464(sp) - c004a7ac: 6cbe ld s9,456(sp) - c004a7ae: 6d1e ld s10,448(sp) - c004a7b0: 7dfa ld s11,440(sp) - c004a7b2: 22010113 addi sp,sp,544 - c004a7b6: 8082 ret - c004a7b8: 862a mv a2,a0 - c004a7ba: 86ae mv a3,a1 + c004a95c: 21813083 ld ra,536(sp) + c004a960: 21013403 ld s0,528(sp) + c004a964: 654a ld a0,144(sp) + c004a966: 65ea ld a1,152(sp) + c004a968: 20813483 ld s1,520(sp) + c004a96c: 20013903 ld s2,512(sp) + c004a970: 79fe ld s3,504(sp) + c004a972: 7a5e ld s4,496(sp) + c004a974: 7abe ld s5,488(sp) + c004a976: 7b1e ld s6,480(sp) + c004a978: 6bfe ld s7,472(sp) + c004a97a: 6c5e ld s8,464(sp) + c004a97c: 6cbe ld s9,456(sp) + c004a97e: 6d1e ld s10,448(sp) + c004a980: 7dfa ld s11,440(sp) + c004a982: 22010113 addi sp,sp,544 + c004a986: 8082 ret + c004a988: 862a mv a2,a0 + c004a98a: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2891 ret = JS_ToUint32(ctx, &exec_argc, val); - c004a7bc: f92a sd a0,176(sp) - c004a7be: fd2e sd a1,184(sp) + c004a98c: f92a sd a0,176(sp) + c004a98e: fd2e sd a1,184(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c004a7c0: 8522 mv a0,s0 - c004a7c2: 100c addi a1,sp,32 - c004a7c4: babd10ef jal ra,c001c36e + c004a990: 8522 mv a0,s0 + c004a992: 100c addi a1,sp,32 + c004a994: babd10ef jal ra,c001c53e js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2892 JS_FreeValue(ctx, val); - c004a7c8: 75c6 ld a1,112(sp) - c004a7ca: 7666 ld a2,120(sp) + c004a998: 75c6 ld a1,112(sp) + c004a99a: 7666 ld a2,120(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c004a7cc: 84aa mv s1,a0 + c004a99c: 84aa mv s1,a0 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2892 - c004a7ce: 8522 mv a0,s0 - c004a7d0: b3dfd0ef jal ra,c004830c + c004a99e: 8522 mv a0,s0 + c004a9a0: b3dfd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2893 if (ret) - c004a7d4: f8cd bnez s1,c004a786 + c004a9a4: f8cd bnez s1,c004a956 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2896 if (exec_argc < 1 || exec_argc > 65535) { - c004a7d6: 5582 lw a1,32(sp) - c004a7d8: 67c1 lui a5,0x10 - c004a7da: 17f9 addi a5,a5,-2 - c004a7dc: fff5871b addiw a4,a1,-1 - c004a7e0: 00e7fc63 bgeu a5,a4,c004a7f8 + c004a9a6: 5582 lw a1,32(sp) + c004a9a8: 67c1 lui a5,0x10 + c004a9aa: 17f9 addi a5,a5,-2 + c004a9ac: fff5871b addiw a4,a1,-1 + c004a9b0: 00e7fc63 bgeu a5,a4,c004a9c8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2897 return JS_ThrowTypeError(ctx, "invalid number of arguments"); - c004a7e4: 00026597 auipc a1,0x26 - c004a7e8: 37c58593 addi a1,a1,892 # c0070b60 - c004a7ec: 8522 mv a0,s0 - c004a7ee: c09c80ef jal ra,c00133f6 - c004a7f2: e92a sd a0,144(sp) - c004a7f4: ed2e sd a1,152(sp) - c004a7f6: bf59 j c004a78c + c004a9b4: 00026597 auipc a1,0x26 + c004a9b8: 40c58593 addi a1,a1,1036 # c0070dc0 + c004a9bc: 8522 mv a0,s0 + c004a9be: b27c80ef jal ra,c00134e4 + c004a9c2: e92a sd a0,144(sp) + c004a9c4: ed2e sd a1,152(sp) + c004a9c6: bf59 j c004a95c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2899 exec_argv = js_mallocz(ctx, sizeof(exec_argv[0]) * (exec_argc + 1)); - c004a7f8: 2585 addiw a1,a1,1 - c004a7fa: 02059793 slli a5,a1,0x20 - c004a7fe: 01d7d593 srli a1,a5,0x1d - c004a802: 8522 mv a0,s0 - c004a804: cd8cb0ef jal ra,c0015cdc - c004a808: 8a2a mv s4,a0 + c004a9c8: 2585 addiw a1,a1,1 + c004a9ca: 02059793 slli a5,a1,0x20 + c004a9ce: 01d7d593 srli a1,a5,0x1d + c004a9d2: 8522 mv a0,s0 + c004a9d4: cd8cb0ef jal ra,c0015eac + c004a9d8: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2900 if (!exec_argv) - c004a80a: dd35 beqz a0,c004a786 + c004a9da: dd35 beqz a0,c004a956 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2902 for(i = 0; i < exec_argc; i++) { - c004a80c: 4a81 li s5,0 + c004a9dc: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2904 if (JS_IsException(val)) - c004a80e: 4b99 li s7,6 + c004a9de: 4b99 li s7,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2902 (discriminator 1) for(i = 0; i < exec_argc; i++) { - c004a810: 5782 lw a5,32(sp) - c004a812: 08faee63 bltu s5,a5,c004a8ae + c004a9e0: 5782 lw a5,32(sp) + c004a9e2: 08faee63 bltu s5,a5,c004aa7e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2912 exec_argv[exec_argc] = NULL; - c004a816: 02079713 slli a4,a5,0x20 - c004a81a: 01d75793 srli a5,a4,0x1d - c004a81e: 97d2 add a5,a5,s4 - c004a820: 0007b023 sd zero,0(a5) # 10000 <__clzdi2-0xbfff0000> + c004a9e6: 02079713 slli a4,a5,0x20 + c004a9ea: 01d75793 srli a5,a4,0x1d + c004a9ee: 97d2 add a5,a5,s4 + c004a9f0: 0007b023 sd zero,0(a5) # 10000 <__clzdi2-0xbfff0000> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2915 std_fds[i] = i; - c004a824: 4785 li a5,1 - c004a826: 02079713 slli a4,a5,0x20 - c004a82a: e0ba sd a4,64(sp) - c004a82c: 4709 li a4,2 - c004a82e: c4ba sw a4,72(sp) + c004a9f4: 4785 li a5,1 + c004a9f6: 02079713 slli a4,a5,0x20 + c004a9fa: e0ba sd a4,64(sp) + c004a9fc: 4709 li a4,2 + c004a9fe: c4ba sw a4,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2918 if (argc >= 2) { - c004a830: 3b67d563 bge a5,s6,c004abda + c004aa00: 3b67d563 bge a5,s6,c004adaa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2919 options = argv[1]; - c004a834: 0109b603 ld a2,16(s3) - c004a838: 0189b683 ld a3,24(s3) + c004aa04: 0109b603 ld a2,16(s3) + c004aa08: 0189b683 ld a3,24(s3) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2921 if (get_bool_option(ctx, &block_flag, options, "block")) - c004a83c: 00026717 auipc a4,0x26 - c004a840: 34470713 addi a4,a4,836 # c0070b80 - c004a844: 104c addi a1,sp,36 - c004a846: 8522 mv a0,s0 + c004aa0c: 00026717 auipc a4,0x26 + c004aa10: 3d470713 addi a4,a4,980 # c0070de0 + c004aa14: 104c addi a1,sp,36 + c004aa16: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2919 options = argv[1]; - c004a848: e8b2 sd a2,80(sp) - c004a84a: ecb6 sd a3,88(sp) + c004aa18: e8b2 sd a2,80(sp) + c004aa1a: ecb6 sd a3,88(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2921 if (get_bool_option(ctx, &block_flag, options, "block")) - c004a84c: c04fe0ef jal ra,c0048c50 - c004a850: 58051163 bnez a0,c004add2 + c004aa1c: c04fe0ef jal ra,c0048e20 + c004aa20: 58051163 bnez a0,c004afa2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2923 if (get_bool_option(ctx, &use_path, options, "usePath")) - c004a854: 6646 ld a2,80(sp) - c004a856: 66e6 ld a3,88(sp) - c004a858: 00026717 auipc a4,0x26 - c004a85c: 33070713 addi a4,a4,816 # c0070b88 - c004a860: 102c addi a1,sp,40 - c004a862: 8522 mv a0,s0 - c004a864: becfe0ef jal ra,c0048c50 - c004a868: 56051563 bnez a0,c004add2 + c004aa24: 6646 ld a2,80(sp) + c004aa26: 66e6 ld a3,88(sp) + c004aa28: 00026717 auipc a4,0x26 + c004aa2c: 3c070713 addi a4,a4,960 # c0070de8 + c004aa30: 102c addi a1,sp,40 + c004aa32: 8522 mv a0,s0 + c004aa34: becfe0ef jal ra,c0048e20 + c004aa38: 56051563 bnez a0,c004afa2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2926 val = JS_GetPropertyStr(ctx, options, "file"); - c004a86c: 6666 ld a2,88(sp) - c004a86e: 65c6 ld a1,80(sp) - c004a870: 00029697 auipc a3,0x29 - c004a874: 27068693 addi a3,a3,624 # c0073ae0 - c004a878: 8522 mv a0,s0 - c004a87a: d8bce0ef jal ra,c0019604 - c004a87e: f8aa sd a0,112(sp) - c004a880: fcae sd a1,120(sp) + c004aa3c: 6666 ld a2,88(sp) + c004aa3e: 65c6 ld a1,80(sp) + c004aa40: 00029697 auipc a3,0x29 + c004aa44: 30068693 addi a3,a3,768 # c0073d40 + c004aa48: 8522 mv a0,s0 + c004aa4a: d8bce0ef jal ra,c00197d4 + c004aa4e: f8aa sd a0,112(sp) + c004aa50: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c004a882: 0005879b sext.w a5,a1 + c004aa52: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2927 if (JS_IsException(val)) - c004a886: 4719 li a4,6 + c004aa56: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2926 val = JS_GetPropertyStr(ctx, options, "file"); - c004a888: 862e mv a2,a1 + c004aa58: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2927 if (JS_IsException(val)) - c004a88a: 54e78463 beq a5,a4,c004add2 + c004aa5a: 54e78463 beq a5,a4,c004afa2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2929 if (!JS_IsUndefined(val)) { - c004a88e: 470d li a4,3 - c004a890: 04e78f63 beq a5,a4,c004a8ee + c004aa5e: 470d li a4,3 + c004aa60: 04e78f63 beq a5,a4,c004aabe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2930 file = JS_ToCString(ctx, val); - c004a894: 85aa mv a1,a0 - c004a896: 8522 mv a0,s0 - c004a898: abdfd0ef jal ra,c0048354 + c004aa64: 85aa mv a1,a0 + c004aa66: 8522 mv a0,s0 + c004aa68: abdfd0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2931 JS_FreeValue(ctx, val); - c004a89c: 75c6 ld a1,112(sp) - c004a89e: 7666 ld a2,120(sp) + c004aa6c: 75c6 ld a1,112(sp) + c004aa6e: 7666 ld a2,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2930 file = JS_ToCString(ctx, val); - c004a8a0: 84aa mv s1,a0 + c004aa70: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2931 JS_FreeValue(ctx, val); - c004a8a2: 8522 mv a0,s0 - c004a8a4: a69fd0ef jal ra,c004830c + c004aa72: 8522 mv a0,s0 + c004aa74: a69fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2932 if (!file) - c004a8a8: e4a1 bnez s1,c004a8f0 + c004aa78: e4a1 bnez s1,c004aac0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2879 const char **exec_argv, *file = NULL, *str, *cwd = NULL; - c004a8aa: 4981 li s3,0 - c004a8ac: a26d j c004aa56 + c004aa7a: 4981 li s3,0 + c004aa7c: a26d j c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2903 val = JS_GetPropertyUint32(ctx, args, i); - c004a8ae: 7626 ld a2,104(sp) - c004a8b0: 7586 ld a1,96(sp) - c004a8b2: 86d6 mv a3,s5 - c004a8b4: 8522 mv a0,s0 - c004a8b6: e16c70ef jal ra,c0011ecc - c004a8ba: f8aa sd a0,112(sp) - c004a8bc: fcae sd a1,120(sp) + c004aa7e: 7626 ld a2,104(sp) + c004aa80: 7586 ld a1,96(sp) + c004aa82: 86d6 mv a3,s5 + c004aa84: 8522 mv a0,s0 + c004aa86: d34c70ef jal ra,c0011fba + c004aa8a: f8aa sd a0,112(sp) + c004aa8c: fcae sd a1,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2904 if (JS_IsException(val)) - c004a8be: 0005879b sext.w a5,a1 + c004aa8e: 0005879b sext.w a5,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2903 val = JS_GetPropertyUint32(ctx, args, i); - c004a8c2: 862e mv a2,a1 + c004aa92: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2904 if (JS_IsException(val)) - c004a8c4: 51778763 beq a5,s7,c004add2 + c004aa94: 51778763 beq a5,s7,c004afa2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2906 str = JS_ToCString(ctx, val); - c004a8c8: 85aa mv a1,a0 - c004a8ca: 8522 mv a0,s0 - c004a8cc: a89fd0ef jal ra,c0048354 + c004aa98: 85aa mv a1,a0 + c004aa9a: 8522 mv a0,s0 + c004aa9c: a89fd0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2907 JS_FreeValue(ctx, val); - c004a8d0: 75c6 ld a1,112(sp) - c004a8d2: 7666 ld a2,120(sp) + c004aaa0: 75c6 ld a1,112(sp) + c004aaa2: 7666 ld a2,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2906 str = JS_ToCString(ctx, val); - c004a8d4: 84aa mv s1,a0 + c004aaa4: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2907 JS_FreeValue(ctx, val); - c004a8d6: 8522 mv a0,s0 - c004a8d8: a35fd0ef jal ra,c004830c + c004aaa6: 8522 mv a0,s0 + c004aaa8: a35fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2908 if (!str) - c004a8dc: d4f9 beqz s1,c004a8aa + c004aaac: d4f9 beqz s1,c004aa7a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2910 (discriminator 2) exec_argv[i] = str; - c004a8de: 020a9713 slli a4,s5,0x20 - c004a8e2: 01d75793 srli a5,a4,0x1d - c004a8e6: 97d2 add a5,a5,s4 - c004a8e8: e384 sd s1,0(a5) + c004aaae: 020a9713 slli a4,s5,0x20 + c004aab2: 01d75793 srli a5,a4,0x1d + c004aab6: 97d2 add a5,a5,s4 + c004aab8: e384 sd s1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2902 (discriminator 2) for(i = 0; i < exec_argc; i++) { - c004a8ea: 2a85 addiw s5,s5,1 - c004a8ec: b715 j c004a810 + c004aaba: 2a85 addiw s5,s5,1 + c004aabc: b715 j c004a9e0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2879 const char **exec_argv, *file = NULL, *str, *cwd = NULL; - c004a8ee: 4481 li s1,0 + c004aabe: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2936 val = JS_GetPropertyStr(ctx, options, "cwd"); - c004a8f0: 6666 ld a2,88(sp) - c004a8f2: 65c6 ld a1,80(sp) - c004a8f4: 00026697 auipc a3,0x26 - c004a8f8: 29c68693 addi a3,a3,668 # c0070b90 - c004a8fc: 8522 mv a0,s0 - c004a8fe: d07ce0ef jal ra,c0019604 - c004a902: f8aa sd a0,112(sp) - c004a904: fcae sd a1,120(sp) + c004aac0: 6666 ld a2,88(sp) + c004aac2: 65c6 ld a1,80(sp) + c004aac4: 00026697 auipc a3,0x26 + c004aac8: 32c68693 addi a3,a3,812 # c0070df0 + c004aacc: 8522 mv a0,s0 + c004aace: d07ce0ef jal ra,c00197d4 + c004aad2: f8aa sd a0,112(sp) + c004aad4: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004a906: 0005879b sext.w a5,a1 + c004aad6: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2937 if (JS_IsException(val)) - c004a90a: 4719 li a4,6 + c004aada: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2936 val = JS_GetPropertyStr(ctx, options, "cwd"); - c004a90c: 862e mv a2,a1 + c004aadc: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2937 if (JS_IsException(val)) - c004a90e: f8e78ee3 beq a5,a4,c004a8aa + c004aade: f8e78ee3 beq a5,a4,c004aa7a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2939 if (!JS_IsUndefined(val)) { - c004a912: 470d li a4,3 + c004aae2: 470d li a4,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2879 const char **exec_argv, *file = NULL, *str, *cwd = NULL; - c004a914: 4981 li s3,0 + c004aae4: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2939 if (!JS_IsUndefined(val)) { - c004a916: 00e78e63 beq a5,a4,c004a932 + c004aae6: 00e78e63 beq a5,a4,c004ab02 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2940 cwd = JS_ToCString(ctx, val); - c004a91a: 85aa mv a1,a0 - c004a91c: 8522 mv a0,s0 - c004a91e: a37fd0ef jal ra,c0048354 + c004aaea: 85aa mv a1,a0 + c004aaec: 8522 mv a0,s0 + c004aaee: a37fd0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2941 JS_FreeValue(ctx, val); - c004a922: 75c6 ld a1,112(sp) - c004a924: 7666 ld a2,120(sp) + c004aaf2: 75c6 ld a1,112(sp) + c004aaf4: 7666 ld a2,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2940 cwd = JS_ToCString(ctx, val); - c004a926: 89aa mv s3,a0 + c004aaf6: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2941 JS_FreeValue(ctx, val); - c004a928: 8522 mv a0,s0 - c004a92a: 9e3fd0ef jal ra,c004830c + c004aaf8: 8522 mv a0,s0 + c004aafa: 9e3fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2942 if (!cwd) - c004a92e: 12098463 beqz s3,c004aa56 + c004aafe: 12098463 beqz s3,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2947 for(i = 0; i < 3; i++) { - c004a932: 00028a97 auipc s5,0x28 - c004a936: 9cea8a93 addi s5,s5,-1586 # c0072300 - c004a93a: 04010c93 addi s9,sp,64 - c004a93e: 00028b17 auipc s6,0x28 - c004a942: 9dab0b13 addi s6,s6,-1574 # c0072318 + c004ab02: 00028a97 auipc s5,0x28 + c004ab06: a5ea8a93 addi s5,s5,-1442 # c0072560 + c004ab0a: 04010c93 addi s9,sp,64 + c004ab0e: 00028b17 auipc s6,0x28 + c004ab12: a6ab0b13 addi s6,s6,-1430 # c0072578 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2949 if (JS_IsException(val)) - c004a946: 4b99 li s7,6 + c004ab16: 4b99 li s7,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2951 if (!JS_IsUndefined(val)) { - c004a948: 4c0d li s8,3 + c004ab18: 4c0d li s8,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2948 val = JS_GetPropertyStr(ctx, options, std_name[i]); - c004a94a: 000ab683 ld a3,0(s5) - c004a94e: 6666 ld a2,88(sp) - c004a950: 65c6 ld a1,80(sp) - c004a952: 8522 mv a0,s0 - c004a954: cb1ce0ef jal ra,c0019604 - c004a958: f8aa sd a0,112(sp) - c004a95a: fcae sd a1,120(sp) + c004ab1a: 000ab683 ld a3,0(s5) + c004ab1e: 6666 ld a2,88(sp) + c004ab20: 65c6 ld a1,80(sp) + c004ab22: 8522 mv a0,s0 + c004ab24: cb1ce0ef jal ra,c00197d4 + c004ab28: f8aa sd a0,112(sp) + c004ab2a: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004a95c: 0005879b sext.w a5,a1 + c004ab2c: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2948 - c004a960: 862a mv a2,a0 - c004a962: 86ae mv a3,a1 + c004ab30: 862a mv a2,a0 + c004ab32: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2949 if (JS_IsException(val)) - c004a964: 0f778963 beq a5,s7,c004aa56 + c004ab34: 0f778963 beq a5,s7,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2951 if (!JS_IsUndefined(val)) { - c004a968: 03878163 beq a5,s8,c004a98a + c004ab38: 03878163 beq a5,s8,c004ab5a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2953 ret = JS_ToInt32(ctx, &fd, val); - c004a96c: 190c addi a1,sp,176 - c004a96e: 8522 mv a0,s0 - c004a970: 9ffd10ef jal ra,c001c36e + c004ab3c: 190c addi a1,sp,176 + c004ab3e: 8522 mv a0,s0 + c004ab40: 9ffd10ef jal ra,c001c53e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2954 JS_FreeValue(ctx, val); - c004a974: 75c6 ld a1,112(sp) - c004a976: 7666 ld a2,120(sp) + c004ab44: 75c6 ld a1,112(sp) + c004ab46: 7666 ld a2,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2953 ret = JS_ToInt32(ctx, &fd, val); - c004a978: 8d2a mv s10,a0 + c004ab48: 8d2a mv s10,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2954 JS_FreeValue(ctx, val); - c004a97a: 8522 mv a0,s0 - c004a97c: 991fd0ef jal ra,c004830c + c004ab4a: 8522 mv a0,s0 + c004ab4c: 991fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2955 if (ret) - c004a980: 0c0d1b63 bnez s10,c004aa56 + c004ab50: 0c0d1b63 bnez s10,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2957 std_fds[i] = fd; - c004a984: 57ca lw a5,176(sp) - c004a986: 00fca023 sw a5,0(s9) + c004ab54: 57ca lw a5,176(sp) + c004ab56: 00fca023 sw a5,0(s9) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2947 (discriminator 2) for(i = 0; i < 3; i++) { - c004a98a: 0aa1 addi s5,s5,8 - c004a98c: 0c91 addi s9,s9,4 - c004a98e: fb5b1ee3 bne s6,s5,c004a94a + c004ab5a: 0aa1 addi s5,s5,8 + c004ab5c: 0c91 addi s9,s9,4 + c004ab5e: fb5b1ee3 bne s6,s5,c004ab1a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2961 val = JS_GetPropertyStr(ctx, options, "env"); - c004a992: 65c6 ld a1,80(sp) - c004a994: 6666 ld a2,88(sp) - c004a996: 00026697 auipc a3,0x26 - c004a99a: 20268693 addi a3,a3,514 # c0070b98 - c004a99e: 8522 mv a0,s0 - c004a9a0: c65ce0ef jal ra,c0019604 - c004a9a4: f8aa sd a0,112(sp) - c004a9a6: fcae sd a1,120(sp) + c004ab62: 65c6 ld a1,80(sp) + c004ab64: 6666 ld a2,88(sp) + c004ab66: 00026697 auipc a3,0x26 + c004ab6a: 29268693 addi a3,a3,658 # c0070df8 + c004ab6e: 8522 mv a0,s0 + c004ab70: c65ce0ef jal ra,c00197d4 + c004ab74: f8aa sd a0,112(sp) + c004ab76: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004a9a8: 0005879b sext.w a5,a1 + c004ab78: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2962 if (JS_IsException(val)) - c004a9ac: 4719 li a4,6 + c004ab7c: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2961 val = JS_GetPropertyStr(ctx, options, "env"); - c004a9ae: 86aa mv a3,a0 - c004a9b0: 8aae mv s5,a1 + c004ab7e: 86aa mv a3,a0 + c004ab80: 8aae mv s5,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2962 if (JS_IsException(val)) - c004a9b2: 0ae78263 beq a5,a4,c004aa56 + c004ab82: 0ae78263 beq a5,a4,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2964 if (!JS_IsUndefined(val)) { - c004a9b6: 470d li a4,3 - c004a9b8: 04e78863 beq a5,a4,c004aa08 + c004ab86: 470d li a4,3 + c004ab88: 04e78863 beq a5,a4,c004abd8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2965 envp = build_envp(ctx, val); - c004a9bc: e12a sd a0,128(sp) - c004a9be: e52e sd a1,136(sp) + c004ab8c: e12a sd a0,128(sp) + c004ab8e: e52e sd a1,136(sp) build_envp(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2767 if (JS_GetOwnPropertyNames(ctx, &tab, &len, obj, - c004a9c0: 872e mv a4,a1 - c004a9c2: 47c5 li a5,17 - c004a9c4: 1850 addi a2,sp,52 - c004a9c6: 182c addi a1,sp,56 - c004a9c8: 8522 mv a0,s0 - c004a9ca: fdde50ef jal ra,c00309a6 + c004ab90: 872e mv a4,a1 + c004ab92: 47c5 li a5,17 + c004ab94: 1850 addi a2,sp,52 + c004ab96: 182c addi a1,sp,56 + c004ab98: 8522 mv a0,s0 + c004ab9a: fdde50ef jal ra,c0030b76 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2769 return NULL; - c004a9ce: 4901 li s2,0 + c004ab9e: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2767 if (JS_GetOwnPropertyNames(ctx, &tab, &len, obj, - c004a9d0: 02054563 bltz a0,c004a9fa + c004aba0: 02054563 bltz a0,c004abca /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2770 envp = js_mallocz(ctx, sizeof(envp[0]) * ((size_t)len + 1)); - c004a9d4: 03416583 lwu a1,52(sp) - c004a9d8: 8522 mv a0,s0 + c004aba4: 03416583 lwu a1,52(sp) + c004aba8: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2773 for(i = 0; i < len; i++) { - c004a9da: 4c01 li s8,0 + c004abaa: 4c01 li s8,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2770 envp = js_mallocz(ctx, sizeof(envp[0]) * ((size_t)len + 1)); - c004a9dc: 0585 addi a1,a1,1 - c004a9de: 058e slli a1,a1,0x3 - c004a9e0: afccb0ef jal ra,c0015cdc - c004a9e4: 892a mv s2,a0 + c004abac: 0585 addi a1,a1,1 + c004abae: 058e slli a1,a1,0x3 + c004abb0: afccb0ef jal ra,c0015eac + c004abb4: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2771 if (!envp) - c004a9e6: 0e051563 bnez a0,c004aad0 + c004abb6: 0e051563 bnez a0,c004aca0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2803 for(i = 0; i < len; i++) - c004a9ea: 4a81 li s5,0 - c004a9ec: 57d2 lw a5,52(sp) + c004abba: 4a81 li s5,0 + c004abbc: 57d2 lw a5,52(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2804 JS_FreeAtom(ctx, tab[i].atom); - c004a9ee: 75e2 ld a1,56(sp) + c004abbe: 75e2 ld a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2803 for(i = 0; i < len; i++) - c004a9f0: 16fae263 bltu s5,a5,c004ab54 + c004abc0: 16fae263 bltu s5,a5,c004ad24 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2805 js_free(ctx, tab); - c004a9f4: 8522 mv a0,s0 - c004a9f6: c44bc0ef jal ra,c0006e3a + c004abc4: 8522 mv a0,s0 + c004abc6: b62bc0ef jal ra,c0006f28 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2966 JS_FreeValue(ctx, val); - c004a9fa: 75c6 ld a1,112(sp) - c004a9fc: 7666 ld a2,120(sp) - c004a9fe: 8522 mv a0,s0 - c004aa00: 90dfd0ef jal ra,c004830c + c004abca: 75c6 ld a1,112(sp) + c004abcc: 7666 ld a2,120(sp) + c004abce: 8522 mv a0,s0 + c004abd0: 90dfd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2967 if (!envp) - c004aa04: 04090963 beqz s2,c004aa56 + c004abd4: 04090963 beqz s2,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2971 val = JS_GetPropertyStr(ctx, options, "uid"); - c004aa08: 6666 ld a2,88(sp) - c004aa0a: 65c6 ld a1,80(sp) - c004aa0c: 00026697 auipc a3,0x26 - c004aa10: 19468693 addi a3,a3,404 # c0070ba0 - c004aa14: 8522 mv a0,s0 - c004aa16: befce0ef jal ra,c0019604 - c004aa1a: f8aa sd a0,112(sp) - c004aa1c: fcae sd a1,120(sp) + c004abd8: 6666 ld a2,88(sp) + c004abda: 65c6 ld a1,80(sp) + c004abdc: 00026697 auipc a3,0x26 + c004abe0: 22468693 addi a3,a3,548 # c0070e00 + c004abe4: 8522 mv a0,s0 + c004abe6: befce0ef jal ra,c00197d4 + c004abea: f8aa sd a0,112(sp) + c004abec: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004aa1e: 0005879b sext.w a5,a1 + c004abee: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2972 if (JS_IsException(val)) - c004aa22: 4719 li a4,6 + c004abf2: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2971 val = JS_GetPropertyStr(ctx, options, "uid"); - c004aa24: 862a mv a2,a0 - c004aa26: 86ae mv a3,a1 + c004abf4: 862a mv a2,a0 + c004abf6: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2972 if (JS_IsException(val)) - c004aa28: 02e78763 beq a5,a4,c004aa56 + c004abf8: 02e78763 beq a5,a4,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2974 if (!JS_IsUndefined(val)) { - c004aa2c: 470d li a4,3 - c004aa2e: 14e79963 bne a5,a4,c004ab80 + c004abfc: 470d li a4,3 + c004abfe: 14e79963 bne a5,a4,c004ad50 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2981 val = JS_GetPropertyStr(ctx, options, "gid"); - c004aa32: 6666 ld a2,88(sp) - c004aa34: 65c6 ld a1,80(sp) - c004aa36: 00026697 auipc a3,0x26 - c004aa3a: 17268693 addi a3,a3,370 # c0070ba8 - c004aa3e: 8522 mv a0,s0 - c004aa40: bc5ce0ef jal ra,c0019604 - c004aa44: f8aa sd a0,112(sp) - c004aa46: fcae sd a1,120(sp) + c004ac02: 6666 ld a2,88(sp) + c004ac04: 65c6 ld a1,80(sp) + c004ac06: 00026697 auipc a3,0x26 + c004ac0a: 20268693 addi a3,a3,514 # c0070e08 + c004ac0e: 8522 mv a0,s0 + c004ac10: bc5ce0ef jal ra,c00197d4 + c004ac14: f8aa sd a0,112(sp) + c004ac16: fcae sd a1,120(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004aa48: 0005879b sext.w a5,a1 + c004ac18: 0005879b sext.w a5,a1 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2982 if (JS_IsException(val)) - c004aa4c: 4719 li a4,6 + c004ac1c: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2981 val = JS_GetPropertyStr(ctx, options, "gid"); - c004aa4e: 862a mv a2,a0 - c004aa50: 86ae mv a3,a1 + c004ac1e: 862a mv a2,a0 + c004ac20: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2982 if (JS_IsException(val)) - c004aa52: 14e79663 bne a5,a4,c004ab9e + c004ac22: 14e79663 bne a5,a4,c004ad6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3067 ret_val = JS_EXCEPTION; - c004aa56: e102 sd zero,128(sp) - c004aa58: e502 sd zero,136(sp) - c004aa5a: 4a81 li s5,0 - c004aa5c: 4b19 li s6,6 + c004ac26: e102 sd zero,128(sp) + c004ac28: e502 sd zero,136(sp) + c004ac2a: 4a81 li s5,0 + c004ac2c: 4b19 li s6,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3068 goto done; - c004aa5e: ae11 j c004ad72 + c004ac2e: ae11 j c004af42 build_envp(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2786 key_len = strlen(key); - c004aa60: 7510b0ef jal ra,c00569b0 - c004aa64: 8caa mv s9,a0 + c004ac30: 7510b0ef jal ra,c0056b80 + c004ac34: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2787 str_len = strlen(str); - c004aa66: 855a mv a0,s6 - c004aa68: 7490b0ef jal ra,c00569b0 + c004ac36: 855a mv a0,s6 + c004ac38: 7490b0ef jal ra,c0056b80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2788 pair = js_malloc(ctx, key_len + str_len + 2); - c004aa6c: 00ac87b3 add a5,s9,a0 + c004ac3c: 00ac87b3 add a5,s9,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2787 str_len = strlen(str); - c004aa70: e42a sd a0,8(sp) + c004ac40: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2788 pair = js_malloc(ctx, key_len + str_len + 2); - c004aa72: 00278593 addi a1,a5,2 - c004aa76: 8522 mv a0,s0 - c004aa78: e03e sd a5,0(sp) - c004aa7a: 9d2ca0ef jal ra,c0014c4c - c004aa7e: 8d2a mv s10,a0 + c004ac42: 00278593 addi a1,a5,2 + c004ac46: 8522 mv a0,s0 + c004ac48: e03e sd a5,0(sp) + c004ac4a: 8f0ca0ef jal ra,c0014d3a + c004ac4e: 8d2a mv s10,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2789 if (!pair) { - c004aa80: e511 bnez a0,c004aa8c + c004ac50: e511 bnez a0,c004ac5c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2790 JS_FreeCString(ctx, key); - c004aa82: 85ee mv a1,s11 - c004aa84: 8522 mv a0,s0 - c004aa86: bfabe0ef jal ra,c0008e80 - c004aa8a: a07d j c004ab38 + c004ac52: 85ee mv a1,s11 + c004ac54: 8522 mv a0,s0 + c004ac56: b18be0ef jal ra,c0008f6e + c004ac5a: a07d j c004ad08 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2794 memcpy(pair, key, key_len); - c004aa8c: 8666 mv a2,s9 - c004aa8e: 85ee mv a1,s11 - c004aa90: 74b0b0ef jal ra,c00569da + c004ac5c: 8666 mv a2,s9 + c004ac5e: 85ee mv a1,s11 + c004ac60: 74b0b0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2796 memcpy(pair + key_len + 1, str, str_len); - c004aa94: 6622 ld a2,8(sp) + c004ac64: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2795 pair[key_len] = '='; - c004aa96: 019d06b3 add a3,s10,s9 - c004aa9a: 03d00793 li a5,61 + c004ac66: 019d06b3 add a3,s10,s9 + c004ac6a: 03d00793 li a5,61 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2796 memcpy(pair + key_len + 1, str, str_len); - c004aa9e: 001c8513 addi a0,s9,1 + c004ac6e: 001c8513 addi a0,s9,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2795 pair[key_len] = '='; - c004aaa2: 00f68023 sb a5,0(a3) + c004ac72: 00f68023 sb a5,0(a3) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2796 memcpy(pair + key_len + 1, str, str_len); - c004aaa6: 85da mv a1,s6 - c004aaa8: 956a add a0,a0,s10 - c004aaaa: 7310b0ef jal ra,c00569da + c004ac76: 85da mv a1,s6 + c004ac78: 956a add a0,a0,s10 + c004ac7a: 7310b0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2797 pair[key_len + 1 + str_len] = '\0'; - c004aaae: 6782 ld a5,0(sp) + c004ac7e: 6782 ld a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2798 envp[i] = pair; - c004aab0: 9bca add s7,s7,s2 + c004ac80: 9bca add s7,s7,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2799 JS_FreeCString(ctx, key); - c004aab2: 85ee mv a1,s11 + c004ac82: 85ee mv a1,s11 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2797 pair[key_len + 1 + str_len] = '\0'; - c004aab4: 00fd0cb3 add s9,s10,a5 - c004aab8: 000c80a3 sb zero,1(s9) + c004ac84: 00fd0cb3 add s9,s10,a5 + c004ac88: 000c80a3 sb zero,1(s9) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2799 JS_FreeCString(ctx, key); - c004aabc: 8522 mv a0,s0 + c004ac8c: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2798 envp[i] = pair; - c004aabe: 01abb023 sd s10,0(s7) + c004ac8e: 01abb023 sd s10,0(s7) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2799 JS_FreeCString(ctx, key); - c004aac2: bbebe0ef jal ra,c0008e80 + c004ac92: adcbe0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2800 JS_FreeCString(ctx, str); - c004aac6: 85da mv a1,s6 - c004aac8: 8522 mv a0,s0 - c004aaca: bb6be0ef jal ra,c0008e80 + c004ac96: 85da mv a1,s6 + c004ac98: 8522 mv a0,s0 + c004ac9a: ad4be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2773 for(i = 0; i < len; i++) { - c004aace: 2c05 addiw s8,s8,1 - c004aad0: 5752 lw a4,52(sp) + c004ac9e: 2c05 addiw s8,s8,1 + c004aca0: 5752 lw a4,52(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2774 val = JS_GetProperty(ctx, obj, tab[i].atom); - c004aad2: 77e2 ld a5,56(sp) + c004aca2: 77e2 ld a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2773 for(i = 0; i < len; i++) { - c004aad4: f0ec7be3 bgeu s8,a4,c004a9ea + c004aca4: f0ec7be3 bgeu s8,a4,c004abba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2774 val = JS_GetProperty(ctx, obj, tab[i].atom); - c004aad8: 020c1713 slli a4,s8,0x20 - c004aadc: 01d75b93 srli s7,a4,0x1d - c004aae0: 97de add a5,a5,s7 - c004aae2: 670a ld a4,128(sp) - c004aae4: 43d4 lw a3,4(a5) + c004aca8: 020c1713 slli a4,s8,0x20 + c004acac: 01d75b93 srli s7,a4,0x1d + c004acb0: 97de add a5,a5,s7 + c004acb2: 670a ld a4,128(sp) + c004acb4: 43d4 lw a3,4(a5) JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 return JS_GetPropertyInternal(ctx, this_obj, prop, this_obj, 0); - c004aae6: 8656 mv a2,s5 - c004aae8: 87d6 mv a5,s5 - c004aaea: 85ba mv a1,a4 - c004aaec: 4801 li a6,0 - c004aaee: 8522 mv a0,s0 - c004aaf0: f93a sd a4,176(sp) - c004aaf2: e556 sd s5,136(sp) - c004aaf4: fd56 sd s5,184(sp) - c004aaf6: d4dc60ef jal ra,c0011842 - c004aafa: f12a sd a0,160(sp) - c004aafc: f52e sd a1,168(sp) - c004aafe: e92a sd a0,144(sp) - c004ab00: ed2e sd a1,152(sp) + c004acb6: 8656 mv a2,s5 + c004acb8: 87d6 mv a5,s5 + c004acba: 85ba mv a1,a4 + c004acbc: 4801 li a6,0 + c004acbe: 8522 mv a0,s0 + c004acc0: f93a sd a4,176(sp) + c004acc2: e556 sd s5,136(sp) + c004acc4: fd56 sd s5,184(sp) + c004acc6: c6bc60ef jal ra,c0011930 + c004acca: f12a sd a0,160(sp) + c004accc: f52e sd a1,168(sp) + c004acce: e92a sd a0,144(sp) + c004acd0: ed2e sd a1,152(sp) build_envp(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2775 if (JS_IsException(val)) - c004ab02: 0005879b sext.w a5,a1 - c004ab06: 4719 li a4,6 + c004acd2: 0005879b sext.w a5,a1 + c004acd6: 4719 li a4,6 JS_GetProperty(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:732 - c004ab08: 862e mv a2,a1 + c004acd8: 862e mv a2,a1 build_envp(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2775 - c004ab0a: 02e78b63 beq a5,a4,c004ab40 + c004acda: 02e78b63 beq a5,a4,c004ad10 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2777 str = JS_ToCString(ctx, val); - c004ab0e: 85aa mv a1,a0 - c004ab10: 8522 mv a0,s0 - c004ab12: 843fd0ef jal ra,c0048354 + c004acde: 85aa mv a1,a0 + c004ace0: 8522 mv a0,s0 + c004ace2: 843fd0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2778 JS_FreeValue(ctx, val); - c004ab16: 65ca ld a1,144(sp) - c004ab18: 666a ld a2,152(sp) + c004ace6: 65ca ld a1,144(sp) + c004ace8: 666a ld a2,152(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2777 str = JS_ToCString(ctx, val); - c004ab1a: 8b2a mv s6,a0 + c004acea: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2778 JS_FreeValue(ctx, val); - c004ab1c: 8522 mv a0,s0 - c004ab1e: feefd0ef jal ra,c004830c + c004acec: 8522 mv a0,s0 + c004acee: feefd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2779 if (!str) - c004ab22: 000b0f63 beqz s6,c004ab40 + c004acf2: 000b0f63 beqz s6,c004ad10 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2781 key = JS_AtomToCString(ctx, tab[i].atom); - c004ab26: 77e2 ld a5,56(sp) - c004ab28: 8522 mv a0,s0 - c004ab2a: 97de add a5,a5,s7 - c004ab2c: 43cc lw a1,4(a5) - c004ab2e: ee0d40ef jal ra,c001f20e - c004ab32: 8daa mv s11,a0 + c004acf6: 77e2 ld a5,56(sp) + c004acf8: 8522 mv a0,s0 + c004acfa: 97de add a5,a5,s7 + c004acfc: 43cc lw a1,4(a5) + c004acfe: ee0d40ef jal ra,c001f3de + c004ad02: 8daa mv s11,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2782 if (!key) { - c004ab34: f20516e3 bnez a0,c004aa60 + c004ad04: f20516e3 bnez a0,c004ac30 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2791 JS_FreeCString(ctx, str); - c004ab38: 85da mv a1,s6 - c004ab3a: 8522 mv a0,s0 - c004ab3c: b44be0ef jal ra,c0008e80 + c004ad08: 85da mv a1,s6 + c004ad0a: 8522 mv a0,s0 + c004ad0c: a62be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2803 for(i = 0; i < len; i++) - c004ab40: 4a81 li s5,0 + c004ad10: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2809 for(i = 0; i < len; i++) - c004ab42: 57d2 lw a5,52(sp) - c004ab44: 02fae363 bltu s5,a5,c004ab6a + c004ad12: 57d2 lw a5,52(sp) + c004ad14: 02fae363 bltu s5,a5,c004ad3a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2811 js_free(ctx, envp); - c004ab48: 85ca mv a1,s2 - c004ab4a: 8522 mv a0,s0 - c004ab4c: aeebc0ef jal ra,c0006e3a + c004ad18: 85ca mv a1,s2 + c004ad1a: 8522 mv a0,s0 + c004ad1c: a0cbc0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2812 envp = NULL; - c004ab50: 4901 li s2,0 - c004ab52: bd61 j c004a9ea + c004ad20: 4901 li s2,0 + c004ad22: bd61 j c004abba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2804 JS_FreeAtom(ctx, tab[i].atom); - c004ab54: 020a9713 slli a4,s5,0x20 - c004ab58: 01d75793 srli a5,a4,0x1d - c004ab5c: 95be add a1,a1,a5 - c004ab5e: 41cc lw a1,4(a1) - c004ab60: 8522 mv a0,s0 + c004ad24: 020a9713 slli a4,s5,0x20 + c004ad28: 01d75793 srli a5,a4,0x1d + c004ad2c: 95be add a1,a1,a5 + c004ad2e: 41cc lw a1,4(a1) + c004ad30: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2803 for(i = 0; i < len; i++) - c004ab62: 2a85 addiw s5,s5,1 + c004ad32: 2a85 addiw s5,s5,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2804 JS_FreeAtom(ctx, tab[i].atom); - c004ab64: 9a9bc0ef jal ra,c000750c + c004ad34: 8c7bc0ef jal ra,c00075fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2803 for(i = 0; i < len; i++) - c004ab68: b551 j c004a9ec + c004ad38: b551 j c004abbc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2810 js_free(ctx, envp[i]); - c004ab6a: 020a9713 slli a4,s5,0x20 - c004ab6e: 01d75793 srli a5,a4,0x1d - c004ab72: 97ca add a5,a5,s2 - c004ab74: 638c ld a1,0(a5) - c004ab76: 8522 mv a0,s0 + c004ad3a: 020a9713 slli a4,s5,0x20 + c004ad3e: 01d75793 srli a5,a4,0x1d + c004ad42: 97ca add a5,a5,s2 + c004ad44: 638c ld a1,0(a5) + c004ad46: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2809 for(i = 0; i < len; i++) - c004ab78: 2a85 addiw s5,s5,1 + c004ad48: 2a85 addiw s5,s5,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2810 js_free(ctx, envp[i]); - c004ab7a: ac0bc0ef jal ra,c0006e3a + c004ad4a: 9debc0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2809 for(i = 0; i < len; i++) - c004ab7e: b7d1 j c004ab42 + c004ad4e: b7d1 j c004ad12 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2975 ret = JS_ToUint32(ctx, &uid, val); - c004ab80: f92a sd a0,176(sp) - c004ab82: fd2e sd a1,184(sp) + c004ad50: f92a sd a0,176(sp) + c004ad52: fd2e sd a1,184(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c004ab84: 8522 mv a0,s0 - c004ab86: 106c addi a1,sp,44 - c004ab88: fe6d10ef jal ra,c001c36e + c004ad54: 8522 mv a0,s0 + c004ad56: 106c addi a1,sp,44 + c004ad58: fe6d10ef jal ra,c001c53e js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2976 JS_FreeValue(ctx, val); - c004ab8c: 75c6 ld a1,112(sp) - c004ab8e: 7666 ld a2,120(sp) + c004ad5c: 75c6 ld a1,112(sp) + c004ad5e: 7666 ld a2,120(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c004ab90: 8aaa mv s5,a0 + c004ad60: 8aaa mv s5,a0 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2976 - c004ab92: 8522 mv a0,s0 - c004ab94: f78fd0ef jal ra,c004830c + c004ad62: 8522 mv a0,s0 + c004ad64: f78fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2977 if (ret) - c004ab98: e80a8de3 beqz s5,c004aa32 - c004ab9c: bd6d j c004aa56 + c004ad68: e80a8de3 beqz s5,c004ac02 + c004ad6c: bd6d j c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2984 if (!JS_IsUndefined(val)) { - c004ab9e: 470d li a4,3 - c004aba0: 02e78063 beq a5,a4,c004abc0 + c004ad6e: 470d li a4,3 + c004ad70: 02e78063 beq a5,a4,c004ad90 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2985 ret = JS_ToUint32(ctx, &gid, val); - c004aba4: f92a sd a0,176(sp) - c004aba6: fd2e sd a1,184(sp) + c004ad74: f92a sd a0,176(sp) + c004ad76: fd2e sd a1,184(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c004aba8: 8522 mv a0,s0 - c004abaa: 180c addi a1,sp,48 - c004abac: fc2d10ef jal ra,c001c36e + c004ad78: 8522 mv a0,s0 + c004ad7a: 180c addi a1,sp,48 + c004ad7c: fc2d10ef jal ra,c001c53e js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2986 JS_FreeValue(ctx, val); - c004abb0: 75c6 ld a1,112(sp) - c004abb2: 7666 ld a2,120(sp) + c004ad80: 75c6 ld a1,112(sp) + c004ad82: 7666 ld a2,120(sp) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 - c004abb4: 8aaa mv s5,a0 + c004ad84: 8aaa mv s5,a0 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2986 - c004abb6: 8522 mv a0,s0 - c004abb8: f54fd0ef jal ra,c004830c + c004ad86: 8522 mv a0,s0 + c004ad88: f54fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2987 if (ret) - c004abbc: e80a9de3 bnez s5,c004aa56 + c004ad8c: e80a9de3 bnez s5,c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2992 pid = fork(); - c004abc0: 3380c0ef jal ra,c0056ef8 - c004abc4: 8aaa mv s5,a0 + c004ad90: 3380c0ef jal ra,c00570c8 + c004ad94: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2993 if (pid < 0) { - c004abc6: 00055d63 bgez a0,c004abe0 + c004ad96: 00055d63 bgez a0,c004adb0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2994 JS_ThrowTypeError(ctx, "fork error"); - c004abca: 8522 mv a0,s0 - c004abcc: 00026597 auipc a1,0x26 - c004abd0: fe458593 addi a1,a1,-28 # c0070bb0 - c004abd4: 823c80ef jal ra,c00133f6 + c004ad9a: 8522 mv a0,s0 + c004ad9c: 00026597 auipc a1,0x26 + c004ada0: 07458593 addi a1,a1,116 # c0070e10 + c004ada4: f40c80ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2995 goto exception; - c004abd8: bdbd j c004aa56 + c004ada8: bdbd j c004ac26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2879 const char **exec_argv, *file = NULL, *str, *cwd = NULL; - c004abda: 4981 li s3,0 - c004abdc: 4481 li s1,0 - c004abde: b7cd j c004abc0 + c004adaa: 4981 li s3,0 + c004adac: 4481 li s1,0 + c004adae: b7cd j c004ad90 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2997 if (pid == 0) { - c004abe0: 16051163 bnez a0,c004ad42 + c004adb0: 16051163 bnez a0,c004af12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2999 int fd_max = sysconf(_SC_OPEN_MAX); - c004abe4: 03500513 li a0,53 - c004abe8: 0920c0ef jal ra,c0056c7a - c004abec: 8b2a mv s6,a0 + c004adb4: 03500513 li a0,53 + c004adb8: 0920c0ef jal ra,c0056e4a + c004adbc: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3002 for(i = 0; i < 3; i++) { - c004abee: 04010b93 addi s7,sp,64 - c004abf2: 4401 li s0,0 - c004abf4: 4c0d li s8,3 + c004adbe: 04010b93 addi s7,sp,64 + c004adc2: 4401 li s0,0 + c004adc4: 4c0d li s8,3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3003 if (std_fds[i] != i) { - c004abf6: 000ba503 lw a0,0(s7) - c004abfa: 00850b63 beq a0,s0,c004ac10 + c004adc6: 000ba503 lw a0,0(s7) + c004adca: 00850b63 beq a0,s0,c004ade0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3004 if (dup2(std_fds[i], i) < 0) - c004abfe: 85a2 mv a1,s0 - c004ac00: 7020c0ef jal ra,c0057302 - c004ac04: 00055663 bgez a0,c004ac10 + c004adce: 85a2 mv a1,s0 + c004add0: 7020c0ef jal ra,c00574d2 + c004add4: 00055663 bgez a0,c004ade0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3005 _exit(127); - c004ac08: 07f00513 li a0,127 - c004ac0c: 68c0c0ef jal ra,c0057298 <_exit> + c004add8: 07f00513 li a0,127 + c004addc: 68c0c0ef jal ra,c0057468 <_exit> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3002 for(i = 0; i < 3; i++) { - c004ac10: 2405 addiw s0,s0,1 - c004ac12: 0b91 addi s7,s7,4 - c004ac14: ff8411e3 bne s0,s8,c004abf6 + c004ade0: 2405 addiw s0,s0,1 + c004ade2: 0b91 addi s7,s7,4 + c004ade4: ff8411e3 bne s0,s8,c004adc6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3009 for(i = 3; i < fd_max; i++) - c004ac18: 2b01 sext.w s6,s6 + c004ade8: 2b01 sext.w s6,s6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3009 (discriminator 1) - c004ac1a: 05646863 bltu s0,s6,c004ac6a + c004adea: 05646863 bltu s0,s6,c004ae3a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3011 if (cwd) { - c004ac1e: 00098763 beqz s3,c004ac2c + c004adee: 00098763 beqz s3,c004adfc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3012 if (chdir(cwd) < 0) - c004ac22: 854e mv a0,s3 - c004ac24: 1c60c0ef jal ra,c0056dea - c004ac28: fe0540e3 bltz a0,c004ac08 + c004adf2: 854e mv a0,s3 + c004adf4: 1c60c0ef jal ra,c0056fba + c004adf8: fe0540e3 bltz a0,c004add8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3015 if (uid != -1) { - c004ac2c: 5532 lw a0,44(sp) - c004ac2e: 57fd li a5,-1 - c004ac30: 00f50663 beq a0,a5,c004ac3c + c004adfc: 5532 lw a0,44(sp) + c004adfe: 57fd li a5,-1 + c004ae00: 00f50663 beq a0,a5,c004ae0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3016 if (setuid(uid) < 0) - c004ac34: 1820c0ef jal ra,c0056db6 - c004ac38: fc0548e3 bltz a0,c004ac08 + c004ae04: 1820c0ef jal ra,c0056f86 + c004ae08: fc0548e3 bltz a0,c004add8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3019 if (gid != -1) { - c004ac3c: 5542 lw a0,48(sp) - c004ac3e: 57fd li a5,-1 - c004ac40: 00f50663 beq a0,a5,c004ac4c + c004ae0c: 5542 lw a0,48(sp) + c004ae0e: 57fd li a5,-1 + c004ae10: 00f50663 beq a0,a5,c004ae1c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3020 if (setgid(gid) < 0) - c004ac44: 18c0c0ef jal ra,c0056dd0 - c004ac48: fc0540e3 bltz a0,c004ac08 + c004ae14: 18c0c0ef jal ra,c0056fa0 + c004ae18: fc0540e3 bltz a0,c004add8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3024 if (!file) - c004ac4c: e099 bnez s1,c004ac52 + c004ae1c: e099 bnez s1,c004ae22 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3025 file = exec_argv[0]; - c004ac4e: 000a3483 ld s1,0(s4) + c004ae1e: 000a3483 ld s1,0(s4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3026 if (use_path) - c004ac52: 57a2 lw a5,40(sp) - c004ac54: c795 beqz a5,c004ac80 + c004ae22: 57a2 lw a5,40(sp) + c004ae24: c795 beqz a5,c004ae50 my_execvpe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2825 filename_len = strlen(filename); - c004ac56: 8526 mv a0,s1 - c004ac58: 5590b0ef jal ra,c00569b0 - c004ac5c: 89aa mv s3,a0 + c004ae26: 8526 mv a0,s1 + c004ae28: 5590b0ef jal ra,c0056b80 + c004ae2c: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2826 if (filename_len == 0) { - c004ac5e: e919 bnez a0,c004ac74 + c004ae2e: e919 bnez a0,c004ae44 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2827 errno = ENOENT; - c004ac60: 675080ef jal ra,c0053ad4 <__errno> - c004ac64: 4789 li a5,2 + c004ae30: 675080ef jal ra,c0053ca4 <__errno> + c004ae34: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2869 errno = EACCES; - c004ac66: c11c sw a5,0(a0) - c004ac68: b745 j c004ac08 + c004ae36: c11c sw a5,0(a0) + c004ae38: b745 j c004add8 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3010 (discriminator 3) close(i); - c004ac6a: 8522 mv a0,s0 - c004ac6c: 6760c0ef jal ra,c00572e2 + c004ae3a: 8522 mv a0,s0 + c004ae3c: 6760c0ef jal ra,c00574b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3009 (discriminator 3) for(i = 3; i < fd_max; i++) - c004ac70: 2405 addiw s0,s0,1 - c004ac72: b765 j c004ac1a + c004ae40: 2405 addiw s0,s0,1 + c004ae42: b765 j c004adea my_execvpe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2830 if (strchr(filename, '/')) - c004ac74: 02f00593 li a1,47 - c004ac78: 8526 mv a0,s1 - c004ac7a: 4c30b0ef jal ra,c005693c - c004ac7e: c519 beqz a0,c004ac8c + c004ae44: 02f00593 li a1,47 + c004ae48: 8526 mv a0,s1 + c004ae4a: 4c30b0ef jal ra,c0056b0c + c004ae4e: c519 beqz a0,c004ae5c js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3029 ret = execve(file, (char **)exec_argv, envp); - c004ac80: 864a mv a2,s2 - c004ac82: 85d2 mv a1,s4 - c004ac84: 8526 mv a0,s1 - c004ac86: 6900c0ef jal ra,c0057316 - c004ac8a: bfbd j c004ac08 + c004ae50: 864a mv a2,s2 + c004ae52: 85d2 mv a1,s4 + c004ae54: 8526 mv a0,s1 + c004ae56: 6900c0ef jal ra,c00574e6 + c004ae5a: bfbd j c004add8 my_execvpe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2833 path = getenv("PATH"); - c004ac8c: 00026517 auipc a0,0x26 - c004ac90: f3450513 addi a0,a0,-204 # c0070bc0 - c004ac94: 6d60c0ef jal ra,c005736a - c004ac98: 8daa mv s11,a0 + c004ae5c: 00026517 auipc a0,0x26 + c004ae60: fc450513 addi a0,a0,-60 # c0070e20 + c004ae64: 6d60c0ef jal ra,c005753a + c004ae68: 8daa mv s11,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2834 if (!path) - c004ac9a: e509 bnez a0,c004aca4 + c004ae6a: e509 bnez a0,c004ae74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2835 path = (char *)"/bin:/usr/bin"; - c004ac9c: 00026d97 auipc s11,0x26 - c004aca0: eb4d8d93 addi s11,s11,-332 # c0070b50 + c004ae6c: 00026d97 auipc s11,0x26 + c004ae70: f44d8d93 addi s11,s11,-188 # c0070db0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2851 buf[path_len] = '/'; - c004aca4: 02f00b93 li s7,47 + c004ae74: 02f00b93 li s7,47 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2857 switch(errno) { - c004aca8: 4c35 li s8,13 - c004acaa: 4cd1 li s9,20 - c004acac: 4d09 li s10,2 + c004ae78: 4c35 li s8,13 + c004ae7a: 4cd1 li s9,20 + c004ae7c: 4d09 li s10,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2839 p1 = strchr(p, ':'); - c004acae: 03a00593 li a1,58 - c004acb2: 856e mv a0,s11 - c004acb4: 4890b0ef jal ra,c005693c - c004acb8: 8b2a mv s6,a0 + c004ae7e: 03a00593 li a1,58 + c004ae82: 856e mv a0,s11 + c004ae84: 4890b0ef jal ra,c0056b0c + c004ae88: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2840 if (!p1) { - c004acba: ed2d bnez a0,c004ad34 + c004ae8a: ed2d bnez a0,c004af04 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2842 path_len = strlen(p); - c004acbc: 856e mv a0,s11 - c004acbe: 4f30b0ef jal ra,c00569b0 - c004acc2: 842a mv s0,a0 + c004ae8c: 856e mv a0,s11 + c004ae8e: 4f30b0ef jal ra,c0056b80 + c004ae92: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2848 if ((path_len + 1 + filename_len + 1) > PATH_MAX) - c004acc4: 00898733 add a4,s3,s0 - c004acc8: 00270693 addi a3,a4,2 - c004accc: e03a sd a4,0(sp) - c004acce: 10000793 li a5,256 - c004acd2: 04d7e763 bltu a5,a3,c004ad20 + c004ae94: 00898733 add a4,s3,s0 + c004ae98: 00270693 addi a3,a4,2 + c004ae9c: e03a sd a4,0(sp) + c004ae9e: 10000793 li a5,256 + c004aea2: 04d7e763 bltu a5,a3,c004aef0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2850 memcpy(buf, p, path_len); - c004acd6: 8622 mv a2,s0 - c004acd8: 85ee mv a1,s11 - c004acda: 1908 addi a0,sp,176 - c004acdc: 4ff0b0ef jal ra,c00569da + c004aea6: 8622 mv a2,s0 + c004aea8: 85ee mv a1,s11 + c004aeaa: 1908 addi a0,sp,176 + c004aeac: 4ff0b0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2851 buf[path_len] = '/'; - c004ace0: 1b1c addi a5,sp,432 - c004ace2: 008786b3 add a3,a5,s0 + c004aeb0: 1b1c addi a5,sp,432 + c004aeb2: 008786b3 add a3,a5,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2852 memcpy(buf + path_len + 1, filename, filename_len); - c004ace6: 191c addi a5,sp,176 - c004ace8: 0405 addi s0,s0,1 + c004aeb6: 191c addi a5,sp,176 + c004aeb8: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2851 buf[path_len] = '/'; - c004acea: f1768023 sb s7,-256(a3) + c004aeba: f1768023 sb s7,-256(a3) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2852 memcpy(buf + path_len + 1, filename, filename_len); - c004acee: 864e mv a2,s3 - c004acf0: 85a6 mv a1,s1 - c004acf2: 00878533 add a0,a5,s0 - c004acf6: 4e50b0ef jal ra,c00569da + c004aebe: 864e mv a2,s3 + c004aec0: 85a6 mv a1,s1 + c004aec2: 00878533 add a0,a5,s0 + c004aec6: 4e50b0ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2853 buf[path_len + 1 + filename_len] = '\0'; - c004acfa: 6702 ld a4,0(sp) - c004acfc: 1b1c addi a5,sp,432 + c004aeca: 6702 ld a4,0(sp) + c004aecc: 1b1c addi a5,sp,432 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2855 execve(buf, argv, envp); - c004acfe: 864a mv a2,s2 + c004aece: 864a mv a2,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2853 buf[path_len + 1 + filename_len] = '\0'; - c004ad00: 973e add a4,a4,a5 - c004ad02: f00700a3 sb zero,-255(a4) + c004aed0: 973e add a4,a4,a5 + c004aed2: f00700a3 sb zero,-255(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2855 execve(buf, argv, envp); - c004ad06: 85d2 mv a1,s4 - c004ad08: 1908 addi a0,sp,176 - c004ad0a: 60c0c0ef jal ra,c0057316 + c004aed6: 85d2 mv a1,s4 + c004aed8: 1908 addi a0,sp,176 + c004aeda: 60c0c0ef jal ra,c00574e6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2857 switch(errno) { - c004ad0e: 5c7080ef jal ra,c0053ad4 <__errno> - c004ad12: 4118 lw a4,0(a0) - c004ad14: 03870563 beq a4,s8,c004ad3e - c004ad18: 01970463 beq a4,s9,c004ad20 - c004ad1c: efa716e3 bne a4,s10,c004ac08 + c004aede: 5c7080ef jal ra,c0053ca4 <__errno> + c004aee2: 4118 lw a4,0(a0) + c004aee4: 03870563 beq a4,s8,c004af0e + c004aee8: 01970463 beq a4,s9,c004aef0 + c004aeec: efa716e3 bne a4,s10,c004add8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2838 for(p = path; p != NULL; p = p_next) { - c004ad20: 000b1863 bnez s6,c004ad30 + c004aef0: 000b1863 bnez s6,c004af00 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2868 if (eacces_error) - c004ad24: ee0a82e3 beqz s5,c004ac08 + c004aef4: ee0a82e3 beqz s5,c004add8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2869 errno = EACCES; - c004ad28: 5ad080ef jal ra,c0053ad4 <__errno> - c004ad2c: 47b5 li a5,13 - c004ad2e: bf25 j c004ac66 - c004ad30: 8dda mv s11,s6 - c004ad32: bfb5 j c004acae + c004aef8: 5ad080ef jal ra,c0053ca4 <__errno> + c004aefc: 47b5 li a5,13 + c004aefe: bf25 j c004ae36 + c004af00: 8dda mv s11,s6 + c004af02: bfb5 j c004ae7e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2845 path_len = p1 - p; - c004ad34: 41b50433 sub s0,a0,s11 + c004af04: 41b50433 sub s0,a0,s11 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2844 p_next = p1 + 1; - c004ad38: 00150b13 addi s6,a0,1 - c004ad3c: b761 j c004acc4 + c004af08: 00150b13 addi s6,a0,1 + c004af0c: b761 j c004ae94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2857 switch(errno) { - c004ad3e: 4a85 li s5,1 - c004ad40: b7c5 j c004ad20 + c004af0e: 4a85 li s5,1 + c004af10: b7c5 j c004aef0 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3033 if (block_flag) { - c004ad42: 5792 lw a5,36(sp) - c004ad44: c385 beqz a5,c004ad64 + c004af12: 5792 lw a5,36(sp) + c004af14: c385 beqz a5,c004af34 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3035 ret = waitpid(pid, &status, 0); - c004ad46: 4601 li a2,0 - c004ad48: 182c addi a1,sp,56 - c004ad4a: 8556 mv a0,s5 - c004ad4c: 0e50c0ef jal ra,c0057630 + c004af16: 4601 li a2,0 + c004af18: 182c addi a1,sp,56 + c004af1a: 8556 mv a0,s5 + c004af1c: 0e50c0ef jal ra,c0057800 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3036 if (ret == pid) { - c004ad50: feaa9be3 bne s5,a0,c004ad46 + c004af20: feaa9be3 bne s5,a0,c004af16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3037 if (WIFEXITED(status)) { - c004ad54: 5562 lw a0,56(sp) - c004ad56: 0ff57793 zext.b a5,a0 - c004ad5a: f7f5 bnez a5,c004ad46 + c004af24: 5562 lw a0,56(sp) + c004af26: 0ff57793 zext.b a5,a0 + c004af2a: f7f5 bnez a5,c004af16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3038 ret = WEXITSTATUS(status); - c004ad5c: 4085551b sraiw a0,a0,0x8 - c004ad60: 0ff57a93 zext.b s5,a0 + c004af2c: 4085551b sraiw a0,a0,0x8 + c004af30: 0ff57a93 zext.b s5,a0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004ad64: db02 sw zero,180(sp) - c004ad66: d956 sw s5,176(sp) - c004ad68: 77ca ld a5,176(sp) - c004ad6a: fd02 sd zero,184(sp) - c004ad6c: e502 sd zero,136(sp) - c004ad6e: e13e sd a5,128(sp) - c004ad70: 4b01 li s6,0 + c004af34: db02 sw zero,180(sp) + c004af36: d956 sw s5,176(sp) + c004af38: 77ca ld a5,176(sp) + c004af3a: fd02 sd zero,184(sp) + c004af3c: e502 sd zero,136(sp) + c004af3e: e13e sd a5,128(sp) + c004af40: 4b01 li s6,0 js_os_exec(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3051 JS_FreeCString(ctx, file); - c004ad72: 85a6 mv a1,s1 - c004ad74: 8522 mv a0,s0 - c004ad76: 90abe0ef jal ra,c0008e80 + c004af42: 85a6 mv a1,s1 + c004af44: 8522 mv a0,s0 + c004af46: 828be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3052 JS_FreeCString(ctx, cwd); - c004ad7a: 85ce mv a1,s3 - c004ad7c: 8522 mv a0,s0 - c004ad7e: 902be0ef jal ra,c0008e80 + c004af4a: 85ce mv a1,s3 + c004af4c: 8522 mv a0,s0 + c004af4e: 820be0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3053 for(i = 0; i < exec_argc; i++) - c004ad82: 4481 li s1,0 + c004af52: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3053 (discriminator 1) - c004ad84: 5782 lw a5,32(sp) - c004ad86: 02f4e063 bltu s1,a5,c004ada6 + c004af54: 5782 lw a5,32(sp) + c004af56: 02f4e063 bltu s1,a5,c004af76 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3055 js_free(ctx, exec_argv); - c004ad8a: 85d2 mv a1,s4 - c004ad8c: 8522 mv a0,s0 - c004ad8e: 8acbc0ef jal ra,c0006e3a + c004af5a: 85d2 mv a1,s4 + c004af5c: 8522 mv a0,s0 + c004af5e: fcbbb0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3056 if (envp != environ) { - c004ad92: 5cc0c0ef jal ra,c005735e - c004ad96: 84ca mv s1,s2 - c004ad98: 02a91663 bne s2,a0,c004adc4 + c004af62: 5cc0c0ef jal ra,c005752e + c004af66: 84ca mv s1,s2 + c004af68: 02a91663 bne s2,a0,c004af94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3065 return ret_val; - c004ad9c: c156 sw s5,128(sp) - c004ad9e: 678a ld a5,128(sp) - c004ada0: ed5a sd s6,152(sp) - c004ada2: e93e sd a5,144(sp) - c004ada4: b2e5 j c004a78c + c004af6c: c156 sw s5,128(sp) + c004af6e: 678a ld a5,128(sp) + c004af70: ed5a sd s6,152(sp) + c004af72: e93e sd a5,144(sp) + c004af74: b2e5 j c004a95c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3054 (discriminator 3) JS_FreeCString(ctx, exec_argv[i]); - c004ada6: 02049713 slli a4,s1,0x20 - c004adaa: 01d75793 srli a5,a4,0x1d - c004adae: 97d2 add a5,a5,s4 - c004adb0: 638c ld a1,0(a5) - c004adb2: 8522 mv a0,s0 + c004af76: 02049713 slli a4,s1,0x20 + c004af7a: 01d75793 srli a5,a4,0x1d + c004af7e: 97d2 add a5,a5,s4 + c004af80: 638c ld a1,0(a5) + c004af82: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3053 (discriminator 3) for(i = 0; i < exec_argc; i++) - c004adb4: 2485 addiw s1,s1,1 + c004af84: 2485 addiw s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3054 (discriminator 3) JS_FreeCString(ctx, exec_argv[i]); - c004adb6: 8cabe0ef jal ra,c0008e80 + c004af86: fe9bd0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3053 (discriminator 3) for(i = 0; i < exec_argc; i++) - c004adba: b7e9 j c004ad84 + c004af8a: b7e9 j c004af54 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3060 js_free(ctx, *p); - c004adbc: 8522 mv a0,s0 - c004adbe: 87cbc0ef jal ra,c0006e3a + c004af8c: 8522 mv a0,s0 + c004af8e: f9bbb0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3061 p++; - c004adc2: 04a1 addi s1,s1,8 + c004af92: 04a1 addi s1,s1,8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3059 while (*p != NULL) { - c004adc4: 608c ld a1,0(s1) - c004adc6: f9fd bnez a1,c004adbc + c004af94: 608c ld a1,0(s1) + c004af96: f9fd bnez a1,c004af8c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3063 js_free(ctx, envp); - c004adc8: 85ca mv a1,s2 - c004adca: 8522 mv a0,s0 - c004adcc: 86ebc0ef jal ra,c0006e3a - c004add0: b7f1 j c004ad9c + c004af98: 85ca mv a1,s2 + c004af9a: 8522 mv a0,s0 + c004af9c: f8dbb0ef jal ra,c0006f28 + c004afa0: b7f1 j c004af6c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2879 const char **exec_argv, *file = NULL, *str, *cwd = NULL; - c004add2: 4981 li s3,0 - c004add4: 4481 li s1,0 - c004add6: b141 j c004aa56 + c004afa2: 4981 li s3,0 + c004afa4: 4481 li s1,0 + c004afa6: b141 j c004ac26 -00000000c004add8 : +00000000c004afa8 : js_worker_finalizer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3301 { - c004add8: 7179 addi sp,sp,-48 - c004adda: 87b2 mv a5,a2 - c004addc: ec26 sd s1,24(sp) - c004adde: e02e sd a1,0(sp) - c004ade0: 84aa mv s1,a0 - c004ade2: e432 sd a2,8(sp) + c004afa8: 7179 addi sp,sp,-48 + c004afaa: 87b2 mv a5,a2 + c004afac: ec26 sd s1,24(sp) + c004afae: e02e sd a1,0(sp) + c004afb0: 84aa mv s1,a0 + c004afb2: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3302 JSWorkerData *worker = JS_GetOpaque(val, js_worker_class_id); - c004ade4: 852e mv a0,a1 - c004ade6: 000b6617 auipc a2,0xb6 - c004adea: 31662603 lw a2,790(a2) # c01010fc - c004adee: 85be mv a1,a5 + c004afb4: 852e mv a0,a1 + c004afb6: 000b6617 auipc a2,0xb6 + c004afba: 14662603 lw a2,326(a2) # c01010fc + c004afbe: 85be mv a1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3301 { - c004adf0: f406 sd ra,40(sp) - c004adf2: f022 sd s0,32(sp) + c004afc0: f406 sd ra,40(sp) + c004afc2: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3302 JSWorkerData *worker = JS_GetOpaque(val, js_worker_class_id); - c004adf4: abfbf0ef jal ra,c000a8b2 + c004afc4: 9ddbf0ef jal ra,c000a9a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3303 if (worker) { - c004adf8: c50d beqz a0,c004ae22 - c004adfa: 842a mv s0,a0 + c004afc8: c50d beqz a0,c004aff2 + c004afca: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3304 js_free_message_pipe(worker->recv_pipe); - c004adfc: 6108 ld a0,0(a0) - c004adfe: e02ff0ef jal ra,c004a400 + c004afcc: 6108 ld a0,0(a0) + c004afce: e02ff0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3305 js_free_message_pipe(worker->send_pipe); - c004ae02: 6408 ld a0,8(s0) - c004ae04: dfcff0ef jal ra,c004a400 + c004afd2: 6408 ld a0,8(s0) + c004afd4: dfcff0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3306 js_free_port(rt, worker->msg_handler); - c004ae08: 680c ld a1,16(s0) + c004afd8: 680c ld a1,16(s0) js_free_port(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3292 if (port) { - c004ae0a: c581 beqz a1,c004ae12 - c004ae0c: 8526 mv a0,s1 - c004ae0e: 803ff0ef jal ra,c004a610 + c004afda: c581 beqz a1,c004afe2 + c004afdc: 8526 mv a0,s1 + c004afde: 803ff0ef jal ra,c004a7e0 js_worker_finalizer(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3307 js_free_rt(rt, worker); - c004ae12: 85a2 mv a1,s0 + c004afe2: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3309 } - c004ae14: 7402 ld s0,32(sp) - c004ae16: 70a2 ld ra,40(sp) + c004afe4: 7402 ld s0,32(sp) + c004afe6: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3307 js_free_rt(rt, worker); - c004ae18: 8526 mv a0,s1 + c004afe8: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3309 } - c004ae1a: 64e2 ld s1,24(sp) - c004ae1c: 6145 addi sp,sp,48 + c004afea: 64e2 ld s1,24(sp) + c004afec: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3307 js_free_rt(rt, worker); - c004ae1e: d89bb06f j c0006ba6 + c004afee: ca7bb06f j c0006c94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3309 } - c004ae22: 70a2 ld ra,40(sp) - c004ae24: 7402 ld s0,32(sp) - c004ae26: 64e2 ld s1,24(sp) - c004ae28: 6145 addi sp,sp,48 - c004ae2a: 8082 ret + c004aff2: 70a2 ld ra,40(sp) + c004aff4: 7402 ld s0,32(sp) + c004aff6: 64e2 ld s1,24(sp) + c004aff8: 6145 addi sp,sp,48 + c004affa: 8082 ret -00000000c004ae2c : +00000000c004affc : js_os_utimes(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2618 { - c004ae2c: 7159 addi sp,sp,-112 - c004ae2e: f0a2 sd s0,96(sp) - c004ae30: eca6 sd s1,88(sp) - c004ae32: f486 sd ra,104(sp) - c004ae34: e8ca sd s2,80(sp) + c004affc: 7159 addi sp,sp,-112 + c004affe: f0a2 sd s0,96(sp) + c004b000: eca6 sd s1,88(sp) + c004b002: f486 sd ra,104(sp) + c004b004: e8ca sd s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2623 if (JS_ToInt64(ctx, &atime, argv[1])) - c004ae36: 6b10 ld a2,16(a4) - c004ae38: 6f14 ld a3,24(a4) - c004ae3a: 080c addi a1,sp,16 + c004b006: 6b10 ld a2,16(a4) + c004b008: 6f14 ld a3,24(a4) + c004b00a: 080c addi a1,sp,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2618 { - c004ae3c: 84aa mv s1,a0 - c004ae3e: 843a mv s0,a4 + c004b00c: 84aa mv s1,a0 + c004b00e: 843a mv s0,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2623 if (JS_ToInt64(ctx, &atime, argv[1])) - c004ae40: a4bd30ef jal ra,c001e88a - c004ae44: cd01 beqz a0,c004ae5c + c004b010: a4bd30ef jal ra,c001ea5a + c004b014: cd01 beqz a0,c004b02c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2624 return JS_EXCEPTION; - c004ae46: 4799 li a5,6 - c004ae48: f002 sd zero,32(sp) - c004ae4a: f43e sd a5,40(sp) + c004b016: 4799 li a5,6 + c004b018: f002 sd zero,32(sp) + c004b01a: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2647 (discriminator 1) } - c004ae4c: 70a6 ld ra,104(sp) - c004ae4e: 7406 ld s0,96(sp) - c004ae50: 7502 ld a0,32(sp) - c004ae52: 75a2 ld a1,40(sp) - c004ae54: 64e6 ld s1,88(sp) - c004ae56: 6946 ld s2,80(sp) - c004ae58: 6165 addi sp,sp,112 - c004ae5a: 8082 ret + c004b01c: 70a6 ld ra,104(sp) + c004b01e: 7406 ld s0,96(sp) + c004b020: 7502 ld a0,32(sp) + c004b022: 75a2 ld a1,40(sp) + c004b024: 64e6 ld s1,88(sp) + c004b026: 6946 ld s2,80(sp) + c004b028: 6165 addi sp,sp,112 + c004b02a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2625 if (JS_ToInt64(ctx, &mtime, argv[2])) - c004ae5c: 7010 ld a2,32(s0) - c004ae5e: 7414 ld a3,40(s0) - c004ae60: 082c addi a1,sp,24 - c004ae62: 8526 mv a0,s1 - c004ae64: a27d30ef jal ra,c001e88a - c004ae68: fd79 bnez a0,c004ae46 + c004b02c: 7010 ld a2,32(s0) + c004b02e: 7414 ld a3,40(s0) + c004b030: 082c addi a1,sp,24 + c004b032: 8526 mv a0,s1 + c004b034: a27d30ef jal ra,c001ea5a + c004b038: fd79 bnez a0,c004b016 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2627 path = JS_ToCString(ctx, argv[0]); - c004ae6a: 600c ld a1,0(s0) - c004ae6c: 6410 ld a2,8(s0) - c004ae6e: 8526 mv a0,s1 - c004ae70: ce4fd0ef jal ra,c0048354 - c004ae74: 842a mv s0,a0 + c004b03a: 600c ld a1,0(s0) + c004b03c: 6410 ld a2,8(s0) + c004b03e: 8526 mv a0,s1 + c004b040: ce4fd0ef jal ra,c0048524 + c004b044: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2628 if (!path) - c004ae76: d961 beqz a0,c004ae46 + c004b046: d961 beqz a0,c004b016 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2640 ms_to_timeval(×[0], atime); - c004ae78: 67c2 ld a5,16(sp) + c004b048: 67c2 ld a5,16(sp) ms_to_timeval(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2611 tv->tv_sec = v / 1000; - c004ae7a: 3e800713 li a4,1000 + c004b04a: 3e800713 li a4,1000 js_os_utimes(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2642 ret = js_get_errno(utimes(path, times)); - c004ae7e: 180c addi a1,sp,48 + c004b04e: 180c addi a1,sp,48 ms_to_timeval(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2611 tv->tv_sec = v / 1000; - c004ae80: 02e7d6b3 divu a3,a5,a4 + c004b050: 02e7d6b3 divu a3,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2612 tv->tv_usec = (v % 1000) * 1000; - c004ae84: 02e7f7b3 remu a5,a5,a4 + c004b054: 02e7f7b3 remu a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2611 tv->tv_sec = v / 1000; - c004ae88: d836 sw a3,48(sp) + c004b058: d836 sw a3,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2612 tv->tv_usec = (v % 1000) * 1000; - c004ae8a: 02e787b3 mul a5,a5,a4 - c004ae8e: fc3e sd a5,56(sp) + c004b05a: 02e787b3 mul a5,a5,a4 + c004b05e: fc3e sd a5,56(sp) js_os_utimes(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2641 ms_to_timeval(×[1], mtime); - c004ae90: 67e2 ld a5,24(sp) + c004b060: 67e2 ld a5,24(sp) ms_to_timeval(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2611 tv->tv_sec = v / 1000; - c004ae92: 02e7d6b3 divu a3,a5,a4 + c004b062: 02e7d6b3 divu a3,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2612 tv->tv_usec = (v % 1000) * 1000; - c004ae96: 02e7f7b3 remu a5,a5,a4 + c004b066: 02e7f7b3 remu a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2611 tv->tv_sec = v / 1000; - c004ae9a: c0b6 sw a3,64(sp) + c004b06a: c0b6 sw a3,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2612 tv->tv_usec = (v % 1000) * 1000; - c004ae9c: 02e787b3 mul a5,a5,a4 - c004aea0: e4be sd a5,72(sp) + c004b06c: 02e787b3 mul a5,a5,a4 + c004b070: e4be sd a5,72(sp) js_os_utimes(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2642 ret = js_get_errno(utimes(path, times)); - c004aea2: 6a90b0ef jal ra,c0056d4a - c004aea6: f9dfe0ef jal ra,c0049e42 - c004aeaa: 892a mv s2,a0 + c004b072: 6a90b0ef jal ra,c0056f1a + c004b076: f9dfe0ef jal ra,c004a012 + c004b07a: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2645 JS_FreeCString(ctx, path); - c004aeac: 85a2 mv a1,s0 - c004aeae: 8526 mv a0,s1 - c004aeb0: fd1bd0ef jal ra,c0008e80 + c004b07c: 85a2 mv a1,s0 + c004b07e: 8526 mv a0,s1 + c004b080: eefbd0ef jal ra,c0008f6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004aeb4: da02 sw zero,52(sp) + c004b084: da02 sw zero,52(sp) js_os_utimes(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2642 ret = js_get_errno(utimes(path, times)); - c004aeb6: d84a sw s2,48(sp) - c004aeb8: 77c2 ld a5,48(sp) - c004aeba: f402 sd zero,40(sp) - c004aebc: f03e sd a5,32(sp) + c004b086: d84a sw s2,48(sp) + c004b088: 77c2 ld a5,48(sp) + c004b08a: f402 sd zero,40(sp) + c004b08c: f03e sd a5,32(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004aebe: b779 j c004ae4c + c004b08e: b779 j c004b01c -00000000c004aec0 : +00000000c004b090 : js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2078 { - c004aec0: 7175 addi sp,sp,-144 - c004aec2: e506 sd ra,136(sp) - c004aec4: e122 sd s0,128(sp) - c004aec6: fca6 sd s1,120(sp) - c004aec8: 843a mv s0,a4 - c004aeca: f8ca sd s2,112(sp) - c004aecc: e02e sd a1,0(sp) - c004aece: e432 sd a2,8(sp) - c004aed0: f4ce sd s3,104(sp) - c004aed2: 84aa mv s1,a0 + c004b090: 7175 addi sp,sp,-144 + c004b092: e506 sd ra,136(sp) + c004b094: e122 sd s0,128(sp) + c004b096: fca6 sd s1,120(sp) + c004b098: 843a mv s0,a4 + c004b09a: f8ca sd s2,112(sp) + c004b09c: e02e sd a1,0(sp) + c004b09e: e432 sd a2,8(sp) + c004b0a0: f4ce sd s3,104(sp) + c004b0a2: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2079 JSRuntime *rt = JS_GetRuntime(ctx); - c004aed4: 84abc0ef jal ra,c0006f1e + c004b0a4: f69bb0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2080 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004aed8: fafbb0ef jal ra,c0006e86 + c004b0a8: ecdbb0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2085 if (JS_ToInt64(ctx, &delay, argv[0])) - c004aedc: 6010 ld a2,0(s0) - c004aede: 6414 ld a3,8(s0) + c004b0ac: 6010 ld a2,0(s0) + c004b0ae: 6414 ld a3,8(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2080 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004aee0: 892a mv s2,a0 + c004b0b0: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2085 if (JS_ToInt64(ctx, &delay, argv[0])) - c004aee2: 082c addi a1,sp,24 - c004aee4: 8526 mv a0,s1 - c004aee6: 9a5d30ef jal ra,c001e88a - c004aeea: c509 beqz a0,c004aef4 + c004b0b2: 082c addi a1,sp,24 + c004b0b4: 8526 mv a0,s1 + c004b0b6: 9a5d30ef jal ra,c001ea5a + c004b0ba: c509 beqz a0,c004b0c4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2086 return JS_EXCEPTION; - c004aeec: f802 sd zero,48(sp) - c004aeee: 4799 li a5,6 + c004b0bc: f802 sd zero,48(sp) + c004b0be: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2104 return promise; - c004aef0: fc3e sd a5,56(sp) - c004aef2: a099 j c004af38 + c004b0c0: fc3e sd a5,56(sp) + c004b0c2: a099 j c004b108 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2087 promise = JS_NewPromiseCapability(ctx, resolving_funcs); - c004aef4: 008c addi a1,sp,64 - c004aef6: 8526 mv a0,s1 - c004aef8: 898c00ef jal ra,c000af90 - c004aefc: f42e sd a1,40(sp) - c004aefe: f02a sd a0,32(sp) + c004b0c4: 008c addi a1,sp,64 + c004b0c6: 8526 mv a0,s1 + c004b0c8: fb7bf0ef jal ra,c000b07e + c004b0cc: f42e sd a1,40(sp) + c004b0ce: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2088 if (JS_IsException(promise)) - c004af00: 2581 sext.w a1,a1 - c004af02: 4999 li s3,6 - c004af04: ff3584e3 beq a1,s3,c004aeec + c004b0d0: 2581 sext.w a1,a1 + c004b0d2: 4999 li s3,6 + c004b0d4: ff3584e3 beq a1,s3,c004b0bc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2091 th = js_mallocz(ctx, sizeof(*th)); - c004af08: 03000593 li a1,48 - c004af0c: 8526 mv a0,s1 - c004af0e: dcfca0ef jal ra,c0015cdc - c004af12: 842a mv s0,a0 + c004b0d8: 03000593 li a1,48 + c004b0dc: 8526 mv a0,s1 + c004b0de: dcfca0ef jal ra,c0015eac + c004b0e2: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2092 if (!th) { - c004af14: e91d bnez a0,c004af4a + c004b0e4: e91d bnez a0,c004b11a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2093 JS_FreeValue(ctx, promise); - c004af16: 7582 ld a1,32(sp) - c004af18: 7622 ld a2,40(sp) - c004af1a: 8526 mv a0,s1 - c004af1c: bf0fd0ef jal ra,c004830c + c004b0e6: 7582 ld a1,32(sp) + c004b0e8: 7622 ld a2,40(sp) + c004b0ea: 8526 mv a0,s1 + c004b0ec: bf0fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2094 JS_FreeValue(ctx, resolving_funcs[0]); - c004af20: 6586 ld a1,64(sp) - c004af22: 6626 ld a2,72(sp) - c004af24: 8526 mv a0,s1 - c004af26: be6fd0ef jal ra,c004830c + c004b0f0: 6586 ld a1,64(sp) + c004b0f2: 6626 ld a2,72(sp) + c004b0f4: 8526 mv a0,s1 + c004b0f6: be6fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2095 JS_FreeValue(ctx, resolving_funcs[1]); - c004af2a: 65c6 ld a1,80(sp) - c004af2c: 6666 ld a2,88(sp) - c004af2e: 8526 mv a0,s1 - c004af30: bdcfd0ef jal ra,c004830c + c004b0fa: 65c6 ld a1,80(sp) + c004b0fc: 6666 ld a2,88(sp) + c004b0fe: 8526 mv a0,s1 + c004b100: bdcfd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2096 return JS_EXCEPTION; - c004af34: f802 sd zero,48(sp) - c004af36: fc4e sd s3,56(sp) + c004b104: f802 sd zero,48(sp) + c004b106: fc4e sd s3,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2105 (discriminator 1) } - c004af38: 60aa ld ra,136(sp) - c004af3a: 640a ld s0,128(sp) - c004af3c: 7542 ld a0,48(sp) - c004af3e: 75e2 ld a1,56(sp) - c004af40: 74e6 ld s1,120(sp) - c004af42: 7946 ld s2,112(sp) - c004af44: 79a6 ld s3,104(sp) - c004af46: 6149 addi sp,sp,144 - c004af48: 8082 ret + c004b108: 60aa ld ra,136(sp) + c004b10a: 640a ld s0,128(sp) + c004b10c: 7542 ld a0,48(sp) + c004b10e: 75e2 ld a1,56(sp) + c004b110: 74e6 ld s1,120(sp) + c004b112: 7946 ld s2,112(sp) + c004b114: 79a6 ld s3,104(sp) + c004b116: 6149 addi sp,sp,144 + c004b118: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2098 th->timer_id = -1; - c004af4a: 57fd li a5,-1 - c004af4c: c91c sw a5,16(a0) + c004b11a: 57fd li a5,-1 + c004b11c: c91c sw a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2099 th->timeout = get_time_ms() + delay; - c004af4e: fcafe0ef jal ra,c0049718 - c004af52: 67e2 ld a5,24(sp) - c004af54: 66a6 ld a3,72(sp) + c004b11e: fcafe0ef jal ra,c00498e8 + c004b122: 67e2 ld a5,24(sp) + c004b124: 66a6 ld a3,72(sp) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004af56: 5751 li a4,-12 + c004b126: 5751 li a4,-12 js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2099 - c004af58: 97aa add a5,a5,a0 - c004af5a: ec1c sd a5,24(s0) + c004b128: 97aa add a5,a5,a0 + c004b12a: ec1c sd a5,24(s0) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 - c004af5c: 0006861b sext.w a2,a3 - c004af60: 6786 ld a5,64(sp) - c004af62: 00c77563 bgeu a4,a2,c004af6c + c004b12c: 0006861b sext.w a2,a3 + c004b130: 6786 ld a5,64(sp) + c004b132: 00c77563 bgeu a4,a2,c004b13c /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004af66: 4398 lw a4,0(a5) - c004af68: 2705 addiw a4,a4,1 - c004af6a: c398 sw a4,0(a5) + c004b136: 4398 lw a4,0(a5) + c004b138: 2705 addiw a4,a4,1 + c004b13a: c398 sw a4,0(a5) js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2100 th->func = JS_DupValue(ctx, resolving_funcs[0]); - c004af6c: f414 sd a3,40(s0) - c004af6e: f01c sd a5,32(s0) + c004b13c: f414 sd a3,40(s0) + c004b13e: f01c sd a5,32(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c004af70: 02093783 ld a5,32(s2) + c004b140: 02093783 ld a5,32(s2) js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2102 JS_FreeValue(ctx, resolving_funcs[0]); - c004af74: 8526 mv a0,s1 + c004b144: 8526 mv a0,s1 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c004af76: e780 sd s0,8(a5) + c004b146: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c004af78: e01c sd a5,0(s0) + c004b148: e01c sd a5,0(s0) js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2101 list_add_tail(&th->link, &ts->os_timers); - c004af7a: 02090793 addi a5,s2,32 + c004b14a: 02090793 addi a5,s2,32 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c004af7e: e41c sd a5,8(s0) + c004b14e: e41c sd a5,8(s0) js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2102 JS_FreeValue(ctx, resolving_funcs[0]); - c004af80: 6586 ld a1,64(sp) - c004af82: 6626 ld a2,72(sp) + c004b150: 6586 ld a1,64(sp) + c004b152: 6626 ld a2,72(sp) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c004af84: 02893023 sd s0,32(s2) + c004b154: 02893023 sd s0,32(s2) js_os_sleepAsync(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2102 - c004af88: b84fd0ef jal ra,c004830c + c004b158: b84fd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2103 JS_FreeValue(ctx, resolving_funcs[1]); - c004af8c: 65c6 ld a1,80(sp) - c004af8e: 6666 ld a2,88(sp) - c004af90: 8526 mv a0,s1 - c004af92: b7afd0ef jal ra,c004830c + c004b15c: 65c6 ld a1,80(sp) + c004b15e: 6666 ld a2,88(sp) + c004b160: 8526 mv a0,s1 + c004b162: b7afd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2104 return promise; - c004af96: 7782 ld a5,32(sp) - c004af98: f83e sd a5,48(sp) - c004af9a: 77a2 ld a5,40(sp) - c004af9c: bf91 j c004aef0 + c004b166: 7782 ld a5,32(sp) + c004b168: f83e sd a5,48(sp) + c004b16a: 77a2 ld a5,40(sp) + c004b16c: bf91 j c004b0c0 -00000000c004af9e : +00000000c004b16e : js_os_setTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2019 { - c004af9e: 7119 addi sp,sp,-128 - c004afa0: fc86 sd ra,120(sp) - c004afa2: f8a2 sd s0,112(sp) - c004afa4: f4a6 sd s1,104(sp) - c004afa6: f0ca sd s2,96(sp) - c004afa8: ecce sd s3,88(sp) - c004afaa: 893a mv s2,a4 - c004afac: e8d2 sd s4,80(sp) - c004afae: e02e sd a1,0(sp) - c004afb0: e432 sd a2,8(sp) - c004afb2: 842a mv s0,a0 + c004b16e: 7119 addi sp,sp,-128 + c004b170: fc86 sd ra,120(sp) + c004b172: f8a2 sd s0,112(sp) + c004b174: f4a6 sd s1,104(sp) + c004b176: f0ca sd s2,96(sp) + c004b178: ecce sd s3,88(sp) + c004b17a: 893a mv s2,a4 + c004b17c: e8d2 sd s4,80(sp) + c004b17e: e02e sd a1,0(sp) + c004b180: e432 sd a2,8(sp) + c004b182: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2020 JSRuntime *rt = JS_GetRuntime(ctx); - c004afb4: f6bbb0ef jal ra,c0006f1e + c004b184: e89bb0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2021 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004afb8: ecfbb0ef jal ra,c0006e86 + c004b188: dedbb0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2026 func = argv[0]; - c004afbc: 00093983 ld s3,0(s2) - c004afc0: 00893a03 ld s4,8(s2) + c004b18c: 00093983 ld s3,0(s2) + c004b190: 00893a03 ld s4,8(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2021 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004afc4: 84aa mv s1,a0 + c004b194: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2027 if (!JS_IsFunction(ctx, func)) - c004afc6: 85ce mv a1,s3 - c004afc8: 8652 mv a2,s4 - c004afca: 8522 mv a0,s0 - c004afcc: f04e sd s3,32(sp) - c004afce: f452 sd s4,40(sp) - c004afd0: f0cbf0ef jal ra,c000a6dc - c004afd4: ed19 bnez a0,c004aff2 + c004b196: 85ce mv a1,s3 + c004b198: 8652 mv a2,s4 + c004b19a: 8522 mv a0,s0 + c004b19c: f04e sd s3,32(sp) + c004b19e: f452 sd s4,40(sp) + c004b1a0: e2abf0ef jal ra,c000a7ca + c004b1a4: ed19 bnez a0,c004b1c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2028 return JS_ThrowTypeError(ctx, "not a function"); - c004afd6: 8522 mv a0,s0 + c004b1a6: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2043 } - c004afd8: 7446 ld s0,112(sp) - c004afda: 70e6 ld ra,120(sp) - c004afdc: 74a6 ld s1,104(sp) - c004afde: 7906 ld s2,96(sp) - c004afe0: 69e6 ld s3,88(sp) - c004afe2: 6a46 ld s4,80(sp) + c004b1a8: 7446 ld s0,112(sp) + c004b1aa: 70e6 ld ra,120(sp) + c004b1ac: 74a6 ld s1,104(sp) + c004b1ae: 7906 ld s2,96(sp) + c004b1b0: 69e6 ld s3,88(sp) + c004b1b2: 6a46 ld s4,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2028 return JS_ThrowTypeError(ctx, "not a function"); - c004afe4: 00012597 auipc a1,0x12 - c004afe8: 02458593 addi a1,a1,36 # c005d008 + c004b1b4: 00012597 auipc a1,0x12 + c004b1b8: 08458593 addi a1,a1,132 # c005d238 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2043 } - c004afec: 6109 addi sp,sp,128 + c004b1bc: 6109 addi sp,sp,128 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2028 return JS_ThrowTypeError(ctx, "not a function"); - c004afee: c08c806f j c00133f6 + c004b1be: b26c806f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2029 if (JS_ToInt64(ctx, &delay, argv[1])) - c004aff2: 01093603 ld a2,16(s2) - c004aff6: 01893683 ld a3,24(s2) - c004affa: 082c addi a1,sp,24 - c004affc: 8522 mv a0,s0 - c004affe: 88dd30ef jal ra,c001e88a - c004b002: cd11 beqz a0,c004b01e + c004b1c2: 01093603 ld a2,16(s2) + c004b1c6: 01893683 ld a3,24(s2) + c004b1ca: 082c addi a1,sp,24 + c004b1cc: 8522 mv a0,s0 + c004b1ce: 88dd30ef jal ra,c001ea5a + c004b1d2: cd11 beqz a0,c004b1ee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2030 return JS_EXCEPTION; - c004b004: 4799 li a5,6 - c004b006: f802 sd zero,48(sp) - c004b008: fc3e sd a5,56(sp) + c004b1d4: 4799 li a5,6 + c004b1d6: f802 sd zero,48(sp) + c004b1d8: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2043 (discriminator 1) } - c004b00a: 70e6 ld ra,120(sp) - c004b00c: 7446 ld s0,112(sp) - c004b00e: 7542 ld a0,48(sp) - c004b010: 75e2 ld a1,56(sp) - c004b012: 74a6 ld s1,104(sp) - c004b014: 7906 ld s2,96(sp) - c004b016: 69e6 ld s3,88(sp) - c004b018: 6a46 ld s4,80(sp) - c004b01a: 6109 addi sp,sp,128 - c004b01c: 8082 ret + c004b1da: 70e6 ld ra,120(sp) + c004b1dc: 7446 ld s0,112(sp) + c004b1de: 7542 ld a0,48(sp) + c004b1e0: 75e2 ld a1,56(sp) + c004b1e2: 74a6 ld s1,104(sp) + c004b1e4: 7906 ld s2,96(sp) + c004b1e6: 69e6 ld s3,88(sp) + c004b1e8: 6a46 ld s4,80(sp) + c004b1ea: 6109 addi sp,sp,128 + c004b1ec: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2031 th = js_mallocz(ctx, sizeof(*th)); - c004b01e: 8522 mv a0,s0 - c004b020: 03000593 li a1,48 - c004b024: cb9ca0ef jal ra,c0015cdc - c004b028: 842a mv s0,a0 + c004b1ee: 8522 mv a0,s0 + c004b1f0: 03000593 li a1,48 + c004b1f4: cb9ca0ef jal ra,c0015eac + c004b1f8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2032 if (!th) - c004b02a: dd69 beqz a0,c004b004 + c004b1fa: dd69 beqz a0,c004b1d4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2034 th->timer_id = ts->next_timer_id; - c004b02c: 40fc lw a5,68(s1) + c004b1fc: 40fc lw a5,68(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2035 if (ts->next_timer_id == INT32_MAX) - c004b02e: 80000737 lui a4,0x80000 - c004b032: fff74713 not a4,a4 + c004b1fe: 80000737 lui a4,0x80000 + c004b202: fff74713 not a4,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2034 th->timer_id = ts->next_timer_id; - c004b036: c91c sw a5,16(a0) + c004b206: c91c sw a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2036 ts->next_timer_id = 1; - c004b038: 4685 li a3,1 + c004b208: 4685 li a3,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2035 if (ts->next_timer_id == INT32_MAX) - c004b03a: 00e78463 beq a5,a4,c004b042 + c004b20a: 00e78463 beq a5,a4,c004b212 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2038 ts->next_timer_id++; - c004b03e: 0017869b addiw a3,a5,1 - c004b042: c0f4 sw a3,68(s1) + c004b20e: 0017869b addiw a3,a5,1 + c004b212: c0f4 sw a3,68(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2039 th->timeout = get_time_ms() + delay; - c004b044: ed4fe0ef jal ra,c0049718 - c004b048: 67e2 ld a5,24(sp) + c004b214: ed4fe0ef jal ra,c00498e8 + c004b218: 67e2 ld a5,24(sp) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004b04a: 5751 li a4,-12 + c004b21a: 5751 li a4,-12 js_os_setTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2039 - c004b04c: 97aa add a5,a5,a0 - c004b04e: ec1c sd a5,24(s0) + c004b21c: 97aa add a5,a5,a0 + c004b21e: ec1c sd a5,24(s0) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 - c004b050: 000a079b sext.w a5,s4 - c004b054: 00f77763 bgeu a4,a5,c004b062 + c004b220: 000a079b sext.w a5,s4 + c004b224: 00f77763 bgeu a4,a5,c004b232 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004b058: 0009a783 lw a5,0(s3) - c004b05c: 2785 addiw a5,a5,1 - c004b05e: 00f9a023 sw a5,0(s3) + c004b228: 0009a783 lw a5,0(s3) + c004b22c: 2785 addiw a5,a5,1 + c004b22e: 00f9a023 sw a5,0(s3) js_os_setTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2040 th->func = JS_DupValue(ctx, func); - c004b062: 03343023 sd s3,32(s0) - c004b066: 03443423 sd s4,40(s0) + c004b232: 03343023 sd s3,32(s0) + c004b236: 03443423 sd s4,40(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c004b06a: 709c ld a5,32(s1) + c004b23a: 709c ld a5,32(s1) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b06c: c282 sw zero,68(sp) - c004b06e: fc02 sd zero,56(sp) + c004b23c: c282 sw zero,68(sp) + c004b23e: fc02 sd zero,56(sp) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c004b070: e780 sd s0,8(a5) + c004b240: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c004b072: e01c sd a5,0(s0) + c004b242: e01c sd a5,0(s0) js_os_setTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2041 list_add_tail(&th->link, &ts->os_timers); - c004b074: 02048793 addi a5,s1,32 + c004b244: 02048793 addi a5,s1,32 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c004b078: e41c sd a5,8(s0) + c004b248: e41c sd a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c004b07a: f080 sd s0,32(s1) + c004b24a: f080 sd s0,32(s1) js_os_setTimeout(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2042 return JS_NewInt32(ctx, th->timer_id); - c004b07c: 481c lw a5,16(s0) + c004b24c: 481c lw a5,16(s0) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004b07e: c0be sw a5,64(sp) - c004b080: 6786 ld a5,64(sp) - c004b082: f83e sd a5,48(sp) - c004b084: b759 j c004b00a + c004b24e: c0be sw a5,64(sp) + c004b250: 6786 ld a5,64(sp) + c004b252: f83e sd a5,48(sp) + c004b254: b759 j c004b1da -00000000c004b086 : +00000000c004b256 : js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1858 { - c004b086: 7119 addi sp,sp,-128 - c004b088: fc86 sd ra,120(sp) - c004b08a: f4a6 sd s1,104(sp) - c004b08c: f0ca sd s2,96(sp) - c004b08e: ecce sd s3,88(sp) - c004b090: e8d2 sd s4,80(sp) - c004b092: e02e sd a1,0(sp) - c004b094: 8a3a mv s4,a4 - c004b096: e432 sd a2,8(sp) - c004b098: f8a2 sd s0,112(sp) - c004b09a: e4d6 sd s5,72(sp) - c004b09c: e0da sd s6,64(sp) - c004b09e: 89aa mv s3,a0 - c004b0a0: 84be mv s1,a5 + c004b256: 7119 addi sp,sp,-128 + c004b258: fc86 sd ra,120(sp) + c004b25a: f4a6 sd s1,104(sp) + c004b25c: f0ca sd s2,96(sp) + c004b25e: ecce sd s3,88(sp) + c004b260: e8d2 sd s4,80(sp) + c004b262: e02e sd a1,0(sp) + c004b264: 8a3a mv s4,a4 + c004b266: e432 sd a2,8(sp) + c004b268: f8a2 sd s0,112(sp) + c004b26a: e4d6 sd s5,72(sp) + c004b26c: e0da sd s6,64(sp) + c004b26e: 89aa mv s3,a0 + c004b270: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1859 JSRuntime *rt = JS_GetRuntime(ctx); - c004b0a2: e7dbb0ef jal ra,c0006f1e + c004b272: d9bbb0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1860 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b0a6: de1bb0ef jal ra,c0006e86 + c004b276: cffbb0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1865 if (JS_ToInt32(ctx, &fd, argv[0])) - c004b0aa: 000a3603 ld a2,0(s4) - c004b0ae: 008a3683 ld a3,8(s4) + c004b27a: 000a3603 ld a2,0(s4) + c004b27e: 008a3683 ld a3,8(s4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1860 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b0b2: 892a mv s2,a0 + c004b282: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1865 if (JS_ToInt32(ctx, &fd, argv[0])) - c004b0b4: 086c addi a1,sp,28 - c004b0b6: 854e mv a0,s3 - c004b0b8: ab6d10ef jal ra,c001c36e - c004b0bc: c509 beqz a0,c004b0c6 + c004b284: 086c addi a1,sp,28 + c004b286: 854e mv a0,s3 + c004b288: ab6d10ef jal ra,c001c53e + c004b28c: c509 beqz a0,c004b296 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1866 return JS_EXCEPTION; - c004b0be: f802 sd zero,48(sp) - c004b0c0: 4799 li a5,6 + c004b28e: f802 sd zero,48(sp) + c004b290: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1895 return JS_UNDEFINED; - c004b0c2: fc3e sd a5,56(sp) - c004b0c4: a881 j c004b114 + c004b292: fc3e sd a5,56(sp) + c004b294: a881 j c004b2e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1867 func = argv[1]; - c004b0c6: 010a3a83 ld s5,16(s4) - c004b0ca: 018a3a03 ld s4,24(s4) + c004b296: 010a3a83 ld s5,16(s4) + c004b29a: 018a3a03 ld s4,24(s4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1868 if (JS_IsNull(func)) { - c004b0ce: 4789 li a5,2 + c004b29e: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1867 func = argv[1]; - c004b0d0: f056 sd s5,32(sp) - c004b0d2: f452 sd s4,40(sp) + c004b2a0: f056 sd s5,32(sp) + c004b2a2: f452 sd s4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1868 if (JS_IsNull(func)) { - c004b0d4: 000a0b1b sext.w s6,s4 - c004b0d8: 00fb1f63 bne s6,a5,c004b0f6 + c004b2a4: 000a0b1b sext.w s6,s4 + c004b2a8: 00fb1f63 bne s6,a5,c004b2c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1869 rh = find_rh(ts, fd); - c004b0dc: 47f2 lw a5,28(sp) + c004b2ac: 47f2 lw a5,28(sp) find_rh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1838 list_for_each(el, &ts->os_rw_handlers) { - c004b0de: 00893403 ld s0,8(s2) - c004b0e2: 01241563 bne s0,s2,c004b0ec + c004b2ae: 00893403 ld s0,8(s2) + c004b2b2: 01241563 bne s0,s2,c004b2bc js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1895 return JS_UNDEFINED; - c004b0e6: f802 sd zero,48(sp) - c004b0e8: 478d li a5,3 - c004b0ea: bfe1 j c004b0c2 + c004b2b6: f802 sd zero,48(sp) + c004b2b8: 478d li a5,3 + c004b2ba: bfe1 j c004b292 find_rh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1840 if (rh->fd == fd) - c004b0ec: 4818 lw a4,16(s0) - c004b0ee: 0af70a63 beq a4,a5,c004b1a2 + c004b2bc: 4818 lw a4,16(s0) + c004b2be: 0af70a63 beq a4,a5,c004b372 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1838 list_for_each(el, &ts->os_rw_handlers) { - c004b0f2: 6400 ld s0,8(s0) - c004b0f4: b7fd j c004b0e2 + c004b2c2: 6400 ld s0,8(s0) + c004b2c4: b7fd j c004b2b2 js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1880 if (!JS_IsFunction(ctx, func)) - c004b0f6: 85d6 mv a1,s5 - c004b0f8: 8652 mv a2,s4 - c004b0fa: 854e mv a0,s3 - c004b0fc: de0bf0ef jal ra,c000a6dc - c004b100: e515 bnez a0,c004b12c + c004b2c6: 85d6 mv a1,s5 + c004b2c8: 8652 mv a2,s4 + c004b2ca: 854e mv a0,s3 + c004b2cc: cfebf0ef jal ra,c000a7ca + c004b2d0: e515 bnez a0,c004b2fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1881 return JS_ThrowTypeError(ctx, "not a function"); - c004b102: 00012597 auipc a1,0x12 - c004b106: f0658593 addi a1,a1,-250 # c005d008 - c004b10a: 854e mv a0,s3 - c004b10c: aeac80ef jal ra,c00133f6 - c004b110: f82a sd a0,48(sp) - c004b112: fc2e sd a1,56(sp) + c004b2d2: 00012597 auipc a1,0x12 + c004b2d6: f6658593 addi a1,a1,-154 # c005d238 + c004b2da: 854e mv a0,s3 + c004b2dc: a08c80ef jal ra,c00134e4 + c004b2e0: f82a sd a0,48(sp) + c004b2e2: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1896 (discriminator 4) } - c004b114: 70e6 ld ra,120(sp) - c004b116: 7446 ld s0,112(sp) - c004b118: 7542 ld a0,48(sp) - c004b11a: 75e2 ld a1,56(sp) - c004b11c: 74a6 ld s1,104(sp) - c004b11e: 7906 ld s2,96(sp) - c004b120: 69e6 ld s3,88(sp) - c004b122: 6a46 ld s4,80(sp) - c004b124: 6aa6 ld s5,72(sp) - c004b126: 6b06 ld s6,64(sp) - c004b128: 6109 addi sp,sp,128 - c004b12a: 8082 ret + c004b2e4: 70e6 ld ra,120(sp) + c004b2e6: 7446 ld s0,112(sp) + c004b2e8: 7542 ld a0,48(sp) + c004b2ea: 75e2 ld a1,56(sp) + c004b2ec: 74a6 ld s1,104(sp) + c004b2ee: 7906 ld s2,96(sp) + c004b2f0: 69e6 ld s3,88(sp) + c004b2f2: 6a46 ld s4,80(sp) + c004b2f4: 6aa6 ld s5,72(sp) + c004b2f6: 6b06 ld s6,64(sp) + c004b2f8: 6109 addi sp,sp,128 + c004b2fa: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1882 rh = find_rh(ts, fd); - c004b12c: 47f2 lw a5,28(sp) + c004b2fc: 47f2 lw a5,28(sp) find_rh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1838 list_for_each(el, &ts->os_rw_handlers) { - c004b12e: 00893403 ld s0,8(s2) - c004b132: 07241363 bne s0,s2,c004b198 + c004b2fe: 00893403 ld s0,8(s2) + c004b302: 07241363 bne s0,s2,c004b368 js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1884 rh = js_mallocz(ctx, sizeof(*rh)); - c004b136: 03800593 li a1,56 - c004b13a: 854e mv a0,s3 - c004b13c: ba1ca0ef jal ra,c0015cdc - c004b140: 842a mv s0,a0 + c004b306: 03800593 li a1,56 + c004b30a: 854e mv a0,s3 + c004b30c: ba1ca0ef jal ra,c0015eac + c004b310: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1885 if (!rh) - c004b142: dd35 beqz a0,c004b0be + c004b312: dd35 beqz a0,c004b28e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1887 rh->fd = fd; - c004b144: 47f2 lw a5,28(sp) + c004b314: 47f2 lw a5,28(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1888 rh->rw_func[0] = JS_NULL; - c004b146: 00043c23 sd zero,24(s0) + c004b316: 00043c23 sd zero,24(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1889 rh->rw_func[1] = JS_NULL; - c004b14a: 02043423 sd zero,40(s0) + c004b31a: 02043423 sd zero,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1887 rh->fd = fd; - c004b14e: c81c sw a5,16(s0) + c004b31e: c81c sw a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1888 rh->rw_func[0] = JS_NULL; - c004b150: 4789 li a5,2 - c004b152: f01c sd a5,32(s0) + c004b320: 4789 li a5,2 + c004b322: f01c sd a5,32(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1889 rh->rw_func[1] = JS_NULL; - c004b154: f81c sd a5,48(s0) + c004b324: f81c sd a5,48(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c004b156: 00093783 ld a5,0(s2) + c004b326: 00093783 ld a5,0(s2) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c004b15a: e780 sd s0,8(a5) + c004b32a: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c004b15c: e01c sd a5,0(s0) + c004b32c: e01c sd a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c004b15e: 01243423 sd s2,8(s0) + c004b32e: 01243423 sd s2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c004b162: 00893023 sd s0,0(s2) + c004b332: 00893023 sd s0,0(s2) js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1892 JS_FreeValue(ctx, rh->rw_func[magic]); - c004b166: 0485 addi s1,s1,1 - c004b168: 00449793 slli a5,s1,0x4 - c004b16c: 97a2 add a5,a5,s0 - c004b16e: 678c ld a1,8(a5) - c004b170: 6b90 ld a2,16(a5) - c004b172: 854e mv a0,s3 - c004b174: 998fd0ef jal ra,c004830c + c004b336: 0485 addi s1,s1,1 + c004b338: 00449793 slli a5,s1,0x4 + c004b33c: 97a2 add a5,a5,s0 + c004b33e: 678c ld a1,8(a5) + c004b340: 6b90 ld a2,16(a5) + c004b342: 854e mv a0,s3 + c004b344: 998fd0ef jal ra,c00484dc JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004b178: 57d1 li a5,-12 - c004b17a: 0167f763 bgeu a5,s6,c004b188 + c004b348: 57d1 li a5,-12 + c004b34a: 0167f763 bgeu a5,s6,c004b358 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004b17e: 000aa783 lw a5,0(s5) - c004b182: 2785 addiw a5,a5,1 - c004b184: 00faa023 sw a5,0(s5) + c004b34e: 000aa783 lw a5,0(s5) + c004b352: 2785 addiw a5,a5,1 + c004b354: 00faa023 sw a5,0(s5) js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1893 rh->rw_func[magic] = JS_DupValue(ctx, func); - c004b188: 0492 slli s1,s1,0x4 - c004b18a: 04a1 addi s1,s1,8 - c004b18c: 9426 add s0,s0,s1 - c004b18e: 01543023 sd s5,0(s0) - c004b192: 01443423 sd s4,8(s0) - c004b196: bf81 j c004b0e6 + c004b358: 0492 slli s1,s1,0x4 + c004b35a: 04a1 addi s1,s1,8 + c004b35c: 9426 add s0,s0,s1 + c004b35e: 01543023 sd s5,0(s0) + c004b362: 01443423 sd s4,8(s0) + c004b366: bf81 j c004b2b6 find_rh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1840 if (rh->fd == fd) - c004b198: 4818 lw a4,16(s0) - c004b19a: fcf706e3 beq a4,a5,c004b166 + c004b368: 4818 lw a4,16(s0) + c004b36a: fcf706e3 beq a4,a5,c004b336 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1838 list_for_each(el, &ts->os_rw_handlers) { - c004b19e: 6400 ld s0,8(s0) - c004b1a0: bf49 j c004b132 + c004b36e: 6400 ld s0,8(s0) + c004b370: bf49 j c004b302 js_os_setReadHandler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1871 JS_FreeValue(ctx, rh->rw_func[magic]); - c004b1a2: 00148793 addi a5,s1,1 - c004b1a6: 0792 slli a5,a5,0x4 - c004b1a8: 97a2 add a5,a5,s0 - c004b1aa: 678c ld a1,8(a5) - c004b1ac: 6b90 ld a2,16(a5) - c004b1ae: 854e mv a0,s3 - c004b1b0: 0492 slli s1,s1,0x4 - c004b1b2: 95afd0ef jal ra,c004830c + c004b372: 00148793 addi a5,s1,1 + c004b376: 0792 slli a5,a5,0x4 + c004b378: 97a2 add a5,a5,s0 + c004b37a: 678c ld a1,8(a5) + c004b37c: 6b90 ld a2,16(a5) + c004b37e: 854e mv a0,s3 + c004b380: 0492 slli s1,s1,0x4 + c004b382: 95afd0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1872 rh->rw_func[magic] = JS_NULL; - c004b1b6: 94a2 add s1,s1,s0 - c004b1b8: 4709 li a4,2 - c004b1ba: 0004bc23 sd zero,24(s1) - c004b1be: f098 sd a4,32(s1) + c004b386: 94a2 add s1,s1,s0 + c004b388: 4709 li a4,2 + c004b38a: 0004bc23 sd zero,24(s1) + c004b38e: f098 sd a4,32(s1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1873 if (JS_IsNull(rh->rw_func[0]) && - c004b1c0: 501c lw a5,32(s0) - c004b1c2: f2e792e3 bne a5,a4,c004b0e6 + c004b390: 501c lw a5,32(s0) + c004b392: f2e792e3 bne a5,a4,c004b2b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1873 (discriminator 1) - c004b1c6: 5818 lw a4,48(s0) - c004b1c8: f0f71fe3 bne a4,a5,c004b0e6 + c004b396: 5818 lw a4,48(s0) + c004b398: f0f71fe3 bne a4,a5,c004b2b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1876 free_rw_handler(JS_GetRuntime(ctx), rh); - c004b1cc: 854e mv a0,s3 - c004b1ce: d51bb0ef jal ra,c0006f1e - c004b1d2: 85a2 mv a1,s0 - c004b1d4: e92fe0ef jal ra,c0049866 - c004b1d8: b739 j c004b0e6 + c004b39c: 854e mv a0,s3 + c004b39e: c6fbb0ef jal ra,c000700c + c004b3a2: 85a2 mv a1,s0 + c004b3a4: e92fe0ef jal ra,c0049a36 + c004b3a8: b739 j c004b2b6 -00000000c004b1da : +00000000c004b3aa : js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1928 { - c004b1da: 7119 addi sp,sp,-128 - c004b1dc: fc86 sd ra,120(sp) - c004b1de: e02e sd a1,0(sp) - c004b1e0: e432 sd a2,8(sp) - c004b1e2: f8a2 sd s0,112(sp) - c004b1e4: f4a6 sd s1,104(sp) - c004b1e6: 843a mv s0,a4 - c004b1e8: f0ca sd s2,96(sp) - c004b1ea: ecce sd s3,88(sp) - c004b1ec: e8d2 sd s4,80(sp) - c004b1ee: e4d6 sd s5,72(sp) - c004b1f0: e0da sd s6,64(sp) - c004b1f2: 84aa mv s1,a0 + c004b3aa: 7119 addi sp,sp,-128 + c004b3ac: fc86 sd ra,120(sp) + c004b3ae: e02e sd a1,0(sp) + c004b3b0: e432 sd a2,8(sp) + c004b3b2: f8a2 sd s0,112(sp) + c004b3b4: f4a6 sd s1,104(sp) + c004b3b6: 843a mv s0,a4 + c004b3b8: f0ca sd s2,96(sp) + c004b3ba: ecce sd s3,88(sp) + c004b3bc: e8d2 sd s4,80(sp) + c004b3be: e4d6 sd s5,72(sp) + c004b3c0: e0da sd s6,64(sp) + c004b3c2: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1929 JSRuntime *rt = JS_GetRuntime(ctx); - c004b1f4: d2bbb0ef jal ra,c0006f1e - c004b1f8: 89aa mv s3,a0 + c004b3c4: c49bb0ef jal ra,c000700c + c004b3c8: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1930 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b1fa: c8dbb0ef jal ra,c0006e86 - c004b1fe: 892a mv s2,a0 + c004b3ca: babbb0ef jal ra,c0006f74 + c004b3ce: 892a mv s2,a0 is_main_thread(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1829 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b200: 854e mv a0,s3 - c004b202: c85bb0ef jal ra,c0006e86 + c004b3d0: 854e mv a0,s3 + c004b3d2: ba3bb0ef jal ra,c0006f74 js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1936 if (!is_main_thread(rt)) - c004b206: 653c ld a5,72(a0) - c004b208: c38d beqz a5,c004b22a + c004b3d6: 653c ld a5,72(a0) + c004b3d8: c38d beqz a5,c004b3fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1971 } - c004b20a: 7446 ld s0,112(sp) - c004b20c: 70e6 ld ra,120(sp) - c004b20e: 7906 ld s2,96(sp) - c004b210: 69e6 ld s3,88(sp) - c004b212: 6a46 ld s4,80(sp) - c004b214: 6aa6 ld s5,72(sp) - c004b216: 6b06 ld s6,64(sp) + c004b3da: 7446 ld s0,112(sp) + c004b3dc: 70e6 ld ra,120(sp) + c004b3de: 7906 ld s2,96(sp) + c004b3e0: 69e6 ld s3,88(sp) + c004b3e2: 6a46 ld s4,80(sp) + c004b3e4: 6aa6 ld s5,72(sp) + c004b3e6: 6b06 ld s6,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1937 return JS_ThrowTypeError(ctx, "signal handler can only be set in the main thread"); - c004b218: 8526 mv a0,s1 + c004b3e8: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1971 } - c004b21a: 74a6 ld s1,104(sp) + c004b3ea: 74a6 ld s1,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1937 return JS_ThrowTypeError(ctx, "signal handler can only be set in the main thread"); - c004b21c: 00026597 auipc a1,0x26 - c004b220: 9ac58593 addi a1,a1,-1620 # c0070bc8 + c004b3ec: 00026597 auipc a1,0x26 + c004b3f0: a3c58593 addi a1,a1,-1476 # c0070e28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1971 } - c004b224: 6109 addi sp,sp,128 + c004b3f4: 6109 addi sp,sp,128 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1937 return JS_ThrowTypeError(ctx, "signal handler can only be set in the main thread"); - c004b226: 9d0c806f j c00133f6 + c004b3f6: 8eec806f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1939 if (JS_ToUint32(ctx, &sig_num, argv[0])) - c004b22a: 6010 ld a2,0(s0) - c004b22c: 6414 ld a3,8(s0) + c004b3fa: 6010 ld a2,0(s0) + c004b3fc: 6414 ld a3,8(s0) JS_ToUint32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:688 return JS_ToInt32(ctx, (int32_t*)pres, val); - c004b22e: 086c addi a1,sp,28 - c004b230: 8526 mv a0,s1 - c004b232: f832 sd a2,48(sp) - c004b234: fc36 sd a3,56(sp) - c004b236: 938d10ef jal ra,c001c36e + c004b3fe: 086c addi a1,sp,28 + c004b400: 8526 mv a0,s1 + c004b402: f832 sd a2,48(sp) + c004b404: fc36 sd a3,56(sp) + c004b406: 938d10ef jal ra,c001c53e js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1939 - c004b23a: c509 beqz a0,c004b244 + c004b40a: c509 beqz a0,c004b414 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1940 return JS_EXCEPTION; - c004b23c: f802 sd zero,48(sp) - c004b23e: 4799 li a5,6 + c004b40c: f802 sd zero,48(sp) + c004b40e: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1970 return JS_UNDEFINED; - c004b240: fc3e sd a5,56(sp) - c004b242: a839 j c004b260 + c004b410: fc3e sd a5,56(sp) + c004b412: a839 j c004b430 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1941 if (sig_num >= 64) - c004b244: 47f2 lw a5,28(sp) - c004b246: 03f00713 li a4,63 - c004b24a: 02f77763 bgeu a4,a5,c004b278 + c004b414: 47f2 lw a5,28(sp) + c004b416: 03f00713 li a4,63 + c004b41a: 02f77763 bgeu a4,a5,c004b448 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1942 return JS_ThrowRangeError(ctx, "invalid signal number"); - c004b24e: 00026597 auipc a1,0x26 - c004b252: 9b258593 addi a1,a1,-1614 # c0070c00 - c004b256: 8526 mv a0,s1 - c004b258: f02c90ef jal ra,c001495a + c004b41e: 00026597 auipc a1,0x26 + c004b422: a4258593 addi a1,a1,-1470 # c0070e60 + c004b426: 8526 mv a0,s1 + c004b428: e20c90ef jal ra,c0014a48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1957 return JS_ThrowTypeError(ctx, "not a function"); - c004b25c: f82a sd a0,48(sp) - c004b25e: fc2e sd a1,56(sp) + c004b42c: f82a sd a0,48(sp) + c004b42e: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1971 (discriminator 1) } - c004b260: 70e6 ld ra,120(sp) - c004b262: 7446 ld s0,112(sp) - c004b264: 7542 ld a0,48(sp) - c004b266: 75e2 ld a1,56(sp) - c004b268: 74a6 ld s1,104(sp) - c004b26a: 7906 ld s2,96(sp) - c004b26c: 69e6 ld s3,88(sp) - c004b26e: 6a46 ld s4,80(sp) - c004b270: 6aa6 ld s5,72(sp) - c004b272: 6b06 ld s6,64(sp) - c004b274: 6109 addi sp,sp,128 - c004b276: 8082 ret + c004b430: 70e6 ld ra,120(sp) + c004b432: 7446 ld s0,112(sp) + c004b434: 7542 ld a0,48(sp) + c004b436: 75e2 ld a1,56(sp) + c004b438: 74a6 ld s1,104(sp) + c004b43a: 7906 ld s2,96(sp) + c004b43c: 69e6 ld s3,88(sp) + c004b43e: 6a46 ld s4,80(sp) + c004b440: 6aa6 ld s5,72(sp) + c004b442: 6b06 ld s6,64(sp) + c004b444: 6109 addi sp,sp,128 + c004b446: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1943 func = argv[1]; - c004b278: 01843a03 ld s4,24(s0) - c004b27c: 01043983 ld s3,16(s0) + c004b448: 01843a03 ld s4,24(s0) + c004b44c: 01043983 ld s3,16(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1945 if (JS_IsNull(func) || JS_IsUndefined(func)) { - c004b280: 4705 li a4,1 + c004b450: 4705 li a4,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1943 func = argv[1]; - c004b282: f452 sd s4,40(sp) - c004b284: f04e sd s3,32(sp) + c004b452: f452 sd s4,40(sp) + c004b454: f04e sd s3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1945 if (JS_IsNull(func) || JS_IsUndefined(func)) { - c004b286: ffea069b addiw a3,s4,-2 - c004b28a: 000a0b1b sext.w s6,s4 - c004b28e: 02d76463 bltu a4,a3,c004b2b6 + c004b456: ffea069b addiw a3,s4,-2 + c004b45a: 000a0b1b sext.w s6,s4 + c004b45e: 02d76463 bltu a4,a3,c004b486 find_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1902 list_for_each(el, &ts->os_signal_handlers) { - c004b292: 01893403 ld s0,24(s2) + c004b462: 01893403 ld s0,24(s2) js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1946 sh = find_sh(ts, sig_num); - c004b296: 2781 sext.w a5,a5 + c004b466: 2781 sext.w a5,a5 find_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1902 list_for_each(el, &ts->os_signal_handlers) { - c004b298: 0941 addi s2,s2,16 - c004b29a: 01241963 bne s0,s2,c004b2ac + c004b468: 0941 addi s2,s2,16 + c004b46a: 01241963 bne s0,s2,c004b47c js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1954 signal(sig_num, handler); - c004b29e: 4581 li a1,0 + c004b46e: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1968 signal(sig_num, os_signal_handler); - c004b2a0: 4572 lw a0,28(sp) - c004b2a2: 659080ef jal ra,c00540fa + c004b470: 4572 lw a0,28(sp) + c004b472: 659080ef jal ra,c00542ca /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1970 return JS_UNDEFINED; - c004b2a6: 478d li a5,3 - c004b2a8: f802 sd zero,48(sp) - c004b2aa: bf59 j c004b240 + c004b476: 478d li a5,3 + c004b478: f802 sd zero,48(sp) + c004b47a: bf59 j c004b410 find_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1904 if (sh->sig_num == sig_num) - c004b2ac: 4818 lw a4,16(s0) - c004b2ae: 08f70563 beq a4,a5,c004b338 + c004b47c: 4818 lw a4,16(s0) + c004b47e: 08f70563 beq a4,a5,c004b508 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1902 list_for_each(el, &ts->os_signal_handlers) { - c004b2b2: 6400 ld s0,8(s0) - c004b2b4: b7dd j c004b29a + c004b482: 6400 ld s0,8(s0) + c004b484: b7dd j c004b46a js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1956 if (!JS_IsFunction(ctx, func)) - c004b2b6: 85ce mv a1,s3 - c004b2b8: 8652 mv a2,s4 - c004b2ba: 8526 mv a0,s1 - c004b2bc: c20bf0ef jal ra,c000a6dc - c004b2c0: e909 bnez a0,c004b2d2 + c004b486: 85ce mv a1,s3 + c004b488: 8652 mv a2,s4 + c004b48a: 8526 mv a0,s1 + c004b48c: b3ebf0ef jal ra,c000a7ca + c004b490: e909 bnez a0,c004b4a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1957 return JS_ThrowTypeError(ctx, "not a function"); - c004b2c2: 8526 mv a0,s1 - c004b2c4: 00012597 auipc a1,0x12 - c004b2c8: d4458593 addi a1,a1,-700 # c005d008 - c004b2cc: 92ac80ef jal ra,c00133f6 - c004b2d0: b771 j c004b25c + c004b492: 8526 mv a0,s1 + c004b494: 00012597 auipc a1,0x12 + c004b498: da458593 addi a1,a1,-604 # c005d238 + c004b49c: 848c80ef jal ra,c00134e4 + c004b4a0: b771 j c004b42c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1958 sh = find_sh(ts, sig_num); - c004b2d2: 47f2 lw a5,28(sp) + c004b4a2: 47f2 lw a5,28(sp) find_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1902 list_for_each(el, &ts->os_signal_handlers) { - c004b2d4: 01893403 ld s0,24(s2) - c004b2d8: 01090a93 addi s5,s2,16 - c004b2dc: 05541963 bne s0,s5,c004b32e + c004b4a4: 01893403 ld s0,24(s2) + c004b4a8: 01090a93 addi s5,s2,16 + c004b4ac: 05541963 bne s0,s5,c004b4fe js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1960 sh = js_mallocz(ctx, sizeof(*sh)); - c004b2e0: 02800593 li a1,40 - c004b2e4: 8526 mv a0,s1 - c004b2e6: 9f7ca0ef jal ra,c0015cdc - c004b2ea: 842a mv s0,a0 + c004b4b0: 02800593 li a1,40 + c004b4b4: 8526 mv a0,s1 + c004b4b6: 9f7ca0ef jal ra,c0015eac + c004b4ba: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1961 if (!sh) - c004b2ec: d921 beqz a0,c004b23c + c004b4bc: d921 beqz a0,c004b40c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1963 sh->sig_num = sig_num; - c004b2ee: 47f2 lw a5,28(sp) - c004b2f0: c81c sw a5,16(s0) + c004b4be: 47f2 lw a5,28(sp) + c004b4c0: c81c sw a5,16(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c004b2f2: 01093783 ld a5,16(s2) + c004b4c2: 01093783 ld a5,16(s2) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c004b2f6: e780 sd s0,8(a5) + c004b4c6: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c004b2f8: e01c sd a5,0(s0) + c004b4c8: e01c sd a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c004b2fa: 01543423 sd s5,8(s0) + c004b4ca: 01543423 sd s5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c004b2fe: 00893823 sd s0,16(s2) + c004b4ce: 00893823 sd s0,16(s2) js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1966 JS_FreeValue(ctx, sh->func); - c004b302: 6c0c ld a1,24(s0) - c004b304: 7010 ld a2,32(s0) - c004b306: 8526 mv a0,s1 - c004b308: 804fd0ef jal ra,c004830c + c004b4d2: 6c0c ld a1,24(s0) + c004b4d4: 7010 ld a2,32(s0) + c004b4d6: 8526 mv a0,s1 + c004b4d8: 804fd0ef jal ra,c00484dc JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004b30c: 57d1 li a5,-12 - c004b30e: 0167f763 bgeu a5,s6,c004b31c + c004b4dc: 57d1 li a5,-12 + c004b4de: 0167f763 bgeu a5,s6,c004b4ec /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004b312: 0009a783 lw a5,0(s3) - c004b316: 2785 addiw a5,a5,1 - c004b318: 00f9a023 sw a5,0(s3) + c004b4e2: 0009a783 lw a5,0(s3) + c004b4e6: 2785 addiw a5,a5,1 + c004b4e8: 00f9a023 sw a5,0(s3) js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1967 sh->func = JS_DupValue(ctx, func); - c004b31c: 01343c23 sd s3,24(s0) - c004b320: 03443023 sd s4,32(s0) + c004b4ec: 01343c23 sd s3,24(s0) + c004b4f0: 03443023 sd s4,32(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1968 signal(sig_num, os_signal_handler); - c004b324: ffffd597 auipc a1,0xffffd - c004b328: fb858593 addi a1,a1,-72 # c00482dc - c004b32c: bf95 j c004b2a0 + c004b4f4: ffffd597 auipc a1,0xffffd + c004b4f8: fb858593 addi a1,a1,-72 # c00484ac + c004b4fc: bf95 j c004b470 find_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1904 if (sh->sig_num == sig_num) - c004b32e: 4818 lw a4,16(s0) - c004b330: fcf709e3 beq a4,a5,c004b302 + c004b4fe: 4818 lw a4,16(s0) + c004b500: fcf709e3 beq a4,a5,c004b4d2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1902 list_for_each(el, &ts->os_signal_handlers) { - c004b334: 6400 ld s0,8(s0) - c004b336: b75d j c004b2dc + c004b504: 6400 ld s0,8(s0) + c004b506: b75d j c004b4ac js_os_signal(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1948 free_sh(JS_GetRuntime(ctx), sh); - c004b338: 8526 mv a0,s1 - c004b33a: be5bb0ef jal ra,c0006f1e - c004b33e: 84aa mv s1,a0 + c004b508: 8526 mv a0,s1 + c004b50a: b03bb0ef jal ra,c000700c + c004b50e: 84aa mv s1,a0 free_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1912 list_del(&sh->link); - c004b340: 8522 mv a0,s0 - c004b342: f7bfc0ef jal ra,c00482bc + c004b510: 8522 mv a0,s0 + c004b512: f7bfc0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1913 JS_FreeValueRT(rt, sh->func); - c004b346: 6c0c ld a1,24(s0) - c004b348: 7010 ld a2,32(s0) - c004b34a: 8526 mv a0,s1 - c004b34c: c5afe0ef jal ra,c00497a6 + c004b516: 6c0c ld a1,24(s0) + c004b518: 7010 ld a2,32(s0) + c004b51a: 8526 mv a0,s1 + c004b51c: c5afe0ef jal ra,c0049976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1914 js_free_rt(rt, sh); - c004b350: 85a2 mv a1,s0 - c004b352: 8526 mv a0,s1 - c004b354: 853bb0ef jal ra,c0006ba6 + c004b520: 85a2 mv a1,s0 + c004b522: 8526 mv a0,s1 + c004b524: f70bb0ef jal ra,c0006c94 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1915 } - c004b358: b799 j c004b29e + c004b528: b799 j c004b46e -00000000c004b35a : +00000000c004b52a : js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3556 { - c004b35a: 7119 addi sp,sp,-128 - c004b35c: fc86 sd ra,120(sp) - c004b35e: f4a6 sd s1,104(sp) - c004b360: ecce sd s3,88(sp) - c004b362: e8d2 sd s4,80(sp) - c004b364: e4d6 sd s5,72(sp) - c004b366: e82e sd a1,16(sp) - c004b368: ec32 sd a2,24(sp) - c004b36a: e036 sd a3,0(sp) - c004b36c: f8a2 sd s0,112(sp) - c004b36e: f0ca sd s2,96(sp) - c004b370: e0da sd s6,64(sp) - c004b372: fc5e sd s7,56(sp) - c004b374: 84aa mv s1,a0 - c004b376: e43a sd a4,8(sp) - c004b378: 8a3a mv s4,a4 + c004b52a: 7119 addi sp,sp,-128 + c004b52c: fc86 sd ra,120(sp) + c004b52e: f4a6 sd s1,104(sp) + c004b530: ecce sd s3,88(sp) + c004b532: e8d2 sd s4,80(sp) + c004b534: e4d6 sd s5,72(sp) + c004b536: e82e sd a1,16(sp) + c004b538: ec32 sd a2,24(sp) + c004b53a: e036 sd a3,0(sp) + c004b53c: f8a2 sd s0,112(sp) + c004b53e: f0ca sd s2,96(sp) + c004b540: e0da sd s6,64(sp) + c004b542: fc5e sd s7,56(sp) + c004b544: 84aa mv s1,a0 + c004b546: e43a sd a4,8(sp) + c004b548: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3557 JSRuntime *rt = JS_GetRuntime(ctx); - c004b37a: ba5bb0ef jal ra,c0006f1e - c004b37e: 8aaa mv s5,a0 + c004b54a: ac3bb0ef jal ra,c000700c + c004b54e: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3558 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b380: b07bb0ef jal ra,c0006e86 + c004b550: a25bb0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3559 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c004b384: 65c2 ld a1,16(sp) - c004b386: 6662 ld a2,24(sp) + c004b554: 65c2 ld a1,16(sp) + c004b556: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3558 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004b388: 89aa mv s3,a0 + c004b558: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3559 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c004b38a: 000b6697 auipc a3,0xb6 - c004b38e: d726a683 lw a3,-654(a3) # c01010fc - c004b392: 8526 mv a0,s1 - c004b394: 9e4c80ef jal ra,c0013578 + c004b55a: 000b6697 auipc a3,0xb6 + c004b55e: ba26a683 lw a3,-1118(a3) # c01010fc + c004b562: 8526 mv a0,s1 + c004b564: 902c80ef jal ra,c0013666 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3562 if (!worker) - c004b398: e10d bnez a0,c004b3ba + c004b568: e10d bnez a0,c004b58a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3563 return JS_EXCEPTION; - c004b39a: f002 sd zero,32(sp) - c004b39c: 4799 li a5,6 + c004b56a: f002 sd zero,32(sp) + c004b56c: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3587 } - c004b39e: 70e6 ld ra,120(sp) - c004b3a0: 7446 ld s0,112(sp) + c004b56e: 70e6 ld ra,120(sp) + c004b570: 7446 ld s0,112(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3586 return JS_UNDEFINED; - c004b3a2: f43e sd a5,40(sp) + c004b572: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3587 } - c004b3a4: 7502 ld a0,32(sp) - c004b3a6: 75a2 ld a1,40(sp) - c004b3a8: 74a6 ld s1,104(sp) - c004b3aa: 7906 ld s2,96(sp) - c004b3ac: 69e6 ld s3,88(sp) - c004b3ae: 6a46 ld s4,80(sp) - c004b3b0: 6aa6 ld s5,72(sp) - c004b3b2: 6b06 ld s6,64(sp) - c004b3b4: 7be2 ld s7,56(sp) - c004b3b6: 6109 addi sp,sp,128 - c004b3b8: 8082 ret + c004b574: 7502 ld a0,32(sp) + c004b576: 75a2 ld a1,40(sp) + c004b578: 74a6 ld s1,104(sp) + c004b57a: 7906 ld s2,96(sp) + c004b57c: 69e6 ld s3,88(sp) + c004b57e: 6a46 ld s4,80(sp) + c004b580: 6aa6 ld s5,72(sp) + c004b582: 6b06 ld s6,64(sp) + c004b584: 7be2 ld s7,56(sp) + c004b586: 6109 addi sp,sp,128 + c004b588: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3566 if (JS_IsNull(func)) { - c004b3ba: 000a0b1b sext.w s6,s4 - c004b3be: 4b89 li s7,2 + c004b58a: 000a0b1b sext.w s6,s4 + c004b58e: 4b89 li s7,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3565 port = worker->msg_handler; - c004b3c0: 6900 ld s0,16(a0) - c004b3c2: 892a mv s2,a0 + c004b590: 6900 ld s0,16(a0) + c004b592: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3566 if (JS_IsNull(func)) { - c004b3c4: 017b1c63 bne s6,s7,c004b3dc + c004b594: 017b1c63 bne s6,s7,c004b5ac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3567 if (port) { - c004b3c8: c419 beqz s0,c004b3d6 + c004b598: c419 beqz s0,c004b5a6 js_free_port(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3292 if (port) { - c004b3ca: 85a2 mv a1,s0 - c004b3cc: 8556 mv a0,s5 - c004b3ce: a42ff0ef jal ra,c004a610 + c004b59a: 85a2 mv a1,s0 + c004b59c: 8556 mv a0,s5 + c004b59e: a42ff0ef jal ra,c004a7e0 js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3569 worker->msg_handler = NULL; - c004b3d2: 00093823 sd zero,16(s2) + c004b5a2: 00093823 sd zero,16(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3586 return JS_UNDEFINED; - c004b3d6: f002 sd zero,32(sp) - c004b3d8: 478d li a5,3 - c004b3da: b7d1 j c004b39e + c004b5a6: f002 sd zero,32(sp) + c004b5a8: 478d li a5,3 + c004b5aa: b7d1 j c004b56e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3572 if (!JS_IsFunction(ctx, func)) - c004b3dc: 6582 ld a1,0(sp) - c004b3de: 6622 ld a2,8(sp) - c004b3e0: 8526 mv a0,s1 - c004b3e2: afabf0ef jal ra,c000a6dc - c004b3e6: e115 bnez a0,c004b40a + c004b5ac: 6582 ld a1,0(sp) + c004b5ae: 6622 ld a2,8(sp) + c004b5b0: 8526 mv a0,s1 + c004b5b2: a18bf0ef jal ra,c000a7ca + c004b5b6: e115 bnez a0,c004b5da /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3587 } - c004b3e8: 7446 ld s0,112(sp) - c004b3ea: 70e6 ld ra,120(sp) - c004b3ec: 7906 ld s2,96(sp) - c004b3ee: 69e6 ld s3,88(sp) - c004b3f0: 6a46 ld s4,80(sp) - c004b3f2: 6aa6 ld s5,72(sp) - c004b3f4: 6b06 ld s6,64(sp) - c004b3f6: 7be2 ld s7,56(sp) + c004b5b8: 7446 ld s0,112(sp) + c004b5ba: 70e6 ld ra,120(sp) + c004b5bc: 7906 ld s2,96(sp) + c004b5be: 69e6 ld s3,88(sp) + c004b5c0: 6a46 ld s4,80(sp) + c004b5c2: 6aa6 ld s5,72(sp) + c004b5c4: 6b06 ld s6,64(sp) + c004b5c6: 7be2 ld s7,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3573 return JS_ThrowTypeError(ctx, "not a function"); - c004b3f8: 8526 mv a0,s1 + c004b5c8: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3587 } - c004b3fa: 74a6 ld s1,104(sp) + c004b5ca: 74a6 ld s1,104(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3573 return JS_ThrowTypeError(ctx, "not a function"); - c004b3fc: 00012597 auipc a1,0x12 - c004b400: c0c58593 addi a1,a1,-1012 # c005d008 + c004b5cc: 00012597 auipc a1,0x12 + c004b5d0: c6c58593 addi a1,a1,-916 # c005d238 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3587 } - c004b404: 6109 addi sp,sp,128 + c004b5d4: 6109 addi sp,sp,128 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3573 return JS_ThrowTypeError(ctx, "not a function"); - c004b406: ff1c706f j c00133f6 + c004b5d6: f0fc706f j c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3574 if (!port) { - c004b40a: ec1d bnez s0,c004b448 + c004b5da: ec1d bnez s0,c004b618 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3575 port = js_mallocz(ctx, sizeof(*port)); - c004b40c: 02800593 li a1,40 - c004b410: 8526 mv a0,s1 - c004b412: 8cbca0ef jal ra,c0015cdc - c004b416: 842a mv s0,a0 + c004b5dc: 02800593 li a1,40 + c004b5e0: 8526 mv a0,s1 + c004b5e2: 8cbca0ef jal ra,c0015eac + c004b5e6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3576 if (!port) - c004b418: d149 beqz a0,c004b39a + c004b5e8: d149 beqz a0,c004b56a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3578 port->recv_pipe = js_dup_message_pipe(worker->recv_pipe); - c004b41a: 00093a83 ld s5,0(s2) + c004b5ea: 00093a83 ld s5,0(s2) js_dup_message_pipe(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3251 atomic_add_int(&ps->ref_count, 1); - c004b41e: 4585 li a1,1 - c004b420: 8556 mv a0,s5 - c004b422: ed4fe0ef jal ra,c0049af6 + c004b5ee: 4585 li a1,1 + c004b5f0: 8556 mv a0,s5 + c004b5f2: ed4fe0ef jal ra,c0049cc6 js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3578 port->recv_pipe = js_dup_message_pipe(worker->recv_pipe); - c004b426: 01543823 sd s5,16(s0) + c004b5f6: 01543823 sd s5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3579 port->on_message_func = JS_NULL; - c004b42a: 00043c23 sd zero,24(s0) - c004b42e: 03743023 sd s7,32(s0) + c004b5fa: 00043c23 sd zero,24(s0) + c004b5fe: 03743023 sd s7,32(s0) list_add_tail(): /Users/Luppy/riscv/quickjs-nuttx/list.h:66 __list_add(el, head->prev, head); - c004b432: 0309b783 ld a5,48(s3) + c004b602: 0309b783 ld a5,48(s3) __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:51 prev->next = el; - c004b436: e780 sd s0,8(a5) + c004b606: e780 sd s0,8(a5) /Users/Luppy/riscv/quickjs-nuttx/list.h:52 el->prev = prev; - c004b438: e01c sd a5,0(s0) + c004b608: e01c sd a5,0(s0) js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3580 list_add_tail(&port->link, &ts->port_list); - c004b43a: 03098793 addi a5,s3,48 + c004b60a: 03098793 addi a5,s3,48 __list_add(): /Users/Luppy/riscv/quickjs-nuttx/list.h:53 el->next = next; - c004b43e: e41c sd a5,8(s0) + c004b60e: e41c sd a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:54 next->prev = el; - c004b440: 0289b823 sd s0,48(s3) + c004b610: 0289b823 sd s0,48(s3) js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3581 worker->msg_handler = port; - c004b444: 00893823 sd s0,16(s2) + c004b614: 00893823 sd s0,16(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3583 JS_FreeValue(ctx, port->on_message_func); - c004b448: 6c0c ld a1,24(s0) - c004b44a: 7010 ld a2,32(s0) - c004b44c: 8526 mv a0,s1 - c004b44e: ebffc0ef jal ra,c004830c + c004b618: 6c0c ld a1,24(s0) + c004b61a: 7010 ld a2,32(s0) + c004b61c: 8526 mv a0,s1 + c004b61e: ebffc0ef jal ra,c00484dc JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004b452: 5751 li a4,-12 - c004b454: 6782 ld a5,0(sp) - c004b456: 01677563 bgeu a4,s6,c004b460 + c004b622: 5751 li a4,-12 + c004b624: 6782 ld a5,0(sp) + c004b626: 01677563 bgeu a4,s6,c004b630 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004b45a: 4398 lw a4,0(a5) - c004b45c: 2705 addiw a4,a4,1 - c004b45e: c398 sw a4,0(a5) + c004b62a: 4398 lw a4,0(a5) + c004b62c: 2705 addiw a4,a4,1 + c004b62e: c398 sw a4,0(a5) js_worker_set_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3584 port->on_message_func = JS_DupValue(ctx, func); - c004b460: ec1c sd a5,24(s0) - c004b462: 03443023 sd s4,32(s0) - c004b466: bf85 j c004b3d6 + c004b630: ec1c sd a5,24(s0) + c004b632: 03443023 sd s4,32(s0) + c004b636: bf85 j c004b5a6 -00000000c004b468 : +00000000c004b638 : js_worker_get_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3590 { - c004b468: 7179 addi sp,sp,-48 + c004b638: 7179 addi sp,sp,-48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3591 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c004b46a: 000b6697 auipc a3,0xb6 - c004b46e: c926a683 lw a3,-878(a3) # c01010fc + c004b63a: 000b6697 auipc a3,0xb6 + c004b63e: ac26a683 lw a3,-1342(a3) # c01010fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3590 { - c004b472: f406 sd ra,40(sp) - c004b474: e02e sd a1,0(sp) - c004b476: e432 sd a2,8(sp) + c004b642: f406 sd ra,40(sp) + c004b644: e02e sd a1,0(sp) + c004b646: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3591 JSWorkerData *worker = JS_GetOpaque2(ctx, this_val, js_worker_class_id); - c004b478: 900c80ef jal ra,c0013578 + c004b648: 81ec80ef jal ra,c0013666 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3593 if (!worker) - c004b47c: e509 bnez a0,c004b486 + c004b64c: e509 bnez a0,c004b656 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3594 return JS_EXCEPTION; - c004b47e: e802 sd zero,16(sp) - c004b480: 4799 li a5,6 + c004b64e: e802 sd zero,16(sp) + c004b650: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3599 return JS_NULL; - c004b482: ec3e sd a5,24(sp) - c004b484: a839 j c004b4a2 + c004b652: ec3e sd a5,24(sp) + c004b654: a839 j c004b672 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3595 port = worker->msg_handler; - c004b486: 6918 ld a4,16(a0) + c004b656: 6918 ld a4,16(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3596 if (port) { - c004b488: c315 beqz a4,c004b4ac + c004b658: c315 beqz a4,c004b67c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3597 return JS_DupValue(ctx, port->on_message_func); - c004b48a: 7314 ld a3,32(a4) - c004b48c: 6f1c ld a5,24(a4) + c004b65a: 7314 ld a3,32(a4) + c004b65c: 6f1c ld a5,24(a4) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004b48e: 5751 li a4,-12 - c004b490: 0006861b sext.w a2,a3 - c004b494: 00c77563 bgeu a4,a2,c004b49e + c004b65e: 5751 li a4,-12 + c004b660: 0006861b sext.w a2,a3 + c004b664: 00c77563 bgeu a4,a2,c004b66e /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004b498: 4398 lw a4,0(a5) - c004b49a: 2705 addiw a4,a4,1 - c004b49c: c398 sw a4,0(a5) + c004b668: 4398 lw a4,0(a5) + c004b66a: 2705 addiw a4,a4,1 + c004b66c: c398 sw a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:672 return (JSValue)v; - c004b49e: e83e sd a5,16(sp) - c004b4a0: ec36 sd a3,24(sp) + c004b66e: e83e sd a5,16(sp) + c004b670: ec36 sd a3,24(sp) js_worker_get_onmessage(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3601 (discriminator 1) } - c004b4a2: 70a2 ld ra,40(sp) - c004b4a4: 6542 ld a0,16(sp) - c004b4a6: 65e2 ld a1,24(sp) - c004b4a8: 6145 addi sp,sp,48 - c004b4aa: 8082 ret + c004b672: 70a2 ld ra,40(sp) + c004b674: 6542 ld a0,16(sp) + c004b676: 65e2 ld a1,24(sp) + c004b678: 6145 addi sp,sp,48 + c004b67a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3599 return JS_NULL; - c004b4ac: e802 sd zero,16(sp) - c004b4ae: 4789 li a5,2 - c004b4b0: bfc9 j c004b482 + c004b67c: e802 sd zero,16(sp) + c004b67e: 4789 li a5,2 + c004b680: bfc9 j c004b652 -00000000c004b4b2 : +00000000c004b682 : js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1323 { - c004b4b2: 7149 addi sp,sp,-368 - c004b4b4: f2a2 sd s0,352(sp) - c004b4b6: eaca sd s2,336(sp) - c004b4b8: e6ce sd s3,328(sp) - c004b4ba: f686 sd ra,360(sp) - c004b4bc: eea6 sd s1,344(sp) - c004b4be: e2d2 sd s4,320(sp) - c004b4c0: fe56 sd s5,312(sp) - c004b4c2: fa5a sd s6,304(sp) - c004b4c4: f65e sd s7,296(sp) - c004b4c6: f262 sd s8,288(sp) - c004b4c8: e02e sd a1,0(sp) - c004b4ca: e432 sd a2,8(sp) + c004b682: 7149 addi sp,sp,-368 + c004b684: f2a2 sd s0,352(sp) + c004b686: eaca sd s2,336(sp) + c004b688: e6ce sd s3,328(sp) + c004b68a: f686 sd ra,360(sp) + c004b68c: eea6 sd s1,344(sp) + c004b68e: e2d2 sd s4,320(sp) + c004b690: fe56 sd s5,312(sp) + c004b692: fa5a sd s6,304(sp) + c004b694: f65e sd s7,296(sp) + c004b696: f262 sd s8,288(sp) + c004b698: e02e sd a1,0(sp) + c004b69a: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1336 url = JS_ToCString(ctx, argv[0]); - c004b4cc: 630c ld a1,0(a4) - c004b4ce: 6710 ld a2,8(a4) + c004b69c: 630c ld a1,0(a4) + c004b69e: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1323 { - c004b4d0: 842a mv s0,a0 - c004b4d2: 89b6 mv s3,a3 - c004b4d4: 893a mv s2,a4 + c004b6a0: 842a mv s0,a0 + c004b6a2: 89b6 mv s3,a3 + c004b6a4: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1331 JSValue response = JS_UNDEFINED, ret_obj; - c004b4d6: f002 sd zero,32(sp) - c004b4d8: f402 sd zero,40(sp) + c004b6a6: f002 sd zero,32(sp) + c004b6a8: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1336 url = JS_ToCString(ctx, argv[0]); - c004b4da: e7bfc0ef jal ra,c0048354 + c004b6aa: e7bfc0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1337 if (!url) - c004b4de: e115 bnez a0,c004b502 + c004b6ae: e115 bnez a0,c004b6d2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1352 return JS_EXCEPTION; - c004b4e0: 4799 li a5,6 - c004b4e2: e882 sd zero,80(sp) - c004b4e4: ecbe sd a5,88(sp) + c004b6b0: 4799 li a5,6 + c004b6b2: e882 sd zero,80(sp) + c004b6b4: ecbe sd a5,88(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1466 (discriminator 1) } - c004b4e6: 70b6 ld ra,360(sp) - c004b4e8: 7416 ld s0,352(sp) - c004b4ea: 6546 ld a0,80(sp) - c004b4ec: 65e6 ld a1,88(sp) - c004b4ee: 64f6 ld s1,344(sp) - c004b4f0: 6956 ld s2,336(sp) - c004b4f2: 69b6 ld s3,328(sp) - c004b4f4: 6a16 ld s4,320(sp) - c004b4f6: 7af2 ld s5,312(sp) - c004b4f8: 7b52 ld s6,304(sp) - c004b4fa: 7bb2 ld s7,296(sp) - c004b4fc: 7c12 ld s8,288(sp) - c004b4fe: 6175 addi sp,sp,368 - c004b500: 8082 ret + c004b6b6: 70b6 ld ra,360(sp) + c004b6b8: 7416 ld s0,352(sp) + c004b6ba: 6546 ld a0,80(sp) + c004b6bc: 65e6 ld a1,88(sp) + c004b6be: 64f6 ld s1,344(sp) + c004b6c0: 6956 ld s2,336(sp) + c004b6c2: 69b6 ld s3,328(sp) + c004b6c4: 6a16 ld s4,320(sp) + c004b6c6: 7af2 ld s5,312(sp) + c004b6c8: 7b52 ld s6,304(sp) + c004b6ca: 7bb2 ld s7,296(sp) + c004b6cc: 7c12 ld s8,288(sp) + c004b6ce: 6175 addi sp,sp,368 + c004b6d0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1340 binary_flag = FALSE; - c004b502: cc02 sw zero,24(sp) + c004b6d2: cc02 sw zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1341 full_flag = FALSE; - c004b504: ce02 sw zero,28(sp) + c004b6d4: ce02 sw zero,28(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1343 if (argc >= 2) { - c004b506: 4785 li a5,1 - c004b508: 84aa mv s1,a0 - c004b50a: 0537d163 bge a5,s3,c004b54c + c004b6d6: 4785 li a5,1 + c004b6d8: 84aa mv s1,a0 + c004b6da: 0537d163 bge a5,s3,c004b71c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1344 options_obj = argv[1]; - c004b50e: 01093603 ld a2,16(s2) - c004b512: 01893683 ld a3,24(s2) + c004b6de: 01093603 ld a2,16(s2) + c004b6e2: 01893683 ld a3,24(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1346 if (get_bool_option(ctx, &binary_flag, options_obj, "binary")) - c004b516: 00025717 auipc a4,0x25 - c004b51a: 70270713 addi a4,a4,1794 # c0070c18 - c004b51e: 082c addi a1,sp,24 - c004b520: 8522 mv a0,s0 + c004b6e6: 00025717 auipc a4,0x25 + c004b6ea: 79270713 addi a4,a4,1938 # c0070e78 + c004b6ee: 082c addi a1,sp,24 + c004b6f0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1344 options_obj = argv[1]; - c004b522: e0b2 sd a2,64(sp) - c004b524: e4b6 sd a3,72(sp) + c004b6f2: e0b2 sd a2,64(sp) + c004b6f4: e4b6 sd a3,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1346 if (get_bool_option(ctx, &binary_flag, options_obj, "binary")) - c004b526: f2afd0ef jal ra,c0048c50 - c004b52a: c511 beqz a0,c004b536 + c004b6f6: f2afd0ef jal ra,c0048e20 + c004b6fa: c511 beqz a0,c004b706 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1351 JS_FreeCString(ctx, url); - c004b52c: 85a6 mv a1,s1 - c004b52e: 8522 mv a0,s0 - c004b530: 951bd0ef jal ra,c0008e80 - c004b534: b775 j c004b4e0 + c004b6fc: 85a6 mv a1,s1 + c004b6fe: 8522 mv a0,s0 + c004b700: 86fbd0ef jal ra,c0008f6e + c004b704: b775 j c004b6b0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1349 if (get_bool_option(ctx, &full_flag, options_obj, "full")) { - c004b536: 6606 ld a2,64(sp) - c004b538: 66a6 ld a3,72(sp) - c004b53a: 00025717 auipc a4,0x25 - c004b53e: 6e670713 addi a4,a4,1766 # c0070c20 - c004b542: 086c addi a1,sp,28 - c004b544: 8522 mv a0,s0 - c004b546: f0afd0ef jal ra,c0048c50 - c004b54a: f16d bnez a0,c004b52c + c004b706: 6606 ld a2,64(sp) + c004b708: 66a6 ld a3,72(sp) + c004b70a: 00025717 auipc a4,0x25 + c004b70e: 77670713 addi a4,a4,1910 # c0070e80 + c004b712: 086c addi a1,sp,28 + c004b714: 8522 mv a0,s0 + c004b716: f0afd0ef jal ra,c0048e20 + c004b71a: f16d bnez a0,c004b6fc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1356 js_std_dbuf_init(ctx, &cmd_buf); - c004b54c: 090c addi a1,sp,144 - c004b54e: 8522 mv a0,s0 - c004b550: de3fc0ef jal ra,c0048332 + c004b71c: 090c addi a1,sp,144 + c004b71e: 8522 mv a0,s0 + c004b720: de3fc0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1357 dbuf_printf(&cmd_buf, "%s ''", URL_GET_PROGRAM); - c004b554: 00025617 auipc a2,0x25 - c004b558: 6d460613 addi a2,a2,1748 # c0070c28 - c004b55c: 00025597 auipc a1,0x25 - c004b560: 6dc58593 addi a1,a1,1756 # c0070c38 - c004b564: 0908 addi a0,sp,144 - c004b566: 815fc0ef jal ra,c0047d7a + c004b724: 00025617 auipc a2,0x25 + c004b728: 76460613 addi a2,a2,1892 # c0070e88 + c004b72c: 00025597 auipc a1,0x25 + c004b730: 76c58593 addi a1,a1,1900 # c0070e98 + c004b734: 0908 addi a0,sp,144 + c004b736: 815fc0ef jal ra,c0047f4a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1358 len = strlen(url); - c004b56a: 8526 mv a0,s1 - c004b56c: 4440b0ef jal ra,c00569b0 - c004b570: 89aa mv s3,a0 + c004b73a: 8526 mv a0,s1 + c004b73c: 4440b0ef jal ra,c0056b80 + c004b740: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1359 for(i = 0; i < len; i++) { - c004b572: 4901 li s2,0 + c004b742: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1361 if (c == '\'' || c == '\\') - c004b574: 02700a93 li s5,39 + c004b744: 02700a93 li s5,39 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1359 (discriminator 1) for(i = 0; i < len; i++) { - c004b578: 03391863 bne s2,s3,c004b5a8 + c004b748: 03391863 bne s2,s3,c004b778 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1365 JS_FreeCString(ctx, url); - c004b57c: 85a6 mv a1,s1 - c004b57e: 8522 mv a0,s0 - c004b580: 901bd0ef jal ra,c0008e80 + c004b74c: 85a6 mv a1,s1 + c004b74e: 8522 mv a0,s0 + c004b750: 81fbd0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1366 dbuf_putstr(&cmd_buf, "''"); - c004b584: 00025597 auipc a1,0x25 - c004b588: 6bc58593 addi a1,a1,1724 # c0070c40 - c004b58c: 0908 addi a0,sp,144 - c004b58e: fccfc0ef jal ra,c0047d5a + c004b754: 00025597 auipc a1,0x25 + c004b758: 74c58593 addi a1,a1,1868 # c0070ea0 + c004b75c: 0908 addi a0,sp,144 + c004b75e: fccfc0ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1367 dbuf_putc(&cmd_buf, '\0'); - c004b592: 4581 li a1,0 - c004b594: 0908 addi a0,sp,144 - c004b596: facfc0ef jal ra,c0047d42 + c004b762: 4581 li a1,0 + c004b764: 0908 addi a0,sp,144 + c004b766: facfc0ef jal ra,c0047f12 dbuf_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:272 - c004b59a: 5a2a lw s4,168(sp) + c004b76a: 5a2a lw s4,168(sp) js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1368 if (dbuf_error(&cmd_buf)) { - c004b59c: 020a0d63 beqz s4,c004b5d6 + c004b76c: 020a0d63 beqz s4,c004b7a6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1369 dbuf_free(&cmd_buf); - c004b5a0: 0908 addi a0,sp,144 - c004b5a2: 865fc0ef jal ra,c0047e06 + c004b770: 0908 addi a0,sp,144 + c004b772: 865fc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1370 return JS_EXCEPTION; - c004b5a6: bf2d j c004b4e0 + c004b776: bf2d j c004b6b0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1360 c = url[i]; - c004b5a8: 012487b3 add a5,s1,s2 - c004b5ac: 0007ca03 lbu s4,0(a5) - c004b5b0: 000a071b sext.w a4,s4 + c004b778: 012487b3 add a5,s1,s2 + c004b77c: 0007ca03 lbu s4,0(a5) + c004b780: 000a071b sext.w a4,s4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1361 if (c == '\'' || c == '\\') - c004b5b4: 015a0663 beq s4,s5,c004b5c0 + c004b784: 015a0663 beq s4,s5,c004b790 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1361 (discriminator 1) - c004b5b8: 05c00793 li a5,92 - c004b5bc: 00f71763 bne a4,a5,c004b5ca + c004b788: 05c00793 li a5,92 + c004b78c: 00f71763 bne a4,a5,c004b79a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1362 dbuf_putc(&cmd_buf, '\\'); - c004b5c0: 05c00593 li a1,92 - c004b5c4: 0908 addi a0,sp,144 - c004b5c6: f7cfc0ef jal ra,c0047d42 + c004b790: 05c00593 li a1,92 + c004b794: 0908 addi a0,sp,144 + c004b796: f7cfc0ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1363 (discriminator 2) dbuf_putc(&cmd_buf, c); - c004b5ca: 85d2 mv a1,s4 - c004b5cc: 0908 addi a0,sp,144 - c004b5ce: f74fc0ef jal ra,c0047d42 + c004b79a: 85d2 mv a1,s4 + c004b79c: 0908 addi a0,sp,144 + c004b79e: f74fc0ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1359 (discriminator 2) for(i = 0; i < len; i++) { - c004b5d2: 0905 addi s2,s2,1 - c004b5d4: b755 j c004b578 + c004b7a2: 0905 addi s2,s2,1 + c004b7a4: b755 j c004b748 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1373 f = popen((char *)cmd_buf.buf, "r"); - c004b5d6: 654a ld a0,144(sp) - c004b5d8: 00016597 auipc a1,0x16 - c004b5dc: 92058593 addi a1,a1,-1760 # c0060ef8 - c004b5e0: 7d6070ef jal ra,c0052db6 - c004b5e4: 89aa mv s3,a0 + c004b7a6: 654a ld a0,144(sp) + c004b7a8: 00016597 auipc a1,0x16 + c004b7ac: 9b058593 addi a1,a1,-1616 # c0061158 + c004b7b0: 7d6070ef jal ra,c0052f86 + c004b7b4: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1374 dbuf_free(&cmd_buf); - c004b5e6: 0908 addi a0,sp,144 - c004b5e8: 81ffc0ef jal ra,c0047e06 + c004b7b6: 0908 addi a0,sp,144 + c004b7b8: 81ffc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1375 if (!f) { - c004b5ec: 00099c63 bnez s3,c004b604 + c004b7bc: 00099c63 bnez s3,c004b7d4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1376 return JS_ThrowTypeError(ctx, "could not start curl"); - c004b5f0: 00025597 auipc a1,0x25 - c004b5f4: 65858593 addi a1,a1,1624 # c0070c48 - c004b5f8: 8522 mv a0,s0 - c004b5fa: dfdc70ef jal ra,c00133f6 - c004b5fe: e8aa sd a0,80(sp) - c004b600: ecae sd a1,88(sp) - c004b602: b5d5 j c004b4e6 + c004b7c0: 00025597 auipc a1,0x25 + c004b7c4: 6e858593 addi a1,a1,1768 # c0070ea8 + c004b7c8: 8522 mv a0,s0 + c004b7ca: d1bc70ef jal ra,c00134e4 + c004b7ce: e8aa sd a0,80(sp) + c004b7d0: ecae sd a1,88(sp) + c004b7d2: b5d5 j c004b6b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1379 js_std_dbuf_init(ctx, data_buf); - c004b604: 018c addi a1,sp,192 - c004b606: 8522 mv a0,s0 - c004b608: d2bfc0ef jal ra,c0048332 + c004b7d4: 018c addi a1,sp,192 + c004b7d6: 8522 mv a0,s0 + c004b7d8: d2bfc0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1380 js_std_dbuf_init(ctx, header_buf); - c004b60c: 198c addi a1,sp,240 - c004b60e: 8522 mv a0,s0 - c004b610: d23fc0ef jal ra,c0048332 + c004b7dc: 198c addi a1,sp,240 + c004b7de: 8522 mv a0,s0 + c004b7e0: d23fc0ef jal ra,c0048502 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1382 buf = js_malloc(ctx, URL_GET_BUF_SIZE); - c004b614: 6585 lui a1,0x1 - c004b616: 8522 mv a0,s0 - c004b618: e34c90ef jal ra,c0014c4c - c004b61c: 892a mv s2,a0 + c004b7e4: 6585 lui a1,0x1 + c004b7e6: 8522 mv a0,s0 + c004b7e8: d52c90ef jal ra,c0014d3a + c004b7ec: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1383 if (!buf) - c004b61e: 1c050a63 beqz a0,c004b7f2 + c004b7ee: 1c050a63 beqz a0,c004b9c2 http_get_header_line(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 if ((p - buf) < buf_size - 1) - c004b622: 6a85 lui s5,0x1 + c004b7f2: 6a85 lui s5,0x1 js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 - c004b624: 84aa mv s1,a0 + c004b7f4: 84aa mv s1,a0 http_get_header_line(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 - c004b626: 1af9 addi s5,s5,-2 + c004b7f6: 1af9 addi s5,s5,-2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1302 if (c == '\n') - c004b628: 4b29 li s6,10 + c004b7f8: 4b29 li s6,10 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1295 c = fgetc(f); - c004b62a: 854e mv a0,s3 - c004b62c: 54f090ef jal ra,c005537a + c004b7fa: 854e mv a0,s3 + c004b7fc: 54f090ef jal ra,c005554a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1296 if (c < 0) - c004b630: 0c054163 bltz a0,c004b6f2 + c004b800: 0c054163 bltz a0,c004b8c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 if ((p - buf) < buf_size - 1) - c004b634: 412487b3 sub a5,s1,s2 - c004b638: 00fae563 bltu s5,a5,c004b642 + c004b804: 412487b3 sub a5,s1,s2 + c004b808: 00fae563 bltu s5,a5,c004b812 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1299 *p++ = c; - c004b63c: 00a48023 sb a0,0(s1) - c004b640: 0485 addi s1,s1,1 + c004b80c: 00a48023 sb a0,0(s1) + c004b810: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1302 if (c == '\n') - c004b642: ff6514e3 bne a0,s6,c004b62a + c004b812: ff6514e3 bne a0,s6,c004b7fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1305 *p = '\0'; - c004b646: 00048023 sb zero,0(s1) - c004b64a: 854a mv a0,s2 + c004b816: 00048023 sb zero,0(s1) + c004b81a: 854a mv a0,s2 http_get_status(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1312 while (*p != ' ' && *p != '\0') - c004b64c: 02000713 li a4,32 - c004b650: 00054783 lbu a5,0(a0) - c004b654: 00e79f63 bne a5,a4,c004b672 + c004b81c: 02000713 li a4,32 + c004b820: 00054783 lbu a5,0(a0) + c004b824: 00e79f63 bne a5,a4,c004b842 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1316 while (*p == ' ') - c004b658: 02000793 li a5,32 - c004b65c: 00154703 lbu a4,1(a0) + c004b828: 02000793 li a5,32 + c004b82c: 00154703 lbu a4,1(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1317 p++; - c004b660: 0505 addi a0,a0,1 + c004b830: 0505 addi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1316 while (*p == ' ') - c004b662: fef70de3 beq a4,a5,c004b65c + c004b832: fef70de3 beq a4,a5,c004b82c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1318 return atoi(p); - c004b666: 1ae0a0ef jal ra,c0055814 - c004b66a: 8a2a mv s4,a0 - c004b66c: a021 j c004b674 + c004b836: 1ae0a0ef jal ra,c00559e4 + c004b83a: 8a2a mv s4,a0 + c004b83c: a021 j c004b844 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1313 p++; - c004b66e: 0505 addi a0,a0,1 - c004b670: b7c5 j c004b650 + c004b83e: 0505 addi a0,a0,1 + c004b840: b7c5 j c004b820 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1312 while (*p != ' ' && *p != '\0') - c004b672: fff5 bnez a5,c004b66e + c004b842: fff5 bnez a5,c004b83e js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1392 if (!full_flag && !(status >= 200 && status <= 299)) { - c004b674: 47f2 lw a5,28(sp) - c004b676: e799 bnez a5,c004b684 + c004b844: 47f2 lw a5,28(sp) + c004b846: e799 bnez a5,c004b854 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1392 (discriminator 1) - c004b678: f38a079b addiw a5,s4,-200 - c004b67c: 06300713 li a4,99 - c004b680: 06f76963 bltu a4,a5,c004b6f2 + c004b848: f38a079b addiw a5,s4,-200 + c004b84c: 06300713 li a4,99 + c004b850: 06f76963 bltu a4,a5,c004b8c2 http_get_header_line(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 if ((p - buf) < buf_size - 1) - c004b684: 6b05 lui s6,0x1 - c004b686: 1b79 addi s6,s6,-2 + c004b854: 6b05 lui s6,0x1 + c004b856: 1b79 addi s6,s6,-2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1302 if (c == '\n') - c004b688: 4c29 li s8,10 + c004b858: 4c29 li s8,10 js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1403 if (!strcmp(buf, "\r\n")) - c004b68a: 00025b97 auipc s7,0x25 - c004b68e: 5d6b8b93 addi s7,s7,1494 # c0070c60 + c004b85a: 00025b97 auipc s7,0x25 + c004b85e: 666b8b93 addi s7,s7,1638 # c0070ec0 http_get_header_line(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1305 *p = '\0'; - c004b692: 84ca mv s1,s2 + c004b862: 84ca mv s1,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1295 c = fgetc(f); - c004b694: 854e mv a0,s3 - c004b696: 4e5090ef jal ra,c005537a - c004b69a: 8aaa mv s5,a0 + c004b864: 854e mv a0,s3 + c004b866: 4e5090ef jal ra,c005554a + c004b86a: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1296 if (c < 0) - c004b69c: 04054b63 bltz a0,c004b6f2 + c004b86c: 04054b63 bltz a0,c004b8c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 if ((p - buf) < buf_size - 1) - c004b6a0: 412487b3 sub a5,s1,s2 + c004b870: 412487b3 sub a5,s1,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1299 *p++ = c; - c004b6a4: 0ff57593 zext.b a1,a0 + c004b874: 0ff57593 zext.b a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1298 if ((p - buf) < buf_size - 1) - c004b6a8: 00fb6563 bltu s6,a5,c004b6b2 + c004b878: 00fb6563 bltu s6,a5,c004b882 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1299 *p++ = c; - c004b6ac: 00b48023 sb a1,0(s1) - c004b6b0: 0485 addi s1,s1,1 + c004b87c: 00b48023 sb a1,0(s1) + c004b880: 0485 addi s1,s1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1301 dbuf_putc(dbuf, c); - c004b6b2: 1988 addi a0,sp,240 - c004b6b4: e8efc0ef jal ra,c0047d42 + c004b882: 1988 addi a0,sp,240 + c004b884: e8efc0ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1302 if (c == '\n') - c004b6b8: fd8a9ee3 bne s5,s8,c004b694 + c004b888: fd8a9ee3 bne s5,s8,c004b864 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1305 *p = '\0'; - c004b6bc: 00048023 sb zero,0(s1) + c004b88c: 00048023 sb zero,0(s1) js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1403 if (!strcmp(buf, "\r\n")) - c004b6c0: 85de mv a1,s7 - c004b6c2: 854a mv a0,s2 - c004b6c4: 28a0b0ef jal ra,c005694e - c004b6c8: f569 bnez a0,c004b692 + c004b890: 85de mv a1,s7 + c004b892: 854a mv a0,s2 + c004b894: 28a0b0ef jal ra,c0056b1e + c004b898: f569 bnez a0,c004b862 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1406 if (dbuf_error(header_buf)) - c004b6ca: 10812783 lw a5,264(sp) - c004b6ce: 12079263 bnez a5,c004b7f2 + c004b89a: 10812783 lw a5,264(sp) + c004b89e: 12079263 bnez a5,c004b9c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1408 header_buf->size -= 2; /* remove the trailing CRLF */ - c004b6d2: 77ee ld a5,248(sp) - c004b6d4: 17f9 addi a5,a5,-2 - c004b6d6: fdbe sd a5,248(sp) + c004b8a2: 77ee ld a5,248(sp) + c004b8a4: 17f9 addi a5,a5,-2 + c004b8a6: fdbe sd a5,248(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1412 len = fread(buf, 1, URL_GET_BUF_SIZE, f); - c004b6d8: 6605 lui a2,0x1 - c004b6da: 86ce mv a3,s3 - c004b6dc: 4585 li a1,1 - c004b6de: 854a mv a0,s2 - c004b6e0: 2ff090ef jal ra,c00551de - c004b6e4: 862a mv a2,a0 + c004b8a8: 6605 lui a2,0x1 + c004b8aa: 86ce mv a3,s3 + c004b8ac: 4585 li a1,1 + c004b8ae: 854a mv a0,s2 + c004b8b0: 2ff090ef jal ra,c00553ae + c004b8b4: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1413 if (len == 0) - c004b6e6: c54d beqz a0,c004b790 + c004b8b6: c54d beqz a0,c004b960 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1415 dbuf_put(data_buf, (uint8_t *)buf, len); - c004b6e8: 85ca mv a1,s2 - c004b6ea: 0188 addi a0,sp,192 - c004b6ec: dc4fc0ef jal ra,c0047cb0 + c004b8b8: 85ca mv a1,s2 + c004b8ba: 0188 addi a0,sp,192 + c004b8bc: dc4fc0ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1412 len = fread(buf, 1, URL_GET_BUF_SIZE, f); - c004b6f0: b7e5 j c004b6d8 + c004b8c0: b7e5 j c004b8a8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1400 response = JS_NULL; - c004b6f2: f002 sd zero,32(sp) - c004b6f4: 4489 li s1,2 + c004b8c2: f002 sd zero,32(sp) + c004b8c4: 4489 li s1,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1428 js_free(ctx, buf); - c004b6f6: 85ca mv a1,s2 - c004b6f8: 8522 mv a0,s0 - c004b6fa: f40bb0ef jal ra,c0006e3a + c004b8c6: 85ca mv a1,s2 + c004b8c8: 8522 mv a0,s0 + c004b8ca: e5ebb0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1430 pclose(f); - c004b6fe: 854e mv a0,s3 - c004b700: 68a070ef jal ra,c0052d8a + c004b8ce: 854e mv a0,s3 + c004b8d0: 68a070ef jal ra,c0052f5a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1432 dbuf_free(data_buf); - c004b704: 0188 addi a0,sp,192 - c004b706: f00fc0ef jal ra,c0047e06 + c004b8d4: 0188 addi a0,sp,192 + c004b8d6: f00fc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1435 if (full_flag) { - c004b70a: 47f2 lw a5,28(sp) - c004b70c: cbdd beqz a5,c004b7c2 + c004b8da: 47f2 lw a5,28(sp) + c004b8dc: cbdd beqz a5,c004b992 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1436 ret_obj = JS_NewObject(ctx); - c004b70e: 8522 mv a0,s0 - c004b710: e78cb0ef jal ra,c0016d88 - c004b714: f82a sd a0,48(sp) - c004b716: fc2e sd a1,56(sp) + c004b8de: 8522 mv a0,s0 + c004b8e0: e78cb0ef jal ra,c0016f58 + c004b8e4: f82a sd a0,48(sp) + c004b8e6: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1437 if (JS_IsException(ret_obj)) - c004b718: 0005871b sext.w a4,a1 - c004b71c: 4799 li a5,6 + c004b8e8: 0005871b sext.w a4,a1 + c004b8ec: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1436 ret_obj = JS_NewObject(ctx); - c004b71e: 892e mv s2,a1 + c004b8ee: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1437 if (JS_IsException(ret_obj)) - c004b720: 0af70563 beq a4,a5,c004b7ca + c004b8f0: 0af70563 beq a4,a5,c004b99a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1439 JS_DefinePropertyValueStr(ctx, ret_obj, "response", - c004b724: 7702 ld a4,32(sp) - c004b726: 87a6 mv a5,s1 - c004b728: 85aa mv a1,a0 - c004b72a: 481d li a6,7 - c004b72c: 00025697 auipc a3,0x25 - c004b730: 53c68693 addi a3,a3,1340 # c0070c68 - c004b734: 864a mv a2,s2 - c004b736: 8522 mv a0,s0 - c004b738: 820de0ef jal ra,c0029758 + c004b8f4: 7702 ld a4,32(sp) + c004b8f6: 87a6 mv a5,s1 + c004b8f8: 85aa mv a1,a0 + c004b8fa: 481d li a6,7 + c004b8fc: 00025697 auipc a3,0x25 + c004b900: 5cc68693 addi a3,a3,1484 # c0070ec8 + c004b904: 864a mv a2,s2 + c004b906: 8522 mv a0,s0 + c004b908: 820de0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1442 if (!JS_IsNull(response)) { - c004b73c: 2481 sext.w s1,s1 - c004b73e: 4789 li a5,2 - c004b740: 04f48163 beq s1,a5,c004b782 + c004b90c: 2481 sext.w s1,s1 + c004b90e: 4789 li a5,2 + c004b910: 04f48163 beq s1,a5,c004b952 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1443 JS_DefinePropertyValueStr(ctx, ret_obj, "responseHeaders", - c004b744: 766e ld a2,248(sp) - c004b746: 75ce ld a1,240(sp) - c004b748: 8522 mv a0,s0 - c004b74a: b47cd0ef jal ra,c0019290 - c004b74e: 87ae mv a5,a1 - c004b750: 7662 ld a2,56(sp) - c004b752: 75c2 ld a1,48(sp) - c004b754: 872a mv a4,a0 - c004b756: 481d li a6,7 - c004b758: 00025697 auipc a3,0x25 - c004b75c: 52068693 addi a3,a3,1312 # c0070c78 - c004b760: 8522 mv a0,s0 - c004b762: ff7dd0ef jal ra,c0029758 + c004b914: 766e ld a2,248(sp) + c004b916: 75ce ld a1,240(sp) + c004b918: 8522 mv a0,s0 + c004b91a: b47cd0ef jal ra,c0019460 + c004b91e: 87ae mv a5,a1 + c004b920: 7662 ld a2,56(sp) + c004b922: 75c2 ld a1,48(sp) + c004b924: 872a mv a4,a0 + c004b926: 481d li a6,7 + c004b928: 00025697 auipc a3,0x25 + c004b92c: 5b068693 addi a3,a3,1456 # c0070ed8 + c004b930: 8522 mv a0,s0 + c004b932: ff7dd0ef jal ra,c0029928 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b766: e102 sd zero,128(sp) - c004b768: c152 sw s4,128(sp) + c004b936: e102 sd zero,128(sp) + c004b938: c152 sw s4,128(sp) js_std_urlGet(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1447 JS_DefinePropertyValueStr(ctx, ret_obj, "status", - c004b76a: 670a ld a4,128(sp) - c004b76c: 75c2 ld a1,48(sp) - c004b76e: 7662 ld a2,56(sp) - c004b770: 481d li a6,7 - c004b772: 4781 li a5,0 - c004b774: 00025697 auipc a3,0x25 - c004b778: 51468693 addi a3,a3,1300 # c0070c88 - c004b77c: 8522 mv a0,s0 - c004b77e: fdbdd0ef jal ra,c0029758 + c004b93a: 670a ld a4,128(sp) + c004b93c: 75c2 ld a1,48(sp) + c004b93e: 7662 ld a2,56(sp) + c004b940: 481d li a6,7 + c004b942: 4781 li a5,0 + c004b944: 00025697 auipc a3,0x25 + c004b948: 5a468693 addi a3,a3,1444 # c0070ee8 + c004b94c: 8522 mv a0,s0 + c004b94e: fdbdd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1454 dbuf_free(header_buf); - c004b782: 1988 addi a0,sp,240 - c004b784: e82fc0ef jal ra,c0047e06 + c004b952: 1988 addi a0,sp,240 + c004b954: e82fc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1455 return ret_obj; - c004b788: 77c2 ld a5,48(sp) - c004b78a: ecca sd s2,88(sp) - c004b78c: e8be sd a5,80(sp) - c004b78e: bba1 j c004b4e6 + c004b958: 77c2 ld a5,48(sp) + c004b95a: ecca sd s2,88(sp) + c004b95c: e8be sd a5,80(sp) + c004b95e: bba1 j c004b6b6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1417 if (dbuf_error(data_buf)) - c004b790: 47ee lw a5,216(sp) - c004b792: e3a5 bnez a5,c004b7f2 + c004b960: 47ee lw a5,216(sp) + c004b962: e3a5 bnez a5,c004b9c2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1419 if (binary_flag) { - c004b794: 47e2 lw a5,24(sp) + c004b964: 47e2 lw a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1421 data_buf->buf, data_buf->size); - c004b796: 658e ld a1,192(sp) + c004b966: 658e ld a1,192(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1420 response = JS_NewArrayBufferCopy(ctx, - c004b798: 662e ld a2,200(sp) - c004b79a: 8522 mv a0,s0 + c004b968: 662e ld a2,200(sp) + c004b96a: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1419 if (binary_flag) { - c004b79c: c385 beqz a5,c004b7bc + c004b96c: c385 beqz a5,c004b98c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1420 response = JS_NewArrayBufferCopy(ctx, - c004b79e: d1cf60ef jal ra,c0041cba + c004b96e: d1cf60ef jal ra,c0041e8a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1423 response = JS_NewStringLen(ctx, (char *)data_buf->buf, data_buf->size); - c004b7a2: f02a sd a0,32(sp) + c004b972: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1425 if (JS_IsException(response)) - c004b7a4: 0005879b sext.w a5,a1 - c004b7a8: 4719 li a4,6 + c004b974: 0005879b sext.w a5,a1 + c004b978: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1423 response = JS_NewStringLen(ctx, (char *)data_buf->buf, data_buf->size); - c004b7aa: 84ae mv s1,a1 + c004b97a: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1425 if (JS_IsException(response)) - c004b7ac: f4e795e3 bne a5,a4,c004b6f6 + c004b97c: f4e795e3 bne a5,a4,c004b8c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1458 pclose(f); - c004b7b0: 854e mv a0,s3 - c004b7b2: 5d8070ef jal ra,c0052d8a - c004b7b6: 0c010993 addi s3,sp,192 - c004b7ba: a811 j c004b7ce + c004b980: 854e mv a0,s3 + c004b982: 5d8070ef jal ra,c0052f5a + c004b986: 0c010993 addi s3,sp,192 + c004b98a: a811 j c004b99e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1423 response = JS_NewStringLen(ctx, (char *)data_buf->buf, data_buf->size); - c004b7bc: ad5cd0ef jal ra,c0019290 - c004b7c0: b7cd j c004b7a2 + c004b98c: ad5cd0ef jal ra,c0019460 + c004b990: b7cd j c004b972 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1452 ret_obj = response; - c004b7c2: 7782 ld a5,32(sp) - c004b7c4: 8926 mv s2,s1 - c004b7c6: f83e sd a5,48(sp) - c004b7c8: bf6d j c004b782 + c004b992: 7782 ld a5,32(sp) + c004b994: 8926 mv s2,s1 + c004b996: f83e sd a5,48(sp) + c004b998: bf6d j c004b952 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1429 buf = NULL; - c004b7ca: 4901 li s2,0 + c004b99a: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1433 data_buf = NULL; - c004b7cc: 4981 li s3,0 + c004b99c: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1459 js_free(ctx, buf); - c004b7ce: 85ca mv a1,s2 - c004b7d0: 8522 mv a0,s0 - c004b7d2: e68bb0ef jal ra,c0006e3a + c004b99e: 85ca mv a1,s2 + c004b9a0: 8522 mv a0,s0 + c004b9a2: d86bb0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1460 if (data_buf) - c004b7d6: 00098563 beqz s3,c004b7e0 + c004b9a6: 00098563 beqz s3,c004b9b0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1461 dbuf_free(data_buf); - c004b7da: 854e mv a0,s3 - c004b7dc: e2afc0ef jal ra,c0047e06 + c004b9aa: 854e mv a0,s3 + c004b9ac: e2afc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1463 dbuf_free(header_buf); - c004b7e0: 1988 addi a0,sp,240 - c004b7e2: e24fc0ef jal ra,c0047e06 + c004b9b0: 1988 addi a0,sp,240 + c004b9b2: e24fc0ef jal ra,c0047fd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1464 JS_FreeValue(ctx, response); - c004b7e6: 7582 ld a1,32(sp) - c004b7e8: 8626 mv a2,s1 - c004b7ea: 8522 mv a0,s0 - c004b7ec: b21fc0ef jal ra,c004830c + c004b9b6: 7582 ld a1,32(sp) + c004b9b8: 8626 mv a2,s1 + c004b9ba: 8522 mv a0,s0 + c004b9bc: b21fc0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1465 return JS_EXCEPTION; - c004b7f0: b9c5 j c004b4e0 + c004b9c0: b9c5 j c004b6b0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1331 JSValue response = JS_UNDEFINED, ret_obj; - c004b7f2: 448d li s1,3 - c004b7f4: bf75 j c004b7b0 + c004b9c2: 448d li s1,3 + c004b9c4: bf75 j c004b980 -00000000c004b7f6 : +00000000c004b9c6 : js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2518 { - c004b7f6: da010113 addi sp,sp,-608 - c004b7fa: 24813823 sd s0,592(sp) - c004b7fe: 24913423 sd s1,584(sp) - c004b802: 24113c23 sd ra,600(sp) - c004b806: 25213023 sd s2,576(sp) - c004b80a: e02e sd a1,0(sp) - c004b80c: e432 sd a2,8(sp) + c004b9c6: da010113 addi sp,sp,-608 + c004b9ca: 24813823 sd s0,592(sp) + c004b9ce: 24913423 sd s1,584(sp) + c004b9d2: 24113c23 sd ra,600(sp) + c004b9d6: 25213023 sd s2,576(sp) + c004b9da: e02e sd a1,0(sp) + c004b9dc: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2524 path = JS_ToCString(ctx, argv[0]); - c004b80e: 630c ld a1,0(a4) - c004b810: 6710 ld a2,8(a4) + c004b9de: 630c ld a1,0(a4) + c004b9e0: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2518 { - c004b812: 842a mv s0,a0 - c004b814: 84be mv s1,a5 + c004b9e2: 842a mv s0,a0 + c004b9e4: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2524 path = JS_ToCString(ctx, argv[0]); - c004b816: b3ffc0ef jal ra,c0048354 + c004b9e6: b3ffc0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2525 if (!path) - c004b81a: e10d bnez a0,c004b83c + c004b9ea: e10d bnez a0,c004ba0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2526 return JS_EXCEPTION; - c004b81c: 4799 li a5,6 - c004b81e: f402 sd zero,40(sp) - c004b820: f83e sd a5,48(sp) + c004b9ec: 4799 li a5,6 + c004b9ee: f402 sd zero,40(sp) + c004b9f0: f83e sd a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2606 (discriminator 1) } - c004b822: 25813083 ld ra,600(sp) - c004b826: 25013403 ld s0,592(sp) - c004b82a: 7522 ld a0,40(sp) - c004b82c: 75c2 ld a1,48(sp) - c004b82e: 24813483 ld s1,584(sp) - c004b832: 24013903 ld s2,576(sp) - c004b836: 26010113 addi sp,sp,608 - c004b83a: 8082 ret - c004b83c: 892a mv s2,a0 + c004b9f2: 25813083 ld ra,600(sp) + c004b9f6: 25013403 ld s0,592(sp) + c004b9fa: 7522 ld a0,40(sp) + c004b9fc: 75c2 ld a1,48(sp) + c004b9fe: 24813483 ld s1,584(sp) + c004ba02: 24013903 ld s2,576(sp) + c004ba06: 26010113 addi sp,sp,608 + c004ba0a: 8082 ret + c004ba0c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2531 res = lstat(path, &st); - c004b83e: 13ac addi a1,sp,488 + c004ba0e: 13ac addi a1,sp,488 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2530 if (is_lstat) - c004b840: c49d beqz s1,c004b86e + c004ba10: c49d beqz s1,c004ba3e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2531 res = lstat(path, &st); - c004b842: 3a70b0ef jal ra,c00573e8 + c004ba12: 3a70b0ef jal ra,c00575b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2533 res = stat(path, &st); - c004b846: 84aa mv s1,a0 + c004ba16: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2535 JS_FreeCString(ctx, path); - c004b848: 85ca mv a1,s2 - c004b84a: 8522 mv a0,s0 - c004b84c: e34bd0ef jal ra,c0008e80 + c004ba18: 85ca mv a1,s2 + c004ba1a: 8522 mv a0,s0 + c004ba1c: d52bd0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2536 if (res < 0) { - c004b850: 0204d263 bgez s1,c004b874 + c004ba20: 0204d263 bgez s1,c004ba44 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2537 err = errno; - c004b854: 280080ef jal ra,c0053ad4 <__errno> - c004b858: 4114 lw a3,0(a0) + c004ba24: 280080ef jal ra,c0053ca4 <__errno> + c004ba28: 4114 lw a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2538 obj = JS_NULL; - c004b85a: ec02 sd zero,24(sp) - c004b85c: 4489 li s1,2 + c004ba2a: ec02 sd zero,24(sp) + c004ba2c: 4489 li s1,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2605 return make_obj_error(ctx, obj, err); - c004b85e: 65e2 ld a1,24(sp) - c004b860: 8626 mv a2,s1 - c004b862: 8522 mv a0,s0 - c004b864: b89fd0ef jal ra,c00493ec - c004b868: f42a sd a0,40(sp) - c004b86a: f82e sd a1,48(sp) - c004b86c: bf5d j c004b822 + c004ba2e: 65e2 ld a1,24(sp) + c004ba30: 8626 mv a2,s1 + c004ba32: 8522 mv a0,s0 + c004ba34: b89fd0ef jal ra,c00495bc + c004ba38: f42a sd a0,40(sp) + c004ba3a: f82e sd a1,48(sp) + c004ba3c: bf5d j c004b9f2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2533 res = stat(path, &st); - c004b86e: 56d0b0ef jal ra,c00575da - c004b872: bfd1 j c004b846 + c004ba3e: 56d0b0ef jal ra,c00577aa + c004ba42: bfd1 j c004ba16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2541 obj = JS_NewObject(ctx); - c004b874: 8522 mv a0,s0 - c004b876: d12cb0ef jal ra,c0016d88 - c004b87a: ec2a sd a0,24(sp) - c004b87c: f02e sd a1,32(sp) + c004ba44: 8522 mv a0,s0 + c004ba46: d12cb0ef jal ra,c0016f58 + c004ba4a: ec2a sd a0,24(sp) + c004ba4c: f02e sd a1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2542 if (JS_IsException(obj)) - c004b87e: 0005871b sext.w a4,a1 - c004b882: 4799 li a5,6 + c004ba4e: 0005871b sext.w a4,a1 + c004ba52: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2541 obj = JS_NewObject(ctx); - c004b884: 84ae mv s1,a1 + c004ba54: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2542 if (JS_IsException(obj)) - c004b886: f8f70be3 beq a4,a5,c004b81c + c004ba56: f8f70be3 beq a4,a5,c004b9ec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2545 JS_NewInt64(ctx, st.st_dev), - c004b88a: 1e812783 lw a5,488(sp) + c004ba5a: 1e812783 lw a5,488(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2544 JS_DefinePropertyValueStr(ctx, obj, "dev", - c004b88e: 02079693 slli a3,a5,0x20 - c004b892: 9281 srli a3,a3,0x20 + c004ba5e: 02079693 slli a3,a5,0x20 + c004ba62: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b894: 0007871b sext.w a4,a5 - c004b898: 2af69b63 bne a3,a5,c004bb4e + c004ba64: 0007871b sext.w a4,a5 + c004ba68: 2af69b63 bne a3,a5,c004bd1e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b89c: 1c012e23 sw zero,476(sp) - c004b8a0: 1ce12c23 sw a4,472(sp) - c004b8a4: 67fe ld a5,472(sp) - c004b8a6: eb82 sd zero,464(sp) - c004b8a8: e7be sd a5,456(sp) - c004b8aa: 4781 li a5,0 + c004ba6c: 1c012e23 sw zero,476(sp) + c004ba70: 1ce12c23 sw a4,472(sp) + c004ba74: 67fe ld a5,472(sp) + c004ba76: eb82 sd zero,464(sp) + c004ba78: e7be sd a5,456(sp) + c004ba7a: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004b8ac: 1ce12423 sw a4,456(sp) + c004ba7c: 1ce12423 sw a4,456(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2544 - c004b8b0: 673e ld a4,456(sp) - c004b8b2: 65e2 ld a1,24(sp) - c004b8b4: 7602 ld a2,32(sp) - c004b8b6: 481d li a6,7 - c004b8b8: 00025697 auipc a3,0x25 - c004b8bc: 3d868693 addi a3,a3,984 # c0070c90 - c004b8c0: 8522 mv a0,s0 - c004b8c2: e97dd0ef jal ra,c0029758 + c004ba80: 673e ld a4,456(sp) + c004ba82: 65e2 ld a1,24(sp) + c004ba84: 7602 ld a2,32(sp) + c004ba86: 481d li a6,7 + c004ba88: 00025697 auipc a3,0x25 + c004ba8c: 46868693 addi a3,a3,1128 # c0070ef0 + c004ba90: 8522 mv a0,s0 + c004ba92: e97dd0ef jal ra,c0029928 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b8c6: 1ec15783 lhu a5,492(sp) + c004ba96: 1ec15783 lhu a5,492(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b8ca: ff02 sd zero,440(sp) + c004ba9a: ff02 sd zero,440(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2547 JS_DefinePropertyValueStr(ctx, obj, "ino", - c004b8cc: 65e2 ld a1,24(sp) - c004b8ce: 1af12c23 sw a5,440(sp) - c004b8d2: 777a ld a4,440(sp) - c004b8d4: 7602 ld a2,32(sp) - c004b8d6: 481d li a6,7 - c004b8d8: 4781 li a5,0 - c004b8da: 00025697 auipc a3,0x25 - c004b8de: 3be68693 addi a3,a3,958 # c0070c98 - c004b8e2: 8522 mv a0,s0 - c004b8e4: f73a sd a4,424(sp) + c004ba9c: 65e2 ld a1,24(sp) + c004ba9e: 1af12c23 sw a5,440(sp) + c004baa2: 777a ld a4,440(sp) + c004baa4: 7602 ld a2,32(sp) + c004baa6: 481d li a6,7 + c004baa8: 4781 li a5,0 + c004baaa: 00025697 auipc a3,0x25 + c004baae: 44e68693 addi a3,a3,1102 # c0070ef8 + c004bab2: 8522 mv a0,s0 + c004bab4: f73a sd a4,424(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004b8e6: e7ba sd a4,456(sp) - c004b8e8: fb02 sd zero,432(sp) - c004b8ea: eb82 sd zero,464(sp) + c004bab6: e7ba sd a4,456(sp) + c004bab8: fb02 sd zero,432(sp) + c004baba: eb82 sd zero,464(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2547 - c004b8ec: e6ddd0ef jal ra,c0029758 + c004babc: e6ddd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2550 JS_DefinePropertyValueStr(ctx, obj, "mode", - c004b8f0: 1f012783 lw a5,496(sp) + c004bac0: 1f012783 lw a5,496(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b8f4: f702 sd zero,424(sp) + c004bac4: f702 sd zero,424(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2550 - c004b8f6: 65e2 ld a1,24(sp) - c004b8f8: 1af12423 sw a5,424(sp) - c004b8fc: 773a ld a4,424(sp) - c004b8fe: 7602 ld a2,32(sp) - c004b900: 481d li a6,7 - c004b902: 4781 li a5,0 - c004b904: 00013697 auipc a3,0x13 - c004b908: 72c68693 addi a3,a3,1836 # c005f030 - c004b90c: 8522 mv a0,s0 + c004bac6: 65e2 ld a1,24(sp) + c004bac8: 1af12423 sw a5,424(sp) + c004bacc: 773a ld a4,424(sp) + c004bace: 7602 ld a2,32(sp) + c004bad0: 481d li a6,7 + c004bad2: 4781 li a5,0 + c004bad4: 00013697 auipc a3,0x13 + c004bad8: 7bc68693 addi a3,a3,1980 # c005f290 + c004badc: 8522 mv a0,s0 JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 - c004b90e: fb02 sd zero,432(sp) + c004bade: fb02 sd zero,432(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2550 - c004b910: e49dd0ef jal ra,c0029758 + c004bae0: e49dd0ef jal ra,c0029928 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b914: 1f415783 lhu a5,500(sp) + c004bae4: 1f415783 lhu a5,500(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b918: e702 sd zero,392(sp) + c004bae8: e702 sd zero,392(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2553 JS_DefinePropertyValueStr(ctx, obj, "nlink", - c004b91a: 65e2 ld a1,24(sp) - c004b91c: 18f12423 sw a5,392(sp) - c004b920: 673a ld a4,392(sp) - c004b922: 7602 ld a2,32(sp) - c004b924: 4781 li a5,0 - c004b926: 00025697 auipc a3,0x25 - c004b92a: 37a68693 addi a3,a3,890 # c0070ca0 - c004b92e: 481d li a6,7 - c004b930: 8522 mv a0,s0 - c004b932: feba sd a4,376(sp) - c004b934: e302 sd zero,384(sp) - c004b936: e23dd0ef jal ra,c0029758 + c004baea: 65e2 ld a1,24(sp) + c004baec: 18f12423 sw a5,392(sp) + c004baf0: 673a ld a4,392(sp) + c004baf2: 7602 ld a2,32(sp) + c004baf4: 4781 li a5,0 + c004baf6: 00025697 auipc a3,0x25 + c004bafa: 40a68693 addi a3,a3,1034 # c0070f00 + c004bafe: 481d li a6,7 + c004bb00: 8522 mv a0,s0 + c004bb02: feba sd a4,376(sp) + c004bb04: e302 sd zero,384(sp) + c004bb06: e23dd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2557 JS_NewInt64(ctx, st.st_uid), - c004b93a: 1f812783 lw a5,504(sp) + c004bb0a: 1f812783 lw a5,504(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2556 JS_DefinePropertyValueStr(ctx, obj, "uid", - c004b93e: 02079693 slli a3,a5,0x20 - c004b942: 9281 srli a3,a3,0x20 + c004bb0e: 02079693 slli a3,a5,0x20 + c004bb12: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b944: 0007871b sext.w a4,a5 - c004b948: 20f69b63 bne a3,a5,c004bb5e + c004bb14: 0007871b sext.w a4,a5 + c004bb18: 20f69b63 bne a3,a5,c004bd2e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b94c: 16012e23 sw zero,380(sp) - c004b950: 16e12c23 sw a4,376(sp) - c004b954: 77f6 ld a5,376(sp) - c004b956: e302 sd zero,384(sp) - c004b958: fa82 sd zero,368(sp) - c004b95a: f6be sd a5,360(sp) - c004b95c: 4781 li a5,0 + c004bb1c: 16012e23 sw zero,380(sp) + c004bb20: 16e12c23 sw a4,376(sp) + c004bb24: 77f6 ld a5,376(sp) + c004bb26: e302 sd zero,384(sp) + c004bb28: fa82 sd zero,368(sp) + c004bb2a: f6be sd a5,360(sp) + c004bb2c: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004b95e: 16e12423 sw a4,360(sp) + c004bb2e: 16e12423 sw a4,360(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2556 - c004b962: 7736 ld a4,360(sp) - c004b964: 65e2 ld a1,24(sp) - c004b966: 7602 ld a2,32(sp) - c004b968: 00025697 auipc a3,0x25 - c004b96c: 23868693 addi a3,a3,568 # c0070ba0 - c004b970: 481d li a6,7 - c004b972: 8522 mv a0,s0 - c004b974: de5dd0ef jal ra,c0029758 + c004bb32: 7736 ld a4,360(sp) + c004bb34: 65e2 ld a1,24(sp) + c004bb36: 7602 ld a2,32(sp) + c004bb38: 00025697 auipc a3,0x25 + c004bb3c: 2c868693 addi a3,a3,712 # c0070e00 + c004bb40: 481d li a6,7 + c004bb42: 8522 mv a0,s0 + c004bb44: de5dd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2560 JS_NewInt64(ctx, st.st_gid), - c004b978: 1fc12783 lw a5,508(sp) + c004bb48: 1fc12783 lw a5,508(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2559 JS_DefinePropertyValueStr(ctx, obj, "gid", - c004b97c: 02079693 slli a3,a5,0x20 - c004b980: 9281 srli a3,a3,0x20 + c004bb4c: 02079693 slli a3,a5,0x20 + c004bb50: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b982: 0007871b sext.w a4,a5 - c004b986: 1ef69463 bne a3,a5,c004bb6e + c004bb52: 0007871b sext.w a4,a5 + c004bb56: 1ef69463 bne a3,a5,c004bd3e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b98a: 16012623 sw zero,364(sp) - c004b98e: 16e12423 sw a4,360(sp) - c004b992: 77b6 ld a5,360(sp) - c004b994: fa82 sd zero,368(sp) - c004b996: f282 sd zero,352(sp) - c004b998: eebe sd a5,344(sp) - c004b99a: 4781 li a5,0 + c004bb5a: 16012623 sw zero,364(sp) + c004bb5e: 16e12423 sw a4,360(sp) + c004bb62: 77b6 ld a5,360(sp) + c004bb64: fa82 sd zero,368(sp) + c004bb66: f282 sd zero,352(sp) + c004bb68: eebe sd a5,344(sp) + c004bb6a: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004b99c: 14e12c23 sw a4,344(sp) + c004bb6c: 14e12c23 sw a4,344(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2559 - c004b9a0: 6776 ld a4,344(sp) - c004b9a2: 65e2 ld a1,24(sp) - c004b9a4: 7602 ld a2,32(sp) - c004b9a6: 00025697 auipc a3,0x25 - c004b9aa: 20268693 addi a3,a3,514 # c0070ba8 - c004b9ae: 481d li a6,7 - c004b9b0: 8522 mv a0,s0 - c004b9b2: da7dd0ef jal ra,c0029758 + c004bb70: 6776 ld a4,344(sp) + c004bb72: 65e2 ld a1,24(sp) + c004bb74: 7602 ld a2,32(sp) + c004bb76: 00025697 auipc a3,0x25 + c004bb7a: 29268693 addi a3,a3,658 # c0070e08 + c004bb7e: 481d li a6,7 + c004bb80: 8522 mv a0,s0 + c004bb82: da7dd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2563 JS_NewInt64(ctx, st.st_rdev), - c004b9b6: 20012783 lw a5,512(sp) + c004bb86: 20012783 lw a5,512(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2562 JS_DefinePropertyValueStr(ctx, obj, "rdev", - c004b9ba: 02079693 slli a3,a5,0x20 - c004b9be: 9281 srli a3,a3,0x20 + c004bb8a: 02079693 slli a3,a5,0x20 + c004bb8e: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004b9c0: 0007871b sext.w a4,a5 - c004b9c4: 1af69d63 bne a3,a5,c004bb7e + c004bb90: 0007871b sext.w a4,a5 + c004bb94: 1af69d63 bne a3,a5,c004bd4e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b9c8: 14012e23 sw zero,348(sp) - c004b9cc: 14e12c23 sw a4,344(sp) - c004b9d0: 67f6 ld a5,344(sp) - c004b9d2: f282 sd zero,352(sp) - c004b9d4: ea82 sd zero,336(sp) - c004b9d6: e6be sd a5,328(sp) - c004b9d8: 4781 li a5,0 + c004bb98: 14012e23 sw zero,348(sp) + c004bb9c: 14e12c23 sw a4,344(sp) + c004bba0: 67f6 ld a5,344(sp) + c004bba2: f282 sd zero,352(sp) + c004bba4: ea82 sd zero,336(sp) + c004bba6: e6be sd a5,328(sp) + c004bba8: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004b9da: 14e12423 sw a4,328(sp) + c004bbaa: 14e12423 sw a4,328(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2562 - c004b9de: 6736 ld a4,328(sp) - c004b9e0: 65e2 ld a1,24(sp) - c004b9e2: 7602 ld a2,32(sp) - c004b9e4: 481d li a6,7 - c004b9e6: 00025697 auipc a3,0x25 - c004b9ea: 2c268693 addi a3,a3,706 # c0070ca8 - c004b9ee: 8522 mv a0,s0 - c004b9f0: d69dd0ef jal ra,c0029758 + c004bbae: 6736 ld a4,328(sp) + c004bbb0: 65e2 ld a1,24(sp) + c004bbb2: 7602 ld a2,32(sp) + c004bbb4: 481d li a6,7 + c004bbb6: 00025697 auipc a3,0x25 + c004bbba: 35268693 addi a3,a3,850 # c0070f08 + c004bbbe: 8522 mv a0,s0 + c004bbc0: d69dd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2566 JS_NewInt64(ctx, st.st_size), - c004b9f4: 20412783 lw a5,516(sp) + c004bbc4: 20412783 lw a5,516(sp) JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004b9f8: fe02 sd zero,312(sp) + c004bbc8: fe02 sd zero,312(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2565 JS_DefinePropertyValueStr(ctx, obj, "size", - c004b9fa: 65e2 ld a1,24(sp) - c004b9fc: 12f12c23 sw a5,312(sp) - c004ba00: 7772 ld a4,312(sp) - c004ba02: 7602 ld a2,32(sp) - c004ba04: 4781 li a5,0 - c004ba06: 0000d697 auipc a3,0xd - c004ba0a: eb268693 addi a3,a3,-334 # c00588b8 <__clz_tab+0x5b8> - c004ba0e: 481d li a6,7 - c004ba10: 8522 mv a0,s0 - c004ba12: f63a sd a4,296(sp) + c004bbca: 65e2 ld a1,24(sp) + c004bbcc: 12f12c23 sw a5,312(sp) + c004bbd0: 7772 ld a4,312(sp) + c004bbd2: 7602 ld a2,32(sp) + c004bbd4: 4781 li a5,0 + c004bbd6: 0000d697 auipc a3,0xd + c004bbda: eb268693 addi a3,a3,-334 # c0058a88 <__clz_tab+0x5b8> + c004bbde: 481d li a6,7 + c004bbe0: 8522 mv a0,s0 + c004bbe2: f63a sd a4,296(sp) JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004ba14: e6ba sd a4,328(sp) - c004ba16: fa02 sd zero,304(sp) - c004ba18: ea82 sd zero,336(sp) + c004bbe4: e6ba sd a4,328(sp) + c004bbe6: fa02 sd zero,304(sp) + c004bbe8: ea82 sd zero,336(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2565 - c004ba1a: d3fdd0ef jal ra,c0029758 + c004bbea: d3fdd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2570 JS_NewInt64(ctx, st.st_blocks), - c004ba1e: 23c12783 lw a5,572(sp) + c004bbee: 23c12783 lw a5,572(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2569 JS_DefinePropertyValueStr(ctx, obj, "blocks", - c004ba22: 02079693 slli a3,a5,0x20 - c004ba26: 9281 srli a3,a3,0x20 + c004bbf2: 02079693 slli a3,a5,0x20 + c004bbf6: 9281 srli a3,a3,0x20 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004ba28: 0007871b sext.w a4,a5 - c004ba2c: 16f69163 bne a3,a5,c004bb8e + c004bbf8: 0007871b sext.w a4,a5 + c004bbfc: 16f69163 bne a3,a5,c004bd5e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004ba30: 12012623 sw zero,300(sp) - c004ba34: 12e12423 sw a4,296(sp) - c004ba38: 77b2 ld a5,296(sp) - c004ba3a: fa02 sd zero,304(sp) - c004ba3c: f202 sd zero,288(sp) - c004ba3e: ee3e sd a5,280(sp) - c004ba40: 4781 li a5,0 + c004bc00: 12012623 sw zero,300(sp) + c004bc04: 12e12423 sw a4,296(sp) + c004bc08: 77b2 ld a5,296(sp) + c004bc0a: fa02 sd zero,304(sp) + c004bc0c: f202 sd zero,288(sp) + c004bc0e: ee3e sd a5,280(sp) + c004bc10: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004ba42: 10e12c23 sw a4,280(sp) + c004bc12: 10e12c23 sw a4,280(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2569 - c004ba46: 6772 ld a4,280(sp) - c004ba48: 65e2 ld a1,24(sp) - c004ba4a: 7602 ld a2,32(sp) - c004ba4c: 00025697 auipc a3,0x25 - c004ba50: 26468693 addi a3,a3,612 # c0070cb0 - c004ba54: 481d li a6,7 - c004ba56: 8522 mv a0,s0 - c004ba58: d01dd0ef jal ra,c0029758 + c004bc16: 6772 ld a4,280(sp) + c004bc18: 65e2 ld a1,24(sp) + c004bc1a: 7602 ld a2,32(sp) + c004bc1c: 00025697 auipc a3,0x25 + c004bc20: 2f468693 addi a3,a3,756 # c0070f10 + c004bc24: 481d li a6,7 + c004bc26: 8522 mv a0,s0 + c004bc28: d01dd0ef jal ra,c0029928 timespec_to_ms(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2511 return (int64_t)tv->tv_sec * 1000 + (tv->tv_nsec / 1000000); - c004ba5c: 20816783 lwu a5,520(sp) - c004ba60: 3e800713 li a4,1000 - c004ba64: 000f46b7 lui a3,0xf4 - c004ba68: 02e787b3 mul a5,a5,a4 - c004ba6c: 21013703 ld a4,528(sp) - c004ba70: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> - c004ba74: 02d74733 div a4,a4,a3 - c004ba78: 97ba add a5,a5,a4 + c004bc2c: 20816783 lwu a5,520(sp) + c004bc30: 3e800713 li a4,1000 + c004bc34: 000f46b7 lui a3,0xf4 + c004bc38: 02e787b3 mul a5,a5,a4 + c004bc3c: 21013703 ld a4,528(sp) + c004bc40: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> + c004bc44: 02d74733 div a4,a4,a3 + c004bc48: 97ba add a5,a5,a4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004ba7a: 0007871b sext.w a4,a5 - c004ba7e: 12f71063 bne a4,a5,c004bb9e + c004bc4a: 0007871b sext.w a4,a5 + c004bc4e: 12f71063 bne a4,a5,c004bd6e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004ba82: 10012e23 sw zero,284(sp) - c004ba86: 10e12c23 sw a4,280(sp) - c004ba8a: 67f2 ld a5,280(sp) - c004ba8c: f202 sd zero,288(sp) - c004ba8e: ea02 sd zero,272(sp) - c004ba90: e63e sd a5,264(sp) - c004ba92: 4781 li a5,0 + c004bc52: 10012e23 sw zero,284(sp) + c004bc56: 10e12c23 sw a4,280(sp) + c004bc5a: 67f2 ld a5,280(sp) + c004bc5c: f202 sd zero,288(sp) + c004bc5e: ea02 sd zero,272(sp) + c004bc60: e63e sd a5,264(sp) + c004bc62: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004ba94: 10e12423 sw a4,264(sp) + c004bc64: 10e12423 sw a4,264(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2594 JS_DefinePropertyValueStr(ctx, obj, "atime", - c004ba98: 6732 ld a4,264(sp) - c004ba9a: 65e2 ld a1,24(sp) - c004ba9c: 7602 ld a2,32(sp) - c004ba9e: 00025697 auipc a3,0x25 - c004baa2: 21a68693 addi a3,a3,538 # c0070cb8 - c004baa6: 481d li a6,7 - c004baa8: 8522 mv a0,s0 - c004baaa: cafdd0ef jal ra,c0029758 + c004bc68: 6732 ld a4,264(sp) + c004bc6a: 65e2 ld a1,24(sp) + c004bc6c: 7602 ld a2,32(sp) + c004bc6e: 00025697 auipc a3,0x25 + c004bc72: 2aa68693 addi a3,a3,682 # c0070f18 + c004bc76: 481d li a6,7 + c004bc78: 8522 mv a0,s0 + c004bc7a: cafdd0ef jal ra,c0029928 timespec_to_ms(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2511 return (int64_t)tv->tv_sec * 1000 + (tv->tv_nsec / 1000000); - c004baae: 21816783 lwu a5,536(sp) - c004bab2: 3e800713 li a4,1000 - c004bab6: 000f46b7 lui a3,0xf4 - c004baba: 02e787b3 mul a5,a5,a4 - c004babe: 22013703 ld a4,544(sp) - c004bac2: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> - c004bac6: 02d74733 div a4,a4,a3 - c004baca: 97ba add a5,a5,a4 + c004bc7e: 21816783 lwu a5,536(sp) + c004bc82: 3e800713 li a4,1000 + c004bc86: 000f46b7 lui a3,0xf4 + c004bc8a: 02e787b3 mul a5,a5,a4 + c004bc8e: 22013703 ld a4,544(sp) + c004bc92: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> + c004bc96: 02d74733 div a4,a4,a3 + c004bc9a: 97ba add a5,a5,a4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004bacc: 0007871b sext.w a4,a5 - c004bad0: 0cf71f63 bne a4,a5,c004bbae + c004bc9c: 0007871b sext.w a4,a5 + c004bca0: 0cf71f63 bne a4,a5,c004bd7e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004bad4: 10012623 sw zero,268(sp) - c004bad8: 10e12423 sw a4,264(sp) - c004badc: 67b2 ld a5,264(sp) - c004bade: ea02 sd zero,272(sp) - c004bae0: e202 sd zero,256(sp) - c004bae2: fdbe sd a5,248(sp) - c004bae4: 4781 li a5,0 + c004bca4: 10012623 sw zero,268(sp) + c004bca8: 10e12423 sw a4,264(sp) + c004bcac: 67b2 ld a5,264(sp) + c004bcae: ea02 sd zero,272(sp) + c004bcb0: e202 sd zero,256(sp) + c004bcb2: fdbe sd a5,248(sp) + c004bcb4: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004bae6: ddba sw a4,248(sp) + c004bcb6: ddba sw a4,248(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2597 JS_DefinePropertyValueStr(ctx, obj, "mtime", - c004bae8: 776e ld a4,248(sp) - c004baea: 65e2 ld a1,24(sp) - c004baec: 7602 ld a2,32(sp) - c004baee: 00025697 auipc a3,0x25 - c004baf2: 1d268693 addi a3,a3,466 # c0070cc0 - c004baf6: 481d li a6,7 - c004baf8: 8522 mv a0,s0 - c004bafa: c5fdd0ef jal ra,c0029758 + c004bcb8: 776e ld a4,248(sp) + c004bcba: 65e2 ld a1,24(sp) + c004bcbc: 7602 ld a2,32(sp) + c004bcbe: 00025697 auipc a3,0x25 + c004bcc2: 26268693 addi a3,a3,610 # c0070f20 + c004bcc6: 481d li a6,7 + c004bcc8: 8522 mv a0,s0 + c004bcca: c5fdd0ef jal ra,c0029928 timespec_to_ms(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2511 return (int64_t)tv->tv_sec * 1000 + (tv->tv_nsec / 1000000); - c004bafe: 22816783 lwu a5,552(sp) - c004bb02: 3e800713 li a4,1000 - c004bb06: 000f46b7 lui a3,0xf4 - c004bb0a: 02e787b3 mul a5,a5,a4 - c004bb0e: 23013703 ld a4,560(sp) - c004bb12: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> - c004bb16: 02d74733 div a4,a4,a3 - c004bb1a: 97ba add a5,a5,a4 + c004bcce: 22816783 lwu a5,552(sp) + c004bcd2: 3e800713 li a4,1000 + c004bcd6: 000f46b7 lui a3,0xf4 + c004bcda: 02e787b3 mul a5,a5,a4 + c004bcde: 23013703 ld a4,560(sp) + c004bce2: 24068693 addi a3,a3,576 # f4240 <__clzdi2-0xbff0bdc0> + c004bce6: 02d74733 div a4,a4,a3 + c004bcea: 97ba add a5,a5,a4 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:526 if (val == (int32_t)val) { - c004bb1c: 0007871b sext.w a4,a5 - c004bb20: 08f71f63 bne a4,a5,c004bbbe + c004bcec: 0007871b sext.w a4,a5 + c004bcf0: 08f71f63 bne a4,a5,c004bd8e JS_NewInt32(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:515 return JS_MKVAL(JS_TAG_INT, val); - c004bb24: df82 sw zero,252(sp) - c004bb26: ddba sw a4,248(sp) - c004bb28: 77ee ld a5,248(sp) - c004bb2a: e202 sd zero,256(sp) - c004bb2c: f5be sd a5,232(sp) - c004bb2e: 4781 li a5,0 + c004bcf4: df82 sw zero,252(sp) + c004bcf6: ddba sw a4,248(sp) + c004bcf8: 77ee ld a5,248(sp) + c004bcfa: e202 sd zero,256(sp) + c004bcfc: f5be sd a5,232(sp) + c004bcfe: 4781 li a5,0 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:531 return v; - c004bb30: d5ba sw a4,232(sp) + c004bd00: d5ba sw a4,232(sp) js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2600 JS_DefinePropertyValueStr(ctx, obj, "ctime", - c004bb32: 772e ld a4,232(sp) - c004bb34: 65e2 ld a1,24(sp) - c004bb36: 7602 ld a2,32(sp) - c004bb38: 00025697 auipc a3,0x25 - c004bb3c: 19068693 addi a3,a3,400 # c0070cc8 - c004bb40: 481d li a6,7 - c004bb42: 8522 mv a0,s0 - c004bb44: f9be sd a5,240(sp) - c004bb46: c13dd0ef jal ra,c0029758 + c004bd02: 772e ld a4,232(sp) + c004bd04: 65e2 ld a1,24(sp) + c004bd06: 7602 ld a2,32(sp) + c004bd08: 00025697 auipc a3,0x25 + c004bd0c: 22068693 addi a3,a3,544 # c0070f28 + c004bd10: 481d li a6,7 + c004bd12: 8522 mv a0,s0 + c004bd14: f9be sd a5,240(sp) + c004bd16: c13dd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2540 err = 0; - c004bb4a: 4681 li a3,0 - c004bb4c: bb09 j c004b85e + c004bd1a: 4681 li a3,0 + c004bd1c: bb09 j c004ba2e JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb4e: d226f7d3 fcvt.d.l fa5,a3 - c004bb52: 479d li a5,7 - c004bb54: e2078753 fmv.x.d a4,fa5 + c004bd1e: d226f7d3 fcvt.d.l fa5,a3 + c004bd22: 479d li a5,7 + c004bd24: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bb58: a7be fsd fa5,456(sp) - c004bb5a: 2701 sext.w a4,a4 - c004bb5c: bb81 j c004b8ac + c004bd28: a7be fsd fa5,456(sp) + c004bd2a: 2701 sext.w a4,a4 + c004bd2c: bb81 j c004ba7c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb5e: d226f7d3 fcvt.d.l fa5,a3 - c004bb62: 479d li a5,7 - c004bb64: e2078753 fmv.x.d a4,fa5 + c004bd2e: d226f7d3 fcvt.d.l fa5,a3 + c004bd32: 479d li a5,7 + c004bd34: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bb68: b6be fsd fa5,360(sp) - c004bb6a: 2701 sext.w a4,a4 - c004bb6c: bbcd j c004b95e + c004bd38: b6be fsd fa5,360(sp) + c004bd3a: 2701 sext.w a4,a4 + c004bd3c: bbcd j c004bb2e JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb6e: d226f7d3 fcvt.d.l fa5,a3 - c004bb72: 479d li a5,7 - c004bb74: e2078753 fmv.x.d a4,fa5 + c004bd3e: d226f7d3 fcvt.d.l fa5,a3 + c004bd42: 479d li a5,7 + c004bd44: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bb78: aebe fsd fa5,344(sp) - c004bb7a: 2701 sext.w a4,a4 - c004bb7c: b505 j c004b99c + c004bd48: aebe fsd fa5,344(sp) + c004bd4a: 2701 sext.w a4,a4 + c004bd4c: b505 j c004bb6c JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb7e: d226f7d3 fcvt.d.l fa5,a3 - c004bb82: 479d li a5,7 - c004bb84: e2078753 fmv.x.d a4,fa5 + c004bd4e: d226f7d3 fcvt.d.l fa5,a3 + c004bd52: 479d li a5,7 + c004bd54: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bb88: a6be fsd fa5,328(sp) - c004bb8a: 2701 sext.w a4,a4 - c004bb8c: b5b9 j c004b9da + c004bd58: a6be fsd fa5,328(sp) + c004bd5a: 2701 sext.w a4,a4 + c004bd5c: b5b9 j c004bbaa JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb8e: d226f7d3 fcvt.d.l fa5,a3 - c004bb92: 479d li a5,7 - c004bb94: e2078753 fmv.x.d a4,fa5 + c004bd5e: d226f7d3 fcvt.d.l fa5,a3 + c004bd62: 479d li a5,7 + c004bd64: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bb98: ae3e fsd fa5,280(sp) - c004bb9a: 2701 sext.w a4,a4 - c004bb9c: b55d j c004ba42 + c004bd68: ae3e fsd fa5,280(sp) + c004bd6a: 2701 sext.w a4,a4 + c004bd6c: b55d j c004bc12 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bb9e: d227f7d3 fcvt.d.l fa5,a5 - c004bba2: 479d li a5,7 - c004bba4: e2078753 fmv.x.d a4,fa5 + c004bd6e: d227f7d3 fcvt.d.l fa5,a5 + c004bd72: 479d li a5,7 + c004bd74: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bba8: a63e fsd fa5,264(sp) - c004bbaa: 2701 sext.w a4,a4 - c004bbac: b5e5 j c004ba94 + c004bd78: a63e fsd fa5,264(sp) + c004bd7a: 2701 sext.w a4,a4 + c004bd7c: b5e5 j c004bc64 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bbae: d227f7d3 fcvt.d.l fa5,a5 - c004bbb2: 479d li a5,7 - c004bbb4: e2078753 fmv.x.d a4,fa5 + c004bd7e: d227f7d3 fcvt.d.l fa5,a5 + c004bd82: 479d li a5,7 + c004bd84: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bbb8: bdbe fsd fa5,248(sp) - c004bbba: 2701 sext.w a4,a4 - c004bbbc: b72d j c004bae6 + c004bd88: bdbe fsd fa5,248(sp) + c004bd8a: 2701 sext.w a4,a4 + c004bd8c: b72d j c004bcb6 JS_NewInt64(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:529 v = __JS_NewFloat64(ctx, val); - c004bbbe: d227f7d3 fcvt.d.l fa5,a5 - c004bbc2: 479d li a5,7 - c004bbc4: e2078753 fmv.x.d a4,fa5 + c004bd8e: d227f7d3 fcvt.d.l fa5,a5 + c004bd92: 479d li a5,7 + c004bd94: e2078753 fmv.x.d a4,fa5 js_os_stat(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:230 return v; - c004bbc8: b5be fsd fa5,232(sp) - c004bbca: 2701 sext.w a4,a4 - c004bbcc: b795 j c004bb30 + c004bd98: b5be fsd fa5,232(sp) + c004bd9a: 2701 sext.w a4,a4 + c004bd9c: b795 j c004bd00 -00000000c004bbce : +00000000c004bd9e : js_print(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3767 { - c004bbce: 7159 addi sp,sp,-112 - c004bbd0: eca6 sd s1,88(sp) - c004bbd2: e8ca sd s2,80(sp) - c004bbd4: e4ce sd s3,72(sp) - c004bbd6: e0d2 sd s4,64(sp) - c004bbd8: f486 sd ra,104(sp) - c004bbda: f0a2 sd s0,96(sp) - c004bbdc: 892a mv s2,a0 - c004bbde: e82e sd a1,16(sp) - c004bbe0: ec32 sd a2,24(sp) - c004bbe2: 89b6 mv s3,a3 - c004bbe4: 8a3a mv s4,a4 + c004bd9e: 7159 addi sp,sp,-112 + c004bda0: eca6 sd s1,88(sp) + c004bda2: e8ca sd s2,80(sp) + c004bda4: e4ce sd s3,72(sp) + c004bda6: e0d2 sd s4,64(sp) + c004bda8: f486 sd ra,104(sp) + c004bdaa: f0a2 sd s0,96(sp) + c004bdac: 892a mv s2,a0 + c004bdae: e82e sd a1,16(sp) + c004bdb0: ec32 sd a2,24(sp) + c004bdb2: 89b6 mv s3,a3 + c004bdb4: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3772 for(i = 0; i < argc; i++) { - c004bbe6: 4481 li s1,0 + c004bdb6: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3772 (discriminator 1) - c004bbe8: 0004879b sext.w a5,s1 - c004bbec: 0137c863 blt a5,s3,c004bbfc + c004bdb8: 0004879b sext.w a5,s1 + c004bdbc: 0137c863 blt a5,s3,c004bdcc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3781 putchar('\n'); - c004bbf0: 4529 li a0,10 - c004bbf2: 6b6080ef jal ra,c00542a8 + c004bdc0: 4529 li a0,10 + c004bdc2: 6b6080ef jal ra,c0054478 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3782 return JS_UNDEFINED; - c004bbf6: 478d li a5,3 - c004bbf8: f802 sd zero,48(sp) - c004bbfa: a03d j c004bc28 + c004bdc6: 478d li a5,3 + c004bdc8: f802 sd zero,48(sp) + c004bdca: a03d j c004bdf8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3773 if (i != 0) - c004bbfc: c789 beqz a5,c004bc06 + c004bdcc: c789 beqz a5,c004bdd6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3774 putchar(' '); - c004bbfe: 02000513 li a0,32 - c004bc02: 6a6080ef jal ra,c00542a8 + c004bdce: 02000513 li a0,32 + c004bdd2: 6a6080ef jal ra,c0054478 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3775 str = JS_ToCStringLen(ctx, &len, argv[i]); - c004bc06: 00449793 slli a5,s1,0x4 - c004bc0a: 97d2 add a5,a5,s4 - c004bc0c: 6390 ld a2,0(a5) - c004bc0e: 6794 ld a3,8(a5) + c004bdd6: 00449793 slli a5,s1,0x4 + c004bdda: 97d2 add a5,a5,s4 + c004bddc: 6390 ld a2,0(a5) + c004bdde: 6794 ld a3,8(a5) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 return JS_ToCStringLen2(ctx, plen, val1, 0); - c004bc10: 4701 li a4,0 - c004bc12: 102c addi a1,sp,40 - c004bc14: 854a mv a0,s2 - c004bc16: f832 sd a2,48(sp) - c004bc18: fc36 sd a3,56(sp) - c004bc1a: a8ed00ef jal ra,c001bea8 - c004bc1e: 842a mv s0,a0 + c004bde0: 4701 li a4,0 + c004bde2: 102c addi a1,sp,40 + c004bde4: 854a mv a0,s2 + c004bde6: f832 sd a2,48(sp) + c004bde8: fc36 sd a3,56(sp) + c004bdea: a8ed00ef jal ra,c001c078 + c004bdee: 842a mv s0,a0 js_print(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3776 if (!str) - c004bc20: 0485 addi s1,s1,1 - c004bc22: ed11 bnez a0,c004bc3e + c004bdf0: 0485 addi s1,s1,1 + c004bdf2: ed11 bnez a0,c004be0e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3777 return JS_EXCEPTION; - c004bc24: f802 sd zero,48(sp) - c004bc26: 4799 li a5,6 + c004bdf4: f802 sd zero,48(sp) + c004bdf6: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3783 } - c004bc28: 70a6 ld ra,104(sp) - c004bc2a: 7406 ld s0,96(sp) + c004bdf8: 70a6 ld ra,104(sp) + c004bdfa: 7406 ld s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3782 return JS_UNDEFINED; - c004bc2c: fc3e sd a5,56(sp) + c004bdfc: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3783 } - c004bc2e: 7542 ld a0,48(sp) - c004bc30: 75e2 ld a1,56(sp) - c004bc32: 64e6 ld s1,88(sp) - c004bc34: 6946 ld s2,80(sp) - c004bc36: 69a6 ld s3,72(sp) - c004bc38: 6a06 ld s4,64(sp) - c004bc3a: 6165 addi sp,sp,112 - c004bc3c: 8082 ret + c004bdfe: 7542 ld a0,48(sp) + c004be00: 75e2 ld a1,56(sp) + c004be02: 64e6 ld s1,88(sp) + c004be04: 6946 ld s2,80(sp) + c004be06: 69a6 ld s3,72(sp) + c004be08: 6a06 ld s4,64(sp) + c004be0a: 6165 addi sp,sp,112 + c004be0c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3778 (discriminator 2) fwrite(str, 1, len, stdout); - c004bc3e: 7622 ld a2,40(sp) - c004bc40: 4505 li a0,1 - c004bc42: e432 sd a2,8(sp) - c004bc44: 3a5090ef jal ra,c00557e8 - c004bc48: 6622 ld a2,8(sp) - c004bc4a: 86aa mv a3,a0 - c004bc4c: 4585 li a1,1 - c004bc4e: 8522 mv a0,s0 - c004bc50: 77a090ef jal ra,c00553ca + c004be0e: 7622 ld a2,40(sp) + c004be10: 4505 li a0,1 + c004be12: e432 sd a2,8(sp) + c004be14: 3a5090ef jal ra,c00559b8 + c004be18: 6622 ld a2,8(sp) + c004be1a: 86aa mv a3,a0 + c004be1c: 4585 li a1,1 + c004be1e: 8522 mv a0,s0 + c004be20: 77a090ef jal ra,c005559a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3779 (discriminator 2) JS_FreeCString(ctx, str); - c004bc54: 85a2 mv a1,s0 - c004bc56: 854a mv a0,s2 - c004bc58: a28bd0ef jal ra,c0008e80 + c004be24: 85a2 mv a1,s0 + c004be26: 854a mv a0,s2 + c004be28: 946bd0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3772 (discriminator 2) for(i = 0; i < argc; i++) { - c004bc5c: b771 j c004bbe8 + c004be2c: b771 j c004bdb8 -00000000c004bc5e : +00000000c004be2e : js_evalScript(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:747 { - c004bc5e: 7119 addi sp,sp,-128 - c004bc60: fc86 sd ra,120(sp) - c004bc62: f8a2 sd s0,112(sp) - c004bc64: f4a6 sd s1,104(sp) - c004bc66: f0ca sd s2,96(sp) - c004bc68: ecce sd s3,88(sp) - c004bc6a: e02e sd a1,0(sp) - c004bc6c: e432 sd a2,8(sp) - c004bc6e: 89b6 mv s3,a3 - c004bc70: 893a mv s2,a4 - c004bc72: 842a mv s0,a0 + c004be2e: 7119 addi sp,sp,-128 + c004be30: fc86 sd ra,120(sp) + c004be32: f8a2 sd s0,112(sp) + c004be34: f4a6 sd s1,104(sp) + c004be36: f0ca sd s2,96(sp) + c004be38: ecce sd s3,88(sp) + c004be3a: e02e sd a1,0(sp) + c004be3c: e432 sd a2,8(sp) + c004be3e: 89b6 mv s3,a3 + c004be40: 893a mv s2,a4 + c004be42: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:748 JSRuntime *rt = JS_GetRuntime(ctx); - c004bc74: aaabb0ef jal ra,c0006f1e + c004be44: 9c8bb0ef jal ra,c000700c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:749 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004bc78: a0ebb0ef jal ra,c0006e86 + c004be48: 92cbb0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:758 if (argc >= 2) { - c004bc7c: 4785 li a5,1 + c004be4c: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:754 BOOL backtrace_barrier = FALSE; - c004bc7e: c802 sw zero,16(sp) + c004be4e: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:755 BOOL is_async = FALSE; - c004bc80: ca02 sw zero,20(sp) + c004be50: ca02 sw zero,20(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:749 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004bc82: 84aa mv s1,a0 + c004be52: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:758 if (argc >= 2) { - c004bc84: 0537d863 bge a5,s3,c004bcd4 + c004be54: 0537d863 bge a5,s3,c004bea4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:759 options_obj = argv[1]; - c004bc88: 01093603 ld a2,16(s2) - c004bc8c: 01893683 ld a3,24(s2) + c004be58: 01093603 ld a2,16(s2) + c004be5c: 01893683 ld a3,24(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:760 if (get_bool_option(ctx, &backtrace_barrier, options_obj, - c004bc90: 00025717 auipc a4,0x25 - c004bc94: 04070713 addi a4,a4,64 # c0070cd0 - c004bc98: 080c addi a1,sp,16 - c004bc9a: 8522 mv a0,s0 + c004be60: 00025717 auipc a4,0x25 + c004be64: 0d070713 addi a4,a4,208 # c0070f30 + c004be68: 080c addi a1,sp,16 + c004be6a: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:759 options_obj = argv[1]; - c004bc9c: f832 sd a2,48(sp) - c004bc9e: fc36 sd a3,56(sp) + c004be6c: f832 sd a2,48(sp) + c004be6e: fc36 sd a3,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:760 if (get_bool_option(ctx, &backtrace_barrier, options_obj, - c004bca0: fb1fc0ef jal ra,c0048c50 - c004bca4: cd09 beqz a0,c004bcbe + c004be70: fb1fc0ef jal ra,c0048e20 + c004be74: cd09 beqz a0,c004be8e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:762 return JS_EXCEPTION; - c004bca6: e082 sd zero,64(sp) - c004bca8: 4799 li a5,6 + c004be76: e082 sd zero,64(sp) + c004be78: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:792 } - c004bcaa: 70e6 ld ra,120(sp) - c004bcac: 7446 ld s0,112(sp) + c004be7a: 70e6 ld ra,120(sp) + c004be7c: 7446 ld s0,112(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:791 return ret; - c004bcae: e4be sd a5,72(sp) + c004be7e: e4be sd a5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:792 } - c004bcb0: 6506 ld a0,64(sp) - c004bcb2: 65a6 ld a1,72(sp) - c004bcb4: 74a6 ld s1,104(sp) - c004bcb6: 7906 ld s2,96(sp) - c004bcb8: 69e6 ld s3,88(sp) - c004bcba: 6109 addi sp,sp,128 - c004bcbc: 8082 ret + c004be80: 6506 ld a0,64(sp) + c004be82: 65a6 ld a1,72(sp) + c004be84: 74a6 ld s1,104(sp) + c004be86: 7906 ld s2,96(sp) + c004be88: 69e6 ld s3,88(sp) + c004be8a: 6109 addi sp,sp,128 + c004be8c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:763 if (get_bool_option(ctx, &is_async, options_obj, - c004bcbe: 7642 ld a2,48(sp) - c004bcc0: 76e2 ld a3,56(sp) - c004bcc2: 00025717 auipc a4,0x25 - c004bcc6: 02670713 addi a4,a4,38 # c0070ce8 - c004bcca: 084c addi a1,sp,20 - c004bccc: 8522 mv a0,s0 - c004bcce: f83fc0ef jal ra,c0048c50 - c004bcd2: f971 bnez a0,c004bca6 + c004be8e: 7642 ld a2,48(sp) + c004be90: 76e2 ld a3,56(sp) + c004be92: 00025717 auipc a4,0x25 + c004be96: 0b670713 addi a4,a4,182 # c0070f48 + c004be9a: 084c addi a1,sp,20 + c004be9c: 8522 mv a0,s0 + c004be9e: f83fc0ef jal ra,c0048e20 + c004bea2: f971 bnez a0,c004be76 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:768 str = JS_ToCStringLen(ctx, &len, argv[0]); - c004bcd4: 00093603 ld a2,0(s2) - c004bcd8: 00893683 ld a3,8(s2) + c004bea4: 00093603 ld a2,0(s2) + c004bea8: 00893683 ld a3,8(s2) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c004bcdc: 4701 li a4,0 - c004bcde: 082c addi a1,sp,24 - c004bce0: 8522 mv a0,s0 - c004bce2: e0b2 sd a2,64(sp) - c004bce4: e4b6 sd a3,72(sp) - c004bce6: 9c2d00ef jal ra,c001bea8 - c004bcea: 89aa mv s3,a0 + c004beac: 4701 li a4,0 + c004beae: 082c addi a1,sp,24 + c004beb0: 8522 mv a0,s0 + c004beb2: e0b2 sd a2,64(sp) + c004beb4: e4b6 sd a3,72(sp) + c004beb6: 9c2d00ef jal ra,c001c078 + c004beba: 89aa mv s3,a0 js_evalScript(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:769 if (!str) - c004bcec: dd4d beqz a0,c004bca6 + c004bebc: dd4d beqz a0,c004be76 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:771 if (!ts->recv_pipe && ++ts->eval_script_recurse == 1) { - c004bcee: 64bc ld a5,72(s1) - c004bcf0: e395 bnez a5,c004bd14 + c004bebe: 64bc ld a5,72(s1) + c004bec0: e395 bnez a5,c004bee4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:771 (discriminator 1) - c004bcf2: 40bc lw a5,64(s1) - c004bcf4: 0017871b addiw a4,a5,1 - c004bcf8: c0b8 sw a4,64(s1) - c004bcfa: 4785 li a5,1 - c004bcfc: 00f71c63 bne a4,a5,c004bd14 + c004bec2: 40bc lw a5,64(s1) + c004bec4: 0017871b addiw a4,a5,1 + c004bec8: c0b8 sw a4,64(s1) + c004beca: 4785 li a5,1 + c004becc: 00f71c63 bne a4,a5,c004bee4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:773 JS_SetInterruptHandler(JS_GetRuntime(ctx), interrupt_handler, NULL); - c004bd00: 8522 mv a0,s0 - c004bd02: a1cbb0ef jal ra,c0006f1e - c004bd06: 4601 li a2,0 - c004bd08: ffffc597 auipc a1,0xffffc - c004bd0c: 5c658593 addi a1,a1,1478 # c00482ce - c004bd10: 98abb0ef jal ra,c0006e9a + c004bed0: 8522 mv a0,s0 + c004bed2: 93abb0ef jal ra,c000700c + c004bed6: 4601 li a2,0 + c004bed8: ffffc597 auipc a1,0xffffc + c004bedc: 5c658593 addi a1,a1,1478 # c004849e + c004bee0: 8a8bb0ef jal ra,c0006f88 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:776 if (backtrace_barrier) - c004bd14: 4742 lw a4,16(sp) - c004bd16: c319 beqz a4,c004bd1c + c004bee4: 4742 lw a4,16(sp) + c004bee6: c319 beqz a4,c004beec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:777 flags |= JS_EVAL_FLAG_BACKTRACE_BARRIER; - c004bd18: 04000713 li a4,64 + c004bee8: 04000713 li a4,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:778 if (is_async) - c004bd1c: 47d2 lw a5,20(sp) - c004bd1e: c399 beqz a5,c004bd24 + c004beec: 47d2 lw a5,20(sp) + c004beee: c399 beqz a5,c004bef4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:779 flags |= JS_EVAL_FLAG_ASYNC; - c004bd20: 08076713 ori a4,a4,128 + c004bef0: 08076713 ori a4,a4,128 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:780 ret = JS_Eval(ctx, str, len, "", flags); - c004bd24: 6662 ld a2,24(sp) - c004bd26: 00025697 auipc a3,0x25 - c004bd2a: fca68693 addi a3,a3,-54 # c0070cf0 - c004bd2e: 85ce mv a1,s3 - c004bd30: 8522 mv a0,s0 - c004bd32: bbdc70ef jal ra,c00138ee - c004bd36: f02a sd a0,32(sp) - c004bd38: f42e sd a1,40(sp) - c004bd3a: 892e mv s2,a1 + c004bef4: 6662 ld a2,24(sp) + c004bef6: 00025697 auipc a3,0x25 + c004befa: 05a68693 addi a3,a3,90 # c0070f50 + c004befe: 85ce mv a1,s3 + c004bf00: 8522 mv a0,s0 + c004bf02: adbc70ef jal ra,c00139dc + c004bf06: f02a sd a0,32(sp) + c004bf08: f42e sd a1,40(sp) + c004bf0a: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:781 JS_FreeCString(ctx, str); - c004bd3c: 8522 mv a0,s0 - c004bd3e: 85ce mv a1,s3 - c004bd40: 940bd0ef jal ra,c0008e80 + c004bf0c: 8522 mv a0,s0 + c004bf0e: 85ce mv a1,s3 + c004bf10: 85ebd0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:782 if (!ts->recv_pipe && --ts->eval_script_recurse == 0) { - c004bd44: 64bc ld a5,72(s1) - c004bd46: eb9d bnez a5,c004bd7c + c004bf14: 64bc ld a5,72(s1) + c004bf16: eb9d bnez a5,c004bf4c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:782 (discriminator 1) - c004bd48: 40bc lw a5,64(s1) - c004bd4a: fff7871b addiw a4,a5,-1 - c004bd4e: c0b8 sw a4,64(s1) - c004bd50: e715 bnez a4,c004bd7c + c004bf18: 40bc lw a5,64(s1) + c004bf1a: fff7871b addiw a4,a5,-1 + c004bf1e: c0b8 sw a4,64(s1) + c004bf20: e715 bnez a4,c004bf4c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:784 JS_SetInterruptHandler(JS_GetRuntime(ctx), NULL, NULL); - c004bd52: 8522 mv a0,s0 - c004bd54: 9cabb0ef jal ra,c0006f1e - c004bd58: 4601 li a2,0 - c004bd5a: 4581 li a1,0 - c004bd5c: 93ebb0ef jal ra,c0006e9a + c004bf22: 8522 mv a0,s0 + c004bf24: 8e8bb0ef jal ra,c000700c + c004bf28: 4601 li a2,0 + c004bf2a: 4581 li a1,0 + c004bf2c: 85cbb0ef jal ra,c0006f88 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:785 os_pending_signals &= ~((uint64_t)1 << SIGINT); - c004bd60: 000b5717 auipc a4,0xb5 - c004bd64: 3a870713 addi a4,a4,936 # c0101108 - c004bd68: 631c ld a5,0(a4) + c004bf30: 000b5717 auipc a4,0xb5 + c004bf34: 1d870713 addi a4,a4,472 # c0101108 + c004bf38: 631c ld a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:788 if (JS_IsException(ret)) - c004bd6a: 2901 sext.w s2,s2 + c004bf3a: 2901 sext.w s2,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:785 os_pending_signals &= ~((uint64_t)1 << SIGINT); - c004bd6c: 9bed andi a5,a5,-5 - c004bd6e: e31c sd a5,0(a4) + c004bf3c: 9bed andi a5,a5,-5 + c004bf3e: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:788 if (JS_IsException(ret)) - c004bd70: 4799 li a5,6 - c004bd72: 00f91563 bne s2,a5,c004bd7c + c004bf40: 4799 li a5,6 + c004bf42: 00f91563 bne s2,a5,c004bf4c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:789 JS_ResetUncatchableError(ctx); - c004bd76: 8522 mv a0,s0 - c004bd78: b1fbe0ef jal ra,c000a896 + c004bf46: 8522 mv a0,s0 + c004bf48: a3dbe0ef jal ra,c000a984 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:791 return ret; - c004bd7c: 7782 ld a5,32(sp) - c004bd7e: e0be sd a5,64(sp) - c004bd80: 77a2 ld a5,40(sp) - c004bd82: b725 j c004bcaa + c004bf4c: 7782 ld a5,32(sp) + c004bf4e: e0be sd a5,64(sp) + c004bf50: 77a2 ld a5,40(sp) + c004bf52: b725 j c004be7a -00000000c004bd84 : +00000000c004bf54 : js_std_parseExtJSON(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:834 { - c004bd84: 711d addi sp,sp,-96 - c004bd86: e4a6 sd s1,72(sp) - c004bd88: ec86 sd ra,88(sp) - c004bd8a: e8a2 sd s0,80(sp) - c004bd8c: 6310 ld a2,0(a4) - c004bd8e: 6714 ld a3,8(a4) + c004bf54: 711d addi sp,sp,-96 + c004bf56: e4a6 sd s1,72(sp) + c004bf58: ec86 sd ra,88(sp) + c004bf5a: e8a2 sd s0,80(sp) + c004bf5c: 6310 ld a2,0(a4) + c004bf5e: 6714 ld a3,8(a4) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c004bd90: 082c addi a1,sp,24 - c004bd92: 4701 li a4,0 + c004bf60: 082c addi a1,sp,24 + c004bf62: 4701 li a4,0 js_std_parseExtJSON(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:834 - c004bd94: 84aa mv s1,a0 - c004bd96: f832 sd a2,48(sp) - c004bd98: fc36 sd a3,56(sp) + c004bf64: 84aa mv s1,a0 + c004bf66: f832 sd a2,48(sp) + c004bf68: fc36 sd a3,56(sp) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c004bd9a: 90ed00ef jal ra,c001bea8 + c004bf6a: 90ed00ef jal ra,c001c078 js_std_parseExtJSON(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:840 if (!str) - c004bd9e: e919 bnez a0,c004bdb4 + c004bf6e: e919 bnez a0,c004bf84 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:841 return JS_EXCEPTION; - c004bda0: f802 sd zero,48(sp) - c004bda2: 4799 li a5,6 + c004bf70: f802 sd zero,48(sp) + c004bf72: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:845 } - c004bda4: 60e6 ld ra,88(sp) - c004bda6: 6446 ld s0,80(sp) + c004bf74: 60e6 ld ra,88(sp) + c004bf76: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:844 return obj; - c004bda8: fc3e sd a5,56(sp) + c004bf78: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:845 } - c004bdaa: 7542 ld a0,48(sp) - c004bdac: 75e2 ld a1,56(sp) - c004bdae: 64a6 ld s1,72(sp) - c004bdb0: 6125 addi sp,sp,96 - c004bdb2: 8082 ret + c004bf7a: 7542 ld a0,48(sp) + c004bf7c: 75e2 ld a1,56(sp) + c004bf7e: 64a6 ld s1,72(sp) + c004bf80: 6125 addi sp,sp,96 + c004bf82: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:842 obj = JS_ParseJSON2(ctx, str, len, "", JS_PARSE_JSON_EXT); - c004bdb4: 6662 ld a2,24(sp) - c004bdb6: 842a mv s0,a0 - c004bdb8: 4705 li a4,1 - c004bdba: 0000d697 auipc a3,0xd - c004bdbe: c0668693 addi a3,a3,-1018 # c00589c0 <__clz_tab+0x6c0> - c004bdc2: 85aa mv a1,a0 - c004bdc4: 8526 mv a0,s1 - c004bdc6: fb9dd0ef jal ra,c0029d7e - c004bdca: f02a sd a0,32(sp) - c004bdcc: f42e sd a1,40(sp) + c004bf84: 6662 ld a2,24(sp) + c004bf86: 842a mv s0,a0 + c004bf88: 4705 li a4,1 + c004bf8a: 0000d697 auipc a3,0xd + c004bf8e: c0668693 addi a3,a3,-1018 # c0058b90 <__clz_tab+0x6c0> + c004bf92: 85aa mv a1,a0 + c004bf94: 8526 mv a0,s1 + c004bf96: fb9dd0ef jal ra,c0029f4e + c004bf9a: f02a sd a0,32(sp) + c004bf9c: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:843 JS_FreeCString(ctx, str); - c004bdce: 8526 mv a0,s1 - c004bdd0: 85a2 mv a1,s0 - c004bdd2: 8aebd0ef jal ra,c0008e80 + c004bf9e: 8526 mv a0,s1 + c004bfa0: 85a2 mv a1,s0 + c004bfa2: fcdbc0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:844 return obj; - c004bdd6: 7782 ld a5,32(sp) - c004bdd8: f83e sd a5,48(sp) - c004bdda: 77a2 ld a5,40(sp) - c004bddc: b7e1 j c004bda4 + c004bfa6: 7782 ld a5,32(sp) + c004bfa8: f83e sd a5,48(sp) + c004bfaa: 77a2 ld a5,40(sp) + c004bfac: b7e1 j c004bf74 -00000000c004bdde : +00000000c004bfae : js_std_file_puts(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1018 { - c004bdde: 7159 addi sp,sp,-112 - c004bde0: e8ca sd s2,80(sp) - c004bde2: e0d2 sd s4,64(sp) - c004bde4: fc56 sd s5,56(sp) - c004bde6: f486 sd ra,104(sp) - c004bde8: f0a2 sd s0,96(sp) - c004bdea: eca6 sd s1,88(sp) - c004bdec: e4ce sd s3,72(sp) - c004bdee: e02e sd a1,0(sp) - c004bdf0: e432 sd a2,8(sp) - c004bdf2: 892a mv s2,a0 - c004bdf4: 8a36 mv s4,a3 - c004bdf6: 8aba mv s5,a4 + c004bfae: 7159 addi sp,sp,-112 + c004bfb0: e8ca sd s2,80(sp) + c004bfb2: e0d2 sd s4,64(sp) + c004bfb4: fc56 sd s5,56(sp) + c004bfb6: f486 sd ra,104(sp) + c004bfb8: f0a2 sd s0,96(sp) + c004bfba: eca6 sd s1,88(sp) + c004bfbc: e4ce sd s3,72(sp) + c004bfbe: e02e sd a1,0(sp) + c004bfc0: e432 sd a2,8(sp) + c004bfc2: 892a mv s2,a0 + c004bfc4: 8a36 mv s4,a3 + c004bfc6: 8aba mv s5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1024 if (magic == 0) { - c004bdf8: ef89 bnez a5,c004be12 + c004bfc8: ef89 bnez a5,c004bfe2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1025 f = stdout; - c004bdfa: 4505 li a0,1 - c004bdfc: 1ed090ef jal ra,c00557e8 - c004be00: 842a mv s0,a0 + c004bfca: 4505 li a0,1 + c004bfcc: 1ed090ef jal ra,c00559b8 + c004bfd0: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1032 for(i = 0; i < argc; i++) { - c004be02: 4481 li s1,0 + c004bfd2: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1032 (discriminator 1) - c004be04: 0004879b sext.w a5,s1 - c004be08: 0347c763 blt a5,s4,c004be36 + c004bfd4: 0004879b sext.w a5,s1 + c004bfd8: 0347c763 blt a5,s4,c004c006 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1039 return JS_UNDEFINED; - c004be0c: f002 sd zero,32(sp) - c004be0e: 478d li a5,3 - c004be10: a039 j c004be1e + c004bfdc: f002 sd zero,32(sp) + c004bfde: 478d li a5,3 + c004bfe0: a039 j c004bfee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1027 f = js_std_file_get(ctx, this_val); - c004be12: 97ffc0ef jal ra,c0048790 - c004be16: 842a mv s0,a0 + c004bfe2: 97ffc0ef jal ra,c0048960 + c004bfe6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1028 if (!f) - c004be18: f56d bnez a0,c004be02 + c004bfe8: f56d bnez a0,c004bfd2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1029 return JS_EXCEPTION; - c004be1a: f002 sd zero,32(sp) - c004be1c: 4799 li a5,6 + c004bfea: f002 sd zero,32(sp) + c004bfec: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1040 } - c004be1e: 70a6 ld ra,104(sp) - c004be20: 7406 ld s0,96(sp) + c004bfee: 70a6 ld ra,104(sp) + c004bff0: 7406 ld s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1039 return JS_UNDEFINED; - c004be22: f43e sd a5,40(sp) + c004bff2: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1040 } - c004be24: 7502 ld a0,32(sp) - c004be26: 75a2 ld a1,40(sp) - c004be28: 64e6 ld s1,88(sp) - c004be2a: 6946 ld s2,80(sp) - c004be2c: 69a6 ld s3,72(sp) - c004be2e: 6a06 ld s4,64(sp) - c004be30: 7ae2 ld s5,56(sp) - c004be32: 6165 addi sp,sp,112 - c004be34: 8082 ret + c004bff4: 7502 ld a0,32(sp) + c004bff6: 75a2 ld a1,40(sp) + c004bff8: 64e6 ld s1,88(sp) + c004bffa: 6946 ld s2,80(sp) + c004bffc: 69a6 ld s3,72(sp) + c004bffe: 6a06 ld s4,64(sp) + c004c000: 7ae2 ld s5,56(sp) + c004c002: 6165 addi sp,sp,112 + c004c004: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1033 str = JS_ToCStringLen(ctx, &len, argv[i]); - c004be36: 00449793 slli a5,s1,0x4 - c004be3a: 97d6 add a5,a5,s5 - c004be3c: 6390 ld a2,0(a5) - c004be3e: 6794 ld a3,8(a5) + c004c006: 00449793 slli a5,s1,0x4 + c004c00a: 97d6 add a5,a5,s5 + c004c00c: 6390 ld a2,0(a5) + c004c00e: 6794 ld a3,8(a5) JS_ToCStringLen(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:706 - c004be40: 4701 li a4,0 - c004be42: 082c addi a1,sp,24 - c004be44: 854a mv a0,s2 - c004be46: f032 sd a2,32(sp) - c004be48: f436 sd a3,40(sp) - c004be4a: 85ed00ef jal ra,c001bea8 - c004be4e: 89aa mv s3,a0 + c004c010: 4701 li a4,0 + c004c012: 082c addi a1,sp,24 + c004c014: 854a mv a0,s2 + c004c016: f032 sd a2,32(sp) + c004c018: f436 sd a3,40(sp) + c004c01a: 85ed00ef jal ra,c001c078 + c004c01e: 89aa mv s3,a0 js_std_file_puts(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1034 if (!str) - c004be50: 0485 addi s1,s1,1 - c004be52: d561 beqz a0,c004be1a + c004c020: 0485 addi s1,s1,1 + c004c022: d561 beqz a0,c004bfea /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1036 (discriminator 2) fwrite(str, 1, len, f); - c004be54: 6662 ld a2,24(sp) - c004be56: 86a2 mv a3,s0 - c004be58: 4585 li a1,1 - c004be5a: 570090ef jal ra,c00553ca + c004c024: 6662 ld a2,24(sp) + c004c026: 86a2 mv a3,s0 + c004c028: 4585 li a1,1 + c004c02a: 570090ef jal ra,c005559a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1037 (discriminator 2) JS_FreeCString(ctx, str); - c004be5e: 85ce mv a1,s3 - c004be60: 854a mv a0,s2 - c004be62: 81ebd0ef jal ra,c0008e80 + c004c02e: 85ce mv a1,s3 + c004c030: 854a mv a0,s2 + c004c032: f3dbc0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1032 (discriminator 2) for(i = 0; i < argc; i++) { - c004be66: bf79 j c004be04 + c004c036: bf79 j c004bfd4 -00000000c004be68 : +00000000c004c038 : js_load_file(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:363 { - c004be68: 7179 addi sp,sp,-48 - c004be6a: e44e sd s3,8(sp) - c004be6c: e052 sd s4,0(sp) - c004be6e: 89aa mv s3,a0 - c004be70: 8a2e mv s4,a1 + c004c038: 7179 addi sp,sp,-48 + c004c03a: e44e sd s3,8(sp) + c004c03c: e052 sd s4,0(sp) + c004c03e: 89aa mv s3,a0 + c004c040: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:369 f = fopen(filename, "rb"); - c004be72: 8532 mv a0,a2 - c004be74: 00025597 auipc a1,0x25 - c004be78: e8c58593 addi a1,a1,-372 # c0070d00 + c004c042: 8532 mv a0,a2 + c004c044: 00025597 auipc a1,0x25 + c004c048: f1c58593 addi a1,a1,-228 # c0070f60 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:363 { - c004be7c: f022 sd s0,32(sp) - c004be7e: f406 sd ra,40(sp) - c004be80: ec26 sd s1,24(sp) - c004be82: e84a sd s2,16(sp) + c004c04c: f022 sd s0,32(sp) + c004c04e: f406 sd ra,40(sp) + c004c050: ec26 sd s1,24(sp) + c004c052: e84a sd s2,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:369 f = fopen(filename, "rb"); - c004be84: 21c090ef jal ra,c00550a0 - c004be88: 842a mv s0,a0 + c004c054: 21c090ef jal ra,c0055270 + c004c058: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:370 if (!f) - c004be8a: c90d beqz a0,c004bebc + c004c05a: c90d beqz a0,c004c08c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:372 if (fseek(f, 0, SEEK_END) < 0) - c004be8c: 4609 li a2,2 - c004be8e: 4581 li a1,0 - c004be90: 44a090ef jal ra,c00552da - c004be94: 02054063 bltz a0,c004beb4 + c004c05c: 4609 li a2,2 + c004c05e: 4581 li a1,0 + c004c060: 44a090ef jal ra,c00554aa + c004c064: 02054063 bltz a0,c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:374 lret = ftell(f); - c004be98: 8522 mv a0,s0 - c004be9a: 480090ef jal ra,c005531a - c004be9e: 892a mv s2,a0 + c004c068: 8522 mv a0,s0 + c004c06a: 480090ef jal ra,c00554ea + c004c06e: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:375 if (lret < 0) - c004bea0: 00054a63 bltz a0,c004beb4 + c004c070: 00054a63 bltz a0,c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:378 if (lret == LONG_MAX) { - c004bea4: 57fd li a5,-1 - c004bea6: 8385 srli a5,a5,0x1 - c004bea8: 02f51363 bne a0,a5,c004bece + c004c074: 57fd li a5,-1 + c004c076: 8385 srli a5,a5,0x1 + c004c078: 02f51363 bne a0,a5,c004c09e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:379 errno = EISDIR; - c004beac: 429070ef jal ra,c0053ad4 <__errno> - c004beb0: 47d5 li a5,21 - c004beb2: c11c sw a5,0(a0) + c004c07c: 429070ef jal ra,c0053ca4 <__errno> + c004c080: 47d5 li a5,21 + c004c082: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:398 fclose(f); - c004beb4: 8522 mv a0,s0 - c004beb6: 232090ef jal ra,c00550e8 + c004c084: 8522 mv a0,s0 + c004c086: 232090ef jal ra,c00552b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:399 return NULL; - c004beba: 4401 li s0,0 + c004c08a: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:405 } - c004bebc: 70a2 ld ra,40(sp) - c004bebe: 8522 mv a0,s0 - c004bec0: 7402 ld s0,32(sp) - c004bec2: 64e2 ld s1,24(sp) - c004bec4: 6942 ld s2,16(sp) - c004bec6: 69a2 ld s3,8(sp) - c004bec8: 6a02 ld s4,0(sp) - c004beca: 6145 addi sp,sp,48 - c004becc: 8082 ret + c004c08c: 70a2 ld ra,40(sp) + c004c08e: 8522 mv a0,s0 + c004c090: 7402 ld s0,32(sp) + c004c092: 64e2 ld s1,24(sp) + c004c094: 6942 ld s2,16(sp) + c004c096: 69a2 ld s3,8(sp) + c004c098: 6a02 ld s4,0(sp) + c004c09a: 6145 addi sp,sp,48 + c004c09c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:383 if (fseek(f, 0, SEEK_SET) < 0) - c004bece: 4601 li a2,0 - c004bed0: 4581 li a1,0 - c004bed2: 8522 mv a0,s0 - c004bed4: 406090ef jal ra,c00552da - c004bed8: fc054ee3 bltz a0,c004beb4 + c004c09e: 4601 li a2,0 + c004c0a0: 4581 li a1,0 + c004c0a2: 8522 mv a0,s0 + c004c0a4: 406090ef jal ra,c00554aa + c004c0a8: fc054ee3 bltz a0,c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:386 buf = js_malloc(ctx, buf_len + 1); - c004bedc: 00190593 addi a1,s2,1 + c004c0ac: 00190593 addi a1,s2,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:385 if (ctx) - c004bee0: 02098963 beqz s3,c004bf12 + c004c0b0: 02098963 beqz s3,c004c0e2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:386 buf = js_malloc(ctx, buf_len + 1); - c004bee4: 854e mv a0,s3 - c004bee6: d67c80ef jal ra,c0014c4c + c004c0b4: 854e mv a0,s3 + c004c0b6: c85c80ef jal ra,c0014d3a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:388 buf = malloc(buf_len + 1); - c004beea: 84aa mv s1,a0 + c004c0ba: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:389 if (!buf) - c004beec: d561 beqz a0,c004beb4 + c004c0bc: d561 beqz a0,c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:391 if (fread(buf, 1, buf_len, f) != buf_len) { - c004beee: 86a2 mv a3,s0 - c004bef0: 864a mv a2,s2 - c004bef2: 4585 li a1,1 - c004bef4: 2ea090ef jal ra,c00551de - c004bef8: 03250563 beq a0,s2,c004bf22 + c004c0be: 86a2 mv a3,s0 + c004c0c0: 864a mv a2,s2 + c004c0c2: 4585 li a1,1 + c004c0c4: 2ea090ef jal ra,c00553ae + c004c0c8: 03250563 beq a0,s2,c004c0f2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:392 errno = EIO; - c004befc: 3d9070ef jal ra,c0053ad4 <__errno> - c004bf00: 4795 li a5,5 - c004bf02: c11c sw a5,0(a0) + c004c0cc: 3d9070ef jal ra,c0053ca4 <__errno> + c004c0d0: 4795 li a5,5 + c004c0d2: c11c sw a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:393 if (ctx) - c004bf04: 00098b63 beqz s3,c004bf1a + c004c0d4: 00098b63 beqz s3,c004c0ea /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:394 js_free(ctx, buf); - c004bf08: 85a6 mv a1,s1 - c004bf0a: 854e mv a0,s3 - c004bf0c: f2fba0ef jal ra,c0006e3a - c004bf10: b755 j c004beb4 + c004c0d8: 85a6 mv a1,s1 + c004c0da: 854e mv a0,s3 + c004c0dc: e4dba0ef jal ra,c0006f28 + c004c0e0: b755 j c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:388 buf = malloc(buf_len + 1); - c004bf12: 852e mv a0,a1 - c004bf14: 6f1060ef jal ra,c0052e04 - c004bf18: bfc9 j c004beea + c004c0e2: 852e mv a0,a1 + c004c0e4: 6f1060ef jal ra,c0052fd4 + c004c0e8: bfc9 j c004c0ba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:396 free(buf); - c004bf1a: 8526 mv a0,s1 - c004bf1c: 6dd060ef jal ra,c0052df8 - c004bf20: bf51 j c004beb4 + c004c0ea: 8526 mv a0,s1 + c004c0ec: 6dd060ef jal ra,c0052fc8 + c004c0f0: bf51 j c004c084 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:401 buf[buf_len] = '\0'; - c004bf22: 012487b3 add a5,s1,s2 + c004c0f2: 012487b3 add a5,s1,s2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:402 fclose(f); - c004bf26: 8522 mv a0,s0 + c004c0f6: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:401 buf[buf_len] = '\0'; - c004bf28: 00078023 sb zero,0(a5) + c004c0f8: 00078023 sb zero,0(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:402 fclose(f); - c004bf2c: 1bc090ef jal ra,c00550e8 + c004c0fc: 1bc090ef jal ra,c00552b8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:404 return buf; - c004bf30: 8426 mv s0,s1 + c004c100: 8426 mv s0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:403 *pbuf_len = buf_len; - c004bf32: 012a3023 sd s2,0(s4) + c004c102: 012a3023 sd s2,0(s4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:404 return buf; - c004bf36: b759 j c004bebc + c004c106: b759 j c004c08c -00000000c004bf38 : +00000000c004c108 : js_std_loadFile(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:441 filename = JS_ToCString(ctx, argv[0]); - c004bf38: 630c ld a1,0(a4) - c004bf3a: 6710 ld a2,8(a4) + c004c108: 630c ld a1,0(a4) + c004c10a: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:435 { - c004bf3c: 711d addi sp,sp,-96 - c004bf3e: e8a2 sd s0,80(sp) - c004bf40: ec86 sd ra,88(sp) - c004bf42: e4a6 sd s1,72(sp) - c004bf44: e0ca sd s2,64(sp) - c004bf46: 842a mv s0,a0 + c004c10c: 711d addi sp,sp,-96 + c004c10e: e8a2 sd s0,80(sp) + c004c110: ec86 sd ra,88(sp) + c004c112: e4a6 sd s1,72(sp) + c004c114: e0ca sd s2,64(sp) + c004c116: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:441 filename = JS_ToCString(ctx, argv[0]); - c004bf48: c0cfc0ef jal ra,c0048354 + c004c118: c0cfc0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:442 if (!filename) - c004bf4c: ed01 bnez a0,c004bf64 + c004c11c: ed01 bnez a0,c004c134 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:443 return JS_EXCEPTION; - c004bf4e: f802 sd zero,48(sp) - c004bf50: 4799 li a5,6 + c004c11e: f802 sd zero,48(sp) + c004c120: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:451 } - c004bf52: 60e6 ld ra,88(sp) - c004bf54: 6446 ld s0,80(sp) + c004c122: 60e6 ld ra,88(sp) + c004c124: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:450 return ret; - c004bf56: fc3e sd a5,56(sp) + c004c126: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:451 } - c004bf58: 7542 ld a0,48(sp) - c004bf5a: 75e2 ld a1,56(sp) - c004bf5c: 64a6 ld s1,72(sp) - c004bf5e: 6906 ld s2,64(sp) - c004bf60: 6125 addi sp,sp,96 - c004bf62: 8082 ret - c004bf64: 892a mv s2,a0 + c004c128: 7542 ld a0,48(sp) + c004c12a: 75e2 ld a1,56(sp) + c004c12c: 64a6 ld s1,72(sp) + c004c12e: 6906 ld s2,64(sp) + c004c130: 6125 addi sp,sp,96 + c004c132: 8082 ret + c004c134: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:444 buf = js_load_file(ctx, &buf_len, filename); - c004bf66: 862a mv a2,a0 - c004bf68: 082c addi a1,sp,24 - c004bf6a: 8522 mv a0,s0 - c004bf6c: efdff0ef jal ra,c004be68 - c004bf70: 84aa mv s1,a0 + c004c136: 862a mv a2,a0 + c004c138: 082c addi a1,sp,24 + c004c13a: 8522 mv a0,s0 + c004c13c: efdff0ef jal ra,c004c038 + c004c140: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:445 JS_FreeCString(ctx, filename); - c004bf72: 85ca mv a1,s2 - c004bf74: 8522 mv a0,s0 - c004bf76: f0bbc0ef jal ra,c0008e80 + c004c142: 85ca mv a1,s2 + c004c144: 8522 mv a0,s0 + c004c146: e29bc0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:446 if (!buf) - c004bf7a: e481 bnez s1,c004bf82 + c004c14a: e481 bnez s1,c004c152 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:447 return JS_NULL; - c004bf7c: f802 sd zero,48(sp) - c004bf7e: 4789 li a5,2 - c004bf80: bfc9 j c004bf52 + c004c14c: f802 sd zero,48(sp) + c004c14e: 4789 li a5,2 + c004c150: bfc9 j c004c122 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:448 ret = JS_NewStringLen(ctx, (char *)buf, buf_len); - c004bf82: 6662 ld a2,24(sp) - c004bf84: 85a6 mv a1,s1 - c004bf86: 8522 mv a0,s0 - c004bf88: b08cd0ef jal ra,c0019290 - c004bf8c: f02a sd a0,32(sp) - c004bf8e: f42e sd a1,40(sp) + c004c152: 6662 ld a2,24(sp) + c004c154: 85a6 mv a1,s1 + c004c156: 8522 mv a0,s0 + c004c158: b08cd0ef jal ra,c0019460 + c004c15c: f02a sd a0,32(sp) + c004c15e: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:449 js_free(ctx, buf); - c004bf90: 8522 mv a0,s0 - c004bf92: 85a6 mv a1,s1 - c004bf94: ea7ba0ef jal ra,c0006e3a + c004c160: 8522 mv a0,s0 + c004c162: 85a6 mv a1,s1 + c004c164: dc5ba0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:450 return ret; - c004bf98: 7782 ld a5,32(sp) - c004bf9a: f83e sd a5,48(sp) - c004bf9c: 77a2 ld a5,40(sp) - c004bf9e: bf55 j c004bf52 + c004c168: 7782 ld a5,32(sp) + c004c16a: f83e sd a5,48(sp) + c004c16c: 77a2 ld a5,40(sp) + c004c16e: bf55 j c004c122 -00000000c004bfa0 : +00000000c004c170 : js_loadScript(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:410 { - c004bfa0: 711d addi sp,sp,-96 - c004bfa2: e8a2 sd s0,80(sp) - c004bfa4: ec86 sd ra,88(sp) - c004bfa6: e4a6 sd s1,72(sp) - c004bfa8: e0ca sd s2,64(sp) + c004c170: 711d addi sp,sp,-96 + c004c172: e8a2 sd s0,80(sp) + c004c174: ec86 sd ra,88(sp) + c004c176: e4a6 sd s1,72(sp) + c004c178: e0ca sd s2,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:416 filename = JS_ToCString(ctx, argv[0]); - c004bfaa: 630c ld a1,0(a4) - c004bfac: 6710 ld a2,8(a4) + c004c17a: 630c ld a1,0(a4) + c004c17c: 6710 ld a2,8(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:410 { - c004bfae: 842a mv s0,a0 + c004c17e: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:416 filename = JS_ToCString(ctx, argv[0]); - c004bfb0: ba4fc0ef jal ra,c0048354 + c004c180: ba4fc0ef jal ra,c0048524 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:417 if (!filename) - c004bfb4: ed01 bnez a0,c004bfcc + c004c184: ed01 bnez a0,c004c19c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:423 return JS_EXCEPTION; - c004bfb6: f802 sd zero,48(sp) - c004bfb8: 4799 li a5,6 + c004c186: f802 sd zero,48(sp) + c004c188: 4799 li a5,6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:430 } - c004bfba: 60e6 ld ra,88(sp) - c004bfbc: 6446 ld s0,80(sp) + c004c18a: 60e6 ld ra,88(sp) + c004c18c: 6446 ld s0,80(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:429 return ret; - c004bfbe: fc3e sd a5,56(sp) + c004c18e: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:430 } - c004bfc0: 7542 ld a0,48(sp) - c004bfc2: 75e2 ld a1,56(sp) - c004bfc4: 64a6 ld s1,72(sp) - c004bfc6: 6906 ld s2,64(sp) - c004bfc8: 6125 addi sp,sp,96 - c004bfca: 8082 ret + c004c190: 7542 ld a0,48(sp) + c004c192: 75e2 ld a1,56(sp) + c004c194: 64a6 ld s1,72(sp) + c004c196: 6906 ld s2,64(sp) + c004c198: 6125 addi sp,sp,96 + c004c19a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:419 buf = js_load_file(ctx, &buf_len, filename); - c004bfcc: 862a mv a2,a0 - c004bfce: 84aa mv s1,a0 - c004bfd0: 082c addi a1,sp,24 - c004bfd2: 8522 mv a0,s0 - c004bfd4: e95ff0ef jal ra,c004be68 - c004bfd8: 892a mv s2,a0 + c004c19c: 862a mv a2,a0 + c004c19e: 84aa mv s1,a0 + c004c1a0: 082c addi a1,sp,24 + c004c1a2: 8522 mv a0,s0 + c004c1a4: e95ff0ef jal ra,c004c038 + c004c1a8: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:420 if (!buf) { - c004bfda: ed11 bnez a0,c004bff6 + c004c1aa: ed11 bnez a0,c004c1c6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:421 JS_ThrowReferenceError(ctx, "could not load '%s'", filename); - c004bfdc: 8626 mv a2,s1 - c004bfde: 8522 mv a0,s0 - c004bfe0: 00025597 auipc a1,0x25 - c004bfe4: d2858593 addi a1,a1,-728 # c0070d08 - c004bfe8: 8c7c80ef jal ra,c00148ae + c004c1ac: 8626 mv a2,s1 + c004c1ae: 8522 mv a0,s0 + c004c1b0: 00025597 auipc a1,0x25 + c004c1b4: db858593 addi a1,a1,-584 # c0070f68 + c004c1b8: fe4c80ef jal ra,c001499c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:422 JS_FreeCString(ctx, filename); - c004bfec: 85a6 mv a1,s1 - c004bfee: 8522 mv a0,s0 - c004bff0: e91bc0ef jal ra,c0008e80 - c004bff4: b7c9 j c004bfb6 + c004c1bc: 85a6 mv a1,s1 + c004c1be: 8522 mv a0,s0 + c004c1c0: dafbc0ef jal ra,c0008f6e + c004c1c4: b7c9 j c004c186 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:425 ret = JS_Eval(ctx, (char *)buf, buf_len, filename, - c004bff6: 6662 ld a2,24(sp) - c004bff8: 4701 li a4,0 - c004bffa: 86a6 mv a3,s1 - c004bffc: 85aa mv a1,a0 - c004bffe: 8522 mv a0,s0 - c004c000: 8efc70ef jal ra,c00138ee - c004c004: f02a sd a0,32(sp) - c004c006: f42e sd a1,40(sp) + c004c1c6: 6662 ld a2,24(sp) + c004c1c8: 4701 li a4,0 + c004c1ca: 86a6 mv a3,s1 + c004c1cc: 85aa mv a1,a0 + c004c1ce: 8522 mv a0,s0 + c004c1d0: 80dc70ef jal ra,c00139dc + c004c1d4: f02a sd a0,32(sp) + c004c1d6: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:427 js_free(ctx, buf); - c004c008: 8522 mv a0,s0 - c004c00a: 85ca mv a1,s2 - c004c00c: e2fba0ef jal ra,c0006e3a + c004c1d8: 8522 mv a0,s0 + c004c1da: 85ca mv a1,s2 + c004c1dc: d4dba0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:428 JS_FreeCString(ctx, filename); - c004c010: 85a6 mv a1,s1 - c004c012: 8522 mv a0,s0 - c004c014: e6dbc0ef jal ra,c0008e80 + c004c1e0: 85a6 mv a1,s1 + c004c1e2: 8522 mv a0,s0 + c004c1e4: d8bbc0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:429 return ret; - c004c018: 7782 ld a5,32(sp) - c004c01a: f83e sd a5,48(sp) - c004c01c: 77a2 ld a5,40(sp) - c004c01e: bf71 j c004bfba + c004c1e8: 7782 ld a5,32(sp) + c004c1ea: f83e sd a5,48(sp) + c004c1ec: 77a2 ld a5,40(sp) + c004c1ee: bf71 j c004c18a -00000000c004c020 : +00000000c004c1f0 : js_module_set_import_meta(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:517 { - c004c020: 7125 addi sp,sp,-416 - c004c022: ef06 sd ra,408(sp) - c004c024: eb22 sd s0,400(sp) - c004c026: e726 sd s1,392(sp) - c004c028: e34a sd s2,384(sp) - c004c02a: fece sd s3,376(sp) - c004c02c: fad2 sd s4,368(sp) + c004c1f0: 7125 addi sp,sp,-416 + c004c1f2: ef06 sd ra,408(sp) + c004c1f4: eb22 sd s0,400(sp) + c004c1f6: e726 sd s1,392(sp) + c004c1f8: e34a sd s2,384(sp) + c004c1fa: fece sd s3,376(sp) + c004c1fc: fad2 sd s4,368(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:524 assert(JS_VALUE_GET_TAG(func_val) == JS_TAG_MODULE); - c004c02e: 2601 sext.w a2,a2 - c004c030: 57f5 li a5,-3 - c004c032: 00f60b63 beq a2,a5,c004c048 + c004c1fe: 2601 sext.w a2,a2 + c004c200: 57f5 li a5,-3 + c004c202: 00f60b63 beq a2,a5,c004c218 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:524 (discriminator 1) - c004c036: 4601 li a2,0 - c004c038: 20c00593 li a1,524 - c004c03c: 00025517 auipc a0,0x25 - c004c040: a5450513 addi a0,a0,-1452 # c0070a90 - c004c044: 1d5070ef jal ra,c0053a18 <__assert> - c004c048: 842a mv s0,a0 - c004c04a: 8a36 mv s4,a3 - c004c04c: 893a mv s2,a4 + c004c206: 4601 li a2,0 + c004c208: 20c00593 li a1,524 + c004c20c: 00025517 auipc a0,0x25 + c004c210: ae450513 addi a0,a0,-1308 # c0070cf0 + c004c214: 1d5070ef jal ra,c0053be8 <__assert> + c004c218: 842a mv s0,a0 + c004c21a: 8a36 mv s4,a3 + c004c21c: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:525 (discriminator 2) m = JS_VALUE_GET_PTR(func_val); - c004c04e: 89ae mv s3,a1 + c004c21e: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:527 (discriminator 2) module_name_atom = JS_GetModuleName(ctx, m); - c004c050: ec7be0ef jal ra,c000af16 - c004c054: 0005059b sext.w a1,a0 + c004c220: de5be0ef jal ra,c000b004 + c004c224: 0005059b sext.w a1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:528 (discriminator 2) module_name = JS_AtomToCString(ctx, module_name_atom); - c004c058: 8522 mv a0,s0 - c004c05a: e42e sd a1,8(sp) - c004c05c: 9b2d30ef jal ra,c001f20e + c004c228: 8522 mv a0,s0 + c004c22a: e42e sd a1,8(sp) + c004c22c: 9b2d30ef jal ra,c001f3de /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:529 (discriminator 2) JS_FreeAtom(ctx, module_name_atom); - c004c060: 65a2 ld a1,8(sp) + c004c230: 65a2 ld a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:528 (discriminator 2) module_name = JS_AtomToCString(ctx, module_name_atom); - c004c062: 84aa mv s1,a0 + c004c232: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:529 (discriminator 2) JS_FreeAtom(ctx, module_name_atom); - c004c064: 8522 mv a0,s0 - c004c066: ca6bb0ef jal ra,c000750c + c004c234: 8522 mv a0,s0 + c004c236: bc4bb0ef jal ra,c00075fa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:530 (discriminator 2) if (!module_name) - c004c06a: e891 bnez s1,c004c07e + c004c23a: e891 bnez s1,c004c24e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:543 return -1; - c004c06c: 557d li a0,-1 + c004c23c: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:566 } - c004c06e: 60fa ld ra,408(sp) - c004c070: 645a ld s0,400(sp) - c004c072: 64ba ld s1,392(sp) - c004c074: 691a ld s2,384(sp) - c004c076: 79f6 ld s3,376(sp) - c004c078: 7a56 ld s4,368(sp) - c004c07a: 611d addi sp,sp,416 - c004c07c: 8082 ret + c004c23e: 60fa ld ra,408(sp) + c004c240: 645a ld s0,400(sp) + c004c242: 64ba ld s1,392(sp) + c004c244: 691a ld s2,384(sp) + c004c246: 79f6 ld s3,376(sp) + c004c248: 7a56 ld s4,368(sp) + c004c24a: 611d addi sp,sp,416 + c004c24c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:532 if (!strchr(module_name, ':')) { - c004c07e: 03a00593 li a1,58 - c004c082: 8526 mv a0,s1 - c004c084: 0b90a0ef jal ra,c005693c - c004c088: e95d bnez a0,c004c13e + c004c24e: 03a00593 li a1,58 + c004c252: 8526 mv a0,s1 + c004c254: 0b90a0ef jal ra,c0056b0c + c004c258: e95d bnez a0,c004c30e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:533 strcpy(buf, "file://"); - c004c08a: 00025597 auipc a1,0x25 - c004c08e: c9658593 addi a1,a1,-874 # c0070d20 - c004c092: 1088 addi a0,sp,96 - c004c094: 0d30a0ef jal ra,c0056966 + c004c25a: 00025597 auipc a1,0x25 + c004c25e: d2658593 addi a1,a1,-730 # c0070f80 + c004c262: 1088 addi a0,sp,96 + c004c264: 0d30a0ef jal ra,c0056b36 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:538 if (use_realpath) { - c004c098: 020a0863 beqz s4,c004c0c8 + c004c268: 020a0863 beqz s4,c004c298 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:539 char *res = realpath(module_name, buf + strlen(buf)); - c004c09c: 1088 addi a0,sp,96 - c004c09e: 1130a0ef jal ra,c00569b0 - c004c0a2: 109c addi a5,sp,96 - c004c0a4: 00a785b3 add a1,a5,a0 - c004c0a8: 8526 mv a0,s1 - c004c0aa: 7b8090ef jal ra,c0055862 + c004c26c: 1088 addi a0,sp,96 + c004c26e: 1130a0ef jal ra,c0056b80 + c004c272: 109c addi a5,sp,96 + c004c274: 00a785b3 add a1,a5,a0 + c004c278: 8526 mv a0,s1 + c004c27a: 7b8090ef jal ra,c0055a32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:540 if (!res) { - c004c0ae: e11d bnez a0,c004c0d4 + c004c27e: e11d bnez a0,c004c2a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:541 JS_ThrowTypeError(ctx, "realpath failure"); - c004c0b0: 8522 mv a0,s0 - c004c0b2: 00025597 auipc a1,0x25 - c004c0b6: c7658593 addi a1,a1,-906 # c0070d28 - c004c0ba: b3cc70ef jal ra,c00133f6 + c004c280: 8522 mv a0,s0 + c004c282: 00025597 auipc a1,0x25 + c004c286: d0658593 addi a1,a1,-762 # c0070f88 + c004c28a: a5ac70ef jal ra,c00134e4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:542 JS_FreeCString(ctx, module_name); - c004c0be: 85a6 mv a1,s1 - c004c0c0: 8522 mv a0,s0 - c004c0c2: dbfbc0ef jal ra,c0008e80 - c004c0c6: b75d j c004c06c + c004c28e: 85a6 mv a1,s1 + c004c290: 8522 mv a0,s0 + c004c292: cddbc0ef jal ra,c0008f6e + c004c296: b75d j c004c23c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:548 pstrcat(buf, sizeof(buf), module_name); - c004c0c8: 8626 mv a2,s1 - c004c0ca: 11000593 li a1,272 - c004c0ce: 1088 addi a0,sp,96 - c004c0d0: a6ffb0ef jal ra,c0047b3e + c004c298: 8626 mv a2,s1 + c004c29a: 11000593 li a1,272 + c004c29e: 1088 addi a0,sp,96 + c004c2a0: a6ffb0ef jal ra,c0047d0e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:553 JS_FreeCString(ctx, module_name); - c004c0d4: 85a6 mv a1,s1 - c004c0d6: 8522 mv a0,s0 - c004c0d8: da9bc0ef jal ra,c0008e80 + c004c2a4: 85a6 mv a1,s1 + c004c2a6: 8522 mv a0,s0 + c004c2a8: cc7bc0ef jal ra,c0008f6e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:555 meta_obj = JS_GetImportMeta(ctx, m); - c004c0dc: 85ce mv a1,s3 - c004c0de: 8522 mv a0,s0 - c004c0e0: c59ca0ef jal ra,c0016d38 - c004c0e4: f42e sd a1,40(sp) - c004c0e6: f02a sd a0,32(sp) + c004c2ac: 85ce mv a1,s3 + c004c2ae: 8522 mv a0,s0 + c004c2b0: c59ca0ef jal ra,c0016f08 + c004c2b4: f42e sd a1,40(sp) + c004c2b6: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:556 if (JS_IsException(meta_obj)) - c004c0e8: 2581 sext.w a1,a1 - c004c0ea: 4799 li a5,6 - c004c0ec: f8f580e3 beq a1,a5,c004c06c + c004c2b8: 2581 sext.w a1,a1 + c004c2ba: 4799 li a5,6 + c004c2bc: f8f580e3 beq a1,a5,c004c23c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:558 JS_DefinePropertyValueStr(ctx, meta_obj, "url", - c004c0f0: 108c addi a1,sp,96 - c004c0f2: 8522 mv a0,s0 - c004c0f4: 92fcd0ef jal ra,c0019a22 - c004c0f8: 87ae mv a5,a1 - c004c0fa: 7622 ld a2,40(sp) - c004c0fc: 7582 ld a1,32(sp) - c004c0fe: 872a mv a4,a0 - c004c100: 481d li a6,7 - c004c102: 00025697 auipc a3,0x25 - c004c106: c3e68693 addi a3,a3,-962 # c0070d40 - c004c10a: 8522 mv a0,s0 + c004c2c0: 108c addi a1,sp,96 + c004c2c2: 8522 mv a0,s0 + c004c2c4: 92fcd0ef jal ra,c0019bf2 + c004c2c8: 87ae mv a5,a1 + c004c2ca: 7622 ld a2,40(sp) + c004c2cc: 7582 ld a1,32(sp) + c004c2ce: 872a mv a4,a0 + c004c2d0: 481d li a6,7 + c004c2d2: 00025697 auipc a3,0x25 + c004c2d6: cce68693 addi a3,a3,-818 # c0070fa0 + c004c2da: 8522 mv a0,s0 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 return JS_MKVAL(JS_TAG_BOOL, (val != 0)); - c004c10c: 01203933 snez s2,s2 + c004c2dc: 01203933 snez s2,s2 js_module_set_import_meta(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:558 - c004c110: e48dd0ef jal ra,c0029758 + c004c2e0: e48dd0ef jal ra,c0029928 JS_NewBool(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:510 - c004c114: ca82 sw zero,84(sp) - c004c116: c8ca sw s2,80(sp) + c004c2e4: ca82 sw zero,84(sp) + c004c2e6: c8ca sw s2,80(sp) js_module_set_import_meta(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:561 JS_DefinePropertyValueStr(ctx, meta_obj, "main", - c004c118: 6746 ld a4,80(sp) - c004c11a: 7582 ld a1,32(sp) - c004c11c: 7622 ld a2,40(sp) - c004c11e: 481d li a6,7 - c004c120: 4785 li a5,1 - c004c122: 00025697 auipc a3,0x25 - c004c126: c2668693 addi a3,a3,-986 # c0070d48 - c004c12a: 8522 mv a0,s0 - c004c12c: e2cdd0ef jal ra,c0029758 + c004c2e8: 6746 ld a4,80(sp) + c004c2ea: 7582 ld a1,32(sp) + c004c2ec: 7622 ld a2,40(sp) + c004c2ee: 481d li a6,7 + c004c2f0: 4785 li a5,1 + c004c2f2: 00025697 auipc a3,0x25 + c004c2f6: cb668693 addi a3,a3,-842 # c0070fa8 + c004c2fa: 8522 mv a0,s0 + c004c2fc: e2cdd0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:564 JS_FreeValue(ctx, meta_obj); - c004c130: 7582 ld a1,32(sp) - c004c132: 7622 ld a2,40(sp) - c004c134: 8522 mv a0,s0 - c004c136: 9d6fc0ef jal ra,c004830c + c004c300: 7582 ld a1,32(sp) + c004c302: 7622 ld a2,40(sp) + c004c304: 8522 mv a0,s0 + c004c306: 9d6fc0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:565 return 0; - c004c13a: 4501 li a0,0 - c004c13c: bf0d j c004c06e + c004c30a: 4501 li a0,0 + c004c30c: bf0d j c004c23e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:551 pstrcpy(buf, sizeof(buf), module_name); - c004c13e: 8626 mv a2,s1 - c004c140: 11000593 li a1,272 - c004c144: 1088 addi a0,sp,96 - c004c146: 9d7fb0ef jal ra,c0047b1c - c004c14a: b769 j c004c0d4 + c004c30e: 8626 mv a2,s1 + c004c310: 11000593 li a1,272 + c004c314: 1088 addi a0,sp,96 + c004c316: 9d7fb0ef jal ra,c0047cec + c004c31a: b769 j c004c2a4 -00000000c004c14c : +00000000c004c31c : js_module_loader(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:570 { - c004c14c: 715d addi sp,sp,-80 - c004c14e: fc26 sd s1,56(sp) - c004c150: 84ae mv s1,a1 - c004c152: f84a sd s2,48(sp) + c004c31c: 715d addi sp,sp,-80 + c004c31e: fc26 sd s1,56(sp) + c004c320: 84ae mv s1,a1 + c004c322: f84a sd s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:573 if (has_suffix(module_name, ".so")) { - c004c154: 00025597 auipc a1,0x25 - c004c158: bfc58593 addi a1,a1,-1028 # c0070d50 + c004c324: 00025597 auipc a1,0x25 + c004c328: c8c58593 addi a1,a1,-884 # c0070fb0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:570 { - c004c15c: 892a mv s2,a0 + c004c32c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:573 if (has_suffix(module_name, ".so")) { - c004c15e: 8526 mv a0,s1 + c004c32e: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:570 { - c004c160: e486 sd ra,72(sp) - c004c162: e0a2 sd s0,64(sp) - c004c164: f44e sd s3,40(sp) + c004c330: e486 sd ra,72(sp) + c004c332: e0a2 sd s0,64(sp) + c004c334: f44e sd s3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:573 if (has_suffix(module_name, ".so")) { - c004c166: a2bfb0ef jal ra,c0047b90 - c004c16a: c54d beqz a0,c004c214 + c004c336: a2bfb0ef jal ra,c0047d60 + c004c33a: c54d beqz a0,c004c3e4 js_module_loader_so(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:473 if (!strchr(module_name, '/')) { - c004c16c: 02f00593 li a1,47 - c004c170: 8526 mv a0,s1 - c004c172: 7ca0a0ef jal ra,c005693c - c004c176: 8426 mv s0,s1 - c004c178: e51d bnez a0,c004c1a6 + c004c33c: 02f00593 li a1,47 + c004c340: 8526 mv a0,s1 + c004c342: 7ca0a0ef jal ra,c0056b0c + c004c346: 8426 mv s0,s1 + c004c348: e51d bnez a0,c004c376 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:476 filename = js_malloc(ctx, strlen(module_name) + 2 + 1); - c004c17a: 8526 mv a0,s1 - c004c17c: 0350a0ef jal ra,c00569b0 - c004c180: 00350593 addi a1,a0,3 - c004c184: 854a mv a0,s2 - c004c186: ac7c80ef jal ra,c0014c4c - c004c18a: 842a mv s0,a0 + c004c34a: 8526 mv a0,s1 + c004c34c: 0350a0ef jal ra,c0056b80 + c004c350: 00350593 addi a1,a0,3 + c004c354: 854a mv a0,s2 + c004c356: 9e5c80ef jal ra,c0014d3a + c004c35a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:477 if (!filename) - c004c18c: 0e050163 beqz a0,c004c26e + c004c35c: 0e050163 beqz a0,c004c43e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:479 strcpy(filename, "./"); - c004c190: 00025597 auipc a1,0x25 - c004c194: bc858593 addi a1,a1,-1080 # c0070d58 - c004c198: 7ce0a0ef jal ra,c0056966 + c004c360: 00025597 auipc a1,0x25 + c004c364: c5858593 addi a1,a1,-936 # c0070fb8 + c004c368: 7ce0a0ef jal ra,c0056b36 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:480 strcpy(filename + 2, module_name); - c004c19c: 85a6 mv a1,s1 - c004c19e: 00240513 addi a0,s0,2 - c004c1a2: 7c40a0ef jal ra,c0056966 + c004c36c: 85a6 mv a1,s1 + c004c36e: 00240513 addi a0,s0,2 + c004c372: 7c40a0ef jal ra,c0056b36 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:486 hd = dlopen(filename, RTLD_NOW | RTLD_LOCAL); - c004c1a6: 4595 li a1,5 - c004c1a8: 8522 mv a0,s0 - c004c1aa: 35d060ef jal ra,c0052d06 - c004c1ae: 89aa mv s3,a0 + c004c376: 4595 li a1,5 + c004c378: 8522 mv a0,s0 + c004c37a: 35d060ef jal ra,c0052ed6 + c004c37e: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:487 if (filename != module_name) - c004c1b0: 00848663 beq s1,s0,c004c1bc + c004c380: 00848663 beq s1,s0,c004c38c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:488 js_free(ctx, filename); - c004c1b4: 85a2 mv a1,s0 - c004c1b6: 854a mv a0,s2 - c004c1b8: c83ba0ef jal ra,c0006e3a + c004c384: 85a2 mv a1,s0 + c004c386: 854a mv a0,s2 + c004c388: ba1ba0ef jal ra,c0006f28 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:489 if (!hd) { - c004c1bc: 00099b63 bnez s3,c004c1d2 + c004c38c: 00099b63 bnez s3,c004c3a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:490 JS_ThrowReferenceError(ctx, "could not load module filename '%s' as shared library", - c004c1c0: 8626 mv a2,s1 - c004c1c2: 00025597 auipc a1,0x25 - c004c1c6: b9e58593 addi a1,a1,-1122 # c0070d60 + c004c390: 8626 mv a2,s1 + c004c392: 00025597 auipc a1,0x25 + c004c396: c2e58593 addi a1,a1,-978 # c0070fc0 js_module_loader(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:582 JS_ThrowReferenceError(ctx, "could not load module filename '%s'", - c004c1ca: 854a mv a0,s2 - c004c1cc: ee2c80ef jal ra,c00148ae + c004c39a: 854a mv a0,s2 + c004c39c: e00c80ef jal ra,c001499c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:584 return NULL; - c004c1d0: a02d j c004c1fa + c004c3a0: a02d j c004c3ca js_module_loader_so(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:495 init = dlsym(hd, "js_init_module"); - c004c1d2: 00025597 auipc a1,0x25 - c004c1d6: bc658593 addi a1,a1,-1082 # c0070d98 - c004c1da: 854e mv a0,s3 - c004c1dc: 341060ef jal ra,c0052d1c - c004c1e0: 87aa mv a5,a0 + c004c3a2: 00025597 auipc a1,0x25 + c004c3a6: c5658593 addi a1,a1,-938 # c0070ff8 + c004c3aa: 854e mv a0,s3 + c004c3ac: 341060ef jal ra,c0052eec + c004c3b0: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:496 if (!init) { - c004c1e2: ed11 bnez a0,c004c1fe + c004c3b2: ed11 bnez a0,c004c3ce /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:497 JS_ThrowReferenceError(ctx, "could not load module filename '%s': js_init_module not found", - c004c1e4: 8626 mv a2,s1 - c004c1e6: 00025597 auipc a1,0x25 - c004c1ea: bc258593 addi a1,a1,-1086 # c0070da8 + c004c3b4: 8626 mv a2,s1 + c004c3b6: 00025597 auipc a1,0x25 + c004c3ba: c5258593 addi a1,a1,-942 # c0071008 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:504 JS_ThrowReferenceError(ctx, "could not load module filename '%s': initialization error", - c004c1ee: 854a mv a0,s2 - c004c1f0: ebec80ef jal ra,c00148ae + c004c3be: 854a mv a0,s2 + c004c3c0: ddcc80ef jal ra,c001499c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:508 dlclose(hd); - c004c1f4: 854e mv a0,s3 - c004c1f6: 2fb060ef jal ra,c0052cf0 + c004c3c4: 854e mv a0,s3 + c004c3c6: 2fb060ef jal ra,c0052ec0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:509 return NULL; - c004c1fa: 4401 li s0,0 - c004c1fc: a88d j c004c26e + c004c3ca: 4401 li s0,0 + c004c3cc: a88d j c004c43e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:502 m = init(ctx, module_name); - c004c1fe: 85a6 mv a1,s1 - c004c200: 854a mv a0,s2 - c004c202: 9782 jalr a5 - c004c204: 842a mv s0,a0 + c004c3ce: 85a6 mv a1,s1 + c004c3d0: 854a mv a0,s2 + c004c3d2: 9782 jalr a5 + c004c3d4: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:503 if (!m) { - c004c206: e525 bnez a0,c004c26e + c004c3d6: e525 bnez a0,c004c43e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:504 JS_ThrowReferenceError(ctx, "could not load module filename '%s': initialization error", - c004c208: 8626 mv a2,s1 - c004c20a: 00025597 auipc a1,0x25 - c004c20e: bde58593 addi a1,a1,-1058 # c0070de8 - c004c212: bff1 j c004c1ee + c004c3d8: 8626 mv a2,s1 + c004c3da: 00025597 auipc a1,0x25 + c004c3de: c6e58593 addi a1,a1,-914 # c0071048 + c004c3e2: bff1 j c004c3be js_module_loader(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:580 buf = js_load_file(ctx, &buf_len, module_name); - c004c214: 8626 mv a2,s1 - c004c216: 002c addi a1,sp,8 - c004c218: 854a mv a0,s2 - c004c21a: c4fff0ef jal ra,c004be68 - c004c21e: 89aa mv s3,a0 + c004c3e4: 8626 mv a2,s1 + c004c3e6: 002c addi a1,sp,8 + c004c3e8: 854a mv a0,s2 + c004c3ea: c4fff0ef jal ra,c004c038 + c004c3ee: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:581 if (!buf) { - c004c220: e519 bnez a0,c004c22e + c004c3f0: e519 bnez a0,c004c3fe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:582 JS_ThrowReferenceError(ctx, "could not load module filename '%s'", - c004c222: 8626 mv a2,s1 - c004c224: 00025597 auipc a1,0x25 - c004c228: c0458593 addi a1,a1,-1020 # c0070e28 - c004c22c: bf79 j c004c1ca + c004c3f2: 8626 mv a2,s1 + c004c3f4: 00025597 auipc a1,0x25 + c004c3f8: c9458593 addi a1,a1,-876 # c0071088 + c004c3fc: bf79 j c004c39a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:588 func_val = JS_Eval(ctx, (char *)buf, buf_len, module_name, - c004c22e: 6622 ld a2,8(sp) - c004c230: 02100713 li a4,33 - c004c234: 86a6 mv a3,s1 - c004c236: 85aa mv a1,a0 - c004c238: 854a mv a0,s2 - c004c23a: eb4c70ef jal ra,c00138ee - c004c23e: e82a sd a0,16(sp) - c004c240: ec2e sd a1,24(sp) - c004c242: 842a mv s0,a0 + c004c3fe: 6622 ld a2,8(sp) + c004c400: 02100713 li a4,33 + c004c404: 86a6 mv a3,s1 + c004c406: 85aa mv a1,a0 + c004c408: 854a mv a0,s2 + c004c40a: dd2c70ef jal ra,c00139dc + c004c40e: e82a sd a0,16(sp) + c004c410: ec2e sd a1,24(sp) + c004c412: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:590 js_free(ctx, buf); - c004c244: 85ce mv a1,s3 - c004c246: 854a mv a0,s2 - c004c248: bf3ba0ef jal ra,c0006e3a + c004c414: 85ce mv a1,s3 + c004c416: 854a mv a0,s2 + c004c418: b11ba0ef jal ra,c0006f28 JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c004c24c: 6662 ld a2,24(sp) + c004c41c: 6662 ld a2,24(sp) js_module_loader(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:591 if (JS_IsException(func_val)) - c004c24e: 4799 li a5,6 - c004c250: 0006071b sext.w a4,a2 - c004c254: faf703e3 beq a4,a5,c004c1fa + c004c41e: 4799 li a5,6 + c004c420: 0006071b sext.w a4,a2 + c004c424: faf703e3 beq a4,a5,c004c3ca /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:594 js_module_set_import_meta(ctx, func_val, TRUE, FALSE); - c004c258: 65c2 ld a1,16(sp) - c004c25a: 4701 li a4,0 - c004c25c: 4685 li a3,1 - c004c25e: 854a mv a0,s2 - c004c260: dc1ff0ef jal ra,c004c020 + c004c428: 65c2 ld a1,16(sp) + c004c42a: 4701 li a4,0 + c004c42c: 4685 li a3,1 + c004c42e: 854a mv a0,s2 + c004c430: dc1ff0ef jal ra,c004c1f0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:597 JS_FreeValue(ctx, func_val); - c004c264: 65c2 ld a1,16(sp) - c004c266: 6662 ld a2,24(sp) - c004c268: 854a mv a0,s2 - c004c26a: 8a2fc0ef jal ra,c004830c + c004c434: 65c2 ld a1,16(sp) + c004c436: 6662 ld a2,24(sp) + c004c438: 854a mv a0,s2 + c004c43a: 8a2fc0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:600 } - c004c26e: 60a6 ld ra,72(sp) - c004c270: 8522 mv a0,s0 - c004c272: 6406 ld s0,64(sp) - c004c274: 74e2 ld s1,56(sp) - c004c276: 7942 ld s2,48(sp) - c004c278: 79a2 ld s3,40(sp) - c004c27a: 6161 addi sp,sp,80 - c004c27c: 8082 ret + c004c43e: 60a6 ld ra,72(sp) + c004c440: 8522 mv a0,s0 + c004c442: 6406 ld s0,64(sp) + c004c444: 74e2 ld s1,56(sp) + c004c446: 7942 ld s2,48(sp) + c004c448: 79a2 ld s3,40(sp) + c004c44a: 6161 addi sp,sp,80 + c004c44c: 8082 ret -00000000c004c27e : +00000000c004c44e : js_init_module_std(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1562 { - c004c27e: 1101 addi sp,sp,-32 + c004c44e: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1564 m = JS_NewCModule(ctx, module_name, js_std_init); - c004c280: ffffd617 auipc a2,0xffffd - c004c284: cce60613 addi a2,a2,-818 # c0048f4e + c004c450: ffffd617 auipc a2,0xffffd + c004c454: cce60613 addi a2,a2,-818 # c004911e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1562 { - c004c288: e822 sd s0,16(sp) - c004c28a: e426 sd s1,8(sp) - c004c28c: ec06 sd ra,24(sp) - c004c28e: 84aa mv s1,a0 + c004c458: e822 sd s0,16(sp) + c004c45a: e426 sd s1,8(sp) + c004c45c: ec06 sd ra,24(sp) + c004c45e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1564 m = JS_NewCModule(ctx, module_name, js_std_init); - c004c290: bbccd0ef jal ra,c001964c - c004c294: 842a mv s0,a0 + c004c460: bbccd0ef jal ra,c001981c + c004c464: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1565 if (!m) - c004c296: c131 beqz a0,c004c2da + c004c466: c131 beqz a0,c004c4aa /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1567 JS_AddModuleExportList(ctx, m, js_std_funcs, countof(js_std_funcs)); - c004c298: 46dd li a3,23 - c004c29a: 85aa mv a1,a0 - c004c29c: 00026617 auipc a2,0x26 - c004c2a0: d4460613 addi a2,a2,-700 # c0071fe0 - c004c2a4: 8526 mv a0,s1 - c004c2a6: 980da0ef jal ra,c0026426 + c004c468: 46dd li a3,23 + c004c46a: 85aa mv a1,a0 + c004c46c: 00026617 auipc a2,0x26 + c004c470: dd460613 addi a2,a2,-556 # c0072240 + c004c474: 8526 mv a0,s1 + c004c476: 980da0ef jal ra,c00265f6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1568 JS_AddModuleExport(ctx, m, "in"); - c004c2aa: 00015617 auipc a2,0x15 - c004c2ae: f2660613 addi a2,a2,-218 # c00611d0 - c004c2b2: 85a2 mv a1,s0 - c004c2b4: 8526 mv a0,s1 - c004c2b6: 926da0ef jal ra,c00263dc + c004c47a: 00015617 auipc a2,0x15 + c004c47e: fb660613 addi a2,a2,-74 # c0061430 + c004c482: 85a2 mv a1,s0 + c004c484: 8526 mv a0,s1 + c004c486: 926da0ef jal ra,c00265ac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1569 JS_AddModuleExport(ctx, m, "out"); - c004c2ba: 00024617 auipc a2,0x24 - c004c2be: 77e60613 addi a2,a2,1918 # c0070a38 - c004c2c2: 85a2 mv a1,s0 - c004c2c4: 8526 mv a0,s1 - c004c2c6: 916da0ef jal ra,c00263dc + c004c48a: 00025617 auipc a2,0x25 + c004c48e: 80e60613 addi a2,a2,-2034 # c0070c98 + c004c492: 85a2 mv a1,s0 + c004c494: 8526 mv a0,s1 + c004c496: 916da0ef jal ra,c00265ac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1570 JS_AddModuleExport(ctx, m, "err"); - c004c2ca: 00024617 auipc a2,0x24 - c004c2ce: 77660613 addi a2,a2,1910 # c0070a40 - c004c2d2: 85a2 mv a1,s0 - c004c2d4: 8526 mv a0,s1 - c004c2d6: 906da0ef jal ra,c00263dc + c004c49a: 00025617 auipc a2,0x25 + c004c49e: 80660613 addi a2,a2,-2042 # c0070ca0 + c004c4a2: 85a2 mv a1,s0 + c004c4a4: 8526 mv a0,s1 + c004c4a6: 906da0ef jal ra,c00265ac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1572 } - c004c2da: 60e2 ld ra,24(sp) - c004c2dc: 8522 mv a0,s0 - c004c2de: 6442 ld s0,16(sp) - c004c2e0: 64a2 ld s1,8(sp) - c004c2e2: 6105 addi sp,sp,32 - c004c2e4: 8082 ret + c004c4aa: 60e2 ld ra,24(sp) + c004c4ac: 8522 mv a0,s0 + c004c4ae: 6442 ld s0,16(sp) + c004c4b0: 64a2 ld s1,8(sp) + c004c4b2: 6105 addi sp,sp,32 + c004c4b4: 8082 ret -00000000c004c2e6 : +00000000c004c4b6 : js_std_set_worker_new_context_func(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3613 js_worker_new_context_func = func; - c004c2e6: 000b5797 auipc a5,0xb5 - c004c2ea: e0a7bd23 sd a0,-486(a5) # c0101100 + c004c4b6: 000b5797 auipc a5,0xb5 + c004c4ba: c4a7b523 sd a0,-950(a5) # c0101100 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3615 } - c004c2ee: 8082 ret + c004c4be: 8082 ret -00000000c004c2f0 : +00000000c004c4c0 : js_init_module_os(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3751 { - c004c2f0: 1101 addi sp,sp,-32 + c004c4c0: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3753 m = JS_NewCModule(ctx, module_name, js_os_init); - c004c2f2: ffffe617 auipc a2,0xffffe - c004c2f6: a4660613 addi a2,a2,-1466 # c0049d38 + c004c4c2: ffffe617 auipc a2,0xffffe + c004c4c6: a4660613 addi a2,a2,-1466 # c0049f08 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3751 { - c004c2fa: e822 sd s0,16(sp) - c004c2fc: e426 sd s1,8(sp) - c004c2fe: ec06 sd ra,24(sp) - c004c300: 84aa mv s1,a0 + c004c4ca: e822 sd s0,16(sp) + c004c4cc: e426 sd s1,8(sp) + c004c4ce: ec06 sd ra,24(sp) + c004c4d0: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3753 m = JS_NewCModule(ctx, module_name, js_os_init); - c004c302: b4acd0ef jal ra,c001964c - c004c306: 842a mv s0,a0 + c004c4d2: b4acd0ef jal ra,c001981c + c004c4d6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3754 if (!m) - c004c308: c11d beqz a0,c004c32e + c004c4d8: c11d beqz a0,c004c4fe /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3756 JS_AddModuleExportList(ctx, m, js_os_funcs, countof(js_os_funcs)); - c004c30a: 85aa mv a1,a0 - c004c30c: 00025617 auipc a2,0x25 - c004c310: 07460613 addi a2,a2,116 # c0071380 - c004c314: 04700693 li a3,71 - c004c318: 8526 mv a0,s1 - c004c31a: 90cda0ef jal ra,c0026426 + c004c4da: 85aa mv a1,a0 + c004c4dc: 00025617 auipc a2,0x25 + c004c4e0: 10460613 addi a2,a2,260 # c00715e0 + c004c4e4: 04700693 li a3,71 + c004c4e8: 8526 mv a0,s1 + c004c4ea: 90cda0ef jal ra,c00265f6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3758 JS_AddModuleExport(ctx, m, "Worker"); - c004c31e: 00024617 auipc a2,0x24 - c004c322: 76260613 addi a2,a2,1890 # c0070a80 - c004c326: 85a2 mv a1,s0 - c004c328: 8526 mv a0,s1 - c004c32a: 8b2da0ef jal ra,c00263dc + c004c4ee: 00024617 auipc a2,0x24 + c004c4f2: 7f260613 addi a2,a2,2034 # c0070ce0 + c004c4f6: 85a2 mv a1,s0 + c004c4f8: 8526 mv a0,s1 + c004c4fa: 8b2da0ef jal ra,c00265ac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3761 } - c004c32e: 60e2 ld ra,24(sp) - c004c330: 8522 mv a0,s0 - c004c332: 6442 ld s0,16(sp) - c004c334: 64a2 ld s1,8(sp) - c004c336: 6105 addi sp,sp,32 - c004c338: 8082 ret + c004c4fe: 60e2 ld ra,24(sp) + c004c500: 8522 mv a0,s0 + c004c502: 6442 ld s0,16(sp) + c004c504: 64a2 ld s1,8(sp) + c004c506: 6105 addi sp,sp,32 + c004c508: 8082 ret -00000000c004c33a : +00000000c004c50a : js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3786 { - c004c33a: 7115 addi sp,sp,-224 - c004c33c: ed86 sd ra,216(sp) - c004c33e: e9a2 sd s0,208(sp) - c004c340: e5a6 sd s1,200(sp) - c004c342: 842a mv s0,a0 - c004c344: fd4e sd s3,184(sp) - c004c346: e1ca sd s2,192(sp) - c004c348: 89b2 mv s3,a2 - c004c34a: 84ae mv s1,a1 + c004c50a: 7115 addi sp,sp,-224 + c004c50c: ed86 sd ra,216(sp) + c004c50e: e9a2 sd s0,208(sp) + c004c510: e5a6 sd s1,200(sp) + c004c512: 842a mv s0,a0 + c004c514: fd4e sd s3,184(sp) + c004c516: e1ca sd s2,192(sp) + c004c518: 89b2 mv s3,a2 + c004c51a: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3791 global_obj = JS_GetGlobalObject(ctx); - c004c34c: b1ebe0ef jal ra,c000a66a - c004c350: e82a sd a0,16(sp) + c004c51c: a3cbe0ef jal ra,c000a758 + c004c520: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3793 console = JS_NewObject(ctx); - c004c352: 8522 mv a0,s0 + c004c522: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3791 global_obj = JS_GetGlobalObject(ctx); - c004c354: ec2e sd a1,24(sp) + c004c524: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3793 console = JS_NewObject(ctx); - c004c356: a33ca0ef jal ra,c0016d88 - c004c35a: f02a sd a0,32(sp) - c004c35c: f42e sd a1,40(sp) + c004c526: a33ca0ef jal ra,c0016f58 + c004c52a: f02a sd a0,32(sp) + c004c52c: f42e sd a1,40(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 return JS_NewCFunction2(ctx, func, name, length, JS_CFUNC_generic, 0); - c004c35e: 4781 li a5,0 - c004c360: 4701 li a4,0 - c004c362: 4685 li a3,1 - c004c364: 00015617 auipc a2,0x15 - c004c368: 6dc60613 addi a2,a2,1756 # c0061a40 - c004c36c: 00000597 auipc a1,0x0 - c004c370: 86258593 addi a1,a1,-1950 # c004bbce - c004c374: 8522 mv a0,s0 - c004c376: e71dc0ef jal ra,c00291e6 - c004c37a: 87ae mv a5,a1 + c004c52e: 4781 li a5,0 + c004c530: 4701 li a4,0 + c004c532: 4685 li a3,1 + c004c534: 00015617 auipc a2,0x15 + c004c538: 76c60613 addi a2,a2,1900 # c0061ca0 + c004c53c: 00000597 auipc a1,0x0 + c004c540: 86258593 addi a1,a1,-1950 # c004bd9e + c004c544: 8522 mv a0,s0 + c004c546: e71dc0ef jal ra,c00293b6 + c004c54a: 87ae mv a5,a1 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3794 JS_SetPropertyStr(ctx, console, "log", - c004c37c: 7622 ld a2,40(sp) - c004c37e: 7582 ld a1,32(sp) + c004c54c: 7622 ld a2,40(sp) + c004c54e: 7582 ld a1,32(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c380: 872a mv a4,a0 + c004c550: 872a mv a4,a0 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3794 - c004c382: 00015697 auipc a3,0x15 - c004c386: 6be68693 addi a3,a3,1726 # c0061a40 - c004c38a: 8522 mv a0,s0 - c004c38c: 91ce40ef jal ra,c00304a8 + c004c552: 00015697 auipc a3,0x15 + c004c556: 74e68693 addi a3,a3,1870 # c0061ca0 + c004c55a: 8522 mv a0,s0 + c004c55c: 91ce40ef jal ra,c0030678 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3796 JS_SetPropertyStr(ctx, global_obj, "console", console); - c004c390: 7702 ld a4,32(sp) - c004c392: 77a2 ld a5,40(sp) - c004c394: 65c2 ld a1,16(sp) - c004c396: 6662 ld a2,24(sp) - c004c398: 00025697 auipc a3,0x25 - c004c39c: ab868693 addi a3,a3,-1352 # c0070e50 - c004c3a0: 8522 mv a0,s0 - c004c3a2: 906e40ef jal ra,c00304a8 + c004c560: 7702 ld a4,32(sp) + c004c562: 77a2 ld a5,40(sp) + c004c564: 65c2 ld a1,16(sp) + c004c566: 6662 ld a2,24(sp) + c004c568: 00025697 auipc a3,0x25 + c004c56c: b4868693 addi a3,a3,-1208 # c00710b0 + c004c570: 8522 mv a0,s0 + c004c572: 906e40ef jal ra,c0030678 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3799 if (argc >= 0) { - c004c3a6: 0204c763 bltz s1,c004c3d4 + c004c576: 0204c763 bltz s1,c004c5a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3800 args = JS_NewArray(ctx); - c004c3aa: 8522 mv a0,s0 - c004c3ac: c13ca0ef jal ra,c0016fbe - c004c3b0: f82a sd a0,48(sp) - c004c3b2: fc2e sd a1,56(sp) + c004c57a: 8522 mv a0,s0 + c004c57c: c13ca0ef jal ra,c001718e + c004c580: f82a sd a0,48(sp) + c004c582: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3801 for(i = 0; i < argc; i++) { - c004c3b4: 4901 li s2,0 + c004c584: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3801 (discriminator 1) - c004c3b6: 0009069b sext.w a3,s2 - c004c3ba: 0896ca63 blt a3,s1,c004c44e + c004c586: 0009069b sext.w a3,s2 + c004c58a: 0896ca63 blt a3,s1,c004c61e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3804 JS_SetPropertyStr(ctx, global_obj, "scriptArgs", args); - c004c3be: 7742 ld a4,48(sp) - c004c3c0: 77e2 ld a5,56(sp) - c004c3c2: 65c2 ld a1,16(sp) - c004c3c4: 6662 ld a2,24(sp) - c004c3c6: 00025697 auipc a3,0x25 - c004c3ca: a9268693 addi a3,a3,-1390 # c0070e58 - c004c3ce: 8522 mv a0,s0 - c004c3d0: 8d8e40ef jal ra,c00304a8 + c004c58e: 7742 ld a4,48(sp) + c004c590: 77e2 ld a5,56(sp) + c004c592: 65c2 ld a1,16(sp) + c004c594: 6662 ld a2,24(sp) + c004c596: 00025697 auipc a3,0x25 + c004c59a: b2268693 addi a3,a3,-1246 # c00710b8 + c004c59e: 8522 mv a0,s0 + c004c5a0: 8d8e40ef jal ra,c0030678 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c3d4: 4781 li a5,0 - c004c3d6: 4701 li a4,0 - c004c3d8: 4685 li a3,1 - c004c3da: 00025617 auipc a2,0x25 - c004c3de: a8e60613 addi a2,a2,-1394 # c0070e68 - c004c3e2: 8522 mv a0,s0 - c004c3e4: fffff597 auipc a1,0xfffff - c004c3e8: 7ea58593 addi a1,a1,2026 # c004bbce - c004c3ec: dfbdc0ef jal ra,c00291e6 + c004c5a4: 4781 li a5,0 + c004c5a6: 4701 li a4,0 + c004c5a8: 4685 li a3,1 + c004c5aa: 00025617 auipc a2,0x25 + c004c5ae: b1e60613 addi a2,a2,-1250 # c00710c8 + c004c5b2: 8522 mv a0,s0 + c004c5b4: fffff597 auipc a1,0xfffff + c004c5b8: 7ea58593 addi a1,a1,2026 # c004bd9e + c004c5bc: dfbdc0ef jal ra,c00293b6 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3807 JS_SetPropertyStr(ctx, global_obj, "print", - c004c3f0: 6662 ld a2,24(sp) + c004c5c0: 6662 ld a2,24(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c3f2: 87ae mv a5,a1 + c004c5c2: 87ae mv a5,a1 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3807 - c004c3f4: 65c2 ld a1,16(sp) + c004c5c4: 65c2 ld a1,16(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c3f6: 872a mv a4,a0 + c004c5c6: 872a mv a4,a0 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3807 - c004c3f8: 00025697 auipc a3,0x25 - c004c3fc: a7068693 addi a3,a3,-1424 # c0070e68 - c004c400: 8522 mv a0,s0 - c004c402: 8a6e40ef jal ra,c00304a8 + c004c5c8: 00025697 auipc a3,0x25 + c004c5cc: b0068693 addi a3,a3,-1280 # c00710c8 + c004c5d0: 8522 mv a0,s0 + c004c5d2: 8a6e40ef jal ra,c0030678 JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c406: 4781 li a5,0 - c004c408: 4701 li a4,0 - c004c40a: 4685 li a3,1 - c004c40c: 00025617 auipc a2,0x25 - c004c410: a6460613 addi a2,a2,-1436 # c0070e70 - c004c414: 8522 mv a0,s0 - c004c416: 00000597 auipc a1,0x0 - c004c41a: b8a58593 addi a1,a1,-1142 # c004bfa0 - c004c41e: dc9dc0ef jal ra,c00291e6 + c004c5d6: 4781 li a5,0 + c004c5d8: 4701 li a4,0 + c004c5da: 4685 li a3,1 + c004c5dc: 00025617 auipc a2,0x25 + c004c5e0: af460613 addi a2,a2,-1292 # c00710d0 + c004c5e4: 8522 mv a0,s0 + c004c5e6: 00000597 auipc a1,0x0 + c004c5ea: b8a58593 addi a1,a1,-1142 # c004c170 + c004c5ee: dc9dc0ef jal ra,c00293b6 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3809 JS_SetPropertyStr(ctx, global_obj, "__loadScript", - c004c422: 6662 ld a2,24(sp) + c004c5f2: 6662 ld a2,24(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c424: 87ae mv a5,a1 + c004c5f4: 87ae mv a5,a1 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3809 - c004c426: 65c2 ld a1,16(sp) + c004c5f6: 65c2 ld a1,16(sp) JS_NewCFunction(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:963 - c004c428: 872a mv a4,a0 + c004c5f8: 872a mv a4,a0 js_std_add_helpers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3809 - c004c42a: 00025697 auipc a3,0x25 - c004c42e: a4668693 addi a3,a3,-1466 # c0070e70 - c004c432: 8522 mv a0,s0 - c004c434: 874e40ef jal ra,c00304a8 + c004c5fa: 00025697 auipc a3,0x25 + c004c5fe: ad668693 addi a3,a3,-1322 # c00710d0 + c004c602: 8522 mv a0,s0 + c004c604: 874e40ef jal ra,c0030678 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3812 JS_FreeValue(ctx, global_obj); - c004c438: 8522 mv a0,s0 + c004c608: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3813 } - c004c43a: 644e ld s0,208(sp) + c004c60a: 644e ld s0,208(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3812 JS_FreeValue(ctx, global_obj); - c004c43c: 65c2 ld a1,16(sp) - c004c43e: 6662 ld a2,24(sp) + c004c60c: 65c2 ld a1,16(sp) + c004c60e: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3813 } - c004c440: 60ee ld ra,216(sp) - c004c442: 64ae ld s1,200(sp) - c004c444: 690e ld s2,192(sp) - c004c446: 79ea ld s3,184(sp) - c004c448: 612d addi sp,sp,224 + c004c610: 60ee ld ra,216(sp) + c004c612: 64ae ld s1,200(sp) + c004c614: 690e ld s2,192(sp) + c004c616: 79ea ld s3,184(sp) + c004c618: 612d addi sp,sp,224 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3812 JS_FreeValue(ctx, global_obj); - c004c44a: ec3fb06f j c004830c + c004c61a: ec3fb06f j c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3802 (discriminator 3) JS_SetPropertyUint32(ctx, args, i, JS_NewString(ctx, argv[i])); - c004c44e: 00391793 slli a5,s2,0x3 - c004c452: 97ce add a5,a5,s3 - c004c454: 638c ld a1,0(a5) - c004c456: 8522 mv a0,s0 - c004c458: e436 sd a3,8(sp) - c004c45a: dc8cd0ef jal ra,c0019a22 - c004c45e: 87ae mv a5,a1 - c004c460: 66a2 ld a3,8(sp) - c004c462: 75c2 ld a1,48(sp) - c004c464: 7662 ld a2,56(sp) - c004c466: 872a mv a4,a0 - c004c468: 8522 mv a0,s0 - c004c46a: c36c60ef jal ra,c00128a0 + c004c61e: 00391793 slli a5,s2,0x3 + c004c622: 97ce add a5,a5,s3 + c004c624: 638c ld a1,0(a5) + c004c626: 8522 mv a0,s0 + c004c628: e436 sd a3,8(sp) + c004c62a: dc8cd0ef jal ra,c0019bf2 + c004c62e: 87ae mv a5,a1 + c004c630: 66a2 ld a3,8(sp) + c004c632: 75c2 ld a1,48(sp) + c004c634: 7662 ld a2,56(sp) + c004c636: 872a mv a4,a0 + c004c638: 8522 mv a0,s0 + c004c63a: b54c60ef jal ra,c001298e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3801 (discriminator 3) for(i = 0; i < argc; i++) { - c004c46e: 0905 addi s2,s2,1 - c004c470: b799 j c004c3b6 + c004c63e: 0905 addi s2,s2,1 + c004c640: b799 j c004c586 -00000000c004c472 : +00000000c004c642 : js_std_init_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3816 { - c004c472: 7139 addi sp,sp,-64 - c004c474: f426 sd s1,40(sp) - c004c476: 84aa mv s1,a0 + c004c642: 7139 addi sp,sp,-64 + c004c644: f426 sd s1,40(sp) + c004c646: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3819 ts = malloc(sizeof(*ts)); - c004c478: 05800513 li a0,88 + c004c648: 05800513 li a0,88 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3816 { - c004c47c: fc06 sd ra,56(sp) - c004c47e: f822 sd s0,48(sp) + c004c64c: fc06 sd ra,56(sp) + c004c64e: f822 sd s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3819 ts = malloc(sizeof(*ts)); - c004c480: 185060ef jal ra,c0052e04 + c004c650: 185060ef jal ra,c0052fd4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3820 if (!ts) { - c004c484: ed11 bnez a0,c004c4a0 + c004c654: ed11 bnez a0,c004c670 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3821 fprintf(stderr, "Could not allocate memory for the worker"); - c004c486: 4509 li a0,2 - c004c488: 360090ef jal ra,c00557e8 - c004c48c: 85aa mv a1,a0 - c004c48e: 00025517 auipc a0,0x25 - c004c492: 9f250513 addi a0,a0,-1550 # c0070e80 - c004c496: 214090ef jal ra,c00556aa + c004c656: 4509 li a0,2 + c004c658: 360090ef jal ra,c00559b8 + c004c65c: 85aa mv a1,a0 + c004c65e: 00025517 auipc a0,0x25 + c004c662: a8250513 addi a0,a0,-1406 # c00710e0 + c004c666: 214090ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3822 exit(1); - c004c49a: 4505 li a0,1 - c004c49c: 38c090ef jal ra,c0055828 + c004c66a: 4505 li a0,1 + c004c66c: 38c090ef jal ra,c00559f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3824 memset(ts, 0, sizeof(*ts)); - c004c4a0: 01050793 addi a5,a0,16 - c004c4a4: 842a mv s0,a0 - c004c4a6: 04800613 li a2,72 - c004c4aa: 4581 li a1,0 - c004c4ac: 853e mv a0,a5 - c004c4ae: 3c20a0ef jal ra,c0056870 + c004c670: 01050793 addi a5,a0,16 + c004c674: 842a mv s0,a0 + c004c676: 04800613 li a2,72 + c004c67a: 4581 li a1,0 + c004c67c: 853e mv a0,a5 + c004c67e: 3c20a0ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3827 init_list_head(&ts->os_timers); - c004c4b2: 02040793 addi a5,s0,32 + c004c682: 02040793 addi a5,s0,32 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c004c4b6: f01c sd a5,32(s0) + c004c686: f01c sd a5,32(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c004c4b8: f41c sd a5,40(s0) + c004c688: f41c sd a5,40(s0) js_std_init_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3828 init_list_head(&ts->port_list); - c004c4ba: 03040793 addi a5,s0,48 + c004c68a: 03040793 addi a5,s0,48 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c004c4be: f81c sd a5,48(s0) + c004c68e: f81c sd a5,48(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c004c4c0: fc1c sd a5,56(s0) + c004c690: fc1c sd a5,56(s0) js_std_init_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3829 ts->next_timer_id = 1; - c004c4c2: 4785 li a5,1 + c004c692: 4785 li a5,1 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c004c4c4: e808 sd a0,16(s0) + c004c694: e808 sd a0,16(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c004c4c6: ec08 sd a0,24(s0) + c004c696: ec08 sd a0,24(s0) js_std_init_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3829 - c004c4c8: c07c sw a5,68(s0) + c004c698: c07c sw a5,68(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3831 JS_SetRuntimeOpaque(rt, ts); - c004c4ca: 85a2 mv a1,s0 - c004c4cc: 8526 mv a0,s1 + c004c69a: 85a2 mv a1,s0 + c004c69c: 8526 mv a0,s1 init_list_head(): /Users/Luppy/riscv/quickjs-nuttx/list.h:43 head->prev = head; - c004c4ce: e000 sd s0,0(s0) + c004c69e: e000 sd s0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/list.h:44 head->next = head; - c004c4d0: e400 sd s0,8(s0) + c004c6a0: e400 sd s0,8(s0) js_std_init_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3831 - c004c4d2: 9bbba0ef jal ra,c0006e8c + c004c6a2: 8d9ba0ef jal ra,c0006f7a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3838 sf.sab_alloc = js_sab_alloc; - c004c4d6: ffffc797 auipc a5,0xffffc - c004c4da: e1c78793 addi a5,a5,-484 # c00482f2 - c004c4de: e03e sd a5,0(sp) + c004c6a6: ffffc797 auipc a5,0xffffc + c004c6aa: e1c78793 addi a5,a5,-484 # c00484c2 + c004c6ae: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3839 sf.sab_free = js_sab_free; - c004c4e0: ffffe797 auipc a5,0xffffe - c004c4e4: ea278793 addi a5,a5,-350 # c004a382 - c004c4e8: e43e sd a5,8(sp) + c004c6b0: ffffe797 auipc a5,0xffffe + c004c6b4: ea278793 addi a5,a5,-350 # c004a552 + c004c6b8: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3841 JS_SetSharedArrayBufferFunctions(rt, &sf); - c004c4ea: 858a mv a1,sp + c004c6ba: 858a mv a1,sp /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3840 sf.sab_dup = js_sab_dup; - c004c4ec: ffffd797 auipc a5,0xffffd - c004c4f0: 61878793 addi a5,a5,1560 # c0049b04 + c004c6bc: ffffd797 auipc a5,0xffffd + c004c6c0: 61878793 addi a5,a5,1560 # c0049cd4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3841 JS_SetSharedArrayBufferFunctions(rt, &sf); - c004c4f4: 8526 mv a0,s1 + c004c6c4: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3837 memset(&sf, 0, sizeof(sf)); - c004c4f6: ec02 sd zero,24(sp) + c004c6c6: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3840 sf.sab_dup = js_sab_dup; - c004c4f8: e83e sd a5,16(sp) + c004c6c8: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3841 JS_SetSharedArrayBufferFunctions(rt, &sf); - c004c4fa: 9b1ba0ef jal ra,c0006eaa + c004c6ca: 8cfba0ef jal ra,c0006f98 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3844 } - c004c4fe: 70e2 ld ra,56(sp) - c004c500: 7442 ld s0,48(sp) - c004c502: 74a2 ld s1,40(sp) - c004c504: 6121 addi sp,sp,64 - c004c506: 8082 ret + c004c6ce: 70e2 ld ra,56(sp) + c004c6d0: 7442 ld s0,48(sp) + c004c6d2: 74a2 ld s1,40(sp) + c004c6d4: 6121 addi sp,sp,64 + c004c6d6: 8082 ret -00000000c004c508 : +00000000c004c6d8 : js_std_free_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3847 { - c004c508: 7179 addi sp,sp,-48 - c004c50a: f022 sd s0,32(sp) - c004c50c: ec26 sd s1,24(sp) - c004c50e: e84a sd s2,16(sp) - c004c510: f406 sd ra,40(sp) - c004c512: e44e sd s3,8(sp) - c004c514: e052 sd s4,0(sp) - c004c516: 84aa mv s1,a0 + c004c6d8: 7179 addi sp,sp,-48 + c004c6da: f022 sd s0,32(sp) + c004c6dc: ec26 sd s1,24(sp) + c004c6de: e84a sd s2,16(sp) + c004c6e0: f406 sd ra,40(sp) + c004c6e2: e44e sd s3,8(sp) + c004c6e4: e052 sd s4,0(sp) + c004c6e6: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3848 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004c518: 96fba0ef jal ra,c0006e86 + c004c6e8: 88dba0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3851 list_for_each_safe(el, el1, &ts->os_rw_handlers) { - c004c51c: 650c ld a1,8(a0) + c004c6ec: 650c ld a1,8(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3848 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004c51e: 842a mv s0,a0 + c004c6ee: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3851 list_for_each_safe(el, el1, &ts->os_rw_handlers) { - c004c520: 0085b903 ld s2,8(a1) + c004c6f0: 0085b903 ld s2,8(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3851 (discriminator 1) - c004c524: 04b41563 bne s0,a1,c004c56e + c004c6f4: 04b41563 bne s0,a1,c004c73e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3856 list_for_each_safe(el, el1, &ts->os_signal_handlers) { - c004c528: 01843903 ld s2,24(s0) - c004c52c: 01040a13 addi s4,s0,16 - c004c530: 00893983 ld s3,8(s2) + c004c6f8: 01843903 ld s2,24(s0) + c004c6fc: 01040a13 addi s4,s0,16 + c004c700: 00893983 ld s3,8(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3856 (discriminator 1) - c004c534: 05491463 bne s2,s4,c004c57c + c004c704: 05491463 bne s2,s4,c004c74c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3861 list_for_each_safe(el, el1, &ts->os_timers) { - c004c538: 740c ld a1,40(s0) - c004c53a: 02040993 addi s3,s0,32 - c004c53e: 0085b903 ld s2,8(a1) + c004c708: 740c ld a1,40(s0) + c004c70a: 02040993 addi s3,s0,32 + c004c70e: 0085b903 ld s2,8(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3861 (discriminator 1) - c004c542: 05359f63 bne a1,s3,c004c5a0 + c004c712: 05359f63 bne a1,s3,c004c770 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3868 js_free_message_pipe(ts->recv_pipe); - c004c546: 6428 ld a0,72(s0) - c004c548: eb9fd0ef jal ra,c004a400 + c004c716: 6428 ld a0,72(s0) + c004c718: eb9fd0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3869 js_free_message_pipe(ts->send_pipe); - c004c54c: 6828 ld a0,80(s0) - c004c54e: eb3fd0ef jal ra,c004a400 + c004c71c: 6828 ld a0,80(s0) + c004c71e: eb3fd0ef jal ra,c004a5d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3872 free(ts); - c004c552: 8522 mv a0,s0 - c004c554: 0a5060ef jal ra,c0052df8 + c004c722: 8522 mv a0,s0 + c004c724: 0a5060ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3874 } - c004c558: 7402 ld s0,32(sp) - c004c55a: 70a2 ld ra,40(sp) - c004c55c: 6942 ld s2,16(sp) - c004c55e: 69a2 ld s3,8(sp) - c004c560: 6a02 ld s4,0(sp) + c004c728: 7402 ld s0,32(sp) + c004c72a: 70a2 ld ra,40(sp) + c004c72c: 6942 ld s2,16(sp) + c004c72e: 69a2 ld s3,8(sp) + c004c730: 6a02 ld s4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3873 JS_SetRuntimeOpaque(rt, NULL); /* fail safe */ - c004c562: 8526 mv a0,s1 + c004c732: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3874 } - c004c564: 64e2 ld s1,24(sp) + c004c734: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3873 JS_SetRuntimeOpaque(rt, NULL); /* fail safe */ - c004c566: 4581 li a1,0 + c004c736: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3874 } - c004c568: 6145 addi sp,sp,48 + c004c738: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3873 JS_SetRuntimeOpaque(rt, NULL); /* fail safe */ - c004c56a: 923ba06f j c0006e8c + c004c73a: 841ba06f j c0006f7a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3853 (discriminator 3) free_rw_handler(rt, rh); - c004c56e: 8526 mv a0,s1 - c004c570: af6fd0ef jal ra,c0049866 + c004c73e: 8526 mv a0,s1 + c004c740: af6fd0ef jal ra,c0049a36 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3851 (discriminator 3) list_for_each_safe(el, el1, &ts->os_rw_handlers) { - c004c574: 85ca mv a1,s2 - c004c576: 00893903 ld s2,8(s2) - c004c57a: b76d j c004c524 + c004c744: 85ca mv a1,s2 + c004c746: 00893903 ld s2,8(s2) + c004c74a: b76d j c004c6f4 free_sh(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1912 list_del(&sh->link); - c004c57c: 854a mv a0,s2 - c004c57e: d3ffb0ef jal ra,c00482bc + c004c74c: 854a mv a0,s2 + c004c74e: d3ffb0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1913 JS_FreeValueRT(rt, sh->func); - c004c582: 01893583 ld a1,24(s2) - c004c586: 02093603 ld a2,32(s2) - c004c58a: 8526 mv a0,s1 - c004c58c: a1afd0ef jal ra,c00497a6 + c004c752: 01893583 ld a1,24(s2) + c004c756: 02093603 ld a2,32(s2) + c004c75a: 8526 mv a0,s1 + c004c75c: a1afd0ef jal ra,c0049976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:1914 js_free_rt(rt, sh); - c004c590: 85ca mv a1,s2 - c004c592: 8526 mv a0,s1 - c004c594: e12ba0ef jal ra,c0006ba6 + c004c760: 85ca mv a1,s2 + c004c762: 8526 mv a0,s1 + c004c764: d30ba0ef jal ra,c0006c94 js_std_free_handlers(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3856 list_for_each_safe(el, el1, &ts->os_signal_handlers) { - c004c598: 894e mv s2,s3 - c004c59a: 0089b983 ld s3,8(s3) - c004c59e: bf59 j c004c534 + c004c768: 894e mv s2,s3 + c004c76a: 0089b983 ld s3,8(s3) + c004c76e: bf59 j c004c704 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3863 (discriminator 3) free_timer(rt, th); - c004c5a0: 8526 mv a0,s1 - c004c5a2: a2afd0ef jal ra,c00497cc + c004c770: 8526 mv a0,s1 + c004c772: a2afd0ef jal ra,c004999c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3861 (discriminator 3) list_for_each_safe(el, el1, &ts->os_timers) { - c004c5a6: 85ca mv a1,s2 - c004c5a8: 00893903 ld s2,8(s2) - c004c5ac: bf59 j c004c542 + c004c776: 85ca mv a1,s2 + c004c778: 00893903 ld s2,8(s2) + c004c77c: bf59 j c004c712 -00000000c004c5ae : +00000000c004c77e : js_std_dump_error(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3908 void js_std_dump_error(JSContext *ctx) { - c004c5ae: 1101 addi sp,sp,-32 - c004c5b0: ec06 sd ra,24(sp) - c004c5b2: e822 sd s0,16(sp) - c004c5b4: 842a mv s0,a0 + c004c77e: 1101 addi sp,sp,-32 + c004c780: ec06 sd ra,24(sp) + c004c782: e822 sd s0,16(sp) + c004c784: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3911 JSValue exception_val; exception_val = JS_GetException(ctx); - c004c5b6: 912be0ef jal ra,c000a6c8 - c004c5ba: 862e mv a2,a1 - c004c5bc: e02a sd a0,0(sp) - c004c5be: e42e sd a1,8(sp) + c004c786: 830be0ef jal ra,c000a7b6 + c004c78a: 862e mv a2,a1 + c004c78c: e02a sd a0,0(sp) + c004c78e: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3912 js_std_dump_error1(ctx, exception_val); - c004c5c0: 85aa mv a1,a0 - c004c5c2: 8522 mv a0,s0 - c004c5c4: 8e8fe0ef jal ra,c004a6ac + c004c790: 85aa mv a1,a0 + c004c792: 8522 mv a0,s0 + c004c794: 8e8fe0ef jal ra,c004a87c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3913 JS_FreeValue(ctx, exception_val); - c004c5c8: 8522 mv a0,s0 + c004c798: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3914 } - c004c5ca: 6442 ld s0,16(sp) + c004c79a: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3913 JS_FreeValue(ctx, exception_val); - c004c5cc: 6582 ld a1,0(sp) - c004c5ce: 6622 ld a2,8(sp) + c004c79c: 6582 ld a1,0(sp) + c004c79e: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3914 } - c004c5d0: 60e2 ld ra,24(sp) - c004c5d2: 6105 addi sp,sp,32 + c004c7a0: 60e2 ld ra,24(sp) + c004c7a2: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3913 JS_FreeValue(ctx, exception_val); - c004c5d4: d39fb06f j c004830c + c004c7a4: d39fb06f j c00484dc -00000000c004c5d8 : +00000000c004c7a8 : call_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2108 { - c004c5d8: 715d addi sp,sp,-80 - c004c5da: e0a2 sd s0,64(sp) - c004c5dc: e486 sd ra,72(sp) - c004c5de: e02e sd a1,0(sp) - c004c5e0: e432 sd a2,8(sp) + c004c7a8: 715d addi sp,sp,-80 + c004c7aa: e0a2 sd s0,64(sp) + c004c7ac: e486 sd ra,72(sp) + c004c7ae: e02e sd a1,0(sp) + c004c7b0: e432 sd a2,8(sp) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004c5e2: 0006071b sext.w a4,a2 - c004c5e6: 57d1 li a5,-12 + c004c7b2: 0006071b sext.w a4,a2 + c004c7b6: 57d1 li a5,-12 call_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2108 - c004c5e8: 842a mv s0,a0 + c004c7b8: 842a mv s0,a0 JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 - c004c5ea: 00e7f563 bgeu a5,a4,c004c5f4 + c004c7ba: 00e7f563 bgeu a5,a4,c004c7c4 /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004c5ee: 419c lw a5,0(a1) - c004c5f0: 2785 addiw a5,a5,1 - c004c5f2: c19c sw a5,0(a1) + c004c7be: 419c lw a5,0(a1) + c004c7c0: 2785 addiw a5,a5,1 + c004c7c2: c19c sw a5,0(a1) call_handler(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2113 ret = JS_Call(ctx, func1, JS_UNDEFINED, 0, NULL); - c004c5f4: 4781 li a5,0 - c004c5f6: 470d li a4,3 - c004c5f8: 4801 li a6,0 - c004c5fa: 4681 li a3,0 - c004c5fc: 8522 mv a0,s0 - c004c5fe: f432 sd a2,40(sp) - c004c600: f02e sd a1,32(sp) - c004c602: 904ed0ef jal ra,c0039706 - c004c606: ec2e sd a1,24(sp) + c004c7c4: 4781 li a5,0 + c004c7c6: 470d li a4,3 + c004c7c8: 4801 li a6,0 + c004c7ca: 4681 li a3,0 + c004c7cc: 8522 mv a0,s0 + c004c7ce: f432 sd a2,40(sp) + c004c7d0: f02e sd a1,32(sp) + c004c7d2: 904ed0ef jal ra,c00398d6 + c004c7d6: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2114 JS_FreeValue(ctx, func1); - c004c608: 7622 ld a2,40(sp) - c004c60a: 7582 ld a1,32(sp) + c004c7d8: 7622 ld a2,40(sp) + c004c7da: 7582 ld a1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2113 ret = JS_Call(ctx, func1, JS_UNDEFINED, 0, NULL); - c004c60c: e82a sd a0,16(sp) + c004c7dc: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2114 JS_FreeValue(ctx, func1); - c004c60e: 8522 mv a0,s0 - c004c610: cfdfb0ef jal ra,c004830c + c004c7de: 8522 mv a0,s0 + c004c7e0: cfdfb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2115 if (JS_IsException(ret)) - c004c614: 4762 lw a4,24(sp) - c004c616: 4799 li a5,6 - c004c618: 00f71563 bne a4,a5,c004c622 + c004c7e4: 4762 lw a4,24(sp) + c004c7e6: 4799 li a5,6 + c004c7e8: 00f71563 bne a4,a5,c004c7f2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2116 js_std_dump_error(ctx); - c004c61c: 8522 mv a0,s0 - c004c61e: f91ff0ef jal ra,c004c5ae + c004c7ec: 8522 mv a0,s0 + c004c7ee: f91ff0ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2117 JS_FreeValue(ctx, ret); - c004c622: 8522 mv a0,s0 + c004c7f2: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2118 } - c004c624: 6406 ld s0,64(sp) + c004c7f4: 6406 ld s0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2117 JS_FreeValue(ctx, ret); - c004c626: 65c2 ld a1,16(sp) - c004c628: 6662 ld a2,24(sp) + c004c7f6: 65c2 ld a1,16(sp) + c004c7f8: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2118 } - c004c62a: 60a6 ld ra,72(sp) - c004c62c: 6161 addi sp,sp,80 + c004c7fa: 60a6 ld ra,72(sp) + c004c7fc: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2117 JS_FreeValue(ctx, ret); - c004c62e: cdffb06f j c004830c + c004c7fe: cdffb06f j c00484dc -00000000c004c632 : +00000000c004c802 : js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2273 { - c004c632: 7151 addi sp,sp,-240 - c004c634: f586 sd ra,232(sp) - c004c636: f1a2 sd s0,224(sp) - c004c638: eda6 sd s1,216(sp) - c004c63a: e5ce sd s3,200(sp) - c004c63c: e9ca sd s2,208(sp) - c004c63e: e1d2 sd s4,192(sp) - c004c640: fd56 sd s5,184(sp) - c004c642: f95a sd s6,176(sp) - c004c644: f55e sd s7,168(sp) - c004c646: f162 sd s8,160(sp) - c004c648: 84aa mv s1,a0 + c004c802: 7151 addi sp,sp,-240 + c004c804: f586 sd ra,232(sp) + c004c806: f1a2 sd s0,224(sp) + c004c808: eda6 sd s1,216(sp) + c004c80a: e5ce sd s3,200(sp) + c004c80c: e9ca sd s2,208(sp) + c004c80e: e1d2 sd s4,192(sp) + c004c810: fd56 sd s5,184(sp) + c004c812: f95a sd s6,176(sp) + c004c814: f55e sd s7,168(sp) + c004c816: f162 sd s8,160(sp) + c004c818: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2274 JSRuntime *rt = JS_GetRuntime(ctx); - c004c64a: 8d5ba0ef jal ra,c0006f1e - c004c64e: 89aa mv s3,a0 + c004c81a: ff2ba0ef jal ra,c000700c + c004c81e: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2275 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004c650: 837ba0ef jal ra,c0006e86 + c004c820: f54ba0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2284 if (!ts->recv_pipe && - c004c654: 653c ld a5,72(a0) + c004c824: 653c ld a5,72(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2275 JSThreadState *ts = JS_GetRuntimeOpaque(rt); - c004c656: 842a mv s0,a0 + c004c826: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2284 if (!ts->recv_pipe && - c004c658: ef89 bnez a5,c004c672 + c004c828: ef89 bnez a5,c004c842 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2285 (discriminator 1) unlikely(os_pending_signals != 0)) { - c004c65a: 000b5617 auipc a2,0xb5 - c004c65e: aae60613 addi a2,a2,-1362 # c0101108 - c004c662: 6214 ld a3,0(a2) + c004c82a: 000b5617 auipc a2,0xb5 + c004c82e: 8de60613 addi a2,a2,-1826 # c0101108 + c004c832: 6214 ld a3,0(a2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2284 (discriminator 1) if (!ts->recv_pipe && - c004c664: c699 beqz a3,c004c672 + c004c834: c699 beqz a3,c004c842 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2289 list_for_each(el, &ts->os_signal_handlers) { - c004c666: 6d18 ld a4,24(a0) - c004c668: 01050593 addi a1,a0,16 + c004c836: 6d18 ld a4,24(a0) + c004c838: 01050593 addi a1,a0,16 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2291 mask = (uint64_t)1 << sh->sig_num; - c004c66c: 4505 li a0,1 + c004c83c: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2289 (discriminator 1) list_for_each(el, &ts->os_signal_handlers) { - c004c66e: 02b71263 bne a4,a1,c004c692 + c004c83e: 02b71263 bne a4,a1,c004c862 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2300 if (list_empty(&ts->os_rw_handlers) && list_empty(&ts->os_timers) && - c004c672: 6418 ld a4,8(s0) + c004c842: 6418 ld a4,8(s0) list_empty(): /Users/Luppy/riscv/quickjs-nuttx/list.h:82 return el->next == el; - c004c674: 741c ld a5,40(s0) + c004c844: 741c ld a5,40(s0) js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2300 - c004c676: 02040913 addi s2,s0,32 - c004c67a: 02e41f63 bne s0,a4,c004c6b8 + c004c846: 02040913 addi s2,s0,32 + c004c84a: 02e41f63 bne s0,a4,c004c888 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2300 (discriminator 1) - c004c67e: 03279f63 bne a5,s2,c004c6bc + c004c84e: 03279f63 bne a5,s2,c004c88c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2300 (discriminator 2) - c004c682: 7c18 ld a4,56(s0) + c004c852: 7c18 ld a4,56(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2301 (discriminator 2) list_empty(&ts->port_list)) - c004c684: 03040793 addi a5,s0,48 + c004c854: 03040793 addi a5,s0,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2302 (discriminator 2) return -1; /* no more events */ - c004c688: 557d li a0,-1 + c004c858: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2300 (discriminator 2) if (list_empty(&ts->os_rw_handlers) && list_empty(&ts->os_timers) && - c004c68a: 08f70a63 beq a4,a5,c004c71e + c004c85a: 08f70a63 beq a4,a5,c004c8ee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2327 tvp = NULL; - c004c68e: 4701 li a4,0 - c004c690: a889 j c004c6e2 + c004c85e: 4701 li a4,0 + c004c860: a889 j c004c8b2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2291 mask = (uint64_t)1 << sh->sig_num; - c004c692: 4b1c lw a5,16(a4) - c004c694: 00f517b3 sll a5,a0,a5 + c004c862: 4b1c lw a5,16(a4) + c004c864: 00f517b3 sll a5,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2292 if (os_pending_signals & mask) { - c004c698: 00f6f833 and a6,a3,a5 - c004c69c: 00080c63 beqz a6,c004c6b4 + c004c868: 00f6f833 and a6,a3,a5 + c004c86c: 00080c63 beqz a6,c004c884 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2293 os_pending_signals &= ~mask; - c004c6a0: fff7c793 not a5,a5 - c004c6a4: 8ff5 and a5,a5,a3 - c004c6a6: e21c sd a5,0(a2) + c004c870: fff7c793 not a5,a5 + c004c874: 8ff5 and a5,a5,a3 + c004c876: e21c sd a5,0(a2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2294 call_handler(ctx, sh->func); - c004c6a8: 6f0c ld a1,24(a4) - c004c6aa: 7310 ld a2,32(a4) + c004c878: 6f0c ld a1,24(a4) + c004c87a: 7310 ld a2,32(a4) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2363 call_handler(ctx, rh->rw_func[1]); - c004c6ac: 8526 mv a0,s1 - c004c6ae: f2bff0ef jal ra,c004c5d8 - c004c6b2: a0ad j c004c71c + c004c87c: 8526 mv a0,s1 + c004c87e: f2bff0ef jal ra,c004c7a8 + c004c882: a0ad j c004c8ec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2289 (discriminator 2) list_for_each(el, &ts->os_signal_handlers) { - c004c6b4: 6718 ld a4,8(a4) - c004c6b6: bf65 j c004c66e + c004c884: 6718 ld a4,8(a4) + c004c886: bf65 j c004c83e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2304 if (!list_empty(&ts->os_timers)) { - c004c6b8: fd278be3 beq a5,s2,c004c68e + c004c888: fd278be3 beq a5,s2,c004c85e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2305 cur_time = get_time_ms(); - c004c6bc: 85cfd0ef jal ra,c0049718 + c004c88c: 85cfd0ef jal ra,c00498e8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2307 list_for_each(el, &ts->os_timers) { - c004c6c0: 740c ld a1,40(s0) + c004c890: 740c ld a1,40(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2306 min_delay = 10000; - c004c6c2: 6789 lui a5,0x2 - c004c6c4: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> + c004c892: 6789 lui a5,0x2 + c004c894: 71078793 addi a5,a5,1808 # 2710 <__clzdi2-0xbfffd8f0> /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2307 (discriminator 1) list_for_each(el, &ts->os_timers) { - c004c6c8: 07259763 bne a1,s2,c004c736 + c004c898: 07259763 bne a1,s2,c004c906 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2323 tv.tv_sec = min_delay / 1000; - c004c6cc: 3e800713 li a4,1000 - c004c6d0: 02e7c6bb divw a3,a5,a4 + c004c89c: 3e800713 li a4,1000 + c004c8a0: 02e7c6bb divw a3,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2324 tv.tv_usec = (min_delay % 1000) * 1000; - c004c6d4: 02e7e7bb remw a5,a5,a4 + c004c8a4: 02e7e7bb remw a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2323 tv.tv_sec = min_delay / 1000; - c004c6d8: c036 sw a3,0(sp) + c004c8a8: c036 sw a3,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2324 tv.tv_usec = (min_delay % 1000) * 1000; - c004c6da: 02e787bb mulw a5,a5,a4 + c004c8aa: 02e787bb mulw a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2325 tvp = &tv; - c004c6de: 870a mv a4,sp + c004c8ae: 870a mv a4,sp /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2324 tv.tv_usec = (min_delay % 1000) * 1000; - c004c6e0: e43e sd a5,8(sp) + c004c8b0: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2330 FD_ZERO(&rfds); - c004c6e2: f082 sd zero,96(sp) - c004c6e4: f482 sd zero,104(sp) - c004c6e6: f882 sd zero,112(sp) - c004c6e8: fc82 sd zero,120(sp) + c004c8b2: f082 sd zero,96(sp) + c004c8b4: f482 sd zero,104(sp) + c004c8b6: f882 sd zero,112(sp) + c004c8b8: fc82 sd zero,120(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2331 FD_ZERO(&wfds); - c004c6ea: e102 sd zero,128(sp) - c004c6ec: e502 sd zero,136(sp) - c004c6ee: e902 sd zero,144(sp) - c004c6f0: ed02 sd zero,152(sp) + c004c8ba: e102 sd zero,128(sp) + c004c8bc: e502 sd zero,136(sp) + c004c8be: e902 sd zero,144(sp) + c004c8c0: ed02 sd zero,152(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2333 list_for_each(el, &ts->os_rw_handlers) { - c004c6f2: 6414 ld a3,8(s0) + c004c8c2: 6414 ld a3,8(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2332 fd_max = -1; - c004c6f4: 557d li a0,-1 + c004c8c4: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2336 if (!JS_IsNull(rh->rw_func[0])) - c004c6f6: 4589 li a1,2 + c004c8c6: 4589 li a1,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2337 FD_SET(rh->fd, &rfds); - c004c6f8: 4805 li a6,1 + c004c8c8: 4805 li a6,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2333 (discriminator 1) list_for_each(el, &ts->os_rw_handlers) { - c004c6fa: 06d41e63 bne s0,a3,c004c776 + c004c8ca: 06d41e63 bne s0,a3,c004c946 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2342 list_for_each(el, &ts->port_list) { - c004c6fe: 7c10 ld a2,56(s0) - c004c700: 03040993 addi s3,s0,48 + c004c8ce: 7c10 ld a2,56(s0) + c004c8d0: 03040993 addi s3,s0,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2344 if (!JS_IsNull(port->on_message_func)) { - c004c704: 4589 li a1,2 + c004c8d4: 4589 li a1,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2347 FD_SET(ps->read_fd, &rfds); - c004c706: 4805 li a6,1 + c004c8d6: 4805 li a6,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2342 (discriminator 1) list_for_each(el, &ts->port_list) { - c004c708: 0cc99363 bne s3,a2,c004c7ce + c004c8d8: 0cc99363 bne s3,a2,c004c99e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2351 ret = select(fd_max + 1, &rfds, &wfds, NULL, tvp); - c004c70c: 4681 li a3,0 - c004c70e: 0110 addi a2,sp,128 - c004c710: 108c addi a1,sp,96 - c004c712: 2505 addiw a0,a0,1 - c004c714: 6770a0ef jal ra,c005758a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2352 if (ret > 0) { - c004c718: 0ea04663 bgtz a0,c004c804 + c004c8e8: 0ea04663 bgtz a0,c004c9d4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2381 return 0; - c004c71c: 4501 li a0,0 + c004c8ec: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2382 (discriminator 1) } - c004c71e: 70ae ld ra,232(sp) - c004c720: 740e ld s0,224(sp) - c004c722: 64ee ld s1,216(sp) - c004c724: 694e ld s2,208(sp) - c004c726: 69ae ld s3,200(sp) - c004c728: 6a0e ld s4,192(sp) - c004c72a: 7aea ld s5,184(sp) - c004c72c: 7b4a ld s6,176(sp) - c004c72e: 7baa ld s7,168(sp) - c004c730: 7c0a ld s8,160(sp) - c004c732: 616d addi sp,sp,240 - c004c734: 8082 ret + c004c8ee: 70ae ld ra,232(sp) + c004c8f0: 740e ld s0,224(sp) + c004c8f2: 64ee ld s1,216(sp) + c004c8f4: 694e ld s2,208(sp) + c004c8f6: 69ae ld s3,200(sp) + c004c8f8: 6a0e ld s4,192(sp) + c004c8fa: 7aea ld s5,184(sp) + c004c8fc: 7b4a ld s6,176(sp) + c004c8fe: 7baa ld s7,168(sp) + c004c900: 7c0a ld s8,160(sp) + c004c902: 616d addi sp,sp,240 + c004c904: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2309 delay = th->timeout - cur_time; - c004c736: 6d98 ld a4,24(a1) - c004c738: 8f09 sub a4,a4,a0 + c004c906: 6d98 ld a4,24(a1) + c004c908: 8f09 sub a4,a4,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2310 if (delay <= 0) { - c004c73a: 02e04863 bgtz a4,c004c76a + c004c90a: 02e04863 bgtz a4,c004c93a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2313 func = th->func; - c004c73e: 719c ld a5,32(a1) + c004c90e: 719c ld a5,32(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2315 free_timer(rt, th); - c004c740: 854e mv a0,s3 + c004c910: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2313 func = th->func; - c004c742: e13e sd a5,128(sp) - c004c744: 759c ld a5,40(a1) - c004c746: e53e sd a5,136(sp) + c004c912: e13e sd a5,128(sp) + c004c914: 759c ld a5,40(a1) + c004c916: e53e sd a5,136(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2314 th->func = JS_UNDEFINED; - c004c748: 478d li a5,3 - c004c74a: f59c sd a5,40(a1) - c004c74c: 0205b023 sd zero,32(a1) + c004c918: 478d li a5,3 + c004c91a: f59c sd a5,40(a1) + c004c91c: 0205b023 sd zero,32(a1) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2315 free_timer(rt, th); - c004c750: 87cfd0ef jal ra,c00497cc + c004c920: 87cfd0ef jal ra,c004999c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2316 call_handler(ctx, func); - c004c754: 658a ld a1,128(sp) - c004c756: 662a ld a2,136(sp) - c004c758: 8526 mv a0,s1 - c004c75a: e7fff0ef jal ra,c004c5d8 + c004c924: 658a ld a1,128(sp) + c004c926: 662a ld a2,136(sp) + c004c928: 8526 mv a0,s1 + c004c92a: e7fff0ef jal ra,c004c7a8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2317 JS_FreeValue(ctx, func); - c004c75e: 658a ld a1,128(sp) - c004c760: 662a ld a2,136(sp) + c004c92e: 658a ld a1,128(sp) + c004c930: 662a ld a2,136(sp) handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2255 JS_FreeValue(ctx, retval); - c004c762: 8526 mv a0,s1 - c004c764: ba9fb0ef jal ra,c004830c + c004c932: 8526 mv a0,s1 + c004c934: ba9fb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2262 return ret; - c004c768: bf55 j c004c71c + c004c938: bf55 j c004c8ec js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2319 } else if (delay < min_delay) { - c004c76a: 00f75463 bge a4,a5,c004c772 + c004c93a: 00f75463 bge a4,a5,c004c942 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2320 min_delay = delay; - c004c76e: 0007079b sext.w a5,a4 + c004c93e: 0007079b sext.w a5,a4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2307 (discriminator 2) list_for_each(el, &ts->os_timers) { - c004c772: 658c ld a1,8(a1) - c004c774: bf91 j c004c6c8 + c004c942: 658c ld a1,8(a1) + c004c944: bf91 j c004c898 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2335 fd_max = max_int(fd_max, rh->fd); - c004c776: 4a9c lw a5,16(a3) + c004c946: 4a9c lw a5,16(a3) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:71 if (a > b) - c004c778: 863e mv a2,a5 - c004c77a: 00a7d363 bge a5,a0,c004c780 - c004c77e: 862a mv a2,a0 - c004c780: 0006051b sext.w a0,a2 + c004c948: 863e mv a2,a5 + c004c94a: 00a7d363 bge a5,a0,c004c950 + c004c94e: 862a mv a2,a0 + c004c950: 0006051b sext.w a0,a2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2336 if (!JS_IsNull(rh->rw_func[0])) - c004c784: 5290 lw a2,32(a3) - c004c786: 02b60063 beq a2,a1,c004c7a6 + c004c954: 5290 lw a2,32(a3) + c004c956: 02b60063 beq a2,a1,c004c976 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2337 FD_SET(rh->fd, &rfds); - c004c78a: 4057d613 srai a2,a5,0x5 - c004c78e: 0a010893 addi a7,sp,160 - c004c792: 060a slli a2,a2,0x2 - c004c794: 9646 add a2,a2,a7 - c004c796: fc062883 lw a7,-64(a2) - c004c79a: 00f817bb sllw a5,a6,a5 - c004c79e: 0117e7b3 or a5,a5,a7 - c004c7a2: fcf62023 sw a5,-64(a2) + c004c95a: 4057d613 srai a2,a5,0x5 + c004c95e: 0a010893 addi a7,sp,160 + c004c962: 060a slli a2,a2,0x2 + c004c964: 9646 add a2,a2,a7 + c004c966: fc062883 lw a7,-64(a2) + c004c96a: 00f817bb sllw a5,a6,a5 + c004c96e: 0117e7b3 or a5,a5,a7 + c004c972: fcf62023 sw a5,-64(a2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2338 if (!JS_IsNull(rh->rw_func[1])) - c004c7a6: 5a9c lw a5,48(a3) - c004c7a8: 02b78163 beq a5,a1,c004c7ca + c004c976: 5a9c lw a5,48(a3) + c004c978: 02b78163 beq a5,a1,c004c99a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2339 FD_SET(rh->fd, &wfds); - c004c7ac: 4a90 lw a2,16(a3) - c004c7ae: 0a010893 addi a7,sp,160 - c004c7b2: 40565793 srai a5,a2,0x5 - c004c7b6: 078a slli a5,a5,0x2 - c004c7b8: 97c6 add a5,a5,a7 - c004c7ba: fe07a883 lw a7,-32(a5) - c004c7be: 00c8163b sllw a2,a6,a2 - c004c7c2: 01166633 or a2,a2,a7 - c004c7c6: fec7a023 sw a2,-32(a5) + c004c97c: 4a90 lw a2,16(a3) + c004c97e: 0a010893 addi a7,sp,160 + c004c982: 40565793 srai a5,a2,0x5 + c004c986: 078a slli a5,a5,0x2 + c004c988: 97c6 add a5,a5,a7 + c004c98a: fe07a883 lw a7,-32(a5) + c004c98e: 00c8163b sllw a2,a6,a2 + c004c992: 01166633 or a2,a2,a7 + c004c996: fec7a023 sw a2,-32(a5) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2333 (discriminator 2) list_for_each(el, &ts->os_rw_handlers) { - c004c7ca: 6694 ld a3,8(a3) - c004c7cc: b73d j c004c6fa + c004c99a: 6694 ld a3,8(a3) + c004c99c: b73d j c004c8ca /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2344 if (!JS_IsNull(port->on_message_func)) { - c004c7ce: 521c lw a5,32(a2) - c004c7d0: 02b78863 beq a5,a1,c004c800 + c004c99e: 521c lw a5,32(a2) + c004c9a0: 02b78863 beq a5,a1,c004c9d0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2346 fd_max = max_int(fd_max, ps->read_fd); - c004c7d4: 6a1c ld a5,16(a2) - c004c7d6: 43bc lw a5,64(a5) + c004c9a4: 6a1c ld a5,16(a2) + c004c9a6: 43bc lw a5,64(a5) /Users/Luppy/riscv/quickjs-nuttx/cutils.h:71 - c004c7d8: 86be mv a3,a5 - c004c7da: 00a7d363 bge a5,a0,c004c7e0 - c004c7de: 86aa mv a3,a0 - c004c7e0: 0006851b sext.w a0,a3 + c004c9a8: 86be mv a3,a5 + c004c9aa: 00a7d363 bge a5,a0,c004c9b0 + c004c9ae: 86aa mv a3,a0 + c004c9b0: 0006851b sext.w a0,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2347 FD_SET(ps->read_fd, &rfds); - c004c7e4: 4057d693 srai a3,a5,0x5 - c004c7e8: 0a010893 addi a7,sp,160 - c004c7ec: 068a slli a3,a3,0x2 - c004c7ee: 96c6 add a3,a3,a7 - c004c7f0: fc06a883 lw a7,-64(a3) - c004c7f4: 00f817bb sllw a5,a6,a5 - c004c7f8: 0117e7b3 or a5,a5,a7 - c004c7fc: fcf6a023 sw a5,-64(a3) + c004c9b4: 4057d693 srai a3,a5,0x5 + c004c9b8: 0a010893 addi a7,sp,160 + c004c9bc: 068a slli a3,a3,0x2 + c004c9be: 96c6 add a3,a3,a7 + c004c9c0: fc06a883 lw a7,-64(a3) + c004c9c4: 00f817bb sllw a5,a6,a5 + c004c9c8: 0117e7b3 or a5,a5,a7 + c004c9cc: fcf6a023 sw a5,-64(a3) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2342 (discriminator 2) list_for_each(el, &ts->port_list) { - c004c800: 6610 ld a2,8(a2) - c004c802: b719 j c004c708 + c004c9d0: 6610 ld a2,8(a2) + c004c9d2: b719 j c004c8d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2353 list_for_each(el, &ts->os_rw_handlers) { - c004c804: 641c ld a5,8(s0) + c004c9d4: 641c ld a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2355 if (!JS_IsNull(rh->rw_func[0]) && - c004c806: 4509 li a0,2 + c004c9d6: 4509 li a0,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2356 FD_ISSET(rh->fd, &rfds)) { - c004c808: 4805 li a6,1 + c004c9d8: 4805 li a6,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2353 (discriminator 1) list_for_each(el, &ts->os_rw_handlers) { - c004c80a: 0cf41963 bne s0,a5,c004c8dc + c004c9da: 0cf41963 bne s0,a5,c004caac /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2369 list_for_each(el, &ts->port_list) { - c004c80e: 7c00 ld s0,56(s0) + c004c9de: 7c00 ld s0,56(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2371 if (!JS_IsNull(port->on_message_func)) { - c004c810: 4a89 li s5,2 + c004c9e0: 4a89 li s5,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2373 if (FD_ISSET(ps->read_fd, &rfds)) { - c004c812: 4b05 li s6,1 + c004c9e2: 4b05 li s6,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2369 (discriminator 1) list_for_each(el, &ts->port_list) { - c004c814: f08984e3 beq s3,s0,c004c71c + c004c9e4: f08984e3 beq s3,s0,c004c8ec /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2371 if (!JS_IsNull(port->on_message_func)) { - c004c818: 501c lw a5,32(s0) - c004c81a: 19578463 beq a5,s5,c004c9a2 + c004c9e8: 501c lw a5,32(s0) + c004c9ea: 19578463 beq a5,s5,c004cb72 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2372 JSWorkerMessagePipe *ps = port->recv_pipe; - c004c81e: 01043903 ld s2,16(s0) + c004c9ee: 01043903 ld s2,16(s0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2373 if (FD_ISSET(ps->read_fd, &rfds)) { - c004c822: 1114 addi a3,sp,160 - c004c824: 04092783 lw a5,64(s2) - c004c828: 4057d713 srai a4,a5,0x5 - c004c82c: 070a slli a4,a4,0x2 - c004c82e: 9736 add a4,a4,a3 - c004c830: 00fb16bb sllw a3,s6,a5 - c004c834: fc072783 lw a5,-64(a4) - c004c838: 8ff5 and a5,a5,a3 - c004c83a: 2781 sext.w a5,a5 - c004c83c: 16078363 beqz a5,c004c9a2 + c004c9f2: 1114 addi a3,sp,160 + c004c9f4: 04092783 lw a5,64(s2) + c004c9f8: 4057d713 srai a4,a5,0x5 + c004c9fc: 070a slli a4,a4,0x2 + c004c9fe: 9736 add a4,a4,a3 + c004ca00: 00fb16bb sllw a3,s6,a5 + c004ca04: fc072783 lw a5,-64(a4) + c004ca08: 8ff5 and a5,a5,a3 + c004ca0a: 2781 sext.w a5,a5 + c004ca0c: 16078363 beqz a5,c004cb72 handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2209 pthread_mutex_lock(&ps->mutex); - c004c840: 00890b93 addi s7,s2,8 - c004c844: 855e mv a0,s7 - c004c846: 6e4070ef jal ra,c0053f2a + c004ca10: 00890b93 addi s7,s2,8 + c004ca14: 855e mv a0,s7 + c004ca16: 6e4070ef jal ra,c00540fa list_empty(): /Users/Luppy/riscv/quickjs-nuttx/list.h:82 - c004c84a: 03893a03 ld s4,56(s2) + c004ca1a: 03893a03 ld s4,56(s2) handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2210 if (!list_empty(&ps->msg_queue)) { - c004c84e: 03090c13 addi s8,s2,48 - c004c852: 154c0563 beq s8,s4,c004c99c + c004ca1e: 03090c13 addi s8,s2,48 + c004ca22: 154c0563 beq s8,s4,c004cb6c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2215 list_del(&msg->link); - c004c856: 8552 mv a0,s4 - c004c858: a65fb0ef jal ra,c00482bc + c004ca26: 8552 mv a0,s4 + c004ca28: a65fb0ef jal ra,c004848c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2217 if (list_empty(&ps->msg_queue)) { - c004c85c: 03893783 ld a5,56(s2) - c004c860: 02fc1763 bne s8,a5,c004c88e + c004ca2c: 03893783 ld a5,56(s2) + c004ca30: 02fc1763 bne s8,a5,c004ca5e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2224 if (errno != EAGAIN && errno != EINTR) - c004c864: 4aad li s5,11 - c004c866: 4991 li s3,4 + c004ca34: 4aad li s5,11 + c004ca36: 4991 li s3,4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2221 ret = read(ps->read_fd, buf, sizeof(buf)); - c004c868: 04092503 lw a0,64(s2) - c004c86c: 4641 li a2,16 - c004c86e: 088c addi a1,sp,80 - c004c870: 4c90a0ef jal ra,c0057538 + c004ca38: 04092503 lw a0,64(s2) + c004ca3c: 4641 li a2,16 + c004ca3e: 088c addi a1,sp,80 + c004ca40: 4c90a0ef jal ra,c0057708 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2222 if (ret >= 0) - c004c874: 2501 sext.w a0,a0 - c004c876: 00055c63 bgez a0,c004c88e + c004ca44: 2501 sext.w a0,a0 + c004ca46: 00055c63 bgez a0,c004ca5e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2224 if (errno != EAGAIN && errno != EINTR) - c004c87a: 25a070ef jal ra,c0053ad4 <__errno> - c004c87e: 411c lw a5,0(a0) - c004c880: ff5784e3 beq a5,s5,c004c868 - c004c884: 250070ef jal ra,c0053ad4 <__errno> - c004c888: 411c lw a5,0(a0) - c004c88a: fd378fe3 beq a5,s3,c004c868 + c004ca4a: 25a070ef jal ra,c0053ca4 <__errno> + c004ca4e: 411c lw a5,0(a0) + c004ca50: ff5784e3 beq a5,s5,c004ca38 + c004ca54: 250070ef jal ra,c0053ca4 <__errno> + c004ca58: 411c lw a5,0(a0) + c004ca5a: fd378fe3 beq a5,s3,c004ca38 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2229 pthread_mutex_unlock(&ps->mutex); - c004c88e: 855e mv a0,s7 - c004c890: 4990a0ef jal ra,c0057528 + c004ca5e: 855e mv a0,s7 + c004ca60: 4990a0ef jal ra,c00576f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2231 data_obj = JS_ReadObject(ctx, msg->data, msg->data_len, - c004c894: 018a3603 ld a2,24(s4) - c004c898: 010a3583 ld a1,16(s4) - c004c89c: 46b1 li a3,12 - c004c89e: 8526 mv a0,s1 - c004c8a0: 9e4f60ef jal ra,c0042a84 - c004c8a4: f02a sd a0,32(sp) + c004ca64: 018a3603 ld a2,24(s4) + c004ca68: 010a3583 ld a1,16(s4) + c004ca6c: 46b1 li a3,12 + c004ca6e: 8526 mv a0,s1 + c004ca70: 9e4f60ef jal ra,c0042c54 + c004ca74: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2234 js_free_message(msg); - c004c8a6: 8552 mv a0,s4 + c004ca76: 8552 mv a0,s4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2231 data_obj = JS_ReadObject(ctx, msg->data, msg->data_len, - c004c8a8: f42e sd a1,40(sp) + c004ca78: f42e sd a1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2234 js_free_message(msg); - c004c8aa: b19fd0ef jal ra,c004a3c2 + c004ca7a: b19fd0ef jal ra,c004a592 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2236 if (JS_IsException(data_obj)) - c004c8ae: 57a2 lw a5,40(sp) - c004c8b0: 4919 li s2,6 - c004c8b2: 03278163 beq a5,s2,c004c8d4 + c004ca7e: 57a2 lw a5,40(sp) + c004ca80: 4919 li s2,6 + c004ca82: 03278163 beq a5,s2,c004caa4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2238 obj = JS_NewObject(ctx); - c004c8b6: 8526 mv a0,s1 - c004c8b8: cd0ca0ef jal ra,c0016d88 - c004c8bc: e82a sd a0,16(sp) - c004c8be: ec2e sd a1,24(sp) + c004ca86: 8526 mv a0,s1 + c004ca88: cd0ca0ef jal ra,c0016f58 + c004ca8c: e82a sd a0,16(sp) + c004ca8e: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2239 if (JS_IsException(obj)) { - c004c8c0: 0005879b sext.w a5,a1 + c004ca90: 0005879b sext.w a5,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2238 obj = JS_NewObject(ctx); - c004c8c4: 862e mv a2,a1 + c004ca94: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2239 if (JS_IsException(obj)) { - c004c8c6: 07279563 bne a5,s2,c004c930 + c004ca96: 07279563 bne a5,s2,c004cb00 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2240 JS_FreeValue(ctx, data_obj); - c004c8ca: 7582 ld a1,32(sp) - c004c8cc: 7622 ld a2,40(sp) - c004c8ce: 8526 mv a0,s1 - c004c8d0: a3dfb0ef jal ra,c004830c + c004ca9a: 7582 ld a1,32(sp) + c004ca9c: 7622 ld a2,40(sp) + c004ca9e: 8526 mv a0,s1 + c004caa0: a3dfb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2253 js_std_dump_error(ctx); - c004c8d4: 8526 mv a0,s1 - c004c8d6: cd9ff0ef jal ra,c004c5ae - c004c8da: b589 j c004c71c + c004caa4: 8526 mv a0,s1 + c004caa6: cd9ff0ef jal ra,c004c77e + c004caaa: b589 j c004c8ec JS_IsNull(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:600 return JS_VALUE_GET_TAG(v) == JS_TAG_NULL; - c004c8dc: 7390 ld a2,32(a5) + c004caac: 7390 ld a2,32(a5) js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2355 if (!JS_IsNull(rh->rw_func[0]) && - c004c8de: 0006071b sext.w a4,a2 - c004c8e2: 02a70163 beq a4,a0,c004c904 + c004caae: 0006071b sext.w a4,a2 + c004cab2: 02a70163 beq a4,a0,c004cad4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2356 (discriminator 1) FD_ISSET(rh->fd, &rfds)) { - c004c8e6: 4b98 lw a4,16(a5) - c004c8e8: 110c addi a1,sp,160 - c004c8ea: 40575693 srai a3,a4,0x5 - c004c8ee: 068a slli a3,a3,0x2 - c004c8f0: 96ae add a3,a3,a1 - c004c8f2: 00e815bb sllw a1,a6,a4 - c004c8f6: fc06a703 lw a4,-64(a3) - c004c8fa: 8f6d and a4,a4,a1 + c004cab6: 4b98 lw a4,16(a5) + c004cab8: 110c addi a1,sp,160 + c004caba: 40575693 srai a3,a4,0x5 + c004cabe: 068a slli a3,a3,0x2 + c004cac0: 96ae add a3,a3,a1 + c004cac2: 00e815bb sllw a1,a6,a4 + c004cac6: fc06a703 lw a4,-64(a3) + c004caca: 8f6d and a4,a4,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2355 (discriminator 1) if (!JS_IsNull(rh->rw_func[0]) && - c004c8fc: 2701 sext.w a4,a4 - c004c8fe: c319 beqz a4,c004c904 + c004cacc: 2701 sext.w a4,a4 + c004cace: c319 beqz a4,c004cad4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2357 call_handler(ctx, rh->rw_func[0]); - c004c900: 6f8c ld a1,24(a5) - c004c902: b36d j c004c6ac + c004cad0: 6f8c ld a1,24(a5) + c004cad2: b36d j c004c87c JS_IsNull(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:600 - c004c904: 7b90 ld a2,48(a5) + c004cad4: 7b90 ld a2,48(a5) js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2361 if (!JS_IsNull(rh->rw_func[1]) && - c004c906: 0006071b sext.w a4,a2 - c004c90a: 02a70163 beq a4,a0,c004c92c + c004cad6: 0006071b sext.w a4,a2 + c004cada: 02a70163 beq a4,a0,c004cafc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2362 (discriminator 1) FD_ISSET(rh->fd, &wfds)) { - c004c90e: 4b98 lw a4,16(a5) - c004c910: 110c addi a1,sp,160 - c004c912: 40575693 srai a3,a4,0x5 - c004c916: 068a slli a3,a3,0x2 - c004c918: 96ae add a3,a3,a1 - c004c91a: 00e815bb sllw a1,a6,a4 - c004c91e: fe06a703 lw a4,-32(a3) - c004c922: 8f6d and a4,a4,a1 + c004cade: 4b98 lw a4,16(a5) + c004cae0: 110c addi a1,sp,160 + c004cae2: 40575693 srai a3,a4,0x5 + c004cae6: 068a slli a3,a3,0x2 + c004cae8: 96ae add a3,a3,a1 + c004caea: 00e815bb sllw a1,a6,a4 + c004caee: fe06a703 lw a4,-32(a3) + c004caf2: 8f6d and a4,a4,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2361 (discriminator 1) if (!JS_IsNull(rh->rw_func[1]) && - c004c924: 2701 sext.w a4,a4 - c004c926: c319 beqz a4,c004c92c + c004caf4: 2701 sext.w a4,a4 + c004caf6: c319 beqz a4,c004cafc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2363 call_handler(ctx, rh->rw_func[1]); - c004c928: 778c ld a1,40(a5) - c004c92a: b349 j c004c6ac + c004caf8: 778c ld a1,40(a5) + c004cafa: b349 j c004c87c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2353 (discriminator 2) list_for_each(el, &ts->os_rw_handlers) { - c004c92c: 679c ld a5,8(a5) - c004c92e: bdf1 j c004c80a + c004cafc: 679c ld a5,8(a5) + c004cafe: bdf1 j c004c9da handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2243 JS_DefinePropertyValueStr(ctx, obj, "data", data_obj, JS_PROP_C_W_E); - c004c930: 7702 ld a4,32(sp) - c004c932: 77a2 ld a5,40(sp) - c004c934: 85aa mv a1,a0 - c004c936: 481d li a6,7 - c004c938: 00024697 auipc a3,0x24 - c004c93c: 57868693 addi a3,a3,1400 # c0070eb0 - c004c940: 8526 mv a0,s1 - c004c942: e17dc0ef jal ra,c0029758 + c004cb00: 7702 ld a4,32(sp) + c004cb02: 77a2 ld a5,40(sp) + c004cb04: 85aa mv a1,a0 + c004cb06: 481d li a6,7 + c004cb08: 00024697 auipc a3,0x24 + c004cb0c: 60868693 addi a3,a3,1544 # c0071110 + c004cb10: 8526 mv a0,s1 + c004cb12: e17dc0ef jal ra,c0029928 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2247 func = JS_DupValue(ctx, port->on_message_func); - c004c946: 7010 ld a2,32(s0) + c004cb16: 7010 ld a2,32(s0) JS_DupValue(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:668 if (JS_VALUE_HAS_REF_COUNT(v)) { - c004c948: 57d1 li a5,-12 - c004c94a: 6c0c ld a1,24(s0) - c004c94c: 0006071b sext.w a4,a2 - c004c950: 00e7f563 bgeu a5,a4,c004c95a + c004cb18: 57d1 li a5,-12 + c004cb1a: 6c0c ld a1,24(s0) + c004cb1c: 0006071b sext.w a4,a2 + c004cb20: 00e7f563 bgeu a5,a4,c004cb2a /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:670 p->ref_count++; - c004c954: 419c lw a5,0(a1) - c004c956: 2785 addiw a5,a5,1 - c004c958: c19c sw a5,0(a1) + c004cb24: 419c lw a5,0(a1) + c004cb26: 2785 addiw a5,a5,1 + c004cb28: c19c sw a5,0(a1) handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2248 retval = JS_Call(ctx, func, JS_UNDEFINED, 1, (JSValueConst *)&obj); - c004c95a: 478d li a5,3 - c004c95c: 470d li a4,3 - c004c95e: 01010813 addi a6,sp,16 - c004c962: 4681 li a3,0 - c004c964: ecbe sd a5,88(sp) - c004c966: 8526 mv a0,s1 - c004c968: 4785 li a5,1 - c004c96a: fc32 sd a2,56(sp) - c004c96c: f82e sd a1,48(sp) - c004c96e: e882 sd zero,80(sp) - c004c970: d97ec0ef jal ra,c0039706 + c004cb2a: 478d li a5,3 + c004cb2c: 470d li a4,3 + c004cb2e: 01010813 addi a6,sp,16 + c004cb32: 4681 li a3,0 + c004cb34: ecbe sd a5,88(sp) + c004cb36: 8526 mv a0,s1 + c004cb38: 4785 li a5,1 + c004cb3a: fc32 sd a2,56(sp) + c004cb3c: f82e sd a1,48(sp) + c004cb3e: e882 sd zero,80(sp) + c004cb40: d97ec0ef jal ra,c00398d6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2249 JS_FreeValue(ctx, obj); - c004c974: 6662 ld a2,24(sp) + c004cb44: 6662 ld a2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2248 retval = JS_Call(ctx, func, JS_UNDEFINED, 1, (JSValueConst *)&obj); - c004c976: e4ae sd a1,72(sp) + c004cb46: e4ae sd a1,72(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2249 JS_FreeValue(ctx, obj); - c004c978: 65c2 ld a1,16(sp) + c004cb48: 65c2 ld a1,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2248 retval = JS_Call(ctx, func, JS_UNDEFINED, 1, (JSValueConst *)&obj); - c004c97a: e0aa sd a0,64(sp) + c004cb4a: e0aa sd a0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2249 JS_FreeValue(ctx, obj); - c004c97c: 8526 mv a0,s1 - c004c97e: 98ffb0ef jal ra,c004830c + c004cb4c: 8526 mv a0,s1 + c004cb4e: 98ffb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2250 JS_FreeValue(ctx, func); - c004c982: 7662 ld a2,56(sp) - c004c984: 75c2 ld a1,48(sp) - c004c986: 8526 mv a0,s1 - c004c988: 985fb0ef jal ra,c004830c + c004cb52: 7662 ld a2,56(sp) + c004cb54: 75c2 ld a1,48(sp) + c004cb56: 8526 mv a0,s1 + c004cb58: 985fb0ef jal ra,c00484dc JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 return js_unlikely(JS_VALUE_GET_TAG(v) == JS_TAG_EXCEPTION); - c004c98c: 6626 ld a2,72(sp) + c004cb5c: 6626 ld a2,72(sp) handle_posted_message(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2251 if (JS_IsException(retval)) { - c004c98e: 4799 li a5,6 - c004c990: 0006071b sext.w a4,a2 - c004c994: f4f700e3 beq a4,a5,c004c8d4 + c004cb5e: 4799 li a5,6 + c004cb60: 0006071b sext.w a4,a2 + c004cb64: f4f700e3 beq a4,a5,c004caa4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2255 JS_FreeValue(ctx, retval); - c004c998: 6586 ld a1,64(sp) - c004c99a: b3e1 j c004c762 + c004cb68: 6586 ld a1,64(sp) + c004cb6a: b3e1 j c004c932 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2259 pthread_mutex_unlock(&ps->mutex); - c004c99c: 855e mv a0,s7 - c004c99e: 38b0a0ef jal ra,c0057528 + c004cb6c: 855e mv a0,s7 + c004cb6e: 38b0a0ef jal ra,c00576f8 js_os_poll(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:2369 (discriminator 2) list_for_each(el, &ts->port_list) { - c004c9a2: 6400 ld s0,8(s0) - c004c9a4: bd85 j c004c814 + c004cb72: 6400 ld s0,8(s0) + c004cb74: bd85 j c004c9e4 -00000000c004c9a6 : +00000000c004cb76 : js_std_promise_rejection_tracker(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3919 @@ -210320,60 +210518,60 @@ void js_std_promise_rejection_tracker(JSContext *ctx, JSValueConst promise, JSValueConst reason, BOOL is_handled, void *opaque) { - c004c9a6: 7179 addi sp,sp,-48 - c004c9a8: f406 sd ra,40(sp) - c004c9aa: f022 sd s0,32(sp) - c004c9ac: e036 sd a3,0(sp) - c004c9ae: e43a sd a4,8(sp) + c004cb76: 7179 addi sp,sp,-48 + c004cb78: f406 sd ra,40(sp) + c004cb7a: f022 sd s0,32(sp) + c004cb7c: e036 sd a3,0(sp) + c004cb7e: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3920 if (!is_handled) { - c004c9b0: e785 bnez a5,c004c9d8 - c004c9b2: 842a mv s0,a0 + c004cb80: e785 bnez a5,c004cba8 + c004cb82: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3921 fprintf(stderr, "Possibly unhandled promise rejection: "); - c004c9b4: 4509 li a0,2 - c004c9b6: 633080ef jal ra,c00557e8 - c004c9ba: 85aa mv a1,a0 - c004c9bc: 00024517 auipc a0,0x24 - c004c9c0: 4fc50513 addi a0,a0,1276 # c0070eb8 - c004c9c4: 4e7080ef jal ra,c00556aa + c004cb84: 4509 li a0,2 + c004cb86: 633080ef jal ra,c00559b8 + c004cb8a: 85aa mv a1,a0 + c004cb8c: 00024517 auipc a0,0x24 + c004cb90: 58c50513 addi a0,a0,1420 # c0071118 + c004cb94: 4e7080ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3922 js_std_dump_error1(ctx, reason); - c004c9c8: 8522 mv a0,s0 + c004cb98: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3924 } } - c004c9ca: 7402 ld s0,32(sp) + c004cb9a: 7402 ld s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3922 js_std_dump_error1(ctx, reason); - c004c9cc: 6582 ld a1,0(sp) - c004c9ce: 6622 ld a2,8(sp) + c004cb9c: 6582 ld a1,0(sp) + c004cb9e: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3924 } - c004c9d0: 70a2 ld ra,40(sp) - c004c9d2: 6145 addi sp,sp,48 + c004cba0: 70a2 ld ra,40(sp) + c004cba2: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3922 js_std_dump_error1(ctx, reason); - c004c9d4: cd9fd06f j c004a6ac + c004cba4: cd9fd06f j c004a87c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3924 } - c004c9d8: 70a2 ld ra,40(sp) - c004c9da: 7402 ld s0,32(sp) - c004c9dc: 6145 addi sp,sp,48 - c004c9de: 8082 ret + c004cba8: 70a2 ld ra,40(sp) + c004cbaa: 7402 ld s0,32(sp) + c004cbac: 6145 addi sp,sp,48 + c004cbae: 8082 ret -00000000c004c9e0 : +00000000c004cbb0 : js_std_loop(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3928 /* main loop which calls the user JS callbacks */ void js_std_loop(JSContext *ctx) { - c004c9e0: 7179 addi sp,sp,-48 - c004c9e2: f022 sd s0,32(sp) - c004c9e4: ec26 sd s1,24(sp) - c004c9e6: f406 sd ra,40(sp) - c004c9e8: 842a mv s0,a0 + c004cbb0: 7179 addi sp,sp,-48 + c004cbb2: f022 sd s0,32(sp) + c004cbb4: ec26 sd s1,24(sp) + c004cbb6: f406 sd ra,40(sp) + c004cbb8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3944 } break; @@ -210381,43 +210579,43 @@ void js_std_loop(JSContext *ctx) } if (!os_poll_func || os_poll_func(ctx)) - c004c9ea: 000b4497 auipc s1,0xb4 - c004c9ee: 72648493 addi s1,s1,1830 # c0101110 + c004cbba: 000b4497 auipc s1,0xb4 + c004cbbe: 55648493 addi s1,s1,1366 # c0101110 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3935 err = JS_ExecutePendingJob(JS_GetRuntime(ctx), &ctx1); - c004c9f2: 8522 mv a0,s0 - c004c9f4: d2aba0ef jal ra,c0006f1e - c004c9f8: 002c addi a1,sp,8 - c004c9fa: dd2bb0ef jal ra,c0007fcc + c004cbc2: 8522 mv a0,s0 + c004cbc4: c48ba0ef jal ra,c000700c + c004cbc8: 002c addi a1,sp,8 + c004cbca: cf0bb0ef jal ra,c00080ba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3936 if (err <= 0) { - c004c9fe: fea04ae3 bgtz a0,c004c9f2 + c004cbce: fea04ae3 bgtz a0,c004cbc2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3937 if (err < 0) { - c004ca02: c501 beqz a0,c004ca0a + c004cbd2: c501 beqz a0,c004cbda /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3938 js_std_dump_error(ctx1); - c004ca04: 6522 ld a0,8(sp) - c004ca06: ba9ff0ef jal ra,c004c5ae + c004cbd4: 6522 ld a0,8(sp) + c004cbd6: ba9ff0ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3944 if (!os_poll_func || os_poll_func(ctx)) - c004ca0a: 609c ld a5,0(s1) - c004ca0c: c781 beqz a5,c004ca14 + c004cbda: 609c ld a5,0(s1) + c004cbdc: c781 beqz a5,c004cbe4 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3944 (discriminator 1) - c004ca0e: 8522 mv a0,s0 - c004ca10: 9782 jalr a5 - c004ca12: d165 beqz a0,c004c9f2 + c004cbde: 8522 mv a0,s0 + c004cbe0: 9782 jalr a5 + c004cbe2: d165 beqz a0,c004cbc2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3947 break; } } - c004ca14: 70a2 ld ra,40(sp) - c004ca16: 7402 ld s0,32(sp) - c004ca18: 64e2 ld s1,24(sp) - c004ca1a: 6145 addi sp,sp,48 - c004ca1c: 8082 ret + c004cbe4: 70a2 ld ra,40(sp) + c004cbe6: 7402 ld s0,32(sp) + c004cbe8: 64e2 ld s1,24(sp) + c004cbea: 6145 addi sp,sp,48 + c004cbec: 8082 ret -00000000c004ca1e : +00000000c004cbee : js_std_await(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3953 @@ -210426,15 +210624,15 @@ js_std_await(): rejection. */ JSValue js_std_await(JSContext *ctx, JSValue obj) { - c004ca1e: 7159 addi sp,sp,-112 - c004ca20: f0a2 sd s0,96(sp) - c004ca22: eca6 sd s1,88(sp) - c004ca24: e8ca sd s2,80(sp) - c004ca26: e4ce sd s3,72(sp) - c004ca28: f486 sd ra,104(sp) - c004ca2a: 842a mv s0,a0 - c004ca2c: e02e sd a1,0(sp) - c004ca2e: e432 sd a2,8(sp) + c004cbee: 7159 addi sp,sp,-112 + c004cbf0: f0a2 sd s0,96(sp) + c004cbf2: eca6 sd s1,88(sp) + c004cbf4: e8ca sd s2,80(sp) + c004cbf6: e4ce sd s3,72(sp) + c004cbf8: f486 sd ra,104(sp) + c004cbfa: 842a mv s0,a0 + c004cbfc: e02e sd a1,0(sp) + c004cbfe: e432 sd a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3959 JSValue ret; int state; @@ -210442,13 +210640,13 @@ JSValue js_std_await(JSContext *ctx, JSValue obj) for(;;) { state = JS_PromiseState(ctx, obj); if (state == JS_PROMISE_FULFILLED) { - c004ca30: 4485 li s1,1 + c004cc00: 4485 li s1,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3963 ret = JS_PromiseResult(ctx, obj); JS_FreeValue(ctx, obj); break; } else if (state == JS_PROMISE_REJECTED) { - c004ca32: 4909 li s2,2 + c004cc02: 4909 li s2,2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3974 int err; err = JS_ExecutePendingJob(JS_GetRuntime(ctx), &ctx1); @@ -210456,38 +210654,38 @@ JSValue js_std_await(JSContext *ctx, JSValue obj) js_std_dump_error(ctx1); } if (os_poll_func) - c004ca34: 000b4997 auipc s3,0xb4 - c004ca38: 6dc98993 addi s3,s3,1756 # c0101110 + c004cc04: 000b4997 auipc s3,0xb4 + c004cc08: 50c98993 addi s3,s3,1292 # c0101110 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3958 state = JS_PromiseState(ctx, obj); - c004ca3c: 6582 ld a1,0(sp) - c004ca3e: 6622 ld a2,8(sp) - c004ca40: 8522 mv a0,s0 - c004ca42: cf2be0ef jal ra,c000af34 - c004ca46: 2501 sext.w a0,a0 + c004cc0c: 6582 ld a1,0(sp) + c004cc0e: 6622 ld a2,8(sp) + c004cc10: 8522 mv a0,s0 + c004cc12: c10be0ef jal ra,c000b022 + c004cc16: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3959 if (state == JS_PROMISE_FULFILLED) { - c004ca48: 02951763 bne a0,s1,c004ca76 + c004cc18: 02951763 bne a0,s1,c004cc46 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3960 ret = JS_PromiseResult(ctx, obj); - c004ca4c: 6582 ld a1,0(sp) - c004ca4e: 6622 ld a2,8(sp) - c004ca50: 8522 mv a0,s0 - c004ca52: d06be0ef jal ra,c000af58 + c004cc1c: 6582 ld a1,0(sp) + c004cc1e: 6622 ld a2,8(sp) + c004cc20: 8522 mv a0,s0 + c004cc22: c24be0ef jal ra,c000b046 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3964 ret = JS_Throw(ctx, JS_PromiseResult(ctx, obj)); - c004ca56: ec2e sd a1,24(sp) + c004cc26: ec2e sd a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3965 JS_FreeValue(ctx, obj); - c004ca58: 6622 ld a2,8(sp) - c004ca5a: 6582 ld a1,0(sp) + c004cc28: 6622 ld a2,8(sp) + c004cc2a: 6582 ld a1,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3964 ret = JS_Throw(ctx, JS_PromiseResult(ctx, obj)); - c004ca5c: e82a sd a0,16(sp) + c004cc2c: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3965 JS_FreeValue(ctx, obj); - c004ca5e: 8522 mv a0,s0 - c004ca60: 8adfb0ef jal ra,c004830c + c004cc2e: 8522 mv a0,s0 + c004cc30: 8adfb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3983 ret = obj; break; @@ -210495,268 +210693,268 @@ JSValue js_std_await(JSContext *ctx, JSValue obj) } return ret; } - c004ca64: 70a6 ld ra,104(sp) - c004ca66: 7406 ld s0,96(sp) - c004ca68: 6542 ld a0,16(sp) - c004ca6a: 65e2 ld a1,24(sp) - c004ca6c: 64e6 ld s1,88(sp) - c004ca6e: 6946 ld s2,80(sp) - c004ca70: 69a6 ld s3,72(sp) - c004ca72: 6165 addi sp,sp,112 - c004ca74: 8082 ret + c004cc34: 70a6 ld ra,104(sp) + c004cc36: 7406 ld s0,96(sp) + c004cc38: 6542 ld a0,16(sp) + c004cc3a: 65e2 ld a1,24(sp) + c004cc3c: 64e6 ld s1,88(sp) + c004cc3e: 6946 ld s2,80(sp) + c004cc40: 69a6 ld s3,72(sp) + c004cc42: 6165 addi sp,sp,112 + c004cc44: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3963 } else if (state == JS_PROMISE_REJECTED) { - c004ca76: 01251d63 bne a0,s2,c004ca90 + c004cc46: 01251d63 bne a0,s2,c004cc60 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3964 ret = JS_Throw(ctx, JS_PromiseResult(ctx, obj)); - c004ca7a: 6622 ld a2,8(sp) - c004ca7c: 6582 ld a1,0(sp) - c004ca7e: 8522 mv a0,s0 - c004ca80: cd8be0ef jal ra,c000af58 - c004ca84: 862e mv a2,a1 - c004ca86: 85aa mv a1,a0 - c004ca88: 8522 mv a0,s0 - c004ca8a: bf3bd0ef jal ra,c000a67c - c004ca8e: b7e1 j c004ca56 + c004cc4a: 6622 ld a2,8(sp) + c004cc4c: 6582 ld a1,0(sp) + c004cc4e: 8522 mv a0,s0 + c004cc50: bf6be0ef jal ra,c000b046 + c004cc54: 862e mv a2,a1 + c004cc56: 85aa mv a1,a0 + c004cc58: 8522 mv a0,s0 + c004cc5a: b11bd0ef jal ra,c000a76a + c004cc5e: b7e1 j c004cc26 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3967 } else if (state == JS_PROMISE_PENDING) { - c004ca90: e115 bnez a0,c004cab4 + c004cc60: e115 bnez a0,c004cc84 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3970 err = JS_ExecutePendingJob(JS_GetRuntime(ctx), &ctx1); - c004ca92: 8522 mv a0,s0 - c004ca94: c8aba0ef jal ra,c0006f1e - c004ca98: 180c addi a1,sp,48 - c004ca9a: d32bb0ef jal ra,c0007fcc + c004cc62: 8522 mv a0,s0 + c004cc64: ba8ba0ef jal ra,c000700c + c004cc68: 180c addi a1,sp,48 + c004cc6a: c50bb0ef jal ra,c00080ba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3971 if (err < 0) { - c004ca9e: 00055563 bgez a0,c004caa8 + c004cc6e: 00055563 bgez a0,c004cc78 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3972 js_std_dump_error(ctx1); - c004caa2: 7542 ld a0,48(sp) - c004caa4: b0bff0ef jal ra,c004c5ae + c004cc72: 7542 ld a0,48(sp) + c004cc74: b0bff0ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3974 if (os_poll_func) - c004caa8: 0009b783 ld a5,0(s3) - c004caac: dbc1 beqz a5,c004ca3c + c004cc78: 0009b783 ld a5,0(s3) + c004cc7c: dbc1 beqz a5,c004cc0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3975 os_poll_func(ctx); - c004caae: 8522 mv a0,s0 - c004cab0: 9782 jalr a5 + c004cc7e: 8522 mv a0,s0 + c004cc80: 9782 jalr a5 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3958 state = JS_PromiseState(ctx, obj); - c004cab2: b769 j c004ca3c + c004cc82: b769 j c004cc0c /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3978 ret = obj; - c004cab4: 6782 ld a5,0(sp) - c004cab6: e83e sd a5,16(sp) - c004cab8: 67a2 ld a5,8(sp) - c004caba: ec3e sd a5,24(sp) + c004cc84: 6782 ld a5,0(sp) + c004cc86: e83e sd a5,16(sp) + c004cc88: 67a2 ld a5,8(sp) + c004cc8a: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3979 break; - c004cabc: b765 j c004ca64 + c004cc8c: b765 j c004cc34 -00000000c004cabe : +00000000c004cc8e : worker_func(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3317 { - c004cabe: 7179 addi sp,sp,-48 - c004cac0: e84a sd s2,16(sp) - c004cac2: f406 sd ra,40(sp) - c004cac4: f022 sd s0,32(sp) - c004cac6: ec26 sd s1,24(sp) - c004cac8: 892a mv s2,a0 + c004cc8e: 7179 addi sp,sp,-48 + c004cc90: e84a sd s2,16(sp) + c004cc92: f406 sd ra,40(sp) + c004cc94: f022 sd s0,32(sp) + c004cc96: ec26 sd s1,24(sp) + c004cc98: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3324 rt = JS_NewRuntime(); - c004caca: 8cebd0ef jal ra,c0009b98 + c004cc9a: fedbc0ef jal ra,c0009c86 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3325 if (rt == NULL) { - c004cace: ed11 bnez a0,c004caea + c004cc9e: ed11 bnez a0,c004ccba /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3326 fprintf(stderr, "JS_NewRuntime failure"); - c004cad0: 4509 li a0,2 - c004cad2: 517080ef jal ra,c00557e8 - c004cad6: 85aa mv a1,a0 - c004cad8: 00024517 auipc a0,0x24 - c004cadc: 40850513 addi a0,a0,1032 # c0070ee0 - c004cae0: 3cb080ef jal ra,c00556aa + c004cca0: 4509 li a0,2 + c004cca2: 517080ef jal ra,c00559b8 + c004cca6: 85aa mv a1,a0 + c004cca8: 00024517 auipc a0,0x24 + c004ccac: 49850513 addi a0,a0,1176 # c0071140 + c004ccb0: 3cb080ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3327 exit(1); - c004cae4: 4505 li a0,1 - c004cae6: 543080ef jal ra,c0055828 - c004caea: 84aa mv s1,a0 + c004ccb4: 4505 li a0,1 + c004ccb6: 543080ef jal ra,c00559f8 + c004ccba: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3329 js_std_init_handlers(rt); - c004caec: 987ff0ef jal ra,c004c472 + c004ccbc: 987ff0ef jal ra,c004c642 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3331 JS_SetModuleLoaderFunc(rt, NULL, js_module_loader, NULL); - c004caf0: 4681 li a3,0 - c004caf2: fffff617 auipc a2,0xfffff - c004caf6: 65a60613 addi a2,a2,1626 # c004c14c - c004cafa: 4581 li a1,0 - c004cafc: 8526 mv a0,s1 - c004cafe: b98be0ef jal ra,c000ae96 + c004ccc0: 4681 li a3,0 + c004ccc2: fffff617 auipc a2,0xfffff + c004ccc6: 65a60613 addi a2,a2,1626 # c004c31c + c004ccca: 4581 li a1,0 + c004cccc: 8526 mv a0,s1 + c004ccce: ab6be0ef jal ra,c000af84 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3334 ts = JS_GetRuntimeOpaque(rt); - c004cb02: 8526 mv a0,s1 - c004cb04: b82ba0ef jal ra,c0006e86 + c004ccd2: 8526 mv a0,s1 + c004ccd4: aa0ba0ef jal ra,c0006f74 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3335 ts->recv_pipe = args->recv_pipe; - c004cb08: 01093783 ld a5,16(s2) - c004cb0c: e53c sd a5,72(a0) + c004ccd8: 01093783 ld a5,16(s2) + c004ccdc: e53c sd a5,72(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3336 ts->send_pipe = args->send_pipe; - c004cb0e: 01893783 ld a5,24(s2) - c004cb12: e93c sd a5,80(a0) + c004ccde: 01893783 ld a5,24(s2) + c004cce2: e93c sd a5,80(a0) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3340 ctx = js_worker_new_context_func(rt); - c004cb14: 8526 mv a0,s1 - c004cb16: 000b4797 auipc a5,0xb4 - c004cb1a: 5ea7b783 ld a5,1514(a5) # c0101100 - c004cb1e: 9782 jalr a5 - c004cb20: 842a mv s0,a0 + c004cce4: 8526 mv a0,s1 + c004cce6: 000b4797 auipc a5,0xb4 + c004ccea: 41a7b783 ld a5,1050(a5) # c0101100 + c004ccee: 9782 jalr a5 + c004ccf0: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3341 if (ctx == NULL) { - c004cb22: e919 bnez a0,c004cb38 + c004ccf2: e919 bnez a0,c004cd08 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3342 fprintf(stderr, "JS_NewContext failure"); - c004cb24: 4509 li a0,2 - c004cb26: 4c3080ef jal ra,c00557e8 - c004cb2a: 85aa mv a1,a0 - c004cb2c: 00024517 auipc a0,0x24 - c004cb30: 3cc50513 addi a0,a0,972 # c0070ef8 - c004cb34: 377080ef jal ra,c00556aa + c004ccf4: 4509 li a0,2 + c004ccf6: 4c3080ef jal ra,c00559b8 + c004ccfa: 85aa mv a1,a0 + c004ccfc: 00024517 auipc a0,0x24 + c004cd00: 45c50513 addi a0,a0,1116 # c0071158 + c004cd04: 377080ef jal ra,c005587a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3345 JS_SetCanBlock(rt, TRUE); - c004cb38: 4585 li a1,1 - c004cb3a: 8526 mv a0,s1 - c004cb3c: b68ba0ef jal ra,c0006ea4 + c004cd08: 4585 li a1,1 + c004cd0a: 8526 mv a0,s1 + c004cd0c: a86ba0ef jal ra,c0006f92 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3347 js_std_add_helpers(ctx, -1, NULL); - c004cb40: 4601 li a2,0 - c004cb42: 55fd li a1,-1 - c004cb44: 8522 mv a0,s0 - c004cb46: ff4ff0ef jal ra,c004c33a + c004cd10: 4601 li a2,0 + c004cd12: 55fd li a1,-1 + c004cd14: 8522 mv a0,s0 + c004cd16: ff4ff0ef jal ra,c004c50a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3349 val = JS_LoadModule(ctx, args->basename, args->filename); - c004cb4a: 00093603 ld a2,0(s2) - c004cb4e: 00893583 ld a1,8(s2) - c004cb52: 8522 mv a0,s0 - c004cb54: 8faf40ef jal ra,c0040c4e - c004cb58: e02a sd a0,0(sp) + c004cd1a: 00093603 ld a2,0(s2) + c004cd1e: 00893583 ld a1,8(s2) + c004cd22: 8522 mv a0,s0 + c004cd24: 8faf40ef jal ra,c0040e1e + c004cd28: e02a sd a0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3350 free(args->filename); - c004cb5a: 00093503 ld a0,0(s2) + c004cd2a: 00093503 ld a0,0(s2) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3349 val = JS_LoadModule(ctx, args->basename, args->filename); - c004cb5e: e42e sd a1,8(sp) + c004cd2e: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3350 free(args->filename); - c004cb60: 298060ef jal ra,c0052df8 + c004cd30: 298060ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3351 free(args->basename); - c004cb64: 00893503 ld a0,8(s2) - c004cb68: 290060ef jal ra,c0052df8 + c004cd34: 00893503 ld a0,8(s2) + c004cd38: 290060ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3352 free(args); - c004cb6c: 854a mv a0,s2 - c004cb6e: 28a060ef jal ra,c0052df8 + c004cd3c: 854a mv a0,s2 + c004cd3e: 28a060ef jal ra,c0052fc8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3353 val = js_std_await(ctx, val); - c004cb72: 6582 ld a1,0(sp) - c004cb74: 6622 ld a2,8(sp) - c004cb76: 8522 mv a0,s0 - c004cb78: ea7ff0ef jal ra,c004ca1e - c004cb7c: e42e sd a1,8(sp) - c004cb7e: e02a sd a0,0(sp) + c004cd42: 6582 ld a1,0(sp) + c004cd44: 6622 ld a2,8(sp) + c004cd46: 8522 mv a0,s0 + c004cd48: ea7ff0ef jal ra,c004cbee + c004cd4c: e42e sd a1,8(sp) + c004cd4e: e02a sd a0,0(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3354 if (JS_IsException(val)) - c004cb80: 2581 sext.w a1,a1 - c004cb82: 4799 li a5,6 - c004cb84: 00f59563 bne a1,a5,c004cb8e + c004cd50: 2581 sext.w a1,a1 + c004cd52: 4799 li a5,6 + c004cd54: 00f59563 bne a1,a5,c004cd5e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3355 js_std_dump_error(ctx); - c004cb88: 8522 mv a0,s0 - c004cb8a: a25ff0ef jal ra,c004c5ae + c004cd58: 8522 mv a0,s0 + c004cd5a: a25ff0ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3356 JS_FreeValue(ctx, val); - c004cb8e: 6582 ld a1,0(sp) - c004cb90: 6622 ld a2,8(sp) - c004cb92: 8522 mv a0,s0 - c004cb94: f78fb0ef jal ra,c004830c + c004cd5e: 6582 ld a1,0(sp) + c004cd60: 6622 ld a2,8(sp) + c004cd62: 8522 mv a0,s0 + c004cd64: f78fb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3358 js_std_loop(ctx); - c004cb98: 8522 mv a0,s0 - c004cb9a: e47ff0ef jal ra,c004c9e0 + c004cd68: 8522 mv a0,s0 + c004cd6a: e47ff0ef jal ra,c004cbb0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3360 JS_FreeContext(ctx); - c004cb9e: 8522 mv a0,s0 - c004cba0: cb6bb0ef jal ra,c0008056 + c004cd6e: 8522 mv a0,s0 + c004cd70: bd4bb0ef jal ra,c0008144 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3361 js_std_free_handlers(rt); - c004cba4: 8526 mv a0,s1 - c004cba6: 963ff0ef jal ra,c004c508 + c004cd74: 8526 mv a0,s1 + c004cd76: 963ff0ef jal ra,c004c6d8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3362 JS_FreeRuntime(rt); - c004cbaa: 8526 mv a0,s1 - c004cbac: ccdbc0ef jal ra,c0009878 + c004cd7a: 8526 mv a0,s1 + c004cd7c: bebbc0ef jal ra,c0009966 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3364 } - c004cbb0: 70a2 ld ra,40(sp) - c004cbb2: 7402 ld s0,32(sp) - c004cbb4: 64e2 ld s1,24(sp) - c004cbb6: 6942 ld s2,16(sp) - c004cbb8: 4501 li a0,0 - c004cbba: 6145 addi sp,sp,48 - c004cbbc: 8082 ret + c004cd80: 70a2 ld ra,40(sp) + c004cd82: 7402 ld s0,32(sp) + c004cd84: 64e2 ld s1,24(sp) + c004cd86: 6942 ld s2,16(sp) + c004cd88: 4501 li a0,0 + c004cd8a: 6145 addi sp,sp,48 + c004cd8c: 8082 ret -00000000c004cbbe : +00000000c004cd8e : js_std_eval_binary(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3987 void js_std_eval_binary(JSContext *ctx, const uint8_t *buf, size_t buf_len, int load_only) { - c004cbbe: 7139 addi sp,sp,-64 - c004cbc0: f426 sd s1,40(sp) - c004cbc2: 84b6 mv s1,a3 + c004cd8e: 7139 addi sp,sp,-64 + c004cd90: f426 sd s1,40(sp) + c004cd92: 84b6 mv s1,a3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3989 JSValue obj, val; obj = JS_ReadObject(ctx, buf, buf_len, JS_READ_OBJ_BYTECODE); - c004cbc4: 4685 li a3,1 + c004cd94: 4685 li a3,1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3987 { - c004cbc6: f822 sd s0,48(sp) - c004cbc8: fc06 sd ra,56(sp) - c004cbca: 842a mv s0,a0 + c004cd96: f822 sd s0,48(sp) + c004cd98: fc06 sd ra,56(sp) + c004cd9a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3989 obj = JS_ReadObject(ctx, buf, buf_len, JS_READ_OBJ_BYTECODE); - c004cbcc: eb9f50ef jal ra,c0042a84 - c004cbd0: e02a sd a0,0(sp) - c004cbd2: e42e sd a1,8(sp) + c004cd9c: eb9f50ef jal ra,c0042c54 + c004cda0: e02a sd a0,0(sp) + c004cda2: e42e sd a1,8(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004cbd4: 0005879b sext.w a5,a1 + c004cda4: 0005879b sext.w a5,a1 js_std_eval_binary(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3990 if (JS_IsException(obj)) - c004cbd8: 4719 li a4,6 - c004cbda: 02e78e63 beq a5,a4,c004cc16 - c004cbde: 862e mv a2,a1 + c004cda8: 4719 li a4,6 + c004cdaa: 02e78e63 beq a5,a4,c004cde6 + c004cdae: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3993 goto exception; if (load_only) { if (JS_VALUE_GET_TAG(obj) == JS_TAG_MODULE) { - c004cbe0: 5775 li a4,-3 + c004cdb0: 5775 li a4,-3 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3992 if (load_only) { - c004cbe2: cc89 beqz s1,c004cbfc + c004cdb2: cc89 beqz s1,c004cdcc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3993 if (JS_VALUE_GET_TAG(obj) == JS_TAG_MODULE) { - c004cbe4: 08e79363 bne a5,a4,c004cc6a + c004cdb4: 08e79363 bne a5,a4,c004ce3a /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3994 js_module_set_import_meta(ctx, obj, FALSE, FALSE); - c004cbe8: 85aa mv a1,a0 - c004cbea: 8522 mv a0,s0 + c004cdb8: 85aa mv a1,a0 + c004cdba: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4015 js_std_dump_error(ctx); exit(1); @@ -210764,160 +210962,160 @@ js_std_eval_binary(): JS_FreeValue(ctx, val); } } - c004cbec: 7442 ld s0,48(sp) - c004cbee: 70e2 ld ra,56(sp) - c004cbf0: 74a2 ld s1,40(sp) + c004cdbc: 7442 ld s0,48(sp) + c004cdbe: 70e2 ld ra,56(sp) + c004cdc0: 74a2 ld s1,40(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3994 js_module_set_import_meta(ctx, obj, FALSE, FALSE); - c004cbf2: 4701 li a4,0 - c004cbf4: 4681 li a3,0 + c004cdc2: 4701 li a4,0 + c004cdc4: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4015 } - c004cbf6: 6121 addi sp,sp,64 + c004cdc6: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3994 js_module_set_import_meta(ctx, obj, FALSE, FALSE); - c004cbf8: c28ff06f j c004c020 + c004cdc8: c28ff06f j c004c1f0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3998 if (JS_ResolveModule(ctx, obj) < 0) { - c004cbfc: 85aa mv a1,a0 - c004cbfe: 8522 mv a0,s0 + c004cdcc: 85aa mv a1,a0 + c004cdce: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3997 if (JS_VALUE_GET_TAG(obj) == JS_TAG_MODULE) { - c004cc00: 06e79263 bne a5,a4,c004cc64 + c004cdd0: 06e79263 bne a5,a4,c004ce34 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3998 if (JS_ResolveModule(ctx, obj) < 0) { - c004cc04: 9e7d20ef jal ra,c001f5ea - c004cc08: 00055d63 bgez a0,c004cc22 + c004cdd4: 9e7d20ef jal ra,c001f7ba + c004cdd8: 00055d63 bgez a0,c004cdf2 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:3999 JS_FreeValue(ctx, obj); - c004cc0c: 6582 ld a1,0(sp) - c004cc0e: 6622 ld a2,8(sp) - c004cc10: 8522 mv a0,s0 - c004cc12: efafb0ef jal ra,c004830c + c004cddc: 6582 ld a1,0(sp) + c004cdde: 6622 ld a2,8(sp) + c004cde0: 8522 mv a0,s0 + c004cde2: efafb0ef jal ra,c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4010 js_std_dump_error(ctx); - c004cc16: 8522 mv a0,s0 - c004cc18: 997ff0ef jal ra,c004c5ae + c004cde6: 8522 mv a0,s0 + c004cde8: 997ff0ef jal ra,c004c77e /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4011 exit(1); - c004cc1c: 4505 li a0,1 - c004cc1e: 40b080ef jal ra,c0055828 + c004cdec: 4505 li a0,1 + c004cdee: 40b080ef jal ra,c00559f8 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4002 js_module_set_import_meta(ctx, obj, FALSE, TRUE); - c004cc22: 6582 ld a1,0(sp) - c004cc24: 6622 ld a2,8(sp) - c004cc26: 4705 li a4,1 - c004cc28: 4681 li a3,0 - c004cc2a: 8522 mv a0,s0 - c004cc2c: bf4ff0ef jal ra,c004c020 + c004cdf2: 6582 ld a1,0(sp) + c004cdf4: 6622 ld a2,8(sp) + c004cdf6: 4705 li a4,1 + c004cdf8: 4681 li a3,0 + c004cdfa: 8522 mv a0,s0 + c004cdfc: bf4ff0ef jal ra,c004c1f0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4003 val = JS_EvalFunction(ctx, obj); - c004cc30: 6622 ld a2,8(sp) - c004cc32: 6582 ld a1,0(sp) - c004cc34: 8522 mv a0,s0 - c004cc36: 86df30ef jal ra,c00404a2 - c004cc3a: 862e mv a2,a1 + c004ce00: 6622 ld a2,8(sp) + c004ce02: 6582 ld a1,0(sp) + c004ce04: 8522 mv a0,s0 + c004ce06: 86df30ef jal ra,c0040672 + c004ce0a: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4004 val = js_std_await(ctx, val); - c004cc3c: 85aa mv a1,a0 - c004cc3e: 8522 mv a0,s0 - c004cc40: ddfff0ef jal ra,c004ca1e + c004ce0c: 85aa mv a1,a0 + c004ce0e: 8522 mv a0,s0 + c004ce10: ddfff0ef jal ra,c004cbee /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4006 val = JS_EvalFunction(ctx, obj); - c004cc44: ec2e sd a1,24(sp) + c004ce14: ec2e sd a1,24(sp) JS_IsException(): /Users/Luppy/riscv/quickjs-nuttx/quickjs.h:610 - c004cc46: 6662 ld a2,24(sp) + c004ce16: 6662 ld a2,24(sp) js_std_eval_binary(): /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4006 - c004cc48: e82a sd a0,16(sp) + c004ce18: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4008 if (JS_IsException(val)) { - c004cc4a: 4799 li a5,6 - c004cc4c: 0006071b sext.w a4,a2 - c004cc50: fcf703e3 beq a4,a5,c004cc16 + c004ce1a: 4799 li a5,6 + c004ce1c: 0006071b sext.w a4,a2 + c004ce20: fcf703e3 beq a4,a5,c004cde6 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4013 JS_FreeValue(ctx, val); - c004cc54: 8522 mv a0,s0 + c004ce24: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4015 } - c004cc56: 7442 ld s0,48(sp) + c004ce26: 7442 ld s0,48(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4013 JS_FreeValue(ctx, val); - c004cc58: 65c2 ld a1,16(sp) + c004ce28: 65c2 ld a1,16(sp) /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4015 } - c004cc5a: 70e2 ld ra,56(sp) - c004cc5c: 74a2 ld s1,40(sp) - c004cc5e: 6121 addi sp,sp,64 + c004ce2a: 70e2 ld ra,56(sp) + c004ce2c: 74a2 ld s1,40(sp) + c004ce2e: 6121 addi sp,sp,64 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4013 JS_FreeValue(ctx, val); - c004cc60: eacfb06f j c004830c + c004ce30: eacfb06f j c00484dc /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4006 val = JS_EvalFunction(ctx, obj); - c004cc64: 83ff30ef jal ra,c00404a2 - c004cc68: bff1 j c004cc44 + c004ce34: 83ff30ef jal ra,c0040672 + c004ce38: bff1 j c004ce14 /Users/Luppy/riscv/quickjs-nuttx/quickjs-libc.c:4015 } - c004cc6a: 70e2 ld ra,56(sp) - c004cc6c: 7442 ld s0,48(sp) - c004cc6e: 74a2 ld s1,40(sp) - c004cc70: 6121 addi sp,sp,64 - c004cc72: 8082 ret + c004ce3a: 70e2 ld ra,56(sp) + c004ce3c: 7442 ld s0,48(sp) + c004ce3e: 74a2 ld s1,40(sp) + c004ce40: 6121 addi sp,sp,64 + c004ce42: 8082 ret -00000000c004cc74 : +00000000c004ce44 : bf_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:202 - c004cc74: 651c ld a5,8(a0) - c004cc76: 6108 ld a0,0(a0) - c004cc78: 8782 jr a5 + c004ce44: 651c ld a5,8(a0) + c004ce46: 6108 ld a0,0(a0) + c004ce48: 8782 jr a5 -00000000c004cc7a : +00000000c004ce4a : bf_malloc(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:207 { - c004cc7a: 862e mv a2,a1 + c004ce4a: 862e mv a2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:208 return bf_realloc(s, NULL, size); - c004cc7c: 4581 li a1,0 - c004cc7e: ff7ff06f j c004cc74 + c004ce4c: 4581 li a1,0 + c004ce4e: ff7ff06f j c004ce44 -00000000c004cc82 : +00000000c004ce52 : bf_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:214 if (ptr) - c004cc82: c581 beqz a1,c004cc8a + c004ce52: c581 beqz a1,c004ce5a /Users/Luppy/riscv/quickjs-nuttx/libbf.h:215 bf_realloc(s, ptr, 0); - c004cc84: 4601 li a2,0 - c004cc86: fefff06f j c004cc74 + c004ce54: 4601 li a2,0 + c004ce56: fefff06f j c004ce44 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:216 } - c004cc8a: 8082 ret + c004ce5a: 8082 ret -00000000c004cc8c : +00000000c004ce5c : bf_delete(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:221 { - c004cc8c: 87aa mv a5,a0 + c004ce5c: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:222 bf_context_t *s = r->ctx; - c004cc8e: 6108 ld a0,0(a0) + c004ce5e: 6108 ld a0,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.h:224 if (s && r->tab) { - c004cc90: c511 beqz a0,c004cc9c + c004ce60: c511 beqz a0,c004ce6c /Users/Luppy/riscv/quickjs-nuttx/libbf.h:224 (discriminator 1) - c004cc92: 738c ld a1,32(a5) - c004cc94: c581 beqz a1,c004cc9c + c004ce62: 738c ld a1,32(a5) + c004ce64: c581 beqz a1,c004ce6c /Users/Luppy/riscv/quickjs-nuttx/libbf.h:225 bf_realloc(s, r->tab, 0); - c004cc96: 4601 li a2,0 - c004cc98: fddff06f j c004cc74 + c004ce66: 4601 li a2,0 + c004ce68: fddff06f j c004ce44 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:227 } - c004cc9c: 8082 ret + c004ce6c: 8082 ret -00000000c004cc9e : +00000000c004ce6e : sat_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:160 return a; @@ -210926,30 +211124,30 @@ sat_add(): /* signed addition with saturation */ static inline slimb_t sat_add(slimb_t a, slimb_t b) { - c004cc9e: 87aa mv a5,a0 + c004ce6e: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:162 slimb_t r; r = a + b; - c004cca0: 952e add a0,a0,a1 + c004ce70: 952e add a0,a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:164 /* overflow ? */ if (((a ^ r) & (b ^ r)) < 0) - c004cca2: 00a7c733 xor a4,a5,a0 - c004cca6: 8da9 xor a1,a1,a0 - c004cca8: 8df9 and a1,a1,a4 - c004ccaa: 0005d663 bgez a1,c004ccb6 + c004ce72: 00a7c733 xor a4,a5,a0 + c004ce76: 8da9 xor a1,a1,a0 + c004ce78: 8df9 and a1,a1,a4 + c004ce7a: 0005d663 bgez a1,c004ce86 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:165 r = (a >> (LIMB_BITS - 1)) ^ (((limb_t)1 << (LIMB_BITS - 1)) - 1); - c004ccae: 557d li a0,-1 - c004ccb0: 97fd srai a5,a5,0x3f - c004ccb2: 8105 srli a0,a0,0x1 - c004ccb4: 8d3d xor a0,a0,a5 + c004ce7e: 557d li a0,-1 + c004ce80: 97fd srai a5,a5,0x3f + c004ce82: 8105 srli a0,a0,0x1 + c004ce84: 8d3d xor a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:167 return r; } - c004ccb6: 8082 ret + c004ce86: 8082 ret -00000000c004ccb8 : +00000000c004ce88 : get_limbz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:328 *r = *a; @@ -210958,25 +211156,25 @@ get_limbz(): static limb_t get_limbz(const bf_t *a, limb_t idx) { if (idx >= a->len) - c004ccb8: 6d1c ld a5,24(a0) - c004ccba: 00f5f763 bgeu a1,a5,c004ccc8 + c004ce88: 6d1c ld a5,24(a0) + c004ce8a: 00f5f763 bgeu a1,a5,c004ce98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:331 return 0; else return a->tab[idx]; - c004ccbe: 711c ld a5,32(a0) - c004ccc0: 058e slli a1,a1,0x3 - c004ccc2: 95be add a1,a1,a5 - c004ccc4: 6188 ld a0,0(a1) - c004ccc6: 8082 ret + c004ce8e: 711c ld a5,32(a0) + c004ce90: 058e slli a1,a1,0x3 + c004ce92: 95be add a1,a1,a5 + c004ce94: 6188 ld a0,0(a1) + c004ce96: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:329 return 0; - c004ccc8: 4501 li a0,0 + c004ce98: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:332 } - c004ccca: 8082 ret + c004ce9a: 8082 ret -00000000c004cccc : +00000000c004ce9c : get_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:340 static inline limb_t get_bits(const limb_t *tab, limb_t len, slimb_t pos) @@ -210985,94 +211183,94 @@ static inline limb_t get_bits(const limb_t *tab, limb_t len, slimb_t pos) int p; i = pos >> LIMB_LOG2_BITS; - c004cccc: 40665793 srai a5,a2,0x6 + c004ce9c: 40665793 srai a5,a2,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:336 { - c004ccd0: 872a mv a4,a0 + c004cea0: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:341 p = pos & (LIMB_BITS - 1); - c004ccd2: 03f67613 andi a2,a2,63 + c004cea2: 03f67613 andi a2,a2,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:345 if (i < len) a0 = tab[i]; else a0 = 0; - c004ccd6: 4501 li a0,0 + c004cea6: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:342 if (i < len) - c004ccd8: 00b7f663 bgeu a5,a1,c004cce4 + c004cea8: 00b7f663 bgeu a5,a1,c004ceb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:343 a0 = tab[i]; - c004ccdc: 00379693 slli a3,a5,0x3 - c004cce0: 96ba add a3,a3,a4 - c004cce2: 6288 ld a0,0(a3) + c004ceac: 00379693 slli a3,a5,0x3 + c004ceb0: 96ba add a3,a3,a4 + c004ceb2: 6288 ld a0,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:346 if (p == 0) { - c004cce4: c205 beqz a2,c004cd04 + c004ceb4: c205 beqz a2,c004ced4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:349 return a0; } else { i++; - c004cce6: 0785 addi a5,a5,1 + c004ceb6: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:353 if (i < len) a1 = tab[i]; else a1 = 0; - c004cce8: 4681 li a3,0 + c004ceb8: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:350 if (i < len) - c004ccea: 00b7f563 bgeu a5,a1,c004ccf4 + c004ceba: 00b7f563 bgeu a5,a1,c004cec4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:351 a1 = tab[i]; - c004ccee: 078e slli a5,a5,0x3 - c004ccf0: 97ba add a5,a5,a4 - c004ccf2: 6394 ld a3,0(a5) + c004cebe: 078e slli a5,a5,0x3 + c004cec0: 97ba add a5,a5,a4 + c004cec2: 6394 ld a3,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:354 return (a0 >> p) | (a1 << (LIMB_BITS - p)); - c004ccf4: 04000793 li a5,64 - c004ccf8: 9f91 subw a5,a5,a2 - c004ccfa: 00f696b3 sll a3,a3,a5 - c004ccfe: 00c55533 srl a0,a0,a2 - c004cd02: 8d55 or a0,a0,a3 + c004cec4: 04000793 li a5,64 + c004cec8: 9f91 subw a5,a5,a2 + c004ceca: 00f696b3 sll a3,a3,a5 + c004cece: 00c55533 srl a0,a0,a2 + c004ced2: 8d55 or a0,a0,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:356 } } - c004cd04: 8082 ret + c004ced4: 8082 ret -00000000c004cd06 : +00000000c004ced6 : get_bit(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:359 static inline limb_t get_bit(const limb_t *tab, limb_t len, slimb_t pos) { - c004cd06: 87aa mv a5,a0 + c004ced6: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:361 slimb_t i; i = pos >> LIMB_LOG2_BITS; - c004cd08: 40665713 srai a4,a2,0x6 + c004ced8: 40665713 srai a4,a2,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:363 if (i < 0 || i >= len) return 0; - c004cd0c: 4501 li a0,0 + c004cedc: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:362 if (i < 0 || i >= len) - c004cd0e: 00064b63 bltz a2,c004cd24 + c004cede: 00064b63 bltz a2,c004cef4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:362 (discriminator 1) - c004cd12: 00b77963 bgeu a4,a1,c004cd24 + c004cee2: 00b77963 bgeu a4,a1,c004cef4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:364 return (tab[i] >> (pos & (LIMB_BITS - 1))) & 1; - c004cd16: 070e slli a4,a4,0x3 - c004cd18: 97ba add a5,a5,a4 - c004cd1a: 6388 ld a0,0(a5) - c004cd1c: 00c55533 srl a0,a0,a2 - c004cd20: 8905 andi a0,a0,1 - c004cd22: 8082 ret + c004cee6: 070e slli a4,a4,0x3 + c004cee8: 97ba add a5,a5,a4 + c004ceea: 6388 ld a0,0(a5) + c004ceec: 00c55533 srl a0,a0,a2 + c004cef0: 8905 andi a0,a0,1 + c004cef2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:365 } - c004cd24: 8082 ret + c004cef4: 8082 ret -00000000c004cd26 : +00000000c004cef6 : limb_mask(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:371 @@ -211081,30 +211279,30 @@ static inline limb_t limb_mask(int start, int last) limb_t v; int n; n = last - start + 1; - c004cd26: 40a587bb subw a5,a1,a0 - c004cd2a: 0017859b addiw a1,a5,1 + c004cef6: 40a587bb subw a5,a1,a0 + c004cefa: 0017859b addiw a1,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:372 if (n == LIMB_BITS) - c004cd2e: 04000793 li a5,64 - c004cd32: 00f58963 beq a1,a5,c004cd44 + c004cefe: 04000793 li a5,64 + c004cf02: 00f58963 beq a1,a5,c004cf14 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:375 v = -1; else v = (((limb_t)1 << n) - 1) << start; - c004cd36: 4785 li a5,1 - c004cd38: 00b797b3 sll a5,a5,a1 - c004cd3c: 17fd addi a5,a5,-1 - c004cd3e: 00a79533 sll a0,a5,a0 - c004cd42: 8082 ret + c004cf06: 4785 li a5,1 + c004cf08: 00b797b3 sll a5,a5,a1 + c004cf0c: 17fd addi a5,a5,-1 + c004cf0e: 00a79533 sll a0,a5,a0 + c004cf12: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:373 v = -1; - c004cd44: 557d li a0,-1 + c004cf14: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:377 return v; } - c004cd46: 8082 ret + c004cf16: 8082 ret -00000000c004cd48 : +00000000c004cf18 : mp_scan_nz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:382 @@ -211112,34 +211310,34 @@ static limb_t mp_scan_nz(const limb_t *tab, mp_size_t n) { mp_size_t i; for(i = 0; i < n; i++) { - c004cd48: 4781 li a5,0 + c004cf18: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:382 (discriminator 1) - c004cd4a: 00b7c463 blt a5,a1,c004cd52 + c004cf1a: 00b7c463 blt a5,a1,c004cf22 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:386 if (tab[i] != 0) return 1; } return 0; - c004cd4e: 4501 li a0,0 - c004cd50: 8082 ret + c004cf1e: 4501 li a0,0 + c004cf20: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:383 if (tab[i] != 0) - c004cd52: 00379713 slli a4,a5,0x3 - c004cd56: 972a add a4,a4,a0 - c004cd58: 6318 ld a4,0(a4) - c004cd5a: e319 bnez a4,c004cd60 + c004cf22: 00379713 slli a4,a5,0x3 + c004cf26: 972a add a4,a4,a0 + c004cf28: 6318 ld a4,0(a4) + c004cf2a: e319 bnez a4,c004cf30 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:382 (discriminator 2) for(i = 0; i < n; i++) { - c004cd5c: 0785 addi a5,a5,1 - c004cd5e: b7f5 j c004cd4a + c004cf2c: 0785 addi a5,a5,1 + c004cf2e: b7f5 j c004cf1a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:384 return 1; - c004cd60: 4505 li a0,1 + c004cf30: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:387 } - c004cd62: 8082 ret + c004cf32: 8082 ret -00000000c004cd64 : +00000000c004cf34 : udiv1norm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1246 static inline limb_t udiv1norm(limb_t *pr, limb_t a1, limb_t a0, @@ -211148,56 +211346,56 @@ static inline limb_t udiv1norm(limb_t *pr, limb_t a1, limb_t a0, limb_t n1m, n_adj, q, r, ah; dlimb_t a; n1m = ((slimb_t)a0 >> (LIMB_BITS - 1)); - c004cd64: 43f65813 srai a6,a2,0x3f + c004cf34: 43f65813 srai a6,a2,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1248 n_adj = a0 + (n1m & d); a = (dlimb_t)d_inv * (a1 - n1m) + n_adj; - c004cd68: 410588b3 sub a7,a1,a6 - c004cd6c: 02e88333 mul t1,a7,a4 + c004cf38: 410588b3 sub a7,a1,a6 + c004cf3c: 02e88333 mul t1,a7,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1247 n_adj = a0 + (n1m & d); - c004cd70: 00d877b3 and a5,a6,a3 - c004cd74: 97b2 add a5,a5,a2 + c004cf40: 00d877b3 and a5,a6,a3 + c004cf44: 97b2 add a5,a5,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1248 a = (dlimb_t)d_inv * (a1 - n1m) + n_adj; - c004cd76: 02e8b8b3 mulhu a7,a7,a4 - c004cd7a: 979a add a5,a5,t1 - c004cd7c: 0067b7b3 sltu a5,a5,t1 - c004cd80: 40d60733 sub a4,a2,a3 - c004cd84: 00e63633 sltu a2,a2,a4 - c004cd88: 97c6 add a5,a5,a7 + c004cf46: 02e8b8b3 mulhu a7,a7,a4 + c004cf4a: 979a add a5,a5,t1 + c004cf4c: 0067b7b3 sltu a5,a5,t1 + c004cf50: 40d60733 sub a4,a2,a3 + c004cf54: 00e63633 sltu a2,a2,a4 + c004cf58: 97c6 add a5,a5,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1249 q = (a >> LIMB_BITS) + a1; - c004cd8a: 97ae add a5,a5,a1 + c004cf5a: 97ae add a5,a5,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1253 /* compute a - q * r and update q so that the remainder is\ between 0 and d - 1 */ a = ((dlimb_t)a1 << LIMB_BITS) | a0; a = a - (dlimb_t)q * d - d; - c004cd8c: 8d91 sub a1,a1,a2 - c004cd8e: 02d78633 mul a2,a5,a3 - c004cd92: 02d7b833 mulhu a6,a5,a3 - c004cd96: 40c70633 sub a2,a4,a2 - c004cd9a: 00c73733 sltu a4,a4,a2 - c004cd9e: 0785 addi a5,a5,1 - c004cda0: 410585b3 sub a1,a1,a6 - c004cda4: 8d99 sub a1,a1,a4 + c004cf5c: 8d91 sub a1,a1,a2 + c004cf5e: 02d78633 mul a2,a5,a3 + c004cf62: 02d7b833 mulhu a6,a5,a3 + c004cf66: 40c70633 sub a2,a4,a2 + c004cf6a: 00c73733 sltu a4,a4,a2 + c004cf6e: 0785 addi a5,a5,1 + c004cf70: 410585b3 sub a1,a1,a6 + c004cf74: 8d99 sub a1,a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1256 ah = a >> LIMB_BITS; q += 1 + ah; r = (limb_t)a + (ah & d); - c004cda6: 8eed and a3,a3,a1 - c004cda8: 96b2 add a3,a3,a2 + c004cf76: 8eed and a3,a3,a1 + c004cf78: 96b2 add a3,a3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1257 *pr = r; - c004cdaa: e114 sd a3,0(a0) + c004cf7a: e114 sd a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1259 return q; } - c004cdac: 00f58533 add a0,a1,a5 - c004cdb0: 8082 ret + c004cf7c: 00f58533 add a0,a1,a5 + c004cf80: 8082 ret -00000000c004cdb2 : +00000000c004cf82 : mp_sqrtrem1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1911 static limb_t mp_sqrtrem1(limb_t *pr, limb_t a) @@ -211206,82 +211404,82 @@ static limb_t mp_sqrtrem1(limb_t *pr, limb_t a) /* use a table for the 16 -> 8 bit sqrt */ s1 = sqrt_table[(a >> (LIMB_BITS - 8)) - 64]; - c004cdb2: 0385d793 srli a5,a1,0x38 - c004cdb6: fc078793 addi a5,a5,-64 - c004cdba: 00026717 auipc a4,0x26 - c004cdbe: 90e70713 addi a4,a4,-1778 # c00726c8 - c004cdc2: 0786 slli a5,a5,0x1 - c004cdc4: 97ba add a5,a5,a4 - c004cdc6: 0007d783 lhu a5,0(a5) + c004cf82: 0385d793 srli a5,a1,0x38 + c004cf86: fc078793 addi a5,a5,-64 + c004cf8a: 00026717 auipc a4,0x26 + c004cf8e: 99e70713 addi a4,a4,-1634 # c0072928 + c004cf92: 0786 slli a5,a5,0x1 + c004cf94: 97ba add a5,a5,a4 + c004cf96: 0007d783 lhu a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1912 r1 = (a >> (LIMB_BITS - 16)) - s1 * s1; - c004cdca: 0305d713 srli a4,a1,0x30 + c004cf9a: 0305d713 srli a4,a1,0x30 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1907 { - c004cdce: 862a mv a2,a0 + c004cf9e: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1912 r1 = (a >> (LIMB_BITS - 16)) - s1 * s1; - c004cdd0: 02f786b3 mul a3,a5,a5 - c004cdd4: 8f15 sub a4,a4,a3 + c004cfa0: 02f786b3 mul a3,a5,a5 + c004cfa4: 8f15 sub a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1913 if (r1 > 2 * s1) { - c004cdd6: 00179693 slli a3,a5,0x1 - c004cdda: 00e6f563 bgeu a3,a4,c004cde4 + c004cfa6: 00179693 slli a3,a5,0x1 + c004cfaa: 00e6f563 bgeu a3,a4,c004cfb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1914 r1 -= 2 * s1 + 1; - c004cdde: 8f15 sub a4,a4,a3 - c004cde0: 177d addi a4,a4,-1 + c004cfae: 8f15 sub a4,a4,a3 + c004cfb0: 177d addi a4,a4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1915 s1++; - c004cde2: 0785 addi a5,a5,1 + c004cfb2: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1919 } /* one iteration to get a 32 -> 16 bit sqrt */ num = (r1 << 8) | ((a >> (LIMB_BITS - 32 + 8)) & 0xff); - c004cde4: 0285d693 srli a3,a1,0x28 - c004cde8: 0722 slli a4,a4,0x8 - c004cdea: 0ff6f693 zext.b a3,a3 - c004cdee: 8ed9 or a3,a3,a4 + c004cfb4: 0285d693 srli a3,a1,0x28 + c004cfb8: 0722 slli a4,a4,0x8 + c004cfba: 0ff6f693 zext.b a3,a3 + c004cfbe: 8ed9 or a3,a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1920 q = num / (2 * s1); /* q <= 2^8 */ - c004cdf0: 00179713 slli a4,a5,0x1 - c004cdf4: 02e6d533 divu a0,a3,a4 + c004cfc0: 00179713 slli a4,a5,0x1 + c004cfc4: 02e6d533 divu a0,a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1922 u = num % (2 * s1); s = (s1 << 8) + q; - c004cdf8: 07a2 slli a5,a5,0x8 + c004cfc8: 07a2 slli a5,a5,0x8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1921 u = num % (2 * s1); - c004cdfa: 02e6f733 remu a4,a3,a4 + c004cfca: 02e6f733 remu a4,a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1922 s = (s1 << 8) + q; - c004cdfe: 97aa add a5,a5,a0 + c004cfce: 97aa add a5,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1923 r = (u << 8) | ((a >> (LIMB_BITS - 32)) & 0xff); - c004ce00: 0205d693 srli a3,a1,0x20 - c004ce04: 0ff6f693 zext.b a3,a3 + c004cfd0: 0205d693 srli a3,a1,0x20 + c004cfd4: 0ff6f693 zext.b a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1924 r -= q * q; - c004ce08: 02a50533 mul a0,a0,a0 + c004cfd8: 02a50533 mul a0,a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1923 r = (u << 8) | ((a >> (LIMB_BITS - 32)) & 0xff); - c004ce0c: 0722 slli a4,a4,0x8 - c004ce0e: 8f55 or a4,a4,a3 + c004cfdc: 0722 slli a4,a4,0x8 + c004cfde: 8f55 or a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1924 r -= q * q; - c004ce10: 8f09 sub a4,a4,a0 + c004cfe0: 8f09 sub a4,a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1925 if ((slimb_t)r < 0) { - c004ce12: 00075763 bgez a4,c004ce20 + c004cfe2: 00075763 bgez a4,c004cff0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1926 s--; - c004ce16: 17fd addi a5,a5,-1 + c004cfe6: 17fd addi a5,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1927 r += 2 * s + 1; - c004ce18: 00179693 slli a3,a5,0x1 - c004ce1c: 9736 add a4,a4,a3 - c004ce1e: 0705 addi a4,a4,1 + c004cfe8: 00179693 slli a3,a5,0x1 + c004cfec: 9736 add a4,a4,a3 + c004cfee: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1934 #if LIMB_BITS == 64 @@ -211289,65 +211487,65 @@ static limb_t mp_sqrtrem1(limb_t *pr, limb_t a) r1 = r; /* one more iteration for 64 -> 32 bit sqrt */ num = (r1 << 16) | ((a >> (LIMB_BITS - 64 + 16)) & 0xffff); - c004ce20: 6841 lui a6,0x10 - c004ce22: 0105d693 srli a3,a1,0x10 - c004ce26: 187d addi a6,a6,-1 - c004ce28: 0106f6b3 and a3,a3,a6 - c004ce2c: 0742 slli a4,a4,0x10 + c004cff0: 6841 lui a6,0x10 + c004cff2: 0105d693 srli a3,a1,0x10 + c004cff6: 187d addi a6,a6,-1 + c004cff8: 0106f6b3 and a3,a3,a6 + c004cffc: 0742 slli a4,a4,0x10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1935 q = num / (2 * s1); /* q <= 2^16 */ - c004ce2e: 00179893 slli a7,a5,0x1 + c004cffe: 00179893 slli a7,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1934 num = (r1 << 16) | ((a >> (LIMB_BITS - 64 + 16)) & 0xffff); - c004ce32: 8f55 or a4,a4,a3 + c004d002: 8f55 or a4,a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1935 q = num / (2 * s1); /* q <= 2^16 */ - c004ce34: 031756b3 divu a3,a4,a7 + c004d004: 031756b3 divu a3,a4,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1937 u = num % (2 * s1); s = (s1 << 16) + q; - c004ce38: 07c2 slli a5,a5,0x10 + c004d008: 07c2 slli a5,a5,0x10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1938 r = (u << 16) | ((a >> (LIMB_BITS - 64)) & 0xffff); - c004ce3a: 0105f5b3 and a1,a1,a6 + c004d00a: 0105f5b3 and a1,a1,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1936 u = num % (2 * s1); - c004ce3e: 03177733 remu a4,a4,a7 + c004d00e: 03177733 remu a4,a4,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1937 s = (s1 << 16) + q; - c004ce42: 00d78533 add a0,a5,a3 + c004d012: 00d78533 add a0,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1939 r -= q * q; - c004ce46: 02d686b3 mul a3,a3,a3 + c004d016: 02d686b3 mul a3,a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1938 r = (u << 16) | ((a >> (LIMB_BITS - 64)) & 0xffff); - c004ce4a: 01071793 slli a5,a4,0x10 - c004ce4e: 8fcd or a5,a5,a1 + c004d01a: 01071793 slli a5,a4,0x10 + c004d01e: 8fcd or a5,a5,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1939 r -= q * q; - c004ce50: 8f95 sub a5,a5,a3 + c004d020: 8f95 sub a5,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1940 if ((slimb_t)r < 0) { - c004ce52: 0007d763 bgez a5,c004ce60 + c004d022: 0007d763 bgez a5,c004d030 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1941 s--; - c004ce56: 157d addi a0,a0,-1 + c004d026: 157d addi a0,a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1942 r += 2 * s + 1; - c004ce58: 00151713 slli a4,a0,0x1 - c004ce5c: 97ba add a5,a5,a4 - c004ce5e: 0785 addi a5,a5,1 + c004d028: 00151713 slli a4,a0,0x1 + c004d02c: 97ba add a5,a5,a4 + c004d02e: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1945 } #endif *pr = r; - c004ce60: e21c sd a5,0(a2) + c004d030: e21c sd a5,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1947 return s; } - c004ce62: 8082 ret + c004d032: 8082 ret -00000000c004ce64 : +00000000c004d034 : to_digit(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2844 return ret; @@ -211356,47 +211554,47 @@ to_digit(): static inline int to_digit(int c) { if (c >= '0' && c <= '9') - c004ce64: fd05061b addiw a2,a0,-48 - c004ce68: 46a5 li a3,9 + c004d034: fd05061b addiw a2,a0,-48 + c004d038: 46a5 li a3,9 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2843 { - c004ce6a: 87aa mv a5,a0 + c004d03a: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2844 if (c >= '0' && c <= '9') - c004ce6c: 0005071b sext.w a4,a0 - c004ce70: 00c6e463 bltu a3,a2,c004ce78 + c004d03c: 0005071b sext.w a4,a0 + c004d040: 00c6e463 bltu a3,a2,c004d048 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2845 return c - '0'; - c004ce74: 8532 mv a0,a2 - c004ce76: 8082 ret + c004d044: 8532 mv a0,a2 + c004d046: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2846 else if (c >= 'A' && c <= 'Z') - c004ce78: fbf7069b addiw a3,a4,-65 - c004ce7c: 4665 li a2,25 - c004ce7e: 00d66563 bltu a2,a3,c004ce88 + c004d048: fbf7069b addiw a3,a4,-65 + c004d04c: 4665 li a2,25 + c004d04e: 00d66563 bltu a2,a3,c004d058 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2847 return c - 'A' + 10; - c004ce82: fc95051b addiw a0,a0,-55 - c004ce86: 8082 ret + c004d052: fc95051b addiw a0,a0,-55 + c004d056: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2848 else if (c >= 'a' && c <= 'z') - c004ce88: f9f7071b addiw a4,a4,-97 + c004d058: f9f7071b addiw a4,a4,-97 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2851 return c - 'a' + 10; else return 36; - c004ce8c: 02400513 li a0,36 + c004d05c: 02400513 li a0,36 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2848 else if (c >= 'a' && c <= 'z') - c004ce90: 00e66463 bltu a2,a4,c004ce98 + c004d060: 00e66463 bltu a2,a4,c004d068 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2849 return c - 'a' + 10; - c004ce94: fa97851b addiw a0,a5,-87 + c004d064: fa97851b addiw a0,a5,-87 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2852 } - c004ce98: 8082 ret + c004d068: 8082 ret -00000000c004ce9a : +00000000c004d06a : bf_dbuf_realloc(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3718 } @@ -211405,1638 +211603,1638 @@ static void *bf_dbuf_realloc(void *opaque, void *ptr, size_t size) { bf_context_t *s = opaque; return bf_realloc(s, ptr, size); - c004ce9a: ddbff06f j c004cc74 + c004d06a: ddbff06f j c004ce44 -00000000c004ce9e : +00000000c004d06e : ceil_log2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:124 if (a <= 1) - c004ce9e: 4785 li a5,1 - c004cea0: 00a7fe63 bgeu a5,a0,c004cebc + c004d06e: 4785 li a5,1 + c004d070: 00a7fe63 bgeu a5,a0,c004d08c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:123 { - c004cea4: 1141 addi sp,sp,-16 + c004d074: 1141 addi sp,sp,-16 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 return __builtin_clzll(a); - c004cea6: 157d addi a0,a0,-1 + c004d076: 157d addi a0,a0,-1 ceil_log2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:123 - c004cea8: e406 sd ra,8(sp) + c004d078: e406 sd ra,8(sp) clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004ceaa: 956b30ef jal ra,c0000000 <__clzdi2> + c004d07a: f87b20ef jal ra,c0000000 <__clzdi2> ceil_log2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:128 } - c004ceae: 60a2 ld ra,8(sp) + c004d07e: 60a2 ld ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:127 return LIMB_BITS - clz(a - 1); - c004ceb0: 04000793 li a5,64 - c004ceb4: 40a7853b subw a0,a5,a0 + c004d080: 04000793 li a5,64 + c004d084: 40a7853b subw a0,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:128 } - c004ceb8: 0141 addi sp,sp,16 - c004ceba: 8082 ret + c004d088: 0141 addi sp,sp,16 + c004d08a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:125 return 0; - c004cebc: 4501 li a0,0 + c004d08c: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:128 } - c004cebe: 8082 ret + c004d08e: 8082 ret -00000000c004cec0 : +00000000c004d090 : bf_add_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2857 { - c004cec0: 7139 addi sp,sp,-64 - c004cec2: f822 sd s0,48(sp) - c004cec4: ec4e sd s3,24(sp) - c004cec6: e852 sd s4,16(sp) - c004cec8: fc06 sd ra,56(sp) - c004ceca: f426 sd s1,40(sp) - c004cecc: f04a sd s2,32(sp) - c004cece: e456 sd s5,8(sp) + c004d090: 7139 addi sp,sp,-64 + c004d092: f822 sd s0,48(sp) + c004d094: ec4e sd s3,24(sp) + c004d096: e852 sd s4,16(sp) + c004d098: fc06 sd ra,56(sp) + c004d09a: f426 sd s1,40(sp) + c004d09c: f04a sd s2,32(sp) + c004d09e: e456 sd s5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2859 pos = *ppos; - c004ced0: 0005b903 ld s2,0(a1) + c004d0a0: 0005b903 ld s2,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2857 { - c004ced4: 842a mv s0,a0 - c004ced6: 89ae mv s3,a1 - c004ced8: 8a32 mv s4,a2 + c004d0a4: 842a mv s0,a0 + c004d0a6: 89ae mv s3,a1 + c004d0a8: 8a32 mv s4,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2860 if (unlikely(pos < 0)) { - c004ceda: 04095063 bgez s2,c004cf1a + c004d0aa: 04095063 bgez s2,c004d0ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2862 new_size = bf_max(a->len + 1, a->len * 3 / 2); - c004cede: 6d1c ld a5,24(a0) - c004cee0: 448d li s1,3 - c004cee2: 029784b3 mul s1,a5,s1 - c004cee6: 0785 addi a5,a5,1 - c004cee8: 8085 srli s1,s1,0x1 - c004ceea: 00f4d363 bge s1,a5,c004cef0 - c004ceee: 84be mv s1,a5 + c004d0ae: 6d1c ld a5,24(a0) + c004d0b0: 448d li s1,3 + c004d0b2: 029784b3 mul s1,a5,s1 + c004d0b6: 0785 addi a5,a5,1 + c004d0b8: 8085 srli s1,s1,0x1 + c004d0ba: 00f4d363 bge s1,a5,c004d0c0 + c004d0be: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2863 new_tab = bf_realloc(a->ctx, a->tab, sizeof(limb_t) * new_size); - c004cef0: 700c ld a1,32(s0) - c004cef2: 6008 ld a0,0(s0) - c004cef4: 00349613 slli a2,s1,0x3 - c004cef8: d7dff0ef jal ra,c004cc74 - c004cefc: 85aa mv a1,a0 + c004d0c0: 700c ld a1,32(s0) + c004d0c2: 6008 ld a0,0(s0) + c004d0c4: 00349613 slli a2,s1,0x3 + c004d0c8: d7dff0ef jal ra,c004ce44 + c004d0cc: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2865 return -1; - c004cefe: 557d li a0,-1 + c004d0ce: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2864 if (!new_tab) - c004cf00: c59d beqz a1,c004cf2e + c004d0d0: c59d beqz a1,c004d0fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2867 d = new_size - a->len; - c004cf02: 6c10 ld a2,24(s0) + c004d0d2: 6c10 ld a2,24(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2866 a->tab = new_tab; - c004cf04: f00c sd a1,32(s0) + c004d0d4: f00c sd a1,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2867 d = new_size - a->len; - c004cf06: 40c48ab3 sub s5,s1,a2 + c004d0d6: 40c48ab3 sub s5,s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2868 memmove(a->tab + d, a->tab, a->len * sizeof(limb_t)); - c004cf0a: 003a9513 slli a0,s5,0x3 - c004cf0e: 060e slli a2,a2,0x3 - c004cf10: 952e add a0,a0,a1 - c004cf12: 11d090ef jal ra,c005682e + c004d0da: 003a9513 slli a0,s5,0x3 + c004d0de: 060e slli a2,a2,0x3 + c004d0e0: 952e add a0,a0,a1 + c004d0e2: 11d090ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2870 pos += d; - c004cf16: 9956 add s2,s2,s5 + c004d0e6: 9956 add s2,s2,s5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2869 a->len = new_size; - c004cf18: ec04 sd s1,24(s0) + c004d0e8: ec04 sd s1,24(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2872 a->tab[pos--] = v; - c004cf1a: 701c ld a5,32(s0) - c004cf1c: 00391713 slli a4,s2,0x3 - c004cf20: 197d addi s2,s2,-1 - c004cf22: 97ba add a5,a5,a4 - c004cf24: 0147b023 sd s4,0(a5) + c004d0ea: 701c ld a5,32(s0) + c004d0ec: 00391713 slli a4,s2,0x3 + c004d0f0: 197d addi s2,s2,-1 + c004d0f2: 97ba add a5,a5,a4 + c004d0f4: 0147b023 sd s4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2873 *ppos = pos; - c004cf28: 0129b023 sd s2,0(s3) + c004d0f8: 0129b023 sd s2,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2874 return 0; - c004cf2c: 4501 li a0,0 + c004d0fc: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2875 } - c004cf2e: 70e2 ld ra,56(sp) - c004cf30: 7442 ld s0,48(sp) - c004cf32: 74a2 ld s1,40(sp) - c004cf34: 7902 ld s2,32(sp) - c004cf36: 69e2 ld s3,24(sp) - c004cf38: 6a42 ld s4,16(sp) - c004cf3a: 6aa2 ld s5,8(sp) - c004cf3c: 6121 addi sp,sp,64 - c004cf3e: 8082 ret - -00000000c004cf40 : + c004d0fe: 70e2 ld ra,56(sp) + c004d100: 7442 ld s0,48(sp) + c004d102: 74a2 ld s1,40(sp) + c004d104: 7902 ld s2,32(sp) + c004d106: 69e2 ld s3,24(sp) + c004d108: 6a42 ld s4,16(sp) + c004d10a: 6aa2 ld s5,8(sp) + c004d10c: 6121 addi sp,sp,64 + c004d10e: 8082 ret + +00000000c004d110 : mp_mul_basecase(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1184 result[op1_size] = mp_mul1(result, op1, op1_size, op2[0], 0); - c004cf40: 0006be83 ld t4,0(a3) - c004cf44: 00361e13 slli t3,a2,0x3 - c004cf48: 01c50f33 add t5,a0,t3 - c004cf4c: 4881 li a7,0 - c004cf4e: 4781 li a5,0 + c004d110: 0006be83 ld t4,0(a3) + c004d114: 00361e13 slli t3,a2,0x3 + c004d118: 01c50f33 add t5,a0,t3 + c004d11c: 4881 li a7,0 + c004d11e: 4781 li a5,0 mp_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1153 for(i = 0; i < n; i++) { - c004cf50: 011e1963 bne t3,a7,c004cf62 + c004d120: 011e1963 bne t3,a7,c004d132 mp_mul_basecase(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1184 result[op1_size] = mp_mul1(result, op1, op1_size, op2[0], 0); - c004cf54: 00ff3023 sd a5,0(t5) + c004d124: 00ff3023 sd a5,0(t5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1185 for(i=1;i + c004d12c: 02ee6663 bltu t3,a4,c004d158 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1189 } - c004cf60: 8082 ret + c004d130: 8082 ret mp_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1154 t = (dlimb_t)taba[i] * (dlimb_t)b + l; - c004cf62: 01158833 add a6,a1,a7 - c004cf66: 00083803 ld a6,0(a6) # 10000 <__clzdi2-0xbfff0000> + c004d132: 01158833 add a6,a1,a7 + c004d136: 00083803 ld a6,0(a6) # 10000 <__clzdi2-0xbfff0000> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1155 tabr[i] = t; - c004cf6a: 01150fb3 add t6,a0,a7 - c004cf6e: 08a1 addi a7,a7,8 + c004d13a: 01150fb3 add t6,a0,a7 + c004d13e: 08a1 addi a7,a7,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1154 t = (dlimb_t)taba[i] * (dlimb_t)b + l; - c004cf70: 030e8333 mul t1,t4,a6 - c004cf74: 030eb833 mulhu a6,t4,a6 - c004cf78: 979a add a5,a5,t1 - c004cf7a: 0067b333 sltu t1,a5,t1 + c004d140: 030e8333 mul t1,t4,a6 + c004d144: 030eb833 mulhu a6,t4,a6 + c004d148: 979a add a5,a5,t1 + c004d14a: 0067b333 sltu t1,a5,t1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1155 tabr[i] = t; - c004cf7e: 00ffb023 sd a5,0(t6) + c004d14e: 00ffb023 sd a5,0(t6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1156 l = t >> LIMB_BITS; - c004cf82: 010307b3 add a5,t1,a6 + c004d152: 010307b3 add a5,t1,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1153 for(i = 0; i < n; i++) { - c004cf86: b7e9 j c004cf50 + c004d156: b7e9 j c004d120 mp_mul_basecase(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1186 (discriminator 3) r = mp_add_mul1(result + i, op1, op1_size, op2[i]); - c004cf88: 003e1793 slli a5,t3,0x3 - c004cf8c: 97b6 add a5,a5,a3 - c004cf8e: 0007b383 ld t2,0(a5) + c004d158: 003e1793 slli a5,t3,0x3 + c004d15c: 97b6 add a5,a5,a3 + c004d15e: 0007b383 ld t2,0(a5) mp_add_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 (discriminator 3) for(i = 0; i < n; i++) { - c004cf92: 8f2a mv t5,a0 + c004d162: 8f2a mv t5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1168 (discriminator 3) l = 0; - c004cf94: 4781 li a5,0 + c004d164: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 (discriminator 3) for(i = 0; i < n; i++) { - c004cf96: 4e81 li t4,0 + c004d166: 4e81 li t4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 - c004cf98: 01d61963 bne a2,t4,c004cfaa + c004d168: 01d61963 bne a2,t4,c004d17a mp_mul_basecase(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1187 result[i + op1_size] = r; - c004cf9c: 01150833 add a6,a0,a7 - c004cfa0: 00f83023 sd a5,0(a6) + c004d16c: 01150833 add a6,a0,a7 + c004d170: 00f83023 sd a5,0(a6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1185 for(i=1;i + c004d174: 0e05 addi t3,t3,1 + c004d176: 0521 addi a0,a0,8 + c004d178: bf55 j c004d12c mp_add_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1170 t = (dlimb_t)taba[i] * (dlimb_t)b + l + tabr[i]; - c004cfaa: 003e9813 slli a6,t4,0x3 - c004cfae: 982e add a6,a6,a1 - c004cfb0: 00083803 ld a6,0(a6) + c004d17a: 003e9813 slli a6,t4,0x3 + c004d17e: 982e add a6,a6,a1 + c004d180: 00083803 ld a6,0(a6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 for(i = 0; i < n; i++) { - c004cfb4: 0e85 addi t4,t4,1 - c004cfb6: 0f21 addi t5,t5,8 + c004d184: 0e85 addi t4,t4,1 + c004d186: 0f21 addi t5,t5,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1170 t = (dlimb_t)taba[i] * (dlimb_t)b + l + tabr[i]; - c004cfb8: 03038fb3 mul t6,t2,a6 - c004cfbc: 0303b333 mulhu t1,t2,a6 - c004cfc0: ff8f3803 ld a6,-8(t5) - c004cfc4: 97c2 add a5,a5,a6 - c004cfc6: 0107b2b3 sltu t0,a5,a6 - c004cfca: 00ff8833 add a6,t6,a5 - c004cfce: 01f83fb3 sltu t6,a6,t6 + c004d188: 03038fb3 mul t6,t2,a6 + c004d18c: 0303b333 mulhu t1,t2,a6 + c004d190: ff8f3803 ld a6,-8(t5) + c004d194: 97c2 add a5,a5,a6 + c004d196: 0107b2b3 sltu t0,a5,a6 + c004d19a: 00ff8833 add a6,t6,a5 + c004d19e: 01f83fb3 sltu t6,a6,t6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1171 tabr[i] = t; - c004cfd2: ff0f3c23 sd a6,-8(t5) + c004d1a2: ff0f3c23 sd a6,-8(t5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1170 t = (dlimb_t)taba[i] * (dlimb_t)b + l + tabr[i]; - c004cfd6: 005307b3 add a5,t1,t0 + c004d1a6: 005307b3 add a5,t1,t0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1172 l = t >> LIMB_BITS; - c004cfda: 97fe add a5,a5,t6 + c004d1aa: 97fe add a5,a5,t6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 for(i = 0; i < n; i++) { - c004cfdc: bf75 j c004cf98 + c004d1ac: bf75 j c004d168 -00000000c004cfde : +00000000c004d1ae : bf_context_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:190 { - c004cfde: 1101 addi sp,sp,-32 - c004cfe0: e822 sd s0,16(sp) - c004cfe2: e426 sd s1,8(sp) - c004cfe4: e04a sd s2,0(sp) - c004cfe6: 842a mv s0,a0 - c004cfe8: 892e mv s2,a1 - c004cfea: 84b2 mv s1,a2 + c004d1ae: 1101 addi sp,sp,-32 + c004d1b0: e822 sd s0,16(sp) + c004d1b2: e426 sd s1,8(sp) + c004d1b4: e04a sd s2,0(sp) + c004d1b6: 842a mv s0,a0 + c004d1b8: 892e mv s2,a1 + c004d1ba: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:191 memset(s, 0, sizeof(*s)); - c004cfec: 4581 li a1,0 - c004cfee: 06800613 li a2,104 - c004cff2: 0541 addi a0,a0,16 + c004d1bc: 4581 li a1,0 + c004d1be: 06800613 li a2,104 + c004d1c2: 0541 addi a0,a0,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:190 { - c004cff4: ec06 sd ra,24(sp) + c004d1c4: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:191 memset(s, 0, sizeof(*s)); - c004cff6: 07b090ef jal ra,c0056870 + c004d1c6: 07b090ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:194 } - c004cffa: 60e2 ld ra,24(sp) + c004d1ca: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:192 s->realloc_func = realloc_func; - c004cffc: 01243423 sd s2,8(s0) + c004d1cc: 01243423 sd s2,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:193 s->realloc_opaque = realloc_opaque; - c004d000: e004 sd s1,0(s0) + c004d1d0: e004 sd s1,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:194 } - c004d002: 6442 ld s0,16(sp) - c004d004: 64a2 ld s1,8(sp) - c004d006: 6902 ld s2,0(sp) - c004d008: 6105 addi sp,sp,32 - c004d00a: 8082 ret + c004d1d2: 6442 ld s0,16(sp) + c004d1d4: 64a2 ld s1,8(sp) + c004d1d6: 6902 ld s2,0(sp) + c004d1d8: 6105 addi sp,sp,32 + c004d1da: 8082 ret -00000000c004d00c : +00000000c004d1dc : bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d00c: 57fd li a5,-1 - c004d00e: 17fe slli a5,a5,0x3f + c004d1dc: 57fd li a5,-1 + c004d1de: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004d010: e188 sd a0,0(a1) + c004d1e0: e188 sd a0,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004d012: 0005a423 sw zero,8(a1) + c004d1e2: 0005a423 sw zero,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d016: e99c sd a5,16(a1) + c004d1e6: e99c sd a5,16(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004d018: 0005bc23 sd zero,24(a1) + c004d1e8: 0005bc23 sd zero,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004d01c: 0205b023 sd zero,32(a1) + c004d1ec: 0205b023 sd zero,32(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:208 } - c004d020: 8082 ret + c004d1f0: 8082 ret -00000000c004d022 : +00000000c004d1f2 : bf_resize(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:215 if (len != r->len) { - c004d022: 6d1c ld a5,24(a0) - c004d024: 02b78a63 beq a5,a1,c004d058 + c004d1f2: 6d1c ld a5,24(a0) + c004d1f4: 02b78a63 beq a5,a1,c004d228 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:212 { - c004d028: 1101 addi sp,sp,-32 - c004d02a: e822 sd s0,16(sp) - c004d02c: e426 sd s1,8(sp) - c004d02e: ec06 sd ra,24(sp) + c004d1f8: 1101 addi sp,sp,-32 + c004d1fa: e822 sd s0,16(sp) + c004d1fc: e426 sd s1,8(sp) + c004d1fe: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:216 tab = bf_realloc(r->ctx, r->tab, len * sizeof(limb_t)); - c004d030: 00359613 slli a2,a1,0x3 - c004d034: 842a mv s0,a0 - c004d036: 84ae mv s1,a1 - c004d038: 710c ld a1,32(a0) - c004d03a: 6108 ld a0,0(a0) - c004d03c: c39ff0ef jal ra,c004cc74 - c004d040: 87aa mv a5,a0 + c004d200: 00359613 slli a2,a1,0x3 + c004d204: 842a mv s0,a0 + c004d206: 84ae mv s1,a1 + c004d208: 710c ld a1,32(a0) + c004d20a: 6108 ld a0,0(a0) + c004d20c: c39ff0ef jal ra,c004ce44 + c004d210: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:217 if (!tab && len != 0) - c004d042: e119 bnez a0,c004d048 + c004d212: e119 bnez a0,c004d218 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:218 return -1; - c004d044: 557d li a0,-1 + c004d214: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:217 if (!tab && len != 0) - c004d046: e481 bnez s1,c004d04e + c004d216: e481 bnez s1,c004d21e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:219 r->tab = tab; - c004d048: f01c sd a5,32(s0) + c004d218: f01c sd a5,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:220 r->len = len; - c004d04a: ec04 sd s1,24(s0) + c004d21a: ec04 sd s1,24(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:222 return 0; - c004d04c: 4501 li a0,0 + c004d21c: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:223 } - c004d04e: 60e2 ld ra,24(sp) - c004d050: 6442 ld s0,16(sp) - c004d052: 64a2 ld s1,8(sp) - c004d054: 6105 addi sp,sp,32 - c004d056: 8082 ret + c004d21e: 60e2 ld ra,24(sp) + c004d220: 6442 ld s0,16(sp) + c004d222: 64a2 ld s1,8(sp) + c004d224: 6105 addi sp,sp,32 + c004d226: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:222 return 0; - c004d058: 4501 li a0,0 + c004d228: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:223 } - c004d05a: 8082 ret + c004d22a: 8082 ret -00000000c004d05c : +00000000c004d22c : bf_set_nan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:281 { - c004d05c: 1141 addi sp,sp,-16 + c004d22c: 1141 addi sp,sp,-16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:282 bf_resize(r, 0); /* cannot fail */ - c004d05e: 4581 li a1,0 + c004d22e: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:281 { - c004d060: e022 sd s0,0(sp) - c004d062: e406 sd ra,8(sp) - c004d064: 842a mv s0,a0 + c004d230: e022 sd s0,0(sp) + c004d232: e406 sd ra,8(sp) + c004d234: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:282 bf_resize(r, 0); /* cannot fail */ - c004d066: fbdff0ef jal ra,c004d022 + c004d236: fbdff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:283 r->expn = BF_EXP_NAN; - c004d06a: 57fd li a5,-1 - c004d06c: 8385 srli a5,a5,0x1 + c004d23a: 57fd li a5,-1 + c004d23c: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:285 } - c004d06e: 60a2 ld ra,8(sp) + c004d23e: 60a2 ld ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:283 r->expn = BF_EXP_NAN; - c004d070: e81c sd a5,16(s0) + c004d240: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:284 r->sign = 0; - c004d072: 00042423 sw zero,8(s0) + c004d242: 00042423 sw zero,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:285 } - c004d076: 6402 ld s0,0(sp) - c004d078: 0141 addi sp,sp,16 - c004d07a: 8082 ret + c004d246: 6402 ld s0,0(sp) + c004d248: 0141 addi sp,sp,16 + c004d24a: 8082 ret -00000000c004d07c : +00000000c004d24c : bf_set_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:227 { - c004d07c: 1101 addi sp,sp,-32 - c004d07e: e822 sd s0,16(sp) - c004d080: ec06 sd ra,24(sp) - c004d082: e426 sd s1,8(sp) - c004d084: e04a sd s2,0(sp) + c004d24c: 1101 addi sp,sp,-32 + c004d24e: e822 sd s0,16(sp) + c004d250: ec06 sd ra,24(sp) + c004d252: e426 sd s1,8(sp) + c004d254: e04a sd s2,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:228 r->sign = 0; - c004d086: 00052423 sw zero,8(a0) + c004d256: 00052423 sw zero,8(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:227 { - c004d08a: 842a mv s0,a0 + c004d25a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:229 if (a == 0) { - c004d08c: ed91 bnez a1,c004d0a8 + c004d25c: ed91 bnez a1,c004d278 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:230 r->expn = BF_EXP_ZERO; - c004d08e: 57fd li a5,-1 - c004d090: 17fe slli a5,a5,0x3f - c004d092: e91c sd a5,16(a0) + c004d25e: 57fd li a5,-1 + c004d260: 17fe slli a5,a5,0x3f + c004d262: e91c sd a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:231 bf_resize(r, 0); /* cannot fail */ - c004d094: f8fff0ef jal ra,c004d022 + c004d264: f8fff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:260 return 0; - c004d098: 4901 li s2,0 + c004d268: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:264 } - c004d09a: 60e2 ld ra,24(sp) - c004d09c: 6442 ld s0,16(sp) - c004d09e: 64a2 ld s1,8(sp) - c004d0a0: 854a mv a0,s2 - c004d0a2: 6902 ld s2,0(sp) - c004d0a4: 6105 addi sp,sp,32 - c004d0a6: 8082 ret - c004d0a8: 84ae mv s1,a1 + c004d26a: 60e2 ld ra,24(sp) + c004d26c: 6442 ld s0,16(sp) + c004d26e: 64a2 ld s1,8(sp) + c004d270: 854a mv a0,s2 + c004d272: 6902 ld s2,0(sp) + c004d274: 6105 addi sp,sp,32 + c004d276: 8082 ret + c004d278: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:240 if (bf_resize(r, 1)) - c004d0aa: 4585 li a1,1 - c004d0ac: f77ff0ef jal ra,c004d022 - c004d0b0: 892a mv s2,a0 - c004d0b2: c519 beqz a0,c004d0c0 + c004d27a: 4585 li a1,1 + c004d27c: f77ff0ef jal ra,c004d1f2 + c004d280: 892a mv s2,a0 + c004d282: c519 beqz a0,c004d290 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:262 bf_set_nan(r); - c004d0b4: 8522 mv a0,s0 - c004d0b6: fa7ff0ef jal ra,c004d05c + c004d284: 8522 mv a0,s0 + c004d286: fa7ff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:263 return BF_ST_MEM_ERROR; - c004d0ba: 02000913 li s2,32 - c004d0be: bff1 j c004d09a + c004d28a: 02000913 li s2,32 + c004d28e: bff1 j c004d26a clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004d0c0: 8526 mv a0,s1 - c004d0c2: f3fb20ef jal ra,c0000000 <__clzdi2> + c004d290: 8526 mv a0,s1 + c004d292: d6fb20ef jal ra,c0000000 <__clzdi2> bf_set_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:243 r->tab[0] = a << shift; - c004d0c6: 701c ld a5,32(s0) - c004d0c8: 00a494b3 sll s1,s1,a0 - c004d0cc: e384 sd s1,0(a5) + c004d296: 701c ld a5,32(s0) + c004d298: 00a494b3 sll s1,s1,a0 + c004d29c: e384 sd s1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:244 r->expn = LIMB_BITS - shift; - c004d0ce: 04000793 li a5,64 - c004d0d2: 40a7853b subw a0,a5,a0 - c004d0d6: e808 sd a0,16(s0) - c004d0d8: b7c9 j c004d09a + c004d29e: 04000793 li a5,64 + c004d2a2: 40a7853b subw a0,a5,a0 + c004d2a6: e808 sd a0,16(s0) + c004d2a8: b7c9 j c004d26a -00000000c004d0da : +00000000c004d2aa : bf_set_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:271 if (a < 0) { - c004d0da: 0005c463 bltz a1,c004d0e2 + c004d2aa: 0005c463 bltz a1,c004d2b2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:275 ret = bf_set_ui(r, a); - c004d0de: f9fff06f j c004d07c + c004d2ae: f9fff06f j c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:268 { - c004d0e2: 1141 addi sp,sp,-16 + c004d2b2: 1141 addi sp,sp,-16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:272 ret = bf_set_ui(r, -a); - c004d0e4: 40b005b3 neg a1,a1 + c004d2b4: 40b005b3 neg a1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:268 { - c004d0e8: e022 sd s0,0(sp) - c004d0ea: e406 sd ra,8(sp) - c004d0ec: 842a mv s0,a0 + c004d2b8: e022 sd s0,0(sp) + c004d2ba: e406 sd ra,8(sp) + c004d2bc: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:272 ret = bf_set_ui(r, -a); - c004d0ee: f8fff0ef jal ra,c004d07c + c004d2be: f8fff0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:273 r->sign = 1; - c004d0f2: 4785 li a5,1 - c004d0f4: c41c sw a5,8(s0) + c004d2c2: 4785 li a5,1 + c004d2c4: c41c sw a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:278 } - c004d0f6: 60a2 ld ra,8(sp) - c004d0f8: 6402 ld s0,0(sp) - c004d0fa: 0141 addi sp,sp,16 - c004d0fc: 8082 ret + c004d2c6: 60a2 ld ra,8(sp) + c004d2c8: 6402 ld s0,0(sp) + c004d2ca: 0141 addi sp,sp,16 + c004d2cc: 8082 ret -00000000c004d0fe : +00000000c004d2ce : bf_set_zero(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:288 { - c004d0fe: 1101 addi sp,sp,-32 - c004d100: e426 sd s1,8(sp) - c004d102: 84ae mv s1,a1 + c004d2ce: 1101 addi sp,sp,-32 + c004d2d0: e426 sd s1,8(sp) + c004d2d2: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:289 bf_resize(r, 0); /* cannot fail */ - c004d104: 4581 li a1,0 + c004d2d4: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:288 { - c004d106: e822 sd s0,16(sp) - c004d108: ec06 sd ra,24(sp) - c004d10a: 842a mv s0,a0 + c004d2d6: e822 sd s0,16(sp) + c004d2d8: ec06 sd ra,24(sp) + c004d2da: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:289 bf_resize(r, 0); /* cannot fail */ - c004d10c: f17ff0ef jal ra,c004d022 + c004d2dc: f17ff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:290 r->expn = BF_EXP_ZERO; - c004d110: 57fd li a5,-1 - c004d112: 17fe slli a5,a5,0x3f + c004d2e0: 57fd li a5,-1 + c004d2e2: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:291 r->sign = is_neg; - c004d114: c404 sw s1,8(s0) + c004d2e4: c404 sw s1,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:292 } - c004d116: 60e2 ld ra,24(sp) + c004d2e6: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:290 r->expn = BF_EXP_ZERO; - c004d118: e81c sd a5,16(s0) + c004d2e8: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:292 } - c004d11a: 6442 ld s0,16(sp) - c004d11c: 64a2 ld s1,8(sp) - c004d11e: 6105 addi sp,sp,32 - c004d120: 8082 ret + c004d2ea: 6442 ld s0,16(sp) + c004d2ec: 64a2 ld s1,8(sp) + c004d2ee: 6105 addi sp,sp,32 + c004d2f0: 8082 ret -00000000c004d122 : +00000000c004d2f2 : bf_set_inf(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:295 { - c004d122: 1101 addi sp,sp,-32 - c004d124: e426 sd s1,8(sp) - c004d126: 84ae mv s1,a1 + c004d2f2: 1101 addi sp,sp,-32 + c004d2f4: e426 sd s1,8(sp) + c004d2f6: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:296 bf_resize(r, 0); /* cannot fail */ - c004d128: 4581 li a1,0 + c004d2f8: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:295 { - c004d12a: e822 sd s0,16(sp) - c004d12c: ec06 sd ra,24(sp) - c004d12e: 842a mv s0,a0 + c004d2fa: e822 sd s0,16(sp) + c004d2fc: ec06 sd ra,24(sp) + c004d2fe: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:296 bf_resize(r, 0); /* cannot fail */ - c004d130: ef3ff0ef jal ra,c004d022 + c004d300: ef3ff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:297 r->expn = BF_EXP_INF; - c004d134: 57f5 li a5,-3 - c004d136: 8385 srli a5,a5,0x1 + c004d304: 57f5 li a5,-3 + c004d306: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:298 r->sign = is_neg; - c004d138: c404 sw s1,8(s0) + c004d308: c404 sw s1,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:299 } - c004d13a: 60e2 ld ra,24(sp) + c004d30a: 60e2 ld ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:297 r->expn = BF_EXP_INF; - c004d13c: e81c sd a5,16(s0) + c004d30c: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:299 } - c004d13e: 6442 ld s0,16(sp) - c004d140: 64a2 ld s1,8(sp) - c004d142: 6105 addi sp,sp,32 - c004d144: 8082 ret + c004d30e: 6442 ld s0,16(sp) + c004d310: 64a2 ld s1,8(sp) + c004d312: 6105 addi sp,sp,32 + c004d314: 8082 ret -00000000c004d146 : +00000000c004d316 : bf_set_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:466 { - c004d146: 7139 addi sp,sp,-64 + c004d316: 7139 addi sp,sp,-64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:471 if (prec == BF_PREC_INF || - c004d148: 577d li a4,-1 + c004d318: 577d li a4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:466 { - c004d14a: f822 sd s0,48(sp) - c004d14c: ec4e sd s3,24(sp) - c004d14e: fc06 sd ra,56(sp) - c004d150: f426 sd s1,40(sp) - c004d152: f04a sd s2,32(sp) - c004d154: e852 sd s4,16(sp) - c004d156: e456 sd s5,8(sp) + c004d31a: f822 sd s0,48(sp) + c004d31c: ec4e sd s3,24(sp) + c004d31e: fc06 sd ra,56(sp) + c004d320: f426 sd s1,40(sp) + c004d322: f04a sd s2,32(sp) + c004d324: e852 sd s4,16(sp) + c004d326: e456 sd s5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:471 if (prec == BF_PREC_INF || - c004d158: 8309 srli a4,a4,0x2 + c004d328: 8309 srli a4,a4,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:466 { - c004d15a: 842a mv s0,a0 - c004d15c: 89ae mv s3,a1 + c004d32a: 842a mv s0,a0 + c004d32c: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:471 if (prec == BF_PREC_INF || - c004d15e: 02e60163 beq a2,a4,c004d180 - c004d162: 0076f793 andi a5,a3,7 + c004d32e: 02e60163 beq a2,a4,c004d350 + c004d332: 0076f793 andi a5,a3,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:471 (discriminator 1) - c004d166: cf89 beqz a5,c004d180 - c004d168: 84b6 mv s1,a3 + c004d336: cf89 beqz a5,c004d350 + c004d338: 84b6 mv s1,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:472 rnd_mode == BF_RNDN || - c004d16a: ffc7871b addiw a4,a5,-4 - c004d16e: 4685 li a3,1 - c004d170: 00e6f863 bgeu a3,a4,c004d180 + c004d33a: ffc7871b addiw a4,a5,-4 + c004d33e: 4685 li a3,1 + c004d340: 00e6f863 bgeu a3,a4,c004d350 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:474 rnd_mode == BF_RNDA || - c004d174: 4709 li a4,2 - c004d176: 8932 mv s2,a2 - c004d178: 00e79a63 bne a5,a4,c004d18c + c004d344: 4709 li a4,2 + c004d346: 8932 mv s2,a2 + c004d348: 00e79a63 bne a5,a4,c004d35c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:475 (rnd_mode == BF_RNDD && sign == 1) || - c004d17c: 00d59c63 bne a1,a3,c004d194 + c004d34c: 00d59c63 bne a1,a3,c004d364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:477 bf_set_inf(r, sign); - c004d180: 85ce mv a1,s3 - c004d182: 8522 mv a0,s0 - c004d184: f9fff0ef jal ra,c004d122 + c004d350: 85ce mv a1,s3 + c004d352: 8522 mv a0,s0 + c004d354: f9fff0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:493 return BF_ST_OVERFLOW | BF_ST_INEXACT; - c004d188: 4551 li a0,20 - c004d18a: a01d j c004d1b0 + c004d358: 4551 li a0,20 + c004d35a: a01d j c004d380 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:475 (discriminator 1) (rnd_mode == BF_RNDD && sign == 1) || - c004d18c: 470d li a4,3 - c004d18e: 00e79363 bne a5,a4,c004d194 + c004d35c: 470d li a4,3 + c004d35e: 00e79363 bne a5,a4,c004d364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:476 (rnd_mode == BF_RNDU && sign == 0)) { - c004d192: d5fd beqz a1,c004d180 + c004d362: d5fd beqz a1,c004d350 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:480 l = (prec + LIMB_BITS - 1) / LIMB_BITS; - c004d194: 03f90a13 addi s4,s2,63 - c004d198: 006a5a13 srli s4,s4,0x6 + c004d364: 03f90a13 addi s4,s2,63 + c004d368: 006a5a13 srli s4,s4,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:481 if (bf_resize(r, l)) { - c004d19c: 85d2 mv a1,s4 - c004d19e: 8522 mv a0,s0 - c004d1a0: e83ff0ef jal ra,c004d022 - c004d1a4: cd19 beqz a0,c004d1c2 + c004d36c: 85d2 mv a1,s4 + c004d36e: 8522 mv a0,s0 + c004d370: e83ff0ef jal ra,c004d1f2 + c004d374: cd19 beqz a0,c004d392 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:482 bf_set_nan(r); - c004d1a6: 8522 mv a0,s0 - c004d1a8: eb5ff0ef jal ra,c004d05c + c004d376: 8522 mv a0,s0 + c004d378: eb5ff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:483 return BF_ST_MEM_ERROR; - c004d1ac: 02000513 li a0,32 + c004d37c: 02000513 li a0,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:494 } - c004d1b0: 70e2 ld ra,56(sp) - c004d1b2: 7442 ld s0,48(sp) - c004d1b4: 74a2 ld s1,40(sp) - c004d1b6: 7902 ld s2,32(sp) - c004d1b8: 69e2 ld s3,24(sp) - c004d1ba: 6a42 ld s4,16(sp) - c004d1bc: 6aa2 ld s5,8(sp) - c004d1be: 6121 addi sp,sp,64 - c004d1c0: 8082 ret + c004d380: 70e2 ld ra,56(sp) + c004d382: 7442 ld s0,48(sp) + c004d384: 74a2 ld s1,40(sp) + c004d386: 7902 ld s2,32(sp) + c004d388: 69e2 ld s3,24(sp) + c004d38a: 6a42 ld s4,16(sp) + c004d38c: 6aa2 ld s5,8(sp) + c004d38e: 6121 addi sp,sp,64 + c004d390: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:485 r->tab[0] = limb_mask((-prec) & (LIMB_BITS - 1), - c004d1c2: 02043a83 ld s5,32(s0) - c004d1c6: 4120053b negw a0,s2 - c004d1ca: 03f00593 li a1,63 - c004d1ce: 03f57513 andi a0,a0,63 - c004d1d2: b55ff0ef jal ra,c004cd26 - c004d1d6: 00aab023 sd a0,0(s5) # 1000 <__clzdi2-0xbffff000> + c004d392: 02043a83 ld s5,32(s0) + c004d396: 4120053b negw a0,s2 + c004d39a: 03f00593 li a1,63 + c004d39e: 03f57513 andi a0,a0,63 + c004d3a2: b55ff0ef jal ra,c004cef6 + c004d3a6: 00aab023 sd a0,0(s5) # 1000 <__clzdi2-0xbffff000> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:487 for(i = 1; i < l; i++) - c004d1da: 4785 li a5,1 + c004d3aa: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:488 r->tab[i] = (limb_t)-1; - c004d1dc: 56fd li a3,-1 + c004d3ac: 56fd li a3,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:487 (discriminator 1) for(i = 1; i < l; i++) - c004d1de: 0347c763 blt a5,s4,c004d20c + c004d3ae: 0347c763 blt a5,s4,c004d3dc bf_get_exp_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:155 e = (flags >> BF_EXP_BITS_SHIFT) & BF_EXP_BITS_MASK; - c004d1e2: 0054d49b srliw s1,s1,0x5 - c004d1e6: 03f4f493 andi s1,s1,63 + c004d3b2: 0054d49b srliw s1,s1,0x5 + c004d3b6: 03f4f493 andi s1,s1,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 if (e == BF_EXP_BITS_MASK) - c004d1ea: 03f00713 li a4,63 + c004d3ba: 03f00713 li a4,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:157 return BF_EXP_BITS_MAX + 1; - c004d1ee: 03e00793 li a5,62 + c004d3be: 03e00793 li a5,62 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 if (e == BF_EXP_BITS_MASK) - c004d1f2: 00e48563 beq s1,a4,c004d1fc + c004d3c2: 00e48563 beq s1,a4,c004d3cc /Users/Luppy/riscv/quickjs-nuttx/libbf.h:159 return BF_EXP_BITS_MAX - e; - c004d1f6: 03d00793 li a5,61 - c004d1fa: 9f85 subw a5,a5,s1 + c004d3c6: 03d00793 li a5,61 + c004d3ca: 9f85 subw a5,a5,s1 bf_set_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:489 e_max = (limb_t)1 << (bf_get_exp_bits(flags) - 1); - c004d1fc: 37fd addiw a5,a5,-1 - c004d1fe: 4705 li a4,1 - c004d200: 00f717b3 sll a5,a4,a5 + c004d3cc: 37fd addiw a5,a5,-1 + c004d3ce: 4705 li a4,1 + c004d3d0: 00f717b3 sll a5,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:490 r->expn = e_max; - c004d204: e81c sd a5,16(s0) + c004d3d4: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:491 r->sign = sign; - c004d206: 01342423 sw s3,8(s0) - c004d20a: bfbd j c004d188 + c004d3d6: 01342423 sw s3,8(s0) + c004d3da: bfbd j c004d358 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:488 (discriminator 3) r->tab[i] = (limb_t)-1; - c004d20c: 7018 ld a4,32(s0) - c004d20e: 00379613 slli a2,a5,0x3 + c004d3dc: 7018 ld a4,32(s0) + c004d3de: 00379613 slli a2,a5,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:487 (discriminator 3) for(i = 1; i < l; i++) - c004d212: 0785 addi a5,a5,1 + c004d3e2: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:488 (discriminator 3) r->tab[i] = (limb_t)-1; - c004d214: 9732 add a4,a4,a2 - c004d216: e314 sd a3,0(a4) + c004d3e4: 9732 add a4,a4,a2 + c004d3e6: e314 sd a3,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:487 (discriminator 3) for(i = 1; i < l; i++) - c004d218: b7d9 j c004d1de + c004d3e8: b7d9 j c004d3ae -00000000c004d21a <__bf_round>: +00000000c004d3ea <__bf_round>: __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:503 { - c004d21a: 7119 addi sp,sp,-128 + c004d3ea: 7119 addi sp,sp,-128 bf_get_exp_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:155 e = (flags >> BF_EXP_BITS_SHIFT) & BF_EXP_BITS_MASK; - c004d21c: 0056579b srliw a5,a2,0x5 + c004d3ec: 0056579b srliw a5,a2,0x5 __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:503 - c004d220: f8a2 sd s0,112(sp) - c004d222: ecce sd s3,88(sp) - c004d224: e8d2 sd s4,80(sp) - c004d226: fc5e sd s7,56(sp) - c004d228: f862 sd s8,48(sp) - c004d22a: ec6e sd s11,24(sp) - c004d22c: 89ba mv s3,a4 - c004d22e: fc86 sd ra,120(sp) - c004d230: f4a6 sd s1,104(sp) - c004d232: f0ca sd s2,96(sp) - c004d234: e4d6 sd s5,72(sp) - c004d236: e0da sd s6,64(sp) - c004d238: f466 sd s9,40(sp) - c004d23a: f06a sd s10,32(sp) + c004d3f0: f8a2 sd s0,112(sp) + c004d3f2: ecce sd s3,88(sp) + c004d3f4: e8d2 sd s4,80(sp) + c004d3f6: fc5e sd s7,56(sp) + c004d3f8: f862 sd s8,48(sp) + c004d3fa: ec6e sd s11,24(sp) + c004d3fc: 89ba mv s3,a4 + c004d3fe: fc86 sd ra,120(sp) + c004d400: f4a6 sd s1,104(sp) + c004d402: f0ca sd s2,96(sp) + c004d404: e4d6 sd s5,72(sp) + c004d406: e0da sd s6,64(sp) + c004d408: f466 sd s9,40(sp) + c004d40a: f06a sd s10,32(sp) bf_get_exp_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:155 - c004d23c: 03f7f793 andi a5,a5,63 + c004d40c: 03f7f793 andi a5,a5,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 if (e == BF_EXP_BITS_MASK) - c004d240: 03f00713 li a4,63 + c004d410: 03f00713 li a4,63 __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:503 - c004d244: 842a mv s0,a0 - c004d246: 8c2e mv s8,a1 - c004d248: 8db2 mv s11,a2 - c004d24a: 8a36 mv s4,a3 - c004d24c: 03e00b93 li s7,62 + c004d414: 842a mv s0,a0 + c004d416: 8c2e mv s8,a1 + c004d418: 8db2 mv s11,a2 + c004d41a: 8a36 mv s4,a3 + c004d41c: 03e00b93 li s7,62 bf_get_exp_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 - c004d250: 00e78663 beq a5,a4,c004d25c <__bf_round+0x42> + c004d420: 00e78663 beq a5,a4,c004d42c <__bf_round+0x42> /Users/Luppy/riscv/quickjs-nuttx/libbf.h:159 return BF_EXP_BITS_MAX - e; - c004d254: 03d00b93 li s7,61 - c004d258: 40fb8bbb subw s7,s7,a5 + c004d424: 03d00b93 li s7,61 + c004d428: 40fb8bbb subw s7,s7,a5 __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:509 e_range = (limb_t)1 << (bf_get_exp_bits(flags) - 1); - c004d25c: 3bfd addiw s7,s7,-1 - c004d25e: 4785 li a5,1 - c004d260: 017797b3 sll a5,a5,s7 + c004d42c: 3bfd addiw s7,s7,-1 + c004d42e: 4785 li a5,1 + c004d430: 017797b3 sll a5,a5,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:510 e_min = -e_range + 3; - c004d264: 4b0d li s6,3 + c004d434: 4b0d li s6,3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:509 e_range = (limb_t)1 << (bf_get_exp_bits(flags) - 1); - c004d266: e43e sd a5,8(sp) + c004d436: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:510 e_min = -e_range + 3; - c004d268: 40fb0b33 sub s6,s6,a5 + c004d438: 40fb0b33 sub s6,s6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:513 if (flags & BF_FLAG_RADPNT_PREC) { - c004d26c: 010df793 andi a5,s11,16 - c004d270: c3a5 beqz a5,c004d2d0 <__bf_round+0xb6> + c004d43c: 010df793 andi a5,s11,16 + c004d440: c3a5 beqz a5,c004d4a0 <__bf_round+0xb6> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:515 if (prec1 != BF_PREC_INF) - c004d272: 57fd li a5,-1 - c004d274: 8389 srli a5,a5,0x2 + c004d442: 57fd li a5,-1 + c004d444: 8389 srli a5,a5,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:518 prec = prec1; - c004d276: 84e2 mv s1,s8 + c004d446: 84e2 mv s1,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:515 if (prec1 != BF_PREC_INF) - c004d278: 00fc0463 beq s8,a5,c004d280 <__bf_round+0x66> + c004d448: 00fc0463 beq s8,a5,c004d450 <__bf_round+0x66> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:516 prec = r->expn + prec1; - c004d27c: 6804 ld s1,16(s0) - c004d27e: 94e2 add s1,s1,s8 + c004d44c: 6804 ld s1,16(s0) + c004d44e: 94e2 add s1,s1,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:529 rnd_mode = flags & BF_RND_MASK; - c004d280: 007dfc93 andi s9,s11,7 + c004d450: 007dfc93 andi s9,s11,7 bf_get_rnd_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:418 if (rnd_mode == BF_RNDF) { - c004d284: 4799 li a5,6 + c004d454: 4799 li a5,6 scan_bit_nz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:398 v = r->tab[pos] & limb_mask(0, bit_pos & (LIMB_BITS - 1)); - c004d286: 02043b83 ld s7,32(s0) + c004d456: 02043b83 ld s7,32(s0) bf_get_rnd_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:422 bit0 = scan_bit_nz(r, l * LIMB_BITS - 1 - bf_max(0, prec + 1)); - c004d28a: 006a1913 slli s2,s4,0x6 + c004d45a: 006a1913 slli s2,s4,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:419 bit0 = 1; /* faithful rounding does not honor the INEXACT flag */ - c004d28e: 4d05 li s10,1 + c004d45e: 4d05 li s10,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:418 if (rnd_mode == BF_RNDF) { - c004d290: 06fc8f63 beq s9,a5,c004d30e <__bf_round+0xf4> + c004d460: 06fc8f63 beq s9,a5,c004d4de <__bf_round+0xf4> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:422 bit0 = scan_bit_nz(r, l * LIMB_BITS - 1 - bf_max(0, prec + 1)); - c004d294: 00148793 addi a5,s1,1 - c004d298: fff90593 addi a1,s2,-1 - c004d29c: 0007d363 bgez a5,c004d2a2 <__bf_round+0x88> - c004d2a0: 4781 li a5,0 - c004d2a2: 8d9d sub a1,a1,a5 + c004d464: 00148793 addi a5,s1,1 + c004d468: fff90593 addi a1,s2,-1 + c004d46c: 0007d363 bgez a5,c004d472 <__bf_round+0x88> + c004d470: 4781 li a5,0 + c004d472: 8d9d sub a1,a1,a5 scan_bit_nz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:395 pos = bit_pos >> LIMB_LOG2_BITS; - c004d2a4: 4065d793 srai a5,a1,0x6 + c004d474: 4065d793 srai a5,a1,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:397 return 0; - c004d2a8: 4d01 li s10,0 + c004d478: 4d01 li s10,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:396 if (pos < 0) - c004d2aa: 0605c263 bltz a1,c004d30e <__bf_round+0xf4> + c004d47a: 0605c263 bltz a1,c004d4de <__bf_round+0xf4> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:398 v = r->tab[pos] & limb_mask(0, bit_pos & (LIMB_BITS - 1)); - c004d2ae: 078e slli a5,a5,0x3 - c004d2b0: 03f5f593 andi a1,a1,63 - c004d2b4: 4501 li a0,0 - c004d2b6: 00fb8ab3 add s5,s7,a5 - c004d2ba: a6dff0ef jal ra,c004cd26 - c004d2be: 000ab783 ld a5,0(s5) - c004d2c2: 00f57d33 and s10,a0,a5 + c004d47e: 078e slli a5,a5,0x3 + c004d480: 03f5f593 andi a1,a1,63 + c004d484: 4501 li a0,0 + c004d486: 00fb8ab3 add s5,s7,a5 + c004d48a: a6dff0ef jal ra,c004cef6 + c004d48e: 000ab783 ld a5,0(s5) + c004d492: 00f57d33 and s10,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:399 if (v != 0) - c004d2c6: 87d6 mv a5,s5 - c004d2c8: 040d0163 beqz s10,c004d30a <__bf_round+0xf0> + c004d496: 87d6 mv a5,s5 + c004d498: 040d0163 beqz s10,c004d4da <__bf_round+0xf0> bf_get_rnd_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:419 bit0 = 1; /* faithful rounding does not honor the INEXACT flag */ - c004d2cc: 4d05 li s10,1 - c004d2ce: a081 j c004d30e <__bf_round+0xf4> + c004d49c: 4d05 li s10,1 + c004d49e: a081 j c004d4de <__bf_round+0xf4> __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:519 } else if (unlikely(r->expn < e_min) && (flags & BF_FLAG_SUBNORMAL)) { - c004d2d0: 6804 ld s1,16(s0) - c004d2d2: 0364d663 bge s1,s6,c004d2fe <__bf_round+0xe4> + c004d4a0: 6804 ld s1,16(s0) + c004d4a2: 0364d663 bge s1,s6,c004d4ce <__bf_round+0xe4> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:519 (discriminator 1) - c004d2d6: 008df793 andi a5,s11,8 - c004d2da: c395 beqz a5,c004d2fe <__bf_round+0xe4> + c004d4a6: 008df793 andi a5,s11,8 + c004d4aa: c395 beqz a5,c004d4ce <__bf_round+0xe4> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:522 assert(prec1 != BF_PREC_INF); - c004d2dc: 57fd li a5,-1 + c004d4ac: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:523 prec = prec1 - (e_min - r->expn); - c004d2de: 409b04b3 sub s1,s6,s1 + c004d4ae: 409b04b3 sub s1,s6,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:522 assert(prec1 != BF_PREC_INF); - c004d2e2: 8389 srli a5,a5,0x2 + c004d4b2: 8389 srli a5,a5,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:523 prec = prec1 - (e_min - r->expn); - c004d2e4: 409c04b3 sub s1,s8,s1 + c004d4b4: 409c04b3 sub s1,s8,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:522 assert(prec1 != BF_PREC_INF); - c004d2e8: f8fc1ce3 bne s8,a5,c004d280 <__bf_round+0x66> + c004d4b8: f8fc1ce3 bne s8,a5,c004d450 <__bf_round+0x66> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:522 (discriminator 1) - c004d2ec: 4601 li a2,0 - c004d2ee: 20a00593 li a1,522 - c004d2f2: 00025517 auipc a0,0x25 - c004d2f6: 02650513 addi a0,a0,38 # c0072318 - c004d2fa: 71e060ef jal ra,c0053a18 <__assert> + c004d4bc: 4601 li a2,0 + c004d4be: 20a00593 li a1,522 + c004d4c2: 00025517 auipc a0,0x25 + c004d4c6: 0b650513 addi a0,a0,182 # c0072578 + c004d4ca: 71e060ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:525 prec = prec1; - c004d2fe: 84e2 mv s1,s8 - c004d300: b741 j c004d280 <__bf_round+0x66> + c004d4ce: 84e2 mv s1,s8 + c004d4d0: b741 j c004d450 <__bf_round+0x66> scan_bit_nz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:403 if (r->tab[pos] != 0) - c004d302: ff87b683 ld a3,-8(a5) - c004d306: 17e1 addi a5,a5,-8 - c004d308: f2f1 bnez a3,c004d2cc <__bf_round+0xb2> + c004d4d2: ff87b683 ld a3,-8(a5) + c004d4d6: 17e1 addi a5,a5,-8 + c004d4d8: f2f1 bnez a3,c004d49c <__bf_round+0xb2> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:402 while (pos >= 0) { - c004d30a: fefb9ce3 bne s7,a5,c004d302 <__bf_round+0xe8> + c004d4da: fefb9ce3 bne s7,a5,c004d4d2 <__bf_round+0xe8> bf_get_rnd_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:426 bit1 = get_bit(r->tab, l, l * LIMB_BITS - 1 - prec); - c004d30e: 40990933 sub s2,s2,s1 - c004d312: 85d2 mv a1,s4 - c004d314: fff90613 addi a2,s2,-1 - c004d318: 855e mv a0,s7 - c004d31a: 9edff0ef jal ra,c004cd06 + c004d4de: 40990933 sub s2,s2,s1 + c004d4e2: 85d2 mv a1,s4 + c004d4e4: fff90613 addi a2,s2,-1 + c004d4e8: 855e mv a0,s7 + c004d4ea: 9edff0ef jal ra,c004ced6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:427 inexact = (bit1 | bit0) != 0; - c004d31e: 01a565b3 or a1,a0,s10 - c004d322: 4699 li a3,6 - c004d324: 00b037b3 snez a5,a1 + c004d4ee: 01a565b3 or a1,a0,s10 + c004d4f2: 4699 li a3,6 + c004d4f4: 00b037b3 snez a5,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:430 switch(rnd_mode) { - c004d328: 0996e363 bltu a3,s9,c004d3ae <__bf_round+0x194> - c004d32c: 00025817 auipc a6,0x25 - c004d330: ff480813 addi a6,a6,-12 # c0072320 - c004d334: 002c9613 slli a2,s9,0x2 - c004d338: 9642 add a2,a2,a6 - c004d33a: 4214 lw a3,0(a2) - c004d33c: 96c2 add a3,a3,a6 - c004d33e: 8682 jr a3 + c004d4f8: 0996e363 bltu a3,s9,c004d57e <__bf_round+0x194> + c004d4fc: 00025817 auipc a6,0x25 + c004d500: 08480813 addi a6,a6,132 # c0072580 + c004d504: 002c9613 slli a2,s9,0x2 + c004d508: 9642 add a2,a2,a6 + c004d50a: 4214 lw a3,0(a2) + c004d50c: 96c2 add a3,a3,a6 + c004d50e: 8682 jr a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:434 if (bit1) { - c004d340: c92d beqz a0,c004d3b2 <__bf_round+0x198> + c004d510: c92d beqz a0,c004d582 <__bf_round+0x198> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:436 add_one = 1; - c004d342: 4785 li a5,1 + c004d512: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:435 if (bit0) { - c004d344: 000d1963 bnez s10,c004d356 <__bf_round+0x13c> + c004d514: 000d1963 bnez s10,c004d526 <__bf_round+0x13c> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:440 get_bit(r->tab, l, l * LIMB_BITS - 1 - (prec - 1)); - c004d348: 864a mv a2,s2 - c004d34a: 85d2 mv a1,s4 - c004d34c: 855e mv a0,s7 - c004d34e: 9b9ff0ef jal ra,c004cd06 + c004d518: 864a mv a2,s2 + c004d51a: 85d2 mv a1,s4 + c004d51c: 855e mv a0,s7 + c004d51e: 9b9ff0ef jal ra,c004ced6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:439 add_one = - c004d352: 0005079b sext.w a5,a0 + c004d522: 0005079b sext.w a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:461 *pret |= BF_ST_INEXACT; - c004d356: 49c1 li s3,16 - c004d358: a801 j c004d368 <__bf_round+0x14e> + c004d526: 49c1 li s3,16 + c004d528: a801 j c004d538 <__bf_round+0x14e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:446 if (r->sign == (rnd_mode == BF_RNDD)) - c004d35a: 4418 lw a4,8(s0) - c004d35c: 1cf9 addi s9,s9,-2 - c004d35e: 001cbc93 seqz s9,s9 - c004d362: 05971a63 bne a4,s9,c004d3b6 <__bf_round+0x19c> + c004d52a: 4418 lw a4,8(s0) + c004d52c: 1cf9 addi s9,s9,-2 + c004d52e: 001cbc93 seqz s9,s9 + c004d532: 05971a63 bne a4,s9,c004d586 <__bf_round+0x19c> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:460 if (inexact) - c004d366: f9e5 bnez a1,c004d356 <__bf_round+0x13c> + c004d536: f9e5 bnez a1,c004d526 <__bf_round+0x13c> __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:532 if (prec <= 0) { - c004d368: 04904963 bgtz s1,c004d3ba <__bf_round+0x1a0> + c004d538: 04904963 bgtz s1,c004d58a <__bf_round+0x1a0> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:533 if (add_one) { - c004d36c: c7fd beqz a5,c004d45a <__bf_round+0x240> + c004d53c: c7fd beqz a5,c004d62a <__bf_round+0x240> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:534 bf_resize(r, 1); /* cannot fail */ - c004d36e: 4585 li a1,1 - c004d370: 8522 mv a0,s0 - c004d372: cb1ff0ef jal ra,c004d022 + c004d53e: 4585 li a1,1 + c004d540: 8522 mv a0,s0 + c004d542: cb1ff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:535 r->tab[0] = (limb_t)1 << (LIMB_BITS - 1); - c004d376: 7018 ld a4,32(s0) - c004d378: 57fd li a5,-1 - c004d37a: 17fe slli a5,a5,0x3f - c004d37c: e31c sd a5,0(a4) + c004d546: 7018 ld a4,32(s0) + c004d548: 57fd li a5,-1 + c004d54a: 17fe slli a5,a5,0x3f + c004d54c: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:536 r->expn += 1 - prec; - c004d37e: 681c ld a5,16(s0) - c004d380: 0785 addi a5,a5,1 - c004d382: 409784b3 sub s1,a5,s1 - c004d386: e804 sd s1,16(s0) + c004d54e: 681c ld a5,16(s0) + c004d550: 0785 addi a5,a5,1 + c004d552: 409784b3 sub s1,a5,s1 + c004d556: e804 sd s1,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:579 return ret; - c004d388: 4561 li a0,24 + c004d558: 4561 li a0,24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:606 } - c004d38a: 70e6 ld ra,120(sp) - c004d38c: 7446 ld s0,112(sp) - c004d38e: 74a6 ld s1,104(sp) - c004d390: 7906 ld s2,96(sp) - c004d392: 69e6 ld s3,88(sp) - c004d394: 6a46 ld s4,80(sp) - c004d396: 6aa6 ld s5,72(sp) - c004d398: 6b06 ld s6,64(sp) - c004d39a: 7be2 ld s7,56(sp) - c004d39c: 7c42 ld s8,48(sp) - c004d39e: 7ca2 ld s9,40(sp) - c004d3a0: 7d02 ld s10,32(sp) - c004d3a2: 6de2 ld s11,24(sp) - c004d3a4: 6109 addi sp,sp,128 - c004d3a6: 8082 ret + c004d55a: 70e6 ld ra,120(sp) + c004d55c: 7446 ld s0,112(sp) + c004d55e: 74a6 ld s1,104(sp) + c004d560: 7906 ld s2,96(sp) + c004d562: 69e6 ld s3,88(sp) + c004d564: 6a46 ld s4,80(sp) + c004d566: 6aa6 ld s5,72(sp) + c004d568: 6b06 ld s6,64(sp) + c004d56a: 7be2 ld s7,56(sp) + c004d56c: 7c42 ld s8,48(sp) + c004d56e: 7ca2 ld s9,40(sp) + c004d570: 7d02 ld s10,32(sp) + c004d572: 6de2 ld s11,24(sp) + c004d574: 6109 addi sp,sp,128 + c004d576: 8082 ret bf_get_rnd_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:454 add_one = bit1; - c004d3a8: 0005079b sext.w a5,a0 + c004d578: 0005079b sext.w a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:455 break; - c004d3ac: bf6d j c004d366 <__bf_round+0x14c> + c004d57c: bf6d j c004d536 <__bf_round+0x14c> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:457 abort(); - c004d3ae: 45c080ef jal ra,c005580a + c004d57e: 45c080ef jal ra,c00559da /Users/Luppy/riscv/quickjs-nuttx/libbf.c:429 add_one = 0; - c004d3b2: 87e6 mv a5,s9 - c004d3b4: bf4d j c004d366 <__bf_round+0x14c> - c004d3b6: 4781 li a5,0 - c004d3b8: b77d j c004d366 <__bf_round+0x14c> + c004d582: 87e6 mv a5,s9 + c004d584: bf4d j c004d536 <__bf_round+0x14c> + c004d586: 4781 li a5,0 + c004d588: b77d j c004d536 <__bf_round+0x14c> __bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:542 } else if (add_one) { - c004d3ba: c39d beqz a5,c004d3e0 <__bf_round+0x1c6> + c004d58a: c39d beqz a5,c004d5b0 <__bf_round+0x1c6> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:547 pos = bit_pos >> LIMB_LOG2_BITS; - c004d3bc: 40695593 srai a1,s2,0x6 + c004d58c: 40695593 srai a1,s2,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:548 carry = (limb_t)1 << (bit_pos & (LIMB_BITS - 1)); - c004d3c0: 4785 li a5,1 - c004d3c2: 012797b3 sll a5,a5,s2 + c004d590: 4785 li a5,1 + c004d592: 012797b3 sll a5,a5,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:550 for(i = pos; i < l; i++) { - c004d3c6: 86ae mv a3,a1 + c004d596: 86ae mv a3,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:550 (discriminator 1) - c004d3c8: 0546ed63 bltu a3,s4,c004d422 <__bf_round+0x208> - c004d3cc: 853e mv a0,a5 + c004d598: 0546ed63 bltu a3,s4,c004d5f2 <__bf_round+0x208> + c004d59c: 853e mv a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:557 if (carry) { - c004d3ce: c909 beqz a0,c004d3e0 <__bf_round+0x1c6> + c004d59e: c909 beqz a0,c004d5b0 <__bf_round+0x1c6> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:560 for(i = l - 1; i >= pos; i--) { - c004d3d0: fffa0793 addi a5,s4,-1 + c004d5a0: fffa0793 addi a5,s4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:559 v = 1; - c004d3d4: 4705 li a4,1 + c004d5a4: 4705 li a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:560 (discriminator 1) for(i = l - 1; i >= pos; i--) { - c004d3d6: 06b7d563 bge a5,a1,c004d440 <__bf_round+0x226> + c004d5a6: 06b7d563 bge a5,a1,c004d610 <__bf_round+0x226> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:565 r->expn++; - c004d3da: 681c ld a5,16(s0) - c004d3dc: 0785 addi a5,a5,1 - c004d3de: e81c sd a5,16(s0) + c004d5aa: 681c ld a5,16(s0) + c004d5ac: 0785 addi a5,a5,1 + c004d5ae: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:570 if (unlikely(r->expn < e_min)) { - c004d3e0: 681c ld a5,16(s0) - c004d3e2: 0167d963 bge a5,s6,c004d3f4 <__bf_round+0x1da> + c004d5b0: 681c ld a5,16(s0) + c004d5b2: 0167d963 bge a5,s6,c004d5c4 <__bf_round+0x1da> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:571 if (flags & BF_FLAG_SUBNORMAL) { - c004d3e6: 008df713 andi a4,s11,8 - c004d3ea: cb25 beqz a4,c004d45a <__bf_round+0x240> + c004d5b6: 008df713 andi a4,s11,8 + c004d5ba: cb25 beqz a4,c004d62a <__bf_round+0x240> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:573 if (ret & BF_ST_INEXACT) - c004d3ec: 00098463 beqz s3,c004d3f4 <__bf_round+0x1da> + c004d5bc: 00098463 beqz s3,c004d5c4 <__bf_round+0x1da> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:574 ret |= BF_ST_UNDERFLOW; - c004d3f0: 0089e993 ori s3,s3,8 + c004d5c0: 0089e993 ori s3,s3,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:584 if (unlikely(r->expn > e_max)) - c004d3f4: 6722 ld a4,8(sp) - c004d3f6: 06f75763 bge a4,a5,c004d464 <__bf_round+0x24a> + c004d5c4: 6722 ld a4,8(sp) + c004d5c6: 06f75763 bge a4,a5,c004d634 <__bf_round+0x24a> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:585 return bf_set_overflow(r, r->sign, prec1, flags); - c004d3fa: 440c lw a1,8(s0) - c004d3fc: 8522 mv a0,s0 + c004d5ca: 440c lw a1,8(s0) + c004d5cc: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:606 } - c004d3fe: 7446 ld s0,112(sp) - c004d400: 70e6 ld ra,120(sp) - c004d402: 74a6 ld s1,104(sp) - c004d404: 7906 ld s2,96(sp) - c004d406: 69e6 ld s3,88(sp) - c004d408: 6a46 ld s4,80(sp) - c004d40a: 6aa6 ld s5,72(sp) - c004d40c: 6b06 ld s6,64(sp) - c004d40e: 7be2 ld s7,56(sp) - c004d410: 7ca2 ld s9,40(sp) - c004d412: 7d02 ld s10,32(sp) + c004d5ce: 7446 ld s0,112(sp) + c004d5d0: 70e6 ld ra,120(sp) + c004d5d2: 74a6 ld s1,104(sp) + c004d5d4: 7906 ld s2,96(sp) + c004d5d6: 69e6 ld s3,88(sp) + c004d5d8: 6a46 ld s4,80(sp) + c004d5da: 6aa6 ld s5,72(sp) + c004d5dc: 6b06 ld s6,64(sp) + c004d5de: 7be2 ld s7,56(sp) + c004d5e0: 7ca2 ld s9,40(sp) + c004d5e2: 7d02 ld s10,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:585 return bf_set_overflow(r, r->sign, prec1, flags); - c004d414: 86ee mv a3,s11 - c004d416: 8662 mv a2,s8 + c004d5e4: 86ee mv a3,s11 + c004d5e6: 8662 mv a2,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:606 } - c004d418: 6de2 ld s11,24(sp) - c004d41a: 7c42 ld s8,48(sp) - c004d41c: 6109 addi sp,sp,128 + c004d5e8: 6de2 ld s11,24(sp) + c004d5ea: 7c42 ld s8,48(sp) + c004d5ec: 6109 addi sp,sp,128 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:585 return bf_set_overflow(r, r->sign, prec1, flags); - c004d41e: d29ff06f j c004d146 + c004d5ee: d29ff06f j c004d316 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:551 v = r->tab[i] + carry; - c004d422: 7018 ld a4,32(s0) - c004d424: 00369613 slli a2,a3,0x3 - c004d428: 963a add a2,a2,a4 - c004d42a: 6218 ld a4,0(a2) - c004d42c: 973e add a4,a4,a5 + c004d5f2: 7018 ld a4,32(s0) + c004d5f4: 00369613 slli a2,a3,0x3 + c004d5f8: 963a add a2,a2,a4 + c004d5fa: 6218 ld a4,0(a2) + c004d5fc: 973e add a4,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:552 carry = (v < carry); - c004d42e: 00f73833 sltu a6,a4,a5 + c004d5fe: 00f73833 sltu a6,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:553 r->tab[i] = v; - c004d432: e218 sd a4,0(a2) + c004d602: e218 sd a4,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:552 carry = (v < carry); - c004d434: 8542 mv a0,a6 + c004d604: 8542 mv a0,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:554 if (carry == 0) - c004d436: f8f77ce3 bgeu a4,a5,c004d3ce <__bf_round+0x1b4> + c004d606: f8f77ce3 bgeu a4,a5,c004d59e <__bf_round+0x1b4> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:550 (discriminator 2) for(i = pos; i < l; i++) { - c004d43a: 0685 addi a3,a3,1 + c004d60a: 0685 addi a3,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:552 (discriminator 2) carry = (v < carry); - c004d43c: 87c2 mv a5,a6 - c004d43e: b769 j c004d3c8 <__bf_round+0x1ae> + c004d60c: 87c2 mv a5,a6 + c004d60e: b769 j c004d598 <__bf_round+0x1ae> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:561 (discriminator 3) a = r->tab[i]; - c004d440: 7014 ld a3,32(s0) - c004d442: 00379613 slli a2,a5,0x3 + c004d610: 7014 ld a3,32(s0) + c004d612: 00379613 slli a2,a5,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:562 (discriminator 3) r->tab[i] = (a >> 1) | (v << (LIMB_BITS - 1)); - c004d446: 177e slli a4,a4,0x3f + c004d616: 177e slli a4,a4,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:561 (discriminator 3) a = r->tab[i]; - c004d448: 96b2 add a3,a3,a2 - c004d44a: 6288 ld a0,0(a3) + c004d618: 96b2 add a3,a3,a2 + c004d61a: 6288 ld a0,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:560 (discriminator 3) for(i = l - 1; i >= pos; i--) { - c004d44c: 17fd addi a5,a5,-1 + c004d61c: 17fd addi a5,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:562 (discriminator 3) r->tab[i] = (a >> 1) | (v << (LIMB_BITS - 1)); - c004d44e: 00155613 srli a2,a0,0x1 - c004d452: 8f51 or a4,a4,a2 - c004d454: e298 sd a4,0(a3) + c004d61e: 00155613 srli a2,a0,0x1 + c004d622: 8f51 or a4,a4,a2 + c004d624: e298 sd a4,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:563 (discriminator 3) v = a; - c004d456: 872a mv a4,a0 - c004d458: bfbd j c004d3d6 <__bf_round+0x1bc> + c004d626: 872a mv a4,a0 + c004d628: bfbd j c004d5a6 <__bf_round+0x1bc> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:578 bf_set_zero(r, r->sign); - c004d45a: 440c lw a1,8(s0) - c004d45c: 8522 mv a0,s0 - c004d45e: ca1ff0ef jal ra,c004d0fe - c004d462: b71d j c004d388 <__bf_round+0x16e> + c004d62a: 440c lw a1,8(s0) + c004d62c: 8522 mv a0,s0 + c004d62e: ca1ff0ef jal ra,c004d2ce + c004d632: b71d j c004d558 <__bf_round+0x16e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:589 i = bit_pos >> LIMB_LOG2_BITS; - c004d464: 40695493 srai s1,s2,0x6 + c004d634: 40695493 srai s1,s2,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:590 if (i >= 0) { - c004d468: 04094863 bltz s2,c004d4b8 <__bf_round+0x29e> + c004d638: 04094863 bltz s2,c004d688 <__bf_round+0x29e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:591 shift = bit_pos & (LIMB_BITS - 1); - c004d46c: 03f97513 andi a0,s2,63 + c004d63c: 03f97513 andi a0,s2,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:592 if (shift != 0) - c004d470: cd11 beqz a0,c004d48c <__bf_round+0x272> + c004d640: cd11 beqz a0,c004d65c <__bf_round+0x272> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:593 r->tab[i] &= limb_mask(shift, LIMB_BITS - 1); - c004d472: 701c ld a5,32(s0) - c004d474: 00349a93 slli s5,s1,0x3 - c004d478: 03f00593 li a1,63 - c004d47c: 9abe add s5,s5,a5 - c004d47e: 8a9ff0ef jal ra,c004cd26 - c004d482: 000ab783 ld a5,0(s5) - c004d486: 8fe9 and a5,a5,a0 - c004d488: 00fab023 sd a5,0(s5) + c004d642: 701c ld a5,32(s0) + c004d644: 00349a93 slli s5,s1,0x3 + c004d648: 03f00593 li a1,63 + c004d64c: 9abe add s5,s5,a5 + c004d64e: 8a9ff0ef jal ra,c004cef6 + c004d652: 000ab783 ld a5,0(s5) + c004d656: 8fe9 and a5,a5,a0 + c004d658: 00fab023 sd a5,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:598 while (r->tab[i] == 0) - c004d48c: 7008 ld a0,32(s0) - c004d48e: 00349793 slli a5,s1,0x3 - c004d492: 97aa add a5,a5,a0 - c004d494: 85be mv a1,a5 - c004d496: 6398 ld a4,0(a5) - c004d498: 07a1 addi a5,a5,8 - c004d49a: c30d beqz a4,c004d4bc <__bf_round+0x2a2> + c004d65c: 7008 ld a0,32(s0) + c004d65e: 00349793 slli a5,s1,0x3 + c004d662: 97aa add a5,a5,a0 + c004d664: 85be mv a1,a5 + c004d666: 6398 ld a4,0(a5) + c004d668: 07a1 addi a5,a5,8 + c004d66a: c30d beqz a4,c004d68c <__bf_round+0x2a2> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:600 if (i > 0) { - c004d49c: 00905863 blez s1,c004d4ac <__bf_round+0x292> + c004d66c: 00905863 blez s1,c004d67c <__bf_round+0x292> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:601 l -= i; - c004d4a0: 409a0a33 sub s4,s4,s1 + c004d670: 409a0a33 sub s4,s4,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:602 memmove(r->tab, r->tab + i, l * sizeof(limb_t)); - c004d4a4: 003a1613 slli a2,s4,0x3 - c004d4a8: 386090ef jal ra,c005682e + c004d674: 003a1613 slli a2,s4,0x3 + c004d678: 386090ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:604 bf_resize(r, l); /* cannot fail */ - c004d4ac: 85d2 mv a1,s4 - c004d4ae: 8522 mv a0,s0 - c004d4b0: b73ff0ef jal ra,c004d022 + c004d67c: 85d2 mv a1,s4 + c004d67e: 8522 mv a0,s0 + c004d680: b73ff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:605 return ret; - c004d4b4: 854e mv a0,s3 - c004d4b6: bdd1 j c004d38a <__bf_round+0x170> + c004d684: 854e mv a0,s3 + c004d686: bdd1 j c004d55a <__bf_round+0x170> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:595 i = 0; - c004d4b8: 4481 li s1,0 - c004d4ba: bfc9 j c004d48c <__bf_round+0x272> + c004d688: 4481 li s1,0 + c004d68a: bfc9 j c004d65c <__bf_round+0x272> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:599 i++; - c004d4bc: 0485 addi s1,s1,1 - c004d4be: bfd9 j c004d494 <__bf_round+0x27a> + c004d68c: 0485 addi s1,s1,1 + c004d68e: bfd9 j c004d664 <__bf_round+0x27a> -00000000c004d4c0 : +00000000c004d690 : bf_set(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:303 { - c004d4c0: 1101 addi sp,sp,-32 - c004d4c2: e04a sd s2,0(sp) - c004d4c4: ec06 sd ra,24(sp) - c004d4c6: e822 sd s0,16(sp) - c004d4c8: e426 sd s1,8(sp) + c004d690: 1101 addi sp,sp,-32 + c004d692: e04a sd s2,0(sp) + c004d694: ec06 sd ra,24(sp) + c004d696: e822 sd s0,16(sp) + c004d698: e426 sd s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:305 return 0; - c004d4ca: 4901 li s2,0 + c004d69a: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:304 if (r == a) - c004d4cc: 00b50e63 beq a0,a1,c004d4e8 - c004d4d0: 842e mv s0,a1 + c004d69c: 00b50e63 beq a0,a1,c004d6b8 + c004d6a0: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:306 if (bf_resize(r, a->len)) { - c004d4d2: 6d8c ld a1,24(a1) - c004d4d4: 84aa mv s1,a0 - c004d4d6: b4dff0ef jal ra,c004d022 - c004d4da: 892a mv s2,a0 - c004d4dc: cd09 beqz a0,c004d4f6 + c004d6a2: 6d8c ld a1,24(a1) + c004d6a4: 84aa mv s1,a0 + c004d6a6: b4dff0ef jal ra,c004d1f2 + c004d6aa: 892a mv s2,a0 + c004d6ac: cd09 beqz a0,c004d6c6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:307 bf_set_nan(r); - c004d4de: 8526 mv a0,s1 - c004d4e0: b7dff0ef jal ra,c004d05c + c004d6ae: 8526 mv a0,s1 + c004d6b0: b7dff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:308 return BF_ST_MEM_ERROR; - c004d4e4: 02000913 li s2,32 + c004d6b4: 02000913 li s2,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:314 } - c004d4e8: 60e2 ld ra,24(sp) - c004d4ea: 6442 ld s0,16(sp) - c004d4ec: 64a2 ld s1,8(sp) - c004d4ee: 854a mv a0,s2 - c004d4f0: 6902 ld s2,0(sp) - c004d4f2: 6105 addi sp,sp,32 - c004d4f4: 8082 ret + c004d6b8: 60e2 ld ra,24(sp) + c004d6ba: 6442 ld s0,16(sp) + c004d6bc: 64a2 ld s1,8(sp) + c004d6be: 854a mv a0,s2 + c004d6c0: 6902 ld s2,0(sp) + c004d6c2: 6105 addi sp,sp,32 + c004d6c4: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:310 r->sign = a->sign; - c004d4f6: 441c lw a5,8(s0) + c004d6c6: 441c lw a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:312 memcpy(r->tab, a->tab, a->len * sizeof(limb_t)); - c004d4f8: 7088 ld a0,32(s1) + c004d6c8: 7088 ld a0,32(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:310 r->sign = a->sign; - c004d4fa: c49c sw a5,8(s1) + c004d6ca: c49c sw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:311 r->expn = a->expn; - c004d4fc: 681c ld a5,16(s0) - c004d4fe: e89c sd a5,16(s1) + c004d6cc: 681c ld a5,16(s0) + c004d6ce: e89c sd a5,16(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:312 memcpy(r->tab, a->tab, a->len * sizeof(limb_t)); - c004d500: 6c10 ld a2,24(s0) - c004d502: 700c ld a1,32(s0) - c004d504: 060e slli a2,a2,0x3 - c004d506: 4d4090ef jal ra,c00569da + c004d6d0: 6c10 ld a2,24(s0) + c004d6d2: 700c ld a1,32(s0) + c004d6d4: 060e slli a2,a2,0x3 + c004d6d6: 4d4090ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:313 return 0; - c004d50a: bff9 j c004d4e8 + c004d6da: bff9 j c004d6b8 -00000000c004d50c : +00000000c004d6dc : bf_move(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:320 if (r == a) - c004d50c: 02b50763 beq a0,a1,c004d53a + c004d6dc: 02b50763 beq a0,a1,c004d70a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:318 { - c004d510: 1101 addi sp,sp,-32 - c004d512: ec06 sd ra,24(sp) - c004d514: e822 sd s0,16(sp) - c004d516: e426 sd s1,8(sp) - c004d518: 842a mv s0,a0 - c004d51a: 84ae mv s1,a1 + c004d6e0: 1101 addi sp,sp,-32 + c004d6e2: ec06 sd ra,24(sp) + c004d6e4: e822 sd s0,16(sp) + c004d6e6: e426 sd s1,8(sp) + c004d6e8: 842a mv s0,a0 + c004d6ea: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:322 bf_free(s, r->tab); - c004d51c: 710c ld a1,32(a0) - c004d51e: 6108 ld a0,0(a0) - c004d520: f62ff0ef jal ra,c004cc82 + c004d6ec: 710c ld a1,32(a0) + c004d6ee: 6108 ld a0,0(a0) + c004d6f0: f62ff0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:323 *r = *a; - c004d524: 85a6 mv a1,s1 - c004d526: 8522 mv a0,s0 - c004d528: 02800613 li a2,40 - c004d52c: 4ae090ef jal ra,c00569da + c004d6f4: 85a6 mv a1,s1 + c004d6f6: 8522 mv a0,s0 + c004d6f8: 02800613 li a2,40 + c004d6fc: 4ae090ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:324 } - c004d530: 60e2 ld ra,24(sp) - c004d532: 6442 ld s0,16(sp) - c004d534: 64a2 ld s1,8(sp) - c004d536: 6105 addi sp,sp,32 - c004d538: 8082 ret - c004d53a: 8082 ret + c004d700: 60e2 ld ra,24(sp) + c004d702: 6442 ld s0,16(sp) + c004d704: 64a2 ld s1,8(sp) + c004d706: 6105 addi sp,sp,32 + c004d708: 8082 ret + c004d70a: 8082 ret -00000000c004d53c : +00000000c004d70c : bf_op2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2211 { - c004d53c: 715d addi sp,sp,-80 - c004d53e: e0a2 sd s0,64(sp) - c004d540: e486 sd ra,72(sp) - c004d542: fc26 sd s1,56(sp) - c004d544: 842a mv s0,a0 - c004d546: 882e mv a6,a1 - c004d548: 88b2 mv a7,a2 - c004d54a: 8336 mv t1,a3 - c004d54c: 8e3a mv t3,a4 + c004d70c: 715d addi sp,sp,-80 + c004d70e: e0a2 sd s0,64(sp) + c004d710: e486 sd ra,72(sp) + c004d712: fc26 sd s1,56(sp) + c004d714: 842a mv s0,a0 + c004d716: 882e mv a6,a1 + c004d718: 88b2 mv a7,a2 + c004d71a: 8336 mv t1,a3 + c004d71c: 8e3a mv t3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2215 if (r == a || r == b) { - c004d54e: 00b50963 beq a0,a1,c004d560 + c004d71e: 00b50963 beq a0,a1,c004d730 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2215 (discriminator 1) - c004d552: 00c50763 beq a0,a2,c004d560 + c004d722: 00c50763 beq a0,a2,c004d730 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2223 } - c004d556: 6406 ld s0,64(sp) - c004d558: 60a6 ld ra,72(sp) - c004d55a: 74e2 ld s1,56(sp) - c004d55c: 6161 addi sp,sp,80 + c004d726: 6406 ld s0,64(sp) + c004d728: 60a6 ld ra,72(sp) + c004d72a: 74e2 ld s1,56(sp) + c004d72c: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2220 ret = func(r, a, b, prec, flags); - c004d55e: 8782 jr a5 + c004d72e: 8782 jr a5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004d560: 6018 ld a4,0(s0) + c004d730: 6018 ld a4,0(s0) bf_op2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2217 ret = func(&tmp, a, b, prec, flags); - c004d562: 85c2 mv a1,a6 - c004d564: 869a mv a3,t1 + c004d732: 85c2 mv a1,a6 + c004d734: 869a mv a3,t1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004d566: e43a sd a4,8(sp) + c004d736: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d568: 577d li a4,-1 - c004d56a: 177e slli a4,a4,0x3f - c004d56c: ec3a sd a4,24(sp) + c004d738: 577d li a4,-1 + c004d73a: 177e slli a4,a4,0x3f + c004d73c: ec3a sd a4,24(sp) bf_op2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2217 ret = func(&tmp, a, b, prec, flags); - c004d56e: 8646 mv a2,a7 - c004d570: 8772 mv a4,t3 - c004d572: 0028 addi a0,sp,8 + c004d73e: 8646 mv a2,a7 + c004d740: 8772 mv a4,t3 + c004d742: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004d574: c802 sw zero,16(sp) + c004d744: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004d576: f002 sd zero,32(sp) + c004d746: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004d578: f402 sd zero,40(sp) + c004d748: f402 sd zero,40(sp) bf_op2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2217 ret = func(&tmp, a, b, prec, flags); - c004d57a: 9782 jalr a5 - c004d57c: 84aa mv s1,a0 + c004d74a: 9782 jalr a5 + c004d74c: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2218 bf_move(r, &tmp); - c004d57e: 002c addi a1,sp,8 - c004d580: 8522 mv a0,s0 - c004d582: f8bff0ef jal ra,c004d50c + c004d74e: 002c addi a1,sp,8 + c004d750: 8522 mv a0,s0 + c004d752: f8bff0ef jal ra,c004d6dc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2223 } - c004d586: 60a6 ld ra,72(sp) - c004d588: 6406 ld s0,64(sp) - c004d58a: 8526 mv a0,s1 - c004d58c: 74e2 ld s1,56(sp) - c004d58e: 6161 addi sp,sp,80 - c004d590: 8082 ret + c004d756: 60a6 ld ra,72(sp) + c004d758: 6406 ld s0,64(sp) + c004d75a: 8526 mv a0,s1 + c004d75c: 74e2 ld s1,56(sp) + c004d75e: 6161 addi sp,sp,80 + c004d760: 8082 ret -00000000c004d592 : +00000000c004d762 : bf_normalize_and_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:610 { - c004d592: 7179 addi sp,sp,-48 - c004d594: f022 sd s0,32(sp) - c004d596: f406 sd ra,40(sp) + c004d762: 7179 addi sp,sp,-48 + c004d764: f022 sd s0,32(sp) + c004d766: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:616 l = r->len; - c004d598: 6d1c ld a5,24(a0) + c004d768: 6d1c ld a5,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:610 { - c004d59a: 842a mv s0,a0 + c004d76a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:616 l = r->len; - c004d59c: 86be mv a3,a5 + c004d76c: 86be mv a3,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:617 while (l > 0 && r->tab[l - 1] == 0) - c004d59e: c6c1 beqz a3,c004d626 + c004d76e: c6c1 beqz a3,c004d7f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:617 (discriminator 1) - c004d5a0: 00369713 slli a4,a3,0x3 - c004d5a4: ff870513 addi a0,a4,-8 - c004d5a8: 7018 ld a4,32(s0) - c004d5aa: 972a add a4,a4,a0 - c004d5ac: 6308 ld a0,0(a4) - c004d5ae: c929 beqz a0,c004d600 + c004d770: 00369713 slli a4,a3,0x3 + c004d774: ff870513 addi a0,a4,-8 + c004d778: 7018 ld a4,32(s0) + c004d77a: 972a add a4,a4,a0 + c004d77c: 6308 ld a0,0(a4) + c004d77e: c929 beqz a0,c004d7d0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:625 r->expn -= (r->len - l) * LIMB_BITS; - c004d5b0: 6808 ld a0,16(s0) - c004d5b2: 8f95 sub a5,a5,a3 - c004d5b4: 079a slli a5,a5,0x6 - c004d5b6: 40f507b3 sub a5,a0,a5 - c004d5ba: e81c sd a5,16(s0) + c004d780: 6808 ld a0,16(s0) + c004d782: 8f95 sub a5,a5,a3 + c004d784: 079a slli a5,a5,0x6 + c004d786: 40f507b3 sub a5,a0,a5 + c004d78a: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:627 v = r->tab[l - 1]; - c004d5bc: 6308 ld a0,0(a4) + c004d78c: 6308 ld a0,0(a4) clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:98 if (a == 0) { - c004d5be: e139 bnez a0,c004d604 + c004d78e: e139 bnez a0,c004d7d4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:99 return LIMB_BITS; - c004d5c0: 04000513 li a0,64 + c004d790: 04000513 li a0,64 bf_normalize_and_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:633 (discriminator 1) r->tab[i] = (a << shift) | (v >> (LIMB_BITS - shift)); - c004d5c4: 04000893 li a7,64 + c004d794: 04000893 li a7,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:616 (discriminator 1) l = r->len; - c004d5c8: 4701 li a4,0 - c004d5ca: 4301 li t1,0 + c004d798: 4701 li a4,0 + c004d79a: 4301 li t1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:633 (discriminator 1) r->tab[i] = (a << shift) | (v >> (LIMB_BITS - shift)); - c004d5cc: 40a888bb subw a7,a7,a0 + c004d79c: 40a888bb subw a7,a7,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:632 (discriminator 3) a = r->tab[i]; - c004d5d0: 02043803 ld a6,32(s0) - c004d5d4: 00371793 slli a5,a4,0x3 + c004d7a0: 02043803 ld a6,32(s0) + c004d7a4: 00371793 slli a5,a4,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:631 (discriminator 3) for(i = 0; i < l; i++) { - c004d5d8: 0705 addi a4,a4,1 + c004d7a8: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:632 (discriminator 3) a = r->tab[i]; - c004d5da: 983e add a6,a6,a5 - c004d5dc: 879a mv a5,t1 - c004d5de: 00083303 ld t1,0(a6) + c004d7aa: 983e add a6,a6,a5 + c004d7ac: 879a mv a5,t1 + c004d7ae: 00083303 ld t1,0(a6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:633 (discriminator 3) r->tab[i] = (a << shift) | (v >> (LIMB_BITS - shift)); - c004d5e2: 0117d7b3 srl a5,a5,a7 - c004d5e6: 00a31e33 sll t3,t1,a0 - c004d5ea: 01c7e7b3 or a5,a5,t3 - c004d5ee: 00f83023 sd a5,0(a6) + c004d7b2: 0117d7b3 srl a5,a5,a7 + c004d7b6: 00a31e33 sll t3,t1,a0 + c004d7ba: 01c7e7b3 or a5,a5,t3 + c004d7be: 00f83023 sd a5,0(a6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:631 (discriminator 3) for(i = 0; i < l; i++) { - c004d5f2: fce69fe3 bne a3,a4,c004d5d0 + c004d7c2: fce69fe3 bne a3,a4,c004d7a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:636 r->expn -= shift; - c004d5f6: 681c ld a5,16(s0) - c004d5f8: 40a78533 sub a0,a5,a0 - c004d5fc: e808 sd a0,16(s0) - c004d5fe: a829 j c004d618 + c004d7c6: 681c ld a5,16(s0) + c004d7c8: 40a78533 sub a0,a5,a0 + c004d7cc: e808 sd a0,16(s0) + c004d7ce: a829 j c004d7e8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:618 l--; - c004d600: 16fd addi a3,a3,-1 - c004d602: bf71 j c004d59e - c004d604: ec32 sd a2,24(sp) - c004d606: e82e sd a1,16(sp) - c004d608: e436 sd a3,8(sp) + c004d7d0: 16fd addi a3,a3,-1 + c004d7d2: bf71 j c004d76e + c004d7d4: ec32 sd a2,24(sp) + c004d7d6: e82e sd a1,16(sp) + c004d7d8: e436 sd a3,8(sp) clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004d60a: 9f7b20ef jal ra,c0000000 <__clzdi2> - c004d60e: 2501 sext.w a0,a0 + c004d7da: 827b20ef jal ra,c0000000 <__clzdi2> + c004d7de: 2501 sext.w a0,a0 bf_normalize_and_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:629 if (shift != 0) { - c004d610: 66a2 ld a3,8(sp) - c004d612: 65c2 ld a1,16(sp) - c004d614: 6662 ld a2,24(sp) - c004d616: f55d bnez a0,c004d5c4 + c004d7e0: 66a2 ld a3,8(sp) + c004d7e2: 65c2 ld a1,16(sp) + c004d7e4: 6662 ld a2,24(sp) + c004d7e6: f55d bnez a0,c004d794 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:638 ret = __bf_round(r, prec1, flags, l, 0); - c004d618: 8522 mv a0,s0 + c004d7e8: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:642 } - c004d61a: 7402 ld s0,32(sp) - c004d61c: 70a2 ld ra,40(sp) + c004d7ea: 7402 ld s0,32(sp) + c004d7ec: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:638 ret = __bf_round(r, prec1, flags, l, 0); - c004d61e: 4701 li a4,0 + c004d7ee: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:642 } - c004d620: 6145 addi sp,sp,48 + c004d7f0: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:638 ret = __bf_round(r, prec1, flags, l, 0); - c004d622: bf9ff06f j c004d21a <__bf_round> + c004d7f2: bf9ff06f j c004d3ea <__bf_round> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:621 r->expn = BF_EXP_ZERO; - c004d626: 57fd li a5,-1 - c004d628: 17fe slli a5,a5,0x3f - c004d62a: e81c sd a5,16(s0) + c004d7f6: 57fd li a5,-1 + c004d7f8: 17fe slli a5,a5,0x3f + c004d7fa: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:622 bf_resize(r, 0); /* cannot fail */ - c004d62c: 8522 mv a0,s0 - c004d62e: 4581 li a1,0 - c004d630: 9f3ff0ef jal ra,c004d022 + c004d7fc: 8522 mv a0,s0 + c004d7fe: 4581 li a1,0 + c004d800: 9f3ff0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:642 } - c004d634: 70a2 ld ra,40(sp) - c004d636: 7402 ld s0,32(sp) - c004d638: 4501 li a0,0 - c004d63a: 6145 addi sp,sp,48 - c004d63c: 8082 ret + c004d804: 70a2 ld ra,40(sp) + c004d806: 7402 ld s0,32(sp) + c004d808: 4501 li a0,0 + c004d80a: 6145 addi sp,sp,48 + c004d80c: 8082 ret -00000000c004d63e : +00000000c004d80e : bf_can_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:649 { - c004d63e: 7139 addi sp,sp,-64 - c004d640: f822 sd s0,48(sp) - c004d642: fc06 sd ra,56(sp) - c004d644: f426 sd s1,40(sp) - c004d646: f04a sd s2,32(sp) - c004d648: ec4e sd s3,24(sp) - c004d64a: e852 sd s4,16(sp) - c004d64c: e456 sd s5,8(sp) - c004d64e: e05a sd s6,0(sp) - c004d650: 8436 mv s0,a3 + c004d80e: 7139 addi sp,sp,-64 + c004d810: f822 sd s0,48(sp) + c004d812: fc06 sd ra,56(sp) + c004d814: f426 sd s1,40(sp) + c004d816: f04a sd s2,32(sp) + c004d818: ec4e sd s3,24(sp) + c004d81a: e852 sd s4,16(sp) + c004d81c: e456 sd s5,8(sp) + c004d81e: e05a sd s6,0(sp) + c004d820: 8436 mv s0,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:654 if (a->expn == BF_EXP_INF || a->expn == BF_EXP_NAN) - c004d652: 6914 ld a3,16(a0) - c004d654: 576d li a4,-5 - c004d656: 8305 srli a4,a4,0x1 - c004d658: 06d74c63 blt a4,a3,c004d6d0 + c004d822: 6914 ld a3,16(a0) + c004d824: 576d li a4,-5 + c004d826: 8305 srli a4,a4,0x1 + c004d828: 06d74c63 blt a4,a3,c004d8a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:656 if (rnd_mode == BF_RNDF) { - c004d65c: 4719 li a4,6 - c004d65e: 892e mv s2,a1 - c004d660: 84b2 mv s1,a2 - c004d662: 02e61363 bne a2,a4,c004d688 + c004d82c: 4719 li a4,6 + c004d82e: 892e mv s2,a1 + c004d830: 84b2 mv s1,a2 + c004d832: 02e61363 bne a2,a4,c004d858 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:657 return (k >= (prec + 1)); - c004d666: 00158513 addi a0,a1,1 - c004d66a: 00a42533 slt a0,s0,a0 - c004d66e: 00154513 xori a0,a0,1 - c004d672: 2501 sext.w a0,a0 + c004d836: 00158513 addi a0,a1,1 + c004d83a: 00a42533 slt a0,s0,a0 + c004d83e: 00154513 xori a0,a0,1 + c004d842: 2501 sext.w a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:681 } - c004d674: 70e2 ld ra,56(sp) - c004d676: 7442 ld s0,48(sp) - c004d678: 74a2 ld s1,40(sp) - c004d67a: 7902 ld s2,32(sp) - c004d67c: 69e2 ld s3,24(sp) - c004d67e: 6a42 ld s4,16(sp) - c004d680: 6aa2 ld s5,8(sp) - c004d682: 6b02 ld s6,0(sp) - c004d684: 6121 addi sp,sp,64 - c004d686: 8082 ret + c004d844: 70e2 ld ra,56(sp) + c004d846: 7442 ld s0,48(sp) + c004d848: 74a2 ld s1,40(sp) + c004d84a: 7902 ld s2,32(sp) + c004d84c: 69e2 ld s3,24(sp) + c004d84e: 6a42 ld s4,16(sp) + c004d850: 6aa2 ld s5,8(sp) + c004d852: 6b02 ld s6,0(sp) + c004d854: 6121 addi sp,sp,64 + c004d856: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:659 if (a->expn == BF_EXP_ZERO) - c004d688: 577d li a4,-1 - c004d68a: 177e slli a4,a4,0x3f - c004d68c: 87aa mv a5,a0 + c004d858: 577d li a4,-1 + c004d85a: 177e slli a4,a4,0x3f + c004d85c: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:655 return FALSE; - c004d68e: 4501 li a0,0 + c004d85e: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:659 if (a->expn == BF_EXP_ZERO) - c004d690: fee682e3 beq a3,a4,c004d674 + c004d860: fee682e3 beq a3,a4,c004d844 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:662 if (k < (prec + 2)) - c004d694: 00258713 addi a4,a1,2 - c004d698: fce44ee3 blt s0,a4,c004d674 + c004d864: 00258713 addi a4,a1,2 + c004d868: fce44ee3 blt s0,a4,c004d844 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:664 bit_pos = a->len * LIMB_BITS - 1 - prec; - c004d69c: 0187bb03 ld s6,24(a5) + c004d86c: 0187bb03 ld s6,24(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:669 bit = get_bit(a->tab, a->len, bit_pos); - c004d6a0: 0207ba83 ld s5,32(a5) + c004d870: 0207ba83 ld s5,32(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:661 is_rndn = (rnd_mode == BF_RNDN || rnd_mode == BF_RNDNA); - c004d6a4: 98ed andi s1,s1,-5 + c004d874: 98ed andi s1,s1,-5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:664 bit_pos = a->len * LIMB_BITS - 1 - prec; - c004d6a6: 006b1993 slli s3,s6,0x6 - c004d6aa: 40b989b3 sub s3,s3,a1 + c004d876: 006b1993 slli s3,s6,0x6 + c004d87a: 40b989b3 sub s3,s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:669 bit = get_bit(a->tab, a->len, bit_pos); - c004d6ae: fff98613 addi a2,s3,-1 - c004d6b2: 85da mv a1,s6 - c004d6b4: 8556 mv a0,s5 - c004d6b6: fff44413 not s0,s0 - c004d6ba: e4cff0ef jal ra,c004cd06 + c004d87e: fff98613 addi a2,s3,-1 + c004d882: 85da mv a1,s6 + c004d884: 8556 mv a0,s5 + c004d886: fff44413 not s0,s0 + c004d88a: e4cff0ef jal ra,c004ced6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:661 is_rndn = (rnd_mode == BF_RNDN || rnd_mode == BF_RNDNA); - c004d6be: 0014b493 seqz s1,s1 - c004d6c2: 944a add s0,s0,s2 + c004d88e: 0014b493 seqz s1,s1 + c004d892: 944a add s0,s0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:670 bit_pos--; - c004d6c4: ffe98a13 addi s4,s3,-2 + c004d894: ffe98a13 addi s4,s3,-2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:672 bit ^= is_rndn; - c004d6c8: 8ca9 xor s1,s1,a0 + c004d898: 8ca9 xor s1,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:674 while (n != 0) { - c004d6ca: 944e add s0,s0,s3 - c004d6cc: 008a1463 bne s4,s0,c004d6d4 + c004d89a: 944e add s0,s0,s3 + c004d89c: 008a1463 bne s4,s0,c004d8a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:655 return FALSE; - c004d6d0: 4501 li a0,0 - c004d6d2: b74d j c004d674 + c004d8a0: 4501 li a0,0 + c004d8a2: b74d j c004d844 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:675 if (get_bit(a->tab, a->len, bit_pos) != bit) - c004d6d4: 8652 mv a2,s4 - c004d6d6: 85da mv a1,s6 - c004d6d8: 8556 mv a0,s5 - c004d6da: e2cff0ef jal ra,c004cd06 - c004d6de: 00a49463 bne s1,a0,c004d6e6 + c004d8a4: 8652 mv a2,s4 + c004d8a6: 85da mv a1,s6 + c004d8a8: 8556 mv a0,s5 + c004d8aa: e2cff0ef jal ra,c004ced6 + c004d8ae: 00a49463 bne s1,a0,c004d8b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:677 bit_pos--; - c004d6e2: 1a7d addi s4,s4,-1 + c004d8b2: 1a7d addi s4,s4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:678 n--; - c004d6e4: b7e5 j c004d6cc + c004d8b4: b7e5 j c004d89c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:676 return TRUE; - c004d6e6: 4505 li a0,1 - c004d6e8: b771 j c004d674 + c004d8b6: 4505 li a0,1 + c004d8b8: b771 j c004d844 -00000000c004d6ea : +00000000c004d8ba : bf_ziv_rounding(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4245 typedef int ZivFunc(bf_t *r, const bf_t *a, limb_t prec, void *opaque); @@ -213045,44 +213243,44 @@ static int bf_ziv_rounding(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags, ZivFunc *f, void *opaque) { - c004d6ea: 715d addi sp,sp,-80 - c004d6ec: e0a2 sd s0,64(sp) - c004d6ee: fc26 sd s1,56(sp) - c004d6f0: f84a sd s2,48(sp) - c004d6f2: f44e sd s3,40(sp) - c004d6f4: f052 sd s4,32(sp) - c004d6f6: 89ba mv s3,a4 - c004d6f8: 8a3e mv s4,a5 - c004d6fa: e486 sd ra,72(sp) - c004d6fc: ec56 sd s5,24(sp) - c004d6fe: e85a sd s6,16(sp) - c004d700: e45e sd s7,8(sp) - c004d702: e062 sd s8,0(sp) + c004d8ba: 715d addi sp,sp,-80 + c004d8bc: e0a2 sd s0,64(sp) + c004d8be: fc26 sd s1,56(sp) + c004d8c0: f84a sd s2,48(sp) + c004d8c2: f44e sd s3,40(sp) + c004d8c4: f052 sd s4,32(sp) + c004d8c6: 89ba mv s3,a4 + c004d8c8: 8a3e mv s4,a5 + c004d8ca: e486 sd ra,72(sp) + c004d8cc: ec56 sd s5,24(sp) + c004d8ce: e85a sd s6,16(sp) + c004d8d0: e45e sd s7,8(sp) + c004d8d2: e062 sd s8,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4249 int rnd_mode, ret; slimb_t prec1, ziv_extra_bits; rnd_mode = flags & BF_RND_MASK; - c004d704: 0076f793 andi a5,a3,7 + c004d8d4: 0076f793 andi a5,a3,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4250 if (rnd_mode == BF_RNDF) { - c004d708: 4719 li a4,6 + c004d8d8: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4245 { - c004d70a: 842a mv s0,a0 - c004d70c: 84b2 mv s1,a2 - c004d70e: 8936 mv s2,a3 + c004d8da: 842a mv s0,a0 + c004d8dc: 84b2 mv s1,a2 + c004d8de: 8936 mv s2,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4250 if (rnd_mode == BF_RNDF) { - c004d710: 02e79863 bne a5,a4,c004d740 + c004d8e0: 02e79863 bne a5,a4,c004d910 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4252 /* no need to iterate */ f(r, a, prec, opaque); - c004d714: 86d2 mv a3,s4 - c004d716: 9982 jalr s3 + c004d8e4: 86d2 mv a3,s4 + c004d8e6: 9982 jalr s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4253 ret = 0; - c004d718: 4501 li a0,0 + c004d8e8: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4278 } ziv_extra_bits = ziv_extra_bits * 2; @@ -213090,4343 +213288,4343 @@ static int bf_ziv_rounding(bf_t *r, const bf_t *a, } } if (r->len == 0) - c004d71a: 6c14 ld a3,24(s0) - c004d71c: ceb1 beqz a3,c004d778 + c004d8ea: 6c14 ld a3,24(s0) + c004d8ec: ceb1 beqz a3,c004d948 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4281 return ret; else return __bf_round(r, prec, flags, r->len, ret); - c004d71e: 872a mv a4,a0 - c004d720: 8522 mv a0,s0 + c004d8ee: 872a mv a4,a0 + c004d8f0: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4282 } - c004d722: 6406 ld s0,64(sp) - c004d724: 60a6 ld ra,72(sp) - c004d726: 79a2 ld s3,40(sp) - c004d728: 7a02 ld s4,32(sp) - c004d72a: 6ae2 ld s5,24(sp) - c004d72c: 6b42 ld s6,16(sp) - c004d72e: 6ba2 ld s7,8(sp) - c004d730: 6c02 ld s8,0(sp) + c004d8f2: 6406 ld s0,64(sp) + c004d8f4: 60a6 ld ra,72(sp) + c004d8f6: 79a2 ld s3,40(sp) + c004d8f8: 7a02 ld s4,32(sp) + c004d8fa: 6ae2 ld s5,24(sp) + c004d8fc: 6b42 ld s6,16(sp) + c004d8fe: 6ba2 ld s7,8(sp) + c004d900: 6c02 ld s8,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4281 return __bf_round(r, prec, flags, r->len, ret); - c004d732: 864a mv a2,s2 - c004d734: 85a6 mv a1,s1 + c004d902: 864a mv a2,s2 + c004d904: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4282 } - c004d736: 7942 ld s2,48(sp) - c004d738: 74e2 ld s1,56(sp) - c004d73a: 6161 addi sp,sp,80 + c004d906: 7942 ld s2,48(sp) + c004d908: 74e2 ld s1,56(sp) + c004d90a: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4281 return __bf_round(r, prec, flags, r->len, ret); - c004d73c: adfff06f j c004d21a <__bf_round> - c004d740: 8b2e mv s6,a1 - c004d742: 02000a93 li s5,32 - c004d746: 00078c1b sext.w s8,a5 + c004d90c: adfff06f j c004d3ea <__bf_round> + c004d910: 8b2e mv s6,a1 + c004d912: 02000a93 li s5,32 + c004d916: 00078c1b sext.w s8,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4257 prec1 = prec + ziv_extra_bits; - c004d74a: 009a8bb3 add s7,s5,s1 + c004d91a: 009a8bb3 add s7,s5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4258 ret = f(r, a, prec1, opaque); - c004d74e: 86d2 mv a3,s4 - c004d750: 865e mv a2,s7 - c004d752: 85da mv a1,s6 - c004d754: 8522 mv a0,s0 - c004d756: 9982 jalr s3 + c004d91e: 86d2 mv a3,s4 + c004d920: 865e mv a2,s7 + c004d922: 85da mv a1,s6 + c004d924: 8522 mv a0,s0 + c004d926: 9982 jalr s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4259 if (ret & (BF_ST_OVERFLOW | BF_ST_UNDERFLOW | BF_ST_MEM_ERROR)) { - c004d758: 02c57793 andi a5,a0,44 - c004d75c: ef91 bnez a5,c004d778 + c004d928: 02c57793 andi a5,a0,44 + c004d92c: ef91 bnez a5,c004d948 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4266 if (!(ret & BF_ST_INEXACT)) { - c004d75e: 8941 andi a0,a0,16 - c004d760: dd4d beqz a0,c004d71a + c004d92e: 8941 andi a0,a0,16 + c004d930: dd4d beqz a0,c004d8ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4270 if (bf_can_round(r, prec, rnd_mode, prec1)) { - c004d762: 86de mv a3,s7 - c004d764: 8662 mv a2,s8 - c004d766: 85a6 mv a1,s1 - c004d768: 8522 mv a0,s0 - c004d76a: ed5ff0ef jal ra,c004d63e - c004d76e: e119 bnez a0,c004d774 + c004d932: 86de mv a3,s7 + c004d934: 8662 mv a2,s8 + c004d936: 85a6 mv a1,s1 + c004d938: 8522 mv a0,s0 + c004d93a: ed5ff0ef jal ra,c004d80e + c004d93e: e119 bnez a0,c004d944 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4274 ziv_extra_bits = ziv_extra_bits * 2; - c004d770: 0a86 slli s5,s5,0x1 + c004d940: 0a86 slli s5,s5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4257 prec1 = prec + ziv_extra_bits; - c004d772: bfe1 j c004d74a + c004d942: bfe1 j c004d91a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4271 ret = BF_ST_INEXACT; - c004d774: 4541 li a0,16 - c004d776: b755 j c004d71a + c004d944: 4541 li a0,16 + c004d946: b755 j c004d8ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4282 } - c004d778: 60a6 ld ra,72(sp) - c004d77a: 6406 ld s0,64(sp) - c004d77c: 74e2 ld s1,56(sp) - c004d77e: 7942 ld s2,48(sp) - c004d780: 79a2 ld s3,40(sp) - c004d782: 7a02 ld s4,32(sp) - c004d784: 6ae2 ld s5,24(sp) - c004d786: 6b42 ld s6,16(sp) - c004d788: 6ba2 ld s7,8(sp) - c004d78a: 6c02 ld s8,0(sp) - c004d78c: 6161 addi sp,sp,80 - c004d78e: 8082 ret - -00000000c004d790 : + c004d948: 60a6 ld ra,72(sp) + c004d94a: 6406 ld s0,64(sp) + c004d94c: 74e2 ld s1,56(sp) + c004d94e: 7942 ld s2,48(sp) + c004d950: 79a2 ld s3,40(sp) + c004d952: 7a02 ld s4,32(sp) + c004d954: 6ae2 ld s5,24(sp) + c004d956: 6b42 ld s6,16(sp) + c004d958: 6ba2 ld s7,8(sp) + c004d95a: 6c02 ld s8,0(sp) + c004d95c: 6161 addi sp,sp,80 + c004d95e: 8082 ret + +00000000c004d960 : bf_round(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:686 if (r->len == 0) - c004d790: 6d14 ld a3,24(a0) - c004d792: c681 beqz a3,c004d79a + c004d960: 6d14 ld a3,24(a0) + c004d962: c681 beqz a3,c004d96a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:688 return __bf_round(r, prec, flags, r->len, 0); - c004d794: 4701 li a4,0 - c004d796: a85ff06f j c004d21a <__bf_round> + c004d964: 4701 li a4,0 + c004d966: a85ff06f j c004d3ea <__bf_round> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:689 } - c004d79a: 4501 li a0,0 - c004d79c: 8082 ret + c004d96a: 4501 li a0,0 + c004d96c: 8082 ret -00000000c004d79e : +00000000c004d96e : bf_const_get(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4177 { - c004d79e: 7159 addi sp,sp,-112 - c004d7a0: f062 sd s8,32(sp) + c004d96e: 7159 addi sp,sp,-112 + c004d970: f062 sd s8,32(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d7a2: 5c7d li s8,-1 + c004d972: 5c7d li s8,-1 bf_const_get(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4177 { - c004d7a4: f0a2 sd s0,96(sp) - c004d7a6: eca6 sd s1,88(sp) - c004d7a8: e8ca sd s2,80(sp) - c004d7aa: e4ce sd s3,72(sp) - c004d7ac: e0d2 sd s4,64(sp) - c004d7ae: f85a sd s6,48(sp) - c004d7b0: f45e sd s7,40(sp) - c004d7b2: ec66 sd s9,24(sp) - c004d7b4: f486 sd ra,104(sp) - c004d7b6: fc56 sd s5,56(sp) - c004d7b8: 84aa mv s1,a0 - c004d7ba: 892e mv s2,a1 - c004d7bc: 89b2 mv s3,a2 - c004d7be: 8436 mv s0,a3 - c004d7c0: 8b3a mv s6,a4 - c004d7c2: 8bbe mv s7,a5 + c004d974: f0a2 sd s0,96(sp) + c004d976: eca6 sd s1,88(sp) + c004d978: e8ca sd s2,80(sp) + c004d97a: e4ce sd s3,72(sp) + c004d97c: e0d2 sd s4,64(sp) + c004d97e: f85a sd s6,48(sp) + c004d980: f45e sd s7,40(sp) + c004d982: ec66 sd s9,24(sp) + c004d984: f486 sd ra,104(sp) + c004d986: fc56 sd s5,56(sp) + c004d988: 84aa mv s1,a0 + c004d98a: 892e mv s2,a1 + c004d98c: 89b2 mv s3,a2 + c004d98e: 8436 mv s0,a3 + c004d990: 8b3a mv s6,a4 + c004d992: 8bbe mv s7,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4180 ziv_extra_bits = 32; - c004d7c4: 02000a13 li s4,32 + c004d994: 02000a13 li s4,32 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d7c8: 1c7e slli s8,s8,0x3f + c004d998: 1c7e slli s8,s8,0x3f bf_const_get(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4193 if (!bf_can_round(T, prec, flags & BF_RND_MASK, prec1)) { - c004d7ca: 00767c93 andi s9,a2,7 + c004d99a: 00767c93 andi s9,a2,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4183 if (c->prec < prec1) { - c004d7ce: 7414 ld a3,40(s0) + c004d99e: 7414 ld a3,40(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4182 prec1 = prec + ziv_extra_bits; - c004d7d0: 012a0ab3 add s5,s4,s2 + c004d9a0: 012a0ab3 add s5,s4,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4183 if (c->prec < prec1) { - c004d7d4: 0356f263 bgeu a3,s5,c004d7f8 + c004d9a4: 0356f263 bgeu a3,s5,c004d9c8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4184 if (c->val.len == 0) - c004d7d8: 6c1c ld a5,24(s0) - c004d7da: eb89 bnez a5,c004d7ec + c004d9a8: 6c1c ld a5,24(s0) + c004d9aa: eb89 bnez a5,c004d9bc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4185 bf_init(T->ctx, &c->val); - c004d7dc: 609c ld a5,0(s1) + c004d9ac: 609c ld a5,0(s1) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004d7de: 00042423 sw zero,8(s0) + c004d9ae: 00042423 sw zero,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004d7e2: 01843823 sd s8,16(s0) + c004d9b2: 01843823 sd s8,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004d7e6: e01c sd a5,0(s0) + c004d9b6: e01c sd a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004d7e8: 02043023 sd zero,32(s0) + c004d9b8: 02043023 sd zero,32(s0) bf_const_get(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4186 func(&c->val, prec1); - c004d7ec: 85d6 mv a1,s5 - c004d7ee: 8522 mv a0,s0 - c004d7f0: 9b02 jalr s6 + c004d9bc: 85d6 mv a1,s5 + c004d9be: 8522 mv a0,s0 + c004d9c0: 9b02 jalr s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4187 c->prec = prec1; - c004d7f2: 86d6 mv a3,s5 - c004d7f4: 03543423 sd s5,40(s0) + c004d9c2: 86d6 mv a3,s5 + c004d9c4: 03543423 sd s5,40(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4191 bf_set(T, &c->val); - c004d7f8: 85a2 mv a1,s0 - c004d7fa: 8526 mv a0,s1 - c004d7fc: e436 sd a3,8(sp) - c004d7fe: cc3ff0ef jal ra,c004d4c0 + c004d9c8: 85a2 mv a1,s0 + c004d9ca: 8526 mv a0,s1 + c004d9cc: e436 sd a3,8(sp) + c004d9ce: cc3ff0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4193 if (!bf_can_round(T, prec, flags & BF_RND_MASK, prec1)) { - c004d802: 66a2 ld a3,8(sp) + c004d9d2: 66a2 ld a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4192 T->sign = sign; - c004d804: 0174a423 sw s7,8(s1) + c004d9d4: 0174a423 sw s7,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4193 if (!bf_can_round(T, prec, flags & BF_RND_MASK, prec1)) { - c004d808: 8666 mv a2,s9 - c004d80a: 85ca mv a1,s2 - c004d80c: 8526 mv a0,s1 - c004d80e: e31ff0ef jal ra,c004d63e - c004d812: e509 bnez a0,c004d81c + c004d9d8: 8666 mv a2,s9 + c004d9da: 85ca mv a1,s2 + c004d9dc: 8526 mv a0,s1 + c004d9de: e31ff0ef jal ra,c004d80e + c004d9e2: e509 bnez a0,c004d9ec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4195 ziv_extra_bits = ziv_extra_bits + (ziv_extra_bits / 2); - c004d814: 001a5793 srli a5,s4,0x1 - c004d818: 9a3e add s4,s4,a5 + c004d9e4: 001a5793 srli a5,s4,0x1 + c004d9e8: 9a3e add s4,s4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4182 prec1 = prec + ziv_extra_bits; - c004d81a: bf55 j c004d7ce + c004d9ea: bf55 j c004d99e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4201 } - c004d81c: 7406 ld s0,96(sp) - c004d81e: 70a6 ld ra,104(sp) - c004d820: 6a06 ld s4,64(sp) - c004d822: 7ae2 ld s5,56(sp) - c004d824: 7b42 ld s6,48(sp) - c004d826: 7ba2 ld s7,40(sp) - c004d828: 7c02 ld s8,32(sp) - c004d82a: 6ce2 ld s9,24(sp) + c004d9ec: 7406 ld s0,96(sp) + c004d9ee: 70a6 ld ra,104(sp) + c004d9f0: 6a06 ld s4,64(sp) + c004d9f2: 7ae2 ld s5,56(sp) + c004d9f4: 7b42 ld s6,48(sp) + c004d9f6: 7ba2 ld s7,40(sp) + c004d9f8: 7c02 ld s8,32(sp) + c004d9fa: 6ce2 ld s9,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4200 return bf_round(T, prec, flags); - c004d82c: 864e mv a2,s3 - c004d82e: 85ca mv a1,s2 + c004d9fc: 864e mv a2,s3 + c004d9fe: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4201 } - c004d830: 69a6 ld s3,72(sp) - c004d832: 6946 ld s2,80(sp) + c004da00: 69a6 ld s3,72(sp) + c004da02: 6946 ld s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4200 return bf_round(T, prec, flags); - c004d834: 8526 mv a0,s1 + c004da04: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4201 } - c004d836: 64e6 ld s1,88(sp) - c004d838: 6165 addi sp,sp,112 + c004da06: 64e6 ld s1,88(sp) + c004da08: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4200 return bf_round(T, prec, flags); - c004d83a: f57ff06f j c004d790 + c004da0a: f57ff06f j c004d960 -00000000c004d83e : +00000000c004da0e : mp_print_str(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:703 { - c004d83e: 7179 addi sp,sp,-48 - c004d840: f022 sd s0,32(sp) - c004d842: 8432 mv s0,a2 - c004d844: e84a sd s2,16(sp) + c004da0e: 7179 addi sp,sp,-48 + c004da10: f022 sd s0,32(sp) + c004da12: 8432 mv s0,a2 + c004da14: e84a sd s2,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:706 for(i = n - 1; i >= 0; i--) { - c004d846: 147d addi s0,s0,-1 + c004da16: 147d addi s0,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:703 { - c004d848: 892e mv s2,a1 + c004da18: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:705 printf("%s= 0x", str); - c004d84a: 85aa mv a1,a0 - c004d84c: 00025517 auipc a0,0x25 - c004d850: af450513 addi a0,a0,-1292 # c0072340 + c004da1a: 85aa mv a1,a0 + c004da1c: 00025517 auipc a0,0x25 + c004da20: b8450513 addi a0,a0,-1148 # c00725a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:703 { - c004d854: ec26 sd s1,24(sp) - c004d856: e44e sd s3,8(sp) - c004d858: f406 sd ra,40(sp) + c004da24: ec26 sd s1,24(sp) + c004da26: e44e sd s3,8(sp) + c004da28: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:706 for(i = n - 1; i >= 0; i--) { - c004d85a: 84a2 mv s1,s0 + c004da2a: 84a2 mv s1,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:705 printf("%s= 0x", str); - c004d85c: 141060ef jal ra,c005419c + c004da2c: 141060ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:709 printf(FMT_LIMB, tab[i]); - c004d860: 00025997 auipc s3,0x25 - c004d864: ae898993 addi s3,s3,-1304 # c0072348 + c004da30: 00025997 auipc s3,0x25 + c004da34: b7898993 addi s3,s3,-1160 # c00725a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:706 (discriminator 1) for(i = n - 1; i >= 0; i--) { - c004d868: 0004db63 bgez s1,c004d87e + c004da38: 0004db63 bgez s1,c004da4e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:712 } - c004d86c: 7402 ld s0,32(sp) - c004d86e: 70a2 ld ra,40(sp) - c004d870: 64e2 ld s1,24(sp) - c004d872: 6942 ld s2,16(sp) - c004d874: 69a2 ld s3,8(sp) + c004da3c: 7402 ld s0,32(sp) + c004da3e: 70a2 ld ra,40(sp) + c004da40: 64e2 ld s1,24(sp) + c004da42: 6942 ld s2,16(sp) + c004da44: 69a2 ld s3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:711 printf("\n"); - c004d876: 4529 li a0,10 + c004da46: 4529 li a0,10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:712 } - c004d878: 6145 addi sp,sp,48 + c004da48: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:711 printf("\n"); - c004d87a: 22f0606f j c00542a8 + c004da4a: 22f0606f j c0054478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:707 if (i != (n - 1)) - c004d87e: 00940663 beq s0,s1,c004d88a + c004da4e: 00940663 beq s0,s1,c004da5a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:708 printf("_"); - c004d882: 05f00513 li a0,95 - c004d886: 223060ef jal ra,c00542a8 + c004da52: 05f00513 li a0,95 + c004da56: 223060ef jal ra,c0054478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:709 (discriminator 2) printf(FMT_LIMB, tab[i]); - c004d88a: 00349793 slli a5,s1,0x3 - c004d88e: 97ca add a5,a5,s2 - c004d890: 638c ld a1,0(a5) - c004d892: 854e mv a0,s3 + c004da5a: 00349793 slli a5,s1,0x3 + c004da5e: 97ca add a5,a5,s2 + c004da60: 638c ld a1,0(a5) + c004da62: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:706 (discriminator 2) for(i = n - 1; i >= 0; i--) { - c004d894: 14fd addi s1,s1,-1 + c004da64: 14fd addi s1,s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:709 (discriminator 2) printf(FMT_LIMB, tab[i]); - c004d896: 107060ef jal ra,c005419c + c004da66: 107060ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:706 (discriminator 2) for(i = n - 1; i >= 0; i--) { - c004d89a: b7f9 j c004d868 + c004da6a: b7f9 j c004da38 -00000000c004d89c : +00000000c004da6c : bf_print_str(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:730 { - c004d89c: 1101 addi sp,sp,-32 - c004d89e: e822 sd s0,16(sp) - c004d8a0: 842e mv s0,a1 + c004da6c: 1101 addi sp,sp,-32 + c004da6e: e822 sd s0,16(sp) + c004da70: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:732 printf("%s=", str); - c004d8a2: 85aa mv a1,a0 - c004d8a4: 00025517 auipc a0,0x25 - c004d8a8: aac50513 addi a0,a0,-1364 # c0072350 + c004da72: 85aa mv a1,a0 + c004da74: 00025517 auipc a0,0x25 + c004da78: b3c50513 addi a0,a0,-1220 # c00725b0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:730 { - c004d8ac: ec06 sd ra,24(sp) - c004d8ae: e426 sd s1,8(sp) - c004d8b0: e04a sd s2,0(sp) + c004da7c: ec06 sd ra,24(sp) + c004da7e: e426 sd s1,8(sp) + c004da80: e04a sd s2,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:732 printf("%s=", str); - c004d8b2: 0eb060ef jal ra,c005419c + c004da82: 0eb060ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:734 if (a->expn == BF_EXP_NAN) { - c004d8b6: 6818 ld a4,16(s0) - c004d8b8: 57fd li a5,-1 - c004d8ba: 8385 srli a5,a5,0x1 + c004da86: 6818 ld a4,16(s0) + c004da88: 57fd li a5,-1 + c004da8a: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:735 printf("NaN"); - c004d8bc: 00011517 auipc a0,0x11 - c004d8c0: 95c50513 addi a0,a0,-1700 # c005e218 + c004da8c: 00011517 auipc a0,0x11 + c004da90: 9ec50513 addi a0,a0,-1556 # c005e478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:734 if (a->expn == BF_EXP_NAN) { - c004d8c4: 04f70163 beq a4,a5,c004d906 + c004da94: 04f70163 beq a4,a5,c004dad6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:737 if (a->sign) - c004d8c8: 441c lw a5,8(s0) - c004d8ca: c789 beqz a5,c004d8d4 + c004da98: 441c lw a5,8(s0) + c004da9a: c789 beqz a5,c004daa4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:738 putchar('-'); - c004d8cc: 02d00513 li a0,45 - c004d8d0: 1d9060ef jal ra,c00542a8 + c004da9c: 02d00513 li a0,45 + c004daa0: 1d9060ef jal ra,c0054478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:739 if (a->expn == BF_EXP_ZERO) { - c004d8d4: 6818 ld a4,16(s0) - c004d8d6: 57fd li a5,-1 - c004d8d8: 17fe slli a5,a5,0x3f - c004d8da: 00f71e63 bne a4,a5,c004d8f6 + c004daa4: 6818 ld a4,16(s0) + c004daa6: 57fd li a5,-1 + c004daa8: 17fe slli a5,a5,0x3f + c004daaa: 00f71e63 bne a4,a5,c004dac6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:740 putchar('0'); - c004d8de: 03000513 li a0,48 - c004d8e2: 1c7060ef jal ra,c00542a8 + c004daae: 03000513 li a0,48 + c004dab2: 1c7060ef jal ra,c0054478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:751 } - c004d8e6: 6442 ld s0,16(sp) - c004d8e8: 60e2 ld ra,24(sp) - c004d8ea: 64a2 ld s1,8(sp) - c004d8ec: 6902 ld s2,0(sp) + c004dab6: 6442 ld s0,16(sp) + c004dab8: 60e2 ld ra,24(sp) + c004daba: 64a2 ld s1,8(sp) + c004dabc: 6902 ld s2,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:750 printf("\n"); - c004d8ee: 4529 li a0,10 + c004dabe: 4529 li a0,10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:751 } - c004d8f0: 6105 addi sp,sp,32 + c004dac0: 6105 addi sp,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:750 printf("\n"); - c004d8f2: 1b70606f j c00542a8 + c004dac2: 1b70606f j c0054478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:741 } else if (a->expn == BF_EXP_INF) { - c004d8f6: 57f5 li a5,-3 - c004d8f8: 8385 srli a5,a5,0x1 - c004d8fa: 00f71963 bne a4,a5,c004d90c + c004dac6: 57f5 li a5,-3 + c004dac8: 8385 srli a5,a5,0x1 + c004daca: 00f71963 bne a4,a5,c004dadc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:742 printf("Inf"); - c004d8fe: 00025517 auipc a0,0x25 - c004d902: a5a50513 addi a0,a0,-1446 # c0072358 - c004d906: 097060ef jal ra,c005419c - c004d90a: bff1 j c004d8e6 + c004dace: 00025517 auipc a0,0x25 + c004dad2: aea50513 addi a0,a0,-1302 # c00725b8 + c004dad6: 097060ef jal ra,c005436c + c004dada: bff1 j c004dab6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:744 printf("0x0."); - c004d90c: 00025517 auipc a0,0x25 - c004d910: a5450513 addi a0,a0,-1452 # c0072360 - c004d914: 089060ef jal ra,c005419c + c004dadc: 00025517 auipc a0,0x25 + c004dae0: ae450513 addi a0,a0,-1308 # c00725c0 + c004dae4: 089060ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:745 for(i = a->len - 1; i >= 0; i--) - c004d918: 6c04 ld s1,24(s0) + c004dae8: 6c04 ld s1,24(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:746 printf(FMT_LIMB, a->tab[i]); - c004d91a: 00025917 auipc s2,0x25 - c004d91e: a2e90913 addi s2,s2,-1490 # c0072348 + c004daea: 00025917 auipc s2,0x25 + c004daee: abe90913 addi s2,s2,-1346 # c00725a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:745 for(i = a->len - 1; i >= 0; i--) - c004d922: 14fd addi s1,s1,-1 + c004daf2: 14fd addi s1,s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:745 (discriminator 1) - c004d924: 0004da63 bgez s1,c004d938 + c004daf4: 0004da63 bgez s1,c004db08 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:747 printf("p%" PRId_LIMB, a->expn); - c004d928: 680c ld a1,16(s0) - c004d92a: 00025517 auipc a0,0x25 - c004d92e: a3e50513 addi a0,a0,-1474 # c0072368 - c004d932: 06b060ef jal ra,c005419c - c004d936: bf45 j c004d8e6 + c004daf8: 680c ld a1,16(s0) + c004dafa: 00025517 auipc a0,0x25 + c004dafe: ace50513 addi a0,a0,-1330 # c00725c8 + c004db02: 06b060ef jal ra,c005436c + c004db06: bf45 j c004dab6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:746 (discriminator 3) printf(FMT_LIMB, a->tab[i]); - c004d938: 701c ld a5,32(s0) - c004d93a: 00349713 slli a4,s1,0x3 - c004d93e: 854a mv a0,s2 - c004d940: 97ba add a5,a5,a4 - c004d942: 638c ld a1,0(a5) + c004db08: 701c ld a5,32(s0) + c004db0a: 00349713 slli a4,s1,0x3 + c004db0e: 854a mv a0,s2 + c004db10: 97ba add a5,a5,a4 + c004db12: 638c ld a1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:745 (discriminator 3) for(i = a->len - 1; i >= 0; i--) - c004d944: 14fd addi s1,s1,-1 + c004db14: 14fd addi s1,s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:746 (discriminator 3) printf(FMT_LIMB, a->tab[i]); - c004d946: 057060ef jal ra,c005419c + c004db16: 057060ef jal ra,c005436c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:745 (discriminator 3) for(i = a->len - 1; i >= 0; i--) - c004d94a: bfe9 j c004d924 + c004db1a: bfe9 j c004daf4 -00000000c004d94c : +00000000c004db1c : bf_cmpu(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:760 if (a->expn != b->expn) { - c004d94c: 6918 ld a4,16(a0) - c004d94e: 699c ld a5,16(a1) - c004d950: 00f70763 beq a4,a5,c004d95e + c004db1c: 6918 ld a4,16(a0) + c004db1e: 699c ld a5,16(a1) + c004db20: 00f70763 beq a4,a5,c004db2e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:764 return 1; - c004d954: 4505 li a0,1 + c004db24: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:761 if (a->expn < b->expn) - c004d956: 06f75b63 bge a4,a5,c004d9cc + c004db26: 06f75b63 bge a4,a5,c004db9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:762 return -1; - c004d95a: 557d li a0,-1 - c004d95c: 8082 ret + c004db2a: 557d li a0,-1 + c004db2c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:756 { - c004d95e: 7139 addi sp,sp,-64 - c004d960: f426 sd s1,40(sp) - c004d962: f04a sd s2,32(sp) - c004d964: e852 sd s4,16(sp) - c004d966: fc06 sd ra,56(sp) - c004d968: f822 sd s0,48(sp) - c004d96a: ec4e sd s3,24(sp) - c004d96c: e456 sd s5,8(sp) + c004db2e: 7139 addi sp,sp,-64 + c004db30: f426 sd s1,40(sp) + c004db32: f04a sd s2,32(sp) + c004db34: e852 sd s4,16(sp) + c004db36: fc06 sd ra,56(sp) + c004db38: f822 sd s0,48(sp) + c004db3a: ec4e sd s3,24(sp) + c004db3c: e456 sd s5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:766 len = bf_max(a->len, b->len); - c004d96e: 6d1c ld a5,24(a0) - c004d970: 6d98 ld a4,24(a1) - c004d972: 84aa mv s1,a0 - c004d974: 892e mv s2,a1 - c004d976: 8a3e mv s4,a5 - c004d978: 00e7d363 bge a5,a4,c004d97e - c004d97c: 8a3a mv s4,a4 + c004db3e: 6d1c ld a5,24(a0) + c004db40: 6d98 ld a4,24(a1) + c004db42: 84aa mv s1,a0 + c004db44: 892e mv s2,a1 + c004db46: 8a3e mv s4,a5 + c004db48: 00e7d363 bge a5,a4,c004db4e + c004db4c: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:767 for(i = len - 1; i >= 0; i--) { - c004d97e: fffa0413 addi s0,s4,-1 + c004db4e: fffa0413 addi s0,s4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:768 v1 = get_limbz(a, a->len - len + i); - c004d982: 414789b3 sub s3,a5,s4 + c004db52: 414789b3 sub s3,a5,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:769 v2 = get_limbz(b, b->len - len + i); - c004d986: 41470a33 sub s4,a4,s4 + c004db56: 41470a33 sub s4,a4,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:767 for(i = len - 1; i >= 0; i--) { - c004d98a: 00045463 bgez s0,c004d992 + c004db5a: 00045463 bgez s0,c004db62 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:777 return 0; - c004d98e: 4501 li a0,0 - c004d990: a01d j c004d9b6 + c004db5e: 4501 li a0,0 + c004db60: a01d j c004db86 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:768 v1 = get_limbz(a, a->len - len + i); - c004d992: 008985b3 add a1,s3,s0 - c004d996: 8526 mv a0,s1 - c004d998: b20ff0ef jal ra,c004ccb8 - c004d99c: 8aaa mv s5,a0 + c004db62: 008985b3 add a1,s3,s0 + c004db66: 8526 mv a0,s1 + c004db68: b20ff0ef jal ra,c004ce88 + c004db6c: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:769 v2 = get_limbz(b, b->len - len + i); - c004d99e: 008a05b3 add a1,s4,s0 - c004d9a2: 854a mv a0,s2 - c004d9a4: b14ff0ef jal ra,c004ccb8 - c004d9a8: 87aa mv a5,a0 + c004db6e: 008a05b3 add a1,s4,s0 + c004db72: 854a mv a0,s2 + c004db74: b14ff0ef jal ra,c004ce88 + c004db78: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:770 if (v1 != v2) { - c004d9aa: 00aa8f63 beq s5,a0,c004d9c8 + c004db7a: 00aa8f63 beq s5,a0,c004db98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:764 return 1; - c004d9ae: 4505 li a0,1 + c004db7e: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:771 if (v1 < v2) - c004d9b0: 00faf363 bgeu s5,a5,c004d9b6 + c004db80: 00faf363 bgeu s5,a5,c004db86 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:762 return -1; - c004d9b4: 557d li a0,-1 + c004db84: 557d li a0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:778 } - c004d9b6: 70e2 ld ra,56(sp) - c004d9b8: 7442 ld s0,48(sp) - c004d9ba: 74a2 ld s1,40(sp) - c004d9bc: 7902 ld s2,32(sp) - c004d9be: 69e2 ld s3,24(sp) - c004d9c0: 6a42 ld s4,16(sp) - c004d9c2: 6aa2 ld s5,8(sp) - c004d9c4: 6121 addi sp,sp,64 - c004d9c6: 8082 ret + c004db86: 70e2 ld ra,56(sp) + c004db88: 7442 ld s0,48(sp) + c004db8a: 74a2 ld s1,40(sp) + c004db8c: 7902 ld s2,32(sp) + c004db8e: 69e2 ld s3,24(sp) + c004db90: 6a42 ld s4,16(sp) + c004db92: 6aa2 ld s5,8(sp) + c004db94: 6121 addi sp,sp,64 + c004db96: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:767 for(i = len - 1; i >= 0; i--) { - c004d9c8: 147d addi s0,s0,-1 - c004d9ca: b7c1 j c004d98a + c004db98: 147d addi s0,s0,-1 + c004db9a: b7c1 j c004db5a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:778 } - c004d9cc: 8082 ret + c004db9c: 8082 ret -00000000c004d9ce : +00000000c004db9e : bf_add_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:887 { - c004d9ce: 7171 addi sp,sp,-176 - c004d9d0: f122 sd s0,160(sp) - c004d9d2: ed26 sd s1,152(sp) - c004d9d4: e94a sd s2,144(sp) - c004d9d6: f8da sd s6,112(sp) - c004d9d8: f506 sd ra,168(sp) - c004d9da: e54e sd s3,136(sp) - c004d9dc: e152 sd s4,128(sp) - c004d9de: fcd6 sd s5,120(sp) - c004d9e0: f4de sd s7,104(sp) - c004d9e2: f0e2 sd s8,96(sp) - c004d9e4: ece6 sd s9,88(sp) - c004d9e6: e8ea sd s10,80(sp) - c004d9e8: e4ee sd s11,72(sp) - c004d9ea: f43a sd a4,40(sp) + c004db9e: 7171 addi sp,sp,-176 + c004dba0: f122 sd s0,160(sp) + c004dba2: ed26 sd s1,152(sp) + c004dba4: e94a sd s2,144(sp) + c004dba6: f8da sd s6,112(sp) + c004dba8: f506 sd ra,168(sp) + c004dbaa: e54e sd s3,136(sp) + c004dbac: e152 sd s4,128(sp) + c004dbae: fcd6 sd s5,120(sp) + c004dbb0: f4de sd s7,104(sp) + c004dbb2: f0e2 sd s8,96(sp) + c004dbb4: ece6 sd s9,88(sp) + c004dbb6: e8ea sd s10,80(sp) + c004dbb8: e4ee sd s11,72(sp) + c004dbba: f43a sd a4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:892 b_sign = b->sign ^ b_neg; - c004d9ec: 4618 lw a4,8(a2) + c004dbbc: 4618 lw a4,8(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:887 { - c004d9ee: 84ae mv s1,a1 + c004dbbe: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:891 a_sign = a->sign; - c004d9f0: 0085aa83 lw s5,8(a1) + c004dbc0: 0085aa83 lw s5,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:887 { - c004d9f4: 842a mv s0,a0 + c004dbc4: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:894 cmp_res = bf_cmpu(a, b); - c004d9f6: 85b2 mv a1,a2 - c004d9f8: 8526 mv a0,s1 + c004dbc6: 85b2 mv a1,a2 + c004dbc8: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:887 { - c004d9fa: 8932 mv s2,a2 - c004d9fc: f036 sd a3,32(sp) + c004dbca: 8932 mv s2,a2 + c004dbcc: f036 sd a3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:892 b_sign = b->sign ^ b_neg; - c004d9fe: 00e7cb33 xor s6,a5,a4 + c004dbce: 00e7cb33 xor s6,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:894 cmp_res = bf_cmpu(a, b); - c004da02: f4bff0ef jal ra,c004d94c + c004dbd2: f4bff0ef jal ra,c004db1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:895 if (cmp_res < 0) { - c004da06: 04054563 bltz a0,c004da50 - c004da0a: 89aa mv s3,a0 + c004dbd6: 04054563 bltz a0,c004dc20 + c004dbda: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:902 if (cmp_res == 0 && is_sub && a->expn < BF_EXP_INF) { - c004da0c: e92d bnez a0,c004da7e + c004dbdc: e92d bnez a0,c004dc4e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:902 (discriminator 1) - c004da0e: 076a8863 beq s5,s6,c004da7e + c004dbde: 076a8863 beq s5,s6,c004dc4e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:902 (discriminator 2) - c004da12: 6898 ld a4,16(s1) - c004da14: 57ed li a5,-5 - c004da16: 8385 srli a5,a5,0x1 - c004da18: 8a56 mv s4,s5 - c004da1a: 02e7cf63 blt a5,a4,c004da58 + c004dbe2: 6898 ld a4,16(s1) + c004dbe4: 57ed li a5,-5 + c004dbe6: 8385 srli a5,a5,0x1 + c004dbe8: 8a56 mv s4,s5 + c004dbea: 02e7cf63 blt a5,a4,c004dc28 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:904 bf_set_zero(r, (flags & BF_RND_MASK) == BF_RNDD); - c004da1e: 77a2 ld a5,40(sp) - c004da20: 8522 mv a0,s0 - c004da22: 0077f593 andi a1,a5,7 - c004da26: 15f9 addi a1,a1,-2 - c004da28: 0015b593 seqz a1,a1 - c004da2c: ed2ff0ef jal ra,c004d0fe + c004dbee: 77a2 ld a5,40(sp) + c004dbf0: 8522 mv a0,s0 + c004dbf2: 0077f593 andi a1,a5,7 + c004dbf6: 15f9 addi a1,a1,-2 + c004dbf8: 0015b593 seqz a1,a1 + c004dbfc: ed2ff0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1027 } - c004da30: 70aa ld ra,168(sp) - c004da32: 740a ld s0,160(sp) - c004da34: 64ea ld s1,152(sp) - c004da36: 694a ld s2,144(sp) - c004da38: 6a0a ld s4,128(sp) - c004da3a: 7ae6 ld s5,120(sp) - c004da3c: 7b46 ld s6,112(sp) - c004da3e: 7ba6 ld s7,104(sp) - c004da40: 7c06 ld s8,96(sp) - c004da42: 6ce6 ld s9,88(sp) - c004da44: 6d46 ld s10,80(sp) - c004da46: 6da6 ld s11,72(sp) - c004da48: 854e mv a0,s3 - c004da4a: 69aa ld s3,136(sp) - c004da4c: 614d addi sp,sp,176 - c004da4e: 8082 ret - c004da50: 87a6 mv a5,s1 + c004dc00: 70aa ld ra,168(sp) + c004dc02: 740a ld s0,160(sp) + c004dc04: 64ea ld s1,152(sp) + c004dc06: 694a ld s2,144(sp) + c004dc08: 6a0a ld s4,128(sp) + c004dc0a: 7ae6 ld s5,120(sp) + c004dc0c: 7b46 ld s6,112(sp) + c004dc0e: 7ba6 ld s7,104(sp) + c004dc10: 7c06 ld s8,96(sp) + c004dc12: 6ce6 ld s9,88(sp) + c004dc14: 6d46 ld s10,80(sp) + c004dc16: 6da6 ld s11,72(sp) + c004dc18: 854e mv a0,s3 + c004dc1a: 69aa ld s3,136(sp) + c004dc1c: 614d addi sp,sp,176 + c004dc1e: 8082 ret + c004dc20: 87a6 mv a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:892 b_sign = b->sign ^ b_neg; - c004da52: 8a5a mv s4,s6 - c004da54: 84ca mv s1,s2 - c004da56: 893e mv s2,a5 + c004dc22: 8a5a mv s4,s6 + c004dc24: 84ca mv s1,s2 + c004dc26: 893e mv s2,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:906 } else if (a->len == 0 || b->len == 0) { - c004da58: 6c9c ld a5,24(s1) - c004da5a: c781 beqz a5,c004da62 + c004dc28: 6c9c ld a5,24(s1) + c004dc2a: c781 beqz a5,c004dc32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:906 (discriminator 1) - c004da5c: 01893783 ld a5,24(s2) - c004da60: efa5 bnez a5,c004dad8 + c004dc2c: 01893783 ld a5,24(s2) + c004dc30: efa5 bnez a5,c004dca8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:908 if (a->expn >= BF_EXP_INF) { - c004da62: 6898 ld a4,16(s1) - c004da64: 57ed li a5,-5 - c004da66: 8385 srli a5,a5,0x1 - c004da68: 02e7df63 bge a5,a4,c004daa6 + c004dc32: 6898 ld a4,16(s1) + c004dc34: 57ed li a5,-5 + c004dc36: 8385 srli a5,a5,0x1 + c004dc38: 02e7df63 bge a5,a4,c004dc76 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:909 if (a->expn == BF_EXP_NAN) { - c004da6c: 57fd li a5,-1 - c004da6e: 8385 srli a5,a5,0x1 - c004da70: 00f71963 bne a4,a5,c004da82 + c004dc3c: 57fd li a5,-1 + c004dc3e: 8385 srli a5,a5,0x1 + c004dc40: 00f71963 bne a4,a5,c004dc52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:911 bf_set_nan(r); - c004da74: 8522 mv a0,s0 - c004da76: de6ff0ef jal ra,c004d05c + c004dc44: 8522 mv a0,s0 + c004dc46: de6ff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:907 ret = 0; - c004da7a: 4981 li s3,0 - c004da7c: bf55 j c004da30 - c004da7e: 8a56 mv s4,s5 - c004da80: bfe1 j c004da58 + c004dc4a: 4981 li s3,0 + c004dc4c: bf55 j c004dc00 + c004dc4e: 8a56 mv s4,s5 + c004dc50: bfe1 j c004dc28 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:912 } else if (b->expn == BF_EXP_INF && is_sub) { - c004da82: 01093703 ld a4,16(s2) - c004da86: 57f5 li a5,-3 - c004da88: 8385 srli a5,a5,0x1 - c004da8a: 00f71963 bne a4,a5,c004da9c + c004dc52: 01093703 ld a4,16(s2) + c004dc56: 57f5 li a5,-3 + c004dc58: 8385 srli a5,a5,0x1 + c004dc5a: 00f71963 bne a4,a5,c004dc6c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:912 (discriminator 1) - c004da8e: 016a8763 beq s5,s6,c004da9c + c004dc5e: 016a8763 beq s5,s6,c004dc6c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:914 bf_set_nan(r); - c004da92: 8522 mv a0,s0 - c004da94: dc8ff0ef jal ra,c004d05c + c004dc62: 8522 mv a0,s0 + c004dc64: dc8ff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:915 ret = BF_ST_INVALID_OP; - c004da98: 4985 li s3,1 - c004da9a: bf59 j c004da30 + c004dc68: 4985 li s3,1 + c004dc6a: bf59 j c004dc00 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:917 bf_set_inf(r, a_sign); - c004da9c: 85d2 mv a1,s4 - c004da9e: 8522 mv a0,s0 - c004daa0: e82ff0ef jal ra,c004d122 - c004daa4: bfd9 j c004da7a + c004dc6c: 85d2 mv a1,s4 + c004dc6e: 8522 mv a0,s0 + c004dc70: e82ff0ef jal ra,c004d2f2 + c004dc74: bfd9 j c004dc4a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:921 bf_set(r, a); - c004daa6: 85a6 mv a1,s1 - c004daa8: 8522 mv a0,s0 - c004daaa: a17ff0ef jal ra,c004d4c0 + c004dc76: 85a6 mv a1,s1 + c004dc78: 8522 mv a0,s0 + c004dc7a: a17ff0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:922 r->sign = a_sign; - c004daae: 01442423 sw s4,8(s0) + c004dc7e: 01442423 sw s4,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1021 ret = bf_normalize_and_round(r, prec, flags); - c004dab2: 8522 mv a0,s0 + c004dc82: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1027 } - c004dab4: 740a ld s0,160(sp) + c004dc84: 740a ld s0,160(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1021 ret = bf_normalize_and_round(r, prec, flags); - c004dab6: 7622 ld a2,40(sp) - c004dab8: 7582 ld a1,32(sp) + c004dc86: 7622 ld a2,40(sp) + c004dc88: 7582 ld a1,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1027 } - c004daba: 70aa ld ra,168(sp) - c004dabc: 64ea ld s1,152(sp) - c004dabe: 694a ld s2,144(sp) - c004dac0: 69aa ld s3,136(sp) - c004dac2: 6a0a ld s4,128(sp) - c004dac4: 7ae6 ld s5,120(sp) - c004dac6: 7b46 ld s6,112(sp) - c004dac8: 7ba6 ld s7,104(sp) - c004daca: 7c06 ld s8,96(sp) - c004dacc: 6ce6 ld s9,88(sp) - c004dace: 6d46 ld s10,80(sp) - c004dad0: 6da6 ld s11,72(sp) - c004dad2: 614d addi sp,sp,176 + c004dc8a: 70aa ld ra,168(sp) + c004dc8c: 64ea ld s1,152(sp) + c004dc8e: 694a ld s2,144(sp) + c004dc90: 69aa ld s3,136(sp) + c004dc92: 6a0a ld s4,128(sp) + c004dc94: 7ae6 ld s5,120(sp) + c004dc96: 7b46 ld s6,112(sp) + c004dc98: 7ba6 ld s7,104(sp) + c004dc9a: 7c06 ld s8,96(sp) + c004dc9c: 6ce6 ld s9,88(sp) + c004dc9e: 6d46 ld s10,80(sp) + c004dca0: 6da6 ld s11,72(sp) + c004dca2: 614d addi sp,sp,176 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1021 ret = bf_normalize_and_round(r, prec, flags); - c004dad4: abfff06f j c004d592 + c004dca4: abfff06f j c004d762 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:929 r->sign = a_sign; - c004dad8: 01442423 sw s4,8(s0) + c004dca8: 01442423 sw s4,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:930 r->expn = a->expn; - c004dadc: 689c ld a5,16(s1) + c004dcac: 689c ld a5,16(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:940 cancelled_bits = 0; - c004dade: 4981 li s3,0 + c004dcae: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:930 r->expn = a->expn; - c004dae0: e81c sd a5,16(s0) + c004dcb0: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:931 d = a->expn - b->expn; - c004dae2: 01093603 ld a2,16(s2) - c004dae6: 0184bd03 ld s10,24(s1) - c004daea: 01893d83 ld s11,24(s2) - c004daee: 40c78bb3 sub s7,a5,a2 + c004dcb2: 01093603 ld a2,16(s2) + c004dcb6: 0184bd03 ld s10,24(s1) + c004dcba: 01893d83 ld s11,24(s2) + c004dcbe: 40c78bb3 sub s7,a5,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:934 if (is_sub) { - c004daf2: 116a8b63 beq s5,s6,c004dc08 + c004dcc2: 116a8b63 beq s5,s6,c004ddd8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:935 if (d <= 1) - c004daf6: 4705 li a4,1 + c004dcc6: 4705 li a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:938 cancelled_bits = 1; - c004daf8: 4985 li s3,1 + c004dcc8: 4985 li s3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:935 if (d <= 1) - c004dafa: 11774763 blt a4,s7,c004dc08 + c004dcca: 11774763 blt a4,s7,c004ddd8 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:840 b_offset = (b->len - a->len) * LIMB_BITS - (LIMB_BITS - 1) + - c004dafe: 41ad86b3 sub a3,s11,s10 + c004dcce: 41ad86b3 sub a3,s11,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:841 a->expn - b->expn; - c004db02: fc178793 addi a5,a5,-63 + c004dcd2: fc178793 addi a5,a5,-63 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:840 b_offset = (b->len - a->len) * LIMB_BITS - (LIMB_BITS - 1) + - c004db06: 069a slli a3,a3,0x6 + c004dcd6: 069a slli a3,a3,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:841 a->expn - b->expn; - c004db08: 8f91 sub a5,a5,a2 - c004db0a: 97b6 add a5,a5,a3 - c004db0c: e43e sd a5,8(sp) + c004dcd8: 8f91 sub a5,a5,a2 + c004dcda: 97b6 add a5,a5,a3 + c004dcdc: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:847 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004db0e: 02093783 ld a5,32(s2) + c004dcde: 02093783 ld a5,32(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:839 bit_offset = a->len * LIMB_BITS - 1; - c004db12: 006d1713 slli a4,s10,0x6 - c004db16: 177d addi a4,a4,-1 - c004db18: 8a3a mv s4,a4 + c004dce2: 006d1713 slli a4,s10,0x6 + c004dce6: 177d addi a4,a4,-1 + c004dce8: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:847 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004db1a: e83e sd a5,16(sp) + c004dcea: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:846 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004db1c: 406a5593 srai a1,s4,0x6 - c004db20: 8526 mv a0,s1 - c004db22: 414709b3 sub s3,a4,s4 - c004db26: ec3a sd a4,24(sp) - c004db28: 990ff0ef jal ra,c004ccb8 + c004dcec: 406a5593 srai a1,s4,0x6 + c004dcf0: 8526 mv a0,s1 + c004dcf2: 414709b3 sub s3,a4,s4 + c004dcf6: ec3a sd a4,24(sp) + c004dcf8: 990ff0ef jal ra,c004ce88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:847 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004db2c: 67a2 ld a5,8(sp) + c004dcfc: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:846 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004db2e: 8c2a mv s8,a0 + c004dcfe: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:847 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004db30: 6542 ld a0,16(sp) - c004db32: 01478633 add a2,a5,s4 - c004db36: 85ee mv a1,s11 - c004db38: 994ff0ef jal ra,c004cccc - c004db3c: 8caa mv s9,a0 + c004dd00: 6542 ld a0,16(sp) + c004dd02: 01478633 add a2,a5,s4 + c004dd06: 85ee mv a1,s11 + c004dd08: 994ff0ef jal ra,c004ce9c + c004dd0c: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:849 if (v1 != v2) - c004db3e: 00ac1663 bne s8,a0,c004db4a + c004dd0e: 00ac1663 bne s8,a0,c004dd1a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:846 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004db42: 6762 ld a4,24(sp) + c004dd12: 6762 ld a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:852 bit_offset -= LIMB_BITS; - c004db44: fc0a0a13 addi s4,s4,-64 + c004dd14: fc0a0a13 addi s4,s4,-64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:846 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004db48: bfd1 j c004db1c + c004dd18: bfd1 j c004dcec clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004db4a: 00ac4533 xor a0,s8,a0 - c004db4e: cb2b20ef jal ra,c0000000 <__clzdi2> + c004dd1a: 00ac4533 xor a0,s8,a0 + c004dd1e: ae2b20ef jal ra,c0000000 <__clzdi2> count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:855 p = clz(v1 ^ v2) + 1; - c004db52: 0005079b sext.w a5,a0 - c004db56: 0017871b addiw a4,a5,1 - c004db5a: 87ba mv a5,a4 + c004dd22: 0005079b sext.w a5,a0 + c004dd26: 0017871b addiw a4,a5,1 + c004dd2a: 87ba mv a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:856 n += p; - c004db5c: 99ba add s3,s3,a4 + c004dd2c: 99ba add s3,s3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:858 p = LIMB_BITS - p; - c004db5e: 04000713 li a4,64 - c004db62: 9f1d subw a4,a4,a5 + c004dd2e: 04000713 li a4,64 + c004dd32: 9f1d subw a4,a4,a5 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004db64: d82a sw a0,48(sp) + c004dd34: d82a sw a0,48(sp) count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:858 - c004db66: ec3a sd a4,24(sp) + c004dd36: ec3a sd a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:859 if (p > 0) { - c004db68: cb31 beqz a4,c004dbbc + c004dd38: cb31 beqz a4,c004dd8c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:861 mask = limb_mask(0, p - 1); - c004db6a: 03f00593 li a1,63 - c004db6e: 9d9d subw a1,a1,a5 - c004db70: 4501 li a0,0 - c004db72: 9b4ff0ef jal ra,c004cd26 - c004db76: 872a mv a4,a0 + c004dd3a: 03f00593 li a1,63 + c004dd3e: 9d9d subw a1,a1,a5 + c004dd40: 4501 li a0,0 + c004dd42: 9b4ff0ef jal ra,c004cef6 + c004dd46: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:862 p1 = bf_min(clz(v1 & mask), clz((~v2) & mask)) - (LIMB_BITS - p); - c004db78: 00ac7533 and a0,s8,a0 + c004dd48: 00ac7533 and a0,s8,a0 clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:99 return LIMB_BITS; - c004db7c: 04000c13 li s8,64 + c004dd4c: 04000c13 li s8,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:98 if (a == 0) { - c004db80: c519 beqz a0,c004db8e - c004db82: fc3a sd a4,56(sp) + c004dd50: c519 beqz a0,c004dd5e + c004dd52: fc3a sd a4,56(sp) clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004db84: c7cb20ef jal ra,c0000000 <__clzdi2> - c004db88: 7762 ld a4,56(sp) - c004db8a: 00050c1b sext.w s8,a0 + c004dd54: aacb20ef jal ra,c0000000 <__clzdi2> + c004dd58: 7762 ld a4,56(sp) + c004dd5a: 00050c1b sext.w s8,a0 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:862 p1 = bf_min(clz(v1 & mask), clz((~v2) & mask)) - (LIMB_BITS - p); - c004db8e: fffcc793 not a5,s9 - c004db92: 00e7f533 and a0,a5,a4 + c004dd5e: fffcc793 not a5,s9 + c004dd62: 00e7f533 and a0,a5,a4 clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:99 return LIMB_BITS; - c004db96: 04000793 li a5,64 + c004dd66: 04000793 li a5,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:98 if (a == 0) { - c004db9a: c509 beqz a0,c004dba4 + c004dd6a: c509 beqz a0,c004dd74 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004db9c: c64b20ef jal ra,c0000000 <__clzdi2> - c004dba0: 0005079b sext.w a5,a0 + c004dd6c: a94b20ef jal ra,c0000000 <__clzdi2> + c004dd70: 0005079b sext.w a5,a0 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:862 p1 = bf_min(clz(v1 & mask), clz((~v2) & mask)) - (LIMB_BITS - p); - c004dba4: 7742 ld a4,48(sp) - c004dba6: 853e mv a0,a5 - c004dba8: fff74713 not a4,a4 - c004dbac: 00fc5363 bge s8,a5,c004dbb2 - c004dbb0: 8562 mv a0,s8 + c004dd74: 7742 ld a4,48(sp) + c004dd76: 853e mv a0,a5 + c004dd78: fff74713 not a4,a4 + c004dd7c: 00fc5363 bge s8,a5,c004dd82 + c004dd80: 8562 mv a0,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:864 if (p1 != p) - c004dbb2: 67e2 ld a5,24(sp) + c004dd82: 67e2 ld a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:862 p1 = bf_min(clz(v1 & mask), clz((~v2) & mask)) - (LIMB_BITS - p); - c004dbb4: 9d39 addw a0,a0,a4 + c004dd84: 9d39 addw a0,a0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:863 n += p1; - c004dbb6: 99aa add s3,s3,a0 + c004dd86: 99aa add s3,s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:864 if (p1 != p) - c004dbb8: 04a79863 bne a5,a0,c004dc08 + c004dd88: 04a79863 bne a5,a0,c004ddd8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:867 bit_offset -= LIMB_BITS; - c004dbbc: fc0a0a13 addi s4,s4,-64 + c004dd8c: fc0a0a13 addi s4,s4,-64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:869 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004dbc0: 406a5593 srai a1,s4,0x6 - c004dbc4: 8526 mv a0,s1 - c004dbc6: 8f2ff0ef jal ra,c004ccb8 + c004dd90: 406a5593 srai a1,s4,0x6 + c004dd94: 8526 mv a0,s1 + c004dd96: 8f2ff0ef jal ra,c004ce88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:870 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004dbca: 67a2 ld a5,8(sp) + c004dd9a: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:869 v1 = get_limbz(a, bit_offset >> LIMB_LOG2_BITS); - c004dbcc: ec2a sd a0,24(sp) + c004dd9c: ec2a sd a0,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:870 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004dbce: 6542 ld a0,16(sp) - c004dbd0: 00fa0633 add a2,s4,a5 - c004dbd4: 85ee mv a1,s11 - c004dbd6: 8f6ff0ef jal ra,c004cccc + c004dd9e: 6542 ld a0,16(sp) + c004dda0: 00fa0633 add a2,s4,a5 + c004dda4: 85ee mv a1,s11 + c004dda6: 8f6ff0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:872 if (v1 != 0 || v2 != -1) { - c004dbda: 67e2 ld a5,24(sp) + c004ddaa: 67e2 ld a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:870 v2 = get_bits(b->tab, b->len, bit_offset + b_offset); - c004dbdc: 8c2a mv s8,a0 + c004ddac: 8c2a mv s8,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:872 if (v1 != 0 || v2 != -1) { - c004dbde: 1c079263 bnez a5,c004dda2 - c004dbe2: 577d li a4,-1 - c004dbe4: 0ce50763 beq a0,a4,c004dcb2 + c004ddae: 1c079263 bnez a5,c004df72 + c004ddb2: 577d li a4,-1 + c004ddb4: 0ce50763 beq a0,a4,c004de82 clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:99 return LIMB_BITS; - c004dbe8: 04000a13 li s4,64 + c004ddb8: 04000a13 li s4,64 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:874 p1 = bf_min(clz(v1), clz(~v2)); - c004dbec: fffc4513 not a0,s8 + c004ddbc: fffc4513 not a0,s8 clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:99 return LIMB_BITS; - c004dbf0: 04000793 li a5,64 + c004ddc0: 04000793 li a5,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:98 if (a == 0) { - c004dbf4: c509 beqz a0,c004dbfe + c004ddc4: c509 beqz a0,c004ddce clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004dbf6: c0ab20ef jal ra,c0000000 <__clzdi2> - c004dbfa: 0005079b sext.w a5,a0 + c004ddc6: a3ab20ef jal ra,c0000000 <__clzdi2> + c004ddca: 0005079b sext.w a5,a0 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:875 n += p1; - c004dbfe: 853e mv a0,a5 - c004dc00: 00fa5363 bge s4,a5,c004dc06 - c004dc04: 8552 mv a0,s4 - c004dc06: 99aa add s3,s3,a0 + c004ddce: 853e mv a0,a5 + c004ddd0: 00fa5363 bge s4,a5,c004ddd6 + c004ddd4: 8552 mv a0,s4 + c004ddd6: 99aa add s3,s3,a0 bf_add_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:945 tot_len = bf_max(a->len, b->len + (d + LIMB_BITS - 1) / LIMB_BITS); - c004dc08: 03fb8793 addi a5,s7,63 - c004dc0c: 04000713 li a4,64 - c004dc10: 02e7c7b3 div a5,a5,a4 - c004dc14: 9dbe add s11,s11,a5 - c004dc16: 01add363 bge s11,s10,c004dc1c - c004dc1a: 8dea mv s11,s10 + c004ddd8: 03fb8793 addi a5,s7,63 + c004dddc: 04000713 li a4,64 + c004dde0: 02e7c7b3 div a5,a5,a4 + c004dde4: 9dbe add s11,s11,a5 + c004dde6: 01add363 bge s11,s10,c004ddec + c004ddea: 8dea mv s11,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:944 precl = (cancelled_bits + prec + 2 + LIMB_BITS - 1) / LIMB_BITS; - c004dc1c: 7782 ld a5,32(sp) - c004dc1e: 04178793 addi a5,a5,65 - c004dc22: 99be add s3,s3,a5 - c004dc24: 0069d993 srli s3,s3,0x6 - c004dc28: 013dd363 bge s11,s3,c004dc2e - c004dc2c: 89ee mv s3,s11 + c004ddec: 7782 ld a5,32(sp) + c004ddee: 04178793 addi a5,a5,65 + c004ddf2: 99be add s3,s3,a5 + c004ddf4: 0069d993 srli s3,s3,0x6 + c004ddf8: 013dd363 bge s11,s3,c004ddfe + c004ddfc: 89ee mv s3,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:947 if (bf_resize(r, r_len)) - c004dc2e: 85ce mv a1,s3 - c004dc30: 8522 mv a0,s0 - c004dc32: bf0ff0ef jal ra,c004d022 - c004dc36: 16051063 bnez a0,c004dd96 + c004ddfe: 85ce mv a1,s3 + c004de00: 8522 mv a0,s0 + c004de02: bf0ff0ef jal ra,c004d1f2 + c004de06: 16051063 bnez a0,c004df66 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:950 b_bit_offset = (b->len - r_len) * LIMB_BITS + d; - c004dc3a: 01893583 ld a1,24(s2) + c004de0a: 01893583 ld a1,24(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:949 a_offset = a->len - r_len; - c004dc3e: 0184bc83 ld s9,24(s1) + c004de0e: 0184bc83 ld s9,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:953 carry = is_sub; - c004dc42: 016acd33 xor s10,s5,s6 + c004de12: 016acd33 xor s10,s5,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:950 b_bit_offset = (b->len - r_len) * LIMB_BITS + d; - c004dc46: 41358a33 sub s4,a1,s3 - c004dc4a: 0a1a slli s4,s4,0x6 - c004dc4c: 9a5e add s4,s4,s7 + c004de16: 41358a33 sub s4,a1,s3 + c004de1a: 0a1a slli s4,s4,0x6 + c004de1c: 9a5e add s4,s4,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:955 sub_mask = -is_sub; - c004dc4e: 41a007bb negw a5,s10 + c004de1e: 41a007bb negw a5,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:988 i = bf_min(i, (-b_bit_offset) >> LIMB_LOG2_BITS); - c004dc52: 41400833 neg a6,s4 + c004de22: 41400833 neg a6,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:949 a_offset = a->len - r_len; - c004dc56: 413c8733 sub a4,s9,s3 + c004de26: 413c8733 sub a4,s9,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:955 sub_mask = -is_sub; - c004dc5a: e43e sd a5,8(sp) + c004de2a: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:956 i = r_len - tot_len; - c004dc5c: 41b98db3 sub s11,s3,s11 + c004de2c: 41b98db3 sub s11,s3,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:970 if (bp + LIMB_BITS > 0 && bp < (slimb_t)(b->len * LIMB_BITS)) { - c004dc60: 00659b93 slli s7,a1,0x6 + c004de30: 00659b93 slli s7,a1,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:988 i = bf_min(i, (-b_bit_offset) >> LIMB_LOG2_BITS); - c004dc64: 40685813 srai a6,a6,0x6 + c004de34: 40685813 srai a6,a6,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:954 z = 0; - c004dc68: 4c01 li s8,0 + c004de38: 4c01 li s8,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:957 while (i < 0) { - c004dc6a: 040dc763 bltz s11,c004dcb8 + c004de3a: 040dc763 bltz s11,c004de88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1000 for(i = 0; i < r_len; i++) { - c004dc6e: 4c81 li s9,0 + c004de3e: 4c81 li s9,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1000 (discriminator 1) - c004dc70: 02043b83 ld s7,32(s0) - c004dc74: 0d999b63 bne s3,s9,c004dd4a + c004de40: 02043b83 ld s7,32(s0) + c004de44: 0d999b63 bne s3,s9,c004df1a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1011 r->tab[0] |= (z != 0); - c004dc78: 000bb783 ld a5,0(s7) - c004dc7c: 018036b3 snez a3,s8 - c004dc80: 8edd or a3,a3,a5 - c004dc82: 00dbb023 sd a3,0(s7) + c004de48: 000bb783 ld a5,0(s7) + c004de4c: 018036b3 snez a3,s8 + c004de50: 8edd or a3,a3,a5 + c004de52: 00dbb023 sd a3,0(s7) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1014 if (!is_sub && carry) { - c004dc86: e36a96e3 bne s5,s6,c004dab2 + c004de56: e36a96e3 bne s5,s6,c004dc82 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1014 (discriminator 1) - c004dc8a: e20d04e3 beqz s10,c004dab2 + c004de5a: e20d04e3 beqz s10,c004dc82 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1015 if (bf_resize(r, r_len + 1)) - c004dc8e: 00198593 addi a1,s3,1 - c004dc92: 8522 mv a0,s0 - c004dc94: b8eff0ef jal ra,c004d022 - c004dc98: 0e051f63 bnez a0,c004dd96 + c004de5e: 00198593 addi a1,s3,1 + c004de62: 8522 mv a0,s0 + c004de64: b8eff0ef jal ra,c004d1f2 + c004de68: 0e051f63 bnez a0,c004df66 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1017 r->tab[r_len] = 1; - c004dc9c: 701c ld a5,32(s0) - c004dc9e: 098e slli s3,s3,0x3 - c004dca0: 99be add s3,s3,a5 - c004dca2: 4785 li a5,1 - c004dca4: 00f9b023 sd a5,0(s3) + c004de6c: 701c ld a5,32(s0) + c004de6e: 098e slli s3,s3,0x3 + c004de70: 99be add s3,s3,a5 + c004de72: 4785 li a5,1 + c004de74: 00f9b023 sd a5,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1018 r->expn += LIMB_BITS; - c004dca8: 681c ld a5,16(s0) - c004dcaa: 04078793 addi a5,a5,64 - c004dcae: e81c sd a5,16(s0) - c004dcb0: b509 j c004dab2 + c004de78: 681c ld a5,16(s0) + c004de7a: 04078793 addi a5,a5,64 + c004de7e: e81c sd a5,16(s0) + c004de80: b509 j c004dc82 count_cancelled_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:878 n += LIMB_BITS; - c004dcb2: 04098993 addi s3,s3,64 + c004de82: 04098993 addi s3,s3,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:879 bit_offset -= LIMB_BITS; - c004dcb6: b719 j c004dbbc + c004de86: b719 j c004dd8c bf_add_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:962 bp = b_bit_offset + i * LIMB_BITS; - c004dcb8: 006d9613 slli a2,s11,0x6 + c004de88: 006d9613 slli a2,s11,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:961 ap = a_offset + i; - c004dcbc: 00ed8533 add a0,s11,a4 + c004de8c: 00ed8533 add a0,s11,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:962 bp = b_bit_offset + i * LIMB_BITS; - c004dcc0: 9652 add a2,a2,s4 + c004de90: 9652 add a2,a2,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:964 if (ap >= 0 && ap < a->len) { - c004dcc2: 02054e63 bltz a0,c004dcfe + c004de92: 02054e63 bltz a0,c004dece /Users/Luppy/riscv/quickjs-nuttx/libbf.c:964 (discriminator 1) - c004dcc6: 03957c63 bgeu a0,s9,c004dcfe + c004de96: 03957c63 bgeu a0,s9,c004dece /Users/Luppy/riscv/quickjs-nuttx/libbf.c:965 v1 = a->tab[ap]; - c004dcca: 709c ld a5,32(s1) - c004dccc: 00351e13 slli t3,a0,0x3 - c004dcd0: 97f2 add a5,a5,t3 - c004dcd2: 639c ld a5,0(a5) + c004de9a: 709c ld a5,32(s1) + c004de9c: 00351e13 slli t3,a0,0x3 + c004dea0: 97f2 add a5,a5,t3 + c004dea2: 639c ld a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:966 inflag = TRUE; - c004dcd4: 4e05 li t3,1 + c004dea4: 4e05 li t3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:970 if (bp + LIMB_BITS > 0 && bp < (slimb_t)(b->len * LIMB_BITS)) { - c004dcd6: 04060e93 addi t4,a2,64 - c004dcda: 03d05563 blez t4,c004dd04 + c004dea6: 04060e93 addi t4,a2,64 + c004deaa: 03d05563 blez t4,c004ded4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:970 (discriminator 1) - c004dcde: 03765363 bge a2,s7,c004dd04 + c004deae: 03765363 bge a2,s7,c004ded4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:971 v2 = get_bits(b->tab, b->len, bp); - c004dce2: 02093503 ld a0,32(s2) - c004dce6: fc3e sd a5,56(sp) - c004dce8: f842 sd a6,48(sp) - c004dcea: ec3a sd a4,24(sp) - c004dcec: e82e sd a1,16(sp) - c004dcee: fdffe0ef jal ra,c004cccc + c004deb2: 02093503 ld a0,32(s2) + c004deb6: fc3e sd a5,56(sp) + c004deb8: f842 sd a6,48(sp) + c004deba: ec3a sd a4,24(sp) + c004debc: e82e sd a1,16(sp) + c004debe: fdffe0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:976 if (!inflag) { - c004dcf2: 65c2 ld a1,16(sp) - c004dcf4: 6762 ld a4,24(sp) - c004dcf6: 7842 ld a6,48(sp) - c004dcf8: 77e2 ld a5,56(sp) + c004dec2: 65c2 ld a1,16(sp) + c004dec4: 6762 ld a4,24(sp) + c004dec6: 7842 ld a6,48(sp) + c004dec8: 77e2 ld a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:990 i++; - c004dcfa: 0d85 addi s11,s11,1 - c004dcfc: a02d j c004dd26 + c004deca: 0d85 addi s11,s11,1 + c004decc: a02d j c004def6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:963 inflag = FALSE; - c004dcfe: 4e01 li t3,0 + c004dece: 4e01 li t3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:968 v1 = 0; - c004dd00: 4781 li a5,0 - c004dd02: bfd1 j c004dcd6 + c004ded0: 4781 li a5,0 + c004ded2: bfd1 j c004dea6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:976 if (!inflag) { - c004dd04: 040e1163 bnez t3,c004dd46 + c004ded4: 040e1163 bnez t3,c004df16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:980 i = 0; - c004dd08: 4d81 li s11,0 + c004ded8: 4d81 li s11,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:981 if (ap < 0) - c004dd0a: 00055763 bgez a0,c004dd18 + c004deda: 00055763 bgez a0,c004dee8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:982 i = bf_min(i, -a_offset); - c004dd0e: 40e00db3 neg s11,a4 - c004dd12: 01b05363 blez s11,c004dd18 - c004dd16: 4d81 li s11,0 + c004dede: 40e00db3 neg s11,a4 + c004dee2: 01b05363 blez s11,c004dee8 + c004dee6: 4d81 li s11,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:987 if (bp + LIMB_BITS <= 0) - c004dd18: 4501 li a0,0 - c004dd1a: 01d04663 bgtz t4,c004dd26 + c004dee8: 4501 li a0,0 + c004deea: 01d04663 bgtz t4,c004def6 bf_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 if (a < b) - c004dd1e: 01b85363 bge a6,s11,c004dd24 - c004dd22: 8dc2 mv s11,a6 - c004dd24: 4501 li a0,0 + c004deee: 01b85363 bge a6,s11,c004def4 + c004def2: 8dc2 mv s11,a6 + c004def4: 4501 li a0,0 bf_add_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:992 v2 ^= sub_mask; - c004dd26: 66a2 ld a3,8(sp) - c004dd28: 8d35 xor a0,a0,a3 + c004def6: 66a2 ld a3,8(sp) + c004def8: 8d35 xor a0,a0,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:993 u = v1 + v2; - c004dd2a: 953e add a0,a0,a5 + c004defa: 953e add a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:995 u += carry; - c004dd2c: 00ad0633 add a2,s10,a0 + c004defc: 00ad0633 add a2,s10,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:996 carry = (u < carry) | carry1; - c004dd30: 01a63d33 sltu s10,a2,s10 + c004df00: 01a63d33 sltu s10,a2,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:994 carry1 = u < v1; - c004dd34: 00f53533 sltu a0,a0,a5 - c004dd38: 01a56d33 or s10,a0,s10 - c004dd3c: 0ffd7d13 zext.b s10,s10 + c004df04: 00f53533 sltu a0,a0,a5 + c004df08: 01a56d33 or s10,a0,s10 + c004df0c: 0ffd7d13 zext.b s10,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:997 z |= u; - c004dd40: 00cc6c33 or s8,s8,a2 - c004dd44: b71d j c004dc6a - c004dd46: 4501 li a0,0 - c004dd48: bf4d j c004dcfa + c004df10: 00cc6c33 or s8,s8,a2 + c004df14: b71d j c004de3a + c004df16: 4501 li a0,0 + c004df18: bf4d j c004deca /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1001 (discriminator 3) v1 = get_limbz(a, a_offset + i); - c004dd4a: 019705b3 add a1,a4,s9 - c004dd4e: 8526 mv a0,s1 - c004dd50: e83a sd a4,16(sp) - c004dd52: f67fe0ef jal ra,c004ccb8 + c004df1a: 019705b3 add a1,a4,s9 + c004df1e: 8526 mv a0,s1 + c004df20: e83a sd a4,16(sp) + c004df22: f67fe0ef jal ra,c004ce88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1002 (discriminator 3) v2 = get_bits(b->tab, b->len, b_bit_offset + i * LIMB_BITS); - c004dd56: 01893583 ld a1,24(s2) + c004df26: 01893583 ld a1,24(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1001 (discriminator 3) v1 = get_limbz(a, a_offset + i); - c004dd5a: 8daa mv s11,a0 + c004df2a: 8daa mv s11,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1002 (discriminator 3) v2 = get_bits(b->tab, b->len, b_bit_offset + i * LIMB_BITS); - c004dd5c: 02093503 ld a0,32(s2) - c004dd60: 006c9613 slli a2,s9,0x6 - c004dd64: 9652 add a2,a2,s4 - c004dd66: f67fe0ef jal ra,c004cccc + c004df2c: 02093503 ld a0,32(s2) + c004df30: 006c9613 slli a2,s9,0x6 + c004df34: 9652 add a2,a2,s4 + c004df36: f67fe0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1003 (discriminator 3) v2 ^= sub_mask; - c004dd6a: 67a2 ld a5,8(sp) + c004df3a: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1008 (discriminator 3) r->tab[i] = u; - c004dd6c: 003c9613 slli a2,s9,0x3 - c004dd70: 00cb8833 add a6,s7,a2 + c004df3c: 003c9613 slli a2,s9,0x3 + c004df40: 00cb8833 add a6,s7,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1003 (discriminator 3) v2 ^= sub_mask; - c004dd74: 8d3d xor a0,a0,a5 + c004df44: 8d3d xor a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1004 (discriminator 3) u = v1 + v2; - c004dd76: 956e add a0,a0,s11 + c004df46: 956e add a0,a0,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1006 (discriminator 3) u += carry; - c004dd78: 00ad05b3 add a1,s10,a0 + c004df48: 00ad05b3 add a1,s10,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1005 (discriminator 3) carry1 = u < v1; - c004dd7c: 01b53db3 sltu s11,a0,s11 + c004df4c: 01b53db3 sltu s11,a0,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1007 (discriminator 3) carry = (u < carry) | carry1; - c004dd80: 01a5bd33 sltu s10,a1,s10 - c004dd84: 01aded33 or s10,s11,s10 + c004df50: 01a5bd33 sltu s10,a1,s10 + c004df54: 01aded33 or s10,s11,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1000 (discriminator 3) for(i = 0; i < r_len; i++) { - c004dd88: 6742 ld a4,16(sp) - c004dd8a: 0ffd7d13 zext.b s10,s10 + c004df58: 6742 ld a4,16(sp) + c004df5a: 0ffd7d13 zext.b s10,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1008 (discriminator 3) r->tab[i] = u; - c004dd8e: 00b83023 sd a1,0(a6) + c004df5e: 00b83023 sd a1,0(a6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1000 (discriminator 3) for(i = 0; i < r_len; i++) { - c004dd92: 0c85 addi s9,s9,1 - c004dd94: bdf1 j c004dc70 + c004df62: 0c85 addi s9,s9,1 + c004df64: bdf1 j c004de40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1025 bf_set_nan(r); - c004dd96: 8522 mv a0,s0 - c004dd98: ac4ff0ef jal ra,c004d05c + c004df66: 8522 mv a0,s0 + c004df68: ac4ff0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1026 return BF_ST_MEM_ERROR; - c004dd9c: 02000993 li s3,32 - c004dda0: b941 j c004da30 + c004df6c: 02000993 li s3,32 + c004df70: b941 j c004dc00 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004dda2: 853e mv a0,a5 - c004dda4: a5cb20ef jal ra,c0000000 <__clzdi2> - c004dda8: 00050a1b sext.w s4,a0 + c004df72: 853e mv a0,a5 + c004df74: 88cb20ef jal ra,c0000000 <__clzdi2> + c004df78: 00050a1b sext.w s4,a0 clz(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:102 return clz64(a); - c004ddac: b581 j c004dbec + c004df7c: b581 j c004ddbc -00000000c004ddae <__bf_add>: +00000000c004df7e <__bf_add>: __bf_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1032 return bf_add_internal(r, a, b, prec, flags, 0); - c004ddae: 4781 li a5,0 - c004ddb0: c1fff06f j c004d9ce + c004df7e: 4781 li a5,0 + c004df80: c1fff06f j c004db9e -00000000c004ddb4 <__bf_sub>: +00000000c004df84 <__bf_sub>: __bf_sub(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1038 return bf_add_internal(r, a, b, prec, flags, 1); - c004ddb4: 4785 li a5,1 - c004ddb6: c19ff06f j c004d9ce + c004df84: 4785 li a5,1 + c004df86: c19ff06f j c004db9e -00000000c004ddba : +00000000c004df8a : bf_cmp_full(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:785 if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004ddba: 691c ld a5,16(a0) - c004ddbc: 587d li a6,-1 - c004ddbe: 00185813 srli a6,a6,0x1 - c004ddc2: 6990 ld a2,16(a1) - c004ddc4: 01078763 beq a5,a6,c004ddd2 + c004df8a: 691c ld a5,16(a0) + c004df8c: 587d li a6,-1 + c004df8e: 00185813 srli a6,a6,0x1 + c004df92: 6990 ld a2,16(a1) + c004df94: 01078763 beq a5,a6,c004dfa2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:791 (discriminator 1) res = -1; - c004ddc8: 57fd li a5,-1 + c004df98: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:785 (discriminator 1) if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004ddca: 01061963 bne a2,a6,c004dddc + c004df9a: 01061963 bne a2,a6,c004dfac /Users/Luppy/riscv/quickjs-nuttx/libbf.c:800 } - c004ddce: 853e mv a0,a5 - c004ddd0: 8082 ret + c004df9e: 853e mv a0,a5 + c004dfa0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:786 if (a->expn == b->expn) - c004ddd2: 40f607b3 sub a5,a2,a5 + c004dfa2: 40f607b3 sub a5,a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:789 res = 1; - c004ddd6: 00f037b3 snez a5,a5 - c004ddda: bfd5 j c004ddce + c004dfa6: 00f037b3 snez a5,a5 + c004dfaa: bfd5 j c004df9e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:782 { - c004dddc: 1141 addi sp,sp,-16 - c004ddde: e022 sd s0,0(sp) - c004dde0: e406 sd ra,8(sp) + c004dfac: 1141 addi sp,sp,-16 + c004dfae: e022 sd s0,0(sp) + c004dfb0: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:792 } else if (a->sign != b->sign) { - c004dde2: 4514 lw a3,8(a0) - c004dde4: 4580 lw s0,8(a1) - c004dde6: 00d40b63 beq s0,a3,c004ddfc + c004dfb2: 4514 lw a3,8(a0) + c004dfb4: 4580 lw s0,8(a1) + c004dfb6: 00d40b63 beq s0,a3,c004dfcc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:793 res = 1 - 2 * a->sign; - c004ddea: 57f9 li a5,-2 - c004ddec: 02d787bb mulw a5,a5,a3 - c004ddf0: 2785 addiw a5,a5,1 + c004dfba: 57f9 li a5,-2 + c004dfbc: 02d787bb mulw a5,a5,a3 + c004dfc0: 2785 addiw a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:800 } - c004ddf2: 60a2 ld ra,8(sp) - c004ddf4: 6402 ld s0,0(sp) - c004ddf6: 853e mv a0,a5 - c004ddf8: 0141 addi sp,sp,16 - c004ddfa: 8082 ret + c004dfc2: 60a2 ld ra,8(sp) + c004dfc4: 6402 ld s0,0(sp) + c004dfc6: 853e mv a0,a5 + c004dfc8: 0141 addi sp,sp,16 + c004dfca: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:795 res = bf_cmpu(a, b); - c004ddfc: b51ff0ef jal ra,c004d94c - c004de00: 87aa mv a5,a0 + c004dfcc: b51ff0ef jal ra,c004db1c + c004dfd0: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:796 if (a->sign) - c004de02: d865 beqz s0,c004ddf2 + c004dfd2: d865 beqz s0,c004dfc2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:797 res = -res; - c004de04: 40a007bb negw a5,a0 - c004de08: b7ed j c004ddf2 + c004dfd4: 40a007bb negw a5,a0 + c004dfd8: b7ed j c004dfc2 -00000000c004de0a : +00000000c004dfda : bf_cmp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:809 if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004de0a: 01053803 ld a6,16(a0) - c004de0e: 577d li a4,-1 - c004de10: 00175313 srli t1,a4,0x1 - c004de14: 04680463 beq a6,t1,c004de5c + c004dfda: 01053803 ld a6,16(a0) + c004dfde: 577d li a4,-1 + c004dfe0: 00175313 srli t1,a4,0x1 + c004dfe4: 04680463 beq a6,t1,c004e02c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:809 (discriminator 1) - c004de18: 0105b883 ld a7,16(a1) + c004dfe8: 0105b883 ld a7,16(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:810 (discriminator 1) res = 2; - c004de1c: 4789 li a5,2 + c004dfec: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:809 (discriminator 1) if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004de1e: 04688063 beq a7,t1,c004de5e + c004dfee: 04688063 beq a7,t1,c004e02e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:806 { - c004de22: 1141 addi sp,sp,-16 - c004de24: e022 sd s0,0(sp) - c004de26: e406 sd ra,8(sp) + c004dff2: 1141 addi sp,sp,-16 + c004dff4: e022 sd s0,0(sp) + c004dff6: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:811 } else if (a->sign != b->sign) { - c004de28: 4510 lw a2,8(a0) - c004de2a: 4580 lw s0,8(a1) - c004de2c: 02c40163 beq s0,a2,c004de4e + c004dff8: 4510 lw a2,8(a0) + c004dffa: 4580 lw s0,8(a1) + c004dffc: 02c40163 beq s0,a2,c004e01e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:812 if (a->expn == BF_EXP_ZERO && b->expn == BF_EXP_ZERO) - c004de30: 177e slli a4,a4,0x3f - c004de32: 00e81563 bne a6,a4,c004de3c + c004e000: 177e slli a4,a4,0x3f + c004e002: 00e81563 bne a6,a4,c004e00c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:813 (discriminator 1) res = 0; - c004de36: 4781 li a5,0 + c004e006: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:812 (discriminator 1) if (a->expn == BF_EXP_ZERO && b->expn == BF_EXP_ZERO) - c004de38: 01088663 beq a7,a6,c004de44 + c004e008: 01088663 beq a7,a6,c004e014 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:815 res = 1 - 2 * a->sign; - c004de3c: 57f9 li a5,-2 - c004de3e: 02c787bb mulw a5,a5,a2 - c004de42: 2785 addiw a5,a5,1 + c004e00c: 57f9 li a5,-2 + c004e00e: 02c787bb mulw a5,a5,a2 + c004e012: 2785 addiw a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:822 } - c004de44: 60a2 ld ra,8(sp) - c004de46: 6402 ld s0,0(sp) - c004de48: 853e mv a0,a5 - c004de4a: 0141 addi sp,sp,16 - c004de4c: 8082 ret + c004e014: 60a2 ld ra,8(sp) + c004e016: 6402 ld s0,0(sp) + c004e018: 853e mv a0,a5 + c004e01a: 0141 addi sp,sp,16 + c004e01c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:817 res = bf_cmpu(a, b); - c004de4e: affff0ef jal ra,c004d94c - c004de52: 87aa mv a5,a0 + c004e01e: affff0ef jal ra,c004db1c + c004e022: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:818 if (a->sign) - c004de54: d865 beqz s0,c004de44 + c004e024: d865 beqz s0,c004e014 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:819 res = -res; - c004de56: 40a007bb negw a5,a0 - c004de5a: b7ed j c004de44 + c004e026: 40a007bb negw a5,a0 + c004e02a: b7ed j c004e014 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:810 res = 2; - c004de5c: 4789 li a5,2 + c004e02c: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:822 } - c004de5e: 853e mv a0,a5 - c004de60: 8082 ret + c004e02e: 853e mv a0,a5 + c004e030: 8082 ret -00000000c004de62 : +00000000c004e032 : mp_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1043 { - c004de62: 88aa mv a7,a0 - c004de64: 068e slli a3,a3,0x3 + c004e032: 88aa mv a7,a0 + c004e034: 068e slli a3,a3,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1047 k = carry; - c004de66: 853a mv a0,a4 + c004e036: 853a mv a0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1048 for(i=0;i + c004e03a: 00d79363 bne a5,a3,c004e040 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1057 } - c004de6e: 8082 ret + c004e03e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1049 (discriminator 3) v = op1[i]; - c004de70: 00f58733 add a4,a1,a5 + c004e040: 00f58733 add a4,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1050 (discriminator 3) a = v + op2[i]; - c004de74: 00f60833 add a6,a2,a5 + c004e044: 00f60833 add a6,a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1049 (discriminator 3) v = op1[i]; - c004de78: 6318 ld a4,0(a4) + c004e048: 6318 ld a4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1050 (discriminator 3) a = v + op2[i]; - c004de7a: 00083803 ld a6,0(a6) - c004de7e: 983a add a6,a6,a4 + c004e04a: 00083803 ld a6,0(a6) + c004e04e: 983a add a6,a6,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1052 (discriminator 3) a = a + k; - c004de80: 01050333 add t1,a0,a6 + c004e050: 01050333 add t1,a0,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1051 (discriminator 3) k1 = a < v; - c004de84: 00e83833 sltu a6,a6,a4 + c004e054: 00e83833 sltu a6,a6,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1053 (discriminator 3) k = (a < k) | k1; - c004de88: 00a33733 sltu a4,t1,a0 - c004de8c: 00e86733 or a4,a6,a4 - c004de90: 0ff77513 zext.b a0,a4 + c004e058: 00a33733 sltu a4,t1,a0 + c004e05c: 00e86733 or a4,a6,a4 + c004e060: 0ff77513 zext.b a0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1054 (discriminator 3) res[i] = a; - c004de94: 00f88733 add a4,a7,a5 - c004de98: 00673023 sd t1,0(a4) + c004e064: 00f88733 add a4,a7,a5 + c004e068: 00673023 sd t1,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1048 (discriminator 3) for(i=0;i + c004e06c: 07a1 addi a5,a5,8 + c004e06e: b7f1 j c004e03a -00000000c004dea0 : +00000000c004e070 : mp_add_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1065 for(i=0;i + c004e076: 00c69363 bne a3,a2,c004e07c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1073 } - c004deaa: 8082 ret + c004e07a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1066 if (k == 0) - c004deac: dd7d beqz a0,c004deaa + c004e07c: dd7d beqz a0,c004e07a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1068 (discriminator 2) a = tab[i] + k; - c004deae: 6398 ld a4,0(a5) + c004e07e: 6398 ld a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1065 (discriminator 2) for(i=0;i + c004e08e: b7e5 j c004e076 -00000000c004dec0 : +00000000c004e090 : mp_sub(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1077 { - c004dec0: 832a mv t1,a0 + c004e090: 832a mv t1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1082 for(i=0;i + c004e096: 00d8c363 blt a7,a3,c004e09c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1091 } - c004deca: 8082 ret + c004e09a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1083 (discriminator 3) v = op1[i]; - c004decc: 00389713 slli a4,a7,0x3 - c004ded0: 00e587b3 add a5,a1,a4 - c004ded4: 0007b803 ld a6,0(a5) + c004e09c: 00389713 slli a4,a7,0x3 + c004e0a0: 00e587b3 add a5,a1,a4 + c004e0a4: 0007b803 ld a6,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1084 (discriminator 3) a = v - op2[i]; - c004ded8: 00e607b3 add a5,a2,a4 - c004dedc: 639c ld a5,0(a5) + c004e0a8: 00e607b3 add a5,a2,a4 + c004e0ac: 639c ld a5,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1088 (discriminator 3) res[i] = v; - c004dede: 971a add a4,a4,t1 + c004e0ae: 971a add a4,a4,t1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1082 (discriminator 3) for(i=0;i v; - c004deea: 00f83833 sltu a6,a6,a5 + c004e0ba: 00f83833 sltu a6,a6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1087 (discriminator 3) k = (v > a) | k1; - c004deee: 01c7b7b3 sltu a5,a5,t3 - c004def2: 00f867b3 or a5,a6,a5 - c004def6: 0ff7f513 zext.b a0,a5 + c004e0be: 01c7b7b3 sltu a5,a5,t3 + c004e0c2: 00f867b3 or a5,a6,a5 + c004e0c6: 0ff7f513 zext.b a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1088 (discriminator 3) res[i] = v; - c004defa: 01c73023 sd t3,0(a4) + c004e0ca: 01c73023 sd t3,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1082 (discriminator 3) for(i=0;i + c004e0ce: b7e1 j c004e096 -00000000c004df00 : +00000000c004e0d0 : mp_sub_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1117 for(i=0;i + c004e0d6: 00c74363 blt a4,a2,c004e0dc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1126 } - c004df0a: 8082 ret + c004e0da: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1118 v = tab[i]; - c004df0c: 638c ld a1,0(a5) + c004e0dc: 638c ld a1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1122 if (k == 0) - c004df0e: 07a1 addi a5,a5,8 + c004e0de: 07a1 addi a5,a5,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1119 a = v - k; - c004df10: 40a586b3 sub a3,a1,a0 + c004e0e0: 40a586b3 sub a3,a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1121 tab[i] = a; - c004df14: fed7bc23 sd a3,-8(a5) + c004e0e4: fed7bc23 sd a3,-8(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1120 k = a > v; - c004df18: 00d5b533 sltu a0,a1,a3 + c004e0e8: 00d5b533 sltu a0,a1,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1122 if (k == 0) - c004df1c: fed5f7e3 bgeu a1,a3,c004df0a + c004e0ec: fed5f7e3 bgeu a1,a3,c004e0da /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1117 (discriminator 2) for(i=0;i + c004e0f0: 0705 addi a4,a4,1 + c004e0f2: b7d5 j c004e0d6 -00000000c004df24 : +00000000c004e0f4 : mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1196 { - c004df24: 1141 addi sp,sp,-16 - c004df26: 852e mv a0,a1 - c004df28: 85b2 mv a1,a2 - c004df2a: 8636 mv a2,a3 - c004df2c: 86ba mv a3,a4 + c004e0f4: 1141 addi sp,sp,-16 + c004e0f6: 852e mv a0,a1 + c004e0f8: 85b2 mv a1,a2 + c004e0fa: 8636 mv a2,a3 + c004e0fc: 86ba mv a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004df2e: 873e mv a4,a5 + c004e0fe: 873e mv a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1196 { - c004df30: e406 sd ra,8(sp) + c004e100: e406 sd ra,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004df32: 80eff0ef jal ra,c004cf40 + c004e102: 80eff0ef jal ra,c004d110 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1211 } - c004df36: 60a2 ld ra,8(sp) - c004df38: 4501 li a0,0 - c004df3a: 0141 addi sp,sp,16 - c004df3c: 8082 ret + c004e106: 60a2 ld ra,8(sp) + c004e108: 4501 li a0,0 + c004e10a: 0141 addi sp,sp,16 + c004e10c: 8082 ret -00000000c004df3e : +00000000c004e10e : mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1369 { - c004df3e: 7135 addi sp,sp,-160 - c004df40: e14a sd s2,128(sp) - c004df42: fcce sd s3,120(sp) - c004df44: ecde sd s7,88(sp) - c004df46: e8e2 sd s8,80(sp) - c004df48: e4e6 sd s9,72(sp) - c004df4a: ed06 sd ra,152(sp) - c004df4c: e922 sd s0,144(sp) - c004df4e: e526 sd s1,136(sp) - c004df50: f8d2 sd s4,112(sp) - c004df52: f4d6 sd s5,104(sp) - c004df54: f0da sd s6,96(sp) - c004df56: e0ea sd s10,64(sp) - c004df58: fc6e sd s11,56(sp) + c004e10e: 7135 addi sp,sp,-160 + c004e110: e14a sd s2,128(sp) + c004e112: fcce sd s3,120(sp) + c004e114: ecde sd s7,88(sp) + c004e116: e8e2 sd s8,80(sp) + c004e118: e4e6 sd s9,72(sp) + c004e11a: ed06 sd ra,152(sp) + c004e11c: e922 sd s0,144(sp) + c004e11e: e526 sd s1,136(sp) + c004e120: f8d2 sd s4,112(sp) + c004e122: f4d6 sd s5,104(sp) + c004e124: f0da sd s6,96(sp) + c004e126: e0ea sd s10,64(sp) + c004e128: fc6e sd s11,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1373 if (n <= 2) { - c004df5a: 4789 li a5,2 + c004e12a: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1369 { - c004df5c: 89aa mv s3,a0 - c004df5e: 8bae mv s7,a1 - c004df60: 8c32 mv s8,a2 - c004df62: 8936 mv s2,a3 + c004e12c: 89aa mv s3,a0 + c004e12e: 8bae mv s7,a1 + c004e130: 8c32 mv s8,a2 + c004e132: 8936 mv s2,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1377 tabt = bf_malloc(s, sizeof(limb_t) * (n + 2)); - c004df64: 00268c93 addi s9,a3,2 + c004e134: 00268c93 addi s9,a3,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1373 if (n <= 2) { - c004df68: 0ad7e963 bltu a5,a3,c004e01a + c004e138: 0ad7e963 bltu a5,a3,c004e1ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1376 tabu = bf_malloc(s, sizeof(limb_t) * (2 * n + 1)); - c004df6c: 00469a13 slli s4,a3,0x4 - c004df70: 008a0593 addi a1,s4,8 - c004df74: d07fe0ef jal ra,c004cc7a - c004df78: 84aa mv s1,a0 + c004e13c: 00469a13 slli s4,a3,0x4 + c004e140: 008a0593 addi a1,s4,8 + c004e144: d07fe0ef jal ra,c004ce4a + c004e148: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1377 tabt = bf_malloc(s, sizeof(limb_t) * (n + 2)); - c004df7a: 003c9593 slli a1,s9,0x3 - c004df7e: 854e mv a0,s3 - c004df80: cfbfe0ef jal ra,c004cc7a - c004df84: 842a mv s0,a0 + c004e14a: 003c9593 slli a1,s9,0x3 + c004e14e: 854e mv a0,s3 + c004e150: cfbfe0ef jal ra,c004ce4a + c004e154: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1378 if (!tabt || !tabu) - c004df86: 1a050963 beqz a0,c004e138 + c004e156: 1a050963 beqz a0,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1378 (discriminator 1) - c004df8a: 1a048763 beqz s1,c004e138 + c004e15a: 1a048763 beqz s1,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1381 tabu[i] = 0; - c004df8e: 8652 mv a2,s4 - c004df90: 4581 li a1,0 - c004df92: 8526 mv a0,s1 - c004df94: 0dd080ef jal ra,c0056870 + c004e15e: 8652 mv a2,s4 + c004e160: 4581 li a1,0 + c004e162: 8526 mv a0,s1 + c004e164: 0dd080ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1382 tabu[2 * n] = 1; - c004df98: 4785 li a5,1 - c004df9a: 9a26 add s4,s4,s1 + c004e168: 4785 li a5,1 + c004e16a: 9a26 add s4,s4,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1380 for(i = 0; i < 2 * n; i++) - c004df9c: 00191693 slli a3,s2,0x1 + c004e16c: 00191693 slli a3,s2,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1382 tabu[2 * n] = 1; - c004dfa0: 00fa3023 sd a5,0(s4) + c004e170: 00fa3023 sd a5,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1383 if (mp_divnorm(s, tabt, tabu, 2 * n + 1, taba, n)) - c004dfa4: 8762 mv a4,s8 - c004dfa6: 87ca mv a5,s2 - c004dfa8: 0685 addi a3,a3,1 - c004dfaa: 8626 mv a2,s1 - c004dfac: 85a2 mv a1,s0 - c004dfae: 854e mv a0,s3 - c004dfb0: 19c000ef jal ra,c004e14c - c004dfb4: 18051263 bnez a0,c004e138 + c004e174: 8762 mv a4,s8 + c004e176: 87ca mv a5,s2 + c004e178: 0685 addi a3,a3,1 + c004e17a: 8626 mv a2,s1 + c004e17c: 85a2 mv a1,s0 + c004e17e: 854e mv a0,s3 + c004e180: 19c000ef jal ra,c004e31c + c004e184: 18051263 bnez a0,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1385 for(i = 0; i < n + 1; i++) - c004dfb8: 4781 li a5,0 - c004dfba: 00190613 addi a2,s2,1 + c004e188: 4781 li a5,0 + c004e18a: 00190613 addi a2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1385 (discriminator 1) - c004dfbe: 04c7e563 bltu a5,a2,c004e008 + c004e18e: 04c7e563 bltu a5,a2,c004e1d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1387 if (mp_scan_nz(tabu, n) == 0) { - c004dfc2: 85ca mv a1,s2 - c004dfc4: 8526 mv a0,s1 - c004dfc6: e432 sd a2,8(sp) - c004dfc8: d81fe0ef jal ra,c004cd48 - c004dfcc: 6622 ld a2,8(sp) - c004dfce: e509 bnez a0,c004dfd8 + c004e192: 85ca mv a1,s2 + c004e194: 8526 mv a0,s1 + c004e196: e432 sd a2,8(sp) + c004e198: d81fe0ef jal ra,c004cf18 + c004e19c: 6622 ld a2,8(sp) + c004e19e: e509 bnez a0,c004e1a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1389 mp_sub_ui(tabr, 1, n + 1); - c004dfd0: 4585 li a1,1 - c004dfd2: 855e mv a0,s7 - c004dfd4: f2dff0ef jal ra,c004df00 + c004e1a0: 4585 li a1,1 + c004e1a2: 855e mv a0,s7 + c004e1a4: f2dff0ef jal ra,c004e0d0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1422 bf_free(s, tabt); - c004dfd8: 85a2 mv a1,s0 - c004dfda: 854e mv a0,s3 - c004dfdc: ca7fe0ef jal ra,c004cc82 + c004e1a8: 85a2 mv a1,s0 + c004e1aa: 854e mv a0,s3 + c004e1ac: ca7fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1423 bf_free(s, tabu); - c004dfe0: 854e mv a0,s3 - c004dfe2: 85a6 mv a1,s1 - c004dfe4: c9ffe0ef jal ra,c004cc82 + c004e1b0: 854e mv a0,s3 + c004e1b2: 85a6 mv a1,s1 + c004e1b4: c9ffe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1424 return 0; - c004dfe8: 4501 li a0,0 + c004e1b8: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1429 } - c004dfea: 60ea ld ra,152(sp) - c004dfec: 644a ld s0,144(sp) - c004dfee: 64aa ld s1,136(sp) - c004dff0: 690a ld s2,128(sp) - c004dff2: 79e6 ld s3,120(sp) - c004dff4: 7a46 ld s4,112(sp) - c004dff6: 7aa6 ld s5,104(sp) - c004dff8: 7b06 ld s6,96(sp) - c004dffa: 6be6 ld s7,88(sp) - c004dffc: 6c46 ld s8,80(sp) - c004dffe: 6ca6 ld s9,72(sp) - c004e000: 6d06 ld s10,64(sp) - c004e002: 7de2 ld s11,56(sp) - c004e004: 610d addi sp,sp,160 - c004e006: 8082 ret + c004e1ba: 60ea ld ra,152(sp) + c004e1bc: 644a ld s0,144(sp) + c004e1be: 64aa ld s1,136(sp) + c004e1c0: 690a ld s2,128(sp) + c004e1c2: 79e6 ld s3,120(sp) + c004e1c4: 7a46 ld s4,112(sp) + c004e1c6: 7aa6 ld s5,104(sp) + c004e1c8: 7b06 ld s6,96(sp) + c004e1ca: 6be6 ld s7,88(sp) + c004e1cc: 6c46 ld s8,80(sp) + c004e1ce: 6ca6 ld s9,72(sp) + c004e1d0: 6d06 ld s10,64(sp) + c004e1d2: 7de2 ld s11,56(sp) + c004e1d4: 610d addi sp,sp,160 + c004e1d6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1386 (discriminator 3) tabr[i] = tabt[i]; - c004e008: 00379713 slli a4,a5,0x3 - c004e00c: 00e406b3 add a3,s0,a4 - c004e010: 6294 ld a3,0(a3) - c004e012: 975e add a4,a4,s7 + c004e1d8: 00379713 slli a4,a5,0x3 + c004e1dc: 00e406b3 add a3,s0,a4 + c004e1e0: 6294 ld a3,0(a3) + c004e1e2: 975e add a4,a4,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1385 (discriminator 3) for(i = 0; i < n + 1; i++) - c004e014: 0785 addi a5,a5,1 + c004e1e4: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1386 (discriminator 3) tabr[i] = tabt[i]; - c004e016: e314 sd a3,0(a4) + c004e1e6: e314 sd a3,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1385 (discriminator 3) for(i = 0; i < n + 1; i++) - c004e018: b75d j c004dfbe + c004e1e8: b75d j c004e18e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1392 l = (n - 1) / 2; - c004e01a: fff68a13 addi s4,a3,-1 - c004e01e: 001a5a13 srli s4,s4,0x1 + c004e1ea: fff68a13 addi s4,a3,-1 + c004e1ee: 001a5a13 srli s4,s4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1393 h = n - l; - c004e022: 41468b33 sub s6,a3,s4 + c004e1f2: 41468b33 sub s6,a3,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1397 tabt = bf_malloc(s, sizeof(limb_t) * (n + h + 1)); - c004e026: 00db07b3 add a5,s6,a3 - c004e02a: e83e sd a5,16(sp) - c004e02c: 0785 addi a5,a5,1 - c004e02e: 00379a93 slli s5,a5,0x3 - c004e032: 85d6 mv a1,s5 - c004e034: e43e sd a5,8(sp) - c004e036: c45fe0ef jal ra,c004cc7a + c004e1f6: 00db07b3 add a5,s6,a3 + c004e1fa: e83e sd a5,16(sp) + c004e1fc: 0785 addi a5,a5,1 + c004e1fe: 00379a93 slli s5,a5,0x3 + c004e202: 85d6 mv a1,s5 + c004e204: e43e sd a5,8(sp) + c004e206: c45fe0ef jal ra,c004ce4a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1398 tabu = bf_malloc(s, sizeof(limb_t) * (n + 2 * h - l + 2)); - c004e03a: 001b1793 slli a5,s6,0x1 - c004e03e: 414c85b3 sub a1,s9,s4 - c004e042: 95be add a1,a1,a5 + c004e20a: 001b1793 slli a5,s6,0x1 + c004e20e: 414c85b3 sub a1,s9,s4 + c004e212: 95be add a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1397 tabt = bf_malloc(s, sizeof(limb_t) * (n + h + 1)); - c004e044: 842a mv s0,a0 + c004e214: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1398 tabu = bf_malloc(s, sizeof(limb_t) * (n + 2 * h - l + 2)); - c004e046: 058e slli a1,a1,0x3 - c004e048: 854e mv a0,s3 - c004e04a: ec3e sd a5,24(sp) - c004e04c: c2ffe0ef jal ra,c004cc7a - c004e050: 84aa mv s1,a0 + c004e216: 058e slli a1,a1,0x3 + c004e218: 854e mv a0,s3 + c004e21a: ec3e sd a5,24(sp) + c004e21c: c2ffe0ef jal ra,c004ce4a + c004e220: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1399 if (!tabt || !tabu) - c004e052: 0e040363 beqz s0,c004e138 + c004e222: 0e040363 beqz s0,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1399 (discriminator 1) - c004e056: c16d beqz a0,c004e138 + c004e226: c16d beqz a0,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1401 tabxh = tabr + l; - c004e058: 003a1d93 slli s11,s4,0x3 - c004e05c: 01bb8cb3 add s9,s7,s11 + c004e228: 003a1d93 slli s11,s4,0x3 + c004e22c: 01bb8cb3 add s9,s7,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1402 if (mp_recip(s, tabxh, taba + l, h)) - c004e060: 86da mv a3,s6 - c004e062: 01bc0633 add a2,s8,s11 - c004e066: 85e6 mv a1,s9 - c004e068: 854e mv a0,s3 - c004e06a: ed5ff0ef jal ra,c004df3e - c004e06e: f02a sd a0,32(sp) - c004e070: e561 bnez a0,c004e138 + c004e230: 86da mv a3,s6 + c004e232: 01bc0633 add a2,s8,s11 + c004e236: 85e6 mv a1,s9 + c004e238: 854e mv a0,s3 + c004e23a: ed5ff0ef jal ra,c004e10e + c004e23e: f02a sd a0,32(sp) + c004e240: e561 bnez a0,c004e308 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1404 if (mp_mul(s, tabt, taba, n, tabxh, h + 1)) /* n + h + 1 limbs */ - c004e072: 001b0d13 addi s10,s6,1 # 1001 <__clzdi2-0xbfffefff> + c004e242: 001b0d13 addi s10,s6,1 # 1001 <__clzdi2-0xbfffefff> mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e076: 876a mv a4,s10 - c004e078: 86e6 mv a3,s9 - c004e07a: 864a mv a2,s2 - c004e07c: 85e2 mv a1,s8 - c004e07e: 8522 mv a0,s0 + c004e246: 876a mv a4,s10 + c004e248: 86e6 mv a3,s9 + c004e24a: 864a mv a2,s2 + c004e24c: 85e2 mv a1,s8 + c004e24e: 8522 mv a0,s0 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1406 while (tabt[n + h] != 0) { - c004e080: 1ae1 addi s5,s5,-8 + c004e250: 1ae1 addi s5,s5,-8 mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e082: ebffe0ef jal ra,c004cf40 + c004e252: ebffe0ef jal ra,c004d110 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1406 while (tabt[n + h] != 0) { - c004e086: 015407b3 add a5,s0,s5 + c004e256: 015407b3 add a5,s0,s5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1409 mp_sub_ui(tabt + n, c, h + 1); - c004e08a: 00391a93 slli s5,s2,0x3 - c004e08e: 9aa2 add s5,s5,s0 + c004e25a: 00391a93 slli s5,s2,0x3 + c004e25e: 9aa2 add s5,s5,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1406 while (tabt[n + h] != 0) { - c004e090: 6398 ld a4,0(a5) + c004e260: 6398 ld a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1409 mp_sub_ui(tabt + n, c, h + 1); - c004e092: 7802 ld a6,32(sp) + c004e262: 7802 ld a6,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1406 while (tabt[n + h] != 0) { - c004e094: eb39 bnez a4,c004e0ea + c004e264: eb39 bnez a4,c004e2ba mp_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1100 for(i=0;i + c004e266: 66a2 ld a3,8(sp) + c004e268: 06d84e63 blt a6,a3,c004e2e4 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1413 tabt[n + h]++; - c004e09c: 6398 ld a4,0(a5) + c004e26c: 6398 ld a4,0(a5) mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e09e: 86e6 mv a3,s9 - c004e0a0: 01b405b3 add a1,s0,s11 + c004e26e: 86e6 mv a3,s9 + c004e270: 01b405b3 add a1,s0,s11 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1413 tabt[n + h]++; - c004e0a4: 0705 addi a4,a4,1 - c004e0a6: e398 sd a4,0(a5) + c004e274: 0705 addi a4,a4,1 + c004e276: e398 sd a4,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1414 if (mp_mul(s, tabu, tabt + l, n + h + 1 - l, tabxh, h + 1)) - c004e0a8: 67c2 ld a5,16(sp) + c004e278: 67c2 ld a5,16(sp) mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e0aa: 876a mv a4,s10 - c004e0ac: 8526 mv a0,s1 + c004e27a: 876a mv a4,s10 + c004e27c: 8526 mv a0,s1 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1414 if (mp_mul(s, tabu, tabt + l, n + h + 1 - l, tabxh, h + 1)) - c004e0ae: 41478633 sub a2,a5,s4 + c004e27e: 41478633 sub a2,a5,s4 mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e0b2: 0605 addi a2,a2,1 - c004e0b4: e8dfe0ef jal ra,c004cf40 + c004e282: 0605 addi a2,a2,1 + c004e284: e8dfe0ef jal ra,c004d110 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1417 k = 2 * h - l; - c004e0b8: 67e2 ld a5,24(sp) + c004e288: 67e2 ld a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1418 for(i = 0; i < l; i++) - c004e0ba: 4701 li a4,0 + c004e28a: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1417 k = 2 * h - l; - c004e0bc: 414787b3 sub a5,a5,s4 - c004e0c0: 078e slli a5,a5,0x3 - c004e0c2: 97a6 add a5,a5,s1 + c004e28c: 414787b3 sub a5,a5,s4 + c004e290: 078e slli a5,a5,0x3 + c004e292: 97a6 add a5,a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1419 (discriminator 3) tabr[i] = tabu[i + k]; - c004e0c4: 6390 ld a2,0(a5) - c004e0c6: 00371693 slli a3,a4,0x3 - c004e0ca: 96de add a3,a3,s7 - c004e0cc: e290 sd a2,0(a3) + c004e294: 6390 ld a2,0(a5) + c004e296: 00371693 slli a3,a4,0x3 + c004e29a: 96de add a3,a3,s7 + c004e29c: e290 sd a2,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1418 (discriminator 3) for(i = 0; i < l; i++) - c004e0ce: 0705 addi a4,a4,1 - c004e0d0: 07a1 addi a5,a5,8 - c004e0d2: ff4749e3 blt a4,s4,c004e0c4 + c004e29e: 0705 addi a4,a4,1 + c004e2a0: 07a1 addi a5,a5,8 + c004e2a2: ff4749e3 blt a4,s4,c004e294 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1420 mp_add(tabr + l, tabr + l, tabu + 2 * h, h, 0); - c004e0d6: 004b1613 slli a2,s6,0x4 - c004e0da: 4701 li a4,0 - c004e0dc: 86da mv a3,s6 - c004e0de: 9626 add a2,a2,s1 - c004e0e0: 85e6 mv a1,s9 - c004e0e2: 8566 mv a0,s9 - c004e0e4: d7fff0ef jal ra,c004de62 - c004e0e8: bdc5 j c004dfd8 + c004e2a6: 004b1613 slli a2,s6,0x4 + c004e2aa: 4701 li a4,0 + c004e2ac: 86da mv a3,s6 + c004e2ae: 9626 add a2,a2,s1 + c004e2b0: 85e6 mv a1,s9 + c004e2b2: 8566 mv a0,s9 + c004e2b4: d7fff0ef jal ra,c004e032 + c004e2b8: bdc5 j c004e1a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1407 mp_sub_ui(tabxh, 1, h + 1); - c004e0ea: 866a mv a2,s10 - c004e0ec: 4585 li a1,1 - c004e0ee: 8566 mv a0,s9 - c004e0f0: f43e sd a5,40(sp) - c004e0f2: f042 sd a6,32(sp) - c004e0f4: e0dff0ef jal ra,c004df00 + c004e2ba: 866a mv a2,s10 + c004e2bc: 4585 li a1,1 + c004e2be: 8566 mv a0,s9 + c004e2c0: f43e sd a5,40(sp) + c004e2c2: f042 sd a6,32(sp) + c004e2c4: e0dff0ef jal ra,c004e0d0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1408 c = mp_sub(tabt, tabt, taba, n, 0); - c004e0f8: 4701 li a4,0 - c004e0fa: 86ca mv a3,s2 - c004e0fc: 8662 mv a2,s8 - c004e0fe: 85a2 mv a1,s0 - c004e100: 8522 mv a0,s0 - c004e102: dbfff0ef jal ra,c004dec0 - c004e106: 85aa mv a1,a0 + c004e2c8: 4701 li a4,0 + c004e2ca: 86ca mv a3,s2 + c004e2cc: 8662 mv a2,s8 + c004e2ce: 85a2 mv a1,s0 + c004e2d0: 8522 mv a0,s0 + c004e2d2: dbfff0ef jal ra,c004e090 + c004e2d6: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1409 mp_sub_ui(tabt + n, c, h + 1); - c004e108: 866a mv a2,s10 - c004e10a: 8556 mv a0,s5 - c004e10c: df5ff0ef jal ra,c004df00 - c004e110: 77a2 ld a5,40(sp) - c004e112: bfbd j c004e090 + c004e2d8: 866a mv a2,s10 + c004e2da: 8556 mv a0,s5 + c004e2dc: df5ff0ef jal ra,c004e0d0 + c004e2e0: 77a2 ld a5,40(sp) + c004e2e2: bfbd j c004e260 mp_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1102 a = v - op2[i]; - c004e114: 00381613 slli a2,a6,0x3 - c004e118: 9622 add a2,a2,s0 - c004e11a: 6214 ld a3,0(a2) + c004e2e4: 00381613 slli a2,a6,0x3 + c004e2e8: 9622 add a2,a2,s0 + c004e2ea: 6214 ld a3,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1100 for(i=0;i v; - c004e126: 00d03733 snez a4,a3 + c004e2f6: 00d03733 snez a4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1105 k = (v > a) | k1; - c004e12a: 00b6b6b3 sltu a3,a3,a1 - c004e12e: 8f55 or a4,a4,a3 - c004e130: 0ff77713 zext.b a4,a4 + c004e2fa: 00b6b6b3 sltu a3,a3,a1 + c004e2fe: 8f55 or a4,a4,a3 + c004e300: 0ff77713 zext.b a4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1106 res[i] = v; - c004e134: e20c sd a1,0(a2) + c004e304: e20c sd a1,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1100 for(i=0;i + c004e306: b785 j c004e266 mp_recip(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1426 bf_free(s, tabt); - c004e138: 85a2 mv a1,s0 - c004e13a: 854e mv a0,s3 - c004e13c: b47fe0ef jal ra,c004cc82 + c004e308: 85a2 mv a1,s0 + c004e30a: 854e mv a0,s3 + c004e30c: b47fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1427 bf_free(s, tabu); - c004e140: 854e mv a0,s3 - c004e142: 85a6 mv a1,s1 - c004e144: b3ffe0ef jal ra,c004cc82 + c004e310: 854e mv a0,s3 + c004e312: 85a6 mv a1,s1 + c004e314: b3ffe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1428 return -1; - c004e148: 557d li a0,-1 - c004e14a: b545 j c004dfea + c004e318: 557d li a0,-1 + c004e31a: b545 j c004e1ba -00000000c004e14c : +00000000c004e31c : mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1294 { - c004e14c: 7175 addi sp,sp,-144 - c004e14e: e0e2 sd s8,64(sp) + c004e31c: 7175 addi sp,sp,-144 + c004e31e: e0e2 sd s8,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1298 b1 = tabb[nb - 1]; - c004e150: 00379c13 slli s8,a5,0x3 + c004e320: 00379c13 slli s8,a5,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1294 { - c004e154: e122 sd s0,128(sp) - c004e156: fca6 sd s1,120(sp) - c004e158: f8ca sd s2,112(sp) - c004e15a: e4de sd s7,72(sp) - c004e15c: e506 sd ra,136(sp) - c004e15e: f4ce sd s3,104(sp) - c004e160: f0d2 sd s4,96(sp) - c004e162: ecd6 sd s5,88(sp) - c004e164: e8da sd s6,80(sp) - c004e166: fc66 sd s9,56(sp) - c004e168: f86a sd s10,48(sp) - c004e16a: f46e sd s11,40(sp) - c004e16c: 84be mv s1,a5 + c004e324: e122 sd s0,128(sp) + c004e326: fca6 sd s1,120(sp) + c004e328: f8ca sd s2,112(sp) + c004e32a: e4de sd s7,72(sp) + c004e32c: e506 sd ra,136(sp) + c004e32e: f4ce sd s3,104(sp) + c004e330: f0d2 sd s4,96(sp) + c004e332: ecd6 sd s5,88(sp) + c004e334: e8da sd s6,80(sp) + c004e336: fc66 sd s9,56(sp) + c004e338: f86a sd s10,48(sp) + c004e33a: f46e sd s11,40(sp) + c004e33c: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1298 b1 = tabb[nb - 1]; - c004e16e: 018707b3 add a5,a4,s8 - c004e172: ff87ba83 ld s5,-8(a5) + c004e33e: 018707b3 add a5,a4,s8 + c004e342: ff87ba83 ld s5,-8(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1299 if (nb == 1) { - c004e176: 4785 li a5,1 + c004e346: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1294 { - c004e178: 8bae mv s7,a1 - c004e17a: 8932 mv s2,a2 - c004e17c: 8436 mv s0,a3 + c004e348: 8bae mv s7,a1 + c004e34a: 8932 mv s2,a2 + c004e34c: 8436 mv s0,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1299 if (nb == 1) { - c004e17e: 0af49663 bne s1,a5,c004e22a + c004e34e: 0af49663 bne s1,a5,c004e3fa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1300 taba[0] = mp_div1norm(tabq, taba, na, b1, 0); - c004e182: ec02 sd zero,24(sp) + c004e352: ec02 sd zero,24(sp) mp_div1norm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1267 if (n >= UDIV1NORM_THRESHOLD) { - c004e184: 4789 li a5,2 + c004e354: 4789 li a5,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1270 for(i = n - 1; i >= 0; i--) { - c004e186: fff68493 addi s1,a3,-1 + c004e356: fff68493 addi s1,a3,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1267 if (n >= UDIV1NORM_THRESHOLD) { - c004e18a: 00d7ed63 bltu a5,a3,c004e1a4 - c004e18e: 00369413 slli s0,a3,0x3 - c004e192: 4781 li a5,0 - c004e194: 4481 li s1,0 + c004e35a: 00d7ed63 bltu a5,a3,c004e374 + c004e35e: 00369413 slli s0,a3,0x3 + c004e362: 4781 li a5,0 + c004e364: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1275 for(i = n - 1; i >= 0; i--) { - c004e196: 5a61 li s4,-8 - c004e198: 1461 addi s0,s0,-8 - c004e19a: 07441163 bne s0,s4,c004e1fc - c004e19e: cf91 beqz a5,c004e1ba - c004e1a0: ec26 sd s1,24(sp) - c004e1a2: a821 j c004e1ba + c004e366: 5a61 li s4,-8 + c004e368: 1461 addi s0,s0,-8 + c004e36a: 07441163 bne s0,s4,c004e3cc + c004e36e: cf91 beqz a5,c004e38a + c004e370: ec26 sd s1,24(sp) + c004e372: a821 j c004e38a udiv1norm_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1236 return (((dlimb_t)a1 << LIMB_BITS) | a0) / d; - c004e1a4: 8656 mv a2,s5 - c004e1a6: 4681 li a3,0 - c004e1a8: 557d li a0,-1 - c004e1aa: fffac593 not a1,s5 - c004e1ae: dceb20ef jal ra,c000077c <__udivti3> - c004e1b2: 89aa mv s3,a0 + c004e374: 8656 mv a2,s5 + c004e376: 4681 li a3,0 + c004e378: 557d li a0,-1 + c004e37a: fffac593 not a1,s5 + c004e37e: bfeb20ef jal ra,c000077c <__udivti3> + c004e382: 89aa mv s3,a0 mp_div1norm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1271 tabr[i] = udiv1norm(&r, r, taba[i], b, b_inv); - c004e1b4: 65e2 ld a1,24(sp) + c004e384: 65e2 ld a1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1270 for(i = n - 1; i >= 0; i--) { - c004e1b6: 0204d563 bgez s1,c004e1e0 + c004e386: 0204d563 bgez s1,c004e3b0 mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1300 taba[0] = mp_div1norm(tabq, taba, na, b1, 0); - c004e1ba: 67e2 ld a5,24(sp) - c004e1bc: 00f93023 sd a5,0(s2) + c004e38a: 67e2 ld a5,24(sp) + c004e38c: 00f93023 sd a5,0(s2) mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1534 return 0; - c004e1c0: 4501 li a0,0 + c004e390: 4501 li a0,0 mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1361 } - c004e1c2: 60aa ld ra,136(sp) - c004e1c4: 640a ld s0,128(sp) - c004e1c6: 74e6 ld s1,120(sp) - c004e1c8: 7946 ld s2,112(sp) - c004e1ca: 79a6 ld s3,104(sp) - c004e1cc: 7a06 ld s4,96(sp) - c004e1ce: 6ae6 ld s5,88(sp) - c004e1d0: 6b46 ld s6,80(sp) - c004e1d2: 6ba6 ld s7,72(sp) - c004e1d4: 6c06 ld s8,64(sp) - c004e1d6: 7ce2 ld s9,56(sp) - c004e1d8: 7d42 ld s10,48(sp) - c004e1da: 7da2 ld s11,40(sp) - c004e1dc: 6149 addi sp,sp,144 - c004e1de: 8082 ret + c004e392: 60aa ld ra,136(sp) + c004e394: 640a ld s0,128(sp) + c004e396: 74e6 ld s1,120(sp) + c004e398: 7946 ld s2,112(sp) + c004e39a: 79a6 ld s3,104(sp) + c004e39c: 7a06 ld s4,96(sp) + c004e39e: 6ae6 ld s5,88(sp) + c004e3a0: 6b46 ld s6,80(sp) + c004e3a2: 6ba6 ld s7,72(sp) + c004e3a4: 6c06 ld s8,64(sp) + c004e3a6: 7ce2 ld s9,56(sp) + c004e3a8: 7d42 ld s10,48(sp) + c004e3aa: 7da2 ld s11,40(sp) + c004e3ac: 6149 addi sp,sp,144 + c004e3ae: 8082 ret mp_div1norm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1271 tabr[i] = udiv1norm(&r, r, taba[i], b, b_inv); - c004e1e0: 00349413 slli s0,s1,0x3 - c004e1e4: 008907b3 add a5,s2,s0 - c004e1e8: 6390 ld a2,0(a5) - c004e1ea: 874e mv a4,s3 - c004e1ec: 86d6 mv a3,s5 - c004e1ee: 0828 addi a0,sp,24 - c004e1f0: b75fe0ef jal ra,c004cd64 - c004e1f4: 945e add s0,s0,s7 - c004e1f6: e008 sd a0,0(s0) + c004e3b0: 00349413 slli s0,s1,0x3 + c004e3b4: 008907b3 add a5,s2,s0 + c004e3b8: 6390 ld a2,0(a5) + c004e3ba: 874e mv a4,s3 + c004e3bc: 86d6 mv a3,s5 + c004e3be: 0828 addi a0,sp,24 + c004e3c0: b75fe0ef jal ra,c004cf34 + c004e3c4: 945e add s0,s0,s7 + c004e3c6: e008 sd a0,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1270 for(i = n - 1; i >= 0; i--) { - c004e1f8: 14fd addi s1,s1,-1 - c004e1fa: bf6d j c004e1b4 + c004e3c8: 14fd addi s1,s1,-1 + c004e3ca: bf6d j c004e384 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1276 a1 = ((dlimb_t)r << LIMB_BITS) | taba[i]; - c004e1fc: 008907b3 add a5,s2,s0 - c004e200: 0007b983 ld s3,0(a5) + c004e3cc: 008907b3 add a5,s2,s0 + c004e3d0: 0007b983 ld s3,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1277 tabr[i] = a1 / b; - c004e204: 8656 mv a2,s5 - c004e206: 4681 li a3,0 - c004e208: 85a6 mv a1,s1 - c004e20a: 854e mv a0,s3 - c004e20c: d70b20ef jal ra,c000077c <__udivti3> - c004e210: 008b8b33 add s6,s7,s0 - c004e214: 00ab3023 sd a0,0(s6) + c004e3d4: 8656 mv a2,s5 + c004e3d6: 4681 li a3,0 + c004e3d8: 85a6 mv a1,s1 + c004e3da: 854e mv a0,s3 + c004e3dc: ba0b20ef jal ra,c000077c <__udivti3> + c004e3e0: 008b8b33 add s6,s7,s0 + c004e3e4: 00ab3023 sd a0,0(s6) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1278 r = a1 % b; - c004e218: 85a6 mv a1,s1 - c004e21a: 8656 mv a2,s5 - c004e21c: 4681 li a3,0 - c004e21e: 854e mv a0,s3 - c004e220: 8a9b20ef jal ra,c0000ac8 <__umodti3> - c004e224: 84aa mv s1,a0 - c004e226: 4785 li a5,1 - c004e228: bf85 j c004e198 + c004e3e8: 85a6 mv a1,s1 + c004e3ea: 8656 mv a2,s5 + c004e3ec: 4681 li a3,0 + c004e3ee: 854e mv a0,s3 + c004e3f0: ed8b20ef jal ra,c0000ac8 <__umodti3> + c004e3f4: 84aa mv s1,a0 + c004e3f6: 4785 li a5,1 + c004e3f8: bf85 j c004e368 mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1303 n = na - nb; - c004e22a: 40968db3 sub s11,a3,s1 - c004e22e: 8a3a mv s4,a4 + c004e3fa: 40968db3 sub s11,a3,s1 + c004e3fe: 8a3a mv s4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 - c004e230: 8b2a mv s6,a0 + c004e400: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1304 if (bf_min(n, nb) >= DIVNORM_LARGE_THRESHOLD) { - c004e232: 876e mv a4,s11 - c004e234: 01b4d363 bge s1,s11,c004e23a - c004e238: 8726 mv a4,s1 - c004e23a: 03100693 li a3,49 - c004e23e: 1ae6d363 bge a3,a4,c004e3e4 + c004e402: 876e mv a4,s11 + c004e404: 01b4d363 bge s1,s11,c004e40a + c004e408: 8726 mv a4,s1 + c004e40a: 03100693 li a3,49 + c004e40e: 1ae6d363 bge a3,a4,c004e5b4 mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1461 assert(nq >= 1); - c004e242: 000d9b63 bnez s11,c004e258 - c004e246: 4601 li a2,0 - c004e248: 5b500593 li a1,1461 - c004e24c: 00024517 auipc a0,0x24 - c004e250: 0cc50513 addi a0,a0,204 # c0072318 - c004e254: 7c4050ef jal ra,c0053a18 <__assert> + c004e412: 000d9b63 bnez s11,c004e428 + c004e416: 4601 li a2,0 + c004e418: 5b500593 li a1,1461 + c004e41c: 00024517 auipc a0,0x24 + c004e420: 15c50513 addi a0,a0,348 # c0072578 + c004e424: 7c4050ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1464 n++; - c004e258: 001d8793 addi a5,s11,1 - c004e25c: e43e sd a5,8(sp) + c004e428: 001d8793 addi a5,s11,1 + c004e42c: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1463 if (nq < nb) - c004e25e: 009df363 bgeu s11,s1,c004e264 + c004e42e: 009df363 bgeu s11,s1,c004e434 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1464 n++; - c004e262: 8dbe mv s11,a5 + c004e432: 8dbe mv s11,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1465 tabb_inv = bf_malloc(s, sizeof(limb_t) * (n + 1)); - c004e264: 001d8c93 addi s9,s11,1 - c004e268: 003c9d13 slli s10,s9,0x3 - c004e26c: 85ea mv a1,s10 - c004e26e: 855a mv a0,s6 - c004e270: a0bfe0ef jal ra,c004cc7a - c004e274: 89aa mv s3,a0 + c004e434: 001d8c93 addi s9,s11,1 + c004e438: 003c9d13 slli s10,s9,0x3 + c004e43c: 85ea mv a1,s10 + c004e43e: 855a mv a0,s6 + c004e440: a0bfe0ef jal ra,c004ce4a + c004e444: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1466 tabt = bf_malloc(s, sizeof(limb_t) * 2 * (n + 1)); - c004e276: 004c9593 slli a1,s9,0x4 - c004e27a: 855a mv a0,s6 - c004e27c: 9fffe0ef jal ra,c004cc7a - c004e280: 8aaa mv s5,a0 + c004e446: 004c9593 slli a1,s9,0x4 + c004e44a: 855a mv a0,s6 + c004e44c: 9fffe0ef jal ra,c004ce4a + c004e450: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1467 if (!tabb_inv || !tabt) - c004e282: 02098663 beqz s3,c004e2ae - c004e286: c505 beqz a0,c004e2ae + c004e452: 02098663 beqz s3,c004e47e + c004e456: c505 beqz a0,c004e47e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1470 if (n >= nb) { - c004e288: 049de663 bltu s11,s1,c004e2d4 + c004e458: 049de663 bltu s11,s1,c004e4a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1472 tabt[i] = 0; - c004e28c: 409d8d33 sub s10,s11,s1 - c004e290: 0d0e slli s10,s10,0x3 - c004e292: 866a mv a2,s10 - c004e294: 4581 li a1,0 - c004e296: 5da080ef jal ra,c0056870 - c004e29a: 4701 li a4,0 + c004e45c: 409d8d33 sub s10,s11,s1 + c004e460: 0d0e slli s10,s10,0x3 + c004e462: 866a mv a2,s10 + c004e464: 4581 li a1,0 + c004e466: 5da080ef jal ra,c0056a40 + c004e46a: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1473 for(i = 0; i < nb; i++) - c004e29c: 02ec1363 bne s8,a4,c004e2c2 + c004e46c: 02ec1363 bne s8,a4,c004e492 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1487 if (mp_recip(s, tabb_inv, tabt, n)) - c004e2a0: 86ee mv a3,s11 - c004e2a2: 8656 mv a2,s5 - c004e2a4: 85ce mv a1,s3 - c004e2a6: 855a mv a0,s6 - c004e2a8: c97ff0ef jal ra,c004df3e - c004e2ac: c135 beqz a0,c004e310 + c004e470: 86ee mv a3,s11 + c004e472: 8656 mv a2,s5 + c004e474: 85ce mv a1,s3 + c004e476: 855a mv a0,s6 + c004e478: c97ff0ef jal ra,c004e10e + c004e47c: c135 beqz a0,c004e4e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1536 bf_free(s, tabb_inv); - c004e2ae: 85ce mv a1,s3 - c004e2b0: 855a mv a0,s6 - c004e2b2: 9d1fe0ef jal ra,c004cc82 + c004e47e: 85ce mv a1,s3 + c004e480: 855a mv a0,s6 + c004e482: 9d1fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1537 bf_free(s, tabt); - c004e2b6: 855a mv a0,s6 - c004e2b8: 85d6 mv a1,s5 - c004e2ba: 9c9fe0ef jal ra,c004cc82 + c004e486: 855a mv a0,s6 + c004e488: 85d6 mv a1,s5 + c004e48a: 9c9fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1538 return -1; - c004e2be: 557d li a0,-1 - c004e2c0: b709 j c004e1c2 + c004e48e: 557d li a0,-1 + c004e490: b709 j c004e392 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1474 tabt[i + n - nb] = tabb[i]; - c004e2c2: 00ea06b3 add a3,s4,a4 - c004e2c6: 6290 ld a2,0(a3) - c004e2c8: 01a706b3 add a3,a4,s10 - c004e2cc: 96d6 add a3,a3,s5 - c004e2ce: e290 sd a2,0(a3) + c004e492: 00ea06b3 add a3,s4,a4 + c004e496: 6290 ld a2,0(a3) + c004e498: 01a706b3 add a3,a4,s10 + c004e49c: 96d6 add a3,a3,s5 + c004e49e: e290 sd a2,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1473 for(i = 0; i < nb; i++) - c004e2d0: 0721 addi a4,a4,8 - c004e2d2: b7e9 j c004e29c - c004e2d4: 41b48733 sub a4,s1,s11 - c004e2d8: 070e slli a4,a4,0x3 - c004e2da: 9752 add a4,a4,s4 + c004e4a0: 0721 addi a4,a4,8 + c004e4a2: b7e9 j c004e46c + c004e4a4: 41b48733 sub a4,s1,s11 + c004e4a8: 070e slli a4,a4,0x3 + c004e4aa: 9752 add a4,a4,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1478 for(i = 0; i < n; i++) - c004e2dc: 4681 li a3,0 + c004e4ac: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1479 tabt[i] = tabb[i + nb - n]; - c004e2de: 630c ld a1,0(a4) - c004e2e0: 00369613 slli a2,a3,0x3 - c004e2e4: 9656 add a2,a2,s5 - c004e2e6: e20c sd a1,0(a2) + c004e4ae: 630c ld a1,0(a4) + c004e4b0: 00369613 slli a2,a3,0x3 + c004e4b4: 9656 add a2,a2,s5 + c004e4b6: e20c sd a1,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1478 for(i = 0; i < n; i++) - c004e2e8: 0685 addi a3,a3,1 - c004e2ea: 0721 addi a4,a4,8 - c004e2ec: fedd99e3 bne s11,a3,c004e2de + c004e4b8: 0685 addi a3,a3,1 + c004e4ba: 0721 addi a4,a4,8 + c004e4bc: fedd99e3 bne s11,a3,c004e4ae /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1480 if (mp_add_ui(tabt, 1, n)) { - c004e2f0: 866e mv a2,s11 - c004e2f2: 4585 li a1,1 - c004e2f4: 8556 mv a0,s5 - c004e2f6: babff0ef jal ra,c004dea0 - c004e2fa: d15d beqz a0,c004e2a0 + c004e4c0: 866e mv a2,s11 + c004e4c2: 4585 li a1,1 + c004e4c4: 8556 mv a0,s5 + c004e4c6: babff0ef jal ra,c004e070 + c004e4ca: d15d beqz a0,c004e470 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1482 memset(tabb_inv, 0, n * sizeof(limb_t)); - c004e2fc: 1d61 addi s10,s10,-8 - c004e2fe: 866a mv a2,s10 - c004e300: 4581 li a1,0 - c004e302: 854e mv a0,s3 - c004e304: 56c080ef jal ra,c0056870 + c004e4cc: 1d61 addi s10,s10,-8 + c004e4ce: 866a mv a2,s10 + c004e4d0: 4581 li a1,0 + c004e4d2: 854e mv a0,s3 + c004e4d4: 56c080ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1483 tabb_inv[n] = 1; - c004e308: 9d4e add s10,s10,s3 - c004e30a: 4705 li a4,1 - c004e30c: 00ed3023 sd a4,0(s10) + c004e4d8: 9d4e add s10,s10,s3 + c004e4da: 4705 li a4,1 + c004e4dc: 00ed3023 sd a4,0(s10) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1491 if (mp_mul(s, tabt, tabb_inv, n + 1, taba + na - (n + 1), n + 1)) - c004e310: 41b406b3 sub a3,s0,s11 - c004e314: 068e slli a3,a3,0x3 - c004e316: 16e1 addi a3,a3,-8 + c004e4e0: 41b406b3 sub a3,s0,s11 + c004e4e4: 068e slli a3,a3,0x3 + c004e4e6: 16e1 addi a3,a3,-8 mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e318: 8766 mv a4,s9 - c004e31a: 8666 mv a2,s9 - c004e31c: 96ca add a3,a3,s2 - c004e31e: 85ce mv a1,s3 - c004e320: 8556 mv a0,s5 - c004e322: c1ffe0ef jal ra,c004cf40 + c004e4e8: 8766 mv a4,s9 + c004e4ea: 8666 mv a2,s9 + c004e4ec: 96ca add a3,a3,s2 + c004e4ee: 85ce mv a1,s3 + c004e4f0: 8556 mv a0,s5 + c004e4f2: c1ffe0ef jal ra,c004d110 mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1494 for(i = 0; i < nq + 1; i++) - c004e326: fff44793 not a5,s0 - c004e32a: 97a6 add a5,a5,s1 + c004e4f6: fff44793 not a5,s0 + c004e4fa: 97a6 add a5,a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1495 tabq[i] = tabt[i + 2 * (n + 1) - (nq + 1)]; - c004e32c: 0c86 slli s9,s9,0x1 - c004e32e: 9cbe add s9,s9,a5 - c004e330: 0c8e slli s9,s9,0x3 - c004e332: 9cd6 add s9,s9,s5 + c004e4fc: 0c86 slli s9,s9,0x1 + c004e4fe: 9cbe add s9,s9,a5 + c004e500: 0c8e slli s9,s9,0x3 + c004e502: 9cd6 add s9,s9,s5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1494 for(i = 0; i < nq + 1; i++) - c004e334: 4781 li a5,0 - c004e336: 6722 ld a4,8(sp) - c004e338: 08e7e963 bltu a5,a4,c004e3ca + c004e504: 4781 li a5,0 + c004e506: 6722 ld a4,8(sp) + c004e508: 08e7e963 bltu a5,a4,c004e59a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1500 bf_free(s, tabt); - c004e33c: 85d6 mv a1,s5 - c004e33e: 855a mv a0,s6 - c004e340: 943fe0ef jal ra,c004cc82 + c004e50c: 85d6 mv a1,s5 + c004e50e: 855a mv a0,s6 + c004e510: 943fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1501 bf_free(s, tabb_inv); - c004e344: 85ce mv a1,s3 - c004e346: 855a mv a0,s6 - c004e348: 93bfe0ef jal ra,c004cc82 + c004e514: 85ce mv a1,s3 + c004e516: 855a mv a0,s6 + c004e518: 93bfe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1505 tabt = bf_malloc(s, sizeof(limb_t) * (na + 1)); - c004e34c: 00140593 addi a1,s0,1 - c004e350: 058e slli a1,a1,0x3 - c004e352: 855a mv a0,s6 - c004e354: 927fe0ef jal ra,c004cc7a - c004e358: 89aa mv s3,a0 + c004e51c: 00140593 addi a1,s0,1 + c004e520: 058e slli a1,a1,0x3 + c004e522: 855a mv a0,s6 + c004e524: 927fe0ef jal ra,c004ce4a + c004e528: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1506 if (!tabt) - c004e35a: c159 beqz a0,c004e3e0 + c004e52a: c159 beqz a0,c004e5b0 mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e35c: 6622 ld a2,8(sp) - c004e35e: 8726 mv a4,s1 - c004e360: 86d2 mv a3,s4 - c004e362: 85de mv a1,s7 - c004e364: bddfe0ef jal ra,c004cf40 + c004e52c: 6622 ld a2,8(sp) + c004e52e: 8726 mv a4,s1 + c004e530: 86d2 mv a3,s4 + c004e532: 85de mv a1,s7 + c004e534: bddfe0ef jal ra,c004d110 mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1511 mp_sub(taba, taba, tabt, nb + 1, 0); - c004e368: 4701 li a4,0 - c004e36a: 00148693 addi a3,s1,1 - c004e36e: 864e mv a2,s3 - c004e370: 85ca mv a1,s2 - c004e372: 854a mv a0,s2 - c004e374: b4dff0ef jal ra,c004dec0 + c004e538: 4701 li a4,0 + c004e53a: 00148693 addi a3,s1,1 + c004e53e: 864e mv a2,s3 + c004e540: 85ca mv a1,s2 + c004e542: 854a mv a0,s2 + c004e544: b4dff0ef jal ra,c004e090 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1512 bf_free(s, tabt); - c004e378: 85ce mv a1,s3 - c004e37a: 855a mv a0,s6 - c004e37c: 907fe0ef jal ra,c004cc82 + c004e548: 85ce mv a1,s3 + c004e54a: 855a mv a0,s6 + c004e54c: 907fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1520 if (taba[nb] == 0 && mp_cmp(taba, tabb, nb) < 0) - c004e380: 9c4a add s8,s8,s2 - c004e382: 000c3783 ld a5,0(s8) - c004e386: e385 bnez a5,c004e3a6 + c004e550: 9c4a add s8,s8,s2 + c004e552: 000c3783 ld a5,0(s8) + c004e556: e385 bnez a5,c004e576 mp_cmp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1435 for(i = n - 1; i >= 0; i--) { - c004e388: fff48793 addi a5,s1,-1 - c004e38c: 0007cd63 bltz a5,c004e3a6 + c004e558: fff48793 addi a5,s1,-1 + c004e55c: 0007cd63 bltz a5,c004e576 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1436 if (taba[i] != tabb[i]) { - c004e390: 00379713 slli a4,a5,0x3 - c004e394: 00e906b3 add a3,s2,a4 - c004e398: 9752 add a4,a4,s4 - c004e39a: 6294 ld a3,0(a3) - c004e39c: 6318 ld a4,0(a4) - c004e39e: 02e68f63 beq a3,a4,c004e3dc + c004e560: 00379713 slli a4,a5,0x3 + c004e564: 00e906b3 add a3,s2,a4 + c004e568: 9752 add a4,a4,s4 + c004e56a: 6294 ld a3,0(a3) + c004e56c: 6318 ld a4,0(a4) + c004e56e: 02e68f63 beq a3,a4,c004e5ac /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1437 if (taba[i] < tabb[i]) - c004e3a2: e0e6efe3 bltu a3,a4,c004e1c0 + c004e572: e0e6efe3 bltu a3,a4,c004e390 mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1522 taba[nb] -= mp_sub(taba, taba, tabb, nb, 0); - c004e3a6: 8652 mv a2,s4 - c004e3a8: 85ca mv a1,s2 - c004e3aa: 4701 li a4,0 - c004e3ac: 86a6 mv a3,s1 - c004e3ae: 854a mv a0,s2 - c004e3b0: b11ff0ef jal ra,c004dec0 - c004e3b4: 000c3783 ld a5,0(s8) + c004e576: 8652 mv a2,s4 + c004e578: 85ca mv a1,s2 + c004e57a: 4701 li a4,0 + c004e57c: 86a6 mv a3,s1 + c004e57e: 854a mv a0,s2 + c004e580: b11ff0ef jal ra,c004e090 + c004e584: 000c3783 ld a5,0(s8) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1523 mp_add_ui(tabq, 1, nq + 1); - c004e3b8: 6622 ld a2,8(sp) - c004e3ba: 4585 li a1,1 + c004e588: 6622 ld a2,8(sp) + c004e58a: 4585 li a1,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1522 taba[nb] -= mp_sub(taba, taba, tabb, nb, 0); - c004e3bc: 8f89 sub a5,a5,a0 - c004e3be: 00fc3023 sd a5,0(s8) + c004e58c: 8f89 sub a5,a5,a0 + c004e58e: 00fc3023 sd a5,0(s8) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1523 mp_add_ui(tabq, 1, nq + 1); - c004e3c2: 855e mv a0,s7 - c004e3c4: addff0ef jal ra,c004dea0 + c004e592: 855e mv a0,s7 + c004e594: addff0ef jal ra,c004e070 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1520 if (taba[nb] == 0 && mp_cmp(taba, tabb, nb) < 0) - c004e3c8: bf6d j c004e382 + c004e598: bf6d j c004e552 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1495 tabq[i] = tabt[i + 2 * (n + 1) - (nq + 1)]; - c004e3ca: 000cb683 ld a3,0(s9) - c004e3ce: 00379713 slli a4,a5,0x3 - c004e3d2: 975e add a4,a4,s7 - c004e3d4: e314 sd a3,0(a4) + c004e59a: 000cb683 ld a3,0(s9) + c004e59e: 00379713 slli a4,a5,0x3 + c004e5a2: 975e add a4,a4,s7 + c004e5a4: e314 sd a3,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1494 for(i = 0; i < nq + 1; i++) - c004e3d6: 0785 addi a5,a5,1 - c004e3d8: 0ca1 addi s9,s9,8 - c004e3da: bfb1 j c004e336 + c004e5a6: 0785 addi a5,a5,1 + c004e5a8: 0ca1 addi s9,s9,8 + c004e5aa: bfb1 j c004e506 mp_cmp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1435 for(i = n - 1; i >= 0; i--) { - c004e3dc: 17fd addi a5,a5,-1 - c004e3de: b77d j c004e38c + c004e5ac: 17fd addi a5,a5,-1 + c004e5ae: b77d j c004e55c mp_divnorm_large(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1505 tabt = bf_malloc(s, sizeof(limb_t) * (na + 1)); - c004e3e0: 4a81 li s5,0 - c004e3e2: b5f1 j c004e2ae + c004e5b0: 4a81 li s5,0 + c004e5b2: b5f1 j c004e47e mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1308 if (n >= UDIV1NORM_THRESHOLD) - c004e3e4: 4709 li a4,2 + c004e5b4: 4709 li a4,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1311 b1_inv = 0; - c004e3e6: 4b01 li s6,0 + c004e5b6: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1308 if (n >= UDIV1NORM_THRESHOLD) - c004e3e8: 01b77a63 bgeu a4,s11,c004e3fc + c004e5b8: 01b77a63 bgeu a4,s11,c004e5cc udiv1norm_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1236 return (((dlimb_t)a1 << LIMB_BITS) | a0) / d; - c004e3ec: 8656 mv a2,s5 - c004e3ee: 4681 li a3,0 - c004e3f0: 557d li a0,-1 - c004e3f2: fffac593 not a1,s5 - c004e3f6: b86b20ef jal ra,c000077c <__udivti3> - c004e3fa: 8b2a mv s6,a0 + c004e5bc: 8656 mv a2,s5 + c004e5be: 4681 li a3,0 + c004e5c0: 557d li a0,-1 + c004e5c2: fffac593 not a1,s5 + c004e5c6: 9b6b20ef jal ra,c000077c <__udivti3> + c004e5ca: 8b2a mv s6,a0 mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1315 for(j = nb - 1; j >= 0; j--) { - c004e3fc: 003d9693 slli a3,s11,0x3 - c004e400: fff48613 addi a2,s1,-1 - c004e404: 00d905b3 add a1,s2,a3 + c004e5cc: 003d9693 slli a3,s11,0x3 + c004e5d0: fff48613 addi a2,s1,-1 + c004e5d4: 00d905b3 add a1,s2,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1315 (discriminator 1) - c004e408: 00065463 bgez a2,c004e410 + c004e5d8: 00065463 bgez a2,c004e5e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1314 q = 1; - c004e40c: 4705 li a4,1 - c004e40e: a005 j c004e42e + c004e5dc: 4705 li a4,1 + c004e5de: a005 j c004e5fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1316 if (taba[n + j] != tabb[j]) { - c004e410: 00361513 slli a0,a2,0x3 - c004e414: 00a58733 add a4,a1,a0 - c004e418: 9552 add a0,a0,s4 - c004e41a: 6318 ld a4,0(a4) - c004e41c: 6108 ld a0,0(a0) - c004e41e: 08a70c63 beq a4,a0,c004e4b6 + c004e5e0: 00361513 slli a0,a2,0x3 + c004e5e4: 00a58733 add a4,a1,a0 + c004e5e8: 9552 add a0,a0,s4 + c004e5ea: 6318 ld a4,0(a4) + c004e5ec: 6108 ld a0,0(a0) + c004e5ee: 08a70c63 beq a4,a0,c004e686 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1317 if (taba[n + j] < tabb[j]) - c004e422: 00a73733 sltu a4,a4,a0 - c004e426: 00174713 xori a4,a4,1 - c004e42a: 1702 slli a4,a4,0x20 - c004e42c: 9301 srli a4,a4,0x20 + c004e5f2: 00a73733 sltu a4,a4,a0 + c004e5f6: 00174713 xori a4,a4,1 + c004e5fa: 1702 slli a4,a4,0x20 + c004e5fc: 9301 srli a4,a4,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1322 tabq[n] = q; - c004e42e: 96de add a3,a3,s7 - c004e430: e298 sd a4,0(a3) + c004e5fe: 96de add a3,a3,s7 + c004e600: e298 sd a4,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1323 if (q) { - c004e432: c719 beqz a4,c004e440 + c004e602: c719 beqz a4,c004e610 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1324 mp_sub(taba + n, taba + n, tabb, nb, 0); - c004e434: 4701 li a4,0 - c004e436: 86a6 mv a3,s1 - c004e438: 8652 mv a2,s4 - c004e43a: 852e mv a0,a1 - c004e43c: a85ff0ef jal ra,c004dec0 + c004e604: 4701 li a4,0 + c004e606: 86a6 mv a3,s1 + c004e608: 8652 mv a2,s4 + c004e60a: 852e mv a0,a1 + c004e60c: a85ff0ef jal ra,c004e090 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1327 for(i = n - 1; i >= 0; i--) { - c004e440: 040e slli s0,s0,0x3 - c004e442: fffd8993 addi s3,s11,-1 - c004e446: 944a add s0,s0,s2 + c004e610: 040e slli s0,s0,0x3 + c004e612: fffd8993 addi s3,s11,-1 + c004e616: 944a add s0,s0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1327 (discriminator 1) - c004e448: d609cce3 bltz s3,c004e1c0 + c004e618: d609cce3 bltz s3,c004e390 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1328 if (unlikely(taba[i + nb] >= b1)) { - c004e44c: ff843583 ld a1,-8(s0) + c004e61c: ff843583 ld a1,-8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1329 q = -1; - c004e450: 5cfd li s9,-1 + c004e620: 5cfd li s9,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1328 if (unlikely(taba[i + nb] >= b1)) { - c004e452: 0155fd63 bgeu a1,s5,c004e46c + c004e622: 0155fd63 bgeu a1,s5,c004e63c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1331 q = udiv1norm(&dummy_r, taba[i + nb], taba[i + nb - 1], b1, b1_inv); - c004e456: ff043503 ld a0,-16(s0) + c004e626: ff043503 ld a0,-16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1330 } else if (b1_inv) { - c004e45a: 060b0063 beqz s6,c004e4ba + c004e62a: 060b0063 beqz s6,c004e68a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1331 q = udiv1norm(&dummy_r, taba[i + nb], taba[i + nb - 1], b1, b1_inv); - c004e45e: 862a mv a2,a0 - c004e460: 875a mv a4,s6 - c004e462: 86d6 mv a3,s5 - c004e464: 0828 addi a0,sp,24 - c004e466: 8fffe0ef jal ra,c004cd64 + c004e62e: 862a mv a2,a0 + c004e630: 875a mv a4,s6 + c004e632: 86d6 mv a3,s5 + c004e634: 0828 addi a0,sp,24 + c004e636: 8fffe0ef jal ra,c004cf34 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1335 q = al / b1; - c004e46a: 8caa mv s9,a0 + c004e63a: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1338 r = mp_sub_mul1(taba + i, tabb, nb, q); - c004e46c: 00399d13 slli s10,s3,0x3 - c004e470: 01a90db3 add s11,s2,s10 + c004e63c: 00399d13 slli s10,s3,0x3 + c004e640: 01a90db3 add s11,s2,s10 mp_sub_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1222 for(i = 0; i < n; i++) { - c004e474: 4681 li a3,0 + c004e644: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1221 l = 0; - c004e476: 4781 li a5,0 + c004e646: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1222 for(i = 0; i < n; i++) { - c004e478: 04dc1663 bne s8,a3,c004e4c4 + c004e648: 04dc1663 bne s8,a3,c004e694 mp_divnorm(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1340 v = taba[i + nb]; - c004e47c: ff843703 ld a4,-8(s0) + c004e64c: ff843703 ld a4,-8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1341 a = v - r; - c004e480: 40f707b3 sub a5,a4,a5 + c004e650: 40f707b3 sub a5,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1343 taba[i + nb] = a; - c004e484: fef43c23 sd a5,-8(s0) + c004e654: fef43c23 sd a5,-8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1345 if (c != 0) { - c004e488: 02f77163 bgeu a4,a5,c004e4aa + c004e658: 02f77163 bgeu a4,a5,c004e67a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1349 c = mp_add(taba + i, taba + i, tabb, nb, 0); - c004e48c: 4701 li a4,0 - c004e48e: 86a6 mv a3,s1 - c004e490: 8652 mv a2,s4 - c004e492: 85ee mv a1,s11 - c004e494: 856e mv a0,s11 + c004e65c: 4701 li a4,0 + c004e65e: 86a6 mv a3,s1 + c004e660: 8652 mv a2,s4 + c004e662: 85ee mv a1,s11 + c004e664: 856e mv a0,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1348 q--; - c004e496: 1cfd addi s9,s9,-1 + c004e666: 1cfd addi s9,s9,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1349 c = mp_add(taba + i, taba + i, tabb, nb, 0); - c004e498: 9cbff0ef jal ra,c004de62 + c004e668: 9cbff0ef jal ra,c004e032 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1351 if (c != 0) { - c004e49c: d965 beqz a0,c004e48c + c004e66c: d965 beqz a0,c004e65c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1352 if (++taba[i + nb] == 0) { - c004e49e: ff843783 ld a5,-8(s0) - c004e4a2: 0785 addi a5,a5,1 - c004e4a4: fef43c23 sd a5,-8(s0) - c004e4a8: f3f5 bnez a5,c004e48c + c004e66e: ff843783 ld a5,-8(s0) + c004e672: 0785 addi a5,a5,1 + c004e674: fef43c23 sd a5,-8(s0) + c004e678: f3f5 bnez a5,c004e65c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1358 (discriminator 2) tabq[i] = q; - c004e4aa: 9d5e add s10,s10,s7 - c004e4ac: 019d3023 sd s9,0(s10) + c004e67a: 9d5e add s10,s10,s7 + c004e67c: 019d3023 sd s9,0(s10) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1327 (discriminator 2) for(i = n - 1; i >= 0; i--) { - c004e4b0: 19fd addi s3,s3,-1 - c004e4b2: 1461 addi s0,s0,-8 - c004e4b4: bf51 j c004e448 + c004e680: 19fd addi s3,s3,-1 + c004e682: 1461 addi s0,s0,-8 + c004e684: bf51 j c004e618 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1315 (discriminator 2) for(j = nb - 1; j >= 0; j--) { - c004e4b6: 167d addi a2,a2,-1 - c004e4b8: bf81 j c004e408 + c004e686: 167d addi a2,a2,-1 + c004e688: bf81 j c004e5d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1335 q = al / b1; - c004e4ba: 8656 mv a2,s5 - c004e4bc: 4681 li a3,0 - c004e4be: abeb20ef jal ra,c000077c <__udivti3> - c004e4c2: b765 j c004e46a + c004e68a: 8656 mv a2,s5 + c004e68c: 4681 li a3,0 + c004e68e: 8eeb20ef jal ra,c000077c <__udivti3> + c004e692: b765 j c004e63a mp_sub_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1223 t = tabr[i] - (dlimb_t)taba[i] * (dlimb_t)b - l; - c004e4c4: 00da0633 add a2,s4,a3 - c004e4c8: 620c ld a1,0(a2) - c004e4ca: 00dd8533 add a0,s11,a3 - c004e4ce: 6118 ld a4,0(a0) - c004e4d0: 02bc8633 mul a2,s9,a1 - c004e4d4: 06a1 addi a3,a3,8 - c004e4d6: 40f707b3 sub a5,a4,a5 - c004e4da: 00f73733 sltu a4,a4,a5 - c004e4de: 02bcb5b3 mulhu a1,s9,a1 - c004e4e2: 40c78633 sub a2,a5,a2 - c004e4e6: 00c7b7b3 sltu a5,a5,a2 + c004e694: 00da0633 add a2,s4,a3 + c004e698: 620c ld a1,0(a2) + c004e69a: 00dd8533 add a0,s11,a3 + c004e69e: 6118 ld a4,0(a0) + c004e6a0: 02bc8633 mul a2,s9,a1 + c004e6a4: 06a1 addi a3,a3,8 + c004e6a6: 40f707b3 sub a5,a4,a5 + c004e6aa: 00f73733 sltu a4,a4,a5 + c004e6ae: 02bcb5b3 mulhu a1,s9,a1 + c004e6b2: 40c78633 sub a2,a5,a2 + c004e6b6: 00c7b7b3 sltu a5,a5,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1224 tabr[i] = t; - c004e4ea: e110 sd a2,0(a0) + c004e6ba: e110 sd a2,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1223 t = tabr[i] - (dlimb_t)taba[i] * (dlimb_t)b - l; - c004e4ec: 972e add a4,a4,a1 + c004e6bc: 972e add a4,a4,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1225 l = -(t >> LIMB_BITS); - c004e4ee: 97ba add a5,a5,a4 + c004e6be: 97ba add a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1222 for(i = 0; i < n; i++) { - c004e4f0: b761 j c004e478 + c004e6c0: b761 j c004e648 -00000000c004e4f2 : +00000000c004e6c2 : mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1997 { - c004e4f2: 7175 addi sp,sp,-144 - c004e4f4: fca6 sd s1,120(sp) - c004e4f6: f8ca sd s2,112(sp) - c004e4f8: f4ce sd s3,104(sp) - c004e4fa: e506 sd ra,136(sp) - c004e4fc: 89be mv s3,a5 - c004e4fe: e122 sd s0,128(sp) - c004e500: f0d2 sd s4,96(sp) - c004e502: ecd6 sd s5,88(sp) - c004e504: e8da sd s6,80(sp) - c004e506: e4de sd s7,72(sp) - c004e508: e0e2 sd s8,64(sp) - c004e50a: fc66 sd s9,56(sp) - c004e50c: f86a sd s10,48(sp) - c004e50e: f46e sd s11,40(sp) + c004e6c2: 7175 addi sp,sp,-144 + c004e6c4: fca6 sd s1,120(sp) + c004e6c6: f8ca sd s2,112(sp) + c004e6c8: f4ce sd s3,104(sp) + c004e6ca: e506 sd ra,136(sp) + c004e6cc: 89be mv s3,a5 + c004e6ce: e122 sd s0,128(sp) + c004e6d0: f0d2 sd s4,96(sp) + c004e6d2: ecd6 sd s5,88(sp) + c004e6d4: e8da sd s6,80(sp) + c004e6d6: e4de sd s7,72(sp) + c004e6d8: e0e2 sd s8,64(sp) + c004e6da: fc66 sd s9,56(sp) + c004e6dc: f86a sd s10,48(sp) + c004e6de: f46e sd s11,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2000 if (n == 1) { - c004e510: 4785 li a5,1 + c004e6e0: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1997 { - c004e512: 892e mv s2,a1 - c004e514: 84b2 mv s1,a2 + c004e6e2: 892e mv s2,a1 + c004e6e4: 84b2 mv s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2000 if (n == 1) { - c004e516: 0cf69d63 bne a3,a5,c004e5f0 + c004e6e6: 0cf69d63 bne a3,a5,c004e7c0 mp_sqrtrem2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1971 s1 = mp_sqrtrem1(&r1, a1); - c004e51a: 660c ld a1,8(a2) - c004e51c: 0828 addi a0,sp,24 + c004e6ea: 660c ld a1,8(a2) + c004e6ec: 0828 addi a0,sp,24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1969 a0 = taba[0]; - c004e51e: 00063a83 ld s5,0(a2) + c004e6ee: 00063a83 ld s5,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1971 s1 = mp_sqrtrem1(&r1, a1); - c004e522: 891fe0ef jal ra,c004cdb2 + c004e6f2: 891fe0ef jal ra,c004cf82 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1973 num = ((dlimb_t)r1 << l) | (a0 >> l); - c004e526: 6b62 ld s6,24(sp) - c004e528: 020ad793 srli a5,s5,0x20 + c004e6f6: 6b62 ld s6,24(sp) + c004e6f8: 020ad793 srli a5,s5,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1974 q = num / (2 * s1); - c004e52c: 00151613 slli a2,a0,0x1 + c004e6fc: 00151613 slli a2,a0,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1973 num = ((dlimb_t)r1 << l) | (a0 >> l); - c004e530: 020b5b93 srli s7,s6,0x20 - c004e534: 1b02 slli s6,s6,0x20 - c004e536: 00fb6b33 or s6,s6,a5 + c004e700: 020b5b93 srli s7,s6,0x20 + c004e704: 1b02 slli s6,s6,0x20 + c004e706: 00fb6b33 or s6,s6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1971 s1 = mp_sqrtrem1(&r1, a1); - c004e53a: 8a2a mv s4,a0 + c004e70a: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1974 q = num / (2 * s1); - c004e53c: 4681 li a3,0 - c004e53e: 855a mv a0,s6 - c004e540: 85de mv a1,s7 - c004e542: e432 sd a2,8(sp) - c004e544: a38b20ef jal ra,c000077c <__udivti3> + c004e70c: 4681 li a3,0 + c004e70e: 855a mv a0,s6 + c004e710: 85de mv a1,s7 + c004e712: e432 sd a2,8(sp) + c004e714: 868b20ef jal ra,c000077c <__udivti3> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1975 u = num % (2 * s1); - c004e548: 6622 ld a2,8(sp) + c004e718: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1976 s = (s1 << l) + q; - c004e54a: 1a02 slli s4,s4,0x20 + c004e71a: 1a02 slli s4,s4,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1974 q = num / (2 * s1); - c004e54c: 842a mv s0,a0 + c004e71c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1976 s = (s1 << l) + q; - c004e54e: 9a2a add s4,s4,a0 + c004e71e: 9a2a add s4,s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1975 u = num % (2 * s1); - c004e550: 4681 li a3,0 - c004e552: 855a mv a0,s6 - c004e554: 85de mv a1,s7 - c004e556: d72b20ef jal ra,c0000ac8 <__umodti3> + c004e720: 4681 li a3,0 + c004e722: 855a mv a0,s6 + c004e724: 85de mv a1,s7 + c004e726: ba2b20ef jal ra,c0000ac8 <__umodti3> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1977 r = ((dlimb_t)u << l) | (a0 & (((limb_t)1 << l) - 1)); - c004e55a: 02055793 srli a5,a0,0x20 - c004e55e: 02059813 slli a6,a1,0x20 - c004e562: 1a82 slli s5,s5,0x20 - c004e564: 0107e833 or a6,a5,a6 - c004e568: 1502 slli a0,a0,0x20 - c004e56a: 020ada93 srli s5,s5,0x20 + c004e72a: 02055793 srli a5,a0,0x20 + c004e72e: 02059813 slli a6,a1,0x20 + c004e732: 1a82 slli s5,s5,0x20 + c004e734: 0107e833 or a6,a5,a6 + c004e738: 1502 slli a0,a0,0x20 + c004e73a: 020ada93 srli s5,s5,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1978 if (unlikely((q >> l) != 0)) - c004e56e: 02045793 srli a5,s0,0x20 + c004e73e: 02045793 srli a5,s0,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1977 r = ((dlimb_t)u << l) | (a0 & (((limb_t)1 << l) - 1)); - c004e572: 01556533 or a0,a0,s5 + c004e742: 01556533 or a0,a0,s5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1978 if (unlikely((q >> l) != 0)) - c004e576: c7a5 beqz a5,c004e5de + c004e746: c7a5 beqz a5,c004e7ae /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1979 r -= (dlimb_t)1 << LIMB_BITS; /* special case when q=2^l */ - c004e578: 00024797 auipc a5,0x24 - c004e57c: e4878793 addi a5,a5,-440 # c00723c0 - c004e580: 6398 ld a4,0(a5) - c004e582: 678c ld a1,8(a5) - c004e584: 972a add a4,a4,a0 - c004e586: 00a73533 sltu a0,a4,a0 - c004e58a: 982e add a6,a6,a1 - c004e58c: 982a add a6,a6,a0 + c004e748: 00024797 auipc a5,0x24 + c004e74c: ed878793 addi a5,a5,-296 # c0072620 + c004e750: 6398 ld a4,0(a5) + c004e752: 678c ld a1,8(a5) + c004e754: 972a add a4,a4,a0 + c004e756: 00a73533 sltu a0,a4,a0 + c004e75a: 982e add a6,a6,a1 + c004e75c: 982a add a6,a6,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1982 if ((slimb_t)(r >> LIMB_BITS) < 0) { - c004e58e: 02085263 bgez a6,c004e5b2 + c004e75e: 02085263 bgez a6,c004e782 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1983 s--; - c004e592: 1a7d addi s4,s4,-1 + c004e762: 1a7d addi s4,s4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1984 r += 2 * (dlimb_t)s + 1; - c004e594: 001a1793 slli a5,s4,0x1 - c004e598: 00178693 addi a3,a5,1 - c004e59c: 03fa5613 srli a2,s4,0x3f - c004e5a0: 00f6b7b3 sltu a5,a3,a5 - c004e5a4: 97b2 add a5,a5,a2 - c004e5a6: 96ba add a3,a3,a4 - c004e5a8: 00e6b633 sltu a2,a3,a4 - c004e5ac: 983e add a6,a6,a5 - c004e5ae: 8736 mv a4,a3 - c004e5b0: 9832 add a6,a6,a2 + c004e764: 001a1793 slli a5,s4,0x1 + c004e768: 00178693 addi a3,a5,1 + c004e76c: 03fa5613 srli a2,s4,0x3f + c004e770: 00f6b7b3 sltu a5,a3,a5 + c004e774: 97b2 add a5,a5,a2 + c004e776: 96ba add a3,a3,a4 + c004e778: 00e6b633 sltu a2,a3,a4 + c004e77c: 983e add a6,a6,a5 + c004e77e: 8736 mv a4,a3 + c004e780: 9832 add a6,a6,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1986 tabs[0] = s; - c004e5b2: 01493023 sd s4,0(s2) + c004e782: 01493023 sd s4,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1987 taba[0] = r; - c004e5b6: e098 sd a4,0(s1) + c004e786: e098 sd a4,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1988 return r >> LIMB_BITS; - c004e5b8: 0109b023 sd a6,0(s3) + c004e788: 0109b023 sd a6,0(s3) mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2002 return 0; - c004e5bc: 4b01 li s6,0 + c004e78c: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2061 } - c004e5be: 60aa ld ra,136(sp) - c004e5c0: 640a ld s0,128(sp) - c004e5c2: 74e6 ld s1,120(sp) - c004e5c4: 7946 ld s2,112(sp) - c004e5c6: 79a6 ld s3,104(sp) - c004e5c8: 7a06 ld s4,96(sp) - c004e5ca: 6ae6 ld s5,88(sp) - c004e5cc: 6ba6 ld s7,72(sp) - c004e5ce: 6c06 ld s8,64(sp) - c004e5d0: 7ce2 ld s9,56(sp) - c004e5d2: 7d42 ld s10,48(sp) - c004e5d4: 7da2 ld s11,40(sp) - c004e5d6: 855a mv a0,s6 - c004e5d8: 6b46 ld s6,80(sp) - c004e5da: 6149 addi sp,sp,144 - c004e5dc: 8082 ret + c004e78e: 60aa ld ra,136(sp) + c004e790: 640a ld s0,128(sp) + c004e792: 74e6 ld s1,120(sp) + c004e794: 7946 ld s2,112(sp) + c004e796: 79a6 ld s3,104(sp) + c004e798: 7a06 ld s4,96(sp) + c004e79a: 6ae6 ld s5,88(sp) + c004e79c: 6ba6 ld s7,72(sp) + c004e79e: 6c06 ld s8,64(sp) + c004e7a0: 7ce2 ld s9,56(sp) + c004e7a2: 7d42 ld s10,48(sp) + c004e7a4: 7da2 ld s11,40(sp) + c004e7a6: 855a mv a0,s6 + c004e7a8: 6b46 ld s6,80(sp) + c004e7aa: 6149 addi sp,sp,144 + c004e7ac: 8082 ret mp_sqrtrem2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1981 r -= q * q; - c004e5de: 02840733 mul a4,s0,s0 - c004e5e2: 40e50733 sub a4,a0,a4 - c004e5e6: 00e53533 sltu a0,a0,a4 - c004e5ea: 40a80833 sub a6,a6,a0 - c004e5ee: b745 j c004e58e + c004e7ae: 02840733 mul a4,s0,s0 + c004e7b2: 40e50733 sub a4,a0,a4 + c004e7b6: 00e53533 sltu a0,a0,a4 + c004e7ba: 40a80833 sub a6,a6,a0 + c004e7be: b745 j c004e75e mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2007 l = n / 2; - c004e5f0: 0016dc93 srli s9,a3,0x1 + c004e7c0: 0016dc93 srli s9,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2009 if (mp_sqrtrem_rec(s, tabs + l, taba + 2 * l, h, tmp_buf, &qh)) - c004e5f4: 003c9d13 slli s10,s9,0x3 - c004e5f8: 004c9413 slli s0,s9,0x4 + c004e7c4: 003c9d13 slli s10,s9,0x3 + c004e7c8: 004c9413 slli s0,s9,0x4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2008 h = n - l; - c004e5fc: 41968c33 sub s8,a3,s9 + c004e7cc: 41968c33 sub s8,a3,s9 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2009 if (mp_sqrtrem_rec(s, tabs + l, taba + 2 * l, h, tmp_buf, &qh)) - c004e600: 01a58bb3 add s7,a1,s10 - c004e604: 9432 add s0,s0,a2 - c004e606: 8ab6 mv s5,a3 - c004e608: 083c addi a5,sp,24 - c004e60a: 86e2 mv a3,s8 - c004e60c: 8622 mv a2,s0 - c004e60e: 85de mv a1,s7 - c004e610: 8b2a mv s6,a0 - c004e612: 8a3a mv s4,a4 - c004e614: edfff0ef jal ra,c004e4f2 - c004e618: c119 beqz a0,c004e61e + c004e7d0: 01a58bb3 add s7,a1,s10 + c004e7d4: 9432 add s0,s0,a2 + c004e7d6: 8ab6 mv s5,a3 + c004e7d8: 083c addi a5,sp,24 + c004e7da: 86e2 mv a3,s8 + c004e7dc: 8622 mv a2,s0 + c004e7de: 85de mv a1,s7 + c004e7e0: 8b2a mv s6,a0 + c004e7e2: 8a3a mv s4,a4 + c004e7e4: edfff0ef jal ra,c004e6c2 + c004e7e8: c119 beqz a0,c004e7ee /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2010 return -1; - c004e61a: 5b7d li s6,-1 - c004e61c: b74d j c004e5be + c004e7ea: 5b7d li s6,-1 + c004e7ec: b74d j c004e78e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2018 if (qh) { - c004e61e: 67e2 ld a5,24(sp) - c004e620: cb81 beqz a5,c004e630 + c004e7ee: 67e2 ld a5,24(sp) + c004e7f0: cb81 beqz a5,c004e800 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2019 mp_sub(taba + 2 * l, taba + 2 * l, tabs + l, h, 0); - c004e622: 4701 li a4,0 - c004e624: 86e2 mv a3,s8 - c004e626: 865e mv a2,s7 - c004e628: 85a2 mv a1,s0 - c004e62a: 8522 mv a0,s0 - c004e62c: 895ff0ef jal ra,c004dec0 + c004e7f2: 4701 li a4,0 + c004e7f4: 86e2 mv a3,s8 + c004e7f6: 865e mv a2,s7 + c004e7f8: 85a2 mv a1,s0 + c004e7fa: 8522 mv a0,s0 + c004e7fc: 895ff0ef jal ra,c004e090 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2023 if (mp_divnorm(s, tmp_buf, taba + l, n, tabs + l, h)) - c004e630: 01a48db3 add s11,s1,s10 - c004e634: 855a mv a0,s6 - c004e636: 87e2 mv a5,s8 - c004e638: 875e mv a4,s7 - c004e63a: 86d6 mv a3,s5 - c004e63c: 866e mv a2,s11 - c004e63e: 85d2 mv a1,s4 - c004e640: b0dff0ef jal ra,c004e14c - c004e644: 8b2a mv s6,a0 - c004e646: f971 bnez a0,c004e61a + c004e800: 01a48db3 add s11,s1,s10 + c004e804: 855a mv a0,s6 + c004e806: 87e2 mv a5,s8 + c004e808: 875e mv a4,s7 + c004e80a: 86d6 mv a3,s5 + c004e80c: 866e mv a2,s11 + c004e80e: 85d2 mv a1,s4 + c004e810: b0dff0ef jal ra,c004e31c + c004e814: 8b2a mv s6,a0 + c004e816: f971 bnez a0,c004e7ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2025 qh += tmp_buf[l]; - c004e648: 01aa07b3 add a5,s4,s10 - c004e64c: 6762 ld a4,24(sp) - c004e64e: 639c ld a5,0(a5) - c004e650: 97ba add a5,a5,a4 + c004e818: 01aa07b3 add a5,s4,s10 + c004e81c: 6762 ld a4,24(sp) + c004e81e: 639c ld a5,0(a5) + c004e820: 97ba add a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2026 for(i = 0; i < l; i++) - c004e652: 4701 li a4,0 + c004e822: 4701 li a4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2026 (discriminator 1) - c004e654: 08ed1d63 bne s10,a4,c004e6ee + c004e824: 08ed1d63 bne s10,a4,c004e8be /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2028 ql = mp_shr(tabs, tabs, l, 1, qh & 1); - c004e658: 0017fa13 andi s4,a5,1 + c004e828: 0017fa13 andi s4,a5,1 mp_shr(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1138 for(i = n - 1; i >= 0; i--) { - c004e65c: 875e mv a4,s7 - c004e65e: 0ae91063 bne s2,a4,c004e6fe + c004e82c: 875e mv a4,s7 + c004e82e: 0ae91063 bne s2,a4,c004e8ce mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2029 qh = qh >> 1; /* 0 or 1 */ - c004e662: 8385 srli a5,a5,0x1 + c004e832: 8385 srli a5,a5,0x1 mp_shr(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1143 return l & (((limb_t)1 << shift) - 1); - c004e664: 001a7a13 andi s4,s4,1 + c004e834: 001a7a13 andi s4,s4,1 mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2029 qh = qh >> 1; /* 0 or 1 */ - c004e668: ec3e sd a5,24(sp) + c004e838: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2030 if (ql) - c004e66a: 000a0a63 beqz s4,c004e67e + c004e83a: 000a0a63 beqz s4,c004e84e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2031 rh = mp_add(taba + l, taba + l, tabs + l, h, 0); - c004e66e: 4701 li a4,0 - c004e670: 86e2 mv a3,s8 - c004e672: 865e mv a2,s7 - c004e674: 85ee mv a1,s11 - c004e676: 856e mv a0,s11 - c004e678: feaff0ef jal ra,c004de62 - c004e67c: 8a2a mv s4,a0 + c004e83e: 4701 li a4,0 + c004e840: 86e2 mv a3,s8 + c004e842: 865e mv a2,s7 + c004e844: 85ee mv a1,s11 + c004e846: 856e mv a0,s11 + c004e848: feaff0ef jal ra,c004e032 + c004e84c: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2039 mp_add_ui(tabs + l, qh, h); - c004e67e: 65e2 ld a1,24(sp) - c004e680: 8662 mv a2,s8 - c004e682: 855e mv a0,s7 - c004e684: 81dff0ef jal ra,c004dea0 + c004e84e: 65e2 ld a1,24(sp) + c004e850: 8662 mv a2,s8 + c004e852: 855e mv a0,s7 + c004e854: 81dff0ef jal ra,c004e070 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2046 if (qh) { - c004e688: 65e2 ld a1,24(sp) - c004e68a: e585 bnez a1,c004e6b2 + c004e858: 65e2 ld a1,24(sp) + c004e85a: e585 bnez a1,c004e882 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2049 if (mp_mul(s, taba + n, tabs, l, tabs, l)) - c004e68c: 003a9b93 slli s7,s5,0x3 - c004e690: 9ba6 add s7,s7,s1 + c004e85c: 003a9b93 slli s7,s5,0x3 + c004e860: 9ba6 add s7,s7,s1 mp_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1208 mp_mul_basecase(result, op1, op1_size, op2, op2_size); - c004e692: 8766 mv a4,s9 - c004e694: 86ca mv a3,s2 - c004e696: 8666 mv a2,s9 - c004e698: 85ca mv a1,s2 - c004e69a: 855e mv a0,s7 - c004e69c: 8a5fe0ef jal ra,c004cf40 + c004e862: 8766 mv a4,s9 + c004e864: 86ca mv a3,s2 + c004e866: 8666 mv a2,s9 + c004e868: 85ca mv a1,s2 + c004e86a: 855e mv a0,s7 + c004e86c: 8a5fe0ef jal ra,c004d110 mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2051 c = mp_sub(taba, taba, taba + n, 2 * l, 0); - c004e6a0: 85a6 mv a1,s1 - c004e6a2: 4701 li a4,0 - c004e6a4: ffeaf693 andi a3,s5,-2 - c004e6a8: 865e mv a2,s7 - c004e6aa: 8526 mv a0,s1 - c004e6ac: 815ff0ef jal ra,c004dec0 - c004e6b0: 85aa mv a1,a0 + c004e870: 85a6 mv a1,s1 + c004e872: 4701 li a4,0 + c004e874: ffeaf693 andi a3,s5,-2 + c004e878: 865e mv a2,s7 + c004e87a: 8526 mv a0,s1 + c004e87c: 815ff0ef jal ra,c004e090 + c004e880: 85aa mv a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2053 rh -= mp_sub_ui(taba + 2 * l, c, n - 2 * l); - c004e6b2: 001af613 andi a2,s5,1 - c004e6b6: 8522 mv a0,s0 - c004e6b8: 849ff0ef jal ra,c004df00 - c004e6bc: 40aa0a33 sub s4,s4,a0 + c004e882: 001af613 andi a2,s5,1 + c004e886: 8522 mv a0,s0 + c004e888: 849ff0ef jal ra,c004e0d0 + c004e88c: 40aa0a33 sub s4,s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2054 if ((slimb_t)rh < 0) { - c004e6c0: 020a5463 bgez s4,c004e6e8 + c004e890: 020a5463 bgez s4,c004e8b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2055 mp_sub_ui(tabs, 1, n); - c004e6c4: 8656 mv a2,s5 - c004e6c6: 4585 li a1,1 - c004e6c8: 854a mv a0,s2 - c004e6ca: 837ff0ef jal ra,c004df00 + c004e894: 8656 mv a2,s5 + c004e896: 4585 li a1,1 + c004e898: 854a mv a0,s2 + c004e89a: 837ff0ef jal ra,c004e0d0 mp_add_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 for(i = 0; i < n; i++) { - c004e6ce: 003a9813 slli a6,s5,0x3 - c004e6d2: 4681 li a3,0 + c004e89e: 003a9813 slli a6,s5,0x3 + c004e8a2: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1168 l = 0; - c004e6d4: 4401 li s0,0 + c004e8a4: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 for(i = 0; i < n; i++) { - c004e6d6: 05069063 bne a3,a6,c004e716 + c004e8a6: 05069063 bne a3,a6,c004e8e6 mp_sqrtrem_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2057 rh += mp_add_ui(taba, 1, n); - c004e6da: 8656 mv a2,s5 - c004e6dc: 4585 li a1,1 - c004e6de: 8526 mv a0,s1 - c004e6e0: fc0ff0ef jal ra,c004dea0 - c004e6e4: 942a add s0,s0,a0 - c004e6e6: 9a22 add s4,s4,s0 + c004e8aa: 8656 mv a2,s5 + c004e8ac: 4585 li a1,1 + c004e8ae: 8526 mv a0,s1 + c004e8b0: fc0ff0ef jal ra,c004e070 + c004e8b4: 942a add s0,s0,a0 + c004e8b6: 9a22 add s4,s4,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2059 *prh = rh; - c004e6e8: 0149b023 sd s4,0(s3) + c004e8b8: 0149b023 sd s4,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2060 return 0; - c004e6ec: bdc9 j c004e5be + c004e8bc: bdc9 j c004e78e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2027 (discriminator 3) tabs[i] = tmp_buf[i]; - c004e6ee: 00ea06b3 add a3,s4,a4 - c004e6f2: 6290 ld a2,0(a3) - c004e6f4: 00e906b3 add a3,s2,a4 - c004e6f8: 0721 addi a4,a4,8 - c004e6fa: e290 sd a2,0(a3) + c004e8be: 00ea06b3 add a3,s4,a4 + c004e8c2: 6290 ld a2,0(a3) + c004e8c4: 00e906b3 add a3,s2,a4 + c004e8c8: 0721 addi a4,a4,8 + c004e8ca: e290 sd a2,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2026 (discriminator 3) for(i = 0; i < l; i++) - c004e6fc: bfa1 j c004e654 + c004e8cc: bfa1 j c004e824 mp_shr(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1139 a = tab[i]; - c004e6fe: ff873603 ld a2,-8(a4) + c004e8ce: ff873603 ld a2,-8(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1140 tab_r[i] = (a >> shift) | (l << (LIMB_BITS - shift)); - c004e702: 1a7e slli s4,s4,0x3f - c004e704: 1761 addi a4,a4,-8 - c004e706: 00165693 srli a3,a2,0x1 - c004e70a: 0146ea33 or s4,a3,s4 - c004e70e: 01473023 sd s4,0(a4) + c004e8d2: 1a7e slli s4,s4,0x3f + c004e8d4: 1761 addi a4,a4,-8 + c004e8d6: 00165693 srli a3,a2,0x1 + c004e8da: 0146ea33 or s4,a3,s4 + c004e8de: 01473023 sd s4,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1141 l = a; - c004e712: 8a32 mv s4,a2 - c004e714: b7a9 j c004e65e + c004e8e2: 8a32 mv s4,a2 + c004e8e4: b7a9 j c004e82e mp_add_mul1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1170 t = (dlimb_t)taba[i] * (dlimb_t)b + l + tabr[i]; - c004e716: 00d48533 add a0,s1,a3 - c004e71a: 00d907b3 add a5,s2,a3 - c004e71e: 6398 ld a4,0(a5) - c004e720: 611c ld a5,0(a0) - c004e722: 06a1 addi a3,a3,8 - c004e724: 03f75593 srli a1,a4,0x3f - c004e728: 943e add s0,s0,a5 - c004e72a: 0706 slli a4,a4,0x1 - c004e72c: 00f43633 sltu a2,s0,a5 - c004e730: 008707b3 add a5,a4,s0 - c004e734: 00e7b733 sltu a4,a5,a4 - c004e738: 00c58433 add s0,a1,a2 + c004e8e6: 00d48533 add a0,s1,a3 + c004e8ea: 00d907b3 add a5,s2,a3 + c004e8ee: 6398 ld a4,0(a5) + c004e8f0: 611c ld a5,0(a0) + c004e8f2: 06a1 addi a3,a3,8 + c004e8f4: 03f75593 srli a1,a4,0x3f + c004e8f8: 943e add s0,s0,a5 + c004e8fa: 0706 slli a4,a4,0x1 + c004e8fc: 00f43633 sltu a2,s0,a5 + c004e900: 008707b3 add a5,a4,s0 + c004e904: 00e7b733 sltu a4,a5,a4 + c004e908: 00c58433 add s0,a1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1171 tabr[i] = t; - c004e73c: e11c sd a5,0(a0) + c004e90c: e11c sd a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1172 l = t >> LIMB_BITS; - c004e73e: 943a add s0,s0,a4 + c004e90e: 943a add s0,s0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1169 for(i = 0; i < n; i++) { - c004e740: bf59 j c004e6d6 + c004e910: bf59 j c004e8a6 -00000000c004e742 <__bf_div>: +00000000c004e912 <__bf_div>: __bf_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1673 { - c004e742: 7159 addi sp,sp,-112 - c004e744: f0a2 sd s0,96(sp) - c004e746: e4ce sd s3,72(sp) - c004e748: f45e sd s7,40(sp) - c004e74a: f486 sd ra,104(sp) - c004e74c: eca6 sd s1,88(sp) - c004e74e: e8ca sd s2,80(sp) - c004e750: e0d2 sd s4,64(sp) - c004e752: fc56 sd s5,56(sp) - c004e754: f85a sd s6,48(sp) - c004e756: f062 sd s8,32(sp) - c004e758: ec66 sd s9,24(sp) - c004e75a: e86a sd s10,16(sp) - c004e75c: e46e sd s11,8(sp) + c004e912: 7159 addi sp,sp,-112 + c004e914: f0a2 sd s0,96(sp) + c004e916: e4ce sd s3,72(sp) + c004e918: f45e sd s7,40(sp) + c004e91a: f486 sd ra,104(sp) + c004e91c: eca6 sd s1,88(sp) + c004e91e: e8ca sd s2,80(sp) + c004e920: e0d2 sd s4,64(sp) + c004e922: fc56 sd s5,56(sp) + c004e924: f85a sd s6,48(sp) + c004e926: f062 sd s8,32(sp) + c004e928: ec66 sd s9,24(sp) + c004e92a: e86a sd s10,16(sp) + c004e92c: e46e sd s11,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1678 r_sign = a->sign ^ b->sign; - c004e75e: 461c lw a5,8(a2) - c004e760: 4584 lw s1,8(a1) + c004e92e: 461c lw a5,8(a2) + c004e930: 4584 lw s1,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1673 { - c004e762: 8bba mv s7,a4 + c004e932: 8bba mv s7,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1679 if (a->expn >= BF_EXP_INF || b->expn >= BF_EXP_INF) { - c004e764: 576d li a4,-5 + c004e934: 576d li a4,-5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1678 r_sign = a->sign ^ b->sign; - c004e766: 8cbd xor s1,s1,a5 + c004e936: 8cbd xor s1,s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1679 if (a->expn >= BF_EXP_INF || b->expn >= BF_EXP_INF) { - c004e768: 699c ld a5,16(a1) - c004e76a: 8305 srli a4,a4,0x1 + c004e938: 699c ld a5,16(a1) + c004e93a: 8305 srli a4,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1673 { - c004e76c: 842a mv s0,a0 - c004e76e: 89b2 mv s3,a2 + c004e93c: 842a mv s0,a0 + c004e93e: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1678 r_sign = a->sign ^ b->sign; - c004e770: 2481 sext.w s1,s1 + c004e940: 2481 sext.w s1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1679 if (a->expn >= BF_EXP_INF || b->expn >= BF_EXP_INF) { - c004e772: 00f74e63 blt a4,a5,c004e78e <__bf_div+0x4c> - c004e776: 8b36 mv s6,a3 + c004e942: 00f74e63 blt a4,a5,c004e95e <__bf_div+0x4c> + c004e946: 8b36 mv s6,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1679 (discriminator 1) - c004e778: 6a14 ld a3,16(a2) - c004e77a: 00d74e63 blt a4,a3,c004e796 <__bf_div+0x54> + c004e948: 6a14 ld a3,16(a2) + c004e94a: 00d74e63 blt a4,a3,c004e966 <__bf_div+0x54> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1693 } else if (a->expn == BF_EXP_ZERO) { - c004e77e: 577d li a4,-1 - c004e780: 177e slli a4,a4,0x3f - c004e782: 06e79863 bne a5,a4,c004e7f2 <__bf_div+0xb0> + c004e94e: 577d li a4,-1 + c004e950: 177e slli a4,a4,0x3f + c004e952: 06e79863 bne a5,a4,c004e9c2 <__bf_div+0xb0> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1694 if (b->expn == BF_EXP_ZERO) { - c004e786: 02f68963 beq a3,a5,c004e7b8 <__bf_div+0x76> + c004e956: 02f68963 beq a3,a5,c004e988 <__bf_div+0x76> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1698 bf_set_zero(r, r_sign); - c004e78a: 85a6 mv a1,s1 - c004e78c: a085 j c004e7ec <__bf_div+0xaa> + c004e95a: 85a6 mv a1,s1 + c004e95c: a085 j c004e9bc <__bf_div+0xaa> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1680 if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004e78e: 577d li a4,-1 - c004e790: 8305 srli a4,a4,0x1 - c004e792: 00e78863 beq a5,a4,c004e7a2 <__bf_div+0x60> + c004e95e: 577d li a4,-1 + c004e960: 8305 srli a4,a4,0x1 + c004e962: 00e78863 beq a5,a4,c004e972 <__bf_div+0x60> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1680 (discriminator 1) - c004e796: 0109b683 ld a3,16(s3) - c004e79a: 577d li a4,-1 - c004e79c: 8305 srli a4,a4,0x1 - c004e79e: 00e69763 bne a3,a4,c004e7ac <__bf_div+0x6a> + c004e966: 0109b683 ld a3,16(s3) + c004e96a: 577d li a4,-1 + c004e96c: 8305 srli a4,a4,0x1 + c004e96e: 00e69763 bne a3,a4,c004e97c <__bf_div+0x6a> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1681 bf_set_nan(r); - c004e7a2: 8522 mv a0,s0 - c004e7a4: 8b9fe0ef jal ra,c004d05c + c004e972: 8522 mv a0,s0 + c004e974: 8b9fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1699 return 0; - c004e7a8: 4501 li a0,0 - c004e7aa: a819 j c004e7c0 <__bf_div+0x7e> + c004e978: 4501 li a0,0 + c004e97a: a819 j c004e990 <__bf_div+0x7e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1683 } else if (a->expn == BF_EXP_INF && b->expn == BF_EXP_INF) { - c004e7ac: 5775 li a4,-3 - c004e7ae: 8305 srli a4,a4,0x1 - c004e7b0: 02e79c63 bne a5,a4,c004e7e8 <__bf_div+0xa6> + c004e97c: 5775 li a4,-3 + c004e97e: 8305 srli a4,a4,0x1 + c004e980: 02e79c63 bne a5,a4,c004e9b8 <__bf_div+0xa6> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1683 (discriminator 1) - c004e7b4: 02f69563 bne a3,a5,c004e7de <__bf_div+0x9c> + c004e984: 02f69563 bne a3,a5,c004e9ae <__bf_div+0x9c> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1684 bf_set_nan(r); - c004e7b8: 8522 mv a0,s0 - c004e7ba: 8a3fe0ef jal ra,c004d05c + c004e988: 8522 mv a0,s0 + c004e98a: 8a3fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1685 return BF_ST_INVALID_OP; - c004e7be: 4505 li a0,1 + c004e98e: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1741 } - c004e7c0: 70a6 ld ra,104(sp) - c004e7c2: 7406 ld s0,96(sp) - c004e7c4: 64e6 ld s1,88(sp) - c004e7c6: 6946 ld s2,80(sp) - c004e7c8: 69a6 ld s3,72(sp) - c004e7ca: 6a06 ld s4,64(sp) - c004e7cc: 7ae2 ld s5,56(sp) - c004e7ce: 7b42 ld s6,48(sp) - c004e7d0: 7ba2 ld s7,40(sp) - c004e7d2: 7c02 ld s8,32(sp) - c004e7d4: 6ce2 ld s9,24(sp) - c004e7d6: 6d42 ld s10,16(sp) - c004e7d8: 6da2 ld s11,8(sp) - c004e7da: 6165 addi sp,sp,112 - c004e7dc: 8082 ret + c004e990: 70a6 ld ra,104(sp) + c004e992: 7406 ld s0,96(sp) + c004e994: 64e6 ld s1,88(sp) + c004e996: 6946 ld s2,80(sp) + c004e998: 69a6 ld s3,72(sp) + c004e99a: 6a06 ld s4,64(sp) + c004e99c: 7ae2 ld s5,56(sp) + c004e99e: 7b42 ld s6,48(sp) + c004e9a0: 7ba2 ld s7,40(sp) + c004e9a2: 7c02 ld s8,32(sp) + c004e9a4: 6ce2 ld s9,24(sp) + c004e9a6: 6d42 ld s10,16(sp) + c004e9a8: 6da2 ld s11,8(sp) + c004e9aa: 6165 addi sp,sp,112 + c004e9ac: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1687 bf_set_inf(r, r_sign); - c004e7de: 85a6 mv a1,s1 - c004e7e0: 8522 mv a0,s0 - c004e7e2: 941fe0ef jal ra,c004d122 + c004e9ae: 85a6 mv a1,s1 + c004e9b0: 8522 mv a0,s0 + c004e9b2: 941fe0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1688 return 0; - c004e7e6: b7c9 j c004e7a8 <__bf_div+0x66> + c004e9b6: b7c9 j c004e978 <__bf_div+0x66> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1690 bf_set_zero(r, r_sign); - c004e7e8: 85a6 mv a1,s1 - c004e7ea: 8522 mv a0,s0 + c004e9b8: 85a6 mv a1,s1 + c004e9ba: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1698 bf_set_zero(r, r_sign); - c004e7ec: 913fe0ef jal ra,c004d0fe - c004e7f0: bf65 j c004e7a8 <__bf_div+0x66> + c004e9bc: 913fe0ef jal ra,c004d2ce + c004e9c0: bf65 j c004e978 <__bf_div+0x66> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1701 } else if (b->expn == BF_EXP_ZERO) { - c004e7f2: 00e69763 bne a3,a4,c004e800 <__bf_div+0xbe> + c004e9c2: 00e69763 bne a3,a4,c004e9d0 <__bf_div+0xbe> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1702 bf_set_inf(r, r_sign); - c004e7f6: 85a6 mv a1,s1 - c004e7f8: 92bfe0ef jal ra,c004d122 + c004e9c6: 85a6 mv a1,s1 + c004e9c8: 92bfe0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1703 return BF_ST_DIVIDE_ZERO; - c004e7fc: 4509 li a0,2 - c004e7fe: b7c9 j c004e7c0 <__bf_div+0x7e> + c004e9cc: 4509 li a0,2 + c004e9ce: b7c9 j c004e990 <__bf_div+0x7e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1709 n = bf_max(a->len, precl); - c004e800: 6d9c ld a5,24(a1) + c004e9d0: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1707 precl = (prec + 2 + LIMB_BITS - 1) / LIMB_BITS; - c004e802: 041b0a93 addi s5,s6,65 + c004e9d2: 041b0a93 addi s5,s6,65 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1709 n = bf_max(a->len, precl); - c004e806: 006ada93 srli s5,s5,0x6 + c004e9d6: 006ada93 srli s5,s5,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1674 bf_context_t *s = r->ctx; - c004e80a: 00053c83 ld s9,0(a0) + c004e9da: 00053c83 ld s9,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1708 nb = b->len; - c004e80e: 01863c03 ld s8,24(a2) + c004e9de: 01863c03 ld s8,24(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.h:180 if (a > b) - c004e812: 892e mv s2,a1 + c004e9e2: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1709 n = bf_max(a->len, precl); - c004e814: 00fad363 bge s5,a5,c004e81a <__bf_div+0xd8> - c004e818: 8abe mv s5,a5 + c004e9e4: 00fad363 bge s5,a5,c004e9ea <__bf_div+0xd8> + c004e9e8: 8abe mv s5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1715 na = n + nb; - c004e81a: 015c0db3 add s11,s8,s5 + c004e9ea: 015c0db3 add s11,s8,s5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1716 taba = bf_malloc(s, (na + 1) * sizeof(limb_t)); - c004e81e: 001d8593 addi a1,s11,1 - c004e822: 058e slli a1,a1,0x3 - c004e824: 8566 mv a0,s9 - c004e826: c54fe0ef jal ra,c004cc7a - c004e82a: 8a2a mv s4,a0 + c004e9ee: 001d8593 addi a1,s11,1 + c004e9f2: 058e slli a1,a1,0x3 + c004e9f4: 8566 mv a0,s9 + c004e9f6: c54fe0ef jal ra,c004ce4a + c004e9fa: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1717 if (!taba) - c004e82c: cd0d beqz a0,c004e866 <__bf_div+0x124> + c004e9fc: cd0d beqz a0,c004ea36 <__bf_div+0x124> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1719 d = na - a->len; - c004e82e: 01893d03 ld s10,24(s2) + c004e9fe: 01893d03 ld s10,24(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1720 memset(taba, 0, d * sizeof(limb_t)); - c004e832: 4581 li a1,0 + c004ea02: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1719 d = na - a->len; - c004e834: 41ad8d33 sub s10,s11,s10 + c004ea04: 41ad8d33 sub s10,s11,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1720 memset(taba, 0, d * sizeof(limb_t)); - c004e838: 0d0e slli s10,s10,0x3 - c004e83a: 866a mv a2,s10 - c004e83c: 034080ef jal ra,c0056870 + c004ea08: 0d0e slli s10,s10,0x3 + c004ea0a: 866a mv a2,s10 + c004ea0c: 034080ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1721 memcpy(taba + d, a->tab, a->len * sizeof(limb_t)); - c004e840: 01893603 ld a2,24(s2) - c004e844: 02093583 ld a1,32(s2) - c004e848: 01aa0533 add a0,s4,s10 - c004e84c: 060e slli a2,a2,0x3 - c004e84e: 18c080ef jal ra,c00569da + c004ea10: 01893603 ld a2,24(s2) + c004ea14: 02093583 ld a1,32(s2) + c004ea18: 01aa0533 add a0,s4,s10 + c004ea1c: 060e slli a2,a2,0x3 + c004ea1e: 18c080ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1722 if (bf_resize(r, n + 1)) - c004e852: 001a8593 addi a1,s5,1 - c004e856: 8522 mv a0,s0 - c004e858: fcafe0ef jal ra,c004d022 - c004e85c: c919 beqz a0,c004e872 <__bf_div+0x130> + c004ea22: 001a8593 addi a1,s5,1 + c004ea26: 8522 mv a0,s0 + c004ea28: fcafe0ef jal ra,c004d1f2 + c004ea2c: c919 beqz a0,c004ea42 <__bf_div+0x130> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1726 bf_free(s, taba); - c004e85e: 85d2 mv a1,s4 - c004e860: 8566 mv a0,s9 - c004e862: c20fe0ef jal ra,c004cc82 + c004ea2e: 85d2 mv a1,s4 + c004ea30: 8566 mv a0,s9 + c004ea32: c20fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1739 bf_set_nan(r); - c004e866: 8522 mv a0,s0 - c004e868: ff4fe0ef jal ra,c004d05c + c004ea36: 8522 mv a0,s0 + c004ea38: ff4fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1740 return BF_ST_MEM_ERROR; - c004e86c: 02000513 li a0,32 - c004e870: bf81 j c004e7c0 <__bf_div+0x7e> + c004ea3c: 02000513 li a0,32 + c004ea40: bf81 j c004e990 <__bf_div+0x7e> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1724 if (mp_divnorm(s, r->tab, taba, na, b->tab, nb)) { - c004e872: 0209b703 ld a4,32(s3) - c004e876: 700c ld a1,32(s0) - c004e878: 87e2 mv a5,s8 - c004e87a: 86ee mv a3,s11 - c004e87c: 8652 mv a2,s4 - c004e87e: 8566 mv a0,s9 - c004e880: 8cdff0ef jal ra,c004e14c - c004e884: fd69 bnez a0,c004e85e <__bf_div+0x11c> + c004ea42: 0209b703 ld a4,32(s3) + c004ea46: 700c ld a1,32(s0) + c004ea48: 87e2 mv a5,s8 + c004ea4a: 86ee mv a3,s11 + c004ea4c: 8652 mv a2,s4 + c004ea4e: 8566 mv a0,s9 + c004ea50: 8cdff0ef jal ra,c004e31c + c004ea54: fd69 bnez a0,c004ea2e <__bf_div+0x11c> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1730 if (mp_scan_nz(taba, nb)) - c004e886: 85e2 mv a1,s8 - c004e888: 8552 mv a0,s4 - c004e88a: cbefe0ef jal ra,c004cd48 - c004e88e: c511 beqz a0,c004e89a <__bf_div+0x158> + c004ea56: 85e2 mv a1,s8 + c004ea58: 8552 mv a0,s4 + c004ea5a: cbefe0ef jal ra,c004cf18 + c004ea5e: c511 beqz a0,c004ea6a <__bf_div+0x158> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1731 r->tab[0] |= 1; - c004e890: 7018 ld a4,32(s0) - c004e892: 631c ld a5,0(a4) - c004e894: 0017e793 ori a5,a5,1 - c004e898: e31c sd a5,0(a4) + c004ea60: 7018 ld a4,32(s0) + c004ea62: 631c ld a5,0(a4) + c004ea64: 0017e793 ori a5,a5,1 + c004ea68: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1732 bf_free(r->ctx, taba); - c004e89a: 6008 ld a0,0(s0) - c004e89c: 85d2 mv a1,s4 - c004e89e: be4fe0ef jal ra,c004cc82 + c004ea6a: 6008 ld a0,0(s0) + c004ea6c: 85d2 mv a1,s4 + c004ea6e: be4fe0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1733 r->expn = a->expn - b->expn + LIMB_BITS; - c004e8a2: 01093783 ld a5,16(s2) - c004e8a6: 0109b703 ld a4,16(s3) + c004ea72: 01093783 ld a5,16(s2) + c004ea76: 0109b703 ld a4,16(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1735 ret = bf_normalize_and_round(r, prec, flags); - c004e8aa: 8522 mv a0,s0 + c004ea7a: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1734 r->sign = r_sign; - c004e8ac: c404 sw s1,8(s0) + c004ea7c: c404 sw s1,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1733 r->expn = a->expn - b->expn + LIMB_BITS; - c004e8ae: 8f99 sub a5,a5,a4 - c004e8b0: 04078793 addi a5,a5,64 - c004e8b4: e81c sd a5,16(s0) + c004ea7e: 8f99 sub a5,a5,a4 + c004ea80: 04078793 addi a5,a5,64 + c004ea84: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1741 } - c004e8b6: 7406 ld s0,96(sp) - c004e8b8: 70a6 ld ra,104(sp) - c004e8ba: 64e6 ld s1,88(sp) - c004e8bc: 6946 ld s2,80(sp) - c004e8be: 69a6 ld s3,72(sp) - c004e8c0: 6a06 ld s4,64(sp) - c004e8c2: 7ae2 ld s5,56(sp) - c004e8c4: 7c02 ld s8,32(sp) - c004e8c6: 6ce2 ld s9,24(sp) - c004e8c8: 6d42 ld s10,16(sp) - c004e8ca: 6da2 ld s11,8(sp) + c004ea86: 7406 ld s0,96(sp) + c004ea88: 70a6 ld ra,104(sp) + c004ea8a: 64e6 ld s1,88(sp) + c004ea8c: 6946 ld s2,80(sp) + c004ea8e: 69a6 ld s3,72(sp) + c004ea90: 6a06 ld s4,64(sp) + c004ea92: 7ae2 ld s5,56(sp) + c004ea94: 7c02 ld s8,32(sp) + c004ea96: 6ce2 ld s9,24(sp) + c004ea98: 6d42 ld s10,16(sp) + c004ea9a: 6da2 ld s11,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1735 ret = bf_normalize_and_round(r, prec, flags); - c004e8cc: 865e mv a2,s7 - c004e8ce: 85da mv a1,s6 + c004ea9c: 865e mv a2,s7 + c004ea9e: 85da mv a1,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1741 } - c004e8d0: 7ba2 ld s7,40(sp) - c004e8d2: 7b42 ld s6,48(sp) - c004e8d4: 6165 addi sp,sp,112 + c004eaa0: 7ba2 ld s7,40(sp) + c004eaa2: 7b42 ld s6,48(sp) + c004eaa4: 6165 addi sp,sp,112 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1735 ret = bf_normalize_and_round(r, prec, flags); - c004e8d6: cbdfe06f j c004d592 + c004eaa6: cbdfe06f j c004d762 -00000000c004e8da : +00000000c004eaaa : bf_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1543 { - c004e8da: 7171 addi sp,sp,-176 - c004e8dc: f122 sd s0,160(sp) - c004e8de: ed26 sd s1,152(sp) - c004e8e0: e94a sd s2,144(sp) - c004e8e2: f4de sd s7,104(sp) - c004e8e4: f0e2 sd s8,96(sp) - c004e8e6: f506 sd ra,168(sp) - c004e8e8: e54e sd s3,136(sp) - c004e8ea: e152 sd s4,128(sp) - c004e8ec: fcd6 sd s5,120(sp) - c004e8ee: f8da sd s6,112(sp) - c004e8f0: ece6 sd s9,88(sp) - c004e8f2: e8ea sd s10,80(sp) - c004e8f4: e4ee sd s11,72(sp) - c004e8f6: 8c3a mv s8,a4 + c004eaaa: 7171 addi sp,sp,-176 + c004eaac: f122 sd s0,160(sp) + c004eaae: ed26 sd s1,152(sp) + c004eab0: e94a sd s2,144(sp) + c004eab2: f4de sd s7,104(sp) + c004eab4: f0e2 sd s8,96(sp) + c004eab6: f506 sd ra,168(sp) + c004eab8: e54e sd s3,136(sp) + c004eaba: e152 sd s4,128(sp) + c004eabc: fcd6 sd s5,120(sp) + c004eabe: f8da sd s6,112(sp) + c004eac0: ece6 sd s9,88(sp) + c004eac2: e8ea sd s10,80(sp) + c004eac4: e4ee sd s11,72(sp) + c004eac6: 8c3a mv s8,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1546 if (a->len < b->len) { - c004e8f8: 6e1c ld a5,24(a2) - c004e8fa: 6d98 ld a4,24(a1) + c004eac8: 6e1c ld a5,24(a2) + c004eaca: 6d98 ld a4,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1543 { - c004e8fc: 842a mv s0,a0 - c004e8fe: 892e mv s2,a1 - c004e900: 84b2 mv s1,a2 - c004e902: 8bb6 mv s7,a3 + c004eacc: 842a mv s0,a0 + c004eace: 892e mv s2,a1 + c004ead0: 84b2 mv s1,a2 + c004ead2: 8bb6 mv s7,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1546 if (a->len < b->len) { - c004e904: 00f77463 bgeu a4,a5,c004e90c - c004e908: 8932 mv s2,a2 - c004e90a: 84ae mv s1,a1 + c004ead4: 00f77463 bgeu a4,a5,c004eadc + c004ead8: 8932 mv s2,a2 + c004eada: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1551 r_sign = a->sign ^ b->sign; - c004e90c: 00892c83 lw s9,8(s2) - c004e910: 449c lw a5,8(s1) + c004eadc: 00892c83 lw s9,8(s2) + c004eae0: 449c lw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1553 if (b->len == 0) { - c004e912: 0184b983 ld s3,24(s1) + c004eae2: 0184b983 ld s3,24(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1551 r_sign = a->sign ^ b->sign; - c004e916: 00fcccb3 xor s9,s9,a5 - c004e91a: 2c81 sext.w s9,s9 + c004eae6: 00fcccb3 xor s9,s9,a5 + c004eaea: 2c81 sext.w s9,s9 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1553 if (b->len == 0) { - c004e91c: 06099b63 bnez s3,c004e992 + c004eaec: 06099b63 bnez s3,c004eb62 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1554 if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004e920: 01093683 ld a3,16(s2) - c004e924: 57fd li a5,-1 - c004e926: 0017d713 srli a4,a5,0x1 - c004e92a: 00e68563 beq a3,a4,c004e934 + c004eaf0: 01093683 ld a3,16(s2) + c004eaf4: 57fd li a5,-1 + c004eaf6: 0017d713 srli a4,a5,0x1 + c004eafa: 00e68563 beq a3,a4,c004eb04 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1554 (discriminator 1) - c004e92e: 6890 ld a2,16(s1) - c004e930: 00e61763 bne a2,a4,c004e93e + c004eafe: 6890 ld a2,16(s1) + c004eb00: 00e61763 bne a2,a4,c004eb0e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1555 bf_set_nan(r); - c004e934: 8522 mv a0,s0 - c004e936: f26fe0ef jal ra,c004d05c + c004eb04: 8522 mv a0,s0 + c004eb06: f26fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1564 ret = 0; - c004e93a: 4481 li s1,0 - c004e93c: a01d j c004e962 + c004eb0a: 4481 li s1,0 + c004eb0c: a01d j c004eb32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1557 } else if (a->expn == BF_EXP_INF || b->expn == BF_EXP_INF) { - c004e93e: 5775 li a4,-3 - c004e940: 8305 srli a4,a4,0x1 - c004e942: 00e68963 beq a3,a4,c004e954 + c004eb0e: 5775 li a4,-3 + c004eb10: 8305 srli a4,a4,0x1 + c004eb12: 00e68963 beq a3,a4,c004eb24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1557 (discriminator 1) - c004e946: 02e60e63 beq a2,a4,c004e982 + c004eb16: 02e60e63 beq a2,a4,c004eb52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1567 bf_set_zero(r, r_sign); - c004e94a: 85e6 mv a1,s9 - c004e94c: 8522 mv a0,s0 - c004e94e: fb0fe0ef jal ra,c004d0fe + c004eb1a: 85e6 mv a1,s9 + c004eb1c: 8522 mv a0,s0 + c004eb1e: fb0fe0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1568 ret = 0; - c004e952: b7e5 j c004e93a + c004eb22: b7e5 j c004eb0a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1558 (discriminator 1) if ((a->expn == BF_EXP_INF && b->expn == BF_EXP_ZERO) || - c004e954: 17fe slli a5,a5,0x3f - c004e956: 02f61963 bne a2,a5,c004e988 + c004eb24: 17fe slli a5,a5,0x3f + c004eb26: 02f61963 bne a2,a5,c004eb58 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1560 bf_set_nan(r); - c004e95a: 8522 mv a0,s0 - c004e95c: f00fe0ef jal ra,c004d05c + c004eb2a: 8522 mv a0,s0 + c004eb2c: f00fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1561 ret = BF_ST_INVALID_OP; - c004e960: 4485 li s1,1 + c004eb30: 4485 li s1,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1622 } - c004e962: 70aa ld ra,168(sp) - c004e964: 740a ld s0,160(sp) - c004e966: 694a ld s2,144(sp) - c004e968: 69aa ld s3,136(sp) - c004e96a: 6a0a ld s4,128(sp) - c004e96c: 7ae6 ld s5,120(sp) - c004e96e: 7b46 ld s6,112(sp) - c004e970: 7ba6 ld s7,104(sp) - c004e972: 7c06 ld s8,96(sp) - c004e974: 6ce6 ld s9,88(sp) - c004e976: 6d46 ld s10,80(sp) - c004e978: 6da6 ld s11,72(sp) - c004e97a: 8526 mv a0,s1 - c004e97c: 64ea ld s1,152(sp) - c004e97e: 614d addi sp,sp,176 - c004e980: 8082 ret + c004eb32: 70aa ld ra,168(sp) + c004eb34: 740a ld s0,160(sp) + c004eb36: 694a ld s2,144(sp) + c004eb38: 69aa ld s3,136(sp) + c004eb3a: 6a0a ld s4,128(sp) + c004eb3c: 7ae6 ld s5,120(sp) + c004eb3e: 7b46 ld s6,112(sp) + c004eb40: 7ba6 ld s7,104(sp) + c004eb42: 7c06 ld s8,96(sp) + c004eb44: 6ce6 ld s9,88(sp) + c004eb46: 6d46 ld s10,80(sp) + c004eb48: 6da6 ld s11,72(sp) + c004eb4a: 8526 mv a0,s1 + c004eb4c: 64ea ld s1,152(sp) + c004eb4e: 614d addi sp,sp,176 + c004eb50: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1558 (discriminator 3) if ((a->expn == BF_EXP_INF && b->expn == BF_EXP_ZERO) || - c004e982: 17fe slli a5,a5,0x3f - c004e984: fcf68be3 beq a3,a5,c004e95a + c004eb52: 17fe slli a5,a5,0x3f + c004eb54: fcf68be3 beq a3,a5,c004eb2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1563 bf_set_inf(r, r_sign); - c004e988: 85e6 mv a1,s9 - c004e98a: 8522 mv a0,s0 - c004e98c: f96fe0ef jal ra,c004d122 - c004e990: b76d j c004e93a + c004eb58: 85e6 mv a1,s9 + c004eb5a: 8522 mv a0,s0 + c004eb5c: f96fe0ef jal ra,c004d2f2 + c004eb60: b76d j c004eb0a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1578 if ((flags & BF_RND_MASK) == BF_RNDF) { - c004e992: 007c7793 andi a5,s8,7 - c004e996: 4719 li a4,6 + c004eb62: 007c7793 andi a5,s8,7 + c004eb66: 4719 li a4,6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1575 a_len = a->len; - c004e998: 01893a03 ld s4,24(s2) + c004eb68: 01893a03 ld s4,24(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1578 if ((flags & BF_RND_MASK) == BF_RNDF) { - c004e99c: 06e79863 bne a5,a4,c004ea0c + c004eb6c: 06e79863 bne a5,a4,c004ebdc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1580 precl = (prec + 2 + LIMB_BITS - 1) / LIMB_BITS; - c004e9a0: 041b8793 addi a5,s7,65 - c004e9a4: 8399 srli a5,a5,0x6 + c004eb70: 041b8793 addi a5,s7,65 + c004eb74: 8399 srli a5,a5,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 if (a < b) - c004e9a6: 8652 mv a2,s4 - c004e9a8: 0147d363 bge a5,s4,c004e9ae - c004e9ac: 863e mv a2,a5 + c004eb76: 8652 mv a2,s4 + c004eb78: 0147d363 bge a5,s4,c004eb7e + c004eb7c: 863e mv a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1582 b_len = bf_min(b_len, precl); - c004e9ae: 874e mv a4,s3 - c004e9b0: 0137d363 bge a5,s3,c004e9b6 - c004e9b4: 873e mv a4,a5 + c004eb7e: 874e mv a4,s3 + c004eb80: 0137d363 bge a5,s3,c004eb86 + c004eb84: 873e mv a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1584 a_tab = a->tab + a->len - a_len; - c004e9b6: 02093d03 ld s10,32(s2) + c004eb86: 02093d03 ld s10,32(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1585 b_tab = b->tab + b->len - b_len; - c004e9ba: 0204bd83 ld s11,32(s1) + c004eb8a: 0204bd83 ld s11,32(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1599 if (r == a || r == b) { - c004e9be: 01810b13 addi s6,sp,24 - c004e9c2: 00890563 beq s2,s0,c004e9cc + c004eb8e: 01810b13 addi s6,sp,24 + c004eb92: 00890563 beq s2,s0,c004eb9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1571 (discriminator 1) bf_t tmp, *r1 = NULL; - c004e9c6: 4a81 li s5,0 + c004eb96: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1599 (discriminator 1) if (r == a || r == b) { - c004e9c8: 00849c63 bne s1,s0,c004e9e0 + c004eb98: 00849c63 bne s1,s0,c004ebb0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004e9cc: 601c ld a5,0(s0) + c004eb9c: 601c ld a5,0(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004e9ce: 8aa2 mv s5,s0 + c004eb9e: 8aa2 mv s5,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004e9d0: d002 sw zero,32(sp) + c004eba0: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004e9d2: ec3e sd a5,24(sp) + c004eba2: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004e9d4: 57fd li a5,-1 - c004e9d6: 17fe slli a5,a5,0x3f - c004e9d8: f43e sd a5,40(sp) + c004eba4: 57fd li a5,-1 + c004eba6: 17fe slli a5,a5,0x3f + c004eba8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004e9da: f802 sd zero,48(sp) + c004ebaa: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004e9dc: fc02 sd zero,56(sp) + c004ebac: fc02 sd zero,56(sp) bf_mul(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1602 r = &tmp; - c004e9de: 845a mv s0,s6 + c004ebae: 845a mv s0,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1604 if (bf_resize(r, a_len + b_len)) { - c004e9e0: 00e605b3 add a1,a2,a4 - c004e9e4: 8522 mv a0,s0 - c004e9e6: e43a sd a4,8(sp) - c004e9e8: e032 sd a2,0(sp) - c004e9ea: e38fe0ef jal ra,c004d022 - c004e9ee: 6602 ld a2,0(sp) - c004e9f0: 6722 ld a4,8(sp) - c004e9f2: c105 beqz a0,c004ea12 + c004ebb0: 00e605b3 add a1,a2,a4 + c004ebb4: 8522 mv a0,s0 + c004ebb6: e43a sd a4,8(sp) + c004ebb8: e032 sd a2,0(sp) + c004ebba: e38fe0ef jal ra,c004d1f2 + c004ebbe: 6602 ld a2,0(sp) + c004ebc0: 6722 ld a4,8(sp) + c004ebc2: c105 beqz a0,c004ebe2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1608 bf_set_nan(r); - c004e9f4: 8522 mv a0,s0 - c004e9f6: e66fe0ef jal ra,c004d05c + c004ebc4: 8522 mv a0,s0 + c004ebc6: e66fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1609 ret = BF_ST_MEM_ERROR; - c004e9fa: 02000493 li s1,32 + c004ebca: 02000493 li s1,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1618 if (r == &tmp) - c004e9fe: f76412e3 bne s0,s6,c004e962 + c004ebce: f76412e3 bne s0,s6,c004eb32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1619 bf_move(r1, &tmp); - c004ea02: 85a2 mv a1,s0 - c004ea04: 8556 mv a0,s5 - c004ea06: b07fe0ef jal ra,c004d50c - c004ea0a: bfa1 j c004e962 - c004ea0c: 874e mv a4,s3 + c004ebd2: 85a2 mv a1,s0 + c004ebd4: 8556 mv a0,s5 + c004ebd6: b07fe0ef jal ra,c004d6dc + c004ebda: bfa1 j c004eb32 + c004ebdc: 874e mv a4,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1575 a_len = a->len; - c004ea0e: 8652 mv a2,s4 - c004ea10: b75d j c004e9b6 + c004ebde: 8652 mv a2,s4 + c004ebe0: b75d j c004eb86 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1585 b_tab = b->tab + b->len - b_len; - c004ea12: 40e989b3 sub s3,s3,a4 + c004ebe2: 40e989b3 sub s3,s3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1584 a_tab = a->tab + a->len - a_len; - c004ea16: 40ca05b3 sub a1,s4,a2 + c004ebe6: 40ca05b3 sub a1,s4,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1612 mp_mul_basecase(r->tab, a_tab, a_len, b_tab, b_len); - c004ea1a: 7008 ld a0,32(s0) + c004ebea: 7008 ld a0,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1585 b_tab = b->tab + b->len - b_len; - c004ea1c: 098e slli s3,s3,0x3 + c004ebec: 098e slli s3,s3,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1584 a_tab = a->tab + a->len - a_len; - c004ea1e: 058e slli a1,a1,0x3 + c004ebee: 058e slli a1,a1,0x3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1612 mp_mul_basecase(r->tab, a_tab, a_len, b_tab, b_len); - c004ea20: 013d86b3 add a3,s11,s3 - c004ea24: 95ea add a1,a1,s10 - c004ea26: d1afe0ef jal ra,c004cf40 + c004ebf0: 013d86b3 add a3,s11,s3 + c004ebf4: 95ea add a1,a1,s10 + c004ebf6: d1afe0ef jal ra,c004d110 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1614 r->sign = r_sign; - c004ea2a: 01942423 sw s9,8(s0) + c004ebfa: 01942423 sw s9,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1615 r->expn = a->expn + b->expn; - c004ea2e: 6898 ld a4,16(s1) - c004ea30: 01093783 ld a5,16(s2) + c004ebfe: 6898 ld a4,16(s1) + c004ec00: 01093783 ld a5,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1616 ret = bf_normalize_and_round(r, prec, flags); - c004ea34: 8662 mv a2,s8 - c004ea36: 85de mv a1,s7 + c004ec04: 8662 mv a2,s8 + c004ec06: 85de mv a1,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1615 r->expn = a->expn + b->expn; - c004ea38: 97ba add a5,a5,a4 - c004ea3a: e81c sd a5,16(s0) + c004ec08: 97ba add a5,a5,a4 + c004ec0a: e81c sd a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1616 ret = bf_normalize_and_round(r, prec, flags); - c004ea3c: 8522 mv a0,s0 - c004ea3e: b55fe0ef jal ra,c004d592 - c004ea42: 84aa mv s1,a0 - c004ea44: bf6d j c004e9fe + c004ec0c: 8522 mv a0,s0 + c004ec0e: b55fe0ef jal ra,c004d762 + c004ec12: 84aa mv s1,a0 + c004ec14: bf6d j c004ebce -00000000c004ea46 : +00000000c004ec16 : bf_pow_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2282 { - c004ea46: 715d addi sp,sp,-80 - c004ea48: e486 sd ra,72(sp) - c004ea4a: e0a2 sd s0,64(sp) - c004ea4c: fc26 sd s1,56(sp) - c004ea4e: f84a sd s2,48(sp) - c004ea50: f44e sd s3,40(sp) - c004ea52: f052 sd s4,32(sp) - c004ea54: ec56 sd s5,24(sp) - c004ea56: e85a sd s6,16(sp) - c004ea58: e45e sd s7,8(sp) + c004ec16: 715d addi sp,sp,-80 + c004ec18: e486 sd ra,72(sp) + c004ec1a: e0a2 sd s0,64(sp) + c004ec1c: fc26 sd s1,56(sp) + c004ec1e: f84a sd s2,48(sp) + c004ec20: f44e sd s3,40(sp) + c004ec22: f052 sd s4,32(sp) + c004ec24: ec56 sd s5,24(sp) + c004ec26: e85a sd s6,16(sp) + c004ec28: e45e sd s7,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2285 assert(r != a); - c004ea5a: 00b51c63 bne a0,a1,c004ea72 + c004ec2a: 00b51c63 bne a0,a1,c004ec42 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2285 (discriminator 1) - c004ea5e: 6585 lui a1,0x1 - c004ea60: 4601 li a2,0 - c004ea62: 8ed58593 addi a1,a1,-1811 # 8ed <__clzdi2-0xbffff713> - c004ea66: 00024517 auipc a0,0x24 - c004ea6a: 8b250513 addi a0,a0,-1870 # c0072318 - c004ea6e: 7ab040ef jal ra,c0053a18 <__assert> - c004ea72: 89b2 mv s3,a2 + c004ec2e: 6585 lui a1,0x1 + c004ec30: 4601 li a2,0 + c004ec32: 8ed58593 addi a1,a1,-1811 # 8ed <__clzdi2-0xbffff713> + c004ec36: 00024517 auipc a0,0x24 + c004ec3a: 94250513 addi a0,a0,-1726 # c0072578 + c004ec3e: 7ab040ef jal ra,c0053be8 <__assert> + c004ec42: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2286 (discriminator 2) if (b == 0) - c004ea74: ee11 bnez a2,c004ea90 + c004ec44: ee11 bnez a2,c004ec60 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2296 } - c004ea76: 6406 ld s0,64(sp) - c004ea78: 60a6 ld ra,72(sp) - c004ea7a: 74e2 ld s1,56(sp) - c004ea7c: 7942 ld s2,48(sp) - c004ea7e: 79a2 ld s3,40(sp) - c004ea80: 7a02 ld s4,32(sp) - c004ea82: 6ae2 ld s5,24(sp) - c004ea84: 6b42 ld s6,16(sp) - c004ea86: 6ba2 ld s7,8(sp) + c004ec46: 6406 ld s0,64(sp) + c004ec48: 60a6 ld ra,72(sp) + c004ec4a: 74e2 ld s1,56(sp) + c004ec4c: 7942 ld s2,48(sp) + c004ec4e: 79a2 ld s3,40(sp) + c004ec50: 7a02 ld s4,32(sp) + c004ec52: 6ae2 ld s5,24(sp) + c004ec54: 6b42 ld s6,16(sp) + c004ec56: 6ba2 ld s7,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2287 return bf_set_ui(r, 1); - c004ea88: 4585 li a1,1 + c004ec58: 4585 li a1,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2296 } - c004ea8a: 6161 addi sp,sp,80 + c004ec5a: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2287 return bf_set_ui(r, 1); - c004ea8c: df0fe06f j c004d07c - c004ea90: 8a2e mv s4,a1 - c004ea92: 8ab6 mv s5,a3 - c004ea94: 8b3a mv s6,a4 - c004ea96: 84aa mv s1,a0 + c004ec5c: df0fe06f j c004d24c + c004ec60: 8a2e mv s4,a1 + c004ec62: 8ab6 mv s5,a3 + c004ec64: 8b3a mv s6,a4 + c004ec66: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2288 ret = bf_set(r, a); - c004ea98: a29fe0ef jal ra,c004d4c0 - c004ea9c: 842a mv s0,a0 + c004ec68: a29fe0ef jal ra,c004d690 + c004ec6c: 842a mv s0,a0 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 - c004ea9e: 854e mv a0,s3 - c004eaa0: d60b10ef jal ra,c0000000 <__clzdi2> + c004ec6e: 854e mv a0,s3 + c004ec70: b90b10ef jal ra,c0000000 <__clzdi2> bf_pow_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2290 for(i = n_bits - 2; i >= 0; i--) { - c004eaa4: 03e00913 li s2,62 - c004eaa8: 40a9093b subw s2,s2,a0 - c004eaac: 5bfd li s7,-1 - c004eaae: 01791e63 bne s2,s7,c004eaca + c004ec74: 03e00913 li s2,62 + c004ec78: 40a9093b subw s2,s2,a0 + c004ec7c: 5bfd li s7,-1 + c004ec7e: 01791e63 bne s2,s7,c004ec9a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2296 } - c004eab2: 60a6 ld ra,72(sp) - c004eab4: 8522 mv a0,s0 - c004eab6: 6406 ld s0,64(sp) - c004eab8: 74e2 ld s1,56(sp) - c004eaba: 7942 ld s2,48(sp) - c004eabc: 79a2 ld s3,40(sp) - c004eabe: 7a02 ld s4,32(sp) - c004eac0: 6ae2 ld s5,24(sp) - c004eac2: 6b42 ld s6,16(sp) - c004eac4: 6ba2 ld s7,8(sp) - c004eac6: 6161 addi sp,sp,80 - c004eac8: 8082 ret + c004ec82: 60a6 ld ra,72(sp) + c004ec84: 8522 mv a0,s0 + c004ec86: 6406 ld s0,64(sp) + c004ec88: 74e2 ld s1,56(sp) + c004ec8a: 7942 ld s2,48(sp) + c004ec8c: 79a2 ld s3,40(sp) + c004ec8e: 7a02 ld s4,32(sp) + c004ec90: 6ae2 ld s5,24(sp) + c004ec92: 6b42 ld s6,16(sp) + c004ec94: 6ba2 ld s7,8(sp) + c004ec96: 6161 addi sp,sp,80 + c004ec98: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2291 ret |= bf_mul(r, r, r, prec, flags); - c004eaca: 875a mv a4,s6 - c004eacc: 86d6 mv a3,s5 - c004eace: 8626 mv a2,s1 - c004ead0: 85a6 mv a1,s1 - c004ead2: 8526 mv a0,s1 - c004ead4: e07ff0ef jal ra,c004e8da + c004ec9a: 875a mv a4,s6 + c004ec9c: 86d6 mv a3,s5 + c004ec9e: 8626 mv a2,s1 + c004eca0: 85a6 mv a1,s1 + c004eca2: 8526 mv a0,s1 + c004eca4: e07ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2292 if ((b >> i) & 1) - c004ead8: 0129d7b3 srl a5,s3,s2 + c004eca8: 0129d7b3 srl a5,s3,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2291 ret |= bf_mul(r, r, r, prec, flags); - c004eadc: 8c49 or s0,s0,a0 + c004ecac: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2292 if ((b >> i) & 1) - c004eade: 8b85 andi a5,a5,1 + c004ecae: 8b85 andi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2291 ret |= bf_mul(r, r, r, prec, flags); - c004eae0: 2401 sext.w s0,s0 + c004ecb0: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2292 if ((b >> i) & 1) - c004eae2: cb91 beqz a5,c004eaf6 + c004ecb2: cb91 beqz a5,c004ecc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2293 ret |= bf_mul(r, r, a, prec, flags); - c004eae4: 875a mv a4,s6 - c004eae6: 86d6 mv a3,s5 - c004eae8: 8652 mv a2,s4 - c004eaea: 85a6 mv a1,s1 - c004eaec: 8526 mv a0,s1 - c004eaee: dedff0ef jal ra,c004e8da - c004eaf2: 8c49 or s0,s0,a0 - c004eaf4: 2401 sext.w s0,s0 + c004ecb4: 875a mv a4,s6 + c004ecb6: 86d6 mv a3,s5 + c004ecb8: 8652 mv a2,s4 + c004ecba: 85a6 mv a1,s1 + c004ecbc: 8526 mv a0,s1 + c004ecbe: dedff0ef jal ra,c004eaaa + c004ecc2: 8c49 or s0,s0,a0 + c004ecc4: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2290 for(i = n_bits - 2; i >= 0; i--) { - c004eaf6: 397d addiw s2,s2,-1 - c004eaf8: bf5d j c004eaae + c004ecc6: 397d addiw s2,s2,-1 + c004ecc8: bf5d j c004ec7e -00000000c004eafa : +00000000c004ecca : bf_pow_ui_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2300 { - c004eafa: 7159 addi sp,sp,-112 - c004eafc: f486 sd ra,104(sp) - c004eafe: f0a2 sd s0,96(sp) - c004eb00: eca6 sd s1,88(sp) + c004ecca: 7159 addi sp,sp,-112 + c004eccc: f486 sd ra,104(sp) + c004ecce: f0a2 sd s0,96(sp) + c004ecd0: eca6 sd s1,88(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004eb02: 611c ld a5,0(a0) + c004ecd2: 611c ld a5,0(a0) bf_pow_ui_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2300 { - c004eb04: 84aa mv s1,a0 + c004ecd4: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2313 ret = bf_set_ui(&a, a1); - c004eb06: 1028 addi a0,sp,40 + c004ecd6: 1028 addi a0,sp,40 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004eb08: f43e sd a5,40(sp) + c004ecd8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004eb0a: 57fd li a5,-1 - c004eb0c: 17fe slli a5,a5,0x3f - c004eb0e: fc3e sd a5,56(sp) + c004ecda: 57fd li a5,-1 + c004ecdc: 17fe slli a5,a5,0x3f + c004ecde: fc3e sd a5,56(sp) bf_pow_ui_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2300 { - c004eb10: ec32 sd a2,24(sp) - c004eb12: e836 sd a3,16(sp) - c004eb14: e43a sd a4,8(sp) + c004ece0: ec32 sd a2,24(sp) + c004ece2: e836 sd a3,16(sp) + c004ece4: e43a sd a4,8(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004eb16: d802 sw zero,48(sp) + c004ece6: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004eb18: e082 sd zero,64(sp) + c004ece8: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004eb1a: e482 sd zero,72(sp) + c004ecea: e482 sd zero,72(sp) bf_pow_ui_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2313 ret = bf_set_ui(&a, a1); - c004eb1c: d60fe0ef jal ra,c004d07c + c004ecec: d60fe0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2314 ret |= bf_pow_ui(r, &a, b, prec, flags); - c004eb20: 6722 ld a4,8(sp) - c004eb22: 66c2 ld a3,16(sp) - c004eb24: 6662 ld a2,24(sp) - c004eb26: 102c addi a1,sp,40 + c004ecf0: 6722 ld a4,8(sp) + c004ecf2: 66c2 ld a3,16(sp) + c004ecf4: 6662 ld a2,24(sp) + c004ecf6: 102c addi a1,sp,40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2313 ret = bf_set_ui(&a, a1); - c004eb28: 842a mv s0,a0 + c004ecf8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2314 ret |= bf_pow_ui(r, &a, b, prec, flags); - c004eb2a: 8526 mv a0,s1 - c004eb2c: f1bff0ef jal ra,c004ea46 - c004eb30: 8c49 or s0,s0,a0 + c004ecfa: 8526 mv a0,s1 + c004ecfc: f1bff0ef jal ra,c004ec16 + c004ed00: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2315 bf_delete(&a); - c004eb32: 1028 addi a0,sp,40 - c004eb34: 958fe0ef jal ra,c004cc8c + c004ed02: 1028 addi a0,sp,40 + c004ed04: 958fe0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2314 ret |= bf_pow_ui(r, &a, b, prec, flags); - c004eb38: 2401 sext.w s0,s0 + c004ed08: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2318 } - c004eb3a: 70a6 ld ra,104(sp) - c004eb3c: 8522 mv a0,s0 - c004eb3e: 7406 ld s0,96(sp) - c004eb40: 64e6 ld s1,88(sp) - c004eb42: 6165 addi sp,sp,112 - c004eb44: 8082 ret + c004ed0a: 70a6 ld ra,104(sp) + c004ed0c: 8522 mv a0,s0 + c004ed0e: 7406 ld s0,96(sp) + c004ed10: 64e6 ld s1,88(sp) + c004ed12: 6165 addi sp,sp,112 + c004ed14: 8082 ret -00000000c004eb46 : +00000000c004ed16 : bf_mul_2exp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1626 { - c004eb46: 87ae mv a5,a1 - c004eb48: 85b2 mv a1,a2 - c004eb4a: 8636 mv a2,a3 + c004ed16: 87ae mv a5,a1 + c004ed18: 85b2 mv a1,a2 + c004ed1a: 8636 mv a2,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1628 if (r->len == 0) - c004eb4c: 6d14 ld a3,24(a0) - c004eb4e: c69d beqz a3,c004eb7c + c004ed1c: 6d14 ld a3,24(a0) + c004ed1e: c69d beqz a3,c004ed4c bf_max(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:180 if (a > b) - c004eb50: 587d li a6,-1 - c004eb52: 03e81713 slli a4,a6,0x3e - c004eb56: 00270893 addi a7,a4,2 - c004eb5a: 0117ce63 blt a5,a7,c004eb76 + c004ed20: 587d li a6,-1 + c004ed22: 03e81713 slli a4,a6,0x3e + c004ed26: 00270893 addi a7,a4,2 + c004ed2a: 0117ce63 blt a5,a7,c004ed46 bf_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 if (a < b) - c004eb5e: 576d li a4,-5 - c004eb60: 8309 srli a4,a4,0x2 - c004eb62: 00f75463 bge a4,a5,c004eb6a + c004ed2e: 576d li a4,-5 + c004ed30: 8309 srli a4,a4,0x2 + c004ed32: 00f75463 bge a4,a5,c004ed3a /Users/Luppy/riscv/quickjs-nuttx/libbf.h:191 return b; - c004eb66: 00285793 srli a5,a6,0x2 + c004ed36: 00285793 srli a5,a6,0x2 bf_mul_2exp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1633 r->expn += e; - c004eb6a: 6918 ld a4,16(a0) - c004eb6c: 97ba add a5,a5,a4 - c004eb6e: e91c sd a5,16(a0) + c004ed3a: 6918 ld a4,16(a0) + c004ed3c: 97ba add a5,a5,a4 + c004ed3e: e91c sd a5,16(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1634 return __bf_round(r, prec, flags, r->len, 0); - c004eb70: 4701 li a4,0 - c004eb72: ea8fe06f j c004d21a <__bf_round> + c004ed40: 4701 li a4,0 + c004ed42: ea8fe06f j c004d3ea <__bf_round> bf_max(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:183 return b; - c004eb76: 00170793 addi a5,a4,1 - c004eb7a: bfc5 j c004eb6a + c004ed46: 00170793 addi a5,a4,1 + c004ed4a: bfc5 j c004ed3a bf_mul_2exp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1635 } - c004eb7c: 4501 li a0,0 - c004eb7e: 8082 ret + c004ed4c: 4501 li a0,0 + c004ed4e: 8082 ret -00000000c004eb80 : +00000000c004ed50 : bf_get_exp_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1640 { - c004eb80: 1101 addi sp,sp,-32 - c004eb82: e426 sd s1,8(sp) - c004eb84: e04a sd s2,0(sp) - c004eb86: ec06 sd ra,24(sp) - c004eb88: e822 sd s0,16(sp) + c004ed50: 1101 addi sp,sp,-32 + c004ed52: e426 sd s1,8(sp) + c004ed54: e04a sd s2,0(sp) + c004ed56: ec06 sd ra,24(sp) + c004ed58: e822 sd s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1645 for(i = 0; i < a->len; i++) { - c004eb8a: 6d00 ld s0,24(a0) + c004ed5a: 6d00 ld s0,24(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1640 { - c004eb8c: 892a mv s2,a0 + c004ed5c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1645 for(i = 0; i < a->len; i++) { - c004eb8e: 4481 li s1,0 + c004ed5e: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1645 (discriminator 1) - c004eb90: 00941463 bne s0,s1,c004eb98 + c004ed60: 00941463 bne s0,s1,c004ed68 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1652 return 0; - c004eb94: 4501 li a0,0 - c004eb96: a00d j c004ebb8 + c004ed64: 4501 li a0,0 + c004ed66: a00d j c004ed88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1646 v = a->tab[i]; - c004eb98: 02093783 ld a5,32(s2) - c004eb9c: 00349713 slli a4,s1,0x3 - c004eba0: 97ba add a5,a5,a4 - c004eba2: 6388 ld a0,0(a5) + c004ed68: 02093783 ld a5,32(s2) + c004ed6c: 00349713 slli a4,s1,0x3 + c004ed70: 97ba add a5,a5,a4 + c004ed72: 6388 ld a0,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1647 if (v != 0) { - c004eba4: c105 beqz a0,c004ebc4 + c004ed74: c105 beqz a0,c004ed94 ctz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:138 return __builtin_ctzll(a); - c004eba6: c8ab10ef jal ra,c0000030 <__ctzdi2> + c004ed76: abab10ef jal ra,c0000030 <__ctzdi2> bf_get_exp_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1649 return a->expn - (a->len - i) * LIMB_BITS + k; - c004ebaa: 01093783 ld a5,16(s2) + c004ed7a: 01093783 ld a5,16(s2) ctz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:138 - c004ebae: 2501 sext.w a0,a0 + c004ed7e: 2501 sext.w a0,a0 bf_get_exp_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1649 - c004ebb0: 8c05 sub s0,s0,s1 - c004ebb2: 953e add a0,a0,a5 - c004ebb4: 041a slli s0,s0,0x6 - c004ebb6: 8d01 sub a0,a0,s0 + c004ed80: 8c05 sub s0,s0,s1 + c004ed82: 953e add a0,a0,a5 + c004ed84: 041a slli s0,s0,0x6 + c004ed86: 8d01 sub a0,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1653 } - c004ebb8: 60e2 ld ra,24(sp) - c004ebba: 6442 ld s0,16(sp) - c004ebbc: 64a2 ld s1,8(sp) - c004ebbe: 6902 ld s2,0(sp) - c004ebc0: 6105 addi sp,sp,32 - c004ebc2: 8082 ret + c004ed88: 60e2 ld ra,24(sp) + c004ed8a: 6442 ld s0,16(sp) + c004ed8c: 64a2 ld s1,8(sp) + c004ed8e: 6902 ld s2,0(sp) + c004ed90: 6105 addi sp,sp,32 + c004ed92: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1645 (discriminator 2) for(i = 0; i < a->len; i++) { - c004ebc4: 0485 addi s1,s1,1 - c004ebc6: b7e9 j c004eb90 + c004ed94: 0485 addi s1,s1,1 + c004ed96: b7e9 j c004ed60 -00000000c004ebc8 : +00000000c004ed98 : bf_isqrt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1951 { - c004ebc8: 7179 addi sp,sp,-48 - c004ebca: f022 sd s0,32(sp) - c004ebcc: f406 sd ra,40(sp) - c004ebce: ec26 sd s1,24(sp) - c004ebd0: 842a mv s0,a0 + c004ed98: 7179 addi sp,sp,-48 + c004ed9a: f022 sd s0,32(sp) + c004ed9c: f406 sd ra,40(sp) + c004ed9e: ec26 sd s1,24(sp) + c004eda0: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1955 if (a == 0) - c004ebd2: cd19 beqz a0,c004ebf0 + c004eda2: cd19 beqz a0,c004edc0 clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 return __builtin_clzll(a); - c004ebd4: c2cb10ef jal ra,c0000000 <__clzdi2> - c004ebd8: 0005049b sext.w s1,a0 + c004eda4: a5cb10ef jal ra,c0000000 <__clzdi2> + c004eda8: 0005049b sext.w s1,a0 bf_isqrt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1957 k = clz(a) & ~1; - c004ebdc: 98f9 andi s1,s1,-2 + c004edac: 98f9 andi s1,s1,-2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1958 s = mp_sqrtrem1(&r, a << k); - c004ebde: 009415b3 sll a1,s0,s1 - c004ebe2: 0028 addi a0,sp,8 - c004ebe4: 9cefe0ef jal ra,c004cdb2 + c004edae: 009415b3 sll a1,s0,s1 + c004edb2: 0028 addi a0,sp,8 + c004edb4: 9cefe0ef jal ra,c004cf82 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1959 s >>= (k >> 1); - c004ebe8: 4014d41b sraiw s0,s1,0x1 - c004ebec: 00855433 srl s0,a0,s0 + c004edb8: 4014d41b sraiw s0,s1,0x1 + c004edbc: 00855433 srl s0,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1961 } - c004ebf0: 70a2 ld ra,40(sp) - c004ebf2: 8522 mv a0,s0 - c004ebf4: 7402 ld s0,32(sp) - c004ebf6: 64e2 ld s1,24(sp) - c004ebf8: 6145 addi sp,sp,48 - c004ebfa: 8082 ret + c004edc0: 70a2 ld ra,40(sp) + c004edc2: 8522 mv a0,s0 + c004edc4: 7402 ld s0,32(sp) + c004edc6: 64e2 ld s1,24(sp) + c004edc8: 6145 addi sp,sp,48 + c004edca: 8082 ret -00000000c004ebfc : +00000000c004edcc : mp_sqrtrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2070 { - c004ebfc: 7119 addi sp,sp,-128 + c004edcc: 7119 addi sp,sp,-128 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2075 n2 = n / 2 + 1; - c004ebfe: 0016d793 srli a5,a3,0x1 + c004edce: 0016d793 srli a5,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2070 { - c004ec02: f0ca sd s2,96(sp) - c004ec04: ecce sd s3,88(sp) - c004ec06: fc86 sd ra,120(sp) - c004ec08: f8a2 sd s0,112(sp) - c004ec0a: f4a6 sd s1,104(sp) + c004edd2: f0ca sd s2,96(sp) + c004edd4: ecce sd s3,88(sp) + c004edd6: fc86 sd ra,120(sp) + c004edd8: f8a2 sd s0,112(sp) + c004edda: f4a6 sd s1,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2075 n2 = n / 2 + 1; - c004ec0c: 0785 addi a5,a5,1 + c004eddc: 0785 addi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2076 if (n2 <= countof(tmp_buf1)) { - c004ec0e: 4721 li a4,8 + c004edde: 4721 li a4,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2070 { - c004ec10: 892a mv s2,a0 - c004ec12: 89ae mv s3,a1 + c004ede0: 892a mv s2,a0 + c004ede2: 89ae mv s3,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2076 if (n2 <= countof(tmp_buf1)) { - c004ec14: 02f77563 bgeu a4,a5,c004ec3e + c004ede4: 02f77563 bgeu a4,a5,c004ee0e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2079 tmp_buf = bf_malloc(s, sizeof(limb_t) * n2); - c004ec18: 00379593 slli a1,a5,0x3 - c004ec1c: e436 sd a3,8(sp) - c004ec1e: e032 sd a2,0(sp) - c004ec20: 85afe0ef jal ra,c004cc7a + c004ede8: 00379593 slli a1,a5,0x3 + c004edec: e436 sd a3,8(sp) + c004edee: e032 sd a2,0(sp) + c004edf0: 85afe0ef jal ra,c004ce4a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2080 if (!tmp_buf) - c004ec24: 6602 ld a2,0(sp) - c004ec26: 66a2 ld a3,8(sp) + c004edf4: 6602 ld a2,0(sp) + c004edf6: 66a2 ld a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2079 tmp_buf = bf_malloc(s, sizeof(limb_t) * n2); - c004ec28: 842a mv s0,a0 + c004edf8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2081 return -1; - c004ec2a: 54fd li s1,-1 + c004edfa: 54fd li s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2080 if (!tmp_buf) - c004ec2c: e911 bnez a0,c004ec40 + c004edfc: e911 bnez a0,c004ee10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2087 } - c004ec2e: 70e6 ld ra,120(sp) - c004ec30: 7446 ld s0,112(sp) - c004ec32: 7906 ld s2,96(sp) - c004ec34: 69e6 ld s3,88(sp) - c004ec36: 8526 mv a0,s1 - c004ec38: 74a6 ld s1,104(sp) - c004ec3a: 6109 addi sp,sp,128 - c004ec3c: 8082 ret + c004edfe: 70e6 ld ra,120(sp) + c004ee00: 7446 ld s0,112(sp) + c004ee02: 7906 ld s2,96(sp) + c004ee04: 69e6 ld s3,88(sp) + c004ee06: 8526 mv a0,s1 + c004ee08: 74a6 ld s1,104(sp) + c004ee0a: 6109 addi sp,sp,128 + c004ee0c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2077 tmp_buf = tmp_buf1; - c004ec3e: 0800 addi s0,sp,16 + c004ee0e: 0800 addi s0,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2083 ret = mp_sqrtrem_rec(s, tabs, taba, n, tmp_buf, taba + n); - c004ec40: 00369793 slli a5,a3,0x3 - c004ec44: 97b2 add a5,a5,a2 - c004ec46: 8722 mv a4,s0 - c004ec48: 85ce mv a1,s3 - c004ec4a: 854a mv a0,s2 - c004ec4c: 8a7ff0ef jal ra,c004e4f2 + c004ee10: 00369793 slli a5,a3,0x3 + c004ee14: 97b2 add a5,a5,a2 + c004ee16: 8722 mv a4,s0 + c004ee18: 85ce mv a1,s3 + c004ee1a: 854a mv a0,s2 + c004ee1c: 8a7ff0ef jal ra,c004e6c2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2084 if (tmp_buf != tmp_buf1) - c004ec50: 081c addi a5,sp,16 + c004ee20: 081c addi a5,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2083 ret = mp_sqrtrem_rec(s, tabs, taba, n, tmp_buf, taba + n); - c004ec52: 84aa mv s1,a0 + c004ee22: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2084 if (tmp_buf != tmp_buf1) - c004ec54: fcf40de3 beq s0,a5,c004ec2e + c004ee24: fcf40de3 beq s0,a5,c004edfe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2085 bf_free(s, tmp_buf); - c004ec58: 85a2 mv a1,s0 - c004ec5a: 854a mv a0,s2 - c004ec5c: 826fe0ef jal ra,c004cc82 - c004ec60: b7f9 j c004ec2e + c004ee28: 85a2 mv a1,s0 + c004ee2a: 854a mv a0,s2 + c004ee2c: 826fe0ef jal ra,c004ce52 + c004ee30: b7f9 j c004edfe -00000000c004ec62 : +00000000c004ee32 : bf_sqrt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2146 { - c004ec62: 711d addi sp,sp,-96 - c004ec64: ec86 sd ra,88(sp) - c004ec66: e8a2 sd s0,80(sp) - c004ec68: e4a6 sd s1,72(sp) - c004ec6a: e0ca sd s2,64(sp) - c004ec6c: fc4e sd s3,56(sp) - c004ec6e: f852 sd s4,48(sp) - c004ec70: f456 sd s5,40(sp) - c004ec72: f05a sd s6,32(sp) - c004ec74: ec5e sd s7,24(sp) - c004ec76: e862 sd s8,16(sp) - c004ec78: e466 sd s9,8(sp) + c004ee32: 711d addi sp,sp,-96 + c004ee34: ec86 sd ra,88(sp) + c004ee36: e8a2 sd s0,80(sp) + c004ee38: e4a6 sd s1,72(sp) + c004ee3a: e0ca sd s2,64(sp) + c004ee3c: fc4e sd s3,56(sp) + c004ee3e: f852 sd s4,48(sp) + c004ee40: f456 sd s5,40(sp) + c004ee42: f05a sd s6,32(sp) + c004ee44: ec5e sd s7,24(sp) + c004ee46: e862 sd s8,16(sp) + c004ee48: e466 sd s9,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2150 assert(r != a); - c004ec7a: 00a59c63 bne a1,a0,c004ec92 + c004ee4a: 00a59c63 bne a1,a0,c004ee62 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2150 (discriminator 1) - c004ec7e: 6585 lui a1,0x1 - c004ec80: 4601 li a2,0 - c004ec82: 86658593 addi a1,a1,-1946 # 866 <__clzdi2-0xbffff79a> - c004ec86: 00023517 auipc a0,0x23 - c004ec8a: 69250513 addi a0,a0,1682 # c0072318 - c004ec8e: 58b040ef jal ra,c0053a18 <__assert> + c004ee4e: 6585 lui a1,0x1 + c004ee50: 4601 li a2,0 + c004ee52: 86658593 addi a1,a1,-1946 # 866 <__clzdi2-0xbffff79a> + c004ee56: 00023517 auipc a0,0x23 + c004ee5a: 72250513 addi a0,a0,1826 # c0072578 + c004ee5e: 58b040ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2152 (discriminator 2) if (a->len == 0) { - c004ec92: 6d9c ld a5,24(a1) - c004ec94: 892a mv s2,a0 - c004ec96: 842e mv s0,a1 - c004ec98: e3a9 bnez a5,c004ecda + c004ee62: 6d9c ld a5,24(a1) + c004ee64: 892a mv s2,a0 + c004ee66: 842e mv s0,a1 + c004ee68: e3a9 bnez a5,c004eeaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2153 if (a->expn == BF_EXP_NAN) { - c004ec9a: 6998 ld a4,16(a1) - c004ec9c: 57fd li a5,-1 - c004ec9e: 8385 srli a5,a5,0x1 - c004eca0: 02f71263 bne a4,a5,c004ecc4 + c004ee6a: 6998 ld a4,16(a1) + c004ee6c: 57fd li a5,-1 + c004ee6e: 8385 srli a5,a5,0x1 + c004ee70: 02f71263 bne a4,a5,c004ee94 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2154 bf_set_nan(r); - c004eca4: bb8fe0ef jal ra,c004d05c + c004ee74: bb8fe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2160 ret = 0; - c004eca8: 4501 li a0,0 + c004ee78: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2207 } - c004ecaa: 60e6 ld ra,88(sp) - c004ecac: 6446 ld s0,80(sp) - c004ecae: 64a6 ld s1,72(sp) - c004ecb0: 6906 ld s2,64(sp) - c004ecb2: 79e2 ld s3,56(sp) - c004ecb4: 7a42 ld s4,48(sp) - c004ecb6: 7aa2 ld s5,40(sp) - c004ecb8: 7b02 ld s6,32(sp) - c004ecba: 6be2 ld s7,24(sp) - c004ecbc: 6c42 ld s8,16(sp) - c004ecbe: 6ca2 ld s9,8(sp) - c004ecc0: 6125 addi sp,sp,96 - c004ecc2: 8082 ret + c004ee7a: 60e6 ld ra,88(sp) + c004ee7c: 6446 ld s0,80(sp) + c004ee7e: 64a6 ld s1,72(sp) + c004ee80: 6906 ld s2,64(sp) + c004ee82: 79e2 ld s3,56(sp) + c004ee84: 7a42 ld s4,48(sp) + c004ee86: 7aa2 ld s5,40(sp) + c004ee88: 7b02 ld s6,32(sp) + c004ee8a: 6be2 ld s7,24(sp) + c004ee8c: 6c42 ld s8,16(sp) + c004ee8e: 6ca2 ld s9,8(sp) + c004ee90: 6125 addi sp,sp,96 + c004ee92: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2155 } else if (a->expn == BF_EXP_INF && a->sign) { - c004ecc4: 57f5 li a5,-3 - c004ecc6: 8385 srli a5,a5,0x1 - c004ecc8: 00f71463 bne a4,a5,c004ecd0 + c004ee94: 57f5 li a5,-3 + c004ee96: 8385 srli a5,a5,0x1 + c004ee98: 00f71463 bne a4,a5,c004eea0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2155 (discriminator 1) - c004eccc: 459c lw a5,8(a1) - c004ecce: eb81 bnez a5,c004ecde + c004ee9c: 459c lw a5,8(a1) + c004ee9e: eb81 bnez a5,c004eeae /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2158 bf_set(r, a); - c004ecd0: 85a2 mv a1,s0 - c004ecd2: 854a mv a0,s2 - c004ecd4: fecfe0ef jal ra,c004d4c0 - c004ecd8: bfc1 j c004eca8 + c004eea0: 85a2 mv a1,s0 + c004eea2: 854a mv a0,s2 + c004eea4: fecfe0ef jal ra,c004d690 + c004eea8: bfc1 j c004ee78 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2161 } else if (a->sign) { - c004ecda: 459c lw a5,8(a1) - c004ecdc: c791 beqz a5,c004ece8 + c004eeaa: 459c lw a5,8(a1) + c004eeac: c791 beqz a5,c004eeb8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2163 bf_set_nan(r); - c004ecde: 854a mv a0,s2 - c004ece0: b7cfe0ef jal ra,c004d05c + c004eeae: 854a mv a0,s2 + c004eeb0: b7cfe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2164 ret = BF_ST_INVALID_OP; - c004ece4: 4505 li a0,1 - c004ece6: b7d1 j c004ecaa + c004eeb4: 4505 li a0,1 + c004eeb6: b7d1 j c004ee7a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2172 n = (2 * (prec + 2) + 2 * LIMB_BITS - 1) / (2 * LIMB_BITS); - c004ece8: 00161a13 slli s4,a2,0x1 - c004ecec: 083a0a13 addi s4,s4,131 - c004ecf0: 007a5a13 srli s4,s4,0x7 + c004eeb8: 00161a13 slli s4,a2,0x1 + c004eebc: 083a0a13 addi s4,s4,131 + c004eec0: 007a5a13 srli s4,s4,0x7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2147 bf_context_t *s = a->ctx; - c004ecf4: 0005bb83 ld s7,0(a1) + c004eec4: 0005bb83 ld s7,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2173 if (bf_resize(r, n)) - c004ecf8: 85d2 mv a1,s4 - c004ecfa: 8b32 mv s6,a2 - c004ecfc: 8c36 mv s8,a3 - c004ecfe: b24fe0ef jal ra,c004d022 - c004ed02: e535 bnez a0,c004ed6e + c004eec8: 85d2 mv a1,s4 + c004eeca: 8b32 mv s6,a2 + c004eecc: 8c36 mv s8,a3 + c004eece: b24fe0ef jal ra,c004d1f2 + c004eed2: e535 bnez a0,c004ef3e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2175 a1 = bf_malloc(s, sizeof(limb_t) * 2 * n); - c004ed04: 004a1c93 slli s9,s4,0x4 - c004ed08: 85e6 mv a1,s9 - c004ed0a: 855e mv a0,s7 - c004ed0c: f6ffd0ef jal ra,c004cc7a - c004ed10: 89aa mv s3,a0 + c004eed4: 004a1c93 slli s9,s4,0x4 + c004eed8: 85e6 mv a1,s9 + c004eeda: 855e mv a0,s7 + c004eedc: f6ffd0ef jal ra,c004ce4a + c004eee0: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2176 if (!a1) - c004ed12: cd31 beqz a0,c004ed6e + c004eee2: cd31 beqz a0,c004ef3e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2178 n1 = bf_min(2 * n, a->len); - c004ed14: 01843a83 ld s5,24(s0) - c004ed18: 001a1613 slli a2,s4,0x1 + c004eee4: 01843a83 ld s5,24(s0) + c004eee8: 001a1613 slli a2,s4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 if (a < b) - c004ed1c: 01565363 bge a2,s5,c004ed22 - c004ed20: 8ab2 mv s5,a2 + c004eeec: 01565363 bge a2,s5,c004eef2 + c004eef0: 8ab2 mv s5,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2179 memset(a1, 0, (2 * n - n1) * sizeof(limb_t)); - c004ed22: 41560633 sub a2,a2,s5 - c004ed26: 060e slli a2,a2,0x3 - c004ed28: 4581 li a1,0 - c004ed2a: 854e mv a0,s3 - c004ed2c: 345070ef jal ra,c0056870 + c004eef2: 41560633 sub a2,a2,s5 + c004eef6: 060e slli a2,a2,0x3 + c004eef8: 4581 li a1,0 + c004eefa: 854e mv a0,s3 + c004eefc: 345070ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2180 memcpy(a1 + 2 * n - n1, a->tab + a->len - n1, n1 * sizeof(limb_t)); - c004ed30: 6c1c ld a5,24(s0) - c004ed32: 700c ld a1,32(s0) - c004ed34: 003a9613 slli a2,s5,0x3 - c004ed38: 415787b3 sub a5,a5,s5 - c004ed3c: 078e slli a5,a5,0x3 - c004ed3e: 40cc8533 sub a0,s9,a2 - c004ed42: 95be add a1,a1,a5 - c004ed44: 954e add a0,a0,s3 - c004ed46: 495070ef jal ra,c00569da + c004ef00: 6c1c ld a5,24(s0) + c004ef02: 700c ld a1,32(s0) + c004ef04: 003a9613 slli a2,s5,0x3 + c004ef08: 415787b3 sub a5,a5,s5 + c004ef0c: 078e slli a5,a5,0x3 + c004ef0e: 40cc8533 sub a0,s9,a2 + c004ef12: 95be add a1,a1,a5 + c004ef14: 954e add a0,a0,s3 + c004ef16: 495070ef jal ra,c0056baa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2181 if (a->expn & 1) { - c004ed4a: 681c ld a5,16(s0) + c004ef1a: 681c ld a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2184 res = 0; - c004ed4c: 4481 li s1,0 - c004ed4e: 019985b3 add a1,s3,s9 + c004ef1c: 4481 li s1,0 + c004ef1e: 019985b3 add a1,s3,s9 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2181 if (a->expn & 1) { - c004ed52: 8b85 andi a5,a5,1 - c004ed54: ef85 bnez a5,c004ed8c + c004ef22: 8b85 andi a5,a5,1 + c004ef24: ef85 bnez a5,c004ef5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2186 if (mp_sqrtrem(s, r->tab, a1, n)) { - c004ed56: 02093583 ld a1,32(s2) - c004ed5a: 86d2 mv a3,s4 - c004ed5c: 864e mv a2,s3 - c004ed5e: 855e mv a0,s7 - c004ed60: e9dff0ef jal ra,c004ebfc - c004ed64: c905 beqz a0,c004ed94 + c004ef26: 02093583 ld a1,32(s2) + c004ef2a: 86d2 mv a3,s4 + c004ef2c: 864e mv a2,s3 + c004ef2e: 855e mv a0,s7 + c004ef30: e9dff0ef jal ra,c004edcc + c004ef34: c905 beqz a0,c004ef64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2187 bf_free(s, a1); - c004ed66: 85ce mv a1,s3 - c004ed68: 855e mv a0,s7 - c004ed6a: f19fd0ef jal ra,c004cc82 + c004ef36: 85ce mv a1,s3 + c004ef38: 855e mv a0,s7 + c004ef3a: f19fd0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2205 bf_set_nan(r); - c004ed6e: 854a mv a0,s2 - c004ed70: aecfe0ef jal ra,c004d05c + c004ef3e: 854a mv a0,s2 + c004ef40: aecfe0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2206 return BF_ST_MEM_ERROR; - c004ed74: 02000513 li a0,32 - c004ed78: bf0d j c004ecaa + c004ef44: 02000513 li a0,32 + c004ef48: bf0d j c004ee7a mp_shr(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1139 a = tab[i]; - c004ed7a: ff85b703 ld a4,-8(a1) + c004ef4a: ff85b703 ld a4,-8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1140 tab_r[i] = (a >> shift) | (l << (LIMB_BITS - shift)); - c004ed7e: 14fe slli s1,s1,0x3f - c004ed80: 15e1 addi a1,a1,-8 - c004ed82: 00175793 srli a5,a4,0x1 - c004ed86: 8cdd or s1,s1,a5 - c004ed88: e184 sd s1,0(a1) + c004ef4e: 14fe slli s1,s1,0x3f + c004ef50: 15e1 addi a1,a1,-8 + c004ef52: 00175793 srli a5,a4,0x1 + c004ef56: 8cdd or s1,s1,a5 + c004ef58: e184 sd s1,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1141 l = a; - c004ed8a: 84ba mv s1,a4 + c004ef5a: 84ba mv s1,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1138 for(i = n - 1; i >= 0; i--) { - c004ed8c: feb997e3 bne s3,a1,c004ed7a + c004ef5c: feb997e3 bne s3,a1,c004ef4a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1143 return l & (((limb_t)1 << shift) - 1); - c004ed90: 8885 andi s1,s1,1 + c004ef60: 8885 andi s1,s1,1 bf_sqrt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1143 - c004ed92: b7d1 j c004ed56 + c004ef62: b7d1 j c004ef26 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2190 if (!res) { - c004ed94: e499 bnez s1,c004eda2 + c004ef64: e499 bnez s1,c004ef72 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2191 res = mp_scan_nz(a1, n + 1); - c004ed96: 001a0593 addi a1,s4,1 - c004ed9a: 854e mv a0,s3 - c004ed9c: fadfd0ef jal ra,c004cd48 - c004eda0: 84aa mv s1,a0 + c004ef66: 001a0593 addi a1,s4,1 + c004ef6a: 854e mv a0,s3 + c004ef6c: fadfd0ef jal ra,c004cf18 + c004ef70: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2193 bf_free(s, a1); - c004eda2: 85ce mv a1,s3 - c004eda4: 855e mv a0,s7 - c004eda6: eddfd0ef jal ra,c004cc82 + c004ef72: 85ce mv a1,s3 + c004ef74: 855e mv a0,s7 + c004ef76: eddfd0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2194 if (!res) { - c004edaa: e881 bnez s1,c004edba + c004ef7a: e881 bnez s1,c004ef8a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2195 res = mp_scan_nz(a->tab, a->len - n1); - c004edac: 6c0c ld a1,24(s0) - c004edae: 7008 ld a0,32(s0) - c004edb0: 415585b3 sub a1,a1,s5 - c004edb4: f95fd0ef jal ra,c004cd48 + c004ef7c: 6c0c ld a1,24(s0) + c004ef7e: 7008 ld a0,32(s0) + c004ef80: 415585b3 sub a1,a1,s5 + c004ef84: f95fd0ef jal ra,c004cf18 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2197 if (res != 0) - c004edb8: c519 beqz a0,c004edc6 + c004ef88: c519 beqz a0,c004ef96 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2198 r->tab[0] |= 1; - c004edba: 02093703 ld a4,32(s2) - c004edbe: 631c ld a5,0(a4) - c004edc0: 0017e793 ori a5,a5,1 - c004edc4: e31c sd a5,0(a4) + c004ef8a: 02093703 ld a4,32(s2) + c004ef8e: 631c ld a5,0(a4) + c004ef90: 0017e793 ori a5,a5,1 + c004ef94: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2199 r->sign = 0; - c004edc6: 00092423 sw zero,8(s2) + c004ef96: 00092423 sw zero,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2200 r->expn = (a->expn + 1) >> 1; - c004edca: 681c ld a5,16(s0) + c004ef9a: 681c ld a5,16(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2201 ret = bf_round(r, prec, flags); - c004edcc: 8662 mv a2,s8 - c004edce: 85da mv a1,s6 + c004ef9c: 8662 mv a2,s8 + c004ef9e: 85da mv a1,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2200 r->expn = (a->expn + 1) >> 1; - c004edd0: 0785 addi a5,a5,1 - c004edd2: 8785 srai a5,a5,0x1 - c004edd4: 00f93823 sd a5,16(s2) + c004efa0: 0785 addi a5,a5,1 + c004efa2: 8785 srai a5,a5,0x1 + c004efa4: 00f93823 sd a5,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2207 } - c004edd8: 6446 ld s0,80(sp) - c004edda: 60e6 ld ra,88(sp) - c004eddc: 64a6 ld s1,72(sp) - c004edde: 79e2 ld s3,56(sp) - c004ede0: 7a42 ld s4,48(sp) - c004ede2: 7aa2 ld s5,40(sp) - c004ede4: 7b02 ld s6,32(sp) - c004ede6: 6be2 ld s7,24(sp) - c004ede8: 6c42 ld s8,16(sp) - c004edea: 6ca2 ld s9,8(sp) + c004efa8: 6446 ld s0,80(sp) + c004efaa: 60e6 ld ra,88(sp) + c004efac: 64a6 ld s1,72(sp) + c004efae: 79e2 ld s3,56(sp) + c004efb0: 7a42 ld s4,48(sp) + c004efb2: 7aa2 ld s5,40(sp) + c004efb4: 7b02 ld s6,32(sp) + c004efb6: 6be2 ld s7,24(sp) + c004efb8: 6c42 ld s8,16(sp) + c004efba: 6ca2 ld s9,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2201 ret = bf_round(r, prec, flags); - c004edec: 854a mv a0,s2 + c004efbc: 854a mv a0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2207 } - c004edee: 6906 ld s2,64(sp) - c004edf0: 6125 addi sp,sp,96 + c004efbe: 6906 ld s2,64(sp) + c004efc0: 6125 addi sp,sp,96 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2201 ret = bf_round(r, prec, flags); - c004edf2: 99ffe06f j c004d790 + c004efc2: 99ffe06f j c004d960 -00000000c004edf6 : +00000000c004efc6 : bf_add(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2228 return bf_op2(r, a, b, prec, flags, __bf_add); - c004edf6: fffff797 auipc a5,0xfffff - c004edfa: fb878793 addi a5,a5,-72 # c004ddae <__bf_add> - c004edfe: f3efe06f j c004d53c + c004efc6: fffff797 auipc a5,0xfffff + c004efca: fb878793 addi a5,a5,-72 # c004df7e <__bf_add> + c004efce: f3efe06f j c004d70c -00000000c004ee02 : +00000000c004efd2 : bf_integer_from_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2718 { - c004ee02: 7175 addi sp,sp,-144 - c004ee04: f0d2 sd s4,96(sp) - c004ee06: e8da sd s6,80(sp) - c004ee08: e506 sd ra,136(sp) - c004ee0a: 8b3e mv s6,a5 - c004ee0c: e122 sd s0,128(sp) - c004ee0e: fca6 sd s1,120(sp) - c004ee10: f8ca sd s2,112(sp) - c004ee12: f4ce sd s3,104(sp) - c004ee14: ecd6 sd s5,88(sp) - c004ee16: e4de sd s7,72(sp) - c004ee18: e0e2 sd s8,64(sp) - c004ee1a: fc66 sd s9,56(sp) + c004efd2: 7175 addi sp,sp,-144 + c004efd4: f0d2 sd s4,96(sp) + c004efd6: e8da sd s6,80(sp) + c004efd8: e506 sd ra,136(sp) + c004efda: 8b3e mv s6,a5 + c004efdc: e122 sd s0,128(sp) + c004efde: fca6 sd s1,120(sp) + c004efe0: f8ca sd s2,112(sp) + c004efe2: f4ce sd s3,104(sp) + c004efe4: ecd6 sd s5,88(sp) + c004efe6: e4de sd s7,72(sp) + c004efe8: e0e2 sd s8,64(sp) + c004efea: fc66 sd s9,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2720 if (n == 1) { - c004ee1c: 4785 li a5,1 + c004efec: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2718 { - c004ee1e: 8a2e mv s4,a1 + c004efee: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2720 if (n == 1) { - c004ee20: 02f61163 bne a2,a5,c004ee42 + c004eff0: 02f61163 bne a2,a5,c004f012 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2751 } - c004ee24: 640a ld s0,128(sp) - c004ee26: 60aa ld ra,136(sp) - c004ee28: 74e6 ld s1,120(sp) - c004ee2a: 7946 ld s2,112(sp) - c004ee2c: 79a6 ld s3,104(sp) - c004ee2e: 7a06 ld s4,96(sp) - c004ee30: 6ae6 ld s5,88(sp) - c004ee32: 6b46 ld s6,80(sp) - c004ee34: 6ba6 ld s7,72(sp) - c004ee36: 6c06 ld s8,64(sp) - c004ee38: 7ce2 ld s9,56(sp) + c004eff4: 640a ld s0,128(sp) + c004eff6: 60aa ld ra,136(sp) + c004eff8: 74e6 ld s1,120(sp) + c004effa: 7946 ld s2,112(sp) + c004effc: 79a6 ld s3,104(sp) + c004effe: 7a06 ld s4,96(sp) + c004f000: 6ae6 ld s5,88(sp) + c004f002: 6b46 ld s6,80(sp) + c004f004: 6ba6 ld s7,72(sp) + c004f006: 6c06 ld s8,64(sp) + c004f008: 7ce2 ld s9,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2721 ret = bf_set_ui(r, tab[0]); - c004ee3a: 618c ld a1,0(a1) + c004f00a: 618c ld a1,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2751 } - c004ee3c: 6149 addi sp,sp,144 + c004f00c: 6149 addi sp,sp,144 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2721 ret = bf_set_ui(r, tab[0]); - c004ee3e: a3efe06f j c004d07c + c004f00e: a3efe06f j c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2729 B = &pow_tab[level]; - c004ee42: 02800913 li s2,40 + c004f012: 02800913 li s2,40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2726 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004ee46: 00168b9b addiw s7,a3,1 + c004f016: 00168b9b addiw s7,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2729 B = &pow_tab[level]; - c004ee4a: 032686b3 mul a3,a3,s2 + c004f01a: 032686b3 mul a3,a3,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2726 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004ee4e: 00171493 slli s1,a4,0x1 - c004ee52: 0174d4b3 srl s1,s1,s7 - c004ee56: 0485 addi s1,s1,1 - c004ee58: 8085 srli s1,s1,0x1 - c004ee5a: 89aa mv s3,a0 - c004ee5c: 8aba mv s5,a4 - c004ee5e: 8c42 mv s8,a6 + c004f01e: 00171493 slli s1,a4,0x1 + c004f022: 0174d4b3 srl s1,s1,s7 + c004f026: 0485 addi s1,s1,1 + c004f028: 8085 srli s1,s1,0x1 + c004f02a: 89aa mv s3,a0 + c004f02c: 8aba mv s5,a4 + c004f02e: 8c42 mv s8,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2727 n1 = n - n2; - c004ee60: 40960cb3 sub s9,a2,s1 + c004f030: 40960cb3 sub s9,a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2729 B = &pow_tab[level]; - c004ee64: 00d80933 add s2,a6,a3 + c004f034: 00d80933 add s2,a6,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2730 if (B->len == 0) { - c004ee68: 01893783 ld a5,24(s2) - c004ee6c: cbb5 beqz a5,c004eee0 + c004f038: 01893783 ld a5,24(s2) + c004f03c: cbb5 beqz a5,c004f0b0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2735 ret = bf_integer_from_radix_rec(r, tab + n2, n1, level + 1, n0, - c004ee6e: 00349593 slli a1,s1,0x3 - c004ee72: 8862 mv a6,s8 - c004ee74: 87da mv a5,s6 - c004ee76: 8756 mv a4,s5 - c004ee78: 86de mv a3,s7 - c004ee7a: 8666 mv a2,s9 - c004ee7c: 95d2 add a1,a1,s4 - c004ee7e: 854e mv a0,s3 - c004ee80: f83ff0ef jal ra,c004ee02 - c004ee84: 842a mv s0,a0 + c004f03e: 00349593 slli a1,s1,0x3 + c004f042: 8862 mv a6,s8 + c004f044: 87da mv a5,s6 + c004f046: 8756 mv a4,s5 + c004f048: 86de mv a3,s7 + c004f04a: 8666 mv a2,s9 + c004f04c: 95d2 add a1,a1,s4 + c004f04e: 854e mv a0,s3 + c004f050: f83ff0ef jal ra,c004efd2 + c004f054: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2737 if (ret) - c004ee86: e53d bnez a0,c004eef4 + c004f056: e53d bnez a0,c004f0c4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2739 ret = bf_mul(r, r, B, BF_PREC_INF, BF_RNDZ); - c004ee88: 5cfd li s9,-1 - c004ee8a: 4705 li a4,1 - c004ee8c: 002cd693 srli a3,s9,0x2 - c004ee90: 864a mv a2,s2 - c004ee92: 85ce mv a1,s3 - c004ee94: 854e mv a0,s3 - c004ee96: a45ff0ef jal ra,c004e8da - c004ee9a: 842a mv s0,a0 + c004f058: 5cfd li s9,-1 + c004f05a: 4705 li a4,1 + c004f05c: 002cd693 srli a3,s9,0x2 + c004f060: 864a mv a2,s2 + c004f062: 85ce mv a1,s3 + c004f064: 854e mv a0,s3 + c004f066: a45ff0ef jal ra,c004eaaa + c004f06a: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2740 if (ret) - c004ee9c: ed21 bnez a0,c004eef4 + c004f06c: ed21 bnez a0,c004f0c4 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004ee9e: 0009b783 ld a5,0(s3) + c004f06e: 0009b783 ld a5,0(s3) bf_integer_from_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2743 ret = bf_integer_from_radix_rec(T, tab, n2, level + 1, n0, - c004eea2: 8862 mv a6,s8 - c004eea4: 8756 mv a4,s5 + c004f072: 8862 mv a6,s8 + c004f074: 8756 mv a4,s5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004eea6: e43e sd a5,8(sp) + c004f076: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004eea8: 03fc9793 slli a5,s9,0x3f - c004eeac: ec3e sd a5,24(sp) + c004f078: 03fc9793 slli a5,s9,0x3f + c004f07c: ec3e sd a5,24(sp) bf_integer_from_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2743 ret = bf_integer_from_radix_rec(T, tab, n2, level + 1, n0, - c004eeae: 86de mv a3,s7 - c004eeb0: 87da mv a5,s6 - c004eeb2: 8626 mv a2,s1 - c004eeb4: 85d2 mv a1,s4 - c004eeb6: 0028 addi a0,sp,8 + c004f07e: 86de mv a3,s7 + c004f080: 87da mv a5,s6 + c004f082: 8626 mv a2,s1 + c004f084: 85d2 mv a1,s4 + c004f086: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004eeb8: c802 sw zero,16(sp) + c004f088: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004eeba: f002 sd zero,32(sp) + c004f08a: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004eebc: f402 sd zero,40(sp) + c004f08c: f402 sd zero,40(sp) bf_integer_from_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2743 ret = bf_integer_from_radix_rec(T, tab, n2, level + 1, n0, - c004eebe: f45ff0ef jal ra,c004ee02 - c004eec2: 842a mv s0,a0 + c004f08e: f45ff0ef jal ra,c004efd2 + c004f092: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2745 if (!ret) - c004eec4: e911 bnez a0,c004eed8 + c004f094: e911 bnez a0,c004f0a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2746 ret = bf_add(r, r, T, BF_PREC_INF, BF_RNDZ); - c004eec6: 4705 li a4,1 - c004eec8: 002cd693 srli a3,s9,0x2 - c004eecc: 0030 addi a2,sp,8 - c004eece: 85ce mv a1,s3 - c004eed0: 854e mv a0,s3 - c004eed2: f25ff0ef jal ra,c004edf6 - c004eed6: 842a mv s0,a0 + c004f096: 4705 li a4,1 + c004f098: 002cd693 srli a3,s9,0x2 + c004f09c: 0030 addi a2,sp,8 + c004f09e: 85ce mv a1,s3 + c004f0a0: 854e mv a0,s3 + c004f0a2: f25ff0ef jal ra,c004efc6 + c004f0a6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2747 bf_delete(T); - c004eed8: 0028 addi a0,sp,8 - c004eeda: db3fd0ef jal ra,c004cc8c - c004eede: a819 j c004eef4 + c004f0a8: 0028 addi a0,sp,8 + c004f0aa: db3fd0ef jal ra,c004ce5c + c004f0ae: a819 j c004f0c4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2731 ret = bf_pow_ui_ui(B, radix, n2, BF_PREC_INF, BF_RNDZ); - c004eee0: 56fd li a3,-1 - c004eee2: 4705 li a4,1 - c004eee4: 8289 srli a3,a3,0x2 - c004eee6: 8626 mv a2,s1 - c004eee8: 85da mv a1,s6 - c004eeea: 854a mv a0,s2 - c004eeec: c0fff0ef jal ra,c004eafa - c004eef0: 842a mv s0,a0 + c004f0b0: 56fd li a3,-1 + c004f0b2: 4705 li a4,1 + c004f0b4: 8289 srli a3,a3,0x2 + c004f0b6: 8626 mv a2,s1 + c004f0b8: 85da mv a1,s6 + c004f0ba: 854a mv a0,s2 + c004f0bc: c0fff0ef jal ra,c004ecca + c004f0c0: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2732 if (ret) - c004eef2: dd35 beqz a0,c004ee6e + c004f0c2: dd35 beqz a0,c004f03e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2751 } - c004eef4: 60aa ld ra,136(sp) - c004eef6: 8522 mv a0,s0 - c004eef8: 640a ld s0,128(sp) - c004eefa: 74e6 ld s1,120(sp) - c004eefc: 7946 ld s2,112(sp) - c004eefe: 79a6 ld s3,104(sp) - c004ef00: 7a06 ld s4,96(sp) - c004ef02: 6ae6 ld s5,88(sp) - c004ef04: 6b46 ld s6,80(sp) - c004ef06: 6ba6 ld s7,72(sp) - c004ef08: 6c06 ld s8,64(sp) - c004ef0a: 7ce2 ld s9,56(sp) - c004ef0c: 6149 addi sp,sp,144 - c004ef0e: 8082 ret - -00000000c004ef10 : + c004f0c4: 60aa ld ra,136(sp) + c004f0c6: 8522 mv a0,s0 + c004f0c8: 640a ld s0,128(sp) + c004f0ca: 74e6 ld s1,120(sp) + c004f0cc: 7946 ld s2,112(sp) + c004f0ce: 79a6 ld s3,104(sp) + c004f0d0: 7a06 ld s4,96(sp) + c004f0d2: 6ae6 ld s5,88(sp) + c004f0d4: 6b46 ld s6,80(sp) + c004f0d6: 6ba6 ld s7,72(sp) + c004f0d8: 6c06 ld s8,64(sp) + c004f0da: 7ce2 ld s9,56(sp) + c004f0dc: 6149 addi sp,sp,144 + c004f0de: 8082 ret + +00000000c004f0e0 : bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4850 return ret; @@ -217435,7742 +217633,7742 @@ bf_sqrt_sin(): /* compute sqrt(-2*x-x^2) to get |sin(x)| from cos(x) - 1. */ static void bf_sqrt_sin(bf_t *r, const bf_t *x, limb_t prec1) { - c004ef10: 715d addi sp,sp,-80 - c004ef12: e486 sd ra,72(sp) - c004ef14: e0a2 sd s0,64(sp) - c004ef16: fc26 sd s1,56(sp) - c004ef18: f84a sd s2,48(sp) + c004f0e0: 715d addi sp,sp,-80 + c004f0e2: e486 sd ra,72(sp) + c004f0e4: e0a2 sd s0,64(sp) + c004f0e6: fc26 sd s1,56(sp) + c004f0e8: f84a sd s2,48(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004ef1a: 611c ld a5,0(a0) + c004f0ea: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004ef1c: 597d li s2,-1 + c004f0ec: 597d li s2,-1 bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4850 { - c004ef1e: 842a mv s0,a0 + c004f0ee: 842a mv s0,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004ef20: e43e sd a5,8(sp) + c004f0f0: e43e sd a5,8(sp) bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4854 bf_context_t *s = r->ctx; bf_t T_s, *T = &T_s; bf_init(s, T); bf_set(T, x); - c004ef22: 0028 addi a0,sp,8 + c004f0f2: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004ef24: 03f91793 slli a5,s2,0x3f + c004f0f4: 03f91793 slli a5,s2,0x3f bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4850 { - c004ef28: 84b2 mv s1,a2 + c004f0f8: 84b2 mv s1,a2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004ef2a: ec3e sd a5,24(sp) + c004f0fa: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004ef2c: c802 sw zero,16(sp) + c004f0fc: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004ef2e: f002 sd zero,32(sp) + c004f0fe: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004ef30: f402 sd zero,40(sp) + c004f100: f402 sd zero,40(sp) bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4854 bf_set(T, x); - c004ef32: d8efe0ef jal ra,c004d4c0 + c004f102: d8efe0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4855 bf_mul(r, T, T, prec1, BF_RNDN); - c004ef36: 0030 addi a2,sp,8 - c004ef38: 4701 li a4,0 - c004ef3a: 86a6 mv a3,s1 - c004ef3c: 85b2 mv a1,a2 - c004ef3e: 8522 mv a0,s0 - c004ef40: 99bff0ef jal ra,c004e8da + c004f106: 0030 addi a2,sp,8 + c004f108: 4701 li a4,0 + c004f10a: 86a6 mv a3,s1 + c004f10c: 85b2 mv a1,a2 + c004f10e: 8522 mv a0,s0 + c004f110: 99bff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4856 bf_mul_2exp(T, 1, BF_PREC_INF, BF_RNDZ); - c004ef44: 00295613 srli a2,s2,0x2 - c004ef48: 4685 li a3,1 - c004ef4a: 4585 li a1,1 - c004ef4c: 0028 addi a0,sp,8 - c004ef4e: bf9ff0ef jal ra,c004eb46 + c004f114: 00295613 srli a2,s2,0x2 + c004f118: 4685 li a3,1 + c004f11a: 4585 li a1,1 + c004f11c: 0028 addi a0,sp,8 + c004f11e: bf9ff0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4857 bf_add(T, T, r, prec1, BF_RNDN); - c004ef52: 002c addi a1,sp,8 - c004ef54: 4701 li a4,0 - c004ef56: 86a6 mv a3,s1 - c004ef58: 8622 mv a2,s0 - c004ef5a: 852e mv a0,a1 - c004ef5c: e9bff0ef jal ra,c004edf6 + c004f122: 002c addi a1,sp,8 + c004f124: 4701 li a4,0 + c004f126: 86a6 mv a3,s1 + c004f128: 8622 mv a2,s0 + c004f12a: 852e mv a0,a1 + c004f12c: e9bff0ef jal ra,c004efc6 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 r->sign ^= 1; - c004ef60: 47c2 lw a5,16(sp) + c004f130: 47c2 lw a5,16(sp) bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4859 bf_neg(T); bf_sqrt(r, T, prec1, BF_RNDF); - c004ef62: 8626 mv a2,s1 - c004ef64: 002c addi a1,sp,8 + c004f132: 8626 mv a2,s1 + c004f134: 002c addi a1,sp,8 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c004ef66: 0017c793 xori a5,a5,1 + c004f136: 0017c793 xori a5,a5,1 bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4859 - c004ef6a: 4699 li a3,6 - c004ef6c: 8522 mv a0,s0 + c004f13a: 4699 li a3,6 + c004f13c: 8522 mv a0,s0 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c004ef6e: c83e sw a5,16(sp) + c004f13e: c83e sw a5,16(sp) bf_sqrt_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4859 - c004ef70: cf3ff0ef jal ra,c004ec62 + c004f140: cf3ff0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4860 bf_delete(T); - c004ef74: 0028 addi a0,sp,8 - c004ef76: d17fd0ef jal ra,c004cc8c + c004f144: 0028 addi a0,sp,8 + c004f146: d17fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4861 } - c004ef7a: 60a6 ld ra,72(sp) - c004ef7c: 6406 ld s0,64(sp) - c004ef7e: 74e2 ld s1,56(sp) - c004ef80: 7942 ld s2,48(sp) - c004ef82: 6161 addi sp,sp,80 - c004ef84: 8082 ret + c004f14a: 60a6 ld ra,72(sp) + c004f14c: 6406 ld s0,64(sp) + c004f14e: 74e2 ld s1,56(sp) + c004f150: 7942 ld s2,48(sp) + c004f152: 6161 addi sp,sp,80 + c004f154: 8082 ret -00000000c004ef86 : +00000000c004f156 : bf_const_log2_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4026 static void bf_const_log2_rec(bf_t *T, bf_t *P, bf_t *Q, limb_t n1, - c004ef86: 7155 addi sp,sp,-208 - c004ef88: e1a2 sd s0,192(sp) - c004ef8a: fd26 sd s1,184(sp) - c004ef8c: f94a sd s2,176(sp) - c004ef8e: f54e sd s3,168(sp) - c004ef90: f152 sd s4,160(sp) - c004ef92: ed56 sd s5,152(sp) - c004ef94: e586 sd ra,200(sp) - c004ef96: 8abe mv s5,a5 - c004ef98: e95a sd s6,144(sp) - c004ef9a: e55e sd s7,136(sp) + c004f156: 7155 addi sp,sp,-208 + c004f158: e1a2 sd s0,192(sp) + c004f15a: fd26 sd s1,184(sp) + c004f15c: f94a sd s2,176(sp) + c004f15e: f54e sd s3,168(sp) + c004f160: f152 sd s4,160(sp) + c004f162: ed56 sd s5,152(sp) + c004f164: e586 sd ra,200(sp) + c004f166: 8abe mv s5,a5 + c004f168: e95a sd s6,144(sp) + c004f16a: e55e sd s7,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4030 if ((n2 - n1) == 1) { - c004ef9c: 40d70933 sub s2,a4,a3 - c004efa0: 4785 li a5,1 + c004f16c: 40d70933 sub s2,a4,a3 + c004f170: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4026 static void bf_const_log2_rec(bf_t *T, bf_t *P, bf_t *Q, limb_t n1, - c004efa2: 89aa mv s3,a0 - c004efa4: 84ae mv s1,a1 - c004efa6: 8a32 mv s4,a2 - c004efa8: 8436 mv s0,a3 + c004f172: 89aa mv s3,a0 + c004f174: 84ae mv s1,a1 + c004f176: 8a32 mv s4,a2 + c004f178: 8436 mv s0,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4030 if ((n2 - n1) == 1) { - c004efaa: 04f91763 bne s2,a5,c004eff8 + c004f17a: 04f91763 bne s2,a5,c004f1c8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4031 if (n1 == 0) { - c004efae: ee95 bnez a3,c004efea + c004f17e: ee95 bnez a3,c004f1ba /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4032 bf_set_ui(P, 3); - c004efb0: 458d li a1,3 - c004efb2: 8526 mv a0,s1 - c004efb4: 8c8fe0ef jal ra,c004d07c + c004f180: 458d li a1,3 + c004f182: 8526 mv a0,s1 + c004f184: 8c8fe0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4037 bf_set_ui(Q, 2 * n1 + 1); - c004efb8: 0406 slli s0,s0,0x1 - c004efba: 00140593 addi a1,s0,1 - c004efbe: 8552 mv a0,s4 - c004efc0: 8bcfe0ef jal ra,c004d07c + c004f188: 0406 slli s0,s0,0x1 + c004f18a: 00140593 addi a1,s0,1 + c004f18e: 8552 mv a0,s4 + c004f190: 8bcfe0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4038 Q->expn += 2; - c004efc4: 010a3783 ld a5,16(s4) + c004f194: 010a3783 ld a5,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4062 } - c004efc8: 640e ld s0,192(sp) - c004efca: 60ae ld ra,200(sp) + c004f198: 640e ld s0,192(sp) + c004f19a: 60ae ld ra,200(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4038 Q->expn += 2; - c004efcc: 0789 addi a5,a5,2 + c004f19c: 0789 addi a5,a5,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4062 } - c004efce: 794a ld s2,176(sp) - c004efd0: 6aea ld s5,152(sp) - c004efd2: 6b4a ld s6,144(sp) - c004efd4: 6baa ld s7,136(sp) + c004f19e: 794a ld s2,176(sp) + c004f1a0: 6aea ld s5,152(sp) + c004f1a2: 6b4a ld s6,144(sp) + c004f1a4: 6baa ld s7,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4038 Q->expn += 2; - c004efd6: 00fa3823 sd a5,16(s4) + c004f1a6: 00fa3823 sd a5,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4039 bf_set(T, P); - c004efda: 85a6 mv a1,s1 + c004f1aa: 85a6 mv a1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4062 } - c004efdc: 7a0a ld s4,160(sp) - c004efde: 74ea ld s1,184(sp) + c004f1ac: 7a0a ld s4,160(sp) + c004f1ae: 74ea ld s1,184(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4039 bf_set(T, P); - c004efe0: 854e mv a0,s3 + c004f1b0: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4062 } - c004efe2: 79aa ld s3,168(sp) - c004efe4: 6169 addi sp,sp,208 + c004f1b2: 79aa ld s3,168(sp) + c004f1b4: 6169 addi sp,sp,208 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4039 bf_set(T, P); - c004efe6: cdafe06f j c004d4c0 + c004f1b6: cdafe06f j c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4034 bf_set_ui(P, n1); - c004efea: 85b6 mv a1,a3 - c004efec: 8526 mv a0,s1 - c004efee: 88efe0ef jal ra,c004d07c + c004f1ba: 85b6 mv a1,a3 + c004f1bc: 8526 mv a0,s1 + c004f1be: 88efe0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4035 P->sign = 1; - c004eff2: 0124a423 sw s2,8(s1) - c004eff6: b7c9 j c004efb8 + c004f1c2: 0124a423 sw s2,8(s1) + c004f1c6: b7c9 j c004f188 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4046 m = n1 + ((n2 - n1) >> 1); - c004eff8: 00195913 srli s2,s2,0x1 - c004effc: 00d90433 add s0,s2,a3 - c004f000: 8b3a mv s6,a4 + c004f1c8: 00195913 srli s2,s2,0x1 + c004f1cc: 00d90433 add s0,s2,a3 + c004f1d0: 8b3a mv s6,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4047 bf_const_log2_rec(T, P, Q, n1, m, TRUE); - c004f002: 4785 li a5,1 - c004f004: 8722 mv a4,s0 + c004f1d2: 4785 li a5,1 + c004f1d4: 8722 mv a4,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4029 bf_context_t *s = T->ctx; - c004f006: 00053b83 ld s7,0(a0) + c004f1d6: 00053b83 ld s7,0(a0) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f00a: 597d li s2,-1 + c004f1da: 597d li s2,-1 bf_const_log2_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4047 bf_const_log2_rec(T, P, Q, n1, m, TRUE); - c004f00c: f7bff0ef jal ra,c004ef86 + c004f1dc: f7bff0ef jal ra,c004f156 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f010: 03f91793 slli a5,s2,0x3f - c004f014: ec3e sd a5,24(sp) - c004f016: e0be sd a5,64(sp) - c004f018: f4be sd a5,104(sp) + c004f1e0: 03f91793 slli a5,s2,0x3f + c004f1e4: ec3e sd a5,24(sp) + c004f1e6: e0be sd a5,64(sp) + c004f1e8: f4be sd a5,104(sp) bf_const_log2_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4051 bf_const_log2_rec(T1, P1, Q1, m, n2, need_P); - c004f01a: 875a mv a4,s6 - c004f01c: 87d6 mv a5,s5 - c004f01e: 86a2 mv a3,s0 - c004f020: 08b0 addi a2,sp,88 - c004f022: 180c addi a1,sp,48 - c004f024: 0028 addi a0,sp,8 + c004f1ea: 875a mv a4,s6 + c004f1ec: 87d6 mv a5,s5 + c004f1ee: 86a2 mv a3,s0 + c004f1f0: 08b0 addi a2,sp,88 + c004f1f2: 180c addi a1,sp,48 + c004f1f4: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f026: e45e sd s7,8(sp) + c004f1f6: e45e sd s7,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f028: c802 sw zero,16(sp) + c004f1f8: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f02a: f002 sd zero,32(sp) + c004f1fa: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f02c: f402 sd zero,40(sp) + c004f1fc: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f02e: f85e sd s7,48(sp) + c004f1fe: f85e sd s7,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f030: dc02 sw zero,56(sp) + c004f200: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f032: e482 sd zero,72(sp) + c004f202: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f034: e882 sd zero,80(sp) + c004f204: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f036: ecde sd s7,88(sp) + c004f206: ecde sd s7,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f038: d082 sw zero,96(sp) + c004f208: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f03a: f882 sd zero,112(sp) + c004f20a: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f03c: fc82 sd zero,120(sp) + c004f20c: fc82 sd zero,120(sp) bf_const_log2_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4051 bf_const_log2_rec(T1, P1, Q1, m, n2, need_P); - c004f03e: f49ff0ef jal ra,c004ef86 + c004f20e: f49ff0ef jal ra,c004f156 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4052 bf_mul(T, T, Q1, BF_PREC_INF, BF_RNDZ); - c004f042: 4705 li a4,1 - c004f044: 00295693 srli a3,s2,0x2 - c004f048: 08b0 addi a2,sp,88 - c004f04a: 85ce mv a1,s3 - c004f04c: 854e mv a0,s3 - c004f04e: 88dff0ef jal ra,c004e8da + c004f212: 4705 li a4,1 + c004f214: 00295693 srli a3,s2,0x2 + c004f218: 08b0 addi a2,sp,88 + c004f21a: 85ce mv a1,s3 + c004f21c: 854e mv a0,s3 + c004f21e: 88dff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4053 bf_mul(T1, T1, P, BF_PREC_INF, BF_RNDZ); - c004f052: 002c addi a1,sp,8 - c004f054: 4705 li a4,1 - c004f056: 00295693 srli a3,s2,0x2 - c004f05a: 8626 mv a2,s1 - c004f05c: 852e mv a0,a1 - c004f05e: 87dff0ef jal ra,c004e8da + c004f222: 002c addi a1,sp,8 + c004f224: 4705 li a4,1 + c004f226: 00295693 srli a3,s2,0x2 + c004f22a: 8626 mv a2,s1 + c004f22c: 852e mv a0,a1 + c004f22e: 87dff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4054 bf_add(T, T, T1, BF_PREC_INF, BF_RNDZ); - c004f062: 4705 li a4,1 - c004f064: 00295693 srli a3,s2,0x2 - c004f068: 0030 addi a2,sp,8 - c004f06a: 85ce mv a1,s3 - c004f06c: 854e mv a0,s3 - c004f06e: d89ff0ef jal ra,c004edf6 + c004f232: 4705 li a4,1 + c004f234: 00295693 srli a3,s2,0x2 + c004f238: 0030 addi a2,sp,8 + c004f23a: 85ce mv a1,s3 + c004f23c: 854e mv a0,s3 + c004f23e: d89ff0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4055 if (need_P) - c004f072: 000a8a63 beqz s5,c004f086 + c004f242: 000a8a63 beqz s5,c004f256 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4056 bf_mul(P, P, P1, BF_PREC_INF, BF_RNDZ); - c004f076: 4705 li a4,1 - c004f078: 00295693 srli a3,s2,0x2 - c004f07c: 1810 addi a2,sp,48 - c004f07e: 85a6 mv a1,s1 - c004f080: 8526 mv a0,s1 - c004f082: 859ff0ef jal ra,c004e8da + c004f246: 4705 li a4,1 + c004f248: 00295693 srli a3,s2,0x2 + c004f24c: 1810 addi a2,sp,48 + c004f24e: 85a6 mv a1,s1 + c004f250: 8526 mv a0,s1 + c004f252: 859ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4057 bf_mul(Q, Q, Q1, BF_PREC_INF, BF_RNDZ); - c004f086: 56fd li a3,-1 - c004f088: 08b0 addi a2,sp,88 - c004f08a: 85d2 mv a1,s4 - c004f08c: 4705 li a4,1 - c004f08e: 8289 srli a3,a3,0x2 - c004f090: 8552 mv a0,s4 - c004f092: 849ff0ef jal ra,c004e8da + c004f256: 56fd li a3,-1 + c004f258: 08b0 addi a2,sp,88 + c004f25a: 85d2 mv a1,s4 + c004f25c: 4705 li a4,1 + c004f25e: 8289 srli a3,a3,0x2 + c004f260: 8552 mv a0,s4 + c004f262: 849ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4058 bf_delete(T1); - c004f096: 0028 addi a0,sp,8 - c004f098: bf5fd0ef jal ra,c004cc8c + c004f266: 0028 addi a0,sp,8 + c004f268: bf5fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4059 bf_delete(P1); - c004f09c: 1808 addi a0,sp,48 - c004f09e: beffd0ef jal ra,c004cc8c + c004f26c: 1808 addi a0,sp,48 + c004f26e: beffd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4060 bf_delete(Q1); - c004f0a2: 08a8 addi a0,sp,88 - c004f0a4: be9fd0ef jal ra,c004cc8c + c004f272: 08a8 addi a0,sp,88 + c004f274: be9fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4062 } - c004f0a8: 60ae ld ra,200(sp) - c004f0aa: 640e ld s0,192(sp) - c004f0ac: 74ea ld s1,184(sp) - c004f0ae: 794a ld s2,176(sp) - c004f0b0: 79aa ld s3,168(sp) - c004f0b2: 7a0a ld s4,160(sp) - c004f0b4: 6aea ld s5,152(sp) - c004f0b6: 6b4a ld s6,144(sp) - c004f0b8: 6baa ld s7,136(sp) - c004f0ba: 6169 addi sp,sp,208 - c004f0bc: 8082 ret - -00000000c004f0be : + c004f278: 60ae ld ra,200(sp) + c004f27a: 640e ld s0,192(sp) + c004f27c: 74ea ld s1,184(sp) + c004f27e: 794a ld s2,176(sp) + c004f280: 79aa ld s3,168(sp) + c004f282: 7a0a ld s4,160(sp) + c004f284: 6aea ld s5,152(sp) + c004f286: 6b4a ld s6,144(sp) + c004f288: 6baa ld s7,136(sp) + c004f28a: 6169 addi sp,sp,208 + c004f28c: 8082 ret + +00000000c004f28e : bf_add_epsilon(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4285 static int bf_add_epsilon(bf_t *r, const bf_t *a, slimb_t e, int e_sign, - c004f0be: 7159 addi sp,sp,-112 - c004f0c0: e43e sd a5,8(sp) + c004f28e: 7159 addi sp,sp,-112 + c004f290: e43e sd a5,8(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f0c2: 57fd li a5,-1 + c004f292: 57fd li a5,-1 bf_add_epsilon(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4285 static int bf_add_epsilon(bf_t *r, const bf_t *a, slimb_t e, int e_sign, - c004f0c4: f0a2 sd s0,96(sp) + c004f294: f0a2 sd s0,96(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f0c6: ec2e sd a1,24(sp) + c004f296: ec2e sd a1,24(sp) bf_add_epsilon(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4285 static int bf_add_epsilon(bf_t *r, const bf_t *a, slimb_t e, int e_sign, - c004f0c8: 842a mv s0,a0 + c004f298: 842a mv s0,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f0ca: 17fe slli a5,a5,0x3f + c004f29a: 17fe slli a5,a5,0x3f bf_add_epsilon(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4292 bf_set_ui(T, 1); - c004f0cc: 4585 li a1,1 - c004f0ce: 0828 addi a0,sp,24 + c004f29c: 4585 li a1,1 + c004f29e: 0828 addi a0,sp,24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4285 static int bf_add_epsilon(bf_t *r, const bf_t *a, slimb_t e, int e_sign, - c004f0d0: f486 sd ra,104(sp) - c004f0d2: eca6 sd s1,88(sp) - c004f0d4: e8ca sd s2,80(sp) - c004f0d6: e4ce sd s3,72(sp) - c004f0d8: 84ba mv s1,a4 - c004f0da: 89b6 mv s3,a3 - c004f0dc: 8932 mv s2,a2 + c004f2a0: f486 sd ra,104(sp) + c004f2a2: eca6 sd s1,88(sp) + c004f2a4: e8ca sd s2,80(sp) + c004f2a6: e4ce sd s3,72(sp) + c004f2a8: 84ba mv s1,a4 + c004f2aa: 89b6 mv s3,a3 + c004f2ac: 8932 mv s2,a2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f0de: f43e sd a5,40(sp) + c004f2ae: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f0e0: d002 sw zero,32(sp) + c004f2b0: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f0e2: f802 sd zero,48(sp) + c004f2b2: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f0e4: fc02 sd zero,56(sp) + c004f2b4: fc02 sd zero,56(sp) bf_add_epsilon(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4292 bf_set_ui(T, 1); - c004f0e6: f97fd0ef jal ra,c004d07c + c004f2b6: f97fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4294 T->expn += e; - c004f0ea: 77a2 ld a5,40(sp) + c004f2ba: 77a2 ld a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4295 ret = bf_add(r, r, T, prec, flags); - c004f0ec: 6722 ld a4,8(sp) - c004f0ee: 86a6 mv a3,s1 + c004f2bc: 6722 ld a4,8(sp) + c004f2be: 86a6 mv a3,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4294 T->expn += e; - c004f0f0: 01278633 add a2,a5,s2 - c004f0f4: f432 sd a2,40(sp) + c004f2c0: 01278633 add a2,a5,s2 + c004f2c4: f432 sd a2,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4295 ret = bf_add(r, r, T, prec, flags); - c004f0f6: 85a2 mv a1,s0 - c004f0f8: 0830 addi a2,sp,24 - c004f0fa: 8522 mv a0,s0 + c004f2c6: 85a2 mv a1,s0 + c004f2c8: 0830 addi a2,sp,24 + c004f2ca: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4293 T->sign = e_sign; - c004f0fc: d04e sw s3,32(sp) + c004f2cc: d04e sw s3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4295 ret = bf_add(r, r, T, prec, flags); - c004f0fe: cf9ff0ef jal ra,c004edf6 - c004f102: 842a mv s0,a0 + c004f2ce: cf9ff0ef jal ra,c004efc6 + c004f2d2: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4296 bf_delete(T); - c004f104: 0828 addi a0,sp,24 - c004f106: b87fd0ef jal ra,c004cc8c + c004f2d4: 0828 addi a0,sp,24 + c004f2d6: b87fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4298 } - c004f10a: 70a6 ld ra,104(sp) - c004f10c: 8522 mv a0,s0 - c004f10e: 7406 ld s0,96(sp) - c004f110: 64e6 ld s1,88(sp) - c004f112: 6946 ld s2,80(sp) - c004f114: 69a6 ld s3,72(sp) - c004f116: 6165 addi sp,sp,112 - c004f118: 8082 ret + c004f2da: 70a6 ld ra,104(sp) + c004f2dc: 8522 mv a0,s0 + c004f2de: 7406 ld s0,96(sp) + c004f2e0: 64e6 ld s1,88(sp) + c004f2e2: 6946 ld s2,80(sp) + c004f2e4: 69a6 ld s3,72(sp) + c004f2e6: 6165 addi sp,sp,112 + c004f2e8: 8082 ret -00000000c004f11a : +00000000c004f2ea : bf_sub(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2234 return bf_op2(r, a, b, prec, flags, __bf_sub); - c004f11a: fffff797 auipc a5,0xfffff - c004f11e: c9a78793 addi a5,a5,-870 # c004ddb4 <__bf_sub> - c004f122: c1afe06f j c004d53c + c004f2ea: fffff797 auipc a5,0xfffff + c004f2ee: c9a78793 addi a5,a5,-870 # c004df84 <__bf_sub> + c004f2f2: c1afe06f j c004d70c -00000000c004f126 : +00000000c004f2f6 : bf_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2240 return bf_op2(r, a, b, prec, flags, __bf_div); - c004f126: fffff797 auipc a5,0xfffff - c004f12a: 61c78793 addi a5,a5,1564 # c004e742 <__bf_div> - c004f12e: c0efe06f j c004d53c + c004f2f6: fffff797 auipc a5,0xfffff + c004f2fa: 61c78793 addi a5,a5,1564 # c004e912 <__bf_div> + c004f2fe: c0efe06f j c004d70c -00000000c004f132 : +00000000c004f302 : bf_const_log2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4066 { - c004f132: 7159 addi sp,sp,-112 - c004f134: f486 sd ra,104(sp) - c004f136: f0a2 sd s0,96(sp) - c004f138: eca6 sd s1,88(sp) + c004f302: 7159 addi sp,sp,-112 + c004f304: f486 sd ra,104(sp) + c004f306: f0a2 sd s0,96(sp) + c004f308: eca6 sd s1,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4073 bf_init(T->ctx, P); - c004f13a: 6118 ld a4,0(a0) + c004f30a: 6118 ld a4,0(a0) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f13c: 57fd li a5,-1 - c004f13e: 17fe slli a5,a5,0x3f + c004f30c: 57fd li a5,-1 + c004f30e: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f140: e03a sd a4,0(sp) + c004f310: e03a sd a4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f142: e83e sd a5,16(sp) + c004f312: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f144: f43a sd a4,40(sp) + c004f314: f43a sd a4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f146: fc3e sd a5,56(sp) + c004f316: fc3e sd a5,56(sp) bf_const_log2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4071 w = prec + 15; - c004f148: 00f58713 addi a4,a1,15 + c004f318: 00f58713 addi a4,a1,15 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4072 N = w / 3 + 1; - c004f14c: 478d li a5,3 - c004f14e: 02f75733 divu a4,a4,a5 + c004f31c: 478d li a5,3 + c004f31e: 02f75733 divu a4,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4066 { - c004f152: 84ae mv s1,a1 + c004f322: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4075 bf_const_log2_rec(T, P, Q, 0, N, FALSE); - c004f154: 4781 li a5,0 - c004f156: 1030 addi a2,sp,40 - c004f158: 858a mv a1,sp - c004f15a: 4681 li a3,0 + c004f324: 4781 li a5,0 + c004f326: 1030 addi a2,sp,40 + c004f328: 858a mv a1,sp + c004f32a: 4681 li a3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4066 { - c004f15c: 842a mv s0,a0 + c004f32c: 842a mv s0,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f15e: c402 sw zero,8(sp) + c004f32e: c402 sw zero,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f160: ec02 sd zero,24(sp) + c004f330: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f162: f002 sd zero,32(sp) + c004f332: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f164: d802 sw zero,48(sp) + c004f334: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f166: e082 sd zero,64(sp) + c004f336: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f168: e482 sd zero,72(sp) + c004f338: e482 sd zero,72(sp) bf_const_log2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4075 bf_const_log2_rec(T, P, Q, 0, N, FALSE); - c004f16a: 0705 addi a4,a4,1 - c004f16c: e1bff0ef jal ra,c004ef86 + c004f33a: 0705 addi a4,a4,1 + c004f33c: e1bff0ef jal ra,c004f156 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4076 bf_div(T, T, Q, prec, BF_RNDN); - c004f170: 86a6 mv a3,s1 - c004f172: 1030 addi a2,sp,40 - c004f174: 85a2 mv a1,s0 - c004f176: 4701 li a4,0 - c004f178: 8522 mv a0,s0 - c004f17a: fadff0ef jal ra,c004f126 + c004f340: 86a6 mv a3,s1 + c004f342: 1030 addi a2,sp,40 + c004f344: 85a2 mv a1,s0 + c004f346: 4701 li a4,0 + c004f348: 8522 mv a0,s0 + c004f34a: fadff0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4077 bf_delete(P); - c004f17e: 850a mv a0,sp - c004f180: b0dfd0ef jal ra,c004cc8c + c004f34e: 850a mv a0,sp + c004f350: b0dfd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4078 bf_delete(Q); - c004f184: 1028 addi a0,sp,40 - c004f186: b07fd0ef jal ra,c004cc8c + c004f354: 1028 addi a0,sp,40 + c004f356: b07fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4079 } - c004f18a: 70a6 ld ra,104(sp) - c004f18c: 7406 ld s0,96(sp) - c004f18e: 64e6 ld s1,88(sp) - c004f190: 6165 addi sp,sp,112 - c004f192: 8082 ret + c004f35a: 70a6 ld ra,104(sp) + c004f35c: 7406 ld s0,96(sp) + c004f35e: 64e6 ld s1,88(sp) + c004f360: 6165 addi sp,sp,112 + c004f362: 8082 ret -00000000c004f194 : +00000000c004f364 : bf_mul_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2245 { - c004f194: 711d addi sp,sp,-96 - c004f196: ec86 sd ra,88(sp) - c004f198: e8a2 sd s0,80(sp) - c004f19a: e4a6 sd s1,72(sp) - c004f19c: e0ca sd s2,64(sp) + c004f364: 711d addi sp,sp,-96 + c004f366: ec86 sd ra,88(sp) + c004f368: e8a2 sd s0,80(sp) + c004f36a: e4a6 sd s1,72(sp) + c004f36c: e0ca sd s2,64(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f19e: 611c ld a5,0(a0) + c004f36e: 611c ld a5,0(a0) bf_mul_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2245 { - c004f1a0: 84aa mv s1,a0 - c004f1a2: 892e mv s2,a1 + c004f370: 84aa mv s1,a0 + c004f372: 892e mv s2,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f1a4: ec3e sd a5,24(sp) + c004f374: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f1a6: 57fd li a5,-1 - c004f1a8: 17fe slli a5,a5,0x3f + c004f376: 57fd li a5,-1 + c004f378: 17fe slli a5,a5,0x3f bf_mul_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2249 ret = bf_set_ui(&b, b1); - c004f1aa: 85b2 mv a1,a2 - c004f1ac: 0828 addi a0,sp,24 + c004f37a: 85b2 mv a1,a2 + c004f37c: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f1ae: f43e sd a5,40(sp) + c004f37e: f43e sd a5,40(sp) bf_mul_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2245 { - c004f1b0: e436 sd a3,8(sp) - c004f1b2: e03a sd a4,0(sp) + c004f380: e436 sd a3,8(sp) + c004f382: e03a sd a4,0(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f1b4: d002 sw zero,32(sp) + c004f384: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f1b6: f802 sd zero,48(sp) + c004f386: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f1b8: fc02 sd zero,56(sp) + c004f388: fc02 sd zero,56(sp) bf_mul_ui(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2249 ret = bf_set_ui(&b, b1); - c004f1ba: ec3fd0ef jal ra,c004d07c + c004f38a: ec3fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2250 ret |= bf_mul(r, a, &b, prec, flags); - c004f1be: 6702 ld a4,0(sp) - c004f1c0: 66a2 ld a3,8(sp) - c004f1c2: 0830 addi a2,sp,24 - c004f1c4: 85ca mv a1,s2 + c004f38e: 6702 ld a4,0(sp) + c004f390: 66a2 ld a3,8(sp) + c004f392: 0830 addi a2,sp,24 + c004f394: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2249 ret = bf_set_ui(&b, b1); - c004f1c6: 842a mv s0,a0 + c004f396: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2250 ret |= bf_mul(r, a, &b, prec, flags); - c004f1c8: 8526 mv a0,s1 - c004f1ca: f10ff0ef jal ra,c004e8da - c004f1ce: 8c49 or s0,s0,a0 + c004f398: 8526 mv a0,s1 + c004f39a: f10ff0ef jal ra,c004eaaa + c004f39e: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2251 bf_delete(&b); - c004f1d0: 0828 addi a0,sp,24 - c004f1d2: abbfd0ef jal ra,c004cc8c + c004f3a0: 0828 addi a0,sp,24 + c004f3a2: abbfd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2250 ret |= bf_mul(r, a, &b, prec, flags); - c004f1d6: 2401 sext.w s0,s0 + c004f3a6: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2253 } - c004f1d8: 60e6 ld ra,88(sp) - c004f1da: 8522 mv a0,s0 - c004f1dc: 6446 ld s0,80(sp) - c004f1de: 64a6 ld s1,72(sp) - c004f1e0: 6906 ld s2,64(sp) - c004f1e2: 6125 addi sp,sp,96 - c004f1e4: 8082 ret + c004f3a8: 60e6 ld ra,88(sp) + c004f3aa: 8522 mv a0,s0 + c004f3ac: 6446 ld s0,80(sp) + c004f3ae: 64a6 ld s1,72(sp) + c004f3b0: 6906 ld s2,64(sp) + c004f3b2: 6125 addi sp,sp,96 + c004f3b4: 8082 ret -00000000c004f1e6 : +00000000c004f3b6 : chud_bs(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4088 static void chud_bs(bf_t *P, bf_t *Q, bf_t *G, int64_t a, int64_t b, int need_g, - c004f1e6: 7131 addi sp,sp,-192 - c004f1e8: f922 sd s0,176(sp) - c004f1ea: 843a mv s0,a4 - c004f1ec: f526 sd s1,168(sp) - c004f1ee: f14a sd s2,160(sp) - c004f1f0: ed4e sd s3,152(sp) - c004f1f2: e556 sd s5,136(sp) - c004f1f4: e15a sd s6,128(sp) - c004f1f6: fd06 sd ra,184(sp) - c004f1f8: e952 sd s4,144(sp) - c004f1fa: 597d li s2,-1 + c004f3b6: 7131 addi sp,sp,-192 + c004f3b8: f922 sd s0,176(sp) + c004f3ba: 843a mv s0,a4 + c004f3bc: f526 sd s1,168(sp) + c004f3be: f14a sd s2,160(sp) + c004f3c0: ed4e sd s3,152(sp) + c004f3c2: e556 sd s5,136(sp) + c004f3c4: e15a sd s6,128(sp) + c004f3c6: fd06 sd ra,184(sp) + c004f3c8: e952 sd s4,144(sp) + c004f3ca: 597d li s2,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4094 if (a == (b - 1)) { - c004f1fc: fff40813 addi a6,s0,-1 + c004f3cc: fff40813 addi a6,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4088 static void chud_bs(bf_t *P, bf_t *Q, bf_t *G, int64_t a, int64_t b, int need_g, - c004f200: 8b3e mv s6,a5 + c004f3d0: 8b3e mv s6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4091 bf_context_t *s = P->ctx; - c004f202: 6118 ld a4,0(a0) + c004f3d2: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4088 static void chud_bs(bf_t *P, bf_t *Q, bf_t *G, int64_t a, int64_t b, int need_g, - c004f204: 8aaa mv s5,a0 - c004f206: 89ae mv s3,a1 - c004f208: 84b2 mv s1,a2 - c004f20a: 03f91793 slli a5,s2,0x3f + c004f3d4: 8aaa mv s5,a0 + c004f3d6: 89ae mv s3,a1 + c004f3d8: 84b2 mv s1,a2 + c004f3da: 03f91793 slli a5,s2,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4094 if (a == (b - 1)) { - c004f20e: 10d81063 bne a6,a3,c004f30e + c004f3de: 10d81063 bne a6,a3,c004f4de /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4100 bf_mul_ui(G, G, 6 * b - 1, prec, BF_RNDN); - c004f212: 4a19 li s4,6 - c004f214: 03440a33 mul s4,s0,s4 + c004f3e2: 4a19 li s4,6 + c004f3e4: 03440a33 mul s4,s0,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4099 bf_set_ui(G, 2 * b - 1); - c004f218: 00141593 slli a1,s0,0x1 - c004f21c: 15fd addi a1,a1,-1 - c004f21e: 8532 mv a0,a2 + c004f3e8: 00141593 slli a1,s0,0x1 + c004f3ec: 15fd addi a1,a1,-1 + c004f3ee: 8532 mv a0,a2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f220: e0be sd a5,64(sp) - c004f222: f4be sd a5,104(sp) + c004f3f0: e0be sd a5,64(sp) + c004f3f2: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f224: f83a sd a4,48(sp) - c004f226: ecba sd a4,88(sp) + c004f3f4: f83a sd a4,48(sp) + c004f3f6: ecba sd a4,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f228: dc02 sw zero,56(sp) + c004f3f8: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f22a: e482 sd zero,72(sp) + c004f3fa: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f22c: e882 sd zero,80(sp) + c004f3fc: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f22e: d082 sw zero,96(sp) + c004f3fe: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f230: f882 sd zero,112(sp) + c004f400: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f232: fc82 sd zero,120(sp) + c004f402: fc82 sd zero,120(sp) chud_bs(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4099 bf_set_ui(G, 2 * b - 1); - c004f234: e49fd0ef jal ra,c004d07c + c004f404: e49fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4100 bf_mul_ui(G, G, 6 * b - 1, prec, BF_RNDN); - c004f238: 4701 li a4,0 - c004f23a: 00295693 srli a3,s2,0x2 - c004f23e: fffa0613 addi a2,s4,-1 - c004f242: 85a6 mv a1,s1 - c004f244: 8526 mv a0,s1 - c004f246: f4fff0ef jal ra,c004f194 + c004f408: 4701 li a4,0 + c004f40a: 00295693 srli a3,s2,0x2 + c004f40e: fffa0613 addi a2,s4,-1 + c004f412: 85a6 mv a1,s1 + c004f414: 8526 mv a0,s1 + c004f416: f4fff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4101 bf_mul_ui(G, G, 6 * b - 5, prec, BF_RNDN); - c004f24a: 4701 li a4,0 - c004f24c: 00295693 srli a3,s2,0x2 - c004f250: ffba0613 addi a2,s4,-5 - c004f254: 85a6 mv a1,s1 - c004f256: 8526 mv a0,s1 - c004f258: f3dff0ef jal ra,c004f194 + c004f41a: 4701 li a4,0 + c004f41c: 00295693 srli a3,s2,0x2 + c004f420: ffba0613 addi a2,s4,-5 + c004f424: 85a6 mv a1,s1 + c004f426: 8526 mv a0,s1 + c004f428: f3dff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4102 bf_set_ui(&T0, CHUD_B); - c004f25c: 207e35b7 lui a1,0x207e3 - c004f260: da658593 addi a1,a1,-602 # 207e2da6 <__clzdi2-0x9f81d25a> - c004f264: 1808 addi a0,sp,48 - c004f266: e17fd0ef jal ra,c004d07c + c004f42c: 207e35b7 lui a1,0x207e3 + c004f430: da658593 addi a1,a1,-602 # 207e2da6 <__clzdi2-0x9f81d25a> + c004f434: 1808 addi a0,sp,48 + c004f436: e17fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4103 bf_mul_ui(&T0, &T0, b, prec, BF_RNDN); - c004f26a: 180c addi a1,sp,48 - c004f26c: 4701 li a4,0 - c004f26e: 00295693 srli a3,s2,0x2 - c004f272: 8622 mv a2,s0 - c004f274: 852e mv a0,a1 - c004f276: f1fff0ef jal ra,c004f194 + c004f43a: 180c addi a1,sp,48 + c004f43c: 4701 li a4,0 + c004f43e: 00295693 srli a3,s2,0x2 + c004f442: 8622 mv a2,s0 + c004f444: 852e mv a0,a1 + c004f446: f1fff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4104 bf_set_ui(&T1, CHUD_A); - c004f27a: 00cf65b7 lui a1,0xcf6 - c004f27e: 37158593 addi a1,a1,881 # cf6371 <__clzdi2-0xbf309c8f> - c004f282: 08a8 addi a0,sp,88 - c004f284: df9fd0ef jal ra,c004d07c + c004f44a: 00cf65b7 lui a1,0xcf6 + c004f44e: 37158593 addi a1,a1,881 # cf6371 <__clzdi2-0xbf309c8f> + c004f452: 08a8 addi a0,sp,88 + c004f454: df9fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4105 bf_add(&T0, &T0, &T1, prec, BF_RNDN); - c004f288: 180c addi a1,sp,48 - c004f28a: 4701 li a4,0 - c004f28c: 00295693 srli a3,s2,0x2 - c004f290: 08b0 addi a2,sp,88 - c004f292: 852e mv a0,a1 - c004f294: b63ff0ef jal ra,c004edf6 + c004f458: 180c addi a1,sp,48 + c004f45a: 4701 li a4,0 + c004f45c: 00295693 srli a3,s2,0x2 + c004f460: 08b0 addi a2,sp,88 + c004f462: 852e mv a0,a1 + c004f464: b63ff0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4106 bf_mul(P, G, &T0, prec, BF_RNDN); - c004f298: 4701 li a4,0 - c004f29a: 00295693 srli a3,s2,0x2 - c004f29e: 1810 addi a2,sp,48 - c004f2a0: 85a6 mv a1,s1 - c004f2a2: 8556 mv a0,s5 - c004f2a4: e36ff0ef jal ra,c004e8da + c004f468: 4701 li a4,0 + c004f46a: 00295693 srli a3,s2,0x2 + c004f46e: 1810 addi a2,sp,48 + c004f470: 85a6 mv a1,s1 + c004f472: 8556 mv a0,s5 + c004f474: e36ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4107 P->sign = b & 1; - c004f2a8: 00147793 andi a5,s0,1 - c004f2ac: 00faa423 sw a5,8(s5) + c004f478: 00147793 andi a5,s0,1 + c004f47c: 00faa423 sw a5,8(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4109 bf_set_ui(Q, b); - c004f2b0: 85a2 mv a1,s0 - c004f2b2: 854e mv a0,s3 - c004f2b4: dc9fd0ef jal ra,c004d07c + c004f480: 85a2 mv a1,s0 + c004f482: 854e mv a0,s3 + c004f484: dc9fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4110 bf_mul_ui(Q, Q, b, prec, BF_RNDN); - c004f2b8: 4701 li a4,0 - c004f2ba: 00295693 srli a3,s2,0x2 - c004f2be: 8622 mv a2,s0 - c004f2c0: 85ce mv a1,s3 - c004f2c2: 854e mv a0,s3 - c004f2c4: ed1ff0ef jal ra,c004f194 + c004f488: 4701 li a4,0 + c004f48a: 00295693 srli a3,s2,0x2 + c004f48e: 8622 mv a2,s0 + c004f490: 85ce mv a1,s3 + c004f492: 854e mv a0,s3 + c004f494: ed1ff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4111 bf_mul_ui(Q, Q, b, prec, BF_RNDN); - c004f2c8: 4701 li a4,0 - c004f2ca: 00295693 srli a3,s2,0x2 - c004f2ce: 8622 mv a2,s0 - c004f2d0: 85ce mv a1,s3 - c004f2d2: 854e mv a0,s3 - c004f2d4: ec1ff0ef jal ra,c004f194 + c004f498: 4701 li a4,0 + c004f49a: 00295693 srli a3,s2,0x2 + c004f49e: 8622 mv a2,s0 + c004f4a0: 85ce mv a1,s3 + c004f4a2: 854e mv a0,s3 + c004f4a4: ec1ff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4112 bf_mul_ui(Q, Q, (uint64_t)CHUD_C * CHUD_C * CHUD_C / 24, prec, BF_RNDN); - c004f2d8: 4701 li a4,0 - c004f2da: 00295693 srli a3,s2,0x2 - c004f2de: 00025617 auipc a2,0x25 - c004f2e2: 59a63603 ld a2,1434(a2) # c0074878 <_erodata+0xf8> - c004f2e6: 85ce mv a1,s3 - c004f2e8: 854e mv a0,s3 - c004f2ea: eabff0ef jal ra,c004f194 + c004f4a8: 4701 li a4,0 + c004f4aa: 00295693 srli a3,s2,0x2 + c004f4ae: 00025617 auipc a2,0x25 + c004f4b2: 62a63603 ld a2,1578(a2) # c0074ad8 <_erodata+0xf8> + c004f4b6: 85ce mv a1,s3 + c004f4b8: 854e mv a0,s3 + c004f4ba: eabff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4113 bf_delete(&T0); - c004f2ee: 1808 addi a0,sp,48 - c004f2f0: 99dfd0ef jal ra,c004cc8c + c004f4be: 1808 addi a0,sp,48 + c004f4c0: 99dfd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4140 bf_delete(&G2); - c004f2f4: 08a8 addi a0,sp,88 - c004f2f6: 997fd0ef jal ra,c004cc8c + c004f4c4: 08a8 addi a0,sp,88 + c004f4c6: 997fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4142 } - c004f2fa: 70ea ld ra,184(sp) - c004f2fc: 744a ld s0,176(sp) - c004f2fe: 74aa ld s1,168(sp) - c004f300: 790a ld s2,160(sp) - c004f302: 69ea ld s3,152(sp) - c004f304: 6a4a ld s4,144(sp) - c004f306: 6aaa ld s5,136(sp) - c004f308: 6b0a ld s6,128(sp) - c004f30a: 6129 addi sp,sp,192 - c004f30c: 8082 ret + c004f4ca: 70ea ld ra,184(sp) + c004f4cc: 744a ld s0,176(sp) + c004f4ce: 74aa ld s1,168(sp) + c004f4d0: 790a ld s2,160(sp) + c004f4d2: 69ea ld s3,152(sp) + c004f4d4: 6a4a ld s4,144(sp) + c004f4d6: 6aaa ld s5,136(sp) + c004f4d8: 6b0a ld s6,128(sp) + c004f4da: 6129 addi sp,sp,192 + c004f4dc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4122 c = (a + b) / 2; - c004f30e: 00d40a33 add s4,s0,a3 + c004f4de: 00d40a33 add s4,s0,a3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f312: ec3e sd a5,24(sp) - c004f314: e0be sd a5,64(sp) - c004f316: f4be sd a5,104(sp) + c004f4e2: ec3e sd a5,24(sp) + c004f4e4: e0be sd a5,64(sp) + c004f4e6: f4be sd a5,104(sp) chud_bs(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4122 c = (a + b) / 2; - c004f318: 4789 li a5,2 - c004f31a: 02fa4a33 div s4,s4,a5 + c004f4e8: 4789 li a5,2 + c004f4ea: 02fa4a33 div s4,s4,a5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f31e: e43a sd a4,8(sp) - c004f320: f83a sd a4,48(sp) - c004f322: ecba sd a4,88(sp) + c004f4ee: e43a sd a4,8(sp) + c004f4f0: f83a sd a4,48(sp) + c004f4f2: ecba sd a4,88(sp) chud_bs(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4123 chud_bs(P, Q, G, a, c, 1, prec); - c004f324: 4785 li a5,1 + c004f4f4: 4785 li a5,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f326: c802 sw zero,16(sp) + c004f4f6: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f328: f002 sd zero,32(sp) + c004f4f8: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f32a: f402 sd zero,40(sp) + c004f4fa: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f32c: dc02 sw zero,56(sp) + c004f4fc: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f32e: e482 sd zero,72(sp) + c004f4fe: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f330: e882 sd zero,80(sp) + c004f500: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f332: d082 sw zero,96(sp) + c004f502: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f334: f882 sd zero,112(sp) + c004f504: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f336: fc82 sd zero,120(sp) + c004f506: fc82 sd zero,120(sp) chud_bs(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4123 chud_bs(P, Q, G, a, c, 1, prec); - c004f338: 8752 mv a4,s4 - c004f33a: eadff0ef jal ra,c004f1e6 + c004f508: 8752 mv a4,s4 + c004f50a: eadff0ef jal ra,c004f3b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4124 chud_bs(&P2, &Q2, &G2, c, b, need_g, prec); - c004f33e: 8722 mv a4,s0 - c004f340: 86d2 mv a3,s4 - c004f342: 08b0 addi a2,sp,88 - c004f344: 180c addi a1,sp,48 - c004f346: 0028 addi a0,sp,8 - c004f348: 87da mv a5,s6 - c004f34a: e9dff0ef jal ra,c004f1e6 + c004f50e: 8722 mv a4,s0 + c004f510: 86d2 mv a3,s4 + c004f512: 08b0 addi a2,sp,88 + c004f514: 180c addi a1,sp,48 + c004f516: 0028 addi a0,sp,8 + c004f518: 87da mv a5,s6 + c004f51a: e9dff0ef jal ra,c004f3b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4129 bf_mul(&P2, &P2, G, prec, BF_RNDN); - c004f34e: 002c addi a1,sp,8 - c004f350: 4701 li a4,0 - c004f352: 00295693 srli a3,s2,0x2 - c004f356: 8626 mv a2,s1 - c004f358: 852e mv a0,a1 - c004f35a: d80ff0ef jal ra,c004e8da + c004f51e: 002c addi a1,sp,8 + c004f520: 4701 li a4,0 + c004f522: 00295693 srli a3,s2,0x2 + c004f526: 8626 mv a2,s1 + c004f528: 852e mv a0,a1 + c004f52a: d80ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4130 if (!need_g) - c004f35e: 000b1663 bnez s6,c004f36a + c004f52e: 000b1663 bnez s6,c004f53a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4131 bf_set_ui(G, 0); - c004f362: 4581 li a1,0 - c004f364: 8526 mv a0,s1 - c004f366: d17fd0ef jal ra,c004d07c + c004f532: 4581 li a1,0 + c004f534: 8526 mv a0,s1 + c004f536: d17fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4132 bf_mul(P, P, &Q2, prec, BF_RNDN); - c004f36a: 547d li s0,-1 - c004f36c: 4701 li a4,0 - c004f36e: 00245693 srli a3,s0,0x2 - c004f372: 1810 addi a2,sp,48 - c004f374: 85d6 mv a1,s5 - c004f376: 8556 mv a0,s5 - c004f378: d62ff0ef jal ra,c004e8da + c004f53a: 547d li s0,-1 + c004f53c: 4701 li a4,0 + c004f53e: 00245693 srli a3,s0,0x2 + c004f542: 1810 addi a2,sp,48 + c004f544: 85d6 mv a1,s5 + c004f546: 8556 mv a0,s5 + c004f548: d62ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4133 bf_add(P, P, &P2, prec, BF_RNDN); - c004f37c: 4701 li a4,0 - c004f37e: 00245693 srli a3,s0,0x2 - c004f382: 0030 addi a2,sp,8 - c004f384: 85d6 mv a1,s5 - c004f386: 8556 mv a0,s5 - c004f388: a6fff0ef jal ra,c004edf6 + c004f54c: 4701 li a4,0 + c004f54e: 00245693 srli a3,s0,0x2 + c004f552: 0030 addi a2,sp,8 + c004f554: 85d6 mv a1,s5 + c004f556: 8556 mv a0,s5 + c004f558: a6fff0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4134 bf_delete(&P2); - c004f38c: 0028 addi a0,sp,8 - c004f38e: 8fffd0ef jal ra,c004cc8c + c004f55c: 0028 addi a0,sp,8 + c004f55e: 8fffd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4136 bf_mul(Q, Q, &Q2, prec, BF_RNDN); - c004f392: 4701 li a4,0 - c004f394: 00245693 srli a3,s0,0x2 - c004f398: 1810 addi a2,sp,48 - c004f39a: 85ce mv a1,s3 - c004f39c: 854e mv a0,s3 - c004f39e: d3cff0ef jal ra,c004e8da + c004f562: 4701 li a4,0 + c004f564: 00245693 srli a3,s0,0x2 + c004f568: 1810 addi a2,sp,48 + c004f56a: 85ce mv a1,s3 + c004f56c: 854e mv a0,s3 + c004f56e: d3cff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4137 bf_delete(&Q2); - c004f3a2: 1808 addi a0,sp,48 - c004f3a4: 8e9fd0ef jal ra,c004cc8c + c004f572: 1808 addi a0,sp,48 + c004f574: 8e9fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4138 if (need_g) - c004f3a8: f40b06e3 beqz s6,c004f2f4 + c004f578: f40b06e3 beqz s6,c004f4c4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4139 bf_mul(G, G, &G2, prec, BF_RNDN); - c004f3ac: 4701 li a4,0 - c004f3ae: 00245693 srli a3,s0,0x2 - c004f3b2: 08b0 addi a2,sp,88 - c004f3b4: 85a6 mv a1,s1 - c004f3b6: 8526 mv a0,s1 - c004f3b8: d22ff0ef jal ra,c004e8da - c004f3bc: bf25 j c004f2f4 - -00000000c004f3be : + c004f57c: 4701 li a4,0 + c004f57e: 00245693 srli a3,s0,0x2 + c004f582: 08b0 addi a2,sp,88 + c004f584: 85a6 mv a1,s1 + c004f586: 8526 mv a0,s1 + c004f588: d22ff0ef jal ra,c004eaaa + c004f58c: bf25 j c004f4c4 + +00000000c004f58e : bf_const_pi_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4147 { - c004f3be: 7159 addi sp,sp,-112 - c004f3c0: f486 sd ra,104(sp) - c004f3c2: f0a2 sd s0,96(sp) - c004f3c4: eca6 sd s1,88(sp) - c004f3c6: e8ca sd s2,80(sp) + c004f58e: 7159 addi sp,sp,-112 + c004f590: f486 sd ra,104(sp) + c004f592: f0a2 sd s0,96(sp) + c004f594: eca6 sd s1,88(sp) + c004f596: e8ca sd s2,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4148 bf_context_t *s = Q->ctx; - c004f3c8: 6118 ld a4,0(a0) + c004f598: 6118 ld a4,0(a0) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f3ca: 57fd li a5,-1 - c004f3cc: 17fe slli a5,a5,0x3f + c004f59a: 57fd li a5,-1 + c004f59c: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f3ce: e03a sd a4,0(sp) - c004f3d0: f43a sd a4,40(sp) + c004f59e: e03a sd a4,0(sp) + c004f5a0: f43a sd a4,40(sp) bf_const_pi_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4153 n = prec / CHUD_BITS_PER_TERM + 1; - c004f3d2: 02f00713 li a4,47 - c004f3d6: 02e5d733 divu a4,a1,a4 + c004f5a2: 02f00713 li a4,47 + c004f5a6: 02e5d733 divu a4,a1,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4147 { - c004f3da: 842a mv s0,a0 + c004f5aa: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4155 prec1 = prec + 32; - c004f3dc: 02058913 addi s2,a1,32 + c004f5ac: 02058913 addi s2,a1,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4147 { - c004f3e0: 84ae mv s1,a1 + c004f5b0: 84ae mv s1,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f3e2: e83e sd a5,16(sp) - c004f3e4: fc3e sd a5,56(sp) + c004f5b2: e83e sd a5,16(sp) + c004f5b4: fc3e sd a5,56(sp) bf_const_pi_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4160 chud_bs(&P, Q, &G, 0, n, 0, BF_PREC_INF); - c004f3e6: 1030 addi a2,sp,40 - c004f3e8: 4781 li a5,0 - c004f3ea: 85aa mv a1,a0 - c004f3ec: 4681 li a3,0 - c004f3ee: 850a mv a0,sp + c004f5b6: 1030 addi a2,sp,40 + c004f5b8: 4781 li a5,0 + c004f5ba: 85aa mv a1,a0 + c004f5bc: 4681 li a3,0 + c004f5be: 850a mv a0,sp bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f3f0: c402 sw zero,8(sp) + c004f5c0: c402 sw zero,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f3f2: ec02 sd zero,24(sp) + c004f5c2: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f3f4: f002 sd zero,32(sp) + c004f5c4: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f3f6: d802 sw zero,48(sp) + c004f5c6: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f3f8: e082 sd zero,64(sp) + c004f5c8: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f3fa: e482 sd zero,72(sp) + c004f5ca: e482 sd zero,72(sp) bf_const_pi_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4160 chud_bs(&P, Q, &G, 0, n, 0, BF_PREC_INF); - c004f3fc: 0705 addi a4,a4,1 - c004f3fe: de9ff0ef jal ra,c004f1e6 + c004f5cc: 0705 addi a4,a4,1 + c004f5ce: de9ff0ef jal ra,c004f3b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4162 bf_mul_ui(&G, Q, CHUD_A, prec1, BF_RNDN); - c004f402: 00cf6637 lui a2,0xcf6 - c004f406: 86ca mv a3,s2 - c004f408: 85a2 mv a1,s0 - c004f40a: 4701 li a4,0 - c004f40c: 37160613 addi a2,a2,881 # cf6371 <__clzdi2-0xbf309c8f> - c004f410: 1028 addi a0,sp,40 - c004f412: d83ff0ef jal ra,c004f194 + c004f5d2: 00cf6637 lui a2,0xcf6 + c004f5d6: 86ca mv a3,s2 + c004f5d8: 85a2 mv a1,s0 + c004f5da: 4701 li a4,0 + c004f5dc: 37160613 addi a2,a2,881 # cf6371 <__clzdi2-0xbf309c8f> + c004f5e0: 1028 addi a0,sp,40 + c004f5e2: d83ff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4163 bf_add(&P, &G, &P, prec1, BF_RNDN); - c004f416: 86ca mv a3,s2 - c004f418: 860a mv a2,sp - c004f41a: 102c addi a1,sp,40 - c004f41c: 4701 li a4,0 - c004f41e: 850a mv a0,sp - c004f420: 9d7ff0ef jal ra,c004edf6 + c004f5e6: 86ca mv a3,s2 + c004f5e8: 860a mv a2,sp + c004f5ea: 102c addi a1,sp,40 + c004f5ec: 4701 li a4,0 + c004f5ee: 850a mv a0,sp + c004f5f0: 9d7ff0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4164 bf_div(Q, Q, &P, prec1, BF_RNDF); - c004f424: 4719 li a4,6 - c004f426: 86ca mv a3,s2 - c004f428: 860a mv a2,sp - c004f42a: 85a2 mv a1,s0 - c004f42c: 8522 mv a0,s0 - c004f42e: cf9ff0ef jal ra,c004f126 + c004f5f4: 4719 li a4,6 + c004f5f6: 86ca mv a3,s2 + c004f5f8: 860a mv a2,sp + c004f5fa: 85a2 mv a1,s0 + c004f5fc: 8522 mv a0,s0 + c004f5fe: cf9ff0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4166 bf_set_ui(&P, CHUD_C); - c004f432: 0009c5b7 lui a1,0x9c - c004f436: 54058593 addi a1,a1,1344 # 9c540 <__clzdi2-0xbff63ac0> - c004f43a: 850a mv a0,sp - c004f43c: c41fd0ef jal ra,c004d07c + c004f602: 0009c5b7 lui a1,0x9c + c004f606: 54058593 addi a1,a1,1344 # 9c540 <__clzdi2-0xbff63ac0> + c004f60a: 850a mv a0,sp + c004f60c: c41fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4167 bf_sqrt(&G, &P, prec1, BF_RNDF); - c004f440: 864a mv a2,s2 - c004f442: 858a mv a1,sp - c004f444: 4699 li a3,6 - c004f446: 1028 addi a0,sp,40 - c004f448: 81bff0ef jal ra,c004ec62 + c004f610: 864a mv a2,s2 + c004f612: 858a mv a1,sp + c004f614: 4699 li a3,6 + c004f616: 1028 addi a0,sp,40 + c004f618: 81bff0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4168 bf_mul_ui(&G, &G, (uint64_t)CHUD_C / 12, prec1, BF_RNDF); - c004f44c: 102c addi a1,sp,40 - c004f44e: 6635 lui a2,0xd - c004f450: 86ca mv a3,s2 - c004f452: 4719 li a4,6 - c004f454: 07060613 addi a2,a2,112 # d070 <__clzdi2-0xbfff2f90> - c004f458: 852e mv a0,a1 - c004f45a: d3bff0ef jal ra,c004f194 + c004f61c: 102c addi a1,sp,40 + c004f61e: 6635 lui a2,0xd + c004f620: 86ca mv a3,s2 + c004f622: 4719 li a4,6 + c004f624: 07060613 addi a2,a2,112 # d070 <__clzdi2-0xbfff2f90> + c004f628: 852e mv a0,a1 + c004f62a: d3bff0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4169 bf_mul(Q, Q, &G, prec, BF_RNDN); - c004f45e: 86a6 mv a3,s1 - c004f460: 1030 addi a2,sp,40 - c004f462: 85a2 mv a1,s0 - c004f464: 4701 li a4,0 - c004f466: 8522 mv a0,s0 - c004f468: c72ff0ef jal ra,c004e8da + c004f62e: 86a6 mv a3,s1 + c004f630: 1030 addi a2,sp,40 + c004f632: 85a2 mv a1,s0 + c004f634: 4701 li a4,0 + c004f636: 8522 mv a0,s0 + c004f638: c72ff0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4170 bf_delete(&P); - c004f46c: 850a mv a0,sp - c004f46e: 81ffd0ef jal ra,c004cc8c + c004f63c: 850a mv a0,sp + c004f63e: 81ffd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4171 bf_delete(&G); - c004f472: 1028 addi a0,sp,40 - c004f474: 819fd0ef jal ra,c004cc8c + c004f642: 1028 addi a0,sp,40 + c004f644: 819fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4172 } - c004f478: 70a6 ld ra,104(sp) - c004f47a: 7406 ld s0,96(sp) - c004f47c: 64e6 ld s1,88(sp) - c004f47e: 6946 ld s2,80(sp) - c004f480: 6165 addi sp,sp,112 - c004f482: 8082 ret + c004f648: 70a6 ld ra,104(sp) + c004f64a: 7406 ld s0,96(sp) + c004f64c: 64e6 ld s1,88(sp) + c004f64e: 6946 ld s2,80(sp) + c004f650: 6165 addi sp,sp,112 + c004f652: 8082 ret -00000000c004f484 : +00000000c004f654 : bf_mul_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2257 { - c004f484: 711d addi sp,sp,-96 - c004f486: ec86 sd ra,88(sp) - c004f488: e8a2 sd s0,80(sp) - c004f48a: e4a6 sd s1,72(sp) - c004f48c: e0ca sd s2,64(sp) + c004f654: 711d addi sp,sp,-96 + c004f656: ec86 sd ra,88(sp) + c004f658: e8a2 sd s0,80(sp) + c004f65a: e4a6 sd s1,72(sp) + c004f65c: e0ca sd s2,64(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f48e: 611c ld a5,0(a0) + c004f65e: 611c ld a5,0(a0) bf_mul_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2257 { - c004f490: 84aa mv s1,a0 - c004f492: 892e mv s2,a1 + c004f660: 84aa mv s1,a0 + c004f662: 892e mv s2,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f494: ec3e sd a5,24(sp) + c004f664: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f496: 57fd li a5,-1 - c004f498: 17fe slli a5,a5,0x3f + c004f666: 57fd li a5,-1 + c004f668: 17fe slli a5,a5,0x3f bf_mul_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2261 ret = bf_set_si(&b, b1); - c004f49a: 85b2 mv a1,a2 - c004f49c: 0828 addi a0,sp,24 + c004f66a: 85b2 mv a1,a2 + c004f66c: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f49e: f43e sd a5,40(sp) + c004f66e: f43e sd a5,40(sp) bf_mul_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2257 { - c004f4a0: e436 sd a3,8(sp) - c004f4a2: e03a sd a4,0(sp) + c004f670: e436 sd a3,8(sp) + c004f672: e03a sd a4,0(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f4a4: d002 sw zero,32(sp) + c004f674: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f4a6: f802 sd zero,48(sp) + c004f676: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f4a8: fc02 sd zero,56(sp) + c004f678: fc02 sd zero,56(sp) bf_mul_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2261 ret = bf_set_si(&b, b1); - c004f4aa: c31fd0ef jal ra,c004d0da + c004f67a: c31fd0ef jal ra,c004d2aa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2262 ret |= bf_mul(r, a, &b, prec, flags); - c004f4ae: 6702 ld a4,0(sp) - c004f4b0: 66a2 ld a3,8(sp) - c004f4b2: 0830 addi a2,sp,24 - c004f4b4: 85ca mv a1,s2 + c004f67e: 6702 ld a4,0(sp) + c004f680: 66a2 ld a3,8(sp) + c004f682: 0830 addi a2,sp,24 + c004f684: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2261 ret = bf_set_si(&b, b1); - c004f4b6: 842a mv s0,a0 + c004f686: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2262 ret |= bf_mul(r, a, &b, prec, flags); - c004f4b8: 8526 mv a0,s1 - c004f4ba: c20ff0ef jal ra,c004e8da - c004f4be: 8c49 or s0,s0,a0 + c004f688: 8526 mv a0,s1 + c004f68a: c20ff0ef jal ra,c004eaaa + c004f68e: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2263 bf_delete(&b); - c004f4c0: 0828 addi a0,sp,24 - c004f4c2: fcafd0ef jal ra,c004cc8c + c004f690: 0828 addi a0,sp,24 + c004f692: fcafd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2262 ret |= bf_mul(r, a, &b, prec, flags); - c004f4c6: 2401 sext.w s0,s0 + c004f696: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2265 } - c004f4c8: 60e6 ld ra,88(sp) - c004f4ca: 8522 mv a0,s0 - c004f4cc: 6446 ld s0,80(sp) - c004f4ce: 64a6 ld s1,72(sp) - c004f4d0: 6906 ld s2,64(sp) - c004f4d2: 6125 addi sp,sp,96 - c004f4d4: 8082 ret + c004f698: 60e6 ld ra,88(sp) + c004f69a: 8522 mv a0,s0 + c004f69c: 6446 ld s0,80(sp) + c004f69e: 64a6 ld s1,72(sp) + c004f6a0: 6906 ld s2,64(sp) + c004f6a2: 6125 addi sp,sp,96 + c004f6a4: 8082 ret -00000000c004f4d6 : +00000000c004f6a6 : bf_add_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2269 { - c004f4d6: 711d addi sp,sp,-96 - c004f4d8: ec86 sd ra,88(sp) - c004f4da: e8a2 sd s0,80(sp) - c004f4dc: e4a6 sd s1,72(sp) - c004f4de: e0ca sd s2,64(sp) + c004f6a6: 711d addi sp,sp,-96 + c004f6a8: ec86 sd ra,88(sp) + c004f6aa: e8a2 sd s0,80(sp) + c004f6ac: e4a6 sd s1,72(sp) + c004f6ae: e0ca sd s2,64(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f4e0: 611c ld a5,0(a0) + c004f6b0: 611c ld a5,0(a0) bf_add_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2269 { - c004f4e2: 84aa mv s1,a0 - c004f4e4: 892e mv s2,a1 + c004f6b2: 84aa mv s1,a0 + c004f6b4: 892e mv s2,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f4e6: ec3e sd a5,24(sp) + c004f6b6: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f4e8: 57fd li a5,-1 - c004f4ea: 17fe slli a5,a5,0x3f + c004f6b8: 57fd li a5,-1 + c004f6ba: 17fe slli a5,a5,0x3f bf_add_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2274 ret = bf_set_si(&b, b1); - c004f4ec: 85b2 mv a1,a2 - c004f4ee: 0828 addi a0,sp,24 + c004f6bc: 85b2 mv a1,a2 + c004f6be: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f4f0: f43e sd a5,40(sp) + c004f6c0: f43e sd a5,40(sp) bf_add_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2269 { - c004f4f2: e436 sd a3,8(sp) - c004f4f4: e03a sd a4,0(sp) + c004f6c2: e436 sd a3,8(sp) + c004f6c4: e03a sd a4,0(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f4f6: d002 sw zero,32(sp) + c004f6c6: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f4f8: f802 sd zero,48(sp) + c004f6c8: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f4fa: fc02 sd zero,56(sp) + c004f6ca: fc02 sd zero,56(sp) bf_add_si(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2274 ret = bf_set_si(&b, b1); - c004f4fc: bdffd0ef jal ra,c004d0da + c004f6cc: bdffd0ef jal ra,c004d2aa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2275 ret |= bf_add(r, a, &b, prec, flags); - c004f500: 6702 ld a4,0(sp) - c004f502: 66a2 ld a3,8(sp) - c004f504: 0830 addi a2,sp,24 - c004f506: 85ca mv a1,s2 + c004f6d0: 6702 ld a4,0(sp) + c004f6d2: 66a2 ld a3,8(sp) + c004f6d4: 0830 addi a2,sp,24 + c004f6d6: 85ca mv a1,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2274 ret = bf_set_si(&b, b1); - c004f508: 842a mv s0,a0 + c004f6d8: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2275 ret |= bf_add(r, a, &b, prec, flags); - c004f50a: 8526 mv a0,s1 - c004f50c: 8ebff0ef jal ra,c004edf6 - c004f510: 8c49 or s0,s0,a0 + c004f6da: 8526 mv a0,s1 + c004f6dc: 8ebff0ef jal ra,c004efc6 + c004f6e0: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2276 bf_delete(&b); - c004f512: 0828 addi a0,sp,24 - c004f514: f78fd0ef jal ra,c004cc8c + c004f6e2: 0828 addi a0,sp,24 + c004f6e4: f78fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2275 ret |= bf_add(r, a, &b, prec, flags); - c004f518: 2401 sext.w s0,s0 + c004f6e8: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2278 } - c004f51a: 60e6 ld ra,88(sp) - c004f51c: 8522 mv a0,s0 - c004f51e: 6446 ld s0,80(sp) - c004f520: 64a6 ld s1,72(sp) - c004f522: 6906 ld s2,64(sp) - c004f524: 6125 addi sp,sp,96 - c004f526: 8082 ret + c004f6ea: 60e6 ld ra,88(sp) + c004f6ec: 8522 mv a0,s0 + c004f6ee: 6446 ld s0,80(sp) + c004f6f0: 64a6 ld s1,72(sp) + c004f6f2: 6906 ld s2,64(sp) + c004f6f4: 6125 addi sp,sp,96 + c004f6f6: 8082 ret -00000000c004f528 : +00000000c004f6f8 : bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2345 { - c004f528: 7115 addi sp,sp,-224 - c004f52a: ed86 sd ra,216(sp) - c004f52c: e9a2 sd s0,208(sp) - c004f52e: e5a6 sd s1,200(sp) - c004f530: e1ca sd s2,192(sp) - c004f532: fd4e sd s3,184(sp) - c004f534: f952 sd s4,176(sp) - c004f536: f556 sd s5,168(sp) - c004f538: f15a sd s6,160(sp) - c004f53a: ed5e sd s7,152(sp) - c004f53c: e962 sd s8,144(sp) - c004f53e: e566 sd s9,136(sp) - c004f540: e16a sd s10,128(sp) - c004f542: fcee sd s11,120(sp) + c004f6f8: 7115 addi sp,sp,-224 + c004f6fa: ed86 sd ra,216(sp) + c004f6fc: e9a2 sd s0,208(sp) + c004f6fe: e5a6 sd s1,200(sp) + c004f700: e1ca sd s2,192(sp) + c004f702: fd4e sd s3,184(sp) + c004f704: f952 sd s4,176(sp) + c004f706: f556 sd s5,168(sp) + c004f708: f15a sd s6,160(sp) + c004f70a: ed5e sd s7,152(sp) + c004f70c: e962 sd s8,144(sp) + c004f70e: e566 sd s9,136(sp) + c004f710: e16a sd s10,128(sp) + c004f712: fcee sd s11,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2352 assert(r != a1 && r != b1); - c004f544: 00b50663 beq a0,a1,c004f550 - c004f548: 8aaa mv s5,a0 - c004f54a: 89b2 mv s3,a2 + c004f714: 00b50663 beq a0,a1,c004f720 + c004f718: 8aaa mv s5,a0 + c004f71a: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2352 (discriminator 2) - c004f54c: 00c51c63 bne a0,a2,c004f564 + c004f71c: 00c51c63 bne a0,a2,c004f734 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2352 (discriminator 3) - c004f550: 6585 lui a1,0x1 - c004f552: 4601 li a2,0 - c004f554: 93058593 addi a1,a1,-1744 # 930 <__clzdi2-0xbffff6d0> - c004f558: 00023517 auipc a0,0x23 - c004f55c: dc050513 addi a0,a0,-576 # c0072318 - c004f560: 4b8040ef jal ra,c0053a18 <__assert> + c004f720: 6585 lui a1,0x1 + c004f722: 4601 li a2,0 + c004f724: 93058593 addi a1,a1,-1744 # 930 <__clzdi2-0xbffff6d0> + c004f728: 00023517 auipc a0,0x23 + c004f72c: e5050513 addi a0,a0,-432 # c0072578 + c004f730: 4b8040ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2354 (discriminator 4) if (a1->expn <= 0) - c004f564: 699c ld a5,16(a1) - c004f566: 8a2e mv s4,a1 - c004f568: 8bb6 mv s7,a3 + c004f734: 699c ld a5,16(a1) + c004f736: 8a2e mv s4,a1 + c004f738: 8bb6 mv s7,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2355 (discriminator 4) a_sign = 0; /* minus zero is considered as positive */ - c004f56a: 4901 li s2,0 + c004f73a: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2354 (discriminator 4) if (a1->expn <= 0) - c004f56c: 00f05463 blez a5,c004f574 + c004f73c: 00f05463 blez a5,c004f744 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2357 a_sign = a1->sign; - c004f570: 0085a903 lw s2,8(a1) + c004f740: 0085a903 lw s2,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2359 if (b1->expn <= 0) - c004f574: 0109b783 ld a5,16(s3) - c004f578: 1cf05963 blez a5,c004f74a + c004f744: 0109b783 ld a5,16(s3) + c004f748: 1cf05963 blez a5,c004f91a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2362 b_sign = b1->sign; - c004f57c: 0089a483 lw s1,8(s3) + c004f74c: 0089a483 lw s1,8(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2364 if (a_sign) { - c004f580: 02090763 beqz s2,c004f5ae + c004f750: 02090763 beqz s2,c004f77e bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f584: 000ab783 ld a5,0(s5) + c004f754: 000ab783 ld a5,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f588: 56fd li a3,-1 + c004f758: 56fd li a3,-1 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2367 if (bf_add_si(a, a1, 1, BF_PREC_INF, BF_RNDZ)) { - c004f58a: 4705 li a4,1 + c004f75a: 4705 li a4,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f58c: e4be sd a5,72(sp) + c004f75c: e4be sd a5,72(sp) bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2367 if (bf_add_si(a, a1, 1, BF_PREC_INF, BF_RNDZ)) { - c004f58e: 4605 li a2,1 + c004f75e: 4605 li a2,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f590: 03f69793 slli a5,a3,0x3f + c004f760: 03f69793 slli a5,a3,0x3f bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2367 if (bf_add_si(a, a1, 1, BF_PREC_INF, BF_RNDZ)) { - c004f594: 85d2 mv a1,s4 - c004f596: 8289 srli a3,a3,0x2 - c004f598: 00a8 addi a0,sp,72 + c004f764: 85d2 mv a1,s4 + c004f766: 8289 srli a3,a3,0x2 + c004f768: 00a8 addi a0,sp,72 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f59a: c882 sw zero,80(sp) + c004f76a: c882 sw zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f59c: ecbe sd a5,88(sp) + c004f76c: ecbe sd a5,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f59e: f082 sd zero,96(sp) + c004f76e: f082 sd zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f5a0: f482 sd zero,104(sp) + c004f770: f482 sd zero,104(sp) bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2367 if (bf_add_si(a, a1, 1, BF_PREC_INF, BF_RNDZ)) { - c004f5a2: f35ff0ef jal ra,c004f4d6 - c004f5a6: 18051963 bnez a0,c004f738 + c004f772: f35ff0ef jal ra,c004f6a6 + c004f776: 18051963 bnez a0,c004f908 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2365 a = &a1_s; - c004f5aa: 04810a13 addi s4,sp,72 + c004f77a: 04810a13 addi s4,sp,72 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2375 if (b_sign) { - c004f5ae: c495 beqz s1,c004f5da + c004f77e: c495 beqz s1,c004f7aa bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f5b0: 000ab783 ld a5,0(s5) + c004f780: 000ab783 ld a5,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f5b4: 56fd li a3,-1 + c004f784: 56fd li a3,-1 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2378 if (bf_add_si(b, b1, 1, BF_PREC_INF, BF_RNDZ)) - c004f5b6: 85ce mv a1,s3 + c004f786: 85ce mv a1,s3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f5b8: f03e sd a5,32(sp) + c004f788: f03e sd a5,32(sp) bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2378 if (bf_add_si(b, b1, 1, BF_PREC_INF, BF_RNDZ)) - c004f5ba: 4705 li a4,1 + c004f78a: 4705 li a4,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f5bc: 03f69793 slli a5,a3,0x3f + c004f78c: 03f69793 slli a5,a3,0x3f bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2378 if (bf_add_si(b, b1, 1, BF_PREC_INF, BF_RNDZ)) - c004f5c0: 4605 li a2,1 - c004f5c2: 8289 srli a3,a3,0x2 - c004f5c4: 1008 addi a0,sp,32 + c004f790: 4605 li a2,1 + c004f792: 8289 srli a3,a3,0x2 + c004f794: 1008 addi a0,sp,32 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f5c6: d402 sw zero,40(sp) + c004f796: d402 sw zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f5c8: f83e sd a5,48(sp) + c004f798: f83e sd a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f5ca: fc02 sd zero,56(sp) + c004f79a: fc02 sd zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f5cc: e082 sd zero,64(sp) + c004f79c: e082 sd zero,64(sp) bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2378 if (bf_add_si(b, b1, 1, BF_PREC_INF, BF_RNDZ)) - c004f5ce: f09ff0ef jal ra,c004f4d6 + c004f79e: f09ff0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2376 b = &b1_s; - c004f5d2: 02010993 addi s3,sp,32 + c004f7a2: 02010993 addi s3,sp,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2378 if (bf_add_si(b, b1, 1, BF_PREC_INF, BF_RNDZ)) - c004f5d6: 16051463 bnez a0,c004f73e + c004f7a6: 16051463 bnez a0,c004f90e bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2333 switch(op) { - c004f5da: 0c0b8f63 beqz s7,c004f6b8 - c004f5de: 4785 li a5,1 - c004f5e0: 0efb8663 beq s7,a5,c004f6cc + c004f7aa: 0c0b8f63 beqz s7,c004f888 + c004f7ae: 4785 li a5,1 + c004f7b0: 0efb8663 beq s7,a5,c004f89c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2340 return a & b; - c004f5e4: 0124fc33 and s8,s1,s2 + c004f7b4: 0124fc33 and s8,s1,s2 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2385 if (op == BF_LOGIC_AND && r_sign == 0) { - c004f5e8: 0c0c1a63 bnez s8,c004f6bc + c004f7b8: 0c0c1a63 bnez s8,c004f88c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2387 if (a_sign == 0 && b_sign == 0) - c004f5ec: 0e091363 bnez s2,c004f6d2 + c004f7bc: 0e091363 bnez s2,c004f8a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2388 (discriminator 1) l = bf_min(a->expn, b->expn); - c004f5f0: 010a3783 ld a5,16(s4) + c004f7c0: 010a3783 ld a5,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2387 (discriminator 1) if (a_sign == 0 && b_sign == 0) - c004f5f4: e499 bnez s1,c004f602 + c004f7c4: e499 bnez s1,c004f7d2 bf_min(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:188 if (a < b) - c004f5f6: 0109b703 ld a4,16(s3) - c004f5fa: 00f75363 bge a4,a5,c004f600 - c004f5fe: 87ba mv a5,a4 + c004f7c6: 0109b703 ld a4,16(s3) + c004f7ca: 00f75363 bge a4,a5,c004f7d0 + c004f7ce: 87ba mv a5,a4 bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2340 return a & b; - c004f600: 4c01 li s8,0 + c004f7d0: 4c01 li s8,0 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2397 l = (bf_max(l, 1) + LIMB_BITS - 1) / LIMB_BITS; - c004f602: 00f04363 bgtz a5,c004f608 - c004f606: 4785 li a5,1 - c004f608: 03f78793 addi a5,a5,63 - c004f60c: 04000413 li s0,64 - c004f610: 0287c433 div s0,a5,s0 + c004f7d2: 00f04363 bgtz a5,c004f7d8 + c004f7d6: 4785 li a5,1 + c004f7d8: 03f78793 addi a5,a5,63 + c004f7dc: 04000413 li s0,64 + c004f7e0: 0287c433 div s0,a5,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2398 if (bf_resize(r, l)) - c004f614: 8556 mv a0,s5 - c004f616: 85a2 mv a1,s0 - c004f618: a0bfd0ef jal ra,c004d022 - c004f61c: 8b2a mv s6,a0 - c004f61e: 12051063 bnez a0,c004f73e + c004f7e4: 8556 mv a0,s5 + c004f7e6: 85a2 mv a1,s0 + c004f7e8: a0bfd0ef jal ra,c004d1f2 + c004f7ec: 8b2a mv s6,a0 + c004f7ee: 12051063 bnez a0,c004f90e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2400 a_bit_offset = a->len * LIMB_BITS - a->expn; - c004f622: 018a3d83 ld s11,24(s4) - c004f626: 010a3783 ld a5,16(s4) + c004f7f2: 018a3d83 ld s11,24(s4) + c004f7f6: 010a3783 ld a5,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2401 b_bit_offset = b->len * LIMB_BITS - b->expn; - c004f62a: 0189bd03 ld s10,24(s3) + c004f7fa: 0189bd03 ld s10,24(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2400 a_bit_offset = a->len * LIMB_BITS - a->expn; - c004f62e: 0d9a slli s11,s11,0x6 - c004f630: 40fd8db3 sub s11,s11,a5 + c004f7fe: 0d9a slli s11,s11,0x6 + c004f800: 40fd8db3 sub s11,s11,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2401 b_bit_offset = b->len * LIMB_BITS - b->expn; - c004f634: 0109b783 ld a5,16(s3) - c004f638: 0d1a slli s10,s10,0x6 + c004f804: 0109b783 ld a5,16(s3) + c004f808: 0d1a slli s10,s10,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2402 v1_mask = -a_sign; - c004f63a: 41200933 neg s2,s2 + c004f80a: 41200933 neg s2,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2401 b_bit_offset = b->len * LIMB_BITS - b->expn; - c004f63e: 40fd0d33 sub s10,s10,a5 + c004f80e: 40fd0d33 sub s10,s10,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2403 v2_mask = -b_sign; - c004f642: 409006b3 neg a3,s1 + c004f812: 409006b3 neg a3,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2404 r_mask = -r_sign; - c004f646: 41800833 neg a6,s8 + c004f816: 41800833 neg a6,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2405 for(i = 0; i < l; i++) { - c004f64a: 4c81 li s9,0 + c004f81a: 4c81 li s9,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2405 (discriminator 1) - c004f64c: 088cc663 blt s9,s0,c004f6d8 + c004f81c: 088cc663 blt s9,s0,c004f8a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2410 r->expn = l * LIMB_BITS; - c004f650: 041a slli s0,s0,0x6 - c004f652: 008ab823 sd s0,16(s5) + c004f820: 041a slli s0,s0,0x6 + c004f822: 008ab823 sd s0,16(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2412 bf_normalize_and_round(r, BF_PREC_INF, BF_RNDZ); /* cannot fail */ - c004f656: 547d li s0,-1 + c004f826: 547d li s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2411 r->sign = r_sign; - c004f658: 018aa423 sw s8,8(s5) + c004f828: 018aa423 sw s8,8(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2412 bf_normalize_and_round(r, BF_PREC_INF, BF_RNDZ); /* cannot fail */ - c004f65c: 4605 li a2,1 - c004f65e: 00245593 srli a1,s0,0x2 - c004f662: 8556 mv a0,s5 - c004f664: f2ffd0ef jal ra,c004d592 + c004f82c: 4605 li a2,1 + c004f82e: 00245593 srli a1,s0,0x2 + c004f832: 8556 mv a0,s5 + c004f834: f2ffd0ef jal ra,c004d762 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2413 if (r_sign) { - c004f668: 000c0c63 beqz s8,c004f680 + c004f838: 000c0c63 beqz s8,c004f850 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2414 if (bf_add_si(r, r, -1, BF_PREC_INF, BF_RNDZ)) - c004f66c: 4705 li a4,1 - c004f66e: 00245693 srli a3,s0,0x2 - c004f672: 567d li a2,-1 - c004f674: 85d6 mv a1,s5 - c004f676: 8556 mv a0,s5 - c004f678: e5fff0ef jal ra,c004f4d6 - c004f67c: 8b2a mv s6,a0 - c004f67e: e161 bnez a0,c004f73e + c004f83c: 4705 li a4,1 + c004f83e: 00245693 srli a3,s0,0x2 + c004f842: 567d li a2,-1 + c004f844: 85d6 mv a1,s5 + c004f846: 8556 mv a0,s5 + c004f848: e5fff0ef jal ra,c004f6a6 + c004f84c: 8b2a mv s6,a0 + c004f84e: e161 bnez a0,c004f90e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2419 if (a == &a1_s) - c004f680: 00bc addi a5,sp,72 - c004f682: 00fa1563 bne s4,a5,c004f68c + c004f850: 00bc addi a5,sp,72 + c004f852: 00fa1563 bne s4,a5,c004f85c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2420 bf_delete(a); - c004f686: 8552 mv a0,s4 - c004f688: e04fd0ef jal ra,c004cc8c + c004f856: 8552 mv a0,s4 + c004f858: e04fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2421 if (b == &b1_s) - c004f68c: 101c addi a5,sp,32 - c004f68e: 00f99563 bne s3,a5,c004f698 + c004f85c: 101c addi a5,sp,32 + c004f85e: 00f99563 bne s3,a5,c004f868 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2422 bf_delete(b); - c004f692: 854e mv a0,s3 - c004f694: df8fd0ef jal ra,c004cc8c + c004f862: 854e mv a0,s3 + c004f864: df8fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2428 } - c004f698: 60ee ld ra,216(sp) - c004f69a: 644e ld s0,208(sp) - c004f69c: 64ae ld s1,200(sp) - c004f69e: 690e ld s2,192(sp) - c004f6a0: 79ea ld s3,184(sp) - c004f6a2: 7a4a ld s4,176(sp) - c004f6a4: 7aaa ld s5,168(sp) - c004f6a6: 6bea ld s7,152(sp) - c004f6a8: 6c4a ld s8,144(sp) - c004f6aa: 6caa ld s9,136(sp) - c004f6ac: 6d0a ld s10,128(sp) - c004f6ae: 7de6 ld s11,120(sp) - c004f6b0: 855a mv a0,s6 - c004f6b2: 7b0a ld s6,160(sp) - c004f6b4: 612d addi sp,sp,224 - c004f6b6: 8082 ret + c004f868: 60ee ld ra,216(sp) + c004f86a: 644e ld s0,208(sp) + c004f86c: 64ae ld s1,200(sp) + c004f86e: 690e ld s2,192(sp) + c004f870: 79ea ld s3,184(sp) + c004f872: 7a4a ld s4,176(sp) + c004f874: 7aaa ld s5,168(sp) + c004f876: 6bea ld s7,152(sp) + c004f878: 6c4a ld s8,144(sp) + c004f87a: 6caa ld s9,136(sp) + c004f87c: 6d0a ld s10,128(sp) + c004f87e: 7de6 ld s11,120(sp) + c004f880: 855a mv a0,s6 + c004f882: 7b0a ld s6,160(sp) + c004f884: 612d addi sp,sp,224 + c004f886: 8082 ret bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2335 return a | b; - c004f6b8: 0124ec33 or s8,s1,s2 + c004f888: 0124ec33 or s8,s1,s2 bf_max(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:180 if (a > b) - c004f6bc: 0109b703 ld a4,16(s3) - c004f6c0: 010a3783 ld a5,16(s4) - c004f6c4: f2e7dfe3 bge a5,a4,c004f602 - c004f6c8: 87ba mv a5,a4 - c004f6ca: bf25 j c004f602 + c004f88c: 0109b703 ld a4,16(s3) + c004f890: 010a3783 ld a5,16(s4) + c004f894: f2e7dfe3 bge a5,a4,c004f7d2 + c004f898: 87ba mv a5,a4 + c004f89a: bf25 j c004f7d2 bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2337 return a ^ b; - c004f6cc: 0124cc33 xor s8,s1,s2 - c004f6d0: b7f5 j c004f6bc + c004f89c: 0124cc33 xor s8,s1,s2 + c004f8a0: b7f5 j c004f88c bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2392 l = b->expn; - c004f6d2: 0109b783 ld a5,16(s3) - c004f6d6: b735 j c004f602 + c004f8a2: 0109b783 ld a5,16(s3) + c004f8a6: b735 j c004f7d2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2406 (discriminator 3) v1 = get_bits(a->tab, a->len, a_bit_offset + i * LIMB_BITS) ^ v1_mask; - c004f6d8: 018a3583 ld a1,24(s4) - c004f6dc: 020a3503 ld a0,32(s4) - c004f6e0: 006c9793 slli a5,s9,0x6 - c004f6e4: 00fd8633 add a2,s11,a5 - c004f6e8: ec42 sd a6,24(sp) - c004f6ea: e836 sd a3,16(sp) - c004f6ec: e43e sd a5,8(sp) - c004f6ee: ddefd0ef jal ra,c004cccc + c004f8a8: 018a3583 ld a1,24(s4) + c004f8ac: 020a3503 ld a0,32(s4) + c004f8b0: 006c9793 slli a5,s9,0x6 + c004f8b4: 00fd8633 add a2,s11,a5 + c004f8b8: ec42 sd a6,24(sp) + c004f8ba: e836 sd a3,16(sp) + c004f8bc: e43e sd a5,8(sp) + c004f8be: ddefd0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2407 (discriminator 3) v2 = get_bits(b->tab, b->len, b_bit_offset + i * LIMB_BITS) ^ v2_mask; - c004f6f2: 67a2 ld a5,8(sp) + c004f8c2: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2406 (discriminator 3) v1 = get_bits(a->tab, a->len, a_bit_offset + i * LIMB_BITS) ^ v1_mask; - c004f6f4: 012544b3 xor s1,a0,s2 + c004f8c4: 012544b3 xor s1,a0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2407 (discriminator 3) v2 = get_bits(b->tab, b->len, b_bit_offset + i * LIMB_BITS) ^ v2_mask; - c004f6f8: 0189b583 ld a1,24(s3) - c004f6fc: 0209b503 ld a0,32(s3) - c004f700: 00fd0633 add a2,s10,a5 - c004f704: dc8fd0ef jal ra,c004cccc - c004f708: 66c2 ld a3,16(sp) + c004f8c8: 0189b583 ld a1,24(s3) + c004f8cc: 0209b503 ld a0,32(s3) + c004f8d0: 00fd0633 add a2,s10,a5 + c004f8d4: dc8fd0ef jal ra,c004ce9c + c004f8d8: 66c2 ld a3,16(sp) bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2333 (discriminator 3) switch(op) { - c004f70a: 6862 ld a6,24(sp) - c004f70c: 4885 li a7,1 + c004f8da: 6862 ld a6,24(sp) + c004f8dc: 4885 li a7,1 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2407 (discriminator 3) v2 = get_bits(b->tab, b->len, b_bit_offset + i * LIMB_BITS) ^ v2_mask; - c004f70e: 8d35 xor a0,a0,a3 + c004f8de: 8d35 xor a0,a0,a3 bf_logic_op1(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2335 (discriminator 3) return a | b; - c004f710: 00a4e7b3 or a5,s1,a0 + c004f8e0: 00a4e7b3 or a5,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2333 (discriminator 3) switch(op) { - c004f714: 000b8863 beqz s7,c004f724 + c004f8e4: 000b8863 beqz s7,c004f8f4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2337 return a ^ b; - c004f718: 00a4c7b3 xor a5,s1,a0 + c004f8e8: 00a4c7b3 xor a5,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2333 switch(op) { - c004f71c: 011b8463 beq s7,a7,c004f724 + c004f8ec: 011b8463 beq s7,a7,c004f8f4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2340 return a & b; - c004f720: 00a4f7b3 and a5,s1,a0 + c004f8f0: 00a4f7b3 and a5,s1,a0 bf_logic_op(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2408 r->tab[i] = bf_logic_op1(v1, v2, op) ^ r_mask; - c004f724: 020ab703 ld a4,32(s5) - c004f728: 003c9613 slli a2,s9,0x3 - c004f72c: 00f847b3 xor a5,a6,a5 - c004f730: 9732 add a4,a4,a2 - c004f732: e31c sd a5,0(a4) + c004f8f4: 020ab703 ld a4,32(s5) + c004f8f8: 003c9613 slli a2,s9,0x3 + c004f8fc: 00f847b3 xor a5,a6,a5 + c004f900: 9732 add a4,a4,a2 + c004f902: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2405 for(i = 0; i < l; i++) { - c004f734: 0c85 addi s9,s9,1 - c004f736: bf19 j c004f64c + c004f904: 0c85 addi s9,s9,1 + c004f906: bf19 j c004f81c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2368 b = NULL; - c004f738: 4981 li s3,0 + c004f908: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2365 a = &a1_s; - c004f73a: 04810a13 addi s4,sp,72 + c004f90a: 04810a13 addi s4,sp,72 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2425 bf_set_nan(r); - c004f73e: 8556 mv a0,s5 - c004f740: 91dfd0ef jal ra,c004d05c + c004f90e: 8556 mv a0,s5 + c004f910: 91dfd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2426 ret = BF_ST_MEM_ERROR; - c004f744: 02000b13 li s6,32 + c004f914: 02000b13 li s6,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2427 goto done; - c004f748: bf25 j c004f680 + c004f918: bf25 j c004f850 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2360 b_sign = 0; /* minus zero is considered as positive */ - c004f74a: 4481 li s1,0 + c004f91a: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2364 if (a_sign) { - c004f74c: e80907e3 beqz s2,c004f5da - c004f750: bd15 j c004f584 + c004f91c: e80907e3 beqz s2,c004f7aa + c004f920: bd15 j c004f754 -00000000c004f752 : +00000000c004f922 : bf_rint(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2323 return bf_round(r, 0, rnd_mode | BF_FLAG_RADPNT_PREC); - c004f752: 0105e613 ori a2,a1,16 - c004f756: 4581 li a1,0 - c004f758: 838fe06f j c004d790 + c004f922: 0105e613 ori a2,a1,16 + c004f926: 4581 li a1,0 + c004f928: 838fe06f j c004d960 -00000000c004f75c : +00000000c004f92c : bf_sqrtrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2093 { - c004f75c: 7159 addi sp,sp,-112 - c004f75e: f0a2 sd s0,96(sp) - c004f760: e8ca sd s2,80(sp) - c004f762: e4ce sd s3,72(sp) - c004f764: f486 sd ra,104(sp) - c004f766: eca6 sd s1,88(sp) - c004f768: e0d2 sd s4,64(sp) - c004f76a: fc56 sd s5,56(sp) + c004f92c: 7159 addi sp,sp,-112 + c004f92e: f0a2 sd s0,96(sp) + c004f930: e8ca sd s2,80(sp) + c004f932: e4ce sd s3,72(sp) + c004f934: f486 sd ra,104(sp) + c004f936: eca6 sd s1,88(sp) + c004f938: e0d2 sd s4,64(sp) + c004f93a: fc56 sd s5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2096 if (a->len == 0) { - c004f76c: 6e1c ld a5,24(a2) + c004f93c: 6e1c ld a5,24(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2093 { - c004f76e: 89aa mv s3,a0 - c004f770: 892e mv s2,a1 - c004f772: 8432 mv s0,a2 + c004f93e: 89aa mv s3,a0 + c004f940: 892e mv s2,a1 + c004f942: 8432 mv s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2096 if (a->len == 0) { - c004f774: e7a1 bnez a5,c004f7bc + c004f944: e7a1 bnez a5,c004f98c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2097 if (a->expn == BF_EXP_NAN) { - c004f776: 6a18 ld a4,16(a2) - c004f778: 57fd li a5,-1 - c004f77a: 8385 srli a5,a5,0x1 - c004f77c: 02f71563 bne a4,a5,c004f7a6 + c004f946: 6a18 ld a4,16(a2) + c004f948: 57fd li a5,-1 + c004f94a: 8385 srli a5,a5,0x1 + c004f94c: 02f71563 bne a4,a5,c004f976 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2098 bf_set_nan(r); - c004f780: 8ddfd0ef jal ra,c004d05c + c004f950: 8ddfd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2106 ret = 0; - c004f784: 4a01 li s4,0 + c004f954: 4a01 li s4,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2110 if (rem1) - c004f786: 00090663 beqz s2,c004f792 + c004f956: 00090663 beqz s2,c004f962 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2111 bf_set_ui(rem1, 0); - c004f78a: 4581 li a1,0 - c004f78c: 854a mv a0,s2 - c004f78e: 8effd0ef jal ra,c004d07c + c004f95a: 4581 li a1,0 + c004f95c: 854a mv a0,s2 + c004f95e: 8effd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2143 } - c004f792: 70a6 ld ra,104(sp) - c004f794: 7406 ld s0,96(sp) - c004f796: 64e6 ld s1,88(sp) - c004f798: 6946 ld s2,80(sp) - c004f79a: 69a6 ld s3,72(sp) - c004f79c: 7ae2 ld s5,56(sp) - c004f79e: 8552 mv a0,s4 - c004f7a0: 6a06 ld s4,64(sp) - c004f7a2: 6165 addi sp,sp,112 - c004f7a4: 8082 ret + c004f962: 70a6 ld ra,104(sp) + c004f964: 7406 ld s0,96(sp) + c004f966: 64e6 ld s1,88(sp) + c004f968: 6946 ld s2,80(sp) + c004f96a: 69a6 ld s3,72(sp) + c004f96c: 7ae2 ld s5,56(sp) + c004f96e: 8552 mv a0,s4 + c004f970: 6a06 ld s4,64(sp) + c004f972: 6165 addi sp,sp,112 + c004f974: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2099 } else if (a->expn == BF_EXP_INF && a->sign) { - c004f7a6: 57f5 li a5,-3 - c004f7a8: 8385 srli a5,a5,0x1 - c004f7aa: 00f71463 bne a4,a5,c004f7b2 + c004f976: 57f5 li a5,-3 + c004f978: 8385 srli a5,a5,0x1 + c004f97a: 00f71463 bne a4,a5,c004f982 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2099 (discriminator 1) - c004f7ae: 461c lw a5,8(a2) - c004f7b0: eb91 bnez a5,c004f7c4 + c004f97e: 461c lw a5,8(a2) + c004f980: eb91 bnez a5,c004f994 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2102 bf_set(r, a); - c004f7b2: 85a2 mv a1,s0 - c004f7b4: 854e mv a0,s3 - c004f7b6: d0bfd0ef jal ra,c004d4c0 - c004f7ba: b7e9 j c004f784 + c004f982: 85a2 mv a1,s0 + c004f984: 854e mv a0,s3 + c004f986: d0bfd0ef jal ra,c004d690 + c004f98a: b7e9 j c004f954 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2107 } else if (a->sign) { - c004f7bc: 00862a03 lw s4,8(a2) - c004f7c0: 000a0763 beqz s4,c004f7ce + c004f98c: 00862a03 lw s4,8(a2) + c004f990: 000a0763 beqz s4,c004f99e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2109 bf_set_nan(r); - c004f7c4: 854e mv a0,s3 - c004f7c6: 897fd0ef jal ra,c004d05c + c004f994: 854e mv a0,s3 + c004f996: 897fd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2112 ret = BF_ST_INVALID_OP; - c004f7ca: 4a05 li s4,1 - c004f7cc: bf6d j c004f786 + c004f99a: 4a05 li s4,1 + c004f99c: bf6d j c004f956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2116 bf_sqrt(r, a, (a->expn + 1) / 2, BF_RNDZ); - c004f7ce: 6a1c ld a5,16(a2) - c004f7d0: 4609 li a2,2 - c004f7d2: 4685 li a3,1 - c004f7d4: 0785 addi a5,a5,1 - c004f7d6: 02c7c633 div a2,a5,a2 - c004f7da: 85a2 mv a1,s0 - c004f7dc: 84ca mv s1,s2 - c004f7de: c84ff0ef jal ra,c004ec62 + c004f99e: 6a1c ld a5,16(a2) + c004f9a0: 4609 li a2,2 + c004f9a2: 4685 li a3,1 + c004f9a4: 0785 addi a5,a5,1 + c004f9a6: 02c7c633 div a2,a5,a2 + c004f9aa: 85a2 mv a1,s0 + c004f9ac: 84ca mv s1,s2 + c004f9ae: c84ff0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2117 bf_rint(r, BF_RNDZ); - c004f7e2: 4585 li a1,1 - c004f7e4: 854e mv a0,s3 - c004f7e6: f6dff0ef jal ra,c004f752 + c004f9b2: 4585 li a1,1 + c004f9b4: 854e mv a0,s3 + c004f9b6: f6dff0ef jal ra,c004f922 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2119 if (rem1) { - c004f7ea: 00091c63 bnez s2,c004f802 + c004f9ba: 00091c63 bnez s2,c004f9d2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f7ee: 0009b783 ld a5,0(s3) + c004f9be: 0009b783 ld a5,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f7f2: c802 sw zero,16(sp) + c004f9c2: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f7f4: f002 sd zero,32(sp) + c004f9c4: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f7f6: e43e sd a5,8(sp) + c004f9c6: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f7f8: 57fd li a5,-1 - c004f7fa: 17fe slli a5,a5,0x3f - c004f7fc: ec3e sd a5,24(sp) + c004f9c8: 57fd li a5,-1 + c004f9ca: 17fe slli a5,a5,0x3f + c004f9cc: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f7fe: f402 sd zero,40(sp) + c004f9ce: f402 sd zero,40(sp) bf_sqrtrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2122 rem = &rem_s; - c004f800: 0024 addi s1,sp,8 + c004f9d0: 0024 addi s1,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2126 bf_mul(rem, r, r, BF_PREC_INF, BF_RNDZ); - c004f802: 5afd li s5,-1 - c004f804: 002ad693 srli a3,s5,0x2 - c004f808: 4705 li a4,1 - c004f80a: 864e mv a2,s3 - c004f80c: 85ce mv a1,s3 - c004f80e: 8526 mv a0,s1 - c004f810: 8caff0ef jal ra,c004e8da + c004f9d2: 5afd li s5,-1 + c004f9d4: 002ad693 srli a3,s5,0x2 + c004f9d8: 4705 li a4,1 + c004f9da: 864e mv a2,s3 + c004f9dc: 85ce mv a1,s3 + c004f9de: 8526 mv a0,s1 + c004f9e0: 8caff0ef jal ra,c004eaaa bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 r->sign ^= 1; - c004f814: 449c lw a5,8(s1) + c004f9e4: 449c lw a5,8(s1) bf_sqrtrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2128 bf_add(rem, rem, a, BF_PREC_INF, BF_RNDZ); - c004f816: 002ad693 srli a3,s5,0x2 - c004f81a: 4705 li a4,1 + c004f9e6: 002ad693 srli a3,s5,0x2 + c004f9ea: 4705 li a4,1 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c004f81c: 0017c793 xori a5,a5,1 - c004f820: c49c sw a5,8(s1) + c004f9ec: 0017c793 xori a5,a5,1 + c004f9f0: c49c sw a5,8(s1) bf_sqrtrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2128 - c004f822: 8622 mv a2,s0 - c004f824: 85a6 mv a1,s1 - c004f826: 8526 mv a0,s1 - c004f828: dceff0ef jal ra,c004edf6 + c004f9f2: 8622 mv a2,s0 + c004f9f4: 85a6 mv a1,s1 + c004f9f6: 8526 mv a0,s1 + c004f9f8: dceff0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2129 if (bf_is_nan(rem)) { - c004f82c: 689c ld a5,16(s1) - c004f82e: 001ada93 srli s5,s5,0x1 - c004f832: 01578a63 beq a5,s5,c004f846 + c004f9fc: 689c ld a5,16(s1) + c004f9fe: 001ada93 srli s5,s5,0x1 + c004fa02: 01578a63 beq a5,s5,c004fa16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2133 if (rem->len != 0) { - c004f836: 6c9c ld a5,24(s1) - c004f838: eb91 bnez a5,c004f84c + c004fa06: 6c9c ld a5,24(s1) + c004fa08: eb91 bnez a5,c004fa1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2139 if (!rem1) - c004f83a: f4091ce3 bnez s2,c004f792 + c004fa0a: f4091ce3 bnez s2,c004f962 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2140 bf_delete(rem); - c004f83e: 8526 mv a0,s1 - c004f840: c4cfd0ef jal ra,c004cc8c - c004f844: b7b9 j c004f792 + c004fa0e: 8526 mv a0,s1 + c004fa10: c4cfd0ef jal ra,c004ce5c + c004fa14: b7b9 j c004f962 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2130 ret = BF_ST_MEM_ERROR; - c004f846: 02000a13 li s4,32 - c004f84a: bfc5 j c004f83a + c004fa16: 02000a13 li s4,32 + c004fa1a: bfc5 j c004fa0a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2134 ret = BF_ST_INEXACT; - c004f84c: 4a41 li s4,16 - c004f84e: b7f5 j c004f83a + c004fa1c: 4a41 li s4,16 + c004fa1e: b7f5 j c004fa0a -00000000c004f850 : +00000000c004fa20 : bf_integer_to_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3399 { - c004f850: 7155 addi sp,sp,-208 - c004f852: e586 sd ra,200(sp) - c004f854: e1a2 sd s0,192(sp) - c004f856: fd26 sd s1,184(sp) - c004f858: f94a sd s2,176(sp) - c004f85a: f54e sd s3,168(sp) - c004f85c: f152 sd s4,160(sp) - c004f85e: ed56 sd s5,152(sp) - c004f860: e95a sd s6,144(sp) - c004f862: e55e sd s7,136(sp) - c004f864: e162 sd s8,128(sp) - c004f866: fce6 sd s9,120(sp) - c004f868: f8ea sd s10,112(sp) - c004f86a: f4ee sd s11,104(sp) + c004fa20: 7155 addi sp,sp,-208 + c004fa22: e586 sd ra,200(sp) + c004fa24: e1a2 sd s0,192(sp) + c004fa26: fd26 sd s1,184(sp) + c004fa28: f94a sd s2,176(sp) + c004fa2a: f54e sd s3,168(sp) + c004fa2c: f152 sd s4,160(sp) + c004fa2e: ed56 sd s5,152(sp) + c004fa30: e95a sd s6,144(sp) + c004fa32: e55e sd s7,136(sp) + c004fa34: e162 sd s8,128(sp) + c004fa36: fce6 sd s9,120(sp) + c004fa38: f8ea sd s10,112(sp) + c004fa3a: f4ee sd s11,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3403 assert(n >= 1); - c004f86c: ea99 bnez a3,c004f882 + c004fa3c: ea99 bnez a3,c004fa52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3403 (discriminator 1) - c004f86e: 6585 lui a1,0x1 - c004f870: 4601 li a2,0 - c004f872: d4b58593 addi a1,a1,-693 # d4b <__clzdi2-0xbffff2b5> - c004f876: 00023517 auipc a0,0x23 - c004f87a: aa250513 addi a0,a0,-1374 # c0072318 - c004f87e: 19a040ef jal ra,c0053a18 <__assert> - c004f882: 8c3e mv s8,a5 + c004fa3e: 6585 lui a1,0x1 + c004fa40: 4601 li a2,0 + c004fa42: d4b58593 addi a1,a1,-693 # d4b <__clzdi2-0xbffff2b5> + c004fa46: 00023517 auipc a0,0x23 + c004fa4a: b3250513 addi a0,a0,-1230 # c0072578 + c004fa4e: 19a040ef jal ra,c0053be8 <__assert> + c004fa52: 8c3e mv s8,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3404 (discriminator 2) if (n == 1) { - c004f884: 4785 li a5,1 - c004f886: 8a2e mv s4,a1 - c004f888: 8ab2 mv s5,a2 - c004f88a: 02f69f63 bne a3,a5,c004f8c8 + c004fa54: 4785 li a5,1 + c004fa56: 8a2e mv s4,a1 + c004fa58: 8ab2 mv s5,a2 + c004fa5a: 02f69f63 bne a3,a5,c004fa98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3405 out[0] = get_bits(a->tab, a->len, a->len * LIMB_BITS - a->expn); - c004f88e: 6e0c ld a1,24(a2) - c004f890: 010ab783 ld a5,16(s5) - c004f894: 020ab503 ld a0,32(s5) - c004f898: 00659613 slli a2,a1,0x6 - c004f89c: 8e1d sub a2,a2,a5 - c004f89e: c2efd0ef jal ra,c004cccc - c004f8a2: 00aa3023 sd a0,0(s4) + c004fa5e: 6e0c ld a1,24(a2) + c004fa60: 010ab783 ld a5,16(s5) + c004fa64: 020ab503 ld a0,32(s5) + c004fa68: 00659613 slli a2,a1,0x6 + c004fa6c: 8e1d sub a2,a2,a5 + c004fa6e: c2efd0ef jal ra,c004ce9c + c004fa72: 00aa3023 sd a0,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3477 return 0; - c004f8a6: 4401 li s0,0 + c004fa76: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3478 } - c004f8a8: 60ae ld ra,200(sp) - c004f8aa: 8522 mv a0,s0 - c004f8ac: 640e ld s0,192(sp) - c004f8ae: 74ea ld s1,184(sp) - c004f8b0: 794a ld s2,176(sp) - c004f8b2: 79aa ld s3,168(sp) - c004f8b4: 7a0a ld s4,160(sp) - c004f8b6: 6aea ld s5,152(sp) - c004f8b8: 6b4a ld s6,144(sp) - c004f8ba: 6baa ld s7,136(sp) - c004f8bc: 6c0a ld s8,128(sp) - c004f8be: 7ce6 ld s9,120(sp) - c004f8c0: 7d46 ld s10,112(sp) - c004f8c2: 7da6 ld s11,104(sp) - c004f8c4: 6169 addi sp,sp,208 - c004f8c6: 8082 ret + c004fa78: 60ae ld ra,200(sp) + c004fa7a: 8522 mv a0,s0 + c004fa7c: 640e ld s0,192(sp) + c004fa7e: 74ea ld s1,184(sp) + c004fa80: 794a ld s2,176(sp) + c004fa82: 79aa ld s3,168(sp) + c004fa84: 7a0a ld s4,160(sp) + c004fa86: 6aea ld s5,152(sp) + c004fa88: 6b4a ld s6,144(sp) + c004fa8a: 6baa ld s7,136(sp) + c004fa8c: 6c0a ld s8,128(sp) + c004fa8e: 7ce6 ld s9,120(sp) + c004fa90: 7d46 ld s10,112(sp) + c004fa92: 7da6 ld s11,104(sp) + c004fa94: 6169 addi sp,sp,208 + c004fa96: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3406 } else if (n == 2) { - c004f8c8: 4789 li a5,2 - c004f8ca: 8b42 mv s6,a6 - c004f8cc: 06f69e63 bne a3,a5,c004f948 + c004fa98: 4789 li a5,2 + c004fa9a: 8b42 mv s6,a6 + c004fa9c: 06f69e63 bne a3,a5,c004fb18 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3409 pos = a->len * LIMB_BITS - a->expn; - c004f8d0: 6e0c ld a1,24(a2) - c004f8d2: 6a1c ld a5,16(a2) + c004faa0: 6e0c ld a1,24(a2) + c004faa2: 6a1c ld a5,16(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3410 t = ((dlimb_t)get_bits(a->tab, a->len, pos + LIMB_BITS) << LIMB_BITS) | - c004f8d4: 02063903 ld s2,32(a2) + c004faa4: 02063903 ld s2,32(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3409 pos = a->len * LIMB_BITS - a->expn; - c004f8d8: 00659493 slli s1,a1,0x6 - c004f8dc: 8c9d sub s1,s1,a5 + c004faa8: 00659493 slli s1,a1,0x6 + c004faac: 8c9d sub s1,s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3410 t = ((dlimb_t)get_bits(a->tab, a->len, pos + LIMB_BITS) << LIMB_BITS) | - c004f8de: 04048613 addi a2,s1,64 - c004f8e2: 854a mv a0,s2 - c004f8e4: e42e sd a1,8(sp) - c004f8e6: be6fd0ef jal ra,c004cccc + c004faae: 04048613 addi a2,s1,64 + c004fab2: 854a mv a0,s2 + c004fab4: e42e sd a1,8(sp) + c004fab6: be6fd0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3411 get_bits(a->tab, a->len, pos); - c004f8ea: 65a2 ld a1,8(sp) - c004f8ec: 8626 mv a2,s1 + c004faba: 65a2 ld a1,8(sp) + c004fabc: 8626 mv a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3410 t = ((dlimb_t)get_bits(a->tab, a->len, pos + LIMB_BITS) << LIMB_BITS) | - c004f8ee: 842a mv s0,a0 + c004fabe: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3411 get_bits(a->tab, a->len, pos); - c004f8f0: 854a mv a0,s2 - c004f8f2: bdafd0ef jal ra,c004cccc + c004fac0: 854a mv a0,s2 + c004fac2: bdafd0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3412 if (likely(radixl == RADIXL_10)) { - c004f8f6: 00025797 auipc a5,0x25 - c004f8fa: f8a7b783 ld a5,-118(a5) # c0074880 <_erodata+0x100> + c004fac6: 00025797 auipc a5,0x25 + c004faca: 01a7b783 ld a5,26(a5) # c0074ae0 <_erodata+0x100> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3411 get_bits(a->tab, a->len, pos); - c004f8fe: 84aa mv s1,a0 + c004face: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3412 if (likely(radixl == RADIXL_10)) { - c004f900: 02fb1a63 bne s6,a5,c004f934 + c004fad0: 02fb1a63 bne s6,a5,c004fb04 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3414 out[0] = t % RADIXL_10; - c004f904: 00023917 auipc s2,0x23 - c004f908: acc90913 addi s2,s2,-1332 # c00723d0 - c004f90c: 00093603 ld a2,0(s2) - c004f910: 00893683 ld a3,8(s2) - c004f914: 85a2 mv a1,s0 - c004f916: 9b2b10ef jal ra,c0000ac8 <__umodti3> + c004fad4: 00023917 auipc s2,0x23 + c004fad8: b5c90913 addi s2,s2,-1188 # c0072630 + c004fadc: 00093603 ld a2,0(s2) + c004fae0: 00893683 ld a3,8(s2) + c004fae4: 85a2 mv a1,s0 + c004fae6: fe3b00ef jal ra,c0000ac8 <__umodti3> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3415 out[1] = t / RADIXL_10; - c004f91a: 00093603 ld a2,0(s2) - c004f91e: 00893683 ld a3,8(s2) + c004faea: 00093603 ld a2,0(s2) + c004faee: 00893683 ld a3,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3414 out[0] = t % RADIXL_10; - c004f922: 00aa3023 sd a0,0(s4) + c004faf2: 00aa3023 sd a0,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3418 out[1] = t / radixl; - c004f926: 8526 mv a0,s1 - c004f928: 85a2 mv a1,s0 - c004f92a: e53b00ef jal ra,c000077c <__udivti3> - c004f92e: 00aa3423 sd a0,8(s4) - c004f932: bf95 j c004f8a6 + c004faf6: 8526 mv a0,s1 + c004faf8: 85a2 mv a1,s0 + c004fafa: c83b00ef jal ra,c000077c <__udivti3> + c004fafe: 00aa3423 sd a0,8(s4) + c004fb02: bf95 j c004fa76 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3417 out[0] = t % radixl; - c004f934: 865a mv a2,s6 - c004f936: 4681 li a3,0 - c004f938: 85a2 mv a1,s0 - c004f93a: 98eb10ef jal ra,c0000ac8 <__umodti3> - c004f93e: 00aa3023 sd a0,0(s4) + c004fb04: 865a mv a2,s6 + c004fb06: 4681 li a3,0 + c004fb08: 85a2 mv a1,s0 + c004fb0a: fbfb00ef jal ra,c0000ac8 <__umodti3> + c004fb0e: 00aa3023 sd a0,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3418 out[1] = t / radixl; - c004f942: 865a mv a2,s6 - c004f944: 4681 li a3,0 - c004f946: b7c5 j c004f926 + c004fb12: 865a mv a2,s6 + c004fb14: 4681 li a3,0 + c004fb16: b7c5 j c004faf6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3427 B = &pow_tab[2 * level]; - c004f948: 0017199b slliw s3,a4,0x1 - c004f94c: 02800493 li s1,40 + c004fb18: 0017199b slliw s3,a4,0x1 + c004fb1c: 02800493 li s1,40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3425 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004f950: 00170d1b addiw s10,a4,1 + c004fb20: 00170d1b addiw s10,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3427 B = &pow_tab[2 * level]; - c004f954: 874e mv a4,s3 - c004f956: 029989b3 mul s3,s3,s1 + c004fb24: 874e mv a4,s3 + c004fb26: 029989b3 mul s3,s3,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3428 B_inv = &pow_tab[2 * level + 1]; - c004f95a: 2705 addiw a4,a4,1 + c004fb2a: 2705 addiw a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3425 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004f95c: 001c1913 slli s2,s8,0x1 - c004f960: 01a95933 srl s2,s2,s10 + c004fb2c: 001c1913 slli s2,s8,0x1 + c004fb30: 01a95933 srl s2,s2,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3423 bf_init(a->ctx, &Q); - c004f964: 620c ld a1,0(a2) + c004fb34: 620c ld a1,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3425 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004f966: 0905 addi s2,s2,1 + c004fb36: 0905 addi s2,s2,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f968: 57fd li a5,-1 + c004fb38: 57fd li a5,-1 bf_integer_to_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3425 n2 = (((n0 * 2) >> (level + 1)) + 1) / 2; - c004f96a: 00195913 srli s2,s2,0x1 + c004fb3a: 00195913 srli s2,s2,0x1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f96e: 03f79613 slli a2,a5,0x3f + c004fb3e: 03f79613 slli a2,a5,0x3f bf_integer_to_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3426 n1 = n - n2; - c004f972: 412686b3 sub a3,a3,s2 + c004fb42: 412686b3 sub a3,a3,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3428 B_inv = &pow_tab[2 * level + 1]; - c004f976: 029704b3 mul s1,a4,s1 + c004fb46: 029704b3 mul s1,a4,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3427 B = &pow_tab[2 * level]; - c004f97a: 99aa add s3,s3,a0 + c004fb4a: 99aa add s3,s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3430 if (B->len == 0) { - c004f97c: 0189b703 ld a4,24(s3) + c004fb4c: 0189b703 ld a4,24(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3436 ret |= bf_div(B_inv, &R, B, (n2 + 1) * radixl_bits + 2, BF_RNDN); - c004f980: 02089d93 slli s11,a7,0x20 + c004fb50: 02089d93 slli s11,a7,0x20 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f984: e82e sd a1,16(sp) + c004fb54: e82e sd a1,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f986: cc02 sw zero,24(sp) + c004fb56: cc02 sw zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f988: f032 sd a2,32(sp) + c004fb58: f032 sd a2,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f98a: f402 sd zero,40(sp) + c004fb5a: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f98c: f802 sd zero,48(sp) + c004fb5c: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004f98e: fc2e sd a1,56(sp) + c004fb5e: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004f990: c082 sw zero,64(sp) + c004fb60: c082 sw zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004f992: e4b2 sd a2,72(sp) + c004fb62: e4b2 sd a2,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004f994: e882 sd zero,80(sp) + c004fb64: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004f996: ec82 sd zero,88(sp) + c004fb66: ec82 sd zero,88(sp) bf_integer_to_radix_rec(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3426 n1 = n - n2; - c004f998: e436 sd a3,8(sp) - c004f99a: 8baa mv s7,a0 - c004f99c: 8cc6 mv s9,a7 + c004fb68: e436 sd a3,8(sp) + c004fb6a: 8baa mv s7,a0 + c004fb6c: 8cc6 mv s9,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3428 B_inv = &pow_tab[2 * level + 1]; - c004f99e: 94aa add s1,s1,a0 + c004fb6e: 94aa add s1,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3436 ret |= bf_div(B_inv, &R, B, (n2 + 1) * radixl_bits + 2, BF_RNDN); - c004f9a0: 020ddd93 srli s11,s11,0x20 + c004fb70: 020ddd93 srli s11,s11,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3429 ret = 0; - c004f9a4: 4401 li s0,0 + c004fb74: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3430 if (B->len == 0) { - c004f9a6: ef0d bnez a4,c004f9e0 + c004fb76: ef0d bnez a4,c004fbb0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3432 ret |= bf_pow_ui_ui(B, radixl, n2, BF_PREC_INF, BF_RNDZ); - c004f9a8: 0027d693 srli a3,a5,0x2 - c004f9ac: 85c2 mv a1,a6 - c004f9ae: 4705 li a4,1 - c004f9b0: 864a mv a2,s2 - c004f9b2: 854e mv a0,s3 - c004f9b4: 946ff0ef jal ra,c004eafa - c004f9b8: 842a mv s0,a0 + c004fb78: 0027d693 srli a3,a5,0x2 + c004fb7c: 85c2 mv a1,a6 + c004fb7e: 4705 li a4,1 + c004fb80: 864a mv a2,s2 + c004fb82: 854e mv a0,s3 + c004fb84: 946ff0ef jal ra,c004ecca + c004fb88: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3435 ret |= bf_set_ui(&R, 1); - c004f9ba: 4585 li a1,1 - c004f9bc: 1828 addi a0,sp,56 - c004f9be: ebefd0ef jal ra,c004d07c + c004fb8a: 4585 li a1,1 + c004fb8c: 1828 addi a0,sp,56 + c004fb8e: ebefd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3436 ret |= bf_div(B_inv, &R, B, (n2 + 1) * radixl_bits + 2, BF_RNDN); - c004f9c2: 00190693 addi a3,s2,1 - c004f9c6: 03b686b3 mul a3,a3,s11 + c004fb92: 00190693 addi a3,s2,1 + c004fb96: 03b686b3 mul a3,a3,s11 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3435 ret |= bf_set_ui(&R, 1); - c004f9ca: 8c49 or s0,s0,a0 + c004fb9a: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3436 ret |= bf_div(B_inv, &R, B, (n2 + 1) * radixl_bits + 2, BF_RNDN); - c004f9cc: 4701 li a4,0 - c004f9ce: 864e mv a2,s3 - c004f9d0: 182c addi a1,sp,56 - c004f9d2: 8526 mv a0,s1 + c004fb9c: 4701 li a4,0 + c004fb9e: 864e mv a2,s3 + c004fba0: 182c addi a1,sp,56 + c004fba2: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3435 ret |= bf_set_ui(&R, 1); - c004f9d4: 2401 sext.w s0,s0 + c004fba4: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3436 ret |= bf_div(B_inv, &R, B, (n2 + 1) * radixl_bits + 2, BF_RNDN); - c004f9d6: 0689 addi a3,a3,2 - c004f9d8: f4eff0ef jal ra,c004f126 - c004f9dc: 8c49 or s0,s0,a0 - c004f9de: 2401 sext.w s0,s0 + c004fba6: 0689 addi a3,a3,2 + c004fba8: f4eff0ef jal ra,c004f2f6 + c004fbac: 8c49 or s0,s0,a0 + c004fbae: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3440 ret |= bf_mul(&Q, a, B_inv, q_prec, BF_RNDN); - c004f9e0: 67a2 ld a5,8(sp) - c004f9e2: 8626 mv a2,s1 - c004f9e4: 4701 li a4,0 - c004f9e6: 02fd86b3 mul a3,s11,a5 - c004f9ea: 85d6 mv a1,s5 - c004f9ec: 0808 addi a0,sp,16 + c004fbb0: 67a2 ld a5,8(sp) + c004fbb2: 8626 mv a2,s1 + c004fbb4: 4701 li a4,0 + c004fbb6: 02fd86b3 mul a3,s11,a5 + c004fbba: 85d6 mv a1,s5 + c004fbbc: 0808 addi a0,sp,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3443 ret |= bf_mul(&R, &Q, B, BF_PREC_INF, BF_RNDZ); - c004f9ee: 54fd li s1,-1 + c004fbbe: 54fd li s1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3440 ret |= bf_mul(&Q, a, B_inv, q_prec, BF_RNDN); - c004f9f0: eebfe0ef jal ra,c004e8da - c004f9f4: 8c49 or s0,s0,a0 + c004fbc0: eebfe0ef jal ra,c004eaaa + c004fbc4: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3441 ret |= bf_rint(&Q, BF_RNDZ); - c004f9f6: 4585 li a1,1 - c004f9f8: 0808 addi a0,sp,16 - c004f9fa: d59ff0ef jal ra,c004f752 + c004fbc6: 4585 li a1,1 + c004fbc8: 0808 addi a0,sp,16 + c004fbca: d59ff0ef jal ra,c004f922 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3440 ret |= bf_mul(&Q, a, B_inv, q_prec, BF_RNDN); - c004f9fe: 2401 sext.w s0,s0 + c004fbce: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3443 ret |= bf_mul(&R, &Q, B, BF_PREC_INF, BF_RNDZ); - c004fa00: 0024d693 srli a3,s1,0x2 + c004fbd0: 0024d693 srli a3,s1,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3441 ret |= bf_rint(&Q, BF_RNDZ); - c004fa04: 8c49 or s0,s0,a0 + c004fbd4: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3443 ret |= bf_mul(&R, &Q, B, BF_PREC_INF, BF_RNDZ); - c004fa06: 4705 li a4,1 - c004fa08: 864e mv a2,s3 - c004fa0a: 080c addi a1,sp,16 - c004fa0c: 1828 addi a0,sp,56 - c004fa0e: ecdfe0ef jal ra,c004e8da + c004fbd6: 4705 li a4,1 + c004fbd8: 864e mv a2,s3 + c004fbda: 080c addi a1,sp,16 + c004fbdc: 1828 addi a0,sp,56 + c004fbde: ecdfe0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3444 ret |= bf_sub(&R, a, &R, BF_PREC_INF, BF_RNDZ); - c004fa12: 1830 addi a2,sp,56 + c004fbe2: 1830 addi a2,sp,56 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3441 ret |= bf_rint(&Q, BF_RNDZ); - c004fa14: 2401 sext.w s0,s0 + c004fbe4: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3443 ret |= bf_mul(&R, &Q, B, BF_PREC_INF, BF_RNDZ); - c004fa16: 8c49 or s0,s0,a0 + c004fbe6: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3444 ret |= bf_sub(&R, a, &R, BF_PREC_INF, BF_RNDZ); - c004fa18: 0024d693 srli a3,s1,0x2 - c004fa1c: 4705 li a4,1 - c004fa1e: 85d6 mv a1,s5 - c004fa20: 8532 mv a0,a2 + c004fbe8: 0024d693 srli a3,s1,0x2 + c004fbec: 4705 li a4,1 + c004fbee: 85d6 mv a1,s5 + c004fbf0: 8532 mv a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3443 ret |= bf_mul(&R, &Q, B, BF_PREC_INF, BF_RNDZ); - c004fa22: 2401 sext.w s0,s0 + c004fbf2: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3444 ret |= bf_sub(&R, a, &R, BF_PREC_INF, BF_RNDZ); - c004fa24: ef6ff0ef jal ra,c004f11a - c004fa28: 8c49 or s0,s0,a0 + c004fbf4: ef6ff0ef jal ra,c004f2ea + c004fbf8: 8c49 or s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3446 if (ret & BF_ST_MEM_ERROR) - c004fa2a: 02047413 andi s0,s0,32 + c004fbfa: 02047413 andi s0,s0,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3451 if (bf_add(&R, &R, B, BF_PREC_INF, BF_RNDZ)) - c004fa2e: 8089 srli s1,s1,0x2 + c004fbfe: 8089 srli s1,s1,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3446 if (ret & BF_ST_MEM_ERROR) - c004fa30: c015 beqz s0,c004fa54 + c004fc00: c015 beqz s0,c004fc24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3470 bf_delete(&Q); - c004fa32: 0808 addi a0,sp,16 - c004fa34: a58fd0ef jal ra,c004cc8c + c004fc02: 0808 addi a0,sp,16 + c004fc04: a58fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3471 bf_delete(&R); - c004fa38: 1828 addi a0,sp,56 - c004fa3a: a52fd0ef jal ra,c004cc8c + c004fc08: 1828 addi a0,sp,56 + c004fc0a: a52fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3472 return -1; - c004fa3e: 547d li s0,-1 - c004fa40: b5a5 j c004f8a8 + c004fc0e: 547d li s0,-1 + c004fc10: b5a5 j c004fa78 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3451 if (bf_add(&R, &R, B, BF_PREC_INF, BF_RNDZ)) - c004fa42: 182c addi a1,sp,56 - c004fa44: 4705 li a4,1 - c004fa46: 86a6 mv a3,s1 - c004fa48: 864e mv a2,s3 - c004fa4a: 852e mv a0,a1 - c004fa4c: baaff0ef jal ra,c004edf6 - c004fa50: f16d bnez a0,c004fa32 + c004fc12: 182c addi a1,sp,56 + c004fc14: 4705 li a4,1 + c004fc16: 86a6 mv a3,s1 + c004fc18: 864e mv a2,s3 + c004fc1a: 852e mv a0,a1 + c004fc1c: baaff0ef jal ra,c004efc6 + c004fc20: f16d bnez a0,c004fc02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3453 q_add--; - c004fa52: 347d addiw s0,s0,-1 + c004fc22: 347d addiw s0,s0,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3450 while (R.sign && R.len != 0) { - c004fa54: 4786 lw a5,64(sp) - c004fa56: c399 beqz a5,c004fa5c + c004fc24: 4786 lw a5,64(sp) + c004fc26: c399 beqz a5,c004fc2c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3450 (discriminator 1) - c004fa58: 67c6 ld a5,80(sp) - c004fa5a: f7e5 bnez a5,c004fa42 + c004fc28: 67c6 ld a5,80(sp) + c004fc2a: f7e5 bnez a5,c004fc12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3456 if (bf_sub(&R, &R, B, BF_PREC_INF, BF_RNDZ)) - c004fa5c: 54fd li s1,-1 - c004fa5e: 8089 srli s1,s1,0x2 - c004fa60: a811 j c004fa74 - c004fa62: 182c addi a1,sp,56 - c004fa64: 4705 li a4,1 - c004fa66: 86a6 mv a3,s1 - c004fa68: 864e mv a2,s3 - c004fa6a: 852e mv a0,a1 - c004fa6c: eaeff0ef jal ra,c004f11a - c004fa70: f169 bnez a0,c004fa32 + c004fc2c: 54fd li s1,-1 + c004fc2e: 8089 srli s1,s1,0x2 + c004fc30: a811 j c004fc44 + c004fc32: 182c addi a1,sp,56 + c004fc34: 4705 li a4,1 + c004fc36: 86a6 mv a3,s1 + c004fc38: 864e mv a2,s3 + c004fc3a: 852e mv a0,a1 + c004fc3c: eaeff0ef jal ra,c004f2ea + c004fc40: f169 bnez a0,c004fc02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3458 q_add++; - c004fa72: 2405 addiw s0,s0,1 + c004fc42: 2405 addiw s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3455 while (bf_cmpu(&R, B) >= 0) { - c004fa74: 85ce mv a1,s3 - c004fa76: 1828 addi a0,sp,56 - c004fa78: ed5fd0ef jal ra,c004d94c - c004fa7c: fe0553e3 bgez a0,c004fa62 + c004fc44: 85ce mv a1,s3 + c004fc46: 1828 addi a0,sp,56 + c004fc48: ed5fd0ef jal ra,c004db1c + c004fc4c: fe0553e3 bgez a0,c004fc32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3460 if (q_add != 0) { - c004fa80: e029 bnez s0,c004fac2 + c004fc50: e029 bnez s0,c004fc92 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3464 if (bf_integer_to_radix_rec(pow_tab, out + n2, &Q, n1, level + 1, n0, - c004fa82: 66a2 ld a3,8(sp) - c004fa84: 00391593 slli a1,s2,0x3 - c004fa88: 88e6 mv a7,s9 - c004fa8a: 885a mv a6,s6 - c004fa8c: 87e2 mv a5,s8 - c004fa8e: 876a mv a4,s10 - c004fa90: 0810 addi a2,sp,16 - c004fa92: 95d2 add a1,a1,s4 - c004fa94: 855e mv a0,s7 - c004fa96: dbbff0ef jal ra,c004f850 - c004fa9a: fd41 bnez a0,c004fa32 + c004fc52: 66a2 ld a3,8(sp) + c004fc54: 00391593 slli a1,s2,0x3 + c004fc58: 88e6 mv a7,s9 + c004fc5a: 885a mv a6,s6 + c004fc5c: 87e2 mv a5,s8 + c004fc5e: 876a mv a4,s10 + c004fc60: 0810 addi a2,sp,16 + c004fc62: 95d2 add a1,a1,s4 + c004fc64: 855e mv a0,s7 + c004fc66: dbbff0ef jal ra,c004fa20 + c004fc6a: fd41 bnez a0,c004fc02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3467 if (bf_integer_to_radix_rec(pow_tab, out, &R, n2, level + 1, n0, - c004fa9c: 88e6 mv a7,s9 - c004fa9e: 885a mv a6,s6 - c004faa0: 87e2 mv a5,s8 - c004faa2: 876a mv a4,s10 - c004faa4: 86ca mv a3,s2 - c004faa6: 1830 addi a2,sp,56 - c004faa8: 85d2 mv a1,s4 - c004faaa: 855e mv a0,s7 - c004faac: da5ff0ef jal ra,c004f850 - c004fab0: 842a mv s0,a0 - c004fab2: f141 bnez a0,c004fa32 + c004fc6c: 88e6 mv a7,s9 + c004fc6e: 885a mv a6,s6 + c004fc70: 87e2 mv a5,s8 + c004fc72: 876a mv a4,s10 + c004fc74: 86ca mv a3,s2 + c004fc76: 1830 addi a2,sp,56 + c004fc78: 85d2 mv a1,s4 + c004fc7a: 855e mv a0,s7 + c004fc7c: da5ff0ef jal ra,c004fa20 + c004fc80: 842a mv s0,a0 + c004fc82: f141 bnez a0,c004fc02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3474 bf_delete(&Q); - c004fab4: 0808 addi a0,sp,16 - c004fab6: 9d6fd0ef jal ra,c004cc8c + c004fc84: 0808 addi a0,sp,16 + c004fc86: 9d6fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3475 bf_delete(&R); - c004faba: 1828 addi a0,sp,56 - c004fabc: 9d0fd0ef jal ra,c004cc8c - c004fac0: b3e5 j c004f8a8 + c004fc8a: 1828 addi a0,sp,56 + c004fc8c: 9d0fd0ef jal ra,c004ce5c + c004fc90: b3e5 j c004fa78 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3461 if (bf_add_si(&Q, &Q, q_add, BF_PREC_INF, BF_RNDZ)) - c004fac2: 56fd li a3,-1 - c004fac4: 080c addi a1,sp,16 - c004fac6: 4705 li a4,1 - c004fac8: 8289 srli a3,a3,0x2 - c004faca: 8622 mv a2,s0 - c004facc: 852e mv a0,a1 - c004face: a09ff0ef jal ra,c004f4d6 - c004fad2: d945 beqz a0,c004fa82 - c004fad4: bfb9 j c004fa32 - -00000000c004fad6 : + c004fc92: 56fd li a3,-1 + c004fc94: 080c addi a1,sp,16 + c004fc96: 4705 li a4,1 + c004fc98: 8289 srli a3,a3,0x2 + c004fc9a: 8622 mv a2,s0 + c004fc9c: 852e mv a0,a1 + c004fc9e: a09ff0ef jal ra,c004f6a6 + c004fca2: d945 beqz a0,c004fc52 + c004fca4: bfb9 j c004fc02 + +00000000c004fca6 : output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3638 static void output_digits(DynBuf *s, const bf_t *a1, int radix, limb_t n_digits, - c004fad6: 716d addi sp,sp,-272 - c004fad8: fda6 sd s1,248(sp) + c004fca6: 716d addi sp,sp,-272 + c004fca8: fda6 sd s1,248(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3654 } else if ((radix & (radix - 1)) == 0) { - c004fada: fff6049b addiw s1,a2,-1 - c004fade: 8cf1 and s1,s1,a2 + c004fcaa: fff6049b addiw s1,a2,-1 + c004fcae: 8cf1 and s1,s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3638 static void output_digits(DynBuf *s, const bf_t *a1, int radix, limb_t n_digits, - c004fae0: f5ce sd s3,232(sp) - c004fae2: f1d2 sd s4,224(sp) - c004fae4: e9da sd s6,208(sp) - c004fae6: e1e2 sd s8,192(sp) - c004fae8: fd66 sd s9,184(sp) - c004faea: e606 sd ra,264(sp) - c004faec: e222 sd s0,256(sp) - c004faee: f9ca sd s2,240(sp) - c004faf0: edd6 sd s5,216(sp) - c004faf2: e5de sd s7,200(sp) - c004faf4: f96a sd s10,176(sp) - c004faf6: f56e sd s11,168(sp) + c004fcb0: f5ce sd s3,232(sp) + c004fcb2: f1d2 sd s4,224(sp) + c004fcb4: e9da sd s6,208(sp) + c004fcb6: e1e2 sd s8,192(sp) + c004fcb8: fd66 sd s9,184(sp) + c004fcba: e606 sd ra,264(sp) + c004fcbc: e222 sd s0,256(sp) + c004fcbe: f9ca sd s2,240(sp) + c004fcc0: edd6 sd s5,216(sp) + c004fcc2: e5de sd s7,200(sp) + c004fcc4: f96a sd s10,176(sp) + c004fcc6: f56e sd s11,168(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3654 } else if ((radix & (radix - 1)) == 0) { - c004faf8: 2481 sext.w s1,s1 + c004fcc8: 2481 sext.w s1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3638 static void output_digits(DynBuf *s, const bf_t *a1, int radix, limb_t n_digits, - c004fafa: 8c2a mv s8,a0 - c004fafc: 8a2e mv s4,a1 - c004fafe: 89b2 mv s3,a2 - c004fb00: 8b36 mv s6,a3 - c004fb02: 8cba mv s9,a4 + c004fcca: 8c2a mv s8,a0 + c004fccc: 8a2e mv s4,a1 + c004fcce: 89b2 mv s3,a2 + c004fcd0: 8b36 mv s6,a3 + c004fcd2: 8cba mv s9,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3654 } else if ((radix & (radix - 1)) == 0) { - c004fb04: e0d1 bnez s1,c004fb88 + c004fcd4: e0d1 bnez s1,c004fd58 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3656 radix_bits = ceil_log2(radix); - c004fb06: 8532 mv a0,a2 - c004fb08: b96fd0ef jal ra,c004ce9e + c004fcd6: 8532 mv a0,a2 + c004fcd8: b96fd0ef jal ra,c004d06e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3657 digits_per_limb = LIMB_BITS / radix_bits; - c004fb0c: 04000793 li a5,64 - c004fb10: 02a7cbbb divw s7,a5,a0 + c004fcdc: 04000793 li a5,64 + c004fce0: 02a7cbbb divw s7,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3660 pos = a->len * LIMB_BITS + smod(-a->expn, radix_bits); - c004fb14: 018a3403 ld s0,24(s4) + c004fce4: 018a3403 ld s0,24(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3656 radix_bits = ceil_log2(radix); - c004fb18: 892a mv s2,a0 + c004fce8: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3658 pos_incr = digits_per_limb * radix_bits; - c004fb1a: 02ab87bb mulw a5,s7,a0 - c004fb1e: e03e sd a5,0(sp) + c004fcea: 02ab87bb mulw a5,s7,a0 + c004fcee: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3660 pos = a->len * LIMB_BITS + smod(-a->expn, radix_bits); - c004fb20: 00641793 slli a5,s0,0x6 - c004fb24: 010a3403 ld s0,16(s4) - c004fb28: 40800433 neg s0,s0 + c004fcf0: 00641793 slli a5,s0,0x6 + c004fcf4: 010a3403 ld s0,16(s4) + c004fcf8: 40800433 neg s0,s0 smod(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:152 a = a % (slimb_t)b; - c004fb2c: 02a46433 rem s0,s0,a0 + c004fcfc: 02a46433 rem s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:153 if (a < 0) - c004fb30: 00045363 bgez s0,c004fb36 + c004fd00: 00045363 bgez s0,c004fd06 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:154 a += b; - c004fb34: 942a add s0,s0,a0 + c004fd04: 942a add s0,s0,a0 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3660 pos = a->len * LIMB_BITS + smod(-a->expn, radix_bits); - c004fb36: 943e add s0,s0,a5 + c004fd06: 943e add s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3661 first_buf_pos = 0; - c004fb38: 8dd2 mv s11,s4 + c004fd08: 8dd2 mv s11,s4 limb_to_a2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3622 mask = (1 << radix_bits) - 1; - c004fb3a: 4705 li a4,1 + c004fd0a: 4705 li a4,1 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3693 limb_to_a2(buf, v, radix_bits, digits_per_limb); - c004fb3c: 0009079b sext.w a5,s2 + c004fd0c: 0009079b sext.w a5,s2 limb_to_a2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3622 mask = (1 << radix_bits) - 1; - c004fb40: 0127173b sllw a4,a4,s2 + c004fd10: 0127173b sllw a4,a4,s2 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3693 limb_to_a2(buf, v, radix_bits, digits_per_limb); - c004fb44: e83e sd a5,16(sp) + c004fd14: e83e sd a5,16(sp) limb_to_a2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3622 mask = (1 << radix_bits) - 1; - c004fb46: fff7079b addiw a5,a4,-1 - c004fb4a: ec3e sd a5,24(sp) + c004fd16: fff7079b addiw a5,a4,-1 + c004fd1a: ec3e sd a5,24(sp) output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3690 limb_to_a(buf, v, radix, digits_per_limb); - c004fb4c: 0009879b sext.w a5,s3 - c004fb50: f03e sd a5,32(sp) + c004fd1c: 0009879b sext.w a5,s3 + c004fd20: f03e sd a5,32(sp) limb_to_a(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3605 digit = (limb_t)n % radix; - c004fb52: 02099793 slli a5,s3,0x20 - c004fb56: 9381 srli a5,a5,0x20 + c004fd22: 02099793 slli a5,s3,0x20 + c004fd26: 9381 srli a5,a5,0x20 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3685 while (i < n_digits) { - c004fb58: 875e mv a4,s7 + c004fd28: 875e mv a4,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3684 i = 0; - c004fb5a: 4a81 li s5,0 + c004fd2a: 4a81 li s5,0 limb_to_a(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3598 for(i = len - 1; i >= 0; i--) { - c004fb5c: fffb8d1b addiw s10,s7,-1 + c004fd2c: fffb8d1b addiw s10,s7,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3605 digit = (limb_t)n % radix; - c004fb60: e43e sd a5,8(sp) + c004fd30: e43e sd a5,8(sp) output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3685 while (i < n_digits) { - c004fb62: 136ae763 bltu s5,s6,c004fc90 + c004fd32: 136ae763 bltu s5,s6,c004fe60 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3711 if (a != a1) - c004fb66: 07ba1863 bne s4,s11,c004fbd6 + c004fd36: 07ba1863 bne s4,s11,c004fda6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3713 } - c004fb6a: 60b2 ld ra,264(sp) - c004fb6c: 6412 ld s0,256(sp) - c004fb6e: 74ee ld s1,248(sp) - c004fb70: 794e ld s2,240(sp) - c004fb72: 79ae ld s3,232(sp) - c004fb74: 7a0e ld s4,224(sp) - c004fb76: 6aee ld s5,216(sp) - c004fb78: 6b4e ld s6,208(sp) - c004fb7a: 6bae ld s7,200(sp) - c004fb7c: 6c0e ld s8,192(sp) - c004fb7e: 7cea ld s9,184(sp) - c004fb80: 7d4a ld s10,176(sp) - c004fb82: 7daa ld s11,168(sp) - c004fb84: 6151 addi sp,sp,272 - c004fb86: 8082 ret + c004fd3a: 60b2 ld ra,264(sp) + c004fd3c: 6412 ld s0,256(sp) + c004fd3e: 74ee ld s1,248(sp) + c004fd40: 794e ld s2,240(sp) + c004fd42: 79ae ld s3,232(sp) + c004fd44: 7a0e ld s4,224(sp) + c004fd46: 6aee ld s5,216(sp) + c004fd48: 6b4e ld s6,208(sp) + c004fd4a: 6bae ld s7,200(sp) + c004fd4c: 6c0e ld s8,192(sp) + c004fd4e: 7cea ld s9,184(sp) + c004fd50: 7d4a ld s10,176(sp) + c004fd52: 7daa ld s11,168(sp) + c004fd54: 6151 addi sp,sp,272 + c004fd56: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3665 digits_per_limb = digits_per_limb_table[radix - 2]; - c004fb88: ffe6071b addiw a4,a2,-2 - c004fb8c: 00023797 auipc a5,0x23 - c004fb90: 85478793 addi a5,a5,-1964 # c00723e0 - c004fb94: 97ba add a5,a5,a4 - c004fb96: 0007c483 lbu s1,0(a5) + c004fd58: ffe6071b addiw a4,a2,-2 + c004fd5c: 00023797 auipc a5,0x23 + c004fd60: 8e478793 addi a5,a5,-1820 # c0072640 + c004fd64: 97ba add a5,a5,a4 + c004fd66: 0007c483 lbu s1,0(a5) get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2708 radixl = radix; - c004fb9a: 8932 mv s2,a2 + c004fd6a: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2709 for(i = 1; i < k; i++) - c004fb9c: 4785 li a5,1 + c004fd6c: 4785 li a5,1 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3665 digits_per_limb = digits_per_limb_table[radix - 2]; - c004fb9e: 00048b9b sext.w s7,s1 + c004fd6e: 00048b9b sext.w s7,s1 get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2709 for(i = 1; i < k; i++) - c004fba2: 0377ce63 blt a5,s7,c004fbde + c004fd72: 0377ce63 blt a5,s7,c004fdae output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3669 n = (n_digits + digits_per_limb - 1) / digits_per_limb; - c004fba6: fffb0413 addi s0,s6,-1 - c004fbaa: 9426 add s0,s0,s1 - c004fbac: 02945433 divu s0,s0,s1 + c004fd76: fffb0413 addi s0,s6,-1 + c004fd7a: 9426 add s0,s0,s1 + c004fd7c: 02945433 divu s0,s0,s1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004fbb0: 000a3783 ld a5,0(s4) + c004fd80: 000a3783 ld a5,0(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004fbb4: 5dfd li s11,-1 - c004fbb6: 1dfe slli s11,s11,0x3f + c004fd84: 5dfd li s11,-1 + c004fd86: 1dfe slli s11,s11,0x3f output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3670 if (bf_resize(a, n)) { - c004fbb8: 1808 addi a0,sp,48 + c004fd88: 1808 addi a0,sp,48 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004fbba: f83e sd a5,48(sp) + c004fd8a: f83e sd a5,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004fbbc: dc02 sw zero,56(sp) + c004fd8c: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004fbbe: e0ee sd s11,64(sp) + c004fd8e: e0ee sd s11,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004fbc0: e482 sd zero,72(sp) + c004fd90: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004fbc2: e882 sd zero,80(sp) + c004fd92: e882 sd zero,80(sp) output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3670 if (bf_resize(a, n)) { - c004fbc4: 85a2 mv a1,s0 - c004fbc6: c5cfd0ef jal ra,c004d022 - c004fbca: cd11 beqz a0,c004fbe6 + c004fd94: 85a2 mv a1,s0 + c004fd96: c5cfd0ef jal ra,c004d1f2 + c004fd9a: cd11 beqz a0,c004fdb6 dbuf_set_error(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:276 s->error = TRUE; - c004fbcc: 4785 li a5,1 - c004fbce: 00fc2c23 sw a5,24(s8) + c004fd9c: 4785 li a5,1 + c004fd9e: 00fc2c23 sw a5,24(s8) output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3672 goto done; - c004fbd2: 03010d93 addi s11,sp,48 + c004fda2: 03010d93 addi s11,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3712 bf_delete(a); - c004fbd6: 856e mv a0,s11 - c004fbd8: 8b4fd0ef jal ra,c004cc8c + c004fda6: 856e mv a0,s11 + c004fda8: 8b4fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3713 } - c004fbdc: b779 j c004fb6a + c004fdac: b779 j c004fd3a get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2710 radixl *= radix; - c004fbde: 03390933 mul s2,s2,s3 + c004fdae: 03390933 mul s2,s2,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2709 for(i = 1; i < k; i++) - c004fbe2: 2785 addiw a5,a5,1 - c004fbe4: bf7d j c004fba2 + c004fdb2: 2785 addiw a5,a5,1 + c004fdb4: bf7d j c004fd72 bf_integer_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3483 bf_context_t *s = r->ctx; - c004fbe6: 77c2 ld a5,48(sp) - c004fbe8: e82a sd a0,16(sp) - c004fbea: e03e sd a5,0(sp) + c004fdb6: 77c2 ld a5,48(sp) + c004fdb8: e82a sd a0,16(sp) + c004fdba: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3488 r_len = r->len; - c004fbec: 67a6 ld a5,72(sp) + c004fdbc: 67a6 ld a5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3489 pow_tab_len = (ceil_log2(r_len) + 2) * 2; /* XXX: check */ - c004fbee: 853e mv a0,a5 - c004fbf0: e43e sd a5,8(sp) - c004fbf2: aacfd0ef jal ra,c004ce9e - c004fbf6: 00250a9b addiw s5,a0,2 - c004fbfa: 001a9a9b slliw s5,s5,0x1 + c004fdbe: 853e mv a0,a5 + c004fdc0: e43e sd a5,8(sp) + c004fdc2: aacfd0ef jal ra,c004d06e + c004fdc6: 00250a9b addiw s5,a0,2 + c004fdca: 001a9a9b slliw s5,s5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3490 pow_tab = bf_malloc(s, sizeof(pow_tab[0]) * pow_tab_len); - c004fbfe: 02800593 li a1,40 - c004fc02: 02ba85b3 mul a1,s5,a1 - c004fc06: 6502 ld a0,0(sp) - c004fc08: 872fd0ef jal ra,c004cc7a - c004fc0c: 8d2a mv s10,a0 + c004fdce: 02800593 li a1,40 + c004fdd2: 02ba85b3 mul a1,s5,a1 + c004fdd6: 6502 ld a0,0(sp) + c004fdd8: 872fd0ef jal ra,c004ce4a + c004fddc: 8d2a mv s10,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3491 if (!pow_tab) - c004fc0e: dd5d beqz a0,c004fbcc - c004fc10: 67a2 ld a5,8(sp) - c004fc12: 66c2 ld a3,16(sp) - c004fc14: 872a mv a4,a0 + c004fdde: dd5d beqz a0,c004fd9c + c004fde0: 67a2 ld a5,8(sp) + c004fde2: 66c2 ld a3,16(sp) + c004fde4: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3493 for(i = 0; i < pow_tab_len; i++) - c004fc16: 0556c863 blt a3,s5,c004fc66 + c004fde6: 0556c863 blt a3,s5,c004fe36 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3497 ceil_log2(radixl)); - c004fc1a: 854a mv a0,s2 - c004fc1c: e43e sd a5,8(sp) - c004fc1e: a80fd0ef jal ra,c004ce9e + c004fdea: 854a mv a0,s2 + c004fdec: e43e sd a5,8(sp) + c004fdee: a80fd0ef jal ra,c004d06e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3496 ret = bf_integer_to_radix_rec(pow_tab, r->tab, a, r_len, 0, r_len, radixl, - c004fc22: 67a2 ld a5,8(sp) - c004fc24: 65c6 ld a1,80(sp) - c004fc26: 0005089b sext.w a7,a0 - c004fc2a: 884a mv a6,s2 - c004fc2c: 4701 li a4,0 - c004fc2e: 86be mv a3,a5 - c004fc30: 8652 mv a2,s4 - c004fc32: 856a mv a0,s10 - c004fc34: c1dff0ef jal ra,c004f850 - c004fc38: 892a mv s2,a0 + c004fdf2: 67a2 ld a5,8(sp) + c004fdf4: 65c6 ld a1,80(sp) + c004fdf6: 0005089b sext.w a7,a0 + c004fdfa: 884a mv a6,s2 + c004fdfc: 4701 li a4,0 + c004fdfe: 86be mv a3,a5 + c004fe00: 8652 mv a2,s4 + c004fe02: 856a mv a0,s10 + c004fe04: c1dff0ef jal ra,c004fa20 + c004fe08: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3499 for(i = 0; i < pow_tab_len; i++) { - c004fc3a: 4d81 li s11,0 - c004fc3c: 000d879b sext.w a5,s11 - c004fc40: 02800713 li a4,40 - c004fc44: 0357cf63 blt a5,s5,c004fc82 + c004fe0a: 4d81 li s11,0 + c004fe0c: 000d879b sext.w a5,s11 + c004fe10: 02800713 li a4,40 + c004fe14: 0357cf63 blt a5,s5,c004fe52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3502 bf_free(s, pow_tab); - c004fc48: 6502 ld a0,0(sp) - c004fc4a: 85ea mv a1,s10 - c004fc4c: 836fd0ef jal ra,c004cc82 + c004fe18: 6502 ld a0,0(sp) + c004fe1a: 85ea mv a1,s10 + c004fe1c: 836fd0ef jal ra,c004ce52 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3674 if (bf_integer_to_radix(a, a1, radixl)) { - c004fc50: f6091ee3 bnez s2,c004fbcc + c004fe20: f6091ee3 bnez s2,c004fd9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3681 first_buf_pos = pos * digits_per_limb - n_digits; - c004fc54: 029404bb mulw s1,s0,s1 + c004fe24: 029404bb mulw s1,s0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3680 pos_incr = 1; - c004fc58: 4785 li a5,1 + c004fe28: 4785 li a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3667 a = &a_s; - c004fc5a: 03010d93 addi s11,sp,48 + c004fe2a: 03010d93 addi s11,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3680 pos_incr = 1; - c004fc5e: e03e sd a5,0(sp) + c004fe2e: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3681 first_buf_pos = pos * digits_per_limb - n_digits; - c004fc60: 416484bb subw s1,s1,s6 - c004fc64: bdd9 j c004fb3a + c004fe30: 416484bb subw s1,s1,s6 + c004fe34: bdd9 j c004fd0a bf_integer_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3494 bf_init(r->ctx, &pow_tab[i]); - c004fc66: 7642 ld a2,48(sp) + c004fe36: 7642 ld a2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3493 for(i = 0; i < pow_tab_len; i++) - c004fc68: 2685 addiw a3,a3,1 + c004fe38: 2685 addiw a3,a3,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c004fc6a: 00072423 sw zero,8(a4) + c004fe3a: 00072423 sw zero,8(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004fc6e: e310 sd a2,0(a4) + c004fe3e: e310 sd a2,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004fc70: 01b73823 sd s11,16(a4) + c004fe40: 01b73823 sd s11,16(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c004fc74: 00073c23 sd zero,24(a4) + c004fe44: 00073c23 sd zero,24(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c004fc78: 02073023 sd zero,32(a4) + c004fe48: 02073023 sd zero,32(a4) bf_integer_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3493 for(i = 0; i < pow_tab_len; i++) - c004fc7c: 02870713 addi a4,a4,40 - c004fc80: bf59 j c004fc16 + c004fe4c: 02870713 addi a4,a4,40 + c004fe50: bf59 j c004fde6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3500 bf_delete(&pow_tab[i]); - c004fc82: 02ed8533 mul a0,s11,a4 - c004fc86: 0d85 addi s11,s11,1 - c004fc88: 956a add a0,a0,s10 - c004fc8a: 802fd0ef jal ra,c004cc8c + c004fe52: 02ed8533 mul a0,s11,a4 + c004fe56: 0d85 addi s11,s11,1 + c004fe58: 956a add a0,a0,s10 + c004fe5a: 802fd0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3499 for(i = 0; i < pow_tab_len; i++) { - c004fc8e: b77d j c004fc3c + c004fe5e: b77d j c004fe0c output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3686 if (buf_pos == digits_per_limb) { - c004fc90: 0eeb9a63 bne s7,a4,c004fd84 + c004fe60: 0eeb9a63 bne s7,a4,c004ff54 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3687 pos -= pos_incr; - c004fc94: 6782 ld a5,0(sp) + c004fe64: 6782 ld a5,0(sp) limb_to_a(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3598 for(i = len - 1; i >= 0; i--) { - c004fc96: 89ea mv s3,s10 + c004fe66: 89ea mv s3,s10 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3687 pos -= pos_incr; - c004fc98: 8c1d sub s0,s0,a5 + c004fe68: 8c1d sub s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3688 if (radix_bits == 0) { - c004fc9a: 0a091563 bnez s2,c004fd44 + c004fe6a: 0a091563 bnez s2,c004ff14 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3689 v = get_limbz(a, pos); - c004fc9e: 85a2 mv a1,s0 - c004fca0: 856e mv a0,s11 - c004fca2: 816fd0ef jal ra,c004ccb8 + c004fe6e: 85a2 mv a1,s0 + c004fe70: 856e mv a0,s11 + c004fe72: 816fd0ef jal ra,c004ce88 limb_to_a(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3596 if (radix == 10) { - c004fca6: 7782 ld a5,32(sp) - c004fca8: 46a9 li a3,10 - c004fcaa: 02d78763 beq a5,a3,c004fcd8 - c004fcae: 08bc addi a5,sp,88 - c004fcb0: 01a78633 add a2,a5,s10 + c004fe76: 7782 ld a5,32(sp) + c004fe78: 46a9 li a3,10 + c004fe7a: 02d78763 beq a5,a3,c004fea8 + c004fe7e: 08bc addi a5,sp,88 + c004fe80: 01a78633 add a2,a5,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3604 for(i = len - 1; i >= 0; i--) { - c004fcb4: 0209c863 bltz s3,c004fce4 + c004fe84: 0209c863 bltz s3,c004feb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3605 digit = (limb_t)n % radix; - c004fcb8: 67a2 ld a5,8(sp) - c004fcba: 02f576b3 remu a3,a0,a5 + c004fe88: 67a2 ld a5,8(sp) + c004fe8a: 02f576b3 remu a3,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3606 n = (limb_t)n / radix; - c004fcbe: 02f55533 divu a0,a0,a5 + c004fe8e: 02f55533 divu a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3605 digit = (limb_t)n % radix; - c004fcc2: 2681 sext.w a3,a3 + c004fe92: 2681 sext.w a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3607 if (digit < 10) - c004fcc4: 47a5 li a5,9 - c004fcc6: 06d7cc63 blt a5,a3,c004fd3e + c004fe94: 47a5 li a5,9 + c004fe96: 06d7cc63 blt a5,a3,c004ff0e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3608 digit += '0'; - c004fcca: 0306869b addiw a3,a3,48 + c004fe9a: 0306869b addiw a3,a3,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3611 buf[i] = digit; - c004fcce: 00d60023 sb a3,0(a2) + c004fe9e: 00d60023 sb a3,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3604 for(i = len - 1; i >= 0; i--) { - c004fcd2: 39fd addiw s3,s3,-1 - c004fcd4: 167d addi a2,a2,-1 - c004fcd6: bff9 j c004fcb4 - c004fcd8: 08bc addi a5,sp,88 - c004fcda: 01a786b3 add a3,a5,s10 + c004fea2: 39fd addiw s3,s3,-1 + c004fea4: 167d addi a2,a2,-1 + c004fea6: bff9 j c004fe84 + c004fea8: 08bc addi a5,sp,88 + c004feaa: 01a786b3 add a3,a5,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3599 digit = (limb_t)n % 10; - c004fcde: 45a9 li a1,10 + c004feae: 45a9 li a1,10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3598 for(i = len - 1; i >= 0; i--) { - c004fce0: 0409d463 bgez s3,c004fd28 + c004feb0: 0409d463 bgez s3,c004fef8 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3696 first_buf_pos = 0; - c004fce4: 4981 li s3,0 + c004feb4: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3698 if (i < dot_pos) { - c004fce6: 8766 mv a4,s9 - c004fce8: 019aec63 bltu s5,s9,c004fd00 + c004feb6: 8766 mv a4,s9 + c004feb8: 019aec63 bltu s5,s9,c004fed0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3701 if (i == dot_pos) - c004fcec: 875a mv a4,s6 - c004fcee: 019a9963 bne s5,s9,c004fd00 + c004febc: 875a mv a4,s6 + c004febe: 019a9963 bne s5,s9,c004fed0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3702 dbuf_putc(s, '.'); - c004fcf2: 02e00593 li a1,46 - c004fcf6: 8562 mv a0,s8 - c004fcf8: f45a sd s6,40(sp) - c004fcfa: 848f80ef jal ra,c0047d42 - c004fcfe: 7722 ld a4,40(sp) + c004fec2: 02e00593 li a1,46 + c004fec6: 8562 mv a0,s8 + c004fec8: f45a sd s6,40(sp) + c004feca: 848f80ef jal ra,c0047f12 + c004fece: 7722 ld a4,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3705 l = bf_min(digits_per_limb - buf_pos, l - i); - c004fd00: 41570733 sub a4,a4,s5 - c004fd04: 409b863b subw a2,s7,s1 - c004fd08: 00c75363 bge a4,a2,c004fd0e - c004fd0c: 863a mv a2,a4 + c004fed0: 41570733 sub a4,a4,s5 + c004fed4: 409b863b subw a2,s7,s1 + c004fed8: 00c75363 bge a4,a2,c004fede + c004fedc: 863a mv a2,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3706 dbuf_put(s, (uint8_t *)(buf + buf_pos), l); - c004fd0e: 08bc addi a5,sp,88 - c004fd10: 009785b3 add a1,a5,s1 - c004fd14: 8562 mv a0,s8 - c004fd16: f432 sd a2,40(sp) - c004fd18: f99f70ef jal ra,c0047cb0 + c004fede: 08bc addi a5,sp,88 + c004fee0: 009785b3 add a1,a5,s1 + c004fee4: 8562 mv a0,s8 + c004fee6: f432 sd a2,40(sp) + c004fee8: f99f70ef jal ra,c0047e80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3707 buf_pos += l; - c004fd1c: 7622 ld a2,40(sp) - c004fd1e: 0096073b addw a4,a2,s1 + c004feec: 7622 ld a2,40(sp) + c004feee: 0096073b addw a4,a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3708 i += l; - c004fd22: 9ab2 add s5,s5,a2 - c004fd24: 84ce mv s1,s3 - c004fd26: bd35 j c004fb62 + c004fef2: 9ab2 add s5,s5,a2 + c004fef4: 84ce mv s1,s3 + c004fef6: bd35 j c004fd32 limb_to_a(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3599 digit = (limb_t)n % 10; - c004fd28: 02b57633 remu a2,a0,a1 + c004fef8: 02b57633 remu a2,a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3598 for(i = len - 1; i >= 0; i--) { - c004fd2c: 39fd addiw s3,s3,-1 - c004fd2e: 16fd addi a3,a3,-1 + c004fefc: 39fd addiw s3,s3,-1 + c004fefe: 16fd addi a3,a3,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3601 buf[i] = digit + '0'; - c004fd30: 0306061b addiw a2,a2,48 - c004fd34: 00c680a3 sb a2,1(a3) + c004ff00: 0306061b addiw a2,a2,48 + c004ff04: 00c680a3 sb a2,1(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3600 n = (limb_t)n / 10; - c004fd38: 02b55533 divu a0,a0,a1 + c004ff08: 02b55533 divu a0,a0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3598 for(i = len - 1; i >= 0; i--) { - c004fd3c: b755 j c004fce0 + c004ff0c: b755 j c004feb0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3610 digit += 'a' - 10; - c004fd3e: 0576869b addiw a3,a3,87 - c004fd42: b771 j c004fcce + c004ff0e: 0576869b addiw a3,a3,87 + c004ff12: b771 j c004fe9e output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3692 v = get_bits(a->tab, a->len, pos); - c004fd44: 018db583 ld a1,24(s11) - c004fd48: 020db503 ld a0,32(s11) - c004fd4c: 8622 mv a2,s0 - c004fd4e: f7ffc0ef jal ra,c004cccc + c004ff14: 018db583 ld a1,24(s11) + c004ff18: 020db503 ld a0,32(s11) + c004ff1c: 8622 mv a2,s0 + c004ff1e: f7ffc0ef jal ra,c004ce9c limb_to_a2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3623 for(i = len - 1; i >= 0; i--) { - c004fd52: 08bc addi a5,sp,88 - c004fd54: 01a78633 add a2,a5,s10 - c004fd58: f809c6e3 bltz s3,c004fce4 + c004ff22: 08bc addi a5,sp,88 + c004ff24: 01a78633 add a2,a5,s10 + c004ff28: f809c6e3 bltz s3,c004feb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3624 digit = n & mask; - c004fd5c: 67e2 ld a5,24(sp) - c004fd5e: 00f576b3 and a3,a0,a5 + c004ff2c: 67e2 ld a5,24(sp) + c004ff2e: 00f576b3 and a3,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3625 n >>= radix_bits; - c004fd62: 67c2 ld a5,16(sp) + c004ff32: 67c2 ld a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3624 digit = n & mask; - c004fd64: 2681 sext.w a3,a3 + c004ff34: 2681 sext.w a3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3625 n >>= radix_bits; - c004fd66: 00f55533 srl a0,a0,a5 + c004ff36: 00f55533 srl a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3626 if (digit < 10) - c004fd6a: 47a5 li a5,9 - c004fd6c: 00d7c963 blt a5,a3,c004fd7e + c004ff3a: 47a5 li a5,9 + c004ff3c: 00d7c963 blt a5,a3,c004ff4e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3627 digit += '0'; - c004fd70: 0306869b addiw a3,a3,48 + c004ff40: 0306869b addiw a3,a3,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3630 buf[i] = digit; - c004fd74: 00d60023 sb a3,0(a2) + c004ff44: 00d60023 sb a3,0(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3623 for(i = len - 1; i >= 0; i--) { - c004fd78: 39fd addiw s3,s3,-1 - c004fd7a: 167d addi a2,a2,-1 - c004fd7c: bff1 j c004fd58 + c004ff48: 39fd addiw s3,s3,-1 + c004ff4a: 167d addi a2,a2,-1 + c004ff4c: bff1 j c004ff28 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3629 digit += 'a' - 10; - c004fd7e: 0576869b addiw a3,a3,87 - c004fd82: bfcd j c004fd74 + c004ff4e: 0576869b addiw a3,a3,87 + c004ff52: bfcd j c004ff44 output_digits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3629 - c004fd84: 89a6 mv s3,s1 - c004fd86: 84ba mv s1,a4 - c004fd88: bfb9 j c004fce6 + c004ff54: 89a6 mv s3,s1 + c004ff56: 84ba mv s1,a4 + c004ff58: bfb9 j c004feb6 -00000000c004fd8a : +00000000c004ff5a : bf_divrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1753 { - c004fd8a: 7131 addi sp,sp,-192 - c004fd8c: fd06 sd ra,184(sp) - c004fd8e: f922 sd s0,176(sp) - c004fd90: f526 sd s1,168(sp) - c004fd92: f14a sd s2,160(sp) - c004fd94: ed4e sd s3,152(sp) - c004fd96: e952 sd s4,144(sp) - c004fd98: e556 sd s5,136(sp) - c004fd9a: e15a sd s6,128(sp) - c004fd9c: fcde sd s7,120(sp) - c004fd9e: f8e2 sd s8,112(sp) - c004fda0: f4e6 sd s9,104(sp) - c004fda2: f0ea sd s10,96(sp) - c004fda4: ecee sd s11,88(sp) + c004ff5a: 7131 addi sp,sp,-192 + c004ff5c: fd06 sd ra,184(sp) + c004ff5e: f922 sd s0,176(sp) + c004ff60: f526 sd s1,168(sp) + c004ff62: f14a sd s2,160(sp) + c004ff64: ed4e sd s3,152(sp) + c004ff66: e952 sd s4,144(sp) + c004ff68: e556 sd s5,136(sp) + c004ff6a: e15a sd s6,128(sp) + c004ff6c: fcde sd s7,120(sp) + c004ff6e: f8e2 sd s8,112(sp) + c004ff70: f4e6 sd s9,104(sp) + c004ff72: f0ea sd s10,96(sp) + c004ff74: ecee sd s11,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1759 assert(q != a && q != b); - c004fda6: 00c50663 beq a0,a2,c004fdb2 - c004fdaa: 84aa mv s1,a0 - c004fdac: 8a36 mv s4,a3 + c004ff76: 00c50663 beq a0,a2,c004ff82 + c004ff7a: 84aa mv s1,a0 + c004ff7c: 8a36 mv s4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1759 (discriminator 2) - c004fdae: 00d51b63 bne a0,a3,c004fdc4 + c004ff7e: 00d51b63 bne a0,a3,c004ff94 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1759 (discriminator 3) - c004fdb2: 4601 li a2,0 - c004fdb4: 6df00593 li a1,1759 + c004ff82: 4601 li a2,0 + c004ff84: 6df00593 li a1,1759 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1760 (discriminator 3) assert(r != a && r != b); - c004fdb8: 00022517 auipc a0,0x22 - c004fdbc: 56050513 addi a0,a0,1376 # c0072318 - c004fdc0: 459030ef jal ra,c0053a18 <__assert> - c004fdc4: 842e mv s0,a1 - c004fdc6: 8932 mv s2,a2 + c004ff88: 00022517 auipc a0,0x22 + c004ff8c: 5f050513 addi a0,a0,1520 # c0072578 + c004ff90: 459030ef jal ra,c0053be8 <__assert> + c004ff94: 842e mv s0,a1 + c004ff96: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1760 (discriminator 4) - c004fdc8: 00b60463 beq a2,a1,c004fdd0 + c004ff98: 00b60463 beq a2,a1,c004ffa0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1760 (discriminator 2) - c004fdcc: 00b69663 bne a3,a1,c004fdd8 + c004ff9c: 00b69663 bne a3,a1,c004ffa8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1760 (discriminator 3) - c004fdd0: 4601 li a2,0 - c004fdd2: 6e000593 li a1,1760 - c004fdd6: b7cd j c004fdb8 + c004ffa0: 4601 li a2,0 + c004ffa2: 6e000593 li a1,1760 + c004ffa6: b7cd j c004ff88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1761 (discriminator 4) assert(q != r); - c004fdd8: 00b51663 bne a0,a1,c004fde4 + c004ffa8: 00b51663 bne a0,a1,c004ffb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1761 (discriminator 1) - c004fddc: 4601 li a2,0 - c004fdde: 6e100593 li a1,1761 - c004fde2: bfd9 j c004fdb8 - c004fde4: 8c3a mv s8,a4 + c004ffac: 4601 li a2,0 + c004ffae: 6e100593 li a1,1761 + c004ffb2: bfd9 j c004ff88 + c004ffb4: 8c3a mv s8,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1763 (discriminator 2) if (a->len == 0 || b->len == 0) { - c004fde6: 6e18 ld a4,24(a2) - c004fde8: 8cbe mv s9,a5 - c004fdea: c319 beqz a4,c004fdf0 + c004ffb6: 6e18 ld a4,24(a2) + c004ffb8: 8cbe mv s9,a5 + c004ffba: c319 beqz a4,c004ffc0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1763 (discriminator 1) - c004fdec: 6e9c ld a5,24(a3) - c004fdee: e7d1 bnez a5,c004fe7a + c004ffbc: 6e9c ld a5,24(a3) + c004ffbe: e7d1 bnez a5,c005004a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1764 bf_set_zero(q, 0); - c004fdf0: 4581 li a1,0 - c004fdf2: 8526 mv a0,s1 - c004fdf4: b0afd0ef jal ra,c004d0fe + c004ffc0: 4581 li a1,0 + c004ffc2: 8526 mv a0,s1 + c004ffc4: b0afd0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1765 if (a->expn == BF_EXP_NAN || b->expn == BF_EXP_NAN) { - c004fdf8: 01093603 ld a2,16(s2) - c004fdfc: 57fd li a5,-1 - c004fdfe: 0017d713 srli a4,a5,0x1 - c004fe02: 00e60663 beq a2,a4,c004fe0e + c004ffc8: 01093603 ld a2,16(s2) + c004ffcc: 57fd li a5,-1 + c004ffce: 0017d713 srli a4,a5,0x1 + c004ffd2: 00e60663 beq a2,a4,c004ffde /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1765 (discriminator 1) - c004fe06: 010a3683 ld a3,16(s4) - c004fe0a: 02e69563 bne a3,a4,c004fe34 + c004ffd6: 010a3683 ld a3,16(s4) + c004ffda: 02e69563 bne a3,a4,c0050004 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1766 bf_set_nan(r); - c004fe0e: 8522 mv a0,s0 - c004fe10: a4cfd0ef jal ra,c004d05c + c004ffde: 8522 mv a0,s0 + c004ffe0: a4cfd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1767 return 0; - c004fe14: 4501 li a0,0 + c004ffe4: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1843 } - c004fe16: 70ea ld ra,184(sp) - c004fe18: 744a ld s0,176(sp) - c004fe1a: 74aa ld s1,168(sp) - c004fe1c: 790a ld s2,160(sp) - c004fe1e: 69ea ld s3,152(sp) - c004fe20: 6a4a ld s4,144(sp) - c004fe22: 6aaa ld s5,136(sp) - c004fe24: 6b0a ld s6,128(sp) - c004fe26: 7be6 ld s7,120(sp) - c004fe28: 7c46 ld s8,112(sp) - c004fe2a: 7ca6 ld s9,104(sp) - c004fe2c: 7d06 ld s10,96(sp) - c004fe2e: 6de6 ld s11,88(sp) - c004fe30: 6129 addi sp,sp,192 - c004fe32: 8082 ret + c004ffe6: 70ea ld ra,184(sp) + c004ffe8: 744a ld s0,176(sp) + c004ffea: 74aa ld s1,168(sp) + c004ffec: 790a ld s2,160(sp) + c004ffee: 69ea ld s3,152(sp) + c004fff0: 6a4a ld s4,144(sp) + c004fff2: 6aaa ld s5,136(sp) + c004fff4: 6b0a ld s6,128(sp) + c004fff6: 7be6 ld s7,120(sp) + c004fff8: 7c46 ld s8,112(sp) + c004fffa: 7ca6 ld s9,104(sp) + c004fffc: 7d06 ld s10,96(sp) + c004fffe: 6de6 ld s11,88(sp) + c0050000: 6129 addi sp,sp,192 + c0050002: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1768 } else if (a->expn == BF_EXP_INF || b->expn == BF_EXP_ZERO) { - c004fe34: 5775 li a4,-3 - c004fe36: 8305 srli a4,a4,0x1 - c004fe38: 00e60563 beq a2,a4,c004fe42 + c0050004: 5775 li a4,-3 + c0050006: 8305 srli a4,a4,0x1 + c0050008: 00e60563 beq a2,a4,c0050012 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1768 (discriminator 1) - c004fe3c: 17fe slli a5,a5,0x3f - c004fe3e: 00f69763 bne a3,a5,c004fe4c + c005000c: 17fe slli a5,a5,0x3f + c005000e: 00f69763 bne a3,a5,c005001c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1769 bf_set_nan(r); - c004fe42: 8522 mv a0,s0 - c004fe44: a18fd0ef jal ra,c004d05c + c0050012: 8522 mv a0,s0 + c0050014: a18fd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1770 return BF_ST_INVALID_OP; - c004fe48: 4505 li a0,1 - c004fe4a: b7f1 j c004fe16 + c0050018: 4505 li a0,1 + c005001a: b7f1 j c004ffe6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1772 bf_set(r, a); - c004fe4c: 85ca mv a1,s2 - c004fe4e: 8522 mv a0,s0 - c004fe50: e70fd0ef jal ra,c004d4c0 + c005001c: 85ca mv a1,s2 + c005001e: 8522 mv a0,s0 + c0050020: e70fd0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1773 return bf_round(r, prec, flags); - c004fe54: 8522 mv a0,s0 + c0050024: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1843 } - c004fe56: 744a ld s0,176(sp) - c004fe58: 70ea ld ra,184(sp) - c004fe5a: 74aa ld s1,168(sp) - c004fe5c: 790a ld s2,160(sp) - c004fe5e: 69ea ld s3,152(sp) - c004fe60: 6a4a ld s4,144(sp) - c004fe62: 6aaa ld s5,136(sp) - c004fe64: 6b0a ld s6,128(sp) - c004fe66: 7be6 ld s7,120(sp) - c004fe68: 7d06 ld s10,96(sp) - c004fe6a: 6de6 ld s11,88(sp) + c0050026: 744a ld s0,176(sp) + c0050028: 70ea ld ra,184(sp) + c005002a: 74aa ld s1,168(sp) + c005002c: 790a ld s2,160(sp) + c005002e: 69ea ld s3,152(sp) + c0050030: 6a4a ld s4,144(sp) + c0050032: 6aaa ld s5,136(sp) + c0050034: 6b0a ld s6,128(sp) + c0050036: 7be6 ld s7,120(sp) + c0050038: 7d06 ld s10,96(sp) + c005003a: 6de6 ld s11,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1773 return bf_round(r, prec, flags); - c004fe6c: 8666 mv a2,s9 - c004fe6e: 85e2 mv a1,s8 + c005003c: 8666 mv a2,s9 + c005003e: 85e2 mv a1,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1843 } - c004fe70: 7ca6 ld s9,104(sp) - c004fe72: 7c46 ld s8,112(sp) - c004fe74: 6129 addi sp,sp,192 + c0050040: 7ca6 ld s9,104(sp) + c0050042: 7c46 ld s8,112(sp) + c0050044: 6129 addi sp,sp,192 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1773 return bf_round(r, prec, flags); - c004fe76: 91bfd06f j c004d790 + c0050046: 91bfd06f j c004d960 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1777 q_sign = a->sign ^ b->sign; - c004fe7a: 00862a83 lw s5,8(a2) - c004fe7e: 0086ab83 lw s7,8(a3) - c004fe82: 89c2 mv s3,a6 - c004fe84: 017acbb3 xor s7,s5,s7 + c005004a: 00862a83 lw s5,8(a2) + c005004e: 0086ab83 lw s7,8(a3) + c0050052: 89c2 mv s3,a6 + c0050054: 017acbb3 xor s7,s5,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1778 is_rndn = (rnd_mode == BF_RNDN || rnd_mode == BF_RNDNA); - c004fe88: 08080e63 beqz a6,c004ff24 + c0050058: 08080e63 beqz a6,c00500f4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1778 (discriminator 2) - c004fe8c: ffc80d13 addi s10,a6,-4 + c005005c: ffc80d13 addi s10,a6,-4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1779 (discriminator 2) switch(rnd_mode) { - c004fe90: 468d li a3,3 + c0050060: 468d li a3,3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1778 (discriminator 2) is_rndn = (rnd_mode == BF_RNDN || rnd_mode == BF_RNDNA); - c004fe92: 001d3d13 seqz s10,s10 + c0050062: 001d3d13 seqz s10,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1779 (discriminator 2) switch(rnd_mode) { - c004fe96: 08d80463 beq a6,a3,c004ff1e + c0050066: 08d80463 beq a6,a3,c00500ee /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1779 - c004fe9a: 0706cd63 blt a3,a6,c004ff14 - c004fe9e: 4689 li a3,2 + c005006a: 0706cd63 blt a3,a6,c00500e4 + c005006e: 4689 li a3,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1787 is_ceil = q_sign; - c004fea0: 8ade mv s5,s7 + c0050070: 8ade mv s5,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1779 switch(rnd_mode) { - c004fea2: 00d98363 beq s3,a3,c004fea8 - c004fea6: 4a81 li s5,0 + c0050072: 00d98363 beq s3,a3,c0050078 + c0050076: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1800 a1->expn = a->expn; - c004fea8: 01093b03 ld s6,16(s2) + c0050078: 01093b03 ld s6,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1801 a1->tab = a->tab; - c004feac: 02093683 ld a3,32(s2) + c005007c: 02093683 ld a3,32(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1805 b1->expn = b->expn; - c004feb0: 010a3d83 ld s11,16(s4) + c0050080: 010a3d83 ld s11,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1802 a1->len = a->len; - c004feb4: ec3a sd a4,24(sp) + c0050084: ec3a sd a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1806 b1->tab = b->tab; - c004feb6: 020a3703 ld a4,32(s4) + c0050086: 020a3703 ld a4,32(s4) bf_tdivremu(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1660 if (bf_cmpu(a, b) < 0) { - c004feba: 102c addi a1,sp,40 - c004febc: 850a mv a0,sp + c005008a: 102c addi a1,sp,40 + c005008c: 850a mv a0,sp bf_divrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1800 a1->expn = a->expn; - c004febe: e85a sd s6,16(sp) + c005008e: e85a sd s6,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1801 a1->tab = a->tab; - c004fec0: f036 sd a3,32(sp) + c0050090: f036 sd a3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1803 a1->sign = 0; - c004fec2: c402 sw zero,8(sp) + c0050092: c402 sw zero,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1805 b1->expn = b->expn; - c004fec4: fc6e sd s11,56(sp) + c0050094: fc6e sd s11,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1806 b1->tab = b->tab; - c004fec6: e4ba sd a4,72(sp) + c0050096: e4ba sd a4,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1807 b1->len = b->len; - c004fec8: e0be sd a5,64(sp) + c0050098: e0be sd a5,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1808 b1->sign = 0; - c004feca: d802 sw zero,48(sp) + c005009a: d802 sw zero,48(sp) bf_tdivremu(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1660 if (bf_cmpu(a, b) < 0) { - c004fecc: a81fd0ef jal ra,c004d94c - c004fed0: 04055f63 bgez a0,c004ff2e + c005009c: a81fd0ef jal ra,c004db1c + c00500a0: 04055f63 bgez a0,c00500fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1661 bf_set_ui(q, 0); - c004fed4: 4581 li a1,0 - c004fed6: 8526 mv a0,s1 - c004fed8: 9a4fd0ef jal ra,c004d07c + c00500a4: 4581 li a1,0 + c00500a6: 8526 mv a0,s1 + c00500a8: 9a4fd0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1662 bf_set(r, a); - c004fedc: 858a mv a1,sp - c004fede: 8522 mv a0,s0 - c004fee0: de0fd0ef jal ra,c004d4c0 + c00500ac: 858a mv a1,sp + c00500ae: 8522 mv a0,s0 + c00500b0: de0fd0ef jal ra,c004d690 bf_is_nan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:241 return (a->expn == BF_EXP_NAN); - c004fee4: 0104ba03 ld s4,16(s1) + c00500b4: 0104ba03 ld s4,16(s1) bf_divrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1812 if (bf_is_nan(q) || bf_is_nan(r)) - c004fee8: 57fd li a5,-1 - c004feea: 8385 srli a5,a5,0x1 - c004feec: 0cfa0963 beq s4,a5,c004ffbe - c004fef0: 6818 ld a4,16(s0) - c004fef2: 0cf70663 beq a4,a5,c004ffbe + c00500b8: 57fd li a5,-1 + c00500ba: 8385 srli a5,a5,0x1 + c00500bc: 0cfa0963 beq s4,a5,c005018e + c00500c0: 6818 ld a4,16(s0) + c00500c2: 0cf70663 beq a4,a5,c005018e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1815 if (r->len != 0) { - c004fef6: 6c1c ld a5,24(s0) - c004fef8: efb5 bnez a5,c004ff74 + c00500c6: 6c1c ld a5,24(s0) + c00500c8: efb5 bnez a5,c0050144 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1836 r->sign ^= a->sign; - c004fefa: 441c lw a5,8(s0) - c004fefc: 00892703 lw a4,8(s2) + c00500ca: 441c lw a5,8(s0) + c00500cc: 00892703 lw a4,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1838 return bf_round(r, prec, flags); - c004ff00: 8666 mv a2,s9 - c004ff02: 85e2 mv a1,s8 + c00500d0: 8666 mv a2,s9 + c00500d2: 85e2 mv a1,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1836 r->sign ^= a->sign; - c004ff04: 8fb9 xor a5,a5,a4 - c004ff06: c41c sw a5,8(s0) + c00500d4: 8fb9 xor a5,a5,a4 + c00500d6: c41c sw a5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1837 q->sign = q_sign; - c004ff08: 0174a423 sw s7,8(s1) + c00500d8: 0174a423 sw s7,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1838 return bf_round(r, prec, flags); - c004ff0c: 8522 mv a0,s0 - c004ff0e: 883fd0ef jal ra,c004d790 - c004ff12: b711 j c004fe16 + c00500dc: 8522 mv a0,s0 + c00500de: 883fd0ef jal ra,c004d960 + c00500e2: b711 j c004ffe6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1779 switch(rnd_mode) { - c004ff14: 4695 li a3,5 - c004ff16: 00d80a63 beq a6,a3,c004ff2a - c004ff1a: 4699 li a3,6 - c004ff1c: b759 j c004fea2 + c00500e4: 4695 li a3,5 + c00500e6: 00d80a63 beq a6,a3,c00500fa + c00500ea: 4699 li a3,6 + c00500ec: b759 j c0050072 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1790 is_ceil = q_sign ^ 1; - c004ff1e: 001bca93 xori s5,s7,1 + c00500ee: 001bca93 xori s5,s7,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1791 break; - c004ff22: b759 j c004fea8 + c00500f2: b759 j c0050078 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1784 is_ceil = FALSE; - c004ff24: 4a81 li s5,0 + c00500f4: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1778 is_rndn = (rnd_mode == BF_RNDN || rnd_mode == BF_RNDNA); - c004ff26: 4d05 li s10,1 - c004ff28: b741 j c004fea8 + c00500f6: 4d05 li s10,1 + c00500f8: b741 j c0050078 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1793 is_ceil = TRUE; - c004ff2a: 4a85 li s5,1 - c004ff2c: bfb5 j c004fea8 + c00500fa: 4a85 li s5,1 + c00500fc: bfb5 j c0050078 bf_tdivremu(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1664 bf_div(q, a, b, bf_max(a->expn - b->expn + 1, 2), BF_RNDZ); - c004ff2e: 41bb06b3 sub a3,s6,s11 - c004ff32: 0685 addi a3,a3,1 - c004ff34: 4789 li a5,2 - c004ff36: 00f6d363 bge a3,a5,c004ff3c - c004ff3a: 4689 li a3,2 - c004ff3c: 1030 addi a2,sp,40 - c004ff3e: 4705 li a4,1 - c004ff40: 858a mv a1,sp - c004ff42: 8526 mv a0,s1 - c004ff44: 9e2ff0ef jal ra,c004f126 + c00500fe: 41bb06b3 sub a3,s6,s11 + c0050102: 0685 addi a3,a3,1 + c0050104: 4789 li a5,2 + c0050106: 00f6d363 bge a3,a5,c005010c + c005010a: 4689 li a3,2 + c005010c: 1030 addi a2,sp,40 + c005010e: 4705 li a4,1 + c0050110: 858a mv a1,sp + c0050112: 8526 mv a0,s1 + c0050114: 9e2ff0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1665 bf_rint(q, BF_RNDZ); - c004ff48: 4585 li a1,1 - c004ff4a: 8526 mv a0,s1 - c004ff4c: 807ff0ef jal ra,c004f752 + c0050118: 4585 li a1,1 + c005011a: 8526 mv a0,s1 + c005011c: 807ff0ef jal ra,c004f922 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1666 bf_mul(r, q, b, BF_PREC_INF, BF_RNDZ); - c004ff50: 5a7d li s4,-1 - c004ff52: 002a5693 srli a3,s4,0x2 - c004ff56: 1030 addi a2,sp,40 - c004ff58: 85a6 mv a1,s1 - c004ff5a: 4705 li a4,1 - c004ff5c: 8522 mv a0,s0 - c004ff5e: 97dfe0ef jal ra,c004e8da + c0050120: 5a7d li s4,-1 + c0050122: 002a5693 srli a3,s4,0x2 + c0050126: 1030 addi a2,sp,40 + c0050128: 85a6 mv a1,s1 + c005012a: 4705 li a4,1 + c005012c: 8522 mv a0,s0 + c005012e: 97dfe0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1667 bf_sub(r, a, r, BF_PREC_INF, BF_RNDZ); - c004ff62: 4705 li a4,1 - c004ff64: 002a5693 srli a3,s4,0x2 - c004ff68: 8622 mv a2,s0 - c004ff6a: 858a mv a1,sp - c004ff6c: 8522 mv a0,s0 - c004ff6e: 9acff0ef jal ra,c004f11a - c004ff72: bf8d j c004fee4 + c0050132: 4705 li a4,1 + c0050134: 002a5693 srli a3,s4,0x2 + c0050138: 8622 mv a2,s0 + c005013a: 858a mv a1,sp + c005013c: 8522 mv a0,s0 + c005013e: 9acff0ef jal ra,c004f2ea + c0050142: bf8d j c00500b4 bf_divrem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1816 if (is_rndn) { - c004ff74: 060d0d63 beqz s10,c004ffee + c0050144: 060d0d63 beqz s10,c00501be /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1818 b1->expn--; - c004ff78: 7ae2 ld s5,56(sp) + c0050148: 7ae2 ld s5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1819 res = bf_cmpu(r, b1); - c004ff7a: 102c addi a1,sp,40 - c004ff7c: 8522 mv a0,s0 + c005014a: 102c addi a1,sp,40 + c005014c: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1818 b1->expn--; - c004ff7e: fffa8793 addi a5,s5,-1 - c004ff82: fc3e sd a5,56(sp) + c005014e: fffa8793 addi a5,s5,-1 + c0050152: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1819 res = bf_cmpu(r, b1); - c004ff84: 9c9fd0ef jal ra,c004d94c + c0050154: 9c9fd0ef jal ra,c004db1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1820 b1->expn++; - c004ff88: fc56 sd s5,56(sp) + c0050158: fc56 sd s5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1821 if (res > 0 || - c004ff8a: 04a05363 blez a0,c004ffd0 + c005015a: 04a05363 blez a0,c00501a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1829 ret = bf_add_si(q, q, 1, BF_PREC_INF, BF_RNDZ); - c004ff8e: 5a7d li s4,-1 - c004ff90: 4705 li a4,1 - c004ff92: 002a5693 srli a3,s4,0x2 - c004ff96: 4605 li a2,1 - c004ff98: 85a6 mv a1,s1 - c004ff9a: 8526 mv a0,s1 - c004ff9c: d3aff0ef jal ra,c004f4d6 - c004ffa0: 89aa mv s3,a0 + c005015e: 5a7d li s4,-1 + c0050160: 4705 li a4,1 + c0050162: 002a5693 srli a3,s4,0x2 + c0050166: 4605 li a2,1 + c0050168: 85a6 mv a1,s1 + c005016a: 8526 mv a0,s1 + c005016c: d3aff0ef jal ra,c004f6a6 + c0050170: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1830 ret |= bf_sub(r, r, b1, BF_PREC_INF, BF_RNDZ); - c004ffa2: 4705 li a4,1 - c004ffa4: 002a5693 srli a3,s4,0x2 - c004ffa8: 1030 addi a2,sp,40 - c004ffaa: 85a2 mv a1,s0 - c004ffac: 8522 mv a0,s0 - c004ffae: 96cff0ef jal ra,c004f11a - c004ffb2: 00a9e9b3 or s3,s3,a0 + c0050172: 4705 li a4,1 + c0050174: 002a5693 srli a3,s4,0x2 + c0050178: 1030 addi a2,sp,40 + c005017a: 85a2 mv a1,s0 + c005017c: 8522 mv a0,s0 + c005017e: 96cff0ef jal ra,c004f2ea + c0050182: 00a9e9b3 or s3,s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1831 if (ret & BF_ST_MEM_ERROR) - c004ffb6: 0209f993 andi s3,s3,32 - c004ffba: f40980e3 beqz s3,c004fefa + c0050186: 0209f993 andi s3,s3,32 + c005018a: f40980e3 beqz s3,c00500ca /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1840 bf_set_nan(q); - c004ffbe: 8526 mv a0,s1 - c004ffc0: 89cfd0ef jal ra,c004d05c + c005018e: 8526 mv a0,s1 + c0050190: 89cfd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1841 bf_set_nan(r); - c004ffc4: 8522 mv a0,s0 - c004ffc6: 896fd0ef jal ra,c004d05c + c0050194: 8522 mv a0,s0 + c0050196: 896fd0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1842 return BF_ST_MEM_ERROR; - c004ffca: 02000513 li a0,32 - c004ffce: b5a1 j c004fe16 + c005019a: 02000513 li a0,32 + c005019e: b5a1 j c004ffe6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1821 (discriminator 1) if (res > 0 || - c004ffd0: f50d bnez a0,c004fefa + c00501a0: f50d bnez a0,c00500ca /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1822 (res == 0 && - c004ffd2: 4791 li a5,4 - c004ffd4: faf98de3 beq s3,a5,c004ff8e + c00501a2: 4791 li a5,4 + c00501a4: faf98de3 beq s3,a5,c005015e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1824 get_bit(q->tab, q->len, q->len * LIMB_BITS - q->expn)))) { - c004ffd8: 6c8c ld a1,24(s1) - c004ffda: 7088 ld a0,32(s1) - c004ffdc: 00659613 slli a2,a1,0x6 - c004ffe0: 41460633 sub a2,a2,s4 - c004ffe4: d23fc0ef jal ra,c004cd06 + c00501a8: 6c8c ld a1,24(s1) + c00501aa: 7088 ld a0,32(s1) + c00501ac: 00659613 slli a2,a1,0x6 + c00501b0: 41460633 sub a2,a2,s4 + c00501b4: d23fc0ef jal ra,c004ced6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1823 (rnd_mode == BF_RNDNA || - c004ffe8: f00509e3 beqz a0,c004fefa - c004ffec: b74d j c004ff8e + c00501b8: f00509e3 beqz a0,c00500ca + c00501bc: b74d j c005015e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1827 } else if (is_ceil) { - c004ffee: fa0a90e3 bnez s5,c004ff8e - c004fff2: b721 j c004fefa + c00501be: fa0a90e3 bnez s5,c005015e + c00501c2: b721 j c00500ca -00000000c004fff4 : +00000000c00501c4 : bf_rem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1847 { - c004fff4: 7139 addi sp,sp,-64 - c004fff6: fc06 sd ra,56(sp) - c004fff8: f822 sd s0,48(sp) + c00501c4: 7139 addi sp,sp,-64 + c00501c6: fc06 sd ra,56(sp) + c00501c8: f822 sd s0,48(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c004fffa: 00053803 ld a6,0(a0) + c00501ca: 00053803 ld a6,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c004fffe: 58fd li a7,-1 - c0050000: 18fe slli a7,a7,0x3f + c00501ce: 58fd li a7,-1 + c00501d0: 18fe slli a7,a7,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050002: e442 sd a6,8(sp) + c00501d2: e442 sd a6,8(sp) bf_rem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1852 ret = bf_divrem(q, r, a, b, prec, flags, rnd_mode); - c0050004: 883e mv a6,a5 - c0050006: 87ba mv a5,a4 - c0050008: 8736 mv a4,a3 - c005000a: 86b2 mv a3,a2 - c005000c: 862e mv a2,a1 - c005000e: 85aa mv a1,a0 - c0050010: 0028 addi a0,sp,8 + c00501d4: 883e mv a6,a5 + c00501d6: 87ba mv a5,a4 + c00501d8: 8736 mv a4,a3 + c00501da: 86b2 mv a3,a2 + c00501dc: 862e mv a2,a1 + c00501de: 85aa mv a1,a0 + c00501e0: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050012: ec46 sd a7,24(sp) + c00501e2: ec46 sd a7,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050014: c802 sw zero,16(sp) + c00501e4: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0050016: f002 sd zero,32(sp) + c00501e6: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050018: f402 sd zero,40(sp) + c00501e8: f402 sd zero,40(sp) bf_rem(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1852 ret = bf_divrem(q, r, a, b, prec, flags, rnd_mode); - c005001a: d71ff0ef jal ra,c004fd8a - c005001e: 842a mv s0,a0 + c00501ea: d71ff0ef jal ra,c004ff5a + c00501ee: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1853 bf_delete(q); - c0050020: 0028 addi a0,sp,8 - c0050022: c6bfc0ef jal ra,c004cc8c + c00501f0: 0028 addi a0,sp,8 + c00501f2: c6bfc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1855 } - c0050026: 70e2 ld ra,56(sp) - c0050028: 8522 mv a0,s0 - c005002a: 7442 ld s0,48(sp) - c005002c: 6121 addi sp,sp,64 - c005002e: 8082 ret + c00501f6: 70e2 ld ra,56(sp) + c00501f8: 8522 mv a0,s0 + c00501fa: 7442 ld s0,48(sp) + c00501fc: 6121 addi sp,sp,64 + c00501fe: 8082 ret -00000000c0050030 : +00000000c0050200 : bf_logic_or(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2433 return bf_logic_op(r, a, b, BF_LOGIC_OR); - c0050030: 4681 li a3,0 - c0050032: cf6ff06f j c004f528 + c0050200: 4681 li a3,0 + c0050202: cf6ff06f j c004f6f8 -00000000c0050036 : +00000000c0050206 : bf_logic_xor(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2439 return bf_logic_op(r, a, b, BF_LOGIC_XOR); - c0050036: 4685 li a3,1 - c0050038: cf0ff06f j c004f528 + c0050206: 4685 li a3,1 + c0050208: cf0ff06f j c004f6f8 -00000000c005003c : +00000000c005020c : bf_logic_and(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2445 return bf_logic_op(r, a, b, BF_LOGIC_AND); - c005003c: 4689 li a3,2 - c005003e: ceaff06f j c004f528 + c005020c: 4689 li a3,2 + c005020e: ceaff06f j c004f6f8 -00000000c0050042 : +00000000c0050212 : bf_get_float64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2456 { - c0050042: 715d addi sp,sp,-80 - c0050044: fc26 sd s1,56(sp) - c0050046: e486 sd ra,72(sp) - c0050048: e0a2 sd s0,64(sp) - c005004a: f84a sd s2,48(sp) + c0050212: 715d addi sp,sp,-80 + c0050214: fc26 sd s1,56(sp) + c0050216: e486 sd ra,72(sp) + c0050218: e0a2 sd s0,64(sp) + c005021a: f84a sd s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2462 if (a->expn == BF_EXP_NAN) { - c005004c: 6914 ld a3,16(a0) - c005004e: 57fd li a5,-1 - c0050050: 0017d713 srli a4,a5,0x1 + c005021c: 6914 ld a3,16(a0) + c005021e: 57fd li a5,-1 + c0050220: 0017d713 srli a4,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2456 { - c0050054: 84ae mv s1,a1 + c0050224: 84ae mv s1,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2462 if (a->expn == BF_EXP_NAN) { - c0050056: 08e68c63 beq a3,a4,c00500ee + c0050226: 08e68c63 beq a3,a4,c00502be bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005005a: 6118 ld a4,0(a0) + c005022a: 6118 ld a4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005005c: 17fe slli a5,a5,0x3f + c005022c: 17fe slli a5,a5,0x3f bf_get_float64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2468 bf_set(b, a); - c005005e: 85aa mv a1,a0 - c0050060: 0028 addi a0,sp,8 + c005022e: 85aa mv a1,a0 + c0050230: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050062: e43a sd a4,8(sp) + c0050232: e43a sd a4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050064: ec3e sd a5,24(sp) - c0050066: 8432 mv s0,a2 + c0050234: ec3e sd a5,24(sp) + c0050236: 8432 mv s0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050068: c802 sw zero,16(sp) + c0050238: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005006a: f002 sd zero,32(sp) + c005023a: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005006c: f402 sd zero,40(sp) + c005023c: f402 sd zero,40(sp) bf_get_float64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2468 bf_set(b, a); - c005006e: c52fd0ef jal ra,c004d4c0 + c005023e: c52fd0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2469 if (bf_is_finite(b)) { - c0050072: 6762 ld a4,24(sp) - c0050074: 57ed li a5,-5 - c0050076: 8385 srli a5,a5,0x1 + c0050242: 6762 ld a4,24(sp) + c0050244: 57ed li a5,-5 + c0050246: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2461 ret = 0; - c0050078: 4901 li s2,0 + c0050248: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2469 if (bf_is_finite(b)) { - c005007a: 00e7ca63 blt a5,a4,c005008e + c005024a: 00e7ca63 blt a5,a4,c005025e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2470 ret = bf_round(b, 53, rnd_mode | BF_FLAG_SUBNORMAL | bf_set_exp_bits(11)); - c005007e: 64846613 ori a2,s0,1608 - c0050082: 03500593 li a1,53 - c0050086: 0028 addi a0,sp,8 - c0050088: f08fd0ef jal ra,c004d790 - c005008c: 892a mv s2,a0 + c005024e: 64846613 ori a2,s0,1608 + c0050252: 03500593 li a1,53 + c0050256: 0028 addi a0,sp,8 + c0050258: f08fd0ef jal ra,c004d960 + c005025c: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2472 if (b->expn == BF_EXP_INF) { - c005008e: 6462 ld s0,24(sp) - c0050090: 57f5 li a5,-3 - c0050092: 8385 srli a5,a5,0x1 - c0050094: 04f40763 beq s0,a5,c00500e2 + c005025e: 6462 ld s0,24(sp) + c0050260: 57f5 li a5,-3 + c0050262: 8385 srli a5,a5,0x1 + c0050264: 04f40763 beq s0,a5,c00502b2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2475 } else if (b->expn == BF_EXP_ZERO) { - c0050098: 57fd li a5,-1 - c005009a: 17fe slli a5,a5,0x3f - c005009c: 04f40763 beq s0,a5,c00500ea + c0050268: 57fd li a5,-1 + c005026a: 17fe slli a5,a5,0x3f + c005026c: 04f40763 beq s0,a5,c00502ba /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2487 m = b->tab[0]; - c00500a0: 76a2 ld a3,40(sp) + c0050270: 76a2 ld a3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2479 e = b->expn + 1023 - 1; - c00500a2: 3fe4071b addiw a4,s0,1022 - c00500a6: 87ba mv a5,a4 + c0050272: 3fe4071b addiw a4,s0,1022 + c0050276: 87ba mv a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2487 m = b->tab[0]; - c00500a8: 6280 ld s0,0(a3) + c0050278: 6280 ld s0,0(a3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2489 if (e <= 0) { - c00500aa: 00e04963 bgtz a4,c00500bc + c005027a: 00e04963 bgtz a4,c005028c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2491 m = m >> (12 - e); - c00500ae: 4731 li a4,12 - c00500b0: 40f707bb subw a5,a4,a5 - c00500b4: 00f457b3 srl a5,s0,a5 + c005027e: 4731 li a4,12 + c0050280: 40f707bb subw a5,a4,a5 + c0050284: 00f457b3 srl a5,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2476 e = 0; - c00500b8: 4701 li a4,0 - c00500ba: a021 j c00500c2 + c0050288: 4701 li a4,0 + c005028a: a021 j c0050292 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2494 m = (m << 1) >> 12; - c00500bc: 0406 slli s0,s0,0x1 - c00500be: 00c45793 srli a5,s0,0xc + c005028c: 0406 slli s0,s0,0x1 + c005028e: 00c45793 srli a5,s0,0xc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2497 u.u = m | ((uint64_t)e << 52) | ((uint64_t)b->sign << 63); - c00500c2: 4442 lw s0,16(sp) - c00500c4: 1752 slli a4,a4,0x34 + c0050292: 4442 lw s0,16(sp) + c0050294: 1752 slli a4,a4,0x34 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2498 bf_delete(b); - c00500c6: 0028 addi a0,sp,8 + c0050296: 0028 addi a0,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2497 u.u = m | ((uint64_t)e << 52) | ((uint64_t)b->sign << 63); - c00500c8: 147e slli s0,s0,0x3f - c00500ca: 8c5d or s0,s0,a5 - c00500cc: 8c59 or s0,s0,a4 + c0050298: 147e slli s0,s0,0x3f + c005029a: 8c5d or s0,s0,a5 + c005029c: 8c59 or s0,s0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2498 bf_delete(b); - c00500ce: bbffc0ef jal ra,c004cc8c + c005029e: bbffc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2500 *pres = u.d; - c00500d2: e080 sd s0,0(s1) + c00502a2: e080 sd s0,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2502 } - c00500d4: 60a6 ld ra,72(sp) - c00500d6: 6406 ld s0,64(sp) - c00500d8: 74e2 ld s1,56(sp) - c00500da: 854a mv a0,s2 - c00500dc: 7942 ld s2,48(sp) - c00500de: 6161 addi sp,sp,80 - c00500e0: 8082 ret + c00502a4: 60a6 ld ra,72(sp) + c00502a6: 6406 ld s0,64(sp) + c00502a8: 74e2 ld s1,56(sp) + c00502aa: 854a mv a0,s2 + c00502ac: 7942 ld s2,48(sp) + c00502ae: 6161 addi sp,sp,80 + c00502b0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2474 m = 0; - c00500e2: 4781 li a5,0 + c00502b2: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2473 e = (1 << 11) - 1; - c00500e4: 7ff00713 li a4,2047 - c00500e8: bfe9 j c00500c2 + c00502b4: 7ff00713 li a4,2047 + c00502b8: bfe9 j c0050292 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2477 m = 0; - c00500ea: 4781 li a5,0 - c00500ec: b7f1 j c00500b8 + c00502ba: 4781 li a5,0 + c00502bc: b7f1 j c0050288 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2463 u.u = 0x7ff8000000000000; /* quiet nan */ - c00500ee: 00fff437 lui s0,0xfff - c00500f2: 141e slli s0,s0,0x27 + c00502be: 00fff437 lui s0,0xfff + c00502c2: 141e slli s0,s0,0x27 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2461 ret = 0; - c00500f4: 4901 li s2,0 - c00500f6: bff1 j c00500d2 + c00502c4: 4901 li s2,0 + c00502c6: bff1 j c00502a2 -00000000c00500f8 : +00000000c00502c8 : bf_set_float64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2505 { - c00500f8: e20507d3 fmv.x.d a5,fa0 - c00500fc: 7179 addi sp,sp,-48 - c00500fe: ec26 sd s1,24(sp) + c00502c8: e20507d3 fmv.x.d a5,fa0 + c00502cc: 7179 addi sp,sp,-48 + c00502ce: ec26 sd s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2513 m = u.u & (((uint64_t)1 << 52) - 1); - c0050100: 54fd li s1,-1 - c0050102: 00c4d713 srli a4,s1,0xc + c00502d0: 54fd li s1,-1 + c00502d2: 00c4d713 srli a4,s1,0xc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2505 { - c0050106: f022 sd s0,32(sp) + c00502d6: f022 sd s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2512 e = (u.u >> 52) & ((1 << 11) - 1); - c0050108: 0347d413 srli s0,a5,0x34 + c00502d8: 0347d413 srli s0,a5,0x34 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2505 { - c005010c: e44e sd s3,8(sp) - c005010e: f406 sd ra,40(sp) + c00502dc: e44e sd s3,8(sp) + c00502de: f406 sd ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2511 sgn = u.u >> 63; - c0050110: 0007a993 slti s3,a5,0 + c00502e0: 0007a993 slti s3,a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2505 { - c0050114: e84a sd s2,16(sp) + c00502e4: e84a sd s2,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2513 m = u.u & (((uint64_t)1 << 52) - 1); - c0050116: 8ff9 and a5,a5,a4 + c00502e6: 8ff9 and a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2512 e = (u.u >> 52) & ((1 << 11) - 1); - c0050118: 7ff47413 andi s0,s0,2047 + c00502e8: 7ff47413 andi s0,s0,2047 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2514 if (e == ((1 << 11) - 1)) { - c005011c: 7ff00713 li a4,2047 - c0050120: 02e41263 bne s0,a4,c0050144 + c00502ec: 7ff00713 li a4,2047 + c00502f0: 02e41263 bne s0,a4,c0050314 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2515 if (m != 0) { - c0050124: cf81 beqz a5,c005013c + c00502f4: cf81 beqz a5,c005030c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2516 bf_set_nan(a); - c0050126: f37fc0ef jal ra,c004d05c + c00502f6: f37fc0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2547 return 0; - c005012a: 4401 li s0,0 + c00502fa: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2551 } - c005012c: 70a2 ld ra,40(sp) - c005012e: 8522 mv a0,s0 - c0050130: 7402 ld s0,32(sp) - c0050132: 64e2 ld s1,24(sp) - c0050134: 6942 ld s2,16(sp) - c0050136: 69a2 ld s3,8(sp) - c0050138: 6145 addi sp,sp,48 - c005013a: 8082 ret + c00502fc: 70a2 ld ra,40(sp) + c00502fe: 8522 mv a0,s0 + c0050300: 7402 ld s0,32(sp) + c0050302: 64e2 ld s1,24(sp) + c0050304: 6942 ld s2,16(sp) + c0050306: 69a2 ld s3,8(sp) + c0050308: 6145 addi sp,sp,48 + c005030a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2518 bf_set_inf(a, sgn); - c005013c: 85ce mv a1,s3 - c005013e: fe5fc0ef jal ra,c004d122 - c0050142: b7e5 j c005012a - c0050144: 892a mv s2,a0 + c005030c: 85ce mv a1,s3 + c005030e: fe5fc0ef jal ra,c004d2f2 + c0050312: b7e5 j c00502fa + c0050314: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2520 } else if (e == 0) { - c0050146: ec1d bnez s0,c0050184 + c0050316: ec1d bnez s0,c0050354 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2521 if (m == 0) { - c0050148: e789 bnez a5,c0050152 + c0050318: e789 bnez a5,c0050322 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2522 bf_set_zero(a, sgn); - c005014a: 85ce mv a1,s3 - c005014c: fb3fc0ef jal ra,c004d0fe - c0050150: bff1 j c005012c + c005031a: 85ce mv a1,s3 + c005031c: fb3fc0ef jal ra,c004d2ce + c0050320: bff1 j c00502fc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2525 m <<= 12; - c0050152: 00c79493 slli s1,a5,0xc + c0050322: 00c79493 slli s1,a5,0xc clz64(): /Users/Luppy/riscv/quickjs-nuttx/cutils.h:126 return __builtin_clzll(a); - c0050156: 8526 mv a0,s1 - c0050158: ea9af0ef jal ra,c0000000 <__clzdi2> + c0050326: 8526 mv a0,s1 + c0050328: cd9af0ef jal ra,c0000000 <__clzdi2> bf_set_float64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2527 m <<= shift; - c005015c: 00a494b3 sll s1,s1,a0 + c005032c: 00a494b3 sll s1,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2528 e = -shift; - c0050160: 40a0043b negw s0,a0 + c0050330: 40a0043b negw s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2534 a->expn = e - 1023 + 1; - c0050164: c024041b addiw s0,s0,-1022 - c0050168: 00893823 sd s0,16(s2) + c0050334: c024041b addiw s0,s0,-1022 + c0050338: 00893823 sd s0,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2541 if (bf_resize(a, 1)) - c005016c: 4585 li a1,1 - c005016e: 854a mv a0,s2 - c0050170: eb3fc0ef jal ra,c004d022 - c0050174: 842a mv s0,a0 - c0050176: c919 beqz a0,c005018c + c005033c: 4585 li a1,1 + c005033e: 854a mv a0,s2 + c0050340: eb3fc0ef jal ra,c004d1f2 + c0050344: 842a mv s0,a0 + c0050346: c919 beqz a0,c005035c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2549 bf_set_nan(a); - c0050178: 854a mv a0,s2 - c005017a: ee3fc0ef jal ra,c004d05c + c0050348: 854a mv a0,s2 + c005034a: ee3fc0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2550 return BF_ST_MEM_ERROR; - c005017e: 02000413 li s0,32 - c0050182: b76d j c005012c + c005034e: 02000413 li s0,32 + c0050352: b76d j c00502fc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2532 m = (m << 11) | ((uint64_t)1 << 63); - c0050184: 07ae slli a5,a5,0xb - c0050186: 14fe slli s1,s1,0x3f - c0050188: 8cdd or s1,s1,a5 - c005018a: bfe9 j c0050164 + c0050354: 07ae slli a5,a5,0xb + c0050356: 14fe slli s1,s1,0x3f + c0050358: 8cdd or s1,s1,a5 + c005035a: bfe9 j c0050334 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2543 a->tab[0] = m; - c005018c: 02093783 ld a5,32(s2) - c0050190: e384 sd s1,0(a5) + c005035c: 02093783 ld a5,32(s2) + c0050360: e384 sd s1,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2545 a->sign = sgn; - c0050192: 01392423 sw s3,8(s2) - c0050196: bf59 j c005012c + c0050362: 01392423 sw s3,8(s2) + c0050366: bf59 j c00502fc -00000000c0050198 : +00000000c0050368 : bf_get_int32(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2556 { - c0050198: 1101 addi sp,sp,-32 - c005019a: e822 sd s0,16(sp) - c005019c: e426 sd s1,8(sp) - c005019e: ec06 sd ra,24(sp) + c0050368: 1101 addi sp,sp,-32 + c005036a: e822 sd s0,16(sp) + c005036c: e426 sd s1,8(sp) + c005036e: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2559 if (a->expn >= BF_EXP_INF) { - c00501a0: 6998 ld a4,16(a1) - c00501a2: 57ed li a5,-5 - c00501a4: 8385 srli a5,a5,0x1 + c0050370: 6998 ld a4,16(a1) + c0050372: 57ed li a5,-5 + c0050374: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2556 { - c00501a6: 84aa mv s1,a0 - c00501a8: 842e mv s0,a1 + c0050376: 84aa mv s1,a0 + c0050378: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2559 if (a->expn >= BF_EXP_INF) { - c00501aa: 02e7d763 bge a5,a4,c00501d8 + c005037a: 02e7d763 bge a5,a4,c00503a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2561 if (flags & BF_GET_INT_MOD) { - c00501ae: 00167513 andi a0,a2,1 + c005037e: 00167513 andi a0,a2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2562 v = 0; - c00501b2: 4781 li a5,0 + c0050382: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2561 if (flags & BF_GET_INT_MOD) { - c00501b4: ed01 bnez a0,c00501cc + c0050384: ed01 bnez a0,c005039c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2563 } else if (a->expn == BF_EXP_INF) { - c00501b6: 57f5 li a5,-3 - c00501b8: 8385 srli a5,a5,0x1 - c00501ba: 08f71b63 bne a4,a5,c0050250 + c0050386: 57f5 li a5,-3 + c0050388: 8385 srli a5,a5,0x1 + c005038a: 08f71b63 bne a4,a5,c0050420 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2564 v = (uint32_t)INT32_MAX + a->sign; - c00501be: 459c lw a5,8(a1) - c00501c0: 80000537 lui a0,0x80000 - c00501c4: fff54513 not a0,a0 - c00501c8: 9fa9 addw a5,a5,a0 + c005038e: 459c lw a5,8(a1) + c0050390: 80000537 lui a0,0x80000 + c0050394: fff54513 not a0,a0 + c0050398: 9fa9 addw a5,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2560 ret = BF_ST_INVALID_OP; - c00501ca: 4505 li a0,1 + c005039a: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2595 } - c00501cc: 60e2 ld ra,24(sp) - c00501ce: 6442 ld s0,16(sp) + c005039c: 60e2 ld ra,24(sp) + c005039e: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2593 *pres = v; - c00501d0: c09c sw a5,0(s1) + c00503a0: c09c sw a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2595 } - c00501d2: 64a2 ld s1,8(sp) - c00501d4: 6105 addi sp,sp,32 - c00501d6: 8082 ret + c00503a2: 64a2 ld s1,8(sp) + c00503a4: 6105 addi sp,sp,32 + c00503a6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2568 } else if (a->expn <= 0) { - c00501d8: 06e05963 blez a4,c005024a + c00503a8: 06e05963 blez a4,c005041a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2571 } else if (a->expn <= 31) { - c00501dc: 47fd li a5,31 - c00501de: 02e7c563 blt a5,a4,c0050208 + c00503ac: 47fd li a5,31 + c00503ae: 02e7c563 blt a5,a4,c00503d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2572 v = a->tab[a->len - 1] >> (LIMB_BITS - a->expn); - c00501e2: 6d9c ld a5,24(a1) - c00501e4: 7194 ld a3,32(a1) - c00501e6: 078e slli a5,a5,0x3 - c00501e8: 96be add a3,a3,a5 - c00501ea: 04000793 li a5,64 - c00501ee: 40e7873b subw a4,a5,a4 - c00501f2: ff86b783 ld a5,-8(a3) - c00501f6: 00e7d7b3 srl a5,a5,a4 - c00501fa: 2781 sext.w a5,a5 + c00503b2: 6d9c ld a5,24(a1) + c00503b4: 7194 ld a3,32(a1) + c00503b6: 078e slli a5,a5,0x3 + c00503b8: 96be add a3,a3,a5 + c00503ba: 04000793 li a5,64 + c00503be: 40e7873b subw a4,a5,a4 + c00503c2: ff86b783 ld a5,-8(a3) + c00503c6: 00e7d7b3 srl a5,a5,a4 + c00503ca: 2781 sext.w a5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2589 if (a->sign) - c00501fc: 4408 lw a0,8(s0) - c00501fe: d579 beqz a0,c00501cc + c00503cc: 4408 lw a0,8(s0) + c00503ce: d579 beqz a0,c005039c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2590 v = -v; - c0050200: 40f007bb negw a5,a5 + c00503d0: 40f007bb negw a5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2591 ret = 0; - c0050204: 4501 li a0,0 - c0050206: b7d9 j c00501cc + c00503d4: 4501 li a0,0 + c00503d6: b7d9 j c005039c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2576 } else if (!(flags & BF_GET_INT_MOD)) { - c0050208: 8a05 andi a2,a2,1 - c005020a: e615 bnez a2,c0050236 + c00503d8: 8a05 andi a2,a2,1 + c00503da: e615 bnez a2,c0050406 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2578 if (a->sign) { - c005020c: 459c lw a5,8(a1) - c005020e: c3a9 beqz a5,c0050250 + c00503dc: 459c lw a5,8(a1) + c00503de: c3a9 beqz a5,c0050420 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2580 if (a->expn == 32 && - c0050210: 02000793 li a5,32 + c00503e0: 02000793 li a5,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2577 ret = BF_ST_INVALID_OP; - c0050214: 4505 li a0,1 + c00503e4: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2580 if (a->expn == 32 && - c0050216: 00f71d63 bne a4,a5,c0050230 + c00503e6: 00f71d63 bne a4,a5,c0050400 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2581 (discriminator 1) (a->tab[a->len - 1] >> (LIMB_BITS - 32)) == v) { - c005021a: 6d98 ld a4,24(a1) - c005021c: 719c ld a5,32(a1) + c00503ea: 6d98 ld a4,24(a1) + c00503ec: 719c ld a5,32(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2580 (discriminator 1) if (a->expn == 32 && - c005021e: 80000537 lui a0,0x80000 + c00503ee: 80000537 lui a0,0x80000 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2581 (discriminator 1) (a->tab[a->len - 1] >> (LIMB_BITS - 32)) == v) { - c0050222: 070e slli a4,a4,0x3 - c0050224: 97ba add a5,a5,a4 - c0050226: ffc7e603 lwu a2,-4(a5) + c00503f2: 070e slli a4,a4,0x3 + c00503f4: 97ba add a5,a5,a4 + c00503f6: ffc7e603 lwu a2,-4(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2580 (discriminator 1) if (a->expn == 32 && - c005022a: 962a add a2,a2,a0 + c00503fa: 962a add a2,a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2560 (discriminator 1) ret = BF_ST_INVALID_OP; - c005022c: 00c03533 snez a0,a2 + c00503fc: 00c03533 snez a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2579 v = (uint32_t)INT32_MAX + 1; - c0050230: 800007b7 lui a5,0x80000 - c0050234: bf61 j c00501cc + c0050400: 800007b7 lui a5,0x80000 + c0050404: bf61 j c005039c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2588 v = get_bits(a->tab, a->len, a->len * LIMB_BITS - a->expn); - c0050236: 6d8c ld a1,24(a1) - c0050238: 7008 ld a0,32(s0) - c005023a: 00659613 slli a2,a1,0x6 - c005023e: 8e19 sub a2,a2,a4 - c0050240: a8dfc0ef jal ra,c004cccc - c0050244: 0005079b sext.w a5,a0 - c0050248: bf55 j c00501fc + c0050406: 6d8c ld a1,24(a1) + c0050408: 7008 ld a0,32(s0) + c005040a: 00659613 slli a2,a1,0x6 + c005040e: 8e19 sub a2,a2,a4 + c0050410: a8dfc0ef jal ra,c004ce9c + c0050414: 0005079b sext.w a5,a0 + c0050418: bf55 j c00503cc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2570 ret = 0; - c005024a: 4501 li a0,0 + c005041a: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2569 v = 0; - c005024c: 4781 li a5,0 - c005024e: bfbd j c00501cc + c005041c: 4781 li a5,0 + c005041e: bfbd j c005039c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2566 v = INT32_MAX; - c0050250: 800007b7 lui a5,0x80000 + c0050420: 800007b7 lui a5,0x80000 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2560 ret = BF_ST_INVALID_OP; - c0050254: 4505 li a0,1 + c0050424: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2566 v = INT32_MAX; - c0050256: fff7c793 not a5,a5 - c005025a: bf8d j c00501cc + c0050426: fff7c793 not a5,a5 + c005042a: bf8d j c005039c -00000000c005025c : +00000000c005042c : bf_get_int64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2600 { - c005025c: 1101 addi sp,sp,-32 - c005025e: e822 sd s0,16(sp) - c0050260: e426 sd s1,8(sp) - c0050262: ec06 sd ra,24(sp) + c005042c: 1101 addi sp,sp,-32 + c005042e: e822 sd s0,16(sp) + c0050430: e426 sd s1,8(sp) + c0050432: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2603 if (a->expn >= BF_EXP_INF) { - c0050264: 6998 ld a4,16(a1) - c0050266: 57ed li a5,-5 - c0050268: 8385 srli a5,a5,0x1 + c0050434: 6998 ld a4,16(a1) + c0050436: 57ed li a5,-5 + c0050438: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2600 { - c005026a: 84aa mv s1,a0 - c005026c: 842e mv s0,a1 + c005043a: 84aa mv s1,a0 + c005043c: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2603 if (a->expn >= BF_EXP_INF) { - c005026e: 02e7d063 bge a5,a4,c005028e + c005043e: 02e7d063 bge a5,a4,c005045e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2605 if (flags & BF_GET_INT_MOD) { - c0050272: 00167513 andi a0,a2,1 + c0050442: 00167513 andi a0,a2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2606 v = 0; - c0050276: 4781 li a5,0 + c0050446: 4781 li a5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2605 if (flags & BF_GET_INT_MOD) { - c0050278: e535 bnez a0,c00502e4 + c0050448: e535 bnez a0,c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2607 } else if (a->expn == BF_EXP_INF) { - c005027a: 56f5 li a3,-3 - c005027c: 57fd li a5,-1 - c005027e: 8285 srli a3,a3,0x1 - c0050280: 8385 srli a5,a5,0x1 - c0050282: 00d71463 bne a4,a3,c005028a + c005044a: 56f5 li a3,-3 + c005044c: 57fd li a5,-1 + c005044e: 8285 srli a3,a3,0x1 + c0050450: 8385 srli a5,a5,0x1 + c0050452: 00d71463 bne a4,a3,c005045a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2608 v = (uint64_t)INT64_MAX + a->sign; - c0050286: 4588 lw a0,8(a1) - c0050288: 97aa add a5,a5,a0 + c0050456: 4588 lw a0,8(a1) + c0050458: 97aa add a5,a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2604 ret = BF_ST_INVALID_OP; - c005028a: 4505 li a0,1 - c005028c: a8a1 j c00502e4 + c005045a: 4505 li a0,1 + c005045c: a8a1 j c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2612 } else if (a->expn <= 0) { - c005028e: 06e05a63 blez a4,c0050302 + c005045e: 06e05a63 blez a4,c00504d2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2615 } else if (a->expn <= 63) { - c0050292: 03f00793 li a5,63 - c0050296: 02e7c463 blt a5,a4,c00502be + c0050462: 03f00793 li a5,63 + c0050466: 02e7c463 blt a5,a4,c005048e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2623 v = a->tab[a->len - 1] >> (LIMB_BITS - a->expn); - c005029a: 6d9c ld a5,24(a1) - c005029c: 7194 ld a3,32(a1) - c005029e: 078e slli a5,a5,0x3 - c00502a0: 96be add a3,a3,a5 - c00502a2: 04000793 li a5,64 - c00502a6: 40e7873b subw a4,a5,a4 - c00502aa: ff86b783 ld a5,-8(a3) - c00502ae: 00e7d7b3 srl a5,a5,a4 + c005046a: 6d9c ld a5,24(a1) + c005046c: 7194 ld a3,32(a1) + c005046e: 078e slli a5,a5,0x3 + c0050470: 96be add a3,a3,a5 + c0050472: 04000793 li a5,64 + c0050476: 40e7873b subw a4,a5,a4 + c005047a: ff86b783 ld a5,-8(a3) + c005047e: 00e7d7b3 srl a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2650 if (a->sign) - c00502b2: 4408 lw a0,8(s0) - c00502b4: c905 beqz a0,c00502e4 + c0050482: 4408 lw a0,8(s0) + c0050484: c905 beqz a0,c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2651 v = -v; - c00502b6: 40f007b3 neg a5,a5 + c0050486: 40f007b3 neg a5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2652 ret = 0; - c00502ba: 4501 li a0,0 - c00502bc: a025 j c00502e4 + c005048a: 4501 li a0,0 + c005048c: a025 j c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2628 } else if (!(flags & BF_GET_INT_MOD)) { - c00502be: 8a05 andi a2,a2,1 - c00502c0: ea05 bnez a2,c00502f0 + c005048e: 8a05 andi a2,a2,1 + c0050490: ea05 bnez a2,c00504c0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2630 if (a->sign) { - c00502c2: 459c lw a5,8(a1) - c00502c4: c3b1 beqz a5,c0050308 + c0050492: 459c lw a5,8(a1) + c0050494: c3b1 beqz a5,c00504d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2633 if (a->expn == 64) { - c00502c6: 04000793 li a5,64 - c00502ca: 04f71363 bne a4,a5,c0050310 + c0050496: 04000793 li a5,64 + c005049a: 04f71363 bne a4,a5,c00504e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2634 v1 = a->tab[a->len - 1]; - c00502ce: 6d98 ld a4,24(a1) - c00502d0: 719c ld a5,32(a1) - c00502d2: 070e slli a4,a4,0x3 - c00502d4: 97ba add a5,a5,a4 + c005049e: 6d98 ld a4,24(a1) + c00504a0: 719c ld a5,32(a1) + c00504a2: 070e slli a4,a4,0x3 + c00504a4: 97ba add a5,a5,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2638 if (v1 == v) - c00502d6: ff87b603 ld a2,-8(a5) # ffffffff7ffffff8 <_ebss+0xfffffffebfefeed2> - c00502da: 57fd li a5,-1 - c00502dc: 17fe slli a5,a5,0x3f - c00502de: 963e add a2,a2,a5 + c00504a6: ff87b603 ld a2,-8(a5) # ffffffff7ffffff8 <_ebss+0xfffffffebfefeed2> + c00504aa: 57fd li a5,-1 + c00504ac: 17fe slli a5,a5,0x3f + c00504ae: 963e add a2,a2,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2604 ret = BF_ST_INVALID_OP; - c00502e0: 00c03533 snez a0,a2 + c00504b0: 00c03533 snez a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2656 } - c00502e4: 60e2 ld ra,24(sp) - c00502e6: 6442 ld s0,16(sp) + c00504b4: 60e2 ld ra,24(sp) + c00504b6: 6442 ld s0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2654 *pres = v; - c00502e8: e09c sd a5,0(s1) + c00504b8: e09c sd a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2656 } - c00502ea: 64a2 ld s1,8(sp) - c00502ec: 6105 addi sp,sp,32 - c00502ee: 8082 ret + c00504ba: 64a2 ld s1,8(sp) + c00504bc: 6105 addi sp,sp,32 + c00504be: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2645 slimb_t bit_pos = a->len * LIMB_BITS - a->expn; - c00502f0: 6d8c ld a1,24(a1) + c00504c0: 6d8c ld a1,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2646 v = get_bits(a->tab, a->len, bit_pos); - c00502f2: 7008 ld a0,32(s0) + c00504c2: 7008 ld a0,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2645 slimb_t bit_pos = a->len * LIMB_BITS - a->expn; - c00502f4: 00659613 slli a2,a1,0x6 + c00504c4: 00659613 slli a2,a1,0x6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2646 v = get_bits(a->tab, a->len, bit_pos); - c00502f8: 8e19 sub a2,a2,a4 - c00502fa: 9d3fc0ef jal ra,c004cccc - c00502fe: 87aa mv a5,a0 - c0050300: bf4d j c00502b2 + c00504c8: 8e19 sub a2,a2,a4 + c00504ca: 9d3fc0ef jal ra,c004ce9c + c00504ce: 87aa mv a5,a0 + c00504d0: bf4d j c0050482 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2614 ret = 0; - c0050302: 4501 li a0,0 + c00504d2: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2613 v = 0; - c0050304: 4781 li a5,0 - c0050306: bff9 j c00502e4 + c00504d4: 4781 li a5,0 + c00504d6: bff9 j c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2610 v = INT64_MAX; - c0050308: 57fd li a5,-1 + c00504d8: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2604 ret = BF_ST_INVALID_OP; - c005030a: 4505 li a0,1 + c00504da: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2610 v = INT64_MAX; - c005030c: 8385 srli a5,a5,0x1 - c005030e: bfd9 j c00502e4 + c00504dc: 8385 srli a5,a5,0x1 + c00504de: bfd9 j c00504b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2632 v = (uint64_t)INT64_MAX + 1; - c0050310: 57fd li a5,-1 + c00504e0: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2629 ret = BF_ST_INVALID_OP; - c0050312: 4505 li a0,1 + c00504e2: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2632 v = (uint64_t)INT64_MAX + 1; - c0050314: 17fe slli a5,a5,0x3f - c0050316: b7f9 j c00502e4 + c00504e4: 17fe slli a5,a5,0x3f + c00504e6: b7f9 j c00504b4 -00000000c0050318 : +00000000c00504e8 : bf_remquo(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1868 { - c0050318: 715d addi sp,sp,-80 - c005031a: e486 sd ra,72(sp) - c005031c: e0a2 sd s0,64(sp) - c005031e: fc26 sd s1,56(sp) - c0050320: 84aa mv s1,a0 + c00504e8: 715d addi sp,sp,-80 + c00504ea: e486 sd ra,72(sp) + c00504ec: e0a2 sd s0,64(sp) + c00504ee: fc26 sd s1,56(sp) + c00504f0: 84aa mv s1,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050322: 6188 ld a0,0(a1) + c00504f2: 6188 ld a0,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050324: c802 sw zero,16(sp) + c00504f4: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0050326: f002 sd zero,32(sp) + c00504f6: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050328: e42a sd a0,8(sp) + c00504f8: e42a sd a0,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005032a: 557d li a0,-1 - c005032c: 157e slli a0,a0,0x3f - c005032e: ec2a sd a0,24(sp) + c00504fa: 557d li a0,-1 + c00504fc: 157e slli a0,a0,0x3f + c00504fe: ec2a sd a0,24(sp) bf_remquo(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1873 ret = bf_divrem(q, r, a, b, prec, flags, rnd_mode); - c0050330: 0028 addi a0,sp,8 + c0050500: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050332: f402 sd zero,40(sp) + c0050502: f402 sd zero,40(sp) bf_remquo(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1873 ret = bf_divrem(q, r, a, b, prec, flags, rnd_mode); - c0050334: a57ff0ef jal ra,c004fd8a - c0050338: 842a mv s0,a0 + c0050504: a57ff0ef jal ra,c004ff5a + c0050508: 842a mv s0,a0 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c005033a: 002c addi a1,sp,8 - c005033c: 4605 li a2,1 - c005033e: 8526 mv a0,s1 - c0050340: f1dff0ef jal ra,c005025c + c005050a: 002c addi a1,sp,8 + c005050c: 4605 li a2,1 + c005050e: 8526 mv a0,s1 + c0050510: f1dff0ef jal ra,c005042c bf_remquo(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1875 bf_delete(q); - c0050344: 0028 addi a0,sp,8 - c0050346: 947fc0ef jal ra,c004cc8c + c0050514: 0028 addi a0,sp,8 + c0050516: 947fc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1877 } - c005034a: 60a6 ld ra,72(sp) - c005034c: 8522 mv a0,s0 - c005034e: 6406 ld s0,64(sp) - c0050350: 74e2 ld s1,56(sp) - c0050352: 6161 addi sp,sp,80 - c0050354: 8082 ret + c005051a: 60a6 ld ra,72(sp) + c005051c: 8522 mv a0,s0 + c005051e: 6406 ld s0,64(sp) + c0050520: 74e2 ld s1,56(sp) + c0050522: 6161 addi sp,sp,80 + c0050524: 8082 ret -00000000c0050356 : +00000000c0050526 : bf_pow_int(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4614 { - c0050356: 7159 addi sp,sp,-112 - c0050358: e8ca sd s2,80(sp) - c005035a: e4ce sd s3,72(sp) - c005035c: e0d2 sd s4,64(sp) - c005035e: f85a sd s6,48(sp) - c0050360: f486 sd ra,104(sp) - c0050362: f0a2 sd s0,96(sp) - c0050364: eca6 sd s1,88(sp) - c0050366: fc56 sd s5,56(sp) + c0050526: 7159 addi sp,sp,-112 + c0050528: e8ca sd s2,80(sp) + c005052a: e4ce sd s3,72(sp) + c005052c: e0d2 sd s4,64(sp) + c005052e: f85a sd s6,48(sp) + c0050530: f486 sd ra,104(sp) + c0050532: f0a2 sd s0,96(sp) + c0050534: eca6 sd s1,88(sp) + c0050536: fc56 sd s5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4615 bf_context_t *s = r->ctx; - c0050368: 00053a83 ld s5,0(a0) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> + c0050538: 00053a83 ld s5,0(a0) # ffffffff80000000 <_ebss+0xfffffffebfefeeda> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4614 { - c005036c: 892a mv s2,a0 - c005036e: 8b2e mv s6,a1 - c0050370: 89b2 mv s3,a2 + c005053c: 892a mv s2,a0 + c005053e: 8b2e mv s6,a1 + c0050540: 89b2 mv s3,a2 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c0050372: 85b6 mv a1,a3 - c0050374: 4601 li a2,0 - c0050376: 850a mv a0,sp + c0050542: 85b6 mv a1,a3 + c0050544: 4601 li a2,0 + c0050546: 850a mv a0,sp bf_pow_int(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4614 { - c0050378: 8a36 mv s4,a3 + c0050548: 8a36 mv s4,a3 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c005037a: ee3ff0ef jal ra,c005025c + c005054a: ee3ff0ef jal ra,c005042c bf_pow_int(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4623 if (y1 < 0) - c005037e: 6782 ld a5,0(sp) - c0050380: 0007d563 bgez a5,c005038a + c005054e: 6782 ld a5,0(sp) + c0050550: 0007d563 bgez a5,c005055a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4624 y1 = -y1; - c0050384: 40f007b3 neg a5,a5 - c0050388: e03e sd a5,0(sp) + c0050554: 40f007b3 neg a5,a5 + c0050558: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4626 prec1 = prec + ceil_log2(y1) * 2 + 8; - c005038a: 6482 ld s1,0(sp) - c005038c: 09a1 addi s3,s3,8 - c005038e: 8526 mv a0,s1 - c0050390: b0ffc0ef jal ra,c004ce9e - c0050394: 0015141b slliw s0,a0,0x1 + c005055a: 6482 ld s1,0(sp) + c005055c: 09a1 addi s3,s3,8 + c005055e: 8526 mv a0,s1 + c0050560: b0ffc0ef jal ra,c004d06e + c0050564: 0015141b slliw s0,a0,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4627 ret = bf_pow_ui(r, x, y1 < 0 ? -y1 : y1, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c0050398: 43f4d613 srai a2,s1,0x3f - c005039c: 8cb1 xor s1,s1,a2 + c0050568: 43f4d613 srai a2,s1,0x3f + c005056c: 8cb1 xor s1,s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4626 prec1 = prec + ceil_log2(y1) * 2 + 8; - c005039e: 944e add s0,s0,s3 + c005056e: 944e add s0,s0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4627 ret = bf_pow_ui(r, x, y1 < 0 ? -y1 : y1, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c00503a0: 40c48633 sub a2,s1,a2 - c00503a4: 7e000713 li a4,2016 - c00503a8: 86a2 mv a3,s0 - c00503aa: 85da mv a1,s6 - c00503ac: 854a mv a0,s2 - c00503ae: e98fe0ef jal ra,c004ea46 + c0050570: 40c48633 sub a2,s1,a2 + c0050574: 7e000713 li a4,2016 + c0050578: 86a2 mv a3,s0 + c005057a: 85da mv a1,s6 + c005057c: 854a mv a0,s2 + c005057e: e98fe0ef jal ra,c004ec16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4628 if (y->sign) { - c00503b2: 008a2783 lw a5,8(s4) + c0050582: 008a2783 lw a5,8(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4627 ret = bf_pow_ui(r, x, y1 < 0 ? -y1 : y1, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c00503b6: 84aa mv s1,a0 + c0050586: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4628 if (y->sign) { - c00503b8: cb8d beqz a5,c00503ea + c0050588: cb8d beqz a5,c00505ba bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00503ba: 57fd li a5,-1 - c00503bc: 17fe slli a5,a5,0x3f + c005058a: 57fd li a5,-1 + c005058c: 17fe slli a5,a5,0x3f bf_pow_int(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4630 bf_set_ui(T, 1); - c00503be: 4585 li a1,1 - c00503c0: 0028 addi a0,sp,8 + c005058e: 4585 li a1,1 + c0050590: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00503c2: ec3e sd a5,24(sp) + c0050592: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00503c4: e456 sd s5,8(sp) + c0050594: e456 sd s5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00503c6: c802 sw zero,16(sp) + c0050596: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00503c8: f002 sd zero,32(sp) + c0050598: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00503ca: f402 sd zero,40(sp) + c005059a: f402 sd zero,40(sp) bf_pow_int(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4630 bf_set_ui(T, 1); - c00503cc: cb1fc0ef jal ra,c004d07c + c005059c: cb1fc0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4631 ret |= bf_div(r, T, r, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c00503d0: 7e000713 li a4,2016 - c00503d4: 86a2 mv a3,s0 - c00503d6: 864a mv a2,s2 - c00503d8: 002c addi a1,sp,8 - c00503da: 854a mv a0,s2 - c00503dc: d4bfe0ef jal ra,c004f126 - c00503e0: 8cc9 or s1,s1,a0 + c00505a0: 7e000713 li a4,2016 + c00505a4: 86a2 mv a3,s0 + c00505a6: 864a mv a2,s2 + c00505a8: 002c addi a1,sp,8 + c00505aa: 854a mv a0,s2 + c00505ac: d4bfe0ef jal ra,c004f2f6 + c00505b0: 8cc9 or s1,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4632 bf_delete(T); - c00503e2: 0028 addi a0,sp,8 + c00505b2: 0028 addi a0,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4631 ret |= bf_div(r, T, r, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c00503e4: 2481 sext.w s1,s1 + c00505b4: 2481 sext.w s1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4632 bf_delete(T); - c00503e6: 8a7fc0ef jal ra,c004cc8c + c00505b6: 8a7fc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4635 } - c00503ea: 70a6 ld ra,104(sp) - c00503ec: 7406 ld s0,96(sp) - c00503ee: 6946 ld s2,80(sp) - c00503f0: 69a6 ld s3,72(sp) - c00503f2: 6a06 ld s4,64(sp) - c00503f4: 7ae2 ld s5,56(sp) - c00503f6: 7b42 ld s6,48(sp) - c00503f8: 8526 mv a0,s1 - c00503fa: 64e6 ld s1,88(sp) - c00503fc: 6165 addi sp,sp,112 - c00503fe: 8082 ret - -00000000c0050400 : + c00505ba: 70a6 ld ra,104(sp) + c00505bc: 7406 ld s0,96(sp) + c00505be: 6946 ld s2,80(sp) + c00505c0: 69a6 ld s3,72(sp) + c00505c2: 6a06 ld s4,64(sp) + c00505c4: 7ae2 ld s5,56(sp) + c00505c6: 7b42 ld s6,48(sp) + c00505c8: 8526 mv a0,s1 + c00505ca: 64e6 ld s1,88(sp) + c00505cc: 6165 addi sp,sp,112 + c00505ce: 8082 ret + +00000000c00505d0 : bf_get_uint64(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2664 if (a->expn == BF_EXP_NAN) { - c0050400: 699c ld a5,16(a1) - c0050402: 56fd li a3,-1 - c0050404: 8285 srli a3,a3,0x1 + c00505d0: 699c ld a5,16(a1) + c00505d2: 56fd li a3,-1 + c00505d4: 8285 srli a3,a3,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2661 { - c0050406: 872a mv a4,a0 + c00505d6: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2664 if (a->expn == BF_EXP_NAN) { - c0050408: 02d78c63 beq a5,a3,c0050440 + c00505d8: 02d78c63 beq a5,a3,c0050610 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2666 } else if (a->expn <= 0) { - c005040c: 02f05563 blez a5,c0050436 + c00505dc: 02f05563 blez a5,c0050606 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2669 } else if (a->sign) { - c0050410: 4588 lw a0,8(a1) - c0050412: e50d bnez a0,c005043c + c00505e0: 4588 lw a0,8(a1) + c00505e2: e50d bnez a0,c005060c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2672 } else if (a->expn <= 64) { - c0050414: 04000693 li a3,64 - c0050418: 02f6c463 blt a3,a5,c0050440 + c00505e4: 04000693 li a3,64 + c00505e8: 02f6c463 blt a3,a5,c0050610 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2680 v = a->tab[a->len - 1] >> (LIMB_BITS - a->expn); - c005041c: 6d94 ld a3,24(a1) - c005041e: 7190 ld a2,32(a1) - c0050420: 068e slli a3,a3,0x3 - c0050422: 9636 add a2,a2,a3 - c0050424: 04000693 li a3,64 - c0050428: 9e9d subw a3,a3,a5 - c005042a: ff863783 ld a5,-8(a2) - c005042e: 00d7d7b3 srl a5,a5,a3 + c00505ec: 6d94 ld a3,24(a1) + c00505ee: 7190 ld a2,32(a1) + c00505f0: 068e slli a3,a3,0x3 + c00505f2: 9636 add a2,a2,a3 + c00505f4: 04000693 li a3,64 + c00505f8: 9e9d subw a3,a3,a5 + c00505fa: ff863783 ld a5,-8(a2) + c00505fe: 00d7d7b3 srl a5,a5,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2688 *pres = v; - c0050432: e31c sd a5,0(a4) + c0050602: e31c sd a5,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2690 } - c0050434: 8082 ret + c0050604: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2668 ret = 0; - c0050436: 4501 li a0,0 + c0050606: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2670 v = 0; - c0050438: 4781 li a5,0 - c005043a: bfe5 j c0050432 + c0050608: 4781 li a5,0 + c005060a: bfe5 j c0050602 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2671 ret = BF_ST_INVALID_OP; - c005043c: 4505 li a0,1 - c005043e: bfed j c0050438 + c005060c: 4505 li a0,1 + c005060e: bfed j c0050608 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2686 ret = BF_ST_INVALID_OP; - c0050440: 4505 li a0,1 + c0050610: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2685 v = UINT64_MAX; - c0050442: 57fd li a5,-1 - c0050444: b7fd j c0050432 + c0050612: 57fd li a5,-1 + c0050614: b7fd j c0050602 -00000000c0050446 : +00000000c0050616 : bf_mul_pow_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2780 { - c0050446: 7131 addi sp,sp,-192 - c0050448: e556 sd s5,136(sp) - c005044a: fd06 sd ra,184(sp) - c005044c: f922 sd s0,176(sp) - c005044e: f526 sd s1,168(sp) - c0050450: f14a sd s2,160(sp) - c0050452: ed4e sd s3,152(sp) - c0050454: e952 sd s4,144(sp) - c0050456: e15a sd s6,128(sp) - c0050458: fcde sd s7,120(sp) - c005045a: f8e2 sd s8,112(sp) - c005045c: f4e6 sd s9,104(sp) - c005045e: f0ea sd s10,96(sp) - c0050460: ecee sd s11,88(sp) - c0050462: 8abe mv s5,a5 + c0050616: 7131 addi sp,sp,-192 + c0050618: e556 sd s5,136(sp) + c005061a: fd06 sd ra,184(sp) + c005061c: f922 sd s0,176(sp) + c005061e: f526 sd s1,168(sp) + c0050620: f14a sd s2,160(sp) + c0050622: ed4e sd s3,152(sp) + c0050624: e952 sd s4,144(sp) + c0050626: e15a sd s6,128(sp) + c0050628: fcde sd s7,120(sp) + c005062a: f8e2 sd s8,112(sp) + c005062c: f4e6 sd s9,104(sp) + c005062e: f0ea sd s10,96(sp) + c0050630: ecee sd s11,88(sp) + c0050632: 8abe mv s5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2785 if (T->len == 0) { - c0050464: 6d9c ld a5,24(a1) - c0050466: e38d bnez a5,c0050488 + c0050634: 6d9c ld a5,24(a1) + c0050636: e38d bnez a5,c0050658 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2840 } - c0050468: 744a ld s0,176(sp) - c005046a: 70ea ld ra,184(sp) - c005046c: 74aa ld s1,168(sp) - c005046e: 790a ld s2,160(sp) - c0050470: 69ea ld s3,152(sp) - c0050472: 6a4a ld s4,144(sp) - c0050474: 6aaa ld s5,136(sp) - c0050476: 6b0a ld s6,128(sp) - c0050478: 7be6 ld s7,120(sp) - c005047a: 7c46 ld s8,112(sp) - c005047c: 7ca6 ld s9,104(sp) - c005047e: 7d06 ld s10,96(sp) - c0050480: 6de6 ld s11,88(sp) - c0050482: 6129 addi sp,sp,192 + c0050638: 744a ld s0,176(sp) + c005063a: 70ea ld ra,184(sp) + c005063c: 74aa ld s1,168(sp) + c005063e: 790a ld s2,160(sp) + c0050640: 69ea ld s3,152(sp) + c0050642: 6a4a ld s4,144(sp) + c0050644: 6aaa ld s5,136(sp) + c0050646: 6b0a ld s6,128(sp) + c0050648: 7be6 ld s7,120(sp) + c005064a: 7c46 ld s8,112(sp) + c005064c: 7ca6 ld s9,104(sp) + c005064e: 7d06 ld s10,96(sp) + c0050650: 6de6 ld s11,88(sp) + c0050652: 6129 addi sp,sp,192 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2786 return bf_set(r, T); - c0050484: 83cfd06f j c004d4c0 - c0050488: 84aa mv s1,a0 - c005048a: 89b6 mv s3,a3 - c005048c: 893a mv s2,a4 + c0050654: 83cfd06f j c004d690 + c0050658: 84aa mv s1,a0 + c005065a: 89b6 mv s3,a3 + c005065c: 893a mv s2,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2787 } else if (expn == 0) { - c005048e: ea9d bnez a3,c00504c4 + c005065e: ea9d bnez a3,c0050694 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2788 ret = bf_set(r, T); - c0050490: 830fd0ef jal ra,c004d4c0 - c0050494: 842a mv s0,a0 + c0050660: 830fd0ef jal ra,c004d690 + c0050664: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2789 ret |= bf_round(r, prec, flags); - c0050496: 8656 mv a2,s5 - c0050498: 85ca mv a1,s2 - c005049a: 8526 mv a0,s1 - c005049c: af4fd0ef jal ra,c004d790 - c00504a0: 8c49 or s0,s0,a0 - c00504a2: 2401 sext.w s0,s0 + c0050666: 8656 mv a2,s5 + c0050668: 85ca mv a1,s2 + c005066a: 8526 mv a0,s1 + c005066c: af4fd0ef jal ra,c004d960 + c0050670: 8c49 or s0,s0,a0 + c0050672: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2840 } - c00504a4: 70ea ld ra,184(sp) - c00504a6: 8522 mv a0,s0 - c00504a8: 744a ld s0,176(sp) - c00504aa: 74aa ld s1,168(sp) - c00504ac: 790a ld s2,160(sp) - c00504ae: 69ea ld s3,152(sp) - c00504b0: 6a4a ld s4,144(sp) - c00504b2: 6aaa ld s5,136(sp) - c00504b4: 6b0a ld s6,128(sp) - c00504b6: 7be6 ld s7,120(sp) - c00504b8: 7c46 ld s8,112(sp) - c00504ba: 7ca6 ld s9,104(sp) - c00504bc: 7d06 ld s10,96(sp) - c00504be: 6de6 ld s11,88(sp) - c00504c0: 6129 addi sp,sp,192 - c00504c2: 8082 ret - c00504c4: 8a2e mv s4,a1 - c00504c6: 8bb2 mv s7,a2 + c0050674: 70ea ld ra,184(sp) + c0050676: 8522 mv a0,s0 + c0050678: 744a ld s0,176(sp) + c005067a: 74aa ld s1,168(sp) + c005067c: 790a ld s2,160(sp) + c005067e: 69ea ld s3,152(sp) + c0050680: 6a4a ld s4,144(sp) + c0050682: 6aaa ld s5,136(sp) + c0050684: 6b0a ld s6,128(sp) + c0050686: 7be6 ld s7,120(sp) + c0050688: 7c46 ld s8,112(sp) + c005068a: 7ca6 ld s9,104(sp) + c005068c: 7d06 ld s10,96(sp) + c005068e: 6de6 ld s11,88(sp) + c0050690: 6129 addi sp,sp,192 + c0050692: 8082 ret + c0050694: 8a2e mv s4,a1 + c0050696: 8bb2 mv s7,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2794 expn_sign = 0; - c00504c8: 4c01 li s8,0 + c0050698: 4c01 li s8,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2795 if (e < 0) { - c00504ca: 0006d563 bgez a3,c00504d4 + c005069a: 0006d563 bgez a3,c00506a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2796 e = -e; - c00504ce: 40d009b3 neg s3,a3 + c005069e: 40d009b3 neg s3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2797 expn_sign = 1; - c00504d2: 4c05 li s8,1 + c00506a2: 4c05 li s8,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00504d4: 609c ld a5,0(s1) + c00506a4: 609c ld a5,0(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00504d6: d802 sw zero,48(sp) + c00506a6: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00504d8: e082 sd zero,64(sp) + c00506a8: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00504da: f43e sd a5,40(sp) + c00506aa: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00504dc: 57fd li a5,-1 - c00504de: 03f79713 slli a4,a5,0x3f - c00504e2: fc3a sd a4,56(sp) + c00506ac: 57fd li a5,-1 + c00506ae: 03f79713 slli a4,a5,0x3f + c00506b2: fc3a sd a4,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00504e4: e482 sd zero,72(sp) + c00506b4: e482 sd zero,72(sp) bf_mul_pow_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2800 if (prec == BF_PREC_INF) { - c00504e6: 8389 srli a5,a5,0x2 - c00504e8: 06f90f63 beq s2,a5,c0050566 + c00506b6: 8389 srli a5,a5,0x2 + c00506b8: 06f90f63 beq s2,a5,c0050736 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2814 extra_bits = ceil_log2(e) * 2 + 1; - c00504ec: 854e mv a0,s3 - c00504ee: 9b1fc0ef jal ra,c004ce9e - c00504f2: 0015151b slliw a0,a0,0x1 - c00504f6: 0015079b addiw a5,a0,1 - c00504fa: e43e sd a5,8(sp) + c00506bc: 854e mv a0,s3 + c00506be: 9b1fc0ef jal ra,c004d06e + c00506c2: 0015151b slliw a0,a0,0x1 + c00506c6: 0015079b addiw a5,a0,1 + c00506ca: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2826 !bf_can_round(r, prec, flags & BF_RND_MASK, prec1) && - c00504fc: 5ced li s9,-5 - c00504fe: 007af793 andi a5,s5,7 + c00506cc: 5ced li s9,-5 + c00506ce: 007af793 andi a5,s5,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2809 ziv_extra_bits = 16; - c0050502: 4b41 li s6,16 + c00506d2: 4b41 li s6,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2826 !bf_can_round(r, prec, flags & BF_RND_MASK, prec1) && - c0050504: e83e sd a5,16(sp) - c0050506: 001cdc93 srli s9,s9,0x1 + c00506d4: e83e sd a5,16(sp) + c00506d6: 001cdc93 srli s9,s9,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2815 ret = bf_pow_ui_ui(B, radix, e, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c005050a: 67a2 ld a5,8(sp) + c00506da: 67a2 ld a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2811 prec1 = prec + ziv_extra_bits; - c005050c: 012b0d33 add s10,s6,s2 + c00506dc: 012b0d33 add s10,s6,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2815 ret = bf_pow_ui_ui(B, radix, e, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c0050510: 7e000713 li a4,2016 - c0050514: 00fd06b3 add a3,s10,a5 - c0050518: 864e mv a2,s3 - c005051a: 85de mv a1,s7 - c005051c: 1028 addi a0,sp,40 - c005051e: ec36 sd a3,24(sp) - c0050520: ddafe0ef jal ra,c004eafa - c0050524: 842a mv s0,a0 + c00506e0: 7e000713 li a4,2016 + c00506e4: 00fd06b3 add a3,s10,a5 + c00506e8: 864e mv a2,s3 + c00506ea: 85de mv a1,s7 + c00506ec: 1028 addi a0,sp,40 + c00506ee: ec36 sd a3,24(sp) + c00506f0: ddafe0ef jal ra,c004ecca + c00506f4: 842a mv s0,a0 bf_is_finite(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:236 return (a->expn < BF_EXP_INF); - c0050526: 7de2 ld s11,56(sp) + c00506f6: 7de2 ld s11,56(sp) bf_mul_pow_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2819 if (expn_sign) - c0050528: 66e2 ld a3,24(sp) + c00506f8: 66e2 ld a3,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2820 ret |= bf_div(r, T, B, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c005052a: 7e000713 li a4,2016 - c005052e: 1030 addi a2,sp,40 - c0050530: 85d2 mv a1,s4 - c0050532: 8526 mv a0,s1 + c00506fa: 7e000713 li a4,2016 + c00506fe: 1030 addi a2,sp,40 + c0050700: 85d2 mv a1,s4 + c0050702: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2819 if (expn_sign) - c0050534: 060c0a63 beqz s8,c00505a8 + c0050704: 060c0a63 beqz s8,c0050778 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2820 ret |= bf_div(r, T, B, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c0050538: beffe0ef jal ra,c004f126 + c0050708: beffe0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2822 ret |= bf_mul(r, T, B, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c005053c: 8c49 or s0,s0,a0 - c005053e: 2401 sext.w s0,s0 + c005070c: 8c49 or s0,s0,a0 + c005070e: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2823 if (ret & BF_ST_MEM_ERROR) - c0050540: 02047793 andi a5,s0,32 - c0050544: e7b1 bnez a5,c0050590 + c0050710: 02047793 andi a5,s0,32 + c0050714: e7b1 bnez a5,c0050760 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2825 if ((ret & BF_ST_INEXACT) && - c0050546: 8841 andi s0,s0,16 - c0050548: c03d beqz s0,c00505ae + c0050716: 8841 andi s0,s0,16 + c0050718: c03d beqz s0,c005077e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2826 (discriminator 1) !bf_can_round(r, prec, flags & BF_RND_MASK, prec1) && - c005054a: 6642 ld a2,16(sp) - c005054c: 86ea mv a3,s10 - c005054e: 85ca mv a1,s2 - c0050550: 8526 mv a0,s1 - c0050552: 8ecfd0ef jal ra,c004d63e + c005071a: 6642 ld a2,16(sp) + c005071c: 86ea mv a3,s10 + c005071e: 85ca mv a1,s2 + c0050720: 8526 mv a0,s1 + c0050722: 8ecfd0ef jal ra,c004d80e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2825 (discriminator 1) if ((ret & BF_ST_INEXACT) && - c0050556: ed21 bnez a0,c00505ae + c0050726: ed21 bnez a0,c005077e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2826 !bf_can_round(r, prec, flags & BF_RND_MASK, prec1) && - c0050558: 05bccb63 blt s9,s11,c00505ae + c0050728: 05bccb63 blt s9,s11,c005077e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2829 ziv_extra_bits = ziv_extra_bits + (ziv_extra_bits / 2); - c005055c: 4789 li a5,2 - c005055e: 02fb47b3 div a5,s6,a5 - c0050562: 9b3e add s6,s6,a5 + c005072c: 4789 li a5,2 + c005072e: 02fb47b3 div a5,s6,a5 + c0050732: 9b3e add s6,s6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2811 prec1 = prec + ziv_extra_bits; - c0050564: b75d j c005050a + c0050734: b75d j c00506da /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2802 ret = bf_pow_ui_ui(B, radix, e, BF_PREC_INF, BF_RNDN); - c0050566: 4701 li a4,0 - c0050568: 86ca mv a3,s2 - c005056a: 864e mv a2,s3 - c005056c: 85de mv a1,s7 - c005056e: 1028 addi a0,sp,40 - c0050570: d8afe0ef jal ra,c004eafa - c0050574: 842a mv s0,a0 + c0050736: 4701 li a4,0 + c0050738: 86ca mv a3,s2 + c005073a: 864e mv a2,s3 + c005073c: 85de mv a1,s7 + c005073e: 1028 addi a0,sp,40 + c0050740: d8afe0ef jal ra,c004ecca + c0050744: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2803 if (expn_sign) { - c0050576: 020c0163 beqz s8,c0050598 + c0050746: 020c0163 beqz s8,c0050768 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2804 ret |= bf_div(r, T, B, T->len * LIMB_BITS, BF_RNDN); - c005057a: 018a3683 ld a3,24(s4) - c005057e: 4701 li a4,0 - c0050580: 1030 addi a2,sp,40 - c0050582: 069a slli a3,a3,0x6 - c0050584: 85d2 mv a1,s4 - c0050586: 8526 mv a0,s1 - c0050588: b9ffe0ef jal ra,c004f126 + c005074a: 018a3683 ld a3,24(s4) + c005074e: 4701 li a4,0 + c0050750: 1030 addi a2,sp,40 + c0050752: 069a slli a3,a3,0x6 + c0050754: 85d2 mv a1,s4 + c0050756: 8526 mv a0,s1 + c0050758: b9ffe0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2833 ret = bf_round(r, prec, flags) | (ret & BF_ST_INEXACT); - c005058c: 8c49 or s0,s0,a0 - c005058e: 2401 sext.w s0,s0 + c005075c: 8c49 or s0,s0,a0 + c005075e: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2838 bf_delete(B); - c0050590: 1028 addi a0,sp,40 - c0050592: efafc0ef jal ra,c004cc8c + c0050760: 1028 addi a0,sp,40 + c0050762: efafc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2839 return ret; - c0050596: b739 j c00504a4 + c0050766: b739 j c0050674 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2806 ret |= bf_mul(r, T, B, BF_PREC_INF, BF_RNDN); - c0050598: 4701 li a4,0 - c005059a: 86ca mv a3,s2 - c005059c: 1030 addi a2,sp,40 - c005059e: 85d2 mv a1,s4 - c00505a0: 8526 mv a0,s1 - c00505a2: b38fe0ef jal ra,c004e8da - c00505a6: b7dd j c005058c + c0050768: 4701 li a4,0 + c005076a: 86ca mv a3,s2 + c005076c: 1030 addi a2,sp,40 + c005076e: 85d2 mv a1,s4 + c0050770: 8526 mv a0,s1 + c0050772: b38fe0ef jal ra,c004eaaa + c0050776: b7dd j c005075c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2822 ret |= bf_mul(r, T, B, prec1 + extra_bits, BF_RNDN | BF_FLAG_EXT_EXP); - c00505a8: b32fe0ef jal ra,c004e8da - c00505ac: bf41 j c005053c + c0050778: b32fe0ef jal ra,c004eaaa + c005077c: bf41 j c005070c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2833 ret = bf_round(r, prec, flags) | (ret & BF_ST_INEXACT); - c00505ae: 8656 mv a2,s5 - c00505b0: 85ca mv a1,s2 - c00505b2: 8526 mv a0,s1 - c00505b4: 9dcfd0ef jal ra,c004d790 - c00505b8: bfd1 j c005058c + c005077e: 8656 mv a2,s5 + c0050780: 85ca mv a1,s2 + c0050782: 8526 mv a0,s1 + c0050784: 9dcfd0ef jal ra,c004d960 + c0050788: bfd1 j c005075c -00000000c00505ba : +00000000c005078a : bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2900 static int bf_atof_internal(bf_t *r, slimb_t *pexponent, - c00505ba: 7111 addi sp,sp,-256 - c00505bc: f5a6 sd s1,232(sp) - c00505be: edce sd s3,216(sp) - c00505c0: e5d6 sd s5,200(sp) - c00505c2: f16a sd s10,160(sp) - c00505c4: fd86 sd ra,248(sp) - c00505c6: f9a2 sd s0,240(sp) - c00505c8: f1ca sd s2,224(sp) - c00505ca: e9d2 sd s4,208(sp) - c00505cc: e1da sd s6,192(sp) - c00505ce: fd5e sd s7,184(sp) - c00505d0: f962 sd s8,176(sp) - c00505d2: f566 sd s9,168(sp) - c00505d4: ed6e sd s11,152(sp) - c00505d6: e83e sd a5,16(sp) + c005078a: 7111 addi sp,sp,-256 + c005078c: f5a6 sd s1,232(sp) + c005078e: edce sd s3,216(sp) + c0050790: e5d6 sd s5,200(sp) + c0050792: f16a sd s10,160(sp) + c0050794: fd86 sd ra,248(sp) + c0050796: f9a2 sd s0,240(sp) + c0050798: f1ca sd s2,224(sp) + c005079a: e9d2 sd s4,208(sp) + c005079c: e1da sd s6,192(sp) + c005079e: fd5e sd s7,184(sp) + c00507a0: f962 sd s8,176(sp) + c00507a2: f566 sd s9,168(sp) + c00507a4: ed6e sd s11,152(sp) + c00507a6: e83e sd a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2913 if (!(flags & BF_ATOF_NO_NAN_INF) && radix <= 16 && - c00505d8: 000407b7 lui a5,0x40 + c00507a8: 000407b7 lui a5,0x40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2900 static int bf_atof_internal(bf_t *r, slimb_t *pexponent, - c00505dc: e02e sd a1,0(sp) - c00505de: e436 sd a3,8(sp) + c00507ac: e02e sd a1,0(sp) + c00507ae: e436 sd a3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2911 *pexponent = 0; - c00505e0: 0005b023 sd zero,0(a1) + c00507b0: 0005b023 sd zero,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2913 if (!(flags & BF_ATOF_NO_NAN_INF) && radix <= 16 && - c00505e4: 00f877b3 and a5,a6,a5 + c00507b4: 00f877b3 and a5,a6,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2900 static int bf_atof_internal(bf_t *r, slimb_t *pexponent, - c00505e8: 89aa mv s3,a0 - c00505ea: 8d32 mv s10,a2 - c00505ec: 84ba mv s1,a4 - c00505ee: 8ac2 mv s5,a6 + c00507b8: 89aa mv s3,a0 + c00507ba: 8d32 mv s10,a2 + c00507bc: 84ba mv s1,a4 + c00507be: 8ac2 mv s5,a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2913 if (!(flags & BF_ATOF_NO_NAN_INF) && radix <= 16 && - c00505f0: e3a1 bnez a5,c0050630 - c00505f2: 4741 li a4,16 - c00505f4: 02974e63 blt a4,s1,c0050630 - c00505f8: 8432 mv s0,a2 + c00507c0: e3a1 bnez a5,c0050800 + c00507c2: 4741 li a4,16 + c00507c4: 02974e63 blt a4,s1,c0050800 + c00507c8: 8432 mv s0,a2 strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2888 q = val; - c00505fa: 00022697 auipc a3,0x22 - c00505fe: d7668693 addi a3,a3,-650 # c0072370 + c00507ca: 00022697 auipc a3,0x22 + c00507ce: e0668693 addi a3,a3,-506 # c00725d0 bf_tolower(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2879 if (c >= 'A' && c <= 'Z') - c0050602: 4565 li a0,25 - c0050604: a839 j c0050622 + c00507d2: 4565 li a0,25 + c00507d4: a839 j c00507f2 strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2890 if (bf_tolower(*p) != *q) - c0050606: 00044703 lbu a4,0(s0) # fff000 <__clzdi2-0xbf001000> - c005060a: 0007061b sext.w a2,a4 + c00507d6: 00044703 lbu a4,0(s0) # fff000 <__clzdi2-0xbf001000> + c00507da: 0007061b sext.w a2,a4 bf_tolower(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2879 if (c >= 'A' && c <= 'Z') - c005060e: fbf7071b addiw a4,a4,-65 - c0050612: 00e56463 bltu a0,a4,c005061a + c00507de: fbf7071b addiw a4,a4,-65 + c00507e2: 00e56463 bltu a0,a4,c00507ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2880 c = c - 'A' + 'a'; - c0050616: 02060613 addi a2,a2,32 + c00507e6: 02060613 addi a2,a2,32 strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2890 if (bf_tolower(*p) != *q) - c005061a: 00c59b63 bne a1,a2,c0050630 + c00507ea: 00c59b63 bne a1,a2,c0050800 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2892 p++; - c005061e: 0405 addi s0,s0,1 + c00507ee: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2893 q++; - c0050620: 0685 addi a3,a3,1 + c00507f0: 0685 addi a3,a3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2889 while (*q != '\0') { - c0050622: 0006c583 lbu a1,0(a3) - c0050626: f1e5 bnez a1,c0050606 + c00507f2: 0006c583 lbu a1,0(a3) + c00507f6: f1e5 bnez a1,c00507d6 bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2915 bf_set_nan(r); - c0050628: 854e mv a0,s3 - c005062a: a33fc0ef jal ra,c004d05c - c005062e: a8f5 j c005072a + c00507f8: 854e mv a0,s3 + c00507fa: a33fc0ef jal ra,c004d22c + c00507fe: a8f5 j c00508fa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2921 if (p[0] == '+') { - c0050630: 000d4703 lbu a4,0(s10) - c0050634: 02b00693 li a3,43 - c0050638: 06d71763 bne a4,a3,c00506a6 + c0050800: 000d4703 lbu a4,0(s10) + c0050804: 02b00693 li a3,43 + c0050808: 06d71763 bne a4,a3,c0050876 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2922 p++; - c005063c: 0d05 addi s10,s10,1 + c005080c: 0d05 addi s10,s10,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2919 is_neg = 0; - c005063e: 4b01 li s6,0 + c005080e: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2931 if (p[0] == '0') { - c0050640: 000d4683 lbu a3,0(s10) - c0050644: 03000713 li a4,48 - c0050648: 0ae69163 bne a3,a4,c00506ea + c0050810: 000d4683 lbu a3,0(s10) + c0050814: 03000713 li a4,48 + c0050818: 0ae69163 bne a3,a4,c00508ba /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2932 if ((p[1] == 'x' || p[1] == 'X') && - c005064c: 001d4783 lbu a5,1(s10) - c0050650: 05800713 li a4,88 - c0050654: 0df7f793 andi a5,a5,223 - c0050658: 04e79f63 bne a5,a4,c00506b6 + c005081c: 001d4783 lbu a5,1(s10) + c0050820: 05800713 li a4,88 + c0050824: 0df7f793 andi a5,a5,223 + c0050828: 04e79f63 bne a5,a4,c0050886 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2934 !(flags & BF_ATOF_NO_HEX)) { - c005065c: 67c1 lui a5,0x10 - c005065e: 00faf7b3 and a5,s5,a5 + c005082c: 67c1 lui a5,0x10 + c005082e: 00faf7b3 and a5,s5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2932 if ((p[1] == 'x' || p[1] == 'X') && - c0050662: fef4f713 andi a4,s1,-17 + c0050832: fef4f713 andi a4,s1,-17 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2933 (radix == 0 || radix == 16) && - c0050666: 8fd9 or a5,a5,a4 - c0050668: 2781 sext.w a5,a5 - c005066a: e3f1 bnez a5,c005072e + c0050836: 8fd9 or a5,a5,a4 + c0050838: 2781 sext.w a5,a5 + c005083a: e3f1 bnez a5,c00508fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2936 p += 2; - c005066c: 002d0413 addi s0,s10,2 + c005083c: 002d0413 addi s0,s10,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2935 radix = 16; - c0050670: 44c1 li s1,16 + c0050840: 44c1 li s1,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2949 if (to_digit((uint8_t)*p) >= radix) { - c0050672: 00044503 lbu a0,0(s0) - c0050676: feefc0ef jal ra,c004ce64 - c005067a: fa9557e3 bge a0,s1,c0050628 + c0050842: 00044503 lbu a0,0(s0) + c0050846: feefc0ef jal ra,c004d034 + c005084a: fa9557e3 bge a0,s1,c00507f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2970 } else if ((radix & (radix - 1)) != 0) { - c005067e: fff4879b addiw a5,s1,-1 - c0050682: 8fe5 and a5,a5,s1 - c0050684: 2781 sext.w a5,a5 - c0050686: cfc5 beqz a5,c005073e + c005084e: fff4879b addiw a5,s1,-1 + c0050852: 8fe5 and a5,a5,s1 + c0050854: 2781 sext.w a5,a5 + c0050856: cfc5 beqz a5,c005090e bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050688: 0009b783 ld a5,0(s3) + c0050858: 0009b783 ld a5,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005068c: c482 sw zero,72(sp) + c005085c: c482 sw zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005068e: ec82 sd zero,88(sp) + c005085e: ec82 sd zero,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050690: e0be sd a5,64(sp) + c0050860: e0be sd a5,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050692: 57fd li a5,-1 - c0050694: 17fe slli a5,a5,0x3f - c0050696: e8be sd a5,80(sp) + c0050862: 57fd li a5,-1 + c0050864: 17fe slli a5,a5,0x3f + c0050866: e8be sd a5,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050698: f082 sd zero,96(sp) + c0050868: f082 sd zero,96(sp) bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2972 a = &a_s; - c005069a: 04010a13 addi s4,sp,64 + c005086a: 04010a13 addi s4,sp,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2971 radix_bits = 0; /* base is not a power of two */ - c005069e: 4901 li s2,0 + c005086e: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2981 while (*p == '0') - c00506a0: 03000793 li a5,48 - c00506a4: a065 j c005074c + c0050870: 03000793 li a5,48 + c0050874: a065 j c005091c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2924 } else if (p[0] == '-') { - c00506a6: 02d00693 li a3,45 + c0050876: 02d00693 li a3,45 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2919 is_neg = 0; - c00506aa: 4b01 li s6,0 + c005087a: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2924 } else if (p[0] == '-') { - c00506ac: f8d71ae3 bne a4,a3,c0050640 + c005087c: f8d71ae3 bne a4,a3,c0050810 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2926 p++; - c00506b0: 0d05 addi s10,s10,1 + c0050880: 0d05 addi s10,s10,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2925 is_neg = 1; - c00506b2: 4b05 li s6,1 - c00506b4: b771 j c0050640 + c0050882: 4b05 li s6,1 + c0050884: b771 j c0050810 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2937 } else if ((p[1] == 'o' || p[1] == 'O') && - c00506b6: 04f00713 li a4,79 - c00506ba: 00e79b63 bne a5,a4,c00506d0 - c00506be: eca5 bnez s1,c0050736 + c0050886: 04f00713 li a4,79 + c005088a: 00e79b63 bne a5,a4,c00508a0 + c005088e: eca5 bnez s1,c0050906 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2938 radix == 0 && (flags & BF_ATOF_BIN_OCT)) { - c00506c0: 011ad793 srli a5,s5,0x11 - c00506c4: 8b85 andi a5,a5,1 - c00506c6: cbb5 beqz a5,c005073a + c0050890: 011ad793 srli a5,s5,0x11 + c0050894: 8b85 andi a5,a5,1 + c0050896: cbb5 beqz a5,c005090a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2939 p += 2; - c00506c8: 002d0413 addi s0,s10,2 + c0050898: 002d0413 addi s0,s10,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2940 radix = 8; - c00506cc: 44a1 li s1,8 - c00506ce: b755 j c0050672 + c005089c: 44a1 li s1,8 + c005089e: b755 j c0050842 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2941 } else if ((p[1] == 'b' || p[1] == 'B') && - c00506d0: 04200713 li a4,66 - c00506d4: 04e79d63 bne a5,a4,c005072e - c00506d8: ecb9 bnez s1,c0050736 + c00508a0: 04200713 li a4,66 + c00508a4: 04e79d63 bne a5,a4,c00508fe + c00508a8: ecb9 bnez s1,c0050906 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2942 radix == 0 && (flags & BF_ATOF_BIN_OCT)) { - c00506da: 011ad793 srli a5,s5,0x11 - c00506de: 8b85 andi a5,a5,1 - c00506e0: cfa9 beqz a5,c005073a + c00508aa: 011ad793 srli a5,s5,0x11 + c00508ae: 8b85 andi a5,a5,1 + c00508b0: cfa9 beqz a5,c005090a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2943 p += 2; - c00506e2: 002d0413 addi s0,s10,2 + c00508b2: 002d0413 addi s0,s10,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2944 radix = 2; - c00506e6: 4489 li s1,2 - c00506e8: b769 j c0050672 + c00508b6: 4489 li s1,2 + c00508b8: b769 j c0050842 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2956 if (!(flags & BF_ATOF_NO_NAN_INF) && radix <= 16 && - c00506ea: e3b1 bnez a5,c005072e - c00506ec: 47c1 li a5,16 - c00506ee: 846a mv s0,s10 - c00506f0: f897c7e3 blt a5,s1,c005067e + c00508ba: e3b1 bnez a5,c00508fe + c00508bc: 47c1 li a5,16 + c00508be: 846a mv s0,s10 + c00508c0: f897c7e3 blt a5,s1,c005084e strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2888 q = val; - c00506f4: 00022717 auipc a4,0x22 - c00506f8: c8470713 addi a4,a4,-892 # c0072378 + c00508c4: 00022717 auipc a4,0x22 + c00508c8: d1470713 addi a4,a4,-748 # c00725d8 bf_tolower(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2879 if (c >= 'A' && c <= 'Z') - c00506fc: 45e5 li a1,25 - c00506fe: a839 j c005071c + c00508cc: 45e5 li a1,25 + c00508ce: a839 j c00508ec strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2890 if (bf_tolower(*p) != *q) - c0050700: 00044783 lbu a5,0(s0) - c0050704: 0007869b sext.w a3,a5 + c00508d0: 00044783 lbu a5,0(s0) + c00508d4: 0007869b sext.w a3,a5 bf_tolower(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2879 if (c >= 'A' && c <= 'Z') - c0050708: fbf7879b addiw a5,a5,-65 - c005070c: 00f5e463 bltu a1,a5,c0050714 + c00508d8: fbf7879b addiw a5,a5,-65 + c00508dc: 00f5e463 bltu a1,a5,c00508e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2880 c = c - 'A' + 'a'; - c0050710: 02068693 addi a3,a3,32 + c00508e0: 02068693 addi a3,a3,32 strcasestart(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2890 if (bf_tolower(*p) != *q) - c0050714: 00d61d63 bne a2,a3,c005072e + c00508e4: 00d61d63 bne a2,a3,c00508fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2892 p++; - c0050718: 0405 addi s0,s0,1 + c00508e8: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2893 q++; - c005071a: 0705 addi a4,a4,1 + c00508ea: 0705 addi a4,a4,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2889 while (*q != '\0') { - c005071c: 00074603 lbu a2,0(a4) - c0050720: f265 bnez a2,c0050700 + c00508ec: 00074603 lbu a2,0(a4) + c00508f0: f265 bnez a2,c00508d0 bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2958 bf_set_inf(r, is_neg); - c0050722: 85da mv a1,s6 - c0050724: 854e mv a0,s3 - c0050726: 9fdfc0ef jal ra,c004d122 + c00508f2: 85da mv a1,s6 + c00508f4: 854e mv a0,s3 + c00508f6: 9fdfc0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2916 ret = 0; - c005072a: 4481 li s1,0 + c00508fa: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2917 goto done; - c005072c: a215 j c0050850 + c00508fc: a215 j c0050a20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2964 if (radix == 0) - c005072e: 846a mv s0,s10 - c0050730: f4b9 bnez s1,c005067e + c00508fe: 846a mv s0,s10 + c0050900: f4b9 bnez s1,c005084e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2965 radix = 10; - c0050732: 44a9 li s1,10 - c0050734: bf91 j c0050688 - c0050736: 846a mv s0,s10 - c0050738: b799 j c005067e - c005073a: 846a mv s0,s10 - c005073c: bfdd j c0050732 + c0050902: 44a9 li s1,10 + c0050904: bf91 j c0050858 + c0050906: 846a mv s0,s10 + c0050908: b799 j c005084e + c005090a: 846a mv s0,s10 + c005090c: bfdd j c0050902 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2975 radix_bits = ceil_log2(radix); - c005073e: 8526 mv a0,s1 - c0050740: f5efc0ef jal ra,c004ce9e - c0050744: 892a mv s2,a0 - c0050746: 8a4e mv s4,s3 - c0050748: bfa1 j c00506a0 + c005090e: 8526 mv a0,s1 + c0050910: f5efc0ef jal ra,c004d06e + c0050914: 892a mv s2,a0 + c0050916: 8a4e mv s4,s3 + c0050918: bfa1 j c0050870 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2982 p++; - c005074a: 0405 addi s0,s0,1 + c005091a: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2981 while (*p == '0') - c005074c: 00044703 lbu a4,0(s0) - c0050750: fef70de3 beq a4,a5,c005074a + c005091c: 00044703 lbu a4,0(s0) + c0050920: fef70de3 beq a4,a5,c005091a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2985 shift = digits_per_limb = LIMB_BITS; - c0050754: 04000b93 li s7,64 + c0050924: 04000b93 li s7,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2984 if (radix_bits) { - c0050758: 00091b63 bnez s2,c005076e + c0050928: 00091b63 bnez s2,c005093e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2988 shift = digits_per_limb = digits_per_limb_table[radix - 2]; - c005075c: ffe4871b addiw a4,s1,-2 - c0050760: 00022797 auipc a5,0x22 - c0050764: c8078793 addi a5,a5,-896 # c00723e0 - c0050768: 97ba add a5,a5,a4 - c005076a: 0007cb83 lbu s7,0(a5) + c005092c: ffe4871b addiw a4,s1,-2 + c0050930: 00022797 auipc a5,0x22 + c0050934: d1078793 addi a5,a5,-752 # c0072640 + c0050938: 97ba add a5,a5,a4 + c005093a: 0007cb83 lbu s7,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2991 bf_resize(a, 1); - c005076e: 4585 li a1,1 - c0050770: 8552 mv a0,s4 - c0050772: 8b1fc0ef jal ra,c004d022 + c005093e: 4585 li a1,1 + c0050940: 8552 mv a0,s4 + c0050942: 8b1fc0ef jal ra,c004d1f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2992 pos = 0; - c0050776: 87de mv a5,s7 - c0050778: fc02 sd zero,56(sp) + c0050946: 87de mv a5,s7 + c0050948: fc02 sd zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2993 has_decpt = FALSE; - c005077a: 4d81 li s11,0 + c005094a: 4d81 li s11,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2994 int_len = digit_count = 0; - c005077c: 4c01 li s8,0 - c005077e: 4c81 li s9,0 + c005094c: 4c01 li s8,0 + c005094e: 4c81 li s9,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2990 cur_limb = 0; - c0050780: 4601 li a2,0 + c0050950: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2997 if (*p == '.' && (p > p_start || to_digit(p[1]) < radix)) { - c0050782: 00044703 lbu a4,0(s0) - c0050786: 02e00693 li a3,46 - c005078a: 02d71363 bne a4,a3,c00507b0 - c005078e: 008d6c63 bltu s10,s0,c00507a6 - c0050792: 00144503 lbu a0,1(s0) - c0050796: f032 sd a2,32(sp) - c0050798: ec3e sd a5,24(sp) - c005079a: ecafc0ef jal ra,c004ce64 - c005079e: 67e2 ld a5,24(sp) - c00507a0: 7602 ld a2,32(sp) - c00507a2: 00955763 bge a0,s1,c00507b0 + c0050952: 00044703 lbu a4,0(s0) + c0050956: 02e00693 li a3,46 + c005095a: 02d71363 bne a4,a3,c0050980 + c005095e: 008d6c63 bltu s10,s0,c0050976 + c0050962: 00144503 lbu a0,1(s0) + c0050966: f032 sd a2,32(sp) + c0050968: ec3e sd a5,24(sp) + c005096a: ecafc0ef jal ra,c004d034 + c005096e: 67e2 ld a5,24(sp) + c0050970: 7602 ld a2,32(sp) + c0050972: 00955763 bge a0,s1,c0050980 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2998 if (has_decpt) - c00507a6: 080d9263 bnez s11,c005082a + c0050976: 080d9263 bnez s11,c00509fa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3002 p++; - c00507aa: 0405 addi s0,s0,1 - c00507ac: 8ce2 mv s9,s8 + c005097a: 0405 addi s0,s0,1 + c005097c: 8ce2 mv s9,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3000 has_decpt = TRUE; - c00507ae: 4d85 li s11,1 + c005097e: 4d85 li s11,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3004 c = to_digit(*p); - c00507b0: 00044503 lbu a0,0(s0) - c00507b4: f032 sd a2,32(sp) - c00507b6: ec3e sd a5,24(sp) - c00507b8: eacfc0ef jal ra,c004ce64 + c0050980: 00044503 lbu a0,0(s0) + c0050984: f032 sd a2,32(sp) + c0050986: ec3e sd a5,24(sp) + c0050988: eacfc0ef jal ra,c004d034 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3005 if (c >= radix) - c00507bc: 67e2 ld a5,24(sp) - c00507be: 7602 ld a2,32(sp) - c00507c0: 06957263 bgeu a0,s1,c0050824 + c005098c: 67e2 ld a5,24(sp) + c005098e: 7602 ld a2,32(sp) + c0050990: 06957263 bgeu a0,s1,c00509f4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3007 digit_count++; - c00507c4: 0c05 addi s8,s8,1 + c0050994: 0c05 addi s8,s8,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3008 p++; - c00507c6: 0405 addi s0,s0,1 + c0050996: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3009 if (radix_bits) { - c00507c8: 04090263 beqz s2,c005080c + c0050998: 04090263 beqz s2,c00509dc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3010 shift -= radix_bits; - c00507cc: 412786bb subw a3,a5,s2 + c005099c: 412786bb subw a3,a5,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3011 if (shift <= 0) { - c00507d0: 02d04963 bgtz a3,c0050802 + c00509a0: 02d04963 bgtz a3,c00509d2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3012 cur_limb |= c >> (-shift); - c00507d4: 40f907bb subw a5,s2,a5 - c00507d8: 00f557b3 srl a5,a0,a5 - c00507dc: ec2a sd a0,24(sp) + c00509a4: 40f907bb subw a5,s2,a5 + c00509a8: 00f557b3 srl a5,a0,a5 + c00509ac: ec2a sd a0,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3013 if (bf_add_limb(a, &pos, cur_limb)) - c00507de: 8e5d or a2,a2,a5 - c00507e0: 182c addi a1,sp,56 - c00507e2: 8552 mv a0,s4 - c00507e4: d436 sw a3,40(sp) - c00507e6: f036 sd a3,32(sp) - c00507e8: ed8fc0ef jal ra,c004cec0 - c00507ec: ed29 bnez a0,c0050846 + c00509ae: 8e5d or a2,a2,a5 + c00509b0: 182c addi a1,sp,56 + c00509b2: 8552 mv a0,s4 + c00509b4: d436 sw a3,40(sp) + c00509b6: f036 sd a3,32(sp) + c00509b8: ed8fc0ef jal ra,c004d090 + c00509bc: ed29 bnez a0,c0050a16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3016 cur_limb = c << (LIMB_BITS + shift); - c00507ee: 5822 lw a6,40(sp) + c00509be: 5822 lw a6,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3015 if (shift < 0) - c00507f0: 7682 ld a3,32(sp) + c00509c0: 7682 ld a3,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3018 cur_limb = 0; - c00507f2: 4601 li a2,0 + c00509c2: 4601 li a2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3016 cur_limb = c << (LIMB_BITS + shift); - c00507f4: 0408079b addiw a5,a6,64 + c00509c4: 0408079b addiw a5,a6,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3015 if (shift < 0) - c00507f8: d6c9 beqz a3,c0050782 + c00509c8: d6c9 beqz a3,c0050952 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3016 cur_limb = c << (LIMB_BITS + shift); - c00507fa: 6762 ld a4,24(sp) - c00507fc: 00f71633 sll a2,a4,a5 - c0050800: b749 j c0050782 + c00509ca: 6762 ld a4,24(sp) + c00509cc: 00f71633 sll a2,a4,a5 + c00509d0: b749 j c0050952 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3021 cur_limb |= c << shift; - c0050802: 00d51733 sll a4,a0,a3 - c0050806: 8e59 or a2,a2,a4 - c0050808: 87b6 mv a5,a3 - c005080a: bfa5 j c0050782 + c00509d2: 00d51733 sll a4,a0,a3 + c00509d6: 8e59 or a2,a2,a4 + c00509d8: 87b6 mv a5,a3 + c00509da: bfa5 j c0050952 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3024 cur_limb = cur_limb * radix + c; - c005080c: 02c48633 mul a2,s1,a2 + c00509dc: 02c48633 mul a2,s1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3025 shift--; - c0050810: 37fd addiw a5,a5,-1 + c00509e0: 37fd addiw a5,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3024 cur_limb = cur_limb * radix + c; - c0050812: 962a add a2,a2,a0 + c00509e2: 962a add a2,a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3026 if (shift == 0) { - c0050814: f7bd bnez a5,c0050782 + c00509e4: f7bd bnez a5,c0050952 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3027 if (bf_add_limb(a, &pos, cur_limb)) - c0050816: 182c addi a1,sp,56 - c0050818: 8552 mv a0,s4 - c005081a: ea6fc0ef jal ra,c004cec0 - c005081e: e10d bnez a0,c0050840 - c0050820: 87de mv a5,s7 - c0050822: bfb9 j c0050780 + c00509e6: 182c addi a1,sp,56 + c00509e8: 8552 mv a0,s4 + c00509ea: ea6fc0ef jal ra,c004d090 + c00509ee: e10d bnez a0,c0050a10 + c00509f0: 87de mv a5,s7 + c00509f2: bfb9 j c0050950 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3034 if (!has_decpt) - c0050824: 000d9363 bnez s11,c005082a - c0050828: 8ce2 mv s9,s8 + c00509f4: 000d9363 bnez s11,c00509fa + c00509f8: 8ce2 mv s9,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3038 if (shift != digits_per_limb) { - c005082a: 05778b63 beq a5,s7,c0050880 + c00509fa: 05778b63 beq a5,s7,c0050a50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3039 if (radix_bits == 0) { - c005082e: 04090763 beqz s2,c005087c + c00509fe: 04090763 beqz s2,c0050a4c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3045 if (bf_add_limb(a, &pos, cur_limb)) { - c0050832: 182c addi a1,sp,56 - c0050834: 8552 mv a0,s4 - c0050836: e8afc0ef jal ra,c004cec0 - c005083a: c139 beqz a0,c0050880 + c0050a02: 182c addi a1,sp,56 + c0050a04: 8552 mv a0,s4 + c0050a06: e8afc0ef jal ra,c004d090 + c0050a0a: c139 beqz a0,c0050a50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3048 if (!radix_bits) - c005083c: 00091563 bnez s2,c0050846 + c0050a0c: 00091563 bnez s2,c0050a16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3049 bf_delete(a); - c0050840: 8552 mv a0,s4 - c0050842: c4afc0ef jal ra,c004cc8c + c0050a10: 8552 mv a0,s4 + c0050a12: c4afc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3050 bf_set_nan(r); - c0050846: 854e mv a0,s3 - c0050848: 815fc0ef jal ra,c004d05c + c0050a16: 854e mv a0,s3 + c0050a18: 815fc0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3047 ret = BF_ST_MEM_ERROR; - c005084c: 02000493 li s1,32 + c0050a1c: 02000493 li s1,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3146 if (pnext) - c0050850: 67a2 ld a5,8(sp) - c0050852: c391 beqz a5,c0050856 + c0050a20: 67a2 ld a5,8(sp) + c0050a22: c391 beqz a5,c0050a26 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3147 *pnext = p; - c0050854: e380 sd s0,0(a5) + c0050a24: e380 sd s0,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3149 } - c0050856: 70ee ld ra,248(sp) - c0050858: 744e ld s0,240(sp) - c005085a: 790e ld s2,224(sp) - c005085c: 69ee ld s3,216(sp) - c005085e: 6a4e ld s4,208(sp) - c0050860: 6aae ld s5,200(sp) - c0050862: 6b0e ld s6,192(sp) - c0050864: 7bea ld s7,184(sp) - c0050866: 7c4a ld s8,176(sp) - c0050868: 7caa ld s9,168(sp) - c005086a: 7d0a ld s10,160(sp) - c005086c: 6dea ld s11,152(sp) - c005086e: 8526 mv a0,s1 - c0050870: 74ae ld s1,232(sp) - c0050872: 6111 addi sp,sp,256 - c0050874: 8082 ret + c0050a26: 70ee ld ra,248(sp) + c0050a28: 744e ld s0,240(sp) + c0050a2a: 790e ld s2,224(sp) + c0050a2c: 69ee ld s3,216(sp) + c0050a2e: 6a4e ld s4,208(sp) + c0050a30: 6aae ld s5,200(sp) + c0050a32: 6b0e ld s6,192(sp) + c0050a34: 7bea ld s7,184(sp) + c0050a36: 7c4a ld s8,176(sp) + c0050a38: 7caa ld s9,168(sp) + c0050a3a: 7d0a ld s10,160(sp) + c0050a3c: 6dea ld s11,152(sp) + c0050a3e: 8526 mv a0,s1 + c0050a40: 74ae ld s1,232(sp) + c0050a42: 6111 addi sp,sp,256 + c0050a44: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3041 cur_limb *= radix; - c0050876: 02960633 mul a2,a2,s1 + c0050a46: 02960633 mul a2,a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3042 shift--; - c005087a: 37fd addiw a5,a5,-1 + c0050a4a: 37fd addiw a5,a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3040 while (shift != 0) { - c005087c: ffed bnez a5,c0050876 - c005087e: bf55 j c0050832 + c0050a4c: ffed bnez a5,c0050a46 + c0050a4e: bf55 j c0050a02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3057 memset(a->tab, 0, (pos + 1) * sizeof(limb_t)); - c0050880: 7662 ld a2,56(sp) - c0050882: 020a3503 ld a0,32(s4) - c0050886: 4581 li a1,0 - c0050888: 0605 addi a2,a2,1 - c005088a: 060e slli a2,a2,0x3 - c005088c: 7e5050ef jal ra,c0056870 + c0050a50: 7662 ld a2,56(sp) + c0050a52: 020a3503 ld a0,32(s4) + c0050a56: 4581 li a1,0 + c0050a58: 0605 addi a2,a2,1 + c0050a5a: 060e slli a2,a2,0x3 + c0050a5c: 7e5050ef jal ra,c0056a40 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3059 if (p == p_start) { - c0050890: 008d1863 bne s10,s0,c00508a0 + c0050a60: 008d1863 bne s10,s0,c0050a70 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3061 if (!radix_bits) - c0050894: d8091ae3 bnez s2,c0050628 + c0050a64: d8091ae3 bnez s2,c00507f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3062 bf_delete(a); - c0050898: 8552 mv a0,s4 - c005089a: bf2fc0ef jal ra,c004cc8c + c0050a68: 8552 mv a0,s4 + c0050a6a: bf2fc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3063 bf_set_nan(r); - c005089e: b369 j c0050628 + c0050a6e: b369 j c00507f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3070 if (((radix == 10 && (*p == 'e' || *p == 'E')) || - c00508a0: 4729 li a4,10 - c00508a2: 00044783 lbu a5,0(s0) - c00508a6: 04e49c63 bne s1,a4,c00508fe - c00508aa: 0df7f713 andi a4,a5,223 - c00508ae: 04500693 li a3,69 - c00508b2: 1cd71963 bne a4,a3,c0050a84 + c0050a70: 4729 li a4,10 + c0050a72: 00044783 lbu a5,0(s0) + c0050a76: 04e49c63 bne s1,a4,c0050ace + c0050a7a: 0df7f713 andi a4,a5,223 + c0050a7e: 04500693 li a3,69 + c0050a82: 1cd71963 bne a4,a3,c0050c54 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3072 (radix_bits && (*p == 'p' || *p == 'P'))))) && - c00508b6: 1c8d7763 bgeu s10,s0,c0050a84 + c0050a86: 1c8d7763 bgeu s10,s0,c0050c54 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3074 is_bin_exp = (*p == 'p' || *p == 'P'); - c00508ba: 0df7fc13 andi s8,a5,223 + c0050a8a: 0df7fc13 andi s8,a5,223 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3077 if (*p == '+') { - c00508be: 00144783 lbu a5,1(s0) - c00508c2: 02b00713 li a4,43 - c00508c6: 04e79a63 bne a5,a4,c005091a + c0050a8e: 00144783 lbu a5,1(s0) + c0050a92: 02b00713 li a4,43 + c0050a96: 04e79a63 bne a5,a4,c0050aea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3078 p++; - c00508ca: 0409 addi s0,s0,2 + c0050a9a: 0409 addi s0,s0,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3076 exp_is_neg = 0; - c00508cc: 4d81 li s11,0 - c00508ce: 4d01 li s10,0 + c0050a9c: 4d81 li s11,0 + c0050a9e: 4d01 li s10,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3085 c = to_digit(*p); - c00508d0: 00044503 lbu a0,0(s0) - c00508d4: d90fc0ef jal ra,c004ce64 + c0050aa0: 00044503 lbu a0,0(s0) + c0050aa4: d90fc0ef jal ra,c004d034 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3086 if (c >= 10) - c00508d8: 4725 li a4,9 - c00508da: 06a74363 blt a4,a0,c0050940 + c0050aa8: 4725 li a4,9 + c0050aaa: 06a74363 blt a4,a0,c0050b10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3088 if (unlikely(expn > ((BF_RAW_EXP_MAX - 2 - 9) / 10))) { - c00508de: 00024797 auipc a5,0x24 - c00508e2: faa78793 addi a5,a5,-86 # c0074888 <_erodata+0x108> - c00508e6: 6394 ld a3,0(a5) - c00508e8: 47a9 li a5,10 - c00508ea: 05a6d563 bge a3,s10,c0050934 + c0050aae: 00024797 auipc a5,0x24 + c0050ab2: 03a78793 addi a5,a5,58 # c0074ae8 <_erodata+0x108> + c0050ab6: 6394 ld a3,0(a5) + c0050ab8: 47a9 li a5,10 + c0050aba: 05a6d563 bge a3,s10,c0050b04 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3091 bf_set_zero(r, is_neg); - c00508ee: 85da mv a1,s6 - c00508f0: 854e mv a0,s3 + c0050abe: 85da mv a1,s6 + c0050ac0: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3090 if (exp_is_neg) { - c00508f2: 020d8d63 beqz s11,c005092c + c0050ac2: 020d8d63 beqz s11,c0050afc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3091 bf_set_zero(r, is_neg); - c00508f6: 809fc0ef jal ra,c004d0fe + c0050ac6: 809fc0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3092 ret = BF_ST_UNDERFLOW | BF_ST_INEXACT; - c00508fa: 44e1 li s1,24 - c00508fc: bf91 j c0050850 + c0050aca: 44e1 li s1,24 + c0050acc: bf91 j c0050a20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3071 (radix != 10 && (*p == '@' || - c00508fe: 04000713 li a4,64 - c0050902: fae78ae3 beq a5,a4,c00508b6 - c0050906: 18090163 beqz s2,c0050a88 + c0050ace: 04000713 li a4,64 + c0050ad2: fae78ae3 beq a5,a4,c0050a86 + c0050ad6: 18090163 beqz s2,c0050c58 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3072 (radix_bits && (*p == 'p' || *p == 'P'))))) && - c005090a: 0df7f713 andi a4,a5,223 - c005090e: 05000693 li a3,80 - c0050912: 18d70e63 beq a4,a3,c0050aae + c0050ada: 0df7f713 andi a4,a5,223 + c0050ade: 05000693 li a3,80 + c0050ae2: 18d70e63 beq a4,a3,c0050c7e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3109 } else if (radix_bits) { - c0050916: 4d01 li s10,0 - c0050918: a835 j c0050954 + c0050ae6: 4d01 li s10,0 + c0050ae8: a835 j c0050b24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3079 } else if (*p == '-') { - c005091a: 02d00713 li a4,45 - c005091e: 00e78463 beq a5,a4,c0050926 + c0050aea: 02d00713 li a4,45 + c0050aee: 00e78463 beq a5,a4,c0050af6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3075 p++; - c0050922: 0405 addi s0,s0,1 - c0050924: b765 j c00508cc + c0050af2: 0405 addi s0,s0,1 + c0050af4: b765 j c0050a9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3081 p++; - c0050926: 0409 addi s0,s0,2 + c0050af6: 0409 addi s0,s0,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3080 exp_is_neg = 1; - c0050928: 4d85 li s11,1 - c005092a: b755 j c00508ce + c0050af8: 4d85 li s11,1 + c0050afa: b755 j c0050a9e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3094 bf_set_inf(r, is_neg); - c005092c: ff6fc0ef jal ra,c004d122 + c0050afc: ff6fc0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3095 ret = BF_ST_OVERFLOW | BF_ST_INEXACT; - c0050930: 44d1 li s1,20 - c0050932: bf39 j c0050850 + c0050b00: 44d1 li s1,20 + c0050b02: bf39 j c0050a20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3100 expn = expn * 10 + c; - c0050934: 02fd08b3 mul a7,s10,a5 + c0050b04: 02fd08b3 mul a7,s10,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3099 p++; - c0050938: 0405 addi s0,s0,1 + c0050b08: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3100 expn = expn * 10 + c; - c005093a: 01150d33 add s10,a0,a7 + c0050b0a: 01150d33 add s10,a0,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3083 for(;;) { - c005093e: bf49 j c00508d0 + c0050b0e: bf49 j c0050aa0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3102 if (exp_is_neg) - c0050940: 000d8463 beqz s11,c0050948 + c0050b10: 000d8463 beqz s11,c0050b18 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3103 expn = -expn; - c0050944: 41a00d33 neg s10,s10 + c0050b14: 41a00d33 neg s10,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3109 } else if (radix_bits) { - c0050948: 14090163 beqz s2,c0050a8a + c0050b18: 14090163 beqz s2,c0050c5a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3111 if (!is_bin_exp) - c005094c: 05000793 li a5,80 - c0050950: 00fc0463 beq s8,a5,c0050958 + c0050b1c: 05000793 li a5,80 + c0050b20: 00fc0463 beq s8,a5,c0050b28 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3112 expn *= radix_bits; - c0050954: 032d0d33 mul s10,s10,s2 + c0050b24: 032d0d33 mul s10,s10,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3115 ret = bf_normalize_and_round(a, prec, flags); - c0050958: 65c2 ld a1,16(sp) + c0050b28: 65c2 ld a1,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3114 a->sign = is_neg; - c005095a: 016a2423 sw s6,8(s4) + c0050b2a: 016a2423 sw s6,8(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3115 ret = bf_normalize_and_round(a, prec, flags); - c005095e: 8656 mv a2,s5 - c0050960: 8552 mv a0,s4 + c0050b2e: 8656 mv a2,s5 + c0050b30: 8552 mv a0,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3113 a->expn = expn + (int_len * radix_bits); - c0050962: 03990933 mul s2,s2,s9 - c0050966: 01a908b3 add a7,s2,s10 - c005096a: 011a3823 sd a7,16(s4) + c0050b32: 03990933 mul s2,s2,s9 + c0050b36: 01a908b3 add a7,s2,s10 + c0050b3a: 011a3823 sd a7,16(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3115 ret = bf_normalize_and_round(a, prec, flags); - c005096e: c25fc0ef jal ra,c004d592 - c0050972: 84aa mv s1,a0 - c0050974: bdf1 j c0050850 + c0050b3e: c25fc0ef jal ra,c004d762 + c0050b42: 84aa mv s1,a0 + c0050b44: bdf1 j c0050a20 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050976: 57fd li a5,-1 - c0050978: 17fe slli a5,a5,0x3f + c0050b46: 57fd li a5,-1 + c0050b48: 17fe slli a5,a5,0x3f bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3127 bf_init(r->ctx, T); - c005097a: 0009bd83 ld s11,0(s3) + c0050b4a: 0009bd83 ld s11,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3128 if (bf_integer_from_radix(T, a->tab + pos, l, radix)) { - c005097e: 020a3303 ld t1,32(s4) + c0050b4e: 020a3303 ld t1,32(s4) get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2707 k = digits_per_limb_table[radix - 2]; - c0050982: ffe4871b addiw a4,s1,-2 + c0050b52: ffe4871b addiw a4,s1,-2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050986: fcbe sd a5,120(sp) + c0050b56: fcbe sd a5,120(sp) get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2707 k = digits_per_limb_table[radix - 2]; - c0050988: 00022797 auipc a5,0x22 - c005098c: a5878793 addi a5,a5,-1448 # c00723e0 - c0050990: 97ba add a5,a5,a4 + c0050b58: 00022797 auipc a5,0x22 + c0050b5c: ae878793 addi a5,a5,-1304 # c0072640 + c0050b60: 97ba add a5,a5,a4 bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3128 if (bf_integer_from_radix(T, a->tab + pos, l, radix)) { - c0050992: 058e slli a1,a1,0x3 + c0050b62: 058e slli a1,a1,0x3 get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2707 k = digits_per_limb_table[radix - 2]; - c0050994: 0007c683 lbu a3,0(a5) + c0050b64: 0007c683 lbu a3,0(a5) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050998: f4ee sd s11,104(sp) + c0050b68: f4ee sd s11,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005099a: d882 sw zero,112(sp) + c0050b6a: d882 sw zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005099c: e102 sd zero,128(sp) + c0050b6c: e102 sd zero,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005099e: e502 sd zero,136(sp) + c0050b6e: e502 sd zero,136(sp) bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3128 if (bf_integer_from_radix(T, a->tab + pos, l, radix)) { - c00509a0: 932e add t1,t1,a1 + c0050b70: 932e add t1,t1,a1 get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2708 radixl = radix; - c00509a2: 87a6 mv a5,s1 + c0050b72: 87a6 mv a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2709 for(i = 1; i < k; i++) - c00509a4: 4705 li a4,1 - c00509a6: 08d74363 blt a4,a3,c0050a2c + c0050b74: 4705 li a4,1 + c0050b76: 08d74363 blt a4,a3,c0050bfc bf_integer_from_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2763 pow_tab_len = ceil_log2(n) + 2; /* XXX: check */ - c00509aa: 854a mv a0,s2 - c00509ac: f03e sd a5,32(sp) - c00509ae: ec1a sd t1,24(sp) - c00509b0: ceefc0ef jal ra,c004ce9e - c00509b4: 00250c1b addiw s8,a0,2 + c0050b7a: 854a mv a0,s2 + c0050b7c: f03e sd a5,32(sp) + c0050b7e: ec1a sd t1,24(sp) + c0050b80: ceefc0ef jal ra,c004d06e + c0050b84: 00250c1b addiw s8,a0,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2764 pow_tab = bf_malloc(s, sizeof(pow_tab[0]) * pow_tab_len); - c00509b8: 02800593 li a1,40 - c00509bc: 02bc05b3 mul a1,s8,a1 - c00509c0: 856e mv a0,s11 - c00509c2: ab8fc0ef jal ra,c004cc7a - c00509c6: 882a mv a6,a0 + c0050b88: 02800593 li a1,40 + c0050b8c: 02bc05b3 mul a1,s8,a1 + c0050b90: 856e mv a0,s11 + c0050b92: ab8fc0ef jal ra,c004ce4a + c0050b96: 882a mv a6,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2765 if (!pow_tab) - c00509c8: c535 beqz a0,c0050a34 - c00509ca: 6362 ld t1,24(sp) - c00509cc: 7782 ld a5,32(sp) + c0050b98: c535 beqz a0,c0050c04 + c0050b9a: 6362 ld t1,24(sp) + c0050b9c: 7782 ld a5,32(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00509ce: 567d li a2,-1 + c0050b9e: 567d li a2,-1 bf_integer_from_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2765 if (!pow_tab) - c00509d0: 872a mv a4,a0 + c0050ba0: 872a mv a4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2767 for(i = 0; i < pow_tab_len; i++) - c00509d2: 4681 li a3,0 + c0050ba2: 4681 li a3,0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00509d4: 167e slli a2,a2,0x3f + c0050ba4: 167e slli a2,a2,0x3f bf_integer_from_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2767 for(i = 0; i < pow_tab_len; i++) - c00509d6: 0786c863 blt a3,s8,c0050a46 + c0050ba6: 0786c863 blt a3,s8,c0050c16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2769 ret = bf_integer_from_radix_rec(r, tab, n, 0, n, radixl, pow_tab); - c00509da: 874a mv a4,s2 - c00509dc: 4681 li a3,0 - c00509de: 864a mv a2,s2 - c00509e0: 859a mv a1,t1 - c00509e2: 10a8 addi a0,sp,104 - c00509e4: f042 sd a6,32(sp) - c00509e6: c1cfe0ef jal ra,c004ee02 - c00509ea: ec2a sd a0,24(sp) + c0050baa: 874a mv a4,s2 + c0050bac: 4681 li a3,0 + c0050bae: 864a mv a2,s2 + c0050bb0: 859a mv a1,t1 + c0050bb2: 10a8 addi a0,sp,104 + c0050bb4: f042 sd a6,32(sp) + c0050bb6: c1cfe0ef jal ra,c004efd2 + c0050bba: ec2a sd a0,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2770 for(i = 0; i < pow_tab_len; i++) { - c00509ec: 4781 li a5,0 - c00509ee: 0007871b sext.w a4,a5 - c00509f2: 7802 ld a6,32(sp) - c00509f4: 02800693 li a3,40 - c00509f8: 07874463 blt a4,s8,c0050a60 + c0050bbc: 4781 li a5,0 + c0050bbe: 0007871b sext.w a4,a5 + c0050bc2: 7802 ld a6,32(sp) + c0050bc4: 02800693 li a3,40 + c0050bc8: 07874463 blt a4,s8,c0050c30 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2773 bf_free(s, pow_tab); - c00509fc: 85c2 mv a1,a6 - c00509fe: 856e mv a0,s11 - c0050a00: a82fc0ef jal ra,c004cc82 + c0050bcc: 85c2 mv a1,a6 + c0050bce: 856e mv a0,s11 + c0050bd0: a82fc0ef jal ra,c004ce52 bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3128 if (bf_integer_from_radix(T, a->tab + pos, l, radix)) { - c0050a04: 67e2 ld a5,24(sp) - c0050a06: e79d bnez a5,c0050a34 + c0050bd4: 67e2 ld a5,24(sp) + c0050bd6: e79d bnez a5,c0050c04 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3126 expn -= l * digits_per_limb - int_len; - c0050a08: 032b86b3 mul a3,s7,s2 + c0050bd8: 032b86b3 mul a3,s7,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3133 if (flags & BF_ATOF_EXPONENT) { - c0050a0c: 013ad793 srli a5,s5,0x13 + c0050bdc: 013ad793 srli a5,s5,0x13 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3132 T->sign = is_neg; - c0050a10: d8da sw s6,112(sp) + c0050be0: d8da sw s6,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3133 if (flags & BF_ATOF_EXPONENT) { - c0050a12: 8b85 andi a5,a5,1 + c0050be2: 8b85 andi a5,a5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3126 expn -= l * digits_per_limb - int_len; - c0050a14: 40dc86b3 sub a3,s9,a3 - c0050a18: 96ea add a3,a3,s10 + c0050be4: 40dc86b3 sub a3,s9,a3 + c0050be8: 96ea add a3,a3,s10 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3133 if (flags & BF_ATOF_EXPONENT) { - c0050a1a: cfa9 beqz a5,c0050a74 + c0050bea: cfa9 beqz a5,c0050c44 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3135 *pexponent = expn; - c0050a1c: 6782 ld a5,0(sp) + c0050bec: 6782 ld a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3136 ret = bf_set(r, T); - c0050a1e: 10ac addi a1,sp,104 - c0050a20: 854e mv a0,s3 + c0050bee: 10ac addi a1,sp,104 + c0050bf0: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3135 *pexponent = expn; - c0050a22: e394 sd a3,0(a5) + c0050bf2: e394 sd a3,0(a5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3136 ret = bf_set(r, T); - c0050a24: a9dfc0ef jal ra,c004d4c0 + c0050bf4: a9dfc0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3138 ret = bf_mul_pow_radix(r, T, radix, expn, prec, flags); - c0050a28: 84aa mv s1,a0 - c0050a2a: a811 j c0050a3e + c0050bf8: 84aa mv s1,a0 + c0050bfa: a811 j c0050c0e get_limb_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2710 radixl *= radix; - c0050a2c: 029787b3 mul a5,a5,s1 + c0050bfc: 029787b3 mul a5,a5,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2709 for(i = 1; i < k; i++) - c0050a30: 2705 addiw a4,a4,1 - c0050a32: bf95 j c00509a6 + c0050c00: 2705 addiw a4,a4,1 + c0050c02: bf95 j c0050b76 bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3129 bf_set_nan(r); - c0050a34: 854e mv a0,s3 - c0050a36: e26fc0ef jal ra,c004d05c + c0050c04: 854e mv a0,s3 + c0050c06: e26fc0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3130 ret = BF_ST_MEM_ERROR; - c0050a3a: 02000493 li s1,32 + c0050c0a: 02000493 li s1,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3141 bf_delete(T); - c0050a3e: 10a8 addi a0,sp,104 - c0050a40: a4cfc0ef jal ra,c004cc8c - c0050a44: a08d j c0050aa6 + c0050c0e: 10a8 addi a0,sp,104 + c0050c10: a4cfc0ef jal ra,c004ce5c + c0050c14: a08d j c0050c76 bf_integer_from_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2768 bf_init(r->ctx, &pow_tab[i]); - c0050a46: 75a6 ld a1,104(sp) + c0050c16: 75a6 ld a1,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2767 for(i = 0; i < pow_tab_len; i++) - c0050a48: 2685 addiw a3,a3,1 + c0050c18: 2685 addiw a3,a3,1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050a4a: 00072423 sw zero,8(a4) + c0050c1a: 00072423 sw zero,8(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050a4e: e30c sd a1,0(a4) + c0050c1e: e30c sd a1,0(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050a50: eb10 sd a2,16(a4) + c0050c20: eb10 sd a2,16(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0050a52: 00073c23 sd zero,24(a4) + c0050c22: 00073c23 sd zero,24(a4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050a56: 02073023 sd zero,32(a4) + c0050c26: 02073023 sd zero,32(a4) bf_integer_from_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2767 for(i = 0; i < pow_tab_len; i++) - c0050a5a: 02870713 addi a4,a4,40 - c0050a5e: bfa5 j c00509d6 + c0050c2a: 02870713 addi a4,a4,40 + c0050c2e: bfa5 j c0050ba6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2771 bf_delete(&pow_tab[i]); - c0050a60: 02d78533 mul a0,a5,a3 - c0050a64: f43e sd a5,40(sp) - c0050a66: f042 sd a6,32(sp) - c0050a68: 9542 add a0,a0,a6 - c0050a6a: a22fc0ef jal ra,c004cc8c + c0050c30: 02d78533 mul a0,a5,a3 + c0050c34: f43e sd a5,40(sp) + c0050c36: f042 sd a6,32(sp) + c0050c38: 9542 add a0,a0,a6 + c0050c3a: a22fc0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:2770 for(i = 0; i < pow_tab_len; i++) { - c0050a6e: 77a2 ld a5,40(sp) - c0050a70: 0785 addi a5,a5,1 - c0050a72: bfb5 j c00509ee + c0050c3e: 77a2 ld a5,40(sp) + c0050c40: 0785 addi a5,a5,1 + c0050c42: bfb5 j c0050bbe bf_atof_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3138 ret = bf_mul_pow_radix(r, T, radix, expn, prec, flags); - c0050a74: 6742 ld a4,16(sp) - c0050a76: 87d6 mv a5,s5 - c0050a78: 8626 mv a2,s1 - c0050a7a: 10ac addi a1,sp,104 - c0050a7c: 854e mv a0,s3 - c0050a7e: 9c9ff0ef jal ra,c0050446 - c0050a82: b75d j c0050a28 + c0050c44: 6742 ld a4,16(sp) + c0050c46: 87d6 mv a5,s5 + c0050c48: 8626 mv a2,s1 + c0050c4a: 10ac addi a1,sp,104 + c0050c4c: 854e mv a0,s3 + c0050c4e: 9c9ff0ef jal ra,c0050616 + c0050c52: b75d j c0050bf8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3109 } else if (radix_bits) { - c0050a84: e80919e3 bnez s2,c0050916 + c0050c54: e80919e3 bnez s2,c0050ae6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3068 expn = 0; - c0050a88: 4d01 li s10,0 + c0050c58: 4d01 li s10,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3118 pos++; - c0050a8a: 75e2 ld a1,56(sp) + c0050c5a: 75e2 ld a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3119 l = a->len - pos; /* number of limbs */ - c0050a8c: 018a3783 ld a5,24(s4) + c0050c5c: 018a3783 ld a5,24(s4) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3118 pos++; - c0050a90: 0585 addi a1,a1,1 - c0050a92: fc2e sd a1,56(sp) + c0050c60: 0585 addi a1,a1,1 + c0050c62: fc2e sd a1,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3119 l = a->len - pos; /* number of limbs */ - c0050a94: 40b78933 sub s2,a5,a1 + c0050c64: 40b78933 sub s2,a5,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3120 if (l == 0) { - c0050a98: ecb79fe3 bne a5,a1,c0050976 + c0050c68: ecb79fe3 bne a5,a1,c0050b46 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3121 bf_set_zero(r, is_neg); - c0050a9c: 85da mv a1,s6 - c0050a9e: 854e mv a0,s3 - c0050aa0: e5efc0ef jal ra,c004d0fe + c0050c6c: 85da mv a1,s6 + c0050c6e: 854e mv a0,s3 + c0050c70: e5efc0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3122 ret = 0; - c0050aa4: 4481 li s1,0 + c0050c74: 4481 li s1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3143 bf_delete(a); - c0050aa6: 8552 mv a0,s4 - c0050aa8: 9e4fc0ef jal ra,c004cc8c - c0050aac: b355 j c0050850 + c0050c76: 8552 mv a0,s4 + c0050c78: 9e4fc0ef jal ra,c004ce5c + c0050c7c: b355 j c0050a20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3072 (radix_bits && (*p == 'p' || *p == 'P'))))) && - c0050aae: e68d74e3 bgeu s10,s0,c0050916 - c0050ab2: b521 j c00508ba + c0050c7e: e68d74e3 bgeu s10,s0,c0050ae6 + c0050c82: b521 j c0050a8a -00000000c0050ab4 : +00000000c0050c84 : bf_atof2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3163 return bf_atof_internal(r, pexponent, str, pnext, radix, prec, flags, - c0050ab4: b07ff06f j c00505ba + c0050c84: b07ff06f j c005078a -00000000c0050ab8 : +00000000c0050c88 : bf_atof(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3169 { - c0050ab8: 1101 addi sp,sp,-32 + c0050c88: 1101 addi sp,sp,-32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3171 return bf_atof_internal(r, &dummy_exp, str, pnext, radix, prec, flags, FALSE); - c0050aba: 883e mv a6,a5 - c0050abc: 87ba mv a5,a4 - c0050abe: 8736 mv a4,a3 - c0050ac0: 86b2 mv a3,a2 - c0050ac2: 862e mv a2,a1 - c0050ac4: 002c addi a1,sp,8 + c0050c8a: 883e mv a6,a5 + c0050c8c: 87ba mv a5,a4 + c0050c8e: 8736 mv a4,a3 + c0050c90: 86b2 mv a3,a2 + c0050c92: 862e mv a2,a1 + c0050c94: 002c addi a1,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3169 { - c0050ac6: ec06 sd ra,24(sp) + c0050c96: ec06 sd ra,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3171 return bf_atof_internal(r, &dummy_exp, str, pnext, radix, prec, flags, FALSE); - c0050ac8: af3ff0ef jal ra,c00505ba + c0050c98: af3ff0ef jal ra,c005078a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3172 } - c0050acc: 60e2 ld ra,24(sp) - c0050ace: 6105 addi sp,sp,32 - c0050ad0: 8082 ret + c0050c9c: 60e2 ld ra,24(sp) + c0050c9e: 6105 addi sp,sp,32 + c0050ca0: 8082 ret -00000000c0050ad2 : +00000000c0050ca2 : bf_mul_log2_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3339 { - c0050ad2: 7179 addi sp,sp,-48 - c0050ad4: f022 sd s0,32(sp) - c0050ad6: ec26 sd s1,24(sp) - c0050ad8: e84a sd s2,16(sp) - c0050ada: e44e sd s3,8(sp) - c0050adc: f406 sd ra,40(sp) - c0050ade: 89b2 mv s3,a2 - c0050ae0: 84b6 mv s1,a3 + c0050ca2: 7179 addi sp,sp,-48 + c0050ca4: f022 sd s0,32(sp) + c0050ca6: ec26 sd s1,24(sp) + c0050ca8: e84a sd s2,16(sp) + c0050caa: e44e sd s3,8(sp) + c0050cac: f406 sd ra,40(sp) + c0050cae: 89b2 mv s3,a2 + c0050cb0: 84b6 mv s1,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3345 a = a1; - c0050ae2: 842a mv s0,a0 + c0050cb2: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3346 if (a1 < 0) { - c0050ae4: 4901 li s2,0 - c0050ae6: 00055563 bgez a0,c0050af0 + c0050cb4: 4901 li s2,0 + c0050cb6: 00055563 bgez a0,c0050cc0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3347 a = -a; - c0050aea: 40a00433 neg s0,a0 + c0050cba: 40a00433 neg s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3348 is_neg = 1; - c0050aee: 4905 li s2,1 + c0050cbe: 4905 li s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3353 if ((radix & (radix - 1)) == 0) { - c0050af0: fff5879b addiw a5,a1,-1 - c0050af4: 8fed and a5,a5,a1 - c0050af6: 2781 sext.w a5,a5 - c0050af8: ef8d bnez a5,c0050b32 + c0050cc0: fff5879b addiw a5,a1,-1 + c0050cc4: 8fed and a5,a5,a1 + c0050cc6: 2781 sext.w a5,a5 + c0050cc8: ef8d bnez a5,c0050d02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3356 radix_bits = ceil_log2(radix); - c0050afa: 02059513 slli a0,a1,0x20 - c0050afe: 9101 srli a0,a0,0x20 - c0050b00: b9efc0ef jal ra,c004ce9e - c0050b04: 87aa mv a5,a0 + c0050cca: 02059513 slli a0,a1,0x20 + c0050cce: 9101 srli a0,a0,0x20 + c0050cd0: b9efc0ef jal ra,c004d06e + c0050cd4: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3362 a = a * radix_bits; - c0050b06: 02a40533 mul a0,s0,a0 + c0050cd6: 02a40533 mul a0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3357 if (is_inv) { - c0050b0a: 00098963 beqz s3,c0050b1c + c0050cda: 00098963 beqz s3,c0050cec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3358 if (is_ceil) - c0050b0e: 00990563 beq s2,s1,c0050b18 + c0050cde: 00990563 beq s2,s1,c0050ce8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3359 a += radix_bits - 1; - c0050b12: fff7871b addiw a4,a5,-1 - c0050b16: 943a add s0,s0,a4 + c0050ce2: fff7871b addiw a4,a5,-1 + c0050ce6: 943a add s0,s0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3360 a = a / radix_bits; - c0050b18: 02f45533 divu a0,s0,a5 + c0050ce8: 02f45533 divu a0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3389 if (is_neg) - c0050b1c: 00090463 beqz s2,c0050b24 + c0050cec: 00090463 beqz s2,c0050cf4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3390 a = -a; - c0050b20: 40a00533 neg a0,a0 + c0050cf0: 40a00533 neg a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3392 } - c0050b24: 70a2 ld ra,40(sp) - c0050b26: 7402 ld s0,32(sp) - c0050b28: 64e2 ld s1,24(sp) - c0050b2a: 6942 ld s2,16(sp) - c0050b2c: 69a2 ld s3,8(sp) - c0050b2e: 6145 addi sp,sp,48 - c0050b30: 8082 ret + c0050cf4: 70a2 ld ra,40(sp) + c0050cf6: 7402 ld s0,32(sp) + c0050cf8: 64e2 ld s1,24(sp) + c0050cfa: 6942 ld s2,16(sp) + c0050cfc: 69a2 ld s3,8(sp) + c0050cfe: 6145 addi sp,sp,48 + c0050d00: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3370 tab = inv_log2_radix[radix - 2]; - c0050b32: 35f9 addiw a1,a1,-2 - c0050b34: 1582 slli a1,a1,0x20 - c0050b36: 9181 srli a1,a1,0x20 + c0050d02: 35f9 addiw a1,a1,-2 + c0050d04: 1582 slli a1,a1,0x20 + c0050d06: 9181 srli a1,a1,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3369 if (is_inv) { - c0050b38: 04098463 beqz s3,c0050b80 + c0050d08: 04098463 beqz s3,c0050d50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3370 tab = inv_log2_radix[radix - 2]; - c0050b3c: 4531 li a0,12 - c0050b3e: 02a585b3 mul a1,a1,a0 - c0050b42: 00022797 auipc a5,0x22 - c0050b46: 8c678793 addi a5,a5,-1850 # c0072408 - c0050b4a: 95be add a1,a1,a5 + c0050d0c: 4531 li a0,12 + c0050d0e: 02a585b3 mul a1,a1,a0 + c0050d12: 00022797 auipc a5,0x22 + c0050d16: 95678793 addi a5,a5,-1706 # c0072668 + c0050d1a: 95be add a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3375 b1 = ((limb_t)tab[0] << 32) | tab[1]; - c0050b4c: 0005e503 lwu a0,0(a1) - c0050b50: 0045e783 lwu a5,4(a1) + c0050d1c: 0005e503 lwu a0,0(a1) + c0050d20: 0045e783 lwu a5,4(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3376 b0 = (limb_t)tab[2] << 32; - c0050b54: 0085e703 lwu a4,8(a1) + c0050d24: 0085e703 lwu a4,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3375 b1 = ((limb_t)tab[0] << 32) | tab[1]; - c0050b58: 1502 slli a0,a0,0x20 - c0050b5a: 8d5d or a0,a0,a5 + c0050d28: 1502 slli a0,a0,0x20 + c0050d2a: 8d5d or a0,a0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3376 b0 = (limb_t)tab[2] << 32; - c0050b5c: 1702 slli a4,a4,0x20 + c0050d2c: 1702 slli a4,a4,0x20 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3379 t = (dlimb_t)b1 * (dlimb_t)a + (t >> LIMB_BITS); - c0050b5e: 028507b3 mul a5,a0,s0 + c0050d2e: 028507b3 mul a5,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3378 t = (dlimb_t)b0 * (dlimb_t)a; - c0050b62: 02873733 mulhu a4,a4,s0 + c0050d32: 02873733 mulhu a4,a4,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3379 t = (dlimb_t)b1 * (dlimb_t)a + (t >> LIMB_BITS); - c0050b66: 02853433 mulhu s0,a0,s0 - c0050b6a: 973e add a4,a4,a5 - c0050b6c: 00f73533 sltu a0,a4,a5 + c0050d36: 02853433 mulhu s0,a0,s0 + c0050d3a: 973e add a4,a4,a5 + c0050d3c: 00f73533 sltu a0,a4,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3380 a = t >> (LIMB_BITS - 1); - c0050b70: 937d srli a4,a4,0x3f + c0050d40: 937d srli a4,a4,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3379 t = (dlimb_t)b1 * (dlimb_t)a + (t >> LIMB_BITS); - c0050b72: 9522 add a0,a0,s0 + c0050d42: 9522 add a0,a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3380 a = t >> (LIMB_BITS - 1); - c0050b74: 0506 slli a0,a0,0x1 - c0050b76: 8d59 or a0,a0,a4 + c0050d44: 0506 slli a0,a0,0x1 + c0050d46: 8d59 or a0,a0,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3387 a += is_ceil; - c0050b78: 009944b3 xor s1,s2,s1 - c0050b7c: 9526 add a0,a0,s1 - c0050b7e: bf79 j c0050b1c + c0050d48: 009944b3 xor s1,s2,s1 + c0050d4c: 9526 add a0,a0,s1 + c0050d4e: bf79 j c0050cec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3382 b0 = log2_radix[radix - 2]; - c0050b80: 00022797 auipc a5,0x22 - c0050b84: a3078793 addi a5,a5,-1488 # c00725b0 - c0050b88: 058e slli a1,a1,0x3 - c0050b8a: 95be add a1,a1,a5 + c0050d50: 00022797 auipc a5,0x22 + c0050d54: ac078793 addi a5,a5,-1344 # c0072810 + c0050d58: 058e slli a1,a1,0x3 + c0050d5a: 95be add a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3383 t = (dlimb_t)b0 * (dlimb_t)a; - c0050b8c: 6188 ld a0,0(a1) - c0050b8e: 02a407b3 mul a5,s0,a0 - c0050b92: 02a43533 mulhu a0,s0,a0 + c0050d5c: 6188 ld a0,0(a1) + c0050d5e: 02a407b3 mul a5,s0,a0 + c0050d62: 02a43533 mulhu a0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3384 a = t >> (LIMB_BITS - 3); - c0050b96: 00351413 slli s0,a0,0x3 - c0050b9a: 03d7d513 srli a0,a5,0x3d - c0050b9e: 8d41 or a0,a0,s0 - c0050ba0: bfe1 j c0050b78 + c0050d66: 00351413 slli s0,a0,0x3 + c0050d6a: 03d7d513 srli a0,a5,0x3d + c0050d6e: 8d41 or a0,a0,s0 + c0050d70: bfe1 j c0050d48 -00000000c0050ba2 : +00000000c0050d72 : bf_convert_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3513 { - c0050ba2: 7115 addi sp,sp,-224 - c0050ba4: fd4e sd s3,184(sp) - c0050ba6: f556 sd s5,168(sp) - c0050ba8: ed86 sd ra,216(sp) - c0050baa: e9a2 sd s0,208(sp) - c0050bac: e5a6 sd s1,200(sp) - c0050bae: e1ca sd s2,192(sp) - c0050bb0: f952 sd s4,176(sp) - c0050bb2: f15a sd s6,160(sp) - c0050bb4: ed5e sd s7,152(sp) - c0050bb6: e962 sd s8,144(sp) - c0050bb8: e566 sd s9,136(sp) - c0050bba: e16a sd s10,128(sp) - c0050bbc: fcee sd s11,120(sp) - c0050bbe: e03e sd a5,0(sp) + c0050d72: 7115 addi sp,sp,-224 + c0050d74: fd4e sd s3,184(sp) + c0050d76: f556 sd s5,168(sp) + c0050d78: ed86 sd ra,216(sp) + c0050d7a: e9a2 sd s0,208(sp) + c0050d7c: e5a6 sd s1,200(sp) + c0050d7e: e1ca sd s2,192(sp) + c0050d80: f952 sd s4,176(sp) + c0050d82: f15a sd s6,160(sp) + c0050d84: ed5e sd s7,152(sp) + c0050d86: e962 sd s8,144(sp) + c0050d88: e566 sd s9,136(sp) + c0050d8a: e16a sd s10,128(sp) + c0050d8c: fcee sd s11,120(sp) + c0050d8e: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3518 if (a->len == 0) { - c0050bc0: 6e1c ld a5,24(a2) + c0050d90: 6e1c ld a5,24(a2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3513 { - c0050bc2: e442 sd a6,8(sp) - c0050bc4: 8aae mv s5,a1 - c0050bc6: 89b2 mv s3,a2 + c0050d92: e442 sd a6,8(sp) + c0050d94: 8aae mv s5,a1 + c0050d96: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3518 if (a->len == 0) { - c0050bc8: e785 bnez a5,c0050bf0 + c0050d98: e785 bnez a5,c0050dc0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3520 *pE = 0; - c0050bca: 0005b023 sd zero,0(a1) + c0050d9a: 0005b023 sd zero,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3590 } - c0050bce: 644e ld s0,208(sp) - c0050bd0: 60ee ld ra,216(sp) - c0050bd2: 64ae ld s1,200(sp) - c0050bd4: 690e ld s2,192(sp) - c0050bd6: 79ea ld s3,184(sp) - c0050bd8: 7a4a ld s4,176(sp) - c0050bda: 7aaa ld s5,168(sp) - c0050bdc: 7b0a ld s6,160(sp) - c0050bde: 6bea ld s7,152(sp) - c0050be0: 6c4a ld s8,144(sp) - c0050be2: 6caa ld s9,136(sp) - c0050be4: 6d0a ld s10,128(sp) - c0050be6: 7de6 ld s11,120(sp) + c0050d9e: 644e ld s0,208(sp) + c0050da0: 60ee ld ra,216(sp) + c0050da2: 64ae ld s1,200(sp) + c0050da4: 690e ld s2,192(sp) + c0050da6: 79ea ld s3,184(sp) + c0050da8: 7a4a ld s4,176(sp) + c0050daa: 7aaa ld s5,168(sp) + c0050dac: 7b0a ld s6,160(sp) + c0050dae: 6bea ld s7,152(sp) + c0050db0: 6c4a ld s8,144(sp) + c0050db2: 6caa ld s9,136(sp) + c0050db4: 6d0a ld s10,128(sp) + c0050db6: 7de6 ld s11,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3521 return bf_set(r, a); - c0050be8: 85b2 mv a1,a2 + c0050db8: 85b2 mv a1,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3590 } - c0050bea: 612d addi sp,sp,224 + c0050dba: 612d addi sp,sp,224 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3521 return bf_set(r, a); - c0050bec: 8d5fc06f j c004d4c0 + c0050dbc: 8d5fc06f j c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3541 prec0 = bf_mul_log2_radix(P, radix, FALSE, TRUE); - c0050bf0: 0006879b sext.w a5,a3 - c0050bf4: f43e sd a5,40(sp) + c0050dc0: 0006879b sext.w a5,a3 + c0050dc4: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3524 if (is_fixed_exponent) { - c0050bf6: 67a2 ld a5,8(sp) - c0050bf8: 842a mv s0,a0 - c0050bfa: 8b36 mv s6,a3 - c0050bfc: 8a3a mv s4,a4 - c0050bfe: c3dd beqz a5,c0050ca4 + c0050dc6: 67a2 ld a5,8(sp) + c0050dc8: 842a mv s0,a0 + c0050dca: 8b36 mv s6,a3 + c0050dcc: 8a3a mv s4,a4 + c0050dce: c3dd beqz a5,c0050e74 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3525 E = *pE; - c0050c00: 0005b903 ld s2,0(a1) + c0050dd0: 0005b903 ld s2,0(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3565 ret = bf_rint(r, rnd_mode); - c0050c04: 4782 lw a5,0(sp) - c0050c06: 412a0933 sub s2,s4,s2 + c0050dd4: 4782 lw a5,0(sp) + c0050dd6: 412a0933 sub s2,s4,s2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050c0a: 5cfd li s9,-1 + c0050dda: 5cfd li s9,-1 bf_convert_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3565 ret = bf_rint(r, rnd_mode); - c0050c0c: f83e sd a5,48(sp) - c0050c0e: 412a0733 sub a4,s4,s2 - c0050c12: f03a sd a4,32(sp) + c0050ddc: f83e sd a5,48(sp) + c0050dde: 412a0733 sub a4,s4,s2 + c0050de2: f03a sd a4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3534 e = P - E; - c0050c14: 412007b3 neg a5,s2 - c0050c18: 8c4a mv s8,s2 + c0050de4: 412007b3 neg a5,s2 + c0050de8: 8c4a mv s8,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3535 e_sign = 0; - c0050c1a: 4d01 li s10,0 + c0050dea: 4d01 li s10,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3536 if (e < 0) { - c0050c1c: 00095463 bgez s2,c0050c24 + c0050dec: 00095463 bgez s2,c0050df4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3537 e = -e; - c0050c20: 8c3e mv s8,a5 + c0050df0: 8c3e mv s8,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3538 e_sign = 1; - c0050c22: 4d05 li s10,1 + c0050df2: 4d05 li s10,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3541 prec0 = bf_mul_log2_radix(P, radix, FALSE, TRUE); - c0050c24: 75a2 ld a1,40(sp) - c0050c26: 4685 li a3,1 - c0050c28: 4601 li a2,0 - c0050c2a: 8552 mv a0,s4 - c0050c2c: ea7ff0ef jal ra,c0050ad2 - c0050c30: e82a sd a0,16(sp) + c0050df4: 75a2 ld a1,40(sp) + c0050df6: 4685 li a3,1 + c0050df8: 4601 li a2,0 + c0050dfa: 8552 mv a0,s4 + c0050dfc: ea7ff0ef jal ra,c0050ca2 + c0050e00: e82a sd a0,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3546 extra_bits = ceil_log2(e) * 2 + 1; - c0050c32: 8562 mv a0,s8 - c0050c34: a6afc0ef jal ra,c004ce9e - c0050c38: 0015151b slliw a0,a0,0x1 - c0050c3c: 0015079b addiw a5,a0,1 - c0050c40: ec3e sd a5,24(sp) + c0050e02: 8562 mv a0,s8 + c0050e04: a6afc0ef jal ra,c004d06e + c0050e08: 0015151b slliw a0,a0,0x1 + c0050e0c: 0015079b addiw a5,a0,1 + c0050e10: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3542 ziv_extra_bits = 16; - c0050c42: 4bc1 li s7,16 + c0050e12: 4bc1 li s7,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3544 prec = prec0 + ziv_extra_bits; - c0050c44: 67c2 ld a5,16(sp) + c0050e14: 67c2 ld a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3547 ret = bf_pow_ui_ui(r, radix, e, prec + extra_bits, - c0050c46: 7e000713 li a4,2016 - c0050c4a: 8662 mv a2,s8 + c0050e16: 7e000713 li a4,2016 + c0050e1a: 8662 mv a2,s8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3544 prec = prec0 + ziv_extra_bits; - c0050c4c: 00fb8db3 add s11,s7,a5 + c0050e1c: 00fb8db3 add s11,s7,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3547 ret = bf_pow_ui_ui(r, radix, e, prec + extra_bits, - c0050c50: 67e2 ld a5,24(sp) - c0050c52: 85da mv a1,s6 - c0050c54: 8522 mv a0,s0 - c0050c56: 00fd86b3 add a3,s11,a5 - c0050c5a: fc36 sd a3,56(sp) - c0050c5c: e9ffd0ef jal ra,c004eafa + c0050e20: 67e2 ld a5,24(sp) + c0050e22: 85da mv a1,s6 + c0050e24: 8522 mv a0,s0 + c0050e26: 00fd86b3 add a3,s11,a5 + c0050e2a: fc36 sd a3,56(sp) + c0050e2c: e9ffd0ef jal ra,c004ecca /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3549 if (!e_sign) - c0050c60: 76e2 ld a3,56(sp) + c0050e30: 76e2 ld a3,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3547 ret = bf_pow_ui_ui(r, radix, e, prec + extra_bits, - c0050c62: 84aa mv s1,a0 + c0050e32: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3550 ret |= bf_mul(r, r, a, prec + extra_bits, - c0050c64: 7e000713 li a4,2016 + c0050e34: 7e000713 li a4,2016 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3549 if (!e_sign) - c0050c68: 040d1963 bnez s10,c0050cba + c0050e38: 040d1963 bnez s10,c0050e8a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3550 ret |= bf_mul(r, r, a, prec + extra_bits, - c0050c6c: 864e mv a2,s3 - c0050c6e: 85a2 mv a1,s0 - c0050c70: 8522 mv a0,s0 - c0050c72: c69fd0ef jal ra,c004e8da + c0050e3c: 864e mv a2,s3 + c0050e3e: 85a2 mv a1,s0 + c0050e40: 8522 mv a0,s0 + c0050e42: c69fd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3553 ret |= bf_div(r, a, r, prec + extra_bits, - c0050c76: 8cc9 or s1,s1,a0 - c0050c78: 2481 sext.w s1,s1 + c0050e46: 8cc9 or s1,s1,a0 + c0050e48: 2481 sext.w s1,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3555 if (ret & BF_ST_MEM_ERROR) - c0050c7a: 0204f793 andi a5,s1,32 - c0050c7e: c7a1 beqz a5,c0050cc6 + c0050e4a: 0204f793 andi a5,s1,32 + c0050e4e: c7a1 beqz a5,c0050e96 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3556 return BF_ST_MEM_ERROR; - c0050c80: 02000493 li s1,32 + c0050e50: 02000493 li s1,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3590 } - c0050c84: 60ee ld ra,216(sp) - c0050c86: 644e ld s0,208(sp) - c0050c88: 690e ld s2,192(sp) - c0050c8a: 79ea ld s3,184(sp) - c0050c8c: 7a4a ld s4,176(sp) - c0050c8e: 7aaa ld s5,168(sp) - c0050c90: 7b0a ld s6,160(sp) - c0050c92: 6bea ld s7,152(sp) - c0050c94: 6c4a ld s8,144(sp) - c0050c96: 6caa ld s9,136(sp) - c0050c98: 6d0a ld s10,128(sp) - c0050c9a: 7de6 ld s11,120(sp) - c0050c9c: 8526 mv a0,s1 - c0050c9e: 64ae ld s1,200(sp) - c0050ca0: 612d addi sp,sp,224 - c0050ca2: 8082 ret + c0050e54: 60ee ld ra,216(sp) + c0050e56: 644e ld s0,208(sp) + c0050e58: 690e ld s2,192(sp) + c0050e5a: 79ea ld s3,184(sp) + c0050e5c: 7a4a ld s4,176(sp) + c0050e5e: 7aaa ld s5,168(sp) + c0050e60: 7b0a ld s6,160(sp) + c0050e62: 6bea ld s7,152(sp) + c0050e64: 6c4a ld s8,144(sp) + c0050e66: 6caa ld s9,136(sp) + c0050e68: 6d0a ld s10,128(sp) + c0050e6a: 7de6 ld s11,120(sp) + c0050e6c: 8526 mv a0,s1 + c0050e6e: 64ae ld s1,200(sp) + c0050e70: 612d addi sp,sp,224 + c0050e72: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3528 E = 1 + bf_mul_log2_radix(a->expn - 1, radix, TRUE, FALSE); - c0050ca4: 6a08 ld a0,16(a2) - c0050ca6: 4681 li a3,0 - c0050ca8: 4605 li a2,1 - c0050caa: 000b059b sext.w a1,s6 - c0050cae: 157d addi a0,a0,-1 - c0050cb0: e23ff0ef jal ra,c0050ad2 - c0050cb4: 00150913 addi s2,a0,1 - c0050cb8: b7b1 j c0050c04 + c0050e74: 6a08 ld a0,16(a2) + c0050e76: 4681 li a3,0 + c0050e78: 4605 li a2,1 + c0050e7a: 000b059b sext.w a1,s6 + c0050e7e: 157d addi a0,a0,-1 + c0050e80: e23ff0ef jal ra,c0050ca2 + c0050e84: 00150913 addi s2,a0,1 + c0050e88: b7b1 j c0050dd4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3553 ret |= bf_div(r, a, r, prec + extra_bits, - c0050cba: 8622 mv a2,s0 - c0050cbc: 85ce mv a1,s3 - c0050cbe: 8522 mv a0,s0 - c0050cc0: c66fe0ef jal ra,c004f126 - c0050cc4: bf4d j c0050c76 + c0050e8a: 8622 mv a2,s0 + c0050e8c: 85ce mv a1,s3 + c0050e8e: 8522 mv a0,s0 + c0050e90: c66fe0ef jal ra,c004f2f6 + c0050e94: bf4d j c0050e46 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3559 if ((ret & BF_ST_INEXACT) && - c0050cc6: 88c1 andi s1,s1,16 - c0050cc8: cc89 beqz s1,c0050ce2 + c0050e96: 88c1 andi s1,s1,16 + c0050e98: cc89 beqz s1,c0050eb2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3560 (discriminator 1) !bf_can_round(r, r->expn, rnd_mode, prec)) { - c0050cca: 6602 ld a2,0(sp) - c0050ccc: 680c ld a1,16(s0) - c0050cce: 86ee mv a3,s11 - c0050cd0: 8522 mv a0,s0 - c0050cd2: 96dfc0ef jal ra,c004d63e + c0050e9a: 6602 ld a2,0(sp) + c0050e9c: 680c ld a1,16(s0) + c0050e9e: 86ee mv a3,s11 + c0050ea0: 8522 mv a0,s0 + c0050ea2: 96dfc0ef jal ra,c004d80e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3559 (discriminator 1) if ((ret & BF_ST_INEXACT) && - c0050cd6: e511 bnez a0,c0050ce2 + c0050ea6: e511 bnez a0,c0050eb2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3562 ziv_extra_bits = ziv_extra_bits + (ziv_extra_bits / 2); - c0050cd8: 4789 li a5,2 - c0050cda: 02fbc7b3 div a5,s7,a5 - c0050cde: 9bbe add s7,s7,a5 + c0050ea8: 4789 li a5,2 + c0050eaa: 02fbc7b3 div a5,s7,a5 + c0050eae: 9bbe add s7,s7,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3544 prec = prec0 + ziv_extra_bits; - c0050ce0: b795 j c0050c44 + c0050eb0: b795 j c0050e14 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3565 ret = bf_rint(r, rnd_mode); - c0050ce2: 75c2 ld a1,48(sp) - c0050ce4: 8522 mv a0,s0 - c0050ce6: a6dfe0ef jal ra,c004f752 + c0050eb2: 75c2 ld a1,48(sp) + c0050eb4: 8522 mv a0,s0 + c0050eb6: a6dfe0ef jal ra,c004f922 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3566 if (ret & BF_ST_MEM_ERROR) - c0050cea: 02057493 andi s1,a0,32 - c0050cee: f8c9 bnez s1,c0050c80 + c0050eba: 02057493 andi s1,a0,32 + c0050ebe: f8c9 bnez s1,c0050e50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3571 if (is_fixed_exponent) - c0050cf0: 67a2 ld a5,8(sp) - c0050cf2: e3b9 bnez a5,c0050d38 + c0050ec0: 67a2 ld a5,8(sp) + c0050ec2: e3b9 bnez a5,c0050f08 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050cf4: 601c ld a5,0(s0) + c0050ec4: 601c ld a5,0(s0) bf_convert_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3576 ret = bf_pow_ui_ui(B, radix, P, BF_PREC_INF, BF_RNDZ); - c0050cf6: 4705 li a4,1 - c0050cf8: 002cd693 srli a3,s9,0x2 + c0050ec6: 4705 li a4,1 + c0050ec8: 002cd693 srli a3,s9,0x2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050cfc: e4be sd a5,72(sp) + c0050ecc: e4be sd a5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050cfe: 57fd li a5,-1 - c0050d00: 17fe slli a5,a5,0x3f + c0050ece: 57fd li a5,-1 + c0050ed0: 17fe slli a5,a5,0x3f bf_convert_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3576 ret = bf_pow_ui_ui(B, radix, P, BF_PREC_INF, BF_RNDZ); - c0050d02: 8652 mv a2,s4 - c0050d04: 85da mv a1,s6 - c0050d06: 00a8 addi a0,sp,72 + c0050ed2: 8652 mv a2,s4 + c0050ed4: 85da mv a1,s6 + c0050ed6: 00a8 addi a0,sp,72 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050d08: c882 sw zero,80(sp) + c0050ed8: c882 sw zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050d0a: ecbe sd a5,88(sp) + c0050eda: ecbe sd a5,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0050d0c: f082 sd zero,96(sp) + c0050edc: f082 sd zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050d0e: f482 sd zero,104(sp) + c0050ede: f482 sd zero,104(sp) bf_convert_to_radix(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3576 ret = bf_pow_ui_ui(B, radix, P, BF_PREC_INF, BF_RNDZ); - c0050d10: debfd0ef jal ra,c004eafa - c0050d14: 8baa mv s7,a0 + c0050ee0: debfd0ef jal ra,c004ecca + c0050ee4: 8baa mv s7,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3577 if (ret) { - c0050d16: c511 beqz a0,c0050d22 + c0050ee6: c511 beqz a0,c0050ef2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3578 bf_delete(B); - c0050d18: 00a8 addi a0,sp,72 - c0050d1a: f73fb0ef jal ra,c004cc8c + c0050ee8: 00a8 addi a0,sp,72 + c0050eea: f73fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3576 ret = bf_pow_ui_ui(B, radix, P, BF_PREC_INF, BF_RNDZ); - c0050d1e: 84de mv s1,s7 + c0050eee: 84de mv s1,s7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3579 return ret; - c0050d20: b795 j c0050c84 + c0050ef0: b795 j c0050e54 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3581 res = bf_cmpu(r, B); - c0050d22: 00ac addi a1,sp,72 - c0050d24: 8522 mv a0,s0 - c0050d26: c27fc0ef jal ra,c004d94c - c0050d2a: 8baa mv s7,a0 + c0050ef2: 00ac addi a1,sp,72 + c0050ef4: 8522 mv a0,s0 + c0050ef6: c27fc0ef jal ra,c004db1c + c0050efa: 8baa mv s7,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3582 bf_delete(B); - c0050d2c: 00a8 addi a0,sp,72 - c0050d2e: f5ffb0ef jal ra,c004cc8c + c0050efc: 00a8 addi a0,sp,72 + c0050efe: f5ffb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3583 if (res < 0) - c0050d32: 197d addi s2,s2,-1 - c0050d34: ec0bdde3 bgez s7,c0050c0e + c0050f02: 197d addi s2,s2,-1 + c0050f04: ec0bdde3 bgez s7,c0050dde /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3588 *pE = E; - c0050d38: 7782 ld a5,32(sp) - c0050d3a: 00fab023 sd a5,0(s5) + c0050f08: 7782 ld a5,32(sp) + c0050f0a: 00fab023 sd a5,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3589 return 0; - c0050d3e: b799 j c0050c84 + c0050f0e: b799 j c0050e54 -00000000c0050d40 : +00000000c0050f10 : bf_ftoa(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4018 { - c0050d40: 7129 addi sp,sp,-320 - c0050d42: fa22 sd s0,304(sp) - c0050d44: f626 sd s1,296(sp) - c0050d46: f24a sd s2,288(sp) - c0050d48: ea52 sd s4,272(sp) - c0050d4a: e656 sd s5,264(sp) - c0050d4c: fe06 sd ra,312(sp) - c0050d4e: ee4e sd s3,280(sp) - c0050d50: e25a sd s6,256(sp) - c0050d52: fdde sd s7,248(sp) - c0050d54: f9e2 sd s8,240(sp) - c0050d56: f5e6 sd s9,232(sp) - c0050d58: f1ea sd s10,224(sp) - c0050d5a: edee sd s11,216(sp) + c0050f10: 7129 addi sp,sp,-320 + c0050f12: fa22 sd s0,304(sp) + c0050f14: f626 sd s1,296(sp) + c0050f16: f24a sd s2,288(sp) + c0050f18: ea52 sd s4,272(sp) + c0050f1a: e656 sd s5,264(sp) + c0050f1c: fe06 sd ra,312(sp) + c0050f1e: ee4e sd s3,280(sp) + c0050f20: e25a sd s6,256(sp) + c0050f22: fdde sd s7,248(sp) + c0050f24: f9e2 sd s8,240(sp) + c0050f26: f5e6 sd s9,232(sp) + c0050f28: f1ea sd s10,224(sp) + c0050f2a: edee sd s11,216(sp) bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3725 bf_context_t *ctx = a2->ctx; - c0050d5c: 0005bc03 ld s8,0(a1) + c0050f2c: 0005bc03 ld s8,0(a1) bf_ftoa(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4018 { - c0050d60: 842e mv s0,a1 - c0050d62: 8aaa mv s5,a0 + c0050f30: 842e mv s0,a1 + c0050f32: 8aaa mv s5,a0 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3731 dbuf_init2(s, ctx, bf_dbuf_realloc); - c0050d64: 85e2 mv a1,s8 + c0050f34: 85e2 mv a1,s8 bf_ftoa(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4018 { - c0050d66: 84b2 mv s1,a2 + c0050f36: 84b2 mv s1,a2 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3731 dbuf_init2(s, ctx, bf_dbuf_realloc); - c0050d68: 1108 addi a0,sp,160 - c0050d6a: ffffc617 auipc a2,0xffffc - c0050d6e: 13060613 addi a2,a2,304 # c004ce9a + c0050f38: 1108 addi a0,sp,160 + c0050f3a: ffffc617 auipc a2,0xffffc + c0050f3e: 13060613 addi a2,a2,304 # c004d06a bf_ftoa(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4018 { - c0050d72: 893a mv s2,a4 - c0050d74: 8a36 mv s4,a3 + c0050f42: 893a mv s2,a4 + c0050f44: 8a36 mv s4,a3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3731 dbuf_init2(s, ctx, bf_dbuf_realloc); - c0050d76: e5bf60ef jal ra,c0047bd0 + c0050f46: e5bf60ef jal ra,c0047da0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3732 if (a2->expn == BF_EXP_NAN) { - c0050d7a: 6818 ld a4,16(s0) - c0050d7c: 57fd li a5,-1 - c0050d7e: 8385 srli a5,a5,0x1 + c0050f4a: 6818 ld a4,16(s0) + c0050f4c: 57fd li a5,-1 + c0050f4e: 8385 srli a5,a5,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3733 dbuf_putstr(s, "NaN"); - c0050d80: 0000d597 auipc a1,0xd - c0050d84: 49858593 addi a1,a1,1176 # c005e218 + c0050f50: 0000d597 auipc a1,0xd + c0050f54: 52858593 addi a1,a1,1320 # c005e478 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3732 if (a2->expn == BF_EXP_NAN) { - c0050d88: 02f70d63 beq a4,a5,c0050dc2 + c0050f58: 02f70d63 beq a4,a5,c0050f92 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3735 if (a2->sign) - c0050d8c: 441c lw a5,8(s0) - c0050d8e: c791 beqz a5,c0050d9a + c0050f5c: 441c lw a5,8(s0) + c0050f5e: c791 beqz a5,c0050f6a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3736 dbuf_putc(s, '-'); - c0050d90: 02d00593 li a1,45 - c0050d94: 1108 addi a0,sp,160 - c0050d96: fadf60ef jal ra,c0047d42 + c0050f60: 02d00593 li a1,45 + c0050f64: 1108 addi a0,sp,160 + c0050f66: fadf60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3737 if (a2->expn == BF_EXP_INF) { - c0050d9a: 01043b03 ld s6,16(s0) - c0050d9e: 57f5 li a5,-3 - c0050da0: 8385 srli a5,a5,0x1 - c0050da2: 06fb1163 bne s6,a5,c0050e04 + c0050f6a: 01043b03 ld s6,16(s0) + c0050f6e: 57f5 li a5,-3 + c0050f70: 8385 srli a5,a5,0x1 + c0050f72: 06fb1163 bne s6,a5,c0050fd4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3738 if (flags & BF_FTOA_JS_QUIRKS) - c0050da6: 01695913 srli s2,s2,0x16 - c0050daa: 00197913 andi s2,s2,1 + c0050f76: 01695913 srli s2,s2,0x16 + c0050f7a: 00197913 andi s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3741 dbuf_putstr(s, "Inf"); - c0050dae: 00021597 auipc a1,0x21 - c0050db2: 5aa58593 addi a1,a1,1450 # c0072358 + c0050f7e: 00021597 auipc a1,0x21 + c0050f82: 63a58593 addi a1,a1,1594 # c00725b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3738 if (flags & BF_FTOA_JS_QUIRKS) - c0050db6: 00090663 beqz s2,c0050dc2 + c0050f86: 00090663 beqz s2,c0050f92 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3739 dbuf_putstr(s, "Infinity"); - c0050dba: 0000d597 auipc a1,0xd - c0050dbe: 3a658593 addi a1,a1,934 # c005e160 - c0050dc2: 1108 addi a0,sp,160 - c0050dc4: f97f60ef jal ra,c0047d5a + c0050f8a: 0000d597 auipc a1,0xd + c0050f8e: 43658593 addi a1,a1,1078 # c005e3c0 + c0050f92: 1108 addi a0,sp,160 + c0050f94: f97f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4003 dbuf_putc(s, '\0'); - c0050dc8: 4581 li a1,0 - c0050dca: 1108 addi a0,sp,160 - c0050dcc: f77f60ef jal ra,c0047d42 + c0050f98: 4581 li a1,0 + c0050f9a: 1108 addi a0,sp,160 + c0050f9c: f77f60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4004 if (dbuf_error(s)) - c0050dd0: 57ea lw a5,184(sp) - c0050dd2: 36079e63 bnez a5,c005114e + c0050fa0: 57ea lw a5,184(sp) + c0050fa2: 36079e63 bnez a5,c005131e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4006 if (plen) - c0050dd6: 000a8663 beqz s5,c0050de2 + c0050fa6: 000a8663 beqz s5,c0050fb2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4007 *plen = s->size - 1; - c0050dda: 77aa ld a5,168(sp) - c0050ddc: 17fd addi a5,a5,-1 - c0050dde: 00fab023 sd a5,0(s5) + c0050faa: 77aa ld a5,168(sp) + c0050fac: 17fd addi a5,a5,-1 + c0050fae: 00fab023 sd a5,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4008 return (char *)s->buf; - c0050de2: 7a8a ld s5,160(sp) + c0050fb2: 7a8a ld s5,160(sp) bf_ftoa(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4020 } - c0050de4: 70f2 ld ra,312(sp) - c0050de6: 7452 ld s0,304(sp) - c0050de8: 74b2 ld s1,296(sp) - c0050dea: 7912 ld s2,288(sp) - c0050dec: 69f2 ld s3,280(sp) - c0050dee: 6a52 ld s4,272(sp) - c0050df0: 6b12 ld s6,256(sp) - c0050df2: 7bee ld s7,248(sp) - c0050df4: 7c4e ld s8,240(sp) - c0050df6: 7cae ld s9,232(sp) - c0050df8: 7d0e ld s10,224(sp) - c0050dfa: 6dee ld s11,216(sp) - c0050dfc: 8556 mv a0,s5 - c0050dfe: 6ab2 ld s5,264(sp) - c0050e00: 6131 addi sp,sp,320 - c0050e02: 8082 ret + c0050fb4: 70f2 ld ra,312(sp) + c0050fb6: 7452 ld s0,304(sp) + c0050fb8: 74b2 ld s1,296(sp) + c0050fba: 7912 ld s2,288(sp) + c0050fbc: 69f2 ld s3,280(sp) + c0050fbe: 6a52 ld s4,272(sp) + c0050fc0: 6b12 ld s6,256(sp) + c0050fc2: 7bee ld s7,248(sp) + c0050fc4: 7c4e ld s8,240(sp) + c0050fc6: 7cae ld s9,232(sp) + c0050fc8: 7d0e ld s10,224(sp) + c0050fca: 6dee ld s11,216(sp) + c0050fcc: 8556 mv a0,s5 + c0050fce: 6ab2 ld s5,264(sp) + c0050fd0: 6131 addi sp,sp,320 + c0050fd2: 8082 ret bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3747 if ((radix & (radix - 1)) != 0) - c0050e04: fff4879b addiw a5,s1,-1 - c0050e08: 8fe5 and a5,a5,s1 - c0050e0a: 2781 sext.w a5,a5 + c0050fd4: fff4879b addiw a5,s1,-1 + c0050fd8: 8fe5 and a5,a5,s1 + c0050fda: 2781 sext.w a5,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3748 radix_bits = 0; - c0050e0c: 4981 li s3,0 + c0050fdc: 4981 li s3,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3747 if ((radix & (radix - 1)) != 0) - c0050e0e: e789 bnez a5,c0050e18 + c0050fde: e789 bnez a5,c0050fe8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3750 radix_bits = ceil_log2(radix); - c0050e10: 8526 mv a0,s1 - c0050e12: 88cfc0ef jal ra,c004ce9e - c0050e16: 89aa mv s3,a0 + c0050fe0: 8526 mv a0,s1 + c0050fe2: 88cfc0ef jal ra,c004d06e + c0050fe6: 89aa mv s3,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050e18: 57fd li a5,-1 + c0050fe8: 57fd li a5,-1 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3752 fmt = flags & BF_FTOA_FORMAT_MASK; - c0050e1a: 00030bb7 lui s7,0x30 + c0050fea: 00030bb7 lui s7,0x30 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050e1e: 03f79c93 slli s9,a5,0x3f + c0050fee: 03f79c93 slli s9,a5,0x3f bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3752 fmt = flags & BF_FTOA_FORMAT_MASK; - c0050e22: 01797bb3 and s7,s2,s7 + c0050ff2: 01797bb3 and s7,s2,s7 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0050e26: f462 sd s8,40(sp) + c0050ff6: f462 sd s8,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0050e28: d802 sw zero,48(sp) + c0050ff8: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0050e2a: fc66 sd s9,56(sp) + c0050ffa: fc66 sd s9,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0050e2c: e082 sd zero,64(sp) + c0050ffc: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0050e2e: e482 sd zero,72(sp) + c0050ffe: e482 sd zero,72(sp) bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3754 if (fmt == BF_FTOA_FORMAT_FRAC) { - c0050e30: 6741 lui a4,0x10 - c0050e32: 18eb9c63 bne s7,a4,c0050fca + c0051000: 6741 lui a4,0x10 + c0051002: 18eb9c63 bne s7,a4,c005119a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3755 if (is_dec || radix_bits != 0) { - c0050e36: 10098063 beqz s3,c0050f36 + c0051006: 10098063 beqz s3,c0051106 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3756 if (bf_set(a1, a2)) - c0050e3a: 85a2 mv a1,s0 - c0050e3c: 1028 addi a0,sp,40 - c0050e3e: e82fc0ef jal ra,c004d4c0 - c0050e42: 30051363 bnez a0,c0051148 + c005100a: 85a2 mv a1,s0 + c005100c: 1028 addi a0,sp,40 + c005100e: e82fc0ef jal ra,c004d690 + c0051012: 30051363 bnez a0,c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3766 if (bf_round(a1, prec * radix_bits, (flags & BF_RND_MASK) | BF_FLAG_RADPNT_PREC) & BF_ST_MEM_ERROR) - c0050e46: 034985b3 mul a1,s3,s4 - c0050e4a: 00797613 andi a2,s2,7 - c0050e4e: 01066613 ori a2,a2,16 - c0050e52: 1028 addi a0,sp,40 - c0050e54: 93dfc0ef jal ra,c004d790 - c0050e58: 02057513 andi a0,a0,32 - c0050e5c: 2e051663 bnez a0,c0051148 + c0051016: 034985b3 mul a1,s3,s4 + c005101a: 00797613 andi a2,s2,7 + c005101e: 01066613 ori a2,a2,16 + c0051022: 1028 addi a0,sp,40 + c0051024: 93dfc0ef jal ra,c004d960 + c0051028: 02057513 andi a0,a0,32 + c005102c: 2e051663 bnez a0,c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3768 n = ceil_div(a1->expn, radix_bits); - c0050e60: 7562 ld a0,56(sp) + c0051030: 7562 ld a0,56(sp) ceil_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:133 if (a >= 0) - c0050e62: 00054463 bltz a0,c0050e6a + c0051032: 00054463 bltz a0,c005103a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:134 return (a + b - 1) / b; - c0050e66: 157d addi a0,a0,-1 - c0050e68: 954e add a0,a0,s3 + c0051036: 157d addi a0,a0,-1 + c0051038: 954e add a0,a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:136 return a / b; - c0050e6a: 033549b3 div s3,a0,s3 + c005103a: 033549b3 div s3,a0,s3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3770 if (flags & BF_FTOA_ADD_PREFIX) { - c0050e6e: 01595913 srli s2,s2,0x15 - c0050e72: 00197913 andi s2,s2,1 + c005103e: 01595913 srli s2,s2,0x15 + c0051042: 00197913 andi s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3768 n = ceil_div(a1->expn, radix_bits); - c0050e76: ec4e sd s3,24(sp) + c0051046: ec4e sd s3,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3770 if (flags & BF_FTOA_ADD_PREFIX) { - c0050e78: 02090a63 beqz s2,c0050eac + c0051048: 02090a63 beqz s2,c005107c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3771 if (radix == 16) - c0050e7c: 47c1 li a5,16 + c005104c: 47c1 li a5,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3772 dbuf_putstr(s, "0x"); - c0050e7e: 00021597 auipc a1,0x21 - c0050e82: 51a58593 addi a1,a1,1306 # c0072398 + c005104e: 00021597 auipc a1,0x21 + c0051052: 5aa58593 addi a1,a1,1450 # c00725f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3771 if (radix == 16) - c0050e86: 02f48063 beq s1,a5,c0050ea6 + c0051056: 02f48063 beq s1,a5,c0051076 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3773 else if (radix == 8) - c0050e8a: 47a1 li a5,8 + c005105a: 47a1 li a5,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3774 dbuf_putstr(s, "0o"); - c0050e8c: 00021597 auipc a1,0x21 - c0050e90: 51458593 addi a1,a1,1300 # c00723a0 + c005105c: 00021597 auipc a1,0x21 + c0051060: 5a458593 addi a1,a1,1444 # c0072600 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3773 else if (radix == 8) - c0050e94: 00f48963 beq s1,a5,c0050ea6 + c0051064: 00f48963 beq s1,a5,c0051076 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3775 else if (radix == 2) - c0050e98: 4789 li a5,2 - c0050e9a: 00f49963 bne s1,a5,c0050eac + c0051068: 4789 li a5,2 + c005106a: 00f49963 bne s1,a5,c005107c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3776 dbuf_putstr(s, "0b"); - c0050e9e: 00021597 auipc a1,0x21 - c0050ea2: 50a58593 addi a1,a1,1290 # c00723a8 - c0050ea6: 1108 addi a0,sp,160 - c0050ea8: eb3f60ef jal ra,c0047d5a + c005106e: 00021597 auipc a1,0x21 + c0051072: 59a58593 addi a1,a1,1434 # c0072608 + c0051076: 1108 addi a0,sp,160 + c0051078: eb3f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3778 if (a1->expn == BF_EXP_ZERO) { - c0050eac: 7762 ld a4,56(sp) - c0050eae: 57fd li a5,-1 - c0050eb0: 17fe slli a5,a5,0x3f - c0050eb2: 02f71f63 bne a4,a5,c0050ef0 + c005107c: 7762 ld a4,56(sp) + c005107e: 57fd li a5,-1 + c0051080: 17fe slli a5,a5,0x3f + c0051082: 02f71f63 bne a4,a5,c00510c0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3779 dbuf_putstr(s, "0"); - c0050eb6: 00021597 auipc a1,0x21 - c0050eba: 4fa58593 addi a1,a1,1274 # c00723b0 - c0050ebe: 1108 addi a0,sp,160 - c0050ec0: e9bf60ef jal ra,c0047d5a + c0051086: 00021597 auipc a1,0x21 + c005108a: 58a58593 addi a1,a1,1418 # c0072610 + c005108e: 1108 addi a0,sp,160 + c0051090: e9bf60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3780 if (prec > 0) { - c0050ec4: 020a0263 beqz s4,c0050ee8 + c0051094: 020a0263 beqz s4,c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3781 dbuf_putstr(s, "."); - c0050ec8: 0000d597 auipc a1,0xd - c0050ecc: 30858593 addi a1,a1,776 # c005e1d0 - c0050ed0: 1108 addi a0,sp,160 - c0050ed2: e89f60ef jal ra,c0047d5a + c0051098: 0000d597 auipc a1,0xd + c005109c: 39858593 addi a1,a1,920 # c005e430 + c00510a0: 1108 addi a0,sp,160 + c00510a2: e89f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3782 for(i = 0; i < prec; i++) { - c0050ed6: 4401 li s0,0 + c00510a6: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3783 dbuf_putc(s, '0'); - c0050ed8: 03000593 li a1,48 - c0050edc: 1108 addi a0,sp,160 + c00510a8: 03000593 li a1,48 + c00510ac: 1108 addi a0,sp,160 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3782 for(i = 0; i < prec; i++) { - c0050ede: 0405 addi s0,s0,1 + c00510ae: 0405 addi s0,s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3783 dbuf_putc(s, '0'); - c0050ee0: e63f60ef jal ra,c0047d42 + c00510b0: e63f60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3782 for(i = 0; i < prec; i++) { - c0050ee4: ff441ae3 bne s0,s4,c0050ed8 + c00510b4: ff441ae3 bne s0,s4,c00510a8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4000 bf_delete(a1); - c0050ee8: 1028 addi a0,sp,40 - c0050eea: da3fb0ef jal ra,c004cc8c - c0050eee: bde9 j c0050dc8 + c00510b8: 1028 addi a0,sp,40 + c00510ba: da3fb0ef jal ra,c004ce5c + c00510be: bde9 j c0050f98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3787 n_digits = prec + n; - c0050ef0: 6762 ld a4,24(sp) - c0050ef2: 9a3a add s4,s4,a4 + c00510c0: 6762 ld a4,24(sp) + c00510c2: 9a3a add s4,s4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3798 output_digits(s, a1, radix, n_digits, n, is_dec); - c0050ef4: 86d2 mv a3,s4 + c00510c4: 86d2 mv a3,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3788 if (n <= 0) { - c0050ef6: 02e04363 bgtz a4,c0050f1c + c00510c6: 02e04363 bgtz a4,c00510ec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3790 dbuf_putstr(s, "0."); - c0050efa: 00021597 auipc a1,0x21 - c0050efe: 4be58593 addi a1,a1,1214 # c00723b8 - c0050f02: 1108 addi a0,sp,160 - c0050f04: e57f60ef jal ra,c0047d5a + c00510ca: 00021597 auipc a1,0x21 + c00510ce: 54e58593 addi a1,a1,1358 # c0072618 + c00510d2: 1108 addi a0,sp,160 + c00510d4: e57f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3791 for(i = 0; i < -n; i++) { - c0050f08: 4401 li s0,0 - c0050f0a: 67e2 ld a5,24(sp) - c0050f0c: 40f007b3 neg a5,a5 - c0050f10: 00f44c63 blt s0,a5,c0050f28 + c00510d8: 4401 li s0,0 + c00510da: 67e2 ld a5,24(sp) + c00510dc: 40f007b3 neg a5,a5 + c00510e0: 00f44c63 blt s0,a5,c00510f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3795 output_digits(s, a1, radix, n_digits, n_digits, is_dec); - c0050f14: 8752 mv a4,s4 + c00510e4: 8752 mv a4,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3794 if (n_digits > 0) { - c0050f16: fd4059e3 blez s4,c0050ee8 + c00510e6: fd4059e3 blez s4,c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3987 output_digits(s, a1, radix, n_digits, n_digits, is_dec); - c0050f1a: 86ba mv a3,a4 + c00510ea: 86ba mv a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3995 output_digits(s, a1, radix, n_digits, n, is_dec); - c0050f1c: 8626 mv a2,s1 - c0050f1e: 102c addi a1,sp,40 - c0050f20: 1108 addi a0,sp,160 - c0050f22: bb5fe0ef jal ra,c004fad6 - c0050f26: b7c9 j c0050ee8 + c00510ec: 8626 mv a2,s1 + c00510ee: 102c addi a1,sp,40 + c00510f0: 1108 addi a0,sp,160 + c00510f2: bb5fe0ef jal ra,c004fca6 + c00510f6: b7c9 j c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3792 dbuf_putc(s, '0'); - c0050f28: 03000593 li a1,48 - c0050f2c: 1108 addi a0,sp,160 - c0050f2e: e15f60ef jal ra,c0047d42 + c00510f8: 03000593 li a1,48 + c00510fc: 1108 addi a0,sp,160 + c00510fe: e15f60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3791 for(i = 0; i < -n; i++) { - c0050f32: 0405 addi s0,s0,1 - c0050f34: bfd9 j c0050f0a + c0051102: 0405 addi s0,s0,1 + c0051104: bfd9 j c00510da /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3806 a->tab = a2->tab; - c0050f36: 701c ld a5,32(s0) + c0051106: 701c ld a5,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3808 a->expn = a2->expn; - c0050f38: e55a sd s6,136(sp) + c0051108: e55a sd s6,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3809 a->sign = 0; - c0050f3a: c102 sw zero,128(sp) + c005110a: c102 sw zero,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3806 a->tab = a2->tab; - c0050f3c: ed3e sd a5,152(sp) + c005110c: ed3e sd a5,152(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3807 a->len = a2->len; - c0050f3e: 6c1c ld a5,24(s0) + c005110e: 6c1c ld a5,24(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3812 n = 1 + bf_mul_log2_radix(bf_max(a->expn, 0), radix, TRUE, TRUE); - c0050f40: 0004859b sext.w a1,s1 - c0050f44: 855a mv a0,s6 + c0051110: 0004859b sext.w a1,s1 + c0051114: 855a mv a0,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3807 a->len = a2->len; - c0050f46: e93e sd a5,144(sp) + c0051116: e93e sd a5,144(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3812 n = 1 + bf_mul_log2_radix(bf_max(a->expn, 0), radix, TRUE, TRUE); - c0050f48: 000b5363 bgez s6,c0050f4e - c0050f4c: 4501 li a0,0 - c0050f4e: 4685 li a3,1 - c0050f50: 4605 li a2,1 - c0050f52: b81ff0ef jal ra,c0050ad2 - c0050f56: 0505 addi a0,a0,1 + c0051118: 000b5363 bgez s6,c005111e + c005111c: 4501 li a0,0 + c005111e: 4685 li a3,1 + c0051120: 4605 li a2,1 + c0051122: b81ff0ef jal ra,c0050ca2 + c0051126: 0505 addi a0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3813 n_digits = n + prec; - c0050f58: 9a2a add s4,s4,a0 + c0051128: 9a2a add s4,s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3812 n = 1 + bf_mul_log2_radix(bf_max(a->expn, 0), radix, TRUE, TRUE); - c0050f5a: ec2a sd a0,24(sp) + c005112a: ec2a sd a0,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3814 n1 = n; - c0050f5c: f02a sd a0,32(sp) + c005112c: f02a sd a0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3815 if (bf_convert_to_radix(a1, &n1, a, radix, n_digits, - c0050f5e: 4805 li a6,1 - c0050f60: 00797793 andi a5,s2,7 - c0050f64: 8752 mv a4,s4 - c0050f66: 86a6 mv a3,s1 - c0050f68: 18b0 addi a2,sp,120 - c0050f6a: 100c addi a1,sp,32 - c0050f6c: 1028 addi a0,sp,40 - c0050f6e: c35ff0ef jal ra,c0050ba2 - c0050f72: 1c051b63 bnez a0,c0051148 + c005112e: 4805 li a6,1 + c0051130: 00797793 andi a5,s2,7 + c0051134: 8752 mv a4,s4 + c0051136: 86a6 mv a3,s1 + c0051138: 18b0 addi a2,sp,120 + c005113a: 100c addi a1,sp,32 + c005113c: 1028 addi a0,sp,40 + c005113e: c35ff0ef jal ra,c0050d72 + c0051142: 1c051b63 bnez a0,c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3819 output_digits(s, a1, radix, n_digits, n, is_dec); - c0050f76: 6762 ld a4,24(sp) - c0050f78: 86d2 mv a3,s4 - c0050f7a: 8626 mv a2,s1 - c0050f7c: 102c addi a1,sp,40 - c0050f7e: 1108 addi a0,sp,160 + c0051146: 6762 ld a4,24(sp) + c0051148: 86d2 mv a3,s4 + c005114a: 8626 mv a2,s1 + c005114c: 102c addi a1,sp,40 + c005114e: 1108 addi a0,sp,160 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3818 start = s->size; - c0050f80: 742a ld s0,168(sp) + c0051150: 742a ld s0,168(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3819 output_digits(s, a1, radix, n_digits, n, is_dec); - c0050f82: b55fe0ef jal ra,c004fad6 + c0051152: b55fe0ef jal ra,c004fca6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3822 while ((pos + 1) < s->size && s->buf[pos] == '0' && - c0050f86: 758a ld a1,160(sp) - c0050f88: 762a ld a2,168(sp) + c0051156: 758a ld a1,160(sp) + c0051158: 762a ld a2,168(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3818 start = s->size; - c0050f8a: 8722 mv a4,s0 - c0050f8c: 00858533 add a0,a1,s0 - c0050f90: 87aa mv a5,a0 + c005115a: 8722 mv a4,s0 + c005115c: 00858533 add a0,a1,s0 + c0051160: 87aa mv a5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3822 while ((pos + 1) < s->size && s->buf[pos] == '0' && - c0050f92: 03000893 li a7,48 - c0050f96: 02e00693 li a3,46 - c0050f9a: 84ba mv s1,a4 - c0050f9c: 0705 addi a4,a4,1 - c0050f9e: 00c77b63 bgeu a4,a2,c0050fb4 - c0050fa2: 0007c803 lbu a6,0(a5) - c0050fa6: 01181763 bne a6,a7,c0050fb4 - c0050faa: 0017c803 lbu a6,1(a5) - c0050fae: 0785 addi a5,a5,1 - c0050fb0: fed815e3 bne a6,a3,c0050f9a + c0051162: 03000893 li a7,48 + c0051166: 02e00693 li a3,46 + c005116a: 84ba mv s1,a4 + c005116c: 0705 addi a4,a4,1 + c005116e: 00c77b63 bgeu a4,a2,c0051184 + c0051172: 0007c803 lbu a6,0(a5) + c0051176: 01181763 bne a6,a7,c0051184 + c005117a: 0017c803 lbu a6,1(a5) + c005117e: 0785 addi a5,a5,1 + c0051180: fed815e3 bne a6,a3,c005116a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3825 if (pos > start) { - c0050fb4: f2947ae3 bgeu s0,s1,c0050ee8 + c0051184: f2947ae3 bgeu s0,s1,c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3826 memmove(s->buf + start, s->buf + pos, s->size - pos); - c0050fb8: 8e05 sub a2,a2,s1 - c0050fba: 95a6 add a1,a1,s1 - c0050fbc: 073050ef jal ra,c005682e + c0051188: 8e05 sub a2,a2,s1 + c005118a: 95a6 add a1,a1,s1 + c005118c: 073050ef jal ra,c00569fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3827 s->size -= (pos - start); - c0050fc0: 77aa ld a5,168(sp) - c0050fc2: 943e add s0,s0,a5 - c0050fc4: 8c05 sub s0,s0,s1 - c0050fc6: f522 sd s0,168(sp) - c0050fc8: b705 j c0050ee8 + c0051190: 77aa ld a5,168(sp) + c0051192: 943e add s0,s0,a5 + c0051194: 8c05 sub s0,s0,s1 + c0051196: f522 sd s0,168(sp) + c0051198: b705 j c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3853 if (radix_bits != 0) { - c0050fca: 0c098963 beqz s3,c005109c + c005119a: 0c098963 beqz s3,c005126c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3854 if (bf_set(a1, a2)) - c0050fce: 85a2 mv a1,s0 - c0050fd0: 1028 addi a0,sp,40 - c0050fd2: ceefc0ef jal ra,c004d4c0 - c0050fd6: 16051963 bnez a0,c0051148 + c005119e: 85a2 mv a1,s0 + c00511a0: 1028 addi a0,sp,40 + c00511a2: ceefc0ef jal ra,c004d690 + c00511a6: 16051963 bnez a0,c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3862 smod(-a1->expn, radix_bits); - c0050fda: 77e2 ld a5,56(sp) - c0050fdc: 40f007b3 neg a5,a5 + c00511aa: 77e2 ld a5,56(sp) + c00511ac: 40f007b3 neg a5,a5 smod(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:152 a = a % (slimb_t)b; - c0050fe0: 0337e7b3 rem a5,a5,s3 + c00511b0: 0337e7b3 rem a5,a5,s3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3856 if (fmt == BF_FTOA_FORMAT_FIXED) { - c0050fe4: 060b9063 bnez s7,c0051044 + c00511b4: 060b9063 bnez s7,c0051214 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3861 prec_bits = prec * radix_bits - - c0050fe8: 034985b3 mul a1,s3,s4 + c00511b8: 034985b3 mul a1,s3,s4 smod(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:153 if (a < 0) - c0050fec: 0007d363 bgez a5,c0050ff2 + c00511bc: 0007d363 bgez a5,c00511c2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:154 a += b; - c0050ff0: 97ce add a5,a5,s3 + c00511c0: 97ce add a5,a5,s3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3863 if (bf_round(a1, prec_bits, - c0050ff2: 00797613 andi a2,s2,7 - c0050ff6: 8d9d sub a1,a1,a5 - c0050ff8: 1028 addi a0,sp,40 - c0050ffa: f96fc0ef jal ra,c004d790 - c0050ffe: 02057513 andi a0,a0,32 - c0051002: 14051363 bnez a0,c0051148 + c00511c2: 00797613 andi a2,s2,7 + c00511c6: 8d9d sub a1,a1,a5 + c00511c8: 1028 addi a0,sp,40 + c00511ca: f96fc0ef jal ra,c004d960 + c00511ce: 02057513 andi a0,a0,32 + c00511d2: 14051363 bnez a0,c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3858 n_digits = prec; - c0051006: 8452 mv s0,s4 + c00511d6: 8452 mv s0,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3859 n_max = n_digits; - c0051008: 8b52 mv s6,s4 + c00511d8: 8b52 mv s6,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3882 n = ceil_div(a1->expn, radix_bits); - c005100a: 77e2 ld a5,56(sp) + c00511da: 77e2 ld a5,56(sp) ceil_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:133 if (a >= 0) - c005100c: 0007c463 bltz a5,c0051014 + c00511dc: 0007c463 bltz a5,c00511e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:134 return (a + b - 1) / b; - c0051010: 17fd addi a5,a5,-1 - c0051012: 97ce add a5,a5,s3 + c00511e0: 17fd addi a5,a5,-1 + c00511e2: 97ce add a5,a5,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:136 return a / b; - c0051014: 0337c7b3 div a5,a5,s3 + c00511e4: 0337c7b3 div a5,a5,s3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3882 n = ceil_div(a1->expn, radix_bits); - c0051018: ec3e sd a5,24(sp) + c00511e8: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3946 if (a1->expn == BF_EXP_ZERO && - c005101a: 7762 ld a4,56(sp) - c005101c: 57fd li a5,-1 + c00511ea: 7762 ld a4,56(sp) + c00511ec: 57fd li a5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3948 !(flags & BF_FTOA_FORCE_EXP)) { - c005101e: 00100a37 lui s4,0x100 + c00511ee: 00100a37 lui s4,0x100 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3946 if (a1->expn == BF_EXP_ZERO && - c0051022: 17fe slli a5,a5,0x3f + c00511f2: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3948 !(flags & BF_FTOA_FORCE_EXP)) { - c0051024: 01497a33 and s4,s2,s4 + c00511f4: 01497a33 and s4,s2,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3946 if (a1->expn == BF_EXP_ZERO && - c0051028: 16f71463 bne a4,a5,c0051190 - c005102c: 160b8263 beqz s7,c0051190 + c00511f8: 16f71463 bne a4,a5,c0051360 + c00511fc: 160b8263 beqz s7,c0051360 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3947 fmt != BF_FTOA_FORMAT_FIXED && - c0051030: 160a1063 bnez s4,c0051190 + c0051200: 160a1063 bnez s4,c0051360 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3950 dbuf_putstr(s, "0"); - c0051034: 00021597 auipc a1,0x21 - c0051038: 37c58593 addi a1,a1,892 # c00723b0 - c005103c: 1108 addi a0,sp,160 - c005103e: d1df60ef jal ra,c0047d5a - c0051042: b55d j c0050ee8 + c0051204: 00021597 auipc a1,0x21 + c0051208: 40c58593 addi a1,a1,1036 # c0072610 + c005120c: 1108 addi a0,sp,160 + c005120e: d1df60ef jal ra,c0047f2a + c0051212: b55d j c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3871 pos = a1->len * LIMB_BITS + - c0051044: 6c86 ld s9,64(sp) - c0051046: 006c9613 slli a2,s9,0x6 + c0051214: 6c86 ld s9,64(sp) + c0051216: 006c9613 slli a2,s9,0x6 smod(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:153 if (a < 0) - c005104a: 0007d363 bgez a5,c0051050 + c005121a: 0007d363 bgez a5,c0051220 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:154 a += b; - c005104e: 97ce add a5,a5,s3 + c005121e: 97ce add a5,a5,s3 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3871 pos = a1->len * LIMB_BITS + - c0051050: 97b2 add a5,a5,a2 + c0051220: 97b2 add a5,a5,a2 ceil_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:133 if (a >= 0) - c0051052: 0407c063 bltz a5,c0051092 + c0051222: 0407c063 bltz a5,c0051262 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:134 return (a + b - 1) / b; - c0051056: fff98413 addi s0,s3,-1 - c005105a: 943e add s0,s0,a5 - c005105c: 03344433 div s0,s0,s3 - c0051060: 5b7d li s6,-1 + c0051226: fff98413 addi s0,s3,-1 + c005122a: 943e add s0,s0,a5 + c005122c: 03344433 div s0,s0,s3 + c0051230: 5b7d li s6,-1 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3877 (get_bits(a1->tab, a1->len, pos - n_digits * radix_bits) & digit_mask) == 0) { - c0051062: 6d26 ld s10,72(sp) - c0051064: 013b1b33 sll s6,s6,s3 - c0051068: fffb4b13 not s6,s6 + c0051232: 6d26 ld s10,72(sp) + c0051234: 013b1b33 sll s6,s6,s3 + c0051238: fffb4b13 not s6,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3876 while (n_digits > 1 && - c005106c: 4d85 li s11,1 - c005106e: 03340a33 mul s4,s0,s3 - c0051072: 41478a33 sub s4,a5,s4 - c0051076: 008ddb63 bge s11,s0,c005108c + c005123c: 4d85 li s11,1 + c005123e: 03340a33 mul s4,s0,s3 + c0051242: 41478a33 sub s4,a5,s4 + c0051246: 008ddb63 bge s11,s0,c005125c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3877 (get_bits(a1->tab, a1->len, pos - n_digits * radix_bits) & digit_mask) == 0) { - c005107a: 8652 mv a2,s4 - c005107c: 85e6 mv a1,s9 - c005107e: 856a mv a0,s10 - c0051080: c4dfb0ef jal ra,c004cccc - c0051084: 01657533 and a0,a0,s6 + c005124a: 8652 mv a2,s4 + c005124c: 85e6 mv a1,s9 + c005124e: 856a mv a0,s10 + c0051250: c4dfb0ef jal ra,c004ce9c + c0051254: 01657533 and a0,a0,s6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3876 while (n_digits > 1 && - c0051088: 9a4e add s4,s4,s3 - c005108a: c519 beqz a0,c0051098 + c0051258: 9a4e add s4,s4,s3 + c005125a: c519 beqz a0,c0051268 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3880 n_max = n_digits + 4; - c005108c: 00440b13 addi s6,s0,4 - c0051090: bfad j c005100a + c005125c: 00440b13 addi s6,s0,4 + c0051260: bfad j c00511da ceil_div(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:136 return a / b; - c0051092: 0337c433 div s0,a5,s3 - c0051096: b7e9 j c0051060 + c0051262: 0337c433 div s0,a5,s3 + c0051266: b7e9 j c0051230 bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3878 n_digits--; - c0051098: 147d addi s0,s0,-1 - c005109a: bff1 j c0051076 + c0051268: 147d addi s0,s0,-1 + c005126a: bff1 j c0051246 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3887 a->tab = a2->tab; - c005109c: 7018 ld a4,32(s0) + c005126c: 7018 ld a4,32(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3889 a->expn = a2->expn; - c005109e: f0da sd s6,96(sp) + c005126e: f0da sd s6,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3890 a->sign = 0; - c00510a0: cc82 sw zero,88(sp) + c0051270: cc82 sw zero,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3887 a->tab = a2->tab; - c00510a2: f8ba sd a4,112(sp) + c0051272: f8ba sd a4,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3888 a->len = a2->len; - c00510a4: 6c18 ld a4,24(s0) - c00510a6: 00797d13 andi s10,s2,7 - c00510aa: f4ba sd a4,104(sp) + c0051274: 6c18 ld a4,24(s0) + c0051276: 00797d13 andi s10,s2,7 + c005127a: f4ba sd a4,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3892 if (fmt == BF_FTOA_FORMAT_FIXED) { - c00510ac: 000b9f63 bnez s7,c00510ca + c005127c: 000b9f63 bnez s7,c005129a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3893 n_digits = prec; - c00510b0: 8452 mv s0,s4 + c0051280: 8452 mv s0,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3894 n_max = n_digits; - c00510b2: 8b52 mv s6,s4 + c0051282: 8b52 mv s6,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3939 if (bf_convert_to_radix(a1, &n, a, radix, n_digits, - c00510b4: 4801 li a6,0 - c00510b6: 87ea mv a5,s10 - c00510b8: 8722 mv a4,s0 - c00510ba: 86a6 mv a3,s1 - c00510bc: 0890 addi a2,sp,80 - c00510be: 082c addi a1,sp,24 - c00510c0: 1028 addi a0,sp,40 - c00510c2: ae1ff0ef jal ra,c0050ba2 - c00510c6: d931 beqz a0,c005101a + c0051284: 4801 li a6,0 + c0051286: 87ea mv a5,s10 + c0051288: 8722 mv a4,s0 + c005128a: 86a6 mv a3,s1 + c005128c: 0890 addi a2,sp,80 + c005128e: 082c addi a1,sp,24 + c0051290: 1028 addi a0,sp,40 + c0051292: ae1ff0ef jal ra,c0050d72 + c0051296: d931 beqz a0,c00511ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3941 fail1: - c00510c8: a041 j c0051148 + c0051298: a041 j c0051318 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3898 assert(prec != BF_PREC_INF); - c00510ca: 8389 srli a5,a5,0x2 - c00510cc: 00fa1c63 bne s4,a5,c00510e4 - c00510d0: 6585 lui a1,0x1 - c00510d2: 4601 li a2,0 - c00510d4: f3a58593 addi a1,a1,-198 # f3a <__clzdi2-0xbffff0c6> - c00510d8: 00021517 auipc a0,0x21 - c00510dc: 24050513 addi a0,a0,576 # c0072318 - c00510e0: 139020ef jal ra,c0053a18 <__assert> + c005129a: 8389 srli a5,a5,0x2 + c005129c: 00fa1c63 bne s4,a5,c00512b4 + c00512a0: 6585 lui a1,0x1 + c00512a2: 4601 li a2,0 + c00512a4: f3a58593 addi a1,a1,-198 # f3a <__clzdi2-0xbffff0c6> + c00512a8: 00021517 auipc a0,0x21 + c00512ac: 2d050513 addi a0,a0,720 # c0072578 + c00512b0: 139020ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3899 n_digits = 1 + bf_mul_log2_radix(prec, radix, TRUE, TRUE); - c00510e4: 4685 li a3,1 - c00510e6: 4605 li a2,1 - c00510e8: 85a6 mv a1,s1 - c00510ea: 8552 mv a0,s4 - c00510ec: 9e7ff0ef jal ra,c0050ad2 + c00512b4: 4685 li a3,1 + c00512b6: 4605 li a2,1 + c00512b8: 85a6 mv a1,s1 + c00512ba: 8552 mv a0,s4 + c00512bc: 9e7ff0ef jal ra,c0050ca2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3904 if (fmt == BF_FTOA_FORMAT_FREE_MIN) { - c00510f0: 000307b7 lui a5,0x30 + c00512c0: 000307b7 lui a5,0x30 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3899 n_digits = 1 + bf_mul_log2_radix(prec, radix, TRUE, TRUE); - c00510f4: 00150413 addi s0,a0,1 + c00512c4: 00150413 addi s0,a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3903 n_max = n_digits + 4; - c00510f8: 00550b13 addi s6,a0,5 + c00512c8: 00550b13 addi s6,a0,5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3904 if (fmt == BF_FTOA_FORMAT_FREE_MIN) { - c00510fc: fafb9ce3 bne s7,a5,c00510b4 + c00512cc: fafb9ce3 bne s7,a5,c0051284 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3766 if (bf_round(a1, prec * radix_bits, (flags & BF_RND_MASK) | BF_FLAG_RADPNT_PREC) & BF_ST_MEM_ERROR) - c0051100: 000d079b sext.w a5,s10 - c0051104: e03e sd a5,0(sp) + c00512d0: 000d079b sext.w a5,s10 + c00512d4: e03e sd a5,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3921 ret = bf_mul_pow_radix(b, a1, radix, n - n_digits, - c0051106: ff897793 andi a5,s2,-8 + c00512d6: ff897793 andi a5,s2,-8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005110a: e566 sd s9,136(sp) + c00512da: e566 sd s9,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005110c: fce2 sd s8,120(sp) + c00512dc: fce2 sd s8,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005110e: c102 sw zero,128(sp) + c00512de: c102 sw zero,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051110: e902 sd zero,144(sp) + c00512e0: e902 sd zero,144(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051112: ed02 sd zero,152(sp) + c00512e2: ed02 sd zero,152(sp) bf_ftoa_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3911 n_digits_min = 1; - c0051114: 4c85 li s9,1 + c00512e4: 4c85 li s9,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3921 ret = bf_mul_pow_radix(b, a1, radix, n - n_digits, - c0051116: e43e sd a5,8(sp) + c00512e6: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3913 while (n_digits_min < n_digits_max) { - c0051118: 008cc663 blt s9,s0,c0051124 + c00512e8: 008cc663 blt s9,s0,c00512f4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3935 bf_delete(b); - c005111c: 18a8 addi a0,sp,120 - c005111e: b6ffb0ef jal ra,c004cc8c + c00512ec: 18a8 addi a0,sp,120 + c00512ee: b6ffb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3936 n_digits = n_digits_max; - c0051122: bf49 j c00510b4 + c00512f2: bf49 j c0051284 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3914 n_digits = (n_digits_min + n_digits_max) / 2; - c0051124: 4789 li a5,2 - c0051126: 019408b3 add a7,s0,s9 - c005112a: 02f8cdb3 div s11,a7,a5 + c00512f4: 4789 li a5,2 + c00512f6: 019408b3 add a7,s0,s9 + c00512fa: 02f8cdb3 div s11,a7,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3915 if (bf_convert_to_radix(a1, &n, a, radix, n_digits, - c005112e: 6782 ld a5,0(sp) - c0051130: 4801 li a6,0 - c0051132: 86a6 mv a3,s1 - c0051134: 0890 addi a2,sp,80 - c0051136: 082c addi a1,sp,24 - c0051138: 1028 addi a0,sp,40 - c005113a: 876e mv a4,s11 - c005113c: a67ff0ef jal ra,c0050ba2 - c0051140: c10d beqz a0,c0051162 + c00512fe: 6782 ld a5,0(sp) + c0051300: 4801 li a6,0 + c0051302: 86a6 mv a3,s1 + c0051304: 0890 addi a2,sp,80 + c0051306: 082c addi a1,sp,24 + c0051308: 1028 addi a0,sp,40 + c005130a: 876e mv a4,s11 + c005130c: a67ff0ef jal ra,c0050d72 + c0051310: c10d beqz a0,c0051332 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3917 bf_delete(b); - c0051142: 18a8 addi a0,sp,120 - c0051144: b49fb0ef jal ra,c004cc8c + c0051312: 18a8 addi a0,sp,120 + c0051314: b49fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3942 bf_delete(a1); - c0051148: 1028 addi a0,sp,40 - c005114a: b43fb0ef jal ra,c004cc8c + c0051318: 1028 addi a0,sp,40 + c005131a: b43fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4010 bf_free(ctx, s->buf); - c005114e: 758a ld a1,160(sp) - c0051150: 8562 mv a0,s8 - c0051152: b31fb0ef jal ra,c004cc82 + c005131e: 758a ld a1,160(sp) + c0051320: 8562 mv a0,s8 + c0051322: b31fb0ef jal ra,c004ce52 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4011 if (plen) - c0051156: c80a87e3 beqz s5,c0050de4 + c0051326: c80a87e3 beqz s5,c0050fb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4012 *plen = 0; - c005115a: 000ab023 sd zero,0(s5) + c005132a: 000ab023 sd zero,0(s5) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4013 return NULL; - c005115e: 4a81 li s5,0 - c0051160: b151 j c0050de4 + c005132e: 4a81 li s5,0 + c0051330: b151 j c0050fb4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3921 ret = bf_mul_pow_radix(b, a1, radix, n - n_digits, - c0051162: 66e2 ld a3,24(sp) - c0051164: 67a2 ld a5,8(sp) - c0051166: 8752 mv a4,s4 - c0051168: 41b686b3 sub a3,a3,s11 - c005116c: 8626 mv a2,s1 - c005116e: 102c addi a1,sp,40 - c0051170: 18a8 addi a0,sp,120 - c0051172: ad4ff0ef jal ra,c0050446 + c0051332: 66e2 ld a3,24(sp) + c0051334: 67a2 ld a5,8(sp) + c0051336: 8752 mv a4,s4 + c0051338: 41b686b3 sub a3,a3,s11 + c005133c: 8626 mv a2,s1 + c005133e: 102c addi a1,sp,40 + c0051340: 18a8 addi a0,sp,120 + c0051342: ad4ff0ef jal ra,c0050616 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3925 if (ret & BF_ST_MEM_ERROR) { - c0051176: 02057513 andi a0,a0,32 - c005117a: f561 bnez a0,c0051142 + c0051346: 02057513 andi a0,a0,32 + c005134a: f561 bnez a0,c0051312 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3929 if (bf_cmpu(b, a) == 0) { - c005117c: 088c addi a1,sp,80 - c005117e: 18a8 addi a0,sp,120 - c0051180: fccfc0ef jal ra,c004d94c - c0051184: c501 beqz a0,c005118c + c005134c: 088c addi a1,sp,80 + c005134e: 18a8 addi a0,sp,120 + c0051350: fccfc0ef jal ra,c004db1c + c0051354: c501 beqz a0,c005135c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3932 n_digits_min = n_digits + 1; - c0051186: 001d8c93 addi s9,s11,1 - c005118a: 8da2 mv s11,s0 - c005118c: 846e mv s0,s11 - c005118e: b769 j c0051118 + c0051356: 001d8c93 addi s9,s11,1 + c005135a: 8da2 mv s11,s0 + c005135c: 846e mv s0,s11 + c005135e: b769 j c00512e8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3952 if (flags & BF_FTOA_ADD_PREFIX) { - c0051190: 01595793 srli a5,s2,0x15 - c0051194: 8b85 andi a5,a5,1 - c0051196: cb8d beqz a5,c00511c8 + c0051360: 01595793 srli a5,s2,0x15 + c0051364: 8b85 andi a5,a5,1 + c0051366: cb8d beqz a5,c0051398 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3953 if (radix == 16) - c0051198: 47c1 li a5,16 + c0051368: 47c1 li a5,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3954 dbuf_putstr(s, "0x"); - c005119a: 00021597 auipc a1,0x21 - c005119e: 1fe58593 addi a1,a1,510 # c0072398 + c005136a: 00021597 auipc a1,0x21 + c005136e: 28e58593 addi a1,a1,654 # c00725f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3953 if (radix == 16) - c00511a2: 02f48063 beq s1,a5,c00511c2 + c0051372: 02f48063 beq s1,a5,c0051392 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3955 else if (radix == 8) - c00511a6: 47a1 li a5,8 + c0051376: 47a1 li a5,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3956 dbuf_putstr(s, "0o"); - c00511a8: 00021597 auipc a1,0x21 - c00511ac: 1f858593 addi a1,a1,504 # c00723a0 + c0051378: 00021597 auipc a1,0x21 + c005137c: 28858593 addi a1,a1,648 # c0072600 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3955 else if (radix == 8) - c00511b0: 00f48963 beq s1,a5,c00511c2 + c0051380: 00f48963 beq s1,a5,c0051392 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3957 else if (radix == 2) - c00511b4: 4789 li a5,2 - c00511b6: 00f49963 bne s1,a5,c00511c8 + c0051384: 4789 li a5,2 + c0051386: 00f49963 bne s1,a5,c0051398 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3958 dbuf_putstr(s, "0b"); - c00511ba: 00021597 auipc a1,0x21 - c00511be: 1ee58593 addi a1,a1,494 # c00723a8 - c00511c2: 1108 addi a0,sp,160 - c00511c4: b97f60ef jal ra,c0047d5a + c005138a: 00021597 auipc a1,0x21 + c005138e: 27e58593 addi a1,a1,638 # c0072608 + c0051392: 1108 addi a0,sp,160 + c0051394: b97f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3960 if (a1->expn == BF_EXP_ZERO) - c00511c8: 7762 ld a4,56(sp) - c00511ca: 57fd li a5,-1 - c00511cc: 17fe slli a5,a5,0x3f - c00511ce: 00f71463 bne a4,a5,c00511d6 + c0051398: 7762 ld a4,56(sp) + c005139a: 57fd li a5,-1 + c005139c: 17fe slli a5,a5,0x3f + c005139e: 00f71463 bne a4,a5,c00513a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3961 n = 1; - c00511d2: 4785 li a5,1 - c00511d4: ec3e sd a5,24(sp) + c00513a2: 4785 li a5,1 + c00513a4: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3962 if ((flags & BF_FTOA_FORCE_EXP) || - c00511d6: 000a1863 bnez s4,c00511e6 + c00513a6: 000a1863 bnez s4,c00513b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3963 n <= -6 || n > n_max) { - c00511da: 6762 ld a4,24(sp) + c00513aa: 6762 ld a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3962 if ((flags & BF_FTOA_FORCE_EXP) || - c00511dc: 57ed li a5,-5 - c00511de: 00f74463 blt a4,a5,c00511e6 + c00513ac: 57ed li a5,-5 + c00513ae: 00f74463 blt a4,a5,c00513b6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3963 n <= -6 || n > n_max) { - c00511e2: 06eb5a63 bge s6,a4,c0051256 + c00513b2: 06eb5a63 bge s6,a4,c0051426 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3966 output_digits(s, a1, radix, n_digits, 1, is_dec); - c00511e6: 4705 li a4,1 - c00511e8: 86a2 mv a3,s0 - c00511ea: 8626 mv a2,s1 - c00511ec: 102c addi a1,sp,40 - c00511ee: 1108 addi a0,sp,160 - c00511f0: 8e7fe0ef jal ra,c004fad6 + c00513b6: 4705 li a4,1 + c00513b8: 86a2 mv a3,s0 + c00513ba: 8626 mv a2,s1 + c00513bc: 102c addi a1,sp,40 + c00513be: 1108 addi a0,sp,160 + c00513c0: 8e7fe0ef jal ra,c004fca6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3738 if (flags & BF_FTOA_JS_QUIRKS) - c00511f4: 00400737 lui a4,0x400 - c00511f8: 66e2 ld a3,24(sp) - c00511fa: 00e97933 and s2,s2,a4 + c00513c4: 00400737 lui a4,0x400 + c00513c8: 66e2 ld a3,24(sp) + c00513ca: 00e97933 and s2,s2,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3967 if (radix_bits != 0 && radix <= 16) { - c00511fe: 02098663 beqz s3,c005122a - c0051202: 47c1 li a5,16 - c0051204: 0297c363 blt a5,s1,c005122a + c00513ce: 02098663 beqz s3,c00513fa + c00513d2: 47c1 li a5,16 + c00513d4: 0297c363 blt a5,s1,c00513fa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3969 fmt = "p%+" PRId_LIMB; - c0051208: 00021597 auipc a1,0x21 - c005120c: 17858593 addi a1,a1,376 # c0072380 + c00513d8: 00021597 auipc a1,0x21 + c00513dc: 20858593 addi a1,a1,520 # c00725e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3968 if (flags & BF_FTOA_JS_QUIRKS) - c0051210: 00091663 bnez s2,c005121c + c00513e0: 00091663 bnez s2,c00513ec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3971 fmt = "p%" PRId_LIMB; - c0051214: 00021597 auipc a1,0x21 - c0051218: 15458593 addi a1,a1,340 # c0072368 + c00513e4: 00021597 auipc a1,0x21 + c00513e8: 1e458593 addi a1,a1,484 # c00725c8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3972 dbuf_printf(s, fmt, (n - 1) * radix_bits); - c005121c: 16fd addi a3,a3,-1 - c005121e: 03368633 mul a2,a3,s3 - c0051222: 1108 addi a0,sp,160 - c0051224: b57f60ef jal ra,c0047d7a - c0051228: b1c1 j c0050ee8 + c00513ec: 16fd addi a3,a3,-1 + c00513ee: 03368633 mul a2,a3,s3 + c00513f2: 1108 addi a0,sp,160 + c00513f4: b57f60ef jal ra,c0047f4a + c00513f8: b1c1 j c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3975 fmt = "%c%+" PRId_LIMB; - c005122a: 00021597 auipc a1,0x21 - c005122e: 15e58593 addi a1,a1,350 # c0072388 + c00513fa: 00021597 auipc a1,0x21 + c00513fe: 1ee58593 addi a1,a1,494 # c00725e8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3974 if (flags & BF_FTOA_JS_QUIRKS) - c0051232: 00091663 bnez s2,c005123e + c0051402: 00091663 bnez s2,c005140e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3977 fmt = "%c%" PRId_LIMB; - c0051236: 00021597 auipc a1,0x21 - c005123a: 15a58593 addi a1,a1,346 # c0072390 + c0051406: 00021597 auipc a1,0x21 + c005140a: 1ea58593 addi a1,a1,490 # c00725f0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3978 dbuf_printf(s, fmt, - c005123e: 47a9 li a5,10 - c0051240: 06500613 li a2,101 - c0051244: 0097d463 bge a5,s1,c005124c - c0051248: 04000613 li a2,64 - c005124c: 16fd addi a3,a3,-1 - c005124e: 1108 addi a0,sp,160 - c0051250: b2bf60ef jal ra,c0047d7a - c0051254: b951 j c0050ee8 + c005140e: 47a9 li a5,10 + c0051410: 06500613 li a2,101 + c0051414: 0097d463 bge a5,s1,c005141c + c0051418: 04000613 li a2,64 + c005141c: 16fd addi a3,a3,-1 + c005141e: 1108 addi a0,sp,160 + c0051420: b2bf60ef jal ra,c0047f4a + c0051424: b951 j c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3981 } else if (n <= 0) { - c0051256: 02e04863 bgtz a4,c0051286 + c0051426: 02e04863 bgtz a4,c0051456 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3983 dbuf_putstr(s, "0."); - c005125a: 00021597 auipc a1,0x21 - c005125e: 15e58593 addi a1,a1,350 # c00723b8 - c0051262: 1108 addi a0,sp,160 - c0051264: af7f60ef jal ra,c0047d5a + c005142a: 00021597 auipc a1,0x21 + c005142e: 1ee58593 addi a1,a1,494 # c0072618 + c0051432: 1108 addi a0,sp,160 + c0051434: af7f60ef jal ra,c0047f2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3984 for(i = 0; i < -n; i++) { - c0051268: 4901 li s2,0 - c005126a: 67e2 ld a5,24(sp) - c005126c: 40f007b3 neg a5,a5 - c0051270: 00f94463 blt s2,a5,c0051278 + c0051438: 4901 li s2,0 + c005143a: 67e2 ld a5,24(sp) + c005143c: 40f007b3 neg a5,a5 + c0051440: 00f94463 blt s2,a5,c0051448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3987 output_digits(s, a1, radix, n_digits, n_digits, is_dec); - c0051274: 8722 mv a4,s0 - c0051276: b155 j c0050f1a + c0051444: 8722 mv a4,s0 + c0051446: b155 j c00510ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3985 dbuf_putc(s, '0'); - c0051278: 03000593 li a1,48 - c005127c: 1108 addi a0,sp,160 - c005127e: ac5f60ef jal ra,c0047d42 + c0051448: 03000593 li a1,48 + c005144c: 1108 addi a0,sp,160 + c005144e: ac5f60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3984 for(i = 0; i < -n; i++) { - c0051282: 0905 addi s2,s2,1 - c0051284: b7dd j c005126a + c0051452: 0905 addi s2,s2,1 + c0051454: b7dd j c005143a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3989 if (n_digits <= n) { - c0051286: 02874563 blt a4,s0,c00512b0 + c0051456: 02874563 blt a4,s0,c0051480 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3991 output_digits(s, a1, radix, n_digits, n_digits, is_dec); - c005128a: 8626 mv a2,s1 - c005128c: 8722 mv a4,s0 - c005128e: 86a2 mv a3,s0 - c0051290: 102c addi a1,sp,40 - c0051292: 1108 addi a0,sp,160 - c0051294: 843fe0ef jal ra,c004fad6 + c005145a: 8626 mv a2,s1 + c005145c: 8722 mv a4,s0 + c005145e: 86a2 mv a3,s0 + c0051460: 102c addi a1,sp,40 + c0051462: 1108 addi a0,sp,160 + c0051464: 843fe0ef jal ra,c004fca6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3992 for(i = 0; i < (n - n_digits); i++) - c0051298: 4481 li s1,0 - c005129a: 67e2 ld a5,24(sp) - c005129c: 8f81 sub a5,a5,s0 - c005129e: c4f4d5e3 bge s1,a5,c0050ee8 + c0051468: 4481 li s1,0 + c005146a: 67e2 ld a5,24(sp) + c005146c: 8f81 sub a5,a5,s0 + c005146e: c4f4d5e3 bge s1,a5,c00510b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3993 dbuf_putc(s, '0'); - c00512a2: 03000593 li a1,48 - c00512a6: 1108 addi a0,sp,160 - c00512a8: a9bf60ef jal ra,c0047d42 + c0051472: 03000593 li a1,48 + c0051476: 1108 addi a0,sp,160 + c0051478: a9bf60ef jal ra,c0047f12 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3992 for(i = 0; i < (n - n_digits); i++) - c00512ac: 0485 addi s1,s1,1 - c00512ae: b7f5 j c005129a + c005147c: 0485 addi s1,s1,1 + c005147e: b7f5 j c005146a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:3995 output_digits(s, a1, radix, n_digits, n, is_dec); - c00512b0: 86a2 mv a3,s0 - c00512b2: b1ad j c0050f1c + c0051480: 86a2 mv a3,s0 + c0051482: b1ad j c00510ec -00000000c00512b4 : +00000000c0051484 : bf_const_log2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4212 return bf_const_get(T, prec, flags, &s->log2_cache, bf_const_log2_internal, 0); - c00512b4: 6114 ld a3,0(a0) - c00512b6: 4781 li a5,0 - c00512b8: ffffe717 auipc a4,0xffffe - c00512bc: e7a70713 addi a4,a4,-390 # c004f132 - c00512c0: 06c1 addi a3,a3,16 - c00512c2: cdcfc06f j c004d79e - -00000000c00512c6 : + c0051484: 6114 ld a3,0(a0) + c0051486: 4781 li a5,0 + c0051488: ffffe717 auipc a4,0xffffe + c005148c: e7a70713 addi a4,a4,-390 # c004f302 + c0051490: 06c1 addi a3,a3,16 + c0051492: cdcfc06f j c004d96e + +00000000c0051496 : bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4303 { - c00512c6: 7135 addi sp,sp,-160 - c00512c8: ed06 sd ra,152(sp) - c00512ca: e922 sd s0,144(sp) - c00512cc: e526 sd s1,136(sp) - c00512ce: e14a sd s2,128(sp) - c00512d0: fcce sd s3,120(sp) - c00512d2: f8d2 sd s4,112(sp) - c00512d4: f4d6 sd s5,104(sp) + c0051496: 7135 addi sp,sp,-160 + c0051498: ed06 sd ra,152(sp) + c005149a: e922 sd s0,144(sp) + c005149c: e526 sd s1,136(sp) + c005149e: e14a sd s2,128(sp) + c00514a0: fcce sd s3,120(sp) + c00514a2: f8d2 sd s4,112(sp) + c00514a4: f4d6 sd s5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4304 bf_context_t *s = r->ctx; - c00512d6: 00053a83 ld s5,0(a0) + c00514a6: 00053a83 ld s5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4308 assert(r != a); - c00512da: 00b51c63 bne a0,a1,c00512f2 + c00514aa: 00b51c63 bne a0,a1,c00514c2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4308 (discriminator 1) - c00512de: 6585 lui a1,0x1 - c00512e0: 4601 li a2,0 - c00512e2: 0d458593 addi a1,a1,212 # 10d4 <__clzdi2-0xbfffef2c> - c00512e6: 00021517 auipc a0,0x21 - c00512ea: 03250513 addi a0,a0,50 # c0072318 - c00512ee: 72a020ef jal ra,c0053a18 <__assert> + c00514ae: 6585 lui a1,0x1 + c00514b0: 4601 li a2,0 + c00514b2: 0d458593 addi a1,a1,212 # 10d4 <__clzdi2-0xbfffef2c> + c00514b6: 00021517 auipc a0,0x21 + c00514ba: 0c250513 addi a0,a0,194 # c0072578 + c00514be: 72a020ef jal ra,c0053be8 <__assert> bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00512f2: 57fd li a5,-1 - c00512f4: 03f79713 slli a4,a5,0x3f - c00512f8: f03a sd a4,32(sp) + c00514c2: 57fd li a5,-1 + c00514c4: 03f79713 slli a4,a5,0x3f + c00514c8: f03a sd a4,32(sp) bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4314 if (a->expn <= -1) { - c00512fa: 6998 ld a4,16(a1) + c00514ca: 6998 ld a4,16(a1) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00512fc: e856 sd s5,16(sp) + c00514cc: e856 sd s5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00512fe: cc02 sw zero,24(sp) + c00514ce: cc02 sw zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051300: f402 sd zero,40(sp) + c00514d0: f402 sd zero,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051302: f802 sd zero,48(sp) - c0051304: 84aa mv s1,a0 - c0051306: 89ae mv s3,a1 - c0051308: 8432 mv s0,a2 + c00514d2: f802 sd zero,48(sp) + c00514d4: 84aa mv s1,a0 + c00514d6: 89ae mv s3,a1 + c00514d8: 8432 mv s0,a2 bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4314 if (a->expn <= -1) { - c005130a: 0c075063 bgez a4,c00513ca + c00514da: 0c075063 bgez a4,c005159a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4316 if (a->sign) - c005130e: 4598 lw a4,8(a1) - c0051310: cb5d beqz a4,c00513c6 + c00514de: 4598 lw a4,8(a1) + c00514e0: cb5d beqz a4,c0051596 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4317 n = -1; - c0051312: e43e sd a5,8(sp) + c00514e2: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4326 K = bf_isqrt((prec + 1) / 2); - c0051314: 00140513 addi a0,s0,1 - c0051318: 8105 srli a0,a0,0x1 - c005131a: 8affd0ef jal ra,c004ebc8 + c00514e4: 00140513 addi a0,s0,1 + c00514e8: 8105 srli a0,a0,0x1 + c00514ea: 8affd0ef jal ra,c004ed98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4327 l = (prec - 1) / K + 1; - c005131e: fff40913 addi s2,s0,-1 - c0051322: 02a95933 divu s2,s2,a0 + c00514ee: fff40913 addi s2,s0,-1 + c00514f2: 02a95933 divu s2,s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4329 prec1 = prec + (K + 2 * l + 18) + K + 8; - c0051326: 0469 addi s0,s0,26 - c0051328: 942a add s0,s0,a0 + c00514f6: 0469 addi s0,s0,26 + c00514f8: 942a add s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4326 K = bf_isqrt((prec + 1) / 2); - c005132a: 8a2a mv s4,a0 + c00514fa: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4327 l = (prec - 1) / K + 1; - c005132c: 0905 addi s2,s2,1 + c00514fc: 0905 addi s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4329 prec1 = prec + (K + 2 * l + 18) + K + 8; - c005132e: 00191793 slli a5,s2,0x1 - c0051332: 97aa add a5,a5,a0 - c0051334: 943e add s0,s0,a5 + c00514fe: 00191793 slli a5,s2,0x1 + c0051502: 97aa add a5,a5,a0 + c0051504: 943e add s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4330 if (a->expn > 0) - c0051336: 0109b783 ld a5,16(s3) - c005133a: 00f05363 blez a5,c0051340 + c0051506: 0109b783 ld a5,16(s3) + c005150a: 00f05363 blez a5,c0051510 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4331 prec1 += a->expn; - c005133e: 943e add s0,s0,a5 + c005150e: 943e add s0,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4334 bf_const_log2(T, prec1, BF_RNDF); - c0051340: 4619 li a2,6 - c0051342: 85a2 mv a1,s0 - c0051344: 0808 addi a0,sp,16 - c0051346: f6fff0ef jal ra,c00512b4 + c0051510: 4619 li a2,6 + c0051512: 85a2 mv a1,s0 + c0051514: 0808 addi a0,sp,16 + c0051516: f6fff0ef jal ra,c0051484 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4335 bf_mul_si(T, T, n, prec1, BF_RNDN); - c005134a: 6622 ld a2,8(sp) - c005134c: 080c addi a1,sp,16 - c005134e: 4701 li a4,0 - c0051350: 86a2 mv a3,s0 - c0051352: 852e mv a0,a1 - c0051354: 930fe0ef jal ra,c004f484 + c005151a: 6622 ld a2,8(sp) + c005151c: 080c addi a1,sp,16 + c005151e: 4701 li a4,0 + c0051520: 86a2 mv a3,s0 + c0051522: 852e mv a0,a1 + c0051524: 930fe0ef jal ra,c004f654 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4336 bf_sub(T, a, T, prec1, BF_RNDN); - c0051358: 0810 addi a2,sp,16 - c005135a: 85ce mv a1,s3 - c005135c: 4701 li a4,0 - c005135e: 86a2 mv a3,s0 - c0051360: 8532 mv a0,a2 - c0051362: db9fd0ef jal ra,c004f11a + c0051528: 0810 addi a2,sp,16 + c005152a: 85ce mv a1,s3 + c005152c: 4701 li a4,0 + c005152e: 86a2 mv a3,s0 + c0051530: 8532 mv a0,a2 + c0051532: db9fd0ef jal ra,c004f2ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4339 bf_mul_2exp(T, -K, BF_PREC_INF, BF_RNDZ); - c0051366: 59fd li s3,-1 - c0051368: 0029d613 srli a2,s3,0x2 - c005136c: 414005b3 neg a1,s4 - c0051370: 4685 li a3,1 - c0051372: 0808 addi a0,sp,16 - c0051374: fd2fd0ef jal ra,c004eb46 + c0051536: 59fd li s3,-1 + c0051538: 0029d613 srli a2,s3,0x2 + c005153c: 414005b3 neg a1,s4 + c0051540: 4685 li a3,1 + c0051542: 0808 addi a0,sp,16 + c0051544: fd2fd0ef jal ra,c004ed16 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051378: 19fe slli s3,s3,0x3f + c0051548: 19fe slli s3,s3,0x3f bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4349 bf_set_ui(r, 1); - c005137a: 4585 li a1,1 - c005137c: 8526 mv a0,s1 + c005154a: 4585 li a1,1 + c005154c: 8526 mv a0,s1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005137e: fc56 sd s5,56(sp) + c005154e: fc56 sd s5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051380: c082 sw zero,64(sp) + c0051550: c082 sw zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051382: e4ce sd s3,72(sp) + c0051552: e4ce sd s3,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051384: e882 sd zero,80(sp) + c0051554: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051386: ec82 sd zero,88(sp) + c0051556: ec82 sd zero,88(sp) bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4349 bf_set_ui(r, 1); - c0051388: cf5fb0ef jal ra,c004d07c + c0051558: cf5fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4350 (discriminator 1) for(i = l ; i >= 1; i--) { - c005138c: 07204363 bgtz s2,c00513f2 + c005155c: 07204363 bgtz s2,c00515c2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4356 bf_delete(U); - c0051390: 1828 addi a0,sp,56 - c0051392: 8fbfb0ef jal ra,c004cc8c + c0051560: 1828 addi a0,sp,56 + c0051562: 8fbfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4358 bf_delete(T); - c0051396: 0808 addi a0,sp,16 - c0051398: 8f5fb0ef jal ra,c004cc8c + c0051566: 0808 addi a0,sp,16 + c0051568: 8f5fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4361 for(i = 0; i < K; i++) { - c005139c: 4901 li s2,0 + c005156c: 4901 li s2,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4361 (discriminator 1) - c005139e: 09494563 blt s2,s4,c0051428 + c005156e: 09494563 blt s2,s4,c00515f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4366 bf_mul_2exp(r, n, BF_PREC_INF, BF_RNDZ | BF_FLAG_EXT_EXP); - c00513a2: 65a2 ld a1,8(sp) - c00513a4: 567d li a2,-1 - c00513a6: 8526 mv a0,s1 - c00513a8: 7e100693 li a3,2017 - c00513ac: 8209 srli a2,a2,0x2 - c00513ae: f98fd0ef jal ra,c004eb46 + c0051572: 65a2 ld a1,8(sp) + c0051574: 567d li a2,-1 + c0051576: 8526 mv a0,s1 + c0051578: 7e100693 li a3,2017 + c005157c: 8209 srli a2,a2,0x2 + c005157e: f98fd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4369 } - c00513b2: 60ea ld ra,152(sp) - c00513b4: 644a ld s0,144(sp) - c00513b6: 64aa ld s1,136(sp) - c00513b8: 690a ld s2,128(sp) - c00513ba: 79e6 ld s3,120(sp) - c00513bc: 7a46 ld s4,112(sp) - c00513be: 7aa6 ld s5,104(sp) - c00513c0: 4541 li a0,16 - c00513c2: 610d addi sp,sp,160 - c00513c4: 8082 ret + c0051582: 60ea ld ra,152(sp) + c0051584: 644a ld s0,144(sp) + c0051586: 64aa ld s1,136(sp) + c0051588: 690a ld s2,128(sp) + c005158a: 79e6 ld s3,120(sp) + c005158c: 7a46 ld s4,112(sp) + c005158e: 7aa6 ld s5,104(sp) + c0051590: 4541 li a0,16 + c0051592: 610d addi sp,sp,160 + c0051594: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4319 n = 0; - c00513c6: e402 sd zero,8(sp) - c00513c8: b7b1 j c0051314 + c0051596: e402 sd zero,8(sp) + c0051598: b7b1 j c00514e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4321 bf_const_log2(T, LIMB_BITS, BF_RNDZ); - c00513ca: 4605 li a2,1 - c00513cc: 04000593 li a1,64 - c00513d0: 0808 addi a0,sp,16 - c00513d2: ee3ff0ef jal ra,c00512b4 + c005159a: 4605 li a2,1 + c005159c: 04000593 li a1,64 + c00515a0: 0808 addi a0,sp,16 + c00515a2: ee3ff0ef jal ra,c0051484 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4322 bf_div(T, a, T, LIMB_BITS, BF_RNDD); - c00513d6: 0810 addi a2,sp,16 - c00513d8: 85ce mv a1,s3 - c00513da: 4709 li a4,2 - c00513dc: 04000693 li a3,64 - c00513e0: 8532 mv a0,a2 - c00513e2: d45fd0ef jal ra,c004f126 + c00515a6: 0810 addi a2,sp,16 + c00515a8: 85ce mv a1,s3 + c00515aa: 4709 li a4,2 + c00515ac: 04000693 li a3,64 + c00515b0: 8532 mv a0,a2 + c00515b2: d45fd0ef jal ra,c004f2f6 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c00513e6: 4601 li a2,0 - c00513e8: 080c addi a1,sp,16 - c00513ea: 0028 addi a0,sp,8 - c00513ec: e71fe0ef jal ra,c005025c - c00513f0: b715 j c0051314 + c00515b6: 4601 li a2,0 + c00515b8: 080c addi a1,sp,16 + c00515ba: 0028 addi a0,sp,8 + c00515bc: e71fe0ef jal ra,c005042c + c00515c0: b715 j c00514e4 bf_exp_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4351 (discriminator 3) bf_set_ui(U, i); - c00513f2: 85ca mv a1,s2 - c00513f4: 1828 addi a0,sp,56 - c00513f6: c87fb0ef jal ra,c004d07c + c00515c2: 85ca mv a1,s2 + c00515c4: 1828 addi a0,sp,56 + c00515c6: c87fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4352 (discriminator 3) bf_div(U, T, U, prec1, BF_RNDN); - c00513fa: 1830 addi a2,sp,56 - c00513fc: 4701 li a4,0 - c00513fe: 86a2 mv a3,s0 - c0051400: 080c addi a1,sp,16 - c0051402: 8532 mv a0,a2 - c0051404: d23fd0ef jal ra,c004f126 + c00515ca: 1830 addi a2,sp,56 + c00515cc: 4701 li a4,0 + c00515ce: 86a2 mv a3,s0 + c00515d0: 080c addi a1,sp,16 + c00515d2: 8532 mv a0,a2 + c00515d4: d23fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4353 (discriminator 3) bf_mul(r, r, U, prec1, BF_RNDN); - c0051408: 4701 li a4,0 - c005140a: 86a2 mv a3,s0 - c005140c: 1830 addi a2,sp,56 - c005140e: 85a6 mv a1,s1 - c0051410: 8526 mv a0,s1 - c0051412: cc8fd0ef jal ra,c004e8da + c00515d8: 4701 li a4,0 + c00515da: 86a2 mv a3,s0 + c00515dc: 1830 addi a2,sp,56 + c00515de: 85a6 mv a1,s1 + c00515e0: 8526 mv a0,s1 + c00515e2: cc8fd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4354 (discriminator 3) bf_add_si(r, r, 1, prec1, BF_RNDN); - c0051416: 4701 li a4,0 - c0051418: 86a2 mv a3,s0 - c005141a: 4605 li a2,1 - c005141c: 85a6 mv a1,s1 - c005141e: 8526 mv a0,s1 - c0051420: 8b6fe0ef jal ra,c004f4d6 + c00515e6: 4701 li a4,0 + c00515e8: 86a2 mv a3,s0 + c00515ea: 4605 li a2,1 + c00515ec: 85a6 mv a1,s1 + c00515ee: 8526 mv a0,s1 + c00515f0: 8b6fe0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4350 (discriminator 3) for(i = l ; i >= 1; i--) { - c0051424: 197d addi s2,s2,-1 - c0051426: b79d j c005138c + c00515f4: 197d addi s2,s2,-1 + c00515f6: b79d j c005155c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4362 (discriminator 3) bf_mul(r, r, r, prec1, BF_RNDN | BF_FLAG_EXT_EXP); - c0051428: 7e000713 li a4,2016 - c005142c: 86a2 mv a3,s0 - c005142e: 8626 mv a2,s1 - c0051430: 85a6 mv a1,s1 - c0051432: 8526 mv a0,s1 - c0051434: ca6fd0ef jal ra,c004e8da + c00515f8: 7e000713 li a4,2016 + c00515fc: 86a2 mv a3,s0 + c00515fe: 8626 mv a2,s1 + c0051600: 85a6 mv a1,s1 + c0051602: 8526 mv a0,s1 + c0051604: ca6fd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4361 (discriminator 3) for(i = 0; i < K; i++) { - c0051438: 0905 addi s2,s2,1 - c005143a: b795 j c005139e + c0051608: 0905 addi s2,s2,1 + c005160a: b795 j c005156e -00000000c005143c : +00000000c005160c : check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4375 { - c005143c: 7175 addi sp,sp,-144 - c005143e: fca6 sd s1,120(sp) - c0051440: e506 sd ra,136(sp) - c0051442: e122 sd s0,128(sp) - c0051444: f8ca sd s2,112(sp) - c0051446: f4ce sd s3,104(sp) - c0051448: f0d2 sd s4,96(sp) - c005144a: ecd6 sd s5,88(sp) - c005144c: e8da sd s6,80(sp) - c005144e: 84be mv s1,a5 + c005160c: 7175 addi sp,sp,-144 + c005160e: fca6 sd s1,120(sp) + c0051610: e506 sd ra,136(sp) + c0051612: e122 sd s0,128(sp) + c0051614: f8ca sd s2,112(sp) + c0051616: f4ce sd s3,104(sp) + c0051618: f0d2 sd s4,96(sp) + c005161a: ecd6 sd s5,88(sp) + c005161c: e8da sd s6,80(sp) + c005161e: 84be mv s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4380 if (a_high->expn <= 0) - c0051450: 6a9c ld a5,16(a3) - c0051452: 10f05863 blez a5,c0051562 + c0051620: 6a9c ld a5,16(a3) + c0051622: 10f05863 blez a5,c0051732 bf_get_exp_bits(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:155 e = (flags >> BF_EXP_BITS_SHIFT) & BF_EXP_BITS_MASK; - c0051456: 0054d79b srliw a5,s1,0x5 - c005145a: 8aba mv s5,a4 - c005145c: 03f7f793 andi a5,a5,63 + c0051626: 0054d79b srliw a5,s1,0x5 + c005162a: 8aba mv s5,a4 + c005162c: 03f7f793 andi a5,a5,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 if (e == BF_EXP_BITS_MASK) - c0051460: 03f00713 li a4,63 - c0051464: 89ae mv s3,a1 - c0051466: 8b32 mv s6,a2 - c0051468: 8a36 mv s4,a3 + c0051630: 03f00713 li a4,63 + c0051634: 89ae mv s3,a1 + c0051636: 8b32 mv s6,a2 + c0051638: 8a36 mv s4,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:157 return BF_EXP_BITS_MAX + 1; - c005146a: 03e00413 li s0,62 + c005163a: 03e00413 li s0,62 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:156 if (e == BF_EXP_BITS_MASK) - c005146e: 00e78563 beq a5,a4,c0051478 + c005163e: 00e78563 beq a5,a4,c0051648 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:159 return BF_EXP_BITS_MAX - e; - c0051472: 03d00413 li s0,61 - c0051476: 9c1d subw s0,s0,a5 + c0051642: 03d00413 li s0,61 + c0051646: 9c1d subw s0,s0,a5 check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4383 e_max = (limb_t)1 << (bf_get_exp_bits(flags) - 1); - c0051478: 347d addiw s0,s0,-1 - c005147a: 4785 li a5,1 - c005147c: 00879433 sll s0,a5,s0 + c0051648: 347d addiw s0,s0,-1 + c005164a: 4785 li a5,1 + c005164c: 00879433 sll s0,a5,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4384 e_min = -e_max + 3; - c0051480: 490d li s2,3 + c0051650: 490d li s2,3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4385 if (flags & BF_FLAG_SUBNORMAL) - c0051482: 0084f713 andi a4,s1,8 + c0051652: 0084f713 andi a4,s1,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4384 e_min = -e_max + 3; - c0051486: 40890933 sub s2,s2,s0 + c0051656: 40890933 sub s2,s2,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4385 if (flags & BF_FLAG_SUBNORMAL) - c005148a: c701 beqz a4,c0051492 + c005165a: c701 beqz a4,c0051662 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4386 e_min -= (prec - 1); - c005148c: 415787b3 sub a5,a5,s5 - c0051490: 993e add s2,s2,a5 + c005165c: 415787b3 sub a5,a5,s5 + c0051660: 993e add s2,s2,a5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051492: 57fd li a5,-1 - c0051494: 17fe slli a5,a5,0x3f + c0051662: 57fd li a5,-1 + c0051664: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051496: e02a sd a0,0(sp) - c0051498: f42a sd a0,40(sp) + c0051666: e02a sd a0,0(sp) + c0051668: f42a sd a0,40(sp) check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4390 bf_const_log2(log2, LIMB_BITS, BF_RNDU); - c005149a: 460d li a2,3 - c005149c: 04000593 li a1,64 - c00514a0: 1028 addi a0,sp,40 + c005166a: 460d li a2,3 + c005166c: 04000593 li a1,64 + c0051670: 1028 addi a0,sp,40 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00514a2: e83e sd a5,16(sp) - c00514a4: fc3e sd a5,56(sp) + c0051672: e83e sd a5,16(sp) + c0051674: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00514a6: c402 sw zero,8(sp) + c0051676: c402 sw zero,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00514a8: ec02 sd zero,24(sp) + c0051678: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00514aa: f002 sd zero,32(sp) + c005167a: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00514ac: d802 sw zero,48(sp) + c005167c: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00514ae: e082 sd zero,64(sp) + c005167e: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00514b0: e482 sd zero,72(sp) + c0051680: e482 sd zero,72(sp) check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4390 bf_const_log2(log2, LIMB_BITS, BF_RNDU); - c00514b2: e03ff0ef jal ra,c00512b4 + c0051682: e03ff0ef jal ra,c0051484 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4391 bf_mul_ui(T, log2, e_max, LIMB_BITS, BF_RNDU); - c00514b6: 102c addi a1,sp,40 - c00514b8: 470d li a4,3 - c00514ba: 04000693 li a3,64 - c00514be: 8622 mv a2,s0 - c00514c0: 850a mv a0,sp - c00514c2: cd3fd0ef jal ra,c004f194 + c0051686: 102c addi a1,sp,40 + c0051688: 470d li a4,3 + c005168a: 04000693 li a3,64 + c005168e: 8622 mv a2,s0 + c0051690: 850a mv a0,sp + c0051692: cd3fd0ef jal ra,c004f364 bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 return bf_cmp(a, b) < 0; - c00514c6: 85da mv a1,s6 - c00514c8: 850a mv a0,sp - c00514ca: 941fc0ef jal ra,c004de0a + c0051696: 85da mv a1,s6 + c0051698: 850a mv a0,sp + c005169a: 941fc0ef jal ra,c004dfda check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4393 if (bf_cmp_lt(T, a_low) > 0) { - c00514ce: 02055863 bgez a0,c00514fe + c005169e: 02055863 bgez a0,c00516ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4395 bf_delete(T); - c00514d2: 850a mv a0,sp - c00514d4: fb8fb0ef jal ra,c004cc8c + c00516a2: 850a mv a0,sp + c00516a4: fb8fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4396 bf_delete(log2); - c00514d8: 1028 addi a0,sp,40 - c00514da: fb2fb0ef jal ra,c004cc8c + c00516a8: 1028 addi a0,sp,40 + c00516aa: fb2fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4397 return bf_set_overflow(r, 0, prec, flags); - c00514de: 86a6 mv a3,s1 - c00514e0: 8656 mv a2,s5 - c00514e2: 4581 li a1,0 - c00514e4: 854e mv a0,s3 - c00514e6: c61fb0ef jal ra,c004d146 + c00516ae: 86a6 mv a3,s1 + c00516b0: 8656 mv a2,s5 + c00516b2: 4581 li a1,0 + c00516b4: 854e mv a0,s3 + c00516b6: c61fb0ef jal ra,c004d316 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4420 } - c00514ea: 60aa ld ra,136(sp) - c00514ec: 640a ld s0,128(sp) - c00514ee: 74e6 ld s1,120(sp) - c00514f0: 7946 ld s2,112(sp) - c00514f2: 79a6 ld s3,104(sp) - c00514f4: 7a06 ld s4,96(sp) - c00514f6: 6ae6 ld s5,88(sp) - c00514f8: 6b46 ld s6,80(sp) - c00514fa: 6149 addi sp,sp,144 - c00514fc: 8082 ret + c00516ba: 60aa ld ra,136(sp) + c00516bc: 640a ld s0,128(sp) + c00516be: 74e6 ld s1,120(sp) + c00516c0: 7946 ld s2,112(sp) + c00516c2: 79a6 ld s3,104(sp) + c00516c4: 7a06 ld s4,96(sp) + c00516c6: 6ae6 ld s5,88(sp) + c00516c8: 6b46 ld s6,80(sp) + c00516ca: 6149 addi sp,sp,144 + c00516cc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4400 bf_const_log2(log2, LIMB_BITS, BF_RNDD); - c00514fe: 4609 li a2,2 - c0051500: 04000593 li a1,64 - c0051504: 1028 addi a0,sp,40 - c0051506: dafff0ef jal ra,c00512b4 + c00516ce: 4609 li a2,2 + c00516d0: 04000593 li a1,64 + c00516d4: 1028 addi a0,sp,40 + c00516d6: dafff0ef jal ra,c0051484 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4401 bf_mul_si(T, log2, e_min - 2, LIMB_BITS, BF_RNDD); - c005150a: 102c addi a1,sp,40 - c005150c: 4709 li a4,2 - c005150e: 04000693 li a3,64 - c0051512: ffe90613 addi a2,s2,-2 - c0051516: 850a mv a0,sp - c0051518: f6dfd0ef jal ra,c004f484 + c00516da: 102c addi a1,sp,40 + c00516dc: 4709 li a4,2 + c00516de: 04000693 li a3,64 + c00516e2: ffe90613 addi a2,s2,-2 + c00516e6: 850a mv a0,sp + c00516e8: f6dfd0ef jal ra,c004f654 bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 - c005151c: 858a mv a1,sp - c005151e: 8552 mv a0,s4 - c0051520: 8ebfc0ef jal ra,c004de0a + c00516ec: 858a mv a1,sp + c00516ee: 8552 mv a0,s4 + c00516f0: 8ebfc0ef jal ra,c004dfda check_exp_underflow_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4402 if (bf_cmp_lt(a_high, T)) { - c0051524: 02055963 bgez a0,c0051556 + c00516f4: 02055963 bgez a0,c0051726 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4406 bf_delete(T); - c0051528: 850a mv a0,sp - c005152a: f62fb0ef jal ra,c004cc8c + c00516f8: 850a mv a0,sp + c00516fa: f62fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4407 bf_delete(log2); - c005152e: 1028 addi a0,sp,40 - c0051530: f5cfb0ef jal ra,c004cc8c + c00516fe: 1028 addi a0,sp,40 + c0051700: f5cfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4408 if (rnd_mode == BF_RNDU) { - c0051534: 889d andi s1,s1,7 - c0051536: 478d li a5,3 - c0051538: 00f49a63 bne s1,a5,c005154c + c0051704: 889d andi s1,s1,7 + c0051706: 478d li a5,3 + c0051708: 00f49a63 bne s1,a5,c005171c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4410 bf_set_ui(r, 1); - c005153c: 4585 li a1,1 - c005153e: 854e mv a0,s3 - c0051540: b3dfb0ef jal ra,c004d07c + c005170c: 4585 li a1,1 + c005170e: 854e mv a0,s3 + c0051710: b3dfb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4411 r->expn = e_min; - c0051544: 0129b823 sd s2,16(s3) + c0051714: 0129b823 sd s2,16(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4415 return BF_ST_UNDERFLOW | BF_ST_INEXACT; - c0051548: 4561 li a0,24 - c005154a: b745 j c00514ea + c0051718: 4561 li a0,24 + c005171a: b745 j c00516ba /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4413 bf_set_zero(r, 0); - c005154c: 4581 li a1,0 - c005154e: 854e mv a0,s3 - c0051550: baffb0ef jal ra,c004d0fe - c0051554: bfd5 j c0051548 + c005171c: 4581 li a1,0 + c005171e: 854e mv a0,s3 + c0051720: baffb0ef jal ra,c004d2ce + c0051724: bfd5 j c0051718 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4417 bf_delete(log2); - c0051556: 1028 addi a0,sp,40 - c0051558: f34fb0ef jal ra,c004cc8c + c0051726: 1028 addi a0,sp,40 + c0051728: f34fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4418 bf_delete(T); - c005155c: 850a mv a0,sp - c005155e: f2efb0ef jal ra,c004cc8c + c005172c: 850a mv a0,sp + c005172e: f2efb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4381 return 0; - c0051562: 4501 li a0,0 - c0051564: b759 j c00514ea + c0051732: 4501 li a0,0 + c0051734: b759 j c00516ba -00000000c0051566 : +00000000c0051736 : bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4454 { - c0051566: 716d addi sp,sp,-272 - c0051568: e606 sd ra,264(sp) - c005156a: e222 sd s0,256(sp) - c005156c: fda6 sd s1,248(sp) - c005156e: f9ca sd s2,240(sp) - c0051570: f5ce sd s3,232(sp) - c0051572: f1d2 sd s4,224(sp) - c0051574: edd6 sd s5,216(sp) - c0051576: e9da sd s6,208(sp) + c0051736: 716d addi sp,sp,-272 + c0051738: e606 sd ra,264(sp) + c005173a: e222 sd s0,256(sp) + c005173c: fda6 sd s1,248(sp) + c005173e: f9ca sd s2,240(sp) + c0051740: f5ce sd s3,232(sp) + c0051742: f1d2 sd s4,224(sp) + c0051744: edd6 sd s5,216(sp) + c0051746: e9da sd s6,208(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4455 bf_context_t *s = r->ctx; - c0051578: 00053a03 ld s4,0(a0) + c0051748: 00053a03 ld s4,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4461 assert(r != a); - c005157c: 00b51c63 bne a0,a1,c0051594 + c005174c: 00b51c63 bne a0,a1,c0051764 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4461 (discriminator 1) - c0051580: 6585 lui a1,0x1 - c0051582: 4601 li a2,0 - c0051584: 16d58593 addi a1,a1,365 # 116d <__clzdi2-0xbfffee93> - c0051588: 00021517 auipc a0,0x21 - c005158c: d9050513 addi a0,a0,-624 # c0072318 - c0051590: 488020ef jal ra,c0053a18 <__assert> + c0051750: 6585 lui a1,0x1 + c0051752: 4601 li a2,0 + c0051754: 16d58593 addi a1,a1,365 # 116d <__clzdi2-0xbfffee93> + c0051758: 00021517 auipc a0,0x21 + c005175c: e2050513 addi a0,a0,-480 # c0072578 + c0051760: 488020ef jal ra,c0053be8 <__assert> bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051594: 597d li s2,-1 - c0051596: 197e slli s2,s2,0x3f - c0051598: 84aa mv s1,a0 + c0051764: 597d li s2,-1 + c0051766: 197e slli s2,s2,0x3f + c0051768: 84aa mv s1,a0 bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4468 bf_set(T, a); - c005159a: 0028 addi a0,sp,8 - c005159c: 8432 mv s0,a2 + c005176a: 0028 addi a0,sp,8 + c005176c: 8432 mv s0,a2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005159e: e452 sd s4,8(sp) + c005176e: e452 sd s4,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00515a0: c802 sw zero,16(sp) + c0051770: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00515a2: ec4a sd s2,24(sp) + c0051772: ec4a sd s2,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00515a4: f002 sd zero,32(sp) + c0051774: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00515a6: f402 sd zero,40(sp) + c0051776: f402 sd zero,40(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4468 bf_set(T, a); - c00515a8: f19fb0ef jal ra,c004d4c0 + c0051778: f19fb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4473 bf_set_ui(U, 0xaaaaaaaa); - c00515ac: 555555b7 lui a1,0x55555 - c00515b0: 55558593 addi a1,a1,1365 # 55555555 <__clzdi2-0x6aaaaaab> - c00515b4: 0586 slli a1,a1,0x1 - c00515b6: 1128 addi a0,sp,168 + c005177c: 555555b7 lui a1,0x55555 + c0051780: 55558593 addi a1,a1,1365 # 55555555 <__clzdi2-0x6aaaaaab> + c0051784: 0586 slli a1,a1,0x1 + c0051786: 1128 addi a0,sp,168 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4469 n = T->expn; - c00515b8: 6ae2 ld s5,24(sp) + c0051788: 6ae2 ld s5,24(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00515ba: f552 sd s4,168(sp) + c005178a: f552 sd s4,168(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4470 T->expn = 0; - c00515bc: ec02 sd zero,24(sp) + c005178c: ec02 sd zero,24(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00515be: d902 sw zero,176(sp) + c005178e: d902 sw zero,176(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00515c0: fd4a sd s2,184(sp) + c0051790: fd4a sd s2,184(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00515c2: e182 sd zero,192(sp) + c0051792: e182 sd zero,192(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00515c4: e582 sd zero,200(sp) + c0051794: e582 sd zero,200(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4473 bf_set_ui(U, 0xaaaaaaaa); - c00515c6: ab7fb0ef jal ra,c004d07c + c0051796: ab7fb0ef jal ra,c004d24c bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 - c00515ca: 112c addi a1,sp,168 - c00515cc: 0028 addi a0,sp,8 + c005179a: 112c addi a1,sp,168 + c005179c: 0028 addi a0,sp,8 bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4474 U->expn = 0; - c00515ce: fd02 sd zero,184(sp) + c005179e: fd02 sd zero,184(sp) bf_cmp_lt(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:279 - c00515d0: 83bfc0ef jal ra,c004de0a + c00517a0: 83bfc0ef jal ra,c004dfda bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4475 if (bf_cmp_lt(T, U)) { - c00515d4: 00055663 bgez a0,c00515e0 + c00517a4: 00055663 bgez a0,c00517b0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4476 T->expn++; - c00515d8: 67e2 ld a5,24(sp) + c00517a8: 67e2 ld a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4477 n--; - c00515da: 1afd addi s5,s5,-1 + c00517aa: 1afd addi s5,s5,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4476 T->expn++; - c00515dc: 0785 addi a5,a5,1 - c00515de: ec3e sd a5,24(sp) + c00517ac: 0785 addi a5,a5,1 + c00517ae: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4479 bf_delete(U); - c00515e0: 1128 addi a0,sp,168 - c00515e2: eaafb0ef jal ra,c004cc8c + c00517b0: 1128 addi a0,sp,168 + c00517b2: eaafb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4486 K = bf_isqrt((prec + 1) / 2); - c00515e6: 00140513 addi a0,s0,1 - c00515ea: 8105 srli a0,a0,0x1 - c00515ec: ddcfd0ef jal ra,c004ebc8 + c00517b6: 00140513 addi a0,s0,1 + c00517ba: 8105 srli a0,a0,0x1 + c00517bc: ddcfd0ef jal ra,c004ed98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4488 l = prec / (2 * K) + 1; - c00515f0: 00151913 slli s2,a0,0x1 - c00515f4: 03245933 divu s2,s0,s2 + c00517c0: 00151913 slli s2,a0,0x1 + c00517c4: 03245933 divu s2,s0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4490 prec1 = prec + K + 2 * l + 32; - c00515f8: 02040413 addi s0,s0,32 - c00515fc: 942a add s0,s0,a0 + c00517c8: 02040413 addi s0,s0,32 + c00517cc: 942a add s0,s0,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00515fe: 56fd li a3,-1 + c00517ce: 56fd li a3,-1 bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4497 bf_add_si(T, T, -1, BF_PREC_INF, BF_RNDN); - c0051600: 002c addi a1,sp,8 + c00517d0: 002c addi a1,sp,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4486 K = bf_isqrt((prec + 1) / 2); - c0051602: 89aa mv s3,a0 + c00517d2: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4497 bf_add_si(T, T, -1, BF_PREC_INF, BF_RNDN); - c0051604: 4701 li a4,0 - c0051606: 567d li a2,-1 - c0051608: 852e mv a0,a1 + c00517d4: 4701 li a4,0 + c00517d6: 567d li a2,-1 + c00517d8: 852e mv a0,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005160a: f852 sd s4,48(sp) + c00517da: f852 sd s4,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005160c: dc02 sw zero,56(sp) + c00517dc: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005160e: e482 sd zero,72(sp) + c00517de: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051610: e882 sd zero,80(sp) + c00517e0: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051612: ecd2 sd s4,88(sp) + c00517e2: ecd2 sd s4,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051614: d082 sw zero,96(sp) + c00517e4: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051616: f882 sd zero,112(sp) + c00517e6: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051618: fc82 sd zero,120(sp) + c00517e8: fc82 sd zero,120(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4500 for(i = 0; i < K; i++) { - c005161a: 4b01 li s6,0 + c00517ea: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4488 l = prec / (2 * K) + 1; - c005161c: 0905 addi s2,s2,1 + c00517ec: 0905 addi s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4490 prec1 = prec + K + 2 * l + 32; - c005161e: 00191793 slli a5,s2,0x1 - c0051622: 943e add s0,s0,a5 + c00517ee: 00191793 slli a5,s2,0x1 + c00517f2: 943e add s0,s0,a5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051624: 03f69793 slli a5,a3,0x3f + c00517f4: 03f69793 slli a5,a3,0x3f bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4497 bf_add_si(T, T, -1, BF_PREC_INF, BF_RNDN); - c0051628: 8289 srli a3,a3,0x2 + c00517f8: 8289 srli a3,a3,0x2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005162a: e0be sd a5,64(sp) - c005162c: f4be sd a5,104(sp) + c00517fa: e0be sd a5,64(sp) + c00517fc: f4be sd a5,104(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4497 bf_add_si(T, T, -1, BF_PREC_INF, BF_RNDN); - c005162e: ea9fd0ef jal ra,c004f4d6 + c00517fe: ea9fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4500 (discriminator 1) for(i = 0; i < K; i++) { - c0051632: 0d3b4c63 blt s6,s3,c005170a + c0051802: 0d3b4c63 blt s6,s3,c00518da bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051636: 57fd li a5,-1 - c0051638: 17fe slli a5,a5,0x3f + c0051806: 57fd li a5,-1 + c0051808: 17fe slli a5,a5,0x3f bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4519 bf_add_si(Y, T, 2, prec1, BF_RNDN); - c005163a: 4701 li a4,0 - c005163c: 86a2 mv a3,s0 - c005163e: 4609 li a2,2 - c0051640: 002c addi a1,sp,8 - c0051642: 0108 addi a0,sp,128 + c005180a: 4701 li a4,0 + c005180c: 86a2 mv a3,s0 + c005180e: 4609 li a2,2 + c0051810: 002c addi a1,sp,8 + c0051812: 0108 addi a0,sp,128 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051644: e93e sd a5,144(sp) - c0051646: fd3e sd a5,184(sp) + c0051814: e93e sd a5,144(sp) + c0051816: fd3e sd a5,184(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051648: e152 sd s4,128(sp) + c0051818: e152 sd s4,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005164a: c502 sw zero,136(sp) + c005181a: c502 sw zero,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005164c: ed02 sd zero,152(sp) + c005181c: ed02 sd zero,152(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005164e: f102 sd zero,160(sp) + c005181e: f102 sd zero,160(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051650: f552 sd s4,168(sp) + c0051820: f552 sd s4,168(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051652: d902 sw zero,176(sp) + c0051822: d902 sw zero,176(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051654: e182 sd zero,192(sp) + c0051824: e182 sd zero,192(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051656: e582 sd zero,200(sp) + c0051826: e582 sd zero,200(sp) bf_log_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4519 bf_add_si(Y, T, 2, prec1, BF_RNDN); - c0051658: e7ffd0ef jal ra,c004f4d6 + c0051828: e7ffd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4520 bf_div(Y, T, Y, prec1, BF_RNDN); - c005165c: 0110 addi a2,sp,128 - c005165e: 4701 li a4,0 - c0051660: 86a2 mv a3,s0 - c0051662: 002c addi a1,sp,8 - c0051664: 8532 mv a0,a2 - c0051666: ac1fd0ef jal ra,c004f126 + c005182c: 0110 addi a2,sp,128 + c005182e: 4701 li a4,0 + c0051830: 86a2 mv a3,s0 + c0051832: 002c addi a1,sp,8 + c0051834: 8532 mv a0,a2 + c0051836: ac1fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4522 bf_mul(Y2, Y, Y, prec1, BF_RNDN); - c005166a: 0110 addi a2,sp,128 - c005166c: 85b2 mv a1,a2 - c005166e: 4701 li a4,0 - c0051670: 86a2 mv a3,s0 - c0051672: 1128 addi a0,sp,168 - c0051674: a66fd0ef jal ra,c004e8da + c005183a: 0110 addi a2,sp,128 + c005183c: 85b2 mv a1,a2 + c005183e: 4701 li a4,0 + c0051840: 86a2 mv a3,s0 + c0051842: 1128 addi a0,sp,168 + c0051844: a66fd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4523 bf_set_ui(r, 0); - c0051678: 4581 li a1,0 - c005167a: 8526 mv a0,s1 - c005167c: a01fb0ef jal ra,c004d07c + c0051848: 4581 li a1,0 + c005184a: 8526 mv a0,s1 + c005184c: a01fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4524 (discriminator 1) for(i = l; i >= 1; i--) { - c0051680: 0d204263 bgtz s2,c0051744 + c0051850: 0d204263 bgtz s2,c0051914 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4531 bf_add_si(r, r, 1, prec1, BF_RNDN); - c0051684: 86a2 mv a3,s0 - c0051686: 85a6 mv a1,s1 - c0051688: 4701 li a4,0 - c005168a: 4605 li a2,1 - c005168c: 8526 mv a0,s1 - c005168e: e49fd0ef jal ra,c004f4d6 + c0051854: 86a2 mv a3,s0 + c0051856: 85a6 mv a1,s1 + c0051858: 4701 li a4,0 + c005185a: 4605 li a2,1 + c005185c: 8526 mv a0,s1 + c005185e: e49fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4532 bf_mul(r, r, Y, prec1, BF_RNDN); - c0051692: 4701 li a4,0 - c0051694: 86a2 mv a3,s0 - c0051696: 0110 addi a2,sp,128 - c0051698: 85a6 mv a1,s1 - c005169a: 8526 mv a0,s1 - c005169c: a3efd0ef jal ra,c004e8da + c0051862: 4701 li a4,0 + c0051864: 86a2 mv a3,s0 + c0051866: 0110 addi a2,sp,128 + c0051868: 85a6 mv a1,s1 + c005186a: 8526 mv a0,s1 + c005186c: a3efd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4533 bf_delete(Y); - c00516a0: 0108 addi a0,sp,128 - c00516a2: deafb0ef jal ra,c004cc8c + c0051870: 0108 addi a0,sp,128 + c0051872: deafb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4534 bf_delete(Y2); - c00516a6: 1128 addi a0,sp,168 - c00516a8: de4fb0ef jal ra,c004cc8c + c0051876: 1128 addi a0,sp,168 + c0051878: de4fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4536 bf_delete(V); - c00516ac: 08a8 addi a0,sp,88 - c00516ae: ddefb0ef jal ra,c004cc8c + c005187c: 08a8 addi a0,sp,88 + c005187e: ddefb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4537 bf_delete(U); - c00516b2: 1808 addi a0,sp,48 - c00516b4: dd8fb0ef jal ra,c004cc8c + c0051882: 1808 addi a0,sp,48 + c0051884: dd8fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4541 bf_mul_2exp(r, K + 1, BF_PREC_INF, BF_RNDZ); - c00516b8: 567d li a2,-1 - c00516ba: 4685 li a3,1 - c00516bc: 00198593 addi a1,s3,1 - c00516c0: 8209 srli a2,a2,0x2 - c00516c2: 8526 mv a0,s1 - c00516c4: c82fd0ef jal ra,c004eb46 + c0051888: 567d li a2,-1 + c005188a: 4685 li a3,1 + c005188c: 00198593 addi a1,s3,1 + c0051890: 8209 srli a2,a2,0x2 + c0051892: 8526 mv a0,s1 + c0051894: c82fd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4544 bf_const_log2(T, prec1, BF_RNDF); - c00516c8: 85a2 mv a1,s0 - c00516ca: 4619 li a2,6 - c00516cc: 0028 addi a0,sp,8 - c00516ce: be7ff0ef jal ra,c00512b4 + c0051898: 85a2 mv a1,s0 + c005189a: 4619 li a2,6 + c005189c: 0028 addi a0,sp,8 + c005189e: be7ff0ef jal ra,c0051484 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4545 bf_mul_si(T, T, n, prec1, BF_RNDN); - c00516d2: 002c addi a1,sp,8 - c00516d4: 86a2 mv a3,s0 - c00516d6: 8656 mv a2,s5 - c00516d8: 4701 li a4,0 - c00516da: 852e mv a0,a1 - c00516dc: da9fd0ef jal ra,c004f484 + c00518a2: 002c addi a1,sp,8 + c00518a4: 86a2 mv a3,s0 + c00518a6: 8656 mv a2,s5 + c00518a8: 4701 li a4,0 + c00518aa: 852e mv a0,a1 + c00518ac: da9fd0ef jal ra,c004f654 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4546 bf_add(r, r, T, prec1, BF_RNDN); - c00516e0: 86a2 mv a3,s0 - c00516e2: 0030 addi a2,sp,8 - c00516e4: 85a6 mv a1,s1 - c00516e6: 4701 li a4,0 - c00516e8: 8526 mv a0,s1 - c00516ea: f0cfd0ef jal ra,c004edf6 + c00518b0: 86a2 mv a3,s0 + c00518b2: 0030 addi a2,sp,8 + c00518b4: 85a6 mv a1,s1 + c00518b6: 4701 li a4,0 + c00518b8: 8526 mv a0,s1 + c00518ba: f0cfd0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4548 bf_delete(T); - c00516ee: 0028 addi a0,sp,8 - c00516f0: d9cfb0ef jal ra,c004cc8c + c00518be: 0028 addi a0,sp,8 + c00518c0: d9cfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4550 } - c00516f4: 60b2 ld ra,264(sp) - c00516f6: 6412 ld s0,256(sp) - c00516f8: 74ee ld s1,248(sp) - c00516fa: 794e ld s2,240(sp) - c00516fc: 79ae ld s3,232(sp) - c00516fe: 7a0e ld s4,224(sp) - c0051700: 6aee ld s5,216(sp) - c0051702: 6b4e ld s6,208(sp) - c0051704: 4541 li a0,16 - c0051706: 6151 addi sp,sp,272 - c0051708: 8082 ret + c00518c4: 60b2 ld ra,264(sp) + c00518c6: 6412 ld s0,256(sp) + c00518c8: 74ee ld s1,248(sp) + c00518ca: 794e ld s2,240(sp) + c00518cc: 79ae ld s3,232(sp) + c00518ce: 7a0e ld s4,224(sp) + c00518d0: 6aee ld s5,216(sp) + c00518d2: 6b4e ld s6,208(sp) + c00518d4: 4541 li a0,16 + c00518d6: 6151 addi sp,sp,272 + c00518d8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4502 (discriminator 3) bf_add_si(U, T, 1, prec1, BF_RNDN); - c005170a: 4701 li a4,0 - c005170c: 86a2 mv a3,s0 - c005170e: 4605 li a2,1 - c0051710: 002c addi a1,sp,8 - c0051712: 1808 addi a0,sp,48 - c0051714: dc3fd0ef jal ra,c004f4d6 + c00518da: 4701 li a4,0 + c00518dc: 86a2 mv a3,s0 + c00518de: 4605 li a2,1 + c00518e0: 002c addi a1,sp,8 + c00518e2: 1808 addi a0,sp,48 + c00518e4: dc3fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4503 (discriminator 3) bf_sqrt(V, U, prec1, BF_RNDF); - c0051718: 4699 li a3,6 - c005171a: 8622 mv a2,s0 - c005171c: 180c addi a1,sp,48 - c005171e: 08a8 addi a0,sp,88 - c0051720: d42fd0ef jal ra,c004ec62 + c00518e8: 4699 li a3,6 + c00518ea: 8622 mv a2,s0 + c00518ec: 180c addi a1,sp,48 + c00518ee: 08a8 addi a0,sp,88 + c00518f0: d42fd0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4504 (discriminator 3) bf_add_si(U, V, 1, prec1, BF_RNDN); - c0051724: 4701 li a4,0 - c0051726: 86a2 mv a3,s0 - c0051728: 4605 li a2,1 - c005172a: 08ac addi a1,sp,88 - c005172c: 1808 addi a0,sp,48 - c005172e: da9fd0ef jal ra,c004f4d6 + c00518f4: 4701 li a4,0 + c00518f6: 86a2 mv a3,s0 + c00518f8: 4605 li a2,1 + c00518fa: 08ac addi a1,sp,88 + c00518fc: 1808 addi a0,sp,48 + c00518fe: da9fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4505 (discriminator 3) bf_div(T, T, U, prec1, BF_RNDN); - c0051732: 002c addi a1,sp,8 - c0051734: 4701 li a4,0 - c0051736: 86a2 mv a3,s0 - c0051738: 1810 addi a2,sp,48 - c005173a: 852e mv a0,a1 - c005173c: 9ebfd0ef jal ra,c004f126 + c0051902: 002c addi a1,sp,8 + c0051904: 4701 li a4,0 + c0051906: 86a2 mv a3,s0 + c0051908: 1810 addi a2,sp,48 + c005190a: 852e mv a0,a1 + c005190c: 9ebfd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4500 (discriminator 3) for(i = 0; i < K; i++) { - c0051740: 0b05 addi s6,s6,1 - c0051742: bdc5 j c0051632 + c0051910: 0b05 addi s6,s6,1 + c0051912: bdc5 j c0051802 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4525 (discriminator 3) bf_set_ui(U, 1); - c0051744: 4585 li a1,1 - c0051746: 1808 addi a0,sp,48 - c0051748: 935fb0ef jal ra,c004d07c + c0051914: 4585 li a1,1 + c0051916: 1808 addi a0,sp,48 + c0051918: 935fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4526 (discriminator 3) bf_set_ui(V, 2 * i + 1); - c005174c: 00191593 slli a1,s2,0x1 - c0051750: 0585 addi a1,a1,1 - c0051752: 08a8 addi a0,sp,88 - c0051754: 929fb0ef jal ra,c004d07c + c005191c: 00191593 slli a1,s2,0x1 + c0051920: 0585 addi a1,a1,1 + c0051922: 08a8 addi a0,sp,88 + c0051924: 929fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4527 (discriminator 3) bf_div(U, U, V, prec1, BF_RNDN); - c0051758: 180c addi a1,sp,48 - c005175a: 4701 li a4,0 - c005175c: 86a2 mv a3,s0 - c005175e: 08b0 addi a2,sp,88 - c0051760: 852e mv a0,a1 - c0051762: 9c5fd0ef jal ra,c004f126 + c0051928: 180c addi a1,sp,48 + c005192a: 4701 li a4,0 + c005192c: 86a2 mv a3,s0 + c005192e: 08b0 addi a2,sp,88 + c0051930: 852e mv a0,a1 + c0051932: 9c5fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4528 (discriminator 3) bf_add(r, r, U, prec1, BF_RNDN); - c0051766: 4701 li a4,0 - c0051768: 86a2 mv a3,s0 - c005176a: 1810 addi a2,sp,48 - c005176c: 85a6 mv a1,s1 - c005176e: 8526 mv a0,s1 - c0051770: e86fd0ef jal ra,c004edf6 + c0051936: 4701 li a4,0 + c0051938: 86a2 mv a3,s0 + c005193a: 1810 addi a2,sp,48 + c005193c: 85a6 mv a1,s1 + c005193e: 8526 mv a0,s1 + c0051940: e86fd0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4529 (discriminator 3) bf_mul(r, r, Y2, prec1, BF_RNDN); - c0051774: 4701 li a4,0 - c0051776: 86a2 mv a3,s0 - c0051778: 1130 addi a2,sp,168 - c005177a: 85a6 mv a1,s1 - c005177c: 8526 mv a0,s1 - c005177e: 95cfd0ef jal ra,c004e8da + c0051944: 4701 li a4,0 + c0051946: 86a2 mv a3,s0 + c0051948: 1130 addi a2,sp,168 + c005194a: 85a6 mv a1,s1 + c005194c: 8526 mv a0,s1 + c005194e: 95cfd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4524 (discriminator 3) for(i = l; i >= 1; i--) { - c0051782: 197d addi s2,s2,-1 - c0051784: bdf5 j c0051680 + c0051952: 197d addi s2,s2,-1 + c0051954: bdf5 j c0051850 -00000000c0051786 : +00000000c0051956 : bf_const_pi_signed(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4219 return bf_const_get(T, prec, flags, &s->pi_cache, bf_const_pi_internal, - c0051786: 6114 ld a3,0(a0) - c0051788: 4781 li a5,0 - c005178a: ffffe717 auipc a4,0xffffe - c005178e: c3470713 addi a4,a4,-972 # c004f3be - c0051792: 04068693 addi a3,a3,64 - c0051796: 808fc06f j c004d79e - -00000000c005179a : + c0051956: 6114 ld a3,0(a0) + c0051958: 4781 li a5,0 + c005195a: ffffe717 auipc a4,0xffffe + c005195e: c3470713 addi a4,a4,-972 # c004f58e + c0051962: 04068693 addi a3,a3,64 + c0051966: 808fc06f j c004d96e + +00000000c005196a : bf_sincos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4864 static int bf_sincos(bf_t *s, bf_t *c, const bf_t *a, limb_t prec) { - c005179a: 7111 addi sp,sp,-256 - c005179c: fd86 sd ra,248(sp) - c005179e: f9a2 sd s0,240(sp) - c00517a0: f5a6 sd s1,232(sp) - c00517a2: f1ca sd s2,224(sp) - c00517a4: edce sd s3,216(sp) - c00517a6: e9d2 sd s4,208(sp) - c00517a8: e5d6 sd s5,200(sp) - c00517aa: e1da sd s6,192(sp) - c00517ac: fd5e sd s7,184(sp) - c00517ae: f962 sd s8,176(sp) - c00517b0: f566 sd s9,168(sp) - c00517b2: f16a sd s10,160(sp) - c00517b4: ed6e sd s11,152(sp) + c005196a: 7111 addi sp,sp,-256 + c005196c: fd86 sd ra,248(sp) + c005196e: f9a2 sd s0,240(sp) + c0051970: f5a6 sd s1,232(sp) + c0051972: f1ca sd s2,224(sp) + c0051974: edce sd s3,216(sp) + c0051976: e9d2 sd s4,208(sp) + c0051978: e5d6 sd s5,200(sp) + c005197a: e1da sd s6,192(sp) + c005197c: fd5e sd s7,184(sp) + c005197e: f962 sd s8,176(sp) + c0051980: f566 sd s9,168(sp) + c0051982: f16a sd s10,160(sp) + c0051984: ed6e sd s11,152(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4872 bf_t U_s, *U = &U_s; bf_t r_s, *r = &r_s; @@ -225178,26 +225376,26 @@ static int bf_sincos(bf_t *s, bf_t *c, const bf_t *a, limb_t prec) int is_neg; assert(c != a && s != a); - c00517b6: 00b60663 beq a2,a1,c00517c2 - c00517ba: 84aa mv s1,a0 - c00517bc: 89b2 mv s3,a2 + c0051986: 00b60663 beq a2,a1,c0051992 + c005198a: 84aa mv s1,a0 + c005198c: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4872 (discriminator 2) - c00517be: 00a61c63 bne a2,a0,c00517d6 + c005198e: 00a61c63 bne a2,a0,c00519a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4872 (discriminator 3) - c00517c2: 6585 lui a1,0x1 - c00517c4: 4601 li a2,0 - c00517c6: 30858593 addi a1,a1,776 # 1308 <__clzdi2-0xbfffecf8> - c00517ca: 00021517 auipc a0,0x21 - c00517ce: b4e50513 addi a0,a0,-1202 # c0072318 - c00517d2: 246020ef jal ra,c0053a18 <__assert> + c0051992: 6585 lui a1,0x1 + c0051994: 4601 li a2,0 + c0051996: 30858593 addi a1,a1,776 # 1308 <__clzdi2-0xbfffecf8> + c005199a: 00021517 auipc a0,0x21 + c005199e: bde50513 addi a0,a0,-1058 # c0072578 + c00519a2: 246020ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4865 bf_context_t *s1 = a->ctx; - c00517d6: 621c ld a5,0(a2) + c00519a6: 621c ld a5,0(a2) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00517d8: 5bfd li s7,-1 - c00517da: 03fb9d13 slli s10,s7,0x3f + c00519a8: 5bfd li s7,-1 + c00519aa: 03fb9d13 slli s10,s7,0x3f bf_sincos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4879 bf_init(s1, T); @@ -225206,80 +225404,80 @@ bf_sincos(): /* XXX: precision analysis */ K = bf_isqrt(prec / 2); - c00517de: 0016d513 srli a0,a3,0x1 - c00517e2: 8436 mv s0,a3 + c00519ae: 0016d513 srli a0,a3,0x1 + c00519b2: 8436 mv s0,a3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00517e4: ec3e sd a5,24(sp) - c00517e6: e0be sd a5,64(sp) - c00517e8: f4be sd a5,104(sp) - c00517ea: 892e mv s2,a1 + c00519b4: ec3e sd a5,24(sp) + c00519b6: e0be sd a5,64(sp) + c00519b8: f4be sd a5,104(sp) + c00519ba: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00517ec: d002 sw zero,32(sp) + c00519bc: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00517ee: f46a sd s10,40(sp) + c00519be: f46a sd s10,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00517f0: f802 sd zero,48(sp) + c00519c0: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00517f2: fc02 sd zero,56(sp) + c00519c2: fc02 sd zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00517f4: c482 sw zero,72(sp) + c00519c4: c482 sw zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00517f6: e8ea sd s10,80(sp) + c00519c6: e8ea sd s10,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00517f8: ec82 sd zero,88(sp) + c00519c8: ec82 sd zero,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00517fa: f082 sd zero,96(sp) + c00519ca: f082 sd zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00517fc: d882 sw zero,112(sp) + c00519cc: d882 sw zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00517fe: fcea sd s10,120(sp) + c00519ce: fcea sd s10,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051800: e102 sd zero,128(sp) + c00519d0: e102 sd zero,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051802: e502 sd zero,136(sp) + c00519d2: e502 sd zero,136(sp) bf_sincos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4879 K = bf_isqrt(prec / 2); - c0051804: bc4fd0ef jal ra,c004ebc8 + c00519d4: bc4fd0ef jal ra,c004ed98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4880 l = prec / (2 * K) + 1; - c0051808: 00151793 slli a5,a0,0x1 - c005180c: 02f45ab3 divu s5,s0,a5 + c00519d8: 00151793 slli a5,a0,0x1 + c00519dc: 02f45ab3 divu s5,s0,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4881 prec1 = prec + 2 * K + l + 8; - c0051810: 008786b3 add a3,a5,s0 + c00519e0: 008786b3 add a3,a5,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4884 /* after the modulo reduction, -pi/4 <= T <= pi/4 */ if (a->expn <= -1) { - c0051814: 0109b783 ld a5,16(s3) + c00519e4: 0109b783 ld a5,16(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4879 K = bf_isqrt(prec / 2); - c0051818: 8b2a mv s6,a0 + c00519e8: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4880 l = prec / (2 * K) + 1; - c005181a: 0a85 addi s5,s5,1 + c00519ea: 0a85 addi s5,s5,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4881 prec1 = prec + 2 * K + l + 8; - c005181c: 96d6 add a3,a3,s5 - c005181e: 00868413 addi s0,a3,8 + c00519ec: 96d6 add a3,a3,s5 + c00519ee: 00868413 addi s0,a3,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4884 if (a->expn <= -1) { - c0051822: 0607c663 bltz a5,c005188e + c00519f2: 0607c663 bltz a5,c0051a5e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4890 /* abs(a) <= 0.25: no modulo reduction needed */ bf_set(T, a); @@ -225287,89 +225485,89 @@ bf_sincos(): } else { slimb_t cancel; cancel = 0; - c0051826: 4c81 li s9,0 + c00519f6: 4c81 li s9,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4894 for(;;) { prec2 = prec1 + a->expn + cancel; bf_const_pi(U, prec2, BF_RNDF); bf_mul_2exp(U, -1, BF_PREC_INF, BF_RNDZ); - c0051828: 002bdb93 srli s7,s7,0x2 + c00519f8: 002bdb93 srli s7,s7,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4898 bf_remquo(&mod, T, a, U, prec2, BF_RNDN, BF_RNDN); // printf("T.expn=%ld prec2=%ld\n", T->expn, prec2); if (mod == 0 || (T->expn != BF_EXP_ZERO && (T->expn + prec2) >= (prec1 - 1))) - c005182c: 00768c13 addi s8,a3,7 + c00519fc: 00768c13 addi s8,a3,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4901 break; /* increase the number of bits until the precision is good enough */ cancel = bf_max(-T->expn, (cancel + 1) * 3 / 2); - c0051830: 4d8d li s11,3 + c0051a00: 4d8d li s11,3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4892 prec2 = prec1 + a->expn + cancel; - c0051832: 0109ba03 ld s4,16(s3) + c0051a02: 0109ba03 ld s4,16(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4893 bf_const_pi(U, prec2, BF_RNDF); - c0051836: 4619 li a2,6 - c0051838: 0088 addi a0,sp,64 + c0051a06: 4619 li a2,6 + c0051a08: 0088 addi a0,sp,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4892 prec2 = prec1 + a->expn + cancel; - c005183a: 9a22 add s4,s4,s0 - c005183c: 9a66 add s4,s4,s9 + c0051a0a: 9a22 add s4,s4,s0 + c0051a0c: 9a66 add s4,s4,s9 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4893 bf_const_pi(U, prec2, BF_RNDF); - c005183e: 85d2 mv a1,s4 - c0051840: f47ff0ef jal ra,c0051786 + c0051a0e: 85d2 mv a1,s4 + c0051a10: f47ff0ef jal ra,c0051956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4894 bf_mul_2exp(U, -1, BF_PREC_INF, BF_RNDZ); - c0051844: 4685 li a3,1 - c0051846: 865e mv a2,s7 - c0051848: 55fd li a1,-1 - c005184a: 0088 addi a0,sp,64 - c005184c: afafd0ef jal ra,c004eb46 + c0051a14: 4685 li a3,1 + c0051a16: 865e mv a2,s7 + c0051a18: 55fd li a1,-1 + c0051a1a: 0088 addi a0,sp,64 + c0051a1c: afafd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4895 bf_remquo(&mod, T, a, U, prec2, BF_RNDN, BF_RNDN); - c0051850: 4781 li a5,0 - c0051852: 4801 li a6,0 - c0051854: 8752 mv a4,s4 - c0051856: 0094 addi a3,sp,64 - c0051858: 864e mv a2,s3 - c005185a: 082c addi a1,sp,24 - c005185c: 0808 addi a0,sp,16 - c005185e: abbfe0ef jal ra,c0050318 + c0051a20: 4781 li a5,0 + c0051a22: 4801 li a6,0 + c0051a24: 8752 mv a4,s4 + c0051a26: 0094 addi a3,sp,64 + c0051a28: 864e mv a2,s3 + c0051a2a: 082c addi a1,sp,24 + c0051a2c: 0808 addi a0,sp,16 + c0051a2e: abbfe0ef jal ra,c00504e8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4897 if (mod == 0 || (T->expn != BF_EXP_ZERO && - c0051862: 67c2 ld a5,16(sp) - c0051864: 0e078863 beqz a5,c0051954 + c0051a32: 67c2 ld a5,16(sp) + c0051a34: 0e078863 beqz a5,c0051b24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4897 (discriminator 1) - c0051868: 7722 ld a4,40(sp) - c005186a: 4889 li a7,2 - c005186c: 01a70563 beq a4,s10,c0051876 + c0051a38: 7722 ld a4,40(sp) + c0051a3a: 4889 li a7,2 + c0051a3c: 01a70563 beq a4,s10,c0051a46 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4898 (discriminator 2) (T->expn + prec2) >= (prec1 - 1))) - c0051870: 9a3a add s4,s4,a4 + c0051a40: 9a3a add s4,s4,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4897 (discriminator 2) if (mod == 0 || (T->expn != BF_EXP_ZERO && - c0051872: 0f8a5163 bge s4,s8,c0051954 + c0051a42: 0f8a5163 bge s4,s8,c0051b24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4901 cancel = bf_max(-T->expn, (cancel + 1) * 3 / 2); - c0051876: 001c8793 addi a5,s9,1 - c005187a: 03b787b3 mul a5,a5,s11 - c005187e: 40e00cb3 neg s9,a4 - c0051882: 0317c7b3 div a5,a5,a7 + c0051a46: 001c8793 addi a5,s9,1 + c0051a4a: 03b787b3 mul a5,a5,s11 + c0051a4e: 40e00cb3 neg s9,a4 + c0051a52: 0317c7b3 div a5,a5,a7 /Users/Luppy/riscv/quickjs-nuttx/libbf.h:180 if (a > b) - c0051886: fafcd6e3 bge s9,a5,c0051832 - c005188a: 8cbe mv s9,a5 - c005188c: b75d j c0051832 + c0051a56: fafcd6e3 bge s9,a5,c0051a02 + c0051a5a: 8cbe mv s9,a5 + c0051a5c: b75d j c0051a02 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4886 bf_set(T, a); - c005188e: 85ce mv a1,s3 - c0051890: 0828 addi a0,sp,24 - c0051892: c2ffb0ef jal ra,c004d4c0 + c0051a5e: 85ce mv a1,s3 + c0051a60: 0828 addi a0,sp,24 + c0051a62: c2ffb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4887 mod = 0; - c0051896: e802 sd zero,16(sp) + c0051a66: e802 sd zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4909 } @@ -225377,25 +225575,25 @@ bf_sincos(): /* compute cosm1(x) = cos(x) - 1 */ bf_mul(T, T, T, prec1, BF_RNDN); - c0051898: 0830 addi a2,sp,24 - c005189a: 4701 li a4,0 - c005189c: 85b2 mv a1,a2 - c005189e: 86a2 mv a3,s0 - c00518a0: 8532 mv a0,a2 + c0051a68: 0830 addi a2,sp,24 + c0051a6a: 4701 li a4,0 + c0051a6c: 85b2 mv a1,a2 + c0051a6e: 86a2 mv a3,s0 + c0051a70: 8532 mv a0,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4906 is_neg = T->sign; - c00518a2: 5a02 lw s4,32(sp) + c0051a72: 5a02 lw s4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4909 bf_mul(T, T, T, prec1, BF_RNDN); - c00518a4: 836fd0ef jal ra,c004e8da + c0051a74: 836fd0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4910 bf_mul_2exp(T, -2 * K, BF_PREC_INF, BF_RNDZ); - c00518a8: 55f9 li a1,-2 - c00518aa: 02bb05b3 mul a1,s6,a1 - c00518ae: 59fd li s3,-1 - c00518b0: 0029d613 srli a2,s3,0x2 - c00518b4: 4685 li a3,1 - c00518b6: 0828 addi a0,sp,24 + c0051a78: 55f9 li a1,-2 + c0051a7a: 02bb05b3 mul a1,s6,a1 + c0051a7e: 59fd li s3,-1 + c0051a80: 0029d613 srli a2,s3,0x2 + c0051a84: 4685 li a3,1 + c0051a86: 0828 addi a0,sp,24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4918 -x^2/2 + x^4/4! - x^6/6! + ... */ @@ -225403,18 +225601,18 @@ bf_sincos(): for(i = l ; i >= 1; i--) { bf_set_ui(U, 2 * i - 1); bf_mul_ui(U, U, 2 * i, BF_PREC_INF, BF_RNDZ); - c00518b8: 0029d993 srli s3,s3,0x2 + c0051a88: 0029d993 srli s3,s3,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4910 bf_mul_2exp(T, -2 * K, BF_PREC_INF, BF_RNDZ); - c00518bc: a8afd0ef jal ra,c004eb46 + c0051a8c: a8afd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4915 bf_set_ui(r, 1); - c00518c0: 4585 li a1,1 - c00518c2: 10a8 addi a0,sp,104 - c00518c4: fb8fb0ef jal ra,c004d07c + c0051a90: 4585 li a1,1 + c0051a92: 10a8 addi a0,sp,104 + c0051a94: fb8fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4916 (discriminator 1) for(i = l ; i >= 1; i--) { - c00518c8: 09504963 bgtz s5,c005195a + c0051a98: 09504963 bgtz s5,c0051b2a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4925 bf_mul(r, r, U, prec1, BF_RNDN); bf_neg(r); @@ -225422,7 +225620,7 @@ bf_sincos(): bf_add_si(r, r, 1, prec1, BF_RNDN); } bf_delete(U); - c00518cc: 0088 addi a0,sp,64 + c0051a9c: 0088 addi a0,sp,64 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4932 /* undo argument reduction: cosm1(2*x)= 2*(2*cosm1(x)+cosm1(x)^2) @@ -225430,235 +225628,235 @@ bf_sincos(): for(i = 0; i < K; i++) { bf_mul(T, r, r, prec1, BF_RNDN); bf_mul_2exp(r, 1, BF_PREC_INF, BF_RNDZ); - c00518ce: 59fd li s3,-1 + c0051a9e: 59fd li s3,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4925 bf_delete(U); - c00518d0: bbcfb0ef jal ra,c004cc8c + c0051aa0: bbcfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4930 for(i = 0; i < K; i++) { - c00518d4: 4a81 li s5,0 + c0051aa4: 4a81 li s5,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4932 bf_mul_2exp(r, 1, BF_PREC_INF, BF_RNDZ); - c00518d6: 0029d993 srli s3,s3,0x2 + c0051aa6: 0029d993 srli s3,s3,0x2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4930 (discriminator 1) for(i = 0; i < K; i++) { - c00518da: 0d6acd63 blt s5,s6,c00519b4 + c0051aaa: 0d6acd63 blt s5,s6,c0051b84 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4936 bf_add(r, r, T, prec1, BF_RNDN); bf_mul_2exp(r, 1, BF_PREC_INF, BF_RNDZ); } bf_delete(T); - c00518de: 0828 addi a0,sp,24 - c00518e0: bacfb0ef jal ra,c004cc8c + c0051aae: 0828 addi a0,sp,24 + c0051ab0: bacfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4938 if (c) { - c00518e4: 02090463 beqz s2,c005190c + c0051ab4: 02090463 beqz s2,c0051adc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4939 if ((mod & 1) == 0) { - c00518e8: 67c2 ld a5,16(sp) - c00518ea: 8b85 andi a5,a5,1 - c00518ec: 10079063 bnez a5,c00519ec + c0051ab8: 67c2 ld a5,16(sp) + c0051aba: 8b85 andi a5,a5,1 + c0051abc: 10079063 bnez a5,c0051bbc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4940 bf_add_si(c, r, 1, prec1, BF_RNDN); - c00518f0: 4701 li a4,0 - c00518f2: 86a2 mv a3,s0 - c00518f4: 4605 li a2,1 - c00518f6: 10ac addi a1,sp,104 - c00518f8: 854a mv a0,s2 - c00518fa: bddfd0ef jal ra,c004f4d6 + c0051ac0: 4701 li a4,0 + c0051ac2: 86a2 mv a3,s0 + c0051ac4: 4605 li a2,1 + c0051ac6: 10ac addi a1,sp,104 + c0051ac8: 854a mv a0,s2 + c0051aca: bddfd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4945 } else { bf_sqrt_sin(c, r, prec1); c->sign = is_neg ^ 1; } c->sign ^= mod >> 1; - c00518fe: 67c2 ld a5,16(sp) - c0051900: 00892703 lw a4,8(s2) - c0051904: 8785 srai a5,a5,0x1 - c0051906: 8fb9 xor a5,a5,a4 - c0051908: 00f92423 sw a5,8(s2) + c0051ace: 67c2 ld a5,16(sp) + c0051ad0: 00892703 lw a4,8(s2) + c0051ad4: 8785 srai a5,a5,0x1 + c0051ad6: 8fb9 xor a5,a5,a4 + c0051ad8: 00f92423 sw a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4947 } if (s) { - c005190c: c08d beqz s1,c005192e + c0051adc: c08d beqz s1,c0051afe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4948 if ((mod & 1) == 0) { - c005190e: 67c2 ld a5,16(sp) - c0051910: 8b85 andi a5,a5,1 - c0051912: 0e079763 bnez a5,c0051a00 + c0051ade: 67c2 ld a5,16(sp) + c0051ae0: 8b85 andi a5,a5,1 + c0051ae2: 0e079763 bnez a5,c0051bd0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4949 bf_sqrt_sin(s, r, prec1); - c0051916: 8622 mv a2,s0 - c0051918: 10ac addi a1,sp,104 - c005191a: 8526 mv a0,s1 - c005191c: df4fd0ef jal ra,c004ef10 + c0051ae6: 8622 mv a2,s0 + c0051ae8: 10ac addi a1,sp,104 + c0051aea: 8526 mv a0,s1 + c0051aec: df4fd0ef jal ra,c004f0e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4950 s->sign = is_neg; - c0051920: 0144a423 sw s4,8(s1) + c0051af0: 0144a423 sw s4,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4954 } else { bf_add_si(s, r, 1, prec1, BF_RNDN); } s->sign ^= mod >> 1; - c0051924: 67c2 ld a5,16(sp) - c0051926: 4498 lw a4,8(s1) - c0051928: 8785 srai a5,a5,0x1 - c005192a: 8fb9 xor a5,a5,a4 - c005192c: c49c sw a5,8(s1) + c0051af4: 67c2 ld a5,16(sp) + c0051af6: 4498 lw a4,8(s1) + c0051af8: 8785 srai a5,a5,0x1 + c0051afa: 8fb9 xor a5,a5,a4 + c0051afc: c49c sw a5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4956 } bf_delete(r); - c005192e: 10a8 addi a0,sp,104 - c0051930: b5cfb0ef jal ra,c004cc8c + c0051afe: 10a8 addi a0,sp,104 + c0051b00: b5cfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4958 return BF_ST_INEXACT; } - c0051934: 70ee ld ra,248(sp) - c0051936: 744e ld s0,240(sp) - c0051938: 74ae ld s1,232(sp) - c005193a: 790e ld s2,224(sp) - c005193c: 69ee ld s3,216(sp) - c005193e: 6a4e ld s4,208(sp) - c0051940: 6aae ld s5,200(sp) - c0051942: 6b0e ld s6,192(sp) - c0051944: 7bea ld s7,184(sp) - c0051946: 7c4a ld s8,176(sp) - c0051948: 7caa ld s9,168(sp) - c005194a: 7d0a ld s10,160(sp) - c005194c: 6dea ld s11,152(sp) - c005194e: 4541 li a0,16 - c0051950: 6111 addi sp,sp,256 - c0051952: 8082 ret + c0051b04: 70ee ld ra,248(sp) + c0051b06: 744e ld s0,240(sp) + c0051b08: 74ae ld s1,232(sp) + c0051b0a: 790e ld s2,224(sp) + c0051b0c: 69ee ld s3,216(sp) + c0051b0e: 6a4e ld s4,208(sp) + c0051b10: 6aae ld s5,200(sp) + c0051b12: 6b0e ld s6,192(sp) + c0051b14: 7bea ld s7,184(sp) + c0051b16: 7c4a ld s8,176(sp) + c0051b18: 7caa ld s9,168(sp) + c0051b1a: 7d0a ld s10,160(sp) + c0051b1c: 6dea ld s11,152(sp) + c0051b1e: 4541 li a0,16 + c0051b20: 6111 addi sp,sp,256 + c0051b22: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4903 mod &= 3; - c0051954: 8b8d andi a5,a5,3 - c0051956: e83e sd a5,16(sp) - c0051958: b781 j c0051898 + c0051b24: 8b8d andi a5,a5,3 + c0051b26: e83e sd a5,16(sp) + c0051b28: b781 j c0051a68 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4917 bf_set_ui(U, 2 * i - 1); - c005195a: 001a9613 slli a2,s5,0x1 - c005195e: fff60593 addi a1,a2,-1 - c0051962: 0088 addi a0,sp,64 - c0051964: e432 sd a2,8(sp) - c0051966: f16fb0ef jal ra,c004d07c + c0051b2a: 001a9613 slli a2,s5,0x1 + c0051b2e: fff60593 addi a1,a2,-1 + c0051b32: 0088 addi a0,sp,64 + c0051b34: e432 sd a2,8(sp) + c0051b36: f16fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4918 bf_mul_ui(U, U, 2 * i, BF_PREC_INF, BF_RNDZ); - c005196a: 6622 ld a2,8(sp) - c005196c: 008c addi a1,sp,64 - c005196e: 4705 li a4,1 - c0051970: 86ce mv a3,s3 - c0051972: 852e mv a0,a1 - c0051974: 821fd0ef jal ra,c004f194 + c0051b3a: 6622 ld a2,8(sp) + c0051b3c: 008c addi a1,sp,64 + c0051b3e: 4705 li a4,1 + c0051b40: 86ce mv a3,s3 + c0051b42: 852e mv a0,a1 + c0051b44: 821fd0ef jal ra,c004f364 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4919 bf_div(U, T, U, prec1, BF_RNDN); - c0051978: 0090 addi a2,sp,64 - c005197a: 4701 li a4,0 - c005197c: 86a2 mv a3,s0 - c005197e: 082c addi a1,sp,24 - c0051980: 8532 mv a0,a2 - c0051982: fa4fd0ef jal ra,c004f126 + c0051b48: 0090 addi a2,sp,64 + c0051b4a: 4701 li a4,0 + c0051b4c: 86a2 mv a3,s0 + c0051b4e: 082c addi a1,sp,24 + c0051b50: 8532 mv a0,a2 + c0051b52: fa4fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4920 bf_mul(r, r, U, prec1, BF_RNDN); - c0051986: 10ac addi a1,sp,104 - c0051988: 4701 li a4,0 - c005198a: 86a2 mv a3,s0 - c005198c: 0090 addi a2,sp,64 - c005198e: 852e mv a0,a1 - c0051990: f4bfc0ef jal ra,c004e8da + c0051b56: 10ac addi a1,sp,104 + c0051b58: 4701 li a4,0 + c0051b5a: 86a2 mv a3,s0 + c0051b5c: 0090 addi a2,sp,64 + c0051b5e: 852e mv a0,a1 + c0051b60: f4bfc0ef jal ra,c004eaaa bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 r->sign ^= 1; - c0051994: 57c6 lw a5,112(sp) - c0051996: 0017c793 xori a5,a5,1 - c005199a: d8be sw a5,112(sp) + c0051b64: 57c6 lw a5,112(sp) + c0051b66: 0017c793 xori a5,a5,1 + c0051b6a: d8be sw a5,112(sp) bf_sincos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4922 if (i != 1) - c005199c: 4785 li a5,1 - c005199e: 00fa8963 beq s5,a5,c00519b0 + c0051b6c: 4785 li a5,1 + c0051b6e: 00fa8963 beq s5,a5,c0051b80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4923 bf_add_si(r, r, 1, prec1, BF_RNDN); - c00519a2: 10ac addi a1,sp,104 - c00519a4: 4701 li a4,0 - c00519a6: 86a2 mv a3,s0 - c00519a8: 4605 li a2,1 - c00519aa: 852e mv a0,a1 - c00519ac: b2bfd0ef jal ra,c004f4d6 + c0051b72: 10ac addi a1,sp,104 + c0051b74: 4701 li a4,0 + c0051b76: 86a2 mv a3,s0 + c0051b78: 4605 li a2,1 + c0051b7a: 852e mv a0,a1 + c0051b7c: b2bfd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4916 (discriminator 2) for(i = l ; i >= 1; i--) { - c00519b0: 1afd addi s5,s5,-1 - c00519b2: bf19 j c00518c8 + c0051b80: 1afd addi s5,s5,-1 + c0051b82: bf19 j c0051a98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4931 (discriminator 3) bf_mul(T, r, r, prec1, BF_RNDN); - c00519b4: 10b0 addi a2,sp,104 - c00519b6: 4701 li a4,0 - c00519b8: 85b2 mv a1,a2 - c00519ba: 86a2 mv a3,s0 - c00519bc: 0828 addi a0,sp,24 - c00519be: f1dfc0ef jal ra,c004e8da + c0051b84: 10b0 addi a2,sp,104 + c0051b86: 4701 li a4,0 + c0051b88: 85b2 mv a1,a2 + c0051b8a: 86a2 mv a3,s0 + c0051b8c: 0828 addi a0,sp,24 + c0051b8e: f1dfc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4932 (discriminator 3) bf_mul_2exp(r, 1, BF_PREC_INF, BF_RNDZ); - c00519c2: 4685 li a3,1 - c00519c4: 864e mv a2,s3 - c00519c6: 4585 li a1,1 - c00519c8: 10a8 addi a0,sp,104 - c00519ca: 97cfd0ef jal ra,c004eb46 + c0051b92: 4685 li a3,1 + c0051b94: 864e mv a2,s3 + c0051b96: 4585 li a1,1 + c0051b98: 10a8 addi a0,sp,104 + c0051b9a: 97cfd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4933 (discriminator 3) bf_add(r, r, T, prec1, BF_RNDN); - c00519ce: 10ac addi a1,sp,104 - c00519d0: 4701 li a4,0 - c00519d2: 86a2 mv a3,s0 - c00519d4: 0830 addi a2,sp,24 - c00519d6: 852e mv a0,a1 - c00519d8: c1efd0ef jal ra,c004edf6 + c0051b9e: 10ac addi a1,sp,104 + c0051ba0: 4701 li a4,0 + c0051ba2: 86a2 mv a3,s0 + c0051ba4: 0830 addi a2,sp,24 + c0051ba6: 852e mv a0,a1 + c0051ba8: c1efd0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4934 (discriminator 3) bf_mul_2exp(r, 1, BF_PREC_INF, BF_RNDZ); - c00519dc: 4685 li a3,1 - c00519de: 864e mv a2,s3 - c00519e0: 4585 li a1,1 - c00519e2: 10a8 addi a0,sp,104 - c00519e4: 962fd0ef jal ra,c004eb46 + c0051bac: 4685 li a3,1 + c0051bae: 864e mv a2,s3 + c0051bb0: 4585 li a1,1 + c0051bb2: 10a8 addi a0,sp,104 + c0051bb4: 962fd0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4930 (discriminator 3) for(i = 0; i < K; i++) { - c00519e8: 0a85 addi s5,s5,1 - c00519ea: bdc5 j c00518da + c0051bb8: 0a85 addi s5,s5,1 + c0051bba: bdc5 j c0051aaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4942 bf_sqrt_sin(c, r, prec1); - c00519ec: 8622 mv a2,s0 - c00519ee: 10ac addi a1,sp,104 - c00519f0: 854a mv a0,s2 - c00519f2: d1efd0ef jal ra,c004ef10 + c0051bbc: 8622 mv a2,s0 + c0051bbe: 10ac addi a1,sp,104 + c0051bc0: 854a mv a0,s2 + c0051bc2: d1efd0ef jal ra,c004f0e0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4943 c->sign = is_neg ^ 1; - c00519f6: 001a4793 xori a5,s4,1 - c00519fa: 00f92423 sw a5,8(s2) - c00519fe: b701 j c00518fe + c0051bc6: 001a4793 xori a5,s4,1 + c0051bca: 00f92423 sw a5,8(s2) + c0051bce: b701 j c0051ace /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4952 bf_add_si(s, r, 1, prec1, BF_RNDN); - c0051a00: 4701 li a4,0 - c0051a02: 86a2 mv a3,s0 - c0051a04: 4605 li a2,1 - c0051a06: 10ac addi a1,sp,104 - c0051a08: 8526 mv a0,s1 - c0051a0a: acdfd0ef jal ra,c004f4d6 - c0051a0e: bf19 j c0051924 - -00000000c0051a10 : + c0051bd0: 4701 li a4,0 + c0051bd2: 86a2 mv a3,s0 + c0051bd4: 4605 li a2,1 + c0051bd6: 10ac addi a1,sp,104 + c0051bd8: 8526 mv a0,s1 + c0051bda: acdfd0ef jal ra,c004f6a6 + c0051bde: bf19 j c0051af4 + +00000000c0051be0 : bf_cos_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4961 static int bf_cos_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) { - c0051a10: 86b2 mv a3,a2 + c0051be0: 86b2 mv a3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4962 return bf_sincos(NULL, r, a, prec); - c0051a12: 862e mv a2,a1 - c0051a14: 85aa mv a1,a0 - c0051a16: 4501 li a0,0 - c0051a18: d83ff06f j c005179a + c0051be2: 862e mv a2,a1 + c0051be4: 85aa mv a1,a0 + c0051be6: 4501 li a0,0 + c0051be8: d83ff06f j c005196a -00000000c0051a1c : +00000000c0051bec : bf_sin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4995 @@ -225667,14 +225865,14 @@ bf_sin_internal(): static int bf_sin_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) { - c0051a1c: 86b2 mv a3,a2 + c0051bec: 86b2 mv a3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4996 return bf_sincos(r, NULL, a, prec); - c0051a1e: 862e mv a2,a1 - c0051a20: 4581 li a1,0 - c0051a22: d79ff06f j c005179a + c0051bee: 862e mv a2,a1 + c0051bf0: 4581 li a1,0 + c0051bf2: d79ff06f j c005196a -00000000c0051a26 : +00000000c0051bf6 : bf_tan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5029 @@ -225683,13 +225881,13 @@ bf_tan_internal(): static int bf_tan_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) { - c0051a26: 715d addi sp,sp,-80 - c0051a28: e486 sd ra,72(sp) - c0051a2a: e0a2 sd s0,64(sp) + c0051bf6: 715d addi sp,sp,-80 + c0051bf8: e486 sd ra,72(sp) + c0051bfa: e0a2 sd s0,64(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051a2c: 611c ld a5,0(a0) + c0051bfc: 611c ld a5,0(a0) bf_tan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5035 bf_context_t *s = r->ctx; @@ -225698,70 +225896,70 @@ bf_tan_internal(): /* XXX: precision analysis */ prec1 = prec + 8; - c0051a2e: 00860693 addi a3,a2,8 + c0051bfe: 00860693 addi a3,a2,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5037 bf_init(s, T); bf_sincos(r, T, a, prec1); - c0051a32: 862e mv a2,a1 + c0051c02: 862e mv a2,a1 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051a34: ec3e sd a5,24(sp) + c0051c04: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051a36: 57fd li a5,-1 - c0051a38: 17fe slli a5,a5,0x3f + c0051c06: 57fd li a5,-1 + c0051c08: 17fe slli a5,a5,0x3f bf_tan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5037 bf_sincos(r, T, a, prec1); - c0051a3a: 082c addi a1,sp,24 + c0051c0a: 082c addi a1,sp,24 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5029 { - c0051a3c: 842a mv s0,a0 + c0051c0c: 842a mv s0,a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051a3e: f43e sd a5,40(sp) + c0051c0e: f43e sd a5,40(sp) bf_tan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5037 bf_sincos(r, T, a, prec1); - c0051a40: e436 sd a3,8(sp) + c0051c10: e436 sd a3,8(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051a42: d002 sw zero,32(sp) + c0051c12: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051a44: f802 sd zero,48(sp) + c0051c14: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051a46: fc02 sd zero,56(sp) + c0051c16: fc02 sd zero,56(sp) bf_tan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5037 bf_sincos(r, T, a, prec1); - c0051a48: d53ff0ef jal ra,c005179a + c0051c18: d53ff0ef jal ra,c005196a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5038 bf_div(r, r, T, prec1, BF_RNDF); - c0051a4c: 66a2 ld a3,8(sp) - c0051a4e: 0830 addi a2,sp,24 - c0051a50: 85a2 mv a1,s0 - c0051a52: 4719 li a4,6 - c0051a54: 8522 mv a0,s0 - c0051a56: ed0fd0ef jal ra,c004f126 + c0051c1c: 66a2 ld a3,8(sp) + c0051c1e: 0830 addi a2,sp,24 + c0051c20: 85a2 mv a1,s0 + c0051c22: 4719 li a4,6 + c0051c24: 8522 mv a0,s0 + c0051c26: ed0fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5039 bf_delete(T); - c0051a5a: 0828 addi a0,sp,24 - c0051a5c: a30fb0ef jal ra,c004cc8c + c0051c2a: 0828 addi a0,sp,24 + c0051c2c: a30fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5041 return BF_ST_INEXACT; } - c0051a60: 60a6 ld ra,72(sp) - c0051a62: 6406 ld s0,64(sp) - c0051a64: 4541 li a0,16 - c0051a66: 6161 addi sp,sp,80 - c0051a68: 8082 ret + c0051c30: 60a6 ld ra,72(sp) + c0051c32: 6406 ld s0,64(sp) + c0051c34: 4541 li a0,16 + c0051c36: 6161 addi sp,sp,80 + c0051c38: 8082 ret -00000000c0051a6a : +00000000c0051c3a : bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5077 @@ -225770,22 +225968,22 @@ bf_atan_internal(): static int bf_atan_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) { - c0051a6a: 7151 addi sp,sp,-240 - c0051a6c: f1a2 sd s0,224(sp) - c0051a6e: eda6 sd s1,216(sp) - c0051a70: e9ca sd s2,208(sp) - c0051a72: e5ce sd s3,200(sp) - c0051a74: e1d2 sd s4,192(sp) - c0051a76: fd56 sd s5,184(sp) - c0051a78: f55e sd s7,168(sp) - c0051a7a: f586 sd ra,232(sp) - c0051a7c: f95a sd s6,176(sp) + c0051c3a: 7151 addi sp,sp,-240 + c0051c3c: f1a2 sd s0,224(sp) + c0051c3e: eda6 sd s1,216(sp) + c0051c40: e9ca sd s2,208(sp) + c0051c42: e5ce sd s3,200(sp) + c0051c44: e1d2 sd s4,192(sp) + c0051c46: fd56 sd s5,184(sp) + c0051c48: f55e sd s7,168(sp) + c0051c4a: f586 sd ra,232(sp) + c0051c4c: f95a sd s6,176(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5078 bf_context_t *s = r->ctx; - c0051a7e: 00053b03 ld s6,0(a0) + c0051c4e: 00053b03 ld s6,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5077 { - c0051a82: 89aa mv s3,a0 + c0051c52: 89aa mv s3,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5088 bf_t X2_s, *X2 = &X2_s; int cmp_1; @@ -225793,125 +225991,125 @@ static int bf_atan_internal(bf_t *r, const bf_t *a, limb_t prec, /* XXX: precision analysis */ K = bf_isqrt((prec + 1) / 2); - c0051a84: 00160513 addi a0,a2,1 - c0051a88: 8105 srli a0,a0,0x1 + c0051c54: 00160513 addi a0,a2,1 + c0051c58: 8105 srli a0,a0,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5077 { - c0051a8a: 8432 mv s0,a2 - c0051a8c: 8a2e mv s4,a1 + c0051c5a: 8432 mv s0,a2 + c0051c5c: 8a2e mv s4,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5079 BOOL add_pi2 = (BOOL)(intptr_t)opaque; - c0051a8e: 0006849b sext.w s1,a3 + c0051c5e: 0006849b sext.w s1,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5088 K = bf_isqrt((prec + 1) / 2); - c0051a92: 936fd0ef jal ra,c004ebc8 + c0051c62: 936fd0ef jal ra,c004ed98 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5089 l = prec / (2 * K) + 1; - c0051a96: 00151913 slli s2,a0,0x1 - c0051a9a: 03245933 divu s2,s0,s2 + c0051c66: 00151913 slli s2,a0,0x1 + c0051c6a: 03245933 divu s2,s0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5090 prec1 = prec + K + 2 * l + 32; - c0051a9e: 02040413 addi s0,s0,32 - c0051aa2: 942a add s0,s0,a0 + c0051c6e: 02040413 addi s0,s0,32 + c0051c72: 942a add s0,s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5094 // printf("prec=%d K=%d l=%d prec1=%d\n", (int)prec, (int)K, (int)l, (int)prec1); bf_init(s, T); cmp_1 = (a->expn >= 1); /* a >= 1 */ - c0051aa4: 010a3b83 ld s7,16(s4) # 100010 <__clzdi2-0xbfeffff0> + c0051c74: 010a3b83 ld s7,16(s4) # 100010 <__clzdi2-0xbfeffff0> bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051aa8: e05a sd s6,0(sp) + c0051c78: e05a sd s6,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051aaa: c402 sw zero,8(sp) + c0051c7a: c402 sw zero,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051aac: ec02 sd zero,24(sp) + c0051c7c: ec02 sd zero,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051aae: f002 sd zero,32(sp) + c0051c7e: f002 sd zero,32(sp) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5088 K = bf_isqrt((prec + 1) / 2); - c0051ab0: 8aaa mv s5,a0 + c0051c80: 8aaa mv s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5089 l = prec / (2 * K) + 1; - c0051ab2: 0905 addi s2,s2,1 + c0051c82: 0905 addi s2,s2,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5090 prec1 = prec + K + 2 * l + 32; - c0051ab4: 00191793 slli a5,s2,0x1 - c0051ab8: 943e add s0,s0,a5 + c0051c84: 00191793 slli a5,s2,0x1 + c0051c88: 943e add s0,s0,a5 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051aba: 57fd li a5,-1 - c0051abc: 17fe slli a5,a5,0x3f - c0051abe: e83e sd a5,16(sp) + c0051c8a: 57fd li a5,-1 + c0051c8c: 17fe slli a5,a5,0x3f + c0051c8e: e83e sd a5,16(sp) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5095 if (cmp_1) { - c0051ac0: 11705963 blez s7,c0051bd2 + c0051c90: 11705963 blez s7,c0051da2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5096 bf_set_ui(T, 1); - c0051ac4: 4585 li a1,1 - c0051ac6: 850a mv a0,sp - c0051ac8: db4fb0ef jal ra,c004d07c + c0051c94: 4585 li a1,1 + c0051c96: 850a mv a0,sp + c0051c98: db4fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5097 bf_div(T, T, a, prec1, BF_RNDN); - c0051acc: 4701 li a4,0 - c0051ace: 86a2 mv a3,s0 - c0051ad0: 8652 mv a2,s4 - c0051ad2: 858a mv a1,sp - c0051ad4: 850a mv a0,sp - c0051ad6: e50fd0ef jal ra,c004f126 + c0051c9c: 4701 li a4,0 + c0051c9e: 86a2 mv a3,s0 + c0051ca0: 8652 mv a2,s4 + c0051ca2: 858a mv a1,sp + c0051ca4: 850a mv a0,sp + c0051ca6: e50fd0ef jal ra,c004f2f6 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051ada: 57fd li a5,-1 - c0051adc: 17fe slli a5,a5,0x3f + c0051caa: 57fd li a5,-1 + c0051cac: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051ade: f45a sd s6,40(sp) - c0051ae0: e8da sd s6,80(sp) - c0051ae2: fcda sd s6,120(sp) + c0051cae: f45a sd s6,40(sp) + c0051cb0: e8da sd s6,80(sp) + c0051cb2: fcda sd s6,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051ae4: d802 sw zero,48(sp) + c0051cb4: d802 sw zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051ae6: fc3e sd a5,56(sp) + c0051cb6: fc3e sd a5,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051ae8: e082 sd zero,64(sp) + c0051cb8: e082 sd zero,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051aea: e482 sd zero,72(sp) + c0051cba: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051aec: cc82 sw zero,88(sp) + c0051cbc: cc82 sw zero,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051aee: f0be sd a5,96(sp) + c0051cbe: f0be sd a5,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051af0: f482 sd zero,104(sp) + c0051cc0: f482 sd zero,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051af2: f882 sd zero,112(sp) + c0051cc2: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051af4: c102 sw zero,128(sp) + c0051cc4: c102 sw zero,128(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051af6: e53e sd a5,136(sp) + c0051cc6: e53e sd a5,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051af8: e902 sd zero,144(sp) + c0051cc8: e902 sd zero,144(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051afa: ed02 sd zero,152(sp) + c0051cca: ed02 sd zero,152(sp) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5109 /* argument reduction */ @@ -225920,17 +226118,17 @@ bf_atan_internal(): bf_init(s, V); bf_init(s, X2); for(i = 0; i < K; i++) { - c0051afc: 4b01 li s6,0 + c0051ccc: 4b01 li s6,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5111 (discriminator 1) /* T = T / (1 + sqrt(1 + T^2)) */ bf_mul(U, T, T, prec1, BF_RNDN); - c0051afe: 4701 li a4,0 - c0051b00: 86a2 mv a3,s0 - c0051b02: 860a mv a2,sp - c0051b04: 858a mv a1,sp + c0051cce: 4701 li a4,0 + c0051cd0: 86a2 mv a3,s0 + c0051cd2: 860a mv a2,sp + c0051cd4: 858a mv a1,sp /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5109 (discriminator 1) for(i = 0; i < K; i++) { - c0051b06: 0d5b4b63 blt s6,s5,c0051bdc + c0051cd6: 0d5b4b63 blt s6,s5,c0051dac /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5121 } @@ -225938,19 +226136,19 @@ bf_atan_internal(): x - x^3/3 + ... + (-1)^ l * y^(2*l + 1) / (2*l+1) */ bf_mul(X2, T, T, prec1, BF_RNDN); - c0051b0a: 18a8 addi a0,sp,120 - c0051b0c: dcffc0ef jal ra,c004e8da + c0051cda: 18a8 addi a0,sp,120 + c0051cdc: dcffc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5122 bf_set_ui(r, 0); - c0051b10: 4581 li a1,0 - c0051b12: 854e mv a0,s3 - c0051b14: d68fb0ef jal ra,c004d07c + c0051ce0: 4581 li a1,0 + c0051ce2: 854e mv a0,s3 + c0051ce4: d68fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5123 (discriminator 1) for(i = l; i >= 1; i--) { - c0051b18: 11204263 bgtz s2,c0051c1c + c0051ce8: 11204263 bgtz s2,c0051dec bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051b1c: 0089a783 lw a5,8(s3) + c0051cec: 0089a783 lw a5,8(s3) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5132 bf_neg(r); @@ -225959,225 +226157,225 @@ bf_atan_internal(): } bf_neg(r); bf_add_si(r, r, 1, prec1, BF_RNDN); - c0051b20: 4701 li a4,0 - c0051b22: 86a2 mv a3,s0 + c0051cf0: 4701 li a4,0 + c0051cf2: 86a2 mv a3,s0 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051b24: 0017c793 xori a5,a5,1 - c0051b28: 00f9a423 sw a5,8(s3) + c0051cf4: 0017c793 xori a5,a5,1 + c0051cf8: 00f9a423 sw a5,8(s3) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5132 - c0051b2c: 4605 li a2,1 - c0051b2e: 85ce mv a1,s3 - c0051b30: 854e mv a0,s3 - c0051b32: 9a5fd0ef jal ra,c004f4d6 + c0051cfc: 4605 li a2,1 + c0051cfe: 85ce mv a1,s3 + c0051d00: 854e mv a0,s3 + c0051d02: 9a5fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5133 bf_mul(r, r, T, prec1, BF_RNDN); - c0051b36: 4701 li a4,0 - c0051b38: 86a2 mv a3,s0 - c0051b3a: 860a mv a2,sp - c0051b3c: 85ce mv a1,s3 - c0051b3e: 854e mv a0,s3 - c0051b40: d9bfc0ef jal ra,c004e8da + c0051d06: 4701 li a4,0 + c0051d08: 86a2 mv a3,s0 + c0051d0a: 860a mv a2,sp + c0051d0c: 85ce mv a1,s3 + c0051d0e: 854e mv a0,s3 + c0051d10: d9bfc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5136 /* undo the argument reduction */ bf_mul_2exp(r, K, BF_PREC_INF, BF_RNDZ); - c0051b44: 567d li a2,-1 - c0051b46: 4685 li a3,1 - c0051b48: 8209 srli a2,a2,0x2 - c0051b4a: 85d6 mv a1,s5 - c0051b4c: 854e mv a0,s3 - c0051b4e: ff9fc0ef jal ra,c004eb46 + c0051d14: 567d li a2,-1 + c0051d16: 4685 li a3,1 + c0051d18: 8209 srli a2,a2,0x2 + c0051d1a: 85d6 mv a1,s5 + c0051d1c: 854e mv a0,s3 + c0051d1e: ff9fc0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5138 bf_delete(U); - c0051b52: 1028 addi a0,sp,40 - c0051b54: 938fb0ef jal ra,c004cc8c + c0051d22: 1028 addi a0,sp,40 + c0051d24: 938fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5139 bf_delete(V); - c0051b58: 0888 addi a0,sp,80 - c0051b5a: 932fb0ef jal ra,c004cc8c + c0051d28: 0888 addi a0,sp,80 + c0051d2a: 932fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5140 bf_delete(X2); - c0051b5e: 18a8 addi a0,sp,120 - c0051b60: 92cfb0ef jal ra,c004cc8c + c0051d2e: 18a8 addi a0,sp,120 + c0051d30: 92cfb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5143 i = add_pi2; if (cmp_1 > 0) { - c0051b64: 01705f63 blez s7,c0051b82 + c0051d34: 01705f63 blez s7,c0051d52 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051b68: 0089a783 lw a5,8(s3) - c0051b6c: 0017c793 xori a5,a5,1 - c0051b70: 00f9a423 sw a5,8(s3) + c0051d38: 0089a783 lw a5,8(s3) + c0051d3c: 0017c793 xori a5,a5,1 + c0051d40: 00f9a423 sw a5,8(s3) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5146 /* undo the inversion : r = sign(a)*PI/2 - r */ bf_neg(r); i += 1 - 2 * a->sign; - c0051b74: 008a2703 lw a4,8(s4) - c0051b78: 57f9 li a5,-2 - c0051b7a: 02e787bb mulw a5,a5,a4 - c0051b7e: 2785 addiw a5,a5,1 - c0051b80: 94be add s1,s1,a5 + c0051d44: 008a2703 lw a4,8(s4) + c0051d48: 57f9 li a5,-2 + c0051d4a: 02e787bb mulw a5,a5,a4 + c0051d4e: 2785 addiw a5,a5,1 + c0051d50: 94be add s1,s1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5149 } /* add i*(pi/2) with -1 <= i <= 2 */ if (i != 0) { - c0051b82: c88d beqz s1,c0051bb4 + c0051d52: c88d beqz s1,c0051d84 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5150 bf_const_pi(T, prec1, BF_RNDF); - c0051b84: 4619 li a2,6 - c0051b86: 85a2 mv a1,s0 - c0051b88: 850a mv a0,sp - c0051b8a: bfdff0ef jal ra,c0051786 + c0051d54: 4619 li a2,6 + c0051d56: 85a2 mv a1,s0 + c0051d58: 850a mv a0,sp + c0051d5a: bfdff0ef jal ra,c0051956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5151 if (i != 2) - c0051b8e: 4789 li a5,2 - c0051b90: 00f48963 beq s1,a5,c0051ba2 + c0051d5e: 4789 li a5,2 + c0051d60: 00f48963 beq s1,a5,c0051d72 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5152 bf_mul_2exp(T, -1, BF_PREC_INF, BF_RNDZ); - c0051b94: 567d li a2,-1 - c0051b96: 4685 li a3,1 - c0051b98: 8209 srli a2,a2,0x2 - c0051b9a: 55fd li a1,-1 - c0051b9c: 850a mv a0,sp - c0051b9e: fa9fc0ef jal ra,c004eb46 + c0051d64: 567d li a2,-1 + c0051d66: 4685 li a3,1 + c0051d68: 8209 srli a2,a2,0x2 + c0051d6a: 55fd li a1,-1 + c0051d6c: 850a mv a0,sp + c0051d6e: fa9fc0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5153 T->sign = (i < 0); - c0051ba2: 90fd srli s1,s1,0x3f + c0051d72: 90fd srli s1,s1,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5154 bf_add(r, T, r, prec1, BF_RNDN); - c0051ba4: 4701 li a4,0 - c0051ba6: 86a2 mv a3,s0 - c0051ba8: 864e mv a2,s3 - c0051baa: 858a mv a1,sp - c0051bac: 854e mv a0,s3 + c0051d74: 4701 li a4,0 + c0051d76: 86a2 mv a3,s0 + c0051d78: 864e mv a2,s3 + c0051d7a: 858a mv a1,sp + c0051d7c: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5153 T->sign = (i < 0); - c0051bae: c426 sw s1,8(sp) + c0051d7e: c426 sw s1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5154 bf_add(r, T, r, prec1, BF_RNDN); - c0051bb0: a46fd0ef jal ra,c004edf6 + c0051d80: a46fd0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5157 } bf_delete(T); - c0051bb4: 850a mv a0,sp - c0051bb6: 8d6fb0ef jal ra,c004cc8c + c0051d84: 850a mv a0,sp + c0051d86: 8d6fb0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5159 return BF_ST_INEXACT; } - c0051bba: 70ae ld ra,232(sp) - c0051bbc: 740e ld s0,224(sp) - c0051bbe: 64ee ld s1,216(sp) - c0051bc0: 694e ld s2,208(sp) - c0051bc2: 69ae ld s3,200(sp) - c0051bc4: 6a0e ld s4,192(sp) - c0051bc6: 7aea ld s5,184(sp) - c0051bc8: 7b4a ld s6,176(sp) - c0051bca: 7baa ld s7,168(sp) - c0051bcc: 4541 li a0,16 - c0051bce: 616d addi sp,sp,240 - c0051bd0: 8082 ret + c0051d8a: 70ae ld ra,232(sp) + c0051d8c: 740e ld s0,224(sp) + c0051d8e: 64ee ld s1,216(sp) + c0051d90: 694e ld s2,208(sp) + c0051d92: 69ae ld s3,200(sp) + c0051d94: 6a0e ld s4,192(sp) + c0051d96: 7aea ld s5,184(sp) + c0051d98: 7b4a ld s6,176(sp) + c0051d9a: 7baa ld s7,168(sp) + c0051d9c: 4541 li a0,16 + c0051d9e: 616d addi sp,sp,240 + c0051da0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5099 bf_set(T, a); - c0051bd2: 85d2 mv a1,s4 - c0051bd4: 850a mv a0,sp - c0051bd6: 8ebfb0ef jal ra,c004d4c0 - c0051bda: b701 j c0051ada + c0051da2: 85d2 mv a1,s4 + c0051da4: 850a mv a0,sp + c0051da6: 8ebfb0ef jal ra,c004d690 + c0051daa: b701 j c0051caa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5111 (discriminator 3) bf_mul(U, T, T, prec1, BF_RNDN); - c0051bdc: 1028 addi a0,sp,40 - c0051bde: cfdfc0ef jal ra,c004e8da + c0051dac: 1028 addi a0,sp,40 + c0051dae: cfdfc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5112 (discriminator 3) bf_add_si(U, U, 1, prec1, BF_RNDN); - c0051be2: 102c addi a1,sp,40 - c0051be4: 4701 li a4,0 - c0051be6: 86a2 mv a3,s0 - c0051be8: 4605 li a2,1 - c0051bea: 852e mv a0,a1 - c0051bec: 8ebfd0ef jal ra,c004f4d6 + c0051db2: 102c addi a1,sp,40 + c0051db4: 4701 li a4,0 + c0051db6: 86a2 mv a3,s0 + c0051db8: 4605 li a2,1 + c0051dba: 852e mv a0,a1 + c0051dbc: 8ebfd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5113 (discriminator 3) bf_sqrt(V, U, prec1, BF_RNDN); - c0051bf0: 4681 li a3,0 - c0051bf2: 8622 mv a2,s0 - c0051bf4: 102c addi a1,sp,40 - c0051bf6: 0888 addi a0,sp,80 - c0051bf8: 86afd0ef jal ra,c004ec62 + c0051dc0: 4681 li a3,0 + c0051dc2: 8622 mv a2,s0 + c0051dc4: 102c addi a1,sp,40 + c0051dc6: 0888 addi a0,sp,80 + c0051dc8: 86afd0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5114 (discriminator 3) bf_add_si(V, V, 1, prec1, BF_RNDN); - c0051bfc: 088c addi a1,sp,80 - c0051bfe: 4701 li a4,0 - c0051c00: 86a2 mv a3,s0 - c0051c02: 4605 li a2,1 - c0051c04: 852e mv a0,a1 - c0051c06: 8d1fd0ef jal ra,c004f4d6 + c0051dcc: 088c addi a1,sp,80 + c0051dce: 4701 li a4,0 + c0051dd0: 86a2 mv a3,s0 + c0051dd2: 4605 li a2,1 + c0051dd4: 852e mv a0,a1 + c0051dd6: 8d1fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5115 (discriminator 3) bf_div(T, T, V, prec1, BF_RNDN); - c0051c0a: 4701 li a4,0 - c0051c0c: 86a2 mv a3,s0 - c0051c0e: 0890 addi a2,sp,80 - c0051c10: 858a mv a1,sp - c0051c12: 850a mv a0,sp - c0051c14: d12fd0ef jal ra,c004f126 + c0051dda: 4701 li a4,0 + c0051ddc: 86a2 mv a3,s0 + c0051dde: 0890 addi a2,sp,80 + c0051de0: 858a mv a1,sp + c0051de2: 850a mv a0,sp + c0051de4: d12fd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5109 (discriminator 3) for(i = 0; i < K; i++) { - c0051c18: 0b05 addi s6,s6,1 - c0051c1a: b5d5 j c0051afe + c0051de8: 0b05 addi s6,s6,1 + c0051dea: b5d5 j c0051cce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5124 (discriminator 3) bf_set_si(U, 1); - c0051c1c: 4585 li a1,1 - c0051c1e: 1028 addi a0,sp,40 - c0051c20: cbafb0ef jal ra,c004d0da + c0051dec: 4585 li a1,1 + c0051dee: 1028 addi a0,sp,40 + c0051df0: cbafb0ef jal ra,c004d2aa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5125 (discriminator 3) bf_set_ui(V, 2 * i + 1); - c0051c24: 00191593 slli a1,s2,0x1 - c0051c28: 0585 addi a1,a1,1 - c0051c2a: 0888 addi a0,sp,80 - c0051c2c: c50fb0ef jal ra,c004d07c + c0051df4: 00191593 slli a1,s2,0x1 + c0051df8: 0585 addi a1,a1,1 + c0051dfa: 0888 addi a0,sp,80 + c0051dfc: c50fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5126 (discriminator 3) bf_div(U, U, V, prec1, BF_RNDN); - c0051c30: 102c addi a1,sp,40 - c0051c32: 4701 li a4,0 - c0051c34: 86a2 mv a3,s0 - c0051c36: 0890 addi a2,sp,80 - c0051c38: 852e mv a0,a1 - c0051c3a: cecfd0ef jal ra,c004f126 + c0051e00: 102c addi a1,sp,40 + c0051e02: 4701 li a4,0 + c0051e04: 86a2 mv a3,s0 + c0051e06: 0890 addi a2,sp,80 + c0051e08: 852e mv a0,a1 + c0051e0a: cecfd0ef jal ra,c004f2f6 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 (discriminator 3) - c0051c3e: 0089a783 lw a5,8(s3) + c0051e0e: 0089a783 lw a5,8(s3) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5128 (discriminator 3) bf_add(r, r, U, prec1, BF_RNDN); - c0051c42: 4701 li a4,0 - c0051c44: 86a2 mv a3,s0 + c0051e12: 4701 li a4,0 + c0051e14: 86a2 mv a3,s0 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 (discriminator 3) - c0051c46: 0017c793 xori a5,a5,1 - c0051c4a: 00f9a423 sw a5,8(s3) + c0051e16: 0017c793 xori a5,a5,1 + c0051e1a: 00f9a423 sw a5,8(s3) bf_atan_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5128 (discriminator 3) - c0051c4e: 1030 addi a2,sp,40 - c0051c50: 85ce mv a1,s3 - c0051c52: 854e mv a0,s3 - c0051c54: 9a2fd0ef jal ra,c004edf6 + c0051e1e: 1030 addi a2,sp,40 + c0051e20: 85ce mv a1,s3 + c0051e22: 854e mv a0,s3 + c0051e24: 9a2fd0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5129 (discriminator 3) bf_mul(r, r, X2, prec1, BF_RNDN); - c0051c58: 4701 li a4,0 - c0051c5a: 86a2 mv a3,s0 - c0051c5c: 18b0 addi a2,sp,120 - c0051c5e: 85ce mv a1,s3 - c0051c60: 854e mv a0,s3 - c0051c62: c79fc0ef jal ra,c004e8da + c0051e28: 4701 li a4,0 + c0051e2a: 86a2 mv a3,s0 + c0051e2c: 18b0 addi a2,sp,120 + c0051e2e: 85ce mv a1,s3 + c0051e30: 854e mv a0,s3 + c0051e32: c79fc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5123 (discriminator 3) for(i = l; i >= 1; i--) { - c0051c66: 197d addi s2,s2,-1 - c0051c68: bd45 j c0051b18 + c0051e36: 197d addi s2,s2,-1 + c0051e38: bd45 j c0051ce8 -00000000c0051c6a : +00000000c0051e3a : bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5252 { @@ -226186,12 +226384,12 @@ bf_asin_internal(): static int bf_asin_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) { - c0051c6a: 7159 addi sp,sp,-112 - c0051c6c: f0a2 sd s0,96(sp) - c0051c6e: eca6 sd s1,88(sp) - c0051c70: e8ca sd s2,80(sp) - c0051c72: e4ce sd s3,72(sp) - c0051c74: f486 sd ra,104(sp) + c0051e3a: 7159 addi sp,sp,-112 + c0051e3c: f0a2 sd s0,96(sp) + c0051e3e: eca6 sd s1,88(sp) + c0051e40: e8ca sd s2,80(sp) + c0051e42: e4ce sd s3,72(sp) + c0051e44: f486 sd ra,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5264 acos(x) = pi/2 - asin(x) */ prec1 = prec + 8; @@ -226199,2213 +226397,2213 @@ static int bf_asin_internal(bf_t *r, const bf_t *a, limb_t prec, void *opaque) (1-x^2) if x is close to 1 */ /* XXX: use less precision when possible */ if (a->expn >= 0) - c0051c76: 6998 ld a4,16(a1) + c0051e46: 6998 ld a4,16(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5260 prec1 = prec + 8; - c0051c78: 00860493 addi s1,a2,8 + c0051e48: 00860493 addi s1,a2,8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5254 BOOL is_acos = (BOOL)(intptr_t)opaque; - c0051c7c: 0006899b sext.w s3,a3 + c0051e4c: 0006899b sext.w s3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5253 bf_context_t *s = r->ctx; - c0051c80: 611c ld a5,0(a0) + c0051e50: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5252 { - c0051c82: 842a mv s0,a0 - c0051c84: 892e mv s2,a1 + c0051e52: 842a mv s0,a0 + c0051e54: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5267 prec2 = BF_PREC_INF; else prec2 = prec1; - c0051c86: 86a6 mv a3,s1 + c0051e56: 86a6 mv a3,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5264 if (a->expn >= 0) - c0051c88: 00074463 bltz a4,c0051c90 + c0051e58: 00074463 bltz a4,c0051e60 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5265 prec2 = BF_PREC_INF; - c0051c8c: 56fd li a3,-1 - c0051c8e: 8289 srli a3,a3,0x2 + c0051e5c: 56fd li a3,-1 + c0051e5e: 8289 srli a3,a3,0x2 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051c90: ec3e sd a5,24(sp) + c0051e60: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051c92: 57fd li a5,-1 - c0051c94: 17fe slli a5,a5,0x3f + c0051e62: 57fd li a5,-1 + c0051e64: 17fe slli a5,a5,0x3f bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5269 bf_init(s, T); bf_mul(T, a, a, prec2, BF_RNDN); - c0051c96: 4701 li a4,0 - c0051c98: 864a mv a2,s2 - c0051c9a: 85ca mv a1,s2 - c0051c9c: 0828 addi a0,sp,24 + c0051e66: 4701 li a4,0 + c0051e68: 864a mv a2,s2 + c0051e6a: 85ca mv a1,s2 + c0051e6c: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051c9e: f43e sd a5,40(sp) + c0051e6e: f43e sd a5,40(sp) bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5269 bf_mul(T, a, a, prec2, BF_RNDN); - c0051ca0: e436 sd a3,8(sp) + c0051e70: e436 sd a3,8(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051ca2: d002 sw zero,32(sp) + c0051e72: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051ca4: f802 sd zero,48(sp) + c0051e74: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051ca6: fc02 sd zero,56(sp) + c0051e76: fc02 sd zero,56(sp) bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5269 bf_mul(T, a, a, prec2, BF_RNDN); - c0051ca8: c33fc0ef jal ra,c004e8da + c0051e78: c33fc0ef jal ra,c004eaaa bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051cac: 5782 lw a5,32(sp) + c0051e7c: 5782 lw a5,32(sp) bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5271 bf_neg(T); bf_add_si(T, T, 1, prec2, BF_RNDN); - c0051cae: 66a2 ld a3,8(sp) - c0051cb0: 082c addi a1,sp,24 + c0051e7e: 66a2 ld a3,8(sp) + c0051e80: 082c addi a1,sp,24 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051cb2: 0017c793 xori a5,a5,1 + c0051e82: 0017c793 xori a5,a5,1 bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5271 - c0051cb6: 4701 li a4,0 - c0051cb8: 4605 li a2,1 - c0051cba: 852e mv a0,a1 + c0051e86: 4701 li a4,0 + c0051e88: 4605 li a2,1 + c0051e8a: 852e mv a0,a1 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051cbc: d03e sw a5,32(sp) + c0051e8c: d03e sw a5,32(sp) bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5271 - c0051cbe: 819fd0ef jal ra,c004f4d6 + c0051e8e: 819fd0ef jal ra,c004f6a6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5273 bf_sqrt(r, T, prec1, BF_RNDN); - c0051cc2: 4681 li a3,0 - c0051cc4: 8626 mv a2,s1 - c0051cc6: 082c addi a1,sp,24 - c0051cc8: 8522 mv a0,s0 - c0051cca: f99fc0ef jal ra,c004ec62 + c0051e92: 4681 li a3,0 + c0051e94: 8626 mv a2,s1 + c0051e96: 082c addi a1,sp,24 + c0051e98: 8522 mv a0,s0 + c0051e9a: f99fc0ef jal ra,c004ee32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5274 bf_div(T, a, r, prec1, BF_RNDN); - c0051cce: 4701 li a4,0 - c0051cd0: 86a6 mv a3,s1 - c0051cd2: 8622 mv a2,s0 - c0051cd4: 85ca mv a1,s2 - c0051cd6: 0828 addi a0,sp,24 - c0051cd8: c4efd0ef jal ra,c004f126 + c0051e9e: 4701 li a4,0 + c0051ea0: 86a6 mv a3,s1 + c0051ea2: 8622 mv a2,s0 + c0051ea4: 85ca mv a1,s2 + c0051ea6: 0828 addi a0,sp,24 + c0051ea8: c4efd0ef jal ra,c004f2f6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5275 if (is_acos) - c0051cdc: 00098663 beqz s3,c0051ce8 + c0051eac: 00098663 beqz s3,c0051eb8 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 - c0051ce0: 5782 lw a5,32(sp) - c0051ce2: 0017c793 xori a5,a5,1 - c0051ce6: d03e sw a5,32(sp) + c0051eb0: 5782 lw a5,32(sp) + c0051eb2: 0017c793 xori a5,a5,1 + c0051eb6: d03e sw a5,32(sp) bf_asin_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5277 bf_neg(T); bf_atan_internal(r, T, prec1, (void *)(intptr_t)is_acos); - c0051ce8: 86ce mv a3,s3 - c0051cea: 8626 mv a2,s1 - c0051cec: 082c addi a1,sp,24 - c0051cee: 8522 mv a0,s0 - c0051cf0: d7bff0ef jal ra,c0051a6a + c0051eb8: 86ce mv a3,s3 + c0051eba: 8626 mv a2,s1 + c0051ebc: 082c addi a1,sp,24 + c0051ebe: 8522 mv a0,s0 + c0051ec0: d7bff0ef jal ra,c0051c3a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5278 bf_delete(T); - c0051cf4: 0828 addi a0,sp,24 - c0051cf6: f97fa0ef jal ra,c004cc8c + c0051ec4: 0828 addi a0,sp,24 + c0051ec6: f97fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5280 return BF_ST_INEXACT; } - c0051cfa: 70a6 ld ra,104(sp) - c0051cfc: 7406 ld s0,96(sp) - c0051cfe: 64e6 ld s1,88(sp) - c0051d00: 6946 ld s2,80(sp) - c0051d02: 69a6 ld s3,72(sp) - c0051d04: 4541 li a0,16 - c0051d06: 6165 addi sp,sp,112 - c0051d08: 8082 ret + c0051eca: 70a6 ld ra,104(sp) + c0051ecc: 7406 ld s0,96(sp) + c0051ece: 64e6 ld s1,88(sp) + c0051ed0: 6946 ld s2,80(sp) + c0051ed2: 69a6 ld s3,72(sp) + c0051ed4: 4541 li a0,16 + c0051ed6: 6165 addi sp,sp,112 + c0051ed8: 8082 ret -00000000c0051d0a : +00000000c0051eda : bf_clear_cache(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4229 { - c0051d0a: 1101 addi sp,sp,-32 - c0051d0c: e822 sd s0,16(sp) - c0051d0e: 842a mv s0,a0 + c0051eda: 1101 addi sp,sp,-32 + c0051edc: e822 sd s0,16(sp) + c0051ede: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4233 bf_const_free(&s->log2_cache); - c0051d10: 0541 addi a0,a0,16 + c0051ee0: 0541 addi a0,a0,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4229 { - c0051d12: ec06 sd ra,24(sp) + c0051ee2: ec06 sd ra,24(sp) bf_const_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4205 bf_delete(&c->val); - c0051d14: e42a sd a0,8(sp) - c0051d16: f77fa0ef jal ra,c004cc8c + c0051ee4: e42a sd a0,8(sp) + c0051ee6: f77fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4206 memset(c, 0, sizeof(*c)); - c0051d1a: 6522 ld a0,8(sp) - c0051d1c: 03000613 li a2,48 - c0051d20: 4581 li a1,0 - c0051d22: 34f040ef jal ra,c0056870 + c0051eea: 6522 ld a0,8(sp) + c0051eec: 03000613 li a2,48 + c0051ef0: 4581 li a1,0 + c0051ef2: 34f040ef jal ra,c0056a40 bf_clear_cache(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4234 bf_const_free(&s->pi_cache); - c0051d26: 04040513 addi a0,s0,64 + c0051ef6: 04040513 addi a0,s0,64 bf_const_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4205 bf_delete(&c->val); - c0051d2a: e42a sd a0,8(sp) - c0051d2c: f61fa0ef jal ra,c004cc8c + c0051efa: e42a sd a0,8(sp) + c0051efc: f61fa0ef jal ra,c004ce5c bf_clear_cache(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4235 } - c0051d30: 6442 ld s0,16(sp) + c0051f00: 6442 ld s0,16(sp) bf_const_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4206 memset(c, 0, sizeof(*c)); - c0051d32: 6522 ld a0,8(sp) + c0051f02: 6522 ld a0,8(sp) bf_clear_cache(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4235 } - c0051d34: 60e2 ld ra,24(sp) + c0051f04: 60e2 ld ra,24(sp) bf_const_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4206 memset(c, 0, sizeof(*c)); - c0051d36: 03000613 li a2,48 - c0051d3a: 4581 li a1,0 + c0051f06: 03000613 li a2,48 + c0051f0a: 4581 li a1,0 bf_clear_cache(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4235 } - c0051d3c: 6105 addi sp,sp,32 + c0051f0c: 6105 addi sp,sp,32 bf_const_free(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4206 memset(c, 0, sizeof(*c)); - c0051d3e: 3330406f j c0056870 + c0051f0e: 3330406f j c0056a40 -00000000c0051d42 : +00000000c0051f12 : bf_context_end(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:198 bf_clear_cache(s); - c0051d42: fc9ff06f j c0051d0a + c0051f12: fc9ff06f j c0051eda -00000000c0051d46 : +00000000c0051f16 : bf_exp(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4423 { - c0051d46: 7179 addi sp,sp,-48 - c0051d48: f406 sd ra,40(sp) - c0051d4a: f022 sd s0,32(sp) - c0051d4c: ec26 sd s1,24(sp) - c0051d4e: e84a sd s2,16(sp) - c0051d50: e44e sd s3,8(sp) - c0051d52: e052 sd s4,0(sp) + c0051f16: 7179 addi sp,sp,-48 + c0051f18: f406 sd ra,40(sp) + c0051f1a: f022 sd s0,32(sp) + c0051f1c: ec26 sd s1,24(sp) + c0051f1e: e84a sd s2,16(sp) + c0051f20: e44e sd s3,8(sp) + c0051f22: e052 sd s4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4426 assert(r != a); - c0051d54: 00b51c63 bne a0,a1,c0051d6c + c0051f24: 00b51c63 bne a0,a1,c0051f3c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4426 (discriminator 1) - c0051d58: 6585 lui a1,0x1 - c0051d5a: 4601 li a2,0 - c0051d5c: 14a58593 addi a1,a1,330 # 114a <__clzdi2-0xbfffeeb6> - c0051d60: 00020517 auipc a0,0x20 - c0051d64: 5b850513 addi a0,a0,1464 # c0072318 - c0051d68: 4b1010ef jal ra,c0053a18 <__assert> + c0051f28: 6585 lui a1,0x1 + c0051f2a: 4601 li a2,0 + c0051f2c: 14a58593 addi a1,a1,330 # 114a <__clzdi2-0xbfffeeb6> + c0051f30: 00020517 auipc a0,0x20 + c0051f34: 64850513 addi a0,a0,1608 # c0072578 + c0051f38: 4b1010ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4427 (discriminator 2) if (a->len == 0) { - c0051d6c: 6d9c ld a5,24(a1) - c0051d6e: 84ae mv s1,a1 - c0051d70: e3b9 bnez a5,c0051db6 + c0051f3c: 6d9c ld a5,24(a1) + c0051f3e: 84ae mv s1,a1 + c0051f40: e3b9 bnez a5,c0051f86 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4428 if (a->expn == BF_EXP_NAN) { - c0051d72: 6998 ld a4,16(a1) - c0051d74: 57fd li a5,-1 - c0051d76: 8385 srli a5,a5,0x1 - c0051d78: 00f71663 bne a4,a5,c0051d84 + c0051f42: 6998 ld a4,16(a1) + c0051f44: 57fd li a5,-1 + c0051f46: 8385 srli a5,a5,0x1 + c0051f48: 00f71663 bne a4,a5,c0051f54 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4429 bf_set_nan(r); - c0051d7c: ae0fb0ef jal ra,c004d05c + c0051f4c: ae0fb0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4438 return 0; - c0051d80: 4401 li s0,0 - c0051d82: a829 j c0051d9c + c0051f50: 4401 li s0,0 + c0051f52: a829 j c0051f6c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4430 } else if (a->expn == BF_EXP_INF) { - c0051d84: 57f5 li a5,-3 - c0051d86: 8385 srli a5,a5,0x1 - c0051d88: 02f71363 bne a4,a5,c0051dae + c0051f54: 57f5 li a5,-3 + c0051f56: 8385 srli a5,a5,0x1 + c0051f58: 02f71363 bne a4,a5,c0051f7e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4431 if (a->sign) - c0051d8c: 4580 lw s0,8(a1) + c0051f5c: 4580 lw s0,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4432 bf_set_zero(r, 0); - c0051d8e: 4581 li a1,0 + c0051f5e: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4431 if (a->sign) - c0051d90: c401 beqz s0,c0051d98 + c0051f60: c401 beqz s0,c0051f68 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4432 bf_set_zero(r, 0); - c0051d92: b6cfb0ef jal ra,c004d0fe - c0051d96: b7ed j c0051d80 + c0051f62: b6cfb0ef jal ra,c004d2ce + c0051f66: b7ed j c0051f50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4434 bf_set_inf(r, 0); - c0051d98: b8afb0ef jal ra,c004d122 + c0051f68: b8afb0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051d9c: 70a2 ld ra,40(sp) - c0051d9e: 8522 mv a0,s0 - c0051da0: 7402 ld s0,32(sp) - c0051da2: 64e2 ld s1,24(sp) - c0051da4: 6942 ld s2,16(sp) - c0051da6: 69a2 ld s3,8(sp) - c0051da8: 6a02 ld s4,0(sp) - c0051daa: 6145 addi sp,sp,48 - c0051dac: 8082 ret + c0051f6c: 70a2 ld ra,40(sp) + c0051f6e: 8522 mv a0,s0 + c0051f70: 7402 ld s0,32(sp) + c0051f72: 64e2 ld s1,24(sp) + c0051f74: 6942 ld s2,16(sp) + c0051f76: 69a2 ld s3,8(sp) + c0051f78: 6a02 ld s4,0(sp) + c0051f7a: 6145 addi sp,sp,48 + c0051f7c: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4436 bf_set_ui(r, 1); - c0051dae: 4585 li a1,1 - c0051db0: accfb0ef jal ra,c004d07c - c0051db4: b7f1 j c0051d80 + c0051f7e: 4585 li a1,1 + c0051f80: accfb0ef jal ra,c004d24c + c0051f84: b7f1 j c0051f50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4441 ret = check_exp_underflow_overflow(s, r, a, a, prec, flags); - c0051db6: 87b6 mv a5,a3 - c0051db8: 8732 mv a4,a2 - c0051dba: 892a mv s2,a0 - c0051dbc: 89b2 mv s3,a2 - c0051dbe: 8a36 mv s4,a3 - c0051dc0: 862e mv a2,a1 - c0051dc2: 86ae mv a3,a1 - c0051dc4: 85aa mv a1,a0 - c0051dc6: 6108 ld a0,0(a0) - c0051dc8: e74ff0ef jal ra,c005143c - c0051dcc: 842a mv s0,a0 + c0051f86: 87b6 mv a5,a3 + c0051f88: 8732 mv a4,a2 + c0051f8a: 892a mv s2,a0 + c0051f8c: 89b2 mv s3,a2 + c0051f8e: 8a36 mv s4,a3 + c0051f90: 862e mv a2,a1 + c0051f92: 86ae mv a3,a1 + c0051f94: 85aa mv a1,a0 + c0051f96: 6108 ld a0,0(a0) + c0051f98: e74ff0ef jal ra,c005160c + c0051f9c: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4442 if (ret) - c0051dce: f579 bnez a0,c0051d9c + c0051f9e: f579 bnez a0,c0051f6c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4444 if (a->expn < 0 && (-a->expn) >= (prec + 2)) { - c0051dd0: 689c ld a5,16(s1) - c0051dd2: 0207de63 bgez a5,c0051e0e + c0051fa0: 689c ld a5,16(s1) + c0051fa2: 0207de63 bgez a5,c0051fde /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4444 (discriminator 1) - c0051dd6: 40f007b3 neg a5,a5 - c0051dda: 00298713 addi a4,s3,2 - c0051dde: 02e7e863 bltu a5,a4,c0051e0e + c0051fa6: 40f007b3 neg a5,a5 + c0051faa: 00298713 addi a4,s3,2 + c0051fae: 02e7e863 bltu a5,a4,c0051fde /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4446 bf_set_ui(r, 1); - c0051de2: 4585 li a1,1 - c0051de4: 854a mv a0,s2 - c0051de6: a96fb0ef jal ra,c004d07c + c0051fb2: 4585 li a1,1 + c0051fb4: 854a mv a0,s2 + c0051fb6: a96fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4447 return bf_add_epsilon(r, r, -(prec + 2), a->sign, prec, flags); - c0051dea: 5679 li a2,-2 + c0051fba: 5679 li a2,-2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051dec: 7402 ld s0,32(sp) + c0051fbc: 7402 ld s0,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4447 return bf_add_epsilon(r, r, -(prec + 2), a->sign, prec, flags); - c0051dee: 4494 lw a3,8(s1) - c0051df0: 00093583 ld a1,0(s2) + c0051fbe: 4494 lw a3,8(s1) + c0051fc0: 00093583 ld a1,0(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051df4: 70a2 ld ra,40(sp) - c0051df6: 64e2 ld s1,24(sp) + c0051fc4: 70a2 ld ra,40(sp) + c0051fc6: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4447 return bf_add_epsilon(r, r, -(prec + 2), a->sign, prec, flags); - c0051df8: 87d2 mv a5,s4 - c0051dfa: 874e mv a4,s3 + c0051fc8: 87d2 mv a5,s4 + c0051fca: 874e mv a4,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051dfc: 6a02 ld s4,0(sp) + c0051fcc: 6a02 ld s4,0(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4447 return bf_add_epsilon(r, r, -(prec + 2), a->sign, prec, flags); - c0051dfe: 41360633 sub a2,a2,s3 - c0051e02: 854a mv a0,s2 + c0051fce: 41360633 sub a2,a2,s3 + c0051fd2: 854a mv a0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051e04: 69a2 ld s3,8(sp) - c0051e06: 6942 ld s2,16(sp) - c0051e08: 6145 addi sp,sp,48 + c0051fd4: 69a2 ld s3,8(sp) + c0051fd6: 6942 ld s2,16(sp) + c0051fd8: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4447 return bf_add_epsilon(r, r, -(prec + 2), a->sign, prec, flags); - c0051e0a: ab4fd06f j c004f0be + c0051fda: ab4fd06f j c004f28e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051e0e: 7402 ld s0,32(sp) - c0051e10: 70a2 ld ra,40(sp) + c0051fde: 7402 ld s0,32(sp) + c0051fe0: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4450 return bf_ziv_rounding(r, a, prec, flags, bf_exp_internal, NULL); - c0051e12: 86d2 mv a3,s4 - c0051e14: 864e mv a2,s3 + c0051fe2: 86d2 mv a3,s4 + c0051fe4: 864e mv a2,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051e16: 6a02 ld s4,0(sp) - c0051e18: 69a2 ld s3,8(sp) + c0051fe6: 6a02 ld s4,0(sp) + c0051fe8: 69a2 ld s3,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4450 return bf_ziv_rounding(r, a, prec, flags, bf_exp_internal, NULL); - c0051e1a: 85a6 mv a1,s1 - c0051e1c: 854a mv a0,s2 + c0051fea: 85a6 mv a1,s1 + c0051fec: 854a mv a0,s2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051e1e: 64e2 ld s1,24(sp) - c0051e20: 6942 ld s2,16(sp) + c0051fee: 64e2 ld s1,24(sp) + c0051ff0: 6942 ld s2,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4450 return bf_ziv_rounding(r, a, prec, flags, bf_exp_internal, NULL); - c0051e22: 4781 li a5,0 - c0051e24: fffff717 auipc a4,0xfffff - c0051e28: 4a270713 addi a4,a4,1186 # c00512c6 + c0051ff2: 4781 li a5,0 + c0051ff4: fffff717 auipc a4,0xfffff + c0051ff8: 4a270713 addi a4,a4,1186 # c0051496 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4451 } - c0051e2c: 6145 addi sp,sp,48 + c0051ffc: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4450 return bf_ziv_rounding(r, a, prec, flags, bf_exp_internal, NULL); - c0051e2e: 8bdfb06f j c004d6ea + c0051ffe: 8bdfb06f j c004d8ba -00000000c0051e32 : +00000000c0052002 : bf_log(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4553 { - c0051e32: 711d addi sp,sp,-96 - c0051e34: ec86 sd ra,88(sp) - c0051e36: e8a2 sd s0,80(sp) - c0051e38: e4a6 sd s1,72(sp) - c0051e3a: e0ca sd s2,64(sp) - c0051e3c: fc4e sd s3,56(sp) - c0051e3e: f852 sd s4,48(sp) + c0052002: 711d addi sp,sp,-96 + c0052004: ec86 sd ra,88(sp) + c0052006: e8a2 sd s0,80(sp) + c0052008: e4a6 sd s1,72(sp) + c005200a: e0ca sd s2,64(sp) + c005200c: fc4e sd s3,56(sp) + c005200e: f852 sd s4,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4557 assert(r != a); - c0051e40: 00b51c63 bne a0,a1,c0051e58 + c0052010: 00b51c63 bne a0,a1,c0052028 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4557 (discriminator 1) - c0051e44: 6585 lui a1,0x1 - c0051e46: 4601 li a2,0 - c0051e48: 1cd58593 addi a1,a1,461 # 11cd <__clzdi2-0xbfffee33> - c0051e4c: 00020517 auipc a0,0x20 - c0051e50: 4cc50513 addi a0,a0,1228 # c0072318 - c0051e54: 3c5010ef jal ra,c0053a18 <__assert> + c0052014: 6585 lui a1,0x1 + c0052016: 4601 li a2,0 + c0052018: 1cd58593 addi a1,a1,461 # 11cd <__clzdi2-0xbfffee33> + c005201c: 00020517 auipc a0,0x20 + c0052020: 55c50513 addi a0,a0,1372 # c0072578 + c0052024: 3c5010ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4558 (discriminator 2) if (a->len == 0) { - c0051e58: 6d9c ld a5,24(a1) - c0051e5a: 892a mv s2,a0 - c0051e5c: 84ae mv s1,a1 - c0051e5e: e7a9 bnez a5,c0051ea8 + c0052028: 6d9c ld a5,24(a1) + c005202a: 892a mv s2,a0 + c005202c: 84ae mv s1,a1 + c005202e: e7a9 bnez a5,c0052078 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4559 if (a->expn == BF_EXP_NAN) { - c0051e60: 6998 ld a4,16(a1) - c0051e62: 57fd li a5,-1 - c0051e64: 8385 srli a5,a5,0x1 - c0051e66: 00f71663 bne a4,a5,c0051e72 + c0052030: 6998 ld a4,16(a1) + c0052032: 57fd li a5,-1 + c0052034: 8385 srli a5,a5,0x1 + c0052036: 00f71663 bne a4,a5,c0052042 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4560 bf_set_nan(r); - c0051e6a: 9f2fb0ef jal ra,c004d05c + c005203a: 9f2fb0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4572 return 0; - c0051e6e: 4401 li s0,0 - c0051e70: a819 j c0051e86 + c005203e: 4401 li s0,0 + c0052040: a819 j c0052056 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4562 } else if (a->expn == BF_EXP_INF) { - c0051e72: 57f5 li a5,-3 - c0051e74: 8385 srli a5,a5,0x1 - c0051e76: 02f71563 bne a4,a5,c0051ea0 + c0052042: 57f5 li a5,-3 + c0052044: 8385 srli a5,a5,0x1 + c0052046: 02f71563 bne a4,a5,c0052070 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4563 if (a->sign) { - c0051e7a: 4580 lw s0,8(a1) - c0051e7c: cc11 beqz s0,c0051e98 + c005204a: 4580 lw s0,8(a1) + c005204c: cc11 beqz s0,c0052068 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4564 bf_set_nan(r); - c0051e7e: 854a mv a0,s2 - c0051e80: 9dcfb0ef jal ra,c004d05c + c005204e: 854a mv a0,s2 + c0052050: 9dcfb0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4565 return BF_ST_INVALID_OP; - c0051e84: 4405 li s0,1 + c0052054: 4405 li s0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4589 } - c0051e86: 60e6 ld ra,88(sp) - c0051e88: 8522 mv a0,s0 - c0051e8a: 6446 ld s0,80(sp) - c0051e8c: 64a6 ld s1,72(sp) - c0051e8e: 6906 ld s2,64(sp) - c0051e90: 79e2 ld s3,56(sp) - c0051e92: 7a42 ld s4,48(sp) - c0051e94: 6125 addi sp,sp,96 - c0051e96: 8082 ret + c0052056: 60e6 ld ra,88(sp) + c0052058: 8522 mv a0,s0 + c005205a: 6446 ld s0,80(sp) + c005205c: 64a6 ld s1,72(sp) + c005205e: 6906 ld s2,64(sp) + c0052060: 79e2 ld s3,56(sp) + c0052062: 7a42 ld s4,48(sp) + c0052064: 6125 addi sp,sp,96 + c0052066: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4567 bf_set_inf(r, 0); - c0051e98: 4581 li a1,0 - c0051e9a: a88fb0ef jal ra,c004d122 + c0052068: 4581 li a1,0 + c005206a: a88fb0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4568 return 0; - c0051e9e: b7e5 j c0051e86 + c005206e: b7e5 j c0052056 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4571 bf_set_inf(r, 1); - c0051ea0: 4585 li a1,1 - c0051ea2: a80fb0ef jal ra,c004d122 - c0051ea6: b7e1 j c0051e6e + c0052070: 4585 li a1,1 + c0052072: a80fb0ef jal ra,c004d2f2 + c0052076: b7e1 j c005203e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4575 if (a->sign) { - c0051ea8: 459c lw a5,8(a1) - c0051eaa: fbf1 bnez a5,c0051e7e + c0052078: 459c lw a5,8(a1) + c005207a: fbf1 bnez a5,c005204e bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051eac: 611c ld a5,0(a0) + c005207c: 611c ld a5,0(a0) bf_log(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4580 bf_set_ui(T, 1); - c0051eae: 4585 li a1,1 - c0051eb0: 0028 addi a0,sp,8 + c005207e: 4585 li a1,1 + c0052080: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051eb2: e43e sd a5,8(sp) + c0052082: e43e sd a5,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051eb4: 57fd li a5,-1 - c0051eb6: 17fe slli a5,a5,0x3f - c0051eb8: 89b2 mv s3,a2 - c0051eba: 8a36 mv s4,a3 - c0051ebc: ec3e sd a5,24(sp) + c0052084: 57fd li a5,-1 + c0052086: 17fe slli a5,a5,0x3f + c0052088: 89b2 mv s3,a2 + c005208a: 8a36 mv s4,a3 + c005208c: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051ebe: c802 sw zero,16(sp) + c005208e: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051ec0: f002 sd zero,32(sp) + c0052090: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051ec2: f402 sd zero,40(sp) + c0052092: f402 sd zero,40(sp) bf_log(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4580 bf_set_ui(T, 1); - c0051ec4: 9b8fb0ef jal ra,c004d07c + c0052094: 9b8fb0ef jal ra,c004d24c bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 return bf_cmp(a, b) == 0; - c0051ec8: 002c addi a1,sp,8 - c0051eca: 8526 mv a0,s1 - c0051ecc: f3ffb0ef jal ra,c004de0a - c0051ed0: 842a mv s0,a0 + c0052098: 002c addi a1,sp,8 + c005209a: 8526 mv a0,s1 + c005209c: f3ffb0ef jal ra,c004dfda + c00520a0: 842a mv s0,a0 bf_log(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4581 if (bf_cmp_eq(a, T)) { - c0051ed2: e909 bnez a0,c0051ee4 + c00520a2: e909 bnez a0,c00520b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4582 bf_set_zero(r, 0); - c0051ed4: 854a mv a0,s2 - c0051ed6: 4581 li a1,0 - c0051ed8: a26fb0ef jal ra,c004d0fe + c00520a4: 854a mv a0,s2 + c00520a6: 4581 li a1,0 + c00520a8: a26fb0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4583 bf_delete(T); - c0051edc: 0028 addi a0,sp,8 - c0051ede: daffa0ef jal ra,c004cc8c + c00520ac: 0028 addi a0,sp,8 + c00520ae: daffa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4584 return 0; - c0051ee2: b755 j c0051e86 + c00520b2: b755 j c0052056 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4586 bf_delete(T); - c0051ee4: 0028 addi a0,sp,8 - c0051ee6: da7fa0ef jal ra,c004cc8c + c00520b4: 0028 addi a0,sp,8 + c00520b6: da7fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4588 return bf_ziv_rounding(r, a, prec, flags, bf_log_internal, NULL); - c0051eea: 4781 li a5,0 - c0051eec: fffff717 auipc a4,0xfffff - c0051ef0: 67a70713 addi a4,a4,1658 # c0051566 - c0051ef4: 86d2 mv a3,s4 - c0051ef6: 864e mv a2,s3 - c0051ef8: 85a6 mv a1,s1 - c0051efa: 854a mv a0,s2 - c0051efc: feefb0ef jal ra,c004d6ea - c0051f00: 842a mv s0,a0 - c0051f02: b751 j c0051e86 - -00000000c0051f04 : + c00520ba: 4781 li a5,0 + c00520bc: fffff717 auipc a4,0xfffff + c00520c0: 67a70713 addi a4,a4,1658 # c0051736 + c00520c4: 86d2 mv a3,s4 + c00520c6: 864e mv a2,s3 + c00520c8: 85a6 mv a1,s1 + c00520ca: 854a mv a0,s2 + c00520cc: feefb0ef jal ra,c004d8ba + c00520d0: 842a mv s0,a0 + c00520d2: b751 j c0052056 + +00000000c00520d4 : bf_pow_generic(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4593 { - c0051f04: 711d addi sp,sp,-96 - c0051f06: ec86 sd ra,88(sp) - c0051f08: e8a2 sd s0,80(sp) - c0051f0a: e4a6 sd s1,72(sp) - c0051f0c: e0ca sd s2,64(sp) - c0051f0e: fc4e sd s3,56(sp) + c00520d4: 711d addi sp,sp,-96 + c00520d6: ec86 sd ra,88(sp) + c00520d8: e8a2 sd s0,80(sp) + c00520da: e4a6 sd s1,72(sp) + c00520dc: e0ca sd s2,64(sp) + c00520de: fc4e sd s3,56(sp) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051f10: 611c ld a5,0(a0) + c00520e0: 611c ld a5,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051f12: 597d li s2,-1 + c00520e2: 597d li s2,-1 bf_pow_generic(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4601 prec1 = prec + 32; - c0051f14: 02060493 addi s1,a2,32 + c00520e4: 02060493 addi s1,a2,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4593 { - c0051f18: 89b6 mv s3,a3 + c00520e8: 89b6 mv s3,a3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0051f1a: e43e sd a5,8(sp) + c00520ea: e43e sd a5,8(sp) bf_pow_generic(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4602 bf_log(T, x, prec1, BF_RNDF | BF_FLAG_EXT_EXP); - c0051f1c: 7e600693 li a3,2022 + c00520ec: 7e600693 li a3,2022 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051f20: 03f91793 slli a5,s2,0x3f + c00520f0: 03f91793 slli a5,s2,0x3f bf_pow_generic(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4602 bf_log(T, x, prec1, BF_RNDF | BF_FLAG_EXT_EXP); - c0051f24: 8626 mv a2,s1 + c00520f4: 8626 mv a2,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4593 { - c0051f26: 842a mv s0,a0 + c00520f6: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4602 bf_log(T, x, prec1, BF_RNDF | BF_FLAG_EXT_EXP); - c0051f28: 0028 addi a0,sp,8 + c00520f8: 0028 addi a0,sp,8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0051f2a: ec3e sd a5,24(sp) + c00520fa: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0051f2c: c802 sw zero,16(sp) + c00520fc: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0051f2e: f002 sd zero,32(sp) + c00520fe: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0051f30: f402 sd zero,40(sp) + c0052100: f402 sd zero,40(sp) bf_pow_generic(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4602 bf_log(T, x, prec1, BF_RNDF | BF_FLAG_EXT_EXP); - c0051f32: f01ff0ef jal ra,c0051e32 + c0052102: f01ff0ef jal ra,c0052002 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4603 bf_mul(T, T, y, prec1, BF_RNDF | BF_FLAG_EXT_EXP); - c0051f36: 002c addi a1,sp,8 - c0051f38: 7e600713 li a4,2022 - c0051f3c: 86a6 mv a3,s1 - c0051f3e: 864e mv a2,s3 - c0051f40: 852e mv a0,a1 - c0051f42: 999fc0ef jal ra,c004e8da + c0052106: 002c addi a1,sp,8 + c0052108: 7e600713 li a4,2022 + c005210c: 86a6 mv a3,s1 + c005210e: 864e mv a2,s3 + c0052110: 852e mv a0,a1 + c0052112: 999fc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4604 if (bf_is_nan(T)) - c0051f46: 67e2 ld a5,24(sp) - c0051f48: 00195913 srli s2,s2,0x1 - c0051f4c: 03279063 bne a5,s2,c0051f6c + c0052116: 67e2 ld a5,24(sp) + c0052118: 00195913 srli s2,s2,0x1 + c005211c: 03279063 bne a5,s2,c005213c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4605 bf_set_nan(r); - c0051f50: 8522 mv a0,s0 - c0051f52: 90afb0ef jal ra,c004d05c + c0052120: 8522 mv a0,s0 + c0052122: 90afb0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4608 bf_delete(T); - c0051f56: 0028 addi a0,sp,8 - c0051f58: d35fa0ef jal ra,c004cc8c + c0052126: 0028 addi a0,sp,8 + c0052128: d35fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4610 } - c0051f5c: 60e6 ld ra,88(sp) - c0051f5e: 6446 ld s0,80(sp) - c0051f60: 64a6 ld s1,72(sp) - c0051f62: 6906 ld s2,64(sp) - c0051f64: 79e2 ld s3,56(sp) - c0051f66: 4541 li a0,16 - c0051f68: 6125 addi sp,sp,96 - c0051f6a: 8082 ret + c005212c: 60e6 ld ra,88(sp) + c005212e: 6446 ld s0,80(sp) + c0052130: 64a6 ld s1,72(sp) + c0052132: 6906 ld s2,64(sp) + c0052134: 79e2 ld s3,56(sp) + c0052136: 4541 li a0,16 + c0052138: 6125 addi sp,sp,96 + c005213a: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4607 bf_exp_internal(r, T, prec1, NULL); /* no overflow/underlow test needed */ - c0051f6c: 4681 li a3,0 - c0051f6e: 8626 mv a2,s1 - c0051f70: 002c addi a1,sp,8 - c0051f72: 8522 mv a0,s0 - c0051f74: b52ff0ef jal ra,c00512c6 - c0051f78: bff9 j c0051f56 - -00000000c0051f7a : + c005213c: 4681 li a3,0 + c005213e: 8626 mv a2,s1 + c0052140: 002c addi a1,sp,8 + c0052142: 8522 mv a0,s0 + c0052144: b52ff0ef jal ra,c0051496 + c0052148: bff9 j c0052126 + +00000000c005214a : bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4679 { - c0051f7a: 7115 addi sp,sp,-224 - c0051f7c: e9a2 sd s0,208(sp) - c0051f7e: e5a6 sd s1,200(sp) - c0051f80: e1ca sd s2,192(sp) - c0051f82: fd4e sd s3,184(sp) - c0051f84: ed86 sd ra,216(sp) - c0051f86: f952 sd s4,176(sp) - c0051f88: f556 sd s5,168(sp) - c0051f8a: f15a sd s6,160(sp) - c0051f8c: ed5e sd s7,152(sp) - c0051f8e: e962 sd s8,144(sp) - c0051f90: e566 sd s9,136(sp) + c005214a: 7115 addi sp,sp,-224 + c005214c: e9a2 sd s0,208(sp) + c005214e: e5a6 sd s1,200(sp) + c0052150: e1ca sd s2,192(sp) + c0052152: fd4e sd s3,184(sp) + c0052154: ed86 sd ra,216(sp) + c0052156: f952 sd s4,176(sp) + c0052158: f556 sd s5,168(sp) + c005215a: f15a sd s6,160(sp) + c005215c: ed5e sd s7,152(sp) + c005215e: e962 sd s8,144(sp) + c0052160: e566 sd s9,136(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4687 if (x->len == 0 || y->len == 0) { - c0051f92: 6d9c ld a5,24(a1) + c0052162: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4679 { - c0051f94: 842a mv s0,a0 - c0051f96: 84ae mv s1,a1 - c0051f98: 8932 mv s2,a2 - c0051f9a: 89ba mv s3,a4 + c0052164: 842a mv s0,a0 + c0052166: 84ae mv s1,a1 + c0052168: 8932 mv s2,a2 + c005216a: 89ba mv s3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4687 if (x->len == 0 || y->len == 0) { - c0051f9c: c781 beqz a5,c0051fa4 + c005216c: c781 beqz a5,c0052174 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4687 (discriminator 1) - c0051f9e: 6e1c ld a5,24(a2) - c0051fa0: 0e079363 bnez a5,c0052086 + c005216e: 6e1c ld a5,24(a2) + c0052170: 0e079363 bnez a5,c0052256 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4688 if (y->expn == BF_EXP_ZERO) { - c0051fa4: 01093683 ld a3,16(s2) - c0051fa8: 57fd li a5,-1 - c0051faa: 03f79713 slli a4,a5,0x3f - c0051fae: 00e69863 bne a3,a4,c0051fbe + c0052174: 01093683 ld a3,16(s2) + c0052178: 57fd li a5,-1 + c005217a: 03f79713 slli a4,a5,0x3f + c005217e: 00e69863 bne a3,a4,c005218e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4690 bf_set_ui(r, 1); - c0051fb2: 4585 li a1,1 - c0051fb4: 8522 mv a0,s0 - c0051fb6: 8c6fb0ef jal ra,c004d07c + c0052182: 4585 li a1,1 + c0052184: 8522 mv a0,s0 + c0052186: 8c6fb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4726 return 0; - c0051fba: 4481 li s1,0 - c0051fbc: a07d j c005206a + c005218a: 4481 li s1,0 + c005218c: a07d j c005223a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4691 } else if (x->expn == BF_EXP_NAN) { - c0051fbe: 6898 ld a4,16(s1) - c0051fc0: 8385 srli a5,a5,0x1 - c0051fc2: 00f71663 bne a4,a5,c0051fce + c005218e: 6898 ld a4,16(s1) + c0052190: 8385 srli a5,a5,0x1 + c0052192: 00f71663 bne a4,a5,c005219e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4692 bf_set_nan(r); - c0051fc6: 8522 mv a0,s0 - c0051fc8: 894fb0ef jal ra,c004d05c - c0051fcc: b7fd j c0051fba + c0052196: 8522 mv a0,s0 + c0052198: 894fb0ef jal ra,c004d22c + c005219c: b7fd j c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4695 bf_set_ui(r, 1); - c0051fce: 4585 li a1,1 - c0051fd0: 8522 mv a0,s0 - c0051fd2: 8aafb0ef jal ra,c004d07c + c005219e: 4585 li a1,1 + c00521a0: 8522 mv a0,s0 + c00521a2: 8aafb0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4696 cmp_x_abs_1 = bf_cmpu(x, r); - c0051fd6: 85a2 mv a1,s0 - c0051fd8: 8526 mv a0,s1 - c0051fda: 973fb0ef jal ra,c004d94c + c00521a6: 85a2 mv a1,s0 + c00521a8: 8526 mv a0,s1 + c00521aa: 973fb0ef jal ra,c004db1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4697 if (cmp_x_abs_1 == 0 && (flags & BF_POW_JS_QUIRKS) && - c0051fde: e50d bnez a0,c0052008 + c00521ae: e50d bnez a0,c00521d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4697 (discriminator 1) - c0051fe0: 0109d993 srli s3,s3,0x10 - c0051fe4: 0019f993 andi s3,s3,1 - c0051fe8: 00098863 beqz s3,c0051ff8 + c00521b0: 0109d993 srli s3,s3,0x10 + c00521b4: 0019f993 andi s3,s3,1 + c00521b8: 00098863 beqz s3,c00521c8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4697 (discriminator 2) - c0051fec: 01093703 ld a4,16(s2) - c0051ff0: 57ed li a5,-5 - c0051ff2: 8385 srli a5,a5,0x1 - c0051ff4: fce7c9e3 blt a5,a4,c0051fc6 + c00521bc: 01093703 ld a4,16(s2) + c00521c0: 57ed li a5,-5 + c00521c2: 8385 srli a5,a5,0x1 + c00521c4: fce7c9e3 blt a5,a4,c0052196 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4700 (discriminator 1) } else if (cmp_x_abs_1 == 0 && - c0051ff8: 449c lw a5,8(s1) - c0051ffa: d3e1 beqz a5,c0051fba + c00521c8: 449c lw a5,8(s1) + c00521ca: d3e1 beqz a5,c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4701 (!x->sign || y->expn != BF_EXP_NAN)) { - c0051ffc: 01093703 ld a4,16(s2) - c0052000: 57fd li a5,-1 - c0052002: 8385 srli a5,a5,0x1 - c0052004: faf71be3 bne a4,a5,c0051fba + c00521cc: 01093703 ld a4,16(s2) + c00521d0: 57fd li a5,-1 + c00521d2: 8385 srli a5,a5,0x1 + c00521d4: faf71be3 bne a4,a5,c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4704 } else if (y->expn == BF_EXP_NAN) { - c0052008: 01093703 ld a4,16(s2) - c005200c: 5a7d li s4,-1 - c005200e: 001a5793 srli a5,s4,0x1 - c0052012: faf70ae3 beq a4,a5,c0051fc6 + c00521d8: 01093703 ld a4,16(s2) + c00521dc: 5a7d li s4,-1 + c00521de: 001a5793 srli a5,s4,0x1 + c00521e2: faf70ae3 beq a4,a5,c0052196 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4706 } else if (y->expn == BF_EXP_INF) { - c0052016: 57f5 li a5,-3 - c0052018: 8385 srli a5,a5,0x1 - c005201a: 00892983 lw s3,8(s2) - c005201e: 02f71063 bne a4,a5,c005203e + c00521e6: 57f5 li a5,-3 + c00521e8: 8385 srli a5,a5,0x1 + c00521ea: 00892983 lw s3,8(s2) + c00521ee: 02f71063 bne a4,a5,c005220e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4707 if (y->sign == (cmp_x_abs_1 > 0)) { - c0052022: 2981 sext.w s3,s3 - c0052024: 00a02533 sgtz a0,a0 + c00521f2: 2981 sext.w s3,s3 + c00521f4: 00a02533 sgtz a0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4708 bf_set_zero(r, 0); - c0052028: 4581 li a1,0 + c00521f8: 4581 li a1,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4707 if (y->sign == (cmp_x_abs_1 > 0)) { - c005202a: 00a99663 bne s3,a0,c0052036 + c00521fa: 00a99663 bne s3,a0,c0052206 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4708 bf_set_zero(r, 0); - c005202e: 8522 mv a0,s0 + c00521fe: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4722 bf_set_zero(r, y_is_odd & x->sign); - c0052030: 8cefb0ef jal ra,c004d0fe - c0052034: b759 j c0051fba + c0052200: 8cefb0ef jal ra,c004d2ce + c0052204: b759 j c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4710 bf_set_inf(r, 0); - c0052036: 8522 mv a0,s0 - c0052038: 8eafb0ef jal ra,c004d122 - c005203c: bfbd j c0051fba + c0052206: 8522 mv a0,s0 + c0052208: 8eafb0ef jal ra,c004d2f2 + c005220c: bfbd j c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4713 y_emin = bf_get_exp_min(y); - c005203e: 854a mv a0,s2 - c0052040: b41fc0ef jal ra,c004eb80 + c005220e: 854a mv a0,s2 + c0052210: b41fc0ef jal ra,c004ed50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4716 bf_set_inf(r, y_is_odd & x->sign); - c0052044: 449c lw a5,8(s1) - c0052046: 00153593 seqz a1,a0 + c0052214: 449c lw a5,8(s1) + c0052216: 00153593 seqz a1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4715 if (y->sign == (x->expn == BF_EXP_ZERO)) { - c005204a: 1a7e slli s4,s4,0x3f + c005221a: 1a7e slli s4,s4,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4716 bf_set_inf(r, y_is_odd & x->sign); - c005204c: 8dfd and a1,a1,a5 + c005221c: 8dfd and a1,a1,a5 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4715 if (y->sign == (x->expn == BF_EXP_ZERO)) { - c005204e: 689c ld a5,16(s1) - c0052050: 2981 sext.w s3,s3 + c005221e: 689c ld a5,16(s1) + c0052220: 2981 sext.w s3,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4716 bf_set_inf(r, y_is_odd & x->sign); - c0052052: 8522 mv a0,s0 + c0052222: 8522 mv a0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4715 if (y->sign == (x->expn == BF_EXP_ZERO)) { - c0052054: 97d2 add a5,a5,s4 - c0052056: 0017b793 seqz a5,a5 - c005205a: fcf99be3 bne s3,a5,c0052030 + c0052224: 97d2 add a5,a5,s4 + c0052226: 0017b793 seqz a5,a5 + c005222a: fcf99be3 bne s3,a5,c0052200 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4716 bf_set_inf(r, y_is_odd & x->sign); - c005205e: 8c4fb0ef jal ra,c004d122 + c005222e: 8c4fb0ef jal ra,c004d2f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4717 if (y->sign) { - c0052062: 00892783 lw a5,8(s2) + c0052232: 00892783 lw a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4719 return BF_ST_DIVIDE_ZERO; - c0052066: 4489 li s1,2 + c0052236: 4489 li s1,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4717 if (y->sign) { - c0052068: dba9 beqz a5,c0051fba + c0052238: dba9 beqz a5,c005218a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4846 (discriminator 3) } - c005206a: 60ee ld ra,216(sp) - c005206c: 644e ld s0,208(sp) - c005206e: 690e ld s2,192(sp) - c0052070: 79ea ld s3,184(sp) - c0052072: 7a4a ld s4,176(sp) - c0052074: 7aaa ld s5,168(sp) - c0052076: 7b0a ld s6,160(sp) - c0052078: 6bea ld s7,152(sp) - c005207a: 6c4a ld s8,144(sp) - c005207c: 6caa ld s9,136(sp) - c005207e: 8526 mv a0,s1 - c0052080: 64ae ld s1,200(sp) - c0052082: 612d addi sp,sp,224 - c0052084: 8082 ret + c005223a: 60ee ld ra,216(sp) + c005223c: 644e ld s0,208(sp) + c005223e: 690e ld s2,192(sp) + c0052240: 79ea ld s3,184(sp) + c0052242: 7a4a ld s4,176(sp) + c0052244: 7aaa ld s5,168(sp) + c0052246: 7b0a ld s6,160(sp) + c0052248: 6bea ld s7,152(sp) + c005224a: 6c4a ld s8,144(sp) + c005224c: 6caa ld s9,136(sp) + c005224e: 8526 mv a0,s1 + c0052250: 64ae ld s1,200(sp) + c0052252: 612d addi sp,sp,224 + c0052254: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4680 bf_context_t *s = r->ctx; - c0052086: 00053c83 ld s9,0(a0) + c0052256: 00053c83 ld s9,0(a0) bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005208a: 57fd li a5,-1 - c005208c: 17fe slli a5,a5,0x3f + c005225a: 57fd li a5,-1 + c005225c: 17fe slli a5,a5,0x3f bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4729 bf_set(T, x); - c005208e: 0028 addi a0,sp,8 - c0052090: 8a36 mv s4,a3 + c005225e: 0028 addi a0,sp,8 + c0052260: 8a36 mv s4,a3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0052092: ec3e sd a5,24(sp) + c0052262: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052094: e466 sd s9,8(sp) + c0052264: e466 sd s9,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0052096: c802 sw zero,16(sp) + c0052266: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0052098: f002 sd zero,32(sp) + c0052268: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005209a: f402 sd zero,40(sp) + c005226a: f402 sd zero,40(sp) bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4729 bf_set(T, x); - c005209c: c24fb0ef jal ra,c004d4c0 + c005226c: c24fb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4730 y_emin = bf_get_exp_min(y); - c00520a0: 854a mv a0,s2 - c00520a2: adffc0ef jal ra,c004eb80 + c0052270: 854a mv a0,s2 + c0052272: adffc0ef jal ra,c004ed50 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4733 if (x->sign) { - c00520a6: 0084aa83 lw s5,8(s1) + c0052276: 0084aa83 lw s5,8(s1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4730 y_emin = bf_get_exp_min(y); - c00520aa: 8b2a mv s6,a0 + c005227a: 8b2a mv s6,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4732 rnd_mode = flags & BF_RND_MASK; - c00520ac: 874e mv a4,s3 - c00520ae: 0079fc13 andi s8,s3,7 + c005227c: 874e mv a4,s3 + c005227e: 0079fc13 andi s8,s3,7 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4733 if (x->sign) { - c00520b2: 020a8b63 beqz s5,c00520e8 + c0052282: 020a8b63 beqz s5,c00522b8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4734 if (!y_is_int) { - c00520b6: 00055a63 bgez a0,c00520ca + c0052286: 00055a63 bgez a0,c005229a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4735 bf_set_nan(r); - c00520ba: 8522 mv a0,s0 - c00520bc: fa1fa0ef jal ra,c004d05c + c005228a: 8522 mv a0,s0 + c005228c: fa1fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4736 bf_delete(T); - c00520c0: 0028 addi a0,sp,8 - c00520c2: bcbfa0ef jal ra,c004cc8c + c0052290: 0028 addi a0,sp,8 + c0052292: bcbfa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4737 return BF_ST_INVALID_OP; - c00520c6: 4485 li s1,1 - c00520c8: b74d j c005206a + c0052296: 4485 li s1,1 + c0052298: b74d j c005223a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4739 y_is_odd = (y_emin == 0); - c00520ca: 00153a93 seqz s5,a0 + c005229a: 00153a93 seqz s5,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4743 if (r_sign && (rnd_mode == BF_RNDD || rnd_mode == BF_RNDU)) - c00520ce: e909 bnez a0,c00520e0 + c005229e: e909 bnez a0,c00522b0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4743 (discriminator 1) - c00520d0: ffec079b addiw a5,s8,-2 - c00520d4: 4685 li a3,1 - c00520d6: 00f6e563 bltu a3,a5,c00520e0 + c00522a0: ffec079b addiw a5,s8,-2 + c00522a4: 4685 li a3,1 + c00522a6: 00f6e563 bltu a3,a5,c00522b0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4744 flags ^= 1; - c00520da: 00174993 xori s3,a4,1 - c00520de: 2981 sext.w s3,s3 + c00522aa: 00174993 xori s3,a4,1 + c00522ae: 2981 sext.w s3,s3 bf_neg(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:231 r->sign ^= 1; - c00520e0: 47c2 lw a5,16(sp) - c00520e2: 0017c793 xori a5,a5,1 - c00520e6: c83e sw a5,16(sp) + c00522b0: 47c2 lw a5,16(sp) + c00522b2: 0017c793 xori a5,a5,1 + c00522b6: c83e sw a5,16(sp) bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4750 bf_set_ui(r, 1); - c00520e8: 4585 li a1,1 - c00520ea: 8522 mv a0,s0 - c00520ec: f91fa0ef jal ra,c004d07c + c00522b8: 4585 li a1,1 + c00522ba: 8522 mv a0,s0 + c00522bc: f91fa0ef jal ra,c004d24c bf_cmp_eq(): /Users/Luppy/riscv/quickjs-nuttx/libbf.h:269 return bf_cmp(a, b) == 0; - c00520f0: 85a2 mv a1,s0 - c00520f2: 0028 addi a0,sp,8 - c00520f4: d17fb0ef jal ra,c004de0a - c00520f8: 84aa mv s1,a0 + c00522c0: 85a2 mv a1,s0 + c00522c2: 0028 addi a0,sp,8 + c00522c4: d17fb0ef jal ra,c004dfda + c00522c8: 84aa mv s1,a0 bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4751 if (bf_cmp_eq(T, r)) { - c00520fa: c571 beqz a0,c00521c6 + c00522ca: c571 beqz a0,c0052396 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00520fc: 5bfd li s7,-1 - c00520fe: 03fb9793 slli a5,s7,0x3f + c00522cc: 5bfd li s7,-1 + c00522ce: 03fb9793 slli a5,s7,0x3f bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4766 bf_log(al, T, precl, BF_RNDD); - c0052102: 4689 li a3,2 - c0052104: 04000613 li a2,64 - c0052108: 002c addi a1,sp,8 - c005210a: 1808 addi a0,sp,48 + c00522d2: 4689 li a3,2 + c00522d4: 04000613 li a2,64 + c00522d8: 002c addi a1,sp,8 + c00522da: 1808 addi a0,sp,48 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005210c: e0be sd a5,64(sp) - c005210e: f4be sd a5,104(sp) + c00522dc: e0be sd a5,64(sp) + c00522de: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052110: f866 sd s9,48(sp) + c00522e0: f866 sd s9,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0052112: dc02 sw zero,56(sp) + c00522e2: dc02 sw zero,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0052114: e482 sd zero,72(sp) + c00522e4: e482 sd zero,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0052116: e882 sd zero,80(sp) + c00522e6: e882 sd zero,80(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052118: ece6 sd s9,88(sp) + c00522e8: ece6 sd s9,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005211a: d082 sw zero,96(sp) + c00522ea: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005211c: f882 sd zero,112(sp) + c00522ec: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005211e: fc82 sd zero,120(sp) + c00522ee: fc82 sd zero,120(sp) bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4766 bf_log(al, T, precl, BF_RNDD); - c0052120: d13ff0ef jal ra,c0051e32 + c00522f0: d13ff0ef jal ra,c0052002 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4767 bf_log(ah, T, precl, BF_RNDU); - c0052124: 468d li a3,3 - c0052126: 04000613 li a2,64 - c005212a: 002c addi a1,sp,8 - c005212c: 08a8 addi a0,sp,88 - c005212e: d05ff0ef jal ra,c0051e32 + c00522f4: 468d li a3,3 + c00522f6: 04000613 li a2,64 + c00522fa: 002c addi a1,sp,8 + c00522fc: 08a8 addi a0,sp,88 + c00522fe: d05ff0ef jal ra,c0052002 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4768 bf_mul(al, al, y, precl, BF_RNDD ^ y->sign); - c0052132: 00892703 lw a4,8(s2) - c0052136: 180c addi a1,sp,48 - c0052138: 04000693 li a3,64 - c005213c: 00274713 xori a4,a4,2 - c0052140: 864a mv a2,s2 - c0052142: 852e mv a0,a1 - c0052144: f96fc0ef jal ra,c004e8da + c0052302: 00892703 lw a4,8(s2) + c0052306: 180c addi a1,sp,48 + c0052308: 04000693 li a3,64 + c005230c: 00274713 xori a4,a4,2 + c0052310: 864a mv a2,s2 + c0052312: 852e mv a0,a1 + c0052314: f96fc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4769 bf_mul(ah, ah, y, precl, BF_RNDU ^ y->sign); - c0052148: 00892703 lw a4,8(s2) - c005214c: 08ac addi a1,sp,88 - c005214e: 04000693 li a3,64 - c0052152: 00374713 xori a4,a4,3 - c0052156: 864a mv a2,s2 - c0052158: 852e mv a0,a1 - c005215a: f80fc0ef jal ra,c004e8da + c0052318: 00892703 lw a4,8(s2) + c005231c: 08ac addi a1,sp,88 + c005231e: 04000693 li a3,64 + c0052322: 00374713 xori a4,a4,3 + c0052326: 864a mv a2,s2 + c0052328: 852e mv a0,a1 + c005232a: f80fc0ef jal ra,c004eaaa /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4770 ret = check_exp_underflow_overflow(s, r, al, ah, prec, flags); - c005215e: 87ce mv a5,s3 - c0052160: 8752 mv a4,s4 - c0052162: 08b4 addi a3,sp,88 - c0052164: 1810 addi a2,sp,48 - c0052166: 85a2 mv a1,s0 - c0052168: 8566 mv a0,s9 - c005216a: ad2ff0ef jal ra,c005143c - c005216e: 84aa mv s1,a0 + c005232e: 87ce mv a5,s3 + c0052330: 8752 mv a4,s4 + c0052332: 08b4 addi a3,sp,88 + c0052334: 1810 addi a2,sp,48 + c0052336: 85a2 mv a1,s0 + c0052338: 8566 mv a0,s9 + c005233a: ad2ff0ef jal ra,c005160c + c005233e: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4771 bf_delete(al); - c0052170: 1808 addi a0,sp,48 - c0052172: b1bfa0ef jal ra,c004cc8c + c0052340: 1808 addi a0,sp,48 + c0052342: b1bfa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4772 bf_delete(ah); - c0052176: 08a8 addi a0,sp,88 - c0052178: b15fa0ef jal ra,c004cc8c + c0052346: 08a8 addi a0,sp,88 + c0052348: b15fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4773 if (ret) - c005217c: e4a9 bnez s1,c00521c6 + c005234c: e4a9 bnez s1,c0052396 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4777 if (y_is_int) { - c005217e: 100b4363 bltz s6,c0052284 + c005234e: 100b4363 bltz s6,c0052454 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4780 T_bits = T->expn - bf_get_exp_min(T); - c0052182: 64e2 ld s1,24(sp) - c0052184: 0028 addi a0,sp,8 - c0052186: 9fbfc0ef jal ra,c004eb80 - c005218a: 40a48533 sub a0,s1,a0 + c0052352: 64e2 ld s1,24(sp) + c0052354: 0028 addi a0,sp,8 + c0052356: 9fbfc0ef jal ra,c004ed50 + c005235a: 40a48533 sub a0,s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4781 if (T_bits == 1) { - c005218e: 4785 li a5,1 - c0052190: 04f51163 bne a0,a5,c00521d2 + c005235e: 4785 li a5,1 + c0052360: 04f51163 bne a0,a5,c00523a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4783 bf_mul_si(T, y, T->expn - 1, LIMB_BITS, BF_RNDZ); - c0052194: 04000693 li a3,64 - c0052198: 4705 li a4,1 - c005219a: fff48613 addi a2,s1,-1 - c005219e: 85ca mv a1,s2 - c00521a0: 0028 addi a0,sp,8 - c00521a2: ae2fd0ef jal ra,c004f484 + c0052364: 04000693 li a3,64 + c0052368: 4705 li a4,1 + c005236a: fff48613 addi a2,s1,-1 + c005236e: 85ca mv a1,s2 + c0052370: 0028 addi a0,sp,8 + c0052372: ae2fd0ef jal ra,c004f654 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c00521a6: 4601 li a2,0 - c00521a8: 002c addi a1,sp,8 - c00521aa: 1808 addi a0,sp,48 - c00521ac: 8b0fe0ef jal ra,c005025c + c0052376: 4601 li a2,0 + c0052378: 002c addi a1,sp,8 + c005237a: 1808 addi a0,sp,48 + c005237c: 8b0fe0ef jal ra,c005042c bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4785 bf_set_ui(r, 1); - c00521b0: 4585 li a1,1 - c00521b2: 8522 mv a0,s0 - c00521b4: ec9fa0ef jal ra,c004d07c + c0052380: 4585 li a1,1 + c0052382: 8522 mv a0,s0 + c0052384: ec9fa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4786 ret = bf_mul_2exp(r, e, prec, flags); - c00521b8: 75c2 ld a1,48(sp) - c00521ba: 86ce mv a3,s3 - c00521bc: 8652 mv a2,s4 - c00521be: 8522 mv a0,s0 - c00521c0: 987fc0ef jal ra,c004eb46 + c0052388: 75c2 ld a1,48(sp) + c005238a: 86ce mv a3,s3 + c005238c: 8652 mv a2,s4 + c005238e: 8522 mv a0,s0 + c0052390: 987fc0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4839 ret = bf_ziv_rounding(r, T, prec, flags, bf_pow_generic, (void *)y); - c00521c4: 84aa mv s1,a0 + c0052394: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4843 bf_delete(T); - c00521c6: 0028 addi a0,sp,8 - c00521c8: ac5fa0ef jal ra,c004cc8c + c0052396: 0028 addi a0,sp,8 + c0052398: ac5fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4844 r->sign = r_sign; - c00521cc: 01542423 sw s5,8(s0) + c005239c: 01542423 sw s5,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4845 return ret; - c00521d0: bd69 j c005206a + c00523a0: bd69 j c005223a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4787 } else if (prec == BF_PREC_INF) { - c00521d2: 54fd li s1,-1 - c00521d4: 0024d793 srli a5,s1,0x2 - c00521d8: 04fa1863 bne s4,a5,c0052228 + c00523a2: 54fd li s1,-1 + c00523a4: 0024d793 srli a5,s1,0x2 + c00523a8: 04fa1863 bne s4,a5,c00523f8 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c00521dc: 4601 li a2,0 - c00521de: 85ca mv a1,s2 - c00521e0: 1808 addi a0,sp,48 - c00521e2: 87afe0ef jal ra,c005025c + c00523ac: 4601 li a2,0 + c00523ae: 85ca mv a1,s2 + c00523b0: 1808 addi a0,sp,48 + c00523b2: 87afe0ef jal ra,c005042c bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4791 assert(!y->sign); - c00521e6: 00892783 lw a5,8(s2) - c00521ea: cb99 beqz a5,c0052200 + c00523b6: 00892783 lw a5,8(s2) + c00523ba: cb99 beqz a5,c00523d0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4791 (discriminator 1) - c00521ec: 6585 lui a1,0x1 - c00521ee: 4601 li a2,0 - c00521f0: 2b758593 addi a1,a1,695 # 12b7 <__clzdi2-0xbfffed49> - c00521f4: 00020517 auipc a0,0x20 - c00521f8: 12450513 addi a0,a0,292 # c0072318 - c00521fc: 01d010ef jal ra,c0053a18 <__assert> + c00523bc: 6585 lui a1,0x1 + c00523be: 4601 li a2,0 + c00523c0: 2b758593 addi a1,a1,695 # 12b7 <__clzdi2-0xbfffed49> + c00523c4: 00020517 auipc a0,0x20 + c00523c8: 1b450513 addi a0,a0,436 # c0072578 + c00523cc: 01d010ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4793 (discriminator 2) if (y1 >= ((slimb_t)1 << BF_EXP_BITS_MAX)) { - c0052200: 7642 ld a2,48(sp) - c0052202: 808d srli s1,s1,0x3 - c0052204: 00c4db63 bge s1,a2,c005221a + c00523d0: 7642 ld a2,48(sp) + c00523d2: 808d srli s1,s1,0x3 + c00523d4: 00c4db63 bge s1,a2,c00523ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4794 bf_delete(T); - c0052208: 0028 addi a0,sp,8 - c005220a: a83fa0ef jal ra,c004cc8c + c00523d8: 0028 addi a0,sp,8 + c00523da: a83fa0ef jal ra,c004ce5c bf_set_overflow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:477 bf_set_inf(r, sign); - c005220e: 4581 li a1,0 - c0052210: 8522 mv a0,s0 - c0052212: f11fa0ef jal ra,c004d122 + c00523de: 4581 li a1,0 + c00523e0: 8522 mv a0,s0 + c00523e2: f11fa0ef jal ra,c004d2f2 bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4795 return bf_set_overflow(r, 0, BF_PREC_INF, flags); - c0052216: 44d1 li s1,20 - c0052218: bd89 j c005206a + c00523e6: 44d1 li s1,20 + c00523e8: bd89 j c005223a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4797 ret = bf_pow_ui(r, T, y1, BF_PREC_INF, BF_RNDZ); - c005221a: 4705 li a4,1 - c005221c: 86d2 mv a3,s4 - c005221e: 002c addi a1,sp,8 - c0052220: 8522 mv a0,s0 - c0052222: 825fc0ef jal ra,c004ea46 - c0052226: bf79 j c00521c4 + c00523ea: 4705 li a4,1 + c00523ec: 86d2 mv a3,s4 + c00523ee: 002c addi a1,sp,8 + c00523f0: 8522 mv a0,s0 + c00523f2: 825fc0ef jal ra,c004ec16 + c00523f6: bf79 j c0052394 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4799 if (y->expn <= 31) { - c0052228: 01093703 ld a4,16(s2) - c005222c: 47fd li a5,31 - c005222e: 00e7ce63 blt a5,a4,c005224a + c00523f8: 01093703 ld a4,16(s2) + c00523fc: 47fd li a5,31 + c00523fe: 00e7ce63 blt a5,a4,c005241a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4816 ret = bf_ziv_rounding(r, T, prec, flags, bf_pow_int, (void *)y); - c0052232: 87ca mv a5,s2 - c0052234: ffffe717 auipc a4,0xffffe - c0052238: 12270713 addi a4,a4,290 # c0050356 + c0052402: 87ca mv a5,s2 + c0052404: ffffe717 auipc a4,0xffffe + c0052408: 12270713 addi a4,a4,290 # c0050526 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4839 ret = bf_ziv_rounding(r, T, prec, flags, bf_pow_generic, (void *)y); - c005223c: 86ce mv a3,s3 - c005223e: 8652 mv a2,s4 - c0052240: 002c addi a1,sp,8 - c0052242: 8522 mv a0,s0 - c0052244: ca6fb0ef jal ra,c004d6ea - c0052248: bfb5 j c00521c4 + c005240c: 86ce mv a3,s3 + c005240e: 8652 mv a2,s4 + c0052410: 002c addi a1,sp,8 + c0052412: 8522 mv a0,s0 + c0052414: ca6fb0ef jal ra,c004d8ba + c0052418: bfb5 j c0052394 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4801 } else if (y->sign) { - c005224a: 00892783 lw a5,8(s2) - c005224e: e78d bnez a5,c0052278 + c005241a: 00892783 lw a5,8(s2) + c005241e: e78d bnez a5,c0052448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4805 if (rnd_mode == BF_RNDF) - c0052250: 4799 li a5,6 - c0052252: 02fc0363 beq s8,a5,c0052278 + c0052420: 4799 li a5,6 + c0052422: 02fc0363 beq s8,a5,c0052448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4811 bf_mul_si(r, y, T_bits - 1, LIMB_BITS, BF_RNDZ); - c0052256: fff50613 addi a2,a0,-1 - c005225a: 4705 li a4,1 - c005225c: 04000693 li a3,64 - c0052260: 85ca mv a1,s2 - c0052262: 8522 mv a0,s0 - c0052264: a20fd0ef jal ra,c004f484 + c0052426: fff50613 addi a2,a0,-1 + c005242a: 4705 li a4,1 + c005242c: 04000693 li a3,64 + c0052430: 85ca mv a1,s2 + c0052432: 8522 mv a0,s0 + c0052434: a20fd0ef jal ra,c004f654 bf_get_limb(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:1862 return bf_get_int64(pres, a, flags); - c0052268: 4601 li a2,0 - c005226a: 85a2 mv a1,s0 - c005226c: 1808 addi a0,sp,48 - c005226e: feffd0ef jal ra,c005025c + c0052438: 4601 li a2,0 + c005243a: 85a2 mv a1,s0 + c005243c: 1808 addi a0,sp,48 + c005243e: feffd0ef jal ra,c005042c bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4813 if (prec < e) - c0052272: 77c2 ld a5,48(sp) - c0052274: fafa7fe3 bgeu s4,a5,c0052232 + c0052442: 77c2 ld a5,48(sp) + c0052444: fafa7fe3 bgeu s4,a5,c0052402 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4839 ret = bf_ziv_rounding(r, T, prec, flags, bf_pow_generic, (void *)y); - c0052278: 87ca mv a5,s2 - c005227a: 00000717 auipc a4,0x0 - c005227e: c8a70713 addi a4,a4,-886 # c0051f04 - c0052282: bf6d j c005223c + c0052448: 87ca mv a5,s2 + c005244a: 00000717 auipc a4,0x0 + c005244e: c8a70713 addi a4,a4,-886 # c00520d4 + c0052452: bf6d j c005240c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4819 if (rnd_mode != BF_RNDF) { - c0052284: 4799 li a5,6 - c0052286: fefc09e3 beq s8,a5,c0052278 + c0052454: 4799 li a5,6 + c0052456: fefc09e3 beq s8,a5,c0052448 check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4648 (discriminator 1) e = bf_get_exp_min(x); - c005228a: 0028 addi a0,sp,8 - c005228c: 8f5fc0ef jal ra,c004eb80 + c005245a: 0028 addi a0,sp,8 + c005245c: 8f5fc0ef jal ra,c004ed50 bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4821 (discriminator 1) if (y_emin < 0 && check_exact_power2n(r, T, -y_emin)) { - c0052290: 416004b3 neg s1,s6 + c0052460: 416004b3 neg s1,s6 check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4650 (discriminator 1) if (n > (LIMB_BITS - 1)) { - c0052294: 03f00793 li a5,63 + c0052464: 03f00793 li a5,63 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4648 (discriminator 1) e = bf_get_exp_min(x); - c0052298: 8caa mv s9,a0 + c0052468: 8caa mv s9,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4650 (discriminator 1) if (n > (LIMB_BITS - 1)) { - c005229a: 0697dd63 bge a5,s1,c0052314 + c005246a: 0697dd63 bge a5,s1,c00524e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4653 er = 0; - c005229e: 4b81 li s7,0 + c005246e: 4b81 li s7,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4651 if (e != 0) - c00522a0: fd61 bnez a0,c0052278 + c0052470: fd61 bnez a0,c0052448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4660 v = get_bits(x->tab, x->len, x->len * LIMB_BITS - x->expn + e); - c00522a2: 7582 ld a1,32(sp) - c00522a4: 67e2 ld a5,24(sp) - c00522a6: 7522 ld a0,40(sp) - c00522a8: 00659613 slli a2,a1,0x6 - c00522ac: 8e1d sub a2,a2,a5 - c00522ae: 9666 add a2,a2,s9 - c00522b0: a1dfa0ef jal ra,c004cccc + c0052472: 7582 ld a1,32(sp) + c0052474: 67e2 ld a5,24(sp) + c0052476: 7522 ld a0,40(sp) + c0052478: 00659613 slli a2,a1,0x6 + c005247c: 8e1d sub a2,a2,a5 + c005247e: 9666 add a2,a2,s9 + c0052480: a1dfa0ef jal ra,c004ce9c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4661 if ((v & 7) != 1) - c00522b4: 891d andi a0,a0,7 - c00522b6: 4785 li a5,1 - c00522b8: fcf510e3 bne a0,a5,c0052278 + c0052484: 891d andi a0,a0,7 + c0052486: 4785 li a5,1 + c0052488: fcf510e3 bne a0,a5,c0052448 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00522bc: 601c ld a5,0(s0) + c005248c: 601c ld a5,0(s0) check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4665 bf_set(T, x); - c00522be: 002c addi a1,sp,8 - c00522c0: 08a8 addi a0,sp,88 + c005248e: 002c addi a1,sp,8 + c0052490: 08a8 addi a0,sp,88 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c00522c2: ecbe sd a5,88(sp) + c0052492: ecbe sd a5,88(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00522c4: 57fd li a5,-1 - c00522c6: 17fe slli a5,a5,0x3f + c0052494: 57fd li a5,-1 + c0052496: 17fe slli a5,a5,0x3f /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c00522c8: d082 sw zero,96(sp) + c0052498: d082 sw zero,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c00522ca: f4be sd a5,104(sp) + c005249a: f4be sd a5,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c00522cc: f882 sd zero,112(sp) + c005249c: f882 sd zero,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c00522ce: fc82 sd zero,120(sp) + c005249e: fc82 sd zero,120(sp) check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4665 bf_set(T, x); - c00522d0: 9f0fb0ef jal ra,c004d4c0 + c00524a0: 9f0fb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4666 T->expn -= e; - c00522d4: 7526 ld a0,104(sp) - c00522d6: 41950cb3 sub s9,a0,s9 - c00522da: f4e6 sd s9,104(sp) + c00524a4: 7526 ld a0,104(sp) + c00524a6: 41950cb3 sub s9,a0,s9 + c00524aa: f4e6 sd s9,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4667 for(i = 0; i < n; i++) { - c00522dc: 4c81 li s9,0 - c00522de: 049cc863 blt s9,s1,c005232e + c00524ac: 4c81 li s9,0 + c00524ae: 049cc863 blt s9,s1,c00524fe /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4673 r->expn += er; - c00522e2: 681c ld a5,16(s0) + c00524b2: 681c ld a5,16(s0) bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4828 bf_set(T, r); - c00522e4: 85a2 mv a1,s0 - c00522e6: 0028 addi a0,sp,8 + c00524b4: 85a2 mv a1,s0 + c00524b6: 0028 addi a0,sp,8 check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4673 r->expn += er; - c00522e8: 9bbe add s7,s7,a5 - c00522ea: 01743823 sd s7,16(s0) + c00524b8: 9bbe add s7,s7,a5 + c00524ba: 01743823 sd s7,16(s0) bf_pow(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4828 bf_set(T, r); - c00522ee: 9d2fb0ef jal ra,c004d4c0 + c00524be: 9d2fb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4830 y1->tab = y->tab; - c00522f2: 02093783 ld a5,32(s2) + c00524c2: 02093783 ld a5,32(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4833 y1->expn = y->expn - y_emin; - c00522f6: 01093503 ld a0,16(s2) + c00524c6: 01093503 ld a0,16(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4830 y1->tab = y->tab; - c00522fa: fcbe sd a5,120(sp) + c00524ca: fcbe sd a5,120(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4831 y1->len = y->len; - c00522fc: 01893783 ld a5,24(s2) + c00524cc: 01893783 ld a5,24(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4833 y1->expn = y->expn - y_emin; - c0052300: 41650b33 sub s6,a0,s6 - c0052304: f4da sd s6,104(sp) + c00524d0: 41650b33 sub s6,a0,s6 + c00524d4: f4da sd s6,104(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4831 y1->len = y->len; - c0052306: f8be sd a5,112(sp) + c00524d6: f8be sd a5,112(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4832 y1->sign = y->sign; - c0052308: 00892783 lw a5,8(s2) + c00524d8: 00892783 lw a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4834 y = y1; - c005230c: 05810913 addi s2,sp,88 + c00524dc: 05810913 addi s2,sp,88 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4832 y1->sign = y->sign; - c0052310: d0be sw a5,96(sp) + c00524e0: d0be sw a5,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4835 goto int_pow; - c0052312: bd85 j c0052182 + c00524e2: bd85 j c0052352 check_exact_power2n(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4655 if ((e & (((limb_t)1 << n) - 1)) != 0) - c0052314: 009b9bb3 sll s7,s7,s1 - c0052318: fffbcb93 not s7,s7 - c005231c: 00abfbb3 and s7,s7,a0 - c0052320: 0004879b sext.w a5,s1 - c0052324: f40b9ae3 bnez s7,c0052278 + c00524e4: 009b9bb3 sll s7,s7,s1 + c00524e8: fffbcb93 not s7,s7 + c00524ec: 00abfbb3 and s7,s7,a0 + c00524f0: 0004879b sext.w a5,s1 + c00524f4: f40b9ae3 bnez s7,c0052448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4657 er = e >> n; - c0052328: 40f55bb3 sra s7,a0,a5 - c005232c: bf9d j c00522a2 + c00524f8: 40f55bb3 sra s7,a0,a5 + c00524fc: bf9d j c0052472 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4668 if (i != 0) - c005232e: 000c8663 beqz s9,c005233a + c00524fe: 000c8663 beqz s9,c005250a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4669 bf_set(T, r); - c0052332: 85a2 mv a1,s0 - c0052334: 08a8 addi a0,sp,88 - c0052336: 98afb0ef jal ra,c004d4c0 + c0052502: 85a2 mv a1,s0 + c0052504: 08a8 addi a0,sp,88 + c0052506: 98afb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4670 if (bf_sqrtrem(r, NULL, T) != 0) - c005233a: 08b0 addi a2,sp,88 - c005233c: 4581 li a1,0 - c005233e: 8522 mv a0,s0 - c0052340: c1cfd0ef jal ra,c004f75c - c0052344: f915 bnez a0,c0052278 + c005250a: 08b0 addi a2,sp,88 + c005250c: 4581 li a1,0 + c005250e: 8522 mv a0,s0 + c0052510: c1cfd0ef jal ra,c004f92c + c0052514: f915 bnez a0,c0052448 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4667 for(i = 0; i < n; i++) { - c0052346: 0c85 addi s9,s9,1 - c0052348: bf59 j c00522de + c0052516: 0c85 addi s9,s9,1 + c0052518: bf59 j c00524ae -00000000c005234a : +00000000c005251a : bf_cos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4966 { - c005234a: 7179 addi sp,sp,-48 - c005234c: f406 sd ra,40(sp) - c005234e: f022 sd s0,32(sp) - c0052350: ec26 sd s1,24(sp) + c005251a: 7179 addi sp,sp,-48 + c005251c: f406 sd ra,40(sp) + c005251e: f022 sd s0,32(sp) + c0052520: ec26 sd s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4967 if (a->len == 0) { - c0052352: 6d9c ld a5,24(a1) + c0052522: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4968 if (a->expn == BF_EXP_NAN) { - c0052354: 0105b803 ld a6,16(a1) + c0052524: 0105b803 ld a6,16(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4967 if (a->len == 0) { - c0052358: eb8d bnez a5,c005238a + c0052528: eb8d bnez a5,c005255a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4968 if (a->expn == BF_EXP_NAN) { - c005235a: 57fd li a5,-1 - c005235c: 8385 srli a5,a5,0x1 - c005235e: 00f81663 bne a6,a5,c005236a + c005252a: 57fd li a5,-1 + c005252c: 8385 srli a5,a5,0x1 + c005252e: 00f81663 bne a6,a5,c005253a /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4969 bf_set_nan(r); - c0052362: cfbfa0ef jal ra,c004d05c + c0052532: cfbfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4976 return 0; - c0052366: 4501 li a0,0 - c0052368: a801 j c0052378 + c0052536: 4501 li a0,0 + c0052538: a801 j c0052548 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4971 } else if (a->expn == BF_EXP_INF) { - c005236a: 57f5 li a5,-3 - c005236c: 8385 srli a5,a5,0x1 - c005236e: 00f81a63 bne a6,a5,c0052382 + c005253a: 57f5 li a5,-3 + c005253c: 8385 srli a5,a5,0x1 + c005253e: 00f81a63 bne a6,a5,c0052552 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4972 bf_set_nan(r); - c0052372: cebfa0ef jal ra,c004d05c + c0052542: cebfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4973 return BF_ST_INVALID_OP; - c0052376: 4505 li a0,1 + c0052546: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c0052378: 70a2 ld ra,40(sp) - c005237a: 7402 ld s0,32(sp) - c005237c: 64e2 ld s1,24(sp) - c005237e: 6145 addi sp,sp,48 - c0052380: 8082 ret + c0052548: 70a2 ld ra,40(sp) + c005254a: 7402 ld s0,32(sp) + c005254c: 64e2 ld s1,24(sp) + c005254e: 6145 addi sp,sp,48 + c0052550: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4975 bf_set_ui(r, 1); - c0052382: 4585 li a1,1 - c0052384: cf9fa0ef jal ra,c004d07c - c0052388: bff9 j c0052366 - c005238a: 84aa mv s1,a0 + c0052552: 4585 li a1,1 + c0052554: cf9fa0ef jal ra,c004d24c + c0052558: bff9 j c0052536 + c005255a: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4982 if (a->expn < 0) { - c005238c: 02085c63 bgez a6,c00523c4 + c005255c: 02085c63 bgez a6,c0052594 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4984 e = 2 * a->expn - 1; - c0052390: 0806 slli a6,a6,0x1 + c0052560: 0806 slli a6,a6,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4985 if (e < -(prec + 2)) { - c0052392: 57f9 li a5,-2 + c0052562: 57f9 li a5,-2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4984 e = 2 * a->expn - 1; - c0052394: fff80413 addi s0,a6,-1 + c0052564: fff80413 addi s0,a6,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4985 if (e < -(prec + 2)) { - c0052398: 8f91 sub a5,a5,a2 - c005239a: 02f47563 bgeu s0,a5,c00523c4 + c0052568: 8f91 sub a5,a5,a2 + c005256a: 02f47563 bgeu s0,a5,c0052594 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4986 bf_set_ui(r, 1); - c005239e: 4585 li a1,1 - c00523a0: e436 sd a3,8(sp) - c00523a2: e032 sd a2,0(sp) - c00523a4: cd9fa0ef jal ra,c004d07c + c005256e: 4585 li a1,1 + c0052570: e436 sd a3,8(sp) + c0052572: e032 sd a2,0(sp) + c0052574: cd9fa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4987 return bf_add_epsilon(r, r, e, 1, prec, flags); - c00523a8: 6602 ld a2,0(sp) - c00523aa: 66a2 ld a3,8(sp) - c00523ac: 608c ld a1,0(s1) - c00523ae: 8732 mv a4,a2 - c00523b0: 8622 mv a2,s0 + c0052578: 6602 ld a2,0(sp) + c005257a: 66a2 ld a3,8(sp) + c005257c: 608c ld a1,0(s1) + c005257e: 8732 mv a4,a2 + c0052580: 8622 mv a2,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523b2: 7402 ld s0,32(sp) - c00523b4: 70a2 ld ra,40(sp) + c0052582: 7402 ld s0,32(sp) + c0052584: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4987 return bf_add_epsilon(r, r, e, 1, prec, flags); - c00523b6: 8526 mv a0,s1 + c0052586: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523b8: 64e2 ld s1,24(sp) + c0052588: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4987 return bf_add_epsilon(r, r, e, 1, prec, flags); - c00523ba: 87b6 mv a5,a3 - c00523bc: 4685 li a3,1 + c005258a: 87b6 mv a5,a3 + c005258c: 4685 li a3,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523be: 6145 addi sp,sp,48 + c005258e: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4987 return bf_add_epsilon(r, r, e, 1, prec, flags); - c00523c0: cfffc06f j c004f0be + c0052590: cfffc06f j c004f28e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523c4: 7402 ld s0,32(sp) - c00523c6: 70a2 ld ra,40(sp) + c0052594: 7402 ld s0,32(sp) + c0052596: 70a2 ld ra,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4991 return bf_ziv_rounding(r, a, prec, flags, bf_cos_internal, NULL); - c00523c8: 8526 mv a0,s1 + c0052598: 8526 mv a0,s1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523ca: 64e2 ld s1,24(sp) + c005259a: 64e2 ld s1,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4991 return bf_ziv_rounding(r, a, prec, flags, bf_cos_internal, NULL); - c00523cc: 4781 li a5,0 - c00523ce: fffff717 auipc a4,0xfffff - c00523d2: 64270713 addi a4,a4,1602 # c0051a10 + c005259c: 4781 li a5,0 + c005259e: fffff717 auipc a4,0xfffff + c00525a2: 64270713 addi a4,a4,1602 # c0051be0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4992 } - c00523d6: 6145 addi sp,sp,48 + c00525a6: 6145 addi sp,sp,48 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4991 return bf_ziv_rounding(r, a, prec, flags, bf_cos_internal, NULL); - c00523d8: b12fb06f j c004d6ea + c00525a8: b12fb06f j c004d8ba -00000000c00523dc : +00000000c00525ac : bf_sin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5000 { - c00523dc: 715d addi sp,sp,-80 - c00523de: e0a2 sd s0,64(sp) - c00523e0: e486 sd ra,72(sp) - c00523e2: fc26 sd s1,56(sp) - c00523e4: f84a sd s2,48(sp) - c00523e6: f44e sd s3,40(sp) - c00523e8: f052 sd s4,32(sp) - c00523ea: ec56 sd s5,24(sp) + c00525ac: 715d addi sp,sp,-80 + c00525ae: e0a2 sd s0,64(sp) + c00525b0: e486 sd ra,72(sp) + c00525b2: fc26 sd s1,56(sp) + c00525b4: f84a sd s2,48(sp) + c00525b6: f44e sd s3,40(sp) + c00525b8: f052 sd s4,32(sp) + c00525ba: ec56 sd s5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5001 if (a->len == 0) { - c00523ec: 0185b903 ld s2,24(a1) + c00525bc: 0185b903 ld s2,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5002 if (a->expn == BF_EXP_NAN) { - c00523f0: 6984 ld s1,16(a1) + c00525c0: 6984 ld s1,16(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5000 { - c00523f2: 842e mv s0,a1 + c00525c2: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5001 if (a->len == 0) { - c00523f4: 02091e63 bnez s2,c0052430 + c00525c4: 02091e63 bnez s2,c0052600 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5002 if (a->expn == BF_EXP_NAN) { - c00523f8: 57fd li a5,-1 - c00523fa: 8385 srli a5,a5,0x1 - c00523fc: 00f49663 bne s1,a5,c0052408 + c00525c8: 57fd li a5,-1 + c00525ca: 8385 srli a5,a5,0x1 + c00525cc: 00f49663 bne s1,a5,c00525d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5003 bf_set_nan(r); - c0052400: c5dfa0ef jal ra,c004d05c + c00525d0: c5dfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5010 return 0; - c0052404: 4501 li a0,0 - c0052406: a801 j c0052416 + c00525d4: 4501 li a0,0 + c00525d6: a801 j c00525e6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5005 } else if (a->expn == BF_EXP_INF) { - c0052408: 57f5 li a5,-3 - c005240a: 8385 srli a5,a5,0x1 - c005240c: 00f49e63 bne s1,a5,c0052428 + c00525d8: 57f5 li a5,-3 + c00525da: 8385 srli a5,a5,0x1 + c00525dc: 00f49e63 bne s1,a5,c00525f8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5006 bf_set_nan(r); - c0052410: c4dfa0ef jal ra,c004d05c + c00525e0: c4dfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5007 return BF_ST_INVALID_OP; - c0052414: 4505 li a0,1 + c00525e4: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c0052416: 60a6 ld ra,72(sp) - c0052418: 6406 ld s0,64(sp) - c005241a: 74e2 ld s1,56(sp) - c005241c: 7942 ld s2,48(sp) - c005241e: 79a2 ld s3,40(sp) - c0052420: 7a02 ld s4,32(sp) - c0052422: 6ae2 ld s5,24(sp) - c0052424: 6161 addi sp,sp,80 - c0052426: 8082 ret + c00525e6: 60a6 ld ra,72(sp) + c00525e8: 6406 ld s0,64(sp) + c00525ea: 74e2 ld s1,56(sp) + c00525ec: 7942 ld s2,48(sp) + c00525ee: 79a2 ld s3,40(sp) + c00525f0: 7a02 ld s4,32(sp) + c00525f2: 6ae2 ld s5,24(sp) + c00525f4: 6161 addi sp,sp,80 + c00525f6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5009 bf_set_zero(r, a->sign); - c0052428: 458c lw a1,8(a1) - c005242a: cd5fa0ef jal ra,c004d0fe - c005242e: bfd9 j c0052404 - c0052430: 89aa mv s3,a0 - c0052432: 8a32 mv s4,a2 - c0052434: 8ab6 mv s5,a3 + c00525f8: 458c lw a1,8(a1) + c00525fa: cd5fa0ef jal ra,c004d2ce + c00525fe: bfd9 j c00525d4 + c0052600: 89aa mv s3,a0 + c0052602: 8a32 mv s4,a2 + c0052604: 8ab6 mv s5,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5016 if (a->expn < 0) { - c0052436: 0404dd63 bgez s1,c0052490 + c0052606: 0404dd63 bgez s1,c0052660 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5018 e = sat_add(2 * a->expn, a->expn - 2); - c005243a: ffe48593 addi a1,s1,-2 - c005243e: 00149513 slli a0,s1,0x1 - c0052442: 85dfa0ef jal ra,c004cc9e + c005260a: ffe48593 addi a1,s1,-2 + c005260e: 00149513 slli a0,s1,0x1 + c0052612: 85dfa0ef jal ra,c004ce6e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5019 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052446: 00691593 slli a1,s2,0x6 - c005244a: 002a0793 addi a5,s4,2 - c005244e: 0589 addi a1,a1,2 + c0052616: 00691593 slli a1,s2,0x6 + c005261a: 002a0793 addi a5,s4,2 + c005261e: 0589 addi a1,a1,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5018 e = sat_add(2 * a->expn, a->expn - 2); - c0052450: 862a mv a2,a0 + c0052620: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5019 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052452: 00f5d363 bge a1,a5,c0052458 - c0052456: 85be mv a1,a5 - c0052458: 8c8d sub s1,s1,a1 - c005245a: 02965b63 bge a2,s1,c0052490 + c0052622: 00f5d363 bge a1,a5,c0052628 + c0052626: 85be mv a1,a5 + c0052628: 8c8d sub s1,s1,a1 + c005262a: 02965b63 bge a2,s1,c0052660 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5020 bf_set(r, a); - c005245e: 85a2 mv a1,s0 - c0052460: 854e mv a0,s3 - c0052462: e432 sd a2,8(sp) - c0052464: 85cfb0ef jal ra,c004d4c0 + c005262e: 85a2 mv a1,s0 + c0052630: 854e mv a0,s3 + c0052632: e432 sd a2,8(sp) + c0052634: 85cfb0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5021 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c0052468: 4414 lw a3,8(s0) - c005246a: 4585 li a1,1 + c0052638: 4414 lw a3,8(s0) + c005263a: 4585 li a1,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c005246c: 6406 ld s0,64(sp) + c005263c: 6406 ld s0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5021 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c005246e: 6622 ld a2,8(sp) + c005263e: 6622 ld a2,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c0052470: 60a6 ld ra,72(sp) - c0052472: 74e2 ld s1,56(sp) - c0052474: 7942 ld s2,48(sp) + c0052640: 60a6 ld ra,72(sp) + c0052642: 74e2 ld s1,56(sp) + c0052644: 7942 ld s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5021 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c0052476: 87d6 mv a5,s5 - c0052478: 8752 mv a4,s4 + c0052646: 87d6 mv a5,s5 + c0052648: 8752 mv a4,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c005247a: 6ae2 ld s5,24(sp) - c005247c: 7a02 ld s4,32(sp) + c005264a: 6ae2 ld s5,24(sp) + c005264c: 7a02 ld s4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5021 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c005247e: 40d586bb subw a3,a1,a3 - c0052482: 854e mv a0,s3 - c0052484: 0009b583 ld a1,0(s3) + c005264e: 40d586bb subw a3,a1,a3 + c0052652: 854e mv a0,s3 + c0052654: 0009b583 ld a1,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c0052488: 79a2 ld s3,40(sp) - c005248a: 6161 addi sp,sp,80 + c0052658: 79a2 ld s3,40(sp) + c005265a: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5021 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c005248c: c33fc06f j c004f0be + c005265c: c33fc06f j c004f28e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5025 return bf_ziv_rounding(r, a, prec, flags, bf_sin_internal, NULL); - c0052490: 85a2 mv a1,s0 + c0052660: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c0052492: 6406 ld s0,64(sp) - c0052494: 60a6 ld ra,72(sp) - c0052496: 74e2 ld s1,56(sp) - c0052498: 7942 ld s2,48(sp) + c0052662: 6406 ld s0,64(sp) + c0052664: 60a6 ld ra,72(sp) + c0052666: 74e2 ld s1,56(sp) + c0052668: 7942 ld s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5025 return bf_ziv_rounding(r, a, prec, flags, bf_sin_internal, NULL); - c005249a: 86d6 mv a3,s5 - c005249c: 8652 mv a2,s4 + c005266a: 86d6 mv a3,s5 + c005266c: 8652 mv a2,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c005249e: 6ae2 ld s5,24(sp) - c00524a0: 7a02 ld s4,32(sp) + c005266e: 6ae2 ld s5,24(sp) + c0052670: 7a02 ld s4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5025 return bf_ziv_rounding(r, a, prec, flags, bf_sin_internal, NULL); - c00524a2: 854e mv a0,s3 + c0052672: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c00524a4: 79a2 ld s3,40(sp) + c0052674: 79a2 ld s3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5025 return bf_ziv_rounding(r, a, prec, flags, bf_sin_internal, NULL); - c00524a6: 4781 li a5,0 - c00524a8: fffff717 auipc a4,0xfffff - c00524ac: 57470713 addi a4,a4,1396 # c0051a1c + c0052676: 4781 li a5,0 + c0052678: fffff717 auipc a4,0xfffff + c005267c: 57470713 addi a4,a4,1396 # c0051bec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5026 } - c00524b0: 6161 addi sp,sp,80 + c0052680: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5025 return bf_ziv_rounding(r, a, prec, flags, bf_sin_internal, NULL); - c00524b2: a38fb06f j c004d6ea + c0052682: a38fb06f j c004d8ba -00000000c00524b6 : +00000000c0052686 : bf_tan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5044 { - c00524b6: 715d addi sp,sp,-80 - c00524b8: e486 sd ra,72(sp) - c00524ba: e0a2 sd s0,64(sp) - c00524bc: fc26 sd s1,56(sp) - c00524be: f84a sd s2,48(sp) - c00524c0: f44e sd s3,40(sp) - c00524c2: f052 sd s4,32(sp) - c00524c4: ec56 sd s5,24(sp) + c0052686: 715d addi sp,sp,-80 + c0052688: e486 sd ra,72(sp) + c005268a: e0a2 sd s0,64(sp) + c005268c: fc26 sd s1,56(sp) + c005268e: f84a sd s2,48(sp) + c0052690: f44e sd s3,40(sp) + c0052692: f052 sd s4,32(sp) + c0052694: ec56 sd s5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5045 assert(r != a); - c00524c6: 00b51c63 bne a0,a1,c00524de + c0052696: 00b51c63 bne a0,a1,c00526ae /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5045 (discriminator 1) - c00524ca: 6585 lui a1,0x1 - c00524cc: 4601 li a2,0 - c00524ce: 3b558593 addi a1,a1,949 # 13b5 <__clzdi2-0xbfffec4b> - c00524d2: 00020517 auipc a0,0x20 - c00524d6: e4650513 addi a0,a0,-442 # c0072318 - c00524da: 53e010ef jal ra,c0053a18 <__assert> + c005269a: 6585 lui a1,0x1 + c005269c: 4601 li a2,0 + c005269e: 3b558593 addi a1,a1,949 # 13b5 <__clzdi2-0xbfffec4b> + c00526a2: 00020517 auipc a0,0x20 + c00526a6: ed650513 addi a0,a0,-298 # c0072578 + c00526aa: 53e010ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5046 (discriminator 2) if (a->len == 0) { - c00524de: 0185b903 ld s2,24(a1) + c00526ae: 0185b903 ld s2,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5047 (discriminator 2) if (a->expn == BF_EXP_NAN) { - c00524e2: 6984 ld s1,16(a1) - c00524e4: 842e mv s0,a1 + c00526b2: 6984 ld s1,16(a1) + c00526b4: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5046 (discriminator 2) if (a->len == 0) { - c00524e6: 02091e63 bnez s2,c0052522 + c00526b6: 02091e63 bnez s2,c00526f2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5047 if (a->expn == BF_EXP_NAN) { - c00524ea: 57fd li a5,-1 - c00524ec: 8385 srli a5,a5,0x1 - c00524ee: 00f49663 bne s1,a5,c00524fa + c00526ba: 57fd li a5,-1 + c00526bc: 8385 srli a5,a5,0x1 + c00526be: 00f49663 bne s1,a5,c00526ca /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5048 bf_set_nan(r); - c00524f2: b6bfa0ef jal ra,c004d05c + c00526c2: b6bfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5055 return 0; - c00524f6: 4501 li a0,0 - c00524f8: a801 j c0052508 + c00526c6: 4501 li a0,0 + c00526c8: a801 j c00526d8 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5050 } else if (a->expn == BF_EXP_INF) { - c00524fa: 57f5 li a5,-3 - c00524fc: 8385 srli a5,a5,0x1 - c00524fe: 00f49e63 bne s1,a5,c005251a + c00526ca: 57f5 li a5,-3 + c00526cc: 8385 srli a5,a5,0x1 + c00526ce: 00f49e63 bne s1,a5,c00526ea /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5051 bf_set_nan(r); - c0052502: b5bfa0ef jal ra,c004d05c + c00526d2: b5bfa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5052 return BF_ST_INVALID_OP; - c0052506: 4505 li a0,1 + c00526d6: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c0052508: 60a6 ld ra,72(sp) - c005250a: 6406 ld s0,64(sp) - c005250c: 74e2 ld s1,56(sp) - c005250e: 7942 ld s2,48(sp) - c0052510: 79a2 ld s3,40(sp) - c0052512: 7a02 ld s4,32(sp) - c0052514: 6ae2 ld s5,24(sp) - c0052516: 6161 addi sp,sp,80 - c0052518: 8082 ret + c00526d8: 60a6 ld ra,72(sp) + c00526da: 6406 ld s0,64(sp) + c00526dc: 74e2 ld s1,56(sp) + c00526de: 7942 ld s2,48(sp) + c00526e0: 79a2 ld s3,40(sp) + c00526e2: 7a02 ld s4,32(sp) + c00526e4: 6ae2 ld s5,24(sp) + c00526e6: 6161 addi sp,sp,80 + c00526e8: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5054 bf_set_zero(r, a->sign); - c005251a: 458c lw a1,8(a1) - c005251c: be3fa0ef jal ra,c004d0fe - c0052520: bfd9 j c00524f6 - c0052522: 89aa mv s3,a0 - c0052524: 8a32 mv s4,a2 - c0052526: 8ab6 mv s5,a3 + c00526ea: 458c lw a1,8(a1) + c00526ec: be3fa0ef jal ra,c004d2ce + c00526f0: bfd9 j c00526c6 + c00526f2: 89aa mv s3,a0 + c00526f4: 8a32 mv s4,a2 + c00526f6: 8ab6 mv s5,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5061 if (a->expn < 0) { - c0052528: 0404da63 bgez s1,c005257c + c00526f8: 0404da63 bgez s1,c005274c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5063 e = sat_add(2 * a->expn, a->expn - 1); - c005252c: fff48593 addi a1,s1,-1 - c0052530: 00149513 slli a0,s1,0x1 - c0052534: f6afa0ef jal ra,c004cc9e + c00526fc: fff48593 addi a1,s1,-1 + c0052700: 00149513 slli a0,s1,0x1 + c0052704: f6afa0ef jal ra,c004ce6e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5064 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052538: 00691593 slli a1,s2,0x6 - c005253c: 002a0793 addi a5,s4,2 - c0052540: 0589 addi a1,a1,2 + c0052708: 00691593 slli a1,s2,0x6 + c005270c: 002a0793 addi a5,s4,2 + c0052710: 0589 addi a1,a1,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5063 e = sat_add(2 * a->expn, a->expn - 1); - c0052542: 862a mv a2,a0 + c0052712: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5064 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052544: 00f5d363 bge a1,a5,c005254a - c0052548: 85be mv a1,a5 - c005254a: 8c8d sub s1,s1,a1 - c005254c: 02965863 bge a2,s1,c005257c + c0052714: 00f5d363 bge a1,a5,c005271a + c0052718: 85be mv a1,a5 + c005271a: 8c8d sub s1,s1,a1 + c005271c: 02965863 bge a2,s1,c005274c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5065 bf_set(r, a); - c0052550: 85a2 mv a1,s0 - c0052552: 854e mv a0,s3 - c0052554: e432 sd a2,8(sp) - c0052556: f6bfa0ef jal ra,c004d4c0 + c0052720: 85a2 mv a1,s0 + c0052722: 854e mv a0,s3 + c0052724: e432 sd a2,8(sp) + c0052726: f6bfa0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5066 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c005255a: 4414 lw a3,8(s0) + c005272a: 4414 lw a3,8(s0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c005255c: 6406 ld s0,64(sp) + c005272c: 6406 ld s0,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5066 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c005255e: 6622 ld a2,8(sp) - c0052560: 0009b583 ld a1,0(s3) + c005272e: 6622 ld a2,8(sp) + c0052730: 0009b583 ld a1,0(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c0052564: 60a6 ld ra,72(sp) - c0052566: 74e2 ld s1,56(sp) - c0052568: 7942 ld s2,48(sp) + c0052734: 60a6 ld ra,72(sp) + c0052736: 74e2 ld s1,56(sp) + c0052738: 7942 ld s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5066 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c005256a: 87d6 mv a5,s5 - c005256c: 8752 mv a4,s4 + c005273a: 87d6 mv a5,s5 + c005273c: 8752 mv a4,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c005256e: 6ae2 ld s5,24(sp) - c0052570: 7a02 ld s4,32(sp) + c005273e: 6ae2 ld s5,24(sp) + c0052740: 7a02 ld s4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5066 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c0052572: 854e mv a0,s3 + c0052742: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c0052574: 79a2 ld s3,40(sp) - c0052576: 6161 addi sp,sp,80 + c0052744: 79a2 ld s3,40(sp) + c0052746: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5066 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c0052578: b47fc06f j c004f0be + c0052748: b47fc06f j c004f28e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5070 return bf_ziv_rounding(r, a, prec, flags, bf_tan_internal, NULL); - c005257c: 85a2 mv a1,s0 + c005274c: 85a2 mv a1,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c005257e: 6406 ld s0,64(sp) - c0052580: 60a6 ld ra,72(sp) - c0052582: 74e2 ld s1,56(sp) - c0052584: 7942 ld s2,48(sp) + c005274e: 6406 ld s0,64(sp) + c0052750: 60a6 ld ra,72(sp) + c0052752: 74e2 ld s1,56(sp) + c0052754: 7942 ld s2,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5070 return bf_ziv_rounding(r, a, prec, flags, bf_tan_internal, NULL); - c0052586: 86d6 mv a3,s5 - c0052588: 8652 mv a2,s4 + c0052756: 86d6 mv a3,s5 + c0052758: 8652 mv a2,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c005258a: 6ae2 ld s5,24(sp) - c005258c: 7a02 ld s4,32(sp) + c005275a: 6ae2 ld s5,24(sp) + c005275c: 7a02 ld s4,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5070 return bf_ziv_rounding(r, a, prec, flags, bf_tan_internal, NULL); - c005258e: 854e mv a0,s3 + c005275e: 854e mv a0,s3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c0052590: 79a2 ld s3,40(sp) + c0052760: 79a2 ld s3,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5070 return bf_ziv_rounding(r, a, prec, flags, bf_tan_internal, NULL); - c0052592: 4781 li a5,0 - c0052594: fffff717 auipc a4,0xfffff - c0052598: 49270713 addi a4,a4,1170 # c0051a26 + c0052762: 4781 li a5,0 + c0052764: fffff717 auipc a4,0xfffff + c0052768: 49270713 addi a4,a4,1170 # c0051bf6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5071 } - c005259c: 6161 addi sp,sp,80 + c005276c: 6161 addi sp,sp,80 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5070 return bf_ziv_rounding(r, a, prec, flags, bf_tan_internal, NULL); - c005259e: 94cfb06f j c004d6ea + c005276e: 94cfb06f j c004d8ba -00000000c00525a2 : +00000000c0052772 : bf_atan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5162 { - c00525a2: 7119 addi sp,sp,-128 - c00525a4: f8a2 sd s0,112(sp) - c00525a6: f4a6 sd s1,104(sp) - c00525a8: f0ca sd s2,96(sp) - c00525aa: ecce sd s3,88(sp) - c00525ac: fc86 sd ra,120(sp) - c00525ae: e8d2 sd s4,80(sp) - c00525b0: e4d6 sd s5,72(sp) + c0052772: 7119 addi sp,sp,-128 + c0052774: f8a2 sd s0,112(sp) + c0052776: f4a6 sd s1,104(sp) + c0052778: f0ca sd s2,96(sp) + c005277a: ecce sd s3,88(sp) + c005277c: fc86 sd ra,120(sp) + c005277e: e8d2 sd s4,80(sp) + c0052780: e4d6 sd s5,72(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5167 if (a->len == 0) { - c00525b2: 6d9c ld a5,24(a1) + c0052782: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5162 { - c00525b4: 89b6 mv s3,a3 - c00525b6: 84aa mv s1,a0 + c0052784: 89b6 mv s3,a3 + c0052786: 84aa mv s1,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5163 bf_context_t *s = r->ctx; - c00525b8: 6114 ld a3,0(a0) + c0052788: 6114 ld a3,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5162 { - c00525ba: 842e mv s0,a1 - c00525bc: 8932 mv s2,a2 + c005278a: 842e mv s0,a1 + c005278c: 8932 mv s2,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5167 if (a->len == 0) { - c00525be: efb9 bnez a5,c005261c + c005278e: efb9 bnez a5,c00527ec /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5168 if (a->expn == BF_EXP_NAN) { - c00525c0: 6990 ld a2,16(a1) - c00525c2: 5a7d li s4,-1 - c00525c4: 001a5793 srli a5,s4,0x1 - c00525c8: 00f61e63 bne a2,a5,c00525e4 + c0052790: 6990 ld a2,16(a1) + c0052792: 5a7d li s4,-1 + c0052794: 001a5793 srli a5,s4,0x1 + c0052798: 00f61e63 bne a2,a5,c00527b4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5169 bf_set_nan(r); - c00525cc: a91fa0ef jal ra,c004d05c + c005279c: a91fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5178 return 0; - c00525d0: 4501 li a0,0 + c00527a0: 4501 li a0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5205 } - c00525d2: 70e6 ld ra,120(sp) - c00525d4: 7446 ld s0,112(sp) - c00525d6: 74a6 ld s1,104(sp) - c00525d8: 7906 ld s2,96(sp) - c00525da: 69e6 ld s3,88(sp) - c00525dc: 6a46 ld s4,80(sp) - c00525de: 6aa6 ld s5,72(sp) - c00525e0: 6109 addi sp,sp,128 - c00525e2: 8082 ret + c00527a2: 70e6 ld ra,120(sp) + c00527a4: 7446 ld s0,112(sp) + c00527a6: 74a6 ld s1,104(sp) + c00527a8: 7906 ld s2,96(sp) + c00527aa: 69e6 ld s3,88(sp) + c00527ac: 6a46 ld s4,80(sp) + c00527ae: 6aa6 ld s5,72(sp) + c00527b0: 6109 addi sp,sp,128 + c00527b2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5171 } else if (a->expn == BF_EXP_INF) { - c00525e4: 5775 li a4,-3 - c00525e6: 8305 srli a4,a4,0x1 + c00527b4: 5775 li a4,-3 + c00527b6: 8305 srli a4,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5173 bf_const_pi_signed(r, a->sign, prec, flags); - c00525e8: 459c lw a5,8(a1) + c00527b8: 459c lw a5,8(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5171 } else if (a->expn == BF_EXP_INF) { - c00525ea: 02e61563 bne a2,a4,c0052614 + c00527ba: 02e61563 bne a2,a4,c00527e4 bf_const_pi_signed(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4219 return bf_const_get(T, prec, flags, &s->pi_cache, bf_const_pi_internal, - c00525ee: 04068693 addi a3,a3,64 - c00525f2: 864e mv a2,s3 - c00525f4: 85ca mv a1,s2 - c00525f6: ffffd717 auipc a4,0xffffd - c00525fa: dc870713 addi a4,a4,-568 # c004f3be - c00525fe: 9a0fb0ef jal ra,c004d79e + c00527be: 04068693 addi a3,a3,64 + c00527c2: 864e mv a2,s3 + c00527c4: 85ca mv a1,s2 + c00527c6: ffffd717 auipc a4,0xffffd + c00527ca: dc870713 addi a4,a4,-568 # c004f58e + c00527ce: 9a0fb0ef jal ra,c004d96e bf_atan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5174 bf_mul_2exp(r, -1, BF_PREC_INF, BF_RNDZ); - c0052602: 4685 li a3,1 - c0052604: 002a5613 srli a2,s4,0x2 - c0052608: 55fd li a1,-1 + c00527d2: 4685 li a3,1 + c00527d4: 002a5613 srli a2,s4,0x2 + c00527d8: 55fd li a1,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5189 bf_mul_2exp(r, -2, BF_PREC_INF, BF_RNDZ); - c005260a: 8526 mv a0,s1 - c005260c: d3afc0ef jal ra,c004eb46 + c00527da: 8526 mv a0,s1 + c00527dc: d3afc0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5190 return BF_ST_INEXACT; - c0052610: 4541 li a0,16 - c0052612: b7c1 j c00525d2 + c00527e0: 4541 li a0,16 + c00527e2: b7c1 j c00527a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5177 bf_set_zero(r, a->sign); - c0052614: 85be mv a1,a5 - c0052616: ae9fa0ef jal ra,c004d0fe - c005261a: bf5d j c00525d0 + c00527e4: 85be mv a1,a5 + c00527e6: ae9fa0ef jal ra,c004d2ce + c00527ea: bf5d j c00527a0 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005261c: 5afd li s5,-1 - c005261e: 03fa9793 slli a5,s5,0x3f + c00527ec: 5afd li s5,-1 + c00527ee: 03fa9793 slli a5,s5,0x3f bf_atan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5183 bf_set_ui(T, 1); - c0052622: 4585 li a1,1 - c0052624: 0828 addi a0,sp,24 + c00527f2: 4585 li a1,1 + c00527f4: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052626: ec36 sd a3,24(sp) + c00527f6: ec36 sd a3,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0052628: f43e sd a5,40(sp) + c00527f8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005262a: d002 sw zero,32(sp) + c00527fa: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005262c: f802 sd zero,48(sp) + c00527fc: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005262e: fc02 sd zero,56(sp) + c00527fe: fc02 sd zero,56(sp) bf_atan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5183 bf_set_ui(T, 1); - c0052630: a4dfa0ef jal ra,c004d07c + c0052800: a4dfa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5184 res = bf_cmpu(a, T); - c0052634: 082c addi a1,sp,24 - c0052636: 8522 mv a0,s0 - c0052638: b14fb0ef jal ra,c004d94c - c005263c: 8a2a mv s4,a0 + c0052804: 082c addi a1,sp,24 + c0052806: 8522 mv a0,s0 + c0052808: b14fb0ef jal ra,c004db1c + c005280c: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5185 bf_delete(T); - c005263e: 0828 addi a0,sp,24 - c0052640: e4cfa0ef jal ra,c004cc8c + c005280e: 0828 addi a0,sp,24 + c0052810: e4cfa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5186 if (res == 0) { - c0052644: 020a1463 bnez s4,c005266c + c0052814: 020a1463 bnez s4,c005283c bf_const_pi_signed(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:4219 return bf_const_get(T, prec, flags, &s->pi_cache, bf_const_pi_internal, - c0052648: 6094 ld a3,0(s1) - c005264a: 441c lw a5,8(s0) - c005264c: 864e mv a2,s3 - c005264e: 04068693 addi a3,a3,64 - c0052652: 85ca mv a1,s2 - c0052654: ffffd717 auipc a4,0xffffd - c0052658: d6a70713 addi a4,a4,-662 # c004f3be - c005265c: 8526 mv a0,s1 - c005265e: 940fb0ef jal ra,c004d79e + c0052818: 6094 ld a3,0(s1) + c005281a: 441c lw a5,8(s0) + c005281c: 864e mv a2,s3 + c005281e: 04068693 addi a3,a3,64 + c0052822: 85ca mv a1,s2 + c0052824: ffffd717 auipc a4,0xffffd + c0052828: d6a70713 addi a4,a4,-662 # c004f58e + c005282c: 8526 mv a0,s1 + c005282e: 940fb0ef jal ra,c004d96e bf_atan(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5189 bf_mul_2exp(r, -2, BF_PREC_INF, BF_RNDZ); - c0052662: 4685 li a3,1 - c0052664: 002ad613 srli a2,s5,0x2 - c0052668: 55f9 li a1,-2 - c005266a: b745 j c005260a + c0052832: 4685 li a3,1 + c0052834: 002ad613 srli a2,s5,0x2 + c0052838: 55f9 li a1,-2 + c005283a: b745 j c00527da /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5195 if (a->expn < 0) { - c005266c: 01043a03 ld s4,16(s0) - c0052670: 040a5663 bgez s4,c00526bc + c005283c: 01043a03 ld s4,16(s0) + c0052840: 040a5663 bgez s4,c005288c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5197 e = sat_add(2 * a->expn, a->expn - 1); - c0052674: fffa0593 addi a1,s4,-1 - c0052678: 001a1513 slli a0,s4,0x1 - c005267c: e22fa0ef jal ra,c004cc9e + c0052844: fffa0593 addi a1,s4,-1 + c0052848: 001a1513 slli a0,s4,0x1 + c005284c: e22fa0ef jal ra,c004ce6e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5198 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052680: 6c18 ld a4,24(s0) - c0052682: 00290793 addi a5,s2,2 + c0052850: 6c18 ld a4,24(s0) + c0052852: 00290793 addi a5,s2,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5197 e = sat_add(2 * a->expn, a->expn - 1); - c0052686: 862a mv a2,a0 + c0052856: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5198 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052688: 071a slli a4,a4,0x6 - c005268a: 0709 addi a4,a4,2 - c005268c: 00f75363 bge a4,a5,c0052692 - c0052690: 873e mv a4,a5 - c0052692: 40ea0733 sub a4,s4,a4 - c0052696: 02e65363 bge a2,a4,c00526bc + c0052858: 071a slli a4,a4,0x6 + c005285a: 0709 addi a4,a4,2 + c005285c: 00f75363 bge a4,a5,c0052862 + c0052860: 873e mv a4,a5 + c0052862: 40ea0733 sub a4,s4,a4 + c0052866: 02e65363 bge a2,a4,c005288c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5199 bf_set(r, a); - c005269a: 85a2 mv a1,s0 - c005269c: 8526 mv a0,s1 - c005269e: e432 sd a2,8(sp) - c00526a0: e21fa0ef jal ra,c004d4c0 + c005286a: 85a2 mv a1,s0 + c005286c: 8526 mv a0,s1 + c005286e: e432 sd a2,8(sp) + c0052870: e21fa0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5200 return bf_add_epsilon(r, r, e, 1 - a->sign, prec, flags); - c00526a4: 4414 lw a3,8(s0) - c00526a6: 4585 li a1,1 - c00526a8: 6622 ld a2,8(sp) - c00526aa: 40d586bb subw a3,a1,a3 - c00526ae: 608c ld a1,0(s1) - c00526b0: 87ce mv a5,s3 - c00526b2: 874a mv a4,s2 - c00526b4: 8526 mv a0,s1 - c00526b6: a09fc0ef jal ra,c004f0be - c00526ba: bf21 j c00525d2 + c0052874: 4414 lw a3,8(s0) + c0052876: 4585 li a1,1 + c0052878: 6622 ld a2,8(sp) + c005287a: 40d586bb subw a3,a1,a3 + c005287e: 608c ld a1,0(s1) + c0052880: 87ce mv a5,s3 + c0052882: 874a mv a4,s2 + c0052884: 8526 mv a0,s1 + c0052886: a09fc0ef jal ra,c004f28e + c005288a: bf21 j c00527a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5204 return bf_ziv_rounding(r, a, prec, flags, bf_atan_internal, (void *)FALSE); - c00526bc: 4781 li a5,0 - c00526be: fffff717 auipc a4,0xfffff - c00526c2: 3ac70713 addi a4,a4,940 # c0051a6a - c00526c6: 86ce mv a3,s3 - c00526c8: 864a mv a2,s2 - c00526ca: 85a2 mv a1,s0 - c00526cc: 8526 mv a0,s1 - c00526ce: 81cfb0ef jal ra,c004d6ea - c00526d2: b701 j c00525d2 - -00000000c00526d4 : + c005288c: 4781 li a5,0 + c005288e: fffff717 auipc a4,0xfffff + c0052892: 3ac70713 addi a4,a4,940 # c0051c3a + c0052896: 86ce mv a3,s3 + c0052898: 864a mv a2,s2 + c005289a: 85a2 mv a1,s0 + c005289c: 8526 mv a0,s1 + c005289e: 81cfb0ef jal ra,c004d8ba + c00528a2: b701 j c00527a2 + +00000000c00528a4 : bf_atan2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5208 { - c00526d4: 711d addi sp,sp,-96 - c00526d6: e0ca sd s2,64(sp) - c00526d8: f852 sd s4,48(sp) - c00526da: ec86 sd ra,88(sp) - c00526dc: e8a2 sd s0,80(sp) - c00526de: e4a6 sd s1,72(sp) - c00526e0: fc4e sd s3,56(sp) + c00528a4: 711d addi sp,sp,-96 + c00528a6: e0ca sd s2,64(sp) + c00528a8: f852 sd s4,48(sp) + c00528aa: ec86 sd ra,88(sp) + c00528ac: e8a2 sd s0,80(sp) + c00528ae: e4a6 sd s1,72(sp) + c00528b0: fc4e sd s3,56(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5215 if (y->expn == BF_EXP_NAN || x->expn == BF_EXP_NAN) { - c00526e2: 699c ld a5,16(a1) - c00526e4: 577d li a4,-1 + c00528b2: 699c ld a5,16(a1) + c00528b4: 577d li a4,-1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5208 { - c00526e6: 892e mv s2,a1 + c00528b6: 892e mv s2,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5215 if (y->expn == BF_EXP_NAN || x->expn == BF_EXP_NAN) { - c00526e8: 00175593 srli a1,a4,0x1 + c00528b8: 00175593 srli a1,a4,0x1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5208 { - c00526ec: 8a2a mv s4,a0 + c00528bc: 8a2a mv s4,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5215 if (y->expn == BF_EXP_NAN || x->expn == BF_EXP_NAN) { - c00526ee: 00b78663 beq a5,a1,c00526fa - c00526f2: 89b6 mv s3,a3 + c00528be: 00b78663 beq a5,a1,c00528ca + c00528c2: 89b6 mv s3,a3 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5215 (discriminator 1) - c00526f4: 6a94 ld a3,16(a3) - c00526f6: 00b69f63 bne a3,a1,c0052714 + c00528c4: 6a94 ld a3,16(a3) + c00528c6: 00b69f63 bne a3,a1,c00528e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5216 bf_set_nan(r); - c00526fa: 8552 mv a0,s4 - c00526fc: 961fa0ef jal ra,c004d05c + c00528ca: 8552 mv a0,s4 + c00528cc: 961fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5217 return 0; - c0052700: 4401 li s0,0 + c00528d0: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5243 } - c0052702: 60e6 ld ra,88(sp) - c0052704: 8522 mv a0,s0 - c0052706: 6446 ld s0,80(sp) - c0052708: 64a6 ld s1,72(sp) - c005270a: 6906 ld s2,64(sp) - c005270c: 79e2 ld s3,56(sp) - c005270e: 7a42 ld s4,48(sp) - c0052710: 6125 addi sp,sp,96 - c0052712: 8082 ret + c00528d2: 60e6 ld ra,88(sp) + c00528d4: 8522 mv a0,s0 + c00528d6: 6446 ld s0,80(sp) + c00528d8: 64a6 ld s1,72(sp) + c00528da: 6906 ld s2,64(sp) + c00528dc: 79e2 ld s3,56(sp) + c00528de: 7a42 ld s4,48(sp) + c00528e0: 6125 addi sp,sp,96 + c00528e2: 8082 ret bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052714: 610c ld a1,0(a0) + c00528e4: 610c ld a1,0(a0) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0052716: 177e slli a4,a4,0x3f + c00528e6: 177e slli a4,a4,0x3f bf_atan2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5222 prec1 = prec + 32; - c0052718: 02060493 addi s1,a2,32 + c00528e8: 02060493 addi s1,a2,32 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5223 if (y->expn == BF_EXP_INF && x->expn == BF_EXP_INF) { - c005271c: 5675 li a2,-3 + c00528ec: 5675 li a2,-3 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005271e: e42e sd a1,8(sp) + c00528ee: e42e sd a1,8(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0052720: c802 sw zero,16(sp) + c00528f0: c802 sw zero,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0052722: ec3a sd a4,24(sp) + c00528f2: ec3a sd a4,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0052724: f002 sd zero,32(sp) + c00528f4: f002 sd zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c0052726: f402 sd zero,40(sp) + c00528f6: f402 sd zero,40(sp) bf_atan2_internal(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5223 if (y->expn == BF_EXP_INF && x->expn == BF_EXP_INF) { - c0052728: 8205 srli a2,a2,0x1 - c005272a: 04c79e63 bne a5,a2,c0052786 + c00528f8: 8205 srli a2,a2,0x1 + c00528fa: 04c79e63 bne a5,a2,c0052956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5223 (discriminator 1) - c005272e: 06f69a63 bne a3,a5,c00527a2 + c00528fe: 06f69a63 bne a3,a5,c0052972 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5224 bf_set_ui(T, 1); - c0052732: 4585 li a1,1 - c0052734: 0028 addi a0,sp,8 - c0052736: 947fa0ef jal ra,c004d07c + c0052902: 4585 li a1,1 + c0052904: 0028 addi a0,sp,8 + c0052906: 947fa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5225 T->sign = y->sign ^ x->sign; - c005273a: 00892783 lw a5,8(s2) - c005273e: 0089a703 lw a4,8(s3) - c0052742: 8fb9 xor a5,a5,a4 - c0052744: c83e sw a5,16(sp) + c005290a: 00892783 lw a5,8(s2) + c005290e: 0089a703 lw a4,8(s3) + c0052912: 8fb9 xor a5,a5,a4 + c0052914: c83e sw a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5231 ret = bf_atan(r, T, prec1, BF_RNDF); - c0052746: 4699 li a3,6 - c0052748: 8626 mv a2,s1 - c005274a: 002c addi a1,sp,8 - c005274c: 8552 mv a0,s4 - c005274e: e55ff0ef jal ra,c00525a2 + c0052916: 4699 li a3,6 + c0052918: 8626 mv a2,s1 + c005291a: 002c addi a1,sp,8 + c005291c: 8552 mv a0,s4 + c005291e: e55ff0ef jal ra,c0052772 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5233 if (x->sign) { - c0052752: 0089a783 lw a5,8(s3) + c0052922: 0089a783 lw a5,8(s3) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5231 ret = bf_atan(r, T, prec1, BF_RNDF); - c0052756: 842a mv s0,a0 + c0052926: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5233 if (x->sign) { - c0052758: c39d beqz a5,c005277e + c0052928: c39d beqz a5,c005294e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5235 bf_const_pi(T, prec1, BF_RNDF); - c005275a: 4619 li a2,6 - c005275c: 85a6 mv a1,s1 - c005275e: 0028 addi a0,sp,8 - c0052760: 826ff0ef jal ra,c0051786 + c005292a: 4619 li a2,6 + c005292c: 85a6 mv a1,s1 + c005292e: 0028 addi a0,sp,8 + c0052930: 826ff0ef jal ra,c0051956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5236 T->sign = y->sign; - c0052764: 00892783 lw a5,8(s2) + c0052934: 00892783 lw a5,8(s2) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5237 bf_add(r, r, T, prec1, BF_RNDN); - c0052768: 4701 li a4,0 - c005276a: 86a6 mv a3,s1 - c005276c: 0030 addi a2,sp,8 - c005276e: 85d2 mv a1,s4 - c0052770: 8552 mv a0,s4 + c0052938: 4701 li a4,0 + c005293a: 86a6 mv a3,s1 + c005293c: 0030 addi a2,sp,8 + c005293e: 85d2 mv a1,s4 + c0052940: 8552 mv a0,s4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5238 ret |= BF_ST_INEXACT; - c0052772: 01046413 ori s0,s0,16 + c0052942: 01046413 ori s0,s0,16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5236 T->sign = y->sign; - c0052776: c83e sw a5,16(sp) + c0052946: c83e sw a5,16(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5238 ret |= BF_ST_INEXACT; - c0052778: 2401 sext.w s0,s0 + c0052948: 2401 sext.w s0,s0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5237 bf_add(r, r, T, prec1, BF_RNDN); - c005277a: e7cfc0ef jal ra,c004edf6 + c005294a: e7cfc0ef jal ra,c004efc6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5241 bf_delete(T); - c005277e: 0028 addi a0,sp,8 - c0052780: d0cfa0ef jal ra,c004cc8c + c005294e: 0028 addi a0,sp,8 + c0052950: d0cfa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5242 return ret; - c0052784: bfbd j c0052702 + c0052954: bfbd j c00528d2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5226 } else if (y->expn == BF_EXP_ZERO && x->expn == BF_EXP_ZERO) { - c0052786: 00e79e63 bne a5,a4,c00527a2 + c0052956: 00e79e63 bne a5,a4,c0052972 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5226 (discriminator 1) - c005278a: 00f69c63 bne a3,a5,c00527a2 + c005295a: 00f69c63 bne a3,a5,c0052972 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5227 bf_set_zero(T, y->sign ^ x->sign); - c005278e: 00892583 lw a1,8(s2) - c0052792: 0089a783 lw a5,8(s3) - c0052796: 0028 addi a0,sp,8 - c0052798: 8dbd xor a1,a1,a5 - c005279a: 2581 sext.w a1,a1 - c005279c: 963fa0ef jal ra,c004d0fe - c00527a0: b75d j c0052746 + c005295e: 00892583 lw a1,8(s2) + c0052962: 0089a783 lw a5,8(s3) + c0052966: 0028 addi a0,sp,8 + c0052968: 8dbd xor a1,a1,a5 + c005296a: 2581 sext.w a1,a1 + c005296c: 963fa0ef jal ra,c004d2ce + c0052970: b75d j c0052916 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5229 bf_div(T, y, x, prec1, BF_RNDF); - c00527a2: 4719 li a4,6 - c00527a4: 86a6 mv a3,s1 - c00527a6: 864e mv a2,s3 - c00527a8: 85ca mv a1,s2 - c00527aa: 0028 addi a0,sp,8 - c00527ac: 97bfc0ef jal ra,c004f126 - c00527b0: bf59 j c0052746 - -00000000c00527b2 : + c0052972: 4719 li a4,6 + c0052974: 86a6 mv a3,s1 + c0052976: 864e mv a2,s3 + c0052978: 85ca mv a1,s2 + c005297a: 0028 addi a0,sp,8 + c005297c: 97bfc0ef jal ra,c004f2f6 + c0052980: bf59 j c0052916 + +00000000c0052982 : bf_atan2(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5247 { - c00527b2: 87b2 mv a5,a2 - c00527b4: 8636 mv a2,a3 - c00527b6: 86ba mv a3,a4 + c0052982: 87b2 mv a5,a2 + c0052984: 8636 mv a2,a3 + c0052986: 86ba mv a3,a4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5248 return bf_ziv_rounding(r, y, prec, flags, bf_atan2_internal, (void *)x); - c00527b8: 00000717 auipc a4,0x0 - c00527bc: f1c70713 addi a4,a4,-228 # c00526d4 - c00527c0: f2bfa06f j c004d6ea + c0052988: 00000717 auipc a4,0x0 + c005298c: f1c70713 addi a4,a4,-228 # c00528a4 + c0052990: f2bfa06f j c004d8ba -00000000c00527c4 : +00000000c0052994 : bf_asin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5283 int bf_asin(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) { - c00527c4: 7159 addi sp,sp,-112 - c00527c6: f0a2 sd s0,96(sp) - c00527c8: eca6 sd s1,88(sp) - c00527ca: f486 sd ra,104(sp) - c00527cc: e8ca sd s2,80(sp) - c00527ce: e4ce sd s3,72(sp) - c00527d0: e0d2 sd s4,64(sp) + c0052994: 7159 addi sp,sp,-112 + c0052996: f0a2 sd s0,96(sp) + c0052998: eca6 sd s1,88(sp) + c005299a: f486 sd ra,104(sp) + c005299c: e8ca sd s2,80(sp) + c005299e: e4ce sd s3,72(sp) + c00529a0: e0d2 sd s4,64(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5288 bf_context_t *s = r->ctx; bf_t T_s, *T = &T_s; int res; if (a->len == 0) { - c00527d2: 6d9c ld a5,24(a1) + c00529a2: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5283 { - c00527d4: 84aa mv s1,a0 - c00527d6: 842e mv s0,a1 + c00529a4: 84aa mv s1,a0 + c00529a6: 842e mv s0,a1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5288 if (a->len == 0) { - c00527d8: ef95 bnez a5,c0052814 + c00529a8: ef95 bnez a5,c00529e4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5289 if (a->expn == BF_EXP_NAN) { - c00527da: 6998 ld a4,16(a1) - c00527dc: 57fd li a5,-1 - c00527de: 8385 srli a5,a5,0x1 - c00527e0: 00f71663 bne a4,a5,c00527ec + c00529aa: 6998 ld a4,16(a1) + c00529ac: 57fd li a5,-1 + c00529ae: 8385 srli a5,a5,0x1 + c00529b0: 00f71663 bne a4,a5,c00529bc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5290 bf_set_nan(r); - c00527e4: 879fa0ef jal ra,c004d05c + c00529b4: 879fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5297 } else if (a->expn == BF_EXP_INF) { bf_set_nan(r); @@ -228413,20 +228611,20 @@ int bf_asin(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) } else { bf_set_zero(r, a->sign); return 0; - c00527e8: 4501 li a0,0 - c00527ea: a809 j c00527fc + c00529b8: 4501 li a0,0 + c00529ba: a809 j c00529cc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5292 } else if (a->expn == BF_EXP_INF) { - c00527ec: 57f5 li a5,-3 - c00527ee: 8385 srli a5,a5,0x1 - c00527f0: 00f71e63 bne a4,a5,c005280c + c00529bc: 57f5 li a5,-3 + c00529be: 8385 srli a5,a5,0x1 + c00529c0: 00f71e63 bne a4,a5,c00529dc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5293 bf_set_nan(r); - c00527f4: 8526 mv a0,s1 - c00527f6: 867fa0ef jal ra,c004d05c + c00529c4: 8526 mv a0,s1 + c00529c6: 867fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5294 return BF_ST_INVALID_OP; - c00527fa: 4505 li a0,1 + c00529ca: 4505 li a0,1 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5321 return bf_add_epsilon(r, r, e, a->sign, prec, flags); } @@ -228434,156 +228632,156 @@ int bf_asin(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) return bf_ziv_rounding(r, a, prec, flags, bf_asin_internal, (void *)FALSE); } - c00527fc: 70a6 ld ra,104(sp) - c00527fe: 7406 ld s0,96(sp) - c0052800: 64e6 ld s1,88(sp) - c0052802: 6946 ld s2,80(sp) - c0052804: 69a6 ld s3,72(sp) - c0052806: 6a06 ld s4,64(sp) - c0052808: 6165 addi sp,sp,112 - c005280a: 8082 ret + c00529cc: 70a6 ld ra,104(sp) + c00529ce: 7406 ld s0,96(sp) + c00529d0: 64e6 ld s1,88(sp) + c00529d2: 6946 ld s2,80(sp) + c00529d4: 69a6 ld s3,72(sp) + c00529d6: 6a06 ld s4,64(sp) + c00529d8: 6165 addi sp,sp,112 + c00529da: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5296 bf_set_zero(r, a->sign); - c005280c: 458c lw a1,8(a1) - c005280e: 8f1fa0ef jal ra,c004d0fe - c0052812: bfd9 j c00527e8 + c00529dc: 458c lw a1,8(a1) + c00529de: 8f1fa0ef jal ra,c004d2ce + c00529e2: bfd9 j c00529b8 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052814: 611c ld a5,0(a0) + c00529e4: 611c ld a5,0(a0) bf_asin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5301 bf_set_ui(T, 1); - c0052816: 4585 li a1,1 - c0052818: 0828 addi a0,sp,24 + c00529e6: 4585 li a1,1 + c00529e8: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005281a: ec3e sd a5,24(sp) + c00529ea: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c005281c: 57fd li a5,-1 - c005281e: 17fe slli a5,a5,0x3f - c0052820: 89b2 mv s3,a2 - c0052822: 8a36 mv s4,a3 - c0052824: f43e sd a5,40(sp) + c00529ec: 57fd li a5,-1 + c00529ee: 17fe slli a5,a5,0x3f + c00529f0: 89b2 mv s3,a2 + c00529f2: 8a36 mv s4,a3 + c00529f4: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c0052826: d002 sw zero,32(sp) + c00529f6: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c0052828: f802 sd zero,48(sp) + c00529f8: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005282a: fc02 sd zero,56(sp) + c00529fa: fc02 sd zero,56(sp) bf_asin(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5301 bf_set_ui(T, 1); - c005282c: 851fa0ef jal ra,c004d07c + c00529fc: 851fa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5302 res = bf_cmpu(a, T); - c0052830: 082c addi a1,sp,24 - c0052832: 8522 mv a0,s0 - c0052834: 918fb0ef jal ra,c004d94c - c0052838: 892a mv s2,a0 + c0052a00: 082c addi a1,sp,24 + c0052a02: 8522 mv a0,s0 + c0052a04: 918fb0ef jal ra,c004db1c + c0052a08: 892a mv s2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5303 bf_delete(T); - c005283a: 0828 addi a0,sp,24 - c005283c: c50fa0ef jal ra,c004cc8c + c0052a0a: 0828 addi a0,sp,24 + c0052a0c: c50fa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5304 if (res > 0) { - c0052840: fb204ae3 bgtz s2,c00527f4 + c0052a10: fb204ae3 bgtz s2,c00529c4 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5311 if (a->expn < 0) { - c0052844: 01043903 ld s2,16(s0) - c0052848: 04095363 bgez s2,c005288e + c0052a14: 01043903 ld s2,16(s0) + c0052a18: 04095363 bgez s2,c0052a5e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5313 e = sat_add(2 * a->expn, a->expn - 2); - c005284c: ffe90593 addi a1,s2,-2 - c0052850: 00191513 slli a0,s2,0x1 - c0052854: c4afa0ef jal ra,c004cc9e + c0052a1c: ffe90593 addi a1,s2,-2 + c0052a20: 00191513 slli a0,s2,0x1 + c0052a24: c4afa0ef jal ra,c004ce6e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5314 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052858: 6c0c ld a1,24(s0) - c005285a: 00298793 addi a5,s3,2 + c0052a28: 6c0c ld a1,24(s0) + c0052a2a: 00298793 addi a5,s3,2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5313 e = sat_add(2 * a->expn, a->expn - 2); - c005285e: 862a mv a2,a0 + c0052a2e: 862a mv a2,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5314 if (e < a->expn - bf_max(prec + 2, a->len * LIMB_BITS + 2)) { - c0052860: 059a slli a1,a1,0x6 - c0052862: 0589 addi a1,a1,2 - c0052864: 00f5d363 bge a1,a5,c005286a - c0052868: 85be mv a1,a5 - c005286a: 40b905b3 sub a1,s2,a1 - c005286e: 02b65063 bge a2,a1,c005288e + c0052a30: 059a slli a1,a1,0x6 + c0052a32: 0589 addi a1,a1,2 + c0052a34: 00f5d363 bge a1,a5,c0052a3a + c0052a38: 85be mv a1,a5 + c0052a3a: 40b905b3 sub a1,s2,a1 + c0052a3e: 02b65063 bge a2,a1,c0052a5e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5315 bf_set(r, a); - c0052872: 85a2 mv a1,s0 - c0052874: 8526 mv a0,s1 - c0052876: e432 sd a2,8(sp) - c0052878: c49fa0ef jal ra,c004d4c0 + c0052a42: 85a2 mv a1,s0 + c0052a44: 8526 mv a0,s1 + c0052a46: e432 sd a2,8(sp) + c0052a48: c49fa0ef jal ra,c004d690 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5316 return bf_add_epsilon(r, r, e, a->sign, prec, flags); - c005287c: 4414 lw a3,8(s0) - c005287e: 6622 ld a2,8(sp) - c0052880: 608c ld a1,0(s1) - c0052882: 87d2 mv a5,s4 - c0052884: 874e mv a4,s3 - c0052886: 8526 mv a0,s1 - c0052888: 837fc0ef jal ra,c004f0be - c005288c: bf85 j c00527fc + c0052a4c: 4414 lw a3,8(s0) + c0052a4e: 6622 ld a2,8(sp) + c0052a50: 608c ld a1,0(s1) + c0052a52: 87d2 mv a5,s4 + c0052a54: 874e mv a4,s3 + c0052a56: 8526 mv a0,s1 + c0052a58: 837fc0ef jal ra,c004f28e + c0052a5c: bf85 j c00529cc /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5320 return bf_ziv_rounding(r, a, prec, flags, bf_asin_internal, (void *)FALSE); - c005288e: 4781 li a5,0 - c0052890: fffff717 auipc a4,0xfffff - c0052894: 3da70713 addi a4,a4,986 # c0051c6a - c0052898: 86d2 mv a3,s4 - c005289a: 864e mv a2,s3 - c005289c: 85a2 mv a1,s0 - c005289e: 8526 mv a0,s1 - c00528a0: e4bfa0ef jal ra,c004d6ea - c00528a4: bfa1 j c00527fc - -00000000c00528a6 : + c0052a5e: 4781 li a5,0 + c0052a60: fffff717 auipc a4,0xfffff + c0052a64: 3da70713 addi a4,a4,986 # c0051e3a + c0052a68: 86d2 mv a3,s4 + c0052a6a: 864e mv a2,s3 + c0052a6c: 85a2 mv a1,s0 + c0052a6e: 8526 mv a0,s1 + c0052a70: e4bfa0ef jal ra,c004d8ba + c0052a74: bfa1 j c00529cc + +00000000c0052a76 : bf_acos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5324 int bf_acos(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) { - c00528a6: 7159 addi sp,sp,-112 - c00528a8: eca6 sd s1,88(sp) - c00528aa: e8ca sd s2,80(sp) - c00528ac: e4ce sd s3,72(sp) - c00528ae: f486 sd ra,104(sp) - c00528b0: f0a2 sd s0,96(sp) + c0052a76: 7159 addi sp,sp,-112 + c0052a78: eca6 sd s1,88(sp) + c0052a7a: e8ca sd s2,80(sp) + c0052a7c: e4ce sd s3,72(sp) + c0052a7e: f486 sd ra,104(sp) + c0052a80: f0a2 sd s0,96(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5329 bf_context_t *s = r->ctx; bf_t T_s, *T = &T_s; int res; if (a->len == 0) { - c00528b2: 6d9c ld a5,24(a1) + c0052a82: 6d9c ld a5,24(a1) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5324 { - c00528b4: 84aa mv s1,a0 - c00528b6: 892e mv s2,a1 - c00528b8: 89b2 mv s3,a2 + c0052a84: 84aa mv s1,a0 + c0052a86: 892e mv s2,a1 + c0052a88: 89b2 mv s3,a2 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5329 if (a->len == 0) { - c00528ba: eba1 bnez a5,c005290a + c0052a8a: eba1 bnez a5,c0052ada /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5330 if (a->expn == BF_EXP_NAN) { - c00528bc: 6998 ld a4,16(a1) - c00528be: 547d li s0,-1 - c00528c0: 00145793 srli a5,s0,0x1 - c00528c4: 00f71d63 bne a4,a5,c00528de + c0052a8c: 6998 ld a4,16(a1) + c0052a8e: 547d li s0,-1 + c0052a90: 00145793 srli a5,s0,0x1 + c0052a94: 00f71d63 bne a4,a5,c0052aae /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5331 bf_set_nan(r); - c00528c8: f94fa0ef jal ra,c004d05c + c0052a98: f94fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5332 return 0; - c00528cc: 4401 li s0,0 + c0052a9c: 4401 li s0,0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5355 bf_set_zero(r, 0); return 0; @@ -228591,116 +228789,116 @@ int bf_acos(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) return bf_ziv_rounding(r, a, prec, flags, bf_asin_internal, (void *)TRUE); } - c00528ce: 70a6 ld ra,104(sp) - c00528d0: 8522 mv a0,s0 - c00528d2: 7406 ld s0,96(sp) - c00528d4: 64e6 ld s1,88(sp) - c00528d6: 6946 ld s2,80(sp) - c00528d8: 69a6 ld s3,72(sp) - c00528da: 6165 addi sp,sp,112 - c00528dc: 8082 ret + c0052a9e: 70a6 ld ra,104(sp) + c0052aa0: 8522 mv a0,s0 + c0052aa2: 7406 ld s0,96(sp) + c0052aa4: 64e6 ld s1,88(sp) + c0052aa6: 6946 ld s2,80(sp) + c0052aa8: 69a6 ld s3,72(sp) + c0052aaa: 6165 addi sp,sp,112 + c0052aac: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5333 } else if (a->expn == BF_EXP_INF) { - c00528de: 57f5 li a5,-3 - c00528e0: 8385 srli a5,a5,0x1 - c00528e2: 00f71763 bne a4,a5,c00528f0 + c0052aae: 57f5 li a5,-3 + c0052ab0: 8385 srli a5,a5,0x1 + c0052ab2: 00f71763 bne a4,a5,c0052ac0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5334 bf_set_nan(r); - c00528e6: 8526 mv a0,s1 - c00528e8: f74fa0ef jal ra,c004d05c + c0052ab6: 8526 mv a0,s1 + c0052ab8: f74fa0ef jal ra,c004d22c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5335 return BF_ST_INVALID_OP; - c00528ec: 4405 li s0,1 - c00528ee: b7c5 j c00528ce + c0052abc: 4405 li s0,1 + c0052abe: b7c5 j c0052a9e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5337 bf_const_pi(r, prec, flags); - c00528f0: 8636 mv a2,a3 - c00528f2: 85ce mv a1,s3 - c00528f4: e93fe0ef jal ra,c0051786 + c0052ac0: 8636 mv a2,a3 + c0052ac2: 85ce mv a1,s3 + c0052ac4: e93fe0ef jal ra,c0051956 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5338 bf_mul_2exp(r, -1, BF_PREC_INF, BF_RNDZ); - c00528f8: 00245613 srli a2,s0,0x2 - c00528fc: 4685 li a3,1 - c00528fe: 55fd li a1,-1 - c0052900: 8526 mv a0,s1 - c0052902: a44fc0ef jal ra,c004eb46 + c0052ac8: 00245613 srli a2,s0,0x2 + c0052acc: 4685 li a3,1 + c0052ace: 55fd li a1,-1 + c0052ad0: 8526 mv a0,s1 + c0052ad2: a44fc0ef jal ra,c004ed16 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5339 return BF_ST_INEXACT; - c0052906: 4441 li s0,16 - c0052908: b7d9 j c00528ce + c0052ad6: 4441 li s0,16 + c0052ad8: b7d9 j c0052a9e bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c005290a: 611c ld a5,0(a0) + c0052ada: 611c ld a5,0(a0) bf_acos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5343 bf_set_ui(T, 1); - c005290c: 4585 li a1,1 - c005290e: 0828 addi a0,sp,24 + c0052adc: 4585 li a1,1 + c0052ade: 0828 addi a0,sp,24 bf_init(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:203 r->ctx = s; - c0052910: ec3e sd a5,24(sp) + c0052ae0: ec3e sd a5,24(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:205 r->expn = BF_EXP_ZERO; - c0052912: 57fd li a5,-1 - c0052914: 17fe slli a5,a5,0x3f - c0052916: e436 sd a3,8(sp) - c0052918: f43e sd a5,40(sp) + c0052ae2: 57fd li a5,-1 + c0052ae4: 17fe slli a5,a5,0x3f + c0052ae6: e436 sd a3,8(sp) + c0052ae8: f43e sd a5,40(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:204 r->sign = 0; - c005291a: d002 sw zero,32(sp) + c0052aea: d002 sw zero,32(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:206 r->len = 0; - c005291c: f802 sd zero,48(sp) + c0052aec: f802 sd zero,48(sp) /Users/Luppy/riscv/quickjs-nuttx/libbf.c:207 r->tab = NULL; - c005291e: fc02 sd zero,56(sp) + c0052aee: fc02 sd zero,56(sp) bf_acos(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5343 bf_set_ui(T, 1); - c0052920: f5cfa0ef jal ra,c004d07c + c0052af0: f5cfa0ef jal ra,c004d24c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5344 res = bf_cmpu(a, T); - c0052924: 082c addi a1,sp,24 - c0052926: 854a mv a0,s2 - c0052928: 824fb0ef jal ra,c004d94c - c005292c: 842a mv s0,a0 + c0052af4: 082c addi a1,sp,24 + c0052af6: 854a mv a0,s2 + c0052af8: 824fb0ef jal ra,c004db1c + c0052afc: 842a mv s0,a0 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5345 bf_delete(T); - c005292e: 0828 addi a0,sp,24 - c0052930: b5cfa0ef jal ra,c004cc8c + c0052afe: 0828 addi a0,sp,24 + c0052b00: b5cfa0ef jal ra,c004ce5c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5346 if (res > 0) { - c0052934: fa8049e3 bgtz s0,c00528e6 + c0052b04: fa8049e3 bgtz s0,c0052ab6 /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5349 } else if (res == 0 && a->sign == 0) { - c0052938: 66a2 ld a3,8(sp) - c005293a: e809 bnez s0,c005294c + c0052b08: 66a2 ld a3,8(sp) + c0052b0a: e809 bnez s0,c0052b1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5349 (discriminator 1) - c005293c: 00892403 lw s0,8(s2) - c0052940: e411 bnez s0,c005294c + c0052b0c: 00892403 lw s0,8(s2) + c0052b10: e411 bnez s0,c0052b1c /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5350 bf_set_zero(r, 0); - c0052942: 4581 li a1,0 - c0052944: 8526 mv a0,s1 - c0052946: fb8fa0ef jal ra,c004d0fe + c0052b12: 4581 li a1,0 + c0052b14: 8526 mv a0,s1 + c0052b16: fb8fa0ef jal ra,c004d2ce /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5351 return 0; - c005294a: b751 j c00528ce + c0052b1a: b751 j c0052a9e /Users/Luppy/riscv/quickjs-nuttx/libbf.c:5354 return bf_ziv_rounding(r, a, prec, flags, bf_asin_internal, (void *)TRUE); - c005294c: 4785 li a5,1 - c005294e: fffff717 auipc a4,0xfffff - c0052952: 31c70713 addi a4,a4,796 # c0051c6a - c0052956: 864e mv a2,s3 - c0052958: 85ca mv a1,s2 - c005295a: 8526 mv a0,s1 - c005295c: d8ffa0ef jal ra,c004d6ea - c0052960: 842a mv s0,a0 - c0052962: b7b5 j c00528ce - -00000000c0052964 : + c0052b1c: 4785 li a5,1 + c0052b1e: fffff717 auipc a4,0xfffff + c0052b22: 31c70713 addi a4,a4,796 # c0051e3a + c0052b26: 864e mv a2,s3 + c0052b28: 85ca mv a1,s2 + c0052b2a: 8526 mv a0,s1 + c0052b2c: d8ffa0ef jal ra,c004d8ba + c0052b30: 842a mv s0,a0 + c0052b32: b7b5 j c0052a9e + +00000000c0052b34 : bf_get_fft_size(): /Users/Luppy/riscv/quickjs-nuttx/libbf.c:8471 #else /* USE_FFT_MUL */ @@ -228709,10 +228907,10 @@ int bf_get_fft_size(int *pdpl, int *pnb_mods, limb_t len) { return 0; } - c0052964: 4501 li a0,0 - c0052966: 8082 ret + c0052b34: 4501 li a0,0 + c0052b36: 8082 ret -00000000c0052968 : +00000000c0052b38 : spin_lock_irqsave(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:35 ////#include @@ -228721,16 +228919,16 @@ spin_lock_irqsave(): #define NULL 0 typedef int spinlock_t; irqstate_t spin_lock_irqsave(spinlock_t *lock) { return 0; } - c0052968: 4501 li a0,0 - c005296a: 8082 ret + c0052b38: 4501 li a0,0 + c0052b3a: 8082 ret -00000000c005296c : +00000000c0052b3c : spin_unlock_irqrestore(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:36 void spin_unlock_irqrestore(spinlock_t *lock, irqstate_t flags) {} - c005296c: 8082 ret + c0052b3c: 8082 ret -00000000c005296e <__atomic_store_1>: +00000000c0052b3e <__atomic_store_1>: __atomic_store_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:333 @@ -228739,10 +228937,10 @@ __atomic_store_1(): ****************************************************************************/ STORE(1, uint8_t) - c005296e: 00b50023 sb a1,0(a0) - c0052972: 8082 ret + c0052b3e: 00b50023 sb a1,0(a0) + c0052b42: 8082 ret -00000000c0052974 <__atomic_store_2>: +00000000c0052b44 <__atomic_store_2>: __atomic_store_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:339 @@ -228751,10 +228949,10 @@ __atomic_store_2(): ****************************************************************************/ STORE(2, uint16_t) - c0052974: 00b51023 sh a1,0(a0) - c0052978: 8082 ret + c0052b44: 00b51023 sh a1,0(a0) + c0052b48: 8082 ret -00000000c005297a <__atomic_store_4>: +00000000c0052b4a <__atomic_store_4>: __atomic_store_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:345 @@ -228763,10 +228961,10 @@ __atomic_store_4(): ****************************************************************************/ STORE(4, uint32_t) - c005297a: c10c sw a1,0(a0) - c005297c: 8082 ret + c0052b4a: c10c sw a1,0(a0) + c0052b4c: 8082 ret -00000000c005297e <__atomic_store_8>: +00000000c0052b4e <__atomic_store_8>: __atomic_store_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:351 @@ -228775,10 +228973,10 @@ __atomic_store_8(): ****************************************************************************/ STORE(8, uint64_t) - c005297e: e10c sd a1,0(a0) - c0052980: 8082 ret + c0052b4e: e10c sd a1,0(a0) + c0052b50: 8082 ret -00000000c0052982 <__atomic_load_1>: +00000000c0052b52 <__atomic_load_1>: __atomic_load_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:357 @@ -228787,10 +228985,10 @@ __atomic_load_1(): ****************************************************************************/ LOAD(1, uint8_t) - c0052982: 00054503 lbu a0,0(a0) - c0052986: 8082 ret + c0052b52: 00054503 lbu a0,0(a0) + c0052b56: 8082 ret -00000000c0052988 <__atomic_load_2>: +00000000c0052b58 <__atomic_load_2>: __atomic_load_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:363 @@ -228799,10 +228997,10 @@ __atomic_load_2(): ****************************************************************************/ LOAD(2, uint16_t) - c0052988: 00055503 lhu a0,0(a0) - c005298c: 8082 ret + c0052b58: 00055503 lhu a0,0(a0) + c0052b5c: 8082 ret -00000000c005298e <__atomic_load_4>: +00000000c0052b5e <__atomic_load_4>: __atomic_load_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:369 @@ -228811,10 +229009,10 @@ __atomic_load_4(): ****************************************************************************/ LOAD(4, uint32_t) - c005298e: 4108 lw a0,0(a0) - c0052990: 8082 ret + c0052b5e: 4108 lw a0,0(a0) + c0052b60: 8082 ret -00000000c0052992 <__atomic_load_8>: +00000000c0052b62 <__atomic_load_8>: __atomic_load_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:375 @@ -228823,10 +229021,10 @@ __atomic_load_8(): ****************************************************************************/ LOAD(8, uint64_t) - c0052992: 6108 ld a0,0(a0) - c0052994: 8082 ret + c0052b62: 6108 ld a0,0(a0) + c0052b64: 8082 ret -00000000c0052996 <__atomic_exchange_1>: +00000000c0052b66 <__atomic_exchange_1>: __atomic_exchange_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:381 @@ -228835,12 +229033,12 @@ __atomic_exchange_1(): ****************************************************************************/ EXCHANGE(1, uint8_t) - c0052996: 87aa mv a5,a0 - c0052998: 00054503 lbu a0,0(a0) - c005299c: 00b78023 sb a1,0(a5) # 30000 <__clzdi2-0xbffd0000> - c00529a0: 8082 ret + c0052b66: 87aa mv a5,a0 + c0052b68: 00054503 lbu a0,0(a0) + c0052b6c: 00b78023 sb a1,0(a5) # 30000 <__clzdi2-0xbffd0000> + c0052b70: 8082 ret -00000000c00529a2 <__atomic_exchange_2>: +00000000c0052b72 <__atomic_exchange_2>: __atomic_exchange_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:387 @@ -228849,12 +229047,12 @@ __atomic_exchange_2(): ****************************************************************************/ EXCHANGE(2, uint16_t) - c00529a2: 87aa mv a5,a0 - c00529a4: 00055503 lhu a0,0(a0) - c00529a8: 00b79023 sh a1,0(a5) - c00529ac: 8082 ret + c0052b72: 87aa mv a5,a0 + c0052b74: 00055503 lhu a0,0(a0) + c0052b78: 00b79023 sh a1,0(a5) + c0052b7c: 8082 ret -00000000c00529ae <__atomic_exchange_4>: +00000000c0052b7e <__atomic_exchange_4>: __atomic_exchange_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:393 @@ -228863,12 +229061,12 @@ __atomic_exchange_4(): ****************************************************************************/ EXCHANGE(4, uint32_t) - c00529ae: 87aa mv a5,a0 - c00529b0: 4108 lw a0,0(a0) - c00529b2: c38c sw a1,0(a5) - c00529b4: 8082 ret + c0052b7e: 87aa mv a5,a0 + c0052b80: 4108 lw a0,0(a0) + c0052b82: c38c sw a1,0(a5) + c0052b84: 8082 ret -00000000c00529b6 <__atomic_exchange_8>: +00000000c0052b86 <__atomic_exchange_8>: __atomic_exchange_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:399 @@ -228877,12 +229075,12 @@ __atomic_exchange_8(): ****************************************************************************/ EXCHANGE(8, uint64_t) - c00529b6: 87aa mv a5,a0 - c00529b8: 6108 ld a0,0(a0) - c00529ba: e38c sd a1,0(a5) - c00529bc: 8082 ret + c0052b86: 87aa mv a5,a0 + c0052b88: 6108 ld a0,0(a0) + c0052b8a: e38c sd a1,0(a5) + c0052b8c: 8082 ret -00000000c00529be <__atomic_compare_exchange_1>: +00000000c0052b8e <__atomic_compare_exchange_1>: __atomic_compare_exchange_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:405 @@ -228891,19 +229089,19 @@ __atomic_compare_exchange_1(): ****************************************************************************/ CMP_EXCHANGE(1, uint8_t) - c00529be: 00054783 lbu a5,0(a0) - c00529c2: 0005c703 lbu a4,0(a1) - c00529c6: 00f71663 bne a4,a5,c00529d2 <__atomic_compare_exchange_1+0x14> + c0052b8e: 00054783 lbu a5,0(a0) + c0052b92: 0005c703 lbu a4,0(a1) + c0052b96: 00f71663 bne a4,a5,c0052ba2 <__atomic_compare_exchange_1+0x14> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:405 (discriminator 1) - c00529ca: 00c50023 sb a2,0(a0) - c00529ce: 4505 li a0,1 - c00529d0: 8082 ret + c0052b9a: 00c50023 sb a2,0(a0) + c0052b9e: 4505 li a0,1 + c0052ba0: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:405 (discriminator 2) - c00529d2: 00f58023 sb a5,0(a1) - c00529d6: 4501 li a0,0 - c00529d8: 8082 ret + c0052ba2: 00f58023 sb a5,0(a1) + c0052ba6: 4501 li a0,0 + c0052ba8: 8082 ret -00000000c00529da <__atomic_compare_exchange_2>: +00000000c0052baa <__atomic_compare_exchange_2>: __atomic_compare_exchange_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:411 @@ -228912,19 +229110,19 @@ __atomic_compare_exchange_2(): ****************************************************************************/ CMP_EXCHANGE(2, uint16_t) - c00529da: 00055783 lhu a5,0(a0) - c00529de: 0005d703 lhu a4,0(a1) - c00529e2: 00f71663 bne a4,a5,c00529ee <__atomic_compare_exchange_2+0x14> + c0052baa: 00055783 lhu a5,0(a0) + c0052bae: 0005d703 lhu a4,0(a1) + c0052bb2: 00f71663 bne a4,a5,c0052bbe <__atomic_compare_exchange_2+0x14> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:411 (discriminator 1) - c00529e6: 00c51023 sh a2,0(a0) - c00529ea: 4505 li a0,1 - c00529ec: 8082 ret + c0052bb6: 00c51023 sh a2,0(a0) + c0052bba: 4505 li a0,1 + c0052bbc: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:411 (discriminator 2) - c00529ee: 00f59023 sh a5,0(a1) - c00529f2: 4501 li a0,0 - c00529f4: 8082 ret + c0052bbe: 00f59023 sh a5,0(a1) + c0052bc2: 4501 li a0,0 + c0052bc4: 8082 ret -00000000c00529f6 <__atomic_compare_exchange_4>: +00000000c0052bc6 <__atomic_compare_exchange_4>: __atomic_compare_exchange_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:417 @@ -228933,19 +229131,19 @@ __atomic_compare_exchange_4(): ****************************************************************************/ CMP_EXCHANGE(4, uint32_t) - c00529f6: 411c lw a5,0(a0) - c00529f8: 4198 lw a4,0(a1) - c00529fa: 00f71563 bne a4,a5,c0052a04 <__atomic_compare_exchange_4+0xe> + c0052bc6: 411c lw a5,0(a0) + c0052bc8: 4198 lw a4,0(a1) + c0052bca: 00f71563 bne a4,a5,c0052bd4 <__atomic_compare_exchange_4+0xe> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:417 (discriminator 1) - c00529fe: c110 sw a2,0(a0) - c0052a00: 4505 li a0,1 - c0052a02: 8082 ret + c0052bce: c110 sw a2,0(a0) + c0052bd0: 4505 li a0,1 + c0052bd2: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:417 (discriminator 2) - c0052a04: c19c sw a5,0(a1) - c0052a06: 4501 li a0,0 - c0052a08: 8082 ret + c0052bd4: c19c sw a5,0(a1) + c0052bd6: 4501 li a0,0 + c0052bd8: 8082 ret -00000000c0052a0a <__atomic_compare_exchange_8>: +00000000c0052bda <__atomic_compare_exchange_8>: __atomic_compare_exchange_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:423 @@ -228954,19 +229152,19 @@ __atomic_compare_exchange_8(): ****************************************************************************/ CMP_EXCHANGE(8, uint64_t) - c0052a0a: 611c ld a5,0(a0) - c0052a0c: 6198 ld a4,0(a1) - c0052a0e: 00e79563 bne a5,a4,c0052a18 <__atomic_compare_exchange_8+0xe> + c0052bda: 611c ld a5,0(a0) + c0052bdc: 6198 ld a4,0(a1) + c0052bde: 00e79563 bne a5,a4,c0052be8 <__atomic_compare_exchange_8+0xe> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:423 (discriminator 1) - c0052a12: e110 sd a2,0(a0) - c0052a14: 4505 li a0,1 - c0052a16: 8082 ret + c0052be2: e110 sd a2,0(a0) + c0052be4: 4505 li a0,1 + c0052be6: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:423 (discriminator 2) - c0052a18: e19c sd a5,0(a1) - c0052a1a: 4501 li a0,0 - c0052a1c: 8082 ret + c0052be8: e19c sd a5,0(a1) + c0052bea: 4501 li a0,0 + c0052bec: 8082 ret -00000000c0052a1e <__atomic_fetch_add_1>: +00000000c0052bee <__atomic_fetch_add_1>: __atomic_fetch_add_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:429 @@ -228975,13 +229173,13 @@ __atomic_fetch_add_1(): ****************************************************************************/ FETCH_ADD(1, uint8_t) - c0052a1e: 87aa mv a5,a0 - c0052a20: 00054503 lbu a0,0(a0) - c0052a24: 9da9 addw a1,a1,a0 - c0052a26: 00b78023 sb a1,0(a5) - c0052a2a: 8082 ret + c0052bee: 87aa mv a5,a0 + c0052bf0: 00054503 lbu a0,0(a0) + c0052bf4: 9da9 addw a1,a1,a0 + c0052bf6: 00b78023 sb a1,0(a5) + c0052bfa: 8082 ret -00000000c0052a2c <__atomic_fetch_add_2>: +00000000c0052bfc <__atomic_fetch_add_2>: __atomic_fetch_add_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:435 @@ -228990,13 +229188,13 @@ __atomic_fetch_add_2(): ****************************************************************************/ FETCH_ADD(2, uint16_t) - c0052a2c: 87aa mv a5,a0 - c0052a2e: 00055503 lhu a0,0(a0) - c0052a32: 9da9 addw a1,a1,a0 - c0052a34: 00b79023 sh a1,0(a5) - c0052a38: 8082 ret + c0052bfc: 87aa mv a5,a0 + c0052bfe: 00055503 lhu a0,0(a0) + c0052c02: 9da9 addw a1,a1,a0 + c0052c04: 00b79023 sh a1,0(a5) + c0052c08: 8082 ret -00000000c0052a3a <__atomic_fetch_add_4>: +00000000c0052c0a <__atomic_fetch_add_4>: __atomic_fetch_add_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:441 @@ -229005,13 +229203,13 @@ __atomic_fetch_add_4(): ****************************************************************************/ FETCH_ADD(4, uint32_t) - c0052a3a: 87aa mv a5,a0 - c0052a3c: 4108 lw a0,0(a0) - c0052a3e: 9da9 addw a1,a1,a0 - c0052a40: c38c sw a1,0(a5) - c0052a42: 8082 ret + c0052c0a: 87aa mv a5,a0 + c0052c0c: 4108 lw a0,0(a0) + c0052c0e: 9da9 addw a1,a1,a0 + c0052c10: c38c sw a1,0(a5) + c0052c12: 8082 ret -00000000c0052a44 <__atomic_fetch_add_8>: +00000000c0052c14 <__atomic_fetch_add_8>: __atomic_fetch_add_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:447 @@ -229020,13 +229218,13 @@ __atomic_fetch_add_8(): ****************************************************************************/ FETCH_ADD(8, uint64_t) - c0052a44: 87aa mv a5,a0 - c0052a46: 6108 ld a0,0(a0) - c0052a48: 95aa add a1,a1,a0 - c0052a4a: e38c sd a1,0(a5) - c0052a4c: 8082 ret + c0052c14: 87aa mv a5,a0 + c0052c16: 6108 ld a0,0(a0) + c0052c18: 95aa add a1,a1,a0 + c0052c1a: e38c sd a1,0(a5) + c0052c1c: 8082 ret -00000000c0052a4e <__atomic_fetch_sub_1>: +00000000c0052c1e <__atomic_fetch_sub_1>: __atomic_fetch_sub_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:453 @@ -229035,13 +229233,13 @@ __atomic_fetch_sub_1(): ****************************************************************************/ FETCH_SUB(1, uint8_t) - c0052a4e: 87aa mv a5,a0 - c0052a50: 00054503 lbu a0,0(a0) - c0052a54: 40b505bb subw a1,a0,a1 - c0052a58: 00b78023 sb a1,0(a5) - c0052a5c: 8082 ret + c0052c1e: 87aa mv a5,a0 + c0052c20: 00054503 lbu a0,0(a0) + c0052c24: 40b505bb subw a1,a0,a1 + c0052c28: 00b78023 sb a1,0(a5) + c0052c2c: 8082 ret -00000000c0052a5e <__atomic_fetch_sub_2>: +00000000c0052c2e <__atomic_fetch_sub_2>: __atomic_fetch_sub_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:459 @@ -229050,13 +229248,13 @@ __atomic_fetch_sub_2(): ****************************************************************************/ FETCH_SUB(2, uint16_t) - c0052a5e: 87aa mv a5,a0 - c0052a60: 00055503 lhu a0,0(a0) - c0052a64: 40b505bb subw a1,a0,a1 - c0052a68: 00b79023 sh a1,0(a5) - c0052a6c: 8082 ret + c0052c2e: 87aa mv a5,a0 + c0052c30: 00055503 lhu a0,0(a0) + c0052c34: 40b505bb subw a1,a0,a1 + c0052c38: 00b79023 sh a1,0(a5) + c0052c3c: 8082 ret -00000000c0052a6e <__atomic_fetch_sub_4>: +00000000c0052c3e <__atomic_fetch_sub_4>: __atomic_fetch_sub_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:465 @@ -229065,13 +229263,13 @@ __atomic_fetch_sub_4(): ****************************************************************************/ FETCH_SUB(4, uint32_t) - c0052a6e: 87aa mv a5,a0 - c0052a70: 4108 lw a0,0(a0) - c0052a72: 40b505bb subw a1,a0,a1 - c0052a76: c38c sw a1,0(a5) - c0052a78: 8082 ret + c0052c3e: 87aa mv a5,a0 + c0052c40: 4108 lw a0,0(a0) + c0052c42: 40b505bb subw a1,a0,a1 + c0052c46: c38c sw a1,0(a5) + c0052c48: 8082 ret -00000000c0052a7a <__atomic_fetch_sub_8>: +00000000c0052c4a <__atomic_fetch_sub_8>: __atomic_fetch_sub_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:471 @@ -229080,13 +229278,13 @@ __atomic_fetch_sub_8(): ****************************************************************************/ FETCH_SUB(8, uint64_t) - c0052a7a: 87aa mv a5,a0 - c0052a7c: 6108 ld a0,0(a0) - c0052a7e: 40b505b3 sub a1,a0,a1 - c0052a82: e38c sd a1,0(a5) - c0052a84: 8082 ret + c0052c4a: 87aa mv a5,a0 + c0052c4c: 6108 ld a0,0(a0) + c0052c4e: 40b505b3 sub a1,a0,a1 + c0052c52: e38c sd a1,0(a5) + c0052c54: 8082 ret -00000000c0052a86 <__atomic_fetch_and_1>: +00000000c0052c56 <__atomic_fetch_and_1>: __atomic_fetch_and_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:477 @@ -229095,13 +229293,13 @@ __atomic_fetch_and_1(): ****************************************************************************/ FETCH_AND(1, uint8_t) - c0052a86: 87aa mv a5,a0 - c0052a88: 00054503 lbu a0,0(a0) - c0052a8c: 8de9 and a1,a1,a0 - c0052a8e: 00b78023 sb a1,0(a5) - c0052a92: 8082 ret + c0052c56: 87aa mv a5,a0 + c0052c58: 00054503 lbu a0,0(a0) + c0052c5c: 8de9 and a1,a1,a0 + c0052c5e: 00b78023 sb a1,0(a5) + c0052c62: 8082 ret -00000000c0052a94 <__atomic_fetch_and_2>: +00000000c0052c64 <__atomic_fetch_and_2>: __atomic_fetch_and_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:483 @@ -229110,13 +229308,13 @@ __atomic_fetch_and_2(): ****************************************************************************/ FETCH_AND(2, uint16_t) - c0052a94: 87aa mv a5,a0 - c0052a96: 00055503 lhu a0,0(a0) - c0052a9a: 8de9 and a1,a1,a0 - c0052a9c: 00b79023 sh a1,0(a5) - c0052aa0: 8082 ret + c0052c64: 87aa mv a5,a0 + c0052c66: 00055503 lhu a0,0(a0) + c0052c6a: 8de9 and a1,a1,a0 + c0052c6c: 00b79023 sh a1,0(a5) + c0052c70: 8082 ret -00000000c0052aa2 <__atomic_fetch_and_4>: +00000000c0052c72 <__atomic_fetch_and_4>: __atomic_fetch_and_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:489 @@ -229125,13 +229323,13 @@ __atomic_fetch_and_4(): ****************************************************************************/ FETCH_AND(4, uint32_t) - c0052aa2: 87aa mv a5,a0 - c0052aa4: 4108 lw a0,0(a0) - c0052aa6: 8de9 and a1,a1,a0 - c0052aa8: c38c sw a1,0(a5) - c0052aaa: 8082 ret + c0052c72: 87aa mv a5,a0 + c0052c74: 4108 lw a0,0(a0) + c0052c76: 8de9 and a1,a1,a0 + c0052c78: c38c sw a1,0(a5) + c0052c7a: 8082 ret -00000000c0052aac <__atomic_fetch_and_8>: +00000000c0052c7c <__atomic_fetch_and_8>: __atomic_fetch_and_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:495 @@ -229140,13 +229338,13 @@ __atomic_fetch_and_8(): ****************************************************************************/ FETCH_AND(8, uint64_t) - c0052aac: 87aa mv a5,a0 - c0052aae: 6108 ld a0,0(a0) - c0052ab0: 8de9 and a1,a1,a0 - c0052ab2: e38c sd a1,0(a5) - c0052ab4: 8082 ret + c0052c7c: 87aa mv a5,a0 + c0052c7e: 6108 ld a0,0(a0) + c0052c80: 8de9 and a1,a1,a0 + c0052c82: e38c sd a1,0(a5) + c0052c84: 8082 ret -00000000c0052ab6 <__atomic_fetch_or_1>: +00000000c0052c86 <__atomic_fetch_or_1>: __atomic_fetch_or_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:501 @@ -229155,13 +229353,13 @@ __atomic_fetch_or_1(): ****************************************************************************/ FETCH_OR(1, uint8_t) - c0052ab6: 87aa mv a5,a0 - c0052ab8: 00054503 lbu a0,0(a0) - c0052abc: 8dc9 or a1,a1,a0 - c0052abe: 00b78023 sb a1,0(a5) - c0052ac2: 8082 ret + c0052c86: 87aa mv a5,a0 + c0052c88: 00054503 lbu a0,0(a0) + c0052c8c: 8dc9 or a1,a1,a0 + c0052c8e: 00b78023 sb a1,0(a5) + c0052c92: 8082 ret -00000000c0052ac4 <__atomic_fetch_or_2>: +00000000c0052c94 <__atomic_fetch_or_2>: __atomic_fetch_or_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:507 @@ -229170,13 +229368,13 @@ __atomic_fetch_or_2(): ****************************************************************************/ FETCH_OR(2, uint16_t) - c0052ac4: 87aa mv a5,a0 - c0052ac6: 00055503 lhu a0,0(a0) - c0052aca: 8dc9 or a1,a1,a0 - c0052acc: 00b79023 sh a1,0(a5) - c0052ad0: 8082 ret + c0052c94: 87aa mv a5,a0 + c0052c96: 00055503 lhu a0,0(a0) + c0052c9a: 8dc9 or a1,a1,a0 + c0052c9c: 00b79023 sh a1,0(a5) + c0052ca0: 8082 ret -00000000c0052ad2 <__atomic_fetch_or_4>: +00000000c0052ca2 <__atomic_fetch_or_4>: __atomic_fetch_or_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:513 @@ -229185,13 +229383,13 @@ __atomic_fetch_or_4(): ****************************************************************************/ FETCH_OR(4, uint32_t) - c0052ad2: 87aa mv a5,a0 - c0052ad4: 4108 lw a0,0(a0) - c0052ad6: 8dc9 or a1,a1,a0 - c0052ad8: c38c sw a1,0(a5) - c0052ada: 8082 ret + c0052ca2: 87aa mv a5,a0 + c0052ca4: 4108 lw a0,0(a0) + c0052ca6: 8dc9 or a1,a1,a0 + c0052ca8: c38c sw a1,0(a5) + c0052caa: 8082 ret -00000000c0052adc <__atomic_fetch_or_8>: +00000000c0052cac <__atomic_fetch_or_8>: __atomic_fetch_or_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:519 @@ -229200,13 +229398,13 @@ __atomic_fetch_or_8(): ****************************************************************************/ FETCH_OR(8, uint64_t) - c0052adc: 87aa mv a5,a0 - c0052ade: 6108 ld a0,0(a0) - c0052ae0: 8dc9 or a1,a1,a0 - c0052ae2: e38c sd a1,0(a5) - c0052ae4: 8082 ret + c0052cac: 87aa mv a5,a0 + c0052cae: 6108 ld a0,0(a0) + c0052cb0: 8dc9 or a1,a1,a0 + c0052cb2: e38c sd a1,0(a5) + c0052cb4: 8082 ret -00000000c0052ae6 <__atomic_fetch_xor_1>: +00000000c0052cb6 <__atomic_fetch_xor_1>: __atomic_fetch_xor_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:525 @@ -229215,13 +229413,13 @@ __atomic_fetch_xor_1(): ****************************************************************************/ FETCH_XOR(1, uint8_t) - c0052ae6: 87aa mv a5,a0 - c0052ae8: 00054503 lbu a0,0(a0) - c0052aec: 8da9 xor a1,a1,a0 - c0052aee: 00b78023 sb a1,0(a5) - c0052af2: 8082 ret + c0052cb6: 87aa mv a5,a0 + c0052cb8: 00054503 lbu a0,0(a0) + c0052cbc: 8da9 xor a1,a1,a0 + c0052cbe: 00b78023 sb a1,0(a5) + c0052cc2: 8082 ret -00000000c0052af4 <__atomic_fetch_xor_2>: +00000000c0052cc4 <__atomic_fetch_xor_2>: __atomic_fetch_xor_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:531 @@ -229230,13 +229428,13 @@ __atomic_fetch_xor_2(): ****************************************************************************/ FETCH_XOR(2, uint16_t) - c0052af4: 87aa mv a5,a0 - c0052af6: 00055503 lhu a0,0(a0) - c0052afa: 8da9 xor a1,a1,a0 - c0052afc: 00b79023 sh a1,0(a5) - c0052b00: 8082 ret + c0052cc4: 87aa mv a5,a0 + c0052cc6: 00055503 lhu a0,0(a0) + c0052cca: 8da9 xor a1,a1,a0 + c0052ccc: 00b79023 sh a1,0(a5) + c0052cd0: 8082 ret -00000000c0052b02 <__atomic_fetch_xor_4>: +00000000c0052cd2 <__atomic_fetch_xor_4>: __atomic_fetch_xor_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:537 @@ -229245,13 +229443,13 @@ __atomic_fetch_xor_4(): ****************************************************************************/ FETCH_XOR(4, uint32_t) - c0052b02: 87aa mv a5,a0 - c0052b04: 4108 lw a0,0(a0) - c0052b06: 8da9 xor a1,a1,a0 - c0052b08: c38c sw a1,0(a5) - c0052b0a: 8082 ret + c0052cd2: 87aa mv a5,a0 + c0052cd4: 4108 lw a0,0(a0) + c0052cd6: 8da9 xor a1,a1,a0 + c0052cd8: c38c sw a1,0(a5) + c0052cda: 8082 ret -00000000c0052b0c <__atomic_fetch_xor_8>: +00000000c0052cdc <__atomic_fetch_xor_8>: __atomic_fetch_xor_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:543 @@ -229260,13 +229458,13 @@ __atomic_fetch_xor_8(): ****************************************************************************/ FETCH_XOR(8, uint64_t) - c0052b0c: 87aa mv a5,a0 - c0052b0e: 6108 ld a0,0(a0) - c0052b10: 8da9 xor a1,a1,a0 - c0052b12: e38c sd a1,0(a5) - c0052b14: 8082 ret + c0052cdc: 87aa mv a5,a0 + c0052cde: 6108 ld a0,0(a0) + c0052ce0: 8da9 xor a1,a1,a0 + c0052ce2: e38c sd a1,0(a5) + c0052ce4: 8082 ret -00000000c0052b16 <__sync_add_and_fetch_1>: +00000000c0052ce6 <__sync_add_and_fetch_1>: __sync_add_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:555 @@ -229275,14 +229473,14 @@ __sync_add_and_fetch_1(): ****************************************************************************/ SYNC_ADD_FETCH(1, uint8_t) - c0052b16: 00054783 lbu a5,0(a0) - c0052b1a: 872a mv a4,a0 - c0052b1c: 9fad addw a5,a5,a1 - c0052b1e: 0ff7f513 zext.b a0,a5 - c0052b22: 00a70023 sb a0,0(a4) - c0052b26: 8082 ret - -00000000c0052b28 <__sync_add_and_fetch_2>: + c0052ce6: 00054783 lbu a5,0(a0) + c0052cea: 872a mv a4,a0 + c0052cec: 9fad addw a5,a5,a1 + c0052cee: 0ff7f513 zext.b a0,a5 + c0052cf2: 00a70023 sb a0,0(a4) + c0052cf6: 8082 ret + +00000000c0052cf8 <__sync_add_and_fetch_2>: __sync_add_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:561 @@ -229291,15 +229489,15 @@ __sync_add_and_fetch_2(): ****************************************************************************/ SYNC_ADD_FETCH(2, uint16_t) - c0052b28: 00055783 lhu a5,0(a0) - c0052b2c: 872a mv a4,a0 - c0052b2e: 9fad addw a5,a5,a1 - c0052b30: 03079513 slli a0,a5,0x30 - c0052b34: 9141 srli a0,a0,0x30 - c0052b36: 00a71023 sh a0,0(a4) - c0052b3a: 8082 ret - -00000000c0052b3c <__sync_add_and_fetch_4>: + c0052cf8: 00055783 lhu a5,0(a0) + c0052cfc: 872a mv a4,a0 + c0052cfe: 9fad addw a5,a5,a1 + c0052d00: 03079513 slli a0,a5,0x30 + c0052d04: 9141 srli a0,a0,0x30 + c0052d06: 00a71023 sh a0,0(a4) + c0052d0a: 8082 ret + +00000000c0052d0c <__sync_add_and_fetch_4>: __sync_add_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:567 @@ -229308,13 +229506,13 @@ __sync_add_and_fetch_4(): ****************************************************************************/ SYNC_ADD_FETCH(4, uint32_t) - c0052b3c: 411c lw a5,0(a0) - c0052b3e: 9dbd addw a1,a1,a5 - c0052b40: c10c sw a1,0(a0) - c0052b42: 0005851b sext.w a0,a1 - c0052b46: 8082 ret + c0052d0c: 411c lw a5,0(a0) + c0052d0e: 9dbd addw a1,a1,a5 + c0052d10: c10c sw a1,0(a0) + c0052d12: 0005851b sext.w a0,a1 + c0052d16: 8082 ret -00000000c0052b48 <__sync_add_and_fetch_8>: +00000000c0052d18 <__sync_add_and_fetch_8>: __sync_add_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:573 @@ -229323,13 +229521,13 @@ __sync_add_and_fetch_8(): ****************************************************************************/ SYNC_ADD_FETCH(8, uint64_t) - c0052b48: 87aa mv a5,a0 - c0052b4a: 6108 ld a0,0(a0) - c0052b4c: 952e add a0,a0,a1 - c0052b4e: e388 sd a0,0(a5) - c0052b50: 8082 ret + c0052d18: 87aa mv a5,a0 + c0052d1a: 6108 ld a0,0(a0) + c0052d1c: 952e add a0,a0,a1 + c0052d1e: e388 sd a0,0(a5) + c0052d20: 8082 ret -00000000c0052b52 <__sync_sub_and_fetch_1>: +00000000c0052d22 <__sync_sub_and_fetch_1>: __sync_sub_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:579 @@ -229338,14 +229536,14 @@ __sync_sub_and_fetch_1(): ****************************************************************************/ SYNC_SUB_FETCH(1, uint8_t) - c0052b52: 00054783 lbu a5,0(a0) - c0052b56: 872a mv a4,a0 - c0052b58: 9f8d subw a5,a5,a1 - c0052b5a: 0ff7f513 zext.b a0,a5 - c0052b5e: 00a70023 sb a0,0(a4) - c0052b62: 8082 ret - -00000000c0052b64 <__sync_sub_and_fetch_2>: + c0052d22: 00054783 lbu a5,0(a0) + c0052d26: 872a mv a4,a0 + c0052d28: 9f8d subw a5,a5,a1 + c0052d2a: 0ff7f513 zext.b a0,a5 + c0052d2e: 00a70023 sb a0,0(a4) + c0052d32: 8082 ret + +00000000c0052d34 <__sync_sub_and_fetch_2>: __sync_sub_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:585 @@ -229354,15 +229552,15 @@ __sync_sub_and_fetch_2(): ****************************************************************************/ SYNC_SUB_FETCH(2, uint16_t) - c0052b64: 00055783 lhu a5,0(a0) - c0052b68: 872a mv a4,a0 - c0052b6a: 9f8d subw a5,a5,a1 - c0052b6c: 03079513 slli a0,a5,0x30 - c0052b70: 9141 srli a0,a0,0x30 - c0052b72: 00a71023 sh a0,0(a4) - c0052b76: 8082 ret - -00000000c0052b78 <__sync_sub_and_fetch_4>: + c0052d34: 00055783 lhu a5,0(a0) + c0052d38: 872a mv a4,a0 + c0052d3a: 9f8d subw a5,a5,a1 + c0052d3c: 03079513 slli a0,a5,0x30 + c0052d40: 9141 srli a0,a0,0x30 + c0052d42: 00a71023 sh a0,0(a4) + c0052d46: 8082 ret + +00000000c0052d48 <__sync_sub_and_fetch_4>: __sync_sub_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:591 @@ -229371,13 +229569,13 @@ __sync_sub_and_fetch_4(): ****************************************************************************/ SYNC_SUB_FETCH(4, uint32_t) - c0052b78: 411c lw a5,0(a0) - c0052b7a: 40b785bb subw a1,a5,a1 - c0052b7e: c10c sw a1,0(a0) - c0052b80: 0005851b sext.w a0,a1 - c0052b84: 8082 ret + c0052d48: 411c lw a5,0(a0) + c0052d4a: 40b785bb subw a1,a5,a1 + c0052d4e: c10c sw a1,0(a0) + c0052d50: 0005851b sext.w a0,a1 + c0052d54: 8082 ret -00000000c0052b86 <__sync_sub_and_fetch_8>: +00000000c0052d56 <__sync_sub_and_fetch_8>: __sync_sub_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:597 @@ -229386,13 +229584,13 @@ __sync_sub_and_fetch_8(): ****************************************************************************/ SYNC_SUB_FETCH(8, uint64_t) - c0052b86: 611c ld a5,0(a0) - c0052b88: 872a mv a4,a0 - c0052b8a: 40b78533 sub a0,a5,a1 - c0052b8e: e308 sd a0,0(a4) - c0052b90: 8082 ret + c0052d56: 611c ld a5,0(a0) + c0052d58: 872a mv a4,a0 + c0052d5a: 40b78533 sub a0,a5,a1 + c0052d5e: e308 sd a0,0(a4) + c0052d60: 8082 ret -00000000c0052b92 <__sync_or_and_fetch_1>: +00000000c0052d62 <__sync_or_and_fetch_1>: __sync_or_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:603 @@ -229401,13 +229599,13 @@ __sync_or_and_fetch_1(): ****************************************************************************/ SYNC_OR_FETCH(1, uint8_t) - c0052b92: 87aa mv a5,a0 - c0052b94: 00054503 lbu a0,0(a0) - c0052b98: 8d4d or a0,a0,a1 - c0052b9a: 00a78023 sb a0,0(a5) - c0052b9e: 8082 ret + c0052d62: 87aa mv a5,a0 + c0052d64: 00054503 lbu a0,0(a0) + c0052d68: 8d4d or a0,a0,a1 + c0052d6a: 00a78023 sb a0,0(a5) + c0052d6e: 8082 ret -00000000c0052ba0 <__sync_or_and_fetch_2>: +00000000c0052d70 <__sync_or_and_fetch_2>: __sync_or_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:609 @@ -229416,13 +229614,13 @@ __sync_or_and_fetch_2(): ****************************************************************************/ SYNC_OR_FETCH(2, uint16_t) - c0052ba0: 87aa mv a5,a0 - c0052ba2: 00055503 lhu a0,0(a0) - c0052ba6: 8d4d or a0,a0,a1 - c0052ba8: 00a79023 sh a0,0(a5) - c0052bac: 8082 ret + c0052d70: 87aa mv a5,a0 + c0052d72: 00055503 lhu a0,0(a0) + c0052d76: 8d4d or a0,a0,a1 + c0052d78: 00a79023 sh a0,0(a5) + c0052d7c: 8082 ret -00000000c0052bae <__sync_or_and_fetch_4>: +00000000c0052d7e <__sync_or_and_fetch_4>: __sync_or_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:615 @@ -229431,13 +229629,13 @@ __sync_or_and_fetch_4(): ****************************************************************************/ SYNC_OR_FETCH(4, uint32_t) - c0052bae: 87aa mv a5,a0 - c0052bb0: 4108 lw a0,0(a0) - c0052bb2: 8d4d or a0,a0,a1 - c0052bb4: c388 sw a0,0(a5) - c0052bb6: 8082 ret + c0052d7e: 87aa mv a5,a0 + c0052d80: 4108 lw a0,0(a0) + c0052d82: 8d4d or a0,a0,a1 + c0052d84: c388 sw a0,0(a5) + c0052d86: 8082 ret -00000000c0052bb8 <__sync_or_and_fetch_8>: +00000000c0052d88 <__sync_or_and_fetch_8>: __sync_or_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:621 @@ -229446,13 +229644,13 @@ __sync_or_and_fetch_8(): ****************************************************************************/ SYNC_OR_FETCH(8, uint64_t) - c0052bb8: 87aa mv a5,a0 - c0052bba: 6108 ld a0,0(a0) - c0052bbc: 8d4d or a0,a0,a1 - c0052bbe: e388 sd a0,0(a5) - c0052bc0: 8082 ret + c0052d88: 87aa mv a5,a0 + c0052d8a: 6108 ld a0,0(a0) + c0052d8c: 8d4d or a0,a0,a1 + c0052d8e: e388 sd a0,0(a5) + c0052d90: 8082 ret -00000000c0052bc2 <__sync_and_and_fetch_1>: +00000000c0052d92 <__sync_and_and_fetch_1>: __sync_and_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:627 @@ -229461,13 +229659,13 @@ __sync_and_and_fetch_1(): ****************************************************************************/ SYNC_AND_FETCH(1, uint8_t) - c0052bc2: 87aa mv a5,a0 - c0052bc4: 00054503 lbu a0,0(a0) - c0052bc8: 8d6d and a0,a0,a1 - c0052bca: 00a78023 sb a0,0(a5) - c0052bce: 8082 ret + c0052d92: 87aa mv a5,a0 + c0052d94: 00054503 lbu a0,0(a0) + c0052d98: 8d6d and a0,a0,a1 + c0052d9a: 00a78023 sb a0,0(a5) + c0052d9e: 8082 ret -00000000c0052bd0 <__sync_and_and_fetch_2>: +00000000c0052da0 <__sync_and_and_fetch_2>: __sync_and_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:633 @@ -229476,13 +229674,13 @@ __sync_and_and_fetch_2(): ****************************************************************************/ SYNC_AND_FETCH(2, uint16_t) - c0052bd0: 87aa mv a5,a0 - c0052bd2: 00055503 lhu a0,0(a0) - c0052bd6: 8d6d and a0,a0,a1 - c0052bd8: 00a79023 sh a0,0(a5) - c0052bdc: 8082 ret + c0052da0: 87aa mv a5,a0 + c0052da2: 00055503 lhu a0,0(a0) + c0052da6: 8d6d and a0,a0,a1 + c0052da8: 00a79023 sh a0,0(a5) + c0052dac: 8082 ret -00000000c0052bde <__sync_and_and_fetch_4>: +00000000c0052dae <__sync_and_and_fetch_4>: __sync_and_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:639 @@ -229491,13 +229689,13 @@ __sync_and_and_fetch_4(): ****************************************************************************/ SYNC_AND_FETCH(4, uint32_t) - c0052bde: 87aa mv a5,a0 - c0052be0: 4108 lw a0,0(a0) - c0052be2: 8d6d and a0,a0,a1 - c0052be4: c388 sw a0,0(a5) - c0052be6: 8082 ret + c0052dae: 87aa mv a5,a0 + c0052db0: 4108 lw a0,0(a0) + c0052db2: 8d6d and a0,a0,a1 + c0052db4: c388 sw a0,0(a5) + c0052db6: 8082 ret -00000000c0052be8 <__sync_and_and_fetch_8>: +00000000c0052db8 <__sync_and_and_fetch_8>: __sync_and_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:645 @@ -229506,13 +229704,13 @@ __sync_and_and_fetch_8(): ****************************************************************************/ SYNC_AND_FETCH(8, uint64_t) - c0052be8: 87aa mv a5,a0 - c0052bea: 6108 ld a0,0(a0) - c0052bec: 8d6d and a0,a0,a1 - c0052bee: e388 sd a0,0(a5) - c0052bf0: 8082 ret + c0052db8: 87aa mv a5,a0 + c0052dba: 6108 ld a0,0(a0) + c0052dbc: 8d6d and a0,a0,a1 + c0052dbe: e388 sd a0,0(a5) + c0052dc0: 8082 ret -00000000c0052bf2 <__sync_xor_and_fetch_1>: +00000000c0052dc2 <__sync_xor_and_fetch_1>: __sync_xor_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:651 @@ -229521,13 +229719,13 @@ __sync_xor_and_fetch_1(): ****************************************************************************/ SYNC_XOR_FETCH(1, uint8_t) - c0052bf2: 87aa mv a5,a0 - c0052bf4: 00054503 lbu a0,0(a0) - c0052bf8: 8d2d xor a0,a0,a1 - c0052bfa: 00a78023 sb a0,0(a5) - c0052bfe: 8082 ret + c0052dc2: 87aa mv a5,a0 + c0052dc4: 00054503 lbu a0,0(a0) + c0052dc8: 8d2d xor a0,a0,a1 + c0052dca: 00a78023 sb a0,0(a5) + c0052dce: 8082 ret -00000000c0052c00 <__sync_xor_and_fetch_2>: +00000000c0052dd0 <__sync_xor_and_fetch_2>: __sync_xor_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:657 @@ -229536,13 +229734,13 @@ __sync_xor_and_fetch_2(): ****************************************************************************/ SYNC_XOR_FETCH(2, uint16_t) - c0052c00: 87aa mv a5,a0 - c0052c02: 00055503 lhu a0,0(a0) - c0052c06: 8d2d xor a0,a0,a1 - c0052c08: 00a79023 sh a0,0(a5) - c0052c0c: 8082 ret + c0052dd0: 87aa mv a5,a0 + c0052dd2: 00055503 lhu a0,0(a0) + c0052dd6: 8d2d xor a0,a0,a1 + c0052dd8: 00a79023 sh a0,0(a5) + c0052ddc: 8082 ret -00000000c0052c0e <__sync_xor_and_fetch_4>: +00000000c0052dde <__sync_xor_and_fetch_4>: __sync_xor_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:663 @@ -229551,13 +229749,13 @@ __sync_xor_and_fetch_4(): ****************************************************************************/ SYNC_XOR_FETCH(4, uint32_t) - c0052c0e: 87aa mv a5,a0 - c0052c10: 4108 lw a0,0(a0) - c0052c12: 8d2d xor a0,a0,a1 - c0052c14: c388 sw a0,0(a5) - c0052c16: 8082 ret + c0052dde: 87aa mv a5,a0 + c0052de0: 4108 lw a0,0(a0) + c0052de2: 8d2d xor a0,a0,a1 + c0052de4: c388 sw a0,0(a5) + c0052de6: 8082 ret -00000000c0052c18 <__sync_xor_and_fetch_8>: +00000000c0052de8 <__sync_xor_and_fetch_8>: __sync_xor_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:669 @@ -229566,13 +229764,13 @@ __sync_xor_and_fetch_8(): ****************************************************************************/ SYNC_XOR_FETCH(8, uint64_t) - c0052c18: 87aa mv a5,a0 - c0052c1a: 6108 ld a0,0(a0) - c0052c1c: 8d2d xor a0,a0,a1 - c0052c1e: e388 sd a0,0(a5) - c0052c20: 8082 ret + c0052de8: 87aa mv a5,a0 + c0052dea: 6108 ld a0,0(a0) + c0052dec: 8d2d xor a0,a0,a1 + c0052dee: e388 sd a0,0(a5) + c0052df0: 8082 ret -00000000c0052c22 <__sync_nand_and_fetch_1>: +00000000c0052df2 <__sync_nand_and_fetch_1>: __sync_nand_and_fetch_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:675 @@ -229581,15 +229779,15 @@ __sync_nand_and_fetch_1(): ****************************************************************************/ SYNC_NAND_FETCH(1, uint8_t) - c0052c22: 87aa mv a5,a0 - c0052c24: 00054503 lbu a0,0(a0) - c0052c28: 8de9 and a1,a1,a0 - c0052c2a: fff5c593 not a1,a1 - c0052c2e: 0ff5f513 zext.b a0,a1 - c0052c32: 00a78023 sb a0,0(a5) - c0052c36: 8082 ret - -00000000c0052c38 <__sync_nand_and_fetch_2>: + c0052df2: 87aa mv a5,a0 + c0052df4: 00054503 lbu a0,0(a0) + c0052df8: 8de9 and a1,a1,a0 + c0052dfa: fff5c593 not a1,a1 + c0052dfe: 0ff5f513 zext.b a0,a1 + c0052e02: 00a78023 sb a0,0(a5) + c0052e06: 8082 ret + +00000000c0052e08 <__sync_nand_and_fetch_2>: __sync_nand_and_fetch_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:681 @@ -229598,16 +229796,16 @@ __sync_nand_and_fetch_2(): ****************************************************************************/ SYNC_NAND_FETCH(2, uint16_t) - c0052c38: 87aa mv a5,a0 - c0052c3a: 00055503 lhu a0,0(a0) - c0052c3e: 8de9 and a1,a1,a0 - c0052c40: fff5c593 not a1,a1 - c0052c44: 03059513 slli a0,a1,0x30 - c0052c48: 9141 srli a0,a0,0x30 - c0052c4a: 00a79023 sh a0,0(a5) - c0052c4e: 8082 ret - -00000000c0052c50 <__sync_nand_and_fetch_4>: + c0052e08: 87aa mv a5,a0 + c0052e0a: 00055503 lhu a0,0(a0) + c0052e0e: 8de9 and a1,a1,a0 + c0052e10: fff5c593 not a1,a1 + c0052e14: 03059513 slli a0,a1,0x30 + c0052e18: 9141 srli a0,a0,0x30 + c0052e1a: 00a79023 sh a0,0(a5) + c0052e1e: 8082 ret + +00000000c0052e20 <__sync_nand_and_fetch_4>: __sync_nand_and_fetch_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:687 @@ -229616,15 +229814,15 @@ __sync_nand_and_fetch_4(): ****************************************************************************/ SYNC_NAND_FETCH(4, uint32_t) - c0052c50: 87aa mv a5,a0 - c0052c52: 4108 lw a0,0(a0) - c0052c54: 8de9 and a1,a1,a0 - c0052c56: fff5c593 not a1,a1 - c0052c5a: 0005851b sext.w a0,a1 - c0052c5e: c388 sw a0,0(a5) - c0052c60: 8082 ret - -00000000c0052c62 <__sync_nand_and_fetch_8>: + c0052e20: 87aa mv a5,a0 + c0052e22: 4108 lw a0,0(a0) + c0052e24: 8de9 and a1,a1,a0 + c0052e26: fff5c593 not a1,a1 + c0052e2a: 0005851b sext.w a0,a1 + c0052e2e: c388 sw a0,0(a5) + c0052e30: 8082 ret + +00000000c0052e32 <__sync_nand_and_fetch_8>: __sync_nand_and_fetch_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:693 @@ -229633,14 +229831,14 @@ __sync_nand_and_fetch_8(): ****************************************************************************/ SYNC_NAND_FETCH(8, uint64_t) - c0052c62: 87aa mv a5,a0 - c0052c64: 6108 ld a0,0(a0) - c0052c66: 8de9 and a1,a1,a0 - c0052c68: fff5c513 not a0,a1 - c0052c6c: e388 sd a0,0(a5) - c0052c6e: 8082 ret - -00000000c0052c70 <__sync_bool_compare_and_swap_1>: + c0052e32: 87aa mv a5,a0 + c0052e34: 6108 ld a0,0(a0) + c0052e36: 8de9 and a1,a1,a0 + c0052e38: fff5c513 not a0,a1 + c0052e3c: e388 sd a0,0(a5) + c0052e3e: 8082 ret + +00000000c0052e40 <__sync_bool_compare_and_swap_1>: __sync_bool_compare_and_swap_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:699 @@ -229649,17 +229847,17 @@ __sync_bool_compare_and_swap_1(): ****************************************************************************/ SYNC_BOOL_CMP_SWAP(1, uint8_t) - c0052c70: 00054783 lbu a5,0(a0) - c0052c74: 00b79663 bne a5,a1,c0052c80 <__sync_bool_compare_and_swap_1+0x10> + c0052e40: 00054783 lbu a5,0(a0) + c0052e44: 00b79663 bne a5,a1,c0052e50 <__sync_bool_compare_and_swap_1+0x10> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:699 (discriminator 1) - c0052c78: 00c50023 sb a2,0(a0) - c0052c7c: 4505 li a0,1 - c0052c7e: 8082 ret + c0052e48: 00c50023 sb a2,0(a0) + c0052e4c: 4505 li a0,1 + c0052e4e: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:699 - c0052c80: 4501 li a0,0 - c0052c82: 8082 ret + c0052e50: 4501 li a0,0 + c0052e52: 8082 ret -00000000c0052c84 <__sync_bool_compare_and_swap_2>: +00000000c0052e54 <__sync_bool_compare_and_swap_2>: __sync_bool_compare_and_swap_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:705 @@ -229668,17 +229866,17 @@ __sync_bool_compare_and_swap_2(): ****************************************************************************/ SYNC_BOOL_CMP_SWAP(2, uint16_t) - c0052c84: 00055783 lhu a5,0(a0) - c0052c88: 00b79663 bne a5,a1,c0052c94 <__sync_bool_compare_and_swap_2+0x10> + c0052e54: 00055783 lhu a5,0(a0) + c0052e58: 00b79663 bne a5,a1,c0052e64 <__sync_bool_compare_and_swap_2+0x10> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:705 (discriminator 1) - c0052c8c: 00c51023 sh a2,0(a0) - c0052c90: 4505 li a0,1 - c0052c92: 8082 ret + c0052e5c: 00c51023 sh a2,0(a0) + c0052e60: 4505 li a0,1 + c0052e62: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:705 - c0052c94: 4501 li a0,0 - c0052c96: 8082 ret + c0052e64: 4501 li a0,0 + c0052e66: 8082 ret -00000000c0052c98 <__sync_bool_compare_and_swap_4>: +00000000c0052e68 <__sync_bool_compare_and_swap_4>: __sync_bool_compare_and_swap_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:711 @@ -229687,17 +229885,17 @@ __sync_bool_compare_and_swap_4(): ****************************************************************************/ SYNC_BOOL_CMP_SWAP(4, uint32_t) - c0052c98: 411c lw a5,0(a0) - c0052c9a: 00b79563 bne a5,a1,c0052ca4 <__sync_bool_compare_and_swap_4+0xc> + c0052e68: 411c lw a5,0(a0) + c0052e6a: 00b79563 bne a5,a1,c0052e74 <__sync_bool_compare_and_swap_4+0xc> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:711 (discriminator 1) - c0052c9e: c110 sw a2,0(a0) - c0052ca0: 4505 li a0,1 - c0052ca2: 8082 ret + c0052e6e: c110 sw a2,0(a0) + c0052e70: 4505 li a0,1 + c0052e72: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:711 - c0052ca4: 4501 li a0,0 - c0052ca6: 8082 ret + c0052e74: 4501 li a0,0 + c0052e76: 8082 ret -00000000c0052ca8 <__sync_bool_compare_and_swap_8>: +00000000c0052e78 <__sync_bool_compare_and_swap_8>: __sync_bool_compare_and_swap_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:717 @@ -229706,17 +229904,17 @@ __sync_bool_compare_and_swap_8(): ****************************************************************************/ SYNC_BOOL_CMP_SWAP(8, uint64_t) - c0052ca8: 611c ld a5,0(a0) - c0052caa: 00b79563 bne a5,a1,c0052cb4 <__sync_bool_compare_and_swap_8+0xc> + c0052e78: 611c ld a5,0(a0) + c0052e7a: 00b79563 bne a5,a1,c0052e84 <__sync_bool_compare_and_swap_8+0xc> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:717 (discriminator 1) - c0052cae: e110 sd a2,0(a0) - c0052cb0: 4505 li a0,1 - c0052cb2: 8082 ret + c0052e7e: e110 sd a2,0(a0) + c0052e80: 4505 li a0,1 + c0052e82: 8082 ret /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:717 - c0052cb4: 4501 li a0,0 - c0052cb6: 8082 ret + c0052e84: 4501 li a0,0 + c0052e86: 8082 ret -00000000c0052cb8 <__sync_val_compare_and_swap_1>: +00000000c0052e88 <__sync_val_compare_and_swap_1>: __sync_val_compare_and_swap_1(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:723 @@ -229725,15 +229923,15 @@ __sync_val_compare_and_swap_1(): ****************************************************************************/ SYNC_VAL_CMP_SWAP(1, uint8_t) - c0052cb8: 87aa mv a5,a0 - c0052cba: 00054503 lbu a0,0(a0) - c0052cbe: 00b51463 bne a0,a1,c0052cc6 <__sync_val_compare_and_swap_1+0xe> + c0052e88: 87aa mv a5,a0 + c0052e8a: 00054503 lbu a0,0(a0) + c0052e8e: 00b51463 bne a0,a1,c0052e96 <__sync_val_compare_and_swap_1+0xe> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:723 (discriminator 1) - c0052cc2: 00c78023 sb a2,0(a5) + c0052e92: 00c78023 sb a2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:723 (discriminator 3) - c0052cc6: 8082 ret + c0052e96: 8082 ret -00000000c0052cc8 <__sync_val_compare_and_swap_2>: +00000000c0052e98 <__sync_val_compare_and_swap_2>: __sync_val_compare_and_swap_2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:729 @@ -229742,15 +229940,15 @@ __sync_val_compare_and_swap_2(): ****************************************************************************/ SYNC_VAL_CMP_SWAP(2, uint16_t) - c0052cc8: 87aa mv a5,a0 - c0052cca: 00055503 lhu a0,0(a0) - c0052cce: 00b51463 bne a0,a1,c0052cd6 <__sync_val_compare_and_swap_2+0xe> + c0052e98: 87aa mv a5,a0 + c0052e9a: 00055503 lhu a0,0(a0) + c0052e9e: 00b51463 bne a0,a1,c0052ea6 <__sync_val_compare_and_swap_2+0xe> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:729 (discriminator 1) - c0052cd2: 00c79023 sh a2,0(a5) + c0052ea2: 00c79023 sh a2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:729 (discriminator 3) - c0052cd6: 8082 ret + c0052ea6: 8082 ret -00000000c0052cd8 <__sync_val_compare_and_swap_4>: +00000000c0052ea8 <__sync_val_compare_and_swap_4>: __sync_val_compare_and_swap_4(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:735 @@ -229759,15 +229957,15 @@ __sync_val_compare_and_swap_4(): ****************************************************************************/ SYNC_VAL_CMP_SWAP(4, uint32_t) - c0052cd8: 87aa mv a5,a0 - c0052cda: 4108 lw a0,0(a0) - c0052cdc: 00b51363 bne a0,a1,c0052ce2 <__sync_val_compare_and_swap_4+0xa> + c0052ea8: 87aa mv a5,a0 + c0052eaa: 4108 lw a0,0(a0) + c0052eac: 00b51363 bne a0,a1,c0052eb2 <__sync_val_compare_and_swap_4+0xa> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:735 (discriminator 1) - c0052ce0: c390 sw a2,0(a5) + c0052eb0: c390 sw a2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:735 (discriminator 3) - c0052ce2: 8082 ret + c0052eb2: 8082 ret -00000000c0052ce4 <__sync_val_compare_and_swap_8>: +00000000c0052eb4 <__sync_val_compare_and_swap_8>: __sync_val_compare_and_swap_8(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:741 @@ -229776,161 +229974,161 @@ __sync_val_compare_and_swap_8(): ****************************************************************************/ SYNC_VAL_CMP_SWAP(8, uint64_t) - c0052ce4: 87aa mv a5,a0 - c0052ce6: 6108 ld a0,0(a0) - c0052ce8: 00b51363 bne a0,a1,c0052cee <__sync_val_compare_and_swap_8+0xa> + c0052eb4: 87aa mv a5,a0 + c0052eb6: 6108 ld a0,0(a0) + c0052eb8: 00b51363 bne a0,a1,c0052ebe <__sync_val_compare_and_swap_8+0xa> /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:741 (discriminator 1) - c0052cec: e390 sd a2,0(a5) + c0052ebc: e390 sd a2,0(a5) /Users/Luppy/riscv/quickjs-nuttx/nuttx/arch_atomic.c:741 - c0052cee: 8082 ret + c0052ebe: 8082 ret -00000000c0052cf0 : +00000000c0052ec0 : dlclose(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:3 #include void dlclose(void) { puts("TODO: dlclose"); exit(1); } - c0052cf0: 1141 addi sp,sp,-16 - c0052cf2: 00020517 auipc a0,0x20 - c0052cf6: b5650513 addi a0,a0,-1194 # c0072848 - c0052cfa: e406 sd ra,8(sp) - c0052cfc: 5e4010ef jal ra,c00542e0 - c0052d00: 4505 li a0,1 - c0052d02: 327020ef jal ra,c0055828 - -00000000c0052d06 : + c0052ec0: 1141 addi sp,sp,-16 + c0052ec2: 00020517 auipc a0,0x20 + c0052ec6: be650513 addi a0,a0,-1050 # c0072aa8 + c0052eca: e406 sd ra,8(sp) + c0052ecc: 5e4010ef jal ra,c00544b0 + c0052ed0: 4505 li a0,1 + c0052ed2: 327020ef jal ra,c00559f8 + +00000000c0052ed6 : dlopen(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:4 void dlopen(void) { puts("TODO: dlopen"); exit(1); } - c0052d06: 1141 addi sp,sp,-16 - c0052d08: 00020517 auipc a0,0x20 - c0052d0c: b5050513 addi a0,a0,-1200 # c0072858 - c0052d10: e406 sd ra,8(sp) - c0052d12: 5ce010ef jal ra,c00542e0 - c0052d16: 4505 li a0,1 - c0052d18: 311020ef jal ra,c0055828 - -00000000c0052d1c : + c0052ed6: 1141 addi sp,sp,-16 + c0052ed8: 00020517 auipc a0,0x20 + c0052edc: be050513 addi a0,a0,-1056 # c0072ab8 + c0052ee0: e406 sd ra,8(sp) + c0052ee2: 5ce010ef jal ra,c00544b0 + c0052ee6: 4505 li a0,1 + c0052ee8: 311020ef jal ra,c00559f8 + +00000000c0052eec : dlsym(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:5 void dlsym(void) { puts("TODO: dlsym"); exit(1); } - c0052d1c: 1141 addi sp,sp,-16 - c0052d1e: 00020517 auipc a0,0x20 - c0052d22: b4a50513 addi a0,a0,-1206 # c0072868 - c0052d26: e406 sd ra,8(sp) - c0052d28: 5b8010ef jal ra,c00542e0 - c0052d2c: 4505 li a0,1 - c0052d2e: 2fb020ef jal ra,c0055828 - -00000000c0052d32 : + c0052eec: 1141 addi sp,sp,-16 + c0052eee: 00020517 auipc a0,0x20 + c0052ef2: bda50513 addi a0,a0,-1062 # c0072ac8 + c0052ef6: e406 sd ra,8(sp) + c0052ef8: 5b8010ef jal ra,c00544b0 + c0052efc: 4505 li a0,1 + c0052efe: 2fb020ef jal ra,c00559f8 + +00000000c0052f02 : fesetround(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:6 void fesetround(void) { puts("TODO: fesetround"); exit(1); } - c0052d32: 1141 addi sp,sp,-16 - c0052d34: 00020517 auipc a0,0x20 - c0052d38: b4450513 addi a0,a0,-1212 # c0072878 - c0052d3c: e406 sd ra,8(sp) - c0052d3e: 5a2010ef jal ra,c00542e0 - c0052d42: 4505 li a0,1 - c0052d44: 2e5020ef jal ra,c0055828 - -00000000c0052d48 : + c0052f02: 1141 addi sp,sp,-16 + c0052f04: 00020517 auipc a0,0x20 + c0052f08: bd450513 addi a0,a0,-1068 # c0072ad8 + c0052f0c: e406 sd ra,8(sp) + c0052f0e: 5a2010ef jal ra,c00544b0 + c0052f12: 4505 li a0,1 + c0052f14: 2e5020ef jal ra,c00559f8 + +00000000c0052f18 : hypot(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:7 void hypot(void) { puts("TODO: hypot"); exit(1); } - c0052d48: 1141 addi sp,sp,-16 - c0052d4a: 00020517 auipc a0,0x20 - c0052d4e: b4650513 addi a0,a0,-1210 # c0072890 - c0052d52: e406 sd ra,8(sp) - c0052d54: 58c010ef jal ra,c00542e0 - c0052d58: 4505 li a0,1 - c0052d5a: 2cf020ef jal ra,c0055828 - -00000000c0052d5e : + c0052f18: 1141 addi sp,sp,-16 + c0052f1a: 00020517 auipc a0,0x20 + c0052f1e: bd650513 addi a0,a0,-1066 # c0072af0 + c0052f22: e406 sd ra,8(sp) + c0052f24: 58c010ef jal ra,c00544b0 + c0052f28: 4505 li a0,1 + c0052f2a: 2cf020ef jal ra,c00559f8 + +00000000c0052f2e : log1p(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:8 void log1p(void) { puts("TODO: log1p"); exit(1); } - c0052d5e: 1141 addi sp,sp,-16 - c0052d60: 00020517 auipc a0,0x20 - c0052d64: b4050513 addi a0,a0,-1216 # c00728a0 - c0052d68: e406 sd ra,8(sp) - c0052d6a: 576010ef jal ra,c00542e0 - c0052d6e: 4505 li a0,1 - c0052d70: 2b9020ef jal ra,c0055828 - -00000000c0052d74 : + c0052f2e: 1141 addi sp,sp,-16 + c0052f30: 00020517 auipc a0,0x20 + c0052f34: bd050513 addi a0,a0,-1072 # c0072b00 + c0052f38: e406 sd ra,8(sp) + c0052f3a: 576010ef jal ra,c00544b0 + c0052f3e: 4505 li a0,1 + c0052f40: 2b9020ef jal ra,c00559f8 + +00000000c0052f44 : lrint(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:9 void lrint(void) { puts("TODO: lrint"); exit(1); } - c0052d74: 1141 addi sp,sp,-16 - c0052d76: 00020517 auipc a0,0x20 - c0052d7a: b3a50513 addi a0,a0,-1222 # c00728b0 - c0052d7e: e406 sd ra,8(sp) - c0052d80: 560010ef jal ra,c00542e0 - c0052d84: 4505 li a0,1 - c0052d86: 2a3020ef jal ra,c0055828 - -00000000c0052d8a : + c0052f44: 1141 addi sp,sp,-16 + c0052f46: 00020517 auipc a0,0x20 + c0052f4a: bca50513 addi a0,a0,-1078 # c0072b10 + c0052f4e: e406 sd ra,8(sp) + c0052f50: 560010ef jal ra,c00544b0 + c0052f54: 4505 li a0,1 + c0052f56: 2a3020ef jal ra,c00559f8 + +00000000c0052f5a : pclose(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:10 void pclose(void) { puts("TODO: pclose"); exit(1); } - c0052d8a: 1141 addi sp,sp,-16 - c0052d8c: 00020517 auipc a0,0x20 - c0052d90: b3450513 addi a0,a0,-1228 # c00728c0 - c0052d94: e406 sd ra,8(sp) - c0052d96: 54a010ef jal ra,c00542e0 - c0052d9a: 4505 li a0,1 - c0052d9c: 28d020ef jal ra,c0055828 - -00000000c0052da0 : + c0052f5a: 1141 addi sp,sp,-16 + c0052f5c: 00020517 auipc a0,0x20 + c0052f60: bc450513 addi a0,a0,-1084 # c0072b20 + c0052f64: e406 sd ra,8(sp) + c0052f66: 54a010ef jal ra,c00544b0 + c0052f6a: 4505 li a0,1 + c0052f6c: 28d020ef jal ra,c00559f8 + +00000000c0052f70 : pipe2(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:11 void pipe2(void) { puts("TODO: pipe2"); exit(1); } - c0052da0: 1141 addi sp,sp,-16 - c0052da2: 00020517 auipc a0,0x20 - c0052da6: b2e50513 addi a0,a0,-1234 # c00728d0 - c0052daa: e406 sd ra,8(sp) - c0052dac: 534010ef jal ra,c00542e0 - c0052db0: 4505 li a0,1 - c0052db2: 277020ef jal ra,c0055828 - -00000000c0052db6 : + c0052f70: 1141 addi sp,sp,-16 + c0052f72: 00020517 auipc a0,0x20 + c0052f76: bbe50513 addi a0,a0,-1090 # c0072b30 + c0052f7a: e406 sd ra,8(sp) + c0052f7c: 534010ef jal ra,c00544b0 + c0052f80: 4505 li a0,1 + c0052f82: 277020ef jal ra,c00559f8 + +00000000c0052f86 : popen(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:12 void popen(void) { puts("TODO: popen"); exit(1); } - c0052db6: 1141 addi sp,sp,-16 - c0052db8: 00020517 auipc a0,0x20 - c0052dbc: b2850513 addi a0,a0,-1240 # c00728e0 - c0052dc0: e406 sd ra,8(sp) - c0052dc2: 51e010ef jal ra,c00542e0 - c0052dc6: 4505 li a0,1 - c0052dc8: 261020ef jal ra,c0055828 - -00000000c0052dcc : + c0052f86: 1141 addi sp,sp,-16 + c0052f88: 00020517 auipc a0,0x20 + c0052f8c: bb850513 addi a0,a0,-1096 # c0072b40 + c0052f90: e406 sd ra,8(sp) + c0052f92: 51e010ef jal ra,c00544b0 + c0052f96: 4505 li a0,1 + c0052f98: 261020ef jal ra,c00559f8 + +00000000c0052f9c : readlink(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:13 void readlink(void) { puts("TODO: readlink"); exit(1); } - c0052dcc: 1141 addi sp,sp,-16 - c0052dce: 00020517 auipc a0,0x20 - c0052dd2: b2250513 addi a0,a0,-1246 # c00728f0 - c0052dd6: e406 sd ra,8(sp) - c0052dd8: 508010ef jal ra,c00542e0 - c0052ddc: 4505 li a0,1 - c0052dde: 24b020ef jal ra,c0055828 - -00000000c0052de2 : + c0052f9c: 1141 addi sp,sp,-16 + c0052f9e: 00020517 auipc a0,0x20 + c0052fa2: bb250513 addi a0,a0,-1102 # c0072b50 + c0052fa6: e406 sd ra,8(sp) + c0052fa8: 508010ef jal ra,c00544b0 + c0052fac: 4505 li a0,1 + c0052fae: 24b020ef jal ra,c00559f8 + +00000000c0052fb2 : symlink(): /Users/Luppy/riscv/quickjs-nuttx/nuttx/stub.c:14 void symlink(void) { puts("TODO: symlink"); exit(1); } - c0052de2: 1141 addi sp,sp,-16 - c0052de4: 00020517 auipc a0,0x20 - c0052de8: b1c50513 addi a0,a0,-1252 # c0072900 - c0052dec: e406 sd ra,8(sp) - c0052dee: 4f2010ef jal ra,c00542e0 - c0052df2: 4505 li a0,1 - c0052df4: 235020ef jal ra,c0055828 - -00000000c0052df8 : + c0052fb2: 1141 addi sp,sp,-16 + c0052fb4: 00020517 auipc a0,0x20 + c0052fb8: bac50513 addi a0,a0,-1108 # c0072b60 + c0052fbc: e406 sd ra,8(sp) + c0052fbe: 4f2010ef jal ra,c00544b0 + c0052fc2: 4505 li a0,1 + c0052fc4: 235020ef jal ra,c00559f8 + +00000000c0052fc8 : free(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_free.c:49 ****************************************************************************/ @@ -229939,17 +230137,17 @@ free(): void free(FAR void *mem) { mm_free(USR_HEAP, mem); - c0052df8: 00c017b7 lui a5,0xc01 - c0052dfc: 07a2 slli a5,a5,0x8 + c0052fc8: 00c017b7 lui a5,0xc01 + c0052fcc: 07a2 slli a5,a5,0x8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_free.c:48 { - c0052dfe: 85aa mv a1,a0 + c0052fce: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_free.c:49 mm_free(USR_HEAP, mem); - c0052e00: 6788 ld a0,8(a5) - c0052e02: a605 j c0053122 + c0052fd0: 6788 ld a0,8(a5) + c0052fd2: a605 j c00532f2 -00000000c0052e04 : +00000000c0052fd4 : malloc(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_malloc.c:54 * @@ -229958,16 +230156,16 @@ malloc(): #undef malloc /* See mm/README.txt */ FAR void *malloc(size_t size) { - c0052e04: 85aa mv a1,a0 + c0052fd4: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_malloc.c:58 #if defined(CONFIG_ARCH_ADDRENV) && defined(CONFIG_BUILD_KERNEL) /* Use memalign() because it implements the sbrk() logic */ return memalign(sizeof(FAR void *), size); - c0052e06: 4521 li a0,8 - c0052e08: a009 j c0052e0a + c0052fd6: 4521 li a0,8 + c0052fd8: a009 j c0052fda -00000000c0052e0a : +00000000c0052fda : memalign(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:53 * @@ -229976,8 +230174,8 @@ memalign(): #undef memalign /* See mm/README.txt */ FAR void *memalign(size_t alignment, size_t size) { - c0052e0a: 7179 addi sp,sp,-48 - c0052e0c: e44e sd s3,8(sp) + c0052fda: 7179 addi sp,sp,-48 + c0052fdc: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:75 * allocated). */ @@ -229985,47 +230183,47 @@ FAR void *memalign(size_t alignment, size_t size) do { mem = mm_memalign(USR_HEAP, alignment, size); - c0052e0e: 00c019b7 lui s3,0xc01 + c0052fde: 00c019b7 lui s3,0xc01 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:53 { - c0052e12: f022 sd s0,32(sp) - c0052e14: e84a sd s2,16(sp) - c0052e16: e052 sd s4,0(sp) - c0052e18: f406 sd ra,40(sp) - c0052e1a: ec26 sd s1,24(sp) - c0052e1c: 892a mv s2,a0 - c0052e1e: 842e mv s0,a1 + c0052fe2: f022 sd s0,32(sp) + c0052fe4: e84a sd s2,16(sp) + c0052fe6: e052 sd s4,0(sp) + c0052fe8: f406 sd ra,40(sp) + c0052fea: ec26 sd s1,24(sp) + c0052fec: 892a mv s2,a0 + c0052fee: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:75 mem = mm_memalign(USR_HEAP, alignment, size); - c0052e20: 09a2 slli s3,s3,0x8 + c0052ff0: 09a2 slli s3,s3,0x8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:60 umm_try_initialize(); - c0052e22: 78c000ef jal ra,c00535ae + c0052ff2: 78c000ef jal ra,c005377e /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:79 if (!mem) { brkaddr = sbrk(size < 1 ? 1 : size); if (brkaddr == (FAR void *)-1) - c0052e26: 5a7d li s4,-1 + c0052ff6: 5a7d li s4,-1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:75 mem = mm_memalign(USR_HEAP, alignment, size); - c0052e28: 0089b503 ld a0,8(s3) # c01008 <__clzdi2-0xbf3feff8> - c0052e2c: 8622 mv a2,s0 - c0052e2e: 85ca mv a1,s2 - c0052e30: 34e000ef jal ra,c005317e - c0052e34: 84aa mv s1,a0 + c0052ff8: 0089b503 ld a0,8(s3) # c01008 <__clzdi2-0xbf3feff8> + c0052ffc: 8622 mv a2,s0 + c0052ffe: 85ca mv a1,s2 + c0053000: 34e000ef jal ra,c005334e + c0053004: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:76 if (!mem) - c0052e36: e901 bnez a0,c0052e46 + c0053006: e901 bnez a0,c0053016 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:78 brkaddr = sbrk(size < 1 ? 1 : size); - c0052e38: 8522 mv a0,s0 - c0052e3a: e011 bnez s0,c0052e3e - c0052e3c: 4505 li a0,1 - c0052e3e: 068000ef jal ra,c0052ea6 + c0053008: 8522 mv a0,s0 + c005300a: e011 bnez s0,c005300e + c005300c: 4505 li a0,1 + c005300e: 068000ef jal ra,c0053076 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:79 if (brkaddr == (FAR void *)-1) - c0052e42: ff4513e3 bne a0,s4,c0052e28 + c0053012: ff4513e3 bne a0,s4,c0052ff8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_memalign.c:99 set_errno(ENOMEM); } @@ -230033,17 +230231,17 @@ FAR void *memalign(size_t alignment, size_t size) return ret; #endif } - c0052e46: 70a2 ld ra,40(sp) - c0052e48: 7402 ld s0,32(sp) - c0052e4a: 6942 ld s2,16(sp) - c0052e4c: 69a2 ld s3,8(sp) - c0052e4e: 6a02 ld s4,0(sp) - c0052e50: 8526 mv a0,s1 - c0052e52: 64e2 ld s1,24(sp) - c0052e54: 6145 addi sp,sp,48 - c0052e56: 8082 ret - -00000000c0052e58 : + c0053016: 70a2 ld ra,40(sp) + c0053018: 7402 ld s0,32(sp) + c005301a: 6942 ld s2,16(sp) + c005301c: 69a2 ld s3,8(sp) + c005301e: 6a02 ld s4,0(sp) + c0053020: 8526 mv a0,s1 + c0053022: 64e2 ld s1,24(sp) + c0053024: 6145 addi sp,sp,48 + c0053026: 8082 ret + +00000000c0053028 : realloc(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:55 * @@ -230052,8 +230250,8 @@ realloc(): #undef realloc /* See mm/README.txt */ FAR void *realloc(FAR void *oldmem, size_t size) { - c0052e58: 7179 addi sp,sp,-48 - c0052e5a: e44e sd s3,8(sp) + c0053028: 7179 addi sp,sp,-48 + c005302a: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:77 * allocated). */ @@ -230061,47 +230259,47 @@ FAR void *realloc(FAR void *oldmem, size_t size) do { mem = mm_realloc(USR_HEAP, oldmem, size); - c0052e5c: 00c019b7 lui s3,0xc01 + c005302c: 00c019b7 lui s3,0xc01 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:55 { - c0052e60: f022 sd s0,32(sp) - c0052e62: e84a sd s2,16(sp) - c0052e64: e052 sd s4,0(sp) - c0052e66: f406 sd ra,40(sp) - c0052e68: ec26 sd s1,24(sp) - c0052e6a: 892a mv s2,a0 - c0052e6c: 842e mv s0,a1 + c0053030: f022 sd s0,32(sp) + c0053032: e84a sd s2,16(sp) + c0053034: e052 sd s4,0(sp) + c0053036: f406 sd ra,40(sp) + c0053038: ec26 sd s1,24(sp) + c005303a: 892a mv s2,a0 + c005303c: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:77 mem = mm_realloc(USR_HEAP, oldmem, size); - c0052e6e: 09a2 slli s3,s3,0x8 + c005303e: 09a2 slli s3,s3,0x8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:62 umm_try_initialize(); - c0052e70: 73e000ef jal ra,c00535ae + c0053040: 73e000ef jal ra,c005377e /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:81 if (!mem) { brkaddr = sbrk(size < 1 ? 1 : size); if (brkaddr == (FAR void *)-1) - c0052e74: 5a7d li s4,-1 + c0053044: 5a7d li s4,-1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:77 mem = mm_realloc(USR_HEAP, oldmem, size); - c0052e76: 0089b503 ld a0,8(s3) # c01008 <__clzdi2-0xbf3feff8> - c0052e7a: 8622 mv a2,s0 - c0052e7c: 85ca mv a1,s2 - c0052e7e: 48e000ef jal ra,c005330c - c0052e82: 84aa mv s1,a0 + c0053046: 0089b503 ld a0,8(s3) # c01008 <__clzdi2-0xbf3feff8> + c005304a: 8622 mv a2,s0 + c005304c: 85ca mv a1,s2 + c005304e: 48e000ef jal ra,c00534dc + c0053052: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:78 if (!mem) - c0052e84: e901 bnez a0,c0052e94 + c0053054: e901 bnez a0,c0053064 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:80 brkaddr = sbrk(size < 1 ? 1 : size); - c0052e86: 8522 mv a0,s0 - c0052e88: e011 bnez s0,c0052e8c - c0052e8a: 4505 li a0,1 - c0052e8c: 01a000ef jal ra,c0052ea6 + c0053056: 8522 mv a0,s0 + c0053058: e011 bnez s0,c005305c + c005305a: 4505 li a0,1 + c005305c: 01a000ef jal ra,c0053076 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:81 if (brkaddr == (FAR void *)-1) - c0052e90: ff4513e3 bne a0,s4,c0052e76 + c0053060: ff4513e3 bne a0,s4,c0053046 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_realloc.c:101 set_errno(ENOMEM); } @@ -230109,17 +230307,17 @@ FAR void *realloc(FAR void *oldmem, size_t size) return ret; #endif } - c0052e94: 70a2 ld ra,40(sp) - c0052e96: 7402 ld s0,32(sp) - c0052e98: 6942 ld s2,16(sp) - c0052e9a: 69a2 ld s3,8(sp) - c0052e9c: 6a02 ld s4,0(sp) - c0052e9e: 8526 mv a0,s1 - c0052ea0: 64e2 ld s1,24(sp) - c0052ea2: 6145 addi sp,sp,48 - c0052ea4: 8082 ret - -00000000c0052ea6 : + c0053064: 70a2 ld ra,40(sp) + c0053066: 7402 ld s0,32(sp) + c0053068: 6942 ld s2,16(sp) + c005306a: 69a2 ld s3,8(sp) + c005306c: 6a02 ld s4,0(sp) + c005306e: 8526 mv a0,s1 + c0053070: 64e2 ld s1,24(sp) + c0053072: 6145 addi sp,sp,48 + c0053074: 8082 ret + +00000000c0053076 : sbrk(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:74 * size. @@ -230128,11 +230326,11 @@ sbrk(): FAR void *sbrk(intptr_t incr) { - c0052ea6: 1101 addi sp,sp,-32 - c0052ea8: ec06 sd ra,24(sp) - c0052eaa: e822 sd s0,16(sp) - c0052eac: e426 sd s1,8(sp) - c0052eae: e04a sd s2,0(sp) + c0053076: 1101 addi sp,sp,-32 + c0053078: ec06 sd ra,24(sp) + c005307a: e822 sd s0,16(sp) + c005307c: e426 sd s1,8(sp) + c005307e: e04a sd s2,0(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:81 uintptr_t allocbase; unsigned int pgincr; @@ -230140,13 +230338,13 @@ FAR void *sbrk(intptr_t incr) int errcode; DEBUGASSERT(incr >= 0); - c0052eb0: 00055b63 bgez a0,c0052ec6 + c0053080: 00055b63 bgez a0,c0053096 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:81 (discriminator 1) - c0052eb4: 4601 li a2,0 - c0052eb6: 05100593 li a1,81 - c0052eba: 00020517 auipc a0,0x20 - c0052ebe: a5650513 addi a0,a0,-1450 # c0072910 - c0052ec2: 357000ef jal ra,c0053a18 <__assert> + c0053084: 4601 li a2,0 + c0053086: 05100593 li a1,81 + c005308a: 00020517 auipc a0,0x20 + c005308e: ae650513 addi a0,a0,-1306 # c0072b70 + c0053092: 357000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:94 umm_try_initialize(); @@ -230154,31 +230352,31 @@ FAR void *sbrk(intptr_t incr) /* Get the current break address (NOTE: assumes region 0). */ brkaddr = (uintptr_t)mm_brkaddr(USR_HEAP, 0); - c0052ec6: 00c01937 lui s2,0xc01 - c0052eca: 842a mv s0,a0 - c0052ecc: 0922 slli s2,s2,0x8 + c0053096: 00c01937 lui s2,0xc01 + c005309a: 842a mv s0,a0 + c005309c: 0922 slli s2,s2,0x8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:90 umm_try_initialize(); - c0052ece: 6e0000ef jal ra,c00535ae + c005309e: 6e0000ef jal ra,c005377e /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:94 brkaddr = (uintptr_t)mm_brkaddr(USR_HEAP, 0); - c0052ed2: 00893503 ld a0,8(s2) # c01008 <__clzdi2-0xbf3feff8> - c0052ed6: 4581 li a1,0 - c0052ed8: 048000ef jal ra,c0052f20 - c0052edc: 84aa mv s1,a0 + c00530a2: 00893503 ld a0,8(s2) # c01008 <__clzdi2-0xbf3feff8> + c00530a6: 4581 li a1,0 + c00530a8: 048000ef jal ra,c00530f0 + c00530ac: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:95 if (incr > 0) - c0052ede: c405 beqz s0,c0052f06 + c00530ae: c405 beqz s0,c00530d6 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:99 { /* Convert the increment to multiples of the page size */ pgincr = MM_NPAGES(incr); - c0052ee0: 6585 lui a1,0x1 - c0052ee2: 15fd addi a1,a1,-1 - c0052ee4: 942e add s0,s0,a1 - c0052ee6: 8031 srli s0,s0,0xc - c0052ee8: 2401 sext.w s0,s0 + c00530b0: 6585 lui a1,0x1 + c00530b2: 15fd addi a1,a1,-1 + c00530b4: 942e add s0,s0,a1 + c00530b6: 8031 srli s0,s0,0xc + c00530b8: 2401 sext.w s0,s0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:105 /* Allocate the requested number of pages and map them to the @@ -230186,12 +230384,12 @@ FAR void *sbrk(intptr_t incr) */ allocbase = pgalloc(brkaddr, pgincr); - c0052eea: 85a2 mv a1,s0 - c0052eec: 5ee040ef jal ra,c00574da - c0052ef0: 85aa mv a1,a0 + c00530ba: 85a2 mv a1,s0 + c00530bc: 5ee040ef jal ra,c00576aa + c00530c0: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:106 if (allocbase == 0) - c0052ef2: c10d beqz a0,c0052f14 + c00530c2: c10d beqz a0,c00530e4 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:114 goto errout; } @@ -230199,14 +230397,14 @@ FAR void *sbrk(intptr_t incr) /* Extend the heap (region 0) */ bytesize = pgincr << MM_PGSHIFT; - c0052ef4: 00c4161b slliw a2,s0,0xc + c00530c4: 00c4161b slliw a2,s0,0xc /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:115 mm_extend(USR_HEAP, (FAR void *)allocbase, bytesize, 0); - c0052ef8: 00893503 ld a0,8(s2) - c0052efc: 1602 slli a2,a2,0x20 - c0052efe: 4681 li a3,0 - c0052f00: 9201 srli a2,a2,0x20 - c0052f02: 040000ef jal ra,c0052f42 + c00530c8: 00893503 ld a0,8(s2) + c00530cc: 1602 slli a2,a2,0x20 + c00530ce: 4681 li a3,0 + c00530d0: 9201 srli a2,a2,0x20 + c00530d2: 040000ef jal ra,c0053112 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:123 return (FAR void *)brkaddr; @@ -230214,24 +230412,24 @@ errout: set_errno(errcode); return (FAR void *)-1; } - c0052f06: 60e2 ld ra,24(sp) - c0052f08: 6442 ld s0,16(sp) - c0052f0a: 6902 ld s2,0(sp) - c0052f0c: 8526 mv a0,s1 - c0052f0e: 64a2 ld s1,8(sp) - c0052f10: 6105 addi sp,sp,32 - c0052f12: 8082 ret + c00530d6: 60e2 ld ra,24(sp) + c00530d8: 6442 ld s0,16(sp) + c00530da: 6902 ld s2,0(sp) + c00530dc: 8526 mv a0,s1 + c00530de: 64a2 ld s1,8(sp) + c00530e0: 6105 addi sp,sp,32 + c00530e2: 8082 ret /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:121 set_errno(errcode); - c0052f14: 3c1000ef jal ra,c0053ad4 <__errno> - c0052f18: 47ad li a5,11 - c0052f1a: c11c sw a5,0(a0) + c00530e4: 3c1000ef jal ra,c0053ca4 <__errno> + c00530e8: 47ad li a5,11 + c00530ea: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_sbrk.c:122 return (FAR void *)-1; - c0052f1c: 54fd li s1,-1 - c0052f1e: b7e5 j c0052f06 + c00530ec: 54fd li s1,-1 + c00530ee: b7e5 j c00530d6 -00000000c0052f20 : +00000000c00530f0 : mm_brkaddr(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:53 uintptr_t brkaddr; @@ -230240,39 +230438,39 @@ mm_brkaddr(): DEBUGASSERT(heap && region < heap->mm_nregions); #else DEBUGASSERT(heap && region == 0); - c0052f20: c111 beqz a0,c0052f24 + c00530f0: c111 beqz a0,c00530f4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:53 (discriminator 2) - c0052f22: cd81 beqz a1,c0052f3a + c00530f2: cd81 beqz a1,c005310a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:47 (discriminator 3) { - c0052f24: 1141 addi sp,sp,-16 + c00530f4: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:53 (discriminator 3) DEBUGASSERT(heap && region == 0); - c0052f26: 4601 li a2,0 - c0052f28: 03500593 li a1,53 - c0052f2c: 00020517 auipc a0,0x20 - c0052f30: 9fc50513 addi a0,a0,-1540 # c0072928 + c00530f6: 4601 li a2,0 + c00530f8: 03500593 li a1,53 + c00530fc: 00020517 auipc a0,0x20 + c0053100: a8c50513 addi a0,a0,-1396 # c0072b88 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:47 (discriminator 3) { - c0052f34: e406 sd ra,8(sp) + c0053104: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:53 (discriminator 3) DEBUGASSERT(heap && region == 0); - c0052f36: 2e3000ef jal ra,c0053a18 <__assert> + c0053106: 2e3000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:56 (discriminator 4) #endif brkaddr = (uintptr_t)heap->mm_heapend[region]; - c0052f3a: 6128 ld a0,64(a0) + c005310a: 6128 ld a0,64(a0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:57 (discriminator 4) return brkaddr ? (FAR void *)(brkaddr + MM_SIZEOF_ALLOCNODE) : NULL; - c0052f3c: c111 beqz a0,c0052f40 + c005310c: c111 beqz a0,c0053110 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:57 (discriminator 1) - c0052f3e: 0541 addi a0,a0,16 + c005310e: 0541 addi a0,a0,16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_brkaddr.c:58 } - c0052f40: 8082 ret + c0053110: 8082 ret -00000000c0052f42 : +00000000c0053112 : mm_extend(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:54 * @@ -230281,12 +230479,12 @@ mm_extend(): void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, int region) { - c0052f42: 7139 addi sp,sp,-64 - c0052f44: fc06 sd ra,56(sp) - c0052f46: f822 sd s0,48(sp) - c0052f48: f426 sd s1,40(sp) - c0052f4a: f04a sd s2,32(sp) - c0052f4c: ec4e sd s3,24(sp) + c0053112: 7139 addi sp,sp,-64 + c0053114: fc06 sd ra,56(sp) + c0053116: f822 sd s0,48(sp) + c0053118: f426 sd s1,40(sp) + c005311a: f04a sd s2,32(sp) + c005311c: ec4e sd s3,24(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:62 uintptr_t blockstart; uintptr_t blockend; @@ -230294,31 +230492,31 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, /* Make sure that we were passed valid parameters */ DEBUGASSERT(heap && mem); - c0052f4e: c111 beqz a0,c0052f52 + c005311e: c111 beqz a0,c0053122 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:62 (discriminator 2) - c0052f50: e991 bnez a1,c0052f64 + c0053120: e991 bnez a1,c0053134 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:62 (discriminator 3) - c0052f52: 4601 li a2,0 - c0052f54: 03e00593 li a1,62 + c0053122: 4601 li a2,0 + c0053124: 03e00593 li a1,62 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:67 (discriminator 3) #if CONFIG_MM_REGIONS > 1 DEBUGASSERT(size >= MIN_EXTEND && region >= 0 && region < heap->mm_nregions); #else DEBUGASSERT(size >= MIN_EXTEND && region == 0); - c0052f58: 00020517 auipc a0,0x20 - c0052f5c: 9e850513 addi a0,a0,-1560 # c0072940 - c0052f60: 2b9000ef jal ra,c0053a18 <__assert> + c0053128: 00020517 auipc a0,0x20 + c005312c: a7850513 addi a0,a0,-1416 # c0072ba0 + c0053130: 2b9000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:67 (discriminator 4) - c0052f64: 47fd li a5,31 - c0052f66: 84b2 mv s1,a2 - c0052f68: 00c7f363 bgeu a5,a2,c0052f6e + c0053134: 47fd li a5,31 + c0053136: 84b2 mv s1,a2 + c0053138: 00c7f363 bgeu a5,a2,c005313e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:67 (discriminator 2) - c0052f6c: c689 beqz a3,c0052f76 + c005313c: c689 beqz a3,c0053146 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:67 (discriminator 3) - c0052f6e: 4601 li a2,0 - c0052f70: 04300593 li a1,67 - c0052f74: b7d5 j c0052f58 + c005313e: 4601 li a2,0 + c0053140: 04300593 li a1,67 + c0053144: b7d5 j c0053128 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:75 (discriminator 4) /* Make sure that the memory region are properly aligned */ @@ -230326,38 +230524,38 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, blockend = blockstart + size; DEBUGASSERT(MM_ALIGN_UP(blockstart) == blockstart); - c0052f76: 00f58993 addi s3,a1,15 # 100f <__clzdi2-0xbfffeff1> - c0052f7a: ff09f993 andi s3,s3,-16 + c0053146: 00f58993 addi s3,a1,15 # 100f <__clzdi2-0xbfffeff1> + c005314a: ff09f993 andi s3,s3,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:73 (discriminator 4) blockend = blockstart + size; - c0052f7e: 00b607b3 add a5,a2,a1 + c005314e: 00b607b3 add a5,a2,a1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:75 (discriminator 4) DEBUGASSERT(MM_ALIGN_UP(blockstart) == blockstart); - c0052f82: 00b98663 beq s3,a1,c0052f8e + c0053152: 00b98663 beq s3,a1,c005315e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:75 (discriminator 1) - c0052f86: 4601 li a2,0 - c0052f88: 04b00593 li a1,75 - c0052f8c: b7f1 j c0052f58 + c0053156: 4601 li a2,0 + c0053158: 04b00593 li a1,75 + c005315c: b7f1 j c0053128 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:76 (discriminator 2) DEBUGASSERT(MM_ALIGN_DOWN(blockend) == blockend); - c0052f8e: ff07f913 andi s2,a5,-16 - c0052f92: 00f90663 beq s2,a5,c0052f9e + c005315e: ff07f913 andi s2,a5,-16 + c0053162: 00f90663 beq s2,a5,c005316e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:76 (discriminator 1) - c0052f96: 4601 li a2,0 - c0052f98: 04c00593 li a1,76 - c0052f9c: bf75 j c0052f58 - c0052f9e: 842a mv s0,a0 + c0053166: 4601 li a2,0 + c0053168: 04c00593 li a1,76 + c005316c: bf75 j c0053128 + c005316e: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:80 (discriminator 2) /* Take the memory manager mutex */ DEBUGVERIFY(mm_lock(heap)); - c0052fa0: 786000ef jal ra,c0053726 - c0052fa4: 00055663 bgez a0,c0052fb0 + c0053170: 786000ef jal ra,c00538f6 + c0053174: 00055663 bgez a0,c0053180 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:80 (discriminator 1) - c0052fa8: 4601 li a2,0 - c0052faa: 05000593 li a1,80 - c0052fae: b76d j c0052f58 + c0053178: 4601 li a2,0 + c005317a: 05000593 li a1,80 + c005317e: b76d j c0053128 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:86 (discriminator 2) /* Get the terminal node in the old heap. The block to extend must @@ -230365,15 +230563,15 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, */ oldnode = heap->mm_heapend[region]; - c0052fb0: 6038 ld a4,64(s0) + c0053180: 6038 ld a4,64(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:87 (discriminator 2) DEBUGASSERT((uintptr_t)oldnode + MM_SIZEOF_ALLOCNODE == blockstart); - c0052fb2: 01070593 addi a1,a4,16 - c0052fb6: 01358663 beq a1,s3,c0052fc2 + c0053182: 01070593 addi a1,a4,16 + c0053186: 01358663 beq a1,s3,c0053192 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:87 (discriminator 1) - c0052fba: 4601 li a2,0 - c0052fbc: 05700593 li a1,87 - c0052fc0: bf61 j c0052f58 + c005318a: 4601 li a2,0 + c005318c: 05700593 li a1,87 + c0053190: bf61 j c0053128 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:95 (discriminator 2) * This is the old size (MM_SIZEOF_ALLOCNODE) plus the size of * the block (size) minus the size of the new terminal node @@ -230381,32 +230579,32 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, */ oldnode->size = size | (oldnode->size & MM_MASK_BIT); - c0052fc2: 671c ld a5,8(a4) - c0052fc4: 8b8d andi a5,a5,3 - c0052fc6: 8fc5 or a5,a5,s1 - c0052fc8: e71c sd a5,8(a4) + c0053192: 671c ld a5,8(a4) + c0053194: 8b8d andi a5,a5,3 + c0053196: 8fc5 or a5,a5,s1 + c0053198: e71c sd a5,8(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:99 (discriminator 2) /* The old node should already be marked as allocated */ DEBUGASSERT(MM_NODE_IS_ALLOC(oldnode)); - c0052fca: 8b85 andi a5,a5,1 - c0052fcc: e789 bnez a5,c0052fd6 + c005319a: 8b85 andi a5,a5,1 + c005319c: e789 bnez a5,c00531a6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:99 (discriminator 1) - c0052fce: 4601 li a2,0 - c0052fd0: 06300593 li a1,99 - c0052fd4: b751 j c0052f58 + c005319e: 4601 li a2,0 + c00531a0: 06300593 li a1,99 + c00531a4: b751 j c0053128 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:104 (discriminator 2) /* Get and initialize the new terminal node in the heap */ newnode = (FAR struct mm_allocnode_s *) (blockend - MM_SIZEOF_ALLOCNODE); - c0052fd6: 1941 addi s2,s2,-16 + c00531a6: 1941 addi s2,s2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:105 (discriminator 2) newnode->size = MM_SIZEOF_ALLOCNODE | MM_ALLOC_BIT; - c0052fd8: 47c5 li a5,17 - c0052fda: 00f93423 sd a5,8(s2) + c00531a8: 47c5 li a5,17 + c00531aa: 00f93423 sd a5,8(s2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:111 (discriminator 2) heap->mm_heapend[region] = newnode; @@ -230414,21 +230612,21 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, /* Finally, increase the total heap size accordingly */ heap->mm_heapsize += size; - c0052fde: 7010 ld a2,32(s0) + c00531ae: 7010 ld a2,32(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:107 (discriminator 2) heap->mm_heapend[region] = newnode; - c0052fe0: 05243023 sd s2,64(s0) + c00531b0: 05243023 sd s2,64(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:112 (discriminator 2) mm_unlock(heap); - c0052fe4: 8522 mv a0,s0 + c00531b4: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:111 (discriminator 2) heap->mm_heapsize += size; - c0052fe6: 94b2 add s1,s1,a2 - c0052fe8: f004 sd s1,32(s0) - c0052fea: e42e sd a1,8(sp) + c00531b6: 94b2 add s1,s1,a2 + c00531b8: f004 sd s1,32(s0) + c00531ba: e42e sd a1,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:112 (discriminator 2) mm_unlock(heap); - c0052fec: 75e000ef jal ra,c005374a + c00531bc: 75e000ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:118 (discriminator 2) /* Finally "free" the new block of memory where the old terminal node was @@ -230436,25 +230634,25 @@ void mm_extend(FAR struct mm_heap_s *heap, FAR void *mem, size_t size, */ mm_free(heap, mem); - c0052ff0: 8522 mv a0,s0 + c00531c0: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:119 (discriminator 2) } - c0052ff2: 7442 ld s0,48(sp) + c00531c2: 7442 ld s0,48(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:118 (discriminator 2) mm_free(heap, mem); - c0052ff4: 65a2 ld a1,8(sp) + c00531c4: 65a2 ld a1,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:119 (discriminator 2) } - c0052ff6: 70e2 ld ra,56(sp) - c0052ff8: 74a2 ld s1,40(sp) - c0052ffa: 7902 ld s2,32(sp) - c0052ffc: 69e2 ld s3,24(sp) - c0052ffe: 6121 addi sp,sp,64 + c00531c6: 70e2 ld ra,56(sp) + c00531c8: 74a2 ld s1,40(sp) + c00531ca: 7902 ld s2,32(sp) + c00531cc: 69e2 ld s3,24(sp) + c00531ce: 6121 addi sp,sp,64 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_extend.c:118 (discriminator 2) mm_free(heap, mem); - c0053000: a20d j c0053122 + c00531d0: a20d j c00532f2 -00000000c0053002 : +00000000c00531d2 : mm_delayfree(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:74 * Delay free memory if `delay` is true, otherwise free it immediately. @@ -230463,14 +230661,14 @@ mm_delayfree(): void mm_delayfree(FAR struct mm_heap_s *heap, FAR void *mem, bool delay) { - c0053002: 1101 addi sp,sp,-32 - c0053004: e822 sd s0,16(sp) - c0053006: e426 sd s1,8(sp) - c0053008: e04a sd s2,0(sp) - c005300a: ec06 sd ra,24(sp) - c005300c: 84aa mv s1,a0 - c005300e: 842e mv s0,a1 - c0053010: 8932 mv s2,a2 + c00531d2: 1101 addi sp,sp,-32 + c00531d4: e822 sd s0,16(sp) + c00531d6: e426 sd s1,8(sp) + c00531d8: e04a sd s2,0(sp) + c00531da: ec06 sd ra,24(sp) + c00531dc: 84aa mv s1,a0 + c00531de: 842e mv s0,a1 + c00531e0: 8932 mv s2,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:81 FAR struct mm_freenode_s *prev; FAR struct mm_freenode_s *next; @@ -230478,8 +230676,8 @@ void mm_delayfree(FAR struct mm_heap_s *heap, FAR void *mem, bool delay) size_t prevsize; if (mm_lock(heap) < 0) - c0053012: 714000ef jal ra,c0053726 - c0053016: 10054063 bltz a0,c0053116 + c00531e2: 714000ef jal ra,c00538f6 + c00531e6: 10054063 bltz a0,c00532e6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:98 memset(mem, 0x55, mm_malloc_size(heap, mem)); #endif @@ -230487,7 +230685,7 @@ void mm_delayfree(FAR struct mm_heap_s *heap, FAR void *mem, bool delay) kasan_poison(mem, mm_malloc_size(heap, mem)); if (delay) - c005301a: 00090963 beqz s2,c005302c + c00531ea: 00090963 beqz s2,c00531fc /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:196 /* Add the merged node to the nodelist */ @@ -230495,190 +230693,190 @@ void mm_delayfree(FAR struct mm_heap_s *heap, FAR void *mem, bool delay) mm_addfreechunk(heap, node); mm_unlock(heap); } - c005301e: 6442 ld s0,16(sp) - c0053020: 60e2 ld ra,24(sp) - c0053022: 6902 ld s2,0(sp) + c00531ee: 6442 ld s0,16(sp) + c00531f0: 60e2 ld ra,24(sp) + c00531f2: 6902 ld s2,0(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:195 mm_unlock(heap); - c0053024: 8526 mv a0,s1 + c00531f4: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:196 } - c0053026: 64a2 ld s1,8(sp) - c0053028: 6105 addi sp,sp,32 + c00531f6: 64a2 ld s1,8(sp) + c00531f8: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:195 mm_unlock(heap); - c005302a: a705 j c005374a + c00531fa: a705 j c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:108 nodesize = MM_SIZEOF_NODE(node); - c005302c: ff843783 ld a5,-8(s0) + c00531fc: ff843783 ld a5,-8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:107 node = (FAR struct mm_freenode_s *)((FAR char *)mem - MM_SIZEOF_ALLOCNODE); - c0053030: ff040593 addi a1,s0,-16 + c0053200: ff040593 addi a1,s0,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:112 DEBUGASSERT(MM_NODE_IS_ALLOC(node)); - c0053034: 0017f693 andi a3,a5,1 + c0053204: 0017f693 andi a3,a5,1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:108 nodesize = MM_SIZEOF_NODE(node); - c0053038: ffc7f713 andi a4,a5,-4 + c0053208: ffc7f713 andi a4,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:112 DEBUGASSERT(MM_NODE_IS_ALLOC(node)); - c005303c: ea91 bnez a3,c0053050 - c005303e: 4601 li a2,0 - c0053040: 07000593 li a1,112 + c005320c: ea91 bnez a3,c0053220 + c005320e: 4601 li a2,0 + c0053210: 07000593 li a1,112 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:177 DEBUGASSERT(prev->blink); - c0053044: 00020517 auipc a0,0x20 - c0053048: 91450513 addi a0,a0,-1772 # c0072958 - c005304c: 1cd000ef jal ra,c0053a18 <__assert> + c0053214: 00020517 auipc a0,0x20 + c0053218: 9a450513 addi a0,a0,-1628 # c0072bb8 + c005321c: 1cd000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:114 node->size &= ~MM_ALLOC_BIT; - c0053050: 9bf9 andi a5,a5,-2 - c0053052: fef43c23 sd a5,-8(s0) + c0053220: 9bf9 andi a5,a5,-2 + c0053222: fef43c23 sd a5,-8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:118 heap->mm_curused -= nodesize; - c0053056: 789c ld a5,48(s1) + c0053226: 789c ld a5,48(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:122 next = (FAR struct mm_freenode_s *)((FAR char *)node + nodesize); - c0053058: 00e586b3 add a3,a1,a4 + c0053228: 00e586b3 add a3,a1,a4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:118 heap->mm_curused -= nodesize; - c005305c: 8f99 sub a5,a5,a4 - c005305e: f89c sd a5,48(s1) + c005322c: 8f99 sub a5,a5,a4 + c005322e: f89c sd a5,48(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:123 DEBUGASSERT(MM_PREVNODE_IS_ALLOC(next)); - c0053060: 669c ld a5,8(a3) - c0053062: 0027f613 andi a2,a5,2 - c0053066: c609 beqz a2,c0053070 - c0053068: 4601 li a2,0 - c005306a: 07b00593 li a1,123 - c005306e: bfd9 j c0053044 + c0053230: 669c ld a5,8(a3) + c0053232: 0027f613 andi a2,a5,2 + c0053236: c609 beqz a2,c0053240 + c0053238: 4601 li a2,0 + c005323a: 07b00593 li a1,123 + c005323e: bfd9 j c0053214 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:124 if (MM_NODE_IS_FREE(next)) - c0053070: 0017f613 andi a2,a5,1 - c0053074: e635 bnez a2,c00530e0 + c0053240: 0017f613 andi a2,a5,1 + c0053244: e635 bnez a2,c00532b0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:127 size_t nextsize = MM_SIZEOF_NODE(next); - c0053076: 9bf1 andi a5,a5,-4 + c0053246: 9bf1 andi a5,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:134 andbeyond = (FAR struct mm_allocnode_s *)((FAR char *)next + nextsize); - c0053078: 00f68633 add a2,a3,a5 + c0053248: 00f68633 add a2,a3,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:135 DEBUGASSERT(MM_PREVNODE_IS_FREE(andbeyond) && - c005307c: 6608 ld a0,8(a2) - c005307e: 8909 andi a0,a0,2 - c0053080: c501 beqz a0,c0053088 - c0053082: 6208 ld a0,0(a2) - c0053084: 00a78663 beq a5,a0,c0053090 - c0053088: 4601 li a2,0 - c005308a: 08700593 li a1,135 - c005308e: bf5d j c0053044 + c005324c: 6608 ld a0,8(a2) + c005324e: 8909 andi a0,a0,2 + c0053250: c501 beqz a0,c0053258 + c0053252: 6208 ld a0,0(a2) + c0053254: 00a78663 beq a5,a0,c0053260 + c0053258: 4601 li a2,0 + c005325a: 08700593 li a1,135 + c005325e: bf5d j c0053214 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:142 DEBUGASSERT(next->blink); - c0053090: 0186b803 ld a6,24(a3) - c0053094: 00081663 bnez a6,c00530a0 - c0053098: 4601 li a2,0 - c005309a: 08e00593 li a1,142 - c005309e: b75d j c0053044 + c0053260: 0186b803 ld a6,24(a3) + c0053264: 00081663 bnez a6,c0053270 + c0053268: 4601 li a2,0 + c005326a: 08e00593 li a1,142 + c005326e: b75d j c0053214 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:143 next->blink->flink = next->flink; - c00530a0: 6a88 ld a0,16(a3) - c00530a2: 00a83823 sd a0,16(a6) + c0053270: 6a88 ld a0,16(a3) + c0053272: 00a83823 sd a0,16(a6) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:144 if (next->flink) - c00530a6: c119 beqz a0,c00530ac + c0053276: c119 beqz a0,c005327c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:146 next->flink->blink = next->blink; - c00530a8: 6e94 ld a3,24(a3) - c00530aa: ed14 sd a3,24(a0) + c0053278: 6e94 ld a3,24(a3) + c005327a: ed14 sd a3,24(a0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:151 nodesize += nextsize; - c00530ac: 973e add a4,a4,a5 + c005327c: 973e add a4,a4,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:152 node->size = nodesize | (node->size & MM_MASK_BIT); - c00530ae: ff843783 ld a5,-8(s0) - c00530b2: 8b8d andi a5,a5,3 - c00530b4: 8fd9 or a5,a5,a4 - c00530b6: fef43c23 sd a5,-8(s0) + c005327e: ff843783 ld a5,-8(s0) + c0053282: 8b8d andi a5,a5,3 + c0053284: 8fd9 or a5,a5,a4 + c0053286: fef43c23 sd a5,-8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:153 andbeyond->preceding = nodesize; - c00530ba: e218 sd a4,0(a2) + c005328a: e218 sd a4,0(a2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:166 if (MM_PREVNODE_IS_FREE(node)) - c00530bc: ff843783 ld a5,-8(s0) - c00530c0: 8b89 andi a5,a5,2 - c00530c2: c7b1 beqz a5,c005310e + c005328c: ff843783 ld a5,-8(s0) + c0053290: 8b89 andi a5,a5,2 + c0053292: c7b1 beqz a5,c00532de /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:169 ((FAR char *)node - node->preceding); - c00530c4: ff043503 ld a0,-16(s0) + c0053294: ff043503 ld a0,-16(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:168 prev = (FAR struct mm_freenode_s *) - c00530c8: 8d89 sub a1,a1,a0 + c0053298: 8d89 sub a1,a1,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:170 prevsize = MM_SIZEOF_NODE(prev); - c00530ca: 6594 ld a3,8(a1) - c00530cc: ffc6f793 andi a5,a3,-4 + c005329a: 6594 ld a3,8(a1) + c005329c: ffc6f793 andi a5,a3,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:171 DEBUGASSERT(MM_NODE_IS_FREE(prev) && node->preceding == prevsize); - c00530d0: 8a85 andi a3,a3,1 - c00530d2: e299 bnez a3,c00530d8 - c00530d4: 00f50c63 beq a0,a5,c00530ec - c00530d8: 4601 li a2,0 - c00530da: 0ab00593 li a1,171 - c00530de: b79d j c0053044 + c00532a0: 8a85 andi a3,a3,1 + c00532a2: e299 bnez a3,c00532a8 + c00532a4: 00f50c63 beq a0,a5,c00532bc + c00532a8: 4601 li a2,0 + c00532aa: 0ab00593 li a1,171 + c00532ae: b79d j c0053214 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:158 next->size |= MM_PREVFREE_BIT; - c00530e0: 0027e793 ori a5,a5,2 - c00530e4: e69c sd a5,8(a3) + c00532b0: 0027e793 ori a5,a5,2 + c00532b4: e69c sd a5,8(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:159 next->preceding = nodesize; - c00530e6: e298 sd a4,0(a3) - c00530e8: 8636 mv a2,a3 - c00530ea: bfc9 j c00530bc + c00532b6: e298 sd a4,0(a3) + c00532b8: 8636 mv a2,a3 + c00532ba: bfc9 j c005328c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:177 DEBUGASSERT(prev->blink); - c00530ec: 6d88 ld a0,24(a1) - c00530ee: e509 bnez a0,c00530f8 - c00530f0: 4601 li a2,0 - c00530f2: 0b100593 li a1,177 - c00530f6: b7b9 j c0053044 + c00532bc: 6d88 ld a0,24(a1) + c00532be: e509 bnez a0,c00532c8 + c00532c0: 4601 li a2,0 + c00532c2: 0b100593 li a1,177 + c00532c6: b7b9 j c0053214 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:178 prev->blink->flink = prev->flink; - c00530f8: 6994 ld a3,16(a1) - c00530fa: e914 sd a3,16(a0) + c00532c8: 6994 ld a3,16(a1) + c00532ca: e914 sd a3,16(a0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:179 if (prev->flink) - c00530fc: c299 beqz a3,c0053102 + c00532cc: c299 beqz a3,c00532d2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:181 prev->flink->blink = prev->blink; - c00530fe: 6d88 ld a0,24(a1) - c0053100: ee88 sd a0,24(a3) + c00532ce: 6d88 ld a0,24(a1) + c00532d0: ee88 sd a0,24(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:186 prevsize += nodesize; - c0053102: 973e add a4,a4,a5 + c00532d2: 973e add a4,a4,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:187 prev->size = prevsize | (prev->size & MM_MASK_BIT); - c0053104: 659c ld a5,8(a1) - c0053106: 8b8d andi a5,a5,3 - c0053108: 8fd9 or a5,a5,a4 - c005310a: e59c sd a5,8(a1) + c00532d4: 659c ld a5,8(a1) + c00532d6: 8b8d andi a5,a5,3 + c00532d8: 8fd9 or a5,a5,a4 + c00532da: e59c sd a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:188 next->preceding = prevsize; - c005310c: e218 sd a4,0(a2) + c00532dc: e218 sd a4,0(a2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:194 mm_addfreechunk(heap, node); - c005310e: 8526 mv a0,s1 - c0053110: 65e000ef jal ra,c005376e - c0053114: b729 j c005301e + c00532de: 8526 mv a0,s1 + c00532e0: 65e000ef jal ra,c005393e + c00532e4: b729 j c00531ee /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:196 } - c0053116: 60e2 ld ra,24(sp) - c0053118: 6442 ld s0,16(sp) - c005311a: 64a2 ld s1,8(sp) - c005311c: 6902 ld s2,0(sp) - c005311e: 6105 addi sp,sp,32 - c0053120: 8082 ret + c00532e6: 60e2 ld ra,24(sp) + c00532e8: 6442 ld s0,16(sp) + c00532ea: 64a2 ld s1,8(sp) + c00532ec: 6902 ld s2,0(sp) + c00532ee: 6105 addi sp,sp,32 + c00532f0: 8082 ret -00000000c0053122 : +00000000c00532f2 : mm_free(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:208 * adjacent free chunks if possible. @@ -230687,47 +230885,47 @@ mm_free(): void mm_free(FAR struct mm_heap_s *heap, FAR void *mem) { - c0053122: 1101 addi sp,sp,-32 - c0053124: e822 sd s0,16(sp) - c0053126: e426 sd s1,8(sp) - c0053128: 842e mv s0,a1 - c005312a: 84aa mv s1,a0 + c00532f2: 1101 addi sp,sp,-32 + c00532f4: e822 sd s0,16(sp) + c00532f6: e426 sd s1,8(sp) + c00532f8: 842e mv s0,a1 + c00532fa: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:209 minfo("Freeing %p\n", mem); - c005312c: 86ae mv a3,a1 - c005312e: 00022617 auipc a2,0x22 - c0053132: 8aa60613 addi a2,a2,-1878 # c00749d8 <__FUNCTION__.0> - c0053136: 00020597 auipc a1,0x20 - c005313a: 83a58593 addi a1,a1,-1990 # c0072970 - c005313e: 4519 li a0,6 + c00532fc: 86ae mv a3,a1 + c00532fe: 00022617 auipc a2,0x22 + c0053302: 93a60613 addi a2,a2,-1734 # c0074c38 <__FUNCTION__.0> + c0053306: 00020597 auipc a1,0x20 + c005330a: 8ca58593 addi a1,a1,-1846 # c0072bd0 + c005330e: 4519 li a0,6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:208 { - c0053140: ec06 sd ra,24(sp) + c0053310: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:209 minfo("Freeing %p\n", mem); - c0053142: 0d9030ef jal ra,c0056a1a + c0053312: 0d9030ef jal ra,c0056bea /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:213 /* Protect against attempts to free a NULL reference */ if (mem == NULL) - c0053146: c41d beqz s0,c0053174 + c0053316: c41d beqz s0,c0053344 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:218 { return; } DEBUGASSERT(mm_heapmember(heap, mem)); - c0053148: 85a2 mv a1,s0 - c005314a: 8526 mv a0,s1 - c005314c: 434000ef jal ra,c0053580 - c0053150: 4601 li a2,0 - c0053152: e909 bnez a0,c0053164 + c0053318: 85a2 mv a1,s0 + c005331a: 8526 mv a0,s1 + c005331c: 434000ef jal ra,c0053750 + c0053320: 4601 li a2,0 + c0053322: e909 bnez a0,c0053334 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:218 (discriminator 1) - c0053154: 0da00593 li a1,218 - c0053158: 00020517 auipc a0,0x20 - c005315c: 80050513 addi a0,a0,-2048 # c0072958 - c0053160: 0b9000ef jal ra,c0053a18 <__assert> + c0053324: 0da00593 li a1,218 + c0053328: 00020517 auipc a0,0x20 + c005332c: 89050513 addi a0,a0,-1904 # c0072bb8 + c0053330: 0b9000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:227 (discriminator 2) { return; @@ -230735,30 +230933,30 @@ void mm_free(FAR struct mm_heap_s *heap, FAR void *mem) #endif mm_delayfree(heap, mem, CONFIG_MM_FREE_DELAYCOUNT_MAX > 0); - c0053164: 85a2 mv a1,s0 + c0053334: 85a2 mv a1,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:228 (discriminator 2) } - c0053166: 6442 ld s0,16(sp) - c0053168: 60e2 ld ra,24(sp) + c0053336: 6442 ld s0,16(sp) + c0053338: 60e2 ld ra,24(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:227 (discriminator 2) mm_delayfree(heap, mem, CONFIG_MM_FREE_DELAYCOUNT_MAX > 0); - c005316a: 8526 mv a0,s1 + c005333a: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:228 (discriminator 2) } - c005316c: 64a2 ld s1,8(sp) - c005316e: 6105 addi sp,sp,32 + c005333c: 64a2 ld s1,8(sp) + c005333e: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:227 (discriminator 2) mm_delayfree(heap, mem, CONFIG_MM_FREE_DELAYCOUNT_MAX > 0); - c0053170: e93ff06f j c0053002 + c0053340: e93ff06f j c00531d2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_free.c:228 } - c0053174: 60e2 ld ra,24(sp) - c0053176: 6442 ld s0,16(sp) - c0053178: 64a2 ld s1,8(sp) - c005317a: 6105 addi sp,sp,32 - c005317c: 8082 ret + c0053344: 60e2 ld ra,24(sp) + c0053346: 6442 ld s0,16(sp) + c0053348: 64a2 ld s1,8(sp) + c005334a: 6105 addi sp,sp,32 + c005334c: 8082 ret -00000000c005317e : +00000000c005334e : mm_memalign(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:63 size_t allocsize; @@ -230767,13 +230965,13 @@ mm_memalign(): /* Make sure that alignment is less than half max size_t */ if (alignment >= (SIZE_MAX / 2)) - c005317e: 5775 li a4,-3 - c0053180: 8305 srli a4,a4,0x1 - c0053182: 00b77f63 bgeu a4,a1,c00531a0 + c005334e: 5775 li a4,-3 + c0053350: 8305 srli a4,a4,0x1 + c0053352: 00b77f63 bgeu a4,a1,c0053370 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:65 { return NULL; - c0053186: 4501 li a0,0 + c0053356: 4501 li a0,0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:279 kasan_unpoison((FAR void *)alignedchunk, mm_malloc_size(heap, (FAR void *)alignedchunk)); @@ -230781,266 +230979,266 @@ mm_memalign(): DEBUGASSERT(alignedchunk % alignment == 0); return (FAR void *)alignedchunk; } - c0053188: 8082 ret + c0053358: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:65 return NULL; - c005318a: 4501 li a0,0 + c005335a: 4501 li a0,0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:279 } - c005318c: 60a6 ld ra,72(sp) - c005318e: 6406 ld s0,64(sp) - c0053190: 74e2 ld s1,56(sp) - c0053192: 7942 ld s2,48(sp) - c0053194: 79a2 ld s3,40(sp) - c0053196: 7a02 ld s4,32(sp) - c0053198: 6ae2 ld s5,24(sp) - c005319a: 6b42 ld s6,16(sp) - c005319c: 6161 addi sp,sp,80 - c005319e: 8082 ret + c005335c: 60a6 ld ra,72(sp) + c005335e: 6406 ld s0,64(sp) + c0053360: 74e2 ld s1,56(sp) + c0053362: 7942 ld s2,48(sp) + c0053364: 79a2 ld s3,40(sp) + c0053366: 7a02 ld s4,32(sp) + c0053368: 6ae2 ld s5,24(sp) + c005336a: 6b42 ld s6,16(sp) + c005336c: 6161 addi sp,sp,80 + c005336e: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:53 { - c00531a0: 715d addi sp,sp,-80 - c00531a2: f84a sd s2,48(sp) + c0053370: 715d addi sp,sp,-80 + c0053372: f84a sd s2,48(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:70 if ((alignment & -alignment) != alignment) - c00531a4: 40b00933 neg s2,a1 + c0053374: 40b00933 neg s2,a1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:53 { - c00531a8: e486 sd ra,72(sp) - c00531aa: e0a2 sd s0,64(sp) - c00531ac: fc26 sd s1,56(sp) - c00531ae: f44e sd s3,40(sp) - c00531b0: f052 sd s4,32(sp) - c00531b2: ec56 sd s5,24(sp) - c00531b4: e85a sd s6,16(sp) + c0053378: e486 sd ra,72(sp) + c005337a: e0a2 sd s0,64(sp) + c005337c: fc26 sd s1,56(sp) + c005337e: f44e sd s3,40(sp) + c0053380: f052 sd s4,32(sp) + c0053382: ec56 sd s5,24(sp) + c0053384: e85a sd s6,16(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:70 if ((alignment & -alignment) != alignment) - c00531b6: 00b97933 and s2,s2,a1 - c00531ba: fcb918e3 bne s2,a1,c005318a + c0053386: 00b97933 and s2,s2,a1 + c005338a: fcb918e3 bne s2,a1,c005335a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:87 if (alignment <= MM_ALIGN) - c00531be: 47c1 li a5,16 - c00531c0: 85b2 mv a1,a2 - c00531c2: 0327e163 bltu a5,s2,c00531e4 + c005338e: 47c1 li a5,16 + c0053390: 85b2 mv a1,a2 + c0053392: 0327e163 bltu a5,s2,c00533b4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:89 FAR void *ptr = mm_malloc(heap, size); - c00531c6: 706000ef jal ra,c00538cc + c0053396: 706000ef jal ra,c0053a9c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:90 DEBUGASSERT(ptr == NULL || ((uintptr_t)ptr) % alignment == 0); - c00531ca: d161 beqz a0,c005318a + c005339a: d161 beqz a0,c005335a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:90 (discriminator 1) - c00531cc: 032577b3 remu a5,a0,s2 - c00531d0: dfd5 beqz a5,c005318c + c005339c: 032577b3 remu a5,a0,s2 + c00533a0: dfd5 beqz a5,c005335c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:90 (discriminator 3) - c00531d2: 4601 li a2,0 - c00531d4: 05a00593 li a1,90 - c00531d8: 0001f517 auipc a0,0x1f - c00531dc: 7a850513 addi a0,a0,1960 # c0072980 - c00531e0: 039000ef jal ra,c0053a18 <__assert> - c00531e4: 02000793 li a5,32 - c00531e8: 89aa mv s3,a0 + c00533a2: 4601 li a2,0 + c00533a4: 05a00593 li a1,90 + c00533a8: 00020517 auipc a0,0x20 + c00533ac: 83850513 addi a0,a0,-1992 # c0072be0 + c00533b0: 039000ef jal ra,c0053be8 <__assert> + c00533b4: 02000793 li a5,32 + c00533b8: 89aa mv s3,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:93 else if (alignment < MM_MIN_CHUNK) - c00531ea: 00f97463 bgeu s2,a5,c00531f2 - c00531ee: 02000913 li s2,32 + c00533ba: 00f97463 bgeu s2,a5,c00533c2 + c00533be: 02000913 li s2,32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:112 if (size < MM_MIN_CHUNK - MM_ALLOCNODE_OVERHEAD) - c00531f2: 47e1 li a5,24 - c00531f4: 84ae mv s1,a1 - c00531f6: 00f5f363 bgeu a1,a5,c00531fc - c00531fa: 44e1 li s1,24 + c00533c2: 47e1 li a5,24 + c00533c4: 84ae mv s1,a1 + c00533c6: 00f5f363 bgeu a1,a5,c00533cc + c00533ca: 44e1 li s1,24 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:117 newsize = MM_ALIGN_UP(size); /* Make multiples of our granule size */ - c00531fc: 00f48793 addi a5,s1,15 - c0053200: 9bc1 andi a5,a5,-16 + c00533cc: 00f48793 addi a5,s1,15 + c00533d0: 9bc1 andi a5,a5,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:118 allocsize = newsize + 2 * alignment; /* Add double full alignment size */ - c0053202: 00191b13 slli s6,s2,0x1 - c0053206: 9b3e add s6,s6,a5 + c00533d2: 00191b13 slli s6,s2,0x1 + c00533d6: 9b3e add s6,s6,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:120 if (newsize < size || allocsize < newsize) - c0053208: f897e1e3 bltu a5,s1,c005318a + c00533d8: f897e1e3 bltu a5,s1,c005335a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:120 (discriminator 1) - c005320c: f6fb6fe3 bltu s6,a5,c005318a + c00533dc: f6fb6fe3 bltu s6,a5,c005335a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:129 rawchunk = (uintptr_t)mm_malloc(heap, allocsize); - c0053210: 85da mv a1,s6 - c0053212: 854e mv a0,s3 - c0053214: 6b8000ef jal ra,c00538cc - c0053218: 8a2a mv s4,a0 + c00533e0: 85da mv a1,s6 + c00533e2: 854e mv a0,s3 + c00533e4: 6b8000ef jal ra,c0053a9c + c00533e8: 8a2a mv s4,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:130 if (rawchunk == 0) - c005321a: d925 beqz a0,c005318a + c00533ea: d925 beqz a0,c005335a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:142 DEBUGVERIFY(mm_lock(heap)); - c005321c: 854e mv a0,s3 - c005321e: 508000ef jal ra,c0053726 - c0053222: 00055b63 bgez a0,c0053238 + c00533ec: 854e mv a0,s3 + c00533ee: 508000ef jal ra,c00538f6 + c00533f2: 00055b63 bgez a0,c0053408 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:142 (discriminator 1) - c0053226: 4601 li a2,0 - c0053228: 08e00593 li a1,142 - c005322c: 0001f517 auipc a0,0x1f - c0053230: 75450513 addi a0,a0,1876 # c0072980 - c0053234: 7e4000ef jal ra,c0053a18 <__assert> + c00533f6: 4601 li a2,0 + c00533f8: 08e00593 li a1,142 + c00533fc: 0001f517 auipc a0,0x1f + c0053400: 7e450513 addi a0,a0,2020 # c0072be0 + c0053404: 7e4000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:98 (discriminator 2) mask = alignment - 1; - c0053238: fff90413 addi s0,s2,-1 + c0053408: fff90413 addi s0,s2,-1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:152 (discriminator 2) alignedchunk = (rawchunk + mask) & ~mask; - c005323c: 9452 add s0,s0,s4 - c005323e: 41200533 neg a0,s2 - c0053242: 8c69 and s0,s0,a0 + c005340c: 9452 add s0,s0,s4 + c005340e: 41200533 neg a0,s2 + c0053412: 8c69 and s0,s0,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:148 (discriminator 2) node = (FAR struct mm_allocnode_s *)(rawchunk - MM_SIZEOF_ALLOCNODE); - c0053244: ff0a0593 addi a1,s4,-16 + c0053414: ff0a0593 addi a1,s4,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:156 (discriminator 2) if (alignedchunk != rawchunk) - c0053248: 068a0a63 beq s4,s0,c00532bc + c0053418: 068a0a63 beq s4,s0,c005348c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:166 ((FAR char *)node + MM_SIZEOF_NODE(node)); - c005324c: 6594 ld a3,8(a1) + c005341c: 6594 ld a3,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:175 precedingsize = (uintptr_t)newnode - (uintptr_t)node; - c005324e: 414407b3 sub a5,s0,s4 + c005341e: 414407b3 sub a5,s0,s4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:185 if (precedingsize < MM_MIN_CHUNK) - c0053252: 467d li a2,31 + c0053422: 467d li a2,31 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:166 ((FAR char *)node + MM_SIZEOF_NODE(node)); - c0053254: ffc6f713 andi a4,a3,-4 + c0053424: ffc6f713 andi a4,a3,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:165 next = (FAR struct mm_allocnode_s *) - c0053258: 972e add a4,a4,a1 + c0053428: 972e add a4,a4,a1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:169 (alignedchunk - MM_SIZEOF_ALLOCNODE); - c005325a: ff040a93 addi s5,s0,-16 + c005342a: ff040a93 addi s5,s0,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:185 if (precedingsize < MM_MIN_CHUNK) - c005325e: 00f66763 bltu a2,a5,c005326c + c005342e: 00f66763 bltu a2,a5,c005343c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:187 alignedchunk += alignment; - c0053262: 944a add s0,s0,s2 + c0053432: 944a add s0,s0,s2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:189 (alignedchunk - MM_SIZEOF_ALLOCNODE); - c0053264: ff040a93 addi s5,s0,-16 + c0053434: ff040a93 addi s5,s0,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:190 precedingsize = (uintptr_t)newnode - (uintptr_t)node; - c0053268: 414407b3 sub a5,s0,s4 + c0053438: 414407b3 sub a5,s0,s4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:197 if (MM_PREVNODE_IS_FREE(node)) - c005326c: 8a89 andi a3,a3,2 - c005326e: c695 beqz a3,c005329a + c005343c: 8a89 andi a3,a3,2 + c005343e: c695 beqz a3,c005346a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:199 FAR struct mm_freenode_s *prev = - c0053270: ff0a3683 ld a3,-16(s4) - c0053274: 8d95 sub a1,a1,a3 + c0053440: ff0a3683 ld a3,-16(s4) + c0053444: 8d95 sub a1,a1,a3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:206 DEBUGASSERT(prev->blink); - c0053276: 6d90 ld a2,24(a1) - c0053278: ea09 bnez a2,c005328a + c0053446: 6d90 ld a2,24(a1) + c0053448: ea09 bnez a2,c005345a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:206 (discriminator 1) - c005327a: 0ce00593 li a1,206 - c005327e: 0001f517 auipc a0,0x1f - c0053282: 70250513 addi a0,a0,1794 # c0072980 - c0053286: 792000ef jal ra,c0053a18 <__assert> + c005344a: 0ce00593 li a1,206 + c005344e: 0001f517 auipc a0,0x1f + c0053452: 79250513 addi a0,a0,1938 # c0072be0 + c0053456: 792000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:207 (discriminator 2) prev->blink->flink = prev->flink; - c005328a: 6994 ld a3,16(a1) - c005328c: ea14 sd a3,16(a2) + c005345a: 6994 ld a3,16(a1) + c005345c: ea14 sd a3,16(a2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:208 (discriminator 2) if (prev->flink) - c005328e: c299 beqz a3,c0053294 + c005345e: c299 beqz a3,c0053464 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:210 prev->flink->blink = prev->blink; - c0053290: 6d90 ld a2,24(a1) - c0053292: ee90 sd a2,24(a3) + c0053460: 6d90 ld a2,24(a1) + c0053462: ee90 sd a2,24(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:213 precedingsize += MM_SIZEOF_NODE(prev); - c0053294: 6594 ld a3,8(a1) - c0053296: 9af1 andi a3,a3,-4 - c0053298: 97b6 add a5,a5,a3 + c0053464: 6594 ld a3,8(a1) + c0053466: 9af1 andi a3,a3,-4 + c0053468: 97b6 add a5,a5,a3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:221 newnodesize = (uintptr_t)next - (uintptr_t)newnode; - c005329a: 41570b33 sub s6,a4,s5 + c005346a: 41570b33 sub s6,a4,s5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:217 node->size = precedingsize; - c005329e: e59c sd a5,8(a1) + c005346e: e59c sd a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:222 newnode->size = newnodesize | MM_ALLOC_BIT | MM_PREVFREE_BIT; - c00532a0: 003b6693 ori a3,s6,3 - c00532a4: 00dab423 sd a3,8(s5) + c0053470: 003b6693 ori a3,s6,3 + c0053474: 00dab423 sd a3,8(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:223 newnode->preceding = precedingsize; - c00532a8: 00fab023 sd a5,0(s5) + c0053478: 00fab023 sd a5,0(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:227 next->size &= ~MM_PREVFREE_BIT; - c00532ac: 671c ld a5,8(a4) + c005347c: 671c ld a5,8(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:237 mm_addfreechunk(heap, (FAR struct mm_freenode_s *)node); - c00532ae: 854e mv a0,s3 + c005347e: 854e mv a0,s3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:233 allocsize = newnodesize - MM_ALLOCNODE_OVERHEAD; - c00532b0: 1b61 addi s6,s6,-8 + c0053480: 1b61 addi s6,s6,-8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:227 next->size &= ~MM_PREVFREE_BIT; - c00532b2: 9bf5 andi a5,a5,-3 - c00532b4: e71c sd a5,8(a4) + c0053482: 9bf5 andi a5,a5,-3 + c0053484: e71c sd a5,8(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:237 mm_addfreechunk(heap, (FAR struct mm_freenode_s *)node); - c00532b6: 4b8000ef jal ra,c005376e - c00532ba: 85d6 mv a1,s5 + c0053486: 4b8000ef jal ra,c005393e + c005348a: 85d6 mv a1,s5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:251 size = MM_ALIGN_UP(size + MM_ALLOCNODE_OVERHEAD); - c00532bc: 01748613 addi a2,s1,23 - c00532c0: 9a41 andi a2,a2,-16 + c005348c: 01748613 addi a2,s1,23 + c0053490: 9a41 andi a2,a2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:253 if (allocsize > size) - c00532c2: 01667763 bgeu a2,s6,c00532d0 + c0053492: 01667763 bgeu a2,s6,c00534a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:259 mm_shrinkchunk(heap, node, size); - c00532c6: 854e mv a0,s3 - c00532c8: e42e sd a1,8(sp) - c00532ca: 552000ef jal ra,c005381c - c00532ce: 65a2 ld a1,8(sp) + c0053496: 854e mv a0,s3 + c0053498: e42e sd a1,8(sp) + c005349a: 552000ef jal ra,c00539ec + c005349e: 65a2 ld a1,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:264 heap->mm_curused += MM_SIZEOF_NODE(node); - c00532d0: 659c ld a5,8(a1) - c00532d2: 0309b703 ld a4,48(s3) - c00532d6: 9bf1 andi a5,a5,-4 - c00532d8: 97ba add a5,a5,a4 + c00534a0: 659c ld a5,8(a1) + c00534a2: 0309b703 ld a4,48(s3) + c00534a6: 9bf1 andi a5,a5,-4 + c00534a8: 97ba add a5,a5,a4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:265 if (heap->mm_curused > heap->mm_maxused) - c00532da: 0289b703 ld a4,40(s3) + c00534aa: 0289b703 ld a4,40(s3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:264 heap->mm_curused += MM_SIZEOF_NODE(node); - c00532de: 02f9b823 sd a5,48(s3) + c00534ae: 02f9b823 sd a5,48(s3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:265 if (heap->mm_curused > heap->mm_maxused) - c00532e2: 00f77463 bgeu a4,a5,c00532ea + c00534b2: 00f77463 bgeu a4,a5,c00534ba /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:267 heap->mm_maxused = heap->mm_curused; - c00532e6: 02f9b423 sd a5,40(s3) + c00534b6: 02f9b423 sd a5,40(s3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:270 mm_unlock(heap); - c00532ea: 854e mv a0,s3 - c00532ec: 45e000ef jal ra,c005374a + c00534ba: 854e mv a0,s3 + c00534bc: 45e000ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:277 DEBUGASSERT(alignedchunk % alignment == 0); - c00532f0: 03247933 remu s2,s0,s2 + c00534c0: 03247933 remu s2,s0,s2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:278 return (FAR void *)alignedchunk; - c00532f4: 8522 mv a0,s0 + c00534c4: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:277 DEBUGASSERT(alignedchunk % alignment == 0); - c00532f6: e8090be3 beqz s2,c005318c + c00534c6: e8090be3 beqz s2,c005335c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_memalign.c:277 (discriminator 1) - c00532fa: 4601 li a2,0 - c00532fc: 11500593 li a1,277 - c0053300: 0001f517 auipc a0,0x1f - c0053304: 68050513 addi a0,a0,1664 # c0072980 - c0053308: 710000ef jal ra,c0053a18 <__assert> + c00534ca: 4601 li a2,0 + c00534cc: 11500593 li a1,277 + c00534d0: 0001f517 auipc a0,0x1f + c00534d4: 71050513 addi a0,a0,1808 # c0072be0 + c00534d8: 710000ef jal ra,c0053be8 <__assert> -00000000c005330c : +00000000c00534dc : mm_realloc(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:67 * @@ -231049,19 +231247,19 @@ mm_realloc(): FAR void *mm_realloc(FAR struct mm_heap_s *heap, FAR void *oldmem, size_t size) { - c005330c: 711d addi sp,sp,-96 - c005330e: f852 sd s4,48(sp) - c0053310: ec86 sd ra,88(sp) - c0053312: e8a2 sd s0,80(sp) - c0053314: e4a6 sd s1,72(sp) - c0053316: e0ca sd s2,64(sp) - c0053318: fc4e sd s3,56(sp) - c005331a: f456 sd s5,40(sp) - c005331c: f05a sd s6,32(sp) - c005331e: ec5e sd s7,24(sp) - c0053320: e862 sd s8,16(sp) - c0053322: e466 sd s9,8(sp) - c0053324: 8a32 mv s4,a2 + c00534dc: 711d addi sp,sp,-96 + c00534de: f852 sd s4,48(sp) + c00534e0: ec86 sd ra,88(sp) + c00534e2: e8a2 sd s0,80(sp) + c00534e4: e4a6 sd s1,72(sp) + c00534e6: e0ca sd s2,64(sp) + c00534e8: fc4e sd s3,56(sp) + c00534ea: f456 sd s5,40(sp) + c00534ec: f05a sd s6,32(sp) + c00534ee: ec5e sd s7,24(sp) + c00534f0: e862 sd s8,16(sp) + c00534f2: e466 sd s9,8(sp) + c00534f4: 8a32 mv s4,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:79 size_t nextsize = 0; FAR void *newmem; @@ -231069,7 +231267,7 @@ FAR void *mm_realloc(FAR struct mm_heap_s *heap, FAR void *oldmem, /* If oldmem is NULL, then realloc is equivalent to malloc */ if (oldmem == NULL) - c0053326: ed99 bnez a1,c0053344 + c00534f6: ed99 bnez a1,c0053514 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:412 mm_free(heap, oldmem); } @@ -231077,410 +231275,410 @@ FAR void *mm_realloc(FAR struct mm_heap_s *heap, FAR void *oldmem, return newmem; } } - c0053328: 6446 ld s0,80(sp) - c005332a: 60e6 ld ra,88(sp) - c005332c: 64a6 ld s1,72(sp) - c005332e: 6906 ld s2,64(sp) - c0053330: 79e2 ld s3,56(sp) - c0053332: 7a42 ld s4,48(sp) - c0053334: 7aa2 ld s5,40(sp) - c0053336: 7b02 ld s6,32(sp) - c0053338: 6be2 ld s7,24(sp) - c005333a: 6c42 ld s8,16(sp) - c005333c: 6ca2 ld s9,8(sp) + c00534f8: 6446 ld s0,80(sp) + c00534fa: 60e6 ld ra,88(sp) + c00534fc: 64a6 ld s1,72(sp) + c00534fe: 6906 ld s2,64(sp) + c0053500: 79e2 ld s3,56(sp) + c0053502: 7a42 ld s4,48(sp) + c0053504: 7aa2 ld s5,40(sp) + c0053506: 7b02 ld s6,32(sp) + c0053508: 6be2 ld s7,24(sp) + c005350a: 6c42 ld s8,16(sp) + c005350c: 6ca2 ld s9,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:81 return mm_malloc(heap, size); - c005333e: 85b2 mv a1,a2 + c005350e: 85b2 mv a1,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:412 } - c0053340: 6125 addi sp,sp,96 + c0053510: 6125 addi sp,sp,96 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:81 return mm_malloc(heap, size); - c0053342: a369 j c00538cc - c0053344: 8aaa mv s5,a0 - c0053346: 89ae mv s3,a1 + c0053512: a369 j c0053a9c + c0053514: 8aaa mv s5,a0 + c0053516: 89ae mv s3,a1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:84 DEBUGASSERT(mm_heapmember(heap, oldmem)); - c0053348: 238000ef jal ra,c0053580 - c005334c: e911 bnez a0,c0053360 + c0053518: 238000ef jal ra,c0053750 + c005351c: e911 bnez a0,c0053530 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:84 (discriminator 1) - c005334e: 4601 li a2,0 - c0053350: 05400593 li a1,84 + c005351e: 4601 li a2,0 + c0053520: 05400593 li a1,84 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:121 DEBUGPANIC(); - c0053354: 0001f517 auipc a0,0x1f - c0053358: 64450513 addi a0,a0,1604 # c0072998 - c005335c: 6bc000ef jal ra,c0053a18 <__assert> + c0053524: 0001f517 auipc a0,0x1f + c0053528: 6d450513 addi a0,a0,1748 # c0072bf8 + c005352c: 6bc000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:111 (discriminator 2) if (size < MM_MIN_CHUNK - MM_ALLOCNODE_OVERHEAD) - c0053360: 47e1 li a5,24 - c0053362: 00fa7363 bgeu s4,a5,c0053368 - c0053366: 4a61 li s4,24 + c0053530: 47e1 li a5,24 + c0053532: 00fa7363 bgeu s4,a5,c0053538 + c0053536: 4a61 li s4,24 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:116 (discriminator 2) newsize = MM_ALIGN_UP(size + MM_ALLOCNODE_OVERHEAD); - c0053368: 017a0913 addi s2,s4,23 - c005336c: ff097913 andi s2,s2,-16 + c0053538: 017a0913 addi s2,s4,23 + c005353c: ff097913 andi s2,s2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:117 (discriminator 2) if (newsize < size) - c0053370: 01497963 bgeu s2,s4,c0053382 + c0053540: 01497963 bgeu s2,s4,c0053552 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:121 DEBUGPANIC(); - c0053374: 0001f617 auipc a2,0x1f - c0053378: 63c60613 addi a2,a2,1596 # c00729b0 - c005337c: 07900593 li a1,121 - c0053380: bfd1 j c0053354 + c0053544: 0001f617 auipc a2,0x1f + c0053548: 6cc60613 addi a2,a2,1740 # c0072c10 + c005354c: 07900593 li a1,121 + c0053550: bfd1 j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:132 DEBUGVERIFY(mm_lock(heap)); - c0053382: 8556 mv a0,s5 + c0053552: 8556 mv a0,s5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:127 oldnode = (FAR struct mm_allocnode_s *) - c0053384: ff098b13 addi s6,s3,-16 + c0053554: ff098b13 addi s6,s3,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:132 DEBUGVERIFY(mm_lock(heap)); - c0053388: 39e000ef jal ra,c0053726 - c005338c: 00055663 bgez a0,c0053398 + c0053558: 39e000ef jal ra,c00538f6 + c005355c: 00055663 bgez a0,c0053568 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:132 (discriminator 1) - c0053390: 4601 li a2,0 - c0053392: 08400593 li a1,132 - c0053396: bf7d j c0053354 + c0053560: 4601 li a2,0 + c0053562: 08400593 li a1,132 + c0053566: bf7d j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:133 (discriminator 2) DEBUGASSERT(MM_NODE_IS_ALLOC(oldnode)); - c0053398: ff89b783 ld a5,-8(s3) - c005339c: fff7cb93 not s7,a5 - c00533a0: 001bfb93 andi s7,s7,1 - c00533a4: 000b8663 beqz s7,c00533b0 + c0053568: ff89b783 ld a5,-8(s3) + c005356c: fff7cb93 not s7,a5 + c0053570: 001bfb93 andi s7,s7,1 + c0053574: 000b8663 beqz s7,c0053580 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:133 (discriminator 1) - c00533a8: 4601 li a2,0 - c00533aa: 08500593 li a1,133 - c00533ae: b75d j c0053354 + c0053578: 4601 li a2,0 + c005357a: 08500593 li a1,133 + c005357e: b75d j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:137 (discriminator 2) oldsize = MM_SIZEOF_NODE(oldnode); - c00533b0: ffc7fc13 andi s8,a5,-4 + c0053580: ffc7fc13 andi s8,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:138 (discriminator 2) if (newsize <= oldsize) - c00533b4: 032c6b63 bltu s8,s2,c00533ea + c0053584: 032c6b63 bltu s8,s2,c00535ba /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:144 if (newsize < oldsize) - c00533b8: 01897763 bgeu s2,s8,c00533c6 + c0053588: 01897763 bgeu s2,s8,c0053596 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:146 mm_shrinkchunk(heap, oldnode, newsize); - c00533bc: 864a mv a2,s2 - c00533be: 85da mv a1,s6 - c00533c0: 8556 mv a0,s5 - c00533c2: 45a000ef jal ra,c005381c + c005358c: 864a mv a2,s2 + c005358e: 85da mv a1,s6 + c0053590: 8556 mv a0,s5 + c0053592: 45a000ef jal ra,c00539ec /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:153 mm_unlock(heap); - c00533c6: 8556 mv a0,s5 - c00533c8: 382000ef jal ra,c005374a + c0053596: 8556 mv a0,s5 + c0053598: 382000ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:156 return oldmem; - c00533cc: 8a4e mv s4,s3 + c005359c: 8a4e mv s4,s3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:412 } - c00533ce: 60e6 ld ra,88(sp) - c00533d0: 6446 ld s0,80(sp) - c00533d2: 64a6 ld s1,72(sp) - c00533d4: 6906 ld s2,64(sp) - c00533d6: 79e2 ld s3,56(sp) - c00533d8: 7aa2 ld s5,40(sp) - c00533da: 7b02 ld s6,32(sp) - c00533dc: 6be2 ld s7,24(sp) - c00533de: 6c42 ld s8,16(sp) - c00533e0: 6ca2 ld s9,8(sp) - c00533e2: 8552 mv a0,s4 - c00533e4: 7a42 ld s4,48(sp) - c00533e6: 6125 addi sp,sp,96 - c00533e8: 8082 ret + c005359e: 60e6 ld ra,88(sp) + c00535a0: 6446 ld s0,80(sp) + c00535a2: 64a6 ld s1,72(sp) + c00535a4: 6906 ld s2,64(sp) + c00535a6: 79e2 ld s3,56(sp) + c00535a8: 7aa2 ld s5,40(sp) + c00535aa: 7b02 ld s6,32(sp) + c00535ac: 6be2 ld s7,24(sp) + c00535ae: 6c42 ld s8,16(sp) + c00535b0: 6ca2 ld s9,8(sp) + c00535b2: 8552 mv a0,s4 + c00535b4: 7a42 ld s4,48(sp) + c00535b6: 6125 addi sp,sp,96 + c00535b8: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:164 next = (FAR struct mm_freenode_s *)((FAR char *)oldnode + oldsize); - c00533ea: 018b0cb3 add s9,s6,s8 + c00535ba: 018b0cb3 add s9,s6,s8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:165 if (MM_NODE_IS_FREE(next)) - c00533ee: 008cb483 ld s1,8(s9) - c00533f2: 0014f713 andi a4,s1,1 - c00533f6: eb09 bnez a4,c0053408 + c00535be: 008cb483 ld s1,8(s9) + c00535c2: 0014f713 andi a4,s1,1 + c00535c6: eb09 bnez a4,c00535d8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:167 DEBUGASSERT(MM_PREVNODE_IS_ALLOC(next)); - c00533f8: 0024f713 andi a4,s1,2 + c00535c8: 0024f713 andi a4,s1,2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:168 nextsize = MM_SIZEOF_NODE(next); - c00533fc: 98f1 andi s1,s1,-4 + c00535cc: 98f1 andi s1,s1,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:167 DEBUGASSERT(MM_PREVNODE_IS_ALLOC(next)); - c00533fe: c711 beqz a4,c005340a + c00535ce: c711 beqz a4,c00535da /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:167 (discriminator 1) - c0053400: 4601 li a2,0 - c0053402: 0a700593 li a1,167 - c0053406: b7b9 j c0053354 + c00535d0: 4601 li a2,0 + c00535d2: 0a700593 li a1,167 + c00535d6: b7b9 j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:74 size_t nextsize = 0; - c0053408: 4481 li s1,0 + c00535d8: 4481 li s1,0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:171 if (MM_PREVNODE_IS_FREE(oldnode)) - c005340a: 8b89 andi a5,a5,2 - c005340c: cf91 beqz a5,c0053428 + c00535da: 8b89 andi a5,a5,2 + c00535dc: cf91 beqz a5,c00535f8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:173 prev = (FAR struct mm_freenode_s *) - c005340e: ff09b703 ld a4,-16(s3) - c0053412: 40eb05b3 sub a1,s6,a4 + c00535de: ff09b703 ld a4,-16(s3) + c00535e2: 40eb05b3 sub a1,s6,a4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:175 DEBUGASSERT(MM_NODE_IS_FREE(prev)); - c0053416: 659c ld a5,8(a1) - c0053418: 0017f693 andi a3,a5,1 + c00535e6: 659c ld a5,8(a1) + c00535e8: 0017f693 andi a3,a5,1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:176 prevsize = MM_SIZEOF_NODE(prev); - c005341c: 9bf1 andi a5,a5,-4 + c00535ec: 9bf1 andi a5,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:175 DEBUGASSERT(MM_NODE_IS_FREE(prev)); - c005341e: c691 beqz a3,c005342a + c00535ee: c691 beqz a3,c00535fa /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:175 (discriminator 1) - c0053420: 4601 li a2,0 - c0053422: 0af00593 li a1,175 - c0053426: b73d j c0053354 + c00535f0: 4601 li a2,0 + c00535f2: 0af00593 li a1,175 + c00535f6: b73d j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:69 FAR struct mm_freenode_s *prev = NULL; - c0053428: 4581 li a1,0 + c00535f8: 4581 li a1,0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:181 if (nextsize + prevsize + oldsize >= newsize) - c005342a: 018486b3 add a3,s1,s8 - c005342e: 96be add a3,a3,a5 - c0053430: 1126ef63 bltu a3,s2,c005354e + c00535fa: 018486b3 add a3,s1,s8 + c00535fe: 96be add a3,a3,a5 + c0053600: 1126ef63 bltu a3,s2,c005371e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:183 size_t needed = newsize - oldsize; - c0053434: 41890933 sub s2,s2,s8 + c0053604: 41890933 sub s2,s2,s8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:192 if (nextsize > prevsize) - c0053438: 0297f263 bgeu a5,s1,c005345c + c0053608: 0297f263 bgeu a5,s1,c005362c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:196 if (needed > prevsize) - c005343c: 1327fd63 bgeu a5,s2,c0053576 + c005360c: 1327fd63 bgeu a5,s2,c0053746 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:203 takenext = needed - prevsize; - c0053440: 40f90bb3 sub s7,s2,a5 + c0053610: 40f90bb3 sub s7,s2,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:243 if (takeprev) - c0053444: eb85 bnez a5,c0053474 - c0053446: 8462 mv s0,s8 - c0053448: 8a4e mv s4,s3 + c0053614: eb85 bnez a5,c0053644 + c0053616: 8462 mv s0,s8 + c0053618: 8a4e mv s4,s3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:324 DEBUGASSERT(next->blink); - c005344a: 018cb703 ld a4,24(s9) + c005361a: 018cb703 ld a4,24(s9) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:317 andbeyond = (FAR struct mm_allocnode_s *) - c005344e: 009c86b3 add a3,s9,s1 + c005361e: 009c86b3 add a3,s9,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:324 DEBUGASSERT(next->blink); - c0053452: eb55 bnez a4,c0053506 + c0053622: eb55 bnez a4,c00536d6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:324 (discriminator 1) - c0053454: 4601 li a2,0 - c0053456: 14400593 li a1,324 - c005345a: bded j c0053354 + c0053624: 4601 li a2,0 + c0053626: 14400593 li a1,324 + c005362a: bded j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:222 if (needed > nextsize) - c005345c: 0b24f163 bgeu s1,s2,c00534fe + c005362c: 0b24f163 bgeu s1,s2,c00536ce /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:228 takeprev = needed - nextsize; - c0053460: 40990433 sub s0,s2,s1 - c0053464: 8ba6 mv s7,s1 + c0053630: 40990433 sub s0,s2,s1 + c0053634: 8ba6 mv s7,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:251 DEBUGASSERT(prev && prev->blink); - c0053466: c199 beqz a1,c005346c + c0053636: c199 beqz a1,c005363c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:251 (discriminator 2) - c0053468: 6d90 ld a2,24(a1) - c005346a: e619 bnez a2,c0053478 + c0053638: 6d90 ld a2,24(a1) + c005363a: e619 bnez a2,c0053648 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:251 (discriminator 3) - c005346c: 4601 li a2,0 - c005346e: 0fb00593 li a1,251 - c0053472: b5cd j c0053354 + c005363c: 4601 li a2,0 + c005363e: 0fb00593 li a1,251 + c0053642: b5cd j c0053524 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:243 if (takeprev) - c0053474: 843e mv s0,a5 - c0053476: bfc5 j c0053466 + c0053644: 843e mv s0,a5 + c0053646: bfc5 j c0053636 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:252 (discriminator 4) prev->blink->flink = prev->flink; - c0053478: 6994 ld a3,16(a1) - c005347a: ea14 sd a3,16(a2) + c0053648: 6994 ld a3,16(a1) + c005364a: ea14 sd a3,16(a2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:253 (discriminator 4) if (prev->flink) - c005347c: c299 beqz a3,c0053482 + c005364c: c299 beqz a3,c0053652 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:255 prev->flink->blink = prev->blink; - c005347e: 6d90 ld a2,24(a1) - c0053480: ee90 sd a2,24(a3) + c005364e: 6d90 ld a2,24(a1) + c0053650: ee90 sd a2,24(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:260 if (prevsize < takeprev + MM_MIN_CHUNK) - c0053482: 02040693 addi a3,s0,32 - c0053486: 00d7f363 bgeu a5,a3,c005348c - c005348a: 843e mv s0,a5 + c0053652: 02040693 addi a3,s0,32 + c0053656: 00d7f363 bgeu a5,a3,c005365c + c005365a: 843e mv s0,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:267 newnode = (FAR struct mm_allocnode_s *) - c005348c: 408b0b33 sub s6,s6,s0 + c005365c: 408b0b33 sub s6,s6,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:272 if (takeprev < prevsize) - c0053490: 04f47c63 bgeu s0,a5,c00534e8 + c0053660: 04f47c63 bgeu s0,a5,c00536b8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:279 prev->size = prevsize | (prev->size & MM_MASK_BIT); - c0053494: 6594 ld a3,8(a1) + c0053664: 6594 ld a3,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:278 prevsize -= takeprev; - c0053496: 8f81 sub a5,a5,s0 + c0053666: 8f81 sub a5,a5,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:280 nodesize += takeprev; - c0053498: 9462 add s0,s0,s8 + c0053668: 9462 add s0,s0,s8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:279 prev->size = prevsize | (prev->size & MM_MASK_BIT); - c005349a: 8a8d andi a3,a3,3 - c005349c: 8edd or a3,a3,a5 - c005349e: e594 sd a3,8(a1) + c005366a: 8a8d andi a3,a3,3 + c005366c: 8edd or a3,a3,a5 + c005366e: e594 sd a3,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:281 newnode->size = nodesize | MM_ALLOC_BIT | MM_PREVFREE_BIT; - c00534a0: 00346693 ori a3,s0,3 - c00534a4: 00db3423 sd a3,8(s6) + c0053670: 00346693 ori a3,s0,3 + c0053674: 00db3423 sd a3,8(s6) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:282 newnode->preceding = prevsize; - c00534a8: 00fb3023 sd a5,0(s6) + c0053678: 00fb3023 sd a5,0(s6) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:288 mm_addfreechunk(heap, prev); - c00534ac: 8556 mv a0,s5 - c00534ae: 2c0000ef jal ra,c005376e + c005367c: 8556 mv a0,s5 + c005367e: 2c0000ef jal ra,c005393e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:299 newmem = (FAR void *)((FAR char *)newnode + MM_SIZEOF_ALLOCNODE); - c00534b2: 010b0a13 addi s4,s6,16 + c0053682: 010b0a13 addi s4,s6,16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:308 if (takenext) - c00534b6: f80b9ae3 bnez s7,c005344a + c0053686: f80b9ae3 bnez s7,c005361a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:370 heap->mm_curused += newsize - oldsize; - c00534ba: 030ab603 ld a2,48(s5) + c005368a: 030ab603 ld a2,48(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:371 if (heap->mm_curused > heap->mm_maxused) - c00534be: 028ab783 ld a5,40(s5) + c005368e: 028ab783 ld a5,40(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:370 heap->mm_curused += newsize - oldsize; - c00534c2: 9932 add s2,s2,a2 - c00534c4: 032ab823 sd s2,48(s5) + c0053692: 9932 add s2,s2,a2 + c0053694: 032ab823 sd s2,48(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:371 if (heap->mm_curused > heap->mm_maxused) - c00534c8: 0127f463 bgeu a5,s2,c00534d0 + c0053698: 0127f463 bgeu a5,s2,c00536a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:373 heap->mm_maxused = heap->mm_curused; - c00534cc: 032ab423 sd s2,40(s5) + c005369c: 032ab423 sd s2,40(s5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:376 mm_unlock(heap); - c00534d0: 8556 mv a0,s5 - c00534d2: 278000ef jal ra,c005374a + c00536a0: 8556 mv a0,s5 + c00536a2: 278000ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:380 if (newmem != oldmem) - c00534d6: ef498ce3 beq s3,s4,c00533ce + c00536a6: ef498ce3 beq s3,s4,c005359e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:386 memcpy(newmem, oldmem, oldsize - MM_ALLOCNODE_OVERHEAD); - c00534da: ff8c0613 addi a2,s8,-8 - c00534de: 85ce mv a1,s3 - c00534e0: 8552 mv a0,s4 - c00534e2: 4f8030ef jal ra,c00569da - c00534e6: b5e5 j c00533ce + c00536aa: ff8c0613 addi a2,s8,-8 + c00536ae: 85ce mv a1,s3 + c00536b0: 8552 mv a0,s4 + c00536b2: 4f8030ef jal ra,c0056baa + c00536b6: b5e5 j c005359e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:294 nodesize += prevsize; - c00534e8: 01878433 add s0,a5,s8 + c00536b8: 01878433 add s0,a5,s8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:296 (newnode->size & MM_MASK_BIT); - c00534ec: 008b3783 ld a5,8(s6) - c00534f0: 8b8d andi a5,a5,3 + c00536bc: 008b3783 ld a5,8(s6) + c00536c0: 8b8d andi a5,a5,3 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:295 newnode->size = nodesize | MM_ALLOC_BIT | - c00534f2: 8fc1 or a5,a5,s0 - c00534f4: 0017e793 ori a5,a5,1 - c00534f8: 00fb3423 sd a5,8(s6) - c00534fc: bf5d j c00534b2 - c00534fe: 8bca mv s7,s2 - c0053500: 8462 mv s0,s8 - c0053502: 8a4e mv s4,s3 - c0053504: bf4d j c00534b6 + c00536c2: 8fc1 or a5,a5,s0 + c00536c4: 0017e793 ori a5,a5,1 + c00536c8: 00fb3423 sd a5,8(s6) + c00536cc: bf5d j c0053682 + c00536ce: 8bca mv s7,s2 + c00536d0: 8462 mv s0,s8 + c00536d2: 8a4e mv s4,s3 + c00536d4: bf4d j c0053686 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:325 (discriminator 2) next->blink->flink = next->flink; - c0053506: 010cb783 ld a5,16(s9) - c005350a: eb1c sd a5,16(a4) + c00536d6: 010cb783 ld a5,16(s9) + c00536da: eb1c sd a5,16(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:326 (discriminator 2) if (next->flink) - c005350c: c781 beqz a5,c0053514 + c00536dc: c781 beqz a5,c00536e4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:328 next->flink->blink = next->blink; - c005350e: 018cb703 ld a4,24(s9) - c0053512: ef98 sd a4,24(a5) + c00536de: 018cb703 ld a4,24(s9) + c00536e2: ef98 sd a4,24(a5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:333 if (nextsize < takenext + MM_MIN_CHUNK) - c0053514: 020b8793 addi a5,s7,32 # 30020 <__clzdi2-0xbffcffe0> - c0053518: 00f4f363 bgeu s1,a5,c005351e - c005351c: 8ba6 mv s7,s1 + c00536e4: 020b8793 addi a5,s7,32 # 30020 <__clzdi2-0xbffcffe0> + c00536e8: 00f4f363 bgeu s1,a5,c00536ee + c00536ec: 8ba6 mv s7,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:341 oldnode->size = nodesize | (oldnode->size & MM_MASK_BIT); - c005351e: 008b3703 ld a4,8(s6) + c00536ee: 008b3703 ld a4,8(s6) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:340 nodesize += takenext; - c0053522: 008b87b3 add a5,s7,s0 + c00536f2: 008b87b3 add a5,s7,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:341 oldnode->size = nodesize | (oldnode->size & MM_MASK_BIT); - c0053526: 8b0d andi a4,a4,3 - c0053528: 8f5d or a4,a4,a5 - c005352a: 00eb3423 sd a4,8(s6) + c00536f6: 8b0d andi a4,a4,3 + c00536f8: 8f5d or a4,a4,a5 + c00536fa: 00eb3423 sd a4,8(s6) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:345 if (takenext < nextsize) - c005352e: 009bfc63 bgeu s7,s1,c0053546 + c00536fe: 009bfc63 bgeu s7,s1,c0053716 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:353 newnode->size = nextsize - takenext; - c0053532: 417484b3 sub s1,s1,s7 + c0053702: 417484b3 sub s1,s1,s7 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:351 newnode = (FAR struct mm_freenode_s *) - c0053536: 00fb05b3 add a1,s6,a5 + c0053706: 00fb05b3 add a1,s6,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:353 newnode->size = nextsize - takenext; - c005353a: e584 sd s1,8(a1) + c005370a: e584 sd s1,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:354 andbeyond->preceding = newnode->size; - c005353c: e284 sd s1,0(a3) + c005370c: e284 sd s1,0(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:358 mm_addfreechunk(heap, newnode); - c005353e: 8556 mv a0,s5 - c0053540: 22e000ef jal ra,c005376e - c0053544: bf9d j c00534ba + c005370e: 8556 mv a0,s5 + c0053710: 22e000ef jal ra,c005393e + c0053714: bf9d j c005368a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:364 andbeyond->size &= ~MM_PREVFREE_BIT; - c0053546: 669c ld a5,8(a3) - c0053548: 9bf5 andi a5,a5,-3 - c005354a: e69c sd a5,8(a3) - c005354c: b7bd j c00534ba + c0053716: 669c ld a5,8(a3) + c0053718: 9bf5 andi a5,a5,-3 + c005371a: e69c sd a5,8(a3) + c005371c: b7bd j c005368a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:402 mm_unlock(heap); - c005354e: 8556 mv a0,s5 - c0053550: 1fa000ef jal ra,c005374a + c005371e: 8556 mv a0,s5 + c0053720: 1fa000ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:403 newmem = mm_malloc(heap, size); - c0053554: 85d2 mv a1,s4 - c0053556: 8556 mv a0,s5 - c0053558: 374000ef jal ra,c00538cc - c005355c: 8a2a mv s4,a0 + c0053724: 85d2 mv a1,s4 + c0053726: 8556 mv a0,s5 + c0053728: 374000ef jal ra,c0053a9c + c005372c: 8a2a mv s4,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:404 if (newmem) - c005355e: e60508e3 beqz a0,c00533ce + c005372e: e60508e3 beqz a0,c005359e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:406 memcpy(newmem, oldmem, oldsize - MM_ALLOCNODE_OVERHEAD); - c0053562: 85ce mv a1,s3 - c0053564: ff8c0613 addi a2,s8,-8 - c0053568: 472030ef jal ra,c00569da + c0053732: 85ce mv a1,s3 + c0053734: ff8c0613 addi a2,s8,-8 + c0053738: 472030ef jal ra,c0056baa /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:407 mm_free(heap, oldmem); - c005356c: 85ce mv a1,s3 - c005356e: 8556 mv a0,s5 - c0053570: bb3ff0ef jal ra,c0053122 - c0053574: bda9 j c00533ce + c005373c: 85ce mv a1,s3 + c005373e: 8556 mv a0,s5 + c0053740: bb3ff0ef jal ra,c00532f2 + c0053744: bda9 j c005359e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_realloc.c:243 if (takeprev) - c0053576: 8a4e mv s4,s3 - c0053578: f40901e3 beqz s2,c00534ba - c005357c: 844a mv s0,s2 - c005357e: b5e5 j c0053466 + c0053746: 8a4e mv s4,s3 + c0053748: f40901e3 beqz s2,c005368a + c005374c: 844a mv s0,s2 + c005374e: b5e5 j c0053636 -00000000c0053580 : +00000000c0053750 : mm_heapmember(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_heapmember.c:82 #else @@ -231489,12 +231687,12 @@ mm_heapmember(): */ if (mem > (FAR void *)heap->mm_heapstart[0] && - c0053580: 7d1c ld a5,56(a0) - c0053582: 00b7f663 bgeu a5,a1,c005358e + c0053750: 7d1c ld a5,56(a0) + c0053752: 00b7f663 bgeu a5,a1,c005375e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_heapmember.c:82 (discriminator 1) - c0053586: 6128 ld a0,64(a0) - c0053588: 00a5b533 sltu a0,a1,a0 - c005358c: 8082 ret + c0053756: 6128 ld a0,64(a0) + c0053758: 00a5b533 sltu a0,a1,a0 + c005375c: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_heapmember.c:90 return true; } @@ -231502,14 +231700,14 @@ mm_heapmember(): /* Otherwise, the address does not lie in the heap */ return false; - c005358e: 4501 li a0,0 + c005375e: 4501 li a0,0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_heapmember.c:93 #endif } - c0053590: 8082 ret + c0053760: 8082 ret -00000000c0053592 : +00000000c0053762 : umm_initialize(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:85 * None @@ -231518,32 +231716,32 @@ umm_initialize(): void umm_initialize(FAR void *heap_start, size_t heap_size) { - c0053592: 1141 addi sp,sp,-16 - c0053594: 862e mv a2,a1 + c0053762: 1141 addi sp,sp,-16 + c0053764: 862e mv a2,a1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:87 #ifdef CONFIG_BUILD_KERNEL USR_HEAP = mm_initialize(NULL, heap_start, heap_size); - c0053596: 85aa mv a1,a0 - c0053598: 4501 li a0,0 + c0053766: 85aa mv a1,a0 + c0053768: 4501 li a0,0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:85 { - c005359a: e406 sd ra,8(sp) + c005376a: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:87 USR_HEAP = mm_initialize(NULL, heap_start, heap_size); - c005359c: 0e6000ef jal ra,c0053682 - c00535a0: 00c017b7 lui a5,0xc01 - c00535a4: 07a2 slli a5,a5,0x8 - c00535a6: e788 sd a0,8(a5) + c005376c: 0e6000ef jal ra,c0053852 + c0053770: 00c017b7 lui a5,0xc01 + c0053774: 07a2 slli a5,a5,0x8 + c0053776: e788 sd a0,8(a5) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:91 #else USR_HEAP = mm_initialize("Umem", heap_start, heap_size); #endif } - c00535a8: 60a2 ld ra,8(sp) - c00535aa: 0141 addi sp,sp,16 - c00535ac: 8082 ret + c0053778: 60a2 ld ra,8(sp) + c005377a: 0141 addi sp,sp,16 + c005377c: 8082 ret -00000000c00535ae : +00000000c005377e : umm_try_initialize(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:115 uintptr_t allocbase; @@ -231552,13 +231750,13 @@ umm_try_initialize(): /* Return if the user heap is already initialized. */ if (USR_HEAP != NULL) - c00535ae: 00c017b7 lui a5,0xc01 - c00535b2: 07a2 slli a5,a5,0x8 - c00535b4: 679c ld a5,8(a5) - c00535b6: e795 bnez a5,c00535e2 + c005377e: 00c017b7 lui a5,0xc01 + c0053782: 07a2 slli a5,a5,0x8 + c0053784: 679c ld a5,8(a5) + c0053786: e795 bnez a5,c00537b2 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:109 { - c00535b8: 1141 addi sp,sp,-16 + c0053788: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:131 /* If we provide a zero brkaddr to pgalloc(), * it will create the first block in the correct virtual address @@ -231566,42 +231764,42 @@ umm_try_initialize(): */ allocbase = pgalloc(0, npages); - c00535ba: 4585 li a1,1 - c00535bc: 4501 li a0,0 + c005378a: 4585 li a1,1 + c005378c: 4501 li a0,0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:109 { - c00535be: e406 sd ra,8(sp) + c005378e: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:131 allocbase = pgalloc(0, npages); - c00535c0: 71b030ef jal ra,c00574da + c0053790: 71b030ef jal ra,c00576aa /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:132 DEBUGASSERT(allocbase != 0); - c00535c4: e911 bnez a0,c00535d8 + c0053794: e911 bnez a0,c00537a8 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:132 (discriminator 1) - c00535c6: 4601 li a2,0 - c00535c8: 08400593 li a1,132 - c00535cc: 0001f517 auipc a0,0x1f - c00535d0: 3ec50513 addi a0,a0,1004 # c00729b8 - c00535d4: 444000ef jal ra,c0053a18 <__assert> + c0053796: 4601 li a2,0 + c0053798: 08400593 li a1,132 + c005379c: 0001f517 auipc a0,0x1f + c00537a0: 47c50513 addi a0,a0,1148 # c0072c18 + c00537a4: 444000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:137 (discriminator 2) /* Let umm_initialize do the real work. */ umm_initialize((FAR void *)allocbase, npages * CONFIG_MM_PGSIZE); } - c00535d8: 60a2 ld ra,8(sp) + c00537a8: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:136 (discriminator 2) umm_initialize((FAR void *)allocbase, npages * CONFIG_MM_PGSIZE); - c00535da: 6585 lui a1,0x1 + c00537aa: 6585 lui a1,0x1 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:137 (discriminator 2) } - c00535dc: 0141 addi sp,sp,16 + c00537ac: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_initialize.c:136 (discriminator 2) umm_initialize((FAR void *)allocbase, npages * CONFIG_MM_PGSIZE); - c00535de: fb5ff06f j c0053592 - c00535e2: 8082 ret + c00537ae: fb5ff06f j c0053762 + c00537b2: 8082 ret -00000000c00535e4 : +00000000c00537b4 : mm_addregion(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:102 * @@ -231610,16 +231808,16 @@ mm_addregion(): void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, size_t heapsize) { - c00535e4: 7139 addi sp,sp,-64 - c00535e6: f822 sd s0,48(sp) - c00535e8: f426 sd s1,40(sp) - c00535ea: fc06 sd ra,56(sp) - c00535ec: f04a sd s2,32(sp) - c00535ee: ec4e sd s3,24(sp) - c00535f0: e852 sd s4,16(sp) - c00535f2: 84aa mv s1,a0 - c00535f4: e42e sd a1,8(sp) - c00535f6: 8432 mv s0,a2 + c00537b4: 7139 addi sp,sp,-64 + c00537b6: f822 sd s0,48(sp) + c00537b8: f426 sd s1,40(sp) + c00537ba: fc06 sd ra,56(sp) + c00537bc: f04a sd s2,32(sp) + c00537be: ec4e sd s3,24(sp) + c00537c0: e852 sd s4,16(sp) + c00537c2: 84aa mv s1,a0 + c00537c4: e42e sd a1,8(sp) + c00537c6: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:136 /* Register to KASan for access check */ @@ -231627,15 +231825,15 @@ void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, kasan_register(heapstart, &heapsize); DEBUGVERIFY(mm_lock(heap)); - c00535f8: 12e000ef jal ra,c0053726 - c00535fc: 6722 ld a4,8(sp) - c00535fe: 00055b63 bgez a0,c0053614 + c00537c8: 12e000ef jal ra,c00538f6 + c00537cc: 6722 ld a4,8(sp) + c00537ce: 00055b63 bgez a0,c00537e4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:136 (discriminator 1) - c0053602: 4601 li a2,0 - c0053604: 08800593 li a1,136 - c0053608: 0001f517 auipc a0,0x1f - c005360c: 3d050513 addi a0,a0,976 # c00729d8 - c0053610: 408000ef jal ra,c0053a18 <__assert> + c00537d2: 4601 li a2,0 + c00537d4: 08800593 li a1,136 + c00537d8: 0001f517 auipc a0,0x1f + c00537dc: 46050513 addi a0,a0,1120 # c0072c38 + c00537e0: 408000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:145 (discriminator 2) * Note: (uintptr_t)node + MM_SIZEOF_ALLOCNODE is what's actually * returned to the malloc user, which should have natural alignment. @@ -231643,21 +231841,21 @@ void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, */ heapbase = MM_ALIGN_UP((uintptr_t)heapstart + 2 * MM_SIZEOF_ALLOCNODE) - - c0053614: 02f70913 addi s2,a4,47 - c0053618: ff097913 andi s2,s2,-16 + c00537e4: 02f70913 addi s2,a4,47 + c00537e8: ff097913 andi s2,s2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:147 (discriminator 2) 2 * MM_SIZEOF_ALLOCNODE; heapend = MM_ALIGN_DOWN((uintptr_t)heapstart + (uintptr_t)heapsize); - c005361c: 943a add s0,s0,a4 + c00537ec: 943a add s0,s0,a4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:145 (discriminator 2) heapbase = MM_ALIGN_UP((uintptr_t)heapstart + 2 * MM_SIZEOF_ALLOCNODE) - - c005361e: fe090a13 addi s4,s2,-32 + c00537ee: fe090a13 addi s4,s2,-32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:147 (discriminator 2) heapend = MM_ALIGN_DOWN((uintptr_t)heapstart + (uintptr_t)heapsize); - c0053622: 9841 andi s0,s0,-16 + c00537f2: 9841 andi s0,s0,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:148 (discriminator 2) heapsize = heapend - heapbase; - c0053624: 414409b3 sub s3,s0,s4 + c00537f4: 414409b3 sub s3,s0,s4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:156 (discriminator 2) !defined(CONFIG_FS_PROCFS_EXCLUDE_MEMINFO) && \ (defined(CONFIG_BUILD_FLAT) || defined(__KERNEL__)) @@ -231665,21 +231863,21 @@ void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, heap->mm_procfs.name, IDX + 1, heapstart, heapsize); #else minfo("Region %d: base=%p size=%zu\n", IDX + 1, heapstart, heapsize); - c0053628: 0001f597 auipc a1,0x1f - c005362c: 3c858593 addi a1,a1,968 # c00729f0 - c0053630: 87ce mv a5,s3 - c0053632: 4685 li a3,1 - c0053634: 0001f617 auipc a2,0x1f - c0053638: 41c60613 addi a2,a2,1052 # c0072a50 <__FUNCTION__.1> - c005363c: 4519 li a0,6 - c005363e: 3dc030ef jal ra,c0056a1a + c00537f8: 0001f597 auipc a1,0x1f + c00537fc: 45858593 addi a1,a1,1112 # c0072c50 + c0053800: 87ce mv a5,s3 + c0053802: 4685 li a3,1 + c0053804: 0001f617 auipc a2,0x1f + c0053808: 4ac60613 addi a2,a2,1196 # c0072cb0 <__FUNCTION__.1> + c005380c: 4519 li a0,6 + c005380e: 3dc030ef jal ra,c0056bea /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:161 (discriminator 2) #endif /* Add the size of this region to the total size of the heap */ heap->mm_heapsize += heapsize; - c0053642: 709c ld a5,32(s1) + c0053812: 709c ld a5,32(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:171 (discriminator 2) * * And create one free node between the guard nodes that contains @@ -231687,42 +231885,42 @@ void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, */ heap->mm_heapstart[IDX] = (FAR struct mm_allocnode_s *)heapbase; - c0053644: 0344bc23 sd s4,56(s1) + c0053814: 0344bc23 sd s4,56(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:175 (discriminator 2) MM_ADD_BACKTRACE(heap, heap->mm_heapstart[IDX]); heap->mm_heapstart[IDX]->size = MM_SIZEOF_ALLOCNODE | MM_ALLOC_BIT; node = (FAR struct mm_freenode_s *) (heapbase + MM_SIZEOF_ALLOCNODE); - c0053648: ff090593 addi a1,s2,-16 + c0053818: ff090593 addi a1,s2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:161 (discriminator 2) heap->mm_heapsize += heapsize; - c005364c: 97ce add a5,a5,s3 - c005364e: f09c sd a5,32(s1) + c005381c: 97ce add a5,a5,s3 + c005381e: f09c sd a5,32(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:173 (discriminator 2) heap->mm_heapstart[IDX]->size = MM_SIZEOF_ALLOCNODE | MM_ALLOC_BIT; - c0053650: 47c5 li a5,17 - c0053652: fef93423 sd a5,-24(s2) + c0053820: 47c5 li a5,17 + c0053822: fef93423 sd a5,-24(s2) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:177 (discriminator 2) DEBUGASSERT((((uintptr_t)node + MM_SIZEOF_ALLOCNODE) % MM_ALIGN) == 0); node->size = heapsize - 2 * MM_SIZEOF_ALLOCNODE; - c0053656: 1981 addi s3,s3,-32 - c0053658: 0135b423 sd s3,8(a1) + c0053826: 1981 addi s3,s3,-32 + c0053828: 0135b423 sd s3,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:179 (discriminator 2) heap->mm_heapend[IDX] = (FAR struct mm_allocnode_s *) (heapend - MM_SIZEOF_ALLOCNODE); - c005365c: 1441 addi s0,s0,-16 + c005382c: 1441 addi s0,s0,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:178 (discriminator 2) heap->mm_heapend[IDX] = (FAR struct mm_allocnode_s *) - c005365e: e0a0 sd s0,64(s1) + c005382e: e0a0 sd s0,64(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:180 (discriminator 2) heap->mm_heapend[IDX]->size = MM_SIZEOF_ALLOCNODE | MM_ALLOC_BIT | - c0053660: 47cd li a5,19 - c0053662: e41c sd a5,8(s0) + c0053830: 47cd li a5,19 + c0053832: e41c sd a5,8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:182 (discriminator 2) MM_PREVFREE_BIT; heap->mm_heapend[IDX]->preceding = node->size; - c0053664: 60bc ld a5,64(s1) - c0053666: 6598 ld a4,8(a1) + c0053834: 60bc ld a5,64(s1) + c0053836: 6598 ld a4,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:193 (discriminator 2) heap->mm_nregions++; #endif @@ -231730,33 +231928,33 @@ void mm_addregion(FAR struct mm_heap_s *heap, FAR void *heapstart, /* Add the single, large free node to the nodelist */ mm_addfreechunk(heap, node); - c0053668: 8526 mv a0,s1 + c0053838: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:182 (discriminator 2) heap->mm_heapend[IDX]->preceding = node->size; - c005366a: e398 sd a4,0(a5) + c005383a: e398 sd a4,0(a5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:193 (discriminator 2) mm_addfreechunk(heap, node); - c005366c: 102000ef jal ra,c005376e + c005383c: 102000ef jal ra,c005393e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:195 (discriminator 2) mm_unlock(heap); } - c0053670: 7442 ld s0,48(sp) - c0053672: 70e2 ld ra,56(sp) - c0053674: 7902 ld s2,32(sp) - c0053676: 69e2 ld s3,24(sp) - c0053678: 6a42 ld s4,16(sp) + c0053840: 7442 ld s0,48(sp) + c0053842: 70e2 ld ra,56(sp) + c0053844: 7902 ld s2,32(sp) + c0053846: 69e2 ld s3,24(sp) + c0053848: 6a42 ld s4,16(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:194 (discriminator 2) mm_unlock(heap); - c005367a: 8526 mv a0,s1 + c005384a: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:195 (discriminator 2) } - c005367c: 74a2 ld s1,40(sp) - c005367e: 6121 addi sp,sp,64 + c005384c: 74a2 ld s1,40(sp) + c005384e: 6121 addi sp,sp,64 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:194 (discriminator 2) mm_unlock(heap); - c0053680: a0e9 j c005374a + c0053850: a0e9 j c005391a -00000000c0053682 : +00000000c0053852 : mm_initialize(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:219 * @@ -231765,7 +231963,7 @@ mm_initialize(): FAR struct mm_heap_s *mm_initialize(FAR const char *name, FAR void *heapstart, size_t heapsize) { - c0053682: 1101 addi sp,sp,-32 + c0053852: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:227 #endif FAR struct mm_heap_s *heap; @@ -231773,59 +231971,59 @@ FAR struct mm_heap_s *mm_initialize(FAR const char *name, int i; minfo("Heap: name=%s, start=%p size=%zu\n", name, heapstart, heapsize); - c0053684: 87b2 mv a5,a2 + c0053854: 87b2 mv a5,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:219 { - c0053686: e822 sd s0,16(sp) - c0053688: e04a sd s2,0(sp) - c005368a: 842e mv s0,a1 - c005368c: 86aa mv a3,a0 - c005368e: 8932 mv s2,a2 + c0053856: e822 sd s0,16(sp) + c0053858: e04a sd s2,0(sp) + c005385a: 842e mv s0,a1 + c005385c: 86aa mv a3,a0 + c005385e: 8932 mv s2,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:227 minfo("Heap: name=%s, start=%p size=%zu\n", name, heapstart, heapsize); - c0053690: 872e mv a4,a1 - c0053692: 0001f617 auipc a2,0x1f - c0053696: 3ae60613 addi a2,a2,942 # c0072a40 <__FUNCTION__.0> - c005369a: 0001f597 auipc a1,0x1f - c005369e: 37e58593 addi a1,a1,894 # c0072a18 - c00536a2: 4519 li a0,6 + c0053860: 872e mv a4,a1 + c0053862: 0001f617 auipc a2,0x1f + c0053866: 43e60613 addi a2,a2,1086 # c0072ca0 <__FUNCTION__.0> + c005386a: 0001f597 auipc a1,0x1f + c005386e: 40e58593 addi a1,a1,1038 # c0072c78 + c0053872: 4519 li a0,6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:219 { - c00536a4: e426 sd s1,8(sp) - c00536a6: ec06 sd ra,24(sp) + c0053874: e426 sd s1,8(sp) + c0053876: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:231 /* First ensure the memory to be used is aligned */ heap_adj = MM_ALIGN_UP((uintptr_t)heapstart); - c00536a8: 00f40493 addi s1,s0,15 + c0053878: 00f40493 addi s1,s0,15 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:227 minfo("Heap: name=%s, start=%p size=%zu\n", name, heapstart, heapsize); - c00536ac: 36e030ef jal ra,c0056a1a + c005387c: 36e030ef jal ra,c0056bea /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:231 heap_adj = MM_ALIGN_UP((uintptr_t)heapstart); - c00536b0: 98c1 andi s1,s1,-16 + c0053880: 98c1 andi s1,s1,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:232 heapsize -= heap_adj - (uintptr_t)heapstart; - c00536b2: 01240633 add a2,s0,s2 - c00536b6: 8e05 sub a2,a2,s1 + c0053882: 01240633 add a2,s0,s2 + c0053886: 8e05 sub a2,a2,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:236 /* Reserve a block space for mm_heap_s context */ DEBUGASSERT(heapsize > sizeof(struct mm_heap_s)); - c00536b8: 2a800793 li a5,680 - c00536bc: 00c7eb63 bltu a5,a2,c00536d2 + c0053888: 2a800793 li a5,680 + c005388c: 00c7eb63 bltu a5,a2,c00538a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:236 (discriminator 1) - c00536c0: 4601 li a2,0 - c00536c2: 0ec00593 li a1,236 - c00536c6: 0001f517 auipc a0,0x1f - c00536ca: 31250513 addi a0,a0,786 # c00729d8 - c00536ce: 34a000ef jal ra,c0053a18 <__assert> + c0053890: 4601 li a2,0 + c0053892: 0ec00593 li a1,236 + c0053896: 0001f517 auipc a0,0x1f + c005389a: 3a250513 addi a0,a0,930 # c0072c38 + c005389e: 34a000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:238 (discriminator 2) heap = (FAR struct mm_heap_s *)heap_adj; heapsize -= sizeof(struct mm_heap_s); - c00536d2: d5860413 addi s0,a2,-680 + c00538a2: d5860413 addi s0,a2,-680 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:245 (discriminator 2) DEBUGASSERT(MM_MIN_CHUNK >= MM_SIZEOF_ALLOCNODE); @@ -231833,37 +232031,37 @@ FAR struct mm_heap_s *mm_initialize(FAR const char *name, /* Set up global variables */ memset(heap, 0, sizeof(struct mm_heap_s)); - c00536d6: 4581 li a1,0 - c00536d8: 2a800613 li a2,680 - c00536dc: 8526 mv a0,s1 - c00536de: 192030ef jal ra,c0056870 + c00538a6: 4581 li a1,0 + c00538a8: 2a800613 li a2,680 + c00538ac: 8526 mv a0,s1 + c00538ae: 192030ef jal ra,c0056a40 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:239 (discriminator 2) heapstart = (FAR char *)heap_adj + sizeof(struct mm_heap_s); - c00536e2: 2a848913 addi s2,s1,680 + c00538b2: 2a848913 addi s2,s1,680 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:249 (discriminator 2) /* Initialize the node array */ for (i = 1; i < MM_NNODES; i++) - c00536e6: 06848713 addi a4,s1,104 - c00536ea: 05848793 addi a5,s1,88 - c00536ee: 27848693 addi a3,s1,632 + c00538b6: 06848713 addi a4,s1,104 + c00538ba: 05848793 addi a5,s1,88 + c00538be: 27848693 addi a3,s1,632 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:252 (discriminator 3) { heap->mm_nodelist[i - 1].flink = &heap->mm_nodelist[i]; heap->mm_nodelist[i].blink = &heap->mm_nodelist[i - 1]; - c00536f2: fe070613 addi a2,a4,-32 + c00538c2: fe070613 addi a2,a4,-32 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:251 (discriminator 3) heap->mm_nodelist[i - 1].flink = &heap->mm_nodelist[i]; - c00536f6: e398 sd a4,0(a5) + c00538c6: e398 sd a4,0(a5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:252 (discriminator 3) heap->mm_nodelist[i].blink = &heap->mm_nodelist[i - 1]; - c00536f8: f790 sd a2,40(a5) + c00538c8: f790 sd a2,40(a5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:249 (discriminator 3) for (i = 1; i < MM_NNODES; i++) - c00536fa: 02078793 addi a5,a5,32 # c01020 <__clzdi2-0xbf3fefe0> - c00536fe: 02070713 addi a4,a4,32 - c0053702: fed798e3 bne a5,a3,c00536f2 + c00538ca: 02078793 addi a5,a5,32 # c01020 <__clzdi2-0xbf3fefe0> + c00538ce: 02070713 addi a4,a4,32 + c00538d2: fed798e3 bne a5,a3,c00538c2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:259 /* Initialize the malloc mutex to one (to support one-at- @@ -231871,8 +232069,8 @@ FAR struct mm_heap_s *mm_initialize(FAR const char *name, */ nxmutex_init(&heap->mm_lock); - c0053706: 8526 mv a0,s1 - c0053708: 3e2000ef jal ra,c0053aea + c00538d6: 8526 mv a0,s1 + c00538d8: 3e2000ef jal ra,c0053cba /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:273 # endif #endif @@ -231880,10 +232078,10 @@ FAR struct mm_heap_s *mm_initialize(FAR const char *name, /* Add the initial region of memory to the heap */ mm_addregion(heap, heapstart, heapsize); - c005370c: 8526 mv a0,s1 - c005370e: 8622 mv a2,s0 - c0053710: 85ca mv a1,s2 - c0053712: ed3ff0ef jal ra,c00535e4 + c00538dc: 8526 mv a0,s1 + c00538de: 8622 mv a2,s0 + c00538e0: 85ca mv a1,s2 + c00538e2: ed3ff0ef jal ra,c00537b4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:299 CONFIG_MM_HEAP_MEMPOOL_EXPAND_SIZE, CONFIG_MM_HEAP_MEMPOOL_DICTIONARY_EXPAND_SIZE); @@ -231891,15 +232089,15 @@ FAR struct mm_heap_s *mm_initialize(FAR const char *name, return heap; } - c0053716: 60e2 ld ra,24(sp) - c0053718: 6442 ld s0,16(sp) - c005371a: 6902 ld s2,0(sp) - c005371c: 8526 mv a0,s1 - c005371e: 64a2 ld s1,8(sp) - c0053720: 6105 addi sp,sp,32 - c0053722: 8082 ret + c00538e6: 60e2 ld ra,24(sp) + c00538e8: 6442 ld s0,16(sp) + c00538ea: 6902 ld s2,0(sp) + c00538ec: 8526 mv a0,s1 + c00538ee: 64a2 ld s1,8(sp) + c00538f0: 6105 addi sp,sp,32 + c00538f2: 8082 ret -00000000c0053724 : +00000000c00538f4 : mm_uninitialize(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_initialize.c:326 #if defined(CONFIG_FS_PROCFS) && !defined(CONFIG_FS_PROCFS_EXCLUDE_MEMINFO) @@ -231908,9 +232106,9 @@ mm_uninitialize(): # endif #endif nxmutex_destroy(&heap->mm_lock); - c0053724: aedd j c0053b1a + c00538f4: aedd j c0053cea -00000000c0053726 : +00000000c00538f6 : mm_lock(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:59 * 0 if the lock can be taken, otherwise negative errno. @@ -231919,10 +232117,10 @@ mm_lock(): int mm_lock(FAR struct mm_heap_s *heap) { - c0053726: 1141 addi sp,sp,-16 - c0053728: e022 sd s0,0(sp) - c005372a: e406 sd ra,8(sp) - c005372c: 842a mv s0,a0 + c00538f6: 1141 addi sp,sp,-16 + c00538f8: e022 sd s0,0(sp) + c00538fa: e406 sd ra,8(sp) + c00538fc: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:89 * * This is handled by _SCHED_GETTID() to return the special value -ESRCH @@ -231930,8 +232128,8 @@ int mm_lock(FAR struct mm_heap_s *heap) */ if (_SCHED_GETTID() < 0) - c005372e: 457030ef jal ra,c0057384 - c0053732: 00054763 bltz a0,c0053740 + c00538fe: 457030ef jal ra,c0057554 + c0053902: 00054763 bltz a0,c0053910 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:95 { return -ESRCH; @@ -231939,25 +232137,25 @@ int mm_lock(FAR struct mm_heap_s *heap) else { return nxmutex_lock(&heap->mm_lock); - c0053736: 8522 mv a0,s0 + c0053906: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:97 } } - c0053738: 6402 ld s0,0(sp) - c005373a: 60a2 ld ra,8(sp) - c005373c: 0141 addi sp,sp,16 + c0053908: 6402 ld s0,0(sp) + c005390a: 60a2 ld ra,8(sp) + c005390c: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:95 return nxmutex_lock(&heap->mm_lock); - c005373e: a90d j c0053b70 + c005390e: a90d j c0053d40 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:97 } - c0053740: 60a2 ld ra,8(sp) - c0053742: 6402 ld s0,0(sp) - c0053744: 5575 li a0,-3 - c0053746: 0141 addi sp,sp,16 - c0053748: 8082 ret + c0053910: 60a2 ld ra,8(sp) + c0053912: 6402 ld s0,0(sp) + c0053914: 5575 li a0,-3 + c0053916: 0141 addi sp,sp,16 + c0053918: 8082 ret -00000000c005374a : +00000000c005391a : mm_unlock(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:108 * Release the MM mutex when it is not longer needed. @@ -231966,8 +232164,8 @@ mm_unlock(): void mm_unlock(FAR struct mm_heap_s *heap) { - c005374a: 1141 addi sp,sp,-16 - c005374c: e406 sd ra,8(sp) + c005391a: 1141 addi sp,sp,-16 + c005391c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:116 { return; @@ -231975,21 +232173,21 @@ void mm_unlock(FAR struct mm_heap_s *heap) #endif DEBUGVERIFY(nxmutex_unlock(&heap->mm_lock)); - c005374e: 518000ef jal ra,c0053c66 - c0053752: 00055b63 bgez a0,c0053768 + c005391e: 518000ef jal ra,c0053e36 + c0053922: 00055b63 bgez a0,c0053938 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:116 (discriminator 1) - c0053756: 4601 li a2,0 - c0053758: 07400593 li a1,116 - c005375c: 0001f517 auipc a0,0x1f - c0053760: 30450513 addi a0,a0,772 # c0072a60 <__FUNCTION__.1+0x10> - c0053764: 2b4000ef jal ra,c0053a18 <__assert> + c0053926: 4601 li a2,0 + c0053928: 07400593 li a1,116 + c005392c: 0001f517 auipc a0,0x1f + c0053930: 39450513 addi a0,a0,916 # c0072cc0 <__FUNCTION__.1+0x10> + c0053934: 2b4000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_lock.c:117 } - c0053768: 60a2 ld ra,8(sp) - c005376a: 0141 addi sp,sp,16 - c005376c: 8082 ret + c0053938: 60a2 ld ra,8(sp) + c005393a: 0141 addi sp,sp,16 + c005393c: 8082 ret -00000000c005376e : +00000000c005393e : mm_addfreechunk(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:48 * @@ -231998,117 +232196,117 @@ mm_addfreechunk(): void mm_addfreechunk(FAR struct mm_heap_s *heap, FAR struct mm_freenode_s *node) { - c005376e: 1101 addi sp,sp,-32 - c0053770: e04a sd s2,0(sp) - c0053772: ec06 sd ra,24(sp) - c0053774: e822 sd s0,16(sp) - c0053776: e426 sd s1,8(sp) + c005393e: 1101 addi sp,sp,-32 + c0053940: e04a sd s2,0(sp) + c0053942: ec06 sd ra,24(sp) + c0053944: e822 sd s0,16(sp) + c0053946: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:51 FAR struct mm_freenode_s *next; FAR struct mm_freenode_s *prev; size_t nodesize = MM_SIZEOF_NODE(node); - c0053778: 659c ld a5,8(a1) + c0053948: 659c ld a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:54 int ndx; DEBUGASSERT(nodesize >= MM_MIN_CHUNK); - c005377a: 477d li a4,31 + c005394a: 477d li a4,31 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:51 size_t nodesize = MM_SIZEOF_NODE(node); - c005377c: ffc7f913 andi s2,a5,-4 + c005394c: ffc7f913 andi s2,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:54 DEBUGASSERT(nodesize >= MM_MIN_CHUNK); - c0053780: 01276b63 bltu a4,s2,c0053796 + c0053950: 01276b63 bltu a4,s2,c0053966 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:54 (discriminator 1) - c0053784: 4601 li a2,0 - c0053786: 03600593 li a1,54 + c0053954: 4601 li a2,0 + c0053956: 03600593 li a1,54 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:55 (discriminator 1) DEBUGASSERT(MM_NODE_IS_FREE(node)); - c005378a: 0001f517 auipc a0,0x1f - c005378e: 2ee50513 addi a0,a0,750 # c0072a78 <__FUNCTION__.1+0x28> - c0053792: 286000ef jal ra,c0053a18 <__assert> + c005395a: 0001f517 auipc a0,0x1f + c005395e: 37e50513 addi a0,a0,894 # c0072cd8 <__FUNCTION__.1+0x28> + c0053962: 286000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:55 (discriminator 2) - c0053796: 8b85 andi a5,a5,1 - c0053798: c789 beqz a5,c00537a2 + c0053966: 8b85 andi a5,a5,1 + c0053968: c789 beqz a5,c0053972 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:55 (discriminator 1) - c005379a: 4601 li a2,0 - c005379c: 03700593 li a1,55 - c00537a0: b7ed j c005378a - c00537a2: 84aa mv s1,a0 + c005396a: 4601 li a2,0 + c005396c: 03700593 li a1,55 + c0053970: b7ed j c005395a + c0053972: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:59 (discriminator 2) /* Convert the size to a nodelist index */ ndx = mm_size2ndx(nodesize); - c00537a4: 854a mv a0,s2 - c00537a6: 842e mv s0,a1 - c00537a8: 03c000ef jal ra,c00537e4 + c0053974: 854a mv a0,s2 + c0053976: 842e mv s0,a1 + c0053978: 03c000ef jal ra,c00539b4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:63 (discriminator 2) /* Now put the new node into the next */ for (prev = &heap->mm_nodelist[ndx], - c00537ac: 00551713 slli a4,a0,0x5 - c00537b0: 04870713 addi a4,a4,72 + c005397c: 00551713 slli a4,a0,0x5 + c0053980: 04870713 addi a4,a4,72 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:64 (discriminator 2) next = heap->mm_nodelist[ndx].flink; - c00537b4: 0516 slli a0,a0,0x5 + c0053984: 0516 slli a0,a0,0x5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:63 (discriminator 2) for (prev = &heap->mm_nodelist[ndx], - c00537b6: 9726 add a4,a4,s1 + c0053986: 9726 add a4,a4,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:64 (discriminator 2) next = heap->mm_nodelist[ndx].flink; - c00537b8: 94aa add s1,s1,a0 - c00537ba: 6cbc ld a5,88(s1) + c0053988: 94aa add s1,s1,a0 + c005398a: 6cbc ld a5,88(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:63 for (prev = &heap->mm_nodelist[ndx], - c00537bc: c791 beqz a5,c00537c8 + c005398c: c791 beqz a5,c0053998 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:65 next && next->size && MM_SIZEOF_NODE(next) < nodesize; - c00537be: 6794 ld a3,8(a5) - c00537c0: c681 beqz a3,c00537c8 + c005398e: 6794 ld a3,8(a5) + c0053990: c681 beqz a3,c0053998 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:65 (discriminator 1) - c00537c2: 9af1 andi a3,a3,-4 - c00537c4: 0126ed63 bltu a3,s2,c00537de + c0053992: 9af1 andi a3,a3,-4 + c0053994: 0126ed63 bltu a3,s2,c00539ae /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:70 prev = next, next = next->flink); /* Does it go in mid next or at the end? */ prev->flink = node; - c00537c8: eb00 sd s0,16(a4) + c0053998: eb00 sd s0,16(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:71 node->blink = prev; - c00537ca: ec18 sd a4,24(s0) + c005399a: ec18 sd a4,24(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:72 node->flink = next; - c00537cc: e81c sd a5,16(s0) + c005399c: e81c sd a5,16(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:74 if (next) - c00537ce: c391 beqz a5,c00537d2 + c005399e: c391 beqz a5,c00539a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:78 { /* The new node goes between prev and next */ next->blink = node; - c00537d0: ef80 sd s0,24(a5) + c00539a0: ef80 sd s0,24(a5) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:80 } } - c00537d2: 60e2 ld ra,24(sp) - c00537d4: 6442 ld s0,16(sp) - c00537d6: 64a2 ld s1,8(sp) - c00537d8: 6902 ld s2,0(sp) - c00537da: 6105 addi sp,sp,32 - c00537dc: 8082 ret + c00539a2: 60e2 ld ra,24(sp) + c00539a4: 6442 ld s0,16(sp) + c00539a6: 64a2 ld s1,8(sp) + c00539a8: 6902 ld s2,0(sp) + c00539aa: 6105 addi sp,sp,32 + c00539ac: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_addfreechunk.c:66 prev = next, next = next->flink); - c00537de: 873e mv a4,a5 - c00537e0: 6b9c ld a5,16(a5) - c00537e2: bfe9 j c00537bc + c00539ae: 873e mv a4,a5 + c00539b0: 6b9c ld a5,16(a5) + c00539b2: bfe9 j c005398c -00000000c00537e4 : +00000000c00539b4 : mm_size2ndx(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:46 * Convert the size to a nodelist index. @@ -232117,44 +232315,44 @@ mm_size2ndx(): int mm_size2ndx(size_t size) { - c00537e4: 1141 addi sp,sp,-16 - c00537e6: e406 sd ra,8(sp) + c00539b4: 1141 addi sp,sp,-16 + c00539b6: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:47 DEBUGASSERT(size >= MM_MIN_CHUNK); - c00537e8: 477d li a4,31 - c00537ea: 00a76b63 bltu a4,a0,c0053800 + c00539b8: 477d li a4,31 + c00539ba: 00a76b63 bltu a4,a0,c00539d0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:47 (discriminator 1) - c00537ee: 4601 li a2,0 - c00537f0: 02f00593 li a1,47 - c00537f4: 0001f517 auipc a0,0x1f - c00537f8: 2a450513 addi a0,a0,676 # c0072a98 <__FUNCTION__.1+0x48> - c00537fc: 21c000ef jal ra,c0053a18 <__assert> - c0053800: 87aa mv a5,a0 + c00539be: 4601 li a2,0 + c00539c0: 02f00593 li a1,47 + c00539c4: 0001f517 auipc a0,0x1f + c00539c8: 33450513 addi a0,a0,820 # c0072cf8 <__FUNCTION__.1+0x48> + c00539cc: 21c000ef jal ra,c0053be8 <__assert> + c00539d0: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:48 (discriminator 2) if (size >= MM_MAX_CHUNK) - c0053802: 00400737 lui a4,0x400 + c00539d2: 00400737 lui a4,0x400 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:50 (discriminator 2) { return MM_NNODES - 1; - c0053806: 4545 li a0,17 + c00539d6: 4545 li a0,17 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:48 (discriminator 2) if (size >= MM_MAX_CHUNK) - c0053808: 00e7f763 bgeu a5,a4,c0053816 + c00539d8: 00e7f763 bgeu a5,a4,c00539e6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:54 } size >>= MM_MIN_SHIFT; return flsl(size) - 1; - c005380c: 0057d513 srli a0,a5,0x5 - c0053810: 643020ef jal ra,c0056652 - c0053814: 357d addiw a0,a0,-1 + c00539dc: 0057d513 srli a0,a5,0x5 + c00539e0: 643020ef jal ra,c0056822 + c00539e4: 357d addiw a0,a0,-1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_size2ndx.c:55 } - c0053816: 60a2 ld ra,8(sp) - c0053818: 0141 addi sp,sp,16 - c005381a: 8082 ret + c00539e6: 60a2 ld ra,8(sp) + c00539e8: 0141 addi sp,sp,16 + c00539ea: 8082 ret -00000000c005381c : +00000000c00539ec : mm_shrinkchunk(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:54 * @@ -232163,23 +232361,23 @@ mm_shrinkchunk(): void mm_shrinkchunk(FAR struct mm_heap_s *heap, FAR struct mm_allocnode_s *node, size_t size) { - c005381c: 1141 addi sp,sp,-16 - c005381e: e406 sd ra,8(sp) + c00539ec: 1141 addi sp,sp,-16 + c00539ee: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:58 FAR struct mm_freenode_s *next; size_t nodesize = MM_SIZEOF_NODE(node); DEBUGASSERT((size & MM_GRAN_MASK) == 0); - c0053820: 00f67693 andi a3,a2,15 + c00539f0: 00f67693 andi a3,a2,15 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:56 size_t nodesize = MM_SIZEOF_NODE(node); - c0053824: 659c ld a5,8(a1) + c00539f4: 659c ld a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:58 DEBUGASSERT((size & MM_GRAN_MASK) == 0); - c0053826: ca91 beqz a3,c005383a + c00539f6: ca91 beqz a3,c0053a0a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:58 (discriminator 1) - c0053828: 4601 li a2,0 - c005382a: 03a00593 li a1,58 + c00539f8: 4601 li a2,0 + c00539fa: 03a00593 li a1,58 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:81 (discriminator 1) /* Remove the next node. There must be a predecessor, but there may @@ -232187,55 +232385,55 @@ void mm_shrinkchunk(FAR struct mm_heap_s *heap, */ DEBUGASSERT(next->blink); - c005382e: 0001f517 auipc a0,0x1f - c0053832: 28250513 addi a0,a0,642 # c0072ab0 <__FUNCTION__.1+0x60> - c0053836: 1e2000ef jal ra,c0053a18 <__assert> - c005383a: 9bf1 andi a5,a5,-4 + c00539fe: 0001f517 auipc a0,0x1f + c0053a02: 31250513 addi a0,a0,786 # c0072d10 <__FUNCTION__.1+0x60> + c0053a06: 1e2000ef jal ra,c0053be8 <__assert> + c0053a0a: 9bf1 andi a5,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:62 (discriminator 2) next = (FAR struct mm_freenode_s *)((FAR char *)node + nodesize); - c005383c: 00f586b3 add a3,a1,a5 + c0053a0c: 00f586b3 add a3,a1,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:66 (discriminator 2) if (MM_NODE_IS_FREE(next)) - c0053840: 872e mv a4,a1 - c0053842: 668c ld a1,8(a3) - c0053844: 0015f813 andi a6,a1,1 - c0053848: 04081c63 bnez a6,c00538a0 + c0053a10: 872e mv a4,a1 + c0053a12: 668c ld a1,8(a3) + c0053a14: 0015f813 andi a6,a1,1 + c0053a18: 04081c63 bnez a6,c0053a70 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:70 size_t nextsize = MM_SIZEOF_NODE(next); - c005384c: ffc5f813 andi a6,a1,-4 - c0053850: 88aa mv a7,a0 + c0053a1c: ffc5f813 andi a6,a1,-4 + c0053a20: 88aa mv a7,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:74 andbeyond = (FAR struct mm_allocnode_s *)((FAR char *)next + nextsize); - c0053852: 01068533 add a0,a3,a6 + c0053a22: 01068533 add a0,a3,a6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:75 DEBUGASSERT(MM_PREVNODE_IS_FREE(andbeyond)); - c0053856: 650c ld a1,8(a0) - c0053858: 8989 andi a1,a1,2 - c005385a: e589 bnez a1,c0053864 + c0053a26: 650c ld a1,8(a0) + c0053a28: 8989 andi a1,a1,2 + c0053a2a: e589 bnez a1,c0053a34 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:75 (discriminator 1) - c005385c: 4601 li a2,0 - c005385e: 04b00593 li a1,75 - c0053862: b7f1 j c005382e + c0053a2c: 4601 li a2,0 + c0053a2e: 04b00593 li a1,75 + c0053a32: b7f1 j c00539fe /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:81 (discriminator 2) DEBUGASSERT(next->blink); - c0053864: 0186b303 ld t1,24(a3) - c0053868: 00031663 bnez t1,c0053874 + c0053a34: 0186b303 ld t1,24(a3) + c0053a38: 00031663 bnez t1,c0053a44 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:81 (discriminator 1) - c005386c: 4601 li a2,0 - c005386e: 05100593 li a1,81 - c0053872: bf75 j c005382e + c0053a3c: 4601 li a2,0 + c0053a3e: 05100593 li a1,81 + c0053a42: bf75 j c00539fe /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:82 (discriminator 2) next->blink->flink = next->flink; - c0053874: 6a8c ld a1,16(a3) - c0053876: 00b33823 sd a1,16(t1) + c0053a44: 6a8c ld a1,16(a3) + c0053a46: 00b33823 sd a1,16(t1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:83 (discriminator 2) if (next->flink) - c005387a: c199 beqz a1,c0053880 + c0053a4a: c199 beqz a1,c0053a50 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:85 { next->flink->blink = next->blink; - c005387c: 6e94 ld a3,24(a3) - c005387e: ed94 sd a3,24(a1) + c0053a4c: 6e94 ld a3,24(a3) + c0053a4e: ed94 sd a3,24(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:96 newnode = (FAR struct mm_freenode_s *)((FAR char *)node + size); @@ -232243,30 +232441,30 @@ void mm_shrinkchunk(FAR struct mm_heap_s *heap, /* Set up the size of the new node */ newnode->size = nextsize + nodesize - size; - c0053880: 8f91 sub a5,a5,a2 + c0053a50: 8f91 sub a5,a5,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:92 newnode = (FAR struct mm_freenode_s *)((FAR char *)node + size); - c0053882: 00c705b3 add a1,a4,a2 + c0053a52: 00c705b3 add a1,a4,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:96 newnode->size = nextsize + nodesize - size; - c0053886: 97c2 add a5,a5,a6 - c0053888: e59c sd a5,8(a1) + c0053a56: 97c2 add a5,a5,a6 + c0053a58: e59c sd a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:97 node->size = size | (node->size & MM_MASK_BIT); - c005388a: 671c ld a5,8(a4) - c005388c: 8b8d andi a5,a5,3 - c005388e: 8e5d or a2,a2,a5 - c0053890: e710 sd a2,8(a4) + c0053a5a: 671c ld a5,8(a4) + c0053a5c: 8b8d andi a5,a5,3 + c0053a5e: 8e5d or a2,a2,a5 + c0053a60: e710 sd a2,8(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:98 andbeyond->preceding = newnode->size; - c0053892: 659c ld a5,8(a1) - c0053894: e11c sd a5,0(a0) + c0053a62: 659c ld a5,8(a1) + c0053a64: e11c sd a5,0(a0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:102 /* Add the new node to the freenodelist */ mm_addfreechunk(heap, newnode); - c0053896: 8546 mv a0,a7 + c0053a66: 8546 mv a0,a7 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:130 /* Add the new node to the freenodelist */ @@ -232274,45 +232472,45 @@ void mm_shrinkchunk(FAR struct mm_heap_s *heap, mm_addfreechunk(heap, newnode); } } - c0053898: 60a2 ld ra,8(sp) - c005389a: 0141 addi sp,sp,16 + c0053a68: 60a2 ld ra,8(sp) + c0053a6a: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:128 mm_addfreechunk(heap, newnode); - c005389c: ed3ff06f j c005376e + c0053a6c: ed3ff06f j c005393e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:109 else if (nodesize >= size + MM_MIN_CHUNK) - c00538a0: 02060593 addi a1,a2,32 - c00538a4: 02b7e163 bltu a5,a1,c00538c6 + c0053a70: 02060593 addi a1,a2,32 + c0053a74: 02b7e163 bltu a5,a1,c0053a96 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:117 newnode = (FAR struct mm_freenode_s *)((FAR char *)node + size); - c00538a8: 00c705b3 add a1,a4,a2 + c0053a78: 00c705b3 add a1,a4,a2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:121 newnode->size = nodesize - size; - c00538ac: 8f91 sub a5,a5,a2 - c00538ae: e59c sd a5,8(a1) + c0053a7c: 8f91 sub a5,a5,a2 + c0053a7e: e59c sd a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:122 node->size = size | (node->size & MM_MASK_BIT); - c00538b0: 671c ld a5,8(a4) - c00538b2: 8b8d andi a5,a5,3 - c00538b4: 8e5d or a2,a2,a5 - c00538b6: e710 sd a2,8(a4) + c0053a80: 671c ld a5,8(a4) + c0053a82: 8b8d andi a5,a5,3 + c0053a84: 8e5d or a2,a2,a5 + c0053a86: e710 sd a2,8(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:123 next->size |= MM_PREVFREE_BIT; - c00538b8: 669c ld a5,8(a3) - c00538ba: 0027e793 ori a5,a5,2 - c00538be: e69c sd a5,8(a3) + c0053a88: 669c ld a5,8(a3) + c0053a8a: 0027e793 ori a5,a5,2 + c0053a8e: e69c sd a5,8(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:124 next->preceding = newnode->size; - c00538c0: 659c ld a5,8(a1) - c00538c2: e29c sd a5,0(a3) - c00538c4: bfd1 j c0053898 + c0053a90: 659c ld a5,8(a1) + c0053a92: e29c sd a5,0(a3) + c0053a94: bfd1 j c0053a68 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_shrinkchunk.c:130 } - c00538c6: 60a2 ld ra,8(sp) - c00538c8: 0141 addi sp,sp,16 - c00538ca: 8082 ret + c0053a96: 60a2 ld ra,8(sp) + c0053a98: 0141 addi sp,sp,16 + c0053a9a: 8082 ret -00000000c00538cc : +00000000c0053a9c : mm_malloc(): /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:152 * 8-byte alignment of the allocated data is assured. @@ -232321,13 +232519,13 @@ mm_malloc(): FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) { - c00538cc: 1101 addi sp,sp,-32 - c00538ce: e426 sd s1,8(sp) - c00538d0: ec06 sd ra,24(sp) - c00538d2: e822 sd s0,16(sp) - c00538d4: e04a sd s2,0(sp) - c00538d6: 47e1 li a5,24 - c00538d8: 84aa mv s1,a0 + c0053a9c: 1101 addi sp,sp,-32 + c0053a9e: e426 sd s1,8(sp) + c0053aa0: ec06 sd ra,24(sp) + c0053aa2: e822 sd s0,16(sp) + c0053aa4: e04a sd s2,0(sp) + c0053aa6: 47e1 li a5,24 + c0053aa8: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:176 /* Adjust the size to account for (1) the size of the allocated node and * (2) to make sure that it is aligned with MM_ALIGN and its size is at @@ -232335,19 +232533,19 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) */ if (size < MM_MIN_CHUNK - MM_ALLOCNODE_OVERHEAD) - c00538da: 00f5f363 bgeu a1,a5,c00538e0 - c00538de: 45e1 li a1,24 + c0053aaa: 00f5f363 bgeu a1,a5,c0053ab0 + c0053aae: 45e1 li a1,24 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:181 { size = MM_MIN_CHUNK - MM_ALLOCNODE_OVERHEAD; } alignsize = MM_ALIGN_UP(size + MM_ALLOCNODE_OVERHEAD); - c00538e0: 01758913 addi s2,a1,23 - c00538e4: ff097913 andi s2,s2,-16 + c0053ab0: 01758913 addi s2,a1,23 + c0053ab4: ff097913 andi s2,s2,-16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:182 if (alignsize < size) - c00538e8: 10b96363 bltu s2,a1,c00539ee + c0053ab8: 10b96363 bltu s2,a1,c0053bbe /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:193 (discriminator 2) DEBUGASSERT(alignsize >= MM_ALIGN); @@ -232355,12 +232553,12 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) /* We need to hold the MM mutex while we muck with the nodelist. */ DEBUGVERIFY(mm_lock(heap)); - c00538ec: 8526 mv a0,s1 - c00538ee: e39ff0ef jal ra,c0053726 - c00538f2: 00055b63 bgez a0,c0053908 + c0053abc: 8526 mv a0,s1 + c0053abe: e39ff0ef jal ra,c00538f6 + c0053ac2: 00055b63 bgez a0,c0053ad8 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:193 (discriminator 1) - c00538f6: 4601 li a2,0 - c00538f8: 0c100593 li a1,193 + c0053ac6: 4601 li a2,0 + c0053ac8: 0c100593 li a1,193 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:206 (discriminator 1) * other mm_nodelist[] entries. */ @@ -232368,20 +232566,20 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) for (node = heap->mm_nodelist[ndx].flink; node; node = node->flink) { DEBUGASSERT(node->blink->flink == node); - c00538fc: 0001f517 auipc a0,0x1f - c0053900: 1d450513 addi a0,a0,468 # c0072ad0 <__FUNCTION__.1+0x80> - c0053904: 114000ef jal ra,c0053a18 <__assert> + c0053acc: 0001f517 auipc a0,0x1f + c0053ad0: 26450513 addi a0,a0,612 # c0072d30 <__FUNCTION__.1+0x80> + c0053ad4: 114000ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:197 (discriminator 2) ndx = mm_size2ndx(alignsize); - c0053908: 854a mv a0,s2 - c005390a: edbff0ef jal ra,c00537e4 + c0053ad8: 854a mv a0,s2 + c0053ada: edbff0ef jal ra,c00539b4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:204 (discriminator 2) for (node = heap->mm_nodelist[ndx].flink; node; node = node->flink) - c005390e: 0516 slli a0,a0,0x5 - c0053910: 9526 add a0,a0,s1 - c0053912: 6d20 ld s0,88(a0) + c0053ade: 0516 slli a0,a0,0x5 + c0053ae0: 9526 add a0,a0,s1 + c0053ae2: 6d20 ld s0,88(a0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:204 (discriminator 1) - c0053914: e80d bnez s0,c0053946 + c0053ae4: e80d bnez s0,c0053b16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:301 (discriminator 4) node->size |= MM_ALLOC_BIT; ret = (FAR void *)((FAR char *)node + MM_SIZEOF_ALLOCNODE); @@ -232389,12 +232587,12 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) DEBUGASSERT(ret == NULL || mm_heapmember(heap, ret)); mm_unlock(heap); - c0053916: 8526 mv a0,s1 - c0053918: e33ff0ef jal ra,c005374a + c0053ae6: 8526 mv a0,s1 + c0053ae8: e33ff0ef jal ra,c005391a /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:303 (discriminator 4) if (ret) - c005391c: c045 beqz s0,c00539bc + c0053aec: c045 beqz s0,c0053b8c /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:311 kasan_unpoison(ret, mm_malloc_size(heap, ret)); #ifdef CONFIG_MM_FILL_ALLOCATIONS @@ -232402,14 +232600,14 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) #endif #ifdef CONFIG_DEBUG_MM minfo("Allocated %p, size %zu\n", ret, alignsize); - c005391e: 874a mv a4,s2 - c0053920: 86a2 mv a3,s0 - c0053922: 0001f617 auipc a2,0x1f - c0053926: 21660613 addi a2,a2,534 # c0072b38 <__FUNCTION__.0> - c005392a: 0001f597 auipc a1,0x1f - c005392e: 1be58593 addi a1,a1,446 # c0072ae8 <__FUNCTION__.1+0x98> - c0053932: 4519 li a0,6 - c0053934: 0e6030ef jal ra,c0056a1a + c0053aee: 874a mv a4,s2 + c0053af0: 86a2 mv a3,s0 + c0053af2: 0001f617 auipc a2,0x1f + c0053af6: 2a660613 addi a2,a2,678 # c0072d98 <__FUNCTION__.0> + c0053afa: 0001f597 auipc a1,0x1f + c0053afe: 24e58593 addi a1,a1,590 # c0072d48 <__FUNCTION__.1+0x98> + c0053b02: 4519 li a0,6 + c0053b04: 0e6030ef jal ra,c0056bea /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:364 PANIC(); #endif @@ -232417,169 +232615,169 @@ FAR void *mm_malloc(FAR struct mm_heap_s *heap, size_t size) #endif DEBUGASSERT(ret == NULL || ((uintptr_t)ret) % MM_ALIGN == 0); - c0053938: 00f47793 andi a5,s0,15 - c005393c: c3d5 beqz a5,c00539e0 + c0053b08: 00f47793 andi a5,s0,15 + c0053b0c: c3d5 beqz a5,c0053bb0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:364 (discriminator 3) - c005393e: 4601 li a2,0 - c0053940: 16c00593 li a1,364 - c0053944: bf65 j c00538fc + c0053b0e: 4601 li a2,0 + c0053b10: 16c00593 li a1,364 + c0053b14: bf65 j c0053acc /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:206 DEBUGASSERT(node->blink->flink == node); - c0053946: 6c14 ld a3,24(s0) - c0053948: 6a9c ld a5,16(a3) - c005394a: 00878663 beq a5,s0,c0053956 + c0053b16: 6c14 ld a3,24(s0) + c0053b18: 6a9c ld a5,16(a3) + c0053b1a: 00878663 beq a5,s0,c0053b26 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:206 (discriminator 1) - c005394e: 4601 li a2,0 - c0053950: 0ce00593 li a1,206 - c0053954: b765 j c00538fc + c0053b1e: 4601 li a2,0 + c0053b20: 0ce00593 li a1,206 + c0053b24: b765 j c0053acc /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:207 (discriminator 2) nodesize = MM_SIZEOF_NODE(node); - c0053956: 641c ld a5,8(s0) + c0053b26: 641c ld a5,8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:204 (discriminator 2) for (node = heap->mm_nodelist[ndx].flink; node; node = node->flink) - c0053958: 6818 ld a4,16(s0) + c0053b28: 6818 ld a4,16(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:207 (discriminator 2) nodesize = MM_SIZEOF_NODE(node); - c005395a: 9bf1 andi a5,a5,-4 + c0053b2a: 9bf1 andi a5,a5,-4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:208 (discriminator 2) if (nodesize >= alignsize) - c005395c: 0927fb63 bgeu a5,s2,c00539f2 + c0053b2c: 0927fb63 bgeu a5,s2,c0053bc2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:204 for (node = heap->mm_nodelist[ndx].flink; node; node = node->flink) - c0053960: 843a mv s0,a4 - c0053962: bf4d j c0053914 + c0053b30: 843a mv s0,a4 + c0053b32: bf4d j c0053ae4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:255 (discriminator 4) remaining = nodesize - alignsize; - c0053964: 412787b3 sub a5,a5,s2 + c0053b34: 412787b3 sub a5,a5,s2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:256 (discriminator 4) if (remaining >= MM_MIN_CHUNK) - c0053968: 467d li a2,31 - c005396a: 04f67663 bgeu a2,a5,c00539b6 + c0053b38: 467d li a2,31 + c0053b3a: 04f67663 bgeu a2,a5,c0053b86 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:260 remainder = (FAR struct mm_freenode_s *) - c005396e: 012405b3 add a1,s0,s2 + c0053b3e: 012405b3 add a1,s0,s2 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:263 remainder->size = remaining; - c0053972: e59c sd a5,8(a1) + c0053b42: e59c sd a5,8(a1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:267 node->size = alignsize | (node->size & MM_MASK_BIT); - c0053974: 6418 ld a4,8(s0) + c0053b44: 6418 ld a4,8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:275 mm_addfreechunk(heap, remainder); - c0053976: 8526 mv a0,s1 + c0053b46: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:267 node->size = alignsize | (node->size & MM_MASK_BIT); - c0053978: 8b0d andi a4,a4,3 - c005397a: 01276733 or a4,a4,s2 - c005397e: e418 sd a4,8(s0) + c0053b48: 8b0d andi a4,a4,3 + c0053b4a: 01276733 or a4,a4,s2 + c0053b4e: e418 sd a4,8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:271 next->preceding = remaining; - c0053980: e29c sd a5,0(a3) + c0053b50: e29c sd a5,0(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:275 mm_addfreechunk(heap, remainder); - c0053982: dedff0ef jal ra,c005376e + c0053b52: dedff0ef jal ra,c005393e /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:288 heap->mm_curused += MM_SIZEOF_NODE(node); - c0053986: 641c ld a5,8(s0) - c0053988: 7898 ld a4,48(s1) - c005398a: 9bf1 andi a5,a5,-4 - c005398c: 97ba add a5,a5,a4 + c0053b56: 641c ld a5,8(s0) + c0053b58: 7898 ld a4,48(s1) + c0053b5a: 9bf1 andi a5,a5,-4 + c0053b5c: 97ba add a5,a5,a4 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:289 if (heap->mm_curused > heap->mm_maxused) - c005398e: 7498 ld a4,40(s1) + c0053b5e: 7498 ld a4,40(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:288 heap->mm_curused += MM_SIZEOF_NODE(node); - c0053990: f89c sd a5,48(s1) + c0053b60: f89c sd a5,48(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:289 if (heap->mm_curused > heap->mm_maxused) - c0053992: 00f77363 bgeu a4,a5,c0053998 + c0053b62: 00f77363 bgeu a4,a5,c0053b68 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:291 heap->mm_maxused = heap->mm_curused; - c0053996: f49c sd a5,40(s1) + c0053b66: f49c sd a5,40(s1) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:296 node->size |= MM_ALLOC_BIT; - c0053998: 641c ld a5,8(s0) + c0053b68: 641c ld a5,8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:297 ret = (FAR void *)((FAR char *)node + MM_SIZEOF_ALLOCNODE); - c005399a: 0441 addi s0,s0,16 + c0053b6a: 0441 addi s0,s0,16 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:300 DEBUGASSERT(ret == NULL || mm_heapmember(heap, ret)); - c005399c: 8526 mv a0,s1 + c0053b6c: 8526 mv a0,s1 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:296 node->size |= MM_ALLOC_BIT; - c005399e: 0017e793 ori a5,a5,1 - c00539a2: fef43c23 sd a5,-8(s0) + c0053b6e: 0017e793 ori a5,a5,1 + c0053b72: fef43c23 sd a5,-8(s0) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:300 DEBUGASSERT(ret == NULL || mm_heapmember(heap, ret)); - c00539a6: 85a2 mv a1,s0 - c00539a8: bd9ff0ef jal ra,c0053580 - c00539ac: f52d bnez a0,c0053916 + c0053b76: 85a2 mv a1,s0 + c0053b78: bd9ff0ef jal ra,c0053750 + c0053b7c: f52d bnez a0,c0053ae6 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:300 (discriminator 3) - c00539ae: 4601 li a2,0 - c00539b0: 12c00593 li a1,300 - c00539b4: b7a1 j c00538fc + c0053b7e: 4601 li a2,0 + c0053b80: 12c00593 li a1,300 + c0053b84: b7a1 j c0053acc /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:283 next->size &= ~MM_PREVFREE_BIT; - c00539b6: 9b75 andi a4,a4,-3 - c00539b8: e698 sd a4,8(a3) - c00539ba: b7f1 j c0053986 + c0053b86: 9b75 andi a4,a4,-3 + c0053b88: e698 sd a4,8(a3) + c0053b8a: b7f1 j c0053b56 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:325 else if (MM_INTERNAL_HEAP(heap)) - c00539bc: 00c017b7 lui a5,0xc01 - c00539c0: 07a2 slli a5,a5,0x8 - c00539c2: 679c ld a5,8(a5) - c00539c4: 02979563 bne a5,s1,c00539ee + c0053b8c: 00c017b7 lui a5,0xc01 + c0053b90: 07a2 slli a5,a5,0x8 + c0053b92: 679c ld a5,8(a5) + c0053b94: 02979563 bne a5,s1,c0053bbe /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:337 mwarn("WARNING: Allocation failed, size %zu\n", alignsize); - c00539c8: 86ca mv a3,s2 - c00539ca: 0001f617 auipc a2,0x1f - c00539ce: 16e60613 addi a2,a2,366 # c0072b38 <__FUNCTION__.0> - c00539d2: 0001f597 auipc a1,0x1f - c00539d6: 13658593 addi a1,a1,310 # c0072b08 <__FUNCTION__.1+0xb8> - c00539da: 4511 li a0,4 - c00539dc: 03e030ef jal ra,c0056a1a + c0053b98: 86ca mv a3,s2 + c0053b9a: 0001f617 auipc a2,0x1f + c0053b9e: 1fe60613 addi a2,a2,510 # c0072d98 <__FUNCTION__.0> + c0053ba2: 0001f597 auipc a1,0x1f + c0053ba6: 1c658593 addi a1,a1,454 # c0072d68 <__FUNCTION__.1+0xb8> + c0053baa: 4511 li a0,4 + c0053bac: 03e030ef jal ra,c0056bea /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:366 return ret; } - c00539e0: 60e2 ld ra,24(sp) - c00539e2: 8522 mv a0,s0 - c00539e4: 6442 ld s0,16(sp) - c00539e6: 64a2 ld s1,8(sp) - c00539e8: 6902 ld s2,0(sp) - c00539ea: 6105 addi sp,sp,32 - c00539ec: 8082 ret + c0053bb0: 60e2 ld ra,24(sp) + c0053bb2: 8522 mv a0,s0 + c0053bb4: 6442 ld s0,16(sp) + c0053bb6: 64a2 ld s1,8(sp) + c0053bb8: 6902 ld s2,0(sp) + c0053bba: 6105 addi sp,sp,32 + c0053bbc: 8082 ret /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:186 return NULL; - c00539ee: 4401 li s0,0 - c00539f0: bfc5 j c00539e0 + c0053bbe: 4401 li s0,0 + c0053bc0: bfc5 j c0053bb0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:230 node->blink->flink = node->flink; - c00539f2: ea98 sd a4,16(a3) + c0053bc2: ea98 sd a4,16(a3) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:231 if (node->flink) - c00539f4: c319 beqz a4,c00539fa + c0053bc4: c319 beqz a4,c0053bca /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:233 node->flink->blink = node->blink; - c00539f6: 6c14 ld a3,24(s0) - c00539f8: ef14 sd a3,24(a4) + c0053bc6: 6c14 ld a3,24(s0) + c0053bc8: ef14 sd a3,24(a4) /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:238 next = (FAR struct mm_freenode_s *)(((FAR char *)node) + nodesize); - c00539fa: 00f406b3 add a3,s0,a5 + c0053bca: 00f406b3 add a3,s0,a5 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:245 DEBUGASSERT(MM_NODE_IS_ALLOC(next) && MM_PREVNODE_IS_FREE(next) && - c00539fe: 6698 ld a4,8(a3) - c0053a00: 460d li a2,3 - c0053a02: 00377593 andi a1,a4,3 - c0053a06: 00c59563 bne a1,a2,c0053a10 + c0053bce: 6698 ld a4,8(a3) + c0053bd0: 460d li a2,3 + c0053bd2: 00377593 andi a1,a4,3 + c0053bd6: 00c59563 bne a1,a2,c0053be0 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:245 (discriminator 2) - c0053a0a: 6290 ld a2,0(a3) - c0053a0c: f4f60ce3 beq a2,a5,c0053964 + c0053bda: 6290 ld a2,0(a3) + c0053bdc: f4f60ce3 beq a2,a5,c0053b34 /Users/Luppy/riscv/nuttx/mm/mm_heap/mm_malloc.c:245 (discriminator 3) - c0053a10: 4601 li a2,0 - c0053a12: 0f500593 li a1,245 - c0053a16: b5dd j c00538fc + c0053be0: 4601 li a2,0 + c0053be2: 0f500593 li a1,245 + c0053be6: b5dd j c0053acc -00000000c0053a18 <__assert>: +00000000c0053be8 <__assert>: __assert(): /Users/Luppy/riscv/nuttx/libs/libc/assert/lib_assert.c:35 /**************************************************************************** @@ -232588,21 +232786,21 @@ __assert(): void __assert(FAR const char *filename, int linenum, FAR const char *msg) { - c0053a18: 1141 addi sp,sp,-16 + c0053be8: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/assert/lib_assert.c:36 _assert(filename, linenum, msg, NULL); - c0053a1a: 4681 li a3,0 + c0053bea: 4681 li a3,0 /Users/Luppy/riscv/nuttx/libs/libc/assert/lib_assert.c:35 { - c0053a1c: e406 sd ra,8(sp) + c0053bec: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/assert/lib_assert.c:36 _assert(filename, linenum, msg, NULL); - c0053a1e: 063030ef jal ra,c0057280 <_assert> + c0053bee: 063030ef jal ra,c0057450 <_assert> /Users/Luppy/riscv/nuttx/libs/libc/assert/lib_assert.c:37 abort(); - c0053a22: 5e9010ef jal ra,c005580a + c0053bf2: 5e9010ef jal ra,c00559da -00000000c0053a26 : +00000000c0053bf6 : opendir(): /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:72 * ENOTDIR - 'path' is not a directory. @@ -232611,32 +232809,32 @@ opendir(): FAR DIR *opendir(FAR const char *path) { - c0053a26: 1101 addi sp,sp,-32 - c0053a28: e426 sd s1,8(sp) - c0053a2a: 84aa mv s1,a0 + c0053bf6: 1101 addi sp,sp,-32 + c0053bf8: e426 sd s1,8(sp) + c0053bfa: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:76 FAR DIR *dir; int fd; dir = lib_malloc(sizeof(*dir)); - c0053a2c: 02800513 li a0,40 + c0053bfc: 02800513 li a0,40 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:72 { - c0053a30: e822 sd s0,16(sp) - c0053a32: ec06 sd ra,24(sp) + c0053c00: e822 sd s0,16(sp) + c0053c02: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:76 dir = lib_malloc(sizeof(*dir)); - c0053a34: bd0ff0ef jal ra,c0052e04 - c0053a38: 842a mv s0,a0 + c0053c04: bd0ff0ef jal ra,c0052fd4 + c0053c08: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:77 if (dir == NULL) - c0053a3a: e919 bnez a0,c0053a50 + c0053c0a: e919 bnez a0,c0053c20 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:79 { set_errno(ENOMEM); - c0053a3c: 098000ef jal ra,c0053ad4 <__errno> - c0053a40: 47b1 li a5,12 - c0053a42: c11c sw a5,0(a0) + c0053c0c: 098000ef jal ra,c0053ca4 <__errno> + c0053c10: 47b1 li a5,12 + c0053c12: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:99 android_fdsan_create_owner_tag(ANDROID_FDSAN_OWNER_TYPE_DIR, (uintptr_t)dir)); @@ -232644,37 +232842,37 @@ FAR DIR *opendir(FAR const char *path) return dir; } - c0053a44: 60e2 ld ra,24(sp) - c0053a46: 8522 mv a0,s0 - c0053a48: 6442 ld s0,16(sp) - c0053a4a: 64a2 ld s1,8(sp) - c0053a4c: 6105 addi sp,sp,32 - c0053a4e: 8082 ret + c0053c14: 60e2 ld ra,24(sp) + c0053c16: 8522 mv a0,s0 + c0053c18: 6442 ld s0,16(sp) + c0053c1a: 64a2 ld s1,8(sp) + c0053c1c: 6105 addi sp,sp,32 + c0053c1e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:83 fd = open(path, O_RDONLY | O_DIRECTORY | O_CLOEXEC); - c0053a50: 6585 lui a1,0x1 - c0053a52: c0158593 addi a1,a1,-1023 # c01 <__clzdi2-0xbffff3ff> - c0053a56: 8526 mv a0,s1 - c0053a58: 251030ef jal ra,c00574a8 + c0053c20: 6585 lui a1,0x1 + c0053c22: c0158593 addi a1,a1,-1023 # c01 <__clzdi2-0xbffff3ff> + c0053c26: 8526 mv a0,s1 + c0053c28: 251030ef jal ra,c0057678 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:84 if (fd < 0) - c0053a5c: 00055763 bgez a0,c0053a6a + c0053c2c: 00055763 bgez a0,c0053c3a /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:86 lib_free(dir); - c0053a60: 8522 mv a0,s0 - c0053a62: b96ff0ef jal ra,c0052df8 + c0053c30: 8522 mv a0,s0 + c0053c32: b96ff0ef jal ra,c0052fc8 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:87 return NULL; - c0053a66: 4401 li s0,0 - c0053a68: bff1 j c0053a44 + c0053c36: 4401 li s0,0 + c0053c38: bff1 j c0053c14 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:90 dir->fd = fd; - c0053a6a: c008 sw a0,0(s0) + c0053c3a: c008 sw a0,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_opendir.c:98 return dir; - c0053a6c: bfe1 j c0053a44 + c0053c3c: bfe1 j c0053c14 -00000000c0053a6e : +00000000c0053c3e : closedir(): /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:62 * returned, and errno is set appropriately. @@ -232683,10 +232881,10 @@ closedir(): int closedir(FAR DIR *dirp) { - c0053a6e: 1101 addi sp,sp,-32 - c0053a70: ec06 sd ra,24(sp) - c0053a72: e822 sd s0,16(sp) - c0053a74: e426 sd s1,8(sp) + c0053c3e: 1101 addi sp,sp,-32 + c0053c40: ec06 sd ra,24(sp) + c0053c42: e822 sd s0,16(sp) + c0053c44: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:68 int ret; #ifdef CONFIG_FDSAN @@ -232694,16 +232892,16 @@ int closedir(FAR DIR *dirp) #endif if (dirp == NULL) - c0053a76: ed01 bnez a0,c0053a8e + c0053c46: ed01 bnez a0,c0053c5e /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:70 { set_errno(EBADF); - c0053a78: 05c000ef jal ra,c0053ad4 <__errno> - c0053a7c: 47a5 li a5,9 - c0053a7e: c11c sw a5,0(a0) + c0053c48: 05c000ef jal ra,c0053ca4 <__errno> + c0053c4c: 47a5 li a5,9 + c0053c4e: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:71 return -1; - c0053a80: 54fd li s1,-1 + c0053c50: 54fd li s1,-1 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:84 ret = close(dirp->fd); #endif @@ -232711,27 +232909,27 @@ int closedir(FAR DIR *dirp) lib_free(dirp); return ret; } - c0053a82: 60e2 ld ra,24(sp) - c0053a84: 6442 ld s0,16(sp) - c0053a86: 8526 mv a0,s1 - c0053a88: 64a2 ld s1,8(sp) - c0053a8a: 6105 addi sp,sp,32 - c0053a8c: 8082 ret - c0053a8e: 842a mv s0,a0 + c0053c52: 60e2 ld ra,24(sp) + c0053c54: 6442 ld s0,16(sp) + c0053c56: 8526 mv a0,s1 + c0053c58: 64a2 ld s1,8(sp) + c0053c5a: 6105 addi sp,sp,32 + c0053c5c: 8082 ret + c0053c5e: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:79 ret = close(dirp->fd); - c0053a90: 4108 lw a0,0(a0) - c0053a92: 051030ef jal ra,c00572e2 - c0053a96: 84aa mv s1,a0 + c0053c60: 4108 lw a0,0(a0) + c0053c62: 051030ef jal ra,c00574b2 + c0053c66: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:82 lib_free(dirp); - c0053a98: 8522 mv a0,s0 - c0053a9a: b5eff0ef jal ra,c0052df8 + c0053c68: 8522 mv a0,s0 + c0053c6a: b5eff0ef jal ra,c0052fc8 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_closedir.c:83 return ret; - c0053a9e: b7d5 j c0053a82 + c0053c6e: b7d5 j c0053c52 -00000000c0053aa0 : +00000000c0053c70 : readdir(): /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:59 * EBADF - Invalid directory stream descriptor dir @@ -232740,21 +232938,21 @@ readdir(): FAR struct dirent *readdir(DIR *dirp) { - c0053aa0: 1141 addi sp,sp,-16 - c0053aa2: e022 sd s0,0(sp) - c0053aa4: e406 sd ra,8(sp) - c0053aa6: 842a mv s0,a0 + c0053c70: 1141 addi sp,sp,-16 + c0053c72: e022 sd s0,0(sp) + c0053c74: e406 sd ra,8(sp) + c0053c76: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:62 int ret; if (!dirp) - c0053aa8: e911 bnez a0,c0053abc + c0053c78: e911 bnez a0,c0053c8c /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:64 { set_errno(EBADF); - c0053aaa: 02a000ef jal ra,c0053ad4 <__errno> - c0053aae: 47a5 li a5,9 - c0053ab0: c11c sw a5,0(a0) + c0053c7a: 02a000ef jal ra,c0053ca4 <__errno> + c0053c7e: 47a5 li a5,9 + c0053c80: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:75 { return NULL; @@ -232762,28 +232960,28 @@ FAR struct dirent *readdir(DIR *dirp) return &dirp->entry; } - c0053ab2: 60a2 ld ra,8(sp) - c0053ab4: 8522 mv a0,s0 - c0053ab6: 6402 ld s0,0(sp) - c0053ab8: 0141 addi sp,sp,16 - c0053aba: 8082 ret + c0053c82: 60a2 ld ra,8(sp) + c0053c84: 8522 mv a0,s0 + c0053c86: 6402 ld s0,0(sp) + c0053c88: 0141 addi sp,sp,16 + c0053c8a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:68 ret = read(dirp->fd, &dirp->entry, sizeof(struct dirent)); - c0053abc: 4108 lw a0,0(a0) - c0053abe: 0411 addi s0,s0,4 - c0053ac0: 02200613 li a2,34 - c0053ac4: 85a2 mv a1,s0 - c0053ac6: 273030ef jal ra,c0057538 + c0053c8c: 4108 lw a0,0(a0) + c0053c8e: 0411 addi s0,s0,4 + c0053c90: 02200613 li a2,34 + c0053c94: 85a2 mv a1,s0 + c0053c96: 273030ef jal ra,c0057708 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:69 if (ret <= 0) - c0053aca: 2501 sext.w a0,a0 - c0053acc: fea043e3 bgtz a0,c0053ab2 + c0053c9a: 2501 sext.w a0,a0 + c0053c9c: fea043e3 bgtz a0,c0053c82 /Users/Luppy/riscv/nuttx/libs/libc/dirent/lib_readdir.c:71 return NULL; - c0053ad0: 4401 li s0,0 - c0053ad2: b7c5 j c0053ab2 + c0053ca0: 4401 li s0,0 + c0053ca2: b7c5 j c0053c82 -00000000c0053ad4 <__errno>: +00000000c0053ca4 <__errno>: __errno(): /Users/Luppy/riscv/nuttx/libs/libc/errno/lib_errno.c:59 @@ -232792,7 +232990,7 @@ FAR int *__errno(void) /* Get the TLS tls_info_s structure instance for this thread */ FAR struct tls_info_s *tlsinfo = tls_get_info(); - c0053ad4: 7779 lui a4,0xffffe + c0053ca4: 7779 lui a4,0xffffe up_getsp(): /Users/Luppy/riscv/nuttx/include/arch/irq.h:601 /* Return the current value of the stack pointer */ @@ -232801,25 +232999,25 @@ static inline uintptr_t up_getsp(void) { register uintptr_t sp; __asm__ - c0053ad6: 878a mv a5,sp + c0053ca6: 878a mv a5,sp __errno(): /Users/Luppy/riscv/nuttx/libs/libc/errno/lib_errno.c:59 - c0053ad8: 8ff9 and a5,a5,a4 + c0053ca8: 8ff9 and a5,a5,a4 /Users/Luppy/riscv/nuttx/libs/libc/errno/lib_errno.c:63 /* And return the return reference to the error number */ return tlsinfo ? &tlsinfo->tl_errno : &g_errno; - c0053ada: 000ad517 auipc a0,0xad - c0053ade: 63e50513 addi a0,a0,1598 # c0101118 - c0053ae2: c399 beqz a5,c0053ae8 <__errno+0x14> + c0053caa: 000ad517 auipc a0,0xad + c0053cae: 46e50513 addi a0,a0,1134 # c0101118 + c0053cb2: c399 beqz a5,c0053cb8 <__errno+0x14> /Users/Luppy/riscv/nuttx/libs/libc/errno/lib_errno.c:63 (discriminator 1) - c0053ae4: 00c78513 addi a0,a5,12 # c0100c <__clzdi2-0xbf3feff4> + c0053cb4: 00c78513 addi a0,a5,12 # c0100c <__clzdi2-0xbf3feff4> /Users/Luppy/riscv/nuttx/libs/libc/errno/lib_errno.c:64 } - c0053ae8: 8082 ret + c0053cb8: 8082 ret -00000000c0053aea : +00000000c0053cba : nxmutex_init(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:84 * returned on success. A negated errno value is returned on failure. @@ -232828,53 +233026,53 @@ nxmutex_init(): int nxmutex_init(FAR mutex_t *mutex) { - c0053aea: 1101 addi sp,sp,-32 + c0053cba: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:85 int ret = nxsem_init(&mutex->sem, 0, 1); - c0053aec: 4605 li a2,1 - c0053aee: 4581 li a1,0 + c0053cbc: 4605 li a2,1 + c0053cbe: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:84 { - c0053af0: e822 sd s0,16(sp) - c0053af2: e426 sd s1,8(sp) - c0053af4: ec06 sd ra,24(sp) - c0053af6: 84aa mv s1,a0 + c0053cc0: e822 sd s0,16(sp) + c0053cc2: e426 sd s1,8(sp) + c0053cc4: ec06 sd ra,24(sp) + c0053cc6: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:85 int ret = nxsem_init(&mutex->sem, 0, 1); - c0053af8: 4f0000ef jal ra,c0053fe8 - c0053afc: 842a mv s0,a0 + c0053cc8: 4f0000ef jal ra,c00541b8 + c0053ccc: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:87 if (ret < 0) - c0053afe: 00054863 bltz a0,c0053b0e + c0053cce: 00054863 bltz a0,c0053cde /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:92 { return ret; } mutex->holder = NXMUTEX_NO_HOLDER; - c0053b02: 57fd li a5,-1 - c0053b04: cc9c sw a5,24(s1) + c0053cd2: 57fd li a5,-1 + c0053cd4: cc9c sw a5,24(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:96 #ifdef CONFIG_PRIORITY_INHERITANCE nxsem_set_protocol(&mutex->sem, SEM_TYPE_MUTEX | SEM_PRIO_INHERIT); #else nxsem_set_protocol(&mutex->sem, SEM_TYPE_MUTEX); - c0053b06: 4591 li a1,4 - c0053b08: 8526 mv a0,s1 - c0053b0a: 550000ef jal ra,c005405a + c0053cd6: 4591 li a1,4 + c0053cd8: 8526 mv a0,s1 + c0053cda: 550000ef jal ra,c005422a /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:99 #endif return ret; } - c0053b0e: 60e2 ld ra,24(sp) - c0053b10: 8522 mv a0,s0 - c0053b12: 6442 ld s0,16(sp) - c0053b14: 64a2 ld s1,8(sp) - c0053b16: 6105 addi sp,sp,32 - c0053b18: 8082 ret + c0053cde: 60e2 ld ra,24(sp) + c0053ce0: 8522 mv a0,s0 + c0053ce2: 6442 ld s0,16(sp) + c0053ce4: 64a2 ld s1,8(sp) + c0053ce6: 6105 addi sp,sp,32 + c0053ce8: 8082 ret -00000000c0053b1a : +00000000c0053cea : nxmutex_destroy(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:121 * returned on success. A negated errno value is returned on failure. @@ -232883,34 +233081,34 @@ nxmutex_destroy(): int nxmutex_destroy(FAR mutex_t *mutex) { - c0053b1a: 1141 addi sp,sp,-16 - c0053b1c: e022 sd s0,0(sp) - c0053b1e: e406 sd ra,8(sp) - c0053b20: 842a mv s0,a0 + c0053cea: 1141 addi sp,sp,-16 + c0053cec: e022 sd s0,0(sp) + c0053cee: e406 sd ra,8(sp) + c0053cf0: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:122 int ret = nxsem_destroy(&mutex->sem); - c0053b22: 14f030ef jal ra,c0057470 + c0053cf2: 14f030ef jal ra,c0057640 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:124 if (ret < 0) - c0053b26: 00054463 bltz a0,c0053b2e + c0053cf6: 00054463 bltz a0,c0053cfe /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:129 { return ret; } mutex->holder = NXMUTEX_NO_HOLDER; - c0053b2a: 57fd li a5,-1 - c0053b2c: cc1c sw a5,24(s0) + c0053cfa: 57fd li a5,-1 + c0053cfc: cc1c sw a5,24(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:131 return ret; } - c0053b2e: 60a2 ld ra,8(sp) - c0053b30: 6402 ld s0,0(sp) - c0053b32: 0141 addi sp,sp,16 - c0053b34: 8082 ret + c0053cfe: 60a2 ld ra,8(sp) + c0053d00: 6402 ld s0,0(sp) + c0053d02: 0141 addi sp,sp,16 + c0053d04: 8082 ret -00000000c0053b36 : +00000000c0053d06 : nxmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:148 * Return Value: @@ -232919,27 +233117,27 @@ nxmutex_is_hold(): bool nxmutex_is_hold(FAR mutex_t *mutex) { - c0053b36: 1141 addi sp,sp,-16 - c0053b38: e406 sd ra,8(sp) - c0053b3a: e022 sd s0,0(sp) + c0053d06: 1141 addi sp,sp,-16 + c0053d08: e406 sd ra,8(sp) + c0053d0a: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:149 return mutex->holder == _SCHED_GETTID(); - c0053b3c: 4d00 lw s0,24(a0) - c0053b3e: 047030ef jal ra,c0057384 + c0053d0c: 4d00 lw s0,24(a0) + c0053d0e: 047030ef jal ra,c0057554 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:150 } - c0053b42: 60a2 ld ra,8(sp) + c0053d12: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:149 return mutex->holder == _SCHED_GETTID(); - c0053b44: 40a40533 sub a0,s0,a0 + c0053d14: 40a40533 sub a0,s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:150 } - c0053b48: 6402 ld s0,0(sp) - c0053b4a: 00153513 seqz a0,a0 - c0053b4e: 0141 addi sp,sp,16 - c0053b50: 8082 ret + c0053d18: 6402 ld s0,0(sp) + c0053d1a: 00153513 seqz a0,a0 + c0053d1e: 0141 addi sp,sp,16 + c0053d20: 8082 ret -00000000c0053b52 : +00000000c0053d22 : nxmutex_is_locked(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:166 * Return Value: @@ -232948,37 +233146,37 @@ nxmutex_is_locked(): bool nxmutex_is_locked(FAR mutex_t *mutex) { - c0053b52: 1101 addi sp,sp,-32 + c0053d22: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:170 int cnt; int ret; ret = nxsem_get_value(&mutex->sem, &cnt); - c0053b54: 006c addi a1,sp,12 + c0053d24: 006c addi a1,sp,12 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:166 { - c0053b56: ec06 sd ra,24(sp) + c0053d26: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:170 ret = nxsem_get_value(&mutex->sem, &cnt); - c0053b58: 560000ef jal ra,c00540b8 + c0053d28: 560000ef jal ra,c0054288 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:172 return ret >= 0 && cnt < 1; - c0053b5c: 00054863 bltz a0,c0053b6c + c0053d2c: 00054863 bltz a0,c0053d3c /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:172 (discriminator 1) - c0053b60: 4532 lw a0,12(sp) - c0053b62: 00152513 slti a0,a0,1 + c0053d30: 4532 lw a0,12(sp) + c0053d32: 00152513 slti a0,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:173 (discriminator 6) } - c0053b66: 60e2 ld ra,24(sp) - c0053b68: 6105 addi sp,sp,32 - c0053b6a: 8082 ret + c0053d36: 60e2 ld ra,24(sp) + c0053d38: 6105 addi sp,sp,32 + c0053d3a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:172 return ret >= 0 && cnt < 1; - c0053b6c: 4501 li a0,0 - c0053b6e: bfe5 j c0053b66 + c0053d3c: 4501 li a0,0 + c0053d3e: bfe5 j c0053d36 -00000000c0053b70 : +00000000c0053d40 : nxmutex_lock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:196 * Possible returned errors: @@ -232987,19 +233185,19 @@ nxmutex_lock(): int nxmutex_lock(FAR mutex_t *mutex) { - c0053b70: 7179 addi sp,sp,-48 - c0053b72: ec26 sd s1,24(sp) - c0053b74: f406 sd ra,40(sp) - c0053b76: f022 sd s0,32(sp) - c0053b78: e84a sd s2,16(sp) - c0053b7a: e44e sd s3,8(sp) - c0053b7c: 84aa mv s1,a0 + c0053d40: 7179 addi sp,sp,-48 + c0053d42: ec26 sd s1,24(sp) + c0053d44: f406 sd ra,40(sp) + c0053d46: f022 sd s0,32(sp) + c0053d48: e84a sd s2,16(sp) + c0053d4a: e44e sd s3,8(sp) + c0053d4c: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:199 int ret; DEBUGASSERT(!nxmutex_is_hold(mutex)); - c0053b7e: fb9ff0ef jal ra,c0053b36 - c0053b82: e50d bnez a0,c0053bac + c0053d4e: fb9ff0ef jal ra,c0053d06 + c0053d52: e50d bnez a0,c0053d7c /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:210 if (ret >= 0) { @@ -233007,20 +233205,20 @@ int nxmutex_lock(FAR mutex_t *mutex) break; } else if (ret != -EINTR && ret != -ECANCELED) - c0053b84: 59f1 li s3,-4 - c0053b86: f8300913 li s2,-125 + c0053d54: 59f1 li s3,-4 + c0053d56: f8300913 li s2,-125 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:204 (discriminator 2) ret = nxsem_wait(&mutex->sem); - c0053b8a: 8526 mv a0,s1 - c0053b8c: 10f030ef jal ra,c005749a - c0053b90: 842a mv s0,a0 + c0053d5a: 8526 mv a0,s1 + c0053d5c: 10f030ef jal ra,c005766a + c0053d60: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:205 (discriminator 2) if (ret >= 0) - c0053b92: 02054663 bltz a0,c0053bbe + c0053d62: 02054663 bltz a0,c0053d8e /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:207 mutex->holder = _SCHED_GETTID(); - c0053b96: 7ee030ef jal ra,c0057384 - c0053b9a: cc88 sw a0,24(s1) + c0053d66: 7ee030ef jal ra,c0057554 + c0053d6a: cc88 sw a0,24(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:217 break; } @@ -233028,29 +233226,29 @@ int nxmutex_lock(FAR mutex_t *mutex) return ret; } - c0053b9c: 70a2 ld ra,40(sp) - c0053b9e: 8522 mv a0,s0 - c0053ba0: 7402 ld s0,32(sp) - c0053ba2: 64e2 ld s1,24(sp) - c0053ba4: 6942 ld s2,16(sp) - c0053ba6: 69a2 ld s3,8(sp) - c0053ba8: 6145 addi sp,sp,48 - c0053baa: 8082 ret + c0053d6c: 70a2 ld ra,40(sp) + c0053d6e: 8522 mv a0,s0 + c0053d70: 7402 ld s0,32(sp) + c0053d72: 64e2 ld s1,24(sp) + c0053d74: 6942 ld s2,16(sp) + c0053d76: 69a2 ld s3,8(sp) + c0053d78: 6145 addi sp,sp,48 + c0053d7a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:199 DEBUGASSERT(!nxmutex_is_hold(mutex)); - c0053bac: 4601 li a2,0 - c0053bae: 0c700593 li a1,199 - c0053bb2: 0001f517 auipc a0,0x1f - c0053bb6: f9650513 addi a0,a0,-106 # c0072b48 <__FUNCTION__.0+0x10> - c0053bba: e5fff0ef jal ra,c0053a18 <__assert> + c0053d7c: 4601 li a2,0 + c0053d7e: 0c700593 li a1,199 + c0053d82: 0001f517 auipc a0,0x1f + c0053d86: 02650513 addi a0,a0,38 # c0072da8 <__FUNCTION__.0+0x10> + c0053d8a: e5fff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:210 else if (ret != -EINTR && ret != -ECANCELED) - c0053bbe: fd3506e3 beq a0,s3,c0053b8a + c0053d8e: fd3506e3 beq a0,s3,c0053d5a /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:210 (discriminator 1) - c0053bc2: fd2504e3 beq a0,s2,c0053b8a - c0053bc6: bfd9 j c0053b9c + c0053d92: fd2504e3 beq a0,s2,c0053d5a + c0053d96: bfd9 j c0053d6c -00000000c0053bc8 : +00000000c0053d98 : nxmutex_trylock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:241 * -EAGAIN - The mutex is not available. @@ -233059,49 +233257,49 @@ nxmutex_trylock(): int nxmutex_trylock(FAR mutex_t *mutex) { - c0053bc8: 1101 addi sp,sp,-32 - c0053bca: e426 sd s1,8(sp) - c0053bcc: ec06 sd ra,24(sp) - c0053bce: e822 sd s0,16(sp) - c0053bd0: 84aa mv s1,a0 + c0053d98: 1101 addi sp,sp,-32 + c0053d9a: e426 sd s1,8(sp) + c0053d9c: ec06 sd ra,24(sp) + c0053d9e: e822 sd s0,16(sp) + c0053da0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:244 int ret; DEBUGASSERT(!nxmutex_is_hold(mutex)); - c0053bd2: f65ff0ef jal ra,c0053b36 - c0053bd6: c911 beqz a0,c0053bea - c0053bd8: 4601 li a2,0 - c0053bda: 0f400593 li a1,244 - c0053bde: 0001f517 auipc a0,0x1f - c0053be2: f6a50513 addi a0,a0,-150 # c0072b48 <__FUNCTION__.0+0x10> - c0053be6: e33ff0ef jal ra,c0053a18 <__assert> + c0053da2: f65ff0ef jal ra,c0053d06 + c0053da6: c911 beqz a0,c0053dba + c0053da8: 4601 li a2,0 + c0053daa: 0f400593 li a1,244 + c0053dae: 0001f517 auipc a0,0x1f + c0053db2: ffa50513 addi a0,a0,-6 # c0072da8 <__FUNCTION__.0+0x10> + c0053db6: e33ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:245 (discriminator 2) ret = nxsem_trywait(&mutex->sem); - c0053bea: 8526 mv a0,s1 - c0053bec: 0a1030ef jal ra,c005748c - c0053bf0: 842a mv s0,a0 + c0053dba: 8526 mv a0,s1 + c0053dbc: 0a1030ef jal ra,c005765c + c0053dc0: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:246 (discriminator 2) if (ret < 0) - c0053bf2: 00054563 bltz a0,c0053bfc + c0053dc2: 00054563 bltz a0,c0053dcc /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:251 { return ret; } mutex->holder = _SCHED_GETTID(); - c0053bf6: 78e030ef jal ra,c0057384 - c0053bfa: cc88 sw a0,24(s1) + c0053dc6: 78e030ef jal ra,c0057554 + c0053dca: cc88 sw a0,24(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:253 return ret; } - c0053bfc: 60e2 ld ra,24(sp) - c0053bfe: 8522 mv a0,s0 - c0053c00: 6442 ld s0,16(sp) - c0053c02: 64a2 ld s1,8(sp) - c0053c04: 6105 addi sp,sp,32 - c0053c06: 8082 ret + c0053dcc: 60e2 ld ra,24(sp) + c0053dce: 8522 mv a0,s0 + c0053dd0: 6442 ld s0,16(sp) + c0053dd2: 64a2 ld s1,8(sp) + c0053dd4: 6105 addi sp,sp,32 + c0053dd6: 8082 ret -00000000c0053c08 : +00000000c0053dd8 : nxmutex_timedlock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:280 * EDEADLK A deadlock condition was detected. @@ -233110,11 +233308,11 @@ nxmutex_timedlock(): int nxmutex_timedlock(FAR mutex_t *mutex, unsigned int timeout) { - c0053c08: 711d addi sp,sp,-96 - c0053c0a: e8a2 sd s0,80(sp) - c0053c0c: e4a6 sd s1,72(sp) - c0053c0e: 842e mv s0,a1 - c0053c10: 84aa mv s1,a0 + c0053dd8: 711d addi sp,sp,-96 + c0053dda: e8a2 sd s0,80(sp) + c0053ddc: e4a6 sd s1,72(sp) + c0053dde: 842e mv s0,a1 + c0053de0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:286 int ret; struct timespec now; @@ -233122,27 +233320,27 @@ int nxmutex_timedlock(FAR mutex_t *mutex, unsigned int timeout) struct timespec rqtp; clock_gettime(CLOCK_MONOTONIC, &now); - c0053c12: 858a mv a1,sp - c0053c14: 4505 li a0,1 + c0053de2: 858a mv a1,sp + c0053de4: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:280 { - c0053c16: ec86 sd ra,88(sp) - c0053c18: e0ca sd s2,64(sp) - c0053c1a: fc4e sd s3,56(sp) + c0053de6: ec86 sd ra,88(sp) + c0053de8: e0ca sd s2,64(sp) + c0053dea: fc4e sd s3,56(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:286 clock_gettime(CLOCK_MONOTONIC, &now); - c0053c1c: 696030ef jal ra,c00572b2 + c0053dec: 696030ef jal ra,c0057482 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:287 clock_ticks2time(MSEC2TICK(timeout), &delay); - c0053c20: 080c addi a1,sp,16 - c0053c22: 8522 mv a0,s0 - c0053c24: 30c000ef jal ra,c0053f30 + c0053df0: 080c addi a1,sp,16 + c0053df2: 8522 mv a0,s0 + c0053df4: 30c000ef jal ra,c0054100 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:288 clock_timespec_add(&now, &delay, &rqtp); - c0053c28: 1010 addi a2,sp,32 - c0053c2a: 080c addi a1,sp,16 - c0053c2c: 850a mv a0,sp - c0053c2e: 328000ef jal ra,c0053f56 + c0053df8: 1010 addi a2,sp,32 + c0053dfa: 080c addi a1,sp,16 + c0053dfc: 850a mv a0,sp + c0053dfe: 328000ef jal ra,c0054126 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:296 do @@ -233150,44 +233348,44 @@ int nxmutex_timedlock(FAR mutex_t *mutex, unsigned int timeout) ret = nxsem_clockwait(&mutex->sem, CLOCK_MONOTONIC, &rqtp); } while (ret == -EINTR || ret == -ECANCELED); - c0053c32: 59f1 li s3,-4 - c0053c34: f8300913 li s2,-125 + c0053e02: 59f1 li s3,-4 + c0053e04: f8300913 li s2,-125 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:294 (discriminator 3) ret = nxsem_clockwait(&mutex->sem, CLOCK_MONOTONIC, &rqtp); - c0053c38: 1010 addi a2,sp,32 - c0053c3a: 4585 li a1,1 - c0053c3c: 8526 mv a0,s1 - c0053c3e: 01d030ef jal ra,c005745a - c0053c42: 842a mv s0,a0 + c0053e08: 1010 addi a2,sp,32 + c0053e0a: 4585 li a1,1 + c0053e0c: 8526 mv a0,s1 + c0053e0e: 01d030ef jal ra,c005762a + c0053e12: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:296 (discriminator 3) while (ret == -EINTR || ret == -ECANCELED); - c0053c44: ff350ae3 beq a0,s3,c0053c38 + c0053e14: ff350ae3 beq a0,s3,c0053e08 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:296 (discriminator 2) - c0053c48: ff2508e3 beq a0,s2,c0053c38 + c0053e18: ff2508e3 beq a0,s2,c0053e08 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:298 if (ret >= 0) - c0053c4c: 00054563 bltz a0,c0053c56 + c0053e1c: 00054563 bltz a0,c0053e26 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:300 { mutex->holder = _SCHED_GETTID(); - c0053c50: 734030ef jal ra,c0057384 - c0053c54: cc88 sw a0,24(s1) + c0053e20: 734030ef jal ra,c0057554 + c0053e24: cc88 sw a0,24(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:304 } return ret; } - c0053c56: 60e6 ld ra,88(sp) - c0053c58: 8522 mv a0,s0 - c0053c5a: 6446 ld s0,80(sp) - c0053c5c: 64a6 ld s1,72(sp) - c0053c5e: 6906 ld s2,64(sp) - c0053c60: 79e2 ld s3,56(sp) - c0053c62: 6125 addi sp,sp,96 - c0053c64: 8082 ret + c0053e26: 60e6 ld ra,88(sp) + c0053e28: 8522 mv a0,s0 + c0053e2a: 6446 ld s0,80(sp) + c0053e2c: 64a6 ld s1,72(sp) + c0053e2e: 6906 ld s2,64(sp) + c0053e30: 79e2 ld s3,56(sp) + c0053e32: 6125 addi sp,sp,96 + c0053e34: 8082 ret -00000000c0053c66 : +00000000c0053e36 : nxmutex_unlock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:327 * This function may be called from an interrupt handler. @@ -233196,67 +233394,67 @@ nxmutex_unlock(): int nxmutex_unlock(FAR mutex_t *mutex) { - c0053c66: 1101 addi sp,sp,-32 - c0053c68: ec06 sd ra,24(sp) - c0053c6a: e822 sd s0,16(sp) - c0053c6c: e426 sd s1,8(sp) + c0053e36: 1101 addi sp,sp,-32 + c0053e38: ec06 sd ra,24(sp) + c0053e3a: e822 sd s0,16(sp) + c0053e3c: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:330 int ret; if (nxmutex_is_reset(mutex)) - c0053c6e: 4d18 lw a4,24(a0) - c0053c70: 57f9 li a5,-2 - c0053c72: 04f70063 beq a4,a5,c0053cb2 - c0053c76: 842a mv s0,a0 + c0053e3e: 4d18 lw a4,24(a0) + c0053e40: 57f9 li a5,-2 + c0053e42: 04f70063 beq a4,a5,c0053e82 + c0053e46: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:335 { return OK; } DEBUGASSERT(nxmutex_is_hold(mutex)); - c0053c78: ebfff0ef jal ra,c0053b36 - c0053c7c: e911 bnez a0,c0053c90 - c0053c7e: 4601 li a2,0 - c0053c80: 14f00593 li a1,335 - c0053c84: 0001f517 auipc a0,0x1f - c0053c88: ec450513 addi a0,a0,-316 # c0072b48 <__FUNCTION__.0+0x10> - c0053c8c: d8dff0ef jal ra,c0053a18 <__assert> + c0053e48: ebfff0ef jal ra,c0053d06 + c0053e4c: e911 bnez a0,c0053e60 + c0053e4e: 4601 li a2,0 + c0053e50: 14f00593 li a1,335 + c0053e54: 0001f517 auipc a0,0x1f + c0053e58: f5450513 addi a0,a0,-172 # c0072da8 <__FUNCTION__.0+0x10> + c0053e5c: d8dff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:337 (discriminator 2) mutex->holder = NXMUTEX_NO_HOLDER; - c0053c90: 57fd li a5,-1 - c0053c92: cc1c sw a5,24(s0) + c0053e60: 57fd li a5,-1 + c0053e62: cc1c sw a5,24(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:339 (discriminator 2) ret = nxsem_post(&mutex->sem); - c0053c94: 8522 mv a0,s0 - c0053c96: 7e8030ef jal ra,c005747e - c0053c9a: 84aa mv s1,a0 + c0053e64: 8522 mv a0,s0 + c0053e66: 7e8030ef jal ra,c005764e + c0053e6a: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:340 (discriminator 2) if (ret < 0) - c0053c9c: 00055563 bgez a0,c0053ca6 + c0053e6c: 00055563 bgez a0,c0053e76 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:342 { mutex->holder = _SCHED_GETTID(); - c0053ca0: 6e4030ef jal ra,c0057384 - c0053ca4: cc08 sw a0,24(s0) + c0053e70: 6e4030ef jal ra,c0057554 + c0053e74: cc08 sw a0,24(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:346 } return ret; } - c0053ca6: 60e2 ld ra,24(sp) - c0053ca8: 6442 ld s0,16(sp) - c0053caa: 8526 mv a0,s1 - c0053cac: 64a2 ld s1,8(sp) - c0053cae: 6105 addi sp,sp,32 - c0053cb0: 8082 ret + c0053e76: 60e2 ld ra,24(sp) + c0053e78: 6442 ld s0,16(sp) + c0053e7a: 8526 mv a0,s1 + c0053e7c: 64a2 ld s1,8(sp) + c0053e7e: 6105 addi sp,sp,32 + c0053e80: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:332 return OK; - c0053cb2: 4481 li s1,0 - c0053cb4: bfcd j c0053ca6 + c0053e82: 4481 li s1,0 + c0053e84: bfcd j c0053e76 -00000000c0053cb6 : +00000000c0053e86 : nxmutex_breaklock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:387 * Possible returned errors: @@ -233265,53 +233463,53 @@ nxmutex_breaklock(): int nxmutex_breaklock(FAR mutex_t *mutex, FAR bool *locked) { - c0053cb6: 1101 addi sp,sp,-32 + c0053e86: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:390 int ret = OK; *locked = false; - c0053cb8: 00058023 sb zero,0(a1) + c0053e88: 00058023 sb zero,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:387 { - c0053cbc: e822 sd s0,16(sp) - c0053cbe: e426 sd s1,8(sp) - c0053cc0: ec06 sd ra,24(sp) - c0053cc2: 84aa mv s1,a0 - c0053cc4: 842e mv s0,a1 + c0053e8c: e822 sd s0,16(sp) + c0053e8e: e426 sd s1,8(sp) + c0053e90: ec06 sd ra,24(sp) + c0053e92: 84aa mv s1,a0 + c0053e94: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:391 if (nxmutex_is_hold(mutex)) - c0053cc6: e71ff0ef jal ra,c0053b36 - c0053cca: cd11 beqz a0,c0053ce6 + c0053e96: e71ff0ef jal ra,c0053d06 + c0053e9a: cd11 beqz a0,c0053eb6 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:393 { ret = nxmutex_unlock(mutex); - c0053ccc: 8526 mv a0,s1 - c0053cce: f99ff0ef jal ra,c0053c66 + c0053e9c: 8526 mv a0,s1 + c0053e9e: f99ff0ef jal ra,c0053e36 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:394 if (ret >= 0) - c0053cd2: 00054563 bltz a0,c0053cdc + c0053ea2: 00054563 bltz a0,c0053eac /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:396 { *locked = true; - c0053cd6: 4785 li a5,1 - c0053cd8: 00f40023 sb a5,0(s0) + c0053ea6: 4785 li a5,1 + c0053ea8: 00f40023 sb a5,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:401 } } return ret; } - c0053cdc: 60e2 ld ra,24(sp) - c0053cde: 6442 ld s0,16(sp) - c0053ce0: 64a2 ld s1,8(sp) - c0053ce2: 6105 addi sp,sp,32 - c0053ce4: 8082 ret + c0053eac: 60e2 ld ra,24(sp) + c0053eae: 6442 ld s0,16(sp) + c0053eb0: 64a2 ld s1,8(sp) + c0053eb2: 6105 addi sp,sp,32 + c0053eb4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:388 int ret = OK; - c0053ce6: 4501 li a0,0 - c0053ce8: bfd5 j c0053cdc + c0053eb6: 4501 li a0,0 + c0053eb8: bfd5 j c0053eac -00000000c0053cea : +00000000c0053eba : nxmutex_restorelock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:422 * @@ -233320,15 +233518,15 @@ nxmutex_restorelock(): int nxmutex_restorelock(FAR mutex_t *mutex, bool locked) { return locked ? nxmutex_lock(mutex) : OK; - c0053cea: c199 beqz a1,c0053cf0 + c0053eba: c199 beqz a1,c0053ec0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:422 (discriminator 1) - c0053cec: e85ff06f j c0053b70 + c0053ebc: e85ff06f j c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:423 (discriminator 4) } - c0053cf0: 4501 li a0,0 - c0053cf2: 8082 ret + c0053ec0: 4501 li a0,0 + c0053ec2: 8082 ret -00000000c0053cf4 : +00000000c0053ec4 : nxrmutex_init(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:447 * @@ -233337,12 +233535,12 @@ nxrmutex_init(): int nxrmutex_init(FAR rmutex_t *rmutex) { rmutex->count = 0; - c0053cf4: 02052023 sw zero,32(a0) + c0053ec4: 02052023 sw zero,32(a0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:448 return nxmutex_init(&rmutex->mutex); - c0053cf8: df3ff06f j c0053aea + c0053ec8: df3ff06f j c0053cba -00000000c0053cfc : +00000000c0053ecc : nxrmutex_destroy(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:468 * returned on success. A negated errno value is returned on failure. @@ -233351,32 +233549,32 @@ nxrmutex_destroy(): int nxrmutex_destroy(FAR rmutex_t *rmutex) { - c0053cfc: 1141 addi sp,sp,-16 - c0053cfe: e022 sd s0,0(sp) - c0053d00: e406 sd ra,8(sp) - c0053d02: 842a mv s0,a0 + c0053ecc: 1141 addi sp,sp,-16 + c0053ece: e022 sd s0,0(sp) + c0053ed0: e406 sd ra,8(sp) + c0053ed2: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:469 int ret = nxmutex_destroy(&rmutex->mutex); - c0053d04: e17ff0ef jal ra,c0053b1a + c0053ed4: e17ff0ef jal ra,c0053cea /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:471 if (ret >= 0) - c0053d08: 00054463 bltz a0,c0053d10 + c0053ed8: 00054463 bltz a0,c0053ee0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:473 { rmutex->count = 0; - c0053d0c: 02042023 sw zero,32(s0) + c0053edc: 02042023 sw zero,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:477 } return ret; } - c0053d10: 60a2 ld ra,8(sp) - c0053d12: 6402 ld s0,0(sp) - c0053d14: 0141 addi sp,sp,16 - c0053d16: 8082 ret + c0053ee0: 60a2 ld ra,8(sp) + c0053ee2: 6402 ld s0,0(sp) + c0053ee4: 0141 addi sp,sp,16 + c0053ee6: 8082 ret -00000000c0053d18 : +00000000c0053ee8 : nxrmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:495 * @@ -233385,9 +233583,9 @@ nxrmutex_is_hold(): bool nxrmutex_is_hold(FAR rmutex_t *rmutex) { return nxmutex_is_hold(&rmutex->mutex); - c0053d18: e1fff06f j c0053b36 + c0053ee8: e1fff06f j c0053d06 -00000000c0053d1c : +00000000c0053eec : nxrmutex_is_locked(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:514 * @@ -233396,9 +233594,9 @@ nxrmutex_is_locked(): bool nxrmutex_is_locked(FAR rmutex_t *rmutex) { return nxmutex_is_locked(&rmutex->mutex); - c0053d1c: e37ff06f j c0053b52 + c0053eec: e37ff06f j c0053d22 -00000000c0053d20 : +00000000c0053ef0 : nxrmutex_lock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:537 * Possible returned errors: @@ -233407,59 +233605,59 @@ nxrmutex_lock(): int nxrmutex_lock(FAR rmutex_t *rmutex) { - c0053d20: 1141 addi sp,sp,-16 - c0053d22: e022 sd s0,0(sp) - c0053d24: e406 sd ra,8(sp) - c0053d26: 842a mv s0,a0 + c0053ef0: 1141 addi sp,sp,-16 + c0053ef2: e022 sd s0,0(sp) + c0053ef4: e406 sd ra,8(sp) + c0053ef6: 842a mv s0,a0 nxrmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:495 return nxmutex_is_hold(&rmutex->mutex); - c0053d28: e0fff0ef jal ra,c0053b36 - c0053d2c: 87aa mv a5,a0 - c0053d2e: 4501 li a0,0 + c0053ef8: e0fff0ef jal ra,c0053d06 + c0053efc: 87aa mv a5,a0 + c0053efe: 4501 li a0,0 nxrmutex_lock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:540 int ret = OK; if (!nxrmutex_is_hold(rmutex)) - c0053d30: e791 bnez a5,c0053d3c + c0053f00: e791 bnez a5,c0053f0c /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:542 { ret = nxmutex_lock(&rmutex->mutex); - c0053d32: 8522 mv a0,s0 - c0053d34: e3dff0ef jal ra,c0053b70 + c0053f02: 8522 mv a0,s0 + c0053f04: e3dff0ef jal ra,c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:545 } if (ret >= 0) - c0053d38: 02054163 bltz a0,c0053d5a + c0053f08: 02054163 bltz a0,c0053f2a /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:547 { DEBUGASSERT(rmutex->count < UINT_MAX); - c0053d3c: 501c lw a5,32(s0) - c0053d3e: 577d li a4,-1 - c0053d40: 00e79b63 bne a5,a4,c0053d56 + c0053f0c: 501c lw a5,32(s0) + c0053f0e: 577d li a4,-1 + c0053f10: 00e79b63 bne a5,a4,c0053f26 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:547 (discriminator 1) - c0053d44: 4601 li a2,0 - c0053d46: 22300593 li a1,547 - c0053d4a: 0001f517 auipc a0,0x1f - c0053d4e: dfe50513 addi a0,a0,-514 # c0072b48 <__FUNCTION__.0+0x10> - c0053d52: cc7ff0ef jal ra,c0053a18 <__assert> + c0053f14: 4601 li a2,0 + c0053f16: 22300593 li a1,547 + c0053f1a: 0001f517 auipc a0,0x1f + c0053f1e: e8e50513 addi a0,a0,-370 # c0072da8 <__FUNCTION__.0+0x10> + c0053f22: cc7ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:548 (discriminator 2) ++rmutex->count; - c0053d56: 2785 addiw a5,a5,1 - c0053d58: d01c sw a5,32(s0) + c0053f26: 2785 addiw a5,a5,1 + c0053f28: d01c sw a5,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:552 } return ret; } - c0053d5a: 60a2 ld ra,8(sp) - c0053d5c: 6402 ld s0,0(sp) - c0053d5e: 0141 addi sp,sp,16 - c0053d60: 8082 ret + c0053f2a: 60a2 ld ra,8(sp) + c0053f2c: 6402 ld s0,0(sp) + c0053f2e: 0141 addi sp,sp,16 + c0053f30: 8082 ret -00000000c0053d62 : +00000000c0053f32 : nxrmutex_trylock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:578 * -EAGAIN - The recursive mutex is not available. @@ -233468,59 +233666,59 @@ nxrmutex_trylock(): int nxrmutex_trylock(FAR rmutex_t *rmutex) { - c0053d62: 1141 addi sp,sp,-16 - c0053d64: e022 sd s0,0(sp) - c0053d66: e406 sd ra,8(sp) - c0053d68: 842a mv s0,a0 + c0053f32: 1141 addi sp,sp,-16 + c0053f34: e022 sd s0,0(sp) + c0053f36: e406 sd ra,8(sp) + c0053f38: 842a mv s0,a0 nxrmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:495 return nxmutex_is_hold(&rmutex->mutex); - c0053d6a: dcdff0ef jal ra,c0053b36 - c0053d6e: 87aa mv a5,a0 - c0053d70: 4501 li a0,0 + c0053f3a: dcdff0ef jal ra,c0053d06 + c0053f3e: 87aa mv a5,a0 + c0053f40: 4501 li a0,0 nxrmutex_trylock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:581 int ret = OK; if (!nxrmutex_is_hold(rmutex)) - c0053d72: e791 bnez a5,c0053d7e + c0053f42: e791 bnez a5,c0053f4e /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:583 { ret = nxmutex_trylock(&rmutex->mutex); - c0053d74: 8522 mv a0,s0 - c0053d76: e53ff0ef jal ra,c0053bc8 + c0053f44: 8522 mv a0,s0 + c0053f46: e53ff0ef jal ra,c0053d98 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:586 } if (ret >= 0) - c0053d7a: 02054163 bltz a0,c0053d9c + c0053f4a: 02054163 bltz a0,c0053f6c /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:588 { DEBUGASSERT(rmutex->count < UINT_MAX); - c0053d7e: 501c lw a5,32(s0) - c0053d80: 577d li a4,-1 - c0053d82: 00e79b63 bne a5,a4,c0053d98 + c0053f4e: 501c lw a5,32(s0) + c0053f50: 577d li a4,-1 + c0053f52: 00e79b63 bne a5,a4,c0053f68 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:588 (discriminator 1) - c0053d86: 4601 li a2,0 - c0053d88: 24c00593 li a1,588 - c0053d8c: 0001f517 auipc a0,0x1f - c0053d90: dbc50513 addi a0,a0,-580 # c0072b48 <__FUNCTION__.0+0x10> - c0053d94: c85ff0ef jal ra,c0053a18 <__assert> + c0053f56: 4601 li a2,0 + c0053f58: 24c00593 li a1,588 + c0053f5c: 0001f517 auipc a0,0x1f + c0053f60: e4c50513 addi a0,a0,-436 # c0072da8 <__FUNCTION__.0+0x10> + c0053f64: c85ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:589 (discriminator 2) ++rmutex->count; - c0053d98: 2785 addiw a5,a5,1 - c0053d9a: d01c sw a5,32(s0) + c0053f68: 2785 addiw a5,a5,1 + c0053f6a: d01c sw a5,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:593 } return ret; } - c0053d9c: 60a2 ld ra,8(sp) - c0053d9e: 6402 ld s0,0(sp) - c0053da0: 0141 addi sp,sp,16 - c0053da2: 8082 ret + c0053f6c: 60a2 ld ra,8(sp) + c0053f6e: 6402 ld s0,0(sp) + c0053f70: 0141 addi sp,sp,16 + c0053f72: 8082 ret -00000000c0053da4 : +00000000c0053f74 : nxrmutex_timedlock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:621 * ECANCELED May be returned if the thread is canceled while waiting. @@ -233529,61 +233727,61 @@ nxrmutex_timedlock(): int nxrmutex_timedlock(FAR rmutex_t *rmutex, unsigned int timeout) { - c0053da4: 1101 addi sp,sp,-32 - c0053da6: e822 sd s0,16(sp) - c0053da8: e42e sd a1,8(sp) - c0053daa: ec06 sd ra,24(sp) - c0053dac: 842a mv s0,a0 + c0053f74: 1101 addi sp,sp,-32 + c0053f76: e822 sd s0,16(sp) + c0053f78: e42e sd a1,8(sp) + c0053f7a: ec06 sd ra,24(sp) + c0053f7c: 842a mv s0,a0 nxrmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:495 return nxmutex_is_hold(&rmutex->mutex); - c0053dae: d89ff0ef jal ra,c0053b36 - c0053db2: 87aa mv a5,a0 + c0053f7e: d89ff0ef jal ra,c0053d06 + c0053f82: 87aa mv a5,a0 nxrmutex_timedlock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:624 int ret = OK; if (!nxrmutex_is_hold(rmutex)) - c0053db4: 65a2 ld a1,8(sp) - c0053db6: 4501 li a0,0 - c0053db8: e791 bnez a5,c0053dc4 + c0053f84: 65a2 ld a1,8(sp) + c0053f86: 4501 li a0,0 + c0053f88: e791 bnez a5,c0053f94 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:626 { ret = nxmutex_timedlock(&rmutex->mutex, timeout); - c0053dba: 8522 mv a0,s0 - c0053dbc: e4dff0ef jal ra,c0053c08 + c0053f8a: 8522 mv a0,s0 + c0053f8c: e4dff0ef jal ra,c0053dd8 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:629 } if (ret >= 0) - c0053dc0: 02054163 bltz a0,c0053de2 + c0053f90: 02054163 bltz a0,c0053fb2 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:631 { DEBUGASSERT(rmutex->count < UINT_MAX); - c0053dc4: 501c lw a5,32(s0) - c0053dc6: 577d li a4,-1 - c0053dc8: 00e79b63 bne a5,a4,c0053dde + c0053f94: 501c lw a5,32(s0) + c0053f96: 577d li a4,-1 + c0053f98: 00e79b63 bne a5,a4,c0053fae /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:631 (discriminator 1) - c0053dcc: 4601 li a2,0 - c0053dce: 27700593 li a1,631 - c0053dd2: 0001f517 auipc a0,0x1f - c0053dd6: d7650513 addi a0,a0,-650 # c0072b48 <__FUNCTION__.0+0x10> - c0053dda: c3fff0ef jal ra,c0053a18 <__assert> + c0053f9c: 4601 li a2,0 + c0053f9e: 27700593 li a1,631 + c0053fa2: 0001f517 auipc a0,0x1f + c0053fa6: e0650513 addi a0,a0,-506 # c0072da8 <__FUNCTION__.0+0x10> + c0053faa: c3fff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:632 (discriminator 2) ++rmutex->count; - c0053dde: 2785 addiw a5,a5,1 - c0053de0: d01c sw a5,32(s0) + c0053fae: 2785 addiw a5,a5,1 + c0053fb0: d01c sw a5,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:636 } return ret; } - c0053de2: 60e2 ld ra,24(sp) - c0053de4: 6442 ld s0,16(sp) - c0053de6: 6105 addi sp,sp,32 - c0053de8: 8082 ret + c0053fb2: 60e2 ld ra,24(sp) + c0053fb4: 6442 ld s0,16(sp) + c0053fb6: 6105 addi sp,sp,32 + c0053fb8: 8082 ret -00000000c0053dea : +00000000c0053fba : nxrmutex_unlock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:660 * This function may be called from an interrupt handler. @@ -233592,60 +233790,60 @@ nxrmutex_unlock(): int nxrmutex_unlock(FAR rmutex_t *rmutex) { - c0053dea: 1141 addi sp,sp,-16 - c0053dec: e406 sd ra,8(sp) - c0053dee: e022 sd s0,0(sp) + c0053fba: 1141 addi sp,sp,-16 + c0053fbc: e406 sd ra,8(sp) + c0053fbe: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:663 int ret = OK; DEBUGASSERT(rmutex->count > 0); - c0053df0: 511c lw a5,32(a0) - c0053df2: eb91 bnez a5,c0053e06 + c0053fc0: 511c lw a5,32(a0) + c0053fc2: eb91 bnez a5,c0053fd6 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:663 (discriminator 1) - c0053df4: 4601 li a2,0 - c0053df6: 29700593 li a1,663 - c0053dfa: 0001f517 auipc a0,0x1f - c0053dfe: d4e50513 addi a0,a0,-690 # c0072b48 <__FUNCTION__.0+0x10> - c0053e02: c17ff0ef jal ra,c0053a18 <__assert> + c0053fc4: 4601 li a2,0 + c0053fc6: 29700593 li a1,663 + c0053fca: 0001f517 auipc a0,0x1f + c0053fce: dde50513 addi a0,a0,-546 # c0072da8 <__FUNCTION__.0+0x10> + c0053fd2: c17ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:665 (discriminator 2) if (--rmutex->count == 0) - c0053e06: fff7871b addiw a4,a5,-1 - c0053e0a: d118 sw a4,32(a0) - c0053e0c: 842a mv s0,a0 + c0053fd6: fff7871b addiw a4,a5,-1 + c0053fda: d118 sw a4,32(a0) + c0053fdc: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:661 (discriminator 2) int ret = OK; - c0053e0e: 4781 li a5,0 + c0053fde: 4781 li a5,0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:665 (discriminator 2) if (--rmutex->count == 0) - c0053e10: eb09 bnez a4,c0053e22 + c0053fe0: eb09 bnez a4,c0053ff2 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:667 { ret = nxmutex_unlock(&rmutex->mutex); - c0053e12: e55ff0ef jal ra,c0053c66 - c0053e16: 87aa mv a5,a0 + c0053fe2: e55ff0ef jal ra,c0053e36 + c0053fe6: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:668 if (ret < 0) - c0053e18: 00055563 bgez a0,c0053e22 + c0053fe8: 00055563 bgez a0,c0053ff2 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:670 { ++rmutex->count; - c0053e1c: 5018 lw a4,32(s0) - c0053e1e: 2705 addiw a4,a4,1 - c0053e20: d018 sw a4,32(s0) + c0053fec: 5018 lw a4,32(s0) + c0053fee: 2705 addiw a4,a4,1 + c0053ff0: d018 sw a4,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:675 } } return ret; } - c0053e22: 60a2 ld ra,8(sp) - c0053e24: 6402 ld s0,0(sp) - c0053e26: 853e mv a0,a5 - c0053e28: 0141 addi sp,sp,16 - c0053e2a: 8082 ret + c0053ff2: 60a2 ld ra,8(sp) + c0053ff4: 6402 ld s0,0(sp) + c0053ff6: 853e mv a0,a5 + c0053ff8: 0141 addi sp,sp,16 + c0053ffa: 8082 ret -00000000c0053e2c : +00000000c0053ffc : nxrmutex_breaklock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:714 * Possible returned errors: @@ -233654,69 +233852,69 @@ nxrmutex_breaklock(): int nxrmutex_breaklock(FAR rmutex_t *rmutex, FAR unsigned int *count) { - c0053e2c: 1101 addi sp,sp,-32 + c0053ffc: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:717 int ret = OK; *count = 0; - c0053e2e: 0005a023 sw zero,0(a1) + c0053ffe: 0005a023 sw zero,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:714 { - c0053e32: e822 sd s0,16(sp) - c0053e34: e426 sd s1,8(sp) - c0053e36: ec06 sd ra,24(sp) - c0053e38: 842a mv s0,a0 - c0053e3a: 84ae mv s1,a1 + c0054002: e822 sd s0,16(sp) + c0054004: e426 sd s1,8(sp) + c0054006: ec06 sd ra,24(sp) + c0054008: 842a mv s0,a0 + c005400a: 84ae mv s1,a1 nxrmutex_is_hold(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:495 return nxmutex_is_hold(&rmutex->mutex); - c0053e3c: cfbff0ef jal ra,c0053b36 + c005400c: cfbff0ef jal ra,c0053d06 nxrmutex_breaklock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:718 if (nxrmutex_is_hold(rmutex)) - c0053e40: c10d beqz a0,c0053e62 + c0054010: c10d beqz a0,c0054032 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:720 { *count = rmutex->count; - c0053e42: 501c lw a5,32(s0) + c0054012: 501c lw a5,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:722 rmutex->count = 0; ret = nxmutex_unlock(&rmutex->mutex); - c0053e44: 8522 mv a0,s0 + c0054014: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:720 *count = rmutex->count; - c0053e46: c09c sw a5,0(s1) + c0054016: c09c sw a5,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:721 rmutex->count = 0; - c0053e48: 02042023 sw zero,32(s0) + c0054018: 02042023 sw zero,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:722 ret = nxmutex_unlock(&rmutex->mutex); - c0053e4c: e1bff0ef jal ra,c0053c66 + c005401c: e1bff0ef jal ra,c0053e36 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:723 if (ret < 0) - c0053e50: 00055463 bgez a0,c0053e58 + c0054020: 00055463 bgez a0,c0054028 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:725 { rmutex->count = *count; - c0053e54: 409c lw a5,0(s1) - c0053e56: d01c sw a5,32(s0) + c0054024: 409c lw a5,0(s1) + c0054026: d01c sw a5,32(s0) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:730 } } return ret; } - c0053e58: 60e2 ld ra,24(sp) - c0053e5a: 6442 ld s0,16(sp) - c0053e5c: 64a2 ld s1,8(sp) - c0053e5e: 6105 addi sp,sp,32 - c0053e60: 8082 ret + c0054028: 60e2 ld ra,24(sp) + c005402a: 6442 ld s0,16(sp) + c005402c: 64a2 ld s1,8(sp) + c005402e: 6105 addi sp,sp,32 + c0054030: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:715 int ret = OK; - c0053e62: 4501 li a0,0 - c0053e64: bfd5 j c0053e58 + c0054032: 4501 li a0,0 + c0054034: bfd5 j c0054028 -00000000c0053e66 : +00000000c0054036 : nxrmutex_restorelock(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:753 @@ -233725,45 +233923,45 @@ int nxrmutex_restorelock(FAR rmutex_t *rmutex, unsigned int count) int ret = OK; if (count != 0) - c0053e66: c18d beqz a1,c0053e88 + c0054036: c18d beqz a1,c0054058 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:750 { - c0053e68: 1101 addi sp,sp,-32 - c0053e6a: e822 sd s0,16(sp) - c0053e6c: e426 sd s1,8(sp) - c0053e6e: ec06 sd ra,24(sp) - c0053e70: 84aa mv s1,a0 - c0053e72: 842e mv s0,a1 + c0054038: 1101 addi sp,sp,-32 + c005403a: e822 sd s0,16(sp) + c005403c: e426 sd s1,8(sp) + c005403e: ec06 sd ra,24(sp) + c0054040: 84aa mv s1,a0 + c0054042: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:755 { ret = nxmutex_lock(&rmutex->mutex); - c0053e74: cfdff0ef jal ra,c0053b70 + c0054044: cfdff0ef jal ra,c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:756 if (ret >= 0) - c0053e78: 00054363 bltz a0,c0053e7e + c0054048: 00054363 bltz a0,c005404e /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:758 { rmutex->count = count; - c0053e7c: d080 sw s0,32(s1) + c005404c: d080 sw s0,32(s1) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:763 } } return ret; } - c0053e7e: 60e2 ld ra,24(sp) - c0053e80: 6442 ld s0,16(sp) - c0053e82: 64a2 ld s1,8(sp) - c0053e84: 6105 addi sp,sp,32 - c0053e86: 8082 ret + c005404e: 60e2 ld ra,24(sp) + c0054050: 6442 ld s0,16(sp) + c0054052: 64a2 ld s1,8(sp) + c0054054: 6105 addi sp,sp,32 + c0054056: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:751 int ret = OK; - c0053e88: 4501 li a0,0 + c0054058: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_mutex.c:763 } - c0053e8a: 8082 ret + c005405a: 8082 ret -00000000c0053e8c : +00000000c005405c : pthread_attr_init(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:75 int pthread_attr_init(FAR pthread_attr_t *attr) @@ -233772,10 +233970,10 @@ int pthread_attr_init(FAR pthread_attr_t *attr) linfo("attr=%p\n", attr); if (!attr) - c0053e8c: cd11 beqz a0,c0053ea8 + c005405c: cd11 beqz a0,c0054078 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:71 { - c0053e8e: 1141 addi sp,sp,-16 + c005405e: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:86 /* Set the child thread priority to be the default * priority. Set the child stack size to some arbitrary @@ -233783,37 +233981,37 @@ int pthread_attr_init(FAR pthread_attr_t *attr) */ memcpy(attr, &g_default_pthread_attr, sizeof(pthread_attr_t)); - c0053e90: 4661 li a2,24 - c0053e92: 0001f597 auipc a1,0x1f - c0053e96: cce58593 addi a1,a1,-818 # c0072b60 + c0054060: 4661 li a2,24 + c0054062: 0001f597 auipc a1,0x1f + c0054066: d5e58593 addi a1,a1,-674 # c0072dc0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:71 { - c0053e9a: e406 sd ra,8(sp) + c005406a: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:86 memcpy(attr, &g_default_pthread_attr, sizeof(pthread_attr_t)); - c0053e9c: 33f020ef jal ra,c00569da + c005406c: 33f020ef jal ra,c0056baa /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:91 } linfo("Returning %d\n", ret); return ret; } - c0053ea0: 60a2 ld ra,8(sp) + c0054070: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:72 int ret = OK; - c0053ea2: 4501 li a0,0 + c0054072: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:91 } - c0053ea4: 0141 addi sp,sp,16 - c0053ea6: 8082 ret + c0054074: 0141 addi sp,sp,16 + c0054076: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:77 ret = ENOMEM; - c0053ea8: 4531 li a0,12 + c0054078: 4531 li a0,12 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_init.c:91 } - c0053eaa: 8082 ret + c005407a: 8082 ret -00000000c0053eac : +00000000c005407c : pthread_attr_destroy(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:58 { @@ -233822,10 +234020,10 @@ pthread_attr_destroy(): linfo("attr=%p\n", attr); if (!attr) - c0053eac: c919 beqz a0,c0053ec2 + c005407c: c919 beqz a0,c0054092 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:53 { - c0053eae: 1141 addi sp,sp,-16 + c005407e: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:64 { ret = EINVAL; @@ -233833,14 +234031,14 @@ pthread_attr_destroy(): else { memset(attr, 0, sizeof(pthread_attr_t)); - c0053eb0: 4661 li a2,24 - c0053eb2: 4581 li a1,0 + c0054080: 4661 li a2,24 + c0054082: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:53 { - c0053eb4: e406 sd ra,8(sp) + c0054084: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:64 memset(attr, 0, sizeof(pthread_attr_t)); - c0053eb6: 1bb020ef jal ra,c0056870 + c0054086: 1bb020ef jal ra,c0056a40 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:70 ret = OK; } @@ -233848,22 +234046,22 @@ pthread_attr_destroy(): linfo("Returning %d\n", ret); return ret; } - c0053eba: 60a2 ld ra,8(sp) + c005408a: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:65 ret = OK; - c0053ebc: 4501 li a0,0 + c005408c: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:70 } - c0053ebe: 0141 addi sp,sp,16 - c0053ec0: 8082 ret + c005408e: 0141 addi sp,sp,16 + c0054090: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:60 ret = EINVAL; - c0053ec2: 4559 li a0,22 + c0054092: 4559 li a0,22 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_destroy.c:70 } - c0053ec4: 8082 ret + c0054094: 8082 ret -00000000c0053ec6 : +00000000c0054096 : pthread_attr_setdetachstate(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:49 * @@ -233872,38 +234070,38 @@ pthread_attr_setdetachstate(): int pthread_attr_setdetachstate(FAR pthread_attr_t *attr, int detachstate) { - c0053ec6: 87aa mv a5,a0 + c0054096: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:50 if (!attr || (detachstate != PTHREAD_CREATE_DETACHED && - c0053ec8: c909 beqz a0,c0053eda + c0054098: c909 beqz a0,c00540aa /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:50 (discriminator 1) - c0053eca: 4705 li a4,1 + c005409a: 4705 li a4,1 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:53 (discriminator 1) detachstate != PTHREAD_CREATE_JOINABLE)) { return EINVAL; - c0053ecc: 4559 li a0,22 + c005409c: 4559 li a0,22 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:50 (discriminator 1) if (!attr || (detachstate != PTHREAD_CREATE_DETACHED && - c0053ece: 00b76763 bltu a4,a1,c0053edc + c005409e: 00b76763 bltu a4,a1,c00540ac /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:56 } attr->detachstate = detachstate; - c0053ed2: 00b781a3 sb a1,3(a5) + c00540a2: 00b781a3 sb a1,3(a5) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:58 return OK; - c0053ed6: 4501 li a0,0 - c0053ed8: 8082 ret + c00540a6: 4501 li a0,0 + c00540a8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:53 return EINVAL; - c0053eda: 4559 li a0,22 + c00540aa: 4559 li a0,22 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_attr_setdetachstate.c:59 } - c0053edc: 8082 ret + c00540ac: 8082 ret -00000000c0053ede : +00000000c00540ae : pthread_startup(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:54 * @@ -233912,28 +234110,28 @@ pthread_startup(): static void pthread_startup(pthread_startroutine_t entry, pthread_addr_t arg) { - c0053ede: 1141 addi sp,sp,-16 - c0053ee0: e406 sd ra,8(sp) - c0053ee2: 87aa mv a5,a0 + c00540ae: 1141 addi sp,sp,-16 + c00540b0: e406 sd ra,8(sp) + c00540b2: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:55 DEBUGASSERT(entry != NULL); - c0053ee4: e911 bnez a0,c0053ef8 + c00540b4: e911 bnez a0,c00540c8 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:55 (discriminator 1) - c0053ee6: 4601 li a2,0 - c0053ee8: 03700593 li a1,55 - c0053eec: 0001f517 auipc a0,0x1f - c0053ef0: c8c50513 addi a0,a0,-884 # c0072b78 - c0053ef4: b25ff0ef jal ra,c0053a18 <__assert> - c0053ef8: 852e mv a0,a1 + c00540b6: 4601 li a2,0 + c00540b8: 03700593 li a1,55 + c00540bc: 0001f517 auipc a0,0x1f + c00540c0: d1c50513 addi a0,a0,-740 # c0072dd8 + c00540c4: b25ff0ef jal ra,c0053be8 <__assert> + c00540c8: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:59 (discriminator 2) /* Pass control to the thread entry point. Handle any returned value. */ pthread_exit(entry(arg)); - c0053efa: 9782 jalr a5 - c0053efc: 018000ef jal ra,c0053f14 + c00540ca: 9782 jalr a5 + c00540cc: 018000ef jal ra,c00540e4 -00000000c0053f00 : +00000000c00540d0 : pthread_create(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:88 * @@ -233942,17 +234140,17 @@ pthread_create(): int pthread_create(FAR pthread_t *thread, FAR const pthread_attr_t *attr, pthread_startroutine_t pthread_entry, pthread_addr_t arg) { - c0053f00: 8736 mv a4,a3 + c00540d0: 8736 mv a4,a3 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_create.c:89 return nx_pthread_create(pthread_startup, thread, attr, pthread_entry, - c0053f02: 86b2 mv a3,a2 - c0053f04: 862e mv a2,a1 - c0053f06: 85aa mv a1,a0 - c0053f08: 00000517 auipc a0,0x0 - c0053f0c: fd650513 addi a0,a0,-42 # c0053ede - c0053f10: 5040306f j c0057414 - -00000000c0053f14 : + c00540d2: 86b2 mv a3,a2 + c00540d4: 862e mv a2,a1 + c00540d6: 85aa mv a1,a0 + c00540d8: 00000517 auipc a0,0x0 + c00540dc: fd650513 addi a0,a0,-42 # c00540ae + c00540e0: 5040306f j c00575e4 + +00000000c00540e4 : pthread_exit(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:55 * Assumptions: @@ -233961,8 +234159,8 @@ pthread_exit(): void pthread_exit(FAR void *exit_value) { - c0053f14: 1141 addi sp,sp,-16 - c0053f16: e022 sd s0,0(sp) + c00540e4: 1141 addi sp,sp,-16 + c00540e6: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:61 /* Mark the pthread as non-cancelable to avoid additional calls to * pthread_exit() due to any cancellation point logic that might get @@ -233970,19 +234168,19 @@ void pthread_exit(FAR void *exit_value) */ task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0053f18: 4581 li a1,0 + c00540e8: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:55 { - c0053f1a: 842a mv s0,a0 + c00540ea: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:61 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0053f1c: 4505 li a0,1 + c00540ec: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:55 { - c0053f1e: e406 sd ra,8(sp) + c00540ee: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:61 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0053f20: 064000ef jal ra,c0053f84 + c00540f0: 064000ef jal ra,c0054154 /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_exit.c:71 #if defined(CONFIG_TLS_NELEM) && CONFIG_TLS_NELEM > 0 @@ -233990,10 +234188,10 @@ void pthread_exit(FAR void *exit_value) #endif nx_pthread_exit(exit_value); - c0053f24: 8522 mv a0,s0 - c0053f26: 50e030ef jal ra,c0057434 + c00540f4: 8522 mv a0,s0 + c00540f6: 50e030ef jal ra,c0057604 -00000000c0053f2a : +00000000c00540fa : pthread_mutex_lock(): /Users/Luppy/riscv/nuttx/libs/libc/pthread/pthread_mutex_lock.c:89 { @@ -234002,10 +234200,10 @@ pthread_mutex_lock(): */ return pthread_mutex_timedlock(mutex, NULL); - c0053f2a: 4581 li a1,0 - c0053f2c: 5e80306f j c0057514 + c00540fa: 4581 li a1,0 + c00540fc: 5e80306f j c00576e4 -00000000c0053f30 : +00000000c0054100 : clock_ticks2time(): /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:55 @@ -234014,31 +234212,31 @@ int clock_ticks2time(sclock_t ticks, FAR struct timespec *reltime) sclock_t remainder; reltime->tv_sec = ticks / TICK_PER_SEC; - c0053f30: 3e800793 li a5,1000 - c0053f34: 02f5473b divw a4,a0,a5 + c0054100: 3e800793 li a5,1000 + c0054104: 02f5473b divw a4,a0,a5 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:56 remainder = ticks - TICK_PER_SEC * reltime->tv_sec; - c0053f38: c1800793 li a5,-1000 - c0053f3c: 02e787bb mulw a5,a5,a4 + c0054108: c1800793 li a5,-1000 + c005410c: 02e787bb mulw a5,a5,a4 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:55 reltime->tv_sec = ticks / TICK_PER_SEC; - c0053f40: c198 sw a4,0(a1) + c0054110: c198 sw a4,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:56 remainder = ticks - TICK_PER_SEC * reltime->tv_sec; - c0053f42: 9d3d addw a0,a0,a5 + c0054112: 9d3d addw a0,a0,a5 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:57 reltime->tv_nsec = remainder * NSEC_PER_TICK; - c0053f44: 000f47b7 lui a5,0xf4 - c0053f48: 2407879b addiw a5,a5,576 - c0053f4c: 02f5053b mulw a0,a0,a5 - c0053f50: e588 sd a0,8(a1) + c0054114: 000f47b7 lui a5,0xf4 + c0054118: 2407879b addiw a5,a5,576 + c005411c: 02f5053b mulw a0,a0,a5 + c0054120: e588 sd a0,8(a1) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_ticks2time.c:59 return OK; } - c0053f52: 4501 li a0,0 - c0053f54: 8082 ret + c0054122: 4501 li a0,0 + c0054124: 8082 ret -00000000c0053f56 : +00000000c0054126 : clock_timespec_add(): /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:55 @@ -234047,46 +234245,46 @@ void clock_timespec_add(FAR const struct timespec *ts1, FAR struct timespec *ts3) { time_t sec = ts1->tv_sec + ts2->tv_sec; - c0053f56: 419c lw a5,0(a1) - c0053f58: 4118 lw a4,0(a0) + c0054126: 419c lw a5,0(a1) + c0054128: 4118 lw a4,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:56 long nsec = ts1->tv_nsec + ts2->tv_nsec; - c0053f5a: 6594 ld a3,8(a1) + c005412a: 6594 ld a3,8(a1) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:55 time_t sec = ts1->tv_sec + ts2->tv_sec; - c0053f5c: 00f7083b addw a6,a4,a5 + c005412c: 00f7083b addw a6,a4,a5 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:56 long nsec = ts1->tv_nsec + ts2->tv_nsec; - c0053f60: 651c ld a5,8(a0) - c0053f62: 97b6 add a5,a5,a3 + c0054130: 651c ld a5,8(a0) + c0054132: 97b6 add a5,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:58 if (nsec >= NSEC_PER_SEC) - c0053f64: 3b9ad6b7 lui a3,0x3b9ad - c0053f68: 9ff68693 addi a3,a3,-1537 # 3b9ac9ff <__clzdi2-0x84653601> - c0053f6c: 00f6d863 bge a3,a5,c0053f7c + c0054134: 3b9ad6b7 lui a3,0x3b9ad + c0054138: 9ff68693 addi a3,a3,-1537 # 3b9ac9ff <__clzdi2-0x84653601> + c005413c: 00f6d863 bge a3,a5,c005414c /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:60 { nsec -= NSEC_PER_SEC; - c0053f70: c46536b7 lui a3,0xc4653 - c0053f74: 60068693 addi a3,a3,1536 # ffffffffc4653600 <_ebss+0xffffffff045524da> - c0053f78: 97b6 add a5,a5,a3 + c0054140: c46536b7 lui a3,0xc4653 + c0054144: 60068693 addi a3,a3,1536 # ffffffffc4653600 <_ebss+0xffffffff045524da> + c0054148: 97b6 add a5,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:61 sec++; - c0053f7a: 2805 addiw a6,a6,1 + c005414a: 2805 addiw a6,a6,1 /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:64 } ts3->tv_sec = sec; - c0053f7c: 01062023 sw a6,0(a2) + c005414c: 01062023 sw a6,0(a2) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:65 ts3->tv_nsec = nsec; - c0053f80: e61c sd a5,8(a2) + c0054150: e61c sd a5,8(a2) /Users/Luppy/riscv/nuttx/libs/libc/sched/clock_timespec_add.c:66 } - c0053f82: 8082 ret + c0054152: 8082 ret -00000000c0053f84 : +00000000c0054154 : task_setcancelstate(): /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:64 * errno value set appropriately. @@ -234095,38 +234293,38 @@ task_setcancelstate(): int task_setcancelstate(int state, FAR int *oldstate) { - c0053f84: 1141 addi sp,sp,-16 + c0054154: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:65 FAR struct tls_info_s *tls = tls_get_info(); - c0053f86: 7779 lui a4,0xffffe + c0054156: 7779 lui a4,0xffffe /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:64 { - c0053f88: e406 sd ra,8(sp) + c0054158: e406 sd ra,8(sp) up_getsp(): /Users/Luppy/riscv/nuttx/include/arch/irq.h:601 - c0053f8a: 878a mv a5,sp + c005415a: 878a mv a5,sp task_setcancelstate(): /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:65 FAR struct tls_info_s *tls = tls_get_info(); - c0053f8c: 8ff9 and a5,a5,a4 + c005415c: 8ff9 and a5,a5,a4 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:70 int ret = OK; /* Return the current state if so requested */ if (oldstate != NULL) - c0053f8e: c599 beqz a1,c0053f9c + c005415e: c599 beqz a1,c005416c /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:72 { if ((tls->tl_cpstate & CANCEL_FLAG_NONCANCELABLE) != 0) - c0053f90: 0087c703 lbu a4,8(a5) # f4008 <__clzdi2-0xbff0bff8> - c0053f94: 8b05 andi a4,a4,1 - c0053f96: c31d beqz a4,c0053fbc + c0054160: 0087c703 lbu a4,8(a5) # f4008 <__clzdi2-0xbff0bff8> + c0054164: 8b05 andi a4,a4,1 + c0054166: c31d beqz a4,c005418c /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:74 { *oldstate = TASK_CANCEL_DISABLE; - c0053f98: 4705 li a4,1 - c0053f9a: c198 sw a4,0(a1) + c0054168: 4705 li a4,1 + c005416a: c198 sw a4,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:84 } } @@ -234134,22 +234332,22 @@ task_setcancelstate(): /* Set the new cancellation state */ if (state == TASK_CANCEL_ENABLE) - c0053f9c: e11d bnez a0,c0053fc2 + c005416c: e11d bnez a0,c0054192 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:88 { /* Clear the non-cancelable flag */ tls->tl_cpstate &= ~CANCEL_FLAG_NONCANCELABLE; - c0053f9e: 0087c703 lbu a4,8(a5) - c0053fa2: ffe77693 andi a3,a4,-2 - c0053fa6: 00d78423 sb a3,8(a5) + c005416e: 0087c703 lbu a4,8(a5) + c0054172: ffe77693 andi a3,a4,-2 + c0054176: 00d78423 sb a3,8(a5) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:92 /* Check if a cancellation was pending */ if ((tls->tl_cpstate & CANCEL_FLAG_CANCEL_PENDING) != 0) - c0053faa: 00477693 andi a3,a4,4 - c0053fae: c685 beqz a3,c0053fd6 + c005417a: 00477693 andi a3,a4,4 + c005417e: c685 beqz a3,c00541a6 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:104 { /* No.. We are using asynchronous cancellation. If the @@ -234157,18 +234355,18 @@ task_setcancelstate(): */ tls->tl_cpstate &= ~CANCEL_FLAG_CANCEL_PENDING; - c0053fb0: 9b69 andi a4,a4,-6 - c0053fb2: 00e78423 sb a4,8(a5) + c0054180: 9b69 andi a4,a4,-6 + c0054182: 00e78423 sb a4,8(a5) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:107 #ifndef CONFIG_DISABLE_PTHREAD pthread_exit(PTHREAD_CANCELED); - c0053fb6: 557d li a0,-1 - c0053fb8: f5dff0ef jal ra,c0053f14 + c0054186: 557d li a0,-1 + c0054188: f5dff0ef jal ra,c00540e4 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:78 *oldstate = TASK_CANCEL_ENABLE; - c0053fbc: 0005a023 sw zero,0(a1) - c0053fc0: bff1 j c0053f9c + c005418c: 0005a023 sw zero,0(a1) + c0054190: bff1 j c005416c /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:114 exit(EXIT_FAILURE); #endif @@ -234176,21 +234374,21 @@ task_setcancelstate(): } } else if (state == TASK_CANCEL_DISABLE) - c0053fc2: 4705 li a4,1 - c0053fc4: 00e51c63 bne a0,a4,c0053fdc + c0054192: 4705 li a4,1 + c0054194: 00e51c63 bne a0,a4,c00541ac /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:118 { /* Set the non-cancelable state */ tls->tl_cpstate |= CANCEL_FLAG_NONCANCELABLE; - c0053fc8: 0087c703 lbu a4,8(a5) + c0054198: 0087c703 lbu a4,8(a5) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:66 int ret = OK; - c0053fcc: 4501 li a0,0 + c005419c: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:118 tls->tl_cpstate |= CANCEL_FLAG_NONCANCELABLE; - c0053fce: 00176713 ori a4,a4,1 - c0053fd2: 00e78423 sb a4,8(a5) + c005419e: 00176713 ori a4,a4,1 + c00541a2: 00e78423 sb a4,8(a5) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:127 set_errno(EINVAL); ret = ERROR; @@ -234198,20 +234396,20 @@ task_setcancelstate(): return ret; } - c0053fd6: 60a2 ld ra,8(sp) - c0053fd8: 0141 addi sp,sp,16 - c0053fda: 8082 ret + c00541a6: 60a2 ld ra,8(sp) + c00541a8: 0141 addi sp,sp,16 + c00541aa: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:122 set_errno(EINVAL); - c0053fdc: af9ff0ef jal ra,c0053ad4 <__errno> - c0053fe0: 47d9 li a5,22 - c0053fe2: c11c sw a5,0(a0) + c00541ac: af9ff0ef jal ra,c0053ca4 <__errno> + c00541b0: 47d9 li a5,22 + c00541b2: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/sched/task_setcancelstate.c:123 ret = ERROR; - c0053fe4: 557d li a0,-1 - c0053fe6: bfc5 j c0053fd6 + c00541b4: 557d li a0,-1 + c00541b6: bfc5 j c00541a6 -00000000c0053fe8 : +00000000c00541b8 : nxsem_init(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:67 @@ -234220,46 +234418,46 @@ int nxsem_init(FAR sem_t *sem, int pshared, unsigned int value) UNUSED(pshared); DEBUGASSERT(sem != NULL && value <= SEM_VALUE_MAX); - c0053fe8: c501 beqz a0,c0053ff0 + c00541b8: c501 beqz a0,c00541c0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:67 (discriminator 2) - c0053fea: 67a1 lui a5,0x8 - c0053fec: 00f66d63 bltu a2,a5,c0054006 + c00541ba: 67a1 lui a5,0x8 + c00541bc: 00f66d63 bltu a2,a5,c00541d6 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:64 { - c0053ff0: 1141 addi sp,sp,-16 + c00541c0: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:67 DEBUGASSERT(sem != NULL && value <= SEM_VALUE_MAX); - c0053ff2: 4601 li a2,0 - c0053ff4: 04300593 li a1,67 - c0053ff8: 0001f517 auipc a0,0x1f - c0053ffc: ba050513 addi a0,a0,-1120 # c0072b98 + c00541c2: 4601 li a2,0 + c00541c4: 04300593 li a1,67 + c00541c8: 0001f517 auipc a0,0x1f + c00541cc: c3050513 addi a0,a0,-976 # c0072df8 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:64 { - c0054000: e406 sd ra,8(sp) + c00541d0: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:67 DEBUGASSERT(sem != NULL && value <= SEM_VALUE_MAX); - c0054002: a17ff0ef jal ra,c0053a18 <__assert> + c00541d2: a17ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:71 (discriminator 4) /* Initialize the semaphore count */ sem->semcount = (int16_t)value; - c0054006: 0106161b slliw a2,a2,0x10 - c005400a: 4106561b sraiw a2,a2,0x10 - c005400e: 00c51023 sh a2,0(a0) + c00541d6: 0106161b slliw a2,a2,0x10 + c00541da: 4106561b sraiw a2,a2,0x10 + c00541de: 00c51023 sh a2,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:75 (discriminator 4) /* Initialize semaphore wait list */ dq_init(&sem->waitlist); - c0054012: 00053423 sd zero,8(a0) - c0054016: 00053823 sd zero,16(a0) + c00541e2: 00053423 sd zero,8(a0) + c00541e6: 00053823 sd zero,16(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:79 (discriminator 4) /* Initialize to support priority inheritance */ sem->flags = 0; - c005401a: 00050123 sb zero,2(a0) + c00541ea: 00050123 sb zero,2(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:89 (discriminator 4) # else INITIALIZE_SEMHOLDER(&sem->holder); @@ -234267,10 +234465,10 @@ int nxsem_init(FAR sem_t *sem, int pshared, unsigned int value) #endif return OK; } - c005401e: 4501 li a0,0 - c0054020: 8082 ret + c00541ee: 4501 li a0,0 + c00541f0: 8082 ret -00000000c0054022 : +00000000c00541f2 : sem_init(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:116 * returned and the errno value is set appropriately. @@ -234279,9 +234477,9 @@ sem_init(): int sem_init(FAR sem_t *sem, int pshared, unsigned int value) { - c0054022: 1141 addi sp,sp,-16 - c0054024: e406 sd ra,8(sp) - c0054026: e022 sd s0,0(sp) + c00541f2: 1141 addi sp,sp,-16 + c00541f4: e406 sd ra,8(sp) + c00541f6: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:123 /* Verify that a semaphore was provided and the count is within the valid @@ -234289,16 +234487,16 @@ int sem_init(FAR sem_t *sem, int pshared, unsigned int value) */ if (sem == NULL || value > SEM_VALUE_MAX) - c0054028: c501 beqz a0,c0054030 + c00541f8: c501 beqz a0,c0054200 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:123 (discriminator 1) - c005402a: 6721 lui a4,0x8 - c005402c: 00e66c63 bltu a2,a4,c0054044 + c00541fa: 6721 lui a4,0x8 + c00541fc: 00e66c63 bltu a2,a4,c0054214 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:125 { set_errno(EINVAL); - c0054030: aa5ff0ef jal ra,c0053ad4 <__errno> - c0054034: 47d9 li a5,22 - c0054036: c11c sw a5,0(a0) + c0054200: aa5ff0ef jal ra,c0053ca4 <__errno> + c0054204: 47d9 li a5,22 + c0054206: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:133 ret = nxsem_init(sem, pshared, value); @@ -234306,32 +234504,32 @@ int sem_init(FAR sem_t *sem, int pshared, unsigned int value) { set_errno(-ret); ret = ERROR; - c0054038: 547d li s0,-1 + c0054208: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:137 } return ret; } - c005403a: 60a2 ld ra,8(sp) - c005403c: 8522 mv a0,s0 - c005403e: 6402 ld s0,0(sp) - c0054040: 0141 addi sp,sp,16 - c0054042: 8082 ret + c005420a: 60a2 ld ra,8(sp) + c005420c: 8522 mv a0,s0 + c005420e: 6402 ld s0,0(sp) + c0054210: 0141 addi sp,sp,16 + c0054212: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:129 ret = nxsem_init(sem, pshared, value); - c0054044: fa5ff0ef jal ra,c0053fe8 - c0054048: 842a mv s0,a0 + c0054214: fa5ff0ef jal ra,c00541b8 + c0054218: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:130 if (ret < 0) - c005404a: fe0558e3 bgez a0,c005403a + c005421a: fe0558e3 bgez a0,c005420a /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_init.c:132 set_errno(-ret); - c005404e: a87ff0ef jal ra,c0053ad4 <__errno> - c0054052: 4080043b negw s0,s0 - c0054056: c100 sw s0,0(a0) - c0054058: b7c5 j c0054038 + c005421e: a87ff0ef jal ra,c0053ca4 <__errno> + c0054222: 4080043b negw s0,s0 + c0054226: c100 sw s0,0(a0) + c0054228: b7c5 j c0054208 -00000000c005405a : +00000000c005422a : nxsem_set_protocol(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:78 * @@ -234340,31 +234538,31 @@ nxsem_set_protocol(): int nxsem_set_protocol(FAR sem_t *sem, int protocol) { DEBUGASSERT(sem != NULL); - c005405a: ed01 bnez a0,c0054072 + c005422a: ed01 bnez a0,c0054242 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:77 { - c005405c: 1141 addi sp,sp,-16 + c005422c: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:78 DEBUGASSERT(sem != NULL); - c005405e: 4601 li a2,0 - c0054060: 04e00593 li a1,78 - c0054064: 0001f517 auipc a0,0x1f - c0054068: b4c50513 addi a0,a0,-1204 # c0072bb0 + c005422e: 4601 li a2,0 + c0054230: 04e00593 li a1,78 + c0054234: 0001f517 auipc a0,0x1f + c0054238: bdc50513 addi a0,a0,-1060 # c0072e10 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:77 { - c005406c: e406 sd ra,8(sp) + c005423c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:78 DEBUGASSERT(sem != NULL); - c005406e: 9abff0ef jal ra,c0053a18 <__assert> - c0054072: 87aa mv a5,a0 + c005423e: 9abff0ef jal ra,c0053be8 <__assert> + c0054242: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:80 (discriminator 2) switch (protocol & SEM_PRIO_MASK) - c0054074: 0035f513 andi a0,a1,3 - c0054078: c911 beqz a0,c005408c + c0054244: 0035f513 andi a0,a1,3 + c0054248: c911 beqz a0,c005425c /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:80 - c005407a: fff5071b addiw a4,a0,-1 - c005407e: 4785 li a5,1 + c005424a: fff5071b addiw a4,a0,-1 + c005424e: 4785 li a5,1 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:87 case SEM_PRIO_NONE: break; @@ -234372,12 +234570,12 @@ int nxsem_set_protocol(FAR sem_t *sem, int protocol) case SEM_PRIO_INHERIT: case SEM_PRIO_PROTECT: return -ENOTSUP; - c0054080: f7600513 li a0,-138 + c0054250: f7600513 li a0,-138 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:80 switch (protocol & SEM_PRIO_MASK) - c0054084: 00e7f663 bgeu a5,a4,c0054090 - c0054088: 5529 li a0,-22 - c005408a: 8082 ret + c0054254: 00e7f663 bgeu a5,a4,c0054260 + c0054258: 5529 li a0,-22 + c005425a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:93 default: @@ -234385,13 +234583,13 @@ int nxsem_set_protocol(FAR sem_t *sem, int protocol) } sem->flags = protocol; - c005408c: 00b78123 sb a1,2(a5) # 8002 <__clzdi2-0xbfff7ffe> + c005425c: 00b78123 sb a1,2(a5) # 8002 <__clzdi2-0xbfff7ffe> /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:95 return OK; } - c0054090: 8082 ret + c0054260: 8082 ret -00000000c0054092 : +00000000c0054262 : sem_setprotocol(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:137 * the errno value is set appropriately. @@ -234400,39 +234598,39 @@ sem_setprotocol(): int sem_setprotocol(FAR sem_t *sem, int protocol) { - c0054092: 1141 addi sp,sp,-16 - c0054094: e022 sd s0,0(sp) - c0054096: e406 sd ra,8(sp) + c0054262: 1141 addi sp,sp,-16 + c0054264: e022 sd s0,0(sp) + c0054266: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:140 int ret; ret = nxsem_set_protocol(sem, protocol); - c0054098: fc3ff0ef jal ra,c005405a - c005409c: 842a mv s0,a0 + c0054268: fc3ff0ef jal ra,c005422a + c005426c: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:141 if (ret < 0) - c005409e: 00055863 bgez a0,c00540ae + c005426e: 00055863 bgez a0,c005427e /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:143 { set_errno(-ret); - c00540a2: 4080043b negw s0,s0 - c00540a6: a2fff0ef jal ra,c0053ad4 <__errno> - c00540aa: c100 sw s0,0(a0) + c0054272: 4080043b negw s0,s0 + c0054276: a2fff0ef jal ra,c0053ca4 <__errno> + c005427a: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:144 ret = ERROR; - c00540ac: 547d li s0,-1 + c005427c: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_setprotocol.c:148 } return ret; } - c00540ae: 60a2 ld ra,8(sp) - c00540b0: 8522 mv a0,s0 - c00540b2: 6402 ld s0,0(sp) - c00540b4: 0141 addi sp,sp,16 - c00540b6: 8082 ret + c005427e: 60a2 ld ra,8(sp) + c0054280: 8522 mv a0,s0 + c0054282: 6402 ld s0,0(sp) + c0054284: 0141 addi sp,sp,16 + c0054286: 8082 ret -00000000c00540b8 : +00000000c0054288 : nxsem_get_value(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:62 * returned on success. A negated errno value is returned on failure. @@ -234441,7 +234639,7 @@ nxsem_get_value(): int nxsem_get_value(FAR sem_t *sem, FAR int *sval) { - c00540b8: 87aa mv a5,a0 + c0054288: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:69 { *sval = sem->semcount; @@ -234449,31 +234647,31 @@ int nxsem_get_value(FAR sem_t *sem, FAR int *sval) } return -EINVAL; - c00540ba: 5529 li a0,-22 + c005428a: 5529 li a0,-22 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:63 if (sem != NULL && sval != NULL) - c00540bc: cb99 beqz a5,c00540d2 + c005428c: cb99 beqz a5,c00542a2 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:63 (discriminator 1) - c00540be: c991 beqz a1,c00540d2 + c005428e: c991 beqz a1,c00542a2 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:65 *sval = sem->semcount; - c00540c0: 0007d783 lhu a5,0(a5) + c0054290: 0007d783 lhu a5,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:66 return OK; - c00540c4: 4501 li a0,0 + c0054294: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:65 *sval = sem->semcount; - c00540c6: 0107979b slliw a5,a5,0x10 - c00540ca: 4107d79b sraiw a5,a5,0x10 - c00540ce: c19c sw a5,0(a1) + c0054296: 0107979b slliw a5,a5,0x10 + c005429a: 4107d79b sraiw a5,a5,0x10 + c005429e: c19c sw a5,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:66 return OK; - c00540d0: 8082 ret + c00542a0: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:70 } - c00540d2: 8082 ret + c00542a2: 8082 ret -00000000c00540d4 : +00000000c00542a4 : sem_getvalue(): /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:97 * returned and the errno value is set appropriately. @@ -234482,39 +234680,39 @@ sem_getvalue(): int sem_getvalue(FAR sem_t *sem, FAR int *sval) { - c00540d4: 1141 addi sp,sp,-16 - c00540d6: e022 sd s0,0(sp) - c00540d8: e406 sd ra,8(sp) + c00542a4: 1141 addi sp,sp,-16 + c00542a6: e022 sd s0,0(sp) + c00542a8: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:100 int ret; ret = nxsem_get_value(sem, sval); - c00540da: fdfff0ef jal ra,c00540b8 - c00540de: 842a mv s0,a0 + c00542aa: fdfff0ef jal ra,c0054288 + c00542ae: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:101 if (ret < 0) - c00540e0: 00055863 bgez a0,c00540f0 + c00542b0: 00055863 bgez a0,c00542c0 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:103 { set_errno(-ret); - c00540e4: 4080043b negw s0,s0 - c00540e8: 9edff0ef jal ra,c0053ad4 <__errno> - c00540ec: c100 sw s0,0(a0) + c00542b4: 4080043b negw s0,s0 + c00542b8: 9edff0ef jal ra,c0053ca4 <__errno> + c00542bc: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:104 ret = ERROR; - c00540ee: 547d li s0,-1 + c00542be: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/semaphore/sem_getvalue.c:108 } return ret; } - c00540f0: 60a2 ld ra,8(sp) - c00540f2: 8522 mv a0,s0 - c00540f4: 6402 ld s0,0(sp) - c00540f6: 0141 addi sp,sp,16 - c00540f8: 8082 ret + c00542c0: 60a2 ld ra,8(sp) + c00542c2: 8522 mv a0,s0 + c00542c4: 6402 ld s0,0(sp) + c00542c6: 0141 addi sp,sp,16 + c00542c8: 8082 ret -00000000c00540fa : +00000000c00542ca : signal(): /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:60 * and errno set to indicate the nature of the error. @@ -234523,43 +234721,43 @@ signal(): _sa_handler_t signal(int signo, _sa_handler_t func) { - c00540fa: 711d addi sp,sp,-96 - c00540fc: ec86 sd ra,88(sp) - c00540fe: e8a2 sd s0,80(sp) - c0054100: e4a6 sd s1,72(sp) + c00542ca: 711d addi sp,sp,-96 + c00542cc: ec86 sd ra,88(sp) + c00542ce: e8a2 sd s0,80(sp) + c00542d0: e4a6 sd s1,72(sp) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:65 struct sigaction act; struct sigaction oact; int ret = -EINVAL; if (!GOOD_SIGNO(signo) || UNCAUGHT_SIGNO(signo)) - c0054102: 03f00793 li a5,63 - c0054106: 06a7ea63 bltu a5,a0,c005417a + c00542d2: 03f00793 li a5,63 + c00542d6: 06a7ea63 bltu a5,a0,c005434a /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:65 (discriminator 1) - c005410a: 47a5 li a5,9 - c005410c: 84aa mv s1,a0 - c005410e: 06f50663 beq a0,a5,c005417a + c00542da: 47a5 li a5,9 + c00542dc: 84aa mv s1,a0 + c00542de: 06f50663 beq a0,a5,c005434a /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:65 (discriminator 2) - c0054112: 47cd li a5,19 - c0054114: 06f50363 beq a0,a5,c005417a + c00542e2: 47cd li a5,19 + c00542e4: 06f50363 beq a0,a5,c005434a /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:70 { goto err; } DEBUGASSERT(func != SIG_ERR && func != SIG_HOLD); - c0054118: 57fd li a5,-1 - c005411a: 842e mv s0,a1 - c005411c: 00f58563 beq a1,a5,c0054126 + c00542e8: 57fd li a5,-1 + c00542ea: 842e mv s0,a1 + c00542ec: 00f58563 beq a1,a5,c00542f6 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:70 (discriminator 2) - c0054120: 4785 li a5,1 - c0054122: 00f59b63 bne a1,a5,c0054138 + c00542f0: 4785 li a5,1 + c00542f2: 00f59b63 bne a1,a5,c0054308 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:70 (discriminator 3) - c0054126: 4601 li a2,0 - c0054128: 04600593 li a1,70 - c005412c: 0001f517 auipc a0,0x1f - c0054130: aa450513 addi a0,a0,-1372 # c0072bd0 - c0054134: 8e5ff0ef jal ra,c0053a18 <__assert> + c00542f6: 4601 li a2,0 + c00542f8: 04600593 li a1,70 + c00542fc: 0001f517 auipc a0,0x1f + c0054300: b3450513 addi a0,a0,-1228 # c0072e30 + c0054304: 8e5ff0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:76 (discriminator 4) /* Initialize the sigaction structure */ @@ -234567,16 +234765,16 @@ _sa_handler_t signal(int signo, _sa_handler_t func) act.sa_handler = func; act.sa_flags = 0; sigemptyset(&act.sa_mask); - c0054138: 0028 addi a0,sp,8 + c0054308: 0028 addi a0,sp,8 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:74 (discriminator 4) act.sa_handler = func; - c005413a: e02e sd a1,0(sp) + c005430a: e02e sd a1,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:75 (discriminator 4) act.sa_flags = 0; - c005413c: c802 sw zero,16(sp) + c005430c: c802 sw zero,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:76 (discriminator 4) sigemptyset(&act.sa_mask); - c005413e: 6c1020ef jal ra,c0056ffe + c005430e: 6c1020ef jal ra,c00571ce /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:84 (discriminator 4) * * REVISIT: Currently SIG_IGN, SIG_DFL, and SIG_HOLD have the same value @@ -234584,7 +234782,7 @@ _sa_handler_t signal(int signo, _sa_handler_t func) */ if (func != SIG_DFL /* && func != SIG_IGN */) - c0054142: ec11 bnez s0,c005415e + c0054312: ec11 bnez s0,c005432e /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:101 } } @@ -234592,11 +234790,11 @@ _sa_handler_t signal(int signo, _sa_handler_t func) /* Set the signal disposition */ ret = sigaction(signo, &act, &oact); - c0054144: 1010 addi a2,sp,32 - c0054146: 858a mv a1,sp - c0054148: 8526 mv a0,s1 - c005414a: 478030ef jal ra,c00575c2 - c005414e: 842a mv s0,a0 + c0054314: 1010 addi a2,sp,32 + c0054316: 858a mv a1,sp + c0054318: 8526 mv a0,s1 + c005431a: 478030ef jal ra,c0057792 + c005431e: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:108 /* Upon successful completion, signal() will the signal's previous * disposition. Otherwise, SIG_ERR will be returned and errno set to @@ -234604,11 +234802,11 @@ _sa_handler_t signal(int signo, _sa_handler_t func) */ if (ret == OK) - c0054150: ed11 bnez a0,c005416c + c0054320: ed11 bnez a0,c005433c /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:110 { return oact.sa_handler; - c0054152: 7502 ld a0,32(sp) + c0054322: 7502 ld a0,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:116 } @@ -234616,35 +234814,35 @@ err: set_errno(-ret); return (_sa_handler_t)SIG_ERR; } - c0054154: 60e6 ld ra,88(sp) - c0054156: 6446 ld s0,80(sp) - c0054158: 64a6 ld s1,72(sp) - c005415a: 6125 addi sp,sp,96 - c005415c: 8082 ret + c0054324: 60e6 ld ra,88(sp) + c0054326: 6446 ld s0,80(sp) + c0054328: 64a6 ld s1,72(sp) + c005432a: 6125 addi sp,sp,96 + c005432c: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:90 ret = sigaddset(&act.sa_mask, signo); - c005415e: 85a6 mv a1,s1 - c0054160: 0028 addi a0,sp,8 - c0054162: 681020ef jal ra,c0056fe2 - c0054166: 842a mv s0,a0 + c005432e: 85a6 mv a1,s1 + c0054330: 0028 addi a0,sp,8 + c0054332: 681020ef jal ra,c00571b2 + c0054336: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:91 if (ret < 0) - c0054168: fc055ee3 bgez a0,c0054144 + c0054338: fc055ee3 bgez a0,c0054314 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:114 set_errno(-ret); - c005416c: 969ff0ef jal ra,c0053ad4 <__errno> - c0054170: 4080043b negw s0,s0 - c0054174: c100 sw s0,0(a0) + c005433c: 969ff0ef jal ra,c0053ca4 <__errno> + c0054340: 4080043b negw s0,s0 + c0054344: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:115 return (_sa_handler_t)SIG_ERR; - c0054176: 557d li a0,-1 - c0054178: bff1 j c0054154 + c0054346: 557d li a0,-1 + c0054348: bff1 j c0054324 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_signal.c:63 int ret = -EINVAL; - c005417a: 5429 li s0,-22 - c005417c: bfc5 j c005416c + c005434a: 5429 li s0,-22 + c005434c: bfc5 j c005433c -00000000c005417e : +00000000c005434e : fileno(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:42 @@ -234653,43 +234851,43 @@ int fileno(FAR FILE *stream) int ret = -1; if (stream) - c005417e: c501 beqz a0,c0054186 + c005434e: c501 beqz a0,c0054356 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:44 { ret = (int)(intptr_t)stream->fs_cookie; - c0054180: 4928 lw a0,80(a0) + c0054350: 4928 lw a0,80(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:47 } if (ret < 0) - c0054182: 00055c63 bgez a0,c005419a + c0054352: 00055c63 bgez a0,c005436a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:39 { - c0054186: 1141 addi sp,sp,-16 - c0054188: e406 sd ra,8(sp) + c0054356: 1141 addi sp,sp,-16 + c0054358: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:49 { set_errno(EBADF); - c005418a: 94bff0ef jal ra,c0053ad4 <__errno> - c005418e: 47a5 li a5,9 - c0054190: c11c sw a5,0(a0) + c005435a: 94bff0ef jal ra,c0053ca4 <__errno> + c005435e: 47a5 li a5,9 + c0054360: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:54 return ERROR; } return ret; } - c0054192: 60a2 ld ra,8(sp) + c0054362: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:50 return ERROR; - c0054194: 557d li a0,-1 + c0054364: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fileno.c:54 } - c0054196: 0141 addi sp,sp,16 - c0054198: 8082 ret - c005419a: 8082 ret + c0054366: 0141 addi sp,sp,16 + c0054368: 8082 ret + c005436a: 8082 ret -00000000c005419c : +00000000c005436c : printf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:38 /**************************************************************************** @@ -234698,38 +234896,38 @@ printf(): int printf(FAR const IPTR char *fmt, ...) { - c005419c: 711d addi sp,sp,-96 - c005419e: e822 sd s0,16(sp) - c00541a0: e4be sd a5,72(sp) - c00541a2: 842a mv s0,a0 + c005436c: 711d addi sp,sp,-96 + c005436e: e822 sd s0,16(sp) + c0054370: e4be sd a5,72(sp) + c0054372: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:42 va_list ap; int ret; va_start(ap, fmt); - c00541a4: 103c addi a5,sp,40 + c0054374: 103c addi a5,sp,40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:44 #ifdef CONFIG_FILE_STREAM ret = vfprintf(stdout, fmt, ap); - c00541a6: 4505 li a0,1 + c0054376: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:38 { - c00541a8: ec06 sd ra,24(sp) - c00541aa: f42e sd a1,40(sp) - c00541ac: f832 sd a2,48(sp) - c00541ae: fc36 sd a3,56(sp) - c00541b0: e0ba sd a4,64(sp) - c00541b2: e8c2 sd a6,80(sp) - c00541b4: ecc6 sd a7,88(sp) + c0054378: ec06 sd ra,24(sp) + c005437a: f42e sd a1,40(sp) + c005437c: f832 sd a2,48(sp) + c005437e: fc36 sd a3,56(sp) + c0054380: e0ba sd a4,64(sp) + c0054382: e8c2 sd a6,80(sp) + c0054384: ecc6 sd a7,88(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:42 va_start(ap, fmt); - c00541b6: e43e sd a5,8(sp) + c0054386: e43e sd a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:44 ret = vfprintf(stdout, fmt, ap); - c00541b8: 630010ef jal ra,c00557e8 - c00541bc: 6622 ld a2,8(sp) - c00541be: 85a2 mv a1,s0 - c00541c0: 536010ef jal ra,c00556f6 + c0054388: 630010ef jal ra,c00559b8 + c005438c: 6622 ld a2,8(sp) + c005438e: 85a2 mv a1,s0 + c0054390: 536010ef jal ra,c00558c6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_printf.c:51 ret = vdprintf(STDOUT_FILENO, fmt, ap); #endif @@ -234737,12 +234935,12 @@ int printf(FAR const IPTR char *fmt, ...) return ret; } - c00541c4: 60e2 ld ra,24(sp) - c00541c6: 6442 ld s0,16(sp) - c00541c8: 6125 addi sp,sp,96 - c00541ca: 8082 ret + c0054394: 60e2 ld ra,24(sp) + c0054396: 6442 ld s0,16(sp) + c0054398: 6125 addi sp,sp,96 + c005439a: 8082 ret -00000000c00541cc : +00000000c005439c : sprintf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:37 /**************************************************************************** @@ -234751,8 +234949,8 @@ sprintf(): int sprintf(FAR char *buf, FAR const IPTR char *fmt, ...) { - c00541cc: 7119 addi sp,sp,-128 - c00541ce: e8b2 sd a2,80(sp) + c005439c: 7119 addi sp,sp,-128 + c005439e: e8b2 sd a2,80(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:44 va_list ap; int n; @@ -234760,57 +234958,57 @@ int sprintf(FAR char *buf, FAR const IPTR char *fmt, ...) /* Initialize a memory stream to write to the buffer */ lib_memoutstream(&memoutstream, buf, LIB_BUFLEN_UNKNOWN); - c00541d0: 80000637 lui a2,0x80000 + c00543a0: 80000637 lui a2,0x80000 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:37 { - c00541d4: e0a2 sd s0,64(sp) + c00543a4: e0a2 sd s0,64(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:44 lib_memoutstream(&memoutstream, buf, LIB_BUFLEN_UNKNOWN); - c00541d6: fff64613 not a2,a2 + c00543a6: fff64613 not a2,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:37 { - c00541da: 842e mv s0,a1 + c00543aa: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:44 lib_memoutstream(&memoutstream, buf, LIB_BUFLEN_UNKNOWN); - c00541dc: 85aa mv a1,a0 - c00541de: 0808 addi a0,sp,16 + c00543ac: 85aa mv a1,a0 + c00543ae: 0808 addi a0,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:37 { - c00541e0: e486 sd ra,72(sp) - c00541e2: ecb6 sd a3,88(sp) - c00541e4: f0ba sd a4,96(sp) - c00541e6: f4be sd a5,104(sp) - c00541e8: f8c2 sd a6,112(sp) - c00541ea: fcc6 sd a7,120(sp) + c00543b0: e486 sd ra,72(sp) + c00543b2: ecb6 sd a3,88(sp) + c00543b4: f0ba sd a4,96(sp) + c00543b6: f4be sd a5,104(sp) + c00543b8: f8c2 sd a6,112(sp) + c00543ba: fcc6 sd a7,120(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:44 lib_memoutstream(&memoutstream, buf, LIB_BUFLEN_UNKNOWN); - c00541ec: 2ec020ef jal ra,c00564d8 + c00543bc: 2ec020ef jal ra,c00566a8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:48 /* Then let lib_vsprintf do the real work */ va_start(ap, fmt); - c00541f0: 0890 addi a2,sp,80 + c00543c0: 0890 addi a2,sp,80 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:49 n = lib_vsprintf(&memoutstream.common, fmt, ap); - c00541f2: 85a2 mv a1,s0 - c00541f4: 0808 addi a0,sp,16 + c00543c2: 85a2 mv a1,s0 + c00543c4: 0808 addi a0,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:48 va_start(ap, fmt); - c00541f6: e432 sd a2,8(sp) + c00543c6: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:49 n = lib_vsprintf(&memoutstream.common, fmt, ap); - c00541f8: 15c000ef jal ra,c0054354 + c00543c8: 15c000ef jal ra,c0054524 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_sprintf.c:52 va_end(ap); return n; } - c00541fc: 60a6 ld ra,72(sp) - c00541fe: 6406 ld s0,64(sp) - c0054200: 6109 addi sp,sp,128 - c0054202: 8082 ret + c00543cc: 60a6 ld ra,72(sp) + c00543ce: 6406 ld s0,64(sp) + c00543d0: 6109 addi sp,sp,128 + c00543d2: 8082 ret -00000000c0054204 : +00000000c00543d4 : snprintf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:41 /**************************************************************************** @@ -234819,15 +235017,15 @@ snprintf(): int snprintf(FAR char *buf, size_t size, FAR const IPTR char *format, ...) { - c0054204: 7119 addi sp,sp,-128 - c0054206: e0a2 sd s0,64(sp) - c0054208: e486 sd ra,72(sp) - c005420a: ecb6 sd a3,88(sp) - c005420c: f0ba sd a4,96(sp) - c005420e: f4be sd a5,104(sp) - c0054210: f8c2 sd a6,112(sp) - c0054212: fcc6 sd a7,120(sp) - c0054214: 8432 mv s0,a2 + c00543d4: 7119 addi sp,sp,-128 + c00543d6: e0a2 sd s0,64(sp) + c00543d8: e486 sd ra,72(sp) + c00543da: ecb6 sd a3,88(sp) + c00543dc: f0ba sd a4,96(sp) + c00543de: f4be sd a5,104(sp) + c00543e0: f8c2 sd a6,112(sp) + c00543e2: fcc6 sd a7,120(sp) + c00543e4: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:58 * be written, the number of bytes that would have been written had [size] * been sufficiently large excluding the terminating null shall be @@ -234835,16 +235033,16 @@ int snprintf(FAR char *buf, size_t size, FAR const IPTR char *format, ...) */ if (size > 0) - c0054216: c18d beqz a1,c0054238 + c00543e6: c18d beqz a1,c0054408 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:62 { /* Initialize a memory stream to write to the buffer */ lib_memoutstream(&u.memoutstream, buf, size); - c0054218: 0005861b sext.w a2,a1 - c005421c: 85aa mv a1,a0 - c005421e: 0808 addi a0,sp,16 - c0054220: 2b8020ef jal ra,c00564d8 + c00543e8: 0005861b sext.w a2,a1 + c00543ec: 85aa mv a1,a0 + c00543ee: 0808 addi a0,sp,16 + c00543f0: 2b8020ef jal ra,c00566a8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:75 stream = &u.nulloutstream; } @@ -234852,34 +235050,34 @@ int snprintf(FAR char *buf, size_t size, FAR const IPTR char *format, ...) /* Then let lib_vsprintf do the real work */ va_start(ap, format); - c0054224: 08b0 addi a2,sp,88 + c00543f4: 08b0 addi a2,sp,88 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:76 n = lib_vsprintf(stream, format, ap); - c0054226: 85a2 mv a1,s0 - c0054228: 0808 addi a0,sp,16 + c00543f6: 85a2 mv a1,s0 + c00543f8: 0808 addi a0,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:75 va_start(ap, format); - c005422a: e432 sd a2,8(sp) + c00543fa: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:76 n = lib_vsprintf(stream, format, ap); - c005422c: 128000ef jal ra,c0054354 + c00543fc: 128000ef jal ra,c0054524 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:79 va_end(ap); return n; } - c0054230: 60a6 ld ra,72(sp) - c0054232: 6406 ld s0,64(sp) - c0054234: 6109 addi sp,sp,128 - c0054236: 8082 ret + c0054400: 60a6 ld ra,72(sp) + c0054402: 6406 ld s0,64(sp) + c0054404: 6109 addi sp,sp,128 + c0054406: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:69 lib_nulloutstream(&u.nulloutstream); - c0054238: 0808 addi a0,sp,16 - c005423a: 310020ef jal ra,c005654a + c0054408: 0808 addi a0,sp,16 + c005440a: 310020ef jal ra,c005671a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_snprintf.c:70 stream = &u.nulloutstream; - c005423e: b7dd j c0054224 + c005440e: b7dd j c00543f4 -00000000c0054240 : +00000000c0054410 : vsnprintf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:42 * Name: vsnprintf @@ -234888,12 +235086,12 @@ vsnprintf(): int vsnprintf(FAR char *buf, size_t size, FAR const IPTR char *format, va_list ap) { - c0054240: 715d addi sp,sp,-80 - c0054242: e0a2 sd s0,64(sp) - c0054244: fc26 sd s1,56(sp) - c0054246: e486 sd ra,72(sp) - c0054248: 8432 mv s0,a2 - c005424a: 84b6 mv s1,a3 + c0054410: 715d addi sp,sp,-80 + c0054412: e0a2 sd s0,64(sp) + c0054414: fc26 sd s1,56(sp) + c0054416: e486 sd ra,72(sp) + c0054418: 8432 mv s0,a2 + c005441a: 84b6 mv s1,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:58 * be written, the number of bytes that would have been written had [size] * been sufficiently large excluding the terminating null shall be @@ -234901,16 +235099,16 @@ int vsnprintf(FAR char *buf, size_t size, FAR const IPTR char *format, */ if (size > 0) - c005424c: c18d beqz a1,c005426e + c005441c: c18d beqz a1,c005443e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:62 { /* Initialize a memory stream to write to the buffer */ lib_memoutstream(&u.memoutstream, buf, size); - c005424e: 0005861b sext.w a2,a1 - c0054252: 85aa mv a1,a0 - c0054254: 850a mv a0,sp - c0054256: 282020ef jal ra,c00564d8 + c005441e: 0005861b sext.w a2,a1 + c0054422: 85aa mv a1,a0 + c0054424: 850a mv a0,sp + c0054426: 282020ef jal ra,c00566a8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:75 stream = &u.nulloutstream; } @@ -234918,27 +235116,27 @@ int vsnprintf(FAR char *buf, size_t size, FAR const IPTR char *format, /* Then let lib_vsprintf do the real work */ n = lib_vsprintf(stream, format, ap); - c005425a: 8626 mv a2,s1 - c005425c: 85a2 mv a1,s0 - c005425e: 850a mv a0,sp - c0054260: 0f4000ef jal ra,c0054354 + c005442a: 8626 mv a2,s1 + c005442c: 85a2 mv a1,s0 + c005442e: 850a mv a0,sp + c0054430: 0f4000ef jal ra,c0054524 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:77 return n; } - c0054264: 60a6 ld ra,72(sp) - c0054266: 6406 ld s0,64(sp) - c0054268: 74e2 ld s1,56(sp) - c005426a: 6161 addi sp,sp,80 - c005426c: 8082 ret + c0054434: 60a6 ld ra,72(sp) + c0054436: 6406 ld s0,64(sp) + c0054438: 74e2 ld s1,56(sp) + c005443a: 6161 addi sp,sp,80 + c005443c: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:69 lib_nulloutstream(&u.nulloutstream); - c005426e: 850a mv a0,sp - c0054270: 2da020ef jal ra,c005654a + c005443e: 850a mv a0,sp + c0054440: 2da020ef jal ra,c005671a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vsnprintf.c:70 stream = &u.nulloutstream; - c0054274: b7dd j c005425a + c0054444: b7dd j c005442a -00000000c0054276 : +00000000c0054446 : perror(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:58 /**************************************************************************** @@ -234947,28 +235145,28 @@ perror(): void perror(FAR const char *s) { - c0054276: 1101 addi sp,sp,-32 - c0054278: e42a sd a0,8(sp) + c0054446: 1101 addi sp,sp,-32 + c0054448: e42a sd a0,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:63 /* If strerror() is not enabled, then just print the error number */ #ifdef CONFIG_LIBC_STRERROR # ifdef CONFIG_FILE_STREAM fprintf(PERROR_STREAM, "%s: %s\n", s, strerror(get_errno())); - c005427a: 4505 li a0,1 + c005444a: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:58 { - c005427c: ec06 sd ra,24(sp) - c005427e: e822 sd s0,16(sp) + c005444c: ec06 sd ra,24(sp) + c005444e: e822 sd s0,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:63 fprintf(PERROR_STREAM, "%s: %s\n", s, strerror(get_errno())); - c0054280: 568010ef jal ra,c00557e8 - c0054284: 842a mv s0,a0 - c0054286: 84fff0ef jal ra,c0053ad4 <__errno> - c005428a: 4108 lw a0,0(a0) - c005428c: 4d0020ef jal ra,c005675c - c0054290: 86aa mv a3,a0 - c0054292: 8522 mv a0,s0 + c0054450: 568010ef jal ra,c00559b8 + c0054454: 842a mv s0,a0 + c0054456: 84fff0ef jal ra,c0053ca4 <__errno> + c005445a: 4108 lw a0,0(a0) + c005445c: 4d0020ef jal ra,c005692c + c0054460: 86aa mv a3,a0 + c0054462: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:74 fprintf(PERROR_STREAM, "%s: Error %d\n", s, get_errno()); # else @@ -234976,25 +235174,25 @@ void perror(FAR const char *s) # endif #endif } - c0054294: 6442 ld s0,16(sp) + c0054464: 6442 ld s0,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:63 fprintf(PERROR_STREAM, "%s: %s\n", s, strerror(get_errno())); - c0054296: 6622 ld a2,8(sp) + c0054466: 6622 ld a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:74 } - c0054298: 60e2 ld ra,24(sp) + c0054468: 60e2 ld ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:63 fprintf(PERROR_STREAM, "%s: %s\n", s, strerror(get_errno())); - c005429a: 0001f597 auipc a1,0x1f - c005429e: 94e58593 addi a1,a1,-1714 # c0072be8 + c005446a: 0001f597 auipc a1,0x1f + c005446e: 9de58593 addi a1,a1,-1570 # c0072e48 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:74 } - c00542a2: 6105 addi sp,sp,32 + c0054472: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_perror.c:63 fprintf(PERROR_STREAM, "%s: %s\n", s, strerror(get_errno())); - c00542a4: 4340106f j c00556d8 + c0054474: 4340106f j c00558a8 -00000000c00542a8 : +00000000c0054478 : putchar(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:33 /**************************************************************************** @@ -235003,69 +235201,69 @@ putchar(): int putchar(int c) { - c00542a8: 1141 addi sp,sp,-16 - c00542aa: e022 sd s0,0(sp) - c00542ac: 842a mv s0,a0 + c0054478: 1141 addi sp,sp,-16 + c005447a: e022 sd s0,0(sp) + c005447c: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:35 #ifdef CONFIG_FILE_STREAM return fputc(c, stdout); - c00542ae: 4505 li a0,1 + c005447e: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:33 { - c00542b0: e406 sd ra,8(sp) + c0054480: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:35 return fputc(c, stdout); - c00542b2: 536010ef jal ra,c00557e8 - c00542b6: 85aa mv a1,a0 - c00542b8: 8522 mv a0,s0 + c0054482: 536010ef jal ra,c00559b8 + c0054486: 85aa mv a1,a0 + c0054488: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:40 #else unsigned char tmp = c; return write(STDOUT_FILENO, &tmp, 1) == 1 ? c : EOF; #endif } - c00542ba: 6402 ld s0,0(sp) - c00542bc: 60a2 ld ra,8(sp) - c00542be: 0141 addi sp,sp,16 + c005448a: 6402 ld s0,0(sp) + c005448c: 60a2 ld ra,8(sp) + c005448e: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:35 return fputc(c, stdout); - c00542c0: 33a0106f j c00555fa + c0054490: 33a0106f j c00557ca -00000000c00542c4 : +00000000c0054494 : putchar_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:43 int putchar_unlocked(int c) { - c00542c4: 1141 addi sp,sp,-16 - c00542c6: e022 sd s0,0(sp) - c00542c8: 842a mv s0,a0 + c0054494: 1141 addi sp,sp,-16 + c0054496: e022 sd s0,0(sp) + c0054498: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:45 #ifdef CONFIG_FILE_STREAM return fputc_unlocked(c, stdout); - c00542ca: 4505 li a0,1 + c005449a: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:43 { - c00542cc: e406 sd ra,8(sp) + c005449c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:45 return fputc_unlocked(c, stdout); - c00542ce: 51a010ef jal ra,c00557e8 - c00542d2: 85aa mv a1,a0 - c00542d4: 8522 mv a0,s0 + c005449e: 51a010ef jal ra,c00559b8 + c00544a2: 85aa mv a1,a0 + c00544a4: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:50 #else unsigned char tmp = c; return write(STDOUT_FILENO, &tmp, 1) == 1 ? c : EOF; #endif } - c00542d6: 6402 ld s0,0(sp) - c00542d8: 60a2 ld ra,8(sp) - c00542da: 0141 addi sp,sp,16 + c00544a6: 6402 ld s0,0(sp) + c00544a8: 60a2 ld ra,8(sp) + c00544aa: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putchar.c:45 return fputc_unlocked(c, stdout); - c00542dc: 2d20106f j c00555ae + c00544ac: 2d20106f j c005577e -00000000c00542e0 : +00000000c00544b0 : puts(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:44 * puts() writes the string s and a trailing newline to stdout. @@ -235074,21 +235272,21 @@ puts(): int puts(FAR const IPTR char *s) { - c00542e0: 7179 addi sp,sp,-48 - c00542e2: f022 sd s0,32(sp) - c00542e4: 842a mv s0,a0 + c00544b0: 7179 addi sp,sp,-48 + c00544b2: f022 sd s0,32(sp) + c00544b4: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:46 #ifdef CONFIG_FILE_STREAM FILE *stream = stdout; - c00542e6: 4505 li a0,1 + c00544b6: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:44 { - c00542e8: f406 sd ra,40(sp) - c00542ea: ec26 sd s1,24(sp) + c00544b8: f406 sd ra,40(sp) + c00544ba: ec26 sd s1,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:46 FILE *stream = stdout; - c00542ec: 4fc010ef jal ra,c00557e8 - c00542f0: 84aa mv s1,a0 + c00544bc: 4fc010ef jal ra,c00559b8 + c00544c0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:53 int nput = EOF; int ret; @@ -235096,40 +235294,40 @@ int puts(FAR const IPTR char *s) /* Write the string (the next two steps must be atomic) */ flockfile(stream); - c00542f2: 4d2010ef jal ra,c00557c4 + c00544c2: 4d2010ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:57 /* Write the string without its trailing '\0' */ nwritten = fputs_unlocked(s, stream); - c00542f6: 85a6 mv a1,s1 - c00542f8: 8522 mv a0,s0 - c00542fa: 32e010ef jal ra,c0055628 + c00544c6: 85a6 mv a1,s1 + c00544c8: 8522 mv a0,s0 + c00544ca: 32e010ef jal ra,c00557f8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:58 if (nwritten > 0) - c00542fe: 02a05a63 blez a0,c0054332 + c00544ce: 02a05a63 blez a0,c0054502 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:62 { /* Followed by a newline */ char newline = '\n'; - c0054302: 47a9 li a5,10 - c0054304: 842a mv s0,a0 + c00544d2: 47a9 li a5,10 + c00544d4: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:63 ret = lib_fwrite_unlocked(&newline, 1, stream); - c0054306: 8626 mv a2,s1 - c0054308: 4585 li a1,1 - c005430a: 00f10513 addi a0,sp,15 + c00544d6: 8626 mv a2,s1 + c00544d8: 4585 li a1,1 + c00544da: 00f10513 addi a0,sp,15 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:62 char newline = '\n'; - c005430e: 00f107a3 sb a5,15(sp) + c00544de: 00f107a3 sb a5,15(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:63 ret = lib_fwrite_unlocked(&newline, 1, stream); - c0054312: 0ee010ef jal ra,c0055400 + c00544e2: 0ee010ef jal ra,c00555d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:64 if (ret > 0) - c0054316: 2501 sext.w a0,a0 - c0054318: 00a05d63 blez a0,c0054332 + c00544e6: 2501 sext.w a0,a0 + c00544e8: 00a05d63 blez a0,c0054502 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:72 /* Flush the buffer after the newline is output if line buffering @@ -235137,26 +235335,26 @@ int puts(FAR const IPTR char *s) */ if ((stream->fs_flags & __FS_FLAG_LBF) != 0) - c005431c: 05a4c783 lbu a5,90(s1) + c00544ec: 05a4c783 lbu a5,90(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:66 nput = nwritten + 1; - c0054320: 2405 addiw s0,s0,1 + c00544f0: 2405 addiw s0,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:72 if ((stream->fs_flags & __FS_FLAG_LBF) != 0) - c0054322: 8b91 andi a5,a5,4 - c0054324: cb81 beqz a5,c0054334 + c00544f2: 8b91 andi a5,a5,4 + c00544f4: cb81 beqz a5,c0054504 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:74 { ret = lib_fflush_unlocked(stream); - c0054326: 8526 mv a0,s1 - c0054328: 262010ef jal ra,c005558a + c00544f6: 8526 mv a0,s1 + c00544f8: 262010ef jal ra,c005575a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:75 if (ret < 0) - c005432c: 2501 sext.w a0,a0 - c005432e: 00055363 bgez a0,c0054334 + c00544fc: 2501 sext.w a0,a0 + c00544fe: 00055363 bgez a0,c0054504 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:48 int nput = EOF; - c0054332: 547d li s0,-1 + c0054502: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:83 } } @@ -235164,9 +235362,9 @@ int puts(FAR const IPTR char *s) } funlockfile(stdout); - c0054334: 4505 li a0,1 - c0054336: 4b2010ef jal ra,c00557e8 - c005433a: 496010ef jal ra,c00557d0 + c0054504: 4505 li a0,1 + c0054506: 4b2010ef jal ra,c00559b8 + c005450a: 496010ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_puts.c:96 iov[1].iov_base = "\n"; iov[1].iov_len = 1; @@ -235174,14 +235372,14 @@ int puts(FAR const IPTR char *s) return writev(STDOUT_FILENO, iov, 2) == ++len ? len : EOF; #endif } - c005433e: 70a2 ld ra,40(sp) - c0054340: 8522 mv a0,s0 - c0054342: 7402 ld s0,32(sp) - c0054344: 64e2 ld s1,24(sp) - c0054346: 6145 addi sp,sp,48 - c0054348: 8082 ret + c005450e: 70a2 ld ra,40(sp) + c0054510: 8522 mv a0,s0 + c0054512: 7402 ld s0,32(sp) + c0054514: 64e2 ld s1,24(sp) + c0054516: 6145 addi sp,sp,48 + c0054518: 8082 ret -00000000c005434a : +00000000c005451a : lib_vsprintf_internal(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1404 * @@ -235190,1599 +235388,1599 @@ lib_vsprintf_internal(): int lib_vsprintf_internal(FAR struct lib_outstream_s *stream, FAR const IPTR char *fmt, va_list ap) { - c005434a: 86ae mv a3,a1 - c005434c: 8732 mv a4,a2 + c005451a: 86ae mv a3,a1 + c005451c: 8732 mv a4,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1405 return vsprintf_internal(stream, NULL, 0, fmt, ap); - c005434e: 4581 li a1,0 - c0054350: 4601 li a2,0 - c0054352: a019 j c0054358 + c005451e: 4581 li a1,0 + c0054520: 4601 li a2,0 + c0054522: a019 j c0054528 -00000000c0054354 : +00000000c0054524 : lib_vsprintf(): - c0054354: ff7ff06f j c005434a + c0054524: ff7ff06f j c005451a -00000000c0054358 : +00000000c0054528 : vsprintf_internal(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:158 static int vsprintf_internal(FAR struct lib_outstream_s *stream, - c0054358: 7171 addi sp,sp,-176 + c0054528: 7171 addi sp,sp,-176 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:432 flags &= ~FL_SHORT; - c005435a: 6785 lui a5,0x1 + c005452a: 6785 lui a5,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:158 static int vsprintf_internal(FAR struct lib_outstream_s *stream, - c005435c: f4de sd s7,104(sp) + c005452c: f4de sd s7,104(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:432 flags &= ~FL_SHORT; - c005435e: a0078b93 addi s7,a5,-1536 # a00 <__clzdi2-0xbffff600> + c005452e: a0078b93 addi s7,a5,-1536 # a00 <__clzdi2-0xbffff600> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1232 flags &= ~(FL_ALT | FL_ALTHEX | FL_ALTUPP); - c0054362: 77e9 lui a5,0xffffa - c0054364: 17bd addi a5,a5,-17 - c0054366: e83e sd a5,16(sp) + c0054532: 77e9 lui a5,0xffffa + c0054534: 17bd addi a5,a5,-17 + c0054536: e83e sd a5,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1221 if ((flags & FL_ALT) != 0 && (flags & FL_ALTHEX) == 0) - c0054368: 6791 lui a5,0x4 - c005436a: 07c1 addi a5,a5,16 + c0054538: 6791 lui a5,0x4 + c005453a: 07c1 addi a5,a5,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:158 static int vsprintf_internal(FAR struct lib_outstream_s *stream, - c005436c: f122 sd s0,160(sp) - c005436e: e54e sd s3,136(sp) - c0054370: e152 sd s4,128(sp) - c0054372: f0e2 sd s8,96(sp) - c0054374: f506 sd ra,168(sp) - c0054376: ed26 sd s1,152(sp) - c0054378: e94a sd s2,144(sp) - c005437a: fcd6 sd s5,120(sp) - c005437c: f8da sd s6,112(sp) - c005437e: ece6 sd s9,88(sp) - c0054380: e8ea sd s10,80(sp) - c0054382: e4ee sd s11,72(sp) - c0054384: 8c2a mv s8,a0 - c0054386: 8a36 mv s4,a3 - c0054388: 89ba mv s3,a4 + c005453c: f122 sd s0,160(sp) + c005453e: e54e sd s3,136(sp) + c0054540: e152 sd s4,128(sp) + c0054542: f0e2 sd s8,96(sp) + c0054544: f506 sd ra,168(sp) + c0054546: ed26 sd s1,152(sp) + c0054548: e94a sd s2,144(sp) + c005454a: fcd6 sd s5,120(sp) + c005454c: f8da sd s6,112(sp) + c005454e: ece6 sd s9,88(sp) + c0054550: e8ea sd s10,80(sp) + c0054552: e4ee sd s11,72(sp) + c0054554: 8c2a mv s8,a0 + c0054556: 8a36 mv s4,a3 + c0054558: 89ba mv s3,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:184 int total_len = 0; - c005438a: 4401 li s0,0 + c005455a: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1221 if ((flags & FL_ALT) != 0 && (flags & FL_ALTHEX) == 0) - c005438c: ec3e sd a5,24(sp) + c005455c: ec3e sd a5,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:194 c = fmt_char(fmt); - c005438e: 000a4903 lbu s2,0(s4) + c005455e: 000a4903 lbu s2,0(s4) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:195 if (c == '\0') - c0054392: 12090ce3 beqz s2,c0054cca + c0054562: 12090ce3 beqz s2,c0054e9a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:200 if (c == '%') - c0054396: 02500713 li a4,37 - c005439a: 87ca mv a5,s2 + c0054566: 02500713 li a4,37 + c005456a: 87ca mv a5,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:194 c = fmt_char(fmt); - c005439c: 001a0b13 addi s6,s4,1 + c005456c: 001a0b13 addi s6,s4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:200 if (c == '%') - c00543a0: 00e91863 bne s2,a4,c00543b0 + c0054570: 00e91863 bne s2,a4,c0054580 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:202 c = fmt_char(fmt); - c00543a4: 001a4903 lbu s2,1(s4) - c00543a8: 002a0b13 addi s6,s4,2 + c0054574: 001a4903 lbu s2,1(s4) + c0054578: 002a0b13 addi s6,s4,2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:203 if (c != '%') - c00543ac: 00f91b63 bne s2,a5,c00543c2 + c005457c: 00f91b63 bne s2,a5,c0054592 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:215 stream_putc(c, stream); - c00543b0: 008c3783 ld a5,8(s8) - c00543b4: 85ca mv a1,s2 - c00543b6: 8562 mv a0,s8 - c00543b8: 9782 jalr a5 - c00543ba: 2405 addiw s0,s0,1 + c0054580: 008c3783 ld a5,8(s8) + c0054584: 85ca mv a1,s2 + c0054586: 8562 mv a0,s8 + c0054588: 9782 jalr a5 + c005458a: 2405 addiw s0,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:194 c = fmt_char(fmt); - c00543bc: e04e sd s3,0(sp) - c00543be: 1050006f j c0054cc2 + c005458c: e04e sd s3,0(sp) + c005458e: 1050006f j c0054e92 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:221 prec = 0; - c00543c2: 4481 li s1,0 + c0054592: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:220 width = 0; - c00543c4: 4c81 li s9,0 + c0054594: 4c81 li s9,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:219 flags = 0; - c00543c6: 4d01 li s10,0 + c0054596: 4d01 li s10,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:225 if (flags < FL_ASTERISK) - c00543c8: 03f00813 li a6,63 + c0054598: 03f00813 li a6,63 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:390 if (c == 'z' || c == 't') - c00543cc: 07a00593 li a1,122 - c00543d0: 07400513 li a0,116 + c005459c: 07a00593 li a1,122 + c00545a0: 07400513 li a0,116 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:424 if (c == 'j') - c00543d4: 06a00313 li t1,106 + c00545a4: 06a00313 li t1,106 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:436 if (c == 'l') - c00543d8: 06c00e13 li t3,108 + c00545a8: 06c00e13 li t3,108 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:451 if (c == 'h') - c00543dc: 06800e93 li t4,104 + c00545ac: 06800e93 li t4,104 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:325 if (c >= '0' && c <= '9') - c00543e0: 4f25 li t5,9 + c00545b0: 4f25 li t5,9 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:339 if (c == '*') - c00543e2: 02a00f93 li t6,42 + c00545b2: 02a00f93 li t6,42 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:376 if (c == '.') - c00543e6: 02e00293 li t0,46 + c00545b6: 02e00293 li t0,46 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:334 width = 10 * width + c; - c00543ea: 46a9 li a3,10 + c00545ba: 46a9 li a3,10 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:252 if (flags < FL_LONG) - c00543ec: 1ff00393 li t2,511 + c00545bc: 1ff00393 li t2,511 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:227 switch (c) - c00543f0: 02b00613 li a2,43 - c00543f4: 02d00a13 li s4,45 - c00543f8: 03000a93 li s5,48 - c00543fc: 02300d93 li s11,35 + c00545c0: 02b00613 li a2,43 + c00545c4: 02d00a13 li s4,45 + c00545c8: 03000a93 li s5,48 + c00545cc: 02300d93 li s11,35 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:225 if (flags < FL_ASTERISK) - c0054400: 000d071b sext.w a4,s10 - c0054404: 15a86963 bltu a6,s10,c0054556 + c00545d0: 000d071b sext.w a4,s10 + c00545d4: 15a86963 bltu a6,s10,c0054726 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:227 switch (c) - c0054408: 12c90c63 beq s2,a2,c0054540 - c005440c: 03266763 bltu a2,s2,c005443a - c0054410: 02000793 li a5,32 - c0054414: 12f90863 beq s2,a5,c0054544 - c0054418: 13b90c63 beq s2,s11,c0054550 + c00545d8: 12c90c63 beq s2,a2,c0054710 + c00545dc: 03266763 bltu a2,s2,c005460a + c00545e0: 02000793 li a5,32 + c00545e4: 12f90863 beq s2,a5,c0054714 + c00545e8: 13b90c63 beq s2,s11,c0054720 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:325 if (c >= '0' && c <= '9') - c005441c: fd09071b addiw a4,s2,-48 - c0054420: 0ff77713 zext.b a4,a4 - c0054424: 16ef6363 bltu t5,a4,c005458a + c00545ec: fd09071b addiw a4,s2,-48 + c00545f0: 0ff77713 zext.b a4,a4 + c00545f4: 16ef6363 bltu t5,a4,c005475a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:328 if ((flags & FL_PREC) != 0) - c0054428: 100d7913 andi s2,s10,256 + c00545f8: 100d7913 andi s2,s10,256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:330 prec = 10 * prec + c; - c005442c: 2701 sext.w a4,a4 + c00545fc: 2701 sext.w a4,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:328 if ((flags & FL_PREC) != 0) - c005442e: 14090763 beqz s2,c005457c + c00545fe: 14090763 beqz s2,c005474c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:330 prec = 10 * prec + c; - c0054432: 029684bb mulw s1,a3,s1 - c0054436: 9cb9 addw s1,s1,a4 + c0054602: 029684bb mulw s1,a3,s1 + c0054606: 9cb9 addw s1,s1,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:331 continue; - c0054438: a039 j c0054446 + c0054608: a039 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:227 switch (c) - c005443a: 11490863 beq s2,s4,c005454a - c005443e: fd591fe3 bne s2,s5,c005441c + c005460a: 11490863 beq s2,s4,c005471a + c005460e: fd591fe3 bne s2,s5,c00545ec /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:230 flags |= FL_ZFILL; - c0054442: 001d6d13 ori s10,s10,1 + c0054612: 001d6d13 ori s10,s10,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:468 while ((c = fmt_char(fmt)) != 0); - c0054446: 000b4903 lbu s2,0(s6) - c005444a: 0b05 addi s6,s6,1 - c005444c: fa091ae3 bnez s2,c0054400 + c0054616: 000b4903 lbu s2,0(s6) + c005461a: 0b05 addi s6,s6,1 + c005461c: fa091ae3 bnez s2,c00545d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:905 buf[0] = va_arg(ap, int); - c0054450: 00898793 addi a5,s3,8 + c0054620: 00898793 addi a5,s3,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:551 if (c >= 'E' && c <= 'G') - c0054454: fbb9071b addiw a4,s2,-69 + c0054624: fbb9071b addiw a4,s2,-69 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:905 buf[0] = va_arg(ap, int); - c0054458: e03e sd a5,0(sp) + c0054628: e03e sd a5,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:551 if (c >= 'E' && c <= 'G') - c005445a: 0ff77713 zext.b a4,a4 - c005445e: 4689 li a3,2 - c0054460: 1ce6ee63 bltu a3,a4,c005463c + c005462a: 0ff77713 zext.b a4,a4 + c005462e: 4689 li a3,2 + c0054630: 1ce6ee63 bltu a3,a4,c005480c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:553 flags |= FL_FLTUPP; - c0054464: 6709 lui a4,0x2 + c0054634: 6709 lui a4,0x2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:554 c += 'e' - 'E'; - c0054466: 0209091b addiw s2,s2,32 + c0054636: 0209091b addiw s2,s2,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:553 flags |= FL_FLTUPP; - c005446a: 00ed6d33 or s10,s10,a4 + c005463a: 00ed6d33 or s10,s10,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:554 c += 'e' - 'E'; - c005446e: 0ff97913 zext.b s2,s2 + c005463e: 0ff97913 zext.b s2,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:571 if ((flags & FL_PREC) == 0) - c0054472: 100d7713 andi a4,s10,256 - c0054476: e311 bnez a4,c005447a + c0054642: 100d7713 andi a4,s10,256 + c0054646: e311 bnez a4,c005464a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:573 prec = 6; - c0054478: 4499 li s1,6 + c0054648: 4499 li s1,6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:578 if (c == 'e') - c005447a: 06500693 li a3,101 + c005464a: 06500693 li a3,101 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:580 ndigs = prec + 1; - c005447e: 0ff4f713 zext.b a4,s1 + c005464e: 0ff4f713 zext.b a4,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:578 if (c == 'e') - c0054482: 1ed91f63 bne s2,a3,c0054680 + c0054652: 1ed91f63 bne s2,a3,c0054850 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:580 ndigs = prec + 1; - c0054486: 2705 addiw a4,a4,1 + c0054656: 2705 addiw a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:582 flags |= FL_FLTEXP; - c0054488: 6691 lui a3,0x4 + c0054658: 6691 lui a3,0x4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:580 ndigs = prec + 1; - c005448a: 0ff77713 zext.b a4,a4 + c005465a: 0ff77713 zext.b a4,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:582 flags |= FL_FLTEXP; - c005448e: 00dd6d33 or s10,s10,a3 + c005465e: 00dd6d33 or s10,s10,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:581 ndecimal = 0; - c0054492: 4601 li a2,0 + c0054662: 4601 li a2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:614 ndigs = __dtoa_engine(value, &_dtoa, ndigs, - c0054494: 46bd li a3,15 - c0054496: 2601 sext.w a2,a2 - c0054498: 0ff77593 zext.b a1,a4 - c005449c: 00e6f363 bgeu a3,a4,c00544a2 - c00544a0: 45bd li a1,15 - c00544a2: 0009b507 fld fa0,0(s3) - c00544a6: 02810d93 addi s11,sp,40 - c00544aa: 856e mv a0,s11 - c00544ac: 0d5000ef jal ra,c0054d80 <__dtoa_engine> + c0054664: 46bd li a3,15 + c0054666: 2601 sext.w a2,a2 + c0054668: 0ff77593 zext.b a1,a4 + c005466c: 00e6f363 bgeu a3,a4,c0054672 + c0054670: 45bd li a1,15 + c0054672: 0009b507 fld fa0,0(s3) + c0054676: 02810d93 addi s11,sp,40 + c005467a: 856e mv a0,s11 + c005467c: 0d5000ef jal ra,c0054f50 <__dtoa_engine> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:619 if (_dtoa.flags & DTOA_MINUS) - c00544b0: 02c14703 lbu a4,44(sp) - c00544b4: 00177993 andi s3,a4,1 - c00544b8: 1c099f63 bnez s3,c0054696 + c0054680: 02c14703 lbu a4,44(sp) + c0054684: 00177993 andi s3,a4,1 + c0054688: 1c099f63 bnez s3,c0054866 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:623 else if ((flags & FL_PLUS) != 0) - c00544bc: 002d7613 andi a2,s10,2 - c00544c0: 1c061e63 bnez a2,c005469c + c005468c: 002d7613 andi a2,s10,2 + c0054690: 1c061e63 bnez a2,c005486c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:627 else if ((flags & FL_SPACE) != 0) - c00544c4: 004d7613 andi a2,s10,4 - c00544c8: c219 beqz a2,c00544ce + c0054694: 004d7613 andi a2,s10,4 + c0054698: c219 beqz a2,c005469e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:629 sign = ' '; - c00544ca: 02000993 li s3,32 + c005469a: 02000993 li s3,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:632 if (_dtoa.flags & (DTOA_NAN | DTOA_INF)) - c00544ce: 8b31 andi a4,a4,12 - c00544d0: 1e070463 beqz a4,c00546b8 + c005469e: 8b31 andi a4,a4,12 + c00546a0: 1e070463 beqz a4,c0054888 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:636 ndigs = sign ? 4 : 3; - c00544d4: 013034b3 snez s1,s3 + c00546a4: 013034b3 snez s1,s3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:637 if (width > ndigs) - c00544d8: 048d addi s1,s1,3 + c00546a8: 048d addi s1,s1,3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:651 width = 0; - c00544da: 4901 li s2,0 + c00546aa: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:637 if (width > ndigs) - c00544dc: 0394d263 bge s1,s9,c0054500 + c00546ac: 0394d263 bge s1,s9,c00546d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:639 width -= ndigs; - c00544e0: 409c893b subw s2,s9,s1 + c00546b0: 409c893b subw s2,s9,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:640 if ((flags & FL_LPAD) == 0) - c00544e4: 008d7713 andi a4,s10,8 + c00546b4: 008d7713 andi a4,s10,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:639 width -= ndigs; - c00544e8: 84ca mv s1,s2 + c00546b8: 84ca mv s1,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:640 if ((flags & FL_LPAD) == 0) - c00544ea: eb19 bnez a4,c0054500 + c00546ba: eb19 bnez a4,c00546d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:644 stream_putc(' ', stream); - c00544ec: 008c3703 ld a4,8(s8) - c00544f0: 02000593 li a1,32 - c00544f4: 8562 mv a0,s8 + c00546bc: 008c3703 ld a4,8(s8) + c00546c0: 02000593 li a1,32 + c00546c4: 8562 mv a0,s8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:646 while (--width); - c00544f6: 397d addiw s2,s2,-1 + c00546c6: 397d addiw s2,s2,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:644 stream_putc(' ', stream); - c00544f8: 9702 jalr a4 + c00546c8: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:646 while (--width); - c00544fa: fe0919e3 bnez s2,c00544ec + c00546ca: fe0919e3 bnez s2,c00546bc /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:644 stream_putc(' ', stream); - c00544fe: 9c25 addw s0,s0,s1 + c00546ce: 9c25 addw s0,s0,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:654 if (sign) - c0054500: 00098863 beqz s3,c0054510 + c00546d0: 00098863 beqz s3,c00546e0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:656 stream_putc(sign, stream); - c0054504: 008c3703 ld a4,8(s8) - c0054508: 85ce mv a1,s3 - c005450a: 8562 mv a0,s8 - c005450c: 2405 addiw s0,s0,1 - c005450e: 9702 jalr a4 + c00546d4: 008c3703 ld a4,8(s8) + c00546d8: 85ce mv a1,s3 + c00546da: 8562 mv a0,s8 + c00546dc: 2405 addiw s0,s0,1 + c00546de: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:660 if (_dtoa.flags & DTOA_NAN) - c0054510: 02c14703 lbu a4,44(sp) + c00546e0: 02c14703 lbu a4,44(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:659 p = "inf"; - c0054514: 0001e497 auipc s1,0x1e - c0054518: e6448493 addi s1,s1,-412 # c0072378 + c00546e4: 0001e497 auipc s1,0x1e + c00546e8: ef448493 addi s1,s1,-268 # c00725d8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:660 if (_dtoa.flags & DTOA_NAN) - c005451c: 8b21 andi a4,a4,8 - c005451e: c709 beqz a4,c0054528 + c00546ec: 8b21 andi a4,a4,8 + c00546ee: c709 beqz a4,c00546f8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:662 p = "nan"; - c0054520: 0001e497 auipc s1,0x1e - c0054524: e5048493 addi s1,s1,-432 # c0072370 + c00546f0: 0001e497 auipc s1,0x1e + c00546f4: ee048493 addi s1,s1,-288 # c00725d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:670 if ((flags & FL_FLTUPP) != 0) - c0054528: 6a09 lui s4,0x2 - c005452a: 9c05 subw s0,s0,s1 - c005452c: 014d7a33 and s4,s10,s4 + c00546f8: 6a09 lui s4,0x2 + c00546fa: 9c05 subw s0,s0,s1 + c00546fc: 014d7a33 and s4,s10,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:668 while ((ndigs = *p) != 0) - c0054530: 0004c583 lbu a1,0(s1) - c0054534: 009409bb addw s3,s0,s1 - c0054538: 16059563 bnez a1,c00546a2 + c0054700: 0004c583 lbu a1,0(s1) + c0054704: 009409bb addw s3,s0,s1 + c0054708: 16059563 bnez a1,c0054872 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1304 tail: - c005453c: 844a mv s0,s2 - c005453e: afbd j c0054cbc + c005470c: 844a mv s0,s2 + c005470e: afbd j c0054e8c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:234 flags |= FL_PLUS; - c0054540: 002d6d13 ori s10,s10,2 + c0054710: 002d6d13 ori s10,s10,2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:239 flags |= FL_SPACE; - c0054544: 004d6d13 ori s10,s10,4 + c0054714: 004d6d13 ori s10,s10,4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:240 continue; - c0054548: bdfd j c0054446 + c0054718: bdfd j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:243 flags |= FL_LPAD; - c005454a: 008d6d13 ori s10,s10,8 + c005471a: 008d6d13 ori s10,s10,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:244 continue; - c005454e: bde5 j c0054446 + c005471e: bde5 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:247 flags |= FL_ALT; - c0054550: 010d6d13 ori s10,s10,16 + c0054720: 010d6d13 ori s10,s10,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:248 continue; - c0054554: bdcd j c0054446 + c0054724: bdcd j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:252 if (flags < FL_LONG) - c0054556: ece3f3e3 bgeu t2,a4,c005441c + c0054726: ece3f3e3 bgeu t2,a4,c00545ec /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:390 if (c == 'z' || c == 't') - c005455a: 06b90d63 beq s2,a1,c00545d4 - c005455e: 06a90b63 beq s2,a0,c00545d4 + c005472a: 06b90d63 beq s2,a1,c00547a4 + c005472e: 06a90b63 beq s2,a0,c00547a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:424 if (c == 'j') - c0054562: 06691763 bne s2,t1,c00545d0 + c0054732: 06691763 bne s2,t1,c00547a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:432 flags &= ~FL_SHORT; - c0054566: bffd7793 andi a5,s10,-1025 - c005456a: 17c2 slli a5,a5,0x30 - c005456c: 93c1 srli a5,a5,0x30 - c005456e: 0177e7b3 or a5,a5,s7 + c0054736: bffd7793 andi a5,s10,-1025 + c005473a: 17c2 slli a5,a5,0x30 + c005473c: 93c1 srli a5,a5,0x30 + c005473e: 0177e7b3 or a5,a5,s7 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:462 flags &= ~FL_LONG; - c0054572: 03079d13 slli s10,a5,0x30 - c0054576: 030d5d13 srli s10,s10,0x30 + c0054742: 03079d13 slli s10,a5,0x30 + c0054746: 030d5d13 srli s10,s10,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:463 continue; - c005457a: b5f1 j c0054446 + c005474a: b5f1 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:334 width = 10 * width + c; - c005457c: 039688bb mulw a7,a3,s9 + c005474c: 039688bb mulw a7,a3,s9 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:335 flags |= FL_WIDTH; - c0054580: 080d6d13 ori s10,s10,128 + c0054750: 080d6d13 ori s10,s10,128 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:334 width = 10 * width + c; - c0054584: 00e88cbb addw s9,a7,a4 + c0054754: 00e88cbb addw s9,a7,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:336 continue; - c0054588: bd7d j c0054446 + c0054758: bd7d j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:339 if (c == '*') - c005458a: 03f91a63 bne s2,t6,c00545be + c005475a: 03f91a63 bne s2,t6,c005478e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:353 if ((flags & FL_PREC) != 0) - c005458e: 100d7913 andi s2,s10,256 + c005475e: 100d7913 andi s2,s10,256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:355 prec = va_arg(ap, int); - c0054592: 0009a703 lw a4,0(s3) - c0054596: 09a1 addi s3,s3,8 + c0054762: 0009a703 lw a4,0(s3) + c0054766: 09a1 addi s3,s3,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:353 if ((flags & FL_PREC) != 0) - c0054598: 00090863 beqz s2,c00545a8 + c0054768: 00090863 beqz s2,c0054778 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:356 if (prec < 0) - c005459c: 0007049b sext.w s1,a4 - c00545a0: ea0753e3 bgez a4,c0054446 - c00545a4: 4481 li s1,0 - c00545a6: b545 j c0054446 + c005476c: 0007049b sext.w s1,a4 + c0054770: ea0753e3 bgez a4,c0054616 + c0054774: 4481 li s1,0 + c0054776: b545 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:366 if (width < 0) - c00545a8: 00074663 bltz a4,c00545b4 + c0054778: 00074663 bltz a4,c0054784 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:364 flags |= FL_WIDTH; - c00545ac: 080d6d13 ori s10,s10,128 - c00545b0: 8cba mv s9,a4 - c00545b2: bd51 j c0054446 + c005477c: 080d6d13 ori s10,s10,128 + c0054780: 8cba mv s9,a4 + c0054782: bd51 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:368 width = -width; - c00545b4: 40e00cbb negw s9,a4 + c0054784: 40e00cbb negw s9,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:369 flags |= FL_LPAD; - c00545b8: 088d6d13 ori s10,s10,136 - c00545bc: b569 j c0054446 + c0054788: 088d6d13 ori s10,s10,136 + c005478c: b569 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:376 if (c == '.') - c00545be: f8591ee3 bne s2,t0,c005455a + c005478e: f8591ee3 bne s2,t0,c005472a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:378 if ((flags & FL_PREC) != 0) - c00545c2: 100d7713 andi a4,s10,256 - c00545c6: 70071263 bnez a4,c0054cca + c0054792: 100d7713 andi a4,s10,256 + c0054796: 70071263 bnez a4,c0054e9a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:383 flags |= FL_PREC; - c00545ca: 100d6d13 ori s10,s10,256 + c005479a: 100d6d13 ori s10,s10,256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:384 continue; - c00545ce: bda5 j c0054446 + c005479e: bda5 j c0054616 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:436 if (c == 'l') - c00545d0: 03c91363 bne s2,t3,c00545f6 + c00547a0: 03c91363 bne s2,t3,c00547c6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:438 if ((flags & FL_LONG) != 0) - c00545d4: 200d7913 andi s2,s10,512 + c00547a4: 200d7913 andi s2,s10,512 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:444 flags |= FL_LONG; - c00545d8: 200d6713 ori a4,s10,512 + c00547a8: 200d6713 ori a4,s10,512 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:438 if ((flags & FL_LONG) != 0) - c00545dc: 00090a63 beqz s2,c00545f0 + c00547ac: 00090a63 beqz s2,c00547c0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:440 flags |= FL_REPD_TYPE; - c00545e0: 6785 lui a5,0x1 - c00545e2: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> - c00545e6: 00fd67b3 or a5,s10,a5 - c00545ea: 03079713 slli a4,a5,0x30 - c00545ee: 9341 srli a4,a4,0x30 + c00547b0: 6785 lui a5,0x1 + c00547b2: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> + c00547b6: 00fd67b3 or a5,s10,a5 + c00547ba: 03079713 slli a4,a5,0x30 + c00547be: 9341 srli a4,a4,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:447 flags &= ~FL_SHORT; - c00545f0: bff77793 andi a5,a4,-1025 - c00545f4: bfbd j c0054572 + c00547c0: bff77793 andi a5,a4,-1025 + c00547c4: bfbd j c0054742 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:451 if (c == 'h') - c00545f6: 03d91363 bne s2,t4,c005461c + c00547c6: 03d91363 bne s2,t4,c00547ec /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:453 if ((flags & FL_SHORT) != 0) - c00545fa: 400d7913 andi s2,s10,1024 + c00547ca: 400d7913 andi s2,s10,1024 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:459 flags |= FL_SHORT; - c00545fe: 400d6713 ori a4,s10,1024 + c00547ce: 400d6713 ori a4,s10,1024 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:453 if ((flags & FL_SHORT) != 0) - c0054602: 00090a63 beqz s2,c0054616 + c00547d2: 00090a63 beqz s2,c00547e6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:455 flags |= FL_REPD_TYPE; - c0054606: 6785 lui a5,0x1 - c0054608: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> - c005460c: 00fd67b3 or a5,s10,a5 - c0054610: 03079713 slli a4,a5,0x30 - c0054614: 9341 srli a4,a4,0x30 + c00547d6: 6785 lui a5,0x1 + c00547d8: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> + c00547dc: 00fd67b3 or a5,s10,a5 + c00547e0: 03079713 slli a4,a5,0x30 + c00547e4: 9341 srli a4,a4,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:462 flags &= ~FL_LONG; - c0054616: dff77793 andi a5,a4,-513 - c005461a: bfa1 j c0054572 + c00547e6: dff77793 andi a5,a4,-513 + c00547ea: bfa1 j c0054742 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:476 if (c == 'p') - c005461c: 07000713 li a4,112 - c0054620: e2e918e3 bne s2,a4,c0054450 + c00547ec: 07000713 li a4,112 + c00547f0: e2e918e3 bne s2,a4,c0054620 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:480 flags &= ~(FL_LONG | FL_REPD_TYPE); - c0054624: 777d lui a4,0xfffff - c0054626: 5ff70713 addi a4,a4,1535 # fffffffffffff5ff <_ebss+0xffffffff3fefe4d9> - c005462a: 00ed77b3 and a5,s10,a4 + c00547f4: 777d lui a4,0xfffff + c00547f6: 5ff70713 addi a4,a4,1535 # fffffffffffff5ff <_ebss+0xffffffff3fefe4d9> + c00547fa: 00ed77b3 and a5,s10,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:485 flags |= (FL_LONG | FL_REPD_TYPE); - c005462e: 0177e7b3 or a5,a5,s7 - c0054632: 03079d13 slli s10,a5,0x30 - c0054636: 030d5d13 srli s10,s10,0x30 - c005463a: bd19 j c0054450 + c00547fe: 0177e7b3 or a5,a5,s7 + c0054802: 03079d13 slli s10,a5,0x30 + c0054806: 030d5d13 srli s10,s10,0x30 + c005480a: bd19 j c0054620 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:557 else if (c >= 'e' && c <= 'g') - c005463c: f9b9071b addiw a4,s2,-101 - c0054640: 0ff77713 zext.b a4,a4 - c0054644: e2e6f7e3 bgeu a3,a4,c0054472 + c005480c: f9b9071b addiw a4,s2,-101 + c0054810: 0ff77713 zext.b a4,a4 + c0054814: e2e6f7e3 bgeu a3,a4,c0054642 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:892 switch (c) - c0054648: 06300713 li a4,99 - c005464c: 2ee90863 beq s2,a4,c005493c - c0054650: 0df97713 andi a4,s2,223 - c0054654: 05300693 li a3,83 - c0054658: 32d71f63 bne a4,a3,c0054996 + c0054818: 06300713 li a4,99 + c005481c: 2ee90863 beq s2,a4,c0054b0c + c0054820: 0df97713 andi a4,s2,223 + c0054824: 05300693 li a3,83 + c0054828: 32d71f63 bne a4,a3,c0054b66 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:923 pnt = va_arg(ap, FAR char *); - c005465c: 0009ba03 ld s4,0(s3) + c005482c: 0009ba03 ld s4,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:925 if (pnt == NULL) - c0054660: 000a1663 bnez s4,c005466c + c0054830: 000a1663 bnez s4,c005483c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:927 pnt = g_nullstring; - c0054664: 00020a17 auipc s4,0x20 - c0054668: 37ca0a13 addi s4,s4,892 # c00749e0 + c0054834: 00020a17 auipc s4,0x20 + c0054838: 40ca0a13 addi s4,s4,1036 # c0074c40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:930 size = strnlen(pnt, (flags & FL_PREC) ? prec : ~0); - c005466c: 100d7713 andi a4,s10,256 - c0054670: 55fd li a1,-1 - c0054672: c311 beqz a4,c0054676 - c0054674: 85a6 mv a1,s1 - c0054676: 8552 mv a0,s4 - c0054678: 34a020ef jal ra,c00569c2 - c005467c: 84aa mv s1,a0 - c005467e: a4f1 j c005494a + c005483c: 100d7713 andi a4,s10,256 + c0054840: 55fd li a1,-1 + c0054842: c311 beqz a4,c0054846 + c0054844: 85a6 mv a1,s1 + c0054846: 8552 mv a0,s4 + c0054848: 34a020ef jal ra,c0056b92 + c005484c: 84aa mv s1,a0 + c005484e: a4f1 j c0054b1a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:584 else if (c == 'f') - c0054680: 06600693 li a3,102 + c0054850: 06600693 li a3,102 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:593 ndecimal = 0; - c0054684: 4601 li a2,0 + c0054854: 4601 li a2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:584 else if (c == 'f') - c0054686: e0d917e3 bne s2,a3,c0054494 + c0054856: e0d917e3 bne s2,a3,c0054664 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:588 flags |= FL_FLTFIX; - c005468a: 66a1 lui a3,0x8 + c005485a: 66a1 lui a3,0x8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:587 ndecimal = prec; - c005468c: 863a mv a2,a4 + c005485c: 863a mv a2,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:588 flags |= FL_FLTFIX; - c005468e: 00dd6d33 or s10,s10,a3 + c005485e: 00dd6d33 or s10,s10,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:586 ndigs = DTOA_MAX_DIG; - c0054692: 473d li a4,15 - c0054694: b501 j c0054494 + c0054862: 473d li a4,15 + c0054864: b501 j c0054664 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:621 sign = '-'; - c0054696: 02d00993 li s3,45 - c005469a: bd15 j c00544ce + c0054866: 02d00993 li s3,45 + c005486a: bd15 j c005469e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:625 sign = '+'; - c005469c: 02b00993 li s3,43 - c00546a0: b53d j c00544ce + c005486c: 02b00993 li s3,43 + c0054870: b53d j c005469e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:670 if ((flags & FL_FLTUPP) != 0) - c00546a2: 000a0563 beqz s4,c00546ac + c0054872: 000a0563 beqz s4,c005487c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:672 ndigs += 'I' - 'i'; - c00546a6: 3581 addiw a1,a1,-32 - c00546a8: 0ff5f593 zext.b a1,a1 + c0054876: 3581 addiw a1,a1,-32 + c0054878: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:675 stream_putc(ndigs, stream); - c00546ac: 008c3783 ld a5,8(s8) - c00546b0: 8562 mv a0,s8 + c005487c: 008c3783 ld a5,8(s8) + c0054880: 8562 mv a0,s8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:676 p++; - c00546b2: 0485 addi s1,s1,1 + c0054882: 0485 addi s1,s1,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:675 stream_putc(ndigs, stream); - c00546b4: 9782 jalr a5 + c0054884: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:676 p++; - c00546b6: bdad j c0054530 + c0054886: bdad j c0054700 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:682 if ((flags & (FL_FLTEXP | FL_FLTFIX)) == 0) - c00546b8: 7771 lui a4,0xffffc - c00546ba: 00ed7733 and a4,s10,a4 + c0054888: 7771 lui a4,0xffffc + c005488a: 00ed7733 and a4,s10,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:616 exp = _dtoa.exp; - c00546be: 5a22 lw s4,40(sp) + c005488e: 5a22 lw s4,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:614 ndigs = __dtoa_engine(value, &_dtoa, ndigs, - c00546c0: 0ff57a93 zext.b s5,a0 + c0054890: 0ff57a93 zext.b s5,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:682 if ((flags & (FL_FLTEXP | FL_FLTFIX)) == 0) - c00546c4: e329 bnez a4,c0054706 + c0054894: e329 bnez a4,c00548d6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:690 while (ndigs > 0 && _dtoa.digits[ndigs - 1] == '0') - c00546c6: 015d8733 add a4,s11,s5 - c00546ca: 03000613 li a2,48 - c00546ce: 000a8763 beqz s5,c00546dc - c00546d2: 00474583 lbu a1,4(a4) # ffffffffffffc004 <_ebss+0xffffffff3fefaede> - c00546d6: 177d addi a4,a4,-1 - c00546d8: 06c58563 beq a1,a2,c0054742 + c0054896: 015d8733 add a4,s11,s5 + c005489a: 03000613 li a2,48 + c005489e: 000a8763 beqz s5,c00548ac + c00548a2: 00474583 lbu a1,4(a4) # ffffffffffffc004 <_ebss+0xffffffff3fefaede> + c00548a6: 177d addi a4,a4,-1 + c00548a8: 06c58563 beq a1,a2,c0054912 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:695 if (-4 <= exp && exp < prec) - c00546dc: 5671 li a2,-4 + c00548ac: 5671 li a2,-4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:699 if (exp < 0 || ndigs > exp) - c00546de: 000a871b sext.w a4,s5 + c00548ae: 000a871b sext.w a4,s5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:695 if (-4 <= exp && exp < prec) - c00546e2: 06ca4463 blt s4,a2,c005474a - c00546e6: 0ff57513 zext.b a0,a0 - c00546ea: 06aa5063 bge s4,a0,c005474a + c00548b2: 06ca4463 blt s4,a2,c005491a + c00548b6: 0ff57513 zext.b a0,a0 + c00548ba: 06aa5063 bge s4,a0,c005491a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:697 flags |= FL_FLTFIX; - c00546ee: 6621 lui a2,0x8 - c00546f0: 00cd6d33 or s10,s10,a2 + c00548be: 6621 lui a2,0x8 + c00548c0: 00cd6d33 or s10,s10,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:699 if (exp < 0 || ndigs > exp) - c00546f4: 000a4563 bltz s4,c00546fe + c00548c4: 000a4563 bltz s4,c00548ce /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:705 prec = 0; - c00546f8: 4481 li s1,0 + c00548c8: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:699 if (exp < 0 || ndigs > exp) - c00546fa: 00ea5663 bge s4,a4,c0054706 + c00548ca: 00ea5663 bge s4,a4,c00548d6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:701 prec = ndigs - (exp + 1); - c00546fe: 001a049b addiw s1,s4,1 - c0054702: 409704bb subw s1,a4,s1 + c00548ce: 001a049b addiw s1,s4,1 + c00548d2: 409704bb subw s1,a4,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:718 if ((flags & FL_FLTFIX) != 0) - c0054706: 010d179b slliw a5,s10,0x10 - c005470a: 4107d79b sraiw a5,a5,0x10 - c005470e: e43e sd a5,8(sp) + c00548d6: 010d179b slliw a5,s10,0x10 + c00548da: 4107d79b sraiw a5,a5,0x10 + c00548de: e43e sd a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:724 n = 5; /* 1e+00 */ - c0054710: 4715 li a4,5 + c00548e0: 4715 li a4,5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:718 if ((flags & FL_FLTFIX) != 0) - c0054712: 0007d763 bgez a5,c0054720 + c00548e2: 0007d763 bgez a5,c00548f0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:720 n = (exp > 0 ? exp + 1 : 1); - c0054716: 8752 mv a4,s4 - c0054718: 000a5363 bgez s4,c005471e - c005471c: 4701 li a4,0 - c005471e: 2705 addiw a4,a4,1 + c00548e6: 8752 mv a4,s4 + c00548e8: 000a5363 bgez s4,c00548ee + c00548ec: 4701 li a4,0 + c00548ee: 2705 addiw a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:727 if (sign != 0) - c0054720: 00098363 beqz s3,c0054726 + c00548f0: 00098363 beqz s3,c00548f6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:729 n += 1; - c0054724: 2705 addiw a4,a4,1 + c00548f4: 2705 addiw a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:732 if (prec != 0) - c0054726: c48d beqz s1,c0054750 + c00548f6: c48d beqz s1,c0054920 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:734 n += prec + 1; - c0054728: 0014861b addiw a2,s1,1 - c005472c: 9f31 addw a4,a4,a2 + c00548f8: 0014861b addiw a2,s1,1 + c00548fc: 9f31 addw a4,a4,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:741 width = width > n ? width - n : 0; - c005472e: 4901 li s2,0 - c0054730: 01975463 bge a4,s9,c0054738 - c0054734: 40ec893b subw s2,s9,a4 + c00548fe: 4901 li s2,0 + c0054900: 01975463 bge a4,s9,c0054908 + c0054904: 40ec893b subw s2,s9,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:745 if ((flags & (FL_LPAD | FL_ZFILL)) == 0) - c0054738: 009d7713 andi a4,s10,9 - c005473c: eb1d bnez a4,c0054772 + c0054908: 009d7713 andi a4,s10,9 + c005490c: eb1d bnez a4,c0054942 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:741 width = width > n ? width - n : 0; - c005473e: 8cca mv s9,s2 - c0054740: a015 j c0054764 + c005490e: 8cca mv s9,s2 + c0054910: a015 j c0054934 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:692 ndigs--; - c0054742: 3afd addiw s5,s5,-1 - c0054744: 0ffafa93 zext.b s5,s5 - c0054748: b759 j c00546ce + c0054912: 3afd addiw s5,s5,-1 + c0054914: 0ffafa93 zext.b s5,s5 + c0054918: b759 j c005489e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:712 prec = ndigs - 1; - c005474a: fff7049b addiw s1,a4,-1 - c005474e: bf65 j c0054706 + c005491a: fff7049b addiw s1,a4,-1 + c005491e: bf65 j c00548d6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:736 else if ((flags & FL_ALT) != 0) - c0054750: 010d7613 andi a2,s10,16 - c0054754: de69 beqz a2,c005472e + c0054920: 010d7613 andi a2,s10,16 + c0054924: de69 beqz a2,c00548fe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:738 n += 1; - c0054756: 2705 addiw a4,a4,1 - c0054758: bfd9 j c005472e + c0054926: 2705 addiw a4,a4,1 + c0054928: bfd9 j c00548fe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:749 stream_putc(' ', stream); - c005475a: 02000593 li a1,32 - c005475e: 8562 mv a0,s8 - c0054760: 9602 jalr a2 + c005492a: 02000593 li a1,32 + c005492e: 8562 mv a0,s8 + c0054930: 9602 jalr a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:750 width--; - c0054762: 3cfd addiw s9,s9,-1 + c0054932: 3cfd addiw s9,s9,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:749 stream_putc(' ', stream); - c0054764: 008c3603 ld a2,8(s8) + c0054934: 008c3603 ld a2,8(s8) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:747 while (width) - c0054768: fe0c99e3 bnez s9,c005475a - c005476c: 0124043b addw s0,s0,s2 - c0054770: 4901 li s2,0 + c0054938: fe0c99e3 bnez s9,c005492a + c005493c: 0124043b addw s0,s0,s2 + c0054940: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:754 if (sign != 0) - c0054772: 00098863 beqz s3,c0054782 + c0054942: 00098863 beqz s3,c0054952 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:756 stream_putc(sign, stream); - c0054776: 008c3703 ld a4,8(s8) - c005477a: 85ce mv a1,s3 - c005477c: 8562 mv a0,s8 - c005477e: 2405 addiw s0,s0,1 - c0054780: 9702 jalr a4 + c0054946: 008c3703 ld a4,8(s8) + c005494a: 85ce mv a1,s3 + c005494c: 8562 mv a0,s8 + c005494e: 2405 addiw s0,s0,1 + c0054950: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:759 if ((flags & FL_LPAD) == 0) - c0054782: 008d7713 andi a4,s10,8 - c0054786: ef19 bnez a4,c00547a4 - c0054788: 8cca mv s9,s2 - c005478a: a031 j c0054796 + c0054952: 008d7713 andi a4,s10,8 + c0054956: ef19 bnez a4,c0054974 + c0054958: 8cca mv s9,s2 + c005495a: a031 j c0054966 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:763 stream_putc('0', stream); - c005478c: 03000593 li a1,48 - c0054790: 8562 mv a0,s8 - c0054792: 9682 jalr a3 + c005495c: 03000593 li a1,48 + c0054960: 8562 mv a0,s8 + c0054962: 9682 jalr a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:764 width--; - c0054794: 3cfd addiw s9,s9,-1 + c0054964: 3cfd addiw s9,s9,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:763 stream_putc('0', stream); - c0054796: 008c3683 ld a3,8(s8) + c0054966: 008c3683 ld a3,8(s8) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:761 while (width) - c005479a: fe0c99e3 bnez s9,c005478c - c005479e: 0089043b addw s0,s2,s0 - c00547a2: 4901 li s2,0 + c005496a: fe0c99e3 bnez s9,c005495c + c005496e: 0089043b addw s0,s2,s0 + c0054972: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:768 if ((flags & FL_FLTFIX) != 0) - c00547a4: 67a2 ld a5,8(sp) - c00547a6: 0807df63 bgez a5,c0054844 + c0054974: 67a2 ld a5,8(sp) + c0054976: 0807df63 bgez a5,c0054a14 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:780 n = exp > 0 ? exp : 0; /* Exponent of left digit */ - c00547aa: 8752 mv a4,s4 - c00547ac: 000a5363 bgez s4,c00547b2 - c00547b0: 4701 li a4,0 - c00547b2: 00070c9b sext.w s9,a4 + c005497a: 8752 mv a4,s4 + c005497c: 000a5363 bgez s4,c0054982 + c0054980: 4701 li a4,0 + c0054982: 00070c9b sext.w s9,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:785 if (n == -1) - c00547b6: 40ea073b subw a4,s4,a4 - c00547ba: 9dba add s11,s11,a4 + c0054986: 40ea073b subw a4,s4,a4 + c005498a: 9dba add s11,s11,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:792 if (0 <= exp - n && exp - n < ndigs) - c00547bc: 2a81 sext.w s5,s5 + c005498c: 2a81 sext.w s5,s5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:801 if (--n < -prec) - c00547be: 409004bb negw s1,s1 + c005498e: 409004bb negw s1,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:792 if (0 <= exp - n && exp - n < ndigs) - c00547c2: 419a063b subw a2,s4,s9 + c0054992: 419a063b subw a2,s4,s9 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:798 out = '0'; - c00547c6: 03000593 li a1,48 + c0054996: 03000593 li a1,48 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:792 if (0 <= exp - n && exp - n < ndigs) - c00547ca: 01567463 bgeu a2,s5,c00547d2 + c005499a: 01567463 bgeu a2,s5,c00549a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:794 out = _dtoa.digits[exp - n]; - c00547ce: 005dc583 lbu a1,5(s11) + c005499e: 005dc583 lbu a1,5(s11) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:801 if (--n < -prec) - c00547d2: 3cfd addiw s9,s9,-1 + c00549a2: 3cfd addiw s9,s9,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:806 stream_putc(out, stream); - c00547d4: 008c3603 ld a2,8(s8) - c00547d8: 0014099b addiw s3,s0,1 + c00549a4: 008c3603 ld a2,8(s8) + c00549a8: 0014099b addiw s3,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:801 if (--n < -prec) - c00547dc: 029cc263 blt s9,s1,c0054800 + c00549ac: 029cc263 blt s9,s1,c00549d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:806 stream_putc(out, stream); - c00547e0: 8562 mv a0,s8 - c00547e2: 9602 jalr a2 + c00549b0: 8562 mv a0,s8 + c00549b2: 9602 jalr a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:785 if (n == -1) - c00547e4: 57fd li a5,-1 - c00547e6: 00fc9a63 bne s9,a5,c00547fa + c00549b4: 57fd li a5,-1 + c00549b6: 00fc9a63 bne s9,a5,c00549ca /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:787 stream_putc('.', stream); - c00547ea: 008c3603 ld a2,8(s8) - c00547ee: 02e00593 li a1,46 - c00547f2: 8562 mv a0,s8 - c00547f4: 0024099b addiw s3,s0,2 - c00547f8: 9602 jalr a2 - c00547fa: 0d85 addi s11,s11,1 + c00549ba: 008c3603 ld a2,8(s8) + c00549be: 02e00593 li a1,46 + c00549c2: 8562 mv a0,s8 + c00549c4: 0024099b addiw s3,s0,2 + c00549c8: 9602 jalr a2 + c00549ca: 0d85 addi s11,s11,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:761 while (width) - c00547fc: 844e mv s0,s3 - c00547fe: b7d1 j c00547c2 + c00549cc: 844e mv s0,s3 + c00549ce: b7d1 j c0054992 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:810 if (n == exp && (_dtoa.digits[0] > '5' || - c0054800: 039a1063 bne s4,s9,c0054820 - c0054804: 02d14503 lbu a0,45(sp) - c0054808: 03500713 li a4,53 - c005480c: 00a76863 bltu a4,a0,c005481c - c0054810: 00e51863 bne a0,a4,c0054820 + c00549d0: 039a1063 bne s4,s9,c00549f0 + c00549d4: 02d14503 lbu a0,45(sp) + c00549d8: 03500713 li a4,53 + c00549dc: 00a76863 bltu a4,a0,c00549ec + c00549e0: 00e51863 bne a0,a4,c00549f0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:811 (_dtoa.digits[0] == '5' && !(_dtoa.flags & DTOA_CARRY)))) - c0054814: 02c14703 lbu a4,44(sp) - c0054818: 8b41 andi a4,a4,16 - c005481a: e319 bnez a4,c0054820 + c00549e4: 02c14703 lbu a4,44(sp) + c00549e8: 8b41 andi a4,a4,16 + c00549ea: e319 bnez a4,c00549f0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:813 out = '1'; - c005481c: 03100593 li a1,49 + c00549ec: 03100593 li a1,49 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:816 stream_putc(out, stream); - c0054820: 8562 mv a0,s8 - c0054822: 9602 jalr a2 + c00549f0: 8562 mv a0,s8 + c00549f2: 9602 jalr a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:818 if ((flags & FL_ALT) != 0 && n == -1) - c0054824: 010d7793 andi a5,s10,16 - c0054828: d0078ae3 beqz a5,c005453c - c005482c: 57fd li a5,-1 - c005482e: d0fc97e3 bne s9,a5,c005453c + c00549f4: 010d7793 andi a5,s10,16 + c00549f8: d0078ae3 beqz a5,c005470c + c00549fc: 57fd li a5,-1 + c00549fe: d0fc97e3 bne s9,a5,c005470c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:820 stream_putc('.', stream); - c0054832: 008c3783 ld a5,8(s8) - c0054836: 02e00593 li a1,46 - c005483a: 8562 mv a0,s8 - c005483c: 0024099b addiw s3,s0,2 - c0054840: 9782 jalr a5 - c0054842: b9ed j c005453c + c0054a02: 008c3783 ld a5,8(s8) + c0054a06: 02e00593 li a1,46 + c0054a0a: 8562 mv a0,s8 + c0054a0c: 0024099b addiw s3,s0,2 + c0054a10: 9782 jalr a5 + c0054a12: b9ed j c005470c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:830 if (_dtoa.digits[0] != '1') - c0054844: 02d14583 lbu a1,45(sp) - c0054848: 03100713 li a4,49 - c005484c: 00e58763 beq a1,a4,c005485a + c0054a14: 02d14583 lbu a1,45(sp) + c0054a18: 03100713 li a4,49 + c0054a1c: 00e58763 beq a1,a4,c0054a2a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:832 _dtoa.flags &= ~DTOA_CARRY; - c0054850: 02c14703 lbu a4,44(sp) - c0054854: 9b3d andi a4,a4,-17 - c0054856: 02e10623 sb a4,44(sp) + c0054a20: 02c14703 lbu a4,44(sp) + c0054a24: 9b3d andi a4,a4,-17 + c0054a26: 02e10623 sb a4,44(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:835 stream_putc(_dtoa.digits[0], stream); - c005485a: 008c3703 ld a4,8(s8) - c005485e: 8562 mv a0,s8 - c0054860: 9702 jalr a4 + c0054a2a: 008c3703 ld a4,8(s8) + c0054a2e: 8562 mv a0,s8 + c0054a30: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:836 if (prec > 0) - c0054862: 008c3703 ld a4,8(s8) - c0054866: 0a905063 blez s1,c0054906 + c0054a32: 008c3703 ld a4,8(s8) + c0054a36: 0a905063 blez s1,c0054ad6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:840 stream_putc('.', stream); - c005486a: 02e00593 li a1,46 - c005486e: 8562 mv a0,s8 - c0054870: 2409 addiw s0,s0,2 - c0054872: 9702 jalr a4 + c0054a3a: 02e00593 li a1,46 + c0054a3e: 8562 mv a0,s8 + c0054a40: 2409 addiw s0,s0,2 + c0054a42: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:841 for (pos = 1; pos < 1 + prec; pos++) - c0054874: 4985 li s3,1 + c0054a44: 4985 li s3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:843 stream_putc(pos < ndigs ? _dtoa.digits[pos] : '0', - c0054876: 008c3683 ld a3,8(s8) + c0054a46: 008c3683 ld a3,8(s8) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:841 for (pos = 1; pos < 1 + prec; pos++) - c005487a: 0009871b sext.w a4,s3 - c005487e: 0734d563 bge s1,s3,c00548e8 + c0054a4a: 0009871b sext.w a4,s3 + c0054a4e: 0734d563 bge s1,s3,c0054ab8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:854 stream_putc(flags & FL_FLTUPP ? 'E' : 'e', stream); - c0054882: 6709 lui a4,0x2 - c0054884: 00ed77b3 and a5,s10,a4 - c0054888: 008c3683 ld a3,8(s8) - c005488c: 04500593 li a1,69 - c0054890: e399 bnez a5,c0054896 - c0054892: 06500593 li a1,101 - c0054896: 8562 mv a0,s8 - c0054898: 9682 jalr a3 + c0054a52: 6709 lui a4,0x2 + c0054a54: 00ed77b3 and a5,s10,a4 + c0054a58: 008c3683 ld a3,8(s8) + c0054a5c: 04500593 li a1,69 + c0054a60: e399 bnez a5,c0054a66 + c0054a62: 06500593 li a1,101 + c0054a66: 8562 mv a0,s8 + c0054a68: 9682 jalr a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:856 if (exp < 0 || (exp == 0 && (_dtoa.flags & DTOA_CARRY) != 0)) - c005489a: 000a4a63 bltz s4,c00548ae + c0054a6a: 000a4a63 bltz s4,c0054a7e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:855 ndigs = '+'; - c005489e: 02b00593 li a1,43 + c0054a6e: 02b00593 li a1,43 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:856 if (exp < 0 || (exp == 0 && (_dtoa.flags & DTOA_CARRY) != 0)) - c00548a2: 000a1a63 bnez s4,c00548b6 - c00548a6: 02c14783 lbu a5,44(sp) - c00548aa: 8bc1 andi a5,a5,16 - c00548ac: c789 beqz a5,c00548b6 + c0054a72: 000a1a63 bnez s4,c0054a86 + c0054a76: 02c14783 lbu a5,44(sp) + c0054a7a: 8bc1 andi a5,a5,16 + c0054a7c: c789 beqz a5,c0054a86 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:858 exp = -exp; - c00548ae: 41400a3b negw s4,s4 + c0054a7e: 41400a3b negw s4,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:859 ndigs = '-'; - c00548b2: 02d00593 li a1,45 + c0054a82: 02d00593 li a1,45 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:862 stream_putc(ndigs, stream); - c00548b6: 008c3783 ld a5,8(s8) - c00548ba: 8562 mv a0,s8 - c00548bc: 9782 jalr a5 + c0054a86: 008c3783 ld a5,8(s8) + c0054a8a: 8562 mv a0,s8 + c0054a8c: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:863 c = __ultoa_invert(exp, buf, 10) - buf; - c00548be: 4629 li a2,10 - c00548c0: 85ee mv a1,s11 - c00548c2: 8552 mv a0,s4 - c00548c4: 47c000ef jal ra,c0054d40 <__ultoa_invert> - c00548c8: 41b504b3 sub s1,a0,s11 + c0054a8e: 4629 li a2,10 + c0054a90: 85ee mv a1,s11 + c0054a92: 8552 mv a0,s4 + c0054a94: 47c000ef jal ra,c0054f10 <__ultoa_invert> + c0054a98: 41b504b3 sub s1,a0,s11 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:865 if (exp >= 0 && exp <= 9) - c00548cc: 47a5 li a5,9 + c0054a9c: 47a5 li a5,9 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:863 c = __ultoa_invert(exp, buf, 10) - buf; - c00548ce: 0ff4f993 zext.b s3,s1 + c0054a9e: 0ff4f993 zext.b s3,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:865 if (exp >= 0 && exp <= 9) - c00548d2: 0547f563 bgeu a5,s4,c005491c + c0054aa2: 0547f563 bgeu a5,s4,c0054aec /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:862 stream_putc(ndigs, stream); - c00548d6: 2409 addiw s0,s0,2 - c00548d8: 0ff4f493 zext.b s1,s1 - c00548dc: 94ee add s1,s1,s11 + c0054aa6: 2409 addiw s0,s0,2 + c0054aa8: 0ff4f493 zext.b s1,s1 + c0054aac: 94ee add s1,s1,s11 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:870 while (c > 0) - c00548de: 049d9763 bne s11,s1,c005492c - c00548e2: 008989bb addw s3,s3,s0 - c00548e6: b999 j c005453c + c0054aae: 049d9763 bne s11,s1,c0054afc + c0054ab2: 008989bb addw s3,s3,s0 + c0054ab6: b999 j c005470c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:843 stream_putc(pos < ndigs ? _dtoa.digits[pos] : '0', - c00548e8: 2405 addiw s0,s0,1 - c00548ea: 03000593 li a1,48 - c00548ee: 0159f663 bgeu s3,s5,c00548fa - c00548f2: 009c addi a5,sp,64 - c00548f4: 973e add a4,a4,a5 - c00548f6: fed74583 lbu a1,-19(a4) # 1fed <__clzdi2-0xbfffe013> - c00548fa: 8562 mv a0,s8 + c0054ab8: 2405 addiw s0,s0,1 + c0054aba: 03000593 li a1,48 + c0054abe: 0159f663 bgeu s3,s5,c0054aca + c0054ac2: 009c addi a5,sp,64 + c0054ac4: 973e add a4,a4,a5 + c0054ac6: fed74583 lbu a1,-19(a4) # 1fed <__clzdi2-0xbfffe013> + c0054aca: 8562 mv a0,s8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:841 for (pos = 1; pos < 1 + prec; pos++) - c00548fc: 2985 addiw s3,s3,1 + c0054acc: 2985 addiw s3,s3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:843 stream_putc(pos < ndigs ? _dtoa.digits[pos] : '0', - c00548fe: 9682 jalr a3 + c0054ace: 9682 jalr a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:841 for (pos = 1; pos < 1 + prec; pos++) - c0054900: 0ff9f993 zext.b s3,s3 - c0054904: bf8d j c0054876 + c0054ad0: 0ff9f993 zext.b s3,s3 + c0054ad4: bf8d j c0054a46 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:847 else if ((flags & FL_ALT) != 0) - c0054906: 010d7693 andi a3,s10,16 - c005490a: e299 bnez a3,c0054910 + c0054ad6: 010d7693 andi a3,s10,16 + c0054ada: e299 bnez a3,c0054ae0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:835 stream_putc(_dtoa.digits[0], stream); - c005490c: 2405 addiw s0,s0,1 - c005490e: bf95 j c0054882 + c0054adc: 2405 addiw s0,s0,1 + c0054ade: bf95 j c0054a52 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:849 stream_putc('.', stream); - c0054910: 02e00593 li a1,46 - c0054914: 8562 mv a0,s8 - c0054916: 2409 addiw s0,s0,2 - c0054918: 9702 jalr a4 - c005491a: b7a5 j c0054882 + c0054ae0: 02e00593 li a1,46 + c0054ae4: 8562 mv a0,s8 + c0054ae6: 2409 addiw s0,s0,2 + c0054ae8: 9702 jalr a4 + c0054aea: b7a5 j c0054a52 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:867 stream_putc('0', stream); - c005491c: 008c3783 ld a5,8(s8) - c0054920: 03000593 li a1,48 - c0054924: 8562 mv a0,s8 - c0054926: 240d addiw s0,s0,3 - c0054928: 9782 jalr a5 - c005492a: b77d j c00548d8 + c0054aec: 008c3783 ld a5,8(s8) + c0054af0: 03000593 li a1,48 + c0054af4: 8562 mv a0,s8 + c0054af6: 240d addiw s0,s0,3 + c0054af8: 9782 jalr a5 + c0054afa: b77d j c0054aa8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:872 stream_putc(buf[c - 1], stream); - c005492c: fff4c583 lbu a1,-1(s1) - c0054930: 008c3783 ld a5,8(s8) - c0054934: 8562 mv a0,s8 - c0054936: 14fd addi s1,s1,-1 - c0054938: 9782 jalr a5 + c0054afc: fff4c583 lbu a1,-1(s1) + c0054b00: 008c3783 ld a5,8(s8) + c0054b04: 8562 mv a0,s8 + c0054b06: 14fd addi s1,s1,-1 + c0054b08: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:873 c--; - c005493a: b755 j c00548de + c0054b0a: b755 j c0054aae /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:905 buf[0] = va_arg(ap, int); - c005493c: 0009a703 lw a4,0(s3) + c0054b0c: 0009a703 lw a4,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:908 size = 1; - c0054940: 4485 li s1,1 + c0054b10: 4485 li s1,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:907 pnt = buf; - c0054942: 02810a13 addi s4,sp,40 + c0054b12: 02810a13 addi s4,sp,40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:905 buf[0] = va_arg(ap, int); - c0054946: 02e10423 sb a4,40(sp) + c0054b16: 02e10423 sb a4,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:933 if ((flags & FL_LPAD) == 0) - c005494a: 008d7793 andi a5,s10,8 - c005494e: 89a2 mv s3,s0 - c0054950: e39d bnez a5,c0054976 - c0054952: 4901 li s2,0 - c0054954: a801 j c0054964 + c0054b1a: 008d7793 andi a5,s10,8 + c0054b1e: 89a2 mv s3,s0 + c0054b20: e39d bnez a5,c0054b46 + c0054b22: 4901 li s2,0 + c0054b24: a801 j c0054b34 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:937 stream_putc(' ', stream); - c0054956: 008c3783 ld a5,8(s8) - c005495a: 02000593 li a1,32 - c005495e: 8562 mv a0,s8 - c0054960: 9782 jalr a5 + c0054b26: 008c3783 ld a5,8(s8) + c0054b2a: 02000593 li a1,32 + c0054b2e: 8562 mv a0,s8 + c0054b30: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:938 width--; - c0054962: 0905 addi s2,s2,1 + c0054b32: 0905 addi s2,s2,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:935 while (size < width) - c0054964: 412c8733 sub a4,s9,s2 - c0054968: 412c87bb subw a5,s9,s2 - c005496c: 008909bb addw s3,s2,s0 - c0054970: fee4e3e3 bltu s1,a4,c0054956 - c0054974: 8cbe mv s9,a5 + c0054b34: 412c8733 sub a4,s9,s2 + c0054b38: 412c87bb subw a5,s9,s2 + c0054b3c: 008909bb addw s3,s2,s0 + c0054b40: fee4e3e3 bltu s1,a4,c0054b26 + c0054b44: 8cbe mv s9,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:942 stream_puts(pnt, size, stream); - c0054976: 010c3783 ld a5,16(s8) - c005497a: 0004841b sext.w s0,s1 - c005497e: 8622 mv a2,s0 - c0054980: 85d2 mv a1,s4 - c0054982: 8562 mv a0,s8 - c0054984: 013489bb addw s3,s1,s3 - c0054988: 9782 jalr a5 + c0054b46: 010c3783 ld a5,16(s8) + c0054b4a: 0004841b sext.w s0,s1 + c0054b4e: 8622 mv a2,s0 + c0054b50: 85d2 mv a1,s4 + c0054b52: 8562 mv a0,s8 + c0054b54: 013489bb addw s3,s1,s3 + c0054b58: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:943 width = width >= size ? width - size : 0; - c005498a: 4901 li s2,0 - c005498c: ba9ce8e3 bltu s9,s1,c005453c - c0054990: 408c893b subw s2,s9,s0 - c0054994: b665 j c005453c + c0054b5a: 4901 li s2,0 + c0054b5c: ba9ce8e3 bltu s9,s1,c005470c + c0054b60: 408c893b subw s2,s9,s0 + c0054b64: b665 j c005470c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:949 if (c == 'd' || c == 'i') - c0054996: 06400693 li a3,100 - c005499a: 017d7733 and a4,s10,s7 - c005499e: 00d90663 beq s2,a3,c00549aa - c00549a2: 06900693 li a3,105 - c00549a6: 10d91563 bne s2,a3,c0054ab0 + c0054b66: 06400693 li a3,100 + c0054b6a: 017d7733 and a4,s10,s7 + c0054b6e: 00d90663 beq s2,a3,c0054b7a + c0054b72: 06900693 li a3,105 + c0054b76: 10d91563 bne s2,a3,c0054c80 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:956 if ((flags & FL_LONG) != 0 && (flags & FL_REPD_TYPE) != 0) - c00549aa: 0d771b63 bne a4,s7,c0054a80 + c0054b7a: 0d771b63 bne a4,s7,c0054c50 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:985 x = va_arg(ap, long); - c00549ae: 0009b503 ld a0,0(s3) + c0054b7e: 0009b503 ld a0,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1015 flags &= ~(FL_NEGATIVE | FL_ALT); - c00549b2: 79fd lui s3,0xfffff - c00549b4: 19bd addi s3,s3,-17 - c00549b6: 013d79b3 and s3,s10,s3 + c0054b82: 79fd lui s3,0xfffff + c0054b84: 19bd addi s3,s3,-17 + c0054b86: 013d79b3 and s3,s10,s3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1016 if (x < 0) - c00549ba: 00055a63 bgez a0,c00549ce + c0054b8a: 00055a63 bgez a0,c0054b9e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1019 flags |= FL_NEGATIVE; - c00549be: 6785 lui a5,0x1 - c00549c0: 00f9e9b3 or s3,s3,a5 - c00549c4: 19c2 slli s3,s3,0x30 + c0054b8e: 6785 lui a5,0x1 + c0054b90: 00f9e9b3 or s3,s3,a5 + c0054b94: 19c2 slli s3,s3,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1018 x = -x; - c00549c6: 40a00533 neg a0,a0 + c0054b96: 40a00533 neg a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1019 flags |= FL_NEGATIVE; - c00549ca: 0309d993 srli s3,s3,0x30 + c0054b9a: 0309d993 srli s3,s3,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1022 if ((flags & FL_PREC) != 0 && prec == 0 && x == 0) - c00549ce: 1009f793 andi a5,s3,256 - c00549d2: c781 beqz a5,c00549da - c00549d4: e099 bnez s1,c00549da + c0054b9e: 1009f793 andi a5,s3,256 + c0054ba2: c781 beqz a5,c0054baa + c0054ba4: e099 bnez s1,c0054baa /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1024 c = 0; - c00549d6: 4a01 li s4,0 + c0054ba6: 4a01 li s4,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1022 if ((flags & FL_PREC) != 0 && prec == 0 && x == 0) - c00549d8: c919 beqz a0,c00549ee + c0054ba8: c919 beqz a0,c0054bbe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1031 c = __ultoa_invert(x, buf, 10) - buf; - c00549da: 02810a13 addi s4,sp,40 - c00549de: 4629 li a2,10 + c0054baa: 02810a13 addi s4,sp,40 + c0054bae: 4629 li a2,10 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1207 c = __ultoa_invert(x, buf, base) - buf; - c00549e0: 85d2 mv a1,s4 - c00549e2: 35e000ef jal ra,c0054d40 <__ultoa_invert> - c00549e6: 41450533 sub a0,a0,s4 - c00549ea: 0ff57a13 zext.b s4,a0 + c0054bb0: 85d2 mv a1,s4 + c0054bb2: 35e000ef jal ra,c0054f10 <__ultoa_invert> + c0054bb6: 41450533 sub a0,a0,s4 + c0054bba: 0ff57a13 zext.b s4,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1215 if ((flags & FL_PREC) != 0) - c00549ee: 1009f793 andi a5,s3,256 + c0054bbe: 1009f793 andi a5,s3,256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1218 if (len < prec) - c00549f2: 000a0a9b sext.w s5,s4 + c0054bc2: 000a0a9b sext.w s5,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1215 if ((flags & FL_PREC) != 0) - c00549f6: 1a078b63 beqz a5,c0054bac + c0054bc6: 1a078b63 beqz a5,c0054d7c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1217 flags &= ~FL_ZFILL; - c00549fa: ffe9f793 andi a5,s3,-2 - c00549fe: 03079d93 slli s11,a5,0x30 - c0054a02: 030ddd93 srli s11,s11,0x30 + c0054bca: ffe9f793 andi a5,s3,-2 + c0054bce: 03079d93 slli s11,a5,0x30 + c0054bd2: 030ddd93 srli s11,s11,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1213 len = c; - c0054a06: 87d2 mv a5,s4 + c0054bd6: 87d2 mv a5,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1218 if (len < prec) - c0054a08: 029ad063 bge s5,s1,c0054a28 + c0054bd8: 029ad063 bge s5,s1,c0054bf8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1221 if ((flags & FL_ALT) != 0 && (flags & FL_ALTHEX) == 0) - c0054a0c: 6762 ld a4,24(sp) - c0054a0e: 46c1 li a3,16 + c0054bdc: 6762 ld a4,24(sp) + c0054bde: 46c1 li a3,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1220 len = prec; - c0054a10: 0ff4f793 zext.b a5,s1 + c0054be0: 0ff4f793 zext.b a5,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1221 if ((flags & FL_ALT) != 0 && (flags & FL_ALTHEX) == 0) - c0054a14: 00e9f733 and a4,s3,a4 - c0054a18: 00d71863 bne a4,a3,c0054a28 + c0054be4: 00e9f733 and a4,s3,a4 + c0054be8: 00d71863 bne a4,a3,c0054bf8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1223 flags &= ~FL_ALT; - c0054a1c: fee9f993 andi s3,s3,-18 - c0054a20: 03099d93 slli s11,s3,0x30 - c0054a24: 030ddd93 srli s11,s11,0x30 + c0054bec: fee9f993 andi s3,s3,-18 + c0054bf0: 03099d93 slli s11,s3,0x30 + c0054bf4: 030ddd93 srli s11,s11,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1228 if ((flags & FL_ALT) != 0) - c0054a28: 010df713 andi a4,s11,16 - c0054a2c: 18070d63 beqz a4,c0054bc6 + c0054bf8: 010df713 andi a4,s11,16 + c0054bfc: 18070d63 beqz a4,c0054d96 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1230 if (buf[c - 1] == '0') - c0054a30: 0094 addi a3,sp,64 - c0054a32: fffa871b addiw a4,s5,-1 - c0054a36: 9736 add a4,a4,a3 - c0054a38: fe874683 lbu a3,-24(a4) - c0054a3c: 03000713 li a4,48 - c0054a40: 16e69963 bne a3,a4,c0054bb2 + c0054c00: 0094 addi a3,sp,64 + c0054c02: fffa871b addiw a4,s5,-1 + c0054c06: 9736 add a4,a4,a3 + c0054c08: fe874683 lbu a3,-24(a4) + c0054c0c: 03000713 li a4,48 + c0054c10: 16e69963 bne a3,a4,c0054d82 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1232 flags &= ~(FL_ALT | FL_ALTHEX | FL_ALTUPP); - c0054a44: 6742 ld a4,16(sp) - c0054a46: 00edfdb3 and s11,s11,a4 - c0054a4a: 1dc2 slli s11,s11,0x30 - c0054a4c: 030ddd93 srli s11,s11,0x30 + c0054c14: 6742 ld a4,16(sp) + c0054c16: 00edfdb3 and s11,s11,a4 + c0054c1a: 1dc2 slli s11,s11,0x30 + c0054c1c: 030ddd93 srli s11,s11,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1248 if ((flags & FL_LPAD) == 0) - c0054a50: 008df713 andi a4,s11,8 - c0054a54: 89a2 mv s3,s0 - c0054a56: 18071c63 bnez a4,c0054bee + c0054c20: 008df713 andi a4,s11,8 + c0054c24: 89a2 mv s3,s0 + c0054c26: 18071c63 bnez a4,c0054dbe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1250 if ((flags & FL_ZFILL) != 0) - c0054a5a: 001df713 andi a4,s11,1 - c0054a5e: cf01 beqz a4,c0054a76 + c0054c2a: 001df713 andi a4,s11,1 + c0054c2e: cf01 beqz a4,c0054c46 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1253 if (len < width) - c0054a60: 0007871b sext.w a4,a5 + c0054c30: 0007871b sext.w a4,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1218 if (len < prec) - c0054a64: 84d6 mv s1,s5 + c0054c34: 84d6 mv s1,s5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1253 if (len < width) - c0054a66: 01975863 bge a4,s9,c0054a76 + c0054c36: 01975863 bge a4,s9,c0054c46 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1255 prec += width - len; - c0054a6a: 40ec873b subw a4,s9,a4 - c0054a6e: 015704bb addw s1,a4,s5 + c0054c3a: 40ec873b subw a4,s9,a4 + c0054c3e: 015704bb addw s1,a4,s5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1256 len = width; - c0054a72: 0ffcf793 zext.b a5,s9 - c0054a76: 9f81 subw a5,a5,s0 + c0054c42: 0ffcf793 zext.b a5,s9 + c0054c46: 9f81 subw a5,a5,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1218 if (len < prec) - c0054a78: 89a2 mv s3,s0 - c0054a7a: 0ff7f413 zext.b s0,a5 - c0054a7e: a295 j c0054be2 + c0054c48: 89a2 mv s3,s0 + c0054c4a: 0ff7f413 zext.b s0,a5 + c0054c4e: a295 j c0054db2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:973 if ((flags & FL_LONG) != 0) - c0054a80: 200d7713 andi a4,s10,512 - c0054a84: f70d bnez a4,c00549ae + c0054c50: 200d7713 andi a4,s10,512 + c0054c54: f70d bnez a4,c0054b7e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1002 if ((flags & FL_SHORT) != 0) - c0054a86: 400d7713 andi a4,s10,1024 + c0054c56: 400d7713 andi a4,s10,1024 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1000 x = va_arg(ap, int); - c0054a8a: 0009a503 lw a0,0(s3) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> + c0054c5a: 0009a503 lw a0,0(s3) # fffffffffffff000 <_ebss+0xffffffff3fefdeda> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1002 if ((flags & FL_SHORT) != 0) - c0054a8e: d315 beqz a4,c00549b2 + c0054c5e: d315 beqz a4,c0054b82 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1004 if ((flags & FL_REPD_TYPE) == 0) - c0054a90: 6785 lui a5,0x1 - c0054a92: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> - c0054a96: 00fd7733 and a4,s10,a5 - c0054a9a: e711 bnez a4,c0054aa6 + c0054c60: 6785 lui a5,0x1 + c0054c62: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> + c0054c66: 00fd7733 and a4,s10,a5 + c0054c6a: e711 bnez a4,c0054c76 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1006 x = (short)x; - c0054a9c: 0105151b slliw a0,a0,0x10 - c0054aa0: 4105551b sraiw a0,a0,0x10 - c0054aa4: b739 j c00549b2 + c0054c6c: 0105151b slliw a0,a0,0x10 + c0054c70: 4105551b sraiw a0,a0,0x10 + c0054c74: b739 j c0054b82 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1010 x = (signed char)x; - c0054aa6: 0185151b slliw a0,a0,0x18 - c0054aaa: 4185551b sraiw a0,a0,0x18 - c0054aae: b711 j c00549b2 + c0054c76: 0185151b slliw a0,a0,0x18 + c0054c7a: 4185551b sraiw a0,a0,0x18 + c0054c7e: b711 j c0054b82 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1042 if ((flags & FL_LONG) != 0 && (flags & FL_REPD_TYPE) != 0) - c0054ab0: 05771563 bne a4,s7,c0054afa + c0054c80: 05771563 bne a4,s7,c0054cca /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1071 x = va_arg(ap, unsigned long); - c0054ab4: 0009b503 ld a0,0(s3) + c0054c84: 0009b503 ld a0,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1101 flags &= ~(FL_PLUS | FL_SPACE); - c0054ab8: ff9d7993 andi s3,s10,-7 - c0054abc: 19c2 slli s3,s3,0x30 + c0054c88: ff9d7993 andi s3,s10,-7 + c0054c8c: 19c2 slli s3,s3,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1103 switch (c) - c0054abe: 07000713 li a4,112 + c0054c8e: 07000713 li a4,112 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1101 flags &= ~(FL_PLUS | FL_SPACE); - c0054ac2: 0309d993 srli s3,s3,0x30 + c0054c92: 0309d993 srli s3,s3,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1103 switch (c) - c0054ac6: 0ae90363 beq s2,a4,c0054b6c - c0054aca: 07276063 bltu a4,s2,c0054b2a - c0054ace: 05800713 li a4,88 - c0054ad2: 0ce90663 beq s2,a4,c0054b9e - c0054ad6: 06f00793 li a5,111 - c0054ada: 4621 li a2,8 - c0054adc: 06f90e63 beq s2,a5,c0054b58 + c0054c96: 0ae90363 beq s2,a4,c0054d3c + c0054c9a: 07276063 bltu a4,s2,c0054cfa + c0054c9e: 05800713 li a4,88 + c0054ca2: 0ce90663 beq s2,a4,c0054d6e + c0054ca6: 06f00793 li a5,111 + c0054caa: 4621 li a2,8 + c0054cac: 06f90e63 beq s2,a5,c0054d28 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1193 stream_putc('%', stream); - c0054ae0: 008c3783 ld a5,8(s8) - c0054ae4: 8562 mv a0,s8 - c0054ae6: 02500593 li a1,37 - c0054aea: 9782 jalr a5 + c0054cb0: 008c3783 ld a5,8(s8) + c0054cb4: 8562 mv a0,s8 + c0054cb6: 02500593 li a1,37 + c0054cba: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1194 stream_putc(c, stream); - c0054aec: 008c3783 ld a5,8(s8) - c0054af0: 85ca mv a1,s2 - c0054af2: 8562 mv a0,s8 - c0054af4: 2409 addiw s0,s0,2 - c0054af6: 9782 jalr a5 + c0054cbc: 008c3783 ld a5,8(s8) + c0054cc0: 85ca mv a1,s2 + c0054cc2: 8562 mv a0,s8 + c0054cc4: 2409 addiw s0,s0,2 + c0054cc6: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1195 continue; - c0054af8: a2e9 j c0054cc2 + c0054cc8: a2e9 j c0054e92 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1059 if ((flags & FL_LONG) != 0) - c0054afa: 200d7713 andi a4,s10,512 - c0054afe: fb5d bnez a4,c0054ab4 + c0054cca: 200d7713 andi a4,s10,512 + c0054cce: fb5d bnez a4,c0054c84 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1088 if ((flags & FL_SHORT) != 0) - c0054b00: 400d7693 andi a3,s10,1024 + c0054cd0: 400d7693 andi a3,s10,1024 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1086 x = va_arg(ap, unsigned int); - c0054b04: 0009a703 lw a4,0(s3) + c0054cd4: 0009a703 lw a4,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1088 if ((flags & FL_SHORT) != 0) - c0054b08: e689 bnez a3,c0054b12 + c0054cd8: e689 bnez a3,c0054ce2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1086 x = va_arg(ap, unsigned int); - c0054b0a: 02071513 slli a0,a4,0x20 - c0054b0e: 9101 srli a0,a0,0x20 - c0054b10: b765 j c0054ab8 + c0054cda: 02071513 slli a0,a4,0x20 + c0054cde: 9101 srli a0,a0,0x20 + c0054ce0: b765 j c0054c88 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1090 if ((flags & FL_REPD_TYPE) == 0) - c0054b12: 6785 lui a5,0x1 - c0054b14: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> - c0054b18: 00fd76b3 and a3,s10,a5 + c0054ce2: 6785 lui a5,0x1 + c0054ce4: 80078793 addi a5,a5,-2048 # 800 <__clzdi2-0xbffff800> + c0054ce8: 00fd76b3 and a3,s10,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1096 x = (unsigned char)x; - c0054b1c: 0ff77513 zext.b a0,a4 + c0054cec: 0ff77513 zext.b a0,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1090 if ((flags & FL_REPD_TYPE) == 0) - c0054b20: fec1 bnez a3,c0054ab8 + c0054cf0: fec1 bnez a3,c0054c88 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1092 x = (unsigned short)x; - c0054b22: 03071513 slli a0,a4,0x30 - c0054b26: 9141 srli a0,a0,0x30 - c0054b28: bf41 j c0054ab8 + c0054cf2: 03071513 slli a0,a4,0x30 + c0054cf6: 9141 srli a0,a0,0x30 + c0054cf8: bf41 j c0054c88 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1103 switch (c) - c0054b2a: 07500713 li a4,117 - c0054b2e: 00e90e63 beq s2,a4,c0054b4a - c0054b32: 07800793 li a5,120 - c0054b36: faf915e3 bne s2,a5,c0054ae0 + c0054cfa: 07500713 li a4,117 + c0054cfe: 00e90e63 beq s2,a4,c0054d1a + c0054d02: 07800793 li a5,120 + c0054d06: faf915e3 bne s2,a5,c0054cb0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1175 if ((flags & FL_ALT) != 0) - c0054b3a: 0109f793 andi a5,s3,16 + c0054d0a: 0109f793 andi a5,s3,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1180 base = 16; - c0054b3e: 4641 li a2,16 + c0054d0e: 4641 li a2,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1175 if ((flags & FL_ALT) != 0) - c0054b40: cf81 beqz a5,c0054b58 + c0054d10: cf81 beqz a5,c0054d28 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1177 flags |= FL_ALTHEX; - c0054b42: 6791 lui a5,0x4 + c0054d12: 6791 lui a5,0x4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1186 flags |= (FL_ALTHEX | FL_ALTUPP); - c0054b44: 00f9e9b3 or s3,s3,a5 - c0054b48: a801 j c0054b58 + c0054d14: 00f9e9b3 or s3,s3,a5 + c0054d18: a801 j c0054d28 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1106 flags &= ~FL_ALT; - c0054b4a: fe9d7793 andi a5,s10,-23 - c0054b4e: 03079993 slli s3,a5,0x30 - c0054b52: 0309d993 srli s3,s3,0x30 + c0054d1a: fe9d7793 andi a5,s10,-23 + c0054d1e: 03079993 slli s3,a5,0x30 + c0054d22: 0309d993 srli s3,s3,0x30 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1107 base = 10; - c0054b56: 4629 li a2,10 + c0054d26: 4629 li a2,10 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1198 if ((flags & FL_PREC) != 0 && prec == 0 && x == 0) - c0054b58: 1009f793 andi a5,s3,256 - c0054b5c: c789 beqz a5,c0054b66 - c0054b5e: e481 bnez s1,c0054b66 + c0054d28: 1009f793 andi a5,s3,256 + c0054d2c: c789 beqz a5,c0054d36 + c0054d2e: e481 bnez s1,c0054d36 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1200 c = 0; - c0054b60: 4a01 li s4,0 + c0054d30: 4a01 li s4,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1198 if ((flags & FL_PREC) != 0 && prec == 0 && x == 0) - c0054b62: e80506e3 beqz a0,c00549ee + c0054d32: e80506e3 beqz a0,c0054bbe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1207 c = __ultoa_invert(x, buf, base) - buf; - c0054b66: 02810a13 addi s4,sp,40 - c0054b6a: bd9d j c00549e0 + c0054d36: 02810a13 addi s4,sp,40 + c0054d3a: bd9d j c0054bb0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1115 c = fmt_char(fmt); - c0054b6c: 000b4783 lbu a5,0(s6) - c0054b70: 05600713 li a4,86 - c0054b74: 001b0a13 addi s4,s6,1 + c0054d3c: 000b4783 lbu a5,0(s6) + c0054d40: 05600713 li a4,86 + c0054d44: 001b0a13 addi s4,s6,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1116 switch (c) - c0054b78: 00e78c63 beq a5,a4,c0054b90 - c0054b7c: 0df7f793 andi a5,a5,223 - c0054b80: 05300713 li a4,83 - c0054b84: 00e79363 bne a5,a4,c0054b8a + c0054d48: 00e78c63 beq a5,a4,c0054d60 + c0054d4c: 0df7f793 andi a5,a5,223 + c0054d50: 05300713 li a4,83 + c0054d54: 00e79363 bne a5,a4,c0054d5a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1115 c = fmt_char(fmt); - c0054b88: 8b52 mv s6,s4 + c0054d58: 8b52 mv s6,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1170 flags |= FL_ALT; - c0054b8a: 0109e993 ori s3,s3,16 - c0054b8e: b775 j c0054b3a + c0054d5a: 0109e993 ori s3,s3,16 + c0054d5e: b775 j c0054d0a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1124 va_copy(copy, *vaf->va); - c0054b90: 651c ld a5,8(a0) + c0054d60: 651c ld a5,8(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1125 lib_vsprintf(stream, vaf->fmt, copy); - c0054b92: 610c ld a1,0(a0) - c0054b94: 8562 mv a0,s8 - c0054b96: 6390 ld a2,0(a5) - c0054b98: fb2ff0ef jal ra,c005434a + c0054d62: 610c ld a1,0(a0) + c0054d64: 8562 mv a0,s8 + c0054d66: 6390 ld a2,0(a5) + c0054d68: fb2ff0ef jal ra,c005451a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1130 continue; - c0054b9c: a225 j c0054cc4 + c0054d6c: a225 j c0054e94 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1184 if ((flags & FL_ALT) != 0) - c0054b9e: 010d7793 andi a5,s10,16 + c0054d6e: 010d7793 andi a5,s10,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1189 base = 16 | XTOA_UPPER; - c0054ba2: 21000613 li a2,528 + c0054d72: 21000613 li a2,528 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1184 if ((flags & FL_ALT) != 0) - c0054ba6: dbcd beqz a5,c0054b58 + c0054d76: dbcd beqz a5,c0054d28 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1186 flags |= (FL_ALTHEX | FL_ALTUPP); - c0054ba8: 6799 lui a5,0x6 - c0054baa: bf69 j c0054b44 + c0054d78: 6799 lui a5,0x6 + c0054d7a: bf69 j c0054d14 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1213 len = c; - c0054bac: 87d2 mv a5,s4 - c0054bae: 8dce mv s11,s3 - c0054bb0: bda5 j c0054a28 + c0054d7c: 87d2 mv a5,s4 + c0054d7e: 8dce mv s11,s3 + c0054d80: bda5 j c0054bf8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1237 if ((flags & FL_ALTHEX) != 0) - c0054bb2: 6711 lui a4,0x4 - c0054bb4: 00edf733 and a4,s11,a4 - c0054bb8: e319 bnez a4,c0054bbe + c0054d82: 6711 lui a4,0x4 + c0054d84: 00edf733 and a4,s11,a4 + c0054d88: e319 bnez a4,c0054d8e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1245 len += 1; - c0054bba: 2785 addiw a5,a5,1 - c0054bbc: a011 j c0054bc0 + c0054d8a: 2785 addiw a5,a5,1 + c0054d8c: a011 j c0054d90 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1239 len += 1; - c0054bbe: 2789 addiw a5,a5,2 + c0054d8e: 2789 addiw a5,a5,2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1245 len += 1; - c0054bc0: 0ff7f793 zext.b a5,a5 - c0054bc4: b571 j c0054a50 + c0054d90: 0ff7f793 zext.b a5,a5 + c0054d94: b571 j c0054c20 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1243 else if ((flags & (FL_NEGATIVE | FL_PLUS | FL_SPACE)) != 0) - c0054bc6: 6705 lui a4,0x1 - c0054bc8: 0719 addi a4,a4,6 - c0054bca: 00edf733 and a4,s11,a4 - c0054bce: e80701e3 beqz a4,c0054a50 - c0054bd2: b7e5 j c0054bba + c0054d96: 6705 lui a4,0x1 + c0054d98: 0719 addi a4,a4,6 + c0054d9a: 00edf733 and a4,s11,a4 + c0054d9e: e80701e3 beqz a4,c0054c20 + c0054da2: b7e5 j c0054d8a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1262 stream_putc(' ', stream); - c0054bd4: 008c3783 ld a5,8(s8) - c0054bd8: 02000593 li a1,32 - c0054bdc: 8562 mv a0,s8 - c0054bde: 2985 addiw s3,s3,1 - c0054be0: 9782 jalr a5 + c0054da4: 008c3783 ld a5,8(s8) + c0054da8: 02000593 li a1,32 + c0054dac: 8562 mv a0,s8 + c0054dae: 2985 addiw s3,s3,1 + c0054db0: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1263 len++; - c0054be2: 0089873b addw a4,s3,s0 - c0054be6: 0ff77793 zext.b a5,a4 + c0054db2: 0089873b addw a4,s3,s0 + c0054db6: 0ff77793 zext.b a5,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1260 while (len < width) - c0054bea: ff97c5e3 blt a5,s9,c0054bd4 + c0054dba: ff97c5e3 blt a5,s9,c0054da4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1267 width = (len < width) ? width - len : 0; - c0054bee: 0007871b sext.w a4,a5 - c0054bf2: 4901 li s2,0 - c0054bf4: 01975463 bge a4,s9,c0054bfc - c0054bf8: 40ec893b subw s2,s9,a4 + c0054dbe: 0007871b sext.w a4,a5 + c0054dc2: 4901 li s2,0 + c0054dc4: 01975463 bge a4,s9,c0054dcc + c0054dc8: 40ec893b subw s2,s9,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1269 if ((flags & FL_ALT) != 0) - c0054bfc: 010df793 andi a5,s11,16 - c0054c00: cba9 beqz a5,c0054c52 + c0054dcc: 010df793 andi a5,s11,16 + c0054dd0: cba9 beqz a5,c0054e22 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1271 stream_putc('0', stream); - c0054c02: 008c3783 ld a5,8(s8) - c0054c06: 03000593 li a1,48 - c0054c0a: 8562 mv a0,s8 - c0054c0c: 9782 jalr a5 + c0054dd2: 008c3783 ld a5,8(s8) + c0054dd6: 03000593 li a1,48 + c0054dda: 8562 mv a0,s8 + c0054ddc: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1272 if ((flags & FL_ALTHEX) != 0) - c0054c0e: 6791 lui a5,0x4 - c0054c10: 00fdf7b3 and a5,s11,a5 - c0054c14: e38d bnez a5,c0054c36 + c0054dde: 6791 lui a5,0x4 + c0054de0: 00fdf7b3 and a5,s11,a5 + c0054de4: e38d bnez a5,c0054e06 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1271 stream_putc('0', stream); - c0054c16: 2985 addiw s3,s3,1 + c0054de6: 2985 addiw s3,s3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1287 z = '-'; - c0054c18: 8426 mv s0,s1 + c0054de8: 8426 mv s0,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1293 while (prec > c) - c0054c1a: 068ac463 blt s5,s0,c0054c82 - c0054c1e: 4781 li a5,0 - c0054c20: 0154c463 blt s1,s5,c0054c28 - c0054c24: 414487bb subw a5,s1,s4 - c0054c28: 013789bb addw s3,a5,s3 + c0054dea: 068ac463 blt s5,s0,c0054e52 + c0054dee: 4781 li a5,0 + c0054df0: 0154c463 blt s1,s5,c0054df8 + c0054df4: 414487bb subw a5,s1,s4 + c0054df8: 013789bb addw s3,a5,s3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1299 while (c) - c0054c2c: 060a1363 bnez s4,c0054c92 - c0054c30: 015989bb addw s3,s3,s5 - c0054c34: b221 j c005453c + c0054dfc: 060a1363 bnez s4,c0054e62 + c0054e00: 015989bb addw s3,s3,s5 + c0054e04: b221 j c005470c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1274 stream_putc(flags & FL_ALTUPP ? 'X' : 'x', stream); - c0054c36: 6789 lui a5,0x2 - c0054c38: 00fdf7b3 and a5,s11,a5 - c0054c3c: 008c3703 ld a4,8(s8) - c0054c40: 2989 addiw s3,s3,2 - c0054c42: 05800593 li a1,88 - c0054c46: e399 bnez a5,c0054c4c - c0054c48: 07800593 li a1,120 - c0054c4c: 8562 mv a0,s8 - c0054c4e: 9702 jalr a4 - c0054c50: b7e1 j c0054c18 + c0054e06: 6789 lui a5,0x2 + c0054e08: 00fdf7b3 and a5,s11,a5 + c0054e0c: 008c3703 ld a4,8(s8) + c0054e10: 2989 addiw s3,s3,2 + c0054e12: 05800593 li a1,88 + c0054e16: e399 bnez a5,c0054e1c + c0054e18: 07800593 li a1,120 + c0054e1c: 8562 mv a0,s8 + c0054e1e: 9702 jalr a4 + c0054e20: b7e1 j c0054de8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1277 else if ((flags & (FL_NEGATIVE | FL_PLUS | FL_SPACE)) != 0) - c0054c52: 6785 lui a5,0x1 - c0054c54: 0799 addi a5,a5,6 - c0054c56: 00fdf7b3 and a5,s11,a5 - c0054c5a: dfdd beqz a5,c0054c18 + c0054e22: 6785 lui a5,0x1 + c0054e24: 0799 addi a5,a5,6 + c0054e26: 00fdf7b3 and a5,s11,a5 + c0054e2a: dfdd beqz a5,c0054de8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1280 if ((flags & FL_PLUS) != 0) - c0054c5c: 002df793 andi a5,s11,2 + c0054e2c: 002df793 andi a5,s11,2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1279 unsigned char z = ' '; - c0054c60: 02000593 li a1,32 + c0054e30: 02000593 li a1,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1280 if ((flags & FL_PLUS) != 0) - c0054c64: c399 beqz a5,c0054c6a + c0054e34: c399 beqz a5,c0054e3a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1282 z = '+'; - c0054c66: 02b00593 li a1,43 + c0054e36: 02b00593 li a1,43 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1285 if ((flags & FL_NEGATIVE) != 0) - c0054c6a: 6785 lui a5,0x1 - c0054c6c: 00fdf7b3 and a5,s11,a5 - c0054c70: c399 beqz a5,c0054c76 + c0054e3a: 6785 lui a5,0x1 + c0054e3c: 00fdf7b3 and a5,s11,a5 + c0054e40: c399 beqz a5,c0054e46 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1287 z = '-'; - c0054c72: 02d00593 li a1,45 + c0054e42: 02d00593 li a1,45 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1290 stream_putc(z, stream); - c0054c76: 008c3783 ld a5,8(s8) - c0054c7a: 8562 mv a0,s8 - c0054c7c: 2985 addiw s3,s3,1 - c0054c7e: 9782 jalr a5 - c0054c80: bf61 j c0054c18 + c0054e46: 008c3783 ld a5,8(s8) + c0054e4a: 8562 mv a0,s8 + c0054e4c: 2985 addiw s3,s3,1 + c0054e4e: 9782 jalr a5 + c0054e50: bf61 j c0054de8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1295 stream_putc('0', stream); - c0054c82: 008c3783 ld a5,8(s8) - c0054c86: 03000593 li a1,48 - c0054c8a: 8562 mv a0,s8 - c0054c8c: 9782 jalr a5 + c0054e52: 008c3783 ld a5,8(s8) + c0054e56: 03000593 li a1,48 + c0054e5a: 8562 mv a0,s8 + c0054e5c: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1296 prec--; - c0054c8e: 347d addiw s0,s0,-1 - c0054c90: b769 j c0054c1a + c0054e5e: 347d addiw s0,s0,-1 + c0054e60: b769 j c0054dea /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1301 stream_putc(buf[--c], stream); - c0054c92: fffa079b addiw a5,s4,-1 - c0054c96: 0098 addi a4,sp,64 - c0054c98: 0ff7fa13 zext.b s4,a5 - c0054c9c: 014707b3 add a5,a4,s4 - c0054ca0: fe87c583 lbu a1,-24(a5) # fe8 <__clzdi2-0xbffff018> - c0054ca4: 008c3703 ld a4,8(s8) - c0054ca8: 8562 mv a0,s8 - c0054caa: 9702 jalr a4 - c0054cac: b741 j c0054c2c + c0054e62: fffa079b addiw a5,s4,-1 + c0054e66: 0098 addi a4,sp,64 + c0054e68: 0ff7fa13 zext.b s4,a5 + c0054e6c: 014707b3 add a5,a4,s4 + c0054e70: fe87c583 lbu a1,-24(a5) # fe8 <__clzdi2-0xbffff018> + c0054e74: 008c3703 ld a4,8(s8) + c0054e78: 8562 mv a0,s8 + c0054e7a: 9702 jalr a4 + c0054e7c: b741 j c0054dfc /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1310 stream_putc(' ', stream); - c0054cae: 008c3783 ld a5,8(s8) - c0054cb2: 02000593 li a1,32 - c0054cb6: 8562 mv a0,s8 - c0054cb8: 9782 jalr a5 + c0054e7e: 008c3783 ld a5,8(s8) + c0054e82: 02000593 li a1,32 + c0054e86: 8562 mv a0,s8 + c0054e88: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1311 width--; - c0054cba: 347d addiw s0,s0,-1 + c0054e8a: 347d addiw s0,s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1308 while (width) - c0054cbc: f86d bnez s0,c0054cae - c0054cbe: 0139043b addw s0,s2,s3 - c0054cc2: 8a5a mv s4,s6 - c0054cc4: 6982 ld s3,0(sp) - c0054cc6: ec8ff06f j c005438e + c0054e8c: f86d bnez s0,c0054e7e + c0054e8e: 0139043b addw s0,s2,s3 + c0054e92: 8a5a mv s4,s6 + c0054e94: 6982 ld s3,0(sp) + c0054e96: ec8ff06f j c005455e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1317 } - c0054cca: 70aa ld ra,168(sp) - c0054ccc: 8522 mv a0,s0 - c0054cce: 740a ld s0,160(sp) - c0054cd0: 64ea ld s1,152(sp) - c0054cd2: 694a ld s2,144(sp) - c0054cd4: 69aa ld s3,136(sp) - c0054cd6: 6a0a ld s4,128(sp) - c0054cd8: 7ae6 ld s5,120(sp) - c0054cda: 7b46 ld s6,112(sp) - c0054cdc: 7ba6 ld s7,104(sp) - c0054cde: 7c06 ld s8,96(sp) - c0054ce0: 6ce6 ld s9,88(sp) - c0054ce2: 6d46 ld s10,80(sp) - c0054ce4: 6da6 ld s11,72(sp) - c0054ce6: 614d addi sp,sp,176 - c0054ce8: 8082 ret - -00000000c0054cea : + c0054e9a: 70aa ld ra,168(sp) + c0054e9c: 8522 mv a0,s0 + c0054e9e: 740a ld s0,160(sp) + c0054ea0: 64ea ld s1,152(sp) + c0054ea2: 694a ld s2,144(sp) + c0054ea4: 69aa ld s3,136(sp) + c0054ea6: 6a0a ld s4,128(sp) + c0054ea8: 7ae6 ld s5,120(sp) + c0054eaa: 7b46 ld s6,112(sp) + c0054eac: 7ba6 ld s7,104(sp) + c0054eae: 7c06 ld s8,96(sp) + c0054eb0: 6ce6 ld s9,88(sp) + c0054eb2: 6d46 ld s10,80(sp) + c0054eb4: 6da6 ld s11,72(sp) + c0054eb6: 614d addi sp,sp,176 + c0054eb8: 8082 ret + +00000000c0054eba : lib_sprintf_internal(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1380 { - c0054cea: 715d addi sp,sp,-80 - c0054cec: f032 sd a2,32(sp) - c0054cee: f436 sd a3,40(sp) - c0054cf0: f83a sd a4,48(sp) + c0054eba: 715d addi sp,sp,-80 + c0054ebc: f032 sd a2,32(sp) + c0054ebe: f436 sd a3,40(sp) + c0054ec0: f83a sd a4,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1387 n = vsprintf_internal(stream, NULL, 0, fmt, ap); - c0054cf2: 86ae mv a3,a1 + c0054ec2: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1386 va_start(ap, fmt); - c0054cf4: 1018 addi a4,sp,32 + c0054ec4: 1018 addi a4,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1387 n = vsprintf_internal(stream, NULL, 0, fmt, ap); - c0054cf6: 4601 li a2,0 - c0054cf8: 4581 li a1,0 + c0054ec6: 4601 li a2,0 + c0054ec8: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1380 { - c0054cfa: ec06 sd ra,24(sp) - c0054cfc: fc3e sd a5,56(sp) - c0054cfe: e0c2 sd a6,64(sp) - c0054d00: e4c6 sd a7,72(sp) + c0054eca: ec06 sd ra,24(sp) + c0054ecc: fc3e sd a5,56(sp) + c0054ece: e0c2 sd a6,64(sp) + c0054ed0: e4c6 sd a7,72(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1386 va_start(ap, fmt); - c0054d02: e43a sd a4,8(sp) + c0054ed2: e43a sd a4,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1387 n = vsprintf_internal(stream, NULL, 0, fmt, ap); - c0054d04: e54ff0ef jal ra,c0054358 + c0054ed4: e54ff0ef jal ra,c0054528 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libvsprintf.c:1391 } - c0054d08: 60e2 ld ra,24(sp) - c0054d0a: 6161 addi sp,sp,80 - c0054d0c: 8082 ret + c0054ed8: 60e2 ld ra,24(sp) + c0054eda: 6161 addi sp,sp,80 + c0054edc: 8082 ret -00000000c0054d0e : +00000000c0054ede : remove(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:53 * For returned errno values, see unlink or rmdir. @@ -236791,54 +236989,54 @@ remove(): int remove(FAR const char *path) { - c0054d0e: 1141 addi sp,sp,-16 - c0054d10: e022 sd s0,0(sp) - c0054d12: e406 sd ra,8(sp) - c0054d14: 842a mv s0,a0 + c0054ede: 1141 addi sp,sp,-16 + c0054ee0: e022 sd s0,0(sp) + c0054ee2: e406 sd ra,8(sp) + c0054ee4: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:58 /* First try to unlink since this is * more frequently the necessary action. */ if (unlink(path) != 0 && /* If it is indeed a directory... */ - c0054d16: 0d9020ef jal ra,c00575ee - c0054d1a: cd19 beqz a0,c0054d38 + c0054ee6: 0d9020ef jal ra,c00577be + c0054eea: cd19 beqz a0,c0054f08 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:59 (discriminator 1) (get_errno() != EPERM || /* ...try to remove it. */ - c0054d1c: db9fe0ef jal ra,c0053ad4 <__errno> + c0054eec: db9fe0ef jal ra,c0053ca4 <__errno> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:58 (discriminator 1) if (unlink(path) != 0 && /* If it is indeed a directory... */ - c0054d20: 4118 lw a4,0(a0) - c0054d22: 4785 li a5,1 + c0054ef0: 4118 lw a4,0(a0) + c0054ef2: 4785 li a5,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:64 (discriminator 1) rmdir(path) != 0)) { /* Cannot remove the object for whatever reason. */ return -1; - c0054d24: 557d li a0,-1 + c0054ef4: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:58 (discriminator 1) if (unlink(path) != 0 && /* If it is indeed a directory... */ - c0054d26: 00f71963 bne a4,a5,c0054d38 + c0054ef6: 00f71963 bne a4,a5,c0054f08 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:60 rmdir(path) != 0)) - c0054d2a: 8522 mv a0,s0 - c0054d2c: 037020ef jal ra,c0057562 + c0054efa: 8522 mv a0,s0 + c0054efc: 037020ef jal ra,c0057732 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:59 (get_errno() != EPERM || /* ...try to remove it. */ - c0054d30: 00a03533 snez a0,a0 - c0054d34: 40a00533 neg a0,a0 + c0054f00: 00a03533 snez a0,a0 + c0054f04: 40a00533 neg a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_remove.c:68 } return 0; } - c0054d38: 60a2 ld ra,8(sp) - c0054d3a: 6402 ld s0,0(sp) - c0054d3c: 0141 addi sp,sp,16 - c0054d3e: 8082 ret + c0054f08: 60a2 ld ra,8(sp) + c0054f0a: 6402 ld s0,0(sp) + c0054f0c: 0141 addi sp,sp,16 + c0054f0e: 8082 ret -00000000c0054d40 <__ultoa_invert>: +00000000c0054f10 <__ultoa_invert>: __ultoa_invert(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:54 FAR char *__ultoa_invert(unsigned long val, FAR char *str, int base) @@ -236847,22 +237045,22 @@ FAR char *__ultoa_invert(unsigned long val, FAR char *str, int base) int upper = 0; if (base & XTOA_UPPER) - c0054d40: 20067693 andi a3,a2,512 + c0054f10: 20067693 andi a3,a2,512 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:51 { - c0054d44: 872a mv a4,a0 - c0054d46: 852e mv a0,a1 + c0054f14: 872a mv a4,a0 + c0054f16: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:54 if (base & XTOA_UPPER) - c0054d48: c681 beqz a3,c0054d50 <__ultoa_invert+0x10> + c0054f18: c681 beqz a3,c0054f20 <__ultoa_invert+0x10> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:57 { upper = 1; base &= ~XTOA_UPPER; - c0054d4a: dff67613 andi a2,a2,-513 + c0054f1a: dff67613 andi a2,a2,-513 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:56 upper = 1; - c0054d4e: 4685 li a3,1 + c0054f1e: 4685 li a3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:67 int v; @@ -236870,22 +237068,22 @@ FAR char *__ultoa_invert(unsigned long val, FAR char *str, int base) val = val / base; if (v <= 9) - c0054d50: 4825 li a6,9 + c0054f20: 4825 li a6,9 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:64 v = val % base; - c0054d52: 02c777b3 remu a5,a4,a2 - c0054d56: 85ba mv a1,a4 - c0054d58: 2781 sext.w a5,a5 + c0054f22: 02c777b3 remu a5,a4,a2 + c0054f26: 85ba mv a1,a4 + c0054f28: 2781 sext.w a5,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:65 val = val / base; - c0054d5a: 02c75733 divu a4,a4,a2 + c0054f2a: 02c75733 divu a4,a4,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:67 if (v <= 9) - c0054d5e: 00f84a63 blt a6,a5,c0054d72 <__ultoa_invert+0x32> + c0054f2e: 00f84a63 blt a6,a5,c0054f42 <__ultoa_invert+0x32> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:69 { v += '0'; - c0054d62: 0307879b addiw a5,a5,48 + c0054f32: 0307879b addiw a5,a5,48 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:79 v += 'A' - 10; else @@ -236893,30 +237091,30 @@ FAR char *__ultoa_invert(unsigned long val, FAR char *str, int base) } *str++ = v; - c0054d66: 00f50023 sb a5,0(a0) - c0054d6a: 0505 addi a0,a0,1 + c0054f36: 00f50023 sb a5,0(a0) + c0054f3a: 0505 addi a0,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:81 } while (val); - c0054d6c: fec5f3e3 bgeu a1,a2,c0054d52 <__ultoa_invert+0x12> + c0054f3c: fec5f3e3 bgeu a1,a2,c0054f22 <__ultoa_invert+0x12> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:84 return str; } - c0054d70: 8082 ret + c0054f40: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:73 if (upper) - c0054d72: c681 beqz a3,c0054d7a <__ultoa_invert+0x3a> + c0054f42: c681 beqz a3,c0054f4a <__ultoa_invert+0x3a> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:74 v += 'A' - 10; - c0054d74: 0377879b addiw a5,a5,55 - c0054d78: b7fd j c0054d66 <__ultoa_invert+0x26> + c0054f44: 0377879b addiw a5,a5,55 + c0054f48: b7fd j c0054f36 <__ultoa_invert+0x26> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ultoa_invert.c:76 v += 'a' - 10; - c0054d7a: 0577879b addiw a5,a5,87 - c0054d7e: b7e5 j c0054d66 <__ultoa_invert+0x26> + c0054f4a: 0577879b addiw a5,a5,87 + c0054f4e: b7e5 j c0054f36 <__ultoa_invert+0x26> -00000000c0054d80 <__dtoa_engine>: +00000000c0054f50 <__dtoa_engine>: __dtoa_engine(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:67 * Public Functions @@ -236925,62 +237123,62 @@ __dtoa_engine(): int __dtoa_engine(double x, FAR struct dtoa_s *dtoa, int max_digits, int max_decimals) { - c0054d80: 7179 addi sp,sp,-48 - c0054d82: a42a fsd fa0,8(sp) + c0054f50: 7179 addi sp,sp,-48 + c0054f52: a42a fsd fa0,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:72 int32_t exp = 0; uint8_t flags = 0; int i; if (__builtin_signbit(x)) - c0054d84: 67a2 ld a5,8(sp) + c0054f54: 67a2 ld a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:67 { - c0054d86: f022 sd s0,32(sp) - c0054d88: ec26 sd s1,24(sp) - c0054d8a: e84a sd s2,16(sp) - c0054d8c: f406 sd ra,40(sp) - c0054d8e: 892a mv s2,a0 - c0054d90: 842e mv s0,a1 - c0054d92: 4481 li s1,0 + c0054f56: f022 sd s0,32(sp) + c0054f58: ec26 sd s1,24(sp) + c0054f5a: e84a sd s2,16(sp) + c0054f5c: f406 sd ra,40(sp) + c0054f5e: 892a mv s2,a0 + c0054f60: 842e mv s0,a1 + c0054f62: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:72 if (__builtin_signbit(x)) - c0054d94: 0007d663 bgez a5,c0054da0 <__dtoa_engine+0x20> + c0054f64: 0007d663 bgez a5,c0054f70 <__dtoa_engine+0x20> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:75 { flags |= DTOA_MINUS; x = -x; - c0054d98: 22a517d3 fneg.d fa5,fa0 + c0054f68: 22a517d3 fneg.d fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:74 flags |= DTOA_MINUS; - c0054d9c: 4485 li s1,1 + c0054f6c: 4485 li s1,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:75 x = -x; - c0054d9e: a43e fsd fa5,8(sp) + c0054f6e: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:78 } if (x == 0) - c0054da0: f20007d3 fmv.d.x fa5,zero - c0054da4: 2722 fld fa4,8(sp) - c0054da6: a2f727d3 feq.d a5,fa4,fa5 - c0054daa: cf95 beqz a5,c0054de6 <__dtoa_engine+0x66> + c0054f70: f20007d3 fmv.d.x fa5,zero + c0054f74: 2722 fld fa4,8(sp) + c0054f76: a2f727d3 feq.d a5,fa4,fa5 + c0054f7a: cf95 beqz a5,c0054fb6 <__dtoa_engine+0x66> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:80 { flags |= DTOA_ZERO; - c0054dac: 0024e493 ori s1,s1,2 + c0054f7c: 0024e493 ori s1,s1,2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:82 for (i = 0; i < max_digits; i++) dtoa->digits[i] = '0'; - c0054db0: 0004061b sext.w a2,s0 - c0054db4: 00045363 bgez s0,c0054dba <__dtoa_engine+0x3a> - c0054db8: 4601 li a2,0 - c0054dba: 03000593 li a1,48 - c0054dbe: 00590513 addi a0,s2,5 - c0054dc2: 2af010ef jal ra,c0056870 + c0054f80: 0004061b sext.w a2,s0 + c0054f84: 00045363 bgez s0,c0054f8a <__dtoa_engine+0x3a> + c0054f88: 4601 li a2,0 + c0054f8a: 03000593 li a1,48 + c0054f8e: 00590513 addi a0,s2,5 + c0054f92: 2af010ef jal ra,c0056a40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:68 int32_t exp = 0; - c0054dc6: 4781 li a5,0 + c0054f96: 4781 li a5,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:165 mant %= decimal; decimal /= 10; @@ -236988,209 +237186,209 @@ int __dtoa_engine(double x, FAR struct dtoa_s *dtoa, int max_digits, } dtoa->digits[max_digits] = '\0'; - c0054dc8: 00890733 add a4,s2,s0 - c0054dcc: 000702a3 sb zero,5(a4) # 1005 <__clzdi2-0xbfffeffb> + c0054f98: 00890733 add a4,s2,s0 + c0054f9c: 000702a3 sb zero,5(a4) # 1005 <__clzdi2-0xbfffeffb> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:169 dtoa->flags = flags; dtoa->exp = exp; return max_digits; } - c0054dd0: 70a2 ld ra,40(sp) - c0054dd2: 8522 mv a0,s0 - c0054dd4: 7402 ld s0,32(sp) + c0054fa0: 70a2 ld ra,40(sp) + c0054fa2: 8522 mv a0,s0 + c0054fa4: 7402 ld s0,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:166 dtoa->flags = flags; - c0054dd6: 00990223 sb s1,4(s2) + c0054fa6: 00990223 sb s1,4(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:167 dtoa->exp = exp; - c0054dda: 00f92023 sw a5,0(s2) + c0054faa: 00f92023 sw a5,0(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:169 } - c0054dde: 64e2 ld s1,24(sp) - c0054de0: 6942 ld s2,16(sp) - c0054de2: 6145 addi sp,sp,48 - c0054de4: 8082 ret + c0054fae: 64e2 ld s1,24(sp) + c0054fb0: 6942 ld s2,16(sp) + c0054fb2: 6145 addi sp,sp,48 + c0054fb4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:84 else if (isnan(x)) - c0054de6: 27a2 fld fa5,8(sp) - c0054de8: a2f7a7d3 feq.d a5,fa5,fa5 - c0054dec: e781 bnez a5,c0054df4 <__dtoa_engine+0x74> + c0054fb6: 27a2 fld fa5,8(sp) + c0054fb8: a2f7a7d3 feq.d a5,fa5,fa5 + c0054fbc: e781 bnez a5,c0054fc4 <__dtoa_engine+0x74> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:86 flags |= DTOA_NAN; - c0054dee: 0084e493 ori s1,s1,8 - c0054df2: bfd1 j c0054dc6 <__dtoa_engine+0x46> + c0054fbe: 0084e493 ori s1,s1,8 + c0054fc2: bfd1 j c0054f96 <__dtoa_engine+0x46> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:88 else if (isinf(x)) - c0054df4: 00020797 auipc a5,0x20 - c0054df8: 9947b787 fld fa5,-1644(a5) # c0074788 <_erodata+0x8> - c0054dfc: 12f7f7d3 fmul.d fa5,fa5,fa5 - c0054e00: 2722 fld fa4,8(sp) - c0054e02: a2e7a7d3 feq.d a5,fa5,fa4 - c0054e06: e791 bnez a5,c0054e12 <__dtoa_engine+0x92> + c0054fc4: 00020797 auipc a5,0x20 + c0054fc8: a247b787 fld fa5,-1500(a5) # c00749e8 <_erodata+0x8> + c0054fcc: 12f7f7d3 fmul.d fa5,fa5,fa5 + c0054fd0: 2722 fld fa4,8(sp) + c0054fd2: a2e7a7d3 feq.d a5,fa5,fa4 + c0054fd6: e791 bnez a5,c0054fe2 <__dtoa_engine+0x92> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:88 (discriminator 1) - c0054e08: 22f797d3 fneg.d fa5,fa5 - c0054e0c: a2e7a7d3 feq.d a5,fa5,fa4 - c0054e10: c781 beqz a5,c0054e18 <__dtoa_engine+0x98> + c0054fd8: 22f797d3 fneg.d fa5,fa5 + c0054fdc: a2e7a7d3 feq.d a5,fa5,fa4 + c0054fe0: c781 beqz a5,c0054fe8 <__dtoa_engine+0x98> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:90 flags |= DTOA_INF; - c0054e12: 0044e493 ori s1,s1,4 - c0054e16: bf45 j c0054dc6 <__dtoa_engine+0x46> + c0054fe2: 0044e493 ori s1,s1,4 + c0054fe6: bf45 j c0054f96 <__dtoa_engine+0x46> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:102 if (x < MIN_MANT) - c0054e18: 27a2 fld fa5,8(sp) - c0054e1a: 00020797 auipc a5,0x20 - c0054e1e: a7e7b707 fld fa4,-1410(a5) # c0074898 <_erodata+0x118> - c0054e22: a2e797d3 flt.d a5,fa5,fa4 - c0054e26: cfd5 beqz a5,c0054ee2 <__dtoa_engine+0x162> + c0054fe8: 27a2 fld fa5,8(sp) + c0054fea: 00020797 auipc a5,0x20 + c0054fee: b0e7b707 fld fa4,-1266(a5) # c0074af8 <_erodata+0x118> + c0054ff2: a2e797d3 flt.d a5,fa5,fa4 + c0054ff6: cfd5 beqz a5,c00550b2 <__dtoa_engine+0x162> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:107 if (y < MAX_MANT) - c0054e28: 00020597 auipc a1,0x20 - c0054e2c: a785b707 fld fa4,-1416(a1) # c00748a0 <_erodata+0x120> - c0054e30: 0001e697 auipc a3,0x1e - c0054e34: e8868693 addi a3,a3,-376 # c0072cb8 + c0054ff8: 00020597 auipc a1,0x20 + c0054ffc: b085b707 fld fa4,-1272(a1) # c0074b00 <_erodata+0x120> + c0055000: 0001e697 auipc a3,0x1e + c0055004: f1868693 addi a3,a3,-232 # c0072f18 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:104 for (i = DTOA_SCALE_UP_NUM - 1; i >= 0; i--) - c0054e38: 4721 li a4,8 + c0055008: 4721 li a4,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:96 exp = MIN_MANT_EXP; - c0054e3a: 47bd li a5,15 + c005500a: 47bd li a5,15 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:110 exp -= (1 << i); - c0054e3c: 4505 li a0,1 + c005500c: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:104 for (i = DTOA_SCALE_UP_NUM - 1; i >= 0; i--) - c0054e3e: 55fd li a1,-1 + c005500e: 55fd li a1,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:106 y = x * g_dtoa_scale_up[i]; - c0054e40: 22bc fld fa5,64(a3) - c0054e42: 26a2 fld fa3,8(sp) - c0054e44: 12f6f7d3 fmul.d fa5,fa3,fa5 + c0055010: 22bc fld fa5,64(a3) + c0055012: 26a2 fld fa3,8(sp) + c0055014: 12f6f7d3 fmul.d fa5,fa3,fa5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:107 if (y < MAX_MANT) - c0054e48: a2e79853 flt.d a6,fa5,fa4 - c0054e4c: 00080763 beqz a6,c0054e5a <__dtoa_engine+0xda> + c0055018: a2e79853 flt.d a6,fa5,fa4 + c005501c: 00080763 beqz a6,c005502a <__dtoa_engine+0xda> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:110 exp -= (1 << i); - c0054e50: 00e5183b sllw a6,a0,a4 - c0054e54: 410787bb subw a5,a5,a6 + c0055020: 00e5183b sllw a6,a0,a4 + c0055024: 410787bb subw a5,a5,a6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:109 x = y; - c0054e58: a43e fsd fa5,8(sp) + c0055028: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:104 (discriminator 2) for (i = DTOA_SCALE_UP_NUM - 1; i >= 0; i--) - c0054e5a: 377d addiw a4,a4,-1 - c0054e5c: 16e1 addi a3,a3,-8 - c0054e5e: feb711e3 bne a4,a1,c0054e40 <__dtoa_engine+0xc0> + c005502a: 377d addiw a4,a4,-1 + c005502c: 16e1 addi a3,a3,-8 + c005502e: feb711e3 bne a4,a1,c0055010 <__dtoa_engine+0xc0> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:133 if (max_decimals != 0) - c0054e62: ce09 beqz a2,c0054e7c <__dtoa_engine+0xfc> + c0055032: ce09 beqz a2,c005504c <__dtoa_engine+0xfc> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:135 max_digits = MIN(max_digits, max_decimals + MAX(exp + 1, 0)); - c0054e64: 873e mv a4,a5 - c0054e66: 0007d363 bgez a5,c0054e6c <__dtoa_engine+0xec> - c0054e6a: 577d li a4,-1 - c0054e6c: 2705 addiw a4,a4,1 - c0054e6e: 9f31 addw a4,a4,a2 - c0054e70: 863a mv a2,a4 - c0054e72: 00e45363 bge s0,a4,c0054e78 <__dtoa_engine+0xf8> - c0054e76: 8622 mv a2,s0 - c0054e78: 0006041b sext.w s0,a2 + c0055034: 873e mv a4,a5 + c0055036: 0007d363 bgez a5,c005503c <__dtoa_engine+0xec> + c005503a: 577d li a4,-1 + c005503c: 2705 addiw a4,a4,1 + c005503e: 9f31 addw a4,a4,a2 + c0055040: 863a mv a2,a4 + c0055042: 00e45363 bge s0,a4,c0055048 <__dtoa_engine+0xf8> + c0055046: 8622 mv a2,s0 + c0055048: 0006041b sext.w s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:142 x = x + g_dtoa_round[max_digits]; - c0054e7c: 00341693 slli a3,s0,0x3 - c0054e80: 0001e717 auipc a4,0x1e - c0054e84: d7070713 addi a4,a4,-656 # c0072bf0 - c0054e88: 9736 add a4,a4,a3 - c0054e8a: 231c fld fa5,0(a4) - c0054e8c: 2722 fld fa4,8(sp) - c0054e8e: 02f777d3 fadd.d fa5,fa4,fa5 + c005504c: 00341693 slli a3,s0,0x3 + c0055050: 0001e717 auipc a4,0x1e + c0055054: e0070713 addi a4,a4,-512 # c0072e50 + c0055058: 9736 add a4,a4,a3 + c005505a: 231c fld fa5,0(a4) + c005505c: 2722 fld fa4,8(sp) + c005505e: 02f777d3 fadd.d fa5,fa4,fa5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:144 if (x >= MAX_MANT) - c0054e92: 00020717 auipc a4,0x20 - c0054e96: a0e73707 fld fa4,-1522(a4) # c00748a0 <_erodata+0x120> - c0054e9a: a2f70753 fle.d a4,fa4,fa5 - c0054e9e: cb01 beqz a4,c0054eae <__dtoa_engine+0x12e> + c0055062: 00020717 auipc a4,0x20 + c0055066: a9e73707 fld fa4,-1378(a4) # c0074b00 <_erodata+0x120> + c005506a: a2f70753 fle.d a4,fa4,fa5 + c005506e: cb01 beqz a4,c005507e <__dtoa_engine+0x12e> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:146 x /= 10.0; - c0054ea0: 00020717 auipc a4,0x20 - c0054ea4: a0873707 fld fa4,-1528(a4) # c00748a8 <_erodata+0x128> - c0054ea8: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + c0055070: 00020717 auipc a4,0x20 + c0055074: a9873707 fld fa4,-1384(a4) # c0074b08 <_erodata+0x128> + c0055078: 1ae7f7d3 fdiv.d fa5,fa5,fa4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:147 exp++; - c0054eac: 2785 addiw a5,a5,1 + c005507c: 2785 addiw a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:152 uint64_t mant = (uint64_t)x; - c0054eae: c2379653 fcvt.lu.d a2,fa5,rtz + c005507e: c2379653 fcvt.lu.d a2,fa5,rtz /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:157 for (i = 0; i < max_digits; i++) - c0054eb2: 4701 li a4,0 + c0055082: 4701 li a4,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:153 uint64_t decimal = MIN_MANT_INT; - c0054eb4: 00020697 auipc a3,0x20 - c0054eb8: 9dc6b683 ld a3,-1572(a3) # c0074890 <_erodata+0x110> + c0055084: 00020697 auipc a3,0x20 + c0055088: a6c6b683 ld a3,-1428(a3) # c0074af0 <_erodata+0x110> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:161 decimal /= 10; - c0054ebc: 4529 li a0,10 + c005508c: 4529 li a0,10 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:157 (discriminator 1) for (i = 0; i < max_digits; i++) - c0054ebe: 0007059b sext.w a1,a4 - c0054ec2: f085d3e3 bge a1,s0,c0054dc8 <__dtoa_engine+0x48> + c005508e: 0007059b sext.w a1,a4 + c0055092: f085d3e3 bge a1,s0,c0054f98 <__dtoa_engine+0x48> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:159 (discriminator 3) dtoa->digits[i] = mant / decimal + '0'; - c0054ec6: 02d655b3 divu a1,a2,a3 - c0054eca: 00e90833 add a6,s2,a4 - c0054ece: 0705 addi a4,a4,1 - c0054ed0: 0305859b addiw a1,a1,48 + c0055096: 02d655b3 divu a1,a2,a3 + c005509a: 00e90833 add a6,s2,a4 + c005509e: 0705 addi a4,a4,1 + c00550a0: 0305859b addiw a1,a1,48 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:160 (discriminator 3) mant %= decimal; - c0054ed4: 02d67633 remu a2,a2,a3 + c00550a4: 02d67633 remu a2,a2,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:159 (discriminator 3) dtoa->digits[i] = mant / decimal + '0'; - c0054ed8: 00b802a3 sb a1,5(a6) + c00550a8: 00b802a3 sb a1,5(a6) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:161 (discriminator 3) decimal /= 10; - c0054edc: 02a6d6b3 divu a3,a3,a0 + c00550ac: 02a6d6b3 divu a3,a3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:157 (discriminator 3) for (i = 0; i < max_digits; i++) - c0054ee0: bff9 j c0054ebe <__dtoa_engine+0x13e> - c0054ee2: 0001e697 auipc a3,0x1e - c0054ee6: d8e68693 addi a3,a3,-626 # c0072c70 + c00550b0: bff9 j c005508e <__dtoa_engine+0x13e> + c00550b2: 0001e697 auipc a3,0x1e + c00550b6: e1e68693 addi a3,a3,-482 # c0072ed0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:116 for (i = DTOA_SCALE_DOWN_NUM - 1; i >= 0; i--) - c0054eea: 4721 li a4,8 + c00550ba: 4721 li a4,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:96 exp = MIN_MANT_EXP; - c0054eec: 47bd li a5,15 + c00550bc: 47bd li a5,15 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:122 exp += (1 << i); - c0054eee: 4505 li a0,1 + c00550be: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:116 for (i = DTOA_SCALE_DOWN_NUM - 1; i >= 0; i--) - c0054ef0: 55fd li a1,-1 + c00550c0: 55fd li a1,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:118 y = x * g_dtoa_scale_down[i]; - c0054ef2: 22bc fld fa5,64(a3) - c0054ef4: 26a2 fld fa3,8(sp) - c0054ef6: 12f6f7d3 fmul.d fa5,fa3,fa5 + c00550c2: 22bc fld fa5,64(a3) + c00550c4: 26a2 fld fa3,8(sp) + c00550c6: 12f6f7d3 fmul.d fa5,fa3,fa5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:119 if (y >= MIN_MANT) - c0054efa: a2f70853 fle.d a6,fa4,fa5 - c0054efe: 00080763 beqz a6,c0054f0c <__dtoa_engine+0x18c> + c00550ca: a2f70853 fle.d a6,fa4,fa5 + c00550ce: 00080763 beqz a6,c00550dc <__dtoa_engine+0x18c> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:122 exp += (1 << i); - c0054f02: 00e5183b sllw a6,a0,a4 - c0054f06: 00f807bb addw a5,a6,a5 + c00550d2: 00e5183b sllw a6,a0,a4 + c00550d6: 00f807bb addw a5,a6,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:121 x = y; - c0054f0a: a43e fsd fa5,8(sp) + c00550da: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_dtoa_engine.c:116 (discriminator 2) for (i = DTOA_SCALE_DOWN_NUM - 1; i >= 0; i--) - c0054f0c: 377d addiw a4,a4,-1 - c0054f0e: 16e1 addi a3,a3,-8 - c0054f10: feb711e3 bne a4,a1,c0054ef2 <__dtoa_engine+0x172> - c0054f14: b7b9 j c0054e62 <__dtoa_engine+0xe2> + c00550dc: 377d addiw a4,a4,-1 + c00550de: 16e1 addi a3,a3,-8 + c00550e0: feb711e3 bne a4,a1,c00550c2 <__dtoa_engine+0x172> + c00550e4: b7b9 j c0055032 <__dtoa_engine+0xe2> -00000000c0054f16 : +00000000c00550e6 : lib_mode2oflags(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:215 /**************************************************************************** @@ -237199,9 +237397,9 @@ lib_mode2oflags(): int lib_mode2oflags(FAR const char *mode) { - c0054f16: 1141 addi sp,sp,-16 - c0054f18: e406 sd ra,8(sp) - c0054f1a: 86aa mv a3,a0 + c00550e6: 1141 addi sp,sp,-16 + c00550e8: e406 sd ra,8(sp) + c00550ea: 86aa mv a3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:221 unsigned int state; int oflags; @@ -237209,9 +237407,9 @@ int lib_mode2oflags(FAR const char *mode) /* Verify that a mode string was provided. */ DEBUGASSERT(mode); - c0054f1c: c11d beqz a0,c0054f42 - c0054f1e: 4501 li a0,0 - c0054f20: 4781 li a5,0 + c00550ec: c11d beqz a0,c0055112 + c00550ee: 4501 li a0,0 + c00550f0: 4781 li a5,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:230 state = MODE_NONE; oflags = 0; @@ -237219,17 +237417,17 @@ int lib_mode2oflags(FAR const char *mode) for (; *mode; mode++) { switch (*mode) - c0054f22: 02b00813 li a6,43 - c0054f26: 4889 li a7,2 - c0054f28: 4311 li t1,4 - c0054f2a: 4605 li a2,1 - c0054f2c: 4e5d li t3,23 - c0054f2e: 0001e597 auipc a1,0x1e - c0054f32: de658593 addi a1,a1,-538 # c0072d14 + c00550f2: 02b00813 li a6,43 + c00550f6: 4889 li a7,2 + c00550f8: 4311 li t1,4 + c00550fa: 4605 li a2,1 + c00550fc: 4e5d li t3,23 + c00550fe: 0001e597 auipc a1,0x1e + c0055102: e7658593 addi a1,a1,-394 # c0072f74 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:228 for (; *mode; mode++) - c0054f36: 0006c703 lbu a4,0(a3) - c0054f3a: ef09 bnez a4,c0054f54 + c0055106: 0006c703 lbu a4,0(a3) + c005510a: ef09 bnez a4,c0055124 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:417 */ @@ -237237,318 +237435,318 @@ errout: set_errno(EINVAL); return ERROR; } - c0054f3c: 60a2 ld ra,8(sp) - c0054f3e: 0141 addi sp,sp,16 - c0054f40: 8082 ret + c005510c: 60a2 ld ra,8(sp) + c005510e: 0141 addi sp,sp,16 + c0055110: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:221 (discriminator 1) DEBUGASSERT(mode); - c0054f42: 4601 li a2,0 - c0054f44: 0dd00593 li a1,221 - c0054f48: 0001e517 auipc a0,0x1e - c0054f4c: db850513 addi a0,a0,-584 # c0072d00 - c0054f50: ac9fe0ef jal ra,c0053a18 <__assert> + c0055112: 4601 li a2,0 + c0055114: 0dd00593 li a1,221 + c0055118: 0001e517 auipc a0,0x1e + c005511c: e4850513 addi a0,a0,-440 # c0072f60 + c0055120: ac9fe0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:230 switch (*mode) - c0054f54: 03070e63 beq a4,a6,c0054f90 - c0054f58: f9f7071b addiw a4,a4,-97 - c0054f5c: 0ff77713 zext.b a4,a4 - c0054f60: 00ee6863 bltu t3,a4,c0054f70 - c0054f64: 070a slli a4,a4,0x2 - c0054f66: 972e add a4,a4,a1 - c0054f68: 4318 lw a4,0(a4) - c0054f6a: 972e add a4,a4,a1 - c0054f6c: 8702 jr a4 + c0055124: 03070e63 beq a4,a6,c0055160 + c0055128: f9f7071b addiw a4,a4,-97 + c005512c: 0ff77713 zext.b a4,a4 + c0055130: 00ee6863 bltu t3,a4,c0055140 + c0055134: 070a slli a4,a4,0x2 + c0055136: 972e add a4,a4,a1 + c0055138: 4318 lw a4,0(a4) + c005513a: 972e add a4,a4,a1 + c005513c: 8702 jr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:235 if (state == MODE_NONE) - c0054f6e: cbb5 beqz a5,c0054fe2 + c005513e: cbb5 beqz a5,c00551b2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:415 set_errno(EINVAL); - c0054f70: b65fe0ef jal ra,c0053ad4 <__errno> - c0054f74: 47d9 li a5,22 - c0054f76: c11c sw a5,0(a0) + c0055140: b65fe0ef jal ra,c0053ca4 <__errno> + c0055144: 47d9 li a5,22 + c0055146: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:416 return ERROR; - c0054f78: 557d li a0,-1 - c0054f7a: b7c9 j c0054f3c + c0055148: 557d li a0,-1 + c005514a: b7c9 j c005510c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:251 if (state == MODE_NONE) - c0054f7c: fbf5 bnez a5,c0054f70 + c005514c: fbf5 bnez a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:255 oflags = O_WROK | O_CREAT | O_TRUNC | O_TEXT; - c0054f7e: 12600513 li a0,294 + c005514e: 12600513 li a0,294 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:256 state = MODE_W; - c0054f82: 4789 li a5,2 - c0054f84: a005 j c0054fa4 + c0055152: 4789 li a5,2 + c0055154: a005 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:267 if (state == MODE_NONE) - c0054f86: f7ed bnez a5,c0054f70 + c0055156: f7ed bnez a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:271 oflags = O_WROK | O_CREAT | O_APPEND | O_TEXT; - c0054f88: 11600513 li a0,278 + c0055158: 11600513 li a0,278 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:272 state = MODE_A; - c0054f8c: 4791 li a5,4 - c0054f8e: a819 j c0054fa4 + c005515c: 4791 li a5,4 + c005515e: a819 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:283 switch (state & MODE_MASK) - c0054f90: 01178c63 beq a5,a7,c0054fa8 - c0054f94: 00678f63 beq a5,t1,c0054fb2 - c0054f98: fcc79ce3 bne a5,a2,c0054f70 + c0055160: 01178c63 beq a5,a7,c0055178 + c0055164: 00678f63 beq a5,t1,c0055182 + c0055168: fcc79ce3 bne a5,a2,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:289 oflags &= FLAG_KEEP; - c0054f9c: 50857513 andi a0,a0,1288 + c005516c: 50857513 andi a0,a0,1288 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:293 oflags |= O_RDWR; - c0054fa0: 00356513 ori a0,a0,3 + c0055170: 00356513 ori a0,a0,3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:228 for (; *mode; mode++) - c0054fa4: 0685 addi a3,a3,1 - c0054fa6: bf41 j c0054f36 + c0055174: 0685 addi a3,a3,1 + c0055176: bf41 j c0055106 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:301 oflags &= FLAG_KEEP; - c0054fa8: 50857513 andi a0,a0,1288 + c0055178: 50857513 andi a0,a0,1288 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:307 oflags |= O_RDWR | O_CREAT | O_TRUNC; - c0054fac: 02756513 ori a0,a0,39 + c005517c: 02756513 ori a0,a0,39 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:309 break; - c0054fb0: bfd5 j c0054fa4 + c0055180: bfd5 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:315 oflags &= FLAG_KEEP; - c0054fb2: 50857513 andi a0,a0,1288 + c0055182: 50857513 andi a0,a0,1288 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:321 oflags |= O_RDWR | O_CREAT | O_APPEND; - c0054fb6: 01756513 ori a0,a0,23 + c0055186: 01756513 ori a0,a0,23 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:323 break; - c0054fba: b7ed j c0054fa4 + c005518a: b7ed j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:334 if (state != MODE_R) - c0054fbc: fec784e3 beq a5,a2,c0054fa4 - c0054fc0: bf45 j c0054f70 + c005518c: fec784e3 beq a5,a2,c0055174 + c0055190: bf45 j c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:343 if ((state & MODE_MASK) != MODE_NONE) - c0054fc2: d7dd beqz a5,c0054f70 + c0055192: d7dd beqz a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:347 oflags &= ~O_TEXT; - c0054fc4: eff57513 andi a0,a0,-257 + c0055194: eff57513 andi a0,a0,-257 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:353 break; - c0054fc8: bff1 j c0054fa4 + c0055198: bff1 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:358 if ((state & MODE_MASK) != MODE_NONE) - c0054fca: d3dd beqz a5,c0054f70 + c005519a: d3dd beqz a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:362 oflags |= O_CLOEXEC; - c0054fcc: 40056513 ori a0,a0,1024 + c005519c: 40056513 ori a0,a0,1024 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:368 break; - c0054fd0: bfd1 j c0054fa4 + c00551a0: bfd1 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:373 if ((state & MODE_MASK) != MODE_NONE) - c0054fd2: dfd9 beqz a5,c0054f70 + c00551a2: dfd9 beqz a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:377 oflags |= O_EXCL; - c0054fd4: 00856513 ori a0,a0,8 + c00551a4: 00856513 ori a0,a0,8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:383 break; - c0054fd8: b7f1 j c0054fa4 + c00551a8: b7f1 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:388 if ((state & MODE_MASK) != MODE_NONE) - c0054fda: dbd9 beqz a5,c0054f70 + c00551aa: dbd9 beqz a5,c0055140 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:392 oflags |= O_TEXT; - c0054fdc: 10056513 ori a0,a0,256 + c00551ac: 10056513 ori a0,a0,256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:398 break; - c0054fe0: b7d1 j c0054fa4 + c00551b0: b7d1 j c0055174 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:239 oflags = O_RDOK | O_TEXT; - c0054fe2: 10100513 li a0,257 + c00551b2: 10100513 li a0,257 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:240 state = MODE_R; - c0054fe6: 4785 li a5,1 - c0054fe8: bf75 j c0054fa4 + c00551b6: 4785 li a5,1 + c00551b8: bf75 j c0055174 -00000000c0054fea : +00000000c00551ba : fdopen(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:67 { - c0054fea: 7179 addi sp,sp,-48 - c0054fec: f022 sd s0,32(sp) - c0054fee: ec26 sd s1,24(sp) - c0054ff0: e44e sd s3,8(sp) - c0054ff2: f406 sd ra,40(sp) - c0054ff4: e84a sd s2,16(sp) - c0054ff6: e052 sd s4,0(sp) - c0054ff8: 842e mv s0,a1 - c0054ffa: 89aa mv s3,a0 + c00551ba: 7179 addi sp,sp,-48 + c00551bc: f022 sd s0,32(sp) + c00551be: ec26 sd s1,24(sp) + c00551c0: e44e sd s3,8(sp) + c00551c2: f406 sd ra,40(sp) + c00551c4: e84a sd s2,16(sp) + c00551c6: e052 sd s4,0(sp) + c00551c8: 842e mv s0,a1 + c00551ca: 89aa mv s3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:68 FAR struct streamlist *list = lib_get_streams(); - c0054ffc: 7da000ef jal ra,c00557d6 - c0055000: 84aa mv s1,a0 + c00551cc: 7da000ef jal ra,c00559a6 + c00551d0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:75 oflags = lib_mode2oflags(mode); - c0055002: 8522 mv a0,s0 - c0055004: f13ff0ef jal ra,c0054f16 + c00551d2: 8522 mv a0,s0 + c00551d4: f13ff0ef jal ra,c00550e6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:76 if (oflags < 0) - c0055008: 02054b63 bltz a0,c005503e + c00551d8: 02054b63 bltz a0,c005520e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:83 if (fd >= 3) - c005500c: 4789 li a5,2 - c005500e: 8a2a mv s4,a0 - c0055010: 0737de63 bge a5,s3,c005508c + c00551dc: 4789 li a5,2 + c00551de: 8a2a mv s4,a0 + c00551e0: 0737de63 bge a5,s3,c005525c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:85 filep = lib_zalloc(sizeof(FILE)); - c0055014: 06000513 li a0,96 - c0055018: 132030ef jal ra,c005814a - c005501c: 842a mv s0,a0 + c00551e4: 06000513 li a0,96 + c00551e8: 132030ef jal ra,c005831a + c00551ec: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:86 if (filep == NULL) - c005501e: cd3d beqz a0,c005509c + c00551ee: cd3d beqz a0,c005526c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:94 ret = nxmutex_lock(&list->sl_lock); - c0055020: 8526 mv a0,s1 - c0055022: b4ffe0ef jal ra,c0053b70 - c0055026: 892a mv s2,a0 + c00551f0: 8526 mv a0,s1 + c00551f2: b4ffe0ef jal ra,c0053d40 + c00551f6: 892a mv s2,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:95 if (ret < 0) - c0055028: 00055d63 bgez a0,c0055042 + c00551f8: 00055d63 bgez a0,c0055212 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:97 lib_free(filep); - c005502c: 8522 mv a0,s0 - c005502e: dcbfd0ef jal ra,c0052df8 + c00551fc: 8522 mv a0,s0 + c00551fe: dcbfd0ef jal ra,c0052fc8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:163 set_errno(-ret); - c0055032: aa3fe0ef jal ra,c0053ad4 <__errno> - c0055036: 4120093b negw s2,s2 - c005503a: 01252023 sw s2,0(a0) + c0055202: aa3fe0ef jal ra,c0053ca4 <__errno> + c0055206: 4120093b negw s2,s2 + c005520a: 01252023 sw s2,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:78 return NULL; - c005503e: 4401 li s0,0 - c0055040: a815 j c0055074 + c005520e: 4401 li s0,0 + c0055210: a815 j c0055244 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:101 if (list->sl_tail) - c0055042: 1484b783 ld a5,328(s1) - c0055046: c3a1 beqz a5,c0055086 + c0055212: 1484b783 ld a5,328(s1) + c0055216: c3a1 beqz a5,c0055256 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:103 list->sl_tail->fs_next = filep; - c0055048: e380 sd s0,0(a5) + c0055218: e380 sd s0,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:109 list->sl_tail = filep; - c005504a: 1484b423 sd s0,328(s1) + c005521a: 1484b423 sd s0,328(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:112 nxmutex_unlock(&list->sl_lock); - c005504e: 8526 mv a0,s1 - c0055050: c17fe0ef jal ra,c0053c66 + c005521e: 8526 mv a0,s1 + c0055220: c17fe0ef jal ra,c0053e36 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:116 nxrmutex_init(&filep->fs_lock); - c0055054: 00840513 addi a0,s0,8 - c0055058: c9dfe0ef jal ra,c0053cf4 + c0055224: 00840513 addi a0,s0,8 + c0055228: c9dfe0ef jal ra,c0053ec4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:144 filep->fs_cookie = (FAR void *)(intptr_t)fd; - c005505c: 05343823 sd s3,80(s0) + c005522c: 05343823 sd s3,80(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:145 filep->fs_oflags = oflags; - c0055060: 05441c23 sh s4,88(s0) + c0055230: 05441c23 sh s4,88(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:155 filep->fs_iofunc.read = NULL; - c0055064: 02043823 sd zero,48(s0) + c0055234: 02043823 sd zero,48(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:156 filep->fs_iofunc.write = NULL; - c0055068: 02043c23 sd zero,56(s0) + c0055238: 02043c23 sd zero,56(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:157 filep->fs_iofunc.seek = NULL; - c005506c: 04043023 sd zero,64(s0) + c005523c: 04043023 sd zero,64(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:158 filep->fs_iofunc.close = NULL; - c0055070: 04043423 sd zero,72(s0) + c0055240: 04043423 sd zero,72(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:165 } - c0055074: 70a2 ld ra,40(sp) - c0055076: 8522 mv a0,s0 - c0055078: 7402 ld s0,32(sp) - c005507a: 64e2 ld s1,24(sp) - c005507c: 6942 ld s2,16(sp) - c005507e: 69a2 ld s3,8(sp) - c0055080: 6a02 ld s4,0(sp) - c0055082: 6145 addi sp,sp,48 - c0055084: 8082 ret + c0055244: 70a2 ld ra,40(sp) + c0055246: 8522 mv a0,s0 + c0055248: 7402 ld s0,32(sp) + c005524a: 64e2 ld s1,24(sp) + c005524c: 6942 ld s2,16(sp) + c005524e: 69a2 ld s3,8(sp) + c0055250: 6a02 ld s4,0(sp) + c0055252: 6145 addi sp,sp,48 + c0055254: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:108 list->sl_head = filep; - c0055086: 1484b023 sd s0,320(s1) - c005508a: b7c1 j c005504a + c0055256: 1484b023 sd s0,320(s1) + c005525a: b7c1 j c005521a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:120 filep = &list->sl_std[fd]; - c005508c: 06000413 li s0,96 - c0055090: 02898433 mul s0,s3,s0 - c0055094: 02040413 addi s0,s0,32 - c0055098: 9426 add s0,s0,s1 - c005509a: b7c9 j c005505c + c005525c: 06000413 li s0,96 + c0055260: 02898433 mul s0,s3,s0 + c0055264: 02040413 addi s0,s0,32 + c0055268: 9426 add s0,s0,s1 + c005526a: b7c9 j c005522c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:88 ret = -ENOMEM; - c005509c: 5951 li s2,-12 - c005509e: bf51 j c0055032 + c005526c: 5951 li s2,-12 + c005526e: bf51 j c0055202 -00000000c00550a0 : +00000000c0055270 : fopen(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:172 { - c00550a0: 1101 addi sp,sp,-32 - c00550a2: e426 sd s1,8(sp) - c00550a4: 84aa mv s1,a0 + c0055270: 1101 addi sp,sp,-32 + c0055272: e426 sd s1,8(sp) + c0055274: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:179 oflags = lib_mode2oflags(mode); - c00550a6: 852e mv a0,a1 + c0055276: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:172 { - c00550a8: e822 sd s0,16(sp) - c00550aa: ec06 sd ra,24(sp) - c00550ac: 842e mv s0,a1 + c0055278: e822 sd s0,16(sp) + c005527a: ec06 sd ra,24(sp) + c005527c: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:179 oflags = lib_mode2oflags(mode); - c00550ae: e69ff0ef jal ra,c0054f16 + c005527e: e69ff0ef jal ra,c00550e6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:180 if (oflags < 0) - c00550b2: 00055963 bgez a0,c00550c4 + c0055282: 00055963 bgez a0,c0055294 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:182 return NULL; - c00550b6: 4401 li s0,0 + c0055286: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:208 } - c00550b8: 60e2 ld ra,24(sp) - c00550ba: 8522 mv a0,s0 - c00550bc: 6442 ld s0,16(sp) - c00550be: 64a2 ld s1,8(sp) - c00550c0: 6105 addi sp,sp,32 - c00550c2: 8082 ret - c00550c4: 85aa mv a1,a0 + c0055288: 60e2 ld ra,24(sp) + c005528a: 8522 mv a0,s0 + c005528c: 6442 ld s0,16(sp) + c005528e: 64a2 ld s1,8(sp) + c0055290: 6105 addi sp,sp,32 + c0055292: 8082 ret + c0055294: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:187 fd = open(path, oflags, 0666); - c00550c6: 1b600613 li a2,438 - c00550ca: 8526 mv a0,s1 - c00550cc: 3dc020ef jal ra,c00574a8 - c00550d0: 84aa mv s1,a0 + c0055296: 1b600613 li a2,438 + c005529a: 8526 mv a0,s1 + c005529c: 3dc020ef jal ra,c0057678 + c00552a0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:194 if (fd >= 0) - c00550d2: fe0542e3 bltz a0,c00550b6 + c00552a2: fe0542e3 bltz a0,c0055286 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:196 filep = fdopen(fd, mode); - c00550d6: 85a2 mv a1,s0 - c00550d8: f13ff0ef jal ra,c0054fea - c00550dc: 842a mv s0,a0 + c00552a6: 85a2 mv a1,s0 + c00552a8: f13ff0ef jal ra,c00551ba + c00552ac: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:197 if (filep == NULL) - c00550de: fd69 bnez a0,c00550b8 + c00552ae: fd69 bnez a0,c0055288 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fopen.c:203 close(fd); - c00550e0: 8526 mv a0,s1 - c00550e2: 200020ef jal ra,c00572e2 - c00550e6: bfc9 j c00550b8 + c00552b0: 8526 mv a0,s1 + c00552b2: 200020ef jal ra,c00574b2 + c00552b6: bfc9 j c0055288 -00000000c00550e8 : +00000000c00552b8 : fclose(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:60 * stream results in undefined behaviour. @@ -237557,12 +237755,12 @@ fclose(): int fclose(FAR FILE *stream) { - c00550e8: 7179 addi sp,sp,-48 - c00550ea: f406 sd ra,40(sp) - c00550ec: f022 sd s0,32(sp) - c00550ee: ec26 sd s1,24(sp) - c00550f0: e84a sd s2,16(sp) - c00550f2: e44e sd s3,8(sp) + c00552b8: 7179 addi sp,sp,-48 + c00552ba: f406 sd ra,40(sp) + c00552bc: f022 sd s0,32(sp) + c00552be: ec26 sd s1,24(sp) + c00552c0: e84a sd s2,16(sp) + c00552c2: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:70 int ret = ERROR; int status; @@ -237570,7 +237768,7 @@ int fclose(FAR FILE *stream) /* Verify that a stream was provided. */ if (stream) - c00550f4: cd5d beqz a0,c00551b2 + c00552c4: cd5d beqz a0,c0055382 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:76 { ret = OK; @@ -237578,36 +237776,36 @@ int fclose(FAR FILE *stream) /* If the stream was opened for writing, then flush the stream */ if ((stream->fs_oflags & O_WROK) != 0) - c00550f6: 05855783 lhu a5,88(a0) - c00550fa: 842a mv s0,a0 - c00550fc: 8b89 andi a5,a5,2 - c00550fe: cfd1 beqz a5,c005519a + c00552c6: 05855783 lhu a5,88(a0) + c00552ca: 842a mv s0,a0 + c00552cc: 8b89 andi a5,a5,2 + c00552ce: cfd1 beqz a5,c005536a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:78 { ret = lib_fflush(stream); - c0055100: 48e000ef jal ra,c005558e - c0055104: 0005049b sext.w s1,a0 + c00552d0: 48e000ef jal ra,c005575e + c00552d4: 0005049b sext.w s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:79 errcode = get_errno(); - c0055108: 9cdfe0ef jal ra,c0053ad4 <__errno> - c005510c: 00052983 lw s3,0(a0) + c00552d8: 9cdfe0ef jal ra,c0053ca4 <__errno> + c00552dc: 00052983 lw s3,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:84 } /* Skip close the builtin streams(stdin, stdout and stderr) */ if (stream == stdin || stream == stdout || stream == stderr) - c0055110: 4501 li a0,0 - c0055112: 6d6000ef jal ra,c00557e8 - c0055116: 06a40463 beq s0,a0,c005517e + c00552e0: 4501 li a0,0 + c00552e2: 6d6000ef jal ra,c00559b8 + c00552e6: 06a40463 beq s0,a0,c005534e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:84 (discriminator 1) - c005511a: 4505 li a0,1 - c005511c: 6cc000ef jal ra,c00557e8 - c0055120: 04a40f63 beq s0,a0,c005517e + c00552ea: 4505 li a0,1 + c00552ec: 6cc000ef jal ra,c00559b8 + c00552f0: 04a40f63 beq s0,a0,c005534e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:84 (discriminator 2) - c0055124: 4509 li a0,2 - c0055126: 6c2000ef jal ra,c00557e8 - c005512a: 04a40a63 beq s0,a0,c005517e + c00552f4: 4509 li a0,2 + c00552f6: 6c2000ef jal ra,c00559b8 + c00552fa: 04a40a63 beq s0,a0,c005534e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:91 goto done; } @@ -237615,23 +237813,23 @@ int fclose(FAR FILE *stream) /* Remove FILE structure from the stream list */ slist = lib_get_streams(); - c005512e: 6a8000ef jal ra,c00557d6 - c0055132: 892a mv s2,a0 + c00552fe: 6a8000ef jal ra,c00559a6 + c0055302: 892a mv s2,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:92 nxmutex_lock(&slist->sl_lock); - c0055134: a3dfe0ef jal ra,c0053b70 + c0055304: a3dfe0ef jal ra,c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:94 for (next = slist->sl_head; next; prev = next, next = next->fs_next) - c0055138: 14093603 ld a2,320(s2) + c0055308: 14093603 ld a2,320(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:62 FAR FILE *prev = NULL; - c005513c: 4701 li a4,0 + c005530c: 4701 li a4,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:94 for (next = slist->sl_head; next; prev = next, next = next->fs_next) - c005513e: 87b2 mv a5,a2 + c005530e: 87b2 mv a5,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:94 (discriminator 1) - c0055140: cf91 beqz a5,c005515c + c0055310: cf91 beqz a5,c005532c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:100 { if (next == stream) @@ -237639,16 +237837,16 @@ int fclose(FAR FILE *stream) if (next == slist->sl_head) { slist->sl_head = next->fs_next; - c0055142: 6394 ld a3,0(a5) + c0055312: 6394 ld a3,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:96 if (next == stream) - c0055144: 06879063 bne a5,s0,c00551a4 + c0055314: 06879063 bne a5,s0,c0055374 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:98 if (next == slist->sl_head) - c0055148: 04c79c63 bne a5,a2,c00551a0 + c0055318: 04c79c63 bne a5,a2,c0055370 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:100 slist->sl_head = next->fs_next; - c005514c: 14d93023 sd a3,320(s2) + c005531c: 14d93023 sd a3,320(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:107 else { @@ -237656,12 +237854,12 @@ int fclose(FAR FILE *stream) } if (next == slist->sl_tail) - c0055150: 14893683 ld a3,328(s2) - c0055154: 00f69463 bne a3,a5,c005515c + c0055320: 14893683 ld a3,328(s2) + c0055324: 00f69463 bne a3,a5,c005532c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:109 { slist->sl_tail = prev; - c0055158: 14e93423 sd a4,328(s2) + c0055328: 14e93423 sd a4,328(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:116 break; @@ -237669,20 +237867,20 @@ int fclose(FAR FILE *stream) } nxmutex_unlock(&slist->sl_lock); - c005515c: 854a mv a0,s2 - c005515e: b09fe0ef jal ra,c0053c66 + c005532c: 854a mv a0,s2 + c005532e: b09fe0ef jal ra,c0053e36 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:120 /* Call user custom callback if it is not NULL. */ if (stream->fs_iofunc.close != NULL) - c0055162: 643c ld a5,72(s0) - c0055164: 6828 ld a0,80(s0) - c0055166: c3b1 beqz a5,c00551aa + c0055332: 643c ld a5,72(s0) + c0055334: 6828 ld a0,80(s0) + c0055336: c3b1 beqz a5,c005537a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:122 { status = stream->fs_iofunc.close(stream->fs_cookie); - c0055168: 9782 jalr a5 + c0055338: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:133 uint64_t tag; tag = android_fdsan_create_owner_tag(ANDROID_FDSAN_OWNER_TYPE_FILE, @@ -237690,7 +237888,7 @@ int fclose(FAR FILE *stream) status = android_fdsan_close_with_tag(fd, tag); #else status = close(fd); - c005516a: 892a mv s2,a0 + c005533a: 892a mv s2,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:141 /* If close() returns an error but flush() did not then make sure @@ -237698,16 +237896,16 @@ int fclose(FAR FILE *stream) */ if (ret == OK) - c005516c: e491 bnez s1,c0055178 + c005533c: e491 bnez s1,c0055348 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:144 { ret = status; errcode = get_errno(); - c005516e: 967fe0ef jal ra,c0053ad4 <__errno> - c0055172: 00052983 lw s3,0(a0) + c005533e: 967fe0ef jal ra,c0053ca4 <__errno> + c0055342: 00052983 lw s3,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:143 ret = status; - c0055176: 84ca mv s1,s2 + c0055346: 84ca mv s1,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:161 { lib_free(stream->fs_bufstart); @@ -237715,8 +237913,8 @@ int fclose(FAR FILE *stream) #endif lib_free(stream); - c0055178: 8522 mv a0,s0 - c005517a: c7ffd0ef jal ra,c0052df8 + c0055348: 8522 mv a0,s0 + c005534a: c7ffd0ef jal ra,c0052fc8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:169 done: /* On an error, reset the errno to the first error encountered and return @@ -237724,15 +237922,15 @@ done: */ if (ret != OK) - c005517e: c491 beqz s1,c005518a + c005534e: c491 beqz s1,c005535a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:171 { set_errno(errcode); - c0055180: 955fe0ef jal ra,c0053ad4 <__errno> - c0055184: 01352023 sw s3,0(a0) + c0055350: 955fe0ef jal ra,c0053ca4 <__errno> + c0055354: 01352023 sw s3,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:172 return EOF; - c0055188: 54fd li s1,-1 + c0055358: 54fd li s1,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:178 } @@ -237740,41 +237938,41 @@ done: return OK; } - c005518a: 70a2 ld ra,40(sp) - c005518c: 7402 ld s0,32(sp) - c005518e: 6942 ld s2,16(sp) - c0055190: 69a2 ld s3,8(sp) - c0055192: 8526 mv a0,s1 - c0055194: 64e2 ld s1,24(sp) - c0055196: 6145 addi sp,sp,48 - c0055198: 8082 ret + c005535a: 70a2 ld ra,40(sp) + c005535c: 7402 ld s0,32(sp) + c005535e: 6942 ld s2,16(sp) + c0055360: 69a2 ld s3,8(sp) + c0055362: 8526 mv a0,s1 + c0055364: 64e2 ld s1,24(sp) + c0055366: 6145 addi sp,sp,48 + c0055368: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:72 ret = OK; - c005519a: 4481 li s1,0 + c005536a: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:64 int errcode = EINVAL; - c005519c: 49d9 li s3,22 - c005519e: bf8d j c0055110 + c005536c: 49d9 li s3,22 + c005536e: bf8d j c00552e0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:104 prev->fs_next = next->fs_next; - c00551a0: e314 sd a3,0(a4) - c00551a2: b77d j c0055150 - c00551a4: 873e mv a4,a5 + c0055370: e314 sd a3,0(a4) + c0055372: b77d j c0055320 + c0055374: 873e mv a4,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:100 slist->sl_head = next->fs_next; - c00551a6: 87b6 mv a5,a3 - c00551a8: bf61 j c0055140 + c0055376: 87b6 mv a5,a3 + c0055378: bf61 j c0055310 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:133 status = close(fd); - c00551aa: 2501 sext.w a0,a0 - c00551ac: 136020ef jal ra,c00572e2 - c00551b0: bf6d j c005516a + c005537a: 2501 sext.w a0,a0 + c005537c: 136020ef jal ra,c00574b2 + c0055380: bf6d j c005533a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fclose.c:64 int errcode = EINVAL; - c00551b2: 49d9 li s3,22 - c00551b4: b7f1 j c0055180 + c0055382: 49d9 li s3,22 + c0055384: b7f1 j c0055350 -00000000c00551b6 : +00000000c0055386 : fread_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:42 * Name: fread @@ -237783,10 +237981,10 @@ fread_unlocked(): size_t fread_unlocked(FAR void *ptr, size_t size, size_t n_items, FAR FILE *stream) { - c00551b6: 1141 addi sp,sp,-16 - c00551b8: e022 sd s0,0(sp) - c00551ba: 842e mv s0,a1 - c00551bc: 85b2 mv a1,a2 + c0055386: 1141 addi sp,sp,-16 + c0055388: e022 sd s0,0(sp) + c005538a: 842e mv s0,a1 + c005538c: 85b2 mv a1,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:49 ssize_t bytes_read; size_t items_read = 0; @@ -237794,87 +237992,87 @@ size_t fread_unlocked(FAR void *ptr, size_t size, /* Write the data into the stream buffer */ bytes_read = lib_fread_unlocked(ptr, full_size, stream); - c00551be: 028585b3 mul a1,a1,s0 - c00551c2: 8636 mv a2,a3 + c005538e: 028585b3 mul a1,a1,s0 + c0055392: 8636 mv a2,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:42 { - c00551c4: e406 sd ra,8(sp) + c0055394: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:49 bytes_read = lib_fread_unlocked(ptr, full_size, stream); - c00551c6: 04e000ef jal ra,c0055214 + c0055396: 04e000ef jal ra,c00553e4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:50 if (bytes_read > 0) - c00551ca: 00a05863 blez a0,c00551da + c005539a: 00a05863 blez a0,c00553aa /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:54 { /* Return the number of full items read */ items_read = bytes_read / size; - c00551ce: 02855533 divu a0,a0,s0 + c005539e: 02855533 divu a0,a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:58 } return items_read; } - c00551d2: 60a2 ld ra,8(sp) - c00551d4: 6402 ld s0,0(sp) - c00551d6: 0141 addi sp,sp,16 - c00551d8: 8082 ret + c00553a2: 60a2 ld ra,8(sp) + c00553a4: 6402 ld s0,0(sp) + c00553a6: 0141 addi sp,sp,16 + c00553a8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:45 size_t items_read = 0; - c00551da: 4501 li a0,0 + c00553aa: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:57 return items_read; - c00551dc: bfdd j c00551d2 + c00553ac: bfdd j c00553a2 -00000000c00551de : +00000000c00553ae : fread(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:61 size_t fread(FAR void *ptr, size_t size, size_t n_items, FAR FILE *stream) { - c00551de: 7179 addi sp,sp,-48 - c00551e0: ec26 sd s1,24(sp) - c00551e2: 84aa mv s1,a0 + c00553ae: 7179 addi sp,sp,-48 + c00553b0: ec26 sd s1,24(sp) + c00553b2: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:64 size_t ret; flockfile(stream); - c00551e4: 8536 mv a0,a3 + c00553b4: 8536 mv a0,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:61 { - c00551e6: f406 sd ra,40(sp) - c00551e8: f022 sd s0,32(sp) - c00551ea: e42e sd a1,8(sp) - c00551ec: 8436 mv s0,a3 - c00551ee: e032 sd a2,0(sp) + c00553b6: f406 sd ra,40(sp) + c00553b8: f022 sd s0,32(sp) + c00553ba: e42e sd a1,8(sp) + c00553bc: 8436 mv s0,a3 + c00553be: e032 sd a2,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:64 flockfile(stream); - c00551f0: 5d4000ef jal ra,c00557c4 + c00553c0: 5d4000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:65 ret = fread_unlocked(ptr, size, n_items, stream); - c00551f4: 6602 ld a2,0(sp) - c00551f6: 65a2 ld a1,8(sp) - c00551f8: 86a2 mv a3,s0 - c00551fa: 8526 mv a0,s1 - c00551fc: fbbff0ef jal ra,c00551b6 - c0055200: 84aa mv s1,a0 + c00553c4: 6602 ld a2,0(sp) + c00553c6: 65a2 ld a1,8(sp) + c00553c8: 86a2 mv a3,s0 + c00553ca: 8526 mv a0,s1 + c00553cc: fbbff0ef jal ra,c0055386 + c00553d0: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:66 funlockfile(stream); - c0055202: 8522 mv a0,s0 - c0055204: 5cc000ef jal ra,c00557d0 + c00553d2: 8522 mv a0,s0 + c00553d4: 5cc000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fread.c:69 return ret; } - c0055208: 70a2 ld ra,40(sp) - c005520a: 7402 ld s0,32(sp) - c005520c: 8526 mv a0,s1 - c005520e: 64e2 ld s1,24(sp) - c0055210: 6145 addi sp,sp,48 - c0055212: 8082 ret + c00553d8: 70a2 ld ra,40(sp) + c00553da: 7402 ld s0,32(sp) + c00553dc: 8526 mv a0,s1 + c00553de: 64e2 ld s1,24(sp) + c00553e0: 6145 addi sp,sp,48 + c00553e2: 8082 ret -00000000c0055214 : +00000000c00553e4 : lib_fread_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:60 #endif @@ -237883,26 +238081,26 @@ lib_fread_unlocked(): /* Make sure that reading from this stream is allowed */ if (!stream) - c0055214: c269 beqz a2,c00552d6 + c00553e4: c269 beqz a2,c00554a6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:48 { - c0055216: 7179 addi sp,sp,-48 - c0055218: f022 sd s0,32(sp) - c005521a: f406 sd ra,40(sp) - c005521c: ec26 sd s1,24(sp) - c005521e: e84a sd s2,16(sp) - c0055220: e44e sd s3,8(sp) - c0055222: e052 sd s4,0(sp) + c00553e6: 7179 addi sp,sp,-48 + c00553e8: f022 sd s0,32(sp) + c00553ea: f406 sd ra,40(sp) + c00553ec: ec26 sd s1,24(sp) + c00553ee: e84a sd s2,16(sp) + c00553f0: e44e sd s3,8(sp) + c00553f2: e052 sd s4,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:65 { _NX_SETERRNO(EBADF); return ERROR; } else if ((stream->fs_oflags & O_RDOK) == 0) - c0055224: 05865783 lhu a5,88(a2) # 8058 <__clzdi2-0xbfff7fa8> - c0055228: 8432 mv s0,a2 - c005522a: 8b85 andi a5,a5,1 - c005522c: e385 bnez a5,c005524c + c00553f4: 05865783 lhu a5,88(a2) # 8058 <__clzdi2-0xbfff7fa8> + c00553f8: 8432 mv s0,a2 + c00553fa: 8b85 andi a5,a5,1 + c00553fc: e385 bnez a5,c005541c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:356 } @@ -237910,130 +238108,130 @@ lib_fread_unlocked(): errout_with_errno: stream->fs_flags |= __FS_FLAG_ERROR; - c005522e: 05a44783 lbu a5,90(s0) + c00553fe: 05a44783 lbu a5,90(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:357 return ERROR; - c0055232: 557d li a0,-1 + c0055402: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:356 stream->fs_flags |= __FS_FLAG_ERROR; - c0055234: 0027e793 ori a5,a5,2 - c0055238: 04f40d23 sb a5,90(s0) + c0055404: 0027e793 ori a5,a5,2 + c0055408: 04f40d23 sb a5,90(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:358 } - c005523c: 70a2 ld ra,40(sp) - c005523e: 7402 ld s0,32(sp) - c0055240: 64e2 ld s1,24(sp) - c0055242: 6942 ld s2,16(sp) - c0055244: 69a2 ld s3,8(sp) - c0055246: 6a02 ld s4,0(sp) - c0055248: 6145 addi sp,sp,48 - c005524a: 8082 ret + c005540c: 70a2 ld ra,40(sp) + c005540e: 7402 ld s0,32(sp) + c0055410: 64e2 ld s1,24(sp) + c0055412: 6942 ld s2,16(sp) + c0055414: 69a2 ld s3,8(sp) + c0055416: 6a02 ld s4,0(sp) + c0055418: 6145 addi sp,sp,48 + c005541a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:73 fd = (int)(intptr_t)stream->fs_cookie; - c005524c: 05063a03 ld s4,80(a2) - c0055250: 89aa mv s3,a0 - c0055252: 892e mv s2,a1 + c005541c: 05063a03 ld s4,80(a2) + c0055420: 89aa mv s3,a0 + c0055422: 892e mv s2,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:77 while (stream->fs_nungotten > 0 && remaining > 0) - c0055254: 84ae mv s1,a1 - c0055256: 05b44783 lbu a5,91(s0) - c005525a: e3a9 bnez a5,c005529c + c0055424: 84ae mv s1,a1 + c0055426: 05b44783 lbu a5,91(s0) + c005542a: e3a9 bnez a5,c005546c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:73 fd = (int)(intptr_t)stream->fs_cookie; - c005525c: 2a01 sext.w s4,s4 + c005542c: 2a01 sext.w s4,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:281 while (remaining > 0) - c005525e: c0a1 beqz s1,c005529e + c005542e: c0a1 beqz s1,c005546e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:283 if (stream->fs_iofunc.read != NULL) - c0055260: 781c ld a5,48(s0) + c0055430: 781c ld a5,48(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:285 bytes_read = stream->fs_iofunc.read(stream->fs_cookie, - c0055262: 8626 mv a2,s1 - c0055264: 85ce mv a1,s3 + c0055432: 8626 mv a2,s1 + c0055434: 85ce mv a1,s3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:283 if (stream->fs_iofunc.read != NULL) - c0055266: c7a9 beqz a5,c00552b0 + c0055436: c7a9 beqz a5,c0055480 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:285 bytes_read = stream->fs_iofunc.read(stream->fs_cookie, - c0055268: 6828 ld a0,80(s0) - c005526a: 9782 jalr a5 + c0055438: 6828 ld a0,80(s0) + c005543a: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:294 if (bytes_read < 0) - c005526c: 04055663 bgez a0,c00552b8 + c005543c: 04055663 bgez a0,c0055488 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:296 if (count - remaining > 0) - c0055270: fb248fe3 beq s1,s2,c005522e + c0055440: fb248fe3 beq s1,s2,c00553fe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:347 stream->fs_flags |= __FS_FLAG_EOF; - c0055274: 05a44783 lbu a5,90(s0) - c0055278: 0017e793 ori a5,a5,1 - c005527c: 04f40d23 sb a5,90(s0) - c0055280: a02d j c00552aa + c0055444: 05a44783 lbu a5,90(s0) + c0055448: 0017e793 ori a5,a5,1 + c005544c: 04f40d23 sb a5,90(s0) + c0055450: a02d j c005547a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:81 stream->fs_nungotten--; - c0055282: 37fd addiw a5,a5,-1 - c0055284: 0ff7f793 zext.b a5,a5 - c0055288: 04f40da3 sb a5,91(s0) + c0055452: 37fd addiw a5,a5,-1 + c0055454: 0ff7f793 zext.b a5,a5 + c0055458: 04f40da3 sb a5,91(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:85 *dest++ = stream->fs_ungotten[stream->fs_nungotten]; - c005528c: 97a2 add a5,a5,s0 - c005528e: 05c7c783 lbu a5,92(a5) - c0055292: 0985 addi s3,s3,1 + c005545c: 97a2 add a5,a5,s0 + c005545e: 05c7c783 lbu a5,92(a5) + c0055462: 0985 addi s3,s3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:89 remaining--; - c0055294: 14fd addi s1,s1,-1 + c0055464: 14fd addi s1,s1,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:85 *dest++ = stream->fs_ungotten[stream->fs_nungotten]; - c0055296: fef98fa3 sb a5,-1(s3) + c0055466: fef98fa3 sb a5,-1(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:89 remaining--; - c005529a: bf75 j c0055256 + c005546a: bf75 j c0055426 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:77 (discriminator 1) while (stream->fs_nungotten > 0 && remaining > 0) - c005529c: f0fd bnez s1,c0055282 + c005546c: f0fd bnez s1,c0055452 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:343 stream->fs_flags &= ~__FS_FLAG_EOF; - c005529e: 05a44783 lbu a5,90(s0) - c00552a2: 4481 li s1,0 - c00552a4: 9bf9 andi a5,a5,-2 - c00552a6: 04f40d23 sb a5,90(s0) + c005546e: 05a44783 lbu a5,90(s0) + c0055472: 4481 li s1,0 + c0055474: 9bf9 andi a5,a5,-2 + c0055476: 04f40d23 sb a5,90(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:350 return count - remaining; - c00552aa: 40990533 sub a0,s2,s1 - c00552ae: b779 j c005523c + c005547a: 40990533 sub a0,s2,s1 + c005547e: b779 j c005540c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:291 bytes_read = _NX_READ(fd, dest, remaining); - c00552b0: 8552 mv a0,s4 - c00552b2: 286020ef jal ra,c0057538 - c00552b6: bf5d j c005526c + c0055480: 8552 mv a0,s4 + c0055482: 286020ef jal ra,c0057708 + c0055486: bf5d j c005543c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:310 else if (bytes_read == 0) - c00552b8: dd55 beqz a0,c0055274 + c0055488: dd55 beqz a0,c0055444 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:321 DEBUGASSERT(bytes_read <= remaining); - c00552ba: 00a4fb63 bgeu s1,a0,c00552d0 + c005548a: 00a4fb63 bgeu s1,a0,c00554a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:321 (discriminator 1) - c00552be: 4601 li a2,0 - c00552c0: 14100593 li a1,321 - c00552c4: 0001e517 auipc a0,0x1e - c00552c8: ab450513 addi a0,a0,-1356 # c0072d78 - c00552cc: f4cfe0ef jal ra,c0053a18 <__assert> + c005548e: 4601 li a2,0 + c0055490: 14100593 li a1,321 + c0055494: 0001e517 auipc a0,0x1e + c0055498: b4450513 addi a0,a0,-1212 # c0072fd8 + c005549c: f4cfe0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:322 (discriminator 2) dest += bytes_read; - c00552d0: 99aa add s3,s3,a0 + c00554a0: 99aa add s3,s3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:323 (discriminator 2) remaining -= bytes_read; - c00552d2: 8c89 sub s1,s1,a0 - c00552d4: b769 j c005525e + c00554a2: 8c89 sub s1,s1,a0 + c00554a4: b769 j c005542e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:63 return ERROR; - c00552d6: 557d li a0,-1 + c00554a6: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfread_unlocked.c:358 } - c00552d8: 8082 ret + c00554a8: 8082 ret -00000000c00552da : +00000000c00554aa : fseek(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseek.c:51 * @@ -238042,10 +238240,10 @@ fseek(): int fseek(FAR FILE *stream, long int offset, int whence) { return fseeko(stream, offset, whence); - c00552da: 2581 sext.w a1,a1 - c00552dc: a009 j c00552de + c00554aa: 2581 sext.w a1,a1 + c00554ac: a009 j c00554ae -00000000c00552de : +00000000c00554ae : fseeko(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:58 * Zero on success; -1 on failure with errno set appropriately. @@ -238054,24 +238252,24 @@ fseeko(): int fseeko(FAR FILE *stream, off_t offset, int whence) { - c00552de: 1101 addi sp,sp,-32 - c00552e0: ec06 sd ra,24(sp) - c00552e2: c62e sw a1,12(sp) + c00554ae: 1101 addi sp,sp,-32 + c00554b0: ec06 sd ra,24(sp) + c00554b2: c62e sw a1,12(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:62 #ifdef CONFIG_DEBUG_FEATURES /* Verify that we were provided with a stream */ if (!stream) - c00552e4: e909 bnez a0,c00552f6 + c00554b4: e909 bnez a0,c00554c6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:64 { set_errno(EBADF); - c00552e6: feefe0ef jal ra,c0053ad4 <__errno> - c00552ea: 47a5 li a5,9 - c00552ec: c11c sw a5,0(a0) + c00554b6: feefe0ef jal ra,c0053ca4 <__errno> + c00554ba: 47a5 li a5,9 + c00554bc: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:65 return ERROR; - c00552ee: 557d li a0,-1 + c00554be: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:100 else { @@ -238079,39 +238277,39 @@ int fseeko(FAR FILE *stream, off_t offset, int whence) whence) == (off_t)-1 ? ERROR : OK; } } - c00552f0: 60e2 ld ra,24(sp) - c00552f2: 6105 addi sp,sp,32 - c00552f4: 8082 ret + c00554c0: 60e2 ld ra,24(sp) + c00554c2: 6105 addi sp,sp,32 + c00554c4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:90 if (stream->fs_iofunc.seek != NULL) - c00552f6: 613c ld a5,64(a0) + c00554c6: 613c ld a5,64(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:85 stream->fs_nungotten = 0; - c00552f8: 04050da3 sb zero,91(a0) + c00554c8: 04050da3 sb zero,91(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:92 return stream->fs_iofunc.seek(stream->fs_cookie, &offset, - c00552fc: 6928 ld a0,80(a0) + c00554cc: 6928 ld a0,80(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:90 if (stream->fs_iofunc.seek != NULL) - c00552fe: cb89 beqz a5,c0055310 + c00554ce: cb89 beqz a5,c00554e0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:92 return stream->fs_iofunc.seek(stream->fs_cookie, &offset, - c0055300: 006c addi a1,sp,12 - c0055302: 9782 jalr a5 + c00554d0: 006c addi a1,sp,12 + c00554d2: 9782 jalr a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:98 whence) == (off_t)-1 ? ERROR : OK; - c0055304: 0505 addi a0,a0,1 - c0055306: 00153513 seqz a0,a0 - c005530a: 40a00533 neg a0,a0 - c005530e: b7cd j c00552f0 + c00554d4: 0505 addi a0,a0,1 + c00554d6: 00153513 seqz a0,a0 + c00554da: 40a00533 neg a0,a0 + c00554de: b7cd j c00554c0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fseeko.c:97 return lseek((int)(intptr_t)stream->fs_cookie, offset, - c0055310: 45b2 lw a1,12(sp) - c0055312: 2501 sext.w a0,a0 - c0055314: 0bc020ef jal ra,c00573d0 - c0055318: b7f5 j c0055304 + c00554e0: 45b2 lw a1,12(sp) + c00554e2: 2501 sext.w a0,a0 + c00554e4: 0bc020ef jal ra,c00575a0 + c00554e8: b7f5 j c00554d4 -00000000c005531a : +00000000c00554ea : ftell(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftell.c:44 * Zero on success; -1 on failure with errno set appropriately. @@ -238120,18 +238318,18 @@ ftell(): long ftell(FAR FILE *stream) { - c005531a: 1141 addi sp,sp,-16 - c005531c: e406 sd ra,8(sp) + c00554ea: 1141 addi sp,sp,-16 + c00554ec: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftell.c:45 return ftello(stream); - c005531e: 00a000ef jal ra,c0055328 + c00554ee: 00a000ef jal ra,c00554f8 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftell.c:46 } - c0055322: 60a2 ld ra,8(sp) - c0055324: 0141 addi sp,sp,16 - c0055326: 8082 ret + c00554f2: 60a2 ld ra,8(sp) + c00554f4: 0141 addi sp,sp,16 + c00554f6: 8082 ret -00000000c0055328 : +00000000c00554f8 : ftello(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:98 * Zero on success; -1 on failure with errno set appropriately. @@ -238140,27 +238338,27 @@ ftello(): off_t ftello(FAR FILE *stream) { - c0055328: 1101 addi sp,sp,-32 - c005532a: ec06 sd ra,24(sp) + c00554f8: 1101 addi sp,sp,-32 + c00554fa: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:100 off_t position; off_t offset = 0; - c005532c: c602 sw zero,12(sp) + c00554fc: c602 sw zero,12(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:104 /* Verify that we were provided with a stream */ if (!stream) - c005532e: e909 bnez a0,c0055340 + c00554fe: e909 bnez a0,c0055510 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:106 { set_errno(EBADF); - c0055330: fa4fe0ef jal ra,c0053ad4 <__errno> - c0055334: 47a5 li a5,9 - c0055336: c11c sw a5,0(a0) + c0055500: fa4fe0ef jal ra,c0053ca4 <__errno> + c0055504: 47a5 li a5,9 + c0055506: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:107 return ERROR; - c0055338: 557d li a0,-1 + c0055508: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:132 } else @@ -238168,34 +238366,34 @@ off_t ftello(FAR FILE *stream) return ERROR; } } - c005533a: 60e2 ld ra,24(sp) - c005533c: 6105 addi sp,sp,32 - c005533e: 8082 ret + c005550a: 60e2 ld ra,24(sp) + c005550c: 6105 addi sp,sp,32 + c005550e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:114 if (stream->fs_iofunc.seek != NULL) - c0055340: 613c ld a5,64(a0) + c0055510: 613c ld a5,64(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:116 position = stream->fs_iofunc.seek(stream->fs_cookie, &offset, - c0055342: 4605 li a2,1 - c0055344: 6928 ld a0,80(a0) + c0055512: 4605 li a2,1 + c0055514: 6928 ld a0,80(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:114 if (stream->fs_iofunc.seek != NULL) - c0055346: c781 beqz a5,c005534e + c0055516: c781 beqz a5,c005551e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:116 position = stream->fs_iofunc.seek(stream->fs_cookie, &offset, - c0055348: 006c addi a1,sp,12 - c005534a: 9782 jalr a5 - c005534c: b7fd j c005533a + c0055518: 006c addi a1,sp,12 + c005551a: 9782 jalr a5 + c005551c: b7fd j c005550a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:121 position = lseek((int)(intptr_t)stream->fs_cookie, 0, SEEK_CUR); - c005534e: 4581 li a1,0 - c0055350: 2501 sext.w a0,a0 - c0055352: 07e020ef jal ra,c00573d0 + c005551e: 4581 li a1,0 + c0055520: 2501 sext.w a0,a0 + c0055522: 07e020ef jal ra,c00575a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ftello.c:124 if (position != (off_t)-1) - c0055356: b7d5 j c005533a + c0055526: b7d5 j c005550a -00000000c0055358 : +00000000c0055528 : fgetc_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:37 /**************************************************************************** @@ -238204,28 +238402,28 @@ fgetc_unlocked(): int fgetc_unlocked(FAR FILE *stream) { - c0055358: 1101 addi sp,sp,-32 - c005535a: 862a mv a2,a0 + c0055528: 1101 addi sp,sp,-32 + c005552a: 862a mv a2,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:41 unsigned char ch; ssize_t ret; ret = lib_fread_unlocked(&ch, 1, stream); - c005535c: 4585 li a1,1 - c005535e: 00f10513 addi a0,sp,15 + c005552c: 4585 li a1,1 + c005552e: 00f10513 addi a0,sp,15 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:37 { - c0055362: ec06 sd ra,24(sp) + c0055532: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:41 ret = lib_fread_unlocked(&ch, 1, stream); - c0055364: eb1ff0ef jal ra,c0055214 + c0055534: eb1ff0ef jal ra,c00553e4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:42 if (ret > 0) - c0055368: 00a05763 blez a0,c0055376 + c0055538: 00a05763 blez a0,c0055546 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:44 { return ch; - c005536c: 00f14503 lbu a0,15(sp) + c005553c: 00f14503 lbu a0,15(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:50 } else @@ -238233,51 +238431,51 @@ int fgetc_unlocked(FAR FILE *stream) return EOF; } } - c0055370: 60e2 ld ra,24(sp) - c0055372: 6105 addi sp,sp,32 - c0055374: 8082 ret + c0055540: 60e2 ld ra,24(sp) + c0055542: 6105 addi sp,sp,32 + c0055544: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:48 return EOF; - c0055376: 557d li a0,-1 - c0055378: bfe5 j c0055370 + c0055546: 557d li a0,-1 + c0055548: bfe5 j c0055540 -00000000c005537a : +00000000c005554a : fgetc(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:53 int fgetc(FAR FILE *stream) { - c005537a: 1101 addi sp,sp,-32 - c005537c: ec06 sd ra,24(sp) - c005537e: e822 sd s0,16(sp) - c0055380: e426 sd s1,8(sp) - c0055382: 842a mv s0,a0 + c005554a: 1101 addi sp,sp,-32 + c005554c: ec06 sd ra,24(sp) + c005554e: e822 sd s0,16(sp) + c0055550: e426 sd s1,8(sp) + c0055552: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:56 int ret; flockfile(stream); - c0055384: 440000ef jal ra,c00557c4 + c0055554: 440000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:57 ret = fgetc_unlocked(stream); - c0055388: 8522 mv a0,s0 - c005538a: fcfff0ef jal ra,c0055358 - c005538e: 84aa mv s1,a0 + c0055558: 8522 mv a0,s0 + c005555a: fcfff0ef jal ra,c0055528 + c005555e: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:58 funlockfile(stream); - c0055390: 8522 mv a0,s0 - c0055392: 43e000ef jal ra,c00557d0 + c0055560: 8522 mv a0,s0 + c0055562: 43e000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fgetc.c:61 return ret; } - c0055396: 60e2 ld ra,24(sp) - c0055398: 6442 ld s0,16(sp) - c005539a: 8526 mv a0,s1 - c005539c: 64a2 ld s1,8(sp) - c005539e: 6105 addi sp,sp,32 - c00553a0: 8082 ret + c0055566: 60e2 ld ra,24(sp) + c0055568: 6442 ld s0,16(sp) + c005556a: 8526 mv a0,s1 + c005556c: 64a2 ld s1,8(sp) + c005556e: 6105 addi sp,sp,32 + c0055570: 8082 ret -00000000c00553a2 : +00000000c0055572 : fwrite_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:42 * Name: fwrite @@ -238286,10 +238484,10 @@ fwrite_unlocked(): size_t fwrite_unlocked(FAR const void *ptr, size_t size, size_t n_items, FAR FILE *stream) { - c00553a2: 1141 addi sp,sp,-16 - c00553a4: e022 sd s0,0(sp) - c00553a6: 842e mv s0,a1 - c00553a8: 85b2 mv a1,a2 + c0055572: 1141 addi sp,sp,-16 + c0055574: e022 sd s0,0(sp) + c0055576: 842e mv s0,a1 + c0055578: 85b2 mv a1,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:49 ssize_t bytes_written; size_t items_written = 0; @@ -238297,88 +238495,88 @@ size_t fwrite_unlocked(FAR const void *ptr, size_t size, size_t n_items, /* Write the data into the stream buffer */ bytes_written = lib_fwrite_unlocked(ptr, full_size, stream); - c00553aa: 028585b3 mul a1,a1,s0 - c00553ae: 8636 mv a2,a3 + c005557a: 028585b3 mul a1,a1,s0 + c005557e: 8636 mv a2,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:42 { - c00553b0: e406 sd ra,8(sp) + c0055580: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:49 bytes_written = lib_fwrite_unlocked(ptr, full_size, stream); - c00553b2: 04e000ef jal ra,c0055400 + c0055582: 04e000ef jal ra,c00555d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:50 if (bytes_written > 0) - c00553b6: 00a05863 blez a0,c00553c6 + c0055586: 00a05863 blez a0,c0055596 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:54 { /* Return the number of full items written */ items_written = bytes_written / size; - c00553ba: 02855533 divu a0,a0,s0 + c005558a: 02855533 divu a0,a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:58 } return items_written; } - c00553be: 60a2 ld ra,8(sp) - c00553c0: 6402 ld s0,0(sp) - c00553c2: 0141 addi sp,sp,16 - c00553c4: 8082 ret + c005558e: 60a2 ld ra,8(sp) + c0055590: 6402 ld s0,0(sp) + c0055592: 0141 addi sp,sp,16 + c0055594: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:45 size_t items_written = 0; - c00553c6: 4501 li a0,0 + c0055596: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:57 return items_written; - c00553c8: bfdd j c00553be + c0055598: bfdd j c005558e -00000000c00553ca : +00000000c005559a : fwrite(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:62 size_t fwrite(FAR const void *ptr, size_t size, size_t n_items, FAR FILE *stream) { - c00553ca: 7179 addi sp,sp,-48 - c00553cc: ec26 sd s1,24(sp) - c00553ce: 84aa mv s1,a0 + c005559a: 7179 addi sp,sp,-48 + c005559c: ec26 sd s1,24(sp) + c005559e: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:65 size_t ret; flockfile(stream); - c00553d0: 8536 mv a0,a3 + c00555a0: 8536 mv a0,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:62 { - c00553d2: f406 sd ra,40(sp) - c00553d4: f022 sd s0,32(sp) - c00553d6: e42e sd a1,8(sp) - c00553d8: 8436 mv s0,a3 - c00553da: e032 sd a2,0(sp) + c00555a2: f406 sd ra,40(sp) + c00555a4: f022 sd s0,32(sp) + c00555a6: e42e sd a1,8(sp) + c00555a8: 8436 mv s0,a3 + c00555aa: e032 sd a2,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:65 flockfile(stream); - c00553dc: 3e8000ef jal ra,c00557c4 + c00555ac: 3e8000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:66 ret = fwrite_unlocked(ptr, size, n_items, stream); - c00553e0: 6602 ld a2,0(sp) - c00553e2: 65a2 ld a1,8(sp) - c00553e4: 86a2 mv a3,s0 - c00553e6: 8526 mv a0,s1 - c00553e8: fbbff0ef jal ra,c00553a2 - c00553ec: 84aa mv s1,a0 + c00555b0: 6602 ld a2,0(sp) + c00555b2: 65a2 ld a1,8(sp) + c00555b4: 86a2 mv a3,s0 + c00555b6: 8526 mv a0,s1 + c00555b8: fbbff0ef jal ra,c0055572 + c00555bc: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:67 funlockfile(stream); - c00553ee: 8522 mv a0,s0 - c00553f0: 3e0000ef jal ra,c00557d0 + c00555be: 8522 mv a0,s0 + c00555c0: 3e0000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fwrite.c:70 return ret; } - c00553f4: 70a2 ld ra,40(sp) - c00553f6: 7402 ld s0,32(sp) - c00553f8: 8526 mv a0,s1 - c00553fa: 64e2 ld s1,24(sp) - c00553fc: 6145 addi sp,sp,48 - c00553fe: 8082 ret + c00555c4: 70a2 ld ra,40(sp) + c00555c6: 7402 ld s0,32(sp) + c00555c8: 8526 mv a0,s1 + c00555ca: 64e2 ld s1,24(sp) + c00555cc: 6145 addi sp,sp,48 + c00555ce: 8082 ret -00000000c0055400 : +00000000c00555d0 : lib_fwrite_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:181 } @@ -238387,29 +238585,29 @@ lib_fwrite_unlocked(): } #else { - c0055400: 1141 addi sp,sp,-16 - c0055402: e022 sd s0,0(sp) - c0055404: e406 sd ra,8(sp) + c00555d0: 1141 addi sp,sp,-16 + c00555d2: e022 sd s0,0(sp) + c00555d4: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:183 ssize_t ret; if (stream->fs_iofunc.write != NULL) - c0055406: 7e18 ld a4,56(a2) + c00555d6: 7e18 ld a4,56(a2) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:181 { - c0055408: 87aa mv a5,a0 - c005540a: 8432 mv s0,a2 + c00555d8: 87aa mv a5,a0 + c00555da: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:185 { ret = stream->fs_iofunc.write(stream->fs_cookie, ptr, count); - c005540c: 6a28 ld a0,80(a2) - c005540e: 862e mv a2,a1 - c0055410: 85be mv a1,a5 + c00555dc: 6a28 ld a0,80(a2) + c00555de: 862e mv a2,a1 + c00555e0: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:183 if (stream->fs_iofunc.write != NULL) - c0055412: cf11 beqz a4,c005542e + c00555e2: cf11 beqz a4,c00555fe /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:185 ret = stream->fs_iofunc.write(stream->fs_cookie, ptr, count); - c0055414: 9702 jalr a4 + c00555e4: 9702 jalr a4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:192 else { @@ -238417,76 +238615,76 @@ lib_fwrite_unlocked(): } if (ret < 0) - c0055416: 00055863 bgez a0,c0055426 + c00555e6: 00055863 bgez a0,c00555f6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:194 { stream->fs_flags |= __FS_FLAG_ERROR; - c005541a: 05a44783 lbu a5,90(s0) - c005541e: 0027e793 ori a5,a5,2 - c0055422: 04f40d23 sb a5,90(s0) + c00555ea: 05a44783 lbu a5,90(s0) + c00555ee: 0027e793 ori a5,a5,2 + c00555f2: 04f40d23 sb a5,90(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:199 _NX_SETERRNO(ret); } return ret; } - c0055426: 60a2 ld ra,8(sp) - c0055428: 6402 ld s0,0(sp) - c005542a: 0141 addi sp,sp,16 - c005542c: 8082 ret + c00555f6: 60a2 ld ra,8(sp) + c00555f8: 6402 ld s0,0(sp) + c00555fa: 0141 addi sp,sp,16 + c00555fc: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:189 ret = _NX_WRITE((int)(intptr_t)stream->fs_cookie, ptr, count); - c005542e: 2501 sext.w a0,a0 - c0055430: 218020ef jal ra,c0057648 - c0055434: b7cd j c0055416 + c00555fe: 2501 sext.w a0,a0 + c0055600: 218020ef jal ra,c0057818 + c0055604: b7cd j c00555e6 -00000000c0055436 : +00000000c0055606 : lib_fwrite(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:203 #endif /* CONFIG_STDIO_DISABLE_BUFFERING */ ssize_t lib_fwrite(FAR const void *ptr, size_t count, FAR FILE *stream) { - c0055436: 7179 addi sp,sp,-48 - c0055438: ec26 sd s1,24(sp) - c005543a: 84aa mv s1,a0 + c0055606: 7179 addi sp,sp,-48 + c0055608: ec26 sd s1,24(sp) + c005560a: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:206 ssize_t ret; flockfile(stream); - c005543c: 8532 mv a0,a2 + c005560c: 8532 mv a0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:203 { - c005543e: f406 sd ra,40(sp) - c0055440: f022 sd s0,32(sp) - c0055442: e42e sd a1,8(sp) - c0055444: 8432 mv s0,a2 + c005560e: f406 sd ra,40(sp) + c0055610: f022 sd s0,32(sp) + c0055612: e42e sd a1,8(sp) + c0055614: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:206 flockfile(stream); - c0055446: 37e000ef jal ra,c00557c4 + c0055616: 37e000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:207 ret = lib_fwrite_unlocked(ptr, count, stream); - c005544a: 65a2 ld a1,8(sp) - c005544c: 8622 mv a2,s0 - c005544e: 8526 mv a0,s1 - c0055450: fb1ff0ef jal ra,c0055400 - c0055454: 84aa mv s1,a0 + c005561a: 65a2 ld a1,8(sp) + c005561c: 8622 mv a2,s0 + c005561e: 8526 mv a0,s1 + c0055620: fb1ff0ef jal ra,c00555d0 + c0055624: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:208 funlockfile(stream); - c0055456: 8522 mv a0,s0 - c0055458: 378000ef jal ra,c00557d0 + c0055626: 8522 mv a0,s0 + c0055628: 378000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfwrite.c:211 return ret; } - c005545c: 70a2 ld ra,40(sp) - c005545e: 7402 ld s0,32(sp) - c0055460: 8526 mv a0,s1 - c0055462: 64e2 ld s1,24(sp) - c0055464: 6145 addi sp,sp,48 - c0055466: 8082 ret + c005562c: 70a2 ld ra,40(sp) + c005562e: 7402 ld s0,32(sp) + c0055630: 8526 mv a0,s1 + c0055632: 64e2 ld s1,24(sp) + c0055634: 6145 addi sp,sp,48 + c0055636: 8082 ret -00000000c0055468 : +00000000c0055638 : fflush_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:56 * OK on success EOF on failure (with errno set appropriately) @@ -238495,24 +238693,24 @@ fflush_unlocked(): int fflush_unlocked(FAR FILE *stream) { - c0055468: 1141 addi sp,sp,-16 - c005546a: e406 sd ra,8(sp) - c005546c: e022 sd s0,0(sp) + c0055638: 1141 addi sp,sp,-16 + c005563a: e406 sd ra,8(sp) + c005563c: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:61 int ret; /* Is the stream argument NULL? */ if (stream == NULL) - c005546e: e11d bnez a0,c0055494 + c005563e: e11d bnez a0,c0055664 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:65 { /* Yes... then this is a request to flush all streams */ ret = lib_flushall_unlocked(lib_get_streams()); - c0055470: 366000ef jal ra,c00557d6 - c0055474: 060000ef jal ra,c00554d4 - c0055478: 842a mv s0,a0 + c0055640: 366000ef jal ra,c00559a6 + c0055644: 060000ef jal ra,c00556a4 + c0055648: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:87 /* And return EOF on failure. */ @@ -238520,54 +238718,54 @@ int fflush_unlocked(FAR FILE *stream) } return OK; - c005547a: 4501 li a0,0 + c005564a: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:74 if (ret < 0) - c005547c: 00045863 bgez s0,c005548c + c005564c: 00045863 bgez s0,c005565c /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:80 set_errno(-ret); - c0055480: e54fe0ef jal ra,c0053ad4 <__errno> - c0055484: 4080043b negw s0,s0 - c0055488: c100 sw s0,0(a0) + c0055650: e54fe0ef jal ra,c0053ca4 <__errno> + c0055654: 4080043b negw s0,s0 + c0055658: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:84 return EOF; - c005548a: 557d li a0,-1 + c005565a: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:88 } - c005548c: 60a2 ld ra,8(sp) - c005548e: 6402 ld s0,0(sp) - c0055490: 0141 addi sp,sp,16 - c0055492: 8082 ret + c005565c: 60a2 ld ra,8(sp) + c005565e: 6402 ld s0,0(sp) + c0055660: 0141 addi sp,sp,16 + c0055662: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:69 ret = lib_fflush_unlocked(stream); - c0055494: 0f6000ef jal ra,c005558a - c0055498: 0005041b sext.w s0,a0 - c005549c: bff9 j c005547a + c0055664: 0f6000ef jal ra,c005575a + c0055668: 0005041b sext.w s0,a0 + c005566c: bff9 j c005564a -00000000c005549e : +00000000c005566e : fflush(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:91 int fflush(FAR FILE *stream) { - c005549e: 1141 addi sp,sp,-16 - c00554a0: e406 sd ra,8(sp) - c00554a2: e022 sd s0,0(sp) + c005566e: 1141 addi sp,sp,-16 + c0055670: e406 sd ra,8(sp) + c0055672: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:96 int ret; /* Is the stream argument NULL? */ if (stream == NULL) - c00554a4: e11d bnez a0,c00554ca + c0055674: e11d bnez a0,c005569a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:100 { /* Yes... then this is a request to flush all streams */ ret = lib_flushall(lib_get_streams()); - c00554a6: 330000ef jal ra,c00557d6 - c00554aa: 07e000ef jal ra,c0055528 - c00554ae: 842a mv s0,a0 + c0055676: 330000ef jal ra,c00559a6 + c005567a: 07e000ef jal ra,c00556f8 + c005567e: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:122 /* And return EOF on failure. */ @@ -238575,31 +238773,31 @@ int fflush(FAR FILE *stream) } return OK; - c00554b0: 4501 li a0,0 + c0055680: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:109 if (ret < 0) - c00554b2: 00045863 bgez s0,c00554c2 + c0055682: 00045863 bgez s0,c0055692 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:115 set_errno(-ret); - c00554b6: e1efe0ef jal ra,c0053ad4 <__errno> - c00554ba: 4080043b negw s0,s0 - c00554be: c100 sw s0,0(a0) + c0055686: e1efe0ef jal ra,c0053ca4 <__errno> + c005568a: 4080043b negw s0,s0 + c005568e: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:119 return EOF; - c00554c0: 557d li a0,-1 + c0055690: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:123 } - c00554c2: 60a2 ld ra,8(sp) - c00554c4: 6402 ld s0,0(sp) - c00554c6: 0141 addi sp,sp,16 - c00554c8: 8082 ret + c0055692: 60a2 ld ra,8(sp) + c0055694: 6402 ld s0,0(sp) + c0055696: 0141 addi sp,sp,16 + c0055698: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fflush.c:104 ret = lib_fflush(stream); - c00554ca: 0c4000ef jal ra,c005558e - c00554ce: 0005041b sext.w s0,a0 - c00554d2: bff9 j c00554b0 + c005569a: 0c4000ef jal ra,c005575e + c005569e: 0005041b sext.w s0,a0 + c00556a2: bff9 j c0055680 -00000000c00554d4 : +00000000c00556a4 : lib_flushall_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:49 * when a NULL stream argument is provided. @@ -238608,21 +238806,21 @@ lib_flushall_unlocked(): int lib_flushall_unlocked(FAR struct streamlist *list) { - c00554d4: 1101 addi sp,sp,-32 - c00554d6: e426 sd s1,8(sp) - c00554d8: ec06 sd ra,24(sp) - c00554da: e822 sd s0,16(sp) + c00556a4: 1101 addi sp,sp,-32 + c00556a6: e426 sd s1,8(sp) + c00556a8: ec06 sd ra,24(sp) + c00556aa: e822 sd s0,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:50 int lasterrno = OK; - c00554dc: 4481 li s1,0 + c00556ac: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:55 int ret; /* Make sure that there are streams associated with this thread */ if (list != NULL) - c00554de: c115 beqz a0,c0055502 - c00554e0: 842a mv s0,a0 + c00556ae: c115 beqz a0,c00556d2 + c00556b0: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:64 /* Process each stream in the thread's stream list */ @@ -238630,23 +238828,23 @@ int lib_flushall_unlocked(FAR struct streamlist *list) for (i = 0; i < 3; i++) { lib_fflush_unlocked(&list->sl_std[i]); - c00554e2: 02050513 addi a0,a0,32 - c00554e6: 0a4000ef jal ra,c005558a - c00554ea: 08040513 addi a0,s0,128 - c00554ee: 09c000ef jal ra,c005558a - c00554f2: 0e040513 addi a0,s0,224 - c00554f6: 094000ef jal ra,c005558a + c00556b2: 02050513 addi a0,a0,32 + c00556b6: 0a4000ef jal ra,c005575a + c00556ba: 08040513 addi a0,s0,128 + c00556be: 09c000ef jal ra,c005575a + c00556c2: 0e040513 addi a0,s0,224 + c00556c6: 094000ef jal ra,c005575a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:67 } for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c00554fa: 14043403 ld s0,320(s0) + c00556ca: 14043403 ld s0,320(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:50 int lasterrno = OK; - c00554fe: 4481 li s1,0 + c00556ce: 4481 li s1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:67 (discriminator 1) for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c0055500: e419 bnez s0,c005550e + c00556d0: e419 bnez s0,c00556de /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:94 } @@ -238654,53 +238852,53 @@ int lib_flushall_unlocked(FAR struct streamlist *list) return lasterrno; } - c0055502: 60e2 ld ra,24(sp) - c0055504: 6442 ld s0,16(sp) - c0055506: 8526 mv a0,s1 - c0055508: 64a2 ld s1,8(sp) - c005550a: 6105 addi sp,sp,32 - c005550c: 8082 ret + c00556d2: 60e2 ld ra,24(sp) + c00556d4: 6442 ld s0,16(sp) + c00556d6: 8526 mv a0,s1 + c00556d8: 64a2 ld s1,8(sp) + c00556da: 6105 addi sp,sp,32 + c00556dc: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:73 if ((stream->fs_oflags & O_WROK) != 0) - c005550e: 05845783 lhu a5,88(s0) - c0055512: 8b89 andi a5,a5,2 - c0055514: cb81 beqz a5,c0055524 + c00556de: 05845783 lhu a5,88(s0) + c00556e2: 8b89 andi a5,a5,2 + c00556e4: cb81 beqz a5,c00556f4 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:77 ret = lib_fflush_unlocked(stream); - c0055516: 8522 mv a0,s0 - c0055518: 072000ef jal ra,c005558a - c005551c: 2501 sext.w a0,a0 + c00556e6: 8522 mv a0,s0 + c00556e8: 072000ef jal ra,c005575a + c00556ec: 2501 sext.w a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:78 if (ret < 0) - c005551e: 00055363 bgez a0,c0055524 - c0055522: 84aa mv s1,a0 + c00556ee: 00055363 bgez a0,c00556f4 + c00556f2: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:67 (discriminator 2) for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c0055524: 6000 ld s0,0(s0) - c0055526: bfe9 j c0055500 + c00556f4: 6000 ld s0,0(s0) + c00556f6: bfe9 j c00556d0 -00000000c0055528 : +00000000c00556f8 : lib_flushall(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:97 int lib_flushall(FAR struct streamlist *list) { - c0055528: 1101 addi sp,sp,-32 - c005552a: e04a sd s2,0(sp) - c005552c: ec06 sd ra,24(sp) - c005552e: e822 sd s0,16(sp) - c0055530: e426 sd s1,8(sp) + c00556f8: 1101 addi sp,sp,-32 + c00556fa: e04a sd s2,0(sp) + c00556fc: ec06 sd ra,24(sp) + c00556fe: e822 sd s0,16(sp) + c0055700: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:98 int lasterrno = OK; - c0055532: 4901 li s2,0 + c0055702: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:103 int ret; /* Make sure that there are streams associated with this thread */ if (list != NULL) - c0055534: c51d beqz a0,c0055562 - c0055536: 842a mv s0,a0 + c0055704: c51d beqz a0,c0055732 + c0055706: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:110 FAR FILE *stream; int i; @@ -238708,29 +238906,29 @@ int lib_flushall(FAR struct streamlist *list) /* Process each stream in the thread's stream list */ nxmutex_lock(&list->sl_lock); - c0055538: e38fe0ef jal ra,c0053b70 + c0055708: e38fe0ef jal ra,c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:114 for (i = 0; i < 3; i++) { lib_fflush(&list->sl_std[i]); - c005553c: 02040513 addi a0,s0,32 - c0055540: 04e000ef jal ra,c005558e - c0055544: 08040513 addi a0,s0,128 - c0055548: 046000ef jal ra,c005558e - c005554c: 0e040513 addi a0,s0,224 - c0055550: 03e000ef jal ra,c005558e + c005570c: 02040513 addi a0,s0,32 + c0055710: 04e000ef jal ra,c005575e + c0055714: 08040513 addi a0,s0,128 + c0055718: 046000ef jal ra,c005575e + c005571c: 0e040513 addi a0,s0,224 + c0055720: 03e000ef jal ra,c005575e /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:117 } for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c0055554: 14043483 ld s1,320(s0) + c0055724: 14043483 ld s1,320(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:98 int lasterrno = OK; - c0055558: 4901 li s2,0 + c0055728: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:117 (discriminator 1) for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c005555a: e899 bnez s1,c0055570 + c005572a: e899 bnez s1,c0055740 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:140 lasterrno = ret; } @@ -238738,8 +238936,8 @@ int lib_flushall(FAR struct streamlist *list) } nxmutex_unlock(&list->sl_lock); - c005555c: 8522 mv a0,s0 - c005555e: f08fe0ef jal ra,c0053c66 + c005572c: 8522 mv a0,s0 + c005572e: f08fe0ef jal ra,c0053e36 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:146 } @@ -238747,33 +238945,33 @@ int lib_flushall(FAR struct streamlist *list) return lasterrno; } - c0055562: 60e2 ld ra,24(sp) - c0055564: 6442 ld s0,16(sp) - c0055566: 64a2 ld s1,8(sp) - c0055568: 854a mv a0,s2 - c005556a: 6902 ld s2,0(sp) - c005556c: 6105 addi sp,sp,32 - c005556e: 8082 ret + c0055732: 60e2 ld ra,24(sp) + c0055734: 6442 ld s0,16(sp) + c0055736: 64a2 ld s1,8(sp) + c0055738: 854a mv a0,s2 + c005573a: 6902 ld s2,0(sp) + c005573c: 6105 addi sp,sp,32 + c005573e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:123 if ((stream->fs_oflags & O_WROK) != 0) - c0055570: 0584d783 lhu a5,88(s1) - c0055574: 8b89 andi a5,a5,2 - c0055576: cb81 beqz a5,c0055586 + c0055740: 0584d783 lhu a5,88(s1) + c0055744: 8b89 andi a5,a5,2 + c0055746: cb81 beqz a5,c0055756 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:127 ret = lib_fflush(stream); - c0055578: 8526 mv a0,s1 - c005557a: 014000ef jal ra,c005558e - c005557e: 2501 sext.w a0,a0 + c0055748: 8526 mv a0,s1 + c005574a: 014000ef jal ra,c005575e + c005574e: 2501 sext.w a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:128 if (ret < 0) - c0055580: 00055363 bgez a0,c0055586 - c0055584: 892a mv s2,a0 + c0055750: 00055363 bgez a0,c0055756 + c0055754: 892a mv s2,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libflushall.c:117 (discriminator 2) for (stream = list->sl_head; stream != NULL; stream = stream->fs_next) - c0055586: 6084 ld s1,0(s1) - c0055588: bfc9 j c005555a + c0055756: 6084 ld s1,0(s1) + c0055758: bfc9 j c005572a -00000000c005558a : +00000000c005575a : lib_fflush_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfflush.c:168 #else @@ -238782,41 +238980,41 @@ lib_fflush_unlocked(): return 0; #endif } - c005558a: 4501 li a0,0 - c005558c: 8082 ret + c005575a: 4501 li a0,0 + c005575c: 8082 ret -00000000c005558e : +00000000c005575e : lib_fflush(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfflush.c:171 ssize_t lib_fflush(FAR FILE *stream) { - c005558e: 1141 addi sp,sp,-16 - c0055590: e406 sd ra,8(sp) - c0055592: e022 sd s0,0(sp) - c0055594: 842a mv s0,a0 + c005575e: 1141 addi sp,sp,-16 + c0055760: e406 sd ra,8(sp) + c0055762: e022 sd s0,0(sp) + c0055764: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfflush.c:176 ssize_t ret; /* Make sure that we have exclusive access to the stream */ flockfile(stream); - c0055596: 22e000ef jal ra,c00557c4 + c0055766: 22e000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfflush.c:178 ret = lib_fflush_unlocked(stream); funlockfile(stream); - c005559a: 8522 mv a0,s0 - c005559c: 234000ef jal ra,c00557d0 + c005576a: 8522 mv a0,s0 + c005576c: 234000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfflush.c:180 return ret; } - c00555a0: 60a2 ld ra,8(sp) - c00555a2: 6402 ld s0,0(sp) - c00555a4: 4501 li a0,0 - c00555a6: 0141 addi sp,sp,16 - c00555a8: 8082 ret + c0055770: 60a2 ld ra,8(sp) + c0055772: 6402 ld s0,0(sp) + c0055774: 4501 li a0,0 + c0055776: 0141 addi sp,sp,16 + c0055778: 8082 ret -00000000c00555aa : +00000000c005577a : putc(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putc.c:33 * Public Functions @@ -238825,9 +239023,9 @@ putc(): int putc(int c, FAR FILE *stream) { return fputc(c, stream); - c00555aa: a881 j c00555fa + c005577a: a881 j c00557ca -00000000c00555ac : +00000000c005577c : putc_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_putc.c:38 } @@ -238835,9 +239033,9 @@ putc_unlocked(): int putc_unlocked(int c, FAR FILE *stream) { return fputc_unlocked(c, stream); - c00555ac: a009 j c00555ae + c005577c: a009 j c005577e -00000000c00555ae : +00000000c005577e : fputc_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:37 /**************************************************************************** @@ -238846,35 +239044,35 @@ fputc_unlocked(): int fputc_unlocked(int c, FAR FILE *stream) { - c00555ae: 7179 addi sp,sp,-48 - c00555b0: f022 sd s0,32(sp) - c00555b2: ec26 sd s1,24(sp) + c005577e: 7179 addi sp,sp,-48 + c0055780: f022 sd s0,32(sp) + c0055782: ec26 sd s1,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:38 unsigned char buf = (unsigned char)c; - c00555b4: 00a107a3 sb a0,15(sp) + c0055784: 00a107a3 sb a0,15(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:41 int ret; ret = lib_fwrite_unlocked(&buf, 1, stream); - c00555b8: 862e mv a2,a1 + c0055788: 862e mv a2,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:37 { - c00555ba: 842a mv s0,a0 - c00555bc: 84ae mv s1,a1 + c005578a: 842a mv s0,a0 + c005578c: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:41 ret = lib_fwrite_unlocked(&buf, 1, stream); - c00555be: 00f10513 addi a0,sp,15 - c00555c2: 4585 li a1,1 + c005578e: 00f10513 addi a0,sp,15 + c0055792: 4585 li a1,1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:37 { - c00555c4: f406 sd ra,40(sp) + c0055794: f406 sd ra,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:41 ret = lib_fwrite_unlocked(&buf, 1, stream); - c00555c6: e3bff0ef jal ra,c0055400 + c0055796: e3bff0ef jal ra,c00555d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:42 if (ret > 0) - c00555ca: 2501 sext.w a0,a0 - c00555cc: 00a04963 bgtz a0,c00555de + c005579a: 2501 sext.w a0,a0 + c005579c: 00a04963 bgtz a0,c00557ae /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:59 return c; @@ -238882,78 +239080,78 @@ int fputc_unlocked(int c, FAR FILE *stream) else { return EOF; - c00555d0: 547d li s0,-1 + c00557a0: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:61 } } - c00555d2: 70a2 ld ra,40(sp) - c00555d4: 8522 mv a0,s0 - c00555d6: 7402 ld s0,32(sp) - c00555d8: 64e2 ld s1,24(sp) - c00555da: 6145 addi sp,sp,48 - c00555dc: 8082 ret + c00557a2: 70a2 ld ra,40(sp) + c00557a4: 8522 mv a0,s0 + c00557a6: 7402 ld s0,32(sp) + c00557a8: 64e2 ld s1,24(sp) + c00557aa: 6145 addi sp,sp,48 + c00557ac: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:46 if (c == '\n' && (stream->fs_flags & __FS_FLAG_LBF) != 0) - c00555de: 47a9 li a5,10 - c00555e0: fef419e3 bne s0,a5,c00555d2 + c00557ae: 47a9 li a5,10 + c00557b0: fef419e3 bne s0,a5,c00557a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:46 (discriminator 1) - c00555e4: 05a4c783 lbu a5,90(s1) - c00555e8: 8b91 andi a5,a5,4 - c00555ea: d7e5 beqz a5,c00555d2 + c00557b4: 05a4c783 lbu a5,90(s1) + c00557b8: 8b91 andi a5,a5,4 + c00557ba: d7e5 beqz a5,c00557a2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:48 ret = lib_fflush_unlocked(stream); - c00555ec: 8526 mv a0,s1 - c00555ee: f9dff0ef jal ra,c005558a + c00557bc: 8526 mv a0,s1 + c00557be: f9dff0ef jal ra,c005575a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:49 if (ret < 0) - c00555f2: 2501 sext.w a0,a0 - c00555f4: fc055fe3 bgez a0,c00555d2 - c00555f8: bfe1 j c00555d0 + c00557c2: 2501 sext.w a0,a0 + c00557c4: fc055fe3 bgez a0,c00557a2 + c00557c8: bfe1 j c00557a0 -00000000c00555fa : +00000000c00557ca : fputc(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:64 int fputc(int c, FAR FILE *stream) { - c00555fa: 1101 addi sp,sp,-32 - c00555fc: e426 sd s1,8(sp) - c00555fe: 84aa mv s1,a0 + c00557ca: 1101 addi sp,sp,-32 + c00557cc: e426 sd s1,8(sp) + c00557ce: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:67 int ret; flockfile(stream); - c0055600: 852e mv a0,a1 + c00557d0: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:64 { - c0055602: ec06 sd ra,24(sp) - c0055604: e822 sd s0,16(sp) - c0055606: 842e mv s0,a1 + c00557d2: ec06 sd ra,24(sp) + c00557d4: e822 sd s0,16(sp) + c00557d6: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:67 flockfile(stream); - c0055608: 1bc000ef jal ra,c00557c4 + c00557d8: 1bc000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:68 ret = fputc_unlocked(c, stream); - c005560c: 85a2 mv a1,s0 - c005560e: 8526 mv a0,s1 - c0055610: f9fff0ef jal ra,c00555ae - c0055614: 84aa mv s1,a0 + c00557dc: 85a2 mv a1,s0 + c00557de: 8526 mv a0,s1 + c00557e0: f9fff0ef jal ra,c005577e + c00557e4: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:69 funlockfile(stream); - c0055616: 8522 mv a0,s0 - c0055618: 1b8000ef jal ra,c00557d0 + c00557e6: 8522 mv a0,s0 + c00557e8: 1b8000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputc.c:72 return ret; } - c005561c: 60e2 ld ra,24(sp) - c005561e: 6442 ld s0,16(sp) - c0055620: 8526 mv a0,s1 - c0055622: 64a2 ld s1,8(sp) - c0055624: 6105 addi sp,sp,32 - c0055626: 8082 ret + c00557ec: 60e2 ld ra,24(sp) + c00557ee: 6442 ld s0,16(sp) + c00557f0: 8526 mv a0,s1 + c00557f2: 64a2 ld s1,8(sp) + c00557f4: 6105 addi sp,sp,32 + c00557f6: 8082 ret -00000000c0055628 : +00000000c00557f8 : fputs_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:83 return nput; @@ -238962,12 +239160,12 @@ fputs_unlocked(): #else int fputs_unlocked(FAR const IPTR char *s, FAR FILE *stream) { - c0055628: 7179 addi sp,sp,-48 - c005562a: f022 sd s0,32(sp) - c005562c: e84a sd s2,16(sp) - c005562e: f406 sd ra,40(sp) - c0055630: ec26 sd s1,24(sp) - c0055632: e44e sd s3,8(sp) + c00557f8: 7179 addi sp,sp,-48 + c00557fa: f022 sd s0,32(sp) + c00557fc: e84a sd s2,16(sp) + c00557fe: f406 sd ra,40(sp) + c0055800: ec26 sd s1,24(sp) + c0055802: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:90 /* If line buffering is enabled, then we will have to output one character @@ -238975,15 +239173,15 @@ int fputs_unlocked(FAR const IPTR char *s, FAR FILE *stream) */ if ((stream->fs_flags & __FS_FLAG_LBF) != 0) - c0055634: 05a5c783 lbu a5,90(a1) + c0055804: 05a5c783 lbu a5,90(a1) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:83 { - c0055638: 892a mv s2,a0 - c005563a: 842e mv s0,a1 + c0055808: 892a mv s2,a0 + c005580a: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:90 if ((stream->fs_flags & __FS_FLAG_LBF) != 0) - c005563c: 8b91 andi a5,a5,4 - c005563e: e3bd bnez a5,c00556a4 + c005580c: 8b91 andi a5,a5,4 + c005580e: e3bd bnez a5,c0055874 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:127 { int ntowrite; @@ -238991,11 +239189,11 @@ int fputs_unlocked(FAR const IPTR char *s, FAR FILE *stream) /* Get the length of the string. */ ntowrite = strlen(s); - c0055640: 370010ef jal ra,c00569b0 - c0055644: 2501 sext.w a0,a0 + c0055810: 370010ef jal ra,c0056b80 + c0055814: 2501 sext.w a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:128 if (ntowrite == 0) - c0055646: c129 beqz a0,c0055688 + c0055816: c129 beqz a0,c0055858 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:135 return 0; } @@ -239003,39 +239201,39 @@ int fputs_unlocked(FAR const IPTR char *s, FAR FILE *stream) /* Write the string */ nput = lib_fwrite_unlocked(s, ntowrite, stream); - c0055648: 85aa mv a1,a0 - c005564a: 8622 mv a2,s0 - c005564c: 854a mv a0,s2 - c005564e: db3ff0ef jal ra,c0055400 - c0055652: 85aa mv a1,a0 - c0055654: 2501 sext.w a0,a0 - c0055656: 00055363 bgez a0,c005565c - c005565a: 55fd li a1,-1 - c005565c: 0005851b sext.w a0,a1 - c0055660: a025 j c0055688 + c0055818: 85aa mv a1,a0 + c005581a: 8622 mv a2,s0 + c005581c: 854a mv a0,s2 + c005581e: db3ff0ef jal ra,c00555d0 + c0055822: 85aa mv a1,a0 + c0055824: 2501 sext.w a0,a0 + c0055826: 00055363 bgez a0,c005582c + c005582a: 55fd li a1,-1 + c005582c: 0005851b sext.w a0,a1 + c0055830: a025 j c0055858 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:108 if (*s == '\n') - c0055662: 0004c783 lbu a5,0(s1) - c0055666: 03378863 beq a5,s3,c0055696 + c0055832: 0004c783 lbu a5,0(s1) + c0055836: 03378863 beq a5,s3,c0055866 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:96 for (nput = 0; *s; nput++, s++) - c005566a: 0485 addi s1,s1,1 - c005566c: 0004c783 lbu a5,0(s1) - c0055670: 4124853b subw a0,s1,s2 - c0055674: cb91 beqz a5,c0055688 + c005583a: 0485 addi s1,s1,1 + c005583c: 0004c783 lbu a5,0(s1) + c0055840: 4124853b subw a0,s1,s2 + c0055844: cb91 beqz a5,c0055858 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:100 ret = lib_fwrite_unlocked(s, 1, stream); - c0055676: 8622 mv a2,s0 - c0055678: 4585 li a1,1 - c005567a: 8526 mv a0,s1 - c005567c: d85ff0ef jal ra,c0055400 + c0055846: 8622 mv a2,s0 + c0055848: 4585 li a1,1 + c005584a: 8526 mv a0,s1 + c005584c: d85ff0ef jal ra,c00555d0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:101 if (ret <= 0) - c0055680: 2501 sext.w a0,a0 - c0055682: fea040e3 bgtz a0,c0055662 + c0055850: 2501 sext.w a0,a0 + c0055852: fea040e3 bgtz a0,c0055832 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:103 return EOF; - c0055686: 557d li a0,-1 + c0055856: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:143 return EOF; } @@ -239043,73 +239241,73 @@ int fputs_unlocked(FAR const IPTR char *s, FAR FILE *stream) return nput; } - c0055688: 70a2 ld ra,40(sp) - c005568a: 7402 ld s0,32(sp) - c005568c: 64e2 ld s1,24(sp) - c005568e: 6942 ld s2,16(sp) - c0055690: 69a2 ld s3,8(sp) - c0055692: 6145 addi sp,sp,48 - c0055694: 8082 ret + c0055858: 70a2 ld ra,40(sp) + c005585a: 7402 ld s0,32(sp) + c005585c: 64e2 ld s1,24(sp) + c005585e: 6942 ld s2,16(sp) + c0055860: 69a2 ld s3,8(sp) + c0055862: 6145 addi sp,sp,48 + c0055864: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:110 ret = lib_fflush_unlocked(stream); - c0055696: 8522 mv a0,s0 - c0055698: ef3ff0ef jal ra,c005558a + c0055866: 8522 mv a0,s0 + c0055868: ef3ff0ef jal ra,c005575a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:111 if (ret < 0) - c005569c: 2501 sext.w a0,a0 - c005569e: fc0556e3 bgez a0,c005566a - c00556a2: b7d5 j c0055686 - c00556a4: 84aa mv s1,a0 + c005586c: 2501 sext.w a0,a0 + c005586e: fc0556e3 bgez a0,c005583a + c0055872: b7d5 j c0055856 + c0055874: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:108 if (*s == '\n') - c00556a6: 49a9 li s3,10 - c00556a8: b7d1 j c005566c + c0055876: 49a9 li s3,10 + c0055878: b7d1 j c005583c -00000000c00556aa : +00000000c005587a : fputs(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:147 #endif int fputs(FAR const IPTR char *s, FAR FILE *stream) { - c00556aa: 1101 addi sp,sp,-32 - c00556ac: e426 sd s1,8(sp) - c00556ae: 84aa mv s1,a0 + c005587a: 1101 addi sp,sp,-32 + c005587c: e426 sd s1,8(sp) + c005587e: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:150 int ret; flockfile(stream); - c00556b0: 852e mv a0,a1 + c0055880: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:147 { - c00556b2: ec06 sd ra,24(sp) - c00556b4: e822 sd s0,16(sp) - c00556b6: 842e mv s0,a1 + c0055882: ec06 sd ra,24(sp) + c0055884: e822 sd s0,16(sp) + c0055886: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:150 flockfile(stream); - c00556b8: 10c000ef jal ra,c00557c4 + c0055888: 10c000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:151 ret = fputs_unlocked(s, stream); - c00556bc: 85a2 mv a1,s0 - c00556be: 8526 mv a0,s1 - c00556c0: f69ff0ef jal ra,c0055628 - c00556c4: 84aa mv s1,a0 + c005588c: 85a2 mv a1,s0 + c005588e: 8526 mv a0,s1 + c0055890: f69ff0ef jal ra,c00557f8 + c0055894: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:152 funlockfile(stream); - c00556c6: 8522 mv a0,s0 - c00556c8: 108000ef jal ra,c00557d0 + c0055896: 8522 mv a0,s0 + c0055898: 108000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fputs.c:155 return ret; } - c00556cc: 60e2 ld ra,24(sp) - c00556ce: 6442 ld s0,16(sp) - c00556d0: 8526 mv a0,s1 - c00556d2: 64a2 ld s1,8(sp) - c00556d4: 6105 addi sp,sp,32 - c00556d6: 8082 ret + c005589c: 60e2 ld ra,24(sp) + c005589e: 6442 ld s0,16(sp) + c00558a0: 8526 mv a0,s1 + c00558a2: 64a2 ld s1,8(sp) + c00558a4: 6105 addi sp,sp,32 + c00558a6: 8082 ret -00000000c00556d8 : +00000000c00558a8 : fprintf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:36 /**************************************************************************** @@ -239118,8 +239316,8 @@ fprintf(): int fprintf(FAR FILE *stream, FAR const IPTR char *fmt, ...) { - c00556d8: 715d addi sp,sp,-80 - c00556da: f032 sd a2,32(sp) + c00558a8: 715d addi sp,sp,-80 + c00558aa: f032 sd a2,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:42 va_list ap; int n; @@ -239127,30 +239325,30 @@ int fprintf(FAR FILE *stream, FAR const IPTR char *fmt, ...) /* vfprintf into the stream */ va_start(ap, fmt); - c00556dc: 1010 addi a2,sp,32 + c00558ac: 1010 addi a2,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:36 { - c00556de: ec06 sd ra,24(sp) - c00556e0: f436 sd a3,40(sp) - c00556e2: f83a sd a4,48(sp) - c00556e4: fc3e sd a5,56(sp) - c00556e6: e0c2 sd a6,64(sp) - c00556e8: e4c6 sd a7,72(sp) + c00558ae: ec06 sd ra,24(sp) + c00558b0: f436 sd a3,40(sp) + c00558b2: f83a sd a4,48(sp) + c00558b4: fc3e sd a5,56(sp) + c00558b6: e0c2 sd a6,64(sp) + c00558b8: e4c6 sd a7,72(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:42 va_start(ap, fmt); - c00556ea: e432 sd a2,8(sp) + c00558ba: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:43 n = vfprintf(stream, fmt, ap); - c00556ec: 00a000ef jal ra,c00556f6 + c00558bc: 00a000ef jal ra,c00558c6 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_fprintf.c:46 va_end(ap); return n; } - c00556f0: 60e2 ld ra,24(sp) - c00556f2: 6161 addi sp,sp,80 - c00556f4: 8082 ret + c00558c0: 60e2 ld ra,24(sp) + c00558c2: 6161 addi sp,sp,80 + c00558c4: 8082 ret -00000000c00556f6 : +00000000c00558c6 : vfprintf(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:36 /**************************************************************************** @@ -239159,11 +239357,11 @@ vfprintf(): int vfprintf(FAR FILE *stream, FAR const IPTR char *fmt, va_list ap) { - c00556f6: 711d addi sp,sp,-96 - c00556f8: e8a2 sd s0,80(sp) - c00556fa: e4a6 sd s1,72(sp) - c00556fc: 842a mv s0,a0 - c00556fe: 84ae mv s1,a1 + c00558c6: 711d addi sp,sp,-96 + c00558c8: e8a2 sd s0,80(sp) + c00558ca: e4a6 sd s1,72(sp) + c00558cc: 842a mv s0,a0 + c00558ce: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:44 /* Wrap the stream in a stream object and let lib_vsprintf @@ -239171,15 +239369,15 @@ int vfprintf(FAR FILE *stream, FAR const IPTR char *fmt, va_list ap) */ lib_stdoutstream(&stdoutstream, stream); - c0055700: 85aa mv a1,a0 - c0055702: 0828 addi a0,sp,24 + c00558d0: 85aa mv a1,a0 + c00558d2: 0828 addi a0,sp,24 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:36 { - c0055704: ec86 sd ra,88(sp) - c0055706: e432 sd a2,8(sp) + c00558d4: ec86 sd ra,88(sp) + c00558d6: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:44 lib_stdoutstream(&stdoutstream, stream); - c0055708: 725000ef jal ra,c005662c + c00558d8: 725000ef jal ra,c00567fc /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:51 /* Hold the stream semaphore throughout the lib_vsprintf * call so that this thread can get its entire message out @@ -239187,31 +239385,31 @@ int vfprintf(FAR FILE *stream, FAR const IPTR char *fmt, va_list ap) */ flockfile(stream); - c005570c: 8522 mv a0,s0 - c005570e: 0b6000ef jal ra,c00557c4 + c00558dc: 8522 mv a0,s0 + c00558de: 0b6000ef jal ra,c0055994 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:52 n = lib_vsprintf(&stdoutstream.common, fmt, ap); - c0055712: 6622 ld a2,8(sp) - c0055714: 85a6 mv a1,s1 - c0055716: 0828 addi a0,sp,24 - c0055718: c3dfe0ef jal ra,c0054354 - c005571c: 84aa mv s1,a0 + c00558e2: 6622 ld a2,8(sp) + c00558e4: 85a6 mv a1,s1 + c00558e6: 0828 addi a0,sp,24 + c00558e8: c3dfe0ef jal ra,c0054524 + c00558ec: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:53 funlockfile(stream); - c005571e: 8522 mv a0,s0 - c0055720: 0b0000ef jal ra,c00557d0 + c00558ee: 8522 mv a0,s0 + c00558f0: 0b0000ef jal ra,c00559a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_vfprintf.c:56 return n; } - c0055724: 60e6 ld ra,88(sp) - c0055726: 6446 ld s0,80(sp) - c0055728: 8526 mv a0,s1 - c005572a: 64a6 ld s1,72(sp) - c005572c: 6125 addi sp,sp,96 - c005572e: 8082 ret + c00558f4: 60e6 ld ra,88(sp) + c00558f6: 6446 ld s0,80(sp) + c00558f8: 8526 mv a0,s1 + c00558fa: 64a6 ld s1,72(sp) + c00558fc: 6125 addi sp,sp,96 + c00558fe: 8082 ret -00000000c0055730 : +00000000c0055900 : feof(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_feof.c:58 /* If the end-of-file condition is encountered by any of the C-buffered @@ -239220,13 +239418,13 @@ feof(): */ return (stream->fs_flags & __FS_FLAG_EOF) != 0; - c0055730: 05a54503 lbu a0,90(a0) + c0055900: 05a54503 lbu a0,90(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_feof.c:59 } - c0055734: 8905 andi a0,a0,1 - c0055736: 8082 ret + c0055904: 8905 andi a0,a0,1 + c0055906: 8082 ret -00000000c0055738 : +00000000c0055908 : ferror(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ferror.c:57 /* If an error is encountered by any of the C-buffered I/O functions, they @@ -239235,14 +239433,14 @@ ferror(): */ return (stream->fs_flags & __FS_FLAG_ERROR) != 0; - c0055738: 05a54503 lbu a0,90(a0) - c005573c: 0015551b srliw a0,a0,0x1 + c0055908: 05a54503 lbu a0,90(a0) + c005590c: 0015551b srliw a0,a0,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_ferror.c:58 } - c0055740: 8905 andi a0,a0,1 - c0055742: 8082 ret + c0055910: 8905 andi a0,a0,1 + c0055912: 8082 ret -00000000c0055744 : +00000000c0055914 : clearerr_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:51 * @@ -239251,53 +239449,53 @@ clearerr_unlocked(): void clearerr_unlocked(FAR FILE *stream) { stream->fs_flags &= (__FS_FLAG_LBF | __FS_FLAG_UBF); - c0055744: 05a54783 lbu a5,90(a0) - c0055748: 8bb1 andi a5,a5,12 - c005574a: 04f50d23 sb a5,90(a0) + c0055914: 05a54783 lbu a5,90(a0) + c0055918: 8bb1 andi a5,a5,12 + c005591a: 04f50d23 sb a5,90(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:52 } - c005574e: 8082 ret + c005591e: 8082 ret -00000000c0055750 : +00000000c0055920 : clearerr(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:55 void clearerr(FAR FILE *stream) { - c0055750: 1141 addi sp,sp,-16 - c0055752: e022 sd s0,0(sp) - c0055754: e406 sd ra,8(sp) - c0055756: 842a mv s0,a0 + c0055920: 1141 addi sp,sp,-16 + c0055922: e022 sd s0,0(sp) + c0055924: e406 sd ra,8(sp) + c0055926: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:56 flockfile(stream); - c0055758: 06c000ef jal ra,c00557c4 + c0055928: 06c000ef jal ra,c0055994 clearerr_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:51 stream->fs_flags &= (__FS_FLAG_LBF | __FS_FLAG_UBF); - c005575c: 05a44783 lbu a5,90(s0) + c005592c: 05a44783 lbu a5,90(s0) clearerr(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:58 clearerr_unlocked(stream); funlockfile(stream); - c0055760: 8522 mv a0,s0 + c0055930: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:59 } - c0055762: 60a2 ld ra,8(sp) + c0055932: 60a2 ld ra,8(sp) clearerr_unlocked(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:51 stream->fs_flags &= (__FS_FLAG_LBF | __FS_FLAG_UBF); - c0055764: 8bb1 andi a5,a5,12 - c0055766: 04f40d23 sb a5,90(s0) + c0055934: 8bb1 andi a5,a5,12 + c0055936: 04f40d23 sb a5,90(s0) clearerr(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:59 } - c005576a: 6402 ld s0,0(sp) - c005576c: 0141 addi sp,sp,16 + c005593a: 6402 ld s0,0(sp) + c005593c: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_clearerr.c:58 funlockfile(stream); - c005576e: a08d j c00557d0 + c005593e: a08d j c00559a0 -00000000c0055770 : +00000000c0055940 : tmpfile(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:35 * Public Functions @@ -239306,74 +239504,74 @@ tmpfile(): FAR FILE *tmpfile(void) { char path[L_tmpnam] = P_tmpdir "/XXXXXX.tmp"; - c0055770: 00003797 auipc a5,0x3 - c0055774: ab878793 addi a5,a5,-1352 # c0058228 <_srodata+0xb8> - c0055778: 6398 ld a4,0(a5) - c005577a: 679c ld a5,8(a5) + c0055940: 00003797 auipc a5,0x3 + c0055944: ab878793 addi a5,a5,-1352 # c00583f8 <_srodata+0xb8> + c0055948: 6398 ld a4,0(a5) + c005594a: 679c ld a5,8(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:34 { - c005577c: 7139 addi sp,sp,-64 + c005594c: 7139 addi sp,sp,-64 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:39 FAR FILE *fp = NULL; int fd; fd = mkstemp(path); - c005577e: 850a mv a0,sp + c005594e: 850a mv a0,sp /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:34 { - c0055780: f822 sd s0,48(sp) - c0055782: fc06 sd ra,56(sp) - c0055784: f426 sd s1,40(sp) + c0055950: f822 sd s0,48(sp) + c0055952: fc06 sd ra,56(sp) + c0055954: f426 sd s1,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:35 char path[L_tmpnam] = P_tmpdir "/XXXXXX.tmp"; - c0055786: e03a sd a4,0(sp) - c0055788: e43e sd a5,8(sp) - c005578a: e802 sd zero,16(sp) - c005578c: ec02 sd zero,24(sp) + c0055956: e03a sd a4,0(sp) + c0055958: e43e sd a5,8(sp) + c005595a: e802 sd zero,16(sp) + c005595c: ec02 sd zero,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:39 fd = mkstemp(path); - c005578e: 4ad000ef jal ra,c005643a + c005595e: 4ad000ef jal ra,c005660a /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:36 FAR FILE *fp = NULL; - c0055792: 4401 li s0,0 + c0055962: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:40 if (fd >= 0) - c0055794: 02054263 bltz a0,c00557b8 - c0055798: 84aa mv s1,a0 + c0055964: 02054263 bltz a0,c0055988 + c0055968: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:42 { unlink(path); - c005579a: 850a mv a0,sp - c005579c: 653010ef jal ra,c00575ee + c005596a: 850a mv a0,sp + c005596c: 653010ef jal ra,c00577be /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:43 fp = fdopen(fd, "w+"); - c00557a0: 0001d597 auipc a1,0x1d - c00557a4: 5f858593 addi a1,a1,1528 # c0072d98 - c00557a8: 8526 mv a0,s1 - c00557aa: 841ff0ef jal ra,c0054fea - c00557ae: 842a mv s0,a0 + c0055970: 0001d597 auipc a1,0x1d + c0055974: 68858593 addi a1,a1,1672 # c0072ff8 + c0055978: 8526 mv a0,s1 + c005597a: 841ff0ef jal ra,c00551ba + c005597e: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:44 if (fp == NULL) - c00557b0: e501 bnez a0,c00557b8 + c0055980: e501 bnez a0,c0055988 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:46 { close(fd); - c00557b2: 8526 mv a0,s1 - c00557b4: 32f010ef jal ra,c00572e2 + c0055982: 8526 mv a0,s1 + c0055984: 32f010ef jal ra,c00574b2 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_tmpfile.c:51 } } return fp; } - c00557b8: 70e2 ld ra,56(sp) - c00557ba: 8522 mv a0,s0 - c00557bc: 7442 ld s0,48(sp) - c00557be: 74a2 ld s1,40(sp) - c00557c0: 6121 addi sp,sp,64 - c00557c2: 8082 ret + c0055988: 70e2 ld ra,56(sp) + c005598a: 8522 mv a0,s0 + c005598c: 7442 ld s0,48(sp) + c005598e: 74a2 ld s1,40(sp) + c0055990: 6121 addi sp,sp,64 + c0055992: 8082 ret -00000000c00557c4 : +00000000c0055994 : flockfile(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfilelock.c:46 * flockfile @@ -239382,10 +239580,10 @@ flockfile(): void flockfile(FAR struct file_struct *stream) { nxrmutex_lock(&stream->fs_lock); - c00557c4: 0521 addi a0,a0,8 - c00557c6: d5afe06f j c0053d20 + c0055994: 0521 addi a0,a0,8 + c0055996: d5afe06f j c0053ef0 -00000000c00557ca : +00000000c005599a : ftrylockfile(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfilelock.c:55 * flockfile @@ -239394,10 +239592,10 @@ ftrylockfile(): int ftrylockfile(FAR struct file_struct *stream) { return nxrmutex_trylock(&stream->fs_lock); - c00557ca: 0521 addi a0,a0,8 - c00557cc: d96fe06f j c0053d62 + c005599a: 0521 addi a0,a0,8 + c005599c: d96fe06f j c0053f32 -00000000c00557d0 : +00000000c00559a0 : funlockfile(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libfilelock.c:64 * funlockfile @@ -239406,10 +239604,10 @@ funlockfile(): void funlockfile(FAR struct file_struct *stream) { nxrmutex_unlock(&stream->fs_lock); - c00557d0: 0521 addi a0,a0,8 - c00557d2: e18fe06f j c0053dea + c00559a0: 0521 addi a0,a0,8 + c00559a2: e18fe06f j c0053fba -00000000c00557d6 : +00000000c00559a6 : lib_get_streams(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:54 * Assumptions: @@ -239418,22 +239616,22 @@ lib_get_streams(): FAR struct streamlist *lib_get_streams(void) { - c00557d6: 1141 addi sp,sp,-16 - c00557d8: e406 sd ra,8(sp) + c00559a6: 1141 addi sp,sp,-16 + c00559a8: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:57 FAR struct task_info_s *info; info = task_get_info(); - c00557da: 496010ef jal ra,c0056c70 + c00559aa: 496010ef jal ra,c0056e40 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:59 return &info->ta_streamlist; } - c00557de: 60a2 ld ra,8(sp) - c00557e0: 02850513 addi a0,a0,40 - c00557e4: 0141 addi sp,sp,16 - c00557e6: 8082 ret + c00559ae: 60a2 ld ra,8(sp) + c00559b0: 02850513 addi a0,a0,40 + c00559b4: 0141 addi sp,sp,16 + c00559b6: 8082 ret -00000000c00557e8 : +00000000c00559b8 : lib_get_stream(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:71 * Note: only reserved fd number 0/1/2 is valid. @@ -239442,33 +239640,33 @@ lib_get_stream(): FAR struct file_struct *lib_get_stream(int fd) { - c00557e8: 1141 addi sp,sp,-16 - c00557ea: e022 sd s0,0(sp) - c00557ec: e406 sd ra,8(sp) - c00557ee: 842a mv s0,a0 + c00559b8: 1141 addi sp,sp,-16 + c00559ba: e022 sd s0,0(sp) + c00559bc: e406 sd ra,8(sp) + c00559be: 842a mv s0,a0 lib_get_streams(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:57 info = task_get_info(); - c00557f0: 480010ef jal ra,c0056c70 + c00559c0: 480010ef jal ra,c0056e40 lib_get_stream(): /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:72 return &lib_get_streams()->sl_std[fd]; - c00557f4: 06000793 li a5,96 - c00557f8: 02f40433 mul s0,s0,a5 + c00559c4: 06000793 li a5,96 + c00559c8: 02f40433 mul s0,s0,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:73 } - c00557fc: 60a2 ld ra,8(sp) + c00559cc: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:72 return &lib_get_streams()->sl_std[fd]; - c00557fe: 9522 add a0,a0,s0 + c00559ce: 9522 add a0,a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdio/lib_libgetstreams.c:73 } - c0055800: 6402 ld s0,0(sp) - c0055802: 04850513 addi a0,a0,72 - c0055806: 0141 addi sp,sp,16 - c0055808: 8082 ret + c00559d0: 6402 ld s0,0(sp) + c00559d2: 04850513 addi a0,a0,72 + c00559d6: 0141 addi sp,sp,16 + c00559d8: 8082 ret -00000000c005580a : +00000000c00559da : abort(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_abort.c:60 * This function does not return, @@ -239477,7 +239675,7 @@ abort(): void abort(void) { - c005580a: 1141 addi sp,sp,-16 + c00559da: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_abort.c:69 * signal the calling thread all. * @@ -239485,15 +239683,15 @@ void abort(void) */ _exit(EXIT_FAILURE); - c005580c: 4505 li a0,1 + c00559dc: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_abort.c:60 { - c005580e: e406 sd ra,8(sp) + c00559de: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_abort.c:69 _exit(EXIT_FAILURE); - c0055810: 289010ef jal ra,c0057298 <_exit> + c00559e0: 289010ef jal ra,c0057468 <_exit> -00000000c0055814 : +00000000c00559e4 : atoi(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atoi.c:33 * Public Functions @@ -239502,25 +239700,25 @@ atoi(): #undef atoi /* See mm/README.txt */ int atoi(FAR const char *nptr) { - c0055814: 1141 addi sp,sp,-16 + c00559e4: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atoi.c:34 return strtol(nptr, NULL, 10); - c0055816: 4629 li a2,10 - c0055818: 4581 li a1,0 + c00559e6: 4629 li a2,10 + c00559e8: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atoi.c:33 { - c005581a: e406 sd ra,8(sp) + c00559ea: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atoi.c:34 return strtol(nptr, NULL, 10); - c005581c: 1c2000ef jal ra,c00559de + c00559ec: 1c2000ef jal ra,c0055bae /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atoi.c:35 } - c0055820: 60a2 ld ra,8(sp) - c0055822: 2501 sext.w a0,a0 - c0055824: 0141 addi sp,sp,16 - c0055826: 8082 ret + c00559f0: 60a2 ld ra,8(sp) + c00559f2: 2501 sext.w a0,a0 + c00559f4: 0141 addi sp,sp,16 + c00559f6: 8082 ret -00000000c0055828 : +00000000c00559f8 : exit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:94 * Does not return. @@ -239529,8 +239727,8 @@ exit(): void exit(int status) { - c0055828: 1141 addi sp,sp,-16 - c005582a: e022 sd s0,0(sp) + c00559f8: 1141 addi sp,sp,-16 + c00559fa: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:100 /* Mark the pthread as non-cancelable to avoid additional calls to * pthread_exit() due to any cancellation point logic that might get @@ -239538,19 +239736,19 @@ void exit(int status) */ task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c005582c: 4581 li a1,0 + c00559fc: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:94 { - c005582e: 842a mv s0,a0 + c00559fe: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:100 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0055830: 4505 li a0,1 + c0055a00: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:94 { - c0055832: e406 sd ra,8(sp) + c0055a02: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:100 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0055834: f50fe0ef jal ra,c0053f84 + c0055a04: f50fe0ef jal ra,c0054154 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:121 #endif @@ -239558,18 +239756,18 @@ void exit(int status) /* Flush all streams */ fflush(NULL); - c0055838: 4501 li a0,0 - c005583a: c65ff0ef jal ra,c005549e + c0055a08: 4501 li a0,0 + c0055a0a: c65ff0ef jal ra,c005566e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:126 #endif /* Then perform the exit */ _exit(status); - c005583e: 8522 mv a0,s0 - c0055840: 259010ef jal ra,c0057298 <_exit> + c0055a0e: 8522 mv a0,s0 + c0055a10: 259010ef jal ra,c0057468 <_exit> -00000000c0055844 : +00000000c0055a14 : quick_exit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:147 * Does not return. @@ -239578,8 +239776,8 @@ quick_exit(): void quick_exit(int status) { - c0055844: 1141 addi sp,sp,-16 - c0055846: e022 sd s0,0(sp) + c0055a14: 1141 addi sp,sp,-16 + c0055a16: e022 sd s0,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:153 /* Mark the pthread as non-cancelable to avoid additional calls to * pthread_exit() due to any cancellation point logic that might get @@ -239587,19 +239785,19 @@ void quick_exit(int status) */ task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0055848: 4581 li a1,0 + c0055a18: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:147 { - c005584a: 842a mv s0,a0 + c0055a1a: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:153 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c005584c: 4505 li a0,1 + c0055a1c: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:147 { - c005584e: e406 sd ra,8(sp) + c0055a1e: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:153 task_setcancelstate(TASK_CANCEL_DISABLE, NULL); - c0055850: f34fe0ef jal ra,c0053f84 + c0055a20: f34fe0ef jal ra,c0054154 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:169 atexit_call_exitfuncs(status, true); @@ -239607,10 +239805,10 @@ void quick_exit(int status) /* Then perform the exit */ _exit(status); - c0055854: 8522 mv a0,s0 - c0055856: 243010ef jal ra,c0057298 <_exit> + c0055a24: 8522 mv a0,s0 + c0055a26: 243010ef jal ra,c0057468 <_exit> -00000000c005585a <_Exit>: +00000000c0055a2a <_Exit>: _Exit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:190 * Does not return. @@ -239619,13 +239817,13 @@ _Exit(): void _Exit(int status) { - c005585a: 1141 addi sp,sp,-16 - c005585c: e406 sd ra,8(sp) + c0055a2a: 1141 addi sp,sp,-16 + c0055a2c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_exit.c:191 _exit(status); - c005585e: 23b010ef jal ra,c0057298 <_exit> + c0055a2e: 23b010ef jal ra,c0057468 <_exit> -00000000c0055862 : +00000000c0055a32 : realpath(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:40 /**************************************************************************** @@ -239634,20 +239832,20 @@ realpath(): FAR char *realpath(FAR const char *path, FAR char *resolved) { - c0055862: 7155 addi sp,sp,-208 - c0055864: e586 sd ra,200(sp) - c0055866: e1a2 sd s0,192(sp) - c0055868: fd26 sd s1,184(sp) - c005586a: f94a sd s2,176(sp) - c005586c: f54e sd s3,168(sp) - c005586e: f152 sd s4,160(sp) - c0055870: ed56 sd s5,152(sp) - c0055872: e95a sd s6,144(sp) - c0055874: e55e sd s7,136(sp) - c0055876: e162 sd s8,128(sp) - c0055878: fce6 sd s9,120(sp) - c005587a: f8ea sd s10,112(sp) - c005587c: f4ee sd s11,104(sp) + c0055a32: 7155 addi sp,sp,-208 + c0055a34: e586 sd ra,200(sp) + c0055a36: e1a2 sd s0,192(sp) + c0055a38: fd26 sd s1,184(sp) + c0055a3a: f94a sd s2,176(sp) + c0055a3c: f54e sd s3,168(sp) + c0055a3e: f152 sd s4,160(sp) + c0055a40: ed56 sd s5,152(sp) + c0055a42: e95a sd s6,144(sp) + c0055a44: e55e sd s7,136(sp) + c0055a46: e162 sd s8,128(sp) + c0055a48: fce6 sd s9,120(sp) + c0055a4a: f8ea sd s10,112(sp) + c0055a4c: f4ee sd s11,104(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:56 FAR char *fres = NULL; FAR char *p; @@ -239655,12 +239853,12 @@ FAR char *realpath(FAR const char *path, FAR char *resolved) size_t len; if (path == NULL) - c005587e: e519 bnez a0,c005588c + c0055a4e: e519 bnez a0,c0055a5c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:58 { set_errno(EINVAL); - c0055880: a54fe0ef jal ra,c0053ad4 <__errno> - c0055884: 47d9 li a5,22 + c0055a50: a54fe0ef jal ra,c0053ca4 <__errno> + c0055a54: 47d9 li a5,22 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:64 return NULL; } @@ -239668,7 +239866,7 @@ FAR char *realpath(FAR const char *path, FAR char *resolved) if (*path == '\0') { set_errno(ENOENT); - c0055886: c11c sw a5,0(a0) + c0055a56: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:267 { lib_free(wbuf[0]); @@ -239676,233 +239874,233 @@ FAR char *realpath(FAR const char *path, FAR char *resolved) #endif return NULL; - c0055888: 4981 li s3,0 - c005588a: a805 j c00558ba + c0055a58: 4981 li s3,0 + c0055a5a: a805 j c0055a8a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:62 if (*path == '\0') - c005588c: 00054a03 lbu s4,0(a0) - c0055890: 892a mv s2,a0 - c0055892: 000a1663 bnez s4,c005589e + c0055a5c: 00054a03 lbu s4,0(a0) + c0055a60: 892a mv s2,a0 + c0055a62: 000a1663 bnez s4,c0055a6e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:64 set_errno(ENOENT); - c0055896: a3efe0ef jal ra,c0053ad4 <__errno> - c005589a: 4789 li a5,2 - c005589c: b7ed j c0055886 - c005589e: 842e mv s0,a1 + c0055a66: a3efe0ef jal ra,c0053ca4 <__errno> + c0055a6a: 4789 li a5,2 + c0055a6c: b7ed j c0055a56 + c0055a6e: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:51 FAR char *fres = NULL; - c00558a0: 4981 li s3,0 + c0055a70: 4981 li s3,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:68 if (resolved == NULL) - c00558a2: ed85 bnez a1,c00558da + c0055a72: ed85 bnez a1,c0055aaa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:70 fres = resolved = lib_malloc(PATH_MAX); - c00558a4: 10000513 li a0,256 - c00558a8: d5cfd0ef jal ra,c0052e04 - c00558ac: 89aa mv s3,a0 + c0055a74: 10000513 li a0,256 + c0055a78: d5cfd0ef jal ra,c0052fd4 + c0055a7c: 89aa mv s3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:71 if (resolved == NULL) - c00558ae: 842a mv s0,a0 - c00558b0: e50d bnez a0,c00558da + c0055a7e: 842a mv s0,a0 + c0055a80: e50d bnez a0,c0055aaa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:73 set_errno(ENOMEM); - c00558b2: a22fe0ef jal ra,c0053ad4 <__errno> - c00558b6: 47b1 li a5,12 - c00558b8: c11c sw a5,0(a0) + c0055a82: a22fe0ef jal ra,c0053ca4 <__errno> + c0055a86: 47b1 li a5,12 + c0055a88: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:268 } - c00558ba: 60ae ld ra,200(sp) - c00558bc: 640e ld s0,192(sp) - c00558be: 74ea ld s1,184(sp) - c00558c0: 794a ld s2,176(sp) - c00558c2: 7a0a ld s4,160(sp) - c00558c4: 6aea ld s5,152(sp) - c00558c6: 6b4a ld s6,144(sp) - c00558c8: 6baa ld s7,136(sp) - c00558ca: 6c0a ld s8,128(sp) - c00558cc: 7ce6 ld s9,120(sp) - c00558ce: 7d46 ld s10,112(sp) - c00558d0: 7da6 ld s11,104(sp) - c00558d2: 854e mv a0,s3 - c00558d4: 79aa ld s3,168(sp) - c00558d6: 6169 addi sp,sp,208 - c00558d8: 8082 ret + c0055a8a: 60ae ld ra,200(sp) + c0055a8c: 640e ld s0,192(sp) + c0055a8e: 74ea ld s1,184(sp) + c0055a90: 794a ld s2,176(sp) + c0055a92: 7a0a ld s4,160(sp) + c0055a94: 6aea ld s5,152(sp) + c0055a96: 6b4a ld s6,144(sp) + c0055a98: 6baa ld s7,136(sp) + c0055a9a: 6c0a ld s8,128(sp) + c0055a9c: 7ce6 ld s9,120(sp) + c0055a9e: 7d46 ld s10,112(sp) + c0055aa0: 7da6 ld s11,104(sp) + c0055aa2: 854e mv a0,s3 + c0055aa4: 79aa ld s3,168(sp) + c0055aa6: 6169 addi sp,sp,208 + c0055aa8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:90 if (*path != '/') - c00558da: 02f00793 li a5,47 + c0055aaa: 02f00793 li a5,47 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:106 loop: - c00558de: 84a2 mv s1,s0 + c0055aae: 84a2 mv s1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:90 if (*path != '/') - c00558e0: 02fa0063 beq s4,a5,c0055900 + c0055ab0: 02fa0063 beq s4,a5,c0055ad0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:94 if (getcwd(resolved, PATH_MAX) == NULL) - c00558e4: 10000593 li a1,256 - c00558e8: 8522 mv a0,s0 - c00558ea: 58e010ef jal ra,c0056e78 - c00558ee: c145 beqz a0,c005598e + c0055ab4: 10000593 li a1,256 + c0055ab8: 8522 mv a0,s0 + c0055aba: 58e010ef jal ra,c0057048 + c0055abe: c145 beqz a0,c0055b5e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:99 len = strlen(resolved); - c00558f0: 8522 mv a0,s0 - c00558f2: 0be010ef jal ra,c00569b0 + c0055ac0: 8522 mv a0,s0 + c0055ac2: 0be010ef jal ra,c0056b80 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:100 if (len > 1) - c00558f6: 4785 li a5,1 - c00558f8: 00a7f463 bgeu a5,a0,c0055900 + c0055ac6: 4785 li a5,1 + c0055ac8: 00a7f463 bgeu a5,a0,c0055ad0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:102 p += len; - c00558fc: 00a404b3 add s1,s0,a0 + c0055acc: 00a404b3 add s1,s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:110 while (*path == '/') - c0055900: 02f00a93 li s5,47 + c0055ad0: 02f00a93 li s5,47 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:145 if (path[0] == '.') - c0055904: 02e00b93 li s7,46 + c0055ad4: 02e00b93 li s7,46 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:172 if (p - resolved + 1 + q - path + 1 > PATH_MAX) - c0055908: 0ff00d13 li s10,255 + c0055ad8: 0ff00d13 li s10,255 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:186 if (lstat(resolved, &sb) == -1) - c005590c: 5dfd li s11,-1 + c0055adc: 5dfd li s11,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:246 if (*q == '/' && !S_ISDIR(sb.st_mode)) - c005590e: 6cbd lui s9,0xf - c0055910: 6c11 lui s8,0x4 + c0055ade: 6cbd lui s9,0xf + c0055ae0: 6c11 lui s8,0x4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:147 if (q - path == 1) - c0055912: 4705 li a4,1 + c0055ae2: 4705 li a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:110 while (*path == '/') - c0055914: 00094783 lbu a5,0(s2) - c0055918: 01578d63 beq a5,s5,c0055932 + c0055ae4: 00094783 lbu a5,0(s2) + c0055ae8: 01578d63 beq a5,s5,c0055b02 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:115 if (*path == '\0') - c005591c: ef99 bnez a5,c005593a + c0055aec: ef99 bnez a5,c0055b0a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:117 if (p == resolved) - c005591e: 00941663 bne s0,s1,c005592a + c0055aee: 00941663 bne s0,s1,c0055afa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:119 *p++ = '/'; - c0055922: 01540023 sb s5,0(s0) - c0055926: 00140493 addi s1,s0,1 + c0055af2: 01540023 sb s5,0(s0) + c0055af6: 00140493 addi s1,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:122 *p = '\0'; - c005592a: 00048023 sb zero,0(s1) + c0055afa: 00048023 sb zero,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:131 return resolved; - c005592e: 89a2 mv s3,s0 - c0055930: b769 j c00558ba + c0055afe: 89a2 mv s3,s0 + c0055b00: b769 j c0055a8a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:112 path++; - c0055932: 00190a13 addi s4,s2,1 + c0055b02: 00190a13 addi s4,s2,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:106 loop: - c0055936: 8952 mv s2,s4 - c0055938: bff1 j c0055914 - c005593a: 8a4a mv s4,s2 + c0055b06: 8952 mv s2,s4 + c0055b08: bff1 j c0055ae4 + c0055b0a: 8a4a mv s4,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:139 (discriminator 2) q++; - c005593c: 8b52 mv s6,s4 + c0055b0c: 8b52 mv s6,s4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:141 (discriminator 2) while (*q != '/' && *q != '\0'); - c005593e: 001a4683 lbu a3,1(s4) + c0055b0e: 001a4683 lbu a3,1(s4) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:139 (discriminator 2) q++; - c0055942: 0a05 addi s4,s4,1 + c0055b12: 0a05 addi s4,s4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:141 (discriminator 2) while (*q != '/' && *q != '\0'); - c0055944: 01568363 beq a3,s5,c005594a + c0055b14: 01568363 beq a3,s5,c0055b1a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:141 (discriminator 1) - c0055948: faf5 bnez a3,c005593c + c0055b18: faf5 bnez a3,c0055b0c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:145 if (path[0] == '.') - c005594a: 03779563 bne a5,s7,c0055974 + c0055b1a: 03779563 bne a5,s7,c0055b44 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:147 if (q - path == 1) - c005594e: 412a07b3 sub a5,s4,s2 - c0055952: fee782e3 beq a5,a4,c0055936 + c0055b1e: 412a07b3 sub a5,s4,s2 + c0055b22: fee782e3 beq a5,a4,c0055b06 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:153 if (path[1] == '.' && q - path == 2) - c0055956: 00194683 lbu a3,1(s2) - c005595a: 01769d63 bne a3,s7,c0055974 + c0055b26: 00194683 lbu a3,1(s2) + c0055b2a: 01769d63 bne a3,s7,c0055b44 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:153 (discriminator 1) - c005595e: 4689 li a3,2 - c0055960: 00d79a63 bne a5,a3,c0055974 + c0055b2e: 4689 li a3,2 + c0055b30: 00d79a63 bne a5,a3,c0055b44 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:157 if (p != resolved) - c0055964: fc9409e3 beq s0,s1,c0055936 + c0055b34: fc9409e3 beq s0,s1,c0055b06 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:159 while (*--p != '/') - c0055968: fff4c783 lbu a5,-1(s1) - c005596c: 14fd addi s1,s1,-1 - c005596e: fd5784e3 beq a5,s5,c0055936 - c0055972: bfdd j c0055968 + c0055b38: fff4c783 lbu a5,-1(s1) + c0055b3c: 14fd addi s1,s1,-1 + c0055b3e: fd5784e3 beq a5,s5,c0055b06 + c0055b42: bfdd j c0055b38 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:172 if (p - resolved + 1 + q - path + 1 > PATH_MAX) - c0055974: 408487b3 sub a5,s1,s0 - c0055978: 0785 addi a5,a5,1 - c005597a: 97d2 add a5,a5,s4 - c005597c: 412787b3 sub a5,a5,s2 - c0055980: 00fd5b63 bge s10,a5,c0055996 + c0055b44: 408487b3 sub a5,s1,s0 + c0055b48: 0785 addi a5,a5,1 + c0055b4a: 97d2 add a5,a5,s4 + c0055b4c: 412787b3 sub a5,a5,s2 + c0055b50: 00fd5b63 bge s10,a5,c0055b66 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:174 set_errno(ENAMETOOLONG); - c0055984: 950fe0ef jal ra,c0053ad4 <__errno> - c0055988: 02400793 li a5,36 + c0055b54: 950fe0ef jal ra,c0053ca4 <__errno> + c0055b58: 02400793 li a5,36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:248 set_errno(ENOTDIR); - c005598c: c11c sw a5,0(a0) + c0055b5c: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:259 lib_free(fres); - c005598e: 854e mv a0,s3 - c0055990: c68fd0ef jal ra,c0052df8 - c0055994: bdd5 j c0055888 + c0055b5e: 854e mv a0,s3 + c0055b60: c68fd0ef jal ra,c0052fc8 + c0055b64: bdd5 j c0055a58 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:180 p[1 + q - path] = '\0'; - c0055996: 0b09 addi s6,s6,2 + c0055b66: 0b09 addi s6,s6,2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:179 memcpy(&p[1], path, q - path); - c0055998: 85ca mv a1,s2 + c0055b68: 85ca mv a1,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:178 p[0] = '/'; - c005599a: 01548023 sb s5,0(s1) + c0055b6a: 01548023 sb s5,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:179 memcpy(&p[1], path, q - path); - c005599e: 412a0633 sub a2,s4,s2 - c00559a2: 00148513 addi a0,s1,1 + c0055b6e: 412a0633 sub a2,s4,s2 + c0055b72: 00148513 addi a0,s1,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:180 p[1 + q - path] = '\0'; - c00559a6: 412b0933 sub s2,s6,s2 + c0055b76: 412b0933 sub s2,s6,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:179 memcpy(&p[1], path, q - path); - c00559aa: 030010ef jal ra,c00569da + c0055b7a: 030010ef jal ra,c0056baa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:180 p[1 + q - path] = '\0'; - c00559ae: 94ca add s1,s1,s2 - c00559b0: 00048023 sb zero,0(s1) + c0055b7e: 94ca add s1,s1,s2 + c0055b80: 00048023 sb zero,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:186 if (lstat(resolved, &sb) == -1) - c00559b4: 002c addi a1,sp,8 - c00559b6: 8522 mv a0,s0 - c00559b8: 231010ef jal ra,c00573e8 - c00559bc: fdb509e3 beq a0,s11,c005598e + c0055b84: 002c addi a1,sp,8 + c0055b86: 8522 mv a0,s0 + c0055b88: 231010ef jal ra,c00575b8 + c0055b8c: fdb509e3 beq a0,s11,c0055b5e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:246 if (*q == '/' && !S_ISDIR(sb.st_mode)) - c00559c0: 000a4783 lbu a5,0(s4) - c00559c4: 4705 li a4,1 - c00559c6: f75798e3 bne a5,s5,c0055936 + c0055b90: 000a4783 lbu a5,0(s4) + c0055b94: 4705 li a4,1 + c0055b96: f75798e3 bne a5,s5,c0055b06 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:246 (discriminator 1) - c00559ca: 47c2 lw a5,16(sp) - c00559cc: 0197f7b3 and a5,a5,s9 - c00559d0: 2781 sext.w a5,a5 - c00559d2: f78782e3 beq a5,s8,c0055936 + c0055b9a: 47c2 lw a5,16(sp) + c0055b9c: 0197f7b3 and a5,a5,s9 + c0055ba0: 2781 sext.w a5,a5 + c0055ba2: f78782e3 beq a5,s8,c0055b06 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_realpath.c:248 set_errno(ENOTDIR); - c00559d6: 8fefe0ef jal ra,c0053ad4 <__errno> - c00559da: 47d1 li a5,20 - c00559dc: bf45 j c005598c + c0055ba6: 8fefe0ef jal ra,c0053ca4 <__errno> + c0055baa: 47d1 li a5,20 + c0055bac: bf45 j c0055b5c -00000000c00559de : +00000000c0055bae : strtol(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:56 * * ERANGE if the number cannot be represented using long @@ -239911,78 +240109,78 @@ strtol(): long strtol(FAR const char *nptr, FAR char **endptr, int base) { - c00559de: 7179 addi sp,sp,-48 - c00559e0: f406 sd ra,40(sp) - c00559e2: f022 sd s0,32(sp) - c00559e4: ec26 sd s1,24(sp) - c00559e6: e84a sd s2,16(sp) - c00559e8: e42a sd a0,8(sp) - c00559ea: e032 sd a2,0(sp) + c0055bae: 7179 addi sp,sp,-48 + c0055bb0: f406 sd ra,40(sp) + c0055bb2: f022 sd s0,32(sp) + c0055bb4: ec26 sd s1,24(sp) + c0055bb6: e84a sd s2,16(sp) + c0055bb8: e42a sd a0,8(sp) + c0055bba: e032 sd a2,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:61 unsigned long accum = 0; long retval = 0; char sign = 0; if (nptr) - c00559ec: c159 beqz a0,c0055a72 + c0055bbc: c159 beqz a0,c0055c42 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:65 { /* Skip leading spaces */ lib_skipspace(&nptr); - c00559ee: 0028 addi a0,sp,8 - c00559f0: 842e mv s0,a1 - c00559f2: 4e3000ef jal ra,c00566d4 + c0055bbe: 0028 addi a0,sp,8 + c0055bc0: 842e mv s0,a1 + c0055bc2: 4e3000ef jal ra,c00568a4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:69 /* Check for leading + or - */ if (*nptr == '-' || *nptr == '+') - c00559f6: 67a2 ld a5,8(sp) - c00559f8: 6602 ld a2,0(sp) - c00559fa: 0007c483 lbu s1,0(a5) - c00559fe: fd54871b addiw a4,s1,-43 - c0055a02: 0fd77713 andi a4,a4,253 - c0055a06: e71d bnez a4,c0055a34 + c0055bc6: 67a2 ld a5,8(sp) + c0055bc8: 6602 ld a2,0(sp) + c0055bca: 0007c483 lbu s1,0(a5) + c0055bce: fd54871b addiw a4,s1,-43 + c0055bd2: 0fd77713 andi a4,a4,253 + c0055bd6: e71d bnez a4,c0055c04 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:72 { sign = *nptr; nptr++; - c0055a08: 0785 addi a5,a5,1 - c0055a0a: e43e sd a5,8(sp) + c0055bd8: 0785 addi a5,a5,1 + c0055bda: e43e sd a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:77 } /* Get the unsigned value */ accum = strtoul(nptr, endptr, base); - c0055a0c: 6522 ld a0,8(sp) - c0055a0e: 85a2 mv a1,s0 - c0055a10: 066000ef jal ra,c0055a76 + c0055bdc: 6522 ld a0,8(sp) + c0055bde: 85a2 mv a1,s0 + c0055be0: 066000ef jal ra,c0055c46 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:81 /* Correct the sign of the result and check for overflow */ if (sign == '-') - c0055a14: 02d00713 li a4,45 - c0055a18: 02e49563 bne s1,a4,c0055a42 + c0055be4: 02d00713 li a4,45 + c0055be8: 02e49563 bne s1,a4,c0055c12 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:85 { const unsigned long limit = ((unsigned long)-(LONG_MIN + 1)) + 1; if (accum > limit) - c0055a1c: 597d li s2,-1 - c0055a1e: 197e slli s2,s2,0x3f - c0055a20: 00a97c63 bgeu s2,a0,c0055a38 + c0055bec: 597d li s2,-1 + c0055bee: 197e slli s2,s2,0x3f + c0055bf0: 00a97c63 bgeu s2,a0,c0055c08 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:87 { set_errno(ERANGE); - c0055a24: 8b0fe0ef jal ra,c0053ad4 <__errno> - c0055a28: 02200793 li a5,34 - c0055a2c: c11c sw a5,0(a0) + c0055bf4: 8b0fe0ef jal ra,c0053ca4 <__errno> + c0055bf8: 02200793 li a5,34 + c0055bfc: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:88 retval = LONG_MIN; - c0055a2e: 854a mv a0,s2 + c0055bfe: 854a mv a0,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:111 } } @@ -239990,48 +240188,48 @@ long strtol(FAR const char *nptr, FAR char **endptr, int base) /* Return the final pointer to the unused value */ if (endptr) - c0055a30: e405 bnez s0,c0055a58 - c0055a32: a815 j c0055a66 + c0055c00: e405 bnez s0,c0055c28 + c0055c02: a815 j c0055c36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:59 char sign = 0; - c0055a34: 4481 li s1,0 - c0055a36: bfd9 j c0055a0c + c0055c04: 4481 li s1,0 + c0055c06: bfd9 j c0055bdc /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:92 retval = (accum == limit) ? LONG_MIN : -(long)accum; - c0055a38: ff250ce3 beq a0,s2,c0055a30 + c0055c08: ff250ce3 beq a0,s2,c0055c00 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:92 (discriminator 1) - c0055a3c: 40a00533 neg a0,a0 - c0055a40: bfc5 j c0055a30 + c0055c0c: 40a00533 neg a0,a0 + c0055c10: bfc5 j c0055c00 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:97 if (accum > LONG_MAX) - c0055a42: 00055963 bgez a0,c0055a54 + c0055c12: 00055963 bgez a0,c0055c24 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:99 set_errno(ERANGE); - c0055a46: 88efe0ef jal ra,c0053ad4 <__errno> - c0055a4a: 02200793 li a5,34 - c0055a4e: c11c sw a5,0(a0) + c0055c16: 88efe0ef jal ra,c0053ca4 <__errno> + c0055c1a: 02200793 li a5,34 + c0055c1e: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:100 retval = LONG_MAX; - c0055a50: 557d li a0,-1 - c0055a52: 8105 srli a0,a0,0x1 + c0055c20: 557d li a0,-1 + c0055c22: 8105 srli a0,a0,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:111 if (endptr) - c0055a54: c809 beqz s0,c0055a66 + c0055c24: c809 beqz s0,c0055c36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:113 { if (sign) - c0055a56: c881 beqz s1,c0055a66 + c0055c26: c881 beqz s1,c0055c36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:115 { if (*((*endptr) - 1) == sign) - c0055a58: 601c ld a5,0(s0) - c0055a5a: fff7c703 lbu a4,-1(a5) - c0055a5e: 00971463 bne a4,s1,c0055a66 + c0055c28: 601c ld a5,0(s0) + c0055c2a: fff7c703 lbu a4,-1(a5) + c0055c2e: 00971463 bne a4,s1,c0055c36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:117 { (*endptr)--; - c0055a62: 17fd addi a5,a5,-1 - c0055a64: e01c sd a5,0(s0) + c0055c32: 17fd addi a5,a5,-1 + c0055c34: e01c sd a5,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:123 } } @@ -240039,20 +240237,20 @@ long strtol(FAR const char *nptr, FAR char **endptr, int base) return retval; } - c0055a66: 70a2 ld ra,40(sp) - c0055a68: 7402 ld s0,32(sp) - c0055a6a: 64e2 ld s1,24(sp) - c0055a6c: 6942 ld s2,16(sp) - c0055a6e: 6145 addi sp,sp,48 - c0055a70: 8082 ret + c0055c36: 70a2 ld ra,40(sp) + c0055c38: 7402 ld s0,32(sp) + c0055c3a: 64e2 ld s1,24(sp) + c0055c3c: 6942 ld s2,16(sp) + c0055c3e: 6145 addi sp,sp,48 + c0055c40: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:58 long retval = 0; - c0055a72: 4501 li a0,0 + c0055c42: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtol.c:122 return retval; - c0055a74: bfcd j c0055a66 + c0055c44: bfcd j c0055c36 -00000000c0055a76 : +00000000c0055c46 : strtoul(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:54 * * ERANGE if the number cannot be represented using unsigned long @@ -240061,16 +240259,16 @@ strtoul(): unsigned long strtoul(FAR const char *nptr, FAR char **endptr, int base) { - c0055a76: 711d addi sp,sp,-96 - c0055a78: e0ca sd s2,64(sp) - c0055a7a: ec86 sd ra,88(sp) - c0055a7c: e8a2 sd s0,80(sp) - c0055a7e: e4a6 sd s1,72(sp) - c0055a80: fc4e sd s3,56(sp) - c0055a82: f852 sd s4,48(sp) - c0055a84: f456 sd s5,40(sp) - c0055a86: e42a sd a0,8(sp) - c0055a88: 892e mv s2,a1 + c0055c46: 711d addi sp,sp,-96 + c0055c48: e0ca sd s2,64(sp) + c0055c4a: ec86 sd ra,88(sp) + c0055c4c: e8a2 sd s0,80(sp) + c0055c4e: e4a6 sd s1,72(sp) + c0055c50: fc4e sd s3,56(sp) + c0055c52: f852 sd s4,48(sp) + c0055c54: f456 sd s5,40(sp) + c0055c56: e42a sd a0,8(sp) + c0055c58: 892e mv s2,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:61 unsigned long limit; int value; @@ -240078,54 +240276,54 @@ unsigned long strtoul(FAR const char *nptr, FAR char **endptr, int base) char sign = 0; if (nptr) - c0055a8a: cd71 beqz a0,c0055b66 + c0055c5a: cd71 beqz a0,c0055d36 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:65 { /* Skip leading spaces */ lib_skipspace(&nptr); - c0055a8c: 0028 addi a0,sp,8 - c0055a8e: 8432 mv s0,a2 - c0055a90: 445000ef jal ra,c00566d4 + c0055c5c: 0028 addi a0,sp,8 + c0055c5e: 8432 mv s0,a2 + c0055c60: 445000ef jal ra,c00568a4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:69 /* Check for leading + or - already done for strtol */ if (*nptr == '-' || *nptr == '+') - c0055a94: 67a2 ld a5,8(sp) - c0055a96: 0007ca03 lbu s4,0(a5) - c0055a9a: fd5a071b addiw a4,s4,-43 - c0055a9e: 0fd77713 andi a4,a4,253 - c0055aa2: ef15 bnez a4,c0055ade + c0055c64: 67a2 ld a5,8(sp) + c0055c66: 0007ca03 lbu s4,0(a5) + c0055c6a: fd5a071b addiw a4,s4,-43 + c0055c6e: 0fd77713 andi a4,a4,253 + c0055c72: ef15 bnez a4,c0055cae /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:72 { sign = *nptr; nptr++; - c0055aa4: 0785 addi a5,a5,1 - c0055aa6: e43e sd a5,8(sp) + c0055c74: 0785 addi a5,a5,1 + c0055c76: e43e sd a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:77 } /* Check for unspecified or incorrect base */ base = lib_checkbase(base, &nptr); - c0055aa8: 002c addi a1,sp,8 - c0055aaa: 8522 mv a0,s0 - c0055aac: 0ff000ef jal ra,c00563aa - c0055ab0: 84aa mv s1,a0 + c0055c78: 002c addi a1,sp,8 + c0055c7a: 8522 mv a0,s0 + c0055c7c: 0ff000ef jal ra,c005657a + c0055c80: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:79 if (base < 0) - c0055ab2: 02055863 bgez a0,c0055ae2 + c0055c82: 02055863 bgez a0,c0055cb2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:81 { set_errno(EINVAL); - c0055ab6: 81efe0ef jal ra,c0053ad4 <__errno> - c0055aba: 47d9 li a5,22 - c0055abc: c11c sw a5,0(a0) + c0055c86: 81efe0ef jal ra,c0053ca4 <__errno> + c0055c8a: 47d9 li a5,22 + c0055c8c: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:82 accum = 0; - c0055abe: 4401 li s0,0 + c0055c8e: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:120 } } @@ -240133,128 +240331,128 @@ unsigned long strtoul(FAR const char *nptr, FAR char **endptr, int base) /* Return the final pointer to the unused value */ if (endptr) - c0055ac0: 06090e63 beqz s2,c0055b3c + c0055c90: 06090e63 beqz s2,c0055d0c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:122 { if (sign) - c0055ac4: 000a0963 beqz s4,c0055ad6 + c0055c94: 000a0963 beqz s4,c0055ca6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:124 { if (*(nptr - 1) == sign) - c0055ac8: 67a2 ld a5,8(sp) - c0055aca: fff7c703 lbu a4,-1(a5) - c0055ace: 01471463 bne a4,s4,c0055ad6 + c0055c98: 67a2 ld a5,8(sp) + c0055c9a: fff7c703 lbu a4,-1(a5) + c0055c9e: 01471463 bne a4,s4,c0055ca6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:126 { nptr--; - c0055ad2: 17fd addi a5,a5,-1 - c0055ad4: e43e sd a5,8(sp) + c0055ca2: 17fd addi a5,a5,-1 + c0055ca4: e43e sd a5,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:130 } } *endptr = (FAR char *)nptr; - c0055ad6: 67a2 ld a5,8(sp) - c0055ad8: 00f93023 sd a5,0(s2) + c0055ca6: 67a2 ld a5,8(sp) + c0055ca8: 00f93023 sd a5,0(s2) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:133 } return accum; - c0055adc: a085 j c0055b3c + c0055cac: a085 j c0055d0c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:59 char sign = 0; - c0055ade: 4a01 li s4,0 - c0055ae0: b7e1 j c0055aa8 + c0055cae: 4a01 li s4,0 + c0055cb0: b7e1 j c0055c78 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:86 limit = ULONG_MAX / base; - c0055ae2: 57fd li a5,-1 - c0055ae4: 02a7dab3 divu s5,a5,a0 + c0055cb2: 57fd li a5,-1 + c0055cb4: 02a7dab3 divu s5,a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:55 unsigned long accum = 0; - c0055ae8: 4401 li s0,0 + c0055cb8: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:87 last_digit = ULONG_MAX % base; - c0055aea: 02a7f7b3 remu a5,a5,a0 - c0055aee: 0007899b sext.w s3,a5 + c0055cba: 02a7f7b3 remu a5,a5,a0 + c0055cbe: 0007899b sext.w s3,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:91 while (lib_isbasedigit(*nptr, base, &value)) - c0055af2: 67a2 ld a5,8(sp) - c0055af4: 0870 addi a2,sp,28 - c0055af6: 85a6 mv a1,s1 - c0055af8: 0007c503 lbu a0,0(a5) - c0055afc: 373000ef jal ra,c005666e - c0055b00: cd11 beqz a0,c0055b1c + c0055cc2: 67a2 ld a5,8(sp) + c0055cc4: 0870 addi a2,sp,28 + c0055cc6: 85a6 mv a1,s1 + c0055cc8: 0007c503 lbu a0,0(a5) + c0055ccc: 373000ef jal ra,c005683e + c0055cd0: cd11 beqz a0,c0055cec /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:95 if (accum > limit || (accum == limit && value > last_digit)) - c0055b02: 008ae763 bltu s5,s0,c0055b10 + c0055cd2: 008ae763 bltu s5,s0,c0055ce0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:95 (discriminator 1) - c0055b06: 47f2 lw a5,28(sp) - c0055b08: 05541463 bne s0,s5,c0055b50 + c0055cd6: 47f2 lw a5,28(sp) + c0055cd8: 05541463 bne s0,s5,c0055d20 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:95 (discriminator 2) - c0055b0c: 04f9d263 bge s3,a5,c0055b50 + c0055cdc: 04f9d263 bge s3,a5,c0055d20 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:97 set_errno(ERANGE); - c0055b10: fc5fd0ef jal ra,c0053ad4 <__errno> - c0055b14: 02200793 li a5,34 - c0055b18: c11c sw a5,0(a0) + c0055ce0: fc5fd0ef jal ra,c0053ca4 <__errno> + c0055ce4: 02200793 li a5,34 + c0055ce8: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:98 accum = ULONG_MAX; - c0055b1a: 547d li s0,-1 + c0055cea: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:106 while (lib_isbasedigit(*nptr, base, &value)) - c0055b1c: 67a2 ld a5,8(sp) - c0055b1e: 0870 addi a2,sp,28 - c0055b20: 85a6 mv a1,s1 - c0055b22: 0007c503 lbu a0,0(a5) - c0055b26: 349000ef jal ra,c005666e - c0055b2a: e915 bnez a0,c0055b5e + c0055cec: 67a2 ld a5,8(sp) + c0055cee: 0870 addi a2,sp,28 + c0055cf0: 85a6 mv a1,s1 + c0055cf2: 0007c503 lbu a0,0(a5) + c0055cf6: 349000ef jal ra,c005683e + c0055cfa: e915 bnez a0,c0055d2e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:111 if (sign == '-') - c0055b2c: 02d00793 li a5,45 - c0055b30: f8fa18e3 bne s4,a5,c0055ac0 + c0055cfc: 02d00793 li a5,45 + c0055d00: f8fa18e3 bne s4,a5,c0055c90 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:113 accum = (~accum) + 1; - c0055b34: 40800433 neg s0,s0 + c0055d04: 40800433 neg s0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:120 if (endptr) - c0055b38: f80918e3 bnez s2,c0055ac8 + c0055d08: f80918e3 bnez s2,c0055c98 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:134 } - c0055b3c: 60e6 ld ra,88(sp) - c0055b3e: 8522 mv a0,s0 - c0055b40: 6446 ld s0,80(sp) - c0055b42: 64a6 ld s1,72(sp) - c0055b44: 6906 ld s2,64(sp) - c0055b46: 79e2 ld s3,56(sp) - c0055b48: 7a42 ld s4,48(sp) - c0055b4a: 7aa2 ld s5,40(sp) - c0055b4c: 6125 addi sp,sp,96 - c0055b4e: 8082 ret + c0055d0c: 60e6 ld ra,88(sp) + c0055d0e: 8522 mv a0,s0 + c0055d10: 6446 ld s0,80(sp) + c0055d12: 64a6 ld s1,72(sp) + c0055d14: 6906 ld s2,64(sp) + c0055d16: 79e2 ld s3,56(sp) + c0055d18: 7a42 ld s4,48(sp) + c0055d1a: 7aa2 ld s5,40(sp) + c0055d1c: 6125 addi sp,sp,96 + c0055d1e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:102 accum = accum * base + value; - c0055b50: 02848433 mul s0,s1,s0 - c0055b54: 943e add s0,s0,a5 + c0055d20: 02848433 mul s0,s1,s0 + c0055d24: 943e add s0,s0,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:103 nptr++; - c0055b56: 67a2 ld a5,8(sp) - c0055b58: 0785 addi a5,a5,1 - c0055b5a: e43e sd a5,8(sp) - c0055b5c: bf59 j c0055af2 + c0055d26: 67a2 ld a5,8(sp) + c0055d28: 0785 addi a5,a5,1 + c0055d2a: e43e sd a5,8(sp) + c0055d2c: bf59 j c0055cc2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:108 nptr++; - c0055b5e: 67a2 ld a5,8(sp) - c0055b60: 0785 addi a5,a5,1 - c0055b62: e43e sd a5,8(sp) - c0055b64: bf65 j c0055b1c + c0055d2e: 67a2 ld a5,8(sp) + c0055d30: 0785 addi a5,a5,1 + c0055d32: e43e sd a5,8(sp) + c0055d34: bf65 j c0055cec /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:55 unsigned long accum = 0; - c0055b66: 4401 li s0,0 + c0055d36: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtoul.c:120 if (endptr) - c0055b68: f5bd bnez a1,c0055ad6 - c0055b6a: bfc9 j c0055b3c + c0055d38: f5bd bnez a1,c0055ca6 + c0055d3a: bfc9 j c0055d0c -00000000c0055b6c : +00000000c0055d3c : ifallzero(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:161 * @@ -240263,124 +240461,124 @@ ifallzero(): static bool ifallzero(FAR char **f, bool flag) { FAR char *s = *f; - c0055b6c: 6118 ld a4,0(a0) + c0055d3c: 6118 ld a4,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:166 int c; c = shgetc(s); while (c == '0') - c0055b6e: 03000693 li a3,48 + c0055d3e: 03000693 li a3,48 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:164 c = shgetc(s); - c0055b72: 00170793 addi a5,a4,1 - c0055b76: 00074703 lbu a4,0(a4) + c0055d42: 00170793 addi a5,a4,1 + c0055d46: 00074703 lbu a4,0(a4) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:166 while (c == '0') - c0055b7a: 00d70a63 beq a4,a3,c0055b8e + c0055d4a: 00d70a63 beq a4,a3,c0055d5e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:171 { c = shgetc(s); } shunget(s); - c0055b7e: 17fd addi a5,a5,-1 + c0055d4e: 17fd addi a5,a5,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:174 if (flag) { *f = s; - c0055b80: e11c sd a5,0(a0) + c0055d50: e11c sd a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:177 } return !isdigit(c); - c0055b82: fd07071b addiw a4,a4,-48 + c0055d52: fd07071b addiw a4,a4,-48 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:178 } - c0055b86: 4525 li a0,9 - c0055b88: 00e53533 sltu a0,a0,a4 - c0055b8c: 8082 ret + c0055d56: 4525 li a0,9 + c0055d58: 00e53533 sltu a0,a0,a4 + c0055d5c: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:168 c = shgetc(s); - c0055b8e: 0785 addi a5,a5,1 - c0055b90: fff7c703 lbu a4,-1(a5) - c0055b94: b7dd j c0055b7a + c0055d5e: 0785 addi a5,a5,1 + c0055d60: fff7c703 lbu a4,-1(a5) + c0055d64: b7dd j c0055d4a -00000000c0055b96 : +00000000c0055d66 : scanexp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:113 static long_long scanexp(FAR char **f, bool flag) - c0055b96: 85aa mv a1,a0 + c0055d66: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:115 FAR char *s = *f; - c0055b98: 6108 ld a0,0(a0) + c0055d68: 6108 ld a0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:118 bool neg = 0; - c0055b9a: 4801 li a6,0 + c0055d6a: 4801 li a6,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:120 c = shgetc(s); - c0055b9c: 00054783 lbu a5,0(a0) - c0055ba0: 00150713 addi a4,a0,1 - c0055ba4: 0007869b sext.w a3,a5 + c0055d6c: 00054783 lbu a5,0(a0) + c0055d70: 00150713 addi a4,a0,1 + c0055d74: 0007869b sext.w a3,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:122 if ((c == '+' || c == '-') && isdigit(*s)) - c0055ba8: fd57879b addiw a5,a5,-43 - c0055bac: 0fd7f613 andi a2,a5,253 - c0055bb0: e205 bnez a2,c0055bd0 - c0055bb2: 00154603 lbu a2,1(a0) - c0055bb6: 47a5 li a5,9 - c0055bb8: fd06089b addiw a7,a2,-48 - c0055bbc: 0117ea63 bltu a5,a7,c0055bd0 + c0055d78: fd57879b addiw a5,a5,-43 + c0055d7c: 0fd7f613 andi a2,a5,253 + c0055d80: e205 bnez a2,c0055da0 + c0055d82: 00154603 lbu a2,1(a0) + c0055d86: 47a5 li a5,9 + c0055d88: fd06089b addiw a7,a2,-48 + c0055d8c: 0117ea63 bltu a5,a7,c0055da0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:124 neg = (c == '-'); - c0055bc0: fd368793 addi a5,a3,-45 - c0055bc4: 0017b813 seqz a6,a5 + c0055d90: fd368793 addi a5,a3,-45 + c0055d94: 0017b813 seqz a6,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:125 c = shgetc(s); - c0055bc8: 00250713 addi a4,a0,2 - c0055bcc: 0006069b sext.w a3,a2 + c0055d98: 00250713 addi a4,a0,2 + c0055d9c: 0006069b sext.w a3,a2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:118 bool neg = 0; - c0055bd0: 4501 li a0,0 + c0055da0: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:128 while (isdigit(c)) - c0055bd2: 4625 li a2,9 + c0055da2: 4625 li a2,9 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:130 y = 10 * y + c - '0'; - c0055bd4: 48a9 li a7,10 - c0055bd6: a809 j c0055be8 - c0055bd8: 031507b3 mul a5,a0,a7 + c0055da4: 48a9 li a7,10 + c0055da6: a809 j c0055db8 + c0055da8: 031507b3 mul a5,a0,a7 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:131 c = shgetc(s); - c0055bdc: 0705 addi a4,a4,1 + c0055dac: 0705 addi a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:130 y = 10 * y + c - '0'; - c0055bde: 97b6 add a5,a5,a3 + c0055dae: 97b6 add a5,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:131 c = shgetc(s); - c0055be0: fff74683 lbu a3,-1(a4) + c0055db0: fff74683 lbu a3,-1(a4) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:130 y = 10 * y + c - '0'; - c0055be4: fd078513 addi a0,a5,-48 + c0055db4: fd078513 addi a0,a5,-48 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:128 while (isdigit(c)) - c0055be8: fd06879b addiw a5,a3,-48 - c0055bec: fef676e3 bgeu a2,a5,c0055bd8 + c0055db8: fd06879b addiw a5,a3,-48 + c0055dbc: fef676e3 bgeu a2,a5,c0055da8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:134 shunget(s); - c0055bf0: 177d addi a4,a4,-1 + c0055dc0: 177d addi a4,a4,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:137 ifexist(f, s); - c0055bf2: e198 sd a4,0(a1) + c0055dc2: e198 sd a4,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:140 return neg ? -y : y; - c0055bf4: 00080463 beqz a6,c0055bfc - c0055bf8: 40a00533 neg a0,a0 + c0055dc4: 00080463 beqz a6,c0055dcc + c0055dc8: 40a00533 neg a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:141 } - c0055bfc: 8082 ret + c0055dcc: 8082 ret -00000000c0055bfe : +00000000c0055dce : strtox(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:641 * A long_double number about str @@ -240389,24 +240587,24 @@ strtox(): static long_double strtox(FAR const char *str, FAR char **endptr, int flag) { - c0055bfe: 7115 addi sp,sp,-224 - c0055c00: e9a2 sd s0,208(sp) - c0055c02: e1ca sd s2,192(sp) - c0055c04: fd4e sd s3,184(sp) - c0055c06: f952 sd s4,176(sp) - c0055c08: ed86 sd ra,216(sp) - c0055c0a: e5a6 sd s1,200(sp) - c0055c0c: f556 sd s5,168(sp) - c0055c0e: f15a sd s6,160(sp) - c0055c10: ed5e sd s7,152(sp) - c0055c12: e962 sd s8,144(sp) - c0055c14: e566 sd s9,136(sp) - c0055c16: e16a sd s10,128(sp) - c0055c18: fcee sd s11,120(sp) - c0055c1a: 8a2a mv s4,a0 - c0055c1c: 89ae mv s3,a1 - c0055c1e: 8932 mv s2,a2 - c0055c20: 842a mv s0,a0 + c0055dce: 7115 addi sp,sp,-224 + c0055dd0: e9a2 sd s0,208(sp) + c0055dd2: e1ca sd s2,192(sp) + c0055dd4: fd4e sd s3,184(sp) + c0055dd6: f952 sd s4,176(sp) + c0055dd8: ed86 sd ra,216(sp) + c0055dda: e5a6 sd s1,200(sp) + c0055ddc: f556 sd s5,168(sp) + c0055dde: f15a sd s6,160(sp) + c0055de0: ed5e sd s7,152(sp) + c0055de2: e962 sd s8,144(sp) + c0055de4: e566 sd s9,136(sp) + c0055de6: e16a sd s10,128(sp) + c0055de8: fcee sd s11,120(sp) + c0055dea: 8a2a mv s4,a0 + c0055dec: 89ae mv s3,a1 + c0055dee: 8932 mv s2,a2 + c0055df0: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:670 (discriminator 1) return 0; } @@ -240414,10 +240612,10 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) /* Skip leading whitespace */ while (isspace(*s)) - c0055c22: 00044483 lbu s1,0(s0) - c0055c26: 8526 mv a0,s1 - c0055c28: 2d2010ef jal ra,c0056efa - c0055c2c: ed41 bnez a0,c0055cc4 + c0055df2: 00044483 lbu s1,0(s0) + c0055df6: 8526 mv a0,s1 + c0055df8: 2d2010ef jal ra,c00570ca + c0055dfc: ed41 bnez a0,c0055e94 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:677 s++; } @@ -240425,12 +240623,12 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) /* Handle optional sign */ switch (*s) - c0055c2e: 02b00793 li a5,43 - c0055c32: 08f48b63 beq s1,a5,c0055cc8 - c0055c36: 02d00793 li a5,45 - c0055c3a: 4c01 li s8,0 - c0055c3c: 00f49463 bne s1,a5,c0055c44 - c0055c40: 4c05 li s8,1 + c0055dfe: 02b00793 li a5,43 + c0055e02: 08f48b63 beq s1,a5,c0055e98 + c0055e06: 02d00793 li a5,45 + c0055e0a: 4c01 li s8,0 + c0055e0c: 00f49463 bne s1,a5,c0055e14 + c0055e10: 4c05 li s8,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:683 { case '-': @@ -240438,10 +240636,10 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) case '+': s++; - c0055c42: 0405 addi s0,s0,1 + c0055e12: 0405 addi s0,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:677 switch (*s) - c0055c44: 4781 li a5,0 + c0055e14: 4781 li a5,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:689 default: @@ -240449,24 +240647,24 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) } for (i = 0; i < 8 && (*s | 32) == "infinity"[i]; i++) - c0055c46: 0001d597 auipc a1,0x1d - c0055c4a: 15a58593 addi a1,a1,346 # c0072da0 - c0055c4e: 4521 li a0,8 + c0055e16: 0001d597 auipc a1,0x1d + c0055e1a: 1ea58593 addi a1,a1,490 # c0073000 + c0055e1e: 4521 li a0,8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:689 (discriminator 3) - c0055c50: 00044703 lbu a4,0(s0) - c0055c54: 00b78633 add a2,a5,a1 - c0055c58: 00064603 lbu a2,0(a2) - c0055c5c: 02076713 ori a4,a4,32 - c0055c60: 0007869b sext.w a3,a5 - c0055c64: 06e60463 beq a2,a4,c0055ccc + c0055e20: 00044703 lbu a4,0(s0) + c0055e24: 00b78633 add a2,a5,a1 + c0055e28: 00064603 lbu a2,0(a2) + c0055e2c: 02076713 ori a4,a4,32 + c0055e30: 0007869b sext.w a3,a5 + c0055e34: 06e60463 beq a2,a4,c0055e9c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:694 { s++; } if (i == 3 || i == 8) - c0055c68: 478d li a5,3 - c0055c6a: 06f68563 beq a3,a5,c0055cd4 + c0055e38: 478d li a5,3 + c0055e3a: 06f68563 beq a3,a5,c0055ea4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:700 { ifexist(endptr, s); @@ -240474,86 +240672,86 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) } s -= i; - c0055c6e: 8c15 sub s0,s0,a3 + c0055e3e: 8c15 sub s0,s0,a3 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:701 for (i = 0; i < 3 && (*s | 32) == "nan"[i]; i++) - c0055c70: 00044783 lbu a5,0(s0) - c0055c74: 06e00713 li a4,110 - c0055c78: 0207e793 ori a5,a5,32 - c0055c7c: 62e79763 bne a5,a4,c00562aa - c0055c80: 00144703 lbu a4,1(s0) - c0055c84: 06100693 li a3,97 + c0055e40: 00044783 lbu a5,0(s0) + c0055e44: 06e00713 li a4,110 + c0055e48: 0207e793 ori a5,a5,32 + c0055e4c: 62e79763 bne a5,a4,c005647a + c0055e50: 00144703 lbu a4,1(s0) + c0055e54: 06100693 li a3,97 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:703 { s++; - c0055c88: 00140493 addi s1,s0,1 + c0055e58: 00140493 addi s1,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:701 for (i = 0; i < 3 && (*s | 32) == "nan"[i]; i++) - c0055c8c: 02076713 ori a4,a4,32 - c0055c90: 6ed71263 bne a4,a3,c0056374 - c0055c94: 00244703 lbu a4,2(s0) + c0055e5c: 02076713 ori a4,a4,32 + c0055e60: 6ed71263 bne a4,a3,c0056544 + c0055e64: 00244703 lbu a4,2(s0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:703 s++; - c0055c98: 00240493 addi s1,s0,2 + c0055e68: 00240493 addi s1,s0,2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:701 for (i = 0; i < 3 && (*s | 32) == "nan"[i]; i++) - c0055c9c: 02076713 ori a4,a4,32 - c0055ca0: 6cf71c63 bne a4,a5,c0056378 + c0055e6c: 02076713 ori a4,a4,32 + c0055e70: 6cf71c63 bne a4,a5,c0056548 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:703 (discriminator 4) s++; - c0055ca4: 040d addi s0,s0,3 + c0055e74: 040d addi s0,s0,3 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:708 (discriminator 4) } if (i == 3) { ifexist(endptr, s); - c0055ca6: 00098463 beqz s3,c0055cae + c0055e76: 00098463 beqz s3,c0055e7e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:708 (discriminator 1) - c0055caa: 0089b023 sd s0,0(s3) + c0055e7a: 0089b023 sd s0,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:709 (discriminator 3) return NAN; - c0055cae: 0001f797 auipc a5,0x1f - c0055cb2: ada7b507 fld fa0,-1318(a5) # c0074788 <_erodata+0x8> - c0055cb6: 12a57553 fmul.d fa0,fa0,fa0 - c0055cba: f20007d3 fmv.d.x fa5,zero - c0055cbe: 12f57553 fmul.d fa0,fa0,fa5 - c0055cc2: a03d j c0055cf0 + c0055e7e: 0001f797 auipc a5,0x1f + c0055e82: b6a7b507 fld fa0,-1174(a5) # c00749e8 <_erodata+0x8> + c0055e86: 12a57553 fmul.d fa0,fa0,fa0 + c0055e8a: f20007d3 fmv.d.x fa5,zero + c0055e8e: 12f57553 fmul.d fa0,fa0,fa5 + c0055e92: a03d j c0055ec0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:672 s++; - c0055cc4: 0405 addi s0,s0,1 - c0055cc6: bfb1 j c0055c22 + c0055e94: 0405 addi s0,s0,1 + c0055e96: bfb1 j c0055df2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:643 bool negative = 0; - c0055cc8: 4c01 li s8,0 - c0055cca: bfa5 j c0055c42 + c0055e98: 4c01 li s8,0 + c0055e9a: bfa5 j c0055e12 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:689 (discriminator 4) for (i = 0; i < 8 && (*s | 32) == "infinity"[i]; i++) - c0055ccc: 0785 addi a5,a5,1 + c0055e9c: 0785 addi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:691 (discriminator 4) s++; - c0055cce: 0405 addi s0,s0,1 + c0055e9e: 0405 addi s0,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:689 (discriminator 4) for (i = 0; i < 8 && (*s | 32) == "infinity"[i]; i++) - c0055cd0: f8a790e3 bne a5,a0,c0055c50 + c0055ea0: f8a790e3 bne a5,a0,c0055e20 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:696 ifexist(endptr, s); - c0055cd4: 00098463 beqz s3,c0055cdc + c0055ea4: 00098463 beqz s3,c0055eac /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:696 (discriminator 1) - c0055cd8: 0089b023 sd s0,0(s3) + c0055ea8: 0089b023 sd s0,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:697 (discriminator 3) return negative ? -INFINITY : INFINITY; - c0055cdc: 0001f797 auipc a5,0x1f - c0055ce0: aac7b507 fld fa0,-1364(a5) # c0074788 <_erodata+0x8> - c0055ce4: 12a57553 fmul.d fa0,fa0,fa0 - c0055ce8: 000c0463 beqz s8,c0055cf0 + c0055eac: 0001f797 auipc a5,0x1f + c0055eb0: b3c7b507 fld fa0,-1220(a5) # c00749e8 <_erodata+0x8> + c0055eb4: 12a57553 fmul.d fa0,fa0,fa0 + c0055eb8: 000c0463 beqz s8,c0055ec0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:697 (discriminator 1) - c0055cec: 22a51553 fneg.d fa0,fa0 + c0055ebc: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:709 (discriminator 3) return NAN; - c0055cf0: 882ad0ef jal ra,c0002d72 <__extenddftf2> - c0055cf4: 84aa mv s1,a0 - c0055cf6: 842e mv s0,a1 + c0055ec0: eb3ac0ef jal ra,c0002d72 <__extenddftf2> + c0055ec4: 84aa mv s1,a0 + c0055ec6: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:731 ifexist(endptr, (FAR char *)str); return 0; @@ -240561,1033 +240759,1033 @@ static long_double strtox(FAR const char *str, FAR char **endptr, int flag) return negative ? -y : y; } - c0055cf8: 60ee ld ra,216(sp) - c0055cfa: 85a2 mv a1,s0 - c0055cfc: 644e ld s0,208(sp) - c0055cfe: 690e ld s2,192(sp) - c0055d00: 79ea ld s3,184(sp) - c0055d02: 7a4a ld s4,176(sp) - c0055d04: 7aaa ld s5,168(sp) - c0055d06: 7b0a ld s6,160(sp) - c0055d08: 6bea ld s7,152(sp) - c0055d0a: 6c4a ld s8,144(sp) - c0055d0c: 6caa ld s9,136(sp) - c0055d0e: 6d0a ld s10,128(sp) - c0055d10: 7de6 ld s11,120(sp) - c0055d12: 8526 mv a0,s1 - c0055d14: 64ae ld s1,200(sp) - c0055d16: 612d addi sp,sp,224 - c0055d18: 8082 ret + c0055ec8: 60ee ld ra,216(sp) + c0055eca: 85a2 mv a1,s0 + c0055ecc: 644e ld s0,208(sp) + c0055ece: 690e ld s2,192(sp) + c0055ed0: 79ea ld s3,184(sp) + c0055ed2: 7a4a ld s4,176(sp) + c0055ed4: 7aaa ld s5,168(sp) + c0055ed6: 7b0a ld s6,160(sp) + c0055ed8: 6bea ld s7,152(sp) + c0055eda: 6c4a ld s8,144(sp) + c0055edc: 6caa ld s9,136(sp) + c0055ede: 6d0a ld s10,128(sp) + c0055ee0: 7de6 ld s11,120(sp) + c0055ee2: 8526 mv a0,s1 + c0055ee4: 64ae ld s1,200(sp) + c0055ee6: 612d addi sp,sp,224 + c0055ee8: 8082 ret hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:459 for (; c == '0'; c = shgetc(f)) - c0055d1a: 77c2 ld a5,48(sp) - c0055d1c: 00178693 addi a3,a5,1 - c0055d20: f836 sd a3,48(sp) - c0055d22: 0007c783 lbu a5,0(a5) + c0055eea: 77c2 ld a5,48(sp) + c0055eec: 00178693 addi a3,a5,1 + c0055ef0: f836 sd a3,48(sp) + c0055ef2: 0007c783 lbu a5,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:461 gotdig = 1; - c0055d26: 4685 li a3,1 - c0055d28: abf1 j c0056304 + c0055ef6: 4685 li a3,1 + c0055ef8: abf1 j c00564d4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:471 for (rp = 0; c == '0'; c = shgetc(f), rp--) - c0055d2a: 77c2 ld a5,48(sp) - c0055d2c: 1cfd addi s9,s9,-1 - c0055d2e: 00178693 addi a3,a5,1 - c0055d32: f836 sd a3,48(sp) - c0055d34: 0007c783 lbu a5,0(a5) + c0055efa: 77c2 ld a5,48(sp) + c0055efc: 1cfd addi s9,s9,-1 + c0055efe: 00178693 addi a3,a5,1 + c0055f02: f836 sd a3,48(sp) + c0055f04: 0007c783 lbu a5,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:473 gotdig = 1; - c0055d38: 4685 li a3,1 - c0055d3a: a3e5 j c0056322 + c0055f08: 4685 li a3,1 + c0055f0a: a3e5 j c00564f2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:443 int gotrad = 0; - c0055d3c: 4d81 li s11,0 + c0055f0c: 4d81 li s11,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:449 long_long rp = 0; - c0055d3e: 4c81 li s9,0 - c0055d40: a3e5 j c0056328 + c0055f0e: 4c81 li s9,0 + c0055f10: a3e5 j c00564f8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:479 if (c == '.') - c0055d42: 00e79f63 bne a5,a4,c0055d60 + c0055f12: 00e79f63 bne a5,a4,c0055f30 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:481 if (gotrad) - c0055d46: 0a0d9d63 bnez s11,c0055e00 - c0055d4a: 866a mv a2,s10 + c0055f16: 0a0d9d63 bnez s11,c0055fd0 + c0055f1a: 866a mv a2,s10 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:487 gotrad = 1; - c0055d4c: 4d85 li s11,1 + c0055f1c: 4d85 li s11,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:477 for (; isxdigit(c) || c == '.'; c = shgetc(f)) - c0055d4e: 77c2 ld a5,48(sp) - c0055d50: 8cea mv s9,s10 - c0055d52: 8d32 mv s10,a2 - c0055d54: 00178593 addi a1,a5,1 - c0055d58: f82e sd a1,48(sp) - c0055d5a: 0007c783 lbu a5,0(a5) - c0055d5e: a3d5 j c0056342 + c0055f1e: 77c2 ld a5,48(sp) + c0055f20: 8cea mv s9,s10 + c0055f22: 8d32 mv s10,a2 + c0055f24: 00178593 addi a1,a5,1 + c0055f28: f82e sd a1,48(sp) + c0055f2a: 0007c783 lbu a5,0(a5) + c0055f2e: a3d5 j c0056512 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:492 if (c > '9') - c0055d60: 03900713 li a4,57 - c0055d64: 02f75263 bge a4,a5,c0055d88 + c0055f30: 03900713 li a4,57 + c0055f34: 02f75263 bge a4,a5,c0055f58 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:494 d = (c | 32) + 10 - 'a'; - c0055d68: 0207e793 ori a5,a5,32 - c0055d6c: fa97879b addiw a5,a5,-87 + c0055f38: 0207e793 ori a5,a5,32 + c0055f3c: fa97879b addiw a5,a5,-87 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:501 if (dc < 8) - c0055d70: 471d li a4,7 - c0055d72: 01a74e63 blt a4,s10,c0055d8e + c0055f40: 471d li a4,7 + c0055f42: 01a74e63 blt a4,s10,c0055f5e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:503 x = x * 16 + d; - c0055d76: 0049191b slliw s2,s2,0x4 - c0055d7a: 00f9093b addw s2,s2,a5 + c0055f46: 0049191b slliw s2,s2,0x4 + c0055f4a: 00f9093b addw s2,s2,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:515 dc++; - c0055d7e: 001d0613 addi a2,s10,1 + c0055f4e: 001d0613 addi a2,s10,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:491 gotdig = 1; - c0055d82: 4685 li a3,1 + c0055f52: 4685 li a3,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:515 dc++; - c0055d84: 8d66 mv s10,s9 - c0055d86: b7e1 j c0055d4e + c0055f54: 8d66 mv s10,s9 + c0055f56: b7e1 j c0055f1e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:498 d = c - '0'; - c0055d88: fd07879b addiw a5,a5,-48 - c0055d8c: b7d5 j c0055d70 + c0055f58: fd07879b addiw a5,a5,-48 + c0055f5c: b7d5 j c0055f40 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:505 else if (dc < ldbl_mant_dig / 4 + 1) - c0055d8e: 4735 li a4,13 - c0055d90: 05a74063 blt a4,s10,c0055dd0 - c0055d94: e83e sd a5,16(sp) + c0055f5e: 4735 li a4,13 + c0055f60: 05a74063 blt a4,s10,c0055fa0 + c0055f64: e83e sd a5,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:507 y += d * (scale /= 16); - c0055d96: 0001d797 auipc a5,0x1d - c0055d9a: 04a78793 addi a5,a5,74 # c0072de0 - c0055d9e: 6390 ld a2,0(a5) - c0055da0: 6794 ld a3,8(a5) - c0055da2: 855a mv a0,s6 - c0055da4: 85de mv a1,s7 - c0055da6: 884ac0ef jal ra,c0001e2a <__multf3> - c0055daa: 67c2 ld a5,16(sp) - c0055dac: 8b2a mv s6,a0 - c0055dae: 8bae mv s7,a1 - c0055db0: 853e mv a0,a5 - c0055db2: eabac0ef jal ra,c0002c5c <__floatsitf> - c0055db6: 865a mv a2,s6 - c0055db8: 86de mv a3,s7 - c0055dba: 870ac0ef jal ra,c0001e2a <__multf3> - c0055dbe: 862a mv a2,a0 - c0055dc0: 86ae mv a3,a1 - c0055dc2: 8526 mv a0,s1 - c0055dc4: 85a2 mv a1,s0 - c0055dc6: 84aab0ef jal ra,c0000e10 <__addtf3> - c0055dca: 84aa mv s1,a0 - c0055dcc: 842e mv s0,a1 - c0055dce: bf45 j c0055d7e + c0055f66: 0001d797 auipc a5,0x1d + c0055f6a: 0da78793 addi a5,a5,218 # c0073040 + c0055f6e: 6390 ld a2,0(a5) + c0055f70: 6794 ld a3,8(a5) + c0055f72: 855a mv a0,s6 + c0055f74: 85de mv a1,s7 + c0055f76: eb5ab0ef jal ra,c0001e2a <__multf3> + c0055f7a: 67c2 ld a5,16(sp) + c0055f7c: 8b2a mv s6,a0 + c0055f7e: 8bae mv s7,a1 + c0055f80: 853e mv a0,a5 + c0055f82: cdbac0ef jal ra,c0002c5c <__floatsitf> + c0055f86: 865a mv a2,s6 + c0055f88: 86de mv a3,s7 + c0055f8a: ea1ab0ef jal ra,c0001e2a <__multf3> + c0055f8e: 862a mv a2,a0 + c0055f90: 86ae mv a3,a1 + c0055f92: 8526 mv a0,s1 + c0055f94: 85a2 mv a1,s0 + c0055f96: e7baa0ef jal ra,c0000e10 <__addtf3> + c0055f9a: 84aa mv s1,a0 + c0055f9c: 842e mv s0,a1 + c0055f9e: bf45 j c0055f4e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:509 else if (d && !gottail) - c0055dd0: d7dd beqz a5,c0055d7e - c0055dd2: 67a2 ld a5,8(sp) - c0055dd4: f7cd bnez a5,c0055d7e + c0055fa0: d7dd beqz a5,c0055f4e + c0055fa2: 67a2 ld a5,8(sp) + c0055fa4: f7cd bnez a5,c0055f4e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:511 y += 0.5 * scale; - c0055dd6: 0001d797 auipc a5,0x1d - c0055dda: 01a78793 addi a5,a5,26 # c0072df0 - c0055dde: 6390 ld a2,0(a5) - c0055de0: 6794 ld a3,8(a5) - c0055de2: 855a mv a0,s6 - c0055de4: 85de mv a1,s7 - c0055de6: 844ac0ef jal ra,c0001e2a <__multf3> - c0055dea: 862a mv a2,a0 - c0055dec: 86ae mv a3,a1 - c0055dee: 8526 mv a0,s1 - c0055df0: 85a2 mv a1,s0 - c0055df2: 81eab0ef jal ra,c0000e10 <__addtf3> + c0055fa6: 0001d797 auipc a5,0x1d + c0055faa: 0aa78793 addi a5,a5,170 # c0073050 + c0055fae: 6390 ld a2,0(a5) + c0055fb0: 6794 ld a3,8(a5) + c0055fb2: 855a mv a0,s6 + c0055fb4: 85de mv a1,s7 + c0055fb6: e75ab0ef jal ra,c0001e2a <__multf3> + c0055fba: 862a mv a2,a0 + c0055fbc: 86ae mv a3,a1 + c0055fbe: 8526 mv a0,s1 + c0055fc0: 85a2 mv a1,s0 + c0055fc2: e4faa0ef jal ra,c0000e10 <__addtf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:512 gottail = 1; - c0055df6: 4785 li a5,1 + c0055fc6: 4785 li a5,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:511 y += 0.5 * scale; - c0055df8: 84aa mv s1,a0 - c0055dfa: 842e mv s0,a1 + c0055fc8: 84aa mv s1,a0 + c0055fca: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:512 gottail = 1; - c0055dfc: e43e sd a5,8(sp) - c0055dfe: b741 j c0055d7e - c0055e00: 02e00793 li a5,46 - c0055e04: aba1 j c005635c + c0055fcc: e43e sd a5,8(sp) + c0055fce: b741 j c0055f4e + c0055fd0: 02e00793 li a5,46 + c0055fd4: aba1 j c005652c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:524 shunget(f); - c0055e06: 17f9 addi a5,a5,-2 - c0055e08: a385 j c0056368 + c0055fd6: 17f9 addi a5,a5,-2 + c0055fd8: a385 j c0056538 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:527 ifexist(endptr, f); - c0055e0a: 77c2 ld a5,48(sp) + c0055fda: 77c2 ld a5,48(sp) decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:344 ifexist(endptr, f); - c0055e0c: 00f9b023 sd a5,0(s3) - c0055e10: abb9 j c005636e + c0055fdc: 00f9b023 sd a5,0(s3) + c0055fe0: abb9 j c005653e hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:531 if (!gotrad) - c0055e12: 000d9363 bnez s11,c0055e18 - c0055e16: 8cea mv s9,s10 + c0055fe2: 000d9363 bnez s11,c0055fe8 + c0055fe6: 8cea mv s9,s10 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:536 while (dc < 8) - c0055e18: 469d li a3,7 - c0055e1a: a021 j c0055e22 + c0055fe8: 469d li a3,7 + c0055fea: a021 j c0055ff2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:538 x *= 16, dc++; - c0055e1c: 0049191b slliw s2,s2,0x4 - c0055e20: 0d05 addi s10,s10,1 + c0055fec: 0049191b slliw s2,s2,0x4 + c0055ff0: 0d05 addi s10,s10,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:536 while (dc < 8) - c0055e22: ffa6dde3 bge a3,s10,c0055e1c + c0055ff2: ffa6dde3 bge a3,s10,c0055fec /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:541 if ((c | 32) == 'p') - c0055e26: 0207e793 ori a5,a5,32 - c0055e2a: 07000713 li a4,112 - c0055e2e: 00e79963 bne a5,a4,c0055e40 + c0055ff6: 0207e793 ori a5,a5,32 + c0055ffa: 07000713 li a4,112 + c0055ffe: 00e79963 bne a5,a4,c0056010 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:543 e2 = scanexp(&f, 1); - c0055e32: 1808 addi a0,sp,48 - c0055e34: d63ff0ef jal ra,c0055b96 + c0056002: 1808 addi a0,sp,48 + c0056004: d63ff0ef jal ra,c0055d66 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:544 if (e2 == llong_min) - c0055e38: 57fd li a5,-1 - c0055e3a: 17fe slli a5,a5,0x3f - c0055e3c: 00f51663 bne a0,a5,c0055e48 + c0056008: 57fd li a5,-1 + c005600a: 17fe slli a5,a5,0x3f + c005600c: 00f51663 bne a0,a5,c0056018 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:552 shunget(f); - c0055e40: 77c2 ld a5,48(sp) + c0056010: 77c2 ld a5,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:451 long_long e2 = 0; - c0055e42: 4501 li a0,0 + c0056012: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:552 shunget(f); - c0055e44: 17fd addi a5,a5,-1 - c0055e46: f83e sd a5,48(sp) + c0056014: 17fd addi a5,a5,-1 + c0056016: f83e sd a5,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:555 ifexist(endptr, f); - c0055e48: 00098563 beqz s3,c0055e52 - c0055e4c: 77c2 ld a5,48(sp) - c0055e4e: 00f9b023 sd a5,0(s3) + c0056018: 00098563 beqz s3,c0056022 + c005601c: 77c2 ld a5,48(sp) + c005601e: 00f9b023 sd a5,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:557 if (!x) - c0055e52: 50090e63 beqz s2,c005636e + c0056022: 50090e63 beqz s2,c005653e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:556 e2 += 4 * rp - 32; - c0055e56: ff8c8993 addi s3,s9,-8 # eff8 <__clzdi2-0xbfff1008> - c0055e5a: 098a slli s3,s3,0x2 - c0055e5c: 99aa add s3,s3,a0 + c0056026: ff8c8993 addi s3,s9,-8 # eff8 <__clzdi2-0xbfff1008> + c005602a: 098a slli s3,s3,0x2 + c005602c: 99aa add s3,s3,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:562 if (e2 > -emin) - c0055e5e: 4140073b negw a4,s4 - c0055e62: 000a079b sext.w a5,s4 - c0055e66: 03375263 bge a4,s3,c0055e8a + c005602e: 4140073b negw a4,s4 + c0056032: 000a079b sext.w a5,s4 + c0056036: 03375263 bge a4,s3,c005605a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:564 set_errno(ERANGE); - c0055e6a: c6bfd0ef jal ra,c0053ad4 <__errno> - c0055e6e: 02200793 li a5,34 - c0055e72: c11c sw a5,0(a0) + c005603a: c6bfd0ef jal ra,c0053ca4 <__errno> + c005603e: 02200793 li a5,34 + c0056042: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:565 return ldbl_max * ldbl_max; - c0055e74: 0001f797 auipc a5,0x1f - c0055e78: a3c7b507 fld fa0,-1476(a5) # c00748b0 <_erodata+0x130> - c0055e7c: 12a57553 fmul.d fa0,fa0,fa0 - c0055e80: ef3ac0ef jal ra,c0002d72 <__extenddftf2> + c0056044: 0001f797 auipc a5,0x1f + c0056048: acc7b507 fld fa0,-1332(a5) # c0074b10 <_erodata+0x130> + c005604c: 12a57553 fmul.d fa0,fa0,fa0 + c0056050: d23ac0ef jal ra,c0002d72 <__extenddftf2> decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:398 return x; - c0055e84: 84aa mv s1,a0 - c0055e86: 842e mv s0,a1 - c0055e88: a291 j c0055fcc + c0056054: 84aa mv s1,a0 + c0056056: 842e mv s0,a1 + c0056058: a291 j c005619c hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:568 if (e2 < emin - 2 * ldbl_mant_dig) - c0055e8a: f967879b addiw a5,a5,-106 + c005605a: f967879b addiw a5,a5,-106 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:576 if (y >= 0.5) - c0055e8e: 0001db17 auipc s6,0x1d - c0055e92: f62b0b13 addi s6,s6,-158 # c0072df0 + c005605e: 0001db17 auipc s6,0x1d + c0056062: ff2b0b13 addi s6,s6,-14 # c0073050 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:568 if (e2 < emin - 2 * ldbl_mant_dig) - c0055e96: 04f9d663 bge s3,a5,c0055ee2 + c0056066: 04f9d663 bge s3,a5,c00560b2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:570 set_errno(ERANGE); - c0055e9a: c3bfd0ef jal ra,c0053ad4 <__errno> - c0055e9e: 02200793 li a5,34 - c0055ea2: c11c sw a5,0(a0) + c005606a: c3bfd0ef jal ra,c0053ca4 <__errno> + c005606e: 02200793 li a5,34 + c0056072: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:571 return ldbl_min * ldbl_min; - c0055ea4: a1e9 j c005636e + c0056074: a1e9 j c005653e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:576 if (y >= 0.5) - c0055ea6: 000b3603 ld a2,0(s6) - c0055eaa: 008b3683 ld a3,8(s6) - c0055eae: 8526 mv a0,s1 - c0055eb0: 85a2 mv a1,s0 + c0056076: 000b3603 ld a2,0(s6) + c005607a: 008b3683 ld a3,8(s6) + c005607e: 8526 mv a0,s1 + c0056080: 85a2 mv a1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:578 x += x + 1; - c0055eb2: 0019191b slliw s2,s2,0x1 + c0056082: 0019191b slliw s2,s2,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:576 if (y >= 0.5) - c0055eb6: ecfab0ef jal ra,c0001d84 <__getf2> - c0055eba: 10054f63 bltz a0,c0055fd8 + c0056086: cffab0ef jal ra,c0001d84 <__getf2> + c005608a: 10054f63 bltz a0,c00561a8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:579 y += y - 1; - c0055ebe: 000ab603 ld a2,0(s5) - c0055ec2: 008ab683 ld a3,8(s5) - c0055ec6: 8526 mv a0,s1 - c0055ec8: 85a2 mv a1,s0 - c0055eca: d66ac0ef jal ra,c0002430 <__subtf3> - c0055ece: 862a mv a2,a0 - c0055ed0: 86ae mv a3,a1 + c005608e: 000ab603 ld a2,0(s5) + c0056092: 008ab683 ld a3,8(s5) + c0056096: 8526 mv a0,s1 + c0056098: 85a2 mv a1,s0 + c005609a: b96ac0ef jal ra,c0002430 <__subtf3> + c005609e: 862a mv a2,a0 + c00560a0: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:578 x += x + 1; - c0055ed2: 2905 addiw s2,s2,1 + c00560a2: 2905 addiw s2,s2,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:579 y += y - 1; - c0055ed4: 8526 mv a0,s1 - c0055ed6: 85a2 mv a1,s0 + c00560a4: 8526 mv a0,s1 + c00560a6: 85a2 mv a1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:584 y += y; - c0055ed8: f39aa0ef jal ra,c0000e10 <__addtf3> - c0055edc: 84aa mv s1,a0 - c0055ede: 842e mv s0,a1 + c00560a8: d69aa0ef jal ra,c0000e10 <__addtf3> + c00560ac: 84aa mv s1,a0 + c00560ae: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:587 e2--; - c0055ee0: 19fd addi s3,s3,-1 + c00560b0: 19fd addi s3,s3,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:574 while (x < 0x80000000) - c0055ee2: fc0952e3 bgez s2,c0055ea6 + c00560b2: fc0952e3 bgez s2,c0056076 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:590 if (bits > 32 + e2 - emin) - c0055ee6: 6702 ld a4,0(sp) - c0055ee8: 02098793 addi a5,s3,32 - c0055eec: 414787b3 sub a5,a5,s4 - c0055ef0: 0001db17 auipc s6,0x1d - c0055ef4: ed0b0b13 addi s6,s6,-304 # c0072dc0 - c0055ef8: 0ee7c563 blt a5,a4,c0055fe2 - c0055efc: 4a02 lw s4,0(sp) + c00560b6: 6702 ld a4,0(sp) + c00560b8: 02098793 addi a5,s3,32 + c00560bc: 414787b3 sub a5,a5,s4 + c00560c0: 0001db17 auipc s6,0x1d + c00560c4: f60b0b13 addi s6,s6,-160 # c0073020 + c00560c8: 0ee7c563 blt a5,a4,c00561b2 + c00560cc: 4a02 lw s4,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:599 if (bits < ldbl_mant_dig) - c0055efe: 03400793 li a5,52 - c0055f02: 0f47c863 blt a5,s4,c0055ff2 + c00560ce: 03400793 li a5,52 + c00560d2: 0f47c863 blt a5,s4,c00561c2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:601 bias = scalbnx(1, 2., 32 + ldbl_mant_dig - bits - 1); - c0055f06: 05400793 li a5,84 - c0055f0a: 414787bb subw a5,a5,s4 - c0055f0e: 41f7d71b sraiw a4,a5,0x1f - c0055f12: 00f74bb3 xor s7,a4,a5 - c0055f16: 000abc83 ld s9,0(s5) - c0055f1a: 40eb8bbb subw s7,s7,a4 - c0055f1e: 000b3603 ld a2,0(s6) - c0055f22: 008b3683 ld a3,8(s6) - c0055f26: 008aba83 ld s5,8(s5) - c0055f2a: 1b82 slli s7,s7,0x20 - c0055f2c: 020bdb93 srli s7,s7,0x20 + c00560d6: 05400793 li a5,84 + c00560da: 414787bb subw a5,a5,s4 + c00560de: 41f7d71b sraiw a4,a5,0x1f + c00560e2: 00f74bb3 xor s7,a4,a5 + c00560e6: 000abc83 ld s9,0(s5) + c00560ea: 40eb8bbb subw s7,s7,a4 + c00560ee: 000b3603 ld a2,0(s6) + c00560f2: 008b3683 ld a3,8(s6) + c00560f6: 008aba83 ld s5,8(s5) + c00560fa: 1b82 slli s7,s7,0x20 + c00560fc: 020bdb93 srli s7,s7,0x20 scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:247 if (exp & 1) - c0055f30: 001bf793 andi a5,s7,1 - c0055f34: cb99 beqz a5,c0055f4a + c0056100: 001bf793 andi a5,s7,1 + c0056104: cb99 beqz a5,c005611a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:255 number *= base; - c0055f36: 8566 mv a0,s9 - c0055f38: 85d6 mv a1,s5 - c0055f3a: e432 sd a2,8(sp) - c0055f3c: e036 sd a3,0(sp) - c0055f3e: eedab0ef jal ra,c0001e2a <__multf3> - c0055f42: 6622 ld a2,8(sp) - c0055f44: 6682 ld a3,0(sp) - c0055f46: 8caa mv s9,a0 - c0055f48: 8aae mv s5,a1 + c0056106: 8566 mv a0,s9 + c0056108: 85d6 mv a1,s5 + c005610a: e432 sd a2,8(sp) + c005610c: e036 sd a3,0(sp) + c005610e: d1dab0ef jal ra,c0001e2a <__multf3> + c0056112: 6622 ld a2,8(sp) + c0056114: 6682 ld a3,0(sp) + c0056116: 8caa mv s9,a0 + c0056118: 8aae mv s5,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c0055f4a: 8532 mv a0,a2 - c0055f4c: 85b6 mv a1,a3 - c0055f4e: eddab0ef jal ra,c0001e2a <__multf3> + c005611a: 8532 mv a0,a2 + c005611c: 85b6 mv a1,a3 + c005611e: d0dab0ef jal ra,c0001e2a <__multf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:259 exp >>= 1; - c0055f52: 401bdb93 srai s7,s7,0x1 + c0056122: 401bdb93 srai s7,s7,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c0055f56: 862a mv a2,a0 - c0055f58: 86ae mv a3,a1 + c0056126: 862a mv a2,a0 + c0056128: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:245 while (exp) - c0055f5a: fc0b9be3 bnez s7,c0055f30 + c005612a: fc0b9be3 bnez s7,c0056100 hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:604 if (bits < 32 && y && !(x & 1)) - c0055f5e: 47fd li a5,31 - c0055f60: 0147cf63 blt a5,s4,c0055f7e - c0055f64: 4601 li a2,0 - c0055f66: 4681 li a3,0 - c0055f68: 8526 mv a0,s1 - c0055f6a: 85a2 mv a1,s0 - c0055f6c: d85ab0ef jal ra,c0001cf0 <__eqtf2> - c0055f70: c519 beqz a0,c0055f7e - c0055f72: 00197793 andi a5,s2,1 - c0055f76: e781 bnez a5,c0055f7e + c005612e: 47fd li a5,31 + c0056130: 0147cf63 blt a5,s4,c005614e + c0056134: 4601 li a2,0 + c0056136: 4681 li a3,0 + c0056138: 8526 mv a0,s1 + c005613a: 85a2 mv a1,s0 + c005613c: bb5ab0ef jal ra,c0001cf0 <__eqtf2> + c0056140: c519 beqz a0,c005614e + c0056142: 00197793 andi a5,s2,1 + c0056146: e781 bnez a5,c005614e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:606 x++, y = 0; - c0055f78: 2905 addiw s2,s2,1 - c0055f7a: 4481 li s1,0 - c0055f7c: 4401 li s0,0 + c0056148: 2905 addiw s2,s2,1 + c005614a: 4481 li s1,0 + c005614c: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:609 y = bias + x + y; - c0055f7e: 854a mv a0,s2 - c0055f80: d35ac0ef jal ra,c0002cb4 <__floatunsitf> - c0055f84: 8666 mv a2,s9 - c0055f86: 86d6 mv a3,s5 - c0055f88: e89aa0ef jal ra,c0000e10 <__addtf3> - c0055f8c: 8626 mv a2,s1 - c0055f8e: 86a2 mv a3,s0 - c0055f90: e81aa0ef jal ra,c0000e10 <__addtf3> + c005614e: 854a mv a0,s2 + c0056150: b65ac0ef jal ra,c0002cb4 <__floatunsitf> + c0056154: 8666 mv a2,s9 + c0056156: 86d6 mv a3,s5 + c0056158: cb9aa0ef jal ra,c0000e10 <__addtf3> + c005615c: 8626 mv a2,s1 + c005615e: 86a2 mv a3,s0 + c0056160: cb1aa0ef jal ra,c0000e10 <__addtf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:610 y -= bias; - c0055f94: 8666 mv a2,s9 - c0055f96: 86d6 mv a3,s5 - c0055f98: c98ac0ef jal ra,c0002430 <__subtf3> + c0056164: 8666 mv a2,s9 + c0056166: 86d6 mv a3,s5 + c0056168: ac8ac0ef jal ra,c0002430 <__subtf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:614 if (!y) - c0055f9c: 4601 li a2,0 - c0055f9e: 4681 li a3,0 + c005616c: 4601 li a2,0 + c005616e: 4681 li a3,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:610 y -= bias; - c0055fa0: 84aa mv s1,a0 - c0055fa2: 842e mv s0,a1 + c0056170: 84aa mv s1,a0 + c0056172: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:614 if (!y) - c0055fa4: d4dab0ef jal ra,c0001cf0 <__eqtf2> - c0055fa8: e511 bnez a0,c0055fb4 + c0056174: b7dab0ef jal ra,c0001cf0 <__eqtf2> + c0056178: e511 bnez a0,c0056184 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:616 set_errno(ERANGE); - c0055faa: b2bfd0ef jal ra,c0053ad4 <__errno> - c0055fae: 02200793 li a5,34 - c0055fb2: c11c sw a5,0(a0) + c005617a: b2bfd0ef jal ra,c0053ca4 <__errno> + c005617e: 02200793 li a5,34 + c0056182: c11c sw a5,0(a0) scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:240 if (e < 0) - c0055fb4: 43f9d793 srai a5,s3,0x3f + c0056184: 43f9d793 srai a5,s3,0x3f hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:606 x++, y = 0; - c0055fb8: 000b3603 ld a2,0(s6) - c0055fbc: 008b3683 ld a3,8(s6) - c0055fc0: 0137c933 xor s2,a5,s3 - c0055fc4: 40f90933 sub s2,s2,a5 + c0056188: 000b3603 ld a2,0(s6) + c005618c: 008b3683 ld a3,8(s6) + c0056190: 0137c933 xor s2,a5,s3 + c0056194: 40f90933 sub s2,s2,a5 scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:245 while (exp) - c0055fc8: 02091863 bnez s2,c0055ff8 + c0056198: 02091863 bnez s2,c00561c8 strtox(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:730 return negative ? -y : y; - c0055fcc: d20c06e3 beqz s8,c0055cf8 + c005619c: d20c06e3 beqz s8,c0055ec8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:730 (discriminator 1) - c0055fd0: 57fd li a5,-1 - c0055fd2: 17fe slli a5,a5,0x3f - c0055fd4: 8c3d xor s0,s0,a5 - c0055fd6: b30d j c0055cf8 + c00561a0: 57fd li a5,-1 + c00561a2: 17fe slli a5,a5,0x3f + c00561a4: 8c3d xor s0,s0,a5 + c00561a6: b30d j c0055ec8 hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:584 y += y; - c0055fd8: 8626 mv a2,s1 - c0055fda: 86a2 mv a3,s0 - c0055fdc: 8526 mv a0,s1 - c0055fde: 85a2 mv a1,s0 - c0055fe0: bde5 j c0055ed8 + c00561a8: 8626 mv a2,s1 + c00561aa: 86a2 mv a3,s0 + c00561ac: 8526 mv a0,s1 + c00561ae: 85a2 mv a1,s0 + c00561b0: bde5 j c00560a8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:592 bits = 32 + e2 - emin; - c0055fe2: 41498a3b subw s4,s3,s4 - c0055fe6: 020a0a1b addiw s4,s4,32 + c00561b2: 41498a3b subw s4,s3,s4 + c00561b6: 020a0a1b addiw s4,s4,32 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:593 if (bits < 0) - c0055fea: f00a5ae3 bgez s4,c0055efe + c00561ba: f00a5ae3 bgez s4,c00560ce /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:595 bits = 0; - c0055fee: 4a01 li s4,0 - c0055ff0: bf19 j c0055f06 + c00561be: 4a01 li s4,0 + c00561c0: bf19 j c00560d6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:448 long_double bias = 0; - c0055ff2: 4c81 li s9,0 - c0055ff4: 4a81 li s5,0 - c0055ff6: b761 j c0055f7e + c00561c2: 4c81 li s9,0 + c00561c4: 4a81 li s5,0 + c00561c6: b761 j c005614e scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:247 if (exp & 1) - c0055ff8: 00197793 andi a5,s2,1 - c0055ffc: cf89 beqz a5,c0056016 + c00561c8: 00197793 andi a5,s2,1 + c00561cc: cf89 beqz a5,c00561e6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:251 number /= base; - c0055ffe: e432 sd a2,8(sp) - c0056000: e036 sd a3,0(sp) - c0056002: 8526 mv a0,s1 - c0056004: 85a2 mv a1,s0 + c00561ce: e432 sd a2,8(sp) + c00561d0: e036 sd a3,0(sp) + c00561d2: 8526 mv a0,s1 + c00561d4: 85a2 mv a1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:249 if (e < 0) - c0056006: 0209d163 bgez s3,c0056028 + c00561d6: 0209d163 bgez s3,c00561f8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:251 number /= base; - c005600a: e36ab0ef jal ra,c0001640 <__divtf3> - c005600e: 6682 ld a3,0(sp) - c0056010: 6622 ld a2,8(sp) - c0056012: 84aa mv s1,a0 - c0056014: 842e mv s0,a1 + c00561da: c66ab0ef jal ra,c0001640 <__divtf3> + c00561de: 6682 ld a3,0(sp) + c00561e0: 6622 ld a2,8(sp) + c00561e2: 84aa mv s1,a0 + c00561e4: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c0056016: 8532 mv a0,a2 - c0056018: 85b6 mv a1,a3 - c005601a: e11ab0ef jal ra,c0001e2a <__multf3> + c00561e6: 8532 mv a0,a2 + c00561e8: 85b6 mv a1,a3 + c00561ea: c41ab0ef jal ra,c0001e2a <__multf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:259 exp >>= 1; - c005601e: 40195913 srai s2,s2,0x1 + c00561ee: 40195913 srai s2,s2,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c0056022: 862a mv a2,a0 - c0056024: 86ae mv a3,a1 - c0056026: b74d j c0055fc8 + c00561f2: 862a mv a2,a0 + c00561f4: 86ae mv a3,a1 + c00561f6: b74d j c0056198 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:255 number *= base; - c0056028: e03ab0ef jal ra,c0001e2a <__multf3> - c005602c: 6622 ld a2,8(sp) - c005602e: 6682 ld a3,0(sp) - c0056030: 84aa mv s1,a0 - c0056032: 842e mv s0,a1 - c0056034: b7cd j c0056016 + c00561f8: c33ab0ef jal ra,c0001e2a <__multf3> + c00561fc: 6622 ld a2,8(sp) + c00561fe: 6682 ld a3,0(sp) + c0056200: 84aa mv s1,a0 + c0056202: 842e mv s0,a1 + c0056204: b7cd j c00561e6 strtox(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:720 else if (isdigit(*s) || (*s == '.' && isdigit(*(s + 1)))) - c0056036: fd07871b addiw a4,a5,-48 - c005603a: 46a5 li a3,9 - c005603c: 00e6fc63 bgeu a3,a4,c0056054 + c0056206: fd07871b addiw a4,a5,-48 + c005620a: 46a5 li a3,9 + c005620c: 00e6fc63 bgeu a3,a4,c0056224 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:720 (discriminator 1) - c0056040: 02e00713 li a4,46 - c0056044: 24e79c63 bne a5,a4,c005629c + c0056210: 02e00713 li a4,46 + c0056214: 24e79c63 bne a5,a4,c005646c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:720 (discriminator 2) - c0056048: 0014c783 lbu a5,1(s1) - c005604c: fd07879b addiw a5,a5,-48 - c0056050: 24f6e663 bltu a3,a5,c005629c + c0056218: 0014c783 lbu a5,1(s1) + c005621c: fd07879b addiw a5,a5,-48 + c0056220: 24f6e663 bltu a3,a5,c005646c decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:295 const long p10s[] = - c0056054: 04000613 li a2,64 - c0056058: 00002597 auipc a1,0x2 - c005605c: 1f058593 addi a1,a1,496 # c0058248 <_srodata+0xd8> - c0056060: 1808 addi a0,sp,48 - c0056062: 179000ef jal ra,c00569da + c0056224: 04000613 li a2,64 + c0056228: 00002597 auipc a1,0x2 + c005622c: 1f058593 addi a1,a1,496 # c0058418 <_srodata+0xd8> + c0056230: 1808 addi a0,sp,48 + c0056232: 179000ef jal ra,c0056baa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:307 ifallzero(&f, 1); - c0056066: 1008 addi a0,sp,32 + c0056236: 1008 addi a0,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:301 f = ptr; - c0056068: f026 sd s1,32(sp) + c0056238: f026 sd s1,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:307 ifallzero(&f, 1); - c005606a: b03ff0ef jal ra,c0055b6c + c005623a: b03ff0ef jal ra,c0055d3c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:308 c = shgetc(f); - c005606e: 7782 ld a5,32(sp) + c005623e: 7782 ld a5,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:302 num_digit = 0; - c0056070: 4401 li s0,0 + c0056240: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:312 for (; isdigit(c); c = shgetc(f)) - c0056072: 46a5 li a3,9 + c0056242: 46a5 li a3,9 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:308 c = shgetc(f); - c0056074: 00178713 addi a4,a5,1 - c0056078: f03a sd a4,32(sp) - c005607a: 0007c703 lbu a4,0(a5) + c0056244: 00178713 addi a4,a5,1 + c0056248: f03a sd a4,32(sp) + c005624a: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:312 for (; isdigit(c); c = shgetc(f)) - c005607e: fd07061b addiw a2,a4,-48 - c0056082: 7782 ld a5,32(sp) - c0056084: 02c6f663 bgeu a3,a2,c00560b0 + c005624e: fd07061b addiw a2,a4,-48 + c0056252: 7782 ld a5,32(sp) + c0056254: 02c6f663 bgeu a3,a2,c0056280 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:317 if (c == '.') - c0056088: 02e00693 li a3,46 - c005608c: 8ca2 mv s9,s0 - c005608e: 00d71f63 bne a4,a3,c00560ac + c0056258: 02e00693 li a3,46 + c005625c: 8ca2 mv s9,s0 + c005625e: 00d71f63 bne a4,a3,c005627c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:321 if (ifallzero(&f, 1)) - c0056092: 1008 addi a0,sp,32 + c0056262: 1008 addi a0,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:319 s = f; - c0056094: f43e sd a5,40(sp) + c0056264: f43e sd a5,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:321 if (ifallzero(&f, 1)) - c0056096: ad7ff0ef jal ra,c0055b6c - c005609a: c115 beqz a0,c00560be + c0056266: ad7ff0ef jal ra,c0055d3c + c005626a: c115 beqz a0,c005628e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:323 c = shgetc(f); - c005609c: 7782 ld a5,32(sp) + c005626c: 7782 ld a5,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:324 num_digit++; - c005609e: 00140c93 addi s9,s0,1 + c005626e: 00140c93 addi s9,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:323 c = shgetc(f); - c00560a2: 00178713 addi a4,a5,1 - c00560a6: f03a sd a4,32(sp) - c00560a8: 0007c703 lbu a4,0(a5) + c0056272: 00178713 addi a4,a5,1 + c0056276: f03a sd a4,32(sp) + c0056278: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:303 num_decimal = 0; - c00560ac: 4a01 li s4,0 - c00560ae: a035 j c00560da + c005627c: 4a01 li s4,0 + c005627e: a035 j c00562aa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:312 for (; isdigit(c); c = shgetc(f)) - c00560b0: 00178713 addi a4,a5,1 - c00560b4: f03a sd a4,32(sp) - c00560b6: 0007c703 lbu a4,0(a5) + c0056280: 00178713 addi a4,a5,1 + c0056284: f03a sd a4,32(sp) + c0056286: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:314 num_digit++; - c00560ba: 0405 addi s0,s0,1 + c005628a: 0405 addi s0,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:312 for (; isdigit(c); c = shgetc(f)) - c00560bc: b7c9 j c005607e + c005628c: b7c9 j c005624e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:328 f = s; - c00560be: 77a2 ld a5,40(sp) + c005628e: 77a2 ld a5,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:330 for (; isdigit(c); c = shgetc(f)) - c00560c0: 46a5 li a3,9 + c0056290: 46a5 li a3,9 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:329 c = shgetc(f); - c00560c2: 00178713 addi a4,a5,1 - c00560c6: f03a sd a4,32(sp) - c00560c8: 0007c703 lbu a4,0(a5) + c0056292: 00178713 addi a4,a5,1 + c0056296: f03a sd a4,32(sp) + c0056298: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:330 for (; isdigit(c); c = shgetc(f)) - c00560cc: fd07061b addiw a2,a4,-48 - c00560d0: 7782 ld a5,32(sp) - c00560d2: 41940a33 sub s4,s0,s9 - c00560d6: 04c6f963 bgeu a3,a2,c0056128 + c005629c: fd07061b addiw a2,a4,-48 + c00562a0: 7782 ld a5,32(sp) + c00562a2: 41940a33 sub s4,s0,s9 + c00562a6: 04c6f963 bgeu a3,a2,c00562f8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:338 if ((c | 32) == 'e' && (isdigit(*f) || ((*f == '+' || *f == '-') && - c00560da: 02076713 ori a4,a4,32 - c00560de: 06500793 li a5,101 - c00560e2: 7682 ld a3,32(sp) - c00560e4: 04f71963 bne a4,a5,c0056136 - c00560e8: 0006c703 lbu a4,0(a3) - c00560ec: 4625 li a2,9 - c00560ee: fd07079b addiw a5,a4,-48 - c00560f2: 00f67d63 bgeu a2,a5,c005610c - c00560f6: fd57071b addiw a4,a4,-43 - c00560fa: 0fd77713 andi a4,a4,253 - c00560fe: ef05 bnez a4,c0056136 + c00562aa: 02076713 ori a4,a4,32 + c00562ae: 06500793 li a5,101 + c00562b2: 7682 ld a3,32(sp) + c00562b4: 04f71963 bne a4,a5,c0056306 + c00562b8: 0006c703 lbu a4,0(a3) + c00562bc: 4625 li a2,9 + c00562be: fd07079b addiw a5,a4,-48 + c00562c2: 00f67d63 bgeu a2,a5,c00562dc + c00562c6: fd57071b addiw a4,a4,-43 + c00562ca: 0fd77713 andi a4,a4,253 + c00562ce: ef05 bnez a4,c0056306 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:339 (isdigit(*(f + 1)))))) - c0056100: 0016c783 lbu a5,1(a3) + c00562d0: 0016c783 lbu a5,1(a3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:338 if ((c | 32) == 'e' && (isdigit(*f) || ((*f == '+' || *f == '-') && - c0056104: fd07879b addiw a5,a5,-48 - c0056108: 02f66763 bltu a2,a5,c0056136 + c00562d4: fd07879b addiw a5,a5,-48 + c00562d8: 02f66763 bltu a2,a5,c0056306 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:341 num_decimal = scanexp(&f, 1) + num_decimal; - c005610c: 1008 addi a0,sp,32 - c005610e: a89ff0ef jal ra,c0055b96 - c0056112: 9a2a add s4,s4,a0 + c00562dc: 1008 addi a0,sp,32 + c00562de: a89ff0ef jal ra,c0055d66 + c00562e2: 9a2a add s4,s4,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:342 if (num_decimal <= llong_min / 100) - c0056114: 0001e797 auipc a5,0x1e - c0056118: 7a47b783 ld a5,1956(a5) # c00748b8 <_erodata+0x138> - c005611c: 00fa5f63 bge s4,a5,c005613a + c00562e4: 0001f797 auipc a5,0x1f + c00562e8: 8347b783 ld a5,-1996(a5) # c0074b18 <_erodata+0x138> + c00562ec: 00fa5f63 bge s4,a5,c005630a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:344 ifexist(endptr, f); - c0056120: 24098763 beqz s3,c005636e - c0056124: 7782 ld a5,32(sp) - c0056126: b1dd j c0055e0c + c00562f0: 24098763 beqz s3,c005653e + c00562f4: 7782 ld a5,32(sp) + c00562f6: b1dd j c0055fdc /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:330 for (; isdigit(c); c = shgetc(f)) - c0056128: 00178713 addi a4,a5,1 - c005612c: f03a sd a4,32(sp) - c005612e: 0007c703 lbu a4,0(a5) + c00562f8: 00178713 addi a4,a5,1 + c00562fc: f03a sd a4,32(sp) + c00562fe: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:332 num_digit++; - c0056132: 0c85 addi s9,s9,1 + c0056302: 0c85 addi s9,s9,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:330 for (; isdigit(c); c = shgetc(f)) - c0056134: bf61 j c00560cc + c0056304: bf61 j c005629c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:350 shunget(f); - c0056136: 16fd addi a3,a3,-1 - c0056138: f036 sd a3,32(sp) + c0056306: 16fd addi a3,a3,-1 + c0056308: f036 sd a3,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:353 ifexist(endptr, f); - c005613a: 00098563 beqz s3,c0056144 - c005613e: 7782 ld a5,32(sp) - c0056140: 00f9b023 sd a5,0(s3) + c005630a: 00098563 beqz s3,c0056314 + c005630e: 7782 ld a5,32(sp) + c0056310: 00f9b023 sd a5,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:354 if (num_digit == 0) - c0056144: 220c8563 beqz s9,c005636e + c0056314: 220c8563 beqz s9,c005653e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:359 f = ptr; - c0056148: f026 sd s1,32(sp) + c0056318: f026 sd s1,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:364 gotrad = 0; - c005614a: 4d81 li s11,0 + c005631a: 4d81 li s11,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:361 k = 0; - c005614c: 4901 li s2,0 + c005631c: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:362 x = 0; - c005614e: 4981 li s3,0 + c005631e: 4981 li s3,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:363 y = 0.; - c0056150: 4481 li s1,0 - c0056152: 4401 li s0,0 + c0056320: 4481 li s1,0 + c0056322: 4401 li s0,0 chtou(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:201 if (isdigit(c)) - c0056154: 4d25 li s10,9 + c0056324: 4d25 li s10,9 decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:366 while (chtou(*f, 10, &x) || *f == '.') - c0056156: 02e00a93 li s5,46 + c0056326: 02e00a93 li s5,46 chtou(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:219 *number = *number * base + tmp; - c005615a: 4ba9 li s7,10 + c005632a: 4ba9 li s7,10 decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:391 y = 1000000000 * y + x; - c005615c: 0001db17 auipc s6,0x1d - c0056160: ca4b0b13 addi s6,s6,-860 # c0072e00 + c005632c: 0001db17 auipc s6,0x1d + c0056330: d34b0b13 addi s6,s6,-716 # c0073060 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:366 while (chtou(*f, 10, &x) || *f == '.') - c0056164: 7702 ld a4,32(sp) - c0056166: 00074783 lbu a5,0(a4) + c0056334: 7702 ld a4,32(sp) + c0056336: 00074783 lbu a5,0(a4) chtou(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:201 if (isdigit(c)) - c005616a: fd07861b addiw a2,a5,-48 - c005616e: 06cd6b63 bltu s10,a2,c00561e4 + c005633a: fd07861b addiw a2,a5,-48 + c005633e: 06cd6b63 bltu s10,a2,c00563b4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:214 if (tmp >= base) - c0056172: 06cd4963 blt s10,a2,c00561e4 + c0056342: 06cd4963 blt s10,a2,c00563b4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:219 *number = *number * base + tmp; - c0056176: 033b89bb mulw s3,s7,s3 - c005617a: 00c989bb addw s3,s3,a2 + c0056346: 033b89bb mulw s3,s7,s3 + c005634a: 00c989bb addw s3,s3,a2 decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:368 if (*f == '.') - c005617e: 03579663 bne a5,s5,c00561aa + c005634e: 03579663 bne a5,s5,c005637a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:370 if (gotrad) - c0056182: 000d9b63 bnez s11,c0056198 + c0056352: 000d9b63 bnez s11,c0056368 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:375 c = shgetc(f); - c0056186: 0705 addi a4,a4,1 + c0056356: 0705 addi a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:377 if (ifallzero(&s, 1)) - c0056188: 1028 addi a0,sp,40 + c0056358: 1028 addi a0,sp,40 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:375 c = shgetc(f); - c005618a: f03a sd a4,32(sp) + c005635a: f03a sd a4,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:376 s = f; - c005618c: f43a sd a4,40(sp) + c005635c: f43a sd a4,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:377 if (ifallzero(&s, 1)) - c005618e: 9dfff0ef jal ra,c0055b6c - c0056192: c539 beqz a0,c00561e0 + c005635e: 9dfff0ef jal ra,c0055d3c + c0056362: c539 beqz a0,c00563b0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:379 f = s; - c0056194: 77a2 ld a5,40(sp) - c0056196: f03e sd a5,32(sp) + c0056364: 77a2 ld a5,40(sp) + c0056366: f03e sd a5,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:396 if (num_digit < 9 && num_decimal == 0) - c0056198: 47a1 li a5,8 - c005619a: 0597c863 blt a5,s9,c00561ea - c005619e: 040a1663 bnez s4,c00561ea + c0056368: 47a1 li a5,8 + c005636a: 0597c863 blt a5,s9,c00563ba + c005636e: 040a1663 bnez s4,c00563ba /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:398 return x; - c00561a2: 854e mv a0,s3 - c00561a4: b11ac0ef jal ra,c0002cb4 <__floatunsitf> - c00561a8: b9f1 j c0055e84 + c0056372: 854e mv a0,s3 + c0056374: 941ac0ef jal ra,c0002cb4 <__floatunsitf> + c0056378: b9f1 j c0056054 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:387 f++; - c00561aa: 0705 addi a4,a4,1 - c00561ac: f03a sd a4,32(sp) + c005637a: 0705 addi a4,a4,1 + c005637c: f03a sd a4,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:388 if (++k == 9) - c00561ae: 2905 addiw s2,s2,1 - c00561b0: fba91ae3 bne s2,s10,c0056164 + c005637e: 2905 addiw s2,s2,1 + c0056380: fba91ae3 bne s2,s10,c0056334 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:391 y = 1000000000 * y + x; - c00561b4: 000b3603 ld a2,0(s6) - c00561b8: 008b3683 ld a3,8(s6) - c00561bc: 8526 mv a0,s1 - c00561be: 85a2 mv a1,s0 - c00561c0: c6bab0ef jal ra,c0001e2a <__multf3> - c00561c4: e42a sd a0,8(sp) - c00561c6: 854e mv a0,s3 - c00561c8: e02e sd a1,0(sp) - c00561ca: aebac0ef jal ra,c0002cb4 <__floatunsitf> - c00561ce: 6622 ld a2,8(sp) - c00561d0: 6682 ld a3,0(sp) + c0056384: 000b3603 ld a2,0(s6) + c0056388: 008b3683 ld a3,8(s6) + c005638c: 8526 mv a0,s1 + c005638e: 85a2 mv a1,s0 + c0056390: a9bab0ef jal ra,c0001e2a <__multf3> + c0056394: e42a sd a0,8(sp) + c0056396: 854e mv a0,s3 + c0056398: e02e sd a1,0(sp) + c005639a: 91bac0ef jal ra,c0002cb4 <__floatunsitf> + c005639e: 6622 ld a2,8(sp) + c00563a0: 6682 ld a3,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:390 k = 0; - c00561d2: 4901 li s2,0 + c00563a2: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:392 x = 0; - c00561d4: 4981 li s3,0 + c00563a4: 4981 li s3,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:391 y = 1000000000 * y + x; - c00561d6: c3baa0ef jal ra,c0000e10 <__addtf3> - c00561da: 84aa mv s1,a0 - c00561dc: 842e mv s0,a1 + c00563a6: a6baa0ef jal ra,c0000e10 <__addtf3> + c00563aa: 84aa mv s1,a0 + c00563ac: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:392 x = 0; - c00561de: b759 j c0056164 + c00563ae: b759 j c0056334 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:383 gotrad = 1; - c00561e0: 4d85 li s11,1 - c00561e2: b749 j c0056164 + c00563b0: 4d85 li s11,1 + c00563b2: b749 j c0056334 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:366 while (chtou(*f, 10, &x) || *f == '.') - c00561e4: f9578fe3 beq a5,s5,c0056182 - c00561e8: bf45 j c0056198 + c00563b4: f9578fe3 beq a5,s5,c0056352 + c00563b8: bf45 j c0056368 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:400 else if (num_digit + num_decimal > ldbl_max_10_exp) - c00561ea: 014c87b3 add a5,s9,s4 - c00561ee: 13400713 li a4,308 - c00561f2: 00f75863 bge a4,a5,c0056202 + c00563ba: 014c87b3 add a5,s9,s4 + c00563be: 13400713 li a4,308 + c00563c2: 00f75863 bge a4,a5,c00563d2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:406 set_errno(ERANGE); - c00561f6: 8dffd0ef jal ra,c0053ad4 <__errno> - c00561fa: 02200793 li a5,34 - c00561fe: c11c sw a5,0(a0) - c0056200: a029 j c005620a + c00563c6: 8dffd0ef jal ra,c0053ca4 <__errno> + c00563ca: 02200793 li a5,34 + c00563ce: c11c sw a5,0(a0) + c00563d0: a029 j c00563da /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:404 else if (num_digit + num_decimal < ldbl_min_10_exp) - c0056202: ecd00713 li a4,-307 - c0056206: fee7c8e3 blt a5,a4,c00561f6 + c00563d2: ecd00713 li a4,-307 + c00563d6: fee7c8e3 blt a5,a4,c00563c6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:409 if (k % 9) - c005620a: 47a5 li a5,9 - c005620c: 02f967bb remw a5,s2,a5 - c0056210: cb8d beqz a5,c0056242 + c00563da: 47a5 li a5,9 + c00563dc: 02f967bb remw a5,s2,a5 + c00563e0: cb8d beqz a5,c0056412 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:411 y = y * p10s[k % 9 - 1] + x; - c0056212: fff7891b addiw s2,a5,-1 - c0056216: 090e slli s2,s2,0x3 - c0056218: 189c addi a5,sp,112 - c005621a: 993e add s2,s2,a5 - c005621c: fc093503 ld a0,-64(s2) - c0056220: acfac0ef jal ra,c0002cee <__floatditf> - c0056224: 8626 mv a2,s1 - c0056226: 86a2 mv a3,s0 - c0056228: c03ab0ef jal ra,c0001e2a <__multf3> - c005622c: e42a sd a0,8(sp) - c005622e: 854e mv a0,s3 - c0056230: e02e sd a1,0(sp) - c0056232: a83ac0ef jal ra,c0002cb4 <__floatunsitf> - c0056236: 6622 ld a2,8(sp) - c0056238: 6682 ld a3,0(sp) - c005623a: bd7aa0ef jal ra,c0000e10 <__addtf3> - c005623e: 84aa mv s1,a0 - c0056240: 842e mv s0,a1 + c00563e2: fff7891b addiw s2,a5,-1 + c00563e6: 090e slli s2,s2,0x3 + c00563e8: 189c addi a5,sp,112 + c00563ea: 993e add s2,s2,a5 + c00563ec: fc093503 ld a0,-64(s2) + c00563f0: 8ffac0ef jal ra,c0002cee <__floatditf> + c00563f4: 8626 mv a2,s1 + c00563f6: 86a2 mv a3,s0 + c00563f8: a33ab0ef jal ra,c0001e2a <__multf3> + c00563fc: e42a sd a0,8(sp) + c00563fe: 854e mv a0,s3 + c0056400: e02e sd a1,0(sp) + c0056402: 8b3ac0ef jal ra,c0002cb4 <__floatunsitf> + c0056406: 6622 ld a2,8(sp) + c0056408: 6682 ld a3,0(sp) + c005640a: a07aa0ef jal ra,c0000e10 <__addtf3> + c005640e: 84aa mv s1,a0 + c0056410: 842e mv s0,a1 scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:240 if (e < 0) - c0056242: 43fa5793 srai a5,s4,0x3f - c0056246: 0147c933 xor s2,a5,s4 - c005624a: 40f90933 sub s2,s2,a5 + c0056412: 43fa5793 srai a5,s4,0x3f + c0056416: 0147c933 xor s2,a5,s4 + c005641a: 40f90933 sub s2,s2,a5 decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:363 y = 0.; - c005624e: 0001d797 auipc a5,0x1d - c0056252: b8278793 addi a5,a5,-1150 # c0072dd0 - c0056256: 6390 ld a2,0(a5) - c0056258: 6794 ld a3,8(a5) + c005641e: 0001d797 auipc a5,0x1d + c0056422: c1278793 addi a5,a5,-1006 # c0073030 + c0056426: 6390 ld a2,0(a5) + c0056428: 6794 ld a3,8(a5) scalbnx(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:245 while (exp) - c005625a: d60909e3 beqz s2,c0055fcc + c005642a: d60909e3 beqz s2,c005619c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:247 if (exp & 1) - c005625e: 00197793 andi a5,s2,1 - c0056262: cf89 beqz a5,c005627c + c005642e: 00197793 andi a5,s2,1 + c0056432: cf89 beqz a5,c005644c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:251 number /= base; - c0056264: e432 sd a2,8(sp) - c0056266: e036 sd a3,0(sp) - c0056268: 8526 mv a0,s1 - c005626a: 85a2 mv a1,s0 + c0056434: e432 sd a2,8(sp) + c0056436: e036 sd a3,0(sp) + c0056438: 8526 mv a0,s1 + c005643a: 85a2 mv a1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:249 if (e < 0) - c005626c: 020a5163 bgez s4,c005628e + c005643c: 020a5163 bgez s4,c005645e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:251 number /= base; - c0056270: bd0ab0ef jal ra,c0001640 <__divtf3> - c0056274: 6682 ld a3,0(sp) - c0056276: 6622 ld a2,8(sp) - c0056278: 84aa mv s1,a0 - c005627a: 842e mv s0,a1 + c0056440: a00ab0ef jal ra,c0001640 <__divtf3> + c0056444: 6682 ld a3,0(sp) + c0056446: 6622 ld a2,8(sp) + c0056448: 84aa mv s1,a0 + c005644a: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c005627c: 8532 mv a0,a2 - c005627e: 85b6 mv a1,a3 - c0056280: babab0ef jal ra,c0001e2a <__multf3> + c005644c: 8532 mv a0,a2 + c005644e: 85b6 mv a1,a3 + c0056450: 9dbab0ef jal ra,c0001e2a <__multf3> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:259 exp >>= 1; - c0056284: 40195913 srai s2,s2,0x1 + c0056454: 40195913 srai s2,s2,0x1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:260 base *= base; - c0056288: 862a mv a2,a0 - c005628a: 86ae mv a3,a1 - c005628c: b7f9 j c005625a + c0056458: 862a mv a2,a0 + c005645a: 86ae mv a3,a1 + c005645c: b7f9 j c005642a /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:255 number *= base; - c005628e: b9dab0ef jal ra,c0001e2a <__multf3> - c0056292: 6622 ld a2,8(sp) - c0056294: 6682 ld a3,0(sp) - c0056296: 84aa mv s1,a0 - c0056298: 842e mv s0,a1 - c005629a: b7cd j c005627c + c005645e: 9cdab0ef jal ra,c0001e2a <__multf3> + c0056462: 6622 ld a2,8(sp) + c0056464: 6682 ld a3,0(sp) + c0056466: 84aa mv s1,a0 + c0056468: 842e mv s0,a1 + c005646a: b7cd j c005644c strtox(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:726 ifexist(endptr, (FAR char *)str); - c005629c: 00098463 beqz s3,c00562a4 + c005646c: 00098463 beqz s3,c0056474 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:726 (discriminator 1) - c00562a0: 0149b023 sd s4,0(s3) + c0056470: 0149b023 sd s4,0(s3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:727 return 0; - c00562a4: 4481 li s1,0 - c00562a6: 4401 li s0,0 - c00562a8: bc81 j c0055cf8 + c0056474: 4481 li s1,0 + c0056476: 4401 li s0,0 + c0056478: bc81 j c0055ec8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:701 for (i = 0; i < 3 && (*s | 32) == "nan"[i]; i++) - c00562aa: 4781 li a5,0 - c00562ac: 84a2 mv s1,s0 + c005647a: 4781 li a5,0 + c005647c: 84a2 mv s1,s0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:714 s -= i; - c00562ae: 8c9d sub s1,s1,a5 + c005647e: 8c9d sub s1,s1,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:715 if (*s == '0' && (*(s + 1) | 32) == 'x') - c00562b0: 0004c783 lbu a5,0(s1) - c00562b4: 03000713 li a4,48 - c00562b8: d6e79fe3 bne a5,a4,c0056036 + c0056480: 0004c783 lbu a5,0(s1) + c0056484: 03000713 li a4,48 + c0056488: d6e79fe3 bne a5,a4,c0056206 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:715 (discriminator 1) - c00562bc: 0014c783 lbu a5,1(s1) - c00562c0: 07800713 li a4,120 - c00562c4: 0207e793 ori a5,a5,32 - c00562c8: d8e796e3 bne a5,a4,c0056054 - c00562cc: fff9061b addiw a2,s2,-1 - c00562d0: 1602 slli a2,a2,0x20 - c00562d2: 9201 srli a2,a2,0x20 - c00562d4: 0001e797 auipc a5,0x1e - c00562d8: 71478793 addi a5,a5,1812 # c00749e8 - c00562dc: 97b2 add a5,a5,a2 - c00562de: 00078783 lb a5,0(a5) - c00562e2: 0606 slli a2,a2,0x1 + c005648c: 0014c783 lbu a5,1(s1) + c0056490: 07800713 li a4,120 + c0056494: 0207e793 ori a5,a5,32 + c0056498: d8e796e3 bne a5,a4,c0056224 + c005649c: fff9061b addiw a2,s2,-1 + c00564a0: 1602 slli a2,a2,0x20 + c00564a2: 9201 srli a2,a2,0x20 + c00564a4: 0001e797 auipc a5,0x1e + c00564a8: 7a478793 addi a5,a5,1956 # c0074c48 + c00564ac: 97b2 add a5,a5,a2 + c00564ae: 00078783 lb a5,0(a5) + c00564b2: 0606 slli a2,a2,0x1 hexfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:444 int gotdig = 0; - c00562e4: 4681 li a3,0 - c00562e6: e03e sd a5,0(sp) - c00562e8: 0001e797 auipc a5,0x1e - c00562ec: 70878793 addi a5,a5,1800 # c00749f0 - c00562f0: 963e add a2,a2,a5 + c00564b4: 4681 li a3,0 + c00564b6: e03e sd a5,0(sp) + c00564b8: 0001e797 auipc a5,0x1e + c00564bc: 79878793 addi a5,a5,1944 # c0074c50 + c00564c0: 963e add a2,a2,a5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:455 c = shgetc(f); - c00562f2: 00348793 addi a5,s1,3 - c00562f6: f83e sd a5,48(sp) - c00562f8: 00061a03 lh s4,0(a2) - c00562fc: 0024c783 lbu a5,2(s1) + c00564c2: 00348793 addi a5,s1,3 + c00564c6: f83e sd a5,48(sp) + c00564c8: 00061a03 lh s4,0(a2) + c00564cc: 0024c783 lbu a5,2(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:459 for (; c == '0'; c = shgetc(f)) - c0056300: 03000713 li a4,48 - c0056304: a0e78be3 beq a5,a4,c0055d1a + c00564d0: 03000713 li a4,48 + c00564d4: a0e78be3 beq a5,a4,c0055eea /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:464 if (c == '.') - c0056308: 02e00713 li a4,46 - c005630c: a2e798e3 bne a5,a4,c0055d3c + c00564d8: 02e00713 li a4,46 + c00564dc: a2e798e3 bne a5,a4,c0055f0c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:467 c = shgetc(f); - c0056310: 77c2 ld a5,48(sp) + c00564e0: 77c2 ld a5,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:471 for (rp = 0; c == '0'; c = shgetc(f), rp--) - c0056312: 4c81 li s9,0 + c00564e2: 4c81 li s9,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:467 c = shgetc(f); - c0056314: 00178713 addi a4,a5,1 - c0056318: f83a sd a4,48(sp) - c005631a: 0007c783 lbu a5,0(a5) + c00564e4: 00178713 addi a4,a5,1 + c00564e8: f83a sd a4,48(sp) + c00564ea: 0007c783 lbu a5,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:471 for (rp = 0; c == '0'; c = shgetc(f), rp--) - c005631e: 03000713 li a4,48 - c0056322: a0e784e3 beq a5,a4,c0055d2a + c00564ee: 03000713 li a4,48 + c00564f2: a0e784e3 beq a5,a4,c0055efa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:466 gotrad = 1; - c0056326: 4d85 li s11,1 + c00564f6: 4d85 li s11,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:487 gotrad = 1; - c0056328: 0001da97 auipc s5,0x1d - c005632c: a88a8a93 addi s5,s5,-1400 # c0072db0 - c0056330: 000abb03 ld s6,0(s5) - c0056334: 008abb83 ld s7,8(s5) - c0056338: e402 sd zero,8(sp) - c005633a: 4d01 li s10,0 - c005633c: 4481 li s1,0 - c005633e: 4401 li s0,0 - c0056340: 4901 li s2,0 + c00564f8: 0001da97 auipc s5,0x1d + c00564fc: b18a8a93 addi s5,s5,-1256 # c0073010 + c0056500: 000abb03 ld s6,0(s5) + c0056504: 008abb83 ld s7,8(s5) + c0056508: e402 sd zero,8(sp) + c005650a: 4d01 li s10,0 + c005650c: 4481 li s1,0 + c005650e: 4401 li s0,0 + c0056510: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:477 for (; isxdigit(c) || c == '.'; c = shgetc(f)) - c0056342: 853e mv a0,a5 - c0056344: ec36 sd a3,24(sp) - c0056346: e83e sd a5,16(sp) - c0056348: 3cb000ef jal ra,c0056f12 - c005634c: 67c2 ld a5,16(sp) - c005634e: 66e2 ld a3,24(sp) + c0056512: 853e mv a0,a5 + c0056514: ec36 sd a3,24(sp) + c0056516: e83e sd a5,16(sp) + c0056518: 3cb000ef jal ra,c00570e2 + c005651c: 67c2 ld a5,16(sp) + c005651e: 66e2 ld a3,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:479 if (c == '.') - c0056350: 02e00713 li a4,46 + c0056520: 02e00713 li a4,46 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:477 for (; isxdigit(c) || c == '.'; c = shgetc(f)) - c0056354: 9e0517e3 bnez a0,c0055d42 - c0056358: 9ee787e3 beq a5,a4,c0055d46 + c0056524: 9e0517e3 bnez a0,c0055f12 + c0056528: 9ee787e3 beq a5,a4,c0055f16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:519 if (!gotdig) - c005635c: aa069be3 bnez a3,c0055e12 + c005652c: aa069be3 bnez a3,c0055fe2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:521 shunget(f); - c0056360: 77c2 ld a5,48(sp) + c0056530: 77c2 ld a5,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:522 if (gotrad) - c0056362: aa0d92e3 bnez s11,c0055e06 + c0056532: aa0d92e3 bnez s11,c0055fd6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:521 shunget(f); - c0056366: 17fd addi a5,a5,-1 + c0056536: 17fd addi a5,a5,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:524 shunget(f); - c0056368: f83e sd a5,48(sp) + c0056538: f83e sd a5,48(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:527 ifexist(endptr, f); - c005636a: aa0990e3 bnez s3,c0055e0a + c005653a: aa0990e3 bnez s3,c0055fda decfloat(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:345 return zero; - c005636e: 4481 li s1,0 - c0056370: 4401 li s0,0 - c0056372: b9a9 j c0055fcc + c005653e: 4481 li s1,0 + c0056540: 4401 li s0,0 + c0056542: b9a9 j c005619c strtox(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:701 for (i = 0; i < 3 && (*s | 32) == "nan"[i]; i++) - c0056374: 4785 li a5,1 - c0056376: bf25 j c00562ae - c0056378: 4789 li a5,2 - c005637a: bf15 j c00562ae + c0056544: 4785 li a5,1 + c0056546: bf25 j c005647e + c0056548: 4789 li a5,2 + c005654a: bf15 j c005647e -00000000c005637c : +00000000c005654c : strtof(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:753 * A float number about str @@ -241596,24 +241794,24 @@ strtof(): float strtof(FAR const char *str, FAR char **endptr) { - c005637c: 1141 addi sp,sp,-16 + c005654c: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:754 return strtox(str, endptr, 1); - c005637e: 4605 li a2,1 + c005654e: 4605 li a2,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:753 { - c0056380: e406 sd ra,8(sp) + c0056550: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:754 return strtox(str, endptr, 1); - c0056382: 87dff0ef jal ra,c0055bfe - c0056386: aafac0ef jal ra,c0002e34 <__trunctfsf2> + c0056552: 87dff0ef jal ra,c0055dce + c0056556: 8dfac0ef jal ra,c0002e34 <__trunctfsf2> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:755 } - c005638a: 60a2 ld ra,8(sp) - c005638c: 0141 addi sp,sp,16 - c005638e: 8082 ret + c005655a: 60a2 ld ra,8(sp) + c005655c: 0141 addi sp,sp,16 + c005655e: 8082 ret -00000000c0056390 : +00000000c0056560 : strtod(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:775 ****************************************************************************/ @@ -241622,24 +241820,24 @@ strtod(): double strtod(FAR const char *str, FAR char **endptr) { - c0056390: 1141 addi sp,sp,-16 + c0056560: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:776 return strtox(str, endptr, 2); - c0056392: 4609 li a2,2 + c0056562: 4609 li a2,2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:775 { - c0056394: e406 sd ra,8(sp) + c0056564: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:776 return strtox(str, endptr, 2); - c0056396: 869ff0ef jal ra,c0055bfe - c005639a: c75ac0ef jal ra,c000300e <__trunctfdf2> + c0056566: 869ff0ef jal ra,c0055dce + c005656a: aa5ac0ef jal ra,c000300e <__trunctfdf2> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:777 } - c005639e: 60a2 ld ra,8(sp) - c00563a0: 0141 addi sp,sp,16 - c00563a2: 8082 ret + c005656e: 60a2 ld ra,8(sp) + c0056570: 0141 addi sp,sp,16 + c0056572: 8082 ret -00000000c00563a4 : +00000000c0056574 : strtold(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_strtold.c:800 @@ -241648,10 +241846,10 @@ strtold(): long double strtold(FAR const char *str, FAR char **endptr) { return strtox(str, endptr, 3); - c00563a4: 460d li a2,3 - c00563a6: 859ff06f j c0055bfe + c0056574: 460d li a2,3 + c0056576: 859ff06f j c0055dce -00000000c00563aa : +00000000c005657a : lib_checkbase(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:55 * - if base is invalid (<2 or >36), return -1. @@ -241660,23 +241858,23 @@ lib_checkbase(): int lib_checkbase(int base, FAR const char **pptr) { - c00563aa: 1101 addi sp,sp,-32 - c00563ac: e426 sd s1,8(sp) - c00563ae: ec06 sd ra,24(sp) - c00563b0: e822 sd s0,16(sp) - c00563b2: e04a sd s2,0(sp) + c005657a: 1101 addi sp,sp,-32 + c005657c: e426 sd s1,8(sp) + c005657e: ec06 sd ra,24(sp) + c0056580: e822 sd s0,16(sp) + c0056582: e04a sd s2,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:56 FAR const char *ptr = *pptr; - c00563b4: 6180 ld s0,0(a1) + c0056584: 6180 ld s0,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:55 { - c00563b6: 84ae mv s1,a1 + c0056586: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:60 /* Check for unspecified base */ if (!base) - c00563b8: ed15 bnez a0,c00563f4 + c0056588: ed15 bnez a0,c00565c4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:70 /* Check for leading '0' - that would signify octal @@ -241684,14 +241882,14 @@ int lib_checkbase(int base, FAR const char **pptr) */ if (*ptr == '0') - c00563ba: 00044683 lbu a3,0(s0) - c00563be: 03000713 li a4,48 + c005658a: 00044683 lbu a3,0(s0) + c005658e: 03000713 li a4,48 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:64 base = 10; - c00563c2: 47a9 li a5,10 + c0056592: 47a9 li a5,10 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:70 if (*ptr == '0') - c00563c4: 02e69563 bne a3,a4,c00563ee + c0056594: 02e69563 bne a3,a4,c00565be /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:79 base = 8; ptr++; @@ -241699,32 +241897,32 @@ int lib_checkbase(int base, FAR const char **pptr) /* Check for hexadecimal */ if ((*ptr == 'X' || *ptr == 'x') && - c00563c8: 00144783 lbu a5,1(s0) - c00563cc: 05800713 li a4,88 + c0056598: 00144783 lbu a5,1(s0) + c005659c: 05800713 li a4,88 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:75 ptr++; - c00563d0: 00140913 addi s2,s0,1 + c00565a0: 00140913 addi s2,s0,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:79 if ((*ptr == 'X' || *ptr == 'x') && - c00563d4: 0df7f793 andi a5,a5,223 - c00563d8: 04e79e63 bne a5,a4,c0056434 + c00565a4: 0df7f793 andi a5,a5,223 + c00565a8: 04e79e63 bne a5,a4,c0056604 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:80 (discriminator 3) lib_isbasedigit(ptr[1], 16, NULL)) - c00563dc: 00244503 lbu a0,2(s0) - c00563e0: 4601 li a2,0 - c00563e2: 45c1 li a1,16 - c00563e4: 28a000ef jal ra,c005666e + c00565ac: 00244503 lbu a0,2(s0) + c00565b0: 4601 li a2,0 + c00565b2: 45c1 li a1,16 + c00565b4: 28a000ef jal ra,c005683e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:79 (discriminator 3) if ((*ptr == 'X' || *ptr == 'x') && - c00563e8: c531 beqz a0,c0056434 + c00565b8: c531 beqz a0,c0056604 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:83 { base = 16; ptr++; - c00563ea: 0409 addi s0,s0,2 + c00565ba: 0409 addi s0,s0,2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:82 base = 16; - c00563ec: 47c1 li a5,16 + c00565bc: 47c1 li a5,16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:109 return -1; /* Means incorrect base */ } @@ -241732,57 +241930,57 @@ int lib_checkbase(int base, FAR const char **pptr) /* Return the updated pointer and base */ *pptr = ptr; - c00563ee: e080 sd s0,0(s1) + c00565be: e080 sd s0,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:110 return base; - c00563f0: 853e mv a0,a5 - c00563f2: a81d j c0056428 + c00565c0: 853e mv a0,a5 + c00565c2: a81d j c00565f8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:92 else if (base == 16) - c00563f4: 4741 li a4,16 - c00563f6: 87aa mv a5,a0 - c00563f8: 02e51263 bne a0,a4,c005641c + c00565c4: 4741 li a4,16 + c00565c6: 87aa mv a5,a0 + c00565c8: 02e51263 bne a0,a4,c00565ec /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:94 if (ptr[0] == '0' && (ptr[1] == 'X' || ptr[1] == 'x')) - c00563fc: 00044683 lbu a3,0(s0) - c0056400: 03000713 li a4,48 - c0056404: fee695e3 bne a3,a4,c00563ee + c00565cc: 00044683 lbu a3,0(s0) + c00565d0: 03000713 li a4,48 + c00565d4: fee695e3 bne a3,a4,c00565be /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:94 (discriminator 1) - c0056408: 00144703 lbu a4,1(s0) - c005640c: 05800693 li a3,88 - c0056410: 0df77713 andi a4,a4,223 - c0056414: fcd71de3 bne a4,a3,c00563ee + c00565d8: 00144703 lbu a4,1(s0) + c00565dc: 05800693 li a3,88 + c00565e0: 0df77713 andi a4,a4,223 + c00565e4: fcd71de3 bne a4,a3,c00565be /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:96 ptr += 2; - c0056418: 0409 addi s0,s0,2 - c005641a: bfd1 j c00563ee + c00565e8: 0409 addi s0,s0,2 + c00565ea: bfd1 j c00565be /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:102 else if (base < 2 || base > 26) - c005641c: ffe5071b addiw a4,a0,-2 - c0056420: 46e1 li a3,24 + c00565ec: ffe5071b addiw a4,a0,-2 + c00565f0: 46e1 li a3,24 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:104 return -1; /* Means incorrect base */ - c0056422: 557d li a0,-1 + c00565f2: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:102 else if (base < 2 || base > 26) - c0056424: fce6f5e3 bgeu a3,a4,c00563ee + c00565f4: fce6f5e3 bgeu a3,a4,c00565be /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:111 } - c0056428: 60e2 ld ra,24(sp) - c005642a: 6442 ld s0,16(sp) - c005642c: 64a2 ld s1,8(sp) - c005642e: 6902 ld s2,0(sp) - c0056430: 6105 addi sp,sp,32 - c0056432: 8082 ret + c00565f8: 60e2 ld ra,24(sp) + c00565fa: 6442 ld s0,16(sp) + c00565fc: 64a2 ld s1,8(sp) + c00565fe: 6902 ld s2,0(sp) + c0056600: 6105 addi sp,sp,32 + c0056602: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:75 ptr++; - c0056434: 844a mv s0,s2 + c0056604: 844a mv s0,s2 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_checkbase.c:74 base = 8; - c0056436: 47a1 li a5,8 - c0056438: bf5d j c00563ee + c0056606: 47a1 li a5,8 + c0056608: bf5d j c00565be -00000000c005643a : +00000000c005660a : mkstemp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:63 * Otherwise, -1 is returned if no suitable file could be created. @@ -241791,16 +241989,16 @@ mkstemp(): int mkstemp(FAR char *path_template) { - c005643a: 1141 addi sp,sp,-16 - c005643c: e406 sd ra,8(sp) + c005660a: 1141 addi sp,sp,-16 + c005660c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:64 FAR char *path = mktemp(path_template); - c005643e: 3cd000ef jal ra,c005700a + c005660e: 3cd000ef jal ra,c00571da /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:67 int ret = ERROR; if (path) - c0056442: c901 beqz a0,c0056452 + c0056612: c901 beqz a0,c0056622 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:73 { ret = open(path, O_RDWR | O_CREAT | O_EXCL, 0666); @@ -241808,25 +242006,25 @@ int mkstemp(FAR char *path_template) return ret; } - c0056444: 60a2 ld ra,8(sp) + c0056614: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:69 ret = open(path, O_RDWR | O_CREAT | O_EXCL, 0666); - c0056446: 1b600613 li a2,438 - c005644a: 45bd li a1,15 + c0056616: 1b600613 li a2,438 + c005661a: 45bd li a1,15 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:73 } - c005644c: 0141 addi sp,sp,16 + c005661c: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:69 ret = open(path, O_RDWR | O_CREAT | O_EXCL, 0666); - c005644e: 05a0106f j c00574a8 + c005661e: 05a0106f j c0057678 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mkstemp.c:73 } - c0056452: 60a2 ld ra,8(sp) - c0056454: 557d li a0,-1 - c0056456: 0141 addi sp,sp,16 - c0056458: 8082 ret + c0056622: 60a2 ld ra,8(sp) + c0056624: 557d li a0,-1 + c0056626: 0141 addi sp,sp,16 + c0056628: 8082 ret -00000000c005645a : +00000000c005662a : atexit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atexit.c:188 ****************************************************************************/ @@ -241835,15 +242033,15 @@ int atexit(CODE void (*func)(void)) { return atexit_register(ATTYPE_ATEXIT, func, NULL, NULL); } - c005645a: 4501 li a0,0 - c005645c: 8082 ret + c005662a: 4501 li a0,0 + c005662c: 8082 ret -00000000c005645e : +00000000c005662e : at_quick_exit(): - c005645e: 4501 li a0,0 - c0056460: 8082 ret + c005662e: 4501 li a0,0 + c0056630: 8082 ret -00000000c0056462 : +00000000c0056632 : on_exit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atexit.c:245 @@ -241852,10 +242050,10 @@ int on_exit(CODE void (*func)(int, FAR void *), FAR void *arg) return atexit_register(ATTYPE_ONEXIT, (CODE void (*)(void))func, arg, NULL); } - c0056462: 4501 li a0,0 - c0056464: 8082 ret + c0056632: 4501 li a0,0 + c0056634: 8082 ret -00000000c0056466 <__cxa_atexit>: +00000000c0056636 <__cxa_atexit>: __cxa_atexit(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_atexit.c:270 int __cxa_atexit(CODE void (*func)(FAR void *), FAR void *arg, @@ -241864,10 +242062,10 @@ int __cxa_atexit(CODE void (*func)(FAR void *), FAR void *arg, return atexit_register(ATTYPE_CXA, (CODE void (*)(void))func, arg, dso_handle); } - c0056466: 4501 li a0,0 - c0056468: 8082 ret + c0056636: 4501 li a0,0 + c0056638: 8082 ret -00000000c005646a : +00000000c005663a : memoutstream_puts(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:39 * Name: memoutstream_puts @@ -241876,22 +242074,22 @@ memoutstream_puts(): static int memoutstream_puts(FAR struct lib_outstream_s *self, FAR const void *buf, int len) { - c005646a: 1101 addi sp,sp,-32 - c005646c: ec06 sd ra,24(sp) - c005646e: e822 sd s0,16(sp) - c0056470: e426 sd s1,8(sp) + c005663a: 1101 addi sp,sp,-32 + c005663c: ec06 sd ra,24(sp) + c005663e: e822 sd s0,16(sp) + c0056640: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:44 FAR struct lib_memoutstream_s *stream = (FAR struct lib_memoutstream_s *)self; int ncopy; DEBUGASSERT(self); - c0056472: e911 bnez a0,c0056486 - c0056474: 4601 li a2,0 - c0056476: 02c00593 li a1,44 - c005647a: 0001d517 auipc a0,0x1d - c005647e: 99650513 addi a0,a0,-1642 # c0072e10 - c0056482: d96fd0ef jal ra,c0053a18 <__assert> + c0056642: e911 bnez a0,c0056656 + c0056644: 4601 li a2,0 + c0056646: 02c00593 li a1,44 + c005664a: 0001d517 auipc a0,0x1d + c005664e: a2650513 addi a0,a0,-1498 # c0073070 + c0056652: d96fd0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:51 (discriminator 2) /* If this will not overrun the buffer, then write the character to the * buffer. Note that buflen was pre-decremented when the stream was @@ -241899,54 +242097,54 @@ static int memoutstream_puts(FAR struct lib_outstream_s *self, */ ncopy = stream->buflen - self->nput >= len ? - c0056486: 411c lw a5,0(a0) - c0056488: 7500 ld s0,40(a0) - c005648a: 84aa mv s1,a0 - c005648c: 8c1d sub s0,s0,a5 + c0056656: 411c lw a5,0(a0) + c0056658: 7500 ld s0,40(a0) + c005665a: 84aa mv s1,a0 + c005665c: 8c1d sub s0,s0,a5 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:52 (discriminator 2) len : stream->buflen - self->nput; - c005648e: 00867363 bgeu a2,s0,c0056494 - c0056492: 8432 mv s0,a2 + c005665e: 00867363 bgeu a2,s0,c0056664 + c0056662: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:51 (discriminator 2) ncopy = stream->buflen - self->nput >= len ? - c0056494: 2401 sext.w s0,s0 + c0056664: 2401 sext.w s0,s0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:53 (discriminator 2) if (ncopy > 0) - c0056496: 00805f63 blez s0,c00564b4 + c0056666: 00805f63 blez s0,c0056684 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:55 { memcpy(stream->buffer + self->nput, buf, ncopy); - c005649a: 7088 ld a0,32(s1) - c005649c: 8622 mv a2,s0 - c005649e: 953e add a0,a0,a5 - c00564a0: 53a000ef jal ra,c00569da + c005666a: 7088 ld a0,32(s1) + c005666c: 8622 mv a2,s0 + c005666e: 953e add a0,a0,a5 + c0056670: 53a000ef jal ra,c0056baa /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:56 self->nput += ncopy; - c00564a4: 409c lw a5,0(s1) - c00564a6: 0087873b addw a4,a5,s0 + c0056674: 409c lw a5,0(s1) + c0056676: 0087873b addw a4,a5,s0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:57 stream->buffer[self->nput] = '\0'; - c00564aa: 709c ld a5,32(s1) + c005667a: 709c ld a5,32(s1) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:56 self->nput += ncopy; - c00564ac: c098 sw a4,0(s1) + c005667c: c098 sw a4,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:57 stream->buffer[self->nput] = '\0'; - c00564ae: 97ba add a5,a5,a4 - c00564b0: 00078023 sb zero,0(a5) + c005667e: 97ba add a5,a5,a4 + c0056680: 00078023 sb zero,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:61 } return ncopy; } - c00564b4: 60e2 ld ra,24(sp) - c00564b6: 8522 mv a0,s0 - c00564b8: 6442 ld s0,16(sp) - c00564ba: 64a2 ld s1,8(sp) - c00564bc: 6105 addi sp,sp,32 - c00564be: 8082 ret + c0056684: 60e2 ld ra,24(sp) + c0056686: 8522 mv a0,s0 + c0056688: 6442 ld s0,16(sp) + c005668a: 64a2 ld s1,8(sp) + c005668c: 6105 addi sp,sp,32 + c005668e: 8082 ret -00000000c00564c0 : +00000000c0056690 : memoutstream_putc(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:68 /**************************************************************************** @@ -241955,27 +242153,27 @@ memoutstream_putc(): static void memoutstream_putc(FAR struct lib_outstream_s *self, int ch) { - c00564c0: 1101 addi sp,sp,-32 + c0056690: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:69 char tmp = ch; - c00564c2: 00b107a3 sb a1,15(sp) + c0056692: 00b107a3 sb a1,15(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:70 memoutstream_puts(self, &tmp, 1); - c00564c6: 4605 li a2,1 - c00564c8: 00f10593 addi a1,sp,15 + c0056696: 4605 li a2,1 + c0056698: 00f10593 addi a1,sp,15 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:68 { - c00564cc: ec06 sd ra,24(sp) + c005669c: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:70 memoutstream_puts(self, &tmp, 1); - c00564ce: f9dff0ef jal ra,c005646a + c005669e: f9dff0ef jal ra,c005663a /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:71 } - c00564d2: 60e2 ld ra,24(sp) - c00564d4: 6105 addi sp,sp,32 - c00564d6: 8082 ret + c00566a2: 60e2 ld ra,24(sp) + c00566a4: 6105 addi sp,sp,32 + c00566a6: 8082 ret -00000000c00564d8 : +00000000c00566a8 : lib_memoutstream(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:97 ****************************************************************************/ @@ -241984,42 +242182,42 @@ void lib_memoutstream(FAR struct lib_memoutstream_s *outstream, FAR char *bufstart, int buflen) { outstream->common.putc = memoutstream_putc; - c00564d8: 00000797 auipc a5,0x0 - c00564dc: fe878793 addi a5,a5,-24 # c00564c0 - c00564e0: e51c sd a5,8(a0) + c00566a8: 00000797 auipc a5,0x0 + c00566ac: fe878793 addi a5,a5,-24 # c0056690 + c00566b0: e51c sd a5,8(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:98 outstream->common.puts = memoutstream_puts; - c00564e2: 00000797 auipc a5,0x0 - c00564e6: f8878793 addi a5,a5,-120 # c005646a - c00564ea: e91c sd a5,16(a0) + c00566b2: 00000797 auipc a5,0x0 + c00566b6: f8878793 addi a5,a5,-120 # c005663a + c00566ba: e91c sd a5,16(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:102 outstream->common.flush = lib_noflush; outstream->common.nput = 0; /* Will be buffer index */ outstream->buffer = bufstart; /* Start of buffer */ outstream->buflen = buflen - 1; /* Save space for null terminator */ - c00564ec: 367d addiw a2,a2,-1 + c00566bc: 367d addiw a2,a2,-1 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:99 outstream->common.flush = lib_noflush; - c00564ee: 00000797 auipc a5,0x0 - c00564f2: 08078793 addi a5,a5,128 # c005656e - c00564f6: ed1c sd a5,24(a0) + c00566be: 00000797 auipc a5,0x0 + c00566c2: 08078793 addi a5,a5,128 # c005673e + c00566c6: ed1c sd a5,24(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:100 outstream->common.nput = 0; /* Will be buffer index */ - c00564f8: 00052023 sw zero,0(a0) + c00566c8: 00052023 sw zero,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:101 outstream->buffer = bufstart; /* Start of buffer */ - c00564fc: f10c sd a1,32(a0) + c00566cc: f10c sd a1,32(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:102 outstream->buflen = buflen - 1; /* Save space for null terminator */ - c00564fe: f510 sd a2,40(a0) + c00566ce: f510 sd a2,40(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:103 outstream->buffer[0] = '\0'; /* Start with an empty string */ - c0056500: 00058023 sb zero,0(a1) + c00566d0: 00058023 sb zero,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_memoutstream.c:104 } - c0056504: 8082 ret + c00566d4: 8082 ret -00000000c0056506 : +00000000c00566d6 : nulloutstream_puts(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:44 self->nput++; @@ -242028,66 +242226,66 @@ nulloutstream_puts(): static int nulloutstream_puts(FAR struct lib_outstream_s *self, FAR const void *buffer, int len) { - c0056506: 87aa mv a5,a0 + c00566d6: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:47 UNUSED(buffer); UNUSED(len); DEBUGASSERT(self); - c0056508: ed01 bnez a0,c0056520 + c00566d8: ed01 bnez a0,c00566f0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:44 { - c005650a: 1141 addi sp,sp,-16 + c00566da: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:47 DEBUGASSERT(self); - c005650c: 4601 li a2,0 - c005650e: 02f00593 li a1,47 - c0056512: 0001d517 auipc a0,0x1d - c0056516: 91e50513 addi a0,a0,-1762 # c0072e30 + c00566dc: 4601 li a2,0 + c00566de: 02f00593 li a1,47 + c00566e2: 0001d517 auipc a0,0x1d + c00566e6: 9ae50513 addi a0,a0,-1618 # c0073090 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:44 { - c005651a: e406 sd ra,8(sp) + c00566ea: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:47 DEBUGASSERT(self); - c005651c: cfcfd0ef jal ra,c0053a18 <__assert> + c00566ec: cfcfd0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:48 (discriminator 2) self->nput += len; - c0056520: 4398 lw a4,0(a5) - c0056522: 8532 mv a0,a2 - c0056524: 9f31 addw a4,a4,a2 - c0056526: c398 sw a4,0(a5) + c00566f0: 4398 lw a4,0(a5) + c00566f2: 8532 mv a0,a2 + c00566f4: 9f31 addw a4,a4,a2 + c00566f6: c398 sw a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:50 (discriminator 2) return len; } - c0056528: 8082 ret + c00566f8: 8082 ret -00000000c005652a : +00000000c00566fa : nulloutstream_putc(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:38 DEBUGASSERT(self); - c005652a: ed01 bnez a0,c0056542 + c00566fa: ed01 bnez a0,c0056712 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:36 { - c005652c: 1141 addi sp,sp,-16 + c00566fc: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:38 DEBUGASSERT(self); - c005652e: 4601 li a2,0 - c0056530: 02600593 li a1,38 - c0056534: 0001d517 auipc a0,0x1d - c0056538: 8fc50513 addi a0,a0,-1796 # c0072e30 + c00566fe: 4601 li a2,0 + c0056700: 02600593 li a1,38 + c0056704: 0001d517 auipc a0,0x1d + c0056708: 98c50513 addi a0,a0,-1652 # c0073090 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:36 { - c005653c: e406 sd ra,8(sp) + c005670c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:38 DEBUGASSERT(self); - c005653e: cdafd0ef jal ra,c0053a18 <__assert> + c005670e: cdafd0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:39 (discriminator 2) self->nput++; - c0056542: 411c lw a5,0(a0) - c0056544: 2785 addiw a5,a5,1 - c0056546: c11c sw a5,0(a0) - c0056548: 8082 ret + c0056712: 411c lw a5,0(a0) + c0056714: 2785 addiw a5,a5,1 + c0056716: c11c sw a5,0(a0) + c0056718: 8082 ret -00000000c005654a : +00000000c005671a : lib_nulloutstream(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:74 * @@ -242096,27 +242294,27 @@ lib_nulloutstream(): void lib_nulloutstream(FAR struct lib_outstream_s *stream) { stream->putc = nulloutstream_putc; - c005654a: 00000797 auipc a5,0x0 - c005654e: fe078793 addi a5,a5,-32 # c005652a - c0056552: e51c sd a5,8(a0) + c005671a: 00000797 auipc a5,0x0 + c005671e: fe078793 addi a5,a5,-32 # c00566fa + c0056722: e51c sd a5,8(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:75 stream->puts = nulloutstream_puts; - c0056554: 00000797 auipc a5,0x0 - c0056558: fb278793 addi a5,a5,-78 # c0056506 - c005655c: e91c sd a5,16(a0) + c0056724: 00000797 auipc a5,0x0 + c0056728: fb278793 addi a5,a5,-78 # c00566d6 + c005672c: e91c sd a5,16(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:76 stream->flush = lib_noflush; - c005655e: 00000797 auipc a5,0x0 - c0056562: 01078793 addi a5,a5,16 # c005656e - c0056566: ed1c sd a5,24(a0) + c005672e: 00000797 auipc a5,0x0 + c0056732: 01078793 addi a5,a5,16 # c005673e + c0056736: ed1c sd a5,24(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:77 stream->nput = 0; - c0056568: 00052023 sw zero,0(a0) + c0056738: 00052023 sw zero,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_nulloutstream.c:78 } - c005656c: 8082 ret + c005673c: 8082 ret -00000000c005656e : +00000000c005673e : lib_noflush(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_libnoflush.c:57 @@ -242125,10 +242323,10 @@ int lib_noflush(FAR struct lib_outstream_s *self) UNUSED(self); return OK; } - c005656e: 4501 li a0,0 - c0056570: 8082 ret + c005673e: 4501 li a0,0 + c0056740: 8082 ret -00000000c0056572 : +00000000c0056742 : stdoutstream_puts(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:74 * Name: stdoutstream_puts @@ -242137,24 +242335,24 @@ stdoutstream_puts(): static int stdoutstream_puts(FAR struct lib_outstream_s *self, FAR const void *buffer, int len) { - c0056572: 7179 addi sp,sp,-48 - c0056574: f406 sd ra,40(sp) - c0056576: f022 sd s0,32(sp) - c0056578: ec26 sd s1,24(sp) - c005657a: e84a sd s2,16(sp) - c005657c: e44e sd s3,8(sp) + c0056742: 7179 addi sp,sp,-48 + c0056744: f406 sd ra,40(sp) + c0056746: f022 sd s0,32(sp) + c0056748: ec26 sd s1,24(sp) + c005674a: e84a sd s2,16(sp) + c005674c: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:79 FAR struct lib_stdoutstream_s *stream = (FAR struct lib_stdoutstream_s *)self; int result; DEBUGASSERT(self && stream->handle); - c005657e: c519 beqz a0,c005658c + c005674e: c519 beqz a0,c005675c /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:79 (discriminator 2) - c0056580: 711c ld a5,32(a0) - c0056582: 842a mv s0,a0 - c0056584: 84ae mv s1,a1 - c0056586: 8932 mv s2,a2 + c0056750: 711c ld a5,32(a0) + c0056752: 842a mv s0,a0 + c0056754: 84ae mv s1,a1 + c0056756: 8932 mv s2,a2 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:100 (discriminator 2) /* EINTR (meaning that fputc was interrupted by a signal) is the only @@ -242162,116 +242360,116 @@ static int stdoutstream_puts(FAR struct lib_outstream_s *self, */ } while (result == -EINTR); - c0056588: 4991 li s3,4 + c0056758: 4991 li s3,4 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:79 (discriminator 2) DEBUGASSERT(self && stream->handle); - c005658a: eb91 bnez a5,c005659e + c005675a: eb91 bnez a5,c005676e /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:79 (discriminator 3) - c005658c: 4601 li a2,0 - c005658e: 04f00593 li a1,79 - c0056592: 0001d517 auipc a0,0x1d - c0056596: 8be50513 addi a0,a0,-1858 # c0072e50 - c005659a: c7efd0ef jal ra,c0053a18 <__assert> + c005675c: 4601 li a2,0 + c005675e: 04f00593 li a1,79 + c0056762: 0001d517 auipc a0,0x1d + c0056766: 94e50513 addi a0,a0,-1714 # c00730b0 + c005676a: c7efd0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:87 result = fwrite(buffer, len, 1, stream->handle); - c005659e: 7014 ld a3,32(s0) - c00565a0: 4605 li a2,1 - c00565a2: 85ca mv a1,s2 - c00565a4: 8526 mv a0,s1 - c00565a6: e25fe0ef jal ra,c00553ca - c00565aa: 2501 sext.w a0,a0 + c005676e: 7014 ld a3,32(s0) + c0056770: 4605 li a2,1 + c0056772: 85ca mv a1,s2 + c0056774: 8526 mv a0,s1 + c0056776: e25fe0ef jal ra,c005559a + c005677a: 2501 sext.w a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:88 if (result >= 0) - c00565ac: 00054c63 bltz a0,c00565c4 + c005677c: 00054c63 bltz a0,c0056794 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:90 self->nput += result; - c00565b0: 401c lw a5,0(s0) - c00565b2: 9fa9 addw a5,a5,a0 - c00565b4: c01c sw a5,0(s0) + c0056780: 401c lw a5,0(s0) + c0056782: 9fa9 addw a5,a5,a0 + c0056784: c01c sw a5,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:103 return result; } - c00565b6: 70a2 ld ra,40(sp) - c00565b8: 7402 ld s0,32(sp) - c00565ba: 64e2 ld s1,24(sp) - c00565bc: 6942 ld s2,16(sp) - c00565be: 69a2 ld s3,8(sp) - c00565c0: 6145 addi sp,sp,48 - c00565c2: 8082 ret + c0056786: 70a2 ld ra,40(sp) + c0056788: 7402 ld s0,32(sp) + c005678a: 64e2 ld s1,24(sp) + c005678c: 6942 ld s2,16(sp) + c005678e: 69a2 ld s3,8(sp) + c0056790: 6145 addi sp,sp,48 + c0056792: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:94 result = _NX_GETERRVAL(result); - c00565c4: d10fd0ef jal ra,c0053ad4 <__errno> - c00565c8: 411c lw a5,0(a0) + c0056794: d10fd0ef jal ra,c0053ca4 <__errno> + c0056798: 411c lw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:100 while (result == -EINTR); - c00565ca: fd378ae3 beq a5,s3,c005659e + c005679a: fd378ae3 beq a5,s3,c005676e /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:94 result = _NX_GETERRVAL(result); - c00565ce: 40f0053b negw a0,a5 - c00565d2: b7d5 j c00565b6 + c005679e: 40f0053b negw a0,a5 + c00567a2: b7d5 j c0056786 -00000000c00565d4 : +00000000c00567a4 : stdoutstream_putc(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:41 { - c00565d4: 7179 addi sp,sp,-48 - c00565d6: f406 sd ra,40(sp) - c00565d8: f022 sd s0,32(sp) - c00565da: ec26 sd s1,24(sp) - c00565dc: e84a sd s2,16(sp) - c00565de: e44e sd s3,8(sp) + c00567a4: 7179 addi sp,sp,-48 + c00567a6: f406 sd ra,40(sp) + c00567a8: f022 sd s0,32(sp) + c00567aa: ec26 sd s1,24(sp) + c00567ac: e84a sd s2,16(sp) + c00567ae: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:46 DEBUGASSERT(self && stream->handle); - c00565e0: c51d beqz a0,c005660e + c00567b0: c51d beqz a0,c00567de /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:46 (discriminator 2) - c00565e2: 711c ld a5,32(a0) - c00565e4: 842a mv s0,a0 - c00565e6: c785 beqz a5,c005660e - c00565e8: 84ae mv s1,a1 + c00567b2: 711c ld a5,32(a0) + c00567b4: 842a mv s0,a0 + c00567b6: c785 beqz a5,c00567de + c00567b8: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:55 if (result != EOF) - c00565ea: 59fd li s3,-1 + c00567ba: 59fd li s3,-1 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:65 while (get_errno() == EINTR); - c00565ec: 4911 li s2,4 + c00567bc: 4911 li s2,4 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:54 result = fputc(ch, stream->handle); - c00565ee: 700c ld a1,32(s0) - c00565f0: 8526 mv a0,s1 - c00565f2: 808ff0ef jal ra,c00555fa + c00567be: 700c ld a1,32(s0) + c00567c0: 8526 mv a0,s1 + c00567c2: 808ff0ef jal ra,c00557ca /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:55 if (result != EOF) - c00565f6: 03350563 beq a0,s3,c0056620 + c00567c6: 03350563 beq a0,s3,c00567f0 /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:57 self->nput++; - c00565fa: 401c lw a5,0(s0) - c00565fc: 2785 addiw a5,a5,1 - c00565fe: c01c sw a5,0(s0) + c00567ca: 401c lw a5,0(s0) + c00567cc: 2785 addiw a5,a5,1 + c00567ce: c01c sw a5,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:66 } - c0056600: 70a2 ld ra,40(sp) - c0056602: 7402 ld s0,32(sp) - c0056604: 64e2 ld s1,24(sp) - c0056606: 6942 ld s2,16(sp) - c0056608: 69a2 ld s3,8(sp) - c005660a: 6145 addi sp,sp,48 - c005660c: 8082 ret + c00567d0: 70a2 ld ra,40(sp) + c00567d2: 7402 ld s0,32(sp) + c00567d4: 64e2 ld s1,24(sp) + c00567d6: 6942 ld s2,16(sp) + c00567d8: 69a2 ld s3,8(sp) + c00567da: 6145 addi sp,sp,48 + c00567dc: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:46 (discriminator 3) DEBUGASSERT(self && stream->handle); - c005660e: 4601 li a2,0 - c0056610: 02e00593 li a1,46 - c0056614: 0001d517 auipc a0,0x1d - c0056618: 83c50513 addi a0,a0,-1988 # c0072e50 - c005661c: bfcfd0ef jal ra,c0053a18 <__assert> + c00567de: 4601 li a2,0 + c00567e0: 02e00593 li a1,46 + c00567e4: 0001d517 auipc a0,0x1d + c00567e8: 8cc50513 addi a0,a0,-1844 # c00730b0 + c00567ec: bfcfd0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:65 while (get_errno() == EINTR); - c0056620: cb4fd0ef jal ra,c0053ad4 <__errno> - c0056624: 411c lw a5,0(a0) - c0056626: fd2784e3 beq a5,s2,c00565ee - c005662a: bfd9 j c0056600 + c00567f0: cb4fd0ef jal ra,c0053ca4 <__errno> + c00567f4: 411c lw a5,0(a0) + c00567f6: fd2784e3 beq a5,s2,c00567be + c00567fa: bfd9 j c00567d0 -00000000c005662c : +00000000c00567fc : lib_stdoutstream(): /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:146 void lib_stdoutstream(FAR struct lib_stdoutstream_s *stream, @@ -242280,14 +242478,14 @@ void lib_stdoutstream(FAR struct lib_stdoutstream_s *stream, /* Select the putc operation */ stream->common.putc = stdoutstream_putc; - c005662c: 00000797 auipc a5,0x0 - c0056630: fa878793 addi a5,a5,-88 # c00565d4 - c0056634: e51c sd a5,8(a0) + c00567fc: 00000797 auipc a5,0x0 + c0056800: fa878793 addi a5,a5,-88 # c00567a4 + c0056804: e51c sd a5,8(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:147 stream->common.puts = stdoutstream_puts; - c0056636: 00000797 auipc a5,0x0 - c005663a: f3c78793 addi a5,a5,-196 # c0056572 - c005663e: e91c sd a5,16(a0) + c0056806: 00000797 auipc a5,0x0 + c005680a: f3c78793 addi a5,a5,-196 # c0056742 + c005680e: e91c sd a5,16(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:164 stream->common.flush = stdoutstream_flush; } @@ -242295,24 +242493,24 @@ void lib_stdoutstream(FAR struct lib_stdoutstream_s *stream, #endif { stream->common.flush = lib_noflush; - c0056640: 00000797 auipc a5,0x0 - c0056644: f2e78793 addi a5,a5,-210 # c005656e - c0056648: ed1c sd a5,24(a0) + c0056810: 00000797 auipc a5,0x0 + c0056814: f2e78793 addi a5,a5,-210 # c005673e + c0056818: ed1c sd a5,24(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:169 } /* Set the number of bytes put to zero and remember the handle */ stream->common.nput = 0; - c005664a: 00052023 sw zero,0(a0) + c005681a: 00052023 sw zero,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:170 stream->handle = handle; - c005664e: f10c sd a1,32(a0) + c005681e: f10c sd a1,32(a0) /Users/Luppy/riscv/nuttx/libs/libc/stream/lib_stdoutstream.c:171 } - c0056650: 8082 ret + c0056820: 8082 ret -00000000c0056652 : +00000000c0056822 : flsl(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:56 @@ -242321,18 +242519,18 @@ int flsl(long j) int ret = 0; if (j != 0) - c0056652: cd01 beqz a0,c005666a + c0056822: cd01 beqz a0,c005683a /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:53 { - c0056654: 1141 addi sp,sp,-16 - c0056656: e406 sd ra,8(sp) + c0056824: 1141 addi sp,sp,-16 + c0056826: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:61 { #ifdef CONFIG_HAVE_BUILTIN_CLZ /* Count leading zeros function can be used to implement fls. */ ret = NBITS - __builtin_clzl(j); - c0056658: 9a9a90ef jal ra,c0000000 <__clzdi2> + c0056828: fd8a90ef jal ra,c0000000 <__clzdi2> /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:78 } #endif @@ -242340,23 +242538,23 @@ int flsl(long j) return ret; } - c005665c: 60a2 ld ra,8(sp) + c005682c: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:61 ret = NBITS - __builtin_clzl(j); - c005665e: 04000793 li a5,64 - c0056662: 40a7853b subw a0,a5,a0 + c005682e: 04000793 li a5,64 + c0056832: 40a7853b subw a0,a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:78 } - c0056666: 0141 addi sp,sp,16 - c0056668: 8082 ret + c0056836: 0141 addi sp,sp,16 + c0056838: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:54 int ret = 0; - c005666a: 4501 li a0,0 + c005683a: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_flsl.c:78 } - c005666c: 8082 ret + c005683c: 8082 ret -00000000c005666e : +00000000c005683e : lib_isbasedigit(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:56 bool lib_isbasedigit(int ch, int base, int *value) @@ -242365,20 +242563,20 @@ bool lib_isbasedigit(int ch, int base, int *value) int tmp = 0; if (base <= 10) - c005666e: 47a9 li a5,10 - c0056670: 02b7c063 blt a5,a1,c0056690 + c005683e: 47a9 li a5,10 + c0056840: 02b7c063 blt a5,a1,c0056860 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:58 { if (ch >= '0' && ch <= base + '0' - 1) - c0056674: 02f00793 li a5,47 - c0056678: 04a7db63 bge a5,a0,c00566ce + c0056844: 02f00793 li a5,47 + c0056848: 04a7db63 bge a5,a0,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:58 (discriminator 1) - c005667c: 02f5859b addiw a1,a1,47 - c0056680: 04a5c763 blt a1,a0,c00566ce + c005684c: 02f5859b addiw a1,a1,47 + c0056850: 04a5c763 blt a1,a0,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:60 { tmp = ch - '0'; - c0056684: fd05079b addiw a5,a0,-48 + c0056854: fd05079b addiw a5,a0,-48 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:79 ret = true; } @@ -242386,65 +242584,65 @@ bool lib_isbasedigit(int ch, int base, int *value) { tmp = ch - 'A' + 10; ret = true; - c0056688: 4505 li a0,1 + c0056858: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:83 } } if (value) - c005668a: c211 beqz a2,c005668e + c005685a: c211 beqz a2,c005685e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:85 { *value = tmp; - c005668c: c21c sw a5,0(a2) + c005685c: c21c sw a5,0(a2) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:89 } return ret; } - c005668e: 8082 ret + c005685e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:64 else if (base <= 36) - c0056690: 02400793 li a5,36 - c0056694: 02b7cd63 blt a5,a1,c00566ce + c0056860: 02400793 li a5,36 + c0056864: 02b7cd63 blt a5,a1,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:66 if (ch >= '0' && ch <= '9') - c0056698: fd05079b addiw a5,a0,-48 - c005669c: 4725 li a4,9 - c005669e: fef773e3 bgeu a4,a5,c0056684 + c0056868: fd05079b addiw a5,a0,-48 + c005686c: 4725 li a4,9 + c005686e: fef773e3 bgeu a4,a5,c0056854 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:71 else if (ch >= 'a' && ch <= 'a' + base - 11) - c00566a2: 06000793 li a5,96 - c00566a6: 00a7d963 bge a5,a0,c00566b8 + c0056872: 06000793 li a5,96 + c0056876: 00a7d963 bge a5,a0,c0056888 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:71 (discriminator 1) - c00566aa: 0565859b addiw a1,a1,86 - c00566ae: 02a5c063 blt a1,a0,c00566ce + c005687a: 0565859b addiw a1,a1,86 + c005687e: 02a5c063 blt a1,a0,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:73 tmp = ch - 'a' + 10; - c00566b2: fa95079b addiw a5,a0,-87 + c0056882: fa95079b addiw a5,a0,-87 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:74 ret = true; - c00566b6: bfc9 j c0056688 + c0056886: bfc9 j c0056858 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:76 else if (ch >= 'A' && ch <= 'A' + base - 11) - c00566b8: 04000793 li a5,64 - c00566bc: 00a7d963 bge a5,a0,c00566ce + c0056888: 04000793 li a5,64 + c005688c: 00a7d963 bge a5,a0,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:76 (discriminator 1) - c00566c0: 0365859b addiw a1,a1,54 - c00566c4: 00a5c563 blt a1,a0,c00566ce + c0056890: 0365859b addiw a1,a1,54 + c0056894: 00a5c563 blt a1,a0,c005689e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:78 tmp = ch - 'A' + 10; - c00566c8: fc95079b addiw a5,a0,-55 - c00566cc: bf75 j c0056688 + c0056898: fc95079b addiw a5,a0,-55 + c005689c: bf75 j c0056858 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:54 int tmp = 0; - c00566ce: 4781 li a5,0 + c005689e: 4781 li a5,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_isbasedigit.c:53 bool ret = false; - c00566d0: 4501 li a0,0 - c00566d2: bf65 j c005668a + c00568a0: 4501 li a0,0 + c00568a2: bf65 j c005685a -00000000c00566d4 : +00000000c00568a4 : lib_skipspace(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:48 * Skip over leading whitespace @@ -242453,37 +242651,37 @@ lib_skipspace(): void lib_skipspace(FAR const char **pptr) { - c00566d4: 1101 addi sp,sp,-32 - c00566d6: e822 sd s0,16(sp) - c00566d8: ec06 sd ra,24(sp) - c00566da: e426 sd s1,8(sp) + c00568a4: 1101 addi sp,sp,-32 + c00568a6: e822 sd s0,16(sp) + c00568a8: ec06 sd ra,24(sp) + c00568aa: e426 sd s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:49 FAR const char *ptr = *pptr; - c00566dc: 6104 ld s1,0(a0) + c00568ac: 6104 ld s1,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:48 { - c00566de: 842a mv s0,a0 + c00568ae: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:50 (discriminator 1) while (isspace(*ptr)) ptr++; - c00566e0: 0004c503 lbu a0,0(s1) - c00566e4: 017000ef jal ra,c0056efa - c00566e8: e519 bnez a0,c00566f6 + c00568b0: 0004c503 lbu a0,0(s1) + c00568b4: 017000ef jal ra,c00570ca + c00568b8: e519 bnez a0,c00568c6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:51 *pptr = ptr; - c00566ea: e004 sd s1,0(s0) + c00568ba: e004 sd s1,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:52 } - c00566ec: 60e2 ld ra,24(sp) - c00566ee: 6442 ld s0,16(sp) - c00566f0: 64a2 ld s1,8(sp) - c00566f2: 6105 addi sp,sp,32 - c00566f4: 8082 ret + c00568bc: 60e2 ld ra,24(sp) + c00568be: 6442 ld s0,16(sp) + c00568c0: 64a2 ld s1,8(sp) + c00568c2: 6105 addi sp,sp,32 + c00568c4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_skipspace.c:50 (discriminator 2) while (isspace(*ptr)) ptr++; - c00566f6: 0485 addi s1,s1,1 - c00566f8: b7e5 j c00566e0 + c00568c6: 0485 addi s1,s1,1 + c00568c8: b7e5 j c00568b0 -00000000c00566fa : +00000000c00568ca : strcat(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:38 ****************************************************************************/ @@ -242492,47 +242690,47 @@ strcat(): #undef strcat /* See mm/README.txt */ FAR char *strcat(FAR char *dest, FAR const char *src) { - c00566fa: 1101 addi sp,sp,-32 - c00566fc: e822 sd s0,16(sp) - c00566fe: e426 sd s1,8(sp) - c0056700: ec06 sd ra,24(sp) - c0056702: 84aa mv s1,a0 - c0056704: 842e mv s0,a1 + c00568ca: 1101 addi sp,sp,-32 + c00568cc: e822 sd s0,16(sp) + c00568ce: e426 sd s1,8(sp) + c00568d0: ec06 sd ra,24(sp) + c00568d2: 84aa mv s1,a0 + c00568d4: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:41 FAR char *ret = dest; dest += strlen(dest); - c0056706: 2aa000ef jal ra,c00569b0 - c005670a: 00a487b3 add a5,s1,a0 + c00568d6: 2aa000ef jal ra,c0056b80 + c00568da: 00a487b3 add a5,s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:42 while (*src != '\0') - c005670e: 00044703 lbu a4,0(s0) - c0056712: eb09 bnez a4,c0056724 + c00568de: 00044703 lbu a4,0(s0) + c00568e2: eb09 bnez a4,c00568f4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:47 { *dest++ = *src++; } *dest = '\0'; - c0056714: 00078023 sb zero,0(a5) + c00568e4: 00078023 sb zero,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:50 return ret; } - c0056718: 60e2 ld ra,24(sp) - c005671a: 6442 ld s0,16(sp) - c005671c: 8526 mv a0,s1 - c005671e: 64a2 ld s1,8(sp) - c0056720: 6105 addi sp,sp,32 - c0056722: 8082 ret + c00568e8: 60e2 ld ra,24(sp) + c00568ea: 6442 ld s0,16(sp) + c00568ec: 8526 mv a0,s1 + c00568ee: 64a2 ld s1,8(sp) + c00568f0: 6105 addi sp,sp,32 + c00568f2: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcat.c:44 *dest++ = *src++; - c0056724: 0785 addi a5,a5,1 - c0056726: 0405 addi s0,s0,1 - c0056728: fee78fa3 sb a4,-1(a5) - c005672c: b7cd j c005670e + c00568f4: 0785 addi a5,a5,1 + c00568f6: 0405 addi s0,s0,1 + c00568f8: fee78fa3 sb a4,-1(a5) + c00568fc: b7cd j c00568de -00000000c005672e : +00000000c00568fe : strdup(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:37 * Public Functions @@ -242541,42 +242739,42 @@ strdup(): #undef strdup /* See mm/README.txt */ FAR char *strdup(FAR const char *s) { - c005672e: 1101 addi sp,sp,-32 - c0056730: ec06 sd ra,24(sp) - c0056732: e822 sd s0,16(sp) - c0056734: e42a sd a0,8(sp) + c00568fe: 1101 addi sp,sp,-32 + c0056900: ec06 sd ra,24(sp) + c0056902: e822 sd s0,16(sp) + c0056904: e42a sd a0,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:38 size_t size = strlen(s) + 1; - c0056736: 27a000ef jal ra,c00569b0 - c005673a: 00150613 addi a2,a0,1 + c0056906: 27a000ef jal ra,c0056b80 + c005690a: 00150613 addi a2,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:39 FAR char *news = (FAR char *)lib_malloc(size); - c005673e: 8532 mv a0,a2 - c0056740: e032 sd a2,0(sp) - c0056742: ec2fc0ef jal ra,c0052e04 - c0056746: 842a mv s0,a0 + c005690e: 8532 mv a0,a2 + c0056910: e032 sd a2,0(sp) + c0056912: ec2fc0ef jal ra,c0052fd4 + c0056916: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:41 if (news) - c0056748: c509 beqz a0,c0056752 + c0056918: c509 beqz a0,c0056922 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:43 { strlcpy(news, s, size); - c005674a: 6602 ld a2,0(sp) - c005674c: 65a2 ld a1,8(sp) - c005674e: 22a000ef jal ra,c0056978 + c005691a: 6602 ld a2,0(sp) + c005691c: 65a2 ld a1,8(sp) + c005691e: 22a000ef jal ra,c0056b48 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strdup.c:47 } return news; } - c0056752: 60e2 ld ra,24(sp) - c0056754: 8522 mv a0,s0 - c0056756: 6442 ld s0,16(sp) - c0056758: 6105 addi sp,sp,32 - c005675a: 8082 ret + c0056922: 60e2 ld ra,24(sp) + c0056924: 8522 mv a0,s0 + c0056926: 6442 ld s0,16(sp) + c0056928: 6105 addi sp,sp,32 + c005692a: 8082 ret -00000000c005675c : +00000000c005692c : strerror(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:379 #ifdef CONFIG_LIBC_STRERROR_ERRNUM @@ -242585,10 +242783,10 @@ strerror(): #ifdef CONFIG_LIBC_STRERROR int ndxlow = 0; int ndxhi = NERRNO_STRS - 1; - c005675c: 08a00693 li a3,138 + c005692c: 08a00693 li a3,138 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:378 int ndxlow = 0; - c0056760: 4601 li a2,0 + c0056930: 4601 li a2,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:385 int ndxmid; @@ -242596,23 +242794,23 @@ strerror(): { ndxmid = (ndxlow + ndxhi) >> 1; if (errnum > g_errnomap[ndxmid].errnum) - c0056762: 0001d817 auipc a6,0x1d - c0056766: 59e80813 addi a6,a6,1438 # c0073d00 + c0056932: 0001d817 auipc a6,0x1d + c0056936: 62e80813 addi a6,a6,1582 # c0073f60 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:384 ndxmid = (ndxlow + ndxhi) >> 1; - c005676a: 00d6073b addw a4,a2,a3 - c005676e: 4017579b sraiw a5,a4,0x1 - c0056772: 873e mv a4,a5 + c005693a: 00d6073b addw a4,a2,a3 + c005693e: 4017579b sraiw a5,a4,0x1 + c0056942: 873e mv a4,a5 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:385 if (errnum > g_errnomap[ndxmid].errnum) - c0056774: 0792 slli a5,a5,0x4 - c0056776: 97c2 add a5,a5,a6 - c0056778: 0007c583 lbu a1,0(a5) - c005677c: 00a5db63 bge a1,a0,c0056792 + c0056944: 0792 slli a5,a5,0x4 + c0056946: 97c2 add a5,a5,a6 + c0056948: 0007c583 lbu a1,0(a5) + c005694c: 00a5db63 bge a1,a0,c0056962 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:387 { ndxlow = ndxmid + 1; - c0056780: 0017061b addiw a2,a4,1 + c0056950: 0017061b addiw a2,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:398 else { @@ -242620,7 +242818,7 @@ strerror(): } } while (ndxlow <= ndxhi); - c0056784: fec6d3e3 bge a3,a2,c005676a + c0056954: fec6d3e3 bge a3,a2,c005693a /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:410 } #elif !defined(CONFIG_LIBC_STRERROR) @@ -242628,24 +242826,24 @@ strerror(): #endif return STRERROR_UNKNOWN; - c0056788: 0001c517 auipc a0,0x1c - c005678c: 6e850513 addi a0,a0,1768 # c0072e70 + c0056958: 0001c517 auipc a0,0x1c + c005695c: 77850513 addi a0,a0,1912 # c00730d0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:411 } - c0056790: 8082 ret + c0056960: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:389 else if (errnum < g_errnomap[ndxmid].errnum) - c0056792: 00b55563 bge a0,a1,c005679c + c0056962: 00b55563 bge a0,a1,c005696c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:391 ndxhi = ndxmid - 1; - c0056796: fff7069b addiw a3,a4,-1 - c005679a: b7ed j c0056784 + c0056966: fff7069b addiw a3,a4,-1 + c005696a: b7ed j c0056954 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strerror.c:395 return g_errnomap[ndxmid].str; - c005679c: 6788 ld a0,8(a5) - c005679e: 8082 ret + c005696c: 6788 ld a0,8(a5) + c005696e: 8082 ret -00000000c00567a0 : +00000000c0056970 : strrchr(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strrchr.c:42 */ @@ -242654,33 +242852,33 @@ strrchr(): #undef strrchr /* See mm/README.txt */ FAR char *strrchr(FAR const char *s, int c) { - c00567a0: 87aa mv a5,a0 + c0056970: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strrchr.c:43 FAR const char *r = NULL; - c00567a2: 4501 li a0,0 + c0056972: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strrchr.c:47 do { if (*s == c) - c00567a4: 0007c703 lbu a4,0(a5) - c00567a8: 00b71363 bne a4,a1,c00567ae - c00567ac: 853e mv a0,a5 + c0056974: 0007c703 lbu a4,0(a5) + c0056978: 00b71363 bne a4,a1,c005697e + c005697c: 853e mv a0,a5 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strrchr.c:52 { r = s; } } while (*s++ != '\0'); - c00567ae: 0785 addi a5,a5,1 - c00567b0: fb75 bnez a4,c00567a4 + c005697e: 0785 addi a5,a5,1 + c0056980: fb75 bnez a4,c0056974 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strrchr.c:55 return (FAR char *)r; } - c00567b2: 8082 ret + c0056982: 8082 ret -00000000c00567b4 : +00000000c0056984 : strspn(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:44 * @@ -242689,41 +242887,41 @@ strspn(): #undef strspn /* See mm/README.txt */ size_t strspn(const char *s, const char *accept) { - c00567b4: 1101 addi sp,sp,-32 - c00567b6: e822 sd s0,16(sp) - c00567b8: e426 sd s1,8(sp) - c00567ba: e04a sd s2,0(sp) - c00567bc: ec06 sd ra,24(sp) - c00567be: 892a mv s2,a0 - c00567c0: 84ae mv s1,a1 + c0056984: 1101 addi sp,sp,-32 + c0056986: e822 sd s0,16(sp) + c0056988: e426 sd s1,8(sp) + c005698a: e04a sd s2,0(sp) + c005698c: ec06 sd ra,24(sp) + c005698e: 892a mv s2,a0 + c0056990: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:46 size_t i; for (i = 0; s[i] && strchr(accept, s[i]) != NULL; i++); - c00567c2: 4401 li s0,0 + c0056992: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:46 (discriminator 1) - c00567c4: 008907b3 add a5,s2,s0 - c00567c8: 0007c583 lbu a1,0(a5) - c00567cc: c589 beqz a1,c00567d6 + c0056994: 008907b3 add a5,s2,s0 + c0056998: 0007c583 lbu a1,0(a5) + c005699c: c589 beqz a1,c00569a6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:46 (discriminator 3) - c00567ce: 8526 mv a0,s1 - c00567d0: 16c000ef jal ra,c005693c - c00567d4: e901 bnez a0,c00567e4 + c005699e: 8526 mv a0,s1 + c00569a0: 16c000ef jal ra,c0056b0c + c00569a4: e901 bnez a0,c00569b4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:48 return i; } - c00567d6: 60e2 ld ra,24(sp) - c00567d8: 8522 mv a0,s0 - c00567da: 6442 ld s0,16(sp) - c00567dc: 64a2 ld s1,8(sp) - c00567de: 6902 ld s2,0(sp) - c00567e0: 6105 addi sp,sp,32 - c00567e2: 8082 ret + c00569a6: 60e2 ld ra,24(sp) + c00569a8: 8522 mv a0,s0 + c00569aa: 6442 ld s0,16(sp) + c00569ac: 64a2 ld s1,8(sp) + c00569ae: 6902 ld s2,0(sp) + c00569b0: 6105 addi sp,sp,32 + c00569b2: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strspn.c:46 (discriminator 4) for (i = 0; s[i] && strchr(accept, s[i]) != NULL; i++); - c00567e4: 0405 addi s0,s0,1 - c00567e6: bff9 j c00567c4 + c00569b4: 0405 addi s0,s0,1 + c00569b6: bff9 j c0056994 -00000000c00567e8 : +00000000c00569b8 : memchr(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:55 #undef memchr /* See mm/README.txt */ @@ -242732,14 +242930,14 @@ FAR void *memchr(FAR const void *s, int c, size_t n) FAR const unsigned char *p = (FAR const unsigned char *)s; while (n--) - c00567e8: 962a add a2,a2,a0 + c00569b8: 962a add a2,a2,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:57 { if (*p == (unsigned char)c) - c00567ea: 0ff5f593 zext.b a1,a1 + c00569ba: 0ff5f593 zext.b a1,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:55 while (n--) - c00567ee: 00c51463 bne a0,a2,c00567f6 + c00569be: 00c51463 bne a0,a2,c00569c6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:65 } @@ -242747,20 +242945,20 @@ FAR void *memchr(FAR const void *s, int c, size_t n) } return NULL; - c00567f2: 4501 li a0,0 + c00569c2: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:66 } - c00567f4: 8082 ret + c00569c4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:57 if (*p == (unsigned char)c) - c00567f6: 00054783 lbu a5,0(a0) - c00567fa: feb78de3 beq a5,a1,c00567f4 + c00569c6: 00054783 lbu a5,0(a0) + c00569ca: feb78de3 beq a5,a1,c00569c4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memchr.c:62 p++; - c00567fe: 0505 addi a0,a0,1 - c0056800: b7fd j c00567ee + c00569ce: 0505 addi a0,a0,1 + c00569d0: b7fd j c00569be -00000000c0056802 : +00000000c00569d2 : memcmp(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:43 int memcmp(FAR const void *s1, FAR const void *s2, size_t n) @@ -242769,8 +242967,8 @@ int memcmp(FAR const void *s1, FAR const void *s2, size_t n) FAR unsigned char *p2 = (FAR unsigned char *)s2; while (n-- > 0) - c0056802: 4781 li a5,0 - c0056804: 00f61463 bne a2,a5,c005680c + c00569d2: 4781 li a5,0 + c00569d4: 00f61463 bne a2,a5,c00569dc /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:58 p1++; @@ -242778,31 +242976,31 @@ int memcmp(FAR const void *s1, FAR const void *s2, size_t n) } return 0; - c0056808: 4501 li a0,0 - c005680a: 8082 ret + c00569d8: 4501 li a0,0 + c00569da: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:45 if (*p1 < *p2) - c005680c: 00f50733 add a4,a0,a5 - c0056810: 00074683 lbu a3,0(a4) - c0056814: 00f58733 add a4,a1,a5 - c0056818: 00074703 lbu a4,0(a4) - c005681c: 00e6e763 bltu a3,a4,c005682a + c00569dc: 00f50733 add a4,a0,a5 + c00569e0: 00074683 lbu a3,0(a4) + c00569e4: 00f58733 add a4,a1,a5 + c00569e8: 00074703 lbu a4,0(a4) + c00569ec: 00e6e763 bltu a3,a4,c00569fa /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:49 else if (*p1 > *p2) - c0056820: 0785 addi a5,a5,1 - c0056822: fed771e3 bgeu a4,a3,c0056804 + c00569f0: 0785 addi a5,a5,1 + c00569f2: fed771e3 bgeu a4,a3,c00569d4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:51 return 1; - c0056826: 4505 li a0,1 + c00569f6: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:59 } - c0056828: 8082 ret + c00569f8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcmp.c:47 return -1; - c005682a: 557d li a0,-1 - c005682c: 8082 ret + c00569fa: 557d li a0,-1 + c00569fc: 8082 ret -00000000c005682e : +00000000c00569fe : memmove(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:43 FAR void *memmove(FAR void *dest, FAR const void *src, size_t count) @@ -242811,7 +243009,7 @@ FAR void *memmove(FAR void *dest, FAR const void *src, size_t count) FAR char *s; if (dest <= src) - c005682e: 02a5f563 bgeu a1,a0,c0056858 + c00569fe: 02a5f563 bgeu a1,a0,c0056a28 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:58 else { @@ -242819,10 +243017,10 @@ FAR void *memmove(FAR void *dest, FAR const void *src, size_t count) s = (FAR char *) src + count; while (count--) - c0056832: fff64693 not a3,a2 - c0056836: 4781 li a5,0 - c0056838: 17fd addi a5,a5,-1 - c005683a: 02f69163 bne a3,a5,c005685c + c0056a02: fff64693 not a3,a2 + c0056a06: 4781 li a5,0 + c0056a08: 17fd addi a5,a5,-1 + c0056a0a: 02f69163 bne a3,a5,c0056a2c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:65 *--tmp = *--s; } @@ -242830,30 +243028,30 @@ FAR void *memmove(FAR void *dest, FAR const void *src, size_t count) return dest; } - c005683e: 8082 ret + c0056a0e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:50 *tmp++ = *s++; - c0056840: 00f58733 add a4,a1,a5 - c0056844: 00074683 lbu a3,0(a4) - c0056848: 00f50733 add a4,a0,a5 - c005684c: 0785 addi a5,a5,1 - c005684e: 00d70023 sb a3,0(a4) + c0056a10: 00f58733 add a4,a1,a5 + c0056a14: 00074683 lbu a3,0(a4) + c0056a18: 00f50733 add a4,a0,a5 + c0056a1c: 0785 addi a5,a5,1 + c0056a1e: 00d70023 sb a3,0(a4) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:48 while (count--) - c0056852: fec797e3 bne a5,a2,c0056840 - c0056856: 8082 ret - c0056858: 4781 li a5,0 - c005685a: bfe5 j c0056852 + c0056a22: fec797e3 bne a5,a2,c0056a10 + c0056a26: 8082 ret + c0056a28: 4781 li a5,0 + c0056a2a: bfe5 j c0056a22 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memmove.c:60 *--tmp = *--s; - c005685c: 00f60733 add a4,a2,a5 - c0056860: 00e58833 add a6,a1,a4 - c0056864: 00084803 lbu a6,0(a6) - c0056868: 972a add a4,a4,a0 - c005686a: 01070023 sb a6,0(a4) - c005686e: b7e9 j c0056838 - -00000000c0056870 : + c0056a2c: 00f60733 add a4,a2,a5 + c0056a30: 00e58833 add a6,a1,a4 + c0056a34: 00084803 lbu a6,0(a6) + c0056a38: 972a add a4,a4,a0 + c0056a3a: 01070023 sb a6,0(a4) + c0056a3e: b7e9 j c0056a08 + +00000000c0056a40 : memset(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:71 uint64_t val64 = ((uint64_t)val32 << 32) | (uint64_t)val32; @@ -242862,48 +243060,48 @@ memset(): /* Make sure that there is something to be cleared */ if (n > 0) - c0056870: c669 beqz a2,c005693a + c0056a40: c669 beqz a2,c0056b0a /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:75 { /* Align to a 16-bit boundary */ if ((addr & 1) != 0) - c0056872: 00157713 andi a4,a0,1 + c0056a42: 00157713 andi a4,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:62 uintptr_t addr = (uintptr_t)s; - c0056876: 87aa mv a5,a0 + c0056a46: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:75 if ((addr & 1) != 0) - c0056878: cf4d beqz a4,c0056932 + c0056a48: cf4d beqz a4,c0056b02 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:77 { *(FAR uint8_t *)addr = (uint8_t)c; - c005687a: 00b50023 sb a1,0(a0) + c0056a4a: 00b50023 sb a1,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:79 addr += 1; n -= 1; - c005687e: 167d addi a2,a2,-1 + c0056a4e: 167d addi a2,a2,-1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:84 } /* Check if there are at least 16-bits left to be written */ if (n >= 2) - c0056880: 4705 li a4,1 + c0056a50: 4705 li a4,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:78 addr += 1; - c0056882: 00150793 addi a5,a0,1 + c0056a52: 00150793 addi a5,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:84 if (n >= 2) - c0056886: 08c77863 bgeu a4,a2,c0056916 + c0056a56: 08c77863 bgeu a4,a2,c0056ae6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:63 uint16_t val16 = ((uint16_t)c << 8) | (uint16_t)c; - c005688a: 010006b7 lui a3,0x1000 - c005688e: f0068693 addi a3,a3,-256 # ffff00 <__clzdi2-0xbf000100> - c0056892: 0085971b slliw a4,a1,0x8 - c0056896: 8f75 and a4,a4,a3 - c0056898: 8f4d or a4,a4,a1 - c005689a: 1742 slli a4,a4,0x30 + c0056a5a: 010006b7 lui a3,0x1000 + c0056a5e: f0068693 addi a3,a3,-256 # ffff00 <__clzdi2-0xbf000100> + c0056a62: 0085971b slliw a4,a1,0x8 + c0056a66: 8f75 and a4,a4,a3 + c0056a68: 8f4d or a4,a4,a1 + c0056a6a: 1742 slli a4,a4,0x30 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:90 { /* Align to a 32-bit boundary (we know that the destination @@ -242911,21 +243109,21 @@ memset(): */ if ((addr & 3) != 0) - c005689c: 0037f693 andi a3,a5,3 + c0056a6c: 0037f693 andi a3,a5,3 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:63 uint16_t val16 = ((uint16_t)c << 8) | (uint16_t)c; - c00568a0: 9341 srli a4,a4,0x30 + c0056a70: 9341 srli a4,a4,0x30 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:90 if ((addr & 3) != 0) - c00568a2: c6c1 beqz a3,c005692a + c0056a72: c6c1 beqz a3,c0056afa /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:92 { *(FAR uint16_t *)addr = val16; - c00568a4: 00e79023 sh a4,0(a5) + c0056a74: 00e79023 sh a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:94 addr += 2; n -= 2; - c00568a8: 1679 addi a2,a2,-2 + c0056a78: 1679 addi a2,a2,-2 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:109 n -= 4; } @@ -242933,17 +243131,17 @@ memset(): /* Check if there are at least 32-bits left to be written */ if (n >= 4) - c00568aa: 468d li a3,3 + c0056a7a: 468d li a3,3 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:93 addr += 2; - c00568ac: 0789 addi a5,a5,2 + c0056a7c: 0789 addi a5,a5,2 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:109 if (n >= 4) - c00568ae: 04c6fd63 bgeu a3,a2,c0056908 + c0056a7e: 04c6fd63 bgeu a3,a2,c0056ad8 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:64 uint32_t val32 = ((uint32_t)val16 << 16) | (uint32_t)val16; - c00568b2: 0107181b slliw a6,a4,0x10 - c00568b6: 01076833 or a6,a4,a6 + c0056a82: 0107181b slliw a6,a4,0x10 + c0056a86: 01076833 or a6,a4,a6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:115 { /* Align to a 64-bit boundary (we know that the destination @@ -242951,54 +243149,54 @@ memset(): */ if ((addr & 7) != 0) - c00568ba: 0077f893 andi a7,a5,7 + c0056a8a: 0077f893 andi a7,a5,7 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:64 uint32_t val32 = ((uint32_t)val16 << 16) | (uint32_t)val16; - c00568be: 2801 sext.w a6,a6 + c0056a8e: 2801 sext.w a6,a6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:115 if ((addr & 7) != 0) - c00568c0: 86b2 mv a3,a2 - c00568c2: 00088663 beqz a7,c00568ce + c0056a90: 86b2 mv a3,a2 + c0056a92: 00088663 beqz a7,c0056a9e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:117 { *(FAR uint32_t *)addr = val32; - c00568c6: 0107a023 sw a6,0(a5) + c0056a96: 0107a023 sw a6,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:119 addr += 4; n -= 4; - c00568ca: 16f1 addi a3,a3,-4 + c0056a9a: 16f1 addi a3,a3,-4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:118 addr += 4; - c00568cc: 0791 addi a5,a5,4 + c0056a9c: 0791 addi a5,a5,4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:66 uint64_t val64 = ((uint64_t)val32 << 32) | (uint64_t)val32; - c00568ce: 02081893 slli a7,a6,0x20 - c00568d2: 02081613 slli a2,a6,0x20 - c00568d6: 0208d893 srli a7,a7,0x20 - c00568da: 011668b3 or a7,a2,a7 + c0056a9e: 02081893 slli a7,a6,0x20 + c0056aa2: 02081613 slli a2,a6,0x20 + c0056aa6: 0208d893 srli a7,a7,0x20 + c0056aaa: 011668b3 or a7,a2,a7 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:124 } /* Loop while there are at least 64-bits left to be written */ while (n >= 8) - c00568de: 431d li t1,7 + c0056aae: 431d li t1,7 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:66 uint64_t val64 = ((uint64_t)val32 << 32) | (uint64_t)val32; - c00568e0: 8636 mv a2,a3 + c0056ab0: 8636 mv a2,a3 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:126 { *(FAR uint64_t *)addr = val64; - c00568e2: 00d78e33 add t3,a5,a3 + c0056ab2: 00d78e33 add t3,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:124 while (n >= 8) - c00568e6: 02c36c63 bltu t1,a2,c005691e - c00568ea: 0036d613 srli a2,a3,0x3 - c00568ee: 58e1 li a7,-8 - c00568f0: 03160633 mul a2,a2,a7 - c00568f4: 9636 add a2,a2,a3 - c00568f6: 9ae1 andi a3,a3,-8 - c00568f8: 97b6 add a5,a5,a3 + c0056ab6: 02c36c63 bltu t1,a2,c0056aee + c0056aba: 0036d613 srli a2,a3,0x3 + c0056abe: 58e1 li a7,-8 + c0056ac0: 03160633 mul a2,a2,a7 + c0056ac4: 9636 add a2,a2,a3 + c0056ac6: 9ae1 andi a3,a3,-8 + c0056ac8: 97b6 add a5,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:139 #ifdef CONFIG_MEMSET_64BIT /* We may get here with n in the range 0..7. If n >= 4, then we should @@ -243006,19 +243204,19 @@ memset(): */ if (n >= 4) - c00568fa: 468d li a3,3 - c00568fc: 00c6f663 bgeu a3,a2,c0056908 + c0056aca: 468d li a3,3 + c0056acc: 00c6f663 bgeu a3,a2,c0056ad8 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:141 { *(FAR uint32_t *)addr = val32; - c0056900: 0107a023 sw a6,0(a5) + c0056ad0: 0107a023 sw a6,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:143 addr += 4; n -= 4; - c0056904: 1671 addi a2,a2,-4 + c0056ad4: 1671 addi a2,a2,-4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:142 addr += 4; - c0056906: 0791 addi a5,a5,4 + c0056ad6: 0791 addi a5,a5,4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:155 * n = 1, addr is aligned to at least a 16-bit boundary * n = 2, addr is aligned to a 32-bit boundary @@ -243026,28 +243224,28 @@ memset(): */ if (n >= 2) - c0056908: 4685 li a3,1 - c005690a: 00c6f663 bgeu a3,a2,c0056916 + c0056ad8: 4685 li a3,1 + c0056ada: 00c6f663 bgeu a3,a2,c0056ae6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:157 { *(FAR uint16_t *)addr = val16; - c005690e: 00e79023 sh a4,0(a5) + c0056ade: 00e79023 sh a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:159 addr += 2; n -= 2; - c0056912: 1679 addi a2,a2,-2 + c0056ae2: 1679 addi a2,a2,-2 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:158 addr += 2; - c0056914: 0789 addi a5,a5,2 + c0056ae4: 0789 addi a5,a5,2 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:162 } if (n >= 1) - c0056916: c215 beqz a2,c005693a + c0056ae6: c215 beqz a2,c0056b0a /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:164 { *(FAR uint8_t *)addr = (uint8_t)c; - c0056918: 00b78023 sb a1,0(a5) + c0056ae8: 00b78023 sb a1,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:173 /* This version is optimized for size */ @@ -243055,30 +243253,30 @@ memset(): while (n-- > 0) *p++ = c; #endif return s; - c005691c: 8082 ret + c0056aec: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:126 *(FAR uint64_t *)addr = val64; - c005691e: 40ce0eb3 sub t4,t3,a2 - c0056922: 011eb023 sd a7,0(t4) + c0056aee: 40ce0eb3 sub t4,t3,a2 + c0056af2: 011eb023 sd a7,0(t4) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:128 n -= 8; - c0056926: 1661 addi a2,a2,-8 - c0056928: bf7d j c00568e6 + c0056af6: 1661 addi a2,a2,-8 + c0056af8: bf7d j c0056ab6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:109 if (n >= 4) - c005692a: 468d li a3,3 - c005692c: f8c6e3e3 bltu a3,a2,c00568b2 - c0056930: bff9 j c005690e + c0056afa: 468d li a3,3 + c0056afc: f8c6e3e3 bltu a3,a2,c0056a82 + c0056b00: bff9 j c0056ade /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:84 if (n >= 2) - c0056932: 4705 li a4,1 - c0056934: f4e61be3 bne a2,a4,c005688a - c0056938: b7c5 j c0056918 + c0056b02: 4705 li a4,1 + c0056b04: f4e61be3 bne a2,a4,c0056a5a + c0056b08: b7c5 j c0056ae8 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memset.c:174 } - c005693a: 8082 ret + c0056b0a: 8082 ret -00000000c005693c : +00000000c0056b0c : strchr(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:55 (discriminator 1) #undef strchr /* See mm/README.txt */ @@ -243087,21 +243285,21 @@ FAR char *strchr(FAR const char *s, int c) for (; ; s++) { if (*s == c) - c005693c: 00054783 lbu a5,0(a0) - c0056940: 00b78663 beq a5,a1,c005694c + c0056b0c: 00054783 lbu a5,0(a0) + c0056b10: 00b78663 beq a5,a1,c0056b1c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:60 { return (FAR char *)s; } if (*s == '\0') - c0056944: c399 beqz a5,c005694a + c0056b14: c399 beqz a5,c0056b1a /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:53 for (; ; s++) - c0056946: 0505 addi a0,a0,1 + c0056b16: 0505 addi a0,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:55 if (*s == c) - c0056948: bfd5 j c005693c + c0056b18: bfd5 j c0056b0c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:66 { break; @@ -243109,12 +243307,12 @@ FAR char *strchr(FAR const char *s, int c) } return NULL; - c005694a: 4501 li a0,0 + c0056b1a: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strchr.c:67 } - c005694c: 8082 ret + c0056b1c: 8082 ret -00000000c005694e : +00000000c0056b1e : strcmp(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcmp.c:38 ****************************************************************************/ @@ -243123,23 +243321,23 @@ strcmp(): #undef strcmp /* See mm/README.txt */ int strcmp(FAR const char *cs, FAR const char *ct) { - c005694e: 87aa mv a5,a0 + c0056b1e: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcmp.c:42 register int result; for (; ; ) { if ((result = (unsigned char)*cs - (unsigned char)*ct++) != 0 || - c0056950: 0007c703 lbu a4,0(a5) - c0056954: 0005c503 lbu a0,0(a1) - c0056958: 0585 addi a1,a1,1 - c005695a: 40a7053b subw a0,a4,a0 - c005695e: e119 bnez a0,c0056964 + c0056b20: 0007c703 lbu a4,0(a5) + c0056b24: 0005c503 lbu a0,0(a1) + c0056b28: 0585 addi a1,a1,1 + c0056b2a: 40a7053b subw a0,a4,a0 + c0056b2e: e119 bnez a0,c0056b34 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcmp.c:43 (discriminator 1) *cs++ == '\0') - c0056960: 0785 addi a5,a5,1 + c0056b30: 0785 addi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcmp.c:42 (discriminator 1) if ((result = (unsigned char)*cs - (unsigned char)*ct++) != 0 || - c0056962: f77d bnez a4,c0056950 + c0056b32: f77d bnez a4,c0056b20 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcmp.c:50 break; } @@ -243147,9 +243345,9 @@ int strcmp(FAR const char *cs, FAR const char *ct) return result; } - c0056964: 8082 ret + c0056b34: 8082 ret -00000000c0056966 : +00000000c0056b36 : strcpy(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcpy.c:52 #if !defined(CONFIG_LIBC_ARCH_STRCPY) && defined(LIBC_BUILD_STRCPY) @@ -243158,19 +243356,19 @@ FAR char *strcpy(FAR char *dest, FAR const char *src) { FAR char *tmp = dest; while ((*dest++ = *src++) != '\0'); - c0056966: 87aa mv a5,a0 + c0056b36: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcpy.c:52 (discriminator 1) - c0056968: 0005c703 lbu a4,0(a1) - c005696c: 0585 addi a1,a1,1 - c005696e: 0785 addi a5,a5,1 - c0056970: fee78fa3 sb a4,-1(a5) - c0056974: fb75 bnez a4,c0056968 + c0056b38: 0005c703 lbu a4,0(a1) + c0056b3c: 0585 addi a1,a1,1 + c0056b3e: 0785 addi a5,a5,1 + c0056b40: fee78fa3 sb a4,-1(a5) + c0056b44: fb75 bnez a4,c0056b38 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strcpy.c:54 return tmp; } - c0056976: 8082 ret + c0056b46: 8082 ret -00000000c0056978 : +00000000c0056b48 : strlcpy(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:51 ****************************************************************************/ @@ -243179,26 +243377,26 @@ strlcpy(): #undef strlcpy /* See mm/README.txt */ size_t strlcpy(FAR char *dst, FAR const char *src, size_t dsize) { - c0056978: 872a mv a4,a0 + c0056b48: 872a mv a4,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:55 FAR const char *osrc = src; size_t nleft = dsize; if (nleft != 0) - c005697a: c60d beqz a2,c00569a4 - c005697c: 962e add a2,a2,a1 - c005697e: 87ae mv a5,a1 + c0056b4a: c60d beqz a2,c0056b74 + c0056b4c: 962e add a2,a2,a1 + c0056b4e: 87ae mv a5,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:57 { while (--nleft != 0) - c0056980: 86be mv a3,a5 + c0056b50: 86be mv a3,a5 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:59 { if ((*dst++ = *src++) == '\0') - c0056982: 0785 addi a5,a5,1 + c0056b52: 0785 addi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:57 while (--nleft != 0) - c0056984: 00c79663 bne a5,a2,c0056990 + c0056b54: 00c79663 bne a5,a2,c0056b60 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:70 if (nleft == 0) @@ -243206,15 +243404,15 @@ size_t strlcpy(FAR char *dst, FAR const char *src, size_t dsize) if (dsize != 0) { *dst = '\0'; - c0056988: 00070023 sb zero,0(a4) - c005698c: 87b6 mv a5,a3 - c005698e: a821 j c00569a6 + c0056b58: 00070023 sb zero,0(a4) + c0056b5c: 87b6 mv a5,a3 + c0056b5e: a821 j c0056b76 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:59 if ((*dst++ = *src++) == '\0') - c0056990: fff7c683 lbu a3,-1(a5) - c0056994: 0705 addi a4,a4,1 - c0056996: fed70fa3 sb a3,-1(a4) - c005699a: f2fd bnez a3,c0056980 + c0056b60: fff7c683 lbu a3,-1(a5) + c0056b64: 0705 addi a4,a4,1 + c0056b66: fed70fa3 sb a3,-1(a4) + c0056b6a: f2fd bnez a3,c0056b50 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:76 } @@ -243222,20 +243420,20 @@ size_t strlcpy(FAR char *dst, FAR const char *src, size_t dsize) } return src - osrc - 1; - c005699c: 40b78533 sub a0,a5,a1 - c00569a0: 157d addi a0,a0,-1 + c0056b6c: 40b78533 sub a0,a5,a1 + c0056b70: 157d addi a0,a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:77 } - c00569a2: 8082 ret - c00569a4: 87ae mv a5,a1 + c0056b72: 8082 ret + c0056b74: 87ae mv a5,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcpy.c:73 (discriminator 1) while (*src++ != '\0'); - c00569a6: 0007c703 lbu a4,0(a5) - c00569aa: 0785 addi a5,a5,1 - c00569ac: ff6d bnez a4,c00569a6 - c00569ae: b7fd j c005699c + c0056b76: 0007c703 lbu a4,0(a5) + c0056b7a: 0785 addi a5,a5,1 + c0056b7c: ff6d bnez a4,c0056b76 + c0056b7e: b7fd j c0056b6c -00000000c00569b0 : +00000000c0056b80 : strlen(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlen.c:40 #if !defined(CONFIG_LIBC_ARCH_STRLEN) && defined(LIBC_BUILD_STRLEN) @@ -243244,21 +243442,21 @@ size_t strlen(FAR const char *s) { FAR const char *sc; for (sc = s; *sc != '\0'; ++sc); - c00569b0: 87aa mv a5,a0 + c0056b80: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlen.c:40 (discriminator 1) - c00569b2: 0007c703 lbu a4,0(a5) - c00569b6: e701 bnez a4,c00569be + c0056b82: 0007c703 lbu a4,0(a5) + c0056b86: e701 bnez a4,c0056b8e /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlen.c:42 return sc - s; } - c00569b8: 40a78533 sub a0,a5,a0 - c00569bc: 8082 ret + c0056b88: 40a78533 sub a0,a5,a0 + c0056b8c: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlen.c:40 (discriminator 3) for (sc = s; *sc != '\0'; ++sc); - c00569be: 0785 addi a5,a5,1 - c00569c0: bfcd j c00569b2 + c0056b8e: 0785 addi a5,a5,1 + c0056b90: bfcd j c0056b82 -00000000c00569c2 : +00000000c0056b92 : strnlen(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:40 #if !defined(CONFIG_LIBC_ARCH_STRNLEN) && defined(LIBC_BUILD_STRNLEN) @@ -243267,25 +243465,25 @@ size_t strnlen(FAR const char *s, size_t maxlen) { FAR const char *sc; for (sc = s; maxlen != 0 && *sc != '\0'; maxlen--, ++sc); - c00569c2: 95aa add a1,a1,a0 - c00569c4: 87aa mv a5,a0 + c0056b92: 95aa add a1,a1,a0 + c0056b94: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:40 (discriminator 1) - c00569c6: 00b78563 beq a5,a1,c00569d0 + c0056b96: 00b78563 beq a5,a1,c0056ba0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:40 (discriminator 3) - c00569ca: 0007c703 lbu a4,0(a5) - c00569ce: e701 bnez a4,c00569d6 + c0056b9a: 0007c703 lbu a4,0(a5) + c0056b9e: e701 bnez a4,c0056ba6 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:41 return sc - s; - c00569d0: 40a78533 sub a0,a5,a0 + c0056ba0: 40a78533 sub a0,a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:42 } - c00569d4: 8082 ret + c0056ba4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strnlen.c:40 (discriminator 4) for (sc = s; maxlen != 0 && *sc != '\0'; maxlen--, ++sc); - c00569d6: 0785 addi a5,a5,1 - c00569d8: b7fd j c00569c6 + c0056ba6: 0785 addi a5,a5,1 + c0056ba8: b7fd j c0056b96 -00000000c00569da : +00000000c0056baa : memcpy(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcpy.c:46 no_builtin("memcpy") @@ -243294,8 +243492,8 @@ FAR void *memcpy(FAR void *dest, FAR const void *src, size_t n) FAR unsigned char *pout = (FAR unsigned char *)dest; FAR unsigned char *pin = (FAR unsigned char *)src; while (n-- > 0) - c00569da: 4781 li a5,0 - c00569dc: 00f61363 bne a2,a5,c00569e2 + c0056baa: 4781 li a5,0 + c0056bac: 00f61363 bne a2,a5,c0056bb2 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcpy.c:52 { *pout++ = *pin++; @@ -243303,17 +243501,17 @@ FAR void *memcpy(FAR void *dest, FAR const void *src, size_t n) return dest; } - c00569e0: 8082 ret + c0056bb0: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_memcpy.c:48 *pout++ = *pin++; - c00569e2: 00f58733 add a4,a1,a5 - c00569e6: 00074683 lbu a3,0(a4) - c00569ea: 00f50733 add a4,a0,a5 - c00569ee: 0785 addi a5,a5,1 - c00569f0: 00d70023 sb a3,0(a4) - c00569f4: b7e5 j c00569dc - -00000000c00569f6 : + c0056bb2: 00f58733 add a4,a1,a5 + c0056bb6: 00074683 lbu a3,0(a4) + c0056bba: 00f50733 add a4,a0,a5 + c0056bbe: 0785 addi a5,a5,1 + c0056bc0: 00d70023 sb a3,0(a4) + c0056bc4: b7e5 j c0056bac + +00000000c0056bc6 : vsyslog(): /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:55 @@ -243322,14 +243520,14 @@ void vsyslog(int priority, FAR const IPTR char *fmt, va_list ap) /* Check if this priority is enabled */ if ((g_syslog_mask & LOG_MASK(priority)) != 0) - c00569f6: 000aa797 auipc a5,0xaa - c00569fa: 6b27c783 lbu a5,1714(a5) # c01010a8 - c00569fe: 40a7d7bb sraw a5,a5,a0 - c0056a02: 8b85 andi a5,a5,1 - c0056a04: cb91 beqz a5,c0056a18 + c0056bc6: 000aa797 auipc a5,0xaa + c0056bca: 4e27c783 lbu a5,1250(a5) # c01010a8 + c0056bce: 40a7d7bb sraw a5,a5,a0 + c0056bd2: 8b85 andi a5,a5,1 + c0056bd4: cb91 beqz a5,c0056be8 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:52 { - c0056a06: 1101 addi sp,sp,-32 + c0056bd6: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:67 */ @@ -243337,16 +243535,16 @@ void vsyslog(int priority, FAR const IPTR char *fmt, va_list ap) va_list copy; va_copy(copy, ap); - c0056a08: e432 sd a2,8(sp) + c0056bd8: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:68 nx_vsyslog(priority, fmt, ©); - c0056a0a: 0030 addi a2,sp,8 + c0056bda: 0030 addi a2,sp,8 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:52 { - c0056a0c: ec06 sd ra,24(sp) + c0056bdc: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:68 nx_vsyslog(priority, fmt, ©); - c0056a0e: 235000ef jal ra,c0057442 + c0056bde: 235000ef jal ra,c0057612 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:74 va_end(copy); #else @@ -243354,12 +243552,12 @@ void vsyslog(int priority, FAR const IPTR char *fmt, va_list ap) #endif } } - c0056a12: 60e2 ld ra,24(sp) - c0056a14: 6105 addi sp,sp,32 - c0056a16: 8082 ret - c0056a18: 8082 ret + c0056be2: 60e2 ld ra,24(sp) + c0056be4: 6105 addi sp,sp,32 + c0056be6: 8082 ret + c0056be8: 8082 ret -00000000c0056a1a : +00000000c0056bea : syslog(): /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:94 * None. @@ -243368,37 +243566,37 @@ syslog(): void syslog(int priority, FAR const IPTR char *fmt, ...) { - c0056a1a: 715d addi sp,sp,-80 - c0056a1c: f032 sd a2,32(sp) + c0056bea: 715d addi sp,sp,-80 + c0056bec: f032 sd a2,32(sp) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:99 va_list ap; /* Let vsyslog do the work */ va_start(ap, fmt); - c0056a1e: 1010 addi a2,sp,32 + c0056bee: 1010 addi a2,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:94 { - c0056a20: ec06 sd ra,24(sp) - c0056a22: f436 sd a3,40(sp) - c0056a24: f83a sd a4,48(sp) - c0056a26: fc3e sd a5,56(sp) - c0056a28: e0c2 sd a6,64(sp) - c0056a2a: e4c6 sd a7,72(sp) + c0056bf0: ec06 sd ra,24(sp) + c0056bf2: f436 sd a3,40(sp) + c0056bf4: f83a sd a4,48(sp) + c0056bf6: fc3e sd a5,56(sp) + c0056bf8: e0c2 sd a6,64(sp) + c0056bfa: e4c6 sd a7,72(sp) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:99 va_start(ap, fmt); - c0056a2c: e432 sd a2,8(sp) + c0056bfc: e432 sd a2,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:100 vsyslog(priority, fmt, ap); - c0056a2e: fc9ff0ef jal ra,c00569f6 + c0056bfe: fc9ff0ef jal ra,c0056bc6 /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_syslog.c:102 va_end(ap); } - c0056a32: 60e2 ld ra,24(sp) - c0056a34: 6161 addi sp,sp,80 - c0056a36: 8082 ret + c0056c02: 60e2 ld ra,24(sp) + c0056c04: 6161 addi sp,sp,80 + c0056c06: 8082 ret -00000000c0056a38 : +00000000c0056c08 : setlogmask(): /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_setlogmask.c:81 @@ -243407,20 +243605,20 @@ int setlogmask(int mask) uint8_t oldmask; oldmask = g_syslog_mask; - c0056a38: 000aa797 auipc a5,0xaa - c0056a3c: 67078793 addi a5,a5,1648 # c01010a8 - c0056a40: 0007c703 lbu a4,0(a5) + c0056c08: 000aa797 auipc a5,0xaa + c0056c0c: 4a078793 addi a5,a5,1184 # c01010a8 + c0056c10: 0007c703 lbu a4,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_setlogmask.c:82 g_syslog_mask = (uint8_t)mask; - c0056a44: 00a78023 sb a0,0(a5) + c0056c14: 00a78023 sb a0,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/syslog/lib_setlogmask.c:85 return oldmask; } - c0056a48: 853a mv a0,a4 - c0056a4a: 8082 ret + c0056c18: 853a mv a0,a4 + c0056c1a: 8082 ret -00000000c0056a4c : +00000000c0056c1c : isatty(): /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:53 * the NuttX TCGETS ioctl command. @@ -243429,30 +243627,30 @@ isatty(): int isatty(int fd) { - c0056a4c: 7139 addi sp,sp,-64 + c0056c1c: 7139 addi sp,sp,-64 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:55 struct termios ts; return (tcgetattr(fd, &ts) >= 0); - c0056a4e: 002c addi a1,sp,8 + c0056c1e: 002c addi a1,sp,8 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:53 { - c0056a50: fc06 sd ra,56(sp) + c0056c20: fc06 sd ra,56(sp) /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:55 return (tcgetattr(fd, &ts) >= 0); - c0056a52: 012000ef jal ra,c0056a64 + c0056c22: 012000ef jal ra,c0056c34 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:56 } - c0056a56: 70e2 ld ra,56(sp) + c0056c26: 70e2 ld ra,56(sp) /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:55 return (tcgetattr(fd, &ts) >= 0); - c0056a58: fff54513 not a0,a0 + c0056c28: fff54513 not a0,a0 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_isatty.c:56 } - c0056a5c: 01f5551b srliw a0,a0,0x1f - c0056a60: 6121 addi sp,sp,64 - c0056a62: 8082 ret + c0056c2c: 01f5551b srliw a0,a0,0x1f + c0056c30: 6121 addi sp,sp,64 + c0056c32: 8082 ret -00000000c0056a64 : +00000000c0056c34 : tcgetattr(): /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcgetattr.c:62 * - ENOTTY: The file associated with 'fd' is not a terminal. @@ -243461,13 +243659,13 @@ tcgetattr(): int tcgetattr(int fd, FAR struct termios *termiosp) { - c0056a64: 862e mv a2,a1 + c0056c34: 862e mv a2,a1 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcgetattr.c:63 return ioctl(fd, TCGETS, (unsigned long)(uintptr_t)termiosp); - c0056a66: 10100593 li a1,257 - c0056a6a: 1270006f j c0057390 + c0056c36: 10100593 li a1,257 + c0056c3a: 1270006f j c0057560 -00000000c0056a6e : +00000000c0056c3e : tcsetattr(): /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:85 * - ENOTTY: The file associated with 'fd' is not a terminal. @@ -243476,60 +243674,60 @@ tcsetattr(): int tcsetattr(int fd, int options, FAR const struct termios *termiosp) { - c0056a6e: 1101 addi sp,sp,-32 - c0056a70: e822 sd s0,16(sp) - c0056a72: e04a sd s2,0(sp) - c0056a74: ec06 sd ra,24(sp) - c0056a76: e426 sd s1,8(sp) - c0056a78: 842a mv s0,a0 - c0056a7a: 8932 mv s2,a2 + c0056c3e: 1101 addi sp,sp,-32 + c0056c40: e822 sd s0,16(sp) + c0056c42: e04a sd s2,0(sp) + c0056c44: ec06 sd ra,24(sp) + c0056c46: e426 sd s1,8(sp) + c0056c48: 842a mv s0,a0 + c0056c4a: 8932 mv s2,a2 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:86 if (options != TCSANOW) - c0056a7c: c999 beqz a1,c0056a92 - c0056a7e: 84ae mv s1,a1 + c0056c4c: c999 beqz a1,c0056c62 + c0056c4e: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:88 { tcdrain(fd); - c0056a80: 76a000ef jal ra,c00571ea + c0056c50: 76a000ef jal ra,c00573ba /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:91 } if (options == TCSAFLUSH) - c0056a84: 4789 li a5,2 - c0056a86: 00f49663 bne s1,a5,c0056a92 + c0056c54: 4789 li a5,2 + c0056c56: 00f49663 bne s1,a5,c0056c62 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:93 { tcflush(fd, TCIFLUSH); - c0056a8a: 4581 li a1,0 - c0056a8c: 8522 mv a0,s0 - c0056a8e: 754000ef jal ra,c00571e2 + c0056c5a: 4581 li a1,0 + c0056c5c: 8522 mv a0,s0 + c0056c5e: 754000ef jal ra,c00573b2 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:96 } return ioctl(fd, TCSETS, (unsigned long)(uintptr_t)termiosp); - c0056a92: 8522 mv a0,s0 + c0056c62: 8522 mv a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:97 } - c0056a94: 6442 ld s0,16(sp) - c0056a96: 60e2 ld ra,24(sp) - c0056a98: 64a2 ld s1,8(sp) + c0056c64: 6442 ld s0,16(sp) + c0056c66: 60e2 ld ra,24(sp) + c0056c68: 64a2 ld s1,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:96 return ioctl(fd, TCSETS, (unsigned long)(uintptr_t)termiosp); - c0056a9a: 864a mv a2,s2 + c0056c6a: 864a mv a2,s2 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:97 } - c0056a9c: 6902 ld s2,0(sp) + c0056c6c: 6902 ld s2,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:96 return ioctl(fd, TCSETS, (unsigned long)(uintptr_t)termiosp); - c0056a9e: 10200593 li a1,258 + c0056c6e: 10200593 li a1,258 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:97 } - c0056aa2: 6105 addi sp,sp,32 + c0056c72: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcsetattr.c:96 return ioctl(fd, TCSETS, (unsigned long)(uintptr_t)termiosp); - c0056aa4: 0ed0006f j c0057390 + c0056c74: 0ed0006f j c0057560 -00000000c0056aa8 : +00000000c0056c78 : gettimeofday(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:59 * set appropriately. @@ -243538,9 +243736,9 @@ gettimeofday(): int gettimeofday(FAR struct timeval *tv, FAR struct timezone *tz) { - c0056aa8: 1101 addi sp,sp,-32 - c0056aaa: ec06 sd ra,24(sp) - c0056aac: e822 sd s0,16(sp) + c0056c78: 1101 addi sp,sp,-32 + c0056c7a: ec06 sd ra,24(sp) + c0056c7c: e822 sd s0,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:66 int ret; @@ -243548,16 +243746,16 @@ int gettimeofday(FAR struct timeval *tv, FAR struct timezone *tz) #ifdef CONFIG_DEBUG_FEATURES if (!tv) - c0056aae: e911 bnez a0,c0056ac2 + c0056c7e: e911 bnez a0,c0056c92 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:68 { set_errno(EINVAL); - c0056ab0: 824fd0ef jal ra,c0053ad4 <__errno> - c0056ab4: 47d9 li a5,22 - c0056ab6: c11c sw a5,0(a0) + c0056c80: 824fd0ef jal ra,c0053ca4 <__errno> + c0056c84: 47d9 li a5,22 + c0056c86: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:69 return ERROR; - c0056ab8: 557d li a0,-1 + c0056c88: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:85 tv->tv_sec = ts.tv_sec; tv->tv_usec = ts.tv_nsec / NSEC_PER_USEC; @@ -243565,36 +243763,36 @@ int gettimeofday(FAR struct timeval *tv, FAR struct timezone *tz) return ret; } - c0056aba: 60e2 ld ra,24(sp) - c0056abc: 6442 ld s0,16(sp) - c0056abe: 6105 addi sp,sp,32 - c0056ac0: 8082 ret - c0056ac2: 842a mv s0,a0 + c0056c8a: 60e2 ld ra,24(sp) + c0056c8c: 6442 ld s0,16(sp) + c0056c8e: 6105 addi sp,sp,32 + c0056c90: 8082 ret + c0056c92: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:75 ret = clock_gettime(CLOCK_REALTIME, &ts); - c0056ac4: 858a mv a1,sp - c0056ac6: 4501 li a0,0 - c0056ac8: 7ea000ef jal ra,c00572b2 + c0056c94: 858a mv a1,sp + c0056c96: 4501 li a0,0 + c0056c98: 7ea000ef jal ra,c0057482 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:76 if (ret == OK) - c0056acc: f57d bnez a0,c0056aba + c0056c9c: f57d bnez a0,c0056c8a /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:80 tv->tv_sec = ts.tv_sec; - c0056ace: 4782 lw a5,0(sp) + c0056c9e: 4782 lw a5,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:81 tv->tv_usec = ts.tv_nsec / NSEC_PER_USEC; - c0056ad0: 3e800713 li a4,1000 + c0056ca0: 3e800713 li a4,1000 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:80 tv->tv_sec = ts.tv_sec; - c0056ad4: c01c sw a5,0(s0) + c0056ca4: c01c sw a5,0(s0) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gettimeofday.c:81 tv->tv_usec = ts.tv_nsec / NSEC_PER_USEC; - c0056ad6: 67a2 ld a5,8(sp) - c0056ad8: 02e7c7b3 div a5,a5,a4 - c0056adc: e41c sd a5,8(s0) - c0056ade: bff1 j c0056aba + c0056ca6: 67a2 ld a5,8(sp) + c0056ca8: 02e7c7b3 div a5,a5,a4 + c0056cac: e41c sd a5,8(s0) + c0056cae: bff1 j c0056c8a -00000000c0056ae0 : +00000000c0056cb0 : nanosleep(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:83 * implementation. @@ -243603,9 +243801,9 @@ nanosleep(): int nanosleep(FAR const struct timespec *rqtp, FAR struct timespec *rmtp) { - c0056ae0: 1141 addi sp,sp,-16 - c0056ae2: 862a mv a2,a0 - c0056ae4: 86ae mv a3,a1 + c0056cb0: 1141 addi sp,sp,-16 + c0056cb2: 862a mv a2,a0 + c0056cb4: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:94 * As clock_nanosleep() method return errno on fail, which is not * compatible with nanosleep(), the nanosleep() need to return -1 on fail, @@ -243613,39 +243811,39 @@ int nanosleep(FAR const struct timespec *rqtp, FAR struct timespec *rmtp) */ ret = clock_nanosleep(CLOCK_REALTIME, 0, rqtp, rmtp); - c0056ae6: 4501 li a0,0 - c0056ae8: 4581 li a1,0 + c0056cb6: 4501 li a0,0 + c0056cb8: 4581 li a1,0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:83 { - c0056aea: e022 sd s0,0(sp) - c0056aec: e406 sd ra,8(sp) + c0056cba: e022 sd s0,0(sp) + c0056cbc: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:94 ret = clock_nanosleep(CLOCK_REALTIME, 0, rqtp, rmtp); - c0056aee: 7d8000ef jal ra,c00572c6 - c0056af2: 842a mv s0,a0 + c0056cbe: 7d8000ef jal ra,c0057496 + c0056cc2: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:95 if (ret != 0) - c0056af4: c509 beqz a0,c0056afe + c0056cc4: c509 beqz a0,c0056cce /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:97 { set_errno(ret); - c0056af6: fdffc0ef jal ra,c0053ad4 <__errno> - c0056afa: c100 sw s0,0(a0) + c0056cc6: fdffc0ef jal ra,c0053ca4 <__errno> + c0056cca: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:98 ret = ERROR; - c0056afc: 547d li s0,-1 + c0056ccc: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_nanosleep.c:102 } return ret; } - c0056afe: 60a2 ld ra,8(sp) - c0056b00: 8522 mv a0,s0 - c0056b02: 6402 ld s0,0(sp) - c0056b04: 0141 addi sp,sp,16 - c0056b06: 8082 ret + c0056cce: 60a2 ld ra,8(sp) + c0056cd0: 8522 mv a0,s0 + c0056cd2: 6402 ld s0,0(sp) + c0056cd4: 0141 addi sp,sp,16 + c0056cd6: 8082 ret -00000000c0056b08 : +00000000c0056cd8 : gmtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:287 * Time conversion (based on the POSIX API) @@ -243654,20 +243852,20 @@ gmtime_r(): FAR struct tm *gmtime_r(FAR const time_t *timep, FAR struct tm *result) { - c0056b08: 7119 addi sp,sp,-128 - c0056b0a: f4a6 sd s1,104(sp) - c0056b0c: ecce sd s3,88(sp) - c0056b0e: e8d2 sd s4,80(sp) - c0056b10: e4d6 sd s5,72(sp) - c0056b12: e0da sd s6,64(sp) - c0056b14: fc86 sd ra,120(sp) - c0056b16: f8a2 sd s0,112(sp) - c0056b18: f0ca sd s2,96(sp) - c0056b1a: fc5e sd s7,56(sp) - c0056b1c: f862 sd s8,48(sp) - c0056b1e: f466 sd s9,40(sp) - c0056b20: f06a sd s10,32(sp) - c0056b22: ec6e sd s11,24(sp) + c0056cd8: 7119 addi sp,sp,-128 + c0056cda: f4a6 sd s1,104(sp) + c0056cdc: ecce sd s3,88(sp) + c0056cde: e8d2 sd s4,80(sp) + c0056ce0: e4d6 sd s5,72(sp) + c0056ce2: e0da sd s6,64(sp) + c0056ce4: fc86 sd ra,120(sp) + c0056ce6: f8a2 sd s0,112(sp) + c0056ce8: f0ca sd s2,96(sp) + c0056cea: fc5e sd s7,56(sp) + c0056cec: f862 sd s8,48(sp) + c0056cee: f466 sd s9,40(sp) + c0056cf0: f06a sd s10,32(sp) + c0056cf2: ec6e sd s11,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:299 int min; int sec; @@ -243675,7 +243873,7 @@ FAR struct tm *gmtime_r(FAR const time_t *timep, FAR struct tm *result) /* Get the seconds since the EPOCH */ epoch = *timep; - c0056b24: 4100 lw s0,0(a0) + c0056cf4: 4100 lw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:305 linfo("timer=%d\n", (int)epoch); @@ -243683,122 +243881,122 @@ FAR struct tm *gmtime_r(FAR const time_t *timep, FAR struct tm *result) jdn = epoch / SEC_PER_DAY; epoch -= SEC_PER_DAY * jdn; - c0056b26: 6755 lui a4,0x15 - c0056b28: 1807071b addiw a4,a4,384 - c0056b2c: 02e479bb remuw s3,s0,a4 + c0056cf6: 6755 lui a4,0x15 + c0056cf8: 1807071b addiw a4,a4,384 + c0056cfc: 02e479bb remuw s3,s0,a4 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:307 hour = epoch / SEC_PER_HOUR; - c0056b30: 6785 lui a5,0x1 - c0056b32: e107879b addiw a5,a5,-496 + c0056d00: 6785 lui a5,0x1 + c0056d02: e107879b addiw a5,a5,-496 clock_utc2calendar(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:162 value = days / (4 * DAYSPERNYEAR + 1); /* Number of 4-years periods since the epoch */ - c0056b36: 07862537 lui a0,0x7862 - c0056b3a: f805051b addiw a0,a0,-128 + c0056d06: 07862537 lui a0,0x7862 + c0056d0a: f805051b addiw a0,a0,-128 gmtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:287 { - c0056b3e: 84ae mv s1,a1 + c0056d0e: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:307 hour = epoch / SEC_PER_HOUR; - c0056b40: 02f9db3b divuw s6,s3,a5 + c0056d10: 02f9db3b divuw s6,s3,a5 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:308 epoch -= SEC_PER_HOUR * hour; - c0056b44: 02fb07bb mulw a5,s6,a5 - c0056b48: 40f987bb subw a5,s3,a5 + c0056d14: 02fb07bb mulw a5,s6,a5 + c0056d18: 40f987bb subw a5,s3,a5 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:310 min = epoch / SEC_PER_MIN; - c0056b4c: 03c00993 li s3,60 - c0056b50: 0337dabb divuw s5,a5,s3 + c0056d1c: 03c00993 li s3,60 + c0056d20: 0337dabb divuw s5,a5,s3 clock_utc2calendar(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:162 value = days / (4 * DAYSPERNYEAR + 1); /* Number of 4-years periods since the epoch */ - c0056b54: 02a4553b divuw a0,s0,a0 + c0056d24: 02a4553b divuw a0,s0,a0 gmtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:304 jdn = epoch / SEC_PER_DAY; - c0056b58: 02e4543b divuw s0,s0,a4 + c0056d28: 02e4543b divuw s0,s0,a4 clock_utc2calendar(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:164 value <<= 2; /* Years since the epoch */ - c0056b5c: 00251a1b slliw s4,a0,0x2 + c0056d2c: 00251a1b slliw s4,a0,0x2 gmtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:311 epoch -= SEC_PER_MIN * min; - c0056b60: 035989bb mulw s3,s3,s5 - c0056b64: 413789bb subw s3,a5,s3 + c0056d30: 035989bb mulw s3,s3,s5 + c0056d34: 413789bb subw s3,a5,s3 clock_utc2calendar(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:163 days -= value * (4 * DAYSPERNYEAR + 1); /* Remaining days */ - c0056b68: 5b500793 li a5,1461 - c0056b6c: 02a787bb mulw a5,a5,a0 + c0056d38: 5b500793 li a5,1461 + c0056d3c: 02a787bb mulw a5,a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:171 leapyear = clock_isleapyear(value + EPOCH_YEAR); - c0056b70: 7b2a051b addiw a0,s4,1970 + c0056d40: 7b2a051b addiw a0,s4,1970 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:163 days -= value * (4 * DAYSPERNYEAR + 1); /* Remaining days */ - c0056b74: 9c1d subw s0,s0,a5 + c0056d44: 9c1d subw s0,s0,a5 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:171 leapyear = clock_isleapyear(value + EPOCH_YEAR); - c0056b76: 69c000ef jal ra,c0057212 + c0056d46: 69c000ef jal ra,c00573e2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:175 tmp = (leapyear ? DAYSPERLYEAR : DAYSPERNYEAR); - c0056b7a: e161 bnez a0,c0056c3a - c0056b7c: 4581 li a1,0 - c0056b7e: 16d00793 li a5,365 + c0056d4a: e161 bnez a0,c0056e0a + c0056d4c: 4581 li a1,0 + c0056d4e: 16d00793 li a5,365 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:179 while (days >= tmp) - c0056b82: 0007871b sext.w a4,a5 - c0056b86: 0af47e63 bgeu s0,a5,c0056c42 + c0056d52: 0007871b sext.w a4,a5 + c0056d56: 0af47e63 bgeu s0,a5,c0056e12 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:200 *year = EPOCH_YEAR + value; - c0056b8a: 7b2a0c1b addiw s8,s4,1970 + c0056d5a: 7b2a0c1b addiw s8,s4,1970 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:205 max = 11; - c0056b8e: 4cad li s9,11 + c0056d5e: 4cad li s9,11 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:204 min = 0; - c0056b90: 4901 li s2,0 + c0056d60: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:211 value = (min + max) >> 1; - c0056b92: 01990bbb addw s7,s2,s9 - c0056b96: 401bdd1b sraiw s10,s7,0x1 + c0056d62: 01990bbb addw s7,s2,s9 + c0056d66: 401bdd1b sraiw s10,s7,0x1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:217 tmp = clock_daysbeforemonth(value + 1, leapyear); - c0056b9a: 001d0d9b addiw s11,s10,1 - c0056b9e: 856e mv a0,s11 - c0056ba0: e42e sd a1,8(sp) - c0056ba2: 650000ef jal ra,c00571f2 + c0056d6a: 001d0d9b addiw s11,s10,1 + c0056d6e: 856e mv a0,s11 + c0056d70: e42e sd a1,8(sp) + c0056d72: 650000ef jal ra,c00573c2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:223 if (tmp > days) - c0056ba6: 2501 sext.w a0,a0 - c0056ba8: 65a2 ld a1,8(sp) - c0056baa: 0aa47d63 bgeu s0,a0,c0056c64 + c0056d76: 2501 sext.w a0,a0 + c0056d78: 65a2 ld a1,8(sp) + c0056d7a: 0aa47d63 bgeu s0,a0,c0056e34 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:229 tmp = clock_daysbeforemonth(value, leapyear); - c0056bae: 856a mv a0,s10 - c0056bb0: 642000ef jal ra,c00571f2 + c0056d7e: 856a mv a0,s10 + c0056d80: 642000ef jal ra,c00573c2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:230 if (tmp > days) - c0056bb4: 2501 sext.w a0,a0 - c0056bb6: 65a2 ld a1,8(sp) - c0056bb8: 0aa47863 bgeu s0,a0,c0056c68 + c0056d84: 2501 sext.w a0,a0 + c0056d86: 65a2 ld a1,8(sp) + c0056d88: 0aa47863 bgeu s0,a0,c0056e38 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:234 max = value - 1; - c0056bbc: fffd0c9b addiw s9,s10,-1 + c0056d8c: fffd0c9b addiw s9,s10,-1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:256 while (min < max); - c0056bc0: fd9949e3 blt s2,s9,c0056b92 + c0056d90: fd9949e3 blt s2,s9,c0056d62 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:262 days -= clock_daysbeforemonth(value, leapyear); - c0056bc4: 854a mv a0,s2 - c0056bc6: 62c000ef jal ra,c00571f2 - c0056bca: 9c09 subw s0,s0,a0 + c0056d94: 854a mv a0,s2 + c0056d96: 62c000ef jal ra,c00573c2 + c0056d9a: 9c09 subw s0,s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:269 *day = days + 1; /* 1-based */ - c0056bcc: 0014051b addiw a0,s0,1 + c0056d9c: 0014051b addiw a0,s0,1 gmtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:325 @@ -243807,7 +244005,7 @@ gmtime_r(): /* Then return the struct tm contents */ result->tm_year = year - TM_YEAR_BASE; /* Relative to 1900 */ - c0056bd0: 046a0a1b addiw s4,s4,70 + c0056da0: 046a0a1b addiw s4,s4,70 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:332 result->tm_mday = day; /* one-based */ result->tm_hour = hour; @@ -243815,49 +244013,49 @@ gmtime_r(): result->tm_sec = sec; result->tm_wday = clock_dayoftheweek(day, month, year); - c0056bd4: 8662 mv a2,s8 - c0056bd6: 0019059b addiw a1,s2,1 + c0056da4: 8662 mv a2,s8 + c0056da6: 0019059b addiw a1,s2,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:325 result->tm_year = year - TM_YEAR_BASE; /* Relative to 1900 */ - c0056bda: 0144aa23 sw s4,20(s1) + c0056daa: 0144aa23 sw s4,20(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:326 result->tm_mon = month - 1; /* zero-based */ - c0056bde: 0124a823 sw s2,16(s1) + c0056dae: 0124a823 sw s2,16(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:328 result->tm_hour = hour; - c0056be2: 0164a423 sw s6,8(s1) + c0056db2: 0164a423 sw s6,8(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:329 result->tm_min = min; - c0056be6: 0154a223 sw s5,4(s1) + c0056db6: 0154a223 sw s5,4(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:330 result->tm_sec = sec; - c0056bea: 0134a023 sw s3,0(s1) + c0056dba: 0134a023 sw s3,0(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:327 result->tm_mday = day; /* one-based */ - c0056bee: c4c8 sw a0,12(s1) + c0056dbe: c4c8 sw a0,12(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:332 result->tm_wday = clock_dayoftheweek(day, month, year); - c0056bf0: 644000ef jal ra,c0057234 + c0056dc0: 644000ef jal ra,c0057404 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:334 result->tm_yday = day - 1 + clock_daysbeforemonth(result->tm_mon, - c0056bf4: 0104a903 lw s2,16(s1) + c0056dc4: 0104a903 lw s2,16(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:332 result->tm_wday = clock_dayoftheweek(day, month, year); - c0056bf8: cc88 sw a0,24(s1) + c0056dc8: cc88 sw a0,24(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:335 clock_isleapyear(year)); - c0056bfa: 8562 mv a0,s8 - c0056bfc: 616000ef jal ra,c0057212 + c0056dca: 8562 mv a0,s8 + c0056dcc: 616000ef jal ra,c00573e2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:334 clock_daysbeforemonth(result->tm_mon, - c0056c00: 00a035b3 snez a1,a0 - c0056c04: 854a mv a0,s2 - c0056c06: 5ec000ef jal ra,c00571f2 + c0056dd0: 00a035b3 snez a1,a0 + c0056dd4: 854a mv a0,s2 + c0056dd6: 5ec000ef jal ra,c00573c2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:333 result->tm_yday = day - 1 + - c0056c0a: 9c29 addw s0,s0,a0 - c0056c0c: ccc0 sw s0,28(s1) + c0056dda: 9c29 addw s0,s0,a0 + c0056ddc: ccc0 sw s0,28(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:341 result->tm_isdst = 0; result->tm_gmtoff = 0; @@ -243865,81 +244063,81 @@ gmtime_r(): return result; } - c0056c0e: 70e6 ld ra,120(sp) - c0056c10: 7446 ld s0,112(sp) + c0056dde: 70e6 ld ra,120(sp) + c0056de0: 7446 ld s0,112(sp) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:336 result->tm_isdst = 0; - c0056c12: 0204a023 sw zero,32(s1) + c0056de2: 0204a023 sw zero,32(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:337 result->tm_gmtoff = 0; - c0056c16: 0204b423 sd zero,40(s1) + c0056de6: 0204b423 sd zero,40(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:338 result->tm_zone = NULL; - c0056c1a: 0204b823 sd zero,48(s1) + c0056dea: 0204b823 sd zero,48(s1) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:341 } - c0056c1e: 7906 ld s2,96(sp) - c0056c20: 69e6 ld s3,88(sp) - c0056c22: 6a46 ld s4,80(sp) - c0056c24: 6aa6 ld s5,72(sp) - c0056c26: 6b06 ld s6,64(sp) - c0056c28: 7be2 ld s7,56(sp) - c0056c2a: 7c42 ld s8,48(sp) - c0056c2c: 7ca2 ld s9,40(sp) - c0056c2e: 7d02 ld s10,32(sp) - c0056c30: 6de2 ld s11,24(sp) - c0056c32: 8526 mv a0,s1 - c0056c34: 74a6 ld s1,104(sp) - c0056c36: 6109 addi sp,sp,128 - c0056c38: 8082 ret + c0056dee: 7906 ld s2,96(sp) + c0056df0: 69e6 ld s3,88(sp) + c0056df2: 6a46 ld s4,80(sp) + c0056df4: 6aa6 ld s5,72(sp) + c0056df6: 6b06 ld s6,64(sp) + c0056df8: 7be2 ld s7,56(sp) + c0056dfa: 7c42 ld s8,48(sp) + c0056dfc: 7ca2 ld s9,40(sp) + c0056dfe: 7d02 ld s10,32(sp) + c0056e00: 6de2 ld s11,24(sp) + c0056e02: 8526 mv a0,s1 + c0056e04: 74a6 ld s1,104(sp) + c0056e06: 6109 addi sp,sp,128 + c0056e08: 8082 ret clock_utc2calendar(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:341 - c0056c3a: 4585 li a1,1 + c0056e0a: 4585 li a1,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:175 tmp = (leapyear ? DAYSPERLYEAR : DAYSPERNYEAR); - c0056c3c: 16e00793 li a5,366 - c0056c40: b789 j c0056b82 + c0056e0c: 16e00793 li a5,366 + c0056e10: b789 j c0056d52 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:188 leapyear = clock_isleapyear(value + EPOCH_YEAR); - c0056c42: 7b3a051b addiw a0,s4,1971 + c0056e12: 7b3a051b addiw a0,s4,1971 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:183 value++; - c0056c46: 001a091b addiw s2,s4,1 + c0056e16: 001a091b addiw s2,s4,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:184 days -= tmp; - c0056c4a: 9c19 subw s0,s0,a4 + c0056e1a: 9c19 subw s0,s0,a4 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:188 leapyear = clock_isleapyear(value + EPOCH_YEAR); - c0056c4c: 5c6000ef jal ra,c0057212 + c0056e1c: 5c6000ef jal ra,c00573e2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:192 tmp = (leapyear ? DAYSPERLYEAR : DAYSPERNYEAR); - c0056c50: e511 bnez a0,c0056c5c - c0056c52: 4581 li a1,0 - c0056c54: 16d00793 li a5,365 - c0056c58: 8a4a mv s4,s2 - c0056c5a: b725 j c0056b82 - c0056c5c: 4585 li a1,1 - c0056c5e: 16e00793 li a5,366 - c0056c62: bfdd j c0056c58 + c0056e20: e511 bnez a0,c0056e2c + c0056e22: 4581 li a1,0 + c0056e24: 16d00793 li a5,365 + c0056e28: 8a4a mv s4,s2 + c0056e2a: b725 j c0056d52 + c0056e2c: 4585 li a1,1 + c0056e2e: 16e00793 li a5,366 + c0056e32: bfdd j c0056e28 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:247 min = value + 1; - c0056c64: 896e mv s2,s11 - c0056c66: bfa9 j c0056bc0 + c0056e34: 896e mv s2,s11 + c0056e36: bfa9 j c0056d90 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:211 value = (min + max) >> 1; - c0056c68: 896a mv s2,s10 - c0056c6a: bfa9 j c0056bc4 + c0056e38: 896a mv s2,s10 + c0056e3a: bfa9 j c0056d94 -00000000c0056c6c : +00000000c0056e3c : localtime_r(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_gmtimer.c:345 FAR struct tm *localtime_r(FAR const time_t *timep, FAR struct tm *result) { return gmtime_r(timep, result); - c0056c6c: e9dff06f j c0056b08 + c0056e3c: e9dff06f j c0056cd8 -00000000c0056c70 : +00000000c0056e40 : task_get_info(): /Users/Luppy/riscv/nuttx/libs/libc/tls/task_getinfo.c:50 * @@ -243948,21 +244146,21 @@ task_get_info(): FAR struct task_info_s *task_get_info(void) { FAR struct tls_info_s *info = tls_get_info(); - c0056c70: 7779 lui a4,0xffffe + c0056e40: 7779 lui a4,0xffffe up_getsp(): /Users/Luppy/riscv/nuttx/include/arch/irq.h:601 - c0056c72: 878a mv a5,sp + c0056e42: 878a mv a5,sp task_get_info(): /Users/Luppy/riscv/nuttx/libs/libc/tls/task_getinfo.c:50 - c0056c74: 8ff9 and a5,a5,a4 + c0056e44: 8ff9 and a5,a5,a4 /Users/Luppy/riscv/nuttx/libs/libc/tls/task_getinfo.c:53 return info->tl_task; } - c0056c76: 6388 ld a0,0(a5) - c0056c78: 8082 ret + c0056e46: 6388 ld a0,0(a5) + c0056e48: 8082 ret -00000000c0056c7a : +00000000c0056e4a : sysconf(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 * It was originally created to support only the functionality of @@ -243971,16 +244169,16 @@ sysconf(): */ switch (name) - c0056c7a: 03c00713 li a4,60 + c0056e4a: 03c00713 li a4,60 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:207 { - c0056c7e: 87aa mv a5,a0 + c0056e4e: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056c80: 06a74a63 blt a4,a0,c0056cf4 - c0056c84: 03000713 li a4,48 - c0056c88: 02a74763 blt a4,a0,c0056cb6 - c0056c8c: 4759 li a4,22 + c0056e50: 06a74a63 blt a4,a0,c0056ec4 + c0056e54: 03000713 li a4,48 + c0056e58: 02a74763 blt a4,a0,c0056e86 + c0056e5c: 4759 li a4,22 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:239 case _SC_OPEN_MAX: @@ -243988,18 +244186,18 @@ sysconf(): case _SC_ATEXIT_MAX: return ATEXIT_MAX; - c0056c8e: 4501 li a0,0 + c0056e5e: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056c90: 0ae78463 beq a5,a4,c0056d38 - c0056c94: 04f74463 blt a4,a5,c0056cdc - c0056c98: 4749 li a4,18 - c0056c9a: 4505 li a0,1 - c0056c9c: 08e78e63 beq a5,a4,c0056d38 + c0056e60: 0ae78463 beq a5,a4,c0056f08 + c0056e64: 04f74463 blt a4,a5,c0056eac + c0056e68: 4749 li a4,18 + c0056e6a: 4505 li a0,1 + c0056e6c: 08e78e63 beq a5,a4,c0056f08 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:207 { - c0056ca0: 1141 addi sp,sp,-16 - c0056ca2: e406 sd ra,8(sp) + c0056e70: 1141 addi sp,sp,-16 + c0056e72: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:268 errcode = ENOSYS; #endif @@ -244007,93 +244205,93 @@ sysconf(): } set_errno(errcode); - c0056ca4: e31fc0ef jal ra,c0053ad4 <__errno> - c0056ca8: 02600793 li a5,38 - c0056cac: c11c sw a5,0(a0) + c0056e74: e31fc0ef jal ra,c0053ca4 <__errno> + c0056e78: 02600793 li a5,38 + c0056e7c: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:270 return ERROR; } - c0056cae: 60a2 ld ra,8(sp) + c0056e7e: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:269 return ERROR; - c0056cb0: 557d li a0,-1 + c0056e80: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:270 } - c0056cb2: 0141 addi sp,sp,16 - c0056cb4: 8082 ret - c0056cb6: fcf5079b addiw a5,a0,-49 - c0056cba: 0007869b sext.w a3,a5 - c0056cbe: 472d li a4,11 - c0056cc0: fed760e3 bltu a4,a3,c0056ca0 - c0056cc4: 02079713 slli a4,a5,0x20 - c0056cc8: 01e75793 srli a5,a4,0x1e - c0056ccc: 0001e717 auipc a4,0x1e - c0056cd0: 8e470713 addi a4,a4,-1820 # c00745b0 - c0056cd4: 97ba add a5,a5,a4 - c0056cd6: 439c lw a5,0(a5) - c0056cd8: 97ba add a5,a5,a4 - c0056cda: 8782 jr a5 + c0056e82: 0141 addi sp,sp,16 + c0056e84: 8082 ret + c0056e86: fcf5079b addiw a5,a0,-49 + c0056e8a: 0007869b sext.w a3,a5 + c0056e8e: 472d li a4,11 + c0056e90: fed760e3 bltu a4,a3,c0056e70 + c0056e94: 02079713 slli a4,a5,0x20 + c0056e98: 01e75793 srli a5,a4,0x1e + c0056e9c: 0001e717 auipc a4,0x1e + c0056ea0: 97470713 addi a4,a4,-1676 # c0074810 + c0056ea4: 97ba add a5,a5,a4 + c0056ea6: 439c lw a5,0(a5) + c0056ea8: 97ba add a5,a5,a4 + c0056eaa: 8782 jr a5 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056cdc: 4775 li a4,29 + c0056eac: 4775 li a4,29 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:233 return CLOCKS_PER_SEC; - c0056cde: 3e800513 li a0,1000 + c0056eae: 3e800513 li a0,1000 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056ce2: 04e78b63 beq a5,a4,c0056d38 + c0056eb2: 04e78b63 beq a5,a4,c0056f08 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:223 return _POSIX_PRIORITIZED_IO; - c0056ce6: 00031537 lui a0,0x31 + c0056eb6: 00031537 lui a0,0x31 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056cea: 02000713 li a4,32 + c0056eba: 02000713 li a4,32 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:223 return _POSIX_PRIORITIZED_IO; - c0056cee: 3f050513 addi a0,a0,1008 # 313f0 <__clzdi2-0xbffcec10> - c0056cf2: b76d j c0056c9c + c0056ebe: 3f050513 addi a0,a0,1008 # 313f0 <__clzdi2-0xbffcec10> + c0056ec2: b76d j c0056e6c /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056cf4: 05900713 li a4,89 + c0056ec4: 05900713 li a4,89 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:257 return UINT8_MAX; - c0056cf8: 0ff00513 li a0,255 + c0056ec8: 0ff00513 li a0,255 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056cfc: 02e78e63 beq a5,a4,c0056d38 - c0056d00: 00f74b63 blt a4,a5,c0056d16 - c0056d04: 04f00713 li a4,79 - c0056d08: 02e78363 beq a5,a4,c0056d2e - c0056d0c: 05800713 li a4,88 + c0056ecc: 02e78e63 beq a5,a4,c0056f08 + c0056ed0: 00f74b63 blt a4,a5,c0056ee6 + c0056ed4: 04f00713 li a4,79 + c0056ed8: 02e78363 beq a5,a4,c0056efe + c0056edc: 05800713 li a4,88 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:236 return OPEN_MAX; - c0056d10: 10000513 li a0,256 - c0056d14: b761 j c0056c9c + c0056ee0: 10000513 li a0,256 + c0056ee4: b761 j c0056e6c /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:216 switch (name) - c0056d16: f837879b addiw a5,a5,-125 - c0056d1a: 4705 li a4,1 - c0056d1c: f8f762e3 bltu a4,a5,c0056ca0 - c0056d20: 4505 li a0,1 - c0056d22: 8082 ret + c0056ee6: f837879b addiw a5,a5,-125 + c0056eea: 4705 li a4,1 + c0056eec: f8f762e3 bltu a4,a5,c0056e70 + c0056ef0: 4505 li a0,1 + c0056ef2: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:236 return OPEN_MAX; - c0056d24: 10000513 li a0,256 - c0056d28: 8082 ret + c0056ef4: 10000513 li a0,256 + c0056ef8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:249 return DEFAULT_MM_PGSIZE; - c0056d2a: 6505 lui a0,0x1 - c0056d2c: 8082 ret + c0056efa: 6505 lui a0,0x1 + c0056efc: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:223 return _POSIX_PRIORITIZED_IO; - c0056d2e: 00031537 lui a0,0x31 - c0056d32: 3f050513 addi a0,a0,1008 # 313f0 <__clzdi2-0xbffcec10> - c0056d36: 8082 ret + c0056efe: 00031537 lui a0,0x31 + c0056f02: 3f050513 addi a0,a0,1008 # 313f0 <__clzdi2-0xbffcec10> + c0056f06: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_sysconf.c:270 } - c0056d38: 8082 ret + c0056f08: 8082 ret -00000000c0056d3a : +00000000c0056f0a : getoptindp(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getoptindp.c:45 * modules that need to access the base, global variable, optind. @@ -244102,20 +244300,20 @@ getoptindp(): int *getoptindp(void) { - c0056d3a: 1141 addi sp,sp,-16 - c0056d3c: e406 sd ra,8(sp) + c0056f0a: 1141 addi sp,sp,-16 + c0056f0c: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getoptindp.c:46 FAR struct getopt_s *go = getoptvars(); - c0056d3e: 538000ef jal ra,c0057276 + c0056f0e: 538000ef jal ra,c0057446 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getoptindp.c:48 return &go->go_optind; } - c0056d42: 60a2 ld ra,8(sp) - c0056d44: 0531 addi a0,a0,12 - c0056d46: 0141 addi sp,sp,16 - c0056d48: 8082 ret + c0056f12: 60a2 ld ra,8(sp) + c0056f14: 0531 addi a0,a0,12 + c0056f16: 0141 addi sp,sp,16 + c0056f18: 8082 ret -00000000c0056d4a : +00000000c0056f1a : utimes(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:39 @@ -244124,122 +244322,122 @@ int utimes(FAR const char *path, const struct timeval tv[2]) struct timespec times[2]; if (tv == NULL) - c0056d4a: e199 bnez a1,c0056d50 + c0056f1a: e199 bnez a1,c0056f20 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:41 { return utimens(path, NULL); - c0056d4c: 0d10006f j c005761c + c0056f1c: 0d10006f j c00577ec /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:36 { - c0056d50: 7179 addi sp,sp,-48 - c0056d52: f406 sd ra,40(sp) + c0056f20: 7179 addi sp,sp,-48 + c0056f22: f406 sd ra,40(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:44 } times[0].tv_sec = tv[0].tv_sec; - c0056d54: 4198 lw a4,0(a1) + c0056f24: 4198 lw a4,0(a1) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:45 times[0].tv_nsec = tv[0].tv_usec * 1000; - c0056d56: 3e800693 li a3,1000 + c0056f26: 3e800693 li a3,1000 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:47 times[1].tv_sec = tv[1].tv_sec; times[1].tv_nsec = tv[1].tv_usec * 1000; - c0056d5a: 6d9c ld a5,24(a1) + c0056f2a: 6d9c ld a5,24(a1) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:44 times[0].tv_sec = tv[0].tv_sec; - c0056d5c: c03a sw a4,0(sp) + c0056f2c: c03a sw a4,0(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:45 times[0].tv_nsec = tv[0].tv_usec * 1000; - c0056d5e: 6598 ld a4,8(a1) + c0056f2e: 6598 ld a4,8(a1) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:47 times[1].tv_nsec = tv[1].tv_usec * 1000; - c0056d60: 02d787b3 mul a5,a5,a3 + c0056f30: 02d787b3 mul a5,a5,a3 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:45 times[0].tv_nsec = tv[0].tv_usec * 1000; - c0056d64: 02d70733 mul a4,a4,a3 + c0056f34: 02d70733 mul a4,a4,a3 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:47 times[1].tv_nsec = tv[1].tv_usec * 1000; - c0056d68: ec3e sd a5,24(sp) + c0056f38: ec3e sd a5,24(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:45 times[0].tv_nsec = tv[0].tv_usec * 1000; - c0056d6a: e43a sd a4,8(sp) + c0056f3a: e43a sd a4,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:46 times[1].tv_sec = tv[1].tv_sec; - c0056d6c: 4998 lw a4,16(a1) + c0056f3c: 4998 lw a4,16(a1) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:49 return utimens(path, times); - c0056d6e: 858a mv a1,sp + c0056f3e: 858a mv a1,sp /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:46 times[1].tv_sec = tv[1].tv_sec; - c0056d70: c83a sw a4,16(sp) + c0056f40: c83a sw a4,16(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:49 return utimens(path, times); - c0056d72: 0ab000ef jal ra,c005761c + c0056f42: 0ab000ef jal ra,c00577ec /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:50 } - c0056d76: 70a2 ld ra,40(sp) - c0056d78: 6145 addi sp,sp,48 - c0056d7a: 8082 ret + c0056f46: 70a2 ld ra,40(sp) + c0056f48: 6145 addi sp,sp,48 + c0056f4a: 8082 ret -00000000c0056d7c : +00000000c0056f4c : futimesat(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:53 int futimesat(int dirfd, FAR const char *path, const struct timeval tv[2]) { - c0056d7c: 712d addi sp,sp,-288 - c0056d7e: e626 sd s1,264(sp) + c0056f4c: 712d addi sp,sp,-288 + c0056f4e: e626 sd s1,264(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:57 char fullpath[PATH_MAX]; int ret; ret = lib_getfullpath(dirfd, path, fullpath, sizeof(fullpath)); - c0056d80: 10000693 li a3,256 + c0056f50: 10000693 li a3,256 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:53 { - c0056d84: 84b2 mv s1,a2 + c0056f54: 84b2 mv s1,a2 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:57 ret = lib_getfullpath(dirfd, path, fullpath, sizeof(fullpath)); - c0056d86: 860a mv a2,sp + c0056f56: 860a mv a2,sp /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:53 { - c0056d88: ee06 sd ra,280(sp) - c0056d8a: ea22 sd s0,272(sp) + c0056f58: ee06 sd ra,280(sp) + c0056f5a: ea22 sd s0,272(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:57 ret = lib_getfullpath(dirfd, path, fullpath, sizeof(fullpath)); - c0056d8c: 1a6000ef jal ra,c0056f32 + c0056f5c: 1a6000ef jal ra,c0057102 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:58 if (ret < 0) - c0056d90: 00055e63 bgez a0,c0056dac - c0056d94: 842a mv s0,a0 + c0056f60: 00055e63 bgez a0,c0056f7c + c0056f64: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:60 { set_errno(-ret); - c0056d96: 4080043b negw s0,s0 - c0056d9a: d3bfc0ef jal ra,c0053ad4 <__errno> - c0056d9e: c100 sw s0,0(a0) + c0056f66: 4080043b negw s0,s0 + c0056f6a: d3bfc0ef jal ra,c0053ca4 <__errno> + c0056f6e: c100 sw s0,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:61 return ERROR; - c0056da0: 557d li a0,-1 + c0056f70: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:65 } return utimes(fullpath, tv); } - c0056da2: 60f2 ld ra,280(sp) - c0056da4: 6452 ld s0,272(sp) - c0056da6: 64b2 ld s1,264(sp) - c0056da8: 6115 addi sp,sp,288 - c0056daa: 8082 ret + c0056f72: 60f2 ld ra,280(sp) + c0056f74: 6452 ld s0,272(sp) + c0056f76: 64b2 ld s1,264(sp) + c0056f78: 6115 addi sp,sp,288 + c0056f7a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_utimes.c:64 return utimes(fullpath, tv); - c0056dac: 85a6 mv a1,s1 - c0056dae: 850a mv a0,sp - c0056db0: f9bff0ef jal ra,c0056d4a - c0056db4: b7fd j c0056da2 + c0056f7c: 85a6 mv a1,s1 + c0056f7e: 850a mv a0,sp + c0056f80: f9bff0ef jal ra,c0056f1a + c0056f84: b7fd j c0056f72 -00000000c0056db6 : +00000000c0056f86 : setuid(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:55 @@ -244248,11 +244446,11 @@ int setuid(uid_t uid) /* NuttX only supports the user identity 'root' with a uid value of 0. */ if (uid == 0) - c0056db6: c919 beqz a0,c0056dcc + c0056f86: c919 beqz a0,c0056f9c /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:52 { - c0056db8: 1141 addi sp,sp,-16 - c0056dba: e406 sd ra,8(sp) + c0056f88: 1141 addi sp,sp,-16 + c0056f8a: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:64 /* All other uid values are considered invalid and not supported by the @@ -244260,28 +244458,28 @@ int setuid(uid_t uid) */ set_errno(EINVAL); - c0056dbc: d19fc0ef jal ra,c0053ad4 <__errno> - c0056dc0: 47d9 li a5,22 - c0056dc2: c11c sw a5,0(a0) + c0056f8c: d19fc0ef jal ra,c0053ca4 <__errno> + c0056f90: 47d9 li a5,22 + c0056f92: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:66 return -1; } - c0056dc4: 60a2 ld ra,8(sp) + c0056f94: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:65 return -1; - c0056dc6: 557d li a0,-1 + c0056f96: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:66 } - c0056dc8: 0141 addi sp,sp,16 - c0056dca: 8082 ret + c0056f98: 0141 addi sp,sp,16 + c0056f9a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:57 return 0; - c0056dcc: 4501 li a0,0 + c0056f9c: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setuid.c:66 } - c0056dce: 8082 ret + c0056f9e: 8082 ret -00000000c0056dd0 : +00000000c0056fa0 : setgid(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:56 @@ -244290,11 +244488,11 @@ int setgid(gid_t gid) /* NuttX only supports the group identity 'root' with a gid value of 0. */ if (gid == 0) - c0056dd0: c919 beqz a0,c0056de6 + c0056fa0: c919 beqz a0,c0056fb6 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:53 { - c0056dd2: 1141 addi sp,sp,-16 - c0056dd4: e406 sd ra,8(sp) + c0056fa2: 1141 addi sp,sp,-16 + c0056fa4: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:65 /* All other gid values are considered invalid and not supported by the @@ -244302,28 +244500,28 @@ int setgid(gid_t gid) */ set_errno(EINVAL); - c0056dd6: cfffc0ef jal ra,c0053ad4 <__errno> - c0056dda: 47d9 li a5,22 - c0056ddc: c11c sw a5,0(a0) + c0056fa6: cfffc0ef jal ra,c0053ca4 <__errno> + c0056faa: 47d9 li a5,22 + c0056fac: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:67 return -1; } - c0056dde: 60a2 ld ra,8(sp) + c0056fae: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:66 return -1; - c0056de0: 557d li a0,-1 + c0056fb0: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:67 } - c0056de2: 0141 addi sp,sp,16 - c0056de4: 8082 ret + c0056fb2: 0141 addi sp,sp,16 + c0056fb4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:58 return 0; - c0056de6: 4501 li a0,0 + c0056fb6: 4501 li a0,0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_setgid.c:67 } - c0056de8: 8082 ret + c0056fb8: 8082 ret -00000000c0056dea : +00000000c0056fba : chdir(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:74 * A component of the pathname is not a directory. @@ -244332,7 +244530,7 @@ chdir(): int chdir(FAR const char *path) { - c0056dea: 7119 addi sp,sp,-128 + c0056fba: 7119 addi sp,sp,-128 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:82 FAR char *abspath; int ret; @@ -244340,20 +244538,20 @@ int chdir(FAR const char *path) /* Verify that 'path' refers to a directory */ ret = stat(path, &buf); - c0056dec: 002c addi a1,sp,8 + c0056fbc: 002c addi a1,sp,8 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:74 { - c0056dee: f8a2 sd s0,112(sp) - c0056df0: f4a6 sd s1,104(sp) - c0056df2: fc86 sd ra,120(sp) - c0056df4: 84aa mv s1,a0 + c0056fbe: f8a2 sd s0,112(sp) + c0056fc0: f4a6 sd s1,104(sp) + c0056fc2: fc86 sd ra,120(sp) + c0056fc4: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:82 ret = stat(path, &buf); - c0056df6: 7e4000ef jal ra,c00575da - c0056dfa: 842a mv s0,a0 + c0056fc6: 7e4000ef jal ra,c00577aa + c0056fca: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:83 if (ret < 0) - c0056dfc: 00054d63 bltz a0,c0056e16 + c0056fcc: 00054d63 bltz a0,c0056fe6 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:90 return ret; } @@ -244361,20 +244559,20 @@ int chdir(FAR const char *path) /* Something exists here... is it a directory? */ if (!S_ISDIR(buf.st_mode)) - c0056e00: 47c2 lw a5,16(sp) - c0056e02: 673d lui a4,0xf - c0056e04: 8ff9 and a5,a5,a4 - c0056e06: 6711 lui a4,0x4 - c0056e08: 00e78d63 beq a5,a4,c0056e22 + c0056fd0: 47c2 lw a5,16(sp) + c0056fd2: 673d lui a4,0xf + c0056fd4: 8ff9 and a5,a5,a4 + c0056fd6: 6711 lui a4,0x4 + c0056fd8: 00e78d63 beq a5,a4,c0056ff2 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:92 { set_errno(ENOTDIR); - c0056e0c: cc9fc0ef jal ra,c0053ad4 <__errno> - c0056e10: 47d1 li a5,20 - c0056e12: c11c sw a5,0(a0) + c0056fdc: cc9fc0ef jal ra,c0053ca4 <__errno> + c0056fe0: 47d1 li a5,20 + c0056fe2: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:93 return ERROR; - c0056e14: 547d li s0,-1 + c0056fe4: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:126 ret = setenv("PWD", abspath, TRUE); lib_free(abspath); @@ -244382,66 +244580,66 @@ int chdir(FAR const char *path) return ret; } - c0056e16: 70e6 ld ra,120(sp) - c0056e18: 8522 mv a0,s0 - c0056e1a: 7446 ld s0,112(sp) - c0056e1c: 74a6 ld s1,104(sp) - c0056e1e: 6109 addi sp,sp,128 - c0056e20: 8082 ret + c0056fe6: 70e6 ld ra,120(sp) + c0056fe8: 8522 mv a0,s0 + c0056fea: 7446 ld s0,112(sp) + c0056fec: 74a6 ld s1,104(sp) + c0056fee: 6109 addi sp,sp,128 + c0056ff0: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:100 abspath = realpath(path, NULL); - c0056e22: 8526 mv a0,s1 - c0056e24: 4581 li a1,0 - c0056e26: a3dfe0ef jal ra,c0055862 - c0056e2a: 84aa mv s1,a0 + c0056ff2: 8526 mv a0,s1 + c0056ff4: 4581 li a1,0 + c0056ff6: a3dfe0ef jal ra,c0055a32 + c0056ffa: 84aa mv s1,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:103 return ERROR; - c0056e2c: 547d li s0,-1 + c0056ffc: 547d li s0,-1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:101 if (abspath == NULL) - c0056e2e: d565 beqz a0,c0056e16 + c0056ffe: d565 beqz a0,c0056fe6 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:110 sched_lock(); - c0056e30: 742000ef jal ra,c0057572 + c0057000: 742000ef jal ra,c0057742 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:111 oldpwd = getenv("PWD"); - c0056e34: 0001d517 auipc a0,0x1d - c0056e38: 7ac50513 addi a0,a0,1964 # c00745e0 - c0056e3c: 52e000ef jal ra,c005736a - c0056e40: 85aa mv a1,a0 + c0057004: 0001e517 auipc a0,0x1e + c0057008: 83c50513 addi a0,a0,-1988 # c0074840 + c005700c: 52e000ef jal ra,c005753a + c0057010: 85aa mv a1,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:112 if (!oldpwd) - c0056e42: e509 bnez a0,c0056e4c + c0057012: e509 bnez a0,c005701c /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:114 oldpwd = CONFIG_LIBC_HOMEDIR; - c0056e44: 00007597 auipc a1,0x7 - c0056e48: 39458593 addi a1,a1,916 # c005e1d8 + c0057014: 00007597 auipc a1,0x7 + c0057018: 42458593 addi a1,a1,1060 # c005e438 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:117 setenv("OLDPWD", oldpwd, TRUE); - c0056e4c: 4605 li a2,1 - c0056e4e: 0001d517 auipc a0,0x1d - c0056e52: 79a50513 addi a0,a0,1946 # c00745e8 - c0056e56: 754000ef jal ra,c00575aa + c005701c: 4605 li a2,1 + c005701e: 0001e517 auipc a0,0x1e + c0057022: 82a50513 addi a0,a0,-2006 # c0074848 + c0057026: 754000ef jal ra,c005777a /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:121 ret = setenv("PWD", abspath, TRUE); - c0056e5a: 4605 li a2,1 - c0056e5c: 85a6 mv a1,s1 - c0056e5e: 0001d517 auipc a0,0x1d - c0056e62: 78250513 addi a0,a0,1922 # c00745e0 - c0056e66: 744000ef jal ra,c00575aa - c0056e6a: 842a mv s0,a0 + c005702a: 4605 li a2,1 + c005702c: 85a6 mv a1,s1 + c005702e: 0001e517 auipc a0,0x1e + c0057032: 81250513 addi a0,a0,-2030 # c0074840 + c0057036: 744000ef jal ra,c005777a + c005703a: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:122 lib_free(abspath); - c0056e6c: 8526 mv a0,s1 - c0056e6e: f8bfb0ef jal ra,c0052df8 + c005703c: 8526 mv a0,s1 + c005703e: f8bfb0ef jal ra,c0052fc8 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:123 sched_unlock(); - c0056e72: 70c000ef jal ra,c005757e + c0057042: 70c000ef jal ra,c005774e /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_chdir.c:125 return ret; - c0056e76: b745 j c0056e16 + c0057046: b745 j c0056fe6 -00000000c0056e78 : +00000000c0057048 : getcwd(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:80 * Insufficient storage space is available. @@ -244450,27 +244648,27 @@ getcwd(): FAR char *getcwd(FAR char *buf, size_t size) { - c0056e78: 1101 addi sp,sp,-32 - c0056e7a: e822 sd s0,16(sp) - c0056e7c: e426 sd s1,8(sp) - c0056e7e: ec06 sd ra,24(sp) - c0056e80: e04a sd s2,0(sp) - c0056e82: 842a mv s0,a0 - c0056e84: 84ae mv s1,a1 + c0057048: 1101 addi sp,sp,-32 + c005704a: e822 sd s0,16(sp) + c005704c: e426 sd s1,8(sp) + c005704e: ec06 sd ra,24(sp) + c0057050: e04a sd s2,0(sp) + c0057052: 842a mv s0,a0 + c0057054: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:85 char *pwd; /* Verify input parameters */ if (buf && size == 0) - c0056e86: cd11 beqz a0,c0056ea2 + c0057056: cd11 beqz a0,c0057072 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:85 (discriminator 1) - c0056e88: e185 bnez a1,c0056ea8 + c0057058: e185 bnez a1,c0057078 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:87 { set_errno(EINVAL); - c0056e8a: c4bfc0ef jal ra,c0053ad4 <__errno> - c0056e8e: 47d9 li a5,22 + c005705a: c4bfc0ef jal ra,c0053ca4 <__errno> + c005705e: 47d9 li a5,22 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:108 /* Verify that the cwd will fit into the user-provided buffer */ @@ -244478,10 +244676,10 @@ FAR char *getcwd(FAR char *buf, size_t size) if (strlen(pwd) + 1 > size) { set_errno(ERANGE); - c0056e90: c11c sw a5,0(a0) + c0057060: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:109 return NULL; - c0056e92: 4401 li s0,0 + c0057062: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:126 /* Copy the cwd to the user buffer */ @@ -244489,73 +244687,73 @@ FAR char *getcwd(FAR char *buf, size_t size) strlcpy(buf, pwd, size); return buf; } - c0056e94: 60e2 ld ra,24(sp) - c0056e96: 8522 mv a0,s0 - c0056e98: 6442 ld s0,16(sp) - c0056e9a: 64a2 ld s1,8(sp) - c0056e9c: 6902 ld s2,0(sp) - c0056e9e: 6105 addi sp,sp,32 - c0056ea0: 8082 ret + c0057064: 60e2 ld ra,24(sp) + c0057066: 8522 mv a0,s0 + c0057068: 6442 ld s0,16(sp) + c005706a: 64a2 ld s1,8(sp) + c005706c: 6902 ld s2,0(sp) + c005706e: 6105 addi sp,sp,32 + c0057070: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:91 if (size == 0) - c0056ea2: e199 bnez a1,c0056ea8 + c0057072: e199 bnez a1,c0057078 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:93 size = PATH_MAX + 1; - c0056ea4: 10100493 li s1,257 + c0057074: 10100493 li s1,257 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:98 pwd = getenv("PWD"); - c0056ea8: 0001d517 auipc a0,0x1d - c0056eac: 73850513 addi a0,a0,1848 # c00745e0 - c0056eb0: 4ba000ef jal ra,c005736a - c0056eb4: 892a mv s2,a0 + c0057078: 0001d517 auipc a0,0x1d + c005707c: 7c850513 addi a0,a0,1992 # c0074840 + c0057080: 4ba000ef jal ra,c005753a + c0057084: 892a mv s2,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:99 if (pwd == NULL) - c0056eb6: e509 bnez a0,c0056ec0 + c0057086: e509 bnez a0,c0057090 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:101 pwd = CONFIG_LIBC_HOMEDIR; - c0056eb8: 00007917 auipc s2,0x7 - c0056ebc: 32090913 addi s2,s2,800 # c005e1d8 + c0057088: 00007917 auipc s2,0x7 + c005708c: 3b090913 addi s2,s2,944 # c005e438 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:106 if (strlen(pwd) + 1 > size) - c0056ec0: 854a mv a0,s2 - c0056ec2: aefff0ef jal ra,c00569b0 - c0056ec6: 0505 addi a0,a0,1 - c0056ec8: 00a4f763 bgeu s1,a0,c0056ed6 + c0057090: 854a mv a0,s2 + c0057092: aefff0ef jal ra,c0056b80 + c0057096: 0505 addi a0,a0,1 + c0057098: 00a4f763 bgeu s1,a0,c00570a6 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:108 set_errno(ERANGE); - c0056ecc: c09fc0ef jal ra,c0053ad4 <__errno> - c0056ed0: 02200793 li a5,34 - c0056ed4: bf75 j c0056e90 + c005709c: c09fc0ef jal ra,c0053ca4 <__errno> + c00570a0: 02200793 li a5,34 + c00570a4: bf75 j c0057060 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:112 if (buf == NULL) - c0056ed6: e819 bnez s0,c0056eec + c00570a6: e819 bnez s0,c00570bc /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:114 buf = lib_malloc(size); - c0056ed8: 8526 mv a0,s1 - c0056eda: f2bfb0ef jal ra,c0052e04 - c0056ede: 842a mv s0,a0 + c00570a8: 8526 mv a0,s1 + c00570aa: f2bfb0ef jal ra,c0052fd4 + c00570ae: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:115 if (!buf) - c0056ee0: e511 bnez a0,c0056eec + c00570b0: e511 bnez a0,c00570bc /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:117 set_errno(ENOMEM); - c0056ee2: bf3fc0ef jal ra,c0053ad4 <__errno> - c0056ee6: 47b1 li a5,12 - c0056ee8: c11c sw a5,0(a0) + c00570b2: bf3fc0ef jal ra,c0053ca4 <__errno> + c00570b6: 47b1 li a5,12 + c00570b8: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:118 return NULL; - c0056eea: b76d j c0056e94 + c00570ba: b76d j c0057064 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:124 strlcpy(buf, pwd, size); - c0056eec: 8626 mv a2,s1 - c0056eee: 85ca mv a1,s2 - c0056ef0: 8522 mv a0,s0 - c0056ef2: a87ff0ef jal ra,c0056978 + c00570bc: 8626 mv a2,s1 + c00570be: 85ca mv a1,s2 + c00570c0: 8522 mv a0,s0 + c00570c2: a87ff0ef jal ra,c0056b48 /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getcwd.c:125 return buf; - c0056ef6: bf79 j c0056e94 + c00570c6: bf79 j c0057064 -00000000c0056ef8 : +00000000c00570c8 : fork(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_fork.c:155 pid_t pid; @@ -244564,9 +244762,9 @@ fork(): atfork_prepare(); #endif pid = up_fork(); - c0056ef8: af19 j c005760e + c00570c8: af19 j c00577de -00000000c0056efa : +00000000c00570ca : isspace(): /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isspace.c:34 ****************************************************************************/ @@ -244575,30 +244773,30 @@ int isspace(int c) { return c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f' || c == '\v'; - c0056efa: 02000793 li a5,32 - c0056efe: 00f50663 beq a0,a5,c0056f0a + c00570ca: 02000793 li a5,32 + c00570ce: 00f50663 beq a0,a5,c00570da /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isspace.c:33 return c == ' ' || c == '\t' || c == '\n' || c == '\r' || - c0056f02: 355d addiw a0,a0,-9 + c00570d2: 355d addiw a0,a0,-9 /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isspace.c:34 c == '\f' || c == '\v'; - c0056f04: 00553513 sltiu a0,a0,5 - c0056f08: 8082 ret - c0056f0a: 4505 li a0,1 + c00570d4: 00553513 sltiu a0,a0,5 + c00570d8: 8082 ret + c00570da: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isspace.c:35 } - c0056f0c: 8082 ret + c00570dc: 8082 ret -00000000c0056f0e : +00000000c00570de : isspace_l(): /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isspace.c:39 int isspace_l(int c, locale_t locale) { return isspace(c); - c0056f0e: fedff06f j c0056efa + c00570de: fedff06f j c00570ca -00000000c0056f12 : +00000000c00570e2 : isxdigit(): /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isxdigit.c:34 ****************************************************************************/ @@ -244607,31 +244805,31 @@ int isxdigit(int c) { return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || - c0056f12: fd05071b addiw a4,a0,-48 - c0056f16: 47a5 li a5,9 - c0056f18: 00e7f963 bgeu a5,a4,c0056f2a + c00570e2: fd05071b addiw a4,a0,-48 + c00570e6: 47a5 li a5,9 + c00570e8: 00e7f963 bgeu a5,a4,c00570fa /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isxdigit.c:34 (discriminator 2) - c0056f1c: fdf57513 andi a0,a0,-33 - c0056f20: fbf5051b addiw a0,a0,-65 - c0056f24: 00653513 sltiu a0,a0,6 - c0056f28: 8082 ret + c00570ec: fdf57513 andi a0,a0,-33 + c00570f0: fbf5051b addiw a0,a0,-65 + c00570f4: 00653513 sltiu a0,a0,6 + c00570f8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isxdigit.c:34 - c0056f2a: 4505 li a0,1 + c00570fa: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isxdigit.c:36 (c >= 'A' && c <= 'F'); } - c0056f2c: 8082 ret + c00570fc: 8082 ret -00000000c0056f2e : +00000000c00570fe : isxdigit_l(): /Users/Luppy/riscv/nuttx/libs/libc/ctype/lib_isxdigit.c:40 int isxdigit_l(int c, locale_t locale) { return isxdigit(c); - c0056f2e: fe5ff06f j c0056f12 + c00570fe: fe5ff06f j c00570e2 -00000000c0056f32 : +00000000c0057102 : lib_getfullpath(): /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:47 * @@ -244640,43 +244838,43 @@ lib_getfullpath(): int lib_getfullpath(int dirfd, FAR const char *path, FAR char *fullpath, size_t fulllen) { - c0056f32: 7179 addi sp,sp,-48 - c0056f34: e84a sd s2,16(sp) - c0056f36: f406 sd ra,40(sp) - c0056f38: f022 sd s0,32(sp) - c0056f3a: ec26 sd s1,24(sp) - c0056f3c: e44e sd s3,8(sp) + c0057102: 7179 addi sp,sp,-48 + c0057104: e84a sd s2,16(sp) + c0057106: f406 sd ra,40(sp) + c0057108: f022 sd s0,32(sp) + c005710a: ec26 sd s1,24(sp) + c005710c: e44e sd s3,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:50 if (path == NULL || fullpath == NULL) { return -EINVAL; - c0056f3e: 5929 li s2,-22 + c005710e: 5929 li s2,-22 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:48 if (path == NULL || fullpath == NULL) - c0056f40: c18d beqz a1,c0056f62 - c0056f42: 8432 mv s0,a2 + c0057110: c18d beqz a1,c0057132 + c0057112: 8432 mv s0,a2 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:50 (discriminator 1) return -EINVAL; - c0056f44: 5929 li s2,-22 + c0057114: 5929 li s2,-22 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:48 (discriminator 1) if (path == NULL || fullpath == NULL) - c0056f46: ce11 beqz a2,c0056f62 - c0056f48: 89b6 mv s3,a3 + c0057116: ce11 beqz a2,c0057132 + c0057118: 89b6 mv s3,a3 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:52 } else if (path[0] == '/') - c0056f4a: 0005c683 lbu a3,0(a1) - c0056f4e: 02f00713 li a4,47 - c0056f52: 84ae mv s1,a1 - c0056f54: 00e69f63 bne a3,a4,c0056f72 + c005711a: 0005c683 lbu a3,0(a1) + c005711e: 02f00713 li a4,47 + c0057122: 84ae mv s1,a1 + c0057124: 00e69f63 bne a3,a4,c0057142 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:56 { /* The path is absolute, then dirfd is ignored. */ strlcpy(fullpath, path, fulllen); - c0056f58: 864e mv a2,s3 - c0056f5a: 8522 mv a0,s0 - c0056f5c: a1dff0ef jal ra,c0056978 + c0057128: 864e mv a2,s3 + c005712a: 8522 mv a0,s0 + c005712c: a1dff0ef jal ra,c0056b48 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:78 pwd = CONFIG_LIBC_HOMEDIR; } @@ -244684,7 +244882,7 @@ int lib_getfullpath(int dirfd, FAR const char *path, snprintf(fullpath, fulllen, "%s/%s", pwd, path); return 0; - c0056f60: 4901 li s2,0 + c0057130: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:94 strlcat(fullpath, path, fulllen); } @@ -244692,59 +244890,59 @@ int lib_getfullpath(int dirfd, FAR const char *path, return 0; } } - c0056f62: 70a2 ld ra,40(sp) - c0056f64: 7402 ld s0,32(sp) - c0056f66: 64e2 ld s1,24(sp) - c0056f68: 69a2 ld s3,8(sp) - c0056f6a: 854a mv a0,s2 - c0056f6c: 6942 ld s2,16(sp) - c0056f6e: 6145 addi sp,sp,48 - c0056f70: 8082 ret + c0057132: 70a2 ld ra,40(sp) + c0057134: 7402 ld s0,32(sp) + c0057136: 64e2 ld s1,24(sp) + c0057138: 69a2 ld s3,8(sp) + c005713a: 854a mv a0,s2 + c005713c: 6942 ld s2,16(sp) + c005713e: 6145 addi sp,sp,48 + c0057140: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:60 if (dirfd == AT_FDCWD) - c0056f72: f9c00713 li a4,-100 - c0056f76: 02e51863 bne a0,a4,c0056fa6 + c0057142: f9c00713 li a4,-100 + c0057146: 02e51863 bne a0,a4,c0057176 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:70 pwd = getenv("PWD"); - c0056f7a: 0001d517 auipc a0,0x1d - c0056f7e: 66650513 addi a0,a0,1638 # c00745e0 - c0056f82: 3e8000ef jal ra,c005736a - c0056f86: 86aa mv a3,a0 + c005714a: 0001d517 auipc a0,0x1d + c005714e: 6f650513 addi a0,a0,1782 # c0074840 + c0057152: 3e8000ef jal ra,c005753a + c0057156: 86aa mv a3,a0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:71 if (pwd == NULL) - c0056f88: e509 bnez a0,c0056f92 + c0057158: e509 bnez a0,c0057162 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:73 pwd = CONFIG_LIBC_HOMEDIR; - c0056f8a: 00007697 auipc a3,0x7 - c0056f8e: 24e68693 addi a3,a3,590 # c005e1d8 + c005715a: 00007697 auipc a3,0x7 + c005715e: 2de68693 addi a3,a3,734 # c005e438 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:77 snprintf(fullpath, fulllen, "%s/%s", pwd, path); - c0056f92: 8726 mv a4,s1 - c0056f94: 0001d617 auipc a2,0x1d - c0056f98: 65c60613 addi a2,a2,1628 # c00745f0 - c0056f9c: 85ce mv a1,s3 - c0056f9e: 8522 mv a0,s0 - c0056fa0: a64fd0ef jal ra,c0054204 - c0056fa4: bf75 j c0056f60 + c0057162: 8726 mv a4,s1 + c0057164: 0001d617 auipc a2,0x1d + c0057168: 6ec60613 addi a2,a2,1772 # c0074850 + c005716c: 85ce mv a1,s3 + c005716e: 8522 mv a0,s0 + c0057170: a64fd0ef jal ra,c00543d4 + c0057174: bf75 j c0057130 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:86 ret = fcntl(dirfd, F_GETPATH, fullpath); - c0056fa6: 45bd li a1,15 - c0056fa8: 386000ef jal ra,c005732e + c0057176: 45bd li a1,15 + c0057178: 386000ef jal ra,c00574fe /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:92 return 0; - c0056fac: 4901 li s2,0 + c005717c: 4901 li s2,0 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:87 if (ret >= 0) - c0056fae: fa054ae3 bltz a0,c0056f62 + c005717e: fa054ae3 bltz a0,c0057132 /Users/Luppy/riscv/nuttx/libs/libc/misc/lib_getfullpath.c:89 strlcat(fullpath, path, fulllen); - c0056fb2: 864e mv a2,s3 - c0056fb4: 85a6 mv a1,s1 - c0056fb6: 8522 mv a0,s0 - c0056fb8: 1d0000ef jal ra,c0057188 - c0056fbc: b75d j c0056f62 + c0057182: 864e mv a2,s3 + c0057184: 85a6 mv a1,s1 + c0057186: 8522 mv a0,s0 + c0057188: 1d0000ef jal ra,c0057358 + c005718c: b75d j c0057132 -00000000c0056fbe : +00000000c005718e : nxsig_addset(): /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:59 @@ -244753,8 +244951,8 @@ int nxsig_addset(FAR sigset_t *set, int signo) /* Verify the signal */ if (!GOOD_SIGNO(signo)) - c0056fbe: 03f00793 li a5,63 - c0056fc2: 00b7ee63 bltu a5,a1,c0056fde + c005718e: 03f00793 li a5,63 + c0057192: 00b7ee63 bltu a5,a1,c00571ae /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:67 } else @@ -244762,27 +244960,27 @@ int nxsig_addset(FAR sigset_t *set, int signo) /* Add the signal to the set */ set->_elem[_SIGSET_NDX(signo)] |= _SIGNO2SET(signo); - c0056fc6: 4055d793 srai a5,a1,0x5 - c0056fca: 078a slli a5,a5,0x2 - c0056fcc: 953e add a0,a0,a5 - c0056fce: 4785 li a5,1 - c0056fd0: 00b795bb sllw a1,a5,a1 - c0056fd4: 411c lw a5,0(a0) - c0056fd6: 8ddd or a1,a1,a5 - c0056fd8: c10c sw a1,0(a0) + c0057196: 4055d793 srai a5,a1,0x5 + c005719a: 078a slli a5,a5,0x2 + c005719c: 953e add a0,a0,a5 + c005719e: 4785 li a5,1 + c00571a0: 00b795bb sllw a1,a5,a1 + c00571a4: 411c lw a5,0(a0) + c00571a6: 8ddd or a1,a1,a5 + c00571a8: c10c sw a1,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:68 return OK; - c0056fda: 4501 li a0,0 - c0056fdc: 8082 ret + c00571aa: 4501 li a0,0 + c00571ac: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:61 return -EINVAL; - c0056fde: 5529 li a0,-22 + c00571ae: 5529 li a0,-22 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:70 } } - c0056fe0: 8082 ret + c00571b0: 8082 ret -00000000c0056fe2 : +00000000c00571b2 : sigaddset(): /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:91 * Assumptions: @@ -244791,37 +244989,37 @@ sigaddset(): int sigaddset(FAR sigset_t *set, int signo) { - c0056fe2: 1141 addi sp,sp,-16 - c0056fe4: e406 sd ra,8(sp) + c00571b2: 1141 addi sp,sp,-16 + c00571b4: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:96 int ret; /* Let nxsig_addset do all the work. */ ret = nxsig_addset(set, signo); - c0056fe6: fd9ff0ef jal ra,c0056fbe + c00571b6: fd9ff0ef jal ra,c005718e /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:97 if (ret < 0) - c0056fea: 00055763 bgez a0,c0056ff8 + c00571ba: 00055763 bgez a0,c00571c8 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:99 { set_errno(EINVAL); - c0056fee: ae7fc0ef jal ra,c0053ad4 <__errno> - c0056ff2: 47d9 li a5,22 - c0056ff4: c11c sw a5,0(a0) + c00571be: ae7fc0ef jal ra,c0053ca4 <__errno> + c00571c2: 47d9 li a5,22 + c00571c4: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:100 ret = ERROR; - c0056ff6: 557d li a0,-1 + c00571c6: 557d li a0,-1 /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_addset.c:104 } return ret; } - c0056ff8: 60a2 ld ra,8(sp) - c0056ffa: 0141 addi sp,sp,16 - c0056ffc: 8082 ret + c00571c8: 60a2 ld ra,8(sp) + c00571ca: 0141 addi sp,sp,16 + c00571cc: 8082 ret -00000000c0056ffe : +00000000c00571ce : sigemptyset(): /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_emptyset.c:57 @@ -244830,17 +245028,17 @@ sigemptyset(): for (ndx = 0; ndx < _SIGSET_NELEM; ndx++) { set->_elem[ndx] = _NO_SIGNALS; - c0056ffe: 00052023 sw zero,0(a0) - c0057002: 00052223 sw zero,4(a0) + c00571ce: 00052023 sw zero,0(a0) + c00571d2: 00052223 sw zero,4(a0) /Users/Luppy/riscv/nuttx/libs/libc/signal/sig_emptyset.c:61 } return OK; } - c0057006: 4501 li a0,0 - c0057008: 8082 ret + c00571d6: 4501 li a0,0 + c00571d8: 8082 ret -00000000c005700a : +00000000c00571da : mktemp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:180 * declared as a character array. @@ -244849,18 +245047,18 @@ mktemp(): FAR char *mktemp(FAR char *path_template) { - c005700a: 7171 addi sp,sp,-176 - c005700c: ed26 sd s1,152(sp) - c005700e: f0e2 sd s8,96(sp) - c0057010: 84aa mv s1,a0 - c0057012: f506 sd ra,168(sp) - c0057014: f122 sd s0,160(sp) - c0057016: e94a sd s2,144(sp) - c0057018: e54e sd s3,136(sp) - c005701a: e152 sd s4,128(sp) - c005701c: fcd6 sd s5,120(sp) - c005701e: f8da sd s6,112(sp) - c0057020: f4de sd s7,104(sp) + c00571da: 7171 addi sp,sp,-176 + c00571dc: ed26 sd s1,152(sp) + c00571de: f0e2 sd s8,96(sp) + c00571e0: 84aa mv s1,a0 + c00571e2: f506 sd ra,168(sp) + c00571e4: f122 sd s0,160(sp) + c00571e6: e94a sd s2,144(sp) + c00571e8: e54e sd s3,136(sp) + c00571ea: e152 sd s4,128(sp) + c00571ec: fcd6 sd s5,120(sp) + c00571ee: f8da sd s6,112(sp) + c00571f0: f4de sd s7,104(sp) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:191 int ret; int i; @@ -244868,28 +245066,28 @@ FAR char *mktemp(FAR char *path_template) /* Count the number of X's at the end of the template */ xptr = &path_template[strlen(path_template)]; - c0057022: 98fff0ef jal ra,c00569b0 - c0057026: 9526 add a0,a0,s1 + c00571f2: 98fff0ef jal ra,c0056b80 + c00571f6: 9526 add a0,a0,s1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:192 for (xlen = 0; xlen < MAX_XS && path_template < xptr && *(xptr - 1) == 'X'; - c0057028: ffa50613 addi a2,a0,-6 + c00571f8: ffa50613 addi a2,a0,-6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:191 xptr = &path_template[strlen(path_template)]; - c005702c: 8c2a mv s8,a0 + c00571fc: 8c2a mv s8,a0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:192 for (xlen = 0; xlen < MAX_XS && path_template < xptr && *(xptr - 1) == 'X'; - c005702e: 05800713 li a4,88 - c0057032: 418507bb subw a5,a0,s8 + c00571fe: 05800713 li a4,88 + c0057202: 418507bb subw a5,a0,s8 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:192 (discriminator 2) - c0057036: 0184f663 bgeu s1,s8,c0057042 + c0057206: 0184f663 bgeu s1,s8,c0057212 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:192 (discriminator 3) - c005703a: fffc4683 lbu a3,-1(s8) # 3fff <__clzdi2-0xbfffc001> - c005703e: 04e68b63 beq a3,a4,c0057094 + c005720a: fffc4683 lbu a3,-1(s8) # 3fff <__clzdi2-0xbfffc001> + c005720e: 04e68b63 beq a3,a4,c0057264 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:195 xlen++, xptr--); if (xlen == 0) - c0057042: 0e078a63 beqz a5,c0057136 + c0057212: 0e078a63 beqz a5,c0057306 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:214 /* If xlen is small, then we need to determine the maximum number of @@ -244897,52 +245095,52 @@ FAR char *mktemp(FAR char *path_template) */ if (xlen >= BIG_XS) - c0057046: 4711 li a4,4 + c0057216: 4711 li a4,4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:216 { retries = UINT32_MAX; - c0057048: 5bfd li s7,-1 + c0057218: 5bfd li s7,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:214 if (xlen >= BIG_XS) - c005704a: 00f74963 blt a4,a5,c005705c + c005721a: 00f74963 blt a4,a5,c005722c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:220 } else { for (i = 1, retries = 62; i < xlen; i++, retries *= 62); - c005704e: 4705 li a4,1 - c0057050: 03e00b93 li s7,62 - c0057054: 03e00693 li a3,62 + c005721e: 4705 li a4,1 + c0057220: 03e00b93 li s7,62 + c0057224: 03e00693 li a3,62 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:220 (discriminator 1) - c0057058: 04f71463 bne a4,a5,c00570a0 + c0057228: 04f71463 bne a4,a5,c0057270 copy_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:154 src += MAX_XS - len; - c005705c: 4419 li s0,6 - c005705e: 9c1d subw s0,s0,a5 - c0057060: 1402 slli s0,s0,0x20 - c0057062: 9001 srli s0,s0,0x20 - c0057064: 4719 li a4,6 - c0057066: 0007899b sext.w s3,a5 - c005706a: 940a add s0,s0,sp - c005706c: 00e79363 bne a5,a4,c0057072 - c0057070: 840a mv s0,sp + c005722c: 4419 li s0,6 + c005722e: 9c1d subw s0,s0,a5 + c0057230: 1402 slli s0,s0,0x20 + c0057232: 9001 srli s0,s0,0x20 + c0057234: 4719 li a4,6 + c0057236: 0007899b sext.w s3,a5 + c005723a: 940a add s0,s0,sp + c005723c: 00e79363 bne a5,a4,c0057242 + c0057240: 840a mv s0,sp get_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:136 memcpy(ptr, g_base62, MAX_XS); - c0057072: 000aa917 auipc s2,0xaa - c0057076: 0ae90913 addi s2,s2,174 # c0101120 + c0057242: 000aa917 auipc s2,0xaa + c0057246: ede90913 addi s2,s2,-290 # c0101120 incr_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:111 for (i = MAX_XS - 1; i >= 0; i--) - c005707a: 5a7d li s4,-1 + c005724a: 5a7d li s4,-1 base62_to_char(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:88 else if (base62 <= MAX_UPPERCASE) - c005707c: 02300a93 li s5,35 + c005724c: 02300a93 li s5,35 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:94 DEBUGASSERT(base62 <= MAX_LOWERCASE); - c0057080: 03d00b13 li s6,61 + c0057250: 03d00b13 li s6,61 mktemp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:225 } @@ -244950,7 +245148,7 @@ mktemp(): /* Then loop until we find a unique file name */ while (retries > 0) - c0057084: 020b9263 bnez s7,c00570a8 + c0057254: 020b9263 bnez s7,c0057278 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:251 retries--; } @@ -244958,177 +245156,177 @@ mktemp(): /* We could not find an unique filename */ set_errno(EINVAL); - c0057088: a4dfc0ef jal ra,c0053ad4 <__errno> - c005708c: 47d9 li a5,22 - c005708e: c11c sw a5,0(a0) + c0057258: a4dfc0ef jal ra,c0053ca4 <__errno> + c005725c: 47d9 li a5,22 + c005725e: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:253 return NULL; - c0057090: 4481 li s1,0 - c0057092: a055 j c0057136 + c0057260: 4481 li s1,0 + c0057262: a055 j c0057306 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:193 xlen++, xptr--); - c0057094: 1c7d addi s8,s8,-1 + c0057264: 1c7d addi s8,s8,-1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:192 for (xlen = 0; xlen < MAX_XS && path_template < xptr && *(xptr - 1) == 'X'; - c0057096: f8cc1ee3 bne s8,a2,c0057032 - c005709a: 4799 li a5,6 + c0057266: f8cc1ee3 bne s8,a2,c0057202 + c005726a: 4799 li a5,6 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:216 retries = UINT32_MAX; - c005709c: 5bfd li s7,-1 - c005709e: bf7d j c005705c + c005726c: 5bfd li s7,-1 + c005726e: bf7d j c005722c /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:220 (discriminator 3) for (i = 1, retries = 62; i < xlen; i++, retries *= 62); - c00570a0: 03768bbb mulw s7,a3,s7 - c00570a4: 2705 addiw a4,a4,1 - c00570a6: bf4d j c0057058 + c0057270: 03768bbb mulw s7,a3,s7 + c0057274: 2705 addiw a4,a4,1 + c0057276: bf4d j c0057228 get_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:135 nxmutex_lock(&g_b62lock); - c00570a8: 000aa517 auipc a0,0xaa - c00570ac: fa850513 addi a0,a0,-88 # c0101050 - c00570b0: ac1fc0ef jal ra,c0053b70 + c0057278: 000aa517 auipc a0,0xaa + c005727c: dd850513 addi a0,a0,-552 # c0101050 + c0057280: ac1fc0ef jal ra,c0053d40 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:136 memcpy(ptr, g_base62, MAX_XS); - c00570b4: 00092783 lw a5,0(s2) - c00570b8: 000aa717 auipc a4,0xaa - c00570bc: 06870713 addi a4,a4,104 # c0101120 + c0057284: 00092783 lw a5,0(s2) + c0057288: 000aa717 auipc a4,0xaa + c005728c: e9870713 addi a4,a4,-360 # c0101120 incr_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:113 if (g_base62[i] < MAX_LOWERCASE) - c00570c0: 03c00613 li a2,60 + c0057290: 03c00613 li a2,60 get_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:136 memcpy(ptr, g_base62, MAX_XS); - c00570c4: c03e sw a5,0(sp) - c00570c6: 00495783 lhu a5,4(s2) - c00570ca: 00f11223 sh a5,4(sp) + c0057294: c03e sw a5,0(sp) + c0057296: 00495783 lhu a5,4(s2) + c005729a: 00f11223 sh a5,4(sp) incr_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:111 for (i = MAX_XS - 1; i >= 0; i--) - c00570ce: 4795 li a5,5 + c005729e: 4795 li a5,5 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:113 if (g_base62[i] < MAX_LOWERCASE) - c00570d0: 00574683 lbu a3,5(a4) - c00570d4: 06d66e63 bltu a2,a3,c0057150 + c00572a0: 00574683 lbu a3,5(a4) + c00572a4: 06d66e63 bltu a2,a3,c0057320 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:115 g_base62[i]++; - c00570d8: 97ca add a5,a5,s2 - c00570da: 2685 addiw a3,a3,1 - c00570dc: 00d78023 sb a3,0(a5) # 1000 <__clzdi2-0xbffff000> + c00572a8: 97ca add a5,a5,s2 + c00572aa: 2685 addiw a3,a3,1 + c00572ac: 00d78023 sb a3,0(a5) # 1000 <__clzdi2-0xbffff000> get_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:138 nxmutex_unlock(&g_b62lock); - c00570e0: 000aa517 auipc a0,0xaa - c00570e4: f7050513 addi a0,a0,-144 # c0101050 - c00570e8: b7ffc0ef jal ra,c0053c66 + c00572b0: 000aa517 auipc a0,0xaa + c00572b4: da050513 addi a0,a0,-608 # c0101050 + c00572b8: b7ffc0ef jal ra,c0053e36 copy_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:152 if (len < MAX_XS) - c00570ec: 4701 li a4,0 + c00572bc: 4701 li a4,0 base62_to_char(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:84 if (base62 <= MAX_NUMERIC) - c00570ee: 4625 li a2,9 + c00572be: 4625 li a2,9 copy_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:159 *dest++ = base62_to_char(*src++); - c00570f0: 00e407b3 add a5,s0,a4 - c00570f4: 0007c783 lbu a5,0(a5) + c00572c0: 00e407b3 add a5,s0,a4 + c00572c4: 0007c783 lbu a5,0(a5) base62_to_char(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:84 if (base62 <= MAX_NUMERIC) - c00570f8: 06f66363 bltu a2,a5,c005715e + c00572c8: 06f66363 bltu a2,a5,c005732e /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:86 return '0' + base62; - c00570fc: 0307879b addiw a5,a5,48 + c00572cc: 0307879b addiw a5,a5,48 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:95 return 'a' + base62 - MIN_LOWERCASE; - c0057100: 0ff7f793 zext.b a5,a5 + c00572d0: 0ff7f793 zext.b a5,a5 copy_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:159 *dest++ = base62_to_char(*src++); - c0057104: 00ec06b3 add a3,s8,a4 + c00572d4: 00ec06b3 add a3,s8,a4 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:157 for (; len > 0; len--) - c0057108: 0705 addi a4,a4,1 + c00572d8: 0705 addi a4,a4,1 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:159 *dest++ = base62_to_char(*src++); - c005710a: 00f68023 sb a5,0(a3) + c00572da: 00f68023 sb a5,0(a3) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:157 for (; len > 0; len--) - c005710e: 0007079b sext.w a5,a4 - c0057112: fcf99fe3 bne s3,a5,c00570f0 + c00572de: 0007079b sext.w a5,a4 + c00572e2: fcf99fe3 bne s3,a5,c00572c0 mktemp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:237 ret = stat(path_template, &buf); - c0057116: 002c addi a1,sp,8 - c0057118: 8526 mv a0,s1 - c005711a: 4c0000ef jal ra,c00575da + c00572e6: 002c addi a1,sp,8 + c00572e8: 8526 mv a0,s1 + c00572ea: 4c0000ef jal ra,c00577aa /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:238 if (ret < 0 && get_errno() == ENOENT) - c005711e: 06055363 bgez a0,c0057184 + c00572ee: 06055363 bgez a0,c0057354 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:238 (discriminator 1) - c0057122: 9b3fc0ef jal ra,c0053ad4 <__errno> - c0057126: 4118 lw a4,0(a0) - c0057128: 4789 li a5,2 - c005712a: 04f71d63 bne a4,a5,c0057184 + c00572f2: 9b3fc0ef jal ra,c0053ca4 <__errno> + c00572f6: 4118 lw a4,0(a0) + c00572f8: 4789 li a5,2 + c00572fa: 04f71d63 bne a4,a5,c0057354 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:242 set_errno(0); - c005712e: 9a7fc0ef jal ra,c0053ad4 <__errno> - c0057132: 00052023 sw zero,0(a0) + c00572fe: 9a7fc0ef jal ra,c0053ca4 <__errno> + c0057302: 00052023 sw zero,0(a0) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:254 } - c0057136: 70aa ld ra,168(sp) - c0057138: 740a ld s0,160(sp) - c005713a: 694a ld s2,144(sp) - c005713c: 69aa ld s3,136(sp) - c005713e: 6a0a ld s4,128(sp) - c0057140: 7ae6 ld s5,120(sp) - c0057142: 7b46 ld s6,112(sp) - c0057144: 7ba6 ld s7,104(sp) - c0057146: 7c06 ld s8,96(sp) - c0057148: 8526 mv a0,s1 - c005714a: 64ea ld s1,152(sp) - c005714c: 614d addi sp,sp,176 - c005714e: 8082 ret + c0057306: 70aa ld ra,168(sp) + c0057308: 740a ld s0,160(sp) + c005730a: 694a ld s2,144(sp) + c005730c: 69aa ld s3,136(sp) + c005730e: 6a0a ld s4,128(sp) + c0057310: 7ae6 ld s5,120(sp) + c0057312: 7b46 ld s6,112(sp) + c0057314: 7ba6 ld s7,104(sp) + c0057316: 7c06 ld s8,96(sp) + c0057318: 8526 mv a0,s1 + c005731a: 64ea ld s1,152(sp) + c005731c: 614d addi sp,sp,176 + c005731e: 8082 ret incr_base62(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:120 g_base62[i] = 0; - c0057150: 000702a3 sb zero,5(a4) + c0057320: 000702a3 sb zero,5(a4) /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:111 for (i = MAX_XS - 1; i >= 0; i--) - c0057154: 37fd addiw a5,a5,-1 - c0057156: 177d addi a4,a4,-1 - c0057158: f7479ce3 bne a5,s4,c00570d0 - c005715c: b751 j c00570e0 + c0057324: 37fd addiw a5,a5,-1 + c0057326: 177d addi a4,a4,-1 + c0057328: f7479ce3 bne a5,s4,c00572a0 + c005732c: b751 j c00572b0 base62_to_char(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:88 else if (base62 <= MAX_UPPERCASE) - c005715e: 00fae563 bltu s5,a5,c0057168 + c005732e: 00fae563 bltu s5,a5,c0057338 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:90 return 'A' + base62 - MIN_UPPERCASE; - c0057162: 0377879b addiw a5,a5,55 - c0057166: bf69 j c0057100 + c0057332: 0377879b addiw a5,a5,55 + c0057336: bf69 j c00572d0 /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:94 DEBUGASSERT(base62 <= MAX_LOWERCASE); - c0057168: 00fb7b63 bgeu s6,a5,c005717e - c005716c: 4601 li a2,0 - c005716e: 05e00593 li a1,94 - c0057172: 0001d517 auipc a0,0x1d - c0057176: 48650513 addi a0,a0,1158 # c00745f8 - c005717a: 89ffc0ef jal ra,c0053a18 <__assert> + c0057338: 00fb7b63 bgeu s6,a5,c005734e + c005733c: 4601 li a2,0 + c005733e: 05e00593 li a1,94 + c0057342: 0001d517 auipc a0,0x1d + c0057346: 51650513 addi a0,a0,1302 # c0074858 + c005734a: 89ffc0ef jal ra,c0053be8 <__assert> /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:95 return 'a' + base62 - MIN_LOWERCASE; - c005717e: 03d7879b addiw a5,a5,61 - c0057182: bfbd j c0057100 + c005734e: 03d7879b addiw a5,a5,61 + c0057352: bfbd j c00572d0 mktemp(): /Users/Luppy/riscv/nuttx/libs/libc/stdlib/lib_mktemp.c:246 retries--; - c0057184: 3bfd addiw s7,s7,-1 - c0057186: bdfd j c0057084 + c0057354: 3bfd addiw s7,s7,-1 + c0057356: bdfd j c0057254 -00000000c0057188 : +00000000c0057358 : strlcat(): /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:52 ****************************************************************************/ @@ -245137,11 +245335,11 @@ strlcat(): #undef strlcat /* See mm/README.txt */ size_t strlcat(FAR char *dst, FAR const char *src, size_t dsize) { - c0057188: 1141 addi sp,sp,-16 - c005718a: e022 sd s0,0(sp) - c005718c: 842a mv s0,a0 - c005718e: e406 sd ra,8(sp) - c0057190: 852e mv a0,a1 + c0057358: 1141 addi sp,sp,-16 + c005735a: e022 sd s0,0(sp) + c005735c: 842a mv s0,a0 + c005735e: e406 sd ra,8(sp) + c0057360: 852e mv a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:60 size_t n = dsize; size_t dlen; @@ -245149,27 +245347,27 @@ size_t strlcat(FAR char *dst, FAR const char *src, size_t dsize) /* Find the end of dst and adjust bytes left but don't go past end. */ while (n-- != 0 && *dst != '\0') - c0057192: 00c406b3 add a3,s0,a2 - c0057196: 87a2 mv a5,s0 - c0057198: 00d79f63 bne a5,a3,c00571b6 + c0057362: 00c406b3 add a3,s0,a2 + c0057366: 87a2 mv a5,s0 + c0057368: 00d79f63 bne a5,a3,c0057386 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:65 { dst++; } dlen = dst - odst; - c005719c: 40878433 sub s0,a5,s0 + c005736c: 40878433 sub s0,a5,s0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:66 n = dsize - dlen; - c00571a0: 408606b3 sub a3,a2,s0 + c0057370: 408606b3 sub a3,a2,s0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:68 if (n-- == 0) - c00571a4: 00861e63 bne a2,s0,c00571c0 + c0057374: 00861e63 bne a2,s0,c0057390 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:70 { return dlen + strlen(src); - c00571a8: 809ff0ef jal ra,c00569b0 + c0057378: 809ff0ef jal ra,c0056b80 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:89 *dst = '\0'; @@ -245177,56 +245375,56 @@ size_t strlcat(FAR char *dst, FAR const char *src, size_t dsize) return dlen + (src - osrc); } - c00571ac: 60a2 ld ra,8(sp) + c005737c: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:88 return dlen + (src - osrc); - c00571ae: 9522 add a0,a0,s0 + c005737e: 9522 add a0,a0,s0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:89 } - c00571b0: 6402 ld s0,0(sp) - c00571b2: 0141 addi sp,sp,16 - c00571b4: 8082 ret + c0057380: 6402 ld s0,0(sp) + c0057382: 0141 addi sp,sp,16 + c0057384: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:60 (discriminator 1) while (n-- != 0 && *dst != '\0') - c00571b6: 0007c703 lbu a4,0(a5) - c00571ba: d36d beqz a4,c005719c + c0057386: 0007c703 lbu a4,0(a5) + c005738a: d36d beqz a4,c005736c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:62 dst++; - c00571bc: 0785 addi a5,a5,1 - c00571be: bfe9 j c0057198 + c005738c: 0785 addi a5,a5,1 + c005738e: bfe9 j c0057368 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:68 if (n-- == 0) - c00571c0: 16fd addi a3,a3,-1 - c00571c2: 872a mv a4,a0 + c0057390: 16fd addi a3,a3,-1 + c0057392: 872a mv a4,a0 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:73 while (*src != '\0') - c00571c4: 00074603 lbu a2,0(a4) - c00571c8: e611 bnez a2,c00571d4 + c0057394: 00074603 lbu a2,0(a4) + c0057398: e611 bnez a2,c00573a4 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:84 *dst = '\0'; - c00571ca: 00078023 sb zero,0(a5) + c005739a: 00078023 sb zero,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:88 return dlen + (src - osrc); - c00571ce: 40a70533 sub a0,a4,a0 - c00571d2: bfe9 j c00571ac + c005739e: 40a70533 sub a0,a4,a0 + c00573a2: bfe9 j c005737c /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:75 if (n != 0) - c00571d4: c689 beqz a3,c00571de + c00573a4: c689 beqz a3,c00573ae /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:77 *dst++ = *src; - c00571d6: 00c78023 sb a2,0(a5) + c00573a6: 00c78023 sb a2,0(a5) /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:78 n--; - c00571da: 16fd addi a3,a3,-1 + c00573aa: 16fd addi a3,a3,-1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:77 *dst++ = *src; - c00571dc: 0785 addi a5,a5,1 + c00573ac: 0785 addi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libc/string/lib_strlcat.c:81 src++; - c00571de: 0705 addi a4,a4,1 - c00571e0: b7d5 j c00571c4 + c00573ae: 0705 addi a4,a4,1 + c00573b0: b7d5 j c0057394 -00000000c00571e2 : +00000000c00573b2 : tcflush(): /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcflush.c:56 * errno is set to indicate the error. @@ -245235,13 +245433,13 @@ tcflush(): int tcflush(int fd, int cmd) { - c00571e2: 862e mv a2,a1 + c00573b2: 862e mv a2,a1 /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcflush.c:57 return ioctl(fd, TCFLSH, (unsigned long)cmd); - c00571e4: 11400593 li a1,276 - c00571e8: a265 j c0057390 + c00573b4: 11400593 li a1,276 + c00573b8: a265 j c0057560 -00000000c00571ea : +00000000c00573ba : tcdrain(): /Users/Luppy/riscv/nuttx/libs/libc/termios/lib_tcdrain.c:56 * @@ -245250,11 +245448,11 @@ tcdrain(): int tcdrain(int fd) { return ioctl(fd, TCDRN, (unsigned long)0); - c00571ea: 4601 li a2,0 - c00571ec: 11500593 li a1,277 - c00571f0: a245 j c0057390 + c00573ba: 4601 li a2,0 + c00573bc: 11500593 li a1,277 + c00573c0: a245 j c0057560 -00000000c00571f2 : +00000000c00573c2 : clock_daysbeforemonth(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:64 * @@ -245263,36 +245461,36 @@ clock_daysbeforemonth(): int clock_daysbeforemonth(int month, bool leapyear) { int retval = g_daysbeforemonth[month]; - c00571f2: 00151693 slli a3,a0,0x1 - c00571f6: 0001d717 auipc a4,0x1d - c00571fa: 41a70713 addi a4,a4,1050 # c0074610 - c00571fe: 9736 add a4,a4,a3 + c00573c2: 00151693 slli a3,a0,0x1 + c00573c6: 0001d717 auipc a4,0x1d + c00573ca: 4aa70713 addi a4,a4,1194 # c0074870 + c00573ce: 9736 add a4,a4,a3 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:63 { - c0057200: 87aa mv a5,a0 + c00573d0: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:65 if (month >= 2 && leapyear) - c0057202: 4685 li a3,1 + c00573d2: 4685 li a3,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:64 int retval = g_daysbeforemonth[month]; - c0057204: 00075503 lhu a0,0(a4) + c00573d4: 00075503 lhu a0,0(a4) /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:65 if (month >= 2 && leapyear) - c0057208: 00f6d463 bge a3,a5,c0057210 + c00573d8: 00f6d463 bge a3,a5,c00573e0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:65 (discriminator 1) - c005720c: c191 beqz a1,c0057210 + c00573dc: c191 beqz a1,c00573e0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:67 { retval++; - c005720e: 2505 addiw a0,a0,1 + c00573de: 2505 addiw a0,a0,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_daysbeforemonth.c:71 } return retval; } - c0057210: 8082 ret + c00573e0: 8082 ret -00000000c0057212 : +00000000c00573e2 : clock_isleapyear(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:71 * @@ -245301,29 +245499,29 @@ clock_isleapyear(): int clock_isleapyear(int year) { return (year % 400) ? ((year % 100) ? ((year % 4) ? 0 : 1) : 0) : 1; - c0057212: 19000713 li a4,400 - c0057216: 02e5673b remw a4,a0,a4 + c00573e2: 19000713 li a4,400 + c00573e6: 02e5673b remw a4,a0,a4 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:70 { - c005721a: 87aa mv a5,a0 + c00573ea: 87aa mv a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:71 return (year % 400) ? ((year % 100) ? ((year % 4) ? 0 : 1) : 0) : 1; - c005721c: cb11 beqz a4,c0057230 + c00573ec: cb11 beqz a4,c0057400 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:71 (discriminator 2) - c005721e: 06400513 li a0,100 - c0057222: 02a7e53b remw a0,a5,a0 - c0057226: c511 beqz a0,c0057232 + c00573ee: 06400513 li a0,100 + c00573f2: 02a7e53b remw a0,a5,a0 + c00573f6: c511 beqz a0,c0057402 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:71 (discriminator 3) - c0057228: 8b8d andi a5,a5,3 - c005722a: 0017b513 seqz a0,a5 - c005722e: 8082 ret + c00573f8: 8b8d andi a5,a5,3 + c00573fa: 0017b513 seqz a0,a5 + c00573fe: 8082 ret /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:71 - c0057230: 4505 li a0,1 + c0057400: 4505 li a0,1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_isleapyear.c:72 (discriminator 8) } - c0057232: 8082 ret + c0057402: 8082 ret -00000000c0057234 : +00000000c0057404 : clock_dayoftheweek(): /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:82 * @@ -245332,53 +245530,53 @@ clock_dayoftheweek(): int clock_dayoftheweek(int mday, int month, int year) { if (month <= 2) - c0057234: 4789 li a5,2 - c0057236: 00b7c463 blt a5,a1,c005723e + c0057404: 4789 li a5,2 + c0057406: 00b7c463 blt a5,a1,c005740e /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:84 { year--; - c005723a: 367d addiw a2,a2,-1 + c005740a: 367d addiw a2,a2,-1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:85 month += 12; - c005723c: 25b1 addiw a1,a1,12 + c005740c: 25b1 addiw a1,a1,12 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:89 } month -= 2; return (mday + year + year / 4 - year / 100 + year / 400 + - c005723e: 4791 li a5,4 - c0057240: 02f647bb divw a5,a2,a5 - c0057244: 9d31 addw a0,a0,a2 - c0057246: 9fa9 addw a5,a5,a0 - c0057248: f9c00513 li a0,-100 - c005724c: 02a6453b divw a0,a2,a0 - c0057250: 9fa9 addw a5,a5,a0 - c0057252: 19000513 li a0,400 - c0057256: 02a6463b divw a2,a2,a0 + c005740e: 4791 li a5,4 + c0057410: 02f647bb divw a5,a2,a5 + c0057414: 9d31 addw a0,a0,a2 + c0057416: 9fa9 addw a5,a5,a0 + c0057418: f9c00513 li a0,-100 + c005741c: 02a6453b divw a0,a2,a0 + c0057420: 9fa9 addw a5,a5,a0 + c0057422: 19000513 li a0,400 + c0057426: 02a6463b divw a2,a2,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:88 month -= 2; - c005725a: ffe5851b addiw a0,a1,-2 + c005742a: ffe5851b addiw a0,a1,-2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:90 (31 * month) / 12) % 7; - c005725e: 45fd li a1,31 - c0057260: 02b5053b mulw a0,a0,a1 - c0057264: 45b1 li a1,12 + c005742e: 45fd li a1,31 + c0057430: 02b5053b mulw a0,a0,a1 + c0057434: 45b1 li a1,12 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:89 return (mday + year + year / 4 - year / 100 + year / 400 + - c0057266: 9fb1 addw a5,a5,a2 + c0057436: 9fb1 addw a5,a5,a2 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:90 (31 * month) / 12) % 7; - c0057268: 02b5453b divw a0,a0,a1 + c0057438: 02b5453b divw a0,a0,a1 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:89 return (mday + year + year / 4 - year / 100 + year / 400 + - c005726c: 9fa9 addw a5,a5,a0 + c005743c: 9fa9 addw a5,a5,a0 /Users/Luppy/riscv/nuttx/libs/libc/time/lib_dayofweek.c:91 } - c005726e: 451d li a0,7 - c0057270: 02a7e53b remw a0,a5,a0 - c0057274: 8082 ret + c005743e: 451d li a0,7 + c0057440: 02a7e53b remw a0,a5,a0 + c0057444: 8082 ret -00000000c0057276 : +00000000c0057446 : getoptvars(): /Users/Luppy/riscv/nuttx/libs/libc/unistd/lib_getoptvars.c:75 DEBUGASSERT(info != NULL); @@ -245387,11 +245585,11 @@ getoptvars(): return &g_getopt_vars; #endif } - c0057276: 000aa517 auipc a0,0xaa - c005727a: dfa50513 addi a0,a0,-518 # c0101070 - c005727e: 8082 ret + c0057446: 000aa517 auipc a0,0xaa + c005744a: c2a50513 addi a0,a0,-982 # c0101070 + c005744e: 8082 ret -00000000c0057280 <_assert>: +00000000c0057450 <_assert>: _assert(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY__assert.c:8 #include @@ -245400,10 +245598,10 @@ _assert(): void _assert(FAR const char * parm1, int parm2, FAR const char * parm3, FAR void * parm4) { - c0057280: 88aa mv a7,a0 - c0057282: 882e mv a6,a1 - c0057284: 87b2 mv a5,a2 - c0057286: 8736 mv a4,a3 + c0057450: 88aa mv a7,a0 + c0057452: 882e mv a6,a1 + c0057454: 87b2 mv a5,a2 + c0057456: 8736 mv a4,a3 sys_call4(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:281 @@ -245412,21 +245610,21 @@ static inline uintptr_t sys_call4(unsigned int nbr, uintptr_t parm1, uintptr_t parm4) { register long r0 asm("a0") = (long)(nbr); - c0057288: 4525 li a0,9 + c0057458: 4525 li a0,9 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:282 register long r1 asm("a1") = (long)(parm1); - c005728a: 85c6 mv a1,a7 + c005745a: 85c6 mv a1,a7 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:283 register long r2 asm("a2") = (long)(parm2); - c005728c: 8642 mv a2,a6 + c005745c: 8642 mv a2,a6 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:284 register long r3 asm("a3") = (long)(parm3); - c005728e: 86be mv a3,a5 + c005745e: 86be mv a3,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:287 register long r4 asm("a4") = (long)(parm4); asm volatile - c0057290: 00000073 ecall + c0057460: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:294 "ecall" :: "r"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4) @@ -245434,14 +245632,14 @@ static inline uintptr_t sys_call4(unsigned int nbr, uintptr_t parm1, ); asm volatile("nop" : "=r"(r0)); - c0057294: 0001 nop + c0057464: 0001 nop _assert(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY__assert.c:10 sys_call4((unsigned int)SYS__assert, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3, (uintptr_t)parm4); } - c0057296: 8082 ret + c0057466: 8082 ret -00000000c0057298 <_exit>: +00000000c0057468 <_exit>: _exit(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY__exit.c:8 #include @@ -245450,34 +245648,34 @@ _exit(): void _exit(int parm1) { - c0057298: 85aa mv a1,a0 + c0057468: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c005729a: 4521 li a0,8 + c005746a: 4521 li a0,8 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c005729c: 00000073 ecall + c005746c: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00572a0: 0001 nop + c0057470: 0001 nop _exit(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY__exit.c:10 (discriminator 1) sys_call1((unsigned int)SYS__exit, (uintptr_t)parm1); while(1); - c00572a2: a001 j c00572a2 <_exit+0xa> + c0057472: a001 j c0057472 <_exit+0xa> -00000000c00572a4 : +00000000c0057474 : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c00572a4: 02f00513 li a0,47 + c0057474: 02f00513 li a0,47 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c00572a8: 00000073 ecall + c0057478: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c00572ac: 0001 nop + c005747c: 0001 nop clock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_clock.c:10 #include @@ -245486,10 +245684,10 @@ clock_t clock(void) { return (clock_t)sys_call0((unsigned int)SYS_clock); } - c00572ae: 2501 sext.w a0,a0 - c00572b0: 8082 ret + c005747e: 2501 sext.w a0,a0 + c0057480: 8082 ret -00000000c00572b2 : +00000000c0057482 : clock_gettime(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_clock_gettime.c:8 #include @@ -245498,29 +245696,29 @@ clock_gettime(): int clock_gettime(clockid_t parm1, FAR struct timespec * parm2) { - c00572b2: 87aa mv a5,a0 - c00572b4: 862e mv a2,a1 + c0057482: 87aa mv a5,a0 + c0057484: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c00572b6: 03000513 li a0,48 + c0057486: 03000513 li a0,48 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c00572ba: 85be mv a1,a5 + c005748a: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c00572bc: 00000073 ecall + c005748c: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c00572c0: 0001 nop + c0057490: 0001 nop clock_gettime(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_clock_gettime.c:10 return (int)sys_call2((unsigned int)SYS_clock_gettime, (uintptr_t)parm1, (uintptr_t)parm2); } - c00572c2: 2501 sext.w a0,a0 - c00572c4: 8082 ret + c0057492: 2501 sext.w a0,a0 + c0057494: 8082 ret -00000000c00572c6 : +00000000c0057496 : clock_nanosleep(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_clock_nanosleep.c:8 #include @@ -245529,37 +245727,37 @@ clock_nanosleep(): int clock_nanosleep(clockid_t parm1, int parm2, FAR const struct timespec * parm3, FAR struct timespec * parm4) { - c00572c6: 88aa mv a7,a0 - c00572c8: 882e mv a6,a1 - c00572ca: 87b2 mv a5,a2 - c00572cc: 8736 mv a4,a3 + c0057496: 88aa mv a7,a0 + c0057498: 882e mv a6,a1 + c005749a: 87b2 mv a5,a2 + c005749c: 8736 mv a4,a3 sys_call4(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:281 register long r0 asm("a0") = (long)(nbr); - c00572ce: 02e00513 li a0,46 + c005749e: 02e00513 li a0,46 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:282 register long r1 asm("a1") = (long)(parm1); - c00572d2: 85c6 mv a1,a7 + c00574a2: 85c6 mv a1,a7 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:283 register long r2 asm("a2") = (long)(parm2); - c00572d4: 8642 mv a2,a6 + c00574a4: 8642 mv a2,a6 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:284 register long r3 asm("a3") = (long)(parm3); - c00572d6: 86be mv a3,a5 + c00574a6: 86be mv a3,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:287 asm volatile - c00572d8: 00000073 ecall + c00574a8: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:294 asm volatile("nop" : "=r"(r0)); - c00572dc: 0001 nop + c00574ac: 0001 nop clock_nanosleep(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_clock_nanosleep.c:10 return (int)sys_call4((unsigned int)SYS_clock_nanosleep, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3, (uintptr_t)parm4); } - c00572de: 2501 sext.w a0,a0 - c00572e0: 8082 ret + c00574ae: 2501 sext.w a0,a0 + c00574b0: 8082 ret -00000000c00572e2 : +00000000c00574b2 : close(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_close.c:8 #include @@ -245568,25 +245766,25 @@ close(): int close(int parm1) { - c00572e2: 85aa mv a1,a0 + c00574b2: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c00572e4: 03a00513 li a0,58 + c00574b4: 03a00513 li a0,58 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c00572e8: 00000073 ecall + c00574b8: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00572ec: 0001 nop + c00574bc: 0001 nop close(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_close.c:10 return (int)sys_call1((unsigned int)SYS_close, (uintptr_t)parm1); } - c00572ee: 2501 sext.w a0,a0 - c00572f0: 8082 ret + c00574be: 2501 sext.w a0,a0 + c00574c0: 8082 ret -00000000c00572f2 : +00000000c00574c2 : dup(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_dup.c:8 #include @@ -245595,25 +245793,25 @@ dup(): int dup(int parm1) { - c00572f2: 85aa mv a1,a0 + c00574c2: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c00572f4: 04500513 li a0,69 + c00574c4: 04500513 li a0,69 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c00572f8: 00000073 ecall + c00574c8: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00572fc: 0001 nop + c00574cc: 0001 nop dup(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_dup.c:10 return (int)sys_call1((unsigned int)SYS_dup, (uintptr_t)parm1); } - c00572fe: 2501 sext.w a0,a0 - c0057300: 8082 ret + c00574ce: 2501 sext.w a0,a0 + c00574d0: 8082 ret -00000000c0057302 : +00000000c00574d2 : dup2(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_dup2.c:8 #include @@ -245622,29 +245820,29 @@ dup2(): int dup2(int parm1, int parm2) { - c0057302: 87aa mv a5,a0 - c0057304: 862e mv a2,a1 + c00574d2: 87aa mv a5,a0 + c00574d4: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057306: 04600513 li a0,70 + c00574d6: 04600513 li a0,70 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c005730a: 85be mv a1,a5 + c00574da: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c005730c: 00000073 ecall + c00574dc: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c0057310: 0001 nop + c00574e0: 0001 nop dup2(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_dup2.c:10 return (int)sys_call2((unsigned int)SYS_dup2, (uintptr_t)parm1, (uintptr_t)parm2); } - c0057312: 2501 sext.w a0,a0 - c0057314: 8082 ret + c00574e2: 2501 sext.w a0,a0 + c00574e4: 8082 ret -00000000c0057316 : +00000000c00574e6 : execve(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_execve.c:10 #include @@ -245653,33 +245851,33 @@ execve(): int execve(FAR const char * parm1, FAR char * const parm2[], FAR char * const parm3[]) { - c0057316: 872a mv a4,a0 - c0057318: 87ae mv a5,a1 - c005731a: 86b2 mv a3,a2 + c00574e6: 872a mv a4,a0 + c00574e8: 87ae mv a5,a1 + c00574ea: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c005731c: 02400513 li a0,36 + c00574ec: 02400513 li a0,36 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c0057320: 85ba mv a1,a4 + c00574f0: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c0057322: 863e mv a2,a5 + c00574f2: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057324: 00000073 ecall + c00574f4: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c0057328: 0001 nop + c00574f8: 0001 nop execve(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_execve.c:12 return (int)sys_call3((unsigned int)SYS_execve, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c005732a: 2501 sext.w a0,a0 - c005732c: 8082 ret + c00574fa: 2501 sext.w a0,a0 + c00574fc: 8082 ret -00000000c005732e : +00000000c00574fe : fcntl(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_fcntl.c:9 #include @@ -245688,46 +245886,46 @@ fcntl(): int fcntl(int parm1, int parm2, ...) { - c005732e: 7139 addi sp,sp,-64 - c0057330: 8eaa mv t4,a0 - c0057332: 8e2e mv t3,a1 - c0057334: 8332 mv t1,a2 - c0057336: f43e sd a5,40(sp) + c00574fe: 7139 addi sp,sp,-64 + c0057500: 8eaa mv t4,a0 + c0057502: 8e2e mv t3,a1 + c0057504: 8332 mv t1,a2 + c0057506: f43e sd a5,40(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_fcntl.c:13 va_list ap; int parm3; va_start(ap, parm2); - c0057338: 081c addi a5,sp,16 + c0057508: 081c addi a5,sp,16 /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_fcntl.c:9 { - c005733a: e832 sd a2,16(sp) - c005733c: ec36 sd a3,24(sp) - c005733e: f03a sd a4,32(sp) - c0057340: f842 sd a6,48(sp) - c0057342: fc46 sd a7,56(sp) + c005750a: e832 sd a2,16(sp) + c005750c: ec36 sd a3,24(sp) + c005750e: f03a sd a4,32(sp) + c0057510: f842 sd a6,48(sp) + c0057512: fc46 sd a7,56(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_fcntl.c:13 va_start(ap, parm2); - c0057344: e43e sd a5,8(sp) + c0057514: e43e sd a5,8(sp) sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c0057346: 04700513 li a0,71 + c0057516: 04700513 li a0,71 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c005734a: 85f6 mv a1,t4 + c005751a: 85f6 mv a1,t4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c005734c: 8672 mv a2,t3 + c005751c: 8672 mv a2,t3 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:255 register long r3 asm("a3") = (long)(parm3); - c005734e: 0003069b sext.w a3,t1 + c005751e: 0003069b sext.w a3,t1 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057352: 00000073 ecall + c0057522: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c0057356: 0001 nop + c0057526: 0001 nop fcntl(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_fcntl.c:18 parm3 = va_arg(ap, int); @@ -245735,21 +245933,21 @@ fcntl(): return (int)sys_call3((unsigned int)SYS_fcntl, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c0057358: 2501 sext.w a0,a0 - c005735a: 6121 addi sp,sp,64 - c005735c: 8082 ret + c0057528: 2501 sext.w a0,a0 + c005752a: 6121 addi sp,sp,64 + c005752c: 8082 ret -00000000c005735e : +00000000c005752e : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c005735e: 08200513 li a0,130 + c005752e: 08200513 li a0,130 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c0057362: 00000073 ecall + c0057532: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c0057366: 0001 nop + c0057536: 0001 nop get_environ_ptr(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_get_environ_ptr.c:12 #if !defined(CONFIG_DISABLE_ENVIRON) @@ -245758,9 +245956,9 @@ FAR char ** get_environ_ptr(void) { return (FAR char **)sys_call0((unsigned int)SYS_get_environ_ptr); } - c0057368: 8082 ret + c0057538: 8082 ret -00000000c005736a : +00000000c005753a : getenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_getenv.c:10 #include @@ -245769,34 +245967,34 @@ getenv(): FAR char * getenv(FAR const char * parm1) { - c005736a: 85aa mv a1,a0 + c005753a: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c005736c: 08400513 li a0,132 + c005753c: 08400513 li a0,132 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057370: 00000073 ecall + c0057540: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057374: 0001 nop + c0057544: 0001 nop getenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_getenv.c:12 return (FAR char *)sys_call1((unsigned int)SYS_getenv, (uintptr_t)parm1); } - c0057376: 8082 ret + c0057546: 8082 ret -00000000c0057378 : +00000000c0057548 : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c0057378: 4529 li a0,10 + c0057548: 4529 li a0,10 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c005737a: 00000073 ecall + c005754a: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c005737e: 0001 nop + c005754e: 0001 nop getpid(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_getpid.c:10 #include @@ -245805,20 +246003,20 @@ pid_t getpid(void) { return (pid_t)sys_call0((unsigned int)SYS_getpid); } - c0057380: 2501 sext.w a0,a0 - c0057382: 8082 ret + c0057550: 2501 sext.w a0,a0 + c0057552: 8082 ret -00000000c0057384 : +00000000c0057554 : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c0057384: 452d li a0,11 + c0057554: 452d li a0,11 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c0057386: 00000073 ecall + c0057556: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c005738a: 0001 nop + c005755a: 0001 nop gettid(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_gettid.c:10 #include @@ -245827,10 +246025,10 @@ pid_t gettid(void) { return (pid_t)sys_call0((unsigned int)SYS_gettid); } - c005738c: 2501 sext.w a0,a0 - c005738e: 8082 ret + c005755c: 2501 sext.w a0,a0 + c005755e: 8082 ret -00000000c0057390 : +00000000c0057560 : ioctl(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:9 #include @@ -245839,58 +246037,58 @@ ioctl(): int ioctl(int parm1, int parm2, ...) { - c0057390: 7139 addi sp,sp,-64 - c0057392: 8e2a mv t3,a0 - c0057394: 832e mv t1,a1 - c0057396: f43e sd a5,40(sp) + c0057560: 7139 addi sp,sp,-64 + c0057562: 8e2a mv t3,a0 + c0057564: 832e mv t1,a1 + c0057566: f43e sd a5,40(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:13 va_list ap; unsigned long parm3; va_start(ap, parm2); - c0057398: 081c addi a5,sp,16 + c0057568: 081c addi a5,sp,16 /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:9 { - c005739a: e832 sd a2,16(sp) - c005739c: ec36 sd a3,24(sp) - c005739e: f03a sd a4,32(sp) + c005756a: e832 sd a2,16(sp) + c005756c: ec36 sd a3,24(sp) + c005756e: f03a sd a4,32(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:14 parm3 = va_arg(ap, unsigned long); - c00573a0: 86b2 mv a3,a2 + c0057570: 86b2 mv a3,a2 /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:9 { - c00573a2: f842 sd a6,48(sp) - c00573a4: fc46 sd a7,56(sp) + c0057572: f842 sd a6,48(sp) + c0057574: fc46 sd a7,56(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:13 va_start(ap, parm2); - c00573a6: e43e sd a5,8(sp) + c0057576: e43e sd a5,8(sp) sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c00573a8: 03b00513 li a0,59 + c0057578: 03b00513 li a0,59 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c00573ac: 85f2 mv a1,t3 + c005757c: 85f2 mv a1,t3 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c00573ae: 861a mv a2,t1 + c005757e: 861a mv a2,t1 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c00573b0: 00000073 ecall + c0057580: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c00573b4: 0001 nop + c0057584: 0001 nop ioctl(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_ioctl.c:18 va_end(ap); return (int)sys_call3((unsigned int)SYS_ioctl, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c00573b6: 2501 sext.w a0,a0 - c00573b8: 6121 addi sp,sp,64 - c00573ba: 8082 ret + c0057586: 2501 sext.w a0,a0 + c0057588: 6121 addi sp,sp,64 + c005758a: 8082 ret -00000000c00573bc : +00000000c005758c : kill(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_kill.c:8 #include @@ -245899,29 +246097,29 @@ kill(): int kill(pid_t parm1, int parm2) { - c00573bc: 87aa mv a5,a0 - c00573be: 862e mv a2,a1 + c005758c: 87aa mv a5,a0 + c005758e: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c00573c0: 02500513 li a0,37 + c0057590: 02500513 li a0,37 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c00573c4: 85be mv a1,a5 + c0057594: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c00573c6: 00000073 ecall + c0057596: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c00573ca: 0001 nop + c005759a: 0001 nop kill(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_kill.c:10 return (int)sys_call2((unsigned int)SYS_kill, (uintptr_t)parm1, (uintptr_t)parm2); } - c00573cc: 2501 sext.w a0,a0 - c00573ce: 8082 ret + c005759c: 2501 sext.w a0,a0 + c005759e: 8082 ret -00000000c00573d0 : +00000000c00575a0 : lseek(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_lseek.c:8 #include @@ -245930,33 +246128,33 @@ lseek(): off_t lseek(int parm1, off_t parm2, int parm3) { - c00573d0: 872a mv a4,a0 - c00573d2: 87ae mv a5,a1 - c00573d4: 86b2 mv a3,a2 + c00575a0: 872a mv a4,a0 + c00575a2: 87ae mv a5,a1 + c00575a4: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c00573d6: 04900513 li a0,73 + c00575a6: 04900513 li a0,73 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c00573da: 85ba mv a1,a4 + c00575aa: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c00573dc: 863e mv a2,a5 + c00575ac: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c00573de: 00000073 ecall + c00575ae: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c00573e2: 0001 nop + c00575b2: 0001 nop lseek(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_lseek.c:10 return (off_t)sys_call3((unsigned int)SYS_lseek, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c00573e4: 2501 sext.w a0,a0 - c00573e6: 8082 ret + c00575b4: 2501 sext.w a0,a0 + c00575b6: 8082 ret -00000000c00573e8 : +00000000c00575b8 : lstat(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_lstat.c:8 #include @@ -245965,29 +246163,29 @@ lstat(): int lstat(FAR const char * parm1, FAR struct stat * parm2) { - c00573e8: 87aa mv a5,a0 - c00573ea: 862e mv a2,a1 + c00575b8: 87aa mv a5,a0 + c00575ba: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c00573ec: 04e00513 li a0,78 + c00575bc: 04e00513 li a0,78 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c00573f0: 85be mv a1,a5 + c00575c0: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c00573f2: 00000073 ecall + c00575c2: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c00573f6: 0001 nop + c00575c6: 0001 nop lstat(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_lstat.c:10 return (int)sys_call2((unsigned int)SYS_lstat, (uintptr_t)parm1, (uintptr_t)parm2); } - c00573f8: 2501 sext.w a0,a0 - c00573fa: 8082 ret + c00575c8: 2501 sext.w a0,a0 + c00575ca: 8082 ret -00000000c00573fc : +00000000c00575cc : mkdir(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_mkdir.c:10 #include @@ -245996,35 +246194,35 @@ mkdir(): int mkdir(FAR const char * parm1, mode_t parm2) { - c00573fc: 862e mv a2,a1 - c00573fe: 87aa mv a5,a0 + c00575cc: 862e mv a2,a1 + c00575ce: 87aa mv a5,a0 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:227 register long r2 asm("a2") = (long)(parm2); - c0057400: 1602 slli a2,a2,0x20 + c00575d0: 1602 slli a2,a2,0x20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057402: 06000513 li a0,96 + c00575d2: 06000513 li a0,96 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c0057406: 85be mv a1,a5 + c00575d6: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:227 register long r2 asm("a2") = (long)(parm2); - c0057408: 9201 srli a2,a2,0x20 + c00575d8: 9201 srli a2,a2,0x20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c005740a: 00000073 ecall + c00575da: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c005740e: 0001 nop + c00575de: 0001 nop mkdir(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_mkdir.c:12 return (int)sys_call2((unsigned int)SYS_mkdir, (uintptr_t)parm1, (uintptr_t)parm2); } - c0057410: 2501 sext.w a0,a0 - c0057412: 8082 ret + c00575e0: 2501 sext.w a0,a0 + c00575e2: 8082 ret -00000000c0057414 : +00000000c00575e4 : nx_pthread_create(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_pthread_create.c:10 #include @@ -246033,11 +246231,11 @@ nx_pthread_create(): int nx_pthread_create(pthread_trampoline_t parm1, FAR pthread_t * parm2, FAR const pthread_attr_t * parm3, pthread_startroutine_t parm4, pthread_addr_t parm5) { - c0057414: 8e2a mv t3,a0 - c0057416: 832e mv t1,a1 - c0057418: 88b2 mv a7,a2 - c005741a: 8836 mv a6,a3 - c005741c: 87ba mv a5,a4 + c00575e4: 8e2a mv t3,a0 + c00575e6: 832e mv t1,a1 + c00575e8: 88b2 mv a7,a2 + c00575ea: 8836 mv a6,a3 + c00575ec: 87ba mv a5,a4 sys_call5(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:311 @@ -246046,24 +246244,24 @@ static inline uintptr_t sys_call5(unsigned int nbr, uintptr_t parm1, uintptr_t parm4, uintptr_t parm5) { register long r0 asm("a0") = (long)(nbr); - c005741e: 06900513 li a0,105 + c00575ee: 06900513 li a0,105 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:312 register long r1 asm("a1") = (long)(parm1); - c0057422: 85f2 mv a1,t3 + c00575f2: 85f2 mv a1,t3 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:313 register long r2 asm("a2") = (long)(parm2); - c0057424: 861a mv a2,t1 + c00575f4: 861a mv a2,t1 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:314 register long r3 asm("a3") = (long)(parm3); - c0057426: 86c6 mv a3,a7 + c00575f6: 86c6 mv a3,a7 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:315 register long r4 asm("a4") = (long)(parm4); - c0057428: 8742 mv a4,a6 + c00575f8: 8742 mv a4,a6 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:318 register long r5 asm("a5") = (long)(parm5); asm volatile - c005742a: 00000073 ecall + c00575fa: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:325 "ecall" :: "r"(r0), "r"(r1), "r"(r2), "r"(r3), "r"(r4), "r"(r5) @@ -246071,15 +246269,15 @@ static inline uintptr_t sys_call5(unsigned int nbr, uintptr_t parm1, ); asm volatile("nop" : "=r"(r0)); - c005742e: 0001 nop + c00575fe: 0001 nop nx_pthread_create(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_pthread_create.c:12 return (int)sys_call5((unsigned int)SYS_nx_pthread_create, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3, (uintptr_t)parm4, (uintptr_t)parm5); } - c0057430: 2501 sext.w a0,a0 - c0057432: 8082 ret + c0057600: 2501 sext.w a0,a0 + c0057602: 8082 ret -00000000c0057434 : +00000000c0057604 : nx_pthread_exit(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_pthread_exit.c:10 #include @@ -246088,24 +246286,24 @@ nx_pthread_exit(): void nx_pthread_exit(pthread_addr_t parm1) { - c0057434: 85aa mv a1,a0 + c0057604: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c0057436: 06b00513 li a0,107 + c0057606: 06b00513 li a0,107 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c005743a: 00000073 ecall + c005760a: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c005743e: 0001 nop + c005760e: 0001 nop nx_pthread_exit(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_pthread_exit.c:12 (discriminator 1) sys_call1((unsigned int)SYS_nx_pthread_exit, (uintptr_t)parm1); while(1); - c0057440: a001 j c0057440 + c0057610: a001 j c0057610 -00000000c0057442 : +00000000c0057612 : nx_vsyslog(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_vsyslog.c:8 #include @@ -246114,33 +246312,33 @@ nx_vsyslog(): int nx_vsyslog(int parm1, FAR const IPTR char * parm2, FAR va_list * parm3) { - c0057442: 872a mv a4,a0 - c0057444: 87ae mv a5,a1 - c0057446: 86b2 mv a3,a2 + c0057612: 872a mv a4,a0 + c0057614: 87ae mv a5,a1 + c0057616: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c0057448: 03900513 li a0,57 + c0057618: 03900513 li a0,57 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c005744c: 85ba mv a1,a4 + c005761c: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c005744e: 863e mv a2,a5 + c005761e: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057450: 00000073 ecall + c0057620: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c0057454: 0001 nop + c0057624: 0001 nop nx_vsyslog(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nx_vsyslog.c:10 return (int)sys_call3((unsigned int)SYS_nx_vsyslog, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c0057456: 2501 sext.w a0,a0 - c0057458: 8082 ret + c0057626: 2501 sext.w a0,a0 + c0057628: 8082 ret -00000000c005745a : +00000000c005762a : nxsem_clockwait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_clockwait.c:8 #include @@ -246149,33 +246347,33 @@ nxsem_clockwait(): int nxsem_clockwait(FAR sem_t * parm1, clockid_t parm2, FAR const struct timespec * parm3) { - c005745a: 872a mv a4,a0 - c005745c: 87ae mv a5,a1 - c005745e: 86b2 mv a3,a2 + c005762a: 872a mv a4,a0 + c005762c: 87ae mv a5,a1 + c005762e: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c0057460: 4571 li a0,28 + c0057630: 4571 li a0,28 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c0057462: 85ba mv a1,a4 + c0057632: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c0057464: 863e mv a2,a5 + c0057634: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057466: 00000073 ecall + c0057636: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c005746a: 0001 nop + c005763a: 0001 nop nxsem_clockwait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_clockwait.c:10 return (int)sys_call3((unsigned int)SYS_nxsem_clockwait, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c005746c: 2501 sext.w a0,a0 - c005746e: 8082 ret + c005763c: 2501 sext.w a0,a0 + c005763e: 8082 ret -00000000c0057470 : +00000000c0057640 : nxsem_destroy(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_destroy.c:8 #include @@ -246184,25 +246382,25 @@ nxsem_destroy(): int nxsem_destroy(FAR sem_t * parm1) { - c0057470: 85aa mv a1,a0 + c0057640: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c0057472: 4569 li a0,26 + c0057642: 4569 li a0,26 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057474: 00000073 ecall + c0057644: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057478: 0001 nop + c0057648: 0001 nop nxsem_destroy(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_destroy.c:10 return (int)sys_call1((unsigned int)SYS_nxsem_destroy, (uintptr_t)parm1); } - c005747a: 2501 sext.w a0,a0 - c005747c: 8082 ret + c005764a: 2501 sext.w a0,a0 + c005764c: 8082 ret -00000000c005747e : +00000000c005764e : nxsem_post(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_post.c:8 #include @@ -246211,25 +246409,25 @@ nxsem_post(): int nxsem_post(FAR sem_t * parm1) { - c005747e: 85aa mv a1,a0 + c005764e: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c0057480: 456d li a0,27 + c0057650: 456d li a0,27 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057482: 00000073 ecall + c0057652: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057486: 0001 nop + c0057656: 0001 nop nxsem_post(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_post.c:10 return (int)sys_call1((unsigned int)SYS_nxsem_post, (uintptr_t)parm1); } - c0057488: 2501 sext.w a0,a0 - c005748a: 8082 ret + c0057658: 2501 sext.w a0,a0 + c005765a: 8082 ret -00000000c005748c : +00000000c005765c : nxsem_trywait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_trywait.c:8 #include @@ -246238,25 +246436,25 @@ nxsem_trywait(): int nxsem_trywait(FAR sem_t * parm1) { - c005748c: 85aa mv a1,a0 + c005765c: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c005748e: 4579 li a0,30 + c005765e: 4579 li a0,30 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057490: 00000073 ecall + c0057660: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057494: 0001 nop + c0057664: 0001 nop nxsem_trywait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_trywait.c:10 return (int)sys_call1((unsigned int)SYS_nxsem_trywait, (uintptr_t)parm1); } - c0057496: 2501 sext.w a0,a0 - c0057498: 8082 ret + c0057666: 2501 sext.w a0,a0 + c0057668: 8082 ret -00000000c005749a : +00000000c005766a : nxsem_wait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_wait.c:8 #include @@ -246265,25 +246463,25 @@ nxsem_wait(): int nxsem_wait(FAR sem_t * parm1) { - c005749a: 85aa mv a1,a0 + c005766a: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c005749c: 457d li a0,31 + c005766c: 457d li a0,31 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c005749e: 00000073 ecall + c005766e: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00574a2: 0001 nop + c0057672: 0001 nop nxsem_wait(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_nxsem_wait.c:10 return (int)sys_call1((unsigned int)SYS_nxsem_wait, (uintptr_t)parm1); } - c00574a4: 2501 sext.w a0,a0 - c00574a6: 8082 ret + c0057674: 2501 sext.w a0,a0 + c0057676: 8082 ret -00000000c00574a8 : +00000000c0057678 : open(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_open.c:9 #include @@ -246292,51 +246490,51 @@ open(): int open(FAR const char * parm1, int parm2, ...) { - c00574a8: 7139 addi sp,sp,-64 - c00574aa: 8332 mv t1,a2 - c00574ac: 8eaa mv t4,a0 - c00574ae: 8e2e mv t3,a1 - c00574b0: ec36 sd a3,24(sp) - c00574b2: f43e sd a5,40(sp) + c0057678: 7139 addi sp,sp,-64 + c005767a: 8332 mv t1,a2 + c005767c: 8eaa mv t4,a0 + c005767e: 8e2e mv t3,a1 + c0057680: ec36 sd a3,24(sp) + c0057682: f43e sd a5,40(sp) sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:255 register long r3 asm("a3") = (long)(parm3); - c00574b4: 02031693 slli a3,t1,0x20 + c0057684: 02031693 slli a3,t1,0x20 open(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_open.c:13 va_list ap; mode_t parm3; va_start(ap, parm2); - c00574b8: 081c addi a5,sp,16 + c0057688: 081c addi a5,sp,16 /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_open.c:9 { - c00574ba: e832 sd a2,16(sp) - c00574bc: f03a sd a4,32(sp) - c00574be: f842 sd a6,48(sp) - c00574c0: fc46 sd a7,56(sp) + c005768a: e832 sd a2,16(sp) + c005768c: f03a sd a4,32(sp) + c005768e: f842 sd a6,48(sp) + c0057690: fc46 sd a7,56(sp) /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_open.c:13 va_start(ap, parm2); - c00574c2: e43e sd a5,8(sp) + c0057692: e43e sd a5,8(sp) sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c00574c4: 04b00513 li a0,75 + c0057694: 04b00513 li a0,75 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c00574c8: 85f6 mv a1,t4 + c0057698: 85f6 mv a1,t4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c00574ca: 8672 mv a2,t3 + c005769a: 8672 mv a2,t3 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:255 register long r3 asm("a3") = (long)(parm3); - c00574cc: 9281 srli a3,a3,0x20 + c005769c: 9281 srli a3,a3,0x20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c00574ce: 00000073 ecall + c005769e: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c00574d2: 0001 nop + c00576a2: 0001 nop open(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_open.c:18 parm3 = va_arg(ap, mode_t); @@ -246344,11 +246542,11 @@ open(): return (int)sys_call3((unsigned int)SYS_open, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c00574d4: 2501 sext.w a0,a0 - c00574d6: 6121 addi sp,sp,64 - c00574d8: 8082 ret + c00576a4: 2501 sext.w a0,a0 + c00576a6: 6121 addi sp,sp,64 + c00576a8: 8082 ret -00000000c00574da : +00000000c00576aa : pgalloc(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pgalloc.c:10 #include @@ -246357,34 +246555,34 @@ pgalloc(): uintptr_t pgalloc(uintptr_t parm1, unsigned int parm2) { - c00574da: 862e mv a2,a1 - c00574dc: 87aa mv a5,a0 + c00576aa: 862e mv a2,a1 + c00576ac: 87aa mv a5,a0 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:227 register long r2 asm("a2") = (long)(parm2); - c00574de: 1602 slli a2,a2,0x20 + c00576ae: 1602 slli a2,a2,0x20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c00574e0: 02000513 li a0,32 + c00576b0: 02000513 li a0,32 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c00574e4: 85be mv a1,a5 + c00576b4: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:227 register long r2 asm("a2") = (long)(parm2); - c00574e6: 9201 srli a2,a2,0x20 + c00576b6: 9201 srli a2,a2,0x20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c00574e8: 00000073 ecall + c00576b8: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c00574ec: 0001 nop + c00576bc: 0001 nop pgalloc(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pgalloc.c:12 return (uintptr_t)sys_call2((unsigned int)SYS_pgalloc, (uintptr_t)parm1, (uintptr_t)parm2); } - c00574ee: 8082 ret + c00576be: 8082 ret -00000000c00574f0 : +00000000c00576c0 : pthread_mutex_destroy(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_destroy.c:10 #include @@ -246393,25 +246591,25 @@ pthread_mutex_destroy(): int pthread_mutex_destroy(FAR pthread_mutex_t * parm1) { - c00574f0: 85aa mv a1,a0 + c00576c0: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c00574f2: 06e00513 li a0,110 + c00576c2: 06e00513 li a0,110 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c00574f6: 00000073 ecall + c00576c6: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00574fa: 0001 nop + c00576ca: 0001 nop pthread_mutex_destroy(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_destroy.c:12 return (int)sys_call1((unsigned int)SYS_pthread_mutex_destroy, (uintptr_t)parm1); } - c00574fc: 2501 sext.w a0,a0 - c00574fe: 8082 ret + c00576cc: 2501 sext.w a0,a0 + c00576ce: 8082 ret -00000000c0057500 : +00000000c00576d0 : pthread_mutex_init(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_init.c:10 #include @@ -246420,29 +246618,29 @@ pthread_mutex_init(): int pthread_mutex_init(FAR pthread_mutex_t * parm1, FAR const pthread_mutexattr_t * parm2) { - c0057500: 87aa mv a5,a0 - c0057502: 862e mv a2,a1 + c00576d0: 87aa mv a5,a0 + c00576d2: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057504: 06f00513 li a0,111 + c00576d4: 06f00513 li a0,111 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c0057508: 85be mv a1,a5 + c00576d8: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c005750a: 00000073 ecall + c00576da: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c005750e: 0001 nop + c00576de: 0001 nop pthread_mutex_init(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_init.c:12 return (int)sys_call2((unsigned int)SYS_pthread_mutex_init, (uintptr_t)parm1, (uintptr_t)parm2); } - c0057510: 2501 sext.w a0,a0 - c0057512: 8082 ret + c00576e0: 2501 sext.w a0,a0 + c00576e2: 8082 ret -00000000c0057514 : +00000000c00576e4 : pthread_mutex_timedlock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_timedlock.c:10 #include @@ -246451,29 +246649,29 @@ pthread_mutex_timedlock(): int pthread_mutex_timedlock(FAR pthread_mutex_t * parm1, FAR const struct timespec * parm2) { - c0057514: 87aa mv a5,a0 - c0057516: 862e mv a2,a1 + c00576e4: 87aa mv a5,a0 + c00576e6: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057518: 07000513 li a0,112 + c00576e8: 07000513 li a0,112 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c005751c: 85be mv a1,a5 + c00576ec: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c005751e: 00000073 ecall + c00576ee: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c0057522: 0001 nop + c00576f2: 0001 nop pthread_mutex_timedlock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_timedlock.c:12 return (int)sys_call2((unsigned int)SYS_pthread_mutex_timedlock, (uintptr_t)parm1, (uintptr_t)parm2); } - c0057524: 2501 sext.w a0,a0 - c0057526: 8082 ret + c00576f4: 2501 sext.w a0,a0 + c00576f6: 8082 ret -00000000c0057528 : +00000000c00576f8 : pthread_mutex_unlock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_unlock.c:10 #include @@ -246482,25 +246680,25 @@ pthread_mutex_unlock(): int pthread_mutex_unlock(FAR pthread_mutex_t * parm1) { - c0057528: 85aa mv a1,a0 + c00576f8: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c005752a: 07200513 li a0,114 + c00576fa: 07200513 li a0,114 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c005752e: 00000073 ecall + c00576fe: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057532: 0001 nop + c0057702: 0001 nop pthread_mutex_unlock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_pthread_mutex_unlock.c:12 return (int)sys_call1((unsigned int)SYS_pthread_mutex_unlock, (uintptr_t)parm1); } - c0057534: 2501 sext.w a0,a0 - c0057536: 8082 ret + c0057704: 2501 sext.w a0,a0 + c0057706: 8082 ret -00000000c0057538 : +00000000c0057708 : read(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_read.c:8 #include @@ -246509,32 +246707,32 @@ read(): ssize_t read(int parm1, FAR void * parm2, size_t parm3) { - c0057538: 872a mv a4,a0 - c005753a: 87ae mv a5,a1 - c005753c: 86b2 mv a3,a2 + c0057708: 872a mv a4,a0 + c005770a: 87ae mv a5,a1 + c005770c: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c005753e: 03c00513 li a0,60 + c005770e: 03c00513 li a0,60 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c0057542: 85ba mv a1,a4 + c0057712: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c0057544: 863e mv a2,a5 + c0057714: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057546: 00000073 ecall + c0057716: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c005754a: 0001 nop + c005771a: 0001 nop read(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_read.c:10 return (ssize_t)sys_call3((unsigned int)SYS_read, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c005754c: 8082 ret + c005771c: 8082 ret -00000000c005754e : +00000000c005771e : rename(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_rename.c:8 #include @@ -246543,29 +246741,29 @@ rename(): int rename(FAR const char * parm1, FAR const char * parm2) { - c005754e: 87aa mv a5,a0 - c0057550: 862e mv a2,a1 + c005771e: 87aa mv a5,a0 + c0057720: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057552: 04c00513 li a0,76 + c0057722: 04c00513 li a0,76 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c0057556: 85be mv a1,a5 + c0057726: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c0057558: 00000073 ecall + c0057728: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c005755c: 0001 nop + c005772c: 0001 nop rename(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_rename.c:10 return (int)sys_call2((unsigned int)SYS_rename, (uintptr_t)parm1, (uintptr_t)parm2); } - c005755e: 2501 sext.w a0,a0 - c0057560: 8082 ret + c005772e: 2501 sext.w a0,a0 + c0057730: 8082 ret -00000000c0057562 : +00000000c0057732 : rmdir(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_rmdir.c:10 #include @@ -246574,35 +246772,35 @@ rmdir(): int rmdir(FAR const char* parm1) { - c0057562: 85aa mv a1,a0 + c0057732: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c0057564: 06100513 li a0,97 + c0057734: 06100513 li a0,97 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057568: 00000073 ecall + c0057738: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c005756c: 0001 nop + c005773c: 0001 nop rmdir(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_rmdir.c:12 return (int)sys_call1((unsigned int)SYS_rmdir, (uintptr_t)parm1); } - c005756e: 2501 sext.w a0,a0 - c0057570: 8082 ret + c005773e: 2501 sext.w a0,a0 + c0057740: 8082 ret -00000000c0057572 : +00000000c0057742 : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c0057572: 453d li a0,15 + c0057742: 453d li a0,15 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c0057574: 00000073 ecall + c0057744: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c0057578: 0001 nop + c0057748: 0001 nop sched_lock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_sched_lock.c:10 #include @@ -246611,20 +246809,20 @@ int sched_lock(void) { return (int)sys_call0((unsigned int)SYS_sched_lock); } - c005757a: 2501 sext.w a0,a0 - c005757c: 8082 ret + c005774a: 2501 sext.w a0,a0 + c005774c: 8082 ret -00000000c005757e : +00000000c005774e : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c005757e: 4551 li a0,20 + c005774e: 4551 li a0,20 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c0057580: 00000073 ecall + c0057750: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c0057584: 0001 nop + c0057754: 0001 nop sched_unlock(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_sched_unlock.c:10 #include @@ -246633,10 +246831,10 @@ int sched_unlock(void) { return (int)sys_call0((unsigned int)SYS_sched_unlock); } - c0057586: 2501 sext.w a0,a0 - c0057588: 8082 ret + c0057756: 2501 sext.w a0,a0 + c0057758: 8082 ret -00000000c005758a : select(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_select.c:8 #include @@ -246645,41 +246843,41 @@ select(): int select(int parm1, FAR fd_set * parm2, FAR fd_set * parm3, FAR fd_set * parm4, FAR struct timeval * parm5) { - c005758a: 8e2a mv t3,a0 - c005758c: 832e mv t1,a1 - c005758e: 88b2 mv a7,a2 - c0057590: 8836 mv a6,a3 - c0057592: 87ba mv a5,a4 + c005775a: 8e2a mv t3,a0 + c005775c: 832e mv t1,a1 + c005775e: 88b2 mv a7,a2 + c0057760: 8836 mv a6,a3 + c0057762: 87ba mv a5,a4 sys_call5(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:311 register long r0 asm("a0") = (long)(nbr); - c0057594: 04100513 li a0,65 + c0057764: 04100513 li a0,65 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:312 register long r1 asm("a1") = (long)(parm1); - c0057598: 85f2 mv a1,t3 + c0057768: 85f2 mv a1,t3 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:313 register long r2 asm("a2") = (long)(parm2); - c005759a: 861a mv a2,t1 + c005776a: 861a mv a2,t1 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:314 register long r3 asm("a3") = (long)(parm3); - c005759c: 86c6 mv a3,a7 + c005776c: 86c6 mv a3,a7 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:315 register long r4 asm("a4") = (long)(parm4); - c005759e: 8742 mv a4,a6 + c005776e: 8742 mv a4,a6 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:318 asm volatile - c00575a0: 00000073 ecall + c0057770: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:325 asm volatile("nop" : "=r"(r0)); - c00575a4: 0001 nop + c0057774: 0001 nop select(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_select.c:10 return (int)sys_call5((unsigned int)SYS_select, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3, (uintptr_t)parm4, (uintptr_t)parm5); } - c00575a6: 2501 sext.w a0,a0 - c00575a8: 8082 ret + c0057776: 2501 sext.w a0,a0 + c0057778: 8082 ret -00000000c00575aa : +00000000c005777a : setenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_setenv.c:10 #include @@ -246688,33 +246886,33 @@ setenv(): int setenv(FAR const char * parm1, FAR const char * parm2, int parm3) { - c00575aa: 872a mv a4,a0 - c00575ac: 87ae mv a5,a1 - c00575ae: 86b2 mv a3,a2 + c005777a: 872a mv a4,a0 + c005777c: 87ae mv a5,a1 + c005777e: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c00575b0: 08600513 li a0,134 + c0057780: 08600513 li a0,134 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c00575b4: 85ba mv a1,a4 + c0057784: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c00575b6: 863e mv a2,a5 + c0057786: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c00575b8: 00000073 ecall + c0057788: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c00575bc: 0001 nop + c005778c: 0001 nop setenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_setenv.c:12 return (int)sys_call3((unsigned int)SYS_setenv, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c00575be: 2501 sext.w a0,a0 - c00575c0: 8082 ret + c005778e: 2501 sext.w a0,a0 + c0057790: 8082 ret -00000000c00575c2 : +00000000c0057792 : sigaction(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_sigaction.c:8 #include @@ -246723,33 +246921,33 @@ sigaction(): int sigaction(int parm1, FAR const struct sigaction * parm2, FAR struct sigaction * parm3) { - c00575c2: 872a mv a4,a0 - c00575c4: 87ae mv a5,a1 - c00575c6: 86b2 mv a3,a2 + c0057792: 872a mv a4,a0 + c0057794: 87ae mv a5,a1 + c0057796: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c00575c8: 02700513 li a0,39 + c0057798: 02700513 li a0,39 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c00575cc: 85ba mv a1,a4 + c005779c: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c00575ce: 863e mv a2,a5 + c005779e: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c00575d0: 00000073 ecall + c00577a0: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c00575d4: 0001 nop + c00577a4: 0001 nop sigaction(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_sigaction.c:10 return (int)sys_call3((unsigned int)SYS_sigaction, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c00575d6: 2501 sext.w a0,a0 - c00575d8: 8082 ret + c00577a6: 2501 sext.w a0,a0 + c00577a8: 8082 ret -00000000c00575da : +00000000c00577aa : stat(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_stat.c:8 #include @@ -246758,29 +246956,29 @@ stat(): int stat(FAR const char * parm1, FAR struct stat * parm2) { - c00575da: 87aa mv a5,a0 - c00575dc: 862e mv a2,a1 + c00577aa: 87aa mv a5,a0 + c00577ac: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c00575de: 04d00513 li a0,77 + c00577ae: 04d00513 li a0,77 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c00575e2: 85be mv a1,a5 + c00577b2: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c00575e4: 00000073 ecall + c00577b4: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c00575e8: 0001 nop + c00577b8: 0001 nop stat(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_stat.c:10 return (int)sys_call2((unsigned int)SYS_stat, (uintptr_t)parm1, (uintptr_t)parm2); } - c00575ea: 2501 sext.w a0,a0 - c00575ec: 8082 ret + c00577ba: 2501 sext.w a0,a0 + c00577bc: 8082 ret -00000000c00575ee : +00000000c00577be : unlink(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_unlink.c:10 #include @@ -246789,25 +246987,25 @@ unlink(): int unlink(FAR const char * parm1) { - c00575ee: 85aa mv a1,a0 + c00577be: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c00575f0: 06300513 li a0,99 + c00577c0: 06300513 li a0,99 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c00575f4: 00000073 ecall + c00577c4: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c00575f8: 0001 nop + c00577c8: 0001 nop unlink(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_unlink.c:12 return (int)sys_call1((unsigned int)SYS_unlink, (uintptr_t)parm1); } - c00575fa: 2501 sext.w a0,a0 - c00575fc: 8082 ret + c00577ca: 2501 sext.w a0,a0 + c00577cc: 8082 ret -00000000c00575fe : +00000000c00577ce : unsetenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_unsetenv.c:10 #include @@ -246816,35 +247014,35 @@ unsetenv(): int unsetenv(FAR const char * parm1) { - c00575fe: 85aa mv a1,a0 + c00577ce: 85aa mv a1,a0 sys_call1(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:199 register long r0 asm("a0") = (long)(nbr); - c0057600: 08700513 li a0,135 + c00577d0: 08700513 li a0,135 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:202 asm volatile - c0057604: 00000073 ecall + c00577d4: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:209 asm volatile("nop" : "=r"(r0)); - c0057608: 0001 nop + c00577d8: 0001 nop unsetenv(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_unsetenv.c:12 return (int)sys_call1((unsigned int)SYS_unsetenv, (uintptr_t)parm1); } - c005760a: 2501 sext.w a0,a0 - c005760c: 8082 ret + c00577da: 2501 sext.w a0,a0 + c00577dc: 8082 ret -00000000c005760e : +00000000c00577de : sys_call0(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:175 register long r0 asm("a0") = (long)(nbr); - c005760e: 02100513 li a0,33 + c00577de: 02100513 li a0,33 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:177 asm volatile - c0057612: 00000073 ecall + c00577e2: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:184 asm volatile("nop" : "=r"(r0)); - c0057616: 0001 nop + c00577e6: 0001 nop up_fork(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_up_fork.c:12 #if defined(CONFIG_ARCH_HAVE_FORK) @@ -246853,10 +247051,10 @@ pid_t up_fork(void) { return (pid_t)sys_call0((unsigned int)SYS_up_fork); } - c0057618: 2501 sext.w a0,a0 - c005761a: 8082 ret + c00577e8: 2501 sext.w a0,a0 + c00577ea: 8082 ret -00000000c005761c : +00000000c00577ec : utimens(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_utimens.c:8 #include @@ -246865,29 +247063,29 @@ utimens(): int utimens(FAR const char * parm1, const struct timespec parm2[2]) { - c005761c: 87aa mv a5,a0 - c005761e: 862e mv a2,a1 + c00577ec: 87aa mv a5,a0 + c00577ee: 862e mv a2,a1 sys_call2(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:225 register long r0 asm("a0") = (long)(nbr); - c0057620: 05b00513 li a0,91 + c00577f0: 05b00513 li a0,91 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:226 register long r1 asm("a1") = (long)(parm1); - c0057624: 85be mv a1,a5 + c00577f4: 85be mv a1,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:229 asm volatile - c0057626: 00000073 ecall + c00577f6: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:236 asm volatile("nop" : "=r"(r0)); - c005762a: 0001 nop + c00577fa: 0001 nop utimens(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_utimens.c:10 return (int)sys_call2((unsigned int)SYS_utimens, (uintptr_t)parm1, (uintptr_t)parm2); } - c005762c: 2501 sext.w a0,a0 - c005762e: 8082 ret + c00577fc: 2501 sext.w a0,a0 + c00577fe: 8082 ret -00000000c0057630 : +00000000c0057800 : waitpid(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_waitpid.c:10 #include @@ -246896,33 +247094,33 @@ waitpid(): pid_t waitpid(pid_t parm1, FAR int * parm2, int parm3) { - c0057630: 872a mv a4,a0 - c0057632: 87ae mv a5,a1 - c0057634: 86b2 mv a3,a2 + c0057800: 872a mv a4,a0 + c0057802: 87ae mv a5,a1 + c0057804: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c0057636: 02200513 li a0,34 + c0057806: 02200513 li a0,34 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c005763a: 85ba mv a1,a4 + c005780a: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c005763c: 863e mv a2,a5 + c005780c: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c005763e: 00000073 ecall + c005780e: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c0057642: 0001 nop + c0057812: 0001 nop waitpid(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_waitpid.c:12 return (pid_t)sys_call3((unsigned int)SYS_waitpid, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c0057644: 2501 sext.w a0,a0 - c0057646: 8082 ret + c0057814: 2501 sext.w a0,a0 + c0057816: 8082 ret -00000000c0057648 : +00000000c0057818 : write(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_write.c:8 #include @@ -246931,32 +247129,32 @@ write(): ssize_t write(int parm1, FAR const void * parm2, size_t parm3) { - c0057648: 872a mv a4,a0 - c005764a: 87ae mv a5,a1 - c005764c: 86b2 mv a3,a2 + c0057818: 872a mv a4,a0 + c005781a: 87ae mv a5,a1 + c005781c: 86b2 mv a3,a2 sys_call3(): /Users/Luppy/riscv/nuttx/include/arch/syscall.h:252 register long r0 asm("a0") = (long)(nbr); - c005764e: 03d00513 li a0,61 + c005781e: 03d00513 li a0,61 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:253 register long r1 asm("a1") = (long)(parm1); - c0057652: 85ba mv a1,a4 + c0057822: 85ba mv a1,a4 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:254 register long r2 asm("a2") = (long)(parm2); - c0057654: 863e mv a2,a5 + c0057824: 863e mv a2,a5 /Users/Luppy/riscv/nuttx/include/arch/syscall.h:257 asm volatile - c0057656: 00000073 ecall + c0057826: 00000073 ecall /Users/Luppy/riscv/nuttx/include/arch/syscall.h:264 asm volatile("nop" : "=r"(r0)); - c005765a: 0001 nop + c005782a: 0001 nop write(): /Users/Luppy/riscv/nuttx/syscall/proxies/PROXY_write.c:10 return (ssize_t)sys_call3((unsigned int)SYS_write, (uintptr_t)parm1, (uintptr_t)parm2, (uintptr_t)parm3); } - c005765c: 8082 ret + c005782c: 8082 ret -00000000c005765e : +00000000c005782e : acos(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acos.c:43 * Public Functions @@ -246965,25 +247163,25 @@ acos(): #ifdef CONFIG_HAVE_DOUBLE double acos(double x) { - c005765e: 1141 addi sp,sp,-16 - c0057660: e406 sd ra,8(sp) + c005782e: 1141 addi sp,sp,-16 + c0057830: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acos.c:44 return (M_PI_2 - asin(x)); - c0057662: 0c8000ef jal ra,c005772a + c0057832: 0c8000ef jal ra,c00578fa /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acos.c:45 } - c0057666: 60a2 ld ra,8(sp) + c0057836: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acos.c:44 return (M_PI_2 - asin(x)); - c0057668: 0001d797 auipc a5,0x1d - c005766c: 2587b787 fld fa5,600(a5) # c00748c0 <_erodata+0x140> + c0057838: 0001d797 auipc a5,0x1d + c005783c: 2e87b787 fld fa5,744(a5) # c0074b20 <_erodata+0x140> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acos.c:45 } - c0057670: 0aa7f553 fsub.d fa0,fa5,fa0 - c0057674: 0141 addi sp,sp,16 - c0057676: 8082 ret + c0057840: 0aa7f553 fsub.d fa0,fa5,fa0 + c0057844: 0141 addi sp,sp,16 + c0057846: 8082 ret -00000000c0057678 : +00000000c0057848 : asin_aux(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:57 * converges very slowly for x close to 1. We can accelerate convergence @@ -246992,9 +247190,9 @@ asin_aux(): static double asin_aux(double x) { - c0057678: 715d addi sp,sp,-80 - c005767a: ac22 fsd fs0,24(sp) - c005767c: a826 fsd fs1,16(sp) + c0057848: 715d addi sp,sp,-80 + c005784a: ac22 fsd fs0,24(sp) + c005784c: a826 fsd fs1,16(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:63 long double y; double y_cos; @@ -247002,38 +247200,38 @@ static double asin_aux(double x) y = 0.0; y_sin = 0.0; - c005767e: f2000453 fmv.d.x fs0,zero + c005784e: f2000453 fmv.d.x fs0,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:57 { - c0057682: 22a504d3 fmv.d fs1,fa0 - c0057686: e0a2 sd s0,64(sp) - c0057688: fc26 sd s1,56(sp) - c005768a: a04e fsd fs3,0(sp) - c005768c: e486 sd ra,72(sp) - c005768e: f84a sd s2,48(sp) - c0057690: f44e sd s3,40(sp) - c0057692: a44a fsd fs2,8(sp) + c0057852: 22a504d3 fmv.d fs1,fa0 + c0057856: e0a2 sd s0,64(sp) + c0057858: fc26 sd s1,56(sp) + c005785a: a04e fsd fs3,0(sp) + c005785c: e486 sd ra,72(sp) + c005785e: f84a sd s2,48(sp) + c0057860: f44e sd s3,40(sp) + c0057862: a44a fsd fs2,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:62 y = 0.0; - c0057694: 4481 li s1,0 - c0057696: 4401 li s0,0 + c0057864: 4481 li s1,0 + c0057866: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:65 while (fabs(y_sin - x) > DBL_EPSILON) - c0057698: 0001d797 auipc a5,0x1d - c005769c: 2307b987 fld fs3,560(a5) # c00748c8 <_erodata+0x148> + c0057868: 0001d797 auipc a5,0x1d + c005786c: 2c07b987 fld fs3,704(a5) # c0074b28 <_erodata+0x148> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:67 { y_cos = cos(y); - c00576a0: 8526 mv a0,s1 - c00576a2: 85a2 mv a1,s0 - c00576a4: 96bab0ef jal ra,c000300e <__trunctfdf2> + c0057870: 8526 mv a0,s1 + c0057872: 85a2 mv a1,s0 + c0057874: f9aab0ef jal ra,c000300e <__trunctfdf2> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:65 while (fabs(y_sin - x) > DBL_EPSILON) - c00576a8: 0a9477d3 fsub.d fa5,fs0,fs1 - c00576ac: 22f7a7d3 fabs.d fa5,fa5 - c00576b0: a2f997d3 flt.d a5,fs3,fa5 - c00576b4: ef81 bnez a5,c00576cc + c0057878: 0a9477d3 fsub.d fa5,fs0,fs1 + c005787c: 22f7a7d3 fabs.d fa5,fa5 + c0057880: a2f997d3 flt.d a5,fs3,fa5 + c0057884: ef81 bnez a5,c005789c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:73 y -= ((long double)y_sin - (long double)x) / (long double)y_cos; y_sin = sin(y); @@ -247041,58 +247239,58 @@ static double asin_aux(double x) return y; } - c00576b6: 60a6 ld ra,72(sp) - c00576b8: 6406 ld s0,64(sp) - c00576ba: 74e2 ld s1,56(sp) - c00576bc: 7942 ld s2,48(sp) - c00576be: 79a2 ld s3,40(sp) - c00576c0: 2462 fld fs0,24(sp) - c00576c2: 24c2 fld fs1,16(sp) - c00576c4: 2922 fld fs2,8(sp) - c00576c6: 2982 fld fs3,0(sp) - c00576c8: 6161 addi sp,sp,80 - c00576ca: 8082 ret + c0057886: 60a6 ld ra,72(sp) + c0057888: 6406 ld s0,64(sp) + c005788a: 74e2 ld s1,56(sp) + c005788c: 7942 ld s2,48(sp) + c005788e: 79a2 ld s3,40(sp) + c0057890: 2462 fld fs0,24(sp) + c0057892: 24c2 fld fs1,16(sp) + c0057894: 2922 fld fs2,8(sp) + c0057896: 2982 fld fs3,0(sp) + c0057898: 6161 addi sp,sp,80 + c005789a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:67 y_cos = cos(y); - c00576cc: 1a8000ef jal ra,c0057874 - c00576d0: 22a50953 fmv.d fs2,fa0 + c005789c: 1a8000ef jal ra,c0057a44 + c00578a0: 22a50953 fmv.d fs2,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:68 y -= ((long double)y_sin - (long double)x) / (long double)y_cos; - c00576d4: 22840553 fmv.d fa0,fs0 - c00576d8: e9aab0ef jal ra,c0002d72 <__extenddftf2> - c00576dc: 22948553 fmv.d fa0,fs1 - c00576e0: 89aa mv s3,a0 - c00576e2: 892e mv s2,a1 - c00576e4: e8eab0ef jal ra,c0002d72 <__extenddftf2> - c00576e8: 862a mv a2,a0 - c00576ea: 86ae mv a3,a1 - c00576ec: 854e mv a0,s3 - c00576ee: 85ca mv a1,s2 - c00576f0: d41aa0ef jal ra,c0002430 <__subtf3> - c00576f4: 23290553 fmv.d fa0,fs2 - c00576f8: 89aa mv s3,a0 - c00576fa: 892e mv s2,a1 - c00576fc: e76ab0ef jal ra,c0002d72 <__extenddftf2> - c0057700: 862a mv a2,a0 - c0057702: 86ae mv a3,a1 - c0057704: 854e mv a0,s3 - c0057706: 85ca mv a1,s2 - c0057708: f39a90ef jal ra,c0001640 <__divtf3> - c005770c: 862a mv a2,a0 - c005770e: 86ae mv a3,a1 - c0057710: 8526 mv a0,s1 - c0057712: 85a2 mv a1,s0 - c0057714: d1daa0ef jal ra,c0002430 <__subtf3> - c0057718: 84aa mv s1,a0 - c005771a: 842e mv s0,a1 + c00578a4: 22840553 fmv.d fa0,fs0 + c00578a8: ccaab0ef jal ra,c0002d72 <__extenddftf2> + c00578ac: 22948553 fmv.d fa0,fs1 + c00578b0: 89aa mv s3,a0 + c00578b2: 892e mv s2,a1 + c00578b4: cbeab0ef jal ra,c0002d72 <__extenddftf2> + c00578b8: 862a mv a2,a0 + c00578ba: 86ae mv a3,a1 + c00578bc: 854e mv a0,s3 + c00578be: 85ca mv a1,s2 + c00578c0: b71aa0ef jal ra,c0002430 <__subtf3> + c00578c4: 23290553 fmv.d fa0,fs2 + c00578c8: 89aa mv s3,a0 + c00578ca: 892e mv s2,a1 + c00578cc: ca6ab0ef jal ra,c0002d72 <__extenddftf2> + c00578d0: 862a mv a2,a0 + c00578d2: 86ae mv a3,a1 + c00578d4: 854e mv a0,s3 + c00578d6: 85ca mv a1,s2 + c00578d8: d69a90ef jal ra,c0001640 <__divtf3> + c00578dc: 862a mv a2,a0 + c00578de: 86ae mv a3,a1 + c00578e0: 8526 mv a0,s1 + c00578e2: 85a2 mv a1,s0 + c00578e4: b4daa0ef jal ra,c0002430 <__subtf3> + c00578e8: 84aa mv s1,a0 + c00578ea: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:69 y_sin = sin(y); - c005771c: 8f3ab0ef jal ra,c000300e <__trunctfdf2> - c0057720: 414000ef jal ra,c0057b34 - c0057724: 22a50453 fmv.d fs0,fa0 - c0057728: bfa5 j c00576a0 + c00578ec: f22ab0ef jal ra,c000300e <__trunctfdf2> + c00578f0: 414000ef jal ra,c0057d04 + c00578f4: 22a50453 fmv.d fs0,fa0 + c00578f8: bfa5 j c0057870 -00000000c005772a : +00000000c00578fa : asin(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:85 { @@ -247101,34 +247299,34 @@ asin(): /* Verify that the input value is in the domain of the function */ if (x < -1.0 || x > 1.0 || isnan(x)) - c005772a: 0001d797 auipc a5,0x1d - c005772e: 0667b787 fld fa5,102(a5) # c0074790 <_erodata+0x10> - c0057732: a2f517d3 flt.d a5,fa0,fa5 - c0057736: ebbd bnez a5,c00577ac + c00578fa: 0001d797 auipc a5,0x1d + c00578fe: 0f67b787 fld fa5,246(a5) # c00749f0 <_erodata+0x10> + c0057902: a2f517d3 flt.d a5,fa0,fa5 + c0057906: ebbd bnez a5,c005797c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:85 (discriminator 1) - c0057738: 0001d797 auipc a5,0x1d - c005773c: 0607b707 fld fa4,96(a5) # c0074798 <_erodata+0x18> - c0057740: a2a717d3 flt.d a5,fa4,fa0 + c0057908: 0001d797 auipc a5,0x1d + c005790c: 0f07b707 fld fa4,240(a5) # c00749f8 <_erodata+0x18> + c0057910: a2a717d3 flt.d a5,fa4,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:80 (discriminator 1) { - c0057744: 1101 addi sp,sp,-32 - c0057746: a422 fsd fs0,8(sp) - c0057748: ec06 sd ra,24(sp) - c005774a: 22a50453 fmv.d fs0,fa0 + c0057914: 1101 addi sp,sp,-32 + c0057916: a422 fsd fs0,8(sp) + c0057918: ec06 sd ra,24(sp) + c005791a: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:85 (discriminator 1) if (x < -1.0 || x > 1.0 || isnan(x)) - c005774e: e781 bnez a5,c0057756 + c005791e: e781 bnez a5,c0057926 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:85 (discriminator 2) - c0057750: a2a527d3 feq.d a5,fa0,fa0 - c0057754: ef99 bnez a5,c0057772 + c0057920: a2a527d3 feq.d a5,fa0,fa0 + c0057924: ef99 bnez a5,c0057942 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:87 { return NAN; - c0057756: 0001d797 auipc a5,0x1d - c005775a: 0327b507 fld fa0,50(a5) # c0074788 <_erodata+0x8> - c005775e: 12a57553 fmul.d fa0,fa0,fa0 - c0057762: f20007d3 fmv.d.x fa5,zero - c0057766: 12f57553 fmul.d fa0,fa0,fa5 + c0057926: 0001d797 auipc a5,0x1d + c005792a: 0c27b507 fld fa0,194(a5) # c00749e8 <_erodata+0x8> + c005792e: 12a57553 fmul.d fa0,fa0,fa0 + c0057932: f20007d3 fmv.d.x fa5,zero + c0057936: 12f57553 fmul.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:103 { y = asin_aux(x); @@ -247136,49 +247334,49 @@ asin(): return y; } - c005776a: 60e2 ld ra,24(sp) - c005776c: 2422 fld fs0,8(sp) - c005776e: 6105 addi sp,sp,32 - c0057770: 8082 ret + c005793a: 60e2 ld ra,24(sp) + c005793c: 2422 fld fs0,8(sp) + c005793e: 6105 addi sp,sp,32 + c0057940: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:92 if (fabs(x) > 0.71) - c0057772: 22a527d3 fabs.d fa5,fa0 - c0057776: 0001d797 auipc a5,0x1d - c005777a: 15a7b687 fld fa3,346(a5) # c00748d0 <_erodata+0x150> - c005777e: a2f697d3 flt.d a5,fa3,fa5 - c0057782: c385 beqz a5,c00577a2 + c0057942: 22a527d3 fabs.d fa5,fa0 + c0057946: 0001d797 auipc a5,0x1d + c005794a: 1ea7b687 fld fa3,490(a5) # c0074b30 <_erodata+0x150> + c005794e: a2f697d3 flt.d a5,fa3,fa5 + c0057952: c385 beqz a5,c0057972 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:94 y = M_PI_2 - asin_aux(sqrt(1.0 - x * x)); - c0057784: 72a5754b fnmsub.d fa0,fa0,fa0,fa4 - c0057788: 4a8000ef jal ra,c0057c30 - c005778c: eedff0ef jal ra,c0057678 - c0057790: 0001d797 auipc a5,0x1d - c0057794: 1307b787 fld fa5,304(a5) # c00748c0 <_erodata+0x140> - c0057798: 0aa7f553 fsub.d fa0,fa5,fa0 + c0057954: 72a5754b fnmsub.d fa0,fa0,fa0,fa4 + c0057958: 4a8000ef jal ra,c0057e00 + c005795c: eedff0ef jal ra,c0057848 + c0057960: 0001d797 auipc a5,0x1d + c0057964: 1c07b787 fld fa5,448(a5) # c0074b20 <_erodata+0x140> + c0057968: 0aa7f553 fsub.d fa0,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:95 y = copysign(y, x); - c005779c: 22850553 fsgnj.d fa0,fa0,fs0 - c00577a0: b7e9 j c005776a + c005796c: 22850553 fsgnj.d fa0,fa0,fs0 + c0057970: b7e9 j c005793a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:103 } - c00577a2: 60e2 ld ra,24(sp) - c00577a4: 2422 fld fs0,8(sp) - c00577a6: 6105 addi sp,sp,32 + c0057972: 60e2 ld ra,24(sp) + c0057974: 2422 fld fs0,8(sp) + c0057976: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:99 y = asin_aux(x); - c00577a8: ed1ff06f j c0057678 + c0057978: ed1ff06f j c0057848 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:87 return NAN; - c00577ac: 0001d797 auipc a5,0x1d - c00577b0: fdc7b507 fld fa0,-36(a5) # c0074788 <_erodata+0x8> - c00577b4: 12a57553 fmul.d fa0,fa0,fa0 - c00577b8: f20007d3 fmv.d.x fa5,zero - c00577bc: 12f57553 fmul.d fa0,fa0,fa5 + c005797c: 0001d797 auipc a5,0x1d + c0057980: 06c7b507 fld fa0,108(a5) # c00749e8 <_erodata+0x8> + c0057984: 12a57553 fmul.d fa0,fa0,fa0 + c0057988: f20007d3 fmv.d.x fa5,zero + c005798c: 12f57553 fmul.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asin.c:103 } - c00577c0: 8082 ret + c0057990: 8082 ret -00000000c00577c2 : +00000000c0057992 : atan(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:45 * Public Functions @@ -247187,31 +247385,31 @@ atan(): #ifdef CONFIG_HAVE_DOUBLE double atan(double x) { - c00577c2: 1101 addi sp,sp,-32 - c00577c4: a422 fsd fs0,8(sp) - c00577c6: 22a50453 fmv.d fs0,fa0 + c0057992: 1101 addi sp,sp,-32 + c0057994: a422 fsd fs0,8(sp) + c0057996: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:46 return asin(x / sqrt(x * x + 1)); - c00577ca: 0001d797 auipc a5,0x1d - c00577ce: fce7b507 fld fa0,-50(a5) # c0074798 <_erodata+0x18> + c005799a: 0001d797 auipc a5,0x1d + c005799e: 05e7b507 fld fa0,94(a5) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:45 { - c00577d2: ec06 sd ra,24(sp) + c00579a2: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:46 return asin(x / sqrt(x * x + 1)); - c00577d4: 52847543 fmadd.d fa0,fs0,fs0,fa0 - c00577d8: 458000ef jal ra,c0057c30 - c00577dc: 1aa47553 fdiv.d fa0,fs0,fa0 + c00579a4: 52847543 fmadd.d fa0,fs0,fs0,fa0 + c00579a8: 458000ef jal ra,c0057e00 + c00579ac: 1aa47553 fdiv.d fa0,fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:47 } - c00577e0: 60e2 ld ra,24(sp) - c00577e2: 2422 fld fs0,8(sp) - c00577e4: 6105 addi sp,sp,32 + c00579b0: 60e2 ld ra,24(sp) + c00579b2: 2422 fld fs0,8(sp) + c00579b4: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan.c:46 return asin(x / sqrt(x * x + 1)); - c00577e6: f45ff06f j c005772a + c00579b6: f45ff06f j c00578fa -00000000c00577ea : +00000000c00579ba : atan2(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:44 ****************************************************************************/ @@ -247220,36 +247418,36 @@ atan2(): double atan2(double y, double x) { if (x > 0) - c00577ea: f20007d3 fmv.d.x fa5,zero - c00577ee: a2b797d3 flt.d a5,fa5,fa1 - c00577f2: c789 beqz a5,c00577fc + c00579ba: f20007d3 fmv.d.x fa5,zero + c00579be: a2b797d3 flt.d a5,fa5,fa1 + c00579c2: c789 beqz a5,c00579cc /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:46 { return atan(y / x); - c00577f4: 1ab57553 fdiv.d fa0,fa0,fa1 - c00577f8: fcbff06f j c00577c2 + c00579c4: 1ab57553 fdiv.d fa0,fa0,fa1 + c00579c8: fcbff06f j c0057992 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:48 } else if (y >= 0 && x < 0) - c00577fc: a2a787d3 fle.d a5,fa5,fa0 + c00579cc: a2a787d3 fle.d a5,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:43 { - c0057800: 1141 addi sp,sp,-16 - c0057802: e406 sd ra,8(sp) + c00579d0: 1141 addi sp,sp,-16 + c00579d2: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:48 else if (y >= 0 && x < 0) - c0057804: c38d beqz a5,c0057826 + c00579d4: c38d beqz a5,c00579f6 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:48 (discriminator 1) - c0057806: a2f597d3 flt.d a5,fa1,fa5 - c005780a: cf91 beqz a5,c0057826 + c00579d6: a2f597d3 flt.d a5,fa1,fa5 + c00579da: cf91 beqz a5,c00579f6 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:50 { return atan(y / x) + M_PI; - c005780c: 1ab57553 fdiv.d fa0,fa0,fa1 - c0057810: fb3ff0ef jal ra,c00577c2 - c0057814: 0001d797 auipc a5,0x1d - c0057818: 0cc7b787 fld fa5,204(a5) # c00748e0 <_erodata+0x160> - c005781c: 02f57553 fadd.d fa0,fa0,fa5 + c00579dc: 1ab57553 fdiv.d fa0,fa0,fa1 + c00579e0: fb3ff0ef jal ra,c0057992 + c00579e4: 0001d797 auipc a5,0x1d + c00579e8: 15c7b787 fld fa5,348(a5) # c0074b40 <_erodata+0x160> + c00579ec: 02f57553 fadd.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:71 } else /* if (y == 0 && x == 0) Undefined but returns normally 0 */ @@ -247257,55 +247455,55 @@ double atan2(double y, double x) return 0; } } - c0057820: 60a2 ld ra,8(sp) - c0057822: 0141 addi sp,sp,16 - c0057824: 8082 ret + c00579f0: 60a2 ld ra,8(sp) + c00579f2: 0141 addi sp,sp,16 + c00579f4: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:52 else if (y < 0) - c0057826: f20007d3 fmv.d.x fa5,zero - c005782a: a2f517d3 flt.d a5,fa0,fa5 - c005782e: cf99 beqz a5,c005784c + c00579f6: f20007d3 fmv.d.x fa5,zero + c00579fa: a2f517d3 flt.d a5,fa0,fa5 + c00579fe: cf99 beqz a5,c0057a1c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:54 if (x == 0) - c0057830: a2f5a7d3 feq.d a5,fa1,fa5 - c0057834: eb9d bnez a5,c005786a + c0057a00: a2f5a7d3 feq.d a5,fa1,fa5 + c0057a04: eb9d bnez a5,c0057a3a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:60 return atan(y / x) - M_PI; - c0057836: 1ab57553 fdiv.d fa0,fa0,fa1 - c005783a: f89ff0ef jal ra,c00577c2 - c005783e: 0001d797 auipc a5,0x1d - c0057842: 0a27b787 fld fa5,162(a5) # c00748e0 <_erodata+0x160> - c0057846: 0af57553 fsub.d fa0,fa0,fa5 - c005784a: bfd9 j c0057820 + c0057a06: 1ab57553 fdiv.d fa0,fa0,fa1 + c0057a0a: f89ff0ef jal ra,c0057992 + c0057a0e: 0001d797 auipc a5,0x1d + c0057a12: 1327b787 fld fa5,306(a5) # c0074b40 <_erodata+0x160> + c0057a16: 0af57553 fsub.d fa0,fa0,fa5 + c0057a1a: bfd9 j c00579f0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:63 else if (y > 0 && x == 0) - c005784c: a2a797d3 flt.d a5,fa5,fa0 + c0057a1c: a2a797d3 flt.d a5,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:69 return 0; - c0057850: f2000553 fmv.d.x fa0,zero + c0057a20: f2000553 fmv.d.x fa0,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:63 else if (y > 0 && x == 0) - c0057854: d7f1 beqz a5,c0057820 + c0057a24: d7f1 beqz a5,c00579f0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:63 (discriminator 1) - c0057856: a2f5a7d3 feq.d a5,fa1,fa5 + c0057a26: a2f5a7d3 feq.d a5,fa1,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:69 (discriminator 1) return 0; - c005785a: f2000553 fmv.d.x fa0,zero + c0057a2a: f2000553 fmv.d.x fa0,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:63 (discriminator 1) else if (y > 0 && x == 0) - c005785e: d3e9 beqz a5,c0057820 + c0057a2e: d3e9 beqz a5,c00579f0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:65 return M_PI_2; - c0057860: 0001d797 auipc a5,0x1d - c0057864: 0607b507 fld fa0,96(a5) # c00748c0 <_erodata+0x140> - c0057868: bf65 j c0057820 + c0057a30: 0001d797 auipc a5,0x1d + c0057a34: 0f07b507 fld fa0,240(a5) # c0074b20 <_erodata+0x140> + c0057a38: bf65 j c00579f0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atan2.c:56 return -M_PI_2; - c005786a: 0001d797 auipc a5,0x1d - c005786e: 06e7b507 fld fa0,110(a5) # c00748d8 <_erodata+0x158> - c0057872: b77d j c0057820 + c0057a3a: 0001d797 auipc a5,0x1d + c0057a3e: 0fe7b507 fld fa0,254(a5) # c0074b38 <_erodata+0x158> + c0057a42: b77d j c00579f0 -00000000c0057874 : +00000000c0057a44 : cos(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cos.c:44 ****************************************************************************/ @@ -247314,12 +247512,12 @@ cos(): double cos(double x) { return sin(x + M_PI_2); - c0057874: 0001d797 auipc a5,0x1d - c0057878: 04c7b787 fld fa5,76(a5) # c00748c0 <_erodata+0x140> - c005787c: 02f57553 fadd.d fa0,fa0,fa5 - c0057880: ac55 j c0057b34 + c0057a44: 0001d797 auipc a5,0x1d + c0057a48: 0dc7b787 fld fa5,220(a5) # c0074b20 <_erodata+0x140> + c0057a4c: 02f57553 fadd.d fa0,fa0,fa5 + c0057a50: ac55 j c0057d04 -00000000c0057882 : +00000000c0057a52 : cosh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:43 * Public Functions @@ -247328,31 +247526,31 @@ cosh(): #ifdef CONFIG_HAVE_DOUBLE double cosh(double x) { - c0057882: 1141 addi sp,sp,-16 - c0057884: e406 sd ra,8(sp) + c0057a52: 1141 addi sp,sp,-16 + c0057a54: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:44 x = exp(x); - c0057886: 026000ef jal ra,c00578ac + c0057a56: 026000ef jal ra,c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:45 return ((x + (1.0 / x)) / 2.0); - c005788a: 0001d797 auipc a5,0x1d - c005788e: f0e7b787 fld fa5,-242(a5) # c0074798 <_erodata+0x18> - c0057892: 1aa7f7d3 fdiv.d fa5,fa5,fa0 + c0057a5a: 0001d797 auipc a5,0x1d + c0057a5e: f9e7b787 fld fa5,-98(a5) # c00749f8 <_erodata+0x18> + c0057a62: 1aa7f7d3 fdiv.d fa5,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:46 } - c0057896: 60a2 ld ra,8(sp) + c0057a66: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:45 return ((x + (1.0 / x)) / 2.0); - c0057898: 02a7f7d3 fadd.d fa5,fa5,fa0 - c005789c: 0001d797 auipc a5,0x1d - c00578a0: 04c7b507 fld fa0,76(a5) # c00748e8 <_erodata+0x168> + c0057a68: 02a7f7d3 fadd.d fa5,fa5,fa0 + c0057a6c: 0001d797 auipc a5,0x1d + c0057a70: 0dc7b507 fld fa0,220(a5) # c0074b48 <_erodata+0x168> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cosh.c:46 } - c00578a4: 0141 addi sp,sp,16 - c00578a6: 12a7f553 fmul.d fa0,fa5,fa0 - c00578aa: 8082 ret + c0057a74: 0141 addi sp,sp,16 + c0057a76: 12a7f553 fmul.d fa0,fa5,fa0 + c0057a7a: 8082 ret -00000000c00578ac : +00000000c0057a7c : exp(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:81 bool invert; @@ -247361,30 +247559,30 @@ exp(): size_t i; if (x == 0) - c00578ac: f20007d3 fmv.d.x fa5,zero + c0057a7c: f20007d3 fmv.d.x fa5,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:74 { - c00578b0: 1101 addi sp,sp,-32 - c00578b2: a422 fsd fs0,8(sp) + c0057a80: 1101 addi sp,sp,-32 + c0057a82: a422 fsd fs0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:81 if (x == 0) - c00578b4: a2f527d3 feq.d a5,fa0,fa5 + c0057a84: a2f527d3 feq.d a5,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:74 { - c00578b8: ec06 sd ra,24(sp) - c00578ba: e822 sd s0,16(sp) - c00578bc: a026 fsd fs1,0(sp) - c00578be: 0001d717 auipc a4,0x1d - c00578c2: eda73407 fld fs0,-294(a4) # c0074798 <_erodata+0x18> + c0057a88: ec06 sd ra,24(sp) + c0057a8a: e822 sd s0,16(sp) + c0057a8c: a026 fsd fs1,0(sp) + c0057a8e: 0001d717 auipc a4,0x1d + c0057a92: f6a73407 fld fs0,-150(a4) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:81 if (x == 0) - c00578c6: efb9 bnez a5,c0057924 + c0057a96: efb9 bnez a5,c0057af4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:85 { return 1; } else if (x < 0) - c00578c8: a2f517d3 flt.d a5,fa0,fa5 + c0057a98: a2f517d3 flt.d a5,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:92 invert = true; x = -x; @@ -247392,23 +247590,23 @@ exp(): else { invert = false; - c00578cc: 4401 li s0,0 + c0057a9c: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:85 else if (x < 0) - c00578ce: c781 beqz a5,c00578d6 + c0057a9e: c781 beqz a5,c0057aa6 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:88 x = -x; - c00578d0: 22a51553 fneg.d fa0,fa0 + c0057aa0: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:87 invert = true; - c00578d4: 4405 li s0,1 + c0057aa4: 4405 li s0,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:97 } /* Extract integer component */ int_part = (size_t) x; - c00578d6: c2351553 fcvt.lu.d a0,fa0,rtz + c0057aa6: c2351553 fcvt.lu.d a0,fa0,rtz /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:105 x -= (double)int_part; @@ -247416,51 +247614,51 @@ exp(): /* Perform Taylor series approximation with nineteen terms */ value = 0.0; - c00578da: f20004d3 fmv.d.x fs1,zero - c00578de: 0001d797 auipc a5,0x1d - c00578e2: d5278793 addi a5,a5,-686 # c0074630 <_dbl_inv_fact> + c0057aaa: f20004d3 fmv.d.x fs1,zero + c0057aae: 0001d797 auipc a5,0x1d + c0057ab2: de278793 addi a5,a5,-542 # c0074890 <_dbl_inv_fact> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:101 x -= (double)int_part; - c00578e6: d23577d3 fcvt.d.lu fa5,a0 - c00578ea: 0001d717 auipc a4,0x1d - c00578ee: dde70713 addi a4,a4,-546 # c00746c8 <_dbl_inv_fact> - c00578f2: 0af57553 fsub.d fa0,fa0,fa5 + c0057ab6: d23577d3 fcvt.d.lu fa5,a0 + c0057aba: 0001d717 auipc a4,0x1d + c0057abe: e6e70713 addi a4,a4,-402 # c0074928 <_dbl_inv_fact> + c0057ac2: 0af57553 fsub.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:106 x0 = 1.0; - c00578f6: 228407d3 fmv.d fa5,fs0 + c0057ac6: 228407d3 fmv.d fa5,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:109 (discriminator 3) for (i = 0; i < 19; i++) { value += x0 * _dbl_inv_fact[i]; - c00578fa: 2398 fld fa4,0(a5) + c0057aca: 2398 fld fa4,0(a5) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:107 (discriminator 3) for (i = 0; i < 19; i++) - c00578fc: 07a1 addi a5,a5,8 + c0057acc: 07a1 addi a5,a5,8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:109 (discriminator 3) value += x0 * _dbl_inv_fact[i]; - c00578fe: 4af774c3 fmadd.d fs1,fa4,fa5,fs1 + c0057ace: 4af774c3 fmadd.d fs1,fa4,fa5,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:110 (discriminator 3) x0 *= x; - c0057902: 12a7f7d3 fmul.d fa5,fa5,fa0 + c0057ad2: 12a7f7d3 fmul.d fa5,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:107 (discriminator 3) for (i = 0; i < 19; i++) - c0057906: fee79ae3 bne a5,a4,c00578fa + c0057ad6: fee79ae3 bne a5,a4,c0057aca /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:115 } /* Multiply by exp of the integer component */ value *= lib_expi(int_part); - c005790a: 642000ef jal ra,c0057f4c - c005790e: 12957553 fmul.d fa0,fa0,fs1 + c0057ada: 642000ef jal ra,c005811c + c0057ade: 12957553 fmul.d fa0,fa0,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:117 if (invert) - c0057912: c019 beqz s0,c0057918 + c0057ae2: c019 beqz s0,c0057ae8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:119 { return (1.0 / value); - c0057914: 1aa47553 fdiv.d fa0,fs0,fa0 + c0057ae4: 1aa47553 fdiv.d fa0,fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:125 } else @@ -247468,18 +247666,18 @@ exp(): return value; } } - c0057918: 60e2 ld ra,24(sp) - c005791a: 6442 ld s0,16(sp) - c005791c: 2422 fld fs0,8(sp) - c005791e: 2482 fld fs1,0(sp) - c0057920: 6105 addi sp,sp,32 - c0057922: 8082 ret + c0057ae8: 60e2 ld ra,24(sp) + c0057aea: 6442 ld s0,16(sp) + c0057aec: 2422 fld fs0,8(sp) + c0057aee: 2482 fld fs1,0(sp) + c0057af0: 6105 addi sp,sp,32 + c0057af2: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_exp.c:83 return 1; - c0057924: 22840553 fmv.d fa0,fs0 - c0057928: bfc5 j c0057918 + c0057af4: 22840553 fmv.d fa0,fs0 + c0057af8: bfc5 j c0057ae8 -00000000c005792a : +00000000c0057afa : fabs(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fabs.c:44 ****************************************************************************/ @@ -247488,16 +247686,16 @@ fabs(): double fabs(double x) { return ((x < 0) ? -x : x); - c005792a: f20007d3 fmv.d.x fa5,zero - c005792e: a2f517d3 flt.d a5,fa0,fa5 - c0057932: c399 beqz a5,c0057938 + c0057afa: f20007d3 fmv.d.x fa5,zero + c0057afe: a2f517d3 flt.d a5,fa0,fa5 + c0057b02: c399 beqz a5,c0057b08 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fabs.c:44 (discriminator 1) - c0057934: 22a51553 fneg.d fa0,fa0 + c0057b04: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fabs.c:45 (discriminator 4) } - c0057938: 8082 ret + c0057b08: 8082 ret -00000000c005793a : +00000000c0057b0a : fmod(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmod.c:43 * Public Functions @@ -247506,36 +247704,36 @@ fmod(): #ifdef CONFIG_HAVE_DOUBLE double fmod(double x, double div) { - c005793a: 7179 addi sp,sp,-48 - c005793c: ac22 fsd fs0,24(sp) - c005793e: 22a50453 fmv.d fs0,fa0 + c0057b0a: 7179 addi sp,sp,-48 + c0057b0c: ac22 fsd fs0,24(sp) + c0057b0e: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmod.c:46 double n0; modf(x / div, &n0); - c0057942: 1ab57553 fdiv.d fa0,fa0,fa1 - c0057946: 0028 addi a0,sp,8 + c0057b12: 1ab57553 fdiv.d fa0,fa0,fa1 + c0057b16: 0028 addi a0,sp,8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmod.c:43 { - c0057948: a826 fsd fs1,16(sp) - c005794a: f406 sd ra,40(sp) - c005794c: 22b584d3 fmv.d fs1,fa1 + c0057b18: a826 fsd fs1,16(sp) + c0057b1a: f406 sd ra,40(sp) + c0057b1c: 22b584d3 fmv.d fs1,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmod.c:46 modf(x / div, &n0); - c0057950: 146000ef jal ra,c0057a96 + c0057b20: 146000ef jal ra,c0057c66 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmod.c:49 return x - n0 * div; } - c0057954: 2522 fld fa0,8(sp) - c0057956: 70a2 ld ra,40(sp) - c0057958: 4295754b fnmsub.d fa0,fa0,fs1,fs0 - c005795c: 2462 fld fs0,24(sp) - c005795e: 24c2 fld fs1,16(sp) - c0057960: 6145 addi sp,sp,48 - c0057962: 8082 ret + c0057b24: 2522 fld fa0,8(sp) + c0057b26: 70a2 ld ra,40(sp) + c0057b28: 4295754b fnmsub.d fa0,fa0,fs1,fs0 + c0057b2c: 2462 fld fs0,24(sp) + c0057b2e: 24c2 fld fs1,16(sp) + c0057b30: 6145 addi sp,sp,48 + c0057b32: 8082 ret -00000000c0057964 : +00000000c0057b34 : log(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:62 * Name: log @@ -247544,8 +247742,8 @@ log(): #ifdef CONFIG_HAVE_DOUBLE double log(double x) { - c0057964: 711d addi sp,sp,-96 - c0057966: b826 fsd fs1,48(sp) + c0057b34: 711d addi sp,sp,-96 + c0057b36: b826 fsd fs1,48(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:72 double relax_factor; int iter; @@ -247553,41 +247751,41 @@ double log(double x) y = 0.0; y_old = 1.0; epsilon = DBL_EPSILON; - c0057968: 0001d797 auipc a5,0x1d - c005796c: f987b787 fld fa5,-104(a5) # c0074900 <_erodata+0x180> + c0057b38: 0001d797 auipc a5,0x1d + c0057b3c: 0287b787 fld fa5,40(a5) # c0074b60 <_erodata+0x180> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:75 iter = 0; relax_factor = 1.0; - c0057970: 0001d797 auipc a5,0x1d - c0057974: e287b487 fld fs1,-472(a5) # c0074798 <_erodata+0x18> + c0057b40: 0001d797 auipc a5,0x1d + c0057b44: eb87b487 fld fs1,-328(a5) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:62 { - c0057978: bc22 fsd fs0,56(sp) - c005797a: b04e fsd fs3,32(sp) - c005797c: ac52 fsd fs4,24(sp) - c005797e: a856 fsd fs5,16(sp) - c0057980: 22a509d3 fmv.d fs3,fa0 + c0057b48: bc22 fsd fs0,56(sp) + c0057b4a: b04e fsd fs3,32(sp) + c0057b4c: ac52 fsd fs4,24(sp) + c0057b4e: a856 fsd fs5,16(sp) + c0057b50: 22a509d3 fmv.d fs3,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:71 y_old = 1.0; - c0057984: 229486d3 fmv.d fa3,fs1 + c0057b54: 229486d3 fmv.d fa3,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:70 y = 0.0; - c0057988: f2000453 fmv.d.x fs0,zero - c005798c: 22948a53 fmv.d fs4,fs1 - c0057990: 22f78ad3 fmv.d fs5,fa5 + c0057b58: f2000453 fmv.d.x fs0,zero + c0057b5c: 22948a53 fmv.d fs4,fs1 + c0057b60: 22f78ad3 fmv.d fs5,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:62 { - c0057994: e8a2 sd s0,80(sp) - c0057996: e4a6 sd s1,72(sp) - c0057998: b44a fsd fs2,40(sp) - c005799a: a45a fsd fs6,8(sp) - c005799c: ec86 sd ra,88(sp) + c0057b64: e8a2 sd s0,80(sp) + c0057b66: e4a6 sd s1,72(sp) + c0057b68: b44a fsd fs2,40(sp) + c0057b6a: a45a fsd fs6,8(sp) + c0057b6c: ec86 sd ra,88(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:74 iter = 0; - c005799e: 4401 li s0,0 - c00579a0: 0001d797 auipc a5,0x1d - c00579a4: f507b907 fld fs2,-176(a5) # c00748f0 <_erodata+0x170> + c0057b6e: 4401 li s0,0 + c0057b70: 0001d797 auipc a5,0x1d + c0057b74: fe07b907 fld fs2,-32(a5) # c0074b50 <_erodata+0x170> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:88 if (y > DBL_MAX_EXP_X) { @@ -247595,8 +247793,8 @@ double log(double x) } if (y < -DBL_MAX_EXP_X) - c00579a8: 0001d797 auipc a5,0x1d - c00579ac: f507bb07 fld fs6,-176(a5) # c00748f8 <_erodata+0x178> + c0057b78: 0001d797 auipc a5,0x1d + c0057b7c: fe07bb07 fld fs6,-32(a5) # c0074b58 <_erodata+0x178> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:95 y = -DBL_MAX_EXP_X; } @@ -247604,16 +247802,16 @@ double log(double x) epsilon = (fabs(y) > 1.0) ? fabs(y) * DBL_EPSILON : DBL_EPSILON; if (++iter >= LOG_MAX_ITER) - c00579b0: 44a5 li s1,9 + c0057b80: 44a5 li s1,9 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:77 while (y > y_old + epsilon || y < y_old - epsilon) - c00579b2: 02f6f753 fadd.d fa4,fa3,fa5 - c00579b6: a28717d3 flt.d a5,fa4,fs0 - c00579ba: ef8d bnez a5,c00579f4 + c0057b82: 02f6f753 fadd.d fa4,fa3,fa5 + c0057b86: a28717d3 flt.d a5,fa4,fs0 + c0057b8a: ef8d bnez a5,c0057bc4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:77 (discriminator 1) - c00579bc: 0af6f7d3 fsub.d fa5,fa3,fa5 - c00579c0: a2f417d3 flt.d a5,fs0,fa5 - c00579c4: eb85 bnez a5,c00579f4 + c0057b8c: 0af6f7d3 fsub.d fa5,fa3,fa5 + c0057b90: a2f417d3 flt.d a5,fs0,fa5 + c0057b94: eb85 bnez a5,c0057bc4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:107 { epsilon *= relax_factor; @@ -247621,14 +247819,14 @@ double log(double x) } if (y == DBL_MAX_EXP_X) - c00579c6: a32427d3 feq.d a5,fs0,fs2 - c00579ca: c7c1 beqz a5,c0057a52 + c0057b96: a32427d3 feq.d a5,fs0,fs2 + c0057b9a: c7c1 beqz a5,c0057c22 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:109 { return INFINITY; - c00579cc: 0001d797 auipc a5,0x1d - c00579d0: dbc7b407 fld fs0,-580(a5) # c0074788 <_erodata+0x8> - c00579d4: 12847453 fmul.d fs0,fs0,fs0 + c0057b9c: 0001d797 auipc a5,0x1d + c0057ba0: e4c7b407 fld fs0,-436(a5) # c00749e8 <_erodata+0x8> + c0057ba4: 12847453 fmul.d fs0,fs0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:118 { return INFINITY; @@ -247636,85 +247834,85 @@ double log(double x) return y; } - c00579d8: 60e6 ld ra,88(sp) - c00579da: 6446 ld s0,80(sp) - c00579dc: 22840553 fmv.d fa0,fs0 - c00579e0: 64a6 ld s1,72(sp) - c00579e2: 3462 fld fs0,56(sp) - c00579e4: 34c2 fld fs1,48(sp) - c00579e6: 3922 fld fs2,40(sp) - c00579e8: 3982 fld fs3,32(sp) - c00579ea: 2a62 fld fs4,24(sp) - c00579ec: 2ac2 fld fs5,16(sp) - c00579ee: 2b22 fld fs6,8(sp) - c00579f0: 6125 addi sp,sp,96 - c00579f2: 8082 ret + c0057ba8: 60e6 ld ra,88(sp) + c0057baa: 6446 ld s0,80(sp) + c0057bac: 22840553 fmv.d fa0,fs0 + c0057bb0: 64a6 ld s1,72(sp) + c0057bb2: 3462 fld fs0,56(sp) + c0057bb4: 34c2 fld fs1,48(sp) + c0057bb6: 3922 fld fs2,40(sp) + c0057bb8: 3982 fld fs3,32(sp) + c0057bba: 2a62 fld fs4,24(sp) + c0057bbc: 2ac2 fld fs5,16(sp) + c0057bbe: 2b22 fld fs6,8(sp) + c0057bc0: 6125 addi sp,sp,96 + c0057bc2: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:80 ey = exp(y); - c00579f4: 22840553 fmv.d fa0,fs0 - c00579f8: eb5ff0ef jal ra,c00578ac + c0057bc4: 22840553 fmv.d fa0,fs0 + c0057bc8: eb5ff0ef jal ra,c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:81 y -= (ey - x) / ey; - c00579fc: 0b357753 fsub.d fa4,fa0,fs3 - c0057a00: 1aa77753 fdiv.d fa4,fa4,fa0 - c0057a04: 0ae47753 fsub.d fa4,fs0,fa4 + c0057bcc: 0b357753 fsub.d fa4,fa0,fs3 + c0057bd0: 1aa77753 fdiv.d fa4,fa4,fa0 + c0057bd4: 0ae47753 fsub.d fa4,fs0,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:83 if (y > DBL_MAX_EXP_X) - c0057a08: a2e917d3 flt.d a5,fs2,fa4 - c0057a0c: ef8d bnez a5,c0057a46 + c0057bd8: a2e917d3 flt.d a5,fs2,fa4 + c0057bdc: ef8d bnez a5,c0057c16 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:88 if (y < -DBL_MAX_EXP_X) - c0057a0e: a36717d3 flt.d a5,fa4,fs6 - c0057a12: c399 beqz a5,c0057a18 + c0057bde: a36717d3 flt.d a5,fa4,fs6 + c0057be2: c399 beqz a5,c0057be8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:90 y = -DBL_MAX_EXP_X; - c0057a14: 236b0753 fmv.d fa4,fs6 + c0057be4: 236b0753 fmv.d fa4,fs6 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:93 epsilon = (fabs(y) > 1.0) ? fabs(y) * DBL_EPSILON : DBL_EPSILON; - c0057a18: 22e727d3 fabs.d fa5,fa4 - c0057a1c: a2fa17d3 flt.d a5,fs4,fa5 - c0057a20: c795 beqz a5,c0057a4c + c0057be8: 22e727d3 fabs.d fa5,fa4 + c0057bec: a2fa17d3 flt.d a5,fs4,fa5 + c0057bf0: c795 beqz a5,c0057c1c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:93 (discriminator 1) - c0057a22: 1357f7d3 fmul.d fa5,fa5,fs5 + c0057bf2: 1357f7d3 fmul.d fa5,fa5,fs5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:95 (discriminator 4) if (++iter >= LOG_MAX_ITER) - c0057a26: 2405 addiw s0,s0,1 - c0057a28: 0084d563 bge s1,s0,c0057a32 + c0057bf6: 2405 addiw s0,s0,1 + c0057bf8: 0084d563 bge s1,s0,c0057c02 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:97 relax_factor *= LOG_RELAX_MULTIPLIER; - c0057a2c: 0294f4d3 fadd.d fs1,fs1,fs1 + c0057bfc: 0294f4d3 fadd.d fs1,fs1,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:98 iter = 0; - c0057a30: 4401 li s0,0 + c0057c00: 4401 li s0,0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:101 if (relax_factor > 1.0) - c0057a32: a29a17d3 flt.d a5,fs4,fs1 - c0057a36: c399 beqz a5,c0057a3c + c0057c02: a29a17d3 flt.d a5,fs4,fs1 + c0057c06: c399 beqz a5,c0057c0c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:103 epsilon *= relax_factor; - c0057a38: 1297f7d3 fmul.d fa5,fa5,fs1 + c0057c08: 1297f7d3 fmul.d fa5,fa5,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:98 iter = 0; - c0057a3c: 228406d3 fmv.d fa3,fs0 - c0057a40: 22e70453 fmv.d fs0,fa4 - c0057a44: b7bd j c00579b2 + c0057c0c: 228406d3 fmv.d fa3,fs0 + c0057c10: 22e70453 fmv.d fs0,fa4 + c0057c14: b7bd j c0057b82 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:85 y = DBL_MAX_EXP_X; - c0057a46: 23290753 fmv.d fa4,fs2 - c0057a4a: b7f9 j c0057a18 + c0057c16: 23290753 fmv.d fa4,fs2 + c0057c1a: b7f9 j c0057be8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:93 epsilon = (fabs(y) > 1.0) ? fabs(y) * DBL_EPSILON : DBL_EPSILON; - c0057a4c: 235a87d3 fmv.d fa5,fs5 - c0057a50: bfd9 j c0057a26 + c0057c1c: 235a87d3 fmv.d fa5,fs5 + c0057c20: bfd9 j c0057bf6 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log.c:112 if (y == -DBL_MAX_EXP_X) - c0057a52: 0001d797 auipc a5,0x1d - c0057a56: ea67b787 fld fa5,-346(a5) # c00748f8 <_erodata+0x178> - c0057a5a: a2f427d3 feq.d a5,fs0,fa5 - c0057a5e: dfad beqz a5,c00579d8 - c0057a60: b7b5 j c00579cc + c0057c22: 0001d797 auipc a5,0x1d + c0057c26: f367b787 fld fa5,-202(a5) # c0074b58 <_erodata+0x178> + c0057c2a: a2f427d3 feq.d a5,fs0,fa5 + c0057c2e: dfad beqz a5,c0057ba8 + c0057c30: b7b5 j c0057b9c -00000000c0057a62 : +00000000c0057c32 : log10(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log10.c:43 * Public Functions @@ -247723,25 +247921,25 @@ log10(): #ifdef CONFIG_HAVE_DOUBLE double log10(double x) { - c0057a62: 1141 addi sp,sp,-16 - c0057a64: e406 sd ra,8(sp) + c0057c32: 1141 addi sp,sp,-16 + c0057c34: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log10.c:44 return (log(x) / M_LN10); - c0057a66: effff0ef jal ra,c0057964 + c0057c36: effff0ef jal ra,c0057b34 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log10.c:45 } - c0057a6a: 60a2 ld ra,8(sp) + c0057c3a: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log10.c:44 return (log(x) / M_LN10); - c0057a6c: 0001d797 auipc a5,0x1d - c0057a70: e9c7b787 fld fa5,-356(a5) # c0074908 <_erodata+0x188> + c0057c3c: 0001d797 auipc a5,0x1d + c0057c40: f2c7b787 fld fa5,-212(a5) # c0074b68 <_erodata+0x188> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log10.c:45 } - c0057a74: 1af57553 fdiv.d fa0,fa0,fa5 - c0057a78: 0141 addi sp,sp,16 - c0057a7a: 8082 ret + c0057c44: 1af57553 fdiv.d fa0,fa0,fa5 + c0057c48: 0141 addi sp,sp,16 + c0057c4a: 8082 ret -00000000c0057a7c : +00000000c0057c4c : log2(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log2.c:43 * Public Functions @@ -247750,25 +247948,25 @@ log2(): #ifdef CONFIG_HAVE_DOUBLE double log2(double x) { - c0057a7c: 1141 addi sp,sp,-16 - c0057a7e: e406 sd ra,8(sp) + c0057c4c: 1141 addi sp,sp,-16 + c0057c4e: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log2.c:44 return (log(x) / M_LN2); - c0057a80: ee5ff0ef jal ra,c0057964 + c0057c50: ee5ff0ef jal ra,c0057b34 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log2.c:45 } - c0057a84: 60a2 ld ra,8(sp) + c0057c54: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log2.c:44 return (log(x) / M_LN2); - c0057a86: 0001d797 auipc a5,0x1d - c0057a8a: e8a7b787 fld fa5,-374(a5) # c0074910 <_erodata+0x190> + c0057c56: 0001d797 auipc a5,0x1d + c0057c5a: f1a7b787 fld fa5,-230(a5) # c0074b70 <_erodata+0x190> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_log2.c:45 } - c0057a8e: 1af57553 fdiv.d fa0,fa0,fa5 - c0057a92: 0141 addi sp,sp,16 - c0057a94: 8082 ret + c0057c5e: 1af57553 fdiv.d fa0,fa0,fa5 + c0057c62: 0141 addi sp,sp,16 + c0057c64: 8082 ret -00000000c0057a96 : +00000000c0057c66 : modf(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:42 ****************************************************************************/ @@ -247777,52 +247975,52 @@ modf(): double modf(double x, double *iptr) { if (fabs(x) >= 4503599627370496.0) - c0057a96: 22a527d3 fabs.d fa5,fa0 - c0057a9a: 0001d797 auipc a5,0x1d - c0057a9e: e7e7b707 fld fa4,-386(a5) # c0074918 <_erodata+0x198> - c0057aa2: a2f707d3 fle.d a5,fa4,fa5 - c0057aa6: c789 beqz a5,c0057ab0 + c0057c66: 22a527d3 fabs.d fa5,fa0 + c0057c6a: 0001d797 auipc a5,0x1d + c0057c6e: f0e7b707 fld fa4,-242(a5) # c0074b78 <_erodata+0x198> + c0057c72: a2f707d3 fle.d a5,fa4,fa5 + c0057c76: c789 beqz a5,c0057c80 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:44 { *iptr = x; - c0057aa8: a108 fsd fa0,0(a0) + c0057c78: a108 fsd fa0,0(a0) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:45 return 0.0; - c0057aaa: f2000553 fmv.d.x fa0,zero - c0057aae: 8082 ret + c0057c7a: f2000553 fmv.d.x fa0,zero + c0057c7e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:47 } else if (fabs(x) < 1.0) - c0057ab0: 0001d797 auipc a5,0x1d - c0057ab4: ce87b707 fld fa4,-792(a5) # c0074798 <_erodata+0x18> - c0057ab8: a2e797d3 flt.d a5,fa5,fa4 - c0057abc: c781 beqz a5,c0057ac4 + c0057c80: 0001d797 auipc a5,0x1d + c0057c84: d787b707 fld fa4,-648(a5) # c00749f8 <_erodata+0x18> + c0057c88: a2e797d3 flt.d a5,fa5,fa4 + c0057c8c: c781 beqz a5,c0057c94 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:49 { *iptr = 0.0; - c0057abe: 00053023 sd zero,0(a0) + c0057c8e: 00053023 sd zero,0(a0) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:50 return x; - c0057ac2: 8082 ret + c0057c92: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:54 } else { *iptr = (double)(int64_t)x; - c0057ac4: c22517d3 fcvt.l.d a5,fa0,rtz - c0057ac8: d227f7d3 fcvt.d.l fa5,a5 + c0057c94: c22517d3 fcvt.l.d a5,fa0,rtz + c0057c98: d227f7d3 fcvt.d.l fa5,a5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:55 return (x - *iptr); - c0057acc: 0af57553 fsub.d fa0,fa0,fa5 + c0057c9c: 0af57553 fsub.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:54 *iptr = (double)(int64_t)x; - c0057ad0: a11c fsd fa5,0(a0) + c0057ca0: a11c fsd fa5,0(a0) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_modf.c:57 } } - c0057ad2: 8082 ret + c0057ca2: 8082 ret -00000000c0057ad4 : +00000000c0057ca4 : pow(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:44 ****************************************************************************/ @@ -247831,21 +248029,21 @@ pow(): double pow(double b, double e) { if (b > 0) - c0057ad4: f2000753 fmv.d.x fa4,zero + c0057ca4: f2000753 fmv.d.x fa4,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:43 { - c0057ad8: 1101 addi sp,sp,-32 - c0057ada: a422 fsd fs0,8(sp) + c0057ca8: 1101 addi sp,sp,-32 + c0057caa: a422 fsd fs0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:44 if (b > 0) - c0057adc: a2a717d3 flt.d a5,fa4,fa0 + c0057cac: a2a717d3 flt.d a5,fa4,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:43 { - c0057ae0: ec06 sd ra,24(sp) - c0057ae2: 22b58453 fmv.d fs0,fa1 + c0057cb0: ec06 sd ra,24(sp) + c0057cb2: 22b58453 fmv.d fs0,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:44 if (b > 0) - c0057ae6: cb91 beqz a5,c0057afa + c0057cb6: cb91 beqz a5,c0057cca /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:52 } else if (b < 0 && e == (int)e) @@ -247853,8 +248051,8 @@ double pow(double b, double e) if ((int)e % 2 == 0) { return exp(e * log(fabs(b))); - c0057ae8: e7dff0ef jal ra,c0057964 - c0057aec: 12857553 fmul.d fa0,fa0,fs0 + c0057cb8: e7dff0ef jal ra,c0057b34 + c0057cbc: 12857553 fmul.d fa0,fa0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:61 return -exp(e * log(fabs(b))); } @@ -247862,48 +248060,48 @@ double pow(double b, double e) return 0; } - c0057af0: 60e2 ld ra,24(sp) - c0057af2: 2422 fld fs0,8(sp) - c0057af4: 6105 addi sp,sp,32 + c0057cc0: 60e2 ld ra,24(sp) + c0057cc2: 2422 fld fs0,8(sp) + c0057cc4: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:52 return exp(e * log(fabs(b))); - c0057af6: db7ff06f j c00578ac + c0057cc6: db7ff06f j c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:48 else if (b < 0 && e == (int)e) - c0057afa: a2e517d3 flt.d a5,fa0,fa4 - c0057afe: cb85 beqz a5,c0057b2e + c0057cca: a2e517d3 flt.d a5,fa0,fa4 + c0057cce: cb85 beqz a5,c0057cfe /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:48 (discriminator 1) - c0057b00: c20597d3 fcvt.w.d a5,fa1,rtz - c0057b04: d2078753 fcvt.d.w fa4,a5 - c0057b08: a2b72753 feq.d a4,fa4,fa1 - c0057b0c: c30d beqz a4,c0057b2e + c0057cd0: c20597d3 fcvt.w.d a5,fa1,rtz + c0057cd4: d2078753 fcvt.d.w fa4,a5 + c0057cd8: a2b72753 feq.d a4,fa4,fa1 + c0057cdc: c30d beqz a4,c0057cfe /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:50 if ((int)e % 2 == 0) - c0057b0e: 8b85 andi a5,a5,1 + c0057cde: 8b85 andi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:52 return exp(e * log(fabs(b))); - c0057b10: 22a52553 fabs.d fa0,fa0 + c0057ce0: 22a52553 fabs.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:50 if ((int)e % 2 == 0) - c0057b14: dbf1 beqz a5,c0057ae8 + c0057ce4: dbf1 beqz a5,c0057cb8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:56 return -exp(e * log(fabs(b))); - c0057b16: e4fff0ef jal ra,c0057964 - c0057b1a: 12857553 fmul.d fa0,fa0,fs0 - c0057b1e: d8fff0ef jal ra,c00578ac - c0057b22: 22a51553 fneg.d fa0,fa0 + c0057ce6: e4fff0ef jal ra,c0057b34 + c0057cea: 12857553 fmul.d fa0,fa0,fs0 + c0057cee: d8fff0ef jal ra,c0057a7c + c0057cf2: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:61 } - c0057b26: 60e2 ld ra,24(sp) - c0057b28: 2422 fld fs0,8(sp) - c0057b2a: 6105 addi sp,sp,32 - c0057b2c: 8082 ret + c0057cf6: 60e2 ld ra,24(sp) + c0057cf8: 2422 fld fs0,8(sp) + c0057cfa: 6105 addi sp,sp,32 + c0057cfc: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_pow.c:60 return 0; - c0057b2e: f2000553 fmv.d.x fa0,zero - c0057b32: bfd5 j c0057b26 + c0057cfe: f2000553 fmv.d.x fa0,zero + c0057d02: bfd5 j c0057cf6 -00000000c0057b34 : +00000000c0057d04 : sin(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:70 double sin_x; @@ -247912,109 +248110,109 @@ sin(): /* Move x to [-pi, pi) */ x = fmod(x, 2 * M_PI); - c0057b34: 0001d797 auipc a5,0x1d - c0057b38: dec7b587 fld fa1,-532(a5) # c0074920 <_erodata+0x1a0> + c0057d04: 0001d797 auipc a5,0x1d + c0057d08: e7c7b587 fld fa1,-388(a5) # c0074b80 <_erodata+0x1a0> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:63 { - c0057b3c: 1141 addi sp,sp,-16 - c0057b3e: e406 sd ra,8(sp) + c0057d0c: 1141 addi sp,sp,-16 + c0057d0e: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:70 x = fmod(x, 2 * M_PI); - c0057b40: dfbff0ef jal ra,c005793a + c0057d10: dfbff0ef jal ra,c0057b0a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:71 if (x >= M_PI) - c0057b44: 0001d797 auipc a5,0x1d - c0057b48: d9c7b687 fld fa3,-612(a5) # c00748e0 <_erodata+0x160> - c0057b4c: a2a687d3 fle.d a5,fa3,fa0 - c0057b50: 0001d717 auipc a4,0x1d - c0057b54: dd070713 addi a4,a4,-560 # c0074920 <_erodata+0x1a0> + c0057d14: 0001d797 auipc a5,0x1d + c0057d18: e2c7b687 fld fa3,-468(a5) # c0074b40 <_erodata+0x160> + c0057d1c: a2a687d3 fle.d a5,fa3,fa0 + c0057d20: 0001d717 auipc a4,0x1d + c0057d24: e6070713 addi a4,a4,-416 # c0074b80 <_erodata+0x1a0> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:70 x = fmod(x, 2 * M_PI); - c0057b58: 22a507d3 fmv.d fa5,fa0 + c0057d28: 22a507d3 fmv.d fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:71 if (x >= M_PI) - c0057b5c: 230c fld fa1,0(a4) - c0057b5e: c399 beqz a5,c0057b64 + c0057d2c: 230c fld fa1,0(a4) + c0057d2e: c399 beqz a5,c0057d34 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:73 { x -= 2 * M_PI; - c0057b60: 0ab577d3 fsub.d fa5,fa0,fa1 + c0057d30: 0ab577d3 fsub.d fa5,fa0,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:76 } if (x < -M_PI) - c0057b64: 0001d797 auipc a5,0x1d - c0057b68: dc47b707 fld fa4,-572(a5) # c0074928 <_erodata+0x1a8> - c0057b6c: a2e797d3 flt.d a5,fa5,fa4 - c0057b70: c399 beqz a5,c0057b76 + c0057d34: 0001d797 auipc a5,0x1d + c0057d38: e547b707 fld fa4,-428(a5) # c0074b88 <_erodata+0x1a8> + c0057d3c: a2e797d3 flt.d a5,fa5,fa4 + c0057d40: c399 beqz a5,c0057d46 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:78 { x += 2 * M_PI; - c0057b72: 02b7f7d3 fadd.d fa5,fa5,fa1 + c0057d42: 02b7f7d3 fadd.d fa5,fa5,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:83 } /* Move x to [-pi/2, pi/2) */ if (x >= M_PI_2) - c0057b76: 0001d797 auipc a5,0x1d - c0057b7a: d4a7b607 fld fa2,-694(a5) # c00748c0 <_erodata+0x140> - c0057b7e: a2f607d3 fle.d a5,fa2,fa5 - c0057b82: c399 beqz a5,c0057b88 + c0057d46: 0001d797 auipc a5,0x1d + c0057d4a: dda7b607 fld fa2,-550(a5) # c0074b20 <_erodata+0x140> + c0057d4e: a2f607d3 fle.d a5,fa2,fa5 + c0057d52: c399 beqz a5,c0057d58 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:85 { x = M_PI - x; - c0057b84: 0af6f7d3 fsub.d fa5,fa3,fa5 + c0057d54: 0af6f7d3 fsub.d fa5,fa3,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:88 } if (x < -M_PI_2) - c0057b88: 0001d797 auipc a5,0x1d - c0057b8c: d507b687 fld fa3,-688(a5) # c00748d8 <_erodata+0x158> - c0057b90: a2d797d3 flt.d a5,fa5,fa3 - c0057b94: c399 beqz a5,c0057b9a + c0057d58: 0001d797 auipc a5,0x1d + c0057d5c: de07b687 fld fa3,-544(a5) # c0074b38 <_erodata+0x158> + c0057d60: a2d797d3 flt.d a5,fa5,fa3 + c0057d64: c399 beqz a5,c0057d6a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:90 { x = -M_PI - x; - c0057b96: 0af777d3 fsub.d fa5,fa4,fa5 + c0057d66: 0af777d3 fsub.d fa5,fa4,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:93 } x_squared = x * x; - c0057b9a: 12f7f6d3 fmul.d fa3,fa5,fa5 + c0057d6a: 12f7f6d3 fmul.d fa3,fa5,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:94 sin_x = 0.0; - c0057b9e: f2000553 fmv.d.x fa0,zero - c0057ba2: 0001d717 auipc a4,0x1d - c0057ba6: b2670713 addi a4,a4,-1242 # c00746c8 <_dbl_inv_fact> + c0057d6e: f2000553 fmv.d.x fa0,zero + c0057d72: 0001d717 auipc a4,0x1d + c0057d76: bb670713 addi a4,a4,-1098 # c0074928 <_dbl_inv_fact> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:98 /* Perform Taylor series approximation for sin(x) with ten terms */ for (i = 0; i < 10; i++) - c0057baa: 4781 li a5,0 - c0057bac: 46a9 li a3,10 + c0057d7a: 4781 li a5,0 + c0057d7c: 46a9 li a3,10 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:102 { if (i % 2 == 0) { sin_x += x * _dbl_inv_fact[i]; - c0057bae: 2318 fld fa4,0(a4) + c0057d7e: 2318 fld fa4,0(a4) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:100 if (i % 2 == 0) - c0057bb0: 0017f613 andi a2,a5,1 + c0057d80: 0017f613 andi a2,a5,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:102 sin_x += x * _dbl_inv_fact[i]; - c0057bb4: 12e7f753 fmul.d fa4,fa5,fa4 + c0057d84: 12e7f753 fmul.d fa4,fa5,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:100 if (i % 2 == 0) - c0057bb8: ee01 bnez a2,c0057bd0 + c0057d88: ee01 bnez a2,c0057da0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:102 sin_x += x * _dbl_inv_fact[i]; - c0057bba: 02e57553 fadd.d fa0,fa0,fa4 + c0057d8a: 02e57553 fadd.d fa0,fa0,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:98 (discriminator 2) for (i = 0; i < 10; i++) - c0057bbe: 0785 addi a5,a5,1 + c0057d8e: 0785 addi a5,a5,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:109 (discriminator 2) else { @@ -248022,25 +248220,25 @@ sin(): } x *= x_squared; - c0057bc0: 12d7f7d3 fmul.d fa5,fa5,fa3 + c0057d90: 12d7f7d3 fmul.d fa5,fa5,fa3 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:98 (discriminator 2) for (i = 0; i < 10; i++) - c0057bc4: 0721 addi a4,a4,8 - c0057bc6: fed794e3 bne a5,a3,c0057bae + c0057d94: 0721 addi a4,a4,8 + c0057d96: fed794e3 bne a5,a3,c0057d7e /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:113 } return sin_x; } - c0057bca: 60a2 ld ra,8(sp) - c0057bcc: 0141 addi sp,sp,16 - c0057bce: 8082 ret + c0057d9a: 60a2 ld ra,8(sp) + c0057d9c: 0141 addi sp,sp,16 + c0057d9e: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sin.c:106 sin_x -= x * _dbl_inv_fact[i]; - c0057bd0: 0ae57553 fsub.d fa0,fa0,fa4 - c0057bd4: b7ed j c0057bbe + c0057da0: 0ae57553 fsub.d fa0,fa0,fa4 + c0057da4: b7ed j c0057d8e -00000000c0057bd6 : +00000000c0057da6 : sinh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:47 double sinh(double x) @@ -248049,37 +248247,37 @@ double sinh(double x) double z; if (fabs(x) < 1E-5) - c0057bd6: 22a526d3 fabs.d fa3,fa0 - c0057bda: 0001d797 auipc a5,0x1d - c0057bde: d567b707 fld fa4,-682(a5) # c0074930 <_erodata+0x1b0> + c0057da6: 22a526d3 fabs.d fa3,fa0 + c0057daa: 0001d797 auipc a5,0x1d + c0057dae: de67b707 fld fa4,-538(a5) # c0074b90 <_erodata+0x1b0> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:43 { - c0057be2: 1101 addi sp,sp,-32 + c0057db2: 1101 addi sp,sp,-32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:47 if (fabs(x) < 1E-5) - c0057be4: a2e697d3 flt.d a5,fa3,fa4 + c0057db4: a2e697d3 flt.d a5,fa3,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:43 { - c0057be8: a422 fsd fs0,8(sp) - c0057bea: ec06 sd ra,24(sp) - c0057bec: 0001d717 auipc a4,0x1d - c0057bf0: bac73407 fld fs0,-1108(a4) # c0074798 <_erodata+0x18> + c0057db8: a422 fsd fs0,8(sp) + c0057dba: ec06 sd ra,24(sp) + c0057dbc: 0001d717 auipc a4,0x1d + c0057dc0: c3c73407 fld fs0,-964(a4) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:47 if (fabs(x) < 1E-5) - c0057bf4: c39d beqz a5,c0057c1a - c0057bf6: 22a507d3 fmv.d fa5,fa0 + c0057dc4: c39d beqz a5,c0057dea + c0057dc6: 22a507d3 fmv.d fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:51 { /* x + 1/3! * x^3 + 1/5! * x^5 + 1/7! * x^7 + ... */ z = x * x; - c0057bfa: 12a57553 fmul.d fa0,fa0,fa0 + c0057dca: 12a57553 fmul.d fa0,fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:52 y = x * (1.0 + z / 6.0); - c0057bfe: 0001d797 auipc a5,0x1d - c0057c02: d3a7b707 fld fa4,-710(a5) # c0074938 <_erodata+0x1b8> - c0057c06: 1ae57553 fdiv.d fa0,fa0,fa4 - c0057c0a: 02857553 fadd.d fa0,fa0,fs0 + c0057dce: 0001d797 auipc a5,0x1d + c0057dd2: dca7b707 fld fa4,-566(a5) # c0074b98 <_erodata+0x1b8> + c0057dd6: 1ae57553 fdiv.d fa0,fa0,fa4 + c0057dda: 02857553 fadd.d fa0,fa0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:61 z = exp(x); y = (z - 1.0 / z) / 2.0; @@ -248087,27 +248285,27 @@ double sinh(double x) return y; } - c0057c0e: 60e2 ld ra,24(sp) - c0057c10: 2422 fld fs0,8(sp) + c0057dde: 60e2 ld ra,24(sp) + c0057de0: 2422 fld fs0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:57 y = (z - 1.0 / z) / 2.0; - c0057c12: 12f57553 fmul.d fa0,fa0,fa5 + c0057de2: 12f57553 fmul.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:61 } - c0057c16: 6105 addi sp,sp,32 - c0057c18: 8082 ret + c0057de6: 6105 addi sp,sp,32 + c0057de8: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:56 z = exp(x); - c0057c1a: c93ff0ef jal ra,c00578ac + c0057dea: c93ff0ef jal ra,c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sinh.c:57 y = (z - 1.0 / z) / 2.0; - c0057c1e: 1aa47453 fdiv.d fs0,fs0,fa0 - c0057c22: 0001d797 auipc a5,0x1d - c0057c26: cc67b787 fld fa5,-826(a5) # c00748e8 <_erodata+0x168> - c0057c2a: 0a857553 fsub.d fa0,fa0,fs0 - c0057c2e: b7c5 j c0057c0e + c0057dee: 1aa47453 fdiv.d fs0,fs0,fa0 + c0057df2: 0001d797 auipc a5,0x1d + c0057df6: d567b787 fld fa5,-682(a5) # c0074b48 <_erodata+0x168> + c0057dfa: 0a857553 fsub.d fa0,fa0,fs0 + c0057dfe: b7c5 j c0057dde -00000000c0057c30 : +00000000c0057e00 : sqrt(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:46 * Public Functions @@ -248116,50 +248314,50 @@ sqrt(): #ifdef CONFIG_HAVE_DOUBLE double sqrt(double x) { - c0057c30: 7159 addi sp,sp,-112 - c0057c32: ac4a fsd fs2,24(sp) + c0057e00: 7159 addi sp,sp,-112 + c0057e02: ac4a fsd fs2,24(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:50 long double y; long double y1; if (x < 0.0) - c0057c34: f2000953 fmv.d.x fs2,zero + c0057e04: f2000953 fmv.d.x fs2,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:46 { - c0057c38: b422 fsd fs0,40(sp) - c0057c3a: f486 sd ra,104(sp) + c0057e08: b422 fsd fs0,40(sp) + c0057e0a: f486 sd ra,104(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:50 if (x < 0.0) - c0057c3c: a32517d3 flt.d a5,fa0,fs2 + c0057e0c: a32517d3 flt.d a5,fa0,fs2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:46 { - c0057c40: f0a2 sd s0,96(sp) - c0057c42: eca6 sd s1,88(sp) - c0057c44: e8ca sd s2,80(sp) - c0057c46: e4ce sd s3,72(sp) - c0057c48: e0d2 sd s4,64(sp) - c0057c4a: fc56 sd s5,56(sp) - c0057c4c: f85a sd s6,48(sp) - c0057c4e: b026 fsd fs1,32(sp) - c0057c50: 0001d717 auipc a4,0x1d - c0057c54: b3873407 fld fs0,-1224(a4) # c0074788 <_erodata+0x8> + c0057e10: f0a2 sd s0,96(sp) + c0057e12: eca6 sd s1,88(sp) + c0057e14: e8ca sd s2,80(sp) + c0057e16: e4ce sd s3,72(sp) + c0057e18: e0d2 sd s4,64(sp) + c0057e1a: fc56 sd s5,56(sp) + c0057e1c: f85a sd s6,48(sp) + c0057e1e: b026 fsd fs1,32(sp) + c0057e20: 0001d717 auipc a4,0x1d + c0057e24: bc873407 fld fs0,-1080(a4) # c00749e8 <_erodata+0x8> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:50 if (x < 0.0) - c0057c58: c79d beqz a5,c0057c86 + c0057e28: c79d beqz a5,c0057e56 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:52 { set_errno(EDOM); - c0057c5a: e7bfb0ef jal ra,c0053ad4 <__errno> + c0057e2a: e7bfb0ef jal ra,c0053ca4 <__errno> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:53 return NAN; - c0057c5e: 12847453 fmul.d fs0,fs0,fs0 + c0057e2e: 12847453 fmul.d fs0,fs0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:52 set_errno(EDOM); - c0057c62: 02100793 li a5,33 - c0057c66: c11c sw a5,0(a0) + c0057e32: 02100793 li a5,33 + c0057e36: c11c sw a5,0(a0) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:53 return NAN; - c0057c68: 13247553 fmul.d fa0,fs0,fs2 + c0057e38: 13247553 fmul.d fa0,fs0,fs2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:99 y = 0.5 * (y + x / y); } @@ -248167,190 +248365,190 @@ double sqrt(double x) return y; } - c0057c6c: 70a6 ld ra,104(sp) - c0057c6e: 7406 ld s0,96(sp) - c0057c70: 64e6 ld s1,88(sp) - c0057c72: 6946 ld s2,80(sp) - c0057c74: 69a6 ld s3,72(sp) - c0057c76: 6a06 ld s4,64(sp) - c0057c78: 7ae2 ld s5,56(sp) - c0057c7a: 7b42 ld s6,48(sp) - c0057c7c: 3422 fld fs0,40(sp) - c0057c7e: 3482 fld fs1,32(sp) - c0057c80: 2962 fld fs2,24(sp) - c0057c82: 6165 addi sp,sp,112 - c0057c84: 8082 ret - c0057c86: 22a504d3 fmv.d fs1,fa0 + c0057e3c: 70a6 ld ra,104(sp) + c0057e3e: 7406 ld s0,96(sp) + c0057e40: 64e6 ld s1,88(sp) + c0057e42: 6946 ld s2,80(sp) + c0057e44: 69a6 ld s3,72(sp) + c0057e46: 6a06 ld s4,64(sp) + c0057e48: 7ae2 ld s5,56(sp) + c0057e4a: 7b42 ld s6,48(sp) + c0057e4c: 3422 fld fs0,40(sp) + c0057e4e: 3482 fld fs1,32(sp) + c0057e50: 2962 fld fs2,24(sp) + c0057e52: 6165 addi sp,sp,112 + c0057e54: 8082 ret + c0057e56: 22a504d3 fmv.d fs1,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:58 return NAN; - c0057c8a: 12847553 fmul.d fa0,fs0,fs0 + c0057e5a: 12847553 fmul.d fa0,fs0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:56 if (isnan(x)) - c0057c8e: a294a7d3 feq.d a5,fs1,fs1 - c0057c92: e781 bnez a5,c0057c9a + c0057e5e: a294a7d3 feq.d a5,fs1,fs1 + c0057e62: e781 bnez a5,c0057e6a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:58 return NAN; - c0057c94: 13257553 fmul.d fa0,fa0,fs2 - c0057c98: bfd1 j c0057c6c + c0057e64: 13257553 fmul.d fa0,fa0,fs2 + c0057e68: bfd1 j c0057e3c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:61 if (isinf(x)) - c0057c9a: a29527d3 feq.d a5,fa0,fs1 - c0057c9e: f7f9 bnez a5,c0057c6c + c0057e6a: a29527d3 feq.d a5,fa0,fs1 + c0057e6e: f7f9 bnez a5,c0057e3c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:61 (discriminator 1) - c0057ca0: 22a517d3 fneg.d fa5,fa0 - c0057ca4: a297a7d3 feq.d a5,fa5,fs1 - c0057ca8: f3f1 bnez a5,c0057c6c + c0057e70: 22a517d3 fneg.d fa5,fa0 + c0057e74: a297a7d3 feq.d a5,fa5,fs1 + c0057e78: f3f1 bnez a5,c0057e3c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:66 if (x == 0.0) - c0057caa: a324a7d3 feq.d a5,fs1,fs2 + c0057e7a: a324a7d3 feq.d a5,fs1,fs2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:68 return 0.0; - c0057cae: f2000553 fmv.d.x fa0,zero + c0057e7e: f2000553 fmv.d.x fa0,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:66 if (x == 0.0) - c0057cb2: ffcd bnez a5,c0057c6c + c0057e82: ffcd bnez a5,c0057e3c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:73 y = lib_sqrtapprox(x); - c0057cb4: 4014f553 fcvt.s.d fa0,fs1 - c0057cb8: 2e2000ef jal ra,c0057f9a - c0057cbc: e24ab0ef jal ra,c00032e0 <__extendsftf2> + c0057e84: 4014f553 fcvt.s.d fa0,fs1 + c0057e88: 2e2000ef jal ra,c005816a + c0057e8c: c54ab0ef jal ra,c00032e0 <__extendsftf2> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:79 y = 0.5 * (y + x / y); - c0057cc0: 22948553 fmv.d fa0,fs1 + c0057e90: 22948553 fmv.d fa0,fs1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:73 y = lib_sqrtapprox(x); - c0057cc4: 84aa mv s1,a0 - c0057cc6: 842e mv s0,a1 + c0057e94: 84aa mv s1,a0 + c0057e96: 842e mv s0,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:79 y = 0.5 * (y + x / y); - c0057cc8: 8aaab0ef jal ra,c0002d72 <__extenddftf2> - c0057ccc: 8626 mv a2,s1 - c0057cce: 86a2 mv a3,s0 - c0057cd0: 89aa mv s3,a0 - c0057cd2: 8a2e mv s4,a1 - c0057cd4: 96da90ef jal ra,c0001640 <__divtf3> - c0057cd8: 8626 mv a2,s1 - c0057cda: 86a2 mv a3,s0 - c0057cdc: 934a90ef jal ra,c0000e10 <__addtf3> - c0057ce0: 0001b417 auipc s0,0x1b - c0057ce4: 11040413 addi s0,s0,272 # c0072df0 - c0057ce8: 6010 ld a2,0(s0) - c0057cea: 6414 ld a3,8(s0) - c0057cec: 93eaa0ef jal ra,c0001e2a <__multf3> - c0057cf0: 862a mv a2,a0 - c0057cf2: 86ae mv a3,a1 + c0057e98: edbaa0ef jal ra,c0002d72 <__extenddftf2> + c0057e9c: 8626 mv a2,s1 + c0057e9e: 86a2 mv a3,s0 + c0057ea0: 89aa mv s3,a0 + c0057ea2: 8a2e mv s4,a1 + c0057ea4: f9ca90ef jal ra,c0001640 <__divtf3> + c0057ea8: 8626 mv a2,s1 + c0057eaa: 86a2 mv a3,s0 + c0057eac: f65a80ef jal ra,c0000e10 <__addtf3> + c0057eb0: 0001b417 auipc s0,0x1b + c0057eb4: 1a040413 addi s0,s0,416 # c0073050 + c0057eb8: 6010 ld a2,0(s0) + c0057eba: 6414 ld a3,8(s0) + c0057ebc: f6fa90ef jal ra,c0001e2a <__multf3> + c0057ec0: 862a mv a2,a0 + c0057ec2: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:80 y = 0.5 * (y + x / y); - c0057cf4: e42a sd a0,8(sp) - c0057cf6: e02e sd a1,0(sp) - c0057cf8: 854e mv a0,s3 - c0057cfa: 85d2 mv a1,s4 - c0057cfc: 945a90ef jal ra,c0001640 <__divtf3> - c0057d00: 6622 ld a2,8(sp) - c0057d02: 6682 ld a3,0(sp) - c0057d04: 90ca90ef jal ra,c0000e10 <__addtf3> - c0057d08: 6010 ld a2,0(s0) - c0057d0a: 6414 ld a3,8(s0) - c0057d0c: 91eaa0ef jal ra,c0001e2a <__multf3> - c0057d10: 862a mv a2,a0 - c0057d12: 86ae mv a3,a1 + c0057ec4: e42a sd a0,8(sp) + c0057ec6: e02e sd a1,0(sp) + c0057ec8: 854e mv a0,s3 + c0057eca: 85d2 mv a1,s4 + c0057ecc: f74a90ef jal ra,c0001640 <__divtf3> + c0057ed0: 6622 ld a2,8(sp) + c0057ed2: 6682 ld a3,0(sp) + c0057ed4: f3da80ef jal ra,c0000e10 <__addtf3> + c0057ed8: 6010 ld a2,0(s0) + c0057eda: 6414 ld a3,8(s0) + c0057edc: f4fa90ef jal ra,c0001e2a <__multf3> + c0057ee0: 862a mv a2,a0 + c0057ee2: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:81 y = 0.5 * (y + x / y); - c0057d14: e42a sd a0,8(sp) - c0057d16: e02e sd a1,0(sp) - c0057d18: 854e mv a0,s3 - c0057d1a: 85d2 mv a1,s4 - c0057d1c: 925a90ef jal ra,c0001640 <__divtf3> - c0057d20: 6622 ld a2,8(sp) - c0057d22: 6682 ld a3,0(sp) - c0057d24: 8eca90ef jal ra,c0000e10 <__addtf3> - c0057d28: 6010 ld a2,0(s0) - c0057d2a: 6414 ld a3,8(s0) - c0057d2c: 8feaa0ef jal ra,c0001e2a <__multf3> - c0057d30: 862a mv a2,a0 - c0057d32: 86ae mv a3,a1 + c0057ee4: e42a sd a0,8(sp) + c0057ee6: e02e sd a1,0(sp) + c0057ee8: 854e mv a0,s3 + c0057eea: 85d2 mv a1,s4 + c0057eec: f54a90ef jal ra,c0001640 <__divtf3> + c0057ef0: 6622 ld a2,8(sp) + c0057ef2: 6682 ld a3,0(sp) + c0057ef4: f1da80ef jal ra,c0000e10 <__addtf3> + c0057ef8: 6010 ld a2,0(s0) + c0057efa: 6414 ld a3,8(s0) + c0057efc: f2fa90ef jal ra,c0001e2a <__multf3> + c0057f00: 862a mv a2,a0 + c0057f02: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:82 y = 0.5 * (y + x / y); - c0057d34: e42a sd a0,8(sp) - c0057d36: e02e sd a1,0(sp) - c0057d38: 854e mv a0,s3 - c0057d3a: 85d2 mv a1,s4 - c0057d3c: 905a90ef jal ra,c0001640 <__divtf3> - c0057d40: 6622 ld a2,8(sp) - c0057d42: 6682 ld a3,0(sp) - c0057d44: 8cca90ef jal ra,c0000e10 <__addtf3> - c0057d48: 6010 ld a2,0(s0) - c0057d4a: 6414 ld a3,8(s0) - c0057d4c: 8deaa0ef jal ra,c0001e2a <__multf3> + c0057f04: e42a sd a0,8(sp) + c0057f06: e02e sd a1,0(sp) + c0057f08: 854e mv a0,s3 + c0057f0a: 85d2 mv a1,s4 + c0057f0c: f34a90ef jal ra,c0001640 <__divtf3> + c0057f10: 6622 ld a2,8(sp) + c0057f12: 6682 ld a3,0(sp) + c0057f14: efda80ef jal ra,c0000e10 <__addtf3> + c0057f18: 6010 ld a2,0(s0) + c0057f1a: 6414 ld a3,8(s0) + c0057f1c: f0fa90ef jal ra,c0001e2a <__multf3> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:88 if (y * y < x - 1.0 || y * y > x + 1.0) - c0057d50: 862a mv a2,a0 - c0057d52: 86ae mv a3,a1 + c0057f20: 862a mv a2,a0 + c0057f22: 86ae mv a3,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:82 y = 0.5 * (y + x / y); - c0057d54: 892a mv s2,a0 - c0057d56: 84ae mv s1,a1 + c0057f24: 892a mv s2,a0 + c0057f26: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:88 if (y * y < x - 1.0 || y * y > x + 1.0) - c0057d58: 8d2aa0ef jal ra,c0001e2a <__multf3> - c0057d5c: 0001d797 auipc a5,0x1d - c0057d60: a3c7b407 fld fs0,-1476(a5) # c0074798 <_erodata+0x18> - c0057d64: 0a84f553 fsub.d fa0,fs1,fs0 - c0057d68: 8b2a mv s6,a0 - c0057d6a: 8aae mv s5,a1 - c0057d6c: 806ab0ef jal ra,c0002d72 <__extenddftf2> - c0057d70: 862a mv a2,a0 - c0057d72: 86ae mv a3,a1 - c0057d74: 855a mv a0,s6 - c0057d76: 85d6 mv a1,s5 - c0057d78: cc2ab0ef jal ra,c000323a <__letf2> - c0057d7c: 04054b63 bltz a0,c0057dd2 + c0057f28: f03a90ef jal ra,c0001e2a <__multf3> + c0057f2c: 0001d797 auipc a5,0x1d + c0057f30: acc7b407 fld fs0,-1332(a5) # c00749f8 <_erodata+0x18> + c0057f34: 0a84f553 fsub.d fa0,fs1,fs0 + c0057f38: 8b2a mv s6,a0 + c0057f3a: 8aae mv s5,a1 + c0057f3c: e37aa0ef jal ra,c0002d72 <__extenddftf2> + c0057f40: 862a mv a2,a0 + c0057f42: 86ae mv a3,a1 + c0057f44: 855a mv a0,s6 + c0057f46: 85d6 mv a1,s5 + c0057f48: af2ab0ef jal ra,c000323a <__letf2> + c0057f4c: 04054b63 bltz a0,c0057fa2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:88 (discriminator 1) - c0057d80: 0284f553 fadd.d fa0,fs1,fs0 - c0057d84: fefaa0ef jal ra,c0002d72 <__extenddftf2> - c0057d88: 862a mv a2,a0 - c0057d8a: 86ae mv a3,a1 - c0057d8c: 855a mv a0,s6 - c0057d8e: 85d6 mv a1,s5 - c0057d90: ff5a90ef jal ra,c0001d84 <__getf2> - c0057d94: 02a04f63 bgtz a0,c0057dd2 + c0057f50: 0284f553 fadd.d fa0,fs1,fs0 + c0057f54: e1faa0ef jal ra,c0002d72 <__extenddftf2> + c0057f58: 862a mv a2,a0 + c0057f5a: 86ae mv a3,a1 + c0057f5c: 855a mv a0,s6 + c0057f5e: 85d6 mv a1,s5 + c0057f60: e25a90ef jal ra,c0001d84 <__getf2> + c0057f64: 02a04f63 bgtz a0,c0057fa2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:98 return y; - c0057d98: 854a mv a0,s2 - c0057d9a: 85a6 mv a1,s1 - c0057d9c: a72ab0ef jal ra,c000300e <__trunctfdf2> - c0057da0: b5f1 j c0057c6c + c0057f68: 854a mv a0,s2 + c0057f6a: 85a6 mv a1,s1 + c0057f6c: 8a2ab0ef jal ra,c000300e <__trunctfdf2> + c0057f70: b5f1 j c0057e3c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:94 y = 0.5 * (y + x / y); - c0057da2: 864a mv a2,s2 - c0057da4: 86a6 mv a3,s1 - c0057da6: 854e mv a0,s3 - c0057da8: 85d2 mv a1,s4 - c0057daa: 897a90ef jal ra,c0001640 <__divtf3> - c0057dae: 864a mv a2,s2 - c0057db0: 86a6 mv a3,s1 - c0057db2: 85ea90ef jal ra,c0000e10 <__addtf3> - c0057db6: 6010 ld a2,0(s0) - c0057db8: 6414 ld a3,8(s0) - c0057dba: 870aa0ef jal ra,c0001e2a <__multf3> - c0057dbe: 864a mv a2,s2 - c0057dc0: 86a6 mv a3,s1 - c0057dc2: 892a mv s2,a0 - c0057dc4: 84ae mv s1,a1 + c0057f72: 864a mv a2,s2 + c0057f74: 86a6 mv a3,s1 + c0057f76: 854e mv a0,s3 + c0057f78: 85d2 mv a1,s4 + c0057f7a: ec6a90ef jal ra,c0001640 <__divtf3> + c0057f7e: 864a mv a2,s2 + c0057f80: 86a6 mv a3,s1 + c0057f82: e8fa80ef jal ra,c0000e10 <__addtf3> + c0057f86: 6010 ld a2,0(s0) + c0057f88: 6414 ld a3,8(s0) + c0057f8a: ea1a90ef jal ra,c0001e2a <__multf3> + c0057f8e: 864a mv a2,s2 + c0057f90: 86a6 mv a3,s1 + c0057f92: 892a mv s2,a0 + c0057f94: 84ae mv s1,a1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_sqrt.c:91 while (y != y1) - c0057dc6: 854a mv a0,s2 - c0057dc8: 85a6 mv a1,s1 - c0057dca: f27a90ef jal ra,c0001cf0 <__eqtf2> - c0057dce: f971 bnez a0,c0057da2 - c0057dd0: b7e1 j c0057d98 - c0057dd2: 0001d797 auipc a5,0x1d - c0057dd6: 94e78793 addi a5,a5,-1714 # c0074720 <_dbl_inv_fact+0x58> - c0057dda: 6390 ld a2,0(a5) - c0057ddc: 6794 ld a3,8(a5) - c0057dde: b7e5 j c0057dc6 - -00000000c0057de0 : + c0057f96: 854a mv a0,s2 + c0057f98: 85a6 mv a1,s1 + c0057f9a: d57a90ef jal ra,c0001cf0 <__eqtf2> + c0057f9e: f971 bnez a0,c0057f72 + c0057fa0: b7e1 j c0057f68 + c0057fa2: 0001d797 auipc a5,0x1d + c0057fa6: 9de78793 addi a5,a5,-1570 # c0074980 <_dbl_inv_fact+0x58> + c0057faa: 6390 ld a2,0(a5) + c0057fac: 6794 ld a3,8(a5) + c0057fae: b7e5 j c0057f96 + +00000000c0057fb0 : tan(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tan.c:43 * Public Functions @@ -248359,27 +248557,27 @@ tan(): #ifdef CONFIG_HAVE_DOUBLE double tan(double x) { - c0057de0: 1101 addi sp,sp,-32 - c0057de2: a026 fsd fs1,0(sp) - c0057de4: 22a504d3 fmv.d fs1,fa0 - c0057de8: ec06 sd ra,24(sp) - c0057dea: a422 fsd fs0,8(sp) + c0057fb0: 1101 addi sp,sp,-32 + c0057fb2: a026 fsd fs1,0(sp) + c0057fb4: 22a504d3 fmv.d fs1,fa0 + c0057fb8: ec06 sd ra,24(sp) + c0057fba: a422 fsd fs0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tan.c:44 return (sin(x) / cos(x)); - c0057dec: d49ff0ef jal ra,c0057b34 - c0057df0: 22a50453 fmv.d fs0,fa0 - c0057df4: 22948553 fmv.d fa0,fs1 - c0057df8: a7dff0ef jal ra,c0057874 + c0057fbc: d49ff0ef jal ra,c0057d04 + c0057fc0: 22a50453 fmv.d fs0,fa0 + c0057fc4: 22948553 fmv.d fa0,fs1 + c0057fc8: a7dff0ef jal ra,c0057a44 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tan.c:45 } - c0057dfc: 60e2 ld ra,24(sp) - c0057dfe: 1aa47553 fdiv.d fa0,fs0,fa0 - c0057e02: 2482 fld fs1,0(sp) - c0057e04: 2422 fld fs0,8(sp) - c0057e06: 6105 addi sp,sp,32 - c0057e08: 8082 ret + c0057fcc: 60e2 ld ra,24(sp) + c0057fce: 1aa47553 fdiv.d fa0,fs0,fa0 + c0057fd2: 2482 fld fs1,0(sp) + c0057fd4: 2422 fld fs0,8(sp) + c0057fd6: 6105 addi sp,sp,32 + c0057fd8: 8082 ret -00000000c0057e0a : +00000000c0057fda : tanh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:43 * Public Functions @@ -248388,32 +248586,32 @@ tanh(): #ifdef CONFIG_HAVE_DOUBLE double tanh(double x) { - c0057e0a: 1141 addi sp,sp,-16 - c0057e0c: e406 sd ra,8(sp) + c0057fda: 1141 addi sp,sp,-16 + c0057fdc: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:44 double x0 = exp(x); - c0057e0e: a9fff0ef jal ra,c00578ac + c0057fde: a9fff0ef jal ra,c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:45 double x1 = 1.0 / x0; - c0057e12: 0001d797 auipc a5,0x1d - c0057e16: 9867b787 fld fa5,-1658(a5) # c0074798 <_erodata+0x18> - c0057e1a: 1aa7f7d3 fdiv.d fa5,fa5,fa0 + c0057fe2: 0001d797 auipc a5,0x1d + c0057fe6: a167b787 fld fa5,-1514(a5) # c00749f8 <_erodata+0x18> + c0057fea: 1aa7f7d3 fdiv.d fa5,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:48 return ((x0 - x1) / (x0 + x1)); } - c0057e1e: 60a2 ld ra,8(sp) - c0057e20: 0141 addi sp,sp,16 + c0057fee: 60a2 ld ra,8(sp) + c0057ff0: 0141 addi sp,sp,16 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:47 return ((x0 - x1) / (x0 + x1)); - c0057e22: 0af57753 fsub.d fa4,fa0,fa5 - c0057e26: 02f57553 fadd.d fa0,fa0,fa5 + c0057ff2: 0af57753 fsub.d fa4,fa0,fa5 + c0057ff6: 02f57553 fadd.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_tanh.c:48 } - c0057e2a: 1aa77553 fdiv.d fa0,fa4,fa0 - c0057e2e: 8082 ret + c0057ffa: 1aa77553 fdiv.d fa0,fa4,fa0 + c0057ffe: 8082 ret -00000000c0057e30 : +00000000c0058000 : asinh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:36 * Public Functions @@ -248422,27 +248620,27 @@ asinh(): #ifdef CONFIG_HAVE_DOUBLE double asinh(double x) { - c0057e30: 1101 addi sp,sp,-32 - c0057e32: a422 fsd fs0,8(sp) - c0057e34: 22a50453 fmv.d fs0,fa0 + c0058000: 1101 addi sp,sp,-32 + c0058002: a422 fsd fs0,8(sp) + c0058004: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:38 double y; double z = x * x; - c0057e38: 12a57553 fmul.d fa0,fa0,fa0 + c0058008: 12a57553 fmul.d fa0,fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:40 if (z < 1E-9) - c0057e3c: 0001d797 auipc a5,0x1d - c0057e40: b047b787 fld fa5,-1276(a5) # c0074940 <_erodata+0x1c0> + c005800c: 0001d797 auipc a5,0x1d + c0058010: b947b787 fld fa5,-1132(a5) # c0074ba0 <_erodata+0x1c0> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:36 { - c0057e44: ec06 sd ra,24(sp) + c0058014: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:40 if (z < 1E-9) - c0057e46: a2f517d3 flt.d a5,fa0,fa5 - c0057e4a: 0001d717 auipc a4,0x1d - c0057e4e: 94e73787 fld fa5,-1714(a4) # c0074798 <_erodata+0x18> - c0057e52: ef81 bnez a5,c0057e6a + c0058016: a2f517d3 flt.d a5,fa0,fa5 + c005801a: 0001d717 auipc a4,0x1d + c005801e: 9de73787 fld fa5,-1570(a4) # c00749f8 <_erodata+0x18> + c0058022: ef81 bnez a5,c005803a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:48 y = x * (1 - z / 6.0); @@ -248450,39 +248648,39 @@ double asinh(double x) else { y = log(x + sqrt(z + 1)); - c0057e54: 02f57553 fadd.d fa0,fa0,fa5 - c0057e58: dd9ff0ef jal ra,c0057c30 - c0057e5c: 02857553 fadd.d fa0,fa0,fs0 + c0058024: 02f57553 fadd.d fa0,fa0,fa5 + c0058028: dd9ff0ef jal ra,c0057e00 + c005802c: 02857553 fadd.d fa0,fa0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:52 } return y; } - c0057e60: 60e2 ld ra,24(sp) - c0057e62: 2422 fld fs0,8(sp) - c0057e64: 6105 addi sp,sp,32 + c0058030: 60e2 ld ra,24(sp) + c0058032: 2422 fld fs0,8(sp) + c0058034: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:48 y = log(x + sqrt(z + 1)); - c0057e66: affff06f j c0057964 + c0058036: affff06f j c0057b34 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:44 y = x * (1 - z / 6.0); - c0057e6a: 0001d797 auipc a5,0x1d - c0057e6e: ace7b707 fld fa4,-1330(a5) # c0074938 <_erodata+0x1b8> - c0057e72: 1ae57553 fdiv.d fa0,fa0,fa4 + c005803a: 0001d797 auipc a5,0x1d + c005803e: b5e7b707 fld fa4,-1186(a5) # c0074b98 <_erodata+0x1b8> + c0058042: 1ae57553 fdiv.d fa0,fa0,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:52 } - c0057e76: 60e2 ld ra,24(sp) + c0058046: 60e2 ld ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:44 y = x * (1 - z / 6.0); - c0057e78: 0aa7f553 fsub.d fa0,fa5,fa0 - c0057e7c: 12857553 fmul.d fa0,fa0,fs0 + c0058048: 0aa7f553 fsub.d fa0,fa5,fa0 + c005804c: 12857553 fmul.d fa0,fa0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_asinh.c:52 } - c0057e80: 2422 fld fs0,8(sp) - c0057e82: 6105 addi sp,sp,32 - c0057e84: 8082 ret + c0058050: 2422 fld fs0,8(sp) + c0058052: 6105 addi sp,sp,32 + c0058054: 8082 ret -00000000c0057e86 : +00000000c0058056 : acosh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:36 * Public Functions @@ -248491,31 +248689,31 @@ acosh(): #ifdef CONFIG_HAVE_DOUBLE double acosh(double x) { - c0057e86: 1101 addi sp,sp,-32 - c0057e88: a422 fsd fs0,8(sp) - c0057e8a: 22a50453 fmv.d fs0,fa0 + c0058056: 1101 addi sp,sp,-32 + c0058058: a422 fsd fs0,8(sp) + c005805a: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:37 return log(x + sqrt(x * x - 1)); - c0057e8e: 0001d797 auipc a5,0x1d - c0057e92: 9027b507 fld fa0,-1790(a5) # c0074790 <_erodata+0x10> + c005805e: 0001d797 auipc a5,0x1d + c0058062: 9927b507 fld fa0,-1646(a5) # c00749f0 <_erodata+0x10> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:36 { - c0057e96: ec06 sd ra,24(sp) + c0058066: ec06 sd ra,24(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:37 return log(x + sqrt(x * x - 1)); - c0057e98: 52847543 fmadd.d fa0,fs0,fs0,fa0 - c0057e9c: d95ff0ef jal ra,c0057c30 - c0057ea0: 02857553 fadd.d fa0,fa0,fs0 + c0058068: 52847543 fmadd.d fa0,fs0,fs0,fa0 + c005806c: d95ff0ef jal ra,c0057e00 + c0058070: 02857553 fadd.d fa0,fa0,fs0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:38 } - c0057ea4: 60e2 ld ra,24(sp) - c0057ea6: 2422 fld fs0,8(sp) - c0057ea8: 6105 addi sp,sp,32 + c0058074: 60e2 ld ra,24(sp) + c0058076: 2422 fld fs0,8(sp) + c0058078: 6105 addi sp,sp,32 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_acosh.c:37 return log(x + sqrt(x * x - 1)); - c0057eaa: abbff06f j c0057964 + c005807a: abbff06f j c0057b34 -00000000c0057eae : +00000000c005807e : atanh(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:39 #ifdef CONFIG_HAVE_DOUBLE @@ -248524,27 +248722,27 @@ double atanh(double x) double y; if (fabs(x) < 1E-5) - c0057eae: 22a52753 fabs.d fa4,fa0 - c0057eb2: 0001d797 auipc a5,0x1d - c0057eb6: a7e7b787 fld fa5,-1410(a5) # c0074930 <_erodata+0x1b0> - c0057eba: a2f717d3 flt.d a5,fa4,fa5 - c0057ebe: 0001d717 auipc a4,0x1d - c0057ec2: 8da73707 fld fa4,-1830(a4) # c0074798 <_erodata+0x18> - c0057ec6: cf91 beqz a5,c0057ee2 + c005807e: 22a52753 fabs.d fa4,fa0 + c0058082: 0001d797 auipc a5,0x1d + c0058086: b0e7b787 fld fa5,-1266(a5) # c0074b90 <_erodata+0x1b0> + c005808a: a2f717d3 flt.d a5,fa4,fa5 + c005808e: 0001d717 auipc a4,0x1d + c0058092: 96a73707 fld fa4,-1686(a4) # c00749f8 <_erodata+0x18> + c0058096: cf91 beqz a5,c00580b2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:41 { double z = x * x; - c0057ec8: 12a577d3 fmul.d fa5,fa0,fa0 + c0058098: 12a577d3 fmul.d fa5,fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:45 /* x + 1/3 * x^3 + 1/5 * x^5 + 1/7 * x^7 + ... */ y = x * (1 + z / 3.0); - c0057ecc: 0001d797 auipc a5,0x1d - c0057ed0: a7c7b687 fld fa3,-1412(a5) # c0074948 <_erodata+0x1c8> - c0057ed4: 1ad7f7d3 fdiv.d fa5,fa5,fa3 - c0057ed8: 02e7f7d3 fadd.d fa5,fa5,fa4 - c0057edc: 12a7f553 fmul.d fa0,fa5,fa0 + c005809c: 0001d797 auipc a5,0x1d + c00580a0: b0c7b687 fld fa3,-1268(a5) # c0074ba8 <_erodata+0x1c8> + c00580a4: 1ad7f7d3 fdiv.d fa5,fa5,fa3 + c00580a8: 02e7f7d3 fadd.d fa5,fa5,fa4 + c00580ac: 12a7f553 fmul.d fa0,fa5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:53 { y = log((1 + x) / (1 - x)) / 2.0; @@ -248552,33 +248750,33 @@ double atanh(double x) return y; } - c0057ee0: 8082 ret + c00580b0: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:49 y = log((1 + x) / (1 - x)) / 2.0; - c0057ee2: 02e577d3 fadd.d fa5,fa0,fa4 - c0057ee6: 0aa77553 fsub.d fa0,fa4,fa0 + c00580b2: 02e577d3 fadd.d fa5,fa0,fa4 + c00580b6: 0aa77553 fsub.d fa0,fa4,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:36 { - c0057eea: 1141 addi sp,sp,-16 - c0057eec: e406 sd ra,8(sp) + c00580ba: 1141 addi sp,sp,-16 + c00580bc: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:49 y = log((1 + x) / (1 - x)) / 2.0; - c0057eee: 1aa7f553 fdiv.d fa0,fa5,fa0 - c0057ef2: a73ff0ef jal ra,c0057964 + c00580be: 1aa7f553 fdiv.d fa0,fa5,fa0 + c00580c2: a73ff0ef jal ra,c0057b34 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:53 } - c0057ef6: 60a2 ld ra,8(sp) + c00580c6: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:49 y = log((1 + x) / (1 - x)) / 2.0; - c0057ef8: 0001d797 auipc a5,0x1d - c0057efc: 9f07b787 fld fa5,-1552(a5) # c00748e8 <_erodata+0x168> - c0057f00: 12f57553 fmul.d fa0,fa0,fa5 + c00580c8: 0001d797 auipc a5,0x1d + c00580cc: a807b787 fld fa5,-1408(a5) # c0074b48 <_erodata+0x168> + c00580d0: 12f57553 fmul.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_atanh.c:53 } - c0057f04: 0141 addi sp,sp,16 - c0057f06: 8082 ret + c00580d4: 0141 addi sp,sp,16 + c00580d6: 8082 ret -00000000c0057f08 : +00000000c00580d8 : cbrt(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:40 * Public Functions @@ -248587,58 +248785,58 @@ cbrt(): double cbrt(double x) { if (fabs(x) < DBL_EPSILON) - c0057f08: 22a526d3 fabs.d fa3,fa0 - c0057f0c: 0001d797 auipc a5,0x1d - c0057f10: 9f47b707 fld fa4,-1548(a5) # c0074900 <_erodata+0x180> - c0057f14: a2e697d3 flt.d a5,fa3,fa4 - c0057f18: e79d bnez a5,c0057f46 + c00580d8: 22a526d3 fabs.d fa3,fa0 + c00580dc: 0001d797 auipc a5,0x1d + c00580e0: a847b707 fld fa4,-1404(a5) # c0074b60 <_erodata+0x180> + c00580e4: a2e697d3 flt.d a5,fa3,fa4 + c00580e8: e79d bnez a5,c0058116 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:45 { return 0.0; } if (x > 0.0) - c0057f1a: f2000753 fmv.d.x fa4,zero - c0057f1e: 0001d717 auipc a4,0x1d - c0057f22: a3273587 fld fa1,-1486(a4) # c0074950 <_erodata+0x1d0> - c0057f26: a2a717d3 flt.d a5,fa4,fa0 - c0057f2a: c399 beqz a5,c0057f30 + c00580ea: f2000753 fmv.d.x fa4,zero + c00580ee: 0001d717 auipc a4,0x1d + c00580f2: ac273587 fld fa1,-1342(a4) # c0074bb0 <_erodata+0x1d0> + c00580f6: a2a717d3 flt.d a5,fa4,fa0 + c00580fa: c399 beqz a5,c0058100 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:47 { return pow(x, 1.0 / 3.0); - c0057f2c: ba9ff06f j c0057ad4 + c00580fc: ba9ff06f j c0057ca4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:51 } else { return -pow(-x, 1.0 / 3.0); - c0057f30: 22a51553 fneg.d fa0,fa0 + c0058100: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:39 { - c0057f34: 1141 addi sp,sp,-16 - c0057f36: e406 sd ra,8(sp) + c0058104: 1141 addi sp,sp,-16 + c0058106: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:51 return -pow(-x, 1.0 / 3.0); - c0057f38: b9dff0ef jal ra,c0057ad4 + c0058108: b9dff0ef jal ra,c0057ca4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:53 } } - c0057f3c: 60a2 ld ra,8(sp) + c005810c: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:51 return -pow(-x, 1.0 / 3.0); - c0057f3e: 22a51553 fneg.d fa0,fa0 + c005810e: 22a51553 fneg.d fa0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:53 } - c0057f42: 0141 addi sp,sp,16 - c0057f44: 8082 ret + c0058112: 0141 addi sp,sp,16 + c0058114: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:42 return 0.0; - c0057f46: f2000553 fmv.d.x fa0,zero + c0058116: f2000553 fmv.d.x fa0,zero /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_cbrt.c:53 } - c0057f4a: 8082 ret + c005811a: 8082 ret -00000000c0057f4c : +00000000c005811c : lib_expi(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:85 size_t i; @@ -248647,29 +248845,29 @@ lib_expi(): /* The largest calculable value for n is floor(ln(DBL_MAX)) */ if (n > 709) - c0057f4c: 2c500793 li a5,709 - c0057f50: 00a7ee63 bltu a5,a0,c0057f6c - c0057f54: 0001c697 auipc a3,0x1c - c0057f58: 7dc68693 addi a3,a3,2012 # c0074730 + c005811c: 2c500793 li a5,709 + c0058120: 00a7ee63 bltu a5,a0,c005813c + c0058124: 0001d697 auipc a3,0x1d + c0058128: 86c68693 addi a3,a3,-1940 # c0074990 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:90 { return INFINITY; } val = 1.0; - c0057f5c: 0001d797 auipc a5,0x1d - c0057f60: 83c7b507 fld fa0,-1988(a5) # c0074798 <_erodata+0x18> + c005812c: 0001d797 auipc a5,0x1d + c0058130: 8cc7b507 fld fa0,-1844(a5) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:92 for (i = 0; n != 0; i++) - c0057f64: 4701 li a4,0 + c0058134: 4701 li a4,0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:94 { if ((n & (1 << i)) != 0) - c0057f66: 4585 li a1,1 + c0058136: 4585 li a1,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:92 (discriminator 1) for (i = 0; n != 0; i++) - c0057f68: e909 bnez a0,c0057f7a + c0058138: e909 bnez a0,c005814a /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:102 val *= g_expi_square_tbl[i]; } @@ -248677,39 +248875,39 @@ lib_expi(): return val; } - c0057f6a: 8082 ret + c005813a: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:87 return INFINITY; - c0057f6c: 0001d797 auipc a5,0x1d - c0057f70: 81c7b507 fld fa0,-2020(a5) # c0074788 <_erodata+0x8> - c0057f74: 12a57553 fmul.d fa0,fa0,fa0 - c0057f78: 8082 ret + c005813c: 0001d797 auipc a5,0x1d + c0058140: 8ac7b507 fld fa0,-1876(a5) # c00749e8 <_erodata+0x8> + c0058144: 12a57553 fmul.d fa0,fa0,fa0 + c0058148: 8082 ret /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:94 if ((n & (1 << i)) != 0) - c0057f7a: 00e597bb sllw a5,a1,a4 - c0057f7e: 0007861b sext.w a2,a5 - c0057f82: 8e69 and a2,a2,a0 - c0057f84: ca01 beqz a2,c0057f94 + c005814a: 00e597bb sllw a5,a1,a4 + c005814e: 0007861b sext.w a2,a5 + c0058152: 8e69 and a2,a2,a0 + c0058154: ca01 beqz a2,c0058164 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:97 val *= g_expi_square_tbl[i]; - c0057f86: 229c fld fa5,0(a3) + c0058156: 229c fld fa5,0(a3) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:96 n &= ~(1 << i); - c0057f88: fff7c793 not a5,a5 - c0057f8c: 2781 sext.w a5,a5 + c0058158: fff7c793 not a5,a5 + c005815c: 2781 sext.w a5,a5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:97 val *= g_expi_square_tbl[i]; - c0057f8e: 12f57553 fmul.d fa0,fa0,fa5 + c005815e: 12f57553 fmul.d fa0,fa0,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:96 n &= ~(1 << i); - c0057f92: 8d7d and a0,a0,a5 + c0058162: 8d7d and a0,a0,a5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libexpi.c:92 (discriminator 2) for (i = 0; n != 0; i++) - c0057f94: 0705 addi a4,a4,1 - c0057f96: 06a1 addi a3,a3,8 - c0057f98: bfc1 j c0057f68 + c0058164: 0705 addi a4,a4,1 + c0058166: 06a1 addi a3,a3,8 + c0058168: bfc1 j c0058138 -00000000c0057f9a : +00000000c005816a : lib_sqrtapprox(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libsqrtapprox.c:40 /**************************************************************************** @@ -248718,7 +248916,7 @@ lib_sqrtapprox(): float lib_sqrtapprox(float x) { - c0057f9a: e00507d3 fmv.x.w a5,fa0 + c005816a: e00507d3 fmv.x.w a5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libsqrtapprox.c:50 } u; @@ -248726,17 +248924,17 @@ float lib_sqrtapprox(float x) u.x = x; u.i = 0x1fc00000 + (u.i >> 1); - c0057f9e: 1fc00737 lui a4,0x1fc00 - c0057fa2: 4017d79b sraiw a5,a5,0x1 - c0057fa6: 9fb9 addw a5,a5,a4 + c005816e: 1fc00737 lui a4,0x1fc00 + c0058172: 4017d79b sraiw a5,a5,0x1 + c0058176: 9fb9 addw a5,a5,a4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_libsqrtapprox.c:53 return u.x; } - c0057fa8: f0078553 fmv.w.x fa0,a5 - c0057fac: 8082 ret + c0058178: f0078553 fmv.w.x fa0,a5 + c005817c: 8082 ret -00000000c0057fae : +00000000c005817e : expm1(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_expm1.c:36 * Public Functions @@ -248745,25 +248943,25 @@ expm1(): #ifdef CONFIG_HAVE_DOUBLE double expm1(double x) { - c0057fae: 1141 addi sp,sp,-16 - c0057fb0: e406 sd ra,8(sp) + c005817e: 1141 addi sp,sp,-16 + c0058180: e406 sd ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_expm1.c:37 return exp(x) - 1.0; - c0057fb2: 8fbff0ef jal ra,c00578ac + c0058182: 8fbff0ef jal ra,c0057a7c /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_expm1.c:38 } - c0057fb6: 60a2 ld ra,8(sp) + c0058186: 60a2 ld ra,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_expm1.c:37 return exp(x) - 1.0; - c0057fb8: 0001c797 auipc a5,0x1c - c0057fbc: 7e07b787 fld fa5,2016(a5) # c0074798 <_erodata+0x18> + c0058188: 0001d797 auipc a5,0x1d + c005818c: 8707b787 fld fa5,-1936(a5) # c00749f8 <_erodata+0x18> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_expm1.c:38 } - c0057fc0: 0af57553 fsub.d fa0,fa0,fa5 - c0057fc4: 0141 addi sp,sp,16 - c0057fc6: 8082 ret + c0058190: 0af57553 fsub.d fa0,fa0,fa5 + c0058194: 0141 addi sp,sp,16 + c0058196: 8082 ret -00000000c0057fc8 : +00000000c0058198 : fmax(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmax.c:37 ****************************************************************************/ @@ -248772,14 +248970,14 @@ fmax(): double fmax(double x, double y) { return ((x > y) ? x : y); - c0057fc8: a2a597d3 flt.d a5,fa1,fa0 - c0057fcc: e399 bnez a5,c0057fd2 - c0057fce: 22b58553 fmv.d fa0,fa1 + c0058198: a2a597d3 flt.d a5,fa1,fa0 + c005819c: e399 bnez a5,c00581a2 + c005819e: 22b58553 fmv.d fa0,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmax.c:38 (discriminator 4) } - c0057fd2: 8082 ret + c00581a2: 8082 ret -00000000c0057fd4 : +00000000c00581a4 : fmin(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmin.c:37 ****************************************************************************/ @@ -248788,14 +248986,14 @@ fmin(): double fmin(double x, double y) { return ((x < y) ? x : y); - c0057fd4: a2b517d3 flt.d a5,fa0,fa1 - c0057fd8: e399 bnez a5,c0057fde - c0057fda: 22b58553 fmv.d fa0,fa1 + c00581a4: a2b517d3 flt.d a5,fa0,fa1 + c00581a8: e399 bnez a5,c00581ae + c00581aa: 22b58553 fmv.d fa0,fa1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_fmin.c:38 (discriminator 4) } - c0057fde: 8082 ret + c00581ae: 8082 ret -00000000c0057fe0 : +00000000c00581b0 : ceil(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:43 * Public Functions @@ -248804,55 +249002,55 @@ ceil(): #ifdef CONFIG_HAVE_DOUBLE double ceil(double x) { - c0057fe0: 7179 addi sp,sp,-48 + c00581b0: 7179 addi sp,sp,-48 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:46 double x1 = x; modf(x, &x); - c0057fe2: 0028 addi a0,sp,8 + c00581b2: 0028 addi a0,sp,8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:43 { - c0057fe4: ac22 fsd fs0,24(sp) - c0057fe6: f406 sd ra,40(sp) + c00581b4: ac22 fsd fs0,24(sp) + c00581b6: f406 sd ra,40(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:44 double x1 = x; - c0057fe8: 22a50453 fmv.d fs0,fa0 + c00581b8: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:43 { - c0057fec: a42a fsd fa0,8(sp) + c00581bc: a42a fsd fa0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:46 modf(x, &x); - c0057fee: aa9ff0ef jal ra,c0057a96 + c00581be: aa9ff0ef jal ra,c0057c66 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:47 if (x1 > 0.0 && fabs(x1 - x) > 0.0) - c0057ff2: f2000753 fmv.d.x fa4,zero - c0057ff6: a28717d3 flt.d a5,fa4,fs0 - c0057ffa: c385 beqz a5,c005801a + c00581c2: f2000753 fmv.d.x fa4,zero + c00581c6: a28717d3 flt.d a5,fa4,fs0 + c00581ca: c385 beqz a5,c00581ea /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:47 (discriminator 1) - c0057ffc: 27a2 fld fa5,8(sp) - c0057ffe: 0af47453 fsub.d fs0,fs0,fa5 - c0058002: 22842453 fabs.d fs0,fs0 - c0058006: a28717d3 flt.d a5,fa4,fs0 - c005800a: cb81 beqz a5,c005801a + c00581cc: 27a2 fld fa5,8(sp) + c00581ce: 0af47453 fsub.d fs0,fs0,fa5 + c00581d2: 22842453 fabs.d fs0,fs0 + c00581d6: a28717d3 flt.d a5,fa4,fs0 + c00581da: cb81 beqz a5,c00581ea /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:49 { x += 1.0; - c005800c: 0001c797 auipc a5,0x1c - c0058010: 78c7b707 fld fa4,1932(a5) # c0074798 <_erodata+0x18> - c0058014: 02e7f7d3 fadd.d fa5,fa5,fa4 - c0058018: a43e fsd fa5,8(sp) + c00581dc: 0001d797 auipc a5,0x1d + c00581e0: 81c7b707 fld fa4,-2020(a5) # c00749f8 <_erodata+0x18> + c00581e4: 02e7f7d3 fadd.d fa5,fa5,fa4 + c00581e8: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_ceil.c:53 } return x; } - c005801a: 70a2 ld ra,40(sp) - c005801c: 2522 fld fa0,8(sp) - c005801e: 2462 fld fs0,24(sp) - c0058020: 6145 addi sp,sp,48 - c0058022: 8082 ret + c00581ea: 70a2 ld ra,40(sp) + c00581ec: 2522 fld fa0,8(sp) + c00581ee: 2462 fld fs0,24(sp) + c00581f0: 6145 addi sp,sp,48 + c00581f2: 8082 ret -00000000c0058024 : +00000000c00581f4 : floor(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:43 * Public Functions @@ -248861,7 +249059,7 @@ floor(): #ifdef CONFIG_HAVE_DOUBLE double floor(double x) { - c0058024: 7179 addi sp,sp,-48 + c00581f4: 7179 addi sp,sp,-48 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:58 * 2.9 2.0 2.0 * -2.7 -2.0 -3.0 @@ -248869,43 +249067,43 @@ double floor(double x) */ modf(x, &modx); - c0058026: 0028 addi a0,sp,8 + c00581f6: 0028 addi a0,sp,8 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:43 { - c0058028: ac22 fsd fs0,24(sp) - c005802a: f406 sd ra,40(sp) - c005802c: 22a50453 fmv.d fs0,fa0 + c00581f8: ac22 fsd fs0,24(sp) + c00581fa: f406 sd ra,40(sp) + c00581fc: 22a50453 fmv.d fs0,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:58 modf(x, &modx); - c0058030: a67ff0ef jal ra,c0057a96 + c0058200: a67ff0ef jal ra,c0057c66 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:59 if (x < 0.0 && x < modx) - c0058034: f20007d3 fmv.d.x fa5,zero - c0058038: a2f417d3 flt.d a5,fs0,fa5 - c005803c: cf81 beqz a5,c0058054 + c0058204: f20007d3 fmv.d.x fa5,zero + c0058208: a2f417d3 flt.d a5,fs0,fa5 + c005820c: cf81 beqz a5,c0058224 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:59 (discriminator 1) - c005803e: 27a2 fld fa5,8(sp) - c0058040: a2f417d3 flt.d a5,fs0,fa5 - c0058044: cb81 beqz a5,c0058054 + c005820e: 27a2 fld fa5,8(sp) + c0058210: a2f417d3 flt.d a5,fs0,fa5 + c0058214: cb81 beqz a5,c0058224 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:61 { modx -= 1.0; - c0058046: 0001c797 auipc a5,0x1c - c005804a: 7527b707 fld fa4,1874(a5) # c0074798 <_erodata+0x18> - c005804e: 0ae7f7d3 fsub.d fa5,fa5,fa4 - c0058052: a43e fsd fa5,8(sp) + c0058216: 0001c797 auipc a5,0x1c + c005821a: 7e27b707 fld fa4,2018(a5) # c00749f8 <_erodata+0x18> + c005821e: 0ae7f7d3 fsub.d fa5,fa5,fa4 + c0058222: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_floor.c:65 } return modx; } - c0058054: 70a2 ld ra,40(sp) - c0058056: 2522 fld fa0,8(sp) - c0058058: 2462 fld fs0,24(sp) - c005805a: 6145 addi sp,sp,48 - c005805c: 8082 ret + c0058224: 70a2 ld ra,40(sp) + c0058226: 2522 fld fa0,8(sp) + c0058228: 2462 fld fs0,24(sp) + c005822a: 6145 addi sp,sp,48 + c005822c: 8082 ret -00000000c005805e : +00000000c005822e : round(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:39 #ifdef CONFIG_HAVE_DOUBLE @@ -248914,85 +249112,85 @@ double round(double x) double f; if (isinf(x) || isnan(x)) - c005805e: 0001c797 auipc a5,0x1c - c0058062: 72a7b707 fld fa4,1834(a5) # c0074788 <_erodata+0x8> - c0058066: 12e77753 fmul.d fa4,fa4,fa4 + c005822e: 0001c797 auipc a5,0x1c + c0058232: 7ba7b707 fld fa4,1978(a5) # c00749e8 <_erodata+0x8> + c0058236: 12e77753 fmul.d fa4,fa4,fa4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:36 { - c005806a: 1101 addi sp,sp,-32 - c005806c: ec06 sd ra,24(sp) - c005806e: a42a fsd fa0,8(sp) + c005823a: 1101 addi sp,sp,-32 + c005823c: ec06 sd ra,24(sp) + c005823e: a42a fsd fa0,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:39 if (isinf(x) || isnan(x)) - c0058070: 22a507d3 fmv.d fa5,fa0 - c0058074: a2e527d3 feq.d a5,fa0,fa4 - c0058078: e7ad bnez a5,c00580e2 + c0058240: 22a507d3 fmv.d fa5,fa0 + c0058244: a2e527d3 feq.d a5,fa0,fa4 + c0058248: e7ad bnez a5,c00582b2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:39 (discriminator 1) - c005807a: 22e71753 fneg.d fa4,fa4 - c005807e: a2e527d3 feq.d a5,fa0,fa4 - c0058082: e3a5 bnez a5,c00580e2 + c005824a: 22e71753 fneg.d fa4,fa4 + c005824e: a2e527d3 feq.d a5,fa0,fa4 + c0058252: e3a5 bnez a5,c00582b2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:39 (discriminator 2) - c0058084: a2a527d3 feq.d a5,fa0,fa0 - c0058088: cfa9 beqz a5,c00580e2 + c0058254: a2a527d3 feq.d a5,fa0,fa0 + c0058258: cfa9 beqz a5,c00582b2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:44 { return x; } f = modf(x, &x); - c005808a: 0028 addi a0,sp,8 - c005808c: a0bff0ef jal ra,c0057a96 + c005825a: 0028 addi a0,sp,8 + c005825c: a0bff0ef jal ra,c0057c66 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:45 if (x <= 0.0 && f <= -0.5) - c0058090: 27a2 fld fa5,8(sp) - c0058092: f2000753 fmv.d.x fa4,zero - c0058096: a2e787d3 fle.d a5,fa5,fa4 - c005809a: cf99 beqz a5,c00580b8 + c0058260: 27a2 fld fa5,8(sp) + c0058262: f2000753 fmv.d.x fa4,zero + c0058266: a2e787d3 fle.d a5,fa5,fa4 + c005826a: cf99 beqz a5,c0058288 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:45 (discriminator 1) - c005809c: 0001d797 auipc a5,0x1d - c00580a0: 8bc7b707 fld fa4,-1860(a5) # c0074958 <_erodata+0x1d8> - c00580a4: a2e507d3 fle.d a5,fa0,fa4 - c00580a8: cb81 beqz a5,c00580b8 + c005826c: 0001d797 auipc a5,0x1d + c0058270: 94c7b707 fld fa4,-1716(a5) # c0074bb8 <_erodata+0x1d8> + c0058274: a2e507d3 fle.d a5,fa0,fa4 + c0058278: cb81 beqz a5,c0058288 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:47 { x -= 1.0; - c00580aa: 0001c797 auipc a5,0x1c - c00580ae: 6ee7b707 fld fa4,1774(a5) # c0074798 <_erodata+0x18> - c00580b2: 0ae7f7d3 fsub.d fa5,fa5,fa4 - c00580b6: a43e fsd fa5,8(sp) + c005827a: 0001c797 auipc a5,0x1c + c005827e: 77e7b707 fld fa4,1918(a5) # c00749f8 <_erodata+0x18> + c0058282: 0ae7f7d3 fsub.d fa5,fa5,fa4 + c0058286: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:50 } if (x >= 0.0 && f >= 0.5) - c00580b8: 27a2 fld fa5,8(sp) - c00580ba: f2000753 fmv.d.x fa4,zero - c00580be: a2f707d3 fle.d a5,fa4,fa5 - c00580c2: cf99 beqz a5,c00580e0 + c0058288: 27a2 fld fa5,8(sp) + c005828a: f2000753 fmv.d.x fa4,zero + c005828e: a2f707d3 fle.d a5,fa4,fa5 + c0058292: cf99 beqz a5,c00582b0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:50 (discriminator 1) - c00580c4: 0001d797 auipc a5,0x1d - c00580c8: 8247b707 fld fa4,-2012(a5) # c00748e8 <_erodata+0x168> - c00580cc: a2a707d3 fle.d a5,fa4,fa0 - c00580d0: cb81 beqz a5,c00580e0 + c0058294: 0001d797 auipc a5,0x1d + c0058298: 8b47b707 fld fa4,-1868(a5) # c0074b48 <_erodata+0x168> + c005829c: a2a707d3 fle.d a5,fa4,fa0 + c00582a0: cb81 beqz a5,c00582b0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:52 { x += 1.0; - c00580d2: 0001c797 auipc a5,0x1c - c00580d6: 6c67b707 fld fa4,1734(a5) # c0074798 <_erodata+0x18> - c00580da: 02e7f7d3 fadd.d fa5,fa5,fa4 - c00580de: a43e fsd fa5,8(sp) + c00582a2: 0001c797 auipc a5,0x1c + c00582a6: 7567b707 fld fa4,1878(a5) # c00749f8 <_erodata+0x18> + c00582aa: 02e7f7d3 fadd.d fa5,fa5,fa4 + c00582ae: a43e fsd fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:55 } return x; - c00580e0: 27a2 fld fa5,8(sp) + c00582b0: 27a2 fld fa5,8(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_round.c:56 } - c00580e2: 60e2 ld ra,24(sp) - c00580e4: 22f78553 fmv.d fa0,fa5 - c00580e8: 6105 addi sp,sp,32 - c00580ea: 8082 ret + c00582b2: 60e2 ld ra,24(sp) + c00582b4: 22f78553 fmv.d fa0,fa5 + c00582b8: 6105 addi sp,sp,32 + c00582ba: 8082 ret -00000000c00580ec : +00000000c00582bc : trunc(): /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:45 * Public Functions @@ -249001,7 +249199,7 @@ trunc(): #ifdef CONFIG_HAVE_DOUBLE double trunc(double x) { - c00580ec: e20507d3 fmv.x.d a5,fa0 + c00582bc: e20507d3 fmv.x.d a5,fa0 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:59 int e = (int)(u.i >> 52 & 0x7ff) - 0x3ff + 12; @@ -249009,38 +249207,38 @@ double trunc(double x) volatile float __x; if (e >= 52 + 12) - c00580f0: 03f00693 li a3,63 + c00582c0: 03f00693 li a3,63 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:55 int e = (int)(u.i >> 52 & 0x7ff) - 0x3ff + 12; - c00580f4: 0347d713 srli a4,a5,0x34 - c00580f8: 7ff77713 andi a4,a4,2047 - c00580fc: c0d7071b addiw a4,a4,-1011 + c00582c4: 0347d713 srli a4,a5,0x34 + c00582c8: 7ff77713 andi a4,a4,2047 + c00582cc: c0d7071b addiw a4,a4,-1011 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:59 if (e >= 52 + 12) - c0058100: 04e6c263 blt a3,a4,c0058144 + c00582d0: 04e6c263 blt a3,a4,c0058314 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:64 { return x; } if (e < 12) - c0058104: 46ad li a3,11 - c0058106: 863e mv a2,a5 - c0058108: 00e6c363 blt a3,a4,c005810e + c00582d4: 46ad li a3,11 + c00582d6: 863e mv a2,a5 + c00582d8: 00e6c363 blt a3,a4,c00582de /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:66 { e = 1; - c005810c: 4705 li a4,1 + c00582dc: 4705 li a4,1 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:69 } m = -1ull >> e; - c005810e: 56fd li a3,-1 - c0058110: 00e6d733 srl a4,a3,a4 + c00582de: 56fd li a3,-1 + c00582e0: 00e6d733 srl a4,a3,a4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:70 if ((u.i & m) == 0) - c0058114: 00e676b3 and a3,a2,a4 - c0058118: c695 beqz a3,c0058144 + c00582e4: 00e676b3 and a3,a2,a4 + c00582e8: c695 beqz a3,c0058314 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:77 return x; } @@ -249048,38 +249246,38 @@ double trunc(double x) /* Force Evaluation */ __x = (x + 0x1p120f); - c005811a: f2078753 fmv.d.x fa4,a5 - c005811e: 0001d697 auipc a3,0x1d - c0058122: 8426b787 fld fa5,-1982(a3) # c0074960 <_erodata+0x1e0> + c00582ea: f2078753 fmv.d.x fa4,a5 + c00582ee: 0001d697 auipc a3,0x1d + c00582f2: 8d26b787 fld fa5,-1838(a3) # c0074bc0 <_erodata+0x1e0> /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:45 { - c0058126: 1141 addi sp,sp,-16 + c00582f6: 1141 addi sp,sp,-16 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:77 __x = (x + 0x1p120f); - c0058128: 02f777d3 fadd.d fa5,fa4,fa5 + c00582f8: 02f777d3 fadd.d fa5,fa4,fa5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:80 UNUSED(__x); u.i &= ~m; - c005812c: fff74713 not a4,a4 + c00582fc: fff74713 not a4,a4 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:81 return u.f; - c0058130: 00c777b3 and a5,a4,a2 + c0058300: 00c777b3 and a5,a4,a2 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:82 } - c0058134: f2078553 fmv.d.x fa0,a5 + c0058304: f2078553 fmv.d.x fa0,a5 /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:77 __x = (x + 0x1p120f); - c0058138: 4017f7d3 fcvt.s.d fa5,fa5 - c005813c: 00f12627 fsw fa5,12(sp) + c0058308: 4017f7d3 fcvt.s.d fa5,fa5 + c005830c: 00f12627 fsw fa5,12(sp) /Users/Luppy/riscv/nuttx/libs/libm/libm/lib_trunc.c:82 } - c0058140: 0141 addi sp,sp,16 - c0058142: 8082 ret - c0058144: f2078553 fmv.d.x fa0,a5 - c0058148: 8082 ret + c0058310: 0141 addi sp,sp,16 + c0058312: 8082 ret + c0058314: f2078553 fmv.d.x fa0,a5 + c0058318: 8082 ret -00000000c005814a : +00000000c005831a : zalloc(): /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_zalloc.c:54 * @@ -249088,26 +249286,26 @@ zalloc(): #undef zalloc /* See mm/README.txt */ FAR void *zalloc(size_t size) { - c005814a: 1101 addi sp,sp,-32 - c005814c: e822 sd s0,16(sp) - c005814e: ec06 sd ra,24(sp) - c0058150: e42a sd a0,8(sp) + c005831a: 1101 addi sp,sp,-32 + c005831c: e822 sd s0,16(sp) + c005831e: ec06 sd ra,24(sp) + c0058320: e42a sd a0,8(sp) /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_zalloc.c:58 #ifdef CONFIG_ARCH_ADDRENV /* Use malloc() because it implements the sbrk() logic */ FAR void *mem = malloc(size); - c0058152: cb3fa0ef jal ra,c0052e04 - c0058156: 842a mv s0,a0 + c0058322: cb3fa0ef jal ra,c0052fd4 + c0058326: 842a mv s0,a0 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_zalloc.c:59 if (mem) - c0058158: c509 beqz a0,c0058162 + c0058328: c509 beqz a0,c0058332 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_zalloc.c:61 { memset(mem, 0, size); - c005815a: 6622 ld a2,8(sp) - c005815c: 4581 li a1,0 - c005815e: f12fe0ef jal ra,c0056870 + c005832a: 6622 ld a2,8(sp) + c005832c: 4581 li a1,0 + c005832e: f12fe0ef jal ra,c0056a40 /Users/Luppy/riscv/nuttx/mm/umm_heap/umm_zalloc.c:78 set_errno(ENOMEM); } @@ -249115,8 +249313,8 @@ FAR void *zalloc(size_t size) return ret; #endif } - c0058162: 60e2 ld ra,24(sp) - c0058164: 8522 mv a0,s0 - c0058166: 6442 ld s0,16(sp) - c0058168: 6105 addi sp,sp,32 - c005816a: 8082 ret + c0058332: 60e2 ld ra,24(sp) + c0058334: 8522 mv a0,s0 + c0058336: 6442 ld s0,16(sp) + c0058338: 6105 addi sp,sp,32 + c005833a: 8082 ret diff --git a/nuttx/qjs.map b/nuttx/qjs.map index f41e5489f..4c49181d5 100644 --- a/nuttx/qjs.map +++ b/nuttx/qjs.map @@ -490,7 +490,7 @@ Linker script and memory map 0x00000000c0000000 . = 0xc0000000 -.text 0x00000000c0000000 0x5816c +.text 0x00000000c0000000 0x5833c 0x00000000c0000000 _stext = . *(.text) .text 0x00000000c0000000 0x0 ../apps/import/startup/crt0.o @@ -945,3781 +945,3781 @@ Linker script and memory map .text.code_match 0x00000000c0005074 0x236 .obj/quickjs.o .text.js_def_malloc - 0x00000000c00052aa 0x48 .obj/quickjs.o + 0x00000000c00052aa 0x136 .obj/quickjs.o .text.dbuf_put_u16 - 0x00000000c00052f2 0x18 .obj/quickjs.o + 0x00000000c00053e0 0x18 .obj/quickjs.o .text.emit_u16 - 0x00000000c000530a 0x8 .obj/quickjs.o + 0x00000000c00053f8 0x8 .obj/quickjs.o .text.get_loc_or_ref - 0x00000000c0005312 0x2e .obj/quickjs.o + 0x00000000c0005400 0x2e .obj/quickjs.o .text.put_short_code - 0x00000000c0005340 0xe8 .obj/quickjs.o + 0x00000000c000542e 0xe8 .obj/quickjs.o .text.dbuf_put_u32 - 0x00000000c0005428 0x14 .obj/quickjs.o - .text.emit_op 0x00000000c000543c 0x54 .obj/quickjs.o + 0x00000000c0005516 0x14 .obj/quickjs.o + .text.emit_op 0x00000000c000552a 0x54 .obj/quickjs.o .text.set_object_name_computed - 0x00000000c0005490 0xa8 .obj/quickjs.o + 0x00000000c000557e 0xa8 .obj/quickjs.o .text.pop_scope - 0x00000000c0005538 0x58 .obj/quickjs.o + 0x00000000c0005626 0x58 .obj/quickjs.o .text.close_scopes - 0x00000000c0005590 0x42 .obj/quickjs.o + 0x00000000c000567e 0x42 .obj/quickjs.o .text.emit_u32 - 0x00000000c00055d2 0x8 .obj/quickjs.o + 0x00000000c00056c0 0x8 .obj/quickjs.o .text.emit_label - 0x00000000c00055da 0x4a .obj/quickjs.o + 0x00000000c00056c8 0x4a .obj/quickjs.o .text.push_short_int - 0x00000000c0005624 0x8e .obj/quickjs.o + 0x00000000c0005712 0x8e .obj/quickjs.o .text.getTimezoneOffset - 0x00000000c00056b2 0x46 .obj/quickjs.o + 0x00000000c00057a0 0x46 .obj/quickjs.o .text.date_now - 0x00000000c00056f8 0x26 .obj/quickjs.o + 0x00000000c00057e6 0x26 .obj/quickjs.o .text.js_Date_now - 0x00000000c000571e 0x34 .obj/quickjs.o + 0x00000000c000580c 0x34 .obj/quickjs.o .text.js_class_has_bytecode - 0x00000000c0005752 0x24 .obj/quickjs.o + 0x00000000c0005840 0x24 .obj/quickjs.o .text.JS_GetFunctionBytecode - 0x00000000c0005776 0x30 .obj/quickjs.o + 0x00000000c0005864 0x30 .obj/quickjs.o .text.js_function_proto_lineNumber - 0x00000000c00057a6 0x38 .obj/quickjs.o + 0x00000000c0005894 0x38 .obj/quickjs.o .text.gc_scan_incref_child - 0x00000000c00057de 0x4e .obj/quickjs.o + 0x00000000c00058cc 0x4e .obj/quickjs.o .text.compute_jsstring_size - 0x00000000c000582c 0x4a .obj/quickjs.o + 0x00000000c000591a 0x4a .obj/quickjs.o .text.compute_value_size - 0x00000000c0005876 0x14 .obj/quickjs.o + 0x00000000c0005964 0x14 .obj/quickjs.o .text.check_define_prop_flags - 0x00000000c000588a 0x68 .obj/quickjs.o + 0x00000000c0005978 0x68 .obj/quickjs.o .text.tag_is_number - 0x00000000c00058f2 0x18 .obj/quickjs.o + 0x00000000c00059e0 0x18 .obj/quickjs.o .text.is_var_in_arg_scope - 0x00000000c000590a 0x32 .obj/quickjs.o + 0x00000000c00059f8 0x32 .obj/quickjs.o .text.string_advance_index - 0x00000000c000593c 0x2e .obj/quickjs.o + 0x00000000c0005a2a 0x2e .obj/quickjs.o .text.js_string_find_invalid_codepoint.part.0 - 0x00000000c000596a 0x66 .obj/quickjs.o + 0x00000000c0005a58 0x66 .obj/quickjs.o .text.js_get_atom_index - 0x00000000c00059d0 0x5a .obj/quickjs.o + 0x00000000c0005abe 0x5a .obj/quickjs.o .text.gc_decref_child - 0x00000000c0005a2a 0x68 .obj/quickjs.o + 0x00000000c0005b18 0x68 .obj/quickjs.o .text.update_label - 0x00000000c0005a92 0x4c .obj/quickjs.o + 0x00000000c0005b80 0x4c .obj/quickjs.o .text.find_jump_target - 0x00000000c0005ade 0x120 .obj/quickjs.o + 0x00000000c0005bcc 0x120 .obj/quickjs.o .text.time_clip - 0x00000000c0005bfe 0x48 .obj/quickjs.o + 0x00000000c0005cec 0x48 .obj/quickjs.o .text.js_def_free - 0x00000000c0005c46 0x18 .obj/quickjs.o + 0x00000000c0005d34 0x18 .obj/quickjs.o .text.js_def_realloc - 0x00000000c0005c5e 0x3e .obj/quickjs.o + 0x00000000c0005d4c 0x3e .obj/quickjs.o .text.lre_js_is_ident_first - 0x00000000c0005c9c 0x2c .obj/quickjs.o + 0x00000000c0005d8a 0x2c .obj/quickjs.o .text.lre_js_is_ident_next - 0x00000000c0005cc8 0x4c .obj/quickjs.o + 0x00000000c0005db6 0x4c .obj/quickjs.o .text.simple_next_token - 0x00000000c0005d14 0x244 .obj/quickjs.o + 0x00000000c0005e02 0x244 .obj/quickjs.o .text.peek_token - 0x00000000c0005f58 0x14 .obj/quickjs.o + 0x00000000c0006046 0x14 .obj/quickjs.o .text.JS_WriteString - 0x00000000c0005f6c 0xa2 .obj/quickjs.o + 0x00000000c000605a 0xa2 .obj/quickjs.o .text.set_eval_ret_undefined - 0x00000000c000600e 0x36 .obj/quickjs.o + 0x00000000c00060fc 0x36 .obj/quickjs.o .text.js_cmp_doubles - 0x00000000c0006044 0x42 .obj/quickjs.o + 0x00000000c0006132 0x42 .obj/quickjs.o .text.js_TA_cmp_float64 - 0x00000000c0006086 0x6 .obj/quickjs.o + 0x00000000c0006174 0x6 .obj/quickjs.o .text.js_TA_cmp_float32 - 0x00000000c000608c 0x12 .obj/quickjs.o + 0x00000000c000617a 0x12 .obj/quickjs.o .text.string_get_month - 0x00000000c000609e 0xa6 .obj/quickjs.o + 0x00000000c000618c 0xa6 .obj/quickjs.o .text.string_get_fixed_width_digits.constprop.0 - 0x00000000c0006144 0x84 .obj/quickjs.o + 0x00000000c0006232 0x84 .obj/quickjs.o .text.delete_weak_ref.constprop.0 - 0x00000000c00061c8 0x34 .obj/quickjs.o + 0x00000000c00062b6 0x34 .obj/quickjs.o .text.optimize_scope_make_ref.constprop.0 - 0x00000000c00061fc 0xda .obj/quickjs.o + 0x00000000c00062ea 0xda .obj/quickjs.o .text.find_private_class_field.constprop.0 - 0x00000000c00062d6 0x30 .obj/quickjs.o + 0x00000000c00063c4 0x30 .obj/quickjs.o .text.find_lexical_decl.constprop.0 - 0x00000000c0006306 0x5c .obj/quickjs.o + 0x00000000c00063f4 0x5c .obj/quickjs.o .text.JS_CompactBigInt1.constprop.0 - 0x00000000c0006362 0x50 .obj/quickjs.o + 0x00000000c0006450 0x50 .obj/quickjs.o .text.js_get_fast_array.constprop.0 - 0x00000000c00063b2 0x36 .obj/quickjs.o + 0x00000000c00064a0 0x36 .obj/quickjs.o .text.copy_str16.constprop.0 - 0x00000000c00063e8 0x36 .obj/quickjs.o + 0x00000000c00064d6 0x36 .obj/quickjs.o .text.js_fcvt1.constprop.0 - 0x00000000c000641e 0x66 .obj/quickjs.o + 0x00000000c000650c 0x66 .obj/quickjs.o .text.js_ecvt1.constprop.0 - 0x00000000c0006484 0xb0 .obj/quickjs.o + 0x00000000c0006572 0xb0 .obj/quickjs.o .text.JS_AtomGetStrRT.constprop.0 - 0x00000000c0006534 0x136 .obj/quickjs.o + 0x00000000c0006622 0x136 .obj/quickjs.o .text.JS_AtomGetStr.constprop.0 - 0x00000000c000666a 0x4 .obj/quickjs.o + 0x00000000c0006758 0x4 .obj/quickjs.o .text.JS_DupValue.constprop.0 - 0x00000000c000666e 0x1a .obj/quickjs.o + 0x00000000c000675c 0x1a .obj/quickjs.o .text.js_promise_finally_value_thunk - 0x00000000c0006688 0xe .obj/quickjs.o + 0x00000000c0006776 0xe .obj/quickjs.o .text.js_iterator_proto_iterator - 0x00000000c0006696 0xa .obj/quickjs.o + 0x00000000c0006784 0xa .obj/quickjs.o .text.js_get_this - 0x00000000c00066a0 0xa .obj/quickjs.o + 0x00000000c000678e 0xa .obj/quickjs.o .text.bf_delete - 0x00000000c00066aa 0x12 .obj/quickjs.o + 0x00000000c0006798 0x12 .obj/quickjs.o .text.JS_ToBigFloat - 0x00000000c00066bc 0x70 .obj/quickjs.o + 0x00000000c00067aa 0x70 .obj/quickjs.o .text.js_object_has_name.constprop.0.isra.0 - 0x00000000c000672c 0x74 .obj/quickjs.o + 0x00000000c000681a 0x74 .obj/quickjs.o .text.JS_NewModuleValue - 0x00000000c00067a0 0x10 .obj/quickjs.o + 0x00000000c000688e 0x10 .obj/quickjs.o .text.js_def_malloc_usable_size - 0x00000000c00067b0 0x4 .obj/quickjs.o + 0x00000000c000689e 0x4 .obj/quickjs.o .text.js_bytecode_function_mark - 0x00000000c00067b4 0x6e .obj/quickjs.o + 0x00000000c00068a2 0x6e .obj/quickjs.o .text.js_typed_array_mark - 0x00000000c0006822 0x14 .obj/quickjs.o + 0x00000000c0006910 0x14 .obj/quickjs.o .text.find_var - 0x00000000c0006836 0x48 .obj/quickjs.o + 0x00000000c0006924 0x48 .obj/quickjs.o .text.days_from_year - 0x00000000c000687e 0x82 .obj/quickjs.o + 0x00000000c000696c 0x82 .obj/quickjs.o .text.set_date_fields - 0x00000000c0006900 0x118 .obj/quickjs.o + 0x00000000c00069ee 0x118 .obj/quickjs.o .text.js_string_memcmp - 0x00000000c0006a18 0x94 .obj/quickjs.o + 0x00000000c0006b06 0x94 .obj/quickjs.o .text.js_string_compare.constprop.0 - 0x00000000c0006aac 0x58 .obj/quickjs.o + 0x00000000c0006b9a 0x58 .obj/quickjs.o .text.print_hex - 0x00000000c0006b04 0x5e .obj/quickjs.o - 0x00000000c0006b04 print_hex + 0x00000000c0006bf2 0x5e .obj/quickjs.o + 0x00000000c0006bf2 print_hex .text.js_malloc_rt - 0x00000000c0006b62 0x8 .obj/quickjs.o - 0x00000000c0006b62 js_malloc_rt + 0x00000000c0006c50 0x8 .obj/quickjs.o + 0x00000000c0006c50 js_malloc_rt .text.js_alloc_string_rt - 0x00000000c0006b6a 0x3c .obj/quickjs.o + 0x00000000c0006c58 0x3c .obj/quickjs.o .text.js_free_rt - 0x00000000c0006ba6 0x8 .obj/quickjs.o - 0x00000000c0006ba6 js_free_rt + 0x00000000c0006c94 0x8 .obj/quickjs.o + 0x00000000c0006c94 js_free_rt .text.JS_FreeAtomStruct - 0x00000000c0006bae 0xb4 .obj/quickjs.o + 0x00000000c0006c9c 0xb4 .obj/quickjs.o .text.__JS_FreeAtom - 0x00000000c0006c62 0x1e .obj/quickjs.o + 0x00000000c0006d50 0x1e .obj/quickjs.o .text.js_free_string - 0x00000000c0006c80 0x1e .obj/quickjs.o + 0x00000000c0006d6e 0x1e .obj/quickjs.o .text.map_decref_record - 0x00000000c0006c9e 0x42 .obj/quickjs.o + 0x00000000c0006d8c 0x42 .obj/quickjs.o .text.js_array_buffer_finalizer - 0x00000000c0006ce0 0x7c .obj/quickjs.o + 0x00000000c0006dce 0x7c .obj/quickjs.o .text.js_array_buffer_free - 0x00000000c0006d5c 0x4 .obj/quickjs.o + 0x00000000c0006e4a 0x4 .obj/quickjs.o .text.js_malloc_usable_size_rt - 0x00000000c0006d60 0x6 .obj/quickjs.o - 0x00000000c0006d60 js_malloc_usable_size_rt + 0x00000000c0006e4e 0x6 .obj/quickjs.o + 0x00000000c0006e4e js_malloc_usable_size_rt .text.js_mallocz_rt - 0x00000000c0006d66 0x1e .obj/quickjs.o - 0x00000000c0006d66 js_mallocz_rt + 0x00000000c0006e54 0x1e .obj/quickjs.o + 0x00000000c0006e54 js_mallocz_rt .text.JS_ResizeAtomHash - 0x00000000c0006d84 0xb6 .obj/quickjs.o - .text.js_free 0x00000000c0006e3a 0x6 .obj/quickjs.o - 0x00000000c0006e3a js_free + 0x00000000c0006e72 0xb6 .obj/quickjs.o + .text.js_free 0x00000000c0006f28 0x6 .obj/quickjs.o + 0x00000000c0006f28 js_free .text.string_buffer_set_error - 0x00000000c0006e40 0x26 .obj/quickjs.o + 0x00000000c0006f2e 0x26 .obj/quickjs.o .text.string_buffer_free - 0x00000000c0006e66 0x1c .obj/quickjs.o + 0x00000000c0006f54 0x1c .obj/quickjs.o .text.js_malloc_usable_size - 0x00000000c0006e82 0x4 .obj/quickjs.o - 0x00000000c0006e82 js_malloc_usable_size + 0x00000000c0006f70 0x4 .obj/quickjs.o + 0x00000000c0006f70 js_malloc_usable_size .text.JS_GetRuntimeOpaque - 0x00000000c0006e86 0x6 .obj/quickjs.o - 0x00000000c0006e86 JS_GetRuntimeOpaque + 0x00000000c0006f74 0x6 .obj/quickjs.o + 0x00000000c0006f74 JS_GetRuntimeOpaque .text.JS_SetRuntimeOpaque - 0x00000000c0006e8c 0x6 .obj/quickjs.o - 0x00000000c0006e8c JS_SetRuntimeOpaque + 0x00000000c0006f7a 0x6 .obj/quickjs.o + 0x00000000c0006f7a JS_SetRuntimeOpaque .text.JS_SetMemoryLimit - 0x00000000c0006e92 0x4 .obj/quickjs.o - 0x00000000c0006e92 JS_SetMemoryLimit + 0x00000000c0006f80 0x4 .obj/quickjs.o + 0x00000000c0006f80 JS_SetMemoryLimit .text.JS_SetGCThreshold - 0x00000000c0006e96 0x4 .obj/quickjs.o - 0x00000000c0006e96 JS_SetGCThreshold + 0x00000000c0006f84 0x4 .obj/quickjs.o + 0x00000000c0006f84 JS_SetGCThreshold .text.JS_SetInterruptHandler - 0x00000000c0006e9a 0xa .obj/quickjs.o - 0x00000000c0006e9a JS_SetInterruptHandler + 0x00000000c0006f88 0xa .obj/quickjs.o + 0x00000000c0006f88 JS_SetInterruptHandler .text.JS_SetCanBlock - 0x00000000c0006ea4 0x6 .obj/quickjs.o - 0x00000000c0006ea4 JS_SetCanBlock + 0x00000000c0006f92 0x6 .obj/quickjs.o + 0x00000000c0006f92 JS_SetCanBlock .text.JS_SetSharedArrayBufferFunctions - 0x00000000c0006eaa 0x16 .obj/quickjs.o - 0x00000000c0006eaa JS_SetSharedArrayBufferFunctions + 0x00000000c0006f98 0x16 .obj/quickjs.o + 0x00000000c0006f98 JS_SetSharedArrayBufferFunctions .text.JS_IsJobPending - 0x00000000c0006ec0 0x10 .obj/quickjs.o - 0x00000000c0006ec0 JS_IsJobPending + 0x00000000c0006fae 0x10 .obj/quickjs.o + 0x00000000c0006fae JS_IsJobPending .text.JS_SetRuntimeInfo - 0x00000000c0006ed0 0x6 .obj/quickjs.o - 0x00000000c0006ed0 JS_SetRuntimeInfo + 0x00000000c0006fbe 0x6 .obj/quickjs.o + 0x00000000c0006fbe JS_SetRuntimeInfo .text.JS_GetContextOpaque - 0x00000000c0006ed6 0x6 .obj/quickjs.o - 0x00000000c0006ed6 JS_GetContextOpaque + 0x00000000c0006fc4 0x6 .obj/quickjs.o + 0x00000000c0006fc4 JS_GetContextOpaque .text.JS_SetContextOpaque - 0x00000000c0006edc 0x6 .obj/quickjs.o - 0x00000000c0006edc JS_SetContextOpaque + 0x00000000c0006fca 0x6 .obj/quickjs.o + 0x00000000c0006fca JS_SetContextOpaque .text.JS_GetClassProto - 0x00000000c0006ee2 0x34 .obj/quickjs.o - 0x00000000c0006ee2 JS_GetClassProto + 0x00000000c0006fd0 0x34 .obj/quickjs.o + 0x00000000c0006fd0 JS_GetClassProto .text.JS_DupContext - 0x00000000c0006f16 0x8 .obj/quickjs.o - 0x00000000c0006f16 JS_DupContext + 0x00000000c0007004 0x8 .obj/quickjs.o + 0x00000000c0007004 JS_DupContext .text.JS_GetRuntime - 0x00000000c0006f1e 0x4 .obj/quickjs.o - 0x00000000c0006f1e JS_GetRuntime + 0x00000000c000700c 0x4 .obj/quickjs.o + 0x00000000c000700c JS_GetRuntime .text.JS_SetMaxStackSize - 0x00000000c0006f22 0xe .obj/quickjs.o - 0x00000000c0006f22 JS_SetMaxStackSize + 0x00000000c0007010 0xe .obj/quickjs.o + 0x00000000c0007010 JS_SetMaxStackSize .text.JS_UpdateStackTop - 0x00000000c0006f30 0x10 .obj/quickjs.o - 0x00000000c0006f30 JS_UpdateStackTop + 0x00000000c000701e 0x10 .obj/quickjs.o + 0x00000000c000701e JS_UpdateStackTop .text.hash_string8 - 0x00000000c0006f40 0x22 .obj/quickjs.o - 0x00000000c0006f40 hash_string8 + 0x00000000c000702e 0x22 .obj/quickjs.o + 0x00000000c000702e hash_string8 .text.hash_string - 0x00000000c0006f62 0x34 .obj/quickjs.o + 0x00000000c0007050 0x34 .obj/quickjs.o .text.__JS_NewAtom - 0x00000000c0006f96 0x2e6 .obj/quickjs.o + 0x00000000c0007084 0x2e6 .obj/quickjs.o .text.__JS_NewAtomInit - 0x00000000c000727c 0x5a .obj/quickjs.o + 0x00000000c000736a 0x5a .obj/quickjs.o .text.JS_NewAtomStr - 0x00000000c00072d6 0x42 .obj/quickjs.o + 0x00000000c00073c4 0x42 .obj/quickjs.o .text.map_hash_key.constprop.0 - 0x00000000c0007318 0x96 .obj/quickjs.o + 0x00000000c0007406 0x96 .obj/quickjs.o .text.__JS_FindAtom.constprop.0 - 0x00000000c00073ae 0x11c .obj/quickjs.o + 0x00000000c000749c 0x11c .obj/quickjs.o .text.JS_DupAtom - 0x00000000c00074ca 0x24 .obj/quickjs.o - 0x00000000c00074ca JS_DupAtom + 0x00000000c00075b8 0x24 .obj/quickjs.o + 0x00000000c00075b8 JS_DupAtom .text.emit_atom - 0x00000000c00074ee 0x1e .obj/quickjs.o + 0x00000000c00075dc 0x1e .obj/quickjs.o .text.JS_FreeAtom - 0x00000000c000750c 0x10 .obj/quickjs.o - 0x00000000c000750c JS_FreeAtom + 0x00000000c00075fa 0x10 .obj/quickjs.o + 0x00000000c00075fa JS_FreeAtom .text.js_free_prop_enum - 0x00000000c000751c 0x42 .obj/quickjs.o + 0x00000000c000760a 0x42 .obj/quickjs.o .text.put_lvalue - 0x00000000c000755e 0x1d8 .obj/quickjs.o + 0x00000000c000764c 0x1d8 .obj/quickjs.o .text.set_object_name - 0x00000000c0007736 0x10c .obj/quickjs.o + 0x00000000c0007824 0x10c .obj/quickjs.o .text.skip_dead_code - 0x00000000c0007842 0x190 .obj/quickjs.o + 0x00000000c0007930 0x190 .obj/quickjs.o .text.JS_FreeAtomRT - 0x00000000c00079d2 0xe .obj/quickjs.o - 0x00000000c00079d2 JS_FreeAtomRT + 0x00000000c0007ac0 0xe .obj/quickjs.o + 0x00000000c0007ac0 JS_FreeAtomRT .text.free_bytecode_atoms - 0x00000000c00079e0 0xa2 .obj/quickjs.o + 0x00000000c0007ace 0xa2 .obj/quickjs.o .text.JS_NewClassID - 0x00000000c0007a82 0x1a .obj/quickjs.o - 0x00000000c0007a82 JS_NewClassID + 0x00000000c0007b70 0x1a .obj/quickjs.o + 0x00000000c0007b70 JS_NewClassID .text.JS_IsRegisteredClass - 0x00000000c0007a9c 0x22 .obj/quickjs.o - 0x00000000c0007a9c JS_IsRegisteredClass + 0x00000000c0007b8a 0x22 .obj/quickjs.o + 0x00000000c0007b8a JS_IsRegisteredClass .text.JS_NewClass - 0x00000000c0007abe 0x70 .obj/quickjs.o - 0x00000000c0007abe JS_NewClass + 0x00000000c0007bac 0x70 .obj/quickjs.o + 0x00000000c0007bac JS_NewClass .text.__JS_FreeValue - 0x00000000c0007b2e 0xa .obj/quickjs.o - 0x00000000c0007b2e __JS_FreeValue + 0x00000000c0007c1c 0xa .obj/quickjs.o + 0x00000000c0007c1c __JS_FreeValue .text.JS_FreeValue - 0x00000000c0007b38 0x24 .obj/quickjs.o + 0x00000000c0007c26 0x24 .obj/quickjs.o .text.js_strict_eq2 - 0x00000000c0007b5c 0x166 .obj/quickjs.o + 0x00000000c0007c4a 0x166 .obj/quickjs.o .text.js_same_value - 0x00000000c0007cc2 0x36 .obj/quickjs.o + 0x00000000c0007db0 0x36 .obj/quickjs.o .text.js_object_is - 0x00000000c0007cf8 0x24 .obj/quickjs.o + 0x00000000c0007de6 0x24 .obj/quickjs.o .text.map_find_record - 0x00000000c0007d1c 0x8e .obj/quickjs.o + 0x00000000c0007e0a 0x8e .obj/quickjs.o .text.js_strict_eq_slow - 0x00000000c0007daa 0x4c .obj/quickjs.o + 0x00000000c0007e98 0x4c .obj/quickjs.o .text.free_arg_list - 0x00000000c0007df6 0x3e .obj/quickjs.o + 0x00000000c0007ee4 0x3e .obj/quickjs.o .text.js_free_desc - 0x00000000c0007e34 0x30 .obj/quickjs.o + 0x00000000c0007f22 0x30 .obj/quickjs.o .text.JS_ToBoolFree - 0x00000000c0007e64 0xa0 .obj/quickjs.o + 0x00000000c0007f52 0xa0 .obj/quickjs.o .text.js_method_set_home_object - 0x00000000c0007f04 0x66 .obj/quickjs.o + 0x00000000c0007ff2 0x66 .obj/quickjs.o .text.JS_FreeBigInt - 0x00000000c0007f6a 0x18 .obj/quickjs.o + 0x00000000c0008058 0x18 .obj/quickjs.o .text.set_value - 0x00000000c0007f82 0x14 .obj/quickjs.o + 0x00000000c0008070 0x14 .obj/quickjs.o .text.JS_SetClassProto - 0x00000000c0007f96 0x36 .obj/quickjs.o - 0x00000000c0007f96 JS_SetClassProto + 0x00000000c0008084 0x36 .obj/quickjs.o + 0x00000000c0008084 JS_SetClassProto .text.JS_ExecutePendingJob - 0x00000000c0007fcc 0x8a .obj/quickjs.o - 0x00000000c0007fcc JS_ExecutePendingJob + 0x00000000c00080ba 0x8a .obj/quickjs.o + 0x00000000c00080ba JS_ExecutePendingJob .text.JS_FreeContext - 0x00000000c0008056 0x150 .obj/quickjs.o - 0x00000000c0008056 JS_FreeContext + 0x00000000c0008144 0x150 .obj/quickjs.o + 0x00000000c0008144 JS_FreeContext .text.js_c_function_finalizer - 0x00000000c00081a6 0x14 .obj/quickjs.o + 0x00000000c0008294 0x14 .obj/quickjs.o .text.free_property - 0x00000000c00081ba 0x7c .obj/quickjs.o + 0x00000000c00082a8 0x7c .obj/quickjs.o .text.free_gc_object - 0x00000000c0008236 0x22e .obj/quickjs.o + 0x00000000c0008324 0x22e .obj/quickjs.o .text.free_zero_refcount - 0x00000000c0008464 0x4e .obj/quickjs.o + 0x00000000c0008552 0x4e .obj/quickjs.o .text.async_func_free - 0x00000000c00084b2 0x60 .obj/quickjs.o + 0x00000000c00085a0 0x60 .obj/quickjs.o .text.close_var_refs - 0x00000000c0008512 0x82 .obj/quickjs.o + 0x00000000c0008600 0x82 .obj/quickjs.o .text.free_generator_stack_rt - 0x00000000c0008594 0x2a .obj/quickjs.o + 0x00000000c0008682 0x2a .obj/quickjs.o .text.js_async_generator_complete - 0x00000000c00085be 0x28 .obj/quickjs.o + 0x00000000c00086ac 0x28 .obj/quickjs.o .text.js_async_function_resolve_finalizer - 0x00000000c00085e6 0x14 .obj/quickjs.o + 0x00000000c00086d4 0x14 .obj/quickjs.o .text.__JS_FreeValueRT - 0x00000000c00085fa 0xbe .obj/quickjs.o - 0x00000000c00085fa __JS_FreeValueRT + 0x00000000c00086e8 0xbe .obj/quickjs.o + 0x00000000c00086e8 __JS_FreeValueRT .text.JS_FreeValueRT - 0x00000000c00086b8 0x26 .obj/quickjs.o + 0x00000000c00087a6 0x26 .obj/quickjs.o .text.promise_reaction_data_free - 0x00000000c00086de 0x38 .obj/quickjs.o + 0x00000000c00087cc 0x38 .obj/quickjs.o .text.js_free_shape - 0x00000000c0008716 0x98 .obj/quickjs.o + 0x00000000c0008804 0x98 .obj/quickjs.o .text.free_var_ref - 0x00000000c00087ae 0x78 .obj/quickjs.o + 0x00000000c000889c 0x78 .obj/quickjs.o .text.js_free_module_def - 0x00000000c0008826 0x112 .obj/quickjs.o + 0x00000000c0008914 0x112 .obj/quickjs.o .text.js_free_modules - 0x00000000c0008938 0x44 .obj/quickjs.o + 0x00000000c0008a26 0x44 .obj/quickjs.o .text.async_func_free_frame - 0x00000000c000897c 0x7a .obj/quickjs.o + 0x00000000c0008a6a 0x7a .obj/quickjs.o .text.js_regexp_string_iterator_finalizer - 0x00000000c00089f6 0x3e .obj/quickjs.o + 0x00000000c0008ae4 0x3e .obj/quickjs.o .text.js_array_iterator_finalizer - 0x00000000c0008a34 0x34 .obj/quickjs.o + 0x00000000c0008b22 0x34 .obj/quickjs.o .text.js_map_finalizer - 0x00000000c0008a68 0x96 .obj/quickjs.o + 0x00000000c0008b56 0x96 .obj/quickjs.o .text.js_typed_array_finalizer - 0x00000000c0008afe 0x40 .obj/quickjs.o + 0x00000000c0008bec 0x40 .obj/quickjs.o .text.js_regexp_finalizer - 0x00000000c0008b3e 0x30 .obj/quickjs.o + 0x00000000c0008c2c 0x30 .obj/quickjs.o .text.js_for_in_iterator_finalizer - 0x00000000c0008b6e 0x56 .obj/quickjs.o + 0x00000000c0008c5c 0x56 .obj/quickjs.o .text.js_bound_function_finalizer - 0x00000000c0008bc4 0x54 .obj/quickjs.o + 0x00000000c0008cb2 0x54 .obj/quickjs.o .text.js_bytecode_function_finalizer - 0x00000000c0008c18 0x82 .obj/quickjs.o + 0x00000000c0008d06 0x82 .obj/quickjs.o .text.js_object_data_finalizer - 0x00000000c0008c9a 0x24 .obj/quickjs.o + 0x00000000c0008d88 0x24 .obj/quickjs.o .text.js_array_finalizer - 0x00000000c0008cbe 0x3a .obj/quickjs.o + 0x00000000c0008dac 0x3a .obj/quickjs.o .text.map_delete_record.part.0 - 0x00000000c0008cf8 0x78 .obj/quickjs.o + 0x00000000c0008de6 0x78 .obj/quickjs.o .text.js_async_generator_free - 0x00000000c0008d70 0x7a .obj/quickjs.o + 0x00000000c0008e5e 0x7a .obj/quickjs.o .text.js_promise_resolve_function_finalizer - 0x00000000c0008dea 0x46 .obj/quickjs.o + 0x00000000c0008ed8 0x46 .obj/quickjs.o .text.js_map_iterator_finalizer - 0x00000000c0008e30 0x50 .obj/quickjs.o + 0x00000000c0008f1e 0x50 .obj/quickjs.o .text.JS_FreeCString - 0x00000000c0008e80 0x12 .obj/quickjs.o - 0x00000000c0008e80 JS_FreeCString + 0x00000000c0008f6e 0x12 .obj/quickjs.o + 0x00000000c0008f6e JS_FreeCString .text.value_buffer_free - 0x00000000c0008e92 0x48 .obj/quickjs.o + 0x00000000c0008f80 0x48 .obj/quickjs.o .text.free_token - 0x00000000c0008eda 0x88 .obj/quickjs.o + 0x00000000c0008fc8 0x88 .obj/quickjs.o .text.js_free_function_def - 0x00000000c0008f62 0x17a .obj/quickjs.o + 0x00000000c0009050 0x17a .obj/quickjs.o .text.js_compare_bigfloat - 0x00000000c00090dc 0xf2 .obj/quickjs.o + 0x00000000c00091ca 0xf2 .obj/quickjs.o .text.JS_MarkValue - 0x00000000c00091ce 0x12 .obj/quickjs.o - 0x00000000c00091ce JS_MarkValue + 0x00000000c00092bc 0x12 .obj/quickjs.o + 0x00000000c00092bc JS_MarkValue .text.js_regexp_string_iterator_mark - 0x00000000c00091e0 0x40 .obj/quickjs.o + 0x00000000c00092ce 0x40 .obj/quickjs.o .text.js_array_iterator_mark - 0x00000000c0009220 0x18 .obj/quickjs.o + 0x00000000c000930e 0x18 .obj/quickjs.o .text.js_map_iterator_mark - 0x00000000c0009238 0x18 .obj/quickjs.o + 0x00000000c0009326 0x18 .obj/quickjs.o .text.js_map_mark - 0x00000000c0009250 0x64 .obj/quickjs.o + 0x00000000c000933e 0x64 .obj/quickjs.o .text.js_for_in_iterator_mark - 0x00000000c00092b4 0x12 .obj/quickjs.o + 0x00000000c00093a2 0x12 .obj/quickjs.o .text.js_bound_function_mark - 0x00000000c00092c6 0x58 .obj/quickjs.o + 0x00000000c00093b4 0x58 .obj/quickjs.o .text.js_object_data_mark - 0x00000000c000931e 0x12 .obj/quickjs.o + 0x00000000c000940c 0x12 .obj/quickjs.o .text.js_array_mark - 0x00000000c0009330 0x44 .obj/quickjs.o + 0x00000000c000941e 0x44 .obj/quickjs.o .text.mark_children - 0x00000000c0009374 0x378 .obj/quickjs.o + 0x00000000c0009462 0x378 .obj/quickjs.o .text.js_promise_resolve_function_mark - 0x00000000c00096ec 0x18 .obj/quickjs.o + 0x00000000c00097da 0x18 .obj/quickjs.o .text.JS_RunGC - 0x00000000c0009704 0x174 .obj/quickjs.o - 0x00000000c0009704 JS_RunGC + 0x00000000c00097f2 0x174 .obj/quickjs.o + 0x00000000c00097f2 JS_RunGC .text.JS_FreeRuntime - 0x00000000c0009878 0x110 .obj/quickjs.o - 0x00000000c0009878 JS_FreeRuntime + 0x00000000c0009966 0x110 .obj/quickjs.o + 0x00000000c0009966 JS_FreeRuntime .text.JS_NewRuntime2 - 0x00000000c0009988 0x210 .obj/quickjs.o - 0x00000000c0009988 JS_NewRuntime2 + 0x00000000c0009a76 0x210 .obj/quickjs.o + 0x00000000c0009a76 JS_NewRuntime2 .text.JS_NewRuntime - 0x00000000c0009b98 0xe .obj/quickjs.o - 0x00000000c0009b98 JS_NewRuntime + 0x00000000c0009c86 0xe .obj/quickjs.o + 0x00000000c0009c86 JS_NewRuntime .text.JS_IsLiveObject - 0x00000000c0009ba6 0x22 .obj/quickjs.o - 0x00000000c0009ba6 JS_IsLiveObject + 0x00000000c0009c94 0x22 .obj/quickjs.o + 0x00000000c0009c94 JS_IsLiveObject .text.JS_ComputeMemoryUsage - 0x00000000c0009bc8 0x674 .obj/quickjs.o - 0x00000000c0009bc8 JS_ComputeMemoryUsage + 0x00000000c0009cb6 0x674 .obj/quickjs.o + 0x00000000c0009cb6 JS_ComputeMemoryUsage .text.JS_DumpMemoryUsage - 0x00000000c000a23c 0x42e .obj/quickjs.o - 0x00000000c000a23c JS_DumpMemoryUsage + 0x00000000c000a32a 0x42e .obj/quickjs.o + 0x00000000c000a32a JS_DumpMemoryUsage .text.JS_GetGlobalObject - 0x00000000c000a66a 0x12 .obj/quickjs.o - 0x00000000c000a66a JS_GetGlobalObject + 0x00000000c000a758 0x12 .obj/quickjs.o + 0x00000000c000a758 JS_GetGlobalObject .text.JS_Throw - 0x00000000c000a67c 0x28 .obj/quickjs.o - 0x00000000c000a67c JS_Throw + 0x00000000c000a76a 0x28 .obj/quickjs.o + 0x00000000c000a76a JS_Throw .text.js_promise_finally_thrower - 0x00000000c000a6a4 0x24 .obj/quickjs.o + 0x00000000c000a792 0x24 .obj/quickjs.o .text.JS_GetException - 0x00000000c000a6c8 0x14 .obj/quickjs.o - 0x00000000c000a6c8 JS_GetException + 0x00000000c000a7b6 0x14 .obj/quickjs.o + 0x00000000c000a7b6 JS_GetException .text.JS_IsFunction - 0x00000000c000a6dc 0x4c .obj/quickjs.o - 0x00000000c000a6dc JS_IsFunction + 0x00000000c000a7ca 0x4c .obj/quickjs.o + 0x00000000c000a7ca JS_IsFunction .text.js_operator_typeof - 0x00000000c000a728 0x8a .obj/quickjs.o + 0x00000000c000a816 0x8a .obj/quickjs.o .text.JS_IsCFunction - 0x00000000c000a7b2 0x2e .obj/quickjs.o - 0x00000000c000a7b2 JS_IsCFunction + 0x00000000c000a8a0 0x2e .obj/quickjs.o + 0x00000000c000a8a0 JS_IsCFunction .text.JS_IsConstructor - 0x00000000c000a7e0 0x1a .obj/quickjs.o - 0x00000000c000a7e0 JS_IsConstructor + 0x00000000c000a8ce 0x1a .obj/quickjs.o + 0x00000000c000a8ce JS_IsConstructor .text.JS_SetConstructorBit - 0x00000000c000a7fa 0x28 .obj/quickjs.o - 0x00000000c000a7fa JS_SetConstructorBit + 0x00000000c000a8e8 0x28 .obj/quickjs.o + 0x00000000c000a8e8 JS_SetConstructorBit .text.JS_IsError - 0x00000000c000a822 0x1e .obj/quickjs.o - 0x00000000c000a822 JS_IsError + 0x00000000c000a910 0x1e .obj/quickjs.o + 0x00000000c000a910 JS_IsError .text.JS_IsUncatchableError - 0x00000000c000a840 0x26 .obj/quickjs.o - 0x00000000c000a840 JS_IsUncatchableError + 0x00000000c000a92e 0x26 .obj/quickjs.o + 0x00000000c000a92e JS_IsUncatchableError .text.JS_SetUncatchableError - 0x00000000c000a866 0x30 .obj/quickjs.o - 0x00000000c000a866 JS_SetUncatchableError + 0x00000000c000a954 0x30 .obj/quickjs.o + 0x00000000c000a954 JS_SetUncatchableError .text.JS_ResetUncatchableError - 0x00000000c000a896 0xc .obj/quickjs.o - 0x00000000c000a896 JS_ResetUncatchableError + 0x00000000c000a984 0xc .obj/quickjs.o + 0x00000000c000a984 JS_ResetUncatchableError .text.JS_SetOpaque - 0x00000000c000a8a2 0x10 .obj/quickjs.o - 0x00000000c000a8a2 JS_SetOpaque + 0x00000000c000a990 0x10 .obj/quickjs.o + 0x00000000c000a990 JS_SetOpaque .text.JS_GetOpaque - 0x00000000c000a8b2 0x24 .obj/quickjs.o - 0x00000000c000a8b2 JS_GetOpaque + 0x00000000c000a9a0 0x24 .obj/quickjs.o + 0x00000000c000a9a0 JS_GetOpaque .text.js_c_function_data_call - 0x00000000c000a8d6 0xaa .obj/quickjs.o + 0x00000000c000a9c4 0xaa .obj/quickjs.o .text.js_generator_finalizer - 0x00000000c000a980 0x38 .obj/quickjs.o + 0x00000000c000aa6e 0x38 .obj/quickjs.o .text.js_c_function_data_mark - 0x00000000c000a9b8 0x56 .obj/quickjs.o + 0x00000000c000aaa6 0x56 .obj/quickjs.o .text.js_c_function_data_finalizer - 0x00000000c000aa0e 0x5e .obj/quickjs.o + 0x00000000c000aafc 0x5e .obj/quickjs.o .text.js_proxy_revoke - 0x00000000c000aa6c 0x44 .obj/quickjs.o + 0x00000000c000ab5a 0x44 .obj/quickjs.o .text.js_proxy_mark - 0x00000000c000aab0 0x52 .obj/quickjs.o + 0x00000000c000ab9e 0x52 .obj/quickjs.o .text.js_proxy_finalizer - 0x00000000c000ab02 0x4e .obj/quickjs.o + 0x00000000c000abf0 0x4e .obj/quickjs.o .text.js_async_generator_mark - 0x00000000c000ab50 0x90 .obj/quickjs.o + 0x00000000c000ac3e 0x90 .obj/quickjs.o .text.js_async_generator_finalizer - 0x00000000c000abe0 0x2e .obj/quickjs.o + 0x00000000c000acce 0x2e .obj/quickjs.o .text.js_async_from_sync_iterator_mark - 0x00000000c000ac0e 0x52 .obj/quickjs.o + 0x00000000c000acfc 0x52 .obj/quickjs.o .text.js_async_from_sync_iterator_finalizer - 0x00000000c000ac60 0x4e .obj/quickjs.o + 0x00000000c000ad4e 0x4e .obj/quickjs.o .text.js_promise_mark - 0x00000000c000acae 0xd4 .obj/quickjs.o + 0x00000000c000ad9c 0xd4 .obj/quickjs.o .text.js_promise_finalizer - 0x00000000c000ad82 0x88 .obj/quickjs.o + 0x00000000c000ae70 0x88 .obj/quickjs.o .text.JS_SetIsHTMLDDA - 0x00000000c000ae0a 0x1e .obj/quickjs.o - 0x00000000c000ae0a JS_SetIsHTMLDDA + 0x00000000c000aef8 0x1e .obj/quickjs.o + 0x00000000c000aef8 JS_SetIsHTMLDDA .text.JS_ToBool - 0x00000000c000ae28 0x20 .obj/quickjs.o - 0x00000000c000ae28 JS_ToBool + 0x00000000c000af16 0x20 .obj/quickjs.o + 0x00000000c000af16 JS_ToBool .text.JS_DetectModule - 0x00000000c000ae48 0x4e .obj/quickjs.o - 0x00000000c000ae48 JS_DetectModule + 0x00000000c000af36 0x4e .obj/quickjs.o + 0x00000000c000af36 JS_DetectModule .text.JS_SetModuleLoaderFunc - 0x00000000c000ae96 0xe .obj/quickjs.o - 0x00000000c000ae96 JS_SetModuleLoaderFunc + 0x00000000c000af84 0xe .obj/quickjs.o + 0x00000000c000af84 JS_SetModuleLoaderFunc .text.JS_GetScriptOrModuleName - 0x00000000c000aea4 0x72 .obj/quickjs.o - 0x00000000c000aea4 JS_GetScriptOrModuleName + 0x00000000c000af92 0x72 .obj/quickjs.o + 0x00000000c000af92 JS_GetScriptOrModuleName .text.JS_GetModuleName - 0x00000000c000af16 0x6 .obj/quickjs.o - 0x00000000c000af16 JS_GetModuleName + 0x00000000c000b004 0x6 .obj/quickjs.o + 0x00000000c000b004 JS_GetModuleName .text.lre_check_stack_overflow - 0x00000000c000af1c 0x4 .obj/quickjs.o - 0x00000000c000af1c lre_check_stack_overflow + 0x00000000c000b00a 0x4 .obj/quickjs.o + 0x00000000c000b00a lre_check_stack_overflow .text.lre_realloc - 0x00000000c000af20 0x6 .obj/quickjs.o - 0x00000000c000af20 lre_realloc + 0x00000000c000b00e 0x6 .obj/quickjs.o + 0x00000000c000b00e lre_realloc .text.JS_AddIntrinsicRegExpCompiler - 0x00000000c000af26 0xe .obj/quickjs.o - 0x00000000c000af26 JS_AddIntrinsicRegExpCompiler + 0x00000000c000b014 0xe .obj/quickjs.o + 0x00000000c000b014 JS_AddIntrinsicRegExpCompiler .text.JS_PromiseState - 0x00000000c000af34 0x24 .obj/quickjs.o - 0x00000000c000af34 JS_PromiseState + 0x00000000c000b022 0x24 .obj/quickjs.o + 0x00000000c000b022 JS_PromiseState .text.JS_PromiseResult - 0x00000000c000af58 0x2e .obj/quickjs.o - 0x00000000c000af58 JS_PromiseResult + 0x00000000c000b046 0x2e .obj/quickjs.o + 0x00000000c000b046 JS_PromiseResult .text.JS_SetHostPromiseRejectionTracker - 0x00000000c000af86 0xa .obj/quickjs.o - 0x00000000c000af86 JS_SetHostPromiseRejectionTracker + 0x00000000c000b074 0xa .obj/quickjs.o + 0x00000000c000b074 JS_SetHostPromiseRejectionTracker .text.JS_NewPromiseCapability - 0x00000000c000af90 0xc .obj/quickjs.o - 0x00000000c000af90 JS_NewPromiseCapability + 0x00000000c000b07e 0xc .obj/quickjs.o + 0x00000000c000b07e JS_NewPromiseCapability .text.JS_CallInternal - 0x00000000c000af9c 0x6870 .obj/quickjs.o + 0x00000000c000b08a 0x6870 .obj/quickjs.o .text.JS_CallFree - 0x00000000c001180c 0x36 .obj/quickjs.o + 0x00000000c00118fa 0x36 .obj/quickjs.o .text.JS_GetPropertyInternal - 0x00000000c0011842 0x364 .obj/quickjs.o - 0x00000000c0011842 JS_GetPropertyInternal + 0x00000000c0011930 0x364 .obj/quickjs.o + 0x00000000c0011930 JS_GetPropertyInternal .text.JS_IteratorGetCompleteValue - 0x00000000c0011ba6 0x82 .obj/quickjs.o + 0x00000000c0011c94 0x82 .obj/quickjs.o .text.js_is_regexp - 0x00000000c0011c28 0x80 .obj/quickjs.o + 0x00000000c0011d16 0x80 .obj/quickjs.o .text.JS_GetPropertyValue - 0x00000000c0011ca8 0x224 .obj/quickjs.o + 0x00000000c0011d96 0x224 .obj/quickjs.o .text.JS_GetPropertyUint32 - 0x00000000c0011ecc 0x38 .obj/quickjs.o - 0x00000000c0011ecc JS_GetPropertyUint32 + 0x00000000c0011fba 0x38 .obj/quickjs.o + 0x00000000c0011fba JS_GetPropertyUint32 .text.JS_GetOwnPropertyInternal - 0x00000000c0011f04 0x1da .obj/quickjs.o + 0x00000000c0011ff2 0x1da .obj/quickjs.o .text.JS_SetPropertyInternal - 0x00000000c00120de 0x5aa .obj/quickjs.o - 0x00000000c00120de JS_SetPropertyInternal + 0x00000000c00121cc 0x5aa .obj/quickjs.o + 0x00000000c00121cc JS_SetPropertyInternal .text.JS_SetPropertyValue - 0x00000000c0012688 0x218 .obj/quickjs.o + 0x00000000c0012776 0x218 .obj/quickjs.o .text.JS_SetPropertyUint32 - 0x00000000c00128a0 0x42 .obj/quickjs.o - 0x00000000c00128a0 JS_SetPropertyUint32 + 0x00000000c001298e 0x42 .obj/quickjs.o + 0x00000000c001298e JS_SetPropertyUint32 .text.JS_DefineProperty - 0x00000000c00128e2 0x6d4 .obj/quickjs.o - 0x00000000c00128e2 JS_DefineProperty + 0x00000000c00129d0 0x6d4 .obj/quickjs.o + 0x00000000c00129d0 JS_DefineProperty .text.JS_DefinePropertyValue - 0x00000000c0012fb6 0x40 .obj/quickjs.o - 0x00000000c0012fb6 JS_DefinePropertyValue + 0x00000000c00130a4 0x40 .obj/quickjs.o + 0x00000000c00130a4 JS_DefinePropertyValue .text.JS_ThrowError2 - 0x00000000c0012ff6 0x90 .obj/quickjs.o + 0x00000000c00130e4 0x90 .obj/quickjs.o .text.JS_ThrowError - 0x00000000c0013086 0x42 .obj/quickjs.o + 0x00000000c0013174 0x42 .obj/quickjs.o .text.JS_ThrowTypeErrorOrFalse - 0x00000000c00130c8 0x44 .obj/quickjs.o + 0x00000000c00131b6 0x44 .obj/quickjs.o .text.JS_ThrowSyntaxError - 0x00000000c001310c 0x2a .obj/quickjs.o - 0x00000000c001310c JS_ThrowSyntaxError + 0x00000000c00131fa 0x2a .obj/quickjs.o + 0x00000000c00131fa JS_ThrowSyntaxError .text.__JS_ThrowSyntaxErrorAtom - 0x00000000c0013136 0x36 .obj/quickjs.o + 0x00000000c0013224 0x36 .obj/quickjs.o .text.js_resolve_export_throw_error - 0x00000000c001316c 0x92 .obj/quickjs.o + 0x00000000c001325a 0x92 .obj/quickjs.o .text.bc_read_error_end - 0x00000000c00131fe 0x28 .obj/quickjs.o + 0x00000000c00132ec 0x28 .obj/quickjs.o .text.bc_get_u8 - 0x00000000c0013226 0x24 .obj/quickjs.o + 0x00000000c0013314 0x24 .obj/quickjs.o .text.bc_get_leb128 - 0x00000000c001324a 0x32 .obj/quickjs.o + 0x00000000c0013338 0x32 .obj/quickjs.o .text.bc_get_leb128_u16 - 0x00000000c001327c 0x26 .obj/quickjs.o + 0x00000000c001336a 0x26 .obj/quickjs.o .text.bc_get_u64 - 0x00000000c00132a2 0x5c .obj/quickjs.o + 0x00000000c0013390 0x5c .obj/quickjs.o .text.bc_get_buf - 0x00000000c00132fe 0x4a .obj/quickjs.o + 0x00000000c00133ec 0x4a .obj/quickjs.o .text.bc_idx_to_atom - 0x00000000c0013348 0x6c .obj/quickjs.o + 0x00000000c0013436 0x6c .obj/quickjs.o .text.bc_get_atom - 0x00000000c00133b4 0x42 .obj/quickjs.o + 0x00000000c00134a2 0x42 .obj/quickjs.o .text.JS_ThrowTypeError - 0x00000000c00133f6 0x2a .obj/quickjs.o - 0x00000000c00133f6 JS_ThrowTypeError + 0x00000000c00134e4 0x2a .obj/quickjs.o + 0x00000000c00134e4 JS_ThrowTypeError .text.call_setter - 0x00000000c0013420 0x88 .obj/quickjs.o + 0x00000000c001350e 0x88 .obj/quickjs.o .text.check_function - 0x00000000c00134a8 0x2a .obj/quickjs.o + 0x00000000c0013596 0x2a .obj/quickjs.o .text.__JS_ThrowTypeErrorAtom - 0x00000000c00134d2 0x36 .obj/quickjs.o + 0x00000000c00135c0 0x36 .obj/quickjs.o .text.JS_ThrowTypeErrorReadOnly - 0x00000000c0013508 0x48 .obj/quickjs.o + 0x00000000c00135f6 0x48 .obj/quickjs.o .text.JS_ThrowTypeErrorInvalidClass - 0x00000000c0013550 0x28 .obj/quickjs.o + 0x00000000c001363e 0x28 .obj/quickjs.o .text.JS_GetOpaque2 - 0x00000000c0013578 0x34 .obj/quickjs.o - 0x00000000c0013578 JS_GetOpaque2 + 0x00000000c0013666 0x34 .obj/quickjs.o + 0x00000000c0013666 JS_GetOpaque2 .text.js_map_get - 0x00000000c00135ac 0x78 .obj/quickjs.o + 0x00000000c001369a 0x78 .obj/quickjs.o .text.js_map_delete - 0x00000000c0013624 0x7c .obj/quickjs.o + 0x00000000c0013712 0x7c .obj/quickjs.o .text.js_map_has - 0x00000000c00136a0 0x64 .obj/quickjs.o + 0x00000000c001378e 0x64 .obj/quickjs.o .text.js_map_get_size - 0x00000000c0013704 0x4c .obj/quickjs.o + 0x00000000c00137f2 0x4c .obj/quickjs.o .text.js_map_clear - 0x00000000c0013750 0x60 .obj/quickjs.o + 0x00000000c001383e 0x60 .obj/quickjs.o .text.js_array_buffer_get_byteLength - 0x00000000c00137b0 0x44 .obj/quickjs.o + 0x00000000c001389e 0x44 .obj/quickjs.o .text.JS_EvalInternal - 0x00000000c00137f4 0x80 .obj/quickjs.o + 0x00000000c00138e2 0x80 .obj/quickjs.o .text.JS_EvalThis - 0x00000000c0013874 0x7a .obj/quickjs.o - 0x00000000c0013874 JS_EvalThis - .text.JS_Eval 0x00000000c00138ee 0x18 .obj/quickjs.o - 0x00000000c00138ee JS_Eval + 0x00000000c0013962 0x7a .obj/quickjs.o + 0x00000000c0013962 JS_EvalThis + .text.JS_Eval 0x00000000c00139dc 0x18 .obj/quickjs.o + 0x00000000c00139dc JS_Eval .text.js_promise_executor - 0x00000000c0013906 0x72 .obj/quickjs.o + 0x00000000c00139f4 0x72 .obj/quickjs.o .text.JS_ThrowTypeErrorNotAnObject - 0x00000000c0013978 0x10 .obj/quickjs.o + 0x00000000c0013a66 0x10 .obj/quickjs.o .text.JS_IteratorClose - 0x00000000c0013988 0xb8 .obj/quickjs.o + 0x00000000c0013a76 0xb8 .obj/quickjs.o .text.js_regexp_get_flag - 0x00000000c0013a40 0x80 .obj/quickjs.o + 0x00000000c0013b2e 0x80 .obj/quickjs.o .text.JS_CheckBrand - 0x00000000c0013ac0 0xfa .obj/quickjs.o + 0x00000000c0013bae 0xfa .obj/quickjs.o .text.JS_SpeciesConstructor - 0x00000000c0013bba 0x118 .obj/quickjs.o + 0x00000000c0013ca8 0x118 .obj/quickjs.o .text.JS_ThrowTypeErrorDetachedArrayBuffer - 0x00000000c0013cd2 0x10 .obj/quickjs.o + 0x00000000c0013dc0 0x10 .obj/quickjs.o .text.JS_ThrowUnsupportedOperation - 0x00000000c0013ce2 0x10 .obj/quickjs.o + 0x00000000c0013dd0 0x10 .obj/quickjs.o .text.invalid_mul_pow10 - 0x00000000c0013cf2 0x10 .obj/quickjs.o + 0x00000000c0013de0 0x10 .obj/quickjs.o .text.invalid_mul_pow10_to_float64 - 0x00000000c0013d02 0x8 .obj/quickjs.o + 0x00000000c0013df0 0x8 .obj/quickjs.o .text.invalid_binary_arith - 0x00000000c0013d0a 0x2e .obj/quickjs.o + 0x00000000c0013df8 0x2e .obj/quickjs.o .text.invalid_unary_arith - 0x00000000c0013d38 0x20 .obj/quickjs.o + 0x00000000c0013e26 0x20 .obj/quickjs.o .text.invalid_to_string - 0x00000000c0013d58 0x8 .obj/quickjs.o + 0x00000000c0013e46 0x8 .obj/quickjs.o .text.JS_SetThisTimeValue - 0x00000000c0013d60 0x80 .obj/quickjs.o + 0x00000000c0013e4e 0x80 .obj/quickjs.o .text.js_thisBigIntValue - 0x00000000c0013de0 0x4a .obj/quickjs.o + 0x00000000c0013ece 0x4a .obj/quickjs.o .text.js_bigint_valueOf - 0x00000000c0013e2a 0x8 .obj/quickjs.o + 0x00000000c0013f18 0x8 .obj/quickjs.o .text.js_symbol_keyFor - 0x00000000c0013e32 0x4a .obj/quickjs.o + 0x00000000c0013f20 0x4a .obj/quickjs.o .text.js_thisSymbolValue - 0x00000000c0013e7c 0x48 .obj/quickjs.o + 0x00000000c0013f6a 0x48 .obj/quickjs.o .text.js_symbol_valueOf - 0x00000000c0013ec4 0x8 .obj/quickjs.o + 0x00000000c0013fb2 0x8 .obj/quickjs.o .text.js_string_toString - 0x00000000c0013ecc 0x4c .obj/quickjs.o + 0x00000000c0013fba 0x4c .obj/quickjs.o .text.js_thisBooleanValue - 0x00000000c0013f18 0x4a .obj/quickjs.o + 0x00000000c0014006 0x4a .obj/quickjs.o .text.js_boolean_valueOf - 0x00000000c0013f62 0x8 .obj/quickjs.o + 0x00000000c0014050 0x8 .obj/quickjs.o .text.js_thisNumberValue - 0x00000000c0013f6a 0x46 .obj/quickjs.o + 0x00000000c0014058 0x46 .obj/quickjs.o .text.js_number_valueOf - 0x00000000c0013fb0 0x8 .obj/quickjs.o + 0x00000000c001409e 0x8 .obj/quickjs.o .text.get_typed_array - 0x00000000c0013fb8 0x5e .obj/quickjs.o + 0x00000000c00140a6 0x5e .obj/quickjs.o .text.js_typed_array_get_length_internal - 0x00000000c0014016 0x34 .obj/quickjs.o + 0x00000000c0014104 0x34 .obj/quickjs.o .text.js_typed_array_reverse - 0x00000000c001404a 0xd0 .obj/quickjs.o + 0x00000000c0014138 0xd0 .obj/quickjs.o .text.js_typed_array_get_byteOffset - 0x00000000c001411a 0x58 .obj/quickjs.o + 0x00000000c0014208 0x58 .obj/quickjs.o .text.js_typed_array_get_byteLength - 0x00000000c0014172 0x58 .obj/quickjs.o + 0x00000000c0014260 0x58 .obj/quickjs.o .text.js_typed_array_get_buffer - 0x00000000c00141ca 0x2e .obj/quickjs.o + 0x00000000c00142b8 0x2e .obj/quickjs.o .text.validate_typed_array - 0x00000000c00141f8 0x32 .obj/quickjs.o + 0x00000000c00142e6 0x32 .obj/quickjs.o .text.js_typed_array_get_length - 0x00000000c001422a 0x2e .obj/quickjs.o + 0x00000000c0014318 0x2e .obj/quickjs.o .text.js_throw_type_error - 0x00000000c0014258 0x10 .obj/quickjs.o + 0x00000000c0014346 0x10 .obj/quickjs.o .text.js_function_proto_caller - 0x00000000c0014268 0x46 .obj/quickjs.o + 0x00000000c0014356 0x46 .obj/quickjs.o .text.js_typed_array_base_constructor - 0x00000000c00142ae 0x10 .obj/quickjs.o + 0x00000000c001439c 0x10 .obj/quickjs.o .text.JS_ThrowTypeErrorRevokedProxy.isra.0 - 0x00000000c00142be 0x10 .obj/quickjs.o + 0x00000000c00143ac 0x10 .obj/quickjs.o .text.JS_IsArray - 0x00000000c00142ce 0x6c .obj/quickjs.o - 0x00000000c00142ce JS_IsArray + 0x00000000c00143bc 0x6c .obj/quickjs.o + 0x00000000c00143bc JS_IsArray .text.js_array_isArray - 0x00000000c001433a 0x30 .obj/quickjs.o + 0x00000000c0014428 0x30 .obj/quickjs.o .text.get_proxy_method - 0x00000000c001436a 0x74 .obj/quickjs.o + 0x00000000c0014458 0x74 .obj/quickjs.o .text.JS_IsExtensible - 0x00000000c00143de 0xbc .obj/quickjs.o - 0x00000000c00143de JS_IsExtensible + 0x00000000c00144cc 0xbc .obj/quickjs.o + 0x00000000c00144cc JS_IsExtensible .text.js_object_isExtensible - 0x00000000c001449a 0x48 .obj/quickjs.o + 0x00000000c0014588 0x48 .obj/quickjs.o .text.JS_GetPrototype - 0x00000000c00144e2 0x13c .obj/quickjs.o - 0x00000000c00144e2 JS_GetPrototype + 0x00000000c00145d0 0x13c .obj/quickjs.o + 0x00000000c00145d0 JS_GetPrototype .text.JS_GetPrototypeFree - 0x00000000c001461e 0x2a .obj/quickjs.o + 0x00000000c001470c 0x2a .obj/quickjs.o .text.js_object_getPrototypeOf - 0x00000000c0014648 0x2e .obj/quickjs.o + 0x00000000c0014736 0x2e .obj/quickjs.o .text.JS_PreventExtensions - 0x00000000c0014676 0xc2 .obj/quickjs.o - 0x00000000c0014676 JS_PreventExtensions + 0x00000000c0014764 0xc2 .obj/quickjs.o + 0x00000000c0014764 JS_PreventExtensions .text.js_object_preventExtensions - 0x00000000c0014738 0x82 .obj/quickjs.o + 0x00000000c0014826 0x82 .obj/quickjs.o .text.JS_GetFunctionRealm - 0x00000000c00147ba 0x74 .obj/quickjs.o + 0x00000000c00148a8 0x74 .obj/quickjs.o .text.JS_SetObjectData.isra.0 - 0x00000000c001482e 0x80 .obj/quickjs.o + 0x00000000c001491c 0x80 .obj/quickjs.o .text.JS_ThrowReferenceError - 0x00000000c00148ae 0x2a .obj/quickjs.o - 0x00000000c00148ae JS_ThrowReferenceError + 0x00000000c001499c 0x2a .obj/quickjs.o + 0x00000000c001499c JS_ThrowReferenceError .text.JS_ThrowReferenceErrorUninitialized - 0x00000000c00148d8 0x32 .obj/quickjs.o + 0x00000000c00149c6 0x32 .obj/quickjs.o .text.JS_ThrowReferenceErrorUninitialized2.isra.0 - 0x00000000c001490a 0x28 .obj/quickjs.o + 0x00000000c00149f8 0x28 .obj/quickjs.o .text.JS_ThrowReferenceErrorNotDefined - 0x00000000c0014932 0x28 .obj/quickjs.o + 0x00000000c0014a20 0x28 .obj/quickjs.o .text.JS_ThrowRangeError - 0x00000000c001495a 0x2a .obj/quickjs.o - 0x00000000c001495a JS_ThrowRangeError + 0x00000000c0014a48 0x2a .obj/quickjs.o + 0x00000000c0014a48 JS_ThrowRangeError .text.JS_ThrowInternalError - 0x00000000c0014984 0x2a .obj/quickjs.o - 0x00000000c0014984 JS_ThrowInternalError + 0x00000000c0014a72 0x2a .obj/quickjs.o + 0x00000000c0014a72 JS_ThrowInternalError .text.__js_poll_interrupts - 0x00000000c00149ae 0x4c .obj/quickjs.o + 0x00000000c0014a9c 0x4c .obj/quickjs.o .text.js_poll_interrupts - 0x00000000c00149fa 0x18 .obj/quickjs.o + 0x00000000c0014ae8 0x18 .obj/quickjs.o .text.JS_OrdinaryIsInstanceOf - 0x00000000c0014a12 0x130 .obj/quickjs.o + 0x00000000c0014b00 0x130 .obj/quickjs.o .text.JS_IsInstanceOf - 0x00000000c0014b42 0xa4 .obj/quickjs.o - 0x00000000c0014b42 JS_IsInstanceOf + 0x00000000c0014c30 0xa4 .obj/quickjs.o + 0x00000000c0014c30 JS_IsInstanceOf .text.js_function_hasInstance - 0x00000000c0014be6 0x36 .obj/quickjs.o + 0x00000000c0014cd4 0x36 .obj/quickjs.o .text.JS_ThrowOutOfMemory - 0x00000000c0014c1c 0x30 .obj/quickjs.o - 0x00000000c0014c1c JS_ThrowOutOfMemory + 0x00000000c0014d0a 0x30 .obj/quickjs.o + 0x00000000c0014d0a JS_ThrowOutOfMemory .text.js_malloc - 0x00000000c0014c4c 0x26 .obj/quickjs.o - 0x00000000c0014c4c js_malloc + 0x00000000c0014d3a 0x108 .obj/quickjs.o + 0x00000000c0014d3a js_malloc .text.js_strndup - 0x00000000c0014c72 0x36 .obj/quickjs.o - 0x00000000c0014c72 js_strndup + 0x00000000c0014e42 0x36 .obj/quickjs.o + 0x00000000c0014e42 js_strndup .text.js_strdup - 0x00000000c0014ca8 0x20 .obj/quickjs.o - 0x00000000c0014ca8 js_strdup + 0x00000000c0014e78 0x20 .obj/quickjs.o + 0x00000000c0014e78 js_strdup .text.get_var_ref - 0x00000000c0014cc8 0xd6 .obj/quickjs.o + 0x00000000c0014e98 0xd6 .obj/quickjs.o .text.js_clone_shape - 0x00000000c0014d9e 0xa4 .obj/quickjs.o + 0x00000000c0014f6e 0xa4 .obj/quickjs.o .text.js_shape_prepare_update - 0x00000000c0014e42 0x8c .obj/quickjs.o + 0x00000000c0015012 0x8c .obj/quickjs.o .text.JS_AutoInitProperty - 0x00000000c0014ece 0x8a .obj/quickjs.o + 0x00000000c001509e 0x8a .obj/quickjs.o .text.JS_SetPrototypeInternal - 0x00000000c0014f58 0x1c8 .obj/quickjs.o + 0x00000000c0015128 0x1c8 .obj/quickjs.o .text.JS_SetPrototype - 0x00000000c0015120 0xa .obj/quickjs.o - 0x00000000c0015120 JS_SetPrototype + 0x00000000c00152f0 0xa .obj/quickjs.o + 0x00000000c00152f0 JS_SetPrototype .text.js_reflect_setPrototypeOf - 0x00000000c001512a 0x38 .obj/quickjs.o + 0x00000000c00152fa 0x38 .obj/quickjs.o .text.js_object_set___proto__ - 0x00000000c0015162 0x56 .obj/quickjs.o + 0x00000000c0015332 0x56 .obj/quickjs.o .text.js_object_setPrototypeOf - 0x00000000c00151b8 0x30 .obj/quickjs.o + 0x00000000c0015388 0x30 .obj/quickjs.o .text.js_update_property_flags - 0x00000000c00151e8 0x40 .obj/quickjs.o + 0x00000000c00153b8 0x40 .obj/quickjs.o .text.seal_template_obj - 0x00000000c0015228 0x78 .obj/quickjs.o + 0x00000000c00153f8 0x78 .obj/quickjs.o .text.JS_EnqueueJob - 0x00000000c00152a0 0x86 .obj/quickjs.o - 0x00000000c00152a0 JS_EnqueueJob + 0x00000000c0015470 0x86 .obj/quickjs.o + 0x00000000c0015470 JS_EnqueueJob .text.fulfill_or_reject_promise - 0x00000000c0015326 0x142 .obj/quickjs.o + 0x00000000c00154f6 0x142 .obj/quickjs.o .text.js_promise_resolve_function_call - 0x00000000c0015468 0x132 .obj/quickjs.o + 0x00000000c0015638 0x132 .obj/quickjs.o .text.JS_NewBigInt - 0x00000000c001559a 0x40 .obj/quickjs.o + 0x00000000c001576a 0x40 .obj/quickjs.o .text.js_create_module_var - 0x00000000c00155da 0x5c .obj/quickjs.o + 0x00000000c00157aa 0x5c .obj/quickjs.o .text.add_reloc - 0x00000000c0015636 0x30 .obj/quickjs.o + 0x00000000c0015806 0x30 .obj/quickjs.o .text.js_typed_array_sort - 0x00000000c0015666 0x2be .obj/quickjs.o + 0x00000000c0015836 0x2be .obj/quickjs.o .text.js_new_shape2.constprop.0 - 0x00000000c0015924 0x332 .obj/quickjs.o + 0x00000000c0015af4 0x332 .obj/quickjs.o .text.typed_array_init.isra.0 - 0x00000000c0015c56 0x86 .obj/quickjs.o + 0x00000000c0015e26 0x86 .obj/quickjs.o .text.js_mallocz - 0x00000000c0015cdc 0x26 .obj/quickjs.o - 0x00000000c0015cdc js_mallocz + 0x00000000c0015eac 0x26 .obj/quickjs.o + 0x00000000c0015eac js_mallocz .text.async_func_init - 0x00000000c0015d02 0x152 .obj/quickjs.o + 0x00000000c0015ed2 0x152 .obj/quickjs.o .text.js_closure2 - 0x00000000c0015e54 0xae .obj/quickjs.o + 0x00000000c0016024 0xae .obj/quickjs.o .text.perform_promise_then - 0x00000000c0015f02 0x1a8 .obj/quickjs.o + 0x00000000c00160d2 0x1a8 .obj/quickjs.o .text.js_new_module_def - 0x00000000c00160aa 0x80 .obj/quickjs.o + 0x00000000c001627a 0x80 .obj/quickjs.o .text.js_realloc - 0x00000000c001612a 0x30 .obj/quickjs.o - 0x00000000c001612a js_realloc + 0x00000000c00162fa 0x30 .obj/quickjs.o + 0x00000000c00162fa js_realloc .text.resize_properties - 0x00000000c001615a 0x15c .obj/quickjs.o + 0x00000000c001632a 0x15c .obj/quickjs.o .text.add_shape_property - 0x00000000c00162b6 0x110 .obj/quickjs.o + 0x00000000c0016486 0x110 .obj/quickjs.o .text.add_property - 0x00000000c00163c6 0x198 .obj/quickjs.o + 0x00000000c0016596 0x198 .obj/quickjs.o .text.JS_DefineAutoInitProperty - 0x00000000c001655e 0xc6 .obj/quickjs.o + 0x00000000c001672e 0xc6 .obj/quickjs.o .text.JS_NewObjectFromShape - 0x00000000c0016624 0x164 .obj/quickjs.o + 0x00000000c00167f4 0x164 .obj/quickjs.o .text.JS_NewObjectProtoClass - 0x00000000c0016788 0x262 .obj/quickjs.o - 0x00000000c0016788 JS_NewObjectProtoClass + 0x00000000c0016958 0x262 .obj/quickjs.o + 0x00000000c0016958 JS_NewObjectProtoClass .text.js_create_from_ctor - 0x00000000c00169ea 0xb2 .obj/quickjs.o + 0x00000000c0016bba 0xb2 .obj/quickjs.o .text.js_array_buffer_constructor3 - 0x00000000c0016a9c 0x148 .obj/quickjs.o + 0x00000000c0016c6c 0x148 .obj/quickjs.o .text.js_array_buffer_constructor2 - 0x00000000c0016be4 0x1e .obj/quickjs.o + 0x00000000c0016db4 0x1e .obj/quickjs.o .text.js_boolean_constructor - 0x00000000c0016c02 0x6e .obj/quickjs.o + 0x00000000c0016dd2 0x6e .obj/quickjs.o .text.JS_NewObjectClass - 0x00000000c0016c70 0x16 .obj/quickjs.o - 0x00000000c0016c70 JS_NewObjectClass + 0x00000000c0016e40 0x16 .obj/quickjs.o + 0x00000000c0016e40 JS_NewObjectClass .text.JS_NewError - 0x00000000c0016c86 0xa .obj/quickjs.o - 0x00000000c0016c86 JS_NewError + 0x00000000c0016e56 0xa .obj/quickjs.o + 0x00000000c0016e56 JS_NewError .text.js_create_map_iterator - 0x00000000c0016c90 0x9e .obj/quickjs.o + 0x00000000c0016e60 0x9e .obj/quickjs.o .text.JS_NewObjectProto - 0x00000000c0016d2e 0xa .obj/quickjs.o - 0x00000000c0016d2e JS_NewObjectProto + 0x00000000c0016efe 0xa .obj/quickjs.o + 0x00000000c0016efe JS_NewObjectProto .text.JS_GetImportMeta - 0x00000000c0016d38 0x50 .obj/quickjs.o - 0x00000000c0016d38 JS_GetImportMeta + 0x00000000c0016f08 0x50 .obj/quickjs.o + 0x00000000c0016f08 JS_GetImportMeta .text.JS_NewObject - 0x00000000c0016d88 0x10 .obj/quickjs.o - 0x00000000c0016d88 JS_NewObject + 0x00000000c0016f58 0x10 .obj/quickjs.o + 0x00000000c0016f58 JS_NewObject .text.js_create_module_function - 0x00000000c0016d98 0x12a .obj/quickjs.o + 0x00000000c0016f68 0x12a .obj/quickjs.o .text.js_proxy_constructor - 0x00000000c0016ec2 0xfc .obj/quickjs.o + 0x00000000c0017092 0xfc .obj/quickjs.o .text.JS_NewArray - 0x00000000c0016fbe 0x12 .obj/quickjs.o - 0x00000000c0016fbe JS_NewArray + 0x00000000c001718e 0x12 .obj/quickjs.o + 0x00000000c001718e JS_NewArray .text.convert_fast_array_to_array - 0x00000000c0016fd0 0xae .obj/quickjs.o + 0x00000000c00171a0 0xae .obj/quickjs.o .text.ident_realloc - 0x00000000c001707e 0x70 .obj/quickjs.o + 0x00000000c001724e 0x70 .obj/quickjs.o .text.delete_property - 0x00000000c00170ee 0x386 .obj/quickjs.o + 0x00000000c00172be 0x386 .obj/quickjs.o .text.js_realloc2 - 0x00000000c0017474 0x52 .obj/quickjs.o - 0x00000000c0017474 js_realloc2 + 0x00000000c0017644 0x52 .obj/quickjs.o + 0x00000000c0017644 js_realloc2 .text.string_buffer_widen - 0x00000000c00174c6 0x72 .obj/quickjs.o + 0x00000000c0017696 0x72 .obj/quickjs.o .text.expand_fast_array - 0x00000000c0017538 0x4a .obj/quickjs.o + 0x00000000c0017708 0x4a .obj/quickjs.o .text.add_fast_array_element - 0x00000000c0017582 0xba .obj/quickjs.o + 0x00000000c0017752 0xba .obj/quickjs.o .text.js_allocate_fast_array - 0x00000000c001763c 0x7c .obj/quickjs.o + 0x00000000c001780c 0x7c .obj/quickjs.o .text.js_realloc_array - 0x00000000c00176b8 0x58 .obj/quickjs.o + 0x00000000c0017888 0x58 .obj/quickjs.o .text.js_resize_array - 0x00000000c0017710 0xe .obj/quickjs.o + 0x00000000c00178e0 0xe .obj/quickjs.o .text.get_exported_names - 0x00000000c001771e 0x126 .obj/quickjs.o + 0x00000000c00178ee 0x126 .obj/quickjs.o .text.js_resolve_export1 - 0x00000000c0017844 0x176 .obj/quickjs.o + 0x00000000c0017a14 0x176 .obj/quickjs.o .text.js_resolve_export - 0x00000000c00179ba 0x48 .obj/quickjs.o + 0x00000000c0017b8a 0x48 .obj/quickjs.o .text.gather_available_ancestors - 0x00000000c0017a02 0xfc .obj/quickjs.o + 0x00000000c0017bd2 0xfc .obj/quickjs.o .text.bc_atom_to_idx - 0x00000000c0017afe 0xd2 .obj/quickjs.o + 0x00000000c0017cce 0xd2 .obj/quickjs.o .text.bc_put_atom.isra.0 - 0x00000000c0017bd0 0x3c .obj/quickjs.o + 0x00000000c0017da0 0x3c .obj/quickjs.o .text.BC_add_object_ref1 - 0x00000000c0017c0c 0x4a .obj/quickjs.o + 0x00000000c0017ddc 0x4a .obj/quickjs.o .text.new_label_fd - 0x00000000c0017c56 0x5a .obj/quickjs.o + 0x00000000c0017e26 0x5a .obj/quickjs.o .text.new_label - 0x00000000c0017cb0 0x8 .obj/quickjs.o + 0x00000000c0017e80 0x8 .obj/quickjs.o .text.emit_goto - 0x00000000c0017cb8 0x5c .obj/quickjs.o + 0x00000000c0017e88 0x5c .obj/quickjs.o .text.emit_class_field_init - 0x00000000c0017d14 0x8a .obj/quickjs.o + 0x00000000c0017ee4 0x8a .obj/quickjs.o .text.emit_return - 0x00000000c0017d9e 0x1b8 .obj/quickjs.o + 0x00000000c0017f6e 0x1b8 .obj/quickjs.o .text.optional_chain_test - 0x00000000c0017f56 0x7c .obj/quickjs.o + 0x00000000c0018126 0x7c .obj/quickjs.o .text.js_emit_spread_code - 0x00000000c0017fd2 0xa6 .obj/quickjs.o + 0x00000000c00181a2 0xa6 .obj/quickjs.o .text.var_object_test - 0x00000000c0018078 0x92 .obj/quickjs.o + 0x00000000c0018248 0x92 .obj/quickjs.o .text.cpool_add - 0x00000000c001810a 0x52 .obj/quickjs.o + 0x00000000c00182da 0x52 .obj/quickjs.o .text.emit_push_const - 0x00000000c001815c 0x76 .obj/quickjs.o + 0x00000000c001832c 0x76 .obj/quickjs.o .text.emit_class_init_end - 0x00000000c00181d2 0x58 .obj/quickjs.o + 0x00000000c00183a2 0x58 .obj/quickjs.o .text.add_global_var - 0x00000000c001822a 0x6c .obj/quickjs.o + 0x00000000c00183fa 0x6c .obj/quickjs.o .text.add_req_module_entry - 0x00000000c0018296 0x76 .obj/quickjs.o + 0x00000000c0018466 0x76 .obj/quickjs.o .text.js_map_set - 0x00000000c001830c 0x200 .obj/quickjs.o + 0x00000000c00184dc 0x200 .obj/quickjs.o .text.push_scope - 0x00000000c001850c 0xd0 .obj/quickjs.o - .text.js_atof 0x00000000c00185dc 0x4f8 .obj/quickjs.o + 0x00000000c00186dc 0xd0 .obj/quickjs.o + .text.js_atof 0x00000000c00187ac 0x4f8 .obj/quickjs.o .text.JS_NewSymbol - 0x00000000c0018ad4 0x40 .obj/quickjs.o + 0x00000000c0018ca4 0x40 .obj/quickjs.o .text.JS_NewSymbolFromAtom.constprop.0 - 0x00000000c0018b14 0x5c .obj/quickjs.o + 0x00000000c0018ce4 0x5c .obj/quickjs.o .text.js_alloc_string - 0x00000000c0018b70 0x26 .obj/quickjs.o + 0x00000000c0018d40 0x26 .obj/quickjs.o .text.string_buffer_init2 - 0x00000000c0018b96 0x38 .obj/quickjs.o + 0x00000000c0018d66 0x38 .obj/quickjs.o .text.string_buffer_init - 0x00000000c0018bce 0x6 .obj/quickjs.o + 0x00000000c0018d9e 0x6 .obj/quickjs.o .text.js_new_string16 - 0x00000000c0018bd4 0x42 .obj/quickjs.o + 0x00000000c0018da4 0x42 .obj/quickjs.o .text.JS_ReadString - 0x00000000c0018c16 0x82 .obj/quickjs.o + 0x00000000c0018de6 0x82 .obj/quickjs.o .text.JS_NewBigInt64_1 - 0x00000000c0018c98 0x64 .obj/quickjs.o - 0x00000000c0018c98 JS_NewBigInt64_1 + 0x00000000c0018e68 0x64 .obj/quickjs.o + 0x00000000c0018e68 JS_NewBigInt64_1 .text.JS_NewBigInt64 - 0x00000000c0018cfc 0x8 .obj/quickjs.o - 0x00000000c0018cfc JS_NewBigInt64 + 0x00000000c0018ecc 0x8 .obj/quickjs.o + 0x00000000c0018ecc JS_NewBigInt64 .text.js_TA_get_int64 - 0x00000000c0018d04 0xa .obj/quickjs.o + 0x00000000c0018ed4 0xa .obj/quickjs.o .text.JS_NewBigUint64 - 0x00000000c0018d0e 0x64 .obj/quickjs.o - 0x00000000c0018d0e JS_NewBigUint64 + 0x00000000c0018ede 0x64 .obj/quickjs.o + 0x00000000c0018ede JS_NewBigUint64 .text.js_TA_get_uint64 - 0x00000000c0018d72 0xa .obj/quickjs.o + 0x00000000c0018f42 0xa .obj/quickjs.o .text.js_string_to_bigint - 0x00000000c0018d7c 0x6a .obj/quickjs.o + 0x00000000c0018f4c 0x6a .obj/quickjs.o .text.throw_bf_exception.isra.0 - 0x00000000c0018de6 0x42 .obj/quickjs.o + 0x00000000c0018fb6 0x42 .obj/quickjs.o .text.string_buffer_realloc - 0x00000000c0018e28 0xbe .obj/quickjs.o + 0x00000000c0018ff8 0xbe .obj/quickjs.o .text.string_buffer_write8 - 0x00000000c0018ee6 0x82 .obj/quickjs.o + 0x00000000c00190b6 0x82 .obj/quickjs.o .text.string_buffer_concat - 0x00000000c0018f68 0xe4 .obj/quickjs.o + 0x00000000c0019138 0xe4 .obj/quickjs.o .text.string_buffer_puts8 - 0x00000000c001904c 0x22 .obj/quickjs.o + 0x00000000c001921c 0x22 .obj/quickjs.o .text.encodeURI_hex.isra.0 - 0x00000000c001906e 0x78 .obj/quickjs.o + 0x00000000c001923e 0x78 .obj/quickjs.o .text.string_buffer_putc8 - 0x00000000c00190e6 0x52 .obj/quickjs.o + 0x00000000c00192b6 0x52 .obj/quickjs.o .text.string_buffer_putc_slow - 0x00000000c0019138 0x80 .obj/quickjs.o + 0x00000000c0019308 0x80 .obj/quickjs.o .text.string_buffer_putc16 - 0x00000000c00191b8 0x3e .obj/quickjs.o + 0x00000000c0019388 0x3e .obj/quickjs.o .text.string_buffer_putc - 0x00000000c00191f6 0x50 .obj/quickjs.o + 0x00000000c00193c6 0x50 .obj/quickjs.o .text.string_buffer_fill - 0x00000000c0019246 0x4a .obj/quickjs.o + 0x00000000c0019416 0x4a .obj/quickjs.o .text.JS_NewStringLen - 0x00000000c0019290 0x15e .obj/quickjs.o - 0x00000000c0019290 JS_NewStringLen + 0x00000000c0019460 0x15e .obj/quickjs.o + 0x00000000c0019460 JS_NewStringLen .text.JS_NewAtomLen - 0x00000000c00193ee 0x52 .obj/quickjs.o - 0x00000000c00193ee JS_NewAtomLen + 0x00000000c00195be 0x52 .obj/quickjs.o + 0x00000000c00195be JS_NewAtomLen .text.JS_NewAtom - 0x00000000c0019440 0x20 .obj/quickjs.o - 0x00000000c0019440 JS_NewAtom + 0x00000000c0019610 0x20 .obj/quickjs.o + 0x00000000c0019610 JS_NewAtom .text.js_host_resolve_imported_module - 0x00000000c0019460 0x1a4 .obj/quickjs.o + 0x00000000c0019630 0x1a4 .obj/quickjs.o .text.JS_GetPropertyStr - 0x00000000c0019604 0x48 .obj/quickjs.o - 0x00000000c0019604 JS_GetPropertyStr + 0x00000000c00197d4 0x48 .obj/quickjs.o + 0x00000000c00197d4 JS_GetPropertyStr .text.JS_NewCModule - 0x00000000c001964c 0x2a .obj/quickjs.o - 0x00000000c001964c JS_NewCModule + 0x00000000c001981c 0x2a .obj/quickjs.o + 0x00000000c001981c JS_NewCModule .text.JS_SetModuleExport - 0x00000000c0019676 0x74 .obj/quickjs.o - 0x00000000c0019676 JS_SetModuleExport + 0x00000000c0019846 0x74 .obj/quickjs.o + 0x00000000c0019846 JS_SetModuleExport .text.find_atom - 0x00000000c00196ea 0x94 .obj/quickjs.o + 0x00000000c00198ba 0x94 .obj/quickjs.o .text.js_new_function_def - 0x00000000c001977e 0xdc .obj/quickjs.o + 0x00000000c001994e 0xdc .obj/quickjs.o .text.emit_class_init_start - 0x00000000c001985a 0xc4 .obj/quickjs.o + 0x00000000c0019a2a 0xc4 .obj/quickjs.o .text.parse_ident - 0x00000000c001991e 0x104 .obj/quickjs.o + 0x00000000c0019aee 0x104 .obj/quickjs.o .text.JS_NewString - 0x00000000c0019a22 0x20 .obj/quickjs.o - 0x00000000c0019a22 JS_NewString + 0x00000000c0019bf2 0x20 .obj/quickjs.o + 0x00000000c0019bf2 JS_NewString .text.JS_NewAtomUInt32 - 0x00000000c0019a42 0x4e .obj/quickjs.o - 0x00000000c0019a42 JS_NewAtomUInt32 + 0x00000000c0019c12 0x4e .obj/quickjs.o + 0x00000000c0019c12 JS_NewAtomUInt32 .text.__JS_AtomToValue - 0x00000000c0019a90 0xa2 .obj/quickjs.o + 0x00000000c0019c60 0xa2 .obj/quickjs.o .text.JS_AtomToValue - 0x00000000c0019b32 0xa .obj/quickjs.o - 0x00000000c0019b32 JS_AtomToValue + 0x00000000c0019d02 0xa .obj/quickjs.o + 0x00000000c0019d02 JS_AtomToValue .text.JS_AtomToString - 0x00000000c0019b3c 0xa .obj/quickjs.o - 0x00000000c0019b3c JS_AtomToString + 0x00000000c0019d0c 0xa .obj/quickjs.o + 0x00000000c0019d0c JS_AtomToString .text.JS_ToPrimitiveFree - 0x00000000c0019b46 0x1a0 .obj/quickjs.o + 0x00000000c0019d16 0x1a0 .obj/quickjs.o .text.JS_ToPrimitive - 0x00000000c0019ce6 0x24 .obj/quickjs.o + 0x00000000c0019eb6 0x24 .obj/quickjs.o .text.string_buffer_end - 0x00000000c0019d0a 0x96 .obj/quickjs.o + 0x00000000c0019eda 0x96 .obj/quickjs.o .text.JS_NewAtomString - 0x00000000c0019da0 0x44 .obj/quickjs.o - 0x00000000c0019da0 JS_NewAtomString + 0x00000000c0019f70 0x44 .obj/quickjs.o + 0x00000000c0019f70 JS_NewAtomString .text.exported_names_cmp - 0x00000000c0019de4 0x66 .obj/quickjs.o + 0x00000000c0019fb4 0x66 .obj/quickjs.o .text.js_symbol_get_description - 0x00000000c0019e4a 0x6c .obj/quickjs.o + 0x00000000c001a01a 0x6c .obj/quickjs.o .text.js_boolean_toString - 0x00000000c0019eb6 0x34 .obj/quickjs.o + 0x00000000c001a086 0x34 .obj/quickjs.o .text.js_function_proto_fileName - 0x00000000c0019eea 0x38 .obj/quickjs.o + 0x00000000c001a0ba 0x38 .obj/quickjs.o .text.js_object___getClass - 0x00000000c0019f22 0x52 .obj/quickjs.o + 0x00000000c001a0f2 0x52 .obj/quickjs.o .text.js_typed_array_get_toStringTag - 0x00000000c0019f74 0x3e .obj/quickjs.o + 0x00000000c001a144 0x3e .obj/quickjs.o .text.js_new_string8 - 0x00000000c0019fb2 0x52 .obj/quickjs.o + 0x00000000c001a182 0x52 .obj/quickjs.o .text.js_new_string_char - 0x00000000c001a004 0x34 .obj/quickjs.o + 0x00000000c001a1d4 0x34 .obj/quickjs.o .text.js_string_get_own_property - 0x00000000c001a038 0x7a .obj/quickjs.o + 0x00000000c001a208 0x7a .obj/quickjs.o .text.js_string_iterator_next - 0x00000000c001a0b2 0xc6 .obj/quickjs.o + 0x00000000c001a282 0xc6 .obj/quickjs.o .text.js_sub_string - 0x00000000c001a178 0xd2 .obj/quickjs.o + 0x00000000c001a348 0xd2 .obj/quickjs.o .text.JS_NewAtomInt64 - 0x00000000c001a24a 0x58 .obj/quickjs.o - .text.js_dtoa 0x00000000c001a2a2 0x3e2 .obj/quickjs.o + 0x00000000c001a41a 0x58 .obj/quickjs.o + .text.js_dtoa 0x00000000c001a472 0x3e2 .obj/quickjs.o .text.JS_ToStringInternal - 0x00000000c001a684 0x152 .obj/quickjs.o - 0x00000000c001a684 JS_ToStringInternal + 0x00000000c001a854 0x152 .obj/quickjs.o + 0x00000000c001a854 JS_ToStringInternal .text.JS_ToString - 0x00000000c001a7d6 0xa .obj/quickjs.o - 0x00000000c001a7d6 JS_ToString + 0x00000000c001a9a6 0xa .obj/quickjs.o + 0x00000000c001a9a6 JS_ToString .text.JS_ToStringFree - 0x00000000c001a7e0 0x2a .obj/quickjs.o + 0x00000000c001a9b0 0x2a .obj/quickjs.o .text.JS_ConcatString3 - 0x00000000c001a80a 0xe2 .obj/quickjs.o + 0x00000000c001a9da 0xe2 .obj/quickjs.o .text.js_get_function_name - 0x00000000c001a8ec 0x76 .obj/quickjs.o + 0x00000000c001aabc 0x76 .obj/quickjs.o .text.JS_ConcatString - 0x00000000c001a962 0x252 .obj/quickjs.o + 0x00000000c001ab32 0x252 .obj/quickjs.o .text.js_error_toString - 0x00000000c001abb4 0x128 .obj/quickjs.o + 0x00000000c001ad84 0x128 .obj/quickjs.o .text.string_buffer_concat_value_free - 0x00000000c001acdc 0x86 .obj/quickjs.o + 0x00000000c001aeac 0x86 .obj/quickjs.o .text.js_regexp_toString - 0x00000000c001ad62 0xaa .obj/quickjs.o + 0x00000000c001af32 0xaa .obj/quickjs.o .text.check_regexp_g_flag - 0x00000000c001ae0c 0xa0 .obj/quickjs.o + 0x00000000c001afdc 0xa0 .obj/quickjs.o .text.JS_ToStringCheckObject - 0x00000000c001aeac 0x20 .obj/quickjs.o + 0x00000000c001b07c 0x20 .obj/quickjs.o .text.JS_ToQuotedString - 0x00000000c001aecc 0x17a .obj/quickjs.o + 0x00000000c001b09c 0x17a .obj/quickjs.o .text.JS_ToQuotedStringFree - 0x00000000c001b046 0x2a .obj/quickjs.o + 0x00000000c001b216 0x2a .obj/quickjs.o .text.js_string___quote - 0x00000000c001b070 0x8 .obj/quickjs.o + 0x00000000c001b240 0x8 .obj/quickjs.o .text.js_string_CreateHTML - 0x00000000c001b078 0x160 .obj/quickjs.o + 0x00000000c001b248 0x160 .obj/quickjs.o .text.js_string_toLowerCase - 0x00000000c001b1d8 0x1be .obj/quickjs.o + 0x00000000c001b3a8 0x1be .obj/quickjs.o .text.js_string_isWellFormed - 0x00000000c001b396 0x5a .obj/quickjs.o + 0x00000000c001b566 0x5a .obj/quickjs.o .text.js_string_concat - 0x00000000c001b3f0 0x6a .obj/quickjs.o + 0x00000000c001b5c0 0x6a .obj/quickjs.o .text.js_string_toWellFormed - 0x00000000c001b45a 0xfe .obj/quickjs.o + 0x00000000c001b62a 0xfe .obj/quickjs.o .text.js_string_trim - 0x00000000c001b558 0xb0 .obj/quickjs.o + 0x00000000c001b728 0xb0 .obj/quickjs.o .text.js_string_normalize1 - 0x00000000c001b608 0xd0 .obj/quickjs.o + 0x00000000c001b7d8 0xd0 .obj/quickjs.o .text.string_buffer_concat_value - 0x00000000c001b6d8 0x7c .obj/quickjs.o + 0x00000000c001b8a8 0x7c .obj/quickjs.o .text.js_Date_parse - 0x00000000c001b754 0x412 .obj/quickjs.o + 0x00000000c001b924 0x412 .obj/quickjs.o .text.js_symbol_for - 0x00000000c001bb66 0x34 .obj/quickjs.o + 0x00000000c001bd36 0x34 .obj/quickjs.o .text.js_symbol_constructor - 0x00000000c001bb9a 0x5e .obj/quickjs.o + 0x00000000c001bd6a 0x5e .obj/quickjs.o .text.js_string_localeCompare - 0x00000000c001bbf8 0x110 .obj/quickjs.o + 0x00000000c001bdc8 0x110 .obj/quickjs.o .text.js_global_unescape - 0x00000000c001bd08 0xe8 .obj/quickjs.o + 0x00000000c001bed8 0xe8 .obj/quickjs.o .text.js_global_escape - 0x00000000c001bdf0 0xb8 .obj/quickjs.o + 0x00000000c001bfc0 0xb8 .obj/quickjs.o .text.JS_ToCStringLen2 - 0x00000000c001bea8 0x1fe .obj/quickjs.o - 0x00000000c001bea8 JS_ToCStringLen2 + 0x00000000c001c078 0x1fe .obj/quickjs.o + 0x00000000c001c078 JS_ToCStringLen2 .text.JS_ToNumberHintFree - 0x00000000c001c0a6 0x1c4 .obj/quickjs.o + 0x00000000c001c276 0x1c4 .obj/quickjs.o .text.JS_ToNumberFree - 0x00000000c001c26a 0xa .obj/quickjs.o + 0x00000000c001c43a 0xa .obj/quickjs.o .text.JS_ToInt32Free - 0x00000000c001c274 0xa6 .obj/quickjs.o + 0x00000000c001c444 0xa6 .obj/quickjs.o .text.js_get_length32 - 0x00000000c001c31a 0x54 .obj/quickjs.o + 0x00000000c001c4ea 0x54 .obj/quickjs.o .text.JS_ToInt32 - 0x00000000c001c36e 0x28 .obj/quickjs.o - 0x00000000c001c36e JS_ToInt32 + 0x00000000c001c53e 0x28 .obj/quickjs.o + 0x00000000c001c53e JS_ToInt32 .text.js_string_codePointRange - 0x00000000c001c396 0xa8 .obj/quickjs.o - 0x00000000c001c396 js_string_codePointRange + 0x00000000c001c566 0xa8 .obj/quickjs.o + 0x00000000c001c566 js_string_codePointRange .text.js_math_clz32 - 0x00000000c001c43e 0x44 .obj/quickjs.o + 0x00000000c001c60e 0x44 .obj/quickjs.o .text.js_math_imul - 0x00000000c001c482 0x4e .obj/quickjs.o + 0x00000000c001c652 0x4e .obj/quickjs.o .text.js_string_fromCharCode - 0x00000000c001c4d0 0x7c .obj/quickjs.o + 0x00000000c001c6a0 0x7c .obj/quickjs.o .text.JS_ToUint8ClampFree - 0x00000000c001c54c 0xa2 .obj/quickjs.o + 0x00000000c001c71c 0xa2 .obj/quickjs.o .text.JS_ToFloat64Free - 0x00000000c001c5ee 0xa0 .obj/quickjs.o + 0x00000000c001c7be 0xa0 .obj/quickjs.o .text.JS_ToFloat64 - 0x00000000c001c68e 0x28 .obj/quickjs.o - 0x00000000c001c68e JS_ToFloat64 + 0x00000000c001c85e 0x28 .obj/quickjs.o + 0x00000000c001c85e JS_ToFloat64 .text.JS_NumberIsInteger - 0x00000000c001c6b6 0x62 .obj/quickjs.o + 0x00000000c001c886 0x62 .obj/quickjs.o .text.js_number_isInteger - 0x00000000c001c718 0x30 .obj/quickjs.o + 0x00000000c001c8e8 0x30 .obj/quickjs.o .text.js_Date_UTC - 0x00000000c001c748 0x136 .obj/quickjs.o + 0x00000000c001c918 0x136 .obj/quickjs.o .text.JS_ThisTimeValue - 0x00000000c001c87e 0x46 .obj/quickjs.o + 0x00000000c001ca4e 0x46 .obj/quickjs.o .text.get_date_fields - 0x00000000c001c8c4 0x19a .obj/quickjs.o + 0x00000000c001ca94 0x19a .obj/quickjs.o .text.get_date_field - 0x00000000c001ca5e 0x98 .obj/quickjs.o + 0x00000000c001cc2e 0x98 .obj/quickjs.o .text.js_date_getTimezoneOffset - 0x00000000c001caf6 0x56 .obj/quickjs.o + 0x00000000c001ccc6 0x56 .obj/quickjs.o .text.js_date_getTime - 0x00000000c001cb4c 0x4c .obj/quickjs.o + 0x00000000c001cd1c 0x4c .obj/quickjs.o .text.set_date_field - 0x00000000c001cb98 0x10e .obj/quickjs.o + 0x00000000c001cd68 0x10e .obj/quickjs.o .text.js_date_setYear - 0x00000000c001cca6 0xd4 .obj/quickjs.o + 0x00000000c001ce76 0xd4 .obj/quickjs.o .text.js_date_setTime - 0x00000000c001cd7a 0x54 .obj/quickjs.o + 0x00000000c001cf4a 0x54 .obj/quickjs.o .text.js_math_hypot - 0x00000000c001cdce 0xa0 .obj/quickjs.o + 0x00000000c001cf9e 0xa0 .obj/quickjs.o .text.js_math_min_max - 0x00000000c001ce6e 0x16a .obj/quickjs.o + 0x00000000c001d03e 0x16a .obj/quickjs.o .text.js_string_fromCodePoint - 0x00000000c001cfd8 0xc2 .obj/quickjs.o + 0x00000000c001d1a8 0xc2 .obj/quickjs.o .text.js_number_isSafeInteger - 0x00000000c001d09a 0x8c .obj/quickjs.o + 0x00000000c001d26a 0x8c .obj/quickjs.o .text.js_global_isFinite - 0x00000000c001d126 0x4e .obj/quickjs.o + 0x00000000c001d2f6 0x4e .obj/quickjs.o .text.js_number_isFinite - 0x00000000c001d174 0x22 .obj/quickjs.o + 0x00000000c001d344 0x22 .obj/quickjs.o .text.js_global_isNaN - 0x00000000c001d196 0x36 .obj/quickjs.o + 0x00000000c001d366 0x36 .obj/quickjs.o .text.js_number_isNaN - 0x00000000c001d1cc 0x22 .obj/quickjs.o + 0x00000000c001d39c 0x22 .obj/quickjs.o .text.JS_ToArrayLengthFree - 0x00000000c001d1ee 0x110 .obj/quickjs.o + 0x00000000c001d3be 0x110 .obj/quickjs.o .text.set_array_length - 0x00000000c001d2fe 0x1f0 .obj/quickjs.o + 0x00000000c001d4ce 0x1f0 .obj/quickjs.o .text.JS_ToInt32SatFree - 0x00000000c001d4ee 0x98 .obj/quickjs.o + 0x00000000c001d6be 0x98 .obj/quickjs.o .text.JS_ToInt32Sat - 0x00000000c001d586 0x28 .obj/quickjs.o - 0x00000000c001d586 JS_ToInt32Sat + 0x00000000c001d756 0x28 .obj/quickjs.o + 0x00000000c001d756 JS_ToInt32Sat .text.js_get_radix - 0x00000000c001d5ae 0x3a .obj/quickjs.o + 0x00000000c001d77e 0x3a .obj/quickjs.o .text.js_number_toString - 0x00000000c001d5e8 0x94 .obj/quickjs.o + 0x00000000c001d7b8 0x94 .obj/quickjs.o .text.js_string_codePointAt - 0x00000000c001d67c 0x9c .obj/quickjs.o + 0x00000000c001d84c 0x9c .obj/quickjs.o .text.js_string_charCodeAt - 0x00000000c001d718 0xbe .obj/quickjs.o + 0x00000000c001d8e8 0xbe .obj/quickjs.o .text.js_string_charAt - 0x00000000c001d7d6 0xd0 .obj/quickjs.o + 0x00000000c001d9a6 0xd0 .obj/quickjs.o .text.js_number_toPrecision - 0x00000000c001d8a6 0xb8 .obj/quickjs.o + 0x00000000c001da76 0xb8 .obj/quickjs.o .text.js_number_toFixed - 0x00000000c001d95e 0xa2 .obj/quickjs.o + 0x00000000c001db2e 0xa2 .obj/quickjs.o .text.js_number_toExponential - 0x00000000c001da00 0xcc .obj/quickjs.o + 0x00000000c001dbd0 0xcc .obj/quickjs.o .text.JS_ToInt32Clamp - 0x00000000c001dacc 0x60 .obj/quickjs.o - 0x00000000c001dacc JS_ToInt32Clamp + 0x00000000c001dc9c 0x60 .obj/quickjs.o + 0x00000000c001dc9c JS_ToInt32Clamp .text.js_typed_array_indexOf - 0x00000000c001db2c 0x360 .obj/quickjs.o + 0x00000000c001dcfc 0x360 .obj/quickjs.o .text.js_typed_array_copyWithin - 0x00000000c001de8c 0xf2 .obj/quickjs.o + 0x00000000c001e05c 0xf2 .obj/quickjs.o .text.js_string_slice - 0x00000000c001df7e 0xc0 .obj/quickjs.o + 0x00000000c001e14e 0xc0 .obj/quickjs.o .text.js_string_substr - 0x00000000c001e03e 0xba .obj/quickjs.o + 0x00000000c001e20e 0xba .obj/quickjs.o .text.js_string_substring - 0x00000000c001e0f8 0xc8 .obj/quickjs.o + 0x00000000c001e2c8 0xc8 .obj/quickjs.o .text.JS_ToInt64SatFree - 0x00000000c001e1c0 0x9e .obj/quickjs.o + 0x00000000c001e390 0x9e .obj/quickjs.o .text.JS_ToInt64Sat - 0x00000000c001e25e 0x28 .obj/quickjs.o - 0x00000000c001e25e JS_ToInt64Sat + 0x00000000c001e42e 0x28 .obj/quickjs.o + 0x00000000c001e42e JS_ToInt64Sat .text.JS_ToIndex - 0x00000000c001e286 0x40 .obj/quickjs.o - 0x00000000c001e286 JS_ToIndex + 0x00000000c001e456 0x40 .obj/quickjs.o + 0x00000000c001e456 JS_ToIndex .text.js_dataview_constructor - 0x00000000c001e2c6 0x15e .obj/quickjs.o + 0x00000000c001e496 0x15e .obj/quickjs.o .text.js_shared_array_buffer_constructor - 0x00000000c001e424 0x3e .obj/quickjs.o + 0x00000000c001e5f4 0x3e .obj/quickjs.o .text.js_array_buffer_constructor - 0x00000000c001e462 0x3e .obj/quickjs.o + 0x00000000c001e632 0x3e .obj/quickjs.o .text.js_dataview_getValue - 0x00000000c001e4a0 0x30e .obj/quickjs.o + 0x00000000c001e670 0x30e .obj/quickjs.o .text.JS_ToInt64Clamp - 0x00000000c001e7ae 0x5e .obj/quickjs.o - 0x00000000c001e7ae JS_ToInt64Clamp + 0x00000000c001e97e 0x5e .obj/quickjs.o + 0x00000000c001e97e JS_ToInt64Clamp .text.JS_ToLengthFree - 0x00000000c001e80c 0x32 .obj/quickjs.o + 0x00000000c001e9dc 0x32 .obj/quickjs.o .text.js_get_length64 - 0x00000000c001e83e 0x4c .obj/quickjs.o + 0x00000000c001ea0e 0x4c .obj/quickjs.o .text.JS_ToInt64 - 0x00000000c001e88a 0xa6 .obj/quickjs.o - 0x00000000c001e88a JS_ToInt64 + 0x00000000c001ea5a 0xa6 .obj/quickjs.o + 0x00000000c001ea5a JS_ToInt64 .text.JS_ToNumericFree - 0x00000000c001e930 0xa .obj/quickjs.o + 0x00000000c001eb00 0xa .obj/quickjs.o .text.js_add_slow - 0x00000000c001e93a 0x1c2 .obj/quickjs.o + 0x00000000c001eb0a 0x1c2 .obj/quickjs.o .text.js_binary_arith_slow - 0x00000000c001eafc 0x256 .obj/quickjs.o + 0x00000000c001eccc 0x256 .obj/quickjs.o .text.js_unary_arith_slow - 0x00000000c001ed52 0x12a .obj/quickjs.o + 0x00000000c001ef22 0x12a .obj/quickjs.o .text.js_not_slow - 0x00000000c001ee7c 0x7e .obj/quickjs.o + 0x00000000c001f04c 0x7e .obj/quickjs.o .text.js_shr_slow - 0x00000000c001eefa 0xf6 .obj/quickjs.o + 0x00000000c001f0ca 0xf6 .obj/quickjs.o .text.js_binary_logic_slow - 0x00000000c001eff0 0x15a .obj/quickjs.o + 0x00000000c001f1c0 0x15a .obj/quickjs.o .text.js_number_constructor - 0x00000000c001f14a 0xb4 .obj/quickjs.o + 0x00000000c001f31a 0xb4 .obj/quickjs.o .text.JS_ToCString - 0x00000000c001f1fe 0x10 .obj/quickjs.o + 0x00000000c001f3ce 0x10 .obj/quickjs.o .text.JS_AtomToCString - 0x00000000c001f20e 0x40 .obj/quickjs.o - 0x00000000c001f20e JS_AtomToCString + 0x00000000c001f3de 0x40 .obj/quickjs.o + 0x00000000c001f3de JS_AtomToCString .text.build_backtrace - 0x00000000c001f24e 0x2f2 .obj/quickjs.o + 0x00000000c001f41e 0x2f2 .obj/quickjs.o .text.js_resolve_module - 0x00000000c001f540 0xaa .obj/quickjs.o + 0x00000000c001f710 0xaa .obj/quickjs.o .text.JS_ResolveModule - 0x00000000c001f5ea 0x32 .obj/quickjs.o - 0x00000000c001f5ea JS_ResolveModule + 0x00000000c001f7ba 0x32 .obj/quickjs.o + 0x00000000c001f7ba JS_ResolveModule .text.js_parseFloat - 0x00000000c001f61c 0x52 .obj/quickjs.o + 0x00000000c001f7ec 0x52 .obj/quickjs.o .text.js_parseInt - 0x00000000c001f66e 0xa2 .obj/quickjs.o + 0x00000000c001f83e 0xa2 .obj/quickjs.o .text.js_compile_regexp - 0x00000000c001f710 0x14c .obj/quickjs.o + 0x00000000c001f8e0 0x14c .obj/quickjs.o .text.JS_StringToBigInt - 0x00000000c001f85c 0xda .obj/quickjs.o + 0x00000000c001fa2c 0xda .obj/quickjs.o .text.JS_StringToBigIntErr - 0x00000000c001f936 0x42 .obj/quickjs.o + 0x00000000c001fb06 0x42 .obj/quickjs.o .text.JS_ToBigIntFree - 0x00000000c001f978 0x9e .obj/quickjs.o + 0x00000000c001fb48 0x9e .obj/quickjs.o .text.JS_ToBigInt64Free - 0x00000000c001fa16 0x3e .obj/quickjs.o + 0x00000000c001fbe6 0x3e .obj/quickjs.o .text.JS_ToBigInt64 - 0x00000000c001fa54 0x28 .obj/quickjs.o - 0x00000000c001fa54 JS_ToBigInt64 + 0x00000000c001fc24 0x28 .obj/quickjs.o + 0x00000000c001fc24 JS_ToBigInt64 .text.JS_ToInt64Ext - 0x00000000c001fa7c 0x18 .obj/quickjs.o - 0x00000000c001fa7c JS_ToInt64Ext + 0x00000000c001fc4c 0x18 .obj/quickjs.o + 0x00000000c001fc4c JS_ToInt64Ext .text.js_dataview_setValue - 0x00000000c001fa94 0x1fa .obj/quickjs.o + 0x00000000c001fc64 0x1fa .obj/quickjs.o .text.js_typed_array_fill - 0x00000000c001fc8e 0x1c6 .obj/quickjs.o + 0x00000000c001fe5e 0x1c6 .obj/quickjs.o .text.JS_ToBigInt - 0x00000000c001fe54 0x28 .obj/quickjs.o + 0x00000000c0020024 0x28 .obj/quickjs.o .text.js_bigint_asUintN - 0x00000000c001fe7c 0x12c .obj/quickjs.o + 0x00000000c002004c 0x12c .obj/quickjs.o .text.js_binary_arith_bigint - 0x00000000c001ffa8 0x22a .obj/quickjs.o + 0x00000000c0020178 0x22a .obj/quickjs.o .text.js_unary_arith_bigint - 0x00000000c00201d2 0x12c .obj/quickjs.o + 0x00000000c00203a2 0x12c .obj/quickjs.o .text.js_bigint_constructor - 0x00000000c00202fe 0x1e4 .obj/quickjs.o + 0x00000000c00204ce 0x1e4 .obj/quickjs.o .text.js_relational_slow - 0x00000000c00204e2 0x232 .obj/quickjs.o + 0x00000000c00206b2 0x232 .obj/quickjs.o .text.js_eq_slow - 0x00000000c0020714 0x2dc .obj/quickjs.o + 0x00000000c00208e4 0x2dc .obj/quickjs.o .text.js_atom_concat_str - 0x00000000c00209f0 0xc0 .obj/quickjs.o + 0x00000000c0020bc0 0xc0 .obj/quickjs.o .text.js_string_normalize - 0x00000000c0020ab0 0x164 .obj/quickjs.o + 0x00000000c0020c80 0x164 .obj/quickjs.o .text.JS_EvalObject - 0x00000000c0020c14 0x86 .obj/quickjs.o + 0x00000000c0020de4 0x86 .obj/quickjs.o .text.js_function_constructor - 0x00000000c0020c9a 0x1ee .obj/quickjs.o + 0x00000000c0020e6a 0x1ee .obj/quickjs.o .text.js_global_eval - 0x00000000c0020e88 0x18 .obj/quickjs.o + 0x00000000c0021058 0x18 .obj/quickjs.o .text.JS_AtomIsNumericIndex1 - 0x00000000c0020ea0 0x1d8 .obj/quickjs.o + 0x00000000c0021070 0x1d8 .obj/quickjs.o .text.JS_AtomIsNumericIndex - 0x00000000c0021078 0x38 .obj/quickjs.o + 0x00000000c0021248 0x38 .obj/quickjs.o .text.JS_CreateProperty - 0x00000000c00210b0 0x28e .obj/quickjs.o + 0x00000000c0021280 0x28e .obj/quickjs.o .text.js_string_includes - 0x00000000c002133e 0x17a .obj/quickjs.o + 0x00000000c002150e 0x17a .obj/quickjs.o .text.js_string_indexOf - 0x00000000c00214b8 0x15a .obj/quickjs.o + 0x00000000c0021688 0x15a .obj/quickjs.o .text.JS_ToPropertyKey - 0x00000000c0021612 0xa .obj/quickjs.o - 0x00000000c0021612 JS_ToPropertyKey + 0x00000000c00217e2 0xa .obj/quickjs.o + 0x00000000c00217e2 JS_ToPropertyKey .text.JS_ValueToAtom - 0x00000000c002161c 0x78 .obj/quickjs.o - 0x00000000c002161c JS_ValueToAtom + 0x00000000c00217ec 0x78 .obj/quickjs.o + 0x00000000c00217ec JS_ValueToAtom .text.js_date_Symbol_toPrimitive - 0x00000000c0021694 0x98 .obj/quickjs.o + 0x00000000c0021864 0x98 .obj/quickjs.o .text.js_regexp_get_source - 0x00000000c002172c 0x1b8 .obj/quickjs.o + 0x00000000c00218fc 0x1b8 .obj/quickjs.o .text.js_bigint_to_string1 - 0x00000000c00218e4 0x9c .obj/quickjs.o + 0x00000000c0021ab4 0x9c .obj/quickjs.o .text.js_bigint_toString - 0x00000000c0021980 0x8e .obj/quickjs.o + 0x00000000c0021b50 0x8e .obj/quickjs.o .text.js_bigint_to_string - 0x00000000c0021a0e 0xa .obj/quickjs.o + 0x00000000c0021bde 0xa .obj/quickjs.o .text.get_date_string - 0x00000000c0021a18 0x30c .obj/quickjs.o + 0x00000000c0021be8 0x30c .obj/quickjs.o .text.js_date_constructor - 0x00000000c0021d24 0x244 .obj/quickjs.o - .text.add_var 0x00000000c0021f68 0x86 .obj/quickjs.o + 0x00000000c0021ef4 0x244 .obj/quickjs.o + .text.add_var 0x00000000c0022138 0x86 .obj/quickjs.o .text.add_scope_var - 0x00000000c0021fee 0x52 .obj/quickjs.o + 0x00000000c00221be 0x52 .obj/quickjs.o .text.add_private_class_field - 0x00000000c0022040 0x3e .obj/quickjs.o + 0x00000000c0022210 0x3e .obj/quickjs.o .text.add_var_this - 0x00000000c002207e 0x2e .obj/quickjs.o + 0x00000000c002224e 0x2e .obj/quickjs.o .text.add_arguments_var - 0x00000000c00220ac 0x30 .obj/quickjs.o + 0x00000000c002227c 0x30 .obj/quickjs.o .text.add_func_var - 0x00000000c00220dc 0x54 .obj/quickjs.o + 0x00000000c00222ac 0x54 .obj/quickjs.o .text.resolve_pseudo_var - 0x00000000c0022130 0x9a .obj/quickjs.o - .text.add_arg 0x00000000c00221ca 0x86 .obj/quickjs.o + 0x00000000c0022300 0x9a .obj/quickjs.o + .text.add_arg 0x00000000c002239a 0x86 .obj/quickjs.o .text.add_closure_var - 0x00000000c0022250 0xc2 .obj/quickjs.o + 0x00000000c0022420 0xc2 .obj/quickjs.o .text.get_closure_var2 - 0x00000000c0022312 0xae .obj/quickjs.o + 0x00000000c00224e2 0xae .obj/quickjs.o .text.resolve_scope_private_field1 - 0x00000000c00223c0 0xf2 .obj/quickjs.o + 0x00000000c0022590 0xf2 .obj/quickjs.o .text.resolve_scope_var - 0x00000000c00224b2 0xa00 .obj/quickjs.o + 0x00000000c0022682 0xa00 .obj/quickjs.o .text.resolve_variables - 0x00000000c0022eb2 0xc52 .obj/quickjs.o + 0x00000000c0023082 0xc52 .obj/quickjs.o .text.add_eval_variables - 0x00000000c0023b04 0x396 .obj/quickjs.o + 0x00000000c0023cd4 0x396 .obj/quickjs.o .text.ss_check - 0x00000000c0023e9a 0xce .obj/quickjs.o + 0x00000000c002406a 0xce .obj/quickjs.o .text.js_create_function - 0x00000000c0023f68 0x1c1a .obj/quickjs.o + 0x00000000c0024138 0x1c1a .obj/quickjs.o .text.js_string_pad - 0x00000000c0025b82 0x1d4 .obj/quickjs.o + 0x00000000c0025d52 0x1d4 .obj/quickjs.o .text.js_string_repeat - 0x00000000c0025d56 0x114 .obj/quickjs.o + 0x00000000c0025f26 0x114 .obj/quickjs.o .text.js_throw_URIError - 0x00000000c0025e6a 0x24 .obj/quickjs.o + 0x00000000c002603a 0x24 .obj/quickjs.o .text.js_global_encodeURI - 0x00000000c0025e8e 0x1f8 .obj/quickjs.o + 0x00000000c002605e 0x1f8 .obj/quickjs.o .text.hex_decode - 0x00000000c0026086 0x76 .obj/quickjs.o + 0x00000000c0026256 0x76 .obj/quickjs.o .text.js_global_decodeURI - 0x00000000c00260fc 0x1bc .obj/quickjs.o + 0x00000000c00262cc 0x1bc .obj/quickjs.o .text.js_parse_error - 0x00000000c00262b8 0x54 .obj/quickjs.o - 0x00000000c00262b8 js_parse_error + 0x00000000c0026488 0x54 .obj/quickjs.o + 0x00000000c0026488 js_parse_error .text.add_export_entry2 - 0x00000000c002630c 0xd0 .obj/quickjs.o + 0x00000000c00264dc 0xd0 .obj/quickjs.o .text.JS_AddModuleExport - 0x00000000c00263dc 0x4a .obj/quickjs.o - 0x00000000c00263dc JS_AddModuleExport + 0x00000000c00265ac 0x4a .obj/quickjs.o + 0x00000000c00265ac JS_AddModuleExport .text.JS_AddModuleExportList - 0x00000000c0026426 0x4a .obj/quickjs.o - 0x00000000c0026426 JS_AddModuleExportList + 0x00000000c00265f6 0x4a .obj/quickjs.o + 0x00000000c00265f6 JS_AddModuleExportList .text.js_parse_string - 0x00000000c0026470 0x288 .obj/quickjs.o + 0x00000000c0026640 0x288 .obj/quickjs.o .text.json_next_token - 0x00000000c00266f8 0x35c .obj/quickjs.o + 0x00000000c00268c8 0x35c .obj/quickjs.o .text.json_parse_expect - 0x00000000c0026a54 0x18 .obj/quickjs.o + 0x00000000c0026c24 0x18 .obj/quickjs.o .text.js_parse_template_part - 0x00000000c0026a6c 0x12a .obj/quickjs.o + 0x00000000c0026c3c 0x12a .obj/quickjs.o .text.next_token - 0x00000000c0026b96 0x78e .obj/quickjs.o + 0x00000000c0026d66 0x78e .obj/quickjs.o .text.js_parse_seek_token - 0x00000000c0027324 0x14 .obj/quickjs.o + 0x00000000c00274f4 0x14 .obj/quickjs.o .text.js_parse_directives.part.0 - 0x00000000c0027338 0x12c .obj/quickjs.o - .text.is_let 0x00000000c0027464 0x98 .obj/quickjs.o + 0x00000000c0027508 0x12c .obj/quickjs.o + .text.is_let 0x00000000c0027634 0x98 .obj/quickjs.o .text.js_parse_regexp - 0x00000000c00274fc 0x1a2 .obj/quickjs.o + 0x00000000c00276cc 0x1a2 .obj/quickjs.o .text.js_parse_skip_parens_token - 0x00000000c002769e 0x256 .obj/quickjs.o + 0x00000000c002786e 0x256 .obj/quickjs.o .text.js_parse_expect_semi - 0x00000000c00278f4 0x36 .obj/quickjs.o + 0x00000000c0027ac4 0x36 .obj/quickjs.o .text.js_parse_check_duplicate_parameter - 0x00000000c002792a 0x50 .obj/quickjs.o + 0x00000000c0027afa 0x50 .obj/quickjs.o .text.get_lvalue - 0x00000000c002797a 0x328 .obj/quickjs.o + 0x00000000c0027b4a 0x328 .obj/quickjs.o .text.js_parse_error_reserved_identifier - 0x00000000c0027ca2 0x2a .obj/quickjs.o + 0x00000000c0027e72 0x2a .obj/quickjs.o .text.js_parse_function_check_names - 0x00000000c0027ccc 0x104 .obj/quickjs.o + 0x00000000c0027e9c 0x104 .obj/quickjs.o .text.define_var - 0x00000000c0027dd0 0x28e .obj/quickjs.o + 0x00000000c0027fa0 0x28e .obj/quickjs.o .text.js_define_var - 0x00000000c002805e 0xb6 .obj/quickjs.o + 0x00000000c002822e 0xb6 .obj/quickjs.o .text.js_parse_from_clause - 0x00000000c0028114 0x6c .obj/quickjs.o + 0x00000000c00282e4 0x6c .obj/quickjs.o .text.add_import - 0x00000000c0028180 0xe0 .obj/quickjs.o + 0x00000000c0028350 0xe0 .obj/quickjs.o .text.js_parse_destructuring_var.constprop.0 - 0x00000000c0028260 0x82 .obj/quickjs.o + 0x00000000c0028430 0x82 .obj/quickjs.o .text.js_parse_expect - 0x00000000c00282e2 0x18 .obj/quickjs.o + 0x00000000c00284b2 0x18 .obj/quickjs.o .text.js_regexp_constructor_internal - 0x00000000c00282fa 0x90 .obj/quickjs.o + 0x00000000c00284ca 0x90 .obj/quickjs.o .text.js_regexp_constructor - 0x00000000c002838a 0x262 .obj/quickjs.o + 0x00000000c002855a 0x262 .obj/quickjs.o .text.JS_ToObject - 0x00000000c00285ec 0xd8 .obj/quickjs.o + 0x00000000c00287bc 0xd8 .obj/quickjs.o .text.js_object_get___proto__ - 0x00000000c00286c4 0x4c .obj/quickjs.o + 0x00000000c0028894 0x4c .obj/quickjs.o .text.js_object_isPrototypeOf - 0x00000000c0028710 0xc6 .obj/quickjs.o + 0x00000000c00288e0 0xc6 .obj/quickjs.o .text.js_object_valueOf - 0x00000000c00287d6 0x8 .obj/quickjs.o + 0x00000000c00289a6 0x8 .obj/quickjs.o .text.js_object_constructor - 0x00000000c00287de 0x42 .obj/quickjs.o + 0x00000000c00289ae 0x42 .obj/quickjs.o .text.JS_DeleteProperty - 0x00000000c0028820 0x70 .obj/quickjs.o - 0x00000000c0028820 JS_DeleteProperty + 0x00000000c00289f0 0x70 .obj/quickjs.o + 0x00000000c00289f0 JS_DeleteProperty .text.JS_DeletePropertyInt64 - 0x00000000c0028890 0x6e .obj/quickjs.o - 0x00000000c0028890 JS_DeletePropertyInt64 + 0x00000000c0028a60 0x6e .obj/quickjs.o + 0x00000000c0028a60 JS_DeletePropertyInt64 .text.js_reflect_deleteProperty - 0x00000000c00288fe 0x7a .obj/quickjs.o + 0x00000000c0028ace 0x7a .obj/quickjs.o .text.js_create_array_iterator - 0x00000000c0028978 0xaa .obj/quickjs.o + 0x00000000c0028b48 0xaa .obj/quickjs.o .text.js_create_typed_array_iterator - 0x00000000c0028a22 0x3a .obj/quickjs.o + 0x00000000c0028bf2 0x3a .obj/quickjs.o .text.js_instantiate_prototype - 0x00000000c0028a5c 0x66 .obj/quickjs.o + 0x00000000c0028c2c 0x66 .obj/quickjs.o .text.js_create_iterator_result - 0x00000000c0028ac2 0x8c .obj/quickjs.o + 0x00000000c0028c92 0x8c .obj/quickjs.o .text.js_async_from_sync_iterator_unwrap - 0x00000000c0028b4e 0x36 .obj/quickjs.o + 0x00000000c0028d1e 0x36 .obj/quickjs.o .text.js_call_c_function - 0x00000000c0028b84 0x26e .obj/quickjs.o + 0x00000000c0028d54 0x26e .obj/quickjs.o .text.js_function_set_properties - 0x00000000c0028df2 0x46 .obj/quickjs.o + 0x00000000c0028fc2 0x46 .obj/quickjs.o .text.js_create_resolving_functions - 0x00000000c0028e38 0xf8 .obj/quickjs.o + 0x00000000c0029008 0xf8 .obj/quickjs.o .text.JS_NewCFunction3 - 0x00000000c0028f30 0x2b6 .obj/quickjs.o + 0x00000000c0029100 0x2b6 .obj/quickjs.o .text.JS_NewCFunction2 - 0x00000000c00291e6 0x10 .obj/quickjs.o - 0x00000000c00291e6 JS_NewCFunction2 + 0x00000000c00293b6 0x10 .obj/quickjs.o + 0x00000000c00293b6 JS_NewCFunction2 .text.JS_NewCFunctionData - 0x00000000c00291f6 0xd8 .obj/quickjs.o - 0x00000000c00291f6 JS_NewCFunctionData + 0x00000000c00293c6 0xd8 .obj/quickjs.o + 0x00000000c00293c6 JS_NewCFunctionData .text.js_async_generator_resolve_function_create.constprop.0 - 0x00000000c00292ce 0x82 .obj/quickjs.o + 0x00000000c002949e 0x82 .obj/quickjs.o .text.js_closure - 0x00000000c0029350 0x12c .obj/quickjs.o + 0x00000000c0029520 0x12c .obj/quickjs.o .text.JS_DefinePropertyValueValue - 0x00000000c002947c 0x6a .obj/quickjs.o - 0x00000000c002947c JS_DefinePropertyValueValue + 0x00000000c002964c 0x6a .obj/quickjs.o + 0x00000000c002964c JS_DefinePropertyValueValue .text.JS_CreateDataPropertyUint32 - 0x00000000c00294e6 0x44 .obj/quickjs.o + 0x00000000c00296b6 0x44 .obj/quickjs.o .text.js_create_array - 0x00000000c002952a 0x88 .obj/quickjs.o + 0x00000000c00296fa 0x88 .obj/quickjs.o .text.js_map_iterator_next - 0x00000000c00295b2 0x122 .obj/quickjs.o + 0x00000000c0029782 0x122 .obj/quickjs.o .text.JS_DefinePropertyValueUint32 - 0x00000000c00296d4 0x42 .obj/quickjs.o - 0x00000000c00296d4 JS_DefinePropertyValueUint32 + 0x00000000c00298a4 0x42 .obj/quickjs.o + 0x00000000c00298a4 JS_DefinePropertyValueUint32 .text.JS_DefinePropertyValueInt64 - 0x00000000c0029716 0x42 .obj/quickjs.o - 0x00000000c0029716 JS_DefinePropertyValueInt64 + 0x00000000c00298e6 0x42 .obj/quickjs.o + 0x00000000c00298e6 JS_DefinePropertyValueInt64 .text.JS_DefinePropertyValueStr - 0x00000000c0029758 0x4a .obj/quickjs.o - 0x00000000c0029758 JS_DefinePropertyValueStr + 0x00000000c0029928 0x4a .obj/quickjs.o + 0x00000000c0029928 JS_DefinePropertyValueStr .text.JS_GetModuleNamespace - 0x00000000c00297a2 0x216 .obj/quickjs.o - 0x00000000c00297a2 JS_GetModuleNamespace + 0x00000000c0029972 0x216 .obj/quickjs.o + 0x00000000c0029972 JS_GetModuleNamespace .text.js_module_ns_autoinit - 0x00000000c00299b8 0xa .obj/quickjs.o + 0x00000000c0029b88 0xa .obj/quickjs.o .text.JS_SetConstructor2 - 0x00000000c00299c2 0x5a .obj/quickjs.o + 0x00000000c0029b92 0x5a .obj/quickjs.o .text.JS_SetConstructor - 0x00000000c0029a1c 0xc .obj/quickjs.o - 0x00000000c0029a1c JS_SetConstructor + 0x00000000c0029bec 0xc .obj/quickjs.o + 0x00000000c0029bec JS_SetConstructor .text.JS_NewGlobalCConstructor2 - 0x00000000c0029a28 0x4e .obj/quickjs.o + 0x00000000c0029bf8 0x4e .obj/quickjs.o .text.JS_NewGlobalCConstructor - 0x00000000c0029a76 0x3e .obj/quickjs.o + 0x00000000c0029c46 0x3e .obj/quickjs.o .text.JS_NewGlobalCConstructorOnly.constprop.0 - 0x00000000c0029ab4 0x40 .obj/quickjs.o + 0x00000000c0029c84 0x40 .obj/quickjs.o .text.json_parse_value - 0x00000000c0029af4 0x28a .obj/quickjs.o + 0x00000000c0029cc4 0x28a .obj/quickjs.o .text.JS_ParseJSON2 - 0x00000000c0029d7e 0xb0 .obj/quickjs.o - 0x00000000c0029d7e JS_ParseJSON2 + 0x00000000c0029f4e 0xb0 .obj/quickjs.o + 0x00000000c0029f4e JS_ParseJSON2 .text.JS_ParseJSON - 0x00000000c0029e2e 0xa .obj/quickjs.o - 0x00000000c0029e2e JS_ParseJSON + 0x00000000c0029ffe 0xa .obj/quickjs.o + 0x00000000c0029ffe JS_ParseJSON .text.js_proxy_revocable - 0x00000000c0029e38 0xba .obj/quickjs.o + 0x00000000c002a008 0xba .obj/quickjs.o .text.js_aggregate_error_constructor - 0x00000000c0029ef2 0x5e .obj/quickjs.o + 0x00000000c002a0c2 0x5e .obj/quickjs.o .text.js_parse_template - 0x00000000c0029f50 0x262 .obj/quickjs.o + 0x00000000c002a120 0x262 .obj/quickjs.o .text.js_parse_postfix_expr - 0x00000000c002a1b2 0xfb8 .obj/quickjs.o + 0x00000000c002a382 0xfb8 .obj/quickjs.o .text.js_parse_unary - 0x00000000c002b16a 0x49c .obj/quickjs.o + 0x00000000c002b33a 0x49c .obj/quickjs.o .text.js_parse_expr_binary - 0x00000000c002b606 0x234 .obj/quickjs.o + 0x00000000c002b7d6 0x234 .obj/quickjs.o .text.js_parse_logical_and_or - 0x00000000c002b83a 0xda .obj/quickjs.o + 0x00000000c002ba0a 0xda .obj/quickjs.o .text.js_parse_destructuring_element - 0x00000000c002b914 0x8b2 .obj/quickjs.o + 0x00000000c002bae4 0x8b2 .obj/quickjs.o .text.js_parse_function_decl2.constprop.0 - 0x00000000c002c1c6 0xa16 .obj/quickjs.o + 0x00000000c002c396 0xa16 .obj/quickjs.o .text.js_parse_function_decl.constprop.0 - 0x00000000c002cbdc 0xa .obj/quickjs.o + 0x00000000c002cdac 0xa .obj/quickjs.o .text.js_parse_assign_expr2 - 0x00000000c002cbe6 0x72a .obj/quickjs.o + 0x00000000c002cdb6 0x72a .obj/quickjs.o .text.js_parse_expr2 - 0x00000000c002d310 0x5a .obj/quickjs.o + 0x00000000c002d4e0 0x5a .obj/quickjs.o .text.js_parse_expr - 0x00000000c002d36a 0x6 .obj/quickjs.o + 0x00000000c002d53a 0x6 .obj/quickjs.o .text.js_parse_property_name - 0x00000000c002d370 0x22e .obj/quickjs.o + 0x00000000c002d540 0x22e .obj/quickjs.o .text.js_parse_expr_paren - 0x00000000c002d59e 0x38 .obj/quickjs.o + 0x00000000c002d76e 0x38 .obj/quickjs.o .text.js_parse_assign_expr - 0x00000000c002d5d6 0x6 .obj/quickjs.o + 0x00000000c002d7a6 0x6 .obj/quickjs.o .text.js_parse_var - 0x00000000c002d5dc 0x232 .obj/quickjs.o + 0x00000000c002d7ac 0x232 .obj/quickjs.o .text.js_parse_class - 0x00000000c002d80e 0xa08 .obj/quickjs.o + 0x00000000c002d9de 0xa08 .obj/quickjs.o .text.js_parse_statement_or_decl - 0x00000000c002e216 0x12c8 .obj/quickjs.o + 0x00000000c002e3e6 0x12c8 .obj/quickjs.o .text.js_parse_source_element - 0x00000000c002f4de 0x638 .obj/quickjs.o + 0x00000000c002f6ae 0x638 .obj/quickjs.o .text.js_parse_block - 0x00000000c002fb16 0x5a .obj/quickjs.o + 0x00000000c002fce6 0x5a .obj/quickjs.o .text.js_string_constructor - 0x00000000c002fb70 0xea .obj/quickjs.o + 0x00000000c002fd40 0xea .obj/quickjs.o .text.js_symbol_toString - 0x00000000c002fc5a 0x50 .obj/quickjs.o + 0x00000000c002fe2a 0x50 .obj/quickjs.o .text.JS_DefineObjectName.constprop.0 - 0x00000000c002fcaa 0x56 .obj/quickjs.o + 0x00000000c002fe7a 0x56 .obj/quickjs.o .text.JS_DefineObjectNameComputed.constprop.0 - 0x00000000c002fd00 0x80 .obj/quickjs.o + 0x00000000c002fed0 0x80 .obj/quickjs.o .text.js_string_define_own_property - 0x00000000c002fd80 0xf0 .obj/quickjs.o + 0x00000000c002ff50 0xf0 .obj/quickjs.o .text.js_arguments_define_own_property - 0x00000000c002fe70 0x76 .obj/quickjs.o + 0x00000000c0030040 0x76 .obj/quickjs.o .text.JS_DefinePropertyGetSet - 0x00000000c002fee6 0x52 .obj/quickjs.o - 0x00000000c002fee6 JS_DefinePropertyGetSet + 0x00000000c00300b6 0x52 .obj/quickjs.o + 0x00000000c00300b6 JS_DefinePropertyGetSet .text.js_object___defineGetter__ - 0x00000000c002ff38 0xd2 .obj/quickjs.o + 0x00000000c0030108 0xd2 .obj/quickjs.o .text.JS_SetGlobalVar - 0x00000000c003000a 0xee .obj/quickjs.o + 0x00000000c00301da 0xee .obj/quickjs.o .text.JS_SetProperty - 0x00000000c00300f8 0x16 .obj/quickjs.o + 0x00000000c00302c8 0x16 .obj/quickjs.o .text.js_regexp_compile - 0x00000000c003010e 0x15a .obj/quickjs.o + 0x00000000c00302de 0x15a .obj/quickjs.o .text.js_array_constructor - 0x00000000c0030268 0xf8 .obj/quickjs.o + 0x00000000c0030438 0xf8 .obj/quickjs.o .text.JS_SetPropertyInt64 - 0x00000000c0030360 0x7e .obj/quickjs.o - 0x00000000c0030360 JS_SetPropertyInt64 + 0x00000000c0030530 0x7e .obj/quickjs.o + 0x00000000c0030530 JS_SetPropertyInt64 .text.js_array_fill - 0x00000000c00303de 0xca .obj/quickjs.o + 0x00000000c00305ae 0xca .obj/quickjs.o .text.JS_SetPropertyStr - 0x00000000c00304a8 0x4e .obj/quickjs.o - 0x00000000c00304a8 JS_SetPropertyStr + 0x00000000c0030678 0x4e .obj/quickjs.o + 0x00000000c0030678 JS_SetPropertyStr .text.js_reflect_set - 0x00000000c00304f6 0xb4 .obj/quickjs.o + 0x00000000c00306c6 0xb4 .obj/quickjs.o .text.JS_GetOwnPropertyNamesInternal - 0x00000000c00305aa 0x3fc .obj/quickjs.o + 0x00000000c003077a 0x3fc .obj/quickjs.o .text.JS_GetOwnPropertyNames - 0x00000000c00309a6 0x1e .obj/quickjs.o - 0x00000000c00309a6 JS_GetOwnPropertyNames + 0x00000000c0030b76 0x1e .obj/quickjs.o + 0x00000000c0030b76 JS_GetOwnPropertyNames .text.JS_GetOwnProperty - 0x00000000c00309c4 0x1e .obj/quickjs.o - 0x00000000c00309c4 JS_GetOwnProperty + 0x00000000c0030b94 0x1e .obj/quickjs.o + 0x00000000c0030b94 JS_GetOwnProperty .text.JS_HasProperty - 0x00000000c00309e2 0xd8 .obj/quickjs.o - 0x00000000c00309e2 JS_HasProperty + 0x00000000c0030bb2 0xd8 .obj/quickjs.o + 0x00000000c0030bb2 JS_HasProperty .text.js_reflect_has - 0x00000000c0030aba 0x78 .obj/quickjs.o + 0x00000000c0030c8a 0x78 .obj/quickjs.o .text.js_object_isSealed - 0x00000000c0030b32 0xd2 .obj/quickjs.o + 0x00000000c0030d02 0xd2 .obj/quickjs.o .text.js_object___lookupGetter__ - 0x00000000c0030c04 0xe4 .obj/quickjs.o + 0x00000000c0030dd4 0xe4 .obj/quickjs.o .text.js_object_propertyIsEnumerable - 0x00000000c0030ce8 0xa0 .obj/quickjs.o + 0x00000000c0030eb8 0xa0 .obj/quickjs.o .text.js_object_hasOwnProperty - 0x00000000c0030d88 0x96 .obj/quickjs.o + 0x00000000c0030f58 0x96 .obj/quickjs.o .text.js_object_hasOwn - 0x00000000c0030e1e 0x9a .obj/quickjs.o + 0x00000000c0030fee 0x9a .obj/quickjs.o .text.js_object_getOwnPropertyDescriptor - 0x00000000c0030eb8 0x1e2 .obj/quickjs.o + 0x00000000c0031088 0x1e2 .obj/quickjs.o .text.js_object_getOwnPropertyDescriptors - 0x00000000c003109a 0x146 .obj/quickjs.o + 0x00000000c003126a 0x146 .obj/quickjs.o .text.js_object_seal - 0x00000000c00311e0 0x15e .obj/quickjs.o + 0x00000000c00313b0 0x15e .obj/quickjs.o .text.js_typed_array_constructor_ta - 0x00000000c003133e 0x168 .obj/quickjs.o + 0x00000000c003150e 0x168 .obj/quickjs.o .text.js_typed_array_toSorted - 0x00000000c00314a6 0x7c .obj/quickjs.o + 0x00000000c0031676 0x7c .obj/quickjs.o .text.js_typed_array_toReversed - 0x00000000c0031522 0x7c .obj/quickjs.o + 0x00000000c00316f2 0x7c .obj/quickjs.o .text.js_typed_array_with - 0x00000000c003159e 0xe0 .obj/quickjs.o + 0x00000000c003176e 0xe0 .obj/quickjs.o .text.remainingElementsCount_add - 0x00000000c003167e 0x62 .obj/quickjs.o + 0x00000000c003184e 0x62 .obj/quickjs.o .text.js_typed_array_set - 0x00000000c00316e0 0x1ce .obj/quickjs.o + 0x00000000c00318b0 0x1ce .obj/quickjs.o .text.build_arg_list - 0x00000000c00318ae 0x10a .obj/quickjs.o + 0x00000000c0031a7e 0x10a .obj/quickjs.o .text.js_array_iterator_next - 0x00000000c00319b8 0x166 .obj/quickjs.o + 0x00000000c0031b88 0x166 .obj/quickjs.o .text.js_obj_to_desc - 0x00000000c0031b1e 0x2a4 .obj/quickjs.o + 0x00000000c0031cee 0x2a4 .obj/quickjs.o .text.JS_DefinePropertyDesc - 0x00000000c0031dc2 0x62 .obj/quickjs.o + 0x00000000c0031f92 0x62 .obj/quickjs.o .text.js_object_defineProperty - 0x00000000c0031e24 0xaa .obj/quickjs.o + 0x00000000c0031ff4 0xaa .obj/quickjs.o .text.JS_GetPropertyInt64 - 0x00000000c0031ece 0x7e .obj/quickjs.o + 0x00000000c003209e 0x7e .obj/quickjs.o .text.js_array_includes - 0x00000000c0031f4c 0x118 .obj/quickjs.o + 0x00000000c003211c 0x118 .obj/quickjs.o .text.js_typed_array_at - 0x00000000c0032064 0x82 .obj/quickjs.o + 0x00000000c0032234 0x82 .obj/quickjs.o .text.js_string___GetSubstitution.constprop.0 - 0x00000000c00320e6 0x2a6 .obj/quickjs.o + 0x00000000c00322b6 0x2a6 .obj/quickjs.o .text.js_string_raw - 0x00000000c003238c 0x150 .obj/quickjs.o + 0x00000000c003255c 0x150 .obj/quickjs.o .text.JS_TryGetPropertyInt64 - 0x00000000c00324dc 0xd2 .obj/quickjs.o + 0x00000000c00326ac 0xd2 .obj/quickjs.o .text.js_array_lastIndexOf - 0x00000000c00325ae 0xd8 .obj/quickjs.o + 0x00000000c003277e 0xd8 .obj/quickjs.o .text.js_array_indexOf - 0x00000000c0032686 0x140 .obj/quickjs.o + 0x00000000c0032856 0x140 .obj/quickjs.o .text.js_array_at - 0x00000000c00327c6 0xc2 .obj/quickjs.o + 0x00000000c0032996 0xc2 .obj/quickjs.o .text.js_array_toSpliced - 0x00000000c0032888 0x29e .obj/quickjs.o + 0x00000000c0032a58 0x29e .obj/quickjs.o .text.js_array_toReversed - 0x00000000c0032b26 0x140 .obj/quickjs.o + 0x00000000c0032cf6 0x140 .obj/quickjs.o .text.js_array_with - 0x00000000c0032c66 0x1fc .obj/quickjs.o + 0x00000000c0032e36 0x1fc .obj/quickjs.o .text.JS_CopySubArray - 0x00000000c0032e62 0x1a2 .obj/quickjs.o + 0x00000000c0033032 0x1a2 .obj/quickjs.o .text.js_array_copyWithin - 0x00000000c0033004 0xcc .obj/quickjs.o + 0x00000000c00331d4 0xcc .obj/quickjs.o .text.js_array_pop - 0x00000000c00330d0 0x16a .obj/quickjs.o + 0x00000000c00332a0 0x16a .obj/quickjs.o .text.js_array_push - 0x00000000c003323a 0x122 .obj/quickjs.o + 0x00000000c003340a 0x122 .obj/quickjs.o .text.js_array_sort - 0x00000000c003335c 0x216 .obj/quickjs.o + 0x00000000c003352c 0x216 .obj/quickjs.o .text.js_array_toSorted - 0x00000000c0033572 0x1d0 .obj/quickjs.o + 0x00000000c0033742 0x1d0 .obj/quickjs.o .text.js_array_reverse - 0x00000000c0033742 0x15e .obj/quickjs.o + 0x00000000c0033912 0x15e .obj/quickjs.o .text.js_object_toString - 0x00000000c00338a0 0x146 .obj/quickjs.o + 0x00000000c0033a70 0x146 .obj/quickjs.o .text.js_regexp_get_flags - 0x00000000c00339e6 0x190 .obj/quickjs.o + 0x00000000c0033bb6 0x190 .obj/quickjs.o .text.js_function_toString - 0x00000000c0033b76 0xd2 .obj/quickjs.o + 0x00000000c0033d46 0xd2 .obj/quickjs.o .text.JS_WriteObjectRec - 0x00000000c0033c48 0xd94 .obj/quickjs.o + 0x00000000c0033e18 0xd94 .obj/quickjs.o .text.JS_WriteObject2 - 0x00000000c00349dc 0x1a8 .obj/quickjs.o - 0x00000000c00349dc JS_WriteObject2 + 0x00000000c0034bac 0x1a8 .obj/quickjs.o + 0x00000000c0034bac JS_WriteObject2 .text.JS_WriteObject - 0x00000000c0034b84 0xc .obj/quickjs.o - 0x00000000c0034b84 JS_WriteObject + 0x00000000c0034d54 0xc .obj/quickjs.o + 0x00000000c0034d54 JS_WriteObject .text.JS_GetOwnPropertyNames2 - 0x00000000c0034b90 0x1f2 .obj/quickjs.o + 0x00000000c0034d60 0x1f2 .obj/quickjs.o .text.js_object_keys - 0x00000000c0034d82 0x12 .obj/quickjs.o + 0x00000000c0034f52 0x12 .obj/quickjs.o .text.js_reflect_ownKeys - 0x00000000c0034d94 0x22 .obj/quickjs.o + 0x00000000c0034f64 0x22 .obj/quickjs.o .text.js_object_getOwnPropertySymbols - 0x00000000c0034db6 0x12 .obj/quickjs.o + 0x00000000c0034f86 0x12 .obj/quickjs.o .text.js_object_getOwnPropertyNames - 0x00000000c0034dc8 0x12 .obj/quickjs.o + 0x00000000c0034f98 0x12 .obj/quickjs.o .text.js_function_bind - 0x00000000c0034dda 0x260 .obj/quickjs.o + 0x00000000c0034faa 0x260 .obj/quickjs.o .text.JS_CopyDataProperties - 0x00000000c003503a 0x160 .obj/quickjs.o + 0x00000000c003520a 0x160 .obj/quickjs.o .text.js_object_assign - 0x00000000c003519a 0xd6 .obj/quickjs.o + 0x00000000c003536a 0xd6 .obj/quickjs.o .text.js_regexp_exec - 0x00000000c0035270 0x5a4 .obj/quickjs.o + 0x00000000c0035440 0x5a4 .obj/quickjs.o .text.JS_ObjectDefineProperties - 0x00000000c0035814 0x100 .obj/quickjs.o + 0x00000000c00359e4 0x100 .obj/quickjs.o .text.js_object_defineProperties - 0x00000000c0035914 0x2c .obj/quickjs.o + 0x00000000c0035ae4 0x2c .obj/quickjs.o .text.js_object_create - 0x00000000c0035940 0x98 .obj/quickjs.o + 0x00000000c0035b10 0x98 .obj/quickjs.o .text.js_reflect_get - 0x00000000c00359d8 0x8c .obj/quickjs.o + 0x00000000c0035ba8 0x8c .obj/quickjs.o .text.JS_InstantiateFunctionListItem.isra.0 - 0x00000000c0035a64 0x21c .obj/quickjs.o + 0x00000000c0035c34 0x21c .obj/quickjs.o .text.JS_SetPropertyFunctionList - 0x00000000c0035c80 0x58 .obj/quickjs.o - 0x00000000c0035c80 JS_SetPropertyFunctionList + 0x00000000c0035e50 0x58 .obj/quickjs.o + 0x00000000c0035e50 JS_SetPropertyFunctionList .text.JS_InstantiateFunctionListItem2 - 0x00000000c0035cd8 0x70 .obj/quickjs.o + 0x00000000c0035ea8 0x70 .obj/quickjs.o .text.JS_NewContextRaw - 0x00000000c0035d48 0x1dc .obj/quickjs.o - 0x00000000c0035d48 JS_NewContextRaw + 0x00000000c0035f18 0x1dc .obj/quickjs.o + 0x00000000c0035f18 JS_NewContextRaw .text.JS_SetModuleExportList - 0x00000000c0035f24 0x100 .obj/quickjs.o - 0x00000000c0035f24 JS_SetModuleExportList + 0x00000000c00360f4 0x100 .obj/quickjs.o + 0x00000000c00360f4 JS_SetModuleExportList .text.JS_AddIntrinsicStringNormalize - 0x00000000c0036024 0x14 .obj/quickjs.o - 0x00000000c0036024 JS_AddIntrinsicStringNormalize + 0x00000000c00361f4 0x14 .obj/quickjs.o + 0x00000000c00361f4 JS_AddIntrinsicStringNormalize .text.JS_AddIntrinsicRegExp - 0x00000000c0036038 0xb6 .obj/quickjs.o - 0x00000000c0036038 JS_AddIntrinsicRegExp + 0x00000000c0036208 0xb6 .obj/quickjs.o + 0x00000000c0036208 JS_AddIntrinsicRegExp .text.JS_AddIntrinsicJSON - 0x00000000c00360ee 0x16 .obj/quickjs.o - 0x00000000c00360ee JS_AddIntrinsicJSON + 0x00000000c00362be 0x16 .obj/quickjs.o + 0x00000000c00362be JS_AddIntrinsicJSON .text.JS_AddIntrinsicProxy - 0x00000000c0036104 0xb4 .obj/quickjs.o - 0x00000000c0036104 JS_AddIntrinsicProxy + 0x00000000c00362d4 0xb4 .obj/quickjs.o + 0x00000000c00362d4 JS_AddIntrinsicProxy .text.JS_AddIntrinsicMapSet - 0x00000000c00361b8 0x148 .obj/quickjs.o - 0x00000000c00361b8 JS_AddIntrinsicMapSet + 0x00000000c0036388 0x148 .obj/quickjs.o + 0x00000000c0036388 JS_AddIntrinsicMapSet .text.JS_Invoke - 0x00000000c0036300 0x54 .obj/quickjs.o - 0x00000000c0036300 JS_Invoke + 0x00000000c00364d0 0x54 .obj/quickjs.o + 0x00000000c00364d0 JS_Invoke .text.JS_InvokeFree - 0x00000000c0036354 0x2a .obj/quickjs.o + 0x00000000c0036524 0x2a .obj/quickjs.o .text.JS_ToLocaleStringFree - 0x00000000c003637e 0x20 .obj/quickjs.o + 0x00000000c003654e 0x20 .obj/quickjs.o .text.js_array_join - 0x00000000c003639e 0x16e .obj/quickjs.o + 0x00000000c003656e 0x16e .obj/quickjs.o .text.js_typed_array_join - 0x00000000c003650c 0x150 .obj/quickjs.o + 0x00000000c00366dc 0x150 .obj/quickjs.o .text.js_promise_finally - 0x00000000c003665c 0x112 .obj/quickjs.o + 0x00000000c003682c 0x112 .obj/quickjs.o .text.js_promise_catch - 0x00000000c003676e 0x24 .obj/quickjs.o + 0x00000000c003693e 0x24 .obj/quickjs.o .text.js_object_toLocaleString - 0x00000000c0036792 0x10 .obj/quickjs.o + 0x00000000c0036962 0x10 .obj/quickjs.o .text.JS_RegExpExec - 0x00000000c00367a2 0xba .obj/quickjs.o + 0x00000000c0036972 0xba .obj/quickjs.o .text.js_regexp_string_iterator_next - 0x00000000c003685c 0x174 .obj/quickjs.o + 0x00000000c0036a2c 0x174 .obj/quickjs.o .text.js_regexp_Symbol_search - 0x00000000c00369d0 0x1b8 .obj/quickjs.o + 0x00000000c0036ba0 0x1b8 .obj/quickjs.o .text.js_regexp_Symbol_match - 0x00000000c0036b88 0x2a4 .obj/quickjs.o + 0x00000000c0036d58 0x2a4 .obj/quickjs.o .text.js_regexp_test - 0x00000000c0036e2c 0x4c .obj/quickjs.o + 0x00000000c0036ffc 0x4c .obj/quickjs.o .text.js_proxy_set - 0x00000000c0036e78 0x182 .obj/quickjs.o + 0x00000000c0037048 0x182 .obj/quickjs.o .text.js_proxy_get - 0x00000000c0036ffa 0x13e .obj/quickjs.o + 0x00000000c00371ca 0x13e .obj/quickjs.o .text.js_proxy_has - 0x00000000c0037138 0x104 .obj/quickjs.o + 0x00000000c0037308 0x104 .obj/quickjs.o .text.js_proxy_define_own_property - 0x00000000c003723c 0x336 .obj/quickjs.o + 0x00000000c003740c 0x336 .obj/quickjs.o .text.js_proxy_delete_property - 0x00000000c0037572 0x104 .obj/quickjs.o + 0x00000000c0037742 0x104 .obj/quickjs.o .text.js_proxy_get_own_property_names - 0x00000000c0037676 0x27a .obj/quickjs.o + 0x00000000c0037846 0x27a .obj/quickjs.o .text.js_proxy_get_own_property - 0x00000000c00378f0 0x1aa .obj/quickjs.o + 0x00000000c0037ac0 0x1aa .obj/quickjs.o .text.js_date_toJSON - 0x00000000c0037a9a 0xf4 .obj/quickjs.o + 0x00000000c0037c6a 0xf4 .obj/quickjs.o .text.js_string_split - 0x00000000c0037b8e 0x2a6 .obj/quickjs.o + 0x00000000c0037d5e 0x2a6 .obj/quickjs.o .text.js_array_toString - 0x00000000c0037e34 0xa8 .obj/quickjs.o + 0x00000000c0038004 0xa8 .obj/quickjs.o .text.async_func_resume - 0x00000000c0037edc 0x9e .obj/quickjs.o + 0x00000000c00380ac 0x9e .obj/quickjs.o .text.js_generator_next - 0x00000000c0037f7a 0x1d0 .obj/quickjs.o + 0x00000000c003814a 0x1d0 .obj/quickjs.o .text.js_generator_function_call - 0x00000000c003814a 0xa8 .obj/quickjs.o + 0x00000000c003831a 0xa8 .obj/quickjs.o .text.js_async_generator_function_call - 0x00000000c00381f2 0xa8 .obj/quickjs.o + 0x00000000c00383c2 0xa8 .obj/quickjs.o .text.JS_CallConstructorInternal - 0x00000000c003829a 0x156 .obj/quickjs.o + 0x00000000c003846a 0x156 .obj/quickjs.o .text.JS_CallConstructor2 - 0x00000000c00383f0 0xa .obj/quickjs.o - 0x00000000c00383f0 JS_CallConstructor2 + 0x00000000c00385c0 0xa .obj/quickjs.o + 0x00000000c00385c0 JS_CallConstructor2 .text.js_reflect_construct - 0x00000000c00383fa 0xac .obj/quickjs.o + 0x00000000c00385ca 0xac .obj/quickjs.o .text.JS_CallConstructor - 0x00000000c00384a6 0x12 .obj/quickjs.o - 0x00000000c00384a6 JS_CallConstructor + 0x00000000c0038676 0x12 .obj/quickjs.o + 0x00000000c0038676 JS_CallConstructor .text.js_typed_array_create - 0x00000000c00384b8 0x92 .obj/quickjs.o + 0x00000000c0038688 0x92 .obj/quickjs.o .text.js_typed_array_of - 0x00000000c003854a 0x9e .obj/quickjs.o + 0x00000000c003871a 0x9e .obj/quickjs.o .text.js_array_buffer_slice - 0x00000000c00385e8 0x1b8 .obj/quickjs.o + 0x00000000c00387b8 0x1b8 .obj/quickjs.o .text.js_regexp_Symbol_matchAll - 0x00000000c00387a0 0x24e .obj/quickjs.o + 0x00000000c0038970 0x24e .obj/quickjs.o .text.js_array_of - 0x00000000c00389ee 0xf0 .obj/quickjs.o + 0x00000000c0038bbe 0xf0 .obj/quickjs.o .text.JS_ArraySpeciesCreate - 0x00000000c0038ade 0x160 .obj/quickjs.o + 0x00000000c0038cae 0x160 .obj/quickjs.o .text.js_array_slice - 0x00000000c0038c3e 0x352 .obj/quickjs.o + 0x00000000c0038e0e 0x352 .obj/quickjs.o .text.js_array_concat - 0x00000000c0038f90 0x220 .obj/quickjs.o + 0x00000000c0039160 0x220 .obj/quickjs.o .text.js_regexp_Symbol_split - 0x00000000c00391b0 0x3f8 .obj/quickjs.o + 0x00000000c0039380 0x3f8 .obj/quickjs.o .text.js_string_match - 0x00000000c00395a8 0x15e .obj/quickjs.o - .text.JS_Call 0x00000000c0039706 0x1a .obj/quickjs.o - 0x00000000c0039706 JS_Call + 0x00000000c0039778 0x15e .obj/quickjs.o + .text.JS_Call 0x00000000c00398d6 0x1a .obj/quickjs.o + 0x00000000c00398d6 JS_Call .text.js_function_apply - 0x00000000c0039720 0xac .obj/quickjs.o + 0x00000000c00398f0 0xac .obj/quickjs.o .text.js_regexp_Symbol_replace - 0x00000000c00397cc 0xb24 .obj/quickjs.o + 0x00000000c003999c 0xb24 .obj/quickjs.o .text.js_reflect_apply - 0x00000000c003a2f0 0x1e .obj/quickjs.o + 0x00000000c003a4c0 0x1e .obj/quickjs.o .text.js_load_module_rejected - 0x00000000c003a30e 0x46 .obj/quickjs.o + 0x00000000c003a4de 0x46 .obj/quickjs.o .text.js_load_module_fulfilled - 0x00000000c003a354 0x8c .obj/quickjs.o + 0x00000000c003a524 0x8c .obj/quickjs.o .text.js_promise_constructor - 0x00000000c003a3e0 0x146 .obj/quickjs.o + 0x00000000c003a5b0 0x146 .obj/quickjs.o .text.js_new_promise_capability - 0x00000000c003a526 0xf6 .obj/quickjs.o + 0x00000000c003a6f6 0xf6 .obj/quickjs.o .text.js_promise_then - 0x00000000c003a61c 0xb8 .obj/quickjs.o + 0x00000000c003a7ec 0xb8 .obj/quickjs.o .text.js_promise_withResolvers - 0x00000000c003a6d4 0xc2 .obj/quickjs.o + 0x00000000c003a8a4 0xc2 .obj/quickjs.o .text.promise_reaction_job - 0x00000000c003a796 0xe4 .obj/quickjs.o + 0x00000000c003a966 0xe4 .obj/quickjs.o .text.JS_IteratorNext2 - 0x00000000c003a87a 0xb8 .obj/quickjs.o + 0x00000000c003aa4a 0xb8 .obj/quickjs.o .text.JS_IteratorNext.constprop.0 - 0x00000000c003a932 0xba .obj/quickjs.o + 0x00000000c003ab02 0xba .obj/quickjs.o .text.JS_GetIterator2 - 0x00000000c003a9ec 0x52 .obj/quickjs.o + 0x00000000c003abbc 0x52 .obj/quickjs.o .text.JS_GetIterator - 0x00000000c003aa3e 0x1c8 .obj/quickjs.o + 0x00000000c003ac0e 0x1c8 .obj/quickjs.o .text.js_for_of_start - 0x00000000c003ac06 0x70 .obj/quickjs.o + 0x00000000c003add6 0x70 .obj/quickjs.o .text.js_error_constructor - 0x00000000c003ac76 0x2d0 .obj/quickjs.o + 0x00000000c003ae46 0x2d0 .obj/quickjs.o .text.js_object_fromEntries - 0x00000000c003af46 0x18a .obj/quickjs.o + 0x00000000c003b116 0x18a .obj/quickjs.o .text.js_typed_array_constructor - 0x00000000c003b0d0 0x42c .obj/quickjs.o + 0x00000000c003b2a0 0x42c .obj/quickjs.o .text.js_typed_array___speciesCreate.constprop.0 - 0x00000000c003b4fc 0xb4 .obj/quickjs.o + 0x00000000c003b6cc 0xb4 .obj/quickjs.o .text.js_typed_array_slice - 0x00000000c003b5b0 0x1c4 .obj/quickjs.o + 0x00000000c003b780 0x1c4 .obj/quickjs.o .text.js_typed_array_subarray - 0x00000000c003b774 0x12c .obj/quickjs.o + 0x00000000c003b944 0x12c .obj/quickjs.o .text.js_call_bound_function - 0x00000000c003b8a0 0xfe .obj/quickjs.o + 0x00000000c003ba70 0xfe .obj/quickjs.o .text.js_inner_module_linking - 0x00000000c003b99e 0x2cc .obj/quickjs.o + 0x00000000c003bb6e 0x2cc .obj/quickjs.o .text.js_async_module_execution_rejected - 0x00000000c003bc6a 0x11e .obj/quickjs.o + 0x00000000c003be3a 0x11e .obj/quickjs.o .text.js_set_module_evaluated - 0x00000000c003bd88 0x5c .obj/quickjs.o + 0x00000000c003bf58 0x5c .obj/quickjs.o .text.js_promise_resolve - 0x00000000c003bde4 0x140 .obj/quickjs.o + 0x00000000c003bfb4 0x140 .obj/quickjs.o .text.js_async_function_resume - 0x00000000c003bf24 0x16a .obj/quickjs.o + 0x00000000c003c0f4 0x16a .obj/quickjs.o .text.js_async_function_resolve_call - 0x00000000c003c08e 0x70 .obj/quickjs.o + 0x00000000c003c25e 0x70 .obj/quickjs.o .text.js_json_check - 0x00000000c003c0fe 0x15a .obj/quickjs.o + 0x00000000c003c2ce 0x15a .obj/quickjs.o .text.js_json_to_str.constprop.0 - 0x00000000c003c258 0x5c4 .obj/quickjs.o + 0x00000000c003c428 0x5c4 .obj/quickjs.o .text.JS_JSONStringify - 0x00000000c003c81c 0x304 .obj/quickjs.o - 0x00000000c003c81c JS_JSONStringify + 0x00000000c003c9ec 0x304 .obj/quickjs.o + 0x00000000c003c9ec JS_JSONStringify .text.js_json_stringify - 0x00000000c003cb20 0x18 .obj/quickjs.o + 0x00000000c003ccf0 0x18 .obj/quickjs.o .text.internalize_json_property - 0x00000000c003cb38 0x1be .obj/quickjs.o + 0x00000000c003cd08 0x1be .obj/quickjs.o .text.js_json_parse - 0x00000000c003ccf6 0x106 .obj/quickjs.o + 0x00000000c003cec6 0x106 .obj/quickjs.o .text.js_proxy_call - 0x00000000c003cdfc 0x1e0 .obj/quickjs.o + 0x00000000c003cfcc 0x1e0 .obj/quickjs.o .text.js_map_constructor - 0x00000000c003cfdc 0x2f2 .obj/quickjs.o + 0x00000000c003d1ac 0x2f2 .obj/quickjs.o .text.js_object_groupBy - 0x00000000c003d2ce 0x2f6 .obj/quickjs.o + 0x00000000c003d49e 0x2f6 .obj/quickjs.o .text.js_map_forEach - 0x00000000c003d5c4 0x11e .obj/quickjs.o + 0x00000000c003d794 0x11e .obj/quickjs.o .text.js_promise_race - 0x00000000c003d6e2 0x210 .obj/quickjs.o + 0x00000000c003d8b2 0x210 .obj/quickjs.o .text.js_promise_all - 0x00000000c003d8f2 0x490 .obj/quickjs.o + 0x00000000c003dac2 0x490 .obj/quickjs.o .text.js_promise_all_resolve_element - 0x00000000c003dd82 0x1da .obj/quickjs.o + 0x00000000c003df52 0x1da .obj/quickjs.o .text.js_promise_then_finally_func - 0x00000000c003df5c 0xf0 .obj/quickjs.o + 0x00000000c003e12c 0xf0 .obj/quickjs.o .text.js_promise_resolve_thenable_job - 0x00000000c003e04c 0xcc .obj/quickjs.o + 0x00000000c003e21c 0xcc .obj/quickjs.o .text.js_string_replace - 0x00000000c003e118 0x2ec .obj/quickjs.o + 0x00000000c003e2e8 0x2ec .obj/quickjs.o .text.js_array_from - 0x00000000c003e404 0x392 .obj/quickjs.o + 0x00000000c003e5d4 0x392 .obj/quickjs.o .text.JS_FlattenIntoArray - 0x00000000c003e796 0x178 .obj/quickjs.o + 0x00000000c003e966 0x178 .obj/quickjs.o .text.js_array_flatten - 0x00000000c003e90e 0x102 .obj/quickjs.o + 0x00000000c003eade 0x102 .obj/quickjs.o .text.js_array_cmp_generic - 0x00000000c003ea10 0x10c .obj/quickjs.o + 0x00000000c003ebe0 0x10c .obj/quickjs.o .text.js_array_find - 0x00000000c003eb1c 0x1e2 .obj/quickjs.o + 0x00000000c003ecec 0x1e2 .obj/quickjs.o .text.js_array_reduce - 0x00000000c003ecfe 0x218 .obj/quickjs.o + 0x00000000c003eece 0x218 .obj/quickjs.o .text.js_array_every - 0x00000000c003ef16 0x3b0 .obj/quickjs.o + 0x00000000c003f0e6 0x3b0 .obj/quickjs.o .text.js_function_call - 0x00000000c003f2c6 0x22 .obj/quickjs.o + 0x00000000c003f496 0x22 .obj/quickjs.o .text.js_typed_array_from - 0x00000000c003f2e8 0x282 .obj/quickjs.o + 0x00000000c003f4b8 0x282 .obj/quickjs.o .text.js_TA_cmp_generic - 0x00000000c003f56a 0xf8 .obj/quickjs.o + 0x00000000c003f73a 0xf8 .obj/quickjs.o .text.js_typed_array_find - 0x00000000c003f662 0x152 .obj/quickjs.o + 0x00000000c003f832 0x152 .obj/quickjs.o .text.js_async_generator_resolve_or_reject.isra.0 - 0x00000000c003f7b4 0x7a .obj/quickjs.o + 0x00000000c003f984 0x7a .obj/quickjs.o .text.js_async_generator_resolve - 0x00000000c003f82e 0x4a .obj/quickjs.o + 0x00000000c003f9fe 0x4a .obj/quickjs.o .text.js_async_generator_resume_next - 0x00000000c003f878 0x34c .obj/quickjs.o + 0x00000000c003fa48 0x34c .obj/quickjs.o .text.js_async_generator_resolve_function - 0x00000000c003fbc4 0xda .obj/quickjs.o + 0x00000000c003fd94 0xda .obj/quickjs.o .text.js_async_function_call - 0x00000000c003fc9e 0x6a .obj/quickjs.o + 0x00000000c003fe6e 0x6a .obj/quickjs.o .text.js_execute_sync_module - 0x00000000c003fd08 0xb4 .obj/quickjs.o + 0x00000000c003fed8 0xb4 .obj/quickjs.o .text.js_execute_async_module.isra.0 - 0x00000000c003fdbc 0xb6 .obj/quickjs.o + 0x00000000c003ff8c 0xb6 .obj/quickjs.o .text.js_async_module_execution_fulfilled - 0x00000000c003fe72 0x156 .obj/quickjs.o + 0x00000000c0040042 0x156 .obj/quickjs.o .text.js_inner_module_evaluation - 0x00000000c003ffc8 0x24c .obj/quickjs.o + 0x00000000c0040198 0x24c .obj/quickjs.o .text.JS_EvalFunctionInternal - 0x00000000c0040214 0x28e .obj/quickjs.o + 0x00000000c00403e4 0x28e .obj/quickjs.o .text.JS_EvalFunction - 0x00000000c00404a2 0x14 .obj/quickjs.o - 0x00000000c00404a2 JS_EvalFunction + 0x00000000c0040672 0x14 .obj/quickjs.o + 0x00000000c0040672 JS_EvalFunction .text.JS_LoadModuleInternal - 0x00000000c00404b6 0x11c .obj/quickjs.o + 0x00000000c0040686 0x11c .obj/quickjs.o .text.js_dynamic_import_job - 0x00000000c00405d2 0xb2 .obj/quickjs.o + 0x00000000c00407a2 0xb2 .obj/quickjs.o .text.__JS_EvalInternal - 0x00000000c0040684 0x5ca .obj/quickjs.o + 0x00000000c0040854 0x5ca .obj/quickjs.o .text.JS_LoadModule - 0x00000000c0040c4e 0x5c .obj/quickjs.o - 0x00000000c0040c4e JS_LoadModule + 0x00000000c0040e1e 0x5c .obj/quickjs.o + 0x00000000c0040e1e JS_LoadModule .text.js_async_generator_next - 0x00000000c0040caa 0x146 .obj/quickjs.o + 0x00000000c0040e7a 0x146 .obj/quickjs.o .text.js_async_from_sync_iterator_next - 0x00000000c0040df0 0x29e .obj/quickjs.o + 0x00000000c0040fc0 0x29e .obj/quickjs.o .text.JS_AddIntrinsicPromise - 0x00000000c004108e 0x290 .obj/quickjs.o - 0x00000000c004108e JS_AddIntrinsicPromise + 0x00000000c004125e 0x290 .obj/quickjs.o + 0x00000000c004125e JS_AddIntrinsicPromise .text.JS_AddIntrinsicDate - 0x00000000c004131e 0x62 .obj/quickjs.o - 0x00000000c004131e JS_AddIntrinsicDate + 0x00000000c00414ee 0x62 .obj/quickjs.o + 0x00000000c00414ee JS_AddIntrinsicDate .text.JS_AddIntrinsicEval - 0x00000000c0041380 0xe .obj/quickjs.o - 0x00000000c0041380 JS_AddIntrinsicEval + 0x00000000c0041550 0xe .obj/quickjs.o + 0x00000000c0041550 JS_AddIntrinsicEval .text.JS_AddIntrinsicBigInt - 0x00000000c004138e 0xaa .obj/quickjs.o - 0x00000000c004138e JS_AddIntrinsicBigInt + 0x00000000c004155e 0xaa .obj/quickjs.o + 0x00000000c004155e JS_AddIntrinsicBigInt .text.JS_AddIntrinsicBaseObjects - 0x00000000c0041438 0x85e .obj/quickjs.o - 0x00000000c0041438 JS_AddIntrinsicBaseObjects + 0x00000000c0041608 0x85e .obj/quickjs.o + 0x00000000c0041608 JS_AddIntrinsicBaseObjects .text.JS_NewArrayBuffer - 0x00000000c0041c96 0x24 .obj/quickjs.o - 0x00000000c0041c96 JS_NewArrayBuffer + 0x00000000c0041e66 0x24 .obj/quickjs.o + 0x00000000c0041e66 JS_NewArrayBuffer .text.JS_NewArrayBufferCopy - 0x00000000c0041cba 0x26 .obj/quickjs.o - 0x00000000c0041cba JS_NewArrayBufferCopy + 0x00000000c0041e8a 0x26 .obj/quickjs.o + 0x00000000c0041e8a JS_NewArrayBufferCopy .text.JS_ReadObjectRec - 0x00000000c0041ce0 0xda4 .obj/quickjs.o + 0x00000000c0041eb0 0xda4 .obj/quickjs.o .text.JS_ReadObject - 0x00000000c0042a84 0x130 .obj/quickjs.o - 0x00000000c0042a84 JS_ReadObject + 0x00000000c0042c54 0x130 .obj/quickjs.o + 0x00000000c0042c54 JS_ReadObject .text.JS_DetachArrayBuffer - 0x00000000c0042bb4 0x6a .obj/quickjs.o - 0x00000000c0042bb4 JS_DetachArrayBuffer + 0x00000000c0042d84 0x6a .obj/quickjs.o + 0x00000000c0042d84 JS_DetachArrayBuffer .text.JS_GetArrayBuffer - 0x00000000c0042c1e 0x54 .obj/quickjs.o - 0x00000000c0042c1e JS_GetArrayBuffer + 0x00000000c0042dee 0x54 .obj/quickjs.o + 0x00000000c0042dee JS_GetArrayBuffer .text.JS_GetTypedArrayBuffer - 0x00000000c0042c72 0x98 .obj/quickjs.o - 0x00000000c0042c72 JS_GetTypedArrayBuffer + 0x00000000c0042e42 0x98 .obj/quickjs.o + 0x00000000c0042e42 JS_GetTypedArrayBuffer .text.JS_AddIntrinsicTypedArrays - 0x00000000c0042d0a 0x2ac .obj/quickjs.o - 0x00000000c0042d0a JS_AddIntrinsicTypedArrays + 0x00000000c0042eda 0x2ac .obj/quickjs.o + 0x00000000c0042eda JS_AddIntrinsicTypedArrays .text.JS_NewContext - 0x00000000c0042fb6 0xd6 .obj/quickjs.o - 0x00000000c0042fb6 JS_NewContext + 0x00000000c0043186 0xd6 .obj/quickjs.o + 0x00000000c0043186 JS_NewContext .text.from_hex - 0x00000000c004308c 0x34 .obj/libregexp.o + 0x00000000c004325c 0x34 .obj/libregexp.o .text.parse_digits - 0x00000000c00430c0 0x42 .obj/libregexp.o + 0x00000000c0043290 0x42 .obj/libregexp.o .text.is_unicode_char - 0x00000000c0043102 0x2e .obj/libregexp.o + 0x00000000c00432d2 0x2e .obj/libregexp.o .text.re_emit_op_u8 - 0x00000000c0043130 0x26 .obj/libregexp.o + 0x00000000c0043300 0x26 .obj/libregexp.o .text.dbuf_insert - 0x00000000c0043156 0x4e .obj/libregexp.o + 0x00000000c0043326 0x4e .obj/libregexp.o .text.find_group_name - 0x00000000c00431a4 0x60 .obj/libregexp.o + 0x00000000c0043374 0x60 .obj/libregexp.o .text.push_state - 0x00000000c0043204 0xd6 .obj/libregexp.o + 0x00000000c00433d4 0xd6 .obj/libregexp.o .text.re_parse_error - 0x00000000c00432da 0x2a .obj/libregexp.o + 0x00000000c00434aa 0x2a .obj/libregexp.o .text.is_line_terminator - 0x00000000c0043304 0x24 .obj/libregexp.o + 0x00000000c00434d4 0x24 .obj/libregexp.o .text.is_word_char - 0x00000000c0043328 0x2a .obj/libregexp.o + 0x00000000c00434f8 0x2a .obj/libregexp.o .text.lre_exec_backtrack - 0x00000000c0043352 0xbe0 .obj/libregexp.o + 0x00000000c0043522 0xbe0 .obj/libregexp.o .text.re_parse_expect - 0x00000000c0043f32 0x1e .obj/libregexp.o + 0x00000000c0044102 0x1e .obj/libregexp.o .text.dbuf_put_u32.isra.0 - 0x00000000c0043f50 0x14 .obj/libregexp.o + 0x00000000c0044120 0x14 .obj/libregexp.o .text.re_emit_goto.isra.0 - 0x00000000c0043f64 0x2a .obj/libregexp.o + 0x00000000c0044134 0x2a .obj/libregexp.o .text.re_emit_op_u32 - 0x00000000c0043f8e 0x30 .obj/libregexp.o + 0x00000000c004415e 0x30 .obj/libregexp.o .text.re_emit_op_u16 - 0x00000000c0043fbe 0x2e .obj/libregexp.o + 0x00000000c004418e 0x2e .obj/libregexp.o .text.re_emit_range - 0x00000000c0043fec 0xf6 .obj/libregexp.o + 0x00000000c00441bc 0xf6 .obj/libregexp.o .text.lre_is_space - 0x00000000c00440e2 0x2e .obj/libregexp.o - 0x00000000c00440e2 lre_is_space + 0x00000000c00442b2 0x2e .obj/libregexp.o + 0x00000000c00442b2 lre_is_space .text.lre_parse_escape - 0x00000000c0044110 0x1ee .obj/libregexp.o - 0x00000000c0044110 lre_parse_escape + 0x00000000c00442e0 0x1ee .obj/libregexp.o + 0x00000000c00442e0 lre_parse_escape .text.get_class_atom - 0x00000000c00442fe 0x440 .obj/libregexp.o + 0x00000000c00444ce 0x440 .obj/libregexp.o .text.re_parse_group_name.constprop.0 - 0x00000000c004473e 0x188 .obj/libregexp.o + 0x00000000c004490e 0x188 .obj/libregexp.o .text.re_parse_captures - 0x00000000c00448c6 0xec .obj/libregexp.o + 0x00000000c0044a96 0xec .obj/libregexp.o .text.re_count_captures - 0x00000000c00449b2 0x24 .obj/libregexp.o + 0x00000000c0044b82 0x24 .obj/libregexp.o .text.re_parse_alternative - 0x00000000c00449d6 0xd54 .obj/libregexp.o + 0x00000000c0044ba6 0xd54 .obj/libregexp.o .text.re_parse_disjunction - 0x00000000c004572a 0x10a .obj/libregexp.o + 0x00000000c00458fa 0x10a .obj/libregexp.o .text.lre_compile - 0x00000000c0045834 0x266 .obj/libregexp.o - 0x00000000c0045834 lre_compile + 0x00000000c0045a04 0x266 .obj/libregexp.o + 0x00000000c0045a04 lre_compile .text.lre_exec - 0x00000000c0045a9a 0xf0 .obj/libregexp.o - 0x00000000c0045a9a lre_exec + 0x00000000c0045c6a 0xf0 .obj/libregexp.o + 0x00000000c0045c6a lre_exec .text.lre_get_capture_count - 0x00000000c0045b8a 0x6 .obj/libregexp.o - 0x00000000c0045b8a lre_get_capture_count + 0x00000000c0045d5a 0x6 .obj/libregexp.o + 0x00000000c0045d5a lre_get_capture_count .text.lre_get_flags - 0x00000000c0045b90 0x6 .obj/libregexp.o - 0x00000000c0045b90 lre_get_flags + 0x00000000c0045d60 0x6 .obj/libregexp.o + 0x00000000c0045d60 lre_get_flags .text.lre_get_groupnames - 0x00000000c0045b96 0x2e .obj/libregexp.o - 0x00000000c0045b96 lre_get_groupnames + 0x00000000c0045d66 0x2e .obj/libregexp.o + 0x00000000c0045d66 lre_get_groupnames .text.get_le24 - 0x00000000c0045bc4 0x1c .obj/libunicode.o + 0x00000000c0045d94 0x1c .obj/libunicode.o .text.cr_compress - 0x00000000c0045be0 0x6a .obj/libunicode.o + 0x00000000c0045db0 0x6a .obj/libunicode.o .text.point_cmp - 0x00000000c0045c4a 0x10 .obj/libunicode.o + 0x00000000c0045e1a 0x10 .obj/libunicode.o .text.cr_default_realloc - 0x00000000c0045c5a 0x8 .obj/libunicode.o + 0x00000000c0045e2a 0x8 .obj/libunicode.o .text.unicode_find_name - 0x00000000c0045c62 0x70 .obj/libunicode.o + 0x00000000c0045e32 0x70 .obj/libunicode.o .text.get_index_pos - 0x00000000c0045cd2 0xcc .obj/libunicode.o + 0x00000000c0045ea2 0xcc .obj/libunicode.o .text.lre_is_in_table - 0x00000000c0045d9e 0xbe .obj/libunicode.o + 0x00000000c0045f6e 0xbe .obj/libunicode.o .text.unicode_get_cc - 0x00000000c0045e5c 0xda .obj/libunicode.o + 0x00000000c004602c 0xda .obj/libunicode.o .text.unicode_get_short_code - 0x00000000c0045f36 0x32 .obj/libunicode.o + 0x00000000c0046106 0x32 .obj/libunicode.o .text.unicode_decomp_entry - 0x00000000c0045f68 0x2ec .obj/libunicode.o + 0x00000000c0046138 0x2ec .obj/libunicode.o .text.to_nfd_rec - 0x00000000c0046254 0x13e .obj/libunicode.o + 0x00000000c0046424 0x13e .obj/libunicode.o .text.lre_case_conv - 0x00000000c0046392 0x7c .obj/libunicode.o - 0x00000000c0046392 lre_case_conv + 0x00000000c0046562 0x7c .obj/libunicode.o + 0x00000000c0046562 lre_case_conv .text.lre_case_conv_entry - 0x00000000c004640e 0x25e .obj/libunicode.o + 0x00000000c00465de 0x25e .obj/libunicode.o .text.lre_case_folding_entry - 0x00000000c004666c 0x86 .obj/libunicode.o + 0x00000000c004683c 0x86 .obj/libunicode.o .text.lre_canonicalize - 0x00000000c00466f2 0x7c .obj/libunicode.o - 0x00000000c00466f2 lre_canonicalize + 0x00000000c00468c2 0x7c .obj/libunicode.o + 0x00000000c00468c2 lre_canonicalize .text.lre_is_cased - 0x00000000c004676e 0x62 .obj/libunicode.o - 0x00000000c004676e lre_is_cased + 0x00000000c004693e 0x62 .obj/libunicode.o + 0x00000000c004693e lre_is_cased .text.lre_is_case_ignorable - 0x00000000c00467d0 0x16 .obj/libunicode.o - 0x00000000c00467d0 lre_is_case_ignorable - .text.cr_init 0x00000000c00467e6 0x18 .obj/libunicode.o - 0x00000000c00467e6 cr_init - .text.cr_free 0x00000000c00467fe 0xa .obj/libunicode.o - 0x00000000c00467fe cr_free + 0x00000000c00469a0 0x16 .obj/libunicode.o + 0x00000000c00469a0 lre_is_case_ignorable + .text.cr_init 0x00000000c00469b6 0x18 .obj/libunicode.o + 0x00000000c00469b6 cr_init + .text.cr_free 0x00000000c00469ce 0xa .obj/libunicode.o + 0x00000000c00469ce cr_free .text.cr_realloc - 0x00000000c0046808 0x4c .obj/libunicode.o - 0x00000000c0046808 cr_realloc + 0x00000000c00469d8 0x4c .obj/libunicode.o + 0x00000000c00469d8 cr_realloc .text.cr_add_interval - 0x00000000c0046854 0x56 .obj/libunicode.o + 0x00000000c0046a24 0x56 .obj/libunicode.o .text.unicode_case1 - 0x00000000c00468aa 0x12c .obj/libunicode.o + 0x00000000c0046a7a 0x12c .obj/libunicode.o .text.unicode_general_category1 - 0x00000000c00469d6 0x10c .obj/libunicode.o + 0x00000000c0046ba6 0x10c .obj/libunicode.o .text.unicode_prop1 - 0x00000000c0046ae2 0x10e .obj/libunicode.o - .text.cr_copy 0x00000000c0046bf0 0x3c .obj/libunicode.o - 0x00000000c0046bf0 cr_copy - .text.cr_op 0x00000000c0046c2c 0xdc .obj/libunicode.o - 0x00000000c0046c2c cr_op + 0x00000000c0046cb2 0x10e .obj/libunicode.o + .text.cr_copy 0x00000000c0046dc0 0x3c .obj/libunicode.o + 0x00000000c0046dc0 cr_copy + .text.cr_op 0x00000000c0046dfc 0xdc .obj/libunicode.o + 0x00000000c0046dfc cr_op .text.cr_union1 - 0x00000000c0046d08 0x42 .obj/libunicode.o - 0x00000000c0046d08 cr_union1 + 0x00000000c0046ed8 0x42 .obj/libunicode.o + 0x00000000c0046ed8 cr_union1 .text.cr_invert - 0x00000000c0046d4a 0x5a .obj/libunicode.o - 0x00000000c0046d4a cr_invert + 0x00000000c0046f1a 0x5a .obj/libunicode.o + 0x00000000c0046f1a cr_invert .text.unicode_prop_ops - 0x00000000c0046da4 0x214 .obj/libunicode.o + 0x00000000c0046f74 0x214 .obj/libunicode.o .text.lre_is_id_start - 0x00000000c0046fb8 0x18 .obj/libunicode.o - 0x00000000c0046fb8 lre_is_id_start + 0x00000000c0047188 0x18 .obj/libunicode.o + 0x00000000c0047188 lre_is_id_start .text.lre_is_id_continue - 0x00000000c0046fd0 0x36 .obj/libunicode.o - 0x00000000c0046fd0 lre_is_id_continue + 0x00000000c00471a0 0x36 .obj/libunicode.o + 0x00000000c00471a0 lre_is_id_continue .text.unicode_normalize - 0x00000000c0047006 0x2be .obj/libunicode.o - 0x00000000c0047006 unicode_normalize + 0x00000000c00471d6 0x2be .obj/libunicode.o + 0x00000000c00471d6 unicode_normalize .text.unicode_script - 0x00000000c00472c4 0x218 .obj/libunicode.o - 0x00000000c00472c4 unicode_script + 0x00000000c0047494 0x218 .obj/libunicode.o + 0x00000000c0047494 unicode_script .text.cr_regexp_canonicalize - 0x00000000c00474dc 0x27c .obj/libunicode.o - 0x00000000c00474dc cr_regexp_canonicalize + 0x00000000c00476ac 0x27c .obj/libunicode.o + 0x00000000c00476ac cr_regexp_canonicalize .text.unicode_general_category - 0x00000000c0047758 0x50 .obj/libunicode.o - 0x00000000c0047758 unicode_general_category + 0x00000000c0047928 0x50 .obj/libunicode.o + 0x00000000c0047928 unicode_general_category .text.unicode_prop - 0x00000000c00477a8 0x1f2 .obj/libunicode.o - 0x00000000c00477a8 unicode_prop + 0x00000000c0047978 0x1f2 .obj/libunicode.o + 0x00000000c0047978 unicode_prop .text.exchange_bytes - 0x00000000c004799a 0x1e .obj/cutils.o + 0x00000000c0047b6a 0x1e .obj/cutils.o .text.exchange_one_byte - 0x00000000c00479b8 0x12 .obj/cutils.o + 0x00000000c0047b88 0x12 .obj/cutils.o .text.exchange_int16s - 0x00000000c00479ca 0x20 .obj/cutils.o + 0x00000000c0047b9a 0x20 .obj/cutils.o .text.exchange_one_int16 - 0x00000000c00479ea 0x12 .obj/cutils.o + 0x00000000c0047bba 0x12 .obj/cutils.o .text.exchange_int32s - 0x00000000c00479fc 0x1c .obj/cutils.o + 0x00000000c0047bcc 0x1c .obj/cutils.o .text.exchange_one_int32 - 0x00000000c0047a18 0xa .obj/cutils.o + 0x00000000c0047be8 0xa .obj/cutils.o .text.exchange_int64s - 0x00000000c0047a22 0x1c .obj/cutils.o + 0x00000000c0047bf2 0x1c .obj/cutils.o .text.exchange_one_int64 - 0x00000000c0047a3e 0xa .obj/cutils.o + 0x00000000c0047c0e 0xa .obj/cutils.o .text.exchange_int128s - 0x00000000c0047a48 0x26 .obj/cutils.o + 0x00000000c0047c18 0x26 .obj/cutils.o .text.exchange_one_int128 - 0x00000000c0047a6e 0x12 .obj/cutils.o + 0x00000000c0047c3e 0x12 .obj/cutils.o .text.exchange_func - 0x00000000c0047a80 0x94 .obj/cutils.o + 0x00000000c0047c50 0x94 .obj/cutils.o .text.dbuf_default_realloc - 0x00000000c0047b14 0x8 .obj/cutils.o - .text.pstrcpy 0x00000000c0047b1c 0x22 .obj/cutils.o - 0x00000000c0047b1c pstrcpy - .text.pstrcat 0x00000000c0047b3e 0x30 .obj/cutils.o - 0x00000000c0047b3e pstrcat + 0x00000000c0047ce4 0x8 .obj/cutils.o + .text.pstrcpy 0x00000000c0047cec 0x22 .obj/cutils.o + 0x00000000c0047cec pstrcpy + .text.pstrcat 0x00000000c0047d0e 0x30 .obj/cutils.o + 0x00000000c0047d0e pstrcat .text.strstart - 0x00000000c0047b6e 0x22 .obj/cutils.o - 0x00000000c0047b6e strstart + 0x00000000c0047d3e 0x22 .obj/cutils.o + 0x00000000c0047d3e strstart .text.has_suffix - 0x00000000c0047b90 0x40 .obj/cutils.o - 0x00000000c0047b90 has_suffix + 0x00000000c0047d60 0x40 .obj/cutils.o + 0x00000000c0047d60 has_suffix .text.dbuf_init2 - 0x00000000c0047bd0 0x36 .obj/cutils.o - 0x00000000c0047bd0 dbuf_init2 + 0x00000000c0047da0 0x36 .obj/cutils.o + 0x00000000c0047da0 dbuf_init2 .text.dbuf_init - 0x00000000c0047c06 0x8 .obj/cutils.o - 0x00000000c0047c06 dbuf_init + 0x00000000c0047dd6 0x8 .obj/cutils.o + 0x00000000c0047dd6 dbuf_init .text.dbuf_realloc - 0x00000000c0047c0e 0x50 .obj/cutils.o - 0x00000000c0047c0e dbuf_realloc + 0x00000000c0047dde 0x50 .obj/cutils.o + 0x00000000c0047dde dbuf_realloc .text.dbuf_write - 0x00000000c0047c5e 0x52 .obj/cutils.o - 0x00000000c0047c5e dbuf_write + 0x00000000c0047e2e 0x52 .obj/cutils.o + 0x00000000c0047e2e dbuf_write .text.dbuf_put - 0x00000000c0047cb0 0x48 .obj/cutils.o - 0x00000000c0047cb0 dbuf_put + 0x00000000c0047e80 0x48 .obj/cutils.o + 0x00000000c0047e80 dbuf_put .text.dbuf_put_self - 0x00000000c0047cf8 0x4a .obj/cutils.o - 0x00000000c0047cf8 dbuf_put_self + 0x00000000c0047ec8 0x4a .obj/cutils.o + 0x00000000c0047ec8 dbuf_put_self .text.dbuf_putc - 0x00000000c0047d42 0x18 .obj/cutils.o - 0x00000000c0047d42 dbuf_putc + 0x00000000c0047f12 0x18 .obj/cutils.o + 0x00000000c0047f12 dbuf_putc .text.dbuf_putstr - 0x00000000c0047d5a 0x20 .obj/cutils.o - 0x00000000c0047d5a dbuf_putstr + 0x00000000c0047f2a 0x20 .obj/cutils.o + 0x00000000c0047f2a dbuf_putstr .text.dbuf_printf - 0x00000000c0047d7a 0x8c .obj/cutils.o - 0x00000000c0047d7a dbuf_printf + 0x00000000c0047f4a 0x8c .obj/cutils.o + 0x00000000c0047f4a dbuf_printf .text.dbuf_free - 0x00000000c0047e06 0x26 .obj/cutils.o - 0x00000000c0047e06 dbuf_free + 0x00000000c0047fd6 0x26 .obj/cutils.o + 0x00000000c0047fd6 dbuf_free .text.unicode_to_utf8 - 0x00000000c0047e2c 0xee .obj/cutils.o - 0x00000000c0047e2c unicode_to_utf8 + 0x00000000c0047ffc 0xee .obj/cutils.o + 0x00000000c0047ffc unicode_to_utf8 .text.unicode_from_utf8 - 0x00000000c0047f1a 0x96 .obj/cutils.o - 0x00000000c0047f1a unicode_from_utf8 - .text.rqsort 0x00000000c0047fb0 0x30c .obj/cutils.o - 0x00000000c0047fb0 rqsort + 0x00000000c00480ea 0x96 .obj/cutils.o + 0x00000000c00480ea unicode_from_utf8 + .text.rqsort 0x00000000c0048180 0x30c .obj/cutils.o + 0x00000000c0048180 rqsort .text.list_del - 0x00000000c00482bc 0x12 .obj/quickjs-libc.o + 0x00000000c004848c 0x12 .obj/quickjs-libc.o .text.interrupt_handler - 0x00000000c00482ce 0xe .obj/quickjs-libc.o + 0x00000000c004849e 0xe .obj/quickjs-libc.o .text.os_signal_handler - 0x00000000c00482dc 0x16 .obj/quickjs-libc.o + 0x00000000c00484ac 0x16 .obj/quickjs-libc.o .text.js_sab_alloc - 0x00000000c00482f2 0x1a .obj/quickjs-libc.o + 0x00000000c00484c2 0x1a .obj/quickjs-libc.o .text.JS_FreeValue - 0x00000000c004830c 0x26 .obj/quickjs-libc.o + 0x00000000c00484dc 0x26 .obj/quickjs-libc.o .text.js_std_dbuf_init - 0x00000000c0048332 0x22 .obj/quickjs-libc.o + 0x00000000c0048502 0x22 .obj/quickjs-libc.o .text.JS_ToCString - 0x00000000c0048354 0x10 .obj/quickjs-libc.o + 0x00000000c0048524 0x10 .obj/quickjs-libc.o .text.js_printf_internal - 0x00000000c0048364 0x3fa .obj/quickjs-libc.o + 0x00000000c0048534 0x3fa .obj/quickjs-libc.o .text.js_std_sprintf - 0x00000000c004875e 0xe .obj/quickjs-libc.o + 0x00000000c004892e 0xe .obj/quickjs-libc.o .text.js_std_printf - 0x00000000c004876c 0x24 .obj/quickjs-libc.o + 0x00000000c004893c 0x24 .obj/quickjs-libc.o .text.js_std_file_get - 0x00000000c0048790 0x3c .obj/quickjs-libc.o + 0x00000000c0048960 0x3c .obj/quickjs-libc.o .text.js_std_file_seek - 0x00000000c00487cc 0x70 .obj/quickjs-libc.o + 0x00000000c004899c 0x70 .obj/quickjs-libc.o .text.js_std_file_printf - 0x00000000c004883c 0x3a .obj/quickjs-libc.o + 0x00000000c0048a0c 0x3a .obj/quickjs-libc.o .text.js_set_error_object - 0x00000000c0048876 0x24 .obj/quickjs-libc.o + 0x00000000c0048a46 0x24 .obj/quickjs-libc.o .text.js_new_std_file - 0x00000000c004889a 0x80 .obj/quickjs-libc.o + 0x00000000c0048a6a 0x80 .obj/quickjs-libc.o .text.js_std_tmpfile - 0x00000000c004891a 0x64 .obj/quickjs-libc.o + 0x00000000c0048aea 0x64 .obj/quickjs-libc.o .text.js_std_open - 0x00000000c004897e 0xe8 .obj/quickjs-libc.o + 0x00000000c0048b4e 0xe8 .obj/quickjs-libc.o .text.js_std_fdopen - 0x00000000c0048a66 0xc8 .obj/quickjs-libc.o + 0x00000000c0048c36 0xc8 .obj/quickjs-libc.o .text.js_std_popen - 0x00000000c0048b2e 0xe8 .obj/quickjs-libc.o + 0x00000000c0048cfe 0xe8 .obj/quickjs-libc.o .text.js_std_strerror - 0x00000000c0048c16 0x3a .obj/quickjs-libc.o + 0x00000000c0048de6 0x3a .obj/quickjs-libc.o .text.get_bool_option - 0x00000000c0048c50 0x52 .obj/quickjs-libc.o + 0x00000000c0048e20 0x52 .obj/quickjs-libc.o .text.js_std_file_getByte - 0x00000000c0048ca2 0x2a .obj/quickjs-libc.o + 0x00000000c0048e72 0x2a .obj/quickjs-libc.o .text.js_std_file_getline - 0x00000000c0048ccc 0x92 .obj/quickjs-libc.o + 0x00000000c0048e9c 0x92 .obj/quickjs-libc.o .text.js_std_getenviron - 0x00000000c0048d5e 0xcc .obj/quickjs-libc.o + 0x00000000c0048f2e 0xcc .obj/quickjs-libc.o .text.js_std_unsetenv - 0x00000000c0048e2a 0x38 .obj/quickjs-libc.o + 0x00000000c0048ffa 0x38 .obj/quickjs-libc.o .text.js_std_setenv - 0x00000000c0048e62 0x6c .obj/quickjs-libc.o + 0x00000000c0049032 0x6c .obj/quickjs-libc.o .text.js_std_getenv - 0x00000000c0048ece 0x50 .obj/quickjs-libc.o + 0x00000000c004909e 0x50 .obj/quickjs-libc.o .text.js_std_gc - 0x00000000c0048f1e 0x16 .obj/quickjs-libc.o + 0x00000000c00490ee 0x16 .obj/quickjs-libc.o .text.js_std_exit - 0x00000000c0048f34 0x1a .obj/quickjs-libc.o + 0x00000000c0049104 0x1a .obj/quickjs-libc.o .text.js_std_init - 0x00000000c0048f4e 0xf0 .obj/quickjs-libc.o + 0x00000000c004911e 0xf0 .obj/quickjs-libc.o .text.js_std_file_putByte - 0x00000000c004903e 0x4e .obj/quickjs-libc.o + 0x00000000c004920e 0x4e .obj/quickjs-libc.o .text.js_std_file_readAsString - 0x00000000c004908c 0xa8 .obj/quickjs-libc.o + 0x00000000c004925c 0xa8 .obj/quickjs-libc.o .text.js_std_file_read_write - 0x00000000c0049134 0xba .obj/quickjs-libc.o + 0x00000000c0049304 0xba .obj/quickjs-libc.o .text.js_std_file_clearerr - 0x00000000c00491ee 0x24 .obj/quickjs-libc.o + 0x00000000c00493be 0x24 .obj/quickjs-libc.o .text.js_std_file_error - 0x00000000c0049212 0x2e .obj/quickjs-libc.o + 0x00000000c00493e2 0x2e .obj/quickjs-libc.o .text.js_std_file_fileno - 0x00000000c0049240 0x2a .obj/quickjs-libc.o + 0x00000000c0049410 0x2a .obj/quickjs-libc.o .text.js_std_file_eof - 0x00000000c004926a 0x2e .obj/quickjs-libc.o + 0x00000000c004943a 0x2e .obj/quickjs-libc.o .text.js_std_file_tell - 0x00000000c0049298 0x64 .obj/quickjs-libc.o + 0x00000000c0049468 0x64 .obj/quickjs-libc.o .text.js_std_file_flush - 0x00000000c00492fc 0x24 .obj/quickjs-libc.o + 0x00000000c00494cc 0x24 .obj/quickjs-libc.o .text.js_std_file_finalizer - 0x00000000c0049320 0x54 .obj/quickjs-libc.o + 0x00000000c00494f0 0x54 .obj/quickjs-libc.o .text.js_os_pipe - 0x00000000c0049374 0x78 .obj/quickjs-libc.o + 0x00000000c0049544 0x78 .obj/quickjs-libc.o .text.make_obj_error - 0x00000000c00493ec 0x76 .obj/quickjs-libc.o + 0x00000000c00495bc 0x76 .obj/quickjs-libc.o .text.make_string_error - 0x00000000c0049462 0x20 .obj/quickjs-libc.o + 0x00000000c0049632 0x20 .obj/quickjs-libc.o .text.js_os_realpath - 0x00000000c0049482 0x60 .obj/quickjs-libc.o + 0x00000000c0049652 0x60 .obj/quickjs-libc.o .text.js_os_waitpid - 0x00000000c00494e2 0xaa .obj/quickjs-libc.o + 0x00000000c00496b2 0xaa .obj/quickjs-libc.o .text.js_os_getpid - 0x00000000c004958c 0x16 .obj/quickjs-libc.o + 0x00000000c004975c 0x16 .obj/quickjs-libc.o .text.js_os_readlink - 0x00000000c00495a2 0x6c .obj/quickjs-libc.o + 0x00000000c0049772 0x6c .obj/quickjs-libc.o .text.js_os_readdir - 0x00000000c004960e 0xd6 .obj/quickjs-libc.o + 0x00000000c00497de 0xd6 .obj/quickjs-libc.o .text.js_os_getcwd - 0x00000000c00496e4 0x34 .obj/quickjs-libc.o + 0x00000000c00498b4 0x34 .obj/quickjs-libc.o .text.get_time_ms - 0x00000000c0049718 0x26 .obj/quickjs-libc.o + 0x00000000c00498e8 0x26 .obj/quickjs-libc.o .text.js_os_now - 0x00000000c004973e 0x68 .obj/quickjs-libc.o + 0x00000000c004990e 0x68 .obj/quickjs-libc.o .text.JS_FreeValueRT - 0x00000000c00497a6 0x26 .obj/quickjs-libc.o + 0x00000000c0049976 0x26 .obj/quickjs-libc.o .text.free_timer - 0x00000000c00497cc 0x2c .obj/quickjs-libc.o + 0x00000000c004999c 0x2c .obj/quickjs-libc.o .text.js_os_clearTimeout - 0x00000000c00497f8 0x6e .obj/quickjs-libc.o + 0x00000000c00499c8 0x6e .obj/quickjs-libc.o .text.free_rw_handler - 0x00000000c0049866 0x36 .obj/quickjs-libc.o + 0x00000000c0049a36 0x36 .obj/quickjs-libc.o .text.term_exit - 0x00000000c004989c 0x10 .obj/quickjs-libc.o + 0x00000000c0049a6c 0x10 .obj/quickjs-libc.o .text.js_os_ttySetRaw - 0x00000000c00498ac 0x92 .obj/quickjs-libc.o + 0x00000000c0049a7c 0x92 .obj/quickjs-libc.o .text.js_os_ttyGetWinSize - 0x00000000c004993e 0xa2 .obj/quickjs-libc.o + 0x00000000c0049b0e 0xa2 .obj/quickjs-libc.o .text.js_os_isatty - 0x00000000c00499e0 0x36 .obj/quickjs-libc.o + 0x00000000c0049bb0 0x36 .obj/quickjs-libc.o .text.js_os_seek - 0x00000000c0049a16 0x90 .obj/quickjs-libc.o + 0x00000000c0049be6 0x90 .obj/quickjs-libc.o .text.js_new_message_pipe - 0x00000000c0049aa6 0x50 .obj/quickjs-libc.o + 0x00000000c0049c76 0x50 .obj/quickjs-libc.o .text.atomic_add_int - 0x00000000c0049af6 0xe .obj/quickjs-libc.o + 0x00000000c0049cc6 0xe .obj/quickjs-libc.o .text.js_sab_dup - 0x00000000c0049b04 0xa .obj/quickjs-libc.o + 0x00000000c0049cd4 0xa .obj/quickjs-libc.o .text.js_worker_postMessage - 0x00000000c0049b0e 0x15a .obj/quickjs-libc.o + 0x00000000c0049cde 0x15a .obj/quickjs-libc.o .text.js_worker_ctor_internal - 0x00000000c0049c68 0xd0 .obj/quickjs-libc.o + 0x00000000c0049e38 0xd0 .obj/quickjs-libc.o .text.js_os_init - 0x00000000c0049d38 0x10a .obj/quickjs-libc.o + 0x00000000c0049f08 0x10a .obj/quickjs-libc.o .text.js_get_errno - 0x00000000c0049e42 0x1c .obj/quickjs-libc.o + 0x00000000c004a012 0x1c .obj/quickjs-libc.o .text.js_std_file_close - 0x00000000c0049e5e 0x72 .obj/quickjs-libc.o + 0x00000000c004a02e 0x72 .obj/quickjs-libc.o .text.js_os_dup2 - 0x00000000c0049ed0 0x52 .obj/quickjs-libc.o + 0x00000000c004a0a0 0x52 .obj/quickjs-libc.o .text.js_os_dup - 0x00000000c0049f22 0x36 .obj/quickjs-libc.o + 0x00000000c004a0f2 0x36 .obj/quickjs-libc.o .text.js_os_kill - 0x00000000c0049f58 0x52 .obj/quickjs-libc.o + 0x00000000c004a128 0x52 .obj/quickjs-libc.o .text.js_os_close - 0x00000000c0049faa 0x36 .obj/quickjs-libc.o + 0x00000000c004a17a 0x36 .obj/quickjs-libc.o .text.js_os_chdir - 0x00000000c0049fe0 0x48 .obj/quickjs-libc.o + 0x00000000c004a1b0 0x48 .obj/quickjs-libc.o .text.js_os_symlink - 0x00000000c004a028 0x7a .obj/quickjs-libc.o + 0x00000000c004a1f8 0x7a .obj/quickjs-libc.o .text.js_os_sleep - 0x00000000c004a0a2 0x5e .obj/quickjs-libc.o + 0x00000000c004a272 0x5e .obj/quickjs-libc.o .text.js_os_mkdir - 0x00000000c004a100 0x6a .obj/quickjs-libc.o + 0x00000000c004a2d0 0x6a .obj/quickjs-libc.o .text.js_os_rename - 0x00000000c004a16a 0x7a .obj/quickjs-libc.o + 0x00000000c004a33a 0x7a .obj/quickjs-libc.o .text.js_os_remove - 0x00000000c004a1e4 0x48 .obj/quickjs-libc.o + 0x00000000c004a3b4 0x48 .obj/quickjs-libc.o .text.js_os_read_write - 0x00000000c004a22c 0xbe .obj/quickjs-libc.o + 0x00000000c004a3fc 0xbe .obj/quickjs-libc.o .text.js_os_open - 0x00000000c004a2ea 0x98 .obj/quickjs-libc.o + 0x00000000c004a4ba 0x98 .obj/quickjs-libc.o .text.js_sab_free - 0x00000000c004a382 0x40 .obj/quickjs-libc.o + 0x00000000c004a552 0x40 .obj/quickjs-libc.o .text.js_free_message - 0x00000000c004a3c2 0x3e .obj/quickjs-libc.o + 0x00000000c004a592 0x3e .obj/quickjs-libc.o .text.js_free_message_pipe - 0x00000000c004a400 0x76 .obj/quickjs-libc.o + 0x00000000c004a5d0 0x76 .obj/quickjs-libc.o .text.js_worker_ctor - 0x00000000c004a476 0x19a .obj/quickjs-libc.o + 0x00000000c004a646 0x19a .obj/quickjs-libc.o .text.js_free_port.part.0 - 0x00000000c004a610 0x32 .obj/quickjs-libc.o + 0x00000000c004a7e0 0x32 .obj/quickjs-libc.o .text.js_dump_obj.constprop.0 - 0x00000000c004a642 0x6a .obj/quickjs-libc.o + 0x00000000c004a812 0x6a .obj/quickjs-libc.o .text.js_std_dump_error1 - 0x00000000c004a6ac 0x70 .obj/quickjs-libc.o + 0x00000000c004a87c 0x70 .obj/quickjs-libc.o .text.js_os_exec - 0x00000000c004a71c 0x6bc .obj/quickjs-libc.o + 0x00000000c004a8ec 0x6bc .obj/quickjs-libc.o .text.js_worker_finalizer - 0x00000000c004add8 0x54 .obj/quickjs-libc.o + 0x00000000c004afa8 0x54 .obj/quickjs-libc.o .text.js_os_utimes - 0x00000000c004ae2c 0x94 .obj/quickjs-libc.o + 0x00000000c004affc 0x94 .obj/quickjs-libc.o .text.js_os_sleepAsync - 0x00000000c004aec0 0xde .obj/quickjs-libc.o + 0x00000000c004b090 0xde .obj/quickjs-libc.o .text.js_os_setTimeout - 0x00000000c004af9e 0xe8 .obj/quickjs-libc.o + 0x00000000c004b16e 0xe8 .obj/quickjs-libc.o .text.js_os_setReadHandler - 0x00000000c004b086 0x154 .obj/quickjs-libc.o + 0x00000000c004b256 0x154 .obj/quickjs-libc.o .text.js_os_signal - 0x00000000c004b1da 0x180 .obj/quickjs-libc.o + 0x00000000c004b3aa 0x180 .obj/quickjs-libc.o .text.js_worker_set_onmessage - 0x00000000c004b35a 0x10e .obj/quickjs-libc.o + 0x00000000c004b52a 0x10e .obj/quickjs-libc.o .text.js_worker_get_onmessage - 0x00000000c004b468 0x4a .obj/quickjs-libc.o + 0x00000000c004b638 0x4a .obj/quickjs-libc.o .text.js_std_urlGet - 0x00000000c004b4b2 0x344 .obj/quickjs-libc.o + 0x00000000c004b682 0x344 .obj/quickjs-libc.o .text.js_os_stat - 0x00000000c004b7f6 0x3d8 .obj/quickjs-libc.o + 0x00000000c004b9c6 0x3d8 .obj/quickjs-libc.o .text.js_print - 0x00000000c004bbce 0x90 .obj/quickjs-libc.o + 0x00000000c004bd9e 0x90 .obj/quickjs-libc.o .text.js_evalScript - 0x00000000c004bc5e 0x126 .obj/quickjs-libc.o + 0x00000000c004be2e 0x126 .obj/quickjs-libc.o .text.js_std_parseExtJSON - 0x00000000c004bd84 0x5a .obj/quickjs-libc.o + 0x00000000c004bf54 0x5a .obj/quickjs-libc.o .text.js_std_file_puts - 0x00000000c004bdde 0x8a .obj/quickjs-libc.o + 0x00000000c004bfae 0x8a .obj/quickjs-libc.o .text.js_load_file - 0x00000000c004be68 0xd0 .obj/quickjs-libc.o - 0x00000000c004be68 js_load_file + 0x00000000c004c038 0xd0 .obj/quickjs-libc.o + 0x00000000c004c038 js_load_file .text.js_std_loadFile - 0x00000000c004bf38 0x68 .obj/quickjs-libc.o + 0x00000000c004c108 0x68 .obj/quickjs-libc.o .text.js_loadScript - 0x00000000c004bfa0 0x80 .obj/quickjs-libc.o + 0x00000000c004c170 0x80 .obj/quickjs-libc.o .text.js_module_set_import_meta - 0x00000000c004c020 0x12c .obj/quickjs-libc.o - 0x00000000c004c020 js_module_set_import_meta + 0x00000000c004c1f0 0x12c .obj/quickjs-libc.o + 0x00000000c004c1f0 js_module_set_import_meta .text.js_module_loader - 0x00000000c004c14c 0x132 .obj/quickjs-libc.o - 0x00000000c004c14c js_module_loader + 0x00000000c004c31c 0x132 .obj/quickjs-libc.o + 0x00000000c004c31c js_module_loader .text.js_init_module_std - 0x00000000c004c27e 0x68 .obj/quickjs-libc.o - 0x00000000c004c27e js_init_module_std + 0x00000000c004c44e 0x68 .obj/quickjs-libc.o + 0x00000000c004c44e js_init_module_std .text.js_std_set_worker_new_context_func - 0x00000000c004c2e6 0xa .obj/quickjs-libc.o - 0x00000000c004c2e6 js_std_set_worker_new_context_func + 0x00000000c004c4b6 0xa .obj/quickjs-libc.o + 0x00000000c004c4b6 js_std_set_worker_new_context_func .text.js_init_module_os - 0x00000000c004c2f0 0x4a .obj/quickjs-libc.o - 0x00000000c004c2f0 js_init_module_os + 0x00000000c004c4c0 0x4a .obj/quickjs-libc.o + 0x00000000c004c4c0 js_init_module_os .text.js_std_add_helpers - 0x00000000c004c33a 0x138 .obj/quickjs-libc.o - 0x00000000c004c33a js_std_add_helpers + 0x00000000c004c50a 0x138 .obj/quickjs-libc.o + 0x00000000c004c50a js_std_add_helpers .text.js_std_init_handlers - 0x00000000c004c472 0x96 .obj/quickjs-libc.o - 0x00000000c004c472 js_std_init_handlers + 0x00000000c004c642 0x96 .obj/quickjs-libc.o + 0x00000000c004c642 js_std_init_handlers .text.js_std_free_handlers - 0x00000000c004c508 0xa6 .obj/quickjs-libc.o - 0x00000000c004c508 js_std_free_handlers + 0x00000000c004c6d8 0xa6 .obj/quickjs-libc.o + 0x00000000c004c6d8 js_std_free_handlers .text.js_std_dump_error - 0x00000000c004c5ae 0x2a .obj/quickjs-libc.o - 0x00000000c004c5ae js_std_dump_error + 0x00000000c004c77e 0x2a .obj/quickjs-libc.o + 0x00000000c004c77e js_std_dump_error .text.call_handler - 0x00000000c004c5d8 0x5a .obj/quickjs-libc.o + 0x00000000c004c7a8 0x5a .obj/quickjs-libc.o .text.js_os_poll - 0x00000000c004c632 0x374 .obj/quickjs-libc.o + 0x00000000c004c802 0x374 .obj/quickjs-libc.o .text.js_std_promise_rejection_tracker - 0x00000000c004c9a6 0x3a .obj/quickjs-libc.o - 0x00000000c004c9a6 js_std_promise_rejection_tracker + 0x00000000c004cb76 0x3a .obj/quickjs-libc.o + 0x00000000c004cb76 js_std_promise_rejection_tracker .text.js_std_loop - 0x00000000c004c9e0 0x3e .obj/quickjs-libc.o - 0x00000000c004c9e0 js_std_loop + 0x00000000c004cbb0 0x3e .obj/quickjs-libc.o + 0x00000000c004cbb0 js_std_loop .text.js_std_await - 0x00000000c004ca1e 0xa0 .obj/quickjs-libc.o - 0x00000000c004ca1e js_std_await + 0x00000000c004cbee 0xa0 .obj/quickjs-libc.o + 0x00000000c004cbee js_std_await .text.worker_func - 0x00000000c004cabe 0x100 .obj/quickjs-libc.o + 0x00000000c004cc8e 0x100 .obj/quickjs-libc.o .text.js_std_eval_binary - 0x00000000c004cbbe 0xb6 .obj/quickjs-libc.o - 0x00000000c004cbbe js_std_eval_binary + 0x00000000c004cd8e 0xb6 .obj/quickjs-libc.o + 0x00000000c004cd8e js_std_eval_binary .text.bf_realloc - 0x00000000c004cc74 0x6 .obj/libbf.o + 0x00000000c004ce44 0x6 .obj/libbf.o .text.bf_malloc - 0x00000000c004cc7a 0x8 .obj/libbf.o - .text.bf_free 0x00000000c004cc82 0xa .obj/libbf.o + 0x00000000c004ce4a 0x8 .obj/libbf.o + .text.bf_free 0x00000000c004ce52 0xa .obj/libbf.o .text.bf_delete - 0x00000000c004cc8c 0x12 .obj/libbf.o - .text.sat_add 0x00000000c004cc9e 0x1a .obj/libbf.o + 0x00000000c004ce5c 0x12 .obj/libbf.o + .text.sat_add 0x00000000c004ce6e 0x1a .obj/libbf.o .text.get_limbz - 0x00000000c004ccb8 0x14 .obj/libbf.o + 0x00000000c004ce88 0x14 .obj/libbf.o .text.get_bits - 0x00000000c004cccc 0x3a .obj/libbf.o - .text.get_bit 0x00000000c004cd06 0x20 .obj/libbf.o + 0x00000000c004ce9c 0x3a .obj/libbf.o + .text.get_bit 0x00000000c004ced6 0x20 .obj/libbf.o .text.limb_mask - 0x00000000c004cd26 0x22 .obj/libbf.o + 0x00000000c004cef6 0x22 .obj/libbf.o .text.mp_scan_nz - 0x00000000c004cd48 0x1c .obj/libbf.o + 0x00000000c004cf18 0x1c .obj/libbf.o .text.udiv1norm - 0x00000000c004cd64 0x4e .obj/libbf.o + 0x00000000c004cf34 0x4e .obj/libbf.o .text.mp_sqrtrem1 - 0x00000000c004cdb2 0xb2 .obj/libbf.o + 0x00000000c004cf82 0xb2 .obj/libbf.o .text.to_digit - 0x00000000c004ce64 0x36 .obj/libbf.o + 0x00000000c004d034 0x36 .obj/libbf.o .text.bf_dbuf_realloc - 0x00000000c004ce9a 0x4 .obj/libbf.o + 0x00000000c004d06a 0x4 .obj/libbf.o .text.ceil_log2 - 0x00000000c004ce9e 0x22 .obj/libbf.o + 0x00000000c004d06e 0x22 .obj/libbf.o .text.bf_add_limb - 0x00000000c004cec0 0x80 .obj/libbf.o + 0x00000000c004d090 0x80 .obj/libbf.o .text.mp_mul_basecase - 0x00000000c004cf40 0x9e .obj/libbf.o + 0x00000000c004d110 0x9e .obj/libbf.o .text.bf_context_init - 0x00000000c004cfde 0x2e .obj/libbf.o - 0x00000000c004cfde bf_context_init - .text.bf_init 0x00000000c004d00c 0x16 .obj/libbf.o - 0x00000000c004d00c bf_init + 0x00000000c004d1ae 0x2e .obj/libbf.o + 0x00000000c004d1ae bf_context_init + .text.bf_init 0x00000000c004d1dc 0x16 .obj/libbf.o + 0x00000000c004d1dc bf_init .text.bf_resize - 0x00000000c004d022 0x3a .obj/libbf.o - 0x00000000c004d022 bf_resize + 0x00000000c004d1f2 0x3a .obj/libbf.o + 0x00000000c004d1f2 bf_resize .text.bf_set_nan - 0x00000000c004d05c 0x20 .obj/libbf.o - 0x00000000c004d05c bf_set_nan + 0x00000000c004d22c 0x20 .obj/libbf.o + 0x00000000c004d22c bf_set_nan .text.bf_set_ui - 0x00000000c004d07c 0x5e .obj/libbf.o - 0x00000000c004d07c bf_set_ui + 0x00000000c004d24c 0x5e .obj/libbf.o + 0x00000000c004d24c bf_set_ui .text.bf_set_si - 0x00000000c004d0da 0x24 .obj/libbf.o - 0x00000000c004d0da bf_set_si + 0x00000000c004d2aa 0x24 .obj/libbf.o + 0x00000000c004d2aa bf_set_si .text.bf_set_zero - 0x00000000c004d0fe 0x24 .obj/libbf.o - 0x00000000c004d0fe bf_set_zero + 0x00000000c004d2ce 0x24 .obj/libbf.o + 0x00000000c004d2ce bf_set_zero .text.bf_set_inf - 0x00000000c004d122 0x24 .obj/libbf.o - 0x00000000c004d122 bf_set_inf + 0x00000000c004d2f2 0x24 .obj/libbf.o + 0x00000000c004d2f2 bf_set_inf .text.bf_set_overflow - 0x00000000c004d146 0xd4 .obj/libbf.o + 0x00000000c004d316 0xd4 .obj/libbf.o .text.__bf_round - 0x00000000c004d21a 0x2a6 .obj/libbf.o - .text.bf_set 0x00000000c004d4c0 0x4c .obj/libbf.o - 0x00000000c004d4c0 bf_set - .text.bf_move 0x00000000c004d50c 0x30 .obj/libbf.o - 0x00000000c004d50c bf_move - .text.bf_op2 0x00000000c004d53c 0x56 .obj/libbf.o + 0x00000000c004d3ea 0x2a6 .obj/libbf.o + .text.bf_set 0x00000000c004d690 0x4c .obj/libbf.o + 0x00000000c004d690 bf_set + .text.bf_move 0x00000000c004d6dc 0x30 .obj/libbf.o + 0x00000000c004d6dc bf_move + .text.bf_op2 0x00000000c004d70c 0x56 .obj/libbf.o .text.bf_normalize_and_round - 0x00000000c004d592 0xac .obj/libbf.o - 0x00000000c004d592 bf_normalize_and_round + 0x00000000c004d762 0xac .obj/libbf.o + 0x00000000c004d762 bf_normalize_and_round .text.bf_can_round - 0x00000000c004d63e 0xac .obj/libbf.o - 0x00000000c004d63e bf_can_round + 0x00000000c004d80e 0xac .obj/libbf.o + 0x00000000c004d80e bf_can_round .text.bf_ziv_rounding - 0x00000000c004d6ea 0xa6 .obj/libbf.o + 0x00000000c004d8ba 0xa6 .obj/libbf.o .text.bf_round - 0x00000000c004d790 0xe .obj/libbf.o - 0x00000000c004d790 bf_round + 0x00000000c004d960 0xe .obj/libbf.o + 0x00000000c004d960 bf_round .text.bf_const_get - 0x00000000c004d79e 0xa0 .obj/libbf.o + 0x00000000c004d96e 0xa0 .obj/libbf.o .text.mp_print_str - 0x00000000c004d83e 0x5e .obj/libbf.o - 0x00000000c004d83e mp_print_str + 0x00000000c004da0e 0x5e .obj/libbf.o + 0x00000000c004da0e mp_print_str .text.bf_print_str - 0x00000000c004d89c 0xb0 .obj/libbf.o - 0x00000000c004d89c bf_print_str - .text.bf_cmpu 0x00000000c004d94c 0x82 .obj/libbf.o - 0x00000000c004d94c bf_cmpu + 0x00000000c004da6c 0xb0 .obj/libbf.o + 0x00000000c004da6c bf_print_str + .text.bf_cmpu 0x00000000c004db1c 0x82 .obj/libbf.o + 0x00000000c004db1c bf_cmpu .text.bf_add_internal - 0x00000000c004d9ce 0x3e0 .obj/libbf.o + 0x00000000c004db9e 0x3e0 .obj/libbf.o .text.__bf_add - 0x00000000c004ddae 0x6 .obj/libbf.o + 0x00000000c004df7e 0x6 .obj/libbf.o .text.__bf_sub - 0x00000000c004ddb4 0x6 .obj/libbf.o + 0x00000000c004df84 0x6 .obj/libbf.o .text.bf_cmp_full - 0x00000000c004ddba 0x50 .obj/libbf.o - 0x00000000c004ddba bf_cmp_full - .text.bf_cmp 0x00000000c004de0a 0x58 .obj/libbf.o - 0x00000000c004de0a bf_cmp - .text.mp_add 0x00000000c004de62 0x3e .obj/libbf.o - 0x00000000c004de62 mp_add + 0x00000000c004df8a 0x50 .obj/libbf.o + 0x00000000c004df8a bf_cmp_full + .text.bf_cmp 0x00000000c004dfda 0x58 .obj/libbf.o + 0x00000000c004dfda bf_cmp + .text.mp_add 0x00000000c004e032 0x3e .obj/libbf.o + 0x00000000c004e032 mp_add .text.mp_add_ui - 0x00000000c004dea0 0x20 .obj/libbf.o - 0x00000000c004dea0 mp_add_ui - .text.mp_sub 0x00000000c004dec0 0x40 .obj/libbf.o - 0x00000000c004dec0 mp_sub + 0x00000000c004e070 0x20 .obj/libbf.o + 0x00000000c004e070 mp_add_ui + .text.mp_sub 0x00000000c004e090 0x40 .obj/libbf.o + 0x00000000c004e090 mp_sub .text.mp_sub_ui - 0x00000000c004df00 0x24 .obj/libbf.o - 0x00000000c004df00 mp_sub_ui - .text.mp_mul 0x00000000c004df24 0x1a .obj/libbf.o - 0x00000000c004df24 mp_mul + 0x00000000c004e0d0 0x24 .obj/libbf.o + 0x00000000c004e0d0 mp_sub_ui + .text.mp_mul 0x00000000c004e0f4 0x1a .obj/libbf.o + 0x00000000c004e0f4 mp_mul .text.mp_recip - 0x00000000c004df3e 0x20e .obj/libbf.o - 0x00000000c004df3e mp_recip + 0x00000000c004e10e 0x20e .obj/libbf.o + 0x00000000c004e10e mp_recip .text.mp_divnorm - 0x00000000c004e14c 0x3a6 .obj/libbf.o + 0x00000000c004e31c 0x3a6 .obj/libbf.o .text.mp_sqrtrem_rec - 0x00000000c004e4f2 0x250 .obj/libbf.o + 0x00000000c004e6c2 0x250 .obj/libbf.o .text.__bf_div - 0x00000000c004e742 0x198 .obj/libbf.o - .text.bf_mul 0x00000000c004e8da 0x16c .obj/libbf.o - 0x00000000c004e8da bf_mul + 0x00000000c004e912 0x198 .obj/libbf.o + .text.bf_mul 0x00000000c004eaaa 0x16c .obj/libbf.o + 0x00000000c004eaaa bf_mul .text.bf_pow_ui - 0x00000000c004ea46 0xb4 .obj/libbf.o + 0x00000000c004ec16 0xb4 .obj/libbf.o .text.bf_pow_ui_ui - 0x00000000c004eafa 0x4c .obj/libbf.o + 0x00000000c004ecca 0x4c .obj/libbf.o .text.bf_mul_2exp - 0x00000000c004eb46 0x3a .obj/libbf.o - 0x00000000c004eb46 bf_mul_2exp + 0x00000000c004ed16 0x3a .obj/libbf.o + 0x00000000c004ed16 bf_mul_2exp .text.bf_get_exp_min - 0x00000000c004eb80 0x48 .obj/libbf.o - 0x00000000c004eb80 bf_get_exp_min + 0x00000000c004ed50 0x48 .obj/libbf.o + 0x00000000c004ed50 bf_get_exp_min .text.bf_isqrt - 0x00000000c004ebc8 0x34 .obj/libbf.o - 0x00000000c004ebc8 bf_isqrt + 0x00000000c004ed98 0x34 .obj/libbf.o + 0x00000000c004ed98 bf_isqrt .text.mp_sqrtrem - 0x00000000c004ebfc 0x66 .obj/libbf.o - 0x00000000c004ebfc mp_sqrtrem - .text.bf_sqrt 0x00000000c004ec62 0x194 .obj/libbf.o - 0x00000000c004ec62 bf_sqrt - .text.bf_add 0x00000000c004edf6 0xc .obj/libbf.o - 0x00000000c004edf6 bf_add + 0x00000000c004edcc 0x66 .obj/libbf.o + 0x00000000c004edcc mp_sqrtrem + .text.bf_sqrt 0x00000000c004ee32 0x194 .obj/libbf.o + 0x00000000c004ee32 bf_sqrt + .text.bf_add 0x00000000c004efc6 0xc .obj/libbf.o + 0x00000000c004efc6 bf_add .text.bf_integer_from_radix_rec - 0x00000000c004ee02 0x10e .obj/libbf.o + 0x00000000c004efd2 0x10e .obj/libbf.o .text.bf_sqrt_sin - 0x00000000c004ef10 0x76 .obj/libbf.o + 0x00000000c004f0e0 0x76 .obj/libbf.o .text.bf_const_log2_rec.constprop.0 - 0x00000000c004ef86 0x138 .obj/libbf.o + 0x00000000c004f156 0x138 .obj/libbf.o .text.bf_add_epsilon.isra.0 - 0x00000000c004f0be 0x5c .obj/libbf.o - .text.bf_sub 0x00000000c004f11a 0xc .obj/libbf.o - 0x00000000c004f11a bf_sub - .text.bf_div 0x00000000c004f126 0xc .obj/libbf.o - 0x00000000c004f126 bf_div + 0x00000000c004f28e 0x5c .obj/libbf.o + .text.bf_sub 0x00000000c004f2ea 0xc .obj/libbf.o + 0x00000000c004f2ea bf_sub + .text.bf_div 0x00000000c004f2f6 0xc .obj/libbf.o + 0x00000000c004f2f6 bf_div .text.bf_const_log2_internal - 0x00000000c004f132 0x62 .obj/libbf.o + 0x00000000c004f302 0x62 .obj/libbf.o .text.bf_mul_ui - 0x00000000c004f194 0x52 .obj/libbf.o - 0x00000000c004f194 bf_mul_ui + 0x00000000c004f364 0x52 .obj/libbf.o + 0x00000000c004f364 bf_mul_ui .text.chud_bs.constprop.0 - 0x00000000c004f1e6 0x1d8 .obj/libbf.o + 0x00000000c004f3b6 0x1d8 .obj/libbf.o .text.bf_const_pi_internal - 0x00000000c004f3be 0xc6 .obj/libbf.o + 0x00000000c004f58e 0xc6 .obj/libbf.o .text.bf_mul_si - 0x00000000c004f484 0x52 .obj/libbf.o - 0x00000000c004f484 bf_mul_si + 0x00000000c004f654 0x52 .obj/libbf.o + 0x00000000c004f654 bf_mul_si .text.bf_add_si - 0x00000000c004f4d6 0x52 .obj/libbf.o - 0x00000000c004f4d6 bf_add_si + 0x00000000c004f6a6 0x52 .obj/libbf.o + 0x00000000c004f6a6 bf_add_si .text.bf_logic_op - 0x00000000c004f528 0x22a .obj/libbf.o - .text.bf_rint 0x00000000c004f752 0xa .obj/libbf.o - 0x00000000c004f752 bf_rint + 0x00000000c004f6f8 0x22a .obj/libbf.o + .text.bf_rint 0x00000000c004f922 0xa .obj/libbf.o + 0x00000000c004f922 bf_rint .text.bf_sqrtrem - 0x00000000c004f75c 0xf4 .obj/libbf.o - 0x00000000c004f75c bf_sqrtrem + 0x00000000c004f92c 0xf4 .obj/libbf.o + 0x00000000c004f92c bf_sqrtrem .text.bf_integer_to_radix_rec - 0x00000000c004f850 0x286 .obj/libbf.o + 0x00000000c004fa20 0x286 .obj/libbf.o .text.output_digits.constprop.0 - 0x00000000c004fad6 0x2b4 .obj/libbf.o + 0x00000000c004fca6 0x2b4 .obj/libbf.o .text.bf_divrem - 0x00000000c004fd8a 0x26a .obj/libbf.o - 0x00000000c004fd8a bf_divrem - .text.bf_rem 0x00000000c004fff4 0x3c .obj/libbf.o - 0x00000000c004fff4 bf_rem + 0x00000000c004ff5a 0x26a .obj/libbf.o + 0x00000000c004ff5a bf_divrem + .text.bf_rem 0x00000000c00501c4 0x3c .obj/libbf.o + 0x00000000c00501c4 bf_rem .text.bf_logic_or - 0x00000000c0050030 0x6 .obj/libbf.o - 0x00000000c0050030 bf_logic_or + 0x00000000c0050200 0x6 .obj/libbf.o + 0x00000000c0050200 bf_logic_or .text.bf_logic_xor - 0x00000000c0050036 0x6 .obj/libbf.o - 0x00000000c0050036 bf_logic_xor + 0x00000000c0050206 0x6 .obj/libbf.o + 0x00000000c0050206 bf_logic_xor .text.bf_logic_and - 0x00000000c005003c 0x6 .obj/libbf.o - 0x00000000c005003c bf_logic_and + 0x00000000c005020c 0x6 .obj/libbf.o + 0x00000000c005020c bf_logic_and .text.bf_get_float64 - 0x00000000c0050042 0xb6 .obj/libbf.o - 0x00000000c0050042 bf_get_float64 + 0x00000000c0050212 0xb6 .obj/libbf.o + 0x00000000c0050212 bf_get_float64 .text.bf_set_float64 - 0x00000000c00500f8 0xa0 .obj/libbf.o - 0x00000000c00500f8 bf_set_float64 + 0x00000000c00502c8 0xa0 .obj/libbf.o + 0x00000000c00502c8 bf_set_float64 .text.bf_get_int32 - 0x00000000c0050198 0xc4 .obj/libbf.o - 0x00000000c0050198 bf_get_int32 + 0x00000000c0050368 0xc4 .obj/libbf.o + 0x00000000c0050368 bf_get_int32 .text.bf_get_int64 - 0x00000000c005025c 0xbc .obj/libbf.o - 0x00000000c005025c bf_get_int64 + 0x00000000c005042c 0xbc .obj/libbf.o + 0x00000000c005042c bf_get_int64 .text.bf_remquo - 0x00000000c0050318 0x3e .obj/libbf.o - 0x00000000c0050318 bf_remquo + 0x00000000c00504e8 0x3e .obj/libbf.o + 0x00000000c00504e8 bf_remquo .text.bf_pow_int - 0x00000000c0050356 0xaa .obj/libbf.o + 0x00000000c0050526 0xaa .obj/libbf.o .text.bf_get_uint64 - 0x00000000c0050400 0x46 .obj/libbf.o - 0x00000000c0050400 bf_get_uint64 + 0x00000000c00505d0 0x46 .obj/libbf.o + 0x00000000c00505d0 bf_get_uint64 .text.bf_mul_pow_radix - 0x00000000c0050446 0x174 .obj/libbf.o - 0x00000000c0050446 bf_mul_pow_radix + 0x00000000c0050616 0x174 .obj/libbf.o + 0x00000000c0050616 bf_mul_pow_radix .text.bf_atof_internal.constprop.0 - 0x00000000c00505ba 0x4fa .obj/libbf.o + 0x00000000c005078a 0x4fa .obj/libbf.o .text.bf_atof2 - 0x00000000c0050ab4 0x4 .obj/libbf.o - 0x00000000c0050ab4 bf_atof2 - .text.bf_atof 0x00000000c0050ab8 0x1a .obj/libbf.o - 0x00000000c0050ab8 bf_atof + 0x00000000c0050c84 0x4 .obj/libbf.o + 0x00000000c0050c84 bf_atof2 + .text.bf_atof 0x00000000c0050c88 0x1a .obj/libbf.o + 0x00000000c0050c88 bf_atof .text.bf_mul_log2_radix - 0x00000000c0050ad2 0xd0 .obj/libbf.o - 0x00000000c0050ad2 bf_mul_log2_radix + 0x00000000c0050ca2 0xd0 .obj/libbf.o + 0x00000000c0050ca2 bf_mul_log2_radix .text.bf_convert_to_radix - 0x00000000c0050ba2 0x19e .obj/libbf.o - .text.bf_ftoa 0x00000000c0050d40 0x574 .obj/libbf.o - 0x00000000c0050d40 bf_ftoa + 0x00000000c0050d72 0x19e .obj/libbf.o + .text.bf_ftoa 0x00000000c0050f10 0x574 .obj/libbf.o + 0x00000000c0050f10 bf_ftoa .text.bf_const_log2 - 0x00000000c00512b4 0x12 .obj/libbf.o - 0x00000000c00512b4 bf_const_log2 + 0x00000000c0051484 0x12 .obj/libbf.o + 0x00000000c0051484 bf_const_log2 .text.bf_exp_internal - 0x00000000c00512c6 0x176 .obj/libbf.o + 0x00000000c0051496 0x176 .obj/libbf.o .text.check_exp_underflow_overflow - 0x00000000c005143c 0x12a .obj/libbf.o + 0x00000000c005160c 0x12a .obj/libbf.o .text.bf_log_internal - 0x00000000c0051566 0x220 .obj/libbf.o + 0x00000000c0051736 0x220 .obj/libbf.o .text.bf_const_pi - 0x00000000c0051786 0x14 .obj/libbf.o - 0x00000000c0051786 bf_const_pi + 0x00000000c0051956 0x14 .obj/libbf.o + 0x00000000c0051956 bf_const_pi .text.bf_sincos - 0x00000000c005179a 0x276 .obj/libbf.o + 0x00000000c005196a 0x276 .obj/libbf.o .text.bf_cos_internal - 0x00000000c0051a10 0xc .obj/libbf.o + 0x00000000c0051be0 0xc .obj/libbf.o .text.bf_sin_internal - 0x00000000c0051a1c 0xa .obj/libbf.o + 0x00000000c0051bec 0xa .obj/libbf.o .text.bf_tan_internal - 0x00000000c0051a26 0x44 .obj/libbf.o + 0x00000000c0051bf6 0x44 .obj/libbf.o .text.bf_atan_internal - 0x00000000c0051a6a 0x200 .obj/libbf.o + 0x00000000c0051c3a 0x200 .obj/libbf.o .text.bf_asin_internal - 0x00000000c0051c6a 0xa0 .obj/libbf.o + 0x00000000c0051e3a 0xa0 .obj/libbf.o .text.bf_clear_cache - 0x00000000c0051d0a 0x38 .obj/libbf.o - 0x00000000c0051d0a bf_clear_cache + 0x00000000c0051eda 0x38 .obj/libbf.o + 0x00000000c0051eda bf_clear_cache .text.bf_context_end - 0x00000000c0051d42 0x4 .obj/libbf.o - 0x00000000c0051d42 bf_context_end - .text.bf_exp 0x00000000c0051d46 0xec .obj/libbf.o - 0x00000000c0051d46 bf_exp - .text.bf_log 0x00000000c0051e32 0xd2 .obj/libbf.o - 0x00000000c0051e32 bf_log + 0x00000000c0051f12 0x4 .obj/libbf.o + 0x00000000c0051f12 bf_context_end + .text.bf_exp 0x00000000c0051f16 0xec .obj/libbf.o + 0x00000000c0051f16 bf_exp + .text.bf_log 0x00000000c0052002 0xd2 .obj/libbf.o + 0x00000000c0052002 bf_log .text.bf_pow_generic - 0x00000000c0051f04 0x76 .obj/libbf.o - .text.bf_pow 0x00000000c0051f7a 0x3d0 .obj/libbf.o - 0x00000000c0051f7a bf_pow - .text.bf_cos 0x00000000c005234a 0x92 .obj/libbf.o - 0x00000000c005234a bf_cos - .text.bf_sin 0x00000000c00523dc 0xda .obj/libbf.o - 0x00000000c00523dc bf_sin - .text.bf_tan 0x00000000c00524b6 0xec .obj/libbf.o - 0x00000000c00524b6 bf_tan - .text.bf_atan 0x00000000c00525a2 0x132 .obj/libbf.o - 0x00000000c00525a2 bf_atan + 0x00000000c00520d4 0x76 .obj/libbf.o + .text.bf_pow 0x00000000c005214a 0x3d0 .obj/libbf.o + 0x00000000c005214a bf_pow + .text.bf_cos 0x00000000c005251a 0x92 .obj/libbf.o + 0x00000000c005251a bf_cos + .text.bf_sin 0x00000000c00525ac 0xda .obj/libbf.o + 0x00000000c00525ac bf_sin + .text.bf_tan 0x00000000c0052686 0xec .obj/libbf.o + 0x00000000c0052686 bf_tan + .text.bf_atan 0x00000000c0052772 0x132 .obj/libbf.o + 0x00000000c0052772 bf_atan .text.bf_atan2_internal - 0x00000000c00526d4 0xde .obj/libbf.o + 0x00000000c00528a4 0xde .obj/libbf.o .text.bf_atan2 - 0x00000000c00527b2 0x12 .obj/libbf.o - 0x00000000c00527b2 bf_atan2 - .text.bf_asin 0x00000000c00527c4 0xe2 .obj/libbf.o - 0x00000000c00527c4 bf_asin - .text.bf_acos 0x00000000c00528a6 0xbe .obj/libbf.o - 0x00000000c00528a6 bf_acos + 0x00000000c0052982 0x12 .obj/libbf.o + 0x00000000c0052982 bf_atan2 + .text.bf_asin 0x00000000c0052994 0xe2 .obj/libbf.o + 0x00000000c0052994 bf_asin + .text.bf_acos 0x00000000c0052a76 0xbe .obj/libbf.o + 0x00000000c0052a76 bf_acos .text.bf_get_fft_size - 0x00000000c0052964 0x4 .obj/libbf.o - 0x00000000c0052964 bf_get_fft_size + 0x00000000c0052b34 0x4 .obj/libbf.o + 0x00000000c0052b34 bf_get_fft_size .text.spin_lock_irqsave - 0x00000000c0052968 0x4 .obj/arch_atomic.o - 0x00000000c0052968 spin_lock_irqsave + 0x00000000c0052b38 0x4 .obj/arch_atomic.o + 0x00000000c0052b38 spin_lock_irqsave .text.spin_unlock_irqrestore - 0x00000000c005296c 0x2 .obj/arch_atomic.o - 0x00000000c005296c spin_unlock_irqrestore + 0x00000000c0052b3c 0x2 .obj/arch_atomic.o + 0x00000000c0052b3c spin_unlock_irqrestore .text.__atomic_store_1 - 0x00000000c005296e 0x6 .obj/arch_atomic.o - 0x00000000c005296e __atomic_store_1 + 0x00000000c0052b3e 0x6 .obj/arch_atomic.o + 0x00000000c0052b3e __atomic_store_1 .text.__atomic_store_2 - 0x00000000c0052974 0x6 .obj/arch_atomic.o - 0x00000000c0052974 __atomic_store_2 + 0x00000000c0052b44 0x6 .obj/arch_atomic.o + 0x00000000c0052b44 __atomic_store_2 .text.__atomic_store_4 - 0x00000000c005297a 0x4 .obj/arch_atomic.o - 0x00000000c005297a __atomic_store_4 + 0x00000000c0052b4a 0x4 .obj/arch_atomic.o + 0x00000000c0052b4a __atomic_store_4 .text.__atomic_store_8 - 0x00000000c005297e 0x4 .obj/arch_atomic.o - 0x00000000c005297e __atomic_store_8 + 0x00000000c0052b4e 0x4 .obj/arch_atomic.o + 0x00000000c0052b4e __atomic_store_8 .text.__atomic_load_1 - 0x00000000c0052982 0x6 .obj/arch_atomic.o - 0x00000000c0052982 __atomic_load_1 + 0x00000000c0052b52 0x6 .obj/arch_atomic.o + 0x00000000c0052b52 __atomic_load_1 .text.__atomic_load_2 - 0x00000000c0052988 0x6 .obj/arch_atomic.o - 0x00000000c0052988 __atomic_load_2 + 0x00000000c0052b58 0x6 .obj/arch_atomic.o + 0x00000000c0052b58 __atomic_load_2 .text.__atomic_load_4 - 0x00000000c005298e 0x4 .obj/arch_atomic.o - 0x00000000c005298e __atomic_load_4 + 0x00000000c0052b5e 0x4 .obj/arch_atomic.o + 0x00000000c0052b5e __atomic_load_4 .text.__atomic_load_8 - 0x00000000c0052992 0x4 .obj/arch_atomic.o - 0x00000000c0052992 __atomic_load_8 + 0x00000000c0052b62 0x4 .obj/arch_atomic.o + 0x00000000c0052b62 __atomic_load_8 .text.__atomic_exchange_1 - 0x00000000c0052996 0xc .obj/arch_atomic.o - 0x00000000c0052996 __atomic_exchange_1 + 0x00000000c0052b66 0xc .obj/arch_atomic.o + 0x00000000c0052b66 __atomic_exchange_1 .text.__atomic_exchange_2 - 0x00000000c00529a2 0xc .obj/arch_atomic.o - 0x00000000c00529a2 __atomic_exchange_2 + 0x00000000c0052b72 0xc .obj/arch_atomic.o + 0x00000000c0052b72 __atomic_exchange_2 .text.__atomic_exchange_4 - 0x00000000c00529ae 0x8 .obj/arch_atomic.o - 0x00000000c00529ae __atomic_exchange_4 + 0x00000000c0052b7e 0x8 .obj/arch_atomic.o + 0x00000000c0052b7e __atomic_exchange_4 .text.__atomic_exchange_8 - 0x00000000c00529b6 0x8 .obj/arch_atomic.o - 0x00000000c00529b6 __atomic_exchange_8 + 0x00000000c0052b86 0x8 .obj/arch_atomic.o + 0x00000000c0052b86 __atomic_exchange_8 .text.__atomic_compare_exchange_1 - 0x00000000c00529be 0x1c .obj/arch_atomic.o - 0x00000000c00529be __atomic_compare_exchange_1 + 0x00000000c0052b8e 0x1c .obj/arch_atomic.o + 0x00000000c0052b8e __atomic_compare_exchange_1 .text.__atomic_compare_exchange_2 - 0x00000000c00529da 0x1c .obj/arch_atomic.o - 0x00000000c00529da __atomic_compare_exchange_2 + 0x00000000c0052baa 0x1c .obj/arch_atomic.o + 0x00000000c0052baa __atomic_compare_exchange_2 .text.__atomic_compare_exchange_4 - 0x00000000c00529f6 0x14 .obj/arch_atomic.o - 0x00000000c00529f6 __atomic_compare_exchange_4 + 0x00000000c0052bc6 0x14 .obj/arch_atomic.o + 0x00000000c0052bc6 __atomic_compare_exchange_4 .text.__atomic_compare_exchange_8 - 0x00000000c0052a0a 0x14 .obj/arch_atomic.o - 0x00000000c0052a0a __atomic_compare_exchange_8 + 0x00000000c0052bda 0x14 .obj/arch_atomic.o + 0x00000000c0052bda __atomic_compare_exchange_8 .text.__atomic_fetch_add_1 - 0x00000000c0052a1e 0xe .obj/arch_atomic.o - 0x00000000c0052a1e __atomic_fetch_add_1 + 0x00000000c0052bee 0xe .obj/arch_atomic.o + 0x00000000c0052bee __atomic_fetch_add_1 .text.__atomic_fetch_add_2 - 0x00000000c0052a2c 0xe .obj/arch_atomic.o - 0x00000000c0052a2c __atomic_fetch_add_2 + 0x00000000c0052bfc 0xe .obj/arch_atomic.o + 0x00000000c0052bfc __atomic_fetch_add_2 .text.__atomic_fetch_add_4 - 0x00000000c0052a3a 0xa .obj/arch_atomic.o - 0x00000000c0052a3a __atomic_fetch_add_4 + 0x00000000c0052c0a 0xa .obj/arch_atomic.o + 0x00000000c0052c0a __atomic_fetch_add_4 .text.__atomic_fetch_add_8 - 0x00000000c0052a44 0xa .obj/arch_atomic.o - 0x00000000c0052a44 __atomic_fetch_add_8 + 0x00000000c0052c14 0xa .obj/arch_atomic.o + 0x00000000c0052c14 __atomic_fetch_add_8 .text.__atomic_fetch_sub_1 - 0x00000000c0052a4e 0x10 .obj/arch_atomic.o - 0x00000000c0052a4e __atomic_fetch_sub_1 + 0x00000000c0052c1e 0x10 .obj/arch_atomic.o + 0x00000000c0052c1e __atomic_fetch_sub_1 .text.__atomic_fetch_sub_2 - 0x00000000c0052a5e 0x10 .obj/arch_atomic.o - 0x00000000c0052a5e __atomic_fetch_sub_2 + 0x00000000c0052c2e 0x10 .obj/arch_atomic.o + 0x00000000c0052c2e __atomic_fetch_sub_2 .text.__atomic_fetch_sub_4 - 0x00000000c0052a6e 0xc .obj/arch_atomic.o - 0x00000000c0052a6e __atomic_fetch_sub_4 + 0x00000000c0052c3e 0xc .obj/arch_atomic.o + 0x00000000c0052c3e __atomic_fetch_sub_4 .text.__atomic_fetch_sub_8 - 0x00000000c0052a7a 0xc .obj/arch_atomic.o - 0x00000000c0052a7a __atomic_fetch_sub_8 + 0x00000000c0052c4a 0xc .obj/arch_atomic.o + 0x00000000c0052c4a __atomic_fetch_sub_8 .text.__atomic_fetch_and_1 - 0x00000000c0052a86 0xe .obj/arch_atomic.o - 0x00000000c0052a86 __atomic_fetch_and_1 + 0x00000000c0052c56 0xe .obj/arch_atomic.o + 0x00000000c0052c56 __atomic_fetch_and_1 .text.__atomic_fetch_and_2 - 0x00000000c0052a94 0xe .obj/arch_atomic.o - 0x00000000c0052a94 __atomic_fetch_and_2 + 0x00000000c0052c64 0xe .obj/arch_atomic.o + 0x00000000c0052c64 __atomic_fetch_and_2 .text.__atomic_fetch_and_4 - 0x00000000c0052aa2 0xa .obj/arch_atomic.o - 0x00000000c0052aa2 __atomic_fetch_and_4 + 0x00000000c0052c72 0xa .obj/arch_atomic.o + 0x00000000c0052c72 __atomic_fetch_and_4 .text.__atomic_fetch_and_8 - 0x00000000c0052aac 0xa .obj/arch_atomic.o - 0x00000000c0052aac __atomic_fetch_and_8 + 0x00000000c0052c7c 0xa .obj/arch_atomic.o + 0x00000000c0052c7c __atomic_fetch_and_8 .text.__atomic_fetch_or_1 - 0x00000000c0052ab6 0xe .obj/arch_atomic.o - 0x00000000c0052ab6 __atomic_fetch_or_1 + 0x00000000c0052c86 0xe .obj/arch_atomic.o + 0x00000000c0052c86 __atomic_fetch_or_1 .text.__atomic_fetch_or_2 - 0x00000000c0052ac4 0xe .obj/arch_atomic.o - 0x00000000c0052ac4 __atomic_fetch_or_2 + 0x00000000c0052c94 0xe .obj/arch_atomic.o + 0x00000000c0052c94 __atomic_fetch_or_2 .text.__atomic_fetch_or_4 - 0x00000000c0052ad2 0xa .obj/arch_atomic.o - 0x00000000c0052ad2 __atomic_fetch_or_4 + 0x00000000c0052ca2 0xa .obj/arch_atomic.o + 0x00000000c0052ca2 __atomic_fetch_or_4 .text.__atomic_fetch_or_8 - 0x00000000c0052adc 0xa .obj/arch_atomic.o - 0x00000000c0052adc __atomic_fetch_or_8 + 0x00000000c0052cac 0xa .obj/arch_atomic.o + 0x00000000c0052cac __atomic_fetch_or_8 .text.__atomic_fetch_xor_1 - 0x00000000c0052ae6 0xe .obj/arch_atomic.o - 0x00000000c0052ae6 __atomic_fetch_xor_1 + 0x00000000c0052cb6 0xe .obj/arch_atomic.o + 0x00000000c0052cb6 __atomic_fetch_xor_1 .text.__atomic_fetch_xor_2 - 0x00000000c0052af4 0xe .obj/arch_atomic.o - 0x00000000c0052af4 __atomic_fetch_xor_2 + 0x00000000c0052cc4 0xe .obj/arch_atomic.o + 0x00000000c0052cc4 __atomic_fetch_xor_2 .text.__atomic_fetch_xor_4 - 0x00000000c0052b02 0xa .obj/arch_atomic.o - 0x00000000c0052b02 __atomic_fetch_xor_4 + 0x00000000c0052cd2 0xa .obj/arch_atomic.o + 0x00000000c0052cd2 __atomic_fetch_xor_4 .text.__atomic_fetch_xor_8 - 0x00000000c0052b0c 0xa .obj/arch_atomic.o - 0x00000000c0052b0c __atomic_fetch_xor_8 + 0x00000000c0052cdc 0xa .obj/arch_atomic.o + 0x00000000c0052cdc __atomic_fetch_xor_8 .text.__sync_add_and_fetch_1 - 0x00000000c0052b16 0x12 .obj/arch_atomic.o - 0x00000000c0052b16 __sync_add_and_fetch_1 + 0x00000000c0052ce6 0x12 .obj/arch_atomic.o + 0x00000000c0052ce6 __sync_add_and_fetch_1 .text.__sync_add_and_fetch_2 - 0x00000000c0052b28 0x14 .obj/arch_atomic.o - 0x00000000c0052b28 __sync_add_and_fetch_2 + 0x00000000c0052cf8 0x14 .obj/arch_atomic.o + 0x00000000c0052cf8 __sync_add_and_fetch_2 .text.__sync_add_and_fetch_4 - 0x00000000c0052b3c 0xc .obj/arch_atomic.o - 0x00000000c0052b3c __sync_add_and_fetch_4 + 0x00000000c0052d0c 0xc .obj/arch_atomic.o + 0x00000000c0052d0c __sync_add_and_fetch_4 .text.__sync_add_and_fetch_8 - 0x00000000c0052b48 0xa .obj/arch_atomic.o - 0x00000000c0052b48 __sync_add_and_fetch_8 + 0x00000000c0052d18 0xa .obj/arch_atomic.o + 0x00000000c0052d18 __sync_add_and_fetch_8 .text.__sync_sub_and_fetch_1 - 0x00000000c0052b52 0x12 .obj/arch_atomic.o - 0x00000000c0052b52 __sync_sub_and_fetch_1 + 0x00000000c0052d22 0x12 .obj/arch_atomic.o + 0x00000000c0052d22 __sync_sub_and_fetch_1 .text.__sync_sub_and_fetch_2 - 0x00000000c0052b64 0x14 .obj/arch_atomic.o - 0x00000000c0052b64 __sync_sub_and_fetch_2 + 0x00000000c0052d34 0x14 .obj/arch_atomic.o + 0x00000000c0052d34 __sync_sub_and_fetch_2 .text.__sync_sub_and_fetch_4 - 0x00000000c0052b78 0xe .obj/arch_atomic.o - 0x00000000c0052b78 __sync_sub_and_fetch_4 + 0x00000000c0052d48 0xe .obj/arch_atomic.o + 0x00000000c0052d48 __sync_sub_and_fetch_4 .text.__sync_sub_and_fetch_8 - 0x00000000c0052b86 0xc .obj/arch_atomic.o - 0x00000000c0052b86 __sync_sub_and_fetch_8 + 0x00000000c0052d56 0xc .obj/arch_atomic.o + 0x00000000c0052d56 __sync_sub_and_fetch_8 .text.__sync_or_and_fetch_1 - 0x00000000c0052b92 0xe .obj/arch_atomic.o - 0x00000000c0052b92 __sync_or_and_fetch_1 + 0x00000000c0052d62 0xe .obj/arch_atomic.o + 0x00000000c0052d62 __sync_or_and_fetch_1 .text.__sync_or_and_fetch_2 - 0x00000000c0052ba0 0xe .obj/arch_atomic.o - 0x00000000c0052ba0 __sync_or_and_fetch_2 + 0x00000000c0052d70 0xe .obj/arch_atomic.o + 0x00000000c0052d70 __sync_or_and_fetch_2 .text.__sync_or_and_fetch_4 - 0x00000000c0052bae 0xa .obj/arch_atomic.o - 0x00000000c0052bae __sync_or_and_fetch_4 + 0x00000000c0052d7e 0xa .obj/arch_atomic.o + 0x00000000c0052d7e __sync_or_and_fetch_4 .text.__sync_or_and_fetch_8 - 0x00000000c0052bb8 0xa .obj/arch_atomic.o - 0x00000000c0052bb8 __sync_or_and_fetch_8 + 0x00000000c0052d88 0xa .obj/arch_atomic.o + 0x00000000c0052d88 __sync_or_and_fetch_8 .text.__sync_and_and_fetch_1 - 0x00000000c0052bc2 0xe .obj/arch_atomic.o - 0x00000000c0052bc2 __sync_and_and_fetch_1 + 0x00000000c0052d92 0xe .obj/arch_atomic.o + 0x00000000c0052d92 __sync_and_and_fetch_1 .text.__sync_and_and_fetch_2 - 0x00000000c0052bd0 0xe .obj/arch_atomic.o - 0x00000000c0052bd0 __sync_and_and_fetch_2 + 0x00000000c0052da0 0xe .obj/arch_atomic.o + 0x00000000c0052da0 __sync_and_and_fetch_2 .text.__sync_and_and_fetch_4 - 0x00000000c0052bde 0xa .obj/arch_atomic.o - 0x00000000c0052bde __sync_and_and_fetch_4 + 0x00000000c0052dae 0xa .obj/arch_atomic.o + 0x00000000c0052dae __sync_and_and_fetch_4 .text.__sync_and_and_fetch_8 - 0x00000000c0052be8 0xa .obj/arch_atomic.o - 0x00000000c0052be8 __sync_and_and_fetch_8 + 0x00000000c0052db8 0xa .obj/arch_atomic.o + 0x00000000c0052db8 __sync_and_and_fetch_8 .text.__sync_xor_and_fetch_1 - 0x00000000c0052bf2 0xe .obj/arch_atomic.o - 0x00000000c0052bf2 __sync_xor_and_fetch_1 + 0x00000000c0052dc2 0xe .obj/arch_atomic.o + 0x00000000c0052dc2 __sync_xor_and_fetch_1 .text.__sync_xor_and_fetch_2 - 0x00000000c0052c00 0xe .obj/arch_atomic.o - 0x00000000c0052c00 __sync_xor_and_fetch_2 + 0x00000000c0052dd0 0xe .obj/arch_atomic.o + 0x00000000c0052dd0 __sync_xor_and_fetch_2 .text.__sync_xor_and_fetch_4 - 0x00000000c0052c0e 0xa .obj/arch_atomic.o - 0x00000000c0052c0e __sync_xor_and_fetch_4 + 0x00000000c0052dde 0xa .obj/arch_atomic.o + 0x00000000c0052dde __sync_xor_and_fetch_4 .text.__sync_xor_and_fetch_8 - 0x00000000c0052c18 0xa .obj/arch_atomic.o - 0x00000000c0052c18 __sync_xor_and_fetch_8 + 0x00000000c0052de8 0xa .obj/arch_atomic.o + 0x00000000c0052de8 __sync_xor_and_fetch_8 .text.__sync_nand_and_fetch_1 - 0x00000000c0052c22 0x16 .obj/arch_atomic.o - 0x00000000c0052c22 __sync_nand_and_fetch_1 + 0x00000000c0052df2 0x16 .obj/arch_atomic.o + 0x00000000c0052df2 __sync_nand_and_fetch_1 .text.__sync_nand_and_fetch_2 - 0x00000000c0052c38 0x18 .obj/arch_atomic.o - 0x00000000c0052c38 __sync_nand_and_fetch_2 + 0x00000000c0052e08 0x18 .obj/arch_atomic.o + 0x00000000c0052e08 __sync_nand_and_fetch_2 .text.__sync_nand_and_fetch_4 - 0x00000000c0052c50 0x12 .obj/arch_atomic.o - 0x00000000c0052c50 __sync_nand_and_fetch_4 + 0x00000000c0052e20 0x12 .obj/arch_atomic.o + 0x00000000c0052e20 __sync_nand_and_fetch_4 .text.__sync_nand_and_fetch_8 - 0x00000000c0052c62 0xe .obj/arch_atomic.o - 0x00000000c0052c62 __sync_nand_and_fetch_8 + 0x00000000c0052e32 0xe .obj/arch_atomic.o + 0x00000000c0052e32 __sync_nand_and_fetch_8 .text.__sync_bool_compare_and_swap_1 - 0x00000000c0052c70 0x14 .obj/arch_atomic.o - 0x00000000c0052c70 __sync_bool_compare_and_swap_1 + 0x00000000c0052e40 0x14 .obj/arch_atomic.o + 0x00000000c0052e40 __sync_bool_compare_and_swap_1 .text.__sync_bool_compare_and_swap_2 - 0x00000000c0052c84 0x14 .obj/arch_atomic.o - 0x00000000c0052c84 __sync_bool_compare_and_swap_2 + 0x00000000c0052e54 0x14 .obj/arch_atomic.o + 0x00000000c0052e54 __sync_bool_compare_and_swap_2 .text.__sync_bool_compare_and_swap_4 - 0x00000000c0052c98 0x10 .obj/arch_atomic.o - 0x00000000c0052c98 __sync_bool_compare_and_swap_4 + 0x00000000c0052e68 0x10 .obj/arch_atomic.o + 0x00000000c0052e68 __sync_bool_compare_and_swap_4 .text.__sync_bool_compare_and_swap_8 - 0x00000000c0052ca8 0x10 .obj/arch_atomic.o - 0x00000000c0052ca8 __sync_bool_compare_and_swap_8 + 0x00000000c0052e78 0x10 .obj/arch_atomic.o + 0x00000000c0052e78 __sync_bool_compare_and_swap_8 .text.__sync_val_compare_and_swap_1 - 0x00000000c0052cb8 0x10 .obj/arch_atomic.o - 0x00000000c0052cb8 __sync_val_compare_and_swap_1 + 0x00000000c0052e88 0x10 .obj/arch_atomic.o + 0x00000000c0052e88 __sync_val_compare_and_swap_1 .text.__sync_val_compare_and_swap_2 - 0x00000000c0052cc8 0x10 .obj/arch_atomic.o - 0x00000000c0052cc8 __sync_val_compare_and_swap_2 + 0x00000000c0052e98 0x10 .obj/arch_atomic.o + 0x00000000c0052e98 __sync_val_compare_and_swap_2 .text.__sync_val_compare_and_swap_4 - 0x00000000c0052cd8 0xc .obj/arch_atomic.o - 0x00000000c0052cd8 __sync_val_compare_and_swap_4 + 0x00000000c0052ea8 0xc .obj/arch_atomic.o + 0x00000000c0052ea8 __sync_val_compare_and_swap_4 .text.__sync_val_compare_and_swap_8 - 0x00000000c0052ce4 0xc .obj/arch_atomic.o - 0x00000000c0052ce4 __sync_val_compare_and_swap_8 - .text.dlclose 0x00000000c0052cf0 0x16 .obj/stub.o - 0x00000000c0052cf0 dlclose - .text.dlopen 0x00000000c0052d06 0x16 .obj/stub.o - 0x00000000c0052d06 dlopen - .text.dlsym 0x00000000c0052d1c 0x16 .obj/stub.o - 0x00000000c0052d1c dlsym + 0x00000000c0052eb4 0xc .obj/arch_atomic.o + 0x00000000c0052eb4 __sync_val_compare_and_swap_8 + .text.dlclose 0x00000000c0052ec0 0x16 .obj/stub.o + 0x00000000c0052ec0 dlclose + .text.dlopen 0x00000000c0052ed6 0x16 .obj/stub.o + 0x00000000c0052ed6 dlopen + .text.dlsym 0x00000000c0052eec 0x16 .obj/stub.o + 0x00000000c0052eec dlsym .text.fesetround - 0x00000000c0052d32 0x16 .obj/stub.o - 0x00000000c0052d32 fesetround - .text.hypot 0x00000000c0052d48 0x16 .obj/stub.o - 0x00000000c0052d48 hypot - .text.log1p 0x00000000c0052d5e 0x16 .obj/stub.o - 0x00000000c0052d5e log1p - .text.lrint 0x00000000c0052d74 0x16 .obj/stub.o - 0x00000000c0052d74 lrint - .text.pclose 0x00000000c0052d8a 0x16 .obj/stub.o - 0x00000000c0052d8a pclose - .text.pipe2 0x00000000c0052da0 0x16 .obj/stub.o - 0x00000000c0052da0 pipe2 - .text.popen 0x00000000c0052db6 0x16 .obj/stub.o - 0x00000000c0052db6 popen + 0x00000000c0052f02 0x16 .obj/stub.o + 0x00000000c0052f02 fesetround + .text.hypot 0x00000000c0052f18 0x16 .obj/stub.o + 0x00000000c0052f18 hypot + .text.log1p 0x00000000c0052f2e 0x16 .obj/stub.o + 0x00000000c0052f2e log1p + .text.lrint 0x00000000c0052f44 0x16 .obj/stub.o + 0x00000000c0052f44 lrint + .text.pclose 0x00000000c0052f5a 0x16 .obj/stub.o + 0x00000000c0052f5a pclose + .text.pipe2 0x00000000c0052f70 0x16 .obj/stub.o + 0x00000000c0052f70 pipe2 + .text.popen 0x00000000c0052f86 0x16 .obj/stub.o + 0x00000000c0052f86 popen .text.readlink - 0x00000000c0052dcc 0x16 .obj/stub.o - 0x00000000c0052dcc readlink - .text.symlink 0x00000000c0052de2 0x16 .obj/stub.o - 0x00000000c0052de2 symlink - .text.free 0x00000000c0052df8 0xc ../apps/import/libs/libmm.a(umm_free.o) - 0x00000000c0052df8 free - .text.malloc 0x00000000c0052e04 0x6 ../apps/import/libs/libmm.a(umm_malloc.o) - 0x00000000c0052e04 malloc + 0x00000000c0052f9c 0x16 .obj/stub.o + 0x00000000c0052f9c readlink + .text.symlink 0x00000000c0052fb2 0x16 .obj/stub.o + 0x00000000c0052fb2 symlink + .text.free 0x00000000c0052fc8 0xc ../apps/import/libs/libmm.a(umm_free.o) + 0x00000000c0052fc8 free + .text.malloc 0x00000000c0052fd4 0x6 ../apps/import/libs/libmm.a(umm_malloc.o) + 0x00000000c0052fd4 malloc .text.memalign - 0x00000000c0052e0a 0x4e ../apps/import/libs/libmm.a(umm_memalign.o) - 0x00000000c0052e0a memalign - .text.realloc 0x00000000c0052e58 0x4e ../apps/import/libs/libmm.a(umm_realloc.o) - 0x00000000c0052e58 realloc - .text.sbrk 0x00000000c0052ea6 0x7a ../apps/import/libs/libmm.a(umm_sbrk.o) - 0x00000000c0052ea6 sbrk + 0x00000000c0052fda 0x4e ../apps/import/libs/libmm.a(umm_memalign.o) + 0x00000000c0052fda memalign + .text.realloc 0x00000000c0053028 0x4e ../apps/import/libs/libmm.a(umm_realloc.o) + 0x00000000c0053028 realloc + .text.sbrk 0x00000000c0053076 0x7a ../apps/import/libs/libmm.a(umm_sbrk.o) + 0x00000000c0053076 sbrk .text.mm_brkaddr - 0x00000000c0052f20 0x22 ../apps/import/libs/libmm.a(mm_brkaddr.o) - 0x00000000c0052f20 mm_brkaddr + 0x00000000c00530f0 0x22 ../apps/import/libs/libmm.a(mm_brkaddr.o) + 0x00000000c00530f0 mm_brkaddr .text.mm_extend - 0x00000000c0052f42 0xc0 ../apps/import/libs/libmm.a(mm_extend.o) - 0x00000000c0052f42 mm_extend + 0x00000000c0053112 0xc0 ../apps/import/libs/libmm.a(mm_extend.o) + 0x00000000c0053112 mm_extend .text.mm_delayfree - 0x00000000c0053002 0x120 ../apps/import/libs/libmm.a(mm_free.o) - 0x00000000c0053002 mm_delayfree - .text.mm_free 0x00000000c0053122 0x5c ../apps/import/libs/libmm.a(mm_free.o) - 0x00000000c0053122 mm_free + 0x00000000c00531d2 0x120 ../apps/import/libs/libmm.a(mm_free.o) + 0x00000000c00531d2 mm_delayfree + .text.mm_free 0x00000000c00532f2 0x5c ../apps/import/libs/libmm.a(mm_free.o) + 0x00000000c00532f2 mm_free .text.mm_memalign - 0x00000000c005317e 0x18e ../apps/import/libs/libmm.a(mm_memalign.o) - 0x00000000c005317e mm_memalign + 0x00000000c005334e 0x18e ../apps/import/libs/libmm.a(mm_memalign.o) + 0x00000000c005334e mm_memalign .text.mm_realloc - 0x00000000c005330c 0x274 ../apps/import/libs/libmm.a(mm_realloc.o) - 0x00000000c005330c mm_realloc + 0x00000000c00534dc 0x274 ../apps/import/libs/libmm.a(mm_realloc.o) + 0x00000000c00534dc mm_realloc .text.mm_heapmember - 0x00000000c0053580 0x12 ../apps/import/libs/libmm.a(mm_heapmember.o) - 0x00000000c0053580 mm_heapmember + 0x00000000c0053750 0x12 ../apps/import/libs/libmm.a(mm_heapmember.o) + 0x00000000c0053750 mm_heapmember .text.umm_initialize - 0x00000000c0053592 0x1c ../apps/import/libs/libmm.a(umm_initialize.o) - 0x00000000c0053592 umm_initialize + 0x00000000c0053762 0x1c ../apps/import/libs/libmm.a(umm_initialize.o) + 0x00000000c0053762 umm_initialize .text.umm_try_initialize - 0x00000000c00535ae 0x36 ../apps/import/libs/libmm.a(umm_initialize.o) - 0x00000000c00535ae umm_try_initialize + 0x00000000c005377e 0x36 ../apps/import/libs/libmm.a(umm_initialize.o) + 0x00000000c005377e umm_try_initialize .text.mm_addregion - 0x00000000c00535e4 0x9e ../apps/import/libs/libmm.a(mm_initialize.o) - 0x00000000c00535e4 mm_addregion + 0x00000000c00537b4 0x9e ../apps/import/libs/libmm.a(mm_initialize.o) + 0x00000000c00537b4 mm_addregion .text.mm_initialize - 0x00000000c0053682 0xa2 ../apps/import/libs/libmm.a(mm_initialize.o) - 0x00000000c0053682 mm_initialize + 0x00000000c0053852 0xa2 ../apps/import/libs/libmm.a(mm_initialize.o) + 0x00000000c0053852 mm_initialize .text.mm_uninitialize - 0x00000000c0053724 0x2 ../apps/import/libs/libmm.a(mm_initialize.o) - 0x00000000c0053724 mm_uninitialize - .text.mm_lock 0x00000000c0053726 0x24 ../apps/import/libs/libmm.a(mm_lock.o) - 0x00000000c0053726 mm_lock + 0x00000000c00538f4 0x2 ../apps/import/libs/libmm.a(mm_initialize.o) + 0x00000000c00538f4 mm_uninitialize + .text.mm_lock 0x00000000c00538f6 0x24 ../apps/import/libs/libmm.a(mm_lock.o) + 0x00000000c00538f6 mm_lock .text.mm_unlock - 0x00000000c005374a 0x24 ../apps/import/libs/libmm.a(mm_lock.o) - 0x00000000c005374a mm_unlock + 0x00000000c005391a 0x24 ../apps/import/libs/libmm.a(mm_lock.o) + 0x00000000c005391a mm_unlock .text.mm_addfreechunk - 0x00000000c005376e 0x76 ../apps/import/libs/libmm.a(mm_addfreechunk.o) - 0x00000000c005376e mm_addfreechunk + 0x00000000c005393e 0x76 ../apps/import/libs/libmm.a(mm_addfreechunk.o) + 0x00000000c005393e mm_addfreechunk .text.mm_size2ndx - 0x00000000c00537e4 0x38 ../apps/import/libs/libmm.a(mm_size2ndx.o) - 0x00000000c00537e4 mm_size2ndx + 0x00000000c00539b4 0x38 ../apps/import/libs/libmm.a(mm_size2ndx.o) + 0x00000000c00539b4 mm_size2ndx .text.mm_shrinkchunk - 0x00000000c005381c 0xb0 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - 0x00000000c005381c mm_shrinkchunk + 0x00000000c00539ec 0xb0 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + 0x00000000c00539ec mm_shrinkchunk .text.mm_malloc - 0x00000000c00538cc 0x14c ../apps/import/libs/libmm.a(mm_malloc.o) - 0x00000000c00538cc mm_malloc + 0x00000000c0053a9c 0x14c ../apps/import/libs/libmm.a(mm_malloc.o) + 0x00000000c0053a9c mm_malloc .text.__assert - 0x00000000c0053a18 0xe ../apps/import/libs/libc.a(lib_assert.o) - 0x00000000c0053a18 __assert - .text.opendir 0x00000000c0053a26 0x48 ../apps/import/libs/libc.a(lib_opendir.o) - 0x00000000c0053a26 opendir + 0x00000000c0053be8 0xe ../apps/import/libs/libc.a(lib_assert.o) + 0x00000000c0053be8 __assert + .text.opendir 0x00000000c0053bf6 0x48 ../apps/import/libs/libc.a(lib_opendir.o) + 0x00000000c0053bf6 opendir .text.closedir - 0x00000000c0053a6e 0x32 ../apps/import/libs/libc.a(lib_closedir.o) - 0x00000000c0053a6e closedir - .text.readdir 0x00000000c0053aa0 0x34 ../apps/import/libs/libc.a(lib_readdir.o) - 0x00000000c0053aa0 readdir - .text.__errno 0x00000000c0053ad4 0x16 ../apps/import/libs/libc.a(lib_errno.o) - 0x00000000c0053ad4 __errno + 0x00000000c0053c3e 0x32 ../apps/import/libs/libc.a(lib_closedir.o) + 0x00000000c0053c3e closedir + .text.readdir 0x00000000c0053c70 0x34 ../apps/import/libs/libc.a(lib_readdir.o) + 0x00000000c0053c70 readdir + .text.__errno 0x00000000c0053ca4 0x16 ../apps/import/libs/libc.a(lib_errno.o) + 0x00000000c0053ca4 __errno .text.nxmutex_init - 0x00000000c0053aea 0x30 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053aea nxmutex_init + 0x00000000c0053cba 0x30 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053cba nxmutex_init .text.nxmutex_destroy - 0x00000000c0053b1a 0x1c ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053b1a nxmutex_destroy + 0x00000000c0053cea 0x1c ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053cea nxmutex_destroy .text.nxmutex_is_hold - 0x00000000c0053b36 0x1c ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053b36 nxmutex_is_hold + 0x00000000c0053d06 0x1c ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053d06 nxmutex_is_hold .text.nxmutex_is_locked - 0x00000000c0053b52 0x1e ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053b52 nxmutex_is_locked + 0x00000000c0053d22 0x1e ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053d22 nxmutex_is_locked .text.nxmutex_lock - 0x00000000c0053b70 0x58 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053b70 nxmutex_lock + 0x00000000c0053d40 0x58 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053d40 nxmutex_lock .text.nxmutex_trylock - 0x00000000c0053bc8 0x40 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053bc8 nxmutex_trylock + 0x00000000c0053d98 0x40 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053d98 nxmutex_trylock .text.nxmutex_timedlock - 0x00000000c0053c08 0x5e ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053c08 nxmutex_timedlock + 0x00000000c0053dd8 0x5e ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053dd8 nxmutex_timedlock .text.nxmutex_unlock - 0x00000000c0053c66 0x50 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053c66 nxmutex_unlock + 0x00000000c0053e36 0x50 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053e36 nxmutex_unlock .text.nxmutex_breaklock - 0x00000000c0053cb6 0x34 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053cb6 nxmutex_breaklock + 0x00000000c0053e86 0x34 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053e86 nxmutex_breaklock .text.nxmutex_restorelock - 0x00000000c0053cea 0xa ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053cea nxmutex_restorelock + 0x00000000c0053eba 0xa ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053eba nxmutex_restorelock .text.nxrmutex_init - 0x00000000c0053cf4 0x8 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053cf4 nxrmutex_init + 0x00000000c0053ec4 0x8 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053ec4 nxrmutex_init .text.nxrmutex_destroy - 0x00000000c0053cfc 0x1c ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053cfc nxrmutex_destroy + 0x00000000c0053ecc 0x1c ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053ecc nxrmutex_destroy .text.nxrmutex_is_hold - 0x00000000c0053d18 0x4 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053d18 nxrmutex_is_hold + 0x00000000c0053ee8 0x4 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053ee8 nxrmutex_is_hold .text.nxrmutex_is_locked - 0x00000000c0053d1c 0x4 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053d1c nxrmutex_is_locked + 0x00000000c0053eec 0x4 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053eec nxrmutex_is_locked .text.nxrmutex_lock - 0x00000000c0053d20 0x42 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053d20 nxrmutex_lock + 0x00000000c0053ef0 0x42 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053ef0 nxrmutex_lock .text.nxrmutex_trylock - 0x00000000c0053d62 0x42 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053d62 nxrmutex_trylock + 0x00000000c0053f32 0x42 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053f32 nxrmutex_trylock .text.nxrmutex_timedlock - 0x00000000c0053da4 0x46 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053da4 nxrmutex_timedlock + 0x00000000c0053f74 0x46 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053f74 nxrmutex_timedlock .text.nxrmutex_unlock - 0x00000000c0053dea 0x42 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053dea nxrmutex_unlock + 0x00000000c0053fba 0x42 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053fba nxrmutex_unlock .text.nxrmutex_breaklock - 0x00000000c0053e2c 0x3a ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053e2c nxrmutex_breaklock + 0x00000000c0053ffc 0x3a ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0053ffc nxrmutex_breaklock .text.nxrmutex_restorelock - 0x00000000c0053e66 0x26 ../apps/import/libs/libc.a(lib_mutex.o) - 0x00000000c0053e66 nxrmutex_restorelock + 0x00000000c0054036 0x26 ../apps/import/libs/libc.a(lib_mutex.o) + 0x00000000c0054036 nxrmutex_restorelock .text.pthread_attr_init - 0x00000000c0053e8c 0x20 ../apps/import/libs/libc.a(pthread_attr_init.o) - 0x00000000c0053e8c pthread_attr_init + 0x00000000c005405c 0x20 ../apps/import/libs/libc.a(pthread_attr_init.o) + 0x00000000c005405c pthread_attr_init .text.pthread_attr_destroy - 0x00000000c0053eac 0x1a ../apps/import/libs/libc.a(pthread_attr_destroy.o) - 0x00000000c0053eac pthread_attr_destroy + 0x00000000c005407c 0x1a ../apps/import/libs/libc.a(pthread_attr_destroy.o) + 0x00000000c005407c pthread_attr_destroy .text.pthread_attr_setdetachstate - 0x00000000c0053ec6 0x18 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) - 0x00000000c0053ec6 pthread_attr_setdetachstate + 0x00000000c0054096 0x18 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) + 0x00000000c0054096 pthread_attr_setdetachstate .text.pthread_startup - 0x00000000c0053ede 0x22 ../apps/import/libs/libc.a(pthread_create.o) + 0x00000000c00540ae 0x22 ../apps/import/libs/libc.a(pthread_create.o) .text.pthread_create - 0x00000000c0053f00 0x14 ../apps/import/libs/libc.a(pthread_create.o) - 0x00000000c0053f00 pthread_create + 0x00000000c00540d0 0x14 ../apps/import/libs/libc.a(pthread_create.o) + 0x00000000c00540d0 pthread_create .text.pthread_exit - 0x00000000c0053f14 0x16 ../apps/import/libs/libc.a(pthread_exit.o) - 0x00000000c0053f14 pthread_exit + 0x00000000c00540e4 0x16 ../apps/import/libs/libc.a(pthread_exit.o) + 0x00000000c00540e4 pthread_exit .text.pthread_mutex_lock - 0x00000000c0053f2a 0x6 ../apps/import/libs/libc.a(pthread_mutex_lock.o) - 0x00000000c0053f2a pthread_mutex_lock + 0x00000000c00540fa 0x6 ../apps/import/libs/libc.a(pthread_mutex_lock.o) + 0x00000000c00540fa pthread_mutex_lock .text.clock_ticks2time - 0x00000000c0053f30 0x26 ../apps/import/libs/libc.a(clock_ticks2time.o) - 0x00000000c0053f30 clock_ticks2time + 0x00000000c0054100 0x26 ../apps/import/libs/libc.a(clock_ticks2time.o) + 0x00000000c0054100 clock_ticks2time .text.clock_timespec_add - 0x00000000c0053f56 0x2e ../apps/import/libs/libc.a(clock_timespec_add.o) - 0x00000000c0053f56 clock_timespec_add + 0x00000000c0054126 0x2e ../apps/import/libs/libc.a(clock_timespec_add.o) + 0x00000000c0054126 clock_timespec_add .text.task_setcancelstate - 0x00000000c0053f84 0x64 ../apps/import/libs/libc.a(task_setcancelstate.o) - 0x00000000c0053f84 task_setcancelstate + 0x00000000c0054154 0x64 ../apps/import/libs/libc.a(task_setcancelstate.o) + 0x00000000c0054154 task_setcancelstate .text.nxsem_init - 0x00000000c0053fe8 0x3a ../apps/import/libs/libc.a(sem_init.o) - 0x00000000c0053fe8 nxsem_init + 0x00000000c00541b8 0x3a ../apps/import/libs/libc.a(sem_init.o) + 0x00000000c00541b8 nxsem_init .text.sem_init - 0x00000000c0054022 0x38 ../apps/import/libs/libc.a(sem_init.o) - 0x00000000c0054022 sem_init + 0x00000000c00541f2 0x38 ../apps/import/libs/libc.a(sem_init.o) + 0x00000000c00541f2 sem_init .text.nxsem_set_protocol - 0x00000000c005405a 0x38 ../apps/import/libs/libc.a(sem_setprotocol.o) - 0x00000000c005405a nxsem_set_protocol + 0x00000000c005422a 0x38 ../apps/import/libs/libc.a(sem_setprotocol.o) + 0x00000000c005422a nxsem_set_protocol .text.sem_setprotocol - 0x00000000c0054092 0x26 ../apps/import/libs/libc.a(sem_setprotocol.o) - 0x00000000c0054092 sem_setprotocol + 0x00000000c0054262 0x26 ../apps/import/libs/libc.a(sem_setprotocol.o) + 0x00000000c0054262 sem_setprotocol .text.nxsem_get_value - 0x00000000c00540b8 0x1c ../apps/import/libs/libc.a(sem_getvalue.o) - 0x00000000c00540b8 nxsem_get_value + 0x00000000c0054288 0x1c ../apps/import/libs/libc.a(sem_getvalue.o) + 0x00000000c0054288 nxsem_get_value .text.sem_getvalue - 0x00000000c00540d4 0x26 ../apps/import/libs/libc.a(sem_getvalue.o) - 0x00000000c00540d4 sem_getvalue - .text.signal 0x00000000c00540fa 0x84 ../apps/import/libs/libc.a(sig_signal.o) - 0x00000000c00540fa signal - .text.fileno 0x00000000c005417e 0x1e ../apps/import/libs/libc.a(lib_fileno.o) - 0x00000000c005417e fileno - .text.printf 0x00000000c005419c 0x30 ../apps/import/libs/libc.a(lib_printf.o) - 0x00000000c005419c printf - .text.sprintf 0x00000000c00541cc 0x38 ../apps/import/libs/libc.a(lib_sprintf.o) - 0x00000000c00541cc sprintf + 0x00000000c00542a4 0x26 ../apps/import/libs/libc.a(sem_getvalue.o) + 0x00000000c00542a4 sem_getvalue + .text.signal 0x00000000c00542ca 0x84 ../apps/import/libs/libc.a(sig_signal.o) + 0x00000000c00542ca signal + .text.fileno 0x00000000c005434e 0x1e ../apps/import/libs/libc.a(lib_fileno.o) + 0x00000000c005434e fileno + .text.printf 0x00000000c005436c 0x30 ../apps/import/libs/libc.a(lib_printf.o) + 0x00000000c005436c printf + .text.sprintf 0x00000000c005439c 0x38 ../apps/import/libs/libc.a(lib_sprintf.o) + 0x00000000c005439c sprintf .text.snprintf - 0x00000000c0054204 0x3c ../apps/import/libs/libc.a(lib_snprintf.o) - 0x00000000c0054204 snprintf + 0x00000000c00543d4 0x3c ../apps/import/libs/libc.a(lib_snprintf.o) + 0x00000000c00543d4 snprintf .text.vsnprintf - 0x00000000c0054240 0x36 ../apps/import/libs/libc.a(lib_vsnprintf.o) - 0x00000000c0054240 vsnprintf - .text.perror 0x00000000c0054276 0x32 ../apps/import/libs/libc.a(lib_perror.o) - 0x00000000c0054276 perror - .text.putchar 0x00000000c00542a8 0x1c ../apps/import/libs/libc.a(lib_putchar.o) - 0x00000000c00542a8 putchar + 0x00000000c0054410 0x36 ../apps/import/libs/libc.a(lib_vsnprintf.o) + 0x00000000c0054410 vsnprintf + .text.perror 0x00000000c0054446 0x32 ../apps/import/libs/libc.a(lib_perror.o) + 0x00000000c0054446 perror + .text.putchar 0x00000000c0054478 0x1c ../apps/import/libs/libc.a(lib_putchar.o) + 0x00000000c0054478 putchar .text.putchar_unlocked - 0x00000000c00542c4 0x1c ../apps/import/libs/libc.a(lib_putchar.o) - 0x00000000c00542c4 putchar_unlocked - .text.puts 0x00000000c00542e0 0x6a ../apps/import/libs/libc.a(lib_puts.o) - 0x00000000c00542e0 puts + 0x00000000c0054494 0x1c ../apps/import/libs/libc.a(lib_putchar.o) + 0x00000000c0054494 putchar_unlocked + .text.puts 0x00000000c00544b0 0x6a ../apps/import/libs/libc.a(lib_puts.o) + 0x00000000c00544b0 puts .text.lib_vsprintf_internal - 0x00000000c005434a 0xa ../apps/import/libs/libc.a(lib_libvsprintf.o) - 0x00000000c005434a lib_vsprintf_internal + 0x00000000c005451a 0xa ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c005451a lib_vsprintf_internal .text.lib_vsprintf - 0x00000000c0054354 0x4 ../apps/import/libs/libc.a(lib_libvsprintf.o) - 0x00000000c0054354 lib_vsprintf + 0x00000000c0054524 0x4 ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c0054524 lib_vsprintf .text.vsprintf_internal.constprop.0 - 0x00000000c0054358 0x992 ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c0054528 0x992 ../apps/import/libs/libc.a(lib_libvsprintf.o) .text.lib_sprintf_internal - 0x00000000c0054cea 0x24 ../apps/import/libs/libc.a(lib_libvsprintf.o) - 0x00000000c0054cea lib_sprintf_internal - .text.remove 0x00000000c0054d0e 0x32 ../apps/import/libs/libc.a(lib_remove.o) - 0x00000000c0054d0e remove + 0x00000000c0054eba 0x24 ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c0054eba lib_sprintf_internal + .text.remove 0x00000000c0054ede 0x32 ../apps/import/libs/libc.a(lib_remove.o) + 0x00000000c0054ede remove .text.__ultoa_invert - 0x00000000c0054d40 0x40 ../apps/import/libs/libc.a(lib_ultoa_invert.o) - 0x00000000c0054d40 __ultoa_invert + 0x00000000c0054f10 0x40 ../apps/import/libs/libc.a(lib_ultoa_invert.o) + 0x00000000c0054f10 __ultoa_invert .text.__dtoa_engine - 0x00000000c0054d80 0x196 ../apps/import/libs/libc.a(lib_dtoa_engine.o) - 0x00000000c0054d80 __dtoa_engine + 0x00000000c0054f50 0x196 ../apps/import/libs/libc.a(lib_dtoa_engine.o) + 0x00000000c0054f50 __dtoa_engine .text.lib_mode2oflags - 0x00000000c0054f16 0xd4 ../apps/import/libs/libc.a(lib_fopen.o) - 0x00000000c0054f16 lib_mode2oflags - .text.fdopen 0x00000000c0054fea 0xb6 ../apps/import/libs/libc.a(lib_fopen.o) - 0x00000000c0054fea fdopen - .text.fopen 0x00000000c00550a0 0x48 ../apps/import/libs/libc.a(lib_fopen.o) - 0x00000000c00550a0 fopen - .text.fclose 0x00000000c00550e8 0xce ../apps/import/libs/libc.a(lib_fclose.o) - 0x00000000c00550e8 fclose + 0x00000000c00550e6 0xd4 ../apps/import/libs/libc.a(lib_fopen.o) + 0x00000000c00550e6 lib_mode2oflags + .text.fdopen 0x00000000c00551ba 0xb6 ../apps/import/libs/libc.a(lib_fopen.o) + 0x00000000c00551ba fdopen + .text.fopen 0x00000000c0055270 0x48 ../apps/import/libs/libc.a(lib_fopen.o) + 0x00000000c0055270 fopen + .text.fclose 0x00000000c00552b8 0xce ../apps/import/libs/libc.a(lib_fclose.o) + 0x00000000c00552b8 fclose .text.fread_unlocked - 0x00000000c00551b6 0x28 ../apps/import/libs/libc.a(lib_fread.o) - 0x00000000c00551b6 fread_unlocked - .text.fread 0x00000000c00551de 0x36 ../apps/import/libs/libc.a(lib_fread.o) - 0x00000000c00551de fread + 0x00000000c0055386 0x28 ../apps/import/libs/libc.a(lib_fread.o) + 0x00000000c0055386 fread_unlocked + .text.fread 0x00000000c00553ae 0x36 ../apps/import/libs/libc.a(lib_fread.o) + 0x00000000c00553ae fread .text.lib_fread_unlocked - 0x00000000c0055214 0xc6 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - 0x00000000c0055214 lib_fread_unlocked - .text.fseek 0x00000000c00552da 0x4 ../apps/import/libs/libc.a(lib_fseek.o) - 0x00000000c00552da fseek - .text.fseeko 0x00000000c00552de 0x3c ../apps/import/libs/libc.a(lib_fseeko.o) - 0x00000000c00552de fseeko - .text.ftell 0x00000000c005531a 0xe ../apps/import/libs/libc.a(lib_ftell.o) - 0x00000000c005531a ftell - .text.ftello 0x00000000c0055328 0x30 ../apps/import/libs/libc.a(lib_ftello.o) - 0x00000000c0055328 ftello + 0x00000000c00553e4 0xc6 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + 0x00000000c00553e4 lib_fread_unlocked + .text.fseek 0x00000000c00554aa 0x4 ../apps/import/libs/libc.a(lib_fseek.o) + 0x00000000c00554aa fseek + .text.fseeko 0x00000000c00554ae 0x3c ../apps/import/libs/libc.a(lib_fseeko.o) + 0x00000000c00554ae fseeko + .text.ftell 0x00000000c00554ea 0xe ../apps/import/libs/libc.a(lib_ftell.o) + 0x00000000c00554ea ftell + .text.ftello 0x00000000c00554f8 0x30 ../apps/import/libs/libc.a(lib_ftello.o) + 0x00000000c00554f8 ftello .text.fgetc_unlocked - 0x00000000c0055358 0x22 ../apps/import/libs/libc.a(lib_fgetc.o) - 0x00000000c0055358 fgetc_unlocked - .text.fgetc 0x00000000c005537a 0x28 ../apps/import/libs/libc.a(lib_fgetc.o) - 0x00000000c005537a fgetc + 0x00000000c0055528 0x22 ../apps/import/libs/libc.a(lib_fgetc.o) + 0x00000000c0055528 fgetc_unlocked + .text.fgetc 0x00000000c005554a 0x28 ../apps/import/libs/libc.a(lib_fgetc.o) + 0x00000000c005554a fgetc .text.fwrite_unlocked - 0x00000000c00553a2 0x28 ../apps/import/libs/libc.a(lib_fwrite.o) - 0x00000000c00553a2 fwrite_unlocked - .text.fwrite 0x00000000c00553ca 0x36 ../apps/import/libs/libc.a(lib_fwrite.o) - 0x00000000c00553ca fwrite + 0x00000000c0055572 0x28 ../apps/import/libs/libc.a(lib_fwrite.o) + 0x00000000c0055572 fwrite_unlocked + .text.fwrite 0x00000000c005559a 0x36 ../apps/import/libs/libc.a(lib_fwrite.o) + 0x00000000c005559a fwrite .text.lib_fwrite_unlocked - 0x00000000c0055400 0x36 ../apps/import/libs/libc.a(lib_libfwrite.o) - 0x00000000c0055400 lib_fwrite_unlocked + 0x00000000c00555d0 0x36 ../apps/import/libs/libc.a(lib_libfwrite.o) + 0x00000000c00555d0 lib_fwrite_unlocked .text.lib_fwrite - 0x00000000c0055436 0x32 ../apps/import/libs/libc.a(lib_libfwrite.o) - 0x00000000c0055436 lib_fwrite + 0x00000000c0055606 0x32 ../apps/import/libs/libc.a(lib_libfwrite.o) + 0x00000000c0055606 lib_fwrite .text.fflush_unlocked - 0x00000000c0055468 0x36 ../apps/import/libs/libc.a(lib_fflush.o) - 0x00000000c0055468 fflush_unlocked - .text.fflush 0x00000000c005549e 0x36 ../apps/import/libs/libc.a(lib_fflush.o) - 0x00000000c005549e fflush + 0x00000000c0055638 0x36 ../apps/import/libs/libc.a(lib_fflush.o) + 0x00000000c0055638 fflush_unlocked + .text.fflush 0x00000000c005566e 0x36 ../apps/import/libs/libc.a(lib_fflush.o) + 0x00000000c005566e fflush .text.lib_flushall_unlocked - 0x00000000c00554d4 0x54 ../apps/import/libs/libc.a(lib_libflushall.o) - 0x00000000c00554d4 lib_flushall_unlocked + 0x00000000c00556a4 0x54 ../apps/import/libs/libc.a(lib_libflushall.o) + 0x00000000c00556a4 lib_flushall_unlocked .text.lib_flushall - 0x00000000c0055528 0x62 ../apps/import/libs/libc.a(lib_libflushall.o) - 0x00000000c0055528 lib_flushall + 0x00000000c00556f8 0x62 ../apps/import/libs/libc.a(lib_libflushall.o) + 0x00000000c00556f8 lib_flushall .text.lib_fflush_unlocked - 0x00000000c005558a 0x4 ../apps/import/libs/libc.a(lib_libfflush.o) - 0x00000000c005558a lib_fflush_unlocked + 0x00000000c005575a 0x4 ../apps/import/libs/libc.a(lib_libfflush.o) + 0x00000000c005575a lib_fflush_unlocked .text.lib_fflush - 0x00000000c005558e 0x1c ../apps/import/libs/libc.a(lib_libfflush.o) - 0x00000000c005558e lib_fflush - .text.putc 0x00000000c00555aa 0x2 ../apps/import/libs/libc.a(lib_putc.o) - 0x00000000c00555aa putc + 0x00000000c005575e 0x1c ../apps/import/libs/libc.a(lib_libfflush.o) + 0x00000000c005575e lib_fflush + .text.putc 0x00000000c005577a 0x2 ../apps/import/libs/libc.a(lib_putc.o) + 0x00000000c005577a putc .text.putc_unlocked - 0x00000000c00555ac 0x2 ../apps/import/libs/libc.a(lib_putc.o) - 0x00000000c00555ac putc_unlocked + 0x00000000c005577c 0x2 ../apps/import/libs/libc.a(lib_putc.o) + 0x00000000c005577c putc_unlocked .text.fputc_unlocked - 0x00000000c00555ae 0x4c ../apps/import/libs/libc.a(lib_fputc.o) - 0x00000000c00555ae fputc_unlocked - .text.fputc 0x00000000c00555fa 0x2e ../apps/import/libs/libc.a(lib_fputc.o) - 0x00000000c00555fa fputc + 0x00000000c005577e 0x4c ../apps/import/libs/libc.a(lib_fputc.o) + 0x00000000c005577e fputc_unlocked + .text.fputc 0x00000000c00557ca 0x2e ../apps/import/libs/libc.a(lib_fputc.o) + 0x00000000c00557ca fputc .text.fputs_unlocked - 0x00000000c0055628 0x82 ../apps/import/libs/libc.a(lib_fputs.o) - 0x00000000c0055628 fputs_unlocked - .text.fputs 0x00000000c00556aa 0x2e ../apps/import/libs/libc.a(lib_fputs.o) - 0x00000000c00556aa fputs - .text.fprintf 0x00000000c00556d8 0x1e ../apps/import/libs/libc.a(lib_fprintf.o) - 0x00000000c00556d8 fprintf + 0x00000000c00557f8 0x82 ../apps/import/libs/libc.a(lib_fputs.o) + 0x00000000c00557f8 fputs_unlocked + .text.fputs 0x00000000c005587a 0x2e ../apps/import/libs/libc.a(lib_fputs.o) + 0x00000000c005587a fputs + .text.fprintf 0x00000000c00558a8 0x1e ../apps/import/libs/libc.a(lib_fprintf.o) + 0x00000000c00558a8 fprintf .text.vfprintf - 0x00000000c00556f6 0x3a ../apps/import/libs/libc.a(lib_vfprintf.o) - 0x00000000c00556f6 vfprintf - .text.feof 0x00000000c0055730 0x8 ../apps/import/libs/libc.a(lib_feof.o) - 0x00000000c0055730 feof - .text.ferror 0x00000000c0055738 0xc ../apps/import/libs/libc.a(lib_ferror.o) - 0x00000000c0055738 ferror + 0x00000000c00558c6 0x3a ../apps/import/libs/libc.a(lib_vfprintf.o) + 0x00000000c00558c6 vfprintf + .text.feof 0x00000000c0055900 0x8 ../apps/import/libs/libc.a(lib_feof.o) + 0x00000000c0055900 feof + .text.ferror 0x00000000c0055908 0xc ../apps/import/libs/libc.a(lib_ferror.o) + 0x00000000c0055908 ferror .text.clearerr_unlocked - 0x00000000c0055744 0xc ../apps/import/libs/libc.a(lib_clearerr.o) - 0x00000000c0055744 clearerr_unlocked + 0x00000000c0055914 0xc ../apps/import/libs/libc.a(lib_clearerr.o) + 0x00000000c0055914 clearerr_unlocked .text.clearerr - 0x00000000c0055750 0x20 ../apps/import/libs/libc.a(lib_clearerr.o) - 0x00000000c0055750 clearerr - .text.tmpfile 0x00000000c0055770 0x54 ../apps/import/libs/libc.a(lib_tmpfile.o) - 0x00000000c0055770 tmpfile + 0x00000000c0055920 0x20 ../apps/import/libs/libc.a(lib_clearerr.o) + 0x00000000c0055920 clearerr + .text.tmpfile 0x00000000c0055940 0x54 ../apps/import/libs/libc.a(lib_tmpfile.o) + 0x00000000c0055940 tmpfile .text.flockfile - 0x00000000c00557c4 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) - 0x00000000c00557c4 flockfile + 0x00000000c0055994 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) + 0x00000000c0055994 flockfile .text.ftrylockfile - 0x00000000c00557ca 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) - 0x00000000c00557ca ftrylockfile + 0x00000000c005599a 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) + 0x00000000c005599a ftrylockfile .text.funlockfile - 0x00000000c00557d0 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) - 0x00000000c00557d0 funlockfile + 0x00000000c00559a0 0x6 ../apps/import/libs/libc.a(lib_libfilelock.o) + 0x00000000c00559a0 funlockfile .text.lib_get_streams - 0x00000000c00557d6 0x12 ../apps/import/libs/libc.a(lib_libgetstreams.o) - 0x00000000c00557d6 lib_get_streams + 0x00000000c00559a6 0x12 ../apps/import/libs/libc.a(lib_libgetstreams.o) + 0x00000000c00559a6 lib_get_streams .text.lib_get_stream - 0x00000000c00557e8 0x22 ../apps/import/libs/libc.a(lib_libgetstreams.o) - 0x00000000c00557e8 lib_get_stream + 0x00000000c00559b8 0x22 ../apps/import/libs/libc.a(lib_libgetstreams.o) + 0x00000000c00559b8 lib_get_stream .text.unlikely.abort - 0x00000000c005580a 0xa ../apps/import/libs/libc.a(lib_abort.o) - 0x00000000c005580a abort - .text.atoi 0x00000000c0055814 0x14 ../apps/import/libs/libc.a(lib_atoi.o) - 0x00000000c0055814 atoi - .text.exit 0x00000000c0055828 0x1c ../apps/import/libs/libc.a(lib_exit.o) - 0x00000000c0055828 exit + 0x00000000c00559da 0xa ../apps/import/libs/libc.a(lib_abort.o) + 0x00000000c00559da abort + .text.atoi 0x00000000c00559e4 0x14 ../apps/import/libs/libc.a(lib_atoi.o) + 0x00000000c00559e4 atoi + .text.exit 0x00000000c00559f8 0x1c ../apps/import/libs/libc.a(lib_exit.o) + 0x00000000c00559f8 exit .text.quick_exit - 0x00000000c0055844 0x16 ../apps/import/libs/libc.a(lib_exit.o) - 0x00000000c0055844 quick_exit - .text._Exit 0x00000000c005585a 0x8 ../apps/import/libs/libc.a(lib_exit.o) - 0x00000000c005585a _Exit + 0x00000000c0055a14 0x16 ../apps/import/libs/libc.a(lib_exit.o) + 0x00000000c0055a14 quick_exit + .text._Exit 0x00000000c0055a2a 0x8 ../apps/import/libs/libc.a(lib_exit.o) + 0x00000000c0055a2a _Exit .text.realpath - 0x00000000c0055862 0x17c ../apps/import/libs/libc.a(lib_realpath.o) - 0x00000000c0055862 realpath - .text.strtol 0x00000000c00559de 0x98 ../apps/import/libs/libc.a(lib_strtol.o) - 0x00000000c00559de strtol - .text.strtoul 0x00000000c0055a76 0xf6 ../apps/import/libs/libc.a(lib_strtoul.o) - 0x00000000c0055a76 strtoul + 0x00000000c0055a32 0x17c ../apps/import/libs/libc.a(lib_realpath.o) + 0x00000000c0055a32 realpath + .text.strtol 0x00000000c0055bae 0x98 ../apps/import/libs/libc.a(lib_strtol.o) + 0x00000000c0055bae strtol + .text.strtoul 0x00000000c0055c46 0xf6 ../apps/import/libs/libc.a(lib_strtoul.o) + 0x00000000c0055c46 strtoul .text.ifallzero.constprop.0 - 0x00000000c0055b6c 0x2a ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0055d3c 0x2a ../apps/import/libs/libc.a(lib_strtold.o) .text.scanexp.constprop.0 - 0x00000000c0055b96 0x68 ../apps/import/libs/libc.a(lib_strtold.o) - .text.strtox 0x00000000c0055bfe 0x77e ../apps/import/libs/libc.a(lib_strtold.o) - .text.strtof 0x00000000c005637c 0x14 ../apps/import/libs/libc.a(lib_strtold.o) - 0x00000000c005637c strtof - .text.strtod 0x00000000c0056390 0x14 ../apps/import/libs/libc.a(lib_strtold.o) - 0x00000000c0056390 strtod - .text.strtold 0x00000000c00563a4 0x6 ../apps/import/libs/libc.a(lib_strtold.o) - 0x00000000c00563a4 strtold + 0x00000000c0055d66 0x68 ../apps/import/libs/libc.a(lib_strtold.o) + .text.strtox 0x00000000c0055dce 0x77e ../apps/import/libs/libc.a(lib_strtold.o) + .text.strtof 0x00000000c005654c 0x14 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c005654c strtof + .text.strtod 0x00000000c0056560 0x14 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0056560 strtod + .text.strtold 0x00000000c0056574 0x6 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0056574 strtold .text.lib_checkbase - 0x00000000c00563aa 0x90 ../apps/import/libs/libc.a(lib_checkbase.o) - 0x00000000c00563aa lib_checkbase - .text.mkstemp 0x00000000c005643a 0x20 ../apps/import/libs/libc.a(lib_mkstemp.o) - 0x00000000c005643a mkstemp - .text.atexit 0x00000000c005645a 0x4 ../apps/import/libs/libc.a(lib_atexit.o) - 0x00000000c005645a atexit + 0x00000000c005657a 0x90 ../apps/import/libs/libc.a(lib_checkbase.o) + 0x00000000c005657a lib_checkbase + .text.mkstemp 0x00000000c005660a 0x20 ../apps/import/libs/libc.a(lib_mkstemp.o) + 0x00000000c005660a mkstemp + .text.atexit 0x00000000c005662a 0x4 ../apps/import/libs/libc.a(lib_atexit.o) + 0x00000000c005662a atexit .text.at_quick_exit - 0x00000000c005645e 0x4 ../apps/import/libs/libc.a(lib_atexit.o) - 0x00000000c005645e at_quick_exit - .text.on_exit 0x00000000c0056462 0x4 ../apps/import/libs/libc.a(lib_atexit.o) - 0x00000000c0056462 on_exit + 0x00000000c005662e 0x4 ../apps/import/libs/libc.a(lib_atexit.o) + 0x00000000c005662e at_quick_exit + .text.on_exit 0x00000000c0056632 0x4 ../apps/import/libs/libc.a(lib_atexit.o) + 0x00000000c0056632 on_exit .text.__cxa_atexit - 0x00000000c0056466 0x4 ../apps/import/libs/libc.a(lib_atexit.o) - 0x00000000c0056466 __cxa_atexit + 0x00000000c0056636 0x4 ../apps/import/libs/libc.a(lib_atexit.o) + 0x00000000c0056636 __cxa_atexit .text.memoutstream_puts - 0x00000000c005646a 0x56 ../apps/import/libs/libc.a(lib_memoutstream.o) + 0x00000000c005663a 0x56 ../apps/import/libs/libc.a(lib_memoutstream.o) .text.memoutstream_putc - 0x00000000c00564c0 0x18 ../apps/import/libs/libc.a(lib_memoutstream.o) + 0x00000000c0056690 0x18 ../apps/import/libs/libc.a(lib_memoutstream.o) .text.lib_memoutstream - 0x00000000c00564d8 0x2e ../apps/import/libs/libc.a(lib_memoutstream.o) - 0x00000000c00564d8 lib_memoutstream + 0x00000000c00566a8 0x2e ../apps/import/libs/libc.a(lib_memoutstream.o) + 0x00000000c00566a8 lib_memoutstream .text.nulloutstream_puts - 0x00000000c0056506 0x24 ../apps/import/libs/libc.a(lib_nulloutstream.o) + 0x00000000c00566d6 0x24 ../apps/import/libs/libc.a(lib_nulloutstream.o) .text.nulloutstream_putc - 0x00000000c005652a 0x20 ../apps/import/libs/libc.a(lib_nulloutstream.o) + 0x00000000c00566fa 0x20 ../apps/import/libs/libc.a(lib_nulloutstream.o) .text.lib_nulloutstream - 0x00000000c005654a 0x24 ../apps/import/libs/libc.a(lib_nulloutstream.o) - 0x00000000c005654a lib_nulloutstream + 0x00000000c005671a 0x24 ../apps/import/libs/libc.a(lib_nulloutstream.o) + 0x00000000c005671a lib_nulloutstream .text.lib_noflush - 0x00000000c005656e 0x4 ../apps/import/libs/libc.a(lib_libnoflush.o) - 0x00000000c005656e lib_noflush + 0x00000000c005673e 0x4 ../apps/import/libs/libc.a(lib_libnoflush.o) + 0x00000000c005673e lib_noflush .text.stdoutstream_puts - 0x00000000c0056572 0x62 ../apps/import/libs/libc.a(lib_stdoutstream.o) + 0x00000000c0056742 0x62 ../apps/import/libs/libc.a(lib_stdoutstream.o) .text.stdoutstream_putc - 0x00000000c00565d4 0x58 ../apps/import/libs/libc.a(lib_stdoutstream.o) + 0x00000000c00567a4 0x58 ../apps/import/libs/libc.a(lib_stdoutstream.o) .text.lib_stdoutstream - 0x00000000c005662c 0x26 ../apps/import/libs/libc.a(lib_stdoutstream.o) - 0x00000000c005662c lib_stdoutstream - .text.flsl 0x00000000c0056652 0x1c ../apps/import/libs/libc.a(lib_flsl.o) - 0x00000000c0056652 flsl + 0x00000000c00567fc 0x26 ../apps/import/libs/libc.a(lib_stdoutstream.o) + 0x00000000c00567fc lib_stdoutstream + .text.flsl 0x00000000c0056822 0x1c ../apps/import/libs/libc.a(lib_flsl.o) + 0x00000000c0056822 flsl .text.lib_isbasedigit - 0x00000000c005666e 0x66 ../apps/import/libs/libc.a(lib_isbasedigit.o) - 0x00000000c005666e lib_isbasedigit + 0x00000000c005683e 0x66 ../apps/import/libs/libc.a(lib_isbasedigit.o) + 0x00000000c005683e lib_isbasedigit .text.lib_skipspace - 0x00000000c00566d4 0x26 ../apps/import/libs/libc.a(lib_skipspace.o) - 0x00000000c00566d4 lib_skipspace - .text.strcat 0x00000000c00566fa 0x34 ../apps/import/libs/libc.a(lib_strcat.o) - 0x00000000c00566fa strcat - .text.strdup 0x00000000c005672e 0x2e ../apps/import/libs/libc.a(lib_strdup.o) - 0x00000000c005672e strdup + 0x00000000c00568a4 0x26 ../apps/import/libs/libc.a(lib_skipspace.o) + 0x00000000c00568a4 lib_skipspace + .text.strcat 0x00000000c00568ca 0x34 ../apps/import/libs/libc.a(lib_strcat.o) + 0x00000000c00568ca strcat + .text.strdup 0x00000000c00568fe 0x2e ../apps/import/libs/libc.a(lib_strdup.o) + 0x00000000c00568fe strdup .text.strerror - 0x00000000c005675c 0x44 ../apps/import/libs/libc.a(lib_strerror.o) - 0x00000000c005675c strerror - .text.strrchr 0x00000000c00567a0 0x14 ../apps/import/libs/libc.a(lib_strrchr.o) - 0x00000000c00567a0 strrchr - .text.strspn 0x00000000c00567b4 0x34 ../apps/import/libs/libc.a(lib_strspn.o) - 0x00000000c00567b4 strspn - .text.memchr 0x00000000c00567e8 0x1a ../apps/import/libs/libc.a(lib_memchr.o) - 0x00000000c00567e8 memchr - .text.memcmp 0x00000000c0056802 0x2c ../apps/import/libs/libc.a(lib_memcmp.o) - 0x00000000c0056802 memcmp - .text.memmove 0x00000000c005682e 0x42 ../apps/import/libs/libc.a(lib_memmove.o) - 0x00000000c005682e memmove - .text.memset 0x00000000c0056870 0xcc ../apps/import/libs/libc.a(lib_memset.o) - 0x00000000c0056870 memset - .text.strchr 0x00000000c005693c 0x12 ../apps/import/libs/libc.a(lib_strchr.o) - 0x00000000c005693c strchr - .text.strcmp 0x00000000c005694e 0x18 ../apps/import/libs/libc.a(lib_strcmp.o) - 0x00000000c005694e strcmp - .text.strcpy 0x00000000c0056966 0x12 ../apps/import/libs/libc.a(lib_strcpy.o) - 0x00000000c0056966 strcpy - .text.strlcpy 0x00000000c0056978 0x38 ../apps/import/libs/libc.a(lib_strlcpy.o) - 0x00000000c0056978 strlcpy - .text.strlen 0x00000000c00569b0 0x12 ../apps/import/libs/libc.a(lib_strlen.o) - 0x00000000c00569b0 strlen - .text.strnlen 0x00000000c00569c2 0x18 ../apps/import/libs/libc.a(lib_strnlen.o) - 0x00000000c00569c2 strnlen - .text.memcpy 0x00000000c00569da 0x1c ../apps/import/libs/libc.a(lib_memcpy.o) - 0x00000000c00569da memcpy - .text.vsyslog 0x00000000c00569f6 0x24 ../apps/import/libs/libc.a(lib_syslog.o) - 0x00000000c00569f6 vsyslog - .text.syslog 0x00000000c0056a1a 0x1e ../apps/import/libs/libc.a(lib_syslog.o) - 0x00000000c0056a1a syslog + 0x00000000c005692c 0x44 ../apps/import/libs/libc.a(lib_strerror.o) + 0x00000000c005692c strerror + .text.strrchr 0x00000000c0056970 0x14 ../apps/import/libs/libc.a(lib_strrchr.o) + 0x00000000c0056970 strrchr + .text.strspn 0x00000000c0056984 0x34 ../apps/import/libs/libc.a(lib_strspn.o) + 0x00000000c0056984 strspn + .text.memchr 0x00000000c00569b8 0x1a ../apps/import/libs/libc.a(lib_memchr.o) + 0x00000000c00569b8 memchr + .text.memcmp 0x00000000c00569d2 0x2c ../apps/import/libs/libc.a(lib_memcmp.o) + 0x00000000c00569d2 memcmp + .text.memmove 0x00000000c00569fe 0x42 ../apps/import/libs/libc.a(lib_memmove.o) + 0x00000000c00569fe memmove + .text.memset 0x00000000c0056a40 0xcc ../apps/import/libs/libc.a(lib_memset.o) + 0x00000000c0056a40 memset + .text.strchr 0x00000000c0056b0c 0x12 ../apps/import/libs/libc.a(lib_strchr.o) + 0x00000000c0056b0c strchr + .text.strcmp 0x00000000c0056b1e 0x18 ../apps/import/libs/libc.a(lib_strcmp.o) + 0x00000000c0056b1e strcmp + .text.strcpy 0x00000000c0056b36 0x12 ../apps/import/libs/libc.a(lib_strcpy.o) + 0x00000000c0056b36 strcpy + .text.strlcpy 0x00000000c0056b48 0x38 ../apps/import/libs/libc.a(lib_strlcpy.o) + 0x00000000c0056b48 strlcpy + .text.strlen 0x00000000c0056b80 0x12 ../apps/import/libs/libc.a(lib_strlen.o) + 0x00000000c0056b80 strlen + .text.strnlen 0x00000000c0056b92 0x18 ../apps/import/libs/libc.a(lib_strnlen.o) + 0x00000000c0056b92 strnlen + .text.memcpy 0x00000000c0056baa 0x1c ../apps/import/libs/libc.a(lib_memcpy.o) + 0x00000000c0056baa memcpy + .text.vsyslog 0x00000000c0056bc6 0x24 ../apps/import/libs/libc.a(lib_syslog.o) + 0x00000000c0056bc6 vsyslog + .text.syslog 0x00000000c0056bea 0x1e ../apps/import/libs/libc.a(lib_syslog.o) + 0x00000000c0056bea syslog .text.setlogmask - 0x00000000c0056a38 0x14 ../apps/import/libs/libc.a(lib_setlogmask.o) - 0x00000000c0056a38 setlogmask - .text.isatty 0x00000000c0056a4c 0x18 ../apps/import/libs/libc.a(lib_isatty.o) - 0x00000000c0056a4c isatty + 0x00000000c0056c08 0x14 ../apps/import/libs/libc.a(lib_setlogmask.o) + 0x00000000c0056c08 setlogmask + .text.isatty 0x00000000c0056c1c 0x18 ../apps/import/libs/libc.a(lib_isatty.o) + 0x00000000c0056c1c isatty .text.tcgetattr - 0x00000000c0056a64 0xa ../apps/import/libs/libc.a(lib_tcgetattr.o) - 0x00000000c0056a64 tcgetattr + 0x00000000c0056c34 0xa ../apps/import/libs/libc.a(lib_tcgetattr.o) + 0x00000000c0056c34 tcgetattr .text.tcsetattr - 0x00000000c0056a6e 0x3a ../apps/import/libs/libc.a(lib_tcsetattr.o) - 0x00000000c0056a6e tcsetattr + 0x00000000c0056c3e 0x3a ../apps/import/libs/libc.a(lib_tcsetattr.o) + 0x00000000c0056c3e tcsetattr .text.gettimeofday - 0x00000000c0056aa8 0x38 ../apps/import/libs/libc.a(lib_gettimeofday.o) - 0x00000000c0056aa8 gettimeofday + 0x00000000c0056c78 0x38 ../apps/import/libs/libc.a(lib_gettimeofday.o) + 0x00000000c0056c78 gettimeofday .text.nanosleep - 0x00000000c0056ae0 0x28 ../apps/import/libs/libc.a(lib_nanosleep.o) - 0x00000000c0056ae0 nanosleep + 0x00000000c0056cb0 0x28 ../apps/import/libs/libc.a(lib_nanosleep.o) + 0x00000000c0056cb0 nanosleep .text.gmtime_r - 0x00000000c0056b08 0x164 ../apps/import/libs/libc.a(lib_gmtimer.o) - 0x00000000c0056b08 gmtime_r + 0x00000000c0056cd8 0x164 ../apps/import/libs/libc.a(lib_gmtimer.o) + 0x00000000c0056cd8 gmtime_r .text.localtime_r - 0x00000000c0056c6c 0x4 ../apps/import/libs/libc.a(lib_gmtimer.o) - 0x00000000c0056c6c localtime_r + 0x00000000c0056e3c 0x4 ../apps/import/libs/libc.a(lib_gmtimer.o) + 0x00000000c0056e3c localtime_r .text.task_get_info - 0x00000000c0056c70 0xa ../apps/import/libs/libc.a(task_getinfo.o) - 0x00000000c0056c70 task_get_info - .text.sysconf 0x00000000c0056c7a 0xc0 ../apps/import/libs/libc.a(lib_sysconf.o) - 0x00000000c0056c7a sysconf + 0x00000000c0056e40 0xa ../apps/import/libs/libc.a(task_getinfo.o) + 0x00000000c0056e40 task_get_info + .text.sysconf 0x00000000c0056e4a 0xc0 ../apps/import/libs/libc.a(lib_sysconf.o) + 0x00000000c0056e4a sysconf .text.getoptindp - 0x00000000c0056d3a 0x10 ../apps/import/libs/libc.a(lib_getoptindp.o) - 0x00000000c0056d3a getoptindp - .text.utimes 0x00000000c0056d4a 0x32 ../apps/import/libs/libc.a(lib_utimes.o) - 0x00000000c0056d4a utimes + 0x00000000c0056f0a 0x10 ../apps/import/libs/libc.a(lib_getoptindp.o) + 0x00000000c0056f0a getoptindp + .text.utimes 0x00000000c0056f1a 0x32 ../apps/import/libs/libc.a(lib_utimes.o) + 0x00000000c0056f1a utimes .text.futimesat - 0x00000000c0056d7c 0x3a ../apps/import/libs/libc.a(lib_utimes.o) - 0x00000000c0056d7c futimesat - .text.setuid 0x00000000c0056db6 0x1a ../apps/import/libs/libc.a(lib_setuid.o) - 0x00000000c0056db6 setuid - .text.setgid 0x00000000c0056dd0 0x1a ../apps/import/libs/libc.a(lib_setgid.o) - 0x00000000c0056dd0 setgid - .text.chdir 0x00000000c0056dea 0x8e ../apps/import/libs/libc.a(lib_chdir.o) - 0x00000000c0056dea chdir - .text.getcwd 0x00000000c0056e78 0x80 ../apps/import/libs/libc.a(lib_getcwd.o) - 0x00000000c0056e78 getcwd - .text.fork 0x00000000c0056ef8 0x2 ../apps/import/libs/libc.a(lib_fork.o) - 0x00000000c0056ef8 fork - .text.isspace 0x00000000c0056efa 0x14 ../apps/import/libs/libc.a(lib_isspace.o) - 0x00000000c0056efa isspace + 0x00000000c0056f4c 0x3a ../apps/import/libs/libc.a(lib_utimes.o) + 0x00000000c0056f4c futimesat + .text.setuid 0x00000000c0056f86 0x1a ../apps/import/libs/libc.a(lib_setuid.o) + 0x00000000c0056f86 setuid + .text.setgid 0x00000000c0056fa0 0x1a ../apps/import/libs/libc.a(lib_setgid.o) + 0x00000000c0056fa0 setgid + .text.chdir 0x00000000c0056fba 0x8e ../apps/import/libs/libc.a(lib_chdir.o) + 0x00000000c0056fba chdir + .text.getcwd 0x00000000c0057048 0x80 ../apps/import/libs/libc.a(lib_getcwd.o) + 0x00000000c0057048 getcwd + .text.fork 0x00000000c00570c8 0x2 ../apps/import/libs/libc.a(lib_fork.o) + 0x00000000c00570c8 fork + .text.isspace 0x00000000c00570ca 0x14 ../apps/import/libs/libc.a(lib_isspace.o) + 0x00000000c00570ca isspace .text.isspace_l - 0x00000000c0056f0e 0x4 ../apps/import/libs/libc.a(lib_isspace.o) - 0x00000000c0056f0e isspace_l + 0x00000000c00570de 0x4 ../apps/import/libs/libc.a(lib_isspace.o) + 0x00000000c00570de isspace_l .text.isxdigit - 0x00000000c0056f12 0x1c ../apps/import/libs/libc.a(lib_isxdigit.o) - 0x00000000c0056f12 isxdigit + 0x00000000c00570e2 0x1c ../apps/import/libs/libc.a(lib_isxdigit.o) + 0x00000000c00570e2 isxdigit .text.isxdigit_l - 0x00000000c0056f2e 0x4 ../apps/import/libs/libc.a(lib_isxdigit.o) - 0x00000000c0056f2e isxdigit_l + 0x00000000c00570fe 0x4 ../apps/import/libs/libc.a(lib_isxdigit.o) + 0x00000000c00570fe isxdigit_l .text.lib_getfullpath - 0x00000000c0056f32 0x8c ../apps/import/libs/libc.a(lib_getfullpath.o) - 0x00000000c0056f32 lib_getfullpath + 0x00000000c0057102 0x8c ../apps/import/libs/libc.a(lib_getfullpath.o) + 0x00000000c0057102 lib_getfullpath .text.nxsig_addset - 0x00000000c0056fbe 0x24 ../apps/import/libs/libc.a(sig_addset.o) - 0x00000000c0056fbe nxsig_addset + 0x00000000c005718e 0x24 ../apps/import/libs/libc.a(sig_addset.o) + 0x00000000c005718e nxsig_addset .text.sigaddset - 0x00000000c0056fe2 0x1c ../apps/import/libs/libc.a(sig_addset.o) - 0x00000000c0056fe2 sigaddset + 0x00000000c00571b2 0x1c ../apps/import/libs/libc.a(sig_addset.o) + 0x00000000c00571b2 sigaddset .text.sigemptyset - 0x00000000c0056ffe 0xc ../apps/import/libs/libc.a(sig_emptyset.o) - 0x00000000c0056ffe sigemptyset - .text.mktemp 0x00000000c005700a 0x17e ../apps/import/libs/libc.a(lib_mktemp.o) - 0x00000000c005700a mktemp - .text.strlcat 0x00000000c0057188 0x5a ../apps/import/libs/libc.a(lib_strlcat.o) - 0x00000000c0057188 strlcat - .text.tcflush 0x00000000c00571e2 0x8 ../apps/import/libs/libc.a(lib_tcflush.o) - 0x00000000c00571e2 tcflush - .text.tcdrain 0x00000000c00571ea 0x8 ../apps/import/libs/libc.a(lib_tcdrain.o) - 0x00000000c00571ea tcdrain + 0x00000000c00571ce 0xc ../apps/import/libs/libc.a(sig_emptyset.o) + 0x00000000c00571ce sigemptyset + .text.mktemp 0x00000000c00571da 0x17e ../apps/import/libs/libc.a(lib_mktemp.o) + 0x00000000c00571da mktemp + .text.strlcat 0x00000000c0057358 0x5a ../apps/import/libs/libc.a(lib_strlcat.o) + 0x00000000c0057358 strlcat + .text.tcflush 0x00000000c00573b2 0x8 ../apps/import/libs/libc.a(lib_tcflush.o) + 0x00000000c00573b2 tcflush + .text.tcdrain 0x00000000c00573ba 0x8 ../apps/import/libs/libc.a(lib_tcdrain.o) + 0x00000000c00573ba tcdrain .text.clock_daysbeforemonth - 0x00000000c00571f2 0x20 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - 0x00000000c00571f2 clock_daysbeforemonth + 0x00000000c00573c2 0x20 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + 0x00000000c00573c2 clock_daysbeforemonth .text.clock_isleapyear - 0x00000000c0057212 0x22 ../apps/import/libs/libc.a(lib_isleapyear.o) - 0x00000000c0057212 clock_isleapyear + 0x00000000c00573e2 0x22 ../apps/import/libs/libc.a(lib_isleapyear.o) + 0x00000000c00573e2 clock_isleapyear .text.clock_dayoftheweek - 0x00000000c0057234 0x42 ../apps/import/libs/libc.a(lib_dayofweek.o) - 0x00000000c0057234 clock_dayoftheweek + 0x00000000c0057404 0x42 ../apps/import/libs/libc.a(lib_dayofweek.o) + 0x00000000c0057404 clock_dayoftheweek .text.getoptvars - 0x00000000c0057276 0xa ../apps/import/libs/libc.a(lib_getoptvars.o) - 0x00000000c0057276 getoptvars - .text._assert 0x00000000c0057280 0x18 ../apps/import/libs/libproxies.a(PROXY__assert.o) - 0x00000000c0057280 _assert - .text._exit 0x00000000c0057298 0xc ../apps/import/libs/libproxies.a(PROXY__exit.o) - 0x00000000c0057298 _exit - .text.clock 0x00000000c00572a4 0xe ../apps/import/libs/libproxies.a(PROXY_clock.o) - 0x00000000c00572a4 clock + 0x00000000c0057446 0xa ../apps/import/libs/libc.a(lib_getoptvars.o) + 0x00000000c0057446 getoptvars + .text._assert 0x00000000c0057450 0x18 ../apps/import/libs/libproxies.a(PROXY__assert.o) + 0x00000000c0057450 _assert + .text._exit 0x00000000c0057468 0xc ../apps/import/libs/libproxies.a(PROXY__exit.o) + 0x00000000c0057468 _exit + .text.clock 0x00000000c0057474 0xe ../apps/import/libs/libproxies.a(PROXY_clock.o) + 0x00000000c0057474 clock .text.clock_gettime - 0x00000000c00572b2 0x14 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) - 0x00000000c00572b2 clock_gettime + 0x00000000c0057482 0x14 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) + 0x00000000c0057482 clock_gettime .text.clock_nanosleep - 0x00000000c00572c6 0x1c ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) - 0x00000000c00572c6 clock_nanosleep - .text.close 0x00000000c00572e2 0x10 ../apps/import/libs/libproxies.a(PROXY_close.o) - 0x00000000c00572e2 close - .text.dup 0x00000000c00572f2 0x10 ../apps/import/libs/libproxies.a(PROXY_dup.o) - 0x00000000c00572f2 dup - .text.dup2 0x00000000c0057302 0x14 ../apps/import/libs/libproxies.a(PROXY_dup2.o) - 0x00000000c0057302 dup2 - .text.execve 0x00000000c0057316 0x18 ../apps/import/libs/libproxies.a(PROXY_execve.o) - 0x00000000c0057316 execve - .text.fcntl 0x00000000c005732e 0x30 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) - 0x00000000c005732e fcntl + 0x00000000c0057496 0x1c ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) + 0x00000000c0057496 clock_nanosleep + .text.close 0x00000000c00574b2 0x10 ../apps/import/libs/libproxies.a(PROXY_close.o) + 0x00000000c00574b2 close + .text.dup 0x00000000c00574c2 0x10 ../apps/import/libs/libproxies.a(PROXY_dup.o) + 0x00000000c00574c2 dup + .text.dup2 0x00000000c00574d2 0x14 ../apps/import/libs/libproxies.a(PROXY_dup2.o) + 0x00000000c00574d2 dup2 + .text.execve 0x00000000c00574e6 0x18 ../apps/import/libs/libproxies.a(PROXY_execve.o) + 0x00000000c00574e6 execve + .text.fcntl 0x00000000c00574fe 0x30 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) + 0x00000000c00574fe fcntl .text.get_environ_ptr - 0x00000000c005735e 0xc ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) - 0x00000000c005735e get_environ_ptr - .text.getenv 0x00000000c005736a 0xe ../apps/import/libs/libproxies.a(PROXY_getenv.o) - 0x00000000c005736a getenv - .text.getpid 0x00000000c0057378 0xc ../apps/import/libs/libproxies.a(PROXY_getpid.o) - 0x00000000c0057378 getpid - .text.gettid 0x00000000c0057384 0xc ../apps/import/libs/libproxies.a(PROXY_gettid.o) - 0x00000000c0057384 gettid - .text.ioctl 0x00000000c0057390 0x2c ../apps/import/libs/libproxies.a(PROXY_ioctl.o) - 0x00000000c0057390 ioctl - .text.kill 0x00000000c00573bc 0x14 ../apps/import/libs/libproxies.a(PROXY_kill.o) - 0x00000000c00573bc kill - .text.lseek 0x00000000c00573d0 0x18 ../apps/import/libs/libproxies.a(PROXY_lseek.o) - 0x00000000c00573d0 lseek - .text.lstat 0x00000000c00573e8 0x14 ../apps/import/libs/libproxies.a(PROXY_lstat.o) - 0x00000000c00573e8 lstat - .text.mkdir 0x00000000c00573fc 0x18 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) - 0x00000000c00573fc mkdir + 0x00000000c005752e 0xc ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) + 0x00000000c005752e get_environ_ptr + .text.getenv 0x00000000c005753a 0xe ../apps/import/libs/libproxies.a(PROXY_getenv.o) + 0x00000000c005753a getenv + .text.getpid 0x00000000c0057548 0xc ../apps/import/libs/libproxies.a(PROXY_getpid.o) + 0x00000000c0057548 getpid + .text.gettid 0x00000000c0057554 0xc ../apps/import/libs/libproxies.a(PROXY_gettid.o) + 0x00000000c0057554 gettid + .text.ioctl 0x00000000c0057560 0x2c ../apps/import/libs/libproxies.a(PROXY_ioctl.o) + 0x00000000c0057560 ioctl + .text.kill 0x00000000c005758c 0x14 ../apps/import/libs/libproxies.a(PROXY_kill.o) + 0x00000000c005758c kill + .text.lseek 0x00000000c00575a0 0x18 ../apps/import/libs/libproxies.a(PROXY_lseek.o) + 0x00000000c00575a0 lseek + .text.lstat 0x00000000c00575b8 0x14 ../apps/import/libs/libproxies.a(PROXY_lstat.o) + 0x00000000c00575b8 lstat + .text.mkdir 0x00000000c00575cc 0x18 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) + 0x00000000c00575cc mkdir .text.nx_pthread_create - 0x00000000c0057414 0x20 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) - 0x00000000c0057414 nx_pthread_create + 0x00000000c00575e4 0x20 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) + 0x00000000c00575e4 nx_pthread_create .text.nx_pthread_exit - 0x00000000c0057434 0xe ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) - 0x00000000c0057434 nx_pthread_exit + 0x00000000c0057604 0xe ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) + 0x00000000c0057604 nx_pthread_exit .text.nx_vsyslog - 0x00000000c0057442 0x18 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) - 0x00000000c0057442 nx_vsyslog + 0x00000000c0057612 0x18 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) + 0x00000000c0057612 nx_vsyslog .text.nxsem_clockwait - 0x00000000c005745a 0x16 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) - 0x00000000c005745a nxsem_clockwait + 0x00000000c005762a 0x16 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) + 0x00000000c005762a nxsem_clockwait .text.nxsem_destroy - 0x00000000c0057470 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) - 0x00000000c0057470 nxsem_destroy + 0x00000000c0057640 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) + 0x00000000c0057640 nxsem_destroy .text.nxsem_post - 0x00000000c005747e 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) - 0x00000000c005747e nxsem_post + 0x00000000c005764e 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) + 0x00000000c005764e nxsem_post .text.nxsem_trywait - 0x00000000c005748c 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) - 0x00000000c005748c nxsem_trywait + 0x00000000c005765c 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) + 0x00000000c005765c nxsem_trywait .text.nxsem_wait - 0x00000000c005749a 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) - 0x00000000c005749a nxsem_wait - .text.open 0x00000000c00574a8 0x32 ../apps/import/libs/libproxies.a(PROXY_open.o) - 0x00000000c00574a8 open - .text.pgalloc 0x00000000c00574da 0x16 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) - 0x00000000c00574da pgalloc + 0x00000000c005766a 0xe ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) + 0x00000000c005766a nxsem_wait + .text.open 0x00000000c0057678 0x32 ../apps/import/libs/libproxies.a(PROXY_open.o) + 0x00000000c0057678 open + .text.pgalloc 0x00000000c00576aa 0x16 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) + 0x00000000c00576aa pgalloc .text.pthread_mutex_destroy - 0x00000000c00574f0 0x10 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) - 0x00000000c00574f0 pthread_mutex_destroy + 0x00000000c00576c0 0x10 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) + 0x00000000c00576c0 pthread_mutex_destroy .text.pthread_mutex_init - 0x00000000c0057500 0x14 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) - 0x00000000c0057500 pthread_mutex_init + 0x00000000c00576d0 0x14 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) + 0x00000000c00576d0 pthread_mutex_init .text.pthread_mutex_timedlock - 0x00000000c0057514 0x14 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) - 0x00000000c0057514 pthread_mutex_timedlock + 0x00000000c00576e4 0x14 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) + 0x00000000c00576e4 pthread_mutex_timedlock .text.pthread_mutex_unlock - 0x00000000c0057528 0x10 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) - 0x00000000c0057528 pthread_mutex_unlock - .text.read 0x00000000c0057538 0x16 ../apps/import/libs/libproxies.a(PROXY_read.o) - 0x00000000c0057538 read - .text.rename 0x00000000c005754e 0x14 ../apps/import/libs/libproxies.a(PROXY_rename.o) - 0x00000000c005754e rename - .text.rmdir 0x00000000c0057562 0x10 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) - 0x00000000c0057562 rmdir + 0x00000000c00576f8 0x10 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) + 0x00000000c00576f8 pthread_mutex_unlock + .text.read 0x00000000c0057708 0x16 ../apps/import/libs/libproxies.a(PROXY_read.o) + 0x00000000c0057708 read + .text.rename 0x00000000c005771e 0x14 ../apps/import/libs/libproxies.a(PROXY_rename.o) + 0x00000000c005771e rename + .text.rmdir 0x00000000c0057732 0x10 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) + 0x00000000c0057732 rmdir .text.sched_lock - 0x00000000c0057572 0xc ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) - 0x00000000c0057572 sched_lock + 0x00000000c0057742 0xc ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) + 0x00000000c0057742 sched_lock .text.sched_unlock - 0x00000000c005757e 0xc ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) - 0x00000000c005757e sched_unlock - .text.select 0x00000000c005758a 0x20 ../apps/import/libs/libproxies.a(PROXY_select.o) - 0x00000000c005758a select - .text.setenv 0x00000000c00575aa 0x18 ../apps/import/libs/libproxies.a(PROXY_setenv.o) - 0x00000000c00575aa setenv + 0x00000000c005774e 0xc ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) + 0x00000000c005774e sched_unlock + .text.select 0x00000000c005775a 0x20 ../apps/import/libs/libproxies.a(PROXY_select.o) + 0x00000000c005775a select + .text.setenv 0x00000000c005777a 0x18 ../apps/import/libs/libproxies.a(PROXY_setenv.o) + 0x00000000c005777a setenv .text.sigaction - 0x00000000c00575c2 0x18 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) - 0x00000000c00575c2 sigaction - .text.stat 0x00000000c00575da 0x14 ../apps/import/libs/libproxies.a(PROXY_stat.o) - 0x00000000c00575da stat - .text.unlink 0x00000000c00575ee 0x10 ../apps/import/libs/libproxies.a(PROXY_unlink.o) - 0x00000000c00575ee unlink + 0x00000000c0057792 0x18 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) + 0x00000000c0057792 sigaction + .text.stat 0x00000000c00577aa 0x14 ../apps/import/libs/libproxies.a(PROXY_stat.o) + 0x00000000c00577aa stat + .text.unlink 0x00000000c00577be 0x10 ../apps/import/libs/libproxies.a(PROXY_unlink.o) + 0x00000000c00577be unlink .text.unsetenv - 0x00000000c00575fe 0x10 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) - 0x00000000c00575fe unsetenv - .text.up_fork 0x00000000c005760e 0xe ../apps/import/libs/libproxies.a(PROXY_up_fork.o) - 0x00000000c005760e up_fork - .text.utimens 0x00000000c005761c 0x14 ../apps/import/libs/libproxies.a(PROXY_utimens.o) - 0x00000000c005761c utimens - .text.waitpid 0x00000000c0057630 0x18 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) - 0x00000000c0057630 waitpid - .text.write 0x00000000c0057648 0x16 ../apps/import/libs/libproxies.a(PROXY_write.o) - 0x00000000c0057648 write - .text.acos 0x00000000c005765e 0x1a ../apps/import/libs/libm.a(lib_acos.o) - 0x00000000c005765e acos + 0x00000000c00577ce 0x10 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) + 0x00000000c00577ce unsetenv + .text.up_fork 0x00000000c00577de 0xe ../apps/import/libs/libproxies.a(PROXY_up_fork.o) + 0x00000000c00577de up_fork + .text.utimens 0x00000000c00577ec 0x14 ../apps/import/libs/libproxies.a(PROXY_utimens.o) + 0x00000000c00577ec utimens + .text.waitpid 0x00000000c0057800 0x18 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) + 0x00000000c0057800 waitpid + .text.write 0x00000000c0057818 0x16 ../apps/import/libs/libproxies.a(PROXY_write.o) + 0x00000000c0057818 write + .text.acos 0x00000000c005782e 0x1a ../apps/import/libs/libm.a(lib_acos.o) + 0x00000000c005782e acos .text.asin_aux - 0x00000000c0057678 0xb2 ../apps/import/libs/libm.a(lib_asin.o) - .text.asin 0x00000000c005772a 0x98 ../apps/import/libs/libm.a(lib_asin.o) - 0x00000000c005772a asin - .text.atan 0x00000000c00577c2 0x28 ../apps/import/libs/libm.a(lib_atan.o) - 0x00000000c00577c2 atan - .text.atan2 0x00000000c00577ea 0x8a ../apps/import/libs/libm.a(lib_atan2.o) - 0x00000000c00577ea atan2 - .text.cos 0x00000000c0057874 0xe ../apps/import/libs/libm.a(lib_cos.o) - 0x00000000c0057874 cos - .text.cosh 0x00000000c0057882 0x2a ../apps/import/libs/libm.a(lib_cosh.o) - 0x00000000c0057882 cosh - .text.exp 0x00000000c00578ac 0x7e ../apps/import/libs/libm.a(lib_exp.o) - 0x00000000c00578ac exp - .text.fabs 0x00000000c005792a 0x10 ../apps/import/libs/libm.a(lib_fabs.o) - 0x00000000c005792a fabs - .text.fmod 0x00000000c005793a 0x2a ../apps/import/libs/libm.a(lib_fmod.o) - 0x00000000c005793a fmod - .text.log 0x00000000c0057964 0xfe ../apps/import/libs/libm.a(lib_log.o) - 0x00000000c0057964 log - .text.log10 0x00000000c0057a62 0x1a ../apps/import/libs/libm.a(lib_log10.o) - 0x00000000c0057a62 log10 - .text.log2 0x00000000c0057a7c 0x1a ../apps/import/libs/libm.a(lib_log2.o) - 0x00000000c0057a7c log2 - .text.modf 0x00000000c0057a96 0x3e ../apps/import/libs/libm.a(lib_modf.o) - 0x00000000c0057a96 modf - .text.pow 0x00000000c0057ad4 0x60 ../apps/import/libs/libm.a(lib_pow.o) - 0x00000000c0057ad4 pow - .text.sin 0x00000000c0057b34 0xa2 ../apps/import/libs/libm.a(lib_sin.o) - 0x00000000c0057b34 sin - .text.sinh 0x00000000c0057bd6 0x5a ../apps/import/libs/libm.a(lib_sinh.o) - 0x00000000c0057bd6 sinh - .text.sqrt 0x00000000c0057c30 0x1b0 ../apps/import/libs/libm.a(lib_sqrt.o) - 0x00000000c0057c30 sqrt - .text.tan 0x00000000c0057de0 0x2a ../apps/import/libs/libm.a(lib_tan.o) - 0x00000000c0057de0 tan - .text.tanh 0x00000000c0057e0a 0x26 ../apps/import/libs/libm.a(lib_tanh.o) - 0x00000000c0057e0a tanh - .text.asinh 0x00000000c0057e30 0x56 ../apps/import/libs/libm.a(lib_asinh.o) - 0x00000000c0057e30 asinh - .text.acosh 0x00000000c0057e86 0x28 ../apps/import/libs/libm.a(lib_acosh.o) - 0x00000000c0057e86 acosh - .text.atanh 0x00000000c0057eae 0x5a ../apps/import/libs/libm.a(lib_atanh.o) - 0x00000000c0057eae atanh - .text.cbrt 0x00000000c0057f08 0x44 ../apps/import/libs/libm.a(lib_cbrt.o) - 0x00000000c0057f08 cbrt + 0x00000000c0057848 0xb2 ../apps/import/libs/libm.a(lib_asin.o) + .text.asin 0x00000000c00578fa 0x98 ../apps/import/libs/libm.a(lib_asin.o) + 0x00000000c00578fa asin + .text.atan 0x00000000c0057992 0x28 ../apps/import/libs/libm.a(lib_atan.o) + 0x00000000c0057992 atan + .text.atan2 0x00000000c00579ba 0x8a ../apps/import/libs/libm.a(lib_atan2.o) + 0x00000000c00579ba atan2 + .text.cos 0x00000000c0057a44 0xe ../apps/import/libs/libm.a(lib_cos.o) + 0x00000000c0057a44 cos + .text.cosh 0x00000000c0057a52 0x2a ../apps/import/libs/libm.a(lib_cosh.o) + 0x00000000c0057a52 cosh + .text.exp 0x00000000c0057a7c 0x7e ../apps/import/libs/libm.a(lib_exp.o) + 0x00000000c0057a7c exp + .text.fabs 0x00000000c0057afa 0x10 ../apps/import/libs/libm.a(lib_fabs.o) + 0x00000000c0057afa fabs + .text.fmod 0x00000000c0057b0a 0x2a ../apps/import/libs/libm.a(lib_fmod.o) + 0x00000000c0057b0a fmod + .text.log 0x00000000c0057b34 0xfe ../apps/import/libs/libm.a(lib_log.o) + 0x00000000c0057b34 log + .text.log10 0x00000000c0057c32 0x1a ../apps/import/libs/libm.a(lib_log10.o) + 0x00000000c0057c32 log10 + .text.log2 0x00000000c0057c4c 0x1a ../apps/import/libs/libm.a(lib_log2.o) + 0x00000000c0057c4c log2 + .text.modf 0x00000000c0057c66 0x3e ../apps/import/libs/libm.a(lib_modf.o) + 0x00000000c0057c66 modf + .text.pow 0x00000000c0057ca4 0x60 ../apps/import/libs/libm.a(lib_pow.o) + 0x00000000c0057ca4 pow + .text.sin 0x00000000c0057d04 0xa2 ../apps/import/libs/libm.a(lib_sin.o) + 0x00000000c0057d04 sin + .text.sinh 0x00000000c0057da6 0x5a ../apps/import/libs/libm.a(lib_sinh.o) + 0x00000000c0057da6 sinh + .text.sqrt 0x00000000c0057e00 0x1b0 ../apps/import/libs/libm.a(lib_sqrt.o) + 0x00000000c0057e00 sqrt + .text.tan 0x00000000c0057fb0 0x2a ../apps/import/libs/libm.a(lib_tan.o) + 0x00000000c0057fb0 tan + .text.tanh 0x00000000c0057fda 0x26 ../apps/import/libs/libm.a(lib_tanh.o) + 0x00000000c0057fda tanh + .text.asinh 0x00000000c0058000 0x56 ../apps/import/libs/libm.a(lib_asinh.o) + 0x00000000c0058000 asinh + .text.acosh 0x00000000c0058056 0x28 ../apps/import/libs/libm.a(lib_acosh.o) + 0x00000000c0058056 acosh + .text.atanh 0x00000000c005807e 0x5a ../apps/import/libs/libm.a(lib_atanh.o) + 0x00000000c005807e atanh + .text.cbrt 0x00000000c00580d8 0x44 ../apps/import/libs/libm.a(lib_cbrt.o) + 0x00000000c00580d8 cbrt .text.lib_expi - 0x00000000c0057f4c 0x4e ../apps/import/libs/libm.a(lib_libexpi.o) - 0x00000000c0057f4c lib_expi + 0x00000000c005811c 0x4e ../apps/import/libs/libm.a(lib_libexpi.o) + 0x00000000c005811c lib_expi .text.lib_sqrtapprox - 0x00000000c0057f9a 0x14 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) - 0x00000000c0057f9a lib_sqrtapprox - .text.expm1 0x00000000c0057fae 0x1a ../apps/import/libs/libm.a(lib_expm1.o) - 0x00000000c0057fae expm1 - .text.fmax 0x00000000c0057fc8 0xc ../apps/import/libs/libm.a(lib_fmax.o) - 0x00000000c0057fc8 fmax - .text.fmin 0x00000000c0057fd4 0xc ../apps/import/libs/libm.a(lib_fmin.o) - 0x00000000c0057fd4 fmin - .text.ceil 0x00000000c0057fe0 0x44 ../apps/import/libs/libm.a(lib_ceil.o) - 0x00000000c0057fe0 ceil - .text.floor 0x00000000c0058024 0x3a ../apps/import/libs/libm.a(lib_floor.o) - 0x00000000c0058024 floor - .text.round 0x00000000c005805e 0x8e ../apps/import/libs/libm.a(lib_round.o) - 0x00000000c005805e round - .text.trunc 0x00000000c00580ec 0x5e ../apps/import/libs/libm.a(lib_trunc.o) - 0x00000000c00580ec trunc - .text.zalloc 0x00000000c005814a 0x22 ../apps/import/libs/libmm.a(umm_zalloc.o) - 0x00000000c005814a zalloc + 0x00000000c005816a 0x14 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) + 0x00000000c005816a lib_sqrtapprox + .text.expm1 0x00000000c005817e 0x1a ../apps/import/libs/libm.a(lib_expm1.o) + 0x00000000c005817e expm1 + .text.fmax 0x00000000c0058198 0xc ../apps/import/libs/libm.a(lib_fmax.o) + 0x00000000c0058198 fmax + .text.fmin 0x00000000c00581a4 0xc ../apps/import/libs/libm.a(lib_fmin.o) + 0x00000000c00581a4 fmin + .text.ceil 0x00000000c00581b0 0x44 ../apps/import/libs/libm.a(lib_ceil.o) + 0x00000000c00581b0 ceil + .text.floor 0x00000000c00581f4 0x3a ../apps/import/libs/libm.a(lib_floor.o) + 0x00000000c00581f4 floor + .text.round 0x00000000c005822e 0x8e ../apps/import/libs/libm.a(lib_round.o) + 0x00000000c005822e round + .text.trunc 0x00000000c00582bc 0x5e ../apps/import/libs/libm.a(lib_trunc.o) + 0x00000000c00582bc trunc + .text.zalloc 0x00000000c005831a 0x22 ../apps/import/libs/libmm.a(umm_zalloc.o) + 0x00000000c005831a zalloc *(.gnu.warning) *(.stub) *(.glue_7) @@ -4728,1578 +4728,1585 @@ Linker script and memory map *(.gnu.linkonce.t.*) *(.init) *(.fini) - 0x00000000c005816c _etext = . + 0x00000000c005833c _etext = . -.rodata 0x00000000c0058170 0x1c610 - 0x00000000c0058170 _srodata = . +.rodata 0x00000000c0058340 0x1c6a0 + 0x00000000c0058340 _srodata = . *(.rodata) - .rodata 0x00000000c0058170 0xb7 .obj/quickjs.o - *fill* 0x00000000c0058227 0x1 - .rodata 0x00000000c0058228 0x20 ../apps/import/libs/libc.a(lib_tmpfile.o) - .rodata 0x00000000c0058248 0x40 ../apps/import/libs/libc.a(lib_strtold.o) - .rodata 0x00000000c0058288 0x3c ../apps/import/libs/libgcc.a(divtf3.o) - .rodata 0x00000000c00582c4 0x3c ../apps/import/libs/libgcc.a(multf3.o) - .rodata 0x00000000c0058300 0x100 ../apps/import/libs/libgcc.a(_clz.o) - 0x00000000c0058300 __clz_tab + .rodata 0x00000000c0058340 0xb7 .obj/quickjs.o + *fill* 0x00000000c00583f7 0x1 + .rodata 0x00000000c00583f8 0x20 ../apps/import/libs/libc.a(lib_tmpfile.o) + .rodata 0x00000000c0058418 0x40 ../apps/import/libs/libc.a(lib_strtold.o) + .rodata 0x00000000c0058458 0x3c ../apps/import/libs/libgcc.a(divtf3.o) + .rodata 0x00000000c0058494 0x3c ../apps/import/libs/libgcc.a(multf3.o) + .rodata 0x00000000c00584d0 0x100 ../apps/import/libs/libgcc.a(_clz.o) + 0x00000000c00584d0 __clz_tab *(.rodata1) *(.rodata.*) .rodata.js_trace_malloc_printf.str1.8 - 0x00000000c0058400 0x1c .obj/qjs.o - *fill* 0x00000000c005841c 0x4 + 0x00000000c00585d0 0x1c .obj/qjs.o + *fill* 0x00000000c00585ec 0x4 .rodata.js_trace_malloc.str1.8 - 0x00000000c0058420 0x15 .obj/qjs.o - *fill* 0x00000000c0058435 0x3 + 0x00000000c00585f0 0x15 .obj/qjs.o + *fill* 0x00000000c0058605 0x3 .rodata.js_trace_realloc.str1.8 - 0x00000000c0058438 0x28 .obj/qjs.o + 0x00000000c0058608 0x28 .obj/qjs.o .rodata.JS_NewCustomContext.str1.8 - 0x00000000c0058460 0x3b .obj/qjs.o + 0x00000000c0058630 0x3b .obj/qjs.o 0x43 (size before relaxing) - *fill* 0x00000000c005849b 0x5 + *fill* 0x00000000c005866b 0x5 .rodata.eval_buf.str1.8 - 0x00000000c00584a0 0xf .obj/qjs.o - *fill* 0x00000000c00584af 0x1 + 0x00000000c0058670 0xf .obj/qjs.o + *fill* 0x00000000c005867f 0x1 .rodata.eval_file.str1.8 - 0x00000000c00584b0 0x5 .obj/qjs.o - *fill* 0x00000000c00584b5 0x3 + 0x00000000c0058680 0x5 .obj/qjs.o + *fill* 0x00000000c0058685 0x3 .rodata.js_trace_free.str1.8 - 0x00000000c00584b8 0x6 .obj/qjs.o - *fill* 0x00000000c00584be 0x2 + 0x00000000c0058688 0x6 .obj/qjs.o + *fill* 0x00000000c005868e 0x2 .rodata.help.str1.8 - 0x00000000c00584c0 0x2e3 .obj/qjs.o - *fill* 0x00000000c00587a3 0x5 + 0x00000000c0058690 0x2e3 .obj/qjs.o + *fill* 0x00000000c0058973 0x5 .rodata.main.str1.8 - 0x00000000c00587a8 0x2cf .obj/qjs.o + 0x00000000c0058978 0x2cf .obj/qjs.o 0x2e7 (size before relaxing) - *fill* 0x00000000c0058a77 0x1 + *fill* 0x00000000c0058c47 0x1 .rodata.trace_mf - 0x00000000c0058a78 0x20 .obj/qjs.o + 0x00000000c0058c48 0x20 .obj/qjs.o .rodata.qjsc_repl - 0x00000000c0058a98 0x3f98 .obj/repl.o - 0x00000000c0058a98 qjsc_repl + 0x00000000c0058c68 0x3f98 .obj/repl.o + 0x00000000c0058c68 qjsc_repl .rodata.JS_GetPrototypePrimitive - 0x00000000c005ca30 0x48 .obj/quickjs.o + 0x00000000c005cc00 0x48 .obj/quickjs.o .rodata.JS_AtomIsArrayIndex.str1.8 - 0x00000000c005ca78 0xa .obj/quickjs.o - *fill* 0x00000000c005ca82 0x2 + 0x00000000c005cc48 0xa .obj/quickjs.o + *fill* 0x00000000c005cc52 0x2 .rodata.code_match - 0x00000000c005ca84 0x60 .obj/quickjs.o + 0x00000000c005cc54 0x60 .obj/quickjs.o + *fill* 0x00000000c005ccb4 0x4 + .rodata.js_def_malloc.str1.8 + 0x00000000c005ccb8 0x5a .obj/quickjs.o + 0x62 (size before relaxing) + *fill* 0x00000000c005cd12 0x2 .rodata.put_short_code - 0x00000000c005cae4 0x24 .obj/quickjs.o + 0x00000000c005cd14 0x24 .obj/quickjs.o .rodata.js_fcvt1.constprop.0.str1.8 - 0x00000000c005cb08 0x5 .obj/quickjs.o - *fill* 0x00000000c005cb0d 0x3 + 0x00000000c005cd38 0x5 .obj/quickjs.o + *fill* 0x00000000c005cd3d 0x3 .rodata.js_ecvt1.constprop.0.str1.8 - 0x00000000c005cb10 0x6 .obj/quickjs.o - *fill* 0x00000000c005cb16 0x2 + 0x00000000c005cd40 0x6 .obj/quickjs.o + *fill* 0x00000000c005cd46 0x2 .rodata.JS_AtomGetStrRT.constprop.0.str1.8 - 0x00000000c005cb18 0xf .obj/quickjs.o - *fill* 0x00000000c005cb27 0x1 + 0x00000000c005cd48 0xf .obj/quickjs.o + *fill* 0x00000000c005cd57 0x1 .rodata.print_hex.str1.8 - 0x00000000c005cb28 0x11 .obj/quickjs.o - *fill* 0x00000000c005cb39 0x7 + 0x00000000c005cd58 0x11 .obj/quickjs.o + *fill* 0x00000000c005cd69 0x7 .rodata.__JS_FindAtom.constprop.0.str1.8 - 0x00000000c005cb40 0x10 .obj/quickjs.o - 0x12 (size before relaxing) + 0x00000000c005cd70 0x10 .obj/quickjs.o .rodata.js_strict_eq2 - 0x00000000c005cb50 0x48 .obj/quickjs.o + 0x00000000c005cd80 0x48 .obj/quickjs.o .rodata.__JS_FreeValueRT.str1.8 - 0x00000000c005cb98 0x20 .obj/quickjs.o + 0x00000000c005cdc8 0x20 .obj/quickjs.o .rodata.__JS_FreeValueRT - 0x00000000c005cbb8 0x28 .obj/quickjs.o + 0x00000000c005cde8 0x28 .obj/quickjs.o .rodata.js_compare_bigfloat - 0x00000000c005cbe0 0x1c .obj/quickjs.o + 0x00000000c005ce10 0x1c .obj/quickjs.o .rodata.mark_children - 0x00000000c005cbfc 0x18 .obj/quickjs.o + 0x00000000c005ce2c 0x18 .obj/quickjs.o .rodata.JS_ComputeMemoryUsage - 0x00000000c005cc14 0x80 .obj/quickjs.o - *fill* 0x00000000c005cc94 0x4 + 0x00000000c005ce44 0x80 .obj/quickjs.o + *fill* 0x00000000c005cec4 0x4 .rodata.JS_DumpMemoryUsage.str1.8 - 0x00000000c005cc98 0x34f .obj/quickjs.o - *fill* 0x00000000c005cfe7 0x1 + 0x00000000c005cec8 0x34f .obj/quickjs.o + *fill* 0x00000000c005d217 0x1 .rodata.js_operator_typeof - 0x00000000c005cfe8 0x20 .obj/quickjs.o + 0x00000000c005d218 0x20 .obj/quickjs.o .rodata.JS_CallInternal.str1.8 - 0x00000000c005d008 0x35a .obj/quickjs.o + 0x00000000c005d238 0x35a .obj/quickjs.o 0x362 (size before relaxing) - *fill* 0x00000000c005d362 0x2 + *fill* 0x00000000c005d592 0x2 .rodata.JS_CallInternal - 0x00000000c005d364 0x404 .obj/quickjs.o + 0x00000000c005d594 0x404 .obj/quickjs.o .rodata.JS_GetPropertyInternal.str1.8 - 0x00000000c005d768 0x4f .obj/quickjs.o - *fill* 0x00000000c005d7b7 0x1 + 0x00000000c005d998 0x4f .obj/quickjs.o + *fill* 0x00000000c005d9e7 0x1 .rodata.JS_GetPropertyValue - 0x00000000c005d7b8 0x78 .obj/quickjs.o + 0x00000000c005d9e8 0x78 .obj/quickjs.o .rodata.JS_SetPropertyInternal.str1.8 - 0x00000000c005d830 0x84 .obj/quickjs.o + 0x00000000c005da60 0x84 .obj/quickjs.o 0x94 (size before relaxing) .rodata.JS_SetPropertyValue - 0x00000000c005d8b4 0x78 .obj/quickjs.o - *fill* 0x00000000c005d92c 0x4 + 0x00000000c005dae4 0x78 .obj/quickjs.o + *fill* 0x00000000c005db5c 0x4 .rodata.JS_DefineProperty.str1.8 - 0x00000000c005d930 0xf9 .obj/quickjs.o - *fill* 0x00000000c005da29 0x7 + 0x00000000c005db60 0xf9 .obj/quickjs.o + *fill* 0x00000000c005dc59 0x7 .rodata.js_resolve_export_throw_error.str1.8 - 0x00000000c005da30 0x98 .obj/quickjs.o + 0x00000000c005dc60 0x98 .obj/quickjs.o .rodata.bc_read_error_end.str1.8 - 0x00000000c005dac8 0x21 .obj/quickjs.o - *fill* 0x00000000c005dae9 0x7 + 0x00000000c005dcf8 0x21 .obj/quickjs.o + *fill* 0x00000000c005dd19 0x7 .rodata.bc_idx_to_atom.str1.8 - 0x00000000c005daf0 0x1c .obj/quickjs.o - *fill* 0x00000000c005db0c 0x4 + 0x00000000c005dd20 0x1c .obj/quickjs.o + *fill* 0x00000000c005dd3c 0x4 .rodata.call_setter.str1.8 - 0x00000000c005db10 0x17 .obj/quickjs.o - *fill* 0x00000000c005db27 0x1 + 0x00000000c005dd40 0x17 .obj/quickjs.o + *fill* 0x00000000c005dd57 0x1 .rodata.JS_ThrowTypeErrorInvalidClass.str1.8 - 0x00000000c005db28 0x13 .obj/quickjs.o - *fill* 0x00000000c005db3b 0x5 + 0x00000000c005dd58 0x13 .obj/quickjs.o + *fill* 0x00000000c005dd6b 0x5 .rodata.JS_EvalInternal.str1.8 - 0x00000000c005db40 0x30 .obj/quickjs.o + 0x00000000c005dd70 0x30 .obj/quickjs.o .rodata.JS_EvalThis.str1.8 - 0x00000000c005db70 0x14 .obj/quickjs.o - *fill* 0x00000000c005db84 0x4 + 0x00000000c005dda0 0x14 .obj/quickjs.o + *fill* 0x00000000c005ddb4 0x4 .rodata.js_promise_executor.str1.8 - 0x00000000c005db88 0x1f .obj/quickjs.o - *fill* 0x00000000c005dba7 0x1 + 0x00000000c005ddb8 0x1f .obj/quickjs.o + *fill* 0x00000000c005ddd7 0x1 .rodata.JS_CheckBrand.str1.8 - 0x00000000c005dba8 0x20 .obj/quickjs.o + 0x00000000c005ddd8 0x20 .obj/quickjs.o .rodata.JS_SpeciesConstructor.str1.8 - 0x00000000c005dbc8 0x12 .obj/quickjs.o - *fill* 0x00000000c005dbda 0x6 + 0x00000000c005ddf8 0x12 .obj/quickjs.o + *fill* 0x00000000c005de0a 0x6 .rodata.JS_ThrowTypeErrorDetachedArrayBuffer.str1.8 - 0x00000000c005dbe0 0x18 .obj/quickjs.o + 0x00000000c005de10 0x18 .obj/quickjs.o .rodata.JS_ThrowUnsupportedOperation.str1.8 - 0x00000000c005dbf8 0x16 .obj/quickjs.o - *fill* 0x00000000c005dc0e 0x2 + 0x00000000c005de28 0x16 .obj/quickjs.o + *fill* 0x00000000c005de3e 0x2 .rodata.JS_SetThisTimeValue.str1.8 - 0x00000000c005dc10 0x12 .obj/quickjs.o - *fill* 0x00000000c005dc22 0x6 + 0x00000000c005de40 0x12 .obj/quickjs.o + *fill* 0x00000000c005de52 0x6 .rodata.js_thisBigIntValue.str1.8 - 0x00000000c005dc28 0xd .obj/quickjs.o - *fill* 0x00000000c005dc35 0x3 + 0x00000000c005de58 0xd .obj/quickjs.o + *fill* 0x00000000c005de65 0x3 .rodata.js_string_toString.str1.8 - 0x00000000c005dc38 0xd .obj/quickjs.o - *fill* 0x00000000c005dc45 0x3 + 0x00000000c005de68 0xd .obj/quickjs.o + *fill* 0x00000000c005de75 0x3 .rodata.js_thisBooleanValue.str1.8 - 0x00000000c005dc48 0xe .obj/quickjs.o - *fill* 0x00000000c005dc56 0x2 + 0x00000000c005de78 0xe .obj/quickjs.o + *fill* 0x00000000c005de86 0x2 .rodata.js_thisNumberValue.str1.8 - 0x00000000c005dc58 0xd .obj/quickjs.o - *fill* 0x00000000c005dc65 0x3 + 0x00000000c005de88 0xd .obj/quickjs.o + *fill* 0x00000000c005de95 0x3 .rodata.get_typed_array.str1.8 - 0x00000000c005dc68 0x29 .obj/quickjs.o - *fill* 0x00000000c005dc91 0x7 + 0x00000000c005de98 0x29 .obj/quickjs.o + *fill* 0x00000000c005dec1 0x7 .rodata.js_throw_type_error.str1.8 - 0x00000000c005dc98 0x18 .obj/quickjs.o + 0x00000000c005dec8 0x18 .obj/quickjs.o .rodata.js_typed_array_base_constructor.str1.8 - 0x00000000c005dcb0 0x11 .obj/quickjs.o - *fill* 0x00000000c005dcc1 0x7 + 0x00000000c005dee0 0x11 .obj/quickjs.o + *fill* 0x00000000c005def1 0x7 .rodata.JS_ThrowTypeErrorRevokedProxy.isra.0.str1.8 - 0x00000000c005dcc8 0xe .obj/quickjs.o - *fill* 0x00000000c005dcd6 0x2 + 0x00000000c005def8 0xe .obj/quickjs.o + *fill* 0x00000000c005df06 0x2 .rodata.JS_IsExtensible.str1.8 - 0x00000000c005dcd8 0x21 .obj/quickjs.o - *fill* 0x00000000c005dcf9 0x7 + 0x00000000c005df08 0x21 .obj/quickjs.o + *fill* 0x00000000c005df29 0x7 .rodata.JS_GetPrototype.str1.8 - 0x00000000c005dd00 0x1e .obj/quickjs.o - *fill* 0x00000000c005dd1e 0x2 + 0x00000000c005df30 0x1e .obj/quickjs.o + *fill* 0x00000000c005df4e 0x2 .rodata.JS_PreventExtensions.str1.8 - 0x00000000c005dd20 0x26 .obj/quickjs.o - *fill* 0x00000000c005dd46 0x2 + 0x00000000c005df50 0x26 .obj/quickjs.o + *fill* 0x00000000c005df76 0x2 .rodata.js_object_preventExtensions.str1.8 - 0x00000000c005dd48 0x2f .obj/quickjs.o - *fill* 0x00000000c005dd77 0x1 + 0x00000000c005df78 0x2f .obj/quickjs.o + *fill* 0x00000000c005dfa7 0x1 .rodata.JS_SetObjectData.isra.0.str1.8 - 0x00000000c005dd78 0x14 .obj/quickjs.o - *fill* 0x00000000c005dd8c 0x4 + 0x00000000c005dfa8 0x14 .obj/quickjs.o + *fill* 0x00000000c005dfbc 0x4 .rodata.JS_ThrowReferenceErrorUninitialized.str1.8 - 0x00000000c005dd90 0x2e .obj/quickjs.o - *fill* 0x00000000c005ddbe 0x2 + 0x00000000c005dfc0 0x2e .obj/quickjs.o + *fill* 0x00000000c005dfee 0x2 .rodata.JS_ThrowReferenceErrorNotDefined.str1.8 - 0x00000000c005ddc0 0x14 .obj/quickjs.o - *fill* 0x00000000c005ddd4 0x4 + 0x00000000c005dff0 0x14 .obj/quickjs.o + *fill* 0x00000000c005e004 0x4 .rodata.__js_poll_interrupts.str1.8 - 0x00000000c005ddd8 0xc .obj/quickjs.o - *fill* 0x00000000c005dde4 0x4 + 0x00000000c005e008 0xc .obj/quickjs.o + *fill* 0x00000000c005e014 0x4 .rodata.JS_OrdinaryIsInstanceOf.str1.8 - 0x00000000c005dde8 0x2e .obj/quickjs.o - *fill* 0x00000000c005de16 0x2 + 0x00000000c005e018 0x2e .obj/quickjs.o + *fill* 0x00000000c005e046 0x2 .rodata.JS_IsInstanceOf.str1.8 - 0x00000000c005de18 0x23 .obj/quickjs.o - *fill* 0x00000000c005de3b 0x5 + 0x00000000c005e048 0x23 .obj/quickjs.o + *fill* 0x00000000c005e06b 0x5 .rodata.JS_ThrowOutOfMemory.str1.8 - 0x00000000c005de40 0xe .obj/quickjs.o - *fill* 0x00000000c005de4e 0x2 + 0x00000000c005e070 0xe .obj/quickjs.o + *fill* 0x00000000c005e07e 0x2 + .rodata.js_malloc.str1.8 + 0x00000000c005e080 0x2e .obj/quickjs.o + *fill* 0x00000000c005e0ae 0x2 .rodata.JS_SetPrototypeInternal.str1.8 - 0x00000000c005de50 0x31 .obj/quickjs.o - *fill* 0x00000000c005de81 0x7 + 0x00000000c005e0b0 0x31 .obj/quickjs.o + *fill* 0x00000000c005e0e1 0x7 .rodata.js_promise_resolve_function_call.str1.8 - 0x00000000c005de88 0x18 .obj/quickjs.o + 0x00000000c005e0e8 0x18 .obj/quickjs.o .rodata.js_typed_array_sort - 0x00000000c005dea0 0x2c .obj/quickjs.o - *fill* 0x00000000c005decc 0x4 + 0x00000000c005e100 0x2c .obj/quickjs.o + *fill* 0x00000000c005e12c 0x4 .rodata.js_new_shape2.constprop.0.str1.8 - 0x00000000c005ded0 0xd2 .obj/quickjs.o - *fill* 0x00000000c005dfa2 0x2 + 0x00000000c005e130 0xd2 .obj/quickjs.o + *fill* 0x00000000c005e202 0x2 .rodata.JS_NewObjectFromShape - 0x00000000c005dfa4 0x84 .obj/quickjs.o + 0x00000000c005e204 0x84 .obj/quickjs.o .rodata.JS_NewObjectProtoClass.str1.8 - 0x00000000c005e028 0xfb .obj/quickjs.o - *fill* 0x00000000c005e123 0x5 + 0x00000000c005e288 0xfb .obj/quickjs.o + *fill* 0x00000000c005e383 0x5 .rodata.js_array_buffer_constructor3.str1.8 - 0x00000000c005e128 0x1c .obj/quickjs.o - *fill* 0x00000000c005e144 0x4 + 0x00000000c005e388 0x1c .obj/quickjs.o + *fill* 0x00000000c005e3a4 0x4 .rodata.js_allocate_fast_array.str1.8 - 0x00000000c005e148 0x15 .obj/quickjs.o - *fill* 0x00000000c005e15d 0x3 + 0x00000000c005e3a8 0x15 .obj/quickjs.o + *fill* 0x00000000c005e3bd 0x3 .rodata.js_atof.str1.8 - 0x00000000c005e160 0x9 .obj/quickjs.o - *fill* 0x00000000c005e169 0x7 + 0x00000000c005e3c0 0x9 .obj/quickjs.o + *fill* 0x00000000c005e3c9 0x7 .rodata.throw_bf_exception.isra.0.str1.8 - 0x00000000c005e170 0x4b .obj/quickjs.o - *fill* 0x00000000c005e1bb 0x5 + 0x00000000c005e3d0 0x4b .obj/quickjs.o + *fill* 0x00000000c005e41b 0x5 .rodata.string_buffer_realloc.str1.8 - 0x00000000c005e1c0 0x10 .obj/quickjs.o + 0x00000000c005e420 0x10 .obj/quickjs.o .rodata.js_host_resolve_imported_module.str1.8 - 0x00000000c005e1d0 0x2b .obj/quickjs.o + 0x00000000c005e430 0x2b .obj/quickjs.o 0x33 (size before relaxing) - *fill* 0x00000000c005e1fb 0x5 + *fill* 0x00000000c005e45b 0x5 .rodata.JS_ToPrimitiveFree.str1.8 - 0x00000000c005e200 0xc .obj/quickjs.o - *fill* 0x00000000c005e20c 0x4 + 0x00000000c005e460 0xc .obj/quickjs.o + *fill* 0x00000000c005e46c 0x4 .rodata.JS_NewAtomInt64.str1.8 - 0x00000000c005e210 0x4 .obj/quickjs.o - *fill* 0x00000000c005e214 0x4 + 0x00000000c005e470 0x4 .obj/quickjs.o + *fill* 0x00000000c005e474 0x4 .rodata.js_dtoa.str1.8 - 0x00000000c005e218 0xb .obj/quickjs.o - *fill* 0x00000000c005e223 0x5 + 0x00000000c005e478 0xb .obj/quickjs.o + *fill* 0x00000000c005e483 0x5 .rodata.JS_ToStringInternal.str1.8 - 0x00000000c005e228 0x50 .obj/quickjs.o + 0x00000000c005e488 0x50 .obj/quickjs.o .rodata.JS_ToStringInternal - 0x00000000c005e278 0x48 .obj/quickjs.o + 0x00000000c005e4d8 0x48 .obj/quickjs.o .rodata.js_get_function_name.str1.8 - 0x00000000c005e2c0 0x2 .obj/quickjs.o + 0x00000000c005e520 0x2 .obj/quickjs.o 0xa (size before relaxing) - *fill* 0x00000000c005e2c2 0x6 + *fill* 0x00000000c005e522 0x6 .rodata.js_error_toString.str1.8 - 0x00000000c005e2c8 0x3 .obj/quickjs.o - *fill* 0x00000000c005e2cb 0x5 + 0x00000000c005e528 0x3 .obj/quickjs.o + *fill* 0x00000000c005e52b 0x5 .rodata.check_regexp_g_flag.str1.8 - 0x00000000c005e2d0 0x3e .obj/quickjs.o - *fill* 0x00000000c005e30e 0x2 + 0x00000000c005e530 0x3e .obj/quickjs.o + *fill* 0x00000000c005e56e 0x2 .rodata.JS_ToStringCheckObject.str1.8 - 0x00000000c005e310 0x20 .obj/quickjs.o + 0x00000000c005e570 0x20 .obj/quickjs.o .rodata.JS_ToQuotedString.str1.8 - 0x00000000c005e330 0x7 .obj/quickjs.o - *fill* 0x00000000c005e337 0x1 + 0x00000000c005e590 0x7 .obj/quickjs.o + *fill* 0x00000000c005e597 0x1 .rodata.JS_ToQuotedString - 0x00000000c005e338 0x18 .obj/quickjs.o + 0x00000000c005e598 0x18 .obj/quickjs.o .rodata.js_string_CreateHTML.str1.8 - 0x00000000c005e350 0x13 .obj/quickjs.o - *fill* 0x00000000c005e363 0x5 + 0x00000000c005e5b0 0x13 .obj/quickjs.o + *fill* 0x00000000c005e5c3 0x5 .rodata.JS_ToNumberHintFree.str1.8 - 0x00000000c005e368 0x40 .obj/quickjs.o + 0x00000000c005e5c8 0x40 .obj/quickjs.o .rodata.js_string_fromCodePoint.str1.8 - 0x00000000c005e3a8 0x13 .obj/quickjs.o - *fill* 0x00000000c005e3bb 0x5 + 0x00000000c005e608 0x13 .obj/quickjs.o + *fill* 0x00000000c005e61b 0x5 .rodata.set_array_length.str1.8 - 0x00000000c005e3c0 0x11 .obj/quickjs.o - *fill* 0x00000000c005e3d1 0x7 + 0x00000000c005e620 0x11 .obj/quickjs.o + *fill* 0x00000000c005e631 0x7 .rodata.js_get_radix.str1.8 - 0x00000000c005e3d8 0x1f .obj/quickjs.o - *fill* 0x00000000c005e3f7 0x1 + 0x00000000c005e638 0x1f .obj/quickjs.o + *fill* 0x00000000c005e657 0x1 .rodata.js_number_toPrecision.str1.8 - 0x00000000c005e3f8 0x19 .obj/quickjs.o - *fill* 0x00000000c005e411 0x3 + 0x00000000c005e658 0x19 .obj/quickjs.o + *fill* 0x00000000c005e671 0x3 .rodata.js_typed_array_indexOf - 0x00000000c005e414 0x2c .obj/quickjs.o + 0x00000000c005e674 0x2c .obj/quickjs.o .rodata.JS_ToIndex.str1.8 - 0x00000000c005e440 0x14 .obj/quickjs.o - *fill* 0x00000000c005e454 0x4 + 0x00000000c005e6a0 0x14 .obj/quickjs.o + *fill* 0x00000000c005e6b4 0x4 .rodata.js_dataview_constructor.str1.8 - 0x00000000c005e458 0x2b .obj/quickjs.o - *fill* 0x00000000c005e483 0x5 + 0x00000000c005e6b8 0x2b .obj/quickjs.o + *fill* 0x00000000c005e6e3 0x5 .rodata.js_dataview_getValue.str1.8 - 0x00000000c005e488 0xd .obj/quickjs.o - *fill* 0x00000000c005e495 0x3 + 0x00000000c005e6e8 0xd .obj/quickjs.o + *fill* 0x00000000c005e6f5 0x3 .rodata.js_dataview_getValue - 0x00000000c005e498 0x28 .obj/quickjs.o + 0x00000000c005e6f8 0x28 .obj/quickjs.o .rodata.js_binary_arith_slow - 0x00000000c005e4c0 0x30 .obj/quickjs.o + 0x00000000c005e720 0x30 .obj/quickjs.o .rodata.js_shr_slow.str1.8 - 0x00000000c005e4f0 0x26 .obj/quickjs.o - *fill* 0x00000000c005e516 0x2 + 0x00000000c005e750 0x26 .obj/quickjs.o + *fill* 0x00000000c005e776 0x2 .rodata.js_binary_logic_slow.str1.8 - 0x00000000c005e518 0x1d .obj/quickjs.o - *fill* 0x00000000c005e535 0x3 + 0x00000000c005e778 0x1d .obj/quickjs.o + *fill* 0x00000000c005e795 0x3 .rodata.build_backtrace.str1.8 - 0x00000000c005e538 0x3a .obj/quickjs.o - *fill* 0x00000000c005e572 0x6 + 0x00000000c005e798 0x3a .obj/quickjs.o + *fill* 0x00000000c005e7d2 0x6 .rodata.js_compile_regexp.str1.8 - 0x00000000c005e578 0x21 .obj/quickjs.o - *fill* 0x00000000c005e599 0x3 + 0x00000000c005e7d8 0x21 .obj/quickjs.o + *fill* 0x00000000c005e7f9 0x3 .rodata.js_compile_regexp - 0x00000000c005e59c 0x48 .obj/quickjs.o - *fill* 0x00000000c005e5e4 0x4 + 0x00000000c005e7fc 0x48 .obj/quickjs.o + *fill* 0x00000000c005e844 0x4 .rodata.JS_StringToBigIntErr.str1.8 - 0x00000000c005e5e8 0x17 .obj/quickjs.o - *fill* 0x00000000c005e5ff 0x1 + 0x00000000c005e848 0x17 .obj/quickjs.o + *fill* 0x00000000c005e85f 0x1 .rodata.JS_ToBigIntFree.str1.8 - 0x00000000c005e600 0x19 .obj/quickjs.o - *fill* 0x00000000c005e619 0x3 + 0x00000000c005e860 0x19 .obj/quickjs.o + *fill* 0x00000000c005e879 0x3 .rodata.js_dataview_setValue - 0x00000000c005e61c 0x28 .obj/quickjs.o + 0x00000000c005e87c 0x28 .obj/quickjs.o .rodata.js_binary_arith_bigint - 0x00000000c005e644 0x58 .obj/quickjs.o - *fill* 0x00000000c005e69c 0x4 + 0x00000000c005e8a4 0x58 .obj/quickjs.o + *fill* 0x00000000c005e8fc 0x4 .rodata.js_unary_arith_bigint.str1.8 - 0x00000000c005e6a0 0x1d .obj/quickjs.o - *fill* 0x00000000c005e6bd 0x3 + 0x00000000c005e900 0x1d .obj/quickjs.o + *fill* 0x00000000c005e91d 0x3 .rodata.js_bigint_constructor.str1.8 - 0x00000000c005e6c0 0x59 .obj/quickjs.o - *fill* 0x00000000c005e719 0x7 + 0x00000000c005e920 0x59 .obj/quickjs.o + *fill* 0x00000000c005e979 0x7 .rodata.js_string_normalize.str1.8 - 0x00000000c005e720 0x17 .obj/quickjs.o + 0x00000000c005e980 0x17 .obj/quickjs.o .rodata.JS_EvalObject.str1.8 - 0x00000000c005e737 0x8 .obj/quickjs.o - *fill* 0x00000000c005e737 0x1 + 0x00000000c005e997 0x8 .obj/quickjs.o + *fill* 0x00000000c005e997 0x1 .rodata.js_function_constructor.str1.8 - 0x00000000c005e738 0x24 .obj/quickjs.o + 0x00000000c005e998 0x24 .obj/quickjs.o 0x34 (size before relaxing) - *fill* 0x00000000c005e75c 0x4 + *fill* 0x00000000c005e9bc 0x4 .rodata.JS_AtomIsNumericIndex1.str1.8 - 0x00000000c005e760 0x8 .obj/quickjs.o + 0x00000000c005e9c0 0x8 .obj/quickjs.o .rodata.JS_CreateProperty.str1.8 - 0x00000000c005e768 0x43 .obj/quickjs.o - *fill* 0x00000000c005e7ab 0x5 + 0x00000000c005e9c8 0x43 .obj/quickjs.o + *fill* 0x00000000c005ea0b 0x5 .rodata.js_string_includes.str1.8 - 0x00000000c005e7b0 0x14 .obj/quickjs.o - *fill* 0x00000000c005e7c4 0x4 + 0x00000000c005ea10 0x14 .obj/quickjs.o + *fill* 0x00000000c005ea24 0x4 .rodata.js_date_Symbol_toPrimitive.str1.8 - 0x00000000c005e7c8 0xd .obj/quickjs.o - *fill* 0x00000000c005e7d5 0x3 + 0x00000000c005ea28 0xd .obj/quickjs.o + *fill* 0x00000000c005ea35 0x3 .rodata.js_regexp_get_source.str1.8 - 0x00000000c005e7d8 0x5 .obj/quickjs.o - *fill* 0x00000000c005e7dd 0x3 + 0x00000000c005ea38 0x5 .obj/quickjs.o + *fill* 0x00000000c005ea3d 0x3 .rodata.get_date_string.str1.8 - 0x00000000c005e7e0 0xdb .obj/quickjs.o - *fill* 0x00000000c005e8bb 0x5 + 0x00000000c005ea40 0xdb .obj/quickjs.o + *fill* 0x00000000c005eb1b 0x5 .rodata.add_var.str1.8 - 0x00000000c005e8c0 0x19 .obj/quickjs.o - *fill* 0x00000000c005e8d9 0x7 + 0x00000000c005eb20 0x19 .obj/quickjs.o + *fill* 0x00000000c005eb39 0x7 .rodata.add_arg.str1.8 - 0x00000000c005e8e0 0x13 .obj/quickjs.o - *fill* 0x00000000c005e8f3 0x5 + 0x00000000c005eb40 0x13 .obj/quickjs.o + *fill* 0x00000000c005eb53 0x5 .rodata.add_closure_var.str1.8 - 0x00000000c005e8f8 0x1b .obj/quickjs.o - *fill* 0x00000000c005e913 0x5 + 0x00000000c005eb58 0x1b .obj/quickjs.o + *fill* 0x00000000c005eb73 0x5 .rodata.resolve_scope_private_field1.str1.8 - 0x00000000c005e918 0x1d .obj/quickjs.o - *fill* 0x00000000c005e935 0x3 + 0x00000000c005eb78 0x1d .obj/quickjs.o + *fill* 0x00000000c005eb95 0x3 .rodata.resolve_scope_var - 0x00000000c005e938 0x68 .obj/quickjs.o + 0x00000000c005eb98 0x68 .obj/quickjs.o .rodata.resolve_variables.str1.8 - 0x00000000c005e9a0 0x6 .obj/quickjs.o - *fill* 0x00000000c005e9a6 0x2 + 0x00000000c005ec00 0x6 .obj/quickjs.o + *fill* 0x00000000c005ec06 0x2 .rodata.resolve_variables - 0x00000000c005e9a8 0xb8 .obj/quickjs.o + 0x00000000c005ec08 0xb8 .obj/quickjs.o .rodata.ss_check.str1.8 - 0x00000000c005ea60 0x9b .obj/quickjs.o - *fill* 0x00000000c005eafb 0x5 + 0x00000000c005ecc0 0x9b .obj/quickjs.o + *fill* 0x00000000c005ed5b 0x5 .rodata.js_create_function.str1.8 - 0x00000000c005eb00 0x87 .obj/quickjs.o - *fill* 0x00000000c005eb87 0x1 + 0x00000000c005ed60 0x87 .obj/quickjs.o + *fill* 0x00000000c005ede7 0x1 .rodata.js_create_function - 0x00000000c005eb88 0x1b8 .obj/quickjs.o + 0x00000000c005ede8 0x1b8 .obj/quickjs.o .rodata.js_string_repeat.str1.8 - 0x00000000c005ed40 0x15 .obj/quickjs.o - *fill* 0x00000000c005ed55 0x3 + 0x00000000c005efa0 0x15 .obj/quickjs.o + *fill* 0x00000000c005efb5 0x3 .rodata.js_global_encodeURI.str1.8 - 0x00000000c005ed58 0x51 .obj/quickjs.o - *fill* 0x00000000c005eda9 0x7 + 0x00000000c005efb8 0x51 .obj/quickjs.o + *fill* 0x00000000c005f009 0x7 .rodata.hex_decode.str1.8 - 0x00000000c005edb0 0x24 .obj/quickjs.o - *fill* 0x00000000c005edd4 0x4 + 0x00000000c005f010 0x24 .obj/quickjs.o + *fill* 0x00000000c005f034 0x4 .rodata.js_global_decodeURI.str1.8 - 0x00000000c005edd8 0x10 .obj/quickjs.o + 0x00000000c005f038 0x10 .obj/quickjs.o .rodata.add_export_entry2.str1.8 - 0x00000000c005ede8 0x1d .obj/quickjs.o - *fill* 0x00000000c005ee05 0x3 + 0x00000000c005f048 0x1d .obj/quickjs.o + *fill* 0x00000000c005f065 0x3 .rodata.js_parse_string.str1.8 - 0x00000000c005ee08 0xc1 .obj/quickjs.o - *fill* 0x00000000c005eec9 0x7 + 0x00000000c005f068 0xc1 .obj/quickjs.o + *fill* 0x00000000c005f129 0x7 .rodata.json_next_token.str1.8 - 0x00000000c005eed0 0x4d .obj/quickjs.o - *fill* 0x00000000c005ef1d 0x3 + 0x00000000c005f130 0x4d .obj/quickjs.o + *fill* 0x00000000c005f17d 0x3 .rodata.json_next_token - 0x00000000c005ef20 0xa0 .obj/quickjs.o + 0x00000000c005f180 0xa0 .obj/quickjs.o .rodata.json_parse_expect.str1.8 - 0x00000000c005efc0 0xf .obj/quickjs.o - *fill* 0x00000000c005efcf 0x1 + 0x00000000c005f220 0xf .obj/quickjs.o + *fill* 0x00000000c005f22f 0x1 .rodata.next_token.str1.8 - 0x00000000c005efd0 0xa0 .obj/quickjs.o + 0x00000000c005f230 0xa0 .obj/quickjs.o .rodata.next_token - 0x00000000c005f070 0x13c .obj/quickjs.o - *fill* 0x00000000c005f1ac 0x4 + 0x00000000c005f2d0 0x13c .obj/quickjs.o + *fill* 0x00000000c005f40c 0x4 .rodata.js_parse_directives.part.0.str1.8 - 0x00000000c005f1b0 0x22 .obj/quickjs.o - *fill* 0x00000000c005f1d2 0x2 + 0x00000000c005f410 0x22 .obj/quickjs.o + *fill* 0x00000000c005f432 0x2 .rodata.js_parse_directives.part.0 - 0x00000000c005f1d4 0xb4 .obj/quickjs.o + 0x00000000c005f434 0xb4 .obj/quickjs.o .rodata.js_parse_regexp.str1.8 - 0x00000000c005f288 0x45 .obj/quickjs.o - *fill* 0x00000000c005f2cd 0x3 + 0x00000000c005f4e8 0x45 .obj/quickjs.o + *fill* 0x00000000c005f52d 0x3 .rodata.js_parse_check_duplicate_parameter.str1.8 - 0x00000000c005f2d0 0x36 .obj/quickjs.o - *fill* 0x00000000c005f306 0x2 + 0x00000000c005f530 0x36 .obj/quickjs.o + *fill* 0x00000000c005f566 0x2 .rodata.get_lvalue.str1.8 - 0x00000000c005f308 0xb2 .obj/quickjs.o - *fill* 0x00000000c005f3ba 0x6 + 0x00000000c005f568 0xb2 .obj/quickjs.o + *fill* 0x00000000c005f61a 0x6 .rodata.js_parse_error_reserved_identifier.str1.8 - 0x00000000c005f3c0 0x1e .obj/quickjs.o - *fill* 0x00000000c005f3de 0x2 + 0x00000000c005f620 0x1e .obj/quickjs.o + *fill* 0x00000000c005f63e 0x2 .rodata.js_parse_function_check_names.str1.8 - 0x00000000c005f3e0 0xd5 .obj/quickjs.o - *fill* 0x00000000c005f4b5 0x3 + 0x00000000c005f640 0xd5 .obj/quickjs.o + *fill* 0x00000000c005f715 0x3 .rodata.define_var.str1.8 - 0x00000000c005f4b8 0xab .obj/quickjs.o - *fill* 0x00000000c005f563 0x5 + 0x00000000c005f718 0xab .obj/quickjs.o + *fill* 0x00000000c005f7c3 0x5 .rodata.js_define_var.str1.8 - 0x00000000c005f568 0x66 .obj/quickjs.o - *fill* 0x00000000c005f5ce 0x2 + 0x00000000c005f7c8 0x66 .obj/quickjs.o + *fill* 0x00000000c005f82e 0x2 .rodata.js_parse_from_clause.str1.8 - 0x00000000c005f5d0 0x28 .obj/quickjs.o + 0x00000000c005f830 0x28 .obj/quickjs.o .rodata.add_import.str1.8 - 0x00000000c005f5f8 0x31 .obj/quickjs.o - *fill* 0x00000000c005f629 0x3 + 0x00000000c005f858 0x31 .obj/quickjs.o + *fill* 0x00000000c005f889 0x3 .rodata.JS_ToObject - 0x00000000c005f62c 0x48 .obj/quickjs.o - *fill* 0x00000000c005f674 0x4 + 0x00000000c005f88c 0x48 .obj/quickjs.o + *fill* 0x00000000c005f8d4 0x4 .rodata.JS_DeleteProperty.str1.8 - 0x00000000c005f678 0x1a .obj/quickjs.o - *fill* 0x00000000c005f692 0x6 + 0x00000000c005f8d8 0x1a .obj/quickjs.o + *fill* 0x00000000c005f8f2 0x6 .rodata.js_call_c_function.str1.8 - 0x00000000c005f698 0x18 .obj/quickjs.o + 0x00000000c005f8f8 0x18 .obj/quickjs.o .rodata.js_call_c_function - 0x00000000c005f6b0 0x34 .obj/quickjs.o - *fill* 0x00000000c005f6e4 0x4 + 0x00000000c005f910 0x34 .obj/quickjs.o + *fill* 0x00000000c005f944 0x4 .rodata.JS_NewCFunction3.str1.8 - 0x00000000c005f6e8 0xd5 .obj/quickjs.o - *fill* 0x00000000c005f7bd 0x3 + 0x00000000c005f948 0xd5 .obj/quickjs.o + *fill* 0x00000000c005fa1d 0x3 .rodata.json_parse_value.str1.8 - 0x00000000c005f7c0 0x49 .obj/quickjs.o - *fill* 0x00000000c005f809 0x7 + 0x00000000c005fa20 0x49 .obj/quickjs.o + *fill* 0x00000000c005fa69 0x7 .rodata.JS_ParseJSON2.str1.8 - 0x00000000c005f810 0x1b .obj/quickjs.o - *fill* 0x00000000c005f82b 0x5 + 0x00000000c005fa70 0x1b .obj/quickjs.o + *fill* 0x00000000c005fa8b 0x5 .rodata.js_parse_template.str1.8 - 0x00000000c005f830 0x27 .obj/quickjs.o - *fill* 0x00000000c005f857 0x1 + 0x00000000c005fa90 0x27 .obj/quickjs.o + *fill* 0x00000000c005fab7 0x1 .rodata.js_parse_postfix_expr.str1.8 - 0x00000000c005f858 0x265 .obj/quickjs.o - *fill* 0x00000000c005fabd 0x3 + 0x00000000c005fab8 0x265 .obj/quickjs.o + *fill* 0x00000000c005fd1d 0x3 .rodata.js_parse_postfix_expr - 0x00000000c005fac0 0x4c .obj/quickjs.o - *fill* 0x00000000c005fb0c 0x4 + 0x00000000c005fd20 0x4c .obj/quickjs.o + *fill* 0x00000000c005fd6c 0x4 .rodata.js_parse_unary.str1.8 - 0x00000000c005fb10 0xe4 .obj/quickjs.o + 0x00000000c005fd70 0xe4 .obj/quickjs.o .rodata.js_parse_expr_binary - 0x00000000c005fbf4 0x20 .obj/quickjs.o - *fill* 0x00000000c005fc14 0x4 + 0x00000000c005fe54 0x20 .obj/quickjs.o + *fill* 0x00000000c005fe74 0x4 .rodata.js_parse_logical_and_or.str1.8 - 0x00000000c005fc18 0x1c .obj/quickjs.o - *fill* 0x00000000c005fc34 0x4 + 0x00000000c005fe78 0x1c .obj/quickjs.o + *fill* 0x00000000c005fe94 0x4 .rodata.js_parse_destructuring_element.str1.8 - 0x00000000c005fc38 0x109 .obj/quickjs.o - *fill* 0x00000000c005fd41 0x7 + 0x00000000c005fe98 0x109 .obj/quickjs.o + *fill* 0x00000000c005ffa1 0x7 .rodata.js_parse_function_decl2.constprop.0.str1.8 - 0x00000000c005fd48 0xa9 .obj/quickjs.o - *fill* 0x00000000c005fdf1 0x7 + 0x00000000c005ffa8 0xa9 .obj/quickjs.o + *fill* 0x00000000c0060051 0x7 .rodata.js_parse_assign_expr2.str1.8 - 0x00000000c005fdf8 0x3c .obj/quickjs.o - *fill* 0x00000000c005fe34 0x4 + 0x00000000c0060058 0x3c .obj/quickjs.o + *fill* 0x00000000c0060094 0x4 .rodata.js_parse_property_name.str1.8 - 0x00000000c005fe38 0x16 .obj/quickjs.o - *fill* 0x00000000c005fe4e 0x2 + 0x00000000c0060098 0x16 .obj/quickjs.o + *fill* 0x00000000c00600ae 0x2 .rodata.js_parse_var.str1.8 - 0x00000000c005fe50 0x67 .obj/quickjs.o - *fill* 0x00000000c005feb7 0x1 + 0x00000000c00600b0 0x67 .obj/quickjs.o + *fill* 0x00000000c0060117 0x1 .rodata.js_parse_class.str1.8 - 0x00000000c005feb8 0xcf .obj/quickjs.o - *fill* 0x00000000c005ff87 0x1 + 0x00000000c0060118 0xcf .obj/quickjs.o + *fill* 0x00000000c00601e7 0x1 .rodata.js_parse_statement_or_decl.str1.8 - 0x00000000c005ff88 0x368 .obj/quickjs.o + 0x00000000c00601e8 0x368 .obj/quickjs.o 0x370 (size before relaxing) .rodata.js_parse_statement_or_decl - 0x00000000c00602f0 0x90 .obj/quickjs.o + 0x00000000c0060550 0x90 .obj/quickjs.o .rodata.js_parse_source_element.str1.8 - 0x00000000c0060380 0x27 .obj/quickjs.o - *fill* 0x00000000c00603a7 0x1 + 0x00000000c00605e0 0x27 .obj/quickjs.o + *fill* 0x00000000c0060607 0x1 .rodata.js_string_constructor.str1.8 - 0x00000000c00603a8 0x8 .obj/quickjs.o + 0x00000000c0060608 0x8 .obj/quickjs.o 0x10 (size before relaxing) .rodata.js_regexp_compile.str1.8 - 0x00000000c00603b0 0x18 .obj/quickjs.o + 0x00000000c0060610 0x18 .obj/quickjs.o .rodata.build_arg_list.str1.8 - 0x00000000c00603c8 0xd .obj/quickjs.o - *fill* 0x00000000c00603d5 0x3 + 0x00000000c0060628 0xd .obj/quickjs.o + *fill* 0x00000000c0060635 0x3 .rodata.js_obj_to_desc.str1.8 - 0x00000000c00603d8 0x50 .obj/quickjs.o + 0x00000000c0060638 0x50 .obj/quickjs.o .rodata.js_array_push.str1.8 - 0x00000000c0060428 0xf .obj/quickjs.o - *fill* 0x00000000c0060437 0x1 + 0x00000000c0060688 0xf .obj/quickjs.o + *fill* 0x00000000c0060697 0x1 .rodata.js_object_toString.str1.8 - 0x00000000c0060438 0x21 .obj/quickjs.o - *fill* 0x00000000c0060459 0x7 + 0x00000000c0060698 0x21 .obj/quickjs.o + *fill* 0x00000000c00606b9 0x7 .rodata.js_regexp_get_flags.str1.8 - 0x00000000c0060460 0x3f .obj/quickjs.o - *fill* 0x00000000c006049f 0x1 + 0x00000000c00606c0 0x3f .obj/quickjs.o + *fill* 0x00000000c00606ff 0x1 .rodata.js_function_toString.str1.8 - 0x00000000c00604a0 0x29 .obj/quickjs.o - *fill* 0x00000000c00604c9 0x7 + 0x00000000c0060700 0x29 .obj/quickjs.o + *fill* 0x00000000c0060729 0x7 .rodata.JS_WriteObjectRec.str1.8 - 0x00000000c00604d0 0xad .obj/quickjs.o - *fill* 0x00000000c006057d 0x3 + 0x00000000c0060730 0xad .obj/quickjs.o + *fill* 0x00000000c00607dd 0x3 .rodata.JS_WriteObjectRec - 0x00000000c0060580 0xe4 .obj/quickjs.o - *fill* 0x00000000c0060664 0x4 + 0x00000000c00607e0 0xe4 .obj/quickjs.o + *fill* 0x00000000c00608c4 0x4 .rodata.js_function_bind.str1.8 - 0x00000000c0060668 0x7 .obj/quickjs.o - *fill* 0x00000000c006066f 0x1 + 0x00000000c00608c8 0x7 .obj/quickjs.o + *fill* 0x00000000c00608cf 0x1 .rodata.js_regexp_exec.str1.8 - 0x00000000c0060670 0x22 .obj/quickjs.o - *fill* 0x00000000c0060692 0x6 + 0x00000000c00608d0 0x22 .obj/quickjs.o + *fill* 0x00000000c00608f2 0x6 .rodata.js_object_create.str1.8 - 0x00000000c0060698 0x10 .obj/quickjs.o + 0x00000000c00608f8 0x10 .obj/quickjs.o .rodata.JS_InstantiateFunctionListItem.isra.0.str1.8 - 0x00000000c00606a8 0xf .obj/quickjs.o - *fill* 0x00000000c00606b7 0x1 + 0x00000000c0060908 0xf .obj/quickjs.o + *fill* 0x00000000c0060917 0x1 .rodata.JS_InstantiateFunctionListItem.isra.0 - 0x00000000c00606b8 0x28 .obj/quickjs.o + 0x00000000c0060918 0x28 .obj/quickjs.o .rodata.JS_SetModuleExportList - 0x00000000c00606e0 0x24 .obj/quickjs.o - *fill* 0x00000000c0060704 0x4 + 0x00000000c0060940 0x24 .obj/quickjs.o + *fill* 0x00000000c0060964 0x4 .rodata.JS_AddIntrinsicRegExp.str1.8 - 0x00000000c0060708 0x7 .obj/quickjs.o - *fill* 0x00000000c006070f 0x1 + 0x00000000c0060968 0x7 .obj/quickjs.o + *fill* 0x00000000c006096f 0x1 .rodata.JS_AddIntrinsicProxy.str1.8 - 0x00000000c0060710 0x6 .obj/quickjs.o - *fill* 0x00000000c0060716 0x2 + 0x00000000c0060970 0x6 .obj/quickjs.o + *fill* 0x00000000c0060976 0x2 .rodata.JS_RegExpExec.str1.8 - 0x00000000c0060718 0x31 .obj/quickjs.o - *fill* 0x00000000c0060749 0x7 + 0x00000000c0060978 0x31 .obj/quickjs.o + *fill* 0x00000000c00609a9 0x7 .rodata.js_proxy_set.str1.8 - 0x00000000c0060750 0x33 .obj/quickjs.o - *fill* 0x00000000c0060783 0x5 + 0x00000000c00609b0 0x33 .obj/quickjs.o + *fill* 0x00000000c00609e3 0x5 .rodata.js_proxy_get.str1.8 - 0x00000000c0060788 0x18 .obj/quickjs.o + 0x00000000c00609e8 0x18 .obj/quickjs.o .rodata.js_proxy_has.str1.8 - 0x00000000c00607a0 0x18 .obj/quickjs.o + 0x00000000c0060a00 0x18 .obj/quickjs.o .rodata.js_proxy_define_own_property.str1.8 - 0x00000000c00607b8 0x43 .obj/quickjs.o - *fill* 0x00000000c00607fb 0x5 + 0x00000000c0060a18 0x43 .obj/quickjs.o + *fill* 0x00000000c0060a5b 0x5 .rodata.js_proxy_delete_property.str1.8 - 0x00000000c0060800 0x23 .obj/quickjs.o - *fill* 0x00000000c0060823 0x5 + 0x00000000c0060a60 0x23 .obj/quickjs.o + *fill* 0x00000000c0060a83 0x5 .rodata.js_proxy_get_own_property_names.str1.8 - 0x00000000c0060828 0xd8 .obj/quickjs.o + 0x00000000c0060a88 0xd8 .obj/quickjs.o .rodata.js_proxy_get_own_property.str1.8 - 0x00000000c0060900 0x2d .obj/quickjs.o - *fill* 0x00000000c006092d 0x3 + 0x00000000c0060b60 0x2d .obj/quickjs.o + *fill* 0x00000000c0060b8d 0x3 .rodata.js_date_toJSON.str1.8 - 0x00000000c0060930 0x30 .obj/quickjs.o + 0x00000000c0060b90 0x30 .obj/quickjs.o .rodata.js_generator_next.str1.8 - 0x00000000c0060960 0x32 .obj/quickjs.o - *fill* 0x00000000c0060992 0x6 + 0x00000000c0060bc0 0x32 .obj/quickjs.o + *fill* 0x00000000c0060bf2 0x6 .rodata.js_typed_array_create.str1.8 - 0x00000000c0060998 0x1f .obj/quickjs.o - *fill* 0x00000000c00609b7 0x1 + 0x00000000c0060bf8 0x1f .obj/quickjs.o + *fill* 0x00000000c0060c17 0x1 .rodata.js_array_buffer_slice.str1.8 - 0x00000000c00609b8 0x45 .obj/quickjs.o + 0x00000000c0060c18 0x45 .obj/quickjs.o .rodata.js_regexp_Symbol_split.str1.8 - 0x00000000c00609fd 0x45 .obj/quickjs.o + 0x00000000c0060c5d 0x45 .obj/quickjs.o 0x2 (size before relaxing) .rodata.js_string_match.str1.8 - 0x00000000c00609fd 0x45 .obj/quickjs.o + 0x00000000c0060c5d 0x45 .obj/quickjs.o 0x2 (size before relaxing) - *fill* 0x00000000c00609fd 0x3 + *fill* 0x00000000c0060c5d 0x3 .rodata.JS_GetIterator.str1.8 - 0x00000000c0060a00 0x16 .obj/quickjs.o - *fill* 0x00000000c0060a16 0x2 + 0x00000000c0060c60 0x16 .obj/quickjs.o + *fill* 0x00000000c0060c76 0x2 .rodata.js_typed_array_constructor.str1.8 - 0x00000000c0060a18 0x1f .obj/quickjs.o - *fill* 0x00000000c0060a37 0x1 + 0x00000000c0060c78 0x1f .obj/quickjs.o + *fill* 0x00000000c0060c97 0x1 .rodata.js_json_check - 0x00000000c0060a38 0x48 .obj/quickjs.o + 0x00000000c0060c98 0x48 .obj/quickjs.o .rodata.js_json_to_str.constprop.0.str1.8 - 0x00000000c0060a80 0x27 .obj/quickjs.o + 0x00000000c0060ce0 0x27 .obj/quickjs.o 0x2a (size before relaxing) - *fill* 0x00000000c0060aa7 0x1 + *fill* 0x00000000c0060d07 0x1 .rodata.js_json_to_str.constprop.0 - 0x00000000c0060aa8 0x48 .obj/quickjs.o + 0x00000000c0060d08 0x48 .obj/quickjs.o .rodata.JS_JSONStringify.str1.8 - 0x00000000c0060af0 0xb .obj/quickjs.o - *fill* 0x00000000c0060afb 0x5 + 0x00000000c0060d50 0xb .obj/quickjs.o + *fill* 0x00000000c0060d5b 0x5 .rodata.js_map_constructor.str1.8 - 0x00000000c0060b00 0x1a .obj/quickjs.o - *fill* 0x00000000c0060b1a 0x6 + 0x00000000c0060d60 0x1a .obj/quickjs.o + *fill* 0x00000000c0060d7a 0x6 .rodata.js_object_groupBy.str1.8 - 0x00000000c0060b20 0x12 .obj/quickjs.o - *fill* 0x00000000c0060b32 0x6 + 0x00000000c0060d80 0x12 .obj/quickjs.o + *fill* 0x00000000c0060d92 0x6 .rodata.js_promise_all_resolve_element.str1.8 - 0x00000000c0060b38 0x1a .obj/quickjs.o - *fill* 0x00000000c0060b52 0x6 + 0x00000000c0060d98 0x1a .obj/quickjs.o + *fill* 0x00000000c0060db2 0x6 .rodata.JS_FlattenIntoArray.str1.8 - 0x00000000c0060b58 0xf .obj/quickjs.o - *fill* 0x00000000c0060b67 0x1 + 0x00000000c0060db8 0xf .obj/quickjs.o + *fill* 0x00000000c0060dc7 0x1 .rodata.js_array_reduce.str1.8 - 0x00000000c0060b68 0xc .obj/quickjs.o + 0x00000000c0060dc8 0xc .obj/quickjs.o .rodata.js_array_every - 0x00000000c0060b74 0x68 .obj/quickjs.o + 0x00000000c0060dd4 0x68 .obj/quickjs.o .rodata.js_async_generator_resume_next - 0x00000000c0060bdc 0x18 .obj/quickjs.o - *fill* 0x00000000c0060bf4 0x4 + 0x00000000c0060e3c 0x18 .obj/quickjs.o + *fill* 0x00000000c0060e54 0x4 .rodata.js_execute_sync_module.str1.8 - 0x00000000c0060bf8 0x13 .obj/quickjs.o - *fill* 0x00000000c0060c0b 0x5 + 0x00000000c0060e58 0x13 .obj/quickjs.o + *fill* 0x00000000c0060e6b 0x5 .rodata.JS_EvalFunctionInternal.str1.8 - 0x00000000c0060c10 0x1b .obj/quickjs.o - *fill* 0x00000000c0060c2b 0x5 + 0x00000000c0060e70 0x1b .obj/quickjs.o + *fill* 0x00000000c0060e8b 0x5 .rodata.js_dynamic_import_job.str1.8 - 0x00000000c0060c30 0x22 .obj/quickjs.o - *fill* 0x00000000c0060c52 0x6 + 0x00000000c0060e90 0x22 .obj/quickjs.o + *fill* 0x00000000c0060eb2 0x6 .rodata.js_async_generator_next.str1.8 - 0x00000000c0060c58 0x1d .obj/quickjs.o - *fill* 0x00000000c0060c75 0x3 + 0x00000000c0060eb8 0x1d .obj/quickjs.o + *fill* 0x00000000c0060ed5 0x3 .rodata.js_async_from_sync_iterator_next.str1.8 - 0x00000000c0060c78 0x20 .obj/quickjs.o + 0x00000000c0060ed8 0x20 .obj/quickjs.o .rodata.JS_AddIntrinsicPromise.str1.8 - 0x00000000c0060c98 0x2f .obj/quickjs.o + 0x00000000c0060ef8 0x2f .obj/quickjs.o .rodata.JS_AddIntrinsicDate.str1.8 - 0x00000000c0060cc7 0x2f .obj/quickjs.o + 0x00000000c0060f27 0x2f .obj/quickjs.o 0x5 (size before relaxing) - *fill* 0x00000000c0060cc7 0x1 + *fill* 0x00000000c0060f27 0x1 .rodata.JS_AddIntrinsicBigInt.str1.8 - 0x00000000c0060cc8 0x7 .obj/quickjs.o - *fill* 0x00000000c0060ccf 0x1 + 0x00000000c0060f28 0x7 .obj/quickjs.o + *fill* 0x00000000c0060f2f 0x1 .rodata.JS_AddIntrinsicBaseObjects.str1.8 - 0x00000000c0060cd0 0xca .obj/quickjs.o + 0x00000000c0060f30 0xca .obj/quickjs.o 0xe5 (size before relaxing) - *fill* 0x00000000c0060d9a 0x6 + *fill* 0x00000000c0060ffa 0x6 .rodata.JS_ReadObjectRec.str1.8 - 0x00000000c0060da0 0xbc .obj/quickjs.o + 0x00000000c0061000 0xbc .obj/quickjs.o .rodata.JS_ReadObjectRec - 0x00000000c0060e5c 0x54 .obj/quickjs.o + 0x00000000c00610bc 0x54 .obj/quickjs.o .rodata.JS_ReadObject.str1.8 - 0x00000000c0060eb0 0x21 .obj/quickjs.o - *fill* 0x00000000c0060ed1 0x7 + 0x00000000c0061110 0x21 .obj/quickjs.o + *fill* 0x00000000c0061131 0x7 .rodata.JS_AddIntrinsicTypedArrays.str1.8 - 0x00000000c0060ed8 0x3a .obj/quickjs.o - *fill* 0x00000000c0060f12 0x6 + 0x00000000c0061138 0x3a .obj/quickjs.o + *fill* 0x00000000c0061172 0x6 .rodata.JS_NewContext.str1.8 - 0x00000000c0060f18 0x2a .obj/quickjs.o - *fill* 0x00000000c0060f42 0x6 + 0x00000000c0061178 0x2a .obj/quickjs.o + *fill* 0x00000000c00611a2 0x6 .rodata.str1.8 - 0x00000000c0060f48 0x10ff .obj/quickjs.o + 0x00000000c00611a8 0x10ff .obj/quickjs.o 0x115f (size before relaxing) - *fill* 0x00000000c0062047 0x1 - .rodata.CSWTCH.4811 - 0x00000000c0062048 0x18 .obj/quickjs.o + *fill* 0x00000000c00622a7 0x1 + .rodata.CSWTCH.4827 + 0x00000000c00622a8 0x18 .obj/quickjs.o .rodata.assign_opcodes.2 - 0x00000000c0062060 0xc .obj/quickjs.o - *fill* 0x00000000c006206c 0x4 + 0x00000000c00622c0 0xc .obj/quickjs.o + *fill* 0x00000000c00622cc 0x4 .rodata.day_names - 0x00000000c0062070 0x16 .obj/quickjs.o - *fill* 0x00000000c0062086 0x2 + 0x00000000c00622d0 0x16 .obj/quickjs.o + *fill* 0x00000000c00622e6 0x2 .rodata.def_malloc_funcs - 0x00000000c0062088 0x20 .obj/quickjs.o + 0x00000000c00622e8 0x20 .obj/quickjs.o .rodata.defs.1 - 0x00000000c00620a8 0xd0 .obj/quickjs.o + 0x00000000c0062308 0xd0 .obj/quickjs.o .rodata.js_arguments_exotic_methods - 0x00000000c0062178 0x38 .obj/quickjs.o + 0x00000000c00623d8 0x38 .obj/quickjs.o .rodata.js_array_buffer_funcs - 0x00000000c00621b0 0x40 .obj/quickjs.o + 0x00000000c0062410 0x40 .obj/quickjs.o .rodata.js_array_buffer_proto_funcs - 0x00000000c00621f0 0x60 .obj/quickjs.o + 0x00000000c0062450 0x60 .obj/quickjs.o .rodata.js_array_funcs - 0x00000000c0062250 0x80 .obj/quickjs.o + 0x00000000c00624b0 0x80 .obj/quickjs.o .rodata.js_array_iterator_proto_funcs - 0x00000000c00622d0 0x40 .obj/quickjs.o + 0x00000000c0062530 0x40 .obj/quickjs.o .rodata.js_array_proto_funcs - 0x00000000c0062310 0x4e0 .obj/quickjs.o + 0x00000000c0062570 0x4e0 .obj/quickjs.o .rodata.js_async_class_def - 0x00000000c00627f0 0xd8 .obj/quickjs.o + 0x00000000c0062a50 0xd8 .obj/quickjs.o .rodata.js_async_from_sync_iterator_proto_funcs - 0x00000000c00628c8 0x60 .obj/quickjs.o + 0x00000000c0062b28 0x60 .obj/quickjs.o .rodata.js_async_function_proto_funcs - 0x00000000c0062928 0x20 .obj/quickjs.o + 0x00000000c0062b88 0x20 .obj/quickjs.o .rodata.js_async_generator_function_proto_funcs - 0x00000000c0062948 0x20 .obj/quickjs.o + 0x00000000c0062ba8 0x20 .obj/quickjs.o .rodata.js_async_generator_proto_funcs - 0x00000000c0062968 0x80 .obj/quickjs.o + 0x00000000c0062bc8 0x80 .obj/quickjs.o .rodata.js_async_iterator_proto_funcs - 0x00000000c00629e8 0x20 .obj/quickjs.o + 0x00000000c0062c48 0x20 .obj/quickjs.o .rodata.js_atom_init - 0x00000000c0062a08 0x7ed .obj/quickjs.o - *fill* 0x00000000c00631f5 0x3 + 0x00000000c0062c68 0x7ed .obj/quickjs.o + *fill* 0x00000000c0063455 0x3 .rodata.js_autoinit_func_table - 0x00000000c00631f8 0x18 .obj/quickjs.o + 0x00000000c0063458 0x18 .obj/quickjs.o .rodata.js_bigint_funcs - 0x00000000c0063210 0x40 .obj/quickjs.o + 0x00000000c0063470 0x40 .obj/quickjs.o .rodata.js_bigint_proto_funcs - 0x00000000c0063250 0x60 .obj/quickjs.o + 0x00000000c00634b0 0x60 .obj/quickjs.o .rodata.js_boolean_proto_funcs - 0x00000000c00632b0 0x40 .obj/quickjs.o + 0x00000000c0063510 0x40 .obj/quickjs.o .rodata.js_dataview_proto_funcs - 0x00000000c00632f0 0x300 .obj/quickjs.o + 0x00000000c0063550 0x300 .obj/quickjs.o .rodata.js_date_funcs - 0x00000000c00635f0 0x60 .obj/quickjs.o + 0x00000000c0063850 0x60 .obj/quickjs.o .rodata.js_date_proto_funcs - 0x00000000c0063650 0x5e0 .obj/quickjs.o + 0x00000000c00638b0 0x5e0 .obj/quickjs.o .rodata.js_error_proto_funcs - 0x00000000c0063c30 0x60 .obj/quickjs.o + 0x00000000c0063e90 0x60 .obj/quickjs.o .rodata.js_function_proto_funcs - 0x00000000c0063c90 0xe0 .obj/quickjs.o + 0x00000000c0063ef0 0xe0 .obj/quickjs.o .rodata.js_generator_function_proto_funcs - 0x00000000c0063d70 0x20 .obj/quickjs.o + 0x00000000c0063fd0 0x20 .obj/quickjs.o .rodata.js_generator_proto_funcs - 0x00000000c0063d90 0x80 .obj/quickjs.o + 0x00000000c0063ff0 0x80 .obj/quickjs.o .rodata.js_global_funcs - 0x00000000c0063e10 0x1a0 .obj/quickjs.o + 0x00000000c0064070 0x1a0 .obj/quickjs.o .rodata.js_iterator_proto_funcs - 0x00000000c0063fb0 0x20 .obj/quickjs.o + 0x00000000c0064210 0x20 .obj/quickjs.o .rodata.js_json_funcs - 0x00000000c0063fd0 0x60 .obj/quickjs.o + 0x00000000c0064230 0x60 .obj/quickjs.o .rodata.js_json_obj - 0x00000000c0064030 0x20 .obj/quickjs.o + 0x00000000c0064290 0x20 .obj/quickjs.o .rodata.js_map_funcs - 0x00000000c0064050 0x40 .obj/quickjs.o + 0x00000000c00642b0 0x40 .obj/quickjs.o .rodata.js_map_iterator_proto_funcs - 0x00000000c0064090 0x40 .obj/quickjs.o + 0x00000000c00642f0 0x40 .obj/quickjs.o .rodata.js_map_proto_funcs - 0x00000000c00640d0 0x180 .obj/quickjs.o + 0x00000000c0064330 0x180 .obj/quickjs.o .rodata.js_map_proto_funcs_ptr - 0x00000000c0064250 0x30 .obj/quickjs.o + 0x00000000c00644b0 0x30 .obj/quickjs.o .rodata.js_math_funcs - 0x00000000c0064280 0x580 .obj/quickjs.o + 0x00000000c00644e0 0x580 .obj/quickjs.o .rodata.js_math_obj - 0x00000000c0064800 0x20 .obj/quickjs.o + 0x00000000c0064a60 0x20 .obj/quickjs.o .rodata.js_module_ns_exotic_methods - 0x00000000c0064820 0x38 .obj/quickjs.o + 0x00000000c0064a80 0x38 .obj/quickjs.o .rodata.js_number_funcs - 0x00000000c0064858 0x1c0 .obj/quickjs.o + 0x00000000c0064ab8 0x1c0 .obj/quickjs.o .rodata.js_number_proto_funcs - 0x00000000c0064a18 0xc0 .obj/quickjs.o + 0x00000000c0064c78 0xc0 .obj/quickjs.o .rodata.js_object_funcs - 0x00000000c0064ad8 0x300 .obj/quickjs.o + 0x00000000c0064d38 0x300 .obj/quickjs.o .rodata.js_object_proto_funcs - 0x00000000c0064dd8 0x160 .obj/quickjs.o + 0x00000000c0065038 0x160 .obj/quickjs.o .rodata.js_promise_funcs - 0x00000000c0064f38 0x100 .obj/quickjs.o + 0x00000000c0065198 0x100 .obj/quickjs.o .rodata.js_promise_proto_funcs - 0x00000000c0065038 0x80 .obj/quickjs.o + 0x00000000c0065298 0x80 .obj/quickjs.o .rodata.js_proxy_class_def - 0x00000000c00650b8 0x18 .obj/quickjs.o + 0x00000000c0065318 0x18 .obj/quickjs.o .rodata.js_proxy_exotic_methods - 0x00000000c00650d0 0x38 .obj/quickjs.o + 0x00000000c0065330 0x38 .obj/quickjs.o .rodata.js_proxy_funcs - 0x00000000c0065108 0x20 .obj/quickjs.o + 0x00000000c0065368 0x20 .obj/quickjs.o .rodata.js_reflect_funcs - 0x00000000c0065128 0x1c0 .obj/quickjs.o + 0x00000000c0065388 0x1c0 .obj/quickjs.o .rodata.js_reflect_obj - 0x00000000c00652e8 0x20 .obj/quickjs.o + 0x00000000c0065548 0x20 .obj/quickjs.o .rodata.js_regexp_funcs - 0x00000000c0065308 0x20 .obj/quickjs.o + 0x00000000c0065568 0x20 .obj/quickjs.o .rodata.js_regexp_proto_funcs - 0x00000000c0065328 0x240 .obj/quickjs.o + 0x00000000c0065588 0x240 .obj/quickjs.o .rodata.js_regexp_string_iterator_proto_funcs - 0x00000000c0065568 0x40 .obj/quickjs.o + 0x00000000c00657c8 0x40 .obj/quickjs.o .rodata.js_set_iterator_proto_funcs - 0x00000000c00655a8 0x40 .obj/quickjs.o + 0x00000000c0065808 0x40 .obj/quickjs.o .rodata.js_set_proto_funcs - 0x00000000c00655e8 0x160 .obj/quickjs.o + 0x00000000c0065848 0x160 .obj/quickjs.o .rodata.js_shared_array_buffer_funcs - 0x00000000c0065748 0x20 .obj/quickjs.o + 0x00000000c00659a8 0x20 .obj/quickjs.o .rodata.js_shared_array_buffer_proto_funcs - 0x00000000c0065768 0x60 .obj/quickjs.o + 0x00000000c00659c8 0x60 .obj/quickjs.o .rodata.js_std_class_def - 0x00000000c00657c8 0x408 .obj/quickjs.o + 0x00000000c0065a28 0x408 .obj/quickjs.o .rodata.js_string_exotic_methods - 0x00000000c0065bd0 0x38 .obj/quickjs.o + 0x00000000c0065e30 0x38 .obj/quickjs.o .rodata.js_string_funcs - 0x00000000c0065c08 0x60 .obj/quickjs.o + 0x00000000c0065e68 0x60 .obj/quickjs.o .rodata.js_string_iterator_proto_funcs - 0x00000000c0065c68 0x40 .obj/quickjs.o + 0x00000000c0065ec8 0x40 .obj/quickjs.o .rodata.js_string_proto_funcs - 0x00000000c0065ca8 0x680 .obj/quickjs.o + 0x00000000c0065f08 0x680 .obj/quickjs.o .rodata.js_string_proto_normalize - 0x00000000c0066328 0x20 .obj/quickjs.o + 0x00000000c0066588 0x20 .obj/quickjs.o .rodata.js_symbol_funcs - 0x00000000c0066348 0x40 .obj/quickjs.o + 0x00000000c00665a8 0x40 .obj/quickjs.o .rodata.js_symbol_proto_funcs - 0x00000000c0066388 0xa0 .obj/quickjs.o + 0x00000000c00665e8 0xa0 .obj/quickjs.o .rodata.js_typed_array_base_funcs - 0x00000000c0066428 0x60 .obj/quickjs.o + 0x00000000c0066688 0x60 .obj/quickjs.o .rodata.js_typed_array_base_proto_funcs - 0x00000000c0066488 0x480 .obj/quickjs.o + 0x00000000c00666e8 0x480 .obj/quickjs.o .rodata.js_weak_map_proto_funcs - 0x00000000c0066908 0xa0 .obj/quickjs.o + 0x00000000c0066b68 0xa0 .obj/quickjs.o .rodata.js_weak_set_proto_funcs - 0x00000000c00669a8 0x80 .obj/quickjs.o + 0x00000000c0066c08 0x80 .obj/quickjs.o .rodata.month_days - 0x00000000c0066a28 0x30 .obj/quickjs.o + 0x00000000c0066c88 0x30 .obj/quickjs.o .rodata.month_names - 0x00000000c0066a58 0x25 .obj/quickjs.o - *fill* 0x00000000c0066a7d 0x3 + 0x00000000c0066cb8 0x25 .obj/quickjs.o + *fill* 0x00000000c0066cdd 0x3 .rodata.native_error_name - 0x00000000c0066a80 0x40 .obj/quickjs.o + 0x00000000c0066ce0 0x40 .obj/quickjs.o .rodata.object_types.3 - 0x00000000c0066ac0 0x50 .obj/quickjs.o + 0x00000000c0066d20 0x50 .obj/quickjs.o .rodata.opcode_info - 0x00000000c0066b10 0x424 .obj/quickjs.o - *fill* 0x00000000c0066f34 0x4 + 0x00000000c0066d70 0x424 .obj/quickjs.o + *fill* 0x00000000c0067194 0x4 .rodata.typed_array_size_log2 - 0x00000000c0066f38 0xb .obj/quickjs.o - *fill* 0x00000000c0066f43 0x5 + 0x00000000c0067198 0xb .obj/quickjs.o + *fill* 0x00000000c00671a3 0x5 .rodata.unescaped_chars.0 - 0x00000000c0066f48 0x46 .obj/quickjs.o - *fill* 0x00000000c0066f8e 0x2 + 0x00000000c00671a8 0x46 .obj/quickjs.o + *fill* 0x00000000c00671ee 0x2 .rodata.lre_exec_backtrack.str1.8 - 0x00000000c0066f90 0xc .obj/libregexp.o + 0x00000000c00671f0 0xc .obj/libregexp.o .rodata.lre_exec_backtrack - 0x00000000c0066f9c 0x70 .obj/libregexp.o + 0x00000000c00671fc 0x70 .obj/libregexp.o .rodata.re_parse_expect.str1.8 - 0x00000000c006700c 0xf .obj/libregexp.o - *fill* 0x00000000c006700c 0x4 + 0x00000000c006726c 0xf .obj/libregexp.o + *fill* 0x00000000c006726c 0x4 .rodata.re_emit_range.str1.8 - 0x00000000c0067010 0x10 .obj/libregexp.o + 0x00000000c0067270 0x10 .obj/libregexp.o .rodata.lre_parse_escape - 0x00000000c0067020 0x5c .obj/libregexp.o - *fill* 0x00000000c006707c 0x4 + 0x00000000c0067280 0x5c .obj/libregexp.o + *fill* 0x00000000c00672dc 0x4 .rodata.get_class_atom.str1.8 - 0x00000000c0067080 0x15f .obj/libregexp.o + 0x00000000c00672e0 0x15f .obj/libregexp.o 0x16f (size before relaxing) - *fill* 0x00000000c00671df 0x1 + *fill* 0x00000000c006743f 0x1 .rodata.re_parse_alternative.str1.8 - 0x00000000c00671e0 0x149 .obj/libregexp.o - *fill* 0x00000000c0067329 0x3 + 0x00000000c0067440 0x149 .obj/libregexp.o + *fill* 0x00000000c0067589 0x3 .rodata.re_parse_alternative - 0x00000000c006732c 0xc4 .obj/libregexp.o + 0x00000000c006758c 0xc4 .obj/libregexp.o .rodata.re_parse_disjunction.str1.8 - 0x00000000c00673f0 0xf .obj/libregexp.o - *fill* 0x00000000c00673ff 0x1 + 0x00000000c0067650 0xf .obj/libregexp.o + *fill* 0x00000000c006765f 0x1 .rodata.lre_compile.str1.8 - 0x00000000c0067400 0x48 .obj/libregexp.o + 0x00000000c0067660 0x48 .obj/libregexp.o .rodata.lre_compile - 0x00000000c0067448 0x30 .obj/libregexp.o + 0x00000000c00676a8 0x30 .obj/libregexp.o .rodata.char_range_s - 0x00000000c0067478 0x2a .obj/libregexp.o - *fill* 0x00000000c00674a2 0x6 + 0x00000000c00676d8 0x2a .obj/libregexp.o + *fill* 0x00000000c0067702 0x6 .rodata.char_range_table - 0x00000000c00674a8 0x18 .obj/libregexp.o + 0x00000000c0067708 0x18 .obj/libregexp.o .rodata.char_range_w - 0x00000000c00674c0 0x12 .obj/libregexp.o - *fill* 0x00000000c00674d2 0x6 + 0x00000000c0067720 0x12 .obj/libregexp.o + *fill* 0x00000000c0067732 0x6 .rodata.lre_id_continue_table_ascii - 0x00000000c00674d8 0x10 .obj/libregexp.o - 0x00000000c00674d8 lre_id_continue_table_ascii + 0x00000000c0067738 0x10 .obj/libregexp.o + 0x00000000c0067738 lre_id_continue_table_ascii .rodata.lre_id_start_table_ascii - 0x00000000c00674e8 0x10 .obj/libregexp.o - 0x00000000c00674e8 lre_id_start_table_ascii + 0x00000000c0067748 0x10 .obj/libregexp.o + 0x00000000c0067748 lre_id_start_table_ascii .rodata.reopcode_info - 0x00000000c00674f8 0x1d .obj/libregexp.o - *fill* 0x00000000c0067515 0x3 + 0x00000000c0067758 0x1d .obj/libregexp.o + *fill* 0x00000000c0067775 0x3 .rodata.unicode_decomp_entry - 0x00000000c0067518 0x88 .obj/libunicode.o + 0x00000000c0067778 0x88 .obj/libunicode.o .rodata.lre_case_conv_entry - 0x00000000c00675a0 0x34 .obj/libunicode.o - *fill* 0x00000000c00675d4 0x4 + 0x00000000c0067800 0x34 .obj/libunicode.o + *fill* 0x00000000c0067834 0x4 .rodata.unicode_prop_ops.str1.8 - 0x00000000c00675d8 0xd .obj/libunicode.o - *fill* 0x00000000c00675e5 0x3 + 0x00000000c0067838 0xd .obj/libunicode.o + *fill* 0x00000000c0067845 0x3 .rodata.unicode_prop_ops - 0x00000000c00675e8 0x20 .obj/libunicode.o + 0x00000000c0067848 0x20 .obj/libunicode.o .rodata.unicode_prop - 0x00000000c0067608 0x4c .obj/libunicode.o - *fill* 0x00000000c0067654 0x4 + 0x00000000c0067868 0x4c .obj/libunicode.o + *fill* 0x00000000c00678b4 0x4 .rodata.case_conv_ext - 0x00000000c0067658 0x74 .obj/libunicode.o - *fill* 0x00000000c00676cc 0x4 + 0x00000000c00678b8 0x74 .obj/libunicode.o + *fill* 0x00000000c006792c 0x4 .rodata.case_conv_table1 - 0x00000000c00676d0 0x5c8 .obj/libunicode.o + 0x00000000c0067930 0x5c8 .obj/libunicode.o .rodata.case_conv_table2 - 0x00000000c0067c98 0x172 .obj/libunicode.o - *fill* 0x00000000c0067e0a 0x6 + 0x00000000c0067ef8 0x172 .obj/libunicode.o + *fill* 0x00000000c006806a 0x6 .rodata.unicode_cc_index - 0x00000000c0067e10 0x57 .obj/libunicode.o - *fill* 0x00000000c0067e67 0x1 + 0x00000000c0068070 0x57 .obj/libunicode.o + *fill* 0x00000000c00680c7 0x1 .rodata.unicode_cc_table - 0x00000000c0067e68 0x383 .obj/libunicode.o - *fill* 0x00000000c00681eb 0x5 + 0x00000000c00680c8 0x383 .obj/libunicode.o + *fill* 0x00000000c006844b 0x5 .rodata.unicode_comp_table - 0x00000000c00681f0 0x762 .obj/libunicode.o - *fill* 0x00000000c0068952 0x6 + 0x00000000c0068450 0x762 .obj/libunicode.o + *fill* 0x00000000c0068bb2 0x6 .rodata.unicode_decomp_data - 0x00000000c0068958 0x2481 .obj/libunicode.o - *fill* 0x00000000c006add9 0x7 + 0x00000000c0068bb8 0x2481 .obj/libunicode.o + *fill* 0x00000000c006b039 0x7 .rodata.unicode_decomp_table1 - 0x00000000c006ade0 0xaec .obj/libunicode.o - *fill* 0x00000000c006b8cc 0x4 + 0x00000000c006b040 0xaec .obj/libunicode.o + *fill* 0x00000000c006bb2c 0x4 .rodata.unicode_decomp_table2 - 0x00000000c006b8d0 0x576 .obj/libunicode.o - *fill* 0x00000000c006be46 0x2 + 0x00000000c006bb30 0x576 .obj/libunicode.o + *fill* 0x00000000c006c0a6 0x2 .rodata.unicode_gc_mask_table - 0x00000000c006be48 0x20 .obj/libunicode.o + 0x00000000c006c0a8 0x20 .obj/libunicode.o .rodata.unicode_gc_name_table - 0x00000000c006be68 0x294 .obj/libunicode.o - *fill* 0x00000000c006c0fc 0x4 + 0x00000000c006c0c8 0x294 .obj/libunicode.o + *fill* 0x00000000c006c35c 0x4 .rodata.unicode_gc_table - 0x00000000c006c100 0xf6c .obj/libunicode.o - *fill* 0x00000000c006d06c 0x4 + 0x00000000c006c360 0xf6c .obj/libunicode.o + *fill* 0x00000000c006d2cc 0x4 .rodata.unicode_prop_Bidi_Control_table - 0x00000000c006d070 0xa .obj/libunicode.o - *fill* 0x00000000c006d07a 0x6 + 0x00000000c006d2d0 0xa .obj/libunicode.o + *fill* 0x00000000c006d2da 0x6 .rodata.unicode_prop_Bidi_Mirrored_table - 0x00000000c006d080 0xad .obj/libunicode.o - *fill* 0x00000000c006d12d 0x3 + 0x00000000c006d2e0 0xad .obj/libunicode.o + *fill* 0x00000000c006d38d 0x3 .rodata.unicode_prop_Case_Ignorable_index - 0x00000000c006d130 0x45 .obj/libunicode.o - *fill* 0x00000000c006d175 0x3 + 0x00000000c006d390 0x45 .obj/libunicode.o + *fill* 0x00000000c006d3d5 0x3 .rodata.unicode_prop_Case_Ignorable_table - 0x00000000c006d178 0x2e1 .obj/libunicode.o - *fill* 0x00000000c006d459 0x7 + 0x00000000c006d3d8 0x2e1 .obj/libunicode.o + *fill* 0x00000000c006d6b9 0x7 .rodata.unicode_prop_Cased1_index - 0x00000000c006d460 0x15 .obj/libunicode.o - *fill* 0x00000000c006d475 0x3 + 0x00000000c006d6c0 0x15 .obj/libunicode.o + *fill* 0x00000000c006d6d5 0x3 .rodata.unicode_prop_Cased1_table - 0x00000000c006d478 0xc4 .obj/libunicode.o - *fill* 0x00000000c006d53c 0x4 + 0x00000000c006d6d8 0xc4 .obj/libunicode.o + *fill* 0x00000000c006d79c 0x4 .rodata.unicode_prop_Changes_When_Casefolded1_table - 0x00000000c006d540 0x1d .obj/libunicode.o - *fill* 0x00000000c006d55d 0x3 + 0x00000000c006d7a0 0x1d .obj/libunicode.o + *fill* 0x00000000c006d7bd 0x3 .rodata.unicode_prop_Changes_When_NFKC_Casefolded1_table - 0x00000000c006d560 0x1bf .obj/libunicode.o - *fill* 0x00000000c006d71f 0x1 + 0x00000000c006d7c0 0x1bf .obj/libunicode.o + *fill* 0x00000000c006d97f 0x1 .rodata.unicode_prop_Changes_When_Titlecased1_table - 0x00000000c006d720 0x16 .obj/libunicode.o - *fill* 0x00000000c006d736 0x2 + 0x00000000c006d980 0x16 .obj/libunicode.o + *fill* 0x00000000c006d996 0x2 .rodata.unicode_prop_Dash_table - 0x00000000c006d738 0x37 .obj/libunicode.o - *fill* 0x00000000c006d76f 0x1 + 0x00000000c006d998 0x37 .obj/libunicode.o + *fill* 0x00000000c006d9cf 0x1 .rodata.unicode_prop_Default_Ignorable_Code_Point_table - 0x00000000c006d770 0x33 .obj/libunicode.o - *fill* 0x00000000c006d7a3 0x5 + 0x00000000c006d9d0 0x33 .obj/libunicode.o + *fill* 0x00000000c006da03 0x5 .rodata.unicode_prop_Deprecated_table - 0x00000000c006d7a8 0x17 .obj/libunicode.o - *fill* 0x00000000c006d7bf 0x1 + 0x00000000c006da08 0x17 .obj/libunicode.o + *fill* 0x00000000c006da1f 0x1 .rodata.unicode_prop_Diacritic_table - 0x00000000c006d7c0 0x18f .obj/libunicode.o - *fill* 0x00000000c006d94f 0x1 + 0x00000000c006da20 0x18f .obj/libunicode.o + *fill* 0x00000000c006dbaf 0x1 .rodata.unicode_prop_Emoji_Component_table - 0x00000000c006d950 0x1c .obj/libunicode.o - *fill* 0x00000000c006d96c 0x4 + 0x00000000c006dbb0 0x1c .obj/libunicode.o + *fill* 0x00000000c006dbcc 0x4 .rodata.unicode_prop_Emoji_Modifier_Base_table - 0x00000000c006d970 0x47 .obj/libunicode.o - *fill* 0x00000000c006d9b7 0x1 + 0x00000000c006dbd0 0x47 .obj/libunicode.o + *fill* 0x00000000c006dc17 0x1 .rodata.unicode_prop_Emoji_Presentation_table - 0x00000000c006d9b8 0x91 .obj/libunicode.o - *fill* 0x00000000c006da49 0x7 + 0x00000000c006dc18 0x91 .obj/libunicode.o + *fill* 0x00000000c006dca9 0x7 .rodata.unicode_prop_Emoji_table - 0x00000000c006da50 0xef .obj/libunicode.o - *fill* 0x00000000c006db3f 0x1 + 0x00000000c006dcb0 0xef .obj/libunicode.o + *fill* 0x00000000c006dd9f 0x1 .rodata.unicode_prop_Extended_Pictographic_table - 0x00000000c006db40 0x9c .obj/libunicode.o - *fill* 0x00000000c006dbdc 0x4 + 0x00000000c006dda0 0x9c .obj/libunicode.o + *fill* 0x00000000c006de3c 0x4 .rodata.unicode_prop_Extender_table - 0x00000000c006dbe0 0x5c .obj/libunicode.o - *fill* 0x00000000c006dc3c 0x4 + 0x00000000c006de40 0x5c .obj/libunicode.o + *fill* 0x00000000c006de9c 0x4 .rodata.unicode_prop_Hex_Digit_table - 0x00000000c006dc40 0xc .obj/libunicode.o - *fill* 0x00000000c006dc4c 0x4 + 0x00000000c006dea0 0xc .obj/libunicode.o + *fill* 0x00000000c006deac 0x4 .rodata.unicode_prop_Hyphen_table - 0x00000000c006dc50 0x1c .obj/libunicode.o - *fill* 0x00000000c006dc6c 0x4 + 0x00000000c006deb0 0x1c .obj/libunicode.o + *fill* 0x00000000c006decc 0x4 .rodata.unicode_prop_ID_Continue1_index - 0x00000000c006dc70 0x3f .obj/libunicode.o - *fill* 0x00000000c006dcaf 0x1 + 0x00000000c006ded0 0x3f .obj/libunicode.o + *fill* 0x00000000c006df0f 0x1 .rodata.unicode_prop_ID_Continue1_table - 0x00000000c006dcb0 0x294 .obj/libunicode.o - *fill* 0x00000000c006df44 0x4 + 0x00000000c006df10 0x294 .obj/libunicode.o + *fill* 0x00000000c006e1a4 0x4 .rodata.unicode_prop_ID_Start_index - 0x00000000c006df48 0x69 .obj/libunicode.o - *fill* 0x00000000c006dfb1 0x7 + 0x00000000c006e1a8 0x69 .obj/libunicode.o + *fill* 0x00000000c006e211 0x7 .rodata.unicode_prop_ID_Start_table - 0x00000000c006dfb8 0x44c .obj/libunicode.o - *fill* 0x00000000c006e404 0x4 + 0x00000000c006e218 0x44c .obj/libunicode.o + *fill* 0x00000000c006e664 0x4 .rodata.unicode_prop_Ideographic_table - 0x00000000c006e408 0x45 .obj/libunicode.o - *fill* 0x00000000c006e44d 0x3 + 0x00000000c006e668 0x45 .obj/libunicode.o + *fill* 0x00000000c006e6ad 0x3 .rodata.unicode_prop_Logical_Order_Exception_table - 0x00000000c006e450 0xf .obj/libunicode.o - *fill* 0x00000000c006e45f 0x1 + 0x00000000c006e6b0 0xf .obj/libunicode.o + *fill* 0x00000000c006e6bf 0x1 .rodata.unicode_prop_Noncharacter_Code_Point_table - 0x00000000c006e460 0x47 .obj/libunicode.o - *fill* 0x00000000c006e4a7 0x1 + 0x00000000c006e6c0 0x47 .obj/libunicode.o + *fill* 0x00000000c006e707 0x1 .rodata.unicode_prop_Other_Alphabetic_table - 0x00000000c006e4a8 0x1ac .obj/libunicode.o - *fill* 0x00000000c006e654 0x4 + 0x00000000c006e708 0x1ac .obj/libunicode.o + *fill* 0x00000000c006e8b4 0x4 .rodata.unicode_prop_Other_Default_Ignorable_Code_Point_table - 0x00000000c006e658 0x20 .obj/libunicode.o + 0x00000000c006e8b8 0x20 .obj/libunicode.o .rodata.unicode_prop_Other_Grapheme_Extend_table - 0x00000000c006e678 0x41 .obj/libunicode.o - *fill* 0x00000000c006e6b9 0x7 + 0x00000000c006e8d8 0x41 .obj/libunicode.o + *fill* 0x00000000c006e919 0x7 .rodata.unicode_prop_Other_ID_Continue_table - 0x00000000c006e6c0 0xc .obj/libunicode.o - *fill* 0x00000000c006e6cc 0x4 + 0x00000000c006e920 0xc .obj/libunicode.o + *fill* 0x00000000c006e92c 0x4 .rodata.unicode_prop_Other_ID_Start_table - 0x00000000c006e6d0 0xb .obj/libunicode.o - *fill* 0x00000000c006e6db 0x5 + 0x00000000c006e930 0xb .obj/libunicode.o + *fill* 0x00000000c006e93b 0x5 .rodata.unicode_prop_Other_Lowercase_table - 0x00000000c006e6e0 0x45 .obj/libunicode.o - *fill* 0x00000000c006e725 0x3 + 0x00000000c006e940 0x45 .obj/libunicode.o + *fill* 0x00000000c006e985 0x3 .rodata.unicode_prop_Other_Math_table - 0x00000000c006e728 0xc8 .obj/libunicode.o + 0x00000000c006e988 0xc8 .obj/libunicode.o .rodata.unicode_prop_Other_Uppercase_table - 0x00000000c006e7f0 0xf .obj/libunicode.o - *fill* 0x00000000c006e7ff 0x1 + 0x00000000c006ea50 0xf .obj/libunicode.o + *fill* 0x00000000c006ea5f 0x1 .rodata.unicode_prop_Pattern_Syntax_table - 0x00000000c006e800 0x3a .obj/libunicode.o - *fill* 0x00000000c006e83a 0x6 + 0x00000000c006ea60 0x3a .obj/libunicode.o + *fill* 0x00000000c006ea9a 0x6 .rodata.unicode_prop_Pattern_White_Space_table - 0x00000000c006e840 0xb .obj/libunicode.o - *fill* 0x00000000c006e84b 0x5 + 0x00000000c006eaa0 0xb .obj/libunicode.o + *fill* 0x00000000c006eaab 0x5 .rodata.unicode_prop_Prepended_Concatenation_Mark_table - 0x00000000c006e850 0x13 .obj/libunicode.o - *fill* 0x00000000c006e863 0x5 + 0x00000000c006eab0 0x13 .obj/libunicode.o + *fill* 0x00000000c006eac3 0x5 .rodata.unicode_prop_Quotation_Mark_table - 0x00000000c006e868 0x1f .obj/libunicode.o - *fill* 0x00000000c006e887 0x1 + 0x00000000c006eac8 0x1f .obj/libunicode.o + *fill* 0x00000000c006eae7 0x1 .rodata.unicode_prop_Radical_table - 0x00000000c006e888 0x9 .obj/libunicode.o - *fill* 0x00000000c006e891 0x7 + 0x00000000c006eae8 0x9 .obj/libunicode.o + *fill* 0x00000000c006eaf1 0x7 .rodata.unicode_prop_Sentence_Terminal_table - 0x00000000c006e898 0xc4 .obj/libunicode.o - *fill* 0x00000000c006e95c 0x4 + 0x00000000c006eaf8 0xc4 .obj/libunicode.o + *fill* 0x00000000c006ebbc 0x4 .rodata.unicode_prop_Soft_Dotted_table - 0x00000000c006e960 0x4f .obj/libunicode.o - *fill* 0x00000000c006e9af 0x1 + 0x00000000c006ebc0 0x4f .obj/libunicode.o + *fill* 0x00000000c006ec0f 0x1 .rodata.unicode_prop_Terminal_Punctuation_table - 0x00000000c006e9b0 0xf8 .obj/libunicode.o + 0x00000000c006ec10 0xf8 .obj/libunicode.o .rodata.unicode_prop_Unified_Ideograph_table - 0x00000000c006eaa8 0x2d .obj/libunicode.o - *fill* 0x00000000c006ead5 0x3 + 0x00000000c006ed08 0x2d .obj/libunicode.o + *fill* 0x00000000c006ed35 0x3 .rodata.unicode_prop_Variation_Selector_table - 0x00000000c006ead8 0xd .obj/libunicode.o - *fill* 0x00000000c006eae5 0x3 + 0x00000000c006ed38 0xd .obj/libunicode.o + *fill* 0x00000000c006ed45 0x3 .rodata.unicode_prop_White_Space_table - 0x00000000c006eae8 0x16 .obj/libunicode.o - *fill* 0x00000000c006eafe 0x2 + 0x00000000c006ed48 0x16 .obj/libunicode.o + *fill* 0x00000000c006ed5e 0x2 .rodata.unicode_prop_XID_Continue1_table - 0x00000000c006eb00 0x17 .obj/libunicode.o - *fill* 0x00000000c006eb17 0x1 + 0x00000000c006ed60 0x17 .obj/libunicode.o + *fill* 0x00000000c006ed77 0x1 .rodata.unicode_prop_XID_Start1_table - 0x00000000c006eb18 0x1f .obj/libunicode.o - *fill* 0x00000000c006eb37 0x1 + 0x00000000c006ed78 0x1f .obj/libunicode.o + *fill* 0x00000000c006ed97 0x1 .rodata.unicode_prop_len_table - 0x00000000c006eb38 0x64 .obj/libunicode.o - *fill* 0x00000000c006eb9c 0x4 + 0x00000000c006ed98 0x64 .obj/libunicode.o + *fill* 0x00000000c006edfc 0x4 .rodata.unicode_prop_name_table - 0x00000000c006eba0 0x412 .obj/libunicode.o - *fill* 0x00000000c006efb2 0x6 + 0x00000000c006ee00 0x412 .obj/libunicode.o + *fill* 0x00000000c006f212 0x6 .rodata.unicode_prop_table - 0x00000000c006efb8 0x190 .obj/libunicode.o + 0x00000000c006f218 0x190 .obj/libunicode.o .rodata.unicode_script_ext_table - 0x00000000c006f148 0x33c .obj/libunicode.o - *fill* 0x00000000c006f484 0x4 + 0x00000000c006f3a8 0x33c .obj/libunicode.o + *fill* 0x00000000c006f6e4 0x4 .rodata.unicode_script_name_table - 0x00000000c006f488 0x946 .obj/libunicode.o - *fill* 0x00000000c006fdce 0x2 + 0x00000000c006f6e8 0x946 .obj/libunicode.o + *fill* 0x00000000c007002e 0x2 .rodata.unicode_script_table - 0x00000000c006fdd0 0xaa0 .obj/libunicode.o + 0x00000000c0070030 0xaa0 .obj/libunicode.o .rodata.exchange_func - 0x00000000c0070870 0x3c .obj/cutils.o - *fill* 0x00000000c00708ac 0x4 + 0x00000000c0070ad0 0x3c .obj/cutils.o + *fill* 0x00000000c0070b0c 0x4 .rodata.CSWTCH.71 - 0x00000000c00708b0 0x3e .obj/cutils.o - *fill* 0x00000000c00708ee 0x2 + 0x00000000c0070b10 0x3e .obj/cutils.o + *fill* 0x00000000c0070b4e 0x2 .rodata.utf8_min_code - 0x00000000c00708f0 0x14 .obj/cutils.o - *fill* 0x00000000c0070904 0x4 + 0x00000000c0070b50 0x14 .obj/cutils.o + *fill* 0x00000000c0070b64 0x4 .rodata.js_printf_internal.str1.8 - 0x00000000c0070908 0x5a .obj/quickjs-libc.o + 0x00000000c0070b68 0x5a .obj/quickjs-libc.o 0x62 (size before relaxing) - *fill* 0x00000000c0070962 0x2 + *fill* 0x00000000c0070bc2 0x2 .rodata.js_printf_internal - 0x00000000c0070964 0x84 .obj/quickjs-libc.o + 0x00000000c0070bc4 0x84 .obj/quickjs-libc.o .rodata.js_std_file_get.str1.8 - 0x00000000c00709e8 0x14 .obj/quickjs-libc.o - *fill* 0x00000000c00709fc 0x4 + 0x00000000c0070c48 0x14 .obj/quickjs-libc.o + *fill* 0x00000000c0070c5c 0x4 .rodata.js_set_error_object.str1.8 - 0x00000000c0070a00 0x6 .obj/quickjs-libc.o - *fill* 0x00000000c0070a06 0x2 + 0x00000000c0070c60 0x6 .obj/quickjs-libc.o + *fill* 0x00000000c0070c66 0x2 .rodata.js_std_open.str1.8 - 0x00000000c0070a08 0x1a .obj/quickjs-libc.o - *fill* 0x00000000c0070a22 0x6 + 0x00000000c0070c68 0x1a .obj/quickjs-libc.o + *fill* 0x00000000c0070c82 0x6 .rodata.js_std_fdopen.str1.8 - 0x00000000c0070a28 0x5 .obj/quickjs-libc.o - *fill* 0x00000000c0070a2d 0x3 + 0x00000000c0070c88 0x5 .obj/quickjs-libc.o + *fill* 0x00000000c0070c8d 0x3 .rodata.js_std_popen.str1.8 - 0x00000000c0070a30 0x3 .obj/quickjs-libc.o - *fill* 0x00000000c0070a33 0x5 + 0x00000000c0070c90 0x3 .obj/quickjs-libc.o + *fill* 0x00000000c0070c93 0x5 .rodata.js_std_init.str1.8 - 0x00000000c0070a38 0xc .obj/quickjs-libc.o + 0x00000000c0070c98 0xc .obj/quickjs-libc.o 0x14 (size before relaxing) - *fill* 0x00000000c0070a44 0x4 + *fill* 0x00000000c0070ca4 0x4 .rodata.js_std_file_read_write.str1.8 - 0x00000000c0070a48 0x21 .obj/quickjs-libc.o - *fill* 0x00000000c0070a69 0x7 + 0x00000000c0070ca8 0x21 .obj/quickjs-libc.o + *fill* 0x00000000c0070cc9 0x7 .rodata.js_worker_ctor_internal.str1.8 - 0x00000000c0070a70 0xa .obj/quickjs-libc.o - *fill* 0x00000000c0070a7a 0x6 + 0x00000000c0070cd0 0xa .obj/quickjs-libc.o + *fill* 0x00000000c0070cda 0x6 .rodata.js_os_init.str1.8 - 0x00000000c0070a80 0xf .obj/quickjs-libc.o - *fill* 0x00000000c0070a8f 0x1 + 0x00000000c0070ce0 0xf .obj/quickjs-libc.o + *fill* 0x00000000c0070cef 0x1 .rodata.js_sab_free.str1.8 - 0x00000000c0070a90 0xf .obj/quickjs-libc.o - *fill* 0x00000000c0070a9f 0x1 + 0x00000000c0070cf0 0xf .obj/quickjs-libc.o + *fill* 0x00000000c0070cff 0x1 .rodata.js_worker_ctor.str1.8 - 0x00000000c0070aa0 0x78 .obj/quickjs-libc.o + 0x00000000c0070d00 0x78 .obj/quickjs-libc.o .rodata.js_dump_obj.constprop.0.str1.8 - 0x00000000c0070b18 0x2a .obj/quickjs-libc.o + 0x00000000c0070d78 0x2a .obj/quickjs-libc.o 0x32 (size before relaxing) - *fill* 0x00000000c0070b42 0x6 + *fill* 0x00000000c0070da2 0x6 .rodata.js_std_dump_error1.str1.8 - 0x00000000c0070b48 0x6 .obj/quickjs-libc.o - *fill* 0x00000000c0070b4e 0x2 + 0x00000000c0070da8 0x6 .obj/quickjs-libc.o + *fill* 0x00000000c0070dae 0x2 .rodata.js_os_exec.str1.8 - 0x00000000c0070b50 0x75 .obj/quickjs-libc.o + 0x00000000c0070db0 0x75 .obj/quickjs-libc.o 0x85 (size before relaxing) .rodata.js_os_setTimeout.str1.8 - 0x00000000c0070bc5 0xf .obj/quickjs-libc.o - *fill* 0x00000000c0070bc5 0x3 + 0x00000000c0070e25 0xf .obj/quickjs-libc.o + *fill* 0x00000000c0070e25 0x3 .rodata.js_os_signal.str1.8 - 0x00000000c0070bc8 0x4e .obj/quickjs-libc.o - *fill* 0x00000000c0070c16 0x2 + 0x00000000c0070e28 0x4e .obj/quickjs-libc.o + *fill* 0x00000000c0070e76 0x2 .rodata.js_std_urlGet.str1.8 - 0x00000000c0070c18 0x77 .obj/quickjs-libc.o + 0x00000000c0070e78 0x77 .obj/quickjs-libc.o 0x7f (size before relaxing) - *fill* 0x00000000c0070c8f 0x1 + *fill* 0x00000000c0070eef 0x1 .rodata.js_os_stat.str1.8 - 0x00000000c0070c90 0x3e .obj/quickjs-libc.o + 0x00000000c0070ef0 0x3e .obj/quickjs-libc.o 0x4e (size before relaxing) - *fill* 0x00000000c0070cce 0x2 + *fill* 0x00000000c0070f2e 0x2 .rodata.js_evalScript.str1.8 - 0x00000000c0070cd0 0x2d .obj/quickjs-libc.o + 0x00000000c0070f30 0x2d .obj/quickjs-libc.o .rodata.js_std_parseExtJSON.str1.8 - 0x00000000c0070cfd 0x8 .obj/quickjs-libc.o - *fill* 0x00000000c0070cfd 0x3 + 0x00000000c0070f5d 0x8 .obj/quickjs-libc.o + *fill* 0x00000000c0070f5d 0x3 .rodata.js_load_file.str1.8 - 0x00000000c0070d00 0x3 .obj/quickjs-libc.o - *fill* 0x00000000c0070d03 0x5 + 0x00000000c0070f60 0x3 .obj/quickjs-libc.o + *fill* 0x00000000c0070f63 0x5 .rodata.js_loadScript.str1.8 - 0x00000000c0070d08 0x14 .obj/quickjs-libc.o - *fill* 0x00000000c0070d1c 0x4 + 0x00000000c0070f68 0x14 .obj/quickjs-libc.o + *fill* 0x00000000c0070f7c 0x4 .rodata.js_module_set_import_meta.str1.8 - 0x00000000c0070d20 0x2d .obj/quickjs-libc.o - *fill* 0x00000000c0070d4d 0x3 + 0x00000000c0070f80 0x2d .obj/quickjs-libc.o + *fill* 0x00000000c0070fad 0x3 .rodata.js_module_loader.str1.8 - 0x00000000c0070d50 0xfc .obj/quickjs-libc.o - *fill* 0x00000000c0070e4c 0x4 + 0x00000000c0070fb0 0xfc .obj/quickjs-libc.o + *fill* 0x00000000c00710ac 0x4 .rodata.js_std_add_helpers.str1.8 - 0x00000000c0070e50 0x2d .obj/quickjs-libc.o + 0x00000000c00710b0 0x2d .obj/quickjs-libc.o 0x35 (size before relaxing) - *fill* 0x00000000c0070e7d 0x3 + *fill* 0x00000000c00710dd 0x3 .rodata.js_std_init_handlers.str1.8 - 0x00000000c0070e80 0x29 .obj/quickjs-libc.o - *fill* 0x00000000c0070ea9 0x7 + 0x00000000c00710e0 0x29 .obj/quickjs-libc.o + *fill* 0x00000000c0071109 0x7 .rodata.js_os_poll.str1.8 - 0x00000000c0070eb0 0x5 .obj/quickjs-libc.o - *fill* 0x00000000c0070eb5 0x3 + 0x00000000c0071110 0x5 .obj/quickjs-libc.o + *fill* 0x00000000c0071115 0x3 .rodata.js_std_promise_rejection_tracker.str1.8 - 0x00000000c0070eb8 0x27 .obj/quickjs-libc.o - *fill* 0x00000000c0070edf 0x1 + 0x00000000c0071118 0x27 .obj/quickjs-libc.o + *fill* 0x00000000c007113f 0x1 .rodata.worker_func.str1.8 - 0x00000000c0070ee0 0x2e .obj/quickjs-libc.o - *fill* 0x00000000c0070f0e 0x2 + 0x00000000c0071140 0x2e .obj/quickjs-libc.o + *fill* 0x00000000c007116e 0x2 .rodata.str1.8 - 0x00000000c0070f10 0x46d .obj/quickjs-libc.o + 0x00000000c0071170 0x46d .obj/quickjs-libc.o 0x4ad (size before relaxing) - *fill* 0x00000000c007137d 0x3 + *fill* 0x00000000c00715dd 0x3 .rodata.js_os_funcs - 0x00000000c0071380 0x8e0 .obj/quickjs-libc.o + 0x00000000c00715e0 0x8e0 .obj/quickjs-libc.o .rodata.js_std_error_props - 0x00000000c0071c60 0x160 .obj/quickjs-libc.o + 0x00000000c0071ec0 0x160 .obj/quickjs-libc.o .rodata.js_std_file_proto_funcs - 0x00000000c0071dc0 0x220 .obj/quickjs-libc.o + 0x00000000c0072020 0x220 .obj/quickjs-libc.o .rodata.js_std_funcs - 0x00000000c0071fe0 0x2e0 .obj/quickjs-libc.o + 0x00000000c0072240 0x2e0 .obj/quickjs-libc.o .rodata.js_worker_proto_funcs - 0x00000000c00722c0 0x40 .obj/quickjs-libc.o + 0x00000000c0072520 0x40 .obj/quickjs-libc.o .rodata.std_name.0 - 0x00000000c0072300 0x18 .obj/quickjs-libc.o + 0x00000000c0072560 0x18 .obj/quickjs-libc.o .rodata.__bf_round.str1.8 - 0x00000000c0072318 0x8 .obj/libbf.o + 0x00000000c0072578 0x8 .obj/libbf.o .rodata.__bf_round - 0x00000000c0072320 0x1c .obj/libbf.o - *fill* 0x00000000c007233c 0x4 + 0x00000000c0072580 0x1c .obj/libbf.o + *fill* 0x00000000c007259c 0x4 .rodata.mp_print_str.str1.8 - 0x00000000c0072340 0xf .obj/libbf.o - *fill* 0x00000000c007234f 0x1 + 0x00000000c00725a0 0xf .obj/libbf.o + *fill* 0x00000000c00725af 0x1 .rodata.bf_print_str.str1.8 - 0x00000000c0072350 0x1d .obj/libbf.o + 0x00000000c00725b0 0x1d .obj/libbf.o 0x25 (size before relaxing) - *fill* 0x00000000c007236d 0x3 + *fill* 0x00000000c00725cd 0x3 .rodata.bf_atof_internal.constprop.0.str1.8 - 0x00000000c0072370 0xc .obj/libbf.o - *fill* 0x00000000c007237c 0x4 + 0x00000000c00725d0 0xc .obj/libbf.o + *fill* 0x00000000c00725dc 0x4 .rodata.bf_ftoa.str1.8 - 0x00000000c0072380 0x3b .obj/libbf.o + 0x00000000c00725e0 0x3b .obj/libbf.o 0x53 (size before relaxing) - *fill* 0x00000000c00723bb 0x5 - .rodata.cst16 0x00000000c00723c0 0x20 .obj/libbf.o + *fill* 0x00000000c007261b 0x5 + .rodata.cst16 0x00000000c0072620 0x20 .obj/libbf.o .rodata.digits_per_limb_table - 0x00000000c00723e0 0x23 .obj/libbf.o - *fill* 0x00000000c0072403 0x5 + 0x00000000c0072640 0x23 .obj/libbf.o + *fill* 0x00000000c0072663 0x5 .rodata.inv_log2_radix - 0x00000000c0072408 0x1a4 .obj/libbf.o - *fill* 0x00000000c00725ac 0x4 + 0x00000000c0072668 0x1a4 .obj/libbf.o + *fill* 0x00000000c007280c 0x4 .rodata.log2_radix - 0x00000000c00725b0 0x118 .obj/libbf.o + 0x00000000c0072810 0x118 .obj/libbf.o .rodata.sqrt_table - 0x00000000c00726c8 0x180 .obj/libbf.o + 0x00000000c0072928 0x180 .obj/libbf.o .rodata.dlclose.str1.8 - 0x00000000c0072848 0xe .obj/stub.o - *fill* 0x00000000c0072856 0x2 + 0x00000000c0072aa8 0xe .obj/stub.o + *fill* 0x00000000c0072ab6 0x2 .rodata.dlopen.str1.8 - 0x00000000c0072858 0xd .obj/stub.o - *fill* 0x00000000c0072865 0x3 + 0x00000000c0072ab8 0xd .obj/stub.o + *fill* 0x00000000c0072ac5 0x3 .rodata.dlsym.str1.8 - 0x00000000c0072868 0xc .obj/stub.o - *fill* 0x00000000c0072874 0x4 + 0x00000000c0072ac8 0xc .obj/stub.o + *fill* 0x00000000c0072ad4 0x4 .rodata.fesetround.str1.8 - 0x00000000c0072878 0x11 .obj/stub.o - *fill* 0x00000000c0072889 0x7 + 0x00000000c0072ad8 0x11 .obj/stub.o + *fill* 0x00000000c0072ae9 0x7 .rodata.hypot.str1.8 - 0x00000000c0072890 0xc .obj/stub.o - *fill* 0x00000000c007289c 0x4 + 0x00000000c0072af0 0xc .obj/stub.o + *fill* 0x00000000c0072afc 0x4 .rodata.log1p.str1.8 - 0x00000000c00728a0 0xc .obj/stub.o - *fill* 0x00000000c00728ac 0x4 + 0x00000000c0072b00 0xc .obj/stub.o + *fill* 0x00000000c0072b0c 0x4 .rodata.lrint.str1.8 - 0x00000000c00728b0 0xc .obj/stub.o - *fill* 0x00000000c00728bc 0x4 + 0x00000000c0072b10 0xc .obj/stub.o + *fill* 0x00000000c0072b1c 0x4 .rodata.pclose.str1.8 - 0x00000000c00728c0 0xd .obj/stub.o - *fill* 0x00000000c00728cd 0x3 + 0x00000000c0072b20 0xd .obj/stub.o + *fill* 0x00000000c0072b2d 0x3 .rodata.pipe2.str1.8 - 0x00000000c00728d0 0xc .obj/stub.o - *fill* 0x00000000c00728dc 0x4 + 0x00000000c0072b30 0xc .obj/stub.o + *fill* 0x00000000c0072b3c 0x4 .rodata.popen.str1.8 - 0x00000000c00728e0 0xc .obj/stub.o - *fill* 0x00000000c00728ec 0x4 + 0x00000000c0072b40 0xc .obj/stub.o + *fill* 0x00000000c0072b4c 0x4 .rodata.readlink.str1.8 - 0x00000000c00728f0 0xf .obj/stub.o - *fill* 0x00000000c00728ff 0x1 + 0x00000000c0072b50 0xf .obj/stub.o + *fill* 0x00000000c0072b5f 0x1 .rodata.symlink.str1.8 - 0x00000000c0072900 0xe .obj/stub.o - *fill* 0x00000000c007290e 0x2 + 0x00000000c0072b60 0xe .obj/stub.o + *fill* 0x00000000c0072b6e 0x2 .rodata.sbrk.str1.8 - 0x00000000c0072910 0x14 ../apps/import/libs/libmm.a(umm_sbrk.o) - *fill* 0x00000000c0072924 0x4 + 0x00000000c0072b70 0x14 ../apps/import/libs/libmm.a(umm_sbrk.o) + *fill* 0x00000000c0072b84 0x4 .rodata.mm_brkaddr.str1.8 - 0x00000000c0072928 0x15 ../apps/import/libs/libmm.a(mm_brkaddr.o) - *fill* 0x00000000c007293d 0x3 + 0x00000000c0072b88 0x15 ../apps/import/libs/libmm.a(mm_brkaddr.o) + *fill* 0x00000000c0072b9d 0x3 .rodata.mm_extend.str1.8 - 0x00000000c0072940 0x14 ../apps/import/libs/libmm.a(mm_extend.o) - *fill* 0x00000000c0072954 0x4 + 0x00000000c0072ba0 0x14 ../apps/import/libs/libmm.a(mm_extend.o) + *fill* 0x00000000c0072bb4 0x4 .rodata.mm_delayfree.str1.8 - 0x00000000c0072958 0x12 ../apps/import/libs/libmm.a(mm_free.o) - *fill* 0x00000000c007296a 0x6 + 0x00000000c0072bb8 0x12 ../apps/import/libs/libmm.a(mm_free.o) + *fill* 0x00000000c0072bca 0x6 .rodata.mm_free.str1.8 - 0x00000000c0072970 0x10 ../apps/import/libs/libmm.a(mm_free.o) + 0x00000000c0072bd0 0x10 ../apps/import/libs/libmm.a(mm_free.o) .rodata.mm_memalign.str1.8 - 0x00000000c0072980 0x16 ../apps/import/libs/libmm.a(mm_memalign.o) - *fill* 0x00000000c0072996 0x2 + 0x00000000c0072be0 0x16 ../apps/import/libs/libmm.a(mm_memalign.o) + *fill* 0x00000000c0072bf6 0x2 .rodata.mm_realloc.str1.8 - 0x00000000c0072998 0x1e ../apps/import/libs/libmm.a(mm_realloc.o) - *fill* 0x00000000c00729b6 0x2 + 0x00000000c0072bf8 0x1e ../apps/import/libs/libmm.a(mm_realloc.o) + *fill* 0x00000000c0072c16 0x2 .rodata.umm_try_initialize.str1.8 - 0x00000000c00729b8 0x1a ../apps/import/libs/libmm.a(umm_initialize.o) - *fill* 0x00000000c00729d2 0x6 + 0x00000000c0072c18 0x1a ../apps/import/libs/libmm.a(umm_initialize.o) + *fill* 0x00000000c0072c32 0x6 .rodata.mm_addregion.str1.8 - 0x00000000c00729d8 0x39 ../apps/import/libs/libmm.a(mm_initialize.o) - *fill* 0x00000000c0072a11 0x7 + 0x00000000c0072c38 0x39 ../apps/import/libs/libmm.a(mm_initialize.o) + *fill* 0x00000000c0072c71 0x7 .rodata.mm_initialize.str1.8 - 0x00000000c0072a18 0x26 ../apps/import/libs/libmm.a(mm_initialize.o) - *fill* 0x00000000c0072a3e 0x2 + 0x00000000c0072c78 0x26 ../apps/import/libs/libmm.a(mm_initialize.o) + *fill* 0x00000000c0072c9e 0x2 .rodata.__FUNCTION__.0 - 0x00000000c0072a40 0xe ../apps/import/libs/libmm.a(mm_initialize.o) - *fill* 0x00000000c0072a4e 0x2 + 0x00000000c0072ca0 0xe ../apps/import/libs/libmm.a(mm_initialize.o) + *fill* 0x00000000c0072cae 0x2 .rodata.__FUNCTION__.1 - 0x00000000c0072a50 0xd ../apps/import/libs/libmm.a(mm_initialize.o) - *fill* 0x00000000c0072a5d 0x3 + 0x00000000c0072cb0 0xd ../apps/import/libs/libmm.a(mm_initialize.o) + *fill* 0x00000000c0072cbd 0x3 .rodata.mm_unlock.str1.8 - 0x00000000c0072a60 0x12 ../apps/import/libs/libmm.a(mm_lock.o) - *fill* 0x00000000c0072a72 0x6 + 0x00000000c0072cc0 0x12 ../apps/import/libs/libmm.a(mm_lock.o) + *fill* 0x00000000c0072cd2 0x6 .rodata.mm_addfreechunk.str1.8 - 0x00000000c0072a78 0x1a ../apps/import/libs/libmm.a(mm_addfreechunk.o) - *fill* 0x00000000c0072a92 0x6 + 0x00000000c0072cd8 0x1a ../apps/import/libs/libmm.a(mm_addfreechunk.o) + *fill* 0x00000000c0072cf2 0x6 .rodata.mm_size2ndx.str1.8 - 0x00000000c0072a98 0x16 ../apps/import/libs/libmm.a(mm_size2ndx.o) - *fill* 0x00000000c0072aae 0x2 + 0x00000000c0072cf8 0x16 ../apps/import/libs/libmm.a(mm_size2ndx.o) + *fill* 0x00000000c0072d0e 0x2 .rodata.mm_shrinkchunk.str1.8 - 0x00000000c0072ab0 0x19 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - *fill* 0x00000000c0072ac9 0x7 + 0x00000000c0072d10 0x19 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + *fill* 0x00000000c0072d29 0x7 .rodata.mm_malloc.str1.8 - 0x00000000c0072ad0 0x62 ../apps/import/libs/libmm.a(mm_malloc.o) - *fill* 0x00000000c0072b32 0x6 + 0x00000000c0072d30 0x62 ../apps/import/libs/libmm.a(mm_malloc.o) + *fill* 0x00000000c0072d92 0x6 .rodata.__FUNCTION__.0 - 0x00000000c0072b38 0xa ../apps/import/libs/libmm.a(mm_malloc.o) - *fill* 0x00000000c0072b42 0x6 + 0x00000000c0072d98 0xa ../apps/import/libs/libmm.a(mm_malloc.o) + *fill* 0x00000000c0072da2 0x6 .rodata.nxmutex_lock.str1.8 - 0x00000000c0072b48 0x11 ../apps/import/libs/libc.a(lib_mutex.o) - *fill* 0x00000000c0072b59 0x7 + 0x00000000c0072da8 0x11 ../apps/import/libs/libc.a(lib_mutex.o) + *fill* 0x00000000c0072db9 0x7 .rodata.g_default_pthread_attr - 0x00000000c0072b60 0x18 ../apps/import/libs/libc.a(pthread_attr_init.o) - 0x00000000c0072b60 g_default_pthread_attr + 0x00000000c0072dc0 0x18 ../apps/import/libs/libc.a(pthread_attr_init.o) + 0x00000000c0072dc0 g_default_pthread_attr .rodata.pthread_startup.str1.8 - 0x00000000c0072b78 0x19 ../apps/import/libs/libc.a(pthread_create.o) - *fill* 0x00000000c0072b91 0x7 + 0x00000000c0072dd8 0x19 ../apps/import/libs/libc.a(pthread_create.o) + *fill* 0x00000000c0072df1 0x7 .rodata.nxsem_init.str1.8 - 0x00000000c0072b98 0x15 ../apps/import/libs/libc.a(sem_init.o) - *fill* 0x00000000c0072bad 0x3 + 0x00000000c0072df8 0x15 ../apps/import/libs/libc.a(sem_init.o) + *fill* 0x00000000c0072e0d 0x3 .rodata.nxsem_set_protocol.str1.8 - 0x00000000c0072bb0 0x1c ../apps/import/libs/libc.a(sem_setprotocol.o) - *fill* 0x00000000c0072bcc 0x4 + 0x00000000c0072e10 0x1c ../apps/import/libs/libc.a(sem_setprotocol.o) + *fill* 0x00000000c0072e2c 0x4 .rodata.signal.str1.8 - 0x00000000c0072bd0 0x14 ../apps/import/libs/libc.a(sig_signal.o) - *fill* 0x00000000c0072be4 0x4 + 0x00000000c0072e30 0x14 ../apps/import/libs/libc.a(sig_signal.o) + *fill* 0x00000000c0072e44 0x4 .rodata.perror.str1.8 - 0x00000000c0072be8 0x8 ../apps/import/libs/libc.a(lib_perror.o) + 0x00000000c0072e48 0x8 ../apps/import/libs/libc.a(lib_perror.o) .rodata.vsprintf_internal.constprop.0.str1.8 - 0x00000000c0072bf0 0xc ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c0072e50 0xc ../apps/import/libs/libc.a(lib_libvsprintf.o) .rodata.g_dtoa_round - 0x00000000c0072bf0 0x80 ../apps/import/libs/libc.a(lib_dtoa_data.o) - 0x00000000c0072bf0 g_dtoa_round + 0x00000000c0072e50 0x80 ../apps/import/libs/libc.a(lib_dtoa_data.o) + 0x00000000c0072e50 g_dtoa_round .rodata.g_dtoa_scale_down - 0x00000000c0072c70 0x48 ../apps/import/libs/libc.a(lib_dtoa_data.o) - 0x00000000c0072c70 g_dtoa_scale_down + 0x00000000c0072ed0 0x48 ../apps/import/libs/libc.a(lib_dtoa_data.o) + 0x00000000c0072ed0 g_dtoa_scale_down .rodata.g_dtoa_scale_up - 0x00000000c0072cb8 0x48 ../apps/import/libs/libc.a(lib_dtoa_data.o) - 0x00000000c0072cb8 g_dtoa_scale_up + 0x00000000c0072f18 0x48 ../apps/import/libs/libc.a(lib_dtoa_data.o) + 0x00000000c0072f18 g_dtoa_scale_up .rodata.lib_mode2oflags.str1.8 - 0x00000000c0072d00 0x12 ../apps/import/libs/libc.a(lib_fopen.o) - *fill* 0x00000000c0072d12 0x2 + 0x00000000c0072f60 0x12 ../apps/import/libs/libc.a(lib_fopen.o) + *fill* 0x00000000c0072f72 0x2 .rodata.lib_mode2oflags - 0x00000000c0072d14 0x60 ../apps/import/libs/libc.a(lib_fopen.o) - *fill* 0x00000000c0072d74 0x4 + 0x00000000c0072f74 0x60 ../apps/import/libs/libc.a(lib_fopen.o) + *fill* 0x00000000c0072fd4 0x4 .rodata.lib_fread_unlocked.str1.8 - 0x00000000c0072d78 0x1e ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - *fill* 0x00000000c0072d96 0x2 + 0x00000000c0072fd8 0x1e ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + *fill* 0x00000000c0072ff6 0x2 .rodata.tmpfile.str1.8 - 0x00000000c0072d98 0x3 ../apps/import/libs/libc.a(lib_tmpfile.o) - *fill* 0x00000000c0072d9b 0x5 + 0x00000000c0072ff8 0x3 ../apps/import/libs/libc.a(lib_tmpfile.o) + *fill* 0x00000000c0072ffb 0x5 .rodata.strtox.str1.8 - 0x00000000c0072da0 0x9 ../apps/import/libs/libc.a(lib_strtold.o) - *fill* 0x00000000c0072da9 0x7 - .rodata.cst16 0x00000000c0072db0 0x60 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0073000 0x9 ../apps/import/libs/libc.a(lib_strtold.o) + *fill* 0x00000000c0073009 0x7 + .rodata.cst16 0x00000000c0073010 0x60 ../apps/import/libs/libc.a(lib_strtold.o) .rodata.memoutstream_puts.str1.8 - 0x00000000c0072e10 0x1a ../apps/import/libs/libc.a(lib_memoutstream.o) - *fill* 0x00000000c0072e2a 0x6 + 0x00000000c0073070 0x1a ../apps/import/libs/libc.a(lib_memoutstream.o) + *fill* 0x00000000c007308a 0x6 .rodata.nulloutstream_puts.str1.8 - 0x00000000c0072e30 0x1b ../apps/import/libs/libc.a(lib_nulloutstream.o) - *fill* 0x00000000c0072e4b 0x5 + 0x00000000c0073090 0x1b ../apps/import/libs/libc.a(lib_nulloutstream.o) + *fill* 0x00000000c00730ab 0x5 .rodata.stdoutstream_puts.str1.8 - 0x00000000c0072e50 0x1a ../apps/import/libs/libc.a(lib_stdoutstream.o) - *fill* 0x00000000c0072e6a 0x6 + 0x00000000c00730b0 0x1a ../apps/import/libs/libc.a(lib_stdoutstream.o) + *fill* 0x00000000c00730ca 0x6 .rodata.strerror.str1.8 - 0x00000000c0072e70 0xe ../apps/import/libs/libc.a(lib_strerror.o) - *fill* 0x00000000c0072e7e 0x2 + 0x00000000c00730d0 0xe ../apps/import/libs/libc.a(lib_strerror.o) + *fill* 0x00000000c00730de 0x2 .rodata.str1.8 - 0x00000000c0072e80 0xe7c ../apps/import/libs/libc.a(lib_strerror.o) - *fill* 0x00000000c0073cfc 0x4 + 0x00000000c00730e0 0xe7c ../apps/import/libs/libc.a(lib_strerror.o) + *fill* 0x00000000c0073f5c 0x4 .rodata.g_errnomap - 0x00000000c0073d00 0x8b0 ../apps/import/libs/libc.a(lib_strerror.o) + 0x00000000c0073f60 0x8b0 ../apps/import/libs/libc.a(lib_strerror.o) .rodata.sysconf - 0x00000000c00745b0 0x30 ../apps/import/libs/libc.a(lib_sysconf.o) + 0x00000000c0074810 0x30 ../apps/import/libs/libc.a(lib_sysconf.o) .rodata.chdir.str1.8 - 0x00000000c00745e0 0xf ../apps/import/libs/libc.a(lib_chdir.o) + 0x00000000c0074840 0xf ../apps/import/libs/libc.a(lib_chdir.o) 0x17 (size before relaxing) .rodata.getcwd.str1.8 - 0x00000000c00745ef 0xc ../apps/import/libs/libc.a(lib_getcwd.o) - *fill* 0x00000000c00745ef 0x1 + 0x00000000c007484f 0xc ../apps/import/libs/libc.a(lib_getcwd.o) + *fill* 0x00000000c007484f 0x1 .rodata.lib_getfullpath.str1.8 - 0x00000000c00745f0 0x6 ../apps/import/libs/libc.a(lib_getfullpath.o) + 0x00000000c0074850 0x6 ../apps/import/libs/libc.a(lib_getfullpath.o) 0x16 (size before relaxing) - *fill* 0x00000000c00745f6 0x2 + *fill* 0x00000000c0074856 0x2 .rodata.mktemp.str1.8 - 0x00000000c00745f8 0x14 ../apps/import/libs/libc.a(lib_mktemp.o) - *fill* 0x00000000c007460c 0x4 + 0x00000000c0074858 0x14 ../apps/import/libs/libc.a(lib_mktemp.o) + *fill* 0x00000000c007486c 0x4 .rodata.g_daysbeforemonth - 0x00000000c0074610 0x1a ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - *fill* 0x00000000c007462a 0x6 + 0x00000000c0074870 0x1a ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + *fill* 0x00000000c007488a 0x6 .rodata._dbl_inv_fact - 0x00000000c0074630 0x98 ../apps/import/libs/libm.a(lib_exp.o) + 0x00000000c0074890 0x98 ../apps/import/libs/libm.a(lib_exp.o) .rodata._dbl_inv_fact - 0x00000000c00746c8 0x50 ../apps/import/libs/libm.a(lib_sin.o) - *fill* 0x00000000c0074718 0x8 - .rodata.cst16 0x00000000c0074720 0x10 ../apps/import/libs/libm.a(lib_sqrt.o) + 0x00000000c0074928 0x50 ../apps/import/libs/libm.a(lib_sin.o) + *fill* 0x00000000c0074978 0x8 + .rodata.cst16 0x00000000c0074980 0x10 ../apps/import/libs/libm.a(lib_sqrt.o) 0x20 (size before relaxing) .rodata.g_expi_square_tbl - 0x00000000c0074730 0x50 ../apps/import/libs/libm.a(lib_libexpi.o) + 0x00000000c0074990 0x50 ../apps/import/libs/libm.a(lib_libexpi.o) *(.gnu.linkonce.r*) - 0x00000000c0074780 _erodata = . + 0x00000000c00749e0 _erodata = . -.srodata.cst8 0x00000000c0074780 0x1e8 - .srodata.cst8 0x00000000c0074780 0x8 .obj/qjs.o - .srodata.cst8 0x00000000c0074788 0xe0 .obj/quickjs.o +.srodata.cst8 0x00000000c00749e0 0x1e8 + .srodata.cst8 0x00000000c00749e0 0x8 .obj/qjs.o + .srodata.cst8 0x00000000c00749e8 0xe0 .obj/quickjs.o 0xe8 (size before relaxing) - .srodata.cst8 0x00000000c0074868 0x8 .obj/libunicode.o - .srodata.cst8 0x00000000c0074870 0x8 .obj/quickjs-libc.o - .srodata.cst8 0x00000000c0074878 0x18 .obj/libbf.o - .srodata.cst8 0x00000000c0074890 0x20 ../apps/import/libs/libc.a(lib_dtoa_engine.o) + .srodata.cst8 0x00000000c0074ac8 0x8 .obj/libunicode.o + .srodata.cst8 0x00000000c0074ad0 0x8 .obj/quickjs-libc.o + .srodata.cst8 0x00000000c0074ad8 0x18 .obj/libbf.o + .srodata.cst8 0x00000000c0074af0 0x20 ../apps/import/libs/libc.a(lib_dtoa_engine.o) 0x28 (size before relaxing) - .srodata.cst8 0x00000000c00748b0 0x10 ../apps/import/libs/libc.a(lib_strtold.o) + .srodata.cst8 0x00000000c0074b10 0x10 ../apps/import/libs/libc.a(lib_strtold.o) 0x18 (size before relaxing) - .srodata.cst8 0x00000000c00748c0 0x8 ../apps/import/libs/libm.a(lib_acos.o) - .srodata.cst8 0x00000000c00748c8 0x10 ../apps/import/libs/libm.a(lib_asin.o) + .srodata.cst8 0x00000000c0074b20 0x8 ../apps/import/libs/libm.a(lib_acos.o) + .srodata.cst8 0x00000000c0074b28 0x10 ../apps/import/libs/libm.a(lib_asin.o) 0x30 (size before relaxing) - .srodata.cst8 0x00000000c00748d8 0x8 ../apps/import/libs/libm.a(lib_atan.o) - .srodata.cst8 0x00000000c00748d8 0x10 ../apps/import/libs/libm.a(lib_atan2.o) + .srodata.cst8 0x00000000c0074b38 0x8 ../apps/import/libs/libm.a(lib_atan.o) + .srodata.cst8 0x00000000c0074b38 0x10 ../apps/import/libs/libm.a(lib_atan2.o) 0x18 (size before relaxing) - .srodata.cst8 0x00000000c00748e8 0x8 ../apps/import/libs/libm.a(lib_cos.o) - .srodata.cst8 0x00000000c00748e8 0x8 ../apps/import/libs/libm.a(lib_cosh.o) + .srodata.cst8 0x00000000c0074b48 0x8 ../apps/import/libs/libm.a(lib_cos.o) + .srodata.cst8 0x00000000c0074b48 0x8 ../apps/import/libs/libm.a(lib_cosh.o) 0x10 (size before relaxing) - .srodata.cst8 0x00000000c00748f0 0x8 ../apps/import/libs/libm.a(lib_exp.o) - .srodata.cst8 0x00000000c00748f0 0x18 ../apps/import/libs/libm.a(lib_log.o) + .srodata.cst8 0x00000000c0074b50 0x8 ../apps/import/libs/libm.a(lib_exp.o) + .srodata.cst8 0x00000000c0074b50 0x18 ../apps/import/libs/libm.a(lib_log.o) 0x28 (size before relaxing) - .srodata.cst8 0x00000000c0074908 0x8 ../apps/import/libs/libm.a(lib_log10.o) - .srodata.cst8 0x00000000c0074910 0x8 ../apps/import/libs/libm.a(lib_log2.o) - .srodata.cst8 0x00000000c0074918 0x8 ../apps/import/libs/libm.a(lib_modf.o) + .srodata.cst8 0x00000000c0074b68 0x8 ../apps/import/libs/libm.a(lib_log10.o) + .srodata.cst8 0x00000000c0074b70 0x8 ../apps/import/libs/libm.a(lib_log2.o) + .srodata.cst8 0x00000000c0074b78 0x8 ../apps/import/libs/libm.a(lib_modf.o) 0x10 (size before relaxing) - .srodata.cst8 0x00000000c0074920 0x10 ../apps/import/libs/libm.a(lib_sin.o) + .srodata.cst8 0x00000000c0074b80 0x10 ../apps/import/libs/libm.a(lib_sin.o) 0x28 (size before relaxing) - .srodata.cst8 0x00000000c0074930 0x10 ../apps/import/libs/libm.a(lib_sinh.o) + .srodata.cst8 0x00000000c0074b90 0x10 ../apps/import/libs/libm.a(lib_sinh.o) 0x20 (size before relaxing) - .srodata.cst8 0x00000000c0074940 0x10 ../apps/import/libs/libm.a(lib_sqrt.o) - .srodata.cst8 0x00000000c0074940 0x8 ../apps/import/libs/libm.a(lib_tanh.o) - .srodata.cst8 0x00000000c0074940 0x8 ../apps/import/libs/libm.a(lib_asinh.o) + .srodata.cst8 0x00000000c0074ba0 0x10 ../apps/import/libs/libm.a(lib_sqrt.o) + .srodata.cst8 0x00000000c0074ba0 0x8 ../apps/import/libs/libm.a(lib_tanh.o) + .srodata.cst8 0x00000000c0074ba0 0x8 ../apps/import/libs/libm.a(lib_asinh.o) 0x18 (size before relaxing) - .srodata.cst8 0x00000000c0074948 0x8 ../apps/import/libs/libm.a(lib_acosh.o) - .srodata.cst8 0x00000000c0074948 0x8 ../apps/import/libs/libm.a(lib_atanh.o) + .srodata.cst8 0x00000000c0074ba8 0x8 ../apps/import/libs/libm.a(lib_acosh.o) + .srodata.cst8 0x00000000c0074ba8 0x8 ../apps/import/libs/libm.a(lib_atanh.o) 0x20 (size before relaxing) - .srodata.cst8 0x00000000c0074950 0x8 ../apps/import/libs/libm.a(lib_cbrt.o) + .srodata.cst8 0x00000000c0074bb0 0x8 ../apps/import/libs/libm.a(lib_cbrt.o) 0x10 (size before relaxing) - .srodata.cst8 0x00000000c0074958 0x10 ../apps/import/libs/libm.a(lib_libexpi.o) - .srodata.cst8 0x00000000c0074958 0x8 ../apps/import/libs/libm.a(lib_expm1.o) - .srodata.cst8 0x00000000c0074958 0x8 ../apps/import/libs/libm.a(lib_ceil.o) - .srodata.cst8 0x00000000c0074958 0x8 ../apps/import/libs/libm.a(lib_floor.o) - .srodata.cst8 0x00000000c0074958 0x8 ../apps/import/libs/libm.a(lib_round.o) + .srodata.cst8 0x00000000c0074bb8 0x10 ../apps/import/libs/libm.a(lib_libexpi.o) + .srodata.cst8 0x00000000c0074bb8 0x8 ../apps/import/libs/libm.a(lib_expm1.o) + .srodata.cst8 0x00000000c0074bb8 0x8 ../apps/import/libs/libm.a(lib_ceil.o) + .srodata.cst8 0x00000000c0074bb8 0x8 ../apps/import/libs/libm.a(lib_floor.o) + .srodata.cst8 0x00000000c0074bb8 0x8 ../apps/import/libs/libm.a(lib_round.o) 0x20 (size before relaxing) - .srodata.cst8 0x00000000c0074960 0x8 ../apps/import/libs/libm.a(lib_trunc.o) + .srodata.cst8 0x00000000c0074bc0 0x8 ../apps/import/libs/libm.a(lib_trunc.o) .srodata.qjsc_repl_size - 0x00000000c0074968 0x4 + 0x00000000c0074bc8 0x4 .srodata.qjsc_repl_size - 0x00000000c0074968 0x4 .obj/repl.o - 0x00000000c0074968 qjsc_repl_size + 0x00000000c0074bc8 0x4 .obj/repl.o + 0x00000000c0074bc8 qjsc_repl_size -.srodata.CSWTCH.3956 - 0x00000000c0074970 0x4 - .srodata.CSWTCH.3956 - 0x00000000c0074970 0x4 .obj/quickjs.o +.srodata.CSWTCH.3972 + 0x00000000c0074bd0 0x4 + .srodata.CSWTCH.3972 + 0x00000000c0074bd0 0x4 .obj/quickjs.o -.srodata.CSWTCH.5066 - 0x00000000c0074978 0x4 - .srodata.CSWTCH.5066 - 0x00000000c0074978 0x4 .obj/quickjs.o +.srodata.CSWTCH.5082 + 0x00000000c0074bd8 0x4 + .srodata.CSWTCH.5082 + 0x00000000c0074bd8 0x4 .obj/quickjs.o .srodata.func_kind_to_class_id - 0x00000000c0074980 0x8 + 0x00000000c0074be0 0x8 .srodata.func_kind_to_class_id - 0x00000000c0074980 0x8 .obj/quickjs.o + 0x00000000c0074be0 0x8 .obj/quickjs.o .srodata.js_map_proto_funcs_count - 0x00000000c0074988 0x6 + 0x00000000c0074be8 0x6 .srodata.js_map_proto_funcs_count - 0x00000000c0074988 0x6 .obj/quickjs.o + 0x00000000c0074be8 0x6 .obj/quickjs.o .srodata.char_range_d - 0x00000000c0074990 0x6 + 0x00000000c0074bf0 0x6 .srodata.char_range_d - 0x00000000c0074990 0x6 .obj/libregexp.o + 0x00000000c0074bf0 0x6 .obj/libregexp.o .srodata.unicode_prop_ASCII_Hex_Digit_table - 0x00000000c0074998 0x5 + 0x00000000c0074bf8 0x5 .srodata.unicode_prop_ASCII_Hex_Digit_table - 0x00000000c0074998 0x5 .obj/libunicode.o + 0x00000000c0074bf8 0x5 .obj/libunicode.o .srodata.unicode_prop_Emoji_Modifier_table - 0x00000000c00749a0 0x4 + 0x00000000c0074c00 0x4 .srodata.unicode_prop_Emoji_Modifier_table - 0x00000000c00749a0 0x4 .obj/libunicode.o + 0x00000000c0074c00 0x4 .obj/libunicode.o .srodata.unicode_prop_IDS_Binary_Operator_table - 0x00000000c00749a8 0x5 + 0x00000000c0074c08 0x5 .srodata.unicode_prop_IDS_Binary_Operator_table - 0x00000000c00749a8 0x5 .obj/libunicode.o + 0x00000000c0074c08 0x5 .obj/libunicode.o .srodata.unicode_prop_IDS_Trinary_Operator_table - 0x00000000c00749b0 0x4 + 0x00000000c0074c10 0x4 .srodata.unicode_prop_IDS_Trinary_Operator_table - 0x00000000c00749b0 0x4 .obj/libunicode.o + 0x00000000c0074c10 0x4 .obj/libunicode.o .srodata.unicode_prop_Join_Control_table - 0x00000000c00749b8 0x4 + 0x00000000c0074c18 0x4 .srodata.unicode_prop_Join_Control_table - 0x00000000c00749b8 0x4 .obj/libunicode.o + 0x00000000c0074c18 0x4 .obj/libunicode.o .srodata.unicode_prop_Regional_Indicator_table - 0x00000000c00749c0 0x4 + 0x00000000c0074c20 0x4 .srodata.unicode_prop_Regional_Indicator_table - 0x00000000c00749c0 0x4 .obj/libunicode.o + 0x00000000c0074c20 0x4 .obj/libunicode.o .srodata.unicode_short_table.0 - 0x00000000c00749c8 0x4 + 0x00000000c0074c28 0x4 .srodata.unicode_short_table.0 - 0x00000000c00749c8 0x4 .obj/libunicode.o + 0x00000000c0074c28 0x4 .obj/libunicode.o .srodata.utf8_first_code_mask - 0x00000000c00749d0 0x5 + 0x00000000c0074c30 0x5 .srodata.utf8_first_code_mask - 0x00000000c00749d0 0x5 .obj/cutils.o + 0x00000000c0074c30 0x5 .obj/cutils.o .srodata.__FUNCTION__.0 - 0x00000000c00749d8 0x8 + 0x00000000c0074c38 0x8 .srodata.__FUNCTION__.0 - 0x00000000c00749d8 0x8 ../apps/import/libs/libmm.a(mm_free.o) + 0x00000000c0074c38 0x8 ../apps/import/libs/libmm.a(mm_free.o) .srodata.g_nullstring - 0x00000000c00749e0 0x7 + 0x00000000c0074c40 0x7 .srodata.g_nullstring - 0x00000000c00749e0 0x7 ../apps/import/libs/libc.a(lib_libvsprintf.o) + 0x00000000c0074c40 0x7 ../apps/import/libs/libc.a(lib_libvsprintf.o) .srodata.CSWTCH.70 - 0x00000000c00749e8 0x3 + 0x00000000c0074c48 0x3 .srodata.CSWTCH.70 - 0x00000000c00749e8 0x3 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0074c48 0x3 ../apps/import/libs/libc.a(lib_strtold.o) .srodata.CSWTCH.71 - 0x00000000c00749f0 0x6 + 0x00000000c0074c50 0x6 .srodata.CSWTCH.71 - 0x00000000c00749f0 0x6 ../apps/import/libs/libc.a(lib_strtold.o) + 0x00000000c0074c50 0x6 ../apps/import/libs/libc.a(lib_strtold.o) -.eh_frame 0x00000000c00749f8 0x6c - .eh_frame 0x00000000c00749f8 0x28 ../apps/import/libs/libgcc.a(_divdi3.o) - .eh_frame 0x00000000c0074a20 0x18 ../apps/import/libs/libgcc.a(_moddi3.o) +.eh_frame 0x00000000c0074c58 0x6c + .eh_frame 0x00000000c0074c58 0x28 ../apps/import/libs/libgcc.a(_divdi3.o) + .eh_frame 0x00000000c0074c80 0x18 ../apps/import/libs/libgcc.a(_moddi3.o) 0x28 (size before relaxing) - .eh_frame 0x00000000c0074a38 0x18 ../apps/import/libs/libgcc.a(_udivdi3.o) + .eh_frame 0x00000000c0074c98 0x18 ../apps/import/libs/libgcc.a(_udivdi3.o) 0x28 (size before relaxing) - .eh_frame 0x00000000c0074a50 0x14 ../apps/import/libs/libgcc.a(_umoddi3.o) + .eh_frame 0x00000000c0074cb0 0x14 ../apps/import/libs/libgcc.a(_umoddi3.o) 0x28 (size before relaxing) -.rela.dyn 0x00000000c0074a68 0x0 +.rela.dyn 0x00000000c0074cc8 0x0 .rela.sdata.__dso_handle - 0x00000000c0074a68 0x0 ../apps/import/startup/crt0.o + 0x00000000c0074cc8 0x0 ../apps/import/startup/crt0.o 0x00000000c0101000 . = 0xc0101000 .data 0x00000000c0101000 0x98 @@ -7925,513 +7932,513 @@ Linker script and memory map .debug_abbrev 0x00000000000129bb 0x15a /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) .debug_abbrev 0x0000000000012b15 0xc8 ../apps/import/libs/libmm.a(umm_zalloc.o) -.debug_info 0x0000000000000000 0xea819 +.debug_info 0x0000000000000000 0xeac5a *(.debug_info) .debug_info 0x0000000000000000 0x26e ../apps/import/startup/crt0.o .debug_info 0x000000000000026e 0x2236 .obj/qjs.o .debug_info 0x00000000000024a4 0xee .obj/repl.o - .debug_info 0x0000000000002592 0x8b6d1 .obj/quickjs.o - .debug_info 0x000000000008dc63 0x4cbb .obj/libregexp.o - .debug_info 0x000000000009291e 0x454b .obj/libunicode.o - .debug_info 0x0000000000096e69 0x17b6 .obj/cutils.o - .debug_info 0x000000000009861f 0xedc9 .obj/quickjs-libc.o - .debug_info 0x00000000000a73e8 0xf43e .obj/libbf.o - .debug_info 0x00000000000b6826 0x2151 .obj/arch_atomic.o - .debug_info 0x00000000000b8977 0x51f .obj/stub.o - .debug_info 0x00000000000b8e96 0x20b ../apps/import/libs/libmm.a(umm_free.o) - .debug_info 0x00000000000b90a1 0xf8 ../apps/import/libs/libmm.a(umm_malloc.o) - .debug_info 0x00000000000b9199 0x294 ../apps/import/libs/libmm.a(umm_memalign.o) - .debug_info 0x00000000000b942d 0x294 ../apps/import/libs/libmm.a(umm_realloc.o) - .debug_info 0x00000000000b96c1 0x364 ../apps/import/libs/libmm.a(umm_sbrk.o) - .debug_info 0x00000000000b9a25 0x40a ../apps/import/libs/libmm.a(mm_brkaddr.o) - .debug_info 0x00000000000b9e2f 0x4c1 ../apps/import/libs/libmm.a(mm_extend.o) - .debug_info 0x00000000000ba2f0 0x6b7 ../apps/import/libs/libmm.a(mm_free.o) - .debug_info 0x00000000000ba9a7 0x660 ../apps/import/libs/libmm.a(mm_memalign.o) - .debug_info 0x00000000000bb007 0x6db ../apps/import/libs/libmm.a(mm_realloc.o) - .debug_info 0x00000000000bb6e2 0x3b6 ../apps/import/libs/libmm.a(mm_heapmember.o) - .debug_info 0x00000000000bba98 0x2fb ../apps/import/libs/libmm.a(umm_initialize.o) - .debug_info 0x00000000000bbd93 0x6fd ../apps/import/libs/libmm.a(mm_initialize.o) - .debug_info 0x00000000000bc490 0x46a ../apps/import/libs/libmm.a(mm_lock.o) - .debug_info 0x00000000000bc8fa 0x441 ../apps/import/libs/libmm.a(mm_addfreechunk.o) - .debug_info 0x00000000000bcd3b 0x129 ../apps/import/libs/libmm.a(mm_size2ndx.o) - .debug_info 0x00000000000bce64 0x476 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - .debug_info 0x00000000000bd2da 0x72b ../apps/import/libs/libmm.a(mm_malloc.o) - .debug_info 0x00000000000bda05 0x129 ../apps/import/libs/libc.a(lib_assert.o) - .debug_info 0x00000000000bdb2e 0x1f0 ../apps/import/libs/libc.a(lib_opendir.o) - .debug_info 0x00000000000bdd1e 0x19f ../apps/import/libs/libc.a(lib_closedir.o) - .debug_info 0x00000000000bdebd 0x17d ../apps/import/libs/libc.a(lib_readdir.o) - .debug_info 0x00000000000be03a 0x56b ../apps/import/libs/libc.a(lib_errno.o) - .debug_info 0x00000000000be5a5 0xeab ../apps/import/libs/libc.a(lib_mutex.o) - .debug_info 0x00000000000bf450 0x1d6 ../apps/import/libs/libc.a(pthread_attr_init.o) - .debug_info 0x00000000000bf626 0x1ae ../apps/import/libs/libc.a(pthread_attr_destroy.o) - .debug_info 0x00000000000bf7d4 0x174 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) - .debug_info 0x00000000000bf948 0x2c0 ../apps/import/libs/libc.a(pthread_create.o) - .debug_info 0x00000000000bfc08 0xff ../apps/import/libs/libc.a(pthread_exit.o) - .debug_info 0x00000000000bfd07 0x230 ../apps/import/libs/libc.a(pthread_mutex_lock.o) - .debug_info 0x00000000000bff37 0x154 ../apps/import/libs/libc.a(clock_ticks2time.o) - .debug_info 0x00000000000c008b 0x133 ../apps/import/libs/libc.a(clock_timespec_add.o) - .debug_info 0x00000000000c01be 0x5e8 ../apps/import/libs/libc.a(task_setcancelstate.o) - .debug_info 0x00000000000c07a6 0x2e9 ../apps/import/libs/libc.a(sem_init.o) - .debug_info 0x00000000000c0a8f 0x2bc ../apps/import/libs/libc.a(sem_setprotocol.o) - .debug_info 0x00000000000c0d4b 0x258 ../apps/import/libs/libc.a(sem_getvalue.o) - .debug_info 0x00000000000c0fa3 0x390 ../apps/import/libs/libc.a(sig_signal.o) - .debug_info 0x00000000000c1333 0x495 ../apps/import/libs/libc.a(lib_fileno.o) - .debug_info 0x00000000000c17c8 0x142 ../apps/import/libs/libc.a(lib_printf.o) - .debug_info 0x00000000000c190a 0x291 ../apps/import/libs/libc.a(lib_sprintf.o) - .debug_info 0x00000000000c1b9b 0x2f7 ../apps/import/libs/libc.a(lib_snprintf.o) - .debug_info 0x00000000000c1e92 0x2f3 ../apps/import/libs/libc.a(lib_vsnprintf.o) - .debug_info 0x00000000000c2185 0x141 ../apps/import/libs/libc.a(lib_perror.o) - .debug_info 0x00000000000c22c6 0x153 ../apps/import/libs/libc.a(lib_putchar.o) - .debug_info 0x00000000000c2419 0x597 ../apps/import/libs/libc.a(lib_puts.o) - .debug_info 0x00000000000c29b0 0xb58 ../apps/import/libs/libc.a(lib_libvsprintf.o) - .debug_info 0x00000000000c3508 0x124 ../apps/import/libs/libc.a(lib_remove.o) - .debug_info 0x00000000000c362c 0xbc ../apps/import/libs/libc.a(lib_ultoa_invert.o) - .debug_info 0x00000000000c36e8 0x242 ../apps/import/libs/libc.a(lib_dtoa_engine.o) - .debug_info 0x00000000000c392a 0x110 ../apps/import/libs/libc.a(lib_dtoa_data.o) - .debug_info 0x00000000000c3a3a 0x80e ../apps/import/libs/libc.a(lib_fopen.o) - .debug_info 0x00000000000c4248 0x69c ../apps/import/libs/libc.a(lib_fclose.o) - .debug_info 0x00000000000c48e4 0x5b9 ../apps/import/libs/libc.a(lib_fread.o) - .debug_info 0x00000000000c4e9d 0x54d ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - .debug_info 0x00000000000c53ea 0x48c ../apps/import/libs/libc.a(lib_fseek.o) - .debug_info 0x00000000000c5876 0x4d3 ../apps/import/libs/libc.a(lib_fseeko.o) - .debug_info 0x00000000000c5d49 0x465 ../apps/import/libs/libc.a(lib_ftell.o) - .debug_info 0x00000000000c61ae 0x4dd ../apps/import/libs/libc.a(lib_ftello.o) - .debug_info 0x00000000000c668b 0x52d ../apps/import/libs/libc.a(lib_fgetc.o) - .debug_info 0x00000000000c6bb8 0x5c0 ../apps/import/libs/libc.a(lib_fwrite.o) - .debug_info 0x00000000000c7178 0x589 ../apps/import/libs/libc.a(lib_libfwrite.o) - .debug_info 0x00000000000c7701 0x563 ../apps/import/libs/libc.a(lib_fflush.o) - .debug_info 0x00000000000c7c64 0x696 ../apps/import/libs/libc.a(lib_libflushall.o) - .debug_info 0x00000000000c82fa 0x4d8 ../apps/import/libs/libc.a(lib_libfflush.o) - .debug_info 0x00000000000c87d2 0x4d5 ../apps/import/libs/libc.a(lib_putc.o) - .debug_info 0x00000000000c8ca7 0x573 ../apps/import/libs/libc.a(lib_fputc.o) - .debug_info 0x00000000000c921a 0x644 ../apps/import/libs/libc.a(lib_fputs.o) - .debug_info 0x00000000000c985e 0x4bc ../apps/import/libs/libc.a(lib_fprintf.o) - .debug_info 0x00000000000c9d1a 0x643 ../apps/import/libs/libc.a(lib_vfprintf.o) - .debug_info 0x00000000000ca35d 0x444 ../apps/import/libs/libc.a(lib_feof.o) - .debug_info 0x00000000000ca7a1 0x444 ../apps/import/libs/libc.a(lib_ferror.o) - .debug_info 0x00000000000cabe5 0x4e4 ../apps/import/libs/libc.a(lib_clearerr.o) - .debug_info 0x00000000000cb0c9 0x50e ../apps/import/libs/libc.a(lib_tmpfile.o) - .debug_info 0x00000000000cb5d7 0x4fc ../apps/import/libs/libc.a(lib_libfilelock.o) - .debug_info 0x00000000000cbad3 0x55d ../apps/import/libs/libc.a(lib_libgetstreams.o) - .debug_info 0x00000000000cc030 0xb6 ../apps/import/libs/libc.a(lib_abort.o) - .debug_info 0x00000000000cc0e6 0xd9 ../apps/import/libs/libc.a(lib_atoi.o) - .debug_info 0x00000000000cc1bf 0x1da ../apps/import/libs/libc.a(lib_exit.o) - .debug_info 0x00000000000cc399 0x441 ../apps/import/libs/libc.a(lib_realpath.o) - .debug_info 0x00000000000cc7da 0x1ad ../apps/import/libs/libc.a(lib_strtol.o) - .debug_info 0x00000000000cc987 0x1fc ../apps/import/libs/libc.a(lib_strtoul.o) - .debug_info 0x00000000000ccb83 0xc15 ../apps/import/libs/libc.a(lib_strtold.o) - .debug_info 0x00000000000cd798 0x10d ../apps/import/libs/libc.a(lib_checkbase.o) - .debug_info 0x00000000000cd8a5 0x12e ../apps/import/libs/libc.a(lib_mkstemp.o) - .debug_info 0x00000000000cd9d3 0x1a5 ../apps/import/libs/libc.a(lib_atexit.o) - .debug_info 0x00000000000cdb78 0x37e ../apps/import/libs/libc.a(lib_memoutstream.o) - .debug_info 0x00000000000cdef6 0x2df ../apps/import/libs/libc.a(lib_nulloutstream.o) - .debug_info 0x00000000000ce1d5 0x18d ../apps/import/libs/libc.a(lib_libnoflush.o) - .debug_info 0x00000000000ce362 0x789 ../apps/import/libs/libc.a(lib_stdoutstream.o) - .debug_info 0x00000000000ceaeb 0xd5 ../apps/import/libs/libc.a(lib_flsl.o) - .debug_info 0x00000000000cebc0 0xf7 ../apps/import/libs/libc.a(lib_isbasedigit.o) - .debug_info 0x00000000000cecb7 0xee ../apps/import/libs/libc.a(lib_skipspace.o) - .debug_info 0x00000000000ceda5 0x109 ../apps/import/libs/libc.a(lib_strcat.o) - .debug_info 0x00000000000ceeae 0x177 ../apps/import/libs/libc.a(lib_strdup.o) - .debug_info 0x00000000000cf025 0x15e ../apps/import/libs/libc.a(lib_strerror.o) - .debug_info 0x00000000000cf183 0xdd ../apps/import/libs/libc.a(lib_strrchr.o) - .debug_info 0x00000000000cf260 0x110 ../apps/import/libs/libc.a(lib_strspn.o) - .debug_info 0x00000000000cf370 0x108 ../apps/import/libs/libc.a(lib_memchr.o) - .debug_info 0x00000000000cf478 0x111 ../apps/import/libs/libc.a(lib_memcmp.o) - .debug_info 0x00000000000cf589 0x115 ../apps/import/libs/libc.a(lib_memmove.o) - .debug_info 0x00000000000cf69e 0x216 ../apps/import/libs/libc.a(lib_memset.o) - .debug_info 0x00000000000cf8b4 0xcf ../apps/import/libs/libc.a(lib_strchr.o) - .debug_info 0x00000000000cf983 0xe5 ../apps/import/libs/libc.a(lib_strcmp.o) - .debug_info 0x00000000000cfa68 0xe3 ../apps/import/libs/libc.a(lib_strcpy.o) - .debug_info 0x00000000000cfb4b 0x11b ../apps/import/libs/libc.a(lib_strlcpy.o) - .debug_info 0x00000000000cfc66 0xe4 ../apps/import/libs/libc.a(lib_strlen.o) - .debug_info 0x00000000000cfd4a 0xf4 ../apps/import/libs/libc.a(lib_strnlen.o) - .debug_info 0x00000000000cfe3e 0x115 ../apps/import/libs/libc.a(lib_memcpy.o) - .debug_info 0x00000000000cff53 0x1c7 ../apps/import/libs/libc.a(lib_syslog.o) - .debug_info 0x00000000000d011a 0xdc ../apps/import/libs/libc.a(lib_setlogmask.o) - .debug_info 0x00000000000d01f6 0x162 ../apps/import/libs/libc.a(lib_isatty.o) - .debug_info 0x00000000000d0358 0x189 ../apps/import/libs/libc.a(lib_tcgetattr.o) - .debug_info 0x00000000000d04e1 0x1ed ../apps/import/libs/libc.a(lib_tcsetattr.o) - .debug_info 0x00000000000d06ce 0x1dd ../apps/import/libs/libc.a(lib_gettimeofday.o) - .debug_info 0x00000000000d08ab 0x18b ../apps/import/libs/libc.a(lib_nanosleep.o) - .debug_info 0x00000000000d0a36 0x471 ../apps/import/libs/libc.a(lib_gmtimer.o) - .debug_info 0x00000000000d0ea7 0x551 ../apps/import/libs/libc.a(task_getinfo.o) - .debug_info 0x00000000000d13f8 0xf7 ../apps/import/libs/libc.a(lib_sysconf.o) - .debug_info 0x00000000000d14ef 0x13f ../apps/import/libs/libc.a(lib_getoptindp.o) - .debug_info 0x00000000000d162e 0x2fc ../apps/import/libs/libc.a(lib_utimes.o) - .debug_info 0x00000000000d192a 0xca ../apps/import/libs/libc.a(lib_setuid.o) - .debug_info 0x00000000000d19f4 0xca ../apps/import/libs/libc.a(lib_setgid.o) - .debug_info 0x00000000000d1abe 0x425 ../apps/import/libs/libc.a(lib_chdir.o) - .debug_info 0x00000000000d1ee3 0x1ca ../apps/import/libs/libc.a(lib_getcwd.o) - .debug_info 0x00000000000d20ad 0xda ../apps/import/libs/libc.a(lib_fork.o) - .debug_info 0x00000000000d2187 0xd1 ../apps/import/libs/libc.a(lib_isspace.o) - .debug_info 0x00000000000d2258 0xc3 ../apps/import/libs/libc.a(lib_isxdigit.o) - .debug_info 0x00000000000d231b 0x235 ../apps/import/libs/libc.a(lib_getfullpath.o) - .debug_info 0x00000000000d2550 0x1c2 ../apps/import/libs/libc.a(sig_addset.o) - .debug_info 0x00000000000d2712 0x13c ../apps/import/libs/libc.a(sig_emptyset.o) - .debug_info 0x00000000000d284e 0x66c ../apps/import/libs/libc.a(lib_mktemp.o) - .debug_info 0x00000000000d2eba 0x158 ../apps/import/libs/libc.a(lib_strlcat.o) - .debug_info 0x00000000000d3012 0xd4 ../apps/import/libs/libc.a(lib_tcflush.o) - .debug_info 0x00000000000d30e6 0xc9 ../apps/import/libs/libc.a(lib_tcdrain.o) - .debug_info 0x00000000000d31af 0x10f ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - .debug_info 0x00000000000d32be 0xa0 ../apps/import/libs/libc.a(lib_isleapyear.o) - .debug_info 0x00000000000d335e 0xc0 ../apps/import/libs/libc.a(lib_dayofweek.o) - .debug_info 0x00000000000d341e 0x121 ../apps/import/libs/libc.a(lib_getoptvars.o) - .debug_info 0x00000000000d353f 0x534 ../apps/import/libs/libproxies.a(PROXY__assert.o) - .debug_info 0x00000000000d3a73 0x478 ../apps/import/libs/libproxies.a(PROXY__exit.o) - .debug_info 0x00000000000d3eeb 0x468 ../apps/import/libs/libproxies.a(PROXY_clock.o) - .debug_info 0x00000000000d4353 0x511 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) - .debug_info 0x00000000000d4864 0x595 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) - .debug_info 0x00000000000d4df9 0x47c ../apps/import/libs/libproxies.a(PROXY_close.o) - .debug_info 0x00000000000d5275 0x47c ../apps/import/libs/libproxies.a(PROXY_dup.o) - .debug_info 0x00000000000d56f1 0x4b3 ../apps/import/libs/libproxies.a(PROXY_dup2.o) - .debug_info 0x00000000000d5ba4 0x506 ../apps/import/libs/libproxies.a(PROXY_execve.o) - .debug_info 0x00000000000d60aa 0x50e ../apps/import/libs/libproxies.a(PROXY_fcntl.o) - .debug_info 0x00000000000d65b8 0x450 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) - .debug_info 0x00000000000d6a08 0x48c ../apps/import/libs/libproxies.a(PROXY_getenv.o) - .debug_info 0x00000000000d6e94 0x451 ../apps/import/libs/libproxies.a(PROXY_getpid.o) - .debug_info 0x00000000000d72e5 0x451 ../apps/import/libs/libproxies.a(PROXY_gettid.o) - .debug_info 0x00000000000d7736 0x50e ../apps/import/libs/libproxies.a(PROXY_ioctl.o) - .debug_info 0x00000000000d7c44 0x4bf ../apps/import/libs/libproxies.a(PROXY_kill.o) - .debug_info 0x00000000000d8103 0x50e ../apps/import/libs/libproxies.a(PROXY_lseek.o) - .debug_info 0x00000000000d8611 0x67a ../apps/import/libs/libproxies.a(PROXY_lstat.o) - .debug_info 0x00000000000d8c8b 0x4c9 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) - .debug_info 0x00000000000d9154 0x67f ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) - .debug_info 0x00000000000d97d3 0x49a ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) - .debug_info 0x00000000000d9c6d 0x52e ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) - .debug_info 0x00000000000da19b 0x646 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) - .debug_info 0x00000000000da7e1 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) - .debug_info 0x00000000000dad54 0x574 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) - .debug_info 0x00000000000db2c8 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) - .debug_info 0x00000000000db83b 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) - .debug_info 0x00000000000dbdae 0x527 ../apps/import/libs/libproxies.a(PROXY_open.o) - .debug_info 0x00000000000dc2d5 0x4c8 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) - .debug_info 0x00000000000dc79d 0x5e1 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) - .debug_info 0x00000000000dcd7e 0x650 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) - .debug_info 0x00000000000dd3ce 0x66f ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) - .debug_info 0x00000000000dda3d 0x5e1 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) - .debug_info 0x00000000000de01e 0x510 ../apps/import/libs/libproxies.a(PROXY_read.o) - .debug_info 0x00000000000de52e 0x4d2 ../apps/import/libs/libproxies.a(PROXY_rename.o) - .debug_info 0x00000000000dea00 0x487 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) - .debug_info 0x00000000000dee87 0x453 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) - .debug_info 0x00000000000df2da 0x453 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) - .debug_info 0x00000000000df72d 0x601 ../apps/import/libs/libproxies.a(PROXY_select.o) - .debug_info 0x00000000000dfd2e 0x4f4 ../apps/import/libs/libproxies.a(PROXY_setenv.o) - .debug_info 0x00000000000e0222 0x6aa ../apps/import/libs/libproxies.a(PROXY_sigaction.o) - .debug_info 0x00000000000e08cc 0x67a ../apps/import/libs/libproxies.a(PROXY_stat.o) - .debug_info 0x00000000000e0f46 0x487 ../apps/import/libs/libproxies.a(PROXY_unlink.o) - .debug_info 0x00000000000e13cd 0x486 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) - .debug_info 0x00000000000e1853 0x465 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) - .debug_info 0x00000000000e1cb8 0x514 ../apps/import/libs/libproxies.a(PROXY_utimens.o) - .debug_info 0x00000000000e21cc 0x4fb ../apps/import/libs/libproxies.a(PROXY_waitpid.o) - .debug_info 0x00000000000e26c7 0x515 ../apps/import/libs/libproxies.a(PROXY_write.o) - .debug_info 0x00000000000e2bdc 0x170 ../apps/import/libs/libgcc.a(_clzsi2.o) - .debug_info 0x00000000000e2d4c 0x194 ../apps/import/libs/libgcc.a(_ctzsi2.o) - .debug_info 0x00000000000e2ee0 0x848 ../apps/import/libs/libgcc.a(_divdi3.o) - .debug_info 0x00000000000e3728 0x8b7 ../apps/import/libs/libgcc.a(_moddi3.o) - .debug_info 0x00000000000e3fdf 0x80e ../apps/import/libs/libgcc.a(_udivdi3.o) - .debug_info 0x00000000000e47ed 0x87c ../apps/import/libs/libgcc.a(_umoddi3.o) - .debug_info 0x00000000000e5069 0x667 ../apps/import/libs/libgcc.a(addtf3.o) - .debug_info 0x00000000000e56d0 0x811 ../apps/import/libs/libgcc.a(divtf3.o) - .debug_info 0x00000000000e5ee1 0x2bb ../apps/import/libs/libgcc.a(eqtf2.o) - .debug_info 0x00000000000e619c 0x29d ../apps/import/libs/libgcc.a(getf2.o) - .debug_info 0x00000000000e6439 0x8d5 ../apps/import/libs/libgcc.a(multf3.o) - .debug_info 0x00000000000e6d0e 0x65f ../apps/import/libs/libgcc.a(subtf3.o) - .debug_info 0x00000000000e736d 0x2ee ../apps/import/libs/libgcc.a(floatsitf.o) - .debug_info 0x00000000000e765b 0x2f9 ../apps/import/libs/libgcc.a(floatunsitf.o) - .debug_info 0x00000000000e7954 0x2e6 ../apps/import/libs/libgcc.a(floatditf.o) - .debug_info 0x00000000000e7c3a 0x2e5 ../apps/import/libs/libgcc.a(extenddftf2.o) - .debug_info 0x00000000000e7f1f 0x30f ../apps/import/libs/libgcc.a(trunctfsf2.o) - .debug_info 0x00000000000e822e 0x30b ../apps/import/libs/libgcc.a(trunctfdf2.o) - .debug_info 0x00000000000e8539 0xf7 ../apps/import/libs/libgcc.a(_clz.o) - .debug_info 0x00000000000e8630 0x8f ../apps/import/libs/libm.a(lib_acos.o) - .debug_info 0x00000000000e86bf 0x1d2 ../apps/import/libs/libm.a(lib_asin.o) - .debug_info 0x00000000000e8891 0xf2 ../apps/import/libs/libm.a(lib_atan.o) - .debug_info 0x00000000000e8983 0xe7 ../apps/import/libs/libm.a(lib_atan2.o) - .debug_info 0x00000000000e8a6a 0x9b ../apps/import/libs/libm.a(lib_cos.o) - .debug_info 0x00000000000e8b05 0x8f ../apps/import/libs/libm.a(lib_cosh.o) - .debug_info 0x00000000000e8b94 0x15b ../apps/import/libs/libm.a(lib_exp.o) - .debug_info 0x00000000000e8cef 0x65 ../apps/import/libs/libm.a(lib_fabs.o) - .debug_info 0x00000000000e8d54 0xb3 ../apps/import/libs/libm.a(lib_fmod.o) - .debug_info 0x00000000000e8e07 0xf1 ../apps/import/libs/libm.a(lib_log.o) - .debug_info 0x00000000000e8ef8 0x8f ../apps/import/libs/libm.a(lib_log10.o) - .debug_info 0x00000000000e8f87 0x8f ../apps/import/libs/libm.a(lib_log2.o) - .debug_info 0x00000000000e9016 0xd4 ../apps/import/libs/libm.a(lib_modf.o) - .debug_info 0x00000000000e90ea 0xd5 ../apps/import/libs/libm.a(lib_pow.o) - .debug_info 0x00000000000e91bf 0x14f ../apps/import/libs/libm.a(lib_sin.o) - .debug_info 0x00000000000e930e 0xa0 ../apps/import/libs/libm.a(lib_sinh.o) - .debug_info 0x00000000000e93ae 0x29f ../apps/import/libs/libm.a(lib_sqrt.o) - .debug_info 0x00000000000e964d 0xb4 ../apps/import/libs/libm.a(lib_tan.o) - .debug_info 0x00000000000e9701 0xac ../apps/import/libs/libm.a(lib_tanh.o) - .debug_info 0x00000000000e97ad 0xd6 ../apps/import/libs/libm.a(lib_asinh.o) - .debug_info 0x00000000000e9883 0x9e ../apps/import/libs/libm.a(lib_acosh.o) - .debug_info 0x00000000000e9921 0xdf ../apps/import/libs/libm.a(lib_atanh.o) - .debug_info 0x00000000000e9a00 0x101 ../apps/import/libs/libm.a(lib_cbrt.o) - .debug_info 0x00000000000e9b01 0x111 ../apps/import/libs/libm.a(lib_libexpi.o) - .debug_info 0x00000000000e9c12 0xe4 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) - .debug_info 0x00000000000e9cf6 0x8f ../apps/import/libs/libm.a(lib_expm1.o) - .debug_info 0x00000000000e9d85 0x73 ../apps/import/libs/libm.a(lib_fmax.o) - .debug_info 0x00000000000e9df8 0x73 ../apps/import/libs/libm.a(lib_fmin.o) - .debug_info 0x00000000000e9e6b 0xa0 ../apps/import/libs/libm.a(lib_ceil.o) - .debug_info 0x00000000000e9f0b 0xa0 ../apps/import/libs/libm.a(lib_floor.o) - .debug_info 0x00000000000e9fab 0xa1 ../apps/import/libs/libm.a(lib_round.o) - .debug_info 0x00000000000ea04c 0x119 ../apps/import/libs/libm.a(lib_trunc.o) - .debug_info 0x00000000000ea165 0x29d /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) - .debug_info 0x00000000000ea402 0x2e5 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) - .debug_info 0x00000000000ea6e7 0x132 ../apps/import/libs/libmm.a(umm_zalloc.o) + .debug_info 0x0000000000002592 0x8bb12 .obj/quickjs.o + .debug_info 0x000000000008e0a4 0x4cbb .obj/libregexp.o + .debug_info 0x0000000000092d5f 0x454b .obj/libunicode.o + .debug_info 0x00000000000972aa 0x17b6 .obj/cutils.o + .debug_info 0x0000000000098a60 0xedc9 .obj/quickjs-libc.o + .debug_info 0x00000000000a7829 0xf43e .obj/libbf.o + .debug_info 0x00000000000b6c67 0x2151 .obj/arch_atomic.o + .debug_info 0x00000000000b8db8 0x51f .obj/stub.o + .debug_info 0x00000000000b92d7 0x20b ../apps/import/libs/libmm.a(umm_free.o) + .debug_info 0x00000000000b94e2 0xf8 ../apps/import/libs/libmm.a(umm_malloc.o) + .debug_info 0x00000000000b95da 0x294 ../apps/import/libs/libmm.a(umm_memalign.o) + .debug_info 0x00000000000b986e 0x294 ../apps/import/libs/libmm.a(umm_realloc.o) + .debug_info 0x00000000000b9b02 0x364 ../apps/import/libs/libmm.a(umm_sbrk.o) + .debug_info 0x00000000000b9e66 0x40a ../apps/import/libs/libmm.a(mm_brkaddr.o) + .debug_info 0x00000000000ba270 0x4c1 ../apps/import/libs/libmm.a(mm_extend.o) + .debug_info 0x00000000000ba731 0x6b7 ../apps/import/libs/libmm.a(mm_free.o) + .debug_info 0x00000000000bade8 0x660 ../apps/import/libs/libmm.a(mm_memalign.o) + .debug_info 0x00000000000bb448 0x6db ../apps/import/libs/libmm.a(mm_realloc.o) + .debug_info 0x00000000000bbb23 0x3b6 ../apps/import/libs/libmm.a(mm_heapmember.o) + .debug_info 0x00000000000bbed9 0x2fb ../apps/import/libs/libmm.a(umm_initialize.o) + .debug_info 0x00000000000bc1d4 0x6fd ../apps/import/libs/libmm.a(mm_initialize.o) + .debug_info 0x00000000000bc8d1 0x46a ../apps/import/libs/libmm.a(mm_lock.o) + .debug_info 0x00000000000bcd3b 0x441 ../apps/import/libs/libmm.a(mm_addfreechunk.o) + .debug_info 0x00000000000bd17c 0x129 ../apps/import/libs/libmm.a(mm_size2ndx.o) + .debug_info 0x00000000000bd2a5 0x476 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + .debug_info 0x00000000000bd71b 0x72b ../apps/import/libs/libmm.a(mm_malloc.o) + .debug_info 0x00000000000bde46 0x129 ../apps/import/libs/libc.a(lib_assert.o) + .debug_info 0x00000000000bdf6f 0x1f0 ../apps/import/libs/libc.a(lib_opendir.o) + .debug_info 0x00000000000be15f 0x19f ../apps/import/libs/libc.a(lib_closedir.o) + .debug_info 0x00000000000be2fe 0x17d ../apps/import/libs/libc.a(lib_readdir.o) + .debug_info 0x00000000000be47b 0x56b ../apps/import/libs/libc.a(lib_errno.o) + .debug_info 0x00000000000be9e6 0xeab ../apps/import/libs/libc.a(lib_mutex.o) + .debug_info 0x00000000000bf891 0x1d6 ../apps/import/libs/libc.a(pthread_attr_init.o) + .debug_info 0x00000000000bfa67 0x1ae ../apps/import/libs/libc.a(pthread_attr_destroy.o) + .debug_info 0x00000000000bfc15 0x174 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) + .debug_info 0x00000000000bfd89 0x2c0 ../apps/import/libs/libc.a(pthread_create.o) + .debug_info 0x00000000000c0049 0xff ../apps/import/libs/libc.a(pthread_exit.o) + .debug_info 0x00000000000c0148 0x230 ../apps/import/libs/libc.a(pthread_mutex_lock.o) + .debug_info 0x00000000000c0378 0x154 ../apps/import/libs/libc.a(clock_ticks2time.o) + .debug_info 0x00000000000c04cc 0x133 ../apps/import/libs/libc.a(clock_timespec_add.o) + .debug_info 0x00000000000c05ff 0x5e8 ../apps/import/libs/libc.a(task_setcancelstate.o) + .debug_info 0x00000000000c0be7 0x2e9 ../apps/import/libs/libc.a(sem_init.o) + .debug_info 0x00000000000c0ed0 0x2bc ../apps/import/libs/libc.a(sem_setprotocol.o) + .debug_info 0x00000000000c118c 0x258 ../apps/import/libs/libc.a(sem_getvalue.o) + .debug_info 0x00000000000c13e4 0x390 ../apps/import/libs/libc.a(sig_signal.o) + .debug_info 0x00000000000c1774 0x495 ../apps/import/libs/libc.a(lib_fileno.o) + .debug_info 0x00000000000c1c09 0x142 ../apps/import/libs/libc.a(lib_printf.o) + .debug_info 0x00000000000c1d4b 0x291 ../apps/import/libs/libc.a(lib_sprintf.o) + .debug_info 0x00000000000c1fdc 0x2f7 ../apps/import/libs/libc.a(lib_snprintf.o) + .debug_info 0x00000000000c22d3 0x2f3 ../apps/import/libs/libc.a(lib_vsnprintf.o) + .debug_info 0x00000000000c25c6 0x141 ../apps/import/libs/libc.a(lib_perror.o) + .debug_info 0x00000000000c2707 0x153 ../apps/import/libs/libc.a(lib_putchar.o) + .debug_info 0x00000000000c285a 0x597 ../apps/import/libs/libc.a(lib_puts.o) + .debug_info 0x00000000000c2df1 0xb58 ../apps/import/libs/libc.a(lib_libvsprintf.o) + .debug_info 0x00000000000c3949 0x124 ../apps/import/libs/libc.a(lib_remove.o) + .debug_info 0x00000000000c3a6d 0xbc ../apps/import/libs/libc.a(lib_ultoa_invert.o) + .debug_info 0x00000000000c3b29 0x242 ../apps/import/libs/libc.a(lib_dtoa_engine.o) + .debug_info 0x00000000000c3d6b 0x110 ../apps/import/libs/libc.a(lib_dtoa_data.o) + .debug_info 0x00000000000c3e7b 0x80e ../apps/import/libs/libc.a(lib_fopen.o) + .debug_info 0x00000000000c4689 0x69c ../apps/import/libs/libc.a(lib_fclose.o) + .debug_info 0x00000000000c4d25 0x5b9 ../apps/import/libs/libc.a(lib_fread.o) + .debug_info 0x00000000000c52de 0x54d ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + .debug_info 0x00000000000c582b 0x48c ../apps/import/libs/libc.a(lib_fseek.o) + .debug_info 0x00000000000c5cb7 0x4d3 ../apps/import/libs/libc.a(lib_fseeko.o) + .debug_info 0x00000000000c618a 0x465 ../apps/import/libs/libc.a(lib_ftell.o) + .debug_info 0x00000000000c65ef 0x4dd ../apps/import/libs/libc.a(lib_ftello.o) + .debug_info 0x00000000000c6acc 0x52d ../apps/import/libs/libc.a(lib_fgetc.o) + .debug_info 0x00000000000c6ff9 0x5c0 ../apps/import/libs/libc.a(lib_fwrite.o) + .debug_info 0x00000000000c75b9 0x589 ../apps/import/libs/libc.a(lib_libfwrite.o) + .debug_info 0x00000000000c7b42 0x563 ../apps/import/libs/libc.a(lib_fflush.o) + .debug_info 0x00000000000c80a5 0x696 ../apps/import/libs/libc.a(lib_libflushall.o) + .debug_info 0x00000000000c873b 0x4d8 ../apps/import/libs/libc.a(lib_libfflush.o) + .debug_info 0x00000000000c8c13 0x4d5 ../apps/import/libs/libc.a(lib_putc.o) + .debug_info 0x00000000000c90e8 0x573 ../apps/import/libs/libc.a(lib_fputc.o) + .debug_info 0x00000000000c965b 0x644 ../apps/import/libs/libc.a(lib_fputs.o) + .debug_info 0x00000000000c9c9f 0x4bc ../apps/import/libs/libc.a(lib_fprintf.o) + .debug_info 0x00000000000ca15b 0x643 ../apps/import/libs/libc.a(lib_vfprintf.o) + .debug_info 0x00000000000ca79e 0x444 ../apps/import/libs/libc.a(lib_feof.o) + .debug_info 0x00000000000cabe2 0x444 ../apps/import/libs/libc.a(lib_ferror.o) + .debug_info 0x00000000000cb026 0x4e4 ../apps/import/libs/libc.a(lib_clearerr.o) + .debug_info 0x00000000000cb50a 0x50e ../apps/import/libs/libc.a(lib_tmpfile.o) + .debug_info 0x00000000000cba18 0x4fc ../apps/import/libs/libc.a(lib_libfilelock.o) + .debug_info 0x00000000000cbf14 0x55d ../apps/import/libs/libc.a(lib_libgetstreams.o) + .debug_info 0x00000000000cc471 0xb6 ../apps/import/libs/libc.a(lib_abort.o) + .debug_info 0x00000000000cc527 0xd9 ../apps/import/libs/libc.a(lib_atoi.o) + .debug_info 0x00000000000cc600 0x1da ../apps/import/libs/libc.a(lib_exit.o) + .debug_info 0x00000000000cc7da 0x441 ../apps/import/libs/libc.a(lib_realpath.o) + .debug_info 0x00000000000ccc1b 0x1ad ../apps/import/libs/libc.a(lib_strtol.o) + .debug_info 0x00000000000ccdc8 0x1fc ../apps/import/libs/libc.a(lib_strtoul.o) + .debug_info 0x00000000000ccfc4 0xc15 ../apps/import/libs/libc.a(lib_strtold.o) + .debug_info 0x00000000000cdbd9 0x10d ../apps/import/libs/libc.a(lib_checkbase.o) + .debug_info 0x00000000000cdce6 0x12e ../apps/import/libs/libc.a(lib_mkstemp.o) + .debug_info 0x00000000000cde14 0x1a5 ../apps/import/libs/libc.a(lib_atexit.o) + .debug_info 0x00000000000cdfb9 0x37e ../apps/import/libs/libc.a(lib_memoutstream.o) + .debug_info 0x00000000000ce337 0x2df ../apps/import/libs/libc.a(lib_nulloutstream.o) + .debug_info 0x00000000000ce616 0x18d ../apps/import/libs/libc.a(lib_libnoflush.o) + .debug_info 0x00000000000ce7a3 0x789 ../apps/import/libs/libc.a(lib_stdoutstream.o) + .debug_info 0x00000000000cef2c 0xd5 ../apps/import/libs/libc.a(lib_flsl.o) + .debug_info 0x00000000000cf001 0xf7 ../apps/import/libs/libc.a(lib_isbasedigit.o) + .debug_info 0x00000000000cf0f8 0xee ../apps/import/libs/libc.a(lib_skipspace.o) + .debug_info 0x00000000000cf1e6 0x109 ../apps/import/libs/libc.a(lib_strcat.o) + .debug_info 0x00000000000cf2ef 0x177 ../apps/import/libs/libc.a(lib_strdup.o) + .debug_info 0x00000000000cf466 0x15e ../apps/import/libs/libc.a(lib_strerror.o) + .debug_info 0x00000000000cf5c4 0xdd ../apps/import/libs/libc.a(lib_strrchr.o) + .debug_info 0x00000000000cf6a1 0x110 ../apps/import/libs/libc.a(lib_strspn.o) + .debug_info 0x00000000000cf7b1 0x108 ../apps/import/libs/libc.a(lib_memchr.o) + .debug_info 0x00000000000cf8b9 0x111 ../apps/import/libs/libc.a(lib_memcmp.o) + .debug_info 0x00000000000cf9ca 0x115 ../apps/import/libs/libc.a(lib_memmove.o) + .debug_info 0x00000000000cfadf 0x216 ../apps/import/libs/libc.a(lib_memset.o) + .debug_info 0x00000000000cfcf5 0xcf ../apps/import/libs/libc.a(lib_strchr.o) + .debug_info 0x00000000000cfdc4 0xe5 ../apps/import/libs/libc.a(lib_strcmp.o) + .debug_info 0x00000000000cfea9 0xe3 ../apps/import/libs/libc.a(lib_strcpy.o) + .debug_info 0x00000000000cff8c 0x11b ../apps/import/libs/libc.a(lib_strlcpy.o) + .debug_info 0x00000000000d00a7 0xe4 ../apps/import/libs/libc.a(lib_strlen.o) + .debug_info 0x00000000000d018b 0xf4 ../apps/import/libs/libc.a(lib_strnlen.o) + .debug_info 0x00000000000d027f 0x115 ../apps/import/libs/libc.a(lib_memcpy.o) + .debug_info 0x00000000000d0394 0x1c7 ../apps/import/libs/libc.a(lib_syslog.o) + .debug_info 0x00000000000d055b 0xdc ../apps/import/libs/libc.a(lib_setlogmask.o) + .debug_info 0x00000000000d0637 0x162 ../apps/import/libs/libc.a(lib_isatty.o) + .debug_info 0x00000000000d0799 0x189 ../apps/import/libs/libc.a(lib_tcgetattr.o) + .debug_info 0x00000000000d0922 0x1ed ../apps/import/libs/libc.a(lib_tcsetattr.o) + .debug_info 0x00000000000d0b0f 0x1dd ../apps/import/libs/libc.a(lib_gettimeofday.o) + .debug_info 0x00000000000d0cec 0x18b ../apps/import/libs/libc.a(lib_nanosleep.o) + .debug_info 0x00000000000d0e77 0x471 ../apps/import/libs/libc.a(lib_gmtimer.o) + .debug_info 0x00000000000d12e8 0x551 ../apps/import/libs/libc.a(task_getinfo.o) + .debug_info 0x00000000000d1839 0xf7 ../apps/import/libs/libc.a(lib_sysconf.o) + .debug_info 0x00000000000d1930 0x13f ../apps/import/libs/libc.a(lib_getoptindp.o) + .debug_info 0x00000000000d1a6f 0x2fc ../apps/import/libs/libc.a(lib_utimes.o) + .debug_info 0x00000000000d1d6b 0xca ../apps/import/libs/libc.a(lib_setuid.o) + .debug_info 0x00000000000d1e35 0xca ../apps/import/libs/libc.a(lib_setgid.o) + .debug_info 0x00000000000d1eff 0x425 ../apps/import/libs/libc.a(lib_chdir.o) + .debug_info 0x00000000000d2324 0x1ca ../apps/import/libs/libc.a(lib_getcwd.o) + .debug_info 0x00000000000d24ee 0xda ../apps/import/libs/libc.a(lib_fork.o) + .debug_info 0x00000000000d25c8 0xd1 ../apps/import/libs/libc.a(lib_isspace.o) + .debug_info 0x00000000000d2699 0xc3 ../apps/import/libs/libc.a(lib_isxdigit.o) + .debug_info 0x00000000000d275c 0x235 ../apps/import/libs/libc.a(lib_getfullpath.o) + .debug_info 0x00000000000d2991 0x1c2 ../apps/import/libs/libc.a(sig_addset.o) + .debug_info 0x00000000000d2b53 0x13c ../apps/import/libs/libc.a(sig_emptyset.o) + .debug_info 0x00000000000d2c8f 0x66c ../apps/import/libs/libc.a(lib_mktemp.o) + .debug_info 0x00000000000d32fb 0x158 ../apps/import/libs/libc.a(lib_strlcat.o) + .debug_info 0x00000000000d3453 0xd4 ../apps/import/libs/libc.a(lib_tcflush.o) + .debug_info 0x00000000000d3527 0xc9 ../apps/import/libs/libc.a(lib_tcdrain.o) + .debug_info 0x00000000000d35f0 0x10f ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + .debug_info 0x00000000000d36ff 0xa0 ../apps/import/libs/libc.a(lib_isleapyear.o) + .debug_info 0x00000000000d379f 0xc0 ../apps/import/libs/libc.a(lib_dayofweek.o) + .debug_info 0x00000000000d385f 0x121 ../apps/import/libs/libc.a(lib_getoptvars.o) + .debug_info 0x00000000000d3980 0x534 ../apps/import/libs/libproxies.a(PROXY__assert.o) + .debug_info 0x00000000000d3eb4 0x478 ../apps/import/libs/libproxies.a(PROXY__exit.o) + .debug_info 0x00000000000d432c 0x468 ../apps/import/libs/libproxies.a(PROXY_clock.o) + .debug_info 0x00000000000d4794 0x511 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) + .debug_info 0x00000000000d4ca5 0x595 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) + .debug_info 0x00000000000d523a 0x47c ../apps/import/libs/libproxies.a(PROXY_close.o) + .debug_info 0x00000000000d56b6 0x47c ../apps/import/libs/libproxies.a(PROXY_dup.o) + .debug_info 0x00000000000d5b32 0x4b3 ../apps/import/libs/libproxies.a(PROXY_dup2.o) + .debug_info 0x00000000000d5fe5 0x506 ../apps/import/libs/libproxies.a(PROXY_execve.o) + .debug_info 0x00000000000d64eb 0x50e ../apps/import/libs/libproxies.a(PROXY_fcntl.o) + .debug_info 0x00000000000d69f9 0x450 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) + .debug_info 0x00000000000d6e49 0x48c ../apps/import/libs/libproxies.a(PROXY_getenv.o) + .debug_info 0x00000000000d72d5 0x451 ../apps/import/libs/libproxies.a(PROXY_getpid.o) + .debug_info 0x00000000000d7726 0x451 ../apps/import/libs/libproxies.a(PROXY_gettid.o) + .debug_info 0x00000000000d7b77 0x50e ../apps/import/libs/libproxies.a(PROXY_ioctl.o) + .debug_info 0x00000000000d8085 0x4bf ../apps/import/libs/libproxies.a(PROXY_kill.o) + .debug_info 0x00000000000d8544 0x50e ../apps/import/libs/libproxies.a(PROXY_lseek.o) + .debug_info 0x00000000000d8a52 0x67a ../apps/import/libs/libproxies.a(PROXY_lstat.o) + .debug_info 0x00000000000d90cc 0x4c9 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) + .debug_info 0x00000000000d9595 0x67f ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) + .debug_info 0x00000000000d9c14 0x49a ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) + .debug_info 0x00000000000da0ae 0x52e ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) + .debug_info 0x00000000000da5dc 0x646 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) + .debug_info 0x00000000000dac22 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) + .debug_info 0x00000000000db195 0x574 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) + .debug_info 0x00000000000db709 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) + .debug_info 0x00000000000dbc7c 0x573 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) + .debug_info 0x00000000000dc1ef 0x527 ../apps/import/libs/libproxies.a(PROXY_open.o) + .debug_info 0x00000000000dc716 0x4c8 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) + .debug_info 0x00000000000dcbde 0x5e1 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) + .debug_info 0x00000000000dd1bf 0x650 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) + .debug_info 0x00000000000dd80f 0x66f ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) + .debug_info 0x00000000000dde7e 0x5e1 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) + .debug_info 0x00000000000de45f 0x510 ../apps/import/libs/libproxies.a(PROXY_read.o) + .debug_info 0x00000000000de96f 0x4d2 ../apps/import/libs/libproxies.a(PROXY_rename.o) + .debug_info 0x00000000000dee41 0x487 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) + .debug_info 0x00000000000df2c8 0x453 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) + .debug_info 0x00000000000df71b 0x453 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) + .debug_info 0x00000000000dfb6e 0x601 ../apps/import/libs/libproxies.a(PROXY_select.o) + .debug_info 0x00000000000e016f 0x4f4 ../apps/import/libs/libproxies.a(PROXY_setenv.o) + .debug_info 0x00000000000e0663 0x6aa ../apps/import/libs/libproxies.a(PROXY_sigaction.o) + .debug_info 0x00000000000e0d0d 0x67a ../apps/import/libs/libproxies.a(PROXY_stat.o) + .debug_info 0x00000000000e1387 0x487 ../apps/import/libs/libproxies.a(PROXY_unlink.o) + .debug_info 0x00000000000e180e 0x486 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) + .debug_info 0x00000000000e1c94 0x465 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) + .debug_info 0x00000000000e20f9 0x514 ../apps/import/libs/libproxies.a(PROXY_utimens.o) + .debug_info 0x00000000000e260d 0x4fb ../apps/import/libs/libproxies.a(PROXY_waitpid.o) + .debug_info 0x00000000000e2b08 0x515 ../apps/import/libs/libproxies.a(PROXY_write.o) + .debug_info 0x00000000000e301d 0x170 ../apps/import/libs/libgcc.a(_clzsi2.o) + .debug_info 0x00000000000e318d 0x194 ../apps/import/libs/libgcc.a(_ctzsi2.o) + .debug_info 0x00000000000e3321 0x848 ../apps/import/libs/libgcc.a(_divdi3.o) + .debug_info 0x00000000000e3b69 0x8b7 ../apps/import/libs/libgcc.a(_moddi3.o) + .debug_info 0x00000000000e4420 0x80e ../apps/import/libs/libgcc.a(_udivdi3.o) + .debug_info 0x00000000000e4c2e 0x87c ../apps/import/libs/libgcc.a(_umoddi3.o) + .debug_info 0x00000000000e54aa 0x667 ../apps/import/libs/libgcc.a(addtf3.o) + .debug_info 0x00000000000e5b11 0x811 ../apps/import/libs/libgcc.a(divtf3.o) + .debug_info 0x00000000000e6322 0x2bb ../apps/import/libs/libgcc.a(eqtf2.o) + .debug_info 0x00000000000e65dd 0x29d ../apps/import/libs/libgcc.a(getf2.o) + .debug_info 0x00000000000e687a 0x8d5 ../apps/import/libs/libgcc.a(multf3.o) + .debug_info 0x00000000000e714f 0x65f ../apps/import/libs/libgcc.a(subtf3.o) + .debug_info 0x00000000000e77ae 0x2ee ../apps/import/libs/libgcc.a(floatsitf.o) + .debug_info 0x00000000000e7a9c 0x2f9 ../apps/import/libs/libgcc.a(floatunsitf.o) + .debug_info 0x00000000000e7d95 0x2e6 ../apps/import/libs/libgcc.a(floatditf.o) + .debug_info 0x00000000000e807b 0x2e5 ../apps/import/libs/libgcc.a(extenddftf2.o) + .debug_info 0x00000000000e8360 0x30f ../apps/import/libs/libgcc.a(trunctfsf2.o) + .debug_info 0x00000000000e866f 0x30b ../apps/import/libs/libgcc.a(trunctfdf2.o) + .debug_info 0x00000000000e897a 0xf7 ../apps/import/libs/libgcc.a(_clz.o) + .debug_info 0x00000000000e8a71 0x8f ../apps/import/libs/libm.a(lib_acos.o) + .debug_info 0x00000000000e8b00 0x1d2 ../apps/import/libs/libm.a(lib_asin.o) + .debug_info 0x00000000000e8cd2 0xf2 ../apps/import/libs/libm.a(lib_atan.o) + .debug_info 0x00000000000e8dc4 0xe7 ../apps/import/libs/libm.a(lib_atan2.o) + .debug_info 0x00000000000e8eab 0x9b ../apps/import/libs/libm.a(lib_cos.o) + .debug_info 0x00000000000e8f46 0x8f ../apps/import/libs/libm.a(lib_cosh.o) + .debug_info 0x00000000000e8fd5 0x15b ../apps/import/libs/libm.a(lib_exp.o) + .debug_info 0x00000000000e9130 0x65 ../apps/import/libs/libm.a(lib_fabs.o) + .debug_info 0x00000000000e9195 0xb3 ../apps/import/libs/libm.a(lib_fmod.o) + .debug_info 0x00000000000e9248 0xf1 ../apps/import/libs/libm.a(lib_log.o) + .debug_info 0x00000000000e9339 0x8f ../apps/import/libs/libm.a(lib_log10.o) + .debug_info 0x00000000000e93c8 0x8f ../apps/import/libs/libm.a(lib_log2.o) + .debug_info 0x00000000000e9457 0xd4 ../apps/import/libs/libm.a(lib_modf.o) + .debug_info 0x00000000000e952b 0xd5 ../apps/import/libs/libm.a(lib_pow.o) + .debug_info 0x00000000000e9600 0x14f ../apps/import/libs/libm.a(lib_sin.o) + .debug_info 0x00000000000e974f 0xa0 ../apps/import/libs/libm.a(lib_sinh.o) + .debug_info 0x00000000000e97ef 0x29f ../apps/import/libs/libm.a(lib_sqrt.o) + .debug_info 0x00000000000e9a8e 0xb4 ../apps/import/libs/libm.a(lib_tan.o) + .debug_info 0x00000000000e9b42 0xac ../apps/import/libs/libm.a(lib_tanh.o) + .debug_info 0x00000000000e9bee 0xd6 ../apps/import/libs/libm.a(lib_asinh.o) + .debug_info 0x00000000000e9cc4 0x9e ../apps/import/libs/libm.a(lib_acosh.o) + .debug_info 0x00000000000e9d62 0xdf ../apps/import/libs/libm.a(lib_atanh.o) + .debug_info 0x00000000000e9e41 0x101 ../apps/import/libs/libm.a(lib_cbrt.o) + .debug_info 0x00000000000e9f42 0x111 ../apps/import/libs/libm.a(lib_libexpi.o) + .debug_info 0x00000000000ea053 0xe4 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) + .debug_info 0x00000000000ea137 0x8f ../apps/import/libs/libm.a(lib_expm1.o) + .debug_info 0x00000000000ea1c6 0x73 ../apps/import/libs/libm.a(lib_fmax.o) + .debug_info 0x00000000000ea239 0x73 ../apps/import/libs/libm.a(lib_fmin.o) + .debug_info 0x00000000000ea2ac 0xa0 ../apps/import/libs/libm.a(lib_ceil.o) + .debug_info 0x00000000000ea34c 0xa0 ../apps/import/libs/libm.a(lib_floor.o) + .debug_info 0x00000000000ea3ec 0xa1 ../apps/import/libs/libm.a(lib_round.o) + .debug_info 0x00000000000ea48d 0x119 ../apps/import/libs/libm.a(lib_trunc.o) + .debug_info 0x00000000000ea5a6 0x29d /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) + .debug_info 0x00000000000ea843 0x2e5 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) + .debug_info 0x00000000000eab28 0x132 ../apps/import/libs/libmm.a(umm_zalloc.o) -.debug_line 0x0000000000000000 0xe2c2f +.debug_line 0x0000000000000000 0xe2d79 *(.debug_line) .debug_line 0x0000000000000000 0x161 ../apps/import/startup/crt0.o .debug_line 0x0000000000000161 0x17f1 .obj/qjs.o .debug_line 0x0000000000001952 0x77 .obj/repl.o - .debug_line 0x00000000000019c9 0x91b31 .obj/quickjs.o - .debug_line 0x00000000000934fa 0x6a04 .obj/libregexp.o - .debug_line 0x0000000000099efe 0x4b0e .obj/libunicode.o - .debug_line 0x000000000009ea0c 0x1d0f .obj/cutils.o - .debug_line 0x00000000000a071b 0xb595 .obj/quickjs-libc.o - .debug_line 0x00000000000abcb0 0xfac6 .obj/libbf.o - .debug_line 0x00000000000bb776 0x1772 .obj/arch_atomic.o - .debug_line 0x00000000000bcee8 0x3b0 .obj/stub.o - .debug_line 0x00000000000bd298 0x13f ../apps/import/libs/libmm.a(umm_free.o) - .debug_line 0x00000000000bd3d7 0xf3 ../apps/import/libs/libmm.a(umm_malloc.o) - .debug_line 0x00000000000bd4ca 0x23e ../apps/import/libs/libmm.a(umm_memalign.o) - .debug_line 0x00000000000bd708 0x23d ../apps/import/libs/libmm.a(umm_realloc.o) - .debug_line 0x00000000000bd945 0x2ce ../apps/import/libs/libmm.a(umm_sbrk.o) - .debug_line 0x00000000000bdc13 0x270 ../apps/import/libs/libmm.a(mm_brkaddr.o) - .debug_line 0x00000000000bde83 0x461 ../apps/import/libs/libmm.a(mm_extend.o) - .debug_line 0x00000000000be2e4 0x60c ../apps/import/libs/libmm.a(mm_free.o) - .debug_line 0x00000000000be8f0 0x68c ../apps/import/libs/libmm.a(mm_memalign.o) - .debug_line 0x00000000000bef7c 0x931 ../apps/import/libs/libmm.a(mm_realloc.o) - .debug_line 0x00000000000bf8ad 0x1e9 ../apps/import/libs/libmm.a(mm_heapmember.o) - .debug_line 0x00000000000bfa96 0x264 ../apps/import/libs/libmm.a(umm_initialize.o) - .debug_line 0x00000000000bfcfa 0x60b ../apps/import/libs/libmm.a(mm_initialize.o) - .debug_line 0x00000000000c0305 0x237 ../apps/import/libs/libmm.a(mm_lock.o) - .debug_line 0x00000000000c053c 0x341 ../apps/import/libs/libmm.a(mm_addfreechunk.o) - .debug_line 0x00000000000c087d 0x172 ../apps/import/libs/libmm.a(mm_size2ndx.o) - .debug_line 0x00000000000c09ef 0x432 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - .debug_line 0x00000000000c0e21 0x61b ../apps/import/libs/libmm.a(mm_malloc.o) - .debug_line 0x00000000000c143c 0xb3 ../apps/import/libs/libc.a(lib_assert.o) - .debug_line 0x00000000000c14ef 0x1a5 ../apps/import/libs/libc.a(lib_opendir.o) - .debug_line 0x00000000000c1694 0x14e ../apps/import/libs/libc.a(lib_closedir.o) - .debug_line 0x00000000000c17e2 0x151 ../apps/import/libs/libc.a(lib_readdir.o) - .debug_line 0x00000000000c1933 0x1d8 ../apps/import/libs/libc.a(lib_errno.o) - .debug_line 0x00000000000c1b0b 0xcd5 ../apps/import/libs/libc.a(lib_mutex.o) - .debug_line 0x00000000000c27e0 0x1e3 ../apps/import/libs/libc.a(pthread_attr_init.o) - .debug_line 0x00000000000c29c3 0x1b9 ../apps/import/libs/libc.a(pthread_attr_destroy.o) - .debug_line 0x00000000000c2b7c 0x168 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) - .debug_line 0x00000000000c2ce4 0x19e ../apps/import/libs/libc.a(pthread_create.o) - .debug_line 0x00000000000c2e82 0xfa ../apps/import/libs/libc.a(pthread_exit.o) - .debug_line 0x00000000000c2f7c 0x141 ../apps/import/libs/libc.a(pthread_mutex_lock.o) - .debug_line 0x00000000000c30bd 0x172 ../apps/import/libs/libc.a(clock_ticks2time.o) - .debug_line 0x00000000000c322f 0x1b0 ../apps/import/libs/libc.a(clock_timespec_add.o) - .debug_line 0x00000000000c33df 0x2ee ../apps/import/libs/libc.a(task_setcancelstate.o) - .debug_line 0x00000000000c36cd 0x2be ../apps/import/libs/libc.a(sem_init.o) - .debug_line 0x00000000000c398b 0x26b ../apps/import/libs/libc.a(sem_setprotocol.o) - .debug_line 0x00000000000c3bf6 0x21f ../apps/import/libs/libc.a(sem_getvalue.o) - .debug_line 0x00000000000c3e15 0x260 ../apps/import/libs/libc.a(sig_signal.o) - .debug_line 0x00000000000c4075 0x1ec ../apps/import/libs/libc.a(lib_fileno.o) - .debug_line 0x00000000000c4261 0x1a3 ../apps/import/libs/libc.a(lib_printf.o) - .debug_line 0x00000000000c4404 0x233 ../apps/import/libs/libc.a(lib_sprintf.o) - .debug_line 0x00000000000c4637 0x22d ../apps/import/libs/libc.a(lib_snprintf.o) - .debug_line 0x00000000000c4864 0x20a ../apps/import/libs/libc.a(lib_vsnprintf.o) - .debug_line 0x00000000000c4a6e 0x129 ../apps/import/libs/libc.a(lib_perror.o) - .debug_line 0x00000000000c4b97 0x142 ../apps/import/libs/libc.a(lib_putchar.o) - .debug_line 0x00000000000c4cd9 0x2ec ../apps/import/libs/libc.a(lib_puts.o) - .debug_line 0x00000000000c4fc5 0x171e ../apps/import/libs/libc.a(lib_libvsprintf.o) - .debug_line 0x00000000000c66e3 0xfb ../apps/import/libs/libc.a(lib_remove.o) - .debug_line 0x00000000000c67de 0x16e ../apps/import/libs/libc.a(lib_ultoa_invert.o) - .debug_line 0x00000000000c694c 0x4cb ../apps/import/libs/libc.a(lib_dtoa_engine.o) - .debug_line 0x00000000000c6e17 0x4b ../apps/import/libs/libc.a(lib_dtoa_data.o) - .debug_line 0x00000000000c6e62 0x6ee ../apps/import/libs/libc.a(lib_fopen.o) - .debug_line 0x00000000000c7550 0x47b ../apps/import/libs/libc.a(lib_fclose.o) - .debug_line 0x00000000000c79cb 0x284 ../apps/import/libs/libc.a(lib_fread.o) - .debug_line 0x00000000000c7c4f 0x3d9 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - .debug_line 0x00000000000c8028 0x170 ../apps/import/libs/libc.a(lib_fseek.o) - .debug_line 0x00000000000c8198 0x220 ../apps/import/libs/libc.a(lib_fseeko.o) - .debug_line 0x00000000000c83b8 0x180 ../apps/import/libs/libc.a(lib_ftell.o) - .debug_line 0x00000000000c8538 0x224 ../apps/import/libs/libc.a(lib_ftello.o) - .debug_line 0x00000000000c875c 0x258 ../apps/import/libs/libc.a(lib_fgetc.o) - .debug_line 0x00000000000c89b4 0x285 ../apps/import/libs/libc.a(lib_fwrite.o) - .debug_line 0x00000000000c8c39 0x27d ../apps/import/libs/libc.a(lib_libfwrite.o) - .debug_line 0x00000000000c8eb6 0x305 ../apps/import/libs/libc.a(lib_fflush.o) - .debug_line 0x00000000000c91bb 0x401 ../apps/import/libs/libc.a(lib_libflushall.o) - .debug_line 0x00000000000c95bc 0x1d3 ../apps/import/libs/libc.a(lib_libfflush.o) - .debug_line 0x00000000000c978f 0x196 ../apps/import/libs/libc.a(lib_putc.o) - .debug_line 0x00000000000c9925 0x2b4 ../apps/import/libs/libc.a(lib_fputc.o) - .debug_line 0x00000000000c9bd9 0x330 ../apps/import/libs/libc.a(lib_fputs.o) - .debug_line 0x00000000000c9f09 0x24b ../apps/import/libs/libc.a(lib_fprintf.o) - .debug_line 0x00000000000ca154 0x25f ../apps/import/libs/libc.a(lib_vfprintf.o) - .debug_line 0x00000000000ca3b3 0x177 ../apps/import/libs/libc.a(lib_feof.o) - .debug_line 0x00000000000ca52a 0x179 ../apps/import/libs/libc.a(lib_ferror.o) - .debug_line 0x00000000000ca6a3 0x1f8 ../apps/import/libs/libc.a(lib_clearerr.o) - .debug_line 0x00000000000ca89b 0x220 ../apps/import/libs/libc.a(lib_tmpfile.o) - .debug_line 0x00000000000caabb 0x1b2 ../apps/import/libs/libc.a(lib_libfilelock.o) - .debug_line 0x00000000000cac6d 0x23c ../apps/import/libs/libc.a(lib_libgetstreams.o) - .debug_line 0x00000000000caea9 0xab ../apps/import/libs/libc.a(lib_abort.o) - .debug_line 0x00000000000caf54 0xa6 ../apps/import/libs/libc.a(lib_atoi.o) - .debug_line 0x00000000000caffa 0x179 ../apps/import/libs/libc.a(lib_exit.o) - .debug_line 0x00000000000cb173 0x520 ../apps/import/libs/libc.a(lib_realpath.o) - .debug_line 0x00000000000cb693 0x26e ../apps/import/libs/libc.a(lib_strtol.o) - .debug_line 0x00000000000cb901 0x358 ../apps/import/libs/libc.a(lib_strtoul.o) - .debug_line 0x00000000000cbc59 0x1562 ../apps/import/libs/libc.a(lib_strtold.o) - .debug_line 0x00000000000cd1bb 0x1e5 ../apps/import/libs/libc.a(lib_checkbase.o) - .debug_line 0x00000000000cd3a0 0x130 ../apps/import/libs/libc.a(lib_mkstemp.o) - .debug_line 0x00000000000cd4d0 0xd9 ../apps/import/libs/libc.a(lib_atexit.o) - .debug_line 0x00000000000cd5a9 0x317 ../apps/import/libs/libc.a(lib_memoutstream.o) - .debug_line 0x00000000000cd8c0 0x216 ../apps/import/libs/libc.a(lib_nulloutstream.o) - .debug_line 0x00000000000cdad6 0xc9 ../apps/import/libs/libc.a(lib_libnoflush.o) - .debug_line 0x00000000000cdb9f 0x3b8 ../apps/import/libs/libc.a(lib_stdoutstream.o) - .debug_line 0x00000000000cdf57 0xe3 ../apps/import/libs/libc.a(lib_flsl.o) - .debug_line 0x00000000000ce03a 0x184 ../apps/import/libs/libc.a(lib_isbasedigit.o) - .debug_line 0x00000000000ce1be 0xfe ../apps/import/libs/libc.a(lib_skipspace.o) - .debug_line 0x00000000000ce2bc 0x118 ../apps/import/libs/libc.a(lib_strcat.o) - .debug_line 0x00000000000ce3d4 0x149 ../apps/import/libs/libc.a(lib_strdup.o) - .debug_line 0x00000000000ce51d 0x188 ../apps/import/libs/libc.a(lib_strerror.o) - .debug_line 0x00000000000ce6a5 0xdd ../apps/import/libs/libc.a(lib_strrchr.o) - .debug_line 0x00000000000ce782 0x169 ../apps/import/libs/libc.a(lib_strspn.o) - .debug_line 0x00000000000ce8eb 0x12f ../apps/import/libs/libc.a(lib_memchr.o) - .debug_line 0x00000000000cea1a 0x153 ../apps/import/libs/libc.a(lib_memcmp.o) - .debug_line 0x00000000000ceb6d 0x162 ../apps/import/libs/libc.a(lib_memmove.o) - .debug_line 0x00000000000ceccf 0x3c0 ../apps/import/libs/libc.a(lib_memset.o) - .debug_line 0x00000000000cf08f 0xea ../apps/import/libs/libc.a(lib_strchr.o) - .debug_line 0x00000000000cf179 0xe0 ../apps/import/libs/libc.a(lib_strcmp.o) - .debug_line 0x00000000000cf259 0xf8 ../apps/import/libs/libc.a(lib_strcpy.o) - .debug_line 0x00000000000cf351 0x1b2 ../apps/import/libs/libc.a(lib_strlcpy.o) - .debug_line 0x00000000000cf503 0x134 ../apps/import/libs/libc.a(lib_strlen.o) - .debug_line 0x00000000000cf637 0x158 ../apps/import/libs/libc.a(lib_strnlen.o) - .debug_line 0x00000000000cf78f 0x129 ../apps/import/libs/libc.a(lib_memcpy.o) - .debug_line 0x00000000000cf8b8 0x26e ../apps/import/libs/libc.a(lib_syslog.o) - .debug_line 0x00000000000cfb26 0x12a ../apps/import/libs/libc.a(lib_setlogmask.o) - .debug_line 0x00000000000cfc50 0xcc ../apps/import/libs/libc.a(lib_isatty.o) - .debug_line 0x00000000000cfd1c 0x102 ../apps/import/libs/libc.a(lib_tcgetattr.o) - .debug_line 0x00000000000cfe1e 0x16d ../apps/import/libs/libc.a(lib_tcsetattr.o) - .debug_line 0x00000000000cff8b 0x1b2 ../apps/import/libs/libc.a(lib_gettimeofday.o) - .debug_line 0x00000000000d013d 0x166 ../apps/import/libs/libc.a(lib_nanosleep.o) - .debug_line 0x00000000000d02a3 0x54f ../apps/import/libs/libc.a(lib_gmtimer.o) - .debug_line 0x00000000000d07f2 0x1b8 ../apps/import/libs/libc.a(task_getinfo.o) - .debug_line 0x00000000000d09aa 0x1ab ../apps/import/libs/libc.a(lib_sysconf.o) - .debug_line 0x00000000000d0b55 0xe2 ../apps/import/libs/libc.a(lib_getoptindp.o) - .debug_line 0x00000000000d0c37 0x2a0 ../apps/import/libs/libc.a(lib_utimes.o) - .debug_line 0x00000000000d0ed7 0x119 ../apps/import/libs/libc.a(lib_setuid.o) - .debug_line 0x00000000000d0ff0 0x119 ../apps/import/libs/libc.a(lib_setgid.o) - .debug_line 0x00000000000d1109 0x251 ../apps/import/libs/libc.a(lib_chdir.o) - .debug_line 0x00000000000d135a 0x249 ../apps/import/libs/libc.a(lib_getcwd.o) - .debug_line 0x00000000000d15a3 0xee ../apps/import/libs/libc.a(lib_fork.o) - .debug_line 0x00000000000d1691 0xd2 ../apps/import/libs/libc.a(lib_isspace.o) - .debug_line 0x00000000000d1763 0xd3 ../apps/import/libs/libc.a(lib_isxdigit.o) - .debug_line 0x00000000000d1836 0x1f5 ../apps/import/libs/libc.a(lib_getfullpath.o) - .debug_line 0x00000000000d1a2b 0x1eb ../apps/import/libs/libc.a(sig_addset.o) - .debug_line 0x00000000000d1c16 0x151 ../apps/import/libs/libc.a(sig_emptyset.o) - .debug_line 0x00000000000d1d67 0x529 ../apps/import/libs/libc.a(lib_mktemp.o) - .debug_line 0x00000000000d2290 0x23a ../apps/import/libs/libc.a(lib_strlcat.o) - .debug_line 0x00000000000d24ca 0xc3 ../apps/import/libs/libc.a(lib_tcflush.o) - .debug_line 0x00000000000d258d 0xbb ../apps/import/libs/libc.a(lib_tcdrain.o) - .debug_line 0x00000000000d2648 0x14c ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - .debug_line 0x00000000000d2794 0xe2 ../apps/import/libs/libc.a(lib_isleapyear.o) - .debug_line 0x00000000000d2876 0x12b ../apps/import/libs/libc.a(lib_dayofweek.o) - .debug_line 0x00000000000d29a1 0x8f ../apps/import/libs/libc.a(lib_getoptvars.o) - .debug_line 0x00000000000d2a30 0x16c ../apps/import/libs/libproxies.a(PROXY__assert.o) - .debug_line 0x00000000000d2b9c 0x159 ../apps/import/libs/libproxies.a(PROXY__exit.o) - .debug_line 0x00000000000d2cf5 0x137 ../apps/import/libs/libproxies.a(PROXY_clock.o) - .debug_line 0x00000000000d2e2c 0x163 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) - .debug_line 0x00000000000d2f8f 0x189 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) - .debug_line 0x00000000000d3118 0x140 ../apps/import/libs/libproxies.a(PROXY_close.o) - .debug_line 0x00000000000d3258 0x13e ../apps/import/libs/libproxies.a(PROXY_dup.o) - .debug_line 0x00000000000d3396 0x151 ../apps/import/libs/libproxies.a(PROXY_dup2.o) - .debug_line 0x00000000000d34e7 0x167 ../apps/import/libs/libproxies.a(PROXY_execve.o) - .debug_line 0x00000000000d364e 0x230 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) - .debug_line 0x00000000000d387e 0x13a ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) - .debug_line 0x00000000000d39b8 0x143 ../apps/import/libs/libproxies.a(PROXY_getenv.o) - .debug_line 0x00000000000d3afb 0x13a ../apps/import/libs/libproxies.a(PROXY_getpid.o) - .debug_line 0x00000000000d3c35 0x13a ../apps/import/libs/libproxies.a(PROXY_gettid.o) - .debug_line 0x00000000000d3d6f 0x234 ../apps/import/libs/libproxies.a(PROXY_ioctl.o) - .debug_line 0x00000000000d3fa3 0x15c ../apps/import/libs/libproxies.a(PROXY_kill.o) - .debug_line 0x00000000000d40ff 0x16f ../apps/import/libs/libproxies.a(PROXY_lseek.o) - .debug_line 0x00000000000d426e 0x165 ../apps/import/libs/libproxies.a(PROXY_lstat.o) - .debug_line 0x00000000000d43d3 0x171 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) - .debug_line 0x00000000000d4544 0x1d6 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) - .debug_line 0x00000000000d471a 0x19a ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) - .debug_line 0x00000000000d48b4 0x21e ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) - .debug_line 0x00000000000d4ad2 0x1c7 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) - .debug_line 0x00000000000d4c99 0x18c ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) - .debug_line 0x00000000000d4e25 0x189 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) - .debug_line 0x00000000000d4fae 0x18c ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) - .debug_line 0x00000000000d513a 0x189 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) - .debug_line 0x00000000000d52c3 0x248 ../apps/import/libs/libproxies.a(PROXY_open.o) - .debug_line 0x00000000000d550b 0x18f ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) - .debug_line 0x00000000000d569a 0x19f ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) - .debug_line 0x00000000000d5839 0x1ae ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) - .debug_line 0x00000000000d59e7 0x1bd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) - .debug_line 0x00000000000d5ba4 0x19e ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) - .debug_line 0x00000000000d5d42 0x16e ../apps/import/libs/libproxies.a(PROXY_read.o) - .debug_line 0x00000000000d5eb0 0x152 ../apps/import/libs/libproxies.a(PROXY_rename.o) - .debug_line 0x00000000000d6002 0x142 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) - .debug_line 0x00000000000d6144 0x132 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) - .debug_line 0x00000000000d6276 0x134 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) - .debug_line 0x00000000000d63aa 0x19e ../apps/import/libs/libproxies.a(PROXY_select.o) - .debug_line 0x00000000000d6548 0x167 ../apps/import/libs/libproxies.a(PROXY_setenv.o) - .debug_line 0x00000000000d66af 0x168 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) - .debug_line 0x00000000000d6817 0x164 ../apps/import/libs/libproxies.a(PROXY_stat.o) - .debug_line 0x00000000000d697b 0x143 ../apps/import/libs/libproxies.a(PROXY_unlink.o) - .debug_line 0x00000000000d6abe 0x145 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) - .debug_line 0x00000000000d6c03 0x162 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) - .debug_line 0x00000000000d6d65 0x167 ../apps/import/libs/libproxies.a(PROXY_utimens.o) - .debug_line 0x00000000000d6ecc 0x171 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) - .debug_line 0x00000000000d703d 0x16f ../apps/import/libs/libproxies.a(PROXY_write.o) - .debug_line 0x00000000000d71ac 0xed ../apps/import/libs/libgcc.a(_clzsi2.o) - .debug_line 0x00000000000d7299 0x113 ../apps/import/libs/libgcc.a(_ctzsi2.o) - .debug_line 0x00000000000d73ac 0x7fc ../apps/import/libs/libgcc.a(_divdi3.o) - .debug_line 0x00000000000d7ba8 0x892 ../apps/import/libs/libgcc.a(_moddi3.o) - .debug_line 0x00000000000d843a 0x735 ../apps/import/libs/libgcc.a(_udivdi3.o) - .debug_line 0x00000000000d8b6f 0x7f5 ../apps/import/libs/libgcc.a(_umoddi3.o) - .debug_line 0x00000000000d9364 0x1467 ../apps/import/libs/libgcc.a(addtf3.o) - .debug_line 0x00000000000da7cb 0x11d0 ../apps/import/libs/libgcc.a(divtf3.o) - .debug_line 0x00000000000db99b 0x305 ../apps/import/libs/libgcc.a(eqtf2.o) - .debug_line 0x00000000000dbca0 0x319 ../apps/import/libs/libgcc.a(getf2.o) - .debug_line 0x00000000000dbfb9 0x11f8 ../apps/import/libs/libgcc.a(multf3.o) - .debug_line 0x00000000000dd1b1 0x14b3 ../apps/import/libs/libgcc.a(subtf3.o) - .debug_line 0x00000000000de664 0x238 ../apps/import/libs/libgcc.a(floatsitf.o) - .debug_line 0x00000000000de89c 0x216 ../apps/import/libs/libgcc.a(floatunsitf.o) - .debug_line 0x00000000000deab2 0x2fc ../apps/import/libs/libgcc.a(floatditf.o) - .debug_line 0x00000000000dedae 0x395 ../apps/import/libs/libgcc.a(extenddftf2.o) - .debug_line 0x00000000000df143 0x679 ../apps/import/libs/libgcc.a(trunctfsf2.o) - .debug_line 0x00000000000df7bc 0x6a9 ../apps/import/libs/libgcc.a(trunctfdf2.o) - .debug_line 0x00000000000dfe65 0x57 ../apps/import/libs/libgcc.a(_clz.o) - .debug_line 0x00000000000dfebc 0xa2 ../apps/import/libs/libm.a(lib_acos.o) - .debug_line 0x00000000000dff5e 0x26a ../apps/import/libs/libm.a(lib_asin.o) - .debug_line 0x00000000000e01c8 0xb2 ../apps/import/libs/libm.a(lib_atan.o) - .debug_line 0x00000000000e027a 0x179 ../apps/import/libs/libm.a(lib_atan2.o) - .debug_line 0x00000000000e03f3 0x81 ../apps/import/libs/libm.a(lib_cos.o) - .debug_line 0x00000000000e0474 0xbc ../apps/import/libs/libm.a(lib_cosh.o) - .debug_line 0x00000000000e0530 0x285 ../apps/import/libs/libm.a(lib_exp.o) - .debug_line 0x00000000000e07b5 0x98 ../apps/import/libs/libm.a(lib_fabs.o) - .debug_line 0x00000000000e084d 0xb6 ../apps/import/libs/libm.a(lib_fmod.o) - .debug_line 0x00000000000e0903 0x27d ../apps/import/libs/libm.a(lib_log.o) - .debug_line 0x00000000000e0b80 0xa3 ../apps/import/libs/libm.a(lib_log10.o) - .debug_line 0x00000000000e0c23 0xa2 ../apps/import/libs/libm.a(lib_log2.o) - .debug_line 0x00000000000e0cc5 0x15d ../apps/import/libs/libm.a(lib_modf.o) - .debug_line 0x00000000000e0e22 0x15b ../apps/import/libs/libm.a(lib_pow.o) - .debug_line 0x00000000000e0f7d 0x290 ../apps/import/libs/libm.a(lib_sin.o) - .debug_line 0x00000000000e120d 0x134 ../apps/import/libs/libm.a(lib_sinh.o) - .debug_line 0x00000000000e1341 0x2c2 ../apps/import/libs/libm.a(lib_sqrt.o) - .debug_line 0x00000000000e1603 0x99 ../apps/import/libs/libm.a(lib_tan.o) - .debug_line 0x00000000000e169c 0xc6 ../apps/import/libs/libm.a(lib_tanh.o) - .debug_line 0x00000000000e1762 0x10f ../apps/import/libs/libm.a(lib_asinh.o) - .debug_line 0x00000000000e1871 0xb3 ../apps/import/libs/libm.a(lib_acosh.o) - .debug_line 0x00000000000e1924 0x115 ../apps/import/libs/libm.a(lib_atanh.o) - .debug_line 0x00000000000e1a39 0xf8 ../apps/import/libs/libm.a(lib_cbrt.o) - .debug_line 0x00000000000e1b31 0x180 ../apps/import/libs/libm.a(lib_libexpi.o) - .debug_line 0x00000000000e1cb1 0xf4 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) - .debug_line 0x00000000000e1da5 0xa3 ../apps/import/libs/libm.a(lib_expm1.o) - .debug_line 0x00000000000e1e48 0x8e ../apps/import/libs/libm.a(lib_fmax.o) - .debug_line 0x00000000000e1ed6 0x8e ../apps/import/libs/libm.a(lib_fmin.o) - .debug_line 0x00000000000e1f64 0x10c ../apps/import/libs/libm.a(lib_ceil.o) - .debug_line 0x00000000000e2070 0xf3 ../apps/import/libs/libm.a(lib_floor.o) - .debug_line 0x00000000000e2163 0x15b ../apps/import/libs/libm.a(lib_round.o) - .debug_line 0x00000000000e22be 0x1bc ../apps/import/libs/libm.a(lib_trunc.o) - .debug_line 0x00000000000e247a 0x319 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) - .debug_line 0x00000000000e2793 0x369 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) - .debug_line 0x00000000000e2afc 0x133 ../apps/import/libs/libmm.a(umm_zalloc.o) + .debug_line 0x00000000000019c9 0x91c7b .obj/quickjs.o + .debug_line 0x0000000000093644 0x6a04 .obj/libregexp.o + .debug_line 0x000000000009a048 0x4b0e .obj/libunicode.o + .debug_line 0x000000000009eb56 0x1d0f .obj/cutils.o + .debug_line 0x00000000000a0865 0xb595 .obj/quickjs-libc.o + .debug_line 0x00000000000abdfa 0xfac6 .obj/libbf.o + .debug_line 0x00000000000bb8c0 0x1772 .obj/arch_atomic.o + .debug_line 0x00000000000bd032 0x3b0 .obj/stub.o + .debug_line 0x00000000000bd3e2 0x13f ../apps/import/libs/libmm.a(umm_free.o) + .debug_line 0x00000000000bd521 0xf3 ../apps/import/libs/libmm.a(umm_malloc.o) + .debug_line 0x00000000000bd614 0x23e ../apps/import/libs/libmm.a(umm_memalign.o) + .debug_line 0x00000000000bd852 0x23d ../apps/import/libs/libmm.a(umm_realloc.o) + .debug_line 0x00000000000bda8f 0x2ce ../apps/import/libs/libmm.a(umm_sbrk.o) + .debug_line 0x00000000000bdd5d 0x270 ../apps/import/libs/libmm.a(mm_brkaddr.o) + .debug_line 0x00000000000bdfcd 0x461 ../apps/import/libs/libmm.a(mm_extend.o) + .debug_line 0x00000000000be42e 0x60c ../apps/import/libs/libmm.a(mm_free.o) + .debug_line 0x00000000000bea3a 0x68c ../apps/import/libs/libmm.a(mm_memalign.o) + .debug_line 0x00000000000bf0c6 0x931 ../apps/import/libs/libmm.a(mm_realloc.o) + .debug_line 0x00000000000bf9f7 0x1e9 ../apps/import/libs/libmm.a(mm_heapmember.o) + .debug_line 0x00000000000bfbe0 0x264 ../apps/import/libs/libmm.a(umm_initialize.o) + .debug_line 0x00000000000bfe44 0x60b ../apps/import/libs/libmm.a(mm_initialize.o) + .debug_line 0x00000000000c044f 0x237 ../apps/import/libs/libmm.a(mm_lock.o) + .debug_line 0x00000000000c0686 0x341 ../apps/import/libs/libmm.a(mm_addfreechunk.o) + .debug_line 0x00000000000c09c7 0x172 ../apps/import/libs/libmm.a(mm_size2ndx.o) + .debug_line 0x00000000000c0b39 0x432 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + .debug_line 0x00000000000c0f6b 0x61b ../apps/import/libs/libmm.a(mm_malloc.o) + .debug_line 0x00000000000c1586 0xb3 ../apps/import/libs/libc.a(lib_assert.o) + .debug_line 0x00000000000c1639 0x1a5 ../apps/import/libs/libc.a(lib_opendir.o) + .debug_line 0x00000000000c17de 0x14e ../apps/import/libs/libc.a(lib_closedir.o) + .debug_line 0x00000000000c192c 0x151 ../apps/import/libs/libc.a(lib_readdir.o) + .debug_line 0x00000000000c1a7d 0x1d8 ../apps/import/libs/libc.a(lib_errno.o) + .debug_line 0x00000000000c1c55 0xcd5 ../apps/import/libs/libc.a(lib_mutex.o) + .debug_line 0x00000000000c292a 0x1e3 ../apps/import/libs/libc.a(pthread_attr_init.o) + .debug_line 0x00000000000c2b0d 0x1b9 ../apps/import/libs/libc.a(pthread_attr_destroy.o) + .debug_line 0x00000000000c2cc6 0x168 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) + .debug_line 0x00000000000c2e2e 0x19e ../apps/import/libs/libc.a(pthread_create.o) + .debug_line 0x00000000000c2fcc 0xfa ../apps/import/libs/libc.a(pthread_exit.o) + .debug_line 0x00000000000c30c6 0x141 ../apps/import/libs/libc.a(pthread_mutex_lock.o) + .debug_line 0x00000000000c3207 0x172 ../apps/import/libs/libc.a(clock_ticks2time.o) + .debug_line 0x00000000000c3379 0x1b0 ../apps/import/libs/libc.a(clock_timespec_add.o) + .debug_line 0x00000000000c3529 0x2ee ../apps/import/libs/libc.a(task_setcancelstate.o) + .debug_line 0x00000000000c3817 0x2be ../apps/import/libs/libc.a(sem_init.o) + .debug_line 0x00000000000c3ad5 0x26b ../apps/import/libs/libc.a(sem_setprotocol.o) + .debug_line 0x00000000000c3d40 0x21f ../apps/import/libs/libc.a(sem_getvalue.o) + .debug_line 0x00000000000c3f5f 0x260 ../apps/import/libs/libc.a(sig_signal.o) + .debug_line 0x00000000000c41bf 0x1ec ../apps/import/libs/libc.a(lib_fileno.o) + .debug_line 0x00000000000c43ab 0x1a3 ../apps/import/libs/libc.a(lib_printf.o) + .debug_line 0x00000000000c454e 0x233 ../apps/import/libs/libc.a(lib_sprintf.o) + .debug_line 0x00000000000c4781 0x22d ../apps/import/libs/libc.a(lib_snprintf.o) + .debug_line 0x00000000000c49ae 0x20a ../apps/import/libs/libc.a(lib_vsnprintf.o) + .debug_line 0x00000000000c4bb8 0x129 ../apps/import/libs/libc.a(lib_perror.o) + .debug_line 0x00000000000c4ce1 0x142 ../apps/import/libs/libc.a(lib_putchar.o) + .debug_line 0x00000000000c4e23 0x2ec ../apps/import/libs/libc.a(lib_puts.o) + .debug_line 0x00000000000c510f 0x171e ../apps/import/libs/libc.a(lib_libvsprintf.o) + .debug_line 0x00000000000c682d 0xfb ../apps/import/libs/libc.a(lib_remove.o) + .debug_line 0x00000000000c6928 0x16e ../apps/import/libs/libc.a(lib_ultoa_invert.o) + .debug_line 0x00000000000c6a96 0x4cb ../apps/import/libs/libc.a(lib_dtoa_engine.o) + .debug_line 0x00000000000c6f61 0x4b ../apps/import/libs/libc.a(lib_dtoa_data.o) + .debug_line 0x00000000000c6fac 0x6ee ../apps/import/libs/libc.a(lib_fopen.o) + .debug_line 0x00000000000c769a 0x47b ../apps/import/libs/libc.a(lib_fclose.o) + .debug_line 0x00000000000c7b15 0x284 ../apps/import/libs/libc.a(lib_fread.o) + .debug_line 0x00000000000c7d99 0x3d9 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + .debug_line 0x00000000000c8172 0x170 ../apps/import/libs/libc.a(lib_fseek.o) + .debug_line 0x00000000000c82e2 0x220 ../apps/import/libs/libc.a(lib_fseeko.o) + .debug_line 0x00000000000c8502 0x180 ../apps/import/libs/libc.a(lib_ftell.o) + .debug_line 0x00000000000c8682 0x224 ../apps/import/libs/libc.a(lib_ftello.o) + .debug_line 0x00000000000c88a6 0x258 ../apps/import/libs/libc.a(lib_fgetc.o) + .debug_line 0x00000000000c8afe 0x285 ../apps/import/libs/libc.a(lib_fwrite.o) + .debug_line 0x00000000000c8d83 0x27d ../apps/import/libs/libc.a(lib_libfwrite.o) + .debug_line 0x00000000000c9000 0x305 ../apps/import/libs/libc.a(lib_fflush.o) + .debug_line 0x00000000000c9305 0x401 ../apps/import/libs/libc.a(lib_libflushall.o) + .debug_line 0x00000000000c9706 0x1d3 ../apps/import/libs/libc.a(lib_libfflush.o) + .debug_line 0x00000000000c98d9 0x196 ../apps/import/libs/libc.a(lib_putc.o) + .debug_line 0x00000000000c9a6f 0x2b4 ../apps/import/libs/libc.a(lib_fputc.o) + .debug_line 0x00000000000c9d23 0x330 ../apps/import/libs/libc.a(lib_fputs.o) + .debug_line 0x00000000000ca053 0x24b ../apps/import/libs/libc.a(lib_fprintf.o) + .debug_line 0x00000000000ca29e 0x25f ../apps/import/libs/libc.a(lib_vfprintf.o) + .debug_line 0x00000000000ca4fd 0x177 ../apps/import/libs/libc.a(lib_feof.o) + .debug_line 0x00000000000ca674 0x179 ../apps/import/libs/libc.a(lib_ferror.o) + .debug_line 0x00000000000ca7ed 0x1f8 ../apps/import/libs/libc.a(lib_clearerr.o) + .debug_line 0x00000000000ca9e5 0x220 ../apps/import/libs/libc.a(lib_tmpfile.o) + .debug_line 0x00000000000cac05 0x1b2 ../apps/import/libs/libc.a(lib_libfilelock.o) + .debug_line 0x00000000000cadb7 0x23c ../apps/import/libs/libc.a(lib_libgetstreams.o) + .debug_line 0x00000000000caff3 0xab ../apps/import/libs/libc.a(lib_abort.o) + .debug_line 0x00000000000cb09e 0xa6 ../apps/import/libs/libc.a(lib_atoi.o) + .debug_line 0x00000000000cb144 0x179 ../apps/import/libs/libc.a(lib_exit.o) + .debug_line 0x00000000000cb2bd 0x520 ../apps/import/libs/libc.a(lib_realpath.o) + .debug_line 0x00000000000cb7dd 0x26e ../apps/import/libs/libc.a(lib_strtol.o) + .debug_line 0x00000000000cba4b 0x358 ../apps/import/libs/libc.a(lib_strtoul.o) + .debug_line 0x00000000000cbda3 0x1562 ../apps/import/libs/libc.a(lib_strtold.o) + .debug_line 0x00000000000cd305 0x1e5 ../apps/import/libs/libc.a(lib_checkbase.o) + .debug_line 0x00000000000cd4ea 0x130 ../apps/import/libs/libc.a(lib_mkstemp.o) + .debug_line 0x00000000000cd61a 0xd9 ../apps/import/libs/libc.a(lib_atexit.o) + .debug_line 0x00000000000cd6f3 0x317 ../apps/import/libs/libc.a(lib_memoutstream.o) + .debug_line 0x00000000000cda0a 0x216 ../apps/import/libs/libc.a(lib_nulloutstream.o) + .debug_line 0x00000000000cdc20 0xc9 ../apps/import/libs/libc.a(lib_libnoflush.o) + .debug_line 0x00000000000cdce9 0x3b8 ../apps/import/libs/libc.a(lib_stdoutstream.o) + .debug_line 0x00000000000ce0a1 0xe3 ../apps/import/libs/libc.a(lib_flsl.o) + .debug_line 0x00000000000ce184 0x184 ../apps/import/libs/libc.a(lib_isbasedigit.o) + .debug_line 0x00000000000ce308 0xfe ../apps/import/libs/libc.a(lib_skipspace.o) + .debug_line 0x00000000000ce406 0x118 ../apps/import/libs/libc.a(lib_strcat.o) + .debug_line 0x00000000000ce51e 0x149 ../apps/import/libs/libc.a(lib_strdup.o) + .debug_line 0x00000000000ce667 0x188 ../apps/import/libs/libc.a(lib_strerror.o) + .debug_line 0x00000000000ce7ef 0xdd ../apps/import/libs/libc.a(lib_strrchr.o) + .debug_line 0x00000000000ce8cc 0x169 ../apps/import/libs/libc.a(lib_strspn.o) + .debug_line 0x00000000000cea35 0x12f ../apps/import/libs/libc.a(lib_memchr.o) + .debug_line 0x00000000000ceb64 0x153 ../apps/import/libs/libc.a(lib_memcmp.o) + .debug_line 0x00000000000cecb7 0x162 ../apps/import/libs/libc.a(lib_memmove.o) + .debug_line 0x00000000000cee19 0x3c0 ../apps/import/libs/libc.a(lib_memset.o) + .debug_line 0x00000000000cf1d9 0xea ../apps/import/libs/libc.a(lib_strchr.o) + .debug_line 0x00000000000cf2c3 0xe0 ../apps/import/libs/libc.a(lib_strcmp.o) + .debug_line 0x00000000000cf3a3 0xf8 ../apps/import/libs/libc.a(lib_strcpy.o) + .debug_line 0x00000000000cf49b 0x1b2 ../apps/import/libs/libc.a(lib_strlcpy.o) + .debug_line 0x00000000000cf64d 0x134 ../apps/import/libs/libc.a(lib_strlen.o) + .debug_line 0x00000000000cf781 0x158 ../apps/import/libs/libc.a(lib_strnlen.o) + .debug_line 0x00000000000cf8d9 0x129 ../apps/import/libs/libc.a(lib_memcpy.o) + .debug_line 0x00000000000cfa02 0x26e ../apps/import/libs/libc.a(lib_syslog.o) + .debug_line 0x00000000000cfc70 0x12a ../apps/import/libs/libc.a(lib_setlogmask.o) + .debug_line 0x00000000000cfd9a 0xcc ../apps/import/libs/libc.a(lib_isatty.o) + .debug_line 0x00000000000cfe66 0x102 ../apps/import/libs/libc.a(lib_tcgetattr.o) + .debug_line 0x00000000000cff68 0x16d ../apps/import/libs/libc.a(lib_tcsetattr.o) + .debug_line 0x00000000000d00d5 0x1b2 ../apps/import/libs/libc.a(lib_gettimeofday.o) + .debug_line 0x00000000000d0287 0x166 ../apps/import/libs/libc.a(lib_nanosleep.o) + .debug_line 0x00000000000d03ed 0x54f ../apps/import/libs/libc.a(lib_gmtimer.o) + .debug_line 0x00000000000d093c 0x1b8 ../apps/import/libs/libc.a(task_getinfo.o) + .debug_line 0x00000000000d0af4 0x1ab ../apps/import/libs/libc.a(lib_sysconf.o) + .debug_line 0x00000000000d0c9f 0xe2 ../apps/import/libs/libc.a(lib_getoptindp.o) + .debug_line 0x00000000000d0d81 0x2a0 ../apps/import/libs/libc.a(lib_utimes.o) + .debug_line 0x00000000000d1021 0x119 ../apps/import/libs/libc.a(lib_setuid.o) + .debug_line 0x00000000000d113a 0x119 ../apps/import/libs/libc.a(lib_setgid.o) + .debug_line 0x00000000000d1253 0x251 ../apps/import/libs/libc.a(lib_chdir.o) + .debug_line 0x00000000000d14a4 0x249 ../apps/import/libs/libc.a(lib_getcwd.o) + .debug_line 0x00000000000d16ed 0xee ../apps/import/libs/libc.a(lib_fork.o) + .debug_line 0x00000000000d17db 0xd2 ../apps/import/libs/libc.a(lib_isspace.o) + .debug_line 0x00000000000d18ad 0xd3 ../apps/import/libs/libc.a(lib_isxdigit.o) + .debug_line 0x00000000000d1980 0x1f5 ../apps/import/libs/libc.a(lib_getfullpath.o) + .debug_line 0x00000000000d1b75 0x1eb ../apps/import/libs/libc.a(sig_addset.o) + .debug_line 0x00000000000d1d60 0x151 ../apps/import/libs/libc.a(sig_emptyset.o) + .debug_line 0x00000000000d1eb1 0x529 ../apps/import/libs/libc.a(lib_mktemp.o) + .debug_line 0x00000000000d23da 0x23a ../apps/import/libs/libc.a(lib_strlcat.o) + .debug_line 0x00000000000d2614 0xc3 ../apps/import/libs/libc.a(lib_tcflush.o) + .debug_line 0x00000000000d26d7 0xbb ../apps/import/libs/libc.a(lib_tcdrain.o) + .debug_line 0x00000000000d2792 0x14c ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + .debug_line 0x00000000000d28de 0xe2 ../apps/import/libs/libc.a(lib_isleapyear.o) + .debug_line 0x00000000000d29c0 0x12b ../apps/import/libs/libc.a(lib_dayofweek.o) + .debug_line 0x00000000000d2aeb 0x8f ../apps/import/libs/libc.a(lib_getoptvars.o) + .debug_line 0x00000000000d2b7a 0x16c ../apps/import/libs/libproxies.a(PROXY__assert.o) + .debug_line 0x00000000000d2ce6 0x159 ../apps/import/libs/libproxies.a(PROXY__exit.o) + .debug_line 0x00000000000d2e3f 0x137 ../apps/import/libs/libproxies.a(PROXY_clock.o) + .debug_line 0x00000000000d2f76 0x163 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) + .debug_line 0x00000000000d30d9 0x189 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) + .debug_line 0x00000000000d3262 0x140 ../apps/import/libs/libproxies.a(PROXY_close.o) + .debug_line 0x00000000000d33a2 0x13e ../apps/import/libs/libproxies.a(PROXY_dup.o) + .debug_line 0x00000000000d34e0 0x151 ../apps/import/libs/libproxies.a(PROXY_dup2.o) + .debug_line 0x00000000000d3631 0x167 ../apps/import/libs/libproxies.a(PROXY_execve.o) + .debug_line 0x00000000000d3798 0x230 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) + .debug_line 0x00000000000d39c8 0x13a ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) + .debug_line 0x00000000000d3b02 0x143 ../apps/import/libs/libproxies.a(PROXY_getenv.o) + .debug_line 0x00000000000d3c45 0x13a ../apps/import/libs/libproxies.a(PROXY_getpid.o) + .debug_line 0x00000000000d3d7f 0x13a ../apps/import/libs/libproxies.a(PROXY_gettid.o) + .debug_line 0x00000000000d3eb9 0x234 ../apps/import/libs/libproxies.a(PROXY_ioctl.o) + .debug_line 0x00000000000d40ed 0x15c ../apps/import/libs/libproxies.a(PROXY_kill.o) + .debug_line 0x00000000000d4249 0x16f ../apps/import/libs/libproxies.a(PROXY_lseek.o) + .debug_line 0x00000000000d43b8 0x165 ../apps/import/libs/libproxies.a(PROXY_lstat.o) + .debug_line 0x00000000000d451d 0x171 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) + .debug_line 0x00000000000d468e 0x1d6 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) + .debug_line 0x00000000000d4864 0x19a ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) + .debug_line 0x00000000000d49fe 0x21e ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) + .debug_line 0x00000000000d4c1c 0x1c7 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) + .debug_line 0x00000000000d4de3 0x18c ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) + .debug_line 0x00000000000d4f6f 0x189 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) + .debug_line 0x00000000000d50f8 0x18c ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) + .debug_line 0x00000000000d5284 0x189 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) + .debug_line 0x00000000000d540d 0x248 ../apps/import/libs/libproxies.a(PROXY_open.o) + .debug_line 0x00000000000d5655 0x18f ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) + .debug_line 0x00000000000d57e4 0x19f ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) + .debug_line 0x00000000000d5983 0x1ae ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) + .debug_line 0x00000000000d5b31 0x1bd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) + .debug_line 0x00000000000d5cee 0x19e ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) + .debug_line 0x00000000000d5e8c 0x16e ../apps/import/libs/libproxies.a(PROXY_read.o) + .debug_line 0x00000000000d5ffa 0x152 ../apps/import/libs/libproxies.a(PROXY_rename.o) + .debug_line 0x00000000000d614c 0x142 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) + .debug_line 0x00000000000d628e 0x132 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) + .debug_line 0x00000000000d63c0 0x134 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) + .debug_line 0x00000000000d64f4 0x19e ../apps/import/libs/libproxies.a(PROXY_select.o) + .debug_line 0x00000000000d6692 0x167 ../apps/import/libs/libproxies.a(PROXY_setenv.o) + .debug_line 0x00000000000d67f9 0x168 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) + .debug_line 0x00000000000d6961 0x164 ../apps/import/libs/libproxies.a(PROXY_stat.o) + .debug_line 0x00000000000d6ac5 0x143 ../apps/import/libs/libproxies.a(PROXY_unlink.o) + .debug_line 0x00000000000d6c08 0x145 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) + .debug_line 0x00000000000d6d4d 0x162 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) + .debug_line 0x00000000000d6eaf 0x167 ../apps/import/libs/libproxies.a(PROXY_utimens.o) + .debug_line 0x00000000000d7016 0x171 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) + .debug_line 0x00000000000d7187 0x16f ../apps/import/libs/libproxies.a(PROXY_write.o) + .debug_line 0x00000000000d72f6 0xed ../apps/import/libs/libgcc.a(_clzsi2.o) + .debug_line 0x00000000000d73e3 0x113 ../apps/import/libs/libgcc.a(_ctzsi2.o) + .debug_line 0x00000000000d74f6 0x7fc ../apps/import/libs/libgcc.a(_divdi3.o) + .debug_line 0x00000000000d7cf2 0x892 ../apps/import/libs/libgcc.a(_moddi3.o) + .debug_line 0x00000000000d8584 0x735 ../apps/import/libs/libgcc.a(_udivdi3.o) + .debug_line 0x00000000000d8cb9 0x7f5 ../apps/import/libs/libgcc.a(_umoddi3.o) + .debug_line 0x00000000000d94ae 0x1467 ../apps/import/libs/libgcc.a(addtf3.o) + .debug_line 0x00000000000da915 0x11d0 ../apps/import/libs/libgcc.a(divtf3.o) + .debug_line 0x00000000000dbae5 0x305 ../apps/import/libs/libgcc.a(eqtf2.o) + .debug_line 0x00000000000dbdea 0x319 ../apps/import/libs/libgcc.a(getf2.o) + .debug_line 0x00000000000dc103 0x11f8 ../apps/import/libs/libgcc.a(multf3.o) + .debug_line 0x00000000000dd2fb 0x14b3 ../apps/import/libs/libgcc.a(subtf3.o) + .debug_line 0x00000000000de7ae 0x238 ../apps/import/libs/libgcc.a(floatsitf.o) + .debug_line 0x00000000000de9e6 0x216 ../apps/import/libs/libgcc.a(floatunsitf.o) + .debug_line 0x00000000000debfc 0x2fc ../apps/import/libs/libgcc.a(floatditf.o) + .debug_line 0x00000000000deef8 0x395 ../apps/import/libs/libgcc.a(extenddftf2.o) + .debug_line 0x00000000000df28d 0x679 ../apps/import/libs/libgcc.a(trunctfsf2.o) + .debug_line 0x00000000000df906 0x6a9 ../apps/import/libs/libgcc.a(trunctfdf2.o) + .debug_line 0x00000000000dffaf 0x57 ../apps/import/libs/libgcc.a(_clz.o) + .debug_line 0x00000000000e0006 0xa2 ../apps/import/libs/libm.a(lib_acos.o) + .debug_line 0x00000000000e00a8 0x26a ../apps/import/libs/libm.a(lib_asin.o) + .debug_line 0x00000000000e0312 0xb2 ../apps/import/libs/libm.a(lib_atan.o) + .debug_line 0x00000000000e03c4 0x179 ../apps/import/libs/libm.a(lib_atan2.o) + .debug_line 0x00000000000e053d 0x81 ../apps/import/libs/libm.a(lib_cos.o) + .debug_line 0x00000000000e05be 0xbc ../apps/import/libs/libm.a(lib_cosh.o) + .debug_line 0x00000000000e067a 0x285 ../apps/import/libs/libm.a(lib_exp.o) + .debug_line 0x00000000000e08ff 0x98 ../apps/import/libs/libm.a(lib_fabs.o) + .debug_line 0x00000000000e0997 0xb6 ../apps/import/libs/libm.a(lib_fmod.o) + .debug_line 0x00000000000e0a4d 0x27d ../apps/import/libs/libm.a(lib_log.o) + .debug_line 0x00000000000e0cca 0xa3 ../apps/import/libs/libm.a(lib_log10.o) + .debug_line 0x00000000000e0d6d 0xa2 ../apps/import/libs/libm.a(lib_log2.o) + .debug_line 0x00000000000e0e0f 0x15d ../apps/import/libs/libm.a(lib_modf.o) + .debug_line 0x00000000000e0f6c 0x15b ../apps/import/libs/libm.a(lib_pow.o) + .debug_line 0x00000000000e10c7 0x290 ../apps/import/libs/libm.a(lib_sin.o) + .debug_line 0x00000000000e1357 0x134 ../apps/import/libs/libm.a(lib_sinh.o) + .debug_line 0x00000000000e148b 0x2c2 ../apps/import/libs/libm.a(lib_sqrt.o) + .debug_line 0x00000000000e174d 0x99 ../apps/import/libs/libm.a(lib_tan.o) + .debug_line 0x00000000000e17e6 0xc6 ../apps/import/libs/libm.a(lib_tanh.o) + .debug_line 0x00000000000e18ac 0x10f ../apps/import/libs/libm.a(lib_asinh.o) + .debug_line 0x00000000000e19bb 0xb3 ../apps/import/libs/libm.a(lib_acosh.o) + .debug_line 0x00000000000e1a6e 0x115 ../apps/import/libs/libm.a(lib_atanh.o) + .debug_line 0x00000000000e1b83 0xf8 ../apps/import/libs/libm.a(lib_cbrt.o) + .debug_line 0x00000000000e1c7b 0x180 ../apps/import/libs/libm.a(lib_libexpi.o) + .debug_line 0x00000000000e1dfb 0xf4 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) + .debug_line 0x00000000000e1eef 0xa3 ../apps/import/libs/libm.a(lib_expm1.o) + .debug_line 0x00000000000e1f92 0x8e ../apps/import/libs/libm.a(lib_fmax.o) + .debug_line 0x00000000000e2020 0x8e ../apps/import/libs/libm.a(lib_fmin.o) + .debug_line 0x00000000000e20ae 0x10c ../apps/import/libs/libm.a(lib_ceil.o) + .debug_line 0x00000000000e21ba 0xf3 ../apps/import/libs/libm.a(lib_floor.o) + .debug_line 0x00000000000e22ad 0x15b ../apps/import/libs/libm.a(lib_round.o) + .debug_line 0x00000000000e2408 0x1bc ../apps/import/libs/libm.a(lib_trunc.o) + .debug_line 0x00000000000e25c4 0x319 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) + .debug_line 0x00000000000e28dd 0x369 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) + .debug_line 0x00000000000e2c46 0x133 ../apps/import/libs/libmm.a(umm_zalloc.o) .debug_pubnames *(.debug_pubnames) @@ -8962,249 +8969,249 @@ LOAD /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-da END GROUP OUTPUT(../apps/bin/qjs elf64-littleriscv) -.debug_loc 0x0000000000000000 0x119887 +.debug_loc 0x0000000000000000 0x1198a8 .debug_loc 0x0000000000000000 0x95 ../apps/import/startup/crt0.o .debug_loc 0x0000000000000095 0x1509 .obj/qjs.o - .debug_loc 0x000000000000159e 0xb590c .obj/quickjs.o - .debug_loc 0x00000000000b6eaa 0x7d97 .obj/libregexp.o - .debug_loc 0x00000000000bec41 0x7100 .obj/libunicode.o - .debug_loc 0x00000000000c5d41 0x2707 .obj/cutils.o - .debug_loc 0x00000000000c8448 0xe894 .obj/quickjs-libc.o - .debug_loc 0x00000000000d6cdc 0x1d63b .obj/libbf.o - .debug_loc 0x00000000000f4317 0x1e13 .obj/arch_atomic.o - .debug_loc 0x00000000000f612a 0x4c ../apps/import/libs/libmm.a(umm_free.o) - .debug_loc 0x00000000000f6176 0x4c ../apps/import/libs/libmm.a(umm_malloc.o) - .debug_loc 0x00000000000f61c2 0xf1 ../apps/import/libs/libmm.a(umm_memalign.o) - .debug_loc 0x00000000000f62b3 0xf1 ../apps/import/libs/libmm.a(umm_realloc.o) - .debug_loc 0x00000000000f63a4 0x16d ../apps/import/libs/libmm.a(umm_sbrk.o) - .debug_loc 0x00000000000f6511 0xe8 ../apps/import/libs/libmm.a(mm_brkaddr.o) - .debug_loc 0x00000000000f65f9 0x3b2 ../apps/import/libs/libmm.a(mm_extend.o) - .debug_loc 0x00000000000f69ab 0x5e3 ../apps/import/libs/libmm.a(mm_free.o) - .debug_loc 0x00000000000f6f8e 0x469 ../apps/import/libs/libmm.a(mm_memalign.o) - .debug_loc 0x00000000000f73f7 0x8fd ../apps/import/libs/libmm.a(mm_realloc.o) - .debug_loc 0x00000000000f7cf4 0x62 ../apps/import/libs/libmm.a(mm_heapmember.o) - .debug_loc 0x00000000000f7d56 0xce ../apps/import/libs/libmm.a(umm_initialize.o) - .debug_loc 0x00000000000f7e24 0x5c3 ../apps/import/libs/libmm.a(mm_initialize.o) - .debug_loc 0x00000000000f83e7 0xc1 ../apps/import/libs/libmm.a(mm_lock.o) - .debug_loc 0x00000000000f84a8 0x212 ../apps/import/libs/libmm.a(mm_addfreechunk.o) - .debug_loc 0x00000000000f86ba 0xa1 ../apps/import/libs/libmm.a(mm_size2ndx.o) - .debug_loc 0x00000000000f875b 0x3ad ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - .debug_loc 0x00000000000f8b08 0x2e9 ../apps/import/libs/libmm.a(mm_malloc.o) - .debug_loc 0x00000000000f8df1 0xab ../apps/import/libs/libc.a(lib_assert.o) - .debug_loc 0x00000000000f8e9c 0xde ../apps/import/libs/libc.a(lib_opendir.o) - .debug_loc 0x00000000000f8f7a 0x5f ../apps/import/libs/libc.a(lib_closedir.o) - .debug_loc 0x00000000000f8fd9 0x8a ../apps/import/libs/libc.a(lib_readdir.o) - .debug_loc 0x00000000000f9063 0xc29 ../apps/import/libs/libc.a(lib_mutex.o) - .debug_loc 0x00000000000f9c8c 0xc0 ../apps/import/libs/libc.a(pthread_attr_init.o) - .debug_loc 0x00000000000f9d4c 0xac ../apps/import/libs/libc.a(pthread_attr_destroy.o) - .debug_loc 0x00000000000f9df8 0x5c ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) - .debug_loc 0x00000000000f9e54 0x21a ../apps/import/libs/libc.a(pthread_create.o) - .debug_loc 0x00000000000fa06e 0x36 ../apps/import/libs/libc.a(pthread_exit.o) - .debug_loc 0x00000000000fa0a4 0x39 ../apps/import/libs/libc.a(pthread_mutex_lock.o) - .debug_loc 0x00000000000fa0dd 0x95 ../apps/import/libs/libc.a(clock_ticks2time.o) - .debug_loc 0x00000000000fa172 0x1bf ../apps/import/libs/libc.a(task_setcancelstate.o) - .debug_loc 0x00000000000fa331 0x2f0 ../apps/import/libs/libc.a(sem_init.o) - .debug_loc 0x00000000000fa621 0x1ee ../apps/import/libs/libc.a(sem_setprotocol.o) - .debug_loc 0x00000000000fa80f 0x11c ../apps/import/libs/libc.a(sem_getvalue.o) - .debug_loc 0x00000000000fa92b 0x19b ../apps/import/libs/libc.a(sig_signal.o) - .debug_loc 0x00000000000faac6 0x84 ../apps/import/libs/libc.a(lib_fileno.o) - .debug_loc 0x00000000000fab4a 0x4c ../apps/import/libs/libc.a(lib_printf.o) - .debug_loc 0x00000000000fab96 0x98 ../apps/import/libs/libc.a(lib_sprintf.o) - .debug_loc 0x00000000000fac2e 0x1d4 ../apps/import/libs/libc.a(lib_snprintf.o) - .debug_loc 0x00000000000fae02 0x204 ../apps/import/libs/libc.a(lib_vsnprintf.o) - .debug_loc 0x00000000000fb006 0x4b ../apps/import/libs/libc.a(lib_perror.o) - .debug_loc 0x00000000000fb051 0x72 ../apps/import/libs/libc.a(lib_putchar.o) - .debug_loc 0x00000000000fb0c3 0x100 ../apps/import/libs/libc.a(lib_puts.o) - .debug_loc 0x00000000000fb1c3 0x15fa ../apps/import/libs/libc.a(lib_libvsprintf.o) - .debug_loc 0x00000000000fc7bd 0x4c ../apps/import/libs/libc.a(lib_remove.o) - .debug_loc 0x00000000000fc809 0x157 ../apps/import/libs/libc.a(lib_ultoa_invert.o) - .debug_loc 0x00000000000fc960 0x50f ../apps/import/libs/libc.a(lib_dtoa_engine.o) - .debug_loc 0x00000000000fce6f 0x54d ../apps/import/libs/libc.a(lib_fopen.o) - .debug_loc 0x00000000000fd3bc 0x2f1 ../apps/import/libs/libc.a(lib_fclose.o) - .debug_loc 0x00000000000fd6ad 0x363 ../apps/import/libs/libc.a(lib_fread.o) - .debug_loc 0x00000000000fda10 0x36c ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - .debug_loc 0x00000000000fdd7c 0xab ../apps/import/libs/libc.a(lib_fseek.o) - .debug_loc 0x00000000000fde27 0x15e ../apps/import/libs/libc.a(lib_fseeko.o) - .debug_loc 0x00000000000fdf85 0x39 ../apps/import/libs/libc.a(lib_ftell.o) - .debug_loc 0x00000000000fdfbe 0x98 ../apps/import/libs/libc.a(lib_ftello.o) - .debug_loc 0x00000000000fe056 0xf1 ../apps/import/libs/libc.a(lib_fgetc.o) - .debug_loc 0x00000000000fe147 0x363 ../apps/import/libs/libc.a(lib_fwrite.o) - .debug_loc 0x00000000000fe4aa 0x298 ../apps/import/libs/libc.a(lib_libfwrite.o) - .debug_loc 0x00000000000fe742 0x15c ../apps/import/libs/libc.a(lib_fflush.o) - .debug_loc 0x00000000000fe89e 0x2d9 ../apps/import/libs/libc.a(lib_libflushall.o) - .debug_loc 0x00000000000feb77 0x85 ../apps/import/libs/libc.a(lib_libfflush.o) - .debug_loc 0x00000000000febfc 0xe4 ../apps/import/libs/libc.a(lib_putc.o) - .debug_loc 0x00000000000fece0 0x189 ../apps/import/libs/libc.a(lib_fputc.o) - .debug_loc 0x00000000000fee69 0x322 ../apps/import/libs/libc.a(lib_fputs.o) - .debug_loc 0x00000000000ff18b 0x72 ../apps/import/libs/libc.a(lib_fprintf.o) - .debug_loc 0x00000000000ff1fd 0x11d ../apps/import/libs/libc.a(lib_vfprintf.o) - .debug_loc 0x00000000000ff31a 0x39 ../apps/import/libs/libc.a(lib_feof.o) - .debug_loc 0x00000000000ff353 0x39 ../apps/import/libs/libc.a(lib_ferror.o) - .debug_loc 0x00000000000ff38c 0x82 ../apps/import/libs/libc.a(lib_clearerr.o) - .debug_loc 0x00000000000ff40e 0x5a ../apps/import/libs/libc.a(lib_tmpfile.o) - .debug_loc 0x00000000000ff468 0xea ../apps/import/libs/libc.a(lib_libfilelock.o) - .debug_loc 0x00000000000ff552 0x71 ../apps/import/libs/libc.a(lib_libgetstreams.o) - .debug_loc 0x00000000000ff5c3 0x39 ../apps/import/libs/libc.a(lib_atoi.o) - .debug_loc 0x00000000000ff5fc 0xab ../apps/import/libs/libc.a(lib_exit.o) - .debug_loc 0x00000000000ff6a7 0x2f3 ../apps/import/libs/libc.a(lib_realpath.o) - .debug_loc 0x00000000000ff99a 0x31d ../apps/import/libs/libc.a(lib_strtol.o) - .debug_loc 0x00000000000ffcb7 0x30a ../apps/import/libs/libc.a(lib_strtoul.o) - .debug_loc 0x00000000000fffc1 0x20b1 ../apps/import/libs/libc.a(lib_strtold.o) - .debug_loc 0x0000000000102072 0x16a ../apps/import/libs/libc.a(lib_checkbase.o) - .debug_loc 0x00000000001021dc 0x6f ../apps/import/libs/libc.a(lib_mkstemp.o) - .debug_loc 0x000000000010224b 0xab ../apps/import/libs/libc.a(lib_atexit.o) - .debug_loc 0x00000000001022f6 0x30f ../apps/import/libs/libc.a(lib_memoutstream.o) - .debug_loc 0x0000000000102605 0x26c ../apps/import/libs/libc.a(lib_nulloutstream.o) - .debug_loc 0x0000000000102871 0x39 ../apps/import/libs/libc.a(lib_libnoflush.o) - .debug_loc 0x00000000001028aa 0x38c ../apps/import/libs/libc.a(lib_stdoutstream.o) - .debug_loc 0x0000000000102c36 0xc0 ../apps/import/libs/libc.a(lib_flsl.o) - .debug_loc 0x0000000000102cf6 0x1e9 ../apps/import/libs/libc.a(lib_isbasedigit.o) - .debug_loc 0x0000000000102edf 0xaa ../apps/import/libs/libc.a(lib_skipspace.o) - .debug_loc 0x0000000000102f89 0x116 ../apps/import/libs/libc.a(lib_strcat.o) - .debug_loc 0x000000000010309f 0xcc ../apps/import/libs/libc.a(lib_strdup.o) - .debug_loc 0x000000000010316b 0x12f ../apps/import/libs/libc.a(lib_strerror.o) - .debug_loc 0x000000000010329a 0x6d ../apps/import/libs/libc.a(lib_strrchr.o) - .debug_loc 0x0000000000103307 0x11b ../apps/import/libs/libc.a(lib_strspn.o) - .debug_loc 0x0000000000103422 0xf9 ../apps/import/libs/libc.a(lib_memchr.o) - .debug_loc 0x000000000010351b 0x237 ../apps/import/libs/libc.a(lib_memcmp.o) - .debug_loc 0x0000000000103752 0x224 ../apps/import/libs/libc.a(lib_memmove.o) - .debug_loc 0x0000000000103976 0x1ec ../apps/import/libs/libc.a(lib_memset.o) - .debug_loc 0x0000000000103b62 0x62 ../apps/import/libs/libc.a(lib_strchr.o) - .debug_loc 0x0000000000103bc4 0x6c ../apps/import/libs/libc.a(lib_strcmp.o) - .debug_loc 0x0000000000103c30 0x6c ../apps/import/libs/libc.a(lib_strcpy.o) - .debug_loc 0x0000000000103c9c 0x1d2 ../apps/import/libs/libc.a(lib_strlcpy.o) - .debug_loc 0x0000000000103e6e 0x82 ../apps/import/libs/libc.a(lib_strlen.o) - .debug_loc 0x0000000000103ef0 0x12d ../apps/import/libs/libc.a(lib_strnlen.o) - .debug_loc 0x000000000010401d 0x12e ../apps/import/libs/libc.a(lib_memcpy.o) - .debug_loc 0x000000000010414b 0x16a ../apps/import/libs/libc.a(lib_syslog.o) - .debug_loc 0x00000000001042b5 0x39 ../apps/import/libs/libc.a(lib_setlogmask.o) - .debug_loc 0x00000000001042ee 0x39 ../apps/import/libs/libc.a(lib_isatty.o) - .debug_loc 0x0000000000104327 0x85 ../apps/import/libs/libc.a(lib_tcgetattr.o) - .debug_loc 0x00000000001043ac 0xd1 ../apps/import/libs/libc.a(lib_tcsetattr.o) - .debug_loc 0x000000000010447d 0xc1 ../apps/import/libs/libc.a(lib_gettimeofday.o) - .debug_loc 0x000000000010453e 0xe3 ../apps/import/libs/libc.a(lib_nanosleep.o) - .debug_loc 0x0000000000104621 0x6ce ../apps/import/libs/libc.a(lib_gmtimer.o) - .debug_loc 0x0000000000104cef 0x3c ../apps/import/libs/libc.a(task_getinfo.o) - .debug_loc 0x0000000000104d2b 0x116 ../apps/import/libs/libc.a(lib_sysconf.o) - .debug_loc 0x0000000000104e41 0x38 ../apps/import/libs/libc.a(lib_getoptindp.o) - .debug_loc 0x0000000000104e79 0x1ef ../apps/import/libs/libc.a(lib_utimes.o) - .debug_loc 0x0000000000105068 0x62 ../apps/import/libs/libc.a(lib_setuid.o) - .debug_loc 0x00000000001050ca 0x62 ../apps/import/libs/libc.a(lib_setgid.o) - .debug_loc 0x000000000010512c 0xf4 ../apps/import/libs/libc.a(lib_chdir.o) - .debug_loc 0x0000000000105220 0xc8 ../apps/import/libs/libc.a(lib_getcwd.o) - .debug_loc 0x00000000001052e8 0xd4 ../apps/import/libs/libc.a(lib_isspace.o) - .debug_loc 0x00000000001053bc 0xd4 ../apps/import/libs/libc.a(lib_isxdigit.o) - .debug_loc 0x0000000000105490 0x219 ../apps/import/libs/libc.a(lib_getfullpath.o) - .debug_loc 0x00000000001056a9 0x16b ../apps/import/libs/libc.a(sig_addset.o) - .debug_loc 0x0000000000105814 0x85 ../apps/import/libs/libc.a(sig_emptyset.o) - .debug_loc 0x0000000000105899 0x452 ../apps/import/libs/libc.a(lib_mktemp.o) - .debug_loc 0x0000000000105ceb 0x34c ../apps/import/libs/libc.a(lib_strlcat.o) - .debug_loc 0x0000000000106037 0x72 ../apps/import/libs/libc.a(lib_tcflush.o) - .debug_loc 0x00000000001060a9 0x39 ../apps/import/libs/libc.a(lib_tcdrain.o) - .debug_loc 0x00000000001060e2 0x39 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - .debug_loc 0x000000000010611b 0x62 ../apps/import/libs/libc.a(lib_isleapyear.o) - .debug_loc 0x000000000010617d 0xd2 ../apps/import/libs/libc.a(lib_dayofweek.o) - .debug_loc 0x000000000010624f 0x1cc ../apps/import/libs/libproxies.a(PROXY__assert.o) - .debug_loc 0x000000000010641b 0x88 ../apps/import/libs/libproxies.a(PROXY__exit.o) - .debug_loc 0x00000000001064a3 0x25 ../apps/import/libs/libproxies.a(PROXY_clock.o) - .debug_loc 0x00000000001064c8 0xf5 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) - .debug_loc 0x00000000001065bd 0x1c5 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) - .debug_loc 0x0000000000106782 0x89 ../apps/import/libs/libproxies.a(PROXY_close.o) - .debug_loc 0x000000000010680b 0x89 ../apps/import/libs/libproxies.a(PROXY_dup.o) - .debug_loc 0x0000000000106894 0xed ../apps/import/libs/libproxies.a(PROXY_dup2.o) - .debug_loc 0x0000000000106981 0x169 ../apps/import/libs/libproxies.a(PROXY_execve.o) - .debug_loc 0x0000000000106aea 0xed ../apps/import/libs/libproxies.a(PROXY_fcntl.o) - .debug_loc 0x0000000000106bd7 0x25 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) - .debug_loc 0x0000000000106bfc 0x91 ../apps/import/libs/libproxies.a(PROXY_getenv.o) - .debug_loc 0x0000000000106c8d 0x24 ../apps/import/libs/libproxies.a(PROXY_getpid.o) - .debug_loc 0x0000000000106cb1 0x24 ../apps/import/libs/libproxies.a(PROXY_gettid.o) - .debug_loc 0x0000000000106cd5 0xed ../apps/import/libs/libproxies.a(PROXY_ioctl.o) - .debug_loc 0x0000000000106dc2 0xed ../apps/import/libs/libproxies.a(PROXY_kill.o) - .debug_loc 0x0000000000106eaf 0x151 ../apps/import/libs/libproxies.a(PROXY_lseek.o) - .debug_loc 0x0000000000107000 0xfd ../apps/import/libs/libproxies.a(PROXY_lstat.o) - .debug_loc 0x00000000001070fd 0xf5 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) - .debug_loc 0x00000000001071f2 0x241 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) - .debug_loc 0x0000000000107433 0x91 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) - .debug_loc 0x00000000001074c4 0x161 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) - .debug_loc 0x0000000000107625 0x160 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) - .debug_loc 0x0000000000107785 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) - .debug_loc 0x0000000000107815 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) - .debug_loc 0x00000000001078a5 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) - .debug_loc 0x0000000000107935 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) - .debug_loc 0x00000000001079c5 0xf5 ../apps/import/libs/libproxies.a(PROXY_open.o) - .debug_loc 0x0000000000107aba 0xf5 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) - .debug_loc 0x0000000000107baf 0x91 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) - .debug_loc 0x0000000000107c40 0xfd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) - .debug_loc 0x0000000000107d3d 0xfd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) - .debug_loc 0x0000000000107e3a 0x91 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) - .debug_loc 0x0000000000107ecb 0x161 ../apps/import/libs/libproxies.a(PROXY_read.o) - .debug_loc 0x000000000010802c 0xfd ../apps/import/libs/libproxies.a(PROXY_rename.o) - .debug_loc 0x0000000000108129 0x91 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) - .debug_loc 0x00000000001081ba 0x24 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) - .debug_loc 0x00000000001081de 0x24 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) - .debug_loc 0x0000000000108202 0x239 ../apps/import/libs/libproxies.a(PROXY_select.o) - .debug_loc 0x000000000010843b 0x161 ../apps/import/libs/libproxies.a(PROXY_setenv.o) - .debug_loc 0x000000000010859c 0x161 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) - .debug_loc 0x00000000001086fd 0xfd ../apps/import/libs/libproxies.a(PROXY_stat.o) - .debug_loc 0x00000000001087fa 0x91 ../apps/import/libs/libproxies.a(PROXY_unlink.o) - .debug_loc 0x000000000010888b 0x91 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) - .debug_loc 0x000000000010891c 0x25 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) - .debug_loc 0x0000000000108941 0xfd ../apps/import/libs/libproxies.a(PROXY_utimens.o) - .debug_loc 0x0000000000108a3e 0x159 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) - .debug_loc 0x0000000000108b97 0x161 ../apps/import/libs/libproxies.a(PROXY_write.o) - .debug_loc 0x0000000000108cf8 0xaa ../apps/import/libs/libgcc.a(_clzsi2.o) - .debug_loc 0x0000000000108da2 0x129 ../apps/import/libs/libgcc.a(_ctzsi2.o) - .debug_loc 0x0000000000108ecb 0x102f ../apps/import/libs/libgcc.a(_divdi3.o) - .debug_loc 0x0000000000109efa 0xf34 ../apps/import/libs/libgcc.a(_moddi3.o) - .debug_loc 0x000000000010ae2e 0x11d6 ../apps/import/libs/libgcc.a(_udivdi3.o) - .debug_loc 0x000000000010c004 0x100f ../apps/import/libs/libgcc.a(_umoddi3.o) - .debug_loc 0x000000000010d013 0x2666 ../apps/import/libs/libgcc.a(addtf3.o) - .debug_loc 0x000000000010f679 0x2393 ../apps/import/libs/libgcc.a(divtf3.o) - .debug_loc 0x0000000000111a0c 0x2a8 ../apps/import/libs/libgcc.a(eqtf2.o) - .debug_loc 0x0000000000111cb4 0x21a ../apps/import/libs/libgcc.a(getf2.o) - .debug_loc 0x0000000000111ece 0x1fdc ../apps/import/libs/libgcc.a(multf3.o) - .debug_loc 0x0000000000113eaa 0x2147 ../apps/import/libs/libgcc.a(subtf3.o) - .debug_loc 0x0000000000115ff1 0x146 ../apps/import/libs/libgcc.a(floatsitf.o) - .debug_loc 0x0000000000116137 0x172 ../apps/import/libs/libgcc.a(floatunsitf.o) - .debug_loc 0x00000000001162a9 0x2d5 ../apps/import/libs/libgcc.a(floatditf.o) - .debug_loc 0x000000000011657e 0x3a6 ../apps/import/libs/libgcc.a(extenddftf2.o) - .debug_loc 0x0000000000116924 0x7b7 ../apps/import/libs/libgcc.a(trunctfsf2.o) - .debug_loc 0x00000000001170db 0x8fa ../apps/import/libs/libgcc.a(trunctfdf2.o) - .debug_loc 0x00000000001179d5 0x3c ../apps/import/libs/libm.a(lib_acos.o) - .debug_loc 0x0000000000117a11 0x24c ../apps/import/libs/libm.a(lib_asin.o) - .debug_loc 0x0000000000117c5d 0x50 ../apps/import/libs/libm.a(lib_atan.o) - .debug_loc 0x0000000000117cad 0x194 ../apps/import/libs/libm.a(lib_atan2.o) - .debug_loc 0x0000000000117e41 0x3c ../apps/import/libs/libm.a(lib_cos.o) - .debug_loc 0x0000000000117e7d 0x50 ../apps/import/libs/libm.a(lib_cosh.o) - .debug_loc 0x0000000000117ecd 0x176 ../apps/import/libs/libm.a(lib_exp.o) - .debug_loc 0x0000000000118043 0x3c ../apps/import/libs/libm.a(lib_fabs.o) - .debug_loc 0x000000000011807f 0xa0 ../apps/import/libs/libm.a(lib_fmod.o) - .debug_loc 0x000000000011811f 0x2e3 ../apps/import/libs/libm.a(lib_log.o) - .debug_loc 0x0000000000118402 0x3c ../apps/import/libs/libm.a(lib_log10.o) - .debug_loc 0x000000000011843e 0x3c ../apps/import/libs/libm.a(lib_log2.o) - .debug_loc 0x000000000011847a 0x64 ../apps/import/libs/libm.a(lib_modf.o) - .debug_loc 0x00000000001184de 0x124 ../apps/import/libs/libm.a(lib_pow.o) - .debug_loc 0x0000000000118602 0x103 ../apps/import/libs/libm.a(lib_sin.o) - .debug_loc 0x0000000000118705 0x10c ../apps/import/libs/libm.a(lib_sinh.o) - .debug_loc 0x0000000000118811 0x26d ../apps/import/libs/libm.a(lib_sqrt.o) - .debug_loc 0x0000000000118a7e 0x50 ../apps/import/libs/libm.a(lib_tan.o) - .debug_loc 0x0000000000118ace 0x60 ../apps/import/libs/libm.a(lib_tanh.o) - .debug_loc 0x0000000000118b2e 0x124 ../apps/import/libs/libm.a(lib_asinh.o) - .debug_loc 0x0000000000118c52 0x50 ../apps/import/libs/libm.a(lib_acosh.o) - .debug_loc 0x0000000000118ca2 0x116 ../apps/import/libs/libm.a(lib_atanh.o) - .debug_loc 0x0000000000118db8 0x94 ../apps/import/libs/libm.a(lib_cbrt.o) - .debug_loc 0x0000000000118e4c 0xb8 ../apps/import/libs/libm.a(lib_libexpi.o) - .debug_loc 0x0000000000118f04 0x3c ../apps/import/libs/libm.a(lib_libsqrtapprox.o) - .debug_loc 0x0000000000118f40 0x3c ../apps/import/libs/libm.a(lib_expm1.o) - .debug_loc 0x0000000000118f7c 0x3c ../apps/import/libs/libm.a(lib_fmax.o) - .debug_loc 0x0000000000118fb8 0x3c ../apps/import/libs/libm.a(lib_fmin.o) - .debug_loc 0x0000000000118ff4 0x74 ../apps/import/libs/libm.a(lib_ceil.o) - .debug_loc 0x0000000000119068 0x50 ../apps/import/libs/libm.a(lib_floor.o) - .debug_loc 0x00000000001190b8 0x48 ../apps/import/libs/libm.a(lib_round.o) - .debug_loc 0x0000000000119100 0x101 ../apps/import/libs/libm.a(lib_trunc.o) - .debug_loc 0x0000000000119201 0x219 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) - .debug_loc 0x000000000011941a 0x3ec /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) - .debug_loc 0x0000000000119806 0x81 ../apps/import/libs/libmm.a(umm_zalloc.o) + .debug_loc 0x000000000000159e 0xb592d .obj/quickjs.o + .debug_loc 0x00000000000b6ecb 0x7d97 .obj/libregexp.o + .debug_loc 0x00000000000bec62 0x7100 .obj/libunicode.o + .debug_loc 0x00000000000c5d62 0x2707 .obj/cutils.o + .debug_loc 0x00000000000c8469 0xe894 .obj/quickjs-libc.o + .debug_loc 0x00000000000d6cfd 0x1d63b .obj/libbf.o + .debug_loc 0x00000000000f4338 0x1e13 .obj/arch_atomic.o + .debug_loc 0x00000000000f614b 0x4c ../apps/import/libs/libmm.a(umm_free.o) + .debug_loc 0x00000000000f6197 0x4c ../apps/import/libs/libmm.a(umm_malloc.o) + .debug_loc 0x00000000000f61e3 0xf1 ../apps/import/libs/libmm.a(umm_memalign.o) + .debug_loc 0x00000000000f62d4 0xf1 ../apps/import/libs/libmm.a(umm_realloc.o) + .debug_loc 0x00000000000f63c5 0x16d ../apps/import/libs/libmm.a(umm_sbrk.o) + .debug_loc 0x00000000000f6532 0xe8 ../apps/import/libs/libmm.a(mm_brkaddr.o) + .debug_loc 0x00000000000f661a 0x3b2 ../apps/import/libs/libmm.a(mm_extend.o) + .debug_loc 0x00000000000f69cc 0x5e3 ../apps/import/libs/libmm.a(mm_free.o) + .debug_loc 0x00000000000f6faf 0x469 ../apps/import/libs/libmm.a(mm_memalign.o) + .debug_loc 0x00000000000f7418 0x8fd ../apps/import/libs/libmm.a(mm_realloc.o) + .debug_loc 0x00000000000f7d15 0x62 ../apps/import/libs/libmm.a(mm_heapmember.o) + .debug_loc 0x00000000000f7d77 0xce ../apps/import/libs/libmm.a(umm_initialize.o) + .debug_loc 0x00000000000f7e45 0x5c3 ../apps/import/libs/libmm.a(mm_initialize.o) + .debug_loc 0x00000000000f8408 0xc1 ../apps/import/libs/libmm.a(mm_lock.o) + .debug_loc 0x00000000000f84c9 0x212 ../apps/import/libs/libmm.a(mm_addfreechunk.o) + .debug_loc 0x00000000000f86db 0xa1 ../apps/import/libs/libmm.a(mm_size2ndx.o) + .debug_loc 0x00000000000f877c 0x3ad ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + .debug_loc 0x00000000000f8b29 0x2e9 ../apps/import/libs/libmm.a(mm_malloc.o) + .debug_loc 0x00000000000f8e12 0xab ../apps/import/libs/libc.a(lib_assert.o) + .debug_loc 0x00000000000f8ebd 0xde ../apps/import/libs/libc.a(lib_opendir.o) + .debug_loc 0x00000000000f8f9b 0x5f ../apps/import/libs/libc.a(lib_closedir.o) + .debug_loc 0x00000000000f8ffa 0x8a ../apps/import/libs/libc.a(lib_readdir.o) + .debug_loc 0x00000000000f9084 0xc29 ../apps/import/libs/libc.a(lib_mutex.o) + .debug_loc 0x00000000000f9cad 0xc0 ../apps/import/libs/libc.a(pthread_attr_init.o) + .debug_loc 0x00000000000f9d6d 0xac ../apps/import/libs/libc.a(pthread_attr_destroy.o) + .debug_loc 0x00000000000f9e19 0x5c ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) + .debug_loc 0x00000000000f9e75 0x21a ../apps/import/libs/libc.a(pthread_create.o) + .debug_loc 0x00000000000fa08f 0x36 ../apps/import/libs/libc.a(pthread_exit.o) + .debug_loc 0x00000000000fa0c5 0x39 ../apps/import/libs/libc.a(pthread_mutex_lock.o) + .debug_loc 0x00000000000fa0fe 0x95 ../apps/import/libs/libc.a(clock_ticks2time.o) + .debug_loc 0x00000000000fa193 0x1bf ../apps/import/libs/libc.a(task_setcancelstate.o) + .debug_loc 0x00000000000fa352 0x2f0 ../apps/import/libs/libc.a(sem_init.o) + .debug_loc 0x00000000000fa642 0x1ee ../apps/import/libs/libc.a(sem_setprotocol.o) + .debug_loc 0x00000000000fa830 0x11c ../apps/import/libs/libc.a(sem_getvalue.o) + .debug_loc 0x00000000000fa94c 0x19b ../apps/import/libs/libc.a(sig_signal.o) + .debug_loc 0x00000000000faae7 0x84 ../apps/import/libs/libc.a(lib_fileno.o) + .debug_loc 0x00000000000fab6b 0x4c ../apps/import/libs/libc.a(lib_printf.o) + .debug_loc 0x00000000000fabb7 0x98 ../apps/import/libs/libc.a(lib_sprintf.o) + .debug_loc 0x00000000000fac4f 0x1d4 ../apps/import/libs/libc.a(lib_snprintf.o) + .debug_loc 0x00000000000fae23 0x204 ../apps/import/libs/libc.a(lib_vsnprintf.o) + .debug_loc 0x00000000000fb027 0x4b ../apps/import/libs/libc.a(lib_perror.o) + .debug_loc 0x00000000000fb072 0x72 ../apps/import/libs/libc.a(lib_putchar.o) + .debug_loc 0x00000000000fb0e4 0x100 ../apps/import/libs/libc.a(lib_puts.o) + .debug_loc 0x00000000000fb1e4 0x15fa ../apps/import/libs/libc.a(lib_libvsprintf.o) + .debug_loc 0x00000000000fc7de 0x4c ../apps/import/libs/libc.a(lib_remove.o) + .debug_loc 0x00000000000fc82a 0x157 ../apps/import/libs/libc.a(lib_ultoa_invert.o) + .debug_loc 0x00000000000fc981 0x50f ../apps/import/libs/libc.a(lib_dtoa_engine.o) + .debug_loc 0x00000000000fce90 0x54d ../apps/import/libs/libc.a(lib_fopen.o) + .debug_loc 0x00000000000fd3dd 0x2f1 ../apps/import/libs/libc.a(lib_fclose.o) + .debug_loc 0x00000000000fd6ce 0x363 ../apps/import/libs/libc.a(lib_fread.o) + .debug_loc 0x00000000000fda31 0x36c ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + .debug_loc 0x00000000000fdd9d 0xab ../apps/import/libs/libc.a(lib_fseek.o) + .debug_loc 0x00000000000fde48 0x15e ../apps/import/libs/libc.a(lib_fseeko.o) + .debug_loc 0x00000000000fdfa6 0x39 ../apps/import/libs/libc.a(lib_ftell.o) + .debug_loc 0x00000000000fdfdf 0x98 ../apps/import/libs/libc.a(lib_ftello.o) + .debug_loc 0x00000000000fe077 0xf1 ../apps/import/libs/libc.a(lib_fgetc.o) + .debug_loc 0x00000000000fe168 0x363 ../apps/import/libs/libc.a(lib_fwrite.o) + .debug_loc 0x00000000000fe4cb 0x298 ../apps/import/libs/libc.a(lib_libfwrite.o) + .debug_loc 0x00000000000fe763 0x15c ../apps/import/libs/libc.a(lib_fflush.o) + .debug_loc 0x00000000000fe8bf 0x2d9 ../apps/import/libs/libc.a(lib_libflushall.o) + .debug_loc 0x00000000000feb98 0x85 ../apps/import/libs/libc.a(lib_libfflush.o) + .debug_loc 0x00000000000fec1d 0xe4 ../apps/import/libs/libc.a(lib_putc.o) + .debug_loc 0x00000000000fed01 0x189 ../apps/import/libs/libc.a(lib_fputc.o) + .debug_loc 0x00000000000fee8a 0x322 ../apps/import/libs/libc.a(lib_fputs.o) + .debug_loc 0x00000000000ff1ac 0x72 ../apps/import/libs/libc.a(lib_fprintf.o) + .debug_loc 0x00000000000ff21e 0x11d ../apps/import/libs/libc.a(lib_vfprintf.o) + .debug_loc 0x00000000000ff33b 0x39 ../apps/import/libs/libc.a(lib_feof.o) + .debug_loc 0x00000000000ff374 0x39 ../apps/import/libs/libc.a(lib_ferror.o) + .debug_loc 0x00000000000ff3ad 0x82 ../apps/import/libs/libc.a(lib_clearerr.o) + .debug_loc 0x00000000000ff42f 0x5a ../apps/import/libs/libc.a(lib_tmpfile.o) + .debug_loc 0x00000000000ff489 0xea ../apps/import/libs/libc.a(lib_libfilelock.o) + .debug_loc 0x00000000000ff573 0x71 ../apps/import/libs/libc.a(lib_libgetstreams.o) + .debug_loc 0x00000000000ff5e4 0x39 ../apps/import/libs/libc.a(lib_atoi.o) + .debug_loc 0x00000000000ff61d 0xab ../apps/import/libs/libc.a(lib_exit.o) + .debug_loc 0x00000000000ff6c8 0x2f3 ../apps/import/libs/libc.a(lib_realpath.o) + .debug_loc 0x00000000000ff9bb 0x31d ../apps/import/libs/libc.a(lib_strtol.o) + .debug_loc 0x00000000000ffcd8 0x30a ../apps/import/libs/libc.a(lib_strtoul.o) + .debug_loc 0x00000000000fffe2 0x20b1 ../apps/import/libs/libc.a(lib_strtold.o) + .debug_loc 0x0000000000102093 0x16a ../apps/import/libs/libc.a(lib_checkbase.o) + .debug_loc 0x00000000001021fd 0x6f ../apps/import/libs/libc.a(lib_mkstemp.o) + .debug_loc 0x000000000010226c 0xab ../apps/import/libs/libc.a(lib_atexit.o) + .debug_loc 0x0000000000102317 0x30f ../apps/import/libs/libc.a(lib_memoutstream.o) + .debug_loc 0x0000000000102626 0x26c ../apps/import/libs/libc.a(lib_nulloutstream.o) + .debug_loc 0x0000000000102892 0x39 ../apps/import/libs/libc.a(lib_libnoflush.o) + .debug_loc 0x00000000001028cb 0x38c ../apps/import/libs/libc.a(lib_stdoutstream.o) + .debug_loc 0x0000000000102c57 0xc0 ../apps/import/libs/libc.a(lib_flsl.o) + .debug_loc 0x0000000000102d17 0x1e9 ../apps/import/libs/libc.a(lib_isbasedigit.o) + .debug_loc 0x0000000000102f00 0xaa ../apps/import/libs/libc.a(lib_skipspace.o) + .debug_loc 0x0000000000102faa 0x116 ../apps/import/libs/libc.a(lib_strcat.o) + .debug_loc 0x00000000001030c0 0xcc ../apps/import/libs/libc.a(lib_strdup.o) + .debug_loc 0x000000000010318c 0x12f ../apps/import/libs/libc.a(lib_strerror.o) + .debug_loc 0x00000000001032bb 0x6d ../apps/import/libs/libc.a(lib_strrchr.o) + .debug_loc 0x0000000000103328 0x11b ../apps/import/libs/libc.a(lib_strspn.o) + .debug_loc 0x0000000000103443 0xf9 ../apps/import/libs/libc.a(lib_memchr.o) + .debug_loc 0x000000000010353c 0x237 ../apps/import/libs/libc.a(lib_memcmp.o) + .debug_loc 0x0000000000103773 0x224 ../apps/import/libs/libc.a(lib_memmove.o) + .debug_loc 0x0000000000103997 0x1ec ../apps/import/libs/libc.a(lib_memset.o) + .debug_loc 0x0000000000103b83 0x62 ../apps/import/libs/libc.a(lib_strchr.o) + .debug_loc 0x0000000000103be5 0x6c ../apps/import/libs/libc.a(lib_strcmp.o) + .debug_loc 0x0000000000103c51 0x6c ../apps/import/libs/libc.a(lib_strcpy.o) + .debug_loc 0x0000000000103cbd 0x1d2 ../apps/import/libs/libc.a(lib_strlcpy.o) + .debug_loc 0x0000000000103e8f 0x82 ../apps/import/libs/libc.a(lib_strlen.o) + .debug_loc 0x0000000000103f11 0x12d ../apps/import/libs/libc.a(lib_strnlen.o) + .debug_loc 0x000000000010403e 0x12e ../apps/import/libs/libc.a(lib_memcpy.o) + .debug_loc 0x000000000010416c 0x16a ../apps/import/libs/libc.a(lib_syslog.o) + .debug_loc 0x00000000001042d6 0x39 ../apps/import/libs/libc.a(lib_setlogmask.o) + .debug_loc 0x000000000010430f 0x39 ../apps/import/libs/libc.a(lib_isatty.o) + .debug_loc 0x0000000000104348 0x85 ../apps/import/libs/libc.a(lib_tcgetattr.o) + .debug_loc 0x00000000001043cd 0xd1 ../apps/import/libs/libc.a(lib_tcsetattr.o) + .debug_loc 0x000000000010449e 0xc1 ../apps/import/libs/libc.a(lib_gettimeofday.o) + .debug_loc 0x000000000010455f 0xe3 ../apps/import/libs/libc.a(lib_nanosleep.o) + .debug_loc 0x0000000000104642 0x6ce ../apps/import/libs/libc.a(lib_gmtimer.o) + .debug_loc 0x0000000000104d10 0x3c ../apps/import/libs/libc.a(task_getinfo.o) + .debug_loc 0x0000000000104d4c 0x116 ../apps/import/libs/libc.a(lib_sysconf.o) + .debug_loc 0x0000000000104e62 0x38 ../apps/import/libs/libc.a(lib_getoptindp.o) + .debug_loc 0x0000000000104e9a 0x1ef ../apps/import/libs/libc.a(lib_utimes.o) + .debug_loc 0x0000000000105089 0x62 ../apps/import/libs/libc.a(lib_setuid.o) + .debug_loc 0x00000000001050eb 0x62 ../apps/import/libs/libc.a(lib_setgid.o) + .debug_loc 0x000000000010514d 0xf4 ../apps/import/libs/libc.a(lib_chdir.o) + .debug_loc 0x0000000000105241 0xc8 ../apps/import/libs/libc.a(lib_getcwd.o) + .debug_loc 0x0000000000105309 0xd4 ../apps/import/libs/libc.a(lib_isspace.o) + .debug_loc 0x00000000001053dd 0xd4 ../apps/import/libs/libc.a(lib_isxdigit.o) + .debug_loc 0x00000000001054b1 0x219 ../apps/import/libs/libc.a(lib_getfullpath.o) + .debug_loc 0x00000000001056ca 0x16b ../apps/import/libs/libc.a(sig_addset.o) + .debug_loc 0x0000000000105835 0x85 ../apps/import/libs/libc.a(sig_emptyset.o) + .debug_loc 0x00000000001058ba 0x452 ../apps/import/libs/libc.a(lib_mktemp.o) + .debug_loc 0x0000000000105d0c 0x34c ../apps/import/libs/libc.a(lib_strlcat.o) + .debug_loc 0x0000000000106058 0x72 ../apps/import/libs/libc.a(lib_tcflush.o) + .debug_loc 0x00000000001060ca 0x39 ../apps/import/libs/libc.a(lib_tcdrain.o) + .debug_loc 0x0000000000106103 0x39 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + .debug_loc 0x000000000010613c 0x62 ../apps/import/libs/libc.a(lib_isleapyear.o) + .debug_loc 0x000000000010619e 0xd2 ../apps/import/libs/libc.a(lib_dayofweek.o) + .debug_loc 0x0000000000106270 0x1cc ../apps/import/libs/libproxies.a(PROXY__assert.o) + .debug_loc 0x000000000010643c 0x88 ../apps/import/libs/libproxies.a(PROXY__exit.o) + .debug_loc 0x00000000001064c4 0x25 ../apps/import/libs/libproxies.a(PROXY_clock.o) + .debug_loc 0x00000000001064e9 0xf5 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) + .debug_loc 0x00000000001065de 0x1c5 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) + .debug_loc 0x00000000001067a3 0x89 ../apps/import/libs/libproxies.a(PROXY_close.o) + .debug_loc 0x000000000010682c 0x89 ../apps/import/libs/libproxies.a(PROXY_dup.o) + .debug_loc 0x00000000001068b5 0xed ../apps/import/libs/libproxies.a(PROXY_dup2.o) + .debug_loc 0x00000000001069a2 0x169 ../apps/import/libs/libproxies.a(PROXY_execve.o) + .debug_loc 0x0000000000106b0b 0xed ../apps/import/libs/libproxies.a(PROXY_fcntl.o) + .debug_loc 0x0000000000106bf8 0x25 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) + .debug_loc 0x0000000000106c1d 0x91 ../apps/import/libs/libproxies.a(PROXY_getenv.o) + .debug_loc 0x0000000000106cae 0x24 ../apps/import/libs/libproxies.a(PROXY_getpid.o) + .debug_loc 0x0000000000106cd2 0x24 ../apps/import/libs/libproxies.a(PROXY_gettid.o) + .debug_loc 0x0000000000106cf6 0xed ../apps/import/libs/libproxies.a(PROXY_ioctl.o) + .debug_loc 0x0000000000106de3 0xed ../apps/import/libs/libproxies.a(PROXY_kill.o) + .debug_loc 0x0000000000106ed0 0x151 ../apps/import/libs/libproxies.a(PROXY_lseek.o) + .debug_loc 0x0000000000107021 0xfd ../apps/import/libs/libproxies.a(PROXY_lstat.o) + .debug_loc 0x000000000010711e 0xf5 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) + .debug_loc 0x0000000000107213 0x241 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) + .debug_loc 0x0000000000107454 0x91 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) + .debug_loc 0x00000000001074e5 0x161 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) + .debug_loc 0x0000000000107646 0x160 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) + .debug_loc 0x00000000001077a6 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) + .debug_loc 0x0000000000107836 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) + .debug_loc 0x00000000001078c6 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) + .debug_loc 0x0000000000107956 0x90 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) + .debug_loc 0x00000000001079e6 0xf5 ../apps/import/libs/libproxies.a(PROXY_open.o) + .debug_loc 0x0000000000107adb 0xf5 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) + .debug_loc 0x0000000000107bd0 0x91 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) + .debug_loc 0x0000000000107c61 0xfd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) + .debug_loc 0x0000000000107d5e 0xfd ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) + .debug_loc 0x0000000000107e5b 0x91 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) + .debug_loc 0x0000000000107eec 0x161 ../apps/import/libs/libproxies.a(PROXY_read.o) + .debug_loc 0x000000000010804d 0xfd ../apps/import/libs/libproxies.a(PROXY_rename.o) + .debug_loc 0x000000000010814a 0x91 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) + .debug_loc 0x00000000001081db 0x24 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) + .debug_loc 0x00000000001081ff 0x24 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) + .debug_loc 0x0000000000108223 0x239 ../apps/import/libs/libproxies.a(PROXY_select.o) + .debug_loc 0x000000000010845c 0x161 ../apps/import/libs/libproxies.a(PROXY_setenv.o) + .debug_loc 0x00000000001085bd 0x161 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) + .debug_loc 0x000000000010871e 0xfd ../apps/import/libs/libproxies.a(PROXY_stat.o) + .debug_loc 0x000000000010881b 0x91 ../apps/import/libs/libproxies.a(PROXY_unlink.o) + .debug_loc 0x00000000001088ac 0x91 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) + .debug_loc 0x000000000010893d 0x25 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) + .debug_loc 0x0000000000108962 0xfd ../apps/import/libs/libproxies.a(PROXY_utimens.o) + .debug_loc 0x0000000000108a5f 0x159 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) + .debug_loc 0x0000000000108bb8 0x161 ../apps/import/libs/libproxies.a(PROXY_write.o) + .debug_loc 0x0000000000108d19 0xaa ../apps/import/libs/libgcc.a(_clzsi2.o) + .debug_loc 0x0000000000108dc3 0x129 ../apps/import/libs/libgcc.a(_ctzsi2.o) + .debug_loc 0x0000000000108eec 0x102f ../apps/import/libs/libgcc.a(_divdi3.o) + .debug_loc 0x0000000000109f1b 0xf34 ../apps/import/libs/libgcc.a(_moddi3.o) + .debug_loc 0x000000000010ae4f 0x11d6 ../apps/import/libs/libgcc.a(_udivdi3.o) + .debug_loc 0x000000000010c025 0x100f ../apps/import/libs/libgcc.a(_umoddi3.o) + .debug_loc 0x000000000010d034 0x2666 ../apps/import/libs/libgcc.a(addtf3.o) + .debug_loc 0x000000000010f69a 0x2393 ../apps/import/libs/libgcc.a(divtf3.o) + .debug_loc 0x0000000000111a2d 0x2a8 ../apps/import/libs/libgcc.a(eqtf2.o) + .debug_loc 0x0000000000111cd5 0x21a ../apps/import/libs/libgcc.a(getf2.o) + .debug_loc 0x0000000000111eef 0x1fdc ../apps/import/libs/libgcc.a(multf3.o) + .debug_loc 0x0000000000113ecb 0x2147 ../apps/import/libs/libgcc.a(subtf3.o) + .debug_loc 0x0000000000116012 0x146 ../apps/import/libs/libgcc.a(floatsitf.o) + .debug_loc 0x0000000000116158 0x172 ../apps/import/libs/libgcc.a(floatunsitf.o) + .debug_loc 0x00000000001162ca 0x2d5 ../apps/import/libs/libgcc.a(floatditf.o) + .debug_loc 0x000000000011659f 0x3a6 ../apps/import/libs/libgcc.a(extenddftf2.o) + .debug_loc 0x0000000000116945 0x7b7 ../apps/import/libs/libgcc.a(trunctfsf2.o) + .debug_loc 0x00000000001170fc 0x8fa ../apps/import/libs/libgcc.a(trunctfdf2.o) + .debug_loc 0x00000000001179f6 0x3c ../apps/import/libs/libm.a(lib_acos.o) + .debug_loc 0x0000000000117a32 0x24c ../apps/import/libs/libm.a(lib_asin.o) + .debug_loc 0x0000000000117c7e 0x50 ../apps/import/libs/libm.a(lib_atan.o) + .debug_loc 0x0000000000117cce 0x194 ../apps/import/libs/libm.a(lib_atan2.o) + .debug_loc 0x0000000000117e62 0x3c ../apps/import/libs/libm.a(lib_cos.o) + .debug_loc 0x0000000000117e9e 0x50 ../apps/import/libs/libm.a(lib_cosh.o) + .debug_loc 0x0000000000117eee 0x176 ../apps/import/libs/libm.a(lib_exp.o) + .debug_loc 0x0000000000118064 0x3c ../apps/import/libs/libm.a(lib_fabs.o) + .debug_loc 0x00000000001180a0 0xa0 ../apps/import/libs/libm.a(lib_fmod.o) + .debug_loc 0x0000000000118140 0x2e3 ../apps/import/libs/libm.a(lib_log.o) + .debug_loc 0x0000000000118423 0x3c ../apps/import/libs/libm.a(lib_log10.o) + .debug_loc 0x000000000011845f 0x3c ../apps/import/libs/libm.a(lib_log2.o) + .debug_loc 0x000000000011849b 0x64 ../apps/import/libs/libm.a(lib_modf.o) + .debug_loc 0x00000000001184ff 0x124 ../apps/import/libs/libm.a(lib_pow.o) + .debug_loc 0x0000000000118623 0x103 ../apps/import/libs/libm.a(lib_sin.o) + .debug_loc 0x0000000000118726 0x10c ../apps/import/libs/libm.a(lib_sinh.o) + .debug_loc 0x0000000000118832 0x26d ../apps/import/libs/libm.a(lib_sqrt.o) + .debug_loc 0x0000000000118a9f 0x50 ../apps/import/libs/libm.a(lib_tan.o) + .debug_loc 0x0000000000118aef 0x60 ../apps/import/libs/libm.a(lib_tanh.o) + .debug_loc 0x0000000000118b4f 0x124 ../apps/import/libs/libm.a(lib_asinh.o) + .debug_loc 0x0000000000118c73 0x50 ../apps/import/libs/libm.a(lib_acosh.o) + .debug_loc 0x0000000000118cc3 0x116 ../apps/import/libs/libm.a(lib_atanh.o) + .debug_loc 0x0000000000118dd9 0x94 ../apps/import/libs/libm.a(lib_cbrt.o) + .debug_loc 0x0000000000118e6d 0xb8 ../apps/import/libs/libm.a(lib_libexpi.o) + .debug_loc 0x0000000000118f25 0x3c ../apps/import/libs/libm.a(lib_libsqrtapprox.o) + .debug_loc 0x0000000000118f61 0x3c ../apps/import/libs/libm.a(lib_expm1.o) + .debug_loc 0x0000000000118f9d 0x3c ../apps/import/libs/libm.a(lib_fmax.o) + .debug_loc 0x0000000000118fd9 0x3c ../apps/import/libs/libm.a(lib_fmin.o) + .debug_loc 0x0000000000119015 0x74 ../apps/import/libs/libm.a(lib_ceil.o) + .debug_loc 0x0000000000119089 0x50 ../apps/import/libs/libm.a(lib_floor.o) + .debug_loc 0x00000000001190d9 0x48 ../apps/import/libs/libm.a(lib_round.o) + .debug_loc 0x0000000000119121 0x101 ../apps/import/libs/libm.a(lib_trunc.o) + .debug_loc 0x0000000000119222 0x219 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) + .debug_loc 0x000000000011943b 0x3ec /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) + .debug_loc 0x0000000000119827 0x81 ../apps/import/libs/libmm.a(umm_zalloc.o) .debug_ranges 0x0000000000000000 0x25ee0 .debug_ranges 0x0000000000000000 0x30 ../apps/import/startup/crt0.o @@ -9957,248 +9964,248 @@ OUTPUT(../apps/bin/qjs elf64-littleriscv) .debug_str 0x00000000000172ab 0x16 ../apps/import/libs/libmm.a(umm_zalloc.o) 0x1b7 (size before relaxing) -.debug_frame 0x0000000000000000 0x16950 +.debug_frame 0x0000000000000000 0x16960 .debug_frame 0x0000000000000000 0x48 ../apps/import/startup/crt0.o .debug_frame 0x0000000000000048 0x240 .obj/qjs.o - .debug_frame 0x0000000000000288 0xdd20 .obj/quickjs.o - .debug_frame 0x000000000000dfa8 0x620 .obj/libregexp.o - .debug_frame 0x000000000000e5c8 0x7a8 .obj/libunicode.o - .debug_frame 0x000000000000ed70 0x440 .obj/cutils.o - .debug_frame 0x000000000000f1b0 0x1908 .obj/quickjs-libc.o - .debug_frame 0x0000000000010ab8 0x1a68 .obj/libbf.o - .debug_frame 0x0000000000012520 0x6a0 .obj/arch_atomic.o - .debug_frame 0x0000000000012bc0 0x190 .obj/stub.o - .debug_frame 0x0000000000012d50 0x28 ../apps/import/libs/libmm.a(umm_free.o) - .debug_frame 0x0000000000012d78 0x28 ../apps/import/libs/libmm.a(umm_malloc.o) - .debug_frame 0x0000000000012da0 0x48 ../apps/import/libs/libmm.a(umm_memalign.o) - .debug_frame 0x0000000000012de8 0x48 ../apps/import/libs/libmm.a(umm_realloc.o) - .debug_frame 0x0000000000012e30 0x48 ../apps/import/libs/libmm.a(umm_sbrk.o) - .debug_frame 0x0000000000012e78 0x38 ../apps/import/libs/libmm.a(mm_brkaddr.o) - .debug_frame 0x0000000000012eb0 0x48 ../apps/import/libs/libmm.a(mm_extend.o) - .debug_frame 0x0000000000012ef8 0x88 ../apps/import/libs/libmm.a(mm_free.o) - .debug_frame 0x0000000000012f80 0x68 ../apps/import/libs/libmm.a(mm_memalign.o) - .debug_frame 0x0000000000012fe8 0x80 ../apps/import/libs/libmm.a(mm_realloc.o) - .debug_frame 0x0000000000013068 0x28 ../apps/import/libs/libmm.a(mm_heapmember.o) - .debug_frame 0x0000000000013090 0x60 ../apps/import/libs/libmm.a(umm_initialize.o) - .debug_frame 0x00000000000130f0 0x98 ../apps/import/libs/libmm.a(mm_initialize.o) - .debug_frame 0x0000000000013188 0x70 ../apps/import/libs/libmm.a(mm_lock.o) - .debug_frame 0x00000000000131f8 0x48 ../apps/import/libs/libmm.a(mm_addfreechunk.o) - .debug_frame 0x0000000000013240 0x38 ../apps/import/libs/libmm.a(mm_size2ndx.o) - .debug_frame 0x0000000000013278 0x40 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) - .debug_frame 0x00000000000132b8 0x48 ../apps/import/libs/libmm.a(mm_malloc.o) - .debug_frame 0x0000000000013300 0x30 ../apps/import/libs/libc.a(lib_assert.o) - .debug_frame 0x0000000000013330 0x40 ../apps/import/libs/libc.a(lib_opendir.o) - .debug_frame 0x0000000000013370 0x40 ../apps/import/libs/libc.a(lib_closedir.o) - .debug_frame 0x00000000000133b0 0x40 ../apps/import/libs/libc.a(lib_readdir.o) - .debug_frame 0x00000000000133f0 0x28 ../apps/import/libs/libc.a(lib_errno.o) - .debug_frame 0x0000000000013418 0x340 ../apps/import/libs/libc.a(lib_mutex.o) - .debug_frame 0x0000000000013758 0x38 ../apps/import/libs/libc.a(pthread_attr_init.o) - .debug_frame 0x0000000000013790 0x38 ../apps/import/libs/libc.a(pthread_attr_destroy.o) - .debug_frame 0x00000000000137c8 0x28 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) - .debug_frame 0x00000000000137f0 0x48 ../apps/import/libs/libc.a(pthread_create.o) - .debug_frame 0x0000000000013838 0x38 ../apps/import/libs/libc.a(pthread_exit.o) - .debug_frame 0x0000000000013870 0x28 ../apps/import/libs/libc.a(pthread_mutex_lock.o) - .debug_frame 0x0000000000013898 0x28 ../apps/import/libs/libc.a(clock_ticks2time.o) - .debug_frame 0x00000000000138c0 0x28 ../apps/import/libs/libc.a(clock_timespec_add.o) - .debug_frame 0x00000000000138e8 0x38 ../apps/import/libs/libc.a(task_setcancelstate.o) - .debug_frame 0x0000000000013920 0x68 ../apps/import/libs/libc.a(sem_init.o) - .debug_frame 0x0000000000013988 0x60 ../apps/import/libs/libc.a(sem_setprotocol.o) - .debug_frame 0x00000000000139e8 0x50 ../apps/import/libs/libc.a(sem_getvalue.o) - .debug_frame 0x0000000000013a38 0x40 ../apps/import/libs/libc.a(sig_signal.o) - .debug_frame 0x0000000000013a78 0x38 ../apps/import/libs/libc.a(lib_fileno.o) - .debug_frame 0x0000000000013ab0 0x38 ../apps/import/libs/libc.a(lib_printf.o) - .debug_frame 0x0000000000013ae8 0x40 ../apps/import/libs/libc.a(lib_sprintf.o) - .debug_frame 0x0000000000013b28 0x40 ../apps/import/libs/libc.a(lib_snprintf.o) - .debug_frame 0x0000000000013b68 0x40 ../apps/import/libs/libc.a(lib_vsnprintf.o) - .debug_frame 0x0000000000013ba8 0x38 ../apps/import/libs/libc.a(lib_perror.o) - .debug_frame 0x0000000000013be0 0x60 ../apps/import/libs/libc.a(lib_putchar.o) - .debug_frame 0x0000000000013c40 0x40 ../apps/import/libs/libc.a(lib_puts.o) - .debug_frame 0x0000000000013c80 0xc0 ../apps/import/libs/libc.a(lib_libvsprintf.o) - .debug_frame 0x0000000000013d40 0x38 ../apps/import/libs/libc.a(lib_remove.o) - .debug_frame 0x0000000000013d78 0x28 ../apps/import/libs/libc.a(lib_ultoa_invert.o) - .debug_frame 0x0000000000013da0 0x48 ../apps/import/libs/libc.a(lib_dtoa_engine.o) - .debug_frame 0x0000000000013de8 0xa8 ../apps/import/libs/libc.a(lib_fopen.o) - .debug_frame 0x0000000000013e90 0x48 ../apps/import/libs/libc.a(lib_fclose.o) - .debug_frame 0x0000000000013ed8 0x70 ../apps/import/libs/libc.a(lib_fread.o) - .debug_frame 0x0000000000013f48 0x58 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) - .debug_frame 0x0000000000013fa0 0x28 ../apps/import/libs/libc.a(lib_fseek.o) - .debug_frame 0x0000000000013fc8 0x38 ../apps/import/libs/libc.a(lib_fseeko.o) - .debug_frame 0x0000000000014000 0x38 ../apps/import/libs/libc.a(lib_ftell.o) - .debug_frame 0x0000000000014038 0x38 ../apps/import/libs/libc.a(lib_ftello.o) - .debug_frame 0x0000000000014070 0x68 ../apps/import/libs/libc.a(lib_fgetc.o) - .debug_frame 0x00000000000140d8 0x70 ../apps/import/libs/libc.a(lib_fwrite.o) - .debug_frame 0x0000000000014148 0x70 ../apps/import/libs/libc.a(lib_libfwrite.o) - .debug_frame 0x00000000000141b8 0x70 ../apps/import/libs/libc.a(lib_fflush.o) - .debug_frame 0x0000000000014228 0x78 ../apps/import/libs/libc.a(lib_libflushall.o) - .debug_frame 0x00000000000142a0 0x50 ../apps/import/libs/libc.a(lib_libfflush.o) - .debug_frame 0x00000000000142f0 0x40 ../apps/import/libs/libc.a(lib_putc.o) - .debug_frame 0x0000000000014330 0x70 ../apps/import/libs/libc.a(lib_fputc.o) - .debug_frame 0x00000000000143a0 0x78 ../apps/import/libs/libc.a(lib_fputs.o) - .debug_frame 0x0000000000014418 0x38 ../apps/import/libs/libc.a(lib_fprintf.o) - .debug_frame 0x0000000000014450 0x40 ../apps/import/libs/libc.a(lib_vfprintf.o) - .debug_frame 0x0000000000014490 0x28 ../apps/import/libs/libc.a(lib_feof.o) - .debug_frame 0x00000000000144b8 0x28 ../apps/import/libs/libc.a(lib_ferror.o) - .debug_frame 0x00000000000144e0 0x50 ../apps/import/libs/libc.a(lib_clearerr.o) - .debug_frame 0x0000000000014530 0x40 ../apps/import/libs/libc.a(lib_tmpfile.o) - .debug_frame 0x0000000000014570 0x58 ../apps/import/libs/libc.a(lib_libfilelock.o) - .debug_frame 0x00000000000145c8 0x60 ../apps/import/libs/libc.a(lib_libgetstreams.o) - .debug_frame 0x0000000000014628 0x30 ../apps/import/libs/libc.a(lib_abort.o) - .debug_frame 0x0000000000014658 0x38 ../apps/import/libs/libc.a(lib_atoi.o) - .debug_frame 0x0000000000014690 0x80 ../apps/import/libs/libc.a(lib_exit.o) - .debug_frame 0x0000000000014710 0x68 ../apps/import/libs/libc.a(lib_realpath.o) - .debug_frame 0x0000000000014778 0x48 ../apps/import/libs/libc.a(lib_strtol.o) - .debug_frame 0x00000000000147c0 0x50 ../apps/import/libs/libc.a(lib_strtoul.o) - .debug_frame 0x0000000000014810 0x100 ../apps/import/libs/libc.a(lib_strtold.o) - .debug_frame 0x0000000000014910 0x48 ../apps/import/libs/libc.a(lib_checkbase.o) - .debug_frame 0x0000000000014958 0x40 ../apps/import/libs/libc.a(lib_mkstemp.o) - .debug_frame 0x0000000000014998 0x70 ../apps/import/libs/libc.a(lib_atexit.o) - .debug_frame 0x0000000000014a08 0x80 ../apps/import/libs/libc.a(lib_memoutstream.o) - .debug_frame 0x0000000000014a88 0x78 ../apps/import/libs/libc.a(lib_nulloutstream.o) - .debug_frame 0x0000000000014b00 0x28 ../apps/import/libs/libc.a(lib_libnoflush.o) - .debug_frame 0x0000000000014b28 0x98 ../apps/import/libs/libc.a(lib_stdoutstream.o) - .debug_frame 0x0000000000014bc0 0x38 ../apps/import/libs/libc.a(lib_flsl.o) - .debug_frame 0x0000000000014bf8 0x28 ../apps/import/libs/libc.a(lib_isbasedigit.o) - .debug_frame 0x0000000000014c20 0x40 ../apps/import/libs/libc.a(lib_skipspace.o) - .debug_frame 0x0000000000014c60 0x40 ../apps/import/libs/libc.a(lib_strcat.o) - .debug_frame 0x0000000000014ca0 0x38 ../apps/import/libs/libc.a(lib_strdup.o) - .debug_frame 0x0000000000014cd8 0x28 ../apps/import/libs/libc.a(lib_strerror.o) - .debug_frame 0x0000000000014d00 0x28 ../apps/import/libs/libc.a(lib_strrchr.o) - .debug_frame 0x0000000000014d28 0x48 ../apps/import/libs/libc.a(lib_strspn.o) - .debug_frame 0x0000000000014d70 0x28 ../apps/import/libs/libc.a(lib_memchr.o) - .debug_frame 0x0000000000014d98 0x28 ../apps/import/libs/libc.a(lib_memcmp.o) - .debug_frame 0x0000000000014dc0 0x28 ../apps/import/libs/libc.a(lib_memmove.o) - .debug_frame 0x0000000000014de8 0x28 ../apps/import/libs/libc.a(lib_memset.o) - .debug_frame 0x0000000000014e10 0x28 ../apps/import/libs/libc.a(lib_strchr.o) - .debug_frame 0x0000000000014e38 0x28 ../apps/import/libs/libc.a(lib_strcmp.o) - .debug_frame 0x0000000000014e60 0x28 ../apps/import/libs/libc.a(lib_strcpy.o) - .debug_frame 0x0000000000014e88 0x28 ../apps/import/libs/libc.a(lib_strlcpy.o) - .debug_frame 0x0000000000014eb0 0x28 ../apps/import/libs/libc.a(lib_strlen.o) - .debug_frame 0x0000000000014ed8 0x28 ../apps/import/libs/libc.a(lib_strnlen.o) - .debug_frame 0x0000000000014f00 0x28 ../apps/import/libs/libc.a(lib_memcpy.o) - .debug_frame 0x0000000000014f28 0x60 ../apps/import/libs/libc.a(lib_syslog.o) - .debug_frame 0x0000000000014f88 0x28 ../apps/import/libs/libc.a(lib_setlogmask.o) - .debug_frame 0x0000000000014fb0 0x38 ../apps/import/libs/libc.a(lib_isatty.o) - .debug_frame 0x0000000000014fe8 0x28 ../apps/import/libs/libc.a(lib_tcgetattr.o) - .debug_frame 0x0000000000015010 0x40 ../apps/import/libs/libc.a(lib_tcsetattr.o) - .debug_frame 0x0000000000015050 0x40 ../apps/import/libs/libc.a(lib_gettimeofday.o) - .debug_frame 0x0000000000015090 0x38 ../apps/import/libs/libc.a(lib_nanosleep.o) - .debug_frame 0x00000000000150c8 0x88 ../apps/import/libs/libc.a(lib_gmtimer.o) - .debug_frame 0x0000000000015150 0x28 ../apps/import/libs/libc.a(task_getinfo.o) - .debug_frame 0x0000000000015178 0x38 ../apps/import/libs/libc.a(lib_sysconf.o) - .debug_frame 0x00000000000151b0 0x38 ../apps/import/libs/libc.a(lib_getoptindp.o) - .debug_frame 0x00000000000151e8 0x68 ../apps/import/libs/libc.a(lib_utimes.o) - .debug_frame 0x0000000000015250 0x38 ../apps/import/libs/libc.a(lib_setuid.o) - .debug_frame 0x0000000000015288 0x38 ../apps/import/libs/libc.a(lib_setgid.o) - .debug_frame 0x00000000000152c0 0x40 ../apps/import/libs/libc.a(lib_chdir.o) - .debug_frame 0x0000000000015300 0x48 ../apps/import/libs/libc.a(lib_getcwd.o) - .debug_frame 0x0000000000015348 0x28 ../apps/import/libs/libc.a(lib_fork.o) - .debug_frame 0x0000000000015370 0x40 ../apps/import/libs/libc.a(lib_isspace.o) - .debug_frame 0x00000000000153b0 0x40 ../apps/import/libs/libc.a(lib_isxdigit.o) - .debug_frame 0x00000000000153f0 0x48 ../apps/import/libs/libc.a(lib_getfullpath.o) - .debug_frame 0x0000000000015438 0x50 ../apps/import/libs/libc.a(sig_addset.o) - .debug_frame 0x0000000000015488 0x28 ../apps/import/libs/libc.a(sig_emptyset.o) - .debug_frame 0x00000000000154b0 0x60 ../apps/import/libs/libc.a(lib_mktemp.o) - .debug_frame 0x0000000000015510 0x40 ../apps/import/libs/libc.a(lib_strlcat.o) - .debug_frame 0x0000000000015550 0x28 ../apps/import/libs/libc.a(lib_tcflush.o) - .debug_frame 0x0000000000015578 0x28 ../apps/import/libs/libc.a(lib_tcdrain.o) - .debug_frame 0x00000000000155a0 0x28 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) - .debug_frame 0x00000000000155c8 0x28 ../apps/import/libs/libc.a(lib_isleapyear.o) - .debug_frame 0x00000000000155f0 0x28 ../apps/import/libs/libc.a(lib_dayofweek.o) - .debug_frame 0x0000000000015618 0x28 ../apps/import/libs/libc.a(lib_getoptvars.o) - .debug_frame 0x0000000000015640 0x28 ../apps/import/libs/libproxies.a(PROXY__assert.o) - .debug_frame 0x0000000000015668 0x28 ../apps/import/libs/libproxies.a(PROXY__exit.o) - .debug_frame 0x0000000000015690 0x28 ../apps/import/libs/libproxies.a(PROXY_clock.o) - .debug_frame 0x00000000000156b8 0x28 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) - .debug_frame 0x00000000000156e0 0x28 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) - .debug_frame 0x0000000000015708 0x28 ../apps/import/libs/libproxies.a(PROXY_close.o) - .debug_frame 0x0000000000015730 0x28 ../apps/import/libs/libproxies.a(PROXY_dup.o) - .debug_frame 0x0000000000015758 0x28 ../apps/import/libs/libproxies.a(PROXY_dup2.o) - .debug_frame 0x0000000000015780 0x28 ../apps/import/libs/libproxies.a(PROXY_execve.o) - .debug_frame 0x00000000000157a8 0x30 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) - .debug_frame 0x00000000000157d8 0x28 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) - .debug_frame 0x0000000000015800 0x28 ../apps/import/libs/libproxies.a(PROXY_getenv.o) - .debug_frame 0x0000000000015828 0x28 ../apps/import/libs/libproxies.a(PROXY_getpid.o) - .debug_frame 0x0000000000015850 0x28 ../apps/import/libs/libproxies.a(PROXY_gettid.o) - .debug_frame 0x0000000000015878 0x30 ../apps/import/libs/libproxies.a(PROXY_ioctl.o) - .debug_frame 0x00000000000158a8 0x28 ../apps/import/libs/libproxies.a(PROXY_kill.o) - .debug_frame 0x00000000000158d0 0x28 ../apps/import/libs/libproxies.a(PROXY_lseek.o) - .debug_frame 0x00000000000158f8 0x28 ../apps/import/libs/libproxies.a(PROXY_lstat.o) - .debug_frame 0x0000000000015920 0x28 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) - .debug_frame 0x0000000000015948 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) - .debug_frame 0x0000000000015970 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) - .debug_frame 0x0000000000015998 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) - .debug_frame 0x00000000000159c0 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) - .debug_frame 0x00000000000159e8 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) - .debug_frame 0x0000000000015a10 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) - .debug_frame 0x0000000000015a38 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) - .debug_frame 0x0000000000015a60 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) - .debug_frame 0x0000000000015a88 0x30 ../apps/import/libs/libproxies.a(PROXY_open.o) - .debug_frame 0x0000000000015ab8 0x28 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) - .debug_frame 0x0000000000015ae0 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) - .debug_frame 0x0000000000015b08 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) - .debug_frame 0x0000000000015b30 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) - .debug_frame 0x0000000000015b58 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) - .debug_frame 0x0000000000015b80 0x28 ../apps/import/libs/libproxies.a(PROXY_read.o) - .debug_frame 0x0000000000015ba8 0x28 ../apps/import/libs/libproxies.a(PROXY_rename.o) - .debug_frame 0x0000000000015bd0 0x28 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) - .debug_frame 0x0000000000015bf8 0x28 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) - .debug_frame 0x0000000000015c20 0x28 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) - .debug_frame 0x0000000000015c48 0x28 ../apps/import/libs/libproxies.a(PROXY_select.o) - .debug_frame 0x0000000000015c70 0x28 ../apps/import/libs/libproxies.a(PROXY_setenv.o) - .debug_frame 0x0000000000015c98 0x28 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) - .debug_frame 0x0000000000015cc0 0x28 ../apps/import/libs/libproxies.a(PROXY_stat.o) - .debug_frame 0x0000000000015ce8 0x28 ../apps/import/libs/libproxies.a(PROXY_unlink.o) - .debug_frame 0x0000000000015d10 0x28 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) - .debug_frame 0x0000000000015d38 0x28 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) - .debug_frame 0x0000000000015d60 0x28 ../apps/import/libs/libproxies.a(PROXY_utimens.o) - .debug_frame 0x0000000000015d88 0x28 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) - .debug_frame 0x0000000000015db0 0x28 ../apps/import/libs/libproxies.a(PROXY_write.o) - .debug_frame 0x0000000000015dd8 0x28 ../apps/import/libs/libgcc.a(_clzsi2.o) - .debug_frame 0x0000000000015e00 0x28 ../apps/import/libs/libgcc.a(_ctzsi2.o) - .debug_frame 0x0000000000015e28 0x50 ../apps/import/libs/libgcc.a(addtf3.o) - .debug_frame 0x0000000000015e78 0x60 ../apps/import/libs/libgcc.a(divtf3.o) - .debug_frame 0x0000000000015ed8 0x28 ../apps/import/libs/libgcc.a(eqtf2.o) - .debug_frame 0x0000000000015f00 0x28 ../apps/import/libs/libgcc.a(getf2.o) - .debug_frame 0x0000000000015f28 0x60 ../apps/import/libs/libgcc.a(multf3.o) - .debug_frame 0x0000000000015f88 0x50 ../apps/import/libs/libgcc.a(subtf3.o) - .debug_frame 0x0000000000015fd8 0x40 ../apps/import/libs/libgcc.a(floatsitf.o) - .debug_frame 0x0000000000016018 0x40 ../apps/import/libs/libgcc.a(floatunsitf.o) - .debug_frame 0x0000000000016058 0x48 ../apps/import/libs/libgcc.a(floatditf.o) - .debug_frame 0x00000000000160a0 0x40 ../apps/import/libs/libgcc.a(extenddftf2.o) - .debug_frame 0x00000000000160e0 0x28 ../apps/import/libs/libgcc.a(trunctfsf2.o) - .debug_frame 0x0000000000016108 0x28 ../apps/import/libs/libgcc.a(trunctfdf2.o) - .debug_frame 0x0000000000016130 0x38 ../apps/import/libs/libm.a(lib_acos.o) - .debug_frame 0x0000000000016168 0x90 ../apps/import/libs/libm.a(lib_asin.o) - .debug_frame 0x00000000000161f8 0x38 ../apps/import/libs/libm.a(lib_atan.o) - .debug_frame 0x0000000000016230 0x38 ../apps/import/libs/libm.a(lib_atan2.o) - .debug_frame 0x0000000000016268 0x28 ../apps/import/libs/libm.a(lib_cos.o) - .debug_frame 0x0000000000016290 0x38 ../apps/import/libs/libm.a(lib_cosh.o) - .debug_frame 0x00000000000162c8 0x48 ../apps/import/libs/libm.a(lib_exp.o) - .debug_frame 0x0000000000016310 0x28 ../apps/import/libs/libm.a(lib_fabs.o) - .debug_frame 0x0000000000016338 0x40 ../apps/import/libs/libm.a(lib_fmod.o) - .debug_frame 0x0000000000016378 0x60 ../apps/import/libs/libm.a(lib_log.o) - .debug_frame 0x00000000000163d8 0x38 ../apps/import/libs/libm.a(lib_log10.o) - .debug_frame 0x0000000000016410 0x38 ../apps/import/libs/libm.a(lib_log2.o) - .debug_frame 0x0000000000016448 0x28 ../apps/import/libs/libm.a(lib_modf.o) - .debug_frame 0x0000000000016470 0x48 ../apps/import/libs/libm.a(lib_pow.o) - .debug_frame 0x00000000000164b8 0x38 ../apps/import/libs/libm.a(lib_sin.o) - .debug_frame 0x00000000000164f0 0x40 ../apps/import/libs/libm.a(lib_sinh.o) - .debug_frame 0x0000000000016530 0x60 ../apps/import/libs/libm.a(lib_sqrt.o) - .debug_frame 0x0000000000016590 0x40 ../apps/import/libs/libm.a(lib_tan.o) - .debug_frame 0x00000000000165d0 0x38 ../apps/import/libs/libm.a(lib_tanh.o) - .debug_frame 0x0000000000016608 0x48 ../apps/import/libs/libm.a(lib_asinh.o) - .debug_frame 0x0000000000016650 0x38 ../apps/import/libs/libm.a(lib_acosh.o) - .debug_frame 0x0000000000016688 0x38 ../apps/import/libs/libm.a(lib_atanh.o) - .debug_frame 0x00000000000166c0 0x38 ../apps/import/libs/libm.a(lib_cbrt.o) - .debug_frame 0x00000000000166f8 0x28 ../apps/import/libs/libm.a(lib_libexpi.o) - .debug_frame 0x0000000000016720 0x28 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) - .debug_frame 0x0000000000016748 0x38 ../apps/import/libs/libm.a(lib_expm1.o) - .debug_frame 0x0000000000016780 0x28 ../apps/import/libs/libm.a(lib_fmax.o) - .debug_frame 0x00000000000167a8 0x28 ../apps/import/libs/libm.a(lib_fmin.o) - .debug_frame 0x00000000000167d0 0x38 ../apps/import/libs/libm.a(lib_ceil.o) - .debug_frame 0x0000000000016808 0x38 ../apps/import/libs/libm.a(lib_floor.o) - .debug_frame 0x0000000000016840 0x38 ../apps/import/libs/libm.a(lib_round.o) - .debug_frame 0x0000000000016878 0x30 ../apps/import/libs/libm.a(lib_trunc.o) - .debug_frame 0x00000000000168a8 0x28 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) - .debug_frame 0x00000000000168d0 0x48 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) - .debug_frame 0x0000000000016918 0x38 ../apps/import/libs/libmm.a(umm_zalloc.o) + .debug_frame 0x0000000000000288 0xdd30 .obj/quickjs.o + .debug_frame 0x000000000000dfb8 0x620 .obj/libregexp.o + .debug_frame 0x000000000000e5d8 0x7a8 .obj/libunicode.o + .debug_frame 0x000000000000ed80 0x440 .obj/cutils.o + .debug_frame 0x000000000000f1c0 0x1908 .obj/quickjs-libc.o + .debug_frame 0x0000000000010ac8 0x1a68 .obj/libbf.o + .debug_frame 0x0000000000012530 0x6a0 .obj/arch_atomic.o + .debug_frame 0x0000000000012bd0 0x190 .obj/stub.o + .debug_frame 0x0000000000012d60 0x28 ../apps/import/libs/libmm.a(umm_free.o) + .debug_frame 0x0000000000012d88 0x28 ../apps/import/libs/libmm.a(umm_malloc.o) + .debug_frame 0x0000000000012db0 0x48 ../apps/import/libs/libmm.a(umm_memalign.o) + .debug_frame 0x0000000000012df8 0x48 ../apps/import/libs/libmm.a(umm_realloc.o) + .debug_frame 0x0000000000012e40 0x48 ../apps/import/libs/libmm.a(umm_sbrk.o) + .debug_frame 0x0000000000012e88 0x38 ../apps/import/libs/libmm.a(mm_brkaddr.o) + .debug_frame 0x0000000000012ec0 0x48 ../apps/import/libs/libmm.a(mm_extend.o) + .debug_frame 0x0000000000012f08 0x88 ../apps/import/libs/libmm.a(mm_free.o) + .debug_frame 0x0000000000012f90 0x68 ../apps/import/libs/libmm.a(mm_memalign.o) + .debug_frame 0x0000000000012ff8 0x80 ../apps/import/libs/libmm.a(mm_realloc.o) + .debug_frame 0x0000000000013078 0x28 ../apps/import/libs/libmm.a(mm_heapmember.o) + .debug_frame 0x00000000000130a0 0x60 ../apps/import/libs/libmm.a(umm_initialize.o) + .debug_frame 0x0000000000013100 0x98 ../apps/import/libs/libmm.a(mm_initialize.o) + .debug_frame 0x0000000000013198 0x70 ../apps/import/libs/libmm.a(mm_lock.o) + .debug_frame 0x0000000000013208 0x48 ../apps/import/libs/libmm.a(mm_addfreechunk.o) + .debug_frame 0x0000000000013250 0x38 ../apps/import/libs/libmm.a(mm_size2ndx.o) + .debug_frame 0x0000000000013288 0x40 ../apps/import/libs/libmm.a(mm_shrinkchunk.o) + .debug_frame 0x00000000000132c8 0x48 ../apps/import/libs/libmm.a(mm_malloc.o) + .debug_frame 0x0000000000013310 0x30 ../apps/import/libs/libc.a(lib_assert.o) + .debug_frame 0x0000000000013340 0x40 ../apps/import/libs/libc.a(lib_opendir.o) + .debug_frame 0x0000000000013380 0x40 ../apps/import/libs/libc.a(lib_closedir.o) + .debug_frame 0x00000000000133c0 0x40 ../apps/import/libs/libc.a(lib_readdir.o) + .debug_frame 0x0000000000013400 0x28 ../apps/import/libs/libc.a(lib_errno.o) + .debug_frame 0x0000000000013428 0x340 ../apps/import/libs/libc.a(lib_mutex.o) + .debug_frame 0x0000000000013768 0x38 ../apps/import/libs/libc.a(pthread_attr_init.o) + .debug_frame 0x00000000000137a0 0x38 ../apps/import/libs/libc.a(pthread_attr_destroy.o) + .debug_frame 0x00000000000137d8 0x28 ../apps/import/libs/libc.a(pthread_attr_setdetachstate.o) + .debug_frame 0x0000000000013800 0x48 ../apps/import/libs/libc.a(pthread_create.o) + .debug_frame 0x0000000000013848 0x38 ../apps/import/libs/libc.a(pthread_exit.o) + .debug_frame 0x0000000000013880 0x28 ../apps/import/libs/libc.a(pthread_mutex_lock.o) + .debug_frame 0x00000000000138a8 0x28 ../apps/import/libs/libc.a(clock_ticks2time.o) + .debug_frame 0x00000000000138d0 0x28 ../apps/import/libs/libc.a(clock_timespec_add.o) + .debug_frame 0x00000000000138f8 0x38 ../apps/import/libs/libc.a(task_setcancelstate.o) + .debug_frame 0x0000000000013930 0x68 ../apps/import/libs/libc.a(sem_init.o) + .debug_frame 0x0000000000013998 0x60 ../apps/import/libs/libc.a(sem_setprotocol.o) + .debug_frame 0x00000000000139f8 0x50 ../apps/import/libs/libc.a(sem_getvalue.o) + .debug_frame 0x0000000000013a48 0x40 ../apps/import/libs/libc.a(sig_signal.o) + .debug_frame 0x0000000000013a88 0x38 ../apps/import/libs/libc.a(lib_fileno.o) + .debug_frame 0x0000000000013ac0 0x38 ../apps/import/libs/libc.a(lib_printf.o) + .debug_frame 0x0000000000013af8 0x40 ../apps/import/libs/libc.a(lib_sprintf.o) + .debug_frame 0x0000000000013b38 0x40 ../apps/import/libs/libc.a(lib_snprintf.o) + .debug_frame 0x0000000000013b78 0x40 ../apps/import/libs/libc.a(lib_vsnprintf.o) + .debug_frame 0x0000000000013bb8 0x38 ../apps/import/libs/libc.a(lib_perror.o) + .debug_frame 0x0000000000013bf0 0x60 ../apps/import/libs/libc.a(lib_putchar.o) + .debug_frame 0x0000000000013c50 0x40 ../apps/import/libs/libc.a(lib_puts.o) + .debug_frame 0x0000000000013c90 0xc0 ../apps/import/libs/libc.a(lib_libvsprintf.o) + .debug_frame 0x0000000000013d50 0x38 ../apps/import/libs/libc.a(lib_remove.o) + .debug_frame 0x0000000000013d88 0x28 ../apps/import/libs/libc.a(lib_ultoa_invert.o) + .debug_frame 0x0000000000013db0 0x48 ../apps/import/libs/libc.a(lib_dtoa_engine.o) + .debug_frame 0x0000000000013df8 0xa8 ../apps/import/libs/libc.a(lib_fopen.o) + .debug_frame 0x0000000000013ea0 0x48 ../apps/import/libs/libc.a(lib_fclose.o) + .debug_frame 0x0000000000013ee8 0x70 ../apps/import/libs/libc.a(lib_fread.o) + .debug_frame 0x0000000000013f58 0x58 ../apps/import/libs/libc.a(lib_libfread_unlocked.o) + .debug_frame 0x0000000000013fb0 0x28 ../apps/import/libs/libc.a(lib_fseek.o) + .debug_frame 0x0000000000013fd8 0x38 ../apps/import/libs/libc.a(lib_fseeko.o) + .debug_frame 0x0000000000014010 0x38 ../apps/import/libs/libc.a(lib_ftell.o) + .debug_frame 0x0000000000014048 0x38 ../apps/import/libs/libc.a(lib_ftello.o) + .debug_frame 0x0000000000014080 0x68 ../apps/import/libs/libc.a(lib_fgetc.o) + .debug_frame 0x00000000000140e8 0x70 ../apps/import/libs/libc.a(lib_fwrite.o) + .debug_frame 0x0000000000014158 0x70 ../apps/import/libs/libc.a(lib_libfwrite.o) + .debug_frame 0x00000000000141c8 0x70 ../apps/import/libs/libc.a(lib_fflush.o) + .debug_frame 0x0000000000014238 0x78 ../apps/import/libs/libc.a(lib_libflushall.o) + .debug_frame 0x00000000000142b0 0x50 ../apps/import/libs/libc.a(lib_libfflush.o) + .debug_frame 0x0000000000014300 0x40 ../apps/import/libs/libc.a(lib_putc.o) + .debug_frame 0x0000000000014340 0x70 ../apps/import/libs/libc.a(lib_fputc.o) + .debug_frame 0x00000000000143b0 0x78 ../apps/import/libs/libc.a(lib_fputs.o) + .debug_frame 0x0000000000014428 0x38 ../apps/import/libs/libc.a(lib_fprintf.o) + .debug_frame 0x0000000000014460 0x40 ../apps/import/libs/libc.a(lib_vfprintf.o) + .debug_frame 0x00000000000144a0 0x28 ../apps/import/libs/libc.a(lib_feof.o) + .debug_frame 0x00000000000144c8 0x28 ../apps/import/libs/libc.a(lib_ferror.o) + .debug_frame 0x00000000000144f0 0x50 ../apps/import/libs/libc.a(lib_clearerr.o) + .debug_frame 0x0000000000014540 0x40 ../apps/import/libs/libc.a(lib_tmpfile.o) + .debug_frame 0x0000000000014580 0x58 ../apps/import/libs/libc.a(lib_libfilelock.o) + .debug_frame 0x00000000000145d8 0x60 ../apps/import/libs/libc.a(lib_libgetstreams.o) + .debug_frame 0x0000000000014638 0x30 ../apps/import/libs/libc.a(lib_abort.o) + .debug_frame 0x0000000000014668 0x38 ../apps/import/libs/libc.a(lib_atoi.o) + .debug_frame 0x00000000000146a0 0x80 ../apps/import/libs/libc.a(lib_exit.o) + .debug_frame 0x0000000000014720 0x68 ../apps/import/libs/libc.a(lib_realpath.o) + .debug_frame 0x0000000000014788 0x48 ../apps/import/libs/libc.a(lib_strtol.o) + .debug_frame 0x00000000000147d0 0x50 ../apps/import/libs/libc.a(lib_strtoul.o) + .debug_frame 0x0000000000014820 0x100 ../apps/import/libs/libc.a(lib_strtold.o) + .debug_frame 0x0000000000014920 0x48 ../apps/import/libs/libc.a(lib_checkbase.o) + .debug_frame 0x0000000000014968 0x40 ../apps/import/libs/libc.a(lib_mkstemp.o) + .debug_frame 0x00000000000149a8 0x70 ../apps/import/libs/libc.a(lib_atexit.o) + .debug_frame 0x0000000000014a18 0x80 ../apps/import/libs/libc.a(lib_memoutstream.o) + .debug_frame 0x0000000000014a98 0x78 ../apps/import/libs/libc.a(lib_nulloutstream.o) + .debug_frame 0x0000000000014b10 0x28 ../apps/import/libs/libc.a(lib_libnoflush.o) + .debug_frame 0x0000000000014b38 0x98 ../apps/import/libs/libc.a(lib_stdoutstream.o) + .debug_frame 0x0000000000014bd0 0x38 ../apps/import/libs/libc.a(lib_flsl.o) + .debug_frame 0x0000000000014c08 0x28 ../apps/import/libs/libc.a(lib_isbasedigit.o) + .debug_frame 0x0000000000014c30 0x40 ../apps/import/libs/libc.a(lib_skipspace.o) + .debug_frame 0x0000000000014c70 0x40 ../apps/import/libs/libc.a(lib_strcat.o) + .debug_frame 0x0000000000014cb0 0x38 ../apps/import/libs/libc.a(lib_strdup.o) + .debug_frame 0x0000000000014ce8 0x28 ../apps/import/libs/libc.a(lib_strerror.o) + .debug_frame 0x0000000000014d10 0x28 ../apps/import/libs/libc.a(lib_strrchr.o) + .debug_frame 0x0000000000014d38 0x48 ../apps/import/libs/libc.a(lib_strspn.o) + .debug_frame 0x0000000000014d80 0x28 ../apps/import/libs/libc.a(lib_memchr.o) + .debug_frame 0x0000000000014da8 0x28 ../apps/import/libs/libc.a(lib_memcmp.o) + .debug_frame 0x0000000000014dd0 0x28 ../apps/import/libs/libc.a(lib_memmove.o) + .debug_frame 0x0000000000014df8 0x28 ../apps/import/libs/libc.a(lib_memset.o) + .debug_frame 0x0000000000014e20 0x28 ../apps/import/libs/libc.a(lib_strchr.o) + .debug_frame 0x0000000000014e48 0x28 ../apps/import/libs/libc.a(lib_strcmp.o) + .debug_frame 0x0000000000014e70 0x28 ../apps/import/libs/libc.a(lib_strcpy.o) + .debug_frame 0x0000000000014e98 0x28 ../apps/import/libs/libc.a(lib_strlcpy.o) + .debug_frame 0x0000000000014ec0 0x28 ../apps/import/libs/libc.a(lib_strlen.o) + .debug_frame 0x0000000000014ee8 0x28 ../apps/import/libs/libc.a(lib_strnlen.o) + .debug_frame 0x0000000000014f10 0x28 ../apps/import/libs/libc.a(lib_memcpy.o) + .debug_frame 0x0000000000014f38 0x60 ../apps/import/libs/libc.a(lib_syslog.o) + .debug_frame 0x0000000000014f98 0x28 ../apps/import/libs/libc.a(lib_setlogmask.o) + .debug_frame 0x0000000000014fc0 0x38 ../apps/import/libs/libc.a(lib_isatty.o) + .debug_frame 0x0000000000014ff8 0x28 ../apps/import/libs/libc.a(lib_tcgetattr.o) + .debug_frame 0x0000000000015020 0x40 ../apps/import/libs/libc.a(lib_tcsetattr.o) + .debug_frame 0x0000000000015060 0x40 ../apps/import/libs/libc.a(lib_gettimeofday.o) + .debug_frame 0x00000000000150a0 0x38 ../apps/import/libs/libc.a(lib_nanosleep.o) + .debug_frame 0x00000000000150d8 0x88 ../apps/import/libs/libc.a(lib_gmtimer.o) + .debug_frame 0x0000000000015160 0x28 ../apps/import/libs/libc.a(task_getinfo.o) + .debug_frame 0x0000000000015188 0x38 ../apps/import/libs/libc.a(lib_sysconf.o) + .debug_frame 0x00000000000151c0 0x38 ../apps/import/libs/libc.a(lib_getoptindp.o) + .debug_frame 0x00000000000151f8 0x68 ../apps/import/libs/libc.a(lib_utimes.o) + .debug_frame 0x0000000000015260 0x38 ../apps/import/libs/libc.a(lib_setuid.o) + .debug_frame 0x0000000000015298 0x38 ../apps/import/libs/libc.a(lib_setgid.o) + .debug_frame 0x00000000000152d0 0x40 ../apps/import/libs/libc.a(lib_chdir.o) + .debug_frame 0x0000000000015310 0x48 ../apps/import/libs/libc.a(lib_getcwd.o) + .debug_frame 0x0000000000015358 0x28 ../apps/import/libs/libc.a(lib_fork.o) + .debug_frame 0x0000000000015380 0x40 ../apps/import/libs/libc.a(lib_isspace.o) + .debug_frame 0x00000000000153c0 0x40 ../apps/import/libs/libc.a(lib_isxdigit.o) + .debug_frame 0x0000000000015400 0x48 ../apps/import/libs/libc.a(lib_getfullpath.o) + .debug_frame 0x0000000000015448 0x50 ../apps/import/libs/libc.a(sig_addset.o) + .debug_frame 0x0000000000015498 0x28 ../apps/import/libs/libc.a(sig_emptyset.o) + .debug_frame 0x00000000000154c0 0x60 ../apps/import/libs/libc.a(lib_mktemp.o) + .debug_frame 0x0000000000015520 0x40 ../apps/import/libs/libc.a(lib_strlcat.o) + .debug_frame 0x0000000000015560 0x28 ../apps/import/libs/libc.a(lib_tcflush.o) + .debug_frame 0x0000000000015588 0x28 ../apps/import/libs/libc.a(lib_tcdrain.o) + .debug_frame 0x00000000000155b0 0x28 ../apps/import/libs/libc.a(lib_daysbeforemonth.o) + .debug_frame 0x00000000000155d8 0x28 ../apps/import/libs/libc.a(lib_isleapyear.o) + .debug_frame 0x0000000000015600 0x28 ../apps/import/libs/libc.a(lib_dayofweek.o) + .debug_frame 0x0000000000015628 0x28 ../apps/import/libs/libc.a(lib_getoptvars.o) + .debug_frame 0x0000000000015650 0x28 ../apps/import/libs/libproxies.a(PROXY__assert.o) + .debug_frame 0x0000000000015678 0x28 ../apps/import/libs/libproxies.a(PROXY__exit.o) + .debug_frame 0x00000000000156a0 0x28 ../apps/import/libs/libproxies.a(PROXY_clock.o) + .debug_frame 0x00000000000156c8 0x28 ../apps/import/libs/libproxies.a(PROXY_clock_gettime.o) + .debug_frame 0x00000000000156f0 0x28 ../apps/import/libs/libproxies.a(PROXY_clock_nanosleep.o) + .debug_frame 0x0000000000015718 0x28 ../apps/import/libs/libproxies.a(PROXY_close.o) + .debug_frame 0x0000000000015740 0x28 ../apps/import/libs/libproxies.a(PROXY_dup.o) + .debug_frame 0x0000000000015768 0x28 ../apps/import/libs/libproxies.a(PROXY_dup2.o) + .debug_frame 0x0000000000015790 0x28 ../apps/import/libs/libproxies.a(PROXY_execve.o) + .debug_frame 0x00000000000157b8 0x30 ../apps/import/libs/libproxies.a(PROXY_fcntl.o) + .debug_frame 0x00000000000157e8 0x28 ../apps/import/libs/libproxies.a(PROXY_get_environ_ptr.o) + .debug_frame 0x0000000000015810 0x28 ../apps/import/libs/libproxies.a(PROXY_getenv.o) + .debug_frame 0x0000000000015838 0x28 ../apps/import/libs/libproxies.a(PROXY_getpid.o) + .debug_frame 0x0000000000015860 0x28 ../apps/import/libs/libproxies.a(PROXY_gettid.o) + .debug_frame 0x0000000000015888 0x30 ../apps/import/libs/libproxies.a(PROXY_ioctl.o) + .debug_frame 0x00000000000158b8 0x28 ../apps/import/libs/libproxies.a(PROXY_kill.o) + .debug_frame 0x00000000000158e0 0x28 ../apps/import/libs/libproxies.a(PROXY_lseek.o) + .debug_frame 0x0000000000015908 0x28 ../apps/import/libs/libproxies.a(PROXY_lstat.o) + .debug_frame 0x0000000000015930 0x28 ../apps/import/libs/libproxies.a(PROXY_mkdir.o) + .debug_frame 0x0000000000015958 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_create.o) + .debug_frame 0x0000000000015980 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_pthread_exit.o) + .debug_frame 0x00000000000159a8 0x28 ../apps/import/libs/libproxies.a(PROXY_nx_vsyslog.o) + .debug_frame 0x00000000000159d0 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_clockwait.o) + .debug_frame 0x00000000000159f8 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_destroy.o) + .debug_frame 0x0000000000015a20 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_post.o) + .debug_frame 0x0000000000015a48 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_trywait.o) + .debug_frame 0x0000000000015a70 0x28 ../apps/import/libs/libproxies.a(PROXY_nxsem_wait.o) + .debug_frame 0x0000000000015a98 0x30 ../apps/import/libs/libproxies.a(PROXY_open.o) + .debug_frame 0x0000000000015ac8 0x28 ../apps/import/libs/libproxies.a(PROXY_pgalloc.o) + .debug_frame 0x0000000000015af0 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_destroy.o) + .debug_frame 0x0000000000015b18 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_init.o) + .debug_frame 0x0000000000015b40 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_timedlock.o) + .debug_frame 0x0000000000015b68 0x28 ../apps/import/libs/libproxies.a(PROXY_pthread_mutex_unlock.o) + .debug_frame 0x0000000000015b90 0x28 ../apps/import/libs/libproxies.a(PROXY_read.o) + .debug_frame 0x0000000000015bb8 0x28 ../apps/import/libs/libproxies.a(PROXY_rename.o) + .debug_frame 0x0000000000015be0 0x28 ../apps/import/libs/libproxies.a(PROXY_rmdir.o) + .debug_frame 0x0000000000015c08 0x28 ../apps/import/libs/libproxies.a(PROXY_sched_lock.o) + .debug_frame 0x0000000000015c30 0x28 ../apps/import/libs/libproxies.a(PROXY_sched_unlock.o) + .debug_frame 0x0000000000015c58 0x28 ../apps/import/libs/libproxies.a(PROXY_select.o) + .debug_frame 0x0000000000015c80 0x28 ../apps/import/libs/libproxies.a(PROXY_setenv.o) + .debug_frame 0x0000000000015ca8 0x28 ../apps/import/libs/libproxies.a(PROXY_sigaction.o) + .debug_frame 0x0000000000015cd0 0x28 ../apps/import/libs/libproxies.a(PROXY_stat.o) + .debug_frame 0x0000000000015cf8 0x28 ../apps/import/libs/libproxies.a(PROXY_unlink.o) + .debug_frame 0x0000000000015d20 0x28 ../apps/import/libs/libproxies.a(PROXY_unsetenv.o) + .debug_frame 0x0000000000015d48 0x28 ../apps/import/libs/libproxies.a(PROXY_up_fork.o) + .debug_frame 0x0000000000015d70 0x28 ../apps/import/libs/libproxies.a(PROXY_utimens.o) + .debug_frame 0x0000000000015d98 0x28 ../apps/import/libs/libproxies.a(PROXY_waitpid.o) + .debug_frame 0x0000000000015dc0 0x28 ../apps/import/libs/libproxies.a(PROXY_write.o) + .debug_frame 0x0000000000015de8 0x28 ../apps/import/libs/libgcc.a(_clzsi2.o) + .debug_frame 0x0000000000015e10 0x28 ../apps/import/libs/libgcc.a(_ctzsi2.o) + .debug_frame 0x0000000000015e38 0x50 ../apps/import/libs/libgcc.a(addtf3.o) + .debug_frame 0x0000000000015e88 0x60 ../apps/import/libs/libgcc.a(divtf3.o) + .debug_frame 0x0000000000015ee8 0x28 ../apps/import/libs/libgcc.a(eqtf2.o) + .debug_frame 0x0000000000015f10 0x28 ../apps/import/libs/libgcc.a(getf2.o) + .debug_frame 0x0000000000015f38 0x60 ../apps/import/libs/libgcc.a(multf3.o) + .debug_frame 0x0000000000015f98 0x50 ../apps/import/libs/libgcc.a(subtf3.o) + .debug_frame 0x0000000000015fe8 0x40 ../apps/import/libs/libgcc.a(floatsitf.o) + .debug_frame 0x0000000000016028 0x40 ../apps/import/libs/libgcc.a(floatunsitf.o) + .debug_frame 0x0000000000016068 0x48 ../apps/import/libs/libgcc.a(floatditf.o) + .debug_frame 0x00000000000160b0 0x40 ../apps/import/libs/libgcc.a(extenddftf2.o) + .debug_frame 0x00000000000160f0 0x28 ../apps/import/libs/libgcc.a(trunctfsf2.o) + .debug_frame 0x0000000000016118 0x28 ../apps/import/libs/libgcc.a(trunctfdf2.o) + .debug_frame 0x0000000000016140 0x38 ../apps/import/libs/libm.a(lib_acos.o) + .debug_frame 0x0000000000016178 0x90 ../apps/import/libs/libm.a(lib_asin.o) + .debug_frame 0x0000000000016208 0x38 ../apps/import/libs/libm.a(lib_atan.o) + .debug_frame 0x0000000000016240 0x38 ../apps/import/libs/libm.a(lib_atan2.o) + .debug_frame 0x0000000000016278 0x28 ../apps/import/libs/libm.a(lib_cos.o) + .debug_frame 0x00000000000162a0 0x38 ../apps/import/libs/libm.a(lib_cosh.o) + .debug_frame 0x00000000000162d8 0x48 ../apps/import/libs/libm.a(lib_exp.o) + .debug_frame 0x0000000000016320 0x28 ../apps/import/libs/libm.a(lib_fabs.o) + .debug_frame 0x0000000000016348 0x40 ../apps/import/libs/libm.a(lib_fmod.o) + .debug_frame 0x0000000000016388 0x60 ../apps/import/libs/libm.a(lib_log.o) + .debug_frame 0x00000000000163e8 0x38 ../apps/import/libs/libm.a(lib_log10.o) + .debug_frame 0x0000000000016420 0x38 ../apps/import/libs/libm.a(lib_log2.o) + .debug_frame 0x0000000000016458 0x28 ../apps/import/libs/libm.a(lib_modf.o) + .debug_frame 0x0000000000016480 0x48 ../apps/import/libs/libm.a(lib_pow.o) + .debug_frame 0x00000000000164c8 0x38 ../apps/import/libs/libm.a(lib_sin.o) + .debug_frame 0x0000000000016500 0x40 ../apps/import/libs/libm.a(lib_sinh.o) + .debug_frame 0x0000000000016540 0x60 ../apps/import/libs/libm.a(lib_sqrt.o) + .debug_frame 0x00000000000165a0 0x40 ../apps/import/libs/libm.a(lib_tan.o) + .debug_frame 0x00000000000165e0 0x38 ../apps/import/libs/libm.a(lib_tanh.o) + .debug_frame 0x0000000000016618 0x48 ../apps/import/libs/libm.a(lib_asinh.o) + .debug_frame 0x0000000000016660 0x38 ../apps/import/libs/libm.a(lib_acosh.o) + .debug_frame 0x0000000000016698 0x38 ../apps/import/libs/libm.a(lib_atanh.o) + .debug_frame 0x00000000000166d0 0x38 ../apps/import/libs/libm.a(lib_cbrt.o) + .debug_frame 0x0000000000016708 0x28 ../apps/import/libs/libm.a(lib_libexpi.o) + .debug_frame 0x0000000000016730 0x28 ../apps/import/libs/libm.a(lib_libsqrtapprox.o) + .debug_frame 0x0000000000016758 0x38 ../apps/import/libs/libm.a(lib_expm1.o) + .debug_frame 0x0000000000016790 0x28 ../apps/import/libs/libm.a(lib_fmax.o) + .debug_frame 0x00000000000167b8 0x28 ../apps/import/libs/libm.a(lib_fmin.o) + .debug_frame 0x00000000000167e0 0x38 ../apps/import/libs/libm.a(lib_ceil.o) + .debug_frame 0x0000000000016818 0x38 ../apps/import/libs/libm.a(lib_floor.o) + .debug_frame 0x0000000000016850 0x38 ../apps/import/libs/libm.a(lib_round.o) + .debug_frame 0x0000000000016888 0x30 ../apps/import/libs/libm.a(lib_trunc.o) + .debug_frame 0x00000000000168b8 0x28 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(letf2.o) + .debug_frame 0x00000000000168e0 0x48 /Users/Luppy/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-apple-darwin/lib/gcc/riscv64-unknown-elf/10.2.0/rv64imafdc/lp64d/libgcc.a(extendsftf2.o) + .debug_frame 0x0000000000016928 0x38 ../apps/import/libs/libmm.a(umm_zalloc.o) diff --git a/quickjs.c b/quickjs.c index 9e100133e..b164df483 100644 --- a/quickjs.c +++ b/quickjs.c @@ -1365,11 +1365,15 @@ static void *js_bf_realloc(void *opaque, void *ptr, size_t size) void *js_malloc(JSContext *ctx, size_t size) { void *ptr; +_d("js_malloc: a="); _d(debug_expr); _d("\n"); //// ptr = js_malloc_rt(ctx->rt, size); +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// if (unlikely(!ptr)) { +_d("js_malloc: b="); _d(debug_expr); _d("\n"); //// JS_ThrowOutOfMemory(ctx); return NULL; } +_d("js_malloc: d="); _d(debug_expr); _d("\n"); //// return ptr; } @@ -1733,15 +1737,19 @@ static void *js_def_malloc(JSMallocState *s, size_t size) /* Do not allocate zero bytes: behavior is platform dependent */ assert(size != 0); +_d("js_def_malloc: a="); _d(debug_expr); _d("\n"); //// if (unlikely(s->malloc_size + size > s->malloc_limit)) return NULL; +_d("js_def_malloc: b="); _d(debug_expr); _d("\n"); //// ptr = malloc(size); if (!ptr) return NULL; s->malloc_count++; +_d("js_def_malloc: c="); _d(debug_expr); _d("\n"); //// s->malloc_size += js_def_malloc_usable_size(ptr) + MALLOC_OVERHEAD; +_d("js_def_malloc: d="); _d(debug_expr); _d("\n"); //// return ptr; }